403Webshell
Server IP : 146.59.209.152  /  Your IP : 216.73.216.46
Web Server : Apache
System : Linux webm005.cluster131.gra.hosting.ovh.net 5.15.167-ovh-vps-grsec-zfs-classid #1 SMP Tue Sep 17 08:14:20 UTC 2024 x86_64
User : infrafs ( 43850)
PHP Version : 8.2.29
Disable Function : _dyuweyrj4,_dyuweyrj4r,dl
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /home/i/n/f/infrafs/INFRABIKEIT/wp-content/plugins/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /home/i/n/f/infrafs/INFRABIKEIT/wp-content/plugins/elementor.tar
elementor.php000064400000006542151327220410007253 0ustar00<?php
/**
 * Plugin Name: Elementor
 * Description: The Elementor Website Builder has it all: drag and drop page builder, pixel perfect design, mobile responsive editing, and more. Get started now!
 * Plugin URI: https://elementor.com/?utm_source=wp-plugins&utm_campaign=plugin-uri&utm_medium=wp-dash
 * Author: Elementor.com
 * Version: 3.4.8
 * Author URI: https://elementor.com/?utm_source=wp-plugins&utm_campaign=author-uri&utm_medium=wp-dash
 *
 * Text Domain: elementor
 *
 * @package Elementor
 * @category Core
 *
 * Elementor is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * any later version.
 *
 * Elementor is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
 * GNU General Public License for more details.
 */

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

define( 'ELEMENTOR_VERSION', '3.4.8' );
define( 'ELEMENTOR_PREVIOUS_STABLE_VERSION', '3.1.4' );

define( 'ELEMENTOR__FILE__', __FILE__ );
define( 'ELEMENTOR_PLUGIN_BASE', plugin_basename( ELEMENTOR__FILE__ ) );
define( 'ELEMENTOR_PATH', plugin_dir_path( ELEMENTOR__FILE__ ) );

if ( defined( 'ELEMENTOR_TESTS' ) && ELEMENTOR_TESTS ) {
	define( 'ELEMENTOR_URL', 'file://' . ELEMENTOR_PATH );
} else {
	define( 'ELEMENTOR_URL', plugins_url( '/', ELEMENTOR__FILE__ ) );
}

define( 'ELEMENTOR_MODULES_PATH', plugin_dir_path( ELEMENTOR__FILE__ ) . '/modules' );
define( 'ELEMENTOR_ASSETS_PATH', ELEMENTOR_PATH . 'assets/' );
define( 'ELEMENTOR_ASSETS_URL', ELEMENTOR_URL . 'assets/' );

add_action( 'plugins_loaded', 'elementor_load_plugin_textdomain' );

if ( ! version_compare( PHP_VERSION, '5.6', '>=' ) ) {
	add_action( 'admin_notices', 'elementor_fail_php_version' );
} elseif ( ! version_compare( get_bloginfo( 'version' ), '5.2', '>=' ) ) {
	add_action( 'admin_notices', 'elementor_fail_wp_version' );
} else {
	require ELEMENTOR_PATH . 'includes/plugin.php';
}

/**
 * Load Elementor textdomain.
 *
 * Load gettext translate for Elementor text domain.
 *
 * @since 1.0.0
 *
 * @return void
 */
function elementor_load_plugin_textdomain() {
	load_plugin_textdomain( 'elementor' );
}

/**
 * Elementor admin notice for minimum PHP version.
 *
 * Warning when the site doesn't have the minimum required PHP version.
 *
 * @since 1.0.0
 *
 * @return void
 */
function elementor_fail_php_version() {
	/* translators: %s: PHP version. */
	$message = sprintf( esc_html__( 'Elementor requires PHP version %s+, plugin is currently NOT RUNNING.', 'elementor' ), '5.6' );
	$html_message = sprintf( '<div class="error">%s</div>', wpautop( $message ) );
	echo wp_kses_post( $html_message );
}

/**
 * Elementor admin notice for minimum WordPress version.
 *
 * Warning when the site doesn't have the minimum required WordPress version.
 *
 * @since 1.5.0
 *
 * @return void
 */
function elementor_fail_wp_version() {
	/* translators: %s: WordPress version. */
	$message = sprintf( esc_html__( 'Elementor requires WordPress version %s+. Because you are using an earlier version, the plugin is currently NOT RUNNING.', 'elementor' ), '5.2' );
	$html_message = sprintf( '<div class="error">%s</div>', wpautop( $message ) );
	echo wp_kses_post( $html_message );
}
assets/mask-shapes/hexagon.svg000064400000000363151327220410012433 0ustar00<svg xmlns="http://www.w3.org/2000/svg" width="103" height="89" viewBox="0 0 103 89"><path d="M77.2114,0H25.7523L0,44.5045,25.7523,89H77.2114L103,44.5045ZM61.7691,62.261H41.2218L30.9391,44.5045,41.2218,26.739H61.7691L72.0519,44.5045Z"/></svg>
assets/mask-shapes/triangle.svg000064400000000264151327220410012607 0ustar00<svg xmlns="http://www.w3.org/2000/svg" width="103" height="89" viewBox="0 0 103 89"><polygon points="77.255 44.505 51.5 0 25.755 44.505 0 89 51.5 89 103 89 77.255 44.505"/></svg>
assets/mask-shapes/circle.svg000064400000000200151327220410012231 0ustar00<svg xmlns="http://www.w3.org/2000/svg" width="89" height="89" viewBox="0 0 89 89"><circle cx="44.5" cy="44.5" r="44.5"/></svg>
assets/mask-shapes/blob.svg000064400000000665151327220410011725 0ustar00<svg xmlns="http://www.w3.org/2000/svg" width="121.0002" height="89" viewBox="0 0 121.0002 89"><path d="M100.016,7.3972C90.2452,1.22,73.3084-3.6663,64.4255,3.7126,56.9836,9.89,62.0469,18.9174,55.01,25.3032c-10.6,9.6134-28.1589-5.4423-41.8584,2.6318C.6757,35.2543-4.2791,59.1489,4.2781,73.7975c13.1369,22.524,53.13,13.8541,61.1936,12.1061,4.5007-.9931,53.4953-12.265,55.4693-42.7043C121.898,28.2528,111.1,14.4185,100.016,7.3972Z"/></svg>
assets/mask-shapes/sketch.svg000064400000002024151327220410012257 0ustar00<svg xmlns="http://www.w3.org/2000/svg" width="91.1143" height="88.9999" viewBox="0 0 91.1143 88.9999"><path d="M82.1749,37.5266l1.6119-1.6119c.9486-.9487-6.37-5.9309-7.0492-6.3782a45.1516,45.1516,0,0,0-5.7766-3.3241c-.2468-.1157-.6016-.3008-.9872-.4782q1.7816-1.8972,3.5863-3.7713c.9486-.98-6.3628-5.9232-7.0492-6.3705A44.1579,44.1579,0,0,0,60.75,12.2606l-.293-.1465,1.3959-1.5425c.9409-1.0489-6.3319-5.9-7.0492-6.37A44.212,44.212,0,0,0,49.0422.8616c-.54-.2467-2.3137-1.2648-2.8458-.6864Q32.7381,15.1682,18.1154,29.066c-7.8436,7.45-16.5663,15.5791-18.1088,26.87-.1157.8253,1.3265,1.9744,1.743,2.3138a40.799,40.799,0,0,0,5.3139,4.0567,44.2174,44.2174,0,0,0,5.7611,3.34c.64.2931,2.175,1.2031,2.8459.6864l2.0747-1.5579c1.45,1.8587,5.9694,4.72,6.6712,5.175l1.4885.9564C24.401,72.7647,22.92,74.6311,21.47,76.5283c-.91,1.1878,6.2625,5.8615,7.0492,6.37a44.1633,44.1633,0,0,0,5.7611,3.3318c.6016.2776,2.2289,1.234,2.8459.6941l9.255-8.098c.8252,2.5682,14.5687,11.63,15.6716,9.9721L91.06,45.3624C91.692,44.4138,86.7252,40.3262,82.1749,37.5266Z"/></svg>
assets/mask-shapes/flower.svg000064400000000547151327220410012304 0ustar00<svg xmlns="http://www.w3.org/2000/svg" width="89" height="89" viewBox="0 0 89 89"><path d="M76.1332,44.4752l6.3289-6.3285A22.3486,22.3486,0,0,0,50.85,6.5474L44.532,12.8651,38.16,6.5474a22.3524,22.3524,0,1,0-31.612,31.61l6.3181,6.3177L6.5478,50.847a22.3524,22.3524,0,0,0,31.612,31.61l6.3181-6.3177L50.85,82.3922a22.3486,22.3486,0,0,0,31.612-31.5993Z"/></svg>
assets/lib/nouislider/nouislider.min.js000064400000054730151327220410014274 0ustar00/*! nouislider - 13.0.0 - 2/6/2019 */
!function(t){"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?module.exports=t():window.noUiSlider=t()}(function(){"use strict";var ot="13.0.0";function s(t){return null!=t}function at(t){t.preventDefault()}function i(t){return"number"==typeof t&&!isNaN(t)&&isFinite(t)}function st(t,e,r){0<r&&(ct(t,e),setTimeout(function(){pt(t,e)},r))}function lt(t){return Math.max(Math.min(t,100),0)}function ut(t){return Array.isArray(t)?t:[t]}function e(t){var e=(t=String(t)).split(".");return 1<e.length?e[1].length:0}function ct(t,e){t.classList?t.classList.add(e):t.className+=" "+e}function pt(t,e){t.classList?t.classList.remove(e):t.className=t.className.replace(new RegExp("(^|\\b)"+e.split(" ").join("|")+"(\\b|$)","gi")," ")}function ft(t){var e=void 0!==window.pageXOffset,r="CSS1Compat"===(t.compatMode||"");return{x:e?window.pageXOffset:r?t.documentElement.scrollLeft:t.body.scrollLeft,y:e?window.pageYOffset:r?t.documentElement.scrollTop:t.body.scrollTop}}function c(t,e){return 100/(e-t)}function p(t,e){return 100*e/(t[1]-t[0])}function f(t,e){for(var r=1;t>=e[r];)r+=1;return r}function r(t,e,r){if(r>=t.slice(-1)[0])return 100;var n,i,o=f(r,t),a=t[o-1],s=t[o],l=e[o-1],u=e[o];return l+(i=r,p(n=[a,s],n[0]<0?i+Math.abs(n[0]):i-n[0])/c(l,u))}function n(t,e,r,n){if(100===n)return n;var i,o,a=f(n,t),s=t[a-1],l=t[a];return r?(l-s)/2<n-s?l:s:e[a-1]?t[a-1]+(i=n-t[a-1],o=e[a-1],Math.round(i/o)*o):n}function o(t,e,r){var n;if("number"==typeof e&&(e=[e]),!Array.isArray(e))throw new Error("noUiSlider ("+ot+"): 'range' contains invalid value.");if(!i(n="min"===t?0:"max"===t?100:parseFloat(t))||!i(e[0]))throw new Error("noUiSlider ("+ot+"): 'range' value isn't numeric.");r.xPct.push(n),r.xVal.push(e[0]),n?r.xSteps.push(!isNaN(e[1])&&e[1]):isNaN(e[1])||(r.xSteps[0]=e[1]),r.xHighestCompleteStep.push(0)}function a(t,e,r){if(!e)return!0;r.xSteps[t]=p([r.xVal[t],r.xVal[t+1]],e)/c(r.xPct[t],r.xPct[t+1]);var n=(r.xVal[t+1]-r.xVal[t])/r.xNumSteps[t],i=Math.ceil(Number(n.toFixed(3))-1),o=r.xVal[t]+r.xNumSteps[t]*i;r.xHighestCompleteStep[t]=o}function l(t,e,r){var n;this.xPct=[],this.xVal=[],this.xSteps=[r||!1],this.xNumSteps=[!1],this.xHighestCompleteStep=[],this.snap=e;var i=[];for(n in t)t.hasOwnProperty(n)&&i.push([t[n],n]);for(i.length&&"object"==typeof i[0][0]?i.sort(function(t,e){return t[0][0]-e[0][0]}):i.sort(function(t,e){return t[0]-e[0]}),n=0;n<i.length;n++)o(i[n][1],i[n][0],this);for(this.xNumSteps=this.xSteps.slice(0),n=0;n<this.xNumSteps.length;n++)a(n,this.xNumSteps[n],this)}l.prototype.getMargin=function(t){var e=this.xNumSteps[0];if(e&&t/e%1!=0)throw new Error("noUiSlider ("+ot+"): 'limit', 'margin' and 'padding' must be divisible by step.");return 2===this.xPct.length&&p(this.xVal,t)},l.prototype.toStepping=function(t){return t=r(this.xVal,this.xPct,t)},l.prototype.fromStepping=function(t){return function(t,e,r){if(100<=r)return t.slice(-1)[0];var n,i=f(r,e),o=t[i-1],a=t[i],s=e[i-1],l=e[i];return n=[o,a],(r-s)*c(s,l)*(n[1]-n[0])/100+n[0]}(this.xVal,this.xPct,t)},l.prototype.getStep=function(t){return t=n(this.xPct,this.xSteps,this.snap,t)},l.prototype.getDefaultStep=function(t,e,r){var n=f(t,this.xPct);return(100===t||e&&t===this.xPct[n-1])&&(n=Math.max(n-1,1)),(this.xVal[n]-this.xVal[n-1])/r},l.prototype.getNearbySteps=function(t){var e=f(t,this.xPct);return{stepBefore:{startValue:this.xVal[e-2],step:this.xNumSteps[e-2],highestStep:this.xHighestCompleteStep[e-2]},thisStep:{startValue:this.xVal[e-1],step:this.xNumSteps[e-1],highestStep:this.xHighestCompleteStep[e-1]},stepAfter:{startValue:this.xVal[e],step:this.xNumSteps[e],highestStep:this.xHighestCompleteStep[e]}}},l.prototype.countStepDecimals=function(){var t=this.xNumSteps.map(e);return Math.max.apply(null,t)},l.prototype.convert=function(t){return this.getStep(this.toStepping(t))};var u={to:function(t){return void 0!==t&&t.toFixed(2)},from:Number};function d(t){if("object"==typeof(e=t)&&"function"==typeof e.to&&"function"==typeof e.from)return!0;var e;throw new Error("noUiSlider ("+ot+"): 'format' requires 'to' and 'from' methods.")}function h(t,e){if(!i(e))throw new Error("noUiSlider ("+ot+"): 'step' is not numeric.");t.singleStep=e}function m(t,e){if("object"!=typeof e||Array.isArray(e))throw new Error("noUiSlider ("+ot+"): 'range' is not an object.");if(void 0===e.min||void 0===e.max)throw new Error("noUiSlider ("+ot+"): Missing 'min' or 'max' in 'range'.");if(e.min===e.max)throw new Error("noUiSlider ("+ot+"): 'range' 'min' and 'max' cannot be equal.");t.spectrum=new l(e,t.snap,t.singleStep)}function g(t,e){if(e=ut(e),!Array.isArray(e)||!e.length)throw new Error("noUiSlider ("+ot+"): 'start' option is incorrect.");t.handles=e.length,t.start=e}function v(t,e){if("boolean"!=typeof(t.snap=e))throw new Error("noUiSlider ("+ot+"): 'snap' option must be a boolean.")}function b(t,e){if("boolean"!=typeof(t.animate=e))throw new Error("noUiSlider ("+ot+"): 'animate' option must be a boolean.")}function S(t,e){if("number"!=typeof(t.animationDuration=e))throw new Error("noUiSlider ("+ot+"): 'animationDuration' option must be a number.")}function w(t,e){var r,n=[!1];if("lower"===e?e=[!0,!1]:"upper"===e&&(e=[!1,!0]),!0===e||!1===e){for(r=1;r<t.handles;r++)n.push(e);n.push(!1)}else{if(!Array.isArray(e)||!e.length||e.length!==t.handles+1)throw new Error("noUiSlider ("+ot+"): 'connect' option doesn't match handle count.");n=e}t.connect=n}function x(t,e){switch(e){case"horizontal":t.ort=0;break;case"vertical":t.ort=1;break;default:throw new Error("noUiSlider ("+ot+"): 'orientation' option is invalid.")}}function y(t,e){if(!i(e))throw new Error("noUiSlider ("+ot+"): 'margin' option must be numeric.");if(0!==e&&(t.margin=t.spectrum.getMargin(e),!t.margin))throw new Error("noUiSlider ("+ot+"): 'margin' option is only supported on linear sliders.")}function E(t,e){if(!i(e))throw new Error("noUiSlider ("+ot+"): 'limit' option must be numeric.");if(t.limit=t.spectrum.getMargin(e),!t.limit||t.handles<2)throw new Error("noUiSlider ("+ot+"): 'limit' option is only supported on linear sliders with 2 or more handles.")}function C(t,e){if(!i(e)&&!Array.isArray(e))throw new Error("noUiSlider ("+ot+"): 'padding' option must be numeric or array of exactly 2 numbers.");if(Array.isArray(e)&&2!==e.length&&!i(e[0])&&!i(e[1]))throw new Error("noUiSlider ("+ot+"): 'padding' option must be numeric or array of exactly 2 numbers.");if(0!==e){if(Array.isArray(e)||(e=[e,e]),!(t.padding=[t.spectrum.getMargin(e[0]),t.spectrum.getMargin(e[1])])===t.padding[0]||!1===t.padding[1])throw new Error("noUiSlider ("+ot+"): 'padding' option is only supported on linear sliders.");if(t.padding[0]<0||t.padding[1]<0)throw new Error("noUiSlider ("+ot+"): 'padding' option must be a positive number(s).");if(100<=t.padding[0]+t.padding[1])throw new Error("noUiSlider ("+ot+"): 'padding' option must not exceed 100% of the range.")}}function N(t,e){switch(e){case"ltr":t.dir=0;break;case"rtl":t.dir=1;break;default:throw new Error("noUiSlider ("+ot+"): 'direction' option was not recognized.")}}function U(t,e){if("string"!=typeof e)throw new Error("noUiSlider ("+ot+"): 'behaviour' must be a string containing options.");var r=0<=e.indexOf("tap"),n=0<=e.indexOf("drag"),i=0<=e.indexOf("fixed"),o=0<=e.indexOf("snap"),a=0<=e.indexOf("hover"),s=0<=e.indexOf("unconstrained");if(i){if(2!==t.handles)throw new Error("noUiSlider ("+ot+"): 'fixed' behaviour must be used with 2 handles");y(t,t.start[1]-t.start[0])}if(s&&(t.margin||t.limit))throw new Error("noUiSlider ("+ot+"): 'unconstrained' behaviour cannot be used with margin or limit");t.events={tap:r||o,drag:n,fixed:i,snap:o,hover:a,unconstrained:s}}function k(t,e){if(!1!==e)if(!0===e){t.tooltips=[];for(var r=0;r<t.handles;r++)t.tooltips.push(!0)}else{if(t.tooltips=ut(e),t.tooltips.length!==t.handles)throw new Error("noUiSlider ("+ot+"): must pass a formatter for all handles.");t.tooltips.forEach(function(t){if("boolean"!=typeof t&&("object"!=typeof t||"function"!=typeof t.to))throw new Error("noUiSlider ("+ot+"): 'tooltips' must be passed a formatter or 'false'.")})}}function P(t,e){d(t.ariaFormat=e)}function A(t,e){d(t.format=e)}function M(t,e){if("boolean"!=typeof(t.keyboardSupport=e))throw new Error("noUiSlider ("+ot+"): 'keyboardSupport' option must be a boolean.")}function V(t,e){t.documentElement=e}function O(t,e){if("string"!=typeof e&&!1!==e)throw new Error("noUiSlider ("+ot+"): 'cssPrefix' must be a string or `false`.");t.cssPrefix=e}function L(t,e){if("object"!=typeof e)throw new Error("noUiSlider ("+ot+"): 'cssClasses' must be an object.");if("string"==typeof t.cssPrefix)for(var r in t.cssClasses={},e)e.hasOwnProperty(r)&&(t.cssClasses[r]=t.cssPrefix+e[r]);else t.cssClasses=e}function dt(e){var r={margin:0,limit:0,padding:0,animate:!0,animationDuration:300,ariaFormat:u,format:u},n={step:{r:!1,t:h},start:{r:!0,t:g},connect:{r:!0,t:w},direction:{r:!0,t:N},snap:{r:!1,t:v},animate:{r:!1,t:b},animationDuration:{r:!1,t:S},range:{r:!0,t:m},orientation:{r:!1,t:x},margin:{r:!1,t:y},limit:{r:!1,t:E},padding:{r:!1,t:C},behaviour:{r:!0,t:U},ariaFormat:{r:!1,t:P},format:{r:!1,t:A},tooltips:{r:!1,t:k},keyboardSupport:{r:!0,t:M},documentElement:{r:!1,t:V},cssPrefix:{r:!0,t:O},cssClasses:{r:!0,t:L}},i={connect:!1,direction:"ltr",behaviour:"tap",orientation:"horizontal",keyboardSupport:!0,cssPrefix:"noUi-",cssClasses:{target:"target",base:"base",origin:"origin",handle:"handle",handleLower:"handle-lower",handleUpper:"handle-upper",touchArea:"touch-area",horizontal:"horizontal",vertical:"vertical",background:"background",connect:"connect",connects:"connects",ltr:"ltr",rtl:"rtl",draggable:"draggable",drag:"state-drag",tap:"state-tap",active:"active",tooltip:"tooltip",pips:"pips",pipsHorizontal:"pips-horizontal",pipsVertical:"pips-vertical",marker:"marker",markerHorizontal:"marker-horizontal",markerVertical:"marker-vertical",markerNormal:"marker-normal",markerLarge:"marker-large",markerSub:"marker-sub",value:"value",valueHorizontal:"value-horizontal",valueVertical:"value-vertical",valueNormal:"value-normal",valueLarge:"value-large",valueSub:"value-sub"}};e.format&&!e.ariaFormat&&(e.ariaFormat=e.format),Object.keys(n).forEach(function(t){if(!s(e[t])&&void 0===i[t]){if(n[t].r)throw new Error("noUiSlider ("+ot+"): '"+t+"' is required.");return!0}n[t].t(r,s(e[t])?e[t]:i[t])}),r.pips=e.pips;var t=document.createElement("div"),o=void 0!==t.style.msTransform,a=void 0!==t.style.transform;r.transformRule=a?"transform":o?"msTransform":"webkitTransform";return r.style=[["left","top"],["right","bottom"]][r.dir][r.ort],r}function z(t,f,o){var l,u,a,c,s,e,p,i,d=window.navigator.pointerEnabled?{start:"pointerdown",move:"pointermove",end:"pointerup"}:window.navigator.msPointerEnabled?{start:"MSPointerDown",move:"MSPointerMove",end:"MSPointerUp"}:{start:"mousedown touchstart",move:"mousemove touchmove",end:"mouseup touchend"},h=window.CSS&&CSS.supports&&CSS.supports("touch-action","none")&&function(){var t=!1;try{var e=Object.defineProperty({},"passive",{get:function(){t=!0}});window.addEventListener("test",null,e)}catch(t){}return t}(),y=t,m=!0,E=f.spectrum,g=[],v=[],b=[],S=0,w={},x=t.ownerDocument,C=f.documentElement||x.documentElement,N=x.body,U=-1,k=0,P=1,A=2,M="rtl"===x.dir||1===f.ort?0:100;function V(t,e){var r=x.createElement("div");return e&&ct(r,e),t.appendChild(r),r}function O(t,e){var r=V(t,f.cssClasses.origin),n=V(r,f.cssClasses.handle);return V(n,f.cssClasses.touchArea),n.setAttribute("data-handle",e),f.keyboardSupport&&(n.setAttribute("tabindex","0"),n.addEventListener("keydown",function(t){return function(t,e){if(z(e))return!1;var r=["Left","Right"],n=["Down","Up"];f.dir&&!f.ort?r.reverse():f.ort&&!f.dir&&n.reverse();var i=t.key.replace("Arrow",""),o=i===n[0]||i===r[0],a=i===n[1]||i===r[1];if(!o&&!a)return!0;t.preventDefault();var s=o?0:1,l=it(e)[s];if(null===l)return!1;!1===l&&(l=E.getDefaultStep(v[e],o,10));return l*=o?-1:1,m=!1,rt(e,g[e]+l,!0),!(m=!0)}(t,e)})),n.setAttribute("role","slider"),n.setAttribute("aria-orientation",f.ort?"vertical":"horizontal"),0===e?ct(n,f.cssClasses.handleLower):e===f.handles-1&&ct(n,f.cssClasses.handleUpper),r}function L(t,e){return!!e&&V(t,f.cssClasses.connect)}function r(t,e){return!!f.tooltips[e]&&V(t.firstChild,f.cssClasses.tooltip)}function z(t){return u[t].hasAttribute("disabled")}function j(e,i,o){var a=x.createElement("div"),s=[];s[k]=f.cssClasses.valueNormal,s[P]=f.cssClasses.valueLarge,s[A]=f.cssClasses.valueSub;var l=[];l[k]=f.cssClasses.markerNormal,l[P]=f.cssClasses.markerLarge,l[A]=f.cssClasses.markerSub;var u=[f.cssClasses.valueHorizontal,f.cssClasses.valueVertical],c=[f.cssClasses.markerHorizontal,f.cssClasses.markerVertical];function p(t,e){var r=e===f.cssClasses.value,n=r?s:l;return e+" "+(r?u:c)[f.ort]+" "+n[t]}return ct(a,f.cssClasses.pips),ct(a,0===f.ort?f.cssClasses.pipsHorizontal:f.cssClasses.pipsVertical),Object.keys(e).forEach(function(t){!function(t,e,r){if((r=i?i(e,r):r)!==U){var n=V(a,!1);n.className=p(r,f.cssClasses.marker),n.style[f.style]=t+"%",k<r&&((n=V(a,!1)).className=p(r,f.cssClasses.value),n.setAttribute("data-value",e),n.style[f.style]=t+"%",n.innerHTML=o.to(e))}}(t,e[t][0],e[t][1])}),a}function F(){var t;c&&((t=c).parentElement.removeChild(t),c=null)}function H(t){F();var m,g,v,b,e,r,S,w,x,n=t.mode,i=t.density||1,o=t.filter||!1,a=function(t,e,r){if("range"===t||"steps"===t)return E.xVal;if("count"===t){if(e<2)throw new Error("noUiSlider ("+ot+"): 'values' (>= 2) required for mode 'count'.");var n=e-1,i=100/n;for(e=[];n--;)e[n]=n*i;e.push(100),t="positions"}return"positions"===t?e.map(function(t){return E.fromStepping(r?E.getStep(t):t)}):"values"===t?r?e.map(function(t){return E.fromStepping(E.getStep(E.toStepping(t)))}):e:void 0}(n,t.values||!1,t.stepped||!1),s=(m=i,g=n,v=a,b={},e=E.xVal[0],r=E.xVal[E.xVal.length-1],w=S=!1,x=0,(v=v.slice().sort(function(t,e){return t-e}).filter(function(t){return!this[t]&&(this[t]=!0)},{}))[0]!==e&&(v.unshift(e),S=!0),v[v.length-1]!==r&&(v.push(r),w=!0),v.forEach(function(t,e){var r,n,i,o,a,s,l,u,c,p,f=t,d=v[e+1],h="steps"===g;if(h&&(r=E.xNumSteps[e]),r||(r=d-f),!1!==f&&void 0!==d)for(r=Math.max(r,1e-7),n=f;n<=d;n=(n+r).toFixed(7)/1){for(u=(a=(o=E.toStepping(n))-x)/m,p=a/(c=Math.round(u)),i=1;i<=c;i+=1)b[(s=x+i*p).toFixed(5)]=[E.fromStepping(s),0];l=-1<v.indexOf(n)?P:h?A:k,!e&&S&&(l=0),n===d&&w||(b[o.toFixed(5)]=[n,l]),x=o}}),b),l=t.format||{to:Math.round};return c=y.appendChild(j(s,o,l))}function D(){var t=l.getBoundingClientRect(),e="offset"+["Width","Height"][f.ort];return 0===f.ort?t.width||l[e]:t.height||l[e]}function R(n,i,o,a){var e=function(t){return!!(t=function(t,e,r){var n,i,o=0===t.type.indexOf("touch"),a=0===t.type.indexOf("mouse"),s=0===t.type.indexOf("pointer");0===t.type.indexOf("MSPointer")&&(s=!0);if(o){var l=function(t){return t.target===r||r.contains(t.target)};if("touchstart"===t.type){var u=Array.prototype.filter.call(t.touches,l);if(1<u.length)return!1;n=u[0].pageX,i=u[0].pageY}else{var c=Array.prototype.find.call(t.changedTouches,l);if(!c)return!1;n=c.pageX,i=c.pageY}}e=e||ft(x),(a||s)&&(n=t.clientX+e.x,i=t.clientY+e.y);return t.pageOffset=e,t.points=[n,i],t.cursor=a||s,t}(t,a.pageOffset,a.target||i))&&(!(y.hasAttribute("disabled")&&!a.doNotReject)&&(e=y,r=f.cssClasses.tap,!((e.classList?e.classList.contains(r):new RegExp("\\b"+r+"\\b").test(e.className))&&!a.doNotReject)&&(!(n===d.start&&void 0!==t.buttons&&1<t.buttons)&&((!a.hover||!t.buttons)&&(h||t.preventDefault(),t.calcPoint=t.points[f.ort],void o(t,a))))));var e,r},r=[];return n.split(" ").forEach(function(t){i.addEventListener(t,e,!!h&&{passive:!0}),r.push([t,e])}),r}function T(t){var e,r,n,i,o,a,s=100*(t-(e=l,r=f.ort,n=e.getBoundingClientRect(),i=e.ownerDocument,o=i.documentElement,a=ft(i),/webkit.*Chrome.*Mobile/i.test(navigator.userAgent)&&(a.x=0),r?n.top+a.y-o.clientTop:n.left+a.x-o.clientLeft))/D();return s=lt(s),f.dir?100-s:s}function q(t,e){"mouseout"===t.type&&"HTML"===t.target.nodeName&&null===t.relatedTarget&&X(t,e)}function B(t,e){if(-1===navigator.appVersion.indexOf("MSIE 9")&&0===t.buttons&&0!==e.buttonsProperty)return X(t,e);var r=(f.dir?-1:1)*(t.calcPoint-e.startCalcPoint);J(0<r,100*r/e.baseSize,e.locations,e.handleNumbers)}function X(t,e){e.handle&&(pt(e.handle,f.cssClasses.active),S-=1),e.listeners.forEach(function(t){C.removeEventListener(t[0],t[1])}),0===S&&(pt(y,f.cssClasses.drag),Q(),t.cursor&&(N.style.cursor="",N.removeEventListener("selectstart",at))),e.handleNumbers.forEach(function(t){W("change",t),W("set",t),W("end",t)})}function Y(t,e){if(e.handleNumbers.some(z))return!1;var r;1===e.handleNumbers.length&&(r=u[e.handleNumbers[0]].children[0],S+=1,ct(r,f.cssClasses.active));t.stopPropagation();var n=[],i=R(d.move,C,B,{target:t.target,handle:r,listeners:n,startCalcPoint:t.calcPoint,baseSize:D(),pageOffset:t.pageOffset,handleNumbers:e.handleNumbers,buttonsProperty:t.buttons,locations:v.slice()}),o=R(d.end,C,X,{target:t.target,handle:r,listeners:n,doNotReject:!0,handleNumbers:e.handleNumbers}),a=R("mouseout",C,q,{target:t.target,handle:r,listeners:n,doNotReject:!0,handleNumbers:e.handleNumbers});n.push.apply(n,i.concat(o,a)),t.cursor&&(N.style.cursor=getComputedStyle(t.target).cursor,1<u.length&&ct(y,f.cssClasses.drag),N.addEventListener("selectstart",at,!1)),e.handleNumbers.forEach(function(t){W("start",t)})}function n(t){t.stopPropagation();var n,i,o,e=T(t.calcPoint),r=(n=e,o=!(i=100),u.forEach(function(t,e){if(!z(e)){var r=Math.abs(v[e]-n);(r<i||100===r&&100===i)&&(o=e,i=r)}}),o);if(!1===r)return!1;f.events.snap||st(y,f.cssClasses.tap,f.animationDuration),Z(r,e,!0,!0),Q(),W("slide",r,!0),W("update",r,!0),W("change",r,!0),W("set",r,!0),f.events.snap&&Y(t,{handleNumbers:[r]})}function _(t){var e=T(t.calcPoint),r=E.getStep(e),n=E.fromStepping(r);Object.keys(w).forEach(function(t){"hover"===t.split(".")[0]&&w[t].forEach(function(t){t.call(s,n)})})}function I(t,e){w[t]=w[t]||[],w[t].push(e),"update"===t.split(".")[0]&&u.forEach(function(t,e){W("update",e)})}function W(r,n,i){Object.keys(w).forEach(function(t){var e=t.split(".")[0];r===e&&w[t].forEach(function(t){t.call(s,g.map(f.format.to),n,g.slice(),i||!1,v.slice())})})}function $(t,e,r,n,i,o){return 1<u.length&&!f.events.unconstrained&&(n&&0<e&&(r=Math.max(r,t[e-1]+f.margin)),i&&e<u.length-1&&(r=Math.min(r,t[e+1]-f.margin))),1<u.length&&f.limit&&(n&&0<e&&(r=Math.min(r,t[e-1]+f.limit)),i&&e<u.length-1&&(r=Math.max(r,t[e+1]-f.limit))),f.padding&&(0===e&&(r=Math.max(r,f.padding[0])),e===u.length-1&&(r=Math.min(r,100-f.padding[1]))),!((r=lt(r=E.getStep(r)))===t[e]&&!o)&&r}function G(t,e){var r=f.ort;return(r?e:t)+", "+(r?t:e)}function J(t,n,r,e){var i=r.slice(),o=[!t,t],a=[t,!t];e=e.slice(),t&&e.reverse(),1<e.length?e.forEach(function(t,e){var r=$(i,t,i[t]+n,o[e],a[e],!1);!1===r?n=0:(n=r-i[t],i[t]=r)}):o=a=[!0];var s=!1;e.forEach(function(t,e){s=Z(t,r[t]+n,o[e],a[e])||s}),s&&e.forEach(function(t){W("update",t),W("slide",t)})}function K(t,e){return f.dir?100-t-e:t}function Q(){b.forEach(function(t){var e=50<v[t]?-1:1,r=3+(u.length+e*t);u[t].style.zIndex=r})}function Z(t,e,r,n){return!1!==(e=$(v,t,e,r,n,!1))&&(function(t,e){v[t]=e,g[t]=E.fromStepping(e);var r="translate("+G(K(e,0)-M+"%","0")+")";u[t].style[f.transformRule]=r,tt(t),tt(t+1)}(t,e),!0)}function tt(t){if(a[t]){var e=0,r=100;0!==t&&(e=v[t-1]),t!==a.length-1&&(r=v[t]);var n=r-e,i="translate("+G(K(e,n)+"%","0")+")",o="scale("+G(n/100,"1")+")";a[t].style[f.transformRule]=i+" "+o}}function et(t,e){var n=ut(t),r=void 0===v[0];e=void 0===e||!!e,f.animate&&!r&&m&&st(y,f.cssClasses.tap,f.animationDuration),b.forEach(function(t){var e,r;Z(t,(e=n[t],r=t,null===e||!1===e||void 0===e?v[r]:("number"==typeof e&&(e=String(e)),e=f.format.from(e),!1===(e=E.toStepping(e))||isNaN(e)?v[r]:e)),!0,!1)}),b.forEach(function(t){Z(t,v[t],!0,!0)}),Q(),b.forEach(function(t){W("update",t),null!==n[t]&&e&&W("set",t)})}function rt(t,e,r){var n=[];if(!(0<=(t=Number(t))&&t<b.length))throw new Error("noUiSlider ("+ot+"): invalid handle number, got: "+t);for(var i=0;i<b.length;i++)n[i]=null;n[t]=e,et(n,r)}function nt(){var t=g.map(f.format.to);return 1===t.length?t[0]:t}function it(t){var e=v[t],r=E.getNearbySteps(e),n=g[t],i=r.thisStep.step,o=null;!1!==i&&n+i>r.stepAfter.startValue&&(i=r.stepAfter.startValue-n),o=n>r.thisStep.startValue?r.thisStep.step:!1!==r.stepBefore.step&&n-r.stepBefore.highestStep,100===e?i=null:0===e&&(o=null);var a=E.countStepDecimals();return null!==i&&!1!==i&&(i=Number(i.toFixed(a))),null!==o&&!1!==o&&(o=Number(o.toFixed(a))),[o,i]}return ct(e=y,f.cssClasses.target),0===f.dir?ct(e,f.cssClasses.ltr):ct(e,f.cssClasses.rtl),0===f.ort?ct(e,f.cssClasses.horizontal):ct(e,f.cssClasses.vertical),l=V(e,f.cssClasses.base),function(t,e){var r=V(e,f.cssClasses.connects);u=[],(a=[]).push(L(r,t[0]));for(var n=0;n<f.handles;n++)u.push(O(e,n)),b[n]=n,a.push(L(r,t[n+1]))}(f.connect,l),(p=f.events).fixed||u.forEach(function(t,e){R(d.start,t.children[0],Y,{handleNumbers:[e]})}),p.tap&&R(d.start,l,n,{}),p.hover&&R(d.move,l,_,{hover:!0}),p.drag&&a.forEach(function(t,e){if(!1!==t&&0!==e&&e!==a.length-1){var r=u[e-1],n=u[e],i=[t];ct(t,f.cssClasses.draggable),p.fixed&&(i.push(r.children[0]),i.push(n.children[0])),i.forEach(function(t){R(d.start,t,Y,{handles:[r,n],handleNumbers:[e-1,e]})})}}),et(f.start),f.pips&&H(f.pips),f.tooltips&&(i=u.map(r),I("update",function(t,e,r){if(i[e]){var n=t[e];!0!==f.tooltips[e]&&(n=f.tooltips[e].to(r[e])),i[e].innerHTML=n}})),I("update",function(t,e,a,r,s){b.forEach(function(t){var e=u[t],r=$(v,t,0,!0,!0,!0),n=$(v,t,100,!0,!0,!0),i=s[t],o=f.ariaFormat.to(a[t]);r=E.fromStepping(r).toFixed(1),n=E.fromStepping(n).toFixed(1),i=E.fromStepping(i).toFixed(1),e.children[0].setAttribute("aria-valuemin",r),e.children[0].setAttribute("aria-valuemax",n),e.children[0].setAttribute("aria-valuenow",i),e.children[0].setAttribute("aria-valuetext",o)})}),s={destroy:function(){for(var t in f.cssClasses)f.cssClasses.hasOwnProperty(t)&&pt(y,f.cssClasses[t]);for(;y.firstChild;)y.removeChild(y.firstChild);delete y.noUiSlider},steps:function(){return b.map(it)},on:I,off:function(t){var n=t&&t.split(".")[0],i=n&&t.substring(n.length);Object.keys(w).forEach(function(t){var e=t.split(".")[0],r=t.substring(e.length);n&&n!==e||i&&i!==r||delete w[t]})},get:nt,set:et,setHandle:rt,reset:function(t){et(f.start,t)},__moveHandles:function(t,e,r){J(t,e,v,r)},options:o,updateOptions:function(e,t){var r=nt(),n=["margin","limit","padding","range","animate","snap","step","format"];n.forEach(function(t){void 0!==e[t]&&(o[t]=e[t])});var i=dt(o);n.forEach(function(t){void 0!==e[t]&&(f[t]=i[t])}),E=i.spectrum,f.margin=i.margin,f.limit=i.limit,f.padding=i.padding,f.pips&&H(f.pips),v=[],et(e.start||r,t)},target:y,removePips:F,pips:H}}return{__spectrum:l,version:ot,create:function(t,e){if(!t||!t.nodeName)throw new Error("noUiSlider ("+ot+"): create requires a single element, got: "+t);if(t.noUiSlider)throw new Error("noUiSlider ("+ot+"): Slider was already initialized.");var r=z(t,dt(e),e);return t.noUiSlider=r}}});assets/lib/nouislider/nouislider.js000064400000252776151327220410013524 0ustar00/*! nouislider - 13.0.0 - 2/6/2019 */
(function(factory) {
    if (typeof define === "function" && define.amd) {
        // AMD. Register as an anonymous module.
        define([], factory);
    } else if (typeof exports === "object") {
        // Node/CommonJS
        module.exports = factory();
    } else {
        // Browser globals
        window.noUiSlider = factory();
    }
})(function() {
    "use strict";

    var VERSION = "13.0.0";

    function isValidFormatter(entry) {
        return typeof entry === "object" && typeof entry.to === "function" && typeof entry.from === "function";
    }

    function removeElement(el) {
        el.parentElement.removeChild(el);
    }

    function isSet(value) {
        return value !== null && value !== undefined;
    }

    // Bindable version
    function preventDefault(e) {
        e.preventDefault();
    }

    // Removes duplicates from an array.
    function unique(array) {
        return array.filter(function(a) {
            return !this[a] ? (this[a] = true) : false;
        }, {});
    }

    // Round a value to the closest 'to'.
    function closest(value, to) {
        return Math.round(value / to) * to;
    }

    // Current position of an element relative to the document.
    function offset(elem, orientation) {
        var rect = elem.getBoundingClientRect();
        var doc = elem.ownerDocument;
        var docElem = doc.documentElement;
        var pageOffset = getPageOffset(doc);

        // getBoundingClientRect contains left scroll in Chrome on Android.
        // I haven't found a feature detection that proves this. Worst case
        // scenario on mis-match: the 'tap' feature on horizontal sliders breaks.
        if (/webkit.*Chrome.*Mobile/i.test(navigator.userAgent)) {
            pageOffset.x = 0;
        }

        return orientation
            ? rect.top + pageOffset.y - docElem.clientTop
            : rect.left + pageOffset.x - docElem.clientLeft;
    }

    // Checks whether a value is numerical.
    function isNumeric(a) {
        return typeof a === "number" && !isNaN(a) && isFinite(a);
    }

    // Sets a class and removes it after [duration] ms.
    function addClassFor(element, className, duration) {
        if (duration > 0) {
            addClass(element, className);
            setTimeout(function() {
                removeClass(element, className);
            }, duration);
        }
    }

    // Limits a value to 0 - 100
    function limit(a) {
        return Math.max(Math.min(a, 100), 0);
    }

    // Wraps a variable as an array, if it isn't one yet.
    // Note that an input array is returned by reference!
    function asArray(a) {
        return Array.isArray(a) ? a : [a];
    }

    // Counts decimals
    function countDecimals(numStr) {
        numStr = String(numStr);
        var pieces = numStr.split(".");
        return pieces.length > 1 ? pieces[1].length : 0;
    }

    // http://youmightnotneedjquery.com/#add_class
    function addClass(el, className) {
        if (el.classList) {
            el.classList.add(className);
        } else {
            el.className += " " + className;
        }
    }

    // http://youmightnotneedjquery.com/#remove_class
    function removeClass(el, className) {
        if (el.classList) {
            el.classList.remove(className);
        } else {
            el.className = el.className.replace(
                new RegExp("(^|\\b)" + className.split(" ").join("|") + "(\\b|$)", "gi"),
                " "
            );
        }
    }

    // https://plainjs.com/javascript/attributes/adding-removing-and-testing-for-classes-9/
    function hasClass(el, className) {
        return el.classList
            ? el.classList.contains(className)
            : new RegExp("\\b" + className + "\\b").test(el.className);
    }

    // https://developer.mozilla.org/en-US/docs/Web/API/Window/scrollY#Notes
    function getPageOffset(doc) {
        var supportPageOffset = window.pageXOffset !== undefined;
        var isCSS1Compat = (doc.compatMode || "") === "CSS1Compat";
        var x = supportPageOffset
            ? window.pageXOffset
            : isCSS1Compat
                ? doc.documentElement.scrollLeft
                : doc.body.scrollLeft;
        var y = supportPageOffset
            ? window.pageYOffset
            : isCSS1Compat
                ? doc.documentElement.scrollTop
                : doc.body.scrollTop;

        return {
            x: x,
            y: y
        };
    }

    // we provide a function to compute constants instead
    // of accessing window.* as soon as the module needs it
    // so that we do not compute anything if not needed
    function getActions() {
        // Determine the events to bind. IE11 implements pointerEvents without
        // a prefix, which breaks compatibility with the IE10 implementation.
        return window.navigator.pointerEnabled
            ? {
                  start: "pointerdown",
                  move: "pointermove",
                  end: "pointerup"
              }
            : window.navigator.msPointerEnabled
                ? {
                      start: "MSPointerDown",
                      move: "MSPointerMove",
                      end: "MSPointerUp"
                  }
                : {
                      start: "mousedown touchstart",
                      move: "mousemove touchmove",
                      end: "mouseup touchend"
                  };
    }

    // https://github.com/WICG/EventListenerOptions/blob/gh-pages/explainer.md
    // Issue #785
    function getSupportsPassive() {
        var supportsPassive = false;

        /* eslint-disable */
        try {
            var opts = Object.defineProperty({}, "passive", {
                get: function() {
                    supportsPassive = true;
                }
            });

            window.addEventListener("test", null, opts);
        } catch (e) {}
        /* eslint-enable */

        return supportsPassive;
    }

    function getSupportsTouchActionNone() {
        return window.CSS && CSS.supports && CSS.supports("touch-action", "none");
    }

    // Value calculation

    // Determine the size of a sub-range in relation to a full range.
    function subRangeRatio(pa, pb) {
        return 100 / (pb - pa);
    }

    // (percentage) How many percent is this value of this range?
    function fromPercentage(range, value) {
        return (value * 100) / (range[1] - range[0]);
    }

    // (percentage) Where is this value on this range?
    function toPercentage(range, value) {
        return fromPercentage(range, range[0] < 0 ? value + Math.abs(range[0]) : value - range[0]);
    }

    // (value) How much is this percentage on this range?
    function isPercentage(range, value) {
        return (value * (range[1] - range[0])) / 100 + range[0];
    }

    // Range conversion

    function getJ(value, arr) {
        var j = 1;

        while (value >= arr[j]) {
            j += 1;
        }

        return j;
    }

    // (percentage) Input a value, find where, on a scale of 0-100, it applies.
    function toStepping(xVal, xPct, value) {
        if (value >= xVal.slice(-1)[0]) {
            return 100;
        }

        var j = getJ(value, xVal);
        var va = xVal[j - 1];
        var vb = xVal[j];
        var pa = xPct[j - 1];
        var pb = xPct[j];

        return pa + toPercentage([va, vb], value) / subRangeRatio(pa, pb);
    }

    // (value) Input a percentage, find where it is on the specified range.
    function fromStepping(xVal, xPct, value) {
        // There is no range group that fits 100
        if (value >= 100) {
            return xVal.slice(-1)[0];
        }

        var j = getJ(value, xPct);
        var va = xVal[j - 1];
        var vb = xVal[j];
        var pa = xPct[j - 1];
        var pb = xPct[j];

        return isPercentage([va, vb], (value - pa) * subRangeRatio(pa, pb));
    }

    // (percentage) Get the step that applies at a certain value.
    function getStep(xPct, xSteps, snap, value) {
        if (value === 100) {
            return value;
        }

        var j = getJ(value, xPct);
        var a = xPct[j - 1];
        var b = xPct[j];

        // If 'snap' is set, steps are used as fixed points on the slider.
        if (snap) {
            // Find the closest position, a or b.
            if (value - a > (b - a) / 2) {
                return b;
            }

            return a;
        }

        if (!xSteps[j - 1]) {
            return value;
        }

        return xPct[j - 1] + closest(value - xPct[j - 1], xSteps[j - 1]);
    }

    // Entry parsing

    function handleEntryPoint(index, value, that) {
        var percentage;

        // Wrap numerical input in an array.
        if (typeof value === "number") {
            value = [value];
        }

        // Reject any invalid input, by testing whether value is an array.
        if (!Array.isArray(value)) {
            throw new Error("noUiSlider (" + VERSION + "): 'range' contains invalid value.");
        }

        // Covert min/max syntax to 0 and 100.
        if (index === "min") {
            percentage = 0;
        } else if (index === "max") {
            percentage = 100;
        } else {
            percentage = parseFloat(index);
        }

        // Check for correct input.
        if (!isNumeric(percentage) || !isNumeric(value[0])) {
            throw new Error("noUiSlider (" + VERSION + "): 'range' value isn't numeric.");
        }

        // Store values.
        that.xPct.push(percentage);
        that.xVal.push(value[0]);

        // NaN will evaluate to false too, but to keep
        // logging clear, set step explicitly. Make sure
        // not to override the 'step' setting with false.
        if (!percentage) {
            if (!isNaN(value[1])) {
                that.xSteps[0] = value[1];
            }
        } else {
            that.xSteps.push(isNaN(value[1]) ? false : value[1]);
        }

        that.xHighestCompleteStep.push(0);
    }

    function handleStepPoint(i, n, that) {
        // Ignore 'false' stepping.
        if (!n) {
            return true;
        }

        // Factor to range ratio
        that.xSteps[i] =
            fromPercentage([that.xVal[i], that.xVal[i + 1]], n) / subRangeRatio(that.xPct[i], that.xPct[i + 1]);

        var totalSteps = (that.xVal[i + 1] - that.xVal[i]) / that.xNumSteps[i];
        var highestStep = Math.ceil(Number(totalSteps.toFixed(3)) - 1);
        var step = that.xVal[i] + that.xNumSteps[i] * highestStep;

        that.xHighestCompleteStep[i] = step;
    }

    // Interface

    function Spectrum(entry, snap, singleStep) {
        this.xPct = [];
        this.xVal = [];
        this.xSteps = [singleStep || false];
        this.xNumSteps = [false];
        this.xHighestCompleteStep = [];

        this.snap = snap;

        var index;
        var ordered = []; // [0, 'min'], [1, '50%'], [2, 'max']

        // Map the object keys to an array.
        for (index in entry) {
            if (entry.hasOwnProperty(index)) {
                ordered.push([entry[index], index]);
            }
        }

        // Sort all entries by value (numeric sort).
        if (ordered.length && typeof ordered[0][0] === "object") {
            ordered.sort(function(a, b) {
                return a[0][0] - b[0][0];
            });
        } else {
            ordered.sort(function(a, b) {
                return a[0] - b[0];
            });
        }

        // Convert all entries to subranges.
        for (index = 0; index < ordered.length; index++) {
            handleEntryPoint(ordered[index][1], ordered[index][0], this);
        }

        // Store the actual step values.
        // xSteps is sorted in the same order as xPct and xVal.
        this.xNumSteps = this.xSteps.slice(0);

        // Convert all numeric steps to the percentage of the subrange they represent.
        for (index = 0; index < this.xNumSteps.length; index++) {
            handleStepPoint(index, this.xNumSteps[index], this);
        }
    }

    Spectrum.prototype.getMargin = function(value) {
        var step = this.xNumSteps[0];

        if (step && (value / step) % 1 !== 0) {
            throw new Error("noUiSlider (" + VERSION + "): 'limit', 'margin' and 'padding' must be divisible by step.");
        }

        return this.xPct.length === 2 ? fromPercentage(this.xVal, value) : false;
    };

    Spectrum.prototype.toStepping = function(value) {
        value = toStepping(this.xVal, this.xPct, value);

        return value;
    };

    Spectrum.prototype.fromStepping = function(value) {
        return fromStepping(this.xVal, this.xPct, value);
    };

    Spectrum.prototype.getStep = function(value) {
        value = getStep(this.xPct, this.xSteps, this.snap, value);

        return value;
    };

    Spectrum.prototype.getDefaultStep = function(value, isDown, size) {
        var j = getJ(value, this.xPct);

        // When at the top or stepping down, look at the previous sub-range
        if (value === 100 || (isDown && value === this.xPct[j - 1])) {
            j = Math.max(j - 1, 1);
        }

        return (this.xVal[j] - this.xVal[j - 1]) / size;
    };

    Spectrum.prototype.getNearbySteps = function(value) {
        var j = getJ(value, this.xPct);

        return {
            stepBefore: {
                startValue: this.xVal[j - 2],
                step: this.xNumSteps[j - 2],
                highestStep: this.xHighestCompleteStep[j - 2]
            },
            thisStep: {
                startValue: this.xVal[j - 1],
                step: this.xNumSteps[j - 1],
                highestStep: this.xHighestCompleteStep[j - 1]
            },
            stepAfter: {
                startValue: this.xVal[j],
                step: this.xNumSteps[j],
                highestStep: this.xHighestCompleteStep[j]
            }
        };
    };

    Spectrum.prototype.countStepDecimals = function() {
        var stepDecimals = this.xNumSteps.map(countDecimals);
        return Math.max.apply(null, stepDecimals);
    };

    // Outside testing
    Spectrum.prototype.convert = function(value) {
        return this.getStep(this.toStepping(value));
    };

    /*	Every input option is tested and parsed. This'll prevent
        endless validation in internal methods. These tests are
        structured with an item for every option available. An
        option can be marked as required by setting the 'r' flag.
        The testing function is provided with three arguments:
            - The provided value for the option;
            - A reference to the options object;
            - The name for the option;

        The testing function returns false when an error is detected,
        or true when everything is OK. It can also modify the option
        object, to make sure all values can be correctly looped elsewhere. */

    var defaultFormatter = {
        to: function(value) {
            return value !== undefined && value.toFixed(2);
        },
        from: Number
    };

    function validateFormat(entry) {
        // Any object with a to and from method is supported.
        if (isValidFormatter(entry)) {
            return true;
        }

        throw new Error("noUiSlider (" + VERSION + "): 'format' requires 'to' and 'from' methods.");
    }

    function testStep(parsed, entry) {
        if (!isNumeric(entry)) {
            throw new Error("noUiSlider (" + VERSION + "): 'step' is not numeric.");
        }

        // The step option can still be used to set stepping
        // for linear sliders. Overwritten if set in 'range'.
        parsed.singleStep = entry;
    }

    function testRange(parsed, entry) {
        // Filter incorrect input.
        if (typeof entry !== "object" || Array.isArray(entry)) {
            throw new Error("noUiSlider (" + VERSION + "): 'range' is not an object.");
        }

        // Catch missing start or end.
        if (entry.min === undefined || entry.max === undefined) {
            throw new Error("noUiSlider (" + VERSION + "): Missing 'min' or 'max' in 'range'.");
        }

        // Catch equal start or end.
        if (entry.min === entry.max) {
            throw new Error("noUiSlider (" + VERSION + "): 'range' 'min' and 'max' cannot be equal.");
        }

        parsed.spectrum = new Spectrum(entry, parsed.snap, parsed.singleStep);
    }

    function testStart(parsed, entry) {
        entry = asArray(entry);

        // Validate input. Values aren't tested, as the public .val method
        // will always provide a valid location.
        if (!Array.isArray(entry) || !entry.length) {
            throw new Error("noUiSlider (" + VERSION + "): 'start' option is incorrect.");
        }

        // Store the number of handles.
        parsed.handles = entry.length;

        // When the slider is initialized, the .val method will
        // be called with the start options.
        parsed.start = entry;
    }

    function testSnap(parsed, entry) {
        // Enforce 100% stepping within subranges.
        parsed.snap = entry;

        if (typeof entry !== "boolean") {
            throw new Error("noUiSlider (" + VERSION + "): 'snap' option must be a boolean.");
        }
    }

    function testAnimate(parsed, entry) {
        // Enforce 100% stepping within subranges.
        parsed.animate = entry;

        if (typeof entry !== "boolean") {
            throw new Error("noUiSlider (" + VERSION + "): 'animate' option must be a boolean.");
        }
    }

    function testAnimationDuration(parsed, entry) {
        parsed.animationDuration = entry;

        if (typeof entry !== "number") {
            throw new Error("noUiSlider (" + VERSION + "): 'animationDuration' option must be a number.");
        }
    }

    function testConnect(parsed, entry) {
        var connect = [false];
        var i;

        // Map legacy options
        if (entry === "lower") {
            entry = [true, false];
        } else if (entry === "upper") {
            entry = [false, true];
        }

        // Handle boolean options
        if (entry === true || entry === false) {
            for (i = 1; i < parsed.handles; i++) {
                connect.push(entry);
            }

            connect.push(false);
        }

        // Reject invalid input
        else if (!Array.isArray(entry) || !entry.length || entry.length !== parsed.handles + 1) {
            throw new Error("noUiSlider (" + VERSION + "): 'connect' option doesn't match handle count.");
        } else {
            connect = entry;
        }

        parsed.connect = connect;
    }

    function testOrientation(parsed, entry) {
        // Set orientation to an a numerical value for easy
        // array selection.
        switch (entry) {
            case "horizontal":
                parsed.ort = 0;
                break;
            case "vertical":
                parsed.ort = 1;
                break;
            default:
                throw new Error("noUiSlider (" + VERSION + "): 'orientation' option is invalid.");
        }
    }

    function testMargin(parsed, entry) {
        if (!isNumeric(entry)) {
            throw new Error("noUiSlider (" + VERSION + "): 'margin' option must be numeric.");
        }

        // Issue #582
        if (entry === 0) {
            return;
        }

        parsed.margin = parsed.spectrum.getMargin(entry);

        if (!parsed.margin) {
            throw new Error("noUiSlider (" + VERSION + "): 'margin' option is only supported on linear sliders.");
        }
    }

    function testLimit(parsed, entry) {
        if (!isNumeric(entry)) {
            throw new Error("noUiSlider (" + VERSION + "): 'limit' option must be numeric.");
        }

        parsed.limit = parsed.spectrum.getMargin(entry);

        if (!parsed.limit || parsed.handles < 2) {
            throw new Error(
                "noUiSlider (" +
                    VERSION +
                    "): 'limit' option is only supported on linear sliders with 2 or more handles."
            );
        }
    }

    function testPadding(parsed, entry) {
        if (!isNumeric(entry) && !Array.isArray(entry)) {
            throw new Error(
                "noUiSlider (" + VERSION + "): 'padding' option must be numeric or array of exactly 2 numbers."
            );
        }

        if (Array.isArray(entry) && !(entry.length === 2 || isNumeric(entry[0]) || isNumeric(entry[1]))) {
            throw new Error(
                "noUiSlider (" + VERSION + "): 'padding' option must be numeric or array of exactly 2 numbers."
            );
        }

        if (entry === 0) {
            return;
        }

        if (!Array.isArray(entry)) {
            entry = [entry, entry];
        }

        // 'getMargin' returns false for invalid values.
        parsed.padding = [parsed.spectrum.getMargin(entry[0]), parsed.spectrum.getMargin(entry[1])];

        if (parsed.padding[0] === false || parsed.padding[1] === false) {
            throw new Error("noUiSlider (" + VERSION + "): 'padding' option is only supported on linear sliders.");
        }

        if (parsed.padding[0] < 0 || parsed.padding[1] < 0) {
            throw new Error("noUiSlider (" + VERSION + "): 'padding' option must be a positive number(s).");
        }

        if (parsed.padding[0] + parsed.padding[1] >= 100) {
            throw new Error("noUiSlider (" + VERSION + "): 'padding' option must not exceed 100% of the range.");
        }
    }

    function testDirection(parsed, entry) {
        // Set direction as a numerical value for easy parsing.
        // Invert connection for RTL sliders, so that the proper
        // handles get the connect/background classes.
        switch (entry) {
            case "ltr":
                parsed.dir = 0;
                break;
            case "rtl":
                parsed.dir = 1;
                break;
            default:
                throw new Error("noUiSlider (" + VERSION + "): 'direction' option was not recognized.");
        }
    }

    function testBehaviour(parsed, entry) {
        // Make sure the input is a string.
        if (typeof entry !== "string") {
            throw new Error("noUiSlider (" + VERSION + "): 'behaviour' must be a string containing options.");
        }

        // Check if the string contains any keywords.
        // None are required.
        var tap = entry.indexOf("tap") >= 0;
        var drag = entry.indexOf("drag") >= 0;
        var fixed = entry.indexOf("fixed") >= 0;
        var snap = entry.indexOf("snap") >= 0;
        var hover = entry.indexOf("hover") >= 0;
        var unconstrained = entry.indexOf("unconstrained") >= 0;

        if (fixed) {
            if (parsed.handles !== 2) {
                throw new Error("noUiSlider (" + VERSION + "): 'fixed' behaviour must be used with 2 handles");
            }

            // Use margin to enforce fixed state
            testMargin(parsed, parsed.start[1] - parsed.start[0]);
        }

        if (unconstrained && (parsed.margin || parsed.limit)) {
            throw new Error(
                "noUiSlider (" + VERSION + "): 'unconstrained' behaviour cannot be used with margin or limit"
            );
        }

        parsed.events = {
            tap: tap || snap,
            drag: drag,
            fixed: fixed,
            snap: snap,
            hover: hover,
            unconstrained: unconstrained
        };
    }

    function testTooltips(parsed, entry) {
        if (entry === false) {
            return;
        }

        if (entry === true) {
            parsed.tooltips = [];

            for (var i = 0; i < parsed.handles; i++) {
                parsed.tooltips.push(true);
            }
        } else {
            parsed.tooltips = asArray(entry);

            if (parsed.tooltips.length !== parsed.handles) {
                throw new Error("noUiSlider (" + VERSION + "): must pass a formatter for all handles.");
            }

            parsed.tooltips.forEach(function(formatter) {
                if (
                    typeof formatter !== "boolean" &&
                    (typeof formatter !== "object" || typeof formatter.to !== "function")
                ) {
                    throw new Error("noUiSlider (" + VERSION + "): 'tooltips' must be passed a formatter or 'false'.");
                }
            });
        }
    }

    function testAriaFormat(parsed, entry) {
        parsed.ariaFormat = entry;
        validateFormat(entry);
    }

    function testFormat(parsed, entry) {
        parsed.format = entry;
        validateFormat(entry);
    }

    function testKeyboardSupport(parsed, entry) {
        parsed.keyboardSupport = entry;

        if (typeof entry !== "boolean") {
            throw new Error("noUiSlider (" + VERSION + "): 'keyboardSupport' option must be a boolean.");
        }
    }

    function testDocumentElement(parsed, entry) {
        // This is an advanced option. Passed values are used without validation.
        parsed.documentElement = entry;
    }

    function testCssPrefix(parsed, entry) {
        if (typeof entry !== "string" && entry !== false) {
            throw new Error("noUiSlider (" + VERSION + "): 'cssPrefix' must be a string or `false`.");
        }

        parsed.cssPrefix = entry;
    }

    function testCssClasses(parsed, entry) {
        if (typeof entry !== "object") {
            throw new Error("noUiSlider (" + VERSION + "): 'cssClasses' must be an object.");
        }

        if (typeof parsed.cssPrefix === "string") {
            parsed.cssClasses = {};

            for (var key in entry) {
                if (!entry.hasOwnProperty(key)) {
                    continue;
                }

                parsed.cssClasses[key] = parsed.cssPrefix + entry[key];
            }
        } else {
            parsed.cssClasses = entry;
        }
    }

    // Test all developer settings and parse to assumption-safe values.
    function testOptions(options) {
        // To prove a fix for #537, freeze options here.
        // If the object is modified, an error will be thrown.
        // Object.freeze(options);

        var parsed = {
            margin: 0,
            limit: 0,
            padding: 0,
            animate: true,
            animationDuration: 300,
            ariaFormat: defaultFormatter,
            format: defaultFormatter
        };

        // Tests are executed in the order they are presented here.
        var tests = {
            step: { r: false, t: testStep },
            start: { r: true, t: testStart },
            connect: { r: true, t: testConnect },
            direction: { r: true, t: testDirection },
            snap: { r: false, t: testSnap },
            animate: { r: false, t: testAnimate },
            animationDuration: { r: false, t: testAnimationDuration },
            range: { r: true, t: testRange },
            orientation: { r: false, t: testOrientation },
            margin: { r: false, t: testMargin },
            limit: { r: false, t: testLimit },
            padding: { r: false, t: testPadding },
            behaviour: { r: true, t: testBehaviour },
            ariaFormat: { r: false, t: testAriaFormat },
            format: { r: false, t: testFormat },
            tooltips: { r: false, t: testTooltips },
            keyboardSupport: { r: true, t: testKeyboardSupport },
            documentElement: { r: false, t: testDocumentElement },
            cssPrefix: { r: true, t: testCssPrefix },
            cssClasses: { r: true, t: testCssClasses }
        };

        var defaults = {
            connect: false,
            direction: "ltr",
            behaviour: "tap",
            orientation: "horizontal",
            keyboardSupport: true,
            cssPrefix: "noUi-",
            cssClasses: {
                target: "target",
                base: "base",
                origin: "origin",
                handle: "handle",
                handleLower: "handle-lower",
                handleUpper: "handle-upper",
                touchArea: "touch-area",
                horizontal: "horizontal",
                vertical: "vertical",
                background: "background",
                connect: "connect",
                connects: "connects",
                ltr: "ltr",
                rtl: "rtl",
                draggable: "draggable",
                drag: "state-drag",
                tap: "state-tap",
                active: "active",
                tooltip: "tooltip",
                pips: "pips",
                pipsHorizontal: "pips-horizontal",
                pipsVertical: "pips-vertical",
                marker: "marker",
                markerHorizontal: "marker-horizontal",
                markerVertical: "marker-vertical",
                markerNormal: "marker-normal",
                markerLarge: "marker-large",
                markerSub: "marker-sub",
                value: "value",
                valueHorizontal: "value-horizontal",
                valueVertical: "value-vertical",
                valueNormal: "value-normal",
                valueLarge: "value-large",
                valueSub: "value-sub"
            }
        };

        // AriaFormat defaults to regular format, if any.
        if (options.format && !options.ariaFormat) {
            options.ariaFormat = options.format;
        }

        // Run all options through a testing mechanism to ensure correct
        // input. It should be noted that options might get modified to
        // be handled properly. E.g. wrapping integers in arrays.
        Object.keys(tests).forEach(function(name) {
            // If the option isn't set, but it is required, throw an error.
            if (!isSet(options[name]) && defaults[name] === undefined) {
                if (tests[name].r) {
                    throw new Error("noUiSlider (" + VERSION + "): '" + name + "' is required.");
                }

                return true;
            }

            tests[name].t(parsed, !isSet(options[name]) ? defaults[name] : options[name]);
        });

        // Forward pips options
        parsed.pips = options.pips;

        // All recent browsers accept unprefixed transform.
        // We need -ms- for IE9 and -webkit- for older Android;
        // Assume use of -webkit- if unprefixed and -ms- are not supported.
        // https://caniuse.com/#feat=transforms2d
        var d = document.createElement("div");
        var msPrefix = d.style.msTransform !== undefined;
        var noPrefix = d.style.transform !== undefined;

        parsed.transformRule = noPrefix ? "transform" : msPrefix ? "msTransform" : "webkitTransform";

        // Pips don't move, so we can place them using left/top.
        var styles = [["left", "top"], ["right", "bottom"]];

        parsed.style = styles[parsed.dir][parsed.ort];

        return parsed;
    }

    function scope(target, options, originalOptions) {
        var actions = getActions();
        var supportsTouchActionNone = getSupportsTouchActionNone();
        var supportsPassive = supportsTouchActionNone && getSupportsPassive();

        // All variables local to 'scope' are prefixed with 'scope_'

        // Slider DOM Nodes
        var scope_Target = target;
        var scope_Base;
        var scope_Handles;
        var scope_Connects;
        var scope_Pips;

        // Override for the 'animate' option
        var scope_ShouldAnimate = true;

        // Slider state values
        var scope_Spectrum = options.spectrum;
        var scope_Values = [];
        var scope_Locations = [];
        var scope_HandleNumbers = [];
        var scope_ActiveHandlesCount = 0;
        var scope_Events = {};

        // Exposed API
        var scope_Self;

        // Document Nodes
        var scope_Document = target.ownerDocument;
        var scope_DocumentElement = options.documentElement || scope_Document.documentElement;
        var scope_Body = scope_Document.body;

        // Pips constants
        var PIPS_NONE = -1;
        var PIPS_NO_VALUE = 0;
        var PIPS_LARGE_VALUE = 1;
        var PIPS_SMALL_VALUE = 2;

        // For horizontal sliders in standard ltr documents,
        // make .noUi-origin overflow to the left so the document doesn't scroll.
        var scope_DirOffset = scope_Document.dir === "rtl" || options.ort === 1 ? 0 : 100;

        // Creates a node, adds it to target, returns the new node.
        function addNodeTo(addTarget, className) {
            var div = scope_Document.createElement("div");

            if (className) {
                addClass(div, className);
            }

            addTarget.appendChild(div);

            return div;
        }

        // Append a origin to the base
        function addOrigin(base, handleNumber) {
            var origin = addNodeTo(base, options.cssClasses.origin);
            var handle = addNodeTo(origin, options.cssClasses.handle);

            addNodeTo(handle, options.cssClasses.touchArea);

            handle.setAttribute("data-handle", handleNumber);

            if (options.keyboardSupport) {
                // https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex
                // 0 = focusable and reachable
                handle.setAttribute("tabindex", "0");
                handle.addEventListener("keydown", function(event) {
                    return eventKeydown(event, handleNumber);
                });
            }

            handle.setAttribute("role", "slider");
            handle.setAttribute("aria-orientation", options.ort ? "vertical" : "horizontal");

            if (handleNumber === 0) {
                addClass(handle, options.cssClasses.handleLower);
            } else if (handleNumber === options.handles - 1) {
                addClass(handle, options.cssClasses.handleUpper);
            }

            return origin;
        }

        // Insert nodes for connect elements
        function addConnect(base, add) {
            if (!add) {
                return false;
            }

            return addNodeTo(base, options.cssClasses.connect);
        }

        // Add handles to the slider base.
        function addElements(connectOptions, base) {
            var connectBase = addNodeTo(base, options.cssClasses.connects);

            scope_Handles = [];
            scope_Connects = [];

            scope_Connects.push(addConnect(connectBase, connectOptions[0]));

            // [::::O====O====O====]
            // connectOptions = [0, 1, 1, 1]

            for (var i = 0; i < options.handles; i++) {
                // Keep a list of all added handles.
                scope_Handles.push(addOrigin(base, i));
                scope_HandleNumbers[i] = i;
                scope_Connects.push(addConnect(connectBase, connectOptions[i + 1]));
            }
        }

        // Initialize a single slider.
        function addSlider(addTarget) {
            // Apply classes and data to the target.
            addClass(addTarget, options.cssClasses.target);

            if (options.dir === 0) {
                addClass(addTarget, options.cssClasses.ltr);
            } else {
                addClass(addTarget, options.cssClasses.rtl);
            }

            if (options.ort === 0) {
                addClass(addTarget, options.cssClasses.horizontal);
            } else {
                addClass(addTarget, options.cssClasses.vertical);
            }

            return addNodeTo(addTarget, options.cssClasses.base);
        }

        function addTooltip(handle, handleNumber) {
            if (!options.tooltips[handleNumber]) {
                return false;
            }

            return addNodeTo(handle.firstChild, options.cssClasses.tooltip);
        }

        // Disable the slider dragging if any handle is disabled
        function isHandleDisabled(handleNumber) {
            var handleOrigin = scope_Handles[handleNumber];
            return handleOrigin.hasAttribute("disabled");
        }

        // The tooltips option is a shorthand for using the 'update' event.
        function tooltips() {
            // Tooltips are added with options.tooltips in original order.
            var tips = scope_Handles.map(addTooltip);

            bindEvent("update", function(values, handleNumber, unencoded) {
                if (!tips[handleNumber]) {
                    return;
                }

                var formattedValue = values[handleNumber];

                if (options.tooltips[handleNumber] !== true) {
                    formattedValue = options.tooltips[handleNumber].to(unencoded[handleNumber]);
                }

                tips[handleNumber].innerHTML = formattedValue;
            });
        }

        function aria() {
            bindEvent("update", function(values, handleNumber, unencoded, tap, positions) {
                // Update Aria Values for all handles, as a change in one changes min and max values for the next.
                scope_HandleNumbers.forEach(function(index) {
                    var handle = scope_Handles[index];

                    var min = checkHandlePosition(scope_Locations, index, 0, true, true, true);
                    var max = checkHandlePosition(scope_Locations, index, 100, true, true, true);

                    var now = positions[index];

                    // Formatted value for display
                    var text = options.ariaFormat.to(unencoded[index]);

                    // Map to slider range values
                    min = scope_Spectrum.fromStepping(min).toFixed(1);
                    max = scope_Spectrum.fromStepping(max).toFixed(1);
                    now = scope_Spectrum.fromStepping(now).toFixed(1);

                    handle.children[0].setAttribute("aria-valuemin", min);
                    handle.children[0].setAttribute("aria-valuemax", max);
                    handle.children[0].setAttribute("aria-valuenow", now);
                    handle.children[0].setAttribute("aria-valuetext", text);
                });
            });
        }

        function getGroup(mode, values, stepped) {
            // Use the range.
            if (mode === "range" || mode === "steps") {
                return scope_Spectrum.xVal;
            }

            if (mode === "count") {
                if (values < 2) {
                    throw new Error("noUiSlider (" + VERSION + "): 'values' (>= 2) required for mode 'count'.");
                }

                // Divide 0 - 100 in 'count' parts.
                var interval = values - 1;
                var spread = 100 / interval;

                values = [];

                // List these parts and have them handled as 'positions'.
                while (interval--) {
                    values[interval] = interval * spread;
                }

                values.push(100);

                mode = "positions";
            }

            if (mode === "positions") {
                // Map all percentages to on-range values.
                return values.map(function(value) {
                    return scope_Spectrum.fromStepping(stepped ? scope_Spectrum.getStep(value) : value);
                });
            }

            if (mode === "values") {
                // If the value must be stepped, it needs to be converted to a percentage first.
                if (stepped) {
                    return values.map(function(value) {
                        // Convert to percentage, apply step, return to value.
                        return scope_Spectrum.fromStepping(scope_Spectrum.getStep(scope_Spectrum.toStepping(value)));
                    });
                }

                // Otherwise, we can simply use the values.
                return values;
            }
        }

        function generateSpread(density, mode, group) {
            function safeIncrement(value, increment) {
                // Avoid floating point variance by dropping the smallest decimal places.
                return (value + increment).toFixed(7) / 1;
            }

            var indexes = {};
            var firstInRange = scope_Spectrum.xVal[0];
            var lastInRange = scope_Spectrum.xVal[scope_Spectrum.xVal.length - 1];
            var ignoreFirst = false;
            var ignoreLast = false;
            var prevPct = 0;

            // Create a copy of the group, sort it and filter away all duplicates.
            group = unique(
                group.slice().sort(function(a, b) {
                    return a - b;
                })
            );

            // Make sure the range starts with the first element.
            if (group[0] !== firstInRange) {
                group.unshift(firstInRange);
                ignoreFirst = true;
            }

            // Likewise for the last one.
            if (group[group.length - 1] !== lastInRange) {
                group.push(lastInRange);
                ignoreLast = true;
            }

            group.forEach(function(current, index) {
                // Get the current step and the lower + upper positions.
                var step;
                var i;
                var q;
                var low = current;
                var high = group[index + 1];
                var newPct;
                var pctDifference;
                var pctPos;
                var type;
                var steps;
                var realSteps;
                var stepSize;
                var isSteps = mode === "steps";

                // When using 'steps' mode, use the provided steps.
                // Otherwise, we'll step on to the next subrange.
                if (isSteps) {
                    step = scope_Spectrum.xNumSteps[index];
                }

                // Default to a 'full' step.
                if (!step) {
                    step = high - low;
                }

                // Low can be 0, so test for false. If high is undefined,
                // we are at the last subrange. Index 0 is already handled.
                if (low === false || high === undefined) {
                    return;
                }

                // Make sure step isn't 0, which would cause an infinite loop (#654)
                step = Math.max(step, 0.0000001);

                // Find all steps in the subrange.
                for (i = low; i <= high; i = safeIncrement(i, step)) {
                    // Get the percentage value for the current step,
                    // calculate the size for the subrange.
                    newPct = scope_Spectrum.toStepping(i);
                    pctDifference = newPct - prevPct;

                    steps = pctDifference / density;
                    realSteps = Math.round(steps);

                    // This ratio represents the amount of percentage-space a point indicates.
                    // For a density 1 the points/percentage = 1. For density 2, that percentage needs to be re-divided.
                    // Round the percentage offset to an even number, then divide by two
                    // to spread the offset on both sides of the range.
                    stepSize = pctDifference / realSteps;

                    // Divide all points evenly, adding the correct number to this subrange.
                    // Run up to <= so that 100% gets a point, event if ignoreLast is set.
                    for (q = 1; q <= realSteps; q += 1) {
                        // The ratio between the rounded value and the actual size might be ~1% off.
                        // Correct the percentage offset by the number of points
                        // per subrange. density = 1 will result in 100 points on the
                        // full range, 2 for 50, 4 for 25, etc.
                        pctPos = prevPct + q * stepSize;
                        indexes[pctPos.toFixed(5)] = [scope_Spectrum.fromStepping(pctPos), 0];
                    }

                    // Determine the point type.
                    type = group.indexOf(i) > -1 ? PIPS_LARGE_VALUE : isSteps ? PIPS_SMALL_VALUE : PIPS_NO_VALUE;

                    // Enforce the 'ignoreFirst' option by overwriting the type for 0.
                    if (!index && ignoreFirst) {
                        type = 0;
                    }

                    if (!(i === high && ignoreLast)) {
                        // Mark the 'type' of this point. 0 = plain, 1 = real value, 2 = step value.
                        indexes[newPct.toFixed(5)] = [i, type];
                    }

                    // Update the percentage count.
                    prevPct = newPct;
                }
            });

            return indexes;
        }

        function addMarking(spread, filterFunc, formatter) {
            var element = scope_Document.createElement("div");

            var valueSizeClasses = [];
            valueSizeClasses[PIPS_NO_VALUE] = options.cssClasses.valueNormal;
            valueSizeClasses[PIPS_LARGE_VALUE] = options.cssClasses.valueLarge;
            valueSizeClasses[PIPS_SMALL_VALUE] = options.cssClasses.valueSub;

            var markerSizeClasses = [];
            markerSizeClasses[PIPS_NO_VALUE] = options.cssClasses.markerNormal;
            markerSizeClasses[PIPS_LARGE_VALUE] = options.cssClasses.markerLarge;
            markerSizeClasses[PIPS_SMALL_VALUE] = options.cssClasses.markerSub;

            var valueOrientationClasses = [options.cssClasses.valueHorizontal, options.cssClasses.valueVertical];
            var markerOrientationClasses = [options.cssClasses.markerHorizontal, options.cssClasses.markerVertical];

            addClass(element, options.cssClasses.pips);
            addClass(element, options.ort === 0 ? options.cssClasses.pipsHorizontal : options.cssClasses.pipsVertical);

            function getClasses(type, source) {
                var a = source === options.cssClasses.value;
                var orientationClasses = a ? valueOrientationClasses : markerOrientationClasses;
                var sizeClasses = a ? valueSizeClasses : markerSizeClasses;

                return source + " " + orientationClasses[options.ort] + " " + sizeClasses[type];
            }

            function addSpread(offset, value, type) {
                // Apply the filter function, if it is set.
                type = filterFunc ? filterFunc(value, type) : type;

                if (type === PIPS_NONE) {
                    return;
                }

                // Add a marker for every point
                var node = addNodeTo(element, false);
                node.className = getClasses(type, options.cssClasses.marker);
                node.style[options.style] = offset + "%";

                // Values are only appended for points marked '1' or '2'.
                if (type > PIPS_NO_VALUE) {
                    node = addNodeTo(element, false);
                    node.className = getClasses(type, options.cssClasses.value);
                    node.setAttribute("data-value", value);
                    node.style[options.style] = offset + "%";
                    node.innerHTML = formatter.to(value);
                }
            }

            // Append all points.
            Object.keys(spread).forEach(function(offset) {
                addSpread(offset, spread[offset][0], spread[offset][1]);
            });

            return element;
        }

        function removePips() {
            if (scope_Pips) {
                removeElement(scope_Pips);
                scope_Pips = null;
            }
        }

        function pips(grid) {
            // Fix #669
            removePips();

            var mode = grid.mode;
            var density = grid.density || 1;
            var filter = grid.filter || false;
            var values = grid.values || false;
            var stepped = grid.stepped || false;
            var group = getGroup(mode, values, stepped);
            var spread = generateSpread(density, mode, group);
            var format = grid.format || {
                to: Math.round
            };

            scope_Pips = scope_Target.appendChild(addMarking(spread, filter, format));

            return scope_Pips;
        }

        // Shorthand for base dimensions.
        function baseSize() {
            var rect = scope_Base.getBoundingClientRect();
            var alt = "offset" + ["Width", "Height"][options.ort];
            return options.ort === 0 ? rect.width || scope_Base[alt] : rect.height || scope_Base[alt];
        }

        // Handler for attaching events trough a proxy.
        function attachEvent(events, element, callback, data) {
            // This function can be used to 'filter' events to the slider.
            // element is a node, not a nodeList

            var method = function(e) {
                e = fixEvent(e, data.pageOffset, data.target || element);

                // fixEvent returns false if this event has a different target
                // when handling (multi-) touch events;
                if (!e) {
                    return false;
                }

                // doNotReject is passed by all end events to make sure released touches
                // are not rejected, leaving the slider "stuck" to the cursor;
                if (scope_Target.hasAttribute("disabled") && !data.doNotReject) {
                    return false;
                }

                // Stop if an active 'tap' transition is taking place.
                if (hasClass(scope_Target, options.cssClasses.tap) && !data.doNotReject) {
                    return false;
                }

                // Ignore right or middle clicks on start #454
                if (events === actions.start && e.buttons !== undefined && e.buttons > 1) {
                    return false;
                }

                // Ignore right or middle clicks on start #454
                if (data.hover && e.buttons) {
                    return false;
                }

                // 'supportsPassive' is only true if a browser also supports touch-action: none in CSS.
                // iOS safari does not, so it doesn't get to benefit from passive scrolling. iOS does support
                // touch-action: manipulation, but that allows panning, which breaks
                // sliders after zooming/on non-responsive pages.
                // See: https://bugs.webkit.org/show_bug.cgi?id=133112
                if (!supportsPassive) {
                    e.preventDefault();
                }

                e.calcPoint = e.points[options.ort];

                // Call the event handler with the event [ and additional data ].
                callback(e, data);
            };

            var methods = [];

            // Bind a closure on the target for every event type.
            events.split(" ").forEach(function(eventName) {
                element.addEventListener(eventName, method, supportsPassive ? { passive: true } : false);
                methods.push([eventName, method]);
            });

            return methods;
        }

        // Provide a clean event with standardized offset values.
        function fixEvent(e, pageOffset, eventTarget) {
            // Filter the event to register the type, which can be
            // touch, mouse or pointer. Offset changes need to be
            // made on an event specific basis.
            var touch = e.type.indexOf("touch") === 0;
            var mouse = e.type.indexOf("mouse") === 0;
            var pointer = e.type.indexOf("pointer") === 0;

            var x;
            var y;

            // IE10 implemented pointer events with a prefix;
            if (e.type.indexOf("MSPointer") === 0) {
                pointer = true;
            }

            // The only thing one handle should be concerned about is the touches that originated on top of it.
            if (touch) {
                // Returns true if a touch originated on the target.
                var isTouchOnTarget = function(checkTouch) {
                    return checkTouch.target === eventTarget || eventTarget.contains(checkTouch.target);
                };

                // In the case of touchstart events, we need to make sure there is still no more than one
                // touch on the target so we look amongst all touches.
                if (e.type === "touchstart") {
                    var targetTouches = Array.prototype.filter.call(e.touches, isTouchOnTarget);

                    // Do not support more than one touch per handle.
                    if (targetTouches.length > 1) {
                        return false;
                    }

                    x = targetTouches[0].pageX;
                    y = targetTouches[0].pageY;
                } else {
                    // In the other cases, find on changedTouches is enough.
                    var targetTouch = Array.prototype.find.call(e.changedTouches, isTouchOnTarget);

                    // Cancel if the target touch has not moved.
                    if (!targetTouch) {
                        return false;
                    }

                    x = targetTouch.pageX;
                    y = targetTouch.pageY;
                }
            }

            pageOffset = pageOffset || getPageOffset(scope_Document);

            if (mouse || pointer) {
                x = e.clientX + pageOffset.x;
                y = e.clientY + pageOffset.y;
            }

            e.pageOffset = pageOffset;
            e.points = [x, y];
            e.cursor = mouse || pointer; // Fix #435

            return e;
        }

        // Translate a coordinate in the document to a percentage on the slider
        function calcPointToPercentage(calcPoint) {
            var location = calcPoint - offset(scope_Base, options.ort);
            var proposal = (location * 100) / baseSize();

            // Clamp proposal between 0% and 100%
            // Out-of-bound coordinates may occur when .noUi-base pseudo-elements
            // are used (e.g. contained handles feature)
            proposal = limit(proposal);

            return options.dir ? 100 - proposal : proposal;
        }

        // Find handle closest to a certain percentage on the slider
        function getClosestHandle(proposal) {
            var closest = 100;
            var handleNumber = false;

            scope_Handles.forEach(function(handle, index) {
                // Disabled handles are ignored
                if (isHandleDisabled(index)) {
                    return;
                }

                var pos = Math.abs(scope_Locations[index] - proposal);

                if (pos < closest || (pos === 100 && closest === 100)) {
                    handleNumber = index;
                    closest = pos;
                }
            });

            return handleNumber;
        }

        // Fire 'end' when a mouse or pen leaves the document.
        function documentLeave(event, data) {
            if (event.type === "mouseout" && event.target.nodeName === "HTML" && event.relatedTarget === null) {
                eventEnd(event, data);
            }
        }

        // Handle movement on document for handle and range drag.
        function eventMove(event, data) {
            // Fix #498
            // Check value of .buttons in 'start' to work around a bug in IE10 mobile (data.buttonsProperty).
            // https://connect.microsoft.com/IE/feedback/details/927005/mobile-ie10-windows-phone-buttons-property-of-pointermove-event-always-zero
            // IE9 has .buttons and .which zero on mousemove.
            // Firefox breaks the spec MDN defines.
            if (navigator.appVersion.indexOf("MSIE 9") === -1 && event.buttons === 0 && data.buttonsProperty !== 0) {
                return eventEnd(event, data);
            }

            // Check if we are moving up or down
            var movement = (options.dir ? -1 : 1) * (event.calcPoint - data.startCalcPoint);

            // Convert the movement into a percentage of the slider width/height
            var proposal = (movement * 100) / data.baseSize;

            moveHandles(movement > 0, proposal, data.locations, data.handleNumbers);
        }

        // Unbind move events on document, call callbacks.
        function eventEnd(event, data) {
            // The handle is no longer active, so remove the class.
            if (data.handle) {
                removeClass(data.handle, options.cssClasses.active);
                scope_ActiveHandlesCount -= 1;
            }

            // Unbind the move and end events, which are added on 'start'.
            data.listeners.forEach(function(c) {
                scope_DocumentElement.removeEventListener(c[0], c[1]);
            });

            if (scope_ActiveHandlesCount === 0) {
                // Remove dragging class.
                removeClass(scope_Target, options.cssClasses.drag);
                setZindex();

                // Remove cursor styles and text-selection events bound to the body.
                if (event.cursor) {
                    scope_Body.style.cursor = "";
                    scope_Body.removeEventListener("selectstart", preventDefault);
                }
            }

            data.handleNumbers.forEach(function(handleNumber) {
                fireEvent("change", handleNumber);
                fireEvent("set", handleNumber);
                fireEvent("end", handleNumber);
            });
        }

        // Bind move events on document.
        function eventStart(event, data) {
            // Ignore event if any handle is disabled
            if (data.handleNumbers.some(isHandleDisabled)) {
                return false;
            }

            var handle;

            if (data.handleNumbers.length === 1) {
                var handleOrigin = scope_Handles[data.handleNumbers[0]];

                handle = handleOrigin.children[0];
                scope_ActiveHandlesCount += 1;

                // Mark the handle as 'active' so it can be styled.
                addClass(handle, options.cssClasses.active);
            }

            // A drag should never propagate up to the 'tap' event.
            event.stopPropagation();

            // Record the event listeners.
            var listeners = [];

            // Attach the move and end events.
            var moveEvent = attachEvent(actions.move, scope_DocumentElement, eventMove, {
                // The event target has changed so we need to propagate the original one so that we keep
                // relying on it to extract target touches.
                target: event.target,
                handle: handle,
                listeners: listeners,
                startCalcPoint: event.calcPoint,
                baseSize: baseSize(),
                pageOffset: event.pageOffset,
                handleNumbers: data.handleNumbers,
                buttonsProperty: event.buttons,
                locations: scope_Locations.slice()
            });

            var endEvent = attachEvent(actions.end, scope_DocumentElement, eventEnd, {
                target: event.target,
                handle: handle,
                listeners: listeners,
                doNotReject: true,
                handleNumbers: data.handleNumbers
            });

            var outEvent = attachEvent("mouseout", scope_DocumentElement, documentLeave, {
                target: event.target,
                handle: handle,
                listeners: listeners,
                doNotReject: true,
                handleNumbers: data.handleNumbers
            });

            // We want to make sure we pushed the listeners in the listener list rather than creating
            // a new one as it has already been passed to the event handlers.
            listeners.push.apply(listeners, moveEvent.concat(endEvent, outEvent));

            // Text selection isn't an issue on touch devices,
            // so adding cursor styles can be skipped.
            if (event.cursor) {
                // Prevent the 'I' cursor and extend the range-drag cursor.
                scope_Body.style.cursor = getComputedStyle(event.target).cursor;

                // Mark the target with a dragging state.
                if (scope_Handles.length > 1) {
                    addClass(scope_Target, options.cssClasses.drag);
                }

                // Prevent text selection when dragging the handles.
                // In noUiSlider <= 9.2.0, this was handled by calling preventDefault on mouse/touch start/move,
                // which is scroll blocking. The selectstart event is supported by FireFox starting from version 52,
                // meaning the only holdout is iOS Safari. This doesn't matter: text selection isn't triggered there.
                // The 'cursor' flag is false.
                // See: http://caniuse.com/#search=selectstart
                scope_Body.addEventListener("selectstart", preventDefault, false);
            }

            data.handleNumbers.forEach(function(handleNumber) {
                fireEvent("start", handleNumber);
            });
        }

        // Move closest handle to tapped location.
        function eventTap(event) {
            // The tap event shouldn't propagate up
            event.stopPropagation();

            var proposal = calcPointToPercentage(event.calcPoint);
            var handleNumber = getClosestHandle(proposal);

            // Tackle the case that all handles are 'disabled'.
            if (handleNumber === false) {
                return false;
            }

            // Flag the slider as it is now in a transitional state.
            // Transition takes a configurable amount of ms (default 300). Re-enable the slider after that.
            if (!options.events.snap) {
                addClassFor(scope_Target, options.cssClasses.tap, options.animationDuration);
            }

            setHandle(handleNumber, proposal, true, true);

            setZindex();

            fireEvent("slide", handleNumber, true);
            fireEvent("update", handleNumber, true);
            fireEvent("change", handleNumber, true);
            fireEvent("set", handleNumber, true);

            if (options.events.snap) {
                eventStart(event, { handleNumbers: [handleNumber] });
            }
        }

        // Fires a 'hover' event for a hovered mouse/pen position.
        function eventHover(event) {
            var proposal = calcPointToPercentage(event.calcPoint);

            var to = scope_Spectrum.getStep(proposal);
            var value = scope_Spectrum.fromStepping(to);

            Object.keys(scope_Events).forEach(function(targetEvent) {
                if ("hover" === targetEvent.split(".")[0]) {
                    scope_Events[targetEvent].forEach(function(callback) {
                        callback.call(scope_Self, value);
                    });
                }
            });
        }

        // Handles keydown on focused handles
        // Don't move the document when pressing arrow keys on focused handles
        function eventKeydown(event, handleNumber) {
            if (isHandleDisabled(handleNumber)) {
                return false;
            }

            var horizontalKeys = ["Left", "Right"];
            var verticalKeys = ["Down", "Up"];

            if (options.dir && !options.ort) {
                // On an right-to-left slider, the left and right keys act inverted
                horizontalKeys.reverse();
            } else if (options.ort && !options.dir) {
                // On a top-to-bottom slider, the up and down keys act inverted
                verticalKeys.reverse();
            }

            // Strip "Arrow" for IE compatibility. https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/key
            var key = event.key.replace("Arrow", "");
            var isDown = key === verticalKeys[0] || key === horizontalKeys[0];
            var isUp = key === verticalKeys[1] || key === horizontalKeys[1];

            if (!isDown && !isUp) {
                return true;
            }

            event.preventDefault();

            var direction = isDown ? 0 : 1;
            var steps = getNextStepsForHandle(handleNumber);
            var step = steps[direction];

            // At the edge of a slider, do nothing
            if (step === null) {
                return false;
            }

            // No step set, use the default of 10% of the sub-range
            if (step === false) {
                step = scope_Spectrum.getDefaultStep(scope_Locations[handleNumber], isDown, 10);
            }

            // Decrement for down steps
            step = (isDown ? -1 : 1) * step;

            scope_ShouldAnimate = false;

            valueSetHandle(handleNumber, scope_Values[handleNumber] + step, true);

            scope_ShouldAnimate = true;

            return false;
        }

        // Attach events to several slider parts.
        function bindSliderEvents(behaviour) {
            // Attach the standard drag event to the handles.
            if (!behaviour.fixed) {
                scope_Handles.forEach(function(handle, index) {
                    // These events are only bound to the visual handle
                    // element, not the 'real' origin element.
                    attachEvent(actions.start, handle.children[0], eventStart, {
                        handleNumbers: [index]
                    });
                });
            }

            // Attach the tap event to the slider base.
            if (behaviour.tap) {
                attachEvent(actions.start, scope_Base, eventTap, {});
            }

            // Fire hover events
            if (behaviour.hover) {
                attachEvent(actions.move, scope_Base, eventHover, {
                    hover: true
                });
            }

            // Make the range draggable.
            if (behaviour.drag) {
                scope_Connects.forEach(function(connect, index) {
                    if (connect === false || index === 0 || index === scope_Connects.length - 1) {
                        return;
                    }

                    var handleBefore = scope_Handles[index - 1];
                    var handleAfter = scope_Handles[index];
                    var eventHolders = [connect];

                    addClass(connect, options.cssClasses.draggable);

                    // When the range is fixed, the entire range can
                    // be dragged by the handles. The handle in the first
                    // origin will propagate the start event upward,
                    // but it needs to be bound manually on the other.
                    if (behaviour.fixed) {
                        eventHolders.push(handleBefore.children[0]);
                        eventHolders.push(handleAfter.children[0]);
                    }

                    eventHolders.forEach(function(eventHolder) {
                        attachEvent(actions.start, eventHolder, eventStart, {
                            handles: [handleBefore, handleAfter],
                            handleNumbers: [index - 1, index]
                        });
                    });
                });
            }
        }

        // Attach an event to this slider, possibly including a namespace
        function bindEvent(namespacedEvent, callback) {
            scope_Events[namespacedEvent] = scope_Events[namespacedEvent] || [];
            scope_Events[namespacedEvent].push(callback);

            // If the event bound is 'update,' fire it immediately for all handles.
            if (namespacedEvent.split(".")[0] === "update") {
                scope_Handles.forEach(function(a, index) {
                    fireEvent("update", index);
                });
            }
        }

        // Undo attachment of event
        function removeEvent(namespacedEvent) {
            var event = namespacedEvent && namespacedEvent.split(".")[0];
            var namespace = event && namespacedEvent.substring(event.length);

            Object.keys(scope_Events).forEach(function(bind) {
                var tEvent = bind.split(".")[0];
                var tNamespace = bind.substring(tEvent.length);

                if ((!event || event === tEvent) && (!namespace || namespace === tNamespace)) {
                    delete scope_Events[bind];
                }
            });
        }

        // External event handling
        function fireEvent(eventName, handleNumber, tap) {
            Object.keys(scope_Events).forEach(function(targetEvent) {
                var eventType = targetEvent.split(".")[0];

                if (eventName === eventType) {
                    scope_Events[targetEvent].forEach(function(callback) {
                        callback.call(
                            // Use the slider public API as the scope ('this')
                            scope_Self,
                            // Return values as array, so arg_1[arg_2] is always valid.
                            scope_Values.map(options.format.to),
                            // Handle index, 0 or 1
                            handleNumber,
                            // Un-formatted slider values
                            scope_Values.slice(),
                            // Event is fired by tap, true or false
                            tap || false,
                            // Left offset of the handle, in relation to the slider
                            scope_Locations.slice()
                        );
                    });
                }
            });
        }

        // Split out the handle positioning logic so the Move event can use it, too
        function checkHandlePosition(reference, handleNumber, to, lookBackward, lookForward, getValue) {
            // For sliders with multiple handles, limit movement to the other handle.
            // Apply the margin option by adding it to the handle positions.
            if (scope_Handles.length > 1 && !options.events.unconstrained) {
                if (lookBackward && handleNumber > 0) {
                    to = Math.max(to, reference[handleNumber - 1] + options.margin);
                }

                if (lookForward && handleNumber < scope_Handles.length - 1) {
                    to = Math.min(to, reference[handleNumber + 1] - options.margin);
                }
            }

            // The limit option has the opposite effect, limiting handles to a
            // maximum distance from another. Limit must be > 0, as otherwise
            // handles would be unmovable.
            if (scope_Handles.length > 1 && options.limit) {
                if (lookBackward && handleNumber > 0) {
                    to = Math.min(to, reference[handleNumber - 1] + options.limit);
                }

                if (lookForward && handleNumber < scope_Handles.length - 1) {
                    to = Math.max(to, reference[handleNumber + 1] - options.limit);
                }
            }

            // The padding option keeps the handles a certain distance from the
            // edges of the slider. Padding must be > 0.
            if (options.padding) {
                if (handleNumber === 0) {
                    to = Math.max(to, options.padding[0]);
                }

                if (handleNumber === scope_Handles.length - 1) {
                    to = Math.min(to, 100 - options.padding[1]);
                }
            }

            to = scope_Spectrum.getStep(to);

            // Limit percentage to the 0 - 100 range
            to = limit(to);

            // Return false if handle can't move
            if (to === reference[handleNumber] && !getValue) {
                return false;
            }

            return to;
        }

        // Uses slider orientation to create CSS rules. a = base value;
        function inRuleOrder(v, a) {
            var o = options.ort;
            return (o ? a : v) + ", " + (o ? v : a);
        }

        // Moves handle(s) by a percentage
        // (bool, % to move, [% where handle started, ...], [index in scope_Handles, ...])
        function moveHandles(upward, proposal, locations, handleNumbers) {
            var proposals = locations.slice();

            var b = [!upward, upward];
            var f = [upward, !upward];

            // Copy handleNumbers so we don't change the dataset
            handleNumbers = handleNumbers.slice();

            // Check to see which handle is 'leading'.
            // If that one can't move the second can't either.
            if (upward) {
                handleNumbers.reverse();
            }

            // Step 1: get the maximum percentage that any of the handles can move
            if (handleNumbers.length > 1) {
                handleNumbers.forEach(function(handleNumber, o) {
                    var to = checkHandlePosition(
                        proposals,
                        handleNumber,
                        proposals[handleNumber] + proposal,
                        b[o],
                        f[o],
                        false
                    );

                    // Stop if one of the handles can't move.
                    if (to === false) {
                        proposal = 0;
                    } else {
                        proposal = to - proposals[handleNumber];
                        proposals[handleNumber] = to;
                    }
                });
            }

            // If using one handle, check backward AND forward
            else {
                b = f = [true];
            }

            var state = false;

            // Step 2: Try to set the handles with the found percentage
            handleNumbers.forEach(function(handleNumber, o) {
                state = setHandle(handleNumber, locations[handleNumber] + proposal, b[o], f[o]) || state;
            });

            // Step 3: If a handle moved, fire events
            if (state) {
                handleNumbers.forEach(function(handleNumber) {
                    fireEvent("update", handleNumber);
                    fireEvent("slide", handleNumber);
                });
            }
        }

        // Takes a base value and an offset. This offset is used for the connect bar size.
        // In the initial design for this feature, the origin element was 1% wide.
        // Unfortunately, a rounding bug in Chrome makes it impossible to implement this feature
        // in this manner: https://bugs.chromium.org/p/chromium/issues/detail?id=798223
        function transformDirection(a, b) {
            return options.dir ? 100 - a - b : a;
        }

        // Updates scope_Locations and scope_Values, updates visual state
        function updateHandlePosition(handleNumber, to) {
            // Update locations.
            scope_Locations[handleNumber] = to;

            // Convert the value to the slider stepping/range.
            scope_Values[handleNumber] = scope_Spectrum.fromStepping(to);

            var rule = "translate(" + inRuleOrder(transformDirection(to, 0) - scope_DirOffset + "%", "0") + ")";
            scope_Handles[handleNumber].style[options.transformRule] = rule;

            updateConnect(handleNumber);
            updateConnect(handleNumber + 1);
        }

        // Handles before the slider middle are stacked later = higher,
        // Handles after the middle later is lower
        // [[7] [8] .......... | .......... [5] [4]
        function setZindex() {
            scope_HandleNumbers.forEach(function(handleNumber) {
                var dir = scope_Locations[handleNumber] > 50 ? -1 : 1;
                var zIndex = 3 + (scope_Handles.length + dir * handleNumber);
                scope_Handles[handleNumber].style.zIndex = zIndex;
            });
        }

        // Test suggested values and apply margin, step.
        function setHandle(handleNumber, to, lookBackward, lookForward) {
            to = checkHandlePosition(scope_Locations, handleNumber, to, lookBackward, lookForward, false);

            if (to === false) {
                return false;
            }

            updateHandlePosition(handleNumber, to);

            return true;
        }

        // Updates style attribute for connect nodes
        function updateConnect(index) {
            // Skip connects set to false
            if (!scope_Connects[index]) {
                return;
            }

            var l = 0;
            var h = 100;

            if (index !== 0) {
                l = scope_Locations[index - 1];
            }

            if (index !== scope_Connects.length - 1) {
                h = scope_Locations[index];
            }

            // We use two rules:
            // 'translate' to change the left/top offset;
            // 'scale' to change the width of the element;
            // As the element has a width of 100%, a translation of 100% is equal to 100% of the parent (.noUi-base)
            var connectWidth = h - l;
            var translateRule = "translate(" + inRuleOrder(transformDirection(l, connectWidth) + "%", "0") + ")";
            var scaleRule = "scale(" + inRuleOrder(connectWidth / 100, "1") + ")";

            scope_Connects[index].style[options.transformRule] = translateRule + " " + scaleRule;
        }

        // Parses value passed to .set method. Returns current value if not parse-able.
        function resolveToValue(to, handleNumber) {
            // Setting with null indicates an 'ignore'.
            // Inputting 'false' is invalid.
            if (to === null || to === false || to === undefined) {
                return scope_Locations[handleNumber];
            }

            // If a formatted number was passed, attempt to decode it.
            if (typeof to === "number") {
                to = String(to);
            }

            to = options.format.from(to);
            to = scope_Spectrum.toStepping(to);

            // If parsing the number failed, use the current value.
            if (to === false || isNaN(to)) {
                return scope_Locations[handleNumber];
            }

            return to;
        }

        // Set the slider value.
        function valueSet(input, fireSetEvent) {
            var values = asArray(input);
            var isInit = scope_Locations[0] === undefined;

            // Event fires by default
            fireSetEvent = fireSetEvent === undefined ? true : !!fireSetEvent;

            // Animation is optional.
            // Make sure the initial values were set before using animated placement.
            if (options.animate && !isInit && scope_ShouldAnimate) {
                addClassFor(scope_Target, options.cssClasses.tap, options.animationDuration);
            }

            // First pass, without lookAhead but with lookBackward. Values are set from left to right.
            scope_HandleNumbers.forEach(function(handleNumber) {
                setHandle(handleNumber, resolveToValue(values[handleNumber], handleNumber), true, false);
            });

            // Second pass. Now that all base values are set, apply constraints
            scope_HandleNumbers.forEach(function(handleNumber) {
                setHandle(handleNumber, scope_Locations[handleNumber], true, true);
            });

            setZindex();

            scope_HandleNumbers.forEach(function(handleNumber) {
                fireEvent("update", handleNumber);

                // Fire the event only for handles that received a new value, as per #579
                if (values[handleNumber] !== null && fireSetEvent) {
                    fireEvent("set", handleNumber);
                }
            });
        }

        // Reset slider to initial values
        function valueReset(fireSetEvent) {
            valueSet(options.start, fireSetEvent);
        }

        // Set value for a single handle
        function valueSetHandle(handleNumber, value, fireSetEvent) {
            var values = [];

            // Ensure numeric input
            handleNumber = Number(handleNumber);

            if (!(handleNumber >= 0 && handleNumber < scope_HandleNumbers.length)) {
                throw new Error("noUiSlider (" + VERSION + "): invalid handle number, got: " + handleNumber);
            }

            for (var i = 0; i < scope_HandleNumbers.length; i++) {
                values[i] = null;
            }

            values[handleNumber] = value;

            valueSet(values, fireSetEvent);
        }

        // Get the slider value.
        function valueGet() {
            var values = scope_Values.map(options.format.to);

            // If only one handle is used, return a single value.
            if (values.length === 1) {
                return values[0];
            }

            return values;
        }

        // Removes classes from the root and empties it.
        function destroy() {
            for (var key in options.cssClasses) {
                if (!options.cssClasses.hasOwnProperty(key)) {
                    continue;
                }
                removeClass(scope_Target, options.cssClasses[key]);
            }

            while (scope_Target.firstChild) {
                scope_Target.removeChild(scope_Target.firstChild);
            }

            delete scope_Target.noUiSlider;
        }

        function getNextStepsForHandle(handleNumber) {
            var location = scope_Locations[handleNumber];
            var nearbySteps = scope_Spectrum.getNearbySteps(location);
            var value = scope_Values[handleNumber];
            var increment = nearbySteps.thisStep.step;
            var decrement = null;

            // If the next value in this step moves into the next step,
            // the increment is the start of the next step - the current value
            if (increment !== false) {
                if (value + increment > nearbySteps.stepAfter.startValue) {
                    increment = nearbySteps.stepAfter.startValue - value;
                }
            }

            // If the value is beyond the starting point
            if (value > nearbySteps.thisStep.startValue) {
                decrement = nearbySteps.thisStep.step;
            } else if (nearbySteps.stepBefore.step === false) {
                decrement = false;
            }

            // If a handle is at the start of a step, it always steps back into the previous step first
            else {
                decrement = value - nearbySteps.stepBefore.highestStep;
            }

            // Now, if at the slider edges, there is no in/decrement
            if (location === 100) {
                increment = null;
            } else if (location === 0) {
                decrement = null;
            }

            // As per #391, the comparison for the decrement step can have some rounding issues.
            var stepDecimals = scope_Spectrum.countStepDecimals();

            // Round per #391
            if (increment !== null && increment !== false) {
                increment = Number(increment.toFixed(stepDecimals));
            }

            if (decrement !== null && decrement !== false) {
                decrement = Number(decrement.toFixed(stepDecimals));
            }

            return [decrement, increment];
        }

        // Get the current step size for the slider.
        function getNextSteps() {
            return scope_HandleNumbers.map(getNextStepsForHandle);
        }

        // Updateable: margin, limit, padding, step, range, animate, snap
        function updateOptions(optionsToUpdate, fireSetEvent) {
            // Spectrum is created using the range, snap, direction and step options.
            // 'snap' and 'step' can be updated.
            // If 'snap' and 'step' are not passed, they should remain unchanged.
            var v = valueGet();

            var updateAble = ["margin", "limit", "padding", "range", "animate", "snap", "step", "format"];

            // Only change options that we're actually passed to update.
            updateAble.forEach(function(name) {
                if (optionsToUpdate[name] !== undefined) {
                    originalOptions[name] = optionsToUpdate[name];
                }
            });

            var newOptions = testOptions(originalOptions);

            // Load new options into the slider state
            updateAble.forEach(function(name) {
                if (optionsToUpdate[name] !== undefined) {
                    options[name] = newOptions[name];
                }
            });

            scope_Spectrum = newOptions.spectrum;

            // Limit, margin and padding depend on the spectrum but are stored outside of it. (#677)
            options.margin = newOptions.margin;
            options.limit = newOptions.limit;
            options.padding = newOptions.padding;

            // Update pips, removes existing.
            if (options.pips) {
                pips(options.pips);
            }

            // Invalidate the current positioning so valueSet forces an update.
            scope_Locations = [];
            valueSet(optionsToUpdate.start || v, fireSetEvent);
        }

        // Initialization steps
        function setupSlider() {
            // Create the base element, initialize HTML and set classes.
            // Add handles and connect elements.
            scope_Base = addSlider(scope_Target);

            addElements(options.connect, scope_Base);

            // Attach user events.
            bindSliderEvents(options.events);

            // Use the public value method to set the start values.
            valueSet(options.start);

            if (options.pips) {
                pips(options.pips);
            }

            if (options.tooltips) {
                tooltips();
            }

            aria();
        }

        setupSlider();

        // noinspection JSUnusedGlobalSymbols
        scope_Self = {
            destroy: destroy,
            steps: getNextSteps,
            on: bindEvent,
            off: removeEvent,
            get: valueGet,
            set: valueSet,
            setHandle: valueSetHandle,
            reset: valueReset,
            // Exposed for unit testing, don't use this in your application.
            __moveHandles: function(a, b, c) {
                moveHandles(a, b, scope_Locations, c);
            },
            options: originalOptions, // Issue #600, #678
            updateOptions: updateOptions,
            target: scope_Target, // Issue #597
            removePips: removePips,
            pips: pips // Issue #594
        };

        return scope_Self;
    }

    // Run the standard initializer
    function initialize(target, originalOptions) {
        if (!target || !target.nodeName) {
            throw new Error("noUiSlider (" + VERSION + "): create requires a single element, got: " + target);
        }

        // Throw an error if the slider was already initialized.
        if (target.noUiSlider) {
            throw new Error("noUiSlider (" + VERSION + "): Slider was already initialized.");
        }

        // Test the options and create the slider environment;
        var options = testOptions(originalOptions, target);
        var api = scope(target, options, originalOptions);

        target.noUiSlider = api;

        return api;
    }

    // Use an object instead of a function for future expandability;
    return {
        // Exposed for unit testing, don't use this in your application.
        __spectrum: Spectrum,
        version: VERSION,
        create: initialize
    };
});
assets/lib/share-link/share-link.js000064400000010240151327220410013236 0ustar00/**
 * By Elementor Team
 */
( function( $ ) {
	window.ShareLink = function( element, userSettings ) {
		var $element,
			settings = {};

		var getNetworkNameFromClass = function( className ) {
			var classNamePrefix = className.substr( 0, settings.classPrefixLength );

			return classNamePrefix === settings.classPrefix ? className.substr( settings.classPrefixLength ) : null;
		};

		var bindShareClick = function( networkName ) {
			$element.on( 'click', function() {
				openShareLink( networkName );
			} );
		};

		var openShareLink = function( networkName ) {
			var shareWindowParams = '';

			if ( settings.width && settings.height ) {
				var shareWindowLeft = ( screen.width / 2 ) - ( settings.width / 2 ),
					shareWindowTop = ( screen.height / 2 ) - ( settings.height / 2 );

				shareWindowParams = 'toolbar=0,status=0,width=' + settings.width + ',height=' + settings.height + ',top=' + shareWindowTop + ',left=' + shareWindowLeft;
			}

			var link = ShareLink.getNetworkLink( networkName, settings ),
				isPlainLink = /^https?:\/\//.test( link ),
				windowName = isPlainLink ? '' : '_self';

			open( link, windowName, shareWindowParams );
		};

		var run = function() {
			$.each( element.classList, function() {
				var networkName = getNetworkNameFromClass( this );

				if ( networkName ) {
					bindShareClick( networkName );

					return false;
				}
			} );
		};

		var initSettings = function() {
			$.extend( settings, ShareLink.defaultSettings, userSettings );

			[ 'title', 'text' ].forEach( function( propertyName ) {
				settings[ propertyName ] = settings[ propertyName ].replace( '#', '' );
			} );

			settings.classPrefixLength = settings.classPrefix.length;
		};

		var initElements = function() {
			$element = $( element );
		};

		var init = function() {
			initSettings();

			initElements();

			run();
		};

		init();
	};

	ShareLink.networkTemplates = {
		twitter: 'https://twitter.com/intent/tweet?text={text}\x20{url}',
		pinterest: 'https://www.pinterest.com/pin/create/button/?url={url}&media={image}',
		facebook: 'https://www.facebook.com/sharer.php?u={url}',
		vk: 'https://vkontakte.ru/share.php?url={url}&title={title}&description={text}&image={image}',
		linkedin: 'https://www.linkedin.com/shareArticle?mini=true&url={url}&title={title}&summary={text}&source={url}',
		odnoklassniki: 'https://connect.ok.ru/offer?url={url}&title={title}&imageUrl={image}',
		tumblr: 'https://tumblr.com/share/link?url={url}',
		google: 'https://plus.google.com/share?url={url}',
		digg: 'https://digg.com/submit?url={url}',
		reddit: 'https://reddit.com/submit?url={url}&title={title}',
		stumbleupon: 'https://www.stumbleupon.com/submit?url={url}',
		pocket: 'https://getpocket.com/edit?url={url}',
		whatsapp: 'https://api.whatsapp.com/send?text=*{title}*%0A{text}%0A{url}',
		xing: 'https://www.xing.com/app/user?op=share&url={url}',
		print: 'javascript:print()',
		email: 'mailto:?subject={title}&body={text}\n{url}',
		telegram: 'https://telegram.me/share/url?url={url}&text={text}',
		skype: 'https://web.skype.com/share?url={url}',
	};

	ShareLink.defaultSettings = {
		title: '',
		text: '',
		image: '',
		url: location.href,
		classPrefix: 's_',
		width: 640,
		height: 480,
	};

	ShareLink.getNetworkLink = function( networkName, settings ) {
		var link = ShareLink.networkTemplates[ networkName ].replace( /{([^}]+)}/g, function( fullMatch, pureMatch ) {
			return settings[ pureMatch ] || '';
		} );

		if ( 'email' === networkName ) {
			if ( -1 < settings['title'].indexOf( '&' ) ||  -1 < settings['text'].indexOf( '&' ) ) {
				var emailSafeSettings = {
					text: settings['text'].replace( new RegExp('&', 'g'), '%26' ),
					title: settings['title'].replace( new RegExp('&', 'g'), '%26' ),
					url: settings['url'],
				};

				link = ShareLink.networkTemplates[ networkName ].replace( /{([^}]+)}/g, function( fullMatch, pureMatch ) {
					return emailSafeSettings[ pureMatch ];
				} );
			}

			if ( link.indexOf( '?subject=&body') ) {
				link = link.replace( 'subject=&', '' );
			}

			return link;
		}

		return link;
	};

	$.fn.shareLink = function( settings ) {
		return this.each( function() {
			$( this ).data( 'shareLink', new ShareLink( this, settings ) );
		} );
	};
} )( jQuery );
assets/lib/share-link/share-link.min.js000064400000005022151327220410014022 0ustar00(function(a){window.ShareLink=function(b,c){var d,e={},f=function(a){var b=a.substr(0,e.classPrefixLength);return b===e.classPrefix?a.substr(e.classPrefixLength):null},g=function(a){d.on("click",function(){h(a)})},h=function(a){var b="";if(e.width&&e.height){var c=screen.width/2-e.width/2,d=screen.height/2-e.height/2;b="toolbar=0,status=0,width="+e.width+",height="+e.height+",top="+d+",left="+c}var f=ShareLink.getNetworkLink(a,e),g=/^https?:\/\//.test(f),h=g?"":"_self";open(f,h,b)},i=function(){a.each(b.classList,function(){var a=f(this);if(a)return g(a),!1})},j=function(){a.extend(e,ShareLink.defaultSettings,c),["title","text"].forEach(function(a){e[a]=e[a].replace("#","")}),e.classPrefixLength=e.classPrefix.length},k=function(){d=a(b)};(function(){j(),k(),i()})()},ShareLink.networkTemplates={twitter:"https://twitter.com/intent/tweet?text={text}\x20{url}",pinterest:"https://www.pinterest.com/pin/create/button/?url={url}&media={image}",facebook:"https://www.facebook.com/sharer.php?u={url}",vk:"https://vkontakte.ru/share.php?url={url}&title={title}&description={text}&image={image}",linkedin:"https://www.linkedin.com/shareArticle?mini=true&url={url}&title={title}&summary={text}&source={url}",odnoklassniki:"https://connect.ok.ru/offer?url={url}&title={title}&imageUrl={image}",tumblr:"https://tumblr.com/share/link?url={url}",google:"https://plus.google.com/share?url={url}",digg:"https://digg.com/submit?url={url}",reddit:"https://reddit.com/submit?url={url}&title={title}",stumbleupon:"https://www.stumbleupon.com/submit?url={url}",pocket:"https://getpocket.com/edit?url={url}",whatsapp:"https://api.whatsapp.com/send?text=*{title}*\n{text}\n{url}",xing:"https://www.xing.com/app/user?op=share&url={url}",print:"javascript:print()",email:"mailto:?subject={title}&body={text}\n{url}",telegram:"https://telegram.me/share/url?url={url}&text={text}",skype:"https://web.skype.com/share?url={url}"},ShareLink.defaultSettings={title:"",text:"",image:"",url:location.href,classPrefix:"s_",width:640,height:480},ShareLink.getNetworkLink=function(a,b){var c=ShareLink.networkTemplates[a].replace(/{([^}]+)}/g,function(a,c){return b[c]||""});if("email"===a){if(-1<b.title.indexOf("&")||-1<b.text.indexOf("&")){var d={text:b.text.replace(/&/g,"%26"),title:b.title.replace(/&/g,"%26"),url:b.url};c=ShareLink.networkTemplates[a].replace(/{([^}]+)}/g,function(a,b){return d[b]})}return c.indexOf("?subject=&body")&&(c=c.replace("subject=&","")),c}return c},a.fn.shareLink=function(b){return this.each(function(){a(this).data("shareLink",new ShareLink(this,b))})}})(jQuery);
assets/lib/jquery-hover-intent/jquery-hover-intent.js000064400000004017151327220410017047 0ustar00/*
 * Based on tristen hoverintent plugin - https://github.com/tristen/hoverintent
 */

(function( $ ) {
	'use strict';

	var hoverIntent = function( el, onOver, onOut ) {
		var x, y, pX, pY,
			h = {},
			state = 0,
			timer = 0;

		var options = {
			sensitivity: 7,
			interval: 100,
			timeout: 0
		};

		function delay( el, e ) {
			if ( timer )
				timer = clearTimeout( timer );

			state = 0;

			return onOut ? onOut.call( el, e ) : null;
		}

		function tracker( e ) {
			x = e.clientX;
			y = e.clientY;
		}

		function compare( el, e ) {
			if ( timer )
				timer = clearTimeout( timer );

			if ( (Math.abs( pX - x ) + Math.abs( pY - y )) < options.sensitivity ) {
				state = 1;

				return onOver ? onOver.call( el, e ) : null;
			} else {
				pX = x;
				pY = y;

				timer = setTimeout( function() {
					compare( el, e );
				}, options.interval );
			}
		}

		// Public methods
		h.options = function( opt ) {
			options = $.extend( {}, options, opt );

			return h;
		};

		function dispatchOver( e ) {
			if ( timer )
				timer = clearTimeout( timer );

			el.removeEventListener( 'mousemove', tracker );

			if ( state !== 1 ) {
				pX = e.clientX;
				pY = e.clientY;

				el.addEventListener( 'mousemove', tracker );

				timer = setTimeout( function() {
					compare( el, e );
				}, options.interval );
			}

			return this;
		}

		function dispatchOut( e ) {
			if ( timer )
				timer = clearTimeout( timer );

			el.removeEventListener( 'mousemove', tracker );

			if ( state === 1 ) {
				timer = setTimeout( function() {
					delay( el, e );
				}, options.timeout );
			}

			return this;
		}

		h.remove = function() {
			el.removeEventListener( 'mouseover', dispatchOver );
			el.removeEventListener( 'mouseleave', dispatchOut );
		};

		el.addEventListener( 'mouseover', dispatchOver );

		el.addEventListener( 'mouseleave', dispatchOut );

		return h;
	};

	$.fn.hoverIntent = function( over, out, options ) {
		return this.each( function() {
			hoverIntent( this, over, out ).options( options || {} );
		} );
	};

})( jQuery );assets/lib/jquery-hover-intent/jquery-hover-intent.min.js000064400000002006151327220410017625 0ustar00!function(h){"use strict";var i=function(i,o,r){var u,s,v,c,t={},m=0,a=0,l={sensitivity:7,interval:100,timeout:0};function f(e){u=e.clientX,s=e.clientY}function e(e){return a&&(a=clearTimeout(a)),i.removeEventListener("mousemove",f),1!==m&&(v=e.clientX,c=e.clientY,i.addEventListener("mousemove",f),a=setTimeout(function(){!function e(t,n){if(a&&(a=clearTimeout(a)),Math.abs(v-u)+Math.abs(c-s)<l.sensitivity)return m=1,o?o.call(t,n):null;v=u,c=s,a=setTimeout(function(){e(t,n)},l.interval)}(i,e)},l.interval)),this}function n(n){return a&&(a=clearTimeout(a)),i.removeEventListener("mousemove",f),1===m&&(a=setTimeout(function(){var e,t;e=i,t=n,a&&(a=clearTimeout(a)),m=0,r&&r.call(e,t)},l.timeout)),this}return t.options=function(e){return l=h.extend({},l,e),t},t.remove=function(){i.removeEventListener("mouseover",e),i.removeEventListener("mouseleave",n)},i.addEventListener("mouseover",e),i.addEventListener("mouseleave",n),t};h.fn.hoverIntent=function(e,t,n){return this.each(function(){i(this,e,t).options(n||{})})}}(jQuery);assets/lib/jquery-numerator/jquery-numerator.js000064400000006501151327220410016033 0ustar00/* 
 *   jQuery Numerator Plugin 0.2.1
 *   https://github.com/garethdn/jquery-numerator
 *
 *   Copyright 2015, Gareth Nolan
 *   http://ie.linkedin.com/in/garethnolan/

 *   Based on jQuery Boilerplate by Zeno Rocha with the help of Addy Osmani
 *   http://jqueryboilerplate.com
 *
 *   Licensed under the MIT license:
 *   http://www.opensource.org/licenses/MIT
 */

;(function (factory) {
	'use strict';
	if (typeof define === 'function' && define.amd) {
		// AMD is used - Register as an anonymous module.
		define(['jquery'], factory);
	} else if (typeof exports === 'object') {
		factory(require('jquery'));
	} else {
		// Neither AMD nor CommonJS used. Use global variables.
		if (typeof jQuery === 'undefined') {
			throw 'jquery-numerator requires jQuery to be loaded first';
		}
		factory(jQuery);
	}
}(function ($) {

	var pluginName = "numerator",
		defaults = {
			easing: 'swing',
			duration: 500,
			delimiter: undefined,
			rounding: 0,
			toValue: undefined,
			fromValue: undefined,
			queue: false,
			onStart: function(){},
			onStep: function(){},
			onProgress: function(){},
			onComplete: function(){}
		};

	function Plugin ( element, options ) {
		this.element = element;
		this.settings = $.extend( {}, defaults, options );
		this._defaults = defaults;
		this._name = pluginName;
		this.init();
	}

	Plugin.prototype = {

		init: function () {
			this.parseElement();
			this.setValue();
		},

		parseElement: function () {
			var elText = $.trim($(this.element).text());

			this.settings.fromValue = this.settings.fromValue || this.format(elText);
		},

		setValue: function() {
			var self = this;

			$({value: self.settings.fromValue}).animate({value: self.settings.toValue}, {

				duration: parseInt(self.settings.duration, 10),

				easing: self.settings.easing,

				start: self.settings.onStart,

				step: function(now, fx) {
					$(self.element).text(self.format(now));
					// accepts two params - (now, fx)
					self.settings.onStep(now, fx);
				},

				// accepts three params - (animation object, progress ratio, time remaining(ms))
				progress: self.settings.onProgress,

				complete: self.settings.onComplete
			});
		},

		format: function(value){
			var self = this;

			if ( parseInt(this.settings.rounding ) < 1) {
				value = parseInt(value, 10);
			} else {
				value = parseFloat(value).toFixed( parseInt(this.settings.rounding) );
			}

			if (self.settings.delimiter) {
				return this.delimit(value)
			} else {
				return value;
			}
		},

		// TODO: Add comments to this function
		delimit: function(value){
			var self = this;

			value = value.toString();

			if (self.settings.rounding && parseInt(self.settings.rounding, 10) > 0) {
				var decimals = value.substring( (value.length - (self.settings.rounding + 1)), value.length ),
					wholeValue = value.substring( 0, (value.length - (self.settings.rounding + 1)));

				return self.addDelimiter(wholeValue) + decimals;
			} else {
				return self.addDelimiter(value);
			}
		},

		addDelimiter: function(value){
			return value.toString().replace(/\B(?=(\d{3})+(?!\d))/g, this.settings.delimiter);
		}
	};

	$.fn[ pluginName ] = function ( options ) {
		return this.each(function() {
			if ( $.data( this, "plugin_" + pluginName ) ) {
				$.data(this, 'plugin_' + pluginName, null);
			}
			$.data( this, "plugin_" + pluginName, new Plugin( this, options ) );
		});
	};

}));assets/lib/jquery-numerator/jquery-numerator.min.js000064400000003411151327220410016612 0ustar00!function(t){"use strict";if("function"==typeof define&&define.amd)define(["jquery"],t);else if("object"==typeof exports)t(require("jquery"));else{if("undefined"==typeof jQuery)throw"jquery-numerator requires jQuery to be loaded first";t(jQuery)}}(function(t){function e(e,s){this.element=e,this.settings=t.extend({},i,s),this._defaults=i,this._name=n,this.init()}var n="numerator",i={easing:"swing",duration:500,delimiter:void 0,rounding:0,toValue:void 0,fromValue:void 0,queue:!1,onStart:function(){},onStep:function(){},onProgress:function(){},onComplete:function(){}};e.prototype={init:function(){this.parseElement(),this.setValue()},parseElement:function(){var e=t.trim(t(this.element).text());this.settings.fromValue=this.settings.fromValue||this.format(e)},setValue:function(){var e=this;t({value:e.settings.fromValue}).animate({value:e.settings.toValue},{duration:parseInt(e.settings.duration,10),easing:e.settings.easing,start:e.settings.onStart,step:function(n,i){t(e.element).text(e.format(n)),e.settings.onStep(n,i)},progress:e.settings.onProgress,complete:e.settings.onComplete})},format:function(t){var e=this;return t=parseInt(this.settings.rounding)<1?parseInt(t,10):parseFloat(t).toFixed(parseInt(this.settings.rounding)),e.settings.delimiter?this.delimit(t):t},delimit:function(t){var e=this;if(t=t.toString(),e.settings.rounding&&parseInt(e.settings.rounding,10)>0){var n=t.substring(t.length-(e.settings.rounding+1),t.length),i=t.substring(0,t.length-(e.settings.rounding+1));return e.addDelimiter(i)+n}return e.addDelimiter(t)},addDelimiter:function(t){return t.toString().replace(/\B(?=(\d{3})+(?!\d))/g,this.settings.delimiter)}},t.fn[n]=function(i){return this.each(function(){t.data(this,"plugin_"+n)&&t.data(this,"plugin_"+n,null),t.data(this,"plugin_"+n,new e(this,i))})}});assets/lib/flatpickr/flatpickr.min.css000064400000041506151327220410014051 0ustar00.flatpickr-calendar{background:transparent;overflow:hidden;max-height:0;opacity:0;visibility:hidden;text-align:center;padding:0;-webkit-animation:none;animation:none;direction:ltr;border:0;font-size:14px;line-height:24px;border-radius:5px;position:absolute;width:307.875px;-webkit-box-sizing:border-box;box-sizing:border-box;-ms-touch-action:manipulation;touch-action:manipulation;background:#fff;-webkit-box-shadow:1px 0 0 #e6e6e6,-1px 0 0 #e6e6e6,0 1px 0 #e6e6e6,0 -1px 0 #e6e6e6,0 3px 13px rgba(0,0,0,0.08);box-shadow:1px 0 0 #e6e6e6,-1px 0 0 #e6e6e6,0 1px 0 #e6e6e6,0 -1px 0 #e6e6e6,0 3px 13px rgba(0,0,0,0.08);}.flatpickr-calendar.open,.flatpickr-calendar.inline{opacity:1;visibility:visible;overflow:visible;max-height:640px}.flatpickr-calendar.open{display:inline-block;z-index:99999}.flatpickr-calendar.animate.open{-webkit-animation:fpFadeInDown 300ms cubic-bezier(.23,1,.32,1);animation:fpFadeInDown 300ms cubic-bezier(.23,1,.32,1)}.flatpickr-calendar.inline{display:block;position:relative;top:2px}.flatpickr-calendar.static{position:absolute;top:calc(100% + 2px);}.flatpickr-calendar.static.open{z-index:999;display:block}.flatpickr-calendar.hasWeeks{width:auto}.flatpickr-calendar .hasWeeks .dayContainer,.flatpickr-calendar .hasTime .dayContainer{border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.flatpickr-calendar .hasWeeks .dayContainer{border-left:0}.flatpickr-calendar.showTimeInput.hasTime .flatpickr-time{height:40px;border-top:1px solid #e6e6e6}.flatpickr-calendar.noCalendar.hasTime .flatpickr-time{height:auto}.flatpickr-calendar:before,.flatpickr-calendar:after{position:absolute;display:block;pointer-events:none;border:solid transparent;content:'';height:0;width:0;left:22px}.flatpickr-calendar.rightMost:before,.flatpickr-calendar.rightMost:after{left:auto;right:22px}.flatpickr-calendar:before{border-width:5px;margin:0 -5px}.flatpickr-calendar:after{border-width:4px;margin:0 -4px}.flatpickr-calendar.arrowTop:before,.flatpickr-calendar.arrowTop:after{bottom:100%}.flatpickr-calendar.arrowTop:before{border-bottom-color:#e6e6e6}.flatpickr-calendar.arrowTop:after{border-bottom-color:#fff}.flatpickr-calendar.arrowBottom:before,.flatpickr-calendar.arrowBottom:after{top:100%}.flatpickr-calendar.arrowBottom:before{border-top-color:#e6e6e6}.flatpickr-calendar.arrowBottom:after{border-top-color:#fff}.flatpickr-calendar:focus{outline:0}.flatpickr-wrapper{position:relative;display:inline-block}.flatpickr-month{background:transparent;color:rgba(0,0,0,0.9);fill:rgba(0,0,0,0.9);height:28px;line-height:1;text-align:center;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;overflow:hidden}.flatpickr-prev-month,.flatpickr-next-month{text-decoration:none;cursor:pointer;position:absolute;top:0;line-height:16px;height:28px;padding:10px calc(3.57% - 1.5px);z-index:3;}.flatpickr-prev-month i,.flatpickr-next-month i{position:relative}.flatpickr-prev-month.flatpickr-prev-month,.flatpickr-next-month.flatpickr-prev-month{/*
        /*rtl:begin:ignore*/left:0;/*
        /*rtl:end:ignore*/}/*
        /*rtl:begin:ignore*/
/*
        /*rtl:end:ignore*/
.flatpickr-prev-month.flatpickr-next-month,.flatpickr-next-month.flatpickr-next-month{/*
        /*rtl:begin:ignore*/right:0;/*
        /*rtl:end:ignore*/}/*
        /*rtl:begin:ignore*/
/*
        /*rtl:end:ignore*/
.flatpickr-prev-month:hover,.flatpickr-next-month:hover{color:#959ea9;}.flatpickr-prev-month:hover svg,.flatpickr-next-month:hover svg{fill:#f64747}.flatpickr-prev-month svg,.flatpickr-next-month svg{width:14px;}.flatpickr-prev-month svg path,.flatpickr-next-month svg path{-webkit-transition:fill .1s;transition:fill .1s;fill:inherit}.numInputWrapper{position:relative;height:auto;}.numInputWrapper input,.numInputWrapper span{display:inline-block}.numInputWrapper input{width:100%}.numInputWrapper span{position:absolute;right:0;width:14px;padding:0 4px 0 2px;height:50%;line-height:50%;opacity:0;cursor:pointer;border:1px solid rgba(57,57,57,0.05);-webkit-box-sizing:border-box;box-sizing:border-box;}.numInputWrapper span:hover{background:rgba(0,0,0,0.1)}.numInputWrapper span:active{background:rgba(0,0,0,0.2)}.numInputWrapper span:after{display:block;content:"";position:absolute;top:33%}.numInputWrapper span.arrowUp{top:0;border-bottom:0;}.numInputWrapper span.arrowUp:after{border-left:4px solid transparent;border-right:4px solid transparent;border-bottom:4px solid rgba(57,57,57,0.6)}.numInputWrapper span.arrowDown{top:50%;}.numInputWrapper span.arrowDown:after{border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid rgba(57,57,57,0.6)}.numInputWrapper span svg{width:inherit;height:auto;}.numInputWrapper span svg path{fill:rgba(0,0,0,0.5)}.numInputWrapper:hover{background:rgba(0,0,0,0.05);}.numInputWrapper:hover span{opacity:1}.flatpickr-current-month{font-size:135%;line-height:inherit;font-weight:300;color:inherit;position:absolute;width:75%;left:12.5%;padding:6.16px 0 0 0;line-height:1;height:28px;display:inline-block;text-align:center;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);}.flatpickr-current-month.slideLeft{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0);-webkit-animation:fpFadeOut 400ms ease,fpSlideLeft 400ms cubic-bezier(.23,1,.32,1);animation:fpFadeOut 400ms ease,fpSlideLeft 400ms cubic-bezier(.23,1,.32,1)}.flatpickr-current-month.slideLeftNew{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0);-webkit-animation:fpFadeIn 400ms ease,fpSlideLeftNew 400ms cubic-bezier(.23,1,.32,1);animation:fpFadeIn 400ms ease,fpSlideLeftNew 400ms cubic-bezier(.23,1,.32,1)}.flatpickr-current-month.slideRight{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0);-webkit-animation:fpFadeOut 400ms ease,fpSlideRight 400ms cubic-bezier(.23,1,.32,1);animation:fpFadeOut 400ms ease,fpSlideRight 400ms cubic-bezier(.23,1,.32,1)}.flatpickr-current-month.slideRightNew{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);-webkit-animation:fpFadeIn 400ms ease,fpSlideRightNew 400ms cubic-bezier(.23,1,.32,1);animation:fpFadeIn 400ms ease,fpSlideRightNew 400ms cubic-bezier(.23,1,.32,1)}.flatpickr-current-month span.cur-month{font-family:inherit;font-weight:700;color:inherit;display:inline-block;margin-left:.5ch;padding:0;}.flatpickr-current-month span.cur-month:hover{background:rgba(0,0,0,0.05)}.flatpickr-current-month .numInputWrapper{width:6ch;width:7ch\0;display:inline-block;}.flatpickr-current-month .numInputWrapper span.arrowUp:after{border-bottom-color:rgba(0,0,0,0.9)}.flatpickr-current-month .numInputWrapper span.arrowDown:after{border-top-color:rgba(0,0,0,0.9)}.flatpickr-current-month input.cur-year{background:transparent;-webkit-box-sizing:border-box;box-sizing:border-box;color:inherit;cursor:default;padding:0 0 0 .5ch;margin:0;display:inline-block;font-size:inherit;font-family:inherit;font-weight:300;line-height:inherit;height:initial;border:0;border-radius:0;vertical-align:initial;}.flatpickr-current-month input.cur-year:focus{outline:0}.flatpickr-current-month input.cur-year[disabled],.flatpickr-current-month input.cur-year[disabled]:hover{font-size:100%;color:rgba(0,0,0,0.5);background:transparent;pointer-events:none}.flatpickr-weekdays{background:transparent;text-align:center;overflow:hidden;width:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;height:28px}span.flatpickr-weekday{cursor:default;font-size:90%;background:transparent;color:rgba(0,0,0,0.54);line-height:1;margin:0;text-align:center;display:block;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;font-weight:bolder}.dayContainer,.flatpickr-weeks{padding:1px 0 0 0}.flatpickr-days{position:relative;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;width:307.875px;}.flatpickr-days:focus{outline:0}.dayContainer{padding:0;outline:0;text-align:left;width:307.875px;min-width:307.875px;max-width:307.875px;-webkit-box-sizing:border-box;box-sizing:border-box;display:inline-block;display:-ms-flexbox;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-wrap:wrap;-ms-flex-pack:justify;-webkit-justify-content:space-around;justify-content:space-around;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}.flatpickr-calendar.animate .dayContainer.slideLeft{-webkit-animation:fpFadeOut 400ms cubic-bezier(.23,1,.32,1),fpSlideLeft 400ms cubic-bezier(.23,1,.32,1);animation:fpFadeOut 400ms cubic-bezier(.23,1,.32,1),fpSlideLeft 400ms cubic-bezier(.23,1,.32,1)}.flatpickr-calendar.animate .dayContainer.slideLeft,.flatpickr-calendar.animate .dayContainer.slideLeftNew{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}.flatpickr-calendar.animate .dayContainer.slideLeftNew{-webkit-animation:fpFadeIn 400ms cubic-bezier(.23,1,.32,1),fpSlideLeft 400ms cubic-bezier(.23,1,.32,1);animation:fpFadeIn 400ms cubic-bezier(.23,1,.32,1),fpSlideLeft 400ms cubic-bezier(.23,1,.32,1)}.flatpickr-calendar.animate .dayContainer.slideRight{-webkit-animation:fpFadeOut 400ms cubic-bezier(.23,1,.32,1),fpSlideRight 400ms cubic-bezier(.23,1,.32,1);animation:fpFadeOut 400ms cubic-bezier(.23,1,.32,1),fpSlideRight 400ms cubic-bezier(.23,1,.32,1);-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}.flatpickr-calendar.animate .dayContainer.slideRightNew{-webkit-animation:fpFadeIn 400ms cubic-bezier(.23,1,.32,1),fpSlideRightNew 400ms cubic-bezier(.23,1,.32,1);animation:fpFadeIn 400ms cubic-bezier(.23,1,.32,1),fpSlideRightNew 400ms cubic-bezier(.23,1,.32,1)}.flatpickr-day{background:none;border:1px solid transparent;border-radius:150px;-webkit-box-sizing:border-box;box-sizing:border-box;color:#393939;cursor:pointer;font-weight:400;width:14.2857143%;-webkit-flex-basis:14.2857143%;-ms-flex-preferred-size:14.2857143%;flex-basis:14.2857143%;max-width:39px;height:39px;line-height:39px;margin:0;display:inline-block;position:relative;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;text-align:center;}.flatpickr-day.inRange,.flatpickr-day.prevMonthDay.inRange,.flatpickr-day.nextMonthDay.inRange,.flatpickr-day.today.inRange,.flatpickr-day.prevMonthDay.today.inRange,.flatpickr-day.nextMonthDay.today.inRange,.flatpickr-day:hover,.flatpickr-day.prevMonthDay:hover,.flatpickr-day.nextMonthDay:hover,.flatpickr-day:focus,.flatpickr-day.prevMonthDay:focus,.flatpickr-day.nextMonthDay:focus{cursor:pointer;outline:0;background:#e6e6e6;border-color:#e6e6e6}.flatpickr-day.today{border-color:#959ea9;}.flatpickr-day.today:hover,.flatpickr-day.today:focus{border-color:#959ea9;background:#959ea9;color:#fff}.flatpickr-day.selected,.flatpickr-day.startRange,.flatpickr-day.endRange,.flatpickr-day.selected.inRange,.flatpickr-day.startRange.inRange,.flatpickr-day.endRange.inRange,.flatpickr-day.selected:focus,.flatpickr-day.startRange:focus,.flatpickr-day.endRange:focus,.flatpickr-day.selected:hover,.flatpickr-day.startRange:hover,.flatpickr-day.endRange:hover,.flatpickr-day.selected.prevMonthDay,.flatpickr-day.startRange.prevMonthDay,.flatpickr-day.endRange.prevMonthDay,.flatpickr-day.selected.nextMonthDay,.flatpickr-day.startRange.nextMonthDay,.flatpickr-day.endRange.nextMonthDay{background:#569ff7;-webkit-box-shadow:none;box-shadow:none;color:#fff;border-color:#569ff7}.flatpickr-day.selected.startRange,.flatpickr-day.startRange.startRange,.flatpickr-day.endRange.startRange{border-radius:50px 0 0 50px}.flatpickr-day.selected.endRange,.flatpickr-day.startRange.endRange,.flatpickr-day.endRange.endRange{border-radius:0 50px 50px 0}.flatpickr-day.selected.startRange + .endRange,.flatpickr-day.startRange.startRange + .endRange,.flatpickr-day.endRange.startRange + .endRange{-webkit-box-shadow:-10px 0 0 #569ff7;box-shadow:-10px 0 0 #569ff7}.flatpickr-day.selected.startRange.endRange,.flatpickr-day.startRange.startRange.endRange,.flatpickr-day.endRange.startRange.endRange{border-radius:50px}.flatpickr-day.inRange{border-radius:0;-webkit-box-shadow:-5px 0 0 #e6e6e6,5px 0 0 #e6e6e6;box-shadow:-5px 0 0 #e6e6e6,5px 0 0 #e6e6e6}.flatpickr-day.disabled,.flatpickr-day.disabled:hover{pointer-events:none}.flatpickr-day.disabled,.flatpickr-day.disabled:hover,.flatpickr-day.prevMonthDay,.flatpickr-day.nextMonthDay,.flatpickr-day.notAllowed,.flatpickr-day.notAllowed.prevMonthDay,.flatpickr-day.notAllowed.nextMonthDay{color:rgba(57,57,57,0.3);background:transparent;border-color:transparent;cursor:default}.flatpickr-day.week.selected{border-radius:0;-webkit-box-shadow:-5px 0 0 #569ff7,5px 0 0 #569ff7;box-shadow:-5px 0 0 #569ff7,5px 0 0 #569ff7}.rangeMode .flatpickr-day{margin-top:1px}.flatpickr-weekwrapper{display:inline-block;float:left;}.flatpickr-weekwrapper .flatpickr-weeks{padding:0 12px;-webkit-box-shadow:1px 0 0 #e6e6e6;box-shadow:1px 0 0 #e6e6e6}.flatpickr-weekwrapper .flatpickr-weekday{float:none;width:100%;line-height:28px}.flatpickr-weekwrapper span.flatpickr-day{display:block;width:100%;max-width:none}.flatpickr-innerContainer{display:block;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;}.flatpickr-rContainer{display:inline-block;padding:0;-webkit-box-sizing:border-box;box-sizing:border-box}.flatpickr-time{text-align:center;outline:0;display:block;height:0;line-height:40px;max-height:40px;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}.flatpickr-time:after{content:"";display:table;clear:both}.flatpickr-time .numInputWrapper{-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;width:40%;height:40px;float:left;}.flatpickr-time .numInputWrapper span.arrowUp:after{border-bottom-color:#393939}.flatpickr-time .numInputWrapper span.arrowDown:after{border-top-color:#393939}.flatpickr-time.hasSeconds .numInputWrapper{width:26%}.flatpickr-time.time24hr .numInputWrapper{width:49%}.flatpickr-time input{background:transparent;-webkit-box-shadow:none;box-shadow:none;border:0;border-radius:0;text-align:center;margin:0;padding:0;height:inherit;line-height:inherit;cursor:pointer;color:#393939;font-size:14px;position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;}.flatpickr-time input.flatpickr-hour{font-weight:bold}.flatpickr-time input.flatpickr-minute,.flatpickr-time input.flatpickr-second{font-weight:400}.flatpickr-time input:focus{outline:0;border:0}.flatpickr-time .flatpickr-time-separator,.flatpickr-time .flatpickr-am-pm{height:inherit;display:inline-block;float:left;line-height:inherit;color:#393939;font-weight:bold;width:2%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-align-self:center;-ms-flex-item-align:center;align-self:center}.flatpickr-time .flatpickr-am-pm{outline:0;width:18%;cursor:pointer;text-align:center;font-weight:400;}.flatpickr-time .flatpickr-am-pm:hover,.flatpickr-time .flatpickr-am-pm:focus{background:#f0f0f0}.flatpickr-input[readonly]{cursor:pointer}@-webkit-keyframes fpFadeInDown{from{opacity:0;-webkit-transform:translate3d(0,-20px,0);transform:translate3d(0,-20px,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}@keyframes fpFadeInDown{from{opacity:0;-webkit-transform:translate3d(0,-20px,0);transform:translate3d(0,-20px,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}@-webkit-keyframes fpSlideLeft{from{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}@keyframes fpSlideLeft{from{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}@-webkit-keyframes fpSlideLeftNew{from{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}to{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}@keyframes fpSlideLeftNew{from{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}to{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}@-webkit-keyframes fpSlideRight{from{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}@keyframes fpSlideRight{from{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}@-webkit-keyframes fpSlideRightNew{from{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}to{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}@keyframes fpSlideRightNew{from{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}to{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}@-webkit-keyframes fpFadeOut{from{opacity:1}to{opacity:0}}@keyframes fpFadeOut{from{opacity:1}to{opacity:0}}@-webkit-keyframes fpFadeIn{from{opacity:0}to{opacity:1}}@keyframes fpFadeIn{from{opacity:0}to{opacity:1}}assets/lib/flatpickr/flatpickr.js000064400000222276151327220410013120 0ustar00/* flatpickr v4.1.4, @license MIT */
(function (global, factory) {
	typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
		typeof define === 'function' && define.amd ? define(factory) :
			(global.flatpickr = factory());
}(this, (function () { 'use strict';

	/*! *****************************************************************************
	Copyright (c) Microsoft Corporation. All rights reserved.
	Licensed under the Apache License, Version 2.0 (the "License"); you may not use
	this file except in compliance with the License. You may obtain a copy of the
	License at http://www.apache.org/licenses/LICENSE-2.0

	THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
	KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
	WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
	MERCHANTABLITY OR NON-INFRINGEMENT.

	See the Apache Version 2.0 License for specific language governing permissions
	and limitations under the License.
	***************************************************************************** */
	/* global Reflect, Promise */



	var __assign = Object.assign || function __assign(t) {
		for (var s, i = 1, n = arguments.length; i < n; i++) {
			s = arguments[i];
			for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
		}
		return t;
	};

	function compareDates(date1, date2, timeless) {
		if (timeless !== false) {
			return (new Date(date1.getTime()).setHours(0, 0, 0, 0) -
				new Date(date2.getTime()).setHours(0, 0, 0, 0));
		}
		return date1.getTime() - date2.getTime();
	}
	var monthToStr = function (monthNumber, shorthand, locale) { return locale.months[shorthand ? "shorthand" : "longhand"][monthNumber]; };
	var getWeek = function (givenDate) {
		var onejan = new Date(givenDate.getFullYear(), 0, 1);
		return Math.ceil(((givenDate.getTime() - onejan.getTime()) / 86400000 +
			onejan.getDay() +
			1) /
			7);
	};
	var duration = {
		DAY: 86400000,
	};

	var defaults = {
		_disable: [],
		_enable: [],
		allowInput: false,
		altFormat: "F j, Y",
		altInput: false,
		altInputClass: "form-control input",
		animate: typeof window === "object" &&
		window.navigator.userAgent.indexOf("MSIE") === -1,
		ariaDateFormat: "F j, Y",
		clickOpens: true,
		closeOnSelect: true,
		conjunction: ", ",
		dateFormat: "Y-m-d",
		defaultHour: 12,
		defaultMinute: 0,
		defaultSeconds: 0,
		disable: [],
		disableMobile: false,
		enable: [],
		enableSeconds: false,
		enableTime: false,
		errorHandler: console.warn,
		getWeek: getWeek,
		hourIncrement: 1,
		ignoredFocusElements: [],
		inline: false,
		locale: "default",
		minuteIncrement: 5,
		mode: "single",
		nextArrow: "<svg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 17 17'><g></g><path d='M13.207 8.472l-7.854 7.854-0.707-0.707 7.146-7.146-7.146-7.148 0.707-0.707 7.854 7.854z' /></svg>",
		noCalendar: false,
		onChange: [],
		onClose: [],
		onDayCreate: [],
		onDestroy: [],
		onKeyDown: [],
		onMonthChange: [],
		onOpen: [],
		onParseConfig: [],
		onReady: [],
		onValueUpdate: [],
		onYearChange: [],
		plugins: [],
		position: "auto",
		positionElement: undefined,
		prevArrow: "<svg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 17 17'><g></g><path d='M5.207 8.471l7.146 7.147-0.707 0.707-7.853-7.854 7.854-7.853 0.707 0.707-7.147 7.146z' /></svg>",
		shorthandCurrentMonth: false,
		static: false,
		time_24hr: false,
		weekNumbers: false,
		wrap: false,
	};

	var english = {
		weekdays: {
			shorthand: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"],
			longhand: [
				"Sunday",
				"Monday",
				"Tuesday",
				"Wednesday",
				"Thursday",
				"Friday",
				"Saturday",
			],
		},
		months: {
			shorthand: [
				"Jan",
				"Feb",
				"Mar",
				"Apr",
				"May",
				"Jun",
				"Jul",
				"Aug",
				"Sep",
				"Oct",
				"Nov",
				"Dec",
			],
			longhand: [
				"January",
				"February",
				"March",
				"April",
				"May",
				"June",
				"July",
				"August",
				"September",
				"October",
				"November",
				"December",
			],
		},
		daysInMonth: [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31],
		firstDayOfWeek: 0,
		ordinal: function (nth) {
			var s = nth % 100;
			if (s > 3 && s < 21)
				return "th";
			switch (s % 10) {
				case 1:
					return "st";
				case 2:
					return "nd";
				case 3:
					return "rd";
				default:
					return "th";
			}
		},
		rangeSeparator: " to ",
		weekAbbreviation: "Wk",
		scrollTitle: "Scroll to increment",
		toggleTitle: "Click to toggle",
		amPM: ["AM", "PM"],
	};

	var pad = function (number) { return ("0" + number).slice(-2); };
	var int = function (bool) { return (bool === true ? 1 : 0); };
	function debounce(func, wait, immediate) {
		if (immediate === void 0) { immediate = false; }
		var timeout;
		return function () {
			var context = this, args = arguments;
			timeout !== null && clearTimeout(timeout);
			timeout = window.setTimeout(function () {
				timeout = null;
				if (!immediate)
					func.apply(context, args);
			}, wait);
			if (immediate && !timeout)
				func.apply(context, args);
		};
	}
	var arrayify = function (obj) {
		return obj instanceof Array ? obj : [obj];
	};
	function mouseDelta(e) {
		var delta = e.wheelDelta || -e.deltaY;
		return delta >= 0 ? 1 : -1;
	}

	function toggleClass(elem, className, bool) {
		if (bool === true)
			return elem.classList.add(className);
		elem.classList.remove(className);
	}
	function createElement(tag, className, content) {
		var e = window.document.createElement(tag);
		className = className || "";
		content = content || "";
		e.className = className;
		if (content !== undefined)
			e.textContent = content;
		return e;
	}
	function clearNode(node) {
		while (node.firstChild)
			node.removeChild(node.firstChild);
	}
	function findParent(node, condition) {
		if (condition(node))
			return node;
		else if (node.parentNode)
			return findParent(node.parentNode, condition);
		return undefined;
	}
	function createNumberInput(inputClassName) {
		var wrapper = createElement("div", "numInputWrapper"), numInput = createElement("input", "numInput " + inputClassName), arrowUp = createElement("span", "arrowUp"), arrowDown = createElement("span", "arrowDown");
		numInput.type = "text";
		numInput.pattern = "\\d*";
		wrapper.appendChild(numInput);
		wrapper.appendChild(arrowUp);
		wrapper.appendChild(arrowDown);
		return wrapper;
	}

	var do_nothing = function () { return undefined; };
	var revFormat = {
		D: do_nothing,
		F: function (dateObj, monthName, locale) {
			dateObj.setMonth(locale.months.longhand.indexOf(monthName));
		},
		G: function (dateObj, hour) {
			dateObj.setHours(parseFloat(hour));
		},
		H: function (dateObj, hour) {
			dateObj.setHours(parseFloat(hour));
		},
		J: function (dateObj, day) {
			dateObj.setDate(parseFloat(day));
		},
		K: function (dateObj, amPM, locale) {
			dateObj.setHours(dateObj.getHours() % 12 +
				12 * int(new RegExp(locale.amPM[1], "i").test(amPM)));
		},
		M: function (dateObj, shortMonth, locale) {
			dateObj.setMonth(locale.months.shorthand.indexOf(shortMonth));
		},
		S: function (dateObj, seconds) {
			dateObj.setSeconds(parseFloat(seconds));
		},
		U: function (_, unixSeconds) { return new Date(parseFloat(unixSeconds) * 1000); },
		W: function (dateObj, weekNum) {
			var weekNumber = parseInt(weekNum);
			return new Date(dateObj.getFullYear(), 0, 2 + (weekNumber - 1) * 7, 0, 0, 0, 0);
		},
		Y: function (dateObj, year) {
			dateObj.setFullYear(parseFloat(year));
		},
		Z: function (_, ISODate) { return new Date(ISODate); },
		d: function (dateObj, day) {
			dateObj.setDate(parseFloat(day));
		},
		h: function (dateObj, hour) {
			dateObj.setHours(parseFloat(hour));
		},
		i: function (dateObj, minutes) {
			dateObj.setMinutes(parseFloat(minutes));
		},
		j: function (dateObj, day) {
			dateObj.setDate(parseFloat(day));
		},
		l: do_nothing,
		m: function (dateObj, month) {
			dateObj.setMonth(parseFloat(month) - 1);
		},
		n: function (dateObj, month) {
			dateObj.setMonth(parseFloat(month) - 1);
		},
		s: function (dateObj, seconds) {
			dateObj.setSeconds(parseFloat(seconds));
		},
		w: do_nothing,
		y: function (dateObj, year) {
			dateObj.setFullYear(2000 + parseFloat(year));
		},
	};
	var tokenRegex = {
		D: "(\\w+)",
		F: "(\\w+)",
		G: "(\\d\\d|\\d)",
		H: "(\\d\\d|\\d)",
		J: "(\\d\\d|\\d)\\w+",
		K: "",
		M: "(\\w+)",
		S: "(\\d\\d|\\d)",
		U: "(.+)",
		W: "(\\d\\d|\\d)",
		Y: "(\\d{4})",
		Z: "(.+)",
		d: "(\\d\\d|\\d)",
		h: "(\\d\\d|\\d)",
		i: "(\\d\\d|\\d)",
		j: "(\\d\\d|\\d)",
		l: "(\\w+)",
		m: "(\\d\\d|\\d)",
		n: "(\\d\\d|\\d)",
		s: "(\\d\\d|\\d)",
		w: "(\\d\\d|\\d)",
		y: "(\\d{2})",
	};
	var formats = {
		Z: function (date) { return date.toISOString(); },
		D: function (date, locale, options) {
			return locale.weekdays.shorthand[formats.w(date, locale, options)];
		},
		F: function (date, locale, options) {
			return monthToStr(formats.n(date, locale, options) - 1, false, locale);
		},
		G: function (date, locale, options) {
			return pad(formats.h(date, locale, options));
		},
		H: function (date) { return pad(date.getHours()); },
		J: function (date, locale) {
			return locale.ordinal !== undefined
				? date.getDate() + locale.ordinal(date.getDate())
				: date.getDate();
		},
		K: function (date, locale) { return locale.amPM[int(date.getHours() > 11)]; },
		M: function (date, locale) {
			return monthToStr(date.getMonth(), true, locale);
		},
		S: function (date) { return pad(date.getSeconds()); },
		U: function (date) { return date.getTime() / 1000; },
		W: function (date, _, options) {
			return options.getWeek(date);
		},
		Y: function (date) { return date.getFullYear(); },
		d: function (date) { return pad(date.getDate()); },
		h: function (date) { return (date.getHours() % 12 ? date.getHours() % 12 : 12); },
		i: function (date) { return pad(date.getMinutes()); },
		j: function (date) { return date.getDate(); },
		l: function (date, locale) {
			return locale.weekdays.longhand[date.getDay()];
		},
		m: function (date) { return pad(date.getMonth() + 1); },
		n: function (date) { return date.getMonth() + 1; },
		s: function (date) { return date.getSeconds(); },
		w: function (date) { return date.getDay(); },
		y: function (date) { return String(date.getFullYear()).substring(2); },
	};

	if (typeof Object.assign !== "function") {
		Object.assign = function (target) {
			var args = [];
			for (var _i = 1; _i < arguments.length; _i++) {
				args[_i - 1] = arguments[_i];
			}
			if (!target) {
				throw TypeError("Cannot convert undefined or null to object");
			}
			var _loop_1 = function (source) {
				if (source) {
					Object.keys(source).forEach(function (key) { return (target[key] = source[key]); });
				}
			};
			for (var _a = 0, args_1 = args; _a < args_1.length; _a++) {
				var source = args_1[_a];
				_loop_1(source);
			}
			return target;
		};
	}

	function FlatpickrInstance(element, instanceConfig) {
		var self = {};
		self.parseDate = parseDate;
		self.formatDate = formatDate;
		self._animationLoop = [];
		self._handlers = [];
		self._bind = bind;
		self._setHoursFromDate = setHoursFromDate;
		self.changeMonth = changeMonth;
		self.changeYear = changeYear;
		self.clear = clear;
		self.close = close;
		self._createElement = createElement;
		self.destroy = destroy;
		self.isEnabled = isEnabled;
		self.jumpToDate = jumpToDate;
		self.open = open;
		self.redraw = redraw;
		self.set = set;
		self.setDate = setDate;
		self.toggle = toggle;
		function setupHelperFunctions() {
			self.utils = {
				getDaysInMonth: function (month, yr) {
					if (month === void 0) { month = self.currentMonth; }
					if (yr === void 0) { yr = self.currentYear; }
					if (month === 1 && ((yr % 4 === 0 && yr % 100 !== 0) || yr % 400 === 0))
						return 29;
					return self.l10n.daysInMonth[month];
				},
			};
		}
		function init() {
			self.element = self.input = element;
			self.isOpen = false;
			parseConfig();
			setupLocale();
			setupInputs();
			setupDates();
			setupHelperFunctions();
			if (!self.isMobile)
				build();
			bindEvents();
			if (self.selectedDates.length || self.config.noCalendar) {
				if (self.config.enableTime) {
					setHoursFromDate(self.config.noCalendar
						? self.latestSelectedDateObj || self.config.minDate
						: undefined);
				}
				updateValue(false);
			}
			self.showTimeInput =
				self.selectedDates.length > 0 || self.config.noCalendar;
			if (self.weekWrapper !== undefined && self.daysContainer !== undefined) {
				self.calendarContainer.style.width =
					self.daysContainer.offsetWidth + self.weekWrapper.offsetWidth + "px";
			}
			if (!self.isMobile)
				positionCalendar();
			triggerEvent("onReady");
		}
		function bindToInstance(fn) {
			return fn.bind(self);
		}
		function updateTime(e) {
			if (self.config.noCalendar && self.selectedDates.length === 0) {
				var minDate = self.config.minDate;
				self.setDate(new Date().setHours(!minDate ? self.config.defaultHour : minDate.getHours(), !minDate ? self.config.defaultMinute : minDate.getMinutes(), !minDate || !self.config.enableSeconds
					? self.config.defaultSeconds
					: minDate.getSeconds()), false);
				setHoursFromInputs();
				updateValue();
			}
			timeWrapper(e);
			if (self.selectedDates.length === 0)
				return;
			if (!self.minDateHasTime ||
				e.type !== "input" ||
				e.target.value.length >= 2) {
				setHoursFromInputs();
				updateValue();
			}
			else {
				setTimeout(function () {
					setHoursFromInputs();
					updateValue();
				}, 1000);
			}
		}
		function ampm2military(hour, amPM) {
			return hour % 12 + 12 * int(amPM === self.l10n.amPM[1]);
		}
		function military2ampm(hour) {
			switch (hour % 24) {
				case 0:
				case 12:
					return 12;
				default:
					return hour % 12;
			}
		}
		function setHoursFromInputs() {
			if (self.hourElement === undefined || self.minuteElement === undefined)
				return;
			var hours = (parseInt(self.hourElement.value.slice(-2), 10) || 0) % 24, minutes = (parseInt(self.minuteElement.value, 10) || 0) % 60, seconds = self.secondElement !== undefined
				? (parseInt(self.secondElement.value, 10) || 0) % 60
				: 0;
			if (self.amPM !== undefined)
				hours = ampm2military(hours, self.amPM.textContent);
			if (self.config.minDate &&
				self.minDateHasTime &&
				self.latestSelectedDateObj &&
				compareDates(self.latestSelectedDateObj, self.config.minDate) === 0) {
				hours = Math.max(hours, self.config.minDate.getHours());
				if (hours === self.config.minDate.getHours())
					minutes = Math.max(minutes, self.config.minDate.getMinutes());
			}
			if (self.config.maxDate &&
				self.maxDateHasTime &&
				self.latestSelectedDateObj &&
				compareDates(self.latestSelectedDateObj, self.config.maxDate) === 0) {
				hours = Math.min(hours, self.config.maxDate.getHours());
				if (hours === self.config.maxDate.getHours())
					minutes = Math.min(minutes, self.config.maxDate.getMinutes());
			}
			setHours(hours, minutes, seconds);
		}
		function setHoursFromDate(dateObj) {
			var date = dateObj || self.latestSelectedDateObj;
			if (date)
				setHours(date.getHours(), date.getMinutes(), date.getSeconds());
		}
		function setHours(hours, minutes, seconds) {
			if (self.latestSelectedDateObj !== undefined) {
				self.latestSelectedDateObj.setHours(hours % 24, minutes, seconds || 0, 0);
			}
			if (!self.hourElement || !self.minuteElement || self.isMobile)
				return;
			self.hourElement.value = pad(!self.config.time_24hr
				? (12 + hours) % 12 + 12 * int(hours % 12 === 0)
				: hours);
			self.minuteElement.value = pad(minutes);
			if (self.amPM !== undefined)
				self.amPM.textContent = self.l10n.amPM[int(hours >= 12)];
			if (self.secondElement !== undefined)
				self.secondElement.value = pad(seconds);
		}
		function onYearInput(event) {
			var year = parseInt(event.target.value) + (event.delta || 0);
			if (year.toString().length === 4 || event.key === "Enter") {
				self.currentYearElement.blur();
				if (!/[^\d]/.test(year.toString()))
					changeYear(year);
			}
		}
		function bind(element, event, handler) {
			if (event instanceof Array)
				return event.forEach(function (ev) { return bind(element, ev, handler); });
			if (element instanceof Array)
				return element.forEach(function (el) { return bind(el, event, handler); });
			element.addEventListener(event, handler);
			self._handlers.push({ element: element, event: event, handler: handler });
		}
		function onClick(handler) {
			return function (evt) {
				evt.which === 1 && handler(evt);
			};
		}
		function triggerChange() {
			triggerEvent("onChange");
		}
		function bindEvents() {
			if (self.config.wrap) {
				["open", "close", "toggle", "clear"].forEach(function (evt) {
					Array.prototype.forEach.call(self.element.querySelectorAll("[data-" + evt + "]"), function (el) {
						return bind(el, "click", self[evt]);
					});
				});
			}
			if (self.isMobile) {
				setupMobile();
				return;
			}
			var debouncedResize = debounce(onResize, 50);
			self._debouncedChange = debounce(triggerChange, 300);
			if (self.config.mode === "range" &&
				self.daysContainer &&
				!/iPhone|iPad|iPod/i.test(navigator.userAgent))
				bind(self.daysContainer, "mouseover", function (e) {
					return onMouseOver(e.target);
				});
			bind(window.document.body, "keydown", onKeyDown);
			if (!self.config.static)
				bind(self._input, "keydown", onKeyDown);
			if (!self.config.inline && !self.config.static)
				bind(window, "resize", debouncedResize);
			if (window.ontouchstart !== undefined)
				bind(window.document.body, "touchstart", documentClick);
			bind(window.document.body, "mousedown", onClick(documentClick));
			bind(self._input, "blur", documentClick);
			if (self.config.clickOpens === true) {
				bind(self._input, "focus", self.open);
				bind(self._input, "mousedown", onClick(self.open));
			}
			if (self.daysContainer !== undefined) {
				self.monthNav.addEventListener("wheel", function (e) { return e.preventDefault(); });
				bind(self.monthNav, "wheel", debounce(onMonthNavScroll, 10));
				bind(self.monthNav, "mousedown", onClick(onMonthNavClick));
				bind(self.monthNav, ["keyup", "increment"], onYearInput);
				bind(self.daysContainer, "mousedown", onClick(selectDate));
				if (self.config.animate) {
					bind(self.daysContainer, ["webkitAnimationEnd", "animationend"], animateDays);
					bind(self.monthNav, ["webkitAnimationEnd", "animationend"], animateMonths);
				}
			}
			if (self.timeContainer !== undefined &&
				self.minuteElement !== undefined &&
				self.hourElement !== undefined) {
				var selText = function (e) {
					return e.target.select();
				};
				bind(self.timeContainer, ["wheel", "input", "increment"], updateTime);
				bind(self.timeContainer, "mousedown", onClick(timeIncrement));
				bind(self.timeContainer, ["wheel", "increment"], self._debouncedChange);
				bind(self.timeContainer, "input", triggerChange);
				bind([self.hourElement, self.minuteElement], ["focus", "click"], selText);
				if (self.secondElement !== undefined)
					bind(self.secondElement, "focus", function () { return self.secondElement && self.secondElement.select(); });
				if (self.amPM !== undefined) {
					bind(self.amPM, "mousedown", onClick(function (e) {
						updateTime(e);
						triggerChange();
					}));
				}
			}
		}
		function processPostDayAnimation() {
			self._animationLoop.forEach(function (f) { return f(); });
			self._animationLoop = [];
		}
		function animateDays(e) {
			if (self.daysContainer && self.daysContainer.childNodes.length > 1) {
				switch (e.animationName) {
					case "fpSlideLeft":
						self.daysContainer.lastChild &&
						self.daysContainer.lastChild.classList.remove("slideLeftNew");
						self.daysContainer.removeChild(self.daysContainer
							.firstChild);
						self.days = self.daysContainer.firstChild;
						processPostDayAnimation();
						break;
					case "fpSlideRight":
						self.daysContainer.firstChild &&
						self.daysContainer.firstChild.classList.remove("slideRightNew");
						self.daysContainer.removeChild(self.daysContainer
							.lastChild);
						self.days = self.daysContainer.firstChild;
						processPostDayAnimation();
						break;
					default:
						break;
				}
			}
		}
		function animateMonths(e) {
			switch (e.animationName) {
				case "fpSlideLeftNew":
				case "fpSlideRightNew":
					self.navigationCurrentMonth.classList.remove("slideLeftNew");
					self.navigationCurrentMonth.classList.remove("slideRightNew");
					var nav = self.navigationCurrentMonth;
					while (nav.nextSibling &&
					/curr/.test(nav.nextSibling.className))
						self.monthNav.removeChild(nav.nextSibling);
					while (nav.previousSibling &&
					/curr/.test(nav.previousSibling.className))
						self.monthNav.removeChild(nav.previousSibling);
					self.oldCurMonth = undefined;
					break;
			}
		}
		function jumpToDate(jumpDate) {
			var jumpTo = jumpDate !== undefined
				? parseDate(jumpDate)
				: self.latestSelectedDateObj ||
				(self.config.minDate && self.config.minDate > self.now
					? self.config.minDate
					: self.config.maxDate && self.config.maxDate < self.now
						? self.config.maxDate
						: self.now);
			try {
				if (jumpTo !== undefined) {
					self.currentYear = jumpTo.getFullYear();
					self.currentMonth = jumpTo.getMonth();
				}
			}
			catch (e) {
				e.message = "Invalid date supplied: " + jumpTo;
				self.config.errorHandler(e);
			}
			self.redraw();
		}
		function timeIncrement(e) {
			if (~e.target.className.indexOf("arrow"))
				incrementNumInput(e, e.target.classList.contains("arrowUp") ? 1 : -1);
		}
		function incrementNumInput(e, delta, inputElem) {
			var target = e && e.target;
			var input = inputElem ||
				(target && target.parentNode && target.parentNode.firstChild);
			var event = createEvent("increment");
			event.delta = delta;
			input && input.dispatchEvent(event);
		}
		function build() {
			var fragment = window.document.createDocumentFragment();
			self.calendarContainer = createElement("div", "flatpickr-calendar");
			self.calendarContainer.tabIndex = -1;
			if (!self.config.noCalendar) {
				fragment.appendChild(buildMonthNav());
				self.innerContainer = createElement("div", "flatpickr-innerContainer");
				if (self.config.weekNumbers) {
					var _a = buildWeeks(), weekWrapper = _a.weekWrapper, weekNumbers = _a.weekNumbers;
					self.innerContainer.appendChild(weekWrapper);
					self.weekNumbers = weekNumbers;
					self.weekWrapper = weekWrapper;
				}
				self.rContainer = createElement("div", "flatpickr-rContainer");
				self.rContainer.appendChild(buildWeekdays());
				if (!self.daysContainer) {
					self.daysContainer = createElement("div", "flatpickr-days");
					self.daysContainer.tabIndex = -1;
				}
				buildDays();
				self.rContainer.appendChild(self.daysContainer);
				self.innerContainer.appendChild(self.rContainer);
				fragment.appendChild(self.innerContainer);
			}
			if (self.config.enableTime) {
				fragment.appendChild(buildTime());
			}
			toggleClass(self.calendarContainer, "rangeMode", self.config.mode === "range");
			toggleClass(self.calendarContainer, "animate", self.config.animate);
			self.calendarContainer.appendChild(fragment);
			var customAppend = self.config.appendTo !== undefined && self.config.appendTo.nodeType;
			if (self.config.inline || self.config.static) {
				self.calendarContainer.classList.add(self.config.inline ? "inline" : "static");
				if (self.config.inline) {
					if (!customAppend && self.element.parentNode)
						self.element.parentNode.insertBefore(self.calendarContainer, self._input.nextSibling);
					else if (self.config.appendTo !== undefined)
						self.config.appendTo.appendChild(self.calendarContainer);
				}
				if (self.config.static) {
					var wrapper = createElement("div", "flatpickr-wrapper");
					if (self.element.parentNode)
						self.element.parentNode.insertBefore(wrapper, self.element);
					wrapper.appendChild(self.element);
					if (self.altInput)
						wrapper.appendChild(self.altInput);
					wrapper.appendChild(self.calendarContainer);
				}
			}
			if (!self.config.static && !self.config.inline)
				(self.config.appendTo !== undefined
					? self.config.appendTo
					: window.document.body).appendChild(self.calendarContainer);
		}
		function createDay(className, date, dayNumber, i) {
			var dateIsEnabled = isEnabled(date, true), dayElement = createElement("span", "flatpickr-day " + className, date.getDate().toString());
			dayElement.dateObj = date;
			dayElement.$i = i;
			dayElement.setAttribute("aria-label", self.formatDate(date, self.config.ariaDateFormat));
			if (compareDates(date, self.now) === 0) {
				self.todayDateElem = dayElement;
				dayElement.classList.add("today");
			}
			if (dateIsEnabled) {
				dayElement.tabIndex = -1;
				if (isDateSelected(date)) {
					dayElement.classList.add("selected");
					self.selectedDateElem = dayElement;
					if (self.config.mode === "range") {
						toggleClass(dayElement, "startRange", self.selectedDates[0] &&
							compareDates(date, self.selectedDates[0]) === 0);
						toggleClass(dayElement, "endRange", self.selectedDates[1] &&
							compareDates(date, self.selectedDates[1]) === 0);
					}
				}
			}
			else {
				dayElement.classList.add("disabled");
				if (self.selectedDates[0] &&
					self.minRangeDate &&
					date > self.minRangeDate &&
					date < self.selectedDates[0])
					self.minRangeDate = date;
				else if (self.selectedDates[0] &&
					self.maxRangeDate &&
					date < self.maxRangeDate &&
					date > self.selectedDates[0])
					self.maxRangeDate = date;
			}
			if (self.config.mode === "range") {
				if (isDateInRange(date) && !isDateSelected(date))
					dayElement.classList.add("inRange");
				if (self.selectedDates.length === 1 &&
					self.minRangeDate !== undefined &&
					self.maxRangeDate !== undefined &&
					(date < self.minRangeDate || date > self.maxRangeDate))
					dayElement.classList.add("notAllowed");
			}
			if (self.weekNumbers &&
				className !== "prevMonthDay" &&
				dayNumber % 7 === 1) {
				self.weekNumbers.insertAdjacentHTML("beforeend", "<span class='disabled flatpickr-day'>" +
					self.config.getWeek(date) +
					"</span>");
			}
			triggerEvent("onDayCreate", dayElement);
			return dayElement;
		}
		function focusOnDay(currentIndex, offset) {
			var newIndex = currentIndex + offset || 0, targetNode = (currentIndex !== undefined
				? self.days.childNodes[newIndex]
				: self.selectedDateElem ||
				self.todayDateElem ||
				self.days.childNodes[0]);
			var focus = function () {
				targetNode = targetNode || self.days.childNodes[newIndex];
				targetNode.focus();
				if (self.config.mode === "range")
					onMouseOver(targetNode);
			};
			if (targetNode === undefined && offset !== 0) {
				if (offset > 0) {
					self.changeMonth(1, true, undefined, true);
					newIndex = newIndex % 42;
				}
				else if (offset < 0) {
					self.changeMonth(-1, true, undefined, true);
					newIndex += 42;
				}
				return afterDayAnim(focus);
			}
			focus();
		}
		function afterDayAnim(fn) {
			self.config.animate === true ? self._animationLoop.push(fn) : fn();
		}
		function buildDays(delta) {
			if (self.daysContainer === undefined) {
				return;
			}
			var firstOfMonth = (new Date(self.currentYear, self.currentMonth, 1).getDay() -
				self.l10n.firstDayOfWeek +
				7) %
				7, isRangeMode = self.config.mode === "range";
			var prevMonthDays = self.utils.getDaysInMonth((self.currentMonth - 1 + 12) % 12);
			var daysInMonth = self.utils.getDaysInMonth(), days = window.document.createDocumentFragment();
			var dayNumber = prevMonthDays + 1 - firstOfMonth, dayIndex = 0;
			if (self.weekNumbers && self.weekNumbers.firstChild)
				self.weekNumbers.textContent = "";
			if (isRangeMode) {
				self.minRangeDate = new Date(self.currentYear, self.currentMonth - 1, dayNumber);
				self.maxRangeDate = new Date(self.currentYear, self.currentMonth + 1, (42 - firstOfMonth) % daysInMonth);
			}
			for (; dayNumber <= prevMonthDays; dayNumber++, dayIndex++) {
				days.appendChild(createDay("prevMonthDay", new Date(self.currentYear, self.currentMonth - 1, dayNumber), dayNumber, dayIndex));
			}
			for (dayNumber = 1; dayNumber <= daysInMonth; dayNumber++, dayIndex++) {
				days.appendChild(createDay("", new Date(self.currentYear, self.currentMonth, dayNumber), dayNumber, dayIndex));
			}
			for (var dayNum = daysInMonth + 1; dayNum <= 42 - firstOfMonth; dayNum++, dayIndex++) {
				days.appendChild(createDay("nextMonthDay", new Date(self.currentYear, self.currentMonth + 1, dayNum % daysInMonth), dayNum, dayIndex));
			}
			if (isRangeMode && self.selectedDates.length === 1 && days.childNodes[0]) {
				self._hidePrevMonthArrow =
					self._hidePrevMonthArrow ||
					(!!self.minRangeDate &&
						self.minRangeDate > days.childNodes[0].dateObj);
				self._hideNextMonthArrow =
					self._hideNextMonthArrow ||
					(!!self.maxRangeDate &&
						self.maxRangeDate <
						new Date(self.currentYear, self.currentMonth + 1, 1));
			}
			else
				updateNavigationCurrentMonth();
			var dayContainer = createElement("div", "dayContainer");
			dayContainer.appendChild(days);
			if (!self.config.animate || delta === undefined)
				clearNode(self.daysContainer);
			else {
				while (self.daysContainer.childNodes.length > 1)
					self.daysContainer.removeChild(self.daysContainer.firstChild);
			}
			if (delta && delta >= 0)
				self.daysContainer.appendChild(dayContainer);
			else
				self.daysContainer.insertBefore(dayContainer, self.daysContainer.firstChild);
			self.days = self.daysContainer.childNodes[0];
		}
		function buildMonthNav() {
			var monthNavFragment = window.document.createDocumentFragment();
			self.monthNav = createElement("div", "flatpickr-month");
			self.prevMonthNav = createElement("span", "flatpickr-prev-month");
			self.prevMonthNav.innerHTML = self.config.prevArrow;
			self.currentMonthElement = createElement("span", "cur-month");
			self.currentMonthElement.title = self.l10n.scrollTitle;
			var yearInput = createNumberInput("cur-year");
			self.currentYearElement = yearInput.childNodes[0];
			self.currentYearElement.title = self.l10n.scrollTitle;
			if (self.config.minDate)
				self.currentYearElement.min = self.config.minDate
					.getFullYear()
					.toString();
			if (self.config.maxDate) {
				self.currentYearElement.max = self.config.maxDate
					.getFullYear()
					.toString();
				self.currentYearElement.disabled =
					!!self.config.minDate &&
					self.config.minDate.getFullYear() === self.config.maxDate.getFullYear();
			}
			self.nextMonthNav = createElement("span", "flatpickr-next-month");
			self.nextMonthNav.innerHTML = self.config.nextArrow;
			self.navigationCurrentMonth = createElement("div", "flatpickr-current-month");
			self.navigationCurrentMonth.appendChild(self.currentMonthElement);
			self.navigationCurrentMonth.appendChild(yearInput);
			monthNavFragment.appendChild(self.prevMonthNav);
			monthNavFragment.appendChild(self.navigationCurrentMonth);
			monthNavFragment.appendChild(self.nextMonthNav);
			self.monthNav.appendChild(monthNavFragment);
			Object.defineProperty(self, "_hidePrevMonthArrow", {
				get: function () { return self.__hidePrevMonthArrow; },
				set: function (bool) {
					if (self.__hidePrevMonthArrow !== bool)
						self.prevMonthNav.style.display = bool ? "none" : "block";
					self.__hidePrevMonthArrow = bool;
				},
			});
			Object.defineProperty(self, "_hideNextMonthArrow", {
				get: function () { return self.__hideNextMonthArrow; },
				set: function (bool) {
					if (self.__hideNextMonthArrow !== bool)
						self.nextMonthNav.style.display = bool ? "none" : "block";
					self.__hideNextMonthArrow = bool;
				},
			});
			updateNavigationCurrentMonth();
			return self.monthNav;
		}
		function buildTime() {
			self.calendarContainer.classList.add("hasTime");
			if (self.config.noCalendar)
				self.calendarContainer.classList.add("noCalendar");
			self.timeContainer = createElement("div", "flatpickr-time");
			self.timeContainer.tabIndex = -1;
			var separator = createElement("span", "flatpickr-time-separator", ":");
			var hourInput = createNumberInput("flatpickr-hour");
			self.hourElement = hourInput.childNodes[0];
			var minuteInput = createNumberInput("flatpickr-minute");
			self.minuteElement = minuteInput.childNodes[0];
			self.hourElement.tabIndex = self.minuteElement.tabIndex = -1;
			self.hourElement.value = pad(self.latestSelectedDateObj
				? self.latestSelectedDateObj.getHours()
				: self.config.time_24hr
					? self.config.defaultHour
					: military2ampm(self.config.defaultHour));
			self.minuteElement.value = pad(self.latestSelectedDateObj
				? self.latestSelectedDateObj.getMinutes()
				: self.config.defaultMinute);
			self.hourElement.step = self.config.hourIncrement.toString();
			self.minuteElement.step = self.config.minuteIncrement.toString();
			self.hourElement.min = self.config.time_24hr ? "0" : "1";
			self.hourElement.max = self.config.time_24hr ? "23" : "12";
			self.minuteElement.min = "0";
			self.minuteElement.max = "59";
			self.hourElement.title = self.minuteElement.title = self.l10n.scrollTitle;
			self.timeContainer.appendChild(hourInput);
			self.timeContainer.appendChild(separator);
			self.timeContainer.appendChild(minuteInput);
			if (self.config.time_24hr)
				self.timeContainer.classList.add("time24hr");
			if (self.config.enableSeconds) {
				self.timeContainer.classList.add("hasSeconds");
				var secondInput = createNumberInput("flatpickr-second");
				self.secondElement = secondInput.childNodes[0];
				self.secondElement.value = pad(self.latestSelectedDateObj
					? self.latestSelectedDateObj.getSeconds()
					: self.config.defaultSeconds);
				self.secondElement.step = self.minuteElement.step;
				self.secondElement.min = self.minuteElement.min;
				self.secondElement.max = self.minuteElement.max;
				self.timeContainer.appendChild(createElement("span", "flatpickr-time-separator", ":"));
				self.timeContainer.appendChild(secondInput);
			}
			if (!self.config.time_24hr) {
				self.amPM = createElement("span", "flatpickr-am-pm", self.l10n.amPM[int((self.latestSelectedDateObj
					? self.hourElement.value
					: self.config.defaultHour) > 11)]);
				self.amPM.title = self.l10n.toggleTitle;
				self.amPM.tabIndex = -1;
				self.timeContainer.appendChild(self.amPM);
			}
			return self.timeContainer;
		}
		function buildWeekdays() {
			if (!self.weekdayContainer)
				self.weekdayContainer = createElement("div", "flatpickr-weekdays");
			var firstDayOfWeek = self.l10n.firstDayOfWeek;
			var weekdays = self.l10n.weekdays.shorthand.slice();
			if (firstDayOfWeek > 0 && firstDayOfWeek < weekdays.length) {
				weekdays = weekdays.splice(firstDayOfWeek, weekdays.length).concat(weekdays.splice(0, firstDayOfWeek));
			}
			self.weekdayContainer.innerHTML = "\n    <span class=flatpickr-weekday>\n      " + weekdays.join("</span><span class=flatpickr-weekday>") + "\n    </span>\n    ";
			return self.weekdayContainer;
		}
		function buildWeeks() {
			self.calendarContainer.classList.add("hasWeeks");
			var weekWrapper = createElement("div", "flatpickr-weekwrapper");
			weekWrapper.appendChild(createElement("span", "flatpickr-weekday", self.l10n.weekAbbreviation));
			var weekNumbers = createElement("div", "flatpickr-weeks");
			weekWrapper.appendChild(weekNumbers);
			return {
				weekWrapper: weekWrapper,
				weekNumbers: weekNumbers,
			};
		}
		function changeMonth(value, is_offset, animate, from_keyboard) {
			if (is_offset === void 0) { is_offset = true; }
			if (animate === void 0) { animate = self.config.animate; }
			if (from_keyboard === void 0) { from_keyboard = false; }
			var delta = is_offset ? value : value - self.currentMonth;
			if ((delta < 0 && self._hidePrevMonthArrow) ||
				(delta > 0 && self._hideNextMonthArrow))
				return;
			self.currentMonth += delta;
			if (self.currentMonth < 0 || self.currentMonth > 11) {
				self.currentYear += self.currentMonth > 11 ? 1 : -1;
				self.currentMonth = (self.currentMonth + 12) % 12;
				triggerEvent("onYearChange");
			}
			buildDays(animate ? delta : undefined);
			if (!animate) {
				triggerEvent("onMonthChange");
				return updateNavigationCurrentMonth();
			}
			var nav = self.navigationCurrentMonth;
			if (delta < 0) {
				while (nav.nextSibling &&
				/curr/.test(nav.nextSibling.className))
					self.monthNav.removeChild(nav.nextSibling);
			}
			else if (delta > 0) {
				while (nav.previousSibling &&
				/curr/.test(nav.previousSibling.className))
					self.monthNav.removeChild(nav.previousSibling);
			}
			self.oldCurMonth = self.navigationCurrentMonth;
			self.navigationCurrentMonth = self.monthNav.insertBefore(self.oldCurMonth.cloneNode(true), delta > 0 ? self.oldCurMonth.nextSibling : self.oldCurMonth);
			var daysContainer = self.daysContainer;
			if (daysContainer.firstChild && daysContainer.lastChild) {
				if (delta > 0) {
					daysContainer.firstChild.classList.add("slideLeft");
					daysContainer.lastChild.classList.add("slideLeftNew");
					self.oldCurMonth.classList.add("slideLeft");
					self.navigationCurrentMonth.classList.add("slideLeftNew");
				}
				else if (delta < 0) {
					daysContainer.firstChild.classList.add("slideRightNew");
					daysContainer.lastChild.classList.add("slideRight");
					self.oldCurMonth.classList.add("slideRight");
					self.navigationCurrentMonth.classList.add("slideRightNew");
				}
			}
			self.currentMonthElement = self.navigationCurrentMonth
				.firstChild;
			self.currentYearElement = self.navigationCurrentMonth.lastChild
				.childNodes[0];
			updateNavigationCurrentMonth();
			if (self.oldCurMonth.firstChild)
				self.oldCurMonth.firstChild.textContent = monthToStr(self.currentMonth - delta, self.config.shorthandCurrentMonth, self.l10n);
			afterDayAnim(function () { return triggerEvent("onMonthChange"); });
			if (from_keyboard &&
				document.activeElement &&
				document.activeElement.$i) {
				var index_1 = document.activeElement.$i;
				afterDayAnim(function () {
					focusOnDay(index_1, 0);
				});
			}
		}
		function clear(triggerChangeEvent) {
			if (triggerChangeEvent === void 0) { triggerChangeEvent = true; }
			self.input.value = "";
			if (self.altInput)
				self.altInput.value = "";
			if (self.mobileInput)
				self.mobileInput.value = "";
			self.selectedDates = [];
			self.latestSelectedDateObj = undefined;
			self.showTimeInput = false;
			self.redraw();
			if (triggerChangeEvent)
				triggerEvent("onChange");
		}
		function close() {
			self.isOpen = false;
			if (!self.isMobile) {
				self.calendarContainer.classList.remove("open");
				self._input.classList.remove("active");
			}
			triggerEvent("onClose");
		}
		function destroy() {
			if (self.config !== undefined)
				triggerEvent("onDestroy");
			for (var i = self._handlers.length; i--;) {
				var h = self._handlers[i];
				h.element.removeEventListener(h.event, h.handler);
			}
			self._handlers = [];
			if (self.mobileInput) {
				if (self.mobileInput.parentNode)
					self.mobileInput.parentNode.removeChild(self.mobileInput);
				self.mobileInput = undefined;
			}
			else if (self.calendarContainer && self.calendarContainer.parentNode)
				self.calendarContainer.parentNode.removeChild(self.calendarContainer);
			if (self.altInput) {
				self.input.type = "text";
				if (self.altInput.parentNode)
					self.altInput.parentNode.removeChild(self.altInput);
				delete self.altInput;
			}
			if (self.input) {
				self.input.type = self.input._type;
				self.input.classList.remove("flatpickr-input");
				self.input.removeAttribute("readonly");
				self.input.value = "";
			}
			[
				"_showTimeInput",
				"latestSelectedDateObj",
				"_hideNextMonthArrow",
				"_hidePrevMonthArrow",
				"__hideNextMonthArrow",
				"__hidePrevMonthArrow",
				"isMobile",
				"isOpen",
				"selectedDateElem",
				"minDateHasTime",
				"maxDateHasTime",
				"days",
				"daysContainer",
				"_input",
				"_positionElement",
				"innerContainer",
				"rContainer",
				"monthNav",
				"todayDateElem",
				"calendarContainer",
				"weekdayContainer",
				"prevMonthNav",
				"nextMonthNav",
				"currentMonthElement",
				"currentYearElement",
				"navigationCurrentMonth",
				"selectedDateElem",
				"config",
			].forEach(function (k) {
				try {
					delete self[k];
				}
				catch (_) { }
			});
		}
		function isCalendarElem(elem) {
			if (self.config.appendTo && self.config.appendTo.contains(elem))
				return true;
			return self.calendarContainer.contains(elem);
		}
		function documentClick(e) {
			if (self.isOpen && !self.config.inline) {
				var isCalendarElement = isCalendarElem(e.target);
				var isInput = e.target === self.input ||
					e.target === self.altInput ||
					self.element.contains(e.target) ||
					(e.path &&
						e.path.indexOf &&
						(~e.path.indexOf(self.input) ||
							~e.path.indexOf(self.altInput)));
				var lostFocus = e.type === "blur"
					? isInput &&
					e.relatedTarget &&
					!isCalendarElem(e.relatedTarget)
					: !isInput && !isCalendarElement;
				if (lostFocus &&
					self.config.ignoredFocusElements.indexOf(e.target) === -1) {
					self.close();
					if (self.config.mode === "range" && self.selectedDates.length === 1) {
						self.clear(false);
						self.redraw();
					}
				}
			}
		}
		function changeYear(newYear) {
			if (!newYear ||
				(self.currentYearElement.min &&
					newYear < parseInt(self.currentYearElement.min)) ||
				(self.currentYearElement.max &&
					newYear > parseInt(self.currentYearElement.max)))
				return;
			var newYearNum = newYear, isNewYear = self.currentYear !== newYearNum;
			self.currentYear = newYearNum || self.currentYear;
			if (self.config.maxDate &&
				self.currentYear === self.config.maxDate.getFullYear()) {
				self.currentMonth = Math.min(self.config.maxDate.getMonth(), self.currentMonth);
			}
			else if (self.config.minDate &&
				self.currentYear === self.config.minDate.getFullYear()) {
				self.currentMonth = Math.max(self.config.minDate.getMonth(), self.currentMonth);
			}
			if (isNewYear) {
				self.redraw();
				triggerEvent("onYearChange");
			}
		}
		function isEnabled(date, timeless) {
			if (timeless === void 0) { timeless = true; }
			var dateToCheck = self.parseDate(date, undefined, timeless);
			if ((self.config.minDate &&
					dateToCheck &&
					compareDates(dateToCheck, self.config.minDate, timeless !== undefined ? timeless : !self.minDateHasTime) < 0) ||
				(self.config.maxDate &&
					dateToCheck &&
					compareDates(dateToCheck, self.config.maxDate, timeless !== undefined ? timeless : !self.maxDateHasTime) > 0))
				return false;
			if (!self.config.enable.length && !self.config.disable.length)
				return true;
			if (dateToCheck === undefined)
				return false;
			var bool = self.config.enable.length > 0, array = bool ? self.config.enable : self.config.disable;
			for (var i = 0, d = void 0; i < array.length; i++) {
				d = array[i];
				if (typeof d === "function" &&
					d(dateToCheck))
					return bool;
				else if (d instanceof Date &&
					dateToCheck !== undefined &&
					d.getTime() === dateToCheck.getTime())
					return bool;
				else if (typeof d === "string" && dateToCheck !== undefined) {
					var parsed = self.parseDate(d, undefined, true);
					return parsed && parsed.getTime() === dateToCheck.getTime()
						? bool
						: !bool;
				}
				else if (typeof d === "object" &&
					dateToCheck !== undefined &&
					d.from &&
					d.to &&
					dateToCheck.getTime() >= d.from.getTime() &&
					dateToCheck.getTime() <= d.to.getTime())
					return bool;
			}
			return !bool;
		}
		function onKeyDown(e) {
			var isInput = e.target === self._input;
			var calendarElem = isCalendarElem(e.target);
			var allowInput = self.config.allowInput;
			var allowKeydown = self.isOpen && (!allowInput || !isInput);
			var allowInlineKeydown = self.config.inline && isInput && !allowInput;
			if (e.key === "Enter" && isInput) {
				if (allowInput) {
					self.setDate(self._input.value, true, e.target === self.altInput
						? self.config.altFormat
						: self.config.dateFormat);
					return e.target.blur();
				}
				else
					self.open();
			}
			else if (calendarElem || allowKeydown || allowInlineKeydown) {
				var isTimeObj = !!self.timeContainer &&
					self.timeContainer.contains(e.target);
				switch (e.key) {
					case "Enter":
						if (isTimeObj)
							updateValue();
						else
							selectDate(e);
						break;
					case "Escape":
						e.preventDefault();
						self.close();
						break;
					case "Backspace":
					case "Delete":
						if (isInput && !self.config.allowInput)
							self.clear();
						break;
					case "ArrowLeft":
					case "ArrowRight":
						if (!isTimeObj) {
							e.preventDefault();
							if (self.daysContainer) {
								var delta_1 = e.key === "ArrowRight" ? 1 : -1;
								if (!e.ctrlKey)
									focusOnDay(e.target.$i, delta_1);
								else
									changeMonth(delta_1, true, undefined, true);
							}
						}
						else if (self.hourElement)
							self.hourElement.focus();
						break;
					case "ArrowUp":
					case "ArrowDown":
						e.preventDefault();
						var delta = e.key === "ArrowDown" ? 1 : -1;
						if (self.daysContainer && e.target.$i !== undefined) {
							if (e.ctrlKey) {
								changeYear(self.currentYear - delta);
								focusOnDay(e.target.$i, 0);
							}
							else if (!isTimeObj)
								focusOnDay(e.target.$i, delta * 7);
						}
						else if (self.config.enableTime) {
							if (!isTimeObj && self.hourElement)
								self.hourElement.focus();
							updateTime(e);
							self._debouncedChange();
						}
						break;
					case "Tab":
						if (e.target === self.hourElement) {
							e.preventDefault();
							self.minuteElement.select();
						}
						else if (e.target === self.minuteElement &&
							(self.secondElement || self.amPM)) {
							e.preventDefault();
							if (self.secondElement !== undefined)
								self.secondElement.focus();
							else if (self.amPM !== undefined)
								self.amPM.focus();
						}
						else if (e.target === self.secondElement && self.amPM) {
							e.preventDefault();
							self.amPM.focus();
						}
						break;
					case self.l10n.amPM[0].charAt(0):
						if (self.amPM !== undefined && e.target === self.amPM) {
							self.amPM.textContent = self.l10n.amPM[0];
							setHoursFromInputs();
							updateValue();
						}
						break;
					case self.l10n.amPM[1].charAt(0):
						if (self.amPM !== undefined && e.target === self.amPM) {
							self.amPM.textContent = self.l10n.amPM[1];
							setHoursFromInputs();
							updateValue();
						}
						break;
					default:
						break;
				}
				triggerEvent("onKeyDown", e);
			}
		}
		function onMouseOver(elem) {
			if (self.selectedDates.length !== 1 ||
				!elem.classList.contains("flatpickr-day") ||
				self.minRangeDate === undefined ||
				self.maxRangeDate === undefined)
				return;
			var hoverDate = elem.dateObj, initialDate = self.parseDate(self.selectedDates[0], undefined, true), rangeStartDate = Math.min(hoverDate.getTime(), self.selectedDates[0].getTime()), rangeEndDate = Math.max(hoverDate.getTime(), self.selectedDates[0].getTime()), containsDisabled = false;
			for (var t = rangeStartDate; t < rangeEndDate; t += duration.DAY) {
				if (!isEnabled(new Date(t))) {
					containsDisabled = true;
					break;
				}
			}
			var _loop_1 = function (i, date) {
				var timestamp = date.getTime();
				var outOfRange = timestamp < self.minRangeDate.getTime() ||
					timestamp > self.maxRangeDate.getTime(), dayElem = self.days.childNodes[i];
				if (outOfRange) {
					dayElem.classList.add("notAllowed");
					["inRange", "startRange", "endRange"].forEach(function (c) {
						dayElem.classList.remove(c);
					});
					return "continue";
				}
				else if (containsDisabled && !outOfRange)
					return "continue";
				["startRange", "inRange", "endRange", "notAllowed"].forEach(function (c) {
					dayElem.classList.remove(c);
				});
				var minRangeDate = Math.max(self.minRangeDate.getTime(), rangeStartDate), maxRangeDate = Math.min(self.maxRangeDate.getTime(), rangeEndDate);
				elem.classList.add(hoverDate < self.selectedDates[0] ? "startRange" : "endRange");
				if (initialDate < hoverDate && timestamp === initialDate.getTime())
					dayElem.classList.add("startRange");
				else if (initialDate > hoverDate && timestamp === initialDate.getTime())
					dayElem.classList.add("endRange");
				if (timestamp >= minRangeDate && timestamp <= maxRangeDate)
					dayElem.classList.add("inRange");
			};
			for (var i = 0, date = self.days.childNodes[i].dateObj; i < 42; i++, date =
				self.days.childNodes[i] &&
				self.days.childNodes[i].dateObj) {
				_loop_1(i, date);
			}
		}
		function onResize() {
			if (self.isOpen && !self.config.static && !self.config.inline)
				positionCalendar();
		}
		function open(e, positionElement) {
			if (positionElement === void 0) { positionElement = self._input; }
			if (self.isMobile) {
				if (e) {
					e.preventDefault();
					e.target && e.target.blur();
				}
				setTimeout(function () {
					self.mobileInput !== undefined && self.mobileInput.click();
				}, 0);
				triggerEvent("onOpen");
				return;
			}
			if (self._input.disabled || self.config.inline)
				return;
			var wasOpen = self.isOpen;
			self.isOpen = true;
			positionCalendar(positionElement);
			self.calendarContainer.classList.add("open");
			self._input.classList.add("active");
			!wasOpen && triggerEvent("onOpen");
		}
		function minMaxDateSetter(type) {
			return function (date) {
				var dateObj = (self.config["_" + type + "Date"] = self.parseDate(date));
				var inverseDateObj = self.config["_" + (type === "min" ? "max" : "min") + "Date"];
				if (dateObj !== undefined) {
					self[type === "min" ? "minDateHasTime" : "maxDateHasTime"] =
						dateObj.getHours() > 0 ||
						dateObj.getMinutes() > 0 ||
						dateObj.getSeconds() > 0;
				}
				if (self.selectedDates) {
					self.selectedDates = self.selectedDates.filter(function (d) { return isEnabled(d); });
					if (!self.selectedDates.length && type === "min")
						setHoursFromDate(dateObj);
					updateValue();
				}
				if (self.daysContainer) {
					redraw();
					if (dateObj !== undefined)
						self.currentYearElement[type] = dateObj.getFullYear().toString();
					else
						self.currentYearElement.removeAttribute(type);
					self.currentYearElement.disabled =
						!!inverseDateObj &&
						dateObj !== undefined &&
						inverseDateObj.getFullYear() === dateObj.getFullYear();
				}
			};
		}
		function parseConfig() {
			var boolOpts = [
				"wrap",
				"weekNumbers",
				"allowInput",
				"clickOpens",
				"time_24hr",
				"enableTime",
				"noCalendar",
				"altInput",
				"shorthandCurrentMonth",
				"inline",
				"static",
				"enableSeconds",
				"disableMobile",
			];
			var hooks = [
				"onChange",
				"onClose",
				"onDayCreate",
				"onDestroy",
				"onKeyDown",
				"onMonthChange",
				"onOpen",
				"onParseConfig",
				"onReady",
				"onValueUpdate",
				"onYearChange",
			];
			self.config = __assign({}, flatpickr.defaultConfig);
			var userConfig = __assign({}, instanceConfig, JSON.parse(JSON.stringify(element.dataset || {})));
			var formats$$1 = {};
			Object.defineProperty(self.config, "enable", {
				get: function () { return self.config._enable || []; },
				set: function (dates) {
					self.config._enable = parseDateRules(dates);
				},
			});
			Object.defineProperty(self.config, "disable", {
				get: function () { return self.config._disable || []; },
				set: function (dates) {
					self.config._disable = parseDateRules(dates);
				},
			});
			if (!userConfig.dateFormat && userConfig.enableTime) {
				formats$$1.dateFormat = userConfig.noCalendar
					? "H:i" + (userConfig.enableSeconds ? ":S" : "")
					: flatpickr.defaultConfig.dateFormat +
					" H:i" +
					(userConfig.enableSeconds ? ":S" : "");
			}
			if (userConfig.altInput && userConfig.enableTime && !userConfig.altFormat) {
				formats$$1.altFormat = userConfig.noCalendar
					? "h:i" + (userConfig.enableSeconds ? ":S K" : " K")
					: flatpickr.defaultConfig.altFormat +
					(" h:i" + (userConfig.enableSeconds ? ":S" : "") + " K");
			}
			Object.defineProperty(self.config, "minDate", {
				get: function () { return self.config._minDate; },
				set: minMaxDateSetter("min"),
			});
			Object.defineProperty(self.config, "maxDate", {
				get: function () { return self.config._maxDate; },
				set: minMaxDateSetter("max"),
			});
			Object.assign(self.config, formats$$1, userConfig);
			for (var i = 0; i < boolOpts.length; i++)
				self.config[boolOpts[i]] =
					self.config[boolOpts[i]] === true ||
					self.config[boolOpts[i]] === "true";
			for (var i = hooks.length; i--;) {
				if (self.config[hooks[i]] !== undefined) {
					self.config[hooks[i]] = arrayify(self.config[hooks[i]] || []).map(bindToInstance);
				}
			}
			for (var i = 0; i < self.config.plugins.length; i++) {
				var pluginConf = self.config.plugins[i](self) || {};
				for (var key in pluginConf) {
					if (~hooks.indexOf(key)) {
						self.config[key] = arrayify(pluginConf[key])
							.map(bindToInstance)
							.concat(self.config[key]);
					}
					else if (typeof userConfig[key] === "undefined")
						self.config[key] = pluginConf[key];
				}
			}
			self.isMobile =
				!self.config.disableMobile &&
				!self.config.inline &&
				self.config.mode === "single" &&
				!self.config.disable.length &&
				!self.config.enable.length &&
				!self.config.weekNumbers &&
				/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);
			triggerEvent("onParseConfig");
		}
		function setupLocale() {
			if (typeof self.config.locale !== "object" &&
				typeof flatpickr.l10ns[self.config.locale] === "undefined")
				self.config.errorHandler(new Error("flatpickr: invalid locale " + self.config.locale));
			self.l10n = __assign({}, flatpickr.l10ns.default, typeof self.config.locale === "object"
				? self.config.locale
				: self.config.locale !== "default"
					? flatpickr.l10ns[self.config.locale]
					: undefined);
			tokenRegex.K = "(" + self.l10n.amPM[0] + "|" + self.l10n.amPM[1] + "|" + self.l10n.amPM[0].toLowerCase() + "|" + self.l10n.amPM[1].toLowerCase() + ")";
		}
		function positionCalendar(positionElement) {
			if (positionElement === void 0) { positionElement = self._positionElement; }
			if (self.calendarContainer === undefined)
				return;
			var calendarHeight = self.calendarContainer.offsetHeight, calendarWidth = self.calendarContainer.offsetWidth, configPos = self.config.position, inputBounds = positionElement.getBoundingClientRect(), distanceFromBottom = window.innerHeight - inputBounds.bottom, showOnTop = configPos === "above" ||
				(configPos !== "below" &&
					distanceFromBottom < calendarHeight &&
					inputBounds.top > calendarHeight);
			var top = window.pageYOffset +
				inputBounds.top +
				(!showOnTop ? positionElement.offsetHeight + 2 : -calendarHeight - 2);
			toggleClass(self.calendarContainer, "arrowTop", !showOnTop);
			toggleClass(self.calendarContainer, "arrowBottom", showOnTop);
			if (self.config.inline)
				return;
			var left = window.pageXOffset + inputBounds.left;
			var right = window.document.body.offsetWidth - inputBounds.right;
			var rightMost = left + calendarWidth > window.document.body.offsetWidth;
			toggleClass(self.calendarContainer, "rightMost", rightMost);
			if (self.config.static)
				return;
			self.calendarContainer.style.top = top + "px";
			if (!rightMost) {
				self.calendarContainer.style.left = left + "px";
				self.calendarContainer.style.right = "auto";
			}
			else {
				self.calendarContainer.style.left = "auto";
				self.calendarContainer.style.right = right + "px";
			}
		}
		function redraw() {
			if (self.config.noCalendar || self.isMobile)
				return;
			buildWeekdays();
			updateNavigationCurrentMonth();
			buildDays();
		}
		function selectDate(e) {
			e.preventDefault();
			e.stopPropagation();
			var isSelectable = function (day) {
				return day.classList &&
					day.classList.contains("flatpickr-day") &&
					!day.classList.contains("disabled") &&
					!day.classList.contains("notAllowed");
			};
			var t = findParent(e.target, isSelectable);
			if (t === undefined)
				return;
			var target = t;
			var selectedDate = (self.latestSelectedDateObj = new Date(target.dateObj.getTime()));
			var shouldChangeMonth = selectedDate.getMonth() !== self.currentMonth &&
				self.config.mode !== "range";
			self.selectedDateElem = target;
			if (self.config.mode === "single")
				self.selectedDates = [selectedDate];
			else if (self.config.mode === "multiple") {
				var selectedIndex = isDateSelected(selectedDate);
				if (selectedIndex)
					self.selectedDates.splice(parseInt(selectedIndex), 1);
				else
					self.selectedDates.push(selectedDate);
			}
			else if (self.config.mode === "range") {
				if (self.selectedDates.length === 2)
					self.clear();
				self.selectedDates.push(selectedDate);
				if (compareDates(selectedDate, self.selectedDates[0], true) !== 0)
					self.selectedDates.sort(function (a, b) { return a.getTime() - b.getTime(); });
			}
			setHoursFromInputs();
			if (shouldChangeMonth) {
				var isNewYear = self.currentYear !== selectedDate.getFullYear();
				self.currentYear = selectedDate.getFullYear();
				self.currentMonth = selectedDate.getMonth();
				if (isNewYear)
					triggerEvent("onYearChange");
				triggerEvent("onMonthChange");
			}
			buildDays();
			if (self.config.minDate &&
				self.minDateHasTime &&
				self.config.enableTime &&
				compareDates(selectedDate, self.config.minDate) === 0)
				setHoursFromDate(self.config.minDate);
			updateValue();
			if (self.config.enableTime)
				setTimeout(function () { return (self.showTimeInput = true); }, 50);
			if (self.config.mode === "range") {
				if (self.selectedDates.length === 1) {
					onMouseOver(target);
					self._hidePrevMonthArrow =
						self._hidePrevMonthArrow ||
						(self.minRangeDate !== undefined &&
							self.minRangeDate >
							self.days.childNodes[0].dateObj);
					self._hideNextMonthArrow =
						self._hideNextMonthArrow ||
						(self.maxRangeDate !== undefined &&
							self.maxRangeDate <
							new Date(self.currentYear, self.currentMonth + 1, 1));
				}
				else
					updateNavigationCurrentMonth();
			}
			triggerEvent("onChange");
			if (!shouldChangeMonth)
				focusOnDay(target.$i, 0);
			else
				afterDayAnim(function () { return self.selectedDateElem && self.selectedDateElem.focus(); });
			if (self.hourElement !== undefined)
				setTimeout(function () { return self.hourElement !== undefined && self.hourElement.select(); }, 451);
			if (self.config.closeOnSelect) {
				var single = self.config.mode === "single" && !self.config.enableTime;
				var range = self.config.mode === "range" &&
					self.selectedDates.length === 2 &&
					!self.config.enableTime;
				if (single || range)
					self.close();
			}
		}
		function set(option, value) {
			if (option !== null && typeof option === "object")
				Object.assign(self.config, option);
			else
				self.config[option] = value;
			self.redraw();
			jumpToDate();
		}
		function setSelectedDate(inputDate, format) {
			var dates = [];
			if (inputDate instanceof Array)
				dates = inputDate.map(function (d) { return self.parseDate(d, format); });
			else if (inputDate instanceof Date || typeof inputDate === "number")
				dates = [self.parseDate(inputDate, format)];
			else if (typeof inputDate === "string") {
				switch (self.config.mode) {
					case "single":
						dates = [self.parseDate(inputDate, format)];
						break;
					case "multiple":
						dates = inputDate
							.split(self.config.conjunction)
							.map(function (date) { return self.parseDate(date, format); });
						break;
					case "range":
						dates = inputDate
							.split(self.l10n.rangeSeparator)
							.map(function (date) { return self.parseDate(date, format); });
						break;
					default:
						break;
				}
			}
			else
				self.config.errorHandler(new Error("Invalid date supplied: " + JSON.stringify(inputDate)));
			self.selectedDates = dates.filter(function (d) { return d instanceof Date && isEnabled(d, false); });
			self.selectedDates.sort(function (a, b) { return a.getTime() - b.getTime(); });
		}
		function setDate(date, triggerChange, format) {
			if (triggerChange === void 0) { triggerChange = false; }
			if (date !== 0 && !date)
				return self.clear(triggerChange);
			setSelectedDate(date, format);
			self.showTimeInput = self.selectedDates.length > 0;
			self.latestSelectedDateObj = self.selectedDates[0];
			self.redraw();
			jumpToDate();
			setHoursFromDate();
			updateValue(triggerChange);
			if (triggerChange)
				triggerEvent("onChange");
		}
		function parseDateRules(arr) {
			return arr
				.map(function (rule) {
					if (typeof rule === "string" ||
						typeof rule === "number" ||
						rule instanceof Date) {
						return self.parseDate(rule, undefined, true);
					}
					else if (rule &&
						typeof rule === "object" &&
						rule.from &&
						rule.to)
						return {
							from: self.parseDate(rule.from, undefined),
							to: self.parseDate(rule.to, undefined),
						};
					return rule;
				})
				.filter(function (x) { return x; });
		}
		function setupDates() {
			self.selectedDates = [];
			self.now = new Date();
			var preloadedDate = self.config.defaultDate || self.input.value;
			if (preloadedDate)
				setSelectedDate(preloadedDate, self.config.dateFormat);
			var initialDate = self.selectedDates.length
				? self.selectedDates[0]
				: self.config.minDate &&
				self.config.minDate.getTime() > self.now.getTime()
					? self.config.minDate
					: self.config.maxDate &&
					self.config.maxDate.getTime() < self.now.getTime()
						? self.config.maxDate
						: self.now;
			self.currentYear = initialDate.getFullYear();
			self.currentMonth = initialDate.getMonth();
			if (self.selectedDates.length)
				self.latestSelectedDateObj = self.selectedDates[0];
			self.minDateHasTime =
				!!self.config.minDate &&
				(self.config.minDate.getHours() > 0 ||
					self.config.minDate.getMinutes() > 0 ||
					self.config.minDate.getSeconds() > 0);
			self.maxDateHasTime =
				!!self.config.maxDate &&
				(self.config.maxDate.getHours() > 0 ||
					self.config.maxDate.getMinutes() > 0 ||
					self.config.maxDate.getSeconds() > 0);
			Object.defineProperty(self, "showTimeInput", {
				get: function () { return self._showTimeInput; },
				set: function (bool) {
					self._showTimeInput = bool;
					if (self.calendarContainer)
						toggleClass(self.calendarContainer, "showTimeInput", bool);
					positionCalendar();
				},
			});
		}
		function formatDate(dateObj, frmt) {
			if (self.config !== undefined && self.config.formatDate !== undefined)
				return self.config.formatDate(dateObj, frmt);
			return frmt
				.split("")
				.map(function (c, i, arr) {
					return formats[c] && arr[i - 1] !== "\\"
						? formats[c](dateObj, self.l10n, self.config)
						: c !== "\\" ? c : "";
				})
				.join("");
		}
		function parseDate(date, givenFormat, timeless) {
			if (date !== 0 && !date)
				return undefined;
			var parsedDate;
			var date_orig = date;
			if (date instanceof Date)
				parsedDate = new Date(date.getTime());
			else if (typeof date !== "string" &&
				date.toFixed !== undefined)
				parsedDate = new Date(date);
			else if (typeof date === "string") {
				var format = givenFormat || (self.config || flatpickr.defaultConfig).dateFormat;
				var datestr = String(date).trim();
				if (datestr === "today") {
					parsedDate = new Date();
					timeless = true;
				}
				else if (/Z$/.test(datestr) ||
					/GMT$/.test(datestr))
					parsedDate = new Date(date);
				else if (self.config && self.config.parseDate)
					parsedDate = self.config.parseDate(date, format);
				else {
					parsedDate =
						!self.config || !self.config.noCalendar
							? new Date(new Date().getFullYear(), 0, 1, 0, 0, 0, 0)
							: new Date(new Date().setHours(0, 0, 0, 0));
					var matched = void 0, ops = [];
					for (var i = 0, matchIndex = 0, regexStr = ""; i < format.length; i++) {
						var token = format[i];
						var isBackSlash = token === "\\";
						var escaped = format[i - 1] === "\\" || isBackSlash;
						if (tokenRegex[token] && !escaped) {
							regexStr += tokenRegex[token];
							var match = new RegExp(regexStr).exec(date);
							if (match && (matched = true)) {
								ops[token !== "Y" ? "push" : "unshift"]({
									fn: revFormat[token],
									val: match[++matchIndex],
								});
							}
						}
						else if (!isBackSlash)
							regexStr += ".";
						ops.forEach(function (_a) {
							var fn = _a.fn, val = _a.val;
							return (parsedDate =
								fn(parsedDate, val, self.l10n) || parsedDate);
						});
					}
					parsedDate = matched ? parsedDate : undefined;
				}
			}
			if (!(parsedDate instanceof Date)) {
				self.config.errorHandler(new Error("Invalid date provided: " + date_orig));
				return undefined;
			}
			if (timeless === true)
				parsedDate.setHours(0, 0, 0, 0);
			return parsedDate;
		}
		function setupInputs() {
			self.input = self.config.wrap
				? element.querySelector("[data-input]")
				: element;
			if (!self.input) {
				self.config.errorHandler(new Error("Invalid input element specified"));
				return;
			}
			self.input._type = self.input.type;
			self.input.type = "text";
			self.input.classList.add("flatpickr-input");
			self._input = self.input;
			if (self.config.altInput) {
				self.altInput = createElement(self.input.nodeName, self.input.className + " " + self.config.altInputClass);
				self._input = self.altInput;
				self.altInput.placeholder = self.input.placeholder;
				self.altInput.disabled = self.input.disabled;
				self.altInput.required = self.input.required;
				self.altInput.type = "text";
				self.input.type = "hidden";
				if (!self.config.static && self.input.parentNode)
					self.input.parentNode.insertBefore(self.altInput, self.input.nextSibling);
			}
			if (!self.config.allowInput)
				self._input.setAttribute("readonly", "readonly");
			self._positionElement = self.config.positionElement || self._input;
		}
		function setupMobile() {
			var inputType = self.config.enableTime
				? self.config.noCalendar ? "time" : "datetime-local"
				: "date";
			self.mobileInput = createElement("input", self.input.className + " flatpickr-mobile");
			self.mobileInput.step = self.input.getAttribute("step") || "any";
			self.mobileInput.tabIndex = 1;
			self.mobileInput.type = inputType;
			self.mobileInput.disabled = self.input.disabled;
			self.mobileInput.placeholder = self.input.placeholder;
			self.mobileFormatStr =
				inputType === "datetime-local"
					? "Y-m-d\\TH:i:S"
					: inputType === "date" ? "Y-m-d" : "H:i:S";
			if (self.selectedDates.length) {
				self.mobileInput.defaultValue = self.mobileInput.value = self.formatDate(self.selectedDates[0], self.mobileFormatStr);
			}
			if (self.config.minDate)
				self.mobileInput.min = self.formatDate(self.config.minDate, "Y-m-d");
			if (self.config.maxDate)
				self.mobileInput.max = self.formatDate(self.config.maxDate, "Y-m-d");
			self.input.type = "hidden";
			if (self.altInput !== undefined)
				self.altInput.type = "hidden";
			try {
				if (self.input.parentNode)
					self.input.parentNode.insertBefore(self.mobileInput, self.input.nextSibling);
			}
			catch (_a) { }
			bind(self.mobileInput, "change", function (e) {
				self.setDate(e.target.value, false, self.mobileFormatStr);
				triggerEvent("onChange");
				triggerEvent("onClose");
			});
		}
		function toggle() {
			if (self.isOpen)
				return self.close();
			self.open();
		}
		function triggerEvent(event, data) {
			var hooks = self.config[event];
			if (hooks !== undefined && hooks.length > 0) {
				for (var i = 0; hooks[i] && i < hooks.length; i++)
					hooks[i](self.selectedDates, self.input.value, self, data);
			}
			if (event === "onChange") {
				self.input.dispatchEvent(createEvent("change"));
				self.input.dispatchEvent(createEvent("input"));
			}
		}
		function createEvent(name) {
			var e = document.createEvent("Event");
			e.initEvent(name, true, true);
			return e;
		}
		function isDateSelected(date) {
			for (var i = 0; i < self.selectedDates.length; i++) {
				if (compareDates(self.selectedDates[i], date) === 0)
					return "" + i;
			}
			return false;
		}
		function isDateInRange(date) {
			if (self.config.mode !== "range" || self.selectedDates.length < 2)
				return false;
			return (compareDates(date, self.selectedDates[0]) >= 0 &&
				compareDates(date, self.selectedDates[1]) <= 0);
		}
		function updateNavigationCurrentMonth() {
			if (self.config.noCalendar || self.isMobile || !self.monthNav)
				return;
			self.currentMonthElement.textContent =
				monthToStr(self.currentMonth, self.config.shorthandCurrentMonth, self.l10n) + " ";
			self.currentYearElement.value = self.currentYear.toString();
			self._hidePrevMonthArrow =
				self.config.minDate !== undefined &&
				(self.currentYear === self.config.minDate.getFullYear()
					? self.currentMonth <= self.config.minDate.getMonth()
					: self.currentYear < self.config.minDate.getFullYear());
			self._hideNextMonthArrow =
				self.config.maxDate !== undefined &&
				(self.currentYear === self.config.maxDate.getFullYear()
					? self.currentMonth + 1 > self.config.maxDate.getMonth()
					: self.currentYear > self.config.maxDate.getFullYear());
		}
		function updateValue(triggerChange) {
			if (triggerChange === void 0) { triggerChange = true; }
			if (!self.selectedDates.length)
				return self.clear(triggerChange);
			if (self.mobileInput !== undefined && self.mobileFormatStr) {
				self.mobileInput.value =
					self.latestSelectedDateObj !== undefined
						? self.formatDate(self.latestSelectedDateObj, self.mobileFormatStr)
						: "";
			}
			var joinChar = self.config.mode !== "range"
				? self.config.conjunction
				: self.l10n.rangeSeparator;
			self.input.value = self.selectedDates
				.map(function (dObj) { return self.formatDate(dObj, self.config.dateFormat); })
				.join(joinChar);
			if (self.altInput !== undefined) {
				self.altInput.value = self.selectedDates
					.map(function (dObj) { return self.formatDate(dObj, self.config.altFormat); })
					.join(joinChar);
			}
			if (triggerChange !== false)
				triggerEvent("onValueUpdate");
		}
		function onMonthNavScroll(e) {
			e.preventDefault();
			var isYear = self.currentYearElement.parentNode &&
				self.currentYearElement.parentNode.contains(e.target);
			if (e.target === self.currentMonthElement || isYear) {
				var delta = mouseDelta(e);
				if (isYear) {
					changeYear(self.currentYear + delta);
					e.target.value = self.currentYear.toString();
				}
				else
					self.changeMonth(delta, true, false);
			}
		}
		function onMonthNavClick(e) {
			var isPrevMonth = self.prevMonthNav.contains(e.target);
			var isNextMonth = self.nextMonthNav.contains(e.target);
			if (isPrevMonth || isNextMonth)
				changeMonth(isPrevMonth ? -1 : 1);
			else if (e.target === self.currentYearElement) {
				e.preventDefault();
				self.currentYearElement.select();
			}
			else if (e.target.className === "arrowUp")
				self.changeYear(self.currentYear + 1);
			else if (e.target.className === "arrowDown")
				self.changeYear(self.currentYear - 1);
		}
		function timeWrapper(e) {
			e.preventDefault();
			var isKeyDown = e.type === "keydown", input = e.target;
			if (self.amPM !== undefined && e.target === self.amPM) {
				self.amPM.textContent =
					self.l10n.amPM[int(self.amPM.textContent === self.l10n.amPM[0])];
			}
			var min = Number(input.min), max = Number(input.max), step = Number(input.step), curValue = parseInt(input.value, 10), delta = e.delta ||
				(isKeyDown
					? e.which === 38 ? 1 : -1
					: Math.max(-1, Math.min(1, e.wheelDelta || -e.deltaY)) || 0);
			var newValue = curValue + step * delta;
			if (typeof input.value !== "undefined" && input.value.length === 2) {
				var isHourElem = input === self.hourElement, isMinuteElem = input === self.minuteElement;
				if (newValue < min) {
					newValue =
						max +
						newValue +
						int(!isHourElem) +
						(int(isHourElem) && int(!self.amPM));
					if (isMinuteElem)
						incrementNumInput(undefined, -1, self.hourElement);
				}
				else if (newValue > max) {
					newValue =
						input === self.hourElement ? newValue - max - int(!self.amPM) : min;
					if (isMinuteElem)
						incrementNumInput(undefined, 1, self.hourElement);
				}
				if (self.amPM &&
					isHourElem &&
					(step === 1
						? newValue + curValue === 23
						: Math.abs(newValue - curValue) > step)) {
					self.amPM.textContent =
						self.l10n.amPM[int(self.amPM.textContent === self.l10n.amPM[0])];
				}
				input.value = pad(newValue);
			}
		}
		init();
		return self;
	}
	function _flatpickr(nodeList, config) {
		var nodes = Array.prototype.slice.call(nodeList);
		var instances = [];
		for (var i = 0; i < nodes.length; i++) {
			var node = nodes[i];
			try {
				if (node.getAttribute("data-fp-omit") !== null)
					continue;
				if (node._flatpickr !== undefined) {
					node._flatpickr.destroy();
					node._flatpickr = undefined;
				}
				node._flatpickr = FlatpickrInstance(node, config || {});
				instances.push(node._flatpickr);
			}
			catch (e) {
				console.error(e);
			}
		}
		return instances.length === 1 ? instances[0] : instances;
	}
	if (typeof HTMLElement !== "undefined") {
		HTMLCollection.prototype.flatpickr = NodeList.prototype.flatpickr = function (config) {
			return _flatpickr(this, config);
		};
		HTMLElement.prototype.flatpickr = function (config) {
			return _flatpickr([this], config);
		};
	}
	var flatpickr;
	flatpickr = function (selector, config) {
		if (selector instanceof NodeList)
			return _flatpickr(selector, config);
		else if (typeof selector === "string")
			return _flatpickr(window.document.querySelectorAll(selector), config);
		return _flatpickr([selector], config);
	};
	if (typeof window === "object")
		window.flatpickr = flatpickr;
	flatpickr.defaultConfig = defaults;
	flatpickr.l10ns = {
		en: __assign({}, english),
		default: __assign({}, english),
	};
	flatpickr.localize = function (l10n) {
		flatpickr.l10ns.default = __assign({}, flatpickr.l10ns.default, l10n);
	};
	flatpickr.setDefaults = function (config) {
		flatpickr.defaultConfig = __assign({}, flatpickr.defaultConfig, config);
	};
	if (typeof jQuery !== "undefined") {
		jQuery.fn.flatpickr = function (config) {
			return _flatpickr(this, config);
		};
	}
	Date.prototype.fp_incr = function (days) {
		return new Date(this.getFullYear(), this.getMonth(), this.getDate() + (typeof days === "string" ? parseInt(days, 10) : days));
	};
	var flatpickr$1 = flatpickr;

	return flatpickr$1;

})));assets/lib/flatpickr/flatpickr.css000064400000052174151327220410013272 0ustar00.flatpickr-calendar {
    background: transparent;
    overflow: hidden;
    max-height: 0;
    opacity: 0;
    visibility: hidden;
    text-align: center;
    padding: 0;
    -webkit-animation: none;
    animation: none;
    direction: ltr;
    border: 0;
    font-size: 14px;
    line-height: 24px;
    border-radius: 5px;
    position: absolute;
    width: 307.875px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    background: #fff;
    -webkit-box-shadow: 1px 0 0 #e6e6e6, -1px 0 0 #e6e6e6, 0 1px 0 #e6e6e6, 0 -1px 0 #e6e6e6, 0 3px 13px rgba(0,0,0,0.08);
    box-shadow: 1px 0 0 #e6e6e6, -1px 0 0 #e6e6e6, 0 1px 0 #e6e6e6, 0 -1px 0 #e6e6e6, 0 3px 13px rgba(0,0,0,0.08);
}
.flatpickr-calendar.open,
.flatpickr-calendar.inline {
    opacity: 1;
    visibility: visible;
    overflow: visible;
    max-height: 640px;
}
.flatpickr-calendar.open {
    display: inline-block;
    z-index: 99999;
}
.flatpickr-calendar.animate.open {
    -webkit-animation: fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1);
    animation: fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1);
}
.flatpickr-calendar.inline {
    display: block;
    position: relative;
    top: 2px;
}
.flatpickr-calendar.static {
    position: absolute;
    top: calc(100% + 2px);
}
.flatpickr-calendar.static.open {
    z-index: 999;
    display: block;
}
.flatpickr-calendar.hasWeeks {
    width: auto;
}
.flatpickr-calendar .hasWeeks .dayContainer,
.flatpickr-calendar .hasTime .dayContainer {
    border-bottom: 0;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}
.flatpickr-calendar .hasWeeks .dayContainer {
    border-left: 0;
}
.flatpickr-calendar.showTimeInput.hasTime .flatpickr-time {
    height: 40px;
    border-top: 1px solid #e6e6e6;
}
.flatpickr-calendar.noCalendar.hasTime .flatpickr-time {
    height: auto;
}
.flatpickr-calendar:before,
.flatpickr-calendar:after {
    position: absolute;
    display: block;
    pointer-events: none;
    border: solid transparent;
    content: '';
    height: 0;
    width: 0;
    left: 22px;
}
.flatpickr-calendar.rightMost:before,
.flatpickr-calendar.rightMost:after {
    left: auto;
    right: 22px;
}
.flatpickr-calendar:before {
    border-width: 5px;
    margin: 0 -5px;
}
.flatpickr-calendar:after {
    border-width: 4px;
    margin: 0 -4px;
}
.flatpickr-calendar.arrowTop:before,
.flatpickr-calendar.arrowTop:after {
    bottom: 100%;
}
.flatpickr-calendar.arrowTop:before {
    border-bottom-color: #e6e6e6;
}
.flatpickr-calendar.arrowTop:after {
    border-bottom-color: #fff;
}
.flatpickr-calendar.arrowBottom:before,
.flatpickr-calendar.arrowBottom:after {
    top: 100%;
}
.flatpickr-calendar.arrowBottom:before {
    border-top-color: #e6e6e6;
}
.flatpickr-calendar.arrowBottom:after {
    border-top-color: #fff;
}
.flatpickr-calendar:focus {
    outline: 0;
}
.flatpickr-wrapper {
    position: relative;
    display: inline-block;
}
.flatpickr-month {
    background: transparent;
    color: rgba(0,0,0,0.9);
    fill: rgba(0,0,0,0.9);
    height: 28px;
    line-height: 1;
    text-align: center;
    position: relative;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    overflow: hidden;
}
.flatpickr-prev-month,
.flatpickr-next-month {
    text-decoration: none;
    cursor: pointer;
    position: absolute;
    top: 0px;
    line-height: 16px;
    height: 28px;
    padding: 10px calc(3.57% - 1.5px);
    z-index: 3;
}
.flatpickr-prev-month i,
.flatpickr-next-month i {
    position: relative;
}
.flatpickr-prev-month.flatpickr-prev-month,
.flatpickr-next-month.flatpickr-prev-month {
    /*
            /*rtl:begin:ignore*/
    /*
            */
    left: 0;
    /*
            /*rtl:end:ignore*/
    /*
            */
}
/*
        /*rtl:begin:ignore*/
/*
        /*rtl:end:ignore*/
.flatpickr-prev-month.flatpickr-next-month,
.flatpickr-next-month.flatpickr-next-month {
    /*
            /*rtl:begin:ignore*/
    /*
            */
    right: 0;
    /*
            /*rtl:end:ignore*/
    /*
            */
}
/*
        /*rtl:begin:ignore*/
/*
        /*rtl:end:ignore*/
.flatpickr-prev-month:hover,
.flatpickr-next-month:hover {
    color: #959ea9;
}
.flatpickr-prev-month:hover svg,
.flatpickr-next-month:hover svg {
    fill: #f64747;
}
.flatpickr-prev-month svg,
.flatpickr-next-month svg {
    width: 14px;
}
.flatpickr-prev-month svg path,
.flatpickr-next-month svg path {
    -webkit-transition: fill 0.1s;
    transition: fill 0.1s;
    fill: inherit;
}
.numInputWrapper {
    position: relative;
    height: auto;
}
.numInputWrapper input,
.numInputWrapper span {
    display: inline-block;
}
.numInputWrapper input {
    width: 100%;
}
.numInputWrapper span {
    position: absolute;
    right: 0;
    width: 14px;
    padding: 0 4px 0 2px;
    height: 50%;
    line-height: 50%;
    opacity: 0;
    cursor: pointer;
    border: 1px solid rgba(57,57,57,0.05);
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.numInputWrapper span:hover {
    background: rgba(0,0,0,0.1);
}
.numInputWrapper span:active {
    background: rgba(0,0,0,0.2);
}
.numInputWrapper span:after {
    display: block;
    content: "";
    position: absolute;
    top: 33%;
}
.numInputWrapper span.arrowUp {
    top: 0;
    border-bottom: 0;
}
.numInputWrapper span.arrowUp:after {
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    border-bottom: 4px solid rgba(57,57,57,0.6);
}
.numInputWrapper span.arrowDown {
    top: 50%;
}
.numInputWrapper span.arrowDown:after {
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    border-top: 4px solid rgba(57,57,57,0.6);
}
.numInputWrapper span svg {
    width: inherit;
    height: auto;
}
.numInputWrapper span svg path {
    fill: rgba(0,0,0,0.5);
}
.numInputWrapper:hover {
    background: rgba(0,0,0,0.05);
}
.numInputWrapper:hover span {
    opacity: 1;
}
.flatpickr-current-month {
    font-size: 135%;
    line-height: inherit;
    font-weight: 300;
    color: inherit;
    position: absolute;
    width: 75%;
    left: 12.5%;
    padding: 6.16px 0 0 0;
    line-height: 1;
    height: 28px;
    display: inline-block;
    text-align: center;
    -webkit-transform: translate3d(0px, 0px, 0px);
    transform: translate3d(0px, 0px, 0px);
}
.flatpickr-current-month.slideLeft {
    -webkit-transform: translate3d(-100%, 0px, 0px);
    transform: translate3d(-100%, 0px, 0px);
    -webkit-animation: fpFadeOut 400ms ease, fpSlideLeft 400ms cubic-bezier(0.23, 1, 0.32, 1);
    animation: fpFadeOut 400ms ease, fpSlideLeft 400ms cubic-bezier(0.23, 1, 0.32, 1);
}
.flatpickr-current-month.slideLeftNew {
    -webkit-transform: translate3d(100%, 0px, 0px);
    transform: translate3d(100%, 0px, 0px);
    -webkit-animation: fpFadeIn 400ms ease, fpSlideLeftNew 400ms cubic-bezier(0.23, 1, 0.32, 1);
    animation: fpFadeIn 400ms ease, fpSlideLeftNew 400ms cubic-bezier(0.23, 1, 0.32, 1);
}
.flatpickr-current-month.slideRight {
    -webkit-transform: translate3d(100%, 0px, 0px);
    transform: translate3d(100%, 0px, 0px);
    -webkit-animation: fpFadeOut 400ms ease, fpSlideRight 400ms cubic-bezier(0.23, 1, 0.32, 1);
    animation: fpFadeOut 400ms ease, fpSlideRight 400ms cubic-bezier(0.23, 1, 0.32, 1);
}
.flatpickr-current-month.slideRightNew {
    -webkit-transform: translate3d(0, 0, 0px);
    transform: translate3d(0, 0, 0px);
    -webkit-animation: fpFadeIn 400ms ease, fpSlideRightNew 400ms cubic-bezier(0.23, 1, 0.32, 1);
    animation: fpFadeIn 400ms ease, fpSlideRightNew 400ms cubic-bezier(0.23, 1, 0.32, 1);
}
.flatpickr-current-month span.cur-month {
    font-family: inherit;
    font-weight: 700;
    color: inherit;
    display: inline-block;
    margin-left: 0.5ch;
    padding: 0;
}
.flatpickr-current-month span.cur-month:hover {
    background: rgba(0,0,0,0.05);
}
.flatpickr-current-month .numInputWrapper {
    width: 6ch;
    width: 7ch\0;
    display: inline-block;
}
.flatpickr-current-month .numInputWrapper span.arrowUp:after {
    border-bottom-color: rgba(0,0,0,0.9);
}
.flatpickr-current-month .numInputWrapper span.arrowDown:after {
    border-top-color: rgba(0,0,0,0.9);
}
.flatpickr-current-month input.cur-year {
    background: transparent;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    color: inherit;
    cursor: default;
    padding: 0 0 0 0.5ch;
    margin: 0;
    display: inline-block;
    font-size: inherit;
    font-family: inherit;
    font-weight: 300;
    line-height: inherit;
    height: initial;
    border: 0;
    border-radius: 0;
    vertical-align: initial;
}
.flatpickr-current-month input.cur-year:focus {
    outline: 0;
}
.flatpickr-current-month input.cur-year[disabled],
.flatpickr-current-month input.cur-year[disabled]:hover {
    font-size: 100%;
    color: rgba(0,0,0,0.5);
    background: transparent;
    pointer-events: none;
}
.flatpickr-weekdays {
    background: transparent;
    text-align: center;
    overflow: hidden;
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    height: 28px;
}
span.flatpickr-weekday {
    cursor: default;
    font-size: 90%;
    background: transparent;
    color: rgba(0,0,0,0.54);
    line-height: 1;
    margin: 0;
    text-align: center;
    display: block;
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    font-weight: bolder;
}
.dayContainer,
.flatpickr-weeks {
    padding: 1px 0 0 0;
}
.flatpickr-days {
    position: relative;
    overflow: hidden;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 307.875px;
}
.flatpickr-days:focus {
    outline: 0;
}
.dayContainer {
    padding: 0;
    outline: 0;
    text-align: left;
    width: 307.875px;
    min-width: 307.875px;
    max-width: 307.875px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: inline-block;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-around;
    justify-content: space-around;
    -webkit-transform: translate3d(0px, 0px, 0px);
    transform: translate3d(0px, 0px, 0px);
    opacity: 1;
}
.flatpickr-calendar.animate .dayContainer.slideLeft {
    -webkit-animation: fpFadeOut 400ms cubic-bezier(0.23, 1, 0.32, 1), fpSlideLeft 400ms cubic-bezier(0.23, 1, 0.32, 1);
    animation: fpFadeOut 400ms cubic-bezier(0.23, 1, 0.32, 1), fpSlideLeft 400ms cubic-bezier(0.23, 1, 0.32, 1);
}
.flatpickr-calendar.animate .dayContainer.slideLeft,
.flatpickr-calendar.animate .dayContainer.slideLeftNew {
    -webkit-transform: translate3d(-100%, 0px, 0px);
    transform: translate3d(-100%, 0px, 0px);
}
.flatpickr-calendar.animate .dayContainer.slideLeftNew {
    -webkit-animation: fpFadeIn 400ms cubic-bezier(0.23, 1, 0.32, 1), fpSlideLeft 400ms cubic-bezier(0.23, 1, 0.32, 1);
    animation: fpFadeIn 400ms cubic-bezier(0.23, 1, 0.32, 1), fpSlideLeft 400ms cubic-bezier(0.23, 1, 0.32, 1);
}
.flatpickr-calendar.animate .dayContainer.slideRight {
    -webkit-animation: fpFadeOut 400ms cubic-bezier(0.23, 1, 0.32, 1), fpSlideRight 400ms cubic-bezier(0.23, 1, 0.32, 1);
    animation: fpFadeOut 400ms cubic-bezier(0.23, 1, 0.32, 1), fpSlideRight 400ms cubic-bezier(0.23, 1, 0.32, 1);
    -webkit-transform: translate3d(100%, 0px, 0px);
    transform: translate3d(100%, 0px, 0px);
}
.flatpickr-calendar.animate .dayContainer.slideRightNew {
    -webkit-animation: fpFadeIn 400ms cubic-bezier(0.23, 1, 0.32, 1), fpSlideRightNew 400ms cubic-bezier(0.23, 1, 0.32, 1);
    animation: fpFadeIn 400ms cubic-bezier(0.23, 1, 0.32, 1), fpSlideRightNew 400ms cubic-bezier(0.23, 1, 0.32, 1);
}
.flatpickr-day {
    background: none;
    border: 1px solid transparent;
    border-radius: 150px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    color: #393939;
    cursor: pointer;
    font-weight: 400;
    width: 14.2857143%;
    -webkit-flex-basis: 14.2857143%;
    -ms-flex-preferred-size: 14.2857143%;
    flex-basis: 14.2857143%;
    max-width: 39px;
    height: 39px;
    line-height: 39px;
    margin: 0;
    display: inline-block;
    position: relative;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
}
.flatpickr-day.inRange,
.flatpickr-day.prevMonthDay.inRange,
.flatpickr-day.nextMonthDay.inRange,
.flatpickr-day.today.inRange,
.flatpickr-day.prevMonthDay.today.inRange,
.flatpickr-day.nextMonthDay.today.inRange,
.flatpickr-day:hover,
.flatpickr-day.prevMonthDay:hover,
.flatpickr-day.nextMonthDay:hover,
.flatpickr-day:focus,
.flatpickr-day.prevMonthDay:focus,
.flatpickr-day.nextMonthDay:focus {
    cursor: pointer;
    outline: 0;
    background: #e6e6e6;
    border-color: #e6e6e6;
}
.flatpickr-day.today {
    border-color: #959ea9;
}
.flatpickr-day.today:hover,
.flatpickr-day.today:focus {
    border-color: #959ea9;
    background: #959ea9;
    color: #fff;
}
.flatpickr-day.selected,
.flatpickr-day.startRange,
.flatpickr-day.endRange,
.flatpickr-day.selected.inRange,
.flatpickr-day.startRange.inRange,
.flatpickr-day.endRange.inRange,
.flatpickr-day.selected:focus,
.flatpickr-day.startRange:focus,
.flatpickr-day.endRange:focus,
.flatpickr-day.selected:hover,
.flatpickr-day.startRange:hover,
.flatpickr-day.endRange:hover,
.flatpickr-day.selected.prevMonthDay,
.flatpickr-day.startRange.prevMonthDay,
.flatpickr-day.endRange.prevMonthDay,
.flatpickr-day.selected.nextMonthDay,
.flatpickr-day.startRange.nextMonthDay,
.flatpickr-day.endRange.nextMonthDay {
    background: #569ff7;
    -webkit-box-shadow: none;
    box-shadow: none;
    color: #fff;
    border-color: #569ff7;
}
.flatpickr-day.selected.startRange,
.flatpickr-day.startRange.startRange,
.flatpickr-day.endRange.startRange {
    border-radius: 50px 0 0 50px;
}
.flatpickr-day.selected.endRange,
.flatpickr-day.startRange.endRange,
.flatpickr-day.endRange.endRange {
    border-radius: 0 50px 50px 0;
}
.flatpickr-day.selected.startRange + .endRange,
.flatpickr-day.startRange.startRange + .endRange,
.flatpickr-day.endRange.startRange + .endRange {
    -webkit-box-shadow: -10px 0 0 #569ff7;
    box-shadow: -10px 0 0 #569ff7;
}
.flatpickr-day.selected.startRange.endRange,
.flatpickr-day.startRange.startRange.endRange,
.flatpickr-day.endRange.startRange.endRange {
    border-radius: 50px;
}
.flatpickr-day.inRange {
    border-radius: 0;
    -webkit-box-shadow: -5px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;
    box-shadow: -5px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;
}
.flatpickr-day.disabled,
.flatpickr-day.disabled:hover {
    pointer-events: none;
}
.flatpickr-day.disabled,
.flatpickr-day.disabled:hover,
.flatpickr-day.prevMonthDay,
.flatpickr-day.nextMonthDay,
.flatpickr-day.notAllowed,
.flatpickr-day.notAllowed.prevMonthDay,
.flatpickr-day.notAllowed.nextMonthDay {
    color: rgba(57,57,57,0.3);
    background: transparent;
    border-color: transparent;
    cursor: default;
}
.flatpickr-day.week.selected {
    border-radius: 0;
    -webkit-box-shadow: -5px 0 0 #569ff7, 5px 0 0 #569ff7;
    box-shadow: -5px 0 0 #569ff7, 5px 0 0 #569ff7;
}
.rangeMode .flatpickr-day {
    margin-top: 1px;
}
.flatpickr-weekwrapper {
    display: inline-block;
    float: left;
}
.flatpickr-weekwrapper .flatpickr-weeks {
    padding: 0 12px;
    -webkit-box-shadow: 1px 0 0 #e6e6e6;
    box-shadow: 1px 0 0 #e6e6e6;
}
.flatpickr-weekwrapper .flatpickr-weekday {
    float: none;
    width: 100%;
    line-height: 28px;
}
.flatpickr-weekwrapper span.flatpickr-day {
    display: block;
    width: 100%;
    max-width: none;
}
.flatpickr-innerContainer {
    display: block;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    overflow: hidden;
}
.flatpickr-rContainer {
    display: inline-block;
    padding: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.flatpickr-time {
    text-align: center;
    outline: 0;
    display: block;
    height: 0;
    line-height: 40px;
    max-height: 40px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    overflow: hidden;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}
.flatpickr-time:after {
    content: "";
    display: table;
    clear: both;
}
.flatpickr-time .numInputWrapper {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    width: 40%;
    height: 40px;
    float: left;
}
.flatpickr-time .numInputWrapper span.arrowUp:after {
    border-bottom-color: #393939;
}
.flatpickr-time .numInputWrapper span.arrowDown:after {
    border-top-color: #393939;
}
.flatpickr-time.hasSeconds .numInputWrapper {
    width: 26%;
}
.flatpickr-time.time24hr .numInputWrapper {
    width: 49%;
}
.flatpickr-time input {
    background: transparent;
    -webkit-box-shadow: none;
    box-shadow: none;
    border: 0;
    border-radius: 0;
    text-align: center;
    margin: 0;
    padding: 0;
    height: inherit;
    line-height: inherit;
    cursor: pointer;
    color: #393939;
    font-size: 14px;
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.flatpickr-time input.flatpickr-hour {
    font-weight: bold;
}
.flatpickr-time input.flatpickr-minute,
.flatpickr-time input.flatpickr-second {
    font-weight: 400;
}
.flatpickr-time input:focus {
    outline: 0;
    border: 0;
}
.flatpickr-time .flatpickr-time-separator,
.flatpickr-time .flatpickr-am-pm {
    height: inherit;
    display: inline-block;
    float: left;
    line-height: inherit;
    color: #393939;
    font-weight: bold;
    width: 2%;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    align-self: center;
}
.flatpickr-time .flatpickr-am-pm {
    outline: 0;
    width: 18%;
    cursor: pointer;
    text-align: center;
    font-weight: 400;
}
.flatpickr-time .flatpickr-am-pm:hover,
.flatpickr-time .flatpickr-am-pm:focus {
    background: #f0f0f0;
}
.flatpickr-input[readonly] {
    cursor: pointer;
}
@-webkit-keyframes fpFadeInDown {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, -20px, 0);
        transform: translate3d(0, -20px, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}
@keyframes fpFadeInDown {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, -20px, 0);
        transform: translate3d(0, -20px, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}
@-webkit-keyframes fpSlideLeft {
    from {
        -webkit-transform: translate3d(0px, 0px, 0px);
        transform: translate3d(0px, 0px, 0px);
    }
    to {
        -webkit-transform: translate3d(-100%, 0px, 0px);
        transform: translate3d(-100%, 0px, 0px);
    }
}
@keyframes fpSlideLeft {
    from {
        -webkit-transform: translate3d(0px, 0px, 0px);
        transform: translate3d(0px, 0px, 0px);
    }
    to {
        -webkit-transform: translate3d(-100%, 0px, 0px);
        transform: translate3d(-100%, 0px, 0px);
    }
}
@-webkit-keyframes fpSlideLeftNew {
    from {
        -webkit-transform: translate3d(100%, 0px, 0px);
        transform: translate3d(100%, 0px, 0px);
    }
    to {
        -webkit-transform: translate3d(0px, 0px, 0px);
        transform: translate3d(0px, 0px, 0px);
    }
}
@keyframes fpSlideLeftNew {
    from {
        -webkit-transform: translate3d(100%, 0px, 0px);
        transform: translate3d(100%, 0px, 0px);
    }
    to {
        -webkit-transform: translate3d(0px, 0px, 0px);
        transform: translate3d(0px, 0px, 0px);
    }
}
@-webkit-keyframes fpSlideRight {
    from {
        -webkit-transform: translate3d(0, 0, 0px);
        transform: translate3d(0, 0, 0px);
    }
    to {
        -webkit-transform: translate3d(100%, 0px, 0px);
        transform: translate3d(100%, 0px, 0px);
    }
}
@keyframes fpSlideRight {
    from {
        -webkit-transform: translate3d(0, 0, 0px);
        transform: translate3d(0, 0, 0px);
    }
    to {
        -webkit-transform: translate3d(100%, 0px, 0px);
        transform: translate3d(100%, 0px, 0px);
    }
}
@-webkit-keyframes fpSlideRightNew {
    from {
        -webkit-transform: translate3d(-100%, 0, 0px);
        transform: translate3d(-100%, 0, 0px);
    }
    to {
        -webkit-transform: translate3d(0, 0, 0px);
        transform: translate3d(0, 0, 0px);
    }
}
@keyframes fpSlideRightNew {
    from {
        -webkit-transform: translate3d(-100%, 0, 0px);
        transform: translate3d(-100%, 0, 0px);
    }
    to {
        -webkit-transform: translate3d(0, 0, 0px);
        transform: translate3d(0, 0, 0px);
    }
}
@-webkit-keyframes fpFadeOut {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
    }
}
@keyframes fpFadeOut {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
    }
}
@-webkit-keyframes fpFadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}
@keyframes fpFadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}assets/lib/flatpickr/flatpickr.min.js000064400000125100151327220410013666 0ustar00/* flatpickr v4.1.4,, @license MIT */
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):e.flatpickr=t()}(this,function(){"use strict";function e(e,t,n){return!1!==n?new Date(e.getTime()).setHours(0,0,0,0)-new Date(t.getTime()).setHours(0,0,0,0):e.getTime()-t.getTime()}function t(e,t,n){void 0===n&&(n=!1);var a;return function(){var i=this,o=arguments;null!==a&&clearTimeout(a),a=window.setTimeout(function(){a=null,n||e.apply(i,o)},t),n&&!a&&e.apply(i,o)}}function n(e,t,n){if(!0===n)return e.classList.add(t);e.classList.remove(t)}function a(e,t,n){var a=window.document.createElement(e);return t=t||"",n=n||"",a.className=t,void 0!==n&&(a.textContent=n),a}function i(e,t){return t(e)?e:e.parentNode?i(e.parentNode,t):void 0}function o(e){var t=a("div","numInputWrapper"),n=a("input","numInput "+e),i=a("span","arrowUp"),o=a("span","arrowDown");return n.type="text",n.pattern="\\d*",t.appendChild(n),t.appendChild(i),t.appendChild(o),t}function r(r,s){for(var u=Array.prototype.slice.call(r),p=[],w=0;w<u.length;w++){var M=u[w];try{if(null!==M.getAttribute("data-fp-omit"))continue;void 0!==M._flatpickr&&(M._flatpickr.destroy(),M._flatpickr=void 0),M._flatpickr=function(r,s){function u(e){return e.bind(X)}function p(e){if(X.config.noCalendar&&0===X.selectedDates.length){var t=X.config.minDate;X.setDate((new Date).setHours(t?t.getHours():X.config.defaultHour,t?t.getMinutes():X.config.defaultMinute,t&&X.config.enableSeconds?t.getSeconds():X.config.defaultSeconds),!1),w(),Q()}!function(e){e.preventDefault();var t="keydown"===e.type,n=e.target;void 0!==X.amPM&&e.target===X.amPM&&(X.amPM.textContent=X.l10n.amPM[m(X.amPM.textContent===X.l10n.amPM[0])]);var a=Number(n.min),i=Number(n.max),o=Number(n.step),r=parseInt(n.value,10),l=e.delta||(t?38===e.which?1:-1:Math.max(-1,Math.min(1,e.wheelDelta||-e.deltaY))||0),c=r+o*l;if(void 0!==n.value&&2===n.value.length){var d=n===X.hourElement,s=n===X.minuteElement;c<a?(c=i+c+m(!d)+(m(d)&&m(!X.amPM)),s&&S(void 0,-1,X.hourElement)):c>i&&(c=n===X.hourElement?c-i-m(!X.amPM):a,s&&S(void 0,1,X.hourElement)),X.amPM&&d&&(1===o?c+r===23:Math.abs(c-r)>o)&&(X.amPM.textContent=X.l10n.amPM[m(X.amPM.textContent===X.l10n.amPM[0])]),n.value=f(c)}}(e),0!==X.selectedDates.length&&(!X.minDateHasTime||"input"!==e.type||e.target.value.length>=2?(w(),Q()):setTimeout(function(){w(),Q()},1e3))}function w(){if(void 0!==X.hourElement&&void 0!==X.minuteElement){var t=(parseInt(X.hourElement.value.slice(-2),10)||0)%24,n=(parseInt(X.minuteElement.value,10)||0)%60,a=void 0!==X.secondElement?(parseInt(X.secondElement.value,10)||0)%60:0;void 0!==X.amPM&&(t=function(e,t){return e%12+12*m(t===X.l10n.amPM[1])}(t,X.amPM.textContent)),X.config.minDate&&X.minDateHasTime&&X.latestSelectedDateObj&&0===e(X.latestSelectedDateObj,X.config.minDate)&&(t=Math.max(t,X.config.minDate.getHours()))===X.config.minDate.getHours()&&(n=Math.max(n,X.config.minDate.getMinutes())),X.config.maxDate&&X.maxDateHasTime&&X.latestSelectedDateObj&&0===e(X.latestSelectedDateObj,X.config.maxDate)&&(t=Math.min(t,X.config.maxDate.getHours()))===X.config.maxDate.getHours()&&(n=Math.min(n,X.config.maxDate.getMinutes())),b(t,n,a)}}function M(e){var t=e||X.latestSelectedDateObj;t&&b(t.getHours(),t.getMinutes(),t.getSeconds())}function b(e,t,n){void 0!==X.latestSelectedDateObj&&X.latestSelectedDateObj.setHours(e%24,t,n||0,0),X.hourElement&&X.minuteElement&&!X.isMobile&&(X.hourElement.value=f(X.config.time_24hr?e:(12+e)%12+12*m(e%12==0)),X.minuteElement.value=f(t),void 0!==X.amPM&&(X.amPM.textContent=X.l10n.amPM[m(e>=12)]),void 0!==X.secondElement&&(X.secondElement.value=f(n)))}function y(e,t,n){return t instanceof Array?t.forEach(function(t){return y(e,t,n)}):e instanceof Array?e.forEach(function(e){return y(e,t,n)}):(e.addEventListener(t,n),void X._handlers.push({element:e,event:t,handler:n}))}function x(e){return function(t){1===t.which&&e(t)}}function E(){z("onChange")}function N(){X._animationLoop.forEach(function(e){return e()}),X._animationLoop=[]}function k(e){var t=void 0!==e?q(e):X.latestSelectedDateObj||(X.config.minDate&&X.config.minDate>X.now?X.config.minDate:X.config.maxDate&&X.config.maxDate<X.now?X.config.maxDate:X.now);try{void 0!==t&&(X.currentYear=t.getFullYear(),X.currentMonth=t.getMonth())}catch(e){e.message="Invalid date supplied: "+t,X.config.errorHandler(e)}X.redraw()}function S(e,t,n){var a=e&&e.target,i=n||a&&a.parentNode&&a.parentNode.firstChild,o=G("increment");o.delta=t,i&&i.dispatchEvent(o)}function T(t,i,o,r){var l=j(i,!0),c=a("span","flatpickr-day "+t,i.getDate().toString());return c.dateObj=i,c.$i=r,c.setAttribute("aria-label",X.formatDate(i,X.config.ariaDateFormat)),0===e(i,X.now)&&(X.todayDateElem=c,c.classList.add("today")),l?(c.tabIndex=-1,V(i)&&(c.classList.add("selected"),X.selectedDateElem=c,"range"===X.config.mode&&(n(c,"startRange",X.selectedDates[0]&&0===e(i,X.selectedDates[0])),n(c,"endRange",X.selectedDates[1]&&0===e(i,X.selectedDates[1]))))):(c.classList.add("disabled"),X.selectedDates[0]&&X.minRangeDate&&i>X.minRangeDate&&i<X.selectedDates[0]?X.minRangeDate=i:X.selectedDates[0]&&X.maxRangeDate&&i<X.maxRangeDate&&i>X.selectedDates[0]&&(X.maxRangeDate=i)),"range"===X.config.mode&&(function(t){return!("range"!==X.config.mode||X.selectedDates.length<2)&&e(t,X.selectedDates[0])>=0&&e(t,X.selectedDates[1])<=0}(i)&&!V(i)&&c.classList.add("inRange"),1===X.selectedDates.length&&void 0!==X.minRangeDate&&void 0!==X.maxRangeDate&&(i<X.minRangeDate||i>X.maxRangeDate)&&c.classList.add("notAllowed")),X.weekNumbers&&"prevMonthDay"!==t&&o%7==1&&X.weekNumbers.insertAdjacentHTML("beforeend","<span class='disabled flatpickr-day'>"+X.config.getWeek(i)+"</span>"),z("onDayCreate",c),c}function I(e,t){var n=e+t||0,a=void 0!==e?X.days.childNodes[n]:X.selectedDateElem||X.todayDateElem||X.days.childNodes[0],i=function(){(a=a||X.days.childNodes[n]).focus(),"range"===X.config.mode&&R(a)};if(void 0===a&&0!==t)return t>0?(X.changeMonth(1,!0,void 0,!0),n%=42):t<0&&(X.changeMonth(-1,!0,void 0,!0),n+=42),Y(i);i()}function Y(e){!0===X.config.animate?X._animationLoop.push(e):e()}function _(e){if(void 0!==X.daysContainer){var t=(new Date(X.currentYear,X.currentMonth,1).getDay()-X.l10n.firstDayOfWeek+7)%7,n="range"===X.config.mode,i=X.utils.getDaysInMonth((X.currentMonth-1+12)%12),o=X.utils.getDaysInMonth(),r=window.document.createDocumentFragment(),l=i+1-t,c=0;for(X.weekNumbers&&X.weekNumbers.firstChild&&(X.weekNumbers.textContent=""),n&&(X.minRangeDate=new Date(X.currentYear,X.currentMonth-1,l),X.maxRangeDate=new Date(X.currentYear,X.currentMonth+1,(42-t)%o));l<=i;l++,c++)r.appendChild(T("prevMonthDay",new Date(X.currentYear,X.currentMonth-1,l),l,c));for(l=1;l<=o;l++,c++)r.appendChild(T("",new Date(X.currentYear,X.currentMonth,l),l,c));for(var d=o+1;d<=42-t;d++,c++)r.appendChild(T("nextMonthDay",new Date(X.currentYear,X.currentMonth+1,d%o),d,c));n&&1===X.selectedDates.length&&r.childNodes[0]?(X._hidePrevMonthArrow=X._hidePrevMonthArrow||!!X.minRangeDate&&X.minRangeDate>r.childNodes[0].dateObj,X._hideNextMonthArrow=X._hideNextMonthArrow||!!X.maxRangeDate&&X.maxRangeDate<new Date(X.currentYear,X.currentMonth+1,1)):Z();var s=a("div","dayContainer");if(s.appendChild(r),X.config.animate&&void 0!==e)for(;X.daysContainer.childNodes.length>1;)X.daysContainer.removeChild(X.daysContainer.firstChild);else!function(e){for(;e.firstChild;)e.removeChild(e.firstChild)}(X.daysContainer);e&&e>=0?X.daysContainer.appendChild(s):X.daysContainer.insertBefore(s,X.daysContainer.firstChild),X.days=X.daysContainer.childNodes[0]}}function O(){X.weekdayContainer||(X.weekdayContainer=a("div","flatpickr-weekdays"));var e=X.l10n.firstDayOfWeek,t=X.l10n.weekdays.shorthand.slice();return e>0&&e<t.length&&(t=t.splice(e,t.length).concat(t.splice(0,e))),X.weekdayContainer.innerHTML="\n    <span class=flatpickr-weekday>\n      "+t.join("</span><span class=flatpickr-weekday>")+"\n    </span>\n    ",X.weekdayContainer}function P(e,t,n,a){void 0===t&&(t=!0),void 0===n&&(n=X.config.animate),void 0===a&&(a=!1);var i=t?e:e-X.currentMonth;if(!(i<0&&X._hidePrevMonthArrow||i>0&&X._hideNextMonthArrow)){if(X.currentMonth+=i,(X.currentMonth<0||X.currentMonth>11)&&(X.currentYear+=X.currentMonth>11?1:-1,X.currentMonth=(X.currentMonth+12)%12,z("onYearChange")),_(n?i:void 0),!n)return z("onMonthChange"),Z();var o=X.navigationCurrentMonth;if(i<0)for(;o.nextSibling&&/curr/.test(o.nextSibling.className);)X.monthNav.removeChild(o.nextSibling);else if(i>0)for(;o.previousSibling&&/curr/.test(o.previousSibling.className);)X.monthNav.removeChild(o.previousSibling);X.oldCurMonth=X.navigationCurrentMonth,X.navigationCurrentMonth=X.monthNav.insertBefore(X.oldCurMonth.cloneNode(!0),i>0?X.oldCurMonth.nextSibling:X.oldCurMonth);var r=X.daysContainer;if(r.firstChild&&r.lastChild&&(i>0?(r.firstChild.classList.add("slideLeft"),r.lastChild.classList.add("slideLeftNew"),X.oldCurMonth.classList.add("slideLeft"),X.navigationCurrentMonth.classList.add("slideLeftNew")):i<0&&(r.firstChild.classList.add("slideRightNew"),r.lastChild.classList.add("slideRight"),X.oldCurMonth.classList.add("slideRight"),X.navigationCurrentMonth.classList.add("slideRightNew"))),X.currentMonthElement=X.navigationCurrentMonth.firstChild,X.currentYearElement=X.navigationCurrentMonth.lastChild.childNodes[0],Z(),X.oldCurMonth.firstChild&&(X.oldCurMonth.firstChild.textContent=c(X.currentMonth-i,X.config.shorthandCurrentMonth,X.l10n)),Y(function(){return z("onMonthChange")}),a&&document.activeElement&&document.activeElement.$i){var l=document.activeElement.$i;Y(function(){I(l,0)})}}}function F(e){return!(!X.config.appendTo||!X.config.appendTo.contains(e))||X.calendarContainer.contains(e)}function L(e){if(X.isOpen&&!X.config.inline){var t=F(e.target),n=e.target===X.input||e.target===X.altInput||X.element.contains(e.target)||e.path&&e.path.indexOf&&(~e.path.indexOf(X.input)||~e.path.indexOf(X.altInput));("blur"===e.type?n&&e.relatedTarget&&!F(e.relatedTarget):!n&&!t)&&-1===X.config.ignoredFocusElements.indexOf(e.target)&&(X.close(),"range"===X.config.mode&&1===X.selectedDates.length&&(X.clear(!1),X.redraw()))}}function A(e){if(!(!e||X.currentYearElement.min&&e<parseInt(X.currentYearElement.min)||X.currentYearElement.max&&e>parseInt(X.currentYearElement.max))){var t=e,n=X.currentYear!==t;X.currentYear=t||X.currentYear,X.config.maxDate&&X.currentYear===X.config.maxDate.getFullYear()?X.currentMonth=Math.min(X.config.maxDate.getMonth(),X.currentMonth):X.config.minDate&&X.currentYear===X.config.minDate.getFullYear()&&(X.currentMonth=Math.max(X.config.minDate.getMonth(),X.currentMonth)),n&&(X.redraw(),z("onYearChange"))}}function j(t,n){void 0===n&&(n=!0);var a=X.parseDate(t,void 0,n);if(X.config.minDate&&a&&e(a,X.config.minDate,void 0!==n?n:!X.minDateHasTime)<0||X.config.maxDate&&a&&e(a,X.config.maxDate,void 0!==n?n:!X.maxDateHasTime)>0)return!1;if(!X.config.enable.length&&!X.config.disable.length)return!0;if(void 0===a)return!1;for(var i=X.config.enable.length>0,o=i?X.config.enable:X.config.disable,r=0,l=void 0;r<o.length;r++){if("function"==typeof(l=o[r])&&l(a))return i;if(l instanceof Date&&void 0!==a&&l.getTime()===a.getTime())return i;if("string"==typeof l&&void 0!==a){var c=X.parseDate(l,void 0,!0);return c&&c.getTime()===a.getTime()?i:!i}if("object"==typeof l&&void 0!==a&&l.from&&l.to&&a.getTime()>=l.from.getTime()&&a.getTime()<=l.to.getTime())return i}return!i}function H(e){var t=e.target===X._input,n=F(e.target),a=X.config.allowInput,i=X.isOpen&&(!a||!t),o=X.config.inline&&t&&!a;if("Enter"===e.key&&t){if(a)return X.setDate(X._input.value,!0,e.target===X.altInput?X.config.altFormat:X.config.dateFormat),e.target.blur();X.open()}else if(n||i||o){var r=!!X.timeContainer&&X.timeContainer.contains(e.target);switch(e.key){case"Enter":r?Q():K(e);break;case"Escape":e.preventDefault(),X.close();break;case"Backspace":case"Delete":t&&!X.config.allowInput&&X.clear();break;case"ArrowLeft":case"ArrowRight":if(r)X.hourElement&&X.hourElement.focus();else if(e.preventDefault(),X.daysContainer){var l="ArrowRight"===e.key?1:-1;e.ctrlKey?P(l,!0,void 0,!0):I(e.target.$i,l)}break;case"ArrowUp":case"ArrowDown":e.preventDefault();var c="ArrowDown"===e.key?1:-1;X.daysContainer&&void 0!==e.target.$i?e.ctrlKey?(A(X.currentYear-c),I(e.target.$i,0)):r||I(e.target.$i,7*c):X.config.enableTime&&(!r&&X.hourElement&&X.hourElement.focus(),p(e),X._debouncedChange());break;case"Tab":e.target===X.hourElement?(e.preventDefault(),X.minuteElement.select()):e.target===X.minuteElement&&(X.secondElement||X.amPM)?(e.preventDefault(),void 0!==X.secondElement?X.secondElement.focus():void 0!==X.amPM&&X.amPM.focus()):e.target===X.secondElement&&X.amPM&&(e.preventDefault(),X.amPM.focus());break;case X.l10n.amPM[0].charAt(0):void 0!==X.amPM&&e.target===X.amPM&&(X.amPM.textContent=X.l10n.amPM[0],w(),Q());break;case X.l10n.amPM[1].charAt(0):void 0!==X.amPM&&e.target===X.amPM&&(X.amPM.textContent=X.l10n.amPM[1],w(),Q())}z("onKeyDown",e)}}function R(e){if(1===X.selectedDates.length&&e.classList.contains("flatpickr-day")&&void 0!==X.minRangeDate&&void 0!==X.maxRangeDate){for(var t=e.dateObj,n=X.parseDate(X.selectedDates[0],void 0,!0),a=Math.min(t.getTime(),X.selectedDates[0].getTime()),i=Math.max(t.getTime(),X.selectedDates[0].getTime()),o=!1,r=a;r<i;r+=d.DAY)if(!j(new Date(r))){o=!0;break}for(var l=0,c=X.days.childNodes[l].dateObj;l<42;l++,c=X.days.childNodes[l]&&X.days.childNodes[l].dateObj)!function(r,l){var c=l.getTime(),d=c<X.minRangeDate.getTime()||c>X.maxRangeDate.getTime(),s=X.days.childNodes[r];if(d)return s.classList.add("notAllowed"),["inRange","startRange","endRange"].forEach(function(e){s.classList.remove(e)}),"continue";if(o&&!d)return"continue";["startRange","inRange","endRange","notAllowed"].forEach(function(e){s.classList.remove(e)});var u=Math.max(X.minRangeDate.getTime(),a),f=Math.min(X.maxRangeDate.getTime(),i);e.classList.add(t<X.selectedDates[0]?"startRange":"endRange"),n<t&&c===n.getTime()?s.classList.add("startRange"):n>t&&c===n.getTime()&&s.classList.add("endRange"),c>=u&&c<=f&&s.classList.add("inRange")}(l,c)}}function W(e){return function(t){var n=X.config["_"+e+"Date"]=X.parseDate(t),a=X.config["_"+("min"===e?"max":"min")+"Date"];void 0!==n&&(X["min"===e?"minDateHasTime":"maxDateHasTime"]=n.getHours()>0||n.getMinutes()>0||n.getSeconds()>0),X.selectedDates&&(X.selectedDates=X.selectedDates.filter(function(e){return j(e)}),X.selectedDates.length||"min"!==e||M(n),Q()),X.daysContainer&&(J(),void 0!==n?X.currentYearElement[e]=n.getFullYear().toString():X.currentYearElement.removeAttribute(e),X.currentYearElement.disabled=!!a&&void 0!==n&&a.getFullYear()===n.getFullYear())}}function B(e){if(void 0===e&&(e=X._positionElement),void 0!==X.calendarContainer){var t=X.calendarContainer.offsetHeight,a=X.calendarContainer.offsetWidth,i=X.config.position,o=e.getBoundingClientRect(),r=window.innerHeight-o.bottom,l="above"===i||"below"!==i&&r<t&&o.top>t,c=window.pageYOffset+o.top+(l?-t-2:e.offsetHeight+2);if(n(X.calendarContainer,"arrowTop",!l),n(X.calendarContainer,"arrowBottom",l),!X.config.inline){var d=window.pageXOffset+o.left,s=window.document.body.offsetWidth-o.right,u=d+a>window.document.body.offsetWidth;n(X.calendarContainer,"rightMost",u),X.config.static||(X.calendarContainer.style.top=c+"px",u?(X.calendarContainer.style.left="auto",X.calendarContainer.style.right=s+"px"):(X.calendarContainer.style.left=d+"px",X.calendarContainer.style.right="auto"))}}}function J(){X.config.noCalendar||X.isMobile||(O(),Z(),_())}function K(t){t.preventDefault(),t.stopPropagation();var n=i(t.target,function(e){return e.classList&&e.classList.contains("flatpickr-day")&&!e.classList.contains("disabled")&&!e.classList.contains("notAllowed")});if(void 0!==n){var a=n,o=X.latestSelectedDateObj=new Date(a.dateObj.getTime()),r=o.getMonth()!==X.currentMonth&&"range"!==X.config.mode;if(X.selectedDateElem=a,"single"===X.config.mode)X.selectedDates=[o];else if("multiple"===X.config.mode){var l=V(o);l?X.selectedDates.splice(parseInt(l),1):X.selectedDates.push(o)}else"range"===X.config.mode&&(2===X.selectedDates.length&&X.clear(),X.selectedDates.push(o),0!==e(o,X.selectedDates[0],!0)&&X.selectedDates.sort(function(e,t){return e.getTime()-t.getTime()}));if(w(),r){var c=X.currentYear!==o.getFullYear();X.currentYear=o.getFullYear(),X.currentMonth=o.getMonth(),c&&z("onYearChange"),z("onMonthChange")}if(_(),X.config.minDate&&X.minDateHasTime&&X.config.enableTime&&0===e(o,X.config.minDate)&&M(X.config.minDate),Q(),X.config.enableTime&&setTimeout(function(){return X.showTimeInput=!0},50),"range"===X.config.mode&&(1===X.selectedDates.length?(R(a),X._hidePrevMonthArrow=X._hidePrevMonthArrow||void 0!==X.minRangeDate&&X.minRangeDate>X.days.childNodes[0].dateObj,X._hideNextMonthArrow=X._hideNextMonthArrow||void 0!==X.maxRangeDate&&X.maxRangeDate<new Date(X.currentYear,X.currentMonth+1,1)):Z()),z("onChange"),r?Y(function(){return X.selectedDateElem&&X.selectedDateElem.focus()}):I(a.$i,0),void 0!==X.hourElement&&setTimeout(function(){return void 0!==X.hourElement&&X.hourElement.select()},451),X.config.closeOnSelect){var d="single"===X.config.mode&&!X.config.enableTime,s="range"===X.config.mode&&2===X.selectedDates.length&&!X.config.enableTime;(d||s)&&X.close()}}}function U(e,t){var n=[];if(e instanceof Array)n=e.map(function(e){return X.parseDate(e,t)});else if(e instanceof Date||"number"==typeof e)n=[X.parseDate(e,t)];else if("string"==typeof e)switch(X.config.mode){case"single":n=[X.parseDate(e,t)];break;case"multiple":n=e.split(X.config.conjunction).map(function(e){return X.parseDate(e,t)});break;case"range":n=e.split(X.l10n.rangeSeparator).map(function(e){return X.parseDate(e,t)})}else X.config.errorHandler(new Error("Invalid date supplied: "+JSON.stringify(e)));X.selectedDates=n.filter(function(e){return e instanceof Date&&j(e,!1)}),X.selectedDates.sort(function(e,t){return e.getTime()-t.getTime()})}function $(e){return e.map(function(e){return"string"==typeof e||"number"==typeof e||e instanceof Date?X.parseDate(e,void 0,!0):e&&"object"==typeof e&&e.from&&e.to?{from:X.parseDate(e.from,void 0),to:X.parseDate(e.to,void 0)}:e}).filter(function(e){return e})}function q(e,t,n){if(0===e||e){var a,i=e;if(e instanceof Date)a=new Date(e.getTime());else if("string"!=typeof e&&void 0!==e.toFixed)a=new Date(e);else if("string"==typeof e){var o=t||(X.config||C.defaultConfig).dateFormat,r=String(e).trim();if("today"===r)a=new Date,n=!0;else if(/Z$/.test(r)||/GMT$/.test(r))a=new Date(e);else if(X.config&&X.config.parseDate)a=X.config.parseDate(e,o);else{a=X.config&&X.config.noCalendar?new Date((new Date).setHours(0,0,0,0)):new Date((new Date).getFullYear(),0,1,0,0,0,0);for(var l=void 0,c=[],d=0,s=0,u="";d<o.length;d++){var f=o[d],m="\\"===f,g="\\"===o[d-1]||m;if(v[f]&&!g){u+=v[f];var p=new RegExp(u).exec(e);p&&(l=!0)&&c["Y"!==f?"push":"unshift"]({fn:h[f],val:p[++s]})}else m||(u+=".");c.forEach(function(e){var t=e.fn,n=e.val;return a=t(a,n,X.l10n)||a})}a=l?a:void 0}}if(a instanceof Date)return!0===n&&a.setHours(0,0,0,0),a;X.config.errorHandler(new Error("Invalid date provided: "+i))}}function z(e,t){var n=X.config[e];if(void 0!==n&&n.length>0)for(var a=0;n[a]&&a<n.length;a++)n[a](X.selectedDates,X.input.value,X,t);"onChange"===e&&(X.input.dispatchEvent(G("change")),X.input.dispatchEvent(G("input")))}function G(e){var t=document.createEvent("Event");return t.initEvent(e,!0,!0),t}function V(t){for(var n=0;n<X.selectedDates.length;n++)if(0===e(X.selectedDates[n],t))return""+n;return!1}function Z(){X.config.noCalendar||X.isMobile||!X.monthNav||(X.currentMonthElement.textContent=c(X.currentMonth,X.config.shorthandCurrentMonth,X.l10n)+" ",X.currentYearElement.value=X.currentYear.toString(),X._hidePrevMonthArrow=void 0!==X.config.minDate&&(X.currentYear===X.config.minDate.getFullYear()?X.currentMonth<=X.config.minDate.getMonth():X.currentYear<X.config.minDate.getFullYear()),X._hideNextMonthArrow=void 0!==X.config.maxDate&&(X.currentYear===X.config.maxDate.getFullYear()?X.currentMonth+1>X.config.maxDate.getMonth():X.currentYear>X.config.maxDate.getFullYear()))}function Q(e){if(void 0===e&&(e=!0),!X.selectedDates.length)return X.clear(e);void 0!==X.mobileInput&&X.mobileFormatStr&&(X.mobileInput.value=void 0!==X.latestSelectedDateObj?X.formatDate(X.latestSelectedDateObj,X.mobileFormatStr):"");var t="range"!==X.config.mode?X.config.conjunction:X.l10n.rangeSeparator;X.input.value=X.selectedDates.map(function(e){return X.formatDate(e,X.config.dateFormat)}).join(t),void 0!==X.altInput&&(X.altInput.value=X.selectedDates.map(function(e){return X.formatDate(e,X.config.altFormat)}).join(t)),!1!==e&&z("onValueUpdate")}var X={};return X.parseDate=q,X.formatDate=function(e,t){return void 0!==X.config&&void 0!==X.config.formatDate?X.config.formatDate(e,t):t.split("").map(function(t,n,a){return D[t]&&"\\"!==a[n-1]?D[t](e,X.l10n,X.config):"\\"!==t?t:""}).join("")},X._animationLoop=[],X._handlers=[],X._bind=y,X._setHoursFromDate=M,X.changeMonth=P,X.changeYear=A,X.clear=function(e){void 0===e&&(e=!0),X.input.value="",X.altInput&&(X.altInput.value=""),X.mobileInput&&(X.mobileInput.value=""),X.selectedDates=[],X.latestSelectedDateObj=void 0,X.showTimeInput=!1,X.redraw(),e&&z("onChange")},X.close=function(){X.isOpen=!1,X.isMobile||(X.calendarContainer.classList.remove("open"),X._input.classList.remove("active")),z("onClose")},X._createElement=a,X.destroy=function(){void 0!==X.config&&z("onDestroy");for(var e=X._handlers.length;e--;){var t=X._handlers[e];t.element.removeEventListener(t.event,t.handler)}X._handlers=[],X.mobileInput?(X.mobileInput.parentNode&&X.mobileInput.parentNode.removeChild(X.mobileInput),X.mobileInput=void 0):X.calendarContainer&&X.calendarContainer.parentNode&&X.calendarContainer.parentNode.removeChild(X.calendarContainer),X.altInput&&(X.input.type="text",X.altInput.parentNode&&X.altInput.parentNode.removeChild(X.altInput),delete X.altInput),X.input&&(X.input.type=X.input._type,X.input.classList.remove("flatpickr-input"),X.input.removeAttribute("readonly"),X.input.value=""),["_showTimeInput","latestSelectedDateObj","_hideNextMonthArrow","_hidePrevMonthArrow","__hideNextMonthArrow","__hidePrevMonthArrow","isMobile","isOpen","selectedDateElem","minDateHasTime","maxDateHasTime","days","daysContainer","_input","_positionElement","innerContainer","rContainer","monthNav","todayDateElem","calendarContainer","weekdayContainer","prevMonthNav","nextMonthNav","currentMonthElement","currentYearElement","navigationCurrentMonth","selectedDateElem","config"].forEach(function(e){try{delete X[e]}catch(e){}})},X.isEnabled=j,X.jumpToDate=k,X.open=function(e,t){if(void 0===t&&(t=X._input),X.isMobile)return e&&(e.preventDefault(),e.target&&e.target.blur()),setTimeout(function(){void 0!==X.mobileInput&&X.mobileInput.click()},0),void z("onOpen");if(!X._input.disabled&&!X.config.inline){var n=X.isOpen;X.isOpen=!0,B(t),X.calendarContainer.classList.add("open"),X._input.classList.add("active"),!n&&z("onOpen")}},X.redraw=J,X.set=function(e,t){null!==e&&"object"==typeof e?Object.assign(X.config,e):X.config[e]=t,X.redraw(),k()},X.setDate=function(e,t,n){if(void 0===t&&(t=!1),0!==e&&!e)return X.clear(t);U(e,n),X.showTimeInput=X.selectedDates.length>0,X.latestSelectedDateObj=X.selectedDates[0],X.redraw(),k(),M(),Q(t),t&&z("onChange")},X.toggle=function(){if(X.isOpen)return X.close();X.open()},function(){X.element=X.input=r,X.isOpen=!1,function(){var e=["wrap","weekNumbers","allowInput","clickOpens","time_24hr","enableTime","noCalendar","altInput","shorthandCurrentMonth","inline","static","enableSeconds","disableMobile"],t=["onChange","onClose","onDayCreate","onDestroy","onKeyDown","onMonthChange","onOpen","onParseConfig","onReady","onValueUpdate","onYearChange"];X.config=l({},C.defaultConfig);var n=l({},s,JSON.parse(JSON.stringify(r.dataset||{}))),a={};for(Object.defineProperty(X.config,"enable",{get:function(){return X.config._enable||[]},set:function(e){X.config._enable=$(e)}}),Object.defineProperty(X.config,"disable",{get:function(){return X.config._disable||[]},set:function(e){X.config._disable=$(e)}}),!n.dateFormat&&n.enableTime&&(a.dateFormat=n.noCalendar?"H:i"+(n.enableSeconds?":S":""):C.defaultConfig.dateFormat+" H:i"+(n.enableSeconds?":S":"")),n.altInput&&n.enableTime&&!n.altFormat&&(a.altFormat=n.noCalendar?"h:i"+(n.enableSeconds?":S K":" K"):C.defaultConfig.altFormat+" h:i"+(n.enableSeconds?":S":"")+" K"),Object.defineProperty(X.config,"minDate",{get:function(){return X.config._minDate},set:W("min")}),Object.defineProperty(X.config,"maxDate",{get:function(){return X.config._maxDate},set:W("max")}),Object.assign(X.config,a,n),i=0;i<e.length;i++)X.config[e[i]]=!0===X.config[e[i]]||"true"===X.config[e[i]];for(i=t.length;i--;)void 0!==X.config[t[i]]&&(X.config[t[i]]=g(X.config[t[i]]||[]).map(u));for(var i=0;i<X.config.plugins.length;i++){var o=X.config.plugins[i](X)||{};for(var c in o)~t.indexOf(c)?X.config[c]=g(o[c]).map(u).concat(X.config[c]):void 0===n[c]&&(X.config[c]=o[c])}X.isMobile=!X.config.disableMobile&&!X.config.inline&&"single"===X.config.mode&&!X.config.disable.length&&!X.config.enable.length&&!X.config.weekNumbers&&/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent),z("onParseConfig")}(),"object"!=typeof X.config.locale&&void 0===C.l10ns[X.config.locale]&&X.config.errorHandler(new Error("flatpickr: invalid locale "+X.config.locale)),X.l10n=l({},C.l10ns.default,"object"==typeof X.config.locale?X.config.locale:"default"!==X.config.locale?C.l10ns[X.config.locale]:void 0),v.K="("+X.l10n.amPM[0]+"|"+X.l10n.amPM[1]+"|"+X.l10n.amPM[0].toLowerCase()+"|"+X.l10n.amPM[1].toLowerCase()+")",X.input=X.config.wrap?r.querySelector("[data-input]"):r,X.input?(X.input._type=X.input.type,X.input.type="text",X.input.classList.add("flatpickr-input"),X._input=X.input,X.config.altInput&&(X.altInput=a(X.input.nodeName,X.input.className+" "+X.config.altInputClass),X._input=X.altInput,X.altInput.placeholder=X.input.placeholder,X.altInput.disabled=X.input.disabled,X.altInput.required=X.input.required,X.altInput.type="text",X.input.type="hidden",!X.config.static&&X.input.parentNode&&X.input.parentNode.insertBefore(X.altInput,X.input.nextSibling)),X.config.allowInput||X._input.setAttribute("readonly","readonly"),X._positionElement=X.config.positionElement||X._input):X.config.errorHandler(new Error("Invalid input element specified")),function(){X.selectedDates=[],X.now=new Date;var e=X.config.defaultDate||X.input.value;e&&U(e,X.config.dateFormat);var t=X.selectedDates.length?X.selectedDates[0]:X.config.minDate&&X.config.minDate.getTime()>X.now.getTime()?X.config.minDate:X.config.maxDate&&X.config.maxDate.getTime()<X.now.getTime()?X.config.maxDate:X.now;X.currentYear=t.getFullYear(),X.currentMonth=t.getMonth(),X.selectedDates.length&&(X.latestSelectedDateObj=X.selectedDates[0]),X.minDateHasTime=!!X.config.minDate&&(X.config.minDate.getHours()>0||X.config.minDate.getMinutes()>0||X.config.minDate.getSeconds()>0),X.maxDateHasTime=!!X.config.maxDate&&(X.config.maxDate.getHours()>0||X.config.maxDate.getMinutes()>0||X.config.maxDate.getSeconds()>0),Object.defineProperty(X,"showTimeInput",{get:function(){return X._showTimeInput},set:function(e){X._showTimeInput=e,X.calendarContainer&&n(X.calendarContainer,"showTimeInput",e),B()}})}(),X.utils={getDaysInMonth:function(e,t){return void 0===e&&(e=X.currentMonth),void 0===t&&(t=X.currentYear),1===e&&(t%4==0&&t%100!=0||t%400==0)?29:X.l10n.daysInMonth[e]}},X.isMobile||function(){var e=window.document.createDocumentFragment();if(X.calendarContainer=a("div","flatpickr-calendar"),X.calendarContainer.tabIndex=-1,!X.config.noCalendar){if(e.appendChild(function(){var e=window.document.createDocumentFragment();X.monthNav=a("div","flatpickr-month"),X.prevMonthNav=a("span","flatpickr-prev-month"),X.prevMonthNav.innerHTML=X.config.prevArrow,X.currentMonthElement=a("span","cur-month"),X.currentMonthElement.title=X.l10n.scrollTitle;var t=o("cur-year");return X.currentYearElement=t.childNodes[0],X.currentYearElement.title=X.l10n.scrollTitle,X.config.minDate&&(X.currentYearElement.min=X.config.minDate.getFullYear().toString()),X.config.maxDate&&(X.currentYearElement.max=X.config.maxDate.getFullYear().toString(),X.currentYearElement.disabled=!!X.config.minDate&&X.config.minDate.getFullYear()===X.config.maxDate.getFullYear()),X.nextMonthNav=a("span","flatpickr-next-month"),X.nextMonthNav.innerHTML=X.config.nextArrow,X.navigationCurrentMonth=a("div","flatpickr-current-month"),X.navigationCurrentMonth.appendChild(X.currentMonthElement),X.navigationCurrentMonth.appendChild(t),e.appendChild(X.prevMonthNav),e.appendChild(X.navigationCurrentMonth),e.appendChild(X.nextMonthNav),X.monthNav.appendChild(e),Object.defineProperty(X,"_hidePrevMonthArrow",{get:function(){return X.__hidePrevMonthArrow},set:function(e){X.__hidePrevMonthArrow!==e&&(X.prevMonthNav.style.display=e?"none":"block"),X.__hidePrevMonthArrow=e}}),Object.defineProperty(X,"_hideNextMonthArrow",{get:function(){return X.__hideNextMonthArrow},set:function(e){X.__hideNextMonthArrow!==e&&(X.nextMonthNav.style.display=e?"none":"block"),X.__hideNextMonthArrow=e}}),Z(),X.monthNav}()),X.innerContainer=a("div","flatpickr-innerContainer"),X.config.weekNumbers){var t=function(){X.calendarContainer.classList.add("hasWeeks");var e=a("div","flatpickr-weekwrapper");e.appendChild(a("span","flatpickr-weekday",X.l10n.weekAbbreviation));var t=a("div","flatpickr-weeks");return e.appendChild(t),{weekWrapper:e,weekNumbers:t}}(),i=t.weekWrapper,r=t.weekNumbers;X.innerContainer.appendChild(i),X.weekNumbers=r,X.weekWrapper=i}X.rContainer=a("div","flatpickr-rContainer"),X.rContainer.appendChild(O()),X.daysContainer||(X.daysContainer=a("div","flatpickr-days"),X.daysContainer.tabIndex=-1),_(),X.rContainer.appendChild(X.daysContainer),X.innerContainer.appendChild(X.rContainer),e.appendChild(X.innerContainer)}X.config.enableTime&&e.appendChild(function(){X.calendarContainer.classList.add("hasTime"),X.config.noCalendar&&X.calendarContainer.classList.add("noCalendar"),X.timeContainer=a("div","flatpickr-time"),X.timeContainer.tabIndex=-1;var e=a("span","flatpickr-time-separator",":"),t=o("flatpickr-hour");X.hourElement=t.childNodes[0];var n=o("flatpickr-minute");if(X.minuteElement=n.childNodes[0],X.hourElement.tabIndex=X.minuteElement.tabIndex=-1,X.hourElement.value=f(X.latestSelectedDateObj?X.latestSelectedDateObj.getHours():X.config.time_24hr?X.config.defaultHour:function(e){switch(e%24){case 0:case 12:return 12;default:return e%12}}(X.config.defaultHour)),X.minuteElement.value=f(X.latestSelectedDateObj?X.latestSelectedDateObj.getMinutes():X.config.defaultMinute),X.hourElement.step=X.config.hourIncrement.toString(),X.minuteElement.step=X.config.minuteIncrement.toString(),X.hourElement.min=X.config.time_24hr?"0":"1",X.hourElement.max=X.config.time_24hr?"23":"12",X.minuteElement.min="0",X.minuteElement.max="59",X.hourElement.title=X.minuteElement.title=X.l10n.scrollTitle,X.timeContainer.appendChild(t),X.timeContainer.appendChild(e),X.timeContainer.appendChild(n),X.config.time_24hr&&X.timeContainer.classList.add("time24hr"),X.config.enableSeconds){X.timeContainer.classList.add("hasSeconds");var i=o("flatpickr-second");X.secondElement=i.childNodes[0],X.secondElement.value=f(X.latestSelectedDateObj?X.latestSelectedDateObj.getSeconds():X.config.defaultSeconds),X.secondElement.step=X.minuteElement.step,X.secondElement.min=X.minuteElement.min,X.secondElement.max=X.minuteElement.max,X.timeContainer.appendChild(a("span","flatpickr-time-separator",":")),X.timeContainer.appendChild(i)}return X.config.time_24hr||(X.amPM=a("span","flatpickr-am-pm",X.l10n.amPM[m((X.latestSelectedDateObj?X.hourElement.value:X.config.defaultHour)>11)]),X.amPM.title=X.l10n.toggleTitle,X.amPM.tabIndex=-1,X.timeContainer.appendChild(X.amPM)),X.timeContainer}()),n(X.calendarContainer,"rangeMode","range"===X.config.mode),n(X.calendarContainer,"animate",X.config.animate),X.calendarContainer.appendChild(e);var l=void 0!==X.config.appendTo&&X.config.appendTo.nodeType;if((X.config.inline||X.config.static)&&(X.calendarContainer.classList.add(X.config.inline?"inline":"static"),X.config.inline&&(!l&&X.element.parentNode?X.element.parentNode.insertBefore(X.calendarContainer,X._input.nextSibling):void 0!==X.config.appendTo&&X.config.appendTo.appendChild(X.calendarContainer)),X.config.static)){var c=a("div","flatpickr-wrapper");X.element.parentNode&&X.element.parentNode.insertBefore(c,X.element),c.appendChild(X.element),X.altInput&&c.appendChild(X.altInput),c.appendChild(X.calendarContainer)}X.config.static||X.config.inline||(void 0!==X.config.appendTo?X.config.appendTo:window.document.body).appendChild(X.calendarContainer)}(),function(){if(X.config.wrap&&["open","close","toggle","clear"].forEach(function(e){Array.prototype.forEach.call(X.element.querySelectorAll("[data-"+e+"]"),function(t){return y(t,"click",X[e])})}),X.isMobile)!function(){var e=X.config.enableTime?X.config.noCalendar?"time":"datetime-local":"date";X.mobileInput=a("input",X.input.className+" flatpickr-mobile"),X.mobileInput.step=X.input.getAttribute("step")||"any",X.mobileInput.tabIndex=1,X.mobileInput.type=e,X.mobileInput.disabled=X.input.disabled,X.mobileInput.placeholder=X.input.placeholder,X.mobileFormatStr="datetime-local"===e?"Y-m-d\\TH:i:S":"date"===e?"Y-m-d":"H:i:S",X.selectedDates.length&&(X.mobileInput.defaultValue=X.mobileInput.value=X.formatDate(X.selectedDates[0],X.mobileFormatStr)),X.config.minDate&&(X.mobileInput.min=X.formatDate(X.config.minDate,"Y-m-d")),X.config.maxDate&&(X.mobileInput.max=X.formatDate(X.config.maxDate,"Y-m-d")),X.input.type="hidden",void 0!==X.altInput&&(X.altInput.type="hidden");try{X.input.parentNode&&X.input.parentNode.insertBefore(X.mobileInput,X.input.nextSibling)}catch(e){}y(X.mobileInput,"change",function(e){X.setDate(e.target.value,!1,X.mobileFormatStr),z("onChange"),z("onClose")})}();else{var e=t(function(){!X.isOpen||X.config.static||X.config.inline||B()},50);X._debouncedChange=t(E,300),"range"===X.config.mode&&X.daysContainer&&!/iPhone|iPad|iPod/i.test(navigator.userAgent)&&y(X.daysContainer,"mouseover",function(e){return R(e.target)}),y(window.document.body,"keydown",H),X.config.static||y(X._input,"keydown",H),X.config.inline||X.config.static||y(window,"resize",e),void 0!==window.ontouchstart&&y(window.document.body,"touchstart",L),y(window.document.body,"mousedown",x(L)),y(X._input,"blur",L),!0===X.config.clickOpens&&(y(X._input,"focus",X.open),y(X._input,"mousedown",x(X.open))),void 0!==X.daysContainer&&(X.monthNav.addEventListener("wheel",function(e){return e.preventDefault()}),y(X.monthNav,"wheel",t(function(e){e.preventDefault();var t=X.currentYearElement.parentNode&&X.currentYearElement.parentNode.contains(e.target);if(e.target===X.currentMonthElement||t){var n=function(e){return(e.wheelDelta||-e.deltaY)>=0?1:-1}(e);t?(A(X.currentYear+n),e.target.value=X.currentYear.toString()):X.changeMonth(n,!0,!1)}},10)),y(X.monthNav,"mousedown",x(function(e){var t=X.prevMonthNav.contains(e.target),n=X.nextMonthNav.contains(e.target);t||n?P(t?-1:1):e.target===X.currentYearElement?(e.preventDefault(),X.currentYearElement.select()):"arrowUp"===e.target.className?X.changeYear(X.currentYear+1):"arrowDown"===e.target.className&&X.changeYear(X.currentYear-1)})),y(X.monthNav,["keyup","increment"],function(e){var t=parseInt(e.target.value)+(e.delta||0);4!==t.toString().length&&"Enter"!==e.key||(X.currentYearElement.blur(),/[^\d]/.test(t.toString())||A(t))}),y(X.daysContainer,"mousedown",x(K)),X.config.animate&&(y(X.daysContainer,["webkitAnimationEnd","animationend"],function(e){if(X.daysContainer&&X.daysContainer.childNodes.length>1)switch(e.animationName){case"fpSlideLeft":X.daysContainer.lastChild&&X.daysContainer.lastChild.classList.remove("slideLeftNew"),X.daysContainer.removeChild(X.daysContainer.firstChild),X.days=X.daysContainer.firstChild,N();break;case"fpSlideRight":X.daysContainer.firstChild&&X.daysContainer.firstChild.classList.remove("slideRightNew"),X.daysContainer.removeChild(X.daysContainer.lastChild),X.days=X.daysContainer.firstChild,N()}}),y(X.monthNav,["webkitAnimationEnd","animationend"],function(e){switch(e.animationName){case"fpSlideLeftNew":case"fpSlideRightNew":X.navigationCurrentMonth.classList.remove("slideLeftNew"),X.navigationCurrentMonth.classList.remove("slideRightNew");for(var t=X.navigationCurrentMonth;t.nextSibling&&/curr/.test(t.nextSibling.className);)X.monthNav.removeChild(t.nextSibling);for(;t.previousSibling&&/curr/.test(t.previousSibling.className);)X.monthNav.removeChild(t.previousSibling);X.oldCurMonth=void 0}}))),void 0!==X.timeContainer&&void 0!==X.minuteElement&&void 0!==X.hourElement&&(y(X.timeContainer,["wheel","input","increment"],p),y(X.timeContainer,"mousedown",x(function(e){~e.target.className.indexOf("arrow")&&S(e,e.target.classList.contains("arrowUp")?1:-1)})),y(X.timeContainer,["wheel","increment"],X._debouncedChange),y(X.timeContainer,"input",E),y([X.hourElement,X.minuteElement],["focus","click"],function(e){return e.target.select()}),void 0!==X.secondElement&&y(X.secondElement,"focus",function(){return X.secondElement&&X.secondElement.select()}),void 0!==X.amPM&&y(X.amPM,"mousedown",x(function(e){p(e),E()})))}}(),(X.selectedDates.length||X.config.noCalendar)&&(X.config.enableTime&&M(X.config.noCalendar?X.latestSelectedDateObj||X.config.minDate:void 0),Q(!1)),X.showTimeInput=X.selectedDates.length>0||X.config.noCalendar,void 0!==X.weekWrapper&&void 0!==X.daysContainer&&(X.calendarContainer.style.width=X.daysContainer.offsetWidth+X.weekWrapper.offsetWidth+"px"),X.isMobile||B(),z("onReady")}(),X}(M,s||{}),p.push(M._flatpickr)}catch(e){console.error(e)}}return 1===p.length?p[0]:p}var l=Object.assign||function(e){for(var t,n=1,a=arguments.length;n<a;n++){t=arguments[n];for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i])}return e},c=function(e,t,n){return n.months[t?"shorthand":"longhand"][e]},d={DAY:864e5},s={_disable:[],_enable:[],allowInput:!1,altFormat:"F j, Y",altInput:!1,altInputClass:"form-control input",animate:"object"==typeof window&&-1===window.navigator.userAgent.indexOf("MSIE"),ariaDateFormat:"F j, Y",clickOpens:!0,closeOnSelect:!0,conjunction:", ",dateFormat:"Y-m-d",defaultHour:12,defaultMinute:0,defaultSeconds:0,disable:[],disableMobile:!1,enable:[],enableSeconds:!1,enableTime:!1,errorHandler:console.warn,getWeek:function(e){var t=new Date(e.getFullYear(),0,1);return Math.ceil(((e.getTime()-t.getTime())/864e5+t.getDay()+1)/7)},hourIncrement:1,ignoredFocusElements:[],inline:!1,locale:"default",minuteIncrement:5,mode:"single",nextArrow:"<svg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 17 17'><g></g><path d='M13.207 8.472l-7.854 7.854-0.707-0.707 7.146-7.146-7.146-7.148 0.707-0.707 7.854 7.854z' /></svg>",noCalendar:!1,onChange:[],onClose:[],onDayCreate:[],onDestroy:[],onKeyDown:[],onMonthChange:[],onOpen:[],onParseConfig:[],onReady:[],onValueUpdate:[],onYearChange:[],plugins:[],position:"auto",positionElement:void 0,prevArrow:"<svg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 17 17'><g></g><path d='M5.207 8.471l7.146 7.147-0.707 0.707-7.853-7.854 7.854-7.853 0.707 0.707-7.147 7.146z' /></svg>",shorthandCurrentMonth:!1,static:!1,time_24hr:!1,weekNumbers:!1,wrap:!1},u={weekdays:{shorthand:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],longhand:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},months:{shorthand:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],longhand:["January","February","March","April","May","June","July","August","September","October","November","December"]},daysInMonth:[31,28,31,30,31,30,31,31,30,31,30,31],firstDayOfWeek:0,ordinal:function(e){var t=e%100;if(t>3&&t<21)return"th";switch(t%10){case 1:return"st";case 2:return"nd";case 3:return"rd";default:return"th"}},rangeSeparator:" to ",weekAbbreviation:"Wk",scrollTitle:"Scroll to increment",toggleTitle:"Click to toggle",amPM:["AM","PM"]},f=function(e){return("0"+e).slice(-2)},m=function(e){return!0===e?1:0},g=function(e){return e instanceof Array?e:[e]},p=function(){},h={D:p,F:function(e,t,n){e.setMonth(n.months.longhand.indexOf(t))},G:function(e,t){e.setHours(parseFloat(t))},H:function(e,t){e.setHours(parseFloat(t))},J:function(e,t){e.setDate(parseFloat(t))},K:function(e,t,n){e.setHours(e.getHours()%12+12*m(new RegExp(n.amPM[1],"i").test(t)))},M:function(e,t,n){e.setMonth(n.months.shorthand.indexOf(t))},S:function(e,t){e.setSeconds(parseFloat(t))},U:function(e,t){return new Date(1e3*parseFloat(t))},W:function(e,t){var n=parseInt(t);return new Date(e.getFullYear(),0,2+7*(n-1),0,0,0,0)},Y:function(e,t){e.setFullYear(parseFloat(t))},Z:function(e,t){return new Date(t)},d:function(e,t){e.setDate(parseFloat(t))},h:function(e,t){e.setHours(parseFloat(t))},i:function(e,t){e.setMinutes(parseFloat(t))},j:function(e,t){e.setDate(parseFloat(t))},l:p,m:function(e,t){e.setMonth(parseFloat(t)-1)},n:function(e,t){e.setMonth(parseFloat(t)-1)},s:function(e,t){e.setSeconds(parseFloat(t))},w:p,y:function(e,t){e.setFullYear(2e3+parseFloat(t))}},v={D:"(\\w+)",F:"(\\w+)",G:"(\\d\\d|\\d)",H:"(\\d\\d|\\d)",J:"(\\d\\d|\\d)\\w+",K:"",M:"(\\w+)",S:"(\\d\\d|\\d)",U:"(.+)",W:"(\\d\\d|\\d)",Y:"(\\d{4})",Z:"(.+)",d:"(\\d\\d|\\d)",h:"(\\d\\d|\\d)",i:"(\\d\\d|\\d)",j:"(\\d\\d|\\d)",l:"(\\w+)",m:"(\\d\\d|\\d)",n:"(\\d\\d|\\d)",s:"(\\d\\d|\\d)",w:"(\\d\\d|\\d)",y:"(\\d{2})"},D={Z:function(e){return e.toISOString()},D:function(e,t,n){return t.weekdays.shorthand[D.w(e,t,n)]},F:function(e,t,n){return c(D.n(e,t,n)-1,!1,t)},G:function(e,t,n){return f(D.h(e,t,n))},H:function(e){return f(e.getHours())},J:function(e,t){return void 0!==t.ordinal?e.getDate()+t.ordinal(e.getDate()):e.getDate()},K:function(e,t){return t.amPM[m(e.getHours()>11)]},M:function(e,t){return c(e.getMonth(),!0,t)},S:function(e){return f(e.getSeconds())},U:function(e){return e.getTime()/1e3},W:function(e,t,n){return n.getWeek(e)},Y:function(e){return e.getFullYear()},d:function(e){return f(e.getDate())},h:function(e){return e.getHours()%12?e.getHours()%12:12},i:function(e){return f(e.getMinutes())},j:function(e){return e.getDate()},l:function(e,t){return t.weekdays.longhand[e.getDay()]},m:function(e){return f(e.getMonth()+1)},n:function(e){return e.getMonth()+1},s:function(e){return e.getSeconds()},w:function(e){return e.getDay()},y:function(e){return String(e.getFullYear()).substring(2)}};"function"!=typeof Object.assign&&(Object.assign=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];if(!e)throw TypeError("Cannot convert undefined or null to object");for(var a=0,i=t;a<i.length;a++)!function(t){t&&Object.keys(t).forEach(function(n){return e[n]=t[n]})}(i[a]);return e}),"undefined"!=typeof HTMLElement&&(HTMLCollection.prototype.flatpickr=NodeList.prototype.flatpickr=function(e){return r(this,e)},HTMLElement.prototype.flatpickr=function(e){return r([this],e)});var C;return C=function(e,t){return e instanceof NodeList?r(e,t):"string"==typeof e?r(window.document.querySelectorAll(e),t):r([e],t)},"object"==typeof window&&(window.flatpickr=C),C.defaultConfig=s,C.l10ns={en:l({},u),default:l({},u)},C.localize=function(e){C.l10ns.default=l({},C.l10ns.default,e)},C.setDefaults=function(e){C.defaultConfig=l({},C.defaultConfig,e)},"undefined"!=typeof jQuery&&(jQuery.fn.flatpickr=function(e){return r(this,e)}),Date.prototype.fp_incr=function(e){return new Date(this.getFullYear(),this.getMonth(),this.getDate()+("string"==typeof e?parseInt(e,10):e))},C});assets/lib/color-thief/color-thief.min.js000064400000015012151327220410014356 0ustar00/*! color-thief v2.3.2 | (c) Lokesh Dhakar | https://github.com/lokesh/color-thief/blob/master/LICENSE */
!function(t,r){"object"==typeof exports&&"undefined"!=typeof module?module.exports=r():"function"==typeof define&&define.amd?define(r):t.ColorThief=r()}(this,function(){if(!t)var t={map:function(t,r){var n={};return r?t.map(function(t,o){return n.index=o,r.call(n,t)}):t.slice()},naturalOrder:function(t,r){return t<r?-1:t>r?1:0},sum:function(t,r){var n={};return t.reduce(r?function(t,o,e){return n.index=e,t+r.call(n,o)}:function(t,r){return t+r},0)},max:function(r,n){return Math.max.apply(null,n?t.map(r,n):r)}};var r=function(){var r=5,n=8-r,o=1e3;function e(t,n,o){return(t<<2*r)+(n<<r)+o}function i(t){var r=[],n=!1;function o(){r.sort(t),n=!0}return{push:function(t){r.push(t),n=!1},peek:function(t){return n||o(),void 0===t&&(t=r.length-1),r[t]},pop:function(){return n||o(),r.pop()},size:function(){return r.length},map:function(t){return r.map(t)},debug:function(){return n||o(),r}}}function u(t,r,n,o,e,i,u){this.r1=t,this.r2=r,this.g1=n,this.g2=o,this.b1=e,this.b2=i,this.histo=u}function a(){this.vboxes=new i(function(r,n){return t.naturalOrder(r.vbox.count()*r.vbox.volume(),n.vbox.count()*n.vbox.volume())})}function s(r,n){if(n.count()){var o=n.r2-n.r1+1,i=n.g2-n.g1+1,u=t.max([o,i,n.b2-n.b1+1]);if(1==n.count())return[n.copy()];var a,s,h,c,f=0,v=[],l=[];if(u==o)for(a=n.r1;a<=n.r2;a++){for(c=0,s=n.g1;s<=n.g2;s++)for(h=n.b1;h<=n.b2;h++)c+=r[e(a,s,h)]||0;v[a]=f+=c}else if(u==i)for(a=n.g1;a<=n.g2;a++){for(c=0,s=n.r1;s<=n.r2;s++)for(h=n.b1;h<=n.b2;h++)c+=r[e(s,a,h)]||0;v[a]=f+=c}else for(a=n.b1;a<=n.b2;a++){for(c=0,s=n.r1;s<=n.r2;s++)for(h=n.g1;h<=n.g2;h++)c+=r[e(s,h,a)]||0;v[a]=f+=c}return v.forEach(function(t,r){l[r]=f-t}),function(t){var r,o,e,i,u,s=t+"1",h=t+"2",c=0;for(a=n[s];a<=n[h];a++)if(v[a]>f/2){for(e=n.copy(),i=n.copy(),u=(r=a-n[s])<=(o=n[h]-a)?Math.min(n[h]-1,~~(a+o/2)):Math.max(n[s],~~(a-1-r/2));!v[u];)u++;for(c=l[u];!c&&v[u-1];)c=l[--u];return e[h]=u,i[s]=e[h]+1,[e,i]}}(u==o?"r":u==i?"g":"b")}}return u.prototype={volume:function(t){return this._volume&&!t||(this._volume=(this.r2-this.r1+1)*(this.g2-this.g1+1)*(this.b2-this.b1+1)),this._volume},count:function(t){var r=this.histo;if(!this._count_set||t){var n,o,i,u=0;for(n=this.r1;n<=this.r2;n++)for(o=this.g1;o<=this.g2;o++)for(i=this.b1;i<=this.b2;i++)u+=r[e(n,o,i)]||0;this._count=u,this._count_set=!0}return this._count},copy:function(){return new u(this.r1,this.r2,this.g1,this.g2,this.b1,this.b2,this.histo)},avg:function(t){var n=this.histo;if(!this._avg||t){var o,i,u,a,s=0,h=1<<8-r,c=0,f=0,v=0;for(i=this.r1;i<=this.r2;i++)for(u=this.g1;u<=this.g2;u++)for(a=this.b1;a<=this.b2;a++)s+=o=n[e(i,u,a)]||0,c+=o*(i+.5)*h,f+=o*(u+.5)*h,v+=o*(a+.5)*h;this._avg=s?[~~(c/s),~~(f/s),~~(v/s)]:[~~(h*(this.r1+this.r2+1)/2),~~(h*(this.g1+this.g2+1)/2),~~(h*(this.b1+this.b2+1)/2)]}return this._avg},contains:function(t){var r=t[0]>>n;return gval=t[1]>>n,bval=t[2]>>n,r>=this.r1&&r<=this.r2&&gval>=this.g1&&gval<=this.g2&&bval>=this.b1&&bval<=this.b2}},a.prototype={push:function(t){this.vboxes.push({vbox:t,color:t.avg()})},palette:function(){return this.vboxes.map(function(t){return t.color})},size:function(){return this.vboxes.size()},map:function(t){for(var r=this.vboxes,n=0;n<r.size();n++)if(r.peek(n).vbox.contains(t))return r.peek(n).color;return this.nearest(t)},nearest:function(t){for(var r,n,o,e=this.vboxes,i=0;i<e.size();i++)((n=Math.sqrt(Math.pow(t[0]-e.peek(i).color[0],2)+Math.pow(t[1]-e.peek(i).color[1],2)+Math.pow(t[2]-e.peek(i).color[2],2)))<r||void 0===r)&&(r=n,o=e.peek(i).color);return o},forcebw:function(){var r=this.vboxes;r.sort(function(r,n){return t.naturalOrder(t.sum(r.color),t.sum(n.color))});var n=r[0].color;n[0]<5&&n[1]<5&&n[2]<5&&(r[0].color=[0,0,0]);var o=r.length-1,e=r[o].color;e[0]>251&&e[1]>251&&e[2]>251&&(r[o].color=[255,255,255])}},{quantize:function(h,c){if(!h.length||c<2||c>256)return!1;var f=function(t){var o,i=new Array(1<<3*r);return t.forEach(function(t){o=e(t[0]>>n,t[1]>>n,t[2]>>n),i[o]=(i[o]||0)+1}),i}(h);f.forEach(function(){});var v=function(t,r){var o,e,i,a=1e6,s=0,h=1e6,c=0,f=1e6,v=0;return t.forEach(function(t){(o=t[0]>>n)<a?a=o:o>s&&(s=o),(e=t[1]>>n)<h?h=e:e>c&&(c=e),(i=t[2]>>n)<f?f=i:i>v&&(v=i)}),new u(a,s,h,c,f,v,r)}(h,f),l=new i(function(r,n){return t.naturalOrder(r.count(),n.count())});function g(t,r){for(var n,e=t.size(),i=0;i<o;){if(e>=r)return;if(i++>o)return;if((n=t.pop()).count()){var u=s(f,n),a=u[0],h=u[1];if(!a)return;t.push(a),h&&(t.push(h),e++)}else t.push(n),i++}}l.push(v),g(l,.75*c);for(var p=new i(function(r,n){return t.naturalOrder(r.count()*r.volume(),n.count()*n.volume())});l.size();)p.push(l.pop());g(p,c);for(var d=new a;p.size();)d.push(p.pop());return d}}}().quantize,n=function(t){this.canvas=document.createElement("canvas"),this.context=this.canvas.getContext("2d"),this.width=this.canvas.width=t.naturalWidth,this.height=this.canvas.height=t.naturalHeight,this.context.drawImage(t,0,0,this.width,this.height)};n.prototype.getImageData=function(){return this.context.getImageData(0,0,this.width,this.height)};var o=function(){};return o.prototype.getColor=function(t,r){return void 0===r&&(r=10),this.getPalette(t,5,r)[0]},o.prototype.getPalette=function(t,o,e){var i=function(t){var r=t.colorCount,n=t.quality;if(void 0!==r&&Number.isInteger(r)){if(1===r)throw new Error("colorCount should be between 2 and 20. To get one color, call getColor() instead of getPalette()");r=Math.max(r,2),r=Math.min(r,20)}else r=10;return(void 0===n||!Number.isInteger(n)||n<1)&&(n=10),{colorCount:r,quality:n}}({colorCount:o,quality:e}),u=new n(t),a=function(t,r,n){for(var o=t,e=[],i=0,u=void 0,a=void 0,s=void 0,h=void 0,c=void 0;i<r;i+=n)a=o[0+(u=4*i)],s=o[u+1],h=o[u+2],(void 0===(c=o[u+3])||c>=125)&&(a>250&&s>250&&h>250||e.push([a,s,h]));return e}(u.getImageData().data,u.width*u.height,i.quality),s=r(a,i.colorCount);return s?s.palette():null},o.prototype.getColorFromUrl=function(t,r,n){var o=this,e=document.createElement("img");e.addEventListener("load",function(){var i=o.getPalette(e,5,n);r(i[0],t)}),e.src=t},o.prototype.getImageData=function(t,r){var n=new XMLHttpRequest;n.open("GET",t,!0),n.responseType="arraybuffer",n.onload=function(){if(200==this.status){var t=new Uint8Array(this.response);i=t.length;for(var n=new Array(i),o=0;o<t.length;o++)n[o]=String.fromCharCode(t[o]);var e=n.join(""),u=window.btoa(e);r("data:image/png;base64,"+u)}},n.send()},o.prototype.getColorAsync=function(t,r,n){var o=this;this.getImageData(t,function(t){var e=document.createElement("img");e.addEventListener("load",function(){var t=o.getPalette(e,5,n);r(t[0],this)}),e.src=t})},o});
assets/lib/imagesloaded/imagesloaded.js000064400000027773151327220410014223 0ustar00/*!
 * imagesLoaded PACKAGED v4.1.0
 * JavaScript is all like "You images are done yet or what?"
 * MIT License
 */

/**
 * EvEmitter v1.0.1
 * Lil' event emitter
 * MIT License
 */

/* jshint unused: true, undef: true, strict: true */

( function( global, factory ) {
  // universal module definition
  /* jshint strict: false */ /* globals define, module */
  if ( typeof define == 'function' && define.amd ) {
    // AMD - RequireJS
    define( 'ev-emitter/ev-emitter',factory );
  } else if ( typeof module == 'object' && module.exports ) {
    // CommonJS - Browserify, Webpack
    module.exports = factory();
  } else {
    // Browser globals
    global.EvEmitter = factory();
  }

}( this, function() {



function EvEmitter() {}

var proto = EvEmitter.prototype;

proto.on = function( eventName, listener ) {
  if ( !eventName || !listener ) {
    return;
  }
  // set events hash
  var events = this._events = this._events || {};
  // set listeners array
  var listeners = events[ eventName ] = events[ eventName ] || [];
  // only add once
  if ( listeners.indexOf( listener ) == -1 ) {
    listeners.push( listener );
  }

  return this;
};

proto.once = function( eventName, listener ) {
  if ( !eventName || !listener ) {
    return;
  }
  // add event
  this.on( eventName, listener );
  // set once flag
  // set onceEvents hash
  var onceEvents = this._onceEvents = this._onceEvents || {};
  // set onceListeners array
  var onceListeners = onceEvents[ eventName ] = onceEvents[ eventName ] || [];
  // set flag
  onceListeners[ listener ] = true;

  return this;
};

proto.off = function( eventName, listener ) {
  var listeners = this._events && this._events[ eventName ];
  if ( !listeners || !listeners.length ) {
    return;
  }
  var index = listeners.indexOf( listener );
  if ( index != -1 ) {
    listeners.splice( index, 1 );
  }

  return this;
};

proto.emitEvent = function( eventName, args ) {
  var listeners = this._events && this._events[ eventName ];
  if ( !listeners || !listeners.length ) {
    return;
  }
  var i = 0;
  var listener = listeners[i];
  args = args || [];
  // once stuff
  var onceListeners = this._onceEvents && this._onceEvents[ eventName ];

  while ( listener ) {
    var isOnce = onceListeners && onceListeners[ listener ];
    if ( isOnce ) {
      // remove listener
      // remove before trigger to prevent recursion
      this.off( eventName, listener );
      // unset once flag
      delete onceListeners[ listener ];
    }
    // trigger listener
    listener.apply( this, args );
    // get next listener
    i += isOnce ? 0 : 1;
    listener = listeners[i];
  }

  return this;
};

return EvEmitter;

}));

/*!
 * imagesLoaded v4.1.0
 * JavaScript is all like "You images are done yet or what?"
 * MIT License
 */

( function( window, factory ) { 'use strict';
  // universal module definition

  /*global define: false, module: false, require: false */

  if ( typeof define == 'function' && define.amd ) {
    // AMD
    define( [
      'ev-emitter/ev-emitter'
    ], function( EvEmitter ) {
      return factory( window, EvEmitter );
    });
  } else if ( typeof module == 'object' && module.exports ) {
    // CommonJS
    module.exports = factory(
      window,
      require('ev-emitter')
    );
  } else {
    // browser global
    window.imagesLoaded = factory(
      window,
      window.EvEmitter
    );
  }

})( window,

// --------------------------  factory -------------------------- //

function factory( window, EvEmitter ) {



var $ = window.jQuery;
var console = window.console;

// -------------------------- helpers -------------------------- //

// extend objects
function extend( a, b ) {
  for ( var prop in b ) {
    a[ prop ] = b[ prop ];
  }
  return a;
}

// turn element or nodeList into an array
function makeArray( obj ) {
  var ary = [];
  if ( Array.isArray( obj ) ) {
    // use object if already an array
    ary = obj;
  } else if ( typeof obj.length == 'number' ) {
    // convert nodeList to array
    for ( var i=0; i < obj.length; i++ ) {
      ary.push( obj[i] );
    }
  } else {
    // array of single index
    ary.push( obj );
  }
  return ary;
}

// -------------------------- imagesLoaded -------------------------- //

/**
 * @param {Array, Element, NodeList, String} elem
 * @param {Object or Function} options - if function, use as callback
 * @param {Function} onAlways - callback function
 */
function ImagesLoaded( elem, options, onAlways ) {
  // coerce ImagesLoaded() without new, to be new ImagesLoaded()
  if ( !( this instanceof ImagesLoaded ) ) {
    return new ImagesLoaded( elem, options, onAlways );
  }
  // use elem as selector string
  if ( typeof elem == 'string' ) {
    elem = document.querySelectorAll( elem );
  }

  this.elements = makeArray( elem );
  this.options = extend( {}, this.options );

  if ( typeof options == 'function' ) {
    onAlways = options;
  } else {
    extend( this.options, options );
  }

  if ( onAlways ) {
    this.on( 'always', onAlways );
  }

  this.getImages();

  if ( $ ) {
    // add jQuery Deferred object
    this.jqDeferred = new $.Deferred();
  }

  // HACK check async to allow time to bind listeners
  setTimeout( function() {
    this.check();
  }.bind( this ));
}

ImagesLoaded.prototype = Object.create( EvEmitter.prototype );

ImagesLoaded.prototype.options = {};

ImagesLoaded.prototype.getImages = function() {
  this.images = [];

  // filter & find items if we have an item selector
  this.elements.forEach( this.addElementImages, this );
};

/**
 * @param {Node} element
 */
ImagesLoaded.prototype.addElementImages = function( elem ) {
  // filter siblings
  if ( elem.nodeName == 'IMG' ) {
    this.addImage( elem );
  }
  // get background image on element
  if ( this.options.background === true ) {
    this.addElementBackgroundImages( elem );
  }

  // find children
  // no non-element nodes, #143
  var nodeType = elem.nodeType;
  if ( !nodeType || !elementNodeTypes[ nodeType ] ) {
    return;
  }
  var childImgs = elem.querySelectorAll('img');
  // concat childElems to filterFound array
  for ( var i=0; i < childImgs.length; i++ ) {
    var img = childImgs[i];
    this.addImage( img );
  }

  // get child background images
  if ( typeof this.options.background == 'string' ) {
    var children = elem.querySelectorAll( this.options.background );
    for ( i=0; i < children.length; i++ ) {
      var child = children[i];
      this.addElementBackgroundImages( child );
    }
  }
};

var elementNodeTypes = {
  1: true,
  9: true,
  11: true
};

ImagesLoaded.prototype.addElementBackgroundImages = function( elem ) {
  var style = getComputedStyle( elem );
  if ( !style ) {
    // Firefox returns null if in a hidden iframe https://bugzil.la/548397
    return;
  }
  // get url inside url("...")
  var reURL = /url\((['"])?(.*?)\1\)/gi;
  var matches = reURL.exec( style.backgroundImage );
  while ( matches !== null ) {
    var url = matches && matches[2];
    if ( url ) {
      this.addBackground( url, elem );
    }
    matches = reURL.exec( style.backgroundImage );
  }
};

/**
 * @param {Image} img
 */
ImagesLoaded.prototype.addImage = function( img ) {
  var loadingImage = new LoadingImage( img );
  this.images.push( loadingImage );
};

ImagesLoaded.prototype.addBackground = function( url, elem ) {
  var background = new Background( url, elem );
  this.images.push( background );
};

ImagesLoaded.prototype.check = function() {
  var _this = this;
  this.progressedCount = 0;
  this.hasAnyBroken = false;
  // complete if no images
  if ( !this.images.length ) {
    this.complete();
    return;
  }

  function onProgress( image, elem, message ) {
    // HACK - Chrome triggers event before object properties have changed. #83
    setTimeout( function() {
      _this.progress( image, elem, message );
    });
  }

  this.images.forEach( function( loadingImage ) {
    loadingImage.once( 'progress', onProgress );
    loadingImage.check();
  });
};

ImagesLoaded.prototype.progress = function( image, elem, message ) {
  this.progressedCount++;
  this.hasAnyBroken = this.hasAnyBroken || !image.isLoaded;
  // progress event
  this.emitEvent( 'progress', [ this, image, elem ] );
  if ( this.jqDeferred && this.jqDeferred.notify ) {
    this.jqDeferred.notify( this, image );
  }
  // check if completed
  if ( this.progressedCount == this.images.length ) {
    this.complete();
  }

  if ( this.options.debug && console ) {
    console.log( 'progress: ' + message, image, elem );
  }
};

ImagesLoaded.prototype.complete = function() {
  var eventName = this.hasAnyBroken ? 'fail' : 'done';
  this.isComplete = true;
  this.emitEvent( eventName, [ this ] );
  this.emitEvent( 'always', [ this ] );
  if ( this.jqDeferred ) {
    var jqMethod = this.hasAnyBroken ? 'reject' : 'resolve';
    this.jqDeferred[ jqMethod ]( this );
  }
};

// --------------------------  -------------------------- //

function LoadingImage( img ) {
  this.img = img;
}

LoadingImage.prototype = Object.create( EvEmitter.prototype );

LoadingImage.prototype.check = function() {
  // If complete is true and browser supports natural sizes,
  // try to check for image status manually.
  var isComplete = this.getIsImageComplete();
  if ( isComplete ) {
    // report based on naturalWidth
    this.confirm( this.img.naturalWidth !== 0, 'naturalWidth' );
    return;
  }

  // If none of the checks above matched, simulate loading on detached element.
  this.proxyImage = new Image();
  this.proxyImage.addEventListener( 'load', this );
  this.proxyImage.addEventListener( 'error', this );
  // bind to image as well for Firefox. #191
  this.img.addEventListener( 'load', this );
  this.img.addEventListener( 'error', this );
  this.proxyImage.src = this.img.src;
};

LoadingImage.prototype.getIsImageComplete = function() {
  return this.img.complete && this.img.naturalWidth !== undefined;
};

LoadingImage.prototype.confirm = function( isLoaded, message ) {
  this.isLoaded = isLoaded;
  this.emitEvent( 'progress', [ this, this.img, message ] );
};

// ----- events ----- //

// trigger specified handler for event type
LoadingImage.prototype.handleEvent = function( event ) {
  var method = 'on' + event.type;
  if ( this[ method ] ) {
    this[ method ]( event );
  }
};

LoadingImage.prototype.onload = function() {
  this.confirm( true, 'onload' );
  this.unbindEvents();
};

LoadingImage.prototype.onerror = function() {
  this.confirm( false, 'onerror' );
  this.unbindEvents();
};

LoadingImage.prototype.unbindEvents = function() {
  this.proxyImage.removeEventListener( 'load', this );
  this.proxyImage.removeEventListener( 'error', this );
  this.img.removeEventListener( 'load', this );
  this.img.removeEventListener( 'error', this );
};

// -------------------------- Background -------------------------- //

function Background( url, element ) {
  this.url = url;
  this.element = element;
  this.img = new Image();
}

// inherit LoadingImage prototype
Background.prototype = Object.create( LoadingImage.prototype );

Background.prototype.check = function() {
  this.img.addEventListener( 'load', this );
  this.img.addEventListener( 'error', this );
  this.img.src = this.url;
  // check if image is already complete
  var isComplete = this.getIsImageComplete();
  if ( isComplete ) {
    this.confirm( this.img.naturalWidth !== 0, 'naturalWidth' );
    this.unbindEvents();
  }
};

Background.prototype.unbindEvents = function() {
  this.img.removeEventListener( 'load', this );
  this.img.removeEventListener( 'error', this );
};

Background.prototype.confirm = function( isLoaded, message ) {
  this.isLoaded = isLoaded;
  this.emitEvent( 'progress', [ this, this.element, message ] );
};

// -------------------------- jQuery -------------------------- //

ImagesLoaded.makeJQueryPlugin = function( jQuery ) {
  jQuery = jQuery || window.jQuery;
  if ( !jQuery ) {
    return;
  }
  // set local variable
  $ = jQuery;
  // $().imagesLoaded()
  $.fn.imagesLoaded = function( options, callback ) {
    var instance = new ImagesLoaded( this, options, callback );
    return instance.jqDeferred.promise( $(this) );
  };
};
// try making plugin
ImagesLoaded.makeJQueryPlugin();

// --------------------------  -------------------------- //

return ImagesLoaded;

});

assets/lib/imagesloaded/imagesloaded.min.js000064400000015717151327220410015000 0ustar00!function(global,factory){"function"==typeof define&&define.amd?define("ev-emitter/ev-emitter",factory):"object"==typeof module&&module.exports?module.exports=factory():global.EvEmitter=factory()}(this,function(){function EvEmitter(){}var proto=EvEmitter.prototype;return proto.on=function(eventName,listener){if(eventName&&listener){var events=this._events=this._events||{},listeners=events[eventName]=events[eventName]||[];return listeners.indexOf(listener)==-1&&listeners.push(listener),this}},proto.once=function(eventName,listener){if(eventName&&listener){this.on(eventName,listener);var onceEvents=this._onceEvents=this._onceEvents||{},onceListeners=onceEvents[eventName]=onceEvents[eventName]||[];return onceListeners[listener]=!0,this}},proto.off=function(eventName,listener){var listeners=this._events&&this._events[eventName];if(listeners&&listeners.length){var index=listeners.indexOf(listener);return index!=-1&&listeners.splice(index,1),this}},proto.emitEvent=function(eventName,args){var listeners=this._events&&this._events[eventName];if(listeners&&listeners.length){var i=0,listener=listeners[i];args=args||[];for(var onceListeners=this._onceEvents&&this._onceEvents[eventName];listener;){var isOnce=onceListeners&&onceListeners[listener];isOnce&&(this.off(eventName,listener),delete onceListeners[listener]),listener.apply(this,args),i+=isOnce?0:1,listener=listeners[i]}return this}},EvEmitter}),function(window,factory){"use strict";"function"==typeof define&&define.amd?define(["ev-emitter/ev-emitter"],function(EvEmitter){return factory(window,EvEmitter)}):"object"==typeof module&&module.exports?module.exports=factory(window,require("ev-emitter")):window.imagesLoaded=factory(window,window.EvEmitter)}(window,function(window,EvEmitter){function extend(a,b){for(var prop in b)a[prop]=b[prop];return a}function makeArray(obj){var ary=[];if(Array.isArray(obj))ary=obj;else if("number"==typeof obj.length)for(var i=0;i<obj.length;i++)ary.push(obj[i]);else ary.push(obj);return ary}function ImagesLoaded(elem,options,onAlways){return this instanceof ImagesLoaded?("string"==typeof elem&&(elem=document.querySelectorAll(elem)),this.elements=makeArray(elem),this.options=extend({},this.options),"function"==typeof options?onAlways=options:extend(this.options,options),onAlways&&this.on("always",onAlways),this.getImages(),$&&(this.jqDeferred=new $.Deferred),void setTimeout(function(){this.check()}.bind(this))):new ImagesLoaded(elem,options,onAlways)}function LoadingImage(img){this.img=img}function Background(url,element){this.url=url,this.element=element,this.img=new Image}var $=window.jQuery,console=window.console;ImagesLoaded.prototype=Object.create(EvEmitter.prototype),ImagesLoaded.prototype.options={},ImagesLoaded.prototype.getImages=function(){this.images=[],this.elements.forEach(this.addElementImages,this)},ImagesLoaded.prototype.addElementImages=function(elem){"IMG"==elem.nodeName&&this.addImage(elem),this.options.background===!0&&this.addElementBackgroundImages(elem);var nodeType=elem.nodeType;if(nodeType&&elementNodeTypes[nodeType]){for(var childImgs=elem.querySelectorAll("img"),i=0;i<childImgs.length;i++){var img=childImgs[i];this.addImage(img)}if("string"==typeof this.options.background){var children=elem.querySelectorAll(this.options.background);for(i=0;i<children.length;i++){var child=children[i];this.addElementBackgroundImages(child)}}}};var elementNodeTypes={1:!0,9:!0,11:!0};return ImagesLoaded.prototype.addElementBackgroundImages=function(elem){var style=getComputedStyle(elem);if(style)for(var reURL=/url\((['"])?(.*?)\1\)/gi,matches=reURL.exec(style.backgroundImage);null!==matches;){var url=matches&&matches[2];url&&this.addBackground(url,elem),matches=reURL.exec(style.backgroundImage)}},ImagesLoaded.prototype.addImage=function(img){var loadingImage=new LoadingImage(img);this.images.push(loadingImage)},ImagesLoaded.prototype.addBackground=function(url,elem){var background=new Background(url,elem);this.images.push(background)},ImagesLoaded.prototype.check=function(){function onProgress(image,elem,message){setTimeout(function(){_this.progress(image,elem,message)})}var _this=this;return this.progressedCount=0,this.hasAnyBroken=!1,this.images.length?void this.images.forEach(function(loadingImage){loadingImage.once("progress",onProgress),loadingImage.check()}):void this.complete()},ImagesLoaded.prototype.progress=function(image,elem,message){this.progressedCount++,this.hasAnyBroken=this.hasAnyBroken||!image.isLoaded,this.emitEvent("progress",[this,image,elem]),this.jqDeferred&&this.jqDeferred.notify&&this.jqDeferred.notify(this,image),this.progressedCount==this.images.length&&this.complete(),this.options.debug&&console&&console.log("progress: "+message,image,elem)},ImagesLoaded.prototype.complete=function(){var eventName=this.hasAnyBroken?"fail":"done";if(this.isComplete=!0,this.emitEvent(eventName,[this]),this.emitEvent("always",[this]),this.jqDeferred){var jqMethod=this.hasAnyBroken?"reject":"resolve";this.jqDeferred[jqMethod](this)}},LoadingImage.prototype=Object.create(EvEmitter.prototype),LoadingImage.prototype.check=function(){var isComplete=this.getIsImageComplete();return isComplete?void this.confirm(0!==this.img.naturalWidth,"naturalWidth"):(this.proxyImage=new Image,this.proxyImage.addEventListener("load",this),this.proxyImage.addEventListener("error",this),this.img.addEventListener("load",this),this.img.addEventListener("error",this),void(this.proxyImage.src=this.img.src))},LoadingImage.prototype.getIsImageComplete=function(){return this.img.complete&&void 0!==this.img.naturalWidth},LoadingImage.prototype.confirm=function(isLoaded,message){this.isLoaded=isLoaded,this.emitEvent("progress",[this,this.img,message])},LoadingImage.prototype.handleEvent=function(event){var method="on"+event.type;this[method]&&this[method](event)},LoadingImage.prototype.onload=function(){this.confirm(!0,"onload"),this.unbindEvents()},LoadingImage.prototype.onerror=function(){this.confirm(!1,"onerror"),this.unbindEvents()},LoadingImage.prototype.unbindEvents=function(){this.proxyImage.removeEventListener("load",this),this.proxyImage.removeEventListener("error",this),this.img.removeEventListener("load",this),this.img.removeEventListener("error",this)},Background.prototype=Object.create(LoadingImage.prototype),Background.prototype.check=function(){this.img.addEventListener("load",this),this.img.addEventListener("error",this),this.img.src=this.url;var isComplete=this.getIsImageComplete();isComplete&&(this.confirm(0!==this.img.naturalWidth,"naturalWidth"),this.unbindEvents())},Background.prototype.unbindEvents=function(){this.img.removeEventListener("load",this),this.img.removeEventListener("error",this)},Background.prototype.confirm=function(isLoaded,message){this.isLoaded=isLoaded,this.emitEvent("progress",[this,this.element,message])},ImagesLoaded.makeJQueryPlugin=function(jQuery){jQuery=jQuery||window.jQuery,jQuery&&($=jQuery,$.fn.imagesLoaded=function(options,callback){var instance=new ImagesLoaded(this,options,callback);return instance.jqDeferred.promise($(this))})},ImagesLoaded.makeJQueryPlugin(),ImagesLoaded});assets/lib/backbone/backbone.radio.js000064400000024173151327220410013563 0ustar00/*! elementor - v0.7.1 - 18-08-2016 */
// Backbone.Radio v1.0.4

(function (global, factory) {
  typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('underscore'), require('backbone')) :
  typeof define === 'function' && define.amd ? define(['underscore', 'backbone'], factory) :
  (global.Backbone = global.Backbone || {}, global.Backbone.Radio = factory(global._,global.Backbone));
}(this, function (_,Backbone) { 'use strict';

  _ = 'default' in _ ? _['default'] : _;
  Backbone = 'default' in Backbone ? Backbone['default'] : Backbone;

  var babelHelpers = {};
  babelHelpers.typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) {
    return typeof obj;
  } : function (obj) {
    return obj && typeof Symbol === "function" && obj.constructor === Symbol ? "symbol" : typeof obj;
  };
  babelHelpers;

  var previousRadio = Backbone.Radio;

  var Radio = Backbone.Radio = {};

  Radio.VERSION = '1.0.4';

  // This allows you to run multiple instances of Radio on the same
  // webapp. After loading the new version, call `noConflict()` to
  // get a reference to it. At the same time the old version will be
  // returned to Backbone.Radio.
  Radio.noConflict = function () {
    Backbone.Radio = previousRadio;
    return this;
  };

  // Whether or not we're in DEBUG mode or not. DEBUG mode helps you
  // get around the issues of lack of warnings when events are mis-typed.
  Radio.DEBUG = false;

  // Format debug text.
  Radio._debugText = function (warning, eventName, channelName) {
    return warning + (channelName ? ' on the ' + channelName + ' channel' : '') + ': "' + eventName + '"';
  };

  // This is the method that's called when an unregistered event was called.
  // By default, it logs warning to the console. By overriding this you could
  // make it throw an Error, for instance. This would make firing a nonexistent event
  // have the same consequence as firing a nonexistent method on an Object.
  Radio.debugLog = function (warning, eventName, channelName) {
    if (Radio.DEBUG && console && console.warn) {
      console.warn(Radio._debugText(warning, eventName, channelName));
    }
  };

  var eventSplitter = /\s+/;

  // An internal method used to handle Radio's method overloading for Requests.
  // It's borrowed from Backbone.Events. It differs from Backbone's overload
  // API (which is used in Backbone.Events) in that it doesn't support space-separated
  // event names.
  Radio._eventsApi = function (obj, action, name, rest) {
    if (!name) {
      return false;
    }

    var results = {};

    // Handle event maps.
    if ((typeof name === 'undefined' ? 'undefined' : babelHelpers.typeof(name)) === 'object') {
      for (var key in name) {
        var result = obj[action].apply(obj, [key, name[key]].concat(rest));
        eventSplitter.test(key) ? _.extend(results, result) : results[key] = result;
      }
      return results;
    }

    // Handle space separated event names.
    if (eventSplitter.test(name)) {
      var names = name.split(eventSplitter);
      for (var i = 0, l = names.length; i < l; i++) {
        results[names[i]] = obj[action].apply(obj, [names[i]].concat(rest));
      }
      return results;
    }

    return false;
  };

  // An optimized way to execute callbacks.
  Radio._callHandler = function (callback, context, args) {
    var a1 = args[0],
        a2 = args[1],
        a3 = args[2];
    switch (args.length) {
      case 0:
        return callback.call(context);
      case 1:
        return callback.call(context, a1);
      case 2:
        return callback.call(context, a1, a2);
      case 3:
        return callback.call(context, a1, a2, a3);
      default:
        return callback.apply(context, args);
    }
  };

  // A helper used by `off` methods to the handler from the store
  function removeHandler(store, name, callback, context) {
    var event = store[name];
    if ((!callback || callback === event.callback || callback === event.callback._callback) && (!context || context === event.context)) {
      delete store[name];
      return true;
    }
  }

  function removeHandlers(store, name, callback, context) {
    store || (store = {});
    var names = name ? [name] : _.keys(store);
    var matched = false;

    for (var i = 0, length = names.length; i < length; i++) {
      name = names[i];

      // If there's no event by this name, log it and continue
      // with the loop
      if (!store[name]) {
        continue;
      }

      if (removeHandler(store, name, callback, context)) {
        matched = true;
      }
    }

    return matched;
  }

  /*
   * tune-in
   * -------
   * Get console logs of a channel's activity
   *
   */

  var _logs = {};

  // This is to produce an identical function in both tuneIn and tuneOut,
  // so that Backbone.Events unregisters it.
  function _partial(channelName) {
    return _logs[channelName] || (_logs[channelName] = _.partial(Radio.log, channelName));
  }

  _.extend(Radio, {

    // Log information about the channel and event
    log: function log(channelName, eventName) {
      if (typeof console === 'undefined') {
        return;
      }
      var args = _.drop(arguments, 2);
      console.log('[' + channelName + '] "' + eventName + '"', args);
    },

    // Logs all events on this channel to the console. It sets an
    // internal value on the channel telling it we're listening,
    // then sets a listener on the Backbone.Events
    tuneIn: function tuneIn(channelName) {
      var channel = Radio.channel(channelName);
      channel._tunedIn = true;
      channel.on('all', _partial(channelName));
      return this;
    },

    // Stop logging all of the activities on this channel to the console
    tuneOut: function tuneOut(channelName) {
      var channel = Radio.channel(channelName);
      channel._tunedIn = false;
      channel.off('all', _partial(channelName));
      delete _logs[channelName];
      return this;
    }
  });

  /*
   * Backbone.Radio.Requests
   * -----------------------
   * A messaging system for requesting data.
   *
   */

  function makeCallback(callback) {
    return _.isFunction(callback) ? callback : function () {
      return callback;
    };
  }

  Radio.Requests = {

    // Make a request
    request: function request(name) {
      var args = _.rest(arguments);
      var results = Radio._eventsApi(this, 'request', name, args);
      if (results) {
        return results;
      }
      var channelName = this.channelName;
      var requests = this._requests;

      // Check if we should log the request, and if so, do it
      if (channelName && this._tunedIn) {
        Radio.log.apply(this, [channelName, name].concat(args));
      }

      // If the request isn't handled, log it in DEBUG mode and exit
      if (requests && (requests[name] || requests['default'])) {
        var handler = requests[name] || requests['default'];
        args = requests[name] ? args : arguments;
        return Radio._callHandler(handler.callback, handler.context, args);
      } else {
        Radio.debugLog('An unhandled request was fired', name, channelName);
      }
    },

    // Set up a handler for a request
    reply: function reply(name, callback, context) {
      if (Radio._eventsApi(this, 'reply', name, [callback, context])) {
        return this;
      }

      this._requests || (this._requests = {});

      if (this._requests[name]) {
        Radio.debugLog('A request was overwritten', name, this.channelName);
      }

      this._requests[name] = {
        callback: makeCallback(callback),
        context: context || this
      };

      return this;
    },

    // Set up a handler that can only be requested once
    replyOnce: function replyOnce(name, callback, context) {
      if (Radio._eventsApi(this, 'replyOnce', name, [callback, context])) {
        return this;
      }

      var self = this;

      var once = _.once(function () {
        self.stopReplying(name);
        return makeCallback(callback).apply(this, arguments);
      });

      return this.reply(name, once, context);
    },

    // Remove handler(s)
    stopReplying: function stopReplying(name, callback, context) {
      if (Radio._eventsApi(this, 'stopReplying', name)) {
        return this;
      }

      // Remove everything if there are no arguments passed
      if (!name && !callback && !context) {
        delete this._requests;
      } else if (!removeHandlers(this._requests, name, callback, context)) {
        Radio.debugLog('Attempted to remove the unregistered request', name, this.channelName);
      }

      return this;
    }
  };

  /*
   * Backbone.Radio.channel
   * ----------------------
   * Get a reference to a channel by name.
   *
   */

  Radio._channels = {};

  Radio.channel = function (channelName) {
    if (!channelName) {
      throw new Error('You must provide a name for the channel.');
    }

    if (Radio._channels[channelName]) {
      return Radio._channels[channelName];
    } else {
      return Radio._channels[channelName] = new Radio.Channel(channelName);
    }
  };

  /*
   * Backbone.Radio.Channel
   * ----------------------
   * A Channel is an object that extends from Backbone.Events,
   * and Radio.Requests.
   *
   */

  Radio.Channel = function (channelName) {
    this.channelName = channelName;
  };

  _.extend(Radio.Channel.prototype, Backbone.Events, Radio.Requests, {

    // Remove all handlers from the messaging systems of this channel
    reset: function reset() {
      this.off();
      this.stopListening();
      this.stopReplying();
      return this;
    }
  });

  /*
   * Top-level API
   * -------------
   * Supplies the 'top-level API' for working with Channels directly
   * from Backbone.Radio.
   *
   */

  var channel;
  var args;
  var systems = [Backbone.Events, Radio.Requests];
  _.each(systems, function (system) {
    _.each(system, function (method, methodName) {
      Radio[methodName] = function (channelName) {
        args = _.rest(arguments);
        channel = this.channel(channelName);
        return channel[methodName].apply(channel, args);
      };
    });
  });

  Radio.reset = function (channelName) {
    var channels = !channelName ? this._channels : [this._channels[channelName]];
    _.invoke(channels, 'reset');
  };

  return Radio;

}));assets/lib/backbone/backbone.radio.min.js000064400000007251151327220410014343 0ustar00/*! elementor - v0.7.1 - 18-08-2016 */
// Backbone.Radio v1.0.4
!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?module.exports=n(require("underscore"),require("backbone")):"function"==typeof define&&define.amd?define(["underscore","backbone"],n):(e.Backbone=e.Backbone||{},e.Backbone.Radio=n(e._,e.Backbone))}(this,function(e,n){"use strict";function t(e,n,t,r){var o=e[n];return t&&t!==o.callback&&t!==o.callback._callback||r&&r!==o.context?void 0:(delete e[n],!0)}function r(n,r,o,i){n||(n={});for(var s=r?[r]:e.keys(n),u=!1,a=0,c=s.length;c>a;a++)r=s[a],n[r]&&t(n,r,o,i)&&(u=!0);return u}function o(n){return l[n]||(l[n]=e.partial(a.log,n))}function i(n){return e.isFunction(n)?n:function(){return n}}e="default"in e?e["default"]:e,n="default"in n?n["default"]:n;var s={};s["typeof"]="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol?"symbol":typeof e};var u=n.Radio,a=n.Radio={};a.VERSION="1.0.4",a.noConflict=function(){return n.Radio=u,this},a.DEBUG=!1,a._debugText=function(e,n,t){return e+(t?" on the "+t+" channel":"")+': "'+n+'"'},a.debugLog=function(e,n,t){a.DEBUG&&console&&console.warn&&console.warn(a._debugText(e,n,t))};var c=/\s+/;a._eventsApi=function(n,t,r,o){if(!r)return!1;var i={};if("object"===("undefined"==typeof r?"undefined":s["typeof"](r))){for(var u in r){var a=n[t].apply(n,[u,r[u]].concat(o));c.test(u)?e.extend(i,a):i[u]=a}return i}if(c.test(r)){for(var l=r.split(c),f=0,h=l.length;h>f;f++)i[l[f]]=n[t].apply(n,[l[f]].concat(o));return i}return!1},a._callHandler=function(e,n,t){var r=t[0],o=t[1],i=t[2];switch(t.length){case 0:return e.call(n);case 1:return e.call(n,r);case 2:return e.call(n,r,o);case 3:return e.call(n,r,o,i);default:return e.apply(n,t)}};var l={};e.extend(a,{log:function(n,t){if("undefined"!=typeof console){var r=e.drop(arguments,2);console.log("["+n+'] "'+t+'"',r)}},tuneIn:function(e){var n=a.channel(e);return n._tunedIn=!0,n.on("all",o(e)),this},tuneOut:function(e){var n=a.channel(e);return n._tunedIn=!1,n.off("all",o(e)),delete l[e],this}}),a.Requests={request:function(n){var t=e.rest(arguments),r=a._eventsApi(this,"request",n,t);if(r)return r;var o=this.channelName,i=this._requests;if(o&&this._tunedIn&&a.log.apply(this,[o,n].concat(t)),i&&(i[n]||i["default"])){var s=i[n]||i["default"];return t=i[n]?t:arguments,a._callHandler(s.callback,s.context,t)}a.debugLog("An unhandled request was fired",n,o)},reply:function(e,n,t){return a._eventsApi(this,"reply",e,[n,t])?this:(this._requests||(this._requests={}),this._requests[e]&&a.debugLog("A request was overwritten",e,this.channelName),this._requests[e]={callback:i(n),context:t||this},this)},replyOnce:function(n,t,r){if(a._eventsApi(this,"replyOnce",n,[t,r]))return this;var o=this,s=e.once(function(){return o.stopReplying(n),i(t).apply(this,arguments)});return this.reply(n,s,r)},stopReplying:function(e,n,t){return a._eventsApi(this,"stopReplying",e)?this:(e||n||t?r(this._requests,e,n,t)||a.debugLog("Attempted to remove the unregistered request",e,this.channelName):delete this._requests,this)}},a._channels={},a.channel=function(e){if(!e)throw new Error("You must provide a name for the channel.");return a._channels[e]?a._channels[e]:a._channels[e]=new a.Channel(e)},a.Channel=function(e){this.channelName=e},e.extend(a.Channel.prototype,n.Events,a.Requests,{reset:function(){return this.off(),this.stopListening(),this.stopReplying(),this}});var f,h,d=[n.Events,a.Requests];return e.each(d,function(n){e.each(n,function(n,t){a[t]=function(n){return h=e.rest(arguments),f=this.channel(n),f[t].apply(f,h)}})}),a.reset=function(n){var t=n?[this._channels[n]]:this._channels;e.invoke(t,"reset")},a});
assets/lib/backbone/backbone.marionette.min.js000064400000130144151327220410015412 0ustar00/*! elementor - v3.0.15 - 2020-12-20 */
// MarionetteJS (Backbone.Marionette)
// ----------------------------------
// v2.4.5.e1
// Change Log:
// 	e1: Fix - Compatibility with jQuery 3. (`Marionette.Region.reset`).
//
// Copyright (c)2016 Derick Bailey, Muted Solutions, LLC.
// Distributed under MIT license
//
// http://marionettejs.com


/*!
 * Includes BabySitter
 * https://github.com/marionettejs/backbone.babysitter/
 *
 * Includes Wreqr
 * https://github.com/marionettejs/backbone.wreqr/
 */



!function(a,b){if("function"==typeof define&&define.amd)define(["backbone","underscore"],function(c,d){return a.Marionette=a.Mn=b(a,c,d)});else if("undefined"!=typeof exports){var c=require("backbone"),d=require("underscore");module.exports=b(a,c,d)}else a.Marionette=a.Mn=b(a,a.Backbone,a._)}(this,function(a,b,c){"use strict";!function(a,b){var c=a.ChildViewContainer;return a.ChildViewContainer=function(a,b){var c=function(a){this._views={},this._indexByModel={},this._indexByCustom={},this._updateLength(),b.each(a,this.add,this)};b.extend(c.prototype,{add:function(a,b){var c=a.cid;return this._views[c]=a,a.model&&(this._indexByModel[a.model.cid]=c),b&&(this._indexByCustom[b]=c),this._updateLength(),this},findByModel:function(a){return this.findByModelCid(a.cid)},findByModelCid:function(a){var b=this._indexByModel[a];return this.findByCid(b)},findByCustom:function(a){var b=this._indexByCustom[a];return this.findByCid(b)},findByIndex:function(a){return b.values(this._views)[a]},findByCid:function(a){return this._views[a]},remove:function(a){var c=a.cid;return a.model&&delete this._indexByModel[a.model.cid],b.any(this._indexByCustom,function(a,b){return a===c?(delete this._indexByCustom[b],!0):void 0},this),delete this._views[c],this._updateLength(),this},call:function(a){this.apply(a,b.tail(arguments))},apply:function(a,c){b.each(this._views,function(d){b.isFunction(d[a])&&d[a].apply(d,c||[])})},_updateLength:function(){this.length=b.size(this._views)}});var d=["forEach","each","map","find","detect","filter","select","reject","every","all","some","any","include","contains","invoke","toArray","first","initial","rest","last","without","isEmpty","pluck","reduce"];return b.each(d,function(a){c.prototype[a]=function(){var c=b.values(this._views),d=[c].concat(b.toArray(arguments));return b[a].apply(b,d)}}),c}(a,b),a.ChildViewContainer.VERSION="0.1.11",a.ChildViewContainer.noConflict=function(){return a.ChildViewContainer=c,this},a.ChildViewContainer}(b,c),function(a,b){var c=a.Wreqr,d=a.Wreqr={};return a.Wreqr.VERSION="1.3.6",a.Wreqr.noConflict=function(){return a.Wreqr=c,this},d.Handlers=function(a,b){var c=function(a){this.options=a,this._wreqrHandlers={},b.isFunction(this.initialize)&&this.initialize(a)};return c.extend=a.Model.extend,b.extend(c.prototype,a.Events,{setHandlers:function(a){b.each(a,function(a,c){var d=null;b.isObject(a)&&!b.isFunction(a)&&(d=a.context,a=a.callback),this.setHandler(c,a,d)},this)},setHandler:function(a,b,c){var d={callback:b,context:c};this._wreqrHandlers[a]=d,this.trigger("handler:add",a,b,c)},hasHandler:function(a){return!!this._wreqrHandlers[a]},getHandler:function(a){var b=this._wreqrHandlers[a];if(b)return function(){return b.callback.apply(b.context,arguments)}},removeHandler:function(a){delete this._wreqrHandlers[a]},removeAllHandlers:function(){this._wreqrHandlers={}}}),c}(a,b),d.CommandStorage=function(){var c=function(a){this.options=a,this._commands={},b.isFunction(this.initialize)&&this.initialize(a)};return b.extend(c.prototype,a.Events,{getCommands:function(a){var b=this._commands[a];return b||(b={command:a,instances:[]},this._commands[a]=b),b},addCommand:function(a,b){var c=this.getCommands(a);c.instances.push(b)},clearCommands:function(a){var b=this.getCommands(a);b.instances=[]}}),c}(),d.Commands=function(a,b){return a.Handlers.extend({storageType:a.CommandStorage,constructor:function(b){this.options=b||{},this._initializeStorage(this.options),this.on("handler:add",this._executeCommands,this),a.Handlers.prototype.constructor.apply(this,arguments)},execute:function(a){a=arguments[0];var c=b.rest(arguments);this.hasHandler(a)?this.getHandler(a).apply(this,c):this.storage.addCommand(a,c)},_executeCommands:function(a,c,d){var e=this.storage.getCommands(a);b.each(e.instances,function(a){c.apply(d,a)}),this.storage.clearCommands(a)},_initializeStorage:function(a){var c,d=a.storageType||this.storageType;c=b.isFunction(d)?new d:d,this.storage=c}})}(d,b),d.RequestResponse=function(a,b){return a.Handlers.extend({request:function(a){return this.hasHandler(a)?this.getHandler(a).apply(this,b.rest(arguments)):void 0}})}(d,b),d.EventAggregator=function(a,b){var c=function(){};return c.extend=a.Model.extend,b.extend(c.prototype,a.Events),c}(a,b),d.Channel=function(c){var d=function(b){this.vent=new a.Wreqr.EventAggregator,this.reqres=new a.Wreqr.RequestResponse,this.commands=new a.Wreqr.Commands,this.channelName=b};return b.extend(d.prototype,{reset:function(){return this.vent.off(),this.vent.stopListening(),this.reqres.removeAllHandlers(),this.commands.removeAllHandlers(),this},connectEvents:function(a,b){return this._connect("vent",a,b),this},connectCommands:function(a,b){return this._connect("commands",a,b),this},connectRequests:function(a,b){return this._connect("reqres",a,b),this},_connect:function(a,c,d){if(c){d=d||this;var e="vent"===a?"on":"setHandler";b.each(c,function(c,f){this[a][e](f,b.bind(c,d))},this)}}}),d}(d),d.radio=function(a,b){var c=function(){this._channels={},this.vent={},this.commands={},this.reqres={},this._proxyMethods()};b.extend(c.prototype,{channel:function(a){if(!a)throw new Error("Channel must receive a name");return this._getChannel(a)},_getChannel:function(b){var c=this._channels[b];return c||(c=new a.Channel(b),this._channels[b]=c),c},_proxyMethods:function(){b.each(["vent","commands","reqres"],function(a){b.each(d[a],function(b){this[a][b]=e(this,a,b)},this)},this)}});var d={vent:["on","off","trigger","once","stopListening","listenTo","listenToOnce"],commands:["execute","setHandler","setHandlers","removeHandler","removeAllHandlers"],reqres:["request","setHandler","setHandlers","removeHandler","removeAllHandlers"]},e=function(a,c,d){return function(e){var f=a._getChannel(e)[c];return f[d].apply(f,b.rest(arguments))}};return new c}(d,b),a.Wreqr}(b,c);var d=a.Marionette,e=a.Mn,f=b.Marionette={};f.VERSION="2.4.5",f.noConflict=function(){return a.Marionette=d,a.Mn=e,this},b.Marionette=f,f.Deferred=b.$.Deferred,f.extend=b.Model.extend,f.isNodeAttached=function(a){return b.$.contains(document.documentElement,a)},f.mergeOptions=function(a,b){a&&c.extend(this,c.pick(a,b))},f.getOption=function(a,b){return a&&b?a.options&&void 0!==a.options[b]?a.options[b]:a[b]:void 0},f.proxyGetOption=function(a){return f.getOption(this,a)},f._getValue=function(a,b,d){return c.isFunction(a)&&(a=d?a.apply(b,d):a.call(b)),a},f.normalizeMethods=function(a){return c.reduce(a,function(a,b,d){return c.isFunction(b)||(b=this[b]),b&&(a[d]=b),a},{},this)},f.normalizeUIString=function(a,b){return a.replace(/@ui\.[a-zA-Z-_$0-9]*/g,function(a){return b[a.slice(4)]})},f.normalizeUIKeys=function(a,b){return c.reduce(a,function(a,c,d){var e=f.normalizeUIString(d,b);return a[e]=c,a},{})},f.normalizeUIValues=function(a,b,d){return c.each(a,function(e,g){c.isString(e)?a[g]=f.normalizeUIString(e,b):c.isObject(e)&&c.isArray(d)&&(c.extend(e,f.normalizeUIValues(c.pick(e,d),b)),c.each(d,function(a){var d=e[a];c.isString(d)&&(e[a]=f.normalizeUIString(d,b))}))}),a},f.actAsCollection=function(a,b){var d=["forEach","each","map","find","detect","filter","select","reject","every","all","some","any","include","contains","invoke","toArray","first","initial","rest","last","without","isEmpty","pluck"];c.each(d,function(d){a[d]=function(){var a=c.values(c.result(this,b)),e=[a].concat(c.toArray(arguments));return c[d].apply(c,e)}})};var g=f.deprecate=function(a,b){c.isObject(a)&&(a=a.prev+" is going to be removed in the future. Please use "+a.next+" instead."+(a.url?" See: "+a.url:"")),void 0!==b&&b||g._cache[a]||(g._warn("Deprecation warning: "+a),g._cache[a]=!0)};g._console="undefined"!=typeof console?console:{},g._warn=function(){var a=g._console.warn||g._console.log||function(){};return a.apply(g._console,arguments)},g._cache={},f._triggerMethod=function(){function a(a,b,c){return c.toUpperCase()}var b=/(^|:)(\w)/gi;return function(d,e,f){var g=arguments.length<3;g&&(f=e,e=f[0]);var h,i="on"+e.replace(b,a),j=d[i];return c.isFunction(j)&&(h=j.apply(d,g?c.rest(f):f)),c.isFunction(d.trigger)&&(g+f.length>1?d.trigger.apply(d,g?f:[e].concat(c.drop(f,0))):d.trigger(e)),h}}(),f.triggerMethod=function(a){return f._triggerMethod(this,arguments)},f.triggerMethodOn=function(a){var b=c.isFunction(a.triggerMethod)?a.triggerMethod:f.triggerMethod;return b.apply(a,c.rest(arguments))},f.MonitorDOMRefresh=function(a){function b(){a._isShown=!0,d()}function c(){a._isRendered=!0,d()}function d(){a._isShown&&a._isRendered&&f.isNodeAttached(a.el)&&f.triggerMethodOn(a,"dom:refresh",a)}a._isDomRefreshMonitored||(a._isDomRefreshMonitored=!0,a.on({show:b,render:c}))},function(a){function b(b,d,e,f){var g=f.split(/\s+/);c.each(g,function(c){var f=b[c];if(!f)throw new a.Error('Method "'+c+'" was configured as an event handler, but does not exist.');b.listenTo(d,e,f)})}function d(a,b,c,d){a.listenTo(b,c,d)}function e(a,b,d,e){var f=e.split(/\s+/);c.each(f,function(c){var e=a[c];a.stopListening(b,d,e)})}function f(a,b,c,d){a.stopListening(b,c,d)}function g(b,d,e,f,g){if(d&&e){if(!c.isObject(e))throw new a.Error({message:"Bindings must be an object or function.",url:"marionette.functions.html#marionettebindentityevents"});e=a._getValue(e,b),c.each(e,function(a,e){c.isFunction(a)?f(b,d,e,a):g(b,d,e,a)})}}a.bindEntityEvents=function(a,c,e){g(a,c,e,d,b)},a.unbindEntityEvents=function(a,b,c){g(a,b,c,f,e)},a.proxyBindEntityEvents=function(b,c){return a.bindEntityEvents(this,b,c)},a.proxyUnbindEntityEvents=function(b,c){return a.unbindEntityEvents(this,b,c)}}(f);var h=["description","fileName","lineNumber","name","message","number"];return f.Error=f.extend.call(Error,{urlRoot:"http://marionettejs.com/docs/v"+f.VERSION+"/",constructor:function(a,b){c.isObject(a)?(b=a,a=b.message):b||(b={});var d=Error.call(this,a);c.extend(this,c.pick(d,h),c.pick(b,h)),this.captureStackTrace(),b.url&&(this.url=this.urlRoot+b.url)},captureStackTrace:function(){Error.captureStackTrace&&Error.captureStackTrace(this,f.Error)},toString:function(){return this.name+": "+this.message+(this.url?" See: "+this.url:"")}}),f.Error.extend=f.extend,f.Callbacks=function(){this._deferred=f.Deferred(),this._callbacks=[]},c.extend(f.Callbacks.prototype,{add:function(a,b){var d=c.result(this._deferred,"promise");this._callbacks.push({cb:a,ctx:b}),d.then(function(c){b&&(c.context=b),a.call(c.context,c.options)})},run:function(a,b){this._deferred.resolve({options:a,context:b})},reset:function(){var a=this._callbacks;this._deferred=f.Deferred(),this._callbacks=[],c.each(a,function(a){this.add(a.cb,a.ctx)},this)}}),f.Controller=function(a){this.options=a||{},c.isFunction(this.initialize)&&this.initialize(this.options)},f.Controller.extend=f.extend,c.extend(f.Controller.prototype,b.Events,{destroy:function(){return f._triggerMethod(this,"before:destroy",arguments),f._triggerMethod(this,"destroy",arguments),this.stopListening(),this.off(),this},triggerMethod:f.triggerMethod,mergeOptions:f.mergeOptions,getOption:f.proxyGetOption}),f.Object=function(a){this.options=c.extend({},c.result(this,"options"),a),this.initialize.apply(this,arguments)},f.Object.extend=f.extend,c.extend(f.Object.prototype,b.Events,{initialize:function(){},destroy:function(a){return a=a||{},this.triggerMethod("before:destroy",a),this.triggerMethod("destroy",a),this.stopListening(),this},triggerMethod:f.triggerMethod,mergeOptions:f.mergeOptions,getOption:f.proxyGetOption,bindEntityEvents:f.proxyBindEntityEvents,unbindEntityEvents:f.proxyUnbindEntityEvents}),f.Region=f.Object.extend({constructor:function(a){if(this.options=a||{},this.el=this.getOption("el"),this.el=this.el instanceof b.$?this.el[0]:this.el,!this.el)throw new f.Error({name:"NoElError",message:'An "el" must be specified for a region.'});this.$el=this.getEl(this.el),f.Object.call(this,a)},show:function(a,b){if(this._ensureElement()){this._ensureViewIsIntact(a),f.MonitorDOMRefresh(a);var d=b||{},e=a!==this.currentView,g=!!d.preventDestroy,h=!!d.forceShow,i=!!this.currentView,j=e&&!g,k=e||h;if(i&&this.triggerMethod("before:swapOut",this.currentView,this,b),this.currentView&&e&&delete this.currentView._parent,j?this.empty():i&&k&&this.currentView.off("destroy",this.empty,this),k){a.once("destroy",this.empty,this),a._parent=this,this._renderView(a),i&&this.triggerMethod("before:swap",a,this,b),this.triggerMethod("before:show",a,this,b),f.triggerMethodOn(a,"before:show",a,this,b),i&&this.triggerMethod("swapOut",this.currentView,this,b);var l=f.isNodeAttached(this.el),m=[],n=c.extend({triggerBeforeAttach:this.triggerBeforeAttach,triggerAttach:this.triggerAttach},d);return l&&n.triggerBeforeAttach&&(m=this._displayedViews(a),this._triggerAttach(m,"before:")),this.attachHtml(a),this.currentView=a,l&&n.triggerAttach&&(m=this._displayedViews(a),this._triggerAttach(m)),i&&this.triggerMethod("swap",a,this,b),this.triggerMethod("show",a,this,b),f.triggerMethodOn(a,"show",a,this,b),this}return this}},triggerBeforeAttach:!0,triggerAttach:!0,_triggerAttach:function(a,b){var d=(b||"")+"attach";c.each(a,function(a){f.triggerMethodOn(a,d,a,this)},this)},_displayedViews:function(a){return c.union([a],c.result(a,"_getNestedViews")||[])},_renderView:function(a){a.supportsRenderLifecycle||f.triggerMethodOn(a,"before:render",a),a.render(),a.supportsRenderLifecycle||f.triggerMethodOn(a,"render",a)},_ensureElement:function(){if(c.isObject(this.el)||(this.$el=this.getEl(this.el),this.el=this.$el[0]),!this.$el||0===this.$el.length){if(this.getOption("allowMissingEl"))return!1;throw new f.Error('An "el" '+this.$el.selector+" must exist in DOM")}return!0},_ensureViewIsIntact:function(a){if(!a)throw new f.Error({name:"ViewNotValid",message:"The view passed is undefined and therefore invalid. You must pass a view instance to show."});if(a.isDestroyed)throw new f.Error({name:"ViewDestroyedError",message:'View (cid: "'+a.cid+'") has already been destroyed and cannot be used.'})},getEl:function(a){return b.$(a,f._getValue(this.options.parentEl,this))},attachHtml:function(a){this.$el.contents().detach(),this.el.appendChild(a.el)},empty:function(a){var b=this.currentView,c=a||{},d=!!c.preventDestroy;return b?(b.off("destroy",this.empty,this),this.triggerMethod("before:empty",b),d||this._destroyView(),this.triggerMethod("empty",b),delete this.currentView,d&&this.$el.contents().detach(),this):this},_destroyView:function(){var a=this.currentView;a.isDestroyed||(a.supportsDestroyLifecycle||f.triggerMethodOn(a,"before:destroy",a),a.destroy?a.destroy():(a.remove(),a.isDestroyed=!0),a.supportsDestroyLifecycle||f.triggerMethodOn(a,"destroy",a))},attachView:function(a){return this.currentView&&delete this.currentView._parent,a._parent=this,this.currentView=a,this},hasView:function(){return!!this.currentView},reset:function(){return this.empty(),this.$el&&(this.el=this.options.el),delete this.$el,this}},{buildRegion:function(a,b){if(c.isString(a))return this._buildRegionFromSelector(a,b);if(a.selector||a.el||a.regionClass)return this._buildRegionFromObject(a,b);if(c.isFunction(a))return this._buildRegionFromRegionClass(a);throw new f.Error({message:"Improper region configuration type.",url:"marionette.region.html#region-configuration-types"})},_buildRegionFromSelector:function(a,b){return new b({el:a})},_buildRegionFromObject:function(a,b){var d=a.regionClass||b,e=c.omit(a,"selector","regionClass");return a.selector&&!e.el&&(e.el=a.selector),new d(e)},_buildRegionFromRegionClass:function(a){return new a}}),f.RegionManager=f.Controller.extend({constructor:function(a){this._regions={},this.length=0,f.Controller.call(this,a),this.addRegions(this.getOption("regions"))},addRegions:function(a,b){return a=f._getValue(a,this,arguments),c.reduce(a,function(a,d,e){return c.isString(d)&&(d={selector:d}),d.selector&&(d=c.defaults({},d,b)),a[e]=this.addRegion(e,d),a},{},this)},addRegion:function(a,b){var c;return c=b instanceof f.Region?b:f.Region.buildRegion(b,f.Region),this.triggerMethod("before:add:region",a,c),c._parent=this,this._store(a,c),this.triggerMethod("add:region",a,c),c},get:function(a){return this._regions[a]},getRegions:function(){return c.clone(this._regions)},removeRegion:function(a){var b=this._regions[a];return this._remove(a,b),b},removeRegions:function(){var a=this.getRegions();return c.each(this._regions,function(a,b){this._remove(b,a)},this),a},emptyRegions:function(){var a=this.getRegions();return c.invoke(a,"empty"),a},destroy:function(){return this.removeRegions(),f.Controller.prototype.destroy.apply(this,arguments)},_store:function(a,b){this._regions[a]||this.length++,this._regions[a]=b},_remove:function(a,b){this.triggerMethod("before:remove:region",a,b),b.empty(),b.stopListening(),delete b._parent,delete this._regions[a],this.length--,this.triggerMethod("remove:region",a,b)}}),f.actAsCollection(f.RegionManager.prototype,"_regions"),f.TemplateCache=function(a){this.templateId=a},c.extend(f.TemplateCache,{templateCaches:{},get:function(a,b){var c=this.templateCaches[a];return c||(c=new f.TemplateCache(a),this.templateCaches[a]=c),c.load(b)},clear:function(){var a,b=c.toArray(arguments),d=b.length;if(d>0)for(a=0;d>a;a++)delete this.templateCaches[b[a]];else this.templateCaches={}}}),c.extend(f.TemplateCache.prototype,{load:function(a){if(this.compiledTemplate)return this.compiledTemplate;var b=this.loadTemplate(this.templateId,a);return this.compiledTemplate=this.compileTemplate(b,a),this.compiledTemplate},loadTemplate:function(a,c){var d=b.$(a);if(!d.length)throw new f.Error({name:"NoTemplateError",message:'Could not find template: "'+a+'"'});return d.html()},compileTemplate:function(a,b){return c.template(a,b)}}),f.Renderer={render:function(a,b){if(!a)throw new f.Error({name:"TemplateNotFoundError",message:"Cannot render the template since its false, null or undefined."});var d=c.isFunction(a)?a:f.TemplateCache.get(a);return d(b)}},f.View=b.View.extend({isDestroyed:!1,supportsRenderLifecycle:!0,supportsDestroyLifecycle:!0,constructor:function(a){this.render=c.bind(this.render,this),a=f._getValue(a,this),this.options=c.extend({},c.result(this,"options"),a),this._behaviors=f.Behaviors(this),b.View.call(this,this.options),f.MonitorDOMRefresh(this)},getTemplate:function(){return this.getOption("template")},serializeModel:function(a){return a.toJSON.apply(a,c.rest(arguments))},mixinTemplateHelpers:function(a){a=a||{};var b=this.getOption("templateHelpers");return b=f._getValue(b,this),c.extend(a,b)},normalizeUIKeys:function(a){var b=c.result(this,"_uiBindings");return f.normalizeUIKeys(a,b||c.result(this,"ui"))},normalizeUIValues:function(a,b){var d=c.result(this,"ui"),e=c.result(this,"_uiBindings");return f.normalizeUIValues(a,e||d,b)},configureTriggers:function(){if(this.triggers){var a=this.normalizeUIKeys(c.result(this,"triggers"));return c.reduce(a,function(a,b,c){return a[c]=this._buildViewTrigger(b),a},{},this)}},delegateEvents:function(a){return this._delegateDOMEvents(a),this.bindEntityEvents(this.model,this.getOption("modelEvents")),this.bindEntityEvents(this.collection,this.getOption("collectionEvents")),c.each(this._behaviors,function(a){a.bindEntityEvents(this.model,a.getOption("modelEvents")),a.bindEntityEvents(this.collection,a.getOption("collectionEvents"))},this),this},_delegateDOMEvents:function(a){var d=f._getValue(a||this.events,this);d=this.normalizeUIKeys(d),c.isUndefined(a)&&(this.events=d);var e={},g=c.result(this,"behaviorEvents")||{},h=this.configureTriggers(),i=c.result(this,"behaviorTriggers")||{};c.extend(e,g,d,h,i),b.View.prototype.delegateEvents.call(this,e)},undelegateEvents:function(){return b.View.prototype.undelegateEvents.apply(this,arguments),this.unbindEntityEvents(this.model,this.getOption("modelEvents")),this.unbindEntityEvents(this.collection,this.getOption("collectionEvents")),c.each(this._behaviors,function(a){a.unbindEntityEvents(this.model,a.getOption("modelEvents")),a.unbindEntityEvents(this.collection,a.getOption("collectionEvents"))},this),this},_ensureViewIsIntact:function(){if(this.isDestroyed)throw new f.Error({name:"ViewDestroyedError",message:'View (cid: "'+this.cid+'") has already been destroyed and cannot be used.'})},destroy:function(){if(this.isDestroyed)return this;var a=c.toArray(arguments);return this.triggerMethod.apply(this,["before:destroy"].concat(a)),this.isDestroyed=!0,this.triggerMethod.apply(this,["destroy"].concat(a)),this.unbindUIElements(),this.isRendered=!1,this.remove(),c.invoke(this._behaviors,"destroy",a),this},bindUIElements:function(){this._bindUIElements(),c.invoke(this._behaviors,this._bindUIElements)},_bindUIElements:function(){if(this.ui){this._uiBindings||(this._uiBindings=this.ui);var a=c.result(this,"_uiBindings");this.ui={},c.each(a,function(a,b){this.ui[b]=this.$(a)},this)}},unbindUIElements:function(){this._unbindUIElements(),c.invoke(this._behaviors,this._unbindUIElements)},_unbindUIElements:function(){this.ui&&this._uiBindings&&(c.each(this.ui,function(a,b){delete this.ui[b]},this),this.ui=this._uiBindings,delete this._uiBindings)},_buildViewTrigger:function(a){var b=c.defaults({},a,{preventDefault:!0,stopPropagation:!0}),d=c.isObject(a)?b.event:a;return function(a){a&&(a.preventDefault&&b.preventDefault&&a.preventDefault(),a.stopPropagation&&b.stopPropagation&&a.stopPropagation());var c={view:this,model:this.model,collection:this.collection};this.triggerMethod(d,c)}},setElement:function(){var a=b.View.prototype.setElement.apply(this,arguments);return c.invoke(this._behaviors,"proxyViewProperties",this),a},triggerMethod:function(){var a=f._triggerMethod(this,arguments);return this._triggerEventOnBehaviors(arguments),this._triggerEventOnParentLayout(arguments[0],c.rest(arguments)),a},_triggerEventOnBehaviors:function(a){for(var b=f._triggerMethod,c=this._behaviors,d=0,e=c&&c.length;e>d;d++)b(c[d],a)},_triggerEventOnParentLayout:function(a,b){var d=this._parentLayoutView();if(d){var e=f.getOption(d,"childViewEventPrefix"),g=e+":"+a,h=[this].concat(b);f._triggerMethod(d,g,h);var i=f.getOption(d,"childEvents");i=f._getValue(i,d);var j=d.normalizeMethods(i);j&&c.isFunction(j[a])&&j[a].apply(d,h)}},_getImmediateChildren:function(){return[]},_getNestedViews:function(){var a=this._getImmediateChildren();return a.length?c.reduce(a,function(a,b){return b._getNestedViews?a.concat(b._getNestedViews()):a},a):a},_parentLayoutView:function(){for(var a=this._parent;a;){if(a instanceof f.LayoutView)return a;a=a._parent}},normalizeMethods:f.normalizeMethods,mergeOptions:f.mergeOptions,getOption:f.proxyGetOption,bindEntityEvents:f.proxyBindEntityEvents,unbindEntityEvents:f.proxyUnbindEntityEvents}),f.ItemView=f.View.extend({constructor:function(){f.View.apply(this,arguments)},serializeData:function(){if(!this.model&&!this.collection)return{};var a=[this.model||this.collection];return arguments.length&&a.push.apply(a,arguments),this.model?this.serializeModel.apply(this,a):{items:this.serializeCollection.apply(this,a)}},serializeCollection:function(a){return a.toJSON.apply(a,c.rest(arguments))},render:function(){return this._ensureViewIsIntact(),this.triggerMethod("before:render",this),this._renderTemplate(),this.isRendered=!0,this.bindUIElements(),this.triggerMethod("render",this),this},_renderTemplate:function(){var a=this.getTemplate();if(a!==!1){if(!a)throw new f.Error({name:"UndefinedTemplateError",message:"Cannot render the template since it is null or undefined."});var b=this.mixinTemplateHelpers(this.serializeData()),c=f.Renderer.render(a,b,this);return this.attachElContent(c),this}},attachElContent:function(a){return this.$el.html(a),this}}),f.CollectionView=f.View.extend({childViewEventPrefix:"childview",sort:!0,constructor:function(a){this.once("render",this._initialEvents),this._initChildViewStorage(),f.View.apply(this,arguments),this.on({"before:show":this._onBeforeShowCalled,show:this._onShowCalled,"before:attach":this._onBeforeAttachCalled,attach:this._onAttachCalled}),this.initRenderBuffer()},initRenderBuffer:function(){this._bufferedChildren=[]},startBuffering:function(){this.initRenderBuffer(),this.isBuffering=!0},endBuffering:function(){var a,b=this._isShown&&f.isNodeAttached(this.el);this.isBuffering=!1,this._isShown&&this._triggerMethodMany(this._bufferedChildren,this,"before:show"),b&&this._triggerBeforeAttach&&(a=this._getNestedViews(),this._triggerMethodMany(a,this,"before:attach")),this.attachBuffer(this,this._createBuffer()),b&&this._triggerAttach&&(a=this._getNestedViews(),this._triggerMethodMany(a,this,"attach")),this._isShown&&this._triggerMethodMany(this._bufferedChildren,this,"show"),this.initRenderBuffer()},_triggerMethodMany:function(a,b,d){var e=c.drop(arguments,3);c.each(a,function(a){f.triggerMethodOn.apply(a,[a,d,a,b].concat(e))})},_initialEvents:function(){this.collection&&(this.listenTo(this.collection,"add",this._onCollectionAdd),this.listenTo(this.collection,"remove",this._onCollectionRemove),this.listenTo(this.collection,"reset",this.render),this.getOption("sort")&&this.listenTo(this.collection,"sort",this._sortViews))},_onCollectionAdd:function(a,b,d){var e=void 0!==d.at&&(d.index||b.indexOf(a));if((this.getOption("filter")||e===!1)&&(e=c.indexOf(this._filteredSortedModels(e),a)),this._shouldAddChild(a,e)){this.destroyEmptyView();var f=this.getChildView(a);this.addChild(a,f,e)}},_onCollectionRemove:function(a){var b=this.children.findByModel(a);this.removeChildView(b),this.checkEmpty()},_onBeforeShowCalled:function(){this._triggerBeforeAttach=this._triggerAttach=!1,this.children.each(function(a){f.triggerMethodOn(a,"before:show",a)})},_onShowCalled:function(){this.children.each(function(a){f.triggerMethodOn(a,"show",a)})},_onBeforeAttachCalled:function(){this._triggerBeforeAttach=!0},_onAttachCalled:function(){this._triggerAttach=!0},render:function(){return this._ensureViewIsIntact(),this.triggerMethod("before:render",this),this._renderChildren(),this.isRendered=!0,this.triggerMethod("render",this),this},reorder:function(){var a=this.children,b=this._filteredSortedModels(),d=c.some(b,function(b){return!a.findByModel(b)});if(d)this.render();else{var e=c.map(b,function(b,c){var d=a.findByModel(b);return d._index=c,d.el}),f=a.filter(function(a){return!c.contains(e,a.el)});this.triggerMethod("before:reorder"),this._appendReorderedChildren(e),c.each(f,this.removeChildView,this),this.checkEmpty(),this.triggerMethod("reorder")}},resortView:function(){f.getOption(this,"reorderOnSort")?this.reorder():this.render()},_sortViews:function(){var a=this._filteredSortedModels(),b=c.find(a,function(a,b){var c=this.children.findByModel(a);return!c||c._index!==b},this);b&&this.resortView()},_emptyViewIndex:-1,_appendReorderedChildren:function(a){this.$el.append(a)},_renderChildren:function(){this.destroyEmptyView(),this.destroyChildren({checkEmpty:!1}),this.isEmpty(this.collection)?this.showEmptyView():(this.triggerMethod("before:render:collection",this),this.startBuffering(),this.showCollection(),this.endBuffering(),this.triggerMethod("render:collection",this),this.children.isEmpty()&&this.getOption("filter")&&this.showEmptyView())},showCollection:function(){var a,b=this._filteredSortedModels();c.each(b,function(b,c){a=this.getChildView(b),this.addChild(b,a,c)},this)},_filteredSortedModels:function(a){var b=this.getViewComparator(),d=this.collection.models;if(a=Math.min(Math.max(a,0),d.length-1),b){var e;a&&(e=d[a],d=d.slice(0,a).concat(d.slice(a+1))),d=this._sortModelsBy(d,b),e&&d.splice(a,0,e)}return this.getOption("filter")&&(d=c.filter(d,function(a,b){return this._shouldAddChild(a,b)},this)),d},_sortModelsBy:function(a,b){return"string"==typeof b?c.sortBy(a,function(a){return a.get(b)},this):1===b.length?c.sortBy(a,b,this):a.sort(c.bind(b,this))},showEmptyView:function(){var a=this.getEmptyView();if(a&&!this._showingEmptyView){this.triggerMethod("before:render:empty"),this._showingEmptyView=!0;var c=new b.Model;this.addEmptyView(c,a),this.triggerMethod("render:empty")}},destroyEmptyView:function(){this._showingEmptyView&&(this.triggerMethod("before:remove:empty"),this.destroyChildren(),delete this._showingEmptyView,this.triggerMethod("remove:empty"))},getEmptyView:function(){return this.getOption("emptyView")},addEmptyView:function(a,b){var d,e=this._isShown&&!this.isBuffering&&f.isNodeAttached(this.el),g=this.getOption("emptyViewOptions")||this.getOption("childViewOptions");c.isFunction(g)&&(g=g.call(this,a,this._emptyViewIndex));var h=this.buildChildView(a,b,g);h._parent=this,this.proxyChildEvents(h),h.once("render",function(){this._isShown&&f.triggerMethodOn(h,"before:show",h),e&&this._triggerBeforeAttach&&(d=this._getViewAndNested(h),this._triggerMethodMany(d,this,"before:attach"))},this),this.children.add(h),this.renderChildView(h,this._emptyViewIndex),e&&this._triggerAttach&&(d=this._getViewAndNested(h),this._triggerMethodMany(d,this,"attach")),this._isShown&&f.triggerMethodOn(h,"show",h)},getChildView:function(a){var b=this.getOption("childView");if(!b)throw new f.Error({name:"NoChildViewError",message:'A "childView" must be specified'});return b},addChild:function(a,b,c){var d=this.getOption("childViewOptions");d=f._getValue(d,this,[a,c]);var e=this.buildChildView(a,b,d);return this._updateIndices(e,!0,c),this.triggerMethod("before:add:child",e),this._addChildView(e,c),this.triggerMethod("add:child",e),e._parent=this,e},_updateIndices:function(a,b,c){this.getOption("sort")&&(b&&(a._index=c),this.children.each(function(c){c._index>=a._index&&(c._index+=b?1:-1)}))},_addChildView:function(a,b){var c,d=this._isShown&&!this.isBuffering&&f.isNodeAttached(this.el);this.proxyChildEvents(a),a.once("render",function(){this._isShown&&!this.isBuffering&&f.triggerMethodOn(a,"before:show",a),d&&this._triggerBeforeAttach&&(c=this._getViewAndNested(a),this._triggerMethodMany(c,this,"before:attach"))},this),this.children.add(a),this.renderChildView(a,b),d&&this._triggerAttach&&(c=this._getViewAndNested(a),this._triggerMethodMany(c,this,"attach")),this._isShown&&!this.isBuffering&&f.triggerMethodOn(a,"show",a)},renderChildView:function(a,b){return a.supportsRenderLifecycle||f.triggerMethodOn(a,"before:render",a),a.render(),a.supportsRenderLifecycle||f.triggerMethodOn(a,"render",a),this.attachHtml(this,a,b),a},buildChildView:function(a,b,d){var e=c.extend({model:a},d),g=new b(e);return f.MonitorDOMRefresh(g),g},removeChildView:function(a){return a?(this.triggerMethod("before:remove:child",a),a.supportsDestroyLifecycle||f.triggerMethodOn(a,"before:destroy",a),a.destroy?a.destroy():a.remove(),a.supportsDestroyLifecycle||f.triggerMethodOn(a,"destroy",a),delete a._parent,this.stopListening(a),this.children.remove(a),this.triggerMethod("remove:child",a),this._updateIndices(a,!1),a):a},isEmpty:function(){return!this.collection||0===this.collection.length},checkEmpty:function(){this.isEmpty(this.collection)&&this.showEmptyView()},attachBuffer:function(a,b){a.$el.append(b)},_createBuffer:function(){var a=document.createDocumentFragment();return c.each(this._bufferedChildren,function(b){a.appendChild(b.el)}),a},attachHtml:function(a,b,c){a.isBuffering?a._bufferedChildren.splice(c,0,b):a._insertBefore(b,c)||a._insertAfter(b)},_insertBefore:function(a,b){var c,d=this.getOption("sort")&&b<this.children.length-1;return d&&(c=this.children.find(function(a){return a._index===b+1})),c?(c.$el.before(a.el),!0):!1},_insertAfter:function(a){this.$el.append(a.el)},_initChildViewStorage:function(){this.children=new b.ChildViewContainer},destroy:function(){return this.isDestroyed?this:(this.triggerMethod("before:destroy:collection"),this.destroyChildren({checkEmpty:!1}),this.triggerMethod("destroy:collection"),f.View.prototype.destroy.apply(this,arguments))},destroyChildren:function(a){var b=a||{},d=!0,e=this.children.map(c.identity);return c.isUndefined(b.checkEmpty)||(d=b.checkEmpty),this.children.each(this.removeChildView,this),d&&this.checkEmpty(),e},_shouldAddChild:function(a,b){var d=this.getOption("filter");return!c.isFunction(d)||d.call(this,a,b,this.collection)},proxyChildEvents:function(a){var b=this.getOption("childViewEventPrefix");this.listenTo(a,"all",function(){var d=c.toArray(arguments),e=d[0],f=this.normalizeMethods(c.result(this,"childEvents"));
d[0]=b+":"+e,d.splice(1,0,a),"undefined"!=typeof f&&c.isFunction(f[e])&&f[e].apply(this,d.slice(1)),this.triggerMethod.apply(this,d)})},_getImmediateChildren:function(){return c.values(this.children._views)},_getViewAndNested:function(a){return[a].concat(c.result(a,"_getNestedViews")||[])},getViewComparator:function(){return this.getOption("viewComparator")}}),f.CompositeView=f.CollectionView.extend({constructor:function(){f.CollectionView.apply(this,arguments)},_initialEvents:function(){this.collection&&(this.listenTo(this.collection,"add",this._onCollectionAdd),this.listenTo(this.collection,"remove",this._onCollectionRemove),this.listenTo(this.collection,"reset",this._renderChildren),this.getOption("sort")&&this.listenTo(this.collection,"sort",this._sortViews))},getChildView:function(a){var b=this.getOption("childView")||this.constructor;return b},serializeData:function(){var a={};return this.model&&(a=c.partial(this.serializeModel,this.model).apply(this,arguments)),a},render:function(){return this._ensureViewIsIntact(),this._isRendering=!0,this.resetChildViewContainer(),this.triggerMethod("before:render",this),this._renderTemplate(),this._renderChildren(),this._isRendering=!1,this.isRendered=!0,this.triggerMethod("render",this),this},_renderChildren:function(){(this.isRendered||this._isRendering)&&f.CollectionView.prototype._renderChildren.call(this)},_renderTemplate:function(){var a={};a=this.serializeData(),a=this.mixinTemplateHelpers(a),this.triggerMethod("before:render:template");var b=this.getTemplate(),c=f.Renderer.render(b,a,this);this.attachElContent(c),this.bindUIElements(),this.triggerMethod("render:template")},attachElContent:function(a){return this.$el.html(a),this},attachBuffer:function(a,b){var c=this.getChildViewContainer(a);c.append(b)},_insertAfter:function(a){var b=this.getChildViewContainer(this,a);b.append(a.el)},_appendReorderedChildren:function(a){var b=this.getChildViewContainer(this);b.append(a)},getChildViewContainer:function(a,b){if(a.$childViewContainer)return a.$childViewContainer;var c,d=f.getOption(a,"childViewContainer");if(d){var e=f._getValue(d,a);if(c="@"===e.charAt(0)&&a.ui?a.ui[e.substr(4)]:a.$(e),c.length<=0)throw new f.Error({name:"ChildViewContainerMissingError",message:'The specified "childViewContainer" was not found: '+a.childViewContainer})}else c=a.$el;return a.$childViewContainer=c,c},resetChildViewContainer:function(){this.$childViewContainer&&(this.$childViewContainer=void 0)}}),f.LayoutView=f.ItemView.extend({regionClass:f.Region,options:{destroyImmediate:!1},childViewEventPrefix:"childview",constructor:function(a){a=a||{},this._firstRender=!0,this._initializeRegions(a),f.ItemView.call(this,a)},render:function(){return this._ensureViewIsIntact(),this._firstRender?this._firstRender=!1:this._reInitializeRegions(),f.ItemView.prototype.render.apply(this,arguments)},destroy:function(){return this.isDestroyed?this:(this.getOption("destroyImmediate")===!0&&this.$el.remove(),this.regionManager.destroy(),f.ItemView.prototype.destroy.apply(this,arguments))},showChildView:function(a,b,d){var e=this.getRegion(a);return e.show.apply(e,c.rest(arguments))},getChildView:function(a){return this.getRegion(a).currentView},addRegion:function(a,b){var c={};return c[a]=b,this._buildRegions(c)[a]},addRegions:function(a){return this.regions=c.extend({},this.regions,a),this._buildRegions(a)},removeRegion:function(a){return delete this.regions[a],this.regionManager.removeRegion(a)},getRegion:function(a){return this.regionManager.get(a)},getRegions:function(){return this.regionManager.getRegions()},_buildRegions:function(a){var b={regionClass:this.getOption("regionClass"),parentEl:c.partial(c.result,this,"el")};return this.regionManager.addRegions(a,b)},_initializeRegions:function(a){var b;this._initRegionManager(),b=f._getValue(this.regions,this,[a])||{};var d=this.getOption.call(a,"regions");d=f._getValue(d,this,[a]),c.extend(b,d),b=this.normalizeUIValues(b,["selector","el"]),this.addRegions(b)},_reInitializeRegions:function(){this.regionManager.invoke("reset")},getRegionManager:function(){return new f.RegionManager},_initRegionManager:function(){this.regionManager=this.getRegionManager(),this.regionManager._parent=this,this.listenTo(this.regionManager,"before:add:region",function(a){this.triggerMethod("before:add:region",a)}),this.listenTo(this.regionManager,"add:region",function(a,b){this[a]=b,this.triggerMethod("add:region",a,b)}),this.listenTo(this.regionManager,"before:remove:region",function(a){this.triggerMethod("before:remove:region",a)}),this.listenTo(this.regionManager,"remove:region",function(a,b){delete this[a],this.triggerMethod("remove:region",a,b)})},_getImmediateChildren:function(){return c.chain(this.regionManager.getRegions()).pluck("currentView").compact().value()}}),f.Behavior=f.Object.extend({constructor:function(a,b){this.view=b,this.defaults=c.result(this,"defaults")||{},this.options=c.extend({},this.defaults,a),this.ui=c.extend({},c.result(b,"ui"),c.result(this,"ui")),f.Object.apply(this,arguments)},$:function(){return this.view.$.apply(this.view,arguments)},destroy:function(){return this.stopListening(),this},proxyViewProperties:function(a){this.$el=a.$el,this.el=a.el}}),f.Behaviors=function(a,b){function c(a,d){return b.isObject(a.behaviors)?(d=c.parseBehaviors(a,d||b.result(a,"behaviors")),c.wrap(a,d,b.keys(g)),d):{}}function d(a,b){this._view=a,this._behaviors=b,this._triggers={}}function e(a){return a._uiBindings||a.ui}var f=/^(\S+)\s*(.*)$/,g={behaviorTriggers:function(a,b){var c=new d(this,b);return c.buildBehaviorTriggers()},behaviorEvents:function(c,d){var g={};return b.each(d,function(c,d){var h={},i=b.clone(b.result(c,"events"))||{};i=a.normalizeUIKeys(i,e(c));var j=0;b.each(i,function(a,e){var g=e.match(f),i=g[1]+"."+[this.cid,d,j++," "].join(""),k=g[2],l=i+k,m=b.isFunction(a)?a:c[a];m&&(h[l]=b.bind(m,c))},this),g=b.extend(g,h)},this),g}};return b.extend(c,{behaviorsLookup:function(){throw new a.Error({message:"You must define where your behaviors are stored.",url:"marionette.behaviors.html#behaviorslookup"})},getBehaviorClass:function(b,d){return b.behaviorClass?b.behaviorClass:a._getValue(c.behaviorsLookup,this,[b,d])[d]},parseBehaviors:function(a,d){return b.chain(d).map(function(d,e){var f=c.getBehaviorClass(d,e),g=new f(d,a),h=c.parseBehaviors(a,b.result(g,"behaviors"));return[g].concat(h)}).flatten().value()},wrap:function(a,c,d){b.each(d,function(d){a[d]=b.partial(g[d],a[d],c)})}}),b.extend(d.prototype,{buildBehaviorTriggers:function(){return b.each(this._behaviors,this._buildTriggerHandlersForBehavior,this),this._triggers},_buildTriggerHandlersForBehavior:function(c,d){var f=b.clone(b.result(c,"triggers"))||{};f=a.normalizeUIKeys(f,e(c)),b.each(f,b.bind(this._setHandlerForBehavior,this,c,d))},_setHandlerForBehavior:function(a,b,c,d){var e=d.replace(/^\S+/,function(a){return a+".behaviortriggers"+b});this._triggers[e]=this._view._buildViewTrigger(c)}}),c}(f,c),f.AppRouter=b.Router.extend({constructor:function(a){this.options=a||{},b.Router.apply(this,arguments);var c=this.getOption("appRoutes"),d=this._getController();this.processAppRoutes(d,c),this.on("route",this._processOnRoute,this)},appRoute:function(a,b){var c=this._getController();this._addAppRoute(c,a,b)},_processOnRoute:function(a,b){if(c.isFunction(this.onRoute)){var d=c.invert(this.getOption("appRoutes"))[a];this.onRoute(a,d,b)}},processAppRoutes:function(a,b){if(b){var d=c.keys(b).reverse();c.each(d,function(c){this._addAppRoute(a,c,b[c])},this)}},_getController:function(){return this.getOption("controller")},_addAppRoute:function(a,b,d){var e=a[d];if(!e)throw new f.Error('Method "'+d+'" was not found on the controller');this.route(b,d,c.bind(e,a))},mergeOptions:f.mergeOptions,getOption:f.proxyGetOption,triggerMethod:f.triggerMethod,bindEntityEvents:f.proxyBindEntityEvents,unbindEntityEvents:f.proxyUnbindEntityEvents}),f.Application=f.Object.extend({constructor:function(a){this._initializeRegions(a),this._initCallbacks=new f.Callbacks,this.submodules={},c.extend(this,a),this._initChannel(),f.Object.apply(this,arguments)},execute:function(){this.commands.execute.apply(this.commands,arguments)},request:function(){return this.reqres.request.apply(this.reqres,arguments)},addInitializer:function(a){this._initCallbacks.add(a)},start:function(a){this.triggerMethod("before:start",a),this._initCallbacks.run(a,this),this.triggerMethod("start",a)},addRegions:function(a){return this._regionManager.addRegions(a)},emptyRegions:function(){return this._regionManager.emptyRegions()},removeRegion:function(a){return this._regionManager.removeRegion(a)},getRegion:function(a){return this._regionManager.get(a)},getRegions:function(){return this._regionManager.getRegions()},module:function(a,b){var d=f.Module.getClass(b),e=c.toArray(arguments);return e.unshift(this),d.create.apply(d,e)},getRegionManager:function(){return new f.RegionManager},_initializeRegions:function(a){var b=c.isFunction(this.regions)?this.regions(a):this.regions||{};this._initRegionManager();var d=f.getOption(a,"regions");return c.isFunction(d)&&(d=d.call(this,a)),c.extend(b,d),this.addRegions(b),this},_initRegionManager:function(){this._regionManager=this.getRegionManager(),this._regionManager._parent=this,this.listenTo(this._regionManager,"before:add:region",function(){f._triggerMethod(this,"before:add:region",arguments)}),this.listenTo(this._regionManager,"add:region",function(a,b){this[a]=b,f._triggerMethod(this,"add:region",arguments)}),this.listenTo(this._regionManager,"before:remove:region",function(){f._triggerMethod(this,"before:remove:region",arguments)}),this.listenTo(this._regionManager,"remove:region",function(a){delete this[a],f._triggerMethod(this,"remove:region",arguments)})},_initChannel:function(){this.channelName=c.result(this,"channelName")||"global",this.channel=c.result(this,"channel")||b.Wreqr.radio.channel(this.channelName),this.vent=c.result(this,"vent")||this.channel.vent,this.commands=c.result(this,"commands")||this.channel.commands,this.reqres=c.result(this,"reqres")||this.channel.reqres}}),f.Module=function(a,b,d){this.moduleName=a,this.options=c.extend({},this.options,d),this.initialize=d.initialize||this.initialize,this.submodules={},this._setupInitializersAndFinalizers(),this.app=b,c.isFunction(this.initialize)&&this.initialize(a,b,this.options)},f.Module.extend=f.extend,c.extend(f.Module.prototype,b.Events,{startWithParent:!0,initialize:function(){},addInitializer:function(a){this._initializerCallbacks.add(a)},addFinalizer:function(a){this._finalizerCallbacks.add(a)},start:function(a){this._isInitialized||(c.each(this.submodules,function(b){b.startWithParent&&b.start(a)}),this.triggerMethod("before:start",a),this._initializerCallbacks.run(a,this),this._isInitialized=!0,this.triggerMethod("start",a))},stop:function(){this._isInitialized&&(this._isInitialized=!1,this.triggerMethod("before:stop"),c.invoke(this.submodules,"stop"),this._finalizerCallbacks.run(void 0,this),this._initializerCallbacks.reset(),this._finalizerCallbacks.reset(),this.triggerMethod("stop"))},addDefinition:function(a,b){this._runModuleDefinition(a,b)},_runModuleDefinition:function(a,d){if(a){var e=c.flatten([this,this.app,b,f,b.$,c,d]);a.apply(this,e)}},_setupInitializersAndFinalizers:function(){this._initializerCallbacks=new f.Callbacks,this._finalizerCallbacks=new f.Callbacks},triggerMethod:f.triggerMethod}),c.extend(f.Module,{create:function(a,b,d){var e=a,f=c.drop(arguments,3);b=b.split(".");var g=b.length,h=[];return h[g-1]=d,c.each(b,function(b,c){var g=e;e=this._getModule(g,b,a,d),this._addModuleDefinition(g,e,h[c],f)},this),e},_getModule:function(a,b,d,e,f){var g=c.extend({},e),h=this.getClass(e),i=a[b];return i||(i=new h(b,d,g),a[b]=i,a.submodules[b]=i),i},getClass:function(a){var b=f.Module;return a?a.prototype instanceof b?a:a.moduleClass||b:b},_addModuleDefinition:function(a,b,c,d){var e=this._getDefine(c),f=this._getStartWithParent(c,b);e&&b.addDefinition(e,d),this._addStartWithParent(a,b,f)},_getStartWithParent:function(a,b){var d;return c.isFunction(a)&&a.prototype instanceof f.Module?(d=b.constructor.prototype.startWithParent,c.isUndefined(d)?!0:d):c.isObject(a)?(d=a.startWithParent,c.isUndefined(d)?!0:d):!0},_getDefine:function(a){return!c.isFunction(a)||a.prototype instanceof f.Module?c.isObject(a)?a.define:null:a},_addStartWithParent:function(a,b,c){b.startWithParent=b.startWithParent&&c,b.startWithParent&&!b.startWithParentIsConfigured&&(b.startWithParentIsConfigured=!0,a.addInitializer(function(a){b.startWithParent&&b.start(a)}))}}),f});
assets/lib/backbone/backbone.marionette.js000064400000404044151327220410014633 0ustar00/*! elementor - v3.0.15 - 2020-12-20 */
// MarionetteJS (Backbone.Marionette)
// ----------------------------------
// v2.4.5.e1
// Change Log:
// 	e1: Fix - Compatibility with jQuery 3. (`Marionette.Region.reset`).
//
// Copyright (c)2016 Derick Bailey, Muted Solutions, LLC.
// Distributed under MIT license
//
// http://marionettejs.com


/*!
 * Includes BabySitter
 * https://github.com/marionettejs/backbone.babysitter/
 *
 * Includes Wreqr
 * https://github.com/marionettejs/backbone.wreqr/
 */


(function(root, factory) {

  /* istanbul ignore next */
  if (typeof define === 'function' && define.amd) {
    define(['backbone', 'underscore'], function(Backbone, _) {
      return (root.Marionette = root.Mn = factory(root, Backbone, _));
    });
  } else if (typeof exports !== 'undefined') {
    var Backbone = require('backbone');
    var _ = require('underscore');
    module.exports = factory(root, Backbone, _);
  } else {
    root.Marionette = root.Mn = factory(root, root.Backbone, root._);
  }

}(this, function(root, Backbone, _) {
  'use strict';

  /* istanbul ignore next */
  // Backbone.BabySitter
  // -------------------
  // v0.1.11
  //
  // Copyright (c)2016 Derick Bailey, Muted Solutions, LLC.
  // Distributed under MIT license
  //
  // http://github.com/marionettejs/backbone.babysitter
  (function(Backbone, _) {
    "use strict";
    var previousChildViewContainer = Backbone.ChildViewContainer;
    // BabySitter.ChildViewContainer
    // -----------------------------
    //
    // Provide a container to store, retrieve and
    // shut down child views.
    Backbone.ChildViewContainer = function(Backbone, _) {
      // Container Constructor
      // ---------------------
      var Container = function(views) {
        this._views = {};
        this._indexByModel = {};
        this._indexByCustom = {};
        this._updateLength();
        _.each(views, this.add, this);
      };
      // Container Methods
      // -----------------
      _.extend(Container.prototype, {
        // Add a view to this container. Stores the view
        // by `cid` and makes it searchable by the model
        // cid (and model itself). Optionally specify
        // a custom key to store an retrieve the view.
        add: function(view, customIndex) {
          var viewCid = view.cid;
          // store the view
          this._views[viewCid] = view;
          // index it by model
          if (view.model) {
            this._indexByModel[view.model.cid] = viewCid;
          }
          // index by custom
          if (customIndex) {
            this._indexByCustom[customIndex] = viewCid;
          }
          this._updateLength();
          return this;
        },
        // Find a view by the model that was attached to
        // it. Uses the model's `cid` to find it.
        findByModel: function(model) {
          return this.findByModelCid(model.cid);
        },
        // Find a view by the `cid` of the model that was attached to
        // it. Uses the model's `cid` to find the view `cid` and
        // retrieve the view using it.
        findByModelCid: function(modelCid) {
          var viewCid = this._indexByModel[modelCid];
          return this.findByCid(viewCid);
        },
        // Find a view by a custom indexer.
        findByCustom: function(index) {
          var viewCid = this._indexByCustom[index];
          return this.findByCid(viewCid);
        },
        // Find by index. This is not guaranteed to be a
        // stable index.
        findByIndex: function(index) {
          return _.values(this._views)[index];
        },
        // retrieve a view by its `cid` directly
        findByCid: function(cid) {
          return this._views[cid];
        },
        // Remove a view
        remove: function(view) {
          var viewCid = view.cid;
          // delete model index
          if (view.model) {
            delete this._indexByModel[view.model.cid];
          }
          // delete custom index
          _.any(this._indexByCustom, function(cid, key) {
            if (cid === viewCid) {
              delete this._indexByCustom[key];
              return true;
            }
          }, this);
          // remove the view from the container
          delete this._views[viewCid];
          // update the length
          this._updateLength();
          return this;
        },
        // Call a method on every view in the container,
        // passing parameters to the call method one at a
        // time, like `function.call`.
        call: function(method) {
          this.apply(method, _.tail(arguments));
        },
        // Apply a method on every view in the container,
        // passing parameters to the call method one at a
        // time, like `function.apply`.
        apply: function(method, args) {
          _.each(this._views, function(view) {
            if (_.isFunction(view[method])) {
              view[method].apply(view, args || []);
            }
          });
        },
        // Update the `.length` attribute on this container
        _updateLength: function() {
          this.length = _.size(this._views);
        }
      });
      // Borrowing this code from Backbone.Collection:
      // http://backbonejs.org/docs/backbone.html#section-106
      //
      // Mix in methods from Underscore, for iteration, and other
      // collection related features.
      var methods = [ "forEach", "each", "map", "find", "detect", "filter", "select", "reject", "every", "all", "some", "any", "include", "contains", "invoke", "toArray", "first", "initial", "rest", "last", "without", "isEmpty", "pluck", "reduce" ];
      _.each(methods, function(method) {
        Container.prototype[method] = function() {
          var views = _.values(this._views);
          var args = [ views ].concat(_.toArray(arguments));
          return _[method].apply(_, args);
        };
      });
      // return the public API
      return Container;
    }(Backbone, _);
    Backbone.ChildViewContainer.VERSION = "0.1.11";
    Backbone.ChildViewContainer.noConflict = function() {
      Backbone.ChildViewContainer = previousChildViewContainer;
      return this;
    };
    return Backbone.ChildViewContainer;
  })(Backbone, _);

  /* istanbul ignore next */
  // Backbone.Wreqr (Backbone.Marionette)
  // ----------------------------------
  // v1.3.6
  //
  // Copyright (c)2016 Derick Bailey, Muted Solutions, LLC.
  // Distributed under MIT license
  //
  // http://github.com/marionettejs/backbone.wreqr
  (function(Backbone, _) {
    "use strict";
    var previousWreqr = Backbone.Wreqr;
    var Wreqr = Backbone.Wreqr = {};
    Backbone.Wreqr.VERSION = "1.3.6";
    Backbone.Wreqr.noConflict = function() {
      Backbone.Wreqr = previousWreqr;
      return this;
    };
    // Handlers
    // --------
    // A registry of functions to call, given a name
    Wreqr.Handlers = function(Backbone, _) {
      "use strict";
      // Constructor
      // -----------
      var Handlers = function(options) {
        this.options = options;
        this._wreqrHandlers = {};
        if (_.isFunction(this.initialize)) {
          this.initialize(options);
        }
      };
      Handlers.extend = Backbone.Model.extend;
      // Instance Members
      // ----------------
      _.extend(Handlers.prototype, Backbone.Events, {
        // Add multiple handlers using an object literal configuration
        setHandlers: function(handlers) {
          _.each(handlers, function(handler, name) {
            var context = null;
            if (_.isObject(handler) && !_.isFunction(handler)) {
              context = handler.context;
              handler = handler.callback;
            }
            this.setHandler(name, handler, context);
          }, this);
        },
        // Add a handler for the given name, with an
        // optional context to run the handler within
        setHandler: function(name, handler, context) {
          var config = {
            callback: handler,
            context: context
          };
          this._wreqrHandlers[name] = config;
          this.trigger("handler:add", name, handler, context);
        },
        // Determine whether or not a handler is registered
        hasHandler: function(name) {
          return !!this._wreqrHandlers[name];
        },
        // Get the currently registered handler for
        // the specified name. Throws an exception if
        // no handler is found.
        getHandler: function(name) {
          var config = this._wreqrHandlers[name];
          if (!config) {
            return;
          }
          return function() {
            return config.callback.apply(config.context, arguments);
          };
        },
        // Remove a handler for the specified name
        removeHandler: function(name) {
          delete this._wreqrHandlers[name];
        },
        // Remove all handlers from this registry
        removeAllHandlers: function() {
          this._wreqrHandlers = {};
        }
      });
      return Handlers;
    }(Backbone, _);
    // Wreqr.CommandStorage
    // --------------------
    //
    // Store and retrieve commands for execution.
    Wreqr.CommandStorage = function() {
      "use strict";
      // Constructor function
      var CommandStorage = function(options) {
        this.options = options;
        this._commands = {};
        if (_.isFunction(this.initialize)) {
          this.initialize(options);
        }
      };
      // Instance methods
      _.extend(CommandStorage.prototype, Backbone.Events, {
        // Get an object literal by command name, that contains
        // the `commandName` and the `instances` of all commands
        // represented as an array of arguments to process
        getCommands: function(commandName) {
          var commands = this._commands[commandName];
          // we don't have it, so add it
          if (!commands) {
            // build the configuration
            commands = {
              command: commandName,
              instances: []
            };
            // store it
            this._commands[commandName] = commands;
          }
          return commands;
        },
        // Add a command by name, to the storage and store the
        // args for the command
        addCommand: function(commandName, args) {
          var command = this.getCommands(commandName);
          command.instances.push(args);
        },
        // Clear all commands for the given `commandName`
        clearCommands: function(commandName) {
          var command = this.getCommands(commandName);
          command.instances = [];
        }
      });
      return CommandStorage;
    }();
    // Wreqr.Commands
    // --------------
    //
    // A simple command pattern implementation. Register a command
    // handler and execute it.
    Wreqr.Commands = function(Wreqr, _) {
      "use strict";
      return Wreqr.Handlers.extend({
        // default storage type
        storageType: Wreqr.CommandStorage,
        constructor: function(options) {
          this.options = options || {};
          this._initializeStorage(this.options);
          this.on("handler:add", this._executeCommands, this);
          Wreqr.Handlers.prototype.constructor.apply(this, arguments);
        },
        // Execute a named command with the supplied args
        execute: function(name) {
          name = arguments[0];
          var args = _.rest(arguments);
          if (this.hasHandler(name)) {
            this.getHandler(name).apply(this, args);
          } else {
            this.storage.addCommand(name, args);
          }
        },
        // Internal method to handle bulk execution of stored commands
        _executeCommands: function(name, handler, context) {
          var command = this.storage.getCommands(name);
          // loop through and execute all the stored command instances
          _.each(command.instances, function(args) {
            handler.apply(context, args);
          });
          this.storage.clearCommands(name);
        },
        // Internal method to initialize storage either from the type's
        // `storageType` or the instance `options.storageType`.
        _initializeStorage: function(options) {
          var storage;
          var StorageType = options.storageType || this.storageType;
          if (_.isFunction(StorageType)) {
            storage = new StorageType();
          } else {
            storage = StorageType;
          }
          this.storage = storage;
        }
      });
    }(Wreqr, _);
    // Wreqr.RequestResponse
    // ---------------------
    //
    // A simple request/response implementation. Register a
    // request handler, and return a response from it
    Wreqr.RequestResponse = function(Wreqr, _) {
      "use strict";
      return Wreqr.Handlers.extend({
        request: function(name) {
          if (this.hasHandler(name)) {
            return this.getHandler(name).apply(this, _.rest(arguments));
          }
        }
      });
    }(Wreqr, _);
    // Event Aggregator
    // ----------------
    // A pub-sub object that can be used to decouple various parts
    // of an application through event-driven architecture.
    Wreqr.EventAggregator = function(Backbone, _) {
      "use strict";
      var EA = function() {};
      // Copy the `extend` function used by Backbone's classes
      EA.extend = Backbone.Model.extend;
      // Copy the basic Backbone.Events on to the event aggregator
      _.extend(EA.prototype, Backbone.Events);
      return EA;
    }(Backbone, _);
    // Wreqr.Channel
    // --------------
    //
    // An object that wraps the three messaging systems:
    // EventAggregator, RequestResponse, Commands
    Wreqr.Channel = function(Wreqr) {
      "use strict";
      var Channel = function(channelName) {
        this.vent = new Backbone.Wreqr.EventAggregator();
        this.reqres = new Backbone.Wreqr.RequestResponse();
        this.commands = new Backbone.Wreqr.Commands();
        this.channelName = channelName;
      };
      _.extend(Channel.prototype, {
        // Remove all handlers from the messaging systems of this channel
        reset: function() {
          this.vent.off();
          this.vent.stopListening();
          this.reqres.removeAllHandlers();
          this.commands.removeAllHandlers();
          return this;
        },
        // Connect a hash of events; one for each messaging system
        connectEvents: function(hash, context) {
          this._connect("vent", hash, context);
          return this;
        },
        connectCommands: function(hash, context) {
          this._connect("commands", hash, context);
          return this;
        },
        connectRequests: function(hash, context) {
          this._connect("reqres", hash, context);
          return this;
        },
        // Attach the handlers to a given message system `type`
        _connect: function(type, hash, context) {
          if (!hash) {
            return;
          }
          context = context || this;
          var method = type === "vent" ? "on" : "setHandler";
          _.each(hash, function(fn, eventName) {
            this[type][method](eventName, _.bind(fn, context));
          }, this);
        }
      });
      return Channel;
    }(Wreqr);
    // Wreqr.Radio
    // --------------
    //
    // An object that lets you communicate with many channels.
    Wreqr.radio = function(Wreqr, _) {
      "use strict";
      var Radio = function() {
        this._channels = {};
        this.vent = {};
        this.commands = {};
        this.reqres = {};
        this._proxyMethods();
      };
      _.extend(Radio.prototype, {
        channel: function(channelName) {
          if (!channelName) {
            throw new Error("Channel must receive a name");
          }
          return this._getChannel(channelName);
        },
        _getChannel: function(channelName) {
          var channel = this._channels[channelName];
          if (!channel) {
            channel = new Wreqr.Channel(channelName);
            this._channels[channelName] = channel;
          }
          return channel;
        },
        _proxyMethods: function() {
          _.each([ "vent", "commands", "reqres" ], function(system) {
            _.each(messageSystems[system], function(method) {
              this[system][method] = proxyMethod(this, system, method);
            }, this);
          }, this);
        }
      });
      var messageSystems = {
        vent: [ "on", "off", "trigger", "once", "stopListening", "listenTo", "listenToOnce" ],
        commands: [ "execute", "setHandler", "setHandlers", "removeHandler", "removeAllHandlers" ],
        reqres: [ "request", "setHandler", "setHandlers", "removeHandler", "removeAllHandlers" ]
      };
      var proxyMethod = function(radio, system, method) {
        return function(channelName) {
          var messageSystem = radio._getChannel(channelName)[system];
          return messageSystem[method].apply(messageSystem, _.rest(arguments));
        };
      };
      return new Radio();
    }(Wreqr, _);
    return Backbone.Wreqr;
  })(Backbone, _);

  var previousMarionette = root.Marionette;
  var previousMn = root.Mn;

  var Marionette = Backbone.Marionette = {};

  Marionette.VERSION = '2.4.5';

  Marionette.noConflict = function() {
    root.Marionette = previousMarionette;
    root.Mn = previousMn;
    return this;
  };

  Backbone.Marionette = Marionette;

  // Get the Deferred creator for later use
  Marionette.Deferred = Backbone.$.Deferred;

  /* jshint unused: false *//* global console */
  
  // Helpers
  // -------
  
  // Marionette.extend
  // -----------------
  
  // Borrow the Backbone `extend` method so we can use it as needed
  Marionette.extend = Backbone.Model.extend;
  
  // Marionette.isNodeAttached
  // -------------------------
  
  // Determine if `el` is a child of the document
  Marionette.isNodeAttached = function(el) {
    return Backbone.$.contains(document.documentElement, el);
  };
  
  // Merge `keys` from `options` onto `this`
  Marionette.mergeOptions = function(options, keys) {
    if (!options) { return; }
    _.extend(this, _.pick(options, keys));
  };
  
  // Marionette.getOption
  // --------------------
  
  // Retrieve an object, function or other value from a target
  // object or its `options`, with `options` taking precedence.
  Marionette.getOption = function(target, optionName) {
    if (!target || !optionName) { return; }
    if (target.options && (target.options[optionName] !== undefined)) {
      return target.options[optionName];
    } else {
      return target[optionName];
    }
  };
  
  // Proxy `Marionette.getOption`
  Marionette.proxyGetOption = function(optionName) {
    return Marionette.getOption(this, optionName);
  };
  
  // Similar to `_.result`, this is a simple helper
  // If a function is provided we call it with context
  // otherwise just return the value. If the value is
  // undefined return a default value
  Marionette._getValue = function(value, context, params) {
    if (_.isFunction(value)) {
      value = params ? value.apply(context, params) : value.call(context);
    }
    return value;
  };
  
  // Marionette.normalizeMethods
  // ----------------------
  
  // Pass in a mapping of events => functions or function names
  // and return a mapping of events => functions
  Marionette.normalizeMethods = function(hash) {
    return _.reduce(hash, function(normalizedHash, method, name) {
      if (!_.isFunction(method)) {
        method = this[method];
      }
      if (method) {
        normalizedHash[name] = method;
      }
      return normalizedHash;
    }, {}, this);
  };
  
  // utility method for parsing @ui. syntax strings
  // into associated selector
  Marionette.normalizeUIString = function(uiString, ui) {
    return uiString.replace(/@ui\.[a-zA-Z-_$0-9]*/g, function(r) {
      return ui[r.slice(4)];
    });
  };
  
  // allows for the use of the @ui. syntax within
  // a given key for triggers and events
  // swaps the @ui with the associated selector.
  // Returns a new, non-mutated, parsed events hash.
  Marionette.normalizeUIKeys = function(hash, ui) {
    return _.reduce(hash, function(memo, val, key) {
      var normalizedKey = Marionette.normalizeUIString(key, ui);
      memo[normalizedKey] = val;
      return memo;
    }, {});
  };
  
  // allows for the use of the @ui. syntax within
  // a given value for regions
  // swaps the @ui with the associated selector
  Marionette.normalizeUIValues = function(hash, ui, properties) {
    _.each(hash, function(val, key) {
      if (_.isString(val)) {
        hash[key] = Marionette.normalizeUIString(val, ui);
      } else if (_.isObject(val) && _.isArray(properties)) {
        _.extend(val, Marionette.normalizeUIValues(_.pick(val, properties), ui));
        /* Value is an object, and we got an array of embedded property names to normalize. */
        _.each(properties, function(property) {
          var propertyVal = val[property];
          if (_.isString(propertyVal)) {
            val[property] = Marionette.normalizeUIString(propertyVal, ui);
          }
        });
      }
    });
    return hash;
  };
  
  // Mix in methods from Underscore, for iteration, and other
  // collection related features.
  // Borrowing this code from Backbone.Collection:
  // http://backbonejs.org/docs/backbone.html#section-121
  Marionette.actAsCollection = function(object, listProperty) {
    var methods = ['forEach', 'each', 'map', 'find', 'detect', 'filter',
      'select', 'reject', 'every', 'all', 'some', 'any', 'include',
      'contains', 'invoke', 'toArray', 'first', 'initial', 'rest',
      'last', 'without', 'isEmpty', 'pluck'];
  
    _.each(methods, function(method) {
      object[method] = function() {
        var list = _.values(_.result(this, listProperty));
        var args = [list].concat(_.toArray(arguments));
        return _[method].apply(_, args);
      };
    });
  };
  
  var deprecate = Marionette.deprecate = function(message, test) {
    if (_.isObject(message)) {
      message = (
        message.prev + ' is going to be removed in the future. ' +
        'Please use ' + message.next + ' instead.' +
        (message.url ? ' See: ' + message.url : '')
      );
    }
  
    if ((test === undefined || !test) && !deprecate._cache[message]) {
      deprecate._warn('Deprecation warning: ' + message);
      deprecate._cache[message] = true;
    }
  };
  
  deprecate._console = typeof console !== 'undefined' ? console : {};
  deprecate._warn = function() {
    var warn = deprecate._console.warn || deprecate._console.log || function() {};
    return warn.apply(deprecate._console, arguments);
  };
  deprecate._cache = {};
  
  /* jshint maxstatements: 14, maxcomplexity: 7 */
  
  // Trigger Method
  // --------------
  
  Marionette._triggerMethod = (function() {
    // split the event name on the ":"
    var splitter = /(^|:)(\w)/gi;
  
    // take the event section ("section1:section2:section3")
    // and turn it in to uppercase name
    function getEventName(match, prefix, eventName) {
      return eventName.toUpperCase();
    }
  
    return function(context, event, args) {
      var noEventArg = arguments.length < 3;
      if (noEventArg) {
        args = event;
        event = args[0];
      }
  
      // get the method name from the event name
      var methodName = 'on' + event.replace(splitter, getEventName);
      var method = context[methodName];
      var result;
  
      // call the onMethodName if it exists
      if (_.isFunction(method)) {
        // pass all args, except the event name
        result = method.apply(context, noEventArg ? _.rest(args) : args);
      }
  
      // trigger the event, if a trigger method exists
      if (_.isFunction(context.trigger)) {
        if (noEventArg + args.length > 1) {
          context.trigger.apply(context, noEventArg ? args : [event].concat(_.drop(args, 0)));
        } else {
          context.trigger(event);
        }
      }
  
      return result;
    };
  })();
  
  // Trigger an event and/or a corresponding method name. Examples:
  //
  // `this.triggerMethod("foo")` will trigger the "foo" event and
  // call the "onFoo" method.
  //
  // `this.triggerMethod("foo:bar")` will trigger the "foo:bar" event and
  // call the "onFooBar" method.
  Marionette.triggerMethod = function(event) {
    return Marionette._triggerMethod(this, arguments);
  };
  
  // triggerMethodOn invokes triggerMethod on a specific context
  //
  // e.g. `Marionette.triggerMethodOn(view, 'show')`
  // will trigger a "show" event or invoke onShow the view.
  Marionette.triggerMethodOn = function(context) {
    var fnc = _.isFunction(context.triggerMethod) ?
                  context.triggerMethod :
                  Marionette.triggerMethod;
  
    return fnc.apply(context, _.rest(arguments));
  };
  
  // DOM Refresh
  // -----------
  
  // Monitor a view's state, and after it has been rendered and shown
  // in the DOM, trigger a "dom:refresh" event every time it is
  // re-rendered.
  
  Marionette.MonitorDOMRefresh = function(view) {
    if (view._isDomRefreshMonitored) { return; }
    view._isDomRefreshMonitored = true;
  
    // track when the view has been shown in the DOM,
    // using a Marionette.Region (or by other means of triggering "show")
    function handleShow() {
      view._isShown = true;
      triggerDOMRefresh();
    }
  
    // track when the view has been rendered
    function handleRender() {
      view._isRendered = true;
      triggerDOMRefresh();
    }
  
    // Trigger the "dom:refresh" event and corresponding "onDomRefresh" method
    function triggerDOMRefresh() {
      if (view._isShown && view._isRendered && Marionette.isNodeAttached(view.el)) {
        Marionette.triggerMethodOn(view, 'dom:refresh', view);
      }
    }
  
    view.on({
      show: handleShow,
      render: handleRender
    });
  };
  
  /* jshint maxparams: 5 */
  
  // Bind Entity Events & Unbind Entity Events
  // -----------------------------------------
  //
  // These methods are used to bind/unbind a backbone "entity" (e.g. collection/model)
  // to methods on a target object.
  //
  // The first parameter, `target`, must have the Backbone.Events module mixed in.
  //
  // The second parameter is the `entity` (Backbone.Model, Backbone.Collection or
  // any object that has Backbone.Events mixed in) to bind the events from.
  //
  // The third parameter is a hash of { "event:name": "eventHandler" }
  // configuration. Multiple handlers can be separated by a space. A
  // function can be supplied instead of a string handler name.
  
  (function(Marionette) {
    'use strict';
  
    // Bind the event to handlers specified as a string of
    // handler names on the target object
    function bindFromStrings(target, entity, evt, methods) {
      var methodNames = methods.split(/\s+/);
  
      _.each(methodNames, function(methodName) {
  
        var method = target[methodName];
        if (!method) {
          throw new Marionette.Error('Method "' + methodName +
            '" was configured as an event handler, but does not exist.');
        }
  
        target.listenTo(entity, evt, method);
      });
    }
  
    // Bind the event to a supplied callback function
    function bindToFunction(target, entity, evt, method) {
      target.listenTo(entity, evt, method);
    }
  
    // Bind the event to handlers specified as a string of
    // handler names on the target object
    function unbindFromStrings(target, entity, evt, methods) {
      var methodNames = methods.split(/\s+/);
  
      _.each(methodNames, function(methodName) {
        var method = target[methodName];
        target.stopListening(entity, evt, method);
      });
    }
  
    // Bind the event to a supplied callback function
    function unbindToFunction(target, entity, evt, method) {
      target.stopListening(entity, evt, method);
    }
  
    // generic looping function
    function iterateEvents(target, entity, bindings, functionCallback, stringCallback) {
      if (!entity || !bindings) { return; }
  
      // type-check bindings
      if (!_.isObject(bindings)) {
        throw new Marionette.Error({
          message: 'Bindings must be an object or function.',
          url: 'marionette.functions.html#marionettebindentityevents'
        });
      }
  
      // allow the bindings to be a function
      bindings = Marionette._getValue(bindings, target);
  
      // iterate the bindings and bind them
      _.each(bindings, function(methods, evt) {
  
        // allow for a function as the handler,
        // or a list of event names as a string
        if (_.isFunction(methods)) {
          functionCallback(target, entity, evt, methods);
        } else {
          stringCallback(target, entity, evt, methods);
        }
  
      });
    }
  
    // Export Public API
    Marionette.bindEntityEvents = function(target, entity, bindings) {
      iterateEvents(target, entity, bindings, bindToFunction, bindFromStrings);
    };
  
    Marionette.unbindEntityEvents = function(target, entity, bindings) {
      iterateEvents(target, entity, bindings, unbindToFunction, unbindFromStrings);
    };
  
    // Proxy `bindEntityEvents`
    Marionette.proxyBindEntityEvents = function(entity, bindings) {
      return Marionette.bindEntityEvents(this, entity, bindings);
    };
  
    // Proxy `unbindEntityEvents`
    Marionette.proxyUnbindEntityEvents = function(entity, bindings) {
      return Marionette.unbindEntityEvents(this, entity, bindings);
    };
  })(Marionette);
  

  // Error
  // -----
  
  var errorProps = ['description', 'fileName', 'lineNumber', 'name', 'message', 'number'];
  
  Marionette.Error = Marionette.extend.call(Error, {
    urlRoot: 'http://marionettejs.com/docs/v' + Marionette.VERSION + '/',
  
    constructor: function(message, options) {
      if (_.isObject(message)) {
        options = message;
        message = options.message;
      } else if (!options) {
        options = {};
      }
  
      var error = Error.call(this, message);
      _.extend(this, _.pick(error, errorProps), _.pick(options, errorProps));
  
      this.captureStackTrace();
  
      if (options.url) {
        this.url = this.urlRoot + options.url;
      }
    },
  
    captureStackTrace: function() {
      if (Error.captureStackTrace) {
        Error.captureStackTrace(this, Marionette.Error);
      }
    },
  
    toString: function() {
      return this.name + ': ' + this.message + (this.url ? ' See: ' + this.url : '');
    }
  });
  
  Marionette.Error.extend = Marionette.extend;
  
  // Callbacks
  // ---------
  
  // A simple way of managing a collection of callbacks
  // and executing them at a later point in time, using jQuery's
  // `Deferred` object.
  Marionette.Callbacks = function() {
    this._deferred = Marionette.Deferred();
    this._callbacks = [];
  };
  
  _.extend(Marionette.Callbacks.prototype, {
  
    // Add a callback to be executed. Callbacks added here are
    // guaranteed to execute, even if they are added after the
    // `run` method is called.
    add: function(callback, contextOverride) {
      var promise = _.result(this._deferred, 'promise');
  
      this._callbacks.push({cb: callback, ctx: contextOverride});
  
      promise.then(function(args) {
        if (contextOverride) { args.context = contextOverride; }
        callback.call(args.context, args.options);
      });
    },
  
    // Run all registered callbacks with the context specified.
    // Additional callbacks can be added after this has been run
    // and they will still be executed.
    run: function(options, context) {
      this._deferred.resolve({
        options: options,
        context: context
      });
    },
  
    // Resets the list of callbacks to be run, allowing the same list
    // to be run multiple times - whenever the `run` method is called.
    reset: function() {
      var callbacks = this._callbacks;
      this._deferred = Marionette.Deferred();
      this._callbacks = [];
  
      _.each(callbacks, function(cb) {
        this.add(cb.cb, cb.ctx);
      }, this);
    }
  });
  
  // Controller
  // ----------
  
  // A multi-purpose object to use as a controller for
  // modules and routers, and as a mediator for workflow
  // and coordination of other objects, views, and more.
  Marionette.Controller = function(options) {
    this.options = options || {};
  
    if (_.isFunction(this.initialize)) {
      this.initialize(this.options);
    }
  };
  
  Marionette.Controller.extend = Marionette.extend;
  
  // Controller Methods
  // --------------
  
  // Ensure it can trigger events with Backbone.Events
  _.extend(Marionette.Controller.prototype, Backbone.Events, {
    destroy: function() {
      Marionette._triggerMethod(this, 'before:destroy', arguments);
      Marionette._triggerMethod(this, 'destroy', arguments);
  
      this.stopListening();
      this.off();
      return this;
    },
  
    // import the `triggerMethod` to trigger events with corresponding
    // methods if the method exists
    triggerMethod: Marionette.triggerMethod,
  
    // A handy way to merge options onto the instance
    mergeOptions: Marionette.mergeOptions,
  
    // Proxy `getOption` to enable getting options from this or this.options by name.
    getOption: Marionette.proxyGetOption
  
  });
  
  // Object
  // ------
  
  // A Base Class that other Classes should descend from.
  // Object borrows many conventions and utilities from Backbone.
  Marionette.Object = function(options) {
    this.options = _.extend({}, _.result(this, 'options'), options);
  
    this.initialize.apply(this, arguments);
  };
  
  Marionette.Object.extend = Marionette.extend;
  
  // Object Methods
  // --------------
  
  // Ensure it can trigger events with Backbone.Events
  _.extend(Marionette.Object.prototype, Backbone.Events, {
  
    //this is a noop method intended to be overridden by classes that extend from this base
    initialize: function() {},
  
    destroy: function(options) {
      options = options || {};
  
      this.triggerMethod('before:destroy', options);
      this.triggerMethod('destroy', options);
      this.stopListening();
  
      return this;
    },
  
    // Import the `triggerMethod` to trigger events with corresponding
    // methods if the method exists
    triggerMethod: Marionette.triggerMethod,
  
    // A handy way to merge options onto the instance
    mergeOptions: Marionette.mergeOptions,
  
    // Proxy `getOption` to enable getting options from this or this.options by name.
    getOption: Marionette.proxyGetOption,
  
    // Proxy `bindEntityEvents` to enable binding view's events from another entity.
    bindEntityEvents: Marionette.proxyBindEntityEvents,
  
    // Proxy `unbindEntityEvents` to enable unbinding view's events from another entity.
    unbindEntityEvents: Marionette.proxyUnbindEntityEvents
  });
  
  /* jshint maxcomplexity: 16, maxstatements: 45, maxlen: 120 */
  
  // Region
  // ------
  
  // Manage the visual regions of your composite application. See
  // http://lostechies.com/derickbailey/2011/12/12/composite-js-apps-regions-and-region-managers/
  
  Marionette.Region = Marionette.Object.extend({
    constructor: function(options) {
  
      // set options temporarily so that we can get `el`.
      // options will be overriden by Object.constructor
      this.options = options || {};
      this.el = this.getOption('el');
  
      // Handle when this.el is passed in as a $ wrapped element.
      this.el = this.el instanceof Backbone.$ ? this.el[0] : this.el;
  
      if (!this.el) {
        throw new Marionette.Error({
          name: 'NoElError',
          message: 'An "el" must be specified for a region.'
        });
      }
  
      this.$el = this.getEl(this.el);
      Marionette.Object.call(this, options);
    },
  
    // Displays a backbone view instance inside of the region.
    // Handles calling the `render` method for you. Reads content
    // directly from the `el` attribute. Also calls an optional
    // `onShow` and `onDestroy` method on your view, just after showing
    // or just before destroying the view, respectively.
    // The `preventDestroy` option can be used to prevent a view from
    // the old view being destroyed on show.
    // The `forceShow` option can be used to force a view to be
    // re-rendered if it's already shown in the region.
    show: function(view, options) {
      if (!this._ensureElement()) {
        return;
      }
  
      this._ensureViewIsIntact(view);
      Marionette.MonitorDOMRefresh(view);
  
      var showOptions     = options || {};
      var isDifferentView = view !== this.currentView;
      var preventDestroy  = !!showOptions.preventDestroy;
      var forceShow       = !!showOptions.forceShow;
  
      // We are only changing the view if there is a current view to change to begin with
      var isChangingView = !!this.currentView;
  
      // Only destroy the current view if we don't want to `preventDestroy` and if
      // the view given in the first argument is different than `currentView`
      var _shouldDestroyView = isDifferentView && !preventDestroy;
  
      // Only show the view given in the first argument if it is different than
      // the current view or if we want to re-show the view. Note that if
      // `_shouldDestroyView` is true, then `_shouldShowView` is also necessarily true.
      var _shouldShowView = isDifferentView || forceShow;
  
      if (isChangingView) {
        this.triggerMethod('before:swapOut', this.currentView, this, options);
      }
  
      if (this.currentView && isDifferentView) {
        delete this.currentView._parent;
      }
  
      if (_shouldDestroyView) {
        this.empty();
  
      // A `destroy` event is attached to the clean up manually removed views.
      // We need to detach this event when a new view is going to be shown as it
      // is no longer relevant.
      } else if (isChangingView && _shouldShowView) {
        this.currentView.off('destroy', this.empty, this);
      }
  
      if (_shouldShowView) {
  
        // We need to listen for if a view is destroyed
        // in a way other than through the region.
        // If this happens we need to remove the reference
        // to the currentView since once a view has been destroyed
        // we can not reuse it.
        view.once('destroy', this.empty, this);
  
        // make this region the view's parent,
        // It's important that this parent binding happens before rendering
        // so that any events the child may trigger during render can also be
        // triggered on the child's ancestor views
        view._parent = this;
        this._renderView(view);
  
        if (isChangingView) {
          this.triggerMethod('before:swap', view, this, options);
        }
  
        this.triggerMethod('before:show', view, this, options);
        Marionette.triggerMethodOn(view, 'before:show', view, this, options);
  
        if (isChangingView) {
          this.triggerMethod('swapOut', this.currentView, this, options);
        }
  
        // An array of views that we're about to display
        var attachedRegion = Marionette.isNodeAttached(this.el);
  
        // The views that we're about to attach to the document
        // It's important that we prevent _getNestedViews from being executed unnecessarily
        // as it's a potentially-slow method
        var displayedViews = [];
  
        var attachOptions = _.extend({
          triggerBeforeAttach: this.triggerBeforeAttach,
          triggerAttach: this.triggerAttach
        }, showOptions);
  
        if (attachedRegion && attachOptions.triggerBeforeAttach) {
          displayedViews = this._displayedViews(view);
          this._triggerAttach(displayedViews, 'before:');
        }
  
        this.attachHtml(view);
        this.currentView = view;
  
        if (attachedRegion && attachOptions.triggerAttach) {
          displayedViews = this._displayedViews(view);
          this._triggerAttach(displayedViews);
        }
  
        if (isChangingView) {
          this.triggerMethod('swap', view, this, options);
        }
  
        this.triggerMethod('show', view, this, options);
        Marionette.triggerMethodOn(view, 'show', view, this, options);
  
        return this;
      }
  
      return this;
    },
  
    triggerBeforeAttach: true,
    triggerAttach: true,
  
    _triggerAttach: function(views, prefix) {
      var eventName = (prefix || '') + 'attach';
      _.each(views, function(view) {
        Marionette.triggerMethodOn(view, eventName, view, this);
      }, this);
    },
  
    _displayedViews: function(view) {
      return _.union([view], _.result(view, '_getNestedViews') || []);
    },
  
    _renderView: function(view) {
      if (!view.supportsRenderLifecycle) {
        Marionette.triggerMethodOn(view, 'before:render', view);
      }
      view.render();
      if (!view.supportsRenderLifecycle) {
        Marionette.triggerMethodOn(view, 'render', view);
      }
    },
  
    _ensureElement: function() {
      if (!_.isObject(this.el)) {
        this.$el = this.getEl(this.el);
        this.el = this.$el[0];
      }
  
      if (!this.$el || this.$el.length === 0) {
        if (this.getOption('allowMissingEl')) {
          return false;
        } else {
          throw new Marionette.Error('An "el" ' + this.$el.selector + ' must exist in DOM');
        }
      }
      return true;
    },
  
    _ensureViewIsIntact: function(view) {
      if (!view) {
        throw new Marionette.Error({
          name: 'ViewNotValid',
          message: 'The view passed is undefined and therefore invalid. You must pass a view instance to show.'
        });
      }
  
      if (view.isDestroyed) {
        throw new Marionette.Error({
          name: 'ViewDestroyedError',
          message: 'View (cid: "' + view.cid + '") has already been destroyed and cannot be used.'
        });
      }
    },
  
    // Override this method to change how the region finds the DOM
    // element that it manages. Return a jQuery selector object scoped
    // to a provided parent el or the document if none exists.
    getEl: function(el) {
      return Backbone.$(el, Marionette._getValue(this.options.parentEl, this));
    },
  
    // Override this method to change how the new view is
    // appended to the `$el` that the region is managing
    attachHtml: function(view) {
      this.$el.contents().detach();
  
      this.el.appendChild(view.el);
    },
  
    // Destroy the current view, if there is one. If there is no
    // current view, it does nothing and returns immediately.
    empty: function(options) {
      var view = this.currentView;
  
      var emptyOptions = options || {};
      var preventDestroy  = !!emptyOptions.preventDestroy;
      // If there is no view in the region
      // we should not remove anything
      if (!view) { return this; }
  
      view.off('destroy', this.empty, this);
      this.triggerMethod('before:empty', view);
      if (!preventDestroy) {
        this._destroyView();
      }
      this.triggerMethod('empty', view);
  
      // Remove region pointer to the currentView
      delete this.currentView;
  
      if (preventDestroy) {
        this.$el.contents().detach();
      }
  
      return this;
    },
  
    // call 'destroy' or 'remove', depending on which is found
    // on the view (if showing a raw Backbone view or a Marionette View)
    _destroyView: function() {
      var view = this.currentView;
      if (view.isDestroyed) { return; }
  
      if (!view.supportsDestroyLifecycle) {
        Marionette.triggerMethodOn(view, 'before:destroy', view);
      }
      if (view.destroy) {
        view.destroy();
      } else {
        view.remove();
  
        // appending isDestroyed to raw Backbone View allows regions
        // to throw a ViewDestroyedError for this view
        view.isDestroyed = true;
      }
      if (!view.supportsDestroyLifecycle) {
        Marionette.triggerMethodOn(view, 'destroy', view);
      }
    },
  
    // Attach an existing view to the region. This
    // will not call `render` or `onShow` for the new view,
    // and will not replace the current HTML for the `el`
    // of the region.
    attachView: function(view) {
      if (this.currentView) {
        delete this.currentView._parent;
      }
      view._parent = this;
      this.currentView = view;
      return this;
    },
  
    // Checks whether a view is currently present within
    // the region. Returns `true` if there is and `false` if
    // no view is present.
    hasView: function() {
      return !!this.currentView;
    },
  
    // Reset the region by destroying any existing view and
    // clearing out the cached `$el`. The next time a view
    // is shown via this region, the region will re-query the
    // DOM for the region's `el`.
    reset: function() {
      this.empty();
  
      if (this.$el) {
      	// 2020-12-20 Changed for compatibility with jQuery 3.
        this.el = this.options.el;
      }
  
      delete this.$el;
      return this;
    }
  
  },
  
  // Static Methods
  {
  
    // Build an instance of a region by passing in a configuration object
    // and a default region class to use if none is specified in the config.
    //
    // The config object should either be a string as a jQuery DOM selector,
    // a Region class directly, or an object literal that specifies a selector,
    // a custom regionClass, and any options to be supplied to the region:
    //
    // ```js
    // {
    //   selector: "#foo",
    //   regionClass: MyCustomRegion,
    //   allowMissingEl: false
    // }
    // ```
    //
    buildRegion: function(regionConfig, DefaultRegionClass) {
      if (_.isString(regionConfig)) {
        return this._buildRegionFromSelector(regionConfig, DefaultRegionClass);
      }
  
      if (regionConfig.selector || regionConfig.el || regionConfig.regionClass) {
        return this._buildRegionFromObject(regionConfig, DefaultRegionClass);
      }
  
      if (_.isFunction(regionConfig)) {
        return this._buildRegionFromRegionClass(regionConfig);
      }
  
      throw new Marionette.Error({
        message: 'Improper region configuration type.',
        url: 'marionette.region.html#region-configuration-types'
      });
    },
  
    // Build the region from a string selector like '#foo-region'
    _buildRegionFromSelector: function(selector, DefaultRegionClass) {
      return new DefaultRegionClass({el: selector});
    },
  
    // Build the region from a configuration object
    // ```js
    // { selector: '#foo', regionClass: FooRegion, allowMissingEl: false }
    // ```
    _buildRegionFromObject: function(regionConfig, DefaultRegionClass) {
      var RegionClass = regionConfig.regionClass || DefaultRegionClass;
      var options = _.omit(regionConfig, 'selector', 'regionClass');
  
      if (regionConfig.selector && !options.el) {
        options.el = regionConfig.selector;
      }
  
      return new RegionClass(options);
    },
  
    // Build the region directly from a given `RegionClass`
    _buildRegionFromRegionClass: function(RegionClass) {
      return new RegionClass();
    }
  });
  
  // Region Manager
  // --------------
  
  // Manage one or more related `Marionette.Region` objects.
  Marionette.RegionManager = Marionette.Controller.extend({
    constructor: function(options) {
      this._regions = {};
      this.length = 0;
  
      Marionette.Controller.call(this, options);
  
      this.addRegions(this.getOption('regions'));
    },
  
    // Add multiple regions using an object literal or a
    // function that returns an object literal, where
    // each key becomes the region name, and each value is
    // the region definition.
    addRegions: function(regionDefinitions, defaults) {
      regionDefinitions = Marionette._getValue(regionDefinitions, this, arguments);
  
      return _.reduce(regionDefinitions, function(regions, definition, name) {
        if (_.isString(definition)) {
          definition = {selector: definition};
        }
        if (definition.selector) {
          definition = _.defaults({}, definition, defaults);
        }
  
        regions[name] = this.addRegion(name, definition);
        return regions;
      }, {}, this);
    },
  
    // Add an individual region to the region manager,
    // and return the region instance
    addRegion: function(name, definition) {
      var region;
  
      if (definition instanceof Marionette.Region) {
        region = definition;
      } else {
        region = Marionette.Region.buildRegion(definition, Marionette.Region);
      }
  
      this.triggerMethod('before:add:region', name, region);
  
      region._parent = this;
      this._store(name, region);
  
      this.triggerMethod('add:region', name, region);
      return region;
    },
  
    // Get a region by name
    get: function(name) {
      return this._regions[name];
    },
  
    // Gets all the regions contained within
    // the `regionManager` instance.
    getRegions: function() {
      return _.clone(this._regions);
    },
  
    // Remove a region by name
    removeRegion: function(name) {
      var region = this._regions[name];
      this._remove(name, region);
  
      return region;
    },
  
    // Empty all regions in the region manager, and
    // remove them
    removeRegions: function() {
      var regions = this.getRegions();
      _.each(this._regions, function(region, name) {
        this._remove(name, region);
      }, this);
  
      return regions;
    },
  
    // Empty all regions in the region manager, but
    // leave them attached
    emptyRegions: function() {
      var regions = this.getRegions();
      _.invoke(regions, 'empty');
      return regions;
    },
  
    // Destroy all regions and shut down the region
    // manager entirely
    destroy: function() {
      this.removeRegions();
      return Marionette.Controller.prototype.destroy.apply(this, arguments);
    },
  
    // internal method to store regions
    _store: function(name, region) {
      if (!this._regions[name]) {
        this.length++;
      }
  
      this._regions[name] = region;
    },
  
    // internal method to remove a region
    _remove: function(name, region) {
      this.triggerMethod('before:remove:region', name, region);
      region.empty();
      region.stopListening();
  
      delete region._parent;
      delete this._regions[name];
      this.length--;
      this.triggerMethod('remove:region', name, region);
    }
  });
  
  Marionette.actAsCollection(Marionette.RegionManager.prototype, '_regions');
  

  // Template Cache
  // --------------
  
  // Manage templates stored in `<script>` blocks,
  // caching them for faster access.
  Marionette.TemplateCache = function(templateId) {
    this.templateId = templateId;
  };
  
  // TemplateCache object-level methods. Manage the template
  // caches from these method calls instead of creating
  // your own TemplateCache instances
  _.extend(Marionette.TemplateCache, {
    templateCaches: {},
  
    // Get the specified template by id. Either
    // retrieves the cached version, or loads it
    // from the DOM.
    get: function(templateId, options) {
      var cachedTemplate = this.templateCaches[templateId];
  
      if (!cachedTemplate) {
        cachedTemplate = new Marionette.TemplateCache(templateId);
        this.templateCaches[templateId] = cachedTemplate;
      }
  
      return cachedTemplate.load(options);
    },
  
    // Clear templates from the cache. If no arguments
    // are specified, clears all templates:
    // `clear()`
    //
    // If arguments are specified, clears each of the
    // specified templates from the cache:
    // `clear("#t1", "#t2", "...")`
    clear: function() {
      var i;
      var args = _.toArray(arguments);
      var length = args.length;
  
      if (length > 0) {
        for (i = 0; i < length; i++) {
          delete this.templateCaches[args[i]];
        }
      } else {
        this.templateCaches = {};
      }
    }
  });
  
  // TemplateCache instance methods, allowing each
  // template cache object to manage its own state
  // and know whether or not it has been loaded
  _.extend(Marionette.TemplateCache.prototype, {
  
    // Internal method to load the template
    load: function(options) {
      // Guard clause to prevent loading this template more than once
      if (this.compiledTemplate) {
        return this.compiledTemplate;
      }
  
      // Load the template and compile it
      var template = this.loadTemplate(this.templateId, options);
      this.compiledTemplate = this.compileTemplate(template, options);
  
      return this.compiledTemplate;
    },
  
    // Load a template from the DOM, by default. Override
    // this method to provide your own template retrieval
    // For asynchronous loading with AMD/RequireJS, consider
    // using a template-loader plugin as described here:
    // https://github.com/marionettejs/backbone.marionette/wiki/Using-marionette-with-requirejs
    loadTemplate: function(templateId, options) {
      var $template = Backbone.$(templateId);
  
      if (!$template.length) {
        throw new Marionette.Error({
          name: 'NoTemplateError',
          message: 'Could not find template: "' + templateId + '"'
        });
      }
      return $template.html();
    },
  
    // Pre-compile the template before caching it. Override
    // this method if you do not need to pre-compile a template
    // (JST / RequireJS for example) or if you want to change
    // the template engine used (Handebars, etc).
    compileTemplate: function(rawTemplate, options) {
      return _.template(rawTemplate, options);
    }
  });
  
  // Renderer
  // --------
  
  // Render a template with data by passing in the template
  // selector and the data to render.
  Marionette.Renderer = {
  
    // Render a template with data. The `template` parameter is
    // passed to the `TemplateCache` object to retrieve the
    // template function. Override this method to provide your own
    // custom rendering and template handling for all of Marionette.
    render: function(template, data) {
      if (!template) {
        throw new Marionette.Error({
          name: 'TemplateNotFoundError',
          message: 'Cannot render the template since its false, null or undefined.'
        });
      }
  
      var templateFunc = _.isFunction(template) ? template : Marionette.TemplateCache.get(template);
  
      return templateFunc(data);
    }
  };
  

  /* jshint maxlen: 114, nonew: false */
  // View
  // ----
  
  // The core view class that other Marionette views extend from.
  Marionette.View = Backbone.View.extend({
    isDestroyed: false,
    supportsRenderLifecycle: true,
    supportsDestroyLifecycle: true,
  
    constructor: function(options) {
      this.render = _.bind(this.render, this);
  
      options = Marionette._getValue(options, this);
  
      // this exposes view options to the view initializer
      // this is a backfill since backbone removed the assignment
      // of this.options
      // at some point however this may be removed
      this.options = _.extend({}, _.result(this, 'options'), options);
  
      this._behaviors = Marionette.Behaviors(this);
  
      Backbone.View.call(this, this.options);
  
      Marionette.MonitorDOMRefresh(this);
    },
  
    // Get the template for this view
    // instance. You can set a `template` attribute in the view
    // definition or pass a `template: "whatever"` parameter in
    // to the constructor options.
    getTemplate: function() {
      return this.getOption('template');
    },
  
    // Serialize a model by returning its attributes. Clones
    // the attributes to allow modification.
    serializeModel: function(model) {
      return model.toJSON.apply(model, _.rest(arguments));
    },
  
    // Mix in template helper methods. Looks for a
    // `templateHelpers` attribute, which can either be an
    // object literal, or a function that returns an object
    // literal. All methods and attributes from this object
    // are copies to the object passed in.
    mixinTemplateHelpers: function(target) {
      target = target || {};
      var templateHelpers = this.getOption('templateHelpers');
      templateHelpers = Marionette._getValue(templateHelpers, this);
      return _.extend(target, templateHelpers);
    },
  
    // normalize the keys of passed hash with the views `ui` selectors.
    // `{"@ui.foo": "bar"}`
    normalizeUIKeys: function(hash) {
      var uiBindings = _.result(this, '_uiBindings');
      return Marionette.normalizeUIKeys(hash, uiBindings || _.result(this, 'ui'));
    },
  
    // normalize the values of passed hash with the views `ui` selectors.
    // `{foo: "@ui.bar"}`
    normalizeUIValues: function(hash, properties) {
      var ui = _.result(this, 'ui');
      var uiBindings = _.result(this, '_uiBindings');
      return Marionette.normalizeUIValues(hash, uiBindings || ui, properties);
    },
  
    // Configure `triggers` to forward DOM events to view
    // events. `triggers: {"click .foo": "do:foo"}`
    configureTriggers: function() {
      if (!this.triggers) { return; }
  
      // Allow `triggers` to be configured as a function
      var triggers = this.normalizeUIKeys(_.result(this, 'triggers'));
  
      // Configure the triggers, prevent default
      // action and stop propagation of DOM events
      return _.reduce(triggers, function(events, value, key) {
        events[key] = this._buildViewTrigger(value);
        return events;
      }, {}, this);
    },
  
    // Overriding Backbone.View's delegateEvents to handle
    // the `triggers`, `modelEvents`, and `collectionEvents` configuration
    delegateEvents: function(events) {
      this._delegateDOMEvents(events);
      this.bindEntityEvents(this.model, this.getOption('modelEvents'));
      this.bindEntityEvents(this.collection, this.getOption('collectionEvents'));
  
      _.each(this._behaviors, function(behavior) {
        behavior.bindEntityEvents(this.model, behavior.getOption('modelEvents'));
        behavior.bindEntityEvents(this.collection, behavior.getOption('collectionEvents'));
      }, this);
  
      return this;
    },
  
    // internal method to delegate DOM events and triggers
    _delegateDOMEvents: function(eventsArg) {
      var events = Marionette._getValue(eventsArg || this.events, this);
  
      // normalize ui keys
      events = this.normalizeUIKeys(events);
      if (_.isUndefined(eventsArg)) {this.events = events;}
  
      var combinedEvents = {};
  
      // look up if this view has behavior events
      var behaviorEvents = _.result(this, 'behaviorEvents') || {};
      var triggers = this.configureTriggers();
      var behaviorTriggers = _.result(this, 'behaviorTriggers') || {};
  
      // behavior events will be overriden by view events and or triggers
      _.extend(combinedEvents, behaviorEvents, events, triggers, behaviorTriggers);
  
      Backbone.View.prototype.delegateEvents.call(this, combinedEvents);
    },
  
    // Overriding Backbone.View's undelegateEvents to handle unbinding
    // the `triggers`, `modelEvents`, and `collectionEvents` config
    undelegateEvents: function() {
      Backbone.View.prototype.undelegateEvents.apply(this, arguments);
  
      this.unbindEntityEvents(this.model, this.getOption('modelEvents'));
      this.unbindEntityEvents(this.collection, this.getOption('collectionEvents'));
  
      _.each(this._behaviors, function(behavior) {
        behavior.unbindEntityEvents(this.model, behavior.getOption('modelEvents'));
        behavior.unbindEntityEvents(this.collection, behavior.getOption('collectionEvents'));
      }, this);
  
      return this;
    },
  
    // Internal helper method to verify whether the view hasn't been destroyed
    _ensureViewIsIntact: function() {
      if (this.isDestroyed) {
        throw new Marionette.Error({
          name: 'ViewDestroyedError',
          message: 'View (cid: "' + this.cid + '") has already been destroyed and cannot be used.'
        });
      }
    },
  
    // Default `destroy` implementation, for removing a view from the
    // DOM and unbinding it. Regions will call this method
    // for you. You can specify an `onDestroy` method in your view to
    // add custom code that is called after the view is destroyed.
    destroy: function() {
      if (this.isDestroyed) { return this; }
  
      var args = _.toArray(arguments);
  
      this.triggerMethod.apply(this, ['before:destroy'].concat(args));
  
      // mark as destroyed before doing the actual destroy, to
      // prevent infinite loops within "destroy" event handlers
      // that are trying to destroy other views
      this.isDestroyed = true;
      this.triggerMethod.apply(this, ['destroy'].concat(args));
  
      // unbind UI elements
      this.unbindUIElements();
  
      this.isRendered = false;
  
      // remove the view from the DOM
      this.remove();
  
      // Call destroy on each behavior after
      // destroying the view.
      // This unbinds event listeners
      // that behaviors have registered for.
      _.invoke(this._behaviors, 'destroy', args);
  
      return this;
    },
  
    bindUIElements: function() {
      this._bindUIElements();
      _.invoke(this._behaviors, this._bindUIElements);
    },
  
    // This method binds the elements specified in the "ui" hash inside the view's code with
    // the associated jQuery selectors.
    _bindUIElements: function() {
      if (!this.ui) { return; }
  
      // store the ui hash in _uiBindings so they can be reset later
      // and so re-rendering the view will be able to find the bindings
      if (!this._uiBindings) {
        this._uiBindings = this.ui;
      }
  
      // get the bindings result, as a function or otherwise
      var bindings = _.result(this, '_uiBindings');
  
      // empty the ui so we don't have anything to start with
      this.ui = {};
  
      // bind each of the selectors
      _.each(bindings, function(selector, key) {
        this.ui[key] = this.$(selector);
      }, this);
    },
  
    // This method unbinds the elements specified in the "ui" hash
    unbindUIElements: function() {
      this._unbindUIElements();
      _.invoke(this._behaviors, this._unbindUIElements);
    },
  
    _unbindUIElements: function() {
      if (!this.ui || !this._uiBindings) { return; }
  
      // delete all of the existing ui bindings
      _.each(this.ui, function($el, name) {
        delete this.ui[name];
      }, this);
  
      // reset the ui element to the original bindings configuration
      this.ui = this._uiBindings;
      delete this._uiBindings;
    },
  
    // Internal method to create an event handler for a given `triggerDef` like
    // 'click:foo'
    _buildViewTrigger: function(triggerDef) {
  
      var options = _.defaults({}, triggerDef, {
        preventDefault: true,
        stopPropagation: true
      });
  
      var eventName = _.isObject(triggerDef) ? options.event : triggerDef;
  
      return function(e) {
        if (e) {
          if (e.preventDefault && options.preventDefault) {
            e.preventDefault();
          }
  
          if (e.stopPropagation && options.stopPropagation) {
            e.stopPropagation();
          }
        }
  
        var args = {
          view: this,
          model: this.model,
          collection: this.collection
        };
  
        this.triggerMethod(eventName, args);
      };
    },
  
    setElement: function() {
      var ret = Backbone.View.prototype.setElement.apply(this, arguments);
  
      // proxy behavior $el to the view's $el.
      // This is needed because a view's $el proxy
      // is not set until after setElement is called.
      _.invoke(this._behaviors, 'proxyViewProperties', this);
  
      return ret;
    },
  
    // import the `triggerMethod` to trigger events with corresponding
    // methods if the method exists
    triggerMethod: function() {
      var ret = Marionette._triggerMethod(this, arguments);
  
      this._triggerEventOnBehaviors(arguments);
      this._triggerEventOnParentLayout(arguments[0], _.rest(arguments));
  
      return ret;
    },
  
    _triggerEventOnBehaviors: function(args) {
      var triggerMethod = Marionette._triggerMethod;
      var behaviors = this._behaviors;
      // Use good ol' for as this is a very hot function
      for (var i = 0, length = behaviors && behaviors.length; i < length; i++) {
        triggerMethod(behaviors[i], args);
      }
    },
  
    _triggerEventOnParentLayout: function(eventName, args) {
      var layoutView = this._parentLayoutView();
      if (!layoutView) {
        return;
      }
  
      // invoke triggerMethod on parent view
      var eventPrefix = Marionette.getOption(layoutView, 'childViewEventPrefix');
      var prefixedEventName = eventPrefix + ':' + eventName;
      var callArgs = [this].concat(args);
  
      Marionette._triggerMethod(layoutView, prefixedEventName, callArgs);
  
      // call the parent view's childEvents handler
      var childEvents = Marionette.getOption(layoutView, 'childEvents');
  
      // since childEvents can be an object or a function use Marionette._getValue
      // to handle the abstaction for us.
      childEvents = Marionette._getValue(childEvents, layoutView);
      var normalizedChildEvents = layoutView.normalizeMethods(childEvents);
  
      if (normalizedChildEvents && _.isFunction(normalizedChildEvents[eventName])) {
        normalizedChildEvents[eventName].apply(layoutView, callArgs);
      }
    },
  
    // This method returns any views that are immediate
    // children of this view
    _getImmediateChildren: function() {
      return [];
    },
  
    // Returns an array of every nested view within this view
    _getNestedViews: function() {
      var children = this._getImmediateChildren();
  
      if (!children.length) { return children; }
  
      return _.reduce(children, function(memo, view) {
        if (!view._getNestedViews) { return memo; }
        return memo.concat(view._getNestedViews());
      }, children);
    },
  
    // Walk the _parent tree until we find a layout view (if one exists).
    // Returns the parent layout view hierarchically closest to this view.
    _parentLayoutView: function() {
      var parent  = this._parent;
  
      while (parent) {
        if (parent instanceof Marionette.LayoutView) {
          return parent;
        }
        parent = parent._parent;
      }
    },
  
    // Imports the "normalizeMethods" to transform hashes of
    // events=>function references/names to a hash of events=>function references
    normalizeMethods: Marionette.normalizeMethods,
  
    // A handy way to merge passed-in options onto the instance
    mergeOptions: Marionette.mergeOptions,
  
    // Proxy `getOption` to enable getting options from this or this.options by name.
    getOption: Marionette.proxyGetOption,
  
    // Proxy `bindEntityEvents` to enable binding view's events from another entity.
    bindEntityEvents: Marionette.proxyBindEntityEvents,
  
    // Proxy `unbindEntityEvents` to enable unbinding view's events from another entity.
    unbindEntityEvents: Marionette.proxyUnbindEntityEvents
  });
  
  // Item View
  // ---------
  
  // A single item view implementation that contains code for rendering
  // with underscore.js templates, serializing the view's model or collection,
  // and calling several methods on extended views, such as `onRender`.
  Marionette.ItemView = Marionette.View.extend({
  
    // Setting up the inheritance chain which allows changes to
    // Marionette.View.prototype.constructor which allows overriding
    constructor: function() {
      Marionette.View.apply(this, arguments);
    },
  
    // Serialize the model or collection for the view. If a model is
    // found, the view's `serializeModel` is called. If a collection is found,
    // each model in the collection is serialized by calling
    // the view's `serializeCollection` and put into an `items` array in
    // the resulting data. If both are found, defaults to the model.
    // You can override the `serializeData` method in your own view definition,
    // to provide custom serialization for your view's data.
    serializeData: function() {
      if (!this.model && !this.collection) {
        return {};
      }
  
      var args = [this.model || this.collection];
      if (arguments.length) {
        args.push.apply(args, arguments);
      }
  
      if (this.model) {
        return this.serializeModel.apply(this, args);
      } else {
        return {
          items: this.serializeCollection.apply(this, args)
        };
      }
    },
  
    // Serialize a collection by serializing each of its models.
    serializeCollection: function(collection) {
      return collection.toJSON.apply(collection, _.rest(arguments));
    },
  
    // Render the view, defaulting to underscore.js templates.
    // You can override this in your view definition to provide
    // a very specific rendering for your view. In general, though,
    // you should override the `Marionette.Renderer` object to
    // change how Marionette renders views.
    render: function() {
      this._ensureViewIsIntact();
  
      this.triggerMethod('before:render', this);
  
      this._renderTemplate();
      this.isRendered = true;
      this.bindUIElements();
  
      this.triggerMethod('render', this);
  
      return this;
    },
  
    // Internal method to render the template with the serialized data
    // and template helpers via the `Marionette.Renderer` object.
    // Throws an `UndefinedTemplateError` error if the template is
    // any falsely value but literal `false`.
    _renderTemplate: function() {
      var template = this.getTemplate();
  
      // Allow template-less item views
      if (template === false) {
        return;
      }
  
      if (!template) {
        throw new Marionette.Error({
          name: 'UndefinedTemplateError',
          message: 'Cannot render the template since it is null or undefined.'
        });
      }
  
      // Add in entity data and template helpers
      var data = this.mixinTemplateHelpers(this.serializeData());
  
      // Render and add to el
      var html = Marionette.Renderer.render(template, data, this);
      this.attachElContent(html);
  
      return this;
    },
  
    // Attaches the content of a given view.
    // This method can be overridden to optimize rendering,
    // or to render in a non standard way.
    //
    // For example, using `innerHTML` instead of `$el.html`
    //
    // ```js
    // attachElContent: function(html) {
    //   this.el.innerHTML = html;
    //   return this;
    // }
    // ```
    attachElContent: function(html) {
      this.$el.html(html);
  
      return this;
    }
  });
  
  /* jshint maxstatements: 20, maxcomplexity: 7 */
  
  // Collection View
  // ---------------
  
  // A view that iterates over a Backbone.Collection
  // and renders an individual child view for each model.
  Marionette.CollectionView = Marionette.View.extend({
  
    // used as the prefix for child view events
    // that are forwarded through the collectionview
    childViewEventPrefix: 'childview',
  
    // flag for maintaining the sorted order of the collection
    sort: true,
  
    // constructor
    // option to pass `{sort: false}` to prevent the `CollectionView` from
    // maintaining the sorted order of the collection.
    // This will fallback onto appending childView's to the end.
    //
    // option to pass `{comparator: compFunction()}` to allow the `CollectionView`
    // to use a custom sort order for the collection.
    constructor: function(options) {
      this.once('render', this._initialEvents);
      this._initChildViewStorage();
  
      Marionette.View.apply(this, arguments);
  
      this.on({
        'before:show':   this._onBeforeShowCalled,
        'show':          this._onShowCalled,
        'before:attach': this._onBeforeAttachCalled,
        'attach':        this._onAttachCalled
      });
      this.initRenderBuffer();
    },
  
    // Instead of inserting elements one by one into the page,
    // it's much more performant to insert elements into a document
    // fragment and then insert that document fragment into the page
    initRenderBuffer: function() {
      this._bufferedChildren = [];
    },
  
    startBuffering: function() {
      this.initRenderBuffer();
      this.isBuffering = true;
    },
  
    endBuffering: function() {
      // Only trigger attach if already shown and attached, otherwise Region#show() handles this.
      var canTriggerAttach = this._isShown && Marionette.isNodeAttached(this.el);
      var nestedViews;
  
      this.isBuffering = false;
  
      if (this._isShown) {
        this._triggerMethodMany(this._bufferedChildren, this, 'before:show');
      }
      if (canTriggerAttach && this._triggerBeforeAttach) {
        nestedViews = this._getNestedViews();
        this._triggerMethodMany(nestedViews, this, 'before:attach');
      }
  
      this.attachBuffer(this, this._createBuffer());
  
      if (canTriggerAttach && this._triggerAttach) {
        nestedViews = this._getNestedViews();
        this._triggerMethodMany(nestedViews, this, 'attach');
      }
      if (this._isShown) {
        this._triggerMethodMany(this._bufferedChildren, this, 'show');
      }
      this.initRenderBuffer();
    },
  
    _triggerMethodMany: function(targets, source, eventName) {
      var args = _.drop(arguments, 3);
  
      _.each(targets, function(target) {
        Marionette.triggerMethodOn.apply(target, [target, eventName, target, source].concat(args));
      });
    },
  
    // Configured the initial events that the collection view
    // binds to.
    _initialEvents: function() {
      if (this.collection) {
        this.listenTo(this.collection, 'add', this._onCollectionAdd);
        this.listenTo(this.collection, 'remove', this._onCollectionRemove);
        this.listenTo(this.collection, 'reset', this.render);
  
        if (this.getOption('sort')) {
          this.listenTo(this.collection, 'sort', this._sortViews);
        }
      }
    },
  
    // Handle a child added to the collection
    _onCollectionAdd: function(child, collection, opts) {
      // `index` is present when adding with `at` since BB 1.2; indexOf fallback for < 1.2
      var index = opts.at !== undefined && (opts.index || collection.indexOf(child));
  
      // When filtered or when there is no initial index, calculate index.
      if (this.getOption('filter') || index === false) {
        index = _.indexOf(this._filteredSortedModels(index), child);
      }
  
      if (this._shouldAddChild(child, index)) {
        this.destroyEmptyView();
        var ChildView = this.getChildView(child);
        this.addChild(child, ChildView, index);
      }
    },
  
    // get the child view by model it holds, and remove it
    _onCollectionRemove: function(model) {
      var view = this.children.findByModel(model);
      this.removeChildView(view);
      this.checkEmpty();
    },
  
    _onBeforeShowCalled: function() {
      // Reset attach event flags at the top of the Region#show() event lifecycle; if the Region's
      // show() options permit onBeforeAttach/onAttach events, these flags will be set true again.
      this._triggerBeforeAttach = this._triggerAttach = false;
      this.children.each(function(childView) {
        Marionette.triggerMethodOn(childView, 'before:show', childView);
      });
    },
  
    _onShowCalled: function() {
      this.children.each(function(childView) {
        Marionette.triggerMethodOn(childView, 'show', childView);
      });
    },
  
    // If during Region#show() onBeforeAttach was fired, continue firing it for child views
    _onBeforeAttachCalled: function() {
      this._triggerBeforeAttach = true;
    },
  
    // If during Region#show() onAttach was fired, continue firing it for child views
    _onAttachCalled: function() {
      this._triggerAttach = true;
    },
  
    // Render children views. Override this method to
    // provide your own implementation of a render function for
    // the collection view.
    render: function() {
      this._ensureViewIsIntact();
      this.triggerMethod('before:render', this);
      this._renderChildren();
      this.isRendered = true;
      this.triggerMethod('render', this);
      return this;
    },
  
    // Reorder DOM after sorting. When your element's rendering
    // do not use their index, you can pass reorderOnSort: true
    // to only reorder the DOM after a sort instead of rendering
    // all the collectionView
    reorder: function() {
      var children = this.children;
      var models = this._filteredSortedModels();
      var anyModelsAdded = _.some(models, function(model) {
        return !children.findByModel(model);
      });
  
      // If there are any new models added due to filtering
      // We need to add child views
      // So render as normal
      if (anyModelsAdded) {
        this.render();
      } else {
        // get the DOM nodes in the same order as the models
        var elsToReorder = _.map(models, function(model, index) {
          var view = children.findByModel(model);
          view._index = index;
          return view.el;
        });
  
        // find the views that were children before but arent in this new ordering
        var filteredOutViews = children.filter(function(view) {
          return !_.contains(elsToReorder, view.el);
        });
  
        this.triggerMethod('before:reorder');
  
        // since append moves elements that are already in the DOM,
        // appending the elements will effectively reorder them
        this._appendReorderedChildren(elsToReorder);
  
        // remove any views that have been filtered out
        _.each(filteredOutViews, this.removeChildView, this);
        this.checkEmpty();
  
        this.triggerMethod('reorder');
      }
    },
  
    // Render view after sorting. Override this method to
    // change how the view renders after a `sort` on the collection.
    // An example of this would be to only `renderChildren` in a `CompositeView`
    // rather than the full view.
    resortView: function() {
      if (Marionette.getOption(this, 'reorderOnSort')) {
        this.reorder();
      } else {
        this.render();
      }
    },
  
    // Internal method. This checks for any changes in the order of the collection.
    // If the index of any view doesn't match, it will render.
    _sortViews: function() {
      var models = this._filteredSortedModels();
  
      // check for any changes in sort order of views
      var orderChanged = _.find(models, function(item, index) {
        var view = this.children.findByModel(item);
        return !view || view._index !== index;
      }, this);
  
      if (orderChanged) {
        this.resortView();
      }
    },
  
    // Internal reference to what index a `emptyView` is.
    _emptyViewIndex: -1,
  
    // Internal method. Separated so that CompositeView can append to the childViewContainer
    // if necessary
    _appendReorderedChildren: function(children) {
      this.$el.append(children);
    },
  
    // Internal method. Separated so that CompositeView can have
    // more control over events being triggered, around the rendering
    // process
    _renderChildren: function() {
      this.destroyEmptyView();
      this.destroyChildren({checkEmpty: false});
  
      if (this.isEmpty(this.collection)) {
        this.showEmptyView();
      } else {
        this.triggerMethod('before:render:collection', this);
        this.startBuffering();
        this.showCollection();
        this.endBuffering();
        this.triggerMethod('render:collection', this);
  
        // If we have shown children and none have passed the filter, show the empty view
        if (this.children.isEmpty() && this.getOption('filter')) {
          this.showEmptyView();
        }
      }
    },
  
    // Internal method to loop through collection and show each child view.
    showCollection: function() {
      var ChildView;
  
      var models = this._filteredSortedModels();
  
      _.each(models, function(child, index) {
        ChildView = this.getChildView(child);
        this.addChild(child, ChildView, index);
      }, this);
    },
  
    // Allow the collection to be sorted by a custom view comparator
    _filteredSortedModels: function(addedAt) {
      var viewComparator = this.getViewComparator();
      var models = this.collection.models;
      addedAt = Math.min(Math.max(addedAt, 0), models.length - 1);
  
      if (viewComparator) {
        var addedModel;
        // Preserve `at` location, even for a sorted view
        if (addedAt) {
          addedModel = models[addedAt];
          models = models.slice(0, addedAt).concat(models.slice(addedAt + 1));
        }
        models = this._sortModelsBy(models, viewComparator);
        if (addedModel) {
          models.splice(addedAt, 0, addedModel);
        }
      }
  
      // Filter after sorting in case the filter uses the index
      if (this.getOption('filter')) {
        models = _.filter(models, function(model, index) {
          return this._shouldAddChild(model, index);
        }, this);
      }
  
      return models;
    },
  
    _sortModelsBy: function(models, comparator) {
      if (typeof comparator === 'string') {
        return _.sortBy(models, function(model) {
          return model.get(comparator);
        }, this);
      } else if (comparator.length === 1) {
        return _.sortBy(models, comparator, this);
      } else {
        return models.sort(_.bind(comparator, this));
      }
    },
  
    // Internal method to show an empty view in place of
    // a collection of child views, when the collection is empty
    showEmptyView: function() {
      var EmptyView = this.getEmptyView();
  
      if (EmptyView && !this._showingEmptyView) {
        this.triggerMethod('before:render:empty');
  
        this._showingEmptyView = true;
        var model = new Backbone.Model();
        this.addEmptyView(model, EmptyView);
  
        this.triggerMethod('render:empty');
      }
    },
  
    // Internal method to destroy an existing emptyView instance
    // if one exists. Called when a collection view has been
    // rendered empty, and then a child is added to the collection.
    destroyEmptyView: function() {
      if (this._showingEmptyView) {
        this.triggerMethod('before:remove:empty');
  
        this.destroyChildren();
        delete this._showingEmptyView;
  
        this.triggerMethod('remove:empty');
      }
    },
  
    // Retrieve the empty view class
    getEmptyView: function() {
      return this.getOption('emptyView');
    },
  
    // Render and show the emptyView. Similar to addChild method
    // but "add:child" events are not fired, and the event from
    // emptyView are not forwarded
    addEmptyView: function(child, EmptyView) {
      // Only trigger attach if already shown, attached, and not buffering, otherwise endBuffer() or
      // Region#show() handles this.
      var canTriggerAttach = this._isShown && !this.isBuffering && Marionette.isNodeAttached(this.el);
      var nestedViews;
  
      // get the emptyViewOptions, falling back to childViewOptions
      var emptyViewOptions = this.getOption('emptyViewOptions') ||
                            this.getOption('childViewOptions');
  
      if (_.isFunction(emptyViewOptions)) {
        emptyViewOptions = emptyViewOptions.call(this, child, this._emptyViewIndex);
      }
  
      // build the empty view
      var view = this.buildChildView(child, EmptyView, emptyViewOptions);
  
      view._parent = this;
  
      // Proxy emptyView events
      this.proxyChildEvents(view);
  
      view.once('render', function() {
        // trigger the 'before:show' event on `view` if the collection view has already been shown
        if (this._isShown) {
          Marionette.triggerMethodOn(view, 'before:show', view);
        }
  
        // Trigger `before:attach` following `render` to avoid adding logic and event triggers
        // to public method `renderChildView()`.
        if (canTriggerAttach && this._triggerBeforeAttach) {
          nestedViews = this._getViewAndNested(view);
          this._triggerMethodMany(nestedViews, this, 'before:attach');
        }
      }, this);
  
      // Store the `emptyView` like a `childView` so we can properly remove and/or close it later
      this.children.add(view);
      this.renderChildView(view, this._emptyViewIndex);
  
      // Trigger `attach`
      if (canTriggerAttach && this._triggerAttach) {
        nestedViews = this._getViewAndNested(view);
        this._triggerMethodMany(nestedViews, this, 'attach');
      }
      // call the 'show' method if the collection view has already been shown
      if (this._isShown) {
        Marionette.triggerMethodOn(view, 'show', view);
      }
    },
  
    // Retrieve the `childView` class, either from `this.options.childView`
    // or from the `childView` in the object definition. The "options"
    // takes precedence.
    // This method receives the model that will be passed to the instance
    // created from this `childView`. Overriding methods may use the child
    // to determine what `childView` class to return.
    getChildView: function(child) {
      var childView = this.getOption('childView');
  
      if (!childView) {
        throw new Marionette.Error({
          name: 'NoChildViewError',
          message: 'A "childView" must be specified'
        });
      }
  
      return childView;
    },
  
    // Render the child's view and add it to the
    // HTML for the collection view at a given index.
    // This will also update the indices of later views in the collection
    // in order to keep the children in sync with the collection.
    addChild: function(child, ChildView, index) {
      var childViewOptions = this.getOption('childViewOptions');
      childViewOptions = Marionette._getValue(childViewOptions, this, [child, index]);
  
      var view = this.buildChildView(child, ChildView, childViewOptions);
  
      // increment indices of views after this one
      this._updateIndices(view, true, index);
  
      this.triggerMethod('before:add:child', view);
      this._addChildView(view, index);
      this.triggerMethod('add:child', view);
  
      view._parent = this;
  
      return view;
    },
  
    // Internal method. This decrements or increments the indices of views after the
    // added/removed view to keep in sync with the collection.
    _updateIndices: function(view, increment, index) {
      if (!this.getOption('sort')) {
        return;
      }
  
      if (increment) {
        // assign the index to the view
        view._index = index;
      }
  
      // update the indexes of views after this one
      this.children.each(function(laterView) {
        if (laterView._index >= view._index) {
          laterView._index += increment ? 1 : -1;
        }
      });
    },
  
    // Internal Method. Add the view to children and render it at
    // the given index.
    _addChildView: function(view, index) {
      // Only trigger attach if already shown, attached, and not buffering, otherwise endBuffer() or
      // Region#show() handles this.
      var canTriggerAttach = this._isShown && !this.isBuffering && Marionette.isNodeAttached(this.el);
      var nestedViews;
  
      // set up the child view event forwarding
      this.proxyChildEvents(view);
  
      view.once('render', function() {
        // trigger the 'before:show' event on `view` if the collection view has already been shown
        if (this._isShown && !this.isBuffering) {
          Marionette.triggerMethodOn(view, 'before:show', view);
        }
  
        // Trigger `before:attach` following `render` to avoid adding logic and event triggers
        // to public method `renderChildView()`.
        if (canTriggerAttach && this._triggerBeforeAttach) {
          nestedViews = this._getViewAndNested(view);
          this._triggerMethodMany(nestedViews, this, 'before:attach');
        }
      }, this);
  
      // Store the child view itself so we can properly remove and/or destroy it later
      this.children.add(view);
      this.renderChildView(view, index);
  
      // Trigger `attach`
      if (canTriggerAttach && this._triggerAttach) {
        nestedViews = this._getViewAndNested(view);
        this._triggerMethodMany(nestedViews, this, 'attach');
      }
      // Trigger `show`
      if (this._isShown && !this.isBuffering) {
        Marionette.triggerMethodOn(view, 'show', view);
      }
    },
  
    // render the child view
    renderChildView: function(view, index) {
      if (!view.supportsRenderLifecycle) {
        Marionette.triggerMethodOn(view, 'before:render', view);
      }
      view.render();
      if (!view.supportsRenderLifecycle) {
        Marionette.triggerMethodOn(view, 'render', view);
      }
      this.attachHtml(this, view, index);
      return view;
    },
  
    // Build a `childView` for a model in the collection.
    buildChildView: function(child, ChildViewClass, childViewOptions) {
      var options = _.extend({model: child}, childViewOptions);
      var childView = new ChildViewClass(options);
      Marionette.MonitorDOMRefresh(childView);
      return childView;
    },
  
    // Remove the child view and destroy it.
    // This function also updates the indices of
    // later views in the collection in order to keep
    // the children in sync with the collection.
    removeChildView: function(view) {
      if (!view) { return view; }
  
      this.triggerMethod('before:remove:child', view);
  
      if (!view.supportsDestroyLifecycle) {
        Marionette.triggerMethodOn(view, 'before:destroy', view);
      }
      // call 'destroy' or 'remove', depending on which is found
      if (view.destroy) {
        view.destroy();
      } else {
        view.remove();
      }
      if (!view.supportsDestroyLifecycle) {
        Marionette.triggerMethodOn(view, 'destroy', view);
      }
  
      delete view._parent;
      this.stopListening(view);
      this.children.remove(view);
      this.triggerMethod('remove:child', view);
  
      // decrement the index of views after this one
      this._updateIndices(view, false);
  
      return view;
    },
  
    // check if the collection is empty
    isEmpty: function() {
      return !this.collection || this.collection.length === 0;
    },
  
    // If empty, show the empty view
    checkEmpty: function() {
      if (this.isEmpty(this.collection)) {
        this.showEmptyView();
      }
    },
  
    // You might need to override this if you've overridden attachHtml
    attachBuffer: function(collectionView, buffer) {
      collectionView.$el.append(buffer);
    },
  
    // Create a fragment buffer from the currently buffered children
    _createBuffer: function() {
      var elBuffer = document.createDocumentFragment();
      _.each(this._bufferedChildren, function(b) {
        elBuffer.appendChild(b.el);
      });
      return elBuffer;
    },
  
    // Append the HTML to the collection's `el`.
    // Override this method to do something other
    // than `.append`.
    attachHtml: function(collectionView, childView, index) {
      if (collectionView.isBuffering) {
        // buffering happens on reset events and initial renders
        // in order to reduce the number of inserts into the
        // document, which are expensive.
        collectionView._bufferedChildren.splice(index, 0, childView);
      } else {
        // If we've already rendered the main collection, append
        // the new child into the correct order if we need to. Otherwise
        // append to the end.
        if (!collectionView._insertBefore(childView, index)) {
          collectionView._insertAfter(childView);
        }
      }
    },
  
    // Internal method. Check whether we need to insert the view into
    // the correct position.
    _insertBefore: function(childView, index) {
      var currentView;
      var findPosition = this.getOption('sort') && (index < this.children.length - 1);
      if (findPosition) {
        // Find the view after this one
        currentView = this.children.find(function(view) {
          return view._index === index + 1;
        });
      }
  
      if (currentView) {
        currentView.$el.before(childView.el);
        return true;
      }
  
      return false;
    },
  
    // Internal method. Append a view to the end of the $el
    _insertAfter: function(childView) {
      this.$el.append(childView.el);
    },
  
    // Internal method to set up the `children` object for
    // storing all of the child views
    _initChildViewStorage: function() {
      this.children = new Backbone.ChildViewContainer();
    },
  
    // Handle cleanup and other destroying needs for the collection of views
    destroy: function() {
      if (this.isDestroyed) { return this; }
  
      this.triggerMethod('before:destroy:collection');
      this.destroyChildren({checkEmpty: false});
      this.triggerMethod('destroy:collection');
  
      return Marionette.View.prototype.destroy.apply(this, arguments);
    },
  
    // Destroy the child views that this collection view
    // is holding on to, if any
    destroyChildren: function(options) {
      var destroyOptions = options || {};
      var shouldCheckEmpty = true;
      var childViews = this.children.map(_.identity);
  
      if (!_.isUndefined(destroyOptions.checkEmpty)) {
        shouldCheckEmpty = destroyOptions.checkEmpty;
      }
  
      this.children.each(this.removeChildView, this);
  
      if (shouldCheckEmpty) {
        this.checkEmpty();
      }
      return childViews;
    },
  
    // Return true if the given child should be shown
    // Return false otherwise
    // The filter will be passed (child, index, collection)
    // Where
    //  'child' is the given model
    //  'index' is the index of that model in the collection
    //  'collection' is the collection referenced by this CollectionView
    _shouldAddChild: function(child, index) {
      var filter = this.getOption('filter');
      return !_.isFunction(filter) || filter.call(this, child, index, this.collection);
    },
  
    // Set up the child view event forwarding. Uses a "childview:"
    // prefix in front of all forwarded events.
    proxyChildEvents: function(view) {
      var prefix = this.getOption('childViewEventPrefix');
  
      // Forward all child view events through the parent,
      // prepending "childview:" to the event name
      this.listenTo(view, 'all', function() {
        var args = _.toArray(arguments);
        var rootEvent = args[0];
        var childEvents = this.normalizeMethods(_.result(this, 'childEvents'));
  
        args[0] = prefix + ':' + rootEvent;
        args.splice(1, 0, view);
  
        // call collectionView childEvent if defined
        if (typeof childEvents !== 'undefined' && _.isFunction(childEvents[rootEvent])) {
          childEvents[rootEvent].apply(this, args.slice(1));
        }
  
        this.triggerMethod.apply(this, args);
      });
    },
  
    _getImmediateChildren: function() {
      return _.values(this.children._views);
    },
  
    _getViewAndNested: function(view) {
      // This will not fail on Backbone.View which does not have #_getNestedViews.
      return [view].concat(_.result(view, '_getNestedViews') || []);
    },
  
    getViewComparator: function() {
      return this.getOption('viewComparator');
    }
  });
  
  /* jshint maxstatements: 17, maxlen: 117 */
  
  // Composite View
  // --------------
  
  // Used for rendering a branch-leaf, hierarchical structure.
  // Extends directly from CollectionView and also renders an
  // a child view as `modelView`, for the top leaf
  Marionette.CompositeView = Marionette.CollectionView.extend({
  
    // Setting up the inheritance chain which allows changes to
    // Marionette.CollectionView.prototype.constructor which allows overriding
    // option to pass '{sort: false}' to prevent the CompositeView from
    // maintaining the sorted order of the collection.
    // This will fallback onto appending childView's to the end.
    constructor: function() {
      Marionette.CollectionView.apply(this, arguments);
    },
  
    // Configured the initial events that the composite view
    // binds to. Override this method to prevent the initial
    // events, or to add your own initial events.
    _initialEvents: function() {
  
      // Bind only after composite view is rendered to avoid adding child views
      // to nonexistent childViewContainer
  
      if (this.collection) {
        this.listenTo(this.collection, 'add', this._onCollectionAdd);
        this.listenTo(this.collection, 'remove', this._onCollectionRemove);
        this.listenTo(this.collection, 'reset', this._renderChildren);
  
        if (this.getOption('sort')) {
          this.listenTo(this.collection, 'sort', this._sortViews);
        }
      }
    },
  
    // Retrieve the `childView` to be used when rendering each of
    // the items in the collection. The default is to return
    // `this.childView` or Marionette.CompositeView if no `childView`
    // has been defined
    getChildView: function(child) {
      var childView = this.getOption('childView') || this.constructor;
  
      return childView;
    },
  
    // Serialize the model for the view.
    // You can override the `serializeData` method in your own view
    // definition, to provide custom serialization for your view's data.
    serializeData: function() {
      var data = {};
  
      if (this.model) {
        data = _.partial(this.serializeModel, this.model).apply(this, arguments);
      }
  
      return data;
    },
  
    // Renders the model and the collection.
    render: function() {
      this._ensureViewIsIntact();
      this._isRendering = true;
      this.resetChildViewContainer();
  
      this.triggerMethod('before:render', this);
  
      this._renderTemplate();
      this._renderChildren();
  
      this._isRendering = false;
      this.isRendered = true;
      this.triggerMethod('render', this);
      return this;
    },
  
    _renderChildren: function() {
      if (this.isRendered || this._isRendering) {
        Marionette.CollectionView.prototype._renderChildren.call(this);
      }
    },
  
    // Render the root template that the children
    // views are appended to
    _renderTemplate: function() {
      var data = {};
      data = this.serializeData();
      data = this.mixinTemplateHelpers(data);
  
      this.triggerMethod('before:render:template');
  
      var template = this.getTemplate();
      var html = Marionette.Renderer.render(template, data, this);
      this.attachElContent(html);
  
      // the ui bindings is done here and not at the end of render since they
      // will not be available until after the model is rendered, but should be
      // available before the collection is rendered.
      this.bindUIElements();
      this.triggerMethod('render:template');
    },
  
    // Attaches the content of the root.
    // This method can be overridden to optimize rendering,
    // or to render in a non standard way.
    //
    // For example, using `innerHTML` instead of `$el.html`
    //
    // ```js
    // attachElContent: function(html) {
    //   this.el.innerHTML = html;
    //   return this;
    // }
    // ```
    attachElContent: function(html) {
      this.$el.html(html);
  
      return this;
    },
  
    // You might need to override this if you've overridden attachHtml
    attachBuffer: function(compositeView, buffer) {
      var $container = this.getChildViewContainer(compositeView);
      $container.append(buffer);
    },
  
    // Internal method. Append a view to the end of the $el.
    // Overidden from CollectionView to ensure view is appended to
    // childViewContainer
    _insertAfter: function(childView) {
      var $container = this.getChildViewContainer(this, childView);
      $container.append(childView.el);
    },
  
    // Internal method. Append reordered childView'.
    // Overidden from CollectionView to ensure reordered views
    // are appended to childViewContainer
    _appendReorderedChildren: function(children) {
      var $container = this.getChildViewContainer(this);
      $container.append(children);
    },
  
    // Internal method to ensure an `$childViewContainer` exists, for the
    // `attachHtml` method to use.
    getChildViewContainer: function(containerView, childView) {
      if (!!containerView.$childViewContainer) {
        return containerView.$childViewContainer;
      }
  
      var container;
      var childViewContainer = Marionette.getOption(containerView, 'childViewContainer');
      if (childViewContainer) {
  
        var selector = Marionette._getValue(childViewContainer, containerView);
  
        if (selector.charAt(0) === '@' && containerView.ui) {
          container = containerView.ui[selector.substr(4)];
        } else {
          container = containerView.$(selector);
        }
  
        if (container.length <= 0) {
          throw new Marionette.Error({
            name: 'ChildViewContainerMissingError',
            message: 'The specified "childViewContainer" was not found: ' + containerView.childViewContainer
          });
        }
  
      } else {
        container = containerView.$el;
      }
  
      containerView.$childViewContainer = container;
      return container;
    },
  
    // Internal method to reset the `$childViewContainer` on render
    resetChildViewContainer: function() {
      if (this.$childViewContainer) {
        this.$childViewContainer = undefined;
      }
    }
  });
  
  // Layout View
  // -----------
  
  // Used for managing application layoutViews, nested layoutViews and
  // multiple regions within an application or sub-application.
  //
  // A specialized view class that renders an area of HTML and then
  // attaches `Region` instances to the specified `regions`.
  // Used for composite view management and sub-application areas.
  Marionette.LayoutView = Marionette.ItemView.extend({
    regionClass: Marionette.Region,
  
    options: {
      destroyImmediate: false
    },
  
    // used as the prefix for child view events
    // that are forwarded through the layoutview
    childViewEventPrefix: 'childview',
  
    // Ensure the regions are available when the `initialize` method
    // is called.
    constructor: function(options) {
      options = options || {};
  
      this._firstRender = true;
      this._initializeRegions(options);
  
      Marionette.ItemView.call(this, options);
    },
  
    // LayoutView's render will use the existing region objects the
    // first time it is called. Subsequent calls will destroy the
    // views that the regions are showing and then reset the `el`
    // for the regions to the newly rendered DOM elements.
    render: function() {
      this._ensureViewIsIntact();
  
      if (this._firstRender) {
        // if this is the first render, don't do anything to
        // reset the regions
        this._firstRender = false;
      } else {
        // If this is not the first render call, then we need to
        // re-initialize the `el` for each region
        this._reInitializeRegions();
      }
  
      return Marionette.ItemView.prototype.render.apply(this, arguments);
    },
  
    // Handle destroying regions, and then destroy the view itself.
    destroy: function() {
      if (this.isDestroyed) { return this; }
      // #2134: remove parent element before destroying the child views, so
      // removing the child views doesn't retrigger repaints
      if (this.getOption('destroyImmediate') === true) {
        this.$el.remove();
      }
      this.regionManager.destroy();
      return Marionette.ItemView.prototype.destroy.apply(this, arguments);
    },
  
    showChildView: function(regionName, view, options) {
      var region = this.getRegion(regionName);
      return region.show.apply(region, _.rest(arguments));
    },
  
    getChildView: function(regionName) {
      return this.getRegion(regionName).currentView;
    },
  
    // Add a single region, by name, to the layoutView
    addRegion: function(name, definition) {
      var regions = {};
      regions[name] = definition;
      return this._buildRegions(regions)[name];
    },
  
    // Add multiple regions as a {name: definition, name2: def2} object literal
    addRegions: function(regions) {
      this.regions = _.extend({}, this.regions, regions);
      return this._buildRegions(regions);
    },
  
    // Remove a single region from the LayoutView, by name
    removeRegion: function(name) {
      delete this.regions[name];
      return this.regionManager.removeRegion(name);
    },
  
    // Provides alternative access to regions
    // Accepts the region name
    // getRegion('main')
    getRegion: function(region) {
      return this.regionManager.get(region);
    },
  
    // Get all regions
    getRegions: function() {
      return this.regionManager.getRegions();
    },
  
    // internal method to build regions
    _buildRegions: function(regions) {
      var defaults = {
        regionClass: this.getOption('regionClass'),
        parentEl: _.partial(_.result, this, 'el')
      };
  
      return this.regionManager.addRegions(regions, defaults);
    },
  
    // Internal method to initialize the regions that have been defined in a
    // `regions` attribute on this layoutView.
    _initializeRegions: function(options) {
      var regions;
      this._initRegionManager();
  
      regions = Marionette._getValue(this.regions, this, [options]) || {};
  
      // Enable users to define `regions` as instance options.
      var regionOptions = this.getOption.call(options, 'regions');
  
      // enable region options to be a function
      regionOptions = Marionette._getValue(regionOptions, this, [options]);
  
      _.extend(regions, regionOptions);
  
      // Normalize region selectors hash to allow
      // a user to use the @ui. syntax.
      regions = this.normalizeUIValues(regions, ['selector', 'el']);
  
      this.addRegions(regions);
    },
  
    // Internal method to re-initialize all of the regions by updating the `el` that
    // they point to
    _reInitializeRegions: function() {
      this.regionManager.invoke('reset');
    },
  
    // Enable easy overriding of the default `RegionManager`
    // for customized region interactions and business specific
    // view logic for better control over single regions.
    getRegionManager: function() {
      return new Marionette.RegionManager();
    },
  
    // Internal method to initialize the region manager
    // and all regions in it
    _initRegionManager: function() {
      this.regionManager = this.getRegionManager();
      this.regionManager._parent = this;
  
      this.listenTo(this.regionManager, 'before:add:region', function(name) {
        this.triggerMethod('before:add:region', name);
      });
  
      this.listenTo(this.regionManager, 'add:region', function(name, region) {
        this[name] = region;
        this.triggerMethod('add:region', name, region);
      });
  
      this.listenTo(this.regionManager, 'before:remove:region', function(name) {
        this.triggerMethod('before:remove:region', name);
      });
  
      this.listenTo(this.regionManager, 'remove:region', function(name, region) {
        delete this[name];
        this.triggerMethod('remove:region', name, region);
      });
    },
  
    _getImmediateChildren: function() {
      return _.chain(this.regionManager.getRegions())
        .pluck('currentView')
        .compact()
        .value();
    }
  });
  

  // Behavior
  // --------
  
  // A Behavior is an isolated set of DOM /
  // user interactions that can be mixed into any View.
  // Behaviors allow you to blackbox View specific interactions
  // into portable logical chunks, keeping your views simple and your code DRY.
  
  Marionette.Behavior = Marionette.Object.extend({
    constructor: function(options, view) {
      // Setup reference to the view.
      // this comes in handle when a behavior
      // wants to directly talk up the chain
      // to the view.
      this.view = view;
      this.defaults = _.result(this, 'defaults') || {};
      this.options  = _.extend({}, this.defaults, options);
      // Construct an internal UI hash using
      // the views UI hash and then the behaviors UI hash.
      // This allows the user to use UI hash elements
      // defined in the parent view as well as those
      // defined in the given behavior.
      this.ui = _.extend({}, _.result(view, 'ui'), _.result(this, 'ui'));
  
      Marionette.Object.apply(this, arguments);
    },
  
    // proxy behavior $ method to the view
    // this is useful for doing jquery DOM lookups
    // scoped to behaviors view.
    $: function() {
      return this.view.$.apply(this.view, arguments);
    },
  
    // Stops the behavior from listening to events.
    // Overrides Object#destroy to prevent additional events from being triggered.
    destroy: function() {
      this.stopListening();
  
      return this;
    },
  
    proxyViewProperties: function(view) {
      this.$el = view.$el;
      this.el = view.el;
    }
  });
  
  /* jshint maxlen: 143 */
  // Behaviors
  // ---------
  
  // Behaviors is a utility class that takes care of
  // gluing your behavior instances to their given View.
  // The most important part of this class is that you
  // **MUST** override the class level behaviorsLookup
  // method for things to work properly.
  
  Marionette.Behaviors = (function(Marionette, _) {
    // Borrow event splitter from Backbone
    var delegateEventSplitter = /^(\S+)\s*(.*)$/;
  
    function Behaviors(view, behaviors) {
  
      if (!_.isObject(view.behaviors)) {
        return {};
      }
  
      // Behaviors defined on a view can be a flat object literal
      // or it can be a function that returns an object.
      behaviors = Behaviors.parseBehaviors(view, behaviors || _.result(view, 'behaviors'));
  
      // Wraps several of the view's methods
      // calling the methods first on each behavior
      // and then eventually calling the method on the view.
      Behaviors.wrap(view, behaviors, _.keys(methods));
      return behaviors;
    }
  
    var methods = {
      behaviorTriggers: function(behaviorTriggers, behaviors) {
        var triggerBuilder = new BehaviorTriggersBuilder(this, behaviors);
        return triggerBuilder.buildBehaviorTriggers();
      },
  
      behaviorEvents: function(behaviorEvents, behaviors) {
        var _behaviorsEvents = {};
  
        _.each(behaviors, function(b, i) {
          var _events = {};
          var behaviorEvents = _.clone(_.result(b, 'events')) || {};
  
          // Normalize behavior events hash to allow
          // a user to use the @ui. syntax.
          behaviorEvents = Marionette.normalizeUIKeys(behaviorEvents, getBehaviorsUI(b));
  
          var j = 0;
          _.each(behaviorEvents, function(behaviour, key) {
            var match     = key.match(delegateEventSplitter);
  
            // Set event name to be namespaced using the view cid,
            // the behavior index, and the behavior event index
            // to generate a non colliding event namespace
            // http://api.jquery.com/event.namespace/
            var eventName = match[1] + '.' + [this.cid, i, j++, ' '].join('');
            var selector  = match[2];
  
            var eventKey  = eventName + selector;
            var handler   = _.isFunction(behaviour) ? behaviour : b[behaviour];
            if (!handler) { return; }
            _events[eventKey] = _.bind(handler, b);
          }, this);
  
          _behaviorsEvents = _.extend(_behaviorsEvents, _events);
        }, this);
  
        return _behaviorsEvents;
      }
    };
  
    _.extend(Behaviors, {
  
      // Placeholder method to be extended by the user.
      // The method should define the object that stores the behaviors.
      // i.e.
      //
      // ```js
      // Marionette.Behaviors.behaviorsLookup: function() {
      //   return App.Behaviors
      // }
      // ```
      behaviorsLookup: function() {
        throw new Marionette.Error({
          message: 'You must define where your behaviors are stored.',
          url: 'marionette.behaviors.html#behaviorslookup'
        });
      },
  
      // Takes care of getting the behavior class
      // given options and a key.
      // If a user passes in options.behaviorClass
      // default to using that. Otherwise delegate
      // the lookup to the users `behaviorsLookup` implementation.
      getBehaviorClass: function(options, key) {
        if (options.behaviorClass) {
          return options.behaviorClass;
        }
  
        // Get behavior class can be either a flat object or a method
        return Marionette._getValue(Behaviors.behaviorsLookup, this, [options, key])[key];
      },
  
      // Iterate over the behaviors object, for each behavior
      // instantiate it and get its grouped behaviors.
      parseBehaviors: function(view, behaviors) {
        return _.chain(behaviors).map(function(options, key) {
          var BehaviorClass = Behaviors.getBehaviorClass(options, key);
  
          var behavior = new BehaviorClass(options, view);
          var nestedBehaviors = Behaviors.parseBehaviors(view, _.result(behavior, 'behaviors'));
  
          return [behavior].concat(nestedBehaviors);
        }).flatten().value();
      },
  
      // Wrap view internal methods so that they delegate to behaviors. For example,
      // `onDestroy` should trigger destroy on all of the behaviors and then destroy itself.
      // i.e.
      //
      // `view.delegateEvents = _.partial(methods.delegateEvents, view.delegateEvents, behaviors);`
      wrap: function(view, behaviors, methodNames) {
        _.each(methodNames, function(methodName) {
          view[methodName] = _.partial(methods[methodName], view[methodName], behaviors);
        });
      }
    });
  
    // Class to build handlers for `triggers` on behaviors
    // for views
    function BehaviorTriggersBuilder(view, behaviors) {
      this._view      = view;
      this._behaviors = behaviors;
      this._triggers  = {};
    }
  
    _.extend(BehaviorTriggersBuilder.prototype, {
      // Main method to build the triggers hash with event keys and handlers
      buildBehaviorTriggers: function() {
        _.each(this._behaviors, this._buildTriggerHandlersForBehavior, this);
        return this._triggers;
      },
  
      // Internal method to build all trigger handlers for a given behavior
      _buildTriggerHandlersForBehavior: function(behavior, i) {
        var triggersHash = _.clone(_.result(behavior, 'triggers')) || {};
  
        triggersHash = Marionette.normalizeUIKeys(triggersHash, getBehaviorsUI(behavior));
  
        _.each(triggersHash, _.bind(this._setHandlerForBehavior, this, behavior, i));
      },
  
      // Internal method to create and assign the trigger handler for a given
      // behavior
      _setHandlerForBehavior: function(behavior, i, eventName, trigger) {
        // Unique identifier for the `this._triggers` hash
        var triggerKey = trigger.replace(/^\S+/, function(triggerName) {
          return triggerName + '.' + 'behaviortriggers' + i;
        });
  
        this._triggers[triggerKey] = this._view._buildViewTrigger(eventName);
      }
    });
  
    function getBehaviorsUI(behavior) {
      return behavior._uiBindings || behavior.ui;
    }
  
    return Behaviors;
  
  })(Marionette, _);
  

  // App Router
  // ----------
  
  // Reduce the boilerplate code of handling route events
  // and then calling a single method on another object.
  // Have your routers configured to call the method on
  // your object, directly.
  //
  // Configure an AppRouter with `appRoutes`.
  //
  // App routers can only take one `controller` object.
  // It is recommended that you divide your controller
  // objects in to smaller pieces of related functionality
  // and have multiple routers / controllers, instead of
  // just one giant router and controller.
  //
  // You can also add standard routes to an AppRouter.
  
  Marionette.AppRouter = Backbone.Router.extend({
  
    constructor: function(options) {
      this.options = options || {};
  
      Backbone.Router.apply(this, arguments);
  
      var appRoutes = this.getOption('appRoutes');
      var controller = this._getController();
      this.processAppRoutes(controller, appRoutes);
      this.on('route', this._processOnRoute, this);
    },
  
    // Similar to route method on a Backbone Router but
    // method is called on the controller
    appRoute: function(route, methodName) {
      var controller = this._getController();
      this._addAppRoute(controller, route, methodName);
    },
  
    // process the route event and trigger the onRoute
    // method call, if it exists
    _processOnRoute: function(routeName, routeArgs) {
      // make sure an onRoute before trying to call it
      if (_.isFunction(this.onRoute)) {
        // find the path that matches the current route
        var routePath = _.invert(this.getOption('appRoutes'))[routeName];
        this.onRoute(routeName, routePath, routeArgs);
      }
    },
  
    // Internal method to process the `appRoutes` for the
    // router, and turn them in to routes that trigger the
    // specified method on the specified `controller`.
    processAppRoutes: function(controller, appRoutes) {
      if (!appRoutes) { return; }
  
      var routeNames = _.keys(appRoutes).reverse(); // Backbone requires reverted order of routes
  
      _.each(routeNames, function(route) {
        this._addAppRoute(controller, route, appRoutes[route]);
      }, this);
    },
  
    _getController: function() {
      return this.getOption('controller');
    },
  
    _addAppRoute: function(controller, route, methodName) {
      var method = controller[methodName];
  
      if (!method) {
        throw new Marionette.Error('Method "' + methodName + '" was not found on the controller');
      }
  
      this.route(route, methodName, _.bind(method, controller));
    },
  
    mergeOptions: Marionette.mergeOptions,
  
    // Proxy `getOption` to enable getting options from this or this.options by name.
    getOption: Marionette.proxyGetOption,
  
    triggerMethod: Marionette.triggerMethod,
  
    bindEntityEvents: Marionette.proxyBindEntityEvents,
  
    unbindEntityEvents: Marionette.proxyUnbindEntityEvents
  });
  
  // Application
  // -----------
  
  // Contain and manage the composite application as a whole.
  // Stores and starts up `Region` objects, includes an
  // event aggregator as `app.vent`
  Marionette.Application = Marionette.Object.extend({
    constructor: function(options) {
      this._initializeRegions(options);
      this._initCallbacks = new Marionette.Callbacks();
      this.submodules = {};
      _.extend(this, options);
      this._initChannel();
      Marionette.Object.apply(this, arguments);
    },
  
    // Command execution, facilitated by Backbone.Wreqr.Commands
    execute: function() {
      this.commands.execute.apply(this.commands, arguments);
    },
  
    // Request/response, facilitated by Backbone.Wreqr.RequestResponse
    request: function() {
      return this.reqres.request.apply(this.reqres, arguments);
    },
  
    // Add an initializer that is either run at when the `start`
    // method is called, or run immediately if added after `start`
    // has already been called.
    addInitializer: function(initializer) {
      this._initCallbacks.add(initializer);
    },
  
    // kick off all of the application's processes.
    // initializes all of the regions that have been added
    // to the app, and runs all of the initializer functions
    start: function(options) {
      this.triggerMethod('before:start', options);
      this._initCallbacks.run(options, this);
      this.triggerMethod('start', options);
    },
  
    // Add regions to your app.
    // Accepts a hash of named strings or Region objects
    // addRegions({something: "#someRegion"})
    // addRegions({something: Region.extend({el: "#someRegion"}) });
    addRegions: function(regions) {
      return this._regionManager.addRegions(regions);
    },
  
    // Empty all regions in the app, without removing them
    emptyRegions: function() {
      return this._regionManager.emptyRegions();
    },
  
    // Removes a region from your app, by name
    // Accepts the regions name
    // removeRegion('myRegion')
    removeRegion: function(region) {
      return this._regionManager.removeRegion(region);
    },
  
    // Provides alternative access to regions
    // Accepts the region name
    // getRegion('main')
    getRegion: function(region) {
      return this._regionManager.get(region);
    },
  
    // Get all the regions from the region manager
    getRegions: function() {
      return this._regionManager.getRegions();
    },
  
    // Create a module, attached to the application
    module: function(moduleNames, moduleDefinition) {
  
      // Overwrite the module class if the user specifies one
      var ModuleClass = Marionette.Module.getClass(moduleDefinition);
  
      var args = _.toArray(arguments);
      args.unshift(this);
  
      // see the Marionette.Module object for more information
      return ModuleClass.create.apply(ModuleClass, args);
    },
  
    // Enable easy overriding of the default `RegionManager`
    // for customized region interactions and business-specific
    // view logic for better control over single regions.
    getRegionManager: function() {
      return new Marionette.RegionManager();
    },
  
    // Internal method to initialize the regions that have been defined in a
    // `regions` attribute on the application instance
    _initializeRegions: function(options) {
      var regions = _.isFunction(this.regions) ? this.regions(options) : this.regions || {};
  
      this._initRegionManager();
  
      // Enable users to define `regions` in instance options.
      var optionRegions = Marionette.getOption(options, 'regions');
  
      // Enable region options to be a function
      if (_.isFunction(optionRegions)) {
        optionRegions = optionRegions.call(this, options);
      }
  
      // Overwrite current regions with those passed in options
      _.extend(regions, optionRegions);
  
      this.addRegions(regions);
  
      return this;
    },
  
    // Internal method to set up the region manager
    _initRegionManager: function() {
      this._regionManager = this.getRegionManager();
      this._regionManager._parent = this;
  
      this.listenTo(this._regionManager, 'before:add:region', function() {
        Marionette._triggerMethod(this, 'before:add:region', arguments);
      });
  
      this.listenTo(this._regionManager, 'add:region', function(name, region) {
        this[name] = region;
        Marionette._triggerMethod(this, 'add:region', arguments);
      });
  
      this.listenTo(this._regionManager, 'before:remove:region', function() {
        Marionette._triggerMethod(this, 'before:remove:region', arguments);
      });
  
      this.listenTo(this._regionManager, 'remove:region', function(name) {
        delete this[name];
        Marionette._triggerMethod(this, 'remove:region', arguments);
      });
    },
  
    // Internal method to setup the Wreqr.radio channel
    _initChannel: function() {
      this.channelName = _.result(this, 'channelName') || 'global';
      this.channel = _.result(this, 'channel') || Backbone.Wreqr.radio.channel(this.channelName);
      this.vent = _.result(this, 'vent') || this.channel.vent;
      this.commands = _.result(this, 'commands') || this.channel.commands;
      this.reqres = _.result(this, 'reqres') || this.channel.reqres;
    }
  });
  
  /* jshint maxparams: 9 */
  
  // Module
  // ------
  
  // A simple module system, used to create privacy and encapsulation in
  // Marionette applications
  Marionette.Module = function(moduleName, app, options) {
    this.moduleName = moduleName;
    this.options = _.extend({}, this.options, options);
    // Allow for a user to overide the initialize
    // for a given module instance.
    this.initialize = options.initialize || this.initialize;
  
    // Set up an internal store for sub-modules.
    this.submodules = {};
  
    this._setupInitializersAndFinalizers();
  
    // Set an internal reference to the app
    // within a module.
    this.app = app;
  
    if (_.isFunction(this.initialize)) {
      this.initialize(moduleName, app, this.options);
    }
  };
  
  Marionette.Module.extend = Marionette.extend;
  
  // Extend the Module prototype with events / listenTo, so that the module
  // can be used as an event aggregator or pub/sub.
  _.extend(Marionette.Module.prototype, Backbone.Events, {
  
    // By default modules start with their parents.
    startWithParent: true,
  
    // Initialize is an empty function by default. Override it with your own
    // initialization logic when extending Marionette.Module.
    initialize: function() {},
  
    // Initializer for a specific module. Initializers are run when the
    // module's `start` method is called.
    addInitializer: function(callback) {
      this._initializerCallbacks.add(callback);
    },
  
    // Finalizers are run when a module is stopped. They are used to teardown
    // and finalize any variables, references, events and other code that the
    // module had set up.
    addFinalizer: function(callback) {
      this._finalizerCallbacks.add(callback);
    },
  
    // Start the module, and run all of its initializers
    start: function(options) {
      // Prevent re-starting a module that is already started
      if (this._isInitialized) { return; }
  
      // start the sub-modules (depth-first hierarchy)
      _.each(this.submodules, function(mod) {
        // check to see if we should start the sub-module with this parent
        if (mod.startWithParent) {
          mod.start(options);
        }
      });
  
      // run the callbacks to "start" the current module
      this.triggerMethod('before:start', options);
  
      this._initializerCallbacks.run(options, this);
      this._isInitialized = true;
  
      this.triggerMethod('start', options);
    },
  
    // Stop this module by running its finalizers and then stop all of
    // the sub-modules for this module
    stop: function() {
      // if we are not initialized, don't bother finalizing
      if (!this._isInitialized) { return; }
      this._isInitialized = false;
  
      this.triggerMethod('before:stop');
  
      // stop the sub-modules; depth-first, to make sure the
      // sub-modules are stopped / finalized before parents
      _.invoke(this.submodules, 'stop');
  
      // run the finalizers
      this._finalizerCallbacks.run(undefined, this);
  
      // reset the initializers and finalizers
      this._initializerCallbacks.reset();
      this._finalizerCallbacks.reset();
  
      this.triggerMethod('stop');
    },
  
    // Configure the module with a definition function and any custom args
    // that are to be passed in to the definition function
    addDefinition: function(moduleDefinition, customArgs) {
      this._runModuleDefinition(moduleDefinition, customArgs);
    },
  
    // Internal method: run the module definition function with the correct
    // arguments
    _runModuleDefinition: function(definition, customArgs) {
      // If there is no definition short circut the method.
      if (!definition) { return; }
  
      // build the correct list of arguments for the module definition
      var args = _.flatten([
        this,
        this.app,
        Backbone,
        Marionette,
        Backbone.$, _,
        customArgs
      ]);
  
      definition.apply(this, args);
    },
  
    // Internal method: set up new copies of initializers and finalizers.
    // Calling this method will wipe out all existing initializers and
    // finalizers.
    _setupInitializersAndFinalizers: function() {
      this._initializerCallbacks = new Marionette.Callbacks();
      this._finalizerCallbacks = new Marionette.Callbacks();
    },
  
    // import the `triggerMethod` to trigger events with corresponding
    // methods if the method exists
    triggerMethod: Marionette.triggerMethod
  });
  
  // Class methods to create modules
  _.extend(Marionette.Module, {
  
    // Create a module, hanging off the app parameter as the parent object.
    create: function(app, moduleNames, moduleDefinition) {
      var module = app;
  
      // get the custom args passed in after the module definition and
      // get rid of the module name and definition function
      var customArgs = _.drop(arguments, 3);
  
      // Split the module names and get the number of submodules.
      // i.e. an example module name of `Doge.Wow.Amaze` would
      // then have the potential for 3 module definitions.
      moduleNames = moduleNames.split('.');
      var length = moduleNames.length;
  
      // store the module definition for the last module in the chain
      var moduleDefinitions = [];
      moduleDefinitions[length - 1] = moduleDefinition;
  
      // Loop through all the parts of the module definition
      _.each(moduleNames, function(moduleName, i) {
        var parentModule = module;
        module = this._getModule(parentModule, moduleName, app, moduleDefinition);
        this._addModuleDefinition(parentModule, module, moduleDefinitions[i], customArgs);
      }, this);
  
      // Return the last module in the definition chain
      return module;
    },
  
    _getModule: function(parentModule, moduleName, app, def, args) {
      var options = _.extend({}, def);
      var ModuleClass = this.getClass(def);
  
      // Get an existing module of this name if we have one
      var module = parentModule[moduleName];
  
      if (!module) {
        // Create a new module if we don't have one
        module = new ModuleClass(moduleName, app, options);
        parentModule[moduleName] = module;
        // store the module on the parent
        parentModule.submodules[moduleName] = module;
      }
  
      return module;
    },
  
    // ## Module Classes
    //
    // Module classes can be used as an alternative to the define pattern.
    // The extend function of a Module is identical to the extend functions
    // on other Backbone and Marionette classes.
    // This allows module lifecyle events like `onStart` and `onStop` to be called directly.
    getClass: function(moduleDefinition) {
      var ModuleClass = Marionette.Module;
  
      if (!moduleDefinition) {
        return ModuleClass;
      }
  
      // If all of the module's functionality is defined inside its class,
      // then the class can be passed in directly. `MyApp.module("Foo", FooModule)`.
      if (moduleDefinition.prototype instanceof ModuleClass) {
        return moduleDefinition;
      }
  
      return moduleDefinition.moduleClass || ModuleClass;
    },
  
    // Add the module definition and add a startWithParent initializer function.
    // This is complicated because module definitions are heavily overloaded
    // and support an anonymous function, module class, or options object
    _addModuleDefinition: function(parentModule, module, def, args) {
      var fn = this._getDefine(def);
      var startWithParent = this._getStartWithParent(def, module);
  
      if (fn) {
        module.addDefinition(fn, args);
      }
  
      this._addStartWithParent(parentModule, module, startWithParent);
    },
  
    _getStartWithParent: function(def, module) {
      var swp;
  
      if (_.isFunction(def) && (def.prototype instanceof Marionette.Module)) {
        swp = module.constructor.prototype.startWithParent;
        return _.isUndefined(swp) ? true : swp;
      }
  
      if (_.isObject(def)) {
        swp = def.startWithParent;
        return _.isUndefined(swp) ? true : swp;
      }
  
      return true;
    },
  
    _getDefine: function(def) {
      if (_.isFunction(def) && !(def.prototype instanceof Marionette.Module)) {
        return def;
      }
  
      if (_.isObject(def)) {
        return def.define;
      }
  
      return null;
    },
  
    _addStartWithParent: function(parentModule, module, startWithParent) {
      module.startWithParent = module.startWithParent && startWithParent;
  
      if (!module.startWithParent || !!module.startWithParentIsConfigured) {
        return;
      }
  
      module.startWithParentIsConfigured = true;
  
      parentModule.addInitializer(function(options) {
        if (module.startWithParent) {
          module.start(options);
        }
      });
    }
  });
  

  return Marionette;
}));
assets/lib/swiper/swiper.js000064400001121127151327220410011776 0ustar00/**
 * Swiper 5.3.6
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * http://swiperjs.com
 *
 * Copyright 2014-2020 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: February 29, 2020
 */

(function (global, factory) {
  typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
  typeof define === 'function' && define.amd ? define(factory) :
  (global = global || self, global.Swiper = factory());
}(this, function () { 'use strict';

  /**
   * SSR Window 1.0.1
   * Better handling for window object in SSR environment
   * https://github.com/nolimits4web/ssr-window
   *
   * Copyright 2018, Vladimir Kharlampidi
   *
   * Licensed under MIT
   *
   * Released on: July 18, 2018
   */
  var doc = (typeof document === 'undefined') ? {
    body: {},
    addEventListener: function addEventListener() {},
    removeEventListener: function removeEventListener() {},
    activeElement: {
      blur: function blur() {},
      nodeName: '',
    },
    querySelector: function querySelector() {
      return null;
    },
    querySelectorAll: function querySelectorAll() {
      return [];
    },
    getElementById: function getElementById() {
      return null;
    },
    createEvent: function createEvent() {
      return {
        initEvent: function initEvent() {},
      };
    },
    createElement: function createElement() {
      return {
        children: [],
        childNodes: [],
        style: {},
        setAttribute: function setAttribute() {},
        getElementsByTagName: function getElementsByTagName() {
          return [];
        },
      };
    },
    location: { hash: '' },
  } : document; // eslint-disable-line

  var win = (typeof window === 'undefined') ? {
    document: doc,
    navigator: {
      userAgent: '',
    },
    location: {},
    history: {},
    CustomEvent: function CustomEvent() {
      return this;
    },
    addEventListener: function addEventListener() {},
    removeEventListener: function removeEventListener() {},
    getComputedStyle: function getComputedStyle() {
      return {
        getPropertyValue: function getPropertyValue() {
          return '';
        },
      };
    },
    Image: function Image() {},
    Date: function Date() {},
    screen: {},
    setTimeout: function setTimeout() {},
    clearTimeout: function clearTimeout() {},
  } : window; // eslint-disable-line

  /**
   * Dom7 2.1.3
   * Minimalistic JavaScript library for DOM manipulation, with a jQuery-compatible API
   * http://framework7.io/docs/dom.html
   *
   * Copyright 2019, Vladimir Kharlampidi
   * The iDangero.us
   * http://www.idangero.us/
   *
   * Licensed under MIT
   *
   * Released on: February 11, 2019
   */

  var Dom7 = function Dom7(arr) {
    var self = this;
    // Create array-like object
    for (var i = 0; i < arr.length; i += 1) {
      self[i] = arr[i];
    }
    self.length = arr.length;
    // Return collection with methods
    return this;
  };

  function $(selector, context) {
    var arr = [];
    var i = 0;
    if (selector && !context) {
      if (selector instanceof Dom7) {
        return selector;
      }
    }
    if (selector) {
        // String
      if (typeof selector === 'string') {
        var els;
        var tempParent;
        var html = selector.trim();
        if (html.indexOf('<') >= 0 && html.indexOf('>') >= 0) {
          var toCreate = 'div';
          if (html.indexOf('<li') === 0) { toCreate = 'ul'; }
          if (html.indexOf('<tr') === 0) { toCreate = 'tbody'; }
          if (html.indexOf('<td') === 0 || html.indexOf('<th') === 0) { toCreate = 'tr'; }
          if (html.indexOf('<tbody') === 0) { toCreate = 'table'; }
          if (html.indexOf('<option') === 0) { toCreate = 'select'; }
          tempParent = doc.createElement(toCreate);
          tempParent.innerHTML = html;
          for (i = 0; i < tempParent.childNodes.length; i += 1) {
            arr.push(tempParent.childNodes[i]);
          }
        } else {
          if (!context && selector[0] === '#' && !selector.match(/[ .<>:~]/)) {
            // Pure ID selector
            els = [doc.getElementById(selector.trim().split('#')[1])];
          } else {
            // Other selectors
            els = (context || doc).querySelectorAll(selector.trim());
          }
          for (i = 0; i < els.length; i += 1) {
            if (els[i]) { arr.push(els[i]); }
          }
        }
      } else if (selector.nodeType || selector === win || selector === doc) {
        // Node/element
        arr.push(selector);
      } else if (selector.length > 0 && selector[0].nodeType) {
        // Array of elements or instance of Dom
        for (i = 0; i < selector.length; i += 1) {
          arr.push(selector[i]);
        }
      }
    }
    return new Dom7(arr);
  }

  $.fn = Dom7.prototype;
  $.Class = Dom7;
  $.Dom7 = Dom7;

  function unique(arr) {
    var uniqueArray = [];
    for (var i = 0; i < arr.length; i += 1) {
      if (uniqueArray.indexOf(arr[i]) === -1) { uniqueArray.push(arr[i]); }
    }
    return uniqueArray;
  }

  // Classes and attributes
  function addClass(className) {
    if (typeof className === 'undefined') {
      return this;
    }
    var classes = className.split(' ');
    for (var i = 0; i < classes.length; i += 1) {
      for (var j = 0; j < this.length; j += 1) {
        if (typeof this[j] !== 'undefined' && typeof this[j].classList !== 'undefined') { this[j].classList.add(classes[i]); }
      }
    }
    return this;
  }
  function removeClass(className) {
    var classes = className.split(' ');
    for (var i = 0; i < classes.length; i += 1) {
      for (var j = 0; j < this.length; j += 1) {
        if (typeof this[j] !== 'undefined' && typeof this[j].classList !== 'undefined') { this[j].classList.remove(classes[i]); }
      }
    }
    return this;
  }
  function hasClass(className) {
    if (!this[0]) { return false; }
    return this[0].classList.contains(className);
  }
  function toggleClass(className) {
    var classes = className.split(' ');
    for (var i = 0; i < classes.length; i += 1) {
      for (var j = 0; j < this.length; j += 1) {
        if (typeof this[j] !== 'undefined' && typeof this[j].classList !== 'undefined') { this[j].classList.toggle(classes[i]); }
      }
    }
    return this;
  }
  function attr(attrs, value) {
    var arguments$1 = arguments;

    if (arguments.length === 1 && typeof attrs === 'string') {
      // Get attr
      if (this[0]) { return this[0].getAttribute(attrs); }
      return undefined;
    }

    // Set attrs
    for (var i = 0; i < this.length; i += 1) {
      if (arguments$1.length === 2) {
        // String
        this[i].setAttribute(attrs, value);
      } else {
        // Object
        // eslint-disable-next-line
        for (var attrName in attrs) {
          this[i][attrName] = attrs[attrName];
          this[i].setAttribute(attrName, attrs[attrName]);
        }
      }
    }
    return this;
  }
  // eslint-disable-next-line
  function removeAttr(attr) {
    for (var i = 0; i < this.length; i += 1) {
      this[i].removeAttribute(attr);
    }
    return this;
  }
  function data(key, value) {
    var el;
    if (typeof value === 'undefined') {
      el = this[0];
      // Get value
      if (el) {
        if (el.dom7ElementDataStorage && (key in el.dom7ElementDataStorage)) {
          return el.dom7ElementDataStorage[key];
        }

        var dataKey = el.getAttribute(("data-" + key));
        if (dataKey) {
          return dataKey;
        }
        return undefined;
      }
      return undefined;
    }

    // Set value
    for (var i = 0; i < this.length; i += 1) {
      el = this[i];
      if (!el.dom7ElementDataStorage) { el.dom7ElementDataStorage = {}; }
      el.dom7ElementDataStorage[key] = value;
    }
    return this;
  }
  // Transforms
  // eslint-disable-next-line
  function transform(transform) {
    for (var i = 0; i < this.length; i += 1) {
      var elStyle = this[i].style;
      elStyle.webkitTransform = transform;
      elStyle.transform = transform;
    }
    return this;
  }
  function transition(duration) {
    if (typeof duration !== 'string') {
      duration = duration + "ms"; // eslint-disable-line
    }
    for (var i = 0; i < this.length; i += 1) {
      var elStyle = this[i].style;
      elStyle.webkitTransitionDuration = duration;
      elStyle.transitionDuration = duration;
    }
    return this;
  }
  // Events
  function on() {
    var assign;

    var args = [], len = arguments.length;
    while ( len-- ) args[ len ] = arguments[ len ];
    var eventType = args[0];
    var targetSelector = args[1];
    var listener = args[2];
    var capture = args[3];
    if (typeof args[1] === 'function') {
      (assign = args, eventType = assign[0], listener = assign[1], capture = assign[2]);
      targetSelector = undefined;
    }
    if (!capture) { capture = false; }

    function handleLiveEvent(e) {
      var target = e.target;
      if (!target) { return; }
      var eventData = e.target.dom7EventData || [];
      if (eventData.indexOf(e) < 0) {
        eventData.unshift(e);
      }
      if ($(target).is(targetSelector)) { listener.apply(target, eventData); }
      else {
        var parents = $(target).parents(); // eslint-disable-line
        for (var k = 0; k < parents.length; k += 1) {
          if ($(parents[k]).is(targetSelector)) { listener.apply(parents[k], eventData); }
        }
      }
    }
    function handleEvent(e) {
      var eventData = e && e.target ? e.target.dom7EventData || [] : [];
      if (eventData.indexOf(e) < 0) {
        eventData.unshift(e);
      }
      listener.apply(this, eventData);
    }
    var events = eventType.split(' ');
    var j;
    for (var i = 0; i < this.length; i += 1) {
      var el = this[i];
      if (!targetSelector) {
        for (j = 0; j < events.length; j += 1) {
          var event = events[j];
          if (!el.dom7Listeners) { el.dom7Listeners = {}; }
          if (!el.dom7Listeners[event]) { el.dom7Listeners[event] = []; }
          el.dom7Listeners[event].push({
            listener: listener,
            proxyListener: handleEvent,
          });
          el.addEventListener(event, handleEvent, capture);
        }
      } else {
        // Live events
        for (j = 0; j < events.length; j += 1) {
          var event$1 = events[j];
          if (!el.dom7LiveListeners) { el.dom7LiveListeners = {}; }
          if (!el.dom7LiveListeners[event$1]) { el.dom7LiveListeners[event$1] = []; }
          el.dom7LiveListeners[event$1].push({
            listener: listener,
            proxyListener: handleLiveEvent,
          });
          el.addEventListener(event$1, handleLiveEvent, capture);
        }
      }
    }
    return this;
  }
  function off() {
    var assign;

    var args = [], len = arguments.length;
    while ( len-- ) args[ len ] = arguments[ len ];
    var eventType = args[0];
    var targetSelector = args[1];
    var listener = args[2];
    var capture = args[3];
    if (typeof args[1] === 'function') {
      (assign = args, eventType = assign[0], listener = assign[1], capture = assign[2]);
      targetSelector = undefined;
    }
    if (!capture) { capture = false; }

    var events = eventType.split(' ');
    for (var i = 0; i < events.length; i += 1) {
      var event = events[i];
      for (var j = 0; j < this.length; j += 1) {
        var el = this[j];
        var handlers = (void 0);
        if (!targetSelector && el.dom7Listeners) {
          handlers = el.dom7Listeners[event];
        } else if (targetSelector && el.dom7LiveListeners) {
          handlers = el.dom7LiveListeners[event];
        }
        if (handlers && handlers.length) {
          for (var k = handlers.length - 1; k >= 0; k -= 1) {
            var handler = handlers[k];
            if (listener && handler.listener === listener) {
              el.removeEventListener(event, handler.proxyListener, capture);
              handlers.splice(k, 1);
            } else if (listener && handler.listener && handler.listener.dom7proxy && handler.listener.dom7proxy === listener) {
              el.removeEventListener(event, handler.proxyListener, capture);
              handlers.splice(k, 1);
            } else if (!listener) {
              el.removeEventListener(event, handler.proxyListener, capture);
              handlers.splice(k, 1);
            }
          }
        }
      }
    }
    return this;
  }
  function trigger() {
    var args = [], len = arguments.length;
    while ( len-- ) args[ len ] = arguments[ len ];

    var events = args[0].split(' ');
    var eventData = args[1];
    for (var i = 0; i < events.length; i += 1) {
      var event = events[i];
      for (var j = 0; j < this.length; j += 1) {
        var el = this[j];
        var evt = (void 0);
        try {
          evt = new win.CustomEvent(event, {
            detail: eventData,
            bubbles: true,
            cancelable: true,
          });
        } catch (e) {
          evt = doc.createEvent('Event');
          evt.initEvent(event, true, true);
          evt.detail = eventData;
        }
        // eslint-disable-next-line
        el.dom7EventData = args.filter(function (data, dataIndex) { return dataIndex > 0; });
        el.dispatchEvent(evt);
        el.dom7EventData = [];
        delete el.dom7EventData;
      }
    }
    return this;
  }
  function transitionEnd(callback) {
    var events = ['webkitTransitionEnd', 'transitionend'];
    var dom = this;
    var i;
    function fireCallBack(e) {
      /* jshint validthis:true */
      if (e.target !== this) { return; }
      callback.call(this, e);
      for (i = 0; i < events.length; i += 1) {
        dom.off(events[i], fireCallBack);
      }
    }
    if (callback) {
      for (i = 0; i < events.length; i += 1) {
        dom.on(events[i], fireCallBack);
      }
    }
    return this;
  }
  function outerWidth(includeMargins) {
    if (this.length > 0) {
      if (includeMargins) {
        // eslint-disable-next-line
        var styles = this.styles();
        return this[0].offsetWidth + parseFloat(styles.getPropertyValue('margin-right')) + parseFloat(styles.getPropertyValue('margin-left'));
      }
      return this[0].offsetWidth;
    }
    return null;
  }
  function outerHeight(includeMargins) {
    if (this.length > 0) {
      if (includeMargins) {
        // eslint-disable-next-line
        var styles = this.styles();
        return this[0].offsetHeight + parseFloat(styles.getPropertyValue('margin-top')) + parseFloat(styles.getPropertyValue('margin-bottom'));
      }
      return this[0].offsetHeight;
    }
    return null;
  }
  function offset() {
    if (this.length > 0) {
      var el = this[0];
      var box = el.getBoundingClientRect();
      var body = doc.body;
      var clientTop = el.clientTop || body.clientTop || 0;
      var clientLeft = el.clientLeft || body.clientLeft || 0;
      var scrollTop = el === win ? win.scrollY : el.scrollTop;
      var scrollLeft = el === win ? win.scrollX : el.scrollLeft;
      return {
        top: (box.top + scrollTop) - clientTop,
        left: (box.left + scrollLeft) - clientLeft,
      };
    }

    return null;
  }
  function styles() {
    if (this[0]) { return win.getComputedStyle(this[0], null); }
    return {};
  }
  function css(props, value) {
    var i;
    if (arguments.length === 1) {
      if (typeof props === 'string') {
        if (this[0]) { return win.getComputedStyle(this[0], null).getPropertyValue(props); }
      } else {
        for (i = 0; i < this.length; i += 1) {
          // eslint-disable-next-line
          for (var prop in props) {
            this[i].style[prop] = props[prop];
          }
        }
        return this;
      }
    }
    if (arguments.length === 2 && typeof props === 'string') {
      for (i = 0; i < this.length; i += 1) {
        this[i].style[props] = value;
      }
      return this;
    }
    return this;
  }
  // Iterate over the collection passing elements to `callback`
  function each(callback) {
    // Don't bother continuing without a callback
    if (!callback) { return this; }
    // Iterate over the current collection
    for (var i = 0; i < this.length; i += 1) {
      // If the callback returns false
      if (callback.call(this[i], i, this[i]) === false) {
        // End the loop early
        return this;
      }
    }
    // Return `this` to allow chained DOM operations
    return this;
  }
  function filter(callback) {
    var matchedItems = [];
    var dom = this;
    for (var i = 0; i < dom.length; i += 1) {
      if (callback.call(dom[i], i, dom[i])) { matchedItems.push(dom[i]); }
    }
    return new Dom7(matchedItems);
  }
  // eslint-disable-next-line
  function html(html) {
    if (typeof html === 'undefined') {
      return this[0] ? this[0].innerHTML : undefined;
    }

    for (var i = 0; i < this.length; i += 1) {
      this[i].innerHTML = html;
    }
    return this;
  }
  // eslint-disable-next-line
  function text(text) {
    if (typeof text === 'undefined') {
      if (this[0]) {
        return this[0].textContent.trim();
      }
      return null;
    }

    for (var i = 0; i < this.length; i += 1) {
      this[i].textContent = text;
    }
    return this;
  }
  function is(selector) {
    var el = this[0];
    var compareWith;
    var i;
    if (!el || typeof selector === 'undefined') { return false; }
    if (typeof selector === 'string') {
      if (el.matches) { return el.matches(selector); }
      else if (el.webkitMatchesSelector) { return el.webkitMatchesSelector(selector); }
      else if (el.msMatchesSelector) { return el.msMatchesSelector(selector); }

      compareWith = $(selector);
      for (i = 0; i < compareWith.length; i += 1) {
        if (compareWith[i] === el) { return true; }
      }
      return false;
    } else if (selector === doc) { return el === doc; }
    else if (selector === win) { return el === win; }

    if (selector.nodeType || selector instanceof Dom7) {
      compareWith = selector.nodeType ? [selector] : selector;
      for (i = 0; i < compareWith.length; i += 1) {
        if (compareWith[i] === el) { return true; }
      }
      return false;
    }
    return false;
  }
  function index() {
    var child = this[0];
    var i;
    if (child) {
      i = 0;
      // eslint-disable-next-line
      while ((child = child.previousSibling) !== null) {
        if (child.nodeType === 1) { i += 1; }
      }
      return i;
    }
    return undefined;
  }
  // eslint-disable-next-line
  function eq(index) {
    if (typeof index === 'undefined') { return this; }
    var length = this.length;
    var returnIndex;
    if (index > length - 1) {
      return new Dom7([]);
    }
    if (index < 0) {
      returnIndex = length + index;
      if (returnIndex < 0) { return new Dom7([]); }
      return new Dom7([this[returnIndex]]);
    }
    return new Dom7([this[index]]);
  }
  function append() {
    var args = [], len = arguments.length;
    while ( len-- ) args[ len ] = arguments[ len ];

    var newChild;

    for (var k = 0; k < args.length; k += 1) {
      newChild = args[k];
      for (var i = 0; i < this.length; i += 1) {
        if (typeof newChild === 'string') {
          var tempDiv = doc.createElement('div');
          tempDiv.innerHTML = newChild;
          while (tempDiv.firstChild) {
            this[i].appendChild(tempDiv.firstChild);
          }
        } else if (newChild instanceof Dom7) {
          for (var j = 0; j < newChild.length; j += 1) {
            this[i].appendChild(newChild[j]);
          }
        } else {
          this[i].appendChild(newChild);
        }
      }
    }

    return this;
  }
  function prepend(newChild) {
    var i;
    var j;
    for (i = 0; i < this.length; i += 1) {
      if (typeof newChild === 'string') {
        var tempDiv = doc.createElement('div');
        tempDiv.innerHTML = newChild;
        for (j = tempDiv.childNodes.length - 1; j >= 0; j -= 1) {
          this[i].insertBefore(tempDiv.childNodes[j], this[i].childNodes[0]);
        }
      } else if (newChild instanceof Dom7) {
        for (j = 0; j < newChild.length; j += 1) {
          this[i].insertBefore(newChild[j], this[i].childNodes[0]);
        }
      } else {
        this[i].insertBefore(newChild, this[i].childNodes[0]);
      }
    }
    return this;
  }
  function next(selector) {
    if (this.length > 0) {
      if (selector) {
        if (this[0].nextElementSibling && $(this[0].nextElementSibling).is(selector)) {
          return new Dom7([this[0].nextElementSibling]);
        }
        return new Dom7([]);
      }

      if (this[0].nextElementSibling) { return new Dom7([this[0].nextElementSibling]); }
      return new Dom7([]);
    }
    return new Dom7([]);
  }
  function nextAll(selector) {
    var nextEls = [];
    var el = this[0];
    if (!el) { return new Dom7([]); }
    while (el.nextElementSibling) {
      var next = el.nextElementSibling; // eslint-disable-line
      if (selector) {
        if ($(next).is(selector)) { nextEls.push(next); }
      } else { nextEls.push(next); }
      el = next;
    }
    return new Dom7(nextEls);
  }
  function prev(selector) {
    if (this.length > 0) {
      var el = this[0];
      if (selector) {
        if (el.previousElementSibling && $(el.previousElementSibling).is(selector)) {
          return new Dom7([el.previousElementSibling]);
        }
        return new Dom7([]);
      }

      if (el.previousElementSibling) { return new Dom7([el.previousElementSibling]); }
      return new Dom7([]);
    }
    return new Dom7([]);
  }
  function prevAll(selector) {
    var prevEls = [];
    var el = this[0];
    if (!el) { return new Dom7([]); }
    while (el.previousElementSibling) {
      var prev = el.previousElementSibling; // eslint-disable-line
      if (selector) {
        if ($(prev).is(selector)) { prevEls.push(prev); }
      } else { prevEls.push(prev); }
      el = prev;
    }
    return new Dom7(prevEls);
  }
  function parent(selector) {
    var parents = []; // eslint-disable-line
    for (var i = 0; i < this.length; i += 1) {
      if (this[i].parentNode !== null) {
        if (selector) {
          if ($(this[i].parentNode).is(selector)) { parents.push(this[i].parentNode); }
        } else {
          parents.push(this[i].parentNode);
        }
      }
    }
    return $(unique(parents));
  }
  function parents(selector) {
    var parents = []; // eslint-disable-line
    for (var i = 0; i < this.length; i += 1) {
      var parent = this[i].parentNode; // eslint-disable-line
      while (parent) {
        if (selector) {
          if ($(parent).is(selector)) { parents.push(parent); }
        } else {
          parents.push(parent);
        }
        parent = parent.parentNode;
      }
    }
    return $(unique(parents));
  }
  function closest(selector) {
    var closest = this; // eslint-disable-line
    if (typeof selector === 'undefined') {
      return new Dom7([]);
    }
    if (!closest.is(selector)) {
      closest = closest.parents(selector).eq(0);
    }
    return closest;
  }
  function find(selector) {
    var foundElements = [];
    for (var i = 0; i < this.length; i += 1) {
      var found = this[i].querySelectorAll(selector);
      for (var j = 0; j < found.length; j += 1) {
        foundElements.push(found[j]);
      }
    }
    return new Dom7(foundElements);
  }
  function children(selector) {
    var children = []; // eslint-disable-line
    for (var i = 0; i < this.length; i += 1) {
      var childNodes = this[i].childNodes;

      for (var j = 0; j < childNodes.length; j += 1) {
        if (!selector) {
          if (childNodes[j].nodeType === 1) { children.push(childNodes[j]); }
        } else if (childNodes[j].nodeType === 1 && $(childNodes[j]).is(selector)) {
          children.push(childNodes[j]);
        }
      }
    }
    return new Dom7(unique(children));
  }
  function remove() {
    for (var i = 0; i < this.length; i += 1) {
      if (this[i].parentNode) { this[i].parentNode.removeChild(this[i]); }
    }
    return this;
  }
  function add() {
    var args = [], len = arguments.length;
    while ( len-- ) args[ len ] = arguments[ len ];

    var dom = this;
    var i;
    var j;
    for (i = 0; i < args.length; i += 1) {
      var toAdd = $(args[i]);
      for (j = 0; j < toAdd.length; j += 1) {
        dom[dom.length] = toAdd[j];
        dom.length += 1;
      }
    }
    return dom;
  }

  var Methods = {
    addClass: addClass,
    removeClass: removeClass,
    hasClass: hasClass,
    toggleClass: toggleClass,
    attr: attr,
    removeAttr: removeAttr,
    data: data,
    transform: transform,
    transition: transition,
    on: on,
    off: off,
    trigger: trigger,
    transitionEnd: transitionEnd,
    outerWidth: outerWidth,
    outerHeight: outerHeight,
    offset: offset,
    css: css,
    each: each,
    html: html,
    text: text,
    is: is,
    index: index,
    eq: eq,
    append: append,
    prepend: prepend,
    next: next,
    nextAll: nextAll,
    prev: prev,
    prevAll: prevAll,
    parent: parent,
    parents: parents,
    closest: closest,
    find: find,
    children: children,
    filter: filter,
    remove: remove,
    add: add,
    styles: styles,
  };

  Object.keys(Methods).forEach(function (methodName) {
    $.fn[methodName] = $.fn[methodName] || Methods[methodName];
  });

  var Utils = {
    deleteProps: function deleteProps(obj) {
      var object = obj;
      Object.keys(object).forEach(function (key) {
        try {
          object[key] = null;
        } catch (e) {
          // no getter for object
        }
        try {
          delete object[key];
        } catch (e) {
          // something got wrong
        }
      });
    },
    nextTick: function nextTick(callback, delay) {
      if ( delay === void 0 ) delay = 0;

      return setTimeout(callback, delay);
    },
    now: function now() {
      return Date.now();
    },
    getTranslate: function getTranslate(el, axis) {
      if ( axis === void 0 ) axis = 'x';

      var matrix;
      var curTransform;
      var transformMatrix;

      var curStyle = win.getComputedStyle(el, null);

      if (win.WebKitCSSMatrix) {
        curTransform = curStyle.transform || curStyle.webkitTransform;
        if (curTransform.split(',').length > 6) {
          curTransform = curTransform.split(', ').map(function (a) { return a.replace(',', '.'); }).join(', ');
        }
        // Some old versions of Webkit choke when 'none' is passed; pass
        // empty string instead in this case
        transformMatrix = new win.WebKitCSSMatrix(curTransform === 'none' ? '' : curTransform);
      } else {
        transformMatrix = curStyle.MozTransform || curStyle.OTransform || curStyle.MsTransform || curStyle.msTransform || curStyle.transform || curStyle.getPropertyValue('transform').replace('translate(', 'matrix(1, 0, 0, 1,');
        matrix = transformMatrix.toString().split(',');
      }

      if (axis === 'x') {
        // Latest Chrome and webkits Fix
        if (win.WebKitCSSMatrix) { curTransform = transformMatrix.m41; }
        // Crazy IE10 Matrix
        else if (matrix.length === 16) { curTransform = parseFloat(matrix[12]); }
        // Normal Browsers
        else { curTransform = parseFloat(matrix[4]); }
      }
      if (axis === 'y') {
        // Latest Chrome and webkits Fix
        if (win.WebKitCSSMatrix) { curTransform = transformMatrix.m42; }
        // Crazy IE10 Matrix
        else if (matrix.length === 16) { curTransform = parseFloat(matrix[13]); }
        // Normal Browsers
        else { curTransform = parseFloat(matrix[5]); }
      }
      return curTransform || 0;
    },
    parseUrlQuery: function parseUrlQuery(url) {
      var query = {};
      var urlToParse = url || win.location.href;
      var i;
      var params;
      var param;
      var length;
      if (typeof urlToParse === 'string' && urlToParse.length) {
        urlToParse = urlToParse.indexOf('?') > -1 ? urlToParse.replace(/\S*\?/, '') : '';
        params = urlToParse.split('&').filter(function (paramsPart) { return paramsPart !== ''; });
        length = params.length;

        for (i = 0; i < length; i += 1) {
          param = params[i].replace(/#\S+/g, '').split('=');
          query[decodeURIComponent(param[0])] = typeof param[1] === 'undefined' ? undefined : decodeURIComponent(param[1]) || '';
        }
      }
      return query;
    },
    isObject: function isObject(o) {
      return typeof o === 'object' && o !== null && o.constructor && o.constructor === Object;
    },
    extend: function extend() {
      var args = [], len$1 = arguments.length;
      while ( len$1-- ) args[ len$1 ] = arguments[ len$1 ];

      var to = Object(args[0]);
      for (var i = 1; i < args.length; i += 1) {
        var nextSource = args[i];
        if (nextSource !== undefined && nextSource !== null) {
          var keysArray = Object.keys(Object(nextSource));
          for (var nextIndex = 0, len = keysArray.length; nextIndex < len; nextIndex += 1) {
            var nextKey = keysArray[nextIndex];
            var desc = Object.getOwnPropertyDescriptor(nextSource, nextKey);
            if (desc !== undefined && desc.enumerable) {
              if (Utils.isObject(to[nextKey]) && Utils.isObject(nextSource[nextKey])) {
                Utils.extend(to[nextKey], nextSource[nextKey]);
              } else if (!Utils.isObject(to[nextKey]) && Utils.isObject(nextSource[nextKey])) {
                to[nextKey] = {};
                Utils.extend(to[nextKey], nextSource[nextKey]);
              } else {
                to[nextKey] = nextSource[nextKey];
              }
            }
          }
        }
      }
      return to;
    },
  };

  var Support = (function Support() {
    return {
      touch: (win.Modernizr && win.Modernizr.touch === true) || (function checkTouch() {
        return !!((win.navigator.maxTouchPoints > 0) || ('ontouchstart' in win) || (win.DocumentTouch && doc instanceof win.DocumentTouch));
      }()),

      pointerEvents: !!win.PointerEvent && ('maxTouchPoints' in win.navigator) && win.navigator.maxTouchPoints > 0,

      observer: (function checkObserver() {
        return ('MutationObserver' in win || 'WebkitMutationObserver' in win);
      }()),

      passiveListener: (function checkPassiveListener() {
        var supportsPassive = false;
        try {
          var opts = Object.defineProperty({}, 'passive', {
            // eslint-disable-next-line
            get: function get() {
              supportsPassive = true;
            },
          });
          win.addEventListener('testPassiveListener', null, opts);
        } catch (e) {
          // No support
        }
        return supportsPassive;
      }()),

      gestures: (function checkGestures() {
        return 'ongesturestart' in win;
      }()),
    };
  }());

  var SwiperClass = function SwiperClass(params) {
    if ( params === void 0 ) params = {};

    var self = this;
    self.params = params;

    // Events
    self.eventsListeners = {};

    if (self.params && self.params.on) {
      Object.keys(self.params.on).forEach(function (eventName) {
        self.on(eventName, self.params.on[eventName]);
      });
    }
  };

  var staticAccessors = { components: { configurable: true } };

  SwiperClass.prototype.on = function on (events, handler, priority) {
    var self = this;
    if (typeof handler !== 'function') { return self; }
    var method = priority ? 'unshift' : 'push';
    events.split(' ').forEach(function (event) {
      if (!self.eventsListeners[event]) { self.eventsListeners[event] = []; }
      self.eventsListeners[event][method](handler);
    });
    return self;
  };

  SwiperClass.prototype.once = function once (events, handler, priority) {
    var self = this;
    if (typeof handler !== 'function') { return self; }
    function onceHandler() {
        var args = [], len = arguments.length;
        while ( len-- ) args[ len ] = arguments[ len ];

      self.off(events, onceHandler);
      if (onceHandler.f7proxy) {
        delete onceHandler.f7proxy;
      }
      handler.apply(self, args);
    }
    onceHandler.f7proxy = handler;
    return self.on(events, onceHandler, priority);
  };

  SwiperClass.prototype.off = function off (events, handler) {
    var self = this;
    if (!self.eventsListeners) { return self; }
    events.split(' ').forEach(function (event) {
      if (typeof handler === 'undefined') {
        self.eventsListeners[event] = [];
      } else if (self.eventsListeners[event] && self.eventsListeners[event].length) {
        self.eventsListeners[event].forEach(function (eventHandler, index) {
          if (eventHandler === handler || (eventHandler.f7proxy && eventHandler.f7proxy === handler)) {
            self.eventsListeners[event].splice(index, 1);
          }
        });
      }
    });
    return self;
  };

  SwiperClass.prototype.emit = function emit () {
      var args = [], len = arguments.length;
      while ( len-- ) args[ len ] = arguments[ len ];

    var self = this;
    if (!self.eventsListeners) { return self; }
    var events;
    var data;
    var context;
    if (typeof args[0] === 'string' || Array.isArray(args[0])) {
      events = args[0];
      data = args.slice(1, args.length);
      context = self;
    } else {
      events = args[0].events;
      data = args[0].data;
      context = args[0].context || self;
    }
    var eventsArray = Array.isArray(events) ? events : events.split(' ');
    eventsArray.forEach(function (event) {
      if (self.eventsListeners && self.eventsListeners[event]) {
        var handlers = [];
        self.eventsListeners[event].forEach(function (eventHandler) {
          handlers.push(eventHandler);
        });
        handlers.forEach(function (eventHandler) {
          eventHandler.apply(context, data);
        });
      }
    });
    return self;
  };

  SwiperClass.prototype.useModulesParams = function useModulesParams (instanceParams) {
    var instance = this;
    if (!instance.modules) { return; }
    Object.keys(instance.modules).forEach(function (moduleName) {
      var module = instance.modules[moduleName];
      // Extend params
      if (module.params) {
        Utils.extend(instanceParams, module.params);
      }
    });
  };

  SwiperClass.prototype.useModules = function useModules (modulesParams) {
      if ( modulesParams === void 0 ) modulesParams = {};

    var instance = this;
    if (!instance.modules) { return; }
    Object.keys(instance.modules).forEach(function (moduleName) {
      var module = instance.modules[moduleName];
      var moduleParams = modulesParams[moduleName] || {};
      // Extend instance methods and props
      if (module.instance) {
        Object.keys(module.instance).forEach(function (modulePropName) {
          var moduleProp = module.instance[modulePropName];
          if (typeof moduleProp === 'function') {
            instance[modulePropName] = moduleProp.bind(instance);
          } else {
            instance[modulePropName] = moduleProp;
          }
        });
      }
      // Add event listeners
      if (module.on && instance.on) {
        Object.keys(module.on).forEach(function (moduleEventName) {
          instance.on(moduleEventName, module.on[moduleEventName]);
        });
      }

      // Module create callback
      if (module.create) {
        module.create.bind(instance)(moduleParams);
      }
    });
  };

  staticAccessors.components.set = function (components) {
    var Class = this;
    if (!Class.use) { return; }
    Class.use(components);
  };

  SwiperClass.installModule = function installModule (module) {
      var params = [], len = arguments.length - 1;
      while ( len-- > 0 ) params[ len ] = arguments[ len + 1 ];

    var Class = this;
    if (!Class.prototype.modules) { Class.prototype.modules = {}; }
    var name = module.name || (((Object.keys(Class.prototype.modules).length) + "_" + (Utils.now())));
    Class.prototype.modules[name] = module;
    // Prototype
    if (module.proto) {
      Object.keys(module.proto).forEach(function (key) {
        Class.prototype[key] = module.proto[key];
      });
    }
    // Class
    if (module.static) {
      Object.keys(module.static).forEach(function (key) {
        Class[key] = module.static[key];
      });
    }
    // Callback
    if (module.install) {
      module.install.apply(Class, params);
    }
    return Class;
  };

  SwiperClass.use = function use (module) {
      var params = [], len = arguments.length - 1;
      while ( len-- > 0 ) params[ len ] = arguments[ len + 1 ];

    var Class = this;
    if (Array.isArray(module)) {
      module.forEach(function (m) { return Class.installModule(m); });
      return Class;
    }
    return Class.installModule.apply(Class, [ module ].concat( params ));
  };

  Object.defineProperties( SwiperClass, staticAccessors );

  function updateSize () {
    var swiper = this;
    var width;
    var height;
    var $el = swiper.$el;
    if (typeof swiper.params.width !== 'undefined') {
      width = swiper.params.width;
    } else {
      width = $el[0].clientWidth;
    }
    if (typeof swiper.params.height !== 'undefined') {
      height = swiper.params.height;
    } else {
      height = $el[0].clientHeight;
    }
    if ((width === 0 && swiper.isHorizontal()) || (height === 0 && swiper.isVertical())) {
      return;
    }

    // Subtract paddings
    width = width - parseInt($el.css('padding-left'), 10) - parseInt($el.css('padding-right'), 10);
    height = height - parseInt($el.css('padding-top'), 10) - parseInt($el.css('padding-bottom'), 10);

    Utils.extend(swiper, {
      width: width,
      height: height,
      size: swiper.isHorizontal() ? width : height,
    });
  }

  function updateSlides () {
    var swiper = this;
    var params = swiper.params;

    var $wrapperEl = swiper.$wrapperEl;
    var swiperSize = swiper.size;
    var rtl = swiper.rtlTranslate;
    var wrongRTL = swiper.wrongRTL;
    var isVirtual = swiper.virtual && params.virtual.enabled;
    var previousSlidesLength = isVirtual ? swiper.virtual.slides.length : swiper.slides.length;
    var slides = $wrapperEl.children(("." + (swiper.params.slideClass)));
    var slidesLength = isVirtual ? swiper.virtual.slides.length : slides.length;
    var snapGrid = [];
    var slidesGrid = [];
    var slidesSizesGrid = [];

    function slidesForMargin(slideIndex) {
      if (!params.cssMode) { return true; }
      if (slideIndex === slides.length - 1) {
        return false;
      }
      return true;
    }

    var offsetBefore = params.slidesOffsetBefore;
    if (typeof offsetBefore === 'function') {
      offsetBefore = params.slidesOffsetBefore.call(swiper);
    }

    var offsetAfter = params.slidesOffsetAfter;
    if (typeof offsetAfter === 'function') {
      offsetAfter = params.slidesOffsetAfter.call(swiper);
    }

    var previousSnapGridLength = swiper.snapGrid.length;
    var previousSlidesGridLength = swiper.snapGrid.length;

    var spaceBetween = params.spaceBetween;
    var slidePosition = -offsetBefore;
    var prevSlideSize = 0;
    var index = 0;
    if (typeof swiperSize === 'undefined') {
      return;
    }
    if (typeof spaceBetween === 'string' && spaceBetween.indexOf('%') >= 0) {
      spaceBetween = (parseFloat(spaceBetween.replace('%', '')) / 100) * swiperSize;
    }

    swiper.virtualSize = -spaceBetween;

    // reset margins
    if (rtl) { slides.css({ marginLeft: '', marginTop: '' }); }
    else { slides.css({ marginRight: '', marginBottom: '' }); }

    var slidesNumberEvenToRows;
    if (params.slidesPerColumn > 1) {
      if (Math.floor(slidesLength / params.slidesPerColumn) === slidesLength / swiper.params.slidesPerColumn) {
        slidesNumberEvenToRows = slidesLength;
      } else {
        slidesNumberEvenToRows = Math.ceil(slidesLength / params.slidesPerColumn) * params.slidesPerColumn;
      }
      if (params.slidesPerView !== 'auto' && params.slidesPerColumnFill === 'row') {
        slidesNumberEvenToRows = Math.max(slidesNumberEvenToRows, params.slidesPerView * params.slidesPerColumn);
      }
    }

    // Calc slides
    var slideSize;
    var slidesPerColumn = params.slidesPerColumn;
    var slidesPerRow = slidesNumberEvenToRows / slidesPerColumn;
    var numFullColumns = Math.floor(slidesLength / params.slidesPerColumn);
    for (var i = 0; i < slidesLength; i += 1) {
      slideSize = 0;
      var slide = slides.eq(i);
      if (params.slidesPerColumn > 1) {
        // Set slides order
        var newSlideOrderIndex = (void 0);
        var column = (void 0);
        var row = (void 0);
        if (params.slidesPerColumnFill === 'row' && params.slidesPerGroup > 1) {
          var groupIndex = Math.floor(i / (params.slidesPerGroup * params.slidesPerColumn));
          var slideIndexInGroup = i - params.slidesPerColumn * params.slidesPerGroup * groupIndex;
          var columnsInGroup = groupIndex === 0
            ? params.slidesPerGroup
            : Math.min(Math.ceil((slidesLength - groupIndex * slidesPerColumn * params.slidesPerGroup) / slidesPerColumn), params.slidesPerGroup);
          row = Math.floor(slideIndexInGroup / columnsInGroup);
          column = (slideIndexInGroup - row * columnsInGroup) + groupIndex * params.slidesPerGroup;

          newSlideOrderIndex = column + ((row * slidesNumberEvenToRows) / slidesPerColumn);
          slide
            .css({
              '-webkit-box-ordinal-group': newSlideOrderIndex,
              '-moz-box-ordinal-group': newSlideOrderIndex,
              '-ms-flex-order': newSlideOrderIndex,
              '-webkit-order': newSlideOrderIndex,
              order: newSlideOrderIndex,
            });
        } else if (params.slidesPerColumnFill === 'column') {
          column = Math.floor(i / slidesPerColumn);
          row = i - (column * slidesPerColumn);
          if (column > numFullColumns || (column === numFullColumns && row === slidesPerColumn - 1)) {
            row += 1;
            if (row >= slidesPerColumn) {
              row = 0;
              column += 1;
            }
          }
        } else {
          row = Math.floor(i / slidesPerRow);
          column = i - (row * slidesPerRow);
        }
        slide.css(
          ("margin-" + (swiper.isHorizontal() ? 'top' : 'left')),
          (row !== 0 && params.spaceBetween) && (((params.spaceBetween) + "px"))
        );
      }
      if (slide.css('display') === 'none') { continue; } // eslint-disable-line

      if (params.slidesPerView === 'auto') {
        var slideStyles = win.getComputedStyle(slide[0], null);
        var currentTransform = slide[0].style.transform;
        var currentWebKitTransform = slide[0].style.webkitTransform;
        if (currentTransform) {
          slide[0].style.transform = 'none';
        }
        if (currentWebKitTransform) {
          slide[0].style.webkitTransform = 'none';
        }
        if (params.roundLengths) {
          slideSize = swiper.isHorizontal()
            ? slide.outerWidth(true)
            : slide.outerHeight(true);
        } else {
          // eslint-disable-next-line
          if (swiper.isHorizontal()) {
            var width = parseFloat(slideStyles.getPropertyValue('width'));
            var paddingLeft = parseFloat(slideStyles.getPropertyValue('padding-left'));
            var paddingRight = parseFloat(slideStyles.getPropertyValue('padding-right'));
            var marginLeft = parseFloat(slideStyles.getPropertyValue('margin-left'));
            var marginRight = parseFloat(slideStyles.getPropertyValue('margin-right'));
            var boxSizing = slideStyles.getPropertyValue('box-sizing');
            if (boxSizing && boxSizing === 'border-box') {
              slideSize = width + marginLeft + marginRight;
            } else {
              slideSize = width + paddingLeft + paddingRight + marginLeft + marginRight;
            }
          } else {
            var height = parseFloat(slideStyles.getPropertyValue('height'));
            var paddingTop = parseFloat(slideStyles.getPropertyValue('padding-top'));
            var paddingBottom = parseFloat(slideStyles.getPropertyValue('padding-bottom'));
            var marginTop = parseFloat(slideStyles.getPropertyValue('margin-top'));
            var marginBottom = parseFloat(slideStyles.getPropertyValue('margin-bottom'));
            var boxSizing$1 = slideStyles.getPropertyValue('box-sizing');
            if (boxSizing$1 && boxSizing$1 === 'border-box') {
              slideSize = height + marginTop + marginBottom;
            } else {
              slideSize = height + paddingTop + paddingBottom + marginTop + marginBottom;
            }
          }
        }
        if (currentTransform) {
          slide[0].style.transform = currentTransform;
        }
        if (currentWebKitTransform) {
          slide[0].style.webkitTransform = currentWebKitTransform;
        }
        if (params.roundLengths) { slideSize = Math.floor(slideSize); }
      } else {
        slideSize = (swiperSize - ((params.slidesPerView - 1) * spaceBetween)) / params.slidesPerView;
        if (params.roundLengths) { slideSize = Math.floor(slideSize); }

        if (slides[i]) {
          if (swiper.isHorizontal()) {
            slides[i].style.width = slideSize + "px";
          } else {
            slides[i].style.height = slideSize + "px";
          }
        }
      }
      if (slides[i]) {
        slides[i].swiperSlideSize = slideSize;
      }
      slidesSizesGrid.push(slideSize);


      if (params.centeredSlides) {
        slidePosition = slidePosition + (slideSize / 2) + (prevSlideSize / 2) + spaceBetween;
        if (prevSlideSize === 0 && i !== 0) { slidePosition = slidePosition - (swiperSize / 2) - spaceBetween; }
        if (i === 0) { slidePosition = slidePosition - (swiperSize / 2) - spaceBetween; }
        if (Math.abs(slidePosition) < 1 / 1000) { slidePosition = 0; }
        if (params.roundLengths) { slidePosition = Math.floor(slidePosition); }
        if ((index) % params.slidesPerGroup === 0) { snapGrid.push(slidePosition); }
        slidesGrid.push(slidePosition);
      } else {
        if (params.roundLengths) { slidePosition = Math.floor(slidePosition); }
        if ((index - Math.min(swiper.params.slidesPerGroupSkip, index)) % swiper.params.slidesPerGroup === 0) { snapGrid.push(slidePosition); }
        slidesGrid.push(slidePosition);
        slidePosition = slidePosition + slideSize + spaceBetween;
      }

      swiper.virtualSize += slideSize + spaceBetween;

      prevSlideSize = slideSize;

      index += 1;
    }
    swiper.virtualSize = Math.max(swiper.virtualSize, swiperSize) + offsetAfter;
    var newSlidesGrid;

    if (
      rtl && wrongRTL && (params.effect === 'slide' || params.effect === 'coverflow')) {
      $wrapperEl.css({ width: ((swiper.virtualSize + params.spaceBetween) + "px") });
    }
    if (params.setWrapperSize) {
      if (swiper.isHorizontal()) { $wrapperEl.css({ width: ((swiper.virtualSize + params.spaceBetween) + "px") }); }
      else { $wrapperEl.css({ height: ((swiper.virtualSize + params.spaceBetween) + "px") }); }
    }

    if (params.slidesPerColumn > 1) {
      swiper.virtualSize = (slideSize + params.spaceBetween) * slidesNumberEvenToRows;
      swiper.virtualSize = Math.ceil(swiper.virtualSize / params.slidesPerColumn) - params.spaceBetween;
      if (swiper.isHorizontal()) { $wrapperEl.css({ width: ((swiper.virtualSize + params.spaceBetween) + "px") }); }
      else { $wrapperEl.css({ height: ((swiper.virtualSize + params.spaceBetween) + "px") }); }
      if (params.centeredSlides) {
        newSlidesGrid = [];
        for (var i$1 = 0; i$1 < snapGrid.length; i$1 += 1) {
          var slidesGridItem = snapGrid[i$1];
          if (params.roundLengths) { slidesGridItem = Math.floor(slidesGridItem); }
          if (snapGrid[i$1] < swiper.virtualSize + snapGrid[0]) { newSlidesGrid.push(slidesGridItem); }
        }
        snapGrid = newSlidesGrid;
      }
    }

    // Remove last grid elements depending on width
    if (!params.centeredSlides) {
      newSlidesGrid = [];
      for (var i$2 = 0; i$2 < snapGrid.length; i$2 += 1) {
        var slidesGridItem$1 = snapGrid[i$2];
        if (params.roundLengths) { slidesGridItem$1 = Math.floor(slidesGridItem$1); }
        if (snapGrid[i$2] <= swiper.virtualSize - swiperSize) {
          newSlidesGrid.push(slidesGridItem$1);
        }
      }
      snapGrid = newSlidesGrid;
      if (Math.floor(swiper.virtualSize - swiperSize) - Math.floor(snapGrid[snapGrid.length - 1]) > 1) {
        snapGrid.push(swiper.virtualSize - swiperSize);
      }
    }
    if (snapGrid.length === 0) { snapGrid = [0]; }

    if (params.spaceBetween !== 0) {
      if (swiper.isHorizontal()) {
        if (rtl) { slides.filter(slidesForMargin).css({ marginLeft: (spaceBetween + "px") }); }
        else { slides.filter(slidesForMargin).css({ marginRight: (spaceBetween + "px") }); }
      } else { slides.filter(slidesForMargin).css({ marginBottom: (spaceBetween + "px") }); }
    }

    if (params.centeredSlides && params.centeredSlidesBounds) {
      var allSlidesSize = 0;
      slidesSizesGrid.forEach(function (slideSizeValue) {
        allSlidesSize += slideSizeValue + (params.spaceBetween ? params.spaceBetween : 0);
      });
      allSlidesSize -= params.spaceBetween;
      var maxSnap = allSlidesSize - swiperSize;
      snapGrid = snapGrid.map(function (snap) {
        if (snap < 0) { return -offsetBefore; }
        if (snap > maxSnap) { return maxSnap + offsetAfter; }
        return snap;
      });
    }

    if (params.centerInsufficientSlides) {
      var allSlidesSize$1 = 0;
      slidesSizesGrid.forEach(function (slideSizeValue) {
        allSlidesSize$1 += slideSizeValue + (params.spaceBetween ? params.spaceBetween : 0);
      });
      allSlidesSize$1 -= params.spaceBetween;
      if (allSlidesSize$1 < swiperSize) {
        var allSlidesOffset = (swiperSize - allSlidesSize$1) / 2;
        snapGrid.forEach(function (snap, snapIndex) {
          snapGrid[snapIndex] = snap - allSlidesOffset;
        });
        slidesGrid.forEach(function (snap, snapIndex) {
          slidesGrid[snapIndex] = snap + allSlidesOffset;
        });
      }
    }

    Utils.extend(swiper, {
      slides: slides,
      snapGrid: snapGrid,
      slidesGrid: slidesGrid,
      slidesSizesGrid: slidesSizesGrid,
    });

    if (slidesLength !== previousSlidesLength) {
      swiper.emit('slidesLengthChange');
    }
    if (snapGrid.length !== previousSnapGridLength) {
      if (swiper.params.watchOverflow) { swiper.checkOverflow(); }
      swiper.emit('snapGridLengthChange');
    }
    if (slidesGrid.length !== previousSlidesGridLength) {
      swiper.emit('slidesGridLengthChange');
    }

    if (params.watchSlidesProgress || params.watchSlidesVisibility) {
      swiper.updateSlidesOffset();
    }
  }

  function updateAutoHeight (speed) {
    var swiper = this;
    var activeSlides = [];
    var newHeight = 0;
    var i;
    if (typeof speed === 'number') {
      swiper.setTransition(speed);
    } else if (speed === true) {
      swiper.setTransition(swiper.params.speed);
    }
    // Find slides currently in view
    if (swiper.params.slidesPerView !== 'auto' && swiper.params.slidesPerView > 1) {
      if (swiper.params.centeredSlides) { activeSlides.push.apply(activeSlides, swiper.visibleSlides); }
      else {
        for (i = 0; i < Math.ceil(swiper.params.slidesPerView); i += 1) {
          var index = swiper.activeIndex + i;
          if (index > swiper.slides.length) { break; }
          activeSlides.push(swiper.slides.eq(index)[0]);
        }
      }
    } else {
      activeSlides.push(swiper.slides.eq(swiper.activeIndex)[0]);
    }

    // Find new height from highest slide in view
    for (i = 0; i < activeSlides.length; i += 1) {
      if (typeof activeSlides[i] !== 'undefined') {
        var height = activeSlides[i].offsetHeight;
        newHeight = height > newHeight ? height : newHeight;
      }
    }

    // Update Height
    if (newHeight) { swiper.$wrapperEl.css('height', (newHeight + "px")); }
  }

  function updateSlidesOffset () {
    var swiper = this;
    var slides = swiper.slides;
    for (var i = 0; i < slides.length; i += 1) {
      slides[i].swiperSlideOffset = swiper.isHorizontal() ? slides[i].offsetLeft : slides[i].offsetTop;
    }
  }

  function updateSlidesProgress (translate) {
    if ( translate === void 0 ) translate = (this && this.translate) || 0;

    var swiper = this;
    var params = swiper.params;

    var slides = swiper.slides;
    var rtl = swiper.rtlTranslate;

    if (slides.length === 0) { return; }
    if (typeof slides[0].swiperSlideOffset === 'undefined') { swiper.updateSlidesOffset(); }

    var offsetCenter = -translate;
    if (rtl) { offsetCenter = translate; }

    // Visible Slides
    slides.removeClass(params.slideVisibleClass);

    swiper.visibleSlidesIndexes = [];
    swiper.visibleSlides = [];

    for (var i = 0; i < slides.length; i += 1) {
      var slide = slides[i];
      var slideProgress = (
        (offsetCenter + (params.centeredSlides ? swiper.minTranslate() : 0)) - slide.swiperSlideOffset
      ) / (slide.swiperSlideSize + params.spaceBetween);
      if (params.watchSlidesVisibility || (params.centeredSlides && params.autoHeight)) {
        var slideBefore = -(offsetCenter - slide.swiperSlideOffset);
        var slideAfter = slideBefore + swiper.slidesSizesGrid[i];
        var isVisible = (slideBefore >= 0 && slideBefore < swiper.size - 1)
                  || (slideAfter > 1 && slideAfter <= swiper.size)
                  || (slideBefore <= 0 && slideAfter >= swiper.size);
        if (isVisible) {
          swiper.visibleSlides.push(slide);
          swiper.visibleSlidesIndexes.push(i);
          slides.eq(i).addClass(params.slideVisibleClass);
        }
      }
      slide.progress = rtl ? -slideProgress : slideProgress;
    }
    swiper.visibleSlides = $(swiper.visibleSlides);
  }

  function updateProgress (translate) {
    var swiper = this;
    if (typeof translate === 'undefined') {
      var multiplier = swiper.rtlTranslate ? -1 : 1;
      // eslint-disable-next-line
      translate = (swiper && swiper.translate && (swiper.translate * multiplier)) || 0;
    }
    var params = swiper.params;
    var translatesDiff = swiper.maxTranslate() - swiper.minTranslate();
    var progress = swiper.progress;
    var isBeginning = swiper.isBeginning;
    var isEnd = swiper.isEnd;
    var wasBeginning = isBeginning;
    var wasEnd = isEnd;
    if (translatesDiff === 0) {
      progress = 0;
      isBeginning = true;
      isEnd = true;
    } else {
      progress = (translate - swiper.minTranslate()) / (translatesDiff);
      isBeginning = progress <= 0;
      isEnd = progress >= 1;
    }
    Utils.extend(swiper, {
      progress: progress,
      isBeginning: isBeginning,
      isEnd: isEnd,
    });

    if (params.watchSlidesProgress || params.watchSlidesVisibility || (params.centeredSlides && params.autoHeight)) { swiper.updateSlidesProgress(translate); }

    if (isBeginning && !wasBeginning) {
      swiper.emit('reachBeginning toEdge');
    }
    if (isEnd && !wasEnd) {
      swiper.emit('reachEnd toEdge');
    }
    if ((wasBeginning && !isBeginning) || (wasEnd && !isEnd)) {
      swiper.emit('fromEdge');
    }

    swiper.emit('progress', progress);
  }

  function updateSlidesClasses () {
    var swiper = this;

    var slides = swiper.slides;
    var params = swiper.params;
    var $wrapperEl = swiper.$wrapperEl;
    var activeIndex = swiper.activeIndex;
    var realIndex = swiper.realIndex;
    var isVirtual = swiper.virtual && params.virtual.enabled;

    slides.removeClass(((params.slideActiveClass) + " " + (params.slideNextClass) + " " + (params.slidePrevClass) + " " + (params.slideDuplicateActiveClass) + " " + (params.slideDuplicateNextClass) + " " + (params.slideDuplicatePrevClass)));

    var activeSlide;
    if (isVirtual) {
      activeSlide = swiper.$wrapperEl.find(("." + (params.slideClass) + "[data-swiper-slide-index=\"" + activeIndex + "\"]"));
    } else {
      activeSlide = slides.eq(activeIndex);
    }

    // Active classes
    activeSlide.addClass(params.slideActiveClass);

    if (params.loop) {
      // Duplicate to all looped slides
      if (activeSlide.hasClass(params.slideDuplicateClass)) {
        $wrapperEl
          .children(("." + (params.slideClass) + ":not(." + (params.slideDuplicateClass) + ")[data-swiper-slide-index=\"" + realIndex + "\"]"))
          .addClass(params.slideDuplicateActiveClass);
      } else {
        $wrapperEl
          .children(("." + (params.slideClass) + "." + (params.slideDuplicateClass) + "[data-swiper-slide-index=\"" + realIndex + "\"]"))
          .addClass(params.slideDuplicateActiveClass);
      }
    }
    // Next Slide
    var nextSlide = activeSlide.nextAll(("." + (params.slideClass))).eq(0).addClass(params.slideNextClass);
    if (params.loop && nextSlide.length === 0) {
      nextSlide = slides.eq(0);
      nextSlide.addClass(params.slideNextClass);
    }
    // Prev Slide
    var prevSlide = activeSlide.prevAll(("." + (params.slideClass))).eq(0).addClass(params.slidePrevClass);
    if (params.loop && prevSlide.length === 0) {
      prevSlide = slides.eq(-1);
      prevSlide.addClass(params.slidePrevClass);
    }
    if (params.loop) {
      // Duplicate to all looped slides
      if (nextSlide.hasClass(params.slideDuplicateClass)) {
        $wrapperEl
          .children(("." + (params.slideClass) + ":not(." + (params.slideDuplicateClass) + ")[data-swiper-slide-index=\"" + (nextSlide.attr('data-swiper-slide-index')) + "\"]"))
          .addClass(params.slideDuplicateNextClass);
      } else {
        $wrapperEl
          .children(("." + (params.slideClass) + "." + (params.slideDuplicateClass) + "[data-swiper-slide-index=\"" + (nextSlide.attr('data-swiper-slide-index')) + "\"]"))
          .addClass(params.slideDuplicateNextClass);
      }
      if (prevSlide.hasClass(params.slideDuplicateClass)) {
        $wrapperEl
          .children(("." + (params.slideClass) + ":not(." + (params.slideDuplicateClass) + ")[data-swiper-slide-index=\"" + (prevSlide.attr('data-swiper-slide-index')) + "\"]"))
          .addClass(params.slideDuplicatePrevClass);
      } else {
        $wrapperEl
          .children(("." + (params.slideClass) + "." + (params.slideDuplicateClass) + "[data-swiper-slide-index=\"" + (prevSlide.attr('data-swiper-slide-index')) + "\"]"))
          .addClass(params.slideDuplicatePrevClass);
      }
    }
  }

  function updateActiveIndex (newActiveIndex) {
    var swiper = this;
    var translate = swiper.rtlTranslate ? swiper.translate : -swiper.translate;
    var slidesGrid = swiper.slidesGrid;
    var snapGrid = swiper.snapGrid;
    var params = swiper.params;
    var previousIndex = swiper.activeIndex;
    var previousRealIndex = swiper.realIndex;
    var previousSnapIndex = swiper.snapIndex;
    var activeIndex = newActiveIndex;
    var snapIndex;
    if (typeof activeIndex === 'undefined') {
      for (var i = 0; i < slidesGrid.length; i += 1) {
        if (typeof slidesGrid[i + 1] !== 'undefined') {
          if (translate >= slidesGrid[i] && translate < slidesGrid[i + 1] - ((slidesGrid[i + 1] - slidesGrid[i]) / 2)) {
            activeIndex = i;
          } else if (translate >= slidesGrid[i] && translate < slidesGrid[i + 1]) {
            activeIndex = i + 1;
          }
        } else if (translate >= slidesGrid[i]) {
          activeIndex = i;
        }
      }
      // Normalize slideIndex
      if (params.normalizeSlideIndex) {
        if (activeIndex < 0 || typeof activeIndex === 'undefined') { activeIndex = 0; }
      }
    }
    if (snapGrid.indexOf(translate) >= 0) {
      snapIndex = snapGrid.indexOf(translate);
    } else {
      var skip = Math.min(params.slidesPerGroupSkip, activeIndex);
      snapIndex = skip + Math.floor((activeIndex - skip) / params.slidesPerGroup);
    }
    if (snapIndex >= snapGrid.length) { snapIndex = snapGrid.length - 1; }
    if (activeIndex === previousIndex) {
      if (snapIndex !== previousSnapIndex) {
        swiper.snapIndex = snapIndex;
        swiper.emit('snapIndexChange');
      }
      return;
    }

    // Get real index
    var realIndex = parseInt(swiper.slides.eq(activeIndex).attr('data-swiper-slide-index') || activeIndex, 10);

    Utils.extend(swiper, {
      snapIndex: snapIndex,
      realIndex: realIndex,
      previousIndex: previousIndex,
      activeIndex: activeIndex,
    });
    swiper.emit('activeIndexChange');
    swiper.emit('snapIndexChange');
    if (previousRealIndex !== realIndex) {
      swiper.emit('realIndexChange');
    }
    if (swiper.initialized || swiper.runCallbacksOnInit) {
      swiper.emit('slideChange');
    }
  }

  function updateClickedSlide (e) {
    var swiper = this;
    var params = swiper.params;
    var slide = $(e.target).closest(("." + (params.slideClass)))[0];
    var slideFound = false;
    if (slide) {
      for (var i = 0; i < swiper.slides.length; i += 1) {
        if (swiper.slides[i] === slide) { slideFound = true; }
      }
    }

    if (slide && slideFound) {
      swiper.clickedSlide = slide;
      if (swiper.virtual && swiper.params.virtual.enabled) {
        swiper.clickedIndex = parseInt($(slide).attr('data-swiper-slide-index'), 10);
      } else {
        swiper.clickedIndex = $(slide).index();
      }
    } else {
      swiper.clickedSlide = undefined;
      swiper.clickedIndex = undefined;
      return;
    }
    if (params.slideToClickedSlide && swiper.clickedIndex !== undefined && swiper.clickedIndex !== swiper.activeIndex) {
      swiper.slideToClickedSlide();
    }
  }

  var update = {
    updateSize: updateSize,
    updateSlides: updateSlides,
    updateAutoHeight: updateAutoHeight,
    updateSlidesOffset: updateSlidesOffset,
    updateSlidesProgress: updateSlidesProgress,
    updateProgress: updateProgress,
    updateSlidesClasses: updateSlidesClasses,
    updateActiveIndex: updateActiveIndex,
    updateClickedSlide: updateClickedSlide,
  };

  function getTranslate (axis) {
    if ( axis === void 0 ) axis = this.isHorizontal() ? 'x' : 'y';

    var swiper = this;

    var params = swiper.params;
    var rtl = swiper.rtlTranslate;
    var translate = swiper.translate;
    var $wrapperEl = swiper.$wrapperEl;

    if (params.virtualTranslate) {
      return rtl ? -translate : translate;
    }
    if (params.cssMode) {
      return translate;
    }

    var currentTranslate = Utils.getTranslate($wrapperEl[0], axis);
    if (rtl) { currentTranslate = -currentTranslate; }

    return currentTranslate || 0;
  }

  function setTranslate (translate, byController) {
    var swiper = this;
    var rtl = swiper.rtlTranslate;
    var params = swiper.params;
    var $wrapperEl = swiper.$wrapperEl;
    var wrapperEl = swiper.wrapperEl;
    var progress = swiper.progress;
    var x = 0;
    var y = 0;
    var z = 0;

    if (swiper.isHorizontal()) {
      x = rtl ? -translate : translate;
    } else {
      y = translate;
    }

    if (params.roundLengths) {
      x = Math.floor(x);
      y = Math.floor(y);
    }

    if (params.cssMode) {
      wrapperEl[swiper.isHorizontal() ? 'scrollLeft' : 'scrollTop'] = swiper.isHorizontal() ? -x : -y;
    } else if (!params.virtualTranslate) {
      $wrapperEl.transform(("translate3d(" + x + "px, " + y + "px, " + z + "px)"));
    }
    swiper.previousTranslate = swiper.translate;
    swiper.translate = swiper.isHorizontal() ? x : y;

    // Check if we need to update progress
    var newProgress;
    var translatesDiff = swiper.maxTranslate() - swiper.minTranslate();
    if (translatesDiff === 0) {
      newProgress = 0;
    } else {
      newProgress = (translate - swiper.minTranslate()) / (translatesDiff);
    }
    if (newProgress !== progress) {
      swiper.updateProgress(translate);
    }

    swiper.emit('setTranslate', swiper.translate, byController);
  }

  function minTranslate () {
    return (-this.snapGrid[0]);
  }

  function maxTranslate () {
    return (-this.snapGrid[this.snapGrid.length - 1]);
  }

  function translateTo (translate, speed, runCallbacks, translateBounds, internal) {
    var obj;

    if ( translate === void 0 ) translate = 0;
    if ( speed === void 0 ) speed = this.params.speed;
    if ( runCallbacks === void 0 ) runCallbacks = true;
    if ( translateBounds === void 0 ) translateBounds = true;
    var swiper = this;

    var params = swiper.params;
    var wrapperEl = swiper.wrapperEl;

    if (swiper.animating && params.preventInteractionOnTransition) {
      return false;
    }

    var minTranslate = swiper.minTranslate();
    var maxTranslate = swiper.maxTranslate();
    var newTranslate;
    if (translateBounds && translate > minTranslate) { newTranslate = minTranslate; }
    else if (translateBounds && translate < maxTranslate) { newTranslate = maxTranslate; }
    else { newTranslate = translate; }

    // Update progress
    swiper.updateProgress(newTranslate);

    if (params.cssMode) {
      var isH = swiper.isHorizontal();
      if (speed === 0) {
        wrapperEl[isH ? 'scrollLeft' : 'scrollTop'] = -newTranslate;
      } else {
        // eslint-disable-next-line
        if (wrapperEl.scrollTo) {
          wrapperEl.scrollTo(( obj = {}, obj[isH ? 'left' : 'top'] = -newTranslate, obj.behavior = 'smooth', obj ));
        } else {
          wrapperEl[isH ? 'scrollLeft' : 'scrollTop'] = -newTranslate;
        }
      }
      return true;
    }

    if (speed === 0) {
      swiper.setTransition(0);
      swiper.setTranslate(newTranslate);
      if (runCallbacks) {
        swiper.emit('beforeTransitionStart', speed, internal);
        swiper.emit('transitionEnd');
      }
    } else {
      swiper.setTransition(speed);
      swiper.setTranslate(newTranslate);
      if (runCallbacks) {
        swiper.emit('beforeTransitionStart', speed, internal);
        swiper.emit('transitionStart');
      }
      if (!swiper.animating) {
        swiper.animating = true;
        if (!swiper.onTranslateToWrapperTransitionEnd) {
          swiper.onTranslateToWrapperTransitionEnd = function transitionEnd(e) {
            if (!swiper || swiper.destroyed) { return; }
            if (e.target !== this) { return; }
            swiper.$wrapperEl[0].removeEventListener('transitionend', swiper.onTranslateToWrapperTransitionEnd);
            swiper.$wrapperEl[0].removeEventListener('webkitTransitionEnd', swiper.onTranslateToWrapperTransitionEnd);
            swiper.onTranslateToWrapperTransitionEnd = null;
            delete swiper.onTranslateToWrapperTransitionEnd;
            if (runCallbacks) {
              swiper.emit('transitionEnd');
            }
          };
        }
        swiper.$wrapperEl[0].addEventListener('transitionend', swiper.onTranslateToWrapperTransitionEnd);
        swiper.$wrapperEl[0].addEventListener('webkitTransitionEnd', swiper.onTranslateToWrapperTransitionEnd);
      }
    }

    return true;
  }

  var translate = {
    getTranslate: getTranslate,
    setTranslate: setTranslate,
    minTranslate: minTranslate,
    maxTranslate: maxTranslate,
    translateTo: translateTo,
  };

  function setTransition (duration, byController) {
    var swiper = this;

    if (!swiper.params.cssMode) {
      swiper.$wrapperEl.transition(duration);
    }

    swiper.emit('setTransition', duration, byController);
  }

  function transitionStart (runCallbacks, direction) {
    if ( runCallbacks === void 0 ) runCallbacks = true;

    var swiper = this;
    var activeIndex = swiper.activeIndex;
    var params = swiper.params;
    var previousIndex = swiper.previousIndex;
    if (params.cssMode) { return; }
    if (params.autoHeight) {
      swiper.updateAutoHeight();
    }

    var dir = direction;
    if (!dir) {
      if (activeIndex > previousIndex) { dir = 'next'; }
      else if (activeIndex < previousIndex) { dir = 'prev'; }
      else { dir = 'reset'; }
    }

    swiper.emit('transitionStart');

    if (runCallbacks && activeIndex !== previousIndex) {
      if (dir === 'reset') {
        swiper.emit('slideResetTransitionStart');
        return;
      }
      swiper.emit('slideChangeTransitionStart');
      if (dir === 'next') {
        swiper.emit('slideNextTransitionStart');
      } else {
        swiper.emit('slidePrevTransitionStart');
      }
    }
  }

  function transitionEnd$1 (runCallbacks, direction) {
    if ( runCallbacks === void 0 ) runCallbacks = true;

    var swiper = this;
    var activeIndex = swiper.activeIndex;
    var previousIndex = swiper.previousIndex;
    var params = swiper.params;
    swiper.animating = false;
    if (params.cssMode) { return; }
    swiper.setTransition(0);

    var dir = direction;
    if (!dir) {
      if (activeIndex > previousIndex) { dir = 'next'; }
      else if (activeIndex < previousIndex) { dir = 'prev'; }
      else { dir = 'reset'; }
    }

    swiper.emit('transitionEnd');

    if (runCallbacks && activeIndex !== previousIndex) {
      if (dir === 'reset') {
        swiper.emit('slideResetTransitionEnd');
        return;
      }
      swiper.emit('slideChangeTransitionEnd');
      if (dir === 'next') {
        swiper.emit('slideNextTransitionEnd');
      } else {
        swiper.emit('slidePrevTransitionEnd');
      }
    }
  }

  var transition$1 = {
    setTransition: setTransition,
    transitionStart: transitionStart,
    transitionEnd: transitionEnd$1,
  };

  function slideTo (index, speed, runCallbacks, internal) {
    var obj;

    if ( index === void 0 ) index = 0;
    if ( speed === void 0 ) speed = this.params.speed;
    if ( runCallbacks === void 0 ) runCallbacks = true;
    var swiper = this;
    var slideIndex = index;
    if (slideIndex < 0) { slideIndex = 0; }

    var params = swiper.params;
    var snapGrid = swiper.snapGrid;
    var slidesGrid = swiper.slidesGrid;
    var previousIndex = swiper.previousIndex;
    var activeIndex = swiper.activeIndex;
    var rtl = swiper.rtlTranslate;
    var wrapperEl = swiper.wrapperEl;
    if (swiper.animating && params.preventInteractionOnTransition) {
      return false;
    }

    var skip = Math.min(swiper.params.slidesPerGroupSkip, slideIndex);
    var snapIndex = skip + Math.floor((slideIndex - skip) / swiper.params.slidesPerGroup);
    if (snapIndex >= snapGrid.length) { snapIndex = snapGrid.length - 1; }

    if ((activeIndex || params.initialSlide || 0) === (previousIndex || 0) && runCallbacks) {
      swiper.emit('beforeSlideChangeStart');
    }

    var translate = -snapGrid[snapIndex];

    // Update progress
    swiper.updateProgress(translate);

    // Normalize slideIndex
    if (params.normalizeSlideIndex) {
      for (var i = 0; i < slidesGrid.length; i += 1) {
        if (-Math.floor(translate * 100) >= Math.floor(slidesGrid[i] * 100)) {
          slideIndex = i;
        }
      }
    }
    // Directions locks
    if (swiper.initialized && slideIndex !== activeIndex) {
      if (!swiper.allowSlideNext && translate < swiper.translate && translate < swiper.minTranslate()) {
        return false;
      }
      if (!swiper.allowSlidePrev && translate > swiper.translate && translate > swiper.maxTranslate()) {
        if ((activeIndex || 0) !== slideIndex) { return false; }
      }
    }

    var direction;
    if (slideIndex > activeIndex) { direction = 'next'; }
    else if (slideIndex < activeIndex) { direction = 'prev'; }
    else { direction = 'reset'; }


    // Update Index
    if ((rtl && -translate === swiper.translate) || (!rtl && translate === swiper.translate)) {
      swiper.updateActiveIndex(slideIndex);
      // Update Height
      if (params.autoHeight) {
        swiper.updateAutoHeight();
      }
      swiper.updateSlidesClasses();
      if (params.effect !== 'slide') {
        swiper.setTranslate(translate);
      }
      if (direction !== 'reset') {
        swiper.transitionStart(runCallbacks, direction);
        swiper.transitionEnd(runCallbacks, direction);
      }
      return false;
    }
    if (params.cssMode) {
      var isH = swiper.isHorizontal();
      if (speed === 0) {
        wrapperEl[isH ? 'scrollLeft' : 'scrollTop'] = -translate;
      } else {
        // eslint-disable-next-line
        if (wrapperEl.scrollTo) {
          wrapperEl.scrollTo(( obj = {}, obj[isH ? 'left' : 'top'] = -translate, obj.behavior = 'smooth', obj ));
        } else {
          wrapperEl[isH ? 'scrollLeft' : 'scrollTop'] = -translate;
        }
      }
      return true;
    }

    if (speed === 0) {
      swiper.setTransition(0);
      swiper.setTranslate(translate);
      swiper.updateActiveIndex(slideIndex);
      swiper.updateSlidesClasses();
      swiper.emit('beforeTransitionStart', speed, internal);
      swiper.transitionStart(runCallbacks, direction);
      swiper.transitionEnd(runCallbacks, direction);
    } else {
      swiper.setTransition(speed);
      swiper.setTranslate(translate);
      swiper.updateActiveIndex(slideIndex);
      swiper.updateSlidesClasses();
      swiper.emit('beforeTransitionStart', speed, internal);
      swiper.transitionStart(runCallbacks, direction);
      if (!swiper.animating) {
        swiper.animating = true;
        if (!swiper.onSlideToWrapperTransitionEnd) {
          swiper.onSlideToWrapperTransitionEnd = function transitionEnd(e) {
            if (!swiper || swiper.destroyed) { return; }
            if (e.target !== this) { return; }
            swiper.$wrapperEl[0].removeEventListener('transitionend', swiper.onSlideToWrapperTransitionEnd);
            swiper.$wrapperEl[0].removeEventListener('webkitTransitionEnd', swiper.onSlideToWrapperTransitionEnd);
            swiper.onSlideToWrapperTransitionEnd = null;
            delete swiper.onSlideToWrapperTransitionEnd;
            swiper.transitionEnd(runCallbacks, direction);
          };
        }
        swiper.$wrapperEl[0].addEventListener('transitionend', swiper.onSlideToWrapperTransitionEnd);
        swiper.$wrapperEl[0].addEventListener('webkitTransitionEnd', swiper.onSlideToWrapperTransitionEnd);
      }
    }

    return true;
  }

  function slideToLoop (index, speed, runCallbacks, internal) {
    if ( index === void 0 ) index = 0;
    if ( speed === void 0 ) speed = this.params.speed;
    if ( runCallbacks === void 0 ) runCallbacks = true;

    var swiper = this;
    var newIndex = index;
    if (swiper.params.loop) {
      newIndex += swiper.loopedSlides;
    }

    return swiper.slideTo(newIndex, speed, runCallbacks, internal);
  }

  /* eslint no-unused-vars: "off" */
  function slideNext (speed, runCallbacks, internal) {
    if ( speed === void 0 ) speed = this.params.speed;
    if ( runCallbacks === void 0 ) runCallbacks = true;

    var swiper = this;
    var params = swiper.params;
    var animating = swiper.animating;
    var increment = swiper.activeIndex < params.slidesPerGroupSkip ? 1 : params.slidesPerGroup;
    if (params.loop) {
      if (animating) { return false; }
      swiper.loopFix();
      // eslint-disable-next-line
      swiper._clientLeft = swiper.$wrapperEl[0].clientLeft;
    }
    return swiper.slideTo(swiper.activeIndex + increment, speed, runCallbacks, internal);
  }

  /* eslint no-unused-vars: "off" */
  function slidePrev (speed, runCallbacks, internal) {
    if ( speed === void 0 ) speed = this.params.speed;
    if ( runCallbacks === void 0 ) runCallbacks = true;

    var swiper = this;
    var params = swiper.params;
    var animating = swiper.animating;
    var snapGrid = swiper.snapGrid;
    var slidesGrid = swiper.slidesGrid;
    var rtlTranslate = swiper.rtlTranslate;

    if (params.loop) {
      if (animating) { return false; }
      swiper.loopFix();
      // eslint-disable-next-line
      swiper._clientLeft = swiper.$wrapperEl[0].clientLeft;
    }
    var translate = rtlTranslate ? swiper.translate : -swiper.translate;
    function normalize(val) {
      if (val < 0) { return -Math.floor(Math.abs(val)); }
      return Math.floor(val);
    }
    var normalizedTranslate = normalize(translate);
    var normalizedSnapGrid = snapGrid.map(function (val) { return normalize(val); });
    var normalizedSlidesGrid = slidesGrid.map(function (val) { return normalize(val); });

    var currentSnap = snapGrid[normalizedSnapGrid.indexOf(normalizedTranslate)];
    var prevSnap = snapGrid[normalizedSnapGrid.indexOf(normalizedTranslate) - 1];
    if (typeof prevSnap === 'undefined' && params.cssMode) {
      snapGrid.forEach(function (snap) {
        if (!prevSnap && normalizedTranslate >= snap) { prevSnap = snap; }
      });
    }
    var prevIndex;
    if (typeof prevSnap !== 'undefined') {
      prevIndex = slidesGrid.indexOf(prevSnap);
      if (prevIndex < 0) { prevIndex = swiper.activeIndex - 1; }
    }
    return swiper.slideTo(prevIndex, speed, runCallbacks, internal);
  }

  /* eslint no-unused-vars: "off" */
  function slideReset (speed, runCallbacks, internal) {
    if ( speed === void 0 ) speed = this.params.speed;
    if ( runCallbacks === void 0 ) runCallbacks = true;

    var swiper = this;
    return swiper.slideTo(swiper.activeIndex, speed, runCallbacks, internal);
  }

  /* eslint no-unused-vars: "off" */
  function slideToClosest (speed, runCallbacks, internal, threshold) {
    if ( speed === void 0 ) speed = this.params.speed;
    if ( runCallbacks === void 0 ) runCallbacks = true;
    if ( threshold === void 0 ) threshold = 0.5;

    var swiper = this;
    var index = swiper.activeIndex;
    var skip = Math.min(swiper.params.slidesPerGroupSkip, index);
    var snapIndex = skip + Math.floor((index - skip) / swiper.params.slidesPerGroup);

    var translate = swiper.rtlTranslate ? swiper.translate : -swiper.translate;

    if (translate >= swiper.snapGrid[snapIndex]) {
      // The current translate is on or after the current snap index, so the choice
      // is between the current index and the one after it.
      var currentSnap = swiper.snapGrid[snapIndex];
      var nextSnap = swiper.snapGrid[snapIndex + 1];
      if ((translate - currentSnap) > (nextSnap - currentSnap) * threshold) {
        index += swiper.params.slidesPerGroup;
      }
    } else {
      // The current translate is before the current snap index, so the choice
      // is between the current index and the one before it.
      var prevSnap = swiper.snapGrid[snapIndex - 1];
      var currentSnap$1 = swiper.snapGrid[snapIndex];
      if ((translate - prevSnap) <= (currentSnap$1 - prevSnap) * threshold) {
        index -= swiper.params.slidesPerGroup;
      }
    }
    index = Math.max(index, 0);
    index = Math.min(index, swiper.slidesGrid.length - 1);

    return swiper.slideTo(index, speed, runCallbacks, internal);
  }

  function slideToClickedSlide () {
    var swiper = this;
    var params = swiper.params;
    var $wrapperEl = swiper.$wrapperEl;

    var slidesPerView = params.slidesPerView === 'auto' ? swiper.slidesPerViewDynamic() : params.slidesPerView;
    var slideToIndex = swiper.clickedIndex;
    var realIndex;
    if (params.loop) {
      if (swiper.animating) { return; }
      realIndex = parseInt($(swiper.clickedSlide).attr('data-swiper-slide-index'), 10);
      if (params.centeredSlides) {
        if (
          (slideToIndex < swiper.loopedSlides - (slidesPerView / 2))
          || (slideToIndex > (swiper.slides.length - swiper.loopedSlides) + (slidesPerView / 2))
        ) {
          swiper.loopFix();
          slideToIndex = $wrapperEl
            .children(("." + (params.slideClass) + "[data-swiper-slide-index=\"" + realIndex + "\"]:not(." + (params.slideDuplicateClass) + ")"))
            .eq(0)
            .index();

          Utils.nextTick(function () {
            swiper.slideTo(slideToIndex);
          });
        } else {
          swiper.slideTo(slideToIndex);
        }
      } else if (slideToIndex > swiper.slides.length - slidesPerView) {
        swiper.loopFix();
        slideToIndex = $wrapperEl
          .children(("." + (params.slideClass) + "[data-swiper-slide-index=\"" + realIndex + "\"]:not(." + (params.slideDuplicateClass) + ")"))
          .eq(0)
          .index();

        Utils.nextTick(function () {
          swiper.slideTo(slideToIndex);
        });
      } else {
        swiper.slideTo(slideToIndex);
      }
    } else {
      swiper.slideTo(slideToIndex);
    }
  }

  var slide = {
    slideTo: slideTo,
    slideToLoop: slideToLoop,
    slideNext: slideNext,
    slidePrev: slidePrev,
    slideReset: slideReset,
    slideToClosest: slideToClosest,
    slideToClickedSlide: slideToClickedSlide,
  };

  function loopCreate () {
    var swiper = this;
    var params = swiper.params;
    var $wrapperEl = swiper.$wrapperEl;
    // Remove duplicated slides
    $wrapperEl.children(("." + (params.slideClass) + "." + (params.slideDuplicateClass))).remove();

    var slides = $wrapperEl.children(("." + (params.slideClass)));

    if (params.loopFillGroupWithBlank) {
      var blankSlidesNum = params.slidesPerGroup - (slides.length % params.slidesPerGroup);
      if (blankSlidesNum !== params.slidesPerGroup) {
        for (var i = 0; i < blankSlidesNum; i += 1) {
          var blankNode = $(doc.createElement('div')).addClass(((params.slideClass) + " " + (params.slideBlankClass)));
          $wrapperEl.append(blankNode);
        }
        slides = $wrapperEl.children(("." + (params.slideClass)));
      }
    }

    if (params.slidesPerView === 'auto' && !params.loopedSlides) { params.loopedSlides = slides.length; }

    swiper.loopedSlides = Math.ceil(parseFloat(params.loopedSlides || params.slidesPerView, 10));
    swiper.loopedSlides += params.loopAdditionalSlides;
    if (swiper.loopedSlides > slides.length) {
      swiper.loopedSlides = slides.length;
    }

    var prependSlides = [];
    var appendSlides = [];
    slides.each(function (index, el) {
      var slide = $(el);
      if (index < swiper.loopedSlides) { appendSlides.push(el); }
      if (index < slides.length && index >= slides.length - swiper.loopedSlides) { prependSlides.push(el); }
      slide.attr('data-swiper-slide-index', index);
    });
    for (var i$1 = 0; i$1 < appendSlides.length; i$1 += 1) {
      $wrapperEl.append($(appendSlides[i$1].cloneNode(true)).addClass(params.slideDuplicateClass));
    }
    for (var i$2 = prependSlides.length - 1; i$2 >= 0; i$2 -= 1) {
      $wrapperEl.prepend($(prependSlides[i$2].cloneNode(true)).addClass(params.slideDuplicateClass));
    }
  }

  function loopFix () {
    var swiper = this;

    swiper.emit('beforeLoopFix');

    var activeIndex = swiper.activeIndex;
    var slides = swiper.slides;
    var loopedSlides = swiper.loopedSlides;
    var allowSlidePrev = swiper.allowSlidePrev;
    var allowSlideNext = swiper.allowSlideNext;
    var snapGrid = swiper.snapGrid;
    var rtl = swiper.rtlTranslate;
    var newIndex;
    swiper.allowSlidePrev = true;
    swiper.allowSlideNext = true;

    var snapTranslate = -snapGrid[activeIndex];
    var diff = snapTranslate - swiper.getTranslate();

    // Fix For Negative Oversliding
    if (activeIndex < loopedSlides) {
      newIndex = (slides.length - (loopedSlides * 3)) + activeIndex;
      newIndex += loopedSlides;
      var slideChanged = swiper.slideTo(newIndex, 0, false, true);
      if (slideChanged && diff !== 0) {
        swiper.setTranslate((rtl ? -swiper.translate : swiper.translate) - diff);
      }
    } else if (activeIndex >= slides.length - loopedSlides) {
      // Fix For Positive Oversliding
      newIndex = -slides.length + activeIndex + loopedSlides;
      newIndex += loopedSlides;
      var slideChanged$1 = swiper.slideTo(newIndex, 0, false, true);
      if (slideChanged$1 && diff !== 0) {
        swiper.setTranslate((rtl ? -swiper.translate : swiper.translate) - diff);
      }
    }
    swiper.allowSlidePrev = allowSlidePrev;
    swiper.allowSlideNext = allowSlideNext;

    swiper.emit('loopFix');
  }

  function loopDestroy () {
    var swiper = this;
    var $wrapperEl = swiper.$wrapperEl;
    var params = swiper.params;
    var slides = swiper.slides;
    $wrapperEl.children(("." + (params.slideClass) + "." + (params.slideDuplicateClass) + ",." + (params.slideClass) + "." + (params.slideBlankClass))).remove();
    slides.removeAttr('data-swiper-slide-index');
  }

  var loop = {
    loopCreate: loopCreate,
    loopFix: loopFix,
    loopDestroy: loopDestroy,
  };

  function setGrabCursor (moving) {
    var swiper = this;
    if (Support.touch || !swiper.params.simulateTouch || (swiper.params.watchOverflow && swiper.isLocked) || swiper.params.cssMode) { return; }
    var el = swiper.el;
    el.style.cursor = 'move';
    el.style.cursor = moving ? '-webkit-grabbing' : '-webkit-grab';
    el.style.cursor = moving ? '-moz-grabbin' : '-moz-grab';
    el.style.cursor = moving ? 'grabbing' : 'grab';
  }

  function unsetGrabCursor () {
    var swiper = this;
    if (Support.touch || (swiper.params.watchOverflow && swiper.isLocked) || swiper.params.cssMode) { return; }
    swiper.el.style.cursor = '';
  }

  var grabCursor = {
    setGrabCursor: setGrabCursor,
    unsetGrabCursor: unsetGrabCursor,
  };

  function appendSlide (slides) {
    var swiper = this;
    var $wrapperEl = swiper.$wrapperEl;
    var params = swiper.params;
    if (params.loop) {
      swiper.loopDestroy();
    }
    if (typeof slides === 'object' && 'length' in slides) {
      for (var i = 0; i < slides.length; i += 1) {
        if (slides[i]) { $wrapperEl.append(slides[i]); }
      }
    } else {
      $wrapperEl.append(slides);
    }
    if (params.loop) {
      swiper.loopCreate();
    }
    if (!(params.observer && Support.observer)) {
      swiper.update();
    }
  }

  function prependSlide (slides) {
    var swiper = this;
    var params = swiper.params;
    var $wrapperEl = swiper.$wrapperEl;
    var activeIndex = swiper.activeIndex;

    if (params.loop) {
      swiper.loopDestroy();
    }
    var newActiveIndex = activeIndex + 1;
    if (typeof slides === 'object' && 'length' in slides) {
      for (var i = 0; i < slides.length; i += 1) {
        if (slides[i]) { $wrapperEl.prepend(slides[i]); }
      }
      newActiveIndex = activeIndex + slides.length;
    } else {
      $wrapperEl.prepend(slides);
    }
    if (params.loop) {
      swiper.loopCreate();
    }
    if (!(params.observer && Support.observer)) {
      swiper.update();
    }
    swiper.slideTo(newActiveIndex, 0, false);
  }

  function addSlide (index, slides) {
    var swiper = this;
    var $wrapperEl = swiper.$wrapperEl;
    var params = swiper.params;
    var activeIndex = swiper.activeIndex;
    var activeIndexBuffer = activeIndex;
    if (params.loop) {
      activeIndexBuffer -= swiper.loopedSlides;
      swiper.loopDestroy();
      swiper.slides = $wrapperEl.children(("." + (params.slideClass)));
    }
    var baseLength = swiper.slides.length;
    if (index <= 0) {
      swiper.prependSlide(slides);
      return;
    }
    if (index >= baseLength) {
      swiper.appendSlide(slides);
      return;
    }
    var newActiveIndex = activeIndexBuffer > index ? activeIndexBuffer + 1 : activeIndexBuffer;

    var slidesBuffer = [];
    for (var i = baseLength - 1; i >= index; i -= 1) {
      var currentSlide = swiper.slides.eq(i);
      currentSlide.remove();
      slidesBuffer.unshift(currentSlide);
    }

    if (typeof slides === 'object' && 'length' in slides) {
      for (var i$1 = 0; i$1 < slides.length; i$1 += 1) {
        if (slides[i$1]) { $wrapperEl.append(slides[i$1]); }
      }
      newActiveIndex = activeIndexBuffer > index ? activeIndexBuffer + slides.length : activeIndexBuffer;
    } else {
      $wrapperEl.append(slides);
    }

    for (var i$2 = 0; i$2 < slidesBuffer.length; i$2 += 1) {
      $wrapperEl.append(slidesBuffer[i$2]);
    }

    if (params.loop) {
      swiper.loopCreate();
    }
    if (!(params.observer && Support.observer)) {
      swiper.update();
    }
    if (params.loop) {
      swiper.slideTo(newActiveIndex + swiper.loopedSlides, 0, false);
    } else {
      swiper.slideTo(newActiveIndex, 0, false);
    }
  }

  function removeSlide (slidesIndexes) {
    var swiper = this;
    var params = swiper.params;
    var $wrapperEl = swiper.$wrapperEl;
    var activeIndex = swiper.activeIndex;

    var activeIndexBuffer = activeIndex;
    if (params.loop) {
      activeIndexBuffer -= swiper.loopedSlides;
      swiper.loopDestroy();
      swiper.slides = $wrapperEl.children(("." + (params.slideClass)));
    }
    var newActiveIndex = activeIndexBuffer;
    var indexToRemove;

    if (typeof slidesIndexes === 'object' && 'length' in slidesIndexes) {
      for (var i = 0; i < slidesIndexes.length; i += 1) {
        indexToRemove = slidesIndexes[i];
        if (swiper.slides[indexToRemove]) { swiper.slides.eq(indexToRemove).remove(); }
        if (indexToRemove < newActiveIndex) { newActiveIndex -= 1; }
      }
      newActiveIndex = Math.max(newActiveIndex, 0);
    } else {
      indexToRemove = slidesIndexes;
      if (swiper.slides[indexToRemove]) { swiper.slides.eq(indexToRemove).remove(); }
      if (indexToRemove < newActiveIndex) { newActiveIndex -= 1; }
      newActiveIndex = Math.max(newActiveIndex, 0);
    }

    if (params.loop) {
      swiper.loopCreate();
    }

    if (!(params.observer && Support.observer)) {
      swiper.update();
    }
    if (params.loop) {
      swiper.slideTo(newActiveIndex + swiper.loopedSlides, 0, false);
    } else {
      swiper.slideTo(newActiveIndex, 0, false);
    }
  }

  function removeAllSlides () {
    var swiper = this;

    var slidesIndexes = [];
    for (var i = 0; i < swiper.slides.length; i += 1) {
      slidesIndexes.push(i);
    }
    swiper.removeSlide(slidesIndexes);
  }

  var manipulation = {
    appendSlide: appendSlide,
    prependSlide: prependSlide,
    addSlide: addSlide,
    removeSlide: removeSlide,
    removeAllSlides: removeAllSlides,
  };

  var Device = (function Device() {
    var platform = win.navigator.platform;
    var ua = win.navigator.userAgent;

    var device = {
      ios: false,
      android: false,
      androidChrome: false,
      desktop: false,
      iphone: false,
      ipod: false,
      ipad: false,
      edge: false,
      ie: false,
      firefox: false,
      macos: false,
      windows: false,
      cordova: !!(win.cordova || win.phonegap),
      phonegap: !!(win.cordova || win.phonegap),
      electron: false,
    };

    var screenWidth = win.screen.width;
    var screenHeight = win.screen.height;

    var android = ua.match(/(Android);?[\s\/]+([\d.]+)?/); // eslint-disable-line
    var ipad = ua.match(/(iPad).*OS\s([\d_]+)/);
    var ipod = ua.match(/(iPod)(.*OS\s([\d_]+))?/);
    var iphone = !ipad && ua.match(/(iPhone\sOS|iOS)\s([\d_]+)/);
    var ie = ua.indexOf('MSIE ') >= 0 || ua.indexOf('Trident/') >= 0;
    var edge = ua.indexOf('Edge/') >= 0;
    var firefox = ua.indexOf('Gecko/') >= 0 && ua.indexOf('Firefox/') >= 0;
    var windows = platform === 'Win32';
    var electron = ua.toLowerCase().indexOf('electron') >= 0;
    var macos = platform === 'MacIntel';

    // iPadOs 13 fix
    if (!ipad
      && macos
      && Support.touch
      && (
        (screenWidth === 1024 && screenHeight === 1366) // Pro 12.9
        || (screenWidth === 834 && screenHeight === 1194) // Pro 11
        || (screenWidth === 834 && screenHeight === 1112) // Pro 10.5
        || (screenWidth === 768 && screenHeight === 1024) // other
      )
    ) {
      ipad = ua.match(/(Version)\/([\d.]+)/);
      macos = false;
    }

    device.ie = ie;
    device.edge = edge;
    device.firefox = firefox;

    // Android
    if (android && !windows) {
      device.os = 'android';
      device.osVersion = android[2];
      device.android = true;
      device.androidChrome = ua.toLowerCase().indexOf('chrome') >= 0;
    }
    if (ipad || iphone || ipod) {
      device.os = 'ios';
      device.ios = true;
    }
    // iOS
    if (iphone && !ipod) {
      device.osVersion = iphone[2].replace(/_/g, '.');
      device.iphone = true;
    }
    if (ipad) {
      device.osVersion = ipad[2].replace(/_/g, '.');
      device.ipad = true;
    }
    if (ipod) {
      device.osVersion = ipod[3] ? ipod[3].replace(/_/g, '.') : null;
      device.ipod = true;
    }
    // iOS 8+ changed UA
    if (device.ios && device.osVersion && ua.indexOf('Version/') >= 0) {
      if (device.osVersion.split('.')[0] === '10') {
        device.osVersion = ua.toLowerCase().split('version/')[1].split(' ')[0];
      }
    }

    // Webview
    device.webView = !!((iphone || ipad || ipod) && (ua.match(/.*AppleWebKit(?!.*Safari)/i) || win.navigator.standalone))
      || (win.matchMedia && win.matchMedia('(display-mode: standalone)').matches);
    device.webview = device.webView;
    device.standalone = device.webView;

    // Desktop
    device.desktop = !(device.ios || device.android) || electron;
    if (device.desktop) {
      device.electron = electron;
      device.macos = macos;
      device.windows = windows;
      if (device.macos) {
        device.os = 'macos';
      }
      if (device.windows) {
        device.os = 'windows';
      }
    }

    // Pixel Ratio
    device.pixelRatio = win.devicePixelRatio || 1;

    // Export object
    return device;
  }());

  function onTouchStart (event) {
    var swiper = this;
    var data = swiper.touchEventsData;
    var params = swiper.params;
    var touches = swiper.touches;

    if (swiper.animating && params.preventInteractionOnTransition) {
      return;
    }
    var e = event;
    if (e.originalEvent) { e = e.originalEvent; }
    var $targetEl = $(e.target);

    if (params.touchEventsTarget === 'wrapper') {
      if (!$targetEl.closest(swiper.wrapperEl).length) { return; }
    }
    data.isTouchEvent = e.type === 'touchstart';
    if (!data.isTouchEvent && 'which' in e && e.which === 3) { return; }
    if (!data.isTouchEvent && 'button' in e && e.button > 0) { return; }
    if (data.isTouched && data.isMoved) { return; }
    if (params.noSwiping && $targetEl.closest(params.noSwipingSelector ? params.noSwipingSelector : ("." + (params.noSwipingClass)))[0]) {
      swiper.allowClick = true;
      return;
    }
    if (params.swipeHandler) {
      if (!$targetEl.closest(params.swipeHandler)[0]) { return; }
    }

    touches.currentX = e.type === 'touchstart' ? e.targetTouches[0].pageX : e.pageX;
    touches.currentY = e.type === 'touchstart' ? e.targetTouches[0].pageY : e.pageY;
    var startX = touches.currentX;
    var startY = touches.currentY;

    // Do NOT start if iOS edge swipe is detected. Otherwise iOS app (UIWebView) cannot swipe-to-go-back anymore

    var edgeSwipeDetection = params.edgeSwipeDetection || params.iOSEdgeSwipeDetection;
    var edgeSwipeThreshold = params.edgeSwipeThreshold || params.iOSEdgeSwipeThreshold;
    if (
      edgeSwipeDetection
      && ((startX <= edgeSwipeThreshold)
      || (startX >= win.screen.width - edgeSwipeThreshold))
    ) {
      return;
    }

    Utils.extend(data, {
      isTouched: true,
      isMoved: false,
      allowTouchCallbacks: true,
      isScrolling: undefined,
      startMoving: undefined,
    });

    touches.startX = startX;
    touches.startY = startY;
    data.touchStartTime = Utils.now();
    swiper.allowClick = true;
    swiper.updateSize();
    swiper.swipeDirection = undefined;
    if (params.threshold > 0) { data.allowThresholdMove = false; }
    if (e.type !== 'touchstart') {
      var preventDefault = true;
      if ($targetEl.is(data.formElements)) { preventDefault = false; }
      if (
        doc.activeElement
        && $(doc.activeElement).is(data.formElements)
        && doc.activeElement !== $targetEl[0]
      ) {
        doc.activeElement.blur();
      }

      var shouldPreventDefault = preventDefault && swiper.allowTouchMove && params.touchStartPreventDefault;
      if (params.touchStartForcePreventDefault || shouldPreventDefault) {
        e.preventDefault();
      }
    }
    swiper.emit('touchStart', e);
  }

  function onTouchMove (event) {
    var swiper = this;
    var data = swiper.touchEventsData;
    var params = swiper.params;
    var touches = swiper.touches;
    var rtl = swiper.rtlTranslate;
    var e = event;
    if (e.originalEvent) { e = e.originalEvent; }
    if (!data.isTouched) {
      if (data.startMoving && data.isScrolling) {
        swiper.emit('touchMoveOpposite', e);
      }
      return;
    }
    if (data.isTouchEvent && e.type === 'mousemove') { return; }
    var targetTouch = e.type === 'touchmove' && e.targetTouches && (e.targetTouches[0] || e.changedTouches[0]);
    var pageX = e.type === 'touchmove' ? targetTouch.pageX : e.pageX;
    var pageY = e.type === 'touchmove' ? targetTouch.pageY : e.pageY;
    if (e.preventedByNestedSwiper) {
      touches.startX = pageX;
      touches.startY = pageY;
      return;
    }
    if (!swiper.allowTouchMove) {
      // isMoved = true;
      swiper.allowClick = false;
      if (data.isTouched) {
        Utils.extend(touches, {
          startX: pageX,
          startY: pageY,
          currentX: pageX,
          currentY: pageY,
        });
        data.touchStartTime = Utils.now();
      }
      return;
    }
    if (data.isTouchEvent && params.touchReleaseOnEdges && !params.loop) {
      if (swiper.isVertical()) {
        // Vertical
        if (
          (pageY < touches.startY && swiper.translate <= swiper.maxTranslate())
          || (pageY > touches.startY && swiper.translate >= swiper.minTranslate())
        ) {
          data.isTouched = false;
          data.isMoved = false;
          return;
        }
      } else if (
        (pageX < touches.startX && swiper.translate <= swiper.maxTranslate())
        || (pageX > touches.startX && swiper.translate >= swiper.minTranslate())
      ) {
        return;
      }
    }
    if (data.isTouchEvent && doc.activeElement) {
      if (e.target === doc.activeElement && $(e.target).is(data.formElements)) {
        data.isMoved = true;
        swiper.allowClick = false;
        return;
      }
    }
    if (data.allowTouchCallbacks) {
      swiper.emit('touchMove', e);
    }
    if (e.targetTouches && e.targetTouches.length > 1) { return; }

    touches.currentX = pageX;
    touches.currentY = pageY;

    var diffX = touches.currentX - touches.startX;
    var diffY = touches.currentY - touches.startY;
    if (swiper.params.threshold && Math.sqrt((Math.pow( diffX, 2 )) + (Math.pow( diffY, 2 ))) < swiper.params.threshold) { return; }

    if (typeof data.isScrolling === 'undefined') {
      var touchAngle;
      if ((swiper.isHorizontal() && touches.currentY === touches.startY) || (swiper.isVertical() && touches.currentX === touches.startX)) {
        data.isScrolling = false;
      } else {
        // eslint-disable-next-line
        if ((diffX * diffX) + (diffY * diffY) >= 25) {
          touchAngle = (Math.atan2(Math.abs(diffY), Math.abs(diffX)) * 180) / Math.PI;
          data.isScrolling = swiper.isHorizontal() ? touchAngle > params.touchAngle : (90 - touchAngle > params.touchAngle);
        }
      }
    }
    if (data.isScrolling) {
      swiper.emit('touchMoveOpposite', e);
    }
    if (typeof data.startMoving === 'undefined') {
      if (touches.currentX !== touches.startX || touches.currentY !== touches.startY) {
        data.startMoving = true;
      }
    }
    if (data.isScrolling) {
      data.isTouched = false;
      return;
    }
    if (!data.startMoving) {
      return;
    }
    swiper.allowClick = false;
    if (!params.cssMode) {
      e.preventDefault();
    }
    if (params.touchMoveStopPropagation && !params.nested) {
      e.stopPropagation();
    }

    if (!data.isMoved) {
      if (params.loop) {
        swiper.loopFix();
      }
      data.startTranslate = swiper.getTranslate();
      swiper.setTransition(0);
      if (swiper.animating) {
        swiper.$wrapperEl.trigger('webkitTransitionEnd transitionend');
      }
      data.allowMomentumBounce = false;
      // Grab Cursor
      if (params.grabCursor && (swiper.allowSlideNext === true || swiper.allowSlidePrev === true)) {
        swiper.setGrabCursor(true);
      }
      swiper.emit('sliderFirstMove', e);
    }
    swiper.emit('sliderMove', e);
    data.isMoved = true;

    var diff = swiper.isHorizontal() ? diffX : diffY;
    touches.diff = diff;

    diff *= params.touchRatio;
    if (rtl) { diff = -diff; }

    swiper.swipeDirection = diff > 0 ? 'prev' : 'next';
    data.currentTranslate = diff + data.startTranslate;

    var disableParentSwiper = true;
    var resistanceRatio = params.resistanceRatio;
    if (params.touchReleaseOnEdges) {
      resistanceRatio = 0;
    }
    if ((diff > 0 && data.currentTranslate > swiper.minTranslate())) {
      disableParentSwiper = false;
      if (params.resistance) { data.currentTranslate = (swiper.minTranslate() - 1) + (Math.pow( (-swiper.minTranslate() + data.startTranslate + diff), resistanceRatio )); }
    } else if (diff < 0 && data.currentTranslate < swiper.maxTranslate()) {
      disableParentSwiper = false;
      if (params.resistance) { data.currentTranslate = (swiper.maxTranslate() + 1) - (Math.pow( (swiper.maxTranslate() - data.startTranslate - diff), resistanceRatio )); }
    }

    if (disableParentSwiper) {
      e.preventedByNestedSwiper = true;
    }

    // Directions locks
    if (!swiper.allowSlideNext && swiper.swipeDirection === 'next' && data.currentTranslate < data.startTranslate) {
      data.currentTranslate = data.startTranslate;
    }
    if (!swiper.allowSlidePrev && swiper.swipeDirection === 'prev' && data.currentTranslate > data.startTranslate) {
      data.currentTranslate = data.startTranslate;
    }


    // Threshold
    if (params.threshold > 0) {
      if (Math.abs(diff) > params.threshold || data.allowThresholdMove) {
        if (!data.allowThresholdMove) {
          data.allowThresholdMove = true;
          touches.startX = touches.currentX;
          touches.startY = touches.currentY;
          data.currentTranslate = data.startTranslate;
          touches.diff = swiper.isHorizontal() ? touches.currentX - touches.startX : touches.currentY - touches.startY;
          return;
        }
      } else {
        data.currentTranslate = data.startTranslate;
        return;
      }
    }

    if (!params.followFinger || params.cssMode) { return; }

    // Update active index in free mode
    if (params.freeMode || params.watchSlidesProgress || params.watchSlidesVisibility) {
      swiper.updateActiveIndex();
      swiper.updateSlidesClasses();
    }
    if (params.freeMode) {
      // Velocity
      if (data.velocities.length === 0) {
        data.velocities.push({
          position: touches[swiper.isHorizontal() ? 'startX' : 'startY'],
          time: data.touchStartTime,
        });
      }
      data.velocities.push({
        position: touches[swiper.isHorizontal() ? 'currentX' : 'currentY'],
        time: Utils.now(),
      });
    }
    // Update progress
    swiper.updateProgress(data.currentTranslate);
    // Update translate
    swiper.setTranslate(data.currentTranslate);
  }

  function onTouchEnd (event) {
    var swiper = this;
    var data = swiper.touchEventsData;

    var params = swiper.params;
    var touches = swiper.touches;
    var rtl = swiper.rtlTranslate;
    var $wrapperEl = swiper.$wrapperEl;
    var slidesGrid = swiper.slidesGrid;
    var snapGrid = swiper.snapGrid;
    var e = event;
    if (e.originalEvent) { e = e.originalEvent; }
    if (data.allowTouchCallbacks) {
      swiper.emit('touchEnd', e);
    }
    data.allowTouchCallbacks = false;
    if (!data.isTouched) {
      if (data.isMoved && params.grabCursor) {
        swiper.setGrabCursor(false);
      }
      data.isMoved = false;
      data.startMoving = false;
      return;
    }
    // Return Grab Cursor
    if (params.grabCursor && data.isMoved && data.isTouched && (swiper.allowSlideNext === true || swiper.allowSlidePrev === true)) {
      swiper.setGrabCursor(false);
    }

    // Time diff
    var touchEndTime = Utils.now();
    var timeDiff = touchEndTime - data.touchStartTime;

    // Tap, doubleTap, Click
    if (swiper.allowClick) {
      swiper.updateClickedSlide(e);
      swiper.emit('tap click', e);
      if (timeDiff < 300 && (touchEndTime - data.lastClickTime) < 300) {
        swiper.emit('doubleTap doubleClick', e);
      }
    }

    data.lastClickTime = Utils.now();
    Utils.nextTick(function () {
      if (!swiper.destroyed) { swiper.allowClick = true; }
    });

    if (!data.isTouched || !data.isMoved || !swiper.swipeDirection || touches.diff === 0 || data.currentTranslate === data.startTranslate) {
      data.isTouched = false;
      data.isMoved = false;
      data.startMoving = false;
      return;
    }
    data.isTouched = false;
    data.isMoved = false;
    data.startMoving = false;

    var currentPos;
    if (params.followFinger) {
      currentPos = rtl ? swiper.translate : -swiper.translate;
    } else {
      currentPos = -data.currentTranslate;
    }

    if (params.cssMode) {
      return;
    }

    if (params.freeMode) {
      if (currentPos < -swiper.minTranslate()) {
        swiper.slideTo(swiper.activeIndex);
        return;
      }
      if (currentPos > -swiper.maxTranslate()) {
        if (swiper.slides.length < snapGrid.length) {
          swiper.slideTo(snapGrid.length - 1);
        } else {
          swiper.slideTo(swiper.slides.length - 1);
        }
        return;
      }

      if (params.freeModeMomentum) {
        if (data.velocities.length > 1) {
          var lastMoveEvent = data.velocities.pop();
          var velocityEvent = data.velocities.pop();

          var distance = lastMoveEvent.position - velocityEvent.position;
          var time = lastMoveEvent.time - velocityEvent.time;
          swiper.velocity = distance / time;
          swiper.velocity /= 2;
          if (Math.abs(swiper.velocity) < params.freeModeMinimumVelocity) {
            swiper.velocity = 0;
          }
          // this implies that the user stopped moving a finger then released.
          // There would be no events with distance zero, so the last event is stale.
          if (time > 150 || (Utils.now() - lastMoveEvent.time) > 300) {
            swiper.velocity = 0;
          }
        } else {
          swiper.velocity = 0;
        }
        swiper.velocity *= params.freeModeMomentumVelocityRatio;

        data.velocities.length = 0;
        var momentumDuration = 1000 * params.freeModeMomentumRatio;
        var momentumDistance = swiper.velocity * momentumDuration;

        var newPosition = swiper.translate + momentumDistance;
        if (rtl) { newPosition = -newPosition; }

        var doBounce = false;
        var afterBouncePosition;
        var bounceAmount = Math.abs(swiper.velocity) * 20 * params.freeModeMomentumBounceRatio;
        var needsLoopFix;
        if (newPosition < swiper.maxTranslate()) {
          if (params.freeModeMomentumBounce) {
            if (newPosition + swiper.maxTranslate() < -bounceAmount) {
              newPosition = swiper.maxTranslate() - bounceAmount;
            }
            afterBouncePosition = swiper.maxTranslate();
            doBounce = true;
            data.allowMomentumBounce = true;
          } else {
            newPosition = swiper.maxTranslate();
          }
          if (params.loop && params.centeredSlides) { needsLoopFix = true; }
        } else if (newPosition > swiper.minTranslate()) {
          if (params.freeModeMomentumBounce) {
            if (newPosition - swiper.minTranslate() > bounceAmount) {
              newPosition = swiper.minTranslate() + bounceAmount;
            }
            afterBouncePosition = swiper.minTranslate();
            doBounce = true;
            data.allowMomentumBounce = true;
          } else {
            newPosition = swiper.minTranslate();
          }
          if (params.loop && params.centeredSlides) { needsLoopFix = true; }
        } else if (params.freeModeSticky) {
          var nextSlide;
          for (var j = 0; j < snapGrid.length; j += 1) {
            if (snapGrid[j] > -newPosition) {
              nextSlide = j;
              break;
            }
          }

          if (Math.abs(snapGrid[nextSlide] - newPosition) < Math.abs(snapGrid[nextSlide - 1] - newPosition) || swiper.swipeDirection === 'next') {
            newPosition = snapGrid[nextSlide];
          } else {
            newPosition = snapGrid[nextSlide - 1];
          }
          newPosition = -newPosition;
        }
        if (needsLoopFix) {
          swiper.once('transitionEnd', function () {
            swiper.loopFix();
          });
        }
        // Fix duration
        if (swiper.velocity !== 0) {
          if (rtl) {
            momentumDuration = Math.abs((-newPosition - swiper.translate) / swiper.velocity);
          } else {
            momentumDuration = Math.abs((newPosition - swiper.translate) / swiper.velocity);
          }
          if (params.freeModeSticky) {
            // If freeModeSticky is active and the user ends a swipe with a slow-velocity
            // event, then durations can be 20+ seconds to slide one (or zero!) slides.
            // It's easy to see this when simulating touch with mouse events. To fix this,
            // limit single-slide swipes to the default slide duration. This also has the
            // nice side effect of matching slide speed if the user stopped moving before
            // lifting finger or mouse vs. moving slowly before lifting the finger/mouse.
            // For faster swipes, also apply limits (albeit higher ones).
            var moveDistance = Math.abs((rtl ? -newPosition : newPosition) - swiper.translate);
            var currentSlideSize = swiper.slidesSizesGrid[swiper.activeIndex];
            if (moveDistance < currentSlideSize) {
              momentumDuration = params.speed;
            } else if (moveDistance < 2 * currentSlideSize) {
              momentumDuration = params.speed * 1.5;
            } else {
              momentumDuration = params.speed * 2.5;
            }
          }
        } else if (params.freeModeSticky) {
          swiper.slideToClosest();
          return;
        }

        if (params.freeModeMomentumBounce && doBounce) {
          swiper.updateProgress(afterBouncePosition);
          swiper.setTransition(momentumDuration);
          swiper.setTranslate(newPosition);
          swiper.transitionStart(true, swiper.swipeDirection);
          swiper.animating = true;
          $wrapperEl.transitionEnd(function () {
            if (!swiper || swiper.destroyed || !data.allowMomentumBounce) { return; }
            swiper.emit('momentumBounce');

            swiper.setTransition(params.speed);
            swiper.setTranslate(afterBouncePosition);
            $wrapperEl.transitionEnd(function () {
              if (!swiper || swiper.destroyed) { return; }
              swiper.transitionEnd();
            });
          });
        } else if (swiper.velocity) {
          swiper.updateProgress(newPosition);
          swiper.setTransition(momentumDuration);
          swiper.setTranslate(newPosition);
          swiper.transitionStart(true, swiper.swipeDirection);
          if (!swiper.animating) {
            swiper.animating = true;
            $wrapperEl.transitionEnd(function () {
              if (!swiper || swiper.destroyed) { return; }
              swiper.transitionEnd();
            });
          }
        } else {
          swiper.updateProgress(newPosition);
        }

        swiper.updateActiveIndex();
        swiper.updateSlidesClasses();
      } else if (params.freeModeSticky) {
        swiper.slideToClosest();
        return;
      }

      if (!params.freeModeMomentum || timeDiff >= params.longSwipesMs) {
        swiper.updateProgress();
        swiper.updateActiveIndex();
        swiper.updateSlidesClasses();
      }
      return;
    }

    // Find current slide
    var stopIndex = 0;
    var groupSize = swiper.slidesSizesGrid[0];
    for (var i = 0; i < slidesGrid.length; i += (i < params.slidesPerGroupSkip ? 1 : params.slidesPerGroup)) {
      var increment$1 = (i < params.slidesPerGroupSkip - 1 ? 1 : params.slidesPerGroup);
      if (typeof slidesGrid[i + increment$1] !== 'undefined') {
        if (currentPos >= slidesGrid[i] && currentPos < slidesGrid[i + increment$1]) {
          stopIndex = i;
          groupSize = slidesGrid[i + increment$1] - slidesGrid[i];
        }
      } else if (currentPos >= slidesGrid[i]) {
        stopIndex = i;
        groupSize = slidesGrid[slidesGrid.length - 1] - slidesGrid[slidesGrid.length - 2];
      }
    }

    // Find current slide size
    var ratio = (currentPos - slidesGrid[stopIndex]) / groupSize;
    var increment = (stopIndex < params.slidesPerGroupSkip - 1 ? 1 : params.slidesPerGroup);

    if (timeDiff > params.longSwipesMs) {
      // Long touches
      if (!params.longSwipes) {
        swiper.slideTo(swiper.activeIndex);
        return;
      }
      if (swiper.swipeDirection === 'next') {
        if (ratio >= params.longSwipesRatio) { swiper.slideTo(stopIndex + increment); }
        else { swiper.slideTo(stopIndex); }
      }
      if (swiper.swipeDirection === 'prev') {
        if (ratio > (1 - params.longSwipesRatio)) { swiper.slideTo(stopIndex + increment); }
        else { swiper.slideTo(stopIndex); }
      }
    } else {
      // Short swipes
      if (!params.shortSwipes) {
        swiper.slideTo(swiper.activeIndex);
        return;
      }
      var isNavButtonTarget = swiper.navigation && (e.target === swiper.navigation.nextEl || e.target === swiper.navigation.prevEl);
      if (!isNavButtonTarget) {
        if (swiper.swipeDirection === 'next') {
          swiper.slideTo(stopIndex + increment);
        }
        if (swiper.swipeDirection === 'prev') {
          swiper.slideTo(stopIndex);
        }
      } else if (e.target === swiper.navigation.nextEl) {
        swiper.slideTo(stopIndex + increment);
      } else {
        swiper.slideTo(stopIndex);
      }
    }
  }

  function onResize () {
    var swiper = this;

    var params = swiper.params;
    var el = swiper.el;

    if (el && el.offsetWidth === 0) { return; }

    // Breakpoints
    if (params.breakpoints) {
      swiper.setBreakpoint();
    }

    // Save locks
    var allowSlideNext = swiper.allowSlideNext;
    var allowSlidePrev = swiper.allowSlidePrev;
    var snapGrid = swiper.snapGrid;

    // Disable locks on resize
    swiper.allowSlideNext = true;
    swiper.allowSlidePrev = true;

    swiper.updateSize();
    swiper.updateSlides();

    swiper.updateSlidesClasses();
    if ((params.slidesPerView === 'auto' || params.slidesPerView > 1) && swiper.isEnd && !swiper.params.centeredSlides) {
      swiper.slideTo(swiper.slides.length - 1, 0, false, true);
    } else {
      swiper.slideTo(swiper.activeIndex, 0, false, true);
    }

    if (swiper.autoplay && swiper.autoplay.running && swiper.autoplay.paused) {
      swiper.autoplay.run();
    }
    // Return locks after resize
    swiper.allowSlidePrev = allowSlidePrev;
    swiper.allowSlideNext = allowSlideNext;

    if (swiper.params.watchOverflow && snapGrid !== swiper.snapGrid) {
      swiper.checkOverflow();
    }
  }

  function onClick (e) {
    var swiper = this;
    if (!swiper.allowClick) {
      if (swiper.params.preventClicks) { e.preventDefault(); }
      if (swiper.params.preventClicksPropagation && swiper.animating) {
        e.stopPropagation();
        e.stopImmediatePropagation();
      }
    }
  }

  function onScroll () {
    var swiper = this;
    var wrapperEl = swiper.wrapperEl;
    swiper.previousTranslate = swiper.translate;
    swiper.translate = swiper.isHorizontal() ? -wrapperEl.scrollLeft : -wrapperEl.scrollTop;
    // eslint-disable-next-line
    if (swiper.translate === -0) { swiper.translate = 0; }

    swiper.updateActiveIndex();
    swiper.updateSlidesClasses();

    var newProgress;
    var translatesDiff = swiper.maxTranslate() - swiper.minTranslate();
    if (translatesDiff === 0) {
      newProgress = 0;
    } else {
      newProgress = (swiper.translate - swiper.minTranslate()) / (translatesDiff);
    }
    if (newProgress !== swiper.progress) {
      swiper.updateProgress(swiper.translate);
    }

    swiper.emit('setTranslate', swiper.translate, false);
  }

  var dummyEventAttached = false;
  function dummyEventListener() {}

  function attachEvents() {
    var swiper = this;
    var params = swiper.params;
    var touchEvents = swiper.touchEvents;
    var el = swiper.el;
    var wrapperEl = swiper.wrapperEl;

    swiper.onTouchStart = onTouchStart.bind(swiper);
    swiper.onTouchMove = onTouchMove.bind(swiper);
    swiper.onTouchEnd = onTouchEnd.bind(swiper);
    if (params.cssMode) {
      swiper.onScroll = onScroll.bind(swiper);
    }

    swiper.onClick = onClick.bind(swiper);

    var capture = !!params.nested;

    // Touch Events
    if (!Support.touch && Support.pointerEvents) {
      el.addEventListener(touchEvents.start, swiper.onTouchStart, false);
      doc.addEventListener(touchEvents.move, swiper.onTouchMove, capture);
      doc.addEventListener(touchEvents.end, swiper.onTouchEnd, false);
    } else {
      if (Support.touch) {
        var passiveListener = touchEvents.start === 'touchstart' && Support.passiveListener && params.passiveListeners ? { passive: true, capture: false } : false;
        el.addEventListener(touchEvents.start, swiper.onTouchStart, passiveListener);
        el.addEventListener(touchEvents.move, swiper.onTouchMove, Support.passiveListener ? { passive: false, capture: capture } : capture);
        el.addEventListener(touchEvents.end, swiper.onTouchEnd, passiveListener);
        if (touchEvents.cancel) {
          el.addEventListener(touchEvents.cancel, swiper.onTouchEnd, passiveListener);
        }
        if (!dummyEventAttached) {
          doc.addEventListener('touchstart', dummyEventListener);
          dummyEventAttached = true;
        }
      }
      if ((params.simulateTouch && !Device.ios && !Device.android) || (params.simulateTouch && !Support.touch && Device.ios)) {
        el.addEventListener('mousedown', swiper.onTouchStart, false);
        doc.addEventListener('mousemove', swiper.onTouchMove, capture);
        doc.addEventListener('mouseup', swiper.onTouchEnd, false);
      }
    }
    // Prevent Links Clicks
    if (params.preventClicks || params.preventClicksPropagation) {
      el.addEventListener('click', swiper.onClick, true);
    }
    if (params.cssMode) {
      wrapperEl.addEventListener('scroll', swiper.onScroll);
    }

    // Resize handler
    if (params.updateOnWindowResize) {
      swiper.on((Device.ios || Device.android ? 'resize orientationchange observerUpdate' : 'resize observerUpdate'), onResize, true);
    } else {
      swiper.on('observerUpdate', onResize, true);
    }
  }

  function detachEvents() {
    var swiper = this;

    var params = swiper.params;
    var touchEvents = swiper.touchEvents;
    var el = swiper.el;
    var wrapperEl = swiper.wrapperEl;

    var capture = !!params.nested;

    // Touch Events
    if (!Support.touch && Support.pointerEvents) {
      el.removeEventListener(touchEvents.start, swiper.onTouchStart, false);
      doc.removeEventListener(touchEvents.move, swiper.onTouchMove, capture);
      doc.removeEventListener(touchEvents.end, swiper.onTouchEnd, false);
    } else {
      if (Support.touch) {
        var passiveListener = touchEvents.start === 'onTouchStart' && Support.passiveListener && params.passiveListeners ? { passive: true, capture: false } : false;
        el.removeEventListener(touchEvents.start, swiper.onTouchStart, passiveListener);
        el.removeEventListener(touchEvents.move, swiper.onTouchMove, capture);
        el.removeEventListener(touchEvents.end, swiper.onTouchEnd, passiveListener);
        if (touchEvents.cancel) {
          el.removeEventListener(touchEvents.cancel, swiper.onTouchEnd, passiveListener);
        }
      }
      if ((params.simulateTouch && !Device.ios && !Device.android) || (params.simulateTouch && !Support.touch && Device.ios)) {
        el.removeEventListener('mousedown', swiper.onTouchStart, false);
        doc.removeEventListener('mousemove', swiper.onTouchMove, capture);
        doc.removeEventListener('mouseup', swiper.onTouchEnd, false);
      }
    }
    // Prevent Links Clicks
    if (params.preventClicks || params.preventClicksPropagation) {
      el.removeEventListener('click', swiper.onClick, true);
    }

    if (params.cssMode) {
      wrapperEl.removeEventListener('scroll', swiper.onScroll);
    }

    // Resize handler
    swiper.off((Device.ios || Device.android ? 'resize orientationchange observerUpdate' : 'resize observerUpdate'), onResize);
  }

  var events = {
    attachEvents: attachEvents,
    detachEvents: detachEvents,
  };

  function setBreakpoint () {
    var swiper = this;
    var activeIndex = swiper.activeIndex;
    var initialized = swiper.initialized;
    var loopedSlides = swiper.loopedSlides; if ( loopedSlides === void 0 ) loopedSlides = 0;
    var params = swiper.params;
    var $el = swiper.$el;
    var breakpoints = params.breakpoints;
    if (!breakpoints || (breakpoints && Object.keys(breakpoints).length === 0)) { return; }

    // Get breakpoint for window width and update parameters
    var breakpoint = swiper.getBreakpoint(breakpoints);

    if (breakpoint && swiper.currentBreakpoint !== breakpoint) {
      var breakpointOnlyParams = breakpoint in breakpoints ? breakpoints[breakpoint] : undefined;
      if (breakpointOnlyParams) {
        ['slidesPerView', 'spaceBetween', 'slidesPerGroup', 'slidesPerGroupSkip', 'slidesPerColumn'].forEach(function (param) {
          var paramValue = breakpointOnlyParams[param];
          if (typeof paramValue === 'undefined') { return; }
          if (param === 'slidesPerView' && (paramValue === 'AUTO' || paramValue === 'auto')) {
            breakpointOnlyParams[param] = 'auto';
          } else if (param === 'slidesPerView') {
            breakpointOnlyParams[param] = parseFloat(paramValue);
          } else {
            breakpointOnlyParams[param] = parseInt(paramValue, 10);
          }
        });
      }

      var breakpointParams = breakpointOnlyParams || swiper.originalParams;
      var wasMultiRow = params.slidesPerColumn > 1;
      var isMultiRow = breakpointParams.slidesPerColumn > 1;
      if (wasMultiRow && !isMultiRow) {
        $el.removeClass(((params.containerModifierClass) + "multirow " + (params.containerModifierClass) + "multirow-column"));
      } else if (!wasMultiRow && isMultiRow) {
        $el.addClass(((params.containerModifierClass) + "multirow"));
        if (breakpointParams.slidesPerColumnFill === 'column') {
          $el.addClass(((params.containerModifierClass) + "multirow-column"));
        }
      }

      var directionChanged = breakpointParams.direction && breakpointParams.direction !== params.direction;
      var needsReLoop = params.loop && (breakpointParams.slidesPerView !== params.slidesPerView || directionChanged);

      if (directionChanged && initialized) {
        swiper.changeDirection();
      }

      Utils.extend(swiper.params, breakpointParams);

      Utils.extend(swiper, {
        allowTouchMove: swiper.params.allowTouchMove,
        allowSlideNext: swiper.params.allowSlideNext,
        allowSlidePrev: swiper.params.allowSlidePrev,
      });

      swiper.currentBreakpoint = breakpoint;

      if (needsReLoop && initialized) {
        swiper.loopDestroy();
        swiper.loopCreate();
        swiper.updateSlides();
        swiper.slideTo((activeIndex - loopedSlides) + swiper.loopedSlides, 0, false);
      }

      swiper.emit('breakpoint', breakpointParams);
    }
  }

  function getBreakpoint (breakpoints) {
    // Get breakpoint for window width
    if (!breakpoints) { return undefined; }
    var breakpoint = false;

    var points = Object.keys(breakpoints).map(function (point) {
      if (typeof point === 'string' && point.indexOf('@') === 0) {
        var minRatio = parseFloat(point.substr(1));
        var value = win.innerHeight * minRatio;
        return { value: value, point: point };
      }
      return { value: point, point: point };
    });

    points.sort(function (a, b) { return parseInt(a.value, 10) - parseInt(b.value, 10); });
    for (var i = 0; i < points.length; i += 1) {
      var ref = points[i];
      var point = ref.point;
      var value = ref.value;
      if (value <= win.innerWidth) {
        breakpoint = point;
      }
    }
    return breakpoint || 'max';
  }

  var breakpoints = { setBreakpoint: setBreakpoint, getBreakpoint: getBreakpoint };

  function addClasses () {
    var swiper = this;
    var classNames = swiper.classNames;
    var params = swiper.params;
    var rtl = swiper.rtl;
    var $el = swiper.$el;
    var suffixes = [];

    suffixes.push('initialized');
    suffixes.push(params.direction);

    if (params.freeMode) {
      suffixes.push('free-mode');
    }
    if (params.autoHeight) {
      suffixes.push('autoheight');
    }
    if (rtl) {
      suffixes.push('rtl');
    }
    if (params.slidesPerColumn > 1) {
      suffixes.push('multirow');
      if (params.slidesPerColumnFill === 'column') {
        suffixes.push('multirow-column');
      }
    }
    if (Device.android) {
      suffixes.push('android');
    }
    if (Device.ios) {
      suffixes.push('ios');
    }

    if (params.cssMode) {
      suffixes.push('css-mode');
    }

    suffixes.forEach(function (suffix) {
      classNames.push(params.containerModifierClass + suffix);
    });

    $el.addClass(classNames.join(' '));
  }

  function removeClasses () {
    var swiper = this;
    var $el = swiper.$el;
    var classNames = swiper.classNames;

    $el.removeClass(classNames.join(' '));
  }

  var classes = { addClasses: addClasses, removeClasses: removeClasses };

  function loadImage (imageEl, src, srcset, sizes, checkForComplete, callback) {
    var image;
    function onReady() {
      if (callback) { callback(); }
    }
    if (!imageEl.complete || !checkForComplete) {
      if (src) {
        image = new win.Image();
        image.onload = onReady;
        image.onerror = onReady;
        if (sizes) {
          image.sizes = sizes;
        }
        if (srcset) {
          image.srcset = srcset;
        }
        if (src) {
          image.src = src;
        }
      } else {
        onReady();
      }
    } else {
      // image already loaded...
      onReady();
    }
  }

  function preloadImages () {
    var swiper = this;
    swiper.imagesToLoad = swiper.$el.find('img');
    function onReady() {
      if (typeof swiper === 'undefined' || swiper === null || !swiper || swiper.destroyed) { return; }
      if (swiper.imagesLoaded !== undefined) { swiper.imagesLoaded += 1; }
      if (swiper.imagesLoaded === swiper.imagesToLoad.length) {
        if (swiper.params.updateOnImagesReady) { swiper.update(); }
        swiper.emit('imagesReady');
      }
    }
    for (var i = 0; i < swiper.imagesToLoad.length; i += 1) {
      var imageEl = swiper.imagesToLoad[i];
      swiper.loadImage(
        imageEl,
        imageEl.currentSrc || imageEl.getAttribute('src'),
        imageEl.srcset || imageEl.getAttribute('srcset'),
        imageEl.sizes || imageEl.getAttribute('sizes'),
        true,
        onReady
      );
    }
  }

  var images = {
    loadImage: loadImage,
    preloadImages: preloadImages,
  };

  function checkOverflow() {
    var swiper = this;
    var params = swiper.params;
    var wasLocked = swiper.isLocked;
    var lastSlidePosition = swiper.slides.length > 0 && (params.slidesOffsetBefore + (params.spaceBetween * (swiper.slides.length - 1)) + ((swiper.slides[0]).offsetWidth) * swiper.slides.length);

    if (params.slidesOffsetBefore && params.slidesOffsetAfter && lastSlidePosition) {
      swiper.isLocked = lastSlidePosition <= swiper.size;
    } else {
      swiper.isLocked = swiper.snapGrid.length === 1;
    }

    swiper.allowSlideNext = !swiper.isLocked;
    swiper.allowSlidePrev = !swiper.isLocked;

    // events
    if (wasLocked !== swiper.isLocked) { swiper.emit(swiper.isLocked ? 'lock' : 'unlock'); }

    if (wasLocked && wasLocked !== swiper.isLocked) {
      swiper.isEnd = false;
      swiper.navigation.update();
    }
  }

  var checkOverflow$1 = { checkOverflow: checkOverflow };

  var defaults = {
    init: true,
    direction: 'horizontal',
    touchEventsTarget: 'container',
    initialSlide: 0,
    speed: 300,
    cssMode: false,
    updateOnWindowResize: true,
    //
    preventInteractionOnTransition: false,

    // To support iOS's swipe-to-go-back gesture (when being used in-app, with UIWebView).
    edgeSwipeDetection: false,
    edgeSwipeThreshold: 20,

    // Free mode
    freeMode: false,
    freeModeMomentum: true,
    freeModeMomentumRatio: 1,
    freeModeMomentumBounce: true,
    freeModeMomentumBounceRatio: 1,
    freeModeMomentumVelocityRatio: 1,
    freeModeSticky: false,
    freeModeMinimumVelocity: 0.02,

    // Autoheight
    autoHeight: false,

    // Set wrapper width
    setWrapperSize: false,

    // Virtual Translate
    virtualTranslate: false,

    // Effects
    effect: 'slide', // 'slide' or 'fade' or 'cube' or 'coverflow' or 'flip'

    // Breakpoints
    breakpoints: undefined,

    // Slides grid
    spaceBetween: 0,
    slidesPerView: 1,
    slidesPerColumn: 1,
    slidesPerColumnFill: 'column',
    slidesPerGroup: 1,
    slidesPerGroupSkip: 0,
    centeredSlides: false,
    centeredSlidesBounds: false,
    slidesOffsetBefore: 0, // in px
    slidesOffsetAfter: 0, // in px
    normalizeSlideIndex: true,
    centerInsufficientSlides: false,

    // Disable swiper and hide navigation when container not overflow
    watchOverflow: false,

    // Round length
    roundLengths: false,

    // Touches
    touchRatio: 1,
    touchAngle: 45,
    simulateTouch: true,
    shortSwipes: true,
    longSwipes: true,
    longSwipesRatio: 0.5,
    longSwipesMs: 300,
    followFinger: true,
    allowTouchMove: true,
    threshold: 0,
    touchMoveStopPropagation: false,
    touchStartPreventDefault: true,
    touchStartForcePreventDefault: false,
    touchReleaseOnEdges: false,

    // Unique Navigation Elements
    uniqueNavElements: true,

    // Resistance
    resistance: true,
    resistanceRatio: 0.85,

    // Progress
    watchSlidesProgress: false,
    watchSlidesVisibility: false,

    // Cursor
    grabCursor: false,

    // Clicks
    preventClicks: true,
    preventClicksPropagation: true,
    slideToClickedSlide: false,

    // Images
    preloadImages: true,
    updateOnImagesReady: true,

    // loop
    loop: false,
    loopAdditionalSlides: 0,
    loopedSlides: null,
    loopFillGroupWithBlank: false,

    // Swiping/no swiping
    allowSlidePrev: true,
    allowSlideNext: true,
    swipeHandler: null, // '.swipe-handler',
    noSwiping: true,
    noSwipingClass: 'swiper-no-swiping',
    noSwipingSelector: null,

    // Passive Listeners
    passiveListeners: true,

    // NS
    containerModifierClass: 'swiper-container-', // NEW
    slideClass: 'swiper-slide',
    slideBlankClass: 'swiper-slide-invisible-blank',
    slideActiveClass: 'swiper-slide-active',
    slideDuplicateActiveClass: 'swiper-slide-duplicate-active',
    slideVisibleClass: 'swiper-slide-visible',
    slideDuplicateClass: 'swiper-slide-duplicate',
    slideNextClass: 'swiper-slide-next',
    slideDuplicateNextClass: 'swiper-slide-duplicate-next',
    slidePrevClass: 'swiper-slide-prev',
    slideDuplicatePrevClass: 'swiper-slide-duplicate-prev',
    wrapperClass: 'swiper-wrapper',

    // Callbacks
    runCallbacksOnInit: true,
  };

  /* eslint no-param-reassign: "off" */

  var prototypes = {
    update: update,
    translate: translate,
    transition: transition$1,
    slide: slide,
    loop: loop,
    grabCursor: grabCursor,
    manipulation: manipulation,
    events: events,
    breakpoints: breakpoints,
    checkOverflow: checkOverflow$1,
    classes: classes,
    images: images,
  };

  var extendedDefaults = {};

  var Swiper = /*@__PURE__*/(function (SwiperClass) {
    function Swiper() {
      var assign;

      var args = [], len = arguments.length;
      while ( len-- ) args[ len ] = arguments[ len ];
      var el;
      var params;
      if (args.length === 1 && args[0].constructor && args[0].constructor === Object) {
        params = args[0];
      } else {
        (assign = args, el = assign[0], params = assign[1]);
      }
      if (!params) { params = {}; }

      params = Utils.extend({}, params);
      if (el && !params.el) { params.el = el; }

      SwiperClass.call(this, params);

      Object.keys(prototypes).forEach(function (prototypeGroup) {
        Object.keys(prototypes[prototypeGroup]).forEach(function (protoMethod) {
          if (!Swiper.prototype[protoMethod]) {
            Swiper.prototype[protoMethod] = prototypes[prototypeGroup][protoMethod];
          }
        });
      });

      // Swiper Instance
      var swiper = this;
      if (typeof swiper.modules === 'undefined') {
        swiper.modules = {};
      }
      Object.keys(swiper.modules).forEach(function (moduleName) {
        var module = swiper.modules[moduleName];
        if (module.params) {
          var moduleParamName = Object.keys(module.params)[0];
          var moduleParams = module.params[moduleParamName];
          if (typeof moduleParams !== 'object' || moduleParams === null) { return; }
          if (!(moduleParamName in params && 'enabled' in moduleParams)) { return; }
          if (params[moduleParamName] === true) {
            params[moduleParamName] = { enabled: true };
          }
          if (
            typeof params[moduleParamName] === 'object'
            && !('enabled' in params[moduleParamName])
          ) {
            params[moduleParamName].enabled = true;
          }
          if (!params[moduleParamName]) { params[moduleParamName] = { enabled: false }; }
        }
      });

      // Extend defaults with modules params
      var swiperParams = Utils.extend({}, defaults);
      swiper.useModulesParams(swiperParams);

      // Extend defaults with passed params
      swiper.params = Utils.extend({}, swiperParams, extendedDefaults, params);
      swiper.originalParams = Utils.extend({}, swiper.params);
      swiper.passedParams = Utils.extend({}, params);

      // Save Dom lib
      swiper.$ = $;

      // Find el
      var $el = $(swiper.params.el);
      el = $el[0];

      if (!el) {
        return undefined;
      }

      if ($el.length > 1) {
        var swipers = [];
        $el.each(function (index, containerEl) {
          var newParams = Utils.extend({}, params, { el: containerEl });
          swipers.push(new Swiper(newParams));
        });
        return swipers;
      }

      el.swiper = swiper;
      $el.data('swiper', swiper);

      // Find Wrapper
      var $wrapperEl;
      if (el && el.shadowRoot && el.shadowRoot.querySelector) {
        $wrapperEl = $(el.shadowRoot.querySelector(("." + (swiper.params.wrapperClass))));
        // Children needs to return slot items
        $wrapperEl.children = function (options) { return $el.children(options); };
      } else {
        $wrapperEl = $el.children(("." + (swiper.params.wrapperClass)));
      }
      // Extend Swiper
      Utils.extend(swiper, {
        $el: $el,
        el: el,
        $wrapperEl: $wrapperEl,
        wrapperEl: $wrapperEl[0],

        // Classes
        classNames: [],

        // Slides
        slides: $(),
        slidesGrid: [],
        snapGrid: [],
        slidesSizesGrid: [],

        // isDirection
        isHorizontal: function isHorizontal() {
          return swiper.params.direction === 'horizontal';
        },
        isVertical: function isVertical() {
          return swiper.params.direction === 'vertical';
        },
        // RTL
        rtl: (el.dir.toLowerCase() === 'rtl' || $el.css('direction') === 'rtl'),
        rtlTranslate: swiper.params.direction === 'horizontal' && (el.dir.toLowerCase() === 'rtl' || $el.css('direction') === 'rtl'),
        wrongRTL: $wrapperEl.css('display') === '-webkit-box',

        // Indexes
        activeIndex: 0,
        realIndex: 0,

        //
        isBeginning: true,
        isEnd: false,

        // Props
        translate: 0,
        previousTranslate: 0,
        progress: 0,
        velocity: 0,
        animating: false,

        // Locks
        allowSlideNext: swiper.params.allowSlideNext,
        allowSlidePrev: swiper.params.allowSlidePrev,

        // Touch Events
        touchEvents: (function touchEvents() {
          var touch = ['touchstart', 'touchmove', 'touchend', 'touchcancel'];
          var desktop = ['mousedown', 'mousemove', 'mouseup'];
          if (Support.pointerEvents) {
            desktop = ['pointerdown', 'pointermove', 'pointerup'];
          }
          swiper.touchEventsTouch = {
            start: touch[0],
            move: touch[1],
            end: touch[2],
            cancel: touch[3],
          };
          swiper.touchEventsDesktop = {
            start: desktop[0],
            move: desktop[1],
            end: desktop[2],
          };
          return Support.touch || !swiper.params.simulateTouch ? swiper.touchEventsTouch : swiper.touchEventsDesktop;
        }()),
        touchEventsData: {
          isTouched: undefined,
          isMoved: undefined,
          allowTouchCallbacks: undefined,
          touchStartTime: undefined,
          isScrolling: undefined,
          currentTranslate: undefined,
          startTranslate: undefined,
          allowThresholdMove: undefined,
          // Form elements to match
          formElements: 'input, select, option, textarea, button, video, label',
          // Last click time
          lastClickTime: Utils.now(),
          clickTimeout: undefined,
          // Velocities
          velocities: [],
          allowMomentumBounce: undefined,
          isTouchEvent: undefined,
          startMoving: undefined,
        },

        // Clicks
        allowClick: true,

        // Touches
        allowTouchMove: swiper.params.allowTouchMove,

        touches: {
          startX: 0,
          startY: 0,
          currentX: 0,
          currentY: 0,
          diff: 0,
        },

        // Images
        imagesToLoad: [],
        imagesLoaded: 0,

      });

      // Install Modules
      swiper.useModules();

      // Init
      if (swiper.params.init) {
        swiper.init();
      }

      // Return app instance
      return swiper;
    }

    if ( SwiperClass ) Swiper.__proto__ = SwiperClass;
    Swiper.prototype = Object.create( SwiperClass && SwiperClass.prototype );
    Swiper.prototype.constructor = Swiper;

    var staticAccessors = { extendedDefaults: { configurable: true },defaults: { configurable: true },Class: { configurable: true },$: { configurable: true } };

    Swiper.prototype.slidesPerViewDynamic = function slidesPerViewDynamic () {
      var swiper = this;
      var params = swiper.params;
      var slides = swiper.slides;
      var slidesGrid = swiper.slidesGrid;
      var swiperSize = swiper.size;
      var activeIndex = swiper.activeIndex;
      var spv = 1;
      if (params.centeredSlides) {
        var slideSize = slides[activeIndex].swiperSlideSize;
        var breakLoop;
        for (var i = activeIndex + 1; i < slides.length; i += 1) {
          if (slides[i] && !breakLoop) {
            slideSize += slides[i].swiperSlideSize;
            spv += 1;
            if (slideSize > swiperSize) { breakLoop = true; }
          }
        }
        for (var i$1 = activeIndex - 1; i$1 >= 0; i$1 -= 1) {
          if (slides[i$1] && !breakLoop) {
            slideSize += slides[i$1].swiperSlideSize;
            spv += 1;
            if (slideSize > swiperSize) { breakLoop = true; }
          }
        }
      } else {
        for (var i$2 = activeIndex + 1; i$2 < slides.length; i$2 += 1) {
          if (slidesGrid[i$2] - slidesGrid[activeIndex] < swiperSize) {
            spv += 1;
          }
        }
      }
      return spv;
    };

    Swiper.prototype.update = function update () {
      var swiper = this;
      if (!swiper || swiper.destroyed) { return; }
      var snapGrid = swiper.snapGrid;
      var params = swiper.params;
      // Breakpoints
      if (params.breakpoints) {
        swiper.setBreakpoint();
      }
      swiper.updateSize();
      swiper.updateSlides();
      swiper.updateProgress();
      swiper.updateSlidesClasses();

      function setTranslate() {
        var translateValue = swiper.rtlTranslate ? swiper.translate * -1 : swiper.translate;
        var newTranslate = Math.min(Math.max(translateValue, swiper.maxTranslate()), swiper.minTranslate());
        swiper.setTranslate(newTranslate);
        swiper.updateActiveIndex();
        swiper.updateSlidesClasses();
      }
      var translated;
      if (swiper.params.freeMode) {
        setTranslate();
        if (swiper.params.autoHeight) {
          swiper.updateAutoHeight();
        }
      } else {
        if ((swiper.params.slidesPerView === 'auto' || swiper.params.slidesPerView > 1) && swiper.isEnd && !swiper.params.centeredSlides) {
          translated = swiper.slideTo(swiper.slides.length - 1, 0, false, true);
        } else {
          translated = swiper.slideTo(swiper.activeIndex, 0, false, true);
        }
        if (!translated) {
          setTranslate();
        }
      }
      if (params.watchOverflow && snapGrid !== swiper.snapGrid) {
        swiper.checkOverflow();
      }
      swiper.emit('update');
    };

    Swiper.prototype.changeDirection = function changeDirection (newDirection, needUpdate) {
      if ( needUpdate === void 0 ) needUpdate = true;

      var swiper = this;
      var currentDirection = swiper.params.direction;
      if (!newDirection) {
        // eslint-disable-next-line
        newDirection = currentDirection === 'horizontal' ? 'vertical' : 'horizontal';
      }
      if ((newDirection === currentDirection) || (newDirection !== 'horizontal' && newDirection !== 'vertical')) {
        return swiper;
      }

      swiper.$el
        .removeClass(("" + (swiper.params.containerModifierClass) + currentDirection))
        .addClass(("" + (swiper.params.containerModifierClass) + newDirection));

      swiper.params.direction = newDirection;

      swiper.slides.each(function (slideIndex, slideEl) {
        if (newDirection === 'vertical') {
          slideEl.style.width = '';
        } else {
          slideEl.style.height = '';
        }
      });

      swiper.emit('changeDirection');
      if (needUpdate) { swiper.update(); }

      return swiper;
    };

    Swiper.prototype.init = function init () {
      var swiper = this;
      if (swiper.initialized) { return; }

      swiper.emit('beforeInit');

      // Set breakpoint
      if (swiper.params.breakpoints) {
        swiper.setBreakpoint();
      }

      // Add Classes
      swiper.addClasses();

      // Create loop
      if (swiper.params.loop) {
        swiper.loopCreate();
      }

      // Update size
      swiper.updateSize();

      // Update slides
      swiper.updateSlides();

      if (swiper.params.watchOverflow) {
        swiper.checkOverflow();
      }

      // Set Grab Cursor
      if (swiper.params.grabCursor) {
        swiper.setGrabCursor();
      }

      if (swiper.params.preloadImages) {
        swiper.preloadImages();
      }

      // Slide To Initial Slide
      if (swiper.params.loop) {
        swiper.slideTo(swiper.params.initialSlide + swiper.loopedSlides, 0, swiper.params.runCallbacksOnInit);
      } else {
        swiper.slideTo(swiper.params.initialSlide, 0, swiper.params.runCallbacksOnInit);
      }

      // Attach events
      swiper.attachEvents();

      // Init Flag
      swiper.initialized = true;

      // Emit
      swiper.emit('init');
    };

    Swiper.prototype.destroy = function destroy (deleteInstance, cleanStyles) {
      if ( deleteInstance === void 0 ) deleteInstance = true;
      if ( cleanStyles === void 0 ) cleanStyles = true;

      var swiper = this;
      var params = swiper.params;
      var $el = swiper.$el;
      var $wrapperEl = swiper.$wrapperEl;
      var slides = swiper.slides;

      if (typeof swiper.params === 'undefined' || swiper.destroyed) {
        return null;
      }

      swiper.emit('beforeDestroy');

      // Init Flag
      swiper.initialized = false;

      // Detach events
      swiper.detachEvents();

      // Destroy loop
      if (params.loop) {
        swiper.loopDestroy();
      }

      // Cleanup styles
      if (cleanStyles) {
        swiper.removeClasses();
        $el.removeAttr('style');
        $wrapperEl.removeAttr('style');
        if (slides && slides.length) {
          slides
            .removeClass([
              params.slideVisibleClass,
              params.slideActiveClass,
              params.slideNextClass,
              params.slidePrevClass ].join(' '))
            .removeAttr('style')
            .removeAttr('data-swiper-slide-index');
        }
      }

      swiper.emit('destroy');

      // Detach emitter events
      Object.keys(swiper.eventsListeners).forEach(function (eventName) {
        swiper.off(eventName);
      });

      if (deleteInstance !== false) {
        swiper.$el[0].swiper = null;
        swiper.$el.data('swiper', null);
        Utils.deleteProps(swiper);
      }
      swiper.destroyed = true;

      return null;
    };

    Swiper.extendDefaults = function extendDefaults (newDefaults) {
      Utils.extend(extendedDefaults, newDefaults);
    };

    staticAccessors.extendedDefaults.get = function () {
      return extendedDefaults;
    };

    staticAccessors.defaults.get = function () {
      return defaults;
    };

    staticAccessors.Class.get = function () {
      return SwiperClass;
    };

    staticAccessors.$.get = function () {
      return $;
    };

    Object.defineProperties( Swiper, staticAccessors );

    return Swiper;
  }(SwiperClass));

  var Device$1 = {
    name: 'device',
    proto: {
      device: Device,
    },
    static: {
      device: Device,
    },
  };

  var Support$1 = {
    name: 'support',
    proto: {
      support: Support,
    },
    static: {
      support: Support,
    },
  };

  var Browser = (function Browser() {
    function isSafari() {
      var ua = win.navigator.userAgent.toLowerCase();
      return (ua.indexOf('safari') >= 0 && ua.indexOf('chrome') < 0 && ua.indexOf('android') < 0);
    }
    return {
      isEdge: !!win.navigator.userAgent.match(/Edge/g),
      isSafari: isSafari(),
      isUiWebView: /(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test(win.navigator.userAgent),
    };
  }());

  var Browser$1 = {
    name: 'browser',
    proto: {
      browser: Browser,
    },
    static: {
      browser: Browser,
    },
  };

  var Resize = {
    name: 'resize',
    create: function create() {
      var swiper = this;
      Utils.extend(swiper, {
        resize: {
          resizeHandler: function resizeHandler() {
            if (!swiper || swiper.destroyed || !swiper.initialized) { return; }
            swiper.emit('beforeResize');
            swiper.emit('resize');
          },
          orientationChangeHandler: function orientationChangeHandler() {
            if (!swiper || swiper.destroyed || !swiper.initialized) { return; }
            swiper.emit('orientationchange');
          },
        },
      });
    },
    on: {
      init: function init() {
        var swiper = this;
        // Emit resize
        win.addEventListener('resize', swiper.resize.resizeHandler);

        // Emit orientationchange
        win.addEventListener('orientationchange', swiper.resize.orientationChangeHandler);
      },
      destroy: function destroy() {
        var swiper = this;
        win.removeEventListener('resize', swiper.resize.resizeHandler);
        win.removeEventListener('orientationchange', swiper.resize.orientationChangeHandler);
      },
    },
  };

  var Observer = {
    func: win.MutationObserver || win.WebkitMutationObserver,
    attach: function attach(target, options) {
      if ( options === void 0 ) options = {};

      var swiper = this;

      var ObserverFunc = Observer.func;
      var observer = new ObserverFunc(function (mutations) {
        // The observerUpdate event should only be triggered
        // once despite the number of mutations.  Additional
        // triggers are redundant and are very costly
        if (mutations.length === 1) {
          swiper.emit('observerUpdate', mutations[0]);
          return;
        }
        var observerUpdate = function observerUpdate() {
          swiper.emit('observerUpdate', mutations[0]);
        };

        if (win.requestAnimationFrame) {
          win.requestAnimationFrame(observerUpdate);
        } else {
          win.setTimeout(observerUpdate, 0);
        }
      });

      observer.observe(target, {
        attributes: typeof options.attributes === 'undefined' ? true : options.attributes,
        childList: typeof options.childList === 'undefined' ? true : options.childList,
        characterData: typeof options.characterData === 'undefined' ? true : options.characterData,
      });

      swiper.observer.observers.push(observer);
    },
    init: function init() {
      var swiper = this;
      if (!Support.observer || !swiper.params.observer) { return; }
      if (swiper.params.observeParents) {
        var containerParents = swiper.$el.parents();
        for (var i = 0; i < containerParents.length; i += 1) {
          swiper.observer.attach(containerParents[i]);
        }
      }
      // Observe container
      swiper.observer.attach(swiper.$el[0], { childList: swiper.params.observeSlideChildren });

      // Observe wrapper
      swiper.observer.attach(swiper.$wrapperEl[0], { attributes: false });
    },
    destroy: function destroy() {
      var swiper = this;
      swiper.observer.observers.forEach(function (observer) {
        observer.disconnect();
      });
      swiper.observer.observers = [];
    },
  };

  var Observer$1 = {
    name: 'observer',
    params: {
      observer: false,
      observeParents: false,
      observeSlideChildren: false,
    },
    create: function create() {
      var swiper = this;
      Utils.extend(swiper, {
        observer: {
          init: Observer.init.bind(swiper),
          attach: Observer.attach.bind(swiper),
          destroy: Observer.destroy.bind(swiper),
          observers: [],
        },
      });
    },
    on: {
      init: function init() {
        var swiper = this;
        swiper.observer.init();
      },
      destroy: function destroy() {
        var swiper = this;
        swiper.observer.destroy();
      },
    },
  };

  var Virtual = {
    update: function update(force) {
      var swiper = this;
      var ref = swiper.params;
      var slidesPerView = ref.slidesPerView;
      var slidesPerGroup = ref.slidesPerGroup;
      var centeredSlides = ref.centeredSlides;
      var ref$1 = swiper.params.virtual;
      var addSlidesBefore = ref$1.addSlidesBefore;
      var addSlidesAfter = ref$1.addSlidesAfter;
      var ref$2 = swiper.virtual;
      var previousFrom = ref$2.from;
      var previousTo = ref$2.to;
      var slides = ref$2.slides;
      var previousSlidesGrid = ref$2.slidesGrid;
      var renderSlide = ref$2.renderSlide;
      var previousOffset = ref$2.offset;
      swiper.updateActiveIndex();
      var activeIndex = swiper.activeIndex || 0;

      var offsetProp;
      if (swiper.rtlTranslate) { offsetProp = 'right'; }
      else { offsetProp = swiper.isHorizontal() ? 'left' : 'top'; }

      var slidesAfter;
      var slidesBefore;
      if (centeredSlides) {
        slidesAfter = Math.floor(slidesPerView / 2) + slidesPerGroup + addSlidesBefore;
        slidesBefore = Math.floor(slidesPerView / 2) + slidesPerGroup + addSlidesAfter;
      } else {
        slidesAfter = slidesPerView + (slidesPerGroup - 1) + addSlidesBefore;
        slidesBefore = slidesPerGroup + addSlidesAfter;
      }
      var from = Math.max((activeIndex || 0) - slidesBefore, 0);
      var to = Math.min((activeIndex || 0) + slidesAfter, slides.length - 1);
      var offset = (swiper.slidesGrid[from] || 0) - (swiper.slidesGrid[0] || 0);

      Utils.extend(swiper.virtual, {
        from: from,
        to: to,
        offset: offset,
        slidesGrid: swiper.slidesGrid,
      });

      function onRendered() {
        swiper.updateSlides();
        swiper.updateProgress();
        swiper.updateSlidesClasses();
        if (swiper.lazy && swiper.params.lazy.enabled) {
          swiper.lazy.load();
        }
      }

      if (previousFrom === from && previousTo === to && !force) {
        if (swiper.slidesGrid !== previousSlidesGrid && offset !== previousOffset) {
          swiper.slides.css(offsetProp, (offset + "px"));
        }
        swiper.updateProgress();
        return;
      }
      if (swiper.params.virtual.renderExternal) {
        swiper.params.virtual.renderExternal.call(swiper, {
          offset: offset,
          from: from,
          to: to,
          slides: (function getSlides() {
            var slidesToRender = [];
            for (var i = from; i <= to; i += 1) {
              slidesToRender.push(slides[i]);
            }
            return slidesToRender;
          }()),
        });
        onRendered();
        return;
      }
      var prependIndexes = [];
      var appendIndexes = [];
      if (force) {
        swiper.$wrapperEl.find(("." + (swiper.params.slideClass))).remove();
      } else {
        for (var i = previousFrom; i <= previousTo; i += 1) {
          if (i < from || i > to) {
            swiper.$wrapperEl.find(("." + (swiper.params.slideClass) + "[data-swiper-slide-index=\"" + i + "\"]")).remove();
          }
        }
      }
      for (var i$1 = 0; i$1 < slides.length; i$1 += 1) {
        if (i$1 >= from && i$1 <= to) {
          if (typeof previousTo === 'undefined' || force) {
            appendIndexes.push(i$1);
          } else {
            if (i$1 > previousTo) { appendIndexes.push(i$1); }
            if (i$1 < previousFrom) { prependIndexes.push(i$1); }
          }
        }
      }
      appendIndexes.forEach(function (index) {
        swiper.$wrapperEl.append(renderSlide(slides[index], index));
      });
      prependIndexes.sort(function (a, b) { return b - a; }).forEach(function (index) {
        swiper.$wrapperEl.prepend(renderSlide(slides[index], index));
      });
      swiper.$wrapperEl.children('.swiper-slide').css(offsetProp, (offset + "px"));
      onRendered();
    },
    renderSlide: function renderSlide(slide, index) {
      var swiper = this;
      var params = swiper.params.virtual;
      if (params.cache && swiper.virtual.cache[index]) {
        return swiper.virtual.cache[index];
      }
      var $slideEl = params.renderSlide
        ? $(params.renderSlide.call(swiper, slide, index))
        : $(("<div class=\"" + (swiper.params.slideClass) + "\" data-swiper-slide-index=\"" + index + "\">" + slide + "</div>"));
      if (!$slideEl.attr('data-swiper-slide-index')) { $slideEl.attr('data-swiper-slide-index', index); }
      if (params.cache) { swiper.virtual.cache[index] = $slideEl; }
      return $slideEl;
    },
    appendSlide: function appendSlide(slides) {
      var swiper = this;
      if (typeof slides === 'object' && 'length' in slides) {
        for (var i = 0; i < slides.length; i += 1) {
          if (slides[i]) { swiper.virtual.slides.push(slides[i]); }
        }
      } else {
        swiper.virtual.slides.push(slides);
      }
      swiper.virtual.update(true);
    },
    prependSlide: function prependSlide(slides) {
      var swiper = this;
      var activeIndex = swiper.activeIndex;
      var newActiveIndex = activeIndex + 1;
      var numberOfNewSlides = 1;

      if (Array.isArray(slides)) {
        for (var i = 0; i < slides.length; i += 1) {
          if (slides[i]) { swiper.virtual.slides.unshift(slides[i]); }
        }
        newActiveIndex = activeIndex + slides.length;
        numberOfNewSlides = slides.length;
      } else {
        swiper.virtual.slides.unshift(slides);
      }
      if (swiper.params.virtual.cache) {
        var cache = swiper.virtual.cache;
        var newCache = {};
        Object.keys(cache).forEach(function (cachedIndex) {
          var $cachedEl = cache[cachedIndex];
          var cachedElIndex = $cachedEl.attr('data-swiper-slide-index');
          if (cachedElIndex) {
            $cachedEl.attr('data-swiper-slide-index', parseInt(cachedElIndex, 10) + 1);
          }
          newCache[parseInt(cachedIndex, 10) + numberOfNewSlides] = $cachedEl;
        });
        swiper.virtual.cache = newCache;
      }
      swiper.virtual.update(true);
      swiper.slideTo(newActiveIndex, 0);
    },
    removeSlide: function removeSlide(slidesIndexes) {
      var swiper = this;
      if (typeof slidesIndexes === 'undefined' || slidesIndexes === null) { return; }
      var activeIndex = swiper.activeIndex;
      if (Array.isArray(slidesIndexes)) {
        for (var i = slidesIndexes.length - 1; i >= 0; i -= 1) {
          swiper.virtual.slides.splice(slidesIndexes[i], 1);
          if (swiper.params.virtual.cache) {
            delete swiper.virtual.cache[slidesIndexes[i]];
          }
          if (slidesIndexes[i] < activeIndex) { activeIndex -= 1; }
          activeIndex = Math.max(activeIndex, 0);
        }
      } else {
        swiper.virtual.slides.splice(slidesIndexes, 1);
        if (swiper.params.virtual.cache) {
          delete swiper.virtual.cache[slidesIndexes];
        }
        if (slidesIndexes < activeIndex) { activeIndex -= 1; }
        activeIndex = Math.max(activeIndex, 0);
      }
      swiper.virtual.update(true);
      swiper.slideTo(activeIndex, 0);
    },
    removeAllSlides: function removeAllSlides() {
      var swiper = this;
      swiper.virtual.slides = [];
      if (swiper.params.virtual.cache) {
        swiper.virtual.cache = {};
      }
      swiper.virtual.update(true);
      swiper.slideTo(0, 0);
    },
  };

  var Virtual$1 = {
    name: 'virtual',
    params: {
      virtual: {
        enabled: false,
        slides: [],
        cache: true,
        renderSlide: null,
        renderExternal: null,
        addSlidesBefore: 0,
        addSlidesAfter: 0,
      },
    },
    create: function create() {
      var swiper = this;
      Utils.extend(swiper, {
        virtual: {
          update: Virtual.update.bind(swiper),
          appendSlide: Virtual.appendSlide.bind(swiper),
          prependSlide: Virtual.prependSlide.bind(swiper),
          removeSlide: Virtual.removeSlide.bind(swiper),
          removeAllSlides: Virtual.removeAllSlides.bind(swiper),
          renderSlide: Virtual.renderSlide.bind(swiper),
          slides: swiper.params.virtual.slides,
          cache: {},
        },
      });
    },
    on: {
      beforeInit: function beforeInit() {
        var swiper = this;
        if (!swiper.params.virtual.enabled) { return; }
        swiper.classNames.push(((swiper.params.containerModifierClass) + "virtual"));
        var overwriteParams = {
          watchSlidesProgress: true,
        };
        Utils.extend(swiper.params, overwriteParams);
        Utils.extend(swiper.originalParams, overwriteParams);

        if (!swiper.params.initialSlide) {
          swiper.virtual.update();
        }
      },
      setTranslate: function setTranslate() {
        var swiper = this;
        if (!swiper.params.virtual.enabled) { return; }
        swiper.virtual.update();
      },
    },
  };

  var Keyboard = {
    handle: function handle(event) {
      var swiper = this;
      var rtl = swiper.rtlTranslate;
      var e = event;
      if (e.originalEvent) { e = e.originalEvent; } // jquery fix
      var kc = e.keyCode || e.charCode;
      // Directions locks
      if (!swiper.allowSlideNext && ((swiper.isHorizontal() && kc === 39) || (swiper.isVertical() && kc === 40) || kc === 34)) {
        return false;
      }
      if (!swiper.allowSlidePrev && ((swiper.isHorizontal() && kc === 37) || (swiper.isVertical() && kc === 38) || kc === 33)) {
        return false;
      }
      if (e.shiftKey || e.altKey || e.ctrlKey || e.metaKey) {
        return undefined;
      }
      if (doc.activeElement && doc.activeElement.nodeName && (doc.activeElement.nodeName.toLowerCase() === 'input' || doc.activeElement.nodeName.toLowerCase() === 'textarea')) {
        return undefined;
      }
      if (swiper.params.keyboard.onlyInViewport && (kc === 33 || kc === 34 || kc === 37 || kc === 39 || kc === 38 || kc === 40)) {
        var inView = false;
        // Check that swiper should be inside of visible area of window
        if (swiper.$el.parents(("." + (swiper.params.slideClass))).length > 0 && swiper.$el.parents(("." + (swiper.params.slideActiveClass))).length === 0) {
          return undefined;
        }
        var windowWidth = win.innerWidth;
        var windowHeight = win.innerHeight;
        var swiperOffset = swiper.$el.offset();
        if (rtl) { swiperOffset.left -= swiper.$el[0].scrollLeft; }
        var swiperCoord = [
          [swiperOffset.left, swiperOffset.top],
          [swiperOffset.left + swiper.width, swiperOffset.top],
          [swiperOffset.left, swiperOffset.top + swiper.height],
          [swiperOffset.left + swiper.width, swiperOffset.top + swiper.height] ];
        for (var i = 0; i < swiperCoord.length; i += 1) {
          var point = swiperCoord[i];
          if (
            point[0] >= 0 && point[0] <= windowWidth
            && point[1] >= 0 && point[1] <= windowHeight
          ) {
            inView = true;
          }
        }
        if (!inView) { return undefined; }
      }
      if (swiper.isHorizontal()) {
        if (kc === 33 || kc === 34 || kc === 37 || kc === 39) {
          if (e.preventDefault) { e.preventDefault(); }
          else { e.returnValue = false; }
        }
        if (((kc === 34 || kc === 39) && !rtl) || ((kc === 33 || kc === 37) && rtl)) { swiper.slideNext(); }
        if (((kc === 33 || kc === 37) && !rtl) || ((kc === 34 || kc === 39) && rtl)) { swiper.slidePrev(); }
      } else {
        if (kc === 33 || kc === 34 || kc === 38 || kc === 40) {
          if (e.preventDefault) { e.preventDefault(); }
          else { e.returnValue = false; }
        }
        if (kc === 34 || kc === 40) { swiper.slideNext(); }
        if (kc === 33 || kc === 38) { swiper.slidePrev(); }
      }
      swiper.emit('keyPress', kc);
      return undefined;
    },
    enable: function enable() {
      var swiper = this;
      if (swiper.keyboard.enabled) { return; }
      $(doc).on('keydown', swiper.keyboard.handle);
      swiper.keyboard.enabled = true;
    },
    disable: function disable() {
      var swiper = this;
      if (!swiper.keyboard.enabled) { return; }
      $(doc).off('keydown', swiper.keyboard.handle);
      swiper.keyboard.enabled = false;
    },
  };

  var Keyboard$1 = {
    name: 'keyboard',
    params: {
      keyboard: {
        enabled: false,
        onlyInViewport: true,
      },
    },
    create: function create() {
      var swiper = this;
      Utils.extend(swiper, {
        keyboard: {
          enabled: false,
          enable: Keyboard.enable.bind(swiper),
          disable: Keyboard.disable.bind(swiper),
          handle: Keyboard.handle.bind(swiper),
        },
      });
    },
    on: {
      init: function init() {
        var swiper = this;
        if (swiper.params.keyboard.enabled) {
          swiper.keyboard.enable();
        }
      },
      destroy: function destroy() {
        var swiper = this;
        if (swiper.keyboard.enabled) {
          swiper.keyboard.disable();
        }
      },
    },
  };

  function isEventSupported() {
    var eventName = 'onwheel';
    var isSupported = eventName in doc;

    if (!isSupported) {
      var element = doc.createElement('div');
      element.setAttribute(eventName, 'return;');
      isSupported = typeof element[eventName] === 'function';
    }

    if (!isSupported
      && doc.implementation
      && doc.implementation.hasFeature
      // always returns true in newer browsers as per the standard.
      // @see http://dom.spec.whatwg.org/#dom-domimplementation-hasfeature
      && doc.implementation.hasFeature('', '') !== true
    ) {
      // This is the only way to test support for the `wheel` event in IE9+.
      isSupported = doc.implementation.hasFeature('Events.wheel', '3.0');
    }

    return isSupported;
  }
  var Mousewheel = {
    lastScrollTime: Utils.now(),
    lastEventBeforeSnap: undefined,
    recentWheelEvents: [],
    event: function event() {
      if (win.navigator.userAgent.indexOf('firefox') > -1) { return 'DOMMouseScroll'; }
      return isEventSupported() ? 'wheel' : 'mousewheel';
    },
    normalize: function normalize(e) {
      // Reasonable defaults
      var PIXEL_STEP = 10;
      var LINE_HEIGHT = 40;
      var PAGE_HEIGHT = 800;

      var sX = 0;
      var sY = 0; // spinX, spinY
      var pX = 0;
      var pY = 0; // pixelX, pixelY

      // Legacy
      if ('detail' in e) {
        sY = e.detail;
      }
      if ('wheelDelta' in e) {
        sY = -e.wheelDelta / 120;
      }
      if ('wheelDeltaY' in e) {
        sY = -e.wheelDeltaY / 120;
      }
      if ('wheelDeltaX' in e) {
        sX = -e.wheelDeltaX / 120;
      }

      // side scrolling on FF with DOMMouseScroll
      if ('axis' in e && e.axis === e.HORIZONTAL_AXIS) {
        sX = sY;
        sY = 0;
      }

      pX = sX * PIXEL_STEP;
      pY = sY * PIXEL_STEP;

      if ('deltaY' in e) {
        pY = e.deltaY;
      }
      if ('deltaX' in e) {
        pX = e.deltaX;
      }

      if (e.shiftKey && !pX) { // if user scrolls with shift he wants horizontal scroll
        pX = pY;
        pY = 0;
      }

      if ((pX || pY) && e.deltaMode) {
        if (e.deltaMode === 1) { // delta in LINE units
          pX *= LINE_HEIGHT;
          pY *= LINE_HEIGHT;
        } else { // delta in PAGE units
          pX *= PAGE_HEIGHT;
          pY *= PAGE_HEIGHT;
        }
      }

      // Fall-back if spin cannot be determined
      if (pX && !sX) {
        sX = (pX < 1) ? -1 : 1;
      }
      if (pY && !sY) {
        sY = (pY < 1) ? -1 : 1;
      }

      return {
        spinX: sX,
        spinY: sY,
        pixelX: pX,
        pixelY: pY,
      };
    },
    handleMouseEnter: function handleMouseEnter() {
      var swiper = this;
      swiper.mouseEntered = true;
    },
    handleMouseLeave: function handleMouseLeave() {
      var swiper = this;
      swiper.mouseEntered = false;
    },
    handle: function handle(event) {
      var e = event;
      var swiper = this;
      var params = swiper.params.mousewheel;

      if (swiper.params.cssMode) {
        e.preventDefault();
      }

      var target = swiper.$el;
      if (swiper.params.mousewheel.eventsTarged !== 'container') {
        target = $(swiper.params.mousewheel.eventsTarged);
      }
      if (!swiper.mouseEntered && !target[0].contains(e.target) && !params.releaseOnEdges) { return true; }

      if (e.originalEvent) { e = e.originalEvent; } // jquery fix
      var delta = 0;
      var rtlFactor = swiper.rtlTranslate ? -1 : 1;

      var data = Mousewheel.normalize(e);

      if (params.forceToAxis) {
        if (swiper.isHorizontal()) {
          if (Math.abs(data.pixelX) > Math.abs(data.pixelY)) { delta = data.pixelX * rtlFactor; }
          else { return true; }
        } else if (Math.abs(data.pixelY) > Math.abs(data.pixelX)) { delta = data.pixelY; }
        else { return true; }
      } else {
        delta = Math.abs(data.pixelX) > Math.abs(data.pixelY) ? -data.pixelX * rtlFactor : -data.pixelY;
      }

      if (delta === 0) { return true; }

      if (params.invert) { delta = -delta; }

      if (!swiper.params.freeMode) {
        // Register the new event in a variable which stores the relevant data
        var newEvent = {
          time: Utils.now(),
          delta: Math.abs(delta),
          direction: Math.sign(delta),
          raw: event,
        };

        // Keep the most recent events
        var recentWheelEvents = swiper.mousewheel.recentWheelEvents;
        if (recentWheelEvents.length >= 2) {
          recentWheelEvents.shift(); // only store the last N events
        }
        var prevEvent = recentWheelEvents.length ? recentWheelEvents[recentWheelEvents.length - 1] : undefined;
        recentWheelEvents.push(newEvent);

        // If there is at least one previous recorded event:
        //   If direction has changed or
        //   if the scroll is quicker than the previous one:
        //     Animate the slider.
        // Else (this is the first time the wheel is moved):
        //     Animate the slider.
        if (prevEvent) {
          if (newEvent.direction !== prevEvent.direction || newEvent.delta > prevEvent.delta) {
            swiper.mousewheel.animateSlider(newEvent);
          }
        } else {
          swiper.mousewheel.animateSlider(newEvent);
        }

        // If it's time to release the scroll:
        //   Return now so you don't hit the preventDefault.
        if (swiper.mousewheel.releaseScroll(newEvent)) {
          return true;
        }
      } else {
        // Freemode or scrollContainer:

        // If we recently snapped after a momentum scroll, then ignore wheel events
        // to give time for the deceleration to finish. Stop ignoring after 500 msecs
        // or if it's a new scroll (larger delta or inverse sign as last event before
        // an end-of-momentum snap).
        var newEvent$1 = { time: Utils.now(), delta: Math.abs(delta), direction: Math.sign(delta) };
        var ref = swiper.mousewheel;
        var lastEventBeforeSnap = ref.lastEventBeforeSnap;
        var ignoreWheelEvents = lastEventBeforeSnap
          && newEvent$1.time < lastEventBeforeSnap.time + 500
          && newEvent$1.delta <= lastEventBeforeSnap.delta
          && newEvent$1.direction === lastEventBeforeSnap.direction;
        if (!ignoreWheelEvents) {
          swiper.mousewheel.lastEventBeforeSnap = undefined;

          if (swiper.params.loop) {
            swiper.loopFix();
          }
          var position = swiper.getTranslate() + (delta * params.sensitivity);
          var wasBeginning = swiper.isBeginning;
          var wasEnd = swiper.isEnd;

          if (position >= swiper.minTranslate()) { position = swiper.minTranslate(); }
          if (position <= swiper.maxTranslate()) { position = swiper.maxTranslate(); }

          swiper.setTransition(0);
          swiper.setTranslate(position);
          swiper.updateProgress();
          swiper.updateActiveIndex();
          swiper.updateSlidesClasses();

          if ((!wasBeginning && swiper.isBeginning) || (!wasEnd && swiper.isEnd)) {
            swiper.updateSlidesClasses();
          }

          if (swiper.params.freeModeSticky) {
            // When wheel scrolling starts with sticky (aka snap) enabled, then detect
            // the end of a momentum scroll by storing recent (N=15?) wheel events.
            // 1. do all N events have decreasing or same (absolute value) delta?
            // 2. did all N events arrive in the last M (M=500?) msecs?
            // 3. does the earliest event have an (absolute value) delta that's
            //    at least P (P=1?) larger than the most recent event's delta?
            // 4. does the latest event have a delta that's smaller than Q (Q=6?) pixels?
            // If 1-4 are "yes" then we're near the end of a momuntum scroll deceleration.
            // Snap immediately and ignore remaining wheel events in this scroll.
            // See comment above for "remaining wheel events in this scroll" determination.
            // If 1-4 aren't satisfied, then wait to snap until 500ms after the last event.
            clearTimeout(swiper.mousewheel.timeout);
            swiper.mousewheel.timeout = undefined;
            var recentWheelEvents$1 = swiper.mousewheel.recentWheelEvents;
            if (recentWheelEvents$1.length >= 15) {
              recentWheelEvents$1.shift(); // only store the last N events
            }
            var prevEvent$1 = recentWheelEvents$1.length ? recentWheelEvents$1[recentWheelEvents$1.length - 1] : undefined;
            var firstEvent = recentWheelEvents$1[0];
            recentWheelEvents$1.push(newEvent$1);
            if (prevEvent$1 && (newEvent$1.delta > prevEvent$1.delta || newEvent$1.direction !== prevEvent$1.direction)) {
              // Increasing or reverse-sign delta means the user started scrolling again. Clear the wheel event log.
              recentWheelEvents$1.splice(0);
            } else if (recentWheelEvents$1.length >= 15
                && newEvent$1.time - firstEvent.time < 500
                && firstEvent.delta - newEvent$1.delta >= 1
                && newEvent$1.delta <= 6
            ) {
              // We're at the end of the deceleration of a momentum scroll, so there's no need
              // to wait for more events. Snap ASAP on the next tick.
              // Also, because there's some remaining momentum we'll bias the snap in the
              // direction of the ongoing scroll because it's better UX for the scroll to snap
              // in the same direction as the scroll instead of reversing to snap.  Therefore,
              // if it's already scrolled more than 20% in the current direction, keep going.
              var snapToThreshold = delta > 0 ? 0.8 : 0.2;
              swiper.mousewheel.lastEventBeforeSnap = newEvent$1;
              recentWheelEvents$1.splice(0);
              swiper.mousewheel.timeout = Utils.nextTick(function () {
                swiper.slideToClosest(swiper.params.speed, true, undefined, snapToThreshold);
              }, 0); // no delay; move on next tick
            }
            if (!swiper.mousewheel.timeout) {
              // if we get here, then we haven't detected the end of a momentum scroll, so
              // we'll consider a scroll "complete" when there haven't been any wheel events
              // for 500ms.
              swiper.mousewheel.timeout = Utils.nextTick(function () {
                var snapToThreshold = 0.5;
                swiper.mousewheel.lastEventBeforeSnap = newEvent$1;
                recentWheelEvents$1.splice(0);
                swiper.slideToClosest(swiper.params.speed, true, undefined, snapToThreshold);
              }, 500);
            }
          }

          // Emit event
          if (!ignoreWheelEvents) { swiper.emit('scroll', e); }

          // Stop autoplay
          if (swiper.params.autoplay && swiper.params.autoplayDisableOnInteraction) { swiper.autoplay.stop(); }
          // Return page scroll on edge positions
          if (position === swiper.minTranslate() || position === swiper.maxTranslate()) { return true; }
        }
      }

      if (e.preventDefault) { e.preventDefault(); }
      else { e.returnValue = false; }
      return false;
    },
    animateSlider: function animateSlider(newEvent) {
      var swiper = this;
      // If the movement is NOT big enough and
      // if the last time the user scrolled was too close to the current one (avoid continuously triggering the slider):
      //   Don't go any further (avoid insignificant scroll movement).
      if (newEvent.delta >= 6 && Utils.now() - swiper.mousewheel.lastScrollTime < 60) {
        // Return false as a default
        return true;
      }
      // If user is scrolling towards the end:
      //   If the slider hasn't hit the latest slide or
      //   if the slider is a loop and
      //   if the slider isn't moving right now:
      //     Go to next slide and
      //     emit a scroll event.
      // Else (the user is scrolling towards the beginning) and
      // if the slider hasn't hit the first slide or
      // if the slider is a loop and
      // if the slider isn't moving right now:
      //   Go to prev slide and
      //   emit a scroll event.
      if (newEvent.direction < 0) {
        if ((!swiper.isEnd || swiper.params.loop) && !swiper.animating) {
          swiper.slideNext();
          swiper.emit('scroll', newEvent.raw);
        }
      } else if ((!swiper.isBeginning || swiper.params.loop) && !swiper.animating) {
        swiper.slidePrev();
        swiper.emit('scroll', newEvent.raw);
      }
      // If you got here is because an animation has been triggered so store the current time
      swiper.mousewheel.lastScrollTime = (new win.Date()).getTime();
      // Return false as a default
      return false;
    },
    releaseScroll: function releaseScroll(newEvent) {
      var swiper = this;
      var params = swiper.params.mousewheel;
      if (newEvent.direction < 0) {
        if (swiper.isEnd && !swiper.params.loop && params.releaseOnEdges) {
          // Return true to animate scroll on edges
          return true;
        }
      } else if (swiper.isBeginning && !swiper.params.loop && params.releaseOnEdges) {
        // Return true to animate scroll on edges
        return true;
      }
      return false;
    },
    enable: function enable() {
      var swiper = this;
      var event = Mousewheel.event();
      if (swiper.params.cssMode) {
        swiper.wrapperEl.removeEventListener(event, swiper.mousewheel.handle);
        return true;
      }
      if (!event) { return false; }
      if (swiper.mousewheel.enabled) { return false; }
      var target = swiper.$el;
      if (swiper.params.mousewheel.eventsTarged !== 'container') {
        target = $(swiper.params.mousewheel.eventsTarged);
      }
      target.on('mouseenter', swiper.mousewheel.handleMouseEnter);
      target.on('mouseleave', swiper.mousewheel.handleMouseLeave);
      target.on(event, swiper.mousewheel.handle);
      swiper.mousewheel.enabled = true;
      return true;
    },
    disable: function disable() {
      var swiper = this;
      var event = Mousewheel.event();
      if (swiper.params.cssMode) {
        swiper.wrapperEl.addEventListener(event, swiper.mousewheel.handle);
        return true;
      }
      if (!event) { return false; }
      if (!swiper.mousewheel.enabled) { return false; }
      var target = swiper.$el;
      if (swiper.params.mousewheel.eventsTarged !== 'container') {
        target = $(swiper.params.mousewheel.eventsTarged);
      }
      target.off(event, swiper.mousewheel.handle);
      swiper.mousewheel.enabled = false;
      return true;
    },
  };

  var Mousewheel$1 = {
    name: 'mousewheel',
    params: {
      mousewheel: {
        enabled: false,
        releaseOnEdges: false,
        invert: false,
        forceToAxis: false,
        sensitivity: 1,
        eventsTarged: 'container',
      },
    },
    create: function create() {
      var swiper = this;
      Utils.extend(swiper, {
        mousewheel: {
          enabled: false,
          enable: Mousewheel.enable.bind(swiper),
          disable: Mousewheel.disable.bind(swiper),
          handle: Mousewheel.handle.bind(swiper),
          handleMouseEnter: Mousewheel.handleMouseEnter.bind(swiper),
          handleMouseLeave: Mousewheel.handleMouseLeave.bind(swiper),
          animateSlider: Mousewheel.animateSlider.bind(swiper),
          releaseScroll: Mousewheel.releaseScroll.bind(swiper),
          lastScrollTime: Utils.now(),
          lastEventBeforeSnap: undefined,
          recentWheelEvents: [],
        },
      });
    },
    on: {
      init: function init() {
        var swiper = this;
        if (!swiper.params.mousewheel.enabled && swiper.params.cssMode) {
          swiper.mousewheel.disable();
        }
        if (swiper.params.mousewheel.enabled) { swiper.mousewheel.enable(); }
      },
      destroy: function destroy() {
        var swiper = this;
        if (swiper.params.cssMode) {
          swiper.mousewheel.enable();
        }
        if (swiper.mousewheel.enabled) { swiper.mousewheel.disable(); }
      },
    },
  };

  var Navigation = {
    update: function update() {
      // Update Navigation Buttons
      var swiper = this;
      var params = swiper.params.navigation;

      if (swiper.params.loop) { return; }
      var ref = swiper.navigation;
      var $nextEl = ref.$nextEl;
      var $prevEl = ref.$prevEl;

      if ($prevEl && $prevEl.length > 0) {
        if (swiper.isBeginning) {
          $prevEl.addClass(params.disabledClass);
        } else {
          $prevEl.removeClass(params.disabledClass);
        }
        $prevEl[swiper.params.watchOverflow && swiper.isLocked ? 'addClass' : 'removeClass'](params.lockClass);
      }
      if ($nextEl && $nextEl.length > 0) {
        if (swiper.isEnd) {
          $nextEl.addClass(params.disabledClass);
        } else {
          $nextEl.removeClass(params.disabledClass);
        }
        $nextEl[swiper.params.watchOverflow && swiper.isLocked ? 'addClass' : 'removeClass'](params.lockClass);
      }
    },
    onPrevClick: function onPrevClick(e) {
      var swiper = this;
      e.preventDefault();
      if (swiper.isBeginning && !swiper.params.loop) { return; }
      swiper.slidePrev();
    },
    onNextClick: function onNextClick(e) {
      var swiper = this;
      e.preventDefault();
      if (swiper.isEnd && !swiper.params.loop) { return; }
      swiper.slideNext();
    },
    init: function init() {
      var swiper = this;
      var params = swiper.params.navigation;
      if (!(params.nextEl || params.prevEl)) { return; }

      var $nextEl;
      var $prevEl;
      if (params.nextEl) {
        $nextEl = $(params.nextEl);
        if (
          swiper.params.uniqueNavElements
          && typeof params.nextEl === 'string'
          && $nextEl.length > 1
          && swiper.$el.find(params.nextEl).length === 1
        ) {
          $nextEl = swiper.$el.find(params.nextEl);
        }
      }
      if (params.prevEl) {
        $prevEl = $(params.prevEl);
        if (
          swiper.params.uniqueNavElements
          && typeof params.prevEl === 'string'
          && $prevEl.length > 1
          && swiper.$el.find(params.prevEl).length === 1
        ) {
          $prevEl = swiper.$el.find(params.prevEl);
        }
      }

      if ($nextEl && $nextEl.length > 0) {
        $nextEl.on('click', swiper.navigation.onNextClick);
      }
      if ($prevEl && $prevEl.length > 0) {
        $prevEl.on('click', swiper.navigation.onPrevClick);
      }

      Utils.extend(swiper.navigation, {
        $nextEl: $nextEl,
        nextEl: $nextEl && $nextEl[0],
        $prevEl: $prevEl,
        prevEl: $prevEl && $prevEl[0],
      });
    },
    destroy: function destroy() {
      var swiper = this;
      var ref = swiper.navigation;
      var $nextEl = ref.$nextEl;
      var $prevEl = ref.$prevEl;
      if ($nextEl && $nextEl.length) {
        $nextEl.off('click', swiper.navigation.onNextClick);
        $nextEl.removeClass(swiper.params.navigation.disabledClass);
      }
      if ($prevEl && $prevEl.length) {
        $prevEl.off('click', swiper.navigation.onPrevClick);
        $prevEl.removeClass(swiper.params.navigation.disabledClass);
      }
    },
  };

  var Navigation$1 = {
    name: 'navigation',
    params: {
      navigation: {
        nextEl: null,
        prevEl: null,

        hideOnClick: false,
        disabledClass: 'swiper-button-disabled',
        hiddenClass: 'swiper-button-hidden',
        lockClass: 'swiper-button-lock',
      },
    },
    create: function create() {
      var swiper = this;
      Utils.extend(swiper, {
        navigation: {
          init: Navigation.init.bind(swiper),
          update: Navigation.update.bind(swiper),
          destroy: Navigation.destroy.bind(swiper),
          onNextClick: Navigation.onNextClick.bind(swiper),
          onPrevClick: Navigation.onPrevClick.bind(swiper),
        },
      });
    },
    on: {
      init: function init() {
        var swiper = this;
        swiper.navigation.init();
        swiper.navigation.update();
      },
      toEdge: function toEdge() {
        var swiper = this;
        swiper.navigation.update();
      },
      fromEdge: function fromEdge() {
        var swiper = this;
        swiper.navigation.update();
      },
      destroy: function destroy() {
        var swiper = this;
        swiper.navigation.destroy();
      },
      click: function click(e) {
        var swiper = this;
        var ref = swiper.navigation;
        var $nextEl = ref.$nextEl;
        var $prevEl = ref.$prevEl;
        if (
          swiper.params.navigation.hideOnClick
          && !$(e.target).is($prevEl)
          && !$(e.target).is($nextEl)
        ) {
          var isHidden;
          if ($nextEl) {
            isHidden = $nextEl.hasClass(swiper.params.navigation.hiddenClass);
          } else if ($prevEl) {
            isHidden = $prevEl.hasClass(swiper.params.navigation.hiddenClass);
          }
          if (isHidden === true) {
            swiper.emit('navigationShow', swiper);
          } else {
            swiper.emit('navigationHide', swiper);
          }
          if ($nextEl) {
            $nextEl.toggleClass(swiper.params.navigation.hiddenClass);
          }
          if ($prevEl) {
            $prevEl.toggleClass(swiper.params.navigation.hiddenClass);
          }
        }
      },
    },
  };

  var Pagination = {
    update: function update() {
      // Render || Update Pagination bullets/items
      var swiper = this;
      var rtl = swiper.rtl;
      var params = swiper.params.pagination;
      if (!params.el || !swiper.pagination.el || !swiper.pagination.$el || swiper.pagination.$el.length === 0) { return; }
      var slidesLength = swiper.virtual && swiper.params.virtual.enabled ? swiper.virtual.slides.length : swiper.slides.length;
      var $el = swiper.pagination.$el;
      // Current/Total
      var current;
      var total = swiper.params.loop ? Math.ceil((slidesLength - (swiper.loopedSlides * 2)) / swiper.params.slidesPerGroup) : swiper.snapGrid.length;
      if (swiper.params.loop) {
        current = Math.ceil((swiper.activeIndex - swiper.loopedSlides) / swiper.params.slidesPerGroup);
        if (current > slidesLength - 1 - (swiper.loopedSlides * 2)) {
          current -= (slidesLength - (swiper.loopedSlides * 2));
        }
        if (current > total - 1) { current -= total; }
        if (current < 0 && swiper.params.paginationType !== 'bullets') { current = total + current; }
      } else if (typeof swiper.snapIndex !== 'undefined') {
        current = swiper.snapIndex;
      } else {
        current = swiper.activeIndex || 0;
      }
      // Types
      if (params.type === 'bullets' && swiper.pagination.bullets && swiper.pagination.bullets.length > 0) {
        var bullets = swiper.pagination.bullets;
        var firstIndex;
        var lastIndex;
        var midIndex;
        if (params.dynamicBullets) {
          swiper.pagination.bulletSize = bullets.eq(0)[swiper.isHorizontal() ? 'outerWidth' : 'outerHeight'](true);
          $el.css(swiper.isHorizontal() ? 'width' : 'height', ((swiper.pagination.bulletSize * (params.dynamicMainBullets + 4)) + "px"));
          if (params.dynamicMainBullets > 1 && swiper.previousIndex !== undefined) {
            swiper.pagination.dynamicBulletIndex += (current - swiper.previousIndex);
            if (swiper.pagination.dynamicBulletIndex > (params.dynamicMainBullets - 1)) {
              swiper.pagination.dynamicBulletIndex = params.dynamicMainBullets - 1;
            } else if (swiper.pagination.dynamicBulletIndex < 0) {
              swiper.pagination.dynamicBulletIndex = 0;
            }
          }
          firstIndex = current - swiper.pagination.dynamicBulletIndex;
          lastIndex = firstIndex + (Math.min(bullets.length, params.dynamicMainBullets) - 1);
          midIndex = (lastIndex + firstIndex) / 2;
        }
        bullets.removeClass(((params.bulletActiveClass) + " " + (params.bulletActiveClass) + "-next " + (params.bulletActiveClass) + "-next-next " + (params.bulletActiveClass) + "-prev " + (params.bulletActiveClass) + "-prev-prev " + (params.bulletActiveClass) + "-main"));
        if ($el.length > 1) {
          bullets.each(function (index, bullet) {
            var $bullet = $(bullet);
            var bulletIndex = $bullet.index();
            if (bulletIndex === current) {
              $bullet.addClass(params.bulletActiveClass);
            }
            if (params.dynamicBullets) {
              if (bulletIndex >= firstIndex && bulletIndex <= lastIndex) {
                $bullet.addClass(((params.bulletActiveClass) + "-main"));
              }
              if (bulletIndex === firstIndex) {
                $bullet
                  .prev()
                  .addClass(((params.bulletActiveClass) + "-prev"))
                  .prev()
                  .addClass(((params.bulletActiveClass) + "-prev-prev"));
              }
              if (bulletIndex === lastIndex) {
                $bullet
                  .next()
                  .addClass(((params.bulletActiveClass) + "-next"))
                  .next()
                  .addClass(((params.bulletActiveClass) + "-next-next"));
              }
            }
          });
        } else {
          var $bullet = bullets.eq(current);
          var bulletIndex = $bullet.index();
          $bullet.addClass(params.bulletActiveClass);
          if (params.dynamicBullets) {
            var $firstDisplayedBullet = bullets.eq(firstIndex);
            var $lastDisplayedBullet = bullets.eq(lastIndex);
            for (var i = firstIndex; i <= lastIndex; i += 1) {
              bullets.eq(i).addClass(((params.bulletActiveClass) + "-main"));
            }
            if (swiper.params.loop) {
              if (bulletIndex >= bullets.length - params.dynamicMainBullets) {
                for (var i$1 = params.dynamicMainBullets; i$1 >= 0; i$1 -= 1) {
                  bullets.eq(bullets.length - i$1).addClass(((params.bulletActiveClass) + "-main"));
                }
                bullets.eq(bullets.length - params.dynamicMainBullets - 1).addClass(((params.bulletActiveClass) + "-prev"));
              } else {
                $firstDisplayedBullet
                  .prev()
                  .addClass(((params.bulletActiveClass) + "-prev"))
                  .prev()
                  .addClass(((params.bulletActiveClass) + "-prev-prev"));
                $lastDisplayedBullet
                  .next()
                  .addClass(((params.bulletActiveClass) + "-next"))
                  .next()
                  .addClass(((params.bulletActiveClass) + "-next-next"));
              }
            } else {
              $firstDisplayedBullet
                .prev()
                .addClass(((params.bulletActiveClass) + "-prev"))
                .prev()
                .addClass(((params.bulletActiveClass) + "-prev-prev"));
              $lastDisplayedBullet
                .next()
                .addClass(((params.bulletActiveClass) + "-next"))
                .next()
                .addClass(((params.bulletActiveClass) + "-next-next"));
            }
          }
        }
        if (params.dynamicBullets) {
          var dynamicBulletsLength = Math.min(bullets.length, params.dynamicMainBullets + 4);
          var bulletsOffset = (((swiper.pagination.bulletSize * dynamicBulletsLength) - (swiper.pagination.bulletSize)) / 2) - (midIndex * swiper.pagination.bulletSize);
          var offsetProp = rtl ? 'right' : 'left';
          bullets.css(swiper.isHorizontal() ? offsetProp : 'top', (bulletsOffset + "px"));
        }
      }
      if (params.type === 'fraction') {
        $el.find(("." + (params.currentClass))).text(params.formatFractionCurrent(current + 1));
        $el.find(("." + (params.totalClass))).text(params.formatFractionTotal(total));
      }
      if (params.type === 'progressbar') {
        var progressbarDirection;
        if (params.progressbarOpposite) {
          progressbarDirection = swiper.isHorizontal() ? 'vertical' : 'horizontal';
        } else {
          progressbarDirection = swiper.isHorizontal() ? 'horizontal' : 'vertical';
        }
        var scale = (current + 1) / total;
        var scaleX = 1;
        var scaleY = 1;
        if (progressbarDirection === 'horizontal') {
          scaleX = scale;
        } else {
          scaleY = scale;
        }
        $el.find(("." + (params.progressbarFillClass))).transform(("translate3d(0,0,0) scaleX(" + scaleX + ") scaleY(" + scaleY + ")")).transition(swiper.params.speed);
      }
      if (params.type === 'custom' && params.renderCustom) {
        $el.html(params.renderCustom(swiper, current + 1, total));
        swiper.emit('paginationRender', swiper, $el[0]);
      } else {
        swiper.emit('paginationUpdate', swiper, $el[0]);
      }
      $el[swiper.params.watchOverflow && swiper.isLocked ? 'addClass' : 'removeClass'](params.lockClass);
    },
    render: function render() {
      // Render Container
      var swiper = this;
      var params = swiper.params.pagination;
      if (!params.el || !swiper.pagination.el || !swiper.pagination.$el || swiper.pagination.$el.length === 0) { return; }
      var slidesLength = swiper.virtual && swiper.params.virtual.enabled ? swiper.virtual.slides.length : swiper.slides.length;

      var $el = swiper.pagination.$el;
      var paginationHTML = '';
      if (params.type === 'bullets') {
        var numberOfBullets = swiper.params.loop ? Math.ceil((slidesLength - (swiper.loopedSlides * 2)) / swiper.params.slidesPerGroup) : swiper.snapGrid.length;
        for (var i = 0; i < numberOfBullets; i += 1) {
          if (params.renderBullet) {
            paginationHTML += params.renderBullet.call(swiper, i, params.bulletClass);
          } else {
            paginationHTML += "<" + (params.bulletElement) + " class=\"" + (params.bulletClass) + "\"></" + (params.bulletElement) + ">";
          }
        }
        $el.html(paginationHTML);
        swiper.pagination.bullets = $el.find(("." + (params.bulletClass)));
      }
      if (params.type === 'fraction') {
        if (params.renderFraction) {
          paginationHTML = params.renderFraction.call(swiper, params.currentClass, params.totalClass);
        } else {
          paginationHTML = "<span class=\"" + (params.currentClass) + "\"></span>"
          + ' / '
          + "<span class=\"" + (params.totalClass) + "\"></span>";
        }
        $el.html(paginationHTML);
      }
      if (params.type === 'progressbar') {
        if (params.renderProgressbar) {
          paginationHTML = params.renderProgressbar.call(swiper, params.progressbarFillClass);
        } else {
          paginationHTML = "<span class=\"" + (params.progressbarFillClass) + "\"></span>";
        }
        $el.html(paginationHTML);
      }
      if (params.type !== 'custom') {
        swiper.emit('paginationRender', swiper.pagination.$el[0]);
      }
    },
    init: function init() {
      var swiper = this;
      var params = swiper.params.pagination;
      if (!params.el) { return; }

      var $el = $(params.el);
      if ($el.length === 0) { return; }

      if (
        swiper.params.uniqueNavElements
        && typeof params.el === 'string'
        && $el.length > 1
        && swiper.$el.find(params.el).length === 1
      ) {
        $el = swiper.$el.find(params.el);
      }

      if (params.type === 'bullets' && params.clickable) {
        $el.addClass(params.clickableClass);
      }

      $el.addClass(params.modifierClass + params.type);

      if (params.type === 'bullets' && params.dynamicBullets) {
        $el.addClass(("" + (params.modifierClass) + (params.type) + "-dynamic"));
        swiper.pagination.dynamicBulletIndex = 0;
        if (params.dynamicMainBullets < 1) {
          params.dynamicMainBullets = 1;
        }
      }
      if (params.type === 'progressbar' && params.progressbarOpposite) {
        $el.addClass(params.progressbarOppositeClass);
      }

      if (params.clickable) {
        $el.on('click', ("." + (params.bulletClass)), function onClick(e) {
          e.preventDefault();
          var index = $(this).index() * swiper.params.slidesPerGroup;
          if (swiper.params.loop) { index += swiper.loopedSlides; }
          swiper.slideTo(index);
        });
      }

      Utils.extend(swiper.pagination, {
        $el: $el,
        el: $el[0],
      });
    },
    destroy: function destroy() {
      var swiper = this;
      var params = swiper.params.pagination;
      if (!params.el || !swiper.pagination.el || !swiper.pagination.$el || swiper.pagination.$el.length === 0) { return; }
      var $el = swiper.pagination.$el;

      $el.removeClass(params.hiddenClass);
      $el.removeClass(params.modifierClass + params.type);
      if (swiper.pagination.bullets) { swiper.pagination.bullets.removeClass(params.bulletActiveClass); }
      if (params.clickable) {
        $el.off('click', ("." + (params.bulletClass)));
      }
    },
  };

  var Pagination$1 = {
    name: 'pagination',
    params: {
      pagination: {
        el: null,
        bulletElement: 'span',
        clickable: false,
        hideOnClick: false,
        renderBullet: null,
        renderProgressbar: null,
        renderFraction: null,
        renderCustom: null,
        progressbarOpposite: false,
        type: 'bullets', // 'bullets' or 'progressbar' or 'fraction' or 'custom'
        dynamicBullets: false,
        dynamicMainBullets: 1,
        formatFractionCurrent: function (number) { return number; },
        formatFractionTotal: function (number) { return number; },
        bulletClass: 'swiper-pagination-bullet',
        bulletActiveClass: 'swiper-pagination-bullet-active',
        modifierClass: 'swiper-pagination-', // NEW
        currentClass: 'swiper-pagination-current',
        totalClass: 'swiper-pagination-total',
        hiddenClass: 'swiper-pagination-hidden',
        progressbarFillClass: 'swiper-pagination-progressbar-fill',
        progressbarOppositeClass: 'swiper-pagination-progressbar-opposite',
        clickableClass: 'swiper-pagination-clickable', // NEW
        lockClass: 'swiper-pagination-lock',
      },
    },
    create: function create() {
      var swiper = this;
      Utils.extend(swiper, {
        pagination: {
          init: Pagination.init.bind(swiper),
          render: Pagination.render.bind(swiper),
          update: Pagination.update.bind(swiper),
          destroy: Pagination.destroy.bind(swiper),
          dynamicBulletIndex: 0,
        },
      });
    },
    on: {
      init: function init() {
        var swiper = this;
        swiper.pagination.init();
        swiper.pagination.render();
        swiper.pagination.update();
      },
      activeIndexChange: function activeIndexChange() {
        var swiper = this;
        if (swiper.params.loop) {
          swiper.pagination.update();
        } else if (typeof swiper.snapIndex === 'undefined') {
          swiper.pagination.update();
        }
      },
      snapIndexChange: function snapIndexChange() {
        var swiper = this;
        if (!swiper.params.loop) {
          swiper.pagination.update();
        }
      },
      slidesLengthChange: function slidesLengthChange() {
        var swiper = this;
        if (swiper.params.loop) {
          swiper.pagination.render();
          swiper.pagination.update();
        }
      },
      snapGridLengthChange: function snapGridLengthChange() {
        var swiper = this;
        if (!swiper.params.loop) {
          swiper.pagination.render();
          swiper.pagination.update();
        }
      },
      destroy: function destroy() {
        var swiper = this;
        swiper.pagination.destroy();
      },
      click: function click(e) {
        var swiper = this;
        if (
          swiper.params.pagination.el
          && swiper.params.pagination.hideOnClick
          && swiper.pagination.$el.length > 0
          && !$(e.target).hasClass(swiper.params.pagination.bulletClass)
        ) {
          var isHidden = swiper.pagination.$el.hasClass(swiper.params.pagination.hiddenClass);
          if (isHidden === true) {
            swiper.emit('paginationShow', swiper);
          } else {
            swiper.emit('paginationHide', swiper);
          }
          swiper.pagination.$el.toggleClass(swiper.params.pagination.hiddenClass);
        }
      },
    },
  };

  var Scrollbar = {
    setTranslate: function setTranslate() {
      var swiper = this;
      if (!swiper.params.scrollbar.el || !swiper.scrollbar.el) { return; }
      var scrollbar = swiper.scrollbar;
      var rtl = swiper.rtlTranslate;
      var progress = swiper.progress;
      var dragSize = scrollbar.dragSize;
      var trackSize = scrollbar.trackSize;
      var $dragEl = scrollbar.$dragEl;
      var $el = scrollbar.$el;
      var params = swiper.params.scrollbar;

      var newSize = dragSize;
      var newPos = (trackSize - dragSize) * progress;
      if (rtl) {
        newPos = -newPos;
        if (newPos > 0) {
          newSize = dragSize - newPos;
          newPos = 0;
        } else if (-newPos + dragSize > trackSize) {
          newSize = trackSize + newPos;
        }
      } else if (newPos < 0) {
        newSize = dragSize + newPos;
        newPos = 0;
      } else if (newPos + dragSize > trackSize) {
        newSize = trackSize - newPos;
      }
      if (swiper.isHorizontal()) {
        $dragEl.transform(("translate3d(" + newPos + "px, 0, 0)"));
        $dragEl[0].style.width = newSize + "px";
      } else {
        $dragEl.transform(("translate3d(0px, " + newPos + "px, 0)"));
        $dragEl[0].style.height = newSize + "px";
      }
      if (params.hide) {
        clearTimeout(swiper.scrollbar.timeout);
        $el[0].style.opacity = 1;
        swiper.scrollbar.timeout = setTimeout(function () {
          $el[0].style.opacity = 0;
          $el.transition(400);
        }, 1000);
      }
    },
    setTransition: function setTransition(duration) {
      var swiper = this;
      if (!swiper.params.scrollbar.el || !swiper.scrollbar.el) { return; }
      swiper.scrollbar.$dragEl.transition(duration);
    },
    updateSize: function updateSize() {
      var swiper = this;
      if (!swiper.params.scrollbar.el || !swiper.scrollbar.el) { return; }

      var scrollbar = swiper.scrollbar;
      var $dragEl = scrollbar.$dragEl;
      var $el = scrollbar.$el;

      $dragEl[0].style.width = '';
      $dragEl[0].style.height = '';
      var trackSize = swiper.isHorizontal() ? $el[0].offsetWidth : $el[0].offsetHeight;

      var divider = swiper.size / swiper.virtualSize;
      var moveDivider = divider * (trackSize / swiper.size);
      var dragSize;
      if (swiper.params.scrollbar.dragSize === 'auto') {
        dragSize = trackSize * divider;
      } else {
        dragSize = parseInt(swiper.params.scrollbar.dragSize, 10);
      }

      if (swiper.isHorizontal()) {
        $dragEl[0].style.width = dragSize + "px";
      } else {
        $dragEl[0].style.height = dragSize + "px";
      }

      if (divider >= 1) {
        $el[0].style.display = 'none';
      } else {
        $el[0].style.display = '';
      }
      if (swiper.params.scrollbar.hide) {
        $el[0].style.opacity = 0;
      }
      Utils.extend(scrollbar, {
        trackSize: trackSize,
        divider: divider,
        moveDivider: moveDivider,
        dragSize: dragSize,
      });
      scrollbar.$el[swiper.params.watchOverflow && swiper.isLocked ? 'addClass' : 'removeClass'](swiper.params.scrollbar.lockClass);
    },
    getPointerPosition: function getPointerPosition(e) {
      var swiper = this;
      if (swiper.isHorizontal()) {
        return ((e.type === 'touchstart' || e.type === 'touchmove') ? e.targetTouches[0].clientX : e.clientX);
      }
      return ((e.type === 'touchstart' || e.type === 'touchmove') ? e.targetTouches[0].clientY : e.clientY);
    },
    setDragPosition: function setDragPosition(e) {
      var swiper = this;
      var scrollbar = swiper.scrollbar;
      var rtl = swiper.rtlTranslate;
      var $el = scrollbar.$el;
      var dragSize = scrollbar.dragSize;
      var trackSize = scrollbar.trackSize;
      var dragStartPos = scrollbar.dragStartPos;

      var positionRatio;
      positionRatio = ((scrollbar.getPointerPosition(e)) - $el.offset()[swiper.isHorizontal() ? 'left' : 'top']
        - (dragStartPos !== null ? dragStartPos : dragSize / 2)) / (trackSize - dragSize);
      positionRatio = Math.max(Math.min(positionRatio, 1), 0);
      if (rtl) {
        positionRatio = 1 - positionRatio;
      }

      var position = swiper.minTranslate() + ((swiper.maxTranslate() - swiper.minTranslate()) * positionRatio);

      swiper.updateProgress(position);
      swiper.setTranslate(position);
      swiper.updateActiveIndex();
      swiper.updateSlidesClasses();
    },
    onDragStart: function onDragStart(e) {
      var swiper = this;
      var params = swiper.params.scrollbar;
      var scrollbar = swiper.scrollbar;
      var $wrapperEl = swiper.$wrapperEl;
      var $el = scrollbar.$el;
      var $dragEl = scrollbar.$dragEl;
      swiper.scrollbar.isTouched = true;
      swiper.scrollbar.dragStartPos = (e.target === $dragEl[0] || e.target === $dragEl)
        ? scrollbar.getPointerPosition(e) - e.target.getBoundingClientRect()[swiper.isHorizontal() ? 'left' : 'top'] : null;
      e.preventDefault();
      e.stopPropagation();

      $wrapperEl.transition(100);
      $dragEl.transition(100);
      scrollbar.setDragPosition(e);

      clearTimeout(swiper.scrollbar.dragTimeout);

      $el.transition(0);
      if (params.hide) {
        $el.css('opacity', 1);
      }
      if (swiper.params.cssMode) {
        swiper.$wrapperEl.css('scroll-snap-type', 'none');
      }
      swiper.emit('scrollbarDragStart', e);
    },
    onDragMove: function onDragMove(e) {
      var swiper = this;
      var scrollbar = swiper.scrollbar;
      var $wrapperEl = swiper.$wrapperEl;
      var $el = scrollbar.$el;
      var $dragEl = scrollbar.$dragEl;

      if (!swiper.scrollbar.isTouched) { return; }
      if (e.preventDefault) { e.preventDefault(); }
      else { e.returnValue = false; }
      scrollbar.setDragPosition(e);
      $wrapperEl.transition(0);
      $el.transition(0);
      $dragEl.transition(0);
      swiper.emit('scrollbarDragMove', e);
    },
    onDragEnd: function onDragEnd(e) {
      var swiper = this;

      var params = swiper.params.scrollbar;
      var scrollbar = swiper.scrollbar;
      var $wrapperEl = swiper.$wrapperEl;
      var $el = scrollbar.$el;

      if (!swiper.scrollbar.isTouched) { return; }
      swiper.scrollbar.isTouched = false;
      if (swiper.params.cssMode) {
        swiper.$wrapperEl.css('scroll-snap-type', '');
        $wrapperEl.transition('');
      }
      if (params.hide) {
        clearTimeout(swiper.scrollbar.dragTimeout);
        swiper.scrollbar.dragTimeout = Utils.nextTick(function () {
          $el.css('opacity', 0);
          $el.transition(400);
        }, 1000);
      }
      swiper.emit('scrollbarDragEnd', e);
      if (params.snapOnRelease) {
        swiper.slideToClosest();
      }
    },
    enableDraggable: function enableDraggable() {
      var swiper = this;
      if (!swiper.params.scrollbar.el) { return; }
      var scrollbar = swiper.scrollbar;
      var touchEventsTouch = swiper.touchEventsTouch;
      var touchEventsDesktop = swiper.touchEventsDesktop;
      var params = swiper.params;
      var $el = scrollbar.$el;
      var target = $el[0];
      var activeListener = Support.passiveListener && params.passiveListeners ? { passive: false, capture: false } : false;
      var passiveListener = Support.passiveListener && params.passiveListeners ? { passive: true, capture: false } : false;
      if (!Support.touch) {
        target.addEventListener(touchEventsDesktop.start, swiper.scrollbar.onDragStart, activeListener);
        doc.addEventListener(touchEventsDesktop.move, swiper.scrollbar.onDragMove, activeListener);
        doc.addEventListener(touchEventsDesktop.end, swiper.scrollbar.onDragEnd, passiveListener);
      } else {
        target.addEventListener(touchEventsTouch.start, swiper.scrollbar.onDragStart, activeListener);
        target.addEventListener(touchEventsTouch.move, swiper.scrollbar.onDragMove, activeListener);
        target.addEventListener(touchEventsTouch.end, swiper.scrollbar.onDragEnd, passiveListener);
      }
    },
    disableDraggable: function disableDraggable() {
      var swiper = this;
      if (!swiper.params.scrollbar.el) { return; }
      var scrollbar = swiper.scrollbar;
      var touchEventsTouch = swiper.touchEventsTouch;
      var touchEventsDesktop = swiper.touchEventsDesktop;
      var params = swiper.params;
      var $el = scrollbar.$el;
      var target = $el[0];
      var activeListener = Support.passiveListener && params.passiveListeners ? { passive: false, capture: false } : false;
      var passiveListener = Support.passiveListener && params.passiveListeners ? { passive: true, capture: false } : false;
      if (!Support.touch) {
        target.removeEventListener(touchEventsDesktop.start, swiper.scrollbar.onDragStart, activeListener);
        doc.removeEventListener(touchEventsDesktop.move, swiper.scrollbar.onDragMove, activeListener);
        doc.removeEventListener(touchEventsDesktop.end, swiper.scrollbar.onDragEnd, passiveListener);
      } else {
        target.removeEventListener(touchEventsTouch.start, swiper.scrollbar.onDragStart, activeListener);
        target.removeEventListener(touchEventsTouch.move, swiper.scrollbar.onDragMove, activeListener);
        target.removeEventListener(touchEventsTouch.end, swiper.scrollbar.onDragEnd, passiveListener);
      }
    },
    init: function init() {
      var swiper = this;
      if (!swiper.params.scrollbar.el) { return; }
      var scrollbar = swiper.scrollbar;
      var $swiperEl = swiper.$el;
      var params = swiper.params.scrollbar;

      var $el = $(params.el);
      if (swiper.params.uniqueNavElements && typeof params.el === 'string' && $el.length > 1 && $swiperEl.find(params.el).length === 1) {
        $el = $swiperEl.find(params.el);
      }

      var $dragEl = $el.find(("." + (swiper.params.scrollbar.dragClass)));
      if ($dragEl.length === 0) {
        $dragEl = $(("<div class=\"" + (swiper.params.scrollbar.dragClass) + "\"></div>"));
        $el.append($dragEl);
      }

      Utils.extend(scrollbar, {
        $el: $el,
        el: $el[0],
        $dragEl: $dragEl,
        dragEl: $dragEl[0],
      });

      if (params.draggable) {
        scrollbar.enableDraggable();
      }
    },
    destroy: function destroy() {
      var swiper = this;
      swiper.scrollbar.disableDraggable();
    },
  };

  var Scrollbar$1 = {
    name: 'scrollbar',
    params: {
      scrollbar: {
        el: null,
        dragSize: 'auto',
        hide: false,
        draggable: false,
        snapOnRelease: true,
        lockClass: 'swiper-scrollbar-lock',
        dragClass: 'swiper-scrollbar-drag',
      },
    },
    create: function create() {
      var swiper = this;
      Utils.extend(swiper, {
        scrollbar: {
          init: Scrollbar.init.bind(swiper),
          destroy: Scrollbar.destroy.bind(swiper),
          updateSize: Scrollbar.updateSize.bind(swiper),
          setTranslate: Scrollbar.setTranslate.bind(swiper),
          setTransition: Scrollbar.setTransition.bind(swiper),
          enableDraggable: Scrollbar.enableDraggable.bind(swiper),
          disableDraggable: Scrollbar.disableDraggable.bind(swiper),
          setDragPosition: Scrollbar.setDragPosition.bind(swiper),
          getPointerPosition: Scrollbar.getPointerPosition.bind(swiper),
          onDragStart: Scrollbar.onDragStart.bind(swiper),
          onDragMove: Scrollbar.onDragMove.bind(swiper),
          onDragEnd: Scrollbar.onDragEnd.bind(swiper),
          isTouched: false,
          timeout: null,
          dragTimeout: null,
        },
      });
    },
    on: {
      init: function init() {
        var swiper = this;
        swiper.scrollbar.init();
        swiper.scrollbar.updateSize();
        swiper.scrollbar.setTranslate();
      },
      update: function update() {
        var swiper = this;
        swiper.scrollbar.updateSize();
      },
      resize: function resize() {
        var swiper = this;
        swiper.scrollbar.updateSize();
      },
      observerUpdate: function observerUpdate() {
        var swiper = this;
        swiper.scrollbar.updateSize();
      },
      setTranslate: function setTranslate() {
        var swiper = this;
        swiper.scrollbar.setTranslate();
      },
      setTransition: function setTransition(duration) {
        var swiper = this;
        swiper.scrollbar.setTransition(duration);
      },
      destroy: function destroy() {
        var swiper = this;
        swiper.scrollbar.destroy();
      },
    },
  };

  var Parallax = {
    setTransform: function setTransform(el, progress) {
      var swiper = this;
      var rtl = swiper.rtl;

      var $el = $(el);
      var rtlFactor = rtl ? -1 : 1;

      var p = $el.attr('data-swiper-parallax') || '0';
      var x = $el.attr('data-swiper-parallax-x');
      var y = $el.attr('data-swiper-parallax-y');
      var scale = $el.attr('data-swiper-parallax-scale');
      var opacity = $el.attr('data-swiper-parallax-opacity');

      if (x || y) {
        x = x || '0';
        y = y || '0';
      } else if (swiper.isHorizontal()) {
        x = p;
        y = '0';
      } else {
        y = p;
        x = '0';
      }

      if ((x).indexOf('%') >= 0) {
        x = (parseInt(x, 10) * progress * rtlFactor) + "%";
      } else {
        x = (x * progress * rtlFactor) + "px";
      }
      if ((y).indexOf('%') >= 0) {
        y = (parseInt(y, 10) * progress) + "%";
      } else {
        y = (y * progress) + "px";
      }

      if (typeof opacity !== 'undefined' && opacity !== null) {
        var currentOpacity = opacity - ((opacity - 1) * (1 - Math.abs(progress)));
        $el[0].style.opacity = currentOpacity;
      }
      if (typeof scale === 'undefined' || scale === null) {
        $el.transform(("translate3d(" + x + ", " + y + ", 0px)"));
      } else {
        var currentScale = scale - ((scale - 1) * (1 - Math.abs(progress)));
        $el.transform(("translate3d(" + x + ", " + y + ", 0px) scale(" + currentScale + ")"));
      }
    },
    setTranslate: function setTranslate() {
      var swiper = this;
      var $el = swiper.$el;
      var slides = swiper.slides;
      var progress = swiper.progress;
      var snapGrid = swiper.snapGrid;
      $el.children('[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]')
        .each(function (index, el) {
          swiper.parallax.setTransform(el, progress);
        });
      slides.each(function (slideIndex, slideEl) {
        var slideProgress = slideEl.progress;
        if (swiper.params.slidesPerGroup > 1 && swiper.params.slidesPerView !== 'auto') {
          slideProgress += Math.ceil(slideIndex / 2) - (progress * (snapGrid.length - 1));
        }
        slideProgress = Math.min(Math.max(slideProgress, -1), 1);
        $(slideEl).find('[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]')
          .each(function (index, el) {
            swiper.parallax.setTransform(el, slideProgress);
          });
      });
    },
    setTransition: function setTransition(duration) {
      if ( duration === void 0 ) duration = this.params.speed;

      var swiper = this;
      var $el = swiper.$el;
      $el.find('[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]')
        .each(function (index, parallaxEl) {
          var $parallaxEl = $(parallaxEl);
          var parallaxDuration = parseInt($parallaxEl.attr('data-swiper-parallax-duration'), 10) || duration;
          if (duration === 0) { parallaxDuration = 0; }
          $parallaxEl.transition(parallaxDuration);
        });
    },
  };

  var Parallax$1 = {
    name: 'parallax',
    params: {
      parallax: {
        enabled: false,
      },
    },
    create: function create() {
      var swiper = this;
      Utils.extend(swiper, {
        parallax: {
          setTransform: Parallax.setTransform.bind(swiper),
          setTranslate: Parallax.setTranslate.bind(swiper),
          setTransition: Parallax.setTransition.bind(swiper),
        },
      });
    },
    on: {
      beforeInit: function beforeInit() {
        var swiper = this;
        if (!swiper.params.parallax.enabled) { return; }
        swiper.params.watchSlidesProgress = true;
        swiper.originalParams.watchSlidesProgress = true;
      },
      init: function init() {
        var swiper = this;
        if (!swiper.params.parallax.enabled) { return; }
        swiper.parallax.setTranslate();
      },
      setTranslate: function setTranslate() {
        var swiper = this;
        if (!swiper.params.parallax.enabled) { return; }
        swiper.parallax.setTranslate();
      },
      setTransition: function setTransition(duration) {
        var swiper = this;
        if (!swiper.params.parallax.enabled) { return; }
        swiper.parallax.setTransition(duration);
      },
    },
  };

  var Zoom = {
    // Calc Scale From Multi-touches
    getDistanceBetweenTouches: function getDistanceBetweenTouches(e) {
      if (e.targetTouches.length < 2) { return 1; }
      var x1 = e.targetTouches[0].pageX;
      var y1 = e.targetTouches[0].pageY;
      var x2 = e.targetTouches[1].pageX;
      var y2 = e.targetTouches[1].pageY;
      var distance = Math.sqrt((Math.pow( (x2 - x1), 2 )) + (Math.pow( (y2 - y1), 2 )));
      return distance;
    },
    // Events
    onGestureStart: function onGestureStart(e) {
      var swiper = this;
      var params = swiper.params.zoom;
      var zoom = swiper.zoom;
      var gesture = zoom.gesture;
      zoom.fakeGestureTouched = false;
      zoom.fakeGestureMoved = false;
      if (!Support.gestures) {
        if (e.type !== 'touchstart' || (e.type === 'touchstart' && e.targetTouches.length < 2)) {
          return;
        }
        zoom.fakeGestureTouched = true;
        gesture.scaleStart = Zoom.getDistanceBetweenTouches(e);
      }
      if (!gesture.$slideEl || !gesture.$slideEl.length) {
        gesture.$slideEl = $(e.target).closest(("." + (swiper.params.slideClass)));
        if (gesture.$slideEl.length === 0) { gesture.$slideEl = swiper.slides.eq(swiper.activeIndex); }
        gesture.$imageEl = gesture.$slideEl.find('img, svg, canvas, picture, .swiper-zoom-target');
        gesture.$imageWrapEl = gesture.$imageEl.parent(("." + (params.containerClass)));
        gesture.maxRatio = gesture.$imageWrapEl.attr('data-swiper-zoom') || params.maxRatio;
        if (gesture.$imageWrapEl.length === 0) {
          gesture.$imageEl = undefined;
          return;
        }
      }
      gesture.$imageEl.transition(0);
      swiper.zoom.isScaling = true;
    },
    onGestureChange: function onGestureChange(e) {
      var swiper = this;
      var params = swiper.params.zoom;
      var zoom = swiper.zoom;
      var gesture = zoom.gesture;
      if (!Support.gestures) {
        if (e.type !== 'touchmove' || (e.type === 'touchmove' && e.targetTouches.length < 2)) {
          return;
        }
        zoom.fakeGestureMoved = true;
        gesture.scaleMove = Zoom.getDistanceBetweenTouches(e);
      }
      if (!gesture.$imageEl || gesture.$imageEl.length === 0) { return; }
      if (Support.gestures) {
        zoom.scale = e.scale * zoom.currentScale;
      } else {
        zoom.scale = (gesture.scaleMove / gesture.scaleStart) * zoom.currentScale;
      }
      if (zoom.scale > gesture.maxRatio) {
        zoom.scale = (gesture.maxRatio - 1) + (Math.pow( ((zoom.scale - gesture.maxRatio) + 1), 0.5 ));
      }
      if (zoom.scale < params.minRatio) {
        zoom.scale = (params.minRatio + 1) - (Math.pow( ((params.minRatio - zoom.scale) + 1), 0.5 ));
      }
      gesture.$imageEl.transform(("translate3d(0,0,0) scale(" + (zoom.scale) + ")"));
    },
    onGestureEnd: function onGestureEnd(e) {
      var swiper = this;
      var params = swiper.params.zoom;
      var zoom = swiper.zoom;
      var gesture = zoom.gesture;
      if (!Support.gestures) {
        if (!zoom.fakeGestureTouched || !zoom.fakeGestureMoved) {
          return;
        }
        if (e.type !== 'touchend' || (e.type === 'touchend' && e.changedTouches.length < 2 && !Device.android)) {
          return;
        }
        zoom.fakeGestureTouched = false;
        zoom.fakeGestureMoved = false;
      }
      if (!gesture.$imageEl || gesture.$imageEl.length === 0) { return; }
      zoom.scale = Math.max(Math.min(zoom.scale, gesture.maxRatio), params.minRatio);
      gesture.$imageEl.transition(swiper.params.speed).transform(("translate3d(0,0,0) scale(" + (zoom.scale) + ")"));
      zoom.currentScale = zoom.scale;
      zoom.isScaling = false;
      if (zoom.scale === 1) { gesture.$slideEl = undefined; }
    },
    onTouchStart: function onTouchStart(e) {
      var swiper = this;
      var zoom = swiper.zoom;
      var gesture = zoom.gesture;
      var image = zoom.image;
      if (!gesture.$imageEl || gesture.$imageEl.length === 0) { return; }
      if (image.isTouched) { return; }
      if (Device.android) { e.preventDefault(); }
      image.isTouched = true;
      image.touchesStart.x = e.type === 'touchstart' ? e.targetTouches[0].pageX : e.pageX;
      image.touchesStart.y = e.type === 'touchstart' ? e.targetTouches[0].pageY : e.pageY;
    },
    onTouchMove: function onTouchMove(e) {
      var swiper = this;
      var zoom = swiper.zoom;
      var gesture = zoom.gesture;
      var image = zoom.image;
      var velocity = zoom.velocity;
      if (!gesture.$imageEl || gesture.$imageEl.length === 0) { return; }
      swiper.allowClick = false;
      if (!image.isTouched || !gesture.$slideEl) { return; }

      if (!image.isMoved) {
        image.width = gesture.$imageEl[0].offsetWidth;
        image.height = gesture.$imageEl[0].offsetHeight;
        image.startX = Utils.getTranslate(gesture.$imageWrapEl[0], 'x') || 0;
        image.startY = Utils.getTranslate(gesture.$imageWrapEl[0], 'y') || 0;
        gesture.slideWidth = gesture.$slideEl[0].offsetWidth;
        gesture.slideHeight = gesture.$slideEl[0].offsetHeight;
        gesture.$imageWrapEl.transition(0);
        if (swiper.rtl) {
          image.startX = -image.startX;
          image.startY = -image.startY;
        }
      }
      // Define if we need image drag
      var scaledWidth = image.width * zoom.scale;
      var scaledHeight = image.height * zoom.scale;

      if (scaledWidth < gesture.slideWidth && scaledHeight < gesture.slideHeight) { return; }

      image.minX = Math.min(((gesture.slideWidth / 2) - (scaledWidth / 2)), 0);
      image.maxX = -image.minX;
      image.minY = Math.min(((gesture.slideHeight / 2) - (scaledHeight / 2)), 0);
      image.maxY = -image.minY;

      image.touchesCurrent.x = e.type === 'touchmove' ? e.targetTouches[0].pageX : e.pageX;
      image.touchesCurrent.y = e.type === 'touchmove' ? e.targetTouches[0].pageY : e.pageY;

      if (!image.isMoved && !zoom.isScaling) {
        if (
          swiper.isHorizontal()
          && (
            (Math.floor(image.minX) === Math.floor(image.startX) && image.touchesCurrent.x < image.touchesStart.x)
            || (Math.floor(image.maxX) === Math.floor(image.startX) && image.touchesCurrent.x > image.touchesStart.x)
          )
        ) {
          image.isTouched = false;
          return;
        } if (
          !swiper.isHorizontal()
          && (
            (Math.floor(image.minY) === Math.floor(image.startY) && image.touchesCurrent.y < image.touchesStart.y)
            || (Math.floor(image.maxY) === Math.floor(image.startY) && image.touchesCurrent.y > image.touchesStart.y)
          )
        ) {
          image.isTouched = false;
          return;
        }
      }
      e.preventDefault();
      e.stopPropagation();

      image.isMoved = true;
      image.currentX = (image.touchesCurrent.x - image.touchesStart.x) + image.startX;
      image.currentY = (image.touchesCurrent.y - image.touchesStart.y) + image.startY;

      if (image.currentX < image.minX) {
        image.currentX = (image.minX + 1) - (Math.pow( ((image.minX - image.currentX) + 1), 0.8 ));
      }
      if (image.currentX > image.maxX) {
        image.currentX = (image.maxX - 1) + (Math.pow( ((image.currentX - image.maxX) + 1), 0.8 ));
      }

      if (image.currentY < image.minY) {
        image.currentY = (image.minY + 1) - (Math.pow( ((image.minY - image.currentY) + 1), 0.8 ));
      }
      if (image.currentY > image.maxY) {
        image.currentY = (image.maxY - 1) + (Math.pow( ((image.currentY - image.maxY) + 1), 0.8 ));
      }

      // Velocity
      if (!velocity.prevPositionX) { velocity.prevPositionX = image.touchesCurrent.x; }
      if (!velocity.prevPositionY) { velocity.prevPositionY = image.touchesCurrent.y; }
      if (!velocity.prevTime) { velocity.prevTime = Date.now(); }
      velocity.x = (image.touchesCurrent.x - velocity.prevPositionX) / (Date.now() - velocity.prevTime) / 2;
      velocity.y = (image.touchesCurrent.y - velocity.prevPositionY) / (Date.now() - velocity.prevTime) / 2;
      if (Math.abs(image.touchesCurrent.x - velocity.prevPositionX) < 2) { velocity.x = 0; }
      if (Math.abs(image.touchesCurrent.y - velocity.prevPositionY) < 2) { velocity.y = 0; }
      velocity.prevPositionX = image.touchesCurrent.x;
      velocity.prevPositionY = image.touchesCurrent.y;
      velocity.prevTime = Date.now();

      gesture.$imageWrapEl.transform(("translate3d(" + (image.currentX) + "px, " + (image.currentY) + "px,0)"));
    },
    onTouchEnd: function onTouchEnd() {
      var swiper = this;
      var zoom = swiper.zoom;
      var gesture = zoom.gesture;
      var image = zoom.image;
      var velocity = zoom.velocity;
      if (!gesture.$imageEl || gesture.$imageEl.length === 0) { return; }
      if (!image.isTouched || !image.isMoved) {
        image.isTouched = false;
        image.isMoved = false;
        return;
      }
      image.isTouched = false;
      image.isMoved = false;
      var momentumDurationX = 300;
      var momentumDurationY = 300;
      var momentumDistanceX = velocity.x * momentumDurationX;
      var newPositionX = image.currentX + momentumDistanceX;
      var momentumDistanceY = velocity.y * momentumDurationY;
      var newPositionY = image.currentY + momentumDistanceY;

      // Fix duration
      if (velocity.x !== 0) { momentumDurationX = Math.abs((newPositionX - image.currentX) / velocity.x); }
      if (velocity.y !== 0) { momentumDurationY = Math.abs((newPositionY - image.currentY) / velocity.y); }
      var momentumDuration = Math.max(momentumDurationX, momentumDurationY);

      image.currentX = newPositionX;
      image.currentY = newPositionY;

      // Define if we need image drag
      var scaledWidth = image.width * zoom.scale;
      var scaledHeight = image.height * zoom.scale;
      image.minX = Math.min(((gesture.slideWidth / 2) - (scaledWidth / 2)), 0);
      image.maxX = -image.minX;
      image.minY = Math.min(((gesture.slideHeight / 2) - (scaledHeight / 2)), 0);
      image.maxY = -image.minY;
      image.currentX = Math.max(Math.min(image.currentX, image.maxX), image.minX);
      image.currentY = Math.max(Math.min(image.currentY, image.maxY), image.minY);

      gesture.$imageWrapEl.transition(momentumDuration).transform(("translate3d(" + (image.currentX) + "px, " + (image.currentY) + "px,0)"));
    },
    onTransitionEnd: function onTransitionEnd() {
      var swiper = this;
      var zoom = swiper.zoom;
      var gesture = zoom.gesture;
      if (gesture.$slideEl && swiper.previousIndex !== swiper.activeIndex) {
        gesture.$imageEl.transform('translate3d(0,0,0) scale(1)');
        gesture.$imageWrapEl.transform('translate3d(0,0,0)');

        zoom.scale = 1;
        zoom.currentScale = 1;

        gesture.$slideEl = undefined;
        gesture.$imageEl = undefined;
        gesture.$imageWrapEl = undefined;
      }
    },
    // Toggle Zoom
    toggle: function toggle(e) {
      var swiper = this;
      var zoom = swiper.zoom;

      if (zoom.scale && zoom.scale !== 1) {
        // Zoom Out
        zoom.out();
      } else {
        // Zoom In
        zoom.in(e);
      }
    },
    in: function in$1(e) {
      var swiper = this;

      var zoom = swiper.zoom;
      var params = swiper.params.zoom;
      var gesture = zoom.gesture;
      var image = zoom.image;

      if (!gesture.$slideEl) {
        gesture.$slideEl = swiper.slides.eq(swiper.activeIndex);
        gesture.$imageEl = gesture.$slideEl.find('img, svg, canvas, picture, .swiper-zoom-target');
        gesture.$imageWrapEl = gesture.$imageEl.parent(("." + (params.containerClass)));
      }
      if (!gesture.$imageEl || gesture.$imageEl.length === 0) { return; }

      gesture.$slideEl.addClass(("" + (params.zoomedSlideClass)));

      var touchX;
      var touchY;
      var offsetX;
      var offsetY;
      var diffX;
      var diffY;
      var translateX;
      var translateY;
      var imageWidth;
      var imageHeight;
      var scaledWidth;
      var scaledHeight;
      var translateMinX;
      var translateMinY;
      var translateMaxX;
      var translateMaxY;
      var slideWidth;
      var slideHeight;

      if (typeof image.touchesStart.x === 'undefined' && e) {
        touchX = e.type === 'touchend' ? e.changedTouches[0].pageX : e.pageX;
        touchY = e.type === 'touchend' ? e.changedTouches[0].pageY : e.pageY;
      } else {
        touchX = image.touchesStart.x;
        touchY = image.touchesStart.y;
      }

      zoom.scale = gesture.$imageWrapEl.attr('data-swiper-zoom') || params.maxRatio;
      zoom.currentScale = gesture.$imageWrapEl.attr('data-swiper-zoom') || params.maxRatio;
      if (e) {
        slideWidth = gesture.$slideEl[0].offsetWidth;
        slideHeight = gesture.$slideEl[0].offsetHeight;
        offsetX = gesture.$slideEl.offset().left;
        offsetY = gesture.$slideEl.offset().top;
        diffX = (offsetX + (slideWidth / 2)) - touchX;
        diffY = (offsetY + (slideHeight / 2)) - touchY;

        imageWidth = gesture.$imageEl[0].offsetWidth;
        imageHeight = gesture.$imageEl[0].offsetHeight;
        scaledWidth = imageWidth * zoom.scale;
        scaledHeight = imageHeight * zoom.scale;

        translateMinX = Math.min(((slideWidth / 2) - (scaledWidth / 2)), 0);
        translateMinY = Math.min(((slideHeight / 2) - (scaledHeight / 2)), 0);
        translateMaxX = -translateMinX;
        translateMaxY = -translateMinY;

        translateX = diffX * zoom.scale;
        translateY = diffY * zoom.scale;

        if (translateX < translateMinX) {
          translateX = translateMinX;
        }
        if (translateX > translateMaxX) {
          translateX = translateMaxX;
        }

        if (translateY < translateMinY) {
          translateY = translateMinY;
        }
        if (translateY > translateMaxY) {
          translateY = translateMaxY;
        }
      } else {
        translateX = 0;
        translateY = 0;
      }
      gesture.$imageWrapEl.transition(300).transform(("translate3d(" + translateX + "px, " + translateY + "px,0)"));
      gesture.$imageEl.transition(300).transform(("translate3d(0,0,0) scale(" + (zoom.scale) + ")"));
    },
    out: function out() {
      var swiper = this;

      var zoom = swiper.zoom;
      var params = swiper.params.zoom;
      var gesture = zoom.gesture;

      if (!gesture.$slideEl) {
        gesture.$slideEl = swiper.slides.eq(swiper.activeIndex);
        gesture.$imageEl = gesture.$slideEl.find('img, svg, canvas, picture, .swiper-zoom-target');
        gesture.$imageWrapEl = gesture.$imageEl.parent(("." + (params.containerClass)));
      }
      if (!gesture.$imageEl || gesture.$imageEl.length === 0) { return; }

      zoom.scale = 1;
      zoom.currentScale = 1;
      gesture.$imageWrapEl.transition(300).transform('translate3d(0,0,0)');
      gesture.$imageEl.transition(300).transform('translate3d(0,0,0) scale(1)');
      gesture.$slideEl.removeClass(("" + (params.zoomedSlideClass)));
      gesture.$slideEl = undefined;
    },
    // Attach/Detach Events
    enable: function enable() {
      var swiper = this;
      var zoom = swiper.zoom;
      if (zoom.enabled) { return; }
      zoom.enabled = true;

      var passiveListener = swiper.touchEvents.start === 'touchstart' && Support.passiveListener && swiper.params.passiveListeners ? { passive: true, capture: false } : false;
      var activeListenerWithCapture = Support.passiveListener ? { passive: false, capture: true } : true;

      var slideSelector = "." + (swiper.params.slideClass);

      // Scale image
      if (Support.gestures) {
        swiper.$wrapperEl.on('gesturestart', slideSelector, zoom.onGestureStart, passiveListener);
        swiper.$wrapperEl.on('gesturechange', slideSelector, zoom.onGestureChange, passiveListener);
        swiper.$wrapperEl.on('gestureend', slideSelector, zoom.onGestureEnd, passiveListener);
      } else if (swiper.touchEvents.start === 'touchstart') {
        swiper.$wrapperEl.on(swiper.touchEvents.start, slideSelector, zoom.onGestureStart, passiveListener);
        swiper.$wrapperEl.on(swiper.touchEvents.move, slideSelector, zoom.onGestureChange, activeListenerWithCapture);
        swiper.$wrapperEl.on(swiper.touchEvents.end, slideSelector, zoom.onGestureEnd, passiveListener);
        if (swiper.touchEvents.cancel) {
          swiper.$wrapperEl.on(swiper.touchEvents.cancel, slideSelector, zoom.onGestureEnd, passiveListener);
        }
      }

      // Move image
      swiper.$wrapperEl.on(swiper.touchEvents.move, ("." + (swiper.params.zoom.containerClass)), zoom.onTouchMove, activeListenerWithCapture);
    },
    disable: function disable() {
      var swiper = this;
      var zoom = swiper.zoom;
      if (!zoom.enabled) { return; }

      swiper.zoom.enabled = false;

      var passiveListener = swiper.touchEvents.start === 'touchstart' && Support.passiveListener && swiper.params.passiveListeners ? { passive: true, capture: false } : false;
      var activeListenerWithCapture = Support.passiveListener ? { passive: false, capture: true } : true;

      var slideSelector = "." + (swiper.params.slideClass);

      // Scale image
      if (Support.gestures) {
        swiper.$wrapperEl.off('gesturestart', slideSelector, zoom.onGestureStart, passiveListener);
        swiper.$wrapperEl.off('gesturechange', slideSelector, zoom.onGestureChange, passiveListener);
        swiper.$wrapperEl.off('gestureend', slideSelector, zoom.onGestureEnd, passiveListener);
      } else if (swiper.touchEvents.start === 'touchstart') {
        swiper.$wrapperEl.off(swiper.touchEvents.start, slideSelector, zoom.onGestureStart, passiveListener);
        swiper.$wrapperEl.off(swiper.touchEvents.move, slideSelector, zoom.onGestureChange, activeListenerWithCapture);
        swiper.$wrapperEl.off(swiper.touchEvents.end, slideSelector, zoom.onGestureEnd, passiveListener);
        if (swiper.touchEvents.cancel) {
          swiper.$wrapperEl.off(swiper.touchEvents.cancel, slideSelector, zoom.onGestureEnd, passiveListener);
        }
      }

      // Move image
      swiper.$wrapperEl.off(swiper.touchEvents.move, ("." + (swiper.params.zoom.containerClass)), zoom.onTouchMove, activeListenerWithCapture);
    },
  };

  var Zoom$1 = {
    name: 'zoom',
    params: {
      zoom: {
        enabled: false,
        maxRatio: 3,
        minRatio: 1,
        toggle: true,
        containerClass: 'swiper-zoom-container',
        zoomedSlideClass: 'swiper-slide-zoomed',
      },
    },
    create: function create() {
      var swiper = this;
      var zoom = {
        enabled: false,
        scale: 1,
        currentScale: 1,
        isScaling: false,
        gesture: {
          $slideEl: undefined,
          slideWidth: undefined,
          slideHeight: undefined,
          $imageEl: undefined,
          $imageWrapEl: undefined,
          maxRatio: 3,
        },
        image: {
          isTouched: undefined,
          isMoved: undefined,
          currentX: undefined,
          currentY: undefined,
          minX: undefined,
          minY: undefined,
          maxX: undefined,
          maxY: undefined,
          width: undefined,
          height: undefined,
          startX: undefined,
          startY: undefined,
          touchesStart: {},
          touchesCurrent: {},
        },
        velocity: {
          x: undefined,
          y: undefined,
          prevPositionX: undefined,
          prevPositionY: undefined,
          prevTime: undefined,
        },
      };

      ('onGestureStart onGestureChange onGestureEnd onTouchStart onTouchMove onTouchEnd onTransitionEnd toggle enable disable in out').split(' ').forEach(function (methodName) {
        zoom[methodName] = Zoom[methodName].bind(swiper);
      });
      Utils.extend(swiper, {
        zoom: zoom,
      });

      var scale = 1;
      Object.defineProperty(swiper.zoom, 'scale', {
        get: function get() {
          return scale;
        },
        set: function set(value) {
          if (scale !== value) {
            var imageEl = swiper.zoom.gesture.$imageEl ? swiper.zoom.gesture.$imageEl[0] : undefined;
            var slideEl = swiper.zoom.gesture.$slideEl ? swiper.zoom.gesture.$slideEl[0] : undefined;
            swiper.emit('zoomChange', value, imageEl, slideEl);
          }
          scale = value;
        },
      });
    },
    on: {
      init: function init() {
        var swiper = this;
        if (swiper.params.zoom.enabled) {
          swiper.zoom.enable();
        }
      },
      destroy: function destroy() {
        var swiper = this;
        swiper.zoom.disable();
      },
      touchStart: function touchStart(e) {
        var swiper = this;
        if (!swiper.zoom.enabled) { return; }
        swiper.zoom.onTouchStart(e);
      },
      touchEnd: function touchEnd(e) {
        var swiper = this;
        if (!swiper.zoom.enabled) { return; }
        swiper.zoom.onTouchEnd(e);
      },
      doubleTap: function doubleTap(e) {
        var swiper = this;
        if (swiper.params.zoom.enabled && swiper.zoom.enabled && swiper.params.zoom.toggle) {
          swiper.zoom.toggle(e);
        }
      },
      transitionEnd: function transitionEnd() {
        var swiper = this;
        if (swiper.zoom.enabled && swiper.params.zoom.enabled) {
          swiper.zoom.onTransitionEnd();
        }
      },
      slideChange: function slideChange() {
        var swiper = this;
        if (swiper.zoom.enabled && swiper.params.zoom.enabled && swiper.params.cssMode) {
          swiper.zoom.onTransitionEnd();
        }
      },
    },
  };

  var Lazy = {
    loadInSlide: function loadInSlide(index, loadInDuplicate) {
      if ( loadInDuplicate === void 0 ) loadInDuplicate = true;

      var swiper = this;
      var params = swiper.params.lazy;
      if (typeof index === 'undefined') { return; }
      if (swiper.slides.length === 0) { return; }
      var isVirtual = swiper.virtual && swiper.params.virtual.enabled;

      var $slideEl = isVirtual
        ? swiper.$wrapperEl.children(("." + (swiper.params.slideClass) + "[data-swiper-slide-index=\"" + index + "\"]"))
        : swiper.slides.eq(index);

      var $images = $slideEl.find(("." + (params.elementClass) + ":not(." + (params.loadedClass) + "):not(." + (params.loadingClass) + ")"));
      if ($slideEl.hasClass(params.elementClass) && !$slideEl.hasClass(params.loadedClass) && !$slideEl.hasClass(params.loadingClass)) {
        $images = $images.add($slideEl[0]);
      }
      if ($images.length === 0) { return; }

      $images.each(function (imageIndex, imageEl) {
        var $imageEl = $(imageEl);
        $imageEl.addClass(params.loadingClass);

        var background = $imageEl.attr('data-background');
        var src = $imageEl.attr('data-src');
        var srcset = $imageEl.attr('data-srcset');
        var sizes = $imageEl.attr('data-sizes');

        swiper.loadImage($imageEl[0], (src || background), srcset, sizes, false, function () {
          if (typeof swiper === 'undefined' || swiper === null || !swiper || (swiper && !swiper.params) || swiper.destroyed) { return; }
          if (background) {
            $imageEl.css('background-image', ("url(\"" + background + "\")"));
            $imageEl.removeAttr('data-background');
          } else {
            if (srcset) {
              $imageEl.attr('srcset', srcset);
              $imageEl.removeAttr('data-srcset');
            }
            if (sizes) {
              $imageEl.attr('sizes', sizes);
              $imageEl.removeAttr('data-sizes');
            }
            if (src) {
              $imageEl.attr('src', src);
              $imageEl.removeAttr('data-src');
            }
          }

          $imageEl.addClass(params.loadedClass).removeClass(params.loadingClass);
          $slideEl.find(("." + (params.preloaderClass))).remove();
          if (swiper.params.loop && loadInDuplicate) {
            var slideOriginalIndex = $slideEl.attr('data-swiper-slide-index');
            if ($slideEl.hasClass(swiper.params.slideDuplicateClass)) {
              var originalSlide = swiper.$wrapperEl.children(("[data-swiper-slide-index=\"" + slideOriginalIndex + "\"]:not(." + (swiper.params.slideDuplicateClass) + ")"));
              swiper.lazy.loadInSlide(originalSlide.index(), false);
            } else {
              var duplicatedSlide = swiper.$wrapperEl.children(("." + (swiper.params.slideDuplicateClass) + "[data-swiper-slide-index=\"" + slideOriginalIndex + "\"]"));
              swiper.lazy.loadInSlide(duplicatedSlide.index(), false);
            }
          }
          swiper.emit('lazyImageReady', $slideEl[0], $imageEl[0]);
          if (swiper.params.autoHeight) {
            swiper.updateAutoHeight();
          }
        });

        swiper.emit('lazyImageLoad', $slideEl[0], $imageEl[0]);
      });
    },
    load: function load() {
      var swiper = this;
      var $wrapperEl = swiper.$wrapperEl;
      var swiperParams = swiper.params;
      var slides = swiper.slides;
      var activeIndex = swiper.activeIndex;
      var isVirtual = swiper.virtual && swiperParams.virtual.enabled;
      var params = swiperParams.lazy;

      var slidesPerView = swiperParams.slidesPerView;
      if (slidesPerView === 'auto') {
        slidesPerView = 0;
      }

      function slideExist(index) {
        if (isVirtual) {
          if ($wrapperEl.children(("." + (swiperParams.slideClass) + "[data-swiper-slide-index=\"" + index + "\"]")).length) {
            return true;
          }
        } else if (slides[index]) { return true; }
        return false;
      }
      function slideIndex(slideEl) {
        if (isVirtual) {
          return $(slideEl).attr('data-swiper-slide-index');
        }
        return $(slideEl).index();
      }

      if (!swiper.lazy.initialImageLoaded) { swiper.lazy.initialImageLoaded = true; }
      if (swiper.params.watchSlidesVisibility) {
        $wrapperEl.children(("." + (swiperParams.slideVisibleClass))).each(function (elIndex, slideEl) {
          var index = isVirtual ? $(slideEl).attr('data-swiper-slide-index') : $(slideEl).index();
          swiper.lazy.loadInSlide(index);
        });
      } else if (slidesPerView > 1) {
        for (var i = activeIndex; i < activeIndex + slidesPerView; i += 1) {
          if (slideExist(i)) { swiper.lazy.loadInSlide(i); }
        }
      } else {
        swiper.lazy.loadInSlide(activeIndex);
      }
      if (params.loadPrevNext) {
        if (slidesPerView > 1 || (params.loadPrevNextAmount && params.loadPrevNextAmount > 1)) {
          var amount = params.loadPrevNextAmount;
          var spv = slidesPerView;
          var maxIndex = Math.min(activeIndex + spv + Math.max(amount, spv), slides.length);
          var minIndex = Math.max(activeIndex - Math.max(spv, amount), 0);
          // Next Slides
          for (var i$1 = activeIndex + slidesPerView; i$1 < maxIndex; i$1 += 1) {
            if (slideExist(i$1)) { swiper.lazy.loadInSlide(i$1); }
          }
          // Prev Slides
          for (var i$2 = minIndex; i$2 < activeIndex; i$2 += 1) {
            if (slideExist(i$2)) { swiper.lazy.loadInSlide(i$2); }
          }
        } else {
          var nextSlide = $wrapperEl.children(("." + (swiperParams.slideNextClass)));
          if (nextSlide.length > 0) { swiper.lazy.loadInSlide(slideIndex(nextSlide)); }

          var prevSlide = $wrapperEl.children(("." + (swiperParams.slidePrevClass)));
          if (prevSlide.length > 0) { swiper.lazy.loadInSlide(slideIndex(prevSlide)); }
        }
      }
    },
  };

  var Lazy$1 = {
    name: 'lazy',
    params: {
      lazy: {
        enabled: false,
        loadPrevNext: false,
        loadPrevNextAmount: 1,
        loadOnTransitionStart: false,

        elementClass: 'swiper-lazy',
        loadingClass: 'swiper-lazy-loading',
        loadedClass: 'swiper-lazy-loaded',
        preloaderClass: 'swiper-lazy-preloader',
      },
    },
    create: function create() {
      var swiper = this;
      Utils.extend(swiper, {
        lazy: {
          initialImageLoaded: false,
          load: Lazy.load.bind(swiper),
          loadInSlide: Lazy.loadInSlide.bind(swiper),
        },
      });
    },
    on: {
      beforeInit: function beforeInit() {
        var swiper = this;
        if (swiper.params.lazy.enabled && swiper.params.preloadImages) {
          swiper.params.preloadImages = false;
        }
      },
      init: function init() {
        var swiper = this;
        if (swiper.params.lazy.enabled && !swiper.params.loop && swiper.params.initialSlide === 0) {
          swiper.lazy.load();
        }
      },
      scroll: function scroll() {
        var swiper = this;
        if (swiper.params.freeMode && !swiper.params.freeModeSticky) {
          swiper.lazy.load();
        }
      },
      resize: function resize() {
        var swiper = this;
        if (swiper.params.lazy.enabled) {
          swiper.lazy.load();
        }
      },
      scrollbarDragMove: function scrollbarDragMove() {
        var swiper = this;
        if (swiper.params.lazy.enabled) {
          swiper.lazy.load();
        }
      },
      transitionStart: function transitionStart() {
        var swiper = this;
        if (swiper.params.lazy.enabled) {
          if (swiper.params.lazy.loadOnTransitionStart || (!swiper.params.lazy.loadOnTransitionStart && !swiper.lazy.initialImageLoaded)) {
            swiper.lazy.load();
          }
        }
      },
      transitionEnd: function transitionEnd() {
        var swiper = this;
        if (swiper.params.lazy.enabled && !swiper.params.lazy.loadOnTransitionStart) {
          swiper.lazy.load();
        }
      },
      slideChange: function slideChange() {
        var swiper = this;
        if (swiper.params.lazy.enabled && swiper.params.cssMode) {
          swiper.lazy.load();
        }
      },
    },
  };

  /* eslint no-bitwise: ["error", { "allow": [">>"] }] */

  var Controller = {
    LinearSpline: function LinearSpline(x, y) {
      var binarySearch = (function search() {
        var maxIndex;
        var minIndex;
        var guess;
        return function (array, val) {
          minIndex = -1;
          maxIndex = array.length;
          while (maxIndex - minIndex > 1) {
            guess = maxIndex + minIndex >> 1;
            if (array[guess] <= val) {
              minIndex = guess;
            } else {
              maxIndex = guess;
            }
          }
          return maxIndex;
        };
      }());
      this.x = x;
      this.y = y;
      this.lastIndex = x.length - 1;
      // Given an x value (x2), return the expected y2 value:
      // (x1,y1) is the known point before given value,
      // (x3,y3) is the known point after given value.
      var i1;
      var i3;

      this.interpolate = function interpolate(x2) {
        if (!x2) { return 0; }

        // Get the indexes of x1 and x3 (the array indexes before and after given x2):
        i3 = binarySearch(this.x, x2);
        i1 = i3 - 1;

        // We have our indexes i1 & i3, so we can calculate already:
        // y2 := ((x2−x1) × (y3−y1)) ÷ (x3−x1) + y1
        return (((x2 - this.x[i1]) * (this.y[i3] - this.y[i1])) / (this.x[i3] - this.x[i1])) + this.y[i1];
      };
      return this;
    },
    // xxx: for now i will just save one spline function to to
    getInterpolateFunction: function getInterpolateFunction(c) {
      var swiper = this;
      if (!swiper.controller.spline) {
        swiper.controller.spline = swiper.params.loop
          ? new Controller.LinearSpline(swiper.slidesGrid, c.slidesGrid)
          : new Controller.LinearSpline(swiper.snapGrid, c.snapGrid);
      }
    },
    setTranslate: function setTranslate(setTranslate$1, byController) {
      var swiper = this;
      var controlled = swiper.controller.control;
      var multiplier;
      var controlledTranslate;
      function setControlledTranslate(c) {
        // this will create an Interpolate function based on the snapGrids
        // x is the Grid of the scrolled scroller and y will be the controlled scroller
        // it makes sense to create this only once and recall it for the interpolation
        // the function does a lot of value caching for performance
        var translate = swiper.rtlTranslate ? -swiper.translate : swiper.translate;
        if (swiper.params.controller.by === 'slide') {
          swiper.controller.getInterpolateFunction(c);
          // i am not sure why the values have to be multiplicated this way, tried to invert the snapGrid
          // but it did not work out
          controlledTranslate = -swiper.controller.spline.interpolate(-translate);
        }

        if (!controlledTranslate || swiper.params.controller.by === 'container') {
          multiplier = (c.maxTranslate() - c.minTranslate()) / (swiper.maxTranslate() - swiper.minTranslate());
          controlledTranslate = ((translate - swiper.minTranslate()) * multiplier) + c.minTranslate();
        }

        if (swiper.params.controller.inverse) {
          controlledTranslate = c.maxTranslate() - controlledTranslate;
        }
        c.updateProgress(controlledTranslate);
        c.setTranslate(controlledTranslate, swiper);
        c.updateActiveIndex();
        c.updateSlidesClasses();
      }
      if (Array.isArray(controlled)) {
        for (var i = 0; i < controlled.length; i += 1) {
          if (controlled[i] !== byController && controlled[i] instanceof Swiper) {
            setControlledTranslate(controlled[i]);
          }
        }
      } else if (controlled instanceof Swiper && byController !== controlled) {
        setControlledTranslate(controlled);
      }
    },
    setTransition: function setTransition(duration, byController) {
      var swiper = this;
      var controlled = swiper.controller.control;
      var i;
      function setControlledTransition(c) {
        c.setTransition(duration, swiper);
        if (duration !== 0) {
          c.transitionStart();
          if (c.params.autoHeight) {
            Utils.nextTick(function () {
              c.updateAutoHeight();
            });
          }
          c.$wrapperEl.transitionEnd(function () {
            if (!controlled) { return; }
            if (c.params.loop && swiper.params.controller.by === 'slide') {
              c.loopFix();
            }
            c.transitionEnd();
          });
        }
      }
      if (Array.isArray(controlled)) {
        for (i = 0; i < controlled.length; i += 1) {
          if (controlled[i] !== byController && controlled[i] instanceof Swiper) {
            setControlledTransition(controlled[i]);
          }
        }
      } else if (controlled instanceof Swiper && byController !== controlled) {
        setControlledTransition(controlled);
      }
    },
  };
  var Controller$1 = {
    name: 'controller',
    params: {
      controller: {
        control: undefined,
        inverse: false,
        by: 'slide', // or 'container'
      },
    },
    create: function create() {
      var swiper = this;
      Utils.extend(swiper, {
        controller: {
          control: swiper.params.controller.control,
          getInterpolateFunction: Controller.getInterpolateFunction.bind(swiper),
          setTranslate: Controller.setTranslate.bind(swiper),
          setTransition: Controller.setTransition.bind(swiper),
        },
      });
    },
    on: {
      update: function update() {
        var swiper = this;
        if (!swiper.controller.control) { return; }
        if (swiper.controller.spline) {
          swiper.controller.spline = undefined;
          delete swiper.controller.spline;
        }
      },
      resize: function resize() {
        var swiper = this;
        if (!swiper.controller.control) { return; }
        if (swiper.controller.spline) {
          swiper.controller.spline = undefined;
          delete swiper.controller.spline;
        }
      },
      observerUpdate: function observerUpdate() {
        var swiper = this;
        if (!swiper.controller.control) { return; }
        if (swiper.controller.spline) {
          swiper.controller.spline = undefined;
          delete swiper.controller.spline;
        }
      },
      setTranslate: function setTranslate(translate, byController) {
        var swiper = this;
        if (!swiper.controller.control) { return; }
        swiper.controller.setTranslate(translate, byController);
      },
      setTransition: function setTransition(duration, byController) {
        var swiper = this;
        if (!swiper.controller.control) { return; }
        swiper.controller.setTransition(duration, byController);
      },
    },
  };

  var a11y = {
    makeElFocusable: function makeElFocusable($el) {
      $el.attr('tabIndex', '0');
      return $el;
    },
    addElRole: function addElRole($el, role) {
      $el.attr('role', role);
      return $el;
    },
    addElLabel: function addElLabel($el, label) {
      $el.attr('aria-label', label);
      return $el;
    },
    disableEl: function disableEl($el) {
      $el.attr('aria-disabled', true);
      return $el;
    },
    enableEl: function enableEl($el) {
      $el.attr('aria-disabled', false);
      return $el;
    },
    onEnterKey: function onEnterKey(e) {
      var swiper = this;
      var params = swiper.params.a11y;
      if (e.keyCode !== 13) { return; }
      var $targetEl = $(e.target);
      if (swiper.navigation && swiper.navigation.$nextEl && $targetEl.is(swiper.navigation.$nextEl)) {
        if (!(swiper.isEnd && !swiper.params.loop)) {
          swiper.slideNext();
        }
        if (swiper.isEnd) {
          swiper.a11y.notify(params.lastSlideMessage);
        } else {
          swiper.a11y.notify(params.nextSlideMessage);
        }
      }
      if (swiper.navigation && swiper.navigation.$prevEl && $targetEl.is(swiper.navigation.$prevEl)) {
        if (!(swiper.isBeginning && !swiper.params.loop)) {
          swiper.slidePrev();
        }
        if (swiper.isBeginning) {
          swiper.a11y.notify(params.firstSlideMessage);
        } else {
          swiper.a11y.notify(params.prevSlideMessage);
        }
      }
      if (swiper.pagination && $targetEl.is(("." + (swiper.params.pagination.bulletClass)))) {
        $targetEl[0].click();
      }
    },
    notify: function notify(message) {
      var swiper = this;
      var notification = swiper.a11y.liveRegion;
      if (notification.length === 0) { return; }
      notification.html('');
      notification.html(message);
    },
    updateNavigation: function updateNavigation() {
      var swiper = this;

      if (swiper.params.loop || !swiper.navigation) { return; }
      var ref = swiper.navigation;
      var $nextEl = ref.$nextEl;
      var $prevEl = ref.$prevEl;

      if ($prevEl && $prevEl.length > 0) {
        if (swiper.isBeginning) {
          swiper.a11y.disableEl($prevEl);
        } else {
          swiper.a11y.enableEl($prevEl);
        }
      }
      if ($nextEl && $nextEl.length > 0) {
        if (swiper.isEnd) {
          swiper.a11y.disableEl($nextEl);
        } else {
          swiper.a11y.enableEl($nextEl);
        }
      }
    },
    updatePagination: function updatePagination() {
      var swiper = this;
      var params = swiper.params.a11y;
      if (swiper.pagination && swiper.params.pagination.clickable && swiper.pagination.bullets && swiper.pagination.bullets.length) {
        swiper.pagination.bullets.each(function (bulletIndex, bulletEl) {
          var $bulletEl = $(bulletEl);
          swiper.a11y.makeElFocusable($bulletEl);
          swiper.a11y.addElRole($bulletEl, 'button');
          swiper.a11y.addElLabel($bulletEl, params.paginationBulletMessage.replace(/{{index}}/, $bulletEl.index() + 1));
        });
      }
    },
    init: function init() {
      var swiper = this;

      swiper.$el.append(swiper.a11y.liveRegion);

      // Navigation
      var params = swiper.params.a11y;
      var $nextEl;
      var $prevEl;
      if (swiper.navigation && swiper.navigation.$nextEl) {
        $nextEl = swiper.navigation.$nextEl;
      }
      if (swiper.navigation && swiper.navigation.$prevEl) {
        $prevEl = swiper.navigation.$prevEl;
      }
      if ($nextEl) {
        swiper.a11y.makeElFocusable($nextEl);
        swiper.a11y.addElRole($nextEl, 'button');
        swiper.a11y.addElLabel($nextEl, params.nextSlideMessage);
        $nextEl.on('keydown', swiper.a11y.onEnterKey);
      }
      if ($prevEl) {
        swiper.a11y.makeElFocusable($prevEl);
        swiper.a11y.addElRole($prevEl, 'button');
        swiper.a11y.addElLabel($prevEl, params.prevSlideMessage);
        $prevEl.on('keydown', swiper.a11y.onEnterKey);
      }

      // Pagination
      if (swiper.pagination && swiper.params.pagination.clickable && swiper.pagination.bullets && swiper.pagination.bullets.length) {
        swiper.pagination.$el.on('keydown', ("." + (swiper.params.pagination.bulletClass)), swiper.a11y.onEnterKey);
      }
    },
    destroy: function destroy() {
      var swiper = this;
      if (swiper.a11y.liveRegion && swiper.a11y.liveRegion.length > 0) { swiper.a11y.liveRegion.remove(); }

      var $nextEl;
      var $prevEl;
      if (swiper.navigation && swiper.navigation.$nextEl) {
        $nextEl = swiper.navigation.$nextEl;
      }
      if (swiper.navigation && swiper.navigation.$prevEl) {
        $prevEl = swiper.navigation.$prevEl;
      }
      if ($nextEl) {
        $nextEl.off('keydown', swiper.a11y.onEnterKey);
      }
      if ($prevEl) {
        $prevEl.off('keydown', swiper.a11y.onEnterKey);
      }

      // Pagination
      if (swiper.pagination && swiper.params.pagination.clickable && swiper.pagination.bullets && swiper.pagination.bullets.length) {
        swiper.pagination.$el.off('keydown', ("." + (swiper.params.pagination.bulletClass)), swiper.a11y.onEnterKey);
      }
    },
  };
  var A11y = {
    name: 'a11y',
    params: {
      a11y: {
        enabled: true,
        notificationClass: 'swiper-notification',
        prevSlideMessage: 'Previous slide',
        nextSlideMessage: 'Next slide',
        firstSlideMessage: 'This is the first slide',
        lastSlideMessage: 'This is the last slide',
        paginationBulletMessage: 'Go to slide {{index}}',
      },
    },
    create: function create() {
      var swiper = this;
      Utils.extend(swiper, {
        a11y: {
          liveRegion: $(("<span class=\"" + (swiper.params.a11y.notificationClass) + "\" aria-live=\"assertive\" aria-atomic=\"true\"></span>")),
        },
      });
      Object.keys(a11y).forEach(function (methodName) {
        swiper.a11y[methodName] = a11y[methodName].bind(swiper);
      });
    },
    on: {
      init: function init() {
        var swiper = this;
        if (!swiper.params.a11y.enabled) { return; }
        swiper.a11y.init();
        swiper.a11y.updateNavigation();
      },
      toEdge: function toEdge() {
        var swiper = this;
        if (!swiper.params.a11y.enabled) { return; }
        swiper.a11y.updateNavigation();
      },
      fromEdge: function fromEdge() {
        var swiper = this;
        if (!swiper.params.a11y.enabled) { return; }
        swiper.a11y.updateNavigation();
      },
      paginationUpdate: function paginationUpdate() {
        var swiper = this;
        if (!swiper.params.a11y.enabled) { return; }
        swiper.a11y.updatePagination();
      },
      destroy: function destroy() {
        var swiper = this;
        if (!swiper.params.a11y.enabled) { return; }
        swiper.a11y.destroy();
      },
    },
  };

  var History = {
    init: function init() {
      var swiper = this;
      if (!swiper.params.history) { return; }
      if (!win.history || !win.history.pushState) {
        swiper.params.history.enabled = false;
        swiper.params.hashNavigation.enabled = true;
        return;
      }
      var history = swiper.history;
      history.initialized = true;
      history.paths = History.getPathValues();
      if (!history.paths.key && !history.paths.value) { return; }
      history.scrollToSlide(0, history.paths.value, swiper.params.runCallbacksOnInit);
      if (!swiper.params.history.replaceState) {
        win.addEventListener('popstate', swiper.history.setHistoryPopState);
      }
    },
    destroy: function destroy() {
      var swiper = this;
      if (!swiper.params.history.replaceState) {
        win.removeEventListener('popstate', swiper.history.setHistoryPopState);
      }
    },
    setHistoryPopState: function setHistoryPopState() {
      var swiper = this;
      swiper.history.paths = History.getPathValues();
      swiper.history.scrollToSlide(swiper.params.speed, swiper.history.paths.value, false);
    },
    getPathValues: function getPathValues() {
      var pathArray = win.location.pathname.slice(1).split('/').filter(function (part) { return part !== ''; });
      var total = pathArray.length;
      var key = pathArray[total - 2];
      var value = pathArray[total - 1];
      return { key: key, value: value };
    },
    setHistory: function setHistory(key, index) {
      var swiper = this;
      if (!swiper.history.initialized || !swiper.params.history.enabled) { return; }
      var slide = swiper.slides.eq(index);
      var value = History.slugify(slide.attr('data-history'));
      if (!win.location.pathname.includes(key)) {
        value = key + "/" + value;
      }
      var currentState = win.history.state;
      if (currentState && currentState.value === value) {
        return;
      }
      if (swiper.params.history.replaceState) {
        win.history.replaceState({ value: value }, null, value);
      } else {
        win.history.pushState({ value: value }, null, value);
      }
    },
    slugify: function slugify(text) {
      return text.toString()
        .replace(/\s+/g, '-')
        .replace(/[^\w-]+/g, '')
        .replace(/--+/g, '-')
        .replace(/^-+/, '')
        .replace(/-+$/, '');
    },
    scrollToSlide: function scrollToSlide(speed, value, runCallbacks) {
      var swiper = this;
      if (value) {
        for (var i = 0, length = swiper.slides.length; i < length; i += 1) {
          var slide = swiper.slides.eq(i);
          var slideHistory = History.slugify(slide.attr('data-history'));
          if (slideHistory === value && !slide.hasClass(swiper.params.slideDuplicateClass)) {
            var index = slide.index();
            swiper.slideTo(index, speed, runCallbacks);
          }
        }
      } else {
        swiper.slideTo(0, speed, runCallbacks);
      }
    },
  };

  var History$1 = {
    name: 'history',
    params: {
      history: {
        enabled: false,
        replaceState: false,
        key: 'slides',
      },
    },
    create: function create() {
      var swiper = this;
      Utils.extend(swiper, {
        history: {
          init: History.init.bind(swiper),
          setHistory: History.setHistory.bind(swiper),
          setHistoryPopState: History.setHistoryPopState.bind(swiper),
          scrollToSlide: History.scrollToSlide.bind(swiper),
          destroy: History.destroy.bind(swiper),
        },
      });
    },
    on: {
      init: function init() {
        var swiper = this;
        if (swiper.params.history.enabled) {
          swiper.history.init();
        }
      },
      destroy: function destroy() {
        var swiper = this;
        if (swiper.params.history.enabled) {
          swiper.history.destroy();
        }
      },
      transitionEnd: function transitionEnd() {
        var swiper = this;
        if (swiper.history.initialized) {
          swiper.history.setHistory(swiper.params.history.key, swiper.activeIndex);
        }
      },
      slideChange: function slideChange() {
        var swiper = this;
        if (swiper.history.initialized && swiper.params.cssMode) {
          swiper.history.setHistory(swiper.params.history.key, swiper.activeIndex);
        }
      },
    },
  };

  var HashNavigation = {
    onHashCange: function onHashCange() {
      var swiper = this;
      var newHash = doc.location.hash.replace('#', '');
      var activeSlideHash = swiper.slides.eq(swiper.activeIndex).attr('data-hash');
      if (newHash !== activeSlideHash) {
        var newIndex = swiper.$wrapperEl.children(("." + (swiper.params.slideClass) + "[data-hash=\"" + newHash + "\"]")).index();
        if (typeof newIndex === 'undefined') { return; }
        swiper.slideTo(newIndex);
      }
    },
    setHash: function setHash() {
      var swiper = this;
      if (!swiper.hashNavigation.initialized || !swiper.params.hashNavigation.enabled) { return; }
      if (swiper.params.hashNavigation.replaceState && win.history && win.history.replaceState) {
        win.history.replaceState(null, null, (("#" + (swiper.slides.eq(swiper.activeIndex).attr('data-hash'))) || ''));
      } else {
        var slide = swiper.slides.eq(swiper.activeIndex);
        var hash = slide.attr('data-hash') || slide.attr('data-history');
        doc.location.hash = hash || '';
      }
    },
    init: function init() {
      var swiper = this;
      if (!swiper.params.hashNavigation.enabled || (swiper.params.history && swiper.params.history.enabled)) { return; }
      swiper.hashNavigation.initialized = true;
      var hash = doc.location.hash.replace('#', '');
      if (hash) {
        var speed = 0;
        for (var i = 0, length = swiper.slides.length; i < length; i += 1) {
          var slide = swiper.slides.eq(i);
          var slideHash = slide.attr('data-hash') || slide.attr('data-history');
          if (slideHash === hash && !slide.hasClass(swiper.params.slideDuplicateClass)) {
            var index = slide.index();
            swiper.slideTo(index, speed, swiper.params.runCallbacksOnInit, true);
          }
        }
      }
      if (swiper.params.hashNavigation.watchState) {
        $(win).on('hashchange', swiper.hashNavigation.onHashCange);
      }
    },
    destroy: function destroy() {
      var swiper = this;
      if (swiper.params.hashNavigation.watchState) {
        $(win).off('hashchange', swiper.hashNavigation.onHashCange);
      }
    },
  };
  var HashNavigation$1 = {
    name: 'hash-navigation',
    params: {
      hashNavigation: {
        enabled: false,
        replaceState: false,
        watchState: false,
      },
    },
    create: function create() {
      var swiper = this;
      Utils.extend(swiper, {
        hashNavigation: {
          initialized: false,
          init: HashNavigation.init.bind(swiper),
          destroy: HashNavigation.destroy.bind(swiper),
          setHash: HashNavigation.setHash.bind(swiper),
          onHashCange: HashNavigation.onHashCange.bind(swiper),
        },
      });
    },
    on: {
      init: function init() {
        var swiper = this;
        if (swiper.params.hashNavigation.enabled) {
          swiper.hashNavigation.init();
        }
      },
      destroy: function destroy() {
        var swiper = this;
        if (swiper.params.hashNavigation.enabled) {
          swiper.hashNavigation.destroy();
        }
      },
      transitionEnd: function transitionEnd() {
        var swiper = this;
        if (swiper.hashNavigation.initialized) {
          swiper.hashNavigation.setHash();
        }
      },
      slideChange: function slideChange() {
        var swiper = this;
        if (swiper.hashNavigation.initialized && swiper.params.cssMode) {
          swiper.hashNavigation.setHash();
        }
      },
    },
  };

  /* eslint no-underscore-dangle: "off" */

  var Autoplay = {
    run: function run() {
      var swiper = this;
      var $activeSlideEl = swiper.slides.eq(swiper.activeIndex);
      var delay = swiper.params.autoplay.delay;
      if ($activeSlideEl.attr('data-swiper-autoplay')) {
        delay = $activeSlideEl.attr('data-swiper-autoplay') || swiper.params.autoplay.delay;
      }
      clearTimeout(swiper.autoplay.timeout);
      swiper.autoplay.timeout = Utils.nextTick(function () {
        if (swiper.params.autoplay.reverseDirection) {
          if (swiper.params.loop) {
            swiper.loopFix();
            swiper.slidePrev(swiper.params.speed, true, true);
            swiper.emit('autoplay');
          } else if (!swiper.isBeginning) {
            swiper.slidePrev(swiper.params.speed, true, true);
            swiper.emit('autoplay');
          } else if (!swiper.params.autoplay.stopOnLastSlide) {
            swiper.slideTo(swiper.slides.length - 1, swiper.params.speed, true, true);
            swiper.emit('autoplay');
          } else {
            swiper.autoplay.stop();
          }
        } else if (swiper.params.loop) {
          swiper.loopFix();
          swiper.slideNext(swiper.params.speed, true, true);
          swiper.emit('autoplay');
        } else if (!swiper.isEnd) {
          swiper.slideNext(swiper.params.speed, true, true);
          swiper.emit('autoplay');
        } else if (!swiper.params.autoplay.stopOnLastSlide) {
          swiper.slideTo(0, swiper.params.speed, true, true);
          swiper.emit('autoplay');
        } else {
          swiper.autoplay.stop();
        }
        if (swiper.params.cssMode && swiper.autoplay.running) { swiper.autoplay.run(); }
      }, delay);
    },
    start: function start() {
      var swiper = this;
      if (typeof swiper.autoplay.timeout !== 'undefined') { return false; }
      if (swiper.autoplay.running) { return false; }
      swiper.autoplay.running = true;
      swiper.emit('autoplayStart');
      swiper.autoplay.run();
      return true;
    },
    stop: function stop() {
      var swiper = this;
      if (!swiper.autoplay.running) { return false; }
      if (typeof swiper.autoplay.timeout === 'undefined') { return false; }

      if (swiper.autoplay.timeout) {
        clearTimeout(swiper.autoplay.timeout);
        swiper.autoplay.timeout = undefined;
      }
      swiper.autoplay.running = false;
      swiper.emit('autoplayStop');
      return true;
    },
    pause: function pause(speed) {
      var swiper = this;
      if (!swiper.autoplay.running) { return; }
      if (swiper.autoplay.paused) { return; }
      if (swiper.autoplay.timeout) { clearTimeout(swiper.autoplay.timeout); }
      swiper.autoplay.paused = true;
      if (speed === 0 || !swiper.params.autoplay.waitForTransition) {
        swiper.autoplay.paused = false;
        swiper.autoplay.run();
      } else {
        swiper.$wrapperEl[0].addEventListener('transitionend', swiper.autoplay.onTransitionEnd);
        swiper.$wrapperEl[0].addEventListener('webkitTransitionEnd', swiper.autoplay.onTransitionEnd);
      }
    },
  };

  var Autoplay$1 = {
    name: 'autoplay',
    params: {
      autoplay: {
        enabled: false,
        delay: 3000,
        waitForTransition: true,
        disableOnInteraction: true,
        stopOnLastSlide: false,
        reverseDirection: false,
      },
    },
    create: function create() {
      var swiper = this;
      Utils.extend(swiper, {
        autoplay: {
          running: false,
          paused: false,
          run: Autoplay.run.bind(swiper),
          start: Autoplay.start.bind(swiper),
          stop: Autoplay.stop.bind(swiper),
          pause: Autoplay.pause.bind(swiper),
          onVisibilityChange: function onVisibilityChange() {
            if (document.visibilityState === 'hidden' && swiper.autoplay.running) {
              swiper.autoplay.pause();
            }
            if (document.visibilityState === 'visible' && swiper.autoplay.paused) {
              swiper.autoplay.run();
              swiper.autoplay.paused = false;
            }
          },
          onTransitionEnd: function onTransitionEnd(e) {
            if (!swiper || swiper.destroyed || !swiper.$wrapperEl) { return; }
            if (e.target !== this) { return; }
            swiper.$wrapperEl[0].removeEventListener('transitionend', swiper.autoplay.onTransitionEnd);
            swiper.$wrapperEl[0].removeEventListener('webkitTransitionEnd', swiper.autoplay.onTransitionEnd);
            swiper.autoplay.paused = false;
            if (!swiper.autoplay.running) {
              swiper.autoplay.stop();
            } else {
              swiper.autoplay.run();
            }
          },
        },
      });
    },
    on: {
      init: function init() {
        var swiper = this;
        if (swiper.params.autoplay.enabled) {
          swiper.autoplay.start();
          document.addEventListener('visibilitychange', swiper.autoplay.onVisibilityChange);
        }
      },
      beforeTransitionStart: function beforeTransitionStart(speed, internal) {
        var swiper = this;
        if (swiper.autoplay.running) {
          if (internal || !swiper.params.autoplay.disableOnInteraction) {
            swiper.autoplay.pause(speed);
          } else {
            swiper.autoplay.stop();
          }
        }
      },
      sliderFirstMove: function sliderFirstMove() {
        var swiper = this;
        if (swiper.autoplay.running) {
          if (swiper.params.autoplay.disableOnInteraction) {
            swiper.autoplay.stop();
          } else {
            swiper.autoplay.pause();
          }
        }
      },
      touchEnd: function touchEnd() {
        var swiper = this;
        if (swiper.params.cssMode && swiper.autoplay.paused && !swiper.params.autoplay.disableOnInteraction) {
          swiper.autoplay.run();
        }
      },
      destroy: function destroy() {
        var swiper = this;
        if (swiper.autoplay.running) {
          swiper.autoplay.stop();
        }
        document.removeEventListener('visibilitychange', swiper.autoplay.onVisibilityChange);
      },
    },
  };

  var Fade = {
    setTranslate: function setTranslate() {
      var swiper = this;
      var slides = swiper.slides;
      for (var i = 0; i < slides.length; i += 1) {
        var $slideEl = swiper.slides.eq(i);
        var offset = $slideEl[0].swiperSlideOffset;
        var tx = -offset;
        if (!swiper.params.virtualTranslate) { tx -= swiper.translate; }
        var ty = 0;
        if (!swiper.isHorizontal()) {
          ty = tx;
          tx = 0;
        }
        var slideOpacity = swiper.params.fadeEffect.crossFade
          ? Math.max(1 - Math.abs($slideEl[0].progress), 0)
          : 1 + Math.min(Math.max($slideEl[0].progress, -1), 0);
        $slideEl
          .css({
            opacity: slideOpacity,
          })
          .transform(("translate3d(" + tx + "px, " + ty + "px, 0px)"));
      }
    },
    setTransition: function setTransition(duration) {
      var swiper = this;
      var slides = swiper.slides;
      var $wrapperEl = swiper.$wrapperEl;
      slides.transition(duration);
      if (swiper.params.virtualTranslate && duration !== 0) {
        var eventTriggered = false;
        slides.transitionEnd(function () {
          if (eventTriggered) { return; }
          if (!swiper || swiper.destroyed) { return; }
          eventTriggered = true;
          swiper.animating = false;
          var triggerEvents = ['webkitTransitionEnd', 'transitionend'];
          for (var i = 0; i < triggerEvents.length; i += 1) {
            $wrapperEl.trigger(triggerEvents[i]);
          }
        });
      }
    },
  };

  var EffectFade = {
    name: 'effect-fade',
    params: {
      fadeEffect: {
        crossFade: false,
      },
    },
    create: function create() {
      var swiper = this;
      Utils.extend(swiper, {
        fadeEffect: {
          setTranslate: Fade.setTranslate.bind(swiper),
          setTransition: Fade.setTransition.bind(swiper),
        },
      });
    },
    on: {
      beforeInit: function beforeInit() {
        var swiper = this;
        if (swiper.params.effect !== 'fade') { return; }
        swiper.classNames.push(((swiper.params.containerModifierClass) + "fade"));
        var overwriteParams = {
          slidesPerView: 1,
          slidesPerColumn: 1,
          slidesPerGroup: 1,
          watchSlidesProgress: true,
          spaceBetween: 0,
          virtualTranslate: true,
        };
        Utils.extend(swiper.params, overwriteParams);
        Utils.extend(swiper.originalParams, overwriteParams);
      },
      setTranslate: function setTranslate() {
        var swiper = this;
        if (swiper.params.effect !== 'fade') { return; }
        swiper.fadeEffect.setTranslate();
      },
      setTransition: function setTransition(duration) {
        var swiper = this;
        if (swiper.params.effect !== 'fade') { return; }
        swiper.fadeEffect.setTransition(duration);
      },
    },
  };

  var Cube = {
    setTranslate: function setTranslate() {
      var swiper = this;
      var $el = swiper.$el;
      var $wrapperEl = swiper.$wrapperEl;
      var slides = swiper.slides;
      var swiperWidth = swiper.width;
      var swiperHeight = swiper.height;
      var rtl = swiper.rtlTranslate;
      var swiperSize = swiper.size;
      var params = swiper.params.cubeEffect;
      var isHorizontal = swiper.isHorizontal();
      var isVirtual = swiper.virtual && swiper.params.virtual.enabled;
      var wrapperRotate = 0;
      var $cubeShadowEl;
      if (params.shadow) {
        if (isHorizontal) {
          $cubeShadowEl = $wrapperEl.find('.swiper-cube-shadow');
          if ($cubeShadowEl.length === 0) {
            $cubeShadowEl = $('<div class="swiper-cube-shadow"></div>');
            $wrapperEl.append($cubeShadowEl);
          }
          $cubeShadowEl.css({ height: (swiperWidth + "px") });
        } else {
          $cubeShadowEl = $el.find('.swiper-cube-shadow');
          if ($cubeShadowEl.length === 0) {
            $cubeShadowEl = $('<div class="swiper-cube-shadow"></div>');
            $el.append($cubeShadowEl);
          }
        }
      }
      for (var i = 0; i < slides.length; i += 1) {
        var $slideEl = slides.eq(i);
        var slideIndex = i;
        if (isVirtual) {
          slideIndex = parseInt($slideEl.attr('data-swiper-slide-index'), 10);
        }
        var slideAngle = slideIndex * 90;
        var round = Math.floor(slideAngle / 360);
        if (rtl) {
          slideAngle = -slideAngle;
          round = Math.floor(-slideAngle / 360);
        }
        var progress = Math.max(Math.min($slideEl[0].progress, 1), -1);
        var tx = 0;
        var ty = 0;
        var tz = 0;
        if (slideIndex % 4 === 0) {
          tx = -round * 4 * swiperSize;
          tz = 0;
        } else if ((slideIndex - 1) % 4 === 0) {
          tx = 0;
          tz = -round * 4 * swiperSize;
        } else if ((slideIndex - 2) % 4 === 0) {
          tx = swiperSize + (round * 4 * swiperSize);
          tz = swiperSize;
        } else if ((slideIndex - 3) % 4 === 0) {
          tx = -swiperSize;
          tz = (3 * swiperSize) + (swiperSize * 4 * round);
        }
        if (rtl) {
          tx = -tx;
        }

        if (!isHorizontal) {
          ty = tx;
          tx = 0;
        }

        var transform = "rotateX(" + (isHorizontal ? 0 : -slideAngle) + "deg) rotateY(" + (isHorizontal ? slideAngle : 0) + "deg) translate3d(" + tx + "px, " + ty + "px, " + tz + "px)";
        if (progress <= 1 && progress > -1) {
          wrapperRotate = (slideIndex * 90) + (progress * 90);
          if (rtl) { wrapperRotate = (-slideIndex * 90) - (progress * 90); }
        }
        $slideEl.transform(transform);
        if (params.slideShadows) {
          // Set shadows
          var shadowBefore = isHorizontal ? $slideEl.find('.swiper-slide-shadow-left') : $slideEl.find('.swiper-slide-shadow-top');
          var shadowAfter = isHorizontal ? $slideEl.find('.swiper-slide-shadow-right') : $slideEl.find('.swiper-slide-shadow-bottom');
          if (shadowBefore.length === 0) {
            shadowBefore = $(("<div class=\"swiper-slide-shadow-" + (isHorizontal ? 'left' : 'top') + "\"></div>"));
            $slideEl.append(shadowBefore);
          }
          if (shadowAfter.length === 0) {
            shadowAfter = $(("<div class=\"swiper-slide-shadow-" + (isHorizontal ? 'right' : 'bottom') + "\"></div>"));
            $slideEl.append(shadowAfter);
          }
          if (shadowBefore.length) { shadowBefore[0].style.opacity = Math.max(-progress, 0); }
          if (shadowAfter.length) { shadowAfter[0].style.opacity = Math.max(progress, 0); }
        }
      }
      $wrapperEl.css({
        '-webkit-transform-origin': ("50% 50% -" + (swiperSize / 2) + "px"),
        '-moz-transform-origin': ("50% 50% -" + (swiperSize / 2) + "px"),
        '-ms-transform-origin': ("50% 50% -" + (swiperSize / 2) + "px"),
        'transform-origin': ("50% 50% -" + (swiperSize / 2) + "px"),
      });

      if (params.shadow) {
        if (isHorizontal) {
          $cubeShadowEl.transform(("translate3d(0px, " + ((swiperWidth / 2) + params.shadowOffset) + "px, " + (-swiperWidth / 2) + "px) rotateX(90deg) rotateZ(0deg) scale(" + (params.shadowScale) + ")"));
        } else {
          var shadowAngle = Math.abs(wrapperRotate) - (Math.floor(Math.abs(wrapperRotate) / 90) * 90);
          var multiplier = 1.5 - (
            (Math.sin((shadowAngle * 2 * Math.PI) / 360) / 2)
            + (Math.cos((shadowAngle * 2 * Math.PI) / 360) / 2)
          );
          var scale1 = params.shadowScale;
          var scale2 = params.shadowScale / multiplier;
          var offset = params.shadowOffset;
          $cubeShadowEl.transform(("scale3d(" + scale1 + ", 1, " + scale2 + ") translate3d(0px, " + ((swiperHeight / 2) + offset) + "px, " + (-swiperHeight / 2 / scale2) + "px) rotateX(-90deg)"));
        }
      }
      var zFactor = (Browser.isSafari || Browser.isUiWebView) ? (-swiperSize / 2) : 0;
      $wrapperEl
        .transform(("translate3d(0px,0," + zFactor + "px) rotateX(" + (swiper.isHorizontal() ? 0 : wrapperRotate) + "deg) rotateY(" + (swiper.isHorizontal() ? -wrapperRotate : 0) + "deg)"));
    },
    setTransition: function setTransition(duration) {
      var swiper = this;
      var $el = swiper.$el;
      var slides = swiper.slides;
      slides
        .transition(duration)
        .find('.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left')
        .transition(duration);
      if (swiper.params.cubeEffect.shadow && !swiper.isHorizontal()) {
        $el.find('.swiper-cube-shadow').transition(duration);
      }
    },
  };

  var EffectCube = {
    name: 'effect-cube',
    params: {
      cubeEffect: {
        slideShadows: true,
        shadow: true,
        shadowOffset: 20,
        shadowScale: 0.94,
      },
    },
    create: function create() {
      var swiper = this;
      Utils.extend(swiper, {
        cubeEffect: {
          setTranslate: Cube.setTranslate.bind(swiper),
          setTransition: Cube.setTransition.bind(swiper),
        },
      });
    },
    on: {
      beforeInit: function beforeInit() {
        var swiper = this;
        if (swiper.params.effect !== 'cube') { return; }
        swiper.classNames.push(((swiper.params.containerModifierClass) + "cube"));
        swiper.classNames.push(((swiper.params.containerModifierClass) + "3d"));
        var overwriteParams = {
          slidesPerView: 1,
          slidesPerColumn: 1,
          slidesPerGroup: 1,
          watchSlidesProgress: true,
          resistanceRatio: 0,
          spaceBetween: 0,
          centeredSlides: false,
          virtualTranslate: true,
        };
        Utils.extend(swiper.params, overwriteParams);
        Utils.extend(swiper.originalParams, overwriteParams);
      },
      setTranslate: function setTranslate() {
        var swiper = this;
        if (swiper.params.effect !== 'cube') { return; }
        swiper.cubeEffect.setTranslate();
      },
      setTransition: function setTransition(duration) {
        var swiper = this;
        if (swiper.params.effect !== 'cube') { return; }
        swiper.cubeEffect.setTransition(duration);
      },
    },
  };

  var Flip = {
    setTranslate: function setTranslate() {
      var swiper = this;
      var slides = swiper.slides;
      var rtl = swiper.rtlTranslate;
      for (var i = 0; i < slides.length; i += 1) {
        var $slideEl = slides.eq(i);
        var progress = $slideEl[0].progress;
        if (swiper.params.flipEffect.limitRotation) {
          progress = Math.max(Math.min($slideEl[0].progress, 1), -1);
        }
        var offset = $slideEl[0].swiperSlideOffset;
        var rotate = -180 * progress;
        var rotateY = rotate;
        var rotateX = 0;
        var tx = -offset;
        var ty = 0;
        if (!swiper.isHorizontal()) {
          ty = tx;
          tx = 0;
          rotateX = -rotateY;
          rotateY = 0;
        } else if (rtl) {
          rotateY = -rotateY;
        }

        $slideEl[0].style.zIndex = -Math.abs(Math.round(progress)) + slides.length;

        if (swiper.params.flipEffect.slideShadows) {
          // Set shadows
          var shadowBefore = swiper.isHorizontal() ? $slideEl.find('.swiper-slide-shadow-left') : $slideEl.find('.swiper-slide-shadow-top');
          var shadowAfter = swiper.isHorizontal() ? $slideEl.find('.swiper-slide-shadow-right') : $slideEl.find('.swiper-slide-shadow-bottom');
          if (shadowBefore.length === 0) {
            shadowBefore = $(("<div class=\"swiper-slide-shadow-" + (swiper.isHorizontal() ? 'left' : 'top') + "\"></div>"));
            $slideEl.append(shadowBefore);
          }
          if (shadowAfter.length === 0) {
            shadowAfter = $(("<div class=\"swiper-slide-shadow-" + (swiper.isHorizontal() ? 'right' : 'bottom') + "\"></div>"));
            $slideEl.append(shadowAfter);
          }
          if (shadowBefore.length) { shadowBefore[0].style.opacity = Math.max(-progress, 0); }
          if (shadowAfter.length) { shadowAfter[0].style.opacity = Math.max(progress, 0); }
        }
        $slideEl
          .transform(("translate3d(" + tx + "px, " + ty + "px, 0px) rotateX(" + rotateX + "deg) rotateY(" + rotateY + "deg)"));
      }
    },
    setTransition: function setTransition(duration) {
      var swiper = this;
      var slides = swiper.slides;
      var activeIndex = swiper.activeIndex;
      var $wrapperEl = swiper.$wrapperEl;
      slides
        .transition(duration)
        .find('.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left')
        .transition(duration);
      if (swiper.params.virtualTranslate && duration !== 0) {
        var eventTriggered = false;
        // eslint-disable-next-line
        slides.eq(activeIndex).transitionEnd(function onTransitionEnd() {
          if (eventTriggered) { return; }
          if (!swiper || swiper.destroyed) { return; }
          // if (!$(this).hasClass(swiper.params.slideActiveClass)) return;
          eventTriggered = true;
          swiper.animating = false;
          var triggerEvents = ['webkitTransitionEnd', 'transitionend'];
          for (var i = 0; i < triggerEvents.length; i += 1) {
            $wrapperEl.trigger(triggerEvents[i]);
          }
        });
      }
    },
  };

  var EffectFlip = {
    name: 'effect-flip',
    params: {
      flipEffect: {
        slideShadows: true,
        limitRotation: true,
      },
    },
    create: function create() {
      var swiper = this;
      Utils.extend(swiper, {
        flipEffect: {
          setTranslate: Flip.setTranslate.bind(swiper),
          setTransition: Flip.setTransition.bind(swiper),
        },
      });
    },
    on: {
      beforeInit: function beforeInit() {
        var swiper = this;
        if (swiper.params.effect !== 'flip') { return; }
        swiper.classNames.push(((swiper.params.containerModifierClass) + "flip"));
        swiper.classNames.push(((swiper.params.containerModifierClass) + "3d"));
        var overwriteParams = {
          slidesPerView: 1,
          slidesPerColumn: 1,
          slidesPerGroup: 1,
          watchSlidesProgress: true,
          spaceBetween: 0,
          virtualTranslate: true,
        };
        Utils.extend(swiper.params, overwriteParams);
        Utils.extend(swiper.originalParams, overwriteParams);
      },
      setTranslate: function setTranslate() {
        var swiper = this;
        if (swiper.params.effect !== 'flip') { return; }
        swiper.flipEffect.setTranslate();
      },
      setTransition: function setTransition(duration) {
        var swiper = this;
        if (swiper.params.effect !== 'flip') { return; }
        swiper.flipEffect.setTransition(duration);
      },
    },
  };

  var Coverflow = {
    setTranslate: function setTranslate() {
      var swiper = this;
      var swiperWidth = swiper.width;
      var swiperHeight = swiper.height;
      var slides = swiper.slides;
      var $wrapperEl = swiper.$wrapperEl;
      var slidesSizesGrid = swiper.slidesSizesGrid;
      var params = swiper.params.coverflowEffect;
      var isHorizontal = swiper.isHorizontal();
      var transform = swiper.translate;
      var center = isHorizontal ? -transform + (swiperWidth / 2) : -transform + (swiperHeight / 2);
      var rotate = isHorizontal ? params.rotate : -params.rotate;
      var translate = params.depth;
      // Each slide offset from center
      for (var i = 0, length = slides.length; i < length; i += 1) {
        var $slideEl = slides.eq(i);
        var slideSize = slidesSizesGrid[i];
        var slideOffset = $slideEl[0].swiperSlideOffset;
        var offsetMultiplier = ((center - slideOffset - (slideSize / 2)) / slideSize) * params.modifier;

        var rotateY = isHorizontal ? rotate * offsetMultiplier : 0;
        var rotateX = isHorizontal ? 0 : rotate * offsetMultiplier;
        // var rotateZ = 0
        var translateZ = -translate * Math.abs(offsetMultiplier);

        var stretch = params.stretch;
        // Allow percentage to make a relative stretch for responsive sliders
        if (typeof stretch === 'string' && stretch.indexOf('%') !== -1) {
          stretch = ((parseFloat(params.stretch) / 100) * slideSize);
        }
        var translateY = isHorizontal ? 0 : stretch * (offsetMultiplier);
        var translateX = isHorizontal ? stretch * (offsetMultiplier) : 0;

        // Fix for ultra small values
        if (Math.abs(translateX) < 0.001) { translateX = 0; }
        if (Math.abs(translateY) < 0.001) { translateY = 0; }
        if (Math.abs(translateZ) < 0.001) { translateZ = 0; }
        if (Math.abs(rotateY) < 0.001) { rotateY = 0; }
        if (Math.abs(rotateX) < 0.001) { rotateX = 0; }

        var slideTransform = "translate3d(" + translateX + "px," + translateY + "px," + translateZ + "px)  rotateX(" + rotateX + "deg) rotateY(" + rotateY + "deg)";

        $slideEl.transform(slideTransform);
        $slideEl[0].style.zIndex = -Math.abs(Math.round(offsetMultiplier)) + 1;
        if (params.slideShadows) {
          // Set shadows
          var $shadowBeforeEl = isHorizontal ? $slideEl.find('.swiper-slide-shadow-left') : $slideEl.find('.swiper-slide-shadow-top');
          var $shadowAfterEl = isHorizontal ? $slideEl.find('.swiper-slide-shadow-right') : $slideEl.find('.swiper-slide-shadow-bottom');
          if ($shadowBeforeEl.length === 0) {
            $shadowBeforeEl = $(("<div class=\"swiper-slide-shadow-" + (isHorizontal ? 'left' : 'top') + "\"></div>"));
            $slideEl.append($shadowBeforeEl);
          }
          if ($shadowAfterEl.length === 0) {
            $shadowAfterEl = $(("<div class=\"swiper-slide-shadow-" + (isHorizontal ? 'right' : 'bottom') + "\"></div>"));
            $slideEl.append($shadowAfterEl);
          }
          if ($shadowBeforeEl.length) { $shadowBeforeEl[0].style.opacity = offsetMultiplier > 0 ? offsetMultiplier : 0; }
          if ($shadowAfterEl.length) { $shadowAfterEl[0].style.opacity = (-offsetMultiplier) > 0 ? -offsetMultiplier : 0; }
        }
      }

      // Set correct perspective for IE10
      if (Support.pointerEvents || Support.prefixedPointerEvents) {
        var ws = $wrapperEl[0].style;
        ws.perspectiveOrigin = center + "px 50%";
      }
    },
    setTransition: function setTransition(duration) {
      var swiper = this;
      swiper.slides
        .transition(duration)
        .find('.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left')
        .transition(duration);
    },
  };

  var EffectCoverflow = {
    name: 'effect-coverflow',
    params: {
      coverflowEffect: {
        rotate: 50,
        stretch: 0,
        depth: 100,
        modifier: 1,
        slideShadows: true,
      },
    },
    create: function create() {
      var swiper = this;
      Utils.extend(swiper, {
        coverflowEffect: {
          setTranslate: Coverflow.setTranslate.bind(swiper),
          setTransition: Coverflow.setTransition.bind(swiper),
        },
      });
    },
    on: {
      beforeInit: function beforeInit() {
        var swiper = this;
        if (swiper.params.effect !== 'coverflow') { return; }

        swiper.classNames.push(((swiper.params.containerModifierClass) + "coverflow"));
        swiper.classNames.push(((swiper.params.containerModifierClass) + "3d"));

        swiper.params.watchSlidesProgress = true;
        swiper.originalParams.watchSlidesProgress = true;
      },
      setTranslate: function setTranslate() {
        var swiper = this;
        if (swiper.params.effect !== 'coverflow') { return; }
        swiper.coverflowEffect.setTranslate();
      },
      setTransition: function setTransition(duration) {
        var swiper = this;
        if (swiper.params.effect !== 'coverflow') { return; }
        swiper.coverflowEffect.setTransition(duration);
      },
    },
  };

  var Thumbs = {
    init: function init() {
      var swiper = this;
      var ref = swiper.params;
      var thumbsParams = ref.thumbs;
      var SwiperClass = swiper.constructor;
      if (thumbsParams.swiper instanceof SwiperClass) {
        swiper.thumbs.swiper = thumbsParams.swiper;
        Utils.extend(swiper.thumbs.swiper.originalParams, {
          watchSlidesProgress: true,
          slideToClickedSlide: false,
        });
        Utils.extend(swiper.thumbs.swiper.params, {
          watchSlidesProgress: true,
          slideToClickedSlide: false,
        });
      } else if (Utils.isObject(thumbsParams.swiper)) {
        swiper.thumbs.swiper = new SwiperClass(Utils.extend({}, thumbsParams.swiper, {
          watchSlidesVisibility: true,
          watchSlidesProgress: true,
          slideToClickedSlide: false,
        }));
        swiper.thumbs.swiperCreated = true;
      }
      swiper.thumbs.swiper.$el.addClass(swiper.params.thumbs.thumbsContainerClass);
      swiper.thumbs.swiper.on('tap', swiper.thumbs.onThumbClick);
    },
    onThumbClick: function onThumbClick() {
      var swiper = this;
      var thumbsSwiper = swiper.thumbs.swiper;
      if (!thumbsSwiper) { return; }
      var clickedIndex = thumbsSwiper.clickedIndex;
      var clickedSlide = thumbsSwiper.clickedSlide;
      if (clickedSlide && $(clickedSlide).hasClass(swiper.params.thumbs.slideThumbActiveClass)) { return; }
      if (typeof clickedIndex === 'undefined' || clickedIndex === null) { return; }
      var slideToIndex;
      if (thumbsSwiper.params.loop) {
        slideToIndex = parseInt($(thumbsSwiper.clickedSlide).attr('data-swiper-slide-index'), 10);
      } else {
        slideToIndex = clickedIndex;
      }
      if (swiper.params.loop) {
        var currentIndex = swiper.activeIndex;
        if (swiper.slides.eq(currentIndex).hasClass(swiper.params.slideDuplicateClass)) {
          swiper.loopFix();
          // eslint-disable-next-line
          swiper._clientLeft = swiper.$wrapperEl[0].clientLeft;
          currentIndex = swiper.activeIndex;
        }
        var prevIndex = swiper.slides.eq(currentIndex).prevAll(("[data-swiper-slide-index=\"" + slideToIndex + "\"]")).eq(0).index();
        var nextIndex = swiper.slides.eq(currentIndex).nextAll(("[data-swiper-slide-index=\"" + slideToIndex + "\"]")).eq(0).index();
        if (typeof prevIndex === 'undefined') { slideToIndex = nextIndex; }
        else if (typeof nextIndex === 'undefined') { slideToIndex = prevIndex; }
        else if (nextIndex - currentIndex < currentIndex - prevIndex) { slideToIndex = nextIndex; }
        else { slideToIndex = prevIndex; }
      }
      swiper.slideTo(slideToIndex);
    },
    update: function update(initial) {
      var swiper = this;
      var thumbsSwiper = swiper.thumbs.swiper;
      if (!thumbsSwiper) { return; }

      var slidesPerView = thumbsSwiper.params.slidesPerView === 'auto'
        ? thumbsSwiper.slidesPerViewDynamic()
        : thumbsSwiper.params.slidesPerView;

      if (swiper.realIndex !== thumbsSwiper.realIndex) {
        var currentThumbsIndex = thumbsSwiper.activeIndex;
        var newThumbsIndex;
        if (thumbsSwiper.params.loop) {
          if (thumbsSwiper.slides.eq(currentThumbsIndex).hasClass(thumbsSwiper.params.slideDuplicateClass)) {
            thumbsSwiper.loopFix();
            // eslint-disable-next-line
            thumbsSwiper._clientLeft = thumbsSwiper.$wrapperEl[0].clientLeft;
            currentThumbsIndex = thumbsSwiper.activeIndex;
          }
          // Find actual thumbs index to slide to
          var prevThumbsIndex = thumbsSwiper.slides.eq(currentThumbsIndex).prevAll(("[data-swiper-slide-index=\"" + (swiper.realIndex) + "\"]")).eq(0).index();
          var nextThumbsIndex = thumbsSwiper.slides.eq(currentThumbsIndex).nextAll(("[data-swiper-slide-index=\"" + (swiper.realIndex) + "\"]")).eq(0).index();
          if (typeof prevThumbsIndex === 'undefined') { newThumbsIndex = nextThumbsIndex; }
          else if (typeof nextThumbsIndex === 'undefined') { newThumbsIndex = prevThumbsIndex; }
          else if (nextThumbsIndex - currentThumbsIndex === currentThumbsIndex - prevThumbsIndex) { newThumbsIndex = currentThumbsIndex; }
          else if (nextThumbsIndex - currentThumbsIndex < currentThumbsIndex - prevThumbsIndex) { newThumbsIndex = nextThumbsIndex; }
          else { newThumbsIndex = prevThumbsIndex; }
        } else {
          newThumbsIndex = swiper.realIndex;
        }
        if (thumbsSwiper.visibleSlidesIndexes && thumbsSwiper.visibleSlidesIndexes.indexOf(newThumbsIndex) < 0) {
          if (thumbsSwiper.params.centeredSlides) {
            if (newThumbsIndex > currentThumbsIndex) {
              newThumbsIndex = newThumbsIndex - Math.floor(slidesPerView / 2) + 1;
            } else {
              newThumbsIndex = newThumbsIndex + Math.floor(slidesPerView / 2) - 1;
            }
          } else if (newThumbsIndex > currentThumbsIndex) {
            newThumbsIndex = newThumbsIndex - slidesPerView + 1;
          }
          thumbsSwiper.slideTo(newThumbsIndex, initial ? 0 : undefined);
        }
      }

      // Activate thumbs
      var thumbsToActivate = 1;
      var thumbActiveClass = swiper.params.thumbs.slideThumbActiveClass;

      if (swiper.params.slidesPerView > 1 && !swiper.params.centeredSlides) {
        thumbsToActivate = swiper.params.slidesPerView;
      }

      if (!swiper.params.thumbs.multipleActiveThumbs) {
        thumbsToActivate = 1;
      }

      thumbsToActivate = Math.floor(thumbsToActivate);

      thumbsSwiper.slides.removeClass(thumbActiveClass);
      if (thumbsSwiper.params.loop || (thumbsSwiper.params.virtual && thumbsSwiper.params.virtual.enabled)) {
        for (var i = 0; i < thumbsToActivate; i += 1) {
          thumbsSwiper.$wrapperEl.children(("[data-swiper-slide-index=\"" + (swiper.realIndex + i) + "\"]")).addClass(thumbActiveClass);
        }
      } else {
        for (var i$1 = 0; i$1 < thumbsToActivate; i$1 += 1) {
          thumbsSwiper.slides.eq(swiper.realIndex + i$1).addClass(thumbActiveClass);
        }
      }
    },
  };
  var Thumbs$1 = {
    name: 'thumbs',
    params: {
      thumbs: {
        multipleActiveThumbs: true,
        swiper: null,
        slideThumbActiveClass: 'swiper-slide-thumb-active',
        thumbsContainerClass: 'swiper-container-thumbs',
      },
    },
    create: function create() {
      var swiper = this;
      Utils.extend(swiper, {
        thumbs: {
          swiper: null,
          init: Thumbs.init.bind(swiper),
          update: Thumbs.update.bind(swiper),
          onThumbClick: Thumbs.onThumbClick.bind(swiper),
        },
      });
    },
    on: {
      beforeInit: function beforeInit() {
        var swiper = this;
        var ref = swiper.params;
        var thumbs = ref.thumbs;
        if (!thumbs || !thumbs.swiper) { return; }
        swiper.thumbs.init();
        swiper.thumbs.update(true);
      },
      slideChange: function slideChange() {
        var swiper = this;
        if (!swiper.thumbs.swiper) { return; }
        swiper.thumbs.update();
      },
      update: function update() {
        var swiper = this;
        if (!swiper.thumbs.swiper) { return; }
        swiper.thumbs.update();
      },
      resize: function resize() {
        var swiper = this;
        if (!swiper.thumbs.swiper) { return; }
        swiper.thumbs.update();
      },
      observerUpdate: function observerUpdate() {
        var swiper = this;
        if (!swiper.thumbs.swiper) { return; }
        swiper.thumbs.update();
      },
      setTransition: function setTransition(duration) {
        var swiper = this;
        var thumbsSwiper = swiper.thumbs.swiper;
        if (!thumbsSwiper) { return; }
        thumbsSwiper.setTransition(duration);
      },
      beforeDestroy: function beforeDestroy() {
        var swiper = this;
        var thumbsSwiper = swiper.thumbs.swiper;
        if (!thumbsSwiper) { return; }
        if (swiper.thumbs.swiperCreated && thumbsSwiper) {
          thumbsSwiper.destroy();
        }
      },
    },
  };

  // Swiper Class

  var components = [
    Device$1,
    Support$1,
    Browser$1,
    Resize,
    Observer$1,
    Virtual$1,
    Keyboard$1,
    Mousewheel$1,
    Navigation$1,
    Pagination$1,
    Scrollbar$1,
    Parallax$1,
    Zoom$1,
    Lazy$1,
    Controller$1,
    A11y,
    History$1,
    HashNavigation$1,
    Autoplay$1,
    EffectFade,
    EffectCube,
    EffectFlip,
    EffectCoverflow,
    Thumbs$1
  ];

  if (typeof Swiper.use === 'undefined') {
    Swiper.use = Swiper.Class.use;
    Swiper.installModule = Swiper.Class.installModule;
  }

  Swiper.use(components);

  return Swiper;

}));
assets/lib/swiper/swiper.min.js000064400000417621151327220410012566 0ustar00/**
 * Swiper 5.3.6
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * http://swiperjs.com
 *
 * Copyright 2014-2020 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: February 29, 2020
 */

!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e=e||self).Swiper=t()}(this,(function(){"use strict";var e="undefined"==typeof document?{body:{},addEventListener:function(){},removeEventListener:function(){},activeElement:{blur:function(){},nodeName:""},querySelector:function(){return null},querySelectorAll:function(){return[]},getElementById:function(){return null},createEvent:function(){return{initEvent:function(){}}},createElement:function(){return{children:[],childNodes:[],style:{},setAttribute:function(){},getElementsByTagName:function(){return[]}}},location:{hash:""}}:document,t="undefined"==typeof window?{document:e,navigator:{userAgent:""},location:{},history:{},CustomEvent:function(){return this},addEventListener:function(){},removeEventListener:function(){},getComputedStyle:function(){return{getPropertyValue:function(){return""}}},Image:function(){},Date:function(){},screen:{},setTimeout:function(){},clearTimeout:function(){}}:window,i=function(e){for(var t=0;t<e.length;t+=1)this[t]=e[t];return this.length=e.length,this};function s(s,a){var r=[],n=0;if(s&&!a&&s instanceof i)return s;if(s)if("string"==typeof s){var o,l,d=s.trim();if(d.indexOf("<")>=0&&d.indexOf(">")>=0){var h="div";for(0===d.indexOf("<li")&&(h="ul"),0===d.indexOf("<tr")&&(h="tbody"),0!==d.indexOf("<td")&&0!==d.indexOf("<th")||(h="tr"),0===d.indexOf("<tbody")&&(h="table"),0===d.indexOf("<option")&&(h="select"),(l=e.createElement(h)).innerHTML=d,n=0;n<l.childNodes.length;n+=1)r.push(l.childNodes[n])}else for(o=a||"#"!==s[0]||s.match(/[ .<>:~]/)?(a||e).querySelectorAll(s.trim()):[e.getElementById(s.trim().split("#")[1])],n=0;n<o.length;n+=1)o[n]&&r.push(o[n])}else if(s.nodeType||s===t||s===e)r.push(s);else if(s.length>0&&s[0].nodeType)for(n=0;n<s.length;n+=1)r.push(s[n]);return new i(r)}function a(e){for(var t=[],i=0;i<e.length;i+=1)-1===t.indexOf(e[i])&&t.push(e[i]);return t}s.fn=i.prototype,s.Class=i,s.Dom7=i;var r={addClass:function(e){if(void 0===e)return this;for(var t=e.split(" "),i=0;i<t.length;i+=1)for(var s=0;s<this.length;s+=1)void 0!==this[s]&&void 0!==this[s].classList&&this[s].classList.add(t[i]);return this},removeClass:function(e){for(var t=e.split(" "),i=0;i<t.length;i+=1)for(var s=0;s<this.length;s+=1)void 0!==this[s]&&void 0!==this[s].classList&&this[s].classList.remove(t[i]);return this},hasClass:function(e){return!!this[0]&&this[0].classList.contains(e)},toggleClass:function(e){for(var t=e.split(" "),i=0;i<t.length;i+=1)for(var s=0;s<this.length;s+=1)void 0!==this[s]&&void 0!==this[s].classList&&this[s].classList.toggle(t[i]);return this},attr:function(e,t){var i=arguments;if(1===arguments.length&&"string"==typeof e)return this[0]?this[0].getAttribute(e):void 0;for(var s=0;s<this.length;s+=1)if(2===i.length)this[s].setAttribute(e,t);else for(var a in e)this[s][a]=e[a],this[s].setAttribute(a,e[a]);return this},removeAttr:function(e){for(var t=0;t<this.length;t+=1)this[t].removeAttribute(e);return this},data:function(e,t){var i;if(void 0!==t){for(var s=0;s<this.length;s+=1)(i=this[s]).dom7ElementDataStorage||(i.dom7ElementDataStorage={}),i.dom7ElementDataStorage[e]=t;return this}if(i=this[0]){if(i.dom7ElementDataStorage&&e in i.dom7ElementDataStorage)return i.dom7ElementDataStorage[e];var a=i.getAttribute("data-"+e);return a||void 0}},transform:function(e){for(var t=0;t<this.length;t+=1){var i=this[t].style;i.webkitTransform=e,i.transform=e}return this},transition:function(e){"string"!=typeof e&&(e+="ms");for(var t=0;t<this.length;t+=1){var i=this[t].style;i.webkitTransitionDuration=e,i.transitionDuration=e}return this},on:function(){for(var e,t=[],i=arguments.length;i--;)t[i]=arguments[i];var a=t[0],r=t[1],n=t[2],o=t[3];function l(e){var t=e.target;if(t){var i=e.target.dom7EventData||[];if(i.indexOf(e)<0&&i.unshift(e),s(t).is(r))n.apply(t,i);else for(var a=s(t).parents(),o=0;o<a.length;o+=1)s(a[o]).is(r)&&n.apply(a[o],i)}}function d(e){var t=e&&e.target&&e.target.dom7EventData||[];t.indexOf(e)<0&&t.unshift(e),n.apply(this,t)}"function"==typeof t[1]&&(a=(e=t)[0],n=e[1],o=e[2],r=void 0),o||(o=!1);for(var h,p=a.split(" "),c=0;c<this.length;c+=1){var u=this[c];if(r)for(h=0;h<p.length;h+=1){var v=p[h];u.dom7LiveListeners||(u.dom7LiveListeners={}),u.dom7LiveListeners[v]||(u.dom7LiveListeners[v]=[]),u.dom7LiveListeners[v].push({listener:n,proxyListener:l}),u.addEventListener(v,l,o)}else for(h=0;h<p.length;h+=1){var f=p[h];u.dom7Listeners||(u.dom7Listeners={}),u.dom7Listeners[f]||(u.dom7Listeners[f]=[]),u.dom7Listeners[f].push({listener:n,proxyListener:d}),u.addEventListener(f,d,o)}}return this},off:function(){for(var e,t=[],i=arguments.length;i--;)t[i]=arguments[i];var s=t[0],a=t[1],r=t[2],n=t[3];"function"==typeof t[1]&&(s=(e=t)[0],r=e[1],n=e[2],a=void 0),n||(n=!1);for(var o=s.split(" "),l=0;l<o.length;l+=1)for(var d=o[l],h=0;h<this.length;h+=1){var p=this[h],c=void 0;if(!a&&p.dom7Listeners?c=p.dom7Listeners[d]:a&&p.dom7LiveListeners&&(c=p.dom7LiveListeners[d]),c&&c.length)for(var u=c.length-1;u>=0;u-=1){var v=c[u];r&&v.listener===r?(p.removeEventListener(d,v.proxyListener,n),c.splice(u,1)):r&&v.listener&&v.listener.dom7proxy&&v.listener.dom7proxy===r?(p.removeEventListener(d,v.proxyListener,n),c.splice(u,1)):r||(p.removeEventListener(d,v.proxyListener,n),c.splice(u,1))}}return this},trigger:function(){for(var i=[],s=arguments.length;s--;)i[s]=arguments[s];for(var a=i[0].split(" "),r=i[1],n=0;n<a.length;n+=1)for(var o=a[n],l=0;l<this.length;l+=1){var d=this[l],h=void 0;try{h=new t.CustomEvent(o,{detail:r,bubbles:!0,cancelable:!0})}catch(t){(h=e.createEvent("Event")).initEvent(o,!0,!0),h.detail=r}d.dom7EventData=i.filter((function(e,t){return t>0})),d.dispatchEvent(h),d.dom7EventData=[],delete d.dom7EventData}return this},transitionEnd:function(e){var t,i=["webkitTransitionEnd","transitionend"],s=this;function a(r){if(r.target===this)for(e.call(this,r),t=0;t<i.length;t+=1)s.off(i[t],a)}if(e)for(t=0;t<i.length;t+=1)s.on(i[t],a);return this},outerWidth:function(e){if(this.length>0){if(e){var t=this.styles();return this[0].offsetWidth+parseFloat(t.getPropertyValue("margin-right"))+parseFloat(t.getPropertyValue("margin-left"))}return this[0].offsetWidth}return null},outerHeight:function(e){if(this.length>0){if(e){var t=this.styles();return this[0].offsetHeight+parseFloat(t.getPropertyValue("margin-top"))+parseFloat(t.getPropertyValue("margin-bottom"))}return this[0].offsetHeight}return null},offset:function(){if(this.length>0){var i=this[0],s=i.getBoundingClientRect(),a=e.body,r=i.clientTop||a.clientTop||0,n=i.clientLeft||a.clientLeft||0,o=i===t?t.scrollY:i.scrollTop,l=i===t?t.scrollX:i.scrollLeft;return{top:s.top+o-r,left:s.left+l-n}}return null},css:function(e,i){var s;if(1===arguments.length){if("string"!=typeof e){for(s=0;s<this.length;s+=1)for(var a in e)this[s].style[a]=e[a];return this}if(this[0])return t.getComputedStyle(this[0],null).getPropertyValue(e)}if(2===arguments.length&&"string"==typeof e){for(s=0;s<this.length;s+=1)this[s].style[e]=i;return this}return this},each:function(e){if(!e)return this;for(var t=0;t<this.length;t+=1)if(!1===e.call(this[t],t,this[t]))return this;return this},html:function(e){if(void 0===e)return this[0]?this[0].innerHTML:void 0;for(var t=0;t<this.length;t+=1)this[t].innerHTML=e;return this},text:function(e){if(void 0===e)return this[0]?this[0].textContent.trim():null;for(var t=0;t<this.length;t+=1)this[t].textContent=e;return this},is:function(a){var r,n,o=this[0];if(!o||void 0===a)return!1;if("string"==typeof a){if(o.matches)return o.matches(a);if(o.webkitMatchesSelector)return o.webkitMatchesSelector(a);if(o.msMatchesSelector)return o.msMatchesSelector(a);for(r=s(a),n=0;n<r.length;n+=1)if(r[n]===o)return!0;return!1}if(a===e)return o===e;if(a===t)return o===t;if(a.nodeType||a instanceof i){for(r=a.nodeType?[a]:a,n=0;n<r.length;n+=1)if(r[n]===o)return!0;return!1}return!1},index:function(){var e,t=this[0];if(t){for(e=0;null!==(t=t.previousSibling);)1===t.nodeType&&(e+=1);return e}},eq:function(e){if(void 0===e)return this;var t,s=this.length;return new i(e>s-1?[]:e<0?(t=s+e)<0?[]:[this[t]]:[this[e]])},append:function(){for(var t,s=[],a=arguments.length;a--;)s[a]=arguments[a];for(var r=0;r<s.length;r+=1){t=s[r];for(var n=0;n<this.length;n+=1)if("string"==typeof t){var o=e.createElement("div");for(o.innerHTML=t;o.firstChild;)this[n].appendChild(o.firstChild)}else if(t instanceof i)for(var l=0;l<t.length;l+=1)this[n].appendChild(t[l]);else this[n].appendChild(t)}return this},prepend:function(t){var s,a;for(s=0;s<this.length;s+=1)if("string"==typeof t){var r=e.createElement("div");for(r.innerHTML=t,a=r.childNodes.length-1;a>=0;a-=1)this[s].insertBefore(r.childNodes[a],this[s].childNodes[0])}else if(t instanceof i)for(a=0;a<t.length;a+=1)this[s].insertBefore(t[a],this[s].childNodes[0]);else this[s].insertBefore(t,this[s].childNodes[0]);return this},next:function(e){return this.length>0?e?this[0].nextElementSibling&&s(this[0].nextElementSibling).is(e)?new i([this[0].nextElementSibling]):new i([]):this[0].nextElementSibling?new i([this[0].nextElementSibling]):new i([]):new i([])},nextAll:function(e){var t=[],a=this[0];if(!a)return new i([]);for(;a.nextElementSibling;){var r=a.nextElementSibling;e?s(r).is(e)&&t.push(r):t.push(r),a=r}return new i(t)},prev:function(e){if(this.length>0){var t=this[0];return e?t.previousElementSibling&&s(t.previousElementSibling).is(e)?new i([t.previousElementSibling]):new i([]):t.previousElementSibling?new i([t.previousElementSibling]):new i([])}return new i([])},prevAll:function(e){var t=[],a=this[0];if(!a)return new i([]);for(;a.previousElementSibling;){var r=a.previousElementSibling;e?s(r).is(e)&&t.push(r):t.push(r),a=r}return new i(t)},parent:function(e){for(var t=[],i=0;i<this.length;i+=1)null!==this[i].parentNode&&(e?s(this[i].parentNode).is(e)&&t.push(this[i].parentNode):t.push(this[i].parentNode));return s(a(t))},parents:function(e){for(var t=[],i=0;i<this.length;i+=1)for(var r=this[i].parentNode;r;)e?s(r).is(e)&&t.push(r):t.push(r),r=r.parentNode;return s(a(t))},closest:function(e){var t=this;return void 0===e?new i([]):(t.is(e)||(t=t.parents(e).eq(0)),t)},find:function(e){for(var t=[],s=0;s<this.length;s+=1)for(var a=this[s].querySelectorAll(e),r=0;r<a.length;r+=1)t.push(a[r]);return new i(t)},children:function(e){for(var t=[],r=0;r<this.length;r+=1)for(var n=this[r].childNodes,o=0;o<n.length;o+=1)e?1===n[o].nodeType&&s(n[o]).is(e)&&t.push(n[o]):1===n[o].nodeType&&t.push(n[o]);return new i(a(t))},filter:function(e){for(var t=[],s=0;s<this.length;s+=1)e.call(this[s],s,this[s])&&t.push(this[s]);return new i(t)},remove:function(){for(var e=0;e<this.length;e+=1)this[e].parentNode&&this[e].parentNode.removeChild(this[e]);return this},add:function(){for(var e=[],t=arguments.length;t--;)e[t]=arguments[t];var i,a;for(i=0;i<e.length;i+=1){var r=s(e[i]);for(a=0;a<r.length;a+=1)this[this.length]=r[a],this.length+=1}return this},styles:function(){return this[0]?t.getComputedStyle(this[0],null):{}}};Object.keys(r).forEach((function(e){s.fn[e]=s.fn[e]||r[e]}));var n={deleteProps:function(e){var t=e;Object.keys(t).forEach((function(e){try{t[e]=null}catch(e){}try{delete t[e]}catch(e){}}))},nextTick:function(e,t){return void 0===t&&(t=0),setTimeout(e,t)},now:function(){return Date.now()},getTranslate:function(e,i){var s,a,r;void 0===i&&(i="x");var n=t.getComputedStyle(e,null);return t.WebKitCSSMatrix?((a=n.transform||n.webkitTransform).split(",").length>6&&(a=a.split(", ").map((function(e){return e.replace(",",".")})).join(", ")),r=new t.WebKitCSSMatrix("none"===a?"":a)):s=(r=n.MozTransform||n.OTransform||n.MsTransform||n.msTransform||n.transform||n.getPropertyValue("transform").replace("translate(","matrix(1, 0, 0, 1,")).toString().split(","),"x"===i&&(a=t.WebKitCSSMatrix?r.m41:16===s.length?parseFloat(s[12]):parseFloat(s[4])),"y"===i&&(a=t.WebKitCSSMatrix?r.m42:16===s.length?parseFloat(s[13]):parseFloat(s[5])),a||0},parseUrlQuery:function(e){var i,s,a,r,n={},o=e||t.location.href;if("string"==typeof o&&o.length)for(r=(s=(o=o.indexOf("?")>-1?o.replace(/\S*\?/,""):"").split("&").filter((function(e){return""!==e}))).length,i=0;i<r;i+=1)a=s[i].replace(/#\S+/g,"").split("="),n[decodeURIComponent(a[0])]=void 0===a[1]?void 0:decodeURIComponent(a[1])||"";return n},isObject:function(e){return"object"==typeof e&&null!==e&&e.constructor&&e.constructor===Object},extend:function(){for(var e=[],t=arguments.length;t--;)e[t]=arguments[t];for(var i=Object(e[0]),s=1;s<e.length;s+=1){var a=e[s];if(null!=a)for(var r=Object.keys(Object(a)),o=0,l=r.length;o<l;o+=1){var d=r[o],h=Object.getOwnPropertyDescriptor(a,d);void 0!==h&&h.enumerable&&(n.isObject(i[d])&&n.isObject(a[d])?n.extend(i[d],a[d]):!n.isObject(i[d])&&n.isObject(a[d])?(i[d]={},n.extend(i[d],a[d])):i[d]=a[d])}}return i}},o={touch:t.Modernizr&&!0===t.Modernizr.touch||!!(t.navigator.maxTouchPoints>0||"ontouchstart"in t||t.DocumentTouch&&e instanceof t.DocumentTouch),pointerEvents:!!t.PointerEvent&&"maxTouchPoints"in t.navigator&&t.navigator.maxTouchPoints>0,observer:"MutationObserver"in t||"WebkitMutationObserver"in t,passiveListener:function(){var e=!1;try{var i=Object.defineProperty({},"passive",{get:function(){e=!0}});t.addEventListener("testPassiveListener",null,i)}catch(e){}return e}(),gestures:"ongesturestart"in t},l=function(e){void 0===e&&(e={});var t=this;t.params=e,t.eventsListeners={},t.params&&t.params.on&&Object.keys(t.params.on).forEach((function(e){t.on(e,t.params.on[e])}))},d={components:{configurable:!0}};l.prototype.on=function(e,t,i){var s=this;if("function"!=typeof t)return s;var a=i?"unshift":"push";return e.split(" ").forEach((function(e){s.eventsListeners[e]||(s.eventsListeners[e]=[]),s.eventsListeners[e][a](t)})),s},l.prototype.once=function(e,t,i){var s=this;if("function"!=typeof t)return s;function a(){for(var i=[],r=arguments.length;r--;)i[r]=arguments[r];s.off(e,a),a.f7proxy&&delete a.f7proxy,t.apply(s,i)}return a.f7proxy=t,s.on(e,a,i)},l.prototype.off=function(e,t){var i=this;return i.eventsListeners?(e.split(" ").forEach((function(e){void 0===t?i.eventsListeners[e]=[]:i.eventsListeners[e]&&i.eventsListeners[e].length&&i.eventsListeners[e].forEach((function(s,a){(s===t||s.f7proxy&&s.f7proxy===t)&&i.eventsListeners[e].splice(a,1)}))})),i):i},l.prototype.emit=function(){for(var e=[],t=arguments.length;t--;)e[t]=arguments[t];var i,s,a,r=this;if(!r.eventsListeners)return r;"string"==typeof e[0]||Array.isArray(e[0])?(i=e[0],s=e.slice(1,e.length),a=r):(i=e[0].events,s=e[0].data,a=e[0].context||r);var n=Array.isArray(i)?i:i.split(" ");return n.forEach((function(e){if(r.eventsListeners&&r.eventsListeners[e]){var t=[];r.eventsListeners[e].forEach((function(e){t.push(e)})),t.forEach((function(e){e.apply(a,s)}))}})),r},l.prototype.useModulesParams=function(e){var t=this;t.modules&&Object.keys(t.modules).forEach((function(i){var s=t.modules[i];s.params&&n.extend(e,s.params)}))},l.prototype.useModules=function(e){void 0===e&&(e={});var t=this;t.modules&&Object.keys(t.modules).forEach((function(i){var s=t.modules[i],a=e[i]||{};s.instance&&Object.keys(s.instance).forEach((function(e){var i=s.instance[e];t[e]="function"==typeof i?i.bind(t):i})),s.on&&t.on&&Object.keys(s.on).forEach((function(e){t.on(e,s.on[e])})),s.create&&s.create.bind(t)(a)}))},d.components.set=function(e){this.use&&this.use(e)},l.installModule=function(e){for(var t=[],i=arguments.length-1;i-- >0;)t[i]=arguments[i+1];var s=this;s.prototype.modules||(s.prototype.modules={});var a=e.name||Object.keys(s.prototype.modules).length+"_"+n.now();return s.prototype.modules[a]=e,e.proto&&Object.keys(e.proto).forEach((function(t){s.prototype[t]=e.proto[t]})),e.static&&Object.keys(e.static).forEach((function(t){s[t]=e.static[t]})),e.install&&e.install.apply(s,t),s},l.use=function(e){for(var t=[],i=arguments.length-1;i-- >0;)t[i]=arguments[i+1];var s=this;return Array.isArray(e)?(e.forEach((function(e){return s.installModule(e)})),s):s.installModule.apply(s,[e].concat(t))},Object.defineProperties(l,d);var h={updateSize:function(){var e,t,i=this.$el;e=void 0!==this.params.width?this.params.width:i[0].clientWidth,t=void 0!==this.params.height?this.params.height:i[0].clientHeight,0===e&&this.isHorizontal()||0===t&&this.isVertical()||(e=e-parseInt(i.css("padding-left"),10)-parseInt(i.css("padding-right"),10),t=t-parseInt(i.css("padding-top"),10)-parseInt(i.css("padding-bottom"),10),n.extend(this,{width:e,height:t,size:this.isHorizontal()?e:t}))},updateSlides:function(){var e=this.params,i=this.$wrapperEl,s=this.size,a=this.rtlTranslate,r=this.wrongRTL,o=this.virtual&&e.virtual.enabled,l=o?this.virtual.slides.length:this.slides.length,d=i.children("."+this.params.slideClass),h=o?this.virtual.slides.length:d.length,p=[],c=[],u=[];function v(t){return!e.cssMode||t!==d.length-1}var f=e.slidesOffsetBefore;"function"==typeof f&&(f=e.slidesOffsetBefore.call(this));var m=e.slidesOffsetAfter;"function"==typeof m&&(m=e.slidesOffsetAfter.call(this));var g=this.snapGrid.length,b=this.snapGrid.length,w=e.spaceBetween,y=-f,x=0,T=0;if(void 0!==s){var E,S;"string"==typeof w&&w.indexOf("%")>=0&&(w=parseFloat(w.replace("%",""))/100*s),this.virtualSize=-w,a?d.css({marginLeft:"",marginTop:""}):d.css({marginRight:"",marginBottom:""}),e.slidesPerColumn>1&&(E=Math.floor(h/e.slidesPerColumn)===h/this.params.slidesPerColumn?h:Math.ceil(h/e.slidesPerColumn)*e.slidesPerColumn,"auto"!==e.slidesPerView&&"row"===e.slidesPerColumnFill&&(E=Math.max(E,e.slidesPerView*e.slidesPerColumn)));for(var C,M=e.slidesPerColumn,P=E/M,z=Math.floor(h/e.slidesPerColumn),k=0;k<h;k+=1){S=0;var $=d.eq(k);if(e.slidesPerColumn>1){var L=void 0,I=void 0,D=void 0;if("row"===e.slidesPerColumnFill&&e.slidesPerGroup>1){var O=Math.floor(k/(e.slidesPerGroup*e.slidesPerColumn)),A=k-e.slidesPerColumn*e.slidesPerGroup*O,G=0===O?e.slidesPerGroup:Math.min(Math.ceil((h-O*M*e.slidesPerGroup)/M),e.slidesPerGroup);L=(I=A-(D=Math.floor(A/G))*G+O*e.slidesPerGroup)+D*E/M,$.css({"-webkit-box-ordinal-group":L,"-moz-box-ordinal-group":L,"-ms-flex-order":L,"-webkit-order":L,order:L})}else"column"===e.slidesPerColumnFill?(D=k-(I=Math.floor(k/M))*M,(I>z||I===z&&D===M-1)&&(D+=1)>=M&&(D=0,I+=1)):I=k-(D=Math.floor(k/P))*P;$.css("margin-"+(this.isHorizontal()?"top":"left"),0!==D&&e.spaceBetween&&e.spaceBetween+"px")}if("none"!==$.css("display")){if("auto"===e.slidesPerView){var H=t.getComputedStyle($[0],null),B=$[0].style.transform,N=$[0].style.webkitTransform;if(B&&($[0].style.transform="none"),N&&($[0].style.webkitTransform="none"),e.roundLengths)S=this.isHorizontal()?$.outerWidth(!0):$.outerHeight(!0);else if(this.isHorizontal()){var X=parseFloat(H.getPropertyValue("width")),V=parseFloat(H.getPropertyValue("padding-left")),Y=parseFloat(H.getPropertyValue("padding-right")),F=parseFloat(H.getPropertyValue("margin-left")),W=parseFloat(H.getPropertyValue("margin-right")),R=H.getPropertyValue("box-sizing");S=R&&"border-box"===R?X+F+W:X+V+Y+F+W}else{var q=parseFloat(H.getPropertyValue("height")),j=parseFloat(H.getPropertyValue("padding-top")),K=parseFloat(H.getPropertyValue("padding-bottom")),U=parseFloat(H.getPropertyValue("margin-top")),_=parseFloat(H.getPropertyValue("margin-bottom")),Z=H.getPropertyValue("box-sizing");S=Z&&"border-box"===Z?q+U+_:q+j+K+U+_}B&&($[0].style.transform=B),N&&($[0].style.webkitTransform=N),e.roundLengths&&(S=Math.floor(S))}else S=(s-(e.slidesPerView-1)*w)/e.slidesPerView,e.roundLengths&&(S=Math.floor(S)),d[k]&&(this.isHorizontal()?d[k].style.width=S+"px":d[k].style.height=S+"px");d[k]&&(d[k].swiperSlideSize=S),u.push(S),e.centeredSlides?(y=y+S/2+x/2+w,0===x&&0!==k&&(y=y-s/2-w),0===k&&(y=y-s/2-w),Math.abs(y)<.001&&(y=0),e.roundLengths&&(y=Math.floor(y)),T%e.slidesPerGroup==0&&p.push(y),c.push(y)):(e.roundLengths&&(y=Math.floor(y)),(T-Math.min(this.params.slidesPerGroupSkip,T))%this.params.slidesPerGroup==0&&p.push(y),c.push(y),y=y+S+w),this.virtualSize+=S+w,x=S,T+=1}}if(this.virtualSize=Math.max(this.virtualSize,s)+m,a&&r&&("slide"===e.effect||"coverflow"===e.effect)&&i.css({width:this.virtualSize+e.spaceBetween+"px"}),e.setWrapperSize&&(this.isHorizontal()?i.css({width:this.virtualSize+e.spaceBetween+"px"}):i.css({height:this.virtualSize+e.spaceBetween+"px"})),e.slidesPerColumn>1&&(this.virtualSize=(S+e.spaceBetween)*E,this.virtualSize=Math.ceil(this.virtualSize/e.slidesPerColumn)-e.spaceBetween,this.isHorizontal()?i.css({width:this.virtualSize+e.spaceBetween+"px"}):i.css({height:this.virtualSize+e.spaceBetween+"px"}),e.centeredSlides)){C=[];for(var Q=0;Q<p.length;Q+=1){var J=p[Q];e.roundLengths&&(J=Math.floor(J)),p[Q]<this.virtualSize+p[0]&&C.push(J)}p=C}if(!e.centeredSlides){C=[];for(var ee=0;ee<p.length;ee+=1){var te=p[ee];e.roundLengths&&(te=Math.floor(te)),p[ee]<=this.virtualSize-s&&C.push(te)}p=C,Math.floor(this.virtualSize-s)-Math.floor(p[p.length-1])>1&&p.push(this.virtualSize-s)}if(0===p.length&&(p=[0]),0!==e.spaceBetween&&(this.isHorizontal()?a?d.filter(v).css({marginLeft:w+"px"}):d.filter(v).css({marginRight:w+"px"}):d.filter(v).css({marginBottom:w+"px"})),e.centeredSlides&&e.centeredSlidesBounds){var ie=0;u.forEach((function(t){ie+=t+(e.spaceBetween?e.spaceBetween:0)}));var se=(ie-=e.spaceBetween)-s;p=p.map((function(e){return e<0?-f:e>se?se+m:e}))}if(e.centerInsufficientSlides){var ae=0;if(u.forEach((function(t){ae+=t+(e.spaceBetween?e.spaceBetween:0)})),(ae-=e.spaceBetween)<s){var re=(s-ae)/2;p.forEach((function(e,t){p[t]=e-re})),c.forEach((function(e,t){c[t]=e+re}))}}n.extend(this,{slides:d,snapGrid:p,slidesGrid:c,slidesSizesGrid:u}),h!==l&&this.emit("slidesLengthChange"),p.length!==g&&(this.params.watchOverflow&&this.checkOverflow(),this.emit("snapGridLengthChange")),c.length!==b&&this.emit("slidesGridLengthChange"),(e.watchSlidesProgress||e.watchSlidesVisibility)&&this.updateSlidesOffset()}},updateAutoHeight:function(e){var t,i=[],s=0;if("number"==typeof e?this.setTransition(e):!0===e&&this.setTransition(this.params.speed),"auto"!==this.params.slidesPerView&&this.params.slidesPerView>1)if(this.params.centeredSlides)i.push.apply(i,this.visibleSlides);else for(t=0;t<Math.ceil(this.params.slidesPerView);t+=1){var a=this.activeIndex+t;if(a>this.slides.length)break;i.push(this.slides.eq(a)[0])}else i.push(this.slides.eq(this.activeIndex)[0]);for(t=0;t<i.length;t+=1)if(void 0!==i[t]){var r=i[t].offsetHeight;s=r>s?r:s}s&&this.$wrapperEl.css("height",s+"px")},updateSlidesOffset:function(){for(var e=this.slides,t=0;t<e.length;t+=1)e[t].swiperSlideOffset=this.isHorizontal()?e[t].offsetLeft:e[t].offsetTop},updateSlidesProgress:function(e){void 0===e&&(e=this&&this.translate||0);var t=this.params,i=this.slides,a=this.rtlTranslate;if(0!==i.length){void 0===i[0].swiperSlideOffset&&this.updateSlidesOffset();var r=-e;a&&(r=e),i.removeClass(t.slideVisibleClass),this.visibleSlidesIndexes=[],this.visibleSlides=[];for(var n=0;n<i.length;n+=1){var o=i[n],l=(r+(t.centeredSlides?this.minTranslate():0)-o.swiperSlideOffset)/(o.swiperSlideSize+t.spaceBetween);if(t.watchSlidesVisibility||t.centeredSlides&&t.autoHeight){var d=-(r-o.swiperSlideOffset),h=d+this.slidesSizesGrid[n];(d>=0&&d<this.size-1||h>1&&h<=this.size||d<=0&&h>=this.size)&&(this.visibleSlides.push(o),this.visibleSlidesIndexes.push(n),i.eq(n).addClass(t.slideVisibleClass))}o.progress=a?-l:l}this.visibleSlides=s(this.visibleSlides)}},updateProgress:function(e){if(void 0===e){var t=this.rtlTranslate?-1:1;e=this&&this.translate&&this.translate*t||0}var i=this.params,s=this.maxTranslate()-this.minTranslate(),a=this.progress,r=this.isBeginning,o=this.isEnd,l=r,d=o;0===s?(a=0,r=!0,o=!0):(r=(a=(e-this.minTranslate())/s)<=0,o=a>=1),n.extend(this,{progress:a,isBeginning:r,isEnd:o}),(i.watchSlidesProgress||i.watchSlidesVisibility||i.centeredSlides&&i.autoHeight)&&this.updateSlidesProgress(e),r&&!l&&this.emit("reachBeginning toEdge"),o&&!d&&this.emit("reachEnd toEdge"),(l&&!r||d&&!o)&&this.emit("fromEdge"),this.emit("progress",a)},updateSlidesClasses:function(){var e,t=this.slides,i=this.params,s=this.$wrapperEl,a=this.activeIndex,r=this.realIndex,n=this.virtual&&i.virtual.enabled;t.removeClass(i.slideActiveClass+" "+i.slideNextClass+" "+i.slidePrevClass+" "+i.slideDuplicateActiveClass+" "+i.slideDuplicateNextClass+" "+i.slideDuplicatePrevClass),(e=n?this.$wrapperEl.find("."+i.slideClass+'[data-swiper-slide-index="'+a+'"]'):t.eq(a)).addClass(i.slideActiveClass),i.loop&&(e.hasClass(i.slideDuplicateClass)?s.children("."+i.slideClass+":not(."+i.slideDuplicateClass+')[data-swiper-slide-index="'+r+'"]').addClass(i.slideDuplicateActiveClass):s.children("."+i.slideClass+"."+i.slideDuplicateClass+'[data-swiper-slide-index="'+r+'"]').addClass(i.slideDuplicateActiveClass));var o=e.nextAll("."+i.slideClass).eq(0).addClass(i.slideNextClass);i.loop&&0===o.length&&(o=t.eq(0)).addClass(i.slideNextClass);var l=e.prevAll("."+i.slideClass).eq(0).addClass(i.slidePrevClass);i.loop&&0===l.length&&(l=t.eq(-1)).addClass(i.slidePrevClass),i.loop&&(o.hasClass(i.slideDuplicateClass)?s.children("."+i.slideClass+":not(."+i.slideDuplicateClass+')[data-swiper-slide-index="'+o.attr("data-swiper-slide-index")+'"]').addClass(i.slideDuplicateNextClass):s.children("."+i.slideClass+"."+i.slideDuplicateClass+'[data-swiper-slide-index="'+o.attr("data-swiper-slide-index")+'"]').addClass(i.slideDuplicateNextClass),l.hasClass(i.slideDuplicateClass)?s.children("."+i.slideClass+":not(."+i.slideDuplicateClass+')[data-swiper-slide-index="'+l.attr("data-swiper-slide-index")+'"]').addClass(i.slideDuplicatePrevClass):s.children("."+i.slideClass+"."+i.slideDuplicateClass+'[data-swiper-slide-index="'+l.attr("data-swiper-slide-index")+'"]').addClass(i.slideDuplicatePrevClass))},updateActiveIndex:function(e){var t,i=this.rtlTranslate?this.translate:-this.translate,s=this.slidesGrid,a=this.snapGrid,r=this.params,o=this.activeIndex,l=this.realIndex,d=this.snapIndex,h=e;if(void 0===h){for(var p=0;p<s.length;p+=1)void 0!==s[p+1]?i>=s[p]&&i<s[p+1]-(s[p+1]-s[p])/2?h=p:i>=s[p]&&i<s[p+1]&&(h=p+1):i>=s[p]&&(h=p);r.normalizeSlideIndex&&(h<0||void 0===h)&&(h=0)}if(a.indexOf(i)>=0)t=a.indexOf(i);else{var c=Math.min(r.slidesPerGroupSkip,h);t=c+Math.floor((h-c)/r.slidesPerGroup)}if(t>=a.length&&(t=a.length-1),h!==o){var u=parseInt(this.slides.eq(h).attr("data-swiper-slide-index")||h,10);n.extend(this,{snapIndex:t,realIndex:u,previousIndex:o,activeIndex:h}),this.emit("activeIndexChange"),this.emit("snapIndexChange"),l!==u&&this.emit("realIndexChange"),(this.initialized||this.runCallbacksOnInit)&&this.emit("slideChange")}else t!==d&&(this.snapIndex=t,this.emit("snapIndexChange"))},updateClickedSlide:function(e){var t=this.params,i=s(e.target).closest("."+t.slideClass)[0],a=!1;if(i)for(var r=0;r<this.slides.length;r+=1)this.slides[r]===i&&(a=!0);if(!i||!a)return this.clickedSlide=void 0,void(this.clickedIndex=void 0);this.clickedSlide=i,this.virtual&&this.params.virtual.enabled?this.clickedIndex=parseInt(s(i).attr("data-swiper-slide-index"),10):this.clickedIndex=s(i).index(),t.slideToClickedSlide&&void 0!==this.clickedIndex&&this.clickedIndex!==this.activeIndex&&this.slideToClickedSlide()}};var p={getTranslate:function(e){void 0===e&&(e=this.isHorizontal()?"x":"y");var t=this.params,i=this.rtlTranslate,s=this.translate,a=this.$wrapperEl;if(t.virtualTranslate)return i?-s:s;if(t.cssMode)return s;var r=n.getTranslate(a[0],e);return i&&(r=-r),r||0},setTranslate:function(e,t){var i=this.rtlTranslate,s=this.params,a=this.$wrapperEl,r=this.wrapperEl,n=this.progress,o=0,l=0;this.isHorizontal()?o=i?-e:e:l=e,s.roundLengths&&(o=Math.floor(o),l=Math.floor(l)),s.cssMode?r[this.isHorizontal()?"scrollLeft":"scrollTop"]=this.isHorizontal()?-o:-l:s.virtualTranslate||a.transform("translate3d("+o+"px, "+l+"px, 0px)"),this.previousTranslate=this.translate,this.translate=this.isHorizontal()?o:l;var d=this.maxTranslate()-this.minTranslate();(0===d?0:(e-this.minTranslate())/d)!==n&&this.updateProgress(e),this.emit("setTranslate",this.translate,t)},minTranslate:function(){return-this.snapGrid[0]},maxTranslate:function(){return-this.snapGrid[this.snapGrid.length-1]},translateTo:function(e,t,i,s,a){var r;void 0===e&&(e=0),void 0===t&&(t=this.params.speed),void 0===i&&(i=!0),void 0===s&&(s=!0);var n=this,o=n.params,l=n.wrapperEl;if(n.animating&&o.preventInteractionOnTransition)return!1;var d,h=n.minTranslate(),p=n.maxTranslate();if(d=s&&e>h?h:s&&e<p?p:e,n.updateProgress(d),o.cssMode){var c=n.isHorizontal();return 0===t?l[c?"scrollLeft":"scrollTop"]=-d:l.scrollTo?l.scrollTo(((r={})[c?"left":"top"]=-d,r.behavior="smooth",r)):l[c?"scrollLeft":"scrollTop"]=-d,!0}return 0===t?(n.setTransition(0),n.setTranslate(d),i&&(n.emit("beforeTransitionStart",t,a),n.emit("transitionEnd"))):(n.setTransition(t),n.setTranslate(d),i&&(n.emit("beforeTransitionStart",t,a),n.emit("transitionStart")),n.animating||(n.animating=!0,n.onTranslateToWrapperTransitionEnd||(n.onTranslateToWrapperTransitionEnd=function(e){n&&!n.destroyed&&e.target===this&&(n.$wrapperEl[0].removeEventListener("transitionend",n.onTranslateToWrapperTransitionEnd),n.$wrapperEl[0].removeEventListener("webkitTransitionEnd",n.onTranslateToWrapperTransitionEnd),n.onTranslateToWrapperTransitionEnd=null,delete n.onTranslateToWrapperTransitionEnd,i&&n.emit("transitionEnd"))}),n.$wrapperEl[0].addEventListener("transitionend",n.onTranslateToWrapperTransitionEnd),n.$wrapperEl[0].addEventListener("webkitTransitionEnd",n.onTranslateToWrapperTransitionEnd))),!0}};var c={setTransition:function(e,t){this.params.cssMode||this.$wrapperEl.transition(e),this.emit("setTransition",e,t)},transitionStart:function(e,t){void 0===e&&(e=!0);var i=this.activeIndex,s=this.params,a=this.previousIndex;if(!s.cssMode){s.autoHeight&&this.updateAutoHeight();var r=t;if(r||(r=i>a?"next":i<a?"prev":"reset"),this.emit("transitionStart"),e&&i!==a){if("reset"===r)return void this.emit("slideResetTransitionStart");this.emit("slideChangeTransitionStart"),"next"===r?this.emit("slideNextTransitionStart"):this.emit("slidePrevTransitionStart")}}},transitionEnd:function(e,t){void 0===e&&(e=!0);var i=this.activeIndex,s=this.previousIndex,a=this.params;if(this.animating=!1,!a.cssMode){this.setTransition(0);var r=t;if(r||(r=i>s?"next":i<s?"prev":"reset"),this.emit("transitionEnd"),e&&i!==s){if("reset"===r)return void this.emit("slideResetTransitionEnd");this.emit("slideChangeTransitionEnd"),"next"===r?this.emit("slideNextTransitionEnd"):this.emit("slidePrevTransitionEnd")}}}};var u={slideTo:function(e,t,i,s){var a;void 0===e&&(e=0),void 0===t&&(t=this.params.speed),void 0===i&&(i=!0);var r=this,n=e;n<0&&(n=0);var o=r.params,l=r.snapGrid,d=r.slidesGrid,h=r.previousIndex,p=r.activeIndex,c=r.rtlTranslate,u=r.wrapperEl;if(r.animating&&o.preventInteractionOnTransition)return!1;var v=Math.min(r.params.slidesPerGroupSkip,n),f=v+Math.floor((n-v)/r.params.slidesPerGroup);f>=l.length&&(f=l.length-1),(p||o.initialSlide||0)===(h||0)&&i&&r.emit("beforeSlideChangeStart");var m,g=-l[f];if(r.updateProgress(g),o.normalizeSlideIndex)for(var b=0;b<d.length;b+=1)-Math.floor(100*g)>=Math.floor(100*d[b])&&(n=b);if(r.initialized&&n!==p){if(!r.allowSlideNext&&g<r.translate&&g<r.minTranslate())return!1;if(!r.allowSlidePrev&&g>r.translate&&g>r.maxTranslate()&&(p||0)!==n)return!1}if(m=n>p?"next":n<p?"prev":"reset",c&&-g===r.translate||!c&&g===r.translate)return r.updateActiveIndex(n),o.autoHeight&&r.updateAutoHeight(),r.updateSlidesClasses(),"slide"!==o.effect&&r.setTranslate(g),"reset"!==m&&(r.transitionStart(i,m),r.transitionEnd(i,m)),!1;if(o.cssMode){var w=r.isHorizontal();return 0===t?u[w?"scrollLeft":"scrollTop"]=-g:u.scrollTo?u.scrollTo(((a={})[w?"left":"top"]=-g,a.behavior="smooth",a)):u[w?"scrollLeft":"scrollTop"]=-g,!0}return 0===t?(r.setTransition(0),r.setTranslate(g),r.updateActiveIndex(n),r.updateSlidesClasses(),r.emit("beforeTransitionStart",t,s),r.transitionStart(i,m),r.transitionEnd(i,m)):(r.setTransition(t),r.setTranslate(g),r.updateActiveIndex(n),r.updateSlidesClasses(),r.emit("beforeTransitionStart",t,s),r.transitionStart(i,m),r.animating||(r.animating=!0,r.onSlideToWrapperTransitionEnd||(r.onSlideToWrapperTransitionEnd=function(e){r&&!r.destroyed&&e.target===this&&(r.$wrapperEl[0].removeEventListener("transitionend",r.onSlideToWrapperTransitionEnd),r.$wrapperEl[0].removeEventListener("webkitTransitionEnd",r.onSlideToWrapperTransitionEnd),r.onSlideToWrapperTransitionEnd=null,delete r.onSlideToWrapperTransitionEnd,r.transitionEnd(i,m))}),r.$wrapperEl[0].addEventListener("transitionend",r.onSlideToWrapperTransitionEnd),r.$wrapperEl[0].addEventListener("webkitTransitionEnd",r.onSlideToWrapperTransitionEnd))),!0},slideToLoop:function(e,t,i,s){void 0===e&&(e=0),void 0===t&&(t=this.params.speed),void 0===i&&(i=!0);var a=e;return this.params.loop&&(a+=this.loopedSlides),this.slideTo(a,t,i,s)},slideNext:function(e,t,i){void 0===e&&(e=this.params.speed),void 0===t&&(t=!0);var s=this.params,a=this.animating,r=this.activeIndex<s.slidesPerGroupSkip?1:s.slidesPerGroup;if(s.loop){if(a)return!1;this.loopFix(),this._clientLeft=this.$wrapperEl[0].clientLeft}return this.slideTo(this.activeIndex+r,e,t,i)},slidePrev:function(e,t,i){void 0===e&&(e=this.params.speed),void 0===t&&(t=!0);var s=this.params,a=this.animating,r=this.snapGrid,n=this.slidesGrid,o=this.rtlTranslate;if(s.loop){if(a)return!1;this.loopFix(),this._clientLeft=this.$wrapperEl[0].clientLeft}function l(e){return e<0?-Math.floor(Math.abs(e)):Math.floor(e)}var d,h=l(o?this.translate:-this.translate),p=r.map((function(e){return l(e)})),c=(n.map((function(e){return l(e)})),r[p.indexOf(h)],r[p.indexOf(h)-1]);return void 0===c&&s.cssMode&&r.forEach((function(e){!c&&h>=e&&(c=e)})),void 0!==c&&(d=n.indexOf(c))<0&&(d=this.activeIndex-1),this.slideTo(d,e,t,i)},slideReset:function(e,t,i){return void 0===e&&(e=this.params.speed),void 0===t&&(t=!0),this.slideTo(this.activeIndex,e,t,i)},slideToClosest:function(e,t,i,s){void 0===e&&(e=this.params.speed),void 0===t&&(t=!0),void 0===s&&(s=.5);var a=this.activeIndex,r=Math.min(this.params.slidesPerGroupSkip,a),n=r+Math.floor((a-r)/this.params.slidesPerGroup),o=this.rtlTranslate?this.translate:-this.translate;if(o>=this.snapGrid[n]){var l=this.snapGrid[n];o-l>(this.snapGrid[n+1]-l)*s&&(a+=this.params.slidesPerGroup)}else{var d=this.snapGrid[n-1];o-d<=(this.snapGrid[n]-d)*s&&(a-=this.params.slidesPerGroup)}return a=Math.max(a,0),a=Math.min(a,this.slidesGrid.length-1),this.slideTo(a,e,t,i)},slideToClickedSlide:function(){var e,t=this,i=t.params,a=t.$wrapperEl,r="auto"===i.slidesPerView?t.slidesPerViewDynamic():i.slidesPerView,o=t.clickedIndex;if(i.loop){if(t.animating)return;e=parseInt(s(t.clickedSlide).attr("data-swiper-slide-index"),10),i.centeredSlides?o<t.loopedSlides-r/2||o>t.slides.length-t.loopedSlides+r/2?(t.loopFix(),o=a.children("."+i.slideClass+'[data-swiper-slide-index="'+e+'"]:not(.'+i.slideDuplicateClass+")").eq(0).index(),n.nextTick((function(){t.slideTo(o)}))):t.slideTo(o):o>t.slides.length-r?(t.loopFix(),o=a.children("."+i.slideClass+'[data-swiper-slide-index="'+e+'"]:not(.'+i.slideDuplicateClass+")").eq(0).index(),n.nextTick((function(){t.slideTo(o)}))):t.slideTo(o)}else t.slideTo(o)}};var v={loopCreate:function(){var t=this,i=t.params,a=t.$wrapperEl;a.children("."+i.slideClass+"."+i.slideDuplicateClass).remove();var r=a.children("."+i.slideClass);if(i.loopFillGroupWithBlank){var n=i.slidesPerGroup-r.length%i.slidesPerGroup;if(n!==i.slidesPerGroup){for(var o=0;o<n;o+=1){var l=s(e.createElement("div")).addClass(i.slideClass+" "+i.slideBlankClass);a.append(l)}r=a.children("."+i.slideClass)}}"auto"!==i.slidesPerView||i.loopedSlides||(i.loopedSlides=r.length),t.loopedSlides=Math.ceil(parseFloat(i.loopedSlides||i.slidesPerView,10)),t.loopedSlides+=i.loopAdditionalSlides,t.loopedSlides>r.length&&(t.loopedSlides=r.length);var d=[],h=[];r.each((function(e,i){var a=s(i);e<t.loopedSlides&&h.push(i),e<r.length&&e>=r.length-t.loopedSlides&&d.push(i),a.attr("data-swiper-slide-index",e)}));for(var p=0;p<h.length;p+=1)a.append(s(h[p].cloneNode(!0)).addClass(i.slideDuplicateClass));for(var c=d.length-1;c>=0;c-=1)a.prepend(s(d[c].cloneNode(!0)).addClass(i.slideDuplicateClass))},loopFix:function(){this.emit("beforeLoopFix");var e,t=this.activeIndex,i=this.slides,s=this.loopedSlides,a=this.allowSlidePrev,r=this.allowSlideNext,n=this.snapGrid,o=this.rtlTranslate;this.allowSlidePrev=!0,this.allowSlideNext=!0;var l=-n[t]-this.getTranslate();if(t<s)e=i.length-3*s+t,e+=s,this.slideTo(e,0,!1,!0)&&0!==l&&this.setTranslate((o?-this.translate:this.translate)-l);else if(t>=i.length-s){e=-i.length+t+s,e+=s,this.slideTo(e,0,!1,!0)&&0!==l&&this.setTranslate((o?-this.translate:this.translate)-l)}this.allowSlidePrev=a,this.allowSlideNext=r,this.emit("loopFix")},loopDestroy:function(){var e=this.$wrapperEl,t=this.params,i=this.slides;e.children("."+t.slideClass+"."+t.slideDuplicateClass+",."+t.slideClass+"."+t.slideBlankClass).remove(),i.removeAttr("data-swiper-slide-index")}};var f={setGrabCursor:function(e){if(!(o.touch||!this.params.simulateTouch||this.params.watchOverflow&&this.isLocked||this.params.cssMode)){var t=this.el;t.style.cursor="move",t.style.cursor=e?"-webkit-grabbing":"-webkit-grab",t.style.cursor=e?"-moz-grabbin":"-moz-grab",t.style.cursor=e?"grabbing":"grab"}},unsetGrabCursor:function(){o.touch||this.params.watchOverflow&&this.isLocked||this.params.cssMode||(this.el.style.cursor="")}};var m,g,b,w,y,x,T,E,S,C,M,P,z,k,$,L={appendSlide:function(e){var t=this.$wrapperEl,i=this.params;if(i.loop&&this.loopDestroy(),"object"==typeof e&&"length"in e)for(var s=0;s<e.length;s+=1)e[s]&&t.append(e[s]);else t.append(e);i.loop&&this.loopCreate(),i.observer&&o.observer||this.update()},prependSlide:function(e){var t=this.params,i=this.$wrapperEl,s=this.activeIndex;t.loop&&this.loopDestroy();var a=s+1;if("object"==typeof e&&"length"in e){for(var r=0;r<e.length;r+=1)e[r]&&i.prepend(e[r]);a=s+e.length}else i.prepend(e);t.loop&&this.loopCreate(),t.observer&&o.observer||this.update(),this.slideTo(a,0,!1)},addSlide:function(e,t){var i=this.$wrapperEl,s=this.params,a=this.activeIndex;s.loop&&(a-=this.loopedSlides,this.loopDestroy(),this.slides=i.children("."+s.slideClass));var r=this.slides.length;if(e<=0)this.prependSlide(t);else if(e>=r)this.appendSlide(t);else{for(var n=a>e?a+1:a,l=[],d=r-1;d>=e;d-=1){var h=this.slides.eq(d);h.remove(),l.unshift(h)}if("object"==typeof t&&"length"in t){for(var p=0;p<t.length;p+=1)t[p]&&i.append(t[p]);n=a>e?a+t.length:a}else i.append(t);for(var c=0;c<l.length;c+=1)i.append(l[c]);s.loop&&this.loopCreate(),s.observer&&o.observer||this.update(),s.loop?this.slideTo(n+this.loopedSlides,0,!1):this.slideTo(n,0,!1)}},removeSlide:function(e){var t=this.params,i=this.$wrapperEl,s=this.activeIndex;t.loop&&(s-=this.loopedSlides,this.loopDestroy(),this.slides=i.children("."+t.slideClass));var a,r=s;if("object"==typeof e&&"length"in e){for(var n=0;n<e.length;n+=1)a=e[n],this.slides[a]&&this.slides.eq(a).remove(),a<r&&(r-=1);r=Math.max(r,0)}else a=e,this.slides[a]&&this.slides.eq(a).remove(),a<r&&(r-=1),r=Math.max(r,0);t.loop&&this.loopCreate(),t.observer&&o.observer||this.update(),t.loop?this.slideTo(r+this.loopedSlides,0,!1):this.slideTo(r,0,!1)},removeAllSlides:function(){for(var e=[],t=0;t<this.slides.length;t+=1)e.push(t);this.removeSlide(e)}},I=(m=t.navigator.platform,g=t.navigator.userAgent,b={ios:!1,android:!1,androidChrome:!1,desktop:!1,iphone:!1,ipod:!1,ipad:!1,edge:!1,ie:!1,firefox:!1,macos:!1,windows:!1,cordova:!(!t.cordova&&!t.phonegap),phonegap:!(!t.cordova&&!t.phonegap),electron:!1},w=t.screen.width,y=t.screen.height,x=g.match(/(Android);?[\s\/]+([\d.]+)?/),T=g.match(/(iPad).*OS\s([\d_]+)/),E=g.match(/(iPod)(.*OS\s([\d_]+))?/),S=!T&&g.match(/(iPhone\sOS|iOS)\s([\d_]+)/),C=g.indexOf("MSIE ")>=0||g.indexOf("Trident/")>=0,M=g.indexOf("Edge/")>=0,P=g.indexOf("Gecko/")>=0&&g.indexOf("Firefox/")>=0,z="Win32"===m,k=g.toLowerCase().indexOf("electron")>=0,$="MacIntel"===m,!T&&$&&o.touch&&(1024===w&&1366===y||834===w&&1194===y||834===w&&1112===y||768===w&&1024===y)&&(T=g.match(/(Version)\/([\d.]+)/),$=!1),b.ie=C,b.edge=M,b.firefox=P,x&&!z&&(b.os="android",b.osVersion=x[2],b.android=!0,b.androidChrome=g.toLowerCase().indexOf("chrome")>=0),(T||S||E)&&(b.os="ios",b.ios=!0),S&&!E&&(b.osVersion=S[2].replace(/_/g,"."),b.iphone=!0),T&&(b.osVersion=T[2].replace(/_/g,"."),b.ipad=!0),E&&(b.osVersion=E[3]?E[3].replace(/_/g,"."):null,b.ipod=!0),b.ios&&b.osVersion&&g.indexOf("Version/")>=0&&"10"===b.osVersion.split(".")[0]&&(b.osVersion=g.toLowerCase().split("version/")[1].split(" ")[0]),b.webView=!(!(S||T||E)||!g.match(/.*AppleWebKit(?!.*Safari)/i)&&!t.navigator.standalone)||t.matchMedia&&t.matchMedia("(display-mode: standalone)").matches,b.webview=b.webView,b.standalone=b.webView,b.desktop=!(b.ios||b.android)||k,b.desktop&&(b.electron=k,b.macos=$,b.windows=z,b.macos&&(b.os="macos"),b.windows&&(b.os="windows")),b.pixelRatio=t.devicePixelRatio||1,b);function D(i){var a=this.touchEventsData,r=this.params,o=this.touches;if(!this.animating||!r.preventInteractionOnTransition){var l=i;l.originalEvent&&(l=l.originalEvent);var d=s(l.target);if(("wrapper"!==r.touchEventsTarget||d.closest(this.wrapperEl).length)&&(a.isTouchEvent="touchstart"===l.type,(a.isTouchEvent||!("which"in l)||3!==l.which)&&!(!a.isTouchEvent&&"button"in l&&l.button>0||a.isTouched&&a.isMoved)))if(r.noSwiping&&d.closest(r.noSwipingSelector?r.noSwipingSelector:"."+r.noSwipingClass)[0])this.allowClick=!0;else if(!r.swipeHandler||d.closest(r.swipeHandler)[0]){o.currentX="touchstart"===l.type?l.targetTouches[0].pageX:l.pageX,o.currentY="touchstart"===l.type?l.targetTouches[0].pageY:l.pageY;var h=o.currentX,p=o.currentY,c=r.edgeSwipeDetection||r.iOSEdgeSwipeDetection,u=r.edgeSwipeThreshold||r.iOSEdgeSwipeThreshold;if(!c||!(h<=u||h>=t.screen.width-u)){if(n.extend(a,{isTouched:!0,isMoved:!1,allowTouchCallbacks:!0,isScrolling:void 0,startMoving:void 0}),o.startX=h,o.startY=p,a.touchStartTime=n.now(),this.allowClick=!0,this.updateSize(),this.swipeDirection=void 0,r.threshold>0&&(a.allowThresholdMove=!1),"touchstart"!==l.type){var v=!0;d.is(a.formElements)&&(v=!1),e.activeElement&&s(e.activeElement).is(a.formElements)&&e.activeElement!==d[0]&&e.activeElement.blur();var f=v&&this.allowTouchMove&&r.touchStartPreventDefault;(r.touchStartForcePreventDefault||f)&&l.preventDefault()}this.emit("touchStart",l)}}}}function O(t){var i=this.touchEventsData,a=this.params,r=this.touches,o=this.rtlTranslate,l=t;if(l.originalEvent&&(l=l.originalEvent),i.isTouched){if(!i.isTouchEvent||"mousemove"!==l.type){var d="touchmove"===l.type&&l.targetTouches&&(l.targetTouches[0]||l.changedTouches[0]),h="touchmove"===l.type?d.pageX:l.pageX,p="touchmove"===l.type?d.pageY:l.pageY;if(l.preventedByNestedSwiper)return r.startX=h,void(r.startY=p);if(!this.allowTouchMove)return this.allowClick=!1,void(i.isTouched&&(n.extend(r,{startX:h,startY:p,currentX:h,currentY:p}),i.touchStartTime=n.now()));if(i.isTouchEvent&&a.touchReleaseOnEdges&&!a.loop)if(this.isVertical()){if(p<r.startY&&this.translate<=this.maxTranslate()||p>r.startY&&this.translate>=this.minTranslate())return i.isTouched=!1,void(i.isMoved=!1)}else if(h<r.startX&&this.translate<=this.maxTranslate()||h>r.startX&&this.translate>=this.minTranslate())return;if(i.isTouchEvent&&e.activeElement&&l.target===e.activeElement&&s(l.target).is(i.formElements))return i.isMoved=!0,void(this.allowClick=!1);if(i.allowTouchCallbacks&&this.emit("touchMove",l),!(l.targetTouches&&l.targetTouches.length>1)){r.currentX=h,r.currentY=p;var c=r.currentX-r.startX,u=r.currentY-r.startY;if(!(this.params.threshold&&Math.sqrt(Math.pow(c,2)+Math.pow(u,2))<this.params.threshold)){var v;if(void 0===i.isScrolling)this.isHorizontal()&&r.currentY===r.startY||this.isVertical()&&r.currentX===r.startX?i.isScrolling=!1:c*c+u*u>=25&&(v=180*Math.atan2(Math.abs(u),Math.abs(c))/Math.PI,i.isScrolling=this.isHorizontal()?v>a.touchAngle:90-v>a.touchAngle);if(i.isScrolling&&this.emit("touchMoveOpposite",l),void 0===i.startMoving&&(r.currentX===r.startX&&r.currentY===r.startY||(i.startMoving=!0)),i.isScrolling)i.isTouched=!1;else if(i.startMoving){this.allowClick=!1,a.cssMode||l.preventDefault(),a.touchMoveStopPropagation&&!a.nested&&l.stopPropagation(),i.isMoved||(a.loop&&this.loopFix(),i.startTranslate=this.getTranslate(),this.setTransition(0),this.animating&&this.$wrapperEl.trigger("webkitTransitionEnd transitionend"),i.allowMomentumBounce=!1,!a.grabCursor||!0!==this.allowSlideNext&&!0!==this.allowSlidePrev||this.setGrabCursor(!0),this.emit("sliderFirstMove",l)),this.emit("sliderMove",l),i.isMoved=!0;var f=this.isHorizontal()?c:u;r.diff=f,f*=a.touchRatio,o&&(f=-f),this.swipeDirection=f>0?"prev":"next",i.currentTranslate=f+i.startTranslate;var m=!0,g=a.resistanceRatio;if(a.touchReleaseOnEdges&&(g=0),f>0&&i.currentTranslate>this.minTranslate()?(m=!1,a.resistance&&(i.currentTranslate=this.minTranslate()-1+Math.pow(-this.minTranslate()+i.startTranslate+f,g))):f<0&&i.currentTranslate<this.maxTranslate()&&(m=!1,a.resistance&&(i.currentTranslate=this.maxTranslate()+1-Math.pow(this.maxTranslate()-i.startTranslate-f,g))),m&&(l.preventedByNestedSwiper=!0),!this.allowSlideNext&&"next"===this.swipeDirection&&i.currentTranslate<i.startTranslate&&(i.currentTranslate=i.startTranslate),!this.allowSlidePrev&&"prev"===this.swipeDirection&&i.currentTranslate>i.startTranslate&&(i.currentTranslate=i.startTranslate),a.threshold>0){if(!(Math.abs(f)>a.threshold||i.allowThresholdMove))return void(i.currentTranslate=i.startTranslate);if(!i.allowThresholdMove)return i.allowThresholdMove=!0,r.startX=r.currentX,r.startY=r.currentY,i.currentTranslate=i.startTranslate,void(r.diff=this.isHorizontal()?r.currentX-r.startX:r.currentY-r.startY)}a.followFinger&&!a.cssMode&&((a.freeMode||a.watchSlidesProgress||a.watchSlidesVisibility)&&(this.updateActiveIndex(),this.updateSlidesClasses()),a.freeMode&&(0===i.velocities.length&&i.velocities.push({position:r[this.isHorizontal()?"startX":"startY"],time:i.touchStartTime}),i.velocities.push({position:r[this.isHorizontal()?"currentX":"currentY"],time:n.now()})),this.updateProgress(i.currentTranslate),this.setTranslate(i.currentTranslate))}}}}}else i.startMoving&&i.isScrolling&&this.emit("touchMoveOpposite",l)}function A(e){var t=this,i=t.touchEventsData,s=t.params,a=t.touches,r=t.rtlTranslate,o=t.$wrapperEl,l=t.slidesGrid,d=t.snapGrid,h=e;if(h.originalEvent&&(h=h.originalEvent),i.allowTouchCallbacks&&t.emit("touchEnd",h),i.allowTouchCallbacks=!1,!i.isTouched)return i.isMoved&&s.grabCursor&&t.setGrabCursor(!1),i.isMoved=!1,void(i.startMoving=!1);s.grabCursor&&i.isMoved&&i.isTouched&&(!0===t.allowSlideNext||!0===t.allowSlidePrev)&&t.setGrabCursor(!1);var p,c=n.now(),u=c-i.touchStartTime;if(t.allowClick&&(t.updateClickedSlide(h),t.emit("tap click",h),u<300&&c-i.lastClickTime<300&&t.emit("doubleTap doubleClick",h)),i.lastClickTime=n.now(),n.nextTick((function(){t.destroyed||(t.allowClick=!0)})),!i.isTouched||!i.isMoved||!t.swipeDirection||0===a.diff||i.currentTranslate===i.startTranslate)return i.isTouched=!1,i.isMoved=!1,void(i.startMoving=!1);if(i.isTouched=!1,i.isMoved=!1,i.startMoving=!1,p=s.followFinger?r?t.translate:-t.translate:-i.currentTranslate,!s.cssMode)if(s.freeMode){if(p<-t.minTranslate())return void t.slideTo(t.activeIndex);if(p>-t.maxTranslate())return void(t.slides.length<d.length?t.slideTo(d.length-1):t.slideTo(t.slides.length-1));if(s.freeModeMomentum){if(i.velocities.length>1){var v=i.velocities.pop(),f=i.velocities.pop(),m=v.position-f.position,g=v.time-f.time;t.velocity=m/g,t.velocity/=2,Math.abs(t.velocity)<s.freeModeMinimumVelocity&&(t.velocity=0),(g>150||n.now()-v.time>300)&&(t.velocity=0)}else t.velocity=0;t.velocity*=s.freeModeMomentumVelocityRatio,i.velocities.length=0;var b=1e3*s.freeModeMomentumRatio,w=t.velocity*b,y=t.translate+w;r&&(y=-y);var x,T,E=!1,S=20*Math.abs(t.velocity)*s.freeModeMomentumBounceRatio;if(y<t.maxTranslate())s.freeModeMomentumBounce?(y+t.maxTranslate()<-S&&(y=t.maxTranslate()-S),x=t.maxTranslate(),E=!0,i.allowMomentumBounce=!0):y=t.maxTranslate(),s.loop&&s.centeredSlides&&(T=!0);else if(y>t.minTranslate())s.freeModeMomentumBounce?(y-t.minTranslate()>S&&(y=t.minTranslate()+S),x=t.minTranslate(),E=!0,i.allowMomentumBounce=!0):y=t.minTranslate(),s.loop&&s.centeredSlides&&(T=!0);else if(s.freeModeSticky){for(var C,M=0;M<d.length;M+=1)if(d[M]>-y){C=M;break}y=-(y=Math.abs(d[C]-y)<Math.abs(d[C-1]-y)||"next"===t.swipeDirection?d[C]:d[C-1])}if(T&&t.once("transitionEnd",(function(){t.loopFix()})),0!==t.velocity){if(b=r?Math.abs((-y-t.translate)/t.velocity):Math.abs((y-t.translate)/t.velocity),s.freeModeSticky){var P=Math.abs((r?-y:y)-t.translate),z=t.slidesSizesGrid[t.activeIndex];b=P<z?s.speed:P<2*z?1.5*s.speed:2.5*s.speed}}else if(s.freeModeSticky)return void t.slideToClosest();s.freeModeMomentumBounce&&E?(t.updateProgress(x),t.setTransition(b),t.setTranslate(y),t.transitionStart(!0,t.swipeDirection),t.animating=!0,o.transitionEnd((function(){t&&!t.destroyed&&i.allowMomentumBounce&&(t.emit("momentumBounce"),t.setTransition(s.speed),t.setTranslate(x),o.transitionEnd((function(){t&&!t.destroyed&&t.transitionEnd()})))}))):t.velocity?(t.updateProgress(y),t.setTransition(b),t.setTranslate(y),t.transitionStart(!0,t.swipeDirection),t.animating||(t.animating=!0,o.transitionEnd((function(){t&&!t.destroyed&&t.transitionEnd()})))):t.updateProgress(y),t.updateActiveIndex(),t.updateSlidesClasses()}else if(s.freeModeSticky)return void t.slideToClosest();(!s.freeModeMomentum||u>=s.longSwipesMs)&&(t.updateProgress(),t.updateActiveIndex(),t.updateSlidesClasses())}else{for(var k=0,$=t.slidesSizesGrid[0],L=0;L<l.length;L+=L<s.slidesPerGroupSkip?1:s.slidesPerGroup){var I=L<s.slidesPerGroupSkip-1?1:s.slidesPerGroup;void 0!==l[L+I]?p>=l[L]&&p<l[L+I]&&(k=L,$=l[L+I]-l[L]):p>=l[L]&&(k=L,$=l[l.length-1]-l[l.length-2])}var D=(p-l[k])/$,O=k<s.slidesPerGroupSkip-1?1:s.slidesPerGroup;if(u>s.longSwipesMs){if(!s.longSwipes)return void t.slideTo(t.activeIndex);"next"===t.swipeDirection&&(D>=s.longSwipesRatio?t.slideTo(k+O):t.slideTo(k)),"prev"===t.swipeDirection&&(D>1-s.longSwipesRatio?t.slideTo(k+O):t.slideTo(k))}else{if(!s.shortSwipes)return void t.slideTo(t.activeIndex);t.navigation&&(h.target===t.navigation.nextEl||h.target===t.navigation.prevEl)?h.target===t.navigation.nextEl?t.slideTo(k+O):t.slideTo(k):("next"===t.swipeDirection&&t.slideTo(k+O),"prev"===t.swipeDirection&&t.slideTo(k))}}}function G(){var e=this.params,t=this.el;if(!t||0!==t.offsetWidth){e.breakpoints&&this.setBreakpoint();var i=this.allowSlideNext,s=this.allowSlidePrev,a=this.snapGrid;this.allowSlideNext=!0,this.allowSlidePrev=!0,this.updateSize(),this.updateSlides(),this.updateSlidesClasses(),("auto"===e.slidesPerView||e.slidesPerView>1)&&this.isEnd&&!this.params.centeredSlides?this.slideTo(this.slides.length-1,0,!1,!0):this.slideTo(this.activeIndex,0,!1,!0),this.autoplay&&this.autoplay.running&&this.autoplay.paused&&this.autoplay.run(),this.allowSlidePrev=s,this.allowSlideNext=i,this.params.watchOverflow&&a!==this.snapGrid&&this.checkOverflow()}}function H(e){this.allowClick||(this.params.preventClicks&&e.preventDefault(),this.params.preventClicksPropagation&&this.animating&&(e.stopPropagation(),e.stopImmediatePropagation()))}function B(){var e=this.wrapperEl;this.previousTranslate=this.translate,this.translate=this.isHorizontal()?-e.scrollLeft:-e.scrollTop,-0===this.translate&&(this.translate=0),this.updateActiveIndex(),this.updateSlidesClasses();var t=this.maxTranslate()-this.minTranslate();(0===t?0:(this.translate-this.minTranslate())/t)!==this.progress&&this.updateProgress(this.translate),this.emit("setTranslate",this.translate,!1)}var N=!1;function X(){}var V={init:!0,direction:"horizontal",touchEventsTarget:"container",initialSlide:0,speed:300,cssMode:!1,updateOnWindowResize:!0,preventInteractionOnTransition:!1,edgeSwipeDetection:!1,edgeSwipeThreshold:20,freeMode:!1,freeModeMomentum:!0,freeModeMomentumRatio:1,freeModeMomentumBounce:!0,freeModeMomentumBounceRatio:1,freeModeMomentumVelocityRatio:1,freeModeSticky:!1,freeModeMinimumVelocity:.02,autoHeight:!1,setWrapperSize:!1,virtualTranslate:!1,effect:"slide",breakpoints:void 0,spaceBetween:0,slidesPerView:1,slidesPerColumn:1,slidesPerColumnFill:"column",slidesPerGroup:1,slidesPerGroupSkip:0,centeredSlides:!1,centeredSlidesBounds:!1,slidesOffsetBefore:0,slidesOffsetAfter:0,normalizeSlideIndex:!0,centerInsufficientSlides:!1,watchOverflow:!1,roundLengths:!1,touchRatio:1,touchAngle:45,simulateTouch:!0,shortSwipes:!0,longSwipes:!0,longSwipesRatio:.5,longSwipesMs:300,followFinger:!0,allowTouchMove:!0,threshold:0,touchMoveStopPropagation:!1,touchStartPreventDefault:!0,touchStartForcePreventDefault:!1,touchReleaseOnEdges:!1,uniqueNavElements:!0,resistance:!0,resistanceRatio:.85,watchSlidesProgress:!1,watchSlidesVisibility:!1,grabCursor:!1,preventClicks:!0,preventClicksPropagation:!0,slideToClickedSlide:!1,preloadImages:!0,updateOnImagesReady:!0,loop:!1,loopAdditionalSlides:0,loopedSlides:null,loopFillGroupWithBlank:!1,allowSlidePrev:!0,allowSlideNext:!0,swipeHandler:null,noSwiping:!0,noSwipingClass:"swiper-no-swiping",noSwipingSelector:null,passiveListeners:!0,containerModifierClass:"swiper-container-",slideClass:"swiper-slide",slideBlankClass:"swiper-slide-invisible-blank",slideActiveClass:"swiper-slide-active",slideDuplicateActiveClass:"swiper-slide-duplicate-active",slideVisibleClass:"swiper-slide-visible",slideDuplicateClass:"swiper-slide-duplicate",slideNextClass:"swiper-slide-next",slideDuplicateNextClass:"swiper-slide-duplicate-next",slidePrevClass:"swiper-slide-prev",slideDuplicatePrevClass:"swiper-slide-duplicate-prev",wrapperClass:"swiper-wrapper",runCallbacksOnInit:!0},Y={update:h,translate:p,transition:c,slide:u,loop:v,grabCursor:f,manipulation:L,events:{attachEvents:function(){var t=this.params,i=this.touchEvents,s=this.el,a=this.wrapperEl;this.onTouchStart=D.bind(this),this.onTouchMove=O.bind(this),this.onTouchEnd=A.bind(this),t.cssMode&&(this.onScroll=B.bind(this)),this.onClick=H.bind(this);var r=!!t.nested;if(!o.touch&&o.pointerEvents)s.addEventListener(i.start,this.onTouchStart,!1),e.addEventListener(i.move,this.onTouchMove,r),e.addEventListener(i.end,this.onTouchEnd,!1);else{if(o.touch){var n=!("touchstart"!==i.start||!o.passiveListener||!t.passiveListeners)&&{passive:!0,capture:!1};s.addEventListener(i.start,this.onTouchStart,n),s.addEventListener(i.move,this.onTouchMove,o.passiveListener?{passive:!1,capture:r}:r),s.addEventListener(i.end,this.onTouchEnd,n),i.cancel&&s.addEventListener(i.cancel,this.onTouchEnd,n),N||(e.addEventListener("touchstart",X),N=!0)}(t.simulateTouch&&!I.ios&&!I.android||t.simulateTouch&&!o.touch&&I.ios)&&(s.addEventListener("mousedown",this.onTouchStart,!1),e.addEventListener("mousemove",this.onTouchMove,r),e.addEventListener("mouseup",this.onTouchEnd,!1))}(t.preventClicks||t.preventClicksPropagation)&&s.addEventListener("click",this.onClick,!0),t.cssMode&&a.addEventListener("scroll",this.onScroll),t.updateOnWindowResize?this.on(I.ios||I.android?"resize orientationchange observerUpdate":"resize observerUpdate",G,!0):this.on("observerUpdate",G,!0)},detachEvents:function(){var t=this.params,i=this.touchEvents,s=this.el,a=this.wrapperEl,r=!!t.nested;if(!o.touch&&o.pointerEvents)s.removeEventListener(i.start,this.onTouchStart,!1),e.removeEventListener(i.move,this.onTouchMove,r),e.removeEventListener(i.end,this.onTouchEnd,!1);else{if(o.touch){var n=!("onTouchStart"!==i.start||!o.passiveListener||!t.passiveListeners)&&{passive:!0,capture:!1};s.removeEventListener(i.start,this.onTouchStart,n),s.removeEventListener(i.move,this.onTouchMove,r),s.removeEventListener(i.end,this.onTouchEnd,n),i.cancel&&s.removeEventListener(i.cancel,this.onTouchEnd,n)}(t.simulateTouch&&!I.ios&&!I.android||t.simulateTouch&&!o.touch&&I.ios)&&(s.removeEventListener("mousedown",this.onTouchStart,!1),e.removeEventListener("mousemove",this.onTouchMove,r),e.removeEventListener("mouseup",this.onTouchEnd,!1))}(t.preventClicks||t.preventClicksPropagation)&&s.removeEventListener("click",this.onClick,!0),t.cssMode&&a.removeEventListener("scroll",this.onScroll),this.off(I.ios||I.android?"resize orientationchange observerUpdate":"resize observerUpdate",G)}},breakpoints:{setBreakpoint:function(){var e=this.activeIndex,t=this.initialized,i=this.loopedSlides;void 0===i&&(i=0);var s=this.params,a=this.$el,r=s.breakpoints;if(r&&(!r||0!==Object.keys(r).length)){var o=this.getBreakpoint(r);if(o&&this.currentBreakpoint!==o){var l=o in r?r[o]:void 0;l&&["slidesPerView","spaceBetween","slidesPerGroup","slidesPerGroupSkip","slidesPerColumn"].forEach((function(e){var t=l[e];void 0!==t&&(l[e]="slidesPerView"!==e||"AUTO"!==t&&"auto"!==t?"slidesPerView"===e?parseFloat(t):parseInt(t,10):"auto")}));var d=l||this.originalParams,h=s.slidesPerColumn>1,p=d.slidesPerColumn>1;h&&!p?a.removeClass(s.containerModifierClass+"multirow "+s.containerModifierClass+"multirow-column"):!h&&p&&(a.addClass(s.containerModifierClass+"multirow"),"column"===d.slidesPerColumnFill&&a.addClass(s.containerModifierClass+"multirow-column"));var c=d.direction&&d.direction!==s.direction,u=s.loop&&(d.slidesPerView!==s.slidesPerView||c);c&&t&&this.changeDirection(),n.extend(this.params,d),n.extend(this,{allowTouchMove:this.params.allowTouchMove,allowSlideNext:this.params.allowSlideNext,allowSlidePrev:this.params.allowSlidePrev}),this.currentBreakpoint=o,u&&t&&(this.loopDestroy(),this.loopCreate(),this.updateSlides(),this.slideTo(e-i+this.loopedSlides,0,!1)),this.emit("breakpoint",d)}}},getBreakpoint:function(e){if(e){var i=!1,s=Object.keys(e).map((function(e){if("string"==typeof e&&0===e.indexOf("@")){var i=parseFloat(e.substr(1));return{value:t.innerHeight*i,point:e}}return{value:e,point:e}}));s.sort((function(e,t){return parseInt(e.value,10)-parseInt(t.value,10)}));for(var a=0;a<s.length;a+=1){var r=s[a],n=r.point;r.value<=t.innerWidth&&(i=n)}return i||"max"}}},checkOverflow:{checkOverflow:function(){var e=this.params,t=this.isLocked,i=this.slides.length>0&&e.slidesOffsetBefore+e.spaceBetween*(this.slides.length-1)+this.slides[0].offsetWidth*this.slides.length;e.slidesOffsetBefore&&e.slidesOffsetAfter&&i?this.isLocked=i<=this.size:this.isLocked=1===this.snapGrid.length,this.allowSlideNext=!this.isLocked,this.allowSlidePrev=!this.isLocked,t!==this.isLocked&&this.emit(this.isLocked?"lock":"unlock"),t&&t!==this.isLocked&&(this.isEnd=!1,this.navigation.update())}},classes:{addClasses:function(){var e=this.classNames,t=this.params,i=this.rtl,s=this.$el,a=[];a.push("initialized"),a.push(t.direction),t.freeMode&&a.push("free-mode"),t.autoHeight&&a.push("autoheight"),i&&a.push("rtl"),t.slidesPerColumn>1&&(a.push("multirow"),"column"===t.slidesPerColumnFill&&a.push("multirow-column")),I.android&&a.push("android"),I.ios&&a.push("ios"),t.cssMode&&a.push("css-mode"),a.forEach((function(i){e.push(t.containerModifierClass+i)})),s.addClass(e.join(" "))},removeClasses:function(){var e=this.$el,t=this.classNames;e.removeClass(t.join(" "))}},images:{loadImage:function(e,i,s,a,r,n){var o;function l(){n&&n()}e.complete&&r?l():i?((o=new t.Image).onload=l,o.onerror=l,a&&(o.sizes=a),s&&(o.srcset=s),i&&(o.src=i)):l()},preloadImages:function(){var e=this;function t(){null!=e&&e&&!e.destroyed&&(void 0!==e.imagesLoaded&&(e.imagesLoaded+=1),e.imagesLoaded===e.imagesToLoad.length&&(e.params.updateOnImagesReady&&e.update(),e.emit("imagesReady")))}e.imagesToLoad=e.$el.find("img");for(var i=0;i<e.imagesToLoad.length;i+=1){var s=e.imagesToLoad[i];e.loadImage(s,s.currentSrc||s.getAttribute("src"),s.srcset||s.getAttribute("srcset"),s.sizes||s.getAttribute("sizes"),!0,t)}}}},F={},W=function(e){function t(){for(var i,a,r,l=[],d=arguments.length;d--;)l[d]=arguments[d];1===l.length&&l[0].constructor&&l[0].constructor===Object?r=l[0]:(a=(i=l)[0],r=i[1]),r||(r={}),r=n.extend({},r),a&&!r.el&&(r.el=a),e.call(this,r),Object.keys(Y).forEach((function(e){Object.keys(Y[e]).forEach((function(i){t.prototype[i]||(t.prototype[i]=Y[e][i])}))}));var h=this;void 0===h.modules&&(h.modules={}),Object.keys(h.modules).forEach((function(e){var t=h.modules[e];if(t.params){var i=Object.keys(t.params)[0],s=t.params[i];if("object"!=typeof s||null===s)return;if(!(i in r&&"enabled"in s))return;!0===r[i]&&(r[i]={enabled:!0}),"object"!=typeof r[i]||"enabled"in r[i]||(r[i].enabled=!0),r[i]||(r[i]={enabled:!1})}}));var p=n.extend({},V);h.useModulesParams(p),h.params=n.extend({},p,F,r),h.originalParams=n.extend({},h.params),h.passedParams=n.extend({},r),h.$=s;var c=s(h.params.el);if(a=c[0]){if(c.length>1){var u=[];return c.each((function(e,i){var s=n.extend({},r,{el:i});u.push(new t(s))})),u}var v,f,m;return a.swiper=h,c.data("swiper",h),a&&a.shadowRoot&&a.shadowRoot.querySelector?(v=s(a.shadowRoot.querySelector("."+h.params.wrapperClass))).children=function(e){return c.children(e)}:v=c.children("."+h.params.wrapperClass),n.extend(h,{$el:c,el:a,$wrapperEl:v,wrapperEl:v[0],classNames:[],slides:s(),slidesGrid:[],snapGrid:[],slidesSizesGrid:[],isHorizontal:function(){return"horizontal"===h.params.direction},isVertical:function(){return"vertical"===h.params.direction},rtl:"rtl"===a.dir.toLowerCase()||"rtl"===c.css("direction"),rtlTranslate:"horizontal"===h.params.direction&&("rtl"===a.dir.toLowerCase()||"rtl"===c.css("direction")),wrongRTL:"-webkit-box"===v.css("display"),activeIndex:0,realIndex:0,isBeginning:!0,isEnd:!1,translate:0,previousTranslate:0,progress:0,velocity:0,animating:!1,allowSlideNext:h.params.allowSlideNext,allowSlidePrev:h.params.allowSlidePrev,touchEvents:(f=["touchstart","touchmove","touchend","touchcancel"],m=["mousedown","mousemove","mouseup"],o.pointerEvents&&(m=["pointerdown","pointermove","pointerup"]),h.touchEventsTouch={start:f[0],move:f[1],end:f[2],cancel:f[3]},h.touchEventsDesktop={start:m[0],move:m[1],end:m[2]},o.touch||!h.params.simulateTouch?h.touchEventsTouch:h.touchEventsDesktop),touchEventsData:{isTouched:void 0,isMoved:void 0,allowTouchCallbacks:void 0,touchStartTime:void 0,isScrolling:void 0,currentTranslate:void 0,startTranslate:void 0,allowThresholdMove:void 0,formElements:"input, select, option, textarea, button, video, label",lastClickTime:n.now(),clickTimeout:void 0,velocities:[],allowMomentumBounce:void 0,isTouchEvent:void 0,startMoving:void 0},allowClick:!0,allowTouchMove:h.params.allowTouchMove,touches:{startX:0,startY:0,currentX:0,currentY:0,diff:0},imagesToLoad:[],imagesLoaded:0}),h.useModules(),h.params.init&&h.init(),h}}e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t;var i={extendedDefaults:{configurable:!0},defaults:{configurable:!0},Class:{configurable:!0},$:{configurable:!0}};return t.prototype.slidesPerViewDynamic=function(){var e=this.params,t=this.slides,i=this.slidesGrid,s=this.size,a=this.activeIndex,r=1;if(e.centeredSlides){for(var n,o=t[a].swiperSlideSize,l=a+1;l<t.length;l+=1)t[l]&&!n&&(r+=1,(o+=t[l].swiperSlideSize)>s&&(n=!0));for(var d=a-1;d>=0;d-=1)t[d]&&!n&&(r+=1,(o+=t[d].swiperSlideSize)>s&&(n=!0))}else for(var h=a+1;h<t.length;h+=1)i[h]-i[a]<s&&(r+=1);return r},t.prototype.update=function(){var e=this;if(e&&!e.destroyed){var t=e.snapGrid,i=e.params;i.breakpoints&&e.setBreakpoint(),e.updateSize(),e.updateSlides(),e.updateProgress(),e.updateSlidesClasses(),e.params.freeMode?(s(),e.params.autoHeight&&e.updateAutoHeight()):(("auto"===e.params.slidesPerView||e.params.slidesPerView>1)&&e.isEnd&&!e.params.centeredSlides?e.slideTo(e.slides.length-1,0,!1,!0):e.slideTo(e.activeIndex,0,!1,!0))||s(),i.watchOverflow&&t!==e.snapGrid&&e.checkOverflow(),e.emit("update")}function s(){var t=e.rtlTranslate?-1*e.translate:e.translate,i=Math.min(Math.max(t,e.maxTranslate()),e.minTranslate());e.setTranslate(i),e.updateActiveIndex(),e.updateSlidesClasses()}},t.prototype.changeDirection=function(e,t){void 0===t&&(t=!0);var i=this.params.direction;return e||(e="horizontal"===i?"vertical":"horizontal"),e===i||"horizontal"!==e&&"vertical"!==e?this:(this.$el.removeClass(""+this.params.containerModifierClass+i).addClass(""+this.params.containerModifierClass+e),this.params.direction=e,this.slides.each((function(t,i){"vertical"===e?i.style.width="":i.style.height=""})),this.emit("changeDirection"),t&&this.update(),this)},t.prototype.init=function(){this.initialized||(this.emit("beforeInit"),this.params.breakpoints&&this.setBreakpoint(),this.addClasses(),this.params.loop&&this.loopCreate(),this.updateSize(),this.updateSlides(),this.params.watchOverflow&&this.checkOverflow(),this.params.grabCursor&&this.setGrabCursor(),this.params.preloadImages&&this.preloadImages(),this.params.loop?this.slideTo(this.params.initialSlide+this.loopedSlides,0,this.params.runCallbacksOnInit):this.slideTo(this.params.initialSlide,0,this.params.runCallbacksOnInit),this.attachEvents(),this.initialized=!0,this.emit("init"))},t.prototype.destroy=function(e,t){void 0===e&&(e=!0),void 0===t&&(t=!0);var i=this,s=i.params,a=i.$el,r=i.$wrapperEl,o=i.slides;return void 0===i.params||i.destroyed?null:(i.emit("beforeDestroy"),i.initialized=!1,i.detachEvents(),s.loop&&i.loopDestroy(),t&&(i.removeClasses(),a.removeAttr("style"),r.removeAttr("style"),o&&o.length&&o.removeClass([s.slideVisibleClass,s.slideActiveClass,s.slideNextClass,s.slidePrevClass].join(" ")).removeAttr("style").removeAttr("data-swiper-slide-index")),i.emit("destroy"),Object.keys(i.eventsListeners).forEach((function(e){i.off(e)})),!1!==e&&(i.$el[0].swiper=null,i.$el.data("swiper",null),n.deleteProps(i)),i.destroyed=!0,null)},t.extendDefaults=function(e){n.extend(F,e)},i.extendedDefaults.get=function(){return F},i.defaults.get=function(){return V},i.Class.get=function(){return e},i.$.get=function(){return s},Object.defineProperties(t,i),t}(l),R={name:"device",proto:{device:I},static:{device:I}},q={name:"support",proto:{support:o},static:{support:o}},j={isEdge:!!t.navigator.userAgent.match(/Edge/g),isSafari:function(){var e=t.navigator.userAgent.toLowerCase();return e.indexOf("safari")>=0&&e.indexOf("chrome")<0&&e.indexOf("android")<0}(),isUiWebView:/(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test(t.navigator.userAgent)},K={name:"browser",proto:{browser:j},static:{browser:j}},U={name:"resize",create:function(){var e=this;n.extend(e,{resize:{resizeHandler:function(){e&&!e.destroyed&&e.initialized&&(e.emit("beforeResize"),e.emit("resize"))},orientationChangeHandler:function(){e&&!e.destroyed&&e.initialized&&e.emit("orientationchange")}}})},on:{init:function(){t.addEventListener("resize",this.resize.resizeHandler),t.addEventListener("orientationchange",this.resize.orientationChangeHandler)},destroy:function(){t.removeEventListener("resize",this.resize.resizeHandler),t.removeEventListener("orientationchange",this.resize.orientationChangeHandler)}}},_={func:t.MutationObserver||t.WebkitMutationObserver,attach:function(e,i){void 0===i&&(i={});var s=this,a=new(0,_.func)((function(e){if(1!==e.length){var i=function(){s.emit("observerUpdate",e[0])};t.requestAnimationFrame?t.requestAnimationFrame(i):t.setTimeout(i,0)}else s.emit("observerUpdate",e[0])}));a.observe(e,{attributes:void 0===i.attributes||i.attributes,childList:void 0===i.childList||i.childList,characterData:void 0===i.characterData||i.characterData}),s.observer.observers.push(a)},init:function(){if(o.observer&&this.params.observer){if(this.params.observeParents)for(var e=this.$el.parents(),t=0;t<e.length;t+=1)this.observer.attach(e[t]);this.observer.attach(this.$el[0],{childList:this.params.observeSlideChildren}),this.observer.attach(this.$wrapperEl[0],{attributes:!1})}},destroy:function(){this.observer.observers.forEach((function(e){e.disconnect()})),this.observer.observers=[]}},Z={name:"observer",params:{observer:!1,observeParents:!1,observeSlideChildren:!1},create:function(){n.extend(this,{observer:{init:_.init.bind(this),attach:_.attach.bind(this),destroy:_.destroy.bind(this),observers:[]}})},on:{init:function(){this.observer.init()},destroy:function(){this.observer.destroy()}}},Q={update:function(e){var t=this,i=t.params,s=i.slidesPerView,a=i.slidesPerGroup,r=i.centeredSlides,o=t.params.virtual,l=o.addSlidesBefore,d=o.addSlidesAfter,h=t.virtual,p=h.from,c=h.to,u=h.slides,v=h.slidesGrid,f=h.renderSlide,m=h.offset;t.updateActiveIndex();var g,b,w,y=t.activeIndex||0;g=t.rtlTranslate?"right":t.isHorizontal()?"left":"top",r?(b=Math.floor(s/2)+a+l,w=Math.floor(s/2)+a+d):(b=s+(a-1)+l,w=a+d);var x=Math.max((y||0)-w,0),T=Math.min((y||0)+b,u.length-1),E=(t.slidesGrid[x]||0)-(t.slidesGrid[0]||0);function S(){t.updateSlides(),t.updateProgress(),t.updateSlidesClasses(),t.lazy&&t.params.lazy.enabled&&t.lazy.load()}if(n.extend(t.virtual,{from:x,to:T,offset:E,slidesGrid:t.slidesGrid}),p===x&&c===T&&!e)return t.slidesGrid!==v&&E!==m&&t.slides.css(g,E+"px"),void t.updateProgress();if(t.params.virtual.renderExternal)return t.params.virtual.renderExternal.call(t,{offset:E,from:x,to:T,slides:function(){for(var e=[],t=x;t<=T;t+=1)e.push(u[t]);return e}()}),void S();var C=[],M=[];if(e)t.$wrapperEl.find("."+t.params.slideClass).remove();else for(var P=p;P<=c;P+=1)(P<x||P>T)&&t.$wrapperEl.find("."+t.params.slideClass+'[data-swiper-slide-index="'+P+'"]').remove();for(var z=0;z<u.length;z+=1)z>=x&&z<=T&&(void 0===c||e?M.push(z):(z>c&&M.push(z),z<p&&C.push(z)));M.forEach((function(e){t.$wrapperEl.append(f(u[e],e))})),C.sort((function(e,t){return t-e})).forEach((function(e){t.$wrapperEl.prepend(f(u[e],e))})),t.$wrapperEl.children(".swiper-slide").css(g,E+"px"),S()},renderSlide:function(e,t){var i=this.params.virtual;if(i.cache&&this.virtual.cache[t])return this.virtual.cache[t];var a=i.renderSlide?s(i.renderSlide.call(this,e,t)):s('<div class="'+this.params.slideClass+'" data-swiper-slide-index="'+t+'">'+e+"</div>");return a.attr("data-swiper-slide-index")||a.attr("data-swiper-slide-index",t),i.cache&&(this.virtual.cache[t]=a),a},appendSlide:function(e){if("object"==typeof e&&"length"in e)for(var t=0;t<e.length;t+=1)e[t]&&this.virtual.slides.push(e[t]);else this.virtual.slides.push(e);this.virtual.update(!0)},prependSlide:function(e){var t=this.activeIndex,i=t+1,s=1;if(Array.isArray(e)){for(var a=0;a<e.length;a+=1)e[a]&&this.virtual.slides.unshift(e[a]);i=t+e.length,s=e.length}else this.virtual.slides.unshift(e);if(this.params.virtual.cache){var r=this.virtual.cache,n={};Object.keys(r).forEach((function(e){var t=r[e],i=t.attr("data-swiper-slide-index");i&&t.attr("data-swiper-slide-index",parseInt(i,10)+1),n[parseInt(e,10)+s]=t})),this.virtual.cache=n}this.virtual.update(!0),this.slideTo(i,0)},removeSlide:function(e){if(null!=e){var t=this.activeIndex;if(Array.isArray(e))for(var i=e.length-1;i>=0;i-=1)this.virtual.slides.splice(e[i],1),this.params.virtual.cache&&delete this.virtual.cache[e[i]],e[i]<t&&(t-=1),t=Math.max(t,0);else this.virtual.slides.splice(e,1),this.params.virtual.cache&&delete this.virtual.cache[e],e<t&&(t-=1),t=Math.max(t,0);this.virtual.update(!0),this.slideTo(t,0)}},removeAllSlides:function(){this.virtual.slides=[],this.params.virtual.cache&&(this.virtual.cache={}),this.virtual.update(!0),this.slideTo(0,0)}},J={name:"virtual",params:{virtual:{enabled:!1,slides:[],cache:!0,renderSlide:null,renderExternal:null,addSlidesBefore:0,addSlidesAfter:0}},create:function(){n.extend(this,{virtual:{update:Q.update.bind(this),appendSlide:Q.appendSlide.bind(this),prependSlide:Q.prependSlide.bind(this),removeSlide:Q.removeSlide.bind(this),removeAllSlides:Q.removeAllSlides.bind(this),renderSlide:Q.renderSlide.bind(this),slides:this.params.virtual.slides,cache:{}}})},on:{beforeInit:function(){if(this.params.virtual.enabled){this.classNames.push(this.params.containerModifierClass+"virtual");var e={watchSlidesProgress:!0};n.extend(this.params,e),n.extend(this.originalParams,e),this.params.initialSlide||this.virtual.update()}},setTranslate:function(){this.params.virtual.enabled&&this.virtual.update()}}},ee={handle:function(i){var s=this.rtlTranslate,a=i;a.originalEvent&&(a=a.originalEvent);var r=a.keyCode||a.charCode;if(!this.allowSlideNext&&(this.isHorizontal()&&39===r||this.isVertical()&&40===r||34===r))return!1;if(!this.allowSlidePrev&&(this.isHorizontal()&&37===r||this.isVertical()&&38===r||33===r))return!1;if(!(a.shiftKey||a.altKey||a.ctrlKey||a.metaKey||e.activeElement&&e.activeElement.nodeName&&("input"===e.activeElement.nodeName.toLowerCase()||"textarea"===e.activeElement.nodeName.toLowerCase()))){if(this.params.keyboard.onlyInViewport&&(33===r||34===r||37===r||39===r||38===r||40===r)){var n=!1;if(this.$el.parents("."+this.params.slideClass).length>0&&0===this.$el.parents("."+this.params.slideActiveClass).length)return;var o=t.innerWidth,l=t.innerHeight,d=this.$el.offset();s&&(d.left-=this.$el[0].scrollLeft);for(var h=[[d.left,d.top],[d.left+this.width,d.top],[d.left,d.top+this.height],[d.left+this.width,d.top+this.height]],p=0;p<h.length;p+=1){var c=h[p];c[0]>=0&&c[0]<=o&&c[1]>=0&&c[1]<=l&&(n=!0)}if(!n)return}this.isHorizontal()?(33!==r&&34!==r&&37!==r&&39!==r||(a.preventDefault?a.preventDefault():a.returnValue=!1),(34!==r&&39!==r||s)&&(33!==r&&37!==r||!s)||this.slideNext(),(33!==r&&37!==r||s)&&(34!==r&&39!==r||!s)||this.slidePrev()):(33!==r&&34!==r&&38!==r&&40!==r||(a.preventDefault?a.preventDefault():a.returnValue=!1),34!==r&&40!==r||this.slideNext(),33!==r&&38!==r||this.slidePrev()),this.emit("keyPress",r)}},enable:function(){this.keyboard.enabled||(s(e).on("keydown",this.keyboard.handle),this.keyboard.enabled=!0)},disable:function(){this.keyboard.enabled&&(s(e).off("keydown",this.keyboard.handle),this.keyboard.enabled=!1)}},te={name:"keyboard",params:{keyboard:{enabled:!1,onlyInViewport:!0}},create:function(){n.extend(this,{keyboard:{enabled:!1,enable:ee.enable.bind(this),disable:ee.disable.bind(this),handle:ee.handle.bind(this)}})},on:{init:function(){this.params.keyboard.enabled&&this.keyboard.enable()},destroy:function(){this.keyboard.enabled&&this.keyboard.disable()}}};var ie={lastScrollTime:n.now(),lastEventBeforeSnap:void 0,recentWheelEvents:[],event:function(){return t.navigator.userAgent.indexOf("firefox")>-1?"DOMMouseScroll":function(){var t="onwheel"in e;if(!t){var i=e.createElement("div");i.setAttribute("onwheel","return;"),t="function"==typeof i.onwheel}return!t&&e.implementation&&e.implementation.hasFeature&&!0!==e.implementation.hasFeature("","")&&(t=e.implementation.hasFeature("Events.wheel","3.0")),t}()?"wheel":"mousewheel"},normalize:function(e){var t=0,i=0,s=0,a=0;return"detail"in e&&(i=e.detail),"wheelDelta"in e&&(i=-e.wheelDelta/120),"wheelDeltaY"in e&&(i=-e.wheelDeltaY/120),"wheelDeltaX"in e&&(t=-e.wheelDeltaX/120),"axis"in e&&e.axis===e.HORIZONTAL_AXIS&&(t=i,i=0),s=10*t,a=10*i,"deltaY"in e&&(a=e.deltaY),"deltaX"in e&&(s=e.deltaX),e.shiftKey&&!s&&(s=a,a=0),(s||a)&&e.deltaMode&&(1===e.deltaMode?(s*=40,a*=40):(s*=800,a*=800)),s&&!t&&(t=s<1?-1:1),a&&!i&&(i=a<1?-1:1),{spinX:t,spinY:i,pixelX:s,pixelY:a}},handleMouseEnter:function(){this.mouseEntered=!0},handleMouseLeave:function(){this.mouseEntered=!1},handle:function(e){var t=e,i=this,a=i.params.mousewheel;i.params.cssMode&&t.preventDefault();var r=i.$el;if("container"!==i.params.mousewheel.eventsTarged&&(r=s(i.params.mousewheel.eventsTarged)),!i.mouseEntered&&!r[0].contains(t.target)&&!a.releaseOnEdges)return!0;t.originalEvent&&(t=t.originalEvent);var o=0,l=i.rtlTranslate?-1:1,d=ie.normalize(t);if(a.forceToAxis)if(i.isHorizontal()){if(!(Math.abs(d.pixelX)>Math.abs(d.pixelY)))return!0;o=d.pixelX*l}else{if(!(Math.abs(d.pixelY)>Math.abs(d.pixelX)))return!0;o=d.pixelY}else o=Math.abs(d.pixelX)>Math.abs(d.pixelY)?-d.pixelX*l:-d.pixelY;if(0===o)return!0;if(a.invert&&(o=-o),i.params.freeMode){var h={time:n.now(),delta:Math.abs(o),direction:Math.sign(o)},p=i.mousewheel.lastEventBeforeSnap,c=p&&h.time<p.time+500&&h.delta<=p.delta&&h.direction===p.direction;if(!c){i.mousewheel.lastEventBeforeSnap=void 0,i.params.loop&&i.loopFix();var u=i.getTranslate()+o*a.sensitivity,v=i.isBeginning,f=i.isEnd;if(u>=i.minTranslate()&&(u=i.minTranslate()),u<=i.maxTranslate()&&(u=i.maxTranslate()),i.setTransition(0),i.setTranslate(u),i.updateProgress(),i.updateActiveIndex(),i.updateSlidesClasses(),(!v&&i.isBeginning||!f&&i.isEnd)&&i.updateSlidesClasses(),i.params.freeModeSticky){clearTimeout(i.mousewheel.timeout),i.mousewheel.timeout=void 0;var m=i.mousewheel.recentWheelEvents;m.length>=15&&m.shift();var g=m.length?m[m.length-1]:void 0,b=m[0];if(m.push(h),g&&(h.delta>g.delta||h.direction!==g.direction))m.splice(0);else if(m.length>=15&&h.time-b.time<500&&b.delta-h.delta>=1&&h.delta<=6){var w=o>0?.8:.2;i.mousewheel.lastEventBeforeSnap=h,m.splice(0),i.mousewheel.timeout=n.nextTick((function(){i.slideToClosest(i.params.speed,!0,void 0,w)}),0)}i.mousewheel.timeout||(i.mousewheel.timeout=n.nextTick((function(){i.mousewheel.lastEventBeforeSnap=h,m.splice(0),i.slideToClosest(i.params.speed,!0,void 0,.5)}),500))}if(c||i.emit("scroll",t),i.params.autoplay&&i.params.autoplayDisableOnInteraction&&i.autoplay.stop(),u===i.minTranslate()||u===i.maxTranslate())return!0}}else{var y={time:n.now(),delta:Math.abs(o),direction:Math.sign(o),raw:e},x=i.mousewheel.recentWheelEvents;x.length>=2&&x.shift();var T=x.length?x[x.length-1]:void 0;if(x.push(y),T?(y.direction!==T.direction||y.delta>T.delta)&&i.mousewheel.animateSlider(y):i.mousewheel.animateSlider(y),i.mousewheel.releaseScroll(y))return!0}return t.preventDefault?t.preventDefault():t.returnValue=!1,!1},animateSlider:function(e){return e.delta>=6&&n.now()-this.mousewheel.lastScrollTime<60||(e.direction<0?this.isEnd&&!this.params.loop||this.animating||(this.slideNext(),this.emit("scroll",e.raw)):this.isBeginning&&!this.params.loop||this.animating||(this.slidePrev(),this.emit("scroll",e.raw)),this.mousewheel.lastScrollTime=(new t.Date).getTime(),!1)},releaseScroll:function(e){var t=this.params.mousewheel;if(e.direction<0){if(this.isEnd&&!this.params.loop&&t.releaseOnEdges)return!0}else if(this.isBeginning&&!this.params.loop&&t.releaseOnEdges)return!0;return!1},enable:function(){var e=ie.event();if(this.params.cssMode)return this.wrapperEl.removeEventListener(e,this.mousewheel.handle),!0;if(!e)return!1;if(this.mousewheel.enabled)return!1;var t=this.$el;return"container"!==this.params.mousewheel.eventsTarged&&(t=s(this.params.mousewheel.eventsTarged)),t.on("mouseenter",this.mousewheel.handleMouseEnter),t.on("mouseleave",this.mousewheel.handleMouseLeave),t.on(e,this.mousewheel.handle),this.mousewheel.enabled=!0,!0},disable:function(){var e=ie.event();if(this.params.cssMode)return this.wrapperEl.addEventListener(e,this.mousewheel.handle),!0;if(!e)return!1;if(!this.mousewheel.enabled)return!1;var t=this.$el;return"container"!==this.params.mousewheel.eventsTarged&&(t=s(this.params.mousewheel.eventsTarged)),t.off(e,this.mousewheel.handle),this.mousewheel.enabled=!1,!0}},se={update:function(){var e=this.params.navigation;if(!this.params.loop){var t=this.navigation,i=t.$nextEl,s=t.$prevEl;s&&s.length>0&&(this.isBeginning?s.addClass(e.disabledClass):s.removeClass(e.disabledClass),s[this.params.watchOverflow&&this.isLocked?"addClass":"removeClass"](e.lockClass)),i&&i.length>0&&(this.isEnd?i.addClass(e.disabledClass):i.removeClass(e.disabledClass),i[this.params.watchOverflow&&this.isLocked?"addClass":"removeClass"](e.lockClass))}},onPrevClick:function(e){e.preventDefault(),this.isBeginning&&!this.params.loop||this.slidePrev()},onNextClick:function(e){e.preventDefault(),this.isEnd&&!this.params.loop||this.slideNext()},init:function(){var e,t,i=this.params.navigation;(i.nextEl||i.prevEl)&&(i.nextEl&&(e=s(i.nextEl),this.params.uniqueNavElements&&"string"==typeof i.nextEl&&e.length>1&&1===this.$el.find(i.nextEl).length&&(e=this.$el.find(i.nextEl))),i.prevEl&&(t=s(i.prevEl),this.params.uniqueNavElements&&"string"==typeof i.prevEl&&t.length>1&&1===this.$el.find(i.prevEl).length&&(t=this.$el.find(i.prevEl))),e&&e.length>0&&e.on("click",this.navigation.onNextClick),t&&t.length>0&&t.on("click",this.navigation.onPrevClick),n.extend(this.navigation,{$nextEl:e,nextEl:e&&e[0],$prevEl:t,prevEl:t&&t[0]}))},destroy:function(){var e=this.navigation,t=e.$nextEl,i=e.$prevEl;t&&t.length&&(t.off("click",this.navigation.onNextClick),t.removeClass(this.params.navigation.disabledClass)),i&&i.length&&(i.off("click",this.navigation.onPrevClick),i.removeClass(this.params.navigation.disabledClass))}},ae={update:function(){var e=this.rtl,t=this.params.pagination;if(t.el&&this.pagination.el&&this.pagination.$el&&0!==this.pagination.$el.length){var i,a=this.virtual&&this.params.virtual.enabled?this.virtual.slides.length:this.slides.length,r=this.pagination.$el,n=this.params.loop?Math.ceil((a-2*this.loopedSlides)/this.params.slidesPerGroup):this.snapGrid.length;if(this.params.loop?((i=Math.ceil((this.activeIndex-this.loopedSlides)/this.params.slidesPerGroup))>a-1-2*this.loopedSlides&&(i-=a-2*this.loopedSlides),i>n-1&&(i-=n),i<0&&"bullets"!==this.params.paginationType&&(i=n+i)):i=void 0!==this.snapIndex?this.snapIndex:this.activeIndex||0,"bullets"===t.type&&this.pagination.bullets&&this.pagination.bullets.length>0){var o,l,d,h=this.pagination.bullets;if(t.dynamicBullets&&(this.pagination.bulletSize=h.eq(0)[this.isHorizontal()?"outerWidth":"outerHeight"](!0),r.css(this.isHorizontal()?"width":"height",this.pagination.bulletSize*(t.dynamicMainBullets+4)+"px"),t.dynamicMainBullets>1&&void 0!==this.previousIndex&&(this.pagination.dynamicBulletIndex+=i-this.previousIndex,this.pagination.dynamicBulletIndex>t.dynamicMainBullets-1?this.pagination.dynamicBulletIndex=t.dynamicMainBullets-1:this.pagination.dynamicBulletIndex<0&&(this.pagination.dynamicBulletIndex=0)),o=i-this.pagination.dynamicBulletIndex,d=((l=o+(Math.min(h.length,t.dynamicMainBullets)-1))+o)/2),h.removeClass(t.bulletActiveClass+" "+t.bulletActiveClass+"-next "+t.bulletActiveClass+"-next-next "+t.bulletActiveClass+"-prev "+t.bulletActiveClass+"-prev-prev "+t.bulletActiveClass+"-main"),r.length>1)h.each((function(e,a){var r=s(a),n=r.index();n===i&&r.addClass(t.bulletActiveClass),t.dynamicBullets&&(n>=o&&n<=l&&r.addClass(t.bulletActiveClass+"-main"),n===o&&r.prev().addClass(t.bulletActiveClass+"-prev").prev().addClass(t.bulletActiveClass+"-prev-prev"),n===l&&r.next().addClass(t.bulletActiveClass+"-next").next().addClass(t.bulletActiveClass+"-next-next"))}));else{var p=h.eq(i),c=p.index();if(p.addClass(t.bulletActiveClass),t.dynamicBullets){for(var u=h.eq(o),v=h.eq(l),f=o;f<=l;f+=1)h.eq(f).addClass(t.bulletActiveClass+"-main");if(this.params.loop)if(c>=h.length-t.dynamicMainBullets){for(var m=t.dynamicMainBullets;m>=0;m-=1)h.eq(h.length-m).addClass(t.bulletActiveClass+"-main");h.eq(h.length-t.dynamicMainBullets-1).addClass(t.bulletActiveClass+"-prev")}else u.prev().addClass(t.bulletActiveClass+"-prev").prev().addClass(t.bulletActiveClass+"-prev-prev"),v.next().addClass(t.bulletActiveClass+"-next").next().addClass(t.bulletActiveClass+"-next-next");else u.prev().addClass(t.bulletActiveClass+"-prev").prev().addClass(t.bulletActiveClass+"-prev-prev"),v.next().addClass(t.bulletActiveClass+"-next").next().addClass(t.bulletActiveClass+"-next-next")}}if(t.dynamicBullets){var g=Math.min(h.length,t.dynamicMainBullets+4),b=(this.pagination.bulletSize*g-this.pagination.bulletSize)/2-d*this.pagination.bulletSize,w=e?"right":"left";h.css(this.isHorizontal()?w:"top",b+"px")}}if("fraction"===t.type&&(r.find("."+t.currentClass).text(t.formatFractionCurrent(i+1)),r.find("."+t.totalClass).text(t.formatFractionTotal(n))),"progressbar"===t.type){var y;y=t.progressbarOpposite?this.isHorizontal()?"vertical":"horizontal":this.isHorizontal()?"horizontal":"vertical";var x=(i+1)/n,T=1,E=1;"horizontal"===y?T=x:E=x,r.find("."+t.progressbarFillClass).transform("translate3d(0,0,0) scaleX("+T+") scaleY("+E+")").transition(this.params.speed)}"custom"===t.type&&t.renderCustom?(r.html(t.renderCustom(this,i+1,n)),this.emit("paginationRender",this,r[0])):this.emit("paginationUpdate",this,r[0]),r[this.params.watchOverflow&&this.isLocked?"addClass":"removeClass"](t.lockClass)}},render:function(){var e=this.params.pagination;if(e.el&&this.pagination.el&&this.pagination.$el&&0!==this.pagination.$el.length){var t=this.virtual&&this.params.virtual.enabled?this.virtual.slides.length:this.slides.length,i=this.pagination.$el,s="";if("bullets"===e.type){for(var a=this.params.loop?Math.ceil((t-2*this.loopedSlides)/this.params.slidesPerGroup):this.snapGrid.length,r=0;r<a;r+=1)e.renderBullet?s+=e.renderBullet.call(this,r,e.bulletClass):s+="<"+e.bulletElement+' class="'+e.bulletClass+'"></'+e.bulletElement+">";i.html(s),this.pagination.bullets=i.find("."+e.bulletClass)}"fraction"===e.type&&(s=e.renderFraction?e.renderFraction.call(this,e.currentClass,e.totalClass):'<span class="'+e.currentClass+'"></span> / <span class="'+e.totalClass+'"></span>',i.html(s)),"progressbar"===e.type&&(s=e.renderProgressbar?e.renderProgressbar.call(this,e.progressbarFillClass):'<span class="'+e.progressbarFillClass+'"></span>',i.html(s)),"custom"!==e.type&&this.emit("paginationRender",this.pagination.$el[0])}},init:function(){var e=this,t=e.params.pagination;if(t.el){var i=s(t.el);0!==i.length&&(e.params.uniqueNavElements&&"string"==typeof t.el&&i.length>1&&1===e.$el.find(t.el).length&&(i=e.$el.find(t.el)),"bullets"===t.type&&t.clickable&&i.addClass(t.clickableClass),i.addClass(t.modifierClass+t.type),"bullets"===t.type&&t.dynamicBullets&&(i.addClass(""+t.modifierClass+t.type+"-dynamic"),e.pagination.dynamicBulletIndex=0,t.dynamicMainBullets<1&&(t.dynamicMainBullets=1)),"progressbar"===t.type&&t.progressbarOpposite&&i.addClass(t.progressbarOppositeClass),t.clickable&&i.on("click","."+t.bulletClass,(function(t){t.preventDefault();var i=s(this).index()*e.params.slidesPerGroup;e.params.loop&&(i+=e.loopedSlides),e.slideTo(i)})),n.extend(e.pagination,{$el:i,el:i[0]}))}},destroy:function(){var e=this.params.pagination;if(e.el&&this.pagination.el&&this.pagination.$el&&0!==this.pagination.$el.length){var t=this.pagination.$el;t.removeClass(e.hiddenClass),t.removeClass(e.modifierClass+e.type),this.pagination.bullets&&this.pagination.bullets.removeClass(e.bulletActiveClass),e.clickable&&t.off("click","."+e.bulletClass)}}},re={setTranslate:function(){if(this.params.scrollbar.el&&this.scrollbar.el){var e=this.scrollbar,t=this.rtlTranslate,i=this.progress,s=e.dragSize,a=e.trackSize,r=e.$dragEl,n=e.$el,o=this.params.scrollbar,l=s,d=(a-s)*i;t?(d=-d)>0?(l=s-d,d=0):-d+s>a&&(l=a+d):d<0?(l=s+d,d=0):d+s>a&&(l=a-d),this.isHorizontal()?(r.transform("translate3d("+d+"px, 0, 0)"),r[0].style.width=l+"px"):(r.transform("translate3d(0px, "+d+"px, 0)"),r[0].style.height=l+"px"),o.hide&&(clearTimeout(this.scrollbar.timeout),n[0].style.opacity=1,this.scrollbar.timeout=setTimeout((function(){n[0].style.opacity=0,n.transition(400)}),1e3))}},setTransition:function(e){this.params.scrollbar.el&&this.scrollbar.el&&this.scrollbar.$dragEl.transition(e)},updateSize:function(){if(this.params.scrollbar.el&&this.scrollbar.el){var e=this.scrollbar,t=e.$dragEl,i=e.$el;t[0].style.width="",t[0].style.height="";var s,a=this.isHorizontal()?i[0].offsetWidth:i[0].offsetHeight,r=this.size/this.virtualSize,o=r*(a/this.size);s="auto"===this.params.scrollbar.dragSize?a*r:parseInt(this.params.scrollbar.dragSize,10),this.isHorizontal()?t[0].style.width=s+"px":t[0].style.height=s+"px",i[0].style.display=r>=1?"none":"",this.params.scrollbar.hide&&(i[0].style.opacity=0),n.extend(e,{trackSize:a,divider:r,moveDivider:o,dragSize:s}),e.$el[this.params.watchOverflow&&this.isLocked?"addClass":"removeClass"](this.params.scrollbar.lockClass)}},getPointerPosition:function(e){return this.isHorizontal()?"touchstart"===e.type||"touchmove"===e.type?e.targetTouches[0].clientX:e.clientX:"touchstart"===e.type||"touchmove"===e.type?e.targetTouches[0].clientY:e.clientY},setDragPosition:function(e){var t,i=this.scrollbar,s=this.rtlTranslate,a=i.$el,r=i.dragSize,n=i.trackSize,o=i.dragStartPos;t=(i.getPointerPosition(e)-a.offset()[this.isHorizontal()?"left":"top"]-(null!==o?o:r/2))/(n-r),t=Math.max(Math.min(t,1),0),s&&(t=1-t);var l=this.minTranslate()+(this.maxTranslate()-this.minTranslate())*t;this.updateProgress(l),this.setTranslate(l),this.updateActiveIndex(),this.updateSlidesClasses()},onDragStart:function(e){var t=this.params.scrollbar,i=this.scrollbar,s=this.$wrapperEl,a=i.$el,r=i.$dragEl;this.scrollbar.isTouched=!0,this.scrollbar.dragStartPos=e.target===r[0]||e.target===r?i.getPointerPosition(e)-e.target.getBoundingClientRect()[this.isHorizontal()?"left":"top"]:null,e.preventDefault(),e.stopPropagation(),s.transition(100),r.transition(100),i.setDragPosition(e),clearTimeout(this.scrollbar.dragTimeout),a.transition(0),t.hide&&a.css("opacity",1),this.params.cssMode&&this.$wrapperEl.css("scroll-snap-type","none"),this.emit("scrollbarDragStart",e)},onDragMove:function(e){var t=this.scrollbar,i=this.$wrapperEl,s=t.$el,a=t.$dragEl;this.scrollbar.isTouched&&(e.preventDefault?e.preventDefault():e.returnValue=!1,t.setDragPosition(e),i.transition(0),s.transition(0),a.transition(0),this.emit("scrollbarDragMove",e))},onDragEnd:function(e){var t=this.params.scrollbar,i=this.scrollbar,s=this.$wrapperEl,a=i.$el;this.scrollbar.isTouched&&(this.scrollbar.isTouched=!1,this.params.cssMode&&(this.$wrapperEl.css("scroll-snap-type",""),s.transition("")),t.hide&&(clearTimeout(this.scrollbar.dragTimeout),this.scrollbar.dragTimeout=n.nextTick((function(){a.css("opacity",0),a.transition(400)}),1e3)),this.emit("scrollbarDragEnd",e),t.snapOnRelease&&this.slideToClosest())},enableDraggable:function(){if(this.params.scrollbar.el){var t=this.scrollbar,i=this.touchEventsTouch,s=this.touchEventsDesktop,a=this.params,r=t.$el[0],n=!(!o.passiveListener||!a.passiveListeners)&&{passive:!1,capture:!1},l=!(!o.passiveListener||!a.passiveListeners)&&{passive:!0,capture:!1};o.touch?(r.addEventListener(i.start,this.scrollbar.onDragStart,n),r.addEventListener(i.move,this.scrollbar.onDragMove,n),r.addEventListener(i.end,this.scrollbar.onDragEnd,l)):(r.addEventListener(s.start,this.scrollbar.onDragStart,n),e.addEventListener(s.move,this.scrollbar.onDragMove,n),e.addEventListener(s.end,this.scrollbar.onDragEnd,l))}},disableDraggable:function(){if(this.params.scrollbar.el){var t=this.scrollbar,i=this.touchEventsTouch,s=this.touchEventsDesktop,a=this.params,r=t.$el[0],n=!(!o.passiveListener||!a.passiveListeners)&&{passive:!1,capture:!1},l=!(!o.passiveListener||!a.passiveListeners)&&{passive:!0,capture:!1};o.touch?(r.removeEventListener(i.start,this.scrollbar.onDragStart,n),r.removeEventListener(i.move,this.scrollbar.onDragMove,n),r.removeEventListener(i.end,this.scrollbar.onDragEnd,l)):(r.removeEventListener(s.start,this.scrollbar.onDragStart,n),e.removeEventListener(s.move,this.scrollbar.onDragMove,n),e.removeEventListener(s.end,this.scrollbar.onDragEnd,l))}},init:function(){if(this.params.scrollbar.el){var e=this.scrollbar,t=this.$el,i=this.params.scrollbar,a=s(i.el);this.params.uniqueNavElements&&"string"==typeof i.el&&a.length>1&&1===t.find(i.el).length&&(a=t.find(i.el));var r=a.find("."+this.params.scrollbar.dragClass);0===r.length&&(r=s('<div class="'+this.params.scrollbar.dragClass+'"></div>'),a.append(r)),n.extend(e,{$el:a,el:a[0],$dragEl:r,dragEl:r[0]}),i.draggable&&e.enableDraggable()}},destroy:function(){this.scrollbar.disableDraggable()}},ne={setTransform:function(e,t){var i=this.rtl,a=s(e),r=i?-1:1,n=a.attr("data-swiper-parallax")||"0",o=a.attr("data-swiper-parallax-x"),l=a.attr("data-swiper-parallax-y"),d=a.attr("data-swiper-parallax-scale"),h=a.attr("data-swiper-parallax-opacity");if(o||l?(o=o||"0",l=l||"0"):this.isHorizontal()?(o=n,l="0"):(l=n,o="0"),o=o.indexOf("%")>=0?parseInt(o,10)*t*r+"%":o*t*r+"px",l=l.indexOf("%")>=0?parseInt(l,10)*t+"%":l*t+"px",null!=h){var p=h-(h-1)*(1-Math.abs(t));a[0].style.opacity=p}if(null==d)a.transform("translate3d("+o+", "+l+", 0px)");else{var c=d-(d-1)*(1-Math.abs(t));a.transform("translate3d("+o+", "+l+", 0px) scale("+c+")")}},setTranslate:function(){var e=this,t=e.$el,i=e.slides,a=e.progress,r=e.snapGrid;t.children("[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]").each((function(t,i){e.parallax.setTransform(i,a)})),i.each((function(t,i){var n=i.progress;e.params.slidesPerGroup>1&&"auto"!==e.params.slidesPerView&&(n+=Math.ceil(t/2)-a*(r.length-1)),n=Math.min(Math.max(n,-1),1),s(i).find("[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]").each((function(t,i){e.parallax.setTransform(i,n)}))}))},setTransition:function(e){void 0===e&&(e=this.params.speed);this.$el.find("[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]").each((function(t,i){var a=s(i),r=parseInt(a.attr("data-swiper-parallax-duration"),10)||e;0===e&&(r=0),a.transition(r)}))}},oe={getDistanceBetweenTouches:function(e){if(e.targetTouches.length<2)return 1;var t=e.targetTouches[0].pageX,i=e.targetTouches[0].pageY,s=e.targetTouches[1].pageX,a=e.targetTouches[1].pageY;return Math.sqrt(Math.pow(s-t,2)+Math.pow(a-i,2))},onGestureStart:function(e){var t=this.params.zoom,i=this.zoom,a=i.gesture;if(i.fakeGestureTouched=!1,i.fakeGestureMoved=!1,!o.gestures){if("touchstart"!==e.type||"touchstart"===e.type&&e.targetTouches.length<2)return;i.fakeGestureTouched=!0,a.scaleStart=oe.getDistanceBetweenTouches(e)}a.$slideEl&&a.$slideEl.length||(a.$slideEl=s(e.target).closest("."+this.params.slideClass),0===a.$slideEl.length&&(a.$slideEl=this.slides.eq(this.activeIndex)),a.$imageEl=a.$slideEl.find("img, svg, canvas, picture, .swiper-zoom-target"),a.$imageWrapEl=a.$imageEl.parent("."+t.containerClass),a.maxRatio=a.$imageWrapEl.attr("data-swiper-zoom")||t.maxRatio,0!==a.$imageWrapEl.length)?(a.$imageEl.transition(0),this.zoom.isScaling=!0):a.$imageEl=void 0},onGestureChange:function(e){var t=this.params.zoom,i=this.zoom,s=i.gesture;if(!o.gestures){if("touchmove"!==e.type||"touchmove"===e.type&&e.targetTouches.length<2)return;i.fakeGestureMoved=!0,s.scaleMove=oe.getDistanceBetweenTouches(e)}s.$imageEl&&0!==s.$imageEl.length&&(o.gestures?i.scale=e.scale*i.currentScale:i.scale=s.scaleMove/s.scaleStart*i.currentScale,i.scale>s.maxRatio&&(i.scale=s.maxRatio-1+Math.pow(i.scale-s.maxRatio+1,.5)),i.scale<t.minRatio&&(i.scale=t.minRatio+1-Math.pow(t.minRatio-i.scale+1,.5)),s.$imageEl.transform("translate3d(0,0,0) scale("+i.scale+")"))},onGestureEnd:function(e){var t=this.params.zoom,i=this.zoom,s=i.gesture;if(!o.gestures){if(!i.fakeGestureTouched||!i.fakeGestureMoved)return;if("touchend"!==e.type||"touchend"===e.type&&e.changedTouches.length<2&&!I.android)return;i.fakeGestureTouched=!1,i.fakeGestureMoved=!1}s.$imageEl&&0!==s.$imageEl.length&&(i.scale=Math.max(Math.min(i.scale,s.maxRatio),t.minRatio),s.$imageEl.transition(this.params.speed).transform("translate3d(0,0,0) scale("+i.scale+")"),i.currentScale=i.scale,i.isScaling=!1,1===i.scale&&(s.$slideEl=void 0))},onTouchStart:function(e){var t=this.zoom,i=t.gesture,s=t.image;i.$imageEl&&0!==i.$imageEl.length&&(s.isTouched||(I.android&&e.preventDefault(),s.isTouched=!0,s.touchesStart.x="touchstart"===e.type?e.targetTouches[0].pageX:e.pageX,s.touchesStart.y="touchstart"===e.type?e.targetTouches[0].pageY:e.pageY))},onTouchMove:function(e){var t=this.zoom,i=t.gesture,s=t.image,a=t.velocity;if(i.$imageEl&&0!==i.$imageEl.length&&(this.allowClick=!1,s.isTouched&&i.$slideEl)){s.isMoved||(s.width=i.$imageEl[0].offsetWidth,s.height=i.$imageEl[0].offsetHeight,s.startX=n.getTranslate(i.$imageWrapEl[0],"x")||0,s.startY=n.getTranslate(i.$imageWrapEl[0],"y")||0,i.slideWidth=i.$slideEl[0].offsetWidth,i.slideHeight=i.$slideEl[0].offsetHeight,i.$imageWrapEl.transition(0),this.rtl&&(s.startX=-s.startX,s.startY=-s.startY));var r=s.width*t.scale,o=s.height*t.scale;if(!(r<i.slideWidth&&o<i.slideHeight)){if(s.minX=Math.min(i.slideWidth/2-r/2,0),s.maxX=-s.minX,s.minY=Math.min(i.slideHeight/2-o/2,0),s.maxY=-s.minY,s.touchesCurrent.x="touchmove"===e.type?e.targetTouches[0].pageX:e.pageX,s.touchesCurrent.y="touchmove"===e.type?e.targetTouches[0].pageY:e.pageY,!s.isMoved&&!t.isScaling){if(this.isHorizontal()&&(Math.floor(s.minX)===Math.floor(s.startX)&&s.touchesCurrent.x<s.touchesStart.x||Math.floor(s.maxX)===Math.floor(s.startX)&&s.touchesCurrent.x>s.touchesStart.x))return void(s.isTouched=!1);if(!this.isHorizontal()&&(Math.floor(s.minY)===Math.floor(s.startY)&&s.touchesCurrent.y<s.touchesStart.y||Math.floor(s.maxY)===Math.floor(s.startY)&&s.touchesCurrent.y>s.touchesStart.y))return void(s.isTouched=!1)}e.preventDefault(),e.stopPropagation(),s.isMoved=!0,s.currentX=s.touchesCurrent.x-s.touchesStart.x+s.startX,s.currentY=s.touchesCurrent.y-s.touchesStart.y+s.startY,s.currentX<s.minX&&(s.currentX=s.minX+1-Math.pow(s.minX-s.currentX+1,.8)),s.currentX>s.maxX&&(s.currentX=s.maxX-1+Math.pow(s.currentX-s.maxX+1,.8)),s.currentY<s.minY&&(s.currentY=s.minY+1-Math.pow(s.minY-s.currentY+1,.8)),s.currentY>s.maxY&&(s.currentY=s.maxY-1+Math.pow(s.currentY-s.maxY+1,.8)),a.prevPositionX||(a.prevPositionX=s.touchesCurrent.x),a.prevPositionY||(a.prevPositionY=s.touchesCurrent.y),a.prevTime||(a.prevTime=Date.now()),a.x=(s.touchesCurrent.x-a.prevPositionX)/(Date.now()-a.prevTime)/2,a.y=(s.touchesCurrent.y-a.prevPositionY)/(Date.now()-a.prevTime)/2,Math.abs(s.touchesCurrent.x-a.prevPositionX)<2&&(a.x=0),Math.abs(s.touchesCurrent.y-a.prevPositionY)<2&&(a.y=0),a.prevPositionX=s.touchesCurrent.x,a.prevPositionY=s.touchesCurrent.y,a.prevTime=Date.now(),i.$imageWrapEl.transform("translate3d("+s.currentX+"px, "+s.currentY+"px,0)")}}},onTouchEnd:function(){var e=this.zoom,t=e.gesture,i=e.image,s=e.velocity;if(t.$imageEl&&0!==t.$imageEl.length){if(!i.isTouched||!i.isMoved)return i.isTouched=!1,void(i.isMoved=!1);i.isTouched=!1,i.isMoved=!1;var a=300,r=300,n=s.x*a,o=i.currentX+n,l=s.y*r,d=i.currentY+l;0!==s.x&&(a=Math.abs((o-i.currentX)/s.x)),0!==s.y&&(r=Math.abs((d-i.currentY)/s.y));var h=Math.max(a,r);i.currentX=o,i.currentY=d;var p=i.width*e.scale,c=i.height*e.scale;i.minX=Math.min(t.slideWidth/2-p/2,0),i.maxX=-i.minX,i.minY=Math.min(t.slideHeight/2-c/2,0),i.maxY=-i.minY,i.currentX=Math.max(Math.min(i.currentX,i.maxX),i.minX),i.currentY=Math.max(Math.min(i.currentY,i.maxY),i.minY),t.$imageWrapEl.transition(h).transform("translate3d("+i.currentX+"px, "+i.currentY+"px,0)")}},onTransitionEnd:function(){var e=this.zoom,t=e.gesture;t.$slideEl&&this.previousIndex!==this.activeIndex&&(t.$imageEl.transform("translate3d(0,0,0) scale(1)"),t.$imageWrapEl.transform("translate3d(0,0,0)"),e.scale=1,e.currentScale=1,t.$slideEl=void 0,t.$imageEl=void 0,t.$imageWrapEl=void 0)},toggle:function(e){var t=this.zoom;t.scale&&1!==t.scale?t.out():t.in(e)},in:function(e){var t,i,s,a,r,n,o,l,d,h,p,c,u,v,f,m,g=this.zoom,b=this.params.zoom,w=g.gesture,y=g.image;(w.$slideEl||(w.$slideEl=this.slides.eq(this.activeIndex),w.$imageEl=w.$slideEl.find("img, svg, canvas, picture, .swiper-zoom-target"),w.$imageWrapEl=w.$imageEl.parent("."+b.containerClass)),w.$imageEl&&0!==w.$imageEl.length)&&(w.$slideEl.addClass(""+b.zoomedSlideClass),void 0===y.touchesStart.x&&e?(t="touchend"===e.type?e.changedTouches[0].pageX:e.pageX,i="touchend"===e.type?e.changedTouches[0].pageY:e.pageY):(t=y.touchesStart.x,i=y.touchesStart.y),g.scale=w.$imageWrapEl.attr("data-swiper-zoom")||b.maxRatio,g.currentScale=w.$imageWrapEl.attr("data-swiper-zoom")||b.maxRatio,e?(f=w.$slideEl[0].offsetWidth,m=w.$slideEl[0].offsetHeight,s=w.$slideEl.offset().left+f/2-t,a=w.$slideEl.offset().top+m/2-i,o=w.$imageEl[0].offsetWidth,l=w.$imageEl[0].offsetHeight,d=o*g.scale,h=l*g.scale,u=-(p=Math.min(f/2-d/2,0)),v=-(c=Math.min(m/2-h/2,0)),(r=s*g.scale)<p&&(r=p),r>u&&(r=u),(n=a*g.scale)<c&&(n=c),n>v&&(n=v)):(r=0,n=0),w.$imageWrapEl.transition(300).transform("translate3d("+r+"px, "+n+"px,0)"),w.$imageEl.transition(300).transform("translate3d(0,0,0) scale("+g.scale+")"))},out:function(){var e=this.zoom,t=this.params.zoom,i=e.gesture;i.$slideEl||(i.$slideEl=this.slides.eq(this.activeIndex),i.$imageEl=i.$slideEl.find("img, svg, canvas, picture, .swiper-zoom-target"),i.$imageWrapEl=i.$imageEl.parent("."+t.containerClass)),i.$imageEl&&0!==i.$imageEl.length&&(e.scale=1,e.currentScale=1,i.$imageWrapEl.transition(300).transform("translate3d(0,0,0)"),i.$imageEl.transition(300).transform("translate3d(0,0,0) scale(1)"),i.$slideEl.removeClass(""+t.zoomedSlideClass),i.$slideEl=void 0)},enable:function(){var e=this.zoom;if(!e.enabled){e.enabled=!0;var t=!("touchstart"!==this.touchEvents.start||!o.passiveListener||!this.params.passiveListeners)&&{passive:!0,capture:!1},i=!o.passiveListener||{passive:!1,capture:!0},s="."+this.params.slideClass;o.gestures?(this.$wrapperEl.on("gesturestart",s,e.onGestureStart,t),this.$wrapperEl.on("gesturechange",s,e.onGestureChange,t),this.$wrapperEl.on("gestureend",s,e.onGestureEnd,t)):"touchstart"===this.touchEvents.start&&(this.$wrapperEl.on(this.touchEvents.start,s,e.onGestureStart,t),this.$wrapperEl.on(this.touchEvents.move,s,e.onGestureChange,i),this.$wrapperEl.on(this.touchEvents.end,s,e.onGestureEnd,t),this.touchEvents.cancel&&this.$wrapperEl.on(this.touchEvents.cancel,s,e.onGestureEnd,t)),this.$wrapperEl.on(this.touchEvents.move,"."+this.params.zoom.containerClass,e.onTouchMove,i)}},disable:function(){var e=this.zoom;if(e.enabled){this.zoom.enabled=!1;var t=!("touchstart"!==this.touchEvents.start||!o.passiveListener||!this.params.passiveListeners)&&{passive:!0,capture:!1},i=!o.passiveListener||{passive:!1,capture:!0},s="."+this.params.slideClass;o.gestures?(this.$wrapperEl.off("gesturestart",s,e.onGestureStart,t),this.$wrapperEl.off("gesturechange",s,e.onGestureChange,t),this.$wrapperEl.off("gestureend",s,e.onGestureEnd,t)):"touchstart"===this.touchEvents.start&&(this.$wrapperEl.off(this.touchEvents.start,s,e.onGestureStart,t),this.$wrapperEl.off(this.touchEvents.move,s,e.onGestureChange,i),this.$wrapperEl.off(this.touchEvents.end,s,e.onGestureEnd,t),this.touchEvents.cancel&&this.$wrapperEl.off(this.touchEvents.cancel,s,e.onGestureEnd,t)),this.$wrapperEl.off(this.touchEvents.move,"."+this.params.zoom.containerClass,e.onTouchMove,i)}}},le={loadInSlide:function(e,t){void 0===t&&(t=!0);var i=this,a=i.params.lazy;if(void 0!==e&&0!==i.slides.length){var r=i.virtual&&i.params.virtual.enabled?i.$wrapperEl.children("."+i.params.slideClass+'[data-swiper-slide-index="'+e+'"]'):i.slides.eq(e),n=r.find("."+a.elementClass+":not(."+a.loadedClass+"):not(."+a.loadingClass+")");!r.hasClass(a.elementClass)||r.hasClass(a.loadedClass)||r.hasClass(a.loadingClass)||(n=n.add(r[0])),0!==n.length&&n.each((function(e,n){var o=s(n);o.addClass(a.loadingClass);var l=o.attr("data-background"),d=o.attr("data-src"),h=o.attr("data-srcset"),p=o.attr("data-sizes");i.loadImage(o[0],d||l,h,p,!1,(function(){if(null!=i&&i&&(!i||i.params)&&!i.destroyed){if(l?(o.css("background-image",'url("'+l+'")'),o.removeAttr("data-background")):(h&&(o.attr("srcset",h),o.removeAttr("data-srcset")),p&&(o.attr("sizes",p),o.removeAttr("data-sizes")),d&&(o.attr("src",d),o.removeAttr("data-src"))),o.addClass(a.loadedClass).removeClass(a.loadingClass),r.find("."+a.preloaderClass).remove(),i.params.loop&&t){var e=r.attr("data-swiper-slide-index");if(r.hasClass(i.params.slideDuplicateClass)){var s=i.$wrapperEl.children('[data-swiper-slide-index="'+e+'"]:not(.'+i.params.slideDuplicateClass+")");i.lazy.loadInSlide(s.index(),!1)}else{var n=i.$wrapperEl.children("."+i.params.slideDuplicateClass+'[data-swiper-slide-index="'+e+'"]');i.lazy.loadInSlide(n.index(),!1)}}i.emit("lazyImageReady",r[0],o[0]),i.params.autoHeight&&i.updateAutoHeight()}})),i.emit("lazyImageLoad",r[0],o[0])}))}},load:function(){var e=this,t=e.$wrapperEl,i=e.params,a=e.slides,r=e.activeIndex,n=e.virtual&&i.virtual.enabled,o=i.lazy,l=i.slidesPerView;function d(e){if(n){if(t.children("."+i.slideClass+'[data-swiper-slide-index="'+e+'"]').length)return!0}else if(a[e])return!0;return!1}function h(e){return n?s(e).attr("data-swiper-slide-index"):s(e).index()}if("auto"===l&&(l=0),e.lazy.initialImageLoaded||(e.lazy.initialImageLoaded=!0),e.params.watchSlidesVisibility)t.children("."+i.slideVisibleClass).each((function(t,i){var a=n?s(i).attr("data-swiper-slide-index"):s(i).index();e.lazy.loadInSlide(a)}));else if(l>1)for(var p=r;p<r+l;p+=1)d(p)&&e.lazy.loadInSlide(p);else e.lazy.loadInSlide(r);if(o.loadPrevNext)if(l>1||o.loadPrevNextAmount&&o.loadPrevNextAmount>1){for(var c=o.loadPrevNextAmount,u=l,v=Math.min(r+u+Math.max(c,u),a.length),f=Math.max(r-Math.max(u,c),0),m=r+l;m<v;m+=1)d(m)&&e.lazy.loadInSlide(m);for(var g=f;g<r;g+=1)d(g)&&e.lazy.loadInSlide(g)}else{var b=t.children("."+i.slideNextClass);b.length>0&&e.lazy.loadInSlide(h(b));var w=t.children("."+i.slidePrevClass);w.length>0&&e.lazy.loadInSlide(h(w))}}},de={LinearSpline:function(e,t){var i,s,a,r,n,o=function(e,t){for(s=-1,i=e.length;i-s>1;)e[a=i+s>>1]<=t?s=a:i=a;return i};return this.x=e,this.y=t,this.lastIndex=e.length-1,this.interpolate=function(e){return e?(n=o(this.x,e),r=n-1,(e-this.x[r])*(this.y[n]-this.y[r])/(this.x[n]-this.x[r])+this.y[r]):0},this},getInterpolateFunction:function(e){this.controller.spline||(this.controller.spline=this.params.loop?new de.LinearSpline(this.slidesGrid,e.slidesGrid):new de.LinearSpline(this.snapGrid,e.snapGrid))},setTranslate:function(e,t){var i,s,a=this,r=a.controller.control;function n(e){var t=a.rtlTranslate?-a.translate:a.translate;"slide"===a.params.controller.by&&(a.controller.getInterpolateFunction(e),s=-a.controller.spline.interpolate(-t)),s&&"container"!==a.params.controller.by||(i=(e.maxTranslate()-e.minTranslate())/(a.maxTranslate()-a.minTranslate()),s=(t-a.minTranslate())*i+e.minTranslate()),a.params.controller.inverse&&(s=e.maxTranslate()-s),e.updateProgress(s),e.setTranslate(s,a),e.updateActiveIndex(),e.updateSlidesClasses()}if(Array.isArray(r))for(var o=0;o<r.length;o+=1)r[o]!==t&&r[o]instanceof W&&n(r[o]);else r instanceof W&&t!==r&&n(r)},setTransition:function(e,t){var i,s=this,a=s.controller.control;function r(t){t.setTransition(e,s),0!==e&&(t.transitionStart(),t.params.autoHeight&&n.nextTick((function(){t.updateAutoHeight()})),t.$wrapperEl.transitionEnd((function(){a&&(t.params.loop&&"slide"===s.params.controller.by&&t.loopFix(),t.transitionEnd())})))}if(Array.isArray(a))for(i=0;i<a.length;i+=1)a[i]!==t&&a[i]instanceof W&&r(a[i]);else a instanceof W&&t!==a&&r(a)}},he={makeElFocusable:function(e){return e.attr("tabIndex","0"),e},addElRole:function(e,t){return e.attr("role",t),e},addElLabel:function(e,t){return e.attr("aria-label",t),e},disableEl:function(e){return e.attr("aria-disabled",!0),e},enableEl:function(e){return e.attr("aria-disabled",!1),e},onEnterKey:function(e){var t=this.params.a11y;if(13===e.keyCode){var i=s(e.target);this.navigation&&this.navigation.$nextEl&&i.is(this.navigation.$nextEl)&&(this.isEnd&&!this.params.loop||this.slideNext(),this.isEnd?this.a11y.notify(t.lastSlideMessage):this.a11y.notify(t.nextSlideMessage)),this.navigation&&this.navigation.$prevEl&&i.is(this.navigation.$prevEl)&&(this.isBeginning&&!this.params.loop||this.slidePrev(),this.isBeginning?this.a11y.notify(t.firstSlideMessage):this.a11y.notify(t.prevSlideMessage)),this.pagination&&i.is("."+this.params.pagination.bulletClass)&&i[0].click()}},notify:function(e){var t=this.a11y.liveRegion;0!==t.length&&(t.html(""),t.html(e))},updateNavigation:function(){if(!this.params.loop&&this.navigation){var e=this.navigation,t=e.$nextEl,i=e.$prevEl;i&&i.length>0&&(this.isBeginning?this.a11y.disableEl(i):this.a11y.enableEl(i)),t&&t.length>0&&(this.isEnd?this.a11y.disableEl(t):this.a11y.enableEl(t))}},updatePagination:function(){var e=this,t=e.params.a11y;e.pagination&&e.params.pagination.clickable&&e.pagination.bullets&&e.pagination.bullets.length&&e.pagination.bullets.each((function(i,a){var r=s(a);e.a11y.makeElFocusable(r),e.a11y.addElRole(r,"button"),e.a11y.addElLabel(r,t.paginationBulletMessage.replace(/{{index}}/,r.index()+1))}))},init:function(){this.$el.append(this.a11y.liveRegion);var e,t,i=this.params.a11y;this.navigation&&this.navigation.$nextEl&&(e=this.navigation.$nextEl),this.navigation&&this.navigation.$prevEl&&(t=this.navigation.$prevEl),e&&(this.a11y.makeElFocusable(e),this.a11y.addElRole(e,"button"),this.a11y.addElLabel(e,i.nextSlideMessage),e.on("keydown",this.a11y.onEnterKey)),t&&(this.a11y.makeElFocusable(t),this.a11y.addElRole(t,"button"),this.a11y.addElLabel(t,i.prevSlideMessage),t.on("keydown",this.a11y.onEnterKey)),this.pagination&&this.params.pagination.clickable&&this.pagination.bullets&&this.pagination.bullets.length&&this.pagination.$el.on("keydown","."+this.params.pagination.bulletClass,this.a11y.onEnterKey)},destroy:function(){var e,t;this.a11y.liveRegion&&this.a11y.liveRegion.length>0&&this.a11y.liveRegion.remove(),this.navigation&&this.navigation.$nextEl&&(e=this.navigation.$nextEl),this.navigation&&this.navigation.$prevEl&&(t=this.navigation.$prevEl),e&&e.off("keydown",this.a11y.onEnterKey),t&&t.off("keydown",this.a11y.onEnterKey),this.pagination&&this.params.pagination.clickable&&this.pagination.bullets&&this.pagination.bullets.length&&this.pagination.$el.off("keydown","."+this.params.pagination.bulletClass,this.a11y.onEnterKey)}},pe={init:function(){if(this.params.history){if(!t.history||!t.history.pushState)return this.params.history.enabled=!1,void(this.params.hashNavigation.enabled=!0);var e=this.history;e.initialized=!0,e.paths=pe.getPathValues(),(e.paths.key||e.paths.value)&&(e.scrollToSlide(0,e.paths.value,this.params.runCallbacksOnInit),this.params.history.replaceState||t.addEventListener("popstate",this.history.setHistoryPopState))}},destroy:function(){this.params.history.replaceState||t.removeEventListener("popstate",this.history.setHistoryPopState)},setHistoryPopState:function(){this.history.paths=pe.getPathValues(),this.history.scrollToSlide(this.params.speed,this.history.paths.value,!1)},getPathValues:function(){var e=t.location.pathname.slice(1).split("/").filter((function(e){return""!==e})),i=e.length;return{key:e[i-2],value:e[i-1]}},setHistory:function(e,i){if(this.history.initialized&&this.params.history.enabled){var s=this.slides.eq(i),a=pe.slugify(s.attr("data-history"));t.location.pathname.includes(e)||(a=e+"/"+a);var r=t.history.state;r&&r.value===a||(this.params.history.replaceState?t.history.replaceState({value:a},null,a):t.history.pushState({value:a},null,a))}},slugify:function(e){return e.toString().replace(/\s+/g,"-").replace(/[^\w-]+/g,"").replace(/--+/g,"-").replace(/^-+/,"").replace(/-+$/,"")},scrollToSlide:function(e,t,i){if(t)for(var s=0,a=this.slides.length;s<a;s+=1){var r=this.slides.eq(s);if(pe.slugify(r.attr("data-history"))===t&&!r.hasClass(this.params.slideDuplicateClass)){var n=r.index();this.slideTo(n,e,i)}}else this.slideTo(0,e,i)}},ce={onHashCange:function(){var t=e.location.hash.replace("#","");if(t!==this.slides.eq(this.activeIndex).attr("data-hash")){var i=this.$wrapperEl.children("."+this.params.slideClass+'[data-hash="'+t+'"]').index();if(void 0===i)return;this.slideTo(i)}},setHash:function(){if(this.hashNavigation.initialized&&this.params.hashNavigation.enabled)if(this.params.hashNavigation.replaceState&&t.history&&t.history.replaceState)t.history.replaceState(null,null,"#"+this.slides.eq(this.activeIndex).attr("data-hash")||"");else{var i=this.slides.eq(this.activeIndex),s=i.attr("data-hash")||i.attr("data-history");e.location.hash=s||""}},init:function(){if(!(!this.params.hashNavigation.enabled||this.params.history&&this.params.history.enabled)){this.hashNavigation.initialized=!0;var i=e.location.hash.replace("#","");if(i)for(var a=0,r=this.slides.length;a<r;a+=1){var n=this.slides.eq(a);if((n.attr("data-hash")||n.attr("data-history"))===i&&!n.hasClass(this.params.slideDuplicateClass)){var o=n.index();this.slideTo(o,0,this.params.runCallbacksOnInit,!0)}}this.params.hashNavigation.watchState&&s(t).on("hashchange",this.hashNavigation.onHashCange)}},destroy:function(){this.params.hashNavigation.watchState&&s(t).off("hashchange",this.hashNavigation.onHashCange)}},ue={run:function(){var e=this,t=e.slides.eq(e.activeIndex),i=e.params.autoplay.delay;t.attr("data-swiper-autoplay")&&(i=t.attr("data-swiper-autoplay")||e.params.autoplay.delay),clearTimeout(e.autoplay.timeout),e.autoplay.timeout=n.nextTick((function(){e.params.autoplay.reverseDirection?e.params.loop?(e.loopFix(),e.slidePrev(e.params.speed,!0,!0),e.emit("autoplay")):e.isBeginning?e.params.autoplay.stopOnLastSlide?e.autoplay.stop():(e.slideTo(e.slides.length-1,e.params.speed,!0,!0),e.emit("autoplay")):(e.slidePrev(e.params.speed,!0,!0),e.emit("autoplay")):e.params.loop?(e.loopFix(),e.slideNext(e.params.speed,!0,!0),e.emit("autoplay")):e.isEnd?e.params.autoplay.stopOnLastSlide?e.autoplay.stop():(e.slideTo(0,e.params.speed,!0,!0),e.emit("autoplay")):(e.slideNext(e.params.speed,!0,!0),e.emit("autoplay")),e.params.cssMode&&e.autoplay.running&&e.autoplay.run()}),i)},start:function(){return void 0===this.autoplay.timeout&&(!this.autoplay.running&&(this.autoplay.running=!0,this.emit("autoplayStart"),this.autoplay.run(),!0))},stop:function(){return!!this.autoplay.running&&(void 0!==this.autoplay.timeout&&(this.autoplay.timeout&&(clearTimeout(this.autoplay.timeout),this.autoplay.timeout=void 0),this.autoplay.running=!1,this.emit("autoplayStop"),!0))},pause:function(e){this.autoplay.running&&(this.autoplay.paused||(this.autoplay.timeout&&clearTimeout(this.autoplay.timeout),this.autoplay.paused=!0,0!==e&&this.params.autoplay.waitForTransition?(this.$wrapperEl[0].addEventListener("transitionend",this.autoplay.onTransitionEnd),this.$wrapperEl[0].addEventListener("webkitTransitionEnd",this.autoplay.onTransitionEnd)):(this.autoplay.paused=!1,this.autoplay.run())))}},ve={setTranslate:function(){for(var e=this.slides,t=0;t<e.length;t+=1){var i=this.slides.eq(t),s=-i[0].swiperSlideOffset;this.params.virtualTranslate||(s-=this.translate);var a=0;this.isHorizontal()||(a=s,s=0);var r=this.params.fadeEffect.crossFade?Math.max(1-Math.abs(i[0].progress),0):1+Math.min(Math.max(i[0].progress,-1),0);i.css({opacity:r}).transform("translate3d("+s+"px, "+a+"px, 0px)")}},setTransition:function(e){var t=this,i=t.slides,s=t.$wrapperEl;if(i.transition(e),t.params.virtualTranslate&&0!==e){var a=!1;i.transitionEnd((function(){if(!a&&t&&!t.destroyed){a=!0,t.animating=!1;for(var e=["webkitTransitionEnd","transitionend"],i=0;i<e.length;i+=1)s.trigger(e[i])}}))}}},fe={setTranslate:function(){var e,t=this.$el,i=this.$wrapperEl,a=this.slides,r=this.width,n=this.height,o=this.rtlTranslate,l=this.size,d=this.params.cubeEffect,h=this.isHorizontal(),p=this.virtual&&this.params.virtual.enabled,c=0;d.shadow&&(h?(0===(e=i.find(".swiper-cube-shadow")).length&&(e=s('<div class="swiper-cube-shadow"></div>'),i.append(e)),e.css({height:r+"px"})):0===(e=t.find(".swiper-cube-shadow")).length&&(e=s('<div class="swiper-cube-shadow"></div>'),t.append(e)));for(var u=0;u<a.length;u+=1){var v=a.eq(u),f=u;p&&(f=parseInt(v.attr("data-swiper-slide-index"),10));var m=90*f,g=Math.floor(m/360);o&&(m=-m,g=Math.floor(-m/360));var b=Math.max(Math.min(v[0].progress,1),-1),w=0,y=0,x=0;f%4==0?(w=4*-g*l,x=0):(f-1)%4==0?(w=0,x=4*-g*l):(f-2)%4==0?(w=l+4*g*l,x=l):(f-3)%4==0&&(w=-l,x=3*l+4*l*g),o&&(w=-w),h||(y=w,w=0);var T="rotateX("+(h?0:-m)+"deg) rotateY("+(h?m:0)+"deg) translate3d("+w+"px, "+y+"px, "+x+"px)";if(b<=1&&b>-1&&(c=90*f+90*b,o&&(c=90*-f-90*b)),v.transform(T),d.slideShadows){var E=h?v.find(".swiper-slide-shadow-left"):v.find(".swiper-slide-shadow-top"),S=h?v.find(".swiper-slide-shadow-right"):v.find(".swiper-slide-shadow-bottom");0===E.length&&(E=s('<div class="swiper-slide-shadow-'+(h?"left":"top")+'"></div>'),v.append(E)),0===S.length&&(S=s('<div class="swiper-slide-shadow-'+(h?"right":"bottom")+'"></div>'),v.append(S)),E.length&&(E[0].style.opacity=Math.max(-b,0)),S.length&&(S[0].style.opacity=Math.max(b,0))}}if(i.css({"-webkit-transform-origin":"50% 50% -"+l/2+"px","-moz-transform-origin":"50% 50% -"+l/2+"px","-ms-transform-origin":"50% 50% -"+l/2+"px","transform-origin":"50% 50% -"+l/2+"px"}),d.shadow)if(h)e.transform("translate3d(0px, "+(r/2+d.shadowOffset)+"px, "+-r/2+"px) rotateX(90deg) rotateZ(0deg) scale("+d.shadowScale+")");else{var C=Math.abs(c)-90*Math.floor(Math.abs(c)/90),M=1.5-(Math.sin(2*C*Math.PI/360)/2+Math.cos(2*C*Math.PI/360)/2),P=d.shadowScale,z=d.shadowScale/M,k=d.shadowOffset;e.transform("scale3d("+P+", 1, "+z+") translate3d(0px, "+(n/2+k)+"px, "+-n/2/z+"px) rotateX(-90deg)")}var $=j.isSafari||j.isUiWebView?-l/2:0;i.transform("translate3d(0px,0,"+$+"px) rotateX("+(this.isHorizontal()?0:c)+"deg) rotateY("+(this.isHorizontal()?-c:0)+"deg)")},setTransition:function(e){var t=this.$el;this.slides.transition(e).find(".swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left").transition(e),this.params.cubeEffect.shadow&&!this.isHorizontal()&&t.find(".swiper-cube-shadow").transition(e)}},me={setTranslate:function(){for(var e=this.slides,t=this.rtlTranslate,i=0;i<e.length;i+=1){var a=e.eq(i),r=a[0].progress;this.params.flipEffect.limitRotation&&(r=Math.max(Math.min(a[0].progress,1),-1));var n=-180*r,o=0,l=-a[0].swiperSlideOffset,d=0;if(this.isHorizontal()?t&&(n=-n):(d=l,l=0,o=-n,n=0),a[0].style.zIndex=-Math.abs(Math.round(r))+e.length,this.params.flipEffect.slideShadows){var h=this.isHorizontal()?a.find(".swiper-slide-shadow-left"):a.find(".swiper-slide-shadow-top"),p=this.isHorizontal()?a.find(".swiper-slide-shadow-right"):a.find(".swiper-slide-shadow-bottom");0===h.length&&(h=s('<div class="swiper-slide-shadow-'+(this.isHorizontal()?"left":"top")+'"></div>'),a.append(h)),0===p.length&&(p=s('<div class="swiper-slide-shadow-'+(this.isHorizontal()?"right":"bottom")+'"></div>'),a.append(p)),h.length&&(h[0].style.opacity=Math.max(-r,0)),p.length&&(p[0].style.opacity=Math.max(r,0))}a.transform("translate3d("+l+"px, "+d+"px, 0px) rotateX("+o+"deg) rotateY("+n+"deg)")}},setTransition:function(e){var t=this,i=t.slides,s=t.activeIndex,a=t.$wrapperEl;if(i.transition(e).find(".swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left").transition(e),t.params.virtualTranslate&&0!==e){var r=!1;i.eq(s).transitionEnd((function(){if(!r&&t&&!t.destroyed){r=!0,t.animating=!1;for(var e=["webkitTransitionEnd","transitionend"],i=0;i<e.length;i+=1)a.trigger(e[i])}}))}}},ge={setTranslate:function(){for(var e=this.width,t=this.height,i=this.slides,a=this.$wrapperEl,r=this.slidesSizesGrid,n=this.params.coverflowEffect,l=this.isHorizontal(),d=this.translate,h=l?e/2-d:t/2-d,p=l?n.rotate:-n.rotate,c=n.depth,u=0,v=i.length;u<v;u+=1){var f=i.eq(u),m=r[u],g=(h-f[0].swiperSlideOffset-m/2)/m*n.modifier,b=l?p*g:0,w=l?0:p*g,y=-c*Math.abs(g),x=n.stretch;"string"==typeof x&&-1!==x.indexOf("%")&&(x=parseFloat(n.stretch)/100*m);var T=l?0:x*g,E=l?x*g:0;Math.abs(E)<.001&&(E=0),Math.abs(T)<.001&&(T=0),Math.abs(y)<.001&&(y=0),Math.abs(b)<.001&&(b=0),Math.abs(w)<.001&&(w=0);var S="translate3d("+E+"px,"+T+"px,"+y+"px)  rotateX("+w+"deg) rotateY("+b+"deg)";if(f.transform(S),f[0].style.zIndex=1-Math.abs(Math.round(g)),n.slideShadows){var C=l?f.find(".swiper-slide-shadow-left"):f.find(".swiper-slide-shadow-top"),M=l?f.find(".swiper-slide-shadow-right"):f.find(".swiper-slide-shadow-bottom");0===C.length&&(C=s('<div class="swiper-slide-shadow-'+(l?"left":"top")+'"></div>'),f.append(C)),0===M.length&&(M=s('<div class="swiper-slide-shadow-'+(l?"right":"bottom")+'"></div>'),f.append(M)),C.length&&(C[0].style.opacity=g>0?g:0),M.length&&(M[0].style.opacity=-g>0?-g:0)}}(o.pointerEvents||o.prefixedPointerEvents)&&(a[0].style.perspectiveOrigin=h+"px 50%")},setTransition:function(e){this.slides.transition(e).find(".swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left").transition(e)}},be={init:function(){var e=this.params.thumbs,t=this.constructor;e.swiper instanceof t?(this.thumbs.swiper=e.swiper,n.extend(this.thumbs.swiper.originalParams,{watchSlidesProgress:!0,slideToClickedSlide:!1}),n.extend(this.thumbs.swiper.params,{watchSlidesProgress:!0,slideToClickedSlide:!1})):n.isObject(e.swiper)&&(this.thumbs.swiper=new t(n.extend({},e.swiper,{watchSlidesVisibility:!0,watchSlidesProgress:!0,slideToClickedSlide:!1})),this.thumbs.swiperCreated=!0),this.thumbs.swiper.$el.addClass(this.params.thumbs.thumbsContainerClass),this.thumbs.swiper.on("tap",this.thumbs.onThumbClick)},onThumbClick:function(){var e=this.thumbs.swiper;if(e){var t=e.clickedIndex,i=e.clickedSlide;if(!(i&&s(i).hasClass(this.params.thumbs.slideThumbActiveClass)||null==t)){var a;if(a=e.params.loop?parseInt(s(e.clickedSlide).attr("data-swiper-slide-index"),10):t,this.params.loop){var r=this.activeIndex;this.slides.eq(r).hasClass(this.params.slideDuplicateClass)&&(this.loopFix(),this._clientLeft=this.$wrapperEl[0].clientLeft,r=this.activeIndex);var n=this.slides.eq(r).prevAll('[data-swiper-slide-index="'+a+'"]').eq(0).index(),o=this.slides.eq(r).nextAll('[data-swiper-slide-index="'+a+'"]').eq(0).index();a=void 0===n?o:void 0===o?n:o-r<r-n?o:n}this.slideTo(a)}}},update:function(e){var t=this.thumbs.swiper;if(t){var i="auto"===t.params.slidesPerView?t.slidesPerViewDynamic():t.params.slidesPerView;if(this.realIndex!==t.realIndex){var s,a=t.activeIndex;if(t.params.loop){t.slides.eq(a).hasClass(t.params.slideDuplicateClass)&&(t.loopFix(),t._clientLeft=t.$wrapperEl[0].clientLeft,a=t.activeIndex);var r=t.slides.eq(a).prevAll('[data-swiper-slide-index="'+this.realIndex+'"]').eq(0).index(),n=t.slides.eq(a).nextAll('[data-swiper-slide-index="'+this.realIndex+'"]').eq(0).index();s=void 0===r?n:void 0===n?r:n-a==a-r?a:n-a<a-r?n:r}else s=this.realIndex;t.visibleSlidesIndexes&&t.visibleSlidesIndexes.indexOf(s)<0&&(t.params.centeredSlides?s=s>a?s-Math.floor(i/2)+1:s+Math.floor(i/2)-1:s>a&&(s=s-i+1),t.slideTo(s,e?0:void 0))}var o=1,l=this.params.thumbs.slideThumbActiveClass;if(this.params.slidesPerView>1&&!this.params.centeredSlides&&(o=this.params.slidesPerView),this.params.thumbs.multipleActiveThumbs||(o=1),o=Math.floor(o),t.slides.removeClass(l),t.params.loop||t.params.virtual&&t.params.virtual.enabled)for(var d=0;d<o;d+=1)t.$wrapperEl.children('[data-swiper-slide-index="'+(this.realIndex+d)+'"]').addClass(l);else for(var h=0;h<o;h+=1)t.slides.eq(this.realIndex+h).addClass(l)}}},we=[R,q,K,U,Z,J,te,{name:"mousewheel",params:{mousewheel:{enabled:!1,releaseOnEdges:!1,invert:!1,forceToAxis:!1,sensitivity:1,eventsTarged:"container"}},create:function(){n.extend(this,{mousewheel:{enabled:!1,enable:ie.enable.bind(this),disable:ie.disable.bind(this),handle:ie.handle.bind(this),handleMouseEnter:ie.handleMouseEnter.bind(this),handleMouseLeave:ie.handleMouseLeave.bind(this),animateSlider:ie.animateSlider.bind(this),releaseScroll:ie.releaseScroll.bind(this),lastScrollTime:n.now(),lastEventBeforeSnap:void 0,recentWheelEvents:[]}})},on:{init:function(){!this.params.mousewheel.enabled&&this.params.cssMode&&this.mousewheel.disable(),this.params.mousewheel.enabled&&this.mousewheel.enable()},destroy:function(){this.params.cssMode&&this.mousewheel.enable(),this.mousewheel.enabled&&this.mousewheel.disable()}}},{name:"navigation",params:{navigation:{nextEl:null,prevEl:null,hideOnClick:!1,disabledClass:"swiper-button-disabled",hiddenClass:"swiper-button-hidden",lockClass:"swiper-button-lock"}},create:function(){n.extend(this,{navigation:{init:se.init.bind(this),update:se.update.bind(this),destroy:se.destroy.bind(this),onNextClick:se.onNextClick.bind(this),onPrevClick:se.onPrevClick.bind(this)}})},on:{init:function(){this.navigation.init(),this.navigation.update()},toEdge:function(){this.navigation.update()},fromEdge:function(){this.navigation.update()},destroy:function(){this.navigation.destroy()},click:function(e){var t,i=this.navigation,a=i.$nextEl,r=i.$prevEl;!this.params.navigation.hideOnClick||s(e.target).is(r)||s(e.target).is(a)||(a?t=a.hasClass(this.params.navigation.hiddenClass):r&&(t=r.hasClass(this.params.navigation.hiddenClass)),!0===t?this.emit("navigationShow",this):this.emit("navigationHide",this),a&&a.toggleClass(this.params.navigation.hiddenClass),r&&r.toggleClass(this.params.navigation.hiddenClass))}}},{name:"pagination",params:{pagination:{el:null,bulletElement:"span",clickable:!1,hideOnClick:!1,renderBullet:null,renderProgressbar:null,renderFraction:null,renderCustom:null,progressbarOpposite:!1,type:"bullets",dynamicBullets:!1,dynamicMainBullets:1,formatFractionCurrent:function(e){return e},formatFractionTotal:function(e){return e},bulletClass:"swiper-pagination-bullet",bulletActiveClass:"swiper-pagination-bullet-active",modifierClass:"swiper-pagination-",currentClass:"swiper-pagination-current",totalClass:"swiper-pagination-total",hiddenClass:"swiper-pagination-hidden",progressbarFillClass:"swiper-pagination-progressbar-fill",progressbarOppositeClass:"swiper-pagination-progressbar-opposite",clickableClass:"swiper-pagination-clickable",lockClass:"swiper-pagination-lock"}},create:function(){n.extend(this,{pagination:{init:ae.init.bind(this),render:ae.render.bind(this),update:ae.update.bind(this),destroy:ae.destroy.bind(this),dynamicBulletIndex:0}})},on:{init:function(){this.pagination.init(),this.pagination.render(),this.pagination.update()},activeIndexChange:function(){this.params.loop?this.pagination.update():void 0===this.snapIndex&&this.pagination.update()},snapIndexChange:function(){this.params.loop||this.pagination.update()},slidesLengthChange:function(){this.params.loop&&(this.pagination.render(),this.pagination.update())},snapGridLengthChange:function(){this.params.loop||(this.pagination.render(),this.pagination.update())},destroy:function(){this.pagination.destroy()},click:function(e){this.params.pagination.el&&this.params.pagination.hideOnClick&&this.pagination.$el.length>0&&!s(e.target).hasClass(this.params.pagination.bulletClass)&&(!0===this.pagination.$el.hasClass(this.params.pagination.hiddenClass)?this.emit("paginationShow",this):this.emit("paginationHide",this),this.pagination.$el.toggleClass(this.params.pagination.hiddenClass))}}},{name:"scrollbar",params:{scrollbar:{el:null,dragSize:"auto",hide:!1,draggable:!1,snapOnRelease:!0,lockClass:"swiper-scrollbar-lock",dragClass:"swiper-scrollbar-drag"}},create:function(){n.extend(this,{scrollbar:{init:re.init.bind(this),destroy:re.destroy.bind(this),updateSize:re.updateSize.bind(this),setTranslate:re.setTranslate.bind(this),setTransition:re.setTransition.bind(this),enableDraggable:re.enableDraggable.bind(this),disableDraggable:re.disableDraggable.bind(this),setDragPosition:re.setDragPosition.bind(this),getPointerPosition:re.getPointerPosition.bind(this),onDragStart:re.onDragStart.bind(this),onDragMove:re.onDragMove.bind(this),onDragEnd:re.onDragEnd.bind(this),isTouched:!1,timeout:null,dragTimeout:null}})},on:{init:function(){this.scrollbar.init(),this.scrollbar.updateSize(),this.scrollbar.setTranslate()},update:function(){this.scrollbar.updateSize()},resize:function(){this.scrollbar.updateSize()},observerUpdate:function(){this.scrollbar.updateSize()},setTranslate:function(){this.scrollbar.setTranslate()},setTransition:function(e){this.scrollbar.setTransition(e)},destroy:function(){this.scrollbar.destroy()}}},{name:"parallax",params:{parallax:{enabled:!1}},create:function(){n.extend(this,{parallax:{setTransform:ne.setTransform.bind(this),setTranslate:ne.setTranslate.bind(this),setTransition:ne.setTransition.bind(this)}})},on:{beforeInit:function(){this.params.parallax.enabled&&(this.params.watchSlidesProgress=!0,this.originalParams.watchSlidesProgress=!0)},init:function(){this.params.parallax.enabled&&this.parallax.setTranslate()},setTranslate:function(){this.params.parallax.enabled&&this.parallax.setTranslate()},setTransition:function(e){this.params.parallax.enabled&&this.parallax.setTransition(e)}}},{name:"zoom",params:{zoom:{enabled:!1,maxRatio:3,minRatio:1,toggle:!0,containerClass:"swiper-zoom-container",zoomedSlideClass:"swiper-slide-zoomed"}},create:function(){var e=this,t={enabled:!1,scale:1,currentScale:1,isScaling:!1,gesture:{$slideEl:void 0,slideWidth:void 0,slideHeight:void 0,$imageEl:void 0,$imageWrapEl:void 0,maxRatio:3},image:{isTouched:void 0,isMoved:void 0,currentX:void 0,currentY:void 0,minX:void 0,minY:void 0,maxX:void 0,maxY:void 0,width:void 0,height:void 0,startX:void 0,startY:void 0,touchesStart:{},touchesCurrent:{}},velocity:{x:void 0,y:void 0,prevPositionX:void 0,prevPositionY:void 0,prevTime:void 0}};"onGestureStart onGestureChange onGestureEnd onTouchStart onTouchMove onTouchEnd onTransitionEnd toggle enable disable in out".split(" ").forEach((function(i){t[i]=oe[i].bind(e)})),n.extend(e,{zoom:t});var i=1;Object.defineProperty(e.zoom,"scale",{get:function(){return i},set:function(t){if(i!==t){var s=e.zoom.gesture.$imageEl?e.zoom.gesture.$imageEl[0]:void 0,a=e.zoom.gesture.$slideEl?e.zoom.gesture.$slideEl[0]:void 0;e.emit("zoomChange",t,s,a)}i=t}})},on:{init:function(){this.params.zoom.enabled&&this.zoom.enable()},destroy:function(){this.zoom.disable()},touchStart:function(e){this.zoom.enabled&&this.zoom.onTouchStart(e)},touchEnd:function(e){this.zoom.enabled&&this.zoom.onTouchEnd(e)},doubleTap:function(e){this.params.zoom.enabled&&this.zoom.enabled&&this.params.zoom.toggle&&this.zoom.toggle(e)},transitionEnd:function(){this.zoom.enabled&&this.params.zoom.enabled&&this.zoom.onTransitionEnd()},slideChange:function(){this.zoom.enabled&&this.params.zoom.enabled&&this.params.cssMode&&this.zoom.onTransitionEnd()}}},{name:"lazy",params:{lazy:{enabled:!1,loadPrevNext:!1,loadPrevNextAmount:1,loadOnTransitionStart:!1,elementClass:"swiper-lazy",loadingClass:"swiper-lazy-loading",loadedClass:"swiper-lazy-loaded",preloaderClass:"swiper-lazy-preloader"}},create:function(){n.extend(this,{lazy:{initialImageLoaded:!1,load:le.load.bind(this),loadInSlide:le.loadInSlide.bind(this)}})},on:{beforeInit:function(){this.params.lazy.enabled&&this.params.preloadImages&&(this.params.preloadImages=!1)},init:function(){this.params.lazy.enabled&&!this.params.loop&&0===this.params.initialSlide&&this.lazy.load()},scroll:function(){this.params.freeMode&&!this.params.freeModeSticky&&this.lazy.load()},resize:function(){this.params.lazy.enabled&&this.lazy.load()},scrollbarDragMove:function(){this.params.lazy.enabled&&this.lazy.load()},transitionStart:function(){this.params.lazy.enabled&&(this.params.lazy.loadOnTransitionStart||!this.params.lazy.loadOnTransitionStart&&!this.lazy.initialImageLoaded)&&this.lazy.load()},transitionEnd:function(){this.params.lazy.enabled&&!this.params.lazy.loadOnTransitionStart&&this.lazy.load()},slideChange:function(){this.params.lazy.enabled&&this.params.cssMode&&this.lazy.load()}}},{name:"controller",params:{controller:{control:void 0,inverse:!1,by:"slide"}},create:function(){n.extend(this,{controller:{control:this.params.controller.control,getInterpolateFunction:de.getInterpolateFunction.bind(this),setTranslate:de.setTranslate.bind(this),setTransition:de.setTransition.bind(this)}})},on:{update:function(){this.controller.control&&this.controller.spline&&(this.controller.spline=void 0,delete this.controller.spline)},resize:function(){this.controller.control&&this.controller.spline&&(this.controller.spline=void 0,delete this.controller.spline)},observerUpdate:function(){this.controller.control&&this.controller.spline&&(this.controller.spline=void 0,delete this.controller.spline)},setTranslate:function(e,t){this.controller.control&&this.controller.setTranslate(e,t)},setTransition:function(e,t){this.controller.control&&this.controller.setTransition(e,t)}}},{name:"a11y",params:{a11y:{enabled:!0,notificationClass:"swiper-notification",prevSlideMessage:"Previous slide",nextSlideMessage:"Next slide",firstSlideMessage:"This is the first slide",lastSlideMessage:"This is the last slide",paginationBulletMessage:"Go to slide {{index}}"}},create:function(){var e=this;n.extend(e,{a11y:{liveRegion:s('<span class="'+e.params.a11y.notificationClass+'" aria-live="assertive" aria-atomic="true"></span>')}}),Object.keys(he).forEach((function(t){e.a11y[t]=he[t].bind(e)}))},on:{init:function(){this.params.a11y.enabled&&(this.a11y.init(),this.a11y.updateNavigation())},toEdge:function(){this.params.a11y.enabled&&this.a11y.updateNavigation()},fromEdge:function(){this.params.a11y.enabled&&this.a11y.updateNavigation()},paginationUpdate:function(){this.params.a11y.enabled&&this.a11y.updatePagination()},destroy:function(){this.params.a11y.enabled&&this.a11y.destroy()}}},{name:"history",params:{history:{enabled:!1,replaceState:!1,key:"slides"}},create:function(){n.extend(this,{history:{init:pe.init.bind(this),setHistory:pe.setHistory.bind(this),setHistoryPopState:pe.setHistoryPopState.bind(this),scrollToSlide:pe.scrollToSlide.bind(this),destroy:pe.destroy.bind(this)}})},on:{init:function(){this.params.history.enabled&&this.history.init()},destroy:function(){this.params.history.enabled&&this.history.destroy()},transitionEnd:function(){this.history.initialized&&this.history.setHistory(this.params.history.key,this.activeIndex)},slideChange:function(){this.history.initialized&&this.params.cssMode&&this.history.setHistory(this.params.history.key,this.activeIndex)}}},{name:"hash-navigation",params:{hashNavigation:{enabled:!1,replaceState:!1,watchState:!1}},create:function(){n.extend(this,{hashNavigation:{initialized:!1,init:ce.init.bind(this),destroy:ce.destroy.bind(this),setHash:ce.setHash.bind(this),onHashCange:ce.onHashCange.bind(this)}})},on:{init:function(){this.params.hashNavigation.enabled&&this.hashNavigation.init()},destroy:function(){this.params.hashNavigation.enabled&&this.hashNavigation.destroy()},transitionEnd:function(){this.hashNavigation.initialized&&this.hashNavigation.setHash()},slideChange:function(){this.hashNavigation.initialized&&this.params.cssMode&&this.hashNavigation.setHash()}}},{name:"autoplay",params:{autoplay:{enabled:!1,delay:3e3,waitForTransition:!0,disableOnInteraction:!0,stopOnLastSlide:!1,reverseDirection:!1}},create:function(){var e=this;n.extend(e,{autoplay:{running:!1,paused:!1,run:ue.run.bind(e),start:ue.start.bind(e),stop:ue.stop.bind(e),pause:ue.pause.bind(e),onVisibilityChange:function(){"hidden"===document.visibilityState&&e.autoplay.running&&e.autoplay.pause(),"visible"===document.visibilityState&&e.autoplay.paused&&(e.autoplay.run(),e.autoplay.paused=!1)},onTransitionEnd:function(t){e&&!e.destroyed&&e.$wrapperEl&&t.target===this&&(e.$wrapperEl[0].removeEventListener("transitionend",e.autoplay.onTransitionEnd),e.$wrapperEl[0].removeEventListener("webkitTransitionEnd",e.autoplay.onTransitionEnd),e.autoplay.paused=!1,e.autoplay.running?e.autoplay.run():e.autoplay.stop())}}})},on:{init:function(){this.params.autoplay.enabled&&(this.autoplay.start(),document.addEventListener("visibilitychange",this.autoplay.onVisibilityChange))},beforeTransitionStart:function(e,t){this.autoplay.running&&(t||!this.params.autoplay.disableOnInteraction?this.autoplay.pause(e):this.autoplay.stop())},sliderFirstMove:function(){this.autoplay.running&&(this.params.autoplay.disableOnInteraction?this.autoplay.stop():this.autoplay.pause())},touchEnd:function(){this.params.cssMode&&this.autoplay.paused&&!this.params.autoplay.disableOnInteraction&&this.autoplay.run()},destroy:function(){this.autoplay.running&&this.autoplay.stop(),document.removeEventListener("visibilitychange",this.autoplay.onVisibilityChange)}}},{name:"effect-fade",params:{fadeEffect:{crossFade:!1}},create:function(){n.extend(this,{fadeEffect:{setTranslate:ve.setTranslate.bind(this),setTransition:ve.setTransition.bind(this)}})},on:{beforeInit:function(){if("fade"===this.params.effect){this.classNames.push(this.params.containerModifierClass+"fade");var e={slidesPerView:1,slidesPerColumn:1,slidesPerGroup:1,watchSlidesProgress:!0,spaceBetween:0,virtualTranslate:!0};n.extend(this.params,e),n.extend(this.originalParams,e)}},setTranslate:function(){"fade"===this.params.effect&&this.fadeEffect.setTranslate()},setTransition:function(e){"fade"===this.params.effect&&this.fadeEffect.setTransition(e)}}},{name:"effect-cube",params:{cubeEffect:{slideShadows:!0,shadow:!0,shadowOffset:20,shadowScale:.94}},create:function(){n.extend(this,{cubeEffect:{setTranslate:fe.setTranslate.bind(this),setTransition:fe.setTransition.bind(this)}})},on:{beforeInit:function(){if("cube"===this.params.effect){this.classNames.push(this.params.containerModifierClass+"cube"),this.classNames.push(this.params.containerModifierClass+"3d");var e={slidesPerView:1,slidesPerColumn:1,slidesPerGroup:1,watchSlidesProgress:!0,resistanceRatio:0,spaceBetween:0,centeredSlides:!1,virtualTranslate:!0};n.extend(this.params,e),n.extend(this.originalParams,e)}},setTranslate:function(){"cube"===this.params.effect&&this.cubeEffect.setTranslate()},setTransition:function(e){"cube"===this.params.effect&&this.cubeEffect.setTransition(e)}}},{name:"effect-flip",params:{flipEffect:{slideShadows:!0,limitRotation:!0}},create:function(){n.extend(this,{flipEffect:{setTranslate:me.setTranslate.bind(this),setTransition:me.setTransition.bind(this)}})},on:{beforeInit:function(){if("flip"===this.params.effect){this.classNames.push(this.params.containerModifierClass+"flip"),this.classNames.push(this.params.containerModifierClass+"3d");var e={slidesPerView:1,slidesPerColumn:1,slidesPerGroup:1,watchSlidesProgress:!0,spaceBetween:0,virtualTranslate:!0};n.extend(this.params,e),n.extend(this.originalParams,e)}},setTranslate:function(){"flip"===this.params.effect&&this.flipEffect.setTranslate()},setTransition:function(e){"flip"===this.params.effect&&this.flipEffect.setTransition(e)}}},{name:"effect-coverflow",params:{coverflowEffect:{rotate:50,stretch:0,depth:100,modifier:1,slideShadows:!0}},create:function(){n.extend(this,{coverflowEffect:{setTranslate:ge.setTranslate.bind(this),setTransition:ge.setTransition.bind(this)}})},on:{beforeInit:function(){"coverflow"===this.params.effect&&(this.classNames.push(this.params.containerModifierClass+"coverflow"),this.classNames.push(this.params.containerModifierClass+"3d"),this.params.watchSlidesProgress=!0,this.originalParams.watchSlidesProgress=!0)},setTranslate:function(){"coverflow"===this.params.effect&&this.coverflowEffect.setTranslate()},setTransition:function(e){"coverflow"===this.params.effect&&this.coverflowEffect.setTransition(e)}}},{name:"thumbs",params:{thumbs:{multipleActiveThumbs:!0,swiper:null,slideThumbActiveClass:"swiper-slide-thumb-active",thumbsContainerClass:"swiper-container-thumbs"}},create:function(){n.extend(this,{thumbs:{swiper:null,init:be.init.bind(this),update:be.update.bind(this),onThumbClick:be.onThumbClick.bind(this)}})},on:{beforeInit:function(){var e=this.params.thumbs;e&&e.swiper&&(this.thumbs.init(),this.thumbs.update(!0))},slideChange:function(){this.thumbs.swiper&&this.thumbs.update()},update:function(){this.thumbs.swiper&&this.thumbs.update()},resize:function(){this.thumbs.swiper&&this.thumbs.update()},observerUpdate:function(){this.thumbs.swiper&&this.thumbs.update()},setTransition:function(e){var t=this.thumbs.swiper;t&&t.setTransition(e)},beforeDestroy:function(){var e=this.thumbs.swiper;e&&this.thumbs.swiperCreated&&e&&e.destroy()}}}];return void 0===W.use&&(W.use=W.Class.use,W.installModule=W.Class.installModule),W.use(we),W}));
assets/lib/nprogress/nprogress.js000064400000026455151327220410013227 0ustar00/* NProgress, (c) 2013, 2014 Rico Sta. Cruz - http://ricostacruz.com/nprogress
 * @license MIT */

;(function(root, factory) {

  if (typeof define === 'function' && define.amd) {
    define(factory);
  } else if (typeof exports === 'object') {
    module.exports = factory();
  } else {
    root.NProgress = factory();
  }

})(this, function() {
  var NProgress = {};

  NProgress.version = '0.2.0';

  var Settings = NProgress.settings = {
    minimum: 0.08,
    easing: 'ease',
    positionUsing: '',
    speed: 200,
    trickle: true,
    trickleRate: 0.02,
    trickleSpeed: 800,
    showSpinner: true,
    barSelector: '[role="bar"]',
    spinnerSelector: '[role="spinner"]',
    parent: 'body',
    template: '<div class="bar" role="bar"><div class="peg"></div></div><div class="spinner" role="spinner"><div class="spinner-icon"></div></div>'
  };

  /**
   * Updates configuration.
   *
   *     NProgress.configure({
   *       minimum: 0.1
   *     });
   */
  NProgress.configure = function(options) {
    var key, value;
    for (key in options) {
      value = options[key];
      if (value !== undefined && options.hasOwnProperty(key)) Settings[key] = value;
    }

    return this;
  };

  /**
   * Last number.
   */

  NProgress.status = null;

  /**
   * Sets the progress bar status, where `n` is a number from `0.0` to `1.0`.
   *
   *     NProgress.set(0.4);
   *     NProgress.set(1.0);
   */

  NProgress.set = function(n) {
    var started = NProgress.isStarted();

    n = clamp(n, Settings.minimum, 1);
    NProgress.status = (n === 1 ? null : n);

    var progress = NProgress.render(!started),
        bar      = progress.querySelector(Settings.barSelector),
        speed    = Settings.speed,
        ease     = Settings.easing;

    progress.offsetWidth; /* Repaint */

    queue(function(next) {
      // Set positionUsing if it hasn't already been set
      if (Settings.positionUsing === '') Settings.positionUsing = NProgress.getPositioningCSS();

      // Add transition
      css(bar, barPositionCSS(n, speed, ease));

      if (n === 1) {
        // Fade out
        css(progress, { 
          transition: 'none', 
          opacity: 1 
        });
        progress.offsetWidth; /* Repaint */

        setTimeout(function() {
          css(progress, { 
            transition: 'all ' + speed + 'ms linear', 
            opacity: 0 
          });
          setTimeout(function() {
            NProgress.remove();
            next();
          }, speed);
        }, speed);
      } else {
        setTimeout(next, speed);
      }
    });

    return this;
  };

  NProgress.isStarted = function() {
    return typeof NProgress.status === 'number';
  };

  /**
   * Shows the progress bar.
   * This is the same as setting the status to 0%, except that it doesn't go backwards.
   *
   *     NProgress.start();
   *
   */
  NProgress.start = function() {
    if (!NProgress.status) NProgress.set(0);

    var work = function() {
      setTimeout(function() {
        if (!NProgress.status) return;
        NProgress.trickle();
        work();
      }, Settings.trickleSpeed);
    };

    if (Settings.trickle) work();

    return this;
  };

  /**
   * Hides the progress bar.
   * This is the *sort of* the same as setting the status to 100%, with the
   * difference being `done()` makes some placebo effect of some realistic motion.
   *
   *     NProgress.done();
   *
   * If `true` is passed, it will show the progress bar even if its hidden.
   *
   *     NProgress.done(true);
   */

  NProgress.done = function(force) {
    if (!force && !NProgress.status) return this;

    return NProgress.inc(0.3 + 0.5 * Math.random()).set(1);
  };

  /**
   * Increments by a random amount.
   */

  NProgress.inc = function(amount) {
    var n = NProgress.status;

    if (!n) {
      return NProgress.start();
    } else {
      if (typeof amount !== 'number') {
        amount = (1 - n) * clamp(Math.random() * n, 0.1, 0.95);
      }

      n = clamp(n + amount, 0, 0.994);
      return NProgress.set(n);
    }
  };

  NProgress.trickle = function() {
    return NProgress.inc(Math.random() * Settings.trickleRate);
  };

  /**
   * Waits for all supplied jQuery promises and
   * increases the progress as the promises resolve.
   *
   * @param $promise jQUery Promise
   */
  (function() {
    var initial = 0, current = 0;

    NProgress.promise = function($promise) {
      if (!$promise || $promise.state() === "resolved") {
        return this;
      }

      if (current === 0) {
        NProgress.start();
      }

      initial++;
      current++;

      $promise.always(function() {
        current--;
        if (current === 0) {
            initial = 0;
            NProgress.done();
        } else {
            NProgress.set((initial - current) / initial);
        }
      });

      return this;
    };

  })();

  /**
   * (Internal) renders the progress bar markup based on the `template`
   * setting.
   */

  NProgress.render = function(fromStart) {
    if (NProgress.isRendered()) return document.getElementById('nprogress');

    addClass(document.documentElement, 'nprogress-busy');
    
    var progress = document.createElement('div');
    progress.id = 'nprogress';
    progress.innerHTML = Settings.template;

    var bar      = progress.querySelector(Settings.barSelector),
        perc     = fromStart ? '-100' : toBarPerc(NProgress.status || 0),
        parent   = document.querySelector(Settings.parent),
        spinner;
    
    css(bar, {
      transition: 'all 0 linear',
      transform: 'translate3d(' + perc + '%,0,0)'
    });

    if (!Settings.showSpinner) {
      spinner = progress.querySelector(Settings.spinnerSelector);
      spinner && removeElement(spinner);
    }

    if (parent != document.body) {
      addClass(parent, 'nprogress-custom-parent');
    }

    parent.appendChild(progress);
    return progress;
  };

  /**
   * Removes the element. Opposite of render().
   */

  NProgress.remove = function() {
    removeClass(document.documentElement, 'nprogress-busy');
    removeClass(document.querySelector(Settings.parent), 'nprogress-custom-parent');
    var progress = document.getElementById('nprogress');
    progress && removeElement(progress);
  };

  /**
   * Checks if the progress bar is rendered.
   */

  NProgress.isRendered = function() {
    return !!document.getElementById('nprogress');
  };

  /**
   * Determine which positioning CSS rule to use.
   */

  NProgress.getPositioningCSS = function() {
    // Sniff on document.body.style
    var bodyStyle = document.body.style;

    // Sniff prefixes
    var vendorPrefix = ('WebkitTransform' in bodyStyle) ? 'Webkit' :
                       ('MozTransform' in bodyStyle) ? 'Moz' :
                       ('msTransform' in bodyStyle) ? 'ms' :
                       ('OTransform' in bodyStyle) ? 'O' : '';

    if (vendorPrefix + 'Perspective' in bodyStyle) {
      // Modern browsers with 3D support, e.g. Webkit, IE10
      return 'translate3d';
    } else if (vendorPrefix + 'Transform' in bodyStyle) {
      // Browsers without 3D support, e.g. IE9
      return 'translate';
    } else {
      // Browsers without translate() support, e.g. IE7-8
      return 'margin';
    }
  };

  /**
   * Helpers
   */

  function clamp(n, min, max) {
    if (n < min) return min;
    if (n > max) return max;
    return n;
  }

  /**
   * (Internal) converts a percentage (`0..1`) to a bar translateX
   * percentage (`-100%..0%`).
   */

  function toBarPerc(n) {
    return (-1 + n) * 100;
  }


  /**
   * (Internal) returns the correct CSS for changing the bar's
   * position given an n percentage, and speed and ease from Settings
   */

  function barPositionCSS(n, speed, ease) {
    var barCSS;

    if (Settings.positionUsing === 'translate3d') {
      barCSS = { transform: 'translate3d('+toBarPerc(n)+'%,0,0)' };
    } else if (Settings.positionUsing === 'translate') {
      barCSS = { transform: 'translate('+toBarPerc(n)+'%,0)' };
    } else {
      barCSS = { 'margin-left': toBarPerc(n)+'%' };
    }

    barCSS.transition = 'all '+speed+'ms '+ease;

    return barCSS;
  }

  /**
   * (Internal) Queues a function to be executed.
   */

  var queue = (function() {
    var pending = [];
    
    function next() {
      var fn = pending.shift();
      if (fn) {
        fn(next);
      }
    }

    return function(fn) {
      pending.push(fn);
      if (pending.length == 1) next();
    };
  })();

  /**
   * (Internal) Applies css properties to an element, similar to the jQuery 
   * css method.
   *
   * While this helper does assist with vendor prefixed property names, it 
   * does not perform any manipulation of values prior to setting styles.
   */

  var css = (function() {
    var cssPrefixes = [ 'Webkit', 'O', 'Moz', 'ms' ],
        cssProps    = {};

    function camelCase(string) {
      return string.replace(/^-ms-/, 'ms-').replace(/-([\da-z])/gi, function(match, letter) {
        return letter.toUpperCase();
      });
    }

    function getVendorProp(name) {
      var style = document.body.style;
      if (name in style) return name;

      var i = cssPrefixes.length,
          capName = name.charAt(0).toUpperCase() + name.slice(1),
          vendorName;
      while (i--) {
        vendorName = cssPrefixes[i] + capName;
        if (vendorName in style) return vendorName;
      }

      return name;
    }

    function getStyleProp(name) {
      name = camelCase(name);
      return cssProps[name] || (cssProps[name] = getVendorProp(name));
    }

    function applyCss(element, prop, value) {
      prop = getStyleProp(prop);
      element.style[prop] = value;
    }

    return function(element, properties) {
      var args = arguments,
          prop, 
          value;

      if (args.length == 2) {
        for (prop in properties) {
          value = properties[prop];
          if (value !== undefined && properties.hasOwnProperty(prop)) applyCss(element, prop, value);
        }
      } else {
        applyCss(element, args[1], args[2]);
      }
    }
  })();

  /**
   * (Internal) Determines if an element or space separated list of class names contains a class name.
   */

  function hasClass(element, name) {
    var list = typeof element == 'string' ? element : classList(element);
    return list.indexOf(' ' + name + ' ') >= 0;
  }

  /**
   * (Internal) Adds a class to an element.
   */

  function addClass(element, name) {
    var oldList = classList(element),
        newList = oldList + name;

    if (hasClass(oldList, name)) return; 

    // Trim the opening space.
    element.className = newList.substring(1);
  }

  /**
   * (Internal) Removes a class from an element.
   */

  function removeClass(element, name) {
    var oldList = classList(element),
        newList;

    if (!hasClass(element, name)) return;

    // Replace the class name.
    newList = oldList.replace(' ' + name + ' ', ' ');

    // Trim the opening and closing spaces.
    element.className = newList.substring(1, newList.length - 1);
  }

  /**
   * (Internal) Gets a space separated list of the class names on the element. 
   * The list is wrapped with a single space on each end to facilitate finding 
   * matches within the list.
   */

  function classList(element) {
    return (' ' + (element.className || '') + ' ').replace(/\s+/gi, ' ');
  }

  /**
   * (Internal) Removes an element from the DOM.
   */

  function removeElement(element) {
    element && element.parentNode && element.parentNode.removeChild(element);
  }

  return NProgress;
});

assets/lib/nprogress/nprogress.min.js000064400000013557151327220410014010 0ustar00!function(root,factory){"function"==typeof define&&define.amd?define(factory):"object"==typeof exports?module.exports=factory():root.NProgress=factory()}(this,function(){function clamp(n,min,max){return n<min?min:n>max?max:n}function toBarPerc(n){return 100*(-1+n)}function barPositionCSS(n,speed,ease){var barCSS;return barCSS="translate3d"===Settings.positionUsing?{transform:"translate3d("+toBarPerc(n)+"%,0,0)"}:"translate"===Settings.positionUsing?{transform:"translate("+toBarPerc(n)+"%,0)"}:{"margin-left":toBarPerc(n)+"%"},barCSS.transition="all "+speed+"ms "+ease,barCSS}function hasClass(element,name){var list="string"==typeof element?element:classList(element);return list.indexOf(" "+name+" ")>=0}function addClass(element,name){var oldList=classList(element),newList=oldList+name;hasClass(oldList,name)||(element.className=newList.substring(1))}function removeClass(element,name){var newList,oldList=classList(element);hasClass(element,name)&&(newList=oldList.replace(" "+name+" "," "),element.className=newList.substring(1,newList.length-1))}function classList(element){return(" "+(element.className||"")+" ").replace(/\s+/gi," ")}function removeElement(element){element&&element.parentNode&&element.parentNode.removeChild(element)}var NProgress={};NProgress.version="0.2.0";var Settings=NProgress.settings={minimum:.08,easing:"ease",positionUsing:"",speed:200,trickle:!0,trickleRate:.02,trickleSpeed:800,showSpinner:!0,barSelector:'[role="bar"]',spinnerSelector:'[role="spinner"]',parent:"body",template:'<div class="bar" role="bar"><div class="peg"></div></div><div class="spinner" role="spinner"><div class="spinner-icon"></div></div>'};NProgress.configure=function(options){var key,value;for(key in options)value=options[key],void 0!==value&&options.hasOwnProperty(key)&&(Settings[key]=value);return this},NProgress.status=null,NProgress.set=function(n){var started=NProgress.isStarted();n=clamp(n,Settings.minimum,1),NProgress.status=1===n?null:n;var progress=NProgress.render(!started),bar=progress.querySelector(Settings.barSelector),speed=Settings.speed,ease=Settings.easing;return progress.offsetWidth,queue(function(next){""===Settings.positionUsing&&(Settings.positionUsing=NProgress.getPositioningCSS()),css(bar,barPositionCSS(n,speed,ease)),1===n?(css(progress,{transition:"none",opacity:1}),progress.offsetWidth,setTimeout(function(){css(progress,{transition:"all "+speed+"ms linear",opacity:0}),setTimeout(function(){NProgress.remove(),next()},speed)},speed)):setTimeout(next,speed)}),this},NProgress.isStarted=function(){return"number"==typeof NProgress.status},NProgress.start=function(){NProgress.status||NProgress.set(0);var work=function(){setTimeout(function(){NProgress.status&&(NProgress.trickle(),work())},Settings.trickleSpeed)};return Settings.trickle&&work(),this},NProgress.done=function(force){return force||NProgress.status?NProgress.inc(.3+.5*Math.random()).set(1):this},NProgress.inc=function(amount){var n=NProgress.status;return n?("number"!=typeof amount&&(amount=(1-n)*clamp(Math.random()*n,.1,.95)),n=clamp(n+amount,0,.994),NProgress.set(n)):NProgress.start()},NProgress.trickle=function(){return NProgress.inc(Math.random()*Settings.trickleRate)},function(){var initial=0,current=0;NProgress.promise=function($promise){return $promise&&"resolved"!==$promise.state()?(0===current&&NProgress.start(),initial++,current++,$promise.always(function(){current--,0===current?(initial=0,NProgress.done()):NProgress.set((initial-current)/initial)}),this):this}}(),NProgress.render=function(fromStart){if(NProgress.isRendered())return document.getElementById("nprogress");addClass(document.documentElement,"nprogress-busy");var progress=document.createElement("div");progress.id="nprogress",progress.innerHTML=Settings.template;var spinner,bar=progress.querySelector(Settings.barSelector),perc=fromStart?"-100":toBarPerc(NProgress.status||0),parent=document.querySelector(Settings.parent);return css(bar,{transition:"all 0 linear",transform:"translate3d("+perc+"%,0,0)"}),Settings.showSpinner||(spinner=progress.querySelector(Settings.spinnerSelector),spinner&&removeElement(spinner)),parent!=document.body&&addClass(parent,"nprogress-custom-parent"),parent.appendChild(progress),progress},NProgress.remove=function(){removeClass(document.documentElement,"nprogress-busy"),removeClass(document.querySelector(Settings.parent),"nprogress-custom-parent");var progress=document.getElementById("nprogress");progress&&removeElement(progress)},NProgress.isRendered=function(){return!!document.getElementById("nprogress")},NProgress.getPositioningCSS=function(){var bodyStyle=document.body.style,vendorPrefix="WebkitTransform"in bodyStyle?"Webkit":"MozTransform"in bodyStyle?"Moz":"msTransform"in bodyStyle?"ms":"OTransform"in bodyStyle?"O":"";return vendorPrefix+"Perspective"in bodyStyle?"translate3d":vendorPrefix+"Transform"in bodyStyle?"translate":"margin"};var queue=function(){function next(){var fn=pending.shift();fn&&fn(next)}var pending=[];return function(fn){pending.push(fn),1==pending.length&&next()}}(),css=function(){function camelCase(string){return string.replace(/^-ms-/,"ms-").replace(/-([\da-z])/gi,function(match,letter){return letter.toUpperCase()})}function getVendorProp(name){var style=document.body.style;if(name in style)return name;for(var vendorName,i=cssPrefixes.length,capName=name.charAt(0).toUpperCase()+name.slice(1);i--;)if(vendorName=cssPrefixes[i]+capName,vendorName in style)return vendorName;return name}function getStyleProp(name){return name=camelCase(name),cssProps[name]||(cssProps[name]=getVendorProp(name))}function applyCss(element,prop,value){prop=getStyleProp(prop),element.style[prop]=value}var cssPrefixes=["Webkit","O","Moz","ms"],cssProps={};return function(element,properties){var prop,value,args=arguments;if(2==args.length)for(prop in properties)value=properties[prop],void 0!==value&&properties.hasOwnProperty(prop)&&applyCss(element,prop,value);else applyCss(element,args[1],args[2])}}();return NProgress});assets/lib/e-select2/js/e-select2.full.js000064400000504356151327220410014107 0ustar00/*!
 * Select2 4.0.6-rc.1
 * https://select2.github.io
 *
 * With a fix by Elementor team at line 4329
 *
 * Released under the MIT license
 * https://github.com/select2/select2/blob/master/LICENSE.md
 */
;(function (factory) {
  if (typeof define === 'function' && define.amd) {
    // AMD. Register as an anonymous module.
    define(['jquery'], factory);
  } else if (typeof module === 'object' && module.exports) {
    // Node/CommonJS
    module.exports = function (root, jQuery) {
      if (jQuery === undefined) {
        // require('jQuery') returns a factory that requires window to
        // build a jQuery instance, we normalize how we use modules
        // that require this pattern but the window provided is a noop
        // if it's defined (how jquery works)
        if (typeof window !== 'undefined') {
          jQuery = require('jquery');
        }
        else {
          jQuery = require('jquery')(root);
        }
      }
      factory(jQuery);
      return jQuery;
    };
  } else {
    // Browser globals
    factory(jQuery);
  }
} (function (jQuery) {
  // This is needed so we can catch the AMD loader configuration and use it
  // The inner file should be wrapped (by `banner.start.js`) in a function that
  // returns the AMD loader references.
  var S2 =(function () {
  // Restore the Select2 AMD loader so it can be used
  // Needed mostly in the language files, where the loader is not inserted
  if (jQuery && jQuery.fn && jQuery.fn.select2 && jQuery.fn.select2.amd) {
    var S2 = jQuery.fn.select2.amd;
  }
var S2;(function () { if (!S2 || !S2.requirejs) {
if (!S2) { S2 = {}; } else { require = S2; }
/**
 * @license almond 0.3.3 Copyright jQuery Foundation and other contributors.
 * Released under MIT license, http://github.com/requirejs/almond/LICENSE
 */
//Going sloppy to avoid 'use strict' string cost, but strict practices should
//be followed.
/*global setTimeout: false */

var requirejs, require, define;
(function (undef) {
    var main, req, makeMap, handlers,
        defined = {},
        waiting = {},
        config = {},
        defining = {},
        hasOwn = Object.prototype.hasOwnProperty,
        aps = [].slice,
        jsSuffixRegExp = /\.js$/;

    function hasProp(obj, prop) {
        return hasOwn.call(obj, prop);
    }

    /**
     * Given a relative module name, like ./something, normalize it to
     * a real name that can be mapped to a path.
     * @param {String} name the relative name
     * @param {String} baseName a real name that the name arg is relative
     * to.
     * @returns {String} normalized name
     */
    function normalize(name, baseName) {
        var nameParts, nameSegment, mapValue, foundMap, lastIndex,
            foundI, foundStarMap, starI, i, j, part, normalizedBaseParts,
            baseParts = baseName && baseName.split("/"),
            map = config.map,
            starMap = (map && map['*']) || {};

        //Adjust any relative paths.
        if (name) {
            name = name.split('/');
            lastIndex = name.length - 1;

            // If wanting node ID compatibility, strip .js from end
            // of IDs. Have to do this here, and not in nameToUrl
            // because node allows either .js or non .js to map
            // to same file.
            if (config.nodeIdCompat && jsSuffixRegExp.test(name[lastIndex])) {
                name[lastIndex] = name[lastIndex].replace(jsSuffixRegExp, '');
            }

            // Starts with a '.' so need the baseName
            if (name[0].charAt(0) === '.' && baseParts) {
                //Convert baseName to array, and lop off the last part,
                //so that . matches that 'directory' and not name of the baseName's
                //module. For instance, baseName of 'one/two/three', maps to
                //'one/two/three.js', but we want the directory, 'one/two' for
                //this normalization.
                normalizedBaseParts = baseParts.slice(0, baseParts.length - 1);
                name = normalizedBaseParts.concat(name);
            }

            //start trimDots
            for (i = 0; i < name.length; i++) {
                part = name[i];
                if (part === '.') {
                    name.splice(i, 1);
                    i -= 1;
                } else if (part === '..') {
                    // If at the start, or previous value is still ..,
                    // keep them so that when converted to a path it may
                    // still work when converted to a path, even though
                    // as an ID it is less than ideal. In larger point
                    // releases, may be better to just kick out an error.
                    if (i === 0 || (i === 1 && name[2] === '..') || name[i - 1] === '..') {
                        continue;
                    } else if (i > 0) {
                        name.splice(i - 1, 2);
                        i -= 2;
                    }
                }
            }
            //end trimDots

            name = name.join('/');
        }

        //Apply map config if available.
        if ((baseParts || starMap) && map) {
            nameParts = name.split('/');

            for (i = nameParts.length; i > 0; i -= 1) {
                nameSegment = nameParts.slice(0, i).join("/");

                if (baseParts) {
                    //Find the longest baseName segment match in the config.
                    //So, do joins on the biggest to smallest lengths of baseParts.
                    for (j = baseParts.length; j > 0; j -= 1) {
                        mapValue = map[baseParts.slice(0, j).join('/')];

                        //baseName segment has  config, find if it has one for
                        //this name.
                        if (mapValue) {
                            mapValue = mapValue[nameSegment];
                            if (mapValue) {
                                //Match, update name to the new value.
                                foundMap = mapValue;
                                foundI = i;
                                break;
                            }
                        }
                    }
                }

                if (foundMap) {
                    break;
                }

                //Check for a star map match, but just hold on to it,
                //if there is a shorter segment match later in a matching
                //config, then favor over this star map.
                if (!foundStarMap && starMap && starMap[nameSegment]) {
                    foundStarMap = starMap[nameSegment];
                    starI = i;
                }
            }

            if (!foundMap && foundStarMap) {
                foundMap = foundStarMap;
                foundI = starI;
            }

            if (foundMap) {
                nameParts.splice(0, foundI, foundMap);
                name = nameParts.join('/');
            }
        }

        return name;
    }

    function makeRequire(relName, forceSync) {
        return function () {
            //A version of a require function that passes a moduleName
            //value for items that may need to
            //look up paths relative to the moduleName
            var args = aps.call(arguments, 0);

            //If first arg is not require('string'), and there is only
            //one arg, it is the array form without a callback. Insert
            //a null so that the following concat is correct.
            if (typeof args[0] !== 'string' && args.length === 1) {
                args.push(null);
            }
            return req.apply(undef, args.concat([relName, forceSync]));
        };
    }

    function makeNormalize(relName) {
        return function (name) {
            return normalize(name, relName);
        };
    }

    function makeLoad(depName) {
        return function (value) {
            defined[depName] = value;
        };
    }

    function callDep(name) {
        if (hasProp(waiting, name)) {
            var args = waiting[name];
            delete waiting[name];
            defining[name] = true;
            main.apply(undef, args);
        }

        if (!hasProp(defined, name) && !hasProp(defining, name)) {
            throw new Error('No ' + name);
        }
        return defined[name];
    }

    //Turns a plugin!resource to [plugin, resource]
    //with the plugin being undefined if the name
    //did not have a plugin prefix.
    function splitPrefix(name) {
        var prefix,
            index = name ? name.indexOf('!') : -1;
        if (index > -1) {
            prefix = name.substring(0, index);
            name = name.substring(index + 1, name.length);
        }
        return [prefix, name];
    }

    //Creates a parts array for a relName where first part is plugin ID,
    //second part is resource ID. Assumes relName has already been normalized.
    function makeRelParts(relName) {
        return relName ? splitPrefix(relName) : [];
    }

    /**
     * Makes a name map, normalizing the name, and using a plugin
     * for normalization if necessary. Grabs a ref to plugin
     * too, as an optimization.
     */
    makeMap = function (name, relParts) {
        var plugin,
            parts = splitPrefix(name),
            prefix = parts[0],
            relResourceName = relParts[1];

        name = parts[1];

        if (prefix) {
            prefix = normalize(prefix, relResourceName);
            plugin = callDep(prefix);
        }

        //Normalize according
        if (prefix) {
            if (plugin && plugin.normalize) {
                name = plugin.normalize(name, makeNormalize(relResourceName));
            } else {
                name = normalize(name, relResourceName);
            }
        } else {
            name = normalize(name, relResourceName);
            parts = splitPrefix(name);
            prefix = parts[0];
            name = parts[1];
            if (prefix) {
                plugin = callDep(prefix);
            }
        }

        //Using ridiculous property names for space reasons
        return {
            f: prefix ? prefix + '!' + name : name, //fullName
            n: name,
            pr: prefix,
            p: plugin
        };
    };

    function makeConfig(name) {
        return function () {
            return (config && config.config && config.config[name]) || {};
        };
    }

    handlers = {
        require: function (name) {
            return makeRequire(name);
        },
        exports: function (name) {
            var e = defined[name];
            if (typeof e !== 'undefined') {
                return e;
            } else {
                return (defined[name] = {});
            }
        },
        module: function (name) {
            return {
                id: name,
                uri: '',
                exports: defined[name],
                config: makeConfig(name)
            };
        }
    };

    main = function (name, deps, callback, relName) {
        var cjsModule, depName, ret, map, i, relParts,
            args = [],
            callbackType = typeof callback,
            usingExports;

        //Use name if no relName
        relName = relName || name;
        relParts = makeRelParts(relName);

        //Call the callback to define the module, if necessary.
        if (callbackType === 'undefined' || callbackType === 'function') {
            //Pull out the defined dependencies and pass the ordered
            //values to the callback.
            //Default to [require, exports, module] if no deps
            deps = !deps.length && callback.length ? ['require', 'exports', 'module'] : deps;
            for (i = 0; i < deps.length; i += 1) {
                map = makeMap(deps[i], relParts);
                depName = map.f;

                //Fast path CommonJS standard dependencies.
                if (depName === "require") {
                    args[i] = handlers.require(name);
                } else if (depName === "exports") {
                    //CommonJS module spec 1.1
                    args[i] = handlers.exports(name);
                    usingExports = true;
                } else if (depName === "module") {
                    //CommonJS module spec 1.1
                    cjsModule = args[i] = handlers.module(name);
                } else if (hasProp(defined, depName) ||
                           hasProp(waiting, depName) ||
                           hasProp(defining, depName)) {
                    args[i] = callDep(depName);
                } else if (map.p) {
                    map.p.load(map.n, makeRequire(relName, true), makeLoad(depName), {});
                    args[i] = defined[depName];
                } else {
                    throw new Error(name + ' missing ' + depName);
                }
            }

            ret = callback ? callback.apply(defined[name], args) : undefined;

            if (name) {
                //If setting exports via "module" is in play,
                //favor that over return value and exports. After that,
                //favor a non-undefined return value over exports use.
                if (cjsModule && cjsModule.exports !== undef &&
                        cjsModule.exports !== defined[name]) {
                    defined[name] = cjsModule.exports;
                } else if (ret !== undef || !usingExports) {
                    //Use the return value from the function.
                    defined[name] = ret;
                }
            }
        } else if (name) {
            //May just be an object definition for the module. Only
            //worry about defining if have a module name.
            defined[name] = callback;
        }
    };

    requirejs = require = req = function (deps, callback, relName, forceSync, alt) {
        if (typeof deps === "string") {
            if (handlers[deps]) {
                //callback in this case is really relName
                return handlers[deps](callback);
            }
            //Just return the module wanted. In this scenario, the
            //deps arg is the module name, and second arg (if passed)
            //is just the relName.
            //Normalize module name, if it contains . or ..
            return callDep(makeMap(deps, makeRelParts(callback)).f);
        } else if (!deps.splice) {
            //deps is a config object, not an array.
            config = deps;
            if (config.deps) {
                req(config.deps, config.callback);
            }
            if (!callback) {
                return;
            }

            if (callback.splice) {
                //callback is an array, which means it is a dependency list.
                //Adjust args if there are dependencies
                deps = callback;
                callback = relName;
                relName = null;
            } else {
                deps = undef;
            }
        }

        //Support require(['a'])
        callback = callback || function () {};

        //If relName is a function, it is an errback handler,
        //so remove it.
        if (typeof relName === 'function') {
            relName = forceSync;
            forceSync = alt;
        }

        //Simulate async callback;
        if (forceSync) {
            main(undef, deps, callback, relName);
        } else {
            //Using a non-zero value because of concern for what old browsers
            //do, and latest browsers "upgrade" to 4 if lower value is used:
            //http://www.whatwg.org/specs/web-apps/current-work/multipage/timers.html#dom-windowtimers-settimeout:
            //If want a value immediately, use require('id') instead -- something
            //that works in almond on the global level, but not guaranteed and
            //unlikely to work in other AMD implementations.
            setTimeout(function () {
                main(undef, deps, callback, relName);
            }, 4);
        }

        return req;
    };

    /**
     * Just drops the config on the floor, but returns req in case
     * the config return value is used.
     */
    req.config = function (cfg) {
        return req(cfg);
    };

    /**
     * Expose module registry for debugging and tooling
     */
    requirejs._defined = defined;

    define = function (name, deps, callback) {
        if (typeof name !== 'string') {
            throw new Error('See almond README: incorrect module build, no module name');
        }

        //This module may not have dependencies
        if (!deps.splice) {
            //deps is not an array, so probably means
            //an object literal or factory function for
            //the value. Adjust args.
            callback = deps;
            deps = [];
        }

        if (!hasProp(defined, name) && !hasProp(waiting, name)) {
            waiting[name] = [name, deps, callback];
        }
    };

    define.amd = {
        jQuery: true
    };
}());

S2.requirejs = requirejs;S2.require = require;S2.define = define;
}
}());
S2.define("almond", function(){});

/* global jQuery:false, $:false */
S2.define('jquery',[],function () {
  var _$ = jQuery || $;

  if (_$ == null && console && console.error) {
    console.error(
      'Select2: An instance of jQuery or a jQuery-compatible library was not ' +
      'found. Make sure that you are including jQuery before Select2 on your ' +
      'web page.'
    );
  }

  return _$;
});

S2.define('select2/utils',[
  'jquery'
], function ($) {
  var Utils = {};

  Utils.Extend = function (ChildClass, SuperClass) {
    var __hasProp = {}.hasOwnProperty;

    function BaseConstructor () {
      this.constructor = ChildClass;
    }

    for (var key in SuperClass) {
      if (__hasProp.call(SuperClass, key)) {
        ChildClass[key] = SuperClass[key];
      }
    }

    BaseConstructor.prototype = SuperClass.prototype;
    ChildClass.prototype = new BaseConstructor();
    ChildClass.__super__ = SuperClass.prototype;

    return ChildClass;
  };

  function getMethods (theClass) {
    var proto = theClass.prototype;

    var methods = [];

    for (var methodName in proto) {
      var m = proto[methodName];

      if (typeof m !== 'function') {
        continue;
      }

      if (methodName === 'constructor') {
        continue;
      }

      methods.push(methodName);
    }

    return methods;
  }

  Utils.Decorate = function (SuperClass, DecoratorClass) {
    var decoratedMethods = getMethods(DecoratorClass);
    var superMethods = getMethods(SuperClass);

    function DecoratedClass () {
      var unshift = Array.prototype.unshift;

      var argCount = DecoratorClass.prototype.constructor.length;

      var calledConstructor = SuperClass.prototype.constructor;

      if (argCount > 0) {
        unshift.call(arguments, SuperClass.prototype.constructor);

        calledConstructor = DecoratorClass.prototype.constructor;
      }

      calledConstructor.apply(this, arguments);
    }

    DecoratorClass.displayName = SuperClass.displayName;

    function ctr () {
      this.constructor = DecoratedClass;
    }

    DecoratedClass.prototype = new ctr();

    for (var m = 0; m < superMethods.length; m++) {
      var superMethod = superMethods[m];

      DecoratedClass.prototype[superMethod] =
        SuperClass.prototype[superMethod];
    }

    var calledMethod = function (methodName) {
      // Stub out the original method if it's not decorating an actual method
      var originalMethod = function () {};

      if (methodName in DecoratedClass.prototype) {
        originalMethod = DecoratedClass.prototype[methodName];
      }

      var decoratedMethod = DecoratorClass.prototype[methodName];

      return function () {
        var unshift = Array.prototype.unshift;

        unshift.call(arguments, originalMethod);

        return decoratedMethod.apply(this, arguments);
      };
    };

    for (var d = 0; d < decoratedMethods.length; d++) {
      var decoratedMethod = decoratedMethods[d];

      DecoratedClass.prototype[decoratedMethod] = calledMethod(decoratedMethod);
    }

    return DecoratedClass;
  };

  var Observable = function () {
    this.listeners = {};
  };

  Observable.prototype.on = function (event, callback) {
    this.listeners = this.listeners || {};

    if (event in this.listeners) {
      this.listeners[event].push(callback);
    } else {
      this.listeners[event] = [callback];
    }
  };

  Observable.prototype.trigger = function (event) {
    var slice = Array.prototype.slice;
    var params = slice.call(arguments, 1);

    this.listeners = this.listeners || {};

    // Params should always come in as an array
    if (params == null) {
      params = [];
    }

    // If there are no arguments to the event, use a temporary object
    if (params.length === 0) {
      params.push({});
    }

    // Set the `_type` of the first object to the event
    params[0]._type = event;

    if (event in this.listeners) {
      this.invoke(this.listeners[event], slice.call(arguments, 1));
    }

    if ('*' in this.listeners) {
      this.invoke(this.listeners['*'], arguments);
    }
  };

  Observable.prototype.invoke = function (listeners, params) {
    for (var i = 0, len = listeners.length; i < len; i++) {
      listeners[i].apply(this, params);
    }
  };

  Utils.Observable = Observable;

  Utils.generateChars = function (length) {
    var chars = '';

    for (var i = 0; i < length; i++) {
      var randomChar = Math.floor(Math.random() * 36);
      chars += randomChar.toString(36);
    }

    return chars;
  };

  Utils.bind = function (func, context) {
    return function () {
      func.apply(context, arguments);
    };
  };

  Utils._convertData = function (data) {
    for (var originalKey in data) {
      var keys = originalKey.split('-');

      var dataLevel = data;

      if (keys.length === 1) {
        continue;
      }

      for (var k = 0; k < keys.length; k++) {
        var key = keys[k];

        // Lowercase the first letter
        // By default, dash-separated becomes camelCase
        key = key.substring(0, 1).toLowerCase() + key.substring(1);

        if (!(key in dataLevel)) {
          dataLevel[key] = {};
        }

        if (k == keys.length - 1) {
          dataLevel[key] = data[originalKey];
        }

        dataLevel = dataLevel[key];
      }

      delete data[originalKey];
    }

    return data;
  };

  Utils.hasScroll = function (index, el) {
    // Adapted from the function created by @ShadowScripter
    // and adapted by @BillBarry on the Stack Exchange Code Review website.
    // The original code can be found at
    // http://codereview.stackexchange.com/q/13338
    // and was designed to be used with the Sizzle selector engine.

    var $el = $(el);
    var overflowX = el.style.overflowX;
    var overflowY = el.style.overflowY;

    //Check both x and y declarations
    if (overflowX === overflowY &&
        (overflowY === 'hidden' || overflowY === 'visible')) {
      return false;
    }

    if (overflowX === 'scroll' || overflowY === 'scroll') {
      return true;
    }

    return ($el.innerHeight() < el.scrollHeight ||
      $el.innerWidth() < el.scrollWidth);
  };

  Utils.escapeMarkup = function (markup) {
    var replaceMap = {
      '\\': '&#92;',
      '&': '&amp;',
      '<': '&lt;',
      '>': '&gt;',
      '"': '&quot;',
      '\'': '&#39;',
      '/': '&#47;'
    };

    // Do not try to escape the markup if it's not a string
    if (typeof markup !== 'string') {
      return markup;
    }

    return String(markup).replace(/[&<>"'\/\\]/g, function (match) {
      return replaceMap[match];
    });
  };

  // Append an array of jQuery nodes to a given element.
  Utils.appendMany = function ($element, $nodes) {
    // jQuery 1.7.x does not support $.fn.append() with an array
    // Fall back to a jQuery object collection using $.fn.add()
    if ($.fn.jquery.substr(0, 3) === '1.7') {
      var $jqNodes = $();

      $.map($nodes, function (node) {
        $jqNodes = $jqNodes.add(node);
      });

      $nodes = $jqNodes;
    }

    $element.append($nodes);
  };

  // Cache objects in Utils.__cache instead of $.data (see #4346)
  Utils.__cache = {};

  var id = 0;
  Utils.GetUniqueElementId = function (element) {
    // Get a unique element Id. If element has no id, 
    // creates a new unique number, stores it in the id 
    // attribute and returns the new id. 
    // If an id already exists, it simply returns it.

    var select2Id = element.getAttribute('data-select2-id');
    if (select2Id == null) {
      // If element has id, use it.
      if (element.id) {
        select2Id = element.id;
        element.setAttribute('data-select2-id', select2Id);
      } else {
        element.setAttribute('data-select2-id', ++id);
        select2Id = id.toString();
      }
    }
    return select2Id;
  };

  Utils.StoreData = function (element, name, value) {
    // Stores an item in the cache for a specified element.
    // name is the cache key.    
    var id = Utils.GetUniqueElementId(element);
    if (!Utils.__cache[id]) {
      Utils.__cache[id] = {};
    }

    Utils.__cache[id][name] = value;
  };

  Utils.GetData = function (element, name) {
    // Retrieves a value from the cache by its key (name)
    // name is optional. If no name specified, return 
    // all cache items for the specified element.
    // and for a specified element.
    var id = Utils.GetUniqueElementId(element);
    if (name) {
      if (Utils.__cache[id]) {
        return Utils.__cache[id][name] != null ? 
	      Utils.__cache[id][name]:
	      $(element).data(name); // Fallback to HTML5 data attribs.
      }
      return $(element).data(name); // Fallback to HTML5 data attribs.
    } else {
      return Utils.__cache[id];			   
    }
  };

  Utils.RemoveData = function (element) {
    // Removes all cached items for a specified element.
    var id = Utils.GetUniqueElementId(element);
    if (Utils.__cache[id] != null) {
      delete Utils.__cache[id];
    }
  };

  return Utils;
});

S2.define('select2/results',[
  'jquery',
  './utils'
], function ($, Utils) {
  function Results ($element, options, dataAdapter) {
    this.$element = $element;
    this.data = dataAdapter;
    this.options = options;

    Results.__super__.constructor.call(this);
  }

  Utils.Extend(Results, Utils.Observable);

  Results.prototype.render = function () {
    var $results = $(
      '<ul class="select2-results__options" role="tree"></ul>'
    );

    if (this.options.get('multiple')) {
      $results.attr('aria-multiselectable', 'true');
    }

    this.$results = $results;

    return $results;
  };

  Results.prototype.clear = function () {
    this.$results.empty();
  };

  Results.prototype.displayMessage = function (params) {
    var escapeMarkup = this.options.get('escapeMarkup');

    this.clear();
    this.hideLoading();

    var $message = $(
      '<li role="treeitem" aria-live="assertive"' +
      ' class="select2-results__option"></li>'
    );

    var message = this.options.get('translations').get(params.message);

    $message.append(
      escapeMarkup(
        message(params.args)
      )
    );

    $message[0].className += ' select2-results__message';

    this.$results.append($message);
  };

  Results.prototype.hideMessages = function () {
    this.$results.find('.select2-results__message').remove();
  };

  Results.prototype.append = function (data) {
    this.hideLoading();

    var $options = [];

    if (data.results == null || data.results.length === 0) {
      if (this.$results.children().length === 0) {
        this.trigger('results:message', {
          message: 'noResults'
        });
      }

      return;
    }

    data.results = this.sort(data.results);

    for (var d = 0; d < data.results.length; d++) {
      var item = data.results[d];

      var $option = this.option(item);

      $options.push($option);
    }

    this.$results.append($options);
  };

  Results.prototype.position = function ($results, $dropdown) {
    var $resultsContainer = $dropdown.find('.select2-results');
    $resultsContainer.append($results);
  };

  Results.prototype.sort = function (data) {
    var sorter = this.options.get('sorter');

    return sorter(data);
  };

  Results.prototype.highlightFirstItem = function () {
    var $options = this.$results
      .find('.select2-results__option[aria-selected]');

    var $selected = $options.filter('[aria-selected=true]');

    // Check if there are any selected options
    if ($selected.length > 0) {
      // If there are selected options, highlight the first
      $selected.first().trigger('mouseenter');
    } else {
      // If there are no selected options, highlight the first option
      // in the dropdown
      $options.first().trigger('mouseenter');
    }

    this.ensureHighlightVisible();
  };

  Results.prototype.setClasses = function () {
    var self = this;

    this.data.current(function (selected) {
      var selectedIds = $.map(selected, function (s) {
        return s.id.toString();
      });

      var $options = self.$results
        .find('.select2-results__option[aria-selected]');

      $options.each(function () {
        var $option = $(this);

        var item = Utils.GetData(this, 'data');

        // id needs to be converted to a string when comparing
        var id = '' + item.id;

        if ((item.element != null && item.element.selected) ||
            (item.element == null && $.inArray(id, selectedIds) > -1)) {
          $option.attr('aria-selected', 'true');
        } else {
          $option.attr('aria-selected', 'false');
        }
      });

    });
  };

  Results.prototype.showLoading = function (params) {
    this.hideLoading();

    var loadingMore = this.options.get('translations').get('searching');

    var loading = {
      disabled: true,
      loading: true,
      text: loadingMore(params)
    };
    var $loading = this.option(loading);
    $loading.className += ' loading-results';

    this.$results.prepend($loading);
  };

  Results.prototype.hideLoading = function () {
    this.$results.find('.loading-results').remove();
  };

  Results.prototype.option = function (data) {
    var option = document.createElement('li');
    option.className = 'select2-results__option';

    var attrs = {
      'role': 'treeitem',
      'aria-selected': 'false'
    };

    if (data.disabled) {
      delete attrs['aria-selected'];
      attrs['aria-disabled'] = 'true';
    }

    if (data.id == null) {
      delete attrs['aria-selected'];
    }

    if (data._resultId != null) {
      option.id = data._resultId;
    }

    if (data.title) {
      option.title = data.title;
    }

    if (data.children) {
      attrs.role = 'group';
      attrs['aria-label'] = data.text;
      delete attrs['aria-selected'];
    }

    for (var attr in attrs) {
      var val = attrs[attr];

      option.setAttribute(attr, val);
    }

    if (data.children) {
      var $option = $(option);

      var label = document.createElement('strong');
      label.className = 'select2-results__group';

      var $label = $(label);
      this.template(data, label);

      var $children = [];

      for (var c = 0; c < data.children.length; c++) {
        var child = data.children[c];

        var $child = this.option(child);

        $children.push($child);
      }

      var $childrenContainer = $('<ul></ul>', {
        'class': 'select2-results__options select2-results__options--nested'
      });

      $childrenContainer.append($children);

      $option.append(label);
      $option.append($childrenContainer);
    } else {
      this.template(data, option);
    }

    Utils.StoreData(option, 'data', data);

    return option;
  };

  Results.prototype.bind = function (container, $container) {
    var self = this;

    var id = container.id + '-results';

    this.$results.attr('id', id);

    container.on('results:all', function (params) {
      self.clear();
      self.append(params.data);

      if (container.isOpen()) {
        self.setClasses();
        self.highlightFirstItem();
      }
    });

    container.on('results:append', function (params) {
      self.append(params.data);

      if (container.isOpen()) {
        self.setClasses();
      }
    });

    container.on('query', function (params) {
      self.hideMessages();
      self.showLoading(params);
    });

    container.on('select', function () {
      if (!container.isOpen()) {
        return;
      }

      self.setClasses();
      self.highlightFirstItem();
    });

    container.on('unselect', function () {
      if (!container.isOpen()) {
        return;
      }

      self.setClasses();
      self.highlightFirstItem();
    });

    container.on('open', function () {
      // When the dropdown is open, aria-expended="true"
      self.$results.attr('aria-expanded', 'true');
      self.$results.attr('aria-hidden', 'false');

      self.setClasses();
      self.ensureHighlightVisible();
    });

    container.on('close', function () {
      // When the dropdown is closed, aria-expended="false"
      self.$results.attr('aria-expanded', 'false');
      self.$results.attr('aria-hidden', 'true');
      self.$results.removeAttr('aria-activedescendant');
    });

    container.on('results:toggle', function () {
      var $highlighted = self.getHighlightedResults();

      if ($highlighted.length === 0) {
        return;
      }

      $highlighted.trigger('mouseup');
    });

    container.on('results:select', function () {
      var $highlighted = self.getHighlightedResults();

      if ($highlighted.length === 0) {
        return;
      }

      var data = Utils.GetData($highlighted[0], 'data');

      if ($highlighted.attr('aria-selected') == 'true') {
        self.trigger('close', {});
      } else {
        self.trigger('select', {
          data: data
        });
      }
    });

    container.on('results:previous', function () {
      var $highlighted = self.getHighlightedResults();

      var $options = self.$results.find('[aria-selected]');

      var currentIndex = $options.index($highlighted);

      // If we are already at te top, don't move further
      // If no options, currentIndex will be -1
      if (currentIndex <= 0) {
        return;
      }

      var nextIndex = currentIndex - 1;

      // If none are highlighted, highlight the first
      if ($highlighted.length === 0) {
        nextIndex = 0;
      }

      var $next = $options.eq(nextIndex);

      $next.trigger('mouseenter');

      var currentOffset = self.$results.offset().top;
      var nextTop = $next.offset().top;
      var nextOffset = self.$results.scrollTop() + (nextTop - currentOffset);

      if (nextIndex === 0) {
        self.$results.scrollTop(0);
      } else if (nextTop - currentOffset < 0) {
        self.$results.scrollTop(nextOffset);
      }
    });

    container.on('results:next', function () {
      var $highlighted = self.getHighlightedResults();

      var $options = self.$results.find('[aria-selected]');

      var currentIndex = $options.index($highlighted);

      var nextIndex = currentIndex + 1;

      // If we are at the last option, stay there
      if (nextIndex >= $options.length) {
        return;
      }

      var $next = $options.eq(nextIndex);

      $next.trigger('mouseenter');

      var currentOffset = self.$results.offset().top +
        self.$results.outerHeight(false);
      var nextBottom = $next.offset().top + $next.outerHeight(false);
      var nextOffset = self.$results.scrollTop() + nextBottom - currentOffset;

      if (nextIndex === 0) {
        self.$results.scrollTop(0);
      } else if (nextBottom > currentOffset) {
        self.$results.scrollTop(nextOffset);
      }
    });

    container.on('results:focus', function (params) {
      params.element.addClass('select2-results__option--highlighted');
    });

    container.on('results:message', function (params) {
      self.displayMessage(params);
    });

    if ($.fn.mousewheel) {
      this.$results.on('mousewheel', function (e) {
        var top = self.$results.scrollTop();

        var bottom = self.$results.get(0).scrollHeight - top + e.deltaY;

        var isAtTop = e.deltaY > 0 && top - e.deltaY <= 0;
        var isAtBottom = e.deltaY < 0 && bottom <= self.$results.height();

        if (isAtTop) {
          self.$results.scrollTop(0);

          e.preventDefault();
          e.stopPropagation();
        } else if (isAtBottom) {
          self.$results.scrollTop(
            self.$results.get(0).scrollHeight - self.$results.height()
          );

          e.preventDefault();
          e.stopPropagation();
        }
      });
    }

    this.$results.on('mouseup', '.select2-results__option[aria-selected]',
      function (evt) {
      var $this = $(this);

      var data = Utils.GetData(this, 'data');

      if ($this.attr('aria-selected') === 'true') {
        if (self.options.get('multiple')) {
          self.trigger('unselect', {
            originalEvent: evt,
            data: data
          });
        } else {
          self.trigger('close', {});
        }

        return;
      }

      self.trigger('select', {
        originalEvent: evt,
        data: data
      });
    });

    this.$results.on('mouseenter', '.select2-results__option[aria-selected]',
      function (evt) {
      var data = Utils.GetData(this, 'data');

      self.getHighlightedResults()
          .removeClass('select2-results__option--highlighted');

      self.trigger('results:focus', {
        data: data,
        element: $(this)
      });
    });
  };

  Results.prototype.getHighlightedResults = function () {
    var $highlighted = this.$results
    .find('.select2-results__option--highlighted');

    return $highlighted;
  };

  Results.prototype.destroy = function () {
    this.$results.remove();
  };

  Results.prototype.ensureHighlightVisible = function () {
    var $highlighted = this.getHighlightedResults();

    if ($highlighted.length === 0) {
      return;
    }

    var $options = this.$results.find('[aria-selected]');

    var currentIndex = $options.index($highlighted);

    var currentOffset = this.$results.offset().top;
    var nextTop = $highlighted.offset().top;
    var nextOffset = this.$results.scrollTop() + (nextTop - currentOffset);

    var offsetDelta = nextTop - currentOffset;
    nextOffset -= $highlighted.outerHeight(false) * 2;

    if (currentIndex <= 2) {
      this.$results.scrollTop(0);
    } else if (offsetDelta > this.$results.outerHeight() || offsetDelta < 0) {
      this.$results.scrollTop(nextOffset);
    }
  };

  Results.prototype.template = function (result, container) {
    var template = this.options.get('templateResult');
    var escapeMarkup = this.options.get('escapeMarkup');

    var content = template(result, container);

    if (content == null) {
      container.style.display = 'none';
    } else if (typeof content === 'string') {
      container.innerHTML = escapeMarkup(content);
    } else {
      $(container).append(content);
    }
  };

  return Results;
});

S2.define('select2/keys',[

], function () {
  var KEYS = {
    BACKSPACE: 8,
    TAB: 9,
    ENTER: 13,
    SHIFT: 16,
    CTRL: 17,
    ALT: 18,
    ESC: 27,
    SPACE: 32,
    PAGE_UP: 33,
    PAGE_DOWN: 34,
    END: 35,
    HOME: 36,
    LEFT: 37,
    UP: 38,
    RIGHT: 39,
    DOWN: 40,
    DELETE: 46
  };

  return KEYS;
});

S2.define('select2/selection/base',[
  'jquery',
  '../utils',
  '../keys'
], function ($, Utils, KEYS) {
  function BaseSelection ($element, options) {
    this.$element = $element;
    this.options = options;

    BaseSelection.__super__.constructor.call(this);
  }

  Utils.Extend(BaseSelection, Utils.Observable);

  BaseSelection.prototype.render = function () {
    var $selection = $(
      '<span class="select2-selection" role="combobox" ' +
      ' aria-haspopup="true" aria-expanded="false">' +
      '</span>'
    );

    this._tabindex = 0;

    if (Utils.GetData(this.$element[0], 'old-tabindex') != null) {
      this._tabindex = Utils.GetData(this.$element[0], 'old-tabindex');
    } else if (this.$element.attr('tabindex') != null) {
      this._tabindex = this.$element.attr('tabindex');
    }

    $selection.attr('title', this.$element.attr('title'));
    $selection.attr('tabindex', this._tabindex);

    this.$selection = $selection;

    return $selection;
  };

  BaseSelection.prototype.bind = function (container, $container) {
    var self = this;

    var id = container.id + '-container';
    var resultsId = container.id + '-results';

    this.container = container;

    this.$selection.on('focus', function (evt) {
      self.trigger('focus', evt);
    });

    this.$selection.on('blur', function (evt) {
      self._handleBlur(evt);
    });

    this.$selection.on('keydown', function (evt) {
      self.trigger('keypress', evt);

      if (evt.which === KEYS.SPACE) {
        evt.preventDefault();
      }
    });

    container.on('results:focus', function (params) {
      self.$selection.attr('aria-activedescendant', params.data._resultId);
    });

    container.on('selection:update', function (params) {
      self.update(params.data);
    });

    container.on('open', function () {
      // When the dropdown is open, aria-expanded="true"
      self.$selection.attr('aria-expanded', 'true');
      self.$selection.attr('aria-owns', resultsId);

      self._attachCloseHandler(container);
    });

    container.on('close', function () {
      // When the dropdown is closed, aria-expanded="false"
      self.$selection.attr('aria-expanded', 'false');
      self.$selection.removeAttr('aria-activedescendant');
      self.$selection.removeAttr('aria-owns');

      self.$selection.focus();
      window.setTimeout(function () {
        self.$selection.focus();
      }, 0);

      self._detachCloseHandler(container);
    });

    container.on('enable', function () {
      self.$selection.attr('tabindex', self._tabindex);
    });

    container.on('disable', function () {
      self.$selection.attr('tabindex', '-1');
    });
  };

  BaseSelection.prototype._handleBlur = function (evt) {
    var self = this;

    // This needs to be delayed as the active element is the body when the tab
    // key is pressed, possibly along with others.
    window.setTimeout(function () {
      // Don't trigger `blur` if the focus is still in the selection
      if (
        (document.activeElement == self.$selection[0]) ||
        ($.contains(self.$selection[0], document.activeElement))
      ) {
        return;
      }

      self.trigger('blur', evt);
    }, 1);
  };

  BaseSelection.prototype._attachCloseHandler = function (container) {
    var self = this;

    $(document.body).on('mousedown.select2.' + container.id, function (e) {
      var $target = $(e.target);

      var $select = $target.closest('.select2');

      var $all = $('.select2.select2-container--open');

      $all.each(function () {
        var $this = $(this);

        if (this == $select[0]) {
          return;
        }

        var $element = Utils.GetData(this, 'element');

        $element.select2('close');
      });
    });
  };

  BaseSelection.prototype._detachCloseHandler = function (container) {
    $(document.body).off('mousedown.select2.' + container.id);
  };

  BaseSelection.prototype.position = function ($selection, $container) {
    var $selectionContainer = $container.find('.selection');
    $selectionContainer.append($selection);
  };

  BaseSelection.prototype.destroy = function () {
    this._detachCloseHandler(this.container);
  };

  BaseSelection.prototype.update = function (data) {
    throw new Error('The `update` method must be defined in child classes.');
  };

  return BaseSelection;
});

S2.define('select2/selection/single',[
  'jquery',
  './base',
  '../utils',
  '../keys'
], function ($, BaseSelection, Utils, KEYS) {
  function SingleSelection () {
    SingleSelection.__super__.constructor.apply(this, arguments);
  }

  Utils.Extend(SingleSelection, BaseSelection);

  SingleSelection.prototype.render = function () {
    var $selection = SingleSelection.__super__.render.call(this);

    $selection.addClass('select2-selection--single');

    $selection.html(
      '<span class="select2-selection__rendered"></span>' +
      '<span class="select2-selection__arrow" role="presentation">' +
        '<b role="presentation"></b>' +
      '</span>'
    );

    return $selection;
  };

  SingleSelection.prototype.bind = function (container, $container) {
    var self = this;

    SingleSelection.__super__.bind.apply(this, arguments);

    var id = container.id + '-container';

    this.$selection.find('.select2-selection__rendered')
      .attr('id', id)
      .attr('role', 'textbox')
      .attr('aria-readonly', 'true');
    this.$selection.attr('aria-labelledby', id);

    this.$selection.on('mousedown', function (evt) {
      // Only respond to left clicks
      if (evt.which !== 1) {
        return;
      }

      self.trigger('toggle', {
        originalEvent: evt
      });
    });

    this.$selection.on('focus', function (evt) {
      // User focuses on the container
    });

    this.$selection.on('blur', function (evt) {
      // User exits the container
    });

    container.on('focus', function (evt) {
      if (!container.isOpen()) {
        self.$selection.focus();
      }
    });
  };

  SingleSelection.prototype.clear = function () {
    var $rendered = this.$selection.find('.select2-selection__rendered');
    $rendered.empty();
    $rendered.removeAttr('title'); // clear tooltip on empty
  };

  SingleSelection.prototype.display = function (data, container) {
    var template = this.options.get('templateSelection');
    var escapeMarkup = this.options.get('escapeMarkup');

    return escapeMarkup(template(data, container));
  };

  SingleSelection.prototype.selectionContainer = function () {
    return $('<span></span>');
  };

  SingleSelection.prototype.update = function (data) {
    if (data.length === 0) {
      this.clear();
      return;
    }

    var selection = data[0];

    var $rendered = this.$selection.find('.select2-selection__rendered');
    var formatted = this.display(selection, $rendered);

    $rendered.empty().append(formatted);
    $rendered.attr('title', selection.title || selection.text);
  };

  return SingleSelection;
});

S2.define('select2/selection/multiple',[
  'jquery',
  './base',
  '../utils'
], function ($, BaseSelection, Utils) {
  function MultipleSelection ($element, options) {
    MultipleSelection.__super__.constructor.apply(this, arguments);
  }

  Utils.Extend(MultipleSelection, BaseSelection);

  MultipleSelection.prototype.render = function () {
    var $selection = MultipleSelection.__super__.render.call(this);

    $selection.addClass('select2-selection--multiple');

    $selection.html(
      '<ul class="select2-selection__rendered"></ul>'
    );

    return $selection;
  };

  MultipleSelection.prototype.bind = function (container, $container) {
    var self = this;

    MultipleSelection.__super__.bind.apply(this, arguments);

    this.$selection.on('click', function (evt) {
      self.trigger('toggle', {
        originalEvent: evt
      });
    });

    this.$selection.on(
      'click',
      '.select2-selection__choice__remove',
      function (evt) {
        // Ignore the event if it is disabled
        if (self.options.get('disabled')) {
          return;
        }

        var $remove = $(this);
        var $selection = $remove.parent();

        var data = Utils.GetData($selection[0], 'data');

        self.trigger('unselect', {
          originalEvent: evt,
          data: data
        });
      }
    );
  };

  MultipleSelection.prototype.clear = function () {
    var $rendered = this.$selection.find('.select2-selection__rendered');
    $rendered.empty();
    $rendered.removeAttr('title');
  };

  MultipleSelection.prototype.display = function (data, container) {
    var template = this.options.get('templateSelection');
    var escapeMarkup = this.options.get('escapeMarkup');

    return escapeMarkup(template(data, container));
  };

  MultipleSelection.prototype.selectionContainer = function () {
    var $container = $(
      '<li class="select2-selection__choice">' +
        '<span class="select2-selection__choice__remove" role="presentation">' +
          '&times;' +
        '</span>' +
      '</li>'
    );

    return $container;
  };

  MultipleSelection.prototype.update = function (data) {
    this.clear();

    if (data.length === 0) {
      return;
    }

    var $selections = [];

    for (var d = 0; d < data.length; d++) {
      var selection = data[d];

      var $selection = this.selectionContainer();
      var formatted = this.display(selection, $selection);

      $selection.append(formatted);
      $selection.attr('title', selection.title || selection.text);

      Utils.StoreData($selection[0], 'data', selection);

      $selections.push($selection);
    }

    var $rendered = this.$selection.find('.select2-selection__rendered');

    Utils.appendMany($rendered, $selections);
  };

  return MultipleSelection;
});

S2.define('select2/selection/placeholder',[
  '../utils'
], function (Utils) {
  function Placeholder (decorated, $element, options) {
    this.placeholder = this.normalizePlaceholder(options.get('placeholder'));

    decorated.call(this, $element, options);
  }

  Placeholder.prototype.normalizePlaceholder = function (_, placeholder) {
    if (typeof placeholder === 'string') {
      placeholder = {
        id: '',
        text: placeholder
      };
    }

    return placeholder;
  };

  Placeholder.prototype.createPlaceholder = function (decorated, placeholder) {
    var $placeholder = this.selectionContainer();

    $placeholder.html(this.display(placeholder));
    $placeholder.addClass('select2-selection__placeholder')
                .removeClass('select2-selection__choice');

    return $placeholder;
  };

  Placeholder.prototype.update = function (decorated, data) {
    var singlePlaceholder = (
      data.length == 1 && data[0].id != this.placeholder.id
    );
    var multipleSelections = data.length > 1;

    if (multipleSelections || singlePlaceholder) {
      return decorated.call(this, data);
    }

    this.clear();

    var $placeholder = this.createPlaceholder(this.placeholder);

    this.$selection.find('.select2-selection__rendered').append($placeholder);
  };

  return Placeholder;
});

S2.define('select2/selection/allowClear',[
  'jquery',
  '../keys',
  '../utils'
], function ($, KEYS, Utils) {
  function AllowClear () { }

  AllowClear.prototype.bind = function (decorated, container, $container) {
    var self = this;

    decorated.call(this, container, $container);

    if (this.placeholder == null) {
      if (this.options.get('debug') && window.console && console.error) {
        console.error(
          'Select2: The `allowClear` option should be used in combination ' +
          'with the `placeholder` option.'
        );
      }
    }

    this.$selection.on('mousedown', '.select2-selection__clear',
      function (evt) {
        self._handleClear(evt);
    });

    container.on('keypress', function (evt) {
      self._handleKeyboardClear(evt, container);
    });
  };

  AllowClear.prototype._handleClear = function (_, evt) {
    // Ignore the event if it is disabled
    if (this.options.get('disabled')) {
      return;
    }

    var $clear = this.$selection.find('.select2-selection__clear');

    // Ignore the event if nothing has been selected
    if ($clear.length === 0) {
      return;
    }

    evt.stopPropagation();

    var data = Utils.GetData($clear[0], 'data');

    var previousVal = this.$element.val();
    this.$element.val(this.placeholder.id);

    var unselectData = {
      data: data
    };
    this.trigger('clear', unselectData);
    if (unselectData.prevented) {
      this.$element.val(previousVal);
      return;
    }

    for (var d = 0; d < data.length; d++) {
      unselectData = {
        data: data[d]
      };

      // Trigger the `unselect` event, so people can prevent it from being
      // cleared.
      this.trigger('unselect', unselectData);

      // If the event was prevented, don't clear it out.
      if (unselectData.prevented) {
        this.$element.val(previousVal);
        return;
      }
    }

    this.$element.trigger('change');

    this.trigger('toggle', {});
  };

  AllowClear.prototype._handleKeyboardClear = function (_, evt, container) {
    if (container.isOpen()) {
      return;
    }

    if (evt.which == KEYS.DELETE || evt.which == KEYS.BACKSPACE) {
      this._handleClear(evt);
    }
  };

  AllowClear.prototype.update = function (decorated, data) {
    decorated.call(this, data);

    if (this.$selection.find('.select2-selection__placeholder').length > 0 ||
        data.length === 0) {
      return;
    }

    var $remove = $(
      '<span class="select2-selection__clear">' +
        '&times;' +
      '</span>'
    );
    Utils.StoreData($remove[0], 'data', data);

    this.$selection.find('.select2-selection__rendered').prepend($remove);
  };

  return AllowClear;
});

S2.define('select2/selection/search',[
  'jquery',
  '../utils',
  '../keys'
], function ($, Utils, KEYS) {
  function Search (decorated, $element, options) {
    decorated.call(this, $element, options);
  }

  Search.prototype.render = function (decorated) {
    var $search = $(
      '<li class="select2-search select2-search--inline">' +
        '<input class="select2-search__field" type="search" tabindex="-1"' +
        ' autocomplete="off" autocorrect="off" autocapitalize="none"' +
        ' spellcheck="false" role="textbox" aria-autocomplete="list" />' +
      '</li>'
    );

    this.$searchContainer = $search;
    this.$search = $search.find('input');

    var $rendered = decorated.call(this);

    this._transferTabIndex();

    return $rendered;
  };

  Search.prototype.bind = function (decorated, container, $container) {
    var self = this;

    decorated.call(this, container, $container);

    container.on('open', function () {
      self.$search.trigger('focus');
    });

    container.on('close', function () {
      self.$search.val('');
      self.$search.removeAttr('aria-activedescendant');
      self.$search.trigger('focus');
    });

    container.on('enable', function () {
      self.$search.prop('disabled', false);

      self._transferTabIndex();
    });

    container.on('disable', function () {
      self.$search.prop('disabled', true);
    });

    container.on('focus', function (evt) {
      self.$search.trigger('focus');
    });

    container.on('results:focus', function (params) {
      self.$search.attr('aria-activedescendant', params.id);
    });

    this.$selection.on('focusin', '.select2-search--inline', function (evt) {
      self.trigger('focus', evt);
    });

    this.$selection.on('focusout', '.select2-search--inline', function (evt) {
      self._handleBlur(evt);
    });

    this.$selection.on('keydown', '.select2-search--inline', function (evt) {
      evt.stopPropagation();

      self.trigger('keypress', evt);

      self._keyUpPrevented = evt.isDefaultPrevented();

      var key = evt.which;

      if (key === KEYS.BACKSPACE && self.$search.val() === '') {
        var $previousChoice = self.$searchContainer
          .prev('.select2-selection__choice');

        if ($previousChoice.length > 0) {
          var item = Utils.GetData($previousChoice[0], 'data');

          self.searchRemoveChoice(item);

          evt.preventDefault();
        }
      }
    });

    // Try to detect the IE version should the `documentMode` property that
    // is stored on the document. This is only implemented in IE and is
    // slightly cleaner than doing a user agent check.
    // This property is not available in Edge, but Edge also doesn't have
    // this bug.
    var msie = document.documentMode;
    var disableInputEvents = msie && msie <= 11;

    // Workaround for browsers which do not support the `input` event
    // This will prevent double-triggering of events for browsers which support
    // both the `keyup` and `input` events.
    this.$selection.on(
      'input.searchcheck',
      '.select2-search--inline',
      function (evt) {
        // IE will trigger the `input` event when a placeholder is used on a
        // search box. To get around this issue, we are forced to ignore all
        // `input` events in IE and keep using `keyup`.
        if (disableInputEvents) {
          self.$selection.off('input.search input.searchcheck');
          return;
        }

        // Unbind the duplicated `keyup` event
        self.$selection.off('keyup.search');
      }
    );

    this.$selection.on(
      'keyup.search input.search',
      '.select2-search--inline',
      function (evt) {
        // IE will trigger the `input` event when a placeholder is used on a
        // search box. To get around this issue, we are forced to ignore all
        // `input` events in IE and keep using `keyup`.
        if (disableInputEvents && evt.type === 'input') {
          self.$selection.off('input.search input.searchcheck');
          return;
        }

        var key = evt.which;

        // We can freely ignore events from modifier keys
        if (key == KEYS.SHIFT || key == KEYS.CTRL || key == KEYS.ALT) {
          return;
        }

        // Tabbing will be handled during the `keydown` phase
        if (key == KEYS.TAB) {
          return;
        }

        self.handleSearch(evt);
      }
    );
  };

  /**
   * This method will transfer the tabindex attribute from the rendered
   * selection to the search box. This allows for the search box to be used as
   * the primary focus instead of the selection container.
   *
   * @private
   */
  Search.prototype._transferTabIndex = function (decorated) {
    this.$search.attr('tabindex', this.$selection.attr('tabindex'));
    this.$selection.attr('tabindex', '-1');
  };

  Search.prototype.createPlaceholder = function (decorated, placeholder) {
    this.$search.attr('placeholder', placeholder.text);
  };

  Search.prototype.update = function (decorated, data) {
    var searchHadFocus = this.$search[0] == document.activeElement;

    this.$search.attr('placeholder', '');

    decorated.call(this, data);

    this.$selection.find('.select2-selection__rendered')
                   .append(this.$searchContainer);

    this.resizeSearch();
    if (searchHadFocus) {
      var isTagInput = this.$element.find('[data-select2-tag]').length;
      if (isTagInput) {
        // fix IE11 bug where tag input lost focus
        this.$element.focus();
      } else {
        this.$search.focus();
      }
    }
  };

  Search.prototype.handleSearch = function () {
    this.resizeSearch();

    if (!this._keyUpPrevented) {
      var input = this.$search.val();

      this.trigger('query', {
        term: input
      });
    }

    this._keyUpPrevented = false;
  };

  Search.prototype.searchRemoveChoice = function (decorated, item) {
    this.trigger('unselect', {
      data: item
    });

    this.$search.val(item.text);
    this.handleSearch();
  };

  Search.prototype.resizeSearch = function () {
    this.$search.css('width', '25px');

    var width = '';

    if (this.$search.attr('placeholder') !== '') {
      width = this.$selection.find('.select2-selection__rendered').innerWidth();
    } else {
      var minimumWidth = this.$search.val().length + 1;

      width = (minimumWidth * 0.75) + 'em';
    }

    this.$search.css('width', width);
  };

  return Search;
});

S2.define('select2/selection/eventRelay',[
  'jquery'
], function ($) {
  function EventRelay () { }

  EventRelay.prototype.bind = function (decorated, container, $container) {
    var self = this;
    var relayEvents = [
      'open', 'opening',
      'close', 'closing',
      'select', 'selecting',
      'unselect', 'unselecting',
      'clear', 'clearing'
    ];

    var preventableEvents = [
      'opening', 'closing', 'selecting', 'unselecting', 'clearing'
    ];

    decorated.call(this, container, $container);

    container.on('*', function (name, params) {
      // Ignore events that should not be relayed
      if ($.inArray(name, relayEvents) === -1) {
        return;
      }

      // The parameters should always be an object
      params = params || {};

      // Generate the jQuery event for the Select2 event
      var evt = $.Event('select2:' + name, {
        params: params
      });

      self.$element.trigger(evt);

      // Only handle preventable events if it was one
      if ($.inArray(name, preventableEvents) === -1) {
        return;
      }

      params.prevented = evt.isDefaultPrevented();
    });
  };

  return EventRelay;
});

S2.define('select2/translation',[
  'jquery',
  'require'
], function ($, require) {
  function Translation (dict) {
    this.dict = dict || {};
  }

  Translation.prototype.all = function () {
    return this.dict;
  };

  Translation.prototype.get = function (key) {
    return this.dict[key];
  };

  Translation.prototype.extend = function (translation) {
    this.dict = $.extend({}, translation.all(), this.dict);
  };

  // Static functions

  Translation._cache = {};

  Translation.loadPath = function (path) {
    if (!(path in Translation._cache)) {
      var translations = require(path);

      Translation._cache[path] = translations;
    }

    return new Translation(Translation._cache[path]);
  };

  return Translation;
});

S2.define('select2/diacritics',[

], function () {
  var diacritics = {
    '\u24B6': 'A',
    '\uFF21': 'A',
    '\u00C0': 'A',
    '\u00C1': 'A',
    '\u00C2': 'A',
    '\u1EA6': 'A',
    '\u1EA4': 'A',
    '\u1EAA': 'A',
    '\u1EA8': 'A',
    '\u00C3': 'A',
    '\u0100': 'A',
    '\u0102': 'A',
    '\u1EB0': 'A',
    '\u1EAE': 'A',
    '\u1EB4': 'A',
    '\u1EB2': 'A',
    '\u0226': 'A',
    '\u01E0': 'A',
    '\u00C4': 'A',
    '\u01DE': 'A',
    '\u1EA2': 'A',
    '\u00C5': 'A',
    '\u01FA': 'A',
    '\u01CD': 'A',
    '\u0200': 'A',
    '\u0202': 'A',
    '\u1EA0': 'A',
    '\u1EAC': 'A',
    '\u1EB6': 'A',
    '\u1E00': 'A',
    '\u0104': 'A',
    '\u023A': 'A',
    '\u2C6F': 'A',
    '\uA732': 'AA',
    '\u00C6': 'AE',
    '\u01FC': 'AE',
    '\u01E2': 'AE',
    '\uA734': 'AO',
    '\uA736': 'AU',
    '\uA738': 'AV',
    '\uA73A': 'AV',
    '\uA73C': 'AY',
    '\u24B7': 'B',
    '\uFF22': 'B',
    '\u1E02': 'B',
    '\u1E04': 'B',
    '\u1E06': 'B',
    '\u0243': 'B',
    '\u0182': 'B',
    '\u0181': 'B',
    '\u24B8': 'C',
    '\uFF23': 'C',
    '\u0106': 'C',
    '\u0108': 'C',
    '\u010A': 'C',
    '\u010C': 'C',
    '\u00C7': 'C',
    '\u1E08': 'C',
    '\u0187': 'C',
    '\u023B': 'C',
    '\uA73E': 'C',
    '\u24B9': 'D',
    '\uFF24': 'D',
    '\u1E0A': 'D',
    '\u010E': 'D',
    '\u1E0C': 'D',
    '\u1E10': 'D',
    '\u1E12': 'D',
    '\u1E0E': 'D',
    '\u0110': 'D',
    '\u018B': 'D',
    '\u018A': 'D',
    '\u0189': 'D',
    '\uA779': 'D',
    '\u01F1': 'DZ',
    '\u01C4': 'DZ',
    '\u01F2': 'Dz',
    '\u01C5': 'Dz',
    '\u24BA': 'E',
    '\uFF25': 'E',
    '\u00C8': 'E',
    '\u00C9': 'E',
    '\u00CA': 'E',
    '\u1EC0': 'E',
    '\u1EBE': 'E',
    '\u1EC4': 'E',
    '\u1EC2': 'E',
    '\u1EBC': 'E',
    '\u0112': 'E',
    '\u1E14': 'E',
    '\u1E16': 'E',
    '\u0114': 'E',
    '\u0116': 'E',
    '\u00CB': 'E',
    '\u1EBA': 'E',
    '\u011A': 'E',
    '\u0204': 'E',
    '\u0206': 'E',
    '\u1EB8': 'E',
    '\u1EC6': 'E',
    '\u0228': 'E',
    '\u1E1C': 'E',
    '\u0118': 'E',
    '\u1E18': 'E',
    '\u1E1A': 'E',
    '\u0190': 'E',
    '\u018E': 'E',
    '\u24BB': 'F',
    '\uFF26': 'F',
    '\u1E1E': 'F',
    '\u0191': 'F',
    '\uA77B': 'F',
    '\u24BC': 'G',
    '\uFF27': 'G',
    '\u01F4': 'G',
    '\u011C': 'G',
    '\u1E20': 'G',
    '\u011E': 'G',
    '\u0120': 'G',
    '\u01E6': 'G',
    '\u0122': 'G',
    '\u01E4': 'G',
    '\u0193': 'G',
    '\uA7A0': 'G',
    '\uA77D': 'G',
    '\uA77E': 'G',
    '\u24BD': 'H',
    '\uFF28': 'H',
    '\u0124': 'H',
    '\u1E22': 'H',
    '\u1E26': 'H',
    '\u021E': 'H',
    '\u1E24': 'H',
    '\u1E28': 'H',
    '\u1E2A': 'H',
    '\u0126': 'H',
    '\u2C67': 'H',
    '\u2C75': 'H',
    '\uA78D': 'H',
    '\u24BE': 'I',
    '\uFF29': 'I',
    '\u00CC': 'I',
    '\u00CD': 'I',
    '\u00CE': 'I',
    '\u0128': 'I',
    '\u012A': 'I',
    '\u012C': 'I',
    '\u0130': 'I',
    '\u00CF': 'I',
    '\u1E2E': 'I',
    '\u1EC8': 'I',
    '\u01CF': 'I',
    '\u0208': 'I',
    '\u020A': 'I',
    '\u1ECA': 'I',
    '\u012E': 'I',
    '\u1E2C': 'I',
    '\u0197': 'I',
    '\u24BF': 'J',
    '\uFF2A': 'J',
    '\u0134': 'J',
    '\u0248': 'J',
    '\u24C0': 'K',
    '\uFF2B': 'K',
    '\u1E30': 'K',
    '\u01E8': 'K',
    '\u1E32': 'K',
    '\u0136': 'K',
    '\u1E34': 'K',
    '\u0198': 'K',
    '\u2C69': 'K',
    '\uA740': 'K',
    '\uA742': 'K',
    '\uA744': 'K',
    '\uA7A2': 'K',
    '\u24C1': 'L',
    '\uFF2C': 'L',
    '\u013F': 'L',
    '\u0139': 'L',
    '\u013D': 'L',
    '\u1E36': 'L',
    '\u1E38': 'L',
    '\u013B': 'L',
    '\u1E3C': 'L',
    '\u1E3A': 'L',
    '\u0141': 'L',
    '\u023D': 'L',
    '\u2C62': 'L',
    '\u2C60': 'L',
    '\uA748': 'L',
    '\uA746': 'L',
    '\uA780': 'L',
    '\u01C7': 'LJ',
    '\u01C8': 'Lj',
    '\u24C2': 'M',
    '\uFF2D': 'M',
    '\u1E3E': 'M',
    '\u1E40': 'M',
    '\u1E42': 'M',
    '\u2C6E': 'M',
    '\u019C': 'M',
    '\u24C3': 'N',
    '\uFF2E': 'N',
    '\u01F8': 'N',
    '\u0143': 'N',
    '\u00D1': 'N',
    '\u1E44': 'N',
    '\u0147': 'N',
    '\u1E46': 'N',
    '\u0145': 'N',
    '\u1E4A': 'N',
    '\u1E48': 'N',
    '\u0220': 'N',
    '\u019D': 'N',
    '\uA790': 'N',
    '\uA7A4': 'N',
    '\u01CA': 'NJ',
    '\u01CB': 'Nj',
    '\u24C4': 'O',
    '\uFF2F': 'O',
    '\u00D2': 'O',
    '\u00D3': 'O',
    '\u00D4': 'O',
    '\u1ED2': 'O',
    '\u1ED0': 'O',
    '\u1ED6': 'O',
    '\u1ED4': 'O',
    '\u00D5': 'O',
    '\u1E4C': 'O',
    '\u022C': 'O',
    '\u1E4E': 'O',
    '\u014C': 'O',
    '\u1E50': 'O',
    '\u1E52': 'O',
    '\u014E': 'O',
    '\u022E': 'O',
    '\u0230': 'O',
    '\u00D6': 'O',
    '\u022A': 'O',
    '\u1ECE': 'O',
    '\u0150': 'O',
    '\u01D1': 'O',
    '\u020C': 'O',
    '\u020E': 'O',
    '\u01A0': 'O',
    '\u1EDC': 'O',
    '\u1EDA': 'O',
    '\u1EE0': 'O',
    '\u1EDE': 'O',
    '\u1EE2': 'O',
    '\u1ECC': 'O',
    '\u1ED8': 'O',
    '\u01EA': 'O',
    '\u01EC': 'O',
    '\u00D8': 'O',
    '\u01FE': 'O',
    '\u0186': 'O',
    '\u019F': 'O',
    '\uA74A': 'O',
    '\uA74C': 'O',
    '\u01A2': 'OI',
    '\uA74E': 'OO',
    '\u0222': 'OU',
    '\u24C5': 'P',
    '\uFF30': 'P',
    '\u1E54': 'P',
    '\u1E56': 'P',
    '\u01A4': 'P',
    '\u2C63': 'P',
    '\uA750': 'P',
    '\uA752': 'P',
    '\uA754': 'P',
    '\u24C6': 'Q',
    '\uFF31': 'Q',
    '\uA756': 'Q',
    '\uA758': 'Q',
    '\u024A': 'Q',
    '\u24C7': 'R',
    '\uFF32': 'R',
    '\u0154': 'R',
    '\u1E58': 'R',
    '\u0158': 'R',
    '\u0210': 'R',
    '\u0212': 'R',
    '\u1E5A': 'R',
    '\u1E5C': 'R',
    '\u0156': 'R',
    '\u1E5E': 'R',
    '\u024C': 'R',
    '\u2C64': 'R',
    '\uA75A': 'R',
    '\uA7A6': 'R',
    '\uA782': 'R',
    '\u24C8': 'S',
    '\uFF33': 'S',
    '\u1E9E': 'S',
    '\u015A': 'S',
    '\u1E64': 'S',
    '\u015C': 'S',
    '\u1E60': 'S',
    '\u0160': 'S',
    '\u1E66': 'S',
    '\u1E62': 'S',
    '\u1E68': 'S',
    '\u0218': 'S',
    '\u015E': 'S',
    '\u2C7E': 'S',
    '\uA7A8': 'S',
    '\uA784': 'S',
    '\u24C9': 'T',
    '\uFF34': 'T',
    '\u1E6A': 'T',
    '\u0164': 'T',
    '\u1E6C': 'T',
    '\u021A': 'T',
    '\u0162': 'T',
    '\u1E70': 'T',
    '\u1E6E': 'T',
    '\u0166': 'T',
    '\u01AC': 'T',
    '\u01AE': 'T',
    '\u023E': 'T',
    '\uA786': 'T',
    '\uA728': 'TZ',
    '\u24CA': 'U',
    '\uFF35': 'U',
    '\u00D9': 'U',
    '\u00DA': 'U',
    '\u00DB': 'U',
    '\u0168': 'U',
    '\u1E78': 'U',
    '\u016A': 'U',
    '\u1E7A': 'U',
    '\u016C': 'U',
    '\u00DC': 'U',
    '\u01DB': 'U',
    '\u01D7': 'U',
    '\u01D5': 'U',
    '\u01D9': 'U',
    '\u1EE6': 'U',
    '\u016E': 'U',
    '\u0170': 'U',
    '\u01D3': 'U',
    '\u0214': 'U',
    '\u0216': 'U',
    '\u01AF': 'U',
    '\u1EEA': 'U',
    '\u1EE8': 'U',
    '\u1EEE': 'U',
    '\u1EEC': 'U',
    '\u1EF0': 'U',
    '\u1EE4': 'U',
    '\u1E72': 'U',
    '\u0172': 'U',
    '\u1E76': 'U',
    '\u1E74': 'U',
    '\u0244': 'U',
    '\u24CB': 'V',
    '\uFF36': 'V',
    '\u1E7C': 'V',
    '\u1E7E': 'V',
    '\u01B2': 'V',
    '\uA75E': 'V',
    '\u0245': 'V',
    '\uA760': 'VY',
    '\u24CC': 'W',
    '\uFF37': 'W',
    '\u1E80': 'W',
    '\u1E82': 'W',
    '\u0174': 'W',
    '\u1E86': 'W',
    '\u1E84': 'W',
    '\u1E88': 'W',
    '\u2C72': 'W',
    '\u24CD': 'X',
    '\uFF38': 'X',
    '\u1E8A': 'X',
    '\u1E8C': 'X',
    '\u24CE': 'Y',
    '\uFF39': 'Y',
    '\u1EF2': 'Y',
    '\u00DD': 'Y',
    '\u0176': 'Y',
    '\u1EF8': 'Y',
    '\u0232': 'Y',
    '\u1E8E': 'Y',
    '\u0178': 'Y',
    '\u1EF6': 'Y',
    '\u1EF4': 'Y',
    '\u01B3': 'Y',
    '\u024E': 'Y',
    '\u1EFE': 'Y',
    '\u24CF': 'Z',
    '\uFF3A': 'Z',
    '\u0179': 'Z',
    '\u1E90': 'Z',
    '\u017B': 'Z',
    '\u017D': 'Z',
    '\u1E92': 'Z',
    '\u1E94': 'Z',
    '\u01B5': 'Z',
    '\u0224': 'Z',
    '\u2C7F': 'Z',
    '\u2C6B': 'Z',
    '\uA762': 'Z',
    '\u24D0': 'a',
    '\uFF41': 'a',
    '\u1E9A': 'a',
    '\u00E0': 'a',
    '\u00E1': 'a',
    '\u00E2': 'a',
    '\u1EA7': 'a',
    '\u1EA5': 'a',
    '\u1EAB': 'a',
    '\u1EA9': 'a',
    '\u00E3': 'a',
    '\u0101': 'a',
    '\u0103': 'a',
    '\u1EB1': 'a',
    '\u1EAF': 'a',
    '\u1EB5': 'a',
    '\u1EB3': 'a',
    '\u0227': 'a',
    '\u01E1': 'a',
    '\u00E4': 'a',
    '\u01DF': 'a',
    '\u1EA3': 'a',
    '\u00E5': 'a',
    '\u01FB': 'a',
    '\u01CE': 'a',
    '\u0201': 'a',
    '\u0203': 'a',
    '\u1EA1': 'a',
    '\u1EAD': 'a',
    '\u1EB7': 'a',
    '\u1E01': 'a',
    '\u0105': 'a',
    '\u2C65': 'a',
    '\u0250': 'a',
    '\uA733': 'aa',
    '\u00E6': 'ae',
    '\u01FD': 'ae',
    '\u01E3': 'ae',
    '\uA735': 'ao',
    '\uA737': 'au',
    '\uA739': 'av',
    '\uA73B': 'av',
    '\uA73D': 'ay',
    '\u24D1': 'b',
    '\uFF42': 'b',
    '\u1E03': 'b',
    '\u1E05': 'b',
    '\u1E07': 'b',
    '\u0180': 'b',
    '\u0183': 'b',
    '\u0253': 'b',
    '\u24D2': 'c',
    '\uFF43': 'c',
    '\u0107': 'c',
    '\u0109': 'c',
    '\u010B': 'c',
    '\u010D': 'c',
    '\u00E7': 'c',
    '\u1E09': 'c',
    '\u0188': 'c',
    '\u023C': 'c',
    '\uA73F': 'c',
    '\u2184': 'c',
    '\u24D3': 'd',
    '\uFF44': 'd',
    '\u1E0B': 'd',
    '\u010F': 'd',
    '\u1E0D': 'd',
    '\u1E11': 'd',
    '\u1E13': 'd',
    '\u1E0F': 'd',
    '\u0111': 'd',
    '\u018C': 'd',
    '\u0256': 'd',
    '\u0257': 'd',
    '\uA77A': 'd',
    '\u01F3': 'dz',
    '\u01C6': 'dz',
    '\u24D4': 'e',
    '\uFF45': 'e',
    '\u00E8': 'e',
    '\u00E9': 'e',
    '\u00EA': 'e',
    '\u1EC1': 'e',
    '\u1EBF': 'e',
    '\u1EC5': 'e',
    '\u1EC3': 'e',
    '\u1EBD': 'e',
    '\u0113': 'e',
    '\u1E15': 'e',
    '\u1E17': 'e',
    '\u0115': 'e',
    '\u0117': 'e',
    '\u00EB': 'e',
    '\u1EBB': 'e',
    '\u011B': 'e',
    '\u0205': 'e',
    '\u0207': 'e',
    '\u1EB9': 'e',
    '\u1EC7': 'e',
    '\u0229': 'e',
    '\u1E1D': 'e',
    '\u0119': 'e',
    '\u1E19': 'e',
    '\u1E1B': 'e',
    '\u0247': 'e',
    '\u025B': 'e',
    '\u01DD': 'e',
    '\u24D5': 'f',
    '\uFF46': 'f',
    '\u1E1F': 'f',
    '\u0192': 'f',
    '\uA77C': 'f',
    '\u24D6': 'g',
    '\uFF47': 'g',
    '\u01F5': 'g',
    '\u011D': 'g',
    '\u1E21': 'g',
    '\u011F': 'g',
    '\u0121': 'g',
    '\u01E7': 'g',
    '\u0123': 'g',
    '\u01E5': 'g',
    '\u0260': 'g',
    '\uA7A1': 'g',
    '\u1D79': 'g',
    '\uA77F': 'g',
    '\u24D7': 'h',
    '\uFF48': 'h',
    '\u0125': 'h',
    '\u1E23': 'h',
    '\u1E27': 'h',
    '\u021F': 'h',
    '\u1E25': 'h',
    '\u1E29': 'h',
    '\u1E2B': 'h',
    '\u1E96': 'h',
    '\u0127': 'h',
    '\u2C68': 'h',
    '\u2C76': 'h',
    '\u0265': 'h',
    '\u0195': 'hv',
    '\u24D8': 'i',
    '\uFF49': 'i',
    '\u00EC': 'i',
    '\u00ED': 'i',
    '\u00EE': 'i',
    '\u0129': 'i',
    '\u012B': 'i',
    '\u012D': 'i',
    '\u00EF': 'i',
    '\u1E2F': 'i',
    '\u1EC9': 'i',
    '\u01D0': 'i',
    '\u0209': 'i',
    '\u020B': 'i',
    '\u1ECB': 'i',
    '\u012F': 'i',
    '\u1E2D': 'i',
    '\u0268': 'i',
    '\u0131': 'i',
    '\u24D9': 'j',
    '\uFF4A': 'j',
    '\u0135': 'j',
    '\u01F0': 'j',
    '\u0249': 'j',
    '\u24DA': 'k',
    '\uFF4B': 'k',
    '\u1E31': 'k',
    '\u01E9': 'k',
    '\u1E33': 'k',
    '\u0137': 'k',
    '\u1E35': 'k',
    '\u0199': 'k',
    '\u2C6A': 'k',
    '\uA741': 'k',
    '\uA743': 'k',
    '\uA745': 'k',
    '\uA7A3': 'k',
    '\u24DB': 'l',
    '\uFF4C': 'l',
    '\u0140': 'l',
    '\u013A': 'l',
    '\u013E': 'l',
    '\u1E37': 'l',
    '\u1E39': 'l',
    '\u013C': 'l',
    '\u1E3D': 'l',
    '\u1E3B': 'l',
    '\u017F': 'l',
    '\u0142': 'l',
    '\u019A': 'l',
    '\u026B': 'l',
    '\u2C61': 'l',
    '\uA749': 'l',
    '\uA781': 'l',
    '\uA747': 'l',
    '\u01C9': 'lj',
    '\u24DC': 'm',
    '\uFF4D': 'm',
    '\u1E3F': 'm',
    '\u1E41': 'm',
    '\u1E43': 'm',
    '\u0271': 'm',
    '\u026F': 'm',
    '\u24DD': 'n',
    '\uFF4E': 'n',
    '\u01F9': 'n',
    '\u0144': 'n',
    '\u00F1': 'n',
    '\u1E45': 'n',
    '\u0148': 'n',
    '\u1E47': 'n',
    '\u0146': 'n',
    '\u1E4B': 'n',
    '\u1E49': 'n',
    '\u019E': 'n',
    '\u0272': 'n',
    '\u0149': 'n',
    '\uA791': 'n',
    '\uA7A5': 'n',
    '\u01CC': 'nj',
    '\u24DE': 'o',
    '\uFF4F': 'o',
    '\u00F2': 'o',
    '\u00F3': 'o',
    '\u00F4': 'o',
    '\u1ED3': 'o',
    '\u1ED1': 'o',
    '\u1ED7': 'o',
    '\u1ED5': 'o',
    '\u00F5': 'o',
    '\u1E4D': 'o',
    '\u022D': 'o',
    '\u1E4F': 'o',
    '\u014D': 'o',
    '\u1E51': 'o',
    '\u1E53': 'o',
    '\u014F': 'o',
    '\u022F': 'o',
    '\u0231': 'o',
    '\u00F6': 'o',
    '\u022B': 'o',
    '\u1ECF': 'o',
    '\u0151': 'o',
    '\u01D2': 'o',
    '\u020D': 'o',
    '\u020F': 'o',
    '\u01A1': 'o',
    '\u1EDD': 'o',
    '\u1EDB': 'o',
    '\u1EE1': 'o',
    '\u1EDF': 'o',
    '\u1EE3': 'o',
    '\u1ECD': 'o',
    '\u1ED9': 'o',
    '\u01EB': 'o',
    '\u01ED': 'o',
    '\u00F8': 'o',
    '\u01FF': 'o',
    '\u0254': 'o',
    '\uA74B': 'o',
    '\uA74D': 'o',
    '\u0275': 'o',
    '\u01A3': 'oi',
    '\u0223': 'ou',
    '\uA74F': 'oo',
    '\u24DF': 'p',
    '\uFF50': 'p',
    '\u1E55': 'p',
    '\u1E57': 'p',
    '\u01A5': 'p',
    '\u1D7D': 'p',
    '\uA751': 'p',
    '\uA753': 'p',
    '\uA755': 'p',
    '\u24E0': 'q',
    '\uFF51': 'q',
    '\u024B': 'q',
    '\uA757': 'q',
    '\uA759': 'q',
    '\u24E1': 'r',
    '\uFF52': 'r',
    '\u0155': 'r',
    '\u1E59': 'r',
    '\u0159': 'r',
    '\u0211': 'r',
    '\u0213': 'r',
    '\u1E5B': 'r',
    '\u1E5D': 'r',
    '\u0157': 'r',
    '\u1E5F': 'r',
    '\u024D': 'r',
    '\u027D': 'r',
    '\uA75B': 'r',
    '\uA7A7': 'r',
    '\uA783': 'r',
    '\u24E2': 's',
    '\uFF53': 's',
    '\u00DF': 's',
    '\u015B': 's',
    '\u1E65': 's',
    '\u015D': 's',
    '\u1E61': 's',
    '\u0161': 's',
    '\u1E67': 's',
    '\u1E63': 's',
    '\u1E69': 's',
    '\u0219': 's',
    '\u015F': 's',
    '\u023F': 's',
    '\uA7A9': 's',
    '\uA785': 's',
    '\u1E9B': 's',
    '\u24E3': 't',
    '\uFF54': 't',
    '\u1E6B': 't',
    '\u1E97': 't',
    '\u0165': 't',
    '\u1E6D': 't',
    '\u021B': 't',
    '\u0163': 't',
    '\u1E71': 't',
    '\u1E6F': 't',
    '\u0167': 't',
    '\u01AD': 't',
    '\u0288': 't',
    '\u2C66': 't',
    '\uA787': 't',
    '\uA729': 'tz',
    '\u24E4': 'u',
    '\uFF55': 'u',
    '\u00F9': 'u',
    '\u00FA': 'u',
    '\u00FB': 'u',
    '\u0169': 'u',
    '\u1E79': 'u',
    '\u016B': 'u',
    '\u1E7B': 'u',
    '\u016D': 'u',
    '\u00FC': 'u',
    '\u01DC': 'u',
    '\u01D8': 'u',
    '\u01D6': 'u',
    '\u01DA': 'u',
    '\u1EE7': 'u',
    '\u016F': 'u',
    '\u0171': 'u',
    '\u01D4': 'u',
    '\u0215': 'u',
    '\u0217': 'u',
    '\u01B0': 'u',
    '\u1EEB': 'u',
    '\u1EE9': 'u',
    '\u1EEF': 'u',
    '\u1EED': 'u',
    '\u1EF1': 'u',
    '\u1EE5': 'u',
    '\u1E73': 'u',
    '\u0173': 'u',
    '\u1E77': 'u',
    '\u1E75': 'u',
    '\u0289': 'u',
    '\u24E5': 'v',
    '\uFF56': 'v',
    '\u1E7D': 'v',
    '\u1E7F': 'v',
    '\u028B': 'v',
    '\uA75F': 'v',
    '\u028C': 'v',
    '\uA761': 'vy',
    '\u24E6': 'w',
    '\uFF57': 'w',
    '\u1E81': 'w',
    '\u1E83': 'w',
    '\u0175': 'w',
    '\u1E87': 'w',
    '\u1E85': 'w',
    '\u1E98': 'w',
    '\u1E89': 'w',
    '\u2C73': 'w',
    '\u24E7': 'x',
    '\uFF58': 'x',
    '\u1E8B': 'x',
    '\u1E8D': 'x',
    '\u24E8': 'y',
    '\uFF59': 'y',
    '\u1EF3': 'y',
    '\u00FD': 'y',
    '\u0177': 'y',
    '\u1EF9': 'y',
    '\u0233': 'y',
    '\u1E8F': 'y',
    '\u00FF': 'y',
    '\u1EF7': 'y',
    '\u1E99': 'y',
    '\u1EF5': 'y',
    '\u01B4': 'y',
    '\u024F': 'y',
    '\u1EFF': 'y',
    '\u24E9': 'z',
    '\uFF5A': 'z',
    '\u017A': 'z',
    '\u1E91': 'z',
    '\u017C': 'z',
    '\u017E': 'z',
    '\u1E93': 'z',
    '\u1E95': 'z',
    '\u01B6': 'z',
    '\u0225': 'z',
    '\u0240': 'z',
    '\u2C6C': 'z',
    '\uA763': 'z',
    '\u0386': '\u0391',
    '\u0388': '\u0395',
    '\u0389': '\u0397',
    '\u038A': '\u0399',
    '\u03AA': '\u0399',
    '\u038C': '\u039F',
    '\u038E': '\u03A5',
    '\u03AB': '\u03A5',
    '\u038F': '\u03A9',
    '\u03AC': '\u03B1',
    '\u03AD': '\u03B5',
    '\u03AE': '\u03B7',
    '\u03AF': '\u03B9',
    '\u03CA': '\u03B9',
    '\u0390': '\u03B9',
    '\u03CC': '\u03BF',
    '\u03CD': '\u03C5',
    '\u03CB': '\u03C5',
    '\u03B0': '\u03C5',
    '\u03C9': '\u03C9',
    '\u03C2': '\u03C3'
  };

  return diacritics;
});

S2.define('select2/data/base',[
  '../utils'
], function (Utils) {
  function BaseAdapter ($element, options) {
    BaseAdapter.__super__.constructor.call(this);
  }

  Utils.Extend(BaseAdapter, Utils.Observable);

  BaseAdapter.prototype.current = function (callback) {
    throw new Error('The `current` method must be defined in child classes.');
  };

  BaseAdapter.prototype.query = function (params, callback) {
    throw new Error('The `query` method must be defined in child classes.');
  };

  BaseAdapter.prototype.bind = function (container, $container) {
    // Can be implemented in subclasses
  };

  BaseAdapter.prototype.destroy = function () {
    // Can be implemented in subclasses
  };

  BaseAdapter.prototype.generateResultId = function (container, data) {
    var id = container.id + '-result-';

    id += Utils.generateChars(4);

    if (data.id != null) {
      id += '-' + data.id.toString();
    } else {
      id += '-' + Utils.generateChars(4);
    }
    return id;
  };

  return BaseAdapter;
});

S2.define('select2/data/select',[
  './base',
  '../utils',
  'jquery'
], function (BaseAdapter, Utils, $) {
  function SelectAdapter ($element, options) {
    this.$element = $element;
    this.options = options;

    SelectAdapter.__super__.constructor.call(this);
  }

  Utils.Extend(SelectAdapter, BaseAdapter);

  SelectAdapter.prototype.current = function (callback) {
    var data = [];
    var self = this;

    this.$element.find(':selected').each(function () {
      var $option = $(this);

      var option = self.item($option);

      data.push(option);
    });

    callback(data);
  };

  SelectAdapter.prototype.select = function (data) {
    var self = this;

    data.selected = true;

    // If data.element is a DOM node, use it instead
    if ($(data.element).is('option')) {
      data.element.selected = true;

      this.$element.trigger('change');

      return;
    }

    if (this.$element.prop('multiple')) {
      this.current(function (currentData) {
        var val = [];

        data = [data];
        data.push.apply(data, currentData);

        for (var d = 0; d < data.length; d++) {
          var id = data[d].id;

          if ($.inArray(id, val) === -1) {
            val.push(id);
          }
        }

        self.$element.val(val);
        self.$element.trigger('change');
      });
    } else {
      var val = data.id;

      this.$element.val(val);
      this.$element.trigger('change');
    }
  };

  SelectAdapter.prototype.unselect = function (data) {
    var self = this;

    if (!this.$element.prop('multiple')) {
      return;
    }

    data.selected = false;

    if ($(data.element).is('option')) {
      data.element.selected = false;

      this.$element.trigger('change');

      return;
    }

    this.current(function (currentData) {
      var val = [];

      for (var d = 0; d < currentData.length; d++) {
        var id = currentData[d].id;

        if (id !== data.id && $.inArray(id, val) === -1) {
          val.push(id);
        }
      }

      self.$element.val(val);

      self.$element.trigger('change');
    });
  };

  SelectAdapter.prototype.bind = function (container, $container) {
    var self = this;

    this.container = container;

    container.on('select', function (params) {
      self.select(params.data);
    });

    container.on('unselect', function (params) {
      self.unselect(params.data);
    });
  };

  SelectAdapter.prototype.destroy = function () {
    // Remove anything added to child elements
    this.$element.find('*').each(function () {
      // Remove any custom data set by Select2
      Utils.RemoveData(this);
    });
  };

  SelectAdapter.prototype.query = function (params, callback) {
    var data = [];
    var self = this;

    var $options = this.$element.children();

    $options.each(function () {
      var $option = $(this);

      if (!$option.is('option') && !$option.is('optgroup')) {
        return;
      }

      var option = self.item($option);

      var matches = self.matches(params, option);

      if (matches !== null) {
        data.push(matches);
      }
    });

    callback({
      results: data
    });
  };

  SelectAdapter.prototype.addOptions = function ($options) {
    Utils.appendMany(this.$element, $options);
  };

  SelectAdapter.prototype.option = function (data) {
    var option;

    if (data.children) {
      option = document.createElement('optgroup');
      option.label = data.text;
    } else {
      option = document.createElement('option');

      if (option.textContent !== undefined) {
        option.textContent = data.text;
      } else {
        option.innerText = data.text;
      }
    }

    if (data.id !== undefined) {
      option.value = data.id;
    }

    if (data.disabled) {
      option.disabled = true;
    }

    if (data.selected) {
      option.selected = true;
    }

    if (data.title) {
      option.title = data.title;
    }

    var $option = $(option);

    var normalizedData = this._normalizeItem(data);
    normalizedData.element = option;

    // Override the option's data with the combined data
    Utils.StoreData(option, 'data', normalizedData);

    return $option;
  };

  SelectAdapter.prototype.item = function ($option) {
    var data = {};

    data = Utils.GetData($option[0], 'data');

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

    if ($option.is('option')) {
      data = {
        id: $option.val(),
        text: $option.text(),
        disabled: $option.prop('disabled'),
        selected: $option.prop('selected'),
        title: $option.prop('title')
      };
    } else if ($option.is('optgroup')) {
      data = {
        text: $option.prop('label'),
        children: [],
        title: $option.prop('title')
      };

      var $children = $option.children('option');
      var children = [];

      for (var c = 0; c < $children.length; c++) {
        var $child = $($children[c]);

        var child = this.item($child);

        children.push(child);
      }

      data.children = children;
    }

    data = this._normalizeItem(data);
    data.element = $option[0];

    Utils.StoreData($option[0], 'data', data);

    return data;
  };

  SelectAdapter.prototype._normalizeItem = function (item) {
    if (item !== Object(item)) {
      item = {
        id: item,
        text: item
      };
    }

    item = $.extend({}, {
      text: ''
    }, item);

    var defaults = {
      selected: false,
      disabled: false
    };

    if (item.id != null) {
      item.id = item.id.toString();
    }

    if (item.text != null) {
      item.text = item.text.toString();
    }

    if (item._resultId == null && item.id && this.container != null) {
      item._resultId = this.generateResultId(this.container, item);
    }

    return $.extend({}, defaults, item);
  };

  SelectAdapter.prototype.matches = function (params, data) {
    var matcher = this.options.get('matcher');

    return matcher(params, data);
  };

  return SelectAdapter;
});

S2.define('select2/data/array',[
  './select',
  '../utils',
  'jquery'
], function (SelectAdapter, Utils, $) {
  function ArrayAdapter ($element, options) {
    var data = options.get('data') || [];

    ArrayAdapter.__super__.constructor.call(this, $element, options);

    this.addOptions(this.convertToOptions(data));
  }

  Utils.Extend(ArrayAdapter, SelectAdapter);

  ArrayAdapter.prototype.select = function (data) {
    var $option = this.$element.find('option').filter(function (i, elm) {
      return elm.value == data.id.toString();
    });

    if ($option.length === 0) {
      $option = this.option(data);

      this.addOptions($option);
    }

    ArrayAdapter.__super__.select.call(this, data);
  };

  ArrayAdapter.prototype.convertToOptions = function (data) {
    var self = this;

    var $existing = this.$element.find('option');
    var existingIds = $existing.map(function () {
      return self.item($(this)).id;
    }).get();

    var $options = [];

    // Filter out all items except for the one passed in the argument
    function onlyItem (item) {
      return function () {
        return $(this).val() == item.id;
      };
    }

    for (var d = 0; d < data.length; d++) {
      var item = this._normalizeItem(data[d]);

      // Skip items which were pre-loaded, only merge the data
      if ($.inArray(item.id, existingIds) >= 0) {
        var $existingOption = $existing.filter(onlyItem(item));

        var existingData = this.item($existingOption);
        var newData = $.extend(true, {}, item, existingData);

        var $newOption = this.option(newData);

        $existingOption.replaceWith($newOption);

        continue;
      }

      var $option = this.option(item);

      if (item.children) {
        var $children = this.convertToOptions(item.children);

        Utils.appendMany($option, $children);
      }

      $options.push($option);
    }

    return $options;
  };

  return ArrayAdapter;
});

S2.define('select2/data/ajax',[
  './array',
  '../utils',
  'jquery'
], function (ArrayAdapter, Utils, $) {
  function AjaxAdapter ($element, options) {
    this.ajaxOptions = this._applyDefaults(options.get('ajax'));

    if (this.ajaxOptions.processResults != null) {
      this.processResults = this.ajaxOptions.processResults;
    }

    AjaxAdapter.__super__.constructor.call(this, $element, options);
  }

  Utils.Extend(AjaxAdapter, ArrayAdapter);

  AjaxAdapter.prototype._applyDefaults = function (options) {
    var defaults = {
      data: function (params) {
        return $.extend({}, params, {
          q: params.term
        });
      },
      transport: function (params, success, failure) {
        var $request = $.ajax(params);

        $request.then(success);
        $request.fail(failure);

        return $request;
      }
    };

    return $.extend({}, defaults, options, true);
  };

  AjaxAdapter.prototype.processResults = function (results) {
    return results;
  };

  AjaxAdapter.prototype.query = function (params, callback) {
    var matches = [];
    var self = this;

    if (this._request != null) {
      // JSONP requests cannot always be aborted
      if ($.isFunction(this._request.abort)) {
        this._request.abort();
      }

      this._request = null;
    }

    var options = $.extend({
      type: 'GET'
    }, this.ajaxOptions);

    if (typeof options.url === 'function') {
      options.url = options.url.call(this.$element, params);
    }

    if (typeof options.data === 'function') {
      options.data = options.data.call(this.$element, params);
    }

    function request () {
      var $request = options.transport(options, function (data) {
        var results = self.processResults(data, params);

        if (self.options.get('debug') && window.console && console.error) {
          // Check to make sure that the response included a `results` key.
          if (!results || !results.results || !$.isArray(results.results)) {
            console.error(
              'Select2: The AJAX results did not return an array in the ' +
              '`results` key of the response.'
            );
          }
        }

        callback(results);
      }, function () {
        // Attempt to detect if a request was aborted
        // Only works if the transport exposes a status property
        if ('status' in $request &&
            ($request.status === 0 || $request.status === '0')) {
          return;
        }

        self.trigger('results:message', {
          message: 'errorLoading'
        });
      });

      self._request = $request;
    }

    if (this.ajaxOptions.delay && params.term != null) {
      if (this._queryTimeout) {
        window.clearTimeout(this._queryTimeout);
      }

      this._queryTimeout = window.setTimeout(request, this.ajaxOptions.delay);
    } else {
      request();
    }
  };

  return AjaxAdapter;
});

S2.define('select2/data/tags',[
  'jquery'
], function ($) {
  function Tags (decorated, $element, options) {
    var tags = options.get('tags');

    var createTag = options.get('createTag');

    if (createTag !== undefined) {
      this.createTag = createTag;
    }

    var insertTag = options.get('insertTag');

    if (insertTag !== undefined) {
        this.insertTag = insertTag;
    }

    decorated.call(this, $element, options);

    if ($.isArray(tags)) {
      for (var t = 0; t < tags.length; t++) {
        var tag = tags[t];
        var item = this._normalizeItem(tag);

        var $option = this.option(item);

        this.$element.append($option);
      }
    }
  }

  Tags.prototype.query = function (decorated, params, callback) {
    var self = this;

    this._removeOldTags();

    if (params.term == null || params.page != null) {
      decorated.call(this, params, callback);
      return;
    }

    function wrapper (obj, child) {
      var data = obj.results;

      for (var i = 0; i < data.length; i++) {
        var option = data[i];

        var checkChildren = (
          option.children != null &&
          !wrapper({
            results: option.children
          }, true)
        );

        var optionText = (option.text || '').toUpperCase();
        var paramsTerm = (params.term || '').toUpperCase();

        var checkText = optionText === paramsTerm;

        if (checkText || checkChildren) {
          if (child) {
            return false;
          }

          obj.data = data;
          callback(obj);

          return;
        }
      }

      if (child) {
        return true;
      }

      var tag = self.createTag(params);

      if (tag != null) {
        var $option = self.option(tag);
        $option.attr('data-select2-tag', true);

        self.addOptions([$option]);

        self.insertTag(data, tag);
      }

      obj.results = data;

      callback(obj);
    }

    decorated.call(this, params, wrapper);
  };

  Tags.prototype.createTag = function (decorated, params) {
    var term = $.trim(params.term);

    if (term === '') {
      return null;
    }

    return {
      id: term,
      text: term
    };
  };

  Tags.prototype.insertTag = function (_, data, tag) {
    data.unshift(tag);
  };

  Tags.prototype._removeOldTags = function (_) {
    var tag = this._lastTag;

    var $options = this.$element.find('option[data-select2-tag]');

    $options.each(function () {
      if (this.selected) {
        return;
      }

      $(this).remove();
    });
  };

  return Tags;
});

S2.define('select2/data/tokenizer',[
  'jquery'
], function ($) {
  function Tokenizer (decorated, $element, options) {
    var tokenizer = options.get('tokenizer');

    if (tokenizer !== undefined) {
      this.tokenizer = tokenizer;
    }

    decorated.call(this, $element, options);
  }

  Tokenizer.prototype.bind = function (decorated, container, $container) {
    decorated.call(this, container, $container);

    this.$search =  container.dropdown.$search || container.selection.$search ||
      $container.find('.select2-search__field');
  };

  Tokenizer.prototype.query = function (decorated, params, callback) {
    var self = this;

    function createAndSelect (data) {
      // Normalize the data object so we can use it for checks
      var item = self._normalizeItem(data);

      // Check if the data object already exists as a tag
      // Select it if it doesn't
      var $existingOptions = self.$element.find('option').filter(function () {
        return $(this).val() === item.id;
      });

      // If an existing option wasn't found for it, create the option
      if (!$existingOptions.length) {
        var $option = self.option(item);
        $option.attr('data-select2-tag', true);

        self._removeOldTags();
        self.addOptions([$option]);
      }

      // Select the item, now that we know there is an option for it
      select(item);
    }

    function select (data) {
      self.trigger('select', {
        data: data
      });
    }

    params.term = params.term || '';

    var tokenData = this.tokenizer(params, this.options, createAndSelect);

    if (tokenData.term !== params.term) {
      // Replace the search term if we have the search box
      if (this.$search.length) {
        this.$search.val(tokenData.term);
        this.$search.focus();
      }

      params.term = tokenData.term;
    }

    decorated.call(this, params, callback);
  };

  Tokenizer.prototype.tokenizer = function (_, params, options, callback) {
    var separators = options.get('tokenSeparators') || [];
    var term = params.term;
    var i = 0;

    var createTag = this.createTag || function (params) {
      return {
        id: params.term,
        text: params.term
      };
    };

    while (i < term.length) {
      var termChar = term[i];

      if ($.inArray(termChar, separators) === -1) {
        i++;

        continue;
      }

      var part = term.substr(0, i);
      var partParams = $.extend({}, params, {
        term: part
      });

      var data = createTag(partParams);

      if (data == null) {
        i++;
        continue;
      }

      callback(data);

      // Reset the term to not include the tokenized portion
      term = term.substr(i + 1) || '';
      i = 0;
    }

    return {
      term: term
    };
  };

  return Tokenizer;
});

S2.define('select2/data/minimumInputLength',[

], function () {
  function MinimumInputLength (decorated, $e, options) {
    this.minimumInputLength = options.get('minimumInputLength');

    decorated.call(this, $e, options);
  }

  MinimumInputLength.prototype.query = function (decorated, params, callback) {
    params.term = params.term || '';

    if (params.term.length < this.minimumInputLength) {
      this.trigger('results:message', {
        message: 'inputTooShort',
        args: {
          minimum: this.minimumInputLength,
          input: params.term,
          params: params
        }
      });

      return;
    }

    decorated.call(this, params, callback);
  };

  return MinimumInputLength;
});

S2.define('select2/data/maximumInputLength',[

], function () {
  function MaximumInputLength (decorated, $e, options) {
    this.maximumInputLength = options.get('maximumInputLength');

    decorated.call(this, $e, options);
  }

  MaximumInputLength.prototype.query = function (decorated, params, callback) {
    params.term = params.term || '';

    if (this.maximumInputLength > 0 &&
        params.term.length > this.maximumInputLength) {
      this.trigger('results:message', {
        message: 'inputTooLong',
        args: {
          maximum: this.maximumInputLength,
          input: params.term,
          params: params
        }
      });

      return;
    }

    decorated.call(this, params, callback);
  };

  return MaximumInputLength;
});

S2.define('select2/data/maximumSelectionLength',[

], function (){
  function MaximumSelectionLength (decorated, $e, options) {
    this.maximumSelectionLength = options.get('maximumSelectionLength');

    decorated.call(this, $e, options);
  }

  MaximumSelectionLength.prototype.query =
    function (decorated, params, callback) {
      var self = this;

      this.current(function (currentData) {
        var count = currentData != null ? currentData.length : 0;
        if (self.maximumSelectionLength > 0 &&
          count >= self.maximumSelectionLength) {
          self.trigger('results:message', {
            message: 'maximumSelected',
            args: {
              maximum: self.maximumSelectionLength
            }
          });
          return;
        }
        decorated.call(self, params, callback);
      });
  };

  return MaximumSelectionLength;
});

S2.define('select2/dropdown',[
  'jquery',
  './utils'
], function ($, Utils) {
  function Dropdown ($element, options) {
    this.$element = $element;
    this.options = options;

    Dropdown.__super__.constructor.call(this);
  }

  Utils.Extend(Dropdown, Utils.Observable);

  Dropdown.prototype.render = function () {
    var $dropdown = $(
      '<span class="select2-dropdown">' +
        '<span class="select2-results"></span>' +
      '</span>'
    );

    $dropdown.attr('dir', this.options.get('dir'));

    this.$dropdown = $dropdown;

    return $dropdown;
  };

  Dropdown.prototype.bind = function () {
    // Should be implemented in subclasses
  };

  Dropdown.prototype.position = function ($dropdown, $container) {
    // Should be implmented in subclasses
  };

  Dropdown.prototype.destroy = function () {
    // Remove the dropdown from the DOM
    this.$dropdown.remove();
  };

  return Dropdown;
});

S2.define('select2/dropdown/search',[
  'jquery',
  '../utils'
], function ($, Utils) {
  function Search () { }

  Search.prototype.render = function (decorated) {
    var $rendered = decorated.call(this);

    var $search = $(
      '<span class="select2-search select2-search--dropdown">' +
        '<input class="select2-search__field" type="search" tabindex="-1"' +
        ' autocomplete="off" autocorrect="off" autocapitalize="none"' +
        ' spellcheck="false" role="textbox" />' +
      '</span>'
    );

    this.$searchContainer = $search;
    this.$search = $search.find('input');

    $rendered.prepend($search);

    return $rendered;
  };

  Search.prototype.bind = function (decorated, container, $container) {
    var self = this;

    decorated.call(this, container, $container);

    this.$search.on('keydown', function (evt) {
      self.trigger('keypress', evt);

      self._keyUpPrevented = evt.isDefaultPrevented();
    });

    // Workaround for browsers which do not support the `input` event
    // This will prevent double-triggering of events for browsers which support
    // both the `keyup` and `input` events.
    this.$search.on('input', function (evt) {
      // Unbind the duplicated `keyup` event
      $(this).off('keyup');
    });

    this.$search.on('keyup input', function (evt) {
      self.handleSearch(evt);
    });

    container.on('open', function () {
      self.$search.attr('tabindex', 0);

      self.$search.focus();

      window.setTimeout(function () {
        self.$search.focus();
      }, 0);
    });

    container.on('close', function () {
      self.$search.attr('tabindex', -1);

      self.$search.val('');
      self.$search.blur();
    });

    container.on('focus', function () {
      if (!container.isOpen()) {
        self.$search.focus();
      }
    });

    container.on('results:all', function (params) {
      if (params.query.term == null || params.query.term === '') {
        var showSearch = self.showSearch(params);

        if (showSearch) {
          self.$searchContainer.removeClass('select2-search--hide');
        } else {
          self.$searchContainer.addClass('select2-search--hide');
        }
      }
    });
  };

  Search.prototype.handleSearch = function (evt) {
    if (!this._keyUpPrevented) {
      var input = this.$search.val();

      this.trigger('query', {
        term: input
      });
    }

    this._keyUpPrevented = false;
  };

  Search.prototype.showSearch = function (_, params) {
    return true;
  };

  return Search;
});

S2.define('select2/dropdown/hidePlaceholder',[

], function () {
  function HidePlaceholder (decorated, $element, options, dataAdapter) {
    this.placeholder = this.normalizePlaceholder(options.get('placeholder'));

    decorated.call(this, $element, options, dataAdapter);
  }

  HidePlaceholder.prototype.append = function (decorated, data) {
    data.results = this.removePlaceholder(data.results);

    decorated.call(this, data);
  };

  HidePlaceholder.prototype.normalizePlaceholder = function (_, placeholder) {
    if (typeof placeholder === 'string') {
      placeholder = {
        id: '',
        text: placeholder
      };
    }

    return placeholder;
  };

  HidePlaceholder.prototype.removePlaceholder = function (_, data) {
    var modifiedData = data.slice(0);

    for (var d = data.length - 1; d >= 0; d--) {
      var item = data[d];

      if (this.placeholder.id === item.id) {
        modifiedData.splice(d, 1);
      }
    }

    return modifiedData;
  };

  return HidePlaceholder;
});

S2.define('select2/dropdown/infiniteScroll',[
  'jquery'
], function ($) {
  function InfiniteScroll (decorated, $element, options, dataAdapter) {
    this.lastParams = {};

    decorated.call(this, $element, options, dataAdapter);

    this.$loadingMore = this.createLoadingMore();
    this.loading = false;
  }

  InfiniteScroll.prototype.append = function (decorated, data) {
    this.$loadingMore.remove();
    this.loading = false;

    decorated.call(this, data);

    if (this.showLoadingMore(data)) {
      this.$results.append(this.$loadingMore);
    }
  };

  InfiniteScroll.prototype.bind = function (decorated, container, $container) {
    var self = this;

    decorated.call(this, container, $container);

    container.on('query', function (params) {
      self.lastParams = params;
      self.loading = true;
    });

    container.on('query:append', function (params) {
      self.lastParams = params;
      self.loading = true;
    });

    this.$results.on('scroll', function () {
      var isLoadMoreVisible = $.contains(
        document.documentElement,
        self.$loadingMore[0]
      );

      if (self.loading || !isLoadMoreVisible) {
        return;
      }

      var currentOffset = self.$results.offset().top +
        self.$results.outerHeight(false);
      var loadingMoreOffset = self.$loadingMore.offset().top +
        self.$loadingMore.outerHeight(false);

      if (currentOffset + 50 >= loadingMoreOffset) {
        self.loadMore();
      }
    });
  };

  InfiniteScroll.prototype.loadMore = function () {
    this.loading = true;

    var params = $.extend({}, {page: 1}, this.lastParams);

    params.page++;

    this.trigger('query:append', params);
  };

  InfiniteScroll.prototype.showLoadingMore = function (_, data) {
    return data.pagination && data.pagination.more;
  };

  InfiniteScroll.prototype.createLoadingMore = function () {
    var $option = $(
      '<li ' +
      'class="select2-results__option select2-results__option--load-more"' +
      'role="treeitem" aria-disabled="true"></li>'
    );

    var message = this.options.get('translations').get('loadingMore');

    $option.html(message(this.lastParams));

    return $option;
  };

  return InfiniteScroll;
});

S2.define('select2/dropdown/attachBody',[
  'jquery',
  '../utils'
], function ($, Utils) {
  function AttachBody (decorated, $element, options) {
    this.$dropdownParent = options.get('dropdownParent') || $(document.body);

    decorated.call(this, $element, options);
  }

  AttachBody.prototype.bind = function (decorated, container, $container) {
    var self = this;

    var setupResultsEvents = false;

    decorated.call(this, container, $container);

    container.on('open', function () {
      self._showDropdown();
      self._attachPositioningHandler(container);

      if (!setupResultsEvents) {
        setupResultsEvents = true;

        container.on('results:all', function () {
          self._positionDropdown();
          self._resizeDropdown();
        });

        container.on('results:append', function () {
          self._positionDropdown();
          self._resizeDropdown();
        });
      }
    });

    container.on('close', function () {
      self._hideDropdown();
      self._detachPositioningHandler(container);
    });

    this.$dropdownContainer.on('mousedown', function (evt) {
      evt.stopPropagation();
    });
  };

  AttachBody.prototype.destroy = function (decorated) {
    decorated.call(this);

    this.$dropdownContainer.remove();
  };

  AttachBody.prototype.position = function (decorated, $dropdown, $container) {
    // Clone all of the container classes
    $dropdown.attr('class', $container.attr('class'));

    $dropdown.removeClass('select2');
    $dropdown.addClass('select2-container--open');

    $dropdown.css({
      position: 'absolute',
      top: -999999
    });

    this.$container = $container;
  };

  AttachBody.prototype.render = function (decorated) {
    var $container = $('<span></span>');

    var $dropdown = decorated.call(this);
    $container.append($dropdown);

    this.$dropdownContainer = $container;

    return $container;
  };

  AttachBody.prototype._hideDropdown = function (decorated) {
    this.$dropdownContainer.detach();
  };

  AttachBody.prototype._attachPositioningHandler =
      function (decorated, container) {
    var self = this;

    var scrollEvent = 'scroll.select2.' + container.id;
    var resizeEvent = 'resize.select2.' + container.id;
    var orientationEvent = 'orientationchange.select2.' + container.id;

    var $watchers = this.$container.parents().filter(Utils.hasScroll);
    $watchers.each(function () {
      Utils.StoreData(this, 'select2-scroll-position', {
        x: $(this).scrollLeft(),
        y: $(this).scrollTop()
      });
    });

    $watchers.on(scrollEvent, function (ev) {
	    self._positionDropdown();
    });

    $(window).on(scrollEvent + ' ' + resizeEvent + ' ' + orientationEvent,
      function (e) {
      self._positionDropdown();
      self._resizeDropdown();
    });
  };

  AttachBody.prototype._detachPositioningHandler =
      function (decorated, container) {
    var scrollEvent = 'scroll.select2.' + container.id;
    var resizeEvent = 'resize.select2.' + container.id;
    var orientationEvent = 'orientationchange.select2.' + container.id;

    var $watchers = this.$container.parents().filter(Utils.hasScroll);
    $watchers.off(scrollEvent);

    $(window).off(scrollEvent + ' ' + resizeEvent + ' ' + orientationEvent);
  };

  AttachBody.prototype._positionDropdown = function () {
    var $window = $(window);

    var isCurrentlyAbove = this.$dropdown.hasClass('select2-dropdown--above');
    var isCurrentlyBelow = this.$dropdown.hasClass('select2-dropdown--below');

    var newDirection = null;

    var offset = this.$container.offset();

    offset.bottom = offset.top + this.$container.outerHeight(false);

    var container = {
      height: this.$container.outerHeight(false)
    };

    container.top = offset.top;
    container.bottom = offset.top + container.height;

    var dropdown = {
      height: this.$dropdown.outerHeight(false)
    };

    var viewport = {
      top: $window.scrollTop(),
      bottom: $window.scrollTop() + $window.height()
    };

    var enoughRoomAbove = viewport.top < (offset.top - dropdown.height);
    var enoughRoomBelow = viewport.bottom > (offset.bottom + dropdown.height);

    var css = {
      left: offset.left,
      top: container.bottom
    };

    // Determine what the parent element is to use for calciulating the offset
    var $offsetParent = this.$dropdownParent;

    // For statically positoned elements, we need to get the element
    // that is determining the offset
    if ($offsetParent.css('position') === 'static') {
      $offsetParent = $offsetParent.offsetParent();
    }

    var parentOffset = $offsetParent.offset();

    css.top -= parentOffset.top;
    css.left -= parentOffset.left;

    if (!isCurrentlyAbove && !isCurrentlyBelow) {
      newDirection = 'below';
    }

    if (!enoughRoomBelow && enoughRoomAbove && !isCurrentlyAbove) {
      newDirection = 'above';
    } else if (!enoughRoomAbove && enoughRoomBelow && isCurrentlyAbove) {
      newDirection = 'below';
    }

    if (newDirection == 'above' ||
      (isCurrentlyAbove && newDirection !== 'below')) {
      css.top = container.top - parentOffset.top - dropdown.height;
    }

    if (newDirection != null) {
      this.$dropdown
        .removeClass('select2-dropdown--below select2-dropdown--above')
        .addClass('select2-dropdown--' + newDirection);
      this.$container
        .removeClass('select2-container--below select2-container--above')
        .addClass('select2-container--' + newDirection);
    }

    this.$dropdownContainer.css(css);
  };

  AttachBody.prototype._resizeDropdown = function () {
    var css = {
      width: this.$container.outerWidth(false) + 'px'
    };

    if (this.options.get('dropdownAutoWidth')) {
      css.minWidth = css.width;
      css.position = 'relative';
      css.width = 'auto';
    }

    this.$dropdown.css(css);
  };

  AttachBody.prototype._showDropdown = function (decorated) {
    this.$dropdownContainer.appendTo(this.$dropdownParent);

    this._positionDropdown();
    this._resizeDropdown();
  };

  return AttachBody;
});

S2.define('select2/dropdown/minimumResultsForSearch',[

], function () {
  function countResults (data) {
    var count = 0;

    for (var d = 0; d < data.length; d++) {
      var item = data[d];

      if (item.children) {
        count += countResults(item.children);
      } else {
        count++;
      }
    }

    return count;
  }

  function MinimumResultsForSearch (decorated, $element, options, dataAdapter) {
    this.minimumResultsForSearch = options.get('minimumResultsForSearch');

    if (this.minimumResultsForSearch < 0) {
      this.minimumResultsForSearch = Infinity;
    }

    decorated.call(this, $element, options, dataAdapter);
  }

  MinimumResultsForSearch.prototype.showSearch = function (decorated, params) {
    if (countResults(params.data.results) < this.minimumResultsForSearch) {
      return false;
    }

    return decorated.call(this, params);
  };

  return MinimumResultsForSearch;
});

S2.define('select2/dropdown/selectOnClose',[
  '../utils'
], function (Utils) {
  function SelectOnClose () { }

  SelectOnClose.prototype.bind = function (decorated, container, $container) {
    var self = this;

    decorated.call(this, container, $container);

    container.on('close', function (params) {
      self._handleSelectOnClose(params);
    });
  };

  SelectOnClose.prototype._handleSelectOnClose = function (_, params) {
    if (params && params.originalSelect2Event != null) {
      var event = params.originalSelect2Event;

      // Don't select an item if the close event was triggered from a select or
      // unselect event
      if (event._type === 'select' || event._type === 'unselect') {
        return;
      }
    }

    var $highlightedResults = this.getHighlightedResults();

    // Only select highlighted results
    if ($highlightedResults.length < 1) {
      return;
    }

    var data = Utils.GetData($highlightedResults[0], 'data');

    // Don't re-select already selected resulte
    if (
      (data.element != null && data.element.selected) ||
      (data.element == null && data.selected)
    ) {
      return;
    }

    this.trigger('select', {
        data: data
    });
  };

  return SelectOnClose;
});

S2.define('select2/dropdown/closeOnSelect',[

], function () {
  function CloseOnSelect () { }

  CloseOnSelect.prototype.bind = function (decorated, container, $container) {
    var self = this;

    decorated.call(this, container, $container);

    container.on('select', function (evt) {
      self._selectTriggered(evt);
    });

    container.on('unselect', function (evt) {
      self._selectTriggered(evt);
    });
  };

  CloseOnSelect.prototype._selectTriggered = function (_, evt) {
    var originalEvent = evt.originalEvent;

    // Don't close if the control key is being held
    if (originalEvent && originalEvent.ctrlKey) {
      return;
    }

    this.trigger('close', {
      originalEvent: originalEvent,
      originalSelect2Event: evt
    });
  };

  return CloseOnSelect;
});

S2.define('select2/i18n/en',[],function () {
  // English
  return {
    errorLoading: function () {
      return 'The results could not be loaded.';
    },
    inputTooLong: function (args) {
      var overChars = args.input.length - args.maximum;

      var message = 'Please delete ' + overChars + ' character';

      if (overChars != 1) {
        message += 's';
      }

      return message;
    },
    inputTooShort: function (args) {
      var remainingChars = args.minimum - args.input.length;

      var message = 'Please enter ' + remainingChars + ' or more characters';

      return message;
    },
    loadingMore: function () {
      return 'Loading more results…';
    },
    maximumSelected: function (args) {
      var message = 'You can only select ' + args.maximum + ' item';

      if (args.maximum != 1) {
        message += 's';
      }

      return message;
    },
    noResults: function () {
      return 'No results found';
    },
    searching: function () {
      return 'Searching…';
    }
  };
});

S2.define('select2/defaults',[
  'jquery',
  'require',

  './results',

  './selection/single',
  './selection/multiple',
  './selection/placeholder',
  './selection/allowClear',
  './selection/search',
  './selection/eventRelay',

  './utils',
  './translation',
  './diacritics',

  './data/select',
  './data/array',
  './data/ajax',
  './data/tags',
  './data/tokenizer',
  './data/minimumInputLength',
  './data/maximumInputLength',
  './data/maximumSelectionLength',

  './dropdown',
  './dropdown/search',
  './dropdown/hidePlaceholder',
  './dropdown/infiniteScroll',
  './dropdown/attachBody',
  './dropdown/minimumResultsForSearch',
  './dropdown/selectOnClose',
  './dropdown/closeOnSelect',

  './i18n/en'
], function ($, require,

             ResultsList,

             SingleSelection, MultipleSelection, Placeholder, AllowClear,
             SelectionSearch, EventRelay,

             Utils, Translation, DIACRITICS,

             SelectData, ArrayData, AjaxData, Tags, Tokenizer,
             MinimumInputLength, MaximumInputLength, MaximumSelectionLength,

             Dropdown, DropdownSearch, HidePlaceholder, InfiniteScroll,
             AttachBody, MinimumResultsForSearch, SelectOnClose, CloseOnSelect,

             EnglishTranslation) {
  function Defaults () {
    this.reset();
  }

  Defaults.prototype.apply = function (options) {
    options = $.extend(true, {}, this.defaults, options);

    if (options.dataAdapter == null) {
      if (options.ajax != null) {
        options.dataAdapter = AjaxData;
      } else if (options.data != null) {
        options.dataAdapter = ArrayData;
      } else {
        options.dataAdapter = SelectData;
      }

      if (options.minimumInputLength > 0) {
        options.dataAdapter = Utils.Decorate(
          options.dataAdapter,
          MinimumInputLength
        );
      }

      if (options.maximumInputLength > 0) {
        options.dataAdapter = Utils.Decorate(
          options.dataAdapter,
          MaximumInputLength
        );
      }

      if (options.maximumSelectionLength > 0) {
        options.dataAdapter = Utils.Decorate(
          options.dataAdapter,
          MaximumSelectionLength
        );
      }

      if (options.tags) {
        options.dataAdapter = Utils.Decorate(options.dataAdapter, Tags);
      }

      if (options.tokenSeparators != null || options.tokenizer != null) {
        options.dataAdapter = Utils.Decorate(
          options.dataAdapter,
          Tokenizer
        );
      }

      if (options.query != null) {
        var Query = require(options.amdBase + 'compat/query');

        options.dataAdapter = Utils.Decorate(
          options.dataAdapter,
          Query
        );
      }

      if (options.initSelection != null) {
        var InitSelection = require(options.amdBase + 'compat/initSelection');

        options.dataAdapter = Utils.Decorate(
          options.dataAdapter,
          InitSelection
        );
      }
    }

    if (options.resultsAdapter == null) {
      options.resultsAdapter = ResultsList;

      if (options.ajax != null) {
        options.resultsAdapter = Utils.Decorate(
          options.resultsAdapter,
          InfiniteScroll
        );
      }

      if (options.placeholder != null) {
        options.resultsAdapter = Utils.Decorate(
          options.resultsAdapter,
          HidePlaceholder
        );
      }

      if (options.selectOnClose) {
        options.resultsAdapter = Utils.Decorate(
          options.resultsAdapter,
          SelectOnClose
        );
      }
    }

    if (options.dropdownAdapter == null) {
      if (options.multiple) {
        options.dropdownAdapter = Dropdown;
      } else {
        var SearchableDropdown = Utils.Decorate(Dropdown, DropdownSearch);

        options.dropdownAdapter = SearchableDropdown;
      }

      if (options.minimumResultsForSearch !== 0) {
        options.dropdownAdapter = Utils.Decorate(
          options.dropdownAdapter,
          MinimumResultsForSearch
        );
      }

      if (options.closeOnSelect) {
        options.dropdownAdapter = Utils.Decorate(
          options.dropdownAdapter,
          CloseOnSelect
        );
      }

      if (
        options.dropdownCssClass != null ||
        options.dropdownCss != null ||
        options.adaptDropdownCssClass != null
      ) {
        var DropdownCSS = require(options.amdBase + 'compat/dropdownCss');

        options.dropdownAdapter = Utils.Decorate(
          options.dropdownAdapter,
          DropdownCSS
        );
      }

      options.dropdownAdapter = Utils.Decorate(
        options.dropdownAdapter,
        AttachBody
      );
    }

    if (options.selectionAdapter == null) {
      if (options.multiple) {
        options.selectionAdapter = MultipleSelection;
      } else {
        options.selectionAdapter = SingleSelection;
      }

      // Add the placeholder mixin if a placeholder was specified
      if (options.placeholder != null) {
        options.selectionAdapter = Utils.Decorate(
          options.selectionAdapter,
          Placeholder
        );
      }

      if (options.allowClear) {
        options.selectionAdapter = Utils.Decorate(
          options.selectionAdapter,
          AllowClear
        );
      }

      if (options.multiple) {
        options.selectionAdapter = Utils.Decorate(
          options.selectionAdapter,
          SelectionSearch
        );
      }

      if (
        options.containerCssClass != null ||
        options.containerCss != null ||
        options.adaptContainerCssClass != null
      ) {
        var ContainerCSS = require(options.amdBase + 'compat/containerCss');

        options.selectionAdapter = Utils.Decorate(
          options.selectionAdapter,
          ContainerCSS
        );
      }

      options.selectionAdapter = Utils.Decorate(
        options.selectionAdapter,
        EventRelay
      );
    }

    if (typeof options.language === 'string') {
      // Check if the language is specified with a region
      if (options.language.indexOf('-') > 0) {
        // Extract the region information if it is included
        var languageParts = options.language.split('-');
        var baseLanguage = languageParts[0];

        options.language = [options.language, baseLanguage];
      } else {
        options.language = [options.language];
      }
    }

    if ($.isArray(options.language)) {
      var languages = new Translation();
      options.language.push('en');

      var languageNames = options.language;

      for (var l = 0; l < languageNames.length; l++) {
        var name = languageNames[l];
        var language = {};

        try {
          // Try to load it with the original name
          language = Translation.loadPath(name);
        } catch (e) {
          try {
            // If we couldn't load it, check if it wasn't the full path
            name = this.defaults.amdLanguageBase + name;
            language = Translation.loadPath(name);
          } catch (ex) {
            // The translation could not be loaded at all. Sometimes this is
            // because of a configuration problem, other times this can be
            // because of how Select2 helps load all possible translation files.
            if (options.debug && window.console && console.warn) {
              console.warn(
                'Select2: The language file for "' + name + '" could not be ' +
                'automatically loaded. A fallback will be used instead.'
              );
            }

            continue;
          }
        }

        languages.extend(language);
      }

      options.translations = languages;
    } else {
      var baseTranslation = Translation.loadPath(
        this.defaults.amdLanguageBase + 'en'
      );
      var customTranslation = new Translation(options.language);

      customTranslation.extend(baseTranslation);

      options.translations = customTranslation;
    }

    return options;
  };

  Defaults.prototype.reset = function () {
    function stripDiacritics (text) {
      // Used 'uni range + named function' from http://jsperf.com/diacritics/18
      function match(a) {
        return DIACRITICS[a] || a;
      }

      return text.replace(/[^\u0000-\u007E]/g, match);
    }

    function matcher (params, data) {
      // Always return the object if there is nothing to compare
      if ($.trim(params.term) === '') {
        return data;
      }

      // Do a recursive check for options with children
      if (data.children && data.children.length > 0) {
        // Clone the data object if there are children
        // This is required as we modify the object to remove any non-matches
        var match = $.extend(true, {}, data);

        // Check each child of the option
        for (var c = data.children.length - 1; c >= 0; c--) {
          var child = data.children[c];

          var matches = matcher(params, child);

          // If there wasn't a match, remove the object in the array
          if (matches == null) {
            match.children.splice(c, 1);
          }
        }

        // If any children matched, return the new object
        if (match.children.length > 0) {
          return match;
        }

        // If there were no matching children, check just the plain object
        return matcher(params, match);
      }

      var original = stripDiacritics(data.text).toUpperCase();
      var term = stripDiacritics(params.term).toUpperCase();

      // Check if the text contains the term
      if (original.indexOf(term) > -1) {
        return data;
      }

      // If it doesn't contain the term, don't return anything
      return null;
    }

    this.defaults = {
      amdBase: './',
      amdLanguageBase: './i18n/',
      closeOnSelect: true,
      debug: false,
      dropdownAutoWidth: false,
      escapeMarkup: Utils.escapeMarkup,
      language: EnglishTranslation,
      matcher: matcher,
      minimumInputLength: 0,
      maximumInputLength: 0,
      maximumSelectionLength: 0,
      minimumResultsForSearch: 0,
      selectOnClose: false,
      sorter: function (data) {
        return data;
      },
      templateResult: function (result) {
        return result.text;
      },
      templateSelection: function (selection) {
        return selection.text;
      },
      theme: 'default',
      width: 'resolve'
    };
  };

  Defaults.prototype.set = function (key, value) {
    var camelKey = $.camelCase(key);

    var data = {};
    data[camelKey] = value;

    var convertedData = Utils._convertData(data);

    $.extend(true, this.defaults, convertedData);
  };

  var defaults = new Defaults();

  return defaults;
});

S2.define('select2/options',[
  'require',
  'jquery',
  './defaults',
  './utils'
], function (require, $, Defaults, Utils) {
  function Options (options, $element) {
    this.options = options;

    if ($element != null) {
      this.fromElement($element);
    }

    this.options = Defaults.apply(this.options);

    if ($element && $element.is('input')) {
      var InputCompat = require(this.get('amdBase') + 'compat/inputData');

      this.options.dataAdapter = Utils.Decorate(
        this.options.dataAdapter,
        InputCompat
      );
    }
  }

  Options.prototype.fromElement = function ($e) {
    var excludedData = ['select2'];

    if (this.options.multiple == null) {
      this.options.multiple = $e.prop('multiple');
    }

    if (this.options.disabled == null) {
      this.options.disabled = $e.prop('disabled');
    }

    if (this.options.language == null) {
      if ($e.prop('lang')) {
        this.options.language = $e.prop('lang').toLowerCase();
      } else if ($e.closest('[lang]').prop('lang')) {
        this.options.language = $e.closest('[lang]').prop('lang');
      }
    }

    if (this.options.dir == null) {
      if ($e.prop('dir')) {
        this.options.dir = $e.prop('dir');
      } else if ($e.closest('[dir]').prop('dir')) {
        this.options.dir = $e.closest('[dir]').prop('dir');
      } else {
        this.options.dir = 'ltr';
      }
    }

    $e.prop('disabled', this.options.disabled);
    $e.prop('multiple', this.options.multiple);

    if (Utils.GetData($e[0], 'select2Tags')) {
      if (this.options.debug && window.console && console.warn) {
        console.warn(
          'Select2: The `data-select2-tags` attribute has been changed to ' +
          'use the `data-data` and `data-tags="true"` attributes and will be ' +
          'removed in future versions of Select2.'
        );
      }

      Utils.StoreData($e[0], 'data', Utils.GetData($e[0], 'select2Tags'));
      Utils.StoreData($e[0], 'tags', true);
    }

    if (Utils.GetData($e[0], 'ajaxUrl')) {
      if (this.options.debug && window.console && console.warn) {
        console.warn(
          'Select2: The `data-ajax-url` attribute has been changed to ' +
          '`data-ajax--url` and support for the old attribute will be removed' +
          ' in future versions of Select2.'
        );
      }

      $e.attr('ajax--url', Utils.GetData($e[0], 'ajaxUrl'));
      Utils.StoreData($e[0], 'ajax-Url', Utils.GetData($e[0], 'ajaxUrl'));
	  
    }

    var dataset = {};

    // Prefer the element's `dataset` attribute if it exists
    // jQuery 1.x does not correctly handle data attributes with multiple dashes
    if ($.fn.jquery && $.fn.jquery.substr(0, 2) == '1.' && $e[0].dataset) {
      dataset = $.extend(true, {}, $e[0].dataset, Utils.GetData($e[0]));
    } else {
      dataset = Utils.GetData($e[0]);
    }

    var data = $.extend(true, {}, dataset);

    data = Utils._convertData(data);

    for (var key in data) {
      if ($.inArray(key, excludedData) > -1) {
        continue;
      }

      if ($.isPlainObject(this.options[key])) {
        $.extend(this.options[key], data[key]);
      } else {
        this.options[key] = data[key];
      }
    }

    return this;
  };

  Options.prototype.get = function (key) {
    return this.options[key];
  };

  Options.prototype.set = function (key, val) {
    this.options[key] = val;
  };

  return Options;
});

S2.define('select2/core',[
  'jquery',
  './options',
  './utils',
  './keys'
], function ($, Options, Utils, KEYS) {
  var Select2 = function ($element, options) {
    if (Utils.GetData($element[0], 'select2') != null) {
      Utils.GetData($element[0], 'select2').destroy();
    }

    this.$element = $element;

    this.id = this._generateId($element);

    options = options || {};

    this.options = new Options(options, $element);

    Select2.__super__.constructor.call(this);

    // Set up the tabindex

    var tabindex = $element.attr('tabindex') || 0;
    Utils.StoreData($element[0], 'old-tabindex', tabindex);
    $element.attr('tabindex', '-1');

    // Set up containers and adapters

    var DataAdapter = this.options.get('dataAdapter');
    this.dataAdapter = new DataAdapter($element, this.options);

    var $container = this.render();

    this._placeContainer($container);

    var SelectionAdapter = this.options.get('selectionAdapter');
    this.selection = new SelectionAdapter($element, this.options);
    this.$selection = this.selection.render();

    this.selection.position(this.$selection, $container);

    var DropdownAdapter = this.options.get('dropdownAdapter');
    this.dropdown = new DropdownAdapter($element, this.options);
    this.$dropdown = this.dropdown.render();

    this.dropdown.position(this.$dropdown, $container);

    var ResultsAdapter = this.options.get('resultsAdapter');
    this.results = new ResultsAdapter($element, this.options, this.dataAdapter);
    this.$results = this.results.render();

    this.results.position(this.$results, this.$dropdown);

    // Bind events

    var self = this;

    // Bind the container to all of the adapters
    this._bindAdapters();

    // Register any DOM event handlers
    this._registerDomEvents();

    // Register any internal event handlers
    this._registerDataEvents();
    this._registerSelectionEvents();
    this._registerDropdownEvents();
    this._registerResultsEvents();
    this._registerEvents();

    // Set the initial state
    this.dataAdapter.current(function (initialData) {
      self.trigger('selection:update', {
        data: initialData
      });
    });

    // Hide the original select
    $element.addClass('select2-hidden-accessible');
    $element.attr('aria-hidden', 'true');

    // Synchronize any monitored attributes
    this._syncAttributes();

    Utils.StoreData($element[0], 'select2', this);

    // Ensure backwards compatibility with $element.data('select2').
    $element.data('select2', this);
  };

  Utils.Extend(Select2, Utils.Observable);

  Select2.prototype._generateId = function ($element) {
    var id = '';

    if ($element.attr('id') != null) {
      id = $element.attr('id');
    } else if ($element.attr('name') != null) {
      id = $element.attr('name') + '-' + Utils.generateChars(2);
    } else {
      id = Utils.generateChars(4);
    }

    id = id.replace(/(:|\.|\[|\]|,)/g, '');
    id = 'select2-' + id;

    return id;
  };

  Select2.prototype._placeContainer = function ($container) {
    $container.insertAfter(this.$element);

    var width = this._resolveWidth(this.$element, this.options.get('width'));

    if (width != null) {
      $container.css('width', width);
    }
  };

  Select2.prototype._resolveWidth = function ($element, method) {
    var WIDTH = /^width:(([-+]?([0-9]*\.)?[0-9]+)(px|em|ex|%|in|cm|mm|pt|pc))/i;

    if (method == 'resolve') {
      var styleWidth = this._resolveWidth($element, 'style');

      if (styleWidth != null) {
        return styleWidth;
      }

      return this._resolveWidth($element, 'element');
    }

    if (method == 'element') {
      var elementWidth = $element.outerWidth(false);

      if (elementWidth <= 0) {
        return 'auto';
      }

      return elementWidth + 'px';
    }

    if (method == 'style') {
      var style = $element.attr('style');

      if (typeof(style) !== 'string') {
        return null;
      }

      var attrs = style.split(';');

      for (var i = 0, l = attrs.length; i < l; i = i + 1) {
        var attr = attrs[i].replace(/\s/g, '');
        var matches = attr.match(WIDTH);

        if (matches !== null && matches.length >= 1) {
          return matches[1];
        }
      }

      return null;
    }

    return method;
  };

  Select2.prototype._bindAdapters = function () {
    this.dataAdapter.bind(this, this.$container);
    this.selection.bind(this, this.$container);

    this.dropdown.bind(this, this.$container);
    this.results.bind(this, this.$container);
  };

  Select2.prototype._registerDomEvents = function () {
    var self = this;

    this.$element.on('change.select2', function () {
      self.dataAdapter.current(function (data) {
        self.trigger('selection:update', {
          data: data
        });
      });
    });

    this.$element.on('focus.select2', function (evt) {
      self.trigger('focus', evt);
    });

    this._syncA = Utils.bind(this._syncAttributes, this);
    this._syncS = Utils.bind(this._syncSubtree, this);

    if (this.$element[0].attachEvent) {
      this.$element[0].attachEvent('onpropertychange', this._syncA);
    }

    var observer = window.MutationObserver ||
      window.WebKitMutationObserver ||
      window.MozMutationObserver
    ;

    if (observer != null) {
      this._observer = new observer(function (mutations) {
        $.each(mutations, self._syncA);
        $.each(mutations, self._syncS);
      });
      this._observer.observe(this.$element[0], {
        attributes: true,
        childList: true,
        subtree: false
      });
    } else if (this.$element[0].addEventListener) {
      this.$element[0].addEventListener(
        'DOMAttrModified',
        self._syncA,
        false
      );
      this.$element[0].addEventListener(
        'DOMNodeInserted',
        self._syncS,
        false
      );
      this.$element[0].addEventListener(
        'DOMNodeRemoved',
        self._syncS,
        false
      );
    }
  };

  Select2.prototype._registerDataEvents = function () {
    var self = this;

    this.dataAdapter.on('*', function (name, params) {
      self.trigger(name, params);
    });
  };

  Select2.prototype._registerSelectionEvents = function () {
    var self = this;
    var nonRelayEvents = ['toggle', 'focus'];

    this.selection.on('toggle', function () {
      self.toggleDropdown();
    });

    this.selection.on('focus', function (params) {
      self.focus(params);
    });

    this.selection.on('*', function (name, params) {
      if ($.inArray(name, nonRelayEvents) !== -1) {
        return;
      }

      self.trigger(name, params);
    });
  };

  Select2.prototype._registerDropdownEvents = function () {
    var self = this;

    this.dropdown.on('*', function (name, params) {
      self.trigger(name, params);
    });
  };

  Select2.prototype._registerResultsEvents = function () {
    var self = this;

    this.results.on('*', function (name, params) {
      self.trigger(name, params);
    });
  };

  Select2.prototype._registerEvents = function () {
    var self = this;

    this.on('open', function () {
      self.$container.addClass('select2-container--open');
    });

    this.on('close', function () {
      self.$container.removeClass('select2-container--open');
    });

    this.on('enable', function () {
      self.$container.removeClass('select2-container--disabled');
    });

    this.on('disable', function () {
      self.$container.addClass('select2-container--disabled');
    });

    this.on('blur', function () {
      self.$container.removeClass('select2-container--focus');
    });

    this.on('query', function (params) {
      if (!self.isOpen()) {
        self.trigger('open', {});
      }

      this.dataAdapter.query(params, function (data) {
        self.trigger('results:all', {
          data: data,
          query: params
        });
      });
    });

    this.on('query:append', function (params) {
      this.dataAdapter.query(params, function (data) {
        self.trigger('results:append', {
          data: data,
          query: params
        });
      });
    });

    this.on('keypress', function (evt) {
      var key = evt.which;

      if (self.isOpen()) {
        if (key === KEYS.ESC || key === KEYS.TAB ||
            (key === KEYS.UP && evt.altKey)) {
          self.close();

          evt.preventDefault();
        } else if (key === KEYS.ENTER) {
          self.trigger('results:select', {});

          evt.preventDefault();
        } else if ((key === KEYS.SPACE && evt.ctrlKey)) {
          self.trigger('results:toggle', {});

          evt.preventDefault();
        } else if (key === KEYS.UP) {
          self.trigger('results:previous', {});

          evt.preventDefault();
        } else if (key === KEYS.DOWN) {
          self.trigger('results:next', {});

          evt.preventDefault();
        }
      } else {
        if (key === KEYS.ENTER || key === KEYS.SPACE ||
            (key === KEYS.DOWN && evt.altKey)) {
          self.open();

          evt.preventDefault();
        }
      }
    });
  };

  Select2.prototype._syncAttributes = function () {
    this.options.set('disabled', this.$element.prop('disabled'));

    if (this.options.get('disabled')) {
      if (this.isOpen()) {
        this.close();
      }

      this.trigger('disable', {});
    } else {
      this.trigger('enable', {});
    }
  };

  Select2.prototype._syncSubtree = function (evt, mutations) {
    var changed = false;
    var self = this;

    // Ignore any mutation events raised for elements that aren't options or
    // optgroups. This handles the case when the select element is destroyed
    if (
      evt && evt.target && (
        evt.target.nodeName !== 'OPTION' && evt.target.nodeName !== 'OPTGROUP'
      )
    ) {
      return;
    }

    if (!mutations) {
      // If mutation events aren't supported, then we can only assume that the
      // change affected the selections
      changed = true;
    } else if (mutations.addedNodes && mutations.addedNodes.length > 0) {
      for (var n = 0; n < mutations.addedNodes.length; n++) {
        var node = mutations.addedNodes[n];

        if (node.selected) {
          changed = true;
        }
      }
    } else if (mutations.removedNodes && mutations.removedNodes.length > 0) {
      changed = true;
    }

    // Only re-pull the data if we think there is a change
    if (changed) {
      this.dataAdapter.current(function (currentData) {
        self.trigger('selection:update', {
          data: currentData
        });
      });
    }
  };

  /**
   * Override the trigger method to automatically trigger pre-events when
   * there are events that can be prevented.
   */
  Select2.prototype.trigger = function (name, args) {
    var actualTrigger = Select2.__super__.trigger;
    var preTriggerMap = {
      'open': 'opening',
      'close': 'closing',
      'select': 'selecting',
      'unselect': 'unselecting',
      'clear': 'clearing'
    };

    if (args === undefined) {
      args = {};
    }

    if (name in preTriggerMap) {
      var preTriggerName = preTriggerMap[name];
      var preTriggerArgs = {
        prevented: false,
        name: name,
        args: args
      };

      actualTrigger.call(this, preTriggerName, preTriggerArgs);

      if (preTriggerArgs.prevented) {
        args.prevented = true;

        return;
      }
    }

    actualTrigger.call(this, name, args);
  };

  Select2.prototype.toggleDropdown = function () {
    if (this.options.get('disabled')) {
      return;
    }

    if (this.isOpen()) {
      this.close();
    } else {
      this.open();
    }
  };

  Select2.prototype.open = function () {
    if (this.isOpen()) {
      return;
    }

    this.trigger('query', {});
  };

  Select2.prototype.close = function () {
    if (!this.isOpen()) {
      return;
    }

    this.trigger('close', {});
  };

  Select2.prototype.isOpen = function () {
    return this.$container.hasClass('select2-container--open');
  };

  Select2.prototype.hasFocus = function () {
    return this.$container.hasClass('select2-container--focus');
  };

  Select2.prototype.focus = function (data) {
    // No need to re-trigger focus events if we are already focused
    if (this.hasFocus()) {
      return;
    }

    this.$container.addClass('select2-container--focus');
    this.trigger('focus', {});
  };

  Select2.prototype.enable = function (args) {
    if (this.options.get('debug') && window.console && console.warn) {
      console.warn(
        'Select2: The `select2("enable")` method has been deprecated and will' +
        ' be removed in later Select2 versions. Use $element.prop("disabled")' +
        ' instead.'
      );
    }

    if (args == null || args.length === 0) {
      args = [true];
    }

    var disabled = !args[0];

    this.$element.prop('disabled', disabled);
  };

  Select2.prototype.data = function () {
    if (this.options.get('debug') &&
        arguments.length > 0 && window.console && console.warn) {
      console.warn(
        'Select2: Data can no longer be set using `select2("data")`. You ' +
        'should consider setting the value instead using `$element.val()`.'
      );
    }

    var data = [];

    this.dataAdapter.current(function (currentData) {
      data = currentData;
    });

    return data;
  };

  Select2.prototype.val = function (args) {
    if (this.options.get('debug') && window.console && console.warn) {
      console.warn(
        'Select2: The `select2("val")` method has been deprecated and will be' +
        ' removed in later Select2 versions. Use $element.val() instead.'
      );
    }

    if (args == null || args.length === 0) {
      return this.$element.val();
    }

    var newVal = args[0];

    if ($.isArray(newVal)) {
      newVal = $.map(newVal, function (obj) {
        return obj.toString();
      });
    }

    this.$element.val(newVal).trigger('change');
  };

  Select2.prototype.destroy = function () {
    this.$container.remove();

    if (this.$element[0].detachEvent) {
      this.$element[0].detachEvent('onpropertychange', this._syncA);
    }

    if (this._observer != null) {
      this._observer.disconnect();
      this._observer = null;
    } else if (this.$element[0].removeEventListener) {
      this.$element[0]
        .removeEventListener('DOMAttrModified', this._syncA, false);
      this.$element[0]
        .removeEventListener('DOMNodeInserted', this._syncS, false);
      this.$element[0]
        .removeEventListener('DOMNodeRemoved', this._syncS, false);
    }

    this._syncA = null;
    this._syncS = null;

    this.$element.off('.select2');
    this.$element.attr('tabindex',
    Utils.GetData(this.$element[0], 'old-tabindex'));

    this.$element.removeClass('select2-hidden-accessible');
    this.$element.attr('aria-hidden', 'false');
    Utils.RemoveData(this.$element[0]);
    this.$element.removeData('select2');

    this.dataAdapter.destroy();
    this.selection.destroy();
    this.dropdown.destroy();
    this.results.destroy();

    this.dataAdapter = null;
    this.selection = null;
    this.dropdown = null;
    this.results = null;
  };

  Select2.prototype.render = function () {
    var $container = $(
      '<span class="select2 select2-container">' +
        '<span class="selection"></span>' +
        '<span class="dropdown-wrapper" aria-hidden="true"></span>' +
      '</span>'
    );

    $container.attr('dir', this.options.get('dir'));

    this.$container = $container;

    this.$container.addClass('select2-container--' + this.options.get('theme'));

    Utils.StoreData($container[0], 'element', this.$element);

    return $container;
  };

  return Select2;
});

S2.define('select2/compat/utils',[
  'jquery'
], function ($) {
  function syncCssClasses ($dest, $src, adapter) {
    var classes, replacements = [], adapted;

    classes = $.trim($dest.attr('class'));

    if (classes) {
      classes = '' + classes; // for IE which returns object

      $(classes.split(/\s+/)).each(function () {
        // Save all Select2 classes
        if (this.indexOf('select2-') === 0) {
          replacements.push(this);
        }
      });
    }

    classes = $.trim($src.attr('class'));

    if (classes) {
      classes = '' + classes; // for IE which returns object

      $(classes.split(/\s+/)).each(function () {
        // Only adapt non-Select2 classes
        if (this.indexOf('select2-') !== 0) {
          adapted = adapter(this);

          if (adapted != null) {
            replacements.push(adapted);
          }
        }
      });
    }

    $dest.attr('class', replacements.join(' '));
  }

  return {
    syncCssClasses: syncCssClasses
  };
});

S2.define('select2/compat/containerCss',[
  'jquery',
  './utils'
], function ($, CompatUtils) {
  // No-op CSS adapter that discards all classes by default
  function _containerAdapter (clazz) {
    return null;
  }

  function ContainerCSS () { }

  ContainerCSS.prototype.render = function (decorated) {
    var $container = decorated.call(this);

    var containerCssClass = this.options.get('containerCssClass') || '';

    if ($.isFunction(containerCssClass)) {
      containerCssClass = containerCssClass(this.$element);
    }

    var containerCssAdapter = this.options.get('adaptContainerCssClass');
    containerCssAdapter = containerCssAdapter || _containerAdapter;

    if (containerCssClass.indexOf(':all:') !== -1) {
      containerCssClass = containerCssClass.replace(':all:', '');

      var _cssAdapter = containerCssAdapter;

      containerCssAdapter = function (clazz) {
        var adapted = _cssAdapter(clazz);

        if (adapted != null) {
          // Append the old one along with the adapted one
          return adapted + ' ' + clazz;
        }

        return clazz;
      };
    }

    var containerCss = this.options.get('containerCss') || {};

    if ($.isFunction(containerCss)) {
      containerCss = containerCss(this.$element);
    }

    CompatUtils.syncCssClasses($container, this.$element, containerCssAdapter);

    $container.css(containerCss);
    $container.addClass(containerCssClass);

    return $container;
  };

  return ContainerCSS;
});

S2.define('select2/compat/dropdownCss',[
  'jquery',
  './utils'
], function ($, CompatUtils) {
  // No-op CSS adapter that discards all classes by default
  function _dropdownAdapter (clazz) {
    return null;
  }

  function DropdownCSS () { }

  DropdownCSS.prototype.render = function (decorated) {
    var $dropdown = decorated.call(this);

    var dropdownCssClass = this.options.get('dropdownCssClass') || '';

    if ($.isFunction(dropdownCssClass)) {
      dropdownCssClass = dropdownCssClass(this.$element);
    }

    var dropdownCssAdapter = this.options.get('adaptDropdownCssClass');
    dropdownCssAdapter = dropdownCssAdapter || _dropdownAdapter;

    if (dropdownCssClass.indexOf(':all:') !== -1) {
      dropdownCssClass = dropdownCssClass.replace(':all:', '');

      var _cssAdapter = dropdownCssAdapter;

      dropdownCssAdapter = function (clazz) {
        var adapted = _cssAdapter(clazz);

        if (adapted != null) {
          // Append the old one along with the adapted one
          return adapted + ' ' + clazz;
        }

        return clazz;
      };
    }

    var dropdownCss = this.options.get('dropdownCss') || {};

    if ($.isFunction(dropdownCss)) {
      dropdownCss = dropdownCss(this.$element);
    }

    CompatUtils.syncCssClasses($dropdown, this.$element, dropdownCssAdapter);

    $dropdown.css(dropdownCss);
    $dropdown.addClass(dropdownCssClass);

    return $dropdown;
  };

  return DropdownCSS;
});

S2.define('select2/compat/initSelection',[
  'jquery'
], function ($) {
  function InitSelection (decorated, $element, options) {
    if (options.get('debug') && window.console && console.warn) {
      console.warn(
        'Select2: The `initSelection` option has been deprecated in favor' +
        ' of a custom data adapter that overrides the `current` method. ' +
        'This method is now called multiple times instead of a single ' +
        'time when the instance is initialized. Support will be removed ' +
        'for the `initSelection` option in future versions of Select2'
      );
    }

    this.initSelection = options.get('initSelection');
    this._isInitialized = false;

    decorated.call(this, $element, options);
  }

  InitSelection.prototype.current = function (decorated, callback) {
    var self = this;

    if (this._isInitialized) {
      decorated.call(this, callback);

      return;
    }

    this.initSelection.call(null, this.$element, function (data) {
      self._isInitialized = true;

      if (!$.isArray(data)) {
        data = [data];
      }

      callback(data);
    });
  };

  return InitSelection;
});

S2.define('select2/compat/inputData',[
  'jquery',
  '../utils'
], function ($, Utils) {
  function InputData (decorated, $element, options) {
    this._currentData = [];
    this._valueSeparator = options.get('valueSeparator') || ',';

    if ($element.prop('type') === 'hidden') {
      if (options.get('debug') && console && console.warn) {
        console.warn(
          'Select2: Using a hidden input with Select2 is no longer ' +
          'supported and may stop working in the future. It is recommended ' +
          'to use a `<select>` element instead.'
        );
      }
    }

    decorated.call(this, $element, options);
  }

  InputData.prototype.current = function (_, callback) {
    function getSelected (data, selectedIds) {
      var selected = [];

      if (data.selected || $.inArray(data.id, selectedIds) !== -1) {
        data.selected = true;
        selected.push(data);
      } else {
        data.selected = false;
      }

      if (data.children) {
        selected.push.apply(selected, getSelected(data.children, selectedIds));
      }

      return selected;
    }

    var selected = [];

    for (var d = 0; d < this._currentData.length; d++) {
      var data = this._currentData[d];

      selected.push.apply(
        selected,
        getSelected(
          data,
          this.$element.val().split(
            this._valueSeparator
          )
        )
      );
    }

    callback(selected);
  };

  InputData.prototype.select = function (_, data) {
    if (!this.options.get('multiple')) {
      this.current(function (allData) {
        $.map(allData, function (data) {
          data.selected = false;
        });
      });

      this.$element.val(data.id);
      this.$element.trigger('change');
    } else {
      var value = this.$element.val();
      value += this._valueSeparator + data.id;

      this.$element.val(value);
      this.$element.trigger('change');
    }
  };

  InputData.prototype.unselect = function (_, data) {
    var self = this;

    data.selected = false;

    this.current(function (allData) {
      var values = [];

      for (var d = 0; d < allData.length; d++) {
        var item = allData[d];

        if (data.id == item.id) {
          continue;
        }

        values.push(item.id);
      }

      self.$element.val(values.join(self._valueSeparator));
      self.$element.trigger('change');
    });
  };

  InputData.prototype.query = function (_, params, callback) {
    var results = [];

    for (var d = 0; d < this._currentData.length; d++) {
      var data = this._currentData[d];

      var matches = this.matches(params, data);

      if (matches !== null) {
        results.push(matches);
      }
    }

    callback({
      results: results
    });
  };

  InputData.prototype.addOptions = function (_, $options) {
    var options = $.map($options, function ($option) {
      return Utils.GetData($option[0], 'data');
    });

    this._currentData.push.apply(this._currentData, options);
  };

  return InputData;
});

S2.define('select2/compat/matcher',[
  'jquery'
], function ($) {
  function oldMatcher (matcher) {
    function wrappedMatcher (params, data) {
      var match = $.extend(true, {}, data);

      if (params.term == null || $.trim(params.term) === '') {
        return match;
      }

      if (data.children) {
        for (var c = data.children.length - 1; c >= 0; c--) {
          var child = data.children[c];

          // Check if the child object matches
          // The old matcher returned a boolean true or false
          var doesMatch = matcher(params.term, child.text, child);

          // If the child didn't match, pop it off
          if (!doesMatch) {
            match.children.splice(c, 1);
          }
        }

        if (match.children.length > 0) {
          return match;
        }
      }

      if (matcher(params.term, data.text, data)) {
        return match;
      }

      return null;
    }

    return wrappedMatcher;
  }

  return oldMatcher;
});

S2.define('select2/compat/query',[

], function () {
  function Query (decorated, $element, options) {
    if (options.get('debug') && window.console && console.warn) {
      console.warn(
        'Select2: The `query` option has been deprecated in favor of a ' +
        'custom data adapter that overrides the `query` method. Support ' +
        'will be removed for the `query` option in future versions of ' +
        'Select2.'
      );
    }

    decorated.call(this, $element, options);
  }

  Query.prototype.query = function (_, params, callback) {
    params.callback = callback;

    var query = this.options.get('query');

    query.call(null, params);
  };

  return Query;
});

S2.define('select2/dropdown/attachContainer',[

], function () {
  function AttachContainer (decorated, $element, options) {
    decorated.call(this, $element, options);
  }

  AttachContainer.prototype.position =
    function (decorated, $dropdown, $container) {
    var $dropdownContainer = $container.find('.dropdown-wrapper');
    $dropdownContainer.append($dropdown);

    $dropdown.addClass('select2-dropdown--below');
    $container.addClass('select2-container--below');
  };

  return AttachContainer;
});

S2.define('select2/dropdown/stopPropagation',[

], function () {
  function StopPropagation () { }

  StopPropagation.prototype.bind = function (decorated, container, $container) {
    decorated.call(this, container, $container);

    var stoppedEvents = [
    'blur',
    'change',
    'click',
    'dblclick',
    'focus',
    'focusin',
    'focusout',
    'input',
    'keydown',
    'keyup',
    'keypress',
    'mousedown',
    'mouseenter',
    'mouseleave',
    'mousemove',
    'mouseover',
    'mouseup',
    'search',
    'touchend',
    'touchstart'
    ];

    this.$dropdown.on(stoppedEvents.join(' '), function (evt) {
      evt.stopPropagation();
    });
  };

  return StopPropagation;
});

S2.define('select2/selection/stopPropagation',[

], function () {
  function StopPropagation () { }

  StopPropagation.prototype.bind = function (decorated, container, $container) {
    decorated.call(this, container, $container);

    var stoppedEvents = [
      'blur',
      'change',
      'click',
      'dblclick',
      'focus',
      'focusin',
      'focusout',
      'input',
      'keydown',
      'keyup',
      'keypress',
      'mousedown',
      'mouseenter',
      'mouseleave',
      'mousemove',
      'mouseover',
      'mouseup',
      'search',
      'touchend',
      'touchstart'
    ];

    this.$selection.on(stoppedEvents.join(' '), function (evt) {
      evt.stopPropagation();
    });
  };

  return StopPropagation;
});

/*!
 * jQuery Mousewheel 3.1.13
 *
 * Copyright jQuery Foundation and other contributors
 * Released under the MIT license
 * http://jquery.org/license
 */

(function (factory) {
    if ( typeof S2.define === 'function' && S2.define.amd ) {
        // AMD. Register as an anonymous module.
        S2.define('jquery-mousewheel',['jquery'], factory);
    } else if (typeof exports === 'object') {
        // Node/CommonJS style for Browserify
        module.exports = factory;
    } else {
        // Browser globals
        factory(jQuery);
    }
}(function ($) {

    var toFix  = ['wheel', 'mousewheel', 'DOMMouseScroll', 'MozMousePixelScroll'],
        toBind = ( 'onwheel' in document || document.documentMode >= 9 ) ?
                    ['wheel'] : ['mousewheel', 'DomMouseScroll', 'MozMousePixelScroll'],
        slice  = Array.prototype.slice,
        nullLowestDeltaTimeout, lowestDelta;

    if ( $.event.fixHooks ) {
        for ( var i = toFix.length; i; ) {
            $.event.fixHooks[ toFix[--i] ] = $.event.mouseHooks;
        }
    }

    var special = $.event.special.mousewheel = {
        version: '3.1.12',

        setup: function() {
            if ( this.addEventListener ) {
                for ( var i = toBind.length; i; ) {
                    this.addEventListener( toBind[--i], handler, false );
                }
            } else {
                this.onmousewheel = handler;
            }
            // Store the line height and page height for this particular element
            $.data(this, 'mousewheel-line-height', special.getLineHeight(this));
            $.data(this, 'mousewheel-page-height', special.getPageHeight(this));
        },

        teardown: function() {
            if ( this.removeEventListener ) {
                for ( var i = toBind.length; i; ) {
                    this.removeEventListener( toBind[--i], handler, false );
                }
            } else {
                this.onmousewheel = null;
            }
            // Clean up the data we added to the element
            $.removeData(this, 'mousewheel-line-height');
            $.removeData(this, 'mousewheel-page-height');
        },

        getLineHeight: function(elem) {
            var $elem = $(elem),
                $parent = $elem['offsetParent' in $.fn ? 'offsetParent' : 'parent']();
            if (!$parent.length) {
                $parent = $('body');
            }
            return parseInt($parent.css('fontSize'), 10) || parseInt($elem.css('fontSize'), 10) || 16;
        },

        getPageHeight: function(elem) {
            return $(elem).height();
        },

        settings: {
            adjustOldDeltas: true, // see shouldAdjustOldDeltas() below
            normalizeOffset: true  // calls getBoundingClientRect for each event
        }
    };

    $.fn.extend({
        mousewheel: function(fn) {
            return fn ? this.bind('mousewheel', fn) : this.trigger('mousewheel');
        },

        unmousewheel: function(fn) {
            return this.unbind('mousewheel', fn);
        }
    });


    function handler(event) {
        var orgEvent   = event || window.event,
            args       = slice.call(arguments, 1),
            delta      = 0,
            deltaX     = 0,
            deltaY     = 0,
            absDelta   = 0,
            offsetX    = 0,
            offsetY    = 0;
        event = $.event.fix(orgEvent);
        event.type = 'mousewheel';

        // Old school scrollwheel delta
        if ( 'detail'      in orgEvent ) { deltaY = orgEvent.detail * -1;      }
        if ( 'wheelDelta'  in orgEvent ) { deltaY = orgEvent.wheelDelta;       }
        if ( 'wheelDeltaY' in orgEvent ) { deltaY = orgEvent.wheelDeltaY;      }
        if ( 'wheelDeltaX' in orgEvent ) { deltaX = orgEvent.wheelDeltaX * -1; }

        // Firefox < 17 horizontal scrolling related to DOMMouseScroll event
        if ( 'axis' in orgEvent && orgEvent.axis === orgEvent.HORIZONTAL_AXIS ) {
            deltaX = deltaY * -1;
            deltaY = 0;
        }

        // Set delta to be deltaY or deltaX if deltaY is 0 for backwards compatabilitiy
        delta = deltaY === 0 ? deltaX : deltaY;

        // New school wheel delta (wheel event)
        if ( 'deltaY' in orgEvent ) {
            deltaY = orgEvent.deltaY * -1;
            delta  = deltaY;
        }
        if ( 'deltaX' in orgEvent ) {
            deltaX = orgEvent.deltaX;
            if ( deltaY === 0 ) { delta  = deltaX * -1; }
        }

        // No change actually happened, no reason to go any further
        if ( deltaY === 0 && deltaX === 0 ) { return; }

        // Need to convert lines and pages to pixels if we aren't already in pixels
        // There are three delta modes:
        //   * deltaMode 0 is by pixels, nothing to do
        //   * deltaMode 1 is by lines
        //   * deltaMode 2 is by pages
        if ( orgEvent.deltaMode === 1 ) {
            var lineHeight = $.data(this, 'mousewheel-line-height');
            delta  *= lineHeight;
            deltaY *= lineHeight;
            deltaX *= lineHeight;
        } else if ( orgEvent.deltaMode === 2 ) {
            var pageHeight = $.data(this, 'mousewheel-page-height');
            delta  *= pageHeight;
            deltaY *= pageHeight;
            deltaX *= pageHeight;
        }

        // Store lowest absolute delta to normalize the delta values
        absDelta = Math.max( Math.abs(deltaY), Math.abs(deltaX) );

        if ( !lowestDelta || absDelta < lowestDelta ) {
            lowestDelta = absDelta;

            // Adjust older deltas if necessary
            if ( shouldAdjustOldDeltas(orgEvent, absDelta) ) {
                lowestDelta /= 40;
            }
        }

        // Adjust older deltas if necessary
        if ( shouldAdjustOldDeltas(orgEvent, absDelta) ) {
            // Divide all the things by 40!
            delta  /= 40;
            deltaX /= 40;
            deltaY /= 40;
        }

        // Get a whole, normalized value for the deltas
        delta  = Math[ delta  >= 1 ? 'floor' : 'ceil' ](delta  / lowestDelta);
        deltaX = Math[ deltaX >= 1 ? 'floor' : 'ceil' ](deltaX / lowestDelta);
        deltaY = Math[ deltaY >= 1 ? 'floor' : 'ceil' ](deltaY / lowestDelta);

        // Normalise offsetX and offsetY properties
        if ( special.settings.normalizeOffset && this.getBoundingClientRect ) {
            var boundingRect = this.getBoundingClientRect();
            offsetX = event.clientX - boundingRect.left;
            offsetY = event.clientY - boundingRect.top;
        }

        // Add information to the event object
        event.deltaX = deltaX;
        event.deltaY = deltaY;
        event.deltaFactor = lowestDelta;
        event.offsetX = offsetX;
        event.offsetY = offsetY;
        // Go ahead and set deltaMode to 0 since we converted to pixels
        // Although this is a little odd since we overwrite the deltaX/Y
        // properties with normalized deltas.
        event.deltaMode = 0;

        // Add event and delta to the front of the arguments
        args.unshift(event, delta, deltaX, deltaY);

        // Clearout lowestDelta after sometime to better
        // handle multiple device types that give different
        // a different lowestDelta
        // Ex: trackpad = 3 and mouse wheel = 120
        if (nullLowestDeltaTimeout) { clearTimeout(nullLowestDeltaTimeout); }
        nullLowestDeltaTimeout = setTimeout(nullLowestDelta, 200);

        return ($.event.dispatch || $.event.handle).apply(this, args);
    }

    function nullLowestDelta() {
        lowestDelta = null;
    }

    function shouldAdjustOldDeltas(orgEvent, absDelta) {
        // If this is an older event and the delta is divisable by 120,
        // then we are assuming that the browser is treating this as an
        // older mouse wheel event and that we should divide the deltas
        // by 40 to try and get a more usable deltaFactor.
        // Side note, this actually impacts the reported scroll distance
        // in older browsers and can cause scrolling to be slower than native.
        // Turn this off by setting $.event.special.mousewheel.settings.adjustOldDeltas to false.
        return special.settings.adjustOldDeltas && orgEvent.type === 'mousewheel' && absDelta % 120 === 0;
    }

}));

S2.define('jquery.select2',[
  'jquery',
  'jquery-mousewheel',

  './select2/core',
  './select2/defaults',
  './select2/utils'
], function ($, _, Select2, Defaults, Utils) {
  if ($.fn.select2 == null) {
    // All methods that should return the element
    var thisMethods = ['open', 'close', 'destroy'];

    $.fn.select2 = function (options) {
      options = options || {};

      if (typeof options === 'object') {
        this.each(function () {
          var instanceOptions = $.extend(true, {}, options);

          var instance = new Select2($(this), instanceOptions);
        });

        return this;
      } else if (typeof options === 'string') {
        var ret;
        var args = Array.prototype.slice.call(arguments, 1);

        this.each(function () {
          var instance = Utils.GetData(this, 'select2');

          if (instance == null && window.console && console.error) {
            console.error(
              'The select2(\'' + options + '\') method was called on an ' +
              'element that is not using Select2.'
            );
          }

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

        // Check if we should be returning `this`
        if ($.inArray(options, thisMethods) > -1) {
          return this;
        }

        return ret;
      } else {
        throw new Error('Invalid arguments for Select2: ' + options);
      }
    };
  }

  if ($.fn.select2.defaults == null) {
    $.fn.select2.defaults = Defaults;
  }

  return Select2;
});

  // Return the AMD loader configuration so it can be used outside of this file
  return {
    define: S2.define,
    require: S2.require
  };
}());

  // Autoload the jQuery bindings
  // We know that all of the modules exist above this, so we're safe
  var select2 = S2.require('jquery.select2');

  // Hold the AMD module references on the jQuery function that was just loaded
  // This allows Select2 to use the internal loader outside of this file, such
  // as in the language files.
  jQuery.fn.select2.amd = S2;

  // Return the Select2 instance for anyone who is importing it.
  return select2;
}));
assets/lib/e-select2/js/e-select2.full.min.js000064400000224046151327220410014664 0ustar00/*! Select2 4.0.6-rc.1 | https://github.com/select2/select2/blob/master/LICENSE.md */!function(e){"function"==typeof define&&define.amd?define(["jquery"],e):"object"==typeof module&&module.exports?module.exports=function(t,n){return void 0===n&&(n="undefined"!=typeof window?require("jquery"):require("jquery")(t)),e(n),n}:e(jQuery)}(function(e){var t=function(){if(e&&e.fn&&e.fn.select2&&e.fn.select2.amd)var t=e.fn.select2.amd;var n,i,r,o;return t&&t.requirejs||(t?i=t:t={},function(e){var t,o,s,a,l={},c={},u={},d={},p=Object.prototype.hasOwnProperty,h=[].slice,f=/\.js$/;function g(e,t){return p.call(e,t)}function m(e,t){var n,i,r,o,s,a,l,c,d,p,h,g=t&&t.split("/"),m=u.map,v=m&&m["*"]||{};if(e){for(s=(e=e.split("/")).length-1,u.nodeIdCompat&&f.test(e[s])&&(e[s]=e[s].replace(f,"")),"."===e[0].charAt(0)&&g&&(e=g.slice(0,g.length-1).concat(e)),d=0;d<e.length;d++)if("."===(h=e[d]))e.splice(d,1),d-=1;else if(".."===h){if(0===d||1===d&&".."===e[2]||".."===e[d-1])continue;d>0&&(e.splice(d-1,2),d-=2)}e=e.join("/")}if((g||v)&&m){for(d=(n=e.split("/")).length;d>0;d-=1){if(i=n.slice(0,d).join("/"),g)for(p=g.length;p>0;p-=1)if((r=m[g.slice(0,p).join("/")])&&(r=r[i])){o=r,a=d;break}if(o)break;!l&&v&&v[i]&&(l=v[i],c=d)}!o&&l&&(o=l,a=c),o&&(n.splice(0,a,o),e=n.join("/"))}return e}function v(t,n){return function(){var i=h.call(arguments,0);return"string"!=typeof i[0]&&1===i.length&&i.push(null),o.apply(e,i.concat([t,n]))}}function y(e){return function(t){l[e]=t}}function _(n){if(g(c,n)){var i=c[n];delete c[n],d[n]=!0,t.apply(e,i)}if(!g(l,n)&&!g(d,n))throw new Error("No "+n);return l[n]}function w(e){var t,n=e?e.indexOf("!"):-1;return n>-1&&(t=e.substring(0,n),e=e.substring(n+1,e.length)),[t,e]}function $(e){return e?w(e):[]}s=function(e,t){var n,i,r=w(e),o=r[0],s=t[1];return e=r[1],o&&(n=_(o=m(o,s))),o?e=n&&n.normalize?n.normalize(e,(i=s,function(e){return m(e,i)})):m(e,s):(o=(r=w(e=m(e,s)))[0],e=r[1],o&&(n=_(o))),{f:o?o+"!"+e:e,n:e,pr:o,p:n}},a={require:function(e){return v(e)},exports:function(e){var t=l[e];return void 0!==t?t:l[e]={}},module:function(e){return{id:e,uri:"",exports:l[e],config:(t=e,function(){return u&&u.config&&u.config[t]||{}})};var t}},t=function(t,n,i,r){var o,u,p,h,f,m,w,b=[],x=typeof i;if(m=$(r=r||t),"undefined"===x||"function"===x){for(n=!n.length&&i.length?["require","exports","module"]:n,f=0;f<n.length;f+=1)if("require"===(u=(h=s(n[f],m)).f))b[f]=a.require(t);else if("exports"===u)b[f]=a.exports(t),w=!0;else if("module"===u)o=b[f]=a.module(t);else if(g(l,u)||g(c,u)||g(d,u))b[f]=_(u);else{if(!h.p)throw new Error(t+" missing "+u);h.p.load(h.n,v(r,!0),y(u),{}),b[f]=l[u]}p=i?i.apply(l[t],b):void 0,t&&(o&&o.exports!==e&&o.exports!==l[t]?l[t]=o.exports:p===e&&w||(l[t]=p))}else t&&(l[t]=i)},n=i=o=function(n,i,r,l,c){if("string"==typeof n)return a[n]?a[n](i):_(s(n,$(i)).f);if(!n.splice){if((u=n).deps&&o(u.deps,u.callback),!i)return;i.splice?(n=i,i=r,r=null):n=e}return i=i||function(){},"function"==typeof r&&(r=l,l=c),l?t(e,n,i,r):setTimeout(function(){t(e,n,i,r)},4),o},o.config=function(e){return o(e)},n._defined=l,(r=function(e,t,n){if("string"!=typeof e)throw new Error("See almond README: incorrect module build, no module name");t.splice||(n=t,t=[]),g(l,e)||g(c,e)||(c[e]=[e,t,n])}).amd={jQuery:!0}}(),t.requirejs=n,t.require=i,t.define=r),t.define("almond",function(){}),t.define("jquery",[],function(){var t=e||$;return null==t&&console&&console.error&&console.error("Select2: An instance of jQuery or a jQuery-compatible library was not found. Make sure that you are including jQuery before Select2 on your web page."),t}),t.define("select2/utils",["jquery"],function(e){var t={};function n(e){var t=e.prototype,n=[];for(var i in t){"function"==typeof t[i]&&("constructor"!==i&&n.push(i))}return n}t.Extend=function(e,t){var n={}.hasOwnProperty;function i(){this.constructor=e}for(var r in t)n.call(t,r)&&(e[r]=t[r]);return i.prototype=t.prototype,e.prototype=new i,e.__super__=t.prototype,e},t.Decorate=function(e,t){var i=n(t),r=n(e);function o(){var n=Array.prototype.unshift,i=t.prototype.constructor.length,r=e.prototype.constructor;i>0&&(n.call(arguments,e.prototype.constructor),r=t.prototype.constructor),r.apply(this,arguments)}t.displayName=e.displayName,o.prototype=new function(){this.constructor=o};for(var s=0;s<r.length;s++){var a=r[s];o.prototype[a]=e.prototype[a]}for(var l=function(e){var n=function(){};e in o.prototype&&(n=o.prototype[e]);var i=t.prototype[e];return function(){return Array.prototype.unshift.call(arguments,n),i.apply(this,arguments)}},c=0;c<i.length;c++){var u=i[c];o.prototype[u]=l(u)}return o};var i=function(){this.listeners={}};i.prototype.on=function(e,t){this.listeners=this.listeners||{},e in this.listeners?this.listeners[e].push(t):this.listeners[e]=[t]},i.prototype.trigger=function(e){var t=Array.prototype.slice,n=t.call(arguments,1);this.listeners=this.listeners||{},null==n&&(n=[]),0===n.length&&n.push({}),n[0]._type=e,e in this.listeners&&this.invoke(this.listeners[e],t.call(arguments,1)),"*"in this.listeners&&this.invoke(this.listeners["*"],arguments)},i.prototype.invoke=function(e,t){for(var n=0,i=e.length;n<i;n++)e[n].apply(this,t)},t.Observable=i,t.generateChars=function(e){for(var t="",n=0;n<e;n++){t+=Math.floor(36*Math.random()).toString(36)}return t},t.bind=function(e,t){return function(){e.apply(t,arguments)}},t._convertData=function(e){for(var t in e){var n=t.split("-"),i=e;if(1!==n.length){for(var r=0;r<n.length;r++){var o=n[r];(o=o.substring(0,1).toLowerCase()+o.substring(1))in i||(i[o]={}),r==n.length-1&&(i[o]=e[t]),i=i[o]}delete e[t]}}return e},t.hasScroll=function(t,n){var i=e(n),r=n.style.overflowX,o=n.style.overflowY;return(r!==o||"hidden"!==o&&"visible"!==o)&&("scroll"===r||"scroll"===o||(i.innerHeight()<n.scrollHeight||i.innerWidth()<n.scrollWidth))},t.escapeMarkup=function(e){var t={"\\":"&#92;","&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","/":"&#47;"};return"string"!=typeof e?e:String(e).replace(/[&<>"'\/\\]/g,function(e){return t[e]})},t.appendMany=function(t,n){if("1.7"===e.fn.jquery.substr(0,3)){var i=e();e.map(n,function(e){i=i.add(e)}),n=i}t.append(n)},t.__cache={};var r=0;return t.GetUniqueElementId=function(e){var t=e.getAttribute("data-select2-id");return null==t&&(e.id?(t=e.id,e.setAttribute("data-select2-id",t)):(e.setAttribute("data-select2-id",++r),t=r.toString())),t},t.StoreData=function(e,n,i){var r=t.GetUniqueElementId(e);t.__cache[r]||(t.__cache[r]={}),t.__cache[r][n]=i},t.GetData=function(n,i){var r=t.GetUniqueElementId(n);return i?t.__cache[r]&&null!=t.__cache[r][i]?t.__cache[r][i]:e(n).data(i):t.__cache[r]},t.RemoveData=function(e){var n=t.GetUniqueElementId(e);null!=t.__cache[n]&&delete t.__cache[n]},t}),t.define("select2/results",["jquery","./utils"],function(e,t){function n(e,t,i){this.$element=e,this.data=i,this.options=t,n.__super__.constructor.call(this)}return t.Extend(n,t.Observable),n.prototype.render=function(){var t=e('<ul class="select2-results__options" role="tree"></ul>');return this.options.get("multiple")&&t.attr("aria-multiselectable","true"),this.$results=t,t},n.prototype.clear=function(){this.$results.empty()},n.prototype.displayMessage=function(t){var n=this.options.get("escapeMarkup");this.clear(),this.hideLoading();var i=e('<li role="treeitem" aria-live="assertive" class="select2-results__option"></li>'),r=this.options.get("translations").get(t.message);i.append(n(r(t.args))),i[0].className+=" select2-results__message",this.$results.append(i)},n.prototype.hideMessages=function(){this.$results.find(".select2-results__message").remove()},n.prototype.append=function(e){this.hideLoading();var t=[];if(null!=e.results&&0!==e.results.length){e.results=this.sort(e.results);for(var n=0;n<e.results.length;n++){var i=e.results[n],r=this.option(i);t.push(r)}this.$results.append(t)}else 0===this.$results.children().length&&this.trigger("results:message",{message:"noResults"})},n.prototype.position=function(e,t){t.find(".select2-results").append(e)},n.prototype.sort=function(e){return this.options.get("sorter")(e)},n.prototype.highlightFirstItem=function(){var e=this.$results.find(".select2-results__option[aria-selected]"),t=e.filter("[aria-selected=true]");t.length>0?t.first().trigger("mouseenter"):e.first().trigger("mouseenter"),this.ensureHighlightVisible()},n.prototype.setClasses=function(){var n=this;this.data.current(function(i){var r=e.map(i,function(e){return e.id.toString()});n.$results.find(".select2-results__option[aria-selected]").each(function(){var n=e(this),i=t.GetData(this,"data"),o=""+i.id;null!=i.element&&i.element.selected||null==i.element&&e.inArray(o,r)>-1?n.attr("aria-selected","true"):n.attr("aria-selected","false")})})},n.prototype.showLoading=function(e){this.hideLoading();var t={disabled:!0,loading:!0,text:this.options.get("translations").get("searching")(e)},n=this.option(t);n.className+=" loading-results",this.$results.prepend(n)},n.prototype.hideLoading=function(){this.$results.find(".loading-results").remove()},n.prototype.option=function(n){var i=document.createElement("li");i.className="select2-results__option";var r={role:"treeitem","aria-selected":"false"};for(var o in n.disabled&&(delete r["aria-selected"],r["aria-disabled"]="true"),null==n.id&&delete r["aria-selected"],null!=n._resultId&&(i.id=n._resultId),n.title&&(i.title=n.title),n.children&&(r.role="group",r["aria-label"]=n.text,delete r["aria-selected"]),r){var s=r[o];i.setAttribute(o,s)}if(n.children){var a=e(i),l=document.createElement("strong");l.className="select2-results__group";e(l);this.template(n,l);for(var c=[],u=0;u<n.children.length;u++){var d=n.children[u],p=this.option(d);c.push(p)}var h=e("<ul></ul>",{class:"select2-results__options select2-results__options--nested"});h.append(c),a.append(l),a.append(h)}else this.template(n,i);return t.StoreData(i,"data",n),i},n.prototype.bind=function(n,i){var r=this,o=n.id+"-results";this.$results.attr("id",o),n.on("results:all",function(e){r.clear(),r.append(e.data),n.isOpen()&&(r.setClasses(),r.highlightFirstItem())}),n.on("results:append",function(e){r.append(e.data),n.isOpen()&&r.setClasses()}),n.on("query",function(e){r.hideMessages(),r.showLoading(e)}),n.on("select",function(){n.isOpen()&&(r.setClasses(),r.highlightFirstItem())}),n.on("unselect",function(){n.isOpen()&&(r.setClasses(),r.highlightFirstItem())}),n.on("open",function(){r.$results.attr("aria-expanded","true"),r.$results.attr("aria-hidden","false"),r.setClasses(),r.ensureHighlightVisible()}),n.on("close",function(){r.$results.attr("aria-expanded","false"),r.$results.attr("aria-hidden","true"),r.$results.removeAttr("aria-activedescendant")}),n.on("results:toggle",function(){var e=r.getHighlightedResults();0!==e.length&&e.trigger("mouseup")}),n.on("results:select",function(){var e=r.getHighlightedResults();if(0!==e.length){var n=t.GetData(e[0],"data");"true"==e.attr("aria-selected")?r.trigger("close",{}):r.trigger("select",{data:n})}}),n.on("results:previous",function(){var e=r.getHighlightedResults(),t=r.$results.find("[aria-selected]"),n=t.index(e);if(!(n<=0)){var i=n-1;0===e.length&&(i=0);var o=t.eq(i);o.trigger("mouseenter");var s=r.$results.offset().top,a=o.offset().top,l=r.$results.scrollTop()+(a-s);0===i?r.$results.scrollTop(0):a-s<0&&r.$results.scrollTop(l)}}),n.on("results:next",function(){var e=r.getHighlightedResults(),t=r.$results.find("[aria-selected]"),n=t.index(e)+1;if(!(n>=t.length)){var i=t.eq(n);i.trigger("mouseenter");var o=r.$results.offset().top+r.$results.outerHeight(!1),s=i.offset().top+i.outerHeight(!1),a=r.$results.scrollTop()+s-o;0===n?r.$results.scrollTop(0):s>o&&r.$results.scrollTop(a)}}),n.on("results:focus",function(e){e.element.addClass("select2-results__option--highlighted")}),n.on("results:message",function(e){r.displayMessage(e)}),e.fn.mousewheel&&this.$results.on("mousewheel",function(e){var t=r.$results.scrollTop(),n=r.$results.get(0).scrollHeight-t+e.deltaY,i=e.deltaY>0&&t-e.deltaY<=0,o=e.deltaY<0&&n<=r.$results.height();i?(r.$results.scrollTop(0),e.preventDefault(),e.stopPropagation()):o&&(r.$results.scrollTop(r.$results.get(0).scrollHeight-r.$results.height()),e.preventDefault(),e.stopPropagation())}),this.$results.on("mouseup",".select2-results__option[aria-selected]",function(n){var i=e(this),o=t.GetData(this,"data");"true"!==i.attr("aria-selected")?r.trigger("select",{originalEvent:n,data:o}):r.options.get("multiple")?r.trigger("unselect",{originalEvent:n,data:o}):r.trigger("close",{})}),this.$results.on("mouseenter",".select2-results__option[aria-selected]",function(n){var i=t.GetData(this,"data");r.getHighlightedResults().removeClass("select2-results__option--highlighted"),r.trigger("results:focus",{data:i,element:e(this)})})},n.prototype.getHighlightedResults=function(){return this.$results.find(".select2-results__option--highlighted")},n.prototype.destroy=function(){this.$results.remove()},n.prototype.ensureHighlightVisible=function(){var e=this.getHighlightedResults();if(0!==e.length){var t=this.$results.find("[aria-selected]").index(e),n=this.$results.offset().top,i=e.offset().top,r=this.$results.scrollTop()+(i-n),o=i-n;r-=2*e.outerHeight(!1),t<=2?this.$results.scrollTop(0):(o>this.$results.outerHeight()||o<0)&&this.$results.scrollTop(r)}},n.prototype.template=function(t,n){var i=this.options.get("templateResult"),r=this.options.get("escapeMarkup"),o=i(t,n);null==o?n.style.display="none":"string"==typeof o?n.innerHTML=r(o):e(n).append(o)},n}),t.define("select2/keys",[],function(){return{BACKSPACE:8,TAB:9,ENTER:13,SHIFT:16,CTRL:17,ALT:18,ESC:27,SPACE:32,PAGE_UP:33,PAGE_DOWN:34,END:35,HOME:36,LEFT:37,UP:38,RIGHT:39,DOWN:40,DELETE:46}}),t.define("select2/selection/base",["jquery","../utils","../keys"],function(e,t,n){function i(e,t){this.$element=e,this.options=t,i.__super__.constructor.call(this)}return t.Extend(i,t.Observable),i.prototype.render=function(){var n=e('<span class="select2-selection" role="combobox"  aria-haspopup="true" aria-expanded="false"></span>');return this._tabindex=0,null!=t.GetData(this.$element[0],"old-tabindex")?this._tabindex=t.GetData(this.$element[0],"old-tabindex"):null!=this.$element.attr("tabindex")&&(this._tabindex=this.$element.attr("tabindex")),n.attr("title",this.$element.attr("title")),n.attr("tabindex",this._tabindex),this.$selection=n,n},i.prototype.bind=function(e,t){var i=this,r=(e.id,e.id+"-results");this.container=e,this.$selection.on("focus",function(e){i.trigger("focus",e)}),this.$selection.on("blur",function(e){i._handleBlur(e)}),this.$selection.on("keydown",function(e){i.trigger("keypress",e),e.which===n.SPACE&&e.preventDefault()}),e.on("results:focus",function(e){i.$selection.attr("aria-activedescendant",e.data._resultId)}),e.on("selection:update",function(e){i.update(e.data)}),e.on("open",function(){i.$selection.attr("aria-expanded","true"),i.$selection.attr("aria-owns",r),i._attachCloseHandler(e)}),e.on("close",function(){i.$selection.attr("aria-expanded","false"),i.$selection.removeAttr("aria-activedescendant"),i.$selection.removeAttr("aria-owns"),i.$selection.focus(),window.setTimeout(function(){i.$selection.focus()},0),i._detachCloseHandler(e)}),e.on("enable",function(){i.$selection.attr("tabindex",i._tabindex)}),e.on("disable",function(){i.$selection.attr("tabindex","-1")})},i.prototype._handleBlur=function(t){var n=this;window.setTimeout(function(){document.activeElement==n.$selection[0]||e.contains(n.$selection[0],document.activeElement)||n.trigger("blur",t)},1)},i.prototype._attachCloseHandler=function(n){e(document.body).on("mousedown.select2."+n.id,function(n){var i=e(n.target).closest(".select2");e(".select2.select2-container--open").each(function(){e(this);this!=i[0]&&t.GetData(this,"element").select2("close")})})},i.prototype._detachCloseHandler=function(t){e(document.body).off("mousedown.select2."+t.id)},i.prototype.position=function(e,t){t.find(".selection").append(e)},i.prototype.destroy=function(){this._detachCloseHandler(this.container)},i.prototype.update=function(e){throw new Error("The `update` method must be defined in child classes.")},i}),t.define("select2/selection/single",["jquery","./base","../utils","../keys"],function(e,t,n,i){function r(){r.__super__.constructor.apply(this,arguments)}return n.Extend(r,t),r.prototype.render=function(){var e=r.__super__.render.call(this);return e.addClass("select2-selection--single"),e.html('<span class="select2-selection__rendered"></span><span class="select2-selection__arrow" role="presentation"><b role="presentation"></b></span>'),e},r.prototype.bind=function(e,t){var n=this;r.__super__.bind.apply(this,arguments);var i=e.id+"-container";this.$selection.find(".select2-selection__rendered").attr("id",i).attr("role","textbox").attr("aria-readonly","true"),this.$selection.attr("aria-labelledby",i),this.$selection.on("mousedown",function(e){1===e.which&&n.trigger("toggle",{originalEvent:e})}),this.$selection.on("focus",function(e){}),this.$selection.on("blur",function(e){}),e.on("focus",function(t){e.isOpen()||n.$selection.focus()})},r.prototype.clear=function(){var e=this.$selection.find(".select2-selection__rendered");e.empty(),e.removeAttr("title")},r.prototype.display=function(e,t){var n=this.options.get("templateSelection");return this.options.get("escapeMarkup")(n(e,t))},r.prototype.selectionContainer=function(){return e("<span></span>")},r.prototype.update=function(e){if(0!==e.length){var t=e[0],n=this.$selection.find(".select2-selection__rendered"),i=this.display(t,n);n.empty().append(i),n.attr("title",t.title||t.text)}else this.clear()},r}),t.define("select2/selection/multiple",["jquery","./base","../utils"],function(e,t,n){function i(e,t){i.__super__.constructor.apply(this,arguments)}return n.Extend(i,t),i.prototype.render=function(){var e=i.__super__.render.call(this);return e.addClass("select2-selection--multiple"),e.html('<ul class="select2-selection__rendered"></ul>'),e},i.prototype.bind=function(t,r){var o=this;i.__super__.bind.apply(this,arguments),this.$selection.on("click",function(e){o.trigger("toggle",{originalEvent:e})}),this.$selection.on("click",".select2-selection__choice__remove",function(t){if(!o.options.get("disabled")){var i=e(this).parent(),r=n.GetData(i[0],"data");o.trigger("unselect",{originalEvent:t,data:r})}})},i.prototype.clear=function(){var e=this.$selection.find(".select2-selection__rendered");e.empty(),e.removeAttr("title")},i.prototype.display=function(e,t){var n=this.options.get("templateSelection");return this.options.get("escapeMarkup")(n(e,t))},i.prototype.selectionContainer=function(){return e('<li class="select2-selection__choice"><span class="select2-selection__choice__remove" role="presentation">&times;</span></li>')},i.prototype.update=function(e){if(this.clear(),0!==e.length){for(var t=[],i=0;i<e.length;i++){var r=e[i],o=this.selectionContainer(),s=this.display(r,o);o.append(s),o.attr("title",r.title||r.text),n.StoreData(o[0],"data",r),t.push(o)}var a=this.$selection.find(".select2-selection__rendered");n.appendMany(a,t)}},i}),t.define("select2/selection/placeholder",["../utils"],function(e){function t(e,t,n){this.placeholder=this.normalizePlaceholder(n.get("placeholder")),e.call(this,t,n)}return t.prototype.normalizePlaceholder=function(e,t){return"string"==typeof t&&(t={id:"",text:t}),t},t.prototype.createPlaceholder=function(e,t){var n=this.selectionContainer();return n.html(this.display(t)),n.addClass("select2-selection__placeholder").removeClass("select2-selection__choice"),n},t.prototype.update=function(e,t){var n=1==t.length&&t[0].id!=this.placeholder.id;if(t.length>1||n)return e.call(this,t);this.clear();var i=this.createPlaceholder(this.placeholder);this.$selection.find(".select2-selection__rendered").append(i)},t}),t.define("select2/selection/allowClear",["jquery","../keys","../utils"],function(e,t,n){function i(){}return i.prototype.bind=function(e,t,n){var i=this;e.call(this,t,n),null==this.placeholder&&this.options.get("debug")&&window.console&&console.error&&console.error("Select2: The `allowClear` option should be used in combination with the `placeholder` option."),this.$selection.on("mousedown",".select2-selection__clear",function(e){i._handleClear(e)}),t.on("keypress",function(e){i._handleKeyboardClear(e,t)})},i.prototype._handleClear=function(e,t){if(!this.options.get("disabled")){var i=this.$selection.find(".select2-selection__clear");if(0!==i.length){t.stopPropagation();var r=n.GetData(i[0],"data"),o=this.$element.val();this.$element.val(this.placeholder.id);var s={data:r};if(this.trigger("clear",s),s.prevented)this.$element.val(o);else{for(var a=0;a<r.length;a++)if(s={data:r[a]},this.trigger("unselect",s),s.prevented)return void this.$element.val(o);this.$element.trigger("change"),this.trigger("toggle",{})}}}},i.prototype._handleKeyboardClear=function(e,n,i){i.isOpen()||n.which!=t.DELETE&&n.which!=t.BACKSPACE||this._handleClear(n)},i.prototype.update=function(t,i){if(t.call(this,i),!(this.$selection.find(".select2-selection__placeholder").length>0||0===i.length)){var r=e('<span class="select2-selection__clear">&times;</span>');n.StoreData(r[0],"data",i),this.$selection.find(".select2-selection__rendered").prepend(r)}},i}),t.define("select2/selection/search",["jquery","../utils","../keys"],function(e,t,n){function i(e,t,n){e.call(this,t,n)}return i.prototype.render=function(t){var n=e('<li class="select2-search select2-search--inline"><input class="select2-search__field" type="search" tabindex="-1" autocomplete="off" autocorrect="off" autocapitalize="none" spellcheck="false" role="textbox" aria-autocomplete="list" /></li>');this.$searchContainer=n,this.$search=n.find("input");var i=t.call(this);return this._transferTabIndex(),i},i.prototype.bind=function(e,i,r){var o=this;e.call(this,i,r),i.on("open",function(){o.$search.trigger("focus")}),i.on("close",function(){o.$search.val(""),o.$search.removeAttr("aria-activedescendant"),o.$search.trigger("focus")}),i.on("enable",function(){o.$search.prop("disabled",!1),o._transferTabIndex()}),i.on("disable",function(){o.$search.prop("disabled",!0)}),i.on("focus",function(e){o.$search.trigger("focus")}),i.on("results:focus",function(e){o.$search.attr("aria-activedescendant",e.id)}),this.$selection.on("focusin",".select2-search--inline",function(e){o.trigger("focus",e)}),this.$selection.on("focusout",".select2-search--inline",function(e){o._handleBlur(e)}),this.$selection.on("keydown",".select2-search--inline",function(e){if(e.stopPropagation(),o.trigger("keypress",e),o._keyUpPrevented=e.isDefaultPrevented(),e.which===n.BACKSPACE&&""===o.$search.val()){var i=o.$searchContainer.prev(".select2-selection__choice");if(i.length>0){var r=t.GetData(i[0],"data");o.searchRemoveChoice(r),e.preventDefault()}}});var s=document.documentMode,a=s&&s<=11;this.$selection.on("input.searchcheck",".select2-search--inline",function(e){a?o.$selection.off("input.search input.searchcheck"):o.$selection.off("keyup.search")}),this.$selection.on("keyup.search input.search",".select2-search--inline",function(e){if(a&&"input"===e.type)o.$selection.off("input.search input.searchcheck");else{var t=e.which;t!=n.SHIFT&&t!=n.CTRL&&t!=n.ALT&&t!=n.TAB&&o.handleSearch(e)}})},i.prototype._transferTabIndex=function(e){this.$search.attr("tabindex",this.$selection.attr("tabindex")),this.$selection.attr("tabindex","-1")},i.prototype.createPlaceholder=function(e,t){this.$search.attr("placeholder",t.text)},i.prototype.update=function(e,t){var n=this.$search[0]==document.activeElement;(this.$search.attr("placeholder",""),e.call(this,t),this.$selection.find(".select2-selection__rendered").append(this.$searchContainer),this.resizeSearch(),n)&&(this.$element.find("[data-select2-tag]").length?this.$element.focus():this.$search.focus())},i.prototype.handleSearch=function(){if(this.resizeSearch(),!this._keyUpPrevented){var e=this.$search.val();this.trigger("query",{term:e})}this._keyUpPrevented=!1},i.prototype.searchRemoveChoice=function(e,t){this.trigger("unselect",{data:t}),this.$search.val(t.text),this.handleSearch()},i.prototype.resizeSearch=function(){this.$search.css("width","25px");var e="";""!==this.$search.attr("placeholder")?e=this.$selection.find(".select2-selection__rendered").innerWidth():e=.75*(this.$search.val().length+1)+"em";this.$search.css("width",e)},i}),t.define("select2/selection/eventRelay",["jquery"],function(e){function t(){}return t.prototype.bind=function(t,n,i){var r=this,o=["open","opening","close","closing","select","selecting","unselect","unselecting","clear","clearing"],s=["opening","closing","selecting","unselecting","clearing"];t.call(this,n,i),n.on("*",function(t,n){if(-1!==e.inArray(t,o)){n=n||{};var i=e.Event("select2:"+t,{params:n});r.$element.trigger(i),-1!==e.inArray(t,s)&&(n.prevented=i.isDefaultPrevented())}})},t}),t.define("select2/translation",["jquery","require"],function(e,t){function n(e){this.dict=e||{}}return n.prototype.all=function(){return this.dict},n.prototype.get=function(e){return this.dict[e]},n.prototype.extend=function(t){this.dict=e.extend({},t.all(),this.dict)},n._cache={},n.loadPath=function(e){if(!(e in n._cache)){var i=t(e);n._cache[e]=i}return new n(n._cache[e])},n}),t.define("select2/diacritics",[],function(){return{"Ⓐ":"A","A":"A","À":"A","Á":"A","Â":"A","Ầ":"A","Ấ":"A","Ẫ":"A","Ẩ":"A","Ã":"A","Ā":"A","Ă":"A","Ằ":"A","Ắ":"A","Ẵ":"A","Ẳ":"A","Ȧ":"A","Ǡ":"A","Ä":"A","Ǟ":"A","Ả":"A","Å":"A","Ǻ":"A","Ǎ":"A","Ȁ":"A","Ȃ":"A","Ạ":"A","Ậ":"A","Ặ":"A","Ḁ":"A","Ą":"A","Ⱥ":"A","Ɐ":"A","Ꜳ":"AA","Æ":"AE","Ǽ":"AE","Ǣ":"AE","Ꜵ":"AO","Ꜷ":"AU","Ꜹ":"AV","Ꜻ":"AV","Ꜽ":"AY","Ⓑ":"B","B":"B","Ḃ":"B","Ḅ":"B","Ḇ":"B","Ƀ":"B","Ƃ":"B","Ɓ":"B","Ⓒ":"C","C":"C","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","Ç":"C","Ḉ":"C","Ƈ":"C","Ȼ":"C","Ꜿ":"C","Ⓓ":"D","D":"D","Ḋ":"D","Ď":"D","Ḍ":"D","Ḑ":"D","Ḓ":"D","Ḏ":"D","Đ":"D","Ƌ":"D","Ɗ":"D","Ɖ":"D","Ꝺ":"D","DZ":"DZ","DŽ":"DZ","Dz":"Dz","Dž":"Dz","Ⓔ":"E","E":"E","È":"E","É":"E","Ê":"E","Ề":"E","Ế":"E","Ễ":"E","Ể":"E","Ẽ":"E","Ē":"E","Ḕ":"E","Ḗ":"E","Ĕ":"E","Ė":"E","Ë":"E","Ẻ":"E","Ě":"E","Ȅ":"E","Ȇ":"E","Ẹ":"E","Ệ":"E","Ȩ":"E","Ḝ":"E","Ę":"E","Ḙ":"E","Ḛ":"E","Ɛ":"E","Ǝ":"E","Ⓕ":"F","F":"F","Ḟ":"F","Ƒ":"F","Ꝼ":"F","Ⓖ":"G","G":"G","Ǵ":"G","Ĝ":"G","Ḡ":"G","Ğ":"G","Ġ":"G","Ǧ":"G","Ģ":"G","Ǥ":"G","Ɠ":"G","Ꞡ":"G","Ᵹ":"G","Ꝿ":"G","Ⓗ":"H","H":"H","Ĥ":"H","Ḣ":"H","Ḧ":"H","Ȟ":"H","Ḥ":"H","Ḩ":"H","Ḫ":"H","Ħ":"H","Ⱨ":"H","Ⱶ":"H","Ɥ":"H","Ⓘ":"I","I":"I","Ì":"I","Í":"I","Î":"I","Ĩ":"I","Ī":"I","Ĭ":"I","İ":"I","Ï":"I","Ḯ":"I","Ỉ":"I","Ǐ":"I","Ȉ":"I","Ȋ":"I","Ị":"I","Į":"I","Ḭ":"I","Ɨ":"I","Ⓙ":"J","J":"J","Ĵ":"J","Ɉ":"J","Ⓚ":"K","K":"K","Ḱ":"K","Ǩ":"K","Ḳ":"K","Ķ":"K","Ḵ":"K","Ƙ":"K","Ⱪ":"K","Ꝁ":"K","Ꝃ":"K","Ꝅ":"K","Ꞣ":"K","Ⓛ":"L","L":"L","Ŀ":"L","Ĺ":"L","Ľ":"L","Ḷ":"L","Ḹ":"L","Ļ":"L","Ḽ":"L","Ḻ":"L","Ł":"L","Ƚ":"L","Ɫ":"L","Ⱡ":"L","Ꝉ":"L","Ꝇ":"L","Ꞁ":"L","LJ":"LJ","Lj":"Lj","Ⓜ":"M","M":"M","Ḿ":"M","Ṁ":"M","Ṃ":"M","Ɱ":"M","Ɯ":"M","Ⓝ":"N","N":"N","Ǹ":"N","Ń":"N","Ñ":"N","Ṅ":"N","Ň":"N","Ṇ":"N","Ņ":"N","Ṋ":"N","Ṉ":"N","Ƞ":"N","Ɲ":"N","Ꞑ":"N","Ꞥ":"N","NJ":"NJ","Nj":"Nj","Ⓞ":"O","O":"O","Ò":"O","Ó":"O","Ô":"O","Ồ":"O","Ố":"O","Ỗ":"O","Ổ":"O","Õ":"O","Ṍ":"O","Ȭ":"O","Ṏ":"O","Ō":"O","Ṑ":"O","Ṓ":"O","Ŏ":"O","Ȯ":"O","Ȱ":"O","Ö":"O","Ȫ":"O","Ỏ":"O","Ő":"O","Ǒ":"O","Ȍ":"O","Ȏ":"O","Ơ":"O","Ờ":"O","Ớ":"O","Ỡ":"O","Ở":"O","Ợ":"O","Ọ":"O","Ộ":"O","Ǫ":"O","Ǭ":"O","Ø":"O","Ǿ":"O","Ɔ":"O","Ɵ":"O","Ꝋ":"O","Ꝍ":"O","Ƣ":"OI","Ꝏ":"OO","Ȣ":"OU","Ⓟ":"P","P":"P","Ṕ":"P","Ṗ":"P","Ƥ":"P","Ᵽ":"P","Ꝑ":"P","Ꝓ":"P","Ꝕ":"P","Ⓠ":"Q","Q":"Q","Ꝗ":"Q","Ꝙ":"Q","Ɋ":"Q","Ⓡ":"R","R":"R","Ŕ":"R","Ṙ":"R","Ř":"R","Ȑ":"R","Ȓ":"R","Ṛ":"R","Ṝ":"R","Ŗ":"R","Ṟ":"R","Ɍ":"R","Ɽ":"R","Ꝛ":"R","Ꞧ":"R","Ꞃ":"R","Ⓢ":"S","S":"S","ẞ":"S","Ś":"S","Ṥ":"S","Ŝ":"S","Ṡ":"S","Š":"S","Ṧ":"S","Ṣ":"S","Ṩ":"S","Ș":"S","Ş":"S","Ȿ":"S","Ꞩ":"S","Ꞅ":"S","Ⓣ":"T","T":"T","Ṫ":"T","Ť":"T","Ṭ":"T","Ț":"T","Ţ":"T","Ṱ":"T","Ṯ":"T","Ŧ":"T","Ƭ":"T","Ʈ":"T","Ⱦ":"T","Ꞇ":"T","Ꜩ":"TZ","Ⓤ":"U","U":"U","Ù":"U","Ú":"U","Û":"U","Ũ":"U","Ṹ":"U","Ū":"U","Ṻ":"U","Ŭ":"U","Ü":"U","Ǜ":"U","Ǘ":"U","Ǖ":"U","Ǚ":"U","Ủ":"U","Ů":"U","Ű":"U","Ǔ":"U","Ȕ":"U","Ȗ":"U","Ư":"U","Ừ":"U","Ứ":"U","Ữ":"U","Ử":"U","Ự":"U","Ụ":"U","Ṳ":"U","Ų":"U","Ṷ":"U","Ṵ":"U","Ʉ":"U","Ⓥ":"V","V":"V","Ṽ":"V","Ṿ":"V","Ʋ":"V","Ꝟ":"V","Ʌ":"V","Ꝡ":"VY","Ⓦ":"W","W":"W","Ẁ":"W","Ẃ":"W","Ŵ":"W","Ẇ":"W","Ẅ":"W","Ẉ":"W","Ⱳ":"W","Ⓧ":"X","X":"X","Ẋ":"X","Ẍ":"X","Ⓨ":"Y","Y":"Y","Ỳ":"Y","Ý":"Y","Ŷ":"Y","Ỹ":"Y","Ȳ":"Y","Ẏ":"Y","Ÿ":"Y","Ỷ":"Y","Ỵ":"Y","Ƴ":"Y","Ɏ":"Y","Ỿ":"Y","Ⓩ":"Z","Z":"Z","Ź":"Z","Ẑ":"Z","Ż":"Z","Ž":"Z","Ẓ":"Z","Ẕ":"Z","Ƶ":"Z","Ȥ":"Z","Ɀ":"Z","Ⱬ":"Z","Ꝣ":"Z","ⓐ":"a","a":"a","ẚ":"a","à":"a","á":"a","â":"a","ầ":"a","ấ":"a","ẫ":"a","ẩ":"a","ã":"a","ā":"a","ă":"a","ằ":"a","ắ":"a","ẵ":"a","ẳ":"a","ȧ":"a","ǡ":"a","ä":"a","ǟ":"a","ả":"a","å":"a","ǻ":"a","ǎ":"a","ȁ":"a","ȃ":"a","ạ":"a","ậ":"a","ặ":"a","ḁ":"a","ą":"a","ⱥ":"a","ɐ":"a","ꜳ":"aa","æ":"ae","ǽ":"ae","ǣ":"ae","ꜵ":"ao","ꜷ":"au","ꜹ":"av","ꜻ":"av","ꜽ":"ay","ⓑ":"b","b":"b","ḃ":"b","ḅ":"b","ḇ":"b","ƀ":"b","ƃ":"b","ɓ":"b","ⓒ":"c","c":"c","ć":"c","ĉ":"c","ċ":"c","č":"c","ç":"c","ḉ":"c","ƈ":"c","ȼ":"c","ꜿ":"c","ↄ":"c","ⓓ":"d","d":"d","ḋ":"d","ď":"d","ḍ":"d","ḑ":"d","ḓ":"d","ḏ":"d","đ":"d","ƌ":"d","ɖ":"d","ɗ":"d","ꝺ":"d","dz":"dz","dž":"dz","ⓔ":"e","e":"e","è":"e","é":"e","ê":"e","ề":"e","ế":"e","ễ":"e","ể":"e","ẽ":"e","ē":"e","ḕ":"e","ḗ":"e","ĕ":"e","ė":"e","ë":"e","ẻ":"e","ě":"e","ȅ":"e","ȇ":"e","ẹ":"e","ệ":"e","ȩ":"e","ḝ":"e","ę":"e","ḙ":"e","ḛ":"e","ɇ":"e","ɛ":"e","ǝ":"e","ⓕ":"f","f":"f","ḟ":"f","ƒ":"f","ꝼ":"f","ⓖ":"g","g":"g","ǵ":"g","ĝ":"g","ḡ":"g","ğ":"g","ġ":"g","ǧ":"g","ģ":"g","ǥ":"g","ɠ":"g","ꞡ":"g","ᵹ":"g","ꝿ":"g","ⓗ":"h","h":"h","ĥ":"h","ḣ":"h","ḧ":"h","ȟ":"h","ḥ":"h","ḩ":"h","ḫ":"h","ẖ":"h","ħ":"h","ⱨ":"h","ⱶ":"h","ɥ":"h","ƕ":"hv","ⓘ":"i","i":"i","ì":"i","í":"i","î":"i","ĩ":"i","ī":"i","ĭ":"i","ï":"i","ḯ":"i","ỉ":"i","ǐ":"i","ȉ":"i","ȋ":"i","ị":"i","į":"i","ḭ":"i","ɨ":"i","ı":"i","ⓙ":"j","j":"j","ĵ":"j","ǰ":"j","ɉ":"j","ⓚ":"k","k":"k","ḱ":"k","ǩ":"k","ḳ":"k","ķ":"k","ḵ":"k","ƙ":"k","ⱪ":"k","ꝁ":"k","ꝃ":"k","ꝅ":"k","ꞣ":"k","ⓛ":"l","l":"l","ŀ":"l","ĺ":"l","ľ":"l","ḷ":"l","ḹ":"l","ļ":"l","ḽ":"l","ḻ":"l","ſ":"l","ł":"l","ƚ":"l","ɫ":"l","ⱡ":"l","ꝉ":"l","ꞁ":"l","ꝇ":"l","lj":"lj","ⓜ":"m","m":"m","ḿ":"m","ṁ":"m","ṃ":"m","ɱ":"m","ɯ":"m","ⓝ":"n","n":"n","ǹ":"n","ń":"n","ñ":"n","ṅ":"n","ň":"n","ṇ":"n","ņ":"n","ṋ":"n","ṉ":"n","ƞ":"n","ɲ":"n","ʼn":"n","ꞑ":"n","ꞥ":"n","nj":"nj","ⓞ":"o","o":"o","ò":"o","ó":"o","ô":"o","ồ":"o","ố":"o","ỗ":"o","ổ":"o","õ":"o","ṍ":"o","ȭ":"o","ṏ":"o","ō":"o","ṑ":"o","ṓ":"o","ŏ":"o","ȯ":"o","ȱ":"o","ö":"o","ȫ":"o","ỏ":"o","ő":"o","ǒ":"o","ȍ":"o","ȏ":"o","ơ":"o","ờ":"o","ớ":"o","ỡ":"o","ở":"o","ợ":"o","ọ":"o","ộ":"o","ǫ":"o","ǭ":"o","ø":"o","ǿ":"o","ɔ":"o","ꝋ":"o","ꝍ":"o","ɵ":"o","ƣ":"oi","ȣ":"ou","ꝏ":"oo","ⓟ":"p","p":"p","ṕ":"p","ṗ":"p","ƥ":"p","ᵽ":"p","ꝑ":"p","ꝓ":"p","ꝕ":"p","ⓠ":"q","q":"q","ɋ":"q","ꝗ":"q","ꝙ":"q","ⓡ":"r","r":"r","ŕ":"r","ṙ":"r","ř":"r","ȑ":"r","ȓ":"r","ṛ":"r","ṝ":"r","ŗ":"r","ṟ":"r","ɍ":"r","ɽ":"r","ꝛ":"r","ꞧ":"r","ꞃ":"r","ⓢ":"s","s":"s","ß":"s","ś":"s","ṥ":"s","ŝ":"s","ṡ":"s","š":"s","ṧ":"s","ṣ":"s","ṩ":"s","ș":"s","ş":"s","ȿ":"s","ꞩ":"s","ꞅ":"s","ẛ":"s","ⓣ":"t","t":"t","ṫ":"t","ẗ":"t","ť":"t","ṭ":"t","ț":"t","ţ":"t","ṱ":"t","ṯ":"t","ŧ":"t","ƭ":"t","ʈ":"t","ⱦ":"t","ꞇ":"t","ꜩ":"tz","ⓤ":"u","u":"u","ù":"u","ú":"u","û":"u","ũ":"u","ṹ":"u","ū":"u","ṻ":"u","ŭ":"u","ü":"u","ǜ":"u","ǘ":"u","ǖ":"u","ǚ":"u","ủ":"u","ů":"u","ű":"u","ǔ":"u","ȕ":"u","ȗ":"u","ư":"u","ừ":"u","ứ":"u","ữ":"u","ử":"u","ự":"u","ụ":"u","ṳ":"u","ų":"u","ṷ":"u","ṵ":"u","ʉ":"u","ⓥ":"v","v":"v","ṽ":"v","ṿ":"v","ʋ":"v","ꝟ":"v","ʌ":"v","ꝡ":"vy","ⓦ":"w","w":"w","ẁ":"w","ẃ":"w","ŵ":"w","ẇ":"w","ẅ":"w","ẘ":"w","ẉ":"w","ⱳ":"w","ⓧ":"x","x":"x","ẋ":"x","ẍ":"x","ⓨ":"y","y":"y","ỳ":"y","ý":"y","ŷ":"y","ỹ":"y","ȳ":"y","ẏ":"y","ÿ":"y","ỷ":"y","ẙ":"y","ỵ":"y","ƴ":"y","ɏ":"y","ỿ":"y","ⓩ":"z","z":"z","ź":"z","ẑ":"z","ż":"z","ž":"z","ẓ":"z","ẕ":"z","ƶ":"z","ȥ":"z","ɀ":"z","ⱬ":"z","ꝣ":"z","Ά":"Α","Έ":"Ε","Ή":"Η","Ί":"Ι","Ϊ":"Ι","Ό":"Ο","Ύ":"Υ","Ϋ":"Υ","Ώ":"Ω","ά":"α","έ":"ε","ή":"η","ί":"ι","ϊ":"ι","ΐ":"ι","ό":"ο","ύ":"υ","ϋ":"υ","ΰ":"υ","ω":"ω","ς":"σ"}}),t.define("select2/data/base",["../utils"],function(e){function t(e,n){t.__super__.constructor.call(this)}return e.Extend(t,e.Observable),t.prototype.current=function(e){throw new Error("The `current` method must be defined in child classes.")},t.prototype.query=function(e,t){throw new Error("The `query` method must be defined in child classes.")},t.prototype.bind=function(e,t){},t.prototype.destroy=function(){},t.prototype.generateResultId=function(t,n){var i=t.id+"-result-";return i+=e.generateChars(4),null!=n.id?i+="-"+n.id.toString():i+="-"+e.generateChars(4),i},t}),t.define("select2/data/select",["./base","../utils","jquery"],function(e,t,n){function i(e,t){this.$element=e,this.options=t,i.__super__.constructor.call(this)}return t.Extend(i,e),i.prototype.current=function(e){var t=[],i=this;this.$element.find(":selected").each(function(){var e=n(this),r=i.item(e);t.push(r)}),e(t)},i.prototype.select=function(e){var t=this;if(e.selected=!0,n(e.element).is("option"))return e.element.selected=!0,void this.$element.trigger("change");if(this.$element.prop("multiple"))this.current(function(i){var r=[];(e=[e]).push.apply(e,i);for(var o=0;o<e.length;o++){var s=e[o].id;-1===n.inArray(s,r)&&r.push(s)}t.$element.val(r),t.$element.trigger("change")});else{var i=e.id;this.$element.val(i),this.$element.trigger("change")}},i.prototype.unselect=function(e){var t=this;if(this.$element.prop("multiple")){if(e.selected=!1,n(e.element).is("option"))return e.element.selected=!1,void this.$element.trigger("change");this.current(function(i){for(var r=[],o=0;o<i.length;o++){var s=i[o].id;s!==e.id&&-1===n.inArray(s,r)&&r.push(s)}t.$element.val(r),t.$element.trigger("change")})}},i.prototype.bind=function(e,t){var n=this;this.container=e,e.on("select",function(e){n.select(e.data)}),e.on("unselect",function(e){n.unselect(e.data)})},i.prototype.destroy=function(){this.$element.find("*").each(function(){t.RemoveData(this)})},i.prototype.query=function(e,t){var i=[],r=this;this.$element.children().each(function(){var t=n(this);if(t.is("option")||t.is("optgroup")){var o=r.item(t),s=r.matches(e,o);null!==s&&i.push(s)}}),t({results:i})},i.prototype.addOptions=function(e){t.appendMany(this.$element,e)},i.prototype.option=function(e){var i;e.children?(i=document.createElement("optgroup")).label=e.text:void 0!==(i=document.createElement("option")).textContent?i.textContent=e.text:i.innerText=e.text,void 0!==e.id&&(i.value=e.id),e.disabled&&(i.disabled=!0),e.selected&&(i.selected=!0),e.title&&(i.title=e.title);var r=n(i),o=this._normalizeItem(e);return o.element=i,t.StoreData(i,"data",o),r},i.prototype.item=function(e){var i={};if(null!=(i=t.GetData(e[0],"data")))return i;if(e.is("option"))i={id:e.val(),text:e.text(),disabled:e.prop("disabled"),selected:e.prop("selected"),title:e.prop("title")};else if(e.is("optgroup")){i={text:e.prop("label"),children:[],title:e.prop("title")};for(var r=e.children("option"),o=[],s=0;s<r.length;s++){var a=n(r[s]),l=this.item(a);o.push(l)}i.children=o}return(i=this._normalizeItem(i)).element=e[0],t.StoreData(e[0],"data",i),i},i.prototype._normalizeItem=function(e){e!==Object(e)&&(e={id:e,text:e});return null!=(e=n.extend({},{text:""},e)).id&&(e.id=e.id.toString()),null!=e.text&&(e.text=e.text.toString()),null==e._resultId&&e.id&&null!=this.container&&(e._resultId=this.generateResultId(this.container,e)),n.extend({},{selected:!1,disabled:!1},e)},i.prototype.matches=function(e,t){return this.options.get("matcher")(e,t)},i}),t.define("select2/data/array",["./select","../utils","jquery"],function(e,t,n){function i(e,t){var n=t.get("data")||[];i.__super__.constructor.call(this,e,t),this.addOptions(this.convertToOptions(n))}return t.Extend(i,e),i.prototype.select=function(e){var t=this.$element.find("option").filter(function(t,n){return n.value==e.id.toString()});0===t.length&&(t=this.option(e),this.addOptions(t)),i.__super__.select.call(this,e)},i.prototype.convertToOptions=function(e){var i=this,r=this.$element.find("option"),o=r.map(function(){return i.item(n(this)).id}).get(),s=[];function a(e){return function(){return n(this).val()==e.id}}for(var l=0;l<e.length;l++){var c=this._normalizeItem(e[l]);if(n.inArray(c.id,o)>=0){var u=r.filter(a(c)),d=this.item(u),p=n.extend(!0,{},c,d),h=this.option(p);u.replaceWith(h)}else{var f=this.option(c);if(c.children){var g=this.convertToOptions(c.children);t.appendMany(f,g)}s.push(f)}}return s},i}),t.define("select2/data/ajax",["./array","../utils","jquery"],function(e,t,n){function i(e,t){this.ajaxOptions=this._applyDefaults(t.get("ajax")),null!=this.ajaxOptions.processResults&&(this.processResults=this.ajaxOptions.processResults),i.__super__.constructor.call(this,e,t)}return t.Extend(i,e),i.prototype._applyDefaults=function(e){var t={data:function(e){return n.extend({},e,{q:e.term})},transport:function(e,t,i){var r=n.ajax(e);return r.then(t),r.fail(i),r}};return n.extend({},t,e,!0)},i.prototype.processResults=function(e){return e},i.prototype.query=function(e,t){var i=this;null!=this._request&&(n.isFunction(this._request.abort)&&this._request.abort(),this._request=null);var r=n.extend({type:"GET"},this.ajaxOptions);function o(){var o=r.transport(r,function(r){var o=i.processResults(r,e);i.options.get("debug")&&window.console&&console.error&&(o&&o.results&&n.isArray(o.results)||console.error("Select2: The AJAX results did not return an array in the `results` key of the response.")),t(o)},function(){"status"in o&&(0===o.status||"0"===o.status)||i.trigger("results:message",{message:"errorLoading"})});i._request=o}"function"==typeof r.url&&(r.url=r.url.call(this.$element,e)),"function"==typeof r.data&&(r.data=r.data.call(this.$element,e)),this.ajaxOptions.delay&&null!=e.term?(this._queryTimeout&&window.clearTimeout(this._queryTimeout),this._queryTimeout=window.setTimeout(o,this.ajaxOptions.delay)):o()},i}),t.define("select2/data/tags",["jquery"],function(e){function t(t,n,i){var r=i.get("tags"),o=i.get("createTag");void 0!==o&&(this.createTag=o);var s=i.get("insertTag");if(void 0!==s&&(this.insertTag=s),t.call(this,n,i),e.isArray(r))for(var a=0;a<r.length;a++){var l=r[a],c=this._normalizeItem(l),u=this.option(c);this.$element.append(u)}}return t.prototype.query=function(e,t,n){var i=this;this._removeOldTags(),null!=t.term&&null==t.page?e.call(this,t,function e(r,o){for(var s=r.results,a=0;a<s.length;a++){var l=s[a],c=null!=l.children&&!e({results:l.children},!0);if((l.text||"").toUpperCase()===(t.term||"").toUpperCase()||c)return!o&&(r.data=s,void n(r))}if(o)return!0;var u=i.createTag(t);if(null!=u){var d=i.option(u);d.attr("data-select2-tag",!0),i.addOptions([d]),i.insertTag(s,u)}r.results=s,n(r)}):e.call(this,t,n)},t.prototype.createTag=function(t,n){var i=e.trim(n.term);return""===i?null:{id:i,text:i}},t.prototype.insertTag=function(e,t,n){t.unshift(n)},t.prototype._removeOldTags=function(t){this._lastTag;this.$element.find("option[data-select2-tag]").each(function(){this.selected||e(this).remove()})},t}),t.define("select2/data/tokenizer",["jquery"],function(e){function t(e,t,n){var i=n.get("tokenizer");void 0!==i&&(this.tokenizer=i),e.call(this,t,n)}return t.prototype.bind=function(e,t,n){e.call(this,t,n),this.$search=t.dropdown.$search||t.selection.$search||n.find(".select2-search__field")},t.prototype.query=function(t,n,i){var r=this;n.term=n.term||"";var o=this.tokenizer(n,this.options,function(t){var n,i=r._normalizeItem(t);if(!r.$element.find("option").filter(function(){return e(this).val()===i.id}).length){var o=r.option(i);o.attr("data-select2-tag",!0),r._removeOldTags(),r.addOptions([o])}n=i,r.trigger("select",{data:n})});o.term!==n.term&&(this.$search.length&&(this.$search.val(o.term),this.$search.focus()),n.term=o.term),t.call(this,n,i)},t.prototype.tokenizer=function(t,n,i,r){for(var o=i.get("tokenSeparators")||[],s=n.term,a=0,l=this.createTag||function(e){return{id:e.term,text:e.term}};a<s.length;){var c=s[a];if(-1!==e.inArray(c,o)){var u=s.substr(0,a),d=l(e.extend({},n,{term:u}));null!=d?(r(d),s=s.substr(a+1)||"",a=0):a++}else a++}return{term:s}},t}),t.define("select2/data/minimumInputLength",[],function(){function e(e,t,n){this.minimumInputLength=n.get("minimumInputLength"),e.call(this,t,n)}return e.prototype.query=function(e,t,n){t.term=t.term||"",t.term.length<this.minimumInputLength?this.trigger("results:message",{message:"inputTooShort",args:{minimum:this.minimumInputLength,input:t.term,params:t}}):e.call(this,t,n)},e}),t.define("select2/data/maximumInputLength",[],function(){function e(e,t,n){this.maximumInputLength=n.get("maximumInputLength"),e.call(this,t,n)}return e.prototype.query=function(e,t,n){t.term=t.term||"",this.maximumInputLength>0&&t.term.length>this.maximumInputLength?this.trigger("results:message",{message:"inputTooLong",args:{maximum:this.maximumInputLength,input:t.term,params:t}}):e.call(this,t,n)},e}),t.define("select2/data/maximumSelectionLength",[],function(){function e(e,t,n){this.maximumSelectionLength=n.get("maximumSelectionLength"),e.call(this,t,n)}return e.prototype.query=function(e,t,n){var i=this;this.current(function(r){var o=null!=r?r.length:0;i.maximumSelectionLength>0&&o>=i.maximumSelectionLength?i.trigger("results:message",{message:"maximumSelected",args:{maximum:i.maximumSelectionLength}}):e.call(i,t,n)})},e}),t.define("select2/dropdown",["jquery","./utils"],function(e,t){function n(e,t){this.$element=e,this.options=t,n.__super__.constructor.call(this)}return t.Extend(n,t.Observable),n.prototype.render=function(){var t=e('<span class="select2-dropdown"><span class="select2-results"></span></span>');return t.attr("dir",this.options.get("dir")),this.$dropdown=t,t},n.prototype.bind=function(){},n.prototype.position=function(e,t){},n.prototype.destroy=function(){this.$dropdown.remove()},n}),t.define("select2/dropdown/search",["jquery","../utils"],function(e,t){function n(){}return n.prototype.render=function(t){var n=t.call(this),i=e('<span class="select2-search select2-search--dropdown"><input class="select2-search__field" type="search" tabindex="-1" autocomplete="off" autocorrect="off" autocapitalize="none" spellcheck="false" role="textbox" /></span>');return this.$searchContainer=i,this.$search=i.find("input"),n.prepend(i),n},n.prototype.bind=function(t,n,i){var r=this;t.call(this,n,i),this.$search.on("keydown",function(e){r.trigger("keypress",e),r._keyUpPrevented=e.isDefaultPrevented()}),this.$search.on("input",function(t){e(this).off("keyup")}),this.$search.on("keyup input",function(e){r.handleSearch(e)}),n.on("open",function(){r.$search.attr("tabindex",0),r.$search.focus(),window.setTimeout(function(){r.$search.focus()},0)}),n.on("close",function(){r.$search.attr("tabindex",-1),r.$search.val(""),r.$search.blur()}),n.on("focus",function(){n.isOpen()||r.$search.focus()}),n.on("results:all",function(e){null!=e.query.term&&""!==e.query.term||(r.showSearch(e)?r.$searchContainer.removeClass("select2-search--hide"):r.$searchContainer.addClass("select2-search--hide"))})},n.prototype.handleSearch=function(e){if(!this._keyUpPrevented){var t=this.$search.val();this.trigger("query",{term:t})}this._keyUpPrevented=!1},n.prototype.showSearch=function(e,t){return!0},n}),t.define("select2/dropdown/hidePlaceholder",[],function(){function e(e,t,n,i){this.placeholder=this.normalizePlaceholder(n.get("placeholder")),e.call(this,t,n,i)}return e.prototype.append=function(e,t){t.results=this.removePlaceholder(t.results),e.call(this,t)},e.prototype.normalizePlaceholder=function(e,t){return"string"==typeof t&&(t={id:"",text:t}),t},e.prototype.removePlaceholder=function(e,t){for(var n=t.slice(0),i=t.length-1;i>=0;i--){var r=t[i];this.placeholder.id===r.id&&n.splice(i,1)}return n},e}),t.define("select2/dropdown/infiniteScroll",["jquery"],function(e){function t(e,t,n,i){this.lastParams={},e.call(this,t,n,i),this.$loadingMore=this.createLoadingMore(),this.loading=!1}return t.prototype.append=function(e,t){this.$loadingMore.remove(),this.loading=!1,e.call(this,t),this.showLoadingMore(t)&&this.$results.append(this.$loadingMore)},t.prototype.bind=function(t,n,i){var r=this;t.call(this,n,i),n.on("query",function(e){r.lastParams=e,r.loading=!0}),n.on("query:append",function(e){r.lastParams=e,r.loading=!0}),this.$results.on("scroll",function(){var t=e.contains(document.documentElement,r.$loadingMore[0]);!r.loading&&t&&(r.$results.offset().top+r.$results.outerHeight(!1)+50>=r.$loadingMore.offset().top+r.$loadingMore.outerHeight(!1)&&r.loadMore())})},t.prototype.loadMore=function(){this.loading=!0;var t=e.extend({},{page:1},this.lastParams);t.page++,this.trigger("query:append",t)},t.prototype.showLoadingMore=function(e,t){return t.pagination&&t.pagination.more},t.prototype.createLoadingMore=function(){var t=e('<li class="select2-results__option select2-results__option--load-more"role="treeitem" aria-disabled="true"></li>'),n=this.options.get("translations").get("loadingMore");return t.html(n(this.lastParams)),t},t}),t.define("select2/dropdown/attachBody",["jquery","../utils"],function(e,t){function n(t,n,i){this.$dropdownParent=i.get("dropdownParent")||e(document.body),t.call(this,n,i)}return n.prototype.bind=function(e,t,n){var i=this,r=!1;e.call(this,t,n),t.on("open",function(){i._showDropdown(),i._attachPositioningHandler(t),r||(r=!0,t.on("results:all",function(){i._positionDropdown(),i._resizeDropdown()}),t.on("results:append",function(){i._positionDropdown(),i._resizeDropdown()}))}),t.on("close",function(){i._hideDropdown(),i._detachPositioningHandler(t)}),this.$dropdownContainer.on("mousedown",function(e){e.stopPropagation()})},n.prototype.destroy=function(e){e.call(this),this.$dropdownContainer.remove()},n.prototype.position=function(e,t,n){t.attr("class",n.attr("class")),t.removeClass("select2"),t.addClass("select2-container--open"),t.css({position:"absolute",top:-999999}),this.$container=n},n.prototype.render=function(t){var n=e("<span></span>"),i=t.call(this);return n.append(i),this.$dropdownContainer=n,n},n.prototype._hideDropdown=function(e){this.$dropdownContainer.detach()},n.prototype._attachPositioningHandler=function(n,i){var r=this,o="scroll.select2."+i.id,s="resize.select2."+i.id,a="orientationchange.select2."+i.id,l=this.$container.parents().filter(t.hasScroll);l.each(function(){t.StoreData(this,"select2-scroll-position",{x:e(this).scrollLeft(),y:e(this).scrollTop()})}),l.on(o,function(e){r._positionDropdown()}),e(window).on(o+" "+s+" "+a,function(e){r._positionDropdown(),r._resizeDropdown()})},n.prototype._detachPositioningHandler=function(n,i){var r="scroll.select2."+i.id,o="resize.select2."+i.id,s="orientationchange.select2."+i.id;this.$container.parents().filter(t.hasScroll).off(r),e(window).off(r+" "+o+" "+s)},n.prototype._positionDropdown=function(){var t=e(window),n=this.$dropdown.hasClass("select2-dropdown--above"),i=this.$dropdown.hasClass("select2-dropdown--below"),r=null,o=this.$container.offset();o.bottom=o.top+this.$container.outerHeight(!1);var s={height:this.$container.outerHeight(!1)};s.top=o.top,s.bottom=o.top+s.height;var a=this.$dropdown.outerHeight(!1),l=t.scrollTop(),c=t.scrollTop()+t.height(),u=l<o.top-a,d=c>o.bottom+a,p={left:o.left,top:s.bottom},h=this.$dropdownParent;"static"===h.css("position")&&(h=h.offsetParent());var f=h.offset();p.top-=f.top,p.left-=f.left,n||i||(r="below"),d||!u||n?!u&&d&&n&&(r="below"):r="above",("above"==r||n&&"below"!==r)&&(p.top=s.top-f.top-a),null!=r&&(this.$dropdown.removeClass("select2-dropdown--below select2-dropdown--above").addClass("select2-dropdown--"+r),this.$container.removeClass("select2-container--below select2-container--above").addClass("select2-container--"+r)),this.$dropdownContainer.css(p)},n.prototype._resizeDropdown=function(){var e={width:this.$container.outerWidth(!1)+"px"};this.options.get("dropdownAutoWidth")&&(e.minWidth=e.width,e.position="relative",e.width="auto"),this.$dropdown.css(e)},n.prototype._showDropdown=function(e){this.$dropdownContainer.appendTo(this.$dropdownParent),this._positionDropdown(),this._resizeDropdown()},n}),t.define("select2/dropdown/minimumResultsForSearch",[],function(){function e(e,t,n,i){this.minimumResultsForSearch=n.get("minimumResultsForSearch"),this.minimumResultsForSearch<0&&(this.minimumResultsForSearch=1/0),e.call(this,t,n,i)}return e.prototype.showSearch=function(e,t){return!(function e(t){for(var n=0,i=0;i<t.length;i++){var r=t[i];r.children?n+=e(r.children):n++}return n}(t.data.results)<this.minimumResultsForSearch)&&e.call(this,t)},e}),t.define("select2/dropdown/selectOnClose",["../utils"],function(e){function t(){}return t.prototype.bind=function(e,t,n){var i=this;e.call(this,t,n),t.on("close",function(e){i._handleSelectOnClose(e)})},t.prototype._handleSelectOnClose=function(t,n){if(n&&null!=n.originalSelect2Event){var i=n.originalSelect2Event;if("select"===i._type||"unselect"===i._type)return}var r=this.getHighlightedResults();if(!(r.length<1)){var o=e.GetData(r[0],"data");null!=o.element&&o.element.selected||null==o.element&&o.selected||this.trigger("select",{data:o})}},t}),t.define("select2/dropdown/closeOnSelect",[],function(){function e(){}return e.prototype.bind=function(e,t,n){var i=this;e.call(this,t,n),t.on("select",function(e){i._selectTriggered(e)}),t.on("unselect",function(e){i._selectTriggered(e)})},e.prototype._selectTriggered=function(e,t){var n=t.originalEvent;n&&n.ctrlKey||this.trigger("close",{originalEvent:n,originalSelect2Event:t})},e}),t.define("select2/i18n/en",[],function(){return{errorLoading:function(){return"The results could not be loaded."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Please delete "+t+" character";return 1!=t&&(n+="s"),n},inputTooShort:function(e){return"Please enter "+(e.minimum-e.input.length)+" or more characters"},loadingMore:function(){return"Loading more results…"},maximumSelected:function(e){var t="You can only select "+e.maximum+" item";return 1!=e.maximum&&(t+="s"),t},noResults:function(){return"No results found"},searching:function(){return"Searching…"}}}),t.define("select2/defaults",["jquery","require","./results","./selection/single","./selection/multiple","./selection/placeholder","./selection/allowClear","./selection/search","./selection/eventRelay","./utils","./translation","./diacritics","./data/select","./data/array","./data/ajax","./data/tags","./data/tokenizer","./data/minimumInputLength","./data/maximumInputLength","./data/maximumSelectionLength","./dropdown","./dropdown/search","./dropdown/hidePlaceholder","./dropdown/infiniteScroll","./dropdown/attachBody","./dropdown/minimumResultsForSearch","./dropdown/selectOnClose","./dropdown/closeOnSelect","./i18n/en"],function(e,t,n,i,r,o,s,a,l,c,u,d,p,h,f,g,m,v,y,_,w,$,b,x,A,D,S,C,E){function O(){this.reset()}return O.prototype.apply=function(d){if(null==(d=e.extend(!0,{},this.defaults,d)).dataAdapter){if(null!=d.ajax?d.dataAdapter=f:null!=d.data?d.dataAdapter=h:d.dataAdapter=p,d.minimumInputLength>0&&(d.dataAdapter=c.Decorate(d.dataAdapter,v)),d.maximumInputLength>0&&(d.dataAdapter=c.Decorate(d.dataAdapter,y)),d.maximumSelectionLength>0&&(d.dataAdapter=c.Decorate(d.dataAdapter,_)),d.tags&&(d.dataAdapter=c.Decorate(d.dataAdapter,g)),null==d.tokenSeparators&&null==d.tokenizer||(d.dataAdapter=c.Decorate(d.dataAdapter,m)),null!=d.query){var E=t(d.amdBase+"compat/query");d.dataAdapter=c.Decorate(d.dataAdapter,E)}if(null!=d.initSelection){var O=t(d.amdBase+"compat/initSelection");d.dataAdapter=c.Decorate(d.dataAdapter,O)}}if(null==d.resultsAdapter&&(d.resultsAdapter=n,null!=d.ajax&&(d.resultsAdapter=c.Decorate(d.resultsAdapter,x)),null!=d.placeholder&&(d.resultsAdapter=c.Decorate(d.resultsAdapter,b)),d.selectOnClose&&(d.resultsAdapter=c.Decorate(d.resultsAdapter,S))),null==d.dropdownAdapter){if(d.multiple)d.dropdownAdapter=w;else{var q=c.Decorate(w,$);d.dropdownAdapter=q}if(0!==d.minimumResultsForSearch&&(d.dropdownAdapter=c.Decorate(d.dropdownAdapter,D)),d.closeOnSelect&&(d.dropdownAdapter=c.Decorate(d.dropdownAdapter,C)),null!=d.dropdownCssClass||null!=d.dropdownCss||null!=d.adaptDropdownCssClass){var T=t(d.amdBase+"compat/dropdownCss");d.dropdownAdapter=c.Decorate(d.dropdownAdapter,T)}d.dropdownAdapter=c.Decorate(d.dropdownAdapter,A)}if(null==d.selectionAdapter){if(d.multiple?d.selectionAdapter=r:d.selectionAdapter=i,null!=d.placeholder&&(d.selectionAdapter=c.Decorate(d.selectionAdapter,o)),d.allowClear&&(d.selectionAdapter=c.Decorate(d.selectionAdapter,s)),d.multiple&&(d.selectionAdapter=c.Decorate(d.selectionAdapter,a)),null!=d.containerCssClass||null!=d.containerCss||null!=d.adaptContainerCssClass){var j=t(d.amdBase+"compat/containerCss");d.selectionAdapter=c.Decorate(d.selectionAdapter,j)}d.selectionAdapter=c.Decorate(d.selectionAdapter,l)}if("string"==typeof d.language)if(d.language.indexOf("-")>0){var L=d.language.split("-")[0];d.language=[d.language,L]}else d.language=[d.language];if(e.isArray(d.language)){var k=new u;d.language.push("en");for(var P=d.language,I=0;I<P.length;I++){var M=P[I],R={};try{R=u.loadPath(M)}catch(e){try{M=this.defaults.amdLanguageBase+M,R=u.loadPath(M)}catch(e){d.debug&&window.console&&console.warn&&console.warn('Select2: The language file for "'+M+'" could not be automatically loaded. A fallback will be used instead.');continue}}k.extend(R)}d.translations=k}else{var U=u.loadPath(this.defaults.amdLanguageBase+"en"),z=new u(d.language);z.extend(U),d.translations=z}return d},O.prototype.reset=function(){function t(e){return e.replace(/[^\u0000-\u007E]/g,function(e){return d[e]||e})}this.defaults={amdBase:"./",amdLanguageBase:"./i18n/",closeOnSelect:!0,debug:!1,dropdownAutoWidth:!1,escapeMarkup:c.escapeMarkup,language:E,matcher:function n(i,r){if(""===e.trim(i.term))return r;if(r.children&&r.children.length>0){for(var o=e.extend(!0,{},r),s=r.children.length-1;s>=0;s--)null==n(i,r.children[s])&&o.children.splice(s,1);return o.children.length>0?o:n(i,o)}var a=t(r.text).toUpperCase(),l=t(i.term).toUpperCase();return a.indexOf(l)>-1?r:null},minimumInputLength:0,maximumInputLength:0,maximumSelectionLength:0,minimumResultsForSearch:0,selectOnClose:!1,sorter:function(e){return e},templateResult:function(e){return e.text},templateSelection:function(e){return e.text},theme:"default",width:"resolve"}},O.prototype.set=function(t,n){var i={};i[e.camelCase(t)]=n;var r=c._convertData(i);e.extend(!0,this.defaults,r)},new O}),t.define("select2/options",["require","jquery","./defaults","./utils"],function(e,t,n,i){function r(t,r){if(this.options=t,null!=r&&this.fromElement(r),this.options=n.apply(this.options),r&&r.is("input")){var o=e(this.get("amdBase")+"compat/inputData");this.options.dataAdapter=i.Decorate(this.options.dataAdapter,o)}}return r.prototype.fromElement=function(e){var n=["select2"];null==this.options.multiple&&(this.options.multiple=e.prop("multiple")),null==this.options.disabled&&(this.options.disabled=e.prop("disabled")),null==this.options.language&&(e.prop("lang")?this.options.language=e.prop("lang").toLowerCase():e.closest("[lang]").prop("lang")&&(this.options.language=e.closest("[lang]").prop("lang"))),null==this.options.dir&&(e.prop("dir")?this.options.dir=e.prop("dir"):e.closest("[dir]").prop("dir")?this.options.dir=e.closest("[dir]").prop("dir"):this.options.dir="ltr"),e.prop("disabled",this.options.disabled),e.prop("multiple",this.options.multiple),i.GetData(e[0],"select2Tags")&&(this.options.debug&&window.console&&console.warn&&console.warn('Select2: The `data-select2-tags` attribute has been changed to use the `data-data` and `data-tags="true"` attributes and will be removed in future versions of Select2.'),i.StoreData(e[0],"data",i.GetData(e[0],"select2Tags")),i.StoreData(e[0],"tags",!0)),i.GetData(e[0],"ajaxUrl")&&(this.options.debug&&window.console&&console.warn&&console.warn("Select2: The `data-ajax-url` attribute has been changed to `data-ajax--url` and support for the old attribute will be removed in future versions of Select2."),e.attr("ajax--url",i.GetData(e[0],"ajaxUrl")),i.StoreData(e[0],"ajax-Url",i.GetData(e[0],"ajaxUrl")));var r={};r=t.fn.jquery&&"1."==t.fn.jquery.substr(0,2)&&e[0].dataset?t.extend(!0,{},e[0].dataset,i.GetData(e[0])):i.GetData(e[0]);var o=t.extend(!0,{},r);for(var s in o=i._convertData(o))t.inArray(s,n)>-1||(t.isPlainObject(this.options[s])?t.extend(this.options[s],o[s]):this.options[s]=o[s]);return this},r.prototype.get=function(e){return this.options[e]},r.prototype.set=function(e,t){this.options[e]=t},r}),t.define("select2/core",["jquery","./options","./utils","./keys"],function(e,t,n,i){var r=function(e,i){null!=n.GetData(e[0],"select2")&&n.GetData(e[0],"select2").destroy(),this.$element=e,this.id=this._generateId(e),i=i||{},this.options=new t(i,e),r.__super__.constructor.call(this);var o=e.attr("tabindex")||0;n.StoreData(e[0],"old-tabindex",o),e.attr("tabindex","-1");var s=this.options.get("dataAdapter");this.dataAdapter=new s(e,this.options);var a=this.render();this._placeContainer(a);var l=this.options.get("selectionAdapter");this.selection=new l(e,this.options),this.$selection=this.selection.render(),this.selection.position(this.$selection,a);var c=this.options.get("dropdownAdapter");this.dropdown=new c(e,this.options),this.$dropdown=this.dropdown.render(),this.dropdown.position(this.$dropdown,a);var u=this.options.get("resultsAdapter");this.results=new u(e,this.options,this.dataAdapter),this.$results=this.results.render(),this.results.position(this.$results,this.$dropdown);var d=this;this._bindAdapters(),this._registerDomEvents(),this._registerDataEvents(),this._registerSelectionEvents(),this._registerDropdownEvents(),this._registerResultsEvents(),this._registerEvents(),this.dataAdapter.current(function(e){d.trigger("selection:update",{data:e})}),e.addClass("select2-hidden-accessible"),e.attr("aria-hidden","true"),this._syncAttributes(),n.StoreData(e[0],"select2",this),e.data("select2",this)};return n.Extend(r,n.Observable),r.prototype._generateId=function(e){return"select2-"+(null!=e.attr("id")?e.attr("id"):null!=e.attr("name")?e.attr("name")+"-"+n.generateChars(2):n.generateChars(4)).replace(/(:|\.|\[|\]|,)/g,"")},r.prototype._placeContainer=function(e){e.insertAfter(this.$element);var t=this._resolveWidth(this.$element,this.options.get("width"));null!=t&&e.css("width",t)},r.prototype._resolveWidth=function(e,t){var n=/^width:(([-+]?([0-9]*\.)?[0-9]+)(px|em|ex|%|in|cm|mm|pt|pc))/i;if("resolve"==t){var i=this._resolveWidth(e,"style");return null!=i?i:this._resolveWidth(e,"element")}if("element"==t){var r=e.outerWidth(!1);return r<=0?"auto":r+"px"}if("style"==t){var o=e.attr("style");if("string"!=typeof o)return null;for(var s=o.split(";"),a=0,l=s.length;a<l;a+=1){var c=s[a].replace(/\s/g,"").match(n);if(null!==c&&c.length>=1)return c[1]}return null}return t},r.prototype._bindAdapters=function(){this.dataAdapter.bind(this,this.$container),this.selection.bind(this,this.$container),this.dropdown.bind(this,this.$container),this.results.bind(this,this.$container)},r.prototype._registerDomEvents=function(){var t=this;this.$element.on("change.select2",function(){t.dataAdapter.current(function(e){t.trigger("selection:update",{data:e})})}),this.$element.on("focus.select2",function(e){t.trigger("focus",e)}),this._syncA=n.bind(this._syncAttributes,this),this._syncS=n.bind(this._syncSubtree,this),this.$element[0].attachEvent&&this.$element[0].attachEvent("onpropertychange",this._syncA);var i=window.MutationObserver||window.WebKitMutationObserver||window.MozMutationObserver;null!=i?(this._observer=new i(function(n){e.each(n,t._syncA),e.each(n,t._syncS)}),this._observer.observe(this.$element[0],{attributes:!0,childList:!0,subtree:!1})):this.$element[0].addEventListener&&(this.$element[0].addEventListener("DOMAttrModified",t._syncA,!1),this.$element[0].addEventListener("DOMNodeInserted",t._syncS,!1),this.$element[0].addEventListener("DOMNodeRemoved",t._syncS,!1))},r.prototype._registerDataEvents=function(){var e=this;this.dataAdapter.on("*",function(t,n){e.trigger(t,n)})},r.prototype._registerSelectionEvents=function(){var t=this,n=["toggle","focus"];this.selection.on("toggle",function(){t.toggleDropdown()}),this.selection.on("focus",function(e){t.focus(e)}),this.selection.on("*",function(i,r){-1===e.inArray(i,n)&&t.trigger(i,r)})},r.prototype._registerDropdownEvents=function(){var e=this;this.dropdown.on("*",function(t,n){e.trigger(t,n)})},r.prototype._registerResultsEvents=function(){var e=this;this.results.on("*",function(t,n){e.trigger(t,n)})},r.prototype._registerEvents=function(){var e=this;this.on("open",function(){e.$container.addClass("select2-container--open")}),this.on("close",function(){e.$container.removeClass("select2-container--open")}),this.on("enable",function(){e.$container.removeClass("select2-container--disabled")}),this.on("disable",function(){e.$container.addClass("select2-container--disabled")}),this.on("blur",function(){e.$container.removeClass("select2-container--focus")}),this.on("query",function(t){e.isOpen()||e.trigger("open",{}),this.dataAdapter.query(t,function(n){e.trigger("results:all",{data:n,query:t})})}),this.on("query:append",function(t){this.dataAdapter.query(t,function(n){e.trigger("results:append",{data:n,query:t})})}),this.on("keypress",function(t){var n=t.which;e.isOpen()?n===i.ESC||n===i.TAB||n===i.UP&&t.altKey?(e.close(),t.preventDefault()):n===i.ENTER?(e.trigger("results:select",{}),t.preventDefault()):n===i.SPACE&&t.ctrlKey?(e.trigger("results:toggle",{}),t.preventDefault()):n===i.UP?(e.trigger("results:previous",{}),t.preventDefault()):n===i.DOWN&&(e.trigger("results:next",{}),t.preventDefault()):(n===i.ENTER||n===i.SPACE||n===i.DOWN&&t.altKey)&&(e.open(),t.preventDefault())})},r.prototype._syncAttributes=function(){this.options.set("disabled",this.$element.prop("disabled")),this.options.get("disabled")?(this.isOpen()&&this.close(),this.trigger("disable",{})):this.trigger("enable",{})},r.prototype._syncSubtree=function(e,t){var n=!1,i=this;if(!e||!e.target||"OPTION"===e.target.nodeName||"OPTGROUP"===e.target.nodeName){if(t)if(t.addedNodes&&t.addedNodes.length>0)for(var r=0;r<t.addedNodes.length;r++){t.addedNodes[r].selected&&(n=!0)}else t.removedNodes&&t.removedNodes.length>0&&(n=!0);else n=!0;n&&this.dataAdapter.current(function(e){i.trigger("selection:update",{data:e})})}},r.prototype.trigger=function(e,t){var n=r.__super__.trigger,i={open:"opening",close:"closing",select:"selecting",unselect:"unselecting",clear:"clearing"};if(void 0===t&&(t={}),e in i){var o=i[e],s={prevented:!1,name:e,args:t};if(n.call(this,o,s),s.prevented)return void(t.prevented=!0)}n.call(this,e,t)},r.prototype.toggleDropdown=function(){this.options.get("disabled")||(this.isOpen()?this.close():this.open())},r.prototype.open=function(){this.isOpen()||this.trigger("query",{})},r.prototype.close=function(){this.isOpen()&&this.trigger("close",{})},r.prototype.isOpen=function(){return this.$container.hasClass("select2-container--open")},r.prototype.hasFocus=function(){return this.$container.hasClass("select2-container--focus")},r.prototype.focus=function(e){this.hasFocus()||(this.$container.addClass("select2-container--focus"),this.trigger("focus",{}))},r.prototype.enable=function(e){this.options.get("debug")&&window.console&&console.warn&&console.warn('Select2: The `select2("enable")` method has been deprecated and will be removed in later Select2 versions. Use $element.prop("disabled") instead.'),null!=e&&0!==e.length||(e=[!0]);var t=!e[0];this.$element.prop("disabled",t)},r.prototype.data=function(){this.options.get("debug")&&arguments.length>0&&window.console&&console.warn&&console.warn('Select2: Data can no longer be set using `select2("data")`. You should consider setting the value instead using `$element.val()`.');var e=[];return this.dataAdapter.current(function(t){e=t}),e},r.prototype.val=function(t){if(this.options.get("debug")&&window.console&&console.warn&&console.warn('Select2: The `select2("val")` method has been deprecated and will be removed in later Select2 versions. Use $element.val() instead.'),null==t||0===t.length)return this.$element.val();var n=t[0];e.isArray(n)&&(n=e.map(n,function(e){return e.toString()})),this.$element.val(n).trigger("change")},r.prototype.destroy=function(){this.$container.remove(),this.$element[0].detachEvent&&this.$element[0].detachEvent("onpropertychange",this._syncA),null!=this._observer?(this._observer.disconnect(),this._observer=null):this.$element[0].removeEventListener&&(this.$element[0].removeEventListener("DOMAttrModified",this._syncA,!1),this.$element[0].removeEventListener("DOMNodeInserted",this._syncS,!1),this.$element[0].removeEventListener("DOMNodeRemoved",this._syncS,!1)),this._syncA=null,this._syncS=null,this.$element.off(".select2"),this.$element.attr("tabindex",n.GetData(this.$element[0],"old-tabindex")),this.$element.removeClass("select2-hidden-accessible"),this.$element.attr("aria-hidden","false"),n.RemoveData(this.$element[0]),this.$element.removeData("select2"),this.dataAdapter.destroy(),this.selection.destroy(),this.dropdown.destroy(),this.results.destroy(),this.dataAdapter=null,this.selection=null,this.dropdown=null,this.results=null},r.prototype.render=function(){var t=e('<span class="select2 select2-container"><span class="selection"></span><span class="dropdown-wrapper" aria-hidden="true"></span></span>');return t.attr("dir",this.options.get("dir")),this.$container=t,this.$container.addClass("select2-container--"+this.options.get("theme")),n.StoreData(t[0],"element",this.$element),t},r}),t.define("select2/compat/utils",["jquery"],function(e){return{syncCssClasses:function(t,n,i){var r,o,s=[];(r=e.trim(t.attr("class")))&&e((r=""+r).split(/\s+/)).each(function(){0===this.indexOf("select2-")&&s.push(this)}),(r=e.trim(n.attr("class")))&&e((r=""+r).split(/\s+/)).each(function(){0!==this.indexOf("select2-")&&null!=(o=i(this))&&s.push(o)}),t.attr("class",s.join(" "))}}}),t.define("select2/compat/containerCss",["jquery","./utils"],function(e,t){function n(e){return null}function i(){}return i.prototype.render=function(i){var r=i.call(this),o=this.options.get("containerCssClass")||"";e.isFunction(o)&&(o=o(this.$element));var s=this.options.get("adaptContainerCssClass");if(s=s||n,-1!==o.indexOf(":all:")){o=o.replace(":all:","");var a=s;s=function(e){var t=a(e);return null!=t?t+" "+e:e}}var l=this.options.get("containerCss")||{};return e.isFunction(l)&&(l=l(this.$element)),t.syncCssClasses(r,this.$element,s),r.css(l),r.addClass(o),r},i}),t.define("select2/compat/dropdownCss",["jquery","./utils"],function(e,t){function n(e){return null}function i(){}return i.prototype.render=function(i){var r=i.call(this),o=this.options.get("dropdownCssClass")||"";e.isFunction(o)&&(o=o(this.$element));var s=this.options.get("adaptDropdownCssClass");if(s=s||n,-1!==o.indexOf(":all:")){o=o.replace(":all:","");var a=s;s=function(e){var t=a(e);return null!=t?t+" "+e:e}}var l=this.options.get("dropdownCss")||{};return e.isFunction(l)&&(l=l(this.$element)),t.syncCssClasses(r,this.$element,s),r.css(l),r.addClass(o),r},i}),t.define("select2/compat/initSelection",["jquery"],function(e){function t(e,t,n){n.get("debug")&&window.console&&console.warn&&console.warn("Select2: The `initSelection` option has been deprecated in favor of a custom data adapter that overrides the `current` method. This method is now called multiple times instead of a single time when the instance is initialized. Support will be removed for the `initSelection` option in future versions of Select2"),this.initSelection=n.get("initSelection"),this._isInitialized=!1,e.call(this,t,n)}return t.prototype.current=function(t,n){var i=this;this._isInitialized?t.call(this,n):this.initSelection.call(null,this.$element,function(t){i._isInitialized=!0,e.isArray(t)||(t=[t]),n(t)})},t}),t.define("select2/compat/inputData",["jquery","../utils"],function(e,t){function n(e,t,n){this._currentData=[],this._valueSeparator=n.get("valueSeparator")||",","hidden"===t.prop("type")&&n.get("debug")&&console&&console.warn&&console.warn("Select2: Using a hidden input with Select2 is no longer supported and may stop working in the future. It is recommended to use a `<select>` element instead."),e.call(this,t,n)}return n.prototype.current=function(t,n){function i(t,n){var r=[];return t.selected||-1!==e.inArray(t.id,n)?(t.selected=!0,r.push(t)):t.selected=!1,t.children&&r.push.apply(r,i(t.children,n)),r}for(var r=[],o=0;o<this._currentData.length;o++){var s=this._currentData[o];r.push.apply(r,i(s,this.$element.val().split(this._valueSeparator)))}n(r)},n.prototype.select=function(t,n){if(this.options.get("multiple")){var i=this.$element.val();i+=this._valueSeparator+n.id,this.$element.val(i),this.$element.trigger("change")}else this.current(function(t){e.map(t,function(e){e.selected=!1})}),this.$element.val(n.id),this.$element.trigger("change")},n.prototype.unselect=function(e,t){var n=this;t.selected=!1,this.current(function(e){for(var i=[],r=0;r<e.length;r++){var o=e[r];t.id!=o.id&&i.push(o.id)}n.$element.val(i.join(n._valueSeparator)),n.$element.trigger("change")})},n.prototype.query=function(e,t,n){for(var i=[],r=0;r<this._currentData.length;r++){var o=this._currentData[r],s=this.matches(t,o);null!==s&&i.push(s)}n({results:i})},n.prototype.addOptions=function(n,i){var r=e.map(i,function(e){return t.GetData(e[0],"data")});this._currentData.push.apply(this._currentData,r)},n}),t.define("select2/compat/matcher",["jquery"],function(e){return function(t){return function(n,i){var r=e.extend(!0,{},i);if(null==n.term||""===e.trim(n.term))return r;if(i.children){for(var o=i.children.length-1;o>=0;o--){var s=i.children[o];t(n.term,s.text,s)||r.children.splice(o,1)}if(r.children.length>0)return r}return t(n.term,i.text,i)?r:null}}}),t.define("select2/compat/query",[],function(){function e(e,t,n){n.get("debug")&&window.console&&console.warn&&console.warn("Select2: The `query` option has been deprecated in favor of a custom data adapter that overrides the `query` method. Support will be removed for the `query` option in future versions of Select2."),e.call(this,t,n)}return e.prototype.query=function(e,t,n){t.callback=n,this.options.get("query").call(null,t)},e}),t.define("select2/dropdown/attachContainer",[],function(){function e(e,t,n){e.call(this,t,n)}return e.prototype.position=function(e,t,n){n.find(".dropdown-wrapper").append(t),t.addClass("select2-dropdown--below"),n.addClass("select2-container--below")},e}),t.define("select2/dropdown/stopPropagation",[],function(){function e(){}return e.prototype.bind=function(e,t,n){e.call(this,t,n);this.$dropdown.on(["blur","change","click","dblclick","focus","focusin","focusout","input","keydown","keyup","keypress","mousedown","mouseenter","mouseleave","mousemove","mouseover","mouseup","search","touchend","touchstart"].join(" "),function(e){e.stopPropagation()})},e}),t.define("select2/selection/stopPropagation",[],function(){function e(){}return e.prototype.bind=function(e,t,n){e.call(this,t,n);this.$selection.on(["blur","change","click","dblclick","focus","focusin","focusout","input","keydown","keyup","keypress","mousedown","mouseenter","mouseleave","mousemove","mouseover","mouseup","search","touchend","touchstart"].join(" "),function(e){e.stopPropagation()})},e}),o=function(e){var t,n,i=["wheel","mousewheel","DOMMouseScroll","MozMousePixelScroll"],r="onwheel"in document||document.documentMode>=9?["wheel"]:["mousewheel","DomMouseScroll","MozMousePixelScroll"],o=Array.prototype.slice;if(e.event.fixHooks)for(var s=i.length;s;)e.event.fixHooks[i[--s]]=e.event.mouseHooks;var a=e.event.special.mousewheel={version:"3.1.12",setup:function(){if(this.addEventListener)for(var t=r.length;t;)this.addEventListener(r[--t],l,!1);else this.onmousewheel=l;e.data(this,"mousewheel-line-height",a.getLineHeight(this)),e.data(this,"mousewheel-page-height",a.getPageHeight(this))},teardown:function(){if(this.removeEventListener)for(var t=r.length;t;)this.removeEventListener(r[--t],l,!1);else this.onmousewheel=null;e.removeData(this,"mousewheel-line-height"),e.removeData(this,"mousewheel-page-height")},getLineHeight:function(t){var n=e(t),i=n["offsetParent"in e.fn?"offsetParent":"parent"]();return i.length||(i=e("body")),parseInt(i.css("fontSize"),10)||parseInt(n.css("fontSize"),10)||16},getPageHeight:function(t){return e(t).height()},settings:{adjustOldDeltas:!0,normalizeOffset:!0}};function l(i){var r,s=i||window.event,l=o.call(arguments,1),d=0,p=0,h=0,f=0,g=0;if((i=e.event.fix(s)).type="mousewheel","detail"in s&&(h=-1*s.detail),"wheelDelta"in s&&(h=s.wheelDelta),"wheelDeltaY"in s&&(h=s.wheelDeltaY),"wheelDeltaX"in s&&(p=-1*s.wheelDeltaX),"axis"in s&&s.axis===s.HORIZONTAL_AXIS&&(p=-1*h,h=0),d=0===h?p:h,"deltaY"in s&&(d=h=-1*s.deltaY),"deltaX"in s&&(p=s.deltaX,0===h&&(d=-1*p)),0!==h||0!==p){if(1===s.deltaMode){var m=e.data(this,"mousewheel-line-height");d*=m,h*=m,p*=m}else if(2===s.deltaMode){var v=e.data(this,"mousewheel-page-height");d*=v,h*=v,p*=v}if(r=Math.max(Math.abs(h),Math.abs(p)),(!n||r<n)&&(n=r,u(s,r)&&(n/=40)),u(s,r)&&(d/=40,p/=40,h/=40),d=Math[d>=1?"floor":"ceil"](d/n),p=Math[p>=1?"floor":"ceil"](p/n),h=Math[h>=1?"floor":"ceil"](h/n),a.settings.normalizeOffset&&this.getBoundingClientRect){var y=this.getBoundingClientRect();f=i.clientX-y.left,g=i.clientY-y.top}return i.deltaX=p,i.deltaY=h,i.deltaFactor=n,i.offsetX=f,i.offsetY=g,i.deltaMode=0,l.unshift(i,d,p,h),t&&clearTimeout(t),t=setTimeout(c,200),(e.event.dispatch||e.event.handle).apply(this,l)}}function c(){n=null}function u(e,t){return a.settings.adjustOldDeltas&&"mousewheel"===e.type&&t%120==0}e.fn.extend({mousewheel:function(e){return e?this.bind("mousewheel",e):this.trigger("mousewheel")},unmousewheel:function(e){return this.unbind("mousewheel",e)}})},"function"==typeof t.define&&t.define.amd?t.define("jquery-mousewheel",["jquery"],o):"object"==typeof exports?module.exports=o:o(e),t.define("jquery.select2",["jquery","jquery-mousewheel","./select2/core","./select2/defaults","./select2/utils"],function(e,t,n,i,r){if(null==e.fn.select2){var o=["open","close","destroy"];e.fn.select2=function(t){if("object"==typeof(t=t||{}))return this.each(function(){var i=e.extend(!0,{},t);new n(e(this),i)}),this;if("string"==typeof t){var i,s=Array.prototype.slice.call(arguments,1);return this.each(function(){var e=r.GetData(this,"select2");null==e&&window.console&&console.error&&console.error("The select2('"+t+"') method was called on an element that is not using Select2."),i=e[t].apply(e,s)}),e.inArray(t,o)>-1?this:i}throw new Error("Invalid arguments for Select2: "+t)}}return null==e.fn.select2.defaults&&(e.fn.select2.defaults=i),n}),{define:t.define,require:t.require}}(),n=t.require("jquery.select2");return e.fn.select2.amd=t,n});assets/lib/e-select2/css/e-select2.min.css000064400000034665151327220410014261 0ustar00.select2-container{box-sizing:border-box;display:inline-block;margin:0;position:relative;vertical-align:middle}.select2-container .select2-selection--single{box-sizing:border-box;cursor:pointer;display:block;height:28px;user-select:none;-webkit-user-select:none}.select2-container .select2-selection--single .select2-selection__rendered{display:block;padding-left:8px;padding-right:20px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select2-container .select2-selection--single .select2-selection__clear{position:relative}.select2-container[dir=rtl] .select2-selection--single .select2-selection__rendered{padding-right:8px;padding-left:20px}.select2-container .select2-selection--multiple{box-sizing:border-box;cursor:pointer;display:block;min-height:32px;user-select:none;-webkit-user-select:none}.select2-container .select2-selection--multiple .select2-selection__rendered{display:inline-block;overflow:hidden;padding-left:8px;text-overflow:ellipsis;white-space:nowrap}.select2-container .select2-search--inline{float:left}.select2-container .select2-search--inline .select2-search__field{box-sizing:border-box;border:none;font-size:100%;margin-top:5px;padding:0}.select2-container .select2-search--inline .select2-search__field::-webkit-search-cancel-button{-webkit-appearance:none}.select2-dropdown{background-color:#fff;border:1px solid #aaa;border-radius:3px;box-sizing:border-box;display:block;position:absolute;left:-100000px;width:100%;z-index:1051}.select2-results{display:block}.select2-results__options{list-style:none;margin:0;padding:0}.select2-results__option{padding:6px;user-select:none;-webkit-user-select:none}.select2-results__option[aria-selected]{cursor:pointer}.select2-container--open .select2-dropdown{left:0}.select2-container--open .select2-dropdown--above{border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0}.select2-container--open .select2-dropdown--below{border-top:none;border-top-left-radius:0;border-top-right-radius:0}.select2-search--dropdown{display:block;padding:4px}.select2-search--dropdown .select2-search__field{padding:4px;width:100%;box-sizing:border-box}.select2-search--dropdown .select2-search__field::-webkit-search-cancel-button{-webkit-appearance:none}.select2-search--dropdown.select2-search--hide{display:none}.select2-close-mask{border:0;margin:0;padding:0;display:block;position:fixed;left:0;top:0;min-height:100%;min-width:100%;height:auto;width:auto;opacity:0;z-index:99;background-color:#fff;filter:alpha(opacity=0)}.select2-hidden-accessible{border:0!important;clip:rect(0 0 0 0)!important;height:1px!important;margin:-1px!important;overflow:hidden!important;padding:0!important;position:absolute!important;width:1px!important}.select2-container--classic .select2-results>.select2-results__options,.select2-container--default .select2-results>.select2-results__options{max-height:200px;overflow-y:auto}.select2-container--default .select2-selection--single{background-color:#fff;border:1px solid #aaa;border-radius:3px}.select2-container--default .select2-selection--single .select2-selection__rendered{color:#444;line-height:28px}.select2-container--default .select2-selection--single .select2-selection__clear{cursor:pointer;float:right;font-weight:700}.select2-container--default .select2-selection--single .select2-selection__arrow{height:26px;position:absolute;top:1px;right:1px;width:20px}.select2-container--default .select2-selection--single .select2-selection__arrow b{border-color:#888 transparent transparent;border-style:solid;border-width:5px 4px 0;height:0;left:50%;margin-left:-4px;margin-top:-2px;position:absolute;top:50%;width:0}.select2-container--default[dir=rtl] .select2-selection--single .select2-selection__clear{float:left}.select2-container--default[dir=rtl] .select2-selection--single .select2-selection__arrow{left:1px;right:auto}.select2-container--default.select2-container--disabled .select2-selection--single{background-color:#eee;cursor:default}.select2-container--default.select2-container--disabled .select2-selection--single .select2-selection__clear{display:none}.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b{border-color:transparent transparent #888;border-width:0 4px 5px}.select2-container--default .select2-selection--multiple{background-color:#fff;border:1px solid #aaa;border-radius:3px;cursor:text}.select2-container--default .select2-selection--multiple .select2-selection__rendered{box-sizing:border-box;list-style:none;margin:0;padding:0 5px;width:100%}.select2-container--default .select2-selection--multiple .select2-selection__rendered li{list-style:none}.select2-container--default .select2-selection--multiple .select2-selection__placeholder{color:#999;margin-top:5px;float:left}.select2-container--default .select2-selection--multiple .select2-selection__clear{cursor:pointer;float:right;font-weight:700;margin-top:5px;margin-right:10px}.select2-container--default .select2-selection--multiple .select2-selection__choice{background-color:#e4e4e4;border:1px solid #aaa;border-radius:4px;cursor:default;float:left;margin-right:5px;margin-top:5px;padding:0 5px}.select2-container--default .select2-selection--multiple .select2-selection__choice__remove{color:#999;cursor:pointer;display:inline-block;font-weight:700;margin-right:2px}.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover{color:#333}.select2-container--default[dir=rtl] .select2-selection--multiple .select2-search--inline,.select2-container--default[dir=rtl] .select2-selection--multiple .select2-selection__choice,.select2-container--default[dir=rtl] .select2-selection--multiple .select2-selection__placeholder{float:right}.select2-container--default[dir=rtl] .select2-selection--multiple .select2-selection__choice{margin-left:5px;margin-right:auto}.select2-container--default[dir=rtl] .select2-selection--multiple .select2-selection__choice__remove{margin-left:2px;margin-right:auto}.select2-container--default.select2-container--focus .select2-selection--multiple{border:1px solid #000;outline:0}.select2-container--default.select2-container--disabled .select2-selection--multiple{background-color:#eee;cursor:default}.select2-container--default.select2-container--disabled .select2-selection__choice__remove{display:none}.select2-container--default.select2-container--open.select2-container--above .select2-selection--multiple,.select2-container--default.select2-container--open.select2-container--above .select2-selection--single{border-top-left-radius:0;border-top-right-radius:0}.select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple,.select2-container--default.select2-container--open.select2-container--below .select2-selection--single{border-bottom-left-radius:0;border-bottom-right-radius:0}.select2-container--default .select2-search--dropdown .select2-search__field{border:1px solid #aaa}.select2-container--default .select2-search--inline .select2-search__field{background:0 0;border:none;outline:0;box-shadow:none;-webkit-appearance:textfield}.select2-container--default .select2-results__option[role=group]{padding:0}.select2-container--default .select2-results__option[aria-disabled=true]{color:#999}.select2-container--default .select2-results__option[aria-selected=true]{background-color:#ddd}.select2-container--default .select2-results__option .select2-results__option{padding-left:1em}.select2-container--default .select2-results__option .select2-results__option .select2-results__group{padding-left:0}.select2-container--default .select2-results__option .select2-results__option .select2-results__option{margin-left:-1em;padding-left:2em}.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option{margin-left:-2em;padding-left:3em}.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option{margin-left:-3em;padding-left:4em}.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option{margin-left:-4em;padding-left:5em}.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option{margin-left:-5em;padding-left:6em}.select2-container--default .select2-results__option--highlighted[aria-selected]{background-color:#5897fb;color:#fff}.select2-container--default .select2-results__group{cursor:default;display:block;padding:6px}.select2-container--classic .select2-selection--single{background-color:#f7f7f7;border:1px solid #aaa;border-radius:3px;outline:0;background-image:-webkit-linear-gradient(top,#fff 50%,#eee 100%);background-image:-o-linear-gradient(top,#fff 50%,#eee 100%);background-image:linear-gradient(to bottom,#fff 50%,#eee 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEEEEE', GradientType=0)}.select2-container--classic .select2-selection--single:focus{border:1px solid #5897fb}.select2-container--classic .select2-selection--single .select2-selection__rendered{color:#444;line-height:28px}.select2-container--classic .select2-selection--single .select2-selection__clear{cursor:pointer;float:right;font-weight:700;margin-right:10px}.select2-container--classic .select2-selection--single .select2-selection__placeholder{color:#999}.select2-container--classic .select2-selection--single .select2-selection__arrow{background-color:#ddd;border:none;border-left:1px solid #aaa;border-top-right-radius:4px;border-bottom-right-radius:4px;height:26px;position:absolute;top:1px;right:1px;width:20px;background-image:-webkit-linear-gradient(top,#eee 50%,#ccc 100%);background-image:-o-linear-gradient(top,#eee 50%,#ccc 100%);background-image:linear-gradient(to bottom,#eee 50%,#ccc 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE', endColorstr='#FFCCCCCC', GradientType=0)}.select2-container--classic .select2-selection--single .select2-selection__arrow b{border-color:#888 transparent transparent;border-style:solid;border-width:5px 4px 0;height:0;left:50%;margin-left:-4px;margin-top:-2px;position:absolute;top:50%;width:0}.select2-container--classic[dir=rtl] .select2-selection--single .select2-selection__clear{float:left}.select2-container--classic[dir=rtl] .select2-selection--single .select2-selection__arrow{border:none;border-right:1px solid #aaa;border-radius:4px 0 0 4px;left:1px;right:auto}.select2-container--classic.select2-container--open .select2-selection--single{border:1px solid #5897fb}.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow{background:0 0;border:none}.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow b{border-color:transparent transparent #888;border-width:0 4px 5px}.select2-container--classic.select2-container--open.select2-container--above .select2-selection--single{border-top:none;border-top-left-radius:0;border-top-right-radius:0;background-image:-webkit-linear-gradient(top,#fff 0,#eee 50%);background-image:-o-linear-gradient(top,#fff 0,#eee 50%);background-image:linear-gradient(to bottom,#fff 0,#eee 50%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEEEEE', GradientType=0)}.select2-container--classic.select2-container--open.select2-container--below .select2-selection--single{border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0;background-image:-webkit-linear-gradient(top,#eee 50%,#fff 100%);background-image:-o-linear-gradient(top,#eee 50%,#fff 100%);background-image:linear-gradient(to bottom,#eee 50%,#fff 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE', endColorstr='#FFFFFFFF', GradientType=0)}.select2-container--classic .select2-selection--multiple{background-color:#fff;border:1px solid #aaa;border-radius:3px;cursor:text;outline:0}.select2-container--classic .select2-selection--multiple:focus{border:1px solid #5897fb}.select2-container--classic .select2-selection--multiple .select2-selection__rendered{list-style:none;margin:0;padding:0 5px}.select2-container--classic .select2-selection--multiple .select2-selection__clear{display:none}.select2-container--classic .select2-selection--multiple .select2-selection__choice{background-color:#e4e4e4;border:1px solid #aaa;border-radius:4px;cursor:default;float:left;margin-right:5px;margin-top:5px;padding:0 5px}.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove{color:#888;cursor:pointer;display:inline-block;font-weight:700;margin-right:2px}.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove:hover{color:#555}.select2-container--classic[dir=rtl] .select2-selection--multiple .select2-selection__choice{float:right;margin-left:5px;margin-right:auto}.select2-container--classic[dir=rtl] .select2-selection--multiple .select2-selection__choice__remove{margin-left:2px;margin-right:auto}.select2-container--classic.select2-container--open .select2-selection--multiple{border:1px solid #5897fb}.select2-container--classic.select2-container--open.select2-container--above .select2-selection--multiple{border-top:none;border-top-left-radius:0;border-top-right-radius:0}.select2-container--classic.select2-container--open.select2-container--below .select2-selection--multiple{border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0}.select2-container--classic .select2-search--dropdown .select2-search__field{border:1px solid #aaa;outline:0}.select2-container--classic .select2-search--inline .select2-search__field{outline:0;box-shadow:none}.select2-container--classic .select2-dropdown{background-color:#fff;border:1px solid transparent}.select2-container--classic .select2-dropdown--above{border-bottom:none}.select2-container--classic .select2-dropdown--below{border-top:none}.select2-container--classic .select2-results__option[role=group]{padding:0}.select2-container--classic .select2-results__option[aria-disabled=true]{color:grey}.select2-container--classic .select2-results__option--highlighted[aria-selected]{background-color:#3875d7;color:#fff}.select2-container--classic .select2-results__group{cursor:default;display:block;padding:6px}.select2-container--classic.select2-container--open .select2-dropdown{border-color:#5897fb}assets/lib/e-select2/css/e-select2.css000064400000042126151327220410013466 0ustar00.select2-container {
  box-sizing: border-box;
  display: inline-block;
  margin: 0;
  position: relative;
  vertical-align: middle; }
  .select2-container .select2-selection--single {
    box-sizing: border-box;
    cursor: pointer;
    display: block;
    height: 28px;
    user-select: none;
    -webkit-user-select: none; }
    .select2-container .select2-selection--single .select2-selection__rendered {
      display: block;
      padding-left: 8px;
      padding-right: 20px;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap; }
    .select2-container .select2-selection--single .select2-selection__clear {
      position: relative; }
  .select2-container[dir="rtl"] .select2-selection--single .select2-selection__rendered {
    padding-right: 8px;
    padding-left: 20px; }
  .select2-container .select2-selection--multiple {
    box-sizing: border-box;
    cursor: pointer;
    display: block;
    min-height: 32px;
    user-select: none;
    -webkit-user-select: none; }
    .select2-container .select2-selection--multiple .select2-selection__rendered {
      display: inline-block;
      overflow: hidden;
      padding-left: 8px;
      text-overflow: ellipsis;
      white-space: nowrap; }
  .select2-container .select2-search--inline {
    float: left; }
    .select2-container .select2-search--inline .select2-search__field {
      box-sizing: border-box;
      border: none;
      font-size: 100%;
      margin-top: 5px;
      padding: 0; }
      .select2-container .select2-search--inline .select2-search__field::-webkit-search-cancel-button {
        -webkit-appearance: none; }

.select2-dropdown {
  background-color: white;
  border: 1px solid #aaa;
  border-radius: 3px;
  box-sizing: border-box;
  display: block;
  position: absolute;
  left: -100000px;
  width: 100%;
  z-index: 1051; }

.select2-results {
  display: block; }

.select2-results__options {
  list-style: none;
  margin: 0;
  padding: 0; }

.select2-results__option {
  padding: 6px;
  user-select: none;
  -webkit-user-select: none; }
  .select2-results__option[aria-selected] {
    cursor: pointer; }

.select2-container--open .select2-dropdown {
  left: 0; }

.select2-container--open .select2-dropdown--above {
  border-bottom: none;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0; }

.select2-container--open .select2-dropdown--below {
  border-top: none;
  border-top-left-radius: 0;
  border-top-right-radius: 0; }

.select2-search--dropdown {
  display: block;
  padding: 4px; }
  .select2-search--dropdown .select2-search__field {
    padding: 4px;
    width: 100%;
    box-sizing: border-box; }
    .select2-search--dropdown .select2-search__field::-webkit-search-cancel-button {
      -webkit-appearance: none; }
  .select2-search--dropdown.select2-search--hide {
    display: none; }

.select2-close-mask {
  border: 0;
  margin: 0;
  padding: 0;
  display: block;
  position: fixed;
  left: 0;
  top: 0;
  min-height: 100%;
  min-width: 100%;
  height: auto;
  width: auto;
  opacity: 0;
  z-index: 99;
  background-color: #fff;
  filter: alpha(opacity=0); }

.select2-hidden-accessible {
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  width: 1px !important; }

.select2-container--default .select2-selection--single {
  background-color: #fff;
  border: 1px solid #aaa;
  border-radius: 3px; }
  .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: #444;
    line-height: 28px; }
  .select2-container--default .select2-selection--single .select2-selection__clear {
    cursor: pointer;
    float: right;
    font-weight: bold; }
  .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 26px;
    position: absolute;
    top: 1px;
    right: 1px;
    width: 20px; }
    .select2-container--default .select2-selection--single .select2-selection__arrow b {
      border-color: #888 transparent transparent transparent;
      border-style: solid;
      border-width: 5px 4px 0 4px;
      height: 0;
      left: 50%;
      margin-left: -4px;
      margin-top: -2px;
      position: absolute;
      top: 50%;
      width: 0; }

.select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__clear {
  float: left; }

.select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__arrow {
  left: 1px;
  right: auto; }

.select2-container--default.select2-container--disabled .select2-selection--single {
  background-color: #eee;
  cursor: default; }
  .select2-container--default.select2-container--disabled .select2-selection--single .select2-selection__clear {
    display: none; }

.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
  border-color: transparent transparent #888 transparent;
  border-width: 0 4px 5px 4px; }

.select2-container--default .select2-selection--multiple {
  background-color: white;
  border: 1px solid #aaa;
  border-radius: 3px;
  cursor: text; }
  .select2-container--default .select2-selection--multiple .select2-selection__rendered {
    box-sizing: border-box;
    list-style: none;
    margin: 0;
    padding: 0 5px;
    width: 100%; }
    .select2-container--default .select2-selection--multiple .select2-selection__rendered li {
      list-style: none; }
  .select2-container--default .select2-selection--multiple .select2-selection__placeholder {
    color: #999;
    margin-top: 5px;
    float: left; }
  .select2-container--default .select2-selection--multiple .select2-selection__clear {
    cursor: pointer;
    float: right;
    font-weight: bold;
    margin-top: 5px;
    margin-right: 10px; }
  .select2-container--default .select2-selection--multiple .select2-selection__choice {
    background-color: #e4e4e4;
    border: 1px solid #aaa;
    border-radius: 4px;
    cursor: default;
    float: left;
    margin-right: 5px;
    margin-top: 5px;
    padding: 0 5px; }
  .select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
    color: #999;
    cursor: pointer;
    display: inline-block;
    font-weight: bold;
    margin-right: 2px; }
    .select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover {
      color: #333; }

.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice, .select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__placeholder, .select2-container--default[dir="rtl"] .select2-selection--multiple .select2-search--inline {
  float: right; }

.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice {
  margin-left: 5px;
  margin-right: auto; }

.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove {
  margin-left: 2px;
  margin-right: auto; }

.select2-container--default.select2-container--focus .select2-selection--multiple {
  border: solid black 1px;
  outline: 0; }

.select2-container--default.select2-container--disabled .select2-selection--multiple {
  background-color: #eee;
  cursor: default; }

.select2-container--default.select2-container--disabled .select2-selection__choice__remove {
  display: none; }

.select2-container--default.select2-container--open.select2-container--above .select2-selection--single, .select2-container--default.select2-container--open.select2-container--above .select2-selection--multiple {
  border-top-left-radius: 0;
  border-top-right-radius: 0; }

.select2-container--default.select2-container--open.select2-container--below .select2-selection--single, .select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0; }

.select2-container--default .select2-search--dropdown .select2-search__field {
  border: 1px solid #aaa; }

.select2-container--default .select2-search--inline .select2-search__field {
  background: transparent;
  border: none;
  outline: 0;
  box-shadow: none;
  -webkit-appearance: textfield; }

.select2-container--default .select2-results > .select2-results__options {
  max-height: 200px;
  overflow-y: auto; }

.select2-container--default .select2-results__option[role=group] {
  padding: 0; }

.select2-container--default .select2-results__option[aria-disabled=true] {
  color: #999; }

.select2-container--default .select2-results__option[aria-selected=true] {
  background-color: #ddd; }

.select2-container--default .select2-results__option .select2-results__option {
  padding-left: 1em; }
  .select2-container--default .select2-results__option .select2-results__option .select2-results__group {
    padding-left: 0; }
  .select2-container--default .select2-results__option .select2-results__option .select2-results__option {
    margin-left: -1em;
    padding-left: 2em; }
    .select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
      margin-left: -2em;
      padding-left: 3em; }
      .select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
        margin-left: -3em;
        padding-left: 4em; }
        .select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
          margin-left: -4em;
          padding-left: 5em; }
          .select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
            margin-left: -5em;
            padding-left: 6em; }

.select2-container--default .select2-results__option--highlighted[aria-selected] {
  background-color: #5897fb;
  color: white; }

.select2-container--default .select2-results__group {
  cursor: default;
  display: block;
  padding: 6px; }

.select2-container--classic .select2-selection--single {
  background-color: #f7f7f7;
  border: 1px solid #aaa;
  border-radius: 3px;
  outline: 0;
  background-image: -webkit-linear-gradient(top, white 50%, #eeeeee 100%);
  background-image: -o-linear-gradient(top, white 50%, #eeeeee 100%);
  background-image: linear-gradient(to bottom, white 50%, #eeeeee 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEEEEE', GradientType=0); }
  .select2-container--classic .select2-selection--single:focus {
    border: 1px solid #5897fb; }
  .select2-container--classic .select2-selection--single .select2-selection__rendered {
    color: #444;
    line-height: 28px; }
  .select2-container--classic .select2-selection--single .select2-selection__clear {
    cursor: pointer;
    float: right;
    font-weight: bold;
    margin-right: 10px; }
  .select2-container--classic .select2-selection--single .select2-selection__placeholder {
    color: #999; }
  .select2-container--classic .select2-selection--single .select2-selection__arrow {
    background-color: #ddd;
    border: none;
    border-left: 1px solid #aaa;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
    height: 26px;
    position: absolute;
    top: 1px;
    right: 1px;
    width: 20px;
    background-image: -webkit-linear-gradient(top, #eeeeee 50%, #cccccc 100%);
    background-image: -o-linear-gradient(top, #eeeeee 50%, #cccccc 100%);
    background-image: linear-gradient(to bottom, #eeeeee 50%, #cccccc 100%);
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE', endColorstr='#FFCCCCCC', GradientType=0); }
    .select2-container--classic .select2-selection--single .select2-selection__arrow b {
      border-color: #888 transparent transparent transparent;
      border-style: solid;
      border-width: 5px 4px 0 4px;
      height: 0;
      left: 50%;
      margin-left: -4px;
      margin-top: -2px;
      position: absolute;
      top: 50%;
      width: 0; }

.select2-container--classic[dir="rtl"] .select2-selection--single .select2-selection__clear {
  float: left; }

.select2-container--classic[dir="rtl"] .select2-selection--single .select2-selection__arrow {
  border: none;
  border-right: 1px solid #aaa;
  border-radius: 0;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
  left: 1px;
  right: auto; }

.select2-container--classic.select2-container--open .select2-selection--single {
  border: 1px solid #5897fb; }
  .select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow {
    background: transparent;
    border: none; }
    .select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow b {
      border-color: transparent transparent #888 transparent;
      border-width: 0 4px 5px 4px; }

.select2-container--classic.select2-container--open.select2-container--above .select2-selection--single {
  border-top: none;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  background-image: -webkit-linear-gradient(top, white 0%, #eeeeee 50%);
  background-image: -o-linear-gradient(top, white 0%, #eeeeee 50%);
  background-image: linear-gradient(to bottom, white 0%, #eeeeee 50%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEEEEE', GradientType=0); }

.select2-container--classic.select2-container--open.select2-container--below .select2-selection--single {
  border-bottom: none;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  background-image: -webkit-linear-gradient(top, #eeeeee 50%, white 100%);
  background-image: -o-linear-gradient(top, #eeeeee 50%, white 100%);
  background-image: linear-gradient(to bottom, #eeeeee 50%, white 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE', endColorstr='#FFFFFFFF', GradientType=0); }

.select2-container--classic .select2-selection--multiple {
  background-color: white;
  border: 1px solid #aaa;
  border-radius: 3px;
  cursor: text;
  outline: 0; }
  .select2-container--classic .select2-selection--multiple:focus {
    border: 1px solid #5897fb; }
  .select2-container--classic .select2-selection--multiple .select2-selection__rendered {
    list-style: none;
    margin: 0;
    padding: 0 5px; }
  .select2-container--classic .select2-selection--multiple .select2-selection__clear {
    display: none; }
  .select2-container--classic .select2-selection--multiple .select2-selection__choice {
    background-color: #e4e4e4;
    border: 1px solid #aaa;
    border-radius: 4px;
    cursor: default;
    float: left;
    margin-right: 5px;
    margin-top: 5px;
    padding: 0 5px; }
  .select2-container--classic .select2-selection--multiple .select2-selection__choice__remove {
    color: #888;
    cursor: pointer;
    display: inline-block;
    font-weight: bold;
    margin-right: 2px; }
    .select2-container--classic .select2-selection--multiple .select2-selection__choice__remove:hover {
      color: #555; }

.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice {
  float: right; }

.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice {
  margin-left: 5px;
  margin-right: auto; }

.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove {
  margin-left: 2px;
  margin-right: auto; }

.select2-container--classic.select2-container--open .select2-selection--multiple {
  border: 1px solid #5897fb; }

.select2-container--classic.select2-container--open.select2-container--above .select2-selection--multiple {
  border-top: none;
  border-top-left-radius: 0;
  border-top-right-radius: 0; }

.select2-container--classic.select2-container--open.select2-container--below .select2-selection--multiple {
  border-bottom: none;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0; }

.select2-container--classic .select2-search--dropdown .select2-search__field {
  border: 1px solid #aaa;
  outline: 0; }

.select2-container--classic .select2-search--inline .select2-search__field {
  outline: 0;
  box-shadow: none; }

.select2-container--classic .select2-dropdown {
  background-color: white;
  border: 1px solid transparent; }

.select2-container--classic .select2-dropdown--above {
  border-bottom: none; }

.select2-container--classic .select2-dropdown--below {
  border-top: none; }

.select2-container--classic .select2-results > .select2-results__options {
  max-height: 200px;
  overflow-y: auto; }

.select2-container--classic .select2-results__option[role=group] {
  padding: 0; }

.select2-container--classic .select2-results__option[aria-disabled=true] {
  color: grey; }

.select2-container--classic .select2-results__option--highlighted[aria-selected] {
  background-color: #3875d7;
  color: white; }

.select2-container--classic .select2-results__group {
  cursor: default;
  display: block;
  padding: 6px; }

.select2-container--classic.select2-container--open .select2-dropdown {
  border-color: #5897fb; }
assets/lib/pickr/themes/monolith.min.css000064400000012610151327220410014333 0ustar00/*! Pickr 1.5.0 MIT | https://github.com/Simonwep/pickr */.pickr{position:relative;height:27px;width:100%;padding:3px;border-radius:3px;border:1px solid #d5dadf;-webkit-transform:translateY(0);transform:translateY(0)}.pickr *{outline:none;border:none;-webkit-appearance:none}.pcr-button{background-image:linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd),linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd);background-size:13px 13px;background-position:0 0,6.5px 6.5px;display:block;position:relative;height:100%;width:100%;cursor:pointer}.pcr-button:after{position:absolute;content:"";top:0;left:0;height:100%;width:100%;-webkit-transition:background .3s;transition:background .3s;background:currentColor}.pcr-button.disabled{cursor:not-allowed}.pcr-app *,.pickr *{box-sizing:border-box;outline:none;border:none;-webkit-appearance:none}.pcr-palette,.pcr-slider{-webkit-transition:box-shadow .3s;transition:box-shadow .3s}.pcr-app{position:fixed;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;z-index:10000;border-radius:3px;background:#fff;opacity:0;visibility:hidden;-webkit-transition:opacity .3s,visibility 0s .3s;transition:opacity .3s,visibility 0s .3s;font-family:Roboto;box-shadow:0 .15em 1.5em 0 rgba(0,0,0,.1),0 0 1em 0 rgba(0,0,0,.03);left:0;top:0;-webkit-transform:translateX(10px);transform:translateX(10px)}.pcr-app.visible{-webkit-transition:opacity .3s;transition:opacity .3s;visibility:visible;opacity:1}.pcr-swatches{margin:0 -3.5px}.pcr-swatches>*{width:20px;display:-webkit-inline-box;display:inline-flex;border-radius:3px;cursor:pointer;margin:0 3.1px 5px}.pcr-swatches>:after{content:"";width:100%;padding-bottom:100%}.pcr-swatch:hover{-webkit-filter:brightness(1.05);filter:brightness(1.05)}.pcr-swatch:after{background:currentColor;border-radius:3px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.1)}.pcr-swatch.pcr-active:after{border-radius:2px;box-shadow:0 0 0 1px #71d7f7,inset 0 0 0 1px #fff}.pcr-interaction{display:-webkit-box;display:flex;margin-top:10px;-webkit-box-ordinal-group:3;order:2;direction:ltr}.pcr-interaction input{-webkit-transition:all .15s;transition:all .15s}.pcr-interaction input:hover{-webkit-filter:brightness(.975);filter:brightness(.975)}.pcr-result{font-size:10px;padding:6.5px 8px;color:#495157;border-radius:3px 0 0 3px;border:1px solid #d5dadf;border-right-width:0}.pcr-type.active{color:#fff}.pcr-save,.pcr-type.active{background:#4285f4}.pcr-clear{width:auto;font-size:9px;padding:0 12.5px;text-transform:uppercase;border-radius:0 3px 3px 0;background-color:#d5dadf;color:#6d7882;font-family:Roboto;cursor:pointer}.pcr-picker{position:absolute;height:15px;width:15px;border-radius:50%;box-shadow:inset 0 0 0 2px #fff,1px 1px 6px rgba(0,0,0,.4),inset 0 0 3px 1px rgba(0,0,0,.3)}.pcr-color-chooser,.pcr-color-opacity,.pcr-color-palette,.pcr-picker{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.pcr-color-chooser,.pcr-color-opacity,.pcr-color-palette{position:relative;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;cursor:-webkit-grab;cursor:grab}.pcr-color-chooser:active,.pcr-color-opacity:active,.pcr-color-palette:active{cursor:-webkit-grabbing;cursor:grabbing}.pcr-app[data-theme=monolith]{width:270px;padding:20px}.pcr-app[data-theme=monolith] .pcr-selection{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-pack:justify;justify-content:space-between;-webkit-box-flex:1;flex-grow:1;-webkit-box-ordinal-group:2;order:1}.pcr-app[data-theme=monolith] .pcr-color-palette{background-image:linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd),linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd);background-size:16px 16px;background-position:0 0,8px 8px;height:170px;margin-top:15px;overflow:hidden}.pcr-app[data-theme=monolith] .pcr-color-palette .pcr-picker{height:13px;width:13px;box-shadow:inset 0 0 0 2px #fff,1px 1px 6px rgba(0,0,0,.4)}.pcr-app[data-theme=monolith] .pcr-color-palette .pcr-palette{height:100%}.pcr-app[data-theme=monolith] .pcr-color-chooser,.pcr-app[data-theme=monolith] .pcr-color-opacity{height:10px;margin-top:.75em;border-radius:4px}.pcr-app[data-theme=monolith] .pcr-color-chooser .pcr-picker,.pcr-app[data-theme=monolith] .pcr-color-opacity .pcr-picker{top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.pcr-app[data-theme=monolith] .pcr-color-chooser .pcr-slider,.pcr-app[data-theme=monolith] .pcr-color-opacity .pcr-slider{-webkit-box-flex:1;flex-grow:1;border-radius:5px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.2)}.pcr-app[data-theme=monolith] .pcr-color-chooser .pcr-slider{background:-webkit-gradient(linear,left top,right top,from(red),color-stop(#ff0),color-stop(#0f0),color-stop(#0ff),color-stop(#00f),color-stop(#f0f),to(red));background:linear-gradient(90deg,red,#ff0,#0f0,#0ff,#00f,#f0f,red)}.pcr-app[data-theme=monolith] .pcr-color-opacity{background-image:linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd),linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd);background-size:8px 8px;background-position:0 0,4px 4px}.pcr-app[data-theme=monolith] .pcr-color-opacity .pcr-slider{background-image:-webkit-gradient(linear,right top,left top,from(#000),to(transparent));background-image:linear-gradient(270deg,#000,transparent)}assets/lib/pickr/pickr.min.js000064400000057324151327220410012164 0ustar00/*! Pickr 1.5.0 MIT | https://github.com/Simonwep/pickr */
!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.Pickr=e():t.Pickr=e()}(window,(function(){return function(t){var e={};function o(n){if(e[n])return e[n].exports;var i=e[n]={i:n,l:!1,exports:{}};return t[n].call(i.exports,i,i.exports,o),i.l=!0,i.exports}return o.m=t,o.c=e,o.d=function(t,e,n){o.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},o.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},o.t=function(t,e){if(1&e&&(t=o(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(o.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var i in t)o.d(n,i,function(e){return t[e]}.bind(null,i));return n},o.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return o.d(e,"a",e),e},o.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},o.p="",o(o.s=1)}([function(t){t.exports=JSON.parse('{"a":"1.5.0"}')},function(t,e,o){"use strict";o.r(e);var n={};function i(t,e){var o=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),o.push.apply(o,n)}return o}function r(t){for(var e=1;e<arguments.length;e++){var o=null!=arguments[e]?arguments[e]:{};e%2?i(Object(o),!0).forEach((function(e){s(t,e,o[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(o)):i(Object(o)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(o,e))}))}return t}function s(t,e,o){return e in t?Object.defineProperty(t,e,{value:o,enumerable:!0,configurable:!0,writable:!0}):t[e]=o,t}function c(t,e,o,n,i={}){e instanceof HTMLCollection||e instanceof NodeList?e=Array.from(e):Array.isArray(e)||(e=[e]),Array.isArray(o)||(o=[o]);for(const s of e)for(const e of o)s[t](e,n,r({capture:!1},i));return Array.prototype.slice.call(arguments,1)}o.r(n),o.d(n,"on",(function(){return a})),o.d(n,"off",(function(){return l})),o.d(n,"createElementFromString",(function(){return p})),o.d(n,"removeAttribute",(function(){return u})),o.d(n,"createFromTemplate",(function(){return h})),o.d(n,"eventPath",(function(){return d})),o.d(n,"resolveElement",(function(){return f})),o.d(n,"adjustableInputNumbers",(function(){return v}));const a=c.bind(null,"addEventListener"),l=c.bind(null,"removeEventListener");function p(t){const e=document.createElement("div");return e.innerHTML=t.trim(),e.firstElementChild}function u(t,e){const o=t.getAttribute(e);return t.removeAttribute(e),o}function h(t){return function t(e,o={}){const n=u(e,":obj"),i=u(e,":ref"),r=n?o[n]={}:o;i&&(o[i]=e);for(const o of Array.from(e.children)){const e=u(o,":arr"),n=t(o,e?{}:r);e&&(r[e]||(r[e]=[])).push(Object.keys(n).length?n:o)}return o}(p(t))}function d(t){let e=t.path||t.composedPath&&t.composedPath();if(e)return e;let o=t.target.parentElement;for(e=[t.target,o];o=o.parentElement;)e.push(o);return e.push(document,window),e}function f(t){return t instanceof Element?t:"string"==typeof t?t.split(/>>/g).reduce((t,e,o,n)=>(t=t.querySelector(e),o<n.length-1?t.shadowRoot:t),document):null}function v(t,e=(t=>t)){function o(o){const n=[.001,.01,.1][Number(o.shiftKey||2*o.ctrlKey)]*(o.deltaY<0?1:-1);let i=0,r=t.selectionStart;t.value=t.value.replace(/[\d.]+/g,(t,o)=>o<=r&&o+t.length>=r?(r=o,e(Number(t),n,i)):(i++,t)),t.focus(),t.setSelectionRange(r,r),o.preventDefault(),t.dispatchEvent(new Event("input"))}a(t,"focus",()=>a(window,"wheel",o,{passive:!1})),a(t,"blur",()=>l(window,"wheel",o))}var m=o(0);const{min:b,max:y,floor:g,round:_}=Math;function w(t,e,o){e/=100,o/=100;const n=g(t=t/360*6),i=t-n,r=o*(1-e),s=o*(1-i*e),c=o*(1-(1-i)*e),a=n%6;return[255*[o,s,r,r,c,o][a],255*[c,o,o,s,r,r][a],255*[r,r,c,o,o,s][a]]}function C(t,e,o){const n=(2-(e/=100))*(o/=100)/2;return 0!==n&&(e=1===n?0:n<.5?e*o/(2*n):e*o/(2-2*n)),[t,100*e,100*n]}function A(t,e,o){const n=b(t/=255,e/=255,o/=255),i=y(t,e,o),r=i-n;let s,c;if(0===r)s=c=0;else{c=r/i;const n=((i-t)/6+r/2)/r,a=((i-e)/6+r/2)/r,l=((i-o)/6+r/2)/r;t===i?s=l-a:e===i?s=1/3+n-l:o===i&&(s=2/3+a-n),s<0?s+=1:s>1&&(s-=1)}return[360*s,100*c,100*i]}function k(t,e,o,n){return e/=100,o/=100,[...A(255*(1-b(1,(t/=100)*(1-(n/=100))+n)),255*(1-b(1,e*(1-n)+n)),255*(1-b(1,o*(1-n)+n)))]}function S(t,e,o){return e/=100,[t,2*(e*=(o/=100)<.5?o:1-o)/(o+e)*100,100*(o+e)]}function O(t){return A(...t.match(/.{2}/g).map(t=>parseInt(t,16)))}function j(t){t=t.match(/^[a-zA-Z]+$/)?function(t){if("black"===t.toLowerCase())return"#000";const e=document.createElement("canvas").getContext("2d");return e.fillStyle=t,"#000"===e.fillStyle?null:e.fillStyle}(t):t;const e={cmyk:/^cmyk[\D]+([\d.]+)[\D]+([\d.]+)[\D]+([\d.]+)[\D]+([\d.]+)/i,rgba:/^((rgba)|rgb)[\D]+([\d.]+)[\D]+([\d.]+)[\D]+([\d.]+)[\D]*?([\d.]+|$)/i,hsla:/^((hsla)|hsl)[\D]+([\d.]+)[\D]+([\d.]+)[\D]+([\d.]+)[\D]*?([\d.]+|$)/i,hsva:/^((hsva)|hsv)[\D]+([\d.]+)[\D]+([\d.]+)[\D]+([\d.]+)[\D]*?([\d.]+|$)/i,hexa:/^#?(([\dA-Fa-f]{3,4})|([\dA-Fa-f]{6})|([\dA-Fa-f]{8}))$/i},o=t=>t.map(t=>/^(|\d+)\.\d+|\d+$/.test(t)?Number(t):void 0);let n;t:for(const i in e){if(!(n=e[i].exec(t)))continue;const r=t=>!!n[2]==("number"==typeof t);switch(i){case"cmyk":{const[,t,e,r,s]=o(n);if(t>100||e>100||r>100||s>100)break t;return{values:k(t,e,r,s),type:i}}case"rgba":{const[,,,t,e,s,c]=o(n);if(t>255||e>255||s>255||c<0||c>1||!r(c))break t;return{values:[...A(t,e,s),c],a:c,type:i}}case"hexa":{let[,t]=n;4!==t.length&&3!==t.length||(t=t.split("").map(t=>t+t).join(""));const e=t.substring(0,6);let o=t.substring(6);return o=o?parseInt(o,16)/255:void 0,{values:[...O(e),o],a:o,type:i}}case"hsla":{const[,,,t,e,s,c]=o(n);if(t>360||e>100||s>100||c<0||c>1||!r(c))break t;return{values:[...S(t,e,s),c],a:c,type:i}}case"hsva":{const[,,,t,e,s,c]=o(n);if(t>360||e>100||s>100||c<0||c>1||!r(c))break t;return{values:[t,e,s,c],a:c,type:i}}}}return{values:null,type:null}}function x(t=0,e=0,o=0,n=1){const i=(t,e)=>(o=-1)=>e(~o?t.map(t=>Number(t.toFixed(o))):t),r={h:t,s:e,v:o,a:n,toHSVA(){const t=[r.h,r.s,r.v,r.a];return t.toString=i(t,t=>"hsva(".concat(t[0],", ").concat(t[1],"%, ").concat(t[2],"%, ").concat(r.a,")")),t},toHSLA(){const t=[...C(r.h,r.s,r.v),r.a];return t.toString=i(t,t=>"hsla(".concat(t[0],", ").concat(t[1],"%, ").concat(t[2],"%, ").concat(r.a,")")),t},toRGBA(){const t=[...w(r.h,r.s,r.v),r.a];return t.toString=i(t,t=>"rgba(".concat(t[0],", ").concat(t[1],", ").concat(t[2],", ").concat(r.a,")")),t},toCMYK(){const t=function(t,e,o){const n=w(t,e,o),i=n[0]/255,r=n[1]/255,s=n[2]/255,c=b(1-i,1-r,1-s);return[100*(1===c?0:(1-i-c)/(1-c)),100*(1===c?0:(1-r-c)/(1-c)),100*(1===c?0:(1-s-c)/(1-c)),100*c]}(r.h,r.s,r.v);return t.toString=i(t,t=>"cmyk(".concat(t[0],"%, ").concat(t[1],"%, ").concat(t[2],"%, ").concat(t[3],"%)")),t},toHEXA(){const t=function(t,e,o){return w(t,e,o).map(t=>_(t).toString(16).padStart(2,"0"))}(r.h,r.s,r.v),e=r.a>=1?"":Number((255*r.a).toFixed(0)).toString(16).toUpperCase().padStart(2,"0");return e&&t.push(e),t.toString=()=>"#".concat(t.join("").toUpperCase()),t},clone:()=>x(r.h,r.s,r.v,r.a)};return r}const E=t=>Math.max(Math.min(t,1),0);function L(t){const e={options:Object.assign({lock:null,onchange:()=>0,onstop:()=>0},t),_keyboard(t){const{options:o}=e,{type:n,key:i}=t;if(document.activeElement===o.wrapper){const{lock:o}=e.options,r="ArrowUp"===i,s="ArrowRight"===i,c="ArrowDown"===i,a="ArrowLeft"===i;if("keydown"===n&&(r||s||c||a)){let n=0,i=0;"v"===o?n=r||s?1:-1:"h"===o?n=r||s?-1:1:(i=r?-1:c?1:0,n=a?-1:s?1:0),e.update(E(e.cache.x+.01*n),E(e.cache.y+.01*i)),t.preventDefault()}else i.startsWith("Arrow")&&(e.options.onstop(),t.preventDefault())}},_tapstart(t){a(document,["mouseup","touchend","touchcancel"],e._tapstop),a(document,["mousemove","touchmove"],e._tapmove),t.preventDefault(),e._tapmove(t)},_tapmove(t){const{options:o,cache:n}=e,{lock:i,element:r,wrapper:s}=o,c=s.getBoundingClientRect();let a=0,l=0;if(t){const e=t&&t.touches&&t.touches[0];a=t?(e||t).clientX:0,l=t?(e||t).clientY:0,a<c.left?a=c.left:a>c.left+c.width&&(a=c.left+c.width),l<c.top?l=c.top:l>c.top+c.height&&(l=c.top+c.height),a-=c.left,l-=c.top}else n&&(a=n.x*c.width,l=n.y*c.height);"h"!==i&&(r.style.left="calc(".concat(a/c.width*100,"% - ").concat(r.offsetWidth/2,"px)")),"v"!==i&&(r.style.top="calc(".concat(l/c.height*100,"% - ").concat(r.offsetHeight/2,"px)")),e.cache={x:a/c.width,y:l/c.height};const p=E(a/s.offsetWidth),u=E(l/s.offsetHeight);switch(i){case"v":return o.onchange(p);case"h":return o.onchange(u);default:return o.onchange(p,u)}},_tapstop(){e.options.onstop(),l(document,["mouseup","touchend","touchcancel"],e._tapstop),l(document,["mousemove","touchmove"],e._tapmove)},trigger(){e._tapmove()},update(t=0,o=0){const{left:n,top:i,width:r,height:s}=e.options.wrapper.getBoundingClientRect();"h"===e.options.lock&&(o=t),e._tapmove({clientX:n+r*t,clientY:i+s*o})},destroy(){const{options:t,_tapstart:o,_keyboard:n}=e;l(document,["keydown","keyup"],n),l([t.wrapper,t.element],"mousedown",o),l([t.wrapper,t.element],"touchstart",o,{passive:!1})}},{options:o,_tapstart:n,_keyboard:i}=e;return a([o.wrapper,o.element],"mousedown",n),a([o.wrapper,o.element],"touchstart",n,{passive:!1}),a(document,["keydown","keyup"],i),e}function P(t={}){t=Object.assign({onchange:()=>0,className:"",elements:[]},t);const e=a(t.elements,["click","change"],e=>{t.elements.forEach(o=>o.classList[e.target===o?"add":"remove"](t.className)),t.onchange(e)});return{destroy:()=>l(...e)}}function B({el:t,reference:e,padding:o=8}){const n={start:"sme",middle:"mse",end:"ems"},i={top:"tbrl",right:"rltb",bottom:"btrl",left:"lrbt"},r=((t={})=>(e,o=t[e])=>{if(o)return o;const[n,i="middle"]=e.split("-"),r="top"===n||"bottom"===n;return t[e]={position:n,variant:i,isVertical:r}})();return{update(s,c=!1){const{position:a,variant:l,isVertical:p}=r(s),u=e.getBoundingClientRect(),h=t.getBoundingClientRect(),d=t=>t?{t:u.top-h.height-o,b:u.bottom+o}:{r:u.right+o,l:u.left-h.width-o},f=t=>t?{s:u.left+u.width-h.width,m:-h.width/2+(u.left+u.width/2),e:u.left}:{s:u.bottom-h.height,m:u.bottom-u.height/2-h.height/2,e:u.bottom-u.height},v={},m=(t,e,o)=>{const n="top"===o,i=n?h.height:h.width,r=window[n?"innerHeight":"innerWidth"];for(const n of t){const t=e[n],s=v[o]="".concat(t,"px");if(t>0&&t+i<r)return s}return null};for(const e of[p,!p]){const o=e?"top":"left",r=e?"left":"top",s=m(i[a],d(e),o),c=m(n[l],f(e),r);if(s&&c)return t.style[r]=c,void(t.style[o]=s)}c?(t.style.top="".concat((window.innerHeight-h.height)/2,"px"),t.style.left="".concat((window.innerWidth-h.width)/2,"px")):(t.style.left=v.left,t.style.top=v.top)}}}function H(t,e,o){return e in t?Object.defineProperty(t,e,{value:o,enumerable:!0,configurable:!0,writable:!0}):t[e]=o,t}class R{constructor(t){H(this,"_initializingActive",!0),H(this,"_recalc",!0),H(this,"_nanopop",null),H(this,"_root",null),H(this,"_color",x()),H(this,"_lastColor",x()),H(this,"_swatchColors",[]),H(this,"_eventListener",{init:[],save:[],hide:[],show:[],clear:[],change:[],changestop:[],cancel:[],swatchselect:[]}),this.options=t=Object.assign({appClass:null,theme:"classic",useAsButton:!1,padding:8,disabled:!1,comparison:!0,closeOnScroll:!1,outputPrecision:0,lockOpacity:!1,autoReposition:!0,container:"body",components:{interaction:{}},strings:{},swatches:null,inline:!1,sliders:null,default:"#42445a",defaultRepresentation:null,position:"bottom-middle",adjustableNumbers:!0,showAlways:!1,closeWithKey:"Escape"},t);const{swatches:e,components:o,theme:n,sliders:i,lockOpacity:r,padding:s}=t;["nano","monolith"].includes(n)&&!i&&(t.sliders="h"),o.interaction||(o.interaction={});const{preview:c,opacity:a,hue:l,palette:p}=o;o.opacity=!r&&a,o.palette=p||c||a||l,this._preBuild(),this._buildComponents(),this._bindEvents(),this._finalBuild(),e&&e.length&&e.forEach(t=>this.addSwatch(t));const{button:u,app:h}=this._root;this._nanopop=B({reference:u,padding:s,el:h}),u.setAttribute("role","button"),u.setAttribute("aria-label","toggle color picker dialog");const d=this;requestAnimationFrame((function e(){if(!h.offsetWidth&&h.parentElement!==t.container)return requestAnimationFrame(e);d.setColor(t.default),d._rePositioningPicker(),t.defaultRepresentation&&(d._representation=t.defaultRepresentation,d.setColorRepresentation(d._representation)),t.showAlways&&d.show(),d._initializingActive=!1,d._emit("init")}))}_preBuild(){const t=this.options;for(const e of["el","container"])t[e]=f(t[e]);this._root=(({components:t,strings:e,useAsButton:o,inline:n,appClass:i,theme:r,lockOpacity:s})=>{const c=t=>t?"":'style="display:none" hidden',a=h('\n      <div :ref="root" class="pickr">\n\n        '.concat(o?"":'<button type="button" :ref="button" class="pcr-button"></button>','\n\n        <div :ref="app" class="pcr-app ').concat(i||"",'" data-theme="').concat(r,'" ').concat(n?'style="position: unset"':"",' aria-label="color picker dialog" role="form">\n          <div class="pcr-selection" ').concat(c(t.palette),'>\n            <div :obj="preview" class="pcr-color-preview" ').concat(c(t.preview),'>\n              <button type="button" :ref="lastColor" class="pcr-last-color" aria-label="use previous color"></button>\n              <div :ref="currentColor" class="pcr-current-color"></div>\n            </div>\n\n            <div :obj="palette" class="pcr-color-palette">\n              <div :ref="picker" class="pcr-picker"></div>\n              <div :ref="palette" class="pcr-palette" tabindex="0" aria-label="color selection area" role="listbox"></div>\n            </div>\n\n            <div :obj="hue" class="pcr-color-chooser" ').concat(c(t.hue),'>\n              <div :ref="picker" class="pcr-picker"></div>\n              <div :ref="slider" class="pcr-hue pcr-slider" tabindex="0" aria-label="hue selection slider" role="slider"></div>\n            </div>\n\n            <div :obj="opacity" class="pcr-color-opacity" ').concat(c(t.opacity),'>\n              <div :ref="picker" class="pcr-picker"></div>\n              <div :ref="slider" class="pcr-opacity pcr-slider" tabindex="0" aria-label="opacity selection slider" role="slider"></div>\n            </div>\n          </div>\n\n          <div class="pcr-swatches ').concat(t.palette?"":"pcr-last",'" :ref="swatches"></div> \n\n          <div :obj="interaction" class="pcr-interaction" ').concat(c(Object.keys(t.interaction).length),'>\n            <input :ref="result" class="pcr-result" type="text" spellcheck="false" ').concat(c(t.interaction.input),'>\n\n            <input :arr="options" class="pcr-type" data-type="HEXA" value="').concat(s?"HEX":"HEXA",'" type="button" ').concat(c(t.interaction.hex),'>\n            <input :arr="options" class="pcr-type" data-type="RGBA" value="').concat(s?"RGB":"RGBA",'" type="button" ').concat(c(t.interaction.rgba),'>\n            <input :arr="options" class="pcr-type" data-type="HSLA" value="').concat(s?"HSL":"HSLA",'" type="button" ').concat(c(t.interaction.hsla),'>\n            <input :arr="options" class="pcr-type" data-type="HSVA" value="').concat(s?"HSV":"HSVA",'" type="button" ').concat(c(t.interaction.hsva),'>\n            <input :arr="options" class="pcr-type" data-type="CMYK" value="CMYK" type="button" ').concat(c(t.interaction.cmyk),'>\n\n            <input :ref="save" class="pcr-save" value="').concat(e.save||"Save",'" type="button" ').concat(c(t.interaction.save),' aria-label="save and exit">\n            <input :ref="cancel" class="pcr-cancel" value="').concat(e.cancel||"Cancel",'" type="button" ').concat(c(t.interaction.cancel),' aria-label="cancel and exit">\n            <input :ref="clear" class="pcr-clear" value="').concat(e.clear||"Clear",'" type="button" ').concat(c(t.interaction.clear),' aria-label="clear and exit">\n          </div>\n        </div>\n      </div>\n    ')),l=a.interaction;return l.options.find(t=>!t.hidden&&!t.classList.add("active")),l.type=()=>l.options.find(t=>t.classList.contains("active")),a})(t),t.useAsButton&&(this._root.button=t.el),t.container.appendChild(this._root.root)}_finalBuild(){const t=this.options,e=this._root;if(t.container.removeChild(e.root),t.inline){const o=t.el.parentElement;t.el.nextSibling?o.insertBefore(e.app,t.el.nextSibling):o.appendChild(e.app)}else t.container.appendChild(e.app);t.useAsButton?t.inline&&t.el.remove():t.el.parentNode.replaceChild(e.root,t.el),t.disabled&&this.disable(),t.comparison||(e.button.style.transition="none",t.useAsButton||(e.preview.lastColor.style.transition="none")),this.hide()}_buildComponents(){const t=this,e=this.options.components,o=(t.options.sliders||"v").repeat(2),[n,i]=o.match(/^[vh]+$/g)?o:[],r=()=>this._color||(this._color=this._lastColor.clone()),s={palette:L({element:t._root.palette.picker,wrapper:t._root.palette.palette,onstop:()=>t._emit("changestop",t),onchange(o,n){if(!e.palette)return;const i=r(),{_root:s,options:c}=t,{lastColor:a,currentColor:l}=s.preview;t._recalc&&(i.s=100*o,i.v=100-100*n,i.v<0&&(i.v=0),t._updateOutput());const p=i.toRGBA().toString(0);this.element.style.background=p,this.wrapper.style.background="\n                        linear-gradient(to top, rgba(0, 0, 0, ".concat(i.a,"), transparent),\n                        linear-gradient(to left, hsla(").concat(i.h,", 100%, 50%, ").concat(i.a,"), rgba(255, 255, 255, ").concat(i.a,"))\n                    "),c.comparison?c.useAsButton||t._lastColor||(a.style.color=p):(s.button.style.color=p,s.button.classList.remove("clear")),t.activateSwatch(),l.style.color=p}}),hue:L({lock:"v"===i?"h":"v",element:t._root.hue.picker,wrapper:t._root.hue.slider,onstop:()=>t._emit("changestop",t),onchange(o){if(!e.hue||!e.palette)return;const n=r();t._recalc&&(n.h=360*o),this.element.style.backgroundColor="hsl(".concat(n.h,", 100%, 50%)"),s.palette.trigger()}}),opacity:L({lock:"v"===n?"h":"v",element:t._root.opacity.picker,wrapper:t._root.opacity.slider,onstop:()=>t._emit("changestop",t),onchange(o){if(!e.opacity||!e.palette)return;const n=r();t._recalc&&(n.a=Math.round(100*o)/100),this.element.style.background="rgba(0, 0, 0, ".concat(n.a,")"),s.palette.trigger()}}),selectable:P({elements:t._root.interaction.options,className:"active",onchange(e){t._representation=e.target.getAttribute("data-type").toUpperCase(),t._recalc&&t._updateOutput()}})};this._components=s}_bindEvents(){const{_root:t,options:e}=this,o=[a(t.interaction.clear,"click",()=>this._clearColor()),a([t.interaction.cancel,t.preview.lastColor],"click",()=>{this._emit("cancel",this),this.setHSVA(...(this._lastColor||this._color).toHSVA(),!0)}),a(t.interaction.save,"click",()=>{!this.applyColor()&&!e.showAlways&&this.hide()}),a(t.interaction.result,["keyup","input"],t=>{this._recalc=!1,this.setColor(t.target.value,!0)&&!this._initializingActive&&this._emit("change",this._color),t.stopImmediatePropagation()}),a(t.interaction.result,["focus","blur"],t=>{this._recalc="blur"===t.type}),a([t.palette.palette,t.palette.picker,t.hue.slider,t.hue.picker,t.opacity.slider,t.opacity.picker],["mousedown","touchstart"],()=>this._recalc=!0)];if(!e.showAlways){const n=e.closeWithKey;o.push(a(t.button,"click",()=>this.isOpen()?this.hide():this.show()),a(document,"keyup",t=>this.isOpen()&&(t.key===n||t.code===n)&&this.hide()),a(document,["touchstart","mousedown"],e=>{this.isOpen()&&!d(e).some(e=>e===t.app||e===t.button)&&this.hide()},{capture:!0}))}if(e.adjustableNumbers){const e={rgba:[255,255,255,1],hsva:[360,100,100,1],hsla:[360,100,100,1],cmyk:[100,100,100,100]};v(t.interaction.result,(t,o,n)=>{const i=e[this.getColorRepresentation().toLowerCase()];if(i){const e=i[n],r=t+(e>=100?1e3*o:o);return r<=0?0:Number((r<e?r:e).toPrecision(3))}return t})}if(e.autoReposition&&!e.inline){let t=null;const n=this;o.push(a(window,["scroll","resize"],()=>{n.isOpen()&&(e.closeOnScroll&&n.hide(),null===t?(t=setTimeout(()=>t=null,100),requestAnimationFrame((function e(){n._rePositioningPicker(),null!==t&&requestAnimationFrame(e)}))):(clearTimeout(t),t=setTimeout(()=>t=null,100)))},{capture:!0}))}this._eventBindings=o}_rePositioningPicker(){const{options:t}=this;t.inline||this._nanopop.update(t.position,!this._recalc)}_updateOutput(){const{_root:t,_color:e,options:o}=this;if(t.interaction.type()){const n="to".concat(t.interaction.type().getAttribute("data-type"));t.interaction.result.value="function"==typeof e[n]?e[n]().toString(o.outputPrecision):""}!this._initializingActive&&this._recalc&&this._emit("change",e)}_clearColor(t=!1){const{_root:e,options:o}=this;o.useAsButton||(e.button.style.color="transparent"),e.button.classList.add("clear"),e.interaction.result.value="",this._lastColor=null,this._initializingActive||t||(this._emit("save",null),this._emit("clear",this))}_parseLocalColor(t){const{values:e,type:o,a:n}=j(t),{lockOpacity:i}=this.options,r=void 0!==n&&1!==n;return e&&3===e.length&&(e[3]=void 0),{values:!e||i&&r?null:e,type:o}}_emit(t,...e){this._eventListener[t].forEach(t=>t(...e,this))}on(t,e){return"function"==typeof e&&"string"==typeof t&&t in this._eventListener&&this._eventListener[t].push(e),this}off(t,e){const o=this._eventListener[t];if(o){const t=o.indexOf(e);~t&&o.splice(t,1)}return this}addSwatch(t){const{values:e}=this._parseLocalColor(t);if(e){const{_swatchColors:t,_root:o}=this,n=x(...e),i=p('<div class="pcr-swatch" style="color: '.concat(n.toRGBA().toString(0),'" aria-label="color swatch"></div>'));return o.swatches.appendChild(i),t.push({el:i,color:n}),this._eventBindings.push(a(i,"click",()=>{this.setHSVA(...n.toHSVA(),!0),this._emit("swatchselect",n),this._emit("change",n)})),i}return!1}removeSwatch(t){const e=this._swatchColors[t];if(e){const{el:o}=e;return this._root.swatches.removeChild(o),this._swatchColors.splice(t,1),!0}return!1}activateSwatch(){const t=this.getColor().toHEXA().toString();for(const{el:e,color:o}of this._swatchColors)e.classList[t===o.toHEXA().toString()?"add":"remove"]("pcr-active")}applyColor(t=!1){const{preview:e,button:o}=this._root,n=this._color.toRGBA().toString(0);return e.lastColor.style.color=n,this.options.useAsButton||(o.style.color=n),o.classList.remove("clear"),this._lastColor=this._color.clone(),this._initializingActive||t||this._emit("save",this._color),this}destroy(){this._eventBindings.forEach(t=>l(...t)),Object.keys(this._components).forEach(t=>this._components[t].destroy())}destroyAndRemove(){this.destroy();const{root:t,app:e}=this._root;t.parentElement&&t.parentElement.removeChild(t),e.parentElement.removeChild(e),Object.keys(this).forEach(t=>this[t]=null)}hide(){return this._root.app.classList.remove("visible"),this._emit("hide",this),this}show(){return this.options.disabled||(this._root.app.classList.add("visible"),this._rePositioningPicker(),this._emit("show",this)),this}isOpen(){return this._root.app.classList.contains("visible")}setHSVA(t=360,e=0,o=0,n=1,i=!1){const r=this._recalc;if(this._recalc=!1,t<0||t>360||e<0||e>100||o<0||o>100||n<0||n>1)return!1;this._color=x(t,e,o,n);const{hue:s,opacity:c,palette:a}=this._components;return s.update(t/360),c.update(n),a.update(e/100,1-o/100),i||this.applyColor(),r&&this._updateOutput(),this._recalc=r,!0}setColor(t,e=!1){if(null===t)return this._clearColor(e),!0;const{values:o,type:n}=this._parseLocalColor(t);if(o){const t=n.toUpperCase(),{options:i}=this._root.interaction,r=i.find(e=>e.getAttribute("data-type")===t);if(r&&!r.hidden)for(const t of i)t.classList[t===r?"add":"remove"]("active");return!!this.setHSVA(...o,e)&&this.setColorRepresentation(t)}return!1}setColorRepresentation(t){return t=t.toUpperCase(),!!this._root.interaction.options.find(e=>e.getAttribute("data-type").startsWith(t)&&e.dispatchEvent(new Event("change")))}getColorRepresentation(){return this._representation}getColor(){return this._color}getSelectedColor(){return this._lastColor}getRoot(){return this._root}disable(){return this.hide(),this.options.disabled=!0,this._root.button.classList.add("disabled"),this}enable(){return this.options.disabled=!1,this._root.button.classList.remove("disabled"),this}}R.utils=n,R.libs={HSVaColor:x,Moveable:L,Nanopop:B,Selectable:P},R.create=t=>new R(t),R.version=m.a;e.default=R}]).default}));
assets/lib/tipsy/tipsy.min.js000064400000011573151327220410012260 0ustar00!function($){function maybeCall(thing,ctx){return"function"==typeof thing?thing.call(ctx):thing}function isElementInDOM(ele){for(;ele=ele.parentNode;)if(ele==document)return!0;return!1}function Tipsy(element,options){this.$element=$(element),this.options=options,this.enabled=!0,this.fixTitle()}Tipsy.prototype={show:function(){var title=this.getTitle();if(title&&this.enabled){var $tip=this.tip();$tip.find(".tipsy-inner")[this.options.html?"html":"text"](title),$tip[0].className="tipsy",$tip.remove().css({top:0,left:0,visibility:"hidden",display:"block"}).prependTo(document.body);var tp,pos=$.extend({},this.$element.offset(),{width:this.$element[0].offsetWidth,height:this.$element[0].offsetHeight}),actualWidth=$tip[0].offsetWidth,actualHeight=$tip[0].offsetHeight,gravity=maybeCall(this.options.gravity,this.$element[0]);switch(gravity.charAt(0)){case"n":tp={top:pos.top+pos.height+this.options.offset,left:pos.left+pos.width/2-actualWidth/2};break;case"s":tp={top:pos.top-actualHeight-this.options.offset,left:pos.left+pos.width/2-actualWidth/2};break;case"e":tp={top:pos.top+pos.height/2-actualHeight/2,left:pos.left-actualWidth-this.options.offset};break;case"w":tp={top:pos.top+pos.height/2-actualHeight/2,left:pos.left+pos.width+this.options.offset}}2==gravity.length&&("w"==gravity.charAt(1)?tp.left=pos.left+pos.width/2-15:tp.left=pos.left+pos.width/2-actualWidth+15),$tip.css(tp).addClass("tipsy-"+gravity),$tip.find(".tipsy-arrow")[0].className="tipsy-arrow tipsy-arrow-"+gravity.charAt(0),this.options.className&&$tip.addClass(maybeCall(this.options.className,this.$element[0])),this.options.fade?$tip.stop().css({opacity:0,display:"block",visibility:"visible"}).animate({opacity:this.options.opacity}):$tip.css({visibility:"visible",opacity:this.options.opacity})}},hide:function(){this.options.fade?this.tip().stop().fadeOut(function(){$(this).remove()}):this.tip().remove()},fixTitle:function(){var $e=this.$element;($e.attr("title")||"string"!=typeof $e.attr("original-title"))&&$e.attr("original-title",$e.attr("title")||"").removeAttr("title")},getTitle:function(){var title,$e=this.$element,o=this.options;this.fixTitle();var title,o=this.options;return"string"==typeof o.title?title=$e.attr("title"==o.title?"original-title":o.title):"function"==typeof o.title&&(title=o.title.call($e[0])),title=(""+title).replace(/(^\s*|\s*$)/,""),title||o.fallback},tip:function(){return this.$tip||(this.$tip=$('<div class="tipsy"></div>').html('<div class="tipsy-arrow"></div><div class="tipsy-inner"></div>'),this.$tip.data("tipsy-pointee",this.$element[0])),this.$tip},validate:function(){this.$element[0].parentNode||(this.hide(),this.$element=null,this.options=null)},enable:function(){this.enabled=!0},disable:function(){this.enabled=!1},toggleEnabled:function(){this.enabled=!this.enabled}},$.fn.tipsy=function(options){function get(ele){var tipsy=$.data(ele,"tipsy");return tipsy||(tipsy=new Tipsy(ele,$.fn.tipsy.elementOptions(ele,options)),$.data(ele,"tipsy",tipsy)),tipsy}function enter(){var tipsy=get(this);tipsy.hoverState="in",0==options.delayIn?tipsy.show():(tipsy.fixTitle(),setTimeout(function(){"in"==tipsy.hoverState&&tipsy.show()},options.delayIn))}function leave(){var tipsy=get(this);tipsy.hoverState="out",0==options.delayOut?tipsy.hide():setTimeout(function(){"out"==tipsy.hoverState&&tipsy.hide()},options.delayOut)}if(options===!0)return this.data("tipsy");if("string"==typeof options){var tipsy=this.data("tipsy");return tipsy&&tipsy[options](),this}if(options=$.extend({},$.fn.tipsy.defaults,options),options.live||this.each(function(){get(this)}),"manual"!=options.trigger){var binder=options.live?"live":"bind",eventIn="hover"==options.trigger?"mouseenter":"focus",eventOut="hover"==options.trigger?"mouseleave":"blur";this[binder](eventIn,enter)[binder](eventOut,leave)}return this},$.fn.tipsy.defaults={className:null,delayIn:0,delayOut:0,fade:!1,fallback:"",gravity:"n",html:!1,live:!1,offset:0,opacity:.8,title:"title",trigger:"hover"},$.fn.tipsy.revalidate=function(){$(".tipsy").each(function(){var pointee=$.data(this,"tipsy-pointee");pointee&&isElementInDOM(pointee)||$(this).remove()})},$.fn.tipsy.elementOptions=function(ele,options){return $.metadata?$.extend({},options,$(ele).metadata()):options},$.fn.tipsy.autoNS=function(){return $(this).offset().top>$(document).scrollTop()+$(window).height()/2?"s":"n"},$.fn.tipsy.autoWE=function(){return $(this).offset().left>$(document).scrollLeft()+$(window).width()/2?"e":"w"},$.fn.tipsy.autoBounds=function(margin,prefer){return function(){var dir={ns:prefer[0],ew:prefer.length>1&&prefer[1]},boundTop=$(document).scrollTop()+margin,boundLeft=$(document).scrollLeft()+margin,$this=$(this);return $this.offset().top<boundTop&&(dir.ns="n"),$this.offset().left<boundLeft&&(dir.ew="w"),$(window).width()+$(document).scrollLeft()-$this.offset().left<margin&&(dir.ew="e"),$(window).height()+$(document).scrollTop()-$this.offset().top<margin&&(dir.ns="s"),dir.ns+(dir.ew?dir.ew:"")}}}(jQuery);assets/lib/tipsy/tipsy.js000064400000017204151327220410011473 0ustar00// tipsy, facebook style tooltips for jquery
// version 1.0.0a
// (c) 2008-2010 jason frame [jason@onehackoranother.com]
// released under the MIT license

(function($) {

	function maybeCall(thing, ctx) {
		return (typeof thing == 'function') ? (thing.call(ctx)) : thing;
	};

	function isElementInDOM(ele) {
		while (ele = ele.parentNode) {
			if (ele == document) return true;
		}
		return false;
	};

	function Tipsy(element, options) {
		this.$element = $(element);
		this.options = options;
		this.enabled = true;
		this.fixTitle();
	};

	Tipsy.prototype = {
		show: function() {
			var title = this.getTitle();
			if (title && this.enabled) {
				var $tip = this.tip();

				$tip.find('.tipsy-inner')[this.options.html ? 'html' : 'text'](title);
				$tip[0].className = 'tipsy'; // reset classname in case of dynamic gravity
				$tip.remove().css({top: 0, left: 0, visibility: 'hidden', display: 'block'}).prependTo(document.body);

				var pos = $.extend({}, this.$element.offset(), {
					width: this.$element[0].offsetWidth,
					height: this.$element[0].offsetHeight
				});

				var actualWidth = $tip[0].offsetWidth,
					actualHeight = $tip[0].offsetHeight,
					gravity = maybeCall(this.options.gravity, this.$element[0]);

				var tp;
				switch (gravity.charAt(0)) {
					case 'n':
						tp = {top: pos.top + pos.height + this.options.offset, left: pos.left + pos.width / 2 - actualWidth / 2};
						break;
					case 's':
						tp = {top: pos.top - actualHeight - this.options.offset, left: pos.left + pos.width / 2 - actualWidth / 2};
						break;
					case 'e':
						tp = {top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth - this.options.offset};
						break;
					case 'w':
						tp = {top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width + this.options.offset};
						break;
				}

				if (gravity.length == 2) {
					if (gravity.charAt(1) == 'w') {
						tp.left = pos.left + pos.width / 2 - 15;
					} else {
						tp.left = pos.left + pos.width / 2 - actualWidth + 15;
					}
				}

				$tip.css(tp).addClass('tipsy-' + gravity);
				$tip.find('.tipsy-arrow')[0].className = 'tipsy-arrow tipsy-arrow-' + gravity.charAt(0);
				if (this.options.className) {
					$tip.addClass(maybeCall(this.options.className, this.$element[0]));
				}

				if (this.options.fade) {
					$tip.stop().css({opacity: 0, display: 'block', visibility: 'visible'}).animate({opacity: this.options.opacity});
				} else {
					$tip.css({visibility: 'visible', opacity: this.options.opacity});
				}
			}
		},

		hide: function() {
			if (this.options.fade) {
				this.tip().stop().fadeOut(function() { $(this).remove(); });
			} else {
				this.tip().remove();
			}
		},

		fixTitle: function() {
			var $e = this.$element;
			if ($e.attr('title') || typeof($e.attr('original-title')) != 'string') {
				$e.attr('original-title', $e.attr('title') || '').removeAttr('title');
			}
		},

		getTitle: function() {
			var title, $e = this.$element, o = this.options;
			this.fixTitle();
			var title, o = this.options;
			if (typeof o.title == 'string') {
				title = $e.attr(o.title == 'title' ? 'original-title' : o.title);
			} else if (typeof o.title == 'function') {
				title = o.title.call($e[0]);
			}
			title = ('' + title).replace(/(^\s*|\s*$)/, "");
			return title || o.fallback;
		},

		tip: function() {
			if (!this.$tip) {
				this.$tip = $('<div class="tipsy"></div>').html('<div class="tipsy-arrow"></div><div class="tipsy-inner"></div>');
				this.$tip.data('tipsy-pointee', this.$element[0]);
			}
			return this.$tip;
		},

		validate: function() {
			if (!this.$element[0].parentNode) {
				this.hide();
				this.$element = null;
				this.options = null;
			}
		},

		enable: function() { this.enabled = true; },
		disable: function() { this.enabled = false; },
		toggleEnabled: function() { this.enabled = !this.enabled; }
	};

	$.fn.tipsy = function(options) {

		if (options === true) {
			return this.data('tipsy');
		} else if (typeof options == 'string') {
			var tipsy = this.data('tipsy');
			if (tipsy) tipsy[options]();
			return this;
		}

		options = $.extend({}, $.fn.tipsy.defaults, options);

		function get(ele) {
			var tipsy = $.data(ele, 'tipsy');
			if (!tipsy) {
				tipsy = new Tipsy(ele, $.fn.tipsy.elementOptions(ele, options));
				$.data(ele, 'tipsy', tipsy);
			}
			return tipsy;
		}

		function enter() {
			var tipsy = get(this);
			tipsy.hoverState = 'in';
			if (options.delayIn == 0) {
				tipsy.show();
			} else {
				tipsy.fixTitle();
				setTimeout(function() { if (tipsy.hoverState == 'in') tipsy.show(); }, options.delayIn);
			}
		};

		function leave() {
			var tipsy = get(this);
			tipsy.hoverState = 'out';
			if (options.delayOut == 0) {
				tipsy.hide();
			} else {
				setTimeout(function() { if (tipsy.hoverState == 'out') tipsy.hide(); }, options.delayOut);
			}
		};

		if (!options.live) this.each(function() { get(this); });

		if (options.trigger != 'manual') {
			var binder   = options.live ? 'live' : 'bind',
				eventIn  = options.trigger == 'hover' ? 'mouseenter' : 'focus',
				eventOut = options.trigger == 'hover' ? 'mouseleave' : 'blur';
			this[binder](eventIn, enter)[binder](eventOut, leave);
		}

		return this;

	};

	$.fn.tipsy.defaults = {
		className: null,
		delayIn: 0,
		delayOut: 0,
		fade: false,
		fallback: '',
		gravity: 'n',
		html: false,
		live: false,
		offset: 0,
		opacity: 0.8,
		title: 'title',
		trigger: 'hover'
	};

	$.fn.tipsy.revalidate = function() {
		$('.tipsy').each(function() {
			var pointee = $.data(this, 'tipsy-pointee');
			if (!pointee || !isElementInDOM(pointee)) {
				$(this).remove();
			}
		});
	};

	// Overwrite this method to provide options on a per-element basis.
	// For example, you could store the gravity in a 'tipsy-gravity' attribute:
	// return $.extend({}, options, {gravity: $(ele).attr('tipsy-gravity') || 'n' });
	// (remember - do not modify 'options' in place!)
	$.fn.tipsy.elementOptions = function(ele, options) {
		return $.metadata ? $.extend({}, options, $(ele).metadata()) : options;
	};

	$.fn.tipsy.autoNS = function() {
		return $(this).offset().top > ($(document).scrollTop() + $(window).height() / 2) ? 's' : 'n';
	};

	$.fn.tipsy.autoWE = function() {
		return $(this).offset().left > ($(document).scrollLeft() + $(window).width() / 2) ? 'e' : 'w';
	};

	/**
	 * yields a closure of the supplied parameters, producing a function that takes
	 * no arguments and is suitable for use as an autogravity function like so:
	 *
	 * @param margin (int) - distance from the viewable region edge that an
	 *        element should be before setting its tooltip's gravity to be away
	 *        from that edge.
	 * @param prefer (string, e.g. 'n', 'sw', 'w') - the direction to prefer
	 *        if there are no viewable region edges effecting the tooltip's
	 *        gravity. It will try to vary from this minimally, for example,
	 *        if 'sw' is preferred and an element is near the right viewable
	 *        region edge, but not the top edge, it will set the gravity for
	 *        that element's tooltip to be 'se', preserving the southern
	 *        component.
	 */
	$.fn.tipsy.autoBounds = function(margin, prefer) {
		return function() {
			var dir = {ns: prefer[0], ew: (prefer.length > 1 ? prefer[1] : false)},
				boundTop = $(document).scrollTop() + margin,
				boundLeft = $(document).scrollLeft() + margin,
				$this = $(this);

			if ($this.offset().top < boundTop) dir.ns = 'n';
			if ($this.offset().left < boundLeft) dir.ew = 'w';
			if ($(window).width() + $(document).scrollLeft() - $this.offset().left < margin) dir.ew = 'e';
			if ($(window).height() + $(document).scrollTop() - $this.offset().top < margin) dir.ns = 's';

			return dir.ns + (dir.ew ? dir.ew : '');
		}
	};

})(jQuery);
assets/lib/dialog/dialog.min.js000064400000025157151327220410012441 0ustar00/*! dialogs-manager v4.8.1 | (c) Kobi Zaltzberg | https://github.com/kobizz/dialogs-manager/blob/master/LICENSE.txt 
 2020-08-17 18:55 */
!function(a,b){"use strict";var c={widgetsTypes:{},createWidgetType:function(b,d,e){e||(e=this.Widget);var f=function(){e.apply(this,arguments)},g=f.prototype=new e(b);return g.types=g.types.concat([b]),a.extend(g,d),g.constructor=f,f.extend=function(a,b){return c.createWidgetType(a,b,f)},f},addWidgetType:function(a,b,c){return b&&b.prototype instanceof this.Widget?this.widgetsTypes[a]=b:this.widgetsTypes[a]=this.createWidgetType(a,b,c)},getWidgetType:function(a){return this.widgetsTypes[a]}};c.Instance=function(){var b=this,d={},e={},f=function(){d.body=a("body")},g=function(b){var c={classPrefix:"dialog",effects:{show:"fadeIn",hide:"fadeOut"}};a.extend(e,c,b)};this.createWidget=function(a,d){var e=c.getWidgetType(a),f=new e(a);return d=d||{},f.init(b,d),f},this.getSettings=function(a){return a?e[a]:Object.create(e)},this.init=function(a){return g(a),f(),b},b.init()},c.Widget=function(b){var d=this,e={},f={},g={},h=0,i=["refreshPosition"],j=function(){var a=[g.window];g.iframe&&a.push(jQuery(g.iframe[0].contentWindow)),a.forEach(function(a){e.hide.onEscKeyPress&&a.on("keyup",v),e.hide.onOutsideClick&&a[0].addEventListener("click",p,!0),e.hide.onOutsideContextMenu&&a[0].addEventListener("contextmenu",p,!0),e.position.autoRefresh&&a.on("resize",d.refreshPosition)}),(e.hide.onClick||e.hide.onBackgroundClick)&&g.widget.on("click",n)},k=function(b,c){var d=e.effects[b],f=g.widget;if(a.isFunction(d))d.apply(f,c);else{if(!f[d])throw"Reference Error: The effect "+d+" not found";f[d].apply(f,c)}},l=function(){var b=i.concat(d.getClosureMethods());a.each(b,function(){var a=this,b=d[a];d[a]=function(){b.apply(d,arguments)}})},m=function(a){if(a.my){var b=/left|right/,c=/([+-]\d+)?$/,d=g.iframe.offset(),e=g.iframe[0].contentWindow,f=a.my.split(" "),h=[];1===f.length&&(b.test(f[0])?f.push("center"):f.unshift("center")),f.forEach(function(a,b){var f=a.replace(c,function(a){return a=+a||0,a+=b?d.top-e.scrollY:d.left-e.scrollX,a>=0&&(a="+"+a),a});h.push(f)}),a.my=h.join(" ")}},n=function(b){if(!t(b)){if(e.hide.onClick){if(a(b.target).closest(e.selectors.preventClose).length)return}else if(b.target!==this)return;d.hide()}},o=function(b){return!!e.hide.ignore&&!!a(b.target).closest(e.hide.ignore).length},p=function(b){t(b)||a(b.target).closest(g.widget).length||o(b)||d.hide()},q=function(){if(d.addElement("widget"),d.addElement("header"),d.addElement("message"),d.addElement("window",window),d.addElement("body",document.body),d.addElement("container",e.container),e.iframe&&d.addElement("iframe",e.iframe),e.closeButton){e.closeButtonClass&&(e.closeButtonOptions.iconClass=e.closeButtonClass);const b=a("<div>",e.closeButtonOptions.attributes),c=a("<i>",{"class":e.closeButtonOptions.iconClass});b.append(c),d.addElement("closeButton",b)}var f=d.getSettings("id");f&&d.setID(f);var h=[];a.each(d.types,function(){h.push(e.classes.globalPrefix+"-type-"+this)}),h.push(d.getSettings("className")),g.widget.addClass(h.join(" "))},r=function(c,f){var g=a.extend(!0,{},c.getSettings());e={headerMessage:"",message:"",effects:g.effects,classes:{globalPrefix:g.classPrefix,prefix:g.classPrefix+"-"+b,preventScroll:g.classPrefix+"-prevent-scroll"},selectors:{preventClose:"."+g.classPrefix+"-prevent-close"},container:"body",preventScroll:!1,iframe:null,closeButton:!1,closeButtonOptions:{iconClass:g.classPrefix+"-close-button-icon",attributes:{}},position:{element:"widget",my:"center",at:"center",enable:!0,autoRefresh:!1},hide:{auto:!1,autoDelay:5e3,onClick:!1,onOutsideClick:!0,onOutsideContextMenu:!1,onBackgroundClick:!0,onEscKeyPress:!0,ignore:""}},a.extend(!0,e,d.getDefaultSettings(),f),s()},s=function(){a.each(e,function(a){var b=a.match(/^on([A-Z].*)/);b&&(b=b[1].charAt(0).toLowerCase()+b[1].slice(1),d.on(b,this))})},t=function(a){return"click"===a.type&&2===a.button},u=function(a){return a.replace(/([a-z])([A-Z])/g,function(){return arguments[1]+"-"+arguments[2].toLowerCase()})},v=function(a){var b=27,c=a.which;b===c&&d.hide()},w=function(){var a=[g.window];g.iframe&&a.push(jQuery(g.iframe[0].contentWindow)),a.forEach(function(a){e.hide.onEscKeyPress&&a.off("keyup",v),e.hide.onOutsideClick&&a[0].removeEventListener("click",p,!0),e.hide.onOutsideContextMenu&&a[0].removeEventListener("contextmenu",p,!0),e.position.autoRefresh&&a.off("resize",d.refreshPosition)}),(e.hide.onClick||e.hide.onBackgroundClick)&&g.widget.off("click",n)};this.addElement=function(b,c,d){var f=g[b]=a(c||"<div>"),h=u(b);return d=d?d+" ":"",d+=e.classes.globalPrefix+"-"+h,d+=" "+e.classes.prefix+"-"+h,f.addClass(d),f},this.destroy=function(){return w(),g.widget.remove(),d.trigger("destroy"),d},this.getElements=function(a){return a?g[a]:g},this.getSettings=function(a){var b=Object.create(e);return a?b[a]:b},this.hide=function(){if(d.isVisible())return clearTimeout(h),k("hide",arguments),w(),e.preventScroll&&d.getElements("body").removeClass(e.classes.preventScroll),d.trigger("hide"),d},this.init=function(a,b){if(!(a instanceof c.Instance))throw"The "+d.widgetName+" must to be initialized from an instance of DialogsManager.Instance";return l(),d.trigger("init",b),r(a,b),q(),d.buildWidget(),d.attachEvents(),d.trigger("ready"),d},this.isVisible=function(){return g.widget.is(":visible")},this.on=function(b,c){if("object"==typeof b)return a.each(b,function(a){d.on(a,this)}),d;var e=b.split(" ");return e.forEach(function(a){f[a]||(f[a]=[]),f[a].push(c)}),d},this.off=function(a,b){if(!f[a])return d;if(!b)return delete f[a],d;var c=f[a].indexOf(b);return-1!==c&&f[a].splice(c,1),d},this.refreshPosition=function(){if(e.position.enable){var b=a.extend({},e.position);g[b.of]&&(b.of=g[b.of]),b.of||(b.of=window),e.iframe&&m(b),g[b.element].position(b)}},this.setID=function(a){return g.widget.attr("id",a),d},this.setHeaderMessage=function(a){return d.getElements("header").html(a),d},this.setMessage=function(a){return g.message.html(a),d},this.setSettings=function(b,c){return jQuery.isPlainObject(c)?a.extend(!0,e[b],c):e[b]=c,d},this.show=function(){return clearTimeout(h),g.widget.appendTo(g.container).hide(),k("show",arguments),d.refreshPosition(),e.hide.auto&&(h=setTimeout(d.hide,e.hide.autoDelay)),j(),e.preventScroll&&d.getElements("body").addClass(e.classes.preventScroll),d.trigger("show"),d},this.trigger=function(b,c){var e="on"+b[0].toUpperCase()+b.slice(1);d[e]&&d[e](c);var g=f[b];if(g)return a.each(g,function(a,b){b.call(d,c)}),d}},c.Widget.prototype.types=[],c.Widget.prototype.buildWidget=function(){var a=this.getElements(),b=this.getSettings();a.widget.append(a.header,a.message),this.setHeaderMessage(b.headerMessage),this.setMessage(b.message),this.getSettings("closeButton")&&a.widget.prepend(a.closeButton)},c.Widget.prototype.attachEvents=function(){var a=this;a.getSettings("closeButton")&&a.getElements("closeButton").on("click",function(){a.hide()})},c.Widget.prototype.getDefaultSettings=function(){return{}},c.Widget.prototype.getClosureMethods=function(){return[]},c.Widget.prototype.onHide=function(){},c.Widget.prototype.onShow=function(){},c.Widget.prototype.onInit=function(){},c.Widget.prototype.onReady=function(){},c.widgetsTypes.simple=c.Widget,c.addWidgetType("buttons",{activeKeyUp:function(a){var b=9;a.which===b&&a.preventDefault(),this.hotKeys[a.which]&&this.hotKeys[a.which](this)},activeKeyDown:function(a){if(this.focusedButton){var b=9;if(a.which===b){a.preventDefault();var c,d=this.focusedButton.index();a.shiftKey?(c=d-1,c<0&&(c=this.buttons.length-1)):(c=d+1,c>=this.buttons.length&&(c=0)),this.focusedButton=this.buttons[c].focus()}}},addButton:function(b){var c=this,d=c.getSettings(),e=jQuery.extend(d.button,b),f=b.classes?b.classes+" ":"";f+=d.classes.globalPrefix+"-button";var g=c.addElement(b.name,a("<"+e.tag+">").html(b.text),f);c.buttons.push(g);var h=function(){d.hide.onButtonClick&&c.hide(),a.isFunction(b.callback)&&b.callback.call(this,c)};return g.on("click",h),b.hotKey&&(this.hotKeys[b.hotKey]=h),this.getElements("buttonsWrapper").append(g),b.focus&&(this.focusedButton=g),c},bindHotKeys:function(){this.getElements("window").on({keyup:this.activeKeyUp,keydown:this.activeKeyDown})},buildWidget:function(){c.Widget.prototype.buildWidget.apply(this,arguments);var a=this.addElement("buttonsWrapper");this.getElements("widget").append(a)},getClosureMethods:function(){return["activeKeyUp","activeKeyDown"]},getDefaultSettings:function(){return{hide:{onButtonClick:!0},button:{tag:"button"}}},onHide:function(){this.unbindHotKeys()},onInit:function(){this.buttons=[],this.hotKeys={},this.focusedButton=null},onShow:function(){this.bindHotKeys(),this.focusedButton||(this.focusedButton=this.buttons[0]),this.focusedButton&&this.focusedButton.focus()},unbindHotKeys:function(){this.getElements("window").off({keyup:this.activeKeyUp,keydown:this.activeKeyDown})}}),c.addWidgetType("lightbox",c.getWidgetType("buttons").extend("lightbox",{getDefaultSettings:function(){var b=c.getWidgetType("buttons").prototype.getDefaultSettings.apply(this,arguments);return a.extend(!0,b,{contentWidth:"auto",contentHeight:"auto",position:{element:"widgetContent",of:"widget",autoRefresh:!0}})},buildWidget:function(){c.getWidgetType("buttons").prototype.buildWidget.apply(this,arguments);var a=this.addElement("widgetContent"),b=this.getElements();a.append(b.header,b.message,b.buttonsWrapper),b.widget.html(a),b.closeButton&&a.prepend(b.closeButton)},onReady:function(){var a=this.getElements(),b=this.getSettings();"auto"!==b.contentWidth&&a.message.width(b.contentWidth),"auto"!==b.contentHeight&&a.message.height(b.contentHeight)}})),c.addWidgetType("confirm",c.getWidgetType("lightbox").extend("confirm",{onReady:function(){c.getWidgetType("lightbox").prototype.onReady.apply(this,arguments);var a=this.getSettings("strings"),b="cancel"===this.getSettings("defaultOption");this.addButton({name:"cancel",text:a.cancel,callback:function(a){a.trigger("cancel")},focus:b}),this.addButton({name:"ok",text:a.confirm,callback:function(a){a.trigger("confirm")},focus:!b})},getDefaultSettings:function(){var a=c.getWidgetType("lightbox").prototype.getDefaultSettings.apply(this,arguments);return a.strings={confirm:"OK",cancel:"Cancel"},a.defaultOption="cancel",a}})),c.addWidgetType("alert",c.getWidgetType("lightbox").extend("alert",{onReady:function(){c.getWidgetType("lightbox").prototype.onReady.apply(this,arguments);var a=this.getSettings("strings");this.addButton({name:"ok",text:a.confirm,callback:function(a){a.trigger("confirm")}})},getDefaultSettings:function(){var a=c.getWidgetType("lightbox").prototype.getDefaultSettings.apply(this,arguments);return a.strings={confirm:"OK"},a}})),b.DialogsManager=c}("undefined"!=typeof jQuery?jQuery:"function"==typeof require&&require("jquery"),"undefined"!=typeof module?module.exports:window);assets/lib/dialog/dialog.js000064400000050206151327220410011650 0ustar00/*!
 * Dialogs Manager v4.8.1
 * https://github.com/kobizz/dialogs-manager
 *
 * Copyright Kobi Zaltzberg
 * Released under the MIT license
 * https://github.com/kobizz/dialogs-manager/blob/master/LICENSE.txt
 */

(function($, global) {
	'use strict';

	/*
	 * Dialog Manager
	 */
	var DialogsManager = {
		widgetsTypes: {},
		createWidgetType: function(typeName, properties, Parent) {

			if (!Parent) {
				Parent = this.Widget;
			}

			var WidgetType = function() {

				Parent.apply(this, arguments);
			};

			var prototype = WidgetType.prototype = new Parent(typeName);

			prototype.types = prototype.types.concat([typeName]);

			$.extend(prototype, properties);

			prototype.constructor = WidgetType;

			WidgetType.extend = function(typeName, properties) {

				return DialogsManager.createWidgetType(typeName, properties, WidgetType);
			};

			return WidgetType;
		},
		addWidgetType: function(typeName, properties, Parent) {

			if (properties && properties.prototype instanceof this.Widget) {
				return this.widgetsTypes[typeName] = properties;
			}

			return this.widgetsTypes[typeName] = this.createWidgetType(typeName, properties, Parent);
		},
		getWidgetType: function(widgetType) {

			return this.widgetsTypes[widgetType];
		}
	};

	/*
	 * Dialog Manager instances constructor
	 */
	DialogsManager.Instance = function() {

		var self = this,
			elements = {},
			settings = {};

		var initElements = function() {

			elements.body = $('body');
		};

		var initSettings = function(options) {

			var defaultSettings = {
				classPrefix: 'dialog',
				effects: {
					show: 'fadeIn',
					hide: 'fadeOut'
				}
			};

			$.extend(settings, defaultSettings, options);
		};

		this.createWidget = function(widgetType, properties) {

			var WidgetTypeConstructor = DialogsManager.getWidgetType(widgetType),
				widget = new WidgetTypeConstructor(widgetType);

			properties = properties || {};

			widget.init(self, properties);

			return widget;
		};

		this.getSettings = function(property) {

			if (property) {
				return settings[property];
			}

			return Object.create(settings);
		};

		this.init = function(settings) {

			initSettings(settings);

			initElements();

			return self;
		};

		self.init();
	};

	/*
	 * Widget types constructor
	 */
	DialogsManager.Widget = function(widgetName) {

		var self = this,
			settings = {},
			events = {},
			elements = {},
			hideTimeOut = 0,
			baseClosureMethods = ['refreshPosition'];

		var bindEvents = function() {

			var windows = [elements.window];

			if (elements.iframe) {
				windows.push(jQuery(elements.iframe[0].contentWindow));
			}

			windows.forEach(function(window) {
				if (settings.hide.onEscKeyPress) {
					window.on('keyup', onWindowKeyUp);
				}

				if (settings.hide.onOutsideClick) {
					window[0].addEventListener('click', hideOnOutsideClick, true);
				}

				if (settings.hide.onOutsideContextMenu) {
					window[0].addEventListener('contextmenu', hideOnOutsideClick, true);
				}

				if (settings.position.autoRefresh) {
					window.on('resize', self.refreshPosition);
				}
			});

			if (settings.hide.onClick || settings.hide.onBackgroundClick) {
				elements.widget.on('click', hideOnClick);
			}
		};

		var callEffect = function(intent, params) {

			var effect = settings.effects[intent],
				$widget = elements.widget;

			if ($.isFunction(effect)) {
				effect.apply($widget, params);
			} else {

				if ($widget[effect]) {
					$widget[effect].apply($widget, params);
				} else {
					throw 'Reference Error: The effect ' + effect + ' not found';
				}
			}
		};

		var ensureClosureMethods = function() {

			var closureMethodsNames = baseClosureMethods.concat(self.getClosureMethods());

			$.each(closureMethodsNames, function() {

				var methodName = this,
					oldMethod = self[methodName];

				self[methodName] = function() {

					oldMethod.apply(self, arguments);
				};
			});
		};

		var fixIframePosition = function(position) {
			if (! position.my) {
				return;
			}

			var horizontalOffsetRegex = /left|right/,
				extraOffsetRegex = /([+-]\d+)?$/,
				iframeOffset = elements.iframe.offset(),
				iframeWindow = elements.iframe[0].contentWindow,
				myParts = position.my.split(' '),
				fixedParts = [];

			if (myParts.length === 1) {
				if (horizontalOffsetRegex.test(myParts[0])) {
					myParts.push('center');
				} else {
					myParts.unshift('center');
				}
			}

			myParts.forEach(function(part, index) {
				var fixedPart = part.replace(extraOffsetRegex, function(partOffset) {
					partOffset = +partOffset || 0;

					if (! index) {
						partOffset += iframeOffset.left - iframeWindow.scrollX;
					} else {
						partOffset += iframeOffset.top - iframeWindow.scrollY;
					}

					if (partOffset >= 0) {
						partOffset = '+' + partOffset;
					}

					return partOffset;
				});

				fixedParts.push(fixedPart);
			});

			position.my = fixedParts.join(' ');
		};

		var hideOnClick = function(event) {

			if (isContextMenuClickEvent(event)) {
				return;
			}

			if (settings.hide.onClick) {

				if ($(event.target).closest(settings.selectors.preventClose).length) {
					return;
				}
			} else if (event.target !== this) {
				return;
			}

			self.hide();
		};

		var isIgnoredTarget = function(event) {

			if (! settings.hide.ignore) {
				return false;
			}

			return !! $(event.target).closest(settings.hide.ignore).length;
		};

		var hideOnOutsideClick = function(event) {

			if (isContextMenuClickEvent(event) || $(event.target).closest(elements.widget).length || isIgnoredTarget(event)) {
				return;
			}

			self.hide();
		};

		var initElements = function() {

			self.addElement('widget');

			self.addElement('header');

			self.addElement('message');

			self.addElement('window', window);

			self.addElement('body', document.body);

			self.addElement('container', settings.container);

			if (settings.iframe) {
				self.addElement('iframe', settings.iframe);
			}

			if (settings.closeButton) {
				if ( settings.closeButtonClass ) {
					//  Backwards compatibility
					settings.closeButtonOptions.iconClass = settings.closeButtonClass;
				}

				const $button = $('<div>', settings.closeButtonOptions.attributes),
					$buttonIcon = $('<i>', {class: settings.closeButtonOptions.iconClass});

				$button.append($buttonIcon);

				self.addElement('closeButton', $button);
			}

			var id = self.getSettings('id');

			if (id) {
				self.setID(id);
			}

			var classes = [];

			$.each(self.types, function() {
				classes.push(settings.classes.globalPrefix + '-type-' + this);
			});

			classes.push(self.getSettings('className'));

			elements.widget.addClass(classes.join(' '));
		};

		var initSettings = function(parent, userSettings) {

			var parentSettings = $.extend(true, {}, parent.getSettings());

			settings = {
				headerMessage: '',
				message: '',
				effects: parentSettings.effects,
				classes: {
					globalPrefix: parentSettings.classPrefix,
					prefix: parentSettings.classPrefix + '-' + widgetName,
					preventScroll: parentSettings.classPrefix + '-prevent-scroll'
				},
				selectors: {
					preventClose: '.' + parentSettings.classPrefix + '-prevent-close'
				},
				container: 'body',
				preventScroll: false,
				iframe: null,
				closeButton: false,
				closeButtonOptions: {
					iconClass: parentSettings.classPrefix + '-close-button-icon',
					attributes: {},
				},
				position: {
					element: 'widget',
					my: 'center',
					at: 'center',
					enable: true,
					autoRefresh: false
				},
				hide: {
					auto: false,
					autoDelay: 5000,
					onClick: false,
					onOutsideClick: true,
					onOutsideContextMenu: false,
					onBackgroundClick: true,
					onEscKeyPress: true,
					ignore: ''
				}
			};

			$.extend(true, settings, self.getDefaultSettings(), userSettings);

			initSettingsEvents();
		};

		var initSettingsEvents = function() {

			$.each(settings, function(settingKey) {

				var eventName = settingKey.match(/^on([A-Z].*)/);

				if (!eventName) {
					return;
				}

				eventName = eventName[1].charAt(0).toLowerCase() + eventName[1].slice(1);

				self.on(eventName, this);
			});
		};

		var isContextMenuClickEvent = function(event) {
			// Firefox fires `click` event on every `contextmenu` event.
			return event.type === 'click' && event.button === 2;
		};

		var normalizeClassName = function(name) {

			return name.replace(/([a-z])([A-Z])/g, function() {

				return arguments[1] + '-' + arguments[2].toLowerCase();
			});
		};

		var onWindowKeyUp = function(event) {
			var ESC_KEY = 27,
				keyCode = event.which;

			if (ESC_KEY === keyCode) {
				self.hide();
			}
		};

		var unbindEvents = function() {

			var windows = [elements.window];

			if (elements.iframe) {
				windows.push(jQuery(elements.iframe[0].contentWindow));
			}

			windows.forEach(function(window) {
				if (settings.hide.onEscKeyPress) {
					window.off('keyup', onWindowKeyUp);
				}

				if (settings.hide.onOutsideClick) {
					window[0].removeEventListener('click', hideOnOutsideClick, true);
				}

				if (settings.hide.onOutsideContextMenu) {
					window[0].removeEventListener('contextmenu', hideOnOutsideClick, true);
				}

				if (settings.position.autoRefresh) {
					window.off('resize', self.refreshPosition);
				}
			});

			if (settings.hide.onClick || settings.hide.onBackgroundClick) {
				elements.widget.off('click', hideOnClick);
			}
		};

		this.addElement = function(name, element, classes) {

			var $newElement = elements[name] = $(element || '<div>'),
				normalizedName = normalizeClassName(name);

			classes = classes ? classes + ' ' : '';

			classes += settings.classes.globalPrefix + '-' + normalizedName;

			classes += ' ' + settings.classes.prefix + '-' + normalizedName;

			$newElement.addClass(classes);

			return $newElement;
		};

		this.destroy = function() {

			unbindEvents();

			elements.widget.remove();

			self.trigger('destroy');

			return self;
		};

		this.getElements = function(item) {

			return item ? elements[item] : elements;
		};

		this.getSettings = function(setting) {

			var copy = Object.create(settings);

			if (setting) {
				return copy[setting];
			}

			return copy;
		};

		this.hide = function() {

			if (! self.isVisible()) {
				return;
			}

			clearTimeout(hideTimeOut);

			callEffect('hide', arguments);

			unbindEvents();

			if (settings.preventScroll) {
				self.getElements('body').removeClass(settings.classes.preventScroll);
			}

			self.trigger('hide');

			return self;
		};

		this.init = function(parent, properties) {

			if (!(parent instanceof DialogsManager.Instance)) {
				throw 'The ' + self.widgetName + ' must to be initialized from an instance of DialogsManager.Instance';
			}

			ensureClosureMethods();

			self.trigger('init', properties);

			initSettings(parent, properties);

			initElements();

			self.buildWidget();

			self.attachEvents();

			self.trigger('ready');

			return self;
		};

		this.isVisible = function() {

			return elements.widget.is(':visible');
		};

		this.on = function(eventName, callback) {

			if ('object' === typeof eventName) {
				$.each(eventName, function(singleEventName) {
					self.on(singleEventName, this);
				});

				return self;
			}

			var eventNames = eventName.split(' ');

			eventNames.forEach(function(singleEventName) {
				if (!events[singleEventName]) {
					events[singleEventName] = [];
				}

				events[singleEventName].push(callback);
			});

			return self;
		};

		this.off = function(eventName, callback) {

			if (! events[ eventName ]) {
				return self;
			}

			if (! callback) {
				delete events[eventName];

				return self;
			}

			var callbackIndex = events[eventName].indexOf(callback);

			if (-1 !== callbackIndex) {
				events[eventName].splice(callbackIndex, 1);
			}

			return self;
		};

		this.refreshPosition = function() {

			if (! settings.position.enable) {
				return;
			}

			var position = $.extend({}, settings.position);

			if (elements[position.of]) {
				position.of = elements[position.of];
			}

			if (! position.of) {
				position.of = window;
			}

			if (settings.iframe) {
				fixIframePosition(position);
			}

			elements[position.element].position(position);
		};

		this.setID = function(id) {

			elements.widget.attr('id', id);

			return self;
		};

		this.setHeaderMessage = function(message) {

			self.getElements('header').html(message);

			return self;
		};

		this.setMessage = function(message) {

			elements.message.html(message);

			return self;
		};

		this.setSettings = function(key, value) {

			if (jQuery.isPlainObject(value)) {
				$.extend(true, settings[key], value);
			} else {
				settings[key] = value;
			}

			return self;
		};

		this.show = function() {

			clearTimeout(hideTimeOut);

			elements.widget.appendTo(elements.container).hide();

			callEffect('show', arguments);

			self.refreshPosition();

			if (settings.hide.auto) {
				hideTimeOut = setTimeout(self.hide, settings.hide.autoDelay);
			}

			bindEvents();

			if (settings.preventScroll) {
				self.getElements('body').addClass(settings.classes.preventScroll);
			}

			self.trigger('show');

			return self;
		};

		this.trigger = function(eventName, params) {

			var methodName = 'on' + eventName[0].toUpperCase() + eventName.slice(1);

			if (self[methodName]) {
				self[methodName](params);
			}

			var callbacks = events[eventName];

			if (!callbacks) {
				return;
			}

			$.each(callbacks, function(index, callback) {

				callback.call(self, params);
			});

			return self;
		};
	};

	DialogsManager.Widget.prototype.types = [];

	// Inheritable widget methods
	DialogsManager.Widget.prototype.buildWidget = function() {

		var elements = this.getElements(),
			settings = this.getSettings();

		elements.widget.append(elements.header, elements.message);

		this.setHeaderMessage(settings.headerMessage);

		this.setMessage(settings.message);

		if (this.getSettings('closeButton')) {
			elements.widget.prepend(elements.closeButton);
		}
	};

	DialogsManager.Widget.prototype.attachEvents = function() {

		var self = this;

		if (self.getSettings('closeButton')) {
			self.getElements('closeButton').on('click', function() {
				self.hide();
			});
		}
	};

	DialogsManager.Widget.prototype.getDefaultSettings = function() {

		return {};
	};

	DialogsManager.Widget.prototype.getClosureMethods = function() {

		return [];
	};

	DialogsManager.Widget.prototype.onHide = function() {
	};

	DialogsManager.Widget.prototype.onShow = function() {
	};

	DialogsManager.Widget.prototype.onInit = function() {
	};

	DialogsManager.Widget.prototype.onReady = function() {
	};

	DialogsManager.widgetsTypes.simple = DialogsManager.Widget;

	DialogsManager.addWidgetType('buttons', {
		activeKeyUp: function(event) {

			var TAB_KEY = 9;

			if (event.which === TAB_KEY) {
				event.preventDefault();
			}

			if (this.hotKeys[event.which]) {
				this.hotKeys[event.which](this);
			}
		},
		activeKeyDown: function(event) {

			if (!this.focusedButton) {
				return;
			}

			var TAB_KEY = 9;

			if (event.which === TAB_KEY) {
				event.preventDefault();

				var currentButtonIndex = this.focusedButton.index(),
					nextButtonIndex;

				if (event.shiftKey) {

					nextButtonIndex = currentButtonIndex - 1;

					if (nextButtonIndex < 0) {
						nextButtonIndex = this.buttons.length - 1;
					}
				} else {

					nextButtonIndex = currentButtonIndex + 1;

					if (nextButtonIndex >= this.buttons.length) {
						nextButtonIndex = 0;
					}
				}

				this.focusedButton = this.buttons[nextButtonIndex].focus();
			}
		},
		addButton: function(options) {

			var self = this,
				settings = self.getSettings(),
				buttonSettings = jQuery.extend(settings.button, options);

			var classes = options.classes ? options.classes + ' ' : '';

			classes += settings.classes.globalPrefix + '-button';

			var $button = self.addElement(options.name, $('<' + buttonSettings.tag + '>').html(options.text), classes);

			self.buttons.push($button);

			var buttonFn = function() {

				if (settings.hide.onButtonClick) {
					self.hide();
				}

				if ($.isFunction(options.callback)) {
					options.callback.call(this, self);
				}
			};

			$button.on('click', buttonFn);

			if (options.hotKey) {
				this.hotKeys[options.hotKey] = buttonFn;
			}

			this.getElements('buttonsWrapper').append($button);

			if (options.focus) {
				this.focusedButton = $button;
			}

			return self;
		},
		bindHotKeys: function() {

			this.getElements('window').on({
				keyup: this.activeKeyUp,
				keydown: this.activeKeyDown
			});
		},
		buildWidget: function() {

			DialogsManager.Widget.prototype.buildWidget.apply(this, arguments);

			var $buttonsWrapper = this.addElement('buttonsWrapper');

			this.getElements('widget').append($buttonsWrapper);
		},
		getClosureMethods: function() {

			return [
				'activeKeyUp',
				'activeKeyDown'
			];
		},
		getDefaultSettings: function() {

			return {
				hide: {
					onButtonClick: true
				},
				button: {
					tag: 'button'
				}
			};
		},
		onHide: function() {

			this.unbindHotKeys();
		},
		onInit: function() {

			this.buttons = [];

			this.hotKeys = {};

			this.focusedButton = null;
		},
		onShow: function() {

			this.bindHotKeys();

			if (!this.focusedButton) {
				this.focusedButton = this.buttons[0];
			}

			if (this.focusedButton) {
				this.focusedButton.focus();
			}
		},
		unbindHotKeys: function() {

			this.getElements('window').off({
				keyup: this.activeKeyUp,
				keydown: this.activeKeyDown
			});
		}
	});

	DialogsManager.addWidgetType('lightbox', DialogsManager.getWidgetType('buttons').extend('lightbox', {
		getDefaultSettings: function() {

			var settings = DialogsManager.getWidgetType('buttons').prototype.getDefaultSettings.apply(this, arguments);

			return $.extend(true, settings, {
				contentWidth: 'auto',
				contentHeight: 'auto',
				position: {
					element: 'widgetContent',
					of: 'widget',
					autoRefresh: true
				}
			});
		},
		buildWidget: function() {

			DialogsManager.getWidgetType('buttons').prototype.buildWidget.apply(this, arguments);

			var $widgetContent = this.addElement('widgetContent'),
				elements = this.getElements();

			$widgetContent.append(elements.header, elements.message, elements.buttonsWrapper);

			elements.widget.html($widgetContent);

			if (elements.closeButton) {
				$widgetContent.prepend(elements.closeButton);
			}
		},
		onReady: function() {

			var elements = this.getElements(),
				settings = this.getSettings();

			if ('auto' !== settings.contentWidth) {
				elements.message.width(settings.contentWidth);
			}

			if ('auto' !== settings.contentHeight) {
				elements.message.height(settings.contentHeight);
			}
		}
	}));

	DialogsManager.addWidgetType('confirm', DialogsManager.getWidgetType('lightbox').extend('confirm', {
		onReady: function() {

			DialogsManager.getWidgetType('lightbox').prototype.onReady.apply(this, arguments);

			var strings = this.getSettings('strings'),
				isDefaultCancel = this.getSettings('defaultOption') === 'cancel';

			this.addButton({
				name: 'cancel',
				text: strings.cancel,
				callback: function(widget) {

					widget.trigger('cancel');
				},
				focus: isDefaultCancel
			});

			this.addButton({
				name: 'ok',
				text: strings.confirm,
				callback: function(widget) {

					widget.trigger('confirm');
				},
				focus: !isDefaultCancel
			});
		},
		getDefaultSettings: function() {

			var settings = DialogsManager.getWidgetType('lightbox').prototype.getDefaultSettings.apply(this, arguments);

			settings.strings = {
				confirm: 'OK',
				cancel: 'Cancel'
			};

			settings.defaultOption = 'cancel';

			return settings;
		}
	}));

	DialogsManager.addWidgetType('alert', DialogsManager.getWidgetType('lightbox').extend('alert', {
		onReady: function() {

			DialogsManager.getWidgetType('lightbox').prototype.onReady.apply(this, arguments);

			var strings = this.getSettings('strings');

			this.addButton({
				name: 'ok',
				text: strings.confirm,
				callback: function(widget) {

					widget.trigger('confirm');
				}
			});
		},
		getDefaultSettings: function() {

			var settings = DialogsManager.getWidgetType('lightbox').prototype.getDefaultSettings.apply(this, arguments);

			settings.strings = {
				confirm: 'OK'
			};

			return settings;
		}
	}));

	// Exporting the DialogsManager variable to global
	global.DialogsManager = DialogsManager;
})(
	typeof jQuery !== 'undefined' ? jQuery : typeof require === 'function' && require('jquery'),
	typeof module !== 'undefined' ? module.exports : window
);
assets/lib/animations/animations.min.css000064400000044044151327220410014417 0ustar00@keyframes bounce{20%,53%,80%,from,to{animation-timing-function:cubic-bezier(.215,.61,.355,1);transform:translate3d(0,0,0)}40%,43%{animation-timing-function:cubic-bezier(.755,.050,.855,.060);transform:translate3d(0,-30px,0)}70%{animation-timing-function:cubic-bezier(.755,.050,.855,.060);transform:translate3d(0,-15px,0)}90%{transform:translate3d(0,-4px,0)}}.bounce{animation-name:bounce;transform-origin:center bottom}@keyframes flash{50%,from,to{opacity:1}25%,75%{opacity:0}}.flash{animation-name:flash}@keyframes pulse{from,to{transform:scale3d(1,1,1)}50%{transform:scale3d(1.05,1.05,1.05)}}.pulse{animation-name:pulse}@keyframes rubberBand{from,to{transform:scale3d(1,1,1)}30%{transform:scale3d(1.25,.75,1)}40%{transform:scale3d(.75,1.25,1)}50%{transform:scale3d(1.15,.85,1)}65%{transform:scale3d(.95,1.05,1)}75%{transform:scale3d(1.05,.95,1)}}.rubberBand{animation-name:rubberBand}@keyframes shake{from,to{transform:translate3d(0,0,0)}10%,30%,50%,70%,90%{transform:translate3d(-10px,0,0)}20%,40%,60%,80%{transform:translate3d(10px,0,0)}}.shake{animation-name:shake}@keyframes headShake{0%{transform:translateX(0)}6.5%{transform:translateX(-6px) rotateY(-9deg)}18.5%{transform:translateX(5px) rotateY(7deg)}31.5%{transform:translateX(-3px) rotateY(-5deg)}43.5%{transform:translateX(2px) rotateY(3deg)}50%{transform:translateX(0)}}.headShake{animation-timing-function:ease-in-out;animation-name:headShake}@keyframes swing{20%{transform:rotate3d(0,0,1,15deg)}40%{transform:rotate3d(0,0,1,-10deg)}60%{transform:rotate3d(0,0,1,5deg)}80%{transform:rotate3d(0,0,1,-5deg)}to{transform:rotate3d(0,0,1,0deg)}}.swing{transform-origin:top center;animation-name:swing}@keyframes tada{from,to{transform:scale3d(1,1,1)}10%,20%{transform:scale3d(.9,.9,.9) rotate3d(0,0,1,-3deg)}30%,50%,70%,90%{transform:scale3d(1.1,1.1,1.1) rotate3d(0,0,1,3deg)}40%,60%,80%{transform:scale3d(1.1,1.1,1.1) rotate3d(0,0,1,-3deg)}}.tada{animation-name:tada}@keyframes wobble{from,to{transform:none}15%{transform:translate3d(-25%,0,0) rotate3d(0,0,1,-5deg)}30%{transform:translate3d(20%,0,0) rotate3d(0,0,1,3deg)}45%{transform:translate3d(-15%,0,0) rotate3d(0,0,1,-3deg)}60%{transform:translate3d(10%,0,0) rotate3d(0,0,1,2deg)}75%{transform:translate3d(-5%,0,0) rotate3d(0,0,1,-1deg)}}.wobble{animation-name:wobble}@keyframes jello{11.1%,from,to{transform:none}22.2%{transform:skewX(-12.5deg) skewY(-12.5deg)}33.3%{transform:skewX(6.25deg) skewY(6.25deg)}44.4%{transform:skewX(-3.125deg) skewY(-3.125deg)}55.5%{transform:skewX(1.5625deg) skewY(1.5625deg)}66.6%{transform:skewX(-.78125deg) skewY(-.78125deg)}77.7%{transform:skewX(.390625deg) skewY(.390625deg)}88.8%{transform:skewX(-.1953125deg) skewY(-.1953125deg)}}.jello{animation-name:jello;transform-origin:center}@keyframes bounceIn{20%,40%,60%,80%,from,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:scale3d(.3,.3,.3)}20%{transform:scale3d(1.1,1.1,1.1)}40%{transform:scale3d(.9,.9,.9)}60%{opacity:1;transform:scale3d(1.03,1.03,1.03)}80%{transform:scale3d(.97,.97,.97)}to{opacity:1;transform:scale3d(1,1,1)}}.bounceIn{animation-name:bounceIn}@keyframes bounceInDown{60%,75%,90%,from,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}.bounceInDown{animation-name:bounceInDown}@keyframes bounceInLeft{60%,75%,90%,from,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}.bounceInLeft{animation-name:bounceInLeft}@keyframes bounceInRight{60%,75%,90%,from,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}from{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}.bounceInRight{animation-name:bounceInRight}@keyframes bounceInUp{60%,75%,90%,from,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}from{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translate3d(0,0,0)}}.bounceInUp{animation-name:bounceInUp}@keyframes fadeIn{from{opacity:0}to{opacity:1}}.fadeIn{animation-name:fadeIn}@keyframes fadeInDown{from{opacity:0;transform:translate3d(0,-100%,0)}to{opacity:1;transform:none}}.fadeInDown{animation-name:fadeInDown}@keyframes fadeInLeft{from{opacity:0;transform:translate3d(-100%,0,0)}to{opacity:1;transform:none}}.fadeInLeft{animation-name:fadeInLeft}@keyframes fadeInRight{from{opacity:0;transform:translate3d(100%,0,0)}to{opacity:1;transform:none}}.fadeInRight{animation-name:fadeInRight}@keyframes fadeInUp{from{opacity:0;transform:translate3d(0,100%,0)}to{opacity:1;transform:none}}.fadeInUp{animation-name:fadeInUp}@keyframes lightSpeedIn{from{transform:translate3d(100%,0,0) skewX(-30deg);opacity:0}60%{transform:skewX(20deg);opacity:1}80%{transform:skewX(-5deg);opacity:1}to{transform:none;opacity:1}}.lightSpeedIn{animation-name:lightSpeedIn;animation-timing-function:ease-out}@keyframes rotateIn{from{transform-origin:center;transform:rotate3d(0,0,1,-200deg);opacity:0}to{transform-origin:center;transform:none;opacity:1}}.rotateIn{animation-name:rotateIn}@keyframes rotateInDownLeft{from{transform-origin:left bottom;transform:rotate3d(0,0,1,-45deg);opacity:0}to{transform-origin:left bottom;transform:none;opacity:1}}.rotateInDownLeft{animation-name:rotateInDownLeft}@keyframes rotateInDownRight{from{transform-origin:right bottom;transform:rotate3d(0,0,1,45deg);opacity:0}to{transform-origin:right bottom;transform:none;opacity:1}}.rotateInDownRight{animation-name:rotateInDownRight}@keyframes rotateInUpLeft{from{transform-origin:left bottom;transform:rotate3d(0,0,1,45deg);opacity:0}to{transform-origin:left bottom;transform:none;opacity:1}}.rotateInUpLeft{animation-name:rotateInUpLeft}@keyframes rotateInUpRight{from{transform-origin:right bottom;transform:rotate3d(0,0,1,-90deg);opacity:0}to{transform-origin:right bottom;transform:none;opacity:1}}.rotateInUpRight{animation-name:rotateInUpRight}@keyframes rollIn{from{opacity:0;transform:translate3d(-100%,0,0) rotate3d(0,0,1,-120deg)}to{opacity:1;transform:none}}.rollIn{animation-name:rollIn}@keyframes zoomIn{from{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}.zoomIn{animation-name:zoomIn}@keyframes zoomInDown{from{opacity:0;transform:scale3d(.1,.1,.1) translate3d(0,-1000px,0);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;transform:scale3d(.475,.475,.475) translate3d(0,60px,0);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.zoomInDown{animation-name:zoomInDown}@keyframes zoomInLeft{from{opacity:0;transform:scale3d(.1,.1,.1) translate3d(-1000px,0,0);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;transform:scale3d(.475,.475,.475) translate3d(10px,0,0);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.zoomInLeft{animation-name:zoomInLeft}@keyframes zoomInRight{from{opacity:0;transform:scale3d(.1,.1,.1) translate3d(1000px,0,0);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;transform:scale3d(.475,.475,.475) translate3d(-10px,0,0);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.zoomInRight{animation-name:zoomInRight}@keyframes zoomInUp{from{opacity:0;transform:scale3d(.1,.1,.1) translate3d(0,1000px,0);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.zoomInUp{animation-name:zoomInUp}@keyframes slideInDown{from{transform:translate3d(0,-100%,0);visibility:visible}to{transform:translate3d(0,0,0)}}.slideInDown{animation-name:slideInDown}@keyframes slideInLeft{from{transform:translate3d(-100%,0,0);visibility:visible}to{transform:translate3d(0,0,0)}}.slideInLeft{animation-name:slideInLeft}@keyframes slideInRight{from{transform:translate3d(100%,0,0);visibility:visible}to{transform:translate3d(0,0,0)}}.slideInRight{animation-name:slideInRight}@keyframes slideInUp{from{transform:translate3d(0,100%,0);visibility:visible}to{transform:translate3d(0,0,0)}}.slideInUp{animation-name:slideInUp}
.elementor-animation-grow{transition-duration:.3s;transition-property:transform}.elementor-animation-grow:active,.elementor-animation-grow:focus,.elementor-animation-grow:hover{transform:scale(1.1)}.elementor-animation-shrink{transition-duration:.3s;transition-property:transform}.elementor-animation-shrink:active,.elementor-animation-shrink:focus,.elementor-animation-shrink:hover{transform:scale(0.9)}@keyframes elementor-animation-pulse{25%{transform:scale(1.1)}75%{transform:scale(0.9)}}.elementor-animation-pulse:active,.elementor-animation-pulse:focus,.elementor-animation-pulse:hover{animation-name:elementor-animation-pulse;animation-duration:1s;animation-timing-function:linear;animation-iteration-count:infinite}@keyframes elementor-animation-pulse-grow{to{transform:scale(1.1)}}.elementor-animation-pulse-grow:active,.elementor-animation-pulse-grow:focus,.elementor-animation-pulse-grow:hover{animation-name:elementor-animation-pulse-grow;animation-duration:.3s;animation-timing-function:linear;animation-iteration-count:infinite;animation-direction:alternate}@keyframes elementor-animation-pulse-shrink{to{transform:scale(0.9)}}.elementor-animation-pulse-shrink:active,.elementor-animation-pulse-shrink:focus,.elementor-animation-pulse-shrink:hover{animation-name:elementor-animation-pulse-shrink;animation-duration:.3s;animation-timing-function:linear;animation-iteration-count:infinite;animation-direction:alternate}@keyframes elementor-animation-push{50%{transform:scale(0.8)}100%{transform:scale(1)}}.elementor-animation-push:active,.elementor-animation-push:focus,.elementor-animation-push:hover{animation-name:elementor-animation-push;animation-duration:.3s;animation-timing-function:linear;animation-iteration-count:1}@keyframes elementor-animation-pop{50%{transform:scale(1.2)}}.elementor-animation-pop:active,.elementor-animation-pop:focus,.elementor-animation-pop:hover{animation-name:elementor-animation-pop;animation-duration:.3s;animation-timing-function:linear;animation-iteration-count:1}.elementor-animation-bounce-in{transition-duration:.5s}.elementor-animation-bounce-in:active,.elementor-animation-bounce-in:focus,.elementor-animation-bounce-in:hover{transform:scale(1.2);transition-timing-function:cubic-bezier(0.47,2.02,.31,-.36)}.elementor-animation-bounce-out{transition-duration:.5s}.elementor-animation-bounce-out:active,.elementor-animation-bounce-out:focus,.elementor-animation-bounce-out:hover{transform:scale(0.8);transition-timing-function:cubic-bezier(0.47,2.02,.31,-.36)}.elementor-animation-rotate{transition-duration:.3s;transition-property:transform}.elementor-animation-rotate:active,.elementor-animation-rotate:focus,.elementor-animation-rotate:hover{transform:rotate(4deg)}.elementor-animation-grow-rotate{transition-duration:.3s;transition-property:transform}.elementor-animation-grow-rotate:active,.elementor-animation-grow-rotate:focus,.elementor-animation-grow-rotate:hover{transform:scale(1.1) rotate(4deg)}.elementor-animation-float{transition-duration:.3s;transition-property:transform;transition-timing-function:ease-out}.elementor-animation-float:active,.elementor-animation-float:focus,.elementor-animation-float:hover{transform:translateY(-8px)}.elementor-animation-sink{transition-duration:.3s;transition-property:transform;transition-timing-function:ease-out}.elementor-animation-sink:active,.elementor-animation-sink:focus,.elementor-animation-sink:hover{transform:translateY(8px)}@keyframes elementor-animation-bob{0%{transform:translateY(-8px)}50%{transform:translateY(-4px)}100%{transform:translateY(-8px)}}@keyframes elementor-animation-bob-float{100%{transform:translateY(-8px)}}.elementor-animation-bob:active,.elementor-animation-bob:focus,.elementor-animation-bob:hover{animation-name:elementor-animation-bob-float,elementor-animation-bob;animation-duration:.3s,1.5s;animation-delay:0s,.3s;animation-timing-function:ease-out,ease-in-out;animation-iteration-count:1,infinite;animation-fill-mode:forwards;animation-direction:normal,alternate}@keyframes elementor-animation-hang{0%{transform:translateY(8px)}50%{transform:translateY(4px)}100%{transform:translateY(8px)}}@keyframes elementor-animation-hang-sink{100%{transform:translateY(8px)}}.elementor-animation-hang:active,.elementor-animation-hang:focus,.elementor-animation-hang:hover{animation-name:elementor-animation-hang-sink,elementor-animation-hang;animation-duration:.3s,1.5s;animation-delay:0s,.3s;animation-timing-function:ease-out,ease-in-out;animation-iteration-count:1,infinite;animation-fill-mode:forwards;animation-direction:normal,alternate}.elementor-animation-skew{transition-duration:.3s;transition-property:transform}.elementor-animation-skew:active,.elementor-animation-skew:focus,.elementor-animation-skew:hover{transform:skew(-10deg)}.elementor-animation-skew-forward{transition-duration:.3s;transition-property:transform;transform-origin:0 100%}.elementor-animation-skew-forward:active,.elementor-animation-skew-forward:focus,.elementor-animation-skew-forward:hover{transform:skew(-10deg)}.elementor-animation-skew-backward{transition-duration:.3s;transition-property:transform;transform-origin:0 100%}.elementor-animation-skew-backward:active,.elementor-animation-skew-backward:focus,.elementor-animation-skew-backward:hover{transform:skew(10deg)}@keyframes elementor-animation-wobble-vertical{16.65%{transform:translateY(8px)}33.3%{transform:translateY(-6px)}49.95%{transform:translateY(4px)}66.6%{transform:translateY(-2px)}83.25%{transform:translateY(1px)}100%{transform:translateY(0)}}.elementor-animation-wobble-vertical:active,.elementor-animation-wobble-vertical:focus,.elementor-animation-wobble-vertical:hover{animation-name:elementor-animation-wobble-vertical;animation-duration:1s;animation-timing-function:ease-in-out;animation-iteration-count:1}@keyframes elementor-animation-wobble-horizontal{16.65%{transform:translateX(8px)}33.3%{transform:translateX(-6px)}49.95%{transform:translateX(4px)}66.6%{transform:translateX(-2px)}83.25%{transform:translateX(1px)}100%{transform:translateX(0)}}.elementor-animation-wobble-horizontal:active,.elementor-animation-wobble-horizontal:focus,.elementor-animation-wobble-horizontal:hover{animation-name:elementor-animation-wobble-horizontal;animation-duration:1s;animation-timing-function:ease-in-out;animation-iteration-count:1}@keyframes elementor-animation-wobble-to-bottom-right{16.65%{transform:translate(8px,8px)}33.3%{transform:translate(-6px,-6px)}49.95%{transform:translate(4px,4px)}66.6%{transform:translate(-2px,-2px)}83.25%{transform:translate(1px,1px)}100%{transform:translate(0,0)}}.elementor-animation-wobble-to-bottom-right:active,.elementor-animation-wobble-to-bottom-right:focus,.elementor-animation-wobble-to-bottom-right:hover{animation-name:elementor-animation-wobble-to-bottom-right;animation-duration:1s;animation-timing-function:ease-in-out;animation-iteration-count:1}@keyframes elementor-animation-wobble-to-top-right{16.65%{transform:translate(8px,-8px)}33.3%{transform:translate(-6px,6px)}49.95%{transform:translate(4px,-4px)}66.6%{transform:translate(-2px,2px)}83.25%{transform:translate(1px,-1px)}100%{transform:translate(0,0)}}.elementor-animation-wobble-to-top-right:active,.elementor-animation-wobble-to-top-right:focus,.elementor-animation-wobble-to-top-right:hover{animation-name:elementor-animation-wobble-to-top-right;animation-duration:1s;animation-timing-function:ease-in-out;animation-iteration-count:1}@keyframes elementor-animation-wobble-top{16.65%{transform:skew(-12deg)}33.3%{transform:skew(10deg)}49.95%{transform:skew(-6deg)}66.6%{transform:skew(4deg)}83.25%{transform:skew(-2deg)}100%{transform:skew(0)}}.elementor-animation-wobble-top{transform-origin:0 100%}.elementor-animation-wobble-top:active,.elementor-animation-wobble-top:focus,.elementor-animation-wobble-top:hover{animation-name:elementor-animation-wobble-top;animation-duration:1s;animation-timing-function:ease-in-out;animation-iteration-count:1}@keyframes elementor-animation-wobble-bottom{16.65%{transform:skew(-12deg)}33.3%{transform:skew(10deg)}49.95%{transform:skew(-6deg)}66.6%{transform:skew(4deg)}83.25%{transform:skew(-2deg)}100%{transform:skew(0)}}.elementor-animation-wobble-bottom{transform-origin:100% 0}.elementor-animation-wobble-bottom:active,.elementor-animation-wobble-bottom:focus,.elementor-animation-wobble-bottom:hover{animation-name:elementor-animation-wobble-bottom;animation-duration:1s;animation-timing-function:ease-in-out;animation-iteration-count:1}@keyframes elementor-animation-wobble-skew{16.65%{transform:skew(-12deg)}33.3%{transform:skew(10deg)}49.95%{transform:skew(-6deg)}66.6%{transform:skew(4deg)}83.25%{transform:skew(-2deg)}100%{transform:skew(0)}}.elementor-animation-wobble-skew:active,.elementor-animation-wobble-skew:focus,.elementor-animation-wobble-skew:hover{animation-name:elementor-animation-wobble-skew;animation-duration:1s;animation-timing-function:ease-in-out;animation-iteration-count:1}@keyframes elementor-animation-buzz{50%{transform:translateX(3px) rotate(2deg)}100%{transform:translateX(-3px) rotate(-2deg)}}.elementor-animation-buzz:active,.elementor-animation-buzz:focus,.elementor-animation-buzz:hover{animation-name:elementor-animation-buzz;animation-duration:.15s;animation-timing-function:linear;animation-iteration-count:infinite}@keyframes elementor-animation-buzz-out{10%{transform:translateX(3px) rotate(2deg)}20%{transform:translateX(-3px) rotate(-2deg)}30%{transform:translateX(3px) rotate(2deg)}40%{transform:translateX(-3px) rotate(-2deg)}50%{transform:translateX(2px) rotate(1deg)}60%{transform:translateX(-2px) rotate(-1deg)}70%{transform:translateX(2px) rotate(1deg)}80%{transform:translateX(-2px) rotate(-1deg)}90%{transform:translateX(1px) rotate(0)}100%{transform:translateX(-1px) rotate(0)}}.elementor-animation-buzz-out:active,.elementor-animation-buzz-out:focus,.elementor-animation-buzz-out:hover{animation-name:elementor-animation-buzz-out;animation-duration:.75s;animation-timing-function:linear;animation-iteration-count:1}assets/lib/waypoints/waypoints.js000064400000043054151327220410013247 0ustar00/*!
Waypoints - 4.0.1
Copyright © 2011-2016 Caleb Troughton
Licensed under the MIT license.
https://github.com/imakewebthings/waypoints/blob/master/licenses.txt
*/
(function() {
  'use strict'

  var keyCounter = 0
  var allWaypoints = {}

  /* http://imakewebthings.com/waypoints/api/waypoint */
  function Waypoint(options) {
    if (!options) {
      throw new Error('No options passed to Waypoint constructor')
    }
    if (!options.element) {
      throw new Error('No element option passed to Waypoint constructor')
    }
    if (!options.handler) {
      throw new Error('No handler option passed to Waypoint constructor')
    }

    this.key = 'waypoint-' + keyCounter
    this.options = Waypoint.Adapter.extend({}, Waypoint.defaults, options)
    this.element = this.options.element
    this.adapter = new Waypoint.Adapter(this.element)
    this.callback = options.handler
    this.axis = this.options.horizontal ? 'horizontal' : 'vertical'
    this.enabled = this.options.enabled
    this.triggerPoint = null
    this.group = Waypoint.Group.findOrCreate({
      name: this.options.group,
      axis: this.axis
    })
    this.context = Waypoint.Context.findOrCreateByElement(this.options.context)

    if (Waypoint.offsetAliases[this.options.offset]) {
      this.options.offset = Waypoint.offsetAliases[this.options.offset]
    }
    this.group.add(this)
    this.context.add(this)
    allWaypoints[this.key] = this
    keyCounter += 1
  }

  /* Private */
  Waypoint.prototype.queueTrigger = function(direction) {
    this.group.queueTrigger(this, direction)
  }

  /* Private */
  Waypoint.prototype.trigger = function(args) {
    if (!this.enabled) {
      return
    }
    if (this.callback) {
      this.callback.apply(this, args)
    }
  }

  /* Public */
  /* http://imakewebthings.com/waypoints/api/destroy */
  Waypoint.prototype.destroy = function() {
    this.context.remove(this)
    this.group.remove(this)
    delete allWaypoints[this.key]
  }

  /* Public */
  /* http://imakewebthings.com/waypoints/api/disable */
  Waypoint.prototype.disable = function() {
    this.enabled = false
    return this
  }

  /* Public */
  /* http://imakewebthings.com/waypoints/api/enable */
  Waypoint.prototype.enable = function() {
    this.context.refresh()
    this.enabled = true
    return this
  }

  /* Public */
  /* http://imakewebthings.com/waypoints/api/next */
  Waypoint.prototype.next = function() {
    return this.group.next(this)
  }

  /* Public */
  /* http://imakewebthings.com/waypoints/api/previous */
  Waypoint.prototype.previous = function() {
    return this.group.previous(this)
  }

  /* Private */
  Waypoint.invokeAll = function(method) {
    var allWaypointsArray = []
    for (var waypointKey in allWaypoints) {
      allWaypointsArray.push(allWaypoints[waypointKey])
    }
    for (var i = 0, end = allWaypointsArray.length; i < end; i++) {
      allWaypointsArray[i][method]()
    }
  }

  /* Public */
  /* http://imakewebthings.com/waypoints/api/destroy-all */
  Waypoint.destroyAll = function() {
    Waypoint.invokeAll('destroy')
  }

  /* Public */
  /* http://imakewebthings.com/waypoints/api/disable-all */
  Waypoint.disableAll = function() {
    Waypoint.invokeAll('disable')
  }

  /* Public */
  /* http://imakewebthings.com/waypoints/api/enable-all */
  Waypoint.enableAll = function() {
    Waypoint.Context.refreshAll()
    for (var waypointKey in allWaypoints) {
      allWaypoints[waypointKey].enabled = true
    }
    return this
  }

  /* Public */
  /* http://imakewebthings.com/waypoints/api/refresh-all */
  Waypoint.refreshAll = function() {
    Waypoint.Context.refreshAll()
  }

  /* Public */
  /* http://imakewebthings.com/waypoints/api/viewport-height */
  Waypoint.viewportHeight = function() {
    return window.innerHeight || document.documentElement.clientHeight
  }

  /* Public */
  /* http://imakewebthings.com/waypoints/api/viewport-width */
  Waypoint.viewportWidth = function() {
    return document.documentElement.clientWidth
  }

  Waypoint.adapters = []

  Waypoint.defaults = {
    context: window,
    continuous: true,
    enabled: true,
    group: 'default',
    horizontal: false,
    offset: 0
  }

  Waypoint.offsetAliases = {
    'bottom-in-view': function() {
      return this.context.innerHeight() - this.adapter.outerHeight()
    },
    'right-in-view': function() {
      return this.context.innerWidth() - this.adapter.outerWidth()
    }
  }

  window.Waypoint = Waypoint
}())
;(function() {
  'use strict'

  function requestAnimationFrameShim(callback) {
    window.setTimeout(callback, 1000 / 60)
  }

  var keyCounter = 0
  var contexts = {}
  var Waypoint = window.Waypoint
  var oldWindowLoad = window.onload

  /* http://imakewebthings.com/waypoints/api/context */
  function Context(element) {
    this.element = element
    this.Adapter = Waypoint.Adapter
    this.adapter = new this.Adapter(element)
    this.key = 'waypoint-context-' + keyCounter
    this.didScroll = false
    this.didResize = false
    this.oldScroll = {
      x: this.adapter.scrollLeft(),
      y: this.adapter.scrollTop()
    }
    this.waypoints = {
      vertical: {},
      horizontal: {}
    }

    element.waypointContextKey = this.key
    contexts[element.waypointContextKey] = this
    keyCounter += 1
    if (!Waypoint.windowContext) {
      Waypoint.windowContext = true
      Waypoint.windowContext = new Context(window)
    }

    this.createThrottledScrollHandler()
    this.createThrottledResizeHandler()
  }

  /* Private */
  Context.prototype.add = function(waypoint) {
    var axis = waypoint.options.horizontal ? 'horizontal' : 'vertical'
    this.waypoints[axis][waypoint.key] = waypoint
    this.refresh()
  }

  /* Private */
  Context.prototype.checkEmpty = function() {
    var horizontalEmpty = this.Adapter.isEmptyObject(this.waypoints.horizontal)
    var verticalEmpty = this.Adapter.isEmptyObject(this.waypoints.vertical)
    var isWindow = this.element == this.element.window
    if (horizontalEmpty && verticalEmpty && !isWindow) {
      this.adapter.off('.waypoints')
      delete contexts[this.key]
    }
  }

  /* Private */
  Context.prototype.createThrottledResizeHandler = function() {
    var self = this

    function resizeHandler() {
      self.handleResize()
      self.didResize = false
    }

    this.adapter.on('resize.waypoints', function() {
      if (!self.didResize) {
        self.didResize = true
        Waypoint.requestAnimationFrame(resizeHandler)
      }
    })
  }

  /* Private */
  Context.prototype.createThrottledScrollHandler = function() {
    var self = this
    function scrollHandler() {
      self.handleScroll()
      self.didScroll = false
    }

    this.adapter.on('scroll.waypoints', function() {
      if (!self.didScroll || Waypoint.isTouch) {
        self.didScroll = true
        Waypoint.requestAnimationFrame(scrollHandler)
      }
    })
  }

  /* Private */
  Context.prototype.handleResize = function() {
    Waypoint.Context.refreshAll()
  }

  /* Private */
  Context.prototype.handleScroll = function() {
    var triggeredGroups = {}
    var axes = {
      horizontal: {
        newScroll: this.adapter.scrollLeft(),
        oldScroll: this.oldScroll.x,
        forward: 'right',
        backward: 'left'
      },
      vertical: {
        newScroll: this.adapter.scrollTop(),
        oldScroll: this.oldScroll.y,
        forward: 'down',
        backward: 'up'
      }
    }

    for (var axisKey in axes) {
      var axis = axes[axisKey]
      var isForward = axis.newScroll > axis.oldScroll
      var direction = isForward ? axis.forward : axis.backward

      for (var waypointKey in this.waypoints[axisKey]) {
        var waypoint = this.waypoints[axisKey][waypointKey]
        if (waypoint.triggerPoint === null) {
          continue
        }
        var wasBeforeTriggerPoint = axis.oldScroll < waypoint.triggerPoint
        var nowAfterTriggerPoint = axis.newScroll >= waypoint.triggerPoint
        var crossedForward = wasBeforeTriggerPoint && nowAfterTriggerPoint
        var crossedBackward = !wasBeforeTriggerPoint && !nowAfterTriggerPoint
        if (crossedForward || crossedBackward) {
          waypoint.queueTrigger(direction)
          triggeredGroups[waypoint.group.id] = waypoint.group
        }
      }
    }

    for (var groupKey in triggeredGroups) {
      triggeredGroups[groupKey].flushTriggers()
    }

    this.oldScroll = {
      x: axes.horizontal.newScroll,
      y: axes.vertical.newScroll
    }
  }

  /* Private */
  Context.prototype.innerHeight = function() {
    /*eslint-disable eqeqeq */
    if (this.element == this.element.window) {
      return Waypoint.viewportHeight()
    }
    /*eslint-enable eqeqeq */
    return this.adapter.innerHeight()
  }

  /* Private */
  Context.prototype.remove = function(waypoint) {
    delete this.waypoints[waypoint.axis][waypoint.key]
    this.checkEmpty()
  }

  /* Private */
  Context.prototype.innerWidth = function() {
    /*eslint-disable eqeqeq */
    if (this.element == this.element.window) {
      return Waypoint.viewportWidth()
    }
    /*eslint-enable eqeqeq */
    return this.adapter.innerWidth()
  }

  /* Public */
  /* http://imakewebthings.com/waypoints/api/context-destroy */
  Context.prototype.destroy = function() {
    var allWaypoints = []
    for (var axis in this.waypoints) {
      for (var waypointKey in this.waypoints[axis]) {
        allWaypoints.push(this.waypoints[axis][waypointKey])
      }
    }
    for (var i = 0, end = allWaypoints.length; i < end; i++) {
      allWaypoints[i].destroy()
    }
  }

  /* Public */
  /* http://imakewebthings.com/waypoints/api/context-refresh */
  Context.prototype.refresh = function() {
    /*eslint-disable eqeqeq */
    var isWindow = this.element == this.element.window
    /*eslint-enable eqeqeq */
    var contextOffset = isWindow ? undefined : this.adapter.offset()
    var triggeredGroups = {}
    var axes

    this.handleScroll()
    axes = {
      horizontal: {
        contextOffset: isWindow ? 0 : contextOffset.left,
        contextScroll: isWindow ? 0 : this.oldScroll.x,
        contextDimension: this.innerWidth(),
        oldScroll: this.oldScroll.x,
        forward: 'right',
        backward: 'left',
        offsetProp: 'left'
      },
      vertical: {
        contextOffset: isWindow ? 0 : contextOffset.top,
        contextScroll: isWindow ? 0 : this.oldScroll.y,
        contextDimension: this.innerHeight(),
        oldScroll: this.oldScroll.y,
        forward: 'down',
        backward: 'up',
        offsetProp: 'top'
      }
    }

    for (var axisKey in axes) {
      var axis = axes[axisKey]
      for (var waypointKey in this.waypoints[axisKey]) {
        var waypoint = this.waypoints[axisKey][waypointKey]
        var adjustment = waypoint.options.offset
        var oldTriggerPoint = waypoint.triggerPoint
        var elementOffset = 0
        var freshWaypoint = oldTriggerPoint == null
        var contextModifier, wasBeforeScroll, nowAfterScroll
        var triggeredBackward, triggeredForward

        if (waypoint.element !== waypoint.element.window) {
          elementOffset = waypoint.adapter.offset()[axis.offsetProp]
        }

        if (typeof adjustment === 'function') {
          adjustment = adjustment.apply(waypoint)
        }
        else if (typeof adjustment === 'string') {
          adjustment = parseFloat(adjustment)
          if (waypoint.options.offset.indexOf('%') > - 1) {
            adjustment = Math.ceil(axis.contextDimension * adjustment / 100)
          }
        }

        contextModifier = axis.contextScroll - axis.contextOffset
        waypoint.triggerPoint = Math.floor(elementOffset + contextModifier - adjustment)
        wasBeforeScroll = oldTriggerPoint < axis.oldScroll
        nowAfterScroll = waypoint.triggerPoint >= axis.oldScroll
        triggeredBackward = wasBeforeScroll && nowAfterScroll
        triggeredForward = !wasBeforeScroll && !nowAfterScroll

        if (!freshWaypoint && triggeredBackward) {
          waypoint.queueTrigger(axis.backward)
          triggeredGroups[waypoint.group.id] = waypoint.group
        }
        else if (!freshWaypoint && triggeredForward) {
          waypoint.queueTrigger(axis.forward)
          triggeredGroups[waypoint.group.id] = waypoint.group
        }
        else if (freshWaypoint && axis.oldScroll >= waypoint.triggerPoint) {
          waypoint.queueTrigger(axis.forward)
          triggeredGroups[waypoint.group.id] = waypoint.group
        }
      }
    }

    Waypoint.requestAnimationFrame(function() {
      for (var groupKey in triggeredGroups) {
        triggeredGroups[groupKey].flushTriggers()
      }
    })

    return this
  }

  /* Private */
  Context.findOrCreateByElement = function(element) {
    return Context.findByElement(element) || new Context(element)
  }

  /* Private */
  Context.refreshAll = function() {
    for (var contextId in contexts) {
      contexts[contextId].refresh()
    }
  }

  /* Public */
  /* http://imakewebthings.com/waypoints/api/context-find-by-element */
  Context.findByElement = function(element) {
    return contexts[element.waypointContextKey]
  }

  window.onload = function() {
    if (oldWindowLoad) {
      oldWindowLoad()
    }
    Context.refreshAll()
  }


  Waypoint.requestAnimationFrame = function(callback) {
    var requestFn = window.requestAnimationFrame ||
      window.mozRequestAnimationFrame ||
      window.webkitRequestAnimationFrame ||
      requestAnimationFrameShim
    requestFn.call(window, callback)
  }
  Waypoint.Context = Context
}())
;(function() {
  'use strict'

  function byTriggerPoint(a, b) {
    return a.triggerPoint - b.triggerPoint
  }

  function byReverseTriggerPoint(a, b) {
    return b.triggerPoint - a.triggerPoint
  }

  var groups = {
    vertical: {},
    horizontal: {}
  }
  var Waypoint = window.Waypoint

  /* http://imakewebthings.com/waypoints/api/group */
  function Group(options) {
    this.name = options.name
    this.axis = options.axis
    this.id = this.name + '-' + this.axis
    this.waypoints = []
    this.clearTriggerQueues()
    groups[this.axis][this.name] = this
  }

  /* Private */
  Group.prototype.add = function(waypoint) {
    this.waypoints.push(waypoint)
  }

  /* Private */
  Group.prototype.clearTriggerQueues = function() {
    this.triggerQueues = {
      up: [],
      down: [],
      left: [],
      right: []
    }
  }

  /* Private */
  Group.prototype.flushTriggers = function() {
    for (var direction in this.triggerQueues) {
      var waypoints = this.triggerQueues[direction]
      var reverse = direction === 'up' || direction === 'left'
      waypoints.sort(reverse ? byReverseTriggerPoint : byTriggerPoint)
      for (var i = 0, end = waypoints.length; i < end; i += 1) {
        var waypoint = waypoints[i]
        if (waypoint.options.continuous || i === waypoints.length - 1) {
          waypoint.trigger([direction])
        }
      }
    }
    this.clearTriggerQueues()
  }

  /* Private */
  Group.prototype.next = function(waypoint) {
    this.waypoints.sort(byTriggerPoint)
    var index = Waypoint.Adapter.inArray(waypoint, this.waypoints)
    var isLast = index === this.waypoints.length - 1
    return isLast ? null : this.waypoints[index + 1]
  }

  /* Private */
  Group.prototype.previous = function(waypoint) {
    this.waypoints.sort(byTriggerPoint)
    var index = Waypoint.Adapter.inArray(waypoint, this.waypoints)
    return index ? this.waypoints[index - 1] : null
  }

  /* Private */
  Group.prototype.queueTrigger = function(waypoint, direction) {
    this.triggerQueues[direction].push(waypoint)
  }

  /* Private */
  Group.prototype.remove = function(waypoint) {
    var index = Waypoint.Adapter.inArray(waypoint, this.waypoints)
    if (index > -1) {
      this.waypoints.splice(index, 1)
    }
  }

  /* Public */
  /* http://imakewebthings.com/waypoints/api/first */
  Group.prototype.first = function() {
    return this.waypoints[0]
  }

  /* Public */
  /* http://imakewebthings.com/waypoints/api/last */
  Group.prototype.last = function() {
    return this.waypoints[this.waypoints.length - 1]
  }

  /* Private */
  Group.findOrCreate = function(options) {
    return groups[options.axis][options.name] || new Group(options)
  }

  Waypoint.Group = Group
}())
;(function() {
  'use strict'

  var $ = window.jQuery
  var Waypoint = window.Waypoint

  function JQueryAdapter(element) {
    this.$element = $(element)
  }

  $.each([
    'innerHeight',
    'innerWidth',
    'off',
    'offset',
    'on',
    'outerHeight',
    'outerWidth',
    'scrollLeft',
    'scrollTop'
  ], function(i, method) {
    JQueryAdapter.prototype[method] = function() {
      var args = Array.prototype.slice.call(arguments)
      return this.$element[method].apply(this.$element, args)
    }
  })

  $.each([
    'extend',
    'inArray',
    'isEmptyObject'
  ], function(i, method) {
    JQueryAdapter[method] = $[method]
  })

  Waypoint.adapters.push({
    name: 'jquery',
    Adapter: JQueryAdapter
  })
  Waypoint.Adapter = JQueryAdapter
}())
;(function() {
  'use strict'

  var Waypoint = window.Waypoint

  function createExtension(framework) {
    return function() {
      var waypoints = []
      var overrides = arguments[0]

      if (framework.isFunction(arguments[0])) {
        overrides = framework.extend({}, arguments[1])
        overrides.handler = arguments[0]
      }

      this.each(function() {
        var options = framework.extend({}, overrides, {
          element: this
        })
        if (typeof options.context === 'string') {
          options.context = framework(this).closest(options.context)[0]
        }
        waypoints.push(new Waypoint(options))
      })

      return waypoints
    }
  }

  if (window.jQuery) {
    window.jQuery.fn.elementorWaypoint = createExtension(window.jQuery)
  }
  if (window.Zepto) {
    window.Zepto.fn.elementorWaypoint = createExtension(window.Zepto)
  }
}())
;assets/lib/waypoints/waypoints.min.js000064400000027646151327220410014042 0ustar00!function(){"use strict";function Waypoint(options){if(!options)throw new Error("No options passed to Waypoint constructor");if(!options.element)throw new Error("No element option passed to Waypoint constructor");if(!options.handler)throw new Error("No handler option passed to Waypoint constructor");this.key="waypoint-"+keyCounter,this.options=Waypoint.Adapter.extend({},Waypoint.defaults,options),this.element=this.options.element,this.adapter=new Waypoint.Adapter(this.element),this.callback=options.handler,this.axis=this.options.horizontal?"horizontal":"vertical",this.enabled=this.options.enabled,this.triggerPoint=null,this.group=Waypoint.Group.findOrCreate({name:this.options.group,axis:this.axis}),this.context=Waypoint.Context.findOrCreateByElement(this.options.context),Waypoint.offsetAliases[this.options.offset]&&(this.options.offset=Waypoint.offsetAliases[this.options.offset]),this.group.add(this),this.context.add(this),allWaypoints[this.key]=this,keyCounter+=1}var keyCounter=0,allWaypoints={};Waypoint.prototype.queueTrigger=function(direction){this.group.queueTrigger(this,direction)},Waypoint.prototype.trigger=function(args){this.enabled&&this.callback&&this.callback.apply(this,args)},Waypoint.prototype.destroy=function(){this.context.remove(this),this.group.remove(this),delete allWaypoints[this.key]},Waypoint.prototype.disable=function(){return this.enabled=!1,this},Waypoint.prototype.enable=function(){return this.context.refresh(),this.enabled=!0,this},Waypoint.prototype.next=function(){return this.group.next(this)},Waypoint.prototype.previous=function(){return this.group.previous(this)},Waypoint.invokeAll=function(method){var allWaypointsArray=[];for(var waypointKey in allWaypoints)allWaypointsArray.push(allWaypoints[waypointKey]);for(var i=0,end=allWaypointsArray.length;i<end;i++)allWaypointsArray[i][method]()},Waypoint.destroyAll=function(){Waypoint.invokeAll("destroy")},Waypoint.disableAll=function(){Waypoint.invokeAll("disable")},Waypoint.enableAll=function(){Waypoint.Context.refreshAll();for(var waypointKey in allWaypoints)allWaypoints[waypointKey].enabled=!0;return this},Waypoint.refreshAll=function(){Waypoint.Context.refreshAll()},Waypoint.viewportHeight=function(){return window.innerHeight||document.documentElement.clientHeight},Waypoint.viewportWidth=function(){return document.documentElement.clientWidth},Waypoint.adapters=[],Waypoint.defaults={context:window,continuous:!0,enabled:!0,group:"default",horizontal:!1,offset:0},Waypoint.offsetAliases={"bottom-in-view":function(){return this.context.innerHeight()-this.adapter.outerHeight()},"right-in-view":function(){return this.context.innerWidth()-this.adapter.outerWidth()}},window.Waypoint=Waypoint}(),function(){"use strict";function requestAnimationFrameShim(callback){window.setTimeout(callback,1e3/60)}function Context(element){this.element=element,this.Adapter=Waypoint.Adapter,this.adapter=new this.Adapter(element),this.key="waypoint-context-"+keyCounter,this.didScroll=!1,this.didResize=!1,this.oldScroll={x:this.adapter.scrollLeft(),y:this.adapter.scrollTop()},this.waypoints={vertical:{},horizontal:{}},element.waypointContextKey=this.key,contexts[element.waypointContextKey]=this,keyCounter+=1,Waypoint.windowContext||(Waypoint.windowContext=!0,Waypoint.windowContext=new Context(window)),this.createThrottledScrollHandler(),this.createThrottledResizeHandler()}var keyCounter=0,contexts={},Waypoint=window.Waypoint,oldWindowLoad=window.onload;Context.prototype.add=function(waypoint){var axis=waypoint.options.horizontal?"horizontal":"vertical";this.waypoints[axis][waypoint.key]=waypoint,this.refresh()},Context.prototype.checkEmpty=function(){var horizontalEmpty=this.Adapter.isEmptyObject(this.waypoints.horizontal),verticalEmpty=this.Adapter.isEmptyObject(this.waypoints.vertical),isWindow=this.element==this.element.window;horizontalEmpty&&verticalEmpty&&!isWindow&&(this.adapter.off(".waypoints"),delete contexts[this.key])},Context.prototype.createThrottledResizeHandler=function(){function resizeHandler(){self.handleResize(),self.didResize=!1}var self=this;this.adapter.on("resize.waypoints",function(){self.didResize||(self.didResize=!0,Waypoint.requestAnimationFrame(resizeHandler))})},Context.prototype.createThrottledScrollHandler=function(){function scrollHandler(){self.handleScroll(),self.didScroll=!1}var self=this;this.adapter.on("scroll.waypoints",function(){self.didScroll&&!Waypoint.isTouch||(self.didScroll=!0,Waypoint.requestAnimationFrame(scrollHandler))})},Context.prototype.handleResize=function(){Waypoint.Context.refreshAll()},Context.prototype.handleScroll=function(){var triggeredGroups={},axes={horizontal:{newScroll:this.adapter.scrollLeft(),oldScroll:this.oldScroll.x,forward:"right",backward:"left"},vertical:{newScroll:this.adapter.scrollTop(),oldScroll:this.oldScroll.y,forward:"down",backward:"up"}};for(var axisKey in axes){var axis=axes[axisKey],isForward=axis.newScroll>axis.oldScroll,direction=isForward?axis.forward:axis.backward;for(var waypointKey in this.waypoints[axisKey]){var waypoint=this.waypoints[axisKey][waypointKey];if(null!==waypoint.triggerPoint){var wasBeforeTriggerPoint=axis.oldScroll<waypoint.triggerPoint,nowAfterTriggerPoint=axis.newScroll>=waypoint.triggerPoint,crossedForward=wasBeforeTriggerPoint&&nowAfterTriggerPoint,crossedBackward=!wasBeforeTriggerPoint&&!nowAfterTriggerPoint;(crossedForward||crossedBackward)&&(waypoint.queueTrigger(direction),triggeredGroups[waypoint.group.id]=waypoint.group)}}}for(var groupKey in triggeredGroups)triggeredGroups[groupKey].flushTriggers();this.oldScroll={x:axes.horizontal.newScroll,y:axes.vertical.newScroll}},Context.prototype.innerHeight=function(){return this.element==this.element.window?Waypoint.viewportHeight():this.adapter.innerHeight()},Context.prototype.remove=function(waypoint){delete this.waypoints[waypoint.axis][waypoint.key],this.checkEmpty()},Context.prototype.innerWidth=function(){return this.element==this.element.window?Waypoint.viewportWidth():this.adapter.innerWidth()},Context.prototype.destroy=function(){var allWaypoints=[];for(var axis in this.waypoints)for(var waypointKey in this.waypoints[axis])allWaypoints.push(this.waypoints[axis][waypointKey]);for(var i=0,end=allWaypoints.length;i<end;i++)allWaypoints[i].destroy()},Context.prototype.refresh=function(){var axes,isWindow=this.element==this.element.window,contextOffset=isWindow?void 0:this.adapter.offset(),triggeredGroups={};this.handleScroll(),axes={horizontal:{contextOffset:isWindow?0:contextOffset.left,contextScroll:isWindow?0:this.oldScroll.x,contextDimension:this.innerWidth(),oldScroll:this.oldScroll.x,forward:"right",backward:"left",offsetProp:"left"},vertical:{contextOffset:isWindow?0:contextOffset.top,contextScroll:isWindow?0:this.oldScroll.y,contextDimension:this.innerHeight(),oldScroll:this.oldScroll.y,forward:"down",backward:"up",offsetProp:"top"}};for(var axisKey in axes){var axis=axes[axisKey];for(var waypointKey in this.waypoints[axisKey]){var contextModifier,wasBeforeScroll,nowAfterScroll,triggeredBackward,triggeredForward,waypoint=this.waypoints[axisKey][waypointKey],adjustment=waypoint.options.offset,oldTriggerPoint=waypoint.triggerPoint,elementOffset=0,freshWaypoint=null==oldTriggerPoint;waypoint.element!==waypoint.element.window&&(elementOffset=waypoint.adapter.offset()[axis.offsetProp]),"function"==typeof adjustment?adjustment=adjustment.apply(waypoint):"string"==typeof adjustment&&(adjustment=parseFloat(adjustment),waypoint.options.offset.indexOf("%")>-1&&(adjustment=Math.ceil(axis.contextDimension*adjustment/100))),contextModifier=axis.contextScroll-axis.contextOffset,waypoint.triggerPoint=Math.floor(elementOffset+contextModifier-adjustment),wasBeforeScroll=oldTriggerPoint<axis.oldScroll,nowAfterScroll=waypoint.triggerPoint>=axis.oldScroll,triggeredBackward=wasBeforeScroll&&nowAfterScroll,triggeredForward=!wasBeforeScroll&&!nowAfterScroll,!freshWaypoint&&triggeredBackward?(waypoint.queueTrigger(axis.backward),triggeredGroups[waypoint.group.id]=waypoint.group):!freshWaypoint&&triggeredForward?(waypoint.queueTrigger(axis.forward),triggeredGroups[waypoint.group.id]=waypoint.group):freshWaypoint&&axis.oldScroll>=waypoint.triggerPoint&&(waypoint.queueTrigger(axis.forward),triggeredGroups[waypoint.group.id]=waypoint.group)}}return Waypoint.requestAnimationFrame(function(){for(var groupKey in triggeredGroups)triggeredGroups[groupKey].flushTriggers()}),this},Context.findOrCreateByElement=function(element){return Context.findByElement(element)||new Context(element)},Context.refreshAll=function(){for(var contextId in contexts)contexts[contextId].refresh()},Context.findByElement=function(element){return contexts[element.waypointContextKey]},window.onload=function(){oldWindowLoad&&oldWindowLoad(),Context.refreshAll()},Waypoint.requestAnimationFrame=function(callback){var requestFn=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||requestAnimationFrameShim;requestFn.call(window,callback)},Waypoint.Context=Context}(),function(){"use strict";function byTriggerPoint(a,b){return a.triggerPoint-b.triggerPoint}function byReverseTriggerPoint(a,b){return b.triggerPoint-a.triggerPoint}function Group(options){this.name=options.name,this.axis=options.axis,this.id=this.name+"-"+this.axis,this.waypoints=[],this.clearTriggerQueues(),groups[this.axis][this.name]=this}var groups={vertical:{},horizontal:{}},Waypoint=window.Waypoint;Group.prototype.add=function(waypoint){this.waypoints.push(waypoint)},Group.prototype.clearTriggerQueues=function(){this.triggerQueues={up:[],down:[],left:[],right:[]}},Group.prototype.flushTriggers=function(){for(var direction in this.triggerQueues){var waypoints=this.triggerQueues[direction],reverse="up"===direction||"left"===direction;waypoints.sort(reverse?byReverseTriggerPoint:byTriggerPoint);for(var i=0,end=waypoints.length;i<end;i+=1){var waypoint=waypoints[i];(waypoint.options.continuous||i===waypoints.length-1)&&waypoint.trigger([direction])}}this.clearTriggerQueues()},Group.prototype.next=function(waypoint){this.waypoints.sort(byTriggerPoint);var index=Waypoint.Adapter.inArray(waypoint,this.waypoints),isLast=index===this.waypoints.length-1;return isLast?null:this.waypoints[index+1]},Group.prototype.previous=function(waypoint){this.waypoints.sort(byTriggerPoint);var index=Waypoint.Adapter.inArray(waypoint,this.waypoints);return index?this.waypoints[index-1]:null},Group.prototype.queueTrigger=function(waypoint,direction){this.triggerQueues[direction].push(waypoint)},Group.prototype.remove=function(waypoint){var index=Waypoint.Adapter.inArray(waypoint,this.waypoints);index>-1&&this.waypoints.splice(index,1)},Group.prototype.first=function(){return this.waypoints[0]},Group.prototype.last=function(){return this.waypoints[this.waypoints.length-1]},Group.findOrCreate=function(options){return groups[options.axis][options.name]||new Group(options)},Waypoint.Group=Group}(),function(){"use strict";function JQueryAdapter(element){this.$element=$(element)}var $=window.jQuery,Waypoint=window.Waypoint;$.each(["innerHeight","innerWidth","off","offset","on","outerHeight","outerWidth","scrollLeft","scrollTop"],function(i,method){JQueryAdapter.prototype[method]=function(){var args=Array.prototype.slice.call(arguments);return this.$element[method].apply(this.$element,args)}}),$.each(["extend","inArray","isEmptyObject"],function(i,method){JQueryAdapter[method]=$[method]}),Waypoint.adapters.push({name:"jquery",Adapter:JQueryAdapter}),Waypoint.Adapter=JQueryAdapter}(),function(){"use strict";function createExtension(framework){return function(){var waypoints=[],overrides=arguments[0];return framework.isFunction(arguments[0])&&(overrides=framework.extend({},arguments[1]),overrides.handler=arguments[0]),this.each(function(){var options=framework.extend({},overrides,{element:this});"string"==typeof options.context&&(options.context=framework(this).closest(options.context)[0]),waypoints.push(new Waypoint(options))}),waypoints}}var Waypoint=window.Waypoint;window.jQuery&&(window.jQuery.fn.elementorWaypoint=createExtension(window.jQuery)),window.Zepto&&(window.Zepto.fn.elementorWaypoint=createExtension(window.Zepto))}();assets/lib/waypoints/waypoints-for-editor.js000064400000000232151327220410015306 0ustar00(function( $ ) {
	$.fn.elementorWaypoint = function(callback) {
		if ( typeof callback === 'function' ) {
			callback.call( this );
		}
	};
})( jQuery );
assets/lib/e-gallery/css/e-gallery.min.css000064400000006347151327220410014451 0ustar00/*! E-Gallery v1.2.0 by Elementor */
.e-gallery-container{position:relative;display:flex;flex-wrap:wrap}.e-gallery-container:not(.e-gallery-grid){transition:padding-bottom var(--animation-duration)}.e-gallery-item{position:relative;flex-grow:0;flex-shrink:0;transition-property:all;transition-duration:var(--animation-duration)}.e-gallery-item:not(:hover) .e-gallery-overlay{display:none}.e-gallery-item.e-gallery-item--hidden{transform:scale3d(0, 0, 0);opacity:0}.e-gallery-image{background-position:center center;background-size:cover;width:100%;transform-origin:center top;transition:var(--animation-duration)}.e-gallery-overlay{position:absolute;top:0;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-evenly;flex-wrap:wrap;flex-direction:column;color:#fff;background-color:rgba(0,0,0,0.5)}.e-gallery-overlay__title{font-size:24px}.e-gallery-grid:not(.e-gallery--animated){display:grid;grid-gap:var(--vgap) var(--hgap);grid-template-columns:repeat(var(--columns), 1fr)}.e-gallery-grid:not(.e-gallery--animated) .e-gallery-item--hidden{position:absolute}.e-gallery-grid.e-gallery--animated{padding-bottom:var(--container-aspect-ratio)}.e-gallery-grid.e-gallery--animated .e-gallery-item{--item-width: calc((100% - ((var(--columns) - 1) * var(--hgap))) / var(--columns));position:absolute;top:calc(((100% / var(--rows)) + (var(--vgap) / var(--rows))) * var(--row));width:var(--item-width)}.e-gallery-grid .e-gallery-image{padding-bottom:var(--aspect-ratio)}.e-gallery-justified{padding-bottom:calc(var(--container-aspect-ratio) * 100%)}.e-gallery-justified .e-gallery-item{position:absolute;width:calc(var(--item-width) * (100% - var(--hgap) * var(--gap-count)));height:var(--item-height);top:calc(var(--item-top) + (var(--row) * var(--vgap)))}.e-gallery-justified .e-gallery-image{height:100%}.e-gallery-masonry{height:0;margin-bottom:calc(var(--highest-column-gap-count) * var(--vgap))}.e-gallery-masonry .e-gallery-item{position:absolute;width:calc(100% / var(--columns) - (var(--hgap) * (var(--columns) - 1) / var(--columns)));top:calc(var(--percent-height) + (var(--items-in-column) * var(--vgap)))}.e-gallery-masonry .e-gallery-image{padding-bottom:var(--item-height)}.e-gallery--ltr.e-gallery-grid.e-gallery--animated .e-gallery-item{left:calc(var(--item-width) * var(--column) + (var(--hgap) * var(--column)))}.e-gallery--ltr.e-gallery-justified .e-gallery-item{left:calc(var(--item-start) * (100% - var(--hgap) * var(--gap-count)) + var(--hgap) * var(--item-row-index))}.e-gallery--ltr.e-gallery-masonry .e-gallery-item{left:calc((100% / var(--columns) - (var(--hgap) * (var(--columns) - 1) / var(--columns))) * var(--column) + (var(--hgap) * var(--column)))}.e-gallery--rtl.e-gallery-grid.e-gallery--animated .e-gallery-item{right:calc(var(--item-width) * var(--column) + (var(--hgap) * var(--column)))}.e-gallery--rtl.e-gallery-justified .e-gallery-item{right:calc(var(--item-start) * (100% - var(--hgap) * var(--gap-count)) + var(--hgap) * var(--item-row-index))}.e-gallery--rtl.e-gallery-masonry .e-gallery-item{right:calc((100% / var(--columns) - (var(--hgap) * (var(--columns) - 1) / var(--columns))) * var(--column) + (var(--hgap) * var(--column)))}.e-gallery--lazyload .e-gallery-image:not(.e-gallery-image-loaded){filter:opacity(0);transform:scale(0.5)}

assets/lib/e-gallery/css/e-gallery.css000064400000007262151327220410013664 0ustar00/*! E-Gallery v1.2.0 by Elementor */
.e-gallery-container {
  position: relative;
  display: flex;
  flex-wrap: wrap; }
  .e-gallery-container:not(.e-gallery-grid) {
    transition: padding-bottom var(--animation-duration); }

.e-gallery-item {
  position: relative;
  flex-grow: 0;
  flex-shrink: 0;
  transition-property: all;
  transition-duration: var(--animation-duration); }
  .e-gallery-item:not(:hover) .e-gallery-overlay {
    display: none; }
  .e-gallery-item.e-gallery-item--hidden {
    transform: scale3d(0, 0, 0);
    opacity: 0; }

.e-gallery-image {
  background-position: center center;
  background-size: cover;
  width: 100%;
  transform-origin: center top;
  transition: var(--animation-duration); }

.e-gallery-overlay {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  display: flex;
  align-items: center;
  justify-content: space-evenly;
  flex-wrap: wrap;
  flex-direction: column;
  color: #fff;
  background-color: rgba(0, 0, 0, 0.5); }
  .e-gallery-overlay__title {
    font-size: 24px; }

.e-gallery-grid:not(.e-gallery--animated) {
  display: grid;
  grid-gap: var(--vgap) var(--hgap);
  grid-template-columns: repeat(var(--columns), 1fr); }
  .e-gallery-grid:not(.e-gallery--animated) .e-gallery-item--hidden {
    position: absolute; }

.e-gallery-grid.e-gallery--animated {
  padding-bottom: var(--container-aspect-ratio); }
  .e-gallery-grid.e-gallery--animated .e-gallery-item {
    --item-width: calc((100% - ((var(--columns) - 1) * var(--hgap))) / var(--columns));
    position: absolute;
    top: calc(((100% / var(--rows)) + (var(--vgap) / var(--rows))) * var(--row));
    width: var(--item-width); }

.e-gallery-grid .e-gallery-image {
  padding-bottom: var(--aspect-ratio); }

.e-gallery-justified {
  padding-bottom: calc(var(--container-aspect-ratio) * 100%); }
  .e-gallery-justified .e-gallery-item {
    position: absolute;
    width: calc(var(--item-width) * (100% - var(--hgap) * var(--gap-count)));
    height: var(--item-height);
    top: calc(var(--item-top) + (var(--row) * var(--vgap))); }
  .e-gallery-justified .e-gallery-image {
    height: 100%; }

.e-gallery-masonry {
  height: 0;
  margin-bottom: calc(var(--highest-column-gap-count) * var(--vgap)); }
  .e-gallery-masonry .e-gallery-item {
    position: absolute;
    width: calc(100% / var(--columns) - (var(--hgap) * (var(--columns) - 1) / var(--columns)));
    top: calc(var(--percent-height) + (var(--items-in-column) * var(--vgap))); }
  .e-gallery-masonry .e-gallery-image {
    padding-bottom: var(--item-height); }

.e-gallery--ltr.e-gallery-grid.e-gallery--animated .e-gallery-item {
  left: calc(var(--item-width) * var(--column) + (var(--hgap) * var(--column))); }

.e-gallery--ltr.e-gallery-justified .e-gallery-item {
  left: calc(var(--item-start) * (100% - var(--hgap) * var(--gap-count)) + var(--hgap) * var(--item-row-index)); }

.e-gallery--ltr.e-gallery-masonry .e-gallery-item {
  left: calc((100% / var(--columns) - (var(--hgap) * (var(--columns) - 1) / var(--columns))) * var(--column) + (var(--hgap) * var(--column))); }

.e-gallery--rtl.e-gallery-grid.e-gallery--animated .e-gallery-item {
  right: calc(var(--item-width) * var(--column) + (var(--hgap) * var(--column))); }

.e-gallery--rtl.e-gallery-justified .e-gallery-item {
  right: calc(var(--item-start) * (100% - var(--hgap) * var(--gap-count)) + var(--hgap) * var(--item-row-index)); }

.e-gallery--rtl.e-gallery-masonry .e-gallery-item {
  right: calc((100% / var(--columns) - (var(--hgap) * (var(--columns) - 1) / var(--columns))) * var(--column) + (var(--hgap) * var(--column))); }

.e-gallery--lazyload .e-gallery-image:not(.e-gallery-image-loaded) {
  filter: opacity(0);
  transform: scale(0.5); }


/*# sourceMappingURL=e-gallery.css.map*/assets/lib/e-gallery/js/e-gallery.min.js000064400000035763151327220410014125 0ustar00/*! E-Gallery v1.2.0 by Elementor */
var EGallery=function(t){var e={};function i(n){if(e[n])return e[n].exports;var s=e[n]={i:n,l:!1,exports:{}};return t[n].call(s.exports,s,s.exports,i),s.l=!0,s.exports}return i.m=t,i.c=e,i.d=function(t,e,n){i.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},i.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},i.t=function(t,e){if(1&e&&(t=i(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(i.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var s in t)i.d(n,s,function(e){return t[e]}.bind(null,s));return n},i.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return i.d(e,"a",e),e},i.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},i.p="",i(i.s=9)}([function(t,e){t.exports=function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}},function(t,e){function i(t,e){for(var i=0;i<e.length;i++){var n=e[i];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,n.key,n)}}t.exports=function(t,e,n){return e&&i(t.prototype,e),n&&i(t,n),t}},function(t,e,i){var n=i(5),s=i(6);t.exports=function(t,e){return!e||"object"!==n(e)&&"function"!=typeof e?s(t):e}},function(t,e){function i(e){return t.exports=i=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)},i(e)}t.exports=i},function(t,e,i){var n=i(7);t.exports=function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&n(t,e)}},function(t,e){function i(t){return(i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function n(t){return(n="function"==typeof Symbol&&"symbol"===i(Symbol.iterator)?function(t){return i(t)}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":i(t)})(t)}function s(e){return"function"==typeof Symbol&&"symbol"===n(Symbol.iterator)?t.exports=s=function(t){return n(t)}:t.exports=s=function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":n(t)},s(e)}t.exports=s},function(t,e){t.exports=function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}},function(t,e){function i(e,n){return t.exports=i=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t},i(e,n)}t.exports=i},function(t,e,i){},function(t,e,i){"use strict";i.r(e);var n=i(0),s=i.n(n),r=i(1),a=i.n(r),o=i(2),l=i.n(o),u=i(3),c=i.n(u),h=i(4),y=i.n(h);var g=function(){function t(e){var i=this;s()(this,t),this.settings=jQuery.extend(!0,this.getDefaultSettings(),e),this.$container=jQuery(this.settings.container),this.timeouts=[],this.initElements(),this.prepareGallery();var n=this.runGallery.bind(this);this.runGallery=this.debounce(function(){for(var t=arguments.length,e=new Array(t),s=0;s<t;s++)e[s]=arguments[s];i.settings.lazyLoad?n.apply(void 0,e):i.allImagesPromise.then(function(){return n.apply(void 0,e)})},300),this.settings.lazyLoad&&(this.handleScroll=this.debounce(function(){return i.lazyLoadImages()},16)),this.bindEvents(),this.runGallery()}return a()(t,[{key:"getDefaultSettings",value:function(){return{}}},{key:"getItemClass",value:function(t){return this.settings.classesPrefix+t}},{key:"initElements",value:function(){this.elements={$window:jQuery(window)};var t="-"+(this.settings.rtl?"rtl":"ltr"),e=this.getItemClass(this.settings.classes.container)+" "+this.getItemClass(this.settings.type)+" "+this.getItemClass(t);this.settings.lazyLoad&&(e+=" "+this.getItemClass(this.settings.classes.lazyLoad)),this.$container.addClass(e)}},{key:"bindEvents",value:function(){this.elements.$window.on("resize",this.runGallery),this.settings.lazyLoad&&this.elements.$window.on("scroll",this.handleScroll)}},{key:"getNestedObjectData",value:function(t,e){var i=e.split("."),n=i.splice(0,1);return i.length?this.getNestedObjectData(t[n],i.join(".")):{object:t,key:e}}},{key:"getTemplateArgs",value:function(t,e){var i=this.getNestedObjectData(t,e);return i.object[i.key]||""}},{key:"getCurrentBreakpoint",value:function(){var t=Object.keys(this.settings.breakpoints).map(Number).sort(function(t,e){return t-e}),e=0;return t.some(function(t){return innerWidth<t&&(e=t,!0)}),e}},{key:"getCurrentDeviceSetting",value:function(t){var e=this.getCurrentBreakpoint();return e?this.settings.breakpoints[e][t]:this.settings[t]}},{key:"getActiveItems",value:function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],e=this.settings.tags,i=[];if(!e.length)return t?(this.$items.each(function(t){i.push(t)}),i):this.$items;var n=this.$items.filter(function(n,s){var r=s.dataset.eGalleryTags;return!!r&&(r=r.split(/[ ,]+/),!!e.some(function(t){return r.includes(t)})&&(t&&i.push(n),!0))});return t?i:n}},{key:"getImageData",value:function(t){return this.settings.tags.length&&(t=this.getActiveItems(!0)[t]),this.imagesData[t]}},{key:"compileTemplate",value:function(t,e){var i=this;return t.replace(/{{([^}]+)}}/g,function(t,n){return i.getTemplateArgs(e,n.trim())})}},{key:"createOverlay",value:function(t){var e=this.settings,i=e.classes,n=e.overlayTemplate,s=jQuery("<div>",{class:this.getItemClass(i.overlay)}),r=this.compileTemplate(n,jQuery.extend(!0,this.settings,t));return s.html(r),s}},{key:"createItem",value:function(t){var e,i=this.settings.classes,n=jQuery("<div>",{class:this.getItemClass(i.item),"data-e-gallery-tags":t.tags}),s=jQuery("<div>",{class:this.getItemClass(i.image)});this.settings.lazyLoad||s.css("background-image","url("+t.thumbnail+")"),this.settings.overlay&&(e=this.createOverlay(t));var r=n;return t.url&&(r=jQuery("<a>",{class:this.getItemClass(i.link),href:t.url}),n.html(r)),r.html(s),e&&r.append(e),n}},{key:"debounce",value:function(t,e){var i,n=this;return function(){for(var s=arguments.length,r=new Array(s),a=0;a<s;a++)r[a]=arguments[a];clearTimeout(i),i=setTimeout(function(){return t.apply(void 0,r)},e),n.timeouts.push(i)}}},{key:"buildGallery",value:function(){var t=this,e=this.settings.items;this.$items=jQuery(),e.forEach(function(e){var i=t.createItem(e);t.$items=t.$items.add(i),t.$container.append(i)})}},{key:"loadImages",value:function(){var t=this,e=[];this.settings.items.forEach(function(i,n){var s=new Image,r=new Promise(function(t){s.onload=t});e.push(r),r.then(function(){return t.calculateImageSize(s,n)}),s.src=i.thumbnail}),this.allImagesPromise=Promise.all(e)}},{key:"lazyLoadImages",value:function(){var t=this;if(!this.lazyLoadComplete){var e=this.getActiveItems(),i=this.getActiveItems(!0);e.each(function(e,n){var s=t.settings.items[i[e]];if(s.loading||!function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"top",i=t.getBoundingClientRect().top,n=t.offsetHeight,s=i+n;return("middle"===e?i+n/2:"bottom"===e?s:i)<=innerHeight&&s>=0}(n))return!0;s.loading=!0;var r=jQuery(n),a=new Image;return new Promise(function(t){a.onload=t}).then(function(){r.find(t.settings.selectors.image).css("background-image",'url("'+s.thumbnail+'")').addClass(t.getItemClass(t.settings.classes.imageLoaded)),t.loadedItemsCount++,t.loadedItemsCount===t.settings.items.length&&(t.lazyLoadComplete=!0)}),a.src=s.thumbnail,!0})}}},{key:"calculateImageSize",value:function(t,e){this.imagesData[e]={width:t.width,height:t.height,ratio:t.width/t.height}}},{key:"createImagesData",value:function(){var t=this;this.settings.items.forEach(function(e,i){return t.calculateImageSize(e,i)})}},{key:"makeGalleryFromContent",value:function(){var t=this.settings.selectors,e=this.settings.lazyLoad,i=[];this.$items=this.$container.find(t.items),this.$items.each(function(n,s){var r=jQuery(s).find(t.image);i[n]={thumbnail:r.data("thumbnail")},e?(i[n].width=r.data("width"),i[n].height=r.data("height")):r.css("background-image",'url("'.concat(r.data("thumbnail"),'")'))}),this.settings.items=i}},{key:"prepareGallery",value:function(){this.settings.items?this.buildGallery():this.makeGalleryFromContent(),this.imagesData=[],this.settings.lazyLoad?(this.loadedItemsCount=0,this.lazyLoadComplete=!1,this.createImagesData()):this.loadImages()}},{key:"runGallery",value:function(t){var e=this,i=this.$container[0].style;i.setProperty("--hgap",this.getCurrentDeviceSetting("horizontalGap")+"px"),i.setProperty("--vgap",this.getCurrentDeviceSetting("verticalGap")+"px"),i.setProperty("--animation-duration",this.settings.animationDuration+"ms"),this.$items.addClass(this.getItemClass(this.settings.classes.hidden)),this.getActiveItems().removeClass(this.getItemClass(this.settings.classes.hidden)),this.settings.lazyLoad&&setTimeout(function(){return e.lazyLoadImages()},300),this.run(t)}},{key:"setSettings",value:function(t,e){var i=this.getNestedObjectData(this.settings,t);i.object&&(i.object[i.key]=e,this.runGallery(!0))}},{key:"unbindEvents",value:function(){this.elements.$window.off("resize",this.runGallery)}},{key:"destroy",value:function(){this.unbindEvents(),this.$container.empty(),this.timeouts.forEach(function(t){return clearTimeout(t)})}}]),t}(),f=function(t){function e(){return s()(this,e),l()(this,c()(e).apply(this,arguments))}return y()(e,t),a()(e,[{key:"getDefaultSettings",value:function(){return{aspectRatio:"16:9"}}},{key:"setItemsPosition",value:function(){var t=this.getCurrentDeviceSetting("columns");this.getActiveItems().each(function(e,i){i.style.setProperty("--column",e%t),i.style.setProperty("--row",Math.floor(e/t))})}},{key:"setContainerSize",value:function(){var t=this.getCurrentDeviceSetting("columns"),e=Math.ceil(this.getActiveItems().length/t),i=this.$container[0].style;i.setProperty("--columns",t),i.setProperty("--rows",e);var n=this.getActiveItems().width(),s=this.settings.aspectRatio.split(":"),r=s[1]/s[0],a=(r*n*e+this.getCurrentDeviceSetting("horizontalGap")*(e-1))/this.$container.width()*100;i.setProperty("--aspect-ratio",100*r+"%"),i.setProperty("--container-aspect-ratio",a+"%")}},{key:"run",value:function(){var t=this,e=this.getItemClass(this.settings.classes.animated);this.$container.addClass(e),setTimeout(function(){t.setItemsPosition(),t.setContainerSize(),setTimeout(function(){return t.$container.removeClass(e)},t.settings.animationDuration)},50)}}]),e}(g),m=function(t){function e(){return s()(this,e),l()(this,c()(e).apply(this,arguments))}return y()(e,t),a()(e,[{key:"getDefaultSettings",value:function(){return{idealRowHeight:200,lastRow:"auto",breakpoints:{1024:{idealRowHeight:150},768:{idealRowHeight:100}}}}},{key:"run",value:function(){this.rowsHeights=[],this.rowsCount=0,this.containerWidth=this.$container.width(),this.makeJustifiedRow(0)}},{key:"makeJustifiedRow",value:function(t){for(var e=0,i=t;;i++){var n=this.getImageData(i),s=Math.round(this.getCurrentDeviceSetting("idealRowHeight")*n.ratio);s>this.containerWidth&&(s=this.containerWidth);var r=e+s;if(r>this.containerWidth)if(this.containerWidth-e<r-this.containerWidth){this.fitImagesInContainer(t,i,e),this.rowsCount++,this.makeJustifiedRow(i);break}var a=i===this.getActiveItems().length-1;if(n.computedWidth=s,a){var o=this.getCurrentDeviceSetting("lastRow");if("hide"!==o){var l="fit"===o||.7<=r/this.containerWidth?r:this.containerWidth;this.fitImagesInContainer(t,i+1,l)}this.inflateGalleryHeight();break}e=r}}},{key:"fitImagesInContainer",value:function(t,e,i){for(var n=e-t-1,s=this.getActiveItems(),r=0,a=t;a<e;a++){var o=this.getImageData(a),l=o.computedWidth/i,u=s.get(a),c=this.getItemClass(this.settings.classes.firstRowItem);if(u.style.setProperty("--item-width",l),u.style.setProperty("--gap-count",n),u.style.setProperty("--item-height",o.height/o.width*100+"%"),u.style.setProperty("--item-start",r),u.style.setProperty("--item-row-index",a-t),r+=l,a===t){u.classList.add(c);var h=l*(this.containerWidth-n*this.getCurrentDeviceSetting("horizontalGap"));this.rowsHeights.push(h/o.ratio)}else u.classList.remove(c)}}},{key:"inflateGalleryHeight",value:function(){var t=this.rowsHeights.reduce(function(t,e){return t+e})+this.rowsCount*this.getCurrentDeviceSetting("verticalGap"),e=t/this.containerWidth,i=this.rowsHeights.map(function(e){return e/t*100}),n=-1,s=0;this.getActiveItems().each(function(t,e){"0"===e.style.getPropertyValue("--item-row-index")&&++n&&(s+=i[n-1]),e.style.setProperty("--item-top",s+"%"),e.style.setProperty("--item-height",i[n]+"%"),e.style.setProperty("--row",n)}),this.$container[0].style.setProperty("--container-aspect-ratio",e)}}]),e}(g),d=function(t){function e(){return s()(this,e),l()(this,c()(e).apply(this,arguments))}return y()(e,t),a()(e,[{key:"run",value:function(t){var e=this,i=this.getCurrentBreakpoint();if(t||i!==this.currentBreakpoint){this.currentBreakpoint=i;for(var n=[],s=[],r=[],a=this.getCurrentDeviceSetting("columns"),o=this.$container.width(),l=(o-this.getCurrentDeviceSetting("horizontalGap")*(a-1))/a,u=this.getActiveItems(),c=0,h=0;h<a;h++)s[h]=0,n[h]=0;u.each(function(t,i){var o=e.getImageData(t),u=l/o.ratio,h=t%a;c=n[h],jQuery.each(n,function(t,e){e&&c>e+5&&(c=e,h=t)}),r[t]=n[h],n[h]+=u,i.style.setProperty("--item-height",o.height/o.width*100+"%"),i.style.setProperty("--column",h),i.style.setProperty("--items-in-column",s[h]),s[h]++});var y=Math.max.apply(Math,n),g=n.indexOf(y),f=s[g]-1,m=y/o;this.$container[0].style.setProperty("--columns",a),this.$container[0].style.setProperty("--highest-column-gap-count",f),this.$container.css("padding-bottom",100*m+"%"),u.each(function(t,e){var i=r[t]?r[t]/y*100:0;e.style.setProperty("--percent-height",i+"%")})}}}]),e}(g);i(8);i.d(e,"default",function(){return p});var p=function(){function t(e){s()(this,t),this.userSettings=e,this.initGalleriesTypes(),this.createGallery()}return a()(t,[{key:"getDefaultSettings",value:function(){return{container:null,items:null,type:"grid",tags:[],overlay:!1,overlayTemplate:'<div class="{{ classesPrefix }}{{ classes.overlayTitle }}">{{ title }}</div><div class="{{ classesPrefix }}{{ classes.overlayDescription }}">{{ description }}</div>',columns:5,horizontalGap:10,verticalGap:10,rtl:!1,animationDuration:350,lazyLoad:!1,classesPrefix:"e-gallery-",classes:{container:"container",item:"item",image:"image",overlay:"overlay",overlayTitle:"overlay__title",overlayDescription:"overlay__description",link:"link",firstRowItem:"first-row-item",animated:"-animated",hidden:"item--hidden",lazyLoad:"-lazyload",imageLoaded:"image-loaded"},selectors:{items:".e-gallery-item",image:".e-gallery-image"},breakpoints:{1024:{horizontalGap:5,verticalGap:5,columns:4},768:{horizontalGap:1,verticalGap:1,columns:2}}}}},{key:"initGalleriesTypes",value:function(){this.galleriesTypes={grid:f,justified:m,masonry:d}}},{key:"createGallery",value:function(){var t=jQuery.extend(this.getDefaultSettings(),this.userSettings),e=this.galleriesTypes[t.type];this.galleryHandler=new e(t)}},{key:"setSettings",value:function(t,e){this.galleryHandler.setSettings(t,e)}},{key:"destroy",value:function(){this.galleryHandler.destroy()}}]),t}()}]).default;assets/lib/e-gallery/js/e-gallery.js000064400000141360151327220410013332 0ustar00/*! E-Gallery v1.2.0 by Elementor */
var EGallery =
/******/ (function(modules) { // webpackBootstrap
/******/ 	// The module cache
/******/ 	var installedModules = {};
/******/
/******/ 	// The require function
/******/ 	function __webpack_require__(moduleId) {
/******/
/******/ 		// Check if module is in cache
/******/ 		if(installedModules[moduleId]) {
/******/ 			return installedModules[moduleId].exports;
/******/ 		}
/******/ 		// Create a new module (and put it into the cache)
/******/ 		var module = installedModules[moduleId] = {
/******/ 			i: moduleId,
/******/ 			l: false,
/******/ 			exports: {}
/******/ 		};
/******/
/******/ 		// Execute the module function
/******/ 		modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ 		// Flag the module as loaded
/******/ 		module.l = true;
/******/
/******/ 		// Return the exports of the module
/******/ 		return module.exports;
/******/ 	}
/******/
/******/
/******/ 	// expose the modules object (__webpack_modules__)
/******/ 	__webpack_require__.m = modules;
/******/
/******/ 	// expose the module cache
/******/ 	__webpack_require__.c = installedModules;
/******/
/******/ 	// define getter function for harmony exports
/******/ 	__webpack_require__.d = function(exports, name, getter) {
/******/ 		if(!__webpack_require__.o(exports, name)) {
/******/ 			Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ 		}
/******/ 	};
/******/
/******/ 	// define __esModule on exports
/******/ 	__webpack_require__.r = function(exports) {
/******/ 		if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ 			Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ 		}
/******/ 		Object.defineProperty(exports, '__esModule', { value: true });
/******/ 	};
/******/
/******/ 	// create a fake namespace object
/******/ 	// mode & 1: value is a module id, require it
/******/ 	// mode & 2: merge all properties of value into the ns
/******/ 	// mode & 4: return value when already ns object
/******/ 	// mode & 8|1: behave like require
/******/ 	__webpack_require__.t = function(value, mode) {
/******/ 		if(mode & 1) value = __webpack_require__(value);
/******/ 		if(mode & 8) return value;
/******/ 		if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ 		var ns = Object.create(null);
/******/ 		__webpack_require__.r(ns);
/******/ 		Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ 		if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ 		return ns;
/******/ 	};
/******/
/******/ 	// getDefaultExport function for compatibility with non-harmony modules
/******/ 	__webpack_require__.n = function(module) {
/******/ 		var getter = module && module.__esModule ?
/******/ 			function getDefault() { return module['default']; } :
/******/ 			function getModuleExports() { return module; };
/******/ 		__webpack_require__.d(getter, 'a', getter);
/******/ 		return getter;
/******/ 	};
/******/
/******/ 	// Object.prototype.hasOwnProperty.call
/******/ 	__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ 	// __webpack_public_path__
/******/ 	__webpack_require__.p = "";
/******/
/******/
/******/ 	// Load entry module and return exports
/******/ 	return __webpack_require__(__webpack_require__.s = "./src/js/e-gallery.js");
/******/ })
/************************************************************************/
/******/ ({

/***/ "./node_modules/@babel/runtime/helpers/assertThisInitialized.js":
/*!**********************************************************************!*\
  !*** ./node_modules/@babel/runtime/helpers/assertThisInitialized.js ***!
  \**********************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

function _assertThisInitialized(self) {
  if (self === void 0) {
    throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
  }

  return self;
}

module.exports = _assertThisInitialized;

/***/ }),

/***/ "./node_modules/@babel/runtime/helpers/classCallCheck.js":
/*!***************************************************************!*\
  !*** ./node_modules/@babel/runtime/helpers/classCallCheck.js ***!
  \***************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

function _classCallCheck(instance, Constructor) {
  if (!(instance instanceof Constructor)) {
    throw new TypeError("Cannot call a class as a function");
  }
}

module.exports = _classCallCheck;

/***/ }),

/***/ "./node_modules/@babel/runtime/helpers/createClass.js":
/*!************************************************************!*\
  !*** ./node_modules/@babel/runtime/helpers/createClass.js ***!
  \************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

function _defineProperties(target, props) {
  for (var i = 0; i < props.length; i++) {
    var descriptor = props[i];
    descriptor.enumerable = descriptor.enumerable || false;
    descriptor.configurable = true;
    if ("value" in descriptor) descriptor.writable = true;
    Object.defineProperty(target, descriptor.key, descriptor);
  }
}

function _createClass(Constructor, protoProps, staticProps) {
  if (protoProps) _defineProperties(Constructor.prototype, protoProps);
  if (staticProps) _defineProperties(Constructor, staticProps);
  return Constructor;
}

module.exports = _createClass;

/***/ }),

/***/ "./node_modules/@babel/runtime/helpers/getPrototypeOf.js":
/*!***************************************************************!*\
  !*** ./node_modules/@babel/runtime/helpers/getPrototypeOf.js ***!
  \***************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

function _getPrototypeOf(o) {
  module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
    return o.__proto__ || Object.getPrototypeOf(o);
  };
  return _getPrototypeOf(o);
}

module.exports = _getPrototypeOf;

/***/ }),

/***/ "./node_modules/@babel/runtime/helpers/inherits.js":
/*!*********************************************************!*\
  !*** ./node_modules/@babel/runtime/helpers/inherits.js ***!
  \*********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf */ "./node_modules/@babel/runtime/helpers/setPrototypeOf.js");

function _inherits(subClass, superClass) {
  if (typeof superClass !== "function" && superClass !== null) {
    throw new TypeError("Super expression must either be null or a function");
  }

  subClass.prototype = Object.create(superClass && superClass.prototype, {
    constructor: {
      value: subClass,
      writable: true,
      configurable: true
    }
  });
  if (superClass) setPrototypeOf(subClass, superClass);
}

module.exports = _inherits;

/***/ }),

/***/ "./node_modules/@babel/runtime/helpers/possibleConstructorReturn.js":
/*!**************************************************************************!*\
  !*** ./node_modules/@babel/runtime/helpers/possibleConstructorReturn.js ***!
  \**************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var _typeof = __webpack_require__(/*! ../helpers/typeof */ "./node_modules/@babel/runtime/helpers/typeof.js");

var assertThisInitialized = __webpack_require__(/*! ./assertThisInitialized */ "./node_modules/@babel/runtime/helpers/assertThisInitialized.js");

function _possibleConstructorReturn(self, call) {
  if (call && (_typeof(call) === "object" || typeof call === "function")) {
    return call;
  }

  return assertThisInitialized(self);
}

module.exports = _possibleConstructorReturn;

/***/ }),

/***/ "./node_modules/@babel/runtime/helpers/setPrototypeOf.js":
/*!***************************************************************!*\
  !*** ./node_modules/@babel/runtime/helpers/setPrototypeOf.js ***!
  \***************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

function _setPrototypeOf(o, p) {
  module.exports = _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
    o.__proto__ = p;
    return o;
  };

  return _setPrototypeOf(o, p);
}

module.exports = _setPrototypeOf;

/***/ }),

/***/ "./node_modules/@babel/runtime/helpers/typeof.js":
/*!*******************************************************!*\
  !*** ./node_modules/@babel/runtime/helpers/typeof.js ***!
  \*******************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

function _typeof3(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof3 = function _typeof3(obj) { return typeof obj; }; } else { _typeof3 = function _typeof3(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof3(obj); }

function _typeof2(obj) {
  if (typeof Symbol === "function" && _typeof3(Symbol.iterator) === "symbol") {
    _typeof2 = function _typeof2(obj) {
      return _typeof3(obj);
    };
  } else {
    _typeof2 = function _typeof2(obj) {
      return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : _typeof3(obj);
    };
  }

  return _typeof2(obj);
}

function _typeof(obj) {
  if (typeof Symbol === "function" && _typeof2(Symbol.iterator) === "symbol") {
    module.exports = _typeof = function _typeof(obj) {
      return _typeof2(obj);
    };
  } else {
    module.exports = _typeof = function _typeof(obj) {
      return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : _typeof2(obj);
    };
  }

  return _typeof(obj);
}

module.exports = _typeof;

/***/ }),

/***/ "./src/js/e-gallery.js":
/*!*****************************!*\
  !*** ./src/js/e-gallery.js ***!
  \*****************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return EGallery; });
/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/classCallCheck.js");
/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/createClass.js");
/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _types_grid__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./types/grid */ "./src/js/types/grid.js");
/* harmony import */ var _types_justified__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./types/justified */ "./src/js/types/justified.js");
/* harmony import */ var _types_masonry__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./types/masonry */ "./src/js/types/masonry.js");
/* harmony import */ var _scss_e_gallery_scss__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../scss/e-gallery.scss */ "./src/scss/e-gallery.scss");
/* harmony import */ var _scss_e_gallery_scss__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_scss_e_gallery_scss__WEBPACK_IMPORTED_MODULE_5__);







var EGallery =
/*#__PURE__*/
function () {
  function EGallery(userSettings) {
    _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, EGallery);

    this.userSettings = userSettings;
    this.initGalleriesTypes();
    this.createGallery();
  }

  _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(EGallery, [{
    key: "getDefaultSettings",
    value: function getDefaultSettings() {
      return {
        container: null,
        items: null,
        type: 'grid',
        tags: [],
        overlay: false,
        overlayTemplate: '<div class="{{ classesPrefix }}{{ classes.overlayTitle }}">{{ title }}</div><div class="{{ classesPrefix }}{{ classes.overlayDescription }}">{{ description }}</div>',
        columns: 5,
        horizontalGap: 10,
        verticalGap: 10,
        rtl: false,
        animationDuration: 350,
        lazyLoad: false,
        classesPrefix: 'e-gallery-',
        classes: {
          container: 'container',
          item: 'item',
          image: 'image',
          overlay: 'overlay',
          overlayTitle: 'overlay__title',
          overlayDescription: 'overlay__description',
          link: 'link',
          firstRowItem: 'first-row-item',
          animated: '-animated',
          hidden: 'item--hidden',
          lazyLoad: '-lazyload',
          imageLoaded: 'image-loaded'
        },
        selectors: {
          items: '.e-gallery-item',
          image: '.e-gallery-image'
        },
        breakpoints: {
          1024: {
            horizontalGap: 5,
            verticalGap: 5,
            columns: 4
          },
          768: {
            horizontalGap: 1,
            verticalGap: 1,
            columns: 2
          }
        }
      };
    }
  }, {
    key: "initGalleriesTypes",
    value: function initGalleriesTypes() {
      this.galleriesTypes = {
        grid: _types_grid__WEBPACK_IMPORTED_MODULE_2__["default"],
        justified: _types_justified__WEBPACK_IMPORTED_MODULE_3__["default"],
        masonry: _types_masonry__WEBPACK_IMPORTED_MODULE_4__["default"]
      };
    }
  }, {
    key: "createGallery",
    value: function createGallery() {
      var settings = jQuery.extend(this.getDefaultSettings(), this.userSettings);
      var GalleryHandlerType = this.galleriesTypes[settings.type];
      this.galleryHandler = new GalleryHandlerType(settings);
    }
  }, {
    key: "setSettings",
    value: function setSettings(key, value) {
      this.galleryHandler.setSettings(key, value);
    }
  }, {
    key: "destroy",
    value: function destroy() {
      this.galleryHandler.destroy();
    }
  }]);

  return EGallery;
}();



/***/ }),

/***/ "./src/js/types/base.js":
/*!******************************!*\
  !*** ./src/js/types/base.js ***!
  \******************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return BaseGalleryType; });
/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/classCallCheck.js");
/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/createClass.js");
/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils */ "./src/js/utils/index.js");




var BaseGalleryType =
/*#__PURE__*/
function () {
  function BaseGalleryType(settings) {
    var _this = this;

    _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, BaseGalleryType);

    this.settings = jQuery.extend(true, this.getDefaultSettings(), settings);
    this.$container = jQuery(this.settings.container);
    this.timeouts = [];
    this.initElements();
    this.prepareGallery();
    var oldRunGallery = this.runGallery.bind(this);
    this.runGallery = this.debounce(function () {
      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
        args[_key] = arguments[_key];
      }

      if (_this.settings.lazyLoad) {
        oldRunGallery.apply(void 0, args);
      } else {
        _this.allImagesPromise.then(function () {
          return oldRunGallery.apply(void 0, args);
        });
      }
    }, 300);

    if (this.settings.lazyLoad) {
      this.handleScroll = this.debounce(function () {
        return _this.lazyLoadImages();
      }, 16);
    }

    this.bindEvents();
    this.runGallery();
  }

  _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(BaseGalleryType, [{
    key: "getDefaultSettings",
    value: function getDefaultSettings() {
      return {};
    }
  }, {
    key: "getItemClass",
    value: function getItemClass(className) {
      return this.settings.classesPrefix + className;
    }
  }, {
    key: "initElements",
    value: function initElements() {
      this.elements = {
        $window: jQuery(window)
      };
      var directionClass = '-' + (this.settings.rtl ? 'rtl' : 'ltr');
      var containerClasses = this.getItemClass(this.settings.classes.container) + ' ' + this.getItemClass(this.settings.type) + ' ' + this.getItemClass(directionClass);

      if (this.settings.lazyLoad) {
        containerClasses += ' ' + this.getItemClass(this.settings.classes.lazyLoad);
      }

      this.$container.addClass(containerClasses);
    }
  }, {
    key: "bindEvents",
    value: function bindEvents() {
      this.elements.$window.on('resize', this.runGallery);

      if (this.settings.lazyLoad) {
        this.elements.$window.on('scroll', this.handleScroll);
      }
    }
  }, {
    key: "getNestedObjectData",
    value: function getNestedObjectData(object, key) {
      var keyStack = key.split('.'),
          currentKey = keyStack.splice(0, 1);

      if (!keyStack.length) {
        return {
          object: object,
          key: key
        };
      }

      return this.getNestedObjectData(object[currentKey], keyStack.join('.'));
    }
  }, {
    key: "getTemplateArgs",
    value: function getTemplateArgs(args, key) {
      var nestedObjectData = this.getNestedObjectData(args, key);
      return nestedObjectData.object[nestedObjectData.key] || '';
    }
  }, {
    key: "getCurrentBreakpoint",
    value: function getCurrentBreakpoint() {
      var breakpoints = Object.keys(this.settings.breakpoints).map(Number).sort(function (a, b) {
        return a - b;
      });
      var currentBreakpoint = 0;
      breakpoints.some(function (breakpoint) {
        if (innerWidth < breakpoint) {
          currentBreakpoint = breakpoint;
          return true;
        }

        return false;
      });
      return currentBreakpoint;
    }
  }, {
    key: "getCurrentDeviceSetting",
    value: function getCurrentDeviceSetting(settingKey) {
      var currentBreakpoint = this.getCurrentBreakpoint();

      if (currentBreakpoint) {
        return this.settings.breakpoints[currentBreakpoint][settingKey];
      }

      return this.settings[settingKey];
    }
  }, {
    key: "getActiveItems",
    value: function getActiveItems() {
      var returnIndexes = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
      var activeTags = this.settings.tags,
          activeIndexes = [];

      if (!activeTags.length) {
        if (returnIndexes) {
          this.$items.each(function (index) {
            activeIndexes.push(index);
          });
          return activeIndexes;
        }

        return this.$items;
      }

      var filteredItems = this.$items.filter(function (index, item) {
        var itemTags = item.dataset.eGalleryTags;

        if (!itemTags) {
          return false;
        }

        itemTags = itemTags.split(/[ ,]+/);

        if (activeTags.some(function (tag) {
          return itemTags.includes(tag);
        })) {
          if (returnIndexes) {
            activeIndexes.push(index);
          }

          return true;
        }

        return false;
      });

      if (returnIndexes) {
        return activeIndexes;
      }

      return filteredItems;
    }
  }, {
    key: "getImageData",
    value: function getImageData(index) {
      if (this.settings.tags.length) {
        index = this.getActiveItems(true)[index];
      }

      return this.imagesData[index];
    }
  }, {
    key: "compileTemplate",
    value: function compileTemplate(template, args) {
      var _this2 = this;

      return template.replace(/{{([^}]+)}}/g, function (match, placeholder) {
        return _this2.getTemplateArgs(args, placeholder.trim());
      });
    }
  }, {
    key: "createOverlay",
    value: function createOverlay(overlayData) {
      var _this$settings = this.settings,
          classes = _this$settings.classes,
          overlayTemplate = _this$settings.overlayTemplate,
          $overlay = jQuery('<div>', {
        "class": this.getItemClass(classes.overlay)
      }),
          overlayContent = this.compileTemplate(overlayTemplate, jQuery.extend(true, this.settings, overlayData));
      $overlay.html(overlayContent);
      return $overlay;
    }
  }, {
    key: "createItem",
    value: function createItem(itemData) {
      var classes = this.settings.classes,
          $item = jQuery('<div>', {
        "class": this.getItemClass(classes.item),
        'data-e-gallery-tags': itemData.tags
      }),
          $image = jQuery('<div>', {
        "class": this.getItemClass(classes.image)
      });
      var $overlay;

      if (!this.settings.lazyLoad) {
        $image.css('background-image', 'url(' + itemData.thumbnail + ')');
      }

      if (this.settings.overlay) {
        $overlay = this.createOverlay(itemData);
      }

      var $contentWrapper = $item;

      if (itemData.url) {
        $contentWrapper = jQuery('<a>', {
          "class": this.getItemClass(classes.link),
          href: itemData.url
        });
        $item.html($contentWrapper);
      }

      $contentWrapper.html($image);

      if ($overlay) {
        $contentWrapper.append($overlay);
      }

      return $item;
    }
  }, {
    key: "debounce",
    value: function debounce(func, wait) {
      var _this3 = this;

      var timeout;
      return function () {
        for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
          args[_key2] = arguments[_key2];
        }

        clearTimeout(timeout);
        timeout = setTimeout(function () {
          return func.apply(void 0, args);
        }, wait);

        _this3.timeouts.push(timeout);
      };
    }
  }, {
    key: "buildGallery",
    value: function buildGallery() {
      var _this4 = this;

      var items = this.settings.items;
      this.$items = jQuery();
      items.forEach(function (item) {
        var $item = _this4.createItem(item);

        _this4.$items = _this4.$items.add($item);

        _this4.$container.append($item);
      });
    }
  }, {
    key: "loadImages",
    value: function loadImages() {
      var _this5 = this;

      var allPromises = [];
      this.settings.items.forEach(function (item, index) {
        var image = new Image(),
            promise = new Promise(function (resolve) {
          image.onload = resolve;
        });
        allPromises.push(promise);
        promise.then(function () {
          return _this5.calculateImageSize(image, index);
        });
        image.src = item.thumbnail;
      });
      this.allImagesPromise = Promise.all(allPromises);
    }
  }, {
    key: "lazyLoadImages",
    value: function lazyLoadImages() {
      var _this6 = this;

      if (this.lazyLoadComplete) {
        return;
      }

      var $items = this.getActiveItems(),
          itemsIndexes = this.getActiveItems(true);
      $items.each(function (index, item) {
        var itemData = _this6.settings.items[itemsIndexes[index]];

        if (itemData.loading || !Object(_utils__WEBPACK_IMPORTED_MODULE_2__["elementInView"])(item)) {
          return true;
        }

        itemData.loading = true;
        var $item = jQuery(item),
            image = new Image(),
            promise = new Promise(function (resolve) {
          image.onload = resolve;
        });
        promise.then(function () {
          $item.find(_this6.settings.selectors.image).css('background-image', 'url("' + itemData.thumbnail + '")').addClass(_this6.getItemClass(_this6.settings.classes.imageLoaded));
          _this6.loadedItemsCount++;

          if (_this6.loadedItemsCount === _this6.settings.items.length) {
            _this6.lazyLoadComplete = true;
          }
        });
        image.src = itemData.thumbnail;
        return true;
      });
    }
  }, {
    key: "calculateImageSize",
    value: function calculateImageSize(image, index) {
      this.imagesData[index] = {
        width: image.width,
        height: image.height,
        ratio: image.width / image.height
      };
    }
  }, {
    key: "createImagesData",
    value: function createImagesData() {
      var _this7 = this;

      this.settings.items.forEach(function (item, index) {
        return _this7.calculateImageSize(item, index);
      });
    }
  }, {
    key: "makeGalleryFromContent",
    value: function makeGalleryFromContent() {
      var selectors = this.settings.selectors,
          isLazyLoad = this.settings.lazyLoad,
          items = [];
      this.$items = this.$container.find(selectors.items);
      this.$items.each(function (index, item) {
        var $image = jQuery(item).find(selectors.image);
        items[index] = {
          thumbnail: $image.data('thumbnail')
        };

        if (isLazyLoad) {
          items[index].width = $image.data('width');
          items[index].height = $image.data('height');
        } else {
          $image.css('background-image', "url(\"".concat($image.data('thumbnail'), "\")"));
        }
      });
      this.settings.items = items;
    }
  }, {
    key: "prepareGallery",
    value: function prepareGallery() {
      if (this.settings.items) {
        this.buildGallery();
      } else {
        this.makeGalleryFromContent();
      }

      this.imagesData = [];

      if (this.settings.lazyLoad) {
        this.loadedItemsCount = 0;
        this.lazyLoadComplete = false;
        this.createImagesData();
      } else {
        this.loadImages();
      }
    }
  }, {
    key: "runGallery",
    value: function runGallery(refresh) {
      var _this8 = this;

      var containerStyle = this.$container[0].style;
      containerStyle.setProperty('--hgap', this.getCurrentDeviceSetting('horizontalGap') + 'px');
      containerStyle.setProperty('--vgap', this.getCurrentDeviceSetting('verticalGap') + 'px');
      containerStyle.setProperty('--animation-duration', this.settings.animationDuration + 'ms');
      this.$items.addClass(this.getItemClass(this.settings.classes.hidden));
      this.getActiveItems().removeClass(this.getItemClass(this.settings.classes.hidden));

      if (this.settings.lazyLoad) {
        setTimeout(function () {
          return _this8.lazyLoadImages();
        }, 300);
      }

      this.run(refresh);
    }
  }, {
    key: "setSettings",
    value: function setSettings(key, value) {
      var nestedObjectData = this.getNestedObjectData(this.settings, key);

      if (nestedObjectData.object) {
        nestedObjectData.object[nestedObjectData.key] = value;
        this.runGallery(true);
      }
    }
  }, {
    key: "unbindEvents",
    value: function unbindEvents() {
      this.elements.$window.off('resize', this.runGallery);
    }
  }, {
    key: "destroy",
    value: function destroy() {
      this.unbindEvents();
      this.$container.empty();
      this.timeouts.forEach(function (timeout) {
        return clearTimeout(timeout);
      });
    }
  }]);

  return BaseGalleryType;
}();



/***/ }),

/***/ "./src/js/types/grid.js":
/*!******************************!*\
  !*** ./src/js/types/grid.js ***!
  \******************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return Grid; });
/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/classCallCheck.js");
/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/createClass.js");
/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/possibleConstructorReturn.js");
/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "./node_modules/@babel/runtime/helpers/getPrototypeOf.js");
/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "./node_modules/@babel/runtime/helpers/inherits.js");
/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _base__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./base */ "./src/js/types/base.js");







var Grid =
/*#__PURE__*/
function (_BaseGalleryType) {
  _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default()(Grid, _BaseGalleryType);

  function Grid() {
    _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, Grid);

    return _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default()(Grid).apply(this, arguments));
  }

  _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(Grid, [{
    key: "getDefaultSettings",
    value: function getDefaultSettings() {
      return {
        aspectRatio: '16:9'
      };
    }
  }, {
    key: "setItemsPosition",
    value: function setItemsPosition() {
      var columns = this.getCurrentDeviceSetting('columns');
      this.getActiveItems().each(function (index, item) {
        item.style.setProperty('--column', index % columns);
        item.style.setProperty('--row', Math.floor(index / columns));
      });
    }
  }, {
    key: "setContainerSize",
    value: function setContainerSize() {
      var columns = this.getCurrentDeviceSetting('columns'),
          rows = Math.ceil(this.getActiveItems().length / columns),
          containerStyle = this.$container[0].style;
      containerStyle.setProperty('--columns', columns);
      containerStyle.setProperty('--rows', rows);
      var itemWidth = this.getActiveItems().width(),
          aspectRatio = this.settings.aspectRatio.split(':'),
          aspectRatioPercents = aspectRatio[1] / aspectRatio[0],
          itemHeight = aspectRatioPercents * itemWidth,
          totalHeight = itemHeight * rows + this.getCurrentDeviceSetting('horizontalGap') * (rows - 1),
          calculatedAspectRatio = totalHeight / this.$container.width() * 100;
      containerStyle.setProperty('--aspect-ratio', aspectRatioPercents * 100 + '%');
      containerStyle.setProperty('--container-aspect-ratio', calculatedAspectRatio + '%');
    }
  }, {
    key: "run",
    value: function run() {
      var _this = this;

      var animatedClass = this.getItemClass(this.settings.classes.animated);
      this.$container.addClass(animatedClass);
      setTimeout(function () {
        _this.setItemsPosition();

        _this.setContainerSize();

        setTimeout(function () {
          return _this.$container.removeClass(animatedClass);
        }, _this.settings.animationDuration);
      }, 50);
    }
  }]);

  return Grid;
}(_base__WEBPACK_IMPORTED_MODULE_5__["default"]);



/***/ }),

/***/ "./src/js/types/justified.js":
/*!***********************************!*\
  !*** ./src/js/types/justified.js ***!
  \***********************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return Justified; });
/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/classCallCheck.js");
/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/createClass.js");
/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/possibleConstructorReturn.js");
/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "./node_modules/@babel/runtime/helpers/getPrototypeOf.js");
/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "./node_modules/@babel/runtime/helpers/inherits.js");
/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _base__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./base */ "./src/js/types/base.js");







var Justified =
/*#__PURE__*/
function (_BaseGalleryType) {
  _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default()(Justified, _BaseGalleryType);

  function Justified() {
    _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, Justified);

    return _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default()(Justified).apply(this, arguments));
  }

  _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(Justified, [{
    key: "getDefaultSettings",
    value: function getDefaultSettings() {
      return {
        idealRowHeight: 200,
        lastRow: 'auto',
        breakpoints: {
          1024: {
            idealRowHeight: 150
          },
          768: {
            idealRowHeight: 100
          }
        }
      };
    }
  }, {
    key: "run",
    value: function run() {
      this.rowsHeights = [];
      this.rowsCount = 0;
      this.containerWidth = this.$container.width();
      this.makeJustifiedRow(0);
    }
  }, {
    key: "makeJustifiedRow",
    value: function makeJustifiedRow(startIndex) {
      var oldRowWidth = 0;

      for (var index = startIndex;; index++) {
        var imageData = this.getImageData(index);
        var itemComputedWidth = Math.round(this.getCurrentDeviceSetting('idealRowHeight') * imageData.ratio);

        if (itemComputedWidth > this.containerWidth) {
          itemComputedWidth = this.containerWidth;
        }

        var newRowWidth = oldRowWidth + itemComputedWidth;

        if (newRowWidth > this.containerWidth) {
          var oldDiff = this.containerWidth - oldRowWidth,
              newDiff = newRowWidth - this.containerWidth;

          if (oldDiff < newDiff) {
            this.fitImagesInContainer(startIndex, index, oldRowWidth);
            this.rowsCount++;
            this.makeJustifiedRow(index);
            break;
          }
        }

        var isLastItem = index === this.getActiveItems().length - 1;
        imageData.computedWidth = itemComputedWidth;

        if (isLastItem) {
          var lastRowMode = this.getCurrentDeviceSetting('lastRow');

          if ('hide' !== lastRowMode) {
            var totalRowWidth = 'fit' === lastRowMode || 0.7 <= newRowWidth / this.containerWidth ? newRowWidth : this.containerWidth;
            this.fitImagesInContainer(startIndex, index + 1, totalRowWidth);
          }

          this.inflateGalleryHeight();
          break;
        }

        oldRowWidth = newRowWidth;
      }
    }
  }, {
    key: "fitImagesInContainer",
    value: function fitImagesInContainer(startIndex, endIndex, rowWidth) {
      var gapCount = endIndex - startIndex - 1,
          $items = this.getActiveItems();
      var aggregatedWidth = 0;

      for (var index = startIndex; index < endIndex; index++) {
        var imageData = this.getImageData(index),
            percentWidth = imageData.computedWidth / rowWidth,
            item = $items.get(index),
            firstRowItemClass = this.getItemClass(this.settings.classes.firstRowItem);
        item.style.setProperty('--item-width', percentWidth);
        item.style.setProperty('--gap-count', gapCount);
        item.style.setProperty('--item-height', imageData.height / imageData.width * 100 + '%');
        item.style.setProperty('--item-start', aggregatedWidth);
        item.style.setProperty('--item-row-index', index - startIndex);
        aggregatedWidth += percentWidth;

        if (index === startIndex) {
          item.classList.add(firstRowItemClass);
          var imagePxWidth = percentWidth * (this.containerWidth - gapCount * this.getCurrentDeviceSetting('horizontalGap'));
          this.rowsHeights.push(imagePxWidth / imageData.ratio);
        } else {
          item.classList.remove(firstRowItemClass);
        }
      }
    }
  }, {
    key: "inflateGalleryHeight",
    value: function inflateGalleryHeight() {
      var totalRowsHeight = this.rowsHeights.reduce(function (total, item) {
        return total + item;
      }),
          finalContainerHeight = totalRowsHeight + this.rowsCount * this.getCurrentDeviceSetting('verticalGap'),
          containerAspectRatio = finalContainerHeight / this.containerWidth,
          percentRowsHeights = this.rowsHeights.map(function (rowHeight) {
        return rowHeight / finalContainerHeight * 100;
      });
      var currentRow = -1,
          accumulatedTop = 0;
      this.getActiveItems().each(function (index, item) {
        var itemRowIndex = item.style.getPropertyValue('--item-row-index'),
            isFirstItem = '0' === itemRowIndex;

        if (isFirstItem) {
          currentRow++;

          if (currentRow) {
            accumulatedTop += percentRowsHeights[currentRow - 1];
          }
        }

        item.style.setProperty('--item-top', accumulatedTop + '%');
        item.style.setProperty('--item-height', percentRowsHeights[currentRow] + '%');
        item.style.setProperty('--row', currentRow);
      });
      this.$container[0].style.setProperty('--container-aspect-ratio', containerAspectRatio);
    }
  }]);

  return Justified;
}(_base__WEBPACK_IMPORTED_MODULE_5__["default"]);



/***/ }),

/***/ "./src/js/types/masonry.js":
/*!*********************************!*\
  !*** ./src/js/types/masonry.js ***!
  \*********************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return Masonry; });
/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/classCallCheck.js");
/* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/createClass.js");
/* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "./node_modules/@babel/runtime/helpers/possibleConstructorReturn.js");
/* harmony import */ var _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "./node_modules/@babel/runtime/helpers/getPrototypeOf.js");
/* harmony import */ var _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @babel/runtime/helpers/inherits */ "./node_modules/@babel/runtime/helpers/inherits.js");
/* harmony import */ var _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _base__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./base */ "./src/js/types/base.js");







var Masonry =
/*#__PURE__*/
function (_BaseGalleryType) {
  _babel_runtime_helpers_inherits__WEBPACK_IMPORTED_MODULE_4___default()(Masonry, _BaseGalleryType);

  function Masonry() {
    _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0___default()(this, Masonry);

    return _babel_runtime_helpers_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2___default()(this, _babel_runtime_helpers_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3___default()(Masonry).apply(this, arguments));
  }

  _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1___default()(Masonry, [{
    key: "run",
    value: function run(refresh) {
      var _this = this;

      var currentBreakpoint = this.getCurrentBreakpoint();

      if (!refresh && currentBreakpoint === this.currentBreakpoint) {
        return;
      }

      this.currentBreakpoint = currentBreakpoint;
      var heights = [],
          itemsInColumn = [],
          aggregatedHeights = [],
          columns = this.getCurrentDeviceSetting('columns'),
          containerWidth = this.$container.width(),
          horizontalGap = this.getCurrentDeviceSetting('horizontalGap'),
          itemWidth = (containerWidth - horizontalGap * (columns - 1)) / columns,
          $items = this.getActiveItems();
      var naturalColumnHeight = 0;

      for (var i = 0; i < columns; i++) {
        itemsInColumn[i] = 0;
        heights[i] = 0;
      }

      $items.each(function (index, item) {
        var imageData = _this.getImageData(index),
            itemHeight = itemWidth / imageData.ratio;

        var indexAtRow = index % columns;
        naturalColumnHeight = heights[indexAtRow];
        jQuery.each(heights, function (colNumber, currentColHeight) {
          if (currentColHeight && naturalColumnHeight > currentColHeight + 5) {
            naturalColumnHeight = currentColHeight;
            indexAtRow = colNumber;
          }
        });
        aggregatedHeights[index] = heights[indexAtRow];
        heights[indexAtRow] += itemHeight;
        item.style.setProperty('--item-height', imageData.height / imageData.width * 100 + '%');
        item.style.setProperty('--column', indexAtRow);
        item.style.setProperty('--items-in-column', itemsInColumn[indexAtRow]);
        itemsInColumn[indexAtRow]++;
      });
      var highestColumn = Math.max.apply(Math, heights),
          highestColumnIndex = heights.indexOf(highestColumn),
          rows = itemsInColumn[highestColumnIndex],
          highestColumnsGapsCount = rows - 1,
          containerAspectRatio = highestColumn / containerWidth;
      this.$container[0].style.setProperty('--columns', columns);
      this.$container[0].style.setProperty('--highest-column-gap-count', highestColumnsGapsCount);
      this.$container.css('padding-bottom', containerAspectRatio * 100 + '%');
      $items.each(function (index, item) {
        var percentHeight = aggregatedHeights[index] ? aggregatedHeights[index] / highestColumn * 100 : 0;
        item.style.setProperty('--percent-height', percentHeight + '%');
      });
    }
  }]);

  return Masonry;
}(_base__WEBPACK_IMPORTED_MODULE_5__["default"]);



/***/ }),

/***/ "./src/js/utils/element-in-view.js":
/*!*****************************************!*\
  !*** ./src/js/utils/element-in-view.js ***!
  \*****************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return elementInView; });
function elementInView(element) {
  var elementPart = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'top';
  var elementTop = element.getBoundingClientRect().top,
      elementHeight = element.offsetHeight,
      elementBottom = elementTop + elementHeight;
  var elementPosition;

  if ('middle' === elementPart) {
    elementPosition = elementTop + elementHeight / 2;
  } else if ('bottom' === elementPart) {
    elementPosition = elementBottom;
  } else {
    elementPosition = elementTop;
  }

  return elementPosition <= innerHeight && elementBottom >= 0;
}

/***/ }),

/***/ "./src/js/utils/index.js":
/*!*******************************!*\
  !*** ./src/js/utils/index.js ***!
  \*******************************/
/*! exports provided: elementInView */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _element_in_view__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./element-in-view */ "./src/js/utils/element-in-view.js");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "elementInView", function() { return _element_in_view__WEBPACK_IMPORTED_MODULE_0__["default"]; });



/***/ }),

/***/ "./src/scss/e-gallery.scss":
/*!*********************************!*\
  !*** ./src/scss/e-gallery.scss ***!
  \*********************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

// extracted by mini-css-extract-plugin

/***/ })

/******/ })["default"];
//# sourceMappingURL=e-gallery.js.mapassets/lib/jquery-easing/jquery-easing.min.js000064400000006363151327220410015307 0ustar00!function($){$.easing.jswing=$.easing.swing,$.extend($.easing,{def:"easeOutQuad",swing:function(x,t,b,c,d){return $.easing[$.easing.def](x,t,b,c,d)},easeInQuad:function(x,t,b,c,d){return c*(t/=d)*t+b},easeOutQuad:function(x,t,b,c,d){return-c*(t/=d)*(t-2)+b},easeInOutQuad:function(x,t,b,c,d){return(t/=d/2)<1?c/2*t*t+b:-c/2*(--t*(t-2)-1)+b},easeInCubic:function(x,t,b,c,d){return c*(t/=d)*t*t+b},easeOutCubic:function(x,t,b,c,d){return c*((t=t/d-1)*t*t+1)+b},easeInOutCubic:function(x,t,b,c,d){return(t/=d/2)<1?c/2*t*t*t+b:c/2*((t-=2)*t*t+2)+b},easeInQuart:function(x,t,b,c,d){return c*(t/=d)*t*t*t+b},easeOutQuart:function(x,t,b,c,d){return-c*((t=t/d-1)*t*t*t-1)+b},easeInOutQuart:function(x,t,b,c,d){return(t/=d/2)<1?c/2*t*t*t*t+b:-c/2*((t-=2)*t*t*t-2)+b},easeInQuint:function(x,t,b,c,d){return c*(t/=d)*t*t*t*t+b},easeOutQuint:function(x,t,b,c,d){return c*((t=t/d-1)*t*t*t*t+1)+b},easeInOutQuint:function(x,t,b,c,d){return(t/=d/2)<1?c/2*t*t*t*t*t+b:c/2*((t-=2)*t*t*t*t+2)+b},easeInSine:function(x,t,b,c,d){return-c*Math.cos(t/d*(Math.PI/2))+c+b},easeOutSine:function(x,t,b,c,d){return c*Math.sin(t/d*(Math.PI/2))+b},easeInOutSine:function(x,t,b,c,d){return-c/2*(Math.cos(Math.PI*t/d)-1)+b},easeInExpo:function(x,t,b,c,d){return 0==t?b:c*Math.pow(2,10*(t/d-1))+b},easeOutExpo:function(x,t,b,c,d){return t==d?b+c:c*(-Math.pow(2,-10*t/d)+1)+b},easeInOutExpo:function(x,t,b,c,d){return 0==t?b:t==d?b+c:(t/=d/2)<1?c/2*Math.pow(2,10*(t-1))+b:c/2*(-Math.pow(2,-10*--t)+2)+b},easeInCirc:function(x,t,b,c,d){return-c*(Math.sqrt(1-(t/=d)*t)-1)+b},easeOutCirc:function(x,t,b,c,d){return c*Math.sqrt(1-(t=t/d-1)*t)+b},easeInOutCirc:function(x,t,b,c,d){return(t/=d/2)<1?-c/2*(Math.sqrt(1-t*t)-1)+b:c/2*(Math.sqrt(1-(t-=2)*t)+1)+b},easeInElastic:function(x,t,b,c,d){var s=1.70158,p=0,a=c;if(0==t)return b;if(1==(t/=d))return b+c;if(p||(p=.3*d),a<Math.abs(c)){a=c;var s=p/4}else var s=p/(2*Math.PI)*Math.asin(c/a);return-(a*Math.pow(2,10*(t-=1))*Math.sin((t*d-s)*(2*Math.PI)/p))+b},easeOutElastic:function(x,t,b,c,d){var s=1.70158,p=0,a=c;if(0==t)return b;if(1==(t/=d))return b+c;if(p||(p=.3*d),a<Math.abs(c)){a=c;var s=p/4}else var s=p/(2*Math.PI)*Math.asin(c/a);return a*Math.pow(2,-10*t)*Math.sin((t*d-s)*(2*Math.PI)/p)+c+b},easeInOutElastic:function(x,t,b,c,d){var s=1.70158,p=0,a=c;if(0==t)return b;if(2==(t/=d/2))return b+c;if(p||(p=d*(.3*1.5)),a<Math.abs(c)){a=c;var s=p/4}else var s=p/(2*Math.PI)*Math.asin(c/a);return t<1?-.5*(a*Math.pow(2,10*(t-=1))*Math.sin((t*d-s)*(2*Math.PI)/p))+b:a*Math.pow(2,-10*(t-=1))*Math.sin((t*d-s)*(2*Math.PI)/p)*.5+c+b},easeInBack:function(x,t,b,c,d,s){return void 0==s&&(s=1.70158),c*(t/=d)*t*((s+1)*t-s)+b},easeOutBack:function(x,t,b,c,d,s){return void 0==s&&(s=1.70158),c*((t=t/d-1)*t*((s+1)*t+s)+1)+b},easeInOutBack:function(x,t,b,c,d,s){return void 0==s&&(s=1.70158),(t/=d/2)<1?c/2*(t*t*(((s*=1.525)+1)*t-s))+b:c/2*((t-=2)*t*(((s*=1.525)+1)*t+s)+2)+b},easeInBounce:function(x,t,b,c,d){return c-$.easing.easeOutBounce(x,d-t,0,c,d)+b},easeOutBounce:function(x,t,b,c,d){return(t/=d)<1/2.75?c*(7.5625*t*t)+b:t<2/2.75?c*(7.5625*(t-=1.5/2.75)*t+.75)+b:t<2.5/2.75?c*(7.5625*(t-=2.25/2.75)*t+.9375)+b:c*(7.5625*(t-=2.625/2.75)*t+.984375)+b},easeInOutBounce:function(x,t,b,c,d){return t<d/2?.5*$.easing.easeInBounce(x,2*t,0,c,d)+b:.5*$.easing.easeOutBounce(x,2*t-d,0,c,d)+.5*c+b}})}(jQuery);assets/lib/jquery-easing/jquery-easing.js000064400000011405151327220410014516 0ustar00/*
 * jQuery Easing v1.3.2 - http://gsgd.co.uk/sandbox/jquery/easing/
 * Open source under the BSD License.
 * Copyright © 2008 George McGinley Smith
 * All rights reserved.
 * https://raw.github.com/gdsmith/jquery-easing/master/LICENSE
*/

// t: current time, b: begInnIng value, c: change In value, d: duration
(function($){$.easing['jswing'] = $.easing['swing'];

$.extend( $.easing,
{
	def: 'easeOutQuad',
	swing: function (x, t, b, c, d) {
		//alert($.easing.default);
		return $.easing[$.easing.def](x, t, b, c, d);
	},
	easeInQuad: function (x, t, b, c, d) {
		return c*(t/=d)*t + b;
	},
	easeOutQuad: function (x, t, b, c, d) {
		return -c *(t/=d)*(t-2) + b;
	},
	easeInOutQuad: function (x, t, b, c, d) {
		if ((t/=d/2) < 1) return c/2*t*t + b;
		return -c/2 * ((--t)*(t-2) - 1) + b;
	},
	easeInCubic: function (x, t, b, c, d) {
		return c*(t/=d)*t*t + b;
	},
	easeOutCubic: function (x, t, b, c, d) {
		return c*((t=t/d-1)*t*t + 1) + b;
	},
	easeInOutCubic: function (x, t, b, c, d) {
		if ((t/=d/2) < 1) return c/2*t*t*t + b;
		return c/2*((t-=2)*t*t + 2) + b;
	},
	easeInQuart: function (x, t, b, c, d) {
		return c*(t/=d)*t*t*t + b;
	},
	easeOutQuart: function (x, t, b, c, d) {
		return -c * ((t=t/d-1)*t*t*t - 1) + b;
	},
	easeInOutQuart: function (x, t, b, c, d) {
		if ((t/=d/2) < 1) return c/2*t*t*t*t + b;
		return -c/2 * ((t-=2)*t*t*t - 2) + b;
	},
	easeInQuint: function (x, t, b, c, d) {
		return c*(t/=d)*t*t*t*t + b;
	},
	easeOutQuint: function (x, t, b, c, d) {
		return c*((t=t/d-1)*t*t*t*t + 1) + b;
	},
	easeInOutQuint: function (x, t, b, c, d) {
		if ((t/=d/2) < 1) return c/2*t*t*t*t*t + b;
		return c/2*((t-=2)*t*t*t*t + 2) + b;
	},
	easeInSine: function (x, t, b, c, d) {
		return -c * Math.cos(t/d * (Math.PI/2)) + c + b;
	},
	easeOutSine: function (x, t, b, c, d) {
		return c * Math.sin(t/d * (Math.PI/2)) + b;
	},
	easeInOutSine: function (x, t, b, c, d) {
		return -c/2 * (Math.cos(Math.PI*t/d) - 1) + b;
	},
	easeInExpo: function (x, t, b, c, d) {
		return (t==0) ? b : c * Math.pow(2, 10 * (t/d - 1)) + b;
	},
	easeOutExpo: function (x, t, b, c, d) {
		return (t==d) ? b+c : c * (-Math.pow(2, -10 * t/d) + 1) + b;
	},
	easeInOutExpo: function (x, t, b, c, d) {
		if (t==0) return b;
		if (t==d) return b+c;
		if ((t/=d/2) < 1) return c/2 * Math.pow(2, 10 * (t - 1)) + b;
		return c/2 * (-Math.pow(2, -10 * --t) + 2) + b;
	},
	easeInCirc: function (x, t, b, c, d) {
		return -c * (Math.sqrt(1 - (t/=d)*t) - 1) + b;
	},
	easeOutCirc: function (x, t, b, c, d) {
		return c * Math.sqrt(1 - (t=t/d-1)*t) + b;
	},
	easeInOutCirc: function (x, t, b, c, d) {
		if ((t/=d/2) < 1) return -c/2 * (Math.sqrt(1 - t*t) - 1) + b;
		return c/2 * (Math.sqrt(1 - (t-=2)*t) + 1) + b;
	},
	easeInElastic: function (x, t, b, c, d) {
		var s=1.70158;var p=0;var a=c;
		if (t==0) return b;  if ((t/=d)==1) return b+c;  if (!p) p=d*.3;
		if (a < Math.abs(c)) { a=c; var s=p/4; }
		else var s = p/(2*Math.PI) * Math.asin (c/a);
		return -(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b;
	},
	easeOutElastic: function (x, t, b, c, d) {
		var s=1.70158;var p=0;var a=c;
		if (t==0) return b;  if ((t/=d)==1) return b+c;  if (!p) p=d*.3;
		if (a < Math.abs(c)) { a=c; var s=p/4; }
		else var s = p/(2*Math.PI) * Math.asin (c/a);
		return a*Math.pow(2,-10*t) * Math.sin( (t*d-s)*(2*Math.PI)/p ) + c + b;
	},
	easeInOutElastic: function (x, t, b, c, d) {
		var s=1.70158;var p=0;var a=c;
		if (t==0) return b;  if ((t/=d/2)==2) return b+c;  if (!p) p=d*(.3*1.5);
		if (a < Math.abs(c)) { a=c; var s=p/4; }
		else var s = p/(2*Math.PI) * Math.asin (c/a);
		if (t < 1) return -.5*(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b;
		return a*Math.pow(2,-10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )*.5 + c + b;
	},
	easeInBack: function (x, t, b, c, d, s) {
		if (s == undefined) s = 1.70158;
		return c*(t/=d)*t*((s+1)*t - s) + b;
	},
	easeOutBack: function (x, t, b, c, d, s) {
		if (s == undefined) s = 1.70158;
		return c*((t=t/d-1)*t*((s+1)*t + s) + 1) + b;
	},
	easeInOutBack: function (x, t, b, c, d, s) {
		if (s == undefined) s = 1.70158; 
		if ((t/=d/2) < 1) return c/2*(t*t*(((s*=(1.525))+1)*t - s)) + b;
		return c/2*((t-=2)*t*(((s*=(1.525))+1)*t + s) + 2) + b;
	},
	easeInBounce: function (x, t, b, c, d) {
		return c - $.easing.easeOutBounce (x, d-t, 0, c, d) + b;
	},
	easeOutBounce: function (x, t, b, c, d) {
		if ((t/=d) < (1/2.75)) {
			return c*(7.5625*t*t) + b;
		} else if (t < (2/2.75)) {
			return c*(7.5625*(t-=(1.5/2.75))*t + .75) + b;
		} else if (t < (2.5/2.75)) {
			return c*(7.5625*(t-=(2.25/2.75))*t + .9375) + b;
		} else {
			return c*(7.5625*(t-=(2.625/2.75))*t + .984375) + b;
		}
	},
	easeInOutBounce: function (x, t, b, c, d) {
		if (t < d/2) return $.easing.easeInBounce (x, t*2, 0, c, d) * .5 + b;
		return $.easing.easeOutBounce (x, t*2-d, 0, c, d) * .5 + c*.5 + b;
	}
});})(jQuery);
assets/lib/hover/hover.css000064400000024433151327220410011577 0ustar00/*!
 * Hover.css (http://ianlunn.github.io/Hover/)
 * Version: 2.0.2
 * Author: Ian Lunn @IanLunn
 * Author URL: http://ianlunn.co.uk/
 * Github: https://github.com/IanLunn/Hover

 * Made available under a MIT License:
 * http://www.opensource.org/licenses/mit-license.php

 * Hover.css Copyright Ian Lunn 2014. Generated with Sass.
 */
/* 2D TRANSITIONS */
/* Grow */
.elementor-animation-grow {
  transition-duration: 0.3s;
  transition-property: transform;
}
.elementor-animation-grow:hover {
  transform: scale(1.1);
}

/* Shrink */
.elementor-animation-shrink {
  transition-duration: 0.3s;
  transition-property: transform;
}
.elementor-animation-shrink:hover {
  transform: scale(0.9);
}

/* Pulse */
@keyframes elementor-animation-pulse {
  25% {
    transform: scale(1.1);
  }
  75% {
    transform: scale(0.9);
  }
}
.elementor-animation-pulse:hover {
  animation-name: elementor-animation-pulse;
  animation-duration: 1s;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
}

/* Pulse Grow */
@keyframes elementor-animation-pulse-grow {
  to {
    transform: scale(1.1);
  }
}
.elementor-animation-pulse-grow:hover {
  animation-name: elementor-animation-pulse-grow;
  animation-duration: 0.3s;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
  animation-direction: alternate;
}

/* Pulse Shrink */
@keyframes elementor-animation-pulse-shrink {
  to {
    transform: scale(0.9);
  }
}
.elementor-animation-pulse-shrink:hover {
  animation-name: elementor-animation-pulse-shrink;
  animation-duration: 0.3s;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
  animation-direction: alternate;
}

/* Push */
@keyframes elementor-animation-push {
  50% {
    transform: scale(0.8);
  }
  100% {
    transform: scale(1);
  }
}
.elementor-animation-push:hover {
  animation-name: elementor-animation-push;
  animation-duration: 0.3s;
  animation-timing-function: linear;
  animation-iteration-count: 1;
}

/* Pop */
@keyframes elementor-animation-pop {
  50% {
    transform: scale(1.2);
  }
}
.elementor-animation-pop:hover {
  animation-name: elementor-animation-pop;
  animation-duration: 0.3s;
  animation-timing-function: linear;
  animation-iteration-count: 1;
}

/* Bounce In */
.elementor-animation-bounce-in {
  transition-duration: 0.5s;
}
.elementor-animation-bounce-in:hover {
  transform: scale(1.2);
  transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36);
}

/* Bounce Out */
.elementor-animation-bounce-out {
  transition-duration: 0.5s;
}
.elementor-animation-bounce-out:hover {
  transform: scale(0.8);
  transition-timing-function: cubic-bezier(0.47, 2.02, 0.31, -0.36);
}

/* Rotate */
.elementor-animation-rotate {
  transition-duration: 0.3s;
  transition-property: transform;
}
.elementor-animation-rotate:hover {
  transform: rotate(4deg);
}

/* Grow Rotate */
.elementor-animation-grow-rotate {
  transition-duration: 0.3s;
  transition-property: transform;
}
.elementor-animation-grow-rotate:hover {
  transform: scale(1.1) rotate(4deg);
}

/* Float */
.elementor-animation-float {
  transition-duration: 0.3s;
  transition-property: transform;
  transition-timing-function: ease-out;
}
.elementor-animation-float:hover {
  transform: translateY(-8px);
}

/* Sink */
.elementor-animation-sink {
  transition-duration: 0.3s;
  transition-property: transform;
  transition-timing-function: ease-out;
}
.elementor-animation-sink:hover {
  transform: translateY(8px);
}

/* Bob */
@keyframes elementor-animation-bob {
  0% {
    transform: translateY(-8px);
  }
  50% {
    transform: translateY(-4px);
  }
  100% {
    transform: translateY(-8px);
  }
}
@keyframes elementor-animation-bob-float {
  100% {
    transform: translateY(-8px);
  }
}
.elementor-animation-bob:hover {
  animation-name: elementor-animation-bob-float, elementor-animation-bob;
  animation-duration: .3s, 1.5s;
  animation-delay: 0s, .3s;
  animation-timing-function: ease-out, ease-in-out;
  animation-iteration-count: 1, infinite;
  animation-fill-mode: forwards;
  animation-direction: normal, alternate;
}

/* Hang */
@keyframes elementor-animation-hang {
  0% {
    transform: translateY(8px);
  }
  50% {
    transform: translateY(4px);
  }
  100% {
    transform: translateY(8px);
  }
}
@keyframes elementor-animation-hang-sink {
  100% {
    transform: translateY(8px);
  }
}
.elementor-animation-hang:hover {
  animation-name: elementor-animation-hang-sink, elementor-animation-hang;
  animation-duration: .3s, 1.5s;
  animation-delay: 0s, .3s;
  animation-timing-function: ease-out, ease-in-out;
  animation-iteration-count: 1, infinite;
  animation-fill-mode: forwards;
  animation-direction: normal, alternate;
}

/* Skew */
.elementor-animation-skew {
  transition-duration: 0.3s;
  transition-property: transform;
}
.elementor-animation-skew:hover {
  transform: skew(-10deg);
}

/* Skew Forward */
.elementor-animation-skew-forward {
  transition-duration: 0.3s;
  transition-property: transform;
  transform-origin: 0 100%;
}
.elementor-animation-skew-forward:hover {
  transform: skew(-10deg);
}

/* Skew Backward */
.elementor-animation-skew-backward {
  transition-duration: 0.3s;
  transition-property: transform;
  transform-origin: 0 100%;
}
.elementor-animation-skew-backward:hover {
  transform: skew(10deg);
}

/* Wobble Vertical */
@keyframes elementor-animation-wobble-vertical {
  16.65% {
    transform: translateY(8px);
  }
  33.3% {
    transform: translateY(-6px);
  }
  49.95% {
    transform: translateY(4px);
  }
  66.6% {
    transform: translateY(-2px);
  }
  83.25% {
    transform: translateY(1px);
  }
  100% {
    transform: translateY(0);
  }
}
.elementor-animation-wobble-vertical:hover {
  animation-name: elementor-animation-wobble-vertical;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
}

/* Wobble Horizontal */
@keyframes elementor-animation-wobble-horizontal {
  16.65% {
    transform: translateX(8px);
  }
  33.3% {
    transform: translateX(-6px);
  }
  49.95% {
    transform: translateX(4px);
  }
  66.6% {
    transform: translateX(-2px);
  }
  83.25% {
    transform: translateX(1px);
  }
  100% {
    transform: translateX(0);
  }
}
.elementor-animation-wobble-horizontal:hover {
  animation-name: elementor-animation-wobble-horizontal;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
}

/* Wobble To Bottom Right */
@keyframes elementor-animation-wobble-to-bottom-right {
  16.65% {
    transform: translate(8px, 8px);
  }
  33.3% {
    transform: translate(-6px, -6px);
  }
  49.95% {
    transform: translate(4px, 4px);
  }
  66.6% {
    transform: translate(-2px, -2px);
  }
  83.25% {
    transform: translate(1px, 1px);
  }
  100% {
    transform: translate(0, 0);
  }
}
.elementor-animation-wobble-to-bottom-right:hover {
  animation-name: elementor-animation-wobble-to-bottom-right;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
}

/* Wobble To Top Right */
@keyframes elementor-animation-wobble-to-top-right {
  16.65% {
    transform: translate(8px, -8px);
  }
  33.3% {
    transform: translate(-6px, 6px);
  }
  49.95% {
    transform: translate(4px, -4px);
  }
  66.6% {
    transform: translate(-2px, 2px);
  }
  83.25% {
    transform: translate(1px, -1px);
  }
  100% {
    transform: translate(0, 0);
  }
}
.elementor-animation-wobble-to-top-right:hover {
  animation-name: elementor-animation-wobble-to-top-right;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
}

/* Wobble Top */
@keyframes elementor-animation-wobble-top {
  16.65% {
    transform: skew(-12deg);
  }
  33.3% {
    transform: skew(10deg);
  }
  49.95% {
    transform: skew(-6deg);
  }
  66.6% {
    transform: skew(4deg);
  }
  83.25% {
    transform: skew(-2deg);
  }
  100% {
    transform: skew(0);
  }
}
.elementor-animation-wobble-top {
  transform-origin: 0 100%;
}
.elementor-animation-wobble-top:hover {
  animation-name: elementor-animation-wobble-top;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
}

/* Wobble Bottom */
@keyframes elementor-animation-wobble-bottom {
  16.65% {
    transform: skew(-12deg);
  }
  33.3% {
    transform: skew(10deg);
  }
  49.95% {
    transform: skew(-6deg);
  }
  66.6% {
    transform: skew(4deg);
  }
  83.25% {
    transform: skew(-2deg);
  }
  100% {
    transform: skew(0);
  }
}
.elementor-animation-wobble-bottom {
  transform-origin: 100% 0;
}
.elementor-animation-wobble-bottom:hover {
  animation-name: elementor-animation-wobble-bottom;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
}

/* Wobble Skew */
@keyframes elementor-animation-wobble-skew {
  16.65% {
    transform: skew(-12deg);
  }
  33.3% {
    transform: skew(10deg);
  }
  49.95% {
    transform: skew(-6deg);
  }
  66.6% {
    transform: skew(4deg);
  }
  83.25% {
    transform: skew(-2deg);
  }
  100% {
    transform: skew(0);
  }
}
.elementor-animation-wobble-skew:hover {
  animation-name: elementor-animation-wobble-skew;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: 1;
}

/* Buzz */
@keyframes elementor-animation-buzz {
  50% {
    transform: translateX(3px) rotate(2deg);
  }
  100% {
    transform: translateX(-3px) rotate(-2deg);
  }
}
.elementor-animation-buzz:hover {
  animation-name: elementor-animation-buzz;
  animation-duration: 0.15s;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
}

/* Buzz Out */
@keyframes elementor-animation-buzz-out {
  10% {
    transform: translateX(3px) rotate(2deg);
  }
  20% {
    transform: translateX(-3px) rotate(-2deg);
  }
  30% {
    transform: translateX(3px) rotate(2deg);
  }
  40% {
    transform: translateX(-3px) rotate(-2deg);
  }
  50% {
    transform: translateX(2px) rotate(1deg);
  }
  60% {
    transform: translateX(-2px) rotate(-1deg);
  }
  70% {
    transform: translateX(2px) rotate(1deg);
  }
  80% {
    transform: translateX(-2px) rotate(-1deg);
  }
  90% {
    transform: translateX(1px) rotate(0);
  }
  100% {
    transform: translateX(-1px) rotate(0);
  }
}
.elementor-animation-buzz-out:hover {
  animation-name: elementor-animation-buzz-out;
  animation-duration: 0.75s;
  animation-timing-function: linear;
  animation-iteration-count: 1;
}

/*# sourceMappingURL=hover.css.map */
assets/lib/hover/hover.min.css000064400000023443151327220410012361 0ustar00.elementor-animation-grow{transition-duration:.3s;transition-property:transform}.elementor-animation-grow:active,.elementor-animation-grow:focus,.elementor-animation-grow:hover{transform:scale(1.1)}.elementor-animation-shrink{transition-duration:.3s;transition-property:transform}.elementor-animation-shrink:active,.elementor-animation-shrink:focus,.elementor-animation-shrink:hover{transform:scale(0.9)}@keyframes elementor-animation-pulse{25%{transform:scale(1.1)}75%{transform:scale(0.9)}}.elementor-animation-pulse:active,.elementor-animation-pulse:focus,.elementor-animation-pulse:hover{animation-name:elementor-animation-pulse;animation-duration:1s;animation-timing-function:linear;animation-iteration-count:infinite}@keyframes elementor-animation-pulse-grow{to{transform:scale(1.1)}}.elementor-animation-pulse-grow:active,.elementor-animation-pulse-grow:focus,.elementor-animation-pulse-grow:hover{animation-name:elementor-animation-pulse-grow;animation-duration:.3s;animation-timing-function:linear;animation-iteration-count:infinite;animation-direction:alternate}@keyframes elementor-animation-pulse-shrink{to{transform:scale(0.9)}}.elementor-animation-pulse-shrink:active,.elementor-animation-pulse-shrink:focus,.elementor-animation-pulse-shrink:hover{animation-name:elementor-animation-pulse-shrink;animation-duration:.3s;animation-timing-function:linear;animation-iteration-count:infinite;animation-direction:alternate}@keyframes elementor-animation-push{50%{transform:scale(0.8)}100%{transform:scale(1)}}.elementor-animation-push:active,.elementor-animation-push:focus,.elementor-animation-push:hover{animation-name:elementor-animation-push;animation-duration:.3s;animation-timing-function:linear;animation-iteration-count:1}@keyframes elementor-animation-pop{50%{transform:scale(1.2)}}.elementor-animation-pop:active,.elementor-animation-pop:focus,.elementor-animation-pop:hover{animation-name:elementor-animation-pop;animation-duration:.3s;animation-timing-function:linear;animation-iteration-count:1}.elementor-animation-bounce-in{transition-duration:.5s}.elementor-animation-bounce-in:active,.elementor-animation-bounce-in:focus,.elementor-animation-bounce-in:hover{transform:scale(1.2);transition-timing-function:cubic-bezier(0.47,2.02,.31,-.36)}.elementor-animation-bounce-out{transition-duration:.5s}.elementor-animation-bounce-out:active,.elementor-animation-bounce-out:focus,.elementor-animation-bounce-out:hover{transform:scale(0.8);transition-timing-function:cubic-bezier(0.47,2.02,.31,-.36)}.elementor-animation-rotate{transition-duration:.3s;transition-property:transform}.elementor-animation-rotate:active,.elementor-animation-rotate:focus,.elementor-animation-rotate:hover{transform:rotate(4deg)}.elementor-animation-grow-rotate{transition-duration:.3s;transition-property:transform}.elementor-animation-grow-rotate:active,.elementor-animation-grow-rotate:focus,.elementor-animation-grow-rotate:hover{transform:scale(1.1) rotate(4deg)}.elementor-animation-float{transition-duration:.3s;transition-property:transform;transition-timing-function:ease-out}.elementor-animation-float:active,.elementor-animation-float:focus,.elementor-animation-float:hover{transform:translateY(-8px)}.elementor-animation-sink{transition-duration:.3s;transition-property:transform;transition-timing-function:ease-out}.elementor-animation-sink:active,.elementor-animation-sink:focus,.elementor-animation-sink:hover{transform:translateY(8px)}@keyframes elementor-animation-bob{0%{transform:translateY(-8px)}50%{transform:translateY(-4px)}100%{transform:translateY(-8px)}}@keyframes elementor-animation-bob-float{100%{transform:translateY(-8px)}}.elementor-animation-bob:active,.elementor-animation-bob:focus,.elementor-animation-bob:hover{animation-name:elementor-animation-bob-float,elementor-animation-bob;animation-duration:.3s,1.5s;animation-delay:0s,.3s;animation-timing-function:ease-out,ease-in-out;animation-iteration-count:1,infinite;animation-fill-mode:forwards;animation-direction:normal,alternate}@keyframes elementor-animation-hang{0%{transform:translateY(8px)}50%{transform:translateY(4px)}100%{transform:translateY(8px)}}@keyframes elementor-animation-hang-sink{100%{transform:translateY(8px)}}.elementor-animation-hang:active,.elementor-animation-hang:focus,.elementor-animation-hang:hover{animation-name:elementor-animation-hang-sink,elementor-animation-hang;animation-duration:.3s,1.5s;animation-delay:0s,.3s;animation-timing-function:ease-out,ease-in-out;animation-iteration-count:1,infinite;animation-fill-mode:forwards;animation-direction:normal,alternate}.elementor-animation-skew{transition-duration:.3s;transition-property:transform}.elementor-animation-skew:active,.elementor-animation-skew:focus,.elementor-animation-skew:hover{transform:skew(-10deg)}.elementor-animation-skew-forward{transition-duration:.3s;transition-property:transform;transform-origin:0 100%}.elementor-animation-skew-forward:active,.elementor-animation-skew-forward:focus,.elementor-animation-skew-forward:hover{transform:skew(-10deg)}.elementor-animation-skew-backward{transition-duration:.3s;transition-property:transform;transform-origin:0 100%}.elementor-animation-skew-backward:active,.elementor-animation-skew-backward:focus,.elementor-animation-skew-backward:hover{transform:skew(10deg)}@keyframes elementor-animation-wobble-vertical{16.65%{transform:translateY(8px)}33.3%{transform:translateY(-6px)}49.95%{transform:translateY(4px)}66.6%{transform:translateY(-2px)}83.25%{transform:translateY(1px)}100%{transform:translateY(0)}}.elementor-animation-wobble-vertical:active,.elementor-animation-wobble-vertical:focus,.elementor-animation-wobble-vertical:hover{animation-name:elementor-animation-wobble-vertical;animation-duration:1s;animation-timing-function:ease-in-out;animation-iteration-count:1}@keyframes elementor-animation-wobble-horizontal{16.65%{transform:translateX(8px)}33.3%{transform:translateX(-6px)}49.95%{transform:translateX(4px)}66.6%{transform:translateX(-2px)}83.25%{transform:translateX(1px)}100%{transform:translateX(0)}}.elementor-animation-wobble-horizontal:active,.elementor-animation-wobble-horizontal:focus,.elementor-animation-wobble-horizontal:hover{animation-name:elementor-animation-wobble-horizontal;animation-duration:1s;animation-timing-function:ease-in-out;animation-iteration-count:1}@keyframes elementor-animation-wobble-to-bottom-right{16.65%{transform:translate(8px,8px)}33.3%{transform:translate(-6px,-6px)}49.95%{transform:translate(4px,4px)}66.6%{transform:translate(-2px,-2px)}83.25%{transform:translate(1px,1px)}100%{transform:translate(0,0)}}.elementor-animation-wobble-to-bottom-right:active,.elementor-animation-wobble-to-bottom-right:focus,.elementor-animation-wobble-to-bottom-right:hover{animation-name:elementor-animation-wobble-to-bottom-right;animation-duration:1s;animation-timing-function:ease-in-out;animation-iteration-count:1}@keyframes elementor-animation-wobble-to-top-right{16.65%{transform:translate(8px,-8px)}33.3%{transform:translate(-6px,6px)}49.95%{transform:translate(4px,-4px)}66.6%{transform:translate(-2px,2px)}83.25%{transform:translate(1px,-1px)}100%{transform:translate(0,0)}}.elementor-animation-wobble-to-top-right:active,.elementor-animation-wobble-to-top-right:focus,.elementor-animation-wobble-to-top-right:hover{animation-name:elementor-animation-wobble-to-top-right;animation-duration:1s;animation-timing-function:ease-in-out;animation-iteration-count:1}@keyframes elementor-animation-wobble-top{16.65%{transform:skew(-12deg)}33.3%{transform:skew(10deg)}49.95%{transform:skew(-6deg)}66.6%{transform:skew(4deg)}83.25%{transform:skew(-2deg)}100%{transform:skew(0)}}.elementor-animation-wobble-top{transform-origin:0 100%}.elementor-animation-wobble-top:active,.elementor-animation-wobble-top:focus,.elementor-animation-wobble-top:hover{animation-name:elementor-animation-wobble-top;animation-duration:1s;animation-timing-function:ease-in-out;animation-iteration-count:1}@keyframes elementor-animation-wobble-bottom{16.65%{transform:skew(-12deg)}33.3%{transform:skew(10deg)}49.95%{transform:skew(-6deg)}66.6%{transform:skew(4deg)}83.25%{transform:skew(-2deg)}100%{transform:skew(0)}}.elementor-animation-wobble-bottom{transform-origin:100% 0}.elementor-animation-wobble-bottom:active,.elementor-animation-wobble-bottom:focus,.elementor-animation-wobble-bottom:hover{animation-name:elementor-animation-wobble-bottom;animation-duration:1s;animation-timing-function:ease-in-out;animation-iteration-count:1}@keyframes elementor-animation-wobble-skew{16.65%{transform:skew(-12deg)}33.3%{transform:skew(10deg)}49.95%{transform:skew(-6deg)}66.6%{transform:skew(4deg)}83.25%{transform:skew(-2deg)}100%{transform:skew(0)}}.elementor-animation-wobble-skew:active,.elementor-animation-wobble-skew:focus,.elementor-animation-wobble-skew:hover{animation-name:elementor-animation-wobble-skew;animation-duration:1s;animation-timing-function:ease-in-out;animation-iteration-count:1}@keyframes elementor-animation-buzz{50%{transform:translateX(3px) rotate(2deg)}100%{transform:translateX(-3px) rotate(-2deg)}}.elementor-animation-buzz:active,.elementor-animation-buzz:focus,.elementor-animation-buzz:hover{animation-name:elementor-animation-buzz;animation-duration:.15s;animation-timing-function:linear;animation-iteration-count:infinite}@keyframes elementor-animation-buzz-out{10%{transform:translateX(3px) rotate(2deg)}20%{transform:translateX(-3px) rotate(-2deg)}30%{transform:translateX(3px) rotate(2deg)}40%{transform:translateX(-3px) rotate(-2deg)}50%{transform:translateX(2px) rotate(1deg)}60%{transform:translateX(-2px) rotate(-1deg)}70%{transform:translateX(2px) rotate(1deg)}80%{transform:translateX(-2px) rotate(-1deg)}90%{transform:translateX(1px) rotate(0)}100%{transform:translateX(-1px) rotate(0)}}.elementor-animation-buzz-out:active,.elementor-animation-buzz-out:focus,.elementor-animation-buzz-out:hover{animation-name:elementor-animation-buzz-out;animation-duration:.75s;animation-timing-function:linear;animation-iteration-count:1}assets/lib/perfect-scrollbar/js/perfect-scrollbar.js000064400000104771151327220410016617 0ustar00/*!
 * perfect-scrollbar v1.4.0
 * (c) 2018 Hyunje Jun
 * @license MIT
 */
(function (global, factory) {
	typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
	typeof define === 'function' && define.amd ? define(factory) :
	(global.PerfectScrollbar = factory());
}(this, (function () { 'use strict';

function get(element) {
  return getComputedStyle(element);
}

function set(element, obj) {
  for (var key in obj) {
    var val = obj[key];
    if (typeof val === 'number') {
      val = val + "px";
    }
    element.style[key] = val;
  }
  return element;
}

function div(className) {
  var div = document.createElement('div');
  div.className = className;
  return div;
}

var elMatches =
  typeof Element !== 'undefined' &&
  (Element.prototype.matches ||
    Element.prototype.webkitMatchesSelector ||
    Element.prototype.mozMatchesSelector ||
    Element.prototype.msMatchesSelector);

function matches(element, query) {
  if (!elMatches) {
    throw new Error('No element matching method supported');
  }

  return elMatches.call(element, query);
}

function remove(element) {
  if (element.remove) {
    element.remove();
  } else {
    if (element.parentNode) {
      element.parentNode.removeChild(element);
    }
  }
}

function queryChildren(element, selector) {
  return Array.prototype.filter.call(element.children, function (child) { return matches(child, selector); }
  );
}

var cls = {
  main: 'ps',
  element: {
    thumb: function (x) { return ("ps__thumb-" + x); },
    rail: function (x) { return ("ps__rail-" + x); },
    consuming: 'ps__child--consume',
  },
  state: {
    focus: 'ps--focus',
    clicking: 'ps--clicking',
    active: function (x) { return ("ps--active-" + x); },
    scrolling: function (x) { return ("ps--scrolling-" + x); },
  },
};

/*
 * Helper methods
 */
var scrollingClassTimeout = { x: null, y: null };

function addScrollingClass(i, x) {
  var classList = i.element.classList;
  var className = cls.state.scrolling(x);

  if (classList.contains(className)) {
    clearTimeout(scrollingClassTimeout[x]);
  } else {
    classList.add(className);
  }
}

function removeScrollingClass(i, x) {
  scrollingClassTimeout[x] = setTimeout(
    function () { return i.isAlive && i.element.classList.remove(cls.state.scrolling(x)); },
    i.settings.scrollingThreshold
  );
}

function setScrollingClassInstantly(i, x) {
  addScrollingClass(i, x);
  removeScrollingClass(i, x);
}

var EventElement = function EventElement(element) {
  this.element = element;
  this.handlers = {};
};

var prototypeAccessors = { isEmpty: { configurable: true } };

EventElement.prototype.bind = function bind (eventName, handler) {
  if (typeof this.handlers[eventName] === 'undefined') {
    this.handlers[eventName] = [];
  }
  this.handlers[eventName].push(handler);
  this.element.addEventListener(eventName, handler, false);
};

EventElement.prototype.unbind = function unbind (eventName, target) {
    var this$1 = this;

  this.handlers[eventName] = this.handlers[eventName].filter(function (handler) {
    if (target && handler !== target) {
      return true;
    }
    this$1.element.removeEventListener(eventName, handler, false);
    return false;
  });
};

EventElement.prototype.unbindAll = function unbindAll () {
    var this$1 = this;

  for (var name in this$1.handlers) {
    this$1.unbind(name);
  }
};

prototypeAccessors.isEmpty.get = function () {
    var this$1 = this;

  return Object.keys(this.handlers).every(
    function (key) { return this$1.handlers[key].length === 0; }
  );
};

Object.defineProperties( EventElement.prototype, prototypeAccessors );

var EventManager = function EventManager() {
  this.eventElements = [];
};

EventManager.prototype.eventElement = function eventElement (element) {
  var ee = this.eventElements.filter(function (ee) { return ee.element === element; })[0];
  if (!ee) {
    ee = new EventElement(element);
    this.eventElements.push(ee);
  }
  return ee;
};

EventManager.prototype.bind = function bind (element, eventName, handler) {
  this.eventElement(element).bind(eventName, handler);
};

EventManager.prototype.unbind = function unbind (element, eventName, handler) {
  var ee = this.eventElement(element);
  ee.unbind(eventName, handler);

  if (ee.isEmpty) {
    // remove
    this.eventElements.splice(this.eventElements.indexOf(ee), 1);
  }
};

EventManager.prototype.unbindAll = function unbindAll () {
  this.eventElements.forEach(function (e) { return e.unbindAll(); });
  this.eventElements = [];
};

EventManager.prototype.once = function once (element, eventName, handler) {
  var ee = this.eventElement(element);
  var onceHandler = function (evt) {
    ee.unbind(eventName, onceHandler);
    handler(evt);
  };
  ee.bind(eventName, onceHandler);
};

function createEvent(name) {
  if (typeof window.CustomEvent === 'function') {
    return new CustomEvent(name);
  } else {
    var evt = document.createEvent('CustomEvent');
    evt.initCustomEvent(name, false, false, undefined);
    return evt;
  }
}

var processScrollDiff = function(
  i,
  axis,
  diff,
  useScrollingClass,
  forceFireReachEvent
) {
  if ( useScrollingClass === void 0 ) useScrollingClass = true;
  if ( forceFireReachEvent === void 0 ) forceFireReachEvent = false;

  var fields;
  if (axis === 'top') {
    fields = [
      'contentHeight',
      'containerHeight',
      'scrollTop',
      'y',
      'up',
      'down' ];
  } else if (axis === 'left') {
    fields = [
      'contentWidth',
      'containerWidth',
      'scrollLeft',
      'x',
      'left',
      'right' ];
  } else {
    throw new Error('A proper axis should be provided');
  }

  processScrollDiff$1(i, diff, fields, useScrollingClass, forceFireReachEvent);
};

function processScrollDiff$1(
  i,
  diff,
  ref,
  useScrollingClass,
  forceFireReachEvent
) {
  var contentHeight = ref[0];
  var containerHeight = ref[1];
  var scrollTop = ref[2];
  var y = ref[3];
  var up = ref[4];
  var down = ref[5];
  if ( useScrollingClass === void 0 ) useScrollingClass = true;
  if ( forceFireReachEvent === void 0 ) forceFireReachEvent = false;

  var element = i.element;

  // reset reach
  i.reach[y] = null;

  // 1 for subpixel rounding
  if (element[scrollTop] < 1) {
    i.reach[y] = 'start';
  }

  // 1 for subpixel rounding
  if (element[scrollTop] > i[contentHeight] - i[containerHeight] - 1) {
    i.reach[y] = 'end';
  }

  if (diff) {
    element.dispatchEvent(createEvent(("ps-scroll-" + y)));

    if (diff < 0) {
      element.dispatchEvent(createEvent(("ps-scroll-" + up)));
    } else if (diff > 0) {
      element.dispatchEvent(createEvent(("ps-scroll-" + down)));
    }

    if (useScrollingClass) {
      setScrollingClassInstantly(i, y);
    }
  }

  if (i.reach[y] && (diff || forceFireReachEvent)) {
    element.dispatchEvent(createEvent(("ps-" + y + "-reach-" + (i.reach[y]))));
  }
}

function toInt(x) {
  return parseInt(x, 10) || 0;
}

function isEditable(el) {
  return (
    matches(el, 'input,[contenteditable]') ||
    matches(el, 'select,[contenteditable]') ||
    matches(el, 'textarea,[contenteditable]') ||
    matches(el, 'button,[contenteditable]')
  );
}

function outerWidth(element) {
  var styles = get(element);
  return (
    toInt(styles.width) +
    toInt(styles.paddingLeft) +
    toInt(styles.paddingRight) +
    toInt(styles.borderLeftWidth) +
    toInt(styles.borderRightWidth)
  );
}

var env = {
  isWebKit:
    typeof document !== 'undefined' &&
    'WebkitAppearance' in document.documentElement.style,
  supportsTouch:
    typeof window !== 'undefined' &&
    ('ontouchstart' in window ||
      (window.DocumentTouch && document instanceof window.DocumentTouch)),
  supportsIePointer:
    typeof navigator !== 'undefined' && navigator.msMaxTouchPoints,
  isChrome:
    typeof navigator !== 'undefined' &&
    /Chrome/i.test(navigator && navigator.userAgent),
};

var updateGeometry = function(i) {
  var element = i.element;
  var roundedScrollTop = Math.floor(element.scrollTop);

  i.containerWidth = element.clientWidth;
  i.containerHeight = element.clientHeight;
  i.contentWidth = element.scrollWidth;
  i.contentHeight = element.scrollHeight;

  if (!element.contains(i.scrollbarXRail)) {
    // clean up and append
    queryChildren(element, cls.element.rail('x')).forEach(function (el) { return remove(el); }
    );
    element.appendChild(i.scrollbarXRail);
  }
  if (!element.contains(i.scrollbarYRail)) {
    // clean up and append
    queryChildren(element, cls.element.rail('y')).forEach(function (el) { return remove(el); }
    );
    element.appendChild(i.scrollbarYRail);
  }

  if (
    !i.settings.suppressScrollX &&
    i.containerWidth + i.settings.scrollXMarginOffset < i.contentWidth
  ) {
    i.scrollbarXActive = true;
    i.railXWidth = i.containerWidth - i.railXMarginWidth;
    i.railXRatio = i.containerWidth / i.railXWidth;
    i.scrollbarXWidth = getThumbSize(
      i,
      toInt(i.railXWidth * i.containerWidth / i.contentWidth)
    );
    i.scrollbarXLeft = toInt(
      (i.negativeScrollAdjustment + element.scrollLeft) *
        (i.railXWidth - i.scrollbarXWidth) /
        (i.contentWidth - i.containerWidth)
    );
  } else {
    i.scrollbarXActive = false;
  }

  if (
    !i.settings.suppressScrollY &&
    i.containerHeight + i.settings.scrollYMarginOffset < i.contentHeight
  ) {
    i.scrollbarYActive = true;
    i.railYHeight = i.containerHeight - i.railYMarginHeight;
    i.railYRatio = i.containerHeight / i.railYHeight;
    i.scrollbarYHeight = getThumbSize(
      i,
      toInt(i.railYHeight * i.containerHeight / i.contentHeight)
    );
    i.scrollbarYTop = toInt(
      roundedScrollTop *
        (i.railYHeight - i.scrollbarYHeight) /
        (i.contentHeight - i.containerHeight)
    );
  } else {
    i.scrollbarYActive = false;
  }

  if (i.scrollbarXLeft >= i.railXWidth - i.scrollbarXWidth) {
    i.scrollbarXLeft = i.railXWidth - i.scrollbarXWidth;
  }
  if (i.scrollbarYTop >= i.railYHeight - i.scrollbarYHeight) {
    i.scrollbarYTop = i.railYHeight - i.scrollbarYHeight;
  }

  updateCss(element, i);

  if (i.scrollbarXActive) {
    element.classList.add(cls.state.active('x'));
  } else {
    element.classList.remove(cls.state.active('x'));
    i.scrollbarXWidth = 0;
    i.scrollbarXLeft = 0;
    element.scrollLeft = 0;
  }
  if (i.scrollbarYActive) {
    element.classList.add(cls.state.active('y'));
  } else {
    element.classList.remove(cls.state.active('y'));
    i.scrollbarYHeight = 0;
    i.scrollbarYTop = 0;
    element.scrollTop = 0;
  }
};

function getThumbSize(i, thumbSize) {
  if (i.settings.minScrollbarLength) {
    thumbSize = Math.max(thumbSize, i.settings.minScrollbarLength);
  }
  if (i.settings.maxScrollbarLength) {
    thumbSize = Math.min(thumbSize, i.settings.maxScrollbarLength);
  }
  return thumbSize;
}

function updateCss(element, i) {
  var xRailOffset = { width: i.railXWidth };
  var roundedScrollTop = Math.floor(element.scrollTop);

  if (i.isRtl) {
    xRailOffset.left =
      i.negativeScrollAdjustment +
      element.scrollLeft +
      i.containerWidth -
      i.contentWidth;
  } else {
    xRailOffset.left = element.scrollLeft;
  }
  if (i.isScrollbarXUsingBottom) {
    xRailOffset.bottom = i.scrollbarXBottom - roundedScrollTop;
  } else {
    xRailOffset.top = i.scrollbarXTop + roundedScrollTop;
  }
  set(i.scrollbarXRail, xRailOffset);

  var yRailOffset = { top: roundedScrollTop, height: i.railYHeight };
  if (i.isScrollbarYUsingRight) {
    if (i.isRtl) {
      yRailOffset.right =
        i.contentWidth -
        (i.negativeScrollAdjustment + element.scrollLeft) -
        i.scrollbarYRight -
        i.scrollbarYOuterWidth;
    } else {
      yRailOffset.right = i.scrollbarYRight - element.scrollLeft;
    }
  } else {
    if (i.isRtl) {
      yRailOffset.left =
        i.negativeScrollAdjustment +
        element.scrollLeft +
        i.containerWidth * 2 -
        i.contentWidth -
        i.scrollbarYLeft -
        i.scrollbarYOuterWidth;
    } else {
      yRailOffset.left = i.scrollbarYLeft + element.scrollLeft;
    }
  }
  set(i.scrollbarYRail, yRailOffset);

  set(i.scrollbarX, {
    left: i.scrollbarXLeft,
    width: i.scrollbarXWidth - i.railBorderXWidth,
  });
  set(i.scrollbarY, {
    top: i.scrollbarYTop,
    height: i.scrollbarYHeight - i.railBorderYWidth,
  });
}

var clickRail = function(i) {
  i.event.bind(i.scrollbarY, 'mousedown', function (e) { return e.stopPropagation(); });
  i.event.bind(i.scrollbarYRail, 'mousedown', function (e) {
    var positionTop =
      e.pageY -
      window.pageYOffset -
      i.scrollbarYRail.getBoundingClientRect().top;
    var direction = positionTop > i.scrollbarYTop ? 1 : -1;

    i.element.scrollTop += direction * i.containerHeight;
    updateGeometry(i);

    e.stopPropagation();
  });

  i.event.bind(i.scrollbarX, 'mousedown', function (e) { return e.stopPropagation(); });
  i.event.bind(i.scrollbarXRail, 'mousedown', function (e) {
    var positionLeft =
      e.pageX -
      window.pageXOffset -
      i.scrollbarXRail.getBoundingClientRect().left;
    var direction = positionLeft > i.scrollbarXLeft ? 1 : -1;

    i.element.scrollLeft += direction * i.containerWidth;
    updateGeometry(i);

    e.stopPropagation();
  });
};

var dragThumb = function(i) {
  bindMouseScrollHandler(i, [
    'containerWidth',
    'contentWidth',
    'pageX',
    'railXWidth',
    'scrollbarX',
    'scrollbarXWidth',
    'scrollLeft',
    'x',
    'scrollbarXRail' ]);
  bindMouseScrollHandler(i, [
    'containerHeight',
    'contentHeight',
    'pageY',
    'railYHeight',
    'scrollbarY',
    'scrollbarYHeight',
    'scrollTop',
    'y',
    'scrollbarYRail' ]);
};

function bindMouseScrollHandler(
  i,
  ref
) {
  var containerHeight = ref[0];
  var contentHeight = ref[1];
  var pageY = ref[2];
  var railYHeight = ref[3];
  var scrollbarY = ref[4];
  var scrollbarYHeight = ref[5];
  var scrollTop = ref[6];
  var y = ref[7];
  var scrollbarYRail = ref[8];

  var element = i.element;

  var startingScrollTop = null;
  var startingMousePageY = null;
  var scrollBy = null;

  function mouseMoveHandler(e) {
    element[scrollTop] =
      startingScrollTop + scrollBy * (e[pageY] - startingMousePageY);
    addScrollingClass(i, y);
    updateGeometry(i);

    e.stopPropagation();
    e.preventDefault();
  }

  function mouseUpHandler() {
    removeScrollingClass(i, y);
    i[scrollbarYRail].classList.remove(cls.state.clicking);
    i.event.unbind(i.ownerDocument, 'mousemove', mouseMoveHandler);
  }

  i.event.bind(i[scrollbarY], 'mousedown', function (e) {
    startingScrollTop = element[scrollTop];
    startingMousePageY = e[pageY];
    scrollBy =
      (i[contentHeight] - i[containerHeight]) /
      (i[railYHeight] - i[scrollbarYHeight]);

    i.event.bind(i.ownerDocument, 'mousemove', mouseMoveHandler);
    i.event.once(i.ownerDocument, 'mouseup', mouseUpHandler);

    i[scrollbarYRail].classList.add(cls.state.clicking);

    e.stopPropagation();
    e.preventDefault();
  });
}

var keyboard = function(i) {
  var element = i.element;

  var elementHovered = function () { return matches(element, ':hover'); };
  var scrollbarFocused = function () { return matches(i.scrollbarX, ':focus') || matches(i.scrollbarY, ':focus'); };

  function shouldPreventDefault(deltaX, deltaY) {
    var scrollTop = Math.floor(element.scrollTop);
    if (deltaX === 0) {
      if (!i.scrollbarYActive) {
        return false;
      }
      if (
        (scrollTop === 0 && deltaY > 0) ||
        (scrollTop >= i.contentHeight - i.containerHeight && deltaY < 0)
      ) {
        return !i.settings.wheelPropagation;
      }
    }

    var scrollLeft = element.scrollLeft;
    if (deltaY === 0) {
      if (!i.scrollbarXActive) {
        return false;
      }
      if (
        (scrollLeft === 0 && deltaX < 0) ||
        (scrollLeft >= i.contentWidth - i.containerWidth && deltaX > 0)
      ) {
        return !i.settings.wheelPropagation;
      }
    }
    return true;
  }

  i.event.bind(i.ownerDocument, 'keydown', function (e) {
    if (
      (e.isDefaultPrevented && e.isDefaultPrevented()) ||
      e.defaultPrevented
    ) {
      return;
    }

    if (!elementHovered() && !scrollbarFocused()) {
      return;
    }

    var activeElement = document.activeElement
      ? document.activeElement
      : i.ownerDocument.activeElement;
    if (activeElement) {
      if (activeElement.tagName === 'IFRAME') {
        activeElement = activeElement.contentDocument.activeElement;
      } else {
        // go deeper if element is a webcomponent
        while (activeElement.shadowRoot) {
          activeElement = activeElement.shadowRoot.activeElement;
        }
      }
      if (isEditable(activeElement)) {
        return;
      }
    }

    var deltaX = 0;
    var deltaY = 0;

    switch (e.which) {
      case 37: // left
        if (e.metaKey) {
          deltaX = -i.contentWidth;
        } else if (e.altKey) {
          deltaX = -i.containerWidth;
        } else {
          deltaX = -30;
        }
        break;
      case 38: // up
        if (e.metaKey) {
          deltaY = i.contentHeight;
        } else if (e.altKey) {
          deltaY = i.containerHeight;
        } else {
          deltaY = 30;
        }
        break;
      case 39: // right
        if (e.metaKey) {
          deltaX = i.contentWidth;
        } else if (e.altKey) {
          deltaX = i.containerWidth;
        } else {
          deltaX = 30;
        }
        break;
      case 40: // down
        if (e.metaKey) {
          deltaY = -i.contentHeight;
        } else if (e.altKey) {
          deltaY = -i.containerHeight;
        } else {
          deltaY = -30;
        }
        break;
      case 32: // space bar
        if (e.shiftKey) {
          deltaY = i.containerHeight;
        } else {
          deltaY = -i.containerHeight;
        }
        break;
      case 33: // page up
        deltaY = i.containerHeight;
        break;
      case 34: // page down
        deltaY = -i.containerHeight;
        break;
      case 36: // home
        deltaY = i.contentHeight;
        break;
      case 35: // end
        deltaY = -i.contentHeight;
        break;
      default:
        return;
    }

    if (i.settings.suppressScrollX && deltaX !== 0) {
      return;
    }
    if (i.settings.suppressScrollY && deltaY !== 0) {
      return;
    }

    element.scrollTop -= deltaY;
    element.scrollLeft += deltaX;
    updateGeometry(i);

    if (shouldPreventDefault(deltaX, deltaY)) {
      e.preventDefault();
    }
  });
};

var wheel = function(i) {
  var element = i.element;

  function shouldPreventDefault(deltaX, deltaY) {
    var roundedScrollTop = Math.floor(element.scrollTop);
    var isTop = element.scrollTop === 0;
    var isBottom =
      roundedScrollTop + element.offsetHeight === element.scrollHeight;
    var isLeft = element.scrollLeft === 0;
    var isRight =
      element.scrollLeft + element.offsetWidth === element.scrollWidth;

    var hitsBound;

    // pick axis with primary direction
    if (Math.abs(deltaY) > Math.abs(deltaX)) {
      hitsBound = isTop || isBottom;
    } else {
      hitsBound = isLeft || isRight;
    }

    return hitsBound ? !i.settings.wheelPropagation : true;
  }

  function getDeltaFromEvent(e) {
    var deltaX = e.deltaX;
    var deltaY = -1 * e.deltaY;

    if (typeof deltaX === 'undefined' || typeof deltaY === 'undefined') {
      // OS X Safari
      deltaX = -1 * e.wheelDeltaX / 6;
      deltaY = e.wheelDeltaY / 6;
    }

    if (e.deltaMode && e.deltaMode === 1) {
      // Firefox in deltaMode 1: Line scrolling
      deltaX *= 10;
      deltaY *= 10;
    }

    if (deltaX !== deltaX && deltaY !== deltaY /* NaN checks */) {
      // IE in some mouse drivers
      deltaX = 0;
      deltaY = e.wheelDelta;
    }

    if (e.shiftKey) {
      // reverse axis with shift key
      return [-deltaY, -deltaX];
    }
    return [deltaX, deltaY];
  }

  function shouldBeConsumedByChild(target, deltaX, deltaY) {
    // FIXME: this is a workaround for <select> issue in FF and IE #571
    if (!env.isWebKit && element.querySelector('select:focus')) {
      return true;
    }

    if (!element.contains(target)) {
      return false;
    }

    var cursor = target;

    while (cursor && cursor !== element) {
      if (cursor.classList.contains(cls.element.consuming)) {
        return true;
      }

      var style = get(cursor);
      var overflow = [style.overflow, style.overflowX, style.overflowY].join(
        ''
      );

      // if scrollable
      if (overflow.match(/(scroll|auto)/)) {
        var maxScrollTop = cursor.scrollHeight - cursor.clientHeight;
        if (maxScrollTop > 0) {
          if (
            !(cursor.scrollTop === 0 && deltaY > 0) &&
            !(cursor.scrollTop === maxScrollTop && deltaY < 0)
          ) {
            return true;
          }
        }
        var maxScrollLeft = cursor.scrollWidth - cursor.clientWidth;
        if (maxScrollLeft > 0) {
          if (
            !(cursor.scrollLeft === 0 && deltaX < 0) &&
            !(cursor.scrollLeft === maxScrollLeft && deltaX > 0)
          ) {
            return true;
          }
        }
      }

      cursor = cursor.parentNode;
    }

    return false;
  }

  function mousewheelHandler(e) {
    var ref = getDeltaFromEvent(e);
    var deltaX = ref[0];
    var deltaY = ref[1];

    if (shouldBeConsumedByChild(e.target, deltaX, deltaY)) {
      return;
    }

    var shouldPrevent = false;
    if (!i.settings.useBothWheelAxes) {
      // deltaX will only be used for horizontal scrolling and deltaY will
      // only be used for vertical scrolling - this is the default
      element.scrollTop -= deltaY * i.settings.wheelSpeed;
      element.scrollLeft += deltaX * i.settings.wheelSpeed;
    } else if (i.scrollbarYActive && !i.scrollbarXActive) {
      // only vertical scrollbar is active and useBothWheelAxes option is
      // active, so let's scroll vertical bar using both mouse wheel axes
      if (deltaY) {
        element.scrollTop -= deltaY * i.settings.wheelSpeed;
      } else {
        element.scrollTop += deltaX * i.settings.wheelSpeed;
      }
      shouldPrevent = true;
    } else if (i.scrollbarXActive && !i.scrollbarYActive) {
      // useBothWheelAxes and only horizontal bar is active, so use both
      // wheel axes for horizontal bar
      if (deltaX) {
        element.scrollLeft += deltaX * i.settings.wheelSpeed;
      } else {
        element.scrollLeft -= deltaY * i.settings.wheelSpeed;
      }
      shouldPrevent = true;
    }

    updateGeometry(i);

    shouldPrevent = shouldPrevent || shouldPreventDefault(deltaX, deltaY);
    if (shouldPrevent && !e.ctrlKey) {
      e.stopPropagation();
      e.preventDefault();
    }
  }

  if (typeof window.onwheel !== 'undefined') {
    i.event.bind(element, 'wheel', mousewheelHandler);
  } else if (typeof window.onmousewheel !== 'undefined') {
    i.event.bind(element, 'mousewheel', mousewheelHandler);
  }
};

var touch = function(i) {
  if (!env.supportsTouch && !env.supportsIePointer) {
    return;
  }

  var element = i.element;

  function shouldPrevent(deltaX, deltaY) {
    var scrollTop = Math.floor(element.scrollTop);
    var scrollLeft = element.scrollLeft;
    var magnitudeX = Math.abs(deltaX);
    var magnitudeY = Math.abs(deltaY);

    if (magnitudeY > magnitudeX) {
      // user is perhaps trying to swipe up/down the page

      if (
        (deltaY < 0 && scrollTop === i.contentHeight - i.containerHeight) ||
        (deltaY > 0 && scrollTop === 0)
      ) {
        // set prevent for mobile Chrome refresh
        return window.scrollY === 0 && deltaY > 0 && env.isChrome;
      }
    } else if (magnitudeX > magnitudeY) {
      // user is perhaps trying to swipe left/right across the page

      if (
        (deltaX < 0 && scrollLeft === i.contentWidth - i.containerWidth) ||
        (deltaX > 0 && scrollLeft === 0)
      ) {
        return true;
      }
    }

    return true;
  }

  function applyTouchMove(differenceX, differenceY) {
    element.scrollTop -= differenceY;
    element.scrollLeft -= differenceX;

    updateGeometry(i);
  }

  var startOffset = {};
  var startTime = 0;
  var speed = {};
  var easingLoop = null;

  function getTouch(e) {
    if (e.targetTouches) {
      return e.targetTouches[0];
    } else {
      // Maybe IE pointer
      return e;
    }
  }

  function shouldHandle(e) {
    if (e.pointerType && e.pointerType === 'pen' && e.buttons === 0) {
      return false;
    }
    if (e.targetTouches && e.targetTouches.length === 1) {
      return true;
    }
    if (
      e.pointerType &&
      e.pointerType !== 'mouse' &&
      e.pointerType !== e.MSPOINTER_TYPE_MOUSE
    ) {
      return true;
    }
    return false;
  }

  function touchStart(e) {
    if (!shouldHandle(e)) {
      return;
    }

    var touch = getTouch(e);

    startOffset.pageX = touch.pageX;
    startOffset.pageY = touch.pageY;

    startTime = new Date().getTime();

    if (easingLoop !== null) {
      clearInterval(easingLoop);
    }
  }

  function shouldBeConsumedByChild(target, deltaX, deltaY) {
    if (!element.contains(target)) {
      return false;
    }

    var cursor = target;

    while (cursor && cursor !== element) {
      if (cursor.classList.contains(cls.element.consuming)) {
        return true;
      }

      var style = get(cursor);
      var overflow = [style.overflow, style.overflowX, style.overflowY].join(
        ''
      );

      // if scrollable
      if (overflow.match(/(scroll|auto)/)) {
        var maxScrollTop = cursor.scrollHeight - cursor.clientHeight;
        if (maxScrollTop > 0) {
          if (
            !(cursor.scrollTop === 0 && deltaY > 0) &&
            !(cursor.scrollTop === maxScrollTop && deltaY < 0)
          ) {
            return true;
          }
        }
        var maxScrollLeft = cursor.scrollLeft - cursor.clientWidth;
        if (maxScrollLeft > 0) {
          if (
            !(cursor.scrollLeft === 0 && deltaX < 0) &&
            !(cursor.scrollLeft === maxScrollLeft && deltaX > 0)
          ) {
            return true;
          }
        }
      }

      cursor = cursor.parentNode;
    }

    return false;
  }

  function touchMove(e) {
    if (shouldHandle(e)) {
      var touch = getTouch(e);

      var currentOffset = { pageX: touch.pageX, pageY: touch.pageY };

      var differenceX = currentOffset.pageX - startOffset.pageX;
      var differenceY = currentOffset.pageY - startOffset.pageY;

      if (shouldBeConsumedByChild(e.target, differenceX, differenceY)) {
        return;
      }

      applyTouchMove(differenceX, differenceY);
      startOffset = currentOffset;

      var currentTime = new Date().getTime();

      var timeGap = currentTime - startTime;
      if (timeGap > 0) {
        speed.x = differenceX / timeGap;
        speed.y = differenceY / timeGap;
        startTime = currentTime;
      }

      if (shouldPrevent(differenceX, differenceY)) {
        e.preventDefault();
      }
    }
  }
  function touchEnd() {
    if (i.settings.swipeEasing) {
      clearInterval(easingLoop);
      easingLoop = setInterval(function() {
        if (i.isInitialized) {
          clearInterval(easingLoop);
          return;
        }

        if (!speed.x && !speed.y) {
          clearInterval(easingLoop);
          return;
        }

        if (Math.abs(speed.x) < 0.01 && Math.abs(speed.y) < 0.01) {
          clearInterval(easingLoop);
          return;
        }

        applyTouchMove(speed.x * 30, speed.y * 30);

        speed.x *= 0.8;
        speed.y *= 0.8;
      }, 10);
    }
  }

  if (env.supportsTouch) {
    i.event.bind(element, 'touchstart', touchStart);
    i.event.bind(element, 'touchmove', touchMove);
    i.event.bind(element, 'touchend', touchEnd);
  } else if (env.supportsIePointer) {
    if (window.PointerEvent) {
      i.event.bind(element, 'pointerdown', touchStart);
      i.event.bind(element, 'pointermove', touchMove);
      i.event.bind(element, 'pointerup', touchEnd);
    } else if (window.MSPointerEvent) {
      i.event.bind(element, 'MSPointerDown', touchStart);
      i.event.bind(element, 'MSPointerMove', touchMove);
      i.event.bind(element, 'MSPointerUp', touchEnd);
    }
  }
};

var defaultSettings = function () { return ({
  handlers: ['click-rail', 'drag-thumb', 'keyboard', 'wheel', 'touch'],
  maxScrollbarLength: null,
  minScrollbarLength: null,
  scrollingThreshold: 1000,
  scrollXMarginOffset: 0,
  scrollYMarginOffset: 0,
  suppressScrollX: false,
  suppressScrollY: false,
  swipeEasing: true,
  useBothWheelAxes: false,
  wheelPropagation: true,
  wheelSpeed: 1,
}); };

var handlers = {
  'click-rail': clickRail,
  'drag-thumb': dragThumb,
  keyboard: keyboard,
  wheel: wheel,
  touch: touch,
};

var PerfectScrollbar = function PerfectScrollbar(element, userSettings) {
  var this$1 = this;
  if ( userSettings === void 0 ) userSettings = {};

  if (typeof element === 'string') {
    element = document.querySelector(element);
  }

  if (!element || !element.nodeName) {
    throw new Error('no element is specified to initialize PerfectScrollbar');
  }

  this.element = element;

  element.classList.add(cls.main);

  this.settings = defaultSettings();
  for (var key in userSettings) {
    this$1.settings[key] = userSettings[key];
  }

  this.containerWidth = null;
  this.containerHeight = null;
  this.contentWidth = null;
  this.contentHeight = null;

  var focus = function () { return element.classList.add(cls.state.focus); };
  var blur = function () { return element.classList.remove(cls.state.focus); };

  this.isRtl = get(element).direction === 'rtl';
  this.isNegativeScroll = (function () {
    var originalScrollLeft = element.scrollLeft;
    var result = null;
    element.scrollLeft = -1;
    result = element.scrollLeft < 0;
    element.scrollLeft = originalScrollLeft;
    return result;
  })();
  this.negativeScrollAdjustment = this.isNegativeScroll
    ? element.scrollWidth - element.clientWidth
    : 0;
  this.event = new EventManager();
  this.ownerDocument = element.ownerDocument || document;

  this.scrollbarXRail = div(cls.element.rail('x'));
  element.appendChild(this.scrollbarXRail);
  this.scrollbarX = div(cls.element.thumb('x'));
  this.scrollbarXRail.appendChild(this.scrollbarX);
  this.scrollbarX.setAttribute('tabindex', 0);
  this.event.bind(this.scrollbarX, 'focus', focus);
  this.event.bind(this.scrollbarX, 'blur', blur);
  this.scrollbarXActive = null;
  this.scrollbarXWidth = null;
  this.scrollbarXLeft = null;
  var railXStyle = get(this.scrollbarXRail);
  this.scrollbarXBottom = parseInt(railXStyle.bottom, 10);
  if (isNaN(this.scrollbarXBottom)) {
    this.isScrollbarXUsingBottom = false;
    this.scrollbarXTop = toInt(railXStyle.top);
  } else {
    this.isScrollbarXUsingBottom = true;
  }
  this.railBorderXWidth =
    toInt(railXStyle.borderLeftWidth) + toInt(railXStyle.borderRightWidth);
  // Set rail to display:block to calculate margins
  set(this.scrollbarXRail, { display: 'block' });
  this.railXMarginWidth =
    toInt(railXStyle.marginLeft) + toInt(railXStyle.marginRight);
  set(this.scrollbarXRail, { display: '' });
  this.railXWidth = null;
  this.railXRatio = null;

  this.scrollbarYRail = div(cls.element.rail('y'));
  element.appendChild(this.scrollbarYRail);
  this.scrollbarY = div(cls.element.thumb('y'));
  this.scrollbarYRail.appendChild(this.scrollbarY);
  this.scrollbarY.setAttribute('tabindex', 0);
  this.event.bind(this.scrollbarY, 'focus', focus);
  this.event.bind(this.scrollbarY, 'blur', blur);
  this.scrollbarYActive = null;
  this.scrollbarYHeight = null;
  this.scrollbarYTop = null;
  var railYStyle = get(this.scrollbarYRail);
  this.scrollbarYRight = parseInt(railYStyle.right, 10);
  if (isNaN(this.scrollbarYRight)) {
    this.isScrollbarYUsingRight = false;
    this.scrollbarYLeft = toInt(railYStyle.left);
  } else {
    this.isScrollbarYUsingRight = true;
  }
  this.scrollbarYOuterWidth = this.isRtl ? outerWidth(this.scrollbarY) : null;
  this.railBorderYWidth =
    toInt(railYStyle.borderTopWidth) + toInt(railYStyle.borderBottomWidth);
  set(this.scrollbarYRail, { display: 'block' });
  this.railYMarginHeight =
    toInt(railYStyle.marginTop) + toInt(railYStyle.marginBottom);
  set(this.scrollbarYRail, { display: '' });
  this.railYHeight = null;
  this.railYRatio = null;

  this.reach = {
    x:
      element.scrollLeft <= 0
        ? 'start'
        : element.scrollLeft >= this.contentWidth - this.containerWidth
          ? 'end'
          : null,
    y:
      element.scrollTop <= 0
        ? 'start'
        : element.scrollTop >= this.contentHeight - this.containerHeight
          ? 'end'
          : null,
  };

  this.isAlive = true;

  this.settings.handlers.forEach(function (handlerName) { return handlers[handlerName](this$1); });

  this.lastScrollTop = Math.floor(element.scrollTop); // for onScroll only
  this.lastScrollLeft = element.scrollLeft; // for onScroll only
  this.event.bind(this.element, 'scroll', function (e) { return this$1.onScroll(e); });
  updateGeometry(this);
};

PerfectScrollbar.prototype.update = function update () {
  if (!this.isAlive) {
    return;
  }

  // Recalcuate negative scrollLeft adjustment
  this.negativeScrollAdjustment = this.isNegativeScroll
    ? this.element.scrollWidth - this.element.clientWidth
    : 0;

  // Recalculate rail margins
  set(this.scrollbarXRail, { display: 'block' });
  set(this.scrollbarYRail, { display: 'block' });
  this.railXMarginWidth =
    toInt(get(this.scrollbarXRail).marginLeft) +
    toInt(get(this.scrollbarXRail).marginRight);
  this.railYMarginHeight =
    toInt(get(this.scrollbarYRail).marginTop) +
    toInt(get(this.scrollbarYRail).marginBottom);

  // Hide scrollbars not to affect scrollWidth and scrollHeight
  set(this.scrollbarXRail, { display: 'none' });
  set(this.scrollbarYRail, { display: 'none' });

  updateGeometry(this);

  processScrollDiff(this, 'top', 0, false, true);
  processScrollDiff(this, 'left', 0, false, true);

  set(this.scrollbarXRail, { display: '' });
  set(this.scrollbarYRail, { display: '' });
};

PerfectScrollbar.prototype.onScroll = function onScroll (e) {
  if (!this.isAlive) {
    return;
  }

  updateGeometry(this);
  processScrollDiff(this, 'top', this.element.scrollTop - this.lastScrollTop);
  processScrollDiff(
    this,
    'left',
    this.element.scrollLeft - this.lastScrollLeft
  );

  this.lastScrollTop = Math.floor(this.element.scrollTop);
  this.lastScrollLeft = this.element.scrollLeft;
};

PerfectScrollbar.prototype.destroy = function destroy () {
  if (!this.isAlive) {
    return;
  }

  this.event.unbindAll();
  remove(this.scrollbarX);
  remove(this.scrollbarY);
  remove(this.scrollbarXRail);
  remove(this.scrollbarYRail);
  this.removePsClasses();

  // unset elements
  this.element = null;
  this.scrollbarX = null;
  this.scrollbarY = null;
  this.scrollbarXRail = null;
  this.scrollbarYRail = null;

  this.isAlive = false;
};

PerfectScrollbar.prototype.removePsClasses = function removePsClasses () {
  this.element.className = this.element.className
    .split(' ')
    .filter(function (name) { return !name.match(/^ps([-_].+|)$/); })
    .join(' ');
};

return PerfectScrollbar;

})));
assets/lib/perfect-scrollbar/js/perfect-scrollbar.min.js000064400000043563151327220410017402 0ustar00/*!
 * perfect-scrollbar v1.4.0
 * (c) 2018 Hyunje Jun
 * @license MIT
 */
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):t.PerfectScrollbar=e()}(this,function(){"use strict";function t(t){return getComputedStyle(t)}function e(t,e){for(var i in e){var r=e[i];"number"==typeof r&&(r+="px"),t.style[i]=r}return t}function i(t){var e=document.createElement("div");return e.className=t,e}function r(t,e){if(!v)throw new Error("No element matching method supported");return v.call(t,e)}function l(t){t.remove?t.remove():t.parentNode&&t.parentNode.removeChild(t)}function n(t,e){return Array.prototype.filter.call(t.children,function(t){return r(t,e)})}function o(t,e){var i=t.element.classList,r=m.state.scrolling(e);i.contains(r)?clearTimeout(Y[e]):i.add(r)}function s(t,e){Y[e]=setTimeout(function(){return t.isAlive&&t.element.classList.remove(m.state.scrolling(e))},t.settings.scrollingThreshold)}function a(t,e){o(t,e),s(t,e)}function c(t){if("function"==typeof window.CustomEvent)return new CustomEvent(t);var e=document.createEvent("CustomEvent");return e.initCustomEvent(t,!1,!1,void 0),e}function h(t,e,i,r,l){var n=i[0],o=i[1],s=i[2],h=i[3],u=i[4],d=i[5];void 0===r&&(r=!0),void 0===l&&(l=!1);var f=t.element;t.reach[h]=null,f[s]<1&&(t.reach[h]="start"),f[s]>t[n]-t[o]-1&&(t.reach[h]="end"),e&&(f.dispatchEvent(c("ps-scroll-"+h)),e<0?f.dispatchEvent(c("ps-scroll-"+u)):e>0&&f.dispatchEvent(c("ps-scroll-"+d)),r&&a(t,h)),t.reach[h]&&(e||l)&&f.dispatchEvent(c("ps-"+h+"-reach-"+t.reach[h]))}function u(t){return parseInt(t,10)||0}function d(t){return r(t,"input,[contenteditable]")||r(t,"select,[contenteditable]")||r(t,"textarea,[contenteditable]")||r(t,"button,[contenteditable]")}function f(e){var i=t(e);return u(i.width)+u(i.paddingLeft)+u(i.paddingRight)+u(i.borderLeftWidth)+u(i.borderRightWidth)}function p(t,e){return t.settings.minScrollbarLength&&(e=Math.max(e,t.settings.minScrollbarLength)),t.settings.maxScrollbarLength&&(e=Math.min(e,t.settings.maxScrollbarLength)),e}function b(t,i){var r={width:i.railXWidth},l=Math.floor(t.scrollTop);i.isRtl?r.left=i.negativeScrollAdjustment+t.scrollLeft+i.containerWidth-i.contentWidth:r.left=t.scrollLeft,i.isScrollbarXUsingBottom?r.bottom=i.scrollbarXBottom-l:r.top=i.scrollbarXTop+l,e(i.scrollbarXRail,r);var n={top:l,height:i.railYHeight};i.isScrollbarYUsingRight?i.isRtl?n.right=i.contentWidth-(i.negativeScrollAdjustment+t.scrollLeft)-i.scrollbarYRight-i.scrollbarYOuterWidth:n.right=i.scrollbarYRight-t.scrollLeft:i.isRtl?n.left=i.negativeScrollAdjustment+t.scrollLeft+2*i.containerWidth-i.contentWidth-i.scrollbarYLeft-i.scrollbarYOuterWidth:n.left=i.scrollbarYLeft+t.scrollLeft,e(i.scrollbarYRail,n),e(i.scrollbarX,{left:i.scrollbarXLeft,width:i.scrollbarXWidth-i.railBorderXWidth}),e(i.scrollbarY,{top:i.scrollbarYTop,height:i.scrollbarYHeight-i.railBorderYWidth})}function g(t,e){function i(e){b[d]=g+Y*(e[a]-v),o(t,f),R(t),e.stopPropagation(),e.preventDefault()}function r(){s(t,f),t[p].classList.remove(m.state.clicking),t.event.unbind(t.ownerDocument,"mousemove",i)}var l=e[0],n=e[1],a=e[2],c=e[3],h=e[4],u=e[5],d=e[6],f=e[7],p=e[8],b=t.element,g=null,v=null,Y=null;t.event.bind(t[h],"mousedown",function(e){g=b[d],v=e[a],Y=(t[n]-t[l])/(t[c]-t[u]),t.event.bind(t.ownerDocument,"mousemove",i),t.event.once(t.ownerDocument,"mouseup",r),t[p].classList.add(m.state.clicking),e.stopPropagation(),e.preventDefault()})}var v="undefined"!=typeof Element&&(Element.prototype.matches||Element.prototype.webkitMatchesSelector||Element.prototype.mozMatchesSelector||Element.prototype.msMatchesSelector),m={main:"ps",element:{thumb:function(t){return"ps__thumb-"+t},rail:function(t){return"ps__rail-"+t},consuming:"ps__child--consume"},state:{focus:"ps--focus",clicking:"ps--clicking",active:function(t){return"ps--active-"+t},scrolling:function(t){return"ps--scrolling-"+t}}},Y={x:null,y:null},X=function(t){this.element=t,this.handlers={}},w={isEmpty:{configurable:!0}};X.prototype.bind=function(t,e){void 0===this.handlers[t]&&(this.handlers[t]=[]),this.handlers[t].push(e),this.element.addEventListener(t,e,!1)},X.prototype.unbind=function(t,e){var i=this;this.handlers[t]=this.handlers[t].filter(function(r){return!(!e||r===e)||(i.element.removeEventListener(t,r,!1),!1)})},X.prototype.unbindAll=function(){var t=this;for(var e in t.handlers)t.unbind(e)},w.isEmpty.get=function(){var t=this;return Object.keys(this.handlers).every(function(e){return 0===t.handlers[e].length})},Object.defineProperties(X.prototype,w);var y=function(){this.eventElements=[]};y.prototype.eventElement=function(t){var e=this.eventElements.filter(function(e){return e.element===t})[0];return e||(e=new X(t),this.eventElements.push(e)),e},y.prototype.bind=function(t,e,i){this.eventElement(t).bind(e,i)},y.prototype.unbind=function(t,e,i){var r=this.eventElement(t);r.unbind(e,i),r.isEmpty&&this.eventElements.splice(this.eventElements.indexOf(r),1)},y.prototype.unbindAll=function(){this.eventElements.forEach(function(t){return t.unbindAll()}),this.eventElements=[]},y.prototype.once=function(t,e,i){var r=this.eventElement(t),l=function(t){r.unbind(e,l),i(t)};r.bind(e,l)};var W=function(t,e,i,r,l){void 0===r&&(r=!0),void 0===l&&(l=!1);var n;if("top"===e)n=["contentHeight","containerHeight","scrollTop","y","up","down"];else{if("left"!==e)throw new Error("A proper axis should be provided");n=["contentWidth","containerWidth","scrollLeft","x","left","right"]}h(t,i,n,r,l)},L={isWebKit:"undefined"!=typeof document&&"WebkitAppearance"in document.documentElement.style,supportsTouch:"undefined"!=typeof window&&("ontouchstart"in window||window.DocumentTouch&&document instanceof window.DocumentTouch),supportsIePointer:"undefined"!=typeof navigator&&navigator.msMaxTouchPoints,isChrome:"undefined"!=typeof navigator&&/Chrome/i.test(navigator&&navigator.userAgent)},R=function(t){var e=t.element,i=Math.floor(e.scrollTop);t.containerWidth=e.clientWidth,t.containerHeight=e.clientHeight,t.contentWidth=e.scrollWidth,t.contentHeight=e.scrollHeight,e.contains(t.scrollbarXRail)||(n(e,m.element.rail("x")).forEach(function(t){return l(t)}),e.appendChild(t.scrollbarXRail)),e.contains(t.scrollbarYRail)||(n(e,m.element.rail("y")).forEach(function(t){return l(t)}),e.appendChild(t.scrollbarYRail)),!t.settings.suppressScrollX&&t.containerWidth+t.settings.scrollXMarginOffset<t.contentWidth?(t.scrollbarXActive=!0,t.railXWidth=t.containerWidth-t.railXMarginWidth,t.railXRatio=t.containerWidth/t.railXWidth,t.scrollbarXWidth=p(t,u(t.railXWidth*t.containerWidth/t.contentWidth)),t.scrollbarXLeft=u((t.negativeScrollAdjustment+e.scrollLeft)*(t.railXWidth-t.scrollbarXWidth)/(t.contentWidth-t.containerWidth))):t.scrollbarXActive=!1,!t.settings.suppressScrollY&&t.containerHeight+t.settings.scrollYMarginOffset<t.contentHeight?(t.scrollbarYActive=!0,t.railYHeight=t.containerHeight-t.railYMarginHeight,t.railYRatio=t.containerHeight/t.railYHeight,t.scrollbarYHeight=p(t,u(t.railYHeight*t.containerHeight/t.contentHeight)),t.scrollbarYTop=u(i*(t.railYHeight-t.scrollbarYHeight)/(t.contentHeight-t.containerHeight))):t.scrollbarYActive=!1,t.scrollbarXLeft>=t.railXWidth-t.scrollbarXWidth&&(t.scrollbarXLeft=t.railXWidth-t.scrollbarXWidth),t.scrollbarYTop>=t.railYHeight-t.scrollbarYHeight&&(t.scrollbarYTop=t.railYHeight-t.scrollbarYHeight),b(e,t),t.scrollbarXActive?e.classList.add(m.state.active("x")):(e.classList.remove(m.state.active("x")),t.scrollbarXWidth=0,t.scrollbarXLeft=0,e.scrollLeft=0),t.scrollbarYActive?e.classList.add(m.state.active("y")):(e.classList.remove(m.state.active("y")),t.scrollbarYHeight=0,t.scrollbarYTop=0,e.scrollTop=0)},T={"click-rail":function(t){t.event.bind(t.scrollbarY,"mousedown",function(t){return t.stopPropagation()}),t.event.bind(t.scrollbarYRail,"mousedown",function(e){var i=e.pageY-window.pageYOffset-t.scrollbarYRail.getBoundingClientRect().top>t.scrollbarYTop?1:-1;t.element.scrollTop+=i*t.containerHeight,R(t),e.stopPropagation()}),t.event.bind(t.scrollbarX,"mousedown",function(t){return t.stopPropagation()}),t.event.bind(t.scrollbarXRail,"mousedown",function(e){var i=e.pageX-window.pageXOffset-t.scrollbarXRail.getBoundingClientRect().left>t.scrollbarXLeft?1:-1;t.element.scrollLeft+=i*t.containerWidth,R(t),e.stopPropagation()})},"drag-thumb":function(t){g(t,["containerWidth","contentWidth","pageX","railXWidth","scrollbarX","scrollbarXWidth","scrollLeft","x","scrollbarXRail"]),g(t,["containerHeight","contentHeight","pageY","railYHeight","scrollbarY","scrollbarYHeight","scrollTop","y","scrollbarYRail"])},keyboard:function(t){function e(e,r){var l=Math.floor(i.scrollTop);if(0===e){if(!t.scrollbarYActive)return!1;if(0===l&&r>0||l>=t.contentHeight-t.containerHeight&&r<0)return!t.settings.wheelPropagation}var n=i.scrollLeft;if(0===r){if(!t.scrollbarXActive)return!1;if(0===n&&e<0||n>=t.contentWidth-t.containerWidth&&e>0)return!t.settings.wheelPropagation}return!0}var i=t.element,l=function(){return r(i,":hover")},n=function(){return r(t.scrollbarX,":focus")||r(t.scrollbarY,":focus")};t.event.bind(t.ownerDocument,"keydown",function(r){if(!(r.isDefaultPrevented&&r.isDefaultPrevented()||r.defaultPrevented)&&(l()||n())){var o=document.activeElement?document.activeElement:t.ownerDocument.activeElement;if(o){if("IFRAME"===o.tagName)o=o.contentDocument.activeElement;else for(;o.shadowRoot;)o=o.shadowRoot.activeElement;if(d(o))return}var s=0,a=0;switch(r.which){case 37:s=r.metaKey?-t.contentWidth:r.altKey?-t.containerWidth:-30;break;case 38:a=r.metaKey?t.contentHeight:r.altKey?t.containerHeight:30;break;case 39:s=r.metaKey?t.contentWidth:r.altKey?t.containerWidth:30;break;case 40:a=r.metaKey?-t.contentHeight:r.altKey?-t.containerHeight:-30;break;case 32:a=r.shiftKey?t.containerHeight:-t.containerHeight;break;case 33:a=t.containerHeight;break;case 34:a=-t.containerHeight;break;case 36:a=t.contentHeight;break;case 35:a=-t.contentHeight;break;default:return}t.settings.suppressScrollX&&0!==s||t.settings.suppressScrollY&&0!==a||(i.scrollTop-=a,i.scrollLeft+=s,R(t),e(s,a)&&r.preventDefault())}})},wheel:function(e){function i(t,i){var r=Math.floor(o.scrollTop),l=0===o.scrollTop,n=r+o.offsetHeight===o.scrollHeight,s=0===o.scrollLeft,a=o.scrollLeft+o.offsetWidth===o.scrollWidth;return!(Math.abs(i)>Math.abs(t)?l||n:s||a)||!e.settings.wheelPropagation}function r(t){var e=t.deltaX,i=-1*t.deltaY;return void 0!==e&&void 0!==i||(e=-1*t.wheelDeltaX/6,i=t.wheelDeltaY/6),t.deltaMode&&1===t.deltaMode&&(e*=10,i*=10),e!==e&&i!==i&&(e=0,i=t.wheelDelta),t.shiftKey?[-i,-e]:[e,i]}function l(e,i,r){if(!L.isWebKit&&o.querySelector("select:focus"))return!0;if(!o.contains(e))return!1;for(var l=e;l&&l!==o;){if(l.classList.contains(m.element.consuming))return!0;var n=t(l);if([n.overflow,n.overflowX,n.overflowY].join("").match(/(scroll|auto)/)){var s=l.scrollHeight-l.clientHeight;if(s>0&&!(0===l.scrollTop&&r>0||l.scrollTop===s&&r<0))return!0;var a=l.scrollWidth-l.clientWidth;if(a>0&&!(0===l.scrollLeft&&i<0||l.scrollLeft===a&&i>0))return!0}l=l.parentNode}return!1}function n(t){var n=r(t),s=n[0],a=n[1];if(!l(t.target,s,a)){var c=!1;e.settings.useBothWheelAxes?e.scrollbarYActive&&!e.scrollbarXActive?(a?o.scrollTop-=a*e.settings.wheelSpeed:o.scrollTop+=s*e.settings.wheelSpeed,c=!0):e.scrollbarXActive&&!e.scrollbarYActive&&(s?o.scrollLeft+=s*e.settings.wheelSpeed:o.scrollLeft-=a*e.settings.wheelSpeed,c=!0):(o.scrollTop-=a*e.settings.wheelSpeed,o.scrollLeft+=s*e.settings.wheelSpeed),R(e),(c=c||i(s,a))&&!t.ctrlKey&&(t.stopPropagation(),t.preventDefault())}}var o=e.element;void 0!==window.onwheel?e.event.bind(o,"wheel",n):void 0!==window.onmousewheel&&e.event.bind(o,"mousewheel",n)},touch:function(e){function i(t,i){var r=Math.floor(h.scrollTop),l=h.scrollLeft,n=Math.abs(t),o=Math.abs(i);if(o>n){if(i<0&&r===e.contentHeight-e.containerHeight||i>0&&0===r)return 0===window.scrollY&&i>0&&L.isChrome}else if(n>o&&(t<0&&l===e.contentWidth-e.containerWidth||t>0&&0===l))return!0;return!0}function r(t,i){h.scrollTop-=i,h.scrollLeft-=t,R(e)}function l(t){return t.targetTouches?t.targetTouches[0]:t}function n(t){return!(t.pointerType&&"pen"===t.pointerType&&0===t.buttons||(!t.targetTouches||1!==t.targetTouches.length)&&(!t.pointerType||"mouse"===t.pointerType||t.pointerType===t.MSPOINTER_TYPE_MOUSE))}function o(t){if(n(t)){var e=l(t);u.pageX=e.pageX,u.pageY=e.pageY,d=(new Date).getTime(),null!==p&&clearInterval(p)}}function s(e,i,r){if(!h.contains(e))return!1;for(var l=e;l&&l!==h;){if(l.classList.contains(m.element.consuming))return!0;var n=t(l);if([n.overflow,n.overflowX,n.overflowY].join("").match(/(scroll|auto)/)){var o=l.scrollHeight-l.clientHeight;if(o>0&&!(0===l.scrollTop&&r>0||l.scrollTop===o&&r<0))return!0;var s=l.scrollLeft-l.clientWidth;if(s>0&&!(0===l.scrollLeft&&i<0||l.scrollLeft===s&&i>0))return!0}l=l.parentNode}return!1}function a(t){if(n(t)){var e=l(t),o={pageX:e.pageX,pageY:e.pageY},a=o.pageX-u.pageX,c=o.pageY-u.pageY;if(s(t.target,a,c))return;r(a,c),u=o;var h=(new Date).getTime(),p=h-d;p>0&&(f.x=a/p,f.y=c/p,d=h),i(a,c)&&t.preventDefault()}}function c(){e.settings.swipeEasing&&(clearInterval(p),p=setInterval(function(){e.isInitialized?clearInterval(p):f.x||f.y?Math.abs(f.x)<.01&&Math.abs(f.y)<.01?clearInterval(p):(r(30*f.x,30*f.y),f.x*=.8,f.y*=.8):clearInterval(p)},10))}if(L.supportsTouch||L.supportsIePointer){var h=e.element,u={},d=0,f={},p=null;L.supportsTouch?(e.event.bind(h,"touchstart",o),e.event.bind(h,"touchmove",a),e.event.bind(h,"touchend",c)):L.supportsIePointer&&(window.PointerEvent?(e.event.bind(h,"pointerdown",o),e.event.bind(h,"pointermove",a),e.event.bind(h,"pointerup",c)):window.MSPointerEvent&&(e.event.bind(h,"MSPointerDown",o),e.event.bind(h,"MSPointerMove",a),e.event.bind(h,"MSPointerUp",c)))}}},H=function(r,l){var n=this;if(void 0===l&&(l={}),"string"==typeof r&&(r=document.querySelector(r)),!r||!r.nodeName)throw new Error("no element is specified to initialize PerfectScrollbar");this.element=r,r.classList.add(m.main),this.settings={handlers:["click-rail","drag-thumb","keyboard","wheel","touch"],maxScrollbarLength:null,minScrollbarLength:null,scrollingThreshold:1e3,scrollXMarginOffset:0,scrollYMarginOffset:0,suppressScrollX:!1,suppressScrollY:!1,swipeEasing:!0,useBothWheelAxes:!1,wheelPropagation:!0,wheelSpeed:1};for(var o in l)n.settings[o]=l[o];this.containerWidth=null,this.containerHeight=null,this.contentWidth=null,this.contentHeight=null;var s=function(){return r.classList.add(m.state.focus)},a=function(){return r.classList.remove(m.state.focus)};this.isRtl="rtl"===t(r).direction,this.isNegativeScroll=function(){var t=r.scrollLeft,e=null;return r.scrollLeft=-1,e=r.scrollLeft<0,r.scrollLeft=t,e}(),this.negativeScrollAdjustment=this.isNegativeScroll?r.scrollWidth-r.clientWidth:0,this.event=new y,this.ownerDocument=r.ownerDocument||document,this.scrollbarXRail=i(m.element.rail("x")),r.appendChild(this.scrollbarXRail),this.scrollbarX=i(m.element.thumb("x")),this.scrollbarXRail.appendChild(this.scrollbarX),this.scrollbarX.setAttribute("tabindex",0),this.event.bind(this.scrollbarX,"focus",s),this.event.bind(this.scrollbarX,"blur",a),this.scrollbarXActive=null,this.scrollbarXWidth=null,this.scrollbarXLeft=null;var c=t(this.scrollbarXRail);this.scrollbarXBottom=parseInt(c.bottom,10),isNaN(this.scrollbarXBottom)?(this.isScrollbarXUsingBottom=!1,this.scrollbarXTop=u(c.top)):this.isScrollbarXUsingBottom=!0,this.railBorderXWidth=u(c.borderLeftWidth)+u(c.borderRightWidth),e(this.scrollbarXRail,{display:"block"}),this.railXMarginWidth=u(c.marginLeft)+u(c.marginRight),e(this.scrollbarXRail,{display:""}),this.railXWidth=null,this.railXRatio=null,this.scrollbarYRail=i(m.element.rail("y")),r.appendChild(this.scrollbarYRail),this.scrollbarY=i(m.element.thumb("y")),this.scrollbarYRail.appendChild(this.scrollbarY),this.scrollbarY.setAttribute("tabindex",0),this.event.bind(this.scrollbarY,"focus",s),this.event.bind(this.scrollbarY,"blur",a),this.scrollbarYActive=null,this.scrollbarYHeight=null,this.scrollbarYTop=null;var h=t(this.scrollbarYRail);this.scrollbarYRight=parseInt(h.right,10),isNaN(this.scrollbarYRight)?(this.isScrollbarYUsingRight=!1,this.scrollbarYLeft=u(h.left)):this.isScrollbarYUsingRight=!0,this.scrollbarYOuterWidth=this.isRtl?f(this.scrollbarY):null,this.railBorderYWidth=u(h.borderTopWidth)+u(h.borderBottomWidth),e(this.scrollbarYRail,{display:"block"}),this.railYMarginHeight=u(h.marginTop)+u(h.marginBottom),e(this.scrollbarYRail,{display:""}),this.railYHeight=null,this.railYRatio=null,this.reach={x:r.scrollLeft<=0?"start":r.scrollLeft>=this.contentWidth-this.containerWidth?"end":null,y:r.scrollTop<=0?"start":r.scrollTop>=this.contentHeight-this.containerHeight?"end":null},this.isAlive=!0,this.settings.handlers.forEach(function(t){return T[t](n)}),this.lastScrollTop=Math.floor(r.scrollTop),this.lastScrollLeft=r.scrollLeft,this.event.bind(this.element,"scroll",function(t){return n.onScroll(t)}),R(this)};return H.prototype.update=function(){this.isAlive&&(this.negativeScrollAdjustment=this.isNegativeScroll?this.element.scrollWidth-this.element.clientWidth:0,e(this.scrollbarXRail,{display:"block"}),e(this.scrollbarYRail,{display:"block"}),this.railXMarginWidth=u(t(this.scrollbarXRail).marginLeft)+u(t(this.scrollbarXRail).marginRight),this.railYMarginHeight=u(t(this.scrollbarYRail).marginTop)+u(t(this.scrollbarYRail).marginBottom),e(this.scrollbarXRail,{display:"none"}),e(this.scrollbarYRail,{display:"none"}),R(this),W(this,"top",0,!1,!0),W(this,"left",0,!1,!0),e(this.scrollbarXRail,{display:""}),e(this.scrollbarYRail,{display:""}))},H.prototype.onScroll=function(t){this.isAlive&&(R(this),W(this,"top",this.element.scrollTop-this.lastScrollTop),W(this,"left",this.element.scrollLeft-this.lastScrollLeft),this.lastScrollTop=Math.floor(this.element.scrollTop),this.lastScrollLeft=this.element.scrollLeft)},H.prototype.destroy=function(){this.isAlive&&(this.event.unbindAll(),l(this.scrollbarX),l(this.scrollbarY),l(this.scrollbarXRail),l(this.scrollbarYRail),this.removePsClasses(),this.element=null,this.scrollbarX=null,this.scrollbarY=null,this.scrollbarXRail=null,this.scrollbarYRail=null,this.isAlive=!1)},H.prototype.removePsClasses=function(){this.element.className=this.element.className.split(" ").filter(function(t){return!t.match(/^ps([-_].+|)$/)}).join(" ")},H});assets/lib/slick/slick.js000064400000206676151327220410011402 0ustar00/*
     _ _      _       _
 ___| (_) ___| | __  (_)___
/ __| | |/ __| |/ /  | / __|
\__ \ | | (__|   < _ | \__ \
|___/_|_|\___|_|\_(_)/ |___/
                   |__/

 Version: 1.8.1
  Author: Ken Wheeler
 Website: http://kenwheeler.github.io
    Docs: http://kenwheeler.github.io/slick
    Repo: http://github.com/kenwheeler/slick
  Issues: http://github.com/kenwheeler/slick/issues

 */
/* global window, document, define, jQuery, setInterval, clearInterval */
;(function(factory) {
	'use strict';
	if (typeof define === 'function' && define.amd) {
		define(['jquery'], factory);
	} else if (typeof exports !== 'undefined') {
		module.exports = factory(require('jquery'));
	} else {
		factory(jQuery);
	}

}(function($) {
	'use strict';
	var Slick = window.Slick || {};

	Slick = (function() {

		var instanceUid = 0;

		function Slick(element, settings) {

			var _ = this, dataSettings;

			_.defaults = {
				accessibility: true,
				adaptiveHeight: false,
				appendArrows: $(element),
				appendDots: $(element),
				arrows: true,
				asNavFor: null,
				prevArrow: '<button class="slick-prev" aria-label="Previous" type="button">Previous</button>',
				nextArrow: '<button class="slick-next" aria-label="Next" type="button">Next</button>',
				autoplay: false,
				autoplaySpeed: 3000,
				centerMode: false,
				centerPadding: '50px',
				cssEase: 'ease',
				customPaging: function(slider, i) {
					return $('<button type="button" />').text(i + 1);
				},
				dots: false,
				dotsClass: 'slick-dots',
				draggable: true,
				easing: 'linear',
				edgeFriction: 0.35,
				fade: false,
				focusOnSelect: false,
				focusOnChange: false,
				infinite: true,
				initialSlide: 0,
				lazyLoad: 'ondemand',
				mobileFirst: false,
				pauseOnHover: true,
				pauseOnFocus: true,
				pauseOnDotsHover: false,
				respondTo: 'window',
				responsive: null,
				rows: 1,
				rtl: false,
				slide: '',
				slidesPerRow: 1,
				slidesToShow: 1,
				slidesToScroll: 1,
				speed: 500,
				swipe: true,
				swipeToSlide: false,
				touchMove: true,
				touchThreshold: 5,
				useCSS: true,
				useTransform: true,
				variableWidth: false,
				vertical: false,
				verticalSwiping: false,
				waitForAnimate: true,
				zIndex: 1000
			};

			_.initials = {
				animating: false,
				dragging: false,
				autoPlayTimer: null,
				currentDirection: 0,
				currentLeft: null,
				currentSlide: 0,
				direction: 1,
				$dots: null,
				listWidth: null,
				listHeight: null,
				loadIndex: 0,
				$nextArrow: null,
				$prevArrow: null,
				scrolling: false,
				slideCount: null,
				slideWidth: null,
				$slideTrack: null,
				$slides: null,
				sliding: false,
				slideOffset: 0,
				swipeLeft: null,
				swiping: false,
				$list: null,
				touchObject: {},
				transformsEnabled: false,
				unslicked: false
			};

			$.extend(_, _.initials);

			_.activeBreakpoint = null;
			_.animType = null;
			_.animProp = null;
			_.breakpoints = [];
			_.breakpointSettings = [];
			_.cssTransitions = false;
			_.focussed = false;
			_.interrupted = false;
			_.hidden = 'hidden';
			_.paused = true;
			_.positionProp = null;
			_.respondTo = null;
			_.rowCount = 1;
			_.shouldClick = true;
			_.$slider = $(element);
			_.$slidesCache = null;
			_.transformType = null;
			_.transitionType = null;
			_.visibilityChange = 'visibilitychange';
			_.windowWidth = 0;
			_.windowTimer = null;

			dataSettings = $(element).data('slick') || {};

			_.options = $.extend({}, _.defaults, settings, dataSettings);

			_.currentSlide = _.options.initialSlide;

			_.originalSettings = _.options;

			if (typeof document.mozHidden !== 'undefined') {
				_.hidden = 'mozHidden';
				_.visibilityChange = 'mozvisibilitychange';
			} else if (typeof document.webkitHidden !== 'undefined') {
				_.hidden = 'webkitHidden';
				_.visibilityChange = 'webkitvisibilitychange';
			}

			_.autoPlay = $.proxy(_.autoPlay, _);
			_.autoPlayClear = $.proxy(_.autoPlayClear, _);
			_.autoPlayIterator = $.proxy(_.autoPlayIterator, _);
			_.changeSlide = $.proxy(_.changeSlide, _);
			_.clickHandler = $.proxy(_.clickHandler, _);
			_.selectHandler = $.proxy(_.selectHandler, _);
			_.setPosition = $.proxy(_.setPosition, _);
			_.swipeHandler = $.proxy(_.swipeHandler, _);
			_.dragHandler = $.proxy(_.dragHandler, _);
			_.keyHandler = $.proxy(_.keyHandler, _);

			_.instanceUid = instanceUid++;

			// A simple way to check for HTML strings
			// Strict HTML recognition (must start with <)
			// Extracted from jQuery v1.11 source
			_.htmlExpr = /^(?:\s*(<[\w\W]+>)[^>]*)$/;


			_.registerBreakpoints();
			_.init(true);

		}

		return Slick;

	}());

	Slick.prototype.activateADA = function() {
		var _ = this;

		_.$slideTrack.find('.slick-active').attr({
			'aria-hidden': 'false'
		}).find('a, input, button, select').attr({
			'tabindex': '0'
		});

	};

	Slick.prototype.addSlide = Slick.prototype.slickAdd = function(markup, index, addBefore) {

		var _ = this;

		if (typeof(index) === 'boolean') {
			addBefore = index;
			index = null;
		} else if (index < 0 || (index >= _.slideCount)) {
			return false;
		}

		_.unload();

		if (typeof(index) === 'number') {
			if (index === 0 && _.$slides.length === 0) {
				$(markup).appendTo(_.$slideTrack);
			} else if (addBefore) {
				$(markup).insertBefore(_.$slides.eq(index));
			} else {
				$(markup).insertAfter(_.$slides.eq(index));
			}
		} else {
			if (addBefore === true) {
				$(markup).prependTo(_.$slideTrack);
			} else {
				$(markup).appendTo(_.$slideTrack);
			}
		}

		_.$slides = _.$slideTrack.children(this.options.slide);

		_.$slideTrack.children(this.options.slide).detach();

		_.$slideTrack.append(_.$slides);

		_.$slides.each(function(index, element) {
			$(element).attr('data-slick-index', index);
		});

		_.$slidesCache = _.$slides;

		_.reinit();

	};

	Slick.prototype.animateHeight = function() {
		var _ = this;
		if (_.options.slidesToShow === 1 && _.options.adaptiveHeight === true && _.options.vertical === false) {
			var targetHeight = _.$slides.eq(_.currentSlide).outerHeight(true);
			_.$list.animate({
				height: targetHeight
			}, _.options.speed);
		}
	};

	Slick.prototype.animateSlide = function(targetLeft, callback) {

		var animProps = {},
			_ = this;

		_.animateHeight();

		if (_.options.rtl === true && _.options.vertical === false) {
			targetLeft = -targetLeft;
		}
		if (_.transformsEnabled === false) {
			if (_.options.vertical === false) {
				_.$slideTrack.animate({
					left: targetLeft
				}, _.options.speed, _.options.easing, callback);
			} else {
				_.$slideTrack.animate({
					top: targetLeft
				}, _.options.speed, _.options.easing, callback);
			}

		} else {

			if (_.cssTransitions === false) {
				if (_.options.rtl === true) {
					_.currentLeft = -(_.currentLeft);
				}
				$({
					animStart: _.currentLeft
				}).animate({
					animStart: targetLeft
				}, {
					duration: _.options.speed,
					easing: _.options.easing,
					step: function(now) {
						now = Math.ceil(now);
						if (_.options.vertical === false) {
							animProps[_.animType] = 'translate(' +
								now + 'px, 0px)';
							_.$slideTrack.css(animProps);
						} else {
							animProps[_.animType] = 'translate(0px,' +
								now + 'px)';
							_.$slideTrack.css(animProps);
						}
					},
					complete: function() {
						if (callback) {
							callback.call();
						}
					}
				});

			} else {

				_.applyTransition();
				targetLeft = Math.ceil(targetLeft);

				if (_.options.vertical === false) {
					animProps[_.animType] = 'translate3d(' + targetLeft + 'px, 0px, 0px)';
				} else {
					animProps[_.animType] = 'translate3d(0px,' + targetLeft + 'px, 0px)';
				}
				_.$slideTrack.css(animProps);

				if (callback) {
					setTimeout(function() {

						_.disableTransition();

						callback.call();
					}, _.options.speed);
				}

			}

		}

	};

	Slick.prototype.getNavTarget = function() {

		var _ = this,
			asNavFor = _.options.asNavFor;

		if ( asNavFor && asNavFor !== null ) {
			asNavFor = $(asNavFor).not(_.$slider);
		}

		return asNavFor;

	};

	Slick.prototype.asNavFor = function(index) {

		var _ = this,
			asNavFor = _.getNavTarget();

		if ( asNavFor !== null && typeof asNavFor === 'object' ) {
			asNavFor.each(function() {
				var target = $(this).slick('getSlick');
				if(!target.unslicked) {
					target.slideHandler(index, true);
				}
			});
		}

	};

	Slick.prototype.applyTransition = function(slide) {

		var _ = this,
			transition = {};

		if (_.options.fade === false) {
			transition[_.transitionType] = _.transformType + ' ' + _.options.speed + 'ms ' + _.options.cssEase;
		} else {
			transition[_.transitionType] = 'opacity ' + _.options.speed + 'ms ' + _.options.cssEase;
		}

		if (_.options.fade === false) {
			_.$slideTrack.css(transition);
		} else {
			_.$slides.eq(slide).css(transition);
		}

	};

	Slick.prototype.autoPlay = function() {

		var _ = this;

		_.autoPlayClear();

		if ( _.slideCount > _.options.slidesToShow ) {
			_.autoPlayTimer = setInterval( _.autoPlayIterator, _.options.autoplaySpeed );
		}

	};

	Slick.prototype.autoPlayClear = function() {

		var _ = this;

		if (_.autoPlayTimer) {
			clearInterval(_.autoPlayTimer);
		}

	};

	Slick.prototype.autoPlayIterator = function() {

		var _ = this,
			slideTo = _.currentSlide + _.options.slidesToScroll;

		if ( !_.paused && !_.interrupted && !_.focussed ) {

			if ( _.options.infinite === false ) {

				if ( _.direction === 1 && ( _.currentSlide + 1 ) === ( _.slideCount - 1 )) {
					_.direction = 0;
				}

				else if ( _.direction === 0 ) {

					slideTo = _.currentSlide - _.options.slidesToScroll;

					if ( _.currentSlide - 1 === 0 ) {
						_.direction = 1;
					}

				}

			}

			_.slideHandler( slideTo );

		}

	};

	Slick.prototype.buildArrows = function() {

		var _ = this;

		if (_.options.arrows === true ) {

			_.$prevArrow = $(_.options.prevArrow).addClass('slick-arrow');
			_.$nextArrow = $(_.options.nextArrow).addClass('slick-arrow');

			if( _.slideCount > _.options.slidesToShow ) {

				_.$prevArrow.removeClass('slick-hidden').removeAttr('aria-hidden tabindex');
				_.$nextArrow.removeClass('slick-hidden').removeAttr('aria-hidden tabindex');

				if (_.htmlExpr.test(_.options.prevArrow)) {
					_.$prevArrow.prependTo(_.options.appendArrows);
				}

				if (_.htmlExpr.test(_.options.nextArrow)) {
					_.$nextArrow.appendTo(_.options.appendArrows);
				}

				if (_.options.infinite !== true) {
					_.$prevArrow
						.addClass('slick-disabled')
						.attr('aria-disabled', 'true');
				}

			} else {

				_.$prevArrow.add( _.$nextArrow )

					.addClass('slick-hidden')
					.attr({
						'aria-disabled': 'true',
						'tabindex': '-1'
					});

			}

		}

	};

	Slick.prototype.buildDots = function() {

		var _ = this,
			i, dot;

		if (_.options.dots === true && _.slideCount > _.options.slidesToShow) {

			_.$slider.addClass('slick-dotted');

			dot = $('<ul />').addClass(_.options.dotsClass);

			for (i = 0; i <= _.getDotCount(); i += 1) {
				dot.append($('<li />').append(_.options.customPaging.call(this, _, i)));
			}

			_.$dots = dot.appendTo(_.options.appendDots);

			_.$dots.find('li').first().addClass('slick-active');

		}

	};

	Slick.prototype.buildOut = function() {

		var _ = this;

		_.$slides =
			_.$slider
				.children( _.options.slide + ':not(.slick-cloned)')
				.addClass('slick-slide');

		_.slideCount = _.$slides.length;

		_.$slides.each(function(index, element) {
			$(element)
				.attr('data-slick-index', index)
				.data('originalStyling', $(element).attr('style') || '');
		});

		_.$slider.addClass('slick-slider');

		_.$slideTrack = (_.slideCount === 0) ?
			$('<div class="slick-track"/>').appendTo(_.$slider) :
			_.$slides.wrapAll('<div class="slick-track"/>').parent();

		_.$list = _.$slideTrack.wrap(
			'<div class="slick-list"/>').parent();
		_.$slideTrack.css('opacity', 0);

		if (_.options.centerMode === true || _.options.swipeToSlide === true) {
			_.options.slidesToScroll = 1;
		}

		$('img[data-lazy]', _.$slider).not('[src]').addClass('slick-loading');

		_.setupInfinite();

		_.buildArrows();

		_.buildDots();

		_.updateDots();


		_.setSlideClasses(typeof _.currentSlide === 'number' ? _.currentSlide : 0);

		if (_.options.draggable === true) {
			_.$list.addClass('draggable');
		}

	};

	Slick.prototype.buildRows = function() {

		var _ = this, a, b, c, newSlides, numOfSlides, originalSlides,slidesPerSection;

		newSlides = document.createDocumentFragment();
		originalSlides = _.$slider.children();

		if(_.options.rows > 0) {

			slidesPerSection = _.options.slidesPerRow * _.options.rows;
			numOfSlides = Math.ceil(
				originalSlides.length / slidesPerSection
			);

			for(a = 0; a < numOfSlides; a++){
				var slide = document.createElement('div');
				for(b = 0; b < _.options.rows; b++) {
					var row = document.createElement('div');
					for(c = 0; c < _.options.slidesPerRow; c++) {
						var target = (a * slidesPerSection + ((b * _.options.slidesPerRow) + c));
						if (originalSlides.get(target)) {
							row.appendChild(originalSlides.get(target));
						}
					}
					slide.appendChild(row);
				}
				newSlides.appendChild(slide);
			}

			_.$slider.empty().append(newSlides);
			_.$slider.children().children().children()
				.css({
					'width':(100 / _.options.slidesPerRow) + '%',
					'display': 'inline-block'
				});

		}

	};

	Slick.prototype.checkResponsive = function(initial, forceUpdate) {

		var _ = this,
			breakpoint, targetBreakpoint, respondToWidth, triggerBreakpoint = false;
		var sliderWidth = _.$slider.width();
		var windowWidth = window.innerWidth || $(window).width();

		if (_.respondTo === 'window') {
			respondToWidth = windowWidth;
		} else if (_.respondTo === 'slider') {
			respondToWidth = sliderWidth;
		} else if (_.respondTo === 'min') {
			respondToWidth = Math.min(windowWidth, sliderWidth);
		}

		if ( _.options.responsive &&
			_.options.responsive.length &&
			_.options.responsive !== null) {

			targetBreakpoint = null;

			for (breakpoint in _.breakpoints) {
				if (_.breakpoints.hasOwnProperty(breakpoint)) {
					if (_.originalSettings.mobileFirst === false) {
						if (respondToWidth < _.breakpoints[breakpoint]) {
							targetBreakpoint = _.breakpoints[breakpoint];
						}
					} else {
						if (respondToWidth > _.breakpoints[breakpoint]) {
							targetBreakpoint = _.breakpoints[breakpoint];
						}
					}
				}
			}

			if (targetBreakpoint !== null) {
				if (_.activeBreakpoint !== null) {
					if (targetBreakpoint !== _.activeBreakpoint || forceUpdate) {
						_.activeBreakpoint =
							targetBreakpoint;
						if (_.breakpointSettings[targetBreakpoint] === 'unslick') {
							_.unslick(targetBreakpoint);
						} else {
							_.options = $.extend({}, _.originalSettings,
								_.breakpointSettings[
									targetBreakpoint]);
							if (initial === true) {
								_.currentSlide = _.options.initialSlide;
							}
							_.refresh(initial);
						}
						triggerBreakpoint = targetBreakpoint;
					}
				} else {
					_.activeBreakpoint = targetBreakpoint;
					if (_.breakpointSettings[targetBreakpoint] === 'unslick') {
						_.unslick(targetBreakpoint);
					} else {
						_.options = $.extend({}, _.originalSettings,
							_.breakpointSettings[
								targetBreakpoint]);
						if (initial === true) {
							_.currentSlide = _.options.initialSlide;
						}
						_.refresh(initial);
					}
					triggerBreakpoint = targetBreakpoint;
				}
			} else {
				if (_.activeBreakpoint !== null) {
					_.activeBreakpoint = null;
					_.options = _.originalSettings;
					if (initial === true) {
						_.currentSlide = _.options.initialSlide;
					}
					_.refresh(initial);
					triggerBreakpoint = targetBreakpoint;
				}
			}

			// only trigger breakpoints during an actual break. not on initialize.
			if( !initial && triggerBreakpoint !== false ) {
				_.$slider.trigger('breakpoint', [_, triggerBreakpoint]);
			}
		}

	};

	Slick.prototype.changeSlide = function(event, dontAnimate) {

		var _ = this,
			$target = $(event.currentTarget),
			indexOffset, slideOffset, unevenOffset;

		// If target is a link, prevent default action.
		if($target.is('a')) {
			event.preventDefault();
		}

		// If target is not the <li> element (ie: a child), find the <li>.
		if(!$target.is('li')) {
			$target = $target.closest('li');
		}

		unevenOffset = (_.slideCount % _.options.slidesToScroll !== 0);
		indexOffset = unevenOffset ? 0 : (_.slideCount - _.currentSlide) % _.options.slidesToScroll;

		switch (event.data.message) {

			case 'previous':
				slideOffset = indexOffset === 0 ? _.options.slidesToScroll : _.options.slidesToShow - indexOffset;
				if (_.slideCount > _.options.slidesToShow) {
					_.slideHandler(_.currentSlide - slideOffset, false, dontAnimate);
				}
				break;

			case 'next':
				slideOffset = indexOffset === 0 ? _.options.slidesToScroll : indexOffset;
				if (_.slideCount > _.options.slidesToShow) {
					_.slideHandler(_.currentSlide + slideOffset, false, dontAnimate);
				}
				break;

			case 'index':
				var index = event.data.index === 0 ? 0 :
					event.data.index || $target.index() * _.options.slidesToScroll;

				_.slideHandler(_.checkNavigable(index), false, dontAnimate);
				$target.children().trigger('focus');
				break;

			default:
				return;
		}

	};

	Slick.prototype.checkNavigable = function(index) {

		var _ = this,
			navigables, prevNavigable;

		navigables = _.getNavigableIndexes();
		prevNavigable = 0;
		if (index > navigables[navigables.length - 1]) {
			index = navigables[navigables.length - 1];
		} else {
			for (var n in navigables) {
				if (index < navigables[n]) {
					index = prevNavigable;
					break;
				}
				prevNavigable = navigables[n];
			}
		}

		return index;
	};

	Slick.prototype.cleanUpEvents = function() {

		var _ = this;

		if (_.options.dots && _.$dots !== null) {

			$('li', _.$dots)
				.off('click.slick', _.changeSlide)
				.off('mouseenter.slick', $.proxy(_.interrupt, _, true))
				.off('mouseleave.slick', $.proxy(_.interrupt, _, false));

			if (_.options.accessibility === true) {
				_.$dots.off('keydown.slick', _.keyHandler);
			}
		}

		_.$slider.off('focus.slick blur.slick');

		if (_.options.arrows === true && _.slideCount > _.options.slidesToShow) {
			_.$prevArrow && _.$prevArrow.off('click.slick', _.changeSlide);
			_.$nextArrow && _.$nextArrow.off('click.slick', _.changeSlide);

			if (_.options.accessibility === true) {
				_.$prevArrow && _.$prevArrow.off('keydown.slick', _.keyHandler);
				_.$nextArrow && _.$nextArrow.off('keydown.slick', _.keyHandler);
			}
		}

		_.$list.off('touchstart.slick mousedown.slick', _.swipeHandler);
		_.$list.off('touchmove.slick mousemove.slick', _.swipeHandler);
		_.$list.off('touchend.slick mouseup.slick', _.swipeHandler);
		_.$list.off('touchcancel.slick mouseleave.slick', _.swipeHandler);

		_.$list.off('click.slick', _.clickHandler);

		$(document).off(_.visibilityChange, _.visibility);

		_.cleanUpSlideEvents();

		if (_.options.accessibility === true) {
			_.$list.off('keydown.slick', _.keyHandler);
		}

		if (_.options.focusOnSelect === true) {
			$(_.$slideTrack).children().off('click.slick', _.selectHandler);
		}

		$(window).off('orientationchange.slick.slick-' + _.instanceUid, _.orientationChange);

		$(window).off('resize.slick.slick-' + _.instanceUid, _.resize);

		$('[draggable!=true]', _.$slideTrack).off('dragstart', _.preventDefault);

		$(window).off('load.slick.slick-' + _.instanceUid, _.setPosition);

	};

	Slick.prototype.cleanUpSlideEvents = function() {

		var _ = this;

		_.$list.off('mouseenter.slick', $.proxy(_.interrupt, _, true));
		_.$list.off('mouseleave.slick', $.proxy(_.interrupt, _, false));

	};

	Slick.prototype.cleanUpRows = function() {

		var _ = this, originalSlides;

		if(_.options.rows > 0) {
			originalSlides = _.$slides.children().children();
			originalSlides.removeAttr('style');
			_.$slider.empty().append(originalSlides);
		}

	};

	Slick.prototype.clickHandler = function(event) {

		var _ = this;

		if (_.shouldClick === false) {
			event.stopImmediatePropagation();
			event.stopPropagation();
			event.preventDefault();
		}

	};

	Slick.prototype.destroy = function(refresh) {

		var _ = this;

		_.autoPlayClear();

		_.touchObject = {};

		_.cleanUpEvents();

		$('.slick-cloned', _.$slider).detach();

		if (_.$dots) {
			_.$dots.remove();
		}

		if ( _.$prevArrow && _.$prevArrow.length ) {

			_.$prevArrow
				.removeClass('slick-disabled slick-arrow slick-hidden')
				.removeAttr('aria-hidden aria-disabled tabindex')
				.css('display','');

			if ( _.htmlExpr.test( _.options.prevArrow )) {
				_.$prevArrow.remove();
			}
		}

		if ( _.$nextArrow && _.$nextArrow.length ) {

			_.$nextArrow
				.removeClass('slick-disabled slick-arrow slick-hidden')
				.removeAttr('aria-hidden aria-disabled tabindex')
				.css('display','');

			if ( _.htmlExpr.test( _.options.nextArrow )) {
				_.$nextArrow.remove();
			}
		}


		if (_.$slides) {

			_.$slides
				.removeClass('slick-slide slick-active slick-center slick-visible slick-current')
				.removeAttr('aria-hidden')
				.removeAttr('data-slick-index')
				.each(function(){
					$(this).attr('style', $(this).data('originalStyling'));
				});

			_.$slideTrack.children(this.options.slide).detach();

			_.$slideTrack.detach();

			_.$list.detach();

			_.$slider.append(_.$slides);
		}

		_.cleanUpRows();

		_.$slider.removeClass('slick-slider');
		_.$slider.removeClass('slick-initialized');
		_.$slider.removeClass('slick-dotted');

		_.unslicked = true;

		if(!refresh) {
			_.$slider.trigger('destroy', [_]);
		}

	};

	Slick.prototype.disableTransition = function(slide) {

		var _ = this,
			transition = {};

		transition[_.transitionType] = '';

		if (_.options.fade === false) {
			_.$slideTrack.css(transition);
		} else {
			_.$slides.eq(slide).css(transition);
		}

	};

	Slick.prototype.fadeSlide = function(slideIndex, callback) {

		var _ = this;

		if (_.cssTransitions === false) {

			_.$slides.eq(slideIndex).css({
				zIndex: _.options.zIndex
			});

			_.$slides.eq(slideIndex).animate({
				opacity: 1
			}, _.options.speed, _.options.easing, callback);

		} else {

			_.applyTransition(slideIndex);

			_.$slides.eq(slideIndex).css({
				opacity: 1,
				zIndex: _.options.zIndex
			});

			if (callback) {
				setTimeout(function() {

					_.disableTransition(slideIndex);

					callback.call();
				}, _.options.speed);
			}

		}

	};

	Slick.prototype.fadeSlideOut = function(slideIndex) {

		var _ = this;

		if (_.cssTransitions === false) {

			_.$slides.eq(slideIndex).animate({
				opacity: 0,
				zIndex: _.options.zIndex - 2
			}, _.options.speed, _.options.easing);

		} else {

			_.applyTransition(slideIndex);

			_.$slides.eq(slideIndex).css({
				opacity: 0,
				zIndex: _.options.zIndex - 2
			});

		}

	};

	Slick.prototype.filterSlides = Slick.prototype.slickFilter = function(filter) {

		var _ = this;

		if (filter !== null) {

			_.$slidesCache = _.$slides;

			_.unload();

			_.$slideTrack.children(this.options.slide).detach();

			_.$slidesCache.filter(filter).appendTo(_.$slideTrack);

			_.reinit();

		}

	};

	Slick.prototype.focusHandler = function() {

		var _ = this;

		_.$slider
			.off('focus.slick blur.slick')
			.on('focus.slick blur.slick', '*', function(event) {

				event.stopImmediatePropagation();
				var $sf = $(this);

				setTimeout(function() {

					if( _.options.pauseOnFocus ) {
						_.focussed = $sf.is(':focus');
						_.autoPlay();
					}

				}, 0);

			});
	};

	Slick.prototype.getCurrent = Slick.prototype.slickCurrentSlide = function() {

		var _ = this;
		return _.currentSlide;

	};

	Slick.prototype.getDotCount = function() {

		var _ = this;

		var breakPoint = 0;
		var counter = 0;
		var pagerQty = 0;

		if (_.options.infinite === true) {
			if (_.slideCount <= _.options.slidesToShow) {
				++pagerQty;
			} else {
				while (breakPoint < _.slideCount) {
					++pagerQty;
					breakPoint = counter + _.options.slidesToScroll;
					counter += _.options.slidesToScroll <= _.options.slidesToShow ? _.options.slidesToScroll : _.options.slidesToShow;
				}
			}
		} else if (_.options.centerMode === true) {
			pagerQty = _.slideCount;
		} else if(!_.options.asNavFor) {
			pagerQty = 1 + Math.ceil((_.slideCount - _.options.slidesToShow) / _.options.slidesToScroll);
		}else {
			while (breakPoint < _.slideCount) {
				++pagerQty;
				breakPoint = counter + _.options.slidesToScroll;
				counter += _.options.slidesToScroll <= _.options.slidesToShow ? _.options.slidesToScroll : _.options.slidesToShow;
			}
		}

		return pagerQty - 1;

	};

	Slick.prototype.getLeft = function(slideIndex) {

		var _ = this,
			targetLeft,
			verticalHeight,
			verticalOffset = 0,
			targetSlide,
			coef;

		_.slideOffset = 0;
		verticalHeight = _.$slides.first().outerHeight(true);

		if (_.options.infinite === true) {
			if (_.slideCount > _.options.slidesToShow) {
				_.slideOffset = (_.slideWidth * _.options.slidesToShow) * -1;
				coef = -1

				if (_.options.vertical === true && _.options.centerMode === true) {
					if (_.options.slidesToShow === 2) {
						coef = -1.5;
					} else if (_.options.slidesToShow === 1) {
						coef = -2
					}
				}
				verticalOffset = (verticalHeight * _.options.slidesToShow) * coef;
			}
			if (_.slideCount % _.options.slidesToScroll !== 0) {
				if (slideIndex + _.options.slidesToScroll > _.slideCount && _.slideCount > _.options.slidesToShow) {
					if (slideIndex > _.slideCount) {
						_.slideOffset = ((_.options.slidesToShow - (slideIndex - _.slideCount)) * _.slideWidth) * -1;
						verticalOffset = ((_.options.slidesToShow - (slideIndex - _.slideCount)) * verticalHeight) * -1;
					} else {
						_.slideOffset = ((_.slideCount % _.options.slidesToScroll) * _.slideWidth) * -1;
						verticalOffset = ((_.slideCount % _.options.slidesToScroll) * verticalHeight) * -1;
					}
				}
			}
		} else {
			if (slideIndex + _.options.slidesToShow > _.slideCount) {
				_.slideOffset = ((slideIndex + _.options.slidesToShow) - _.slideCount) * _.slideWidth;
				verticalOffset = ((slideIndex + _.options.slidesToShow) - _.slideCount) * verticalHeight;
			}
		}

		if (_.slideCount <= _.options.slidesToShow) {
			_.slideOffset = 0;
			verticalOffset = 0;
		}

		if (_.options.centerMode === true && _.slideCount <= _.options.slidesToShow) {
			_.slideOffset = ((_.slideWidth * Math.floor(_.options.slidesToShow)) / 2) - ((_.slideWidth * _.slideCount) / 2);
		} else if (_.options.centerMode === true && _.options.infinite === true) {
			_.slideOffset += _.slideWidth * Math.floor(_.options.slidesToShow / 2) - _.slideWidth;
		} else if (_.options.centerMode === true) {
			_.slideOffset = 0;
			_.slideOffset += _.slideWidth * Math.floor(_.options.slidesToShow / 2);
		}

		if (_.options.vertical === false) {
			targetLeft = ((slideIndex * _.slideWidth) * -1) + _.slideOffset;
		} else {
			targetLeft = ((slideIndex * verticalHeight) * -1) + verticalOffset;
		}

		if (_.options.variableWidth === true) {

			if (_.slideCount <= _.options.slidesToShow || _.options.infinite === false) {
				targetSlide = _.$slideTrack.children('.slick-slide').eq(slideIndex);
			} else {
				targetSlide = _.$slideTrack.children('.slick-slide').eq(slideIndex + _.options.slidesToShow);
			}

			if (_.options.rtl === true) {
				if (targetSlide[0]) {
					targetLeft = (_.$slideTrack.width() - targetSlide[0].offsetLeft - targetSlide.width()) * -1;
				} else {
					targetLeft =  0;
				}
			} else {
				targetLeft = targetSlide[0] ? targetSlide[0].offsetLeft * -1 : 0;
			}

			if (_.options.centerMode === true) {
				if (_.slideCount <= _.options.slidesToShow || _.options.infinite === false) {
					targetSlide = _.$slideTrack.children('.slick-slide').eq(slideIndex);
				} else {
					targetSlide = _.$slideTrack.children('.slick-slide').eq(slideIndex + _.options.slidesToShow + 1);
				}

				if (_.options.rtl === true) {
					if (targetSlide[0]) {
						targetLeft = (_.$slideTrack.width() - targetSlide[0].offsetLeft - targetSlide.width()) * -1;
					} else {
						targetLeft =  0;
					}
				} else {
					targetLeft = targetSlide[0] ? targetSlide[0].offsetLeft * -1 : 0;
				}

				targetLeft += (_.$list.width() - targetSlide.outerWidth()) / 2;
			}
		}

		return targetLeft;

	};

	Slick.prototype.getOption = Slick.prototype.slickGetOption = function(option) {

		var _ = this;

		return _.options[option];

	};

	Slick.prototype.getNavigableIndexes = function() {

		var _ = this,
			breakPoint = 0,
			counter = 0,
			indexes = [],
			max;

		if (_.options.infinite === false) {
			max = _.slideCount;
		} else {
			breakPoint = _.options.slidesToScroll * -1;
			counter = _.options.slidesToScroll * -1;
			max = _.slideCount * 2;
		}

		while (breakPoint < max) {
			indexes.push(breakPoint);
			breakPoint = counter + _.options.slidesToScroll;
			counter += _.options.slidesToScroll <= _.options.slidesToShow ? _.options.slidesToScroll : _.options.slidesToShow;
		}

		return indexes;

	};

	Slick.prototype.getSlick = function() {

		return this;

	};

	Slick.prototype.getSlideCount = function() {

		var _ = this,
			slidesTraversed, swipedSlide, centerOffset;

		centerOffset = _.options.centerMode === true ? _.slideWidth * Math.floor(_.options.slidesToShow / 2) : 0;

		if (_.options.swipeToSlide === true) {
			_.$slideTrack.find('.slick-slide').each(function(index, slide) {
				if (slide.offsetLeft - centerOffset + ($(slide).outerWidth() / 2) > (_.swipeLeft * -1)) {
					swipedSlide = slide;
					return false;
				}
			});

			slidesTraversed = Math.abs($(swipedSlide).attr('data-slick-index') - _.currentSlide) || 1;

			return slidesTraversed;

		} else {
			return _.options.slidesToScroll;
		}

	};

	Slick.prototype.goTo = Slick.prototype.slickGoTo = function(slide, dontAnimate) {

		var _ = this;

		_.changeSlide({
			data: {
				message: 'index',
				index: parseInt(slide)
			}
		}, dontAnimate);

	};

	Slick.prototype.init = function(creation) {

		var _ = this;

		if (!$(_.$slider).hasClass('slick-initialized')) {

			$(_.$slider).addClass('slick-initialized');

			_.buildRows();
			_.buildOut();
			_.setProps();
			_.startLoad();
			_.loadSlider();
			_.initializeEvents();
			_.updateArrows();
			_.updateDots();
			_.checkResponsive(true);
			_.focusHandler();

		}

		if (creation) {
			_.$slider.trigger('init', [_]);
		}

		if (_.options.accessibility === true) {
			_.initADA();
		}

		if ( _.options.autoplay ) {

			_.paused = false;
			_.autoPlay();

		}

	};

	Slick.prototype.initADA = function() {
		var _ = this,
			numDotGroups = Math.ceil(_.slideCount / _.options.slidesToShow),
			tabControlIndexes = _.getNavigableIndexes().filter(function(val) {
				return (val >= 0) && (val < _.slideCount);
			});

		_.$slides.add(_.$slideTrack.find('.slick-cloned')).attr({
			'aria-hidden': 'true',
			'tabindex': '-1'
		}).find('a, input, button, select').attr({
			'tabindex': '-1'
		});

		if (_.$dots !== null) {
			_.$slides.not(_.$slideTrack.find('.slick-cloned')).each(function(i) {
				var slideControlIndex = tabControlIndexes.indexOf(i);

				$(this).attr({
					'role': 'tabpanel',
					'id': 'slick-slide' + _.instanceUid + i,
					'tabindex': -1
				});

				if (slideControlIndex !== -1) {
					var ariaButtonControl = 'slick-slide-control' + _.instanceUid + slideControlIndex
					if ($('#' + ariaButtonControl).length) {
						$(this).attr({
							'aria-describedby': ariaButtonControl
						});
					}
				}
			});

			_.$dots.attr('role', 'tablist').find('li').each(function(i) {
				var mappedSlideIndex = tabControlIndexes[i];

				$(this).attr({
					'role': 'presentation'
				});

				$(this).find('button').first().attr({
					'role': 'tab',
					'id': 'slick-slide-control' + _.instanceUid + i,
					'aria-controls': 'slick-slide' + _.instanceUid + mappedSlideIndex,
					'aria-label': (i + 1) + ' of ' + numDotGroups,
					'aria-selected': null,
					'tabindex': '-1'
				});

			}).eq(_.currentSlide).find('button').attr({
				'aria-selected': 'true',
				'tabindex': '0'
			}).end();
		}

		for (var i=_.currentSlide, max=i+_.options.slidesToShow; i < max; i++) {
			if (_.options.focusOnChange) {
				_.$slides.eq(i).attr({'tabindex': '0'});
			} else {
				_.$slides.eq(i).removeAttr('tabindex');
			}
		}

		_.activateADA();

	};

	Slick.prototype.initArrowEvents = function() {

		var _ = this;

		if (_.options.arrows === true && _.slideCount > _.options.slidesToShow) {
			_.$prevArrow
				.off('click.slick')
				.on('click.slick', {
					message: 'previous'
				}, _.changeSlide);
			_.$nextArrow
				.off('click.slick')
				.on('click.slick', {
					message: 'next'
				}, _.changeSlide);

			if (_.options.accessibility === true) {
				_.$prevArrow.on('keydown.slick', _.keyHandler);
				_.$nextArrow.on('keydown.slick', _.keyHandler);
			}
		}

	};

	Slick.prototype.initDotEvents = function() {

		var _ = this;

		if (_.options.dots === true && _.slideCount > _.options.slidesToShow) {
			$('li', _.$dots).on('click.slick', {
				message: 'index'
			}, _.changeSlide);

			if (_.options.accessibility === true) {
				_.$dots.on('keydown.slick', _.keyHandler);
			}
		}

		if (_.options.dots === true && _.options.pauseOnDotsHover === true && _.slideCount > _.options.slidesToShow) {

			$('li', _.$dots)
				.on('mouseenter.slick', $.proxy(_.interrupt, _, true))
				.on('mouseleave.slick', $.proxy(_.interrupt, _, false));

		}

	};

	Slick.prototype.initSlideEvents = function() {

		var _ = this;

		if ( _.options.pauseOnHover ) {

			_.$list.on('mouseenter.slick', $.proxy(_.interrupt, _, true));
			_.$list.on('mouseleave.slick', $.proxy(_.interrupt, _, false));

		}

	};

	Slick.prototype.initializeEvents = function() {

		var _ = this;

		_.initArrowEvents();

		_.initDotEvents();
		_.initSlideEvents();

		_.$list.on('touchstart.slick mousedown.slick', {
			action: 'start'
		}, _.swipeHandler);
		_.$list.on('touchmove.slick mousemove.slick', {
			action: 'move'
		}, _.swipeHandler);
		_.$list.on('touchend.slick mouseup.slick', {
			action: 'end'
		}, _.swipeHandler);
		_.$list.on('touchcancel.slick mouseleave.slick', {
			action: 'end'
		}, _.swipeHandler);

		_.$list.on('click.slick', _.clickHandler);

		$(document).on(_.visibilityChange, $.proxy(_.visibility, _));

		if (_.options.accessibility === true) {
			_.$list.on('keydown.slick', _.keyHandler);
		}

		if (_.options.focusOnSelect === true) {
			$(_.$slideTrack).children().on('click.slick', _.selectHandler);
		}

		$(window).on('orientationchange.slick.slick-' + _.instanceUid, $.proxy(_.orientationChange, _));

		$(window).on('resize.slick.slick-' + _.instanceUid, $.proxy(_.resize, _));

		$('[draggable!=true]', _.$slideTrack).on('dragstart', _.preventDefault);

		$(window).on('load.slick.slick-' + _.instanceUid, _.setPosition);
		$(_.setPosition);

	};

	Slick.prototype.initUI = function() {

		var _ = this;

		if (_.options.arrows === true && _.slideCount > _.options.slidesToShow) {

			_.$prevArrow.show();
			_.$nextArrow.show();

		}

		if (_.options.dots === true && _.slideCount > _.options.slidesToShow) {

			_.$dots.show();

		}

	};

	Slick.prototype.keyHandler = function(event) {

		var _ = this;
		//Dont slide if the cursor is inside the form fields and arrow keys are pressed
		if(!event.target.tagName.match('TEXTAREA|INPUT|SELECT')) {
			if (event.keyCode === 37 && _.options.accessibility === true) {
				_.changeSlide({
					data: {
						message: _.options.rtl === true ? 'next' :  'previous'
					}
				});
			} else if (event.keyCode === 39 && _.options.accessibility === true) {
				_.changeSlide({
					data: {
						message: _.options.rtl === true ? 'previous' : 'next'
					}
				});
			}
		}

	};

	Slick.prototype.lazyLoad = function() {

		var _ = this,
			loadRange, cloneRange, rangeStart, rangeEnd;

		function loadImages(imagesScope) {

			$('img[data-lazy]', imagesScope).each(function() {

				var image = $(this),
					imageSource = $(this).attr('data-lazy'),
					imageSrcSet = $(this).attr('data-srcset'),
					imageSizes  = $(this).attr('data-sizes') || _.$slider.attr('data-sizes'),
					imageToLoad = document.createElement('img');

				imageToLoad.onload = function() {

					image
						.animate({ opacity: 0 }, 100, function() {

							if (imageSrcSet) {
								image
									.attr('srcset', imageSrcSet );

								if (imageSizes) {
									image
										.attr('sizes', imageSizes );
								}
							}

							image
								.attr('src', imageSource)
								.animate({ opacity: 1 }, 200, function() {
									image
										.removeAttr('data-lazy data-srcset data-sizes')
										.removeClass('slick-loading');
								});
							_.$slider.trigger('lazyLoaded', [_, image, imageSource]);
						});

				};

				imageToLoad.onerror = function() {

					image
						.removeAttr( 'data-lazy' )
						.removeClass( 'slick-loading' )
						.addClass( 'slick-lazyload-error' );

					_.$slider.trigger('lazyLoadError', [ _, image, imageSource ]);

				};

				imageToLoad.src = imageSource;

			});

		}

		if (_.options.centerMode === true) {
			if (_.options.infinite === true) {
				rangeStart = _.currentSlide + (_.options.slidesToShow / 2 + 1);
				rangeEnd = rangeStart + _.options.slidesToShow + 2;
			} else {
				rangeStart = Math.max(0, _.currentSlide - (_.options.slidesToShow / 2 + 1));
				rangeEnd = 2 + (_.options.slidesToShow / 2 + 1) + _.currentSlide;
			}
		} else {
			rangeStart = _.options.infinite ? _.options.slidesToShow + _.currentSlide : _.currentSlide;
			rangeEnd = Math.ceil(rangeStart + _.options.slidesToShow);
			if (_.options.fade === true) {
				if (rangeStart > 0) rangeStart--;
				if (rangeEnd <= _.slideCount) rangeEnd++;
			}
		}

		loadRange = _.$slider.find('.slick-slide').slice(rangeStart, rangeEnd);

		if (_.options.lazyLoad === 'anticipated') {
			var prevSlide = rangeStart - 1,
				nextSlide = rangeEnd,
				$slides = _.$slider.find('.slick-slide');

			for (var i = 0; i < _.options.slidesToScroll; i++) {
				if (prevSlide < 0) prevSlide = _.slideCount - 1;
				loadRange = loadRange.add($slides.eq(prevSlide));
				loadRange = loadRange.add($slides.eq(nextSlide));
				prevSlide--;
				nextSlide++;
			}
		}

		loadImages(loadRange);

		if (_.slideCount <= _.options.slidesToShow) {
			cloneRange = _.$slider.find('.slick-slide');
			loadImages(cloneRange);
		} else
		if (_.currentSlide >= _.slideCount - _.options.slidesToShow) {
			cloneRange = _.$slider.find('.slick-cloned').slice(0, _.options.slidesToShow);
			loadImages(cloneRange);
		} else if (_.currentSlide === 0) {
			cloneRange = _.$slider.find('.slick-cloned').slice(_.options.slidesToShow * -1);
			loadImages(cloneRange);
		}

	};

	Slick.prototype.loadSlider = function() {

		var _ = this;

		_.setPosition();

		_.$slideTrack.css({
			opacity: 1
		});

		_.$slider.removeClass('slick-loading');

		_.initUI();

		if (_.options.lazyLoad === 'progressive') {
			_.progressiveLazyLoad();
		}

	};

	Slick.prototype.next = Slick.prototype.slickNext = function() {

		var _ = this;

		_.changeSlide({
			data: {
				message: 'next'
			}
		});

	};

	Slick.prototype.orientationChange = function() {

		var _ = this;

		_.checkResponsive();
		_.setPosition();

	};

	Slick.prototype.pause = Slick.prototype.slickPause = function() {

		var _ = this;

		_.autoPlayClear();
		_.paused = true;

	};

	Slick.prototype.play = Slick.prototype.slickPlay = function() {

		var _ = this;

		_.autoPlay();
		_.options.autoplay = true;
		_.paused = false;
		_.focussed = false;
		_.interrupted = false;

	};

	Slick.prototype.postSlide = function(index) {

		var _ = this;

		if( !_.unslicked ) {

			_.$slider.trigger('afterChange', [_, index]);

			_.animating = false;

			if (_.slideCount > _.options.slidesToShow) {
				_.setPosition();
			}

			_.swipeLeft = null;

			if ( _.options.autoplay ) {
				_.autoPlay();
			}

			if (_.options.accessibility === true) {
				_.initADA();

				if (_.options.focusOnChange) {
					var $currentSlide = $(_.$slides.get(_.currentSlide));
					$currentSlide.attr('tabindex', 0).focus();
				}
			}

		}

	};

	Slick.prototype.prev = Slick.prototype.slickPrev = function() {

		var _ = this;

		_.changeSlide({
			data: {
				message: 'previous'
			}
		});

	};

	Slick.prototype.preventDefault = function(event) {

		event.preventDefault();

	};

	Slick.prototype.progressiveLazyLoad = function( tryCount ) {

		tryCount = tryCount || 1;

		var _ = this,
			$imgsToLoad = $( 'img[data-lazy]', _.$slider ),
			image,
			imageSource,
			imageSrcSet,
			imageSizes,
			imageToLoad;

		if ( $imgsToLoad.length ) {

			image = $imgsToLoad.first();
			imageSource = image.attr('data-lazy');
			imageSrcSet = image.attr('data-srcset');
			imageSizes  = image.attr('data-sizes') || _.$slider.attr('data-sizes');
			imageToLoad = document.createElement('img');

			imageToLoad.onload = function() {

				if (imageSrcSet) {
					image
						.attr('srcset', imageSrcSet );

					if (imageSizes) {
						image
							.attr('sizes', imageSizes );
					}
				}

				image
					.attr( 'src', imageSource )
					.removeAttr('data-lazy data-srcset data-sizes')
					.removeClass('slick-loading');

				if ( _.options.adaptiveHeight === true ) {
					_.setPosition();
				}

				_.$slider.trigger('lazyLoaded', [ _, image, imageSource ]);
				_.progressiveLazyLoad();

			};

			imageToLoad.onerror = function() {

				if ( tryCount < 3 ) {

					/**
					 * try to load the image 3 times,
					 * leave a slight delay so we don't get
					 * servers blocking the request.
					 */
					setTimeout( function() {
						_.progressiveLazyLoad( tryCount + 1 );
					}, 500 );

				} else {

					image
						.removeAttr( 'data-lazy' )
						.removeClass( 'slick-loading' )
						.addClass( 'slick-lazyload-error' );

					_.$slider.trigger('lazyLoadError', [ _, image, imageSource ]);

					_.progressiveLazyLoad();

				}

			};

			imageToLoad.src = imageSource;

		} else {

			_.$slider.trigger('allImagesLoaded', [ _ ]);

		}

	};

	Slick.prototype.refresh = function( initializing ) {

		var _ = this, currentSlide, lastVisibleIndex;

		lastVisibleIndex = _.slideCount - _.options.slidesToShow;

		// in non-infinite sliders, we don't want to go past the
		// last visible index.
		if( !_.options.infinite && ( _.currentSlide > lastVisibleIndex )) {
			_.currentSlide = lastVisibleIndex;
		}

		// if less slides than to show, go to start.
		if ( _.slideCount <= _.options.slidesToShow ) {
			_.currentSlide = 0;

		}

		currentSlide = _.currentSlide;

		_.destroy(true);

		$.extend(_, _.initials, { currentSlide: currentSlide });

		_.init();

		if( !initializing ) {

			_.changeSlide({
				data: {
					message: 'index',
					index: currentSlide
				}
			}, false);

		}

	};

	Slick.prototype.registerBreakpoints = function() {

		var _ = this, breakpoint, currentBreakpoint, l,
			responsiveSettings = _.options.responsive || null;

		if ( $.type(responsiveSettings) === 'array' && responsiveSettings.length ) {

			_.respondTo = _.options.respondTo || 'window';

			for ( breakpoint in responsiveSettings ) {

				l = _.breakpoints.length-1;

				if (responsiveSettings.hasOwnProperty(breakpoint)) {
					currentBreakpoint = responsiveSettings[breakpoint].breakpoint;

					// loop through the breakpoints and cut out any existing
					// ones with the same breakpoint number, we don't want dupes.
					while( l >= 0 ) {
						if( _.breakpoints[l] && _.breakpoints[l] === currentBreakpoint ) {
							_.breakpoints.splice(l,1);
						}
						l--;
					}

					_.breakpoints.push(currentBreakpoint);
					_.breakpointSettings[currentBreakpoint] = responsiveSettings[breakpoint].settings;

				}

			}

			_.breakpoints.sort(function(a, b) {
				return ( _.options.mobileFirst ) ? a-b : b-a;
			});

		}

	};

	Slick.prototype.reinit = function() {

		var _ = this;

		_.$slides =
			_.$slideTrack
				.children(_.options.slide)
				.addClass('slick-slide');

		_.slideCount = _.$slides.length;

		if (_.currentSlide >= _.slideCount && _.currentSlide !== 0) {
			_.currentSlide = _.currentSlide - _.options.slidesToScroll;
		}

		if (_.slideCount <= _.options.slidesToShow) {
			_.currentSlide = 0;
		}

		_.registerBreakpoints();

		_.setProps();
		_.setupInfinite();
		_.buildArrows();
		_.updateArrows();
		_.initArrowEvents();
		_.buildDots();
		_.updateDots();
		_.initDotEvents();
		_.cleanUpSlideEvents();
		_.initSlideEvents();

		_.checkResponsive(false, true);

		if (_.options.focusOnSelect === true) {
			$(_.$slideTrack).children().on('click.slick', _.selectHandler);
		}

		_.setSlideClasses(typeof _.currentSlide === 'number' ? _.currentSlide : 0);

		_.setPosition();
		_.focusHandler();

		_.paused = !_.options.autoplay;
		_.autoPlay();

		_.$slider.trigger('reInit', [_]);

	};

	Slick.prototype.resize = function() {

		var _ = this;

		if ($(window).width() !== _.windowWidth) {
			clearTimeout(_.windowDelay);
			_.windowDelay = window.setTimeout(function() {
				_.windowWidth = $(window).width();
				_.checkResponsive();
				if( !_.unslicked ) { _.setPosition(); }
			}, 50);
		}
	};

	Slick.prototype.removeSlide = Slick.prototype.slickRemove = function(index, removeBefore, removeAll) {

		var _ = this;

		if (typeof(index) === 'boolean') {
			removeBefore = index;
			index = removeBefore === true ? 0 : _.slideCount - 1;
		} else {
			index = removeBefore === true ? --index : index;
		}

		if (_.slideCount < 1 || index < 0 || index > _.slideCount - 1) {
			return false;
		}

		_.unload();

		if (removeAll === true) {
			_.$slideTrack.children().remove();
		} else {
			_.$slideTrack.children(this.options.slide).eq(index).remove();
		}

		_.$slides = _.$slideTrack.children(this.options.slide);

		_.$slideTrack.children(this.options.slide).detach();

		_.$slideTrack.append(_.$slides);

		_.$slidesCache = _.$slides;

		_.reinit();

	};

	Slick.prototype.setCSS = function(position) {

		var _ = this,
			positionProps = {},
			x, y;

		if (_.options.rtl === true) {
			position = -position;
		}
		x = _.positionProp == 'left' ? Math.ceil(position) + 'px' : '0px';
		y = _.positionProp == 'top' ? Math.ceil(position) + 'px' : '0px';

		positionProps[_.positionProp] = position;

		if (_.transformsEnabled === false) {
			_.$slideTrack.css(positionProps);
		} else {
			positionProps = {};
			if (_.cssTransitions === false) {
				positionProps[_.animType] = 'translate(' + x + ', ' + y + ')';
				_.$slideTrack.css(positionProps);
			} else {
				positionProps[_.animType] = 'translate3d(' + x + ', ' + y + ', 0px)';
				_.$slideTrack.css(positionProps);
			}
		}

	};

	Slick.prototype.setDimensions = function() {

		var _ = this;

		if (_.options.vertical === false) {
			if (_.options.centerMode === true) {
				_.$list.css({
					padding: ('0px ' + _.options.centerPadding)
				});
			}
		} else {
			_.$list.height(_.$slides.first().outerHeight(true) * _.options.slidesToShow);
			if (_.options.centerMode === true) {
				_.$list.css({
					padding: (_.options.centerPadding + ' 0px')
				});
			}
		}

		_.listWidth = _.$list.width();
		_.listHeight = _.$list.height();


		if (_.options.vertical === false && _.options.variableWidth === false) {
			_.slideWidth = Math.ceil(_.listWidth / _.options.slidesToShow);
			_.$slideTrack.width(Math.ceil((_.slideWidth * _.$slideTrack.children('.slick-slide').length)));

		} else if (_.options.variableWidth === true) {
			_.$slideTrack.width(5000 * _.slideCount);
		} else {
			_.slideWidth = Math.ceil(_.listWidth);
			_.$slideTrack.height(Math.ceil((_.$slides.first().outerHeight(true) * _.$slideTrack.children('.slick-slide').length)));
		}

		var offset = _.$slides.first().outerWidth(true) - _.$slides.first().width();
		if (_.options.variableWidth === false) _.$slideTrack.children('.slick-slide').width(_.slideWidth - offset);

	};

	Slick.prototype.setFade = function() {

		var _ = this,
			targetLeft;

		_.$slides.each(function(index, element) {
			targetLeft = (_.slideWidth * index) * -1;
			if (_.options.rtl === true) {
				$(element).css({
					position: 'relative',
					right: targetLeft,
					top: 0,
					zIndex: _.options.zIndex - 2,
					opacity: 0
				});
			} else {
				$(element).css({
					position: 'relative',
					left: targetLeft,
					top: 0,
					zIndex: _.options.zIndex - 2,
					opacity: 0
				});
			}
		});

		_.$slides.eq(_.currentSlide).css({
			zIndex: _.options.zIndex - 1,
			opacity: 1
		});

	};

	Slick.prototype.setHeight = function() {

		var _ = this;

		if (_.options.slidesToShow === 1 && _.options.adaptiveHeight === true && _.options.vertical === false) {
			var targetHeight = _.$slides.eq(_.currentSlide).outerHeight(true);
			_.$list.css('height', targetHeight);
		}

	};

	Slick.prototype.setOption =
		Slick.prototype.slickSetOption = function() {

			/**
			 * accepts arguments in format of:
			 *
			 *  - for changing a single option's value:
			 *     .slick("setOption", option, value, refresh )
			 *
			 *  - for changing a set of responsive options:
			 *     .slick("setOption", 'responsive', [{}, ...], refresh )
			 *
			 *  - for updating multiple values at once (not responsive)
			 *     .slick("setOption", { 'option': value, ... }, refresh )
			 */

			var _ = this, l, item, option, value, refresh = false, type;

			if( $.type( arguments[0] ) === 'object' ) {

				option =  arguments[0];
				refresh = arguments[1];
				type = 'multiple';

			} else if ( $.type( arguments[0] ) === 'string' ) {

				option =  arguments[0];
				value = arguments[1];
				refresh = arguments[2];

				if ( arguments[0] === 'responsive' && $.type( arguments[1] ) === 'array' ) {

					type = 'responsive';

				} else if ( typeof arguments[1] !== 'undefined' ) {

					type = 'single';

				}

			}

			if ( type === 'single' ) {

				_.options[option] = value;


			} else if ( type === 'multiple' ) {

				$.each( option , function( opt, val ) {

					_.options[opt] = val;

				});


			} else if ( type === 'responsive' ) {

				for ( item in value ) {

					if( $.type( _.options.responsive ) !== 'array' ) {

						_.options.responsive = [ value[item] ];

					} else {

						l = _.options.responsive.length-1;

						// loop through the responsive object and splice out duplicates.
						while( l >= 0 ) {

							if( _.options.responsive[l].breakpoint === value[item].breakpoint ) {

								_.options.responsive.splice(l,1);

							}

							l--;

						}

						_.options.responsive.push( value[item] );

					}

				}

			}

			if ( refresh ) {

				_.unload();
				_.reinit();

			}

		};

	Slick.prototype.setPosition = function() {

		var _ = this;

		_.setDimensions();

		_.setHeight();

		if (_.options.fade === false) {
			_.setCSS(_.getLeft(_.currentSlide));
		} else {
			_.setFade();
		}

		_.$slider.trigger('setPosition', [_]);

	};

	Slick.prototype.setProps = function() {

		var _ = this,
			bodyStyle = document.body.style;

		_.positionProp = _.options.vertical === true ? 'top' : 'left';

		if (_.positionProp === 'top') {
			_.$slider.addClass('slick-vertical');
		} else {
			_.$slider.removeClass('slick-vertical');
		}

		if (bodyStyle.WebkitTransition !== undefined ||
			bodyStyle.MozTransition !== undefined ||
			bodyStyle.msTransition !== undefined) {
			if (_.options.useCSS === true) {
				_.cssTransitions = true;
			}
		}

		if ( _.options.fade ) {
			if ( typeof _.options.zIndex === 'number' ) {
				if( _.options.zIndex < 3 ) {
					_.options.zIndex = 3;
				}
			} else {
				_.options.zIndex = _.defaults.zIndex;
			}
		}

		if (bodyStyle.OTransform !== undefined) {
			_.animType = 'OTransform';
			_.transformType = '-o-transform';
			_.transitionType = 'OTransition';
			if (bodyStyle.perspectiveProperty === undefined && bodyStyle.webkitPerspective === undefined) _.animType = false;
		}
		if (bodyStyle.MozTransform !== undefined) {
			_.animType = 'MozTransform';
			_.transformType = '-moz-transform';
			_.transitionType = 'MozTransition';
			if (bodyStyle.perspectiveProperty === undefined && bodyStyle.MozPerspective === undefined) _.animType = false;
		}
		if (bodyStyle.webkitTransform !== undefined) {
			_.animType = 'webkitTransform';
			_.transformType = '-webkit-transform';
			_.transitionType = 'webkitTransition';
			if (bodyStyle.perspectiveProperty === undefined && bodyStyle.webkitPerspective === undefined) _.animType = false;
		}
		if (bodyStyle.msTransform !== undefined) {
			_.animType = 'msTransform';
			_.transformType = '-ms-transform';
			_.transitionType = 'msTransition';
			if (bodyStyle.msTransform === undefined) _.animType = false;
		}
		if (bodyStyle.transform !== undefined && _.animType !== false) {
			_.animType = 'transform';
			_.transformType = 'transform';
			_.transitionType = 'transition';
		}
		_.transformsEnabled = _.options.useTransform && (_.animType !== null && _.animType !== false);
	};


	Slick.prototype.setSlideClasses = function(index) {

		var _ = this,
			centerOffset, allSlides, indexOffset, remainder;

		allSlides = _.$slider
			.find('.slick-slide')
			.removeClass('slick-active slick-center slick-current')
			.attr('aria-hidden', 'true');

		_.$slides
			.eq(index)
			.addClass('slick-current');

		if (_.options.centerMode === true) {

			var evenCoef = _.options.slidesToShow % 2 === 0 ? 1 : 0;

			centerOffset = Math.floor(_.options.slidesToShow / 2);

			if (_.options.infinite === true) {

				if (index >= centerOffset && index <= (_.slideCount - 1) - centerOffset) {
					_.$slides
						.slice(index - centerOffset + evenCoef, index + centerOffset + 1)
						.addClass('slick-active')
						.attr('aria-hidden', 'false');

				} else {

					indexOffset = _.options.slidesToShow + index;
					allSlides
						.slice(indexOffset - centerOffset + 1 + evenCoef, indexOffset + centerOffset + 2)
						.addClass('slick-active')
						.attr('aria-hidden', 'false');

				}

				if (index === 0) {

					allSlides
						.eq(allSlides.length - 1 - _.options.slidesToShow)
						.addClass('slick-center');

				} else if (index === _.slideCount - 1) {

					allSlides
						.eq(_.options.slidesToShow)
						.addClass('slick-center');

				}

			}

			_.$slides
				.eq(index)
				.addClass('slick-center');

		} else {

			if (index >= 0 && index <= (_.slideCount - _.options.slidesToShow)) {

				_.$slides
					.slice(index, index + _.options.slidesToShow)
					.addClass('slick-active')
					.attr('aria-hidden', 'false');

			} else if (allSlides.length <= _.options.slidesToShow) {

				allSlides
					.addClass('slick-active')
					.attr('aria-hidden', 'false');

			} else {

				remainder = _.slideCount % _.options.slidesToShow;
				indexOffset = _.options.infinite === true ? _.options.slidesToShow + index : index;

				if (_.options.slidesToShow == _.options.slidesToScroll && (_.slideCount - index) < _.options.slidesToShow) {

					allSlides
						.slice(indexOffset - (_.options.slidesToShow - remainder), indexOffset + remainder)
						.addClass('slick-active')
						.attr('aria-hidden', 'false');

				} else {

					allSlides
						.slice(indexOffset, indexOffset + _.options.slidesToShow)
						.addClass('slick-active')
						.attr('aria-hidden', 'false');

				}

			}

		}

		if (_.options.lazyLoad === 'ondemand' || _.options.lazyLoad === 'anticipated') {
			_.lazyLoad();
		}
	};

	Slick.prototype.setupInfinite = function() {

		var _ = this,
			i, slideIndex, infiniteCount;

		if (_.options.fade === true) {
			_.options.centerMode = false;
		}

		if (_.options.infinite === true && _.options.fade === false) {

			slideIndex = null;

			if (_.slideCount > _.options.slidesToShow) {

				if (_.options.centerMode === true) {
					infiniteCount = _.options.slidesToShow + 1;
				} else {
					infiniteCount = _.options.slidesToShow;
				}

				for (i = _.slideCount; i > (_.slideCount -
					infiniteCount); i -= 1) {
					slideIndex = i - 1;
					$(_.$slides[slideIndex]).clone(true).attr('id', '')
						.attr('data-slick-index', slideIndex - _.slideCount)
						.prependTo(_.$slideTrack).addClass('slick-cloned');
				}
				for (i = 0; i < infiniteCount  + _.slideCount; i += 1) {
					slideIndex = i;
					$(_.$slides[slideIndex]).clone(true).attr('id', '')
						.attr('data-slick-index', slideIndex + _.slideCount)
						.appendTo(_.$slideTrack).addClass('slick-cloned');
				}
				_.$slideTrack.find('.slick-cloned').find('[id]').each(function() {
					$(this).attr('id', '');
				});

			}

		}

	};

	Slick.prototype.interrupt = function( toggle ) {

		var _ = this;

		if( !toggle ) {
			_.autoPlay();
		}
		_.interrupted = toggle;

	};

	Slick.prototype.selectHandler = function(event) {

		var _ = this;

		var targetElement =
			$(event.target).is('.slick-slide') ?
				$(event.target) :
				$(event.target).parents('.slick-slide');

		var index = parseInt(targetElement.attr('data-slick-index'));

		if (!index) index = 0;

		if (_.slideCount <= _.options.slidesToShow) {

			_.slideHandler(index, false, true);
			return;

		}

		_.slideHandler(index);

	};

	Slick.prototype.slideHandler = function(index, sync, dontAnimate) {

		var targetSlide, animSlide, oldSlide, slideLeft, targetLeft = null,
			_ = this, navTarget;

		sync = sync || false;

		if (_.animating === true && _.options.waitForAnimate === true) {
			return;
		}

		if (_.options.fade === true && _.currentSlide === index) {
			return;
		}

		if (sync === false) {
			_.asNavFor(index);
		}

		targetSlide = index;
		targetLeft = _.getLeft(targetSlide);
		slideLeft = _.getLeft(_.currentSlide);

		_.currentLeft = _.swipeLeft === null ? slideLeft : _.swipeLeft;

		if (_.options.infinite === false && _.options.centerMode === false && (index < 0 || index > _.getDotCount() * _.options.slidesToScroll)) {
			if (_.options.fade === false) {
				targetSlide = _.currentSlide;
				if (dontAnimate !== true && _.slideCount > _.options.slidesToShow) {
					_.animateSlide(slideLeft, function() {
						_.postSlide(targetSlide);
					});
				} else {
					_.postSlide(targetSlide);
				}
			}
			return;
		} else if (_.options.infinite === false && _.options.centerMode === true && (index < 0 || index > (_.slideCount - _.options.slidesToScroll))) {
			if (_.options.fade === false) {
				targetSlide = _.currentSlide;
				if (dontAnimate !== true && _.slideCount > _.options.slidesToShow) {
					_.animateSlide(slideLeft, function() {
						_.postSlide(targetSlide);
					});
				} else {
					_.postSlide(targetSlide);
				}
			}
			return;
		}

		if ( _.options.autoplay ) {
			clearInterval(_.autoPlayTimer);
		}

		if (targetSlide < 0) {
			if (_.slideCount % _.options.slidesToScroll !== 0) {
				animSlide = _.slideCount - (_.slideCount % _.options.slidesToScroll);
			} else {
				animSlide = _.slideCount + targetSlide;
			}
		} else if (targetSlide >= _.slideCount) {
			if (_.slideCount % _.options.slidesToScroll !== 0) {
				animSlide = 0;
			} else {
				animSlide = targetSlide - _.slideCount;
			}
		} else {
			animSlide = targetSlide;
		}

		_.animating = true;

		_.$slider.trigger('beforeChange', [_, _.currentSlide, animSlide]);

		oldSlide = _.currentSlide;
		_.currentSlide = animSlide;

		_.setSlideClasses(_.currentSlide);

		if ( _.options.asNavFor ) {

			navTarget = _.getNavTarget();
			navTarget = navTarget.slick('getSlick');

			if ( navTarget.slideCount <= navTarget.options.slidesToShow ) {
				navTarget.setSlideClasses(_.currentSlide);
			}

		}

		_.updateDots();
		_.updateArrows();

		if (_.options.fade === true) {
			if (dontAnimate !== true) {

				_.fadeSlideOut(oldSlide);

				_.fadeSlide(animSlide, function() {
					_.postSlide(animSlide);
				});

			} else {
				_.postSlide(animSlide);
			}
			_.animateHeight();
			return;
		}

		if (dontAnimate !== true && _.slideCount > _.options.slidesToShow) {
			_.animateSlide(targetLeft, function() {
				_.postSlide(animSlide);
			});
		} else {
			_.postSlide(animSlide);
		}

	};

	Slick.prototype.startLoad = function() {

		var _ = this;

		if (_.options.arrows === true && _.slideCount > _.options.slidesToShow) {

			_.$prevArrow.hide();
			_.$nextArrow.hide();

		}

		if (_.options.dots === true && _.slideCount > _.options.slidesToShow) {

			_.$dots.hide();

		}

		_.$slider.addClass('slick-loading');

	};

	Slick.prototype.swipeDirection = function() {

		var xDist, yDist, r, swipeAngle, _ = this;

		xDist = _.touchObject.startX - _.touchObject.curX;
		yDist = _.touchObject.startY - _.touchObject.curY;
		r = Math.atan2(yDist, xDist);

		swipeAngle = Math.round(r * 180 / Math.PI);
		if (swipeAngle < 0) {
			swipeAngle = 360 - Math.abs(swipeAngle);
		}

		if ((swipeAngle <= 45) && (swipeAngle >= 0)) {
			return (_.options.rtl === false ? 'left' : 'right');
		}
		if ((swipeAngle <= 360) && (swipeAngle >= 315)) {
			return (_.options.rtl === false ? 'left' : 'right');
		}
		if ((swipeAngle >= 135) && (swipeAngle <= 225)) {
			return (_.options.rtl === false ? 'right' : 'left');
		}
		if (_.options.verticalSwiping === true) {
			if ((swipeAngle >= 35) && (swipeAngle <= 135)) {
				return 'down';
			} else {
				return 'up';
			}
		}

		return 'vertical';

	};

	Slick.prototype.swipeEnd = function(event) {

		var _ = this,
			slideCount,
			direction;

		_.dragging = false;
		_.swiping = false;

		if (_.scrolling) {
			_.scrolling = false;
			return false;
		}

		_.interrupted = false;
		_.shouldClick = ( _.touchObject.swipeLength > 10 ) ? false : true;

		if ( _.touchObject.curX === undefined ) {
			return false;
		}

		if ( _.touchObject.edgeHit === true ) {
			_.$slider.trigger('edge', [_, _.swipeDirection() ]);
		}

		if ( _.touchObject.swipeLength >= _.touchObject.minSwipe ) {

			direction = _.swipeDirection();

			switch ( direction ) {

				case 'left':
				case 'down':

					slideCount =
						_.options.swipeToSlide ?
							_.checkNavigable( _.currentSlide + _.getSlideCount() ) :
							_.currentSlide + _.getSlideCount();

					_.currentDirection = 0;

					break;

				case 'right':
				case 'up':

					slideCount =
						_.options.swipeToSlide ?
							_.checkNavigable( _.currentSlide - _.getSlideCount() ) :
							_.currentSlide - _.getSlideCount();

					_.currentDirection = 1;

					break;

				default:


			}

			if( direction != 'vertical' ) {

				_.slideHandler( slideCount );
				_.touchObject = {};
				_.$slider.trigger('swipe', [_, direction ]);

			}

		} else {

			if ( _.touchObject.startX !== _.touchObject.curX ) {

				_.slideHandler( _.currentSlide );
				_.touchObject = {};

			}

		}

	};

	Slick.prototype.swipeHandler = function(event) {

		var _ = this;

		if ((_.options.swipe === false) || ('ontouchend' in document && _.options.swipe === false)) {
			return;
		} else if (_.options.draggable === false && event.type.indexOf('mouse') !== -1) {
			return;
		}

		_.touchObject.fingerCount = event.originalEvent && event.originalEvent.touches !== undefined ?
			event.originalEvent.touches.length : 1;

		_.touchObject.minSwipe = _.listWidth / _.options
			.touchThreshold;

		if (_.options.verticalSwiping === true) {
			_.touchObject.minSwipe = _.listHeight / _.options
				.touchThreshold;
		}

		switch (event.data.action) {

			case 'start':
				_.swipeStart(event);
				break;

			case 'move':
				_.swipeMove(event);
				break;

			case 'end':
				_.swipeEnd(event);
				break;

		}

	};

	Slick.prototype.swipeMove = function(event) {

		var _ = this,
			edgeWasHit = false,
			curLeft, swipeDirection, swipeLength, positionOffset, touches, verticalSwipeLength;

		touches = event.originalEvent !== undefined ? event.originalEvent.touches : null;

		if (!_.dragging || _.scrolling || touches && touches.length !== 1) {
			return false;
		}

		curLeft = _.getLeft(_.currentSlide);

		_.touchObject.curX = touches !== undefined ? touches[0].pageX : event.clientX;
		_.touchObject.curY = touches !== undefined ? touches[0].pageY : event.clientY;

		_.touchObject.swipeLength = Math.round(Math.sqrt(
			Math.pow(_.touchObject.curX - _.touchObject.startX, 2)));

		verticalSwipeLength = Math.round(Math.sqrt(
			Math.pow(_.touchObject.curY - _.touchObject.startY, 2)));

		if (!_.options.verticalSwiping && !_.swiping && verticalSwipeLength > 4) {
			_.scrolling = true;
			return false;
		}

		if (_.options.verticalSwiping === true) {
			_.touchObject.swipeLength = verticalSwipeLength;
		}

		swipeDirection = _.swipeDirection();

		if (event.originalEvent !== undefined && _.touchObject.swipeLength > 4) {
			_.swiping = true;
			event.preventDefault();
		}

		positionOffset = (_.options.rtl === false ? 1 : -1) * (_.touchObject.curX > _.touchObject.startX ? 1 : -1);
		if (_.options.verticalSwiping === true) {
			positionOffset = _.touchObject.curY > _.touchObject.startY ? 1 : -1;
		}


		swipeLength = _.touchObject.swipeLength;

		_.touchObject.edgeHit = false;

		if (_.options.infinite === false) {
			if ((_.currentSlide === 0 && swipeDirection === 'right') || (_.currentSlide >= _.getDotCount() && swipeDirection === 'left')) {
				swipeLength = _.touchObject.swipeLength * _.options.edgeFriction;
				_.touchObject.edgeHit = true;
			}
		}

		if (_.options.vertical === false) {
			_.swipeLeft = curLeft + swipeLength * positionOffset;
		} else {
			_.swipeLeft = curLeft + (swipeLength * (_.$list.height() / _.listWidth)) * positionOffset;
		}
		if (_.options.verticalSwiping === true) {
			_.swipeLeft = curLeft + swipeLength * positionOffset;
		}

		if (_.options.fade === true || _.options.touchMove === false) {
			return false;
		}

		if (_.animating === true) {
			_.swipeLeft = null;
			return false;
		}

		_.setCSS(_.swipeLeft);

	};

	Slick.prototype.swipeStart = function(event) {

		var _ = this,
			touches;

		_.interrupted = true;

		if (_.touchObject.fingerCount !== 1 || _.slideCount <= _.options.slidesToShow) {
			_.touchObject = {};
			return false;
		}

		if (event.originalEvent !== undefined && event.originalEvent.touches !== undefined) {
			touches = event.originalEvent.touches[0];
		}

		_.touchObject.startX = _.touchObject.curX = touches !== undefined ? touches.pageX : event.clientX;
		_.touchObject.startY = _.touchObject.curY = touches !== undefined ? touches.pageY : event.clientY;

		_.dragging = true;

	};

	Slick.prototype.unfilterSlides = Slick.prototype.slickUnfilter = function() {

		var _ = this;

		if (_.$slidesCache !== null) {

			_.unload();

			_.$slideTrack.children(this.options.slide).detach();

			_.$slidesCache.appendTo(_.$slideTrack);

			_.reinit();

		}

	};

	Slick.prototype.unload = function() {

		var _ = this;

		$('.slick-cloned', _.$slider).remove();

		if (_.$dots) {
			_.$dots.remove();
		}

		if (_.$prevArrow && _.htmlExpr.test(_.options.prevArrow)) {
			_.$prevArrow.remove();
		}

		if (_.$nextArrow && _.htmlExpr.test(_.options.nextArrow)) {
			_.$nextArrow.remove();
		}

		_.$slides
			.removeClass('slick-slide slick-active slick-visible slick-current')
			.attr('aria-hidden', 'true')
			.css('width', '');

	};

	Slick.prototype.unslick = function(fromBreakpoint) {

		var _ = this;
		_.$slider.trigger('unslick', [_, fromBreakpoint]);
		_.destroy();

	};

	Slick.prototype.updateArrows = function() {

		var _ = this,
			centerOffset;

		centerOffset = Math.floor(_.options.slidesToShow / 2);

		if ( _.options.arrows === true &&
			_.slideCount > _.options.slidesToShow &&
			!_.options.infinite ) {

			_.$prevArrow.removeClass('slick-disabled').attr('aria-disabled', 'false');
			_.$nextArrow.removeClass('slick-disabled').attr('aria-disabled', 'false');

			if (_.currentSlide === 0) {

				_.$prevArrow.addClass('slick-disabled').attr('aria-disabled', 'true');
				_.$nextArrow.removeClass('slick-disabled').attr('aria-disabled', 'false');

			} else if (_.currentSlide >= _.slideCount - _.options.slidesToShow && _.options.centerMode === false) {

				_.$nextArrow.addClass('slick-disabled').attr('aria-disabled', 'true');
				_.$prevArrow.removeClass('slick-disabled').attr('aria-disabled', 'false');

			} else if (_.currentSlide >= _.slideCount - 1 && _.options.centerMode === true) {

				_.$nextArrow.addClass('slick-disabled').attr('aria-disabled', 'true');
				_.$prevArrow.removeClass('slick-disabled').attr('aria-disabled', 'false');

			}

		}

	};

	Slick.prototype.updateDots = function() {

		var _ = this;

		if (_.$dots !== null) {

			_.$dots
				.find('li')
				.removeClass('slick-active')
				.end();

			_.$dots
				.find('li')
				.eq(Math.floor(_.currentSlide / _.options.slidesToScroll))
				.addClass('slick-active');

		}

	};

	Slick.prototype.visibility = function() {

		var _ = this;

		if ( _.options.autoplay ) {

			if ( document[_.hidden] ) {

				_.interrupted = true;

			} else {

				_.interrupted = false;

			}

		}

	};

	$.fn.slick = function() {
		var _ = this,
			opt = arguments[0],
			args = Array.prototype.slice.call(arguments, 1),
			l = _.length,
			i,
			ret;
		for (i = 0; i < l; i++) {
			if (typeof opt == 'object' || typeof opt == 'undefined')
				_[i].slick = new Slick(_[i], opt);
			else
				ret = _[i].slick[opt].apply(_[i].slick, args);
			if (typeof ret != 'undefined') return ret;
		}
		return _;
	};

}));
assets/lib/slick/slick.min.js000064400000123557151327220410012160 0ustar00!function(i){"use strict";"function"==typeof define&&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:'<button class="slick-prev" aria-label="Previous" type="button">Previous</button>',nextArrow:'<button class="slick-next" aria-label="Next" type="button">Next</button>',autoplay:!1,autoplaySpeed:3e3,centerMode:!1,centerPadding:"50px",cssEase:"ease",customPaging:function(e,t){return i('<button type="button" />').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&&(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*(<[\w\W]+>)[^>]*)$/,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<0||t>=s.slideCount)return!1;s.unload(),"number"==typeof t?0===t&&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&&!0===i.options.adaptiveHeight&&!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&&!1===s.options.vertical&&(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&&(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&&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&&setTimeout(function(){s.disableTransition(),t.call()},s.options.speed))},e.prototype.getNavTarget=function(){var e=this,t=e.options.asNavFor;return t&&null!==t&&(t=i(t).not(e.$slider)),t},e.prototype.asNavFor=function(e){var t=this.getNavTarget();null!==t&&"object"==typeof t&&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>i.options.slidesToShow&&(i.autoPlayTimer=setInterval(i.autoPlayIterator,i.options.autoplaySpeed))},e.prototype.autoPlayClear=function(){var i=this;i.autoPlayTimer&&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&&(1===i.direction&&i.currentSlide+1===i.slideCount-1?i.direction=0:0===i.direction&&(e=i.currentSlide-i.options.slidesToScroll,i.currentSlide-1==0&&(i.direction=1))),i.slideHandler(e))},e.prototype.buildArrows=function(){var e=this;!0===e.options.arrows&&(e.$prevArrow=i(e.options.prevArrow).addClass("slick-arrow"),e.$nextArrow=i(e.options.nextArrow).addClass("slick-arrow"),e.slideCount>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)&&e.$prevArrow.prependTo(e.options.appendArrows),e.htmlExpr.test(e.options.nextArrow)&&e.$nextArrow.appendTo(e.options.appendArrows),!0!==e.options.infinite&&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("<ul />").addClass(o.options.dotsClass),e=0;e<=o.getDotCount();e+=1)t.append(i("<li />").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('<div class="slick-track"/>').appendTo(e.$slider):e.$slides.wrapAll('<div class="slick-track"/>').parent(),e.$list=e.$slideTrack.wrap('<div class="slick-list"/>').parent(),e.$slideTrack.css("opacity",0),!0!==e.options.centerMode&&!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&&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>1){for(r=l.options.slidesPerRow*l.options.rows,s=Math.ceil(n.length/r),i=0;i<s;i++){var d=document.createElement("div");for(e=0;e<l.options.rows;e++){var a=document.createElement("div");for(t=0;t<l.options.slidesPerRow;t++){var c=i*r+(e*l.options.slidesPerRow+t);n.get(c)&&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&&(n=Math.min(a,d)),r.options.responsive&&r.options.responsive.length&&null!==r.options.responsive){s=null;for(o in r.breakpoints)r.breakpoints.hasOwnProperty(o)&&(!1===r.originalSettings.mobileFirst?n<r.breakpoints[o]&&(s=r.breakpoints[o]):n>r.breakpoints[o]&&(s=r.breakpoints[o]));null!==s?null!==r.activeBreakpoint?(s!==r.activeBreakpoint||t)&&(r.activeBreakpoint=s,"unslick"===r.breakpointSettings[s]?r.unslick(s):(r.options=i.extend({},r.originalSettings,r.breakpointSettings[s]),!0===e&&(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&&(r.currentSlide=r.options.initialSlide),r.refresh(e)),l=s):null!==r.activeBreakpoint&&(r.activeBreakpoint=null,r.options=r.originalSettings,!0===e&&(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")&&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>r.options.slidesToShow&&r.slideHandler(r.currentSlide-s,!1,t);break;case"next":s=0===o?r.options.slidesToScroll:o,r.slideCount>r.options.slidesToShow&&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>e[e.length-1])i=e[e.length-1];else for(var o in e){if(i<e[o]){i=t;break}t=e[o]}return i},e.prototype.cleanUpEvents=function(){var e=this;e.options.dots&&null!==e.$dots&&(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&&e.$dots.off("keydown.slick",e.keyHandler)),e.$slider.off("focus.slick blur.slick"),!0===e.options.arrows&&e.slideCount>e.options.slidesToShow&&(e.$prevArrow&&e.$prevArrow.off("click.slick",e.changeSlide),e.$nextArrow&&e.$nextArrow.off("click.slick",e.changeSlide),!0===e.options.accessibility&&(e.$prevArrow&&e.$prevArrow.off("keydown.slick",e.keyHandler),e.$nextArrow&&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&&e.$list.off("keydown.slick",e.keyHandler),!0===e.options.focusOnSelect&&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>1&&((i=e.$slides.children().children()).removeAttr("style"),e.$slider.empty().append(i))},e.prototype.clickHandler=function(i){!1===this.shouldClick&&(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&&t.$dots.remove(),t.$prevArrow&&t.$prevArrow.length&&(t.$prevArrow.removeClass("slick-disabled slick-arrow slick-hidden").removeAttr("aria-hidden aria-disabled tabindex").css("display",""),t.htmlExpr.test(t.options.prevArrow)&&t.$prevArrow.remove()),t.$nextArrow&&t.$nextArrow.length&&(t.$nextArrow.removeClass("slick-disabled slick-arrow slick-hidden").removeAttr("aria-hidden aria-disabled tabindex").css("display",""),t.htmlExpr.test(t.options.nextArrow)&&t.$nextArrow.remove()),t.$slides&&(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&&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&&(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&&(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<=i.options.slidesToShow)++o;else for(;e<i.slideCount;)++o,e=t+i.options.slidesToScroll,t+=i.options.slidesToScroll<=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<i.slideCount;)++o,e=t+i.options.slidesToScroll,t+=i.options.slidesToScroll<=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>n.options.slidesToShow&&(n.slideOffset=n.slideWidth*n.options.slidesToShow*-1,s=-1,!0===n.options.vertical&&!0===n.options.centerMode&&(2===n.options.slidesToShow?s=-1.5:1===n.options.slidesToShow&&(s=-2)),r=t*n.options.slidesToShow*s),n.slideCount%n.options.slidesToScroll!=0&&i+n.options.slidesToScroll>n.slideCount&&n.slideCount>n.options.slidesToShow&&(i>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>n.slideCount&&(n.slideOffset=(i+n.options.slidesToShow-n.slideCount)*n.slideWidth,r=(i+n.options.slidesToShow-n.slideCount)*t),n.slideCount<=n.options.slidesToShow&&(n.slideOffset=0,r=0),!0===n.options.centerMode&&n.slideCount<=n.options.slidesToShow?n.slideOffset=n.slideWidth*Math.floor(n.options.slidesToShow)/2-n.slideWidth*n.slideCount/2:!0===n.options.centerMode&&!0===n.options.infinite?n.slideOffset+=n.slideWidth*Math.floor(n.options.slidesToShow/2)-n.slideWidth:!0===n.options.centerMode&&(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&&(o=n.slideCount<=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&&(o=n.slideCount<=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<i;)s.push(t),t=o+e.options.slidesToScroll,o+=e.options.slidesToScroll<=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>-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&&t.$slider.trigger("init",[t]),!0===t.options.accessibility&&t.initADA(),t.options.autoplay&&(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>=0&&i<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&&(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&&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<n;s++)e.$slides.eq(s).attr("tabindex",0);e.activateADA()},e.prototype.initArrowEvents=function(){var i=this;!0===i.options.arrows&&i.slideCount>i.options.slidesToShow&&(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&&(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&&(i("li",e.$dots).on("click.slick",{message:"index"},e.changeSlide),!0===e.options.accessibility&&e.$dots.on("keydown.slick",e.keyHandler)),!0===e.options.dots&&!0===e.options.pauseOnDotsHover&&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&&(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&&e.$list.on("keydown.slick",e.keyHandler),!0===e.options.focusOnSelect&&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&&i.slideCount>i.options.slidesToShow&&(i.$prevArrow.show(),i.$nextArrow.show()),!0===i.options.dots&&i.slideCount>i.options.slidesToShow&&i.$dots.show()},e.prototype.keyHandler=function(i){var e=this;i.target.tagName.match("TEXTAREA|INPUT|SELECT")||(37===i.keyCode&&!0===e.options.accessibility?e.changeSlide({data:{message:!0===e.options.rtl?"next":"previous"}}):39===i.keyCode&&!0===e.options.accessibility&&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&&(e.attr("srcset",o),s&&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&&(o>0&&o--,s<=n.slideCount&&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<n.options.slidesToScroll;a++)r<0&&(r=n.slideCount-1),t=(t=t.add(d.eq(r))).add(d.eq(l)),r--,l++;e(t),n.slideCount<=n.options.slidesToShow?e(n.$slider.find(".slick-slide")):n.currentSlide>=n.slideCount-n.options.slidesToShow?e(n.$slider.find(".slick-cloned").slice(0,n.options.slidesToShow)):0===n.currentSlide&&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&&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>t.options.slidesToShow&&t.setPosition(),t.swipeLeft=null,t.options.autoplay&&t.autoPlay(),!0===t.options.accessibility&&(t.initADA(),t.options.focusOnChange&&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&&(t.attr("srcset",s),n&&t.attr("sizes",n)),t.attr("src",o).removeAttr("data-lazy data-srcset data-sizes").removeClass("slick-loading"),!0===l.options.adaptiveHeight&&l.setPosition(),l.$slider.trigger("lazyLoaded",[l,t,o]),l.progressiveLazyLoad()},r.onerror=function(){e<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&&s.currentSlide>o&&(s.currentSlide=o),s.slideCount<=s.options.slidesToShow&&(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)&&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>=0;)s.breakpoints[o]&&s.breakpoints[o]===t&&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>=e.slideCount&&0!==e.currentSlide&&(e.currentSlide=e.currentSlide-e.options.slidesToScroll),e.slideCount<=e.options.slidesToShow&&(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&&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&&(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<1||i<0||i>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&&(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&&i.$list.css({padding:"0px "+i.options.centerPadding}):(i.$list.height(i.$slides.first().outerHeight(!0)*i.options.slidesToShow),!0===i.options.centerMode&&i.$list.css({padding:i.options.centerPadding+" 0px"})),i.listWidth=i.$list.width(),i.listHeight=i.$list.height(),!1===i.options.vertical&&!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&&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&&!0===i.options.adaptiveHeight&&!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])&&(o=arguments[0],s=arguments[1],l=arguments[2],"responsive"===arguments[0]&&"array"===i.type(arguments[1])?n="responsive":void 0!==arguments[1]&&(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>=0;)r.options.responsive[e].breakpoint===s[t].breakpoint&&r.options.responsive.splice(e,1),e--;r.options.responsive.push(s[t])}l&&(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&&void 0===e.MozTransition&&void 0===e.msTransition||!0===i.options.useCSS&&(i.cssTransitions=!0),i.options.fade&&("number"==typeof i.options.zIndex?i.options.zIndex<3&&(i.options.zIndex=3):i.options.zIndex=i.defaults.zIndex),void 0!==e.OTransform&&(i.animType="OTransform",i.transformType="-o-transform",i.transitionType="OTransition",void 0===e.perspectiveProperty&&void 0===e.webkitPerspective&&(i.animType=!1)),void 0!==e.MozTransform&&(i.animType="MozTransform",i.transformType="-moz-transform",i.transitionType="MozTransition",void 0===e.perspectiveProperty&&void 0===e.MozPerspective&&(i.animType=!1)),void 0!==e.webkitTransform&&(i.animType="webkitTransform",i.transformType="-webkit-transform",i.transitionType="webkitTransition",void 0===e.perspectiveProperty&&void 0===e.webkitPerspective&&(i.animType=!1)),void 0!==e.msTransform&&(i.animType="msTransform",i.transformType="-ms-transform",i.transitionType="msTransition",void 0===e.msTransform&&(i.animType=!1)),void 0!==e.transform&&!1!==i.animType&&(i.animType="transform",i.transformType="transform",i.transitionType="transition"),i.transformsEnabled=i.options.useTransform&&null!==i.animType&&!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&&(i>=e&&i<=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&&t.eq(n.options.slidesToShow).addClass("slick-center")),n.$slides.eq(i).addClass("slick-center")}else i>=0&&i<=n.slideCount-n.options.slidesToShow?n.$slides.slice(i,i+n.options.slidesToShow).addClass("slick-active").attr("aria-hidden","false"):t.length<=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&&n.slideCount-i<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&&"anticipated"!==n.options.lazyLoad||n.lazyLoad()},e.prototype.setupInfinite=function(){var e,t,o,s=this;if(!0===s.options.fade&&(s.options.centerMode=!1),!0===s.options.infinite&&!1===s.options.fade&&(t=null,s.slideCount>s.options.slidesToShow)){for(o=!0===s.options.centerMode?s.options.slidesToShow+1:s.options.slidesToShow,e=s.slideCount;e>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<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<=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&&!0===a.options.waitForAnimate||!0===a.options.fade&&a.currentSlide===i))if(!1===e&&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&&!1===a.options.centerMode&&(i<0||i>a.getDotCount()*a.options.slidesToScroll))!1===a.options.fade&&(o=a.currentSlide,!0!==t?a.animateSlide(r,function(){a.postSlide(o)}):a.postSlide(o));else if(!1===a.options.infinite&&!0===a.options.centerMode&&(i<0||i>a.slideCount-a.options.slidesToScroll))!1===a.options.fade&&(o=a.currentSlide,!0!==t?a.animateSlide(r,function(){a.postSlide(o)}):a.postSlide(o));else{if(a.options.autoplay&&clearInterval(a.autoPlayTimer),s=o<0?a.slideCount%a.options.slidesToScroll!=0?a.slideCount-a.slideCount%a.options.slidesToScroll:a.slideCount+o:o>=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&&(l=(l=a.getNavTarget()).slick("getSlick")).slideCount<=l.options.slidesToShow&&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&&i.slideCount>i.options.slidesToShow&&(i.$prevArrow.hide(),i.$nextArrow.hide()),!0===i.options.dots&&i.slideCount>i.options.slidesToShow&&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))<0&&(o=360-Math.abs(o)),o<=45&&o>=0?!1===s.options.rtl?"left":"right":o<=360&&o>=315?!1===s.options.rtl?"left":"right":o>=135&&o<=225?!1===s.options.rtl?"right":"left":!0===s.options.verticalSwiping?o>=35&&o<=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>10),void 0===o.touchObject.curX)return!1;if(!0===o.touchObject.edgeHit&&o.$slider.trigger("edge",[o,o.swipeDirection()]),o.touchObject.swipeLength>=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&&(o.slideHandler(e),o.touchObject={},o.$slider.trigger("swipe",[o,t]))}else o.touchObject.startX!==o.touchObject.curX&&(o.slideHandler(o.currentSlide),o.touchObject={})},e.prototype.swipeHandler=function(i){var e=this;if(!(!1===e.options.swipe||"ontouchend"in document&&!1===e.options.swipe||!1===e.options.draggable&&-1!==i.type.indexOf("mouse")))switch(e.touchObject.fingerCount=i.originalEvent&&void 0!==i.originalEvent.touches?i.originalEvent.touches.length:1,e.touchObject.minSwipe=e.listWidth/e.options.touchThreshold,!0===e.options.verticalSwiping&&(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&&1!==n.length)&&(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&&!l.swiping&&r>4?(l.scrolling=!0,!1):(!0===l.options.verticalSwiping&&(l.touchObject.swipeLength=r),t=l.swipeDirection(),void 0!==i.originalEvent&&l.touchObject.swipeLength>4&&(l.swiping=!0,i.preventDefault()),s=(!1===l.options.rtl?1:-1)*(l.touchObject.curX>l.touchObject.startX?1:-1),!0===l.options.verticalSwiping&&(s=l.touchObject.curY>l.touchObject.startY?1:-1),o=l.touchObject.swipeLength,l.touchObject.edgeHit=!1,!1===l.options.infinite&&(0===l.currentSlide&&"right"===t||l.currentSlide>=l.getDotCount()&&"left"===t)&&(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&&(l.swipeLeft=e+o*s),!0!==l.options.fade&&!1!==l.options.touchMove&&(!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<=t.options.slidesToShow)return t.touchObject={},!1;void 0!==i.originalEvent&&void 0!==i.originalEvent.touches&&(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&&(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&&e.$dots.remove(),e.$prevArrow&&e.htmlExpr.test(e.options.prevArrow)&&e.$prevArrow.remove(),e.$nextArrow&&e.htmlExpr.test(e.options.nextArrow)&&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&&i.slideCount>i.options.slidesToShow&&!i.options.infinite&&(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>=i.slideCount-i.options.slidesToShow&&!1===i.options.centerMode?(i.$nextArrow.addClass("slick-disabled").attr("aria-disabled","true"),i.$prevArrow.removeClass("slick-disabled").attr("aria-disabled","false")):i.currentSlide>=i.slideCount-1&&!0===i.options.centerMode&&(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&&(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&&(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<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}});
assets/lib/eicons/fonts/eicons.ttf000064400000626034151327220410013234 0ustar00�pGSUB �%z�TOS/2>'LP`cmap�촡�cvt dfpgmb.�ztgasp\glyf�����ښhead ��l6hhea
l��$hmtx������locaz�����maxp�^d name�C��post�J��<prep~�;�+��
0>DFLTlatnliga��z��z��1PfEd���R�jZ��,��,
�������	

 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~��������������������������������������������������������������������������������������������������������������������������������	

 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~���������������������������������������������������h�������������������	�	�	
�
�
����
�
�
������������������������������������ � � !�!�!"�"�"#�#�#$�$�$%�%�%&�&�&'�'�'(�(�()�)�)*�*�*+�+�+,�,�,-�-�-.�.�./�/�/0�0�01�1�12�2�23�3�34�4�45�5�56�6�67�7�78�8�89�9�9:�:�:;�;�;<�<�<=�=�=>�>�>?�?�?@�@�@A�A�AB�B�BC�C�CD�D�DE�E�EF�F�FG�G�GH�H�HI�I�IJ�J�JK�K�KL�L�LM�M�MN�N�NO�O�OP�P�PQ�Q�QR�R�RS�S�ST�T�TU�U�UV�V�VW�W�WX�X�XY�Y�YZ�Z�Z[�[�[\�\�\]�]�]^�^�^_�_�_`�`�`a�a�ab�b�bc�c�cd�d�de�e�ef�f�fg�g�gh�h�hi�i�ij�j�jk�k�kl�l�lm�m�mn�n�no�o�op�p�pq�q�qr�r�rs�s�st�t�tu�u�uv�v�vw�w�wx�x�xy�y�yz�z�z{�{�{|�|�|}�}�}~�~�~��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������	�	�	
�
�
����
�
�
������������������������������������ � � !�!�!"�"�"#�#�#$�$�$%�%�%&�&�&'�'�'(�(�()�)�)*�*�*+�+�+,�,�,-�-�-.�.�./�/�/0�0�01�1�12�2�23�3�34�4�45�5�56�6�67�7�78�8�89�9�9:�:�:;�;�;<�<�<=�=�=>�>�>?�?�?@�@�@A�A�AB�B�BC�C�CD�D�DE�E�EF�F�FG�G�GH�H�HI�I�IJ�J�JK�K�KL�L�LM�M�MN�N�NO�O�OP�P�PQ�Q�QR�R�RS�S�ST�T�TU�U�UV�V�VW�W�WX�X�XY�Y�YZ�Z�Z[�[�[\�\�\]�]�]^�^�^_�_�_`�`�`a�a�ab�b�bc�c�cd�d�de�e�ef�f�fg�g�gh�h�hi�i�ij�j�jk�k�kl�l�lm�m�mn�n�no�o�op�p�pq�q�qr�r�rs�s�st�t�tu�u�uv�v�vw�w�wx�x�xy�y�yz�z�z{�{�{|�|�|}�}�}~�~�~����������������������������������������������������������������������������������������������������������������������������������������������������������X%Hi�@G>	dTLc4	SKK�PX@6	rri		ijYaQ@8		��i		ijYaQY@fe
+%4/&"#"&/.'&/2?6'4/&"27'&'&/&'&54636"/&47'"/&4?6262�@		

	?
-�	?
-		?
	
		
-H?K@-J?G@�@	



	?	-
�	@-	@
	
�%,@I?G-?K@�^
'@Xgs�}@zoiLK<;	L�

~�~i
	
	ggYaQlked][UTEDBA5421-,%#+%"&4?62"&=462'+"&46;2"/&'72?64/7''&"&/&4?62+"&4?6;2'"&=462"&4?62NM1	D``~-HeHR
-S	f�HS

-Sf-He�aa�|NN�NNa`>	+$,eS,
SHe�S,SHfI,e"�``2NMC�@�@):LK�
PX@2��~pgW`P@3��~~gW`PY@&56%5%+26=4&+"2?#!"&546;2+"3!276=46;2�=�A�
%
�A.��-BA.��$$@�=�	
A�
%
#{,CB-@.A$��${�/@L�v+764&"'&"2?2764'D�"��#��!
��
!
I�#��
#��"
��

#
R�	&MYeq5@"'EL	JK�
PX@m�r�r		�gjWh

ii
g

Y

a
Q@n���r		�gjWh

ii
g

Y

a
QY@0hf\ZPNnkfqhqb_Ze\eVSNYPYIGBA=;:85420&+#575#57#5767654&"346235#>54&#"3462+32"&5#32654&!"3!264&!"3!264&!264&#!"�S9	
$		'Q	
			
	

b�%��%����%@T��
	



+�	


&""�""�""|�$-6?u@r

�
~
g
i

i	Y	h	a		Q87/.&%
<;7?8?32.6/6*)%-&-!$$
32+#!"&463!2!"3!264&!264&#!"'"264&"264&'"264&|�%�*�%����%�%%4$$%%4$$%%4$$^"�""�""i%4$$4%�%4$$4%�$4%%4$�Y-qQ@N*,_8/LriiY_O...q.kPIGD.))!+%3254'.'&/"53276767654'&'&'&#"7676?6575'&/&'#&"'#&#'2?6;2#"&#"�y
	! 	�		 O&>,'
	
3A
 &3�u'

��

a3
��	!@


A0#�YIK�	PX@
;7LK�
PX@
;7LK�PX@
;7L@
;7LYYYK�	PX@'���YaQK�
PX@&���WaQK�PX@"��YaQ@'���YaQYYY@FB=<!/+%76?67676=&'&#"'7332?2#"/&#&#"M
90
H
'

&e
Q	!


b/>
	 �XXhK�	PX@C,+aY	
LK�
PX@C,+aY	
LK@C,+aY	
LYYK�	PX@&i
i
		
W

	_	
	OK�
PX@0YYi
i
		
W

	_	
	O@&i
i
		
W

	_	
	OYY@ec][NL87531/XX+"/63272727"327676767654/&/&'&#'53?##"&'&'&=4'&#!"&=463!2



6N)#
!C'0H/6K�� �:'\Z(
	2G	y;'%(6j>�4�l%*@'��WaQCC&5+".4>;29+#9"&5##9"&5�.L+,K.�**H#AZB$�a��ak���AK�
PX@A54
`X
�����LK�PX@A54
`X
�����L@A54
`X
�����LYYK�
PX@4

�	
igYW_
OK�PX@0

�	
igY_
O@4

�	
igYW_
OYY@!������{xsl]\RPKD><'!��+%"&"#"&46?6765'&+"32#"&"#"&4632?6765'4/.'&#'"&5476322632#";76=4'&/&'&546322632+"7'737#52>=�(/&	

�
(0$	


	(0$	
	�&/&	
		
 r%��	'�x.


'/

	

	
,ii,	
	
-��&�T��'!������@�6
�YU��L�	

i

igWY_O�����������Յ�urleXWPNJD@>.,("��+%"&"#"&46?676=4'&+"32#"&"#"&4632?6765'4/&/&#'"&46322632#";?4'&/&'&546322632+""#".'&54>7622>7653#4767676?67676764'.'&w&1&	

�(1$		
(0$	

�
&0$	
	

�
		
.
'%e �				�	'�-	
')
-ss-		
,��&B



##'
	Q



�����@�d:���
��
L�

�
	iig
iYgaQ�����ŷ���������~}trnihfa`[ZTRNHEB+% ��+%"&"#"&47672?676=4'&+"32#"&"#"&47672?6765''4'4/&#&"&46322632#"374'&#"'&54622?2#"374>2332767>4.+5;27654&'&'&#""'&/&'&54>2#"&'&'&w'0&			
�(1$	
(0%
�
	0*	
-%

	
	)3$"
&)
�
'�-	'*

-ss-	-��'=
	
$

#	
'
�����qK�
PX@6YU�����
�LK�PX@6YU�����
�L@6YU�����
�LYYK�
PX@@�	
ig

gYW_OK�PX@=�	
ig

gY_O@@�	
ig

gYW_OYY@/������������������urleXWPNJD@>.,("��+%"&"#"&46?676=4'&+"32#"&"#"&4632?6765'4/&/&#'"&46322632#";?4'&/&'&546322632+"77#527>76=#5733'35w&1&	

�(1$		
(0$	

�
&0$	
	

�%�
��1�T�	'�-	
')
-ss-		
,��&Z'!	.��./n�����@��6
YU���ʄL�	

i

ggiYgaQ���ú���������urleXWPNJD@>.,("��+%"&"#"&46?676=4'&+"32#"&"#"&4632?6765'4/&/&#'"&46322632#";?4'&/&'&546322632+"7332767676=4'&'.'&#"/3273>536?6372"&'&'&54676?62w&1&	

�(1$		
(0$	

�
&0$	
	

n
	

��	 ,
(+3$	�	'�-	
')
-ss-		
,��&.		�QY&+


������@6��YU���LK�	PX@M

��p	
iigYgbR@N

��~	
iigYgbRY@/�����������������urleXWPNJD@>.,("��+%"&"#"&46?676=4'&+"32#"&"#"&4632?6765'4/&/&#'"&46322632#";?4'&/&'&546322632+"7"32767676=4'&/&/&'&7"'.5'&54?67&'&">767632#"&'&'&54?>?67>2w&1&	

�(1$		
(0$	

�
&0$	
	

�



a
	'
	+ .


+5�	'�-	
')
-ss-		
,��&�
		

				
l
&	)2"(	
��#K2@/3
LiYaQ568)556'++"&=46;26=4&+"&=46;2+"'.=46;26=4'&+"&=46;2�.D!"t"  -	D!"tH�:
'.

!t!"�:
'
- 

	"t"����14@1$L����v10)(
	+%".?'&4>6.26'>/7>.2

��

�

�
��
��
�
	��

�

��
��
�

�~g

��
�
��

�

��j�R0@-ggW_O+3#%!!!!!!���X��X��X��R���X�X��j�R $(O@L
�	���gW_O('&%$#"! 
+"27>764'.'&#3#535#535#53�f]Y�&''&�Y]�]Y�&''&�Y]�SSM������R'&�Y]�]Y�&''&�Y]�]Y�&'�<��`SSTSS���h�T5g��t@q
fgL L

�i	i	

	
iiYaQ��ih����uth�i�cbVTDB97,*	55+/67>764'&'&'1&&'&'.7&>6%767>'6.&47676766'&'7"'.'&74>762"7>764'&'.�bZ &*/b.1J$%216612%#"HLM��cc��MLHE���MR[�@AFF��[[��FFB**:8=>89**U85r6�'%$6!7#%P%$8$%' ,==,

:�&K.3k2.%''$/16�SF�dd��KK��dd�EHLHFA@�[\��DD��\[�@V>96)..*59};7V��
7"'+(H7&$R&$7
e
-:@:

*@��g�)@&��W_O%!&!#+#";27676=324+54.#"��??�!;�??�	
��}�"	�}�
��#A@>ggW_O ##	+!264&#!"!264&#!"!264&#!"h%%��%%%%��%%%%��%%%2&&2%�%2&&2%�%2&&2%	A�#T@Q

g	gW_O#"! +35#35#35#535#35#73535#35#35#�����������������`���������f���T���������`��`��j�R+7COv@sLg
gg
g

g		W	_		OED98-,! KIDOEO?=8C9C31,7-7'% +!+
+!"3!2654&#!"&5463!2%!264&#!"7!264&#!"!"3!264&'!"3!264&���%%k$$��		k��

��



��

 ��



��



X$��%%w$�K		w�

}

�l

}

��=-:FOXv@sALi

i		iii
Y
aQPPHG/.PXPXUTLKGOHODC>=54.:/:$#--
+"27>764'.'&"'&'&476762"26=4&"&=462'"264&"&462�aYV�$&&$�VY�YV�$&&$�VYavfc:<<:cf�fc:<<:cfw%$4%%

$$4%%


=&$�VY�YV�$&&$�VY�YV�$&�k<:cf�fc:<<:cf�fc:<$�%%�$��		�

�%4$%3%S
����B\h��@��x
F
E5RL�oL
�

�����	ig
Y
aQDC����������wuqpfe`_USONIHC\D\=<8721*)$#BBK+.6?213251327>/7%22654."2>54&""&=46'"54&"26=32>=4."&=462&'&'&'53264&+5676?6."'&'&'.#";676767632327>�}*}*
�00�$0800:/

$4%%�"

!00"$4%%4$�
		
(
	

 
		
!��pp���S$		00S00%%S$*T��

1S0�%%S$$��	�

�			
��

			
�C #'*<M_Y@V)$\9*'&%! 
#("LJ����YaQXWPOJIBA54-,+'&'#&+#32727376477''%&"264/764764.264'%&"264/764����
���_>>!!}!Ȟ��}}nn3���
�`SSEEm����G_B>B!B}!�<��}}nn�����SSEE���XBTapb@_po]ZJI^YhgTOF@0-	eEL��iYaQVU\[UaVa53/.*(#!+&/76&'&'&'&"3267676326/623227>/7676/732?6?"'6 &'&&'76?�
q3KF`�`FK3	q;.7-?!
l�l!>-7.;�4H~1T	&(�R_B65��56B_=~H
(&	Tz
%i	

	i%

b�>?
�b
�+pQ�	
@

�%%�
p+)

	���7To[@Xh0`(L
g
g	Y	_O:8ljdb[YMJA?8T:T42,*#!	+!";;2676=4&+7>=4&+"&5463!2%!";;2676=4&+7>=4&+"&5463!2���%%hb�Jx%$#a=5%,	}

$
��%%hb�Jx%$#a=5%,	}

$
�$��%E11
	VFnv�$��mi:G
F)Z
$

>$��%E11
	VFnv�$��mi:G
F)Z
$

����.^X@U-L,%$I�
gg	Y	_O1/! WTPNIFA>;8/^1^*( .!.+.6?32?676/32>&/"'&'#"!";264&+"&=463!2+";2>=4.�?G	]JX�S8I	0���00�		�$%$$�

�00���?�6		z�!�	/��0�0%�$$�%
0�0�m,9EQ]t@qg

i

g	iW_OTRHF<:.-! ZWR]T]NKFQHQB?:E<E43-9.9'& ,!,
+!"3!2654&#!"&5463!2"2>4.".4>2)"3!264&'!"3!264&'!"3!264&���%%k$$��		k�'C((CNC('C(00800��		M		��		M		��		M	m%�`%%�%�!		�		>(CNC((CND'�080080

}

}


�m=RUjm~����@��Tl
��L��	1K�~		�~ i%i"i&i'	Y#!g

i
i$g'aQ���pnkkSS���������������������������{yvun~p~kmkmedbaSUSUONKJ==8743/.)($#(+7""&=4622654&"2654&%22654&"2654&""&=46'.6?327>'7%.6?3327>/7#"26=3264&#532"#54&"26=326=4&%26=3264&+";h


$4%%4$�
$4%%4$


�?>
Af�>?A
b�)	%%	�	S

S
��

*

}		)�
S	%%S$$	h	%%S%%


	S	���?--�8,,#	�		>%4$S*

S
??

�

??

�
��

��"26FJZ^k@hLXD0Kg
Wi
_
	OMK97%#^]\[URKZMZJIHGA>7F9F6543-*#2%2+&"264/764'&"2?64%#";26=4&#53%#";26=4&#53%#";26=4&#53b**e**�z�		�	}}�		�	}}�		�	}}�))#))J}		}}T)}		}}T)}		}}T	�j�T+7C[y��d@/E
jdT
l\{�����		LyKK�	PX@r
r�r�



gghgghg		gW_O@t

����



gghgghg		gW_OY@?:8.," ����������|utonhfa^QNIF@=8C:C41,7.7(% +"+
+7#";26=4&+"&=46;2!264&#!"!"3!264&!"3!264&&+";26=4'76.+"&=46;2'&";6?&+";26=4'576.+"&=46;2'&";2?�%%�%%	�		�	�G		��	P��		G		��		G	�K�%%�%(2	�		�M-?		B-�%%�%(2	�		�M-?	B�%�$$�%��		3
��

��

8,$�$$�9	��

�
n-?_�,$�%%�9
��		�n->	^��#/;GS_kw���@�
gg g!g"	
	g#

W#

_
O��zxnlb`VTJH><20&$�������}x�z�tqlwnwhe`kbk\YT_V_PMHSJSCA<G>G750;2;+)$/&/##$+!"3!264&!"3!264&!"3!264&!"3!264&!"3!264&!"3!264&!264&#!"!"3!264&!"3!264&!"3!264&!"3!264&!"3!264&��_		��_		��_		��_		��_		����		$��		�`	��`		�		�`		�		�`		�		�`		�	���		#	�
}
}
}
}
}
H
T
}
}
}
}
�j�R38M^dm@j		!
	Li	i
	
	
igYaQ__NN:9_d_da`N^N^WTDC9M:M8654+*#3*+76.&'53264&+";'.2767654'&%3'"'&'&476762"3!2654'&'&22Re		�		fQ32J)+<:ce�fc:<+*��*k]Y5665Y]�]Y5665Y]k

M	0/QRKM�OpD
D8X

X7C
D=VYdwfc:<<:cfwcZV�T��64Z\�\Y4664Z\�]Y56�
��		`RQ/0��#O�M������2X��@�0`7)�
*	L��

�		��
i

i		Y		a	Q43��{zvurplkhgcb]\QOKI?>:93X4X-,4+/.#'#2?265264&6?2654&7"265462;264&+76=4.4."265462#"32"&54&"2>54&'>�}|Y

Y��
S-

�0

%4$��

{y0o/:/$4%%

%%4$

080H}|Y��

}YH}
D��

M/

%%�


�%0h//

%%4$

%4$$		00++��.=IUaX@UL
g
	gW_OXVKJ?>][VaXaQOJUKUEC>I?I
+!"3!2654&#!"&5463!2&2676&%&2676&#";264&!#";264&!#";264&���%%k$$��		k��}}F}}��T

TE�

�

o�		�

�%�$%�%��

�		@��M��M��


����M;@8C<5L�Ya
	QHF@?++&"'&'&""'&'&""'&'&""'&'.3276727672767327676&�"5#"6"#4#"5"0,!$%B%$B%%!,0�				
**��>,/;g@d L��h
g
		gW_O20850;2;/.&%,,+!264&#!"%3276/&"7##"2?>'&'3%!"3!264&*�		�l	V�}}�S��
}}�S�w�l		�	�

�
��
�o�����o�

����/GV@S81L�	��
gW_OGFA@;:54(%!	//+!"3!264&#!"&=463!2#!"3!2>=4.4&"'&"2?64&"k�00$

��%$�%%��$00��YY}}�0�0%�%%�$

0�0��Yn		��Y}}
����-ux|����@����zyw_T,
�	fL]K+$#I		�		~�g

gY_Ovv0. ��~}|{vxvxnk[ZVUQPGE@=:7.u0u)'- -+.6?32?>/32>&/"'&'#"!";264&+"&=463!010126=7327"3!2>=4.5573#75#?F?G	]JX�S8I	0�\��00}		}$%��B��G��
00��6qB}B��B�4���?�6z�!�	/��0�0%�$h}>		6��G��	0�0*55�Bp���B�B�4��Yf�@aV	P
	LK�	PX@Jrg
i
	
i		i

iiW`P@K�g
i
	
i		i

iiW`PY@-[Z! _^Zf[fRQNLGF@?9831.-(& Y!Y
+!"3!2654&#!"&5463!2"326764&"#".4>2"&'74."3267267654."&462���%%k$$��		k�{>j>>j>,S C%3V33VeU3!0801-A0>i>%%3#$�%�$%�%��

�		>i|i>!2VfV32U20080+ >i>��$4%#!����0Uamy�@�!L

��g

ig		ig
gW_OpndbXV31vsnypyjgbmdm^[VaXaQOLJFEBA><971U3U.+&#
	+!"3!2?!2>54.#!"'&#!"&5463!2#"#";26=3264&+546;264&!"3!264&7!"3!264&'!"3!264&���00ww00"$��	nn	��%%$�{*0		?

?%*���		#	t�`		�		�`		�	�0�_0ww0�0��%oo%�$$0�		�

$

��
}
}
�i�R#SW|�@�ug2&
v^GL5
K

�g

ig

g	g		gW_O%${xki`_][WVUTLJDA<9/,$S%S!	+!"3!2>54.#!"&5463!2#764/.+"#54&+";26=3!26?6.#3#!'5326?6=46;2;2���0000"$��%%$Ŝ%K	�		�	5,(;
(�=���$��CQ	

	�%R0��000��%%$$��'^(%K�

��		25'�+ �`M� "��
K
L .	
)�j�R',/;G�@�.*L
ggg	g		g

W
_

O><20--DA<G>G850;2;-/-/,+)("''+!264&#!"!"3!264&!"3!2654&!)7#";264&#"&46;2�		�B	�B		�		�B		�	�N�p��_5�f�"11"�#01"��(

S

}	�

�	*��q66S1E11E1}""��#'3?\@Y!
L
g
W
_	O64*(<94?6?0-(3*3'&%$##	+#";26=4&#53%#";26=4&#53%#";264&#"&46;2�		�

��b�

�	��N�"11"�#00#���}		}}T)}		}}T)0E11E0}""��#'7;KO_csw�@�5!
iUA
Lg
	gg

W
_

OedQP><)(wvutnkdsescba`ZWP_Q_ONMLEC<K>K;:982/(7)7'&%$##	+#";26=4&#53%#";26=4&#53%#";26=4&#53#";26=4&#53%#";26=4&#53%#";26=4&#53$�		�

��b�

�	��b��	��z�		�

��b�

�	��b��	���
�		�
��*
�		�
��*
�		�
���	��	��)	��	��)	��	���m#'7;a@^-Lgg
g
W
_	O*(;:981/(7*7'&%$##
+#";26=4&#53#";26=4&#53!"3!2654&!!��		�	���		�	����e		���qm	�		�	�	�

�	ЧM	�

�	������#'7;KO_csw�������@�5�����}L&g
	%$g)'g(

g, +*#g"W"_!O����zxfdQP=<*(�������������������������x�z�wvutnkdsfscba`ZWP_Q_ONMLEC<K=K;:982/(7*7'&%$##
-+326=4&+"73#!26=4&#!"7!!%#";26=4&#53#";26=4&#53!26=4&#!"7!!%#";26=4&#53#";26=4&#53%!"3!26=4&!5!%!"3!26=4&#53�		�	��w��	N����		�	�����

����zw

��	M����		�	�����		�}}���		M	��#���		#	��	�

�	Ч)	�

�	Ч�
�		�
ѧ�	�		�	Ц�	�		�	Ц�	�		�	Ц��

�Ч)�

�Ч)�

�Ч����#'7;KO_csw�@�I	
iLg
g
	
	ggg

ggW_OedQP><)(wvutnkdsescba`ZWP_Q_ONMLEC<K>K;:982/(7)7'&%$##	+#";26=4&#53%#";2654&#3%#";2654&#3#";26=4&#53#";26=4&#53%#";26=4&#53$�		�

��b�

�	��b��	��z�		�

��b�

�	��b��	���	�

�	��*	�_�	�_w*	��		M	��#��
�		�
��}	�		�	��}	��	���jkR
%:Gn��@��}|xslgd\UT	

L
	
	�
i		i
ggW_OIH<;'&HnInBA;G<G10&:':!%$

+2!"&5467%2#!"&463%2#!"&4632"'&'&47676"2>4.22/'&'&57'&5>3?4676'46?'"&'V

�8

�

�<

		��

�TIG*++*GI�IF*++*FITJ|II|�|II|J
.dG\WKd-
	B2
?>2Cl	
h��+*GH�IG*++*GI�HG*+*H|�|II|�|HSX	Gd).dG
W	C>.
C!!C.�j�REOZ^�@�GYRQNHL�igii
	
	g

Y

_
OPPFF
^]\[PZPZFOFOKJ@>=;7520/-(&%# EE
+2>4."72"&46%!53264&+";!"3!#";264&+5!2654&'&#572?)!�//900%%4$$�!

S		�K		�		S

�	���	�
	k�6��/:/080�$4%%4$�S

S	�<	S

S	�	*��ɒ�7�f�	����	�jlR%-9EQ]fo�@�-
($
L�gi

igg	g	
	
gW_Ohg_^SRGF;:/.lkgohocb^f_fYWR]S]MKFQGQA?:E;E53.9/9'&%%)2+4&#!"3!273053?'.'&!76?!"3!264&!"3!264&!"3!264&!"3!264&264&"72"&46k	�<		�*��n�����o����



��



��



��



�B#11E11""=		�6�����F���`�G���

}

}

}

�1E11E1}""���(1Acr{��K�	PX@!|/
:kqpfeb\VQ'LK�
PX@!|/
:kqpfeb\VQ'L@!|/
:kqpfeb\VQ'LYYK�	PX@[		�		~
�ii

giiW_OK�
PX@`		�		~
�ii
W

giiW_O@[		�		~
�ii

giiW_OYY@CddBB32
��~zyvudrdrBcBc_^YXTSPOIH2A3A,)$!11
+2>4."72"&46%#654."!"3!2654&%2&'&54>2?67673'&"'&#'&#567?4&"26'462"&�//900%%4$$�'CNC(��		�	��0('&(1l,,��U�
��
���X��$4%%4$S
40:/080�$4%%4$�'C''C'
�;�
}01U8?=:U10�=S,0		0,S=���f���	�7�e��i�7�$%3%%
�j�RDaq�@�p4'9	&	ohgQK

L		�		~


�

�giiW_Ocbmkbqcq][TS?>;:,*%# DD+2>4.""&462%!"3!264&#!572?6.'&!2654&.?32?>/3276&/"'&'#"}080/90�%4$$4%��B		�		�K�
hY��

�e

j\
}W��
^X^		\Zm009/0%%4$%�	�<	�
�
��	�7��		G	����
S�?�
	�,�	H�	�jkR'+7GKT]�@�'"L
g

iigg
g
	
	gW_OVUML98.,((ZYU]V]QPLTMTKJIHA?8G9G41,7.7(+(+*)! 
+!"013!2654&'.'&!76?!!"3!264&!"3!26=4&#53264&"72"&46V�<		�	��n�����o��7�h�6		�	\��

$

����#11E11""R	�6�		�	*���	�F���`�G���6w

�	S		S	S)1E11E1}""�j�R#[@X
gg
	
g		W		_	O   # #"!
+!"3!2654&!!%#3!!!)5!�B		�	������w����R	�B		�	����`��6�6���j�R?q���'G%5654'.'54&'67654'&'&#"&'&"7326?6767654'&'#'&327#"'.54767676?6767'754&">=4&"327&'&547632276?65327&'&'&&'6767676324767676767632&'&>.#"&4632676762&+"#"/&#"327#".%0##"'.=476327�2"'!8%951:7Dc*%8$<#m�OG�5$%!3I'!*
?1VD"27,(%.*%-$
 f	%
/%$(&%
	
)*7ZVs`
*F=LDB?):�!(0,>35-

IHP?G*
�	"11"ZiOQ1'	
	
++!  8.28*,LSE`X#09L=">}

�-Z>-$*	%c=62/&3#;!W�I>8'7P
	N&(#	
$�V



		
 

� 0?�RJB40	
��(-1;0,#
!5:HPZ	�	1F0�?0$	
!@#$(1a!0@v"

�jU!H\bn�@�bZFB;2/)(	LJ	�

�
g

g

jW_OdcJI""khcndn^]WVSQI\J\"H"H?>54,+! +#54&#3!2654&+7!!"54&"&=4&"26=>=4&3";2654&#476?#";264&�>
�^
�	q��S�6��

!!t)

)

�

�	�h

}��		A	L�s��*.cc.***4�		�4**F7
h		$��

��"+8Aa@^i

Y

a	Q:9-,$#
>=9A:A32,8-8('#+$+""
+"2>4."&462%"2>4."&462%"2>4."&462}00800%%3%%]00800%%3%%]00800%%3%%�080080�%3%%4$�080080�%3%%4$�080080�%3%%4$��"&+7CO�@Lg
	g

gggW_OFD:8-,KIDOFO?=8C:C20,7-6+*)'&%$#"! 
+)"3!3!265326=4&!5)3#!!7+53";264&##";264&#";264&����		�	�	����$�������wѼ>���		�
	�		�
	�		�
�}	�!		�	}}TT��)T�
}
}
�]="+8Au@r
iiii
i
		
Y

	a	
	Q:9-,$#
>=9A:A32,8-8('#+$+""
+2>4."72"&46"2>4."&462"2>4."&462�00800%%4$%00800%%3%%00800$$4%%m080080�%4$$4%��080080�%3%%4$�080080�%4%%4%��3X��@�1`8*�
x	+	L

�		�g
i

i		iW`P54��{zvurplkhgcb]\QOKI@?;:4X5X.-
+!"3!2654&#!"&5463!2&6?2654&7"265462;264&+76=4.4."265462#"32"&54&"2>54&'>���%%k$$��		k�-
S-

�0

%4$�
�

{y0o/:/$4%%

%%4$

080�%�$%�%��

�		?}	D��N0%%�	

�%1i00%%4$$4%%

00++���'+4=
@
75/-*(	2+4/764'%&27%64/76
%%727%%727%�
xw�!	�!wwww��
xw���N�Nf�L�Ln<<���Ln<<n^D>��>D
>D

��E>������?��{�>��>���$?In�\@Y�

g
	iW_O&%}xvsp`^NLHFEC8631%?&?#! +#"1"326?326?6.+732%#"1"326?326?6.+732'.+76.326?32326?6&%&+";32?6�W)	U$9""K F�W)	U$9""K F�"<	>	&F	��		���	�SD,#%]}"K	�SD,#%]}"+:	�	�"Y	Y%x

�	�
��=+7GKWco����@�=}Lg gg!		g
g"



g$g#g%gg&g(g'g)gW_O������rpfdYXNL:8.,! ����������������������ywprlidofo`]XcYcTQLWNWKJIHA?8G:G41,7.7(% +!+@
	*+#";26=4&#53!264&#!"73264&+"!"3!264&#";26=4&#53!"3!264&%3264&+"!"3!264&#";26=4&#53!"3!264&%3264&+"!"3!264&�		�

�ВG		��		�

�	P��		G	�3�		�

����		G	���

�	P��		G	�3�		�

����		G	���

�	P��		G	=	��	��}
S

}

}	�

�	��S

*
}

}
�		�
��S

)

}

�m+7IZz@wQF	L
g
	
Y		g
igW_O.," VUMLBA:941,7.7(% +"+	+!"3!2654&!!3264&+"7!264&#!"7!264&#!"'&"264/764'&"2?64-��		q��H����		�		�6		�		�6	�TTEEeSEESm	�

�	��`
S

S

wSSEEMSEES�j�R=Gbu�=@:�|urSE4(!L����v\Z86-+&%+47654#""#101&'&27327676'&'732767>'&'.'&'.7676327'0"1'&'.'&'&?'&'&767'&���q)�.2/5%/1%\�E;G2"%
�/,*!*(48V!
X����N,%("1)$ 
	
	>�`:L0BUk/:AN�q)6:;�
%/]H^��D&0%5.2.�!!
!V84(��N��
$+0)"(%,�>�:`g04..)%.lTB&�"26FJZ^jv�����@�XD0Lg

	g! gi$#"W$#"_O������ywmka_MK97%#������������������~|w�y�rpkvmvfd_jaj^]\[TRKZMZJIHG@>7F9F6543,*#2%2%+&"264/764'&"2?64%#";26=4&#53%#";26=4&#53%#";26=4&#53#";264&3#";264&3#";264&#";264&3#";264&3#";264&wTTEEeSEES�Q}		}TT}		}TT}		}TT�!}		}�}		}�}		}��S		S

�S		S

�S		S

�SSDEMSEDS�
}		}
}S*
}		}
}S*
}		}
}S�


S





����/3?OS_os�������@�M-
��mL(&$	g
g)'
%g.,*!g g/"-+W/"-+_#O��������utb`TTA@54! ��������������������������������|ytusrqpig`oboT_T^ZXSRQPJG@OAO;84?5>3210*' /!/	0+#";26=4&#53264&+"3#";26=4&#53264&+"3#";26=4&#53264&+"3#";26=4&#53#";264&#";26=4&#53#";264&#";26=4&#53#";264&$�		�

��		��

�	��		�		��	��
	�

�6�		�

����	n�

�	���		�	n��	���

�

�
�		�
���
w
�		�
���
w
�		�
���
T�		����

M�		����

M�		����

����/3?OS_kw�@�M
-	E
Lgggg		ggg
g

W

_

Omla`UTB@64! tqlwmwhe`kak\YT_U_SRQPIG@OBO;94?6?3210*' /!/
+#";26=4&#53264&+"3#";26=4&#53#";264&!"3!2654&!!3264&+"7!264&#!"7!264&#!"�

�	���		�

�	���		����		q

��G�!�

�		w

��		w

��	�
�		�
���
T�		����


��


���e

}

}

�j�R#'7;GT`pt�������������@�H
L2g
	10g34

g7g65g"9 8:#!$g=,<(;$/+'&$'g.*&%%&W.*&&%_-)%&%O�������������vubaUU=<*(��������������������������������������������������������|u�v�tsrqjhapbpU`U_\YRPMJB@<G=F;:982/(@7*7'&%$##
>+326=4&+"73#!26=4&#!"7!!%#";26=4&#53";264&#4&+";26264&+"3326=4&+"73#!26=4&#!"7!!%#";26=4&#53#";264&!";264&#264&+"3#";26=4&#53%!"3!26=4&!5!%!"3!26=4&#53�		�	��w��	N����		�	����		}�}		}c}		����

���!w

��	M����		�	����}		}
�		}
	�}		���		�}}���		M	��#���		#	��X	�		�	Ц*	�		�	Ц�	�		�	Ц�


��	�		�	Ц*	�		�	Ц�	�		�	Ц�

)
*	�		�	Ц*	�		�	Ц*	�		�	Ц�j�R/3?OS_os������@�m�!�L(&$	gg
%g)g*g'

g.!!g,gg +g/"#g-W-_O��������utb`TTA@54! ��������������������������������|ytusrqpig`oboT_T^ZXSRQPJG@OAO;84?5>3210*' /!/@	0+#";26=4&#53264&+"3#";2654&#3264&+"3#";2654&#3264&+"3!#";26=4&#53#";264&%#";26=4&#53#";264&#";26=4&#53#";264&$�		�

��		��

�	��		�		��	��
	�

�6�		�

����	n�

�	���		�	n��	���

�

R	�

�	���

w	�`		�	�_w�

	��		M	��#�`

�		�
���
�	�

�	���

��		����

	���0@NZt�����@~T	S9
Z=L&KLDI		�

�i
	
	
giYaQ������������������nl]\@?)'00+"327276?6&/276.'..=46?&'&/&/7'&'&577#"'#.'&'.7567632&76327676.732?>.'2?64.#";264&�1~�!#1S(
$k('.?#@65|�>�2�:NV-
,p6)@K/-6�*	-e,-	(.76009�1C$-(���	SS�}

}	
	��m<#7Q)G}$2,��GEQ�}
&)\:(2UY-Y	B�
�6(G�9=KA?*!O<>E>o& '%?A�|/
:E
31+?>SSS�

�j�S%(Z`fox�������@�'9?8^[._-bFaGXQ	L��g	g		i#g


i

i$i i!i%g"iW_O������������zyqphg&&������������������������������������~}y�z�utpxqxlkgohoUT<@;&(&(!%%&+!326=!2654&#!"3!264&74'&'5>'.'54&".26=>'467&5"264&"&462"264&"&462"264&"&462";264&##";264&#";264&����	��5	�


�
�H".#
$0#.#%/�*S*��%%4$$	
%%4$$	
%%4$%	
�		��		�2�		�

G
��		G	���


q����
@
$' 
?
	$		(�8
u9
	$4%%4$S
T$4%%4$S

S%4$$4%T

w
�

�


����#'+/37;kqw�@�!oOHE=srpga`UT<	
L�~

~g	g		g
g

gW_O8800,,$$dcLKCB8;8;:97654030321,/,/.-+*)($'$'&%
##+#54&#!"#";3!26=32654&#5%!!'#53!!3%5>'.'54&".'4&26=>54'467&5��	�
�		�
�	�	���6*���6�*��_
/"$/S/"

#0�)S�>		>
��?		?H
*SSS}*SS����_S�5��_�U
*		.:U

	*

.<A
K�K��=&3@MYeqz��@�
i

giiig iii
g
		
Y

	a	
	Q|{srhf\ZPNBA54('
�{�|�wvrzsznkfqhqb_Ze\eVSNYPYHGAMBM;:4@5@.-'3(3! &&
!+"2>4.".4>2"2>4.".4>2"2>4.".4>2!264&#!"!"3!264&!"3!264&"264&"&462�(C''CPC'(C'009/0(C''CPC'(C'00800(C''CPC''D'//900�G		��	P��		G		��		G	��%%4$%	
='CPB''CNC(�080090S'DND''DNC(�080080S'DND''CPC'�0:/080�
��

��

w%4$$4%T

����&:Ki�@C
I)LK�
PX@A

rq	gg
i

W

`
P@A

��	gg
i

W

`
PY@5ML=;('fd`_RQLiMiFEB@;K=K641/,+':(:&$+26=332>/>=4.+"32+732653264&+"3264&+4&"!764&"01264/!264&�	]M
B&/}

h%%h�h

h		�

V�		�
��tZ}}Z�	4
hs
c5")/��
N%)%���

9
��

9��
}Z}	}Z�jWS"H�@B5 LK�
PX@*	riiYaQ@+	�iiYaQY@EC<;42)(""
+#"2767654.2"&=46"'&'&54>;26=4&'532G�J|I0/QR�RQ/0I|�	
A+*FI�HG)+=j>>$4%>?i>RI|J��`RQ/00/QR`wJ|I�}		}�!UHG)++)GHUw>j=W }%%} W=j>�j�R3/@,L�iYaQ)+67654'&'&"32767264476762"'&'&��065Y]�]Y5665Y]kKEB60�B0/QR�RQ/00/QR�RQ/0s16BFJk]Y5665Y]�]Y560��?`SP/00/PS�SP/00/QR��0K@H!L�~gW_O0/*)$#
+!"3!2654&#!"&5463!2'&"2?64&"���%%k$$��		kw�����%�$%�%��

�		—���
�j�R1CXjz@w%	
L
ii		ii
i

Y

a
QZYED32edYjZjKJDXEX982C3C,+#!
11+%"%64'%32>4.".#"32672>4.2"&'501&54>".4>28101".547015>2A*I��

tI*-M--MZL-
��I*-M--M-*It
-LZM--M-"9""9E<"9��"9""9E<<w"9"<E9""9�("�6�"(-LZM--M-�"(-MZM-)"�-M--MZL-q"9D9"&"9"��"9D9"&;&��"9"&"9D9"	�j�R'3?KW�@�gggg

g

g		gW_OMLA@54)(TQLWMWHE@KAK<94?5?0-(3)3$!''
+!"3!2654&!5!)!'#";264&'#";264&'#";264&'#";264&'#";264&�B		�	�l��GMh}

}		}

}		}

}		}

}		}

}	R	�B		�	*���<�<}

}

}

}

}

��= $(.8JMQUY_i{~�����������K@�/,+`]\M����&(���~ L27
	g65
43
g8;g:9$g>$1B/-+)(&$(g0A.@,?*'&%&%g<#=!  g"W"_O������������lj[ZVVRR;9*)%%!!������������������������������������������������}|vqj{l{fedbZ_[_@GVYVYXWRURUTSQPONLKE@9J;J5431).*.%(%('&!$!$#"  C+!"3!1326=4&#7#7373#73#73#73'3546+532!"3!1!26=4&#7#7373#73'3546#!5!2!";1!26=4&#7#73#3546#!5!2!"3!1326=4&#7#7373#73#73'3546+532���%%�}$$�``�B}B��}B}�}B}�}B}�}B}JJ_�ii��%%�w$$�Z``�B}B��}B}�}B}JJ_���c��%%�q$$�```�B}B�J_���]��%%q�$$��``�B}B��}B}�}B}�}B}JJ_���=$T$%T$�__}}}}}}}}}}}`K
i}
�$T$%T$�__}}}}}}}`K
i}
�J$T$%T$�``~`K
i
~
8$T$%T$�__}}}}}}}}}`K
i}
�m,E>@;/.L>%KgW_O	+!"3!2654&!!?'&327654&>&/&32?>.��H

���qT55T
655T
Tm	�_�	�_w*��*M
��
*
��*�C(,04>@;4321,+*) L�gW_O%$,&+&54&#!"'&;73!26=327654!!'57��
����H
�	�l}G���}}#8		8#
��
#8		8#
N
���Nw�����"<FP_@\G
Lgi	

g

W

_
O$#POLIFEB?74.-*'#<$<
	+264/764&"%'&"2?64#4&#!"#"3!26=4&463!2!#!"&=!}	EESSYSEESh>%�$?
%�%�q
�	��q	�f	� EDTSvTDES�b%%��	*$$*	b		��?����$6Ur�� @%}Vv]wW3

�M�L	�S	LK�PX@W
r

~

~	pgi	i		hW_O@Y

�

~

~~gi	i		hW_OY@;ss��������s�s�����zykied`_ZYPOJIEC?>/.'&
+!"3!2654&!!264/764&"2?64/&"3;264&+764&"54&"26=264/3264&+"#2?26='&5&'"/#";#";2?5>5754&"'&"��l		�	��k�DDT�TTEE�:T

!DE
ED!

T�E
T!D>!T

E�	�f		�	�fq�eEESSSSEEV
ED!
	TVT!DE�D!T

E�T

!D�m)?W@T7L

	iY_O+*<931.,*?+?$!))	+!"3!2654&!!%#";#";2654&#3264&+";264&��H

���zS		>>		S	8>>		S

S	m	�_�	�_w*���	�_w

	�_
��=$5a@^&
L�	���
hW_O54/.)($#
+!"3!2654&!!'&"2?64&"7264/&"2��l		�	��k��EESS�EESS�
��H
����EESS�EESS�C%6EHG@DHGF-"LgiW_O21)(		+!"3!2654&!!&"264/764'&"2?6432?64/&7��H

����SSEE;SEES��}		})CCC	�`		�	�`wZSSEEMSEESoTT
�
�,,�m%6H@E-"LgiW_O21)(		+!"3!2654&!!&"264/764'&"2?64��H

����SSEE;SEESm	�_�	�_wYTSEDNTDES�����,->A}���)2'&2?>=4&/.=46?62%&"32?64'5656.".&'&'&1#'&727>'676.'67>'&'"'67>.'&'2>.'.5676'&7676!"3!2654&+53264&+46;264&+"#";#"&5463!2#";2>=4.+".=4>;2'"2>4."&462�iGGi *+i$F$i+*jCCjj!D!j��}		tC��

	
B"
/& $$!JHM@8A	�%24
		
	F`
0'7G��%%M$$
�*

*#1		�		M
��(C''C(�(C''C@/�/0�0�"9""9D9""9""11E01		.� .

. �.��		�		
�
T>Y,��	
$*,#	*+%y<
�	

		
@		
$4j�$��%%M$�u	�

1"�	M

��'D'�(C''C(�'D'��00�00"9D9""9D9"�1F00F1����-03?n@k	L		�

�g	
	gg

W

_
O64
<94?6?320/,*%$-
-+!264&#!"276&/&";#"2?6'&+5'3#!"3!264&*�		�l	P
}}
hh}}hS�SS��l		�	�
���}�		�}��o?o�`

����#'+/37�@�gg
	g
gW_O44,,4747653210,/,/.-+*)('&%$#"! 
+!"3!2654&53#5#5))5!!!%!!!5!)5!�B		�	������"#�����%��%��q#��#�l%��q#�	�<		�	��}})}}M}}}}�}}}��}}}����!+6TW@T
3(R
L	g

gW_O-,$"MKEC<921,6-6'&"+$+8333
+'.+"&+".+"3!2654%32#'7>!32#'7>#!"&54?6;23!2�* � �� -	%k$�ѿ�	���	0��	-� 3>ox�"%%�~
F*E*�{		�x
`��B[e@bML)X&	L
gg		iiW_O! [ZJIDC=;41 B!B
+!"3!2654&#!"&5463!2"'&.'7>'&54&+"326=4&"'&'&776?���%%k$$��		k�4($-'5!
Q97^`qeWU03T*E48(3�%�$%�%��

�		��"5&+	#)pa]79Q32TXf,-8
4E*
����#8;_y��@�c:b
L
<	n	 L�

�		�g

ig	
	iY_Oa`99��}|rplkfe`yay]\UTONJIDC?>9;9;430/##
+!"3!2654&463!2!"&#7.6?327>/74&""&=4622654."2>%"54&"265132>=4."&=462���%%k$$�f	kp��	�!5�G}**�00V$4%%4$

080/:/��"
"00"$4%%4$�%�<%%�%���		��q6!	���pp���>

%%S%%

00S//�T

��		0S0�%%S%%��;T@QL
gi	gW_O! :852/-,*'$ ;!;
+!"3!2654&#!"&5463!2264&+";#";264&+���%%k$$��		k�'		S				S		�%�$%�%��

�		>
��

w��%6FJZ^nr���@�
-"�lXDxdP<	
Lgig
g
		
W

	_
	
	Otsa_LK87����|zs�t�rqpoif_nan^]\[URKZLZJIHG@>7F8F21)(	+!"3!2654&!!&"264/764'&"2?64#";26=4&#537#";26=4&#537#";26=4&#537#";26=4&#53��H

����SSEE;SEES�QTT

**�S

S	**�S		S	))�TT

**�
�_

�
�_w�TSEDNTDES�
TT
T**
TT
T**
TT
T**
TT
T*��#'7;KO_csw�������������!"3!2654&!!%#";26=4&#53#";26=4&#53#";26=4&#53#";26=4&#53#";26=4&#53#";26=4&#53#";26=4&#53#";26=4&#53#";26=4&#53#";26=4&#53#";26=4&#53#";26=4&#53�6		�	�`�	S		S	))S		S	))S		S	))S		S	))�T

T**T

T**T

T**T

T**�S		S

**S		S

**S		S

**S		S

**�
��H
��*
TT
T*}	S		S	S)}	S

S	S*}
TT
T*
TT
T*}	S		S	S)}	S

S	S*}
TT
T*
TT
T*}	S		S	S)}	S

S	S*}
TT
T*
��#'7;KO_c�@�!
A
]ULgg
g
	
	gg

ggW_ORP><*(cba`ZWP_R_ONMLFC<K>K;:982/(7*7'&%$##	+!"3!2654&!!7#";26=4&#53#";26=4&#53#";26=4&#53#";26=4&#53-��		��S		S	))S		S	))S		S	))S		S	))�
��H
��*
TT
T*}	S		S	S)}	S

S	S*}
TT
T*��=ep������@ѹ
ba_	�^ �Y421tXVU5��
�DCA:
	LW	igg		i
g

g
i

YWaQ����gf�ý������������������~xvmlfpgpROJG>=.+&#
ee+326=4&+"&'54&"'54&+";26=726=67;26=4&+"&'5>4&'567'21"&46+"&=46;221"&4676=46;2+"&=4/"&5146276=46;2+"&=4'��$$�%66%�%%�%6


6%�$$�%66%�	
�	��	EG	
�	�

�	EG


>E	�

�	�%�$$!7l		l ( �6!%%�%$!7� ( l		l7!$%�%%!6� ( �6!%�
	��
*

�		*E��	
0	)		�

*	D
	9D	*

�		)	��=;K[w������@�^l�L$g%*	gi
g&



g+ '!gig(g,")#giW_O�������zx]\><! ����������˼������������������������x�z�sronkieda`\w]wYVQNFC<K>K7632/-)(%$ ;!;
�-+#";26=4&+"&=46;2#54&"#";26=3264&#";26=4&+"&=46;2#54&"#";26=3264&#";26=4&+"&=46;2#54&"#";26=3264&!264&#!"!"3!264&!"3!264&�%%�%%	�		�	>


	!�%%�%%	�		�	>



!�%%�%%	�		�	>



�G		��	P��		G		��		G	=$�$$�$�

�

?				
�%�%%�%�		�		>



�%�$$�%�

�		>		

		q
��

��

�mAc�T@Q{nhYLF6)$	LUK�~gW_O�~\['&
+!"3!2654&#!"&5463!2&'&"'.6?;>?6&%&'.'.6?;>?6&%&'.'.6?;>?6&���%%k$$��		k��	&&	*
+,*	&&	)++
)		&'	*,+
*	m%�`%%�%�!		�		h		jYYj		�ee�		jYYj		�ee
�		jYYj			�ee����(2Hc@`
@=7	L�
	
g		gY_OCA?><943/*'%! 	22
+0#!"&463265!""&=463!2"&54&#!30132'3&5463!25!63!2���

%��%
	k
%��%
�}	##��#$l
%�%

��

%�z%)"�hh�e#���$eny��[K�
PX@&*xung32
LoTKK�PX@&oT*xung32
L@&*xung32
LoTKYYK�
PX@A��~~		ii

Y
a

QK�PX@;��~		ii

Y
a

Q@A��~~		ii

Y
a

QYY@������|{mkOMGE@>7654%$
+47.'&%2632656/&#"'"3262656/&#6767632#"3#"'65&62#"'&'&'&547676767632767>7654'&'&'&#"l"�1R;�&�		l;-*?X�		h5Y*1+5T:&
��y3N@0�26<Ry��V�V)& #@ %%@RbQ[XLF@ %%*9IbTWR<0""&5<RGd[PV3;%!!A@ZMQ�I/Y�
	��		����
O3

	3T��2XcoU^0ZQ=%%@RV�V*%!"@ &&!?@RPc]V)& #��""&5I(IbTWR;< !%(4<QGdVUGG3��#/;Gt@qg
gg	g		g

W
_

O><20&$CA<G>G850;2;+)$/&/ ##+!"&463!2!"&463!2!"&463!2!"&463!2!"&463!2!"&463!2�B		�	��e		��B		�	��e		��B		�	��e		��
}
}
}
}
}
�f�O�"&'&/&'&'&'#"'&'&'&547632765##".4>3235.54>23>32#"&'#0132767'&>76767>+%32676?676767>;6767#"'&'46;23264&#"+"&=47>54&"+"'.#"32676;2#"&'&?&'�)7!5$-

;G$$*&
?,//,?"9D9"?,00,?&+
%&5--$5 7,��$(!16





61!(#MR

,S"	^
	%%	
^	0E1_
	%%	
_"S,

RM�


$12Db:5(
	�0:/ 0"9""9"0 080�t
(*-
bD21$

�,"

",3SF6+.�
%4$
?##00##?
$4%
�_.+6FS3 	���#09FO\e�@�igii	g		ii
g


Y

a

Q^]QPHG;:21%$ba]e^eWVP\Q\LKGOHOA@:F;F651929+*$0%0 ##+!"&463!2!"&463!2!"&463!2%".4>2'"264&".4>2'"264&".4>2'"264&�<		�		�<		�		�<		�	��00800$$4%%00800%%3%%0080/$$4%%�
��

��

�080080�%4$%3%�180080�$4%%4$�08019/�%4$%3%����@ 36@3.L��v"!*)!3"3  +"'.7>%".7&>!"'&47>9w�����
���,
��
�����l�
����$#����j�R-Qkl@i_VL8iU1L�~i	gYa
QSRdb[ZRkSkFE?=43$#--

+"'.'&47>762"276764'&'&"/".?'.>;7>32'2'&6?#"&/+76�f]Y�&''&�Y]�]Y�&''&�Y]f|kh<??<hk�kh<??<hk@��
;��NN��;��0��@@��0��'&�Y]�]Y�&''&�Y]�]Y�&'�?<hk�kh<??<hk�kh<?�uu׊
��
���_�l��l�_�j�R&DQZ���������@���6L���

�

~i	i"!ii i#i

W

_
O������������][SRFE('���źһҵ�����������������������������{zurmjfd[�]�WVRZSZLKEQFQ'D(D&&$+%"&'&'&'&/&'&'&54>2"1676?6767654.".4>2'"264&!".54>3!2#!"3!265462%"&4762!"'&462"&462'"264&3#"&46;2"'&'&547&462'3267654'&� 
>i|i> 3V2
)$$*3V300800%%3%%9�<00�

�_%%�%1����	�t��\"11E11#"CTT

\!
n

	
 2d	JA531(2>i>>i>3(135AK
�2V3
*"A)FONF)A#)3V2��080080�$4%%4$��0�0$�e%$			��0*	����tG1E11E1}""

��:


2}		


������$-:Y@V
	L�gii	W	_O8721,+('$"
+76762!	/"&5463!2#!4&"267".4>2*���0�l��˷��!
�

�B�%&.+1,+1,S,`�

�:`�j��`��.	�

�<
7*,,2,,�����(3@Id��@�*Ob	��L&Kg
iiii
g		ggW_O��geKJBA54������������ywtrqpmleg^\XWVURQJdKdFEAIBI;:4@5@-,
+%!"&5463!2%!!"&'/.767662".4>2'"264&!"&=462!#"&46;2!"&=462!#"&46;2!"&=462!#"&46;2�<		�	�H��f�
Ԕk��
j���00800%%3%%.�;


�*

?K�<	�>		S

K�<	�>		S	�	q��	)H�����
k��#j�6w080080�$4%%4$��
T?G

	��
S	S		>G
��	ST

?
����4q����t@q_G9	
$LZKg
	
i
		iW_O��sr��������������{yr�s�?>2/*'"	+!"3!27>/!2>54.#!"'&#!"&5463!2%&'&'&#"&/&'.32>?3276547676."32>76&'&"'.767>327"32>76&'&"'.767>32���00��"00"$��3�g$%$��	
 
	
L"

�3'!4&
#
#
	�3'!4&
#
#
	�0��0P30$0�t% %$$$!([?O-o'
9D5C-0	
0-[".%�Z-APRe%
=&AMA&A'%A�//r&AMA&A'%A�//����3BE&@#EDC4L�v33+"/.54>?6"?>54&/&"'&5467�JH�%=##=%ݒ��%=##=%�HJGH�(77(܏��(77(�H�	$		���(@&�&@((@&�t&@(�;)�t);;)�);��w
��e�֕�����8fr~���@�
^Q	%
LHK�

�g	g		g


g

gW_O���tshg�����������{xs~t~olgrhrWV	+!"3!2654&!!.6'&'&"'.32?>41/"5'4&"51"5'#?264'&'&737>'7!264&#!"!264&#!"!264&#!"3264&+"-��		q��H�#"6.	Y��Y""7-�w��		w��		w��		�		�	
��

B
����EFM7.C<;/YEFN7-C<;.e

}

}

}

���2x���h@e�
L�
�
�

j		iYaQ��������������zyJIEDBA=<
	xx+"'.'&'&'.67>'&'..'&47>67676&'.>767676>76'1&'2767654&'.67>176764'.&'.67>54'&'&&&'.'&'&7667>7'".4>2"2>4.�%% &;1	%  %
1;' %% ';1
%  %	1;�.5.&
;!<
&.5
4BB4
4/
; !;(/4"4B!!9_88_r_88_9-M--MZM--Mu
	""%"%"
(F
(
"%"%""%"%"
! 
F(
"%"%�&
"
	?4!	9!4?	
#
	 '' 	
#	? 9:8@'" 'v8_r_88_r_8w-MZM--MZM-���i/RIU]lx�j@glf5#	e_~zysmWVPJ9
L�
	
i		iiYaQvupojhca%.#)%,
+%54'.'&"2654&#&5>767>636=.#"3>76&"&5462'.'476.&5>7462"&5('�Y]�]Y�'($?g>  ,S"^S
2�GG�2	T]"S+  >g?��G=N+'�5�DD�57�CC�7#H?&*N��e`\�)**)�\`e�/<>g? A km�FY3453]E�mk �� ?g>7��A��f@=+&�D****K')*'���W%*?@e���i�S7�K�
PX�*LK�PX�*L�*LYYK�
PX@#�gg_OK�PX@"�gW_O@#�gg_OYY@/-&$76'7%	+.?#".54>3!2#!3%63!2>54.#�	]S(D((D(�(D((D(����33o
S)c44��(D(�(D((D(�Q(E(���4�Q4	��4�4��=7b��K�
PX@=5
`
	ULKK�PX@=5
`
	ULK@=5
`
	ULKYYK�
PX@M�
�i	
	Yig

iYaQK�PX@H�
�i	
	ii

iYaQ@M�
�i	
	Yig

iYaQYY@.dc����poc�d�]\XWSROMIHED@?;:1/+)77+"6?26=4&7"265462;264&+76=.4&"265462#"32"&54&"264'>2"'.'&54767>276764'&'&#"&46A>!

�,
	&my

\W-,>,&

&,>,
��aYV�$&&$�VY�YV�$&(F<9cf�fc:<<:cfw	�[2�

�,

	
�

p	,K,,

&&

,,@
"�&$�VY�YV�$&&%�VY`FBD;	n�wfc:<<:cf�fc:<	���j�R M��������@�W
�`C86		/������L

��

�i

i	i		i

iiiW_O������"!�������μ��ͪͤ�������������{zsqljfe]\TSON>=)(!M"M  +%".'.547&5476762%22>7>67654'&7654."36%"/&'&'&'#'#&#"&463&767632767654623276#"&46;23#"&46;2!"&?>?67&54627676%!'&/3'&676764'&"!'�3\F"('BD�DB'("F\��;OXO<

Cs�sC
�?@="	&"	

"

#&,+(	
��*		*�)		)	n�B �
k&-L-&k
� �tg��:


�>fh��4^>;+ODB'(('BDO+;>^4�	:Z11Z:
DsCCsDP'#		< 

"#
	
	#
/



��
�#
l� 4"!!"4 �l
$�
*g
b�5
5�b
����@L�v-(+654&'.#"3267�	��

���
	=
,
	����
����@L�v
+"327>54'654'.���(	��
�
��;��
	
��n� @L��v+'&"?27>54/76'.���4	��+W+��;
�--,���	��+W+��	��,+�
3@0L��W_O

+#5##!5���$��H����SSS���i�S$.@@=�~�W_O,)&%$#:+#!"&'463!"3!2654&+;265/Q)7&��&66'���=�	c	R3'0<!"��&55&/'7;���	

	��V�#/�@LIK�PX@9

r	~~p
iYbR@;

�	~~~
iYbRY@/.-,+*)('&%$##%+#'>54."32677%".4>2'3##5#5353�!
 #I|�|II|J2Z#�>�63W23VfV22VSS*SS*#[1J|II|�|I# "�>�2VfV32WfV2�*SS*S��,5>Gp@m��		��i

		iY_O@?76.-DC?G@G;:6>7>21-5.5+)&#,,3!#3++"&46;#"&46;22654&+";264&+"264&3"264&3"264&�	S

>>

S	�'

	T		T		?�&�&�&���
			��
��&&&&&&
�j�R-Ajw������@IF^
LK�PX@h

�

p�

�	r�iji		iYbRK�PX@i

�

~�

�	r�iji		iYbR@j

�

~�

�		��iji		iYbRYY@9yxlkCB����������������~x�y�rqkwlwec\[TRMLHGBjCj+4'&'&"276767"'.'&47>76227676. '."&"."3267>546232>4.".4>2!".4>2'4&"267"&4624&"267"&462�?<hk�kh<??<hk�kh<?*'&�Y]�]Y�&''&�Y]�]Y�&'�'EC�CE'B��B�/O00O_Q//Q04X		V50Q//Q�D%>%%>J?$$?g%>%%>J>%%>*%4$$4%�J
*%4$%3%^|kh<??<hk�kh<??<hk|f]Y�&''&�Y]�]Y�&''&�Y]�E"!!"Err�-M..M-0Q`Q/9/.:/Q`Q0��%>J?%%?J>%%>J?%%?J>%�	$$4%%	$$4%%����)H@ELggW_O! &% )!)	+%2+"&=4632#!"&5463!"!4'.��'77'�('77'�(�			�8'�(77(�'8T�T�	��k(.G@DLggW_O '%. -		+2#!"&5463!"3!274&#2+"&=463$33$��%33%?��@��(3$�$33$�$3S���z��(/A@>ggW_O! (& /!.		+2#!"&5463!"3!2654#2+"&=463�$44$�p$33$��p��v(3$�$33$�$3S���z	�jkR+7CO[gs�@�LKgggg


g

g	g		gW_Oih]\QPED98-,olhsirc`\g]fWTP[QZKHDOEN?<8C9B30,7-6&# ++(52+>3!2#!"&546?3265%!+3!2654&"&463!2#"&463!2#"&463!2#"&463!2#"&46;2#"&463!2#{�%%��&�
��t&�
q	��

�

�6

�

�6

�

�6

�

�

�

�6

�

J%��%%���
��&�z		l	�'}w}w}����3PS@P		giiW_
O54JGBA=:4P5P-*%"32	
+!".54>;23!2"3!2654&#!"&/.#"&=4&#!""&54>3!2���00�!7
 �00��$%$$�!7 �	%�<%
0�0.0�1( 1��0�%�%%w%' }	}$$		00}	���j�RG^y��������
&9$@[
cWL��KK�PX@�
&�0$r(i
ii,*ii+)i	%i!#.i"/ -iYa'Q@�
&�0$�(i
ii,*ii+)i	%i!#.i"/ -iYa'QYA}''����������������{z'9'953,*&&	�
�
����������������������������������������������~z�{�wumk^\QO=;42-,'%	GG1+"'&'&67"'#"'&'&5476'&'".67676322?67632#3276765'&767&#"327676'&'&#""&4&""&54762"'.'&47>762"276764'&'&"&462'"264&"&462'"264&"'&547676;276'"32767&'&'&"'&'&7>767632'327654&'&#"�V5%"1#%5VL3*
/UN362. .251NU/
+3�)DI* 

[XA��
 *ID)DA04)�	*
PGf]Y�&''&�Y]�]Y�&''&�Y]f|kh<??<hk�kh<??<hk��%%4$$	
�%%3%%


`=#C

'6'AF
);Mv		(3&!&//'�/M;)
FA'6'
B%�&!&4'		'0'+$P#		#P$+'% 
:




	
:
 %*-'# !#'-*���'&�Y]�]Y�&''&�Y]�]Y�&'�?<hk�kh<??<hk�kh<?�`$4%%4$S

S%3%%4$S

�_6&
!}


}!
&5T


���5$C@@L����W_O+2"&54662!#!/&47S  -  �!$�	�5 ��  B��UU	����5$C@@L����W_O$# +2"&546.=!"&'5467!5462�-  ���	$ �5��  B����	UU���5$?S@P650L	����W_O:921.-#"
+2"&54632#/&4?6%&'5#.'5>7354>�-  LV$ \������\  \5��  B��UU	��	
��
YU���5&>S@P,L	����W_O=<5410*("!
+2"&546&'5#.'5>7354>32#/&4?6�-  L��\  \��V$ \��5��  B����
YUUU	��	���5#>@;
L�~�W_O#"%%+62++.5#".72#!"&463��	UU	?��  ���!$�>-  -���(%C@@L���W_O %$
+2#!"&4633232"/&>;4673���  �U	��	U
-  -5 ����$���(&?S@P*	L�����	W	_O:832-+('"&%$&
+%##.'5#".?>%2#!"&463232"/&>;546?�
UU����  �U	��	U��[  [��-  -� \��V#���*$>T@Q4-L���~�	W	_O7510,+ $#%#
+%232"/&>;546?%2#!"&463##.'5#".?>�U	��	U���  ��
YU�� \��V#�-  -��\  \	��j�R!*9BO\q@n-L����
�~	

~

~�W_OZYTSMLGFA?><9876'!#'!73+4>3!2#!".5%35327>4&'&++5323'67654&+3537+5322>4."".4>2&@&�&A%&@&�f&@&Au+ !  +��-#mm#-}Kn-!L>�APm.#ll$-�7c~d77d~c7p&DZE%%EZD&�&@&&@&�0&@&&@&��>K>�"+�+���#8=K�G��"+�+xAh;;h�h;;hA0M,,M`M,,M��#8FTX@U�	g
iW_OGG:9%$GTGT9F:F/.$8%8#"	
+%!".54>3!2"3!2654&#"'%.>27%6"'&6?6!"/.>���0000��$$$$�t#��	V.V
���Q
���
�0�00�60q%�6%%�%����

����
��
��j�R������@�C0/	P
�
��L		�	~i		i
i

giW_
O��������������������������|ysqb^ZX<;86%+27676322"6?67>?6'&'?676'&#"3%264&#01!>?>?6'.'4&+"&/&6;26/&547676#54."#"3!26=4&%4>2#!5!26=>54&"�((X#

	.o&3(S0)

	(�3Q-	��P;�	(

	
	
!'Q'CND'		M	��0:/���#�
"�	5
	i		S
SO%*H
(/@

S+Q:(
C^5	;\+Q	R+
S		B'��(C''C(
�		�
00��w		�m"?^�@>
LJIK�
PX@(�gWWaQK�PX@$�gWaQ@(�gWWaQYY@]ZRPHF971/'$! +276/764'&64/&27&#!";?327>=6'+764.+"'.=4763!2S

GGcSCC

�&��&&!6

��&
8�mG	n	�		TBC	t	S	
CB

!�h


�#�
�S6	��m6FJXrx@uY2#rgP1$	k	L-	K

�	
	~

g		g
Y
aQ
	MKJIHGDA<965
	
+%"264&3"264&264&"?'&7>'4."%4&#!"3!265'!!#"?6&'%676/&"376'.�	I	���T	66	
	T
�	��		H	*����
�,2	
T
\2y	�*	��
	
)	M

�_		w`�S
y	*��.	���,2@/ggW_O&7+3!2654'&#!&!!!:4#�&2 �5�#�
�&12%�%���[�����(.@+gW_O72+4&#!"3!265!)!�1&�"1
"�&1��A���=�&11&�1"��~��~�j^\
,@)J�W_O+'7676%#5"&463!2#��C.#* O���5��C,
P F�5����9J9@6�~�gYaQ6;:3:7+3!2>54&'.#!"'463!2276=4'&'.#!";27654'&+"&5 	.	

��#�
�

*	'�(!	(%
%
3$��
.

x

%

%)+�	�i%S,2@/L����v%",,#%5 +#"3!26=4&+'.#!"!2#!".546Կ	
�		�
����	";"�./$
	4	3	4		�	��";"$/_	��9#&*@'&%$LiYaQ&!+&#"3276'"&'.467>27F����E�cʈ��?>}?���>?B?B?��NJ��������p�FH���mA�[�|@B@B?���A?C!!���}�X�2+7�;��;�X:��:��X�2+'7'�;��;�;��;��sA^jpzK�
PX@
E>QLK�PX@
E>QL@
E>QLYYK�
PX@Q

�����Y	ig
i
aQK�PX@F

����	ig
i
aQ@Q

�����Y	ig
i
aQYY@1kkCBkpkphgbaWUONIHB^C^;:650/('"!AA%;+.6?01301;>/7%22654."2>54&""&=&>%"54&"265132>=6."&=462$��.�.		�66&3>44>3&8' �#
35('8''8'��'*e��
	yy

���\'		44\33

&&\.
[

��

3\!5�&&X''��S%���(#3Fa@^��		g
ggW`PDA:72/*' ##
+!264&#!"!264&#!"!264&#!"4&#!"3!267#!".54>3!2��

�		�

�		�

�	� �+  �"),�+,,�+9���
��''�D'&11�1?-���%1Ugsw@t&"L

�
~
~g
		i

gW_OjhWV42pmhsjsdb]\VgWgROJGBA<92U4U+%&"2764/7>762"'&4?'.'676.!"&5463!22654&#!"3!264&"26=463264&3264&+"�OO??	�OO>>	@C	
B
���y�
3(�r%34(�
 HJ35	��		�	�STCC	STCC	M��	
�#y!"��

Q);;)��);
HKK�		�84���=+7CUa�K�PX@J���ph	i		g

W
a


Q@I����h	i		g

W
a


QY@EXVED:8.," ^[VaXaRPKJDUEU@=8C:C41,7.7(% +"+	+"&5463!2#'!!264&#!"!264&#!"!264&#!"!264&#!""26=463264&3264&+"?

k		��k		��

G		��

G		��

G		��
K26
"	��		�	s
�

�`
*w���}}}$72�

�#����%1f���@���smdTN��
>
�G&"L		�	~	~
	
~
	
~	~	~	~		g
W
`P�����������¡‰�rqbaCB:965+%&"2764/7>762"'&4?'.'676.%#227>76'467.7"&#.'.''>4676>762'.67.'&67&5463&76!"&5463!22654&#!"3!264&�OO??	�OO>>	@C	
B
��			
	

		%551O	+
/O%B* >


	  8;DKF
(!�y�
3(�r%34(�
�STCC	STCC	M��	
�
		

F125			%%j	#*1
	
F@>%(,	#,
��#y!"��

Q);;)��);
��=+7Cx�@ XN[sq	k	bLUhKK�	PX@Sr�

�ggg	
Y		g
g
a

QK�
PX@Yr�~

�ggg	
Y		g
g
a

QK�PX@Sr�

�ggg	
Y		g
g
a

Q@T��

�ggg	
Y		g
g
a

QYYY@;:8.," jifea_HG@=8C:C41,7.7(% +"+	+"&5463!2#'!!264&#!"!264&#!"!264&#!"!264&#!"&7676267267'67"&'67"'&'&57.'&7?

k		��k		��

�		�6

�		�6

�		�6
Q %+/)		*'+3:;4#



s
�

�`
*w���}}}#

,^"#
���>I@F1L��~�iYaQ+%7>'&>'"/&4?62&&'&>765462"&5�J>- !
5*Ug��J>- !
5*Vf
���3$uL6te"Ei��93$uL6te"Eh��
��A�+<@9����	�v+*%$
+"&5#"&4?62#46232"/&463�"h��h"i
��
X��

Y���Y

��	���j�N-AR@O5L�~~iYaQ?>8732"!--
	+"276764'&'&"'.'&47>762'&46262"&'�{jg<>><gj�jg<>=<fj}d\Y�&''&�Y\�\Y�&''%�X]���J
��
$>=gk�jf<=><gj�kh=?�F'&�Y\�\Z�'('&�Y\�\Z�&( �
�J
���j�R+7C���@�D�PLgggg	g	
	g
iW_O98-,! ������|yvqnhe`]ZWLI?<8C9B30,7-6'$ +!*
+!2#!"&546!462"&57"&46;2#"&46;2#"&46;2#454>3!2+"&46;2654&#!"&/.+";2+".54676;23!254&#!"KR��N��[		V		V		V		V		V		��1�11x		x&&�"7"x&&x		x0@x!7"�	&�>"��Q*��M_�		zG
H
00�.��2(�(( '�(
2-$( 
m%�j�R$f{��@}%

t1	L�
g


g		gigiYbR���zwspkh`]ZWROIF3;8+%5462762"/&462'2>4."454>3!2+"&46;2654&#!"&/.+";2+".54676;23!254&#!"4>2".�?>x-MZM--MZM-��1�11x		x&&�"7"x&&x		x0@x!7"�	&�>"�8_r_88_r_8��??
-L--LZM--M�00�.��2(�(( '�(
2-$( 
m%�*9`88`r_88_��A�$,@)����v $#3%% +#"32764&+4&+""&463!2#w
�z���
$��""��$9F@C
L�~~iYaQ)$%(+&'"&5473264'&#"26546326 '&'&4767632}Nu���uNE�xv��		@[
>,�
H��vxI

Ixz��x{F
[y<5>`��`>5<yi|{.		[@	,>�w�GFv%vFGHJrA@�v5$+32764&#!"�
�����
A@�v5+74762#!"&�!���
��
���(P�K�	PX�KILK�
PX�KIL�KILYYK�	PX@5	
	g

ggY_
OK�
PX@8r	
	g

ggW`
P@5	
	g

ggY_
OYY@#���þ��������}jhc`ZYFC;:31,)$"+1001'001%03#50#3001!7&'.747##!"&=47#3&'.75463!22#!"&4676367676'4'&'&'&/.763!23!2=4'&'&'&'4#'.763!22#!"&4>367676'54#!"^���<?A��?AuG��
			��		

	%

F
	$


	
��
		
��Cf$$���66��66�g
��
L�

	
�"	"��"	!�f

	
�
��>)BMV������@@]}u08LK�	PX@Zrig	
igY
igYaQK�
PX@`	rri	g	
	igY
igYaQK�PX@Zrig	
igY
igYaQ@[�ig	
igY
igYaQYYY@?����+*����������������������ywonkjfd`_[YVURQLKFE<:42*B+B+4'&'&"276767 '&'&7676 312;2+"&=464&"26&462"74632#"'.#"2767#"&50154632"'&%4&"326&462"%"&463!2#"&463!2#�<:ce�ec:<<9cf�fc9<*A@lp��pl@AA@lppl@A��	<�.*j/F.0B�1 )
%
)@@1+
j/F./E��

�

�^

�

^wfc9<<9cf�fc9<<9cfw�pl@AA@lppl@AA@lp7c
�L#E,-D.P"-


#,!E,,E.�



��	

	����(1:CL�@
LK�	PX@Ar~~
~~	~�W_O@B�~~
~~	~�W_OY@ED32! IHDLEL762:3:%$ (!(6+.7632%	'.>'264&"7.>'264&"7.>5264&"���
	�	%

�B	���J1C @@@"~ @@?"} ?@@"D(	
�
��
� 
�)��
@@@@1""w
?@?@1""w
@??@0""
�jkR'-?KWco{�@�=(5Lg	g		g

g
g

gggW_OqpedYXMLA@/.wtp{qzkhdoen_\XcYbSPLWMVGD@KAJ9742.?/?+)"+#.7>&/63!2#!"&54?3265%!+3!2654&"&46;2#"&46;2#"&46;2#"&463!2#"&463!2#�xhh(--2
�$$��%�	��t%�	q��		�		�		�		�		�		�K		�		�6		�		F$		��o~~$��%$�	��	��%�zl��}}�}	�jkR)2;DP\h�@�'Lgg
g

gg	
iW_O^]RQFEca]h^gXUQ\R[LIEPFOCB?>:96510-,#!))'51+63!2#!"&54?3265%!+3!2654&"&462"&462"&462%"&463!2#%"&463!2#"&463!2#|
�$$��%�	��t%�	q�-""}""}""��		�		�6		M		��		w

K$��%$�	��	��%�zl��"""�

}

�

�m(@JOY�K�PX@:	
rr

ghW_
OK�PX@;	
r�

ghW_
O@<	

��

ghW_
OYY@+PPLKPYPXSQNMKOLOJHCA=<540.+)"('# +#"&46;'&462"&47!2#!"&546332+"/&4?627!"3!3#!2654&#�		�
??
��%%��%%��

�
??�t		�**�		I:CA&�`&&�&�C:�
�`
��*�6
�
���(=UxK�
PX@=/iL'
IK�PX@=/iL'I@=/iL'
IYYK�
PX@2gii	

g	

a

QK�PX@1gii	
Y	
a
Q@2gii	

g	

a

QYY@&VV>>VxVwmkge][>U>TQOKJCB:7+6767#&/&%6;2&'546767676'&6726;24.#'.46?2!"&463#"32#"'&'&547>3,X!@<,9�X�OX�;8E
0
	xK
:�
.��		

�5U6		1# i?))�W3)K,9D��!��	�nHB8P!A!
���K%

 8!���(%&3��E,5

2-7N=0/4�j�R-INw������=@VS
k
K;LK�PX@q		�p

�

�rr	i
jiigYbRK�PX@r		�p

�

�r�	i
jiigYbRK�PX@s		�~

�

�r�	i
jiigYbR@t		�~

�

���	i
jiigYbRYYY@A��yxPOJJ����������������������~x�y�rpiha_ZYUTOwPwJNJN<+4'&'&"276767"'.'&47>762& '.;26=676&5"&"."3267>546232>4.".4>2!".4>2'4&"267"&4624&"267"&462�?<hk�kh<??<hk�kh<?*'&�Y]�]Y�&''&�Y]�]Y�&'�B��B,O	}	�I��',�/O00O_Q//Q04X		V50Q//Q�D%>%%>J?$$?g%>%%>J>%%>*%4$$4%�J
*%4$%3%^|kh<??<hk�kh<??<hk|f]Y�&''&�Y]�]Y�&''&�Y]�rr	M!S		?��6
*p-M..M-0Q`Q/9/.:/Q`Q0��%>J?%%?J>%%>J?%%?J>%�	$$4%%	$$4%%	�j�R-Ajw�����@�IF^
L

��

��i

gji	i		iYbR��yxlkCB��������������~x�y�rqkwlwec\[TRMLHGBjCj+4'&'&"276767"'.'&47>76227676. '."&"."3267>546232>4.".4>2!".4>2%4&"267"&4623264&+"�?<hk�kh<??<hk�kh<?*'&�Y]�]Y�&''&�Y]�]Y�&'�'EC�CE'B��B�/O00O_Q//Q04X		V50Q//Q�D%>%%>J?$$?g%>%%>J>%%>�f
*%4$%3%}		}	^|kh<??<hk�kh<??<hk|f]Y�&''&�Y]�]Y�&''&�Y]�E"!!"Err�-M..M-0Q`Q/9/.:/Q`Q0��%>J?%%?J>%%>J?%%?J>%�	$$4%%"L$@]u�@1	LiIK�
PX@8	qg
g
i
		
Y

	a	
	Q@7	�g
g
i
		
Y

	a	
	QY@-_^&%olfd^u_tYWPMFD=;54.+%@&?" $$+7".?#".=4>3!2+"+";276;&=4>;.#"/#".=4>3!2+";2'&6;26=4&#� 66 �6	�"1		e�#11#!		�U6s.n�� 56� 66 
�k"11"��
!#11#�
q5 � 56
0#��71"�"1	Uf�6&���6 �65 � 6q0#�#1gV2"�"1����)AuK�PX@-r~piYbR@/�~~iYbRY@'+276764'&'&"476762"'&'&%#"2?64/&+4&"�--KM�MK----KM�MK--T97_a�a_7997_a�a_79wh
��h ^[MK----KM�MK----KM[qa_7997_a�a_7997_a

��%
�j�R$dz�(@%

s1	LK�PX@Jrr
g


g		gigYbRK� PX@Kr�
g


g		gigYbR@L��
g


g		gigYbRYY@��~yvroie^[XUPMHE3:8+%26=264/&"272>4."014>3!2+"&46;2654&#!"&/.+";2+".54672;23!254&#!"4>2".�>>u-MZM--MZM-��/�0*2y

y&'�!7"u&&y

y2A

y"6 �	&�<�7_t_77_t_7q�

�
>>
-L--LZM--M�//�#5��1'*&!'�'
2/%' l%�(:_88_t_77`��k�"1H@E/L�	ggW_O,)&%$#"":5@
+"#!"3!2654.;26=301!5!33!26=��5"11"H"12X�
S
*����*�*�1"��"11"�5[:M�

����H��*1����)?uK�PX@-r~piYbR@/�~~iYbRY@%+4'&'&"276767"'&'&4767623264/&";265A--KM�MK----KM�MK--T97_a�a_7997_a�a_79��h
��h ^[MK----KM�MK----KM[qa_7997_a�a_7997_a

����
k�7@4YaQ
	
	
	+"&462!"&462!"&462�"11D21"11E00#11F001D11D11E00E11D10E1��G�,@)iiYaQ+462"&462"&462"&�1E01D11E00E11D10E1�#00F11��#00E11��#11E11��*@'��W_O$+"'&476%2#�&2��
2'��%%0�2&2'1�%2&��*@'��W_O$+2764'&"%"3�&2��2&��v%%0�2&2&1�%2&��/+$@!L���v+"&6762"/"&5��1%1&2�&2%L�%7��1&��r%%��+(xK�
PX�LK�PX�L�LYYK�
PX@���vK�PX@��v@���vYY�+%'&"2764&"4&"��1&1&2�&2%q�&2��2&��%%���>@L�v
+"'&'&7676 '�ol?AA?look?AA?lo�|A?look?AA?lo��pl?A���i�(	'7;KO_co{������������#/8AJ!3!26554&#!"#!".54>3!2"&=46;2#'35#"&=46;2#'35#"&=46;2#'35#"&46;2#"&46;2#"&46;2#"&46;2#"&46;2#"&46;2#"&=46;2#'35#"&=46;2#'35#"&=46;2#'35#"&46;2#"&46;2#"&46;2#"&46;2#"&46;2#"&46;2#"&462"&462"&462��l%$$��$�0��000��		S		>))		S		>))		S		>))�		}}		}}		}}		}}		}}		}}		S		?**		S		?**		S		?**�

}		}
	}		}
	}		}

}		}

}		}

}		�'

S
TX�z%%�>%%>�P00�00��	S		S	)*��
TT
**��	S		S	*)�S
}
T

}

S�	S		S	)*��
TT
**��	S		S	*)�S
}
T

}

S�


	


	


�i�(	'09BRVbn~����T�:1(LK�PX@j!rg	
i$g g+#!"
!"g
)&
g*('%gW_O@k!!�g	
i$g g+#!"
!"g
)&
g*('%gW_OY@h������podcXWDC

���������������������������������xuo~p}igcndm][WbXaVUTSLICRDQA@=<8743/.+*$!

63,+!3!26554&#!"#!".54>3!2!"&462"&462"&462"&=46;2#'35#3"&46;2#"&46;2#3"&=46;2#'35#3"&46;2#"&46;2#5#"&=46;2"&=#32+"&463��l%$$��$�0��000��

S
T�		S		>))�		}}		}}		S		?**�

}		}

}		��S	�	S*}		X�z%%�>%%>�P00�00


	


	


�	S		S	*)

S	S		S	*)

S$�		+		+		�	����+7C^gp�@�ZOL

�g
iiig		W	_
		O98,,! onkjfebaRQGF?<8C9B,7,620'$ +!*6+7"&5463!2#%!!"&463!2#3"&463!2#"&463!2#3"&463!2#"&4?>76&''4&"267"&462h

		���

N}		M		��

N}		M		����|���$"*2F11F2�
		��
*�e



}���X���	W�&$44H33	�jkR)2;DMV_o@l'Lg	g
	
	iiW_O^]ZYUTQPLKHGCB?>:96510-,#!))'51+63!2#!"&54?3265%!+3!2654&4&"267"&4624&"267"&4624&"267"&462|
�$$��%�	��t%�	q�-
*%4$$4%}*%4$$4%}

)$4%%4$K$��%$�	��	��%�zl�<		$$4%%		$$4%%		$$4%%�jkR'9?Q�@O:
G
LK�PX@<r
g

gg
g
		
W

	_	
	O@=�
g

gg
g
		
W

	_	
	OY@ A@KIFD@QAQ=;41,)'&4%+%41#"&=463!2"&=#32+"&46363!2#!"&54?3265%!+3!2654&�}N


}*}		:
�$$��%�	��t%�	qd#!		66		!��

�$��%$�	��	��%�zl�j�(	'09B\en�����`@:1(Zw��H
PLK�
PX@o rg	
i"!g!% ! g#i
g

Yi$gW_O@p�g	
i"!g!% ! g#i
g

Yi$gW_OY@T����DC

���úô����������������������~zysqnmjidc`_VRLJC\D\A@=<8743/.+*$!

63&+!3!26554&#!"#!".54>3!2%"&462"&462"&46232;2#01#"&=464&"26&462"74632#"'.#"2767#"&=>32"&%4&"26&462"!"&463!2!"&463!2��l$$$��$�0��0//��

S
TqA�--s2L33J�4%
(-EI1L--t4I44J��<		�		�<		�	X�~&&�:'':�T22�11


	


	


�ig
�Q0#H//H/S$/
	
2


-%0$I./H/T

$�j�(	'09BYfz@w:1(LL�g	
i
g

iiW_O

dc^]YWRQHGA@=<8743/.+*$!

63+!3!26554&#!"#!".54>3!2%"&462"&462"&462"&4?&54>2#74."2>��l$$$��$�0��0//��

S
T���'CNC('C(/�080/90X�~&&�:'':�T22�11


	


	


���%3'C''CND'�009/0	�j�(	'09BYfr�K�
PX@:1(O
W
LK�PX@:1(O
W
L@:1(O
W
LYYK�
PX@V
r

rrg	
ig

giW_OK�PX@P

rrg	
ig

giW_OK�PX@V
r

rrg	
ig

giW_O@W
r

�rg	
ig

giW_OYYY@8ig[ZDC

nlgrira`Zf[fSQLKHGCYDYA@=<8743/.+*$!

63+!3!26554&#!"#!".54>3!2%"&462"&462"&462"&=!"&=463!2"&5462#"&46;2��l$$$��$�0��0//��

S
Tw	��N

�	6}		}X�~&&�:'':�T22�11


	


	


��	!!		66
��	3		��	

���(+7@4�~iY_O###"53+#!"&5463!2#";26=3264&+54&"�fD��HcfE?Gc���&��&~��HcfE?Gcf��&��&����($@!���v53+#!"&5463!2!264&#!"�fD��HcfE?Gc�Y��B~��HcfE?Gcf�n&&����0C5@2CL���W_OA@;:32)'+6&'.!654&'.7>'!.7467>6201"/&462�d�2
!
&g�M
DA=D
`S%&
!}����hpYR
nN	
��
 	�
	��K`%
E2&ma!J<G@	@O.A	"
	D�zt
ymTum�	
��

�
	��g�R+7HT`lx������y@!����L�K���IK�PX@{r��p~
!	 g
i

iiii$#"W$#"`P@}���~~
!	 g
i

iiii$#"W$#"`PY@Pzynmba98-,��������������������}y�z�tqmxnwhealbk^]XWRQLKED?<8H9H30,7-6#5#6#5%+"&=46;2+7"&46;2+7"&46;2+7"&46;2#3"&46;2"&=462"&5462"&52+"&463#2+"&463#2+"&=462'"&=462'"&=462'"&=462.54>+&/767'&>;.


1


y


\

\�


]


]�

\

u

0











��		]


]


\

m

0











�!$
�
bF�#MJ@)	Q8RA��

0















0

z


\

e


1		��
0


z

\


\�


\

\�


]


]�rm�@#�!E�51
��*�W�t�>,'@$!L�W_O7+!%%62#!"&5461&'&'&7676�����`����:L$*��)
$M8���/ؙ����u�O!$!:op9!$!P�.#,5^@[	
iYa
Q.-%$
	21-5.5)($,%, ##
	
+7"&462!"&462!"&462%"&462!"&462!"&462�#11F00&"11E00*"11E11�G#11F00&"11E00*"11E11�1D10E11E00E11E01D1�1D10E11E00E11E01D1���:]@Z#L		igg
Y
aQ
	8631+(!
	

+%2"&46!2"&463!2754&#%!2#!"&'&'&#"&4632�%%4&&%%4&&�>�|	��V� ����!-		D)":$4%%4$$4%%4$�>	�* 	�O�4-(:0�vfB^b���@fL��g

ig	
	g

Y

a
Q����dcCC������������|zwvnkcdba`_C^C]ZXUTQOLJGF+%.767>/&/&'&'&?2676&'&'&7>76%546232+"&=#"&46337#72+"&/0#&'&"&4632"&4623"&462�
(#9IYWPSj	#$I1u<
	
 D�8R)'
	w]ZbeS@'"
-��}		}
}		j~-��3�5	!C]
�


C�I;*5	#$�ZWPS5$	$(<]Zbd�((

</B	Q�M
�}		}
}		}�6�)�


�

���v�(37R[dp|��@��;Lgg

igi	
	g

Y

a
Qrqfe]\TS98wuq|r{kiepfoa`\d]dXWS[T[OMJIC@8R9R7654-*! 
32+%2#!"&54>3!2#".6736?>54&#!"337#72+"&/&'&"&4632"&4623"&462"&46;2#!"&46;2#%.>.6?�		�z);.�*:
			"�
""~.��3�6		!	D
\��		�M		��h
RT
=d2$C'1$��)D��}�)�


�

���C<A0
�v�('+;?OSc������@�aM9YE1	�Lgg'%#&$"i

		gi)g(ig!Y!a+ *Q������edUTPPA@<<-,((���ȼ������������������������tqkhd�e�][TcUcPSPSRQIG@OAO<?<?>=53,;-;(+(+55,+462"&5'"&=463!2"&=4&#!"35'32+"&=4635'32+"&=4635'32+"&=462#!"&54>3!2#".6736?>54&#!"337#72+"&/&'&"&4632"&4623"&462��%�%	�`	S}���}���}����		�z);.�*:
			"�
""~.��3�6		!	D
\�d

*$$*

*		?))*dd*))*dd*))*dd�2$C'1$��)D��}�)�


�

��	�v�(#/cg����@�kL



gggggig		igYaQ����ih10%$
������������}zysph�i�gfed]ZQPLK@=740c1b+($/%.#"

 +"&463!2#"&463!2#%"&463!2#"&463!2#2#!"&54>3!2#".6736?>54&#!"337#72+"&/&'&"&4632"&4623"&462�		r

��		r

��				��		�		g		�z);.�*:
			"�
""~.��3�6		!	D
\�
�S

�
��2$C'1$��)D��}�)�


�

�����R(15EIY]mq����@�L! gigg	
i



g)'%#(&$"gW_O����srnn_^ZZKJFF7622*)! ������������|yr�s�nqnqpohe^m_mZ]Z]\[TQJYKYFIFIHG@=6E7E252543.-)1*1%$ (!(#9*+37#72+"&/&'&"&46323"&4623"&462!%!2#!"&54635'32+"&=4635'32+"&=4635'32+"&=4635'32+"&=46�-��3�6	

 
�\�k����k	}���	}���	}���	}���	��*�

�	���q*	�f		�	��SS*	}		}	*SS*	}		}	*SS*	}		}	*SS*	}		}		�v�(37R[d�����@��{tme;LK�	PX@prpgiiij

igi	
	g

Y

a
QK�PX@q�pgiiij

igi	
	g

Y

a
Q@r�~giiij

igi	
	g

Y

a
QYY@O����]\TS98��������������������xwkia`\d]dXWS[T[OMJIC@8R9R7654-*! 
32 +%2#!"&54>3!2#".6736?>54&#!"337#72+"&/&'&"&4632"&4623"&462#"&54?6?64&#?6763232?#"&462".4>2'2>4."�		�z);.�*:
			"�
""~.��3�6		!	D
\�

?9_88_r`88`9-M--MZL--Ld2$C'1$��)D��}�)�


�

��('

	&�
��8_r_88_r_8)-MZM--MZM-�v�(#,5im����@�qLgi	
iig

igYaQ����on76���������������yvn�o�mlkjc`WVRQFC=:6i7h430/+* +4&"267"&4624&"267"&4624&"267"&4622#!"&54>3!2#".6736?>54&#!"337#72+"&/&'&"&4632"&4623"&462�
*%4$$4%}*%4$$4%}

)$4%%4$r		�z);.�*:
			"�
""~.��3�6		!	D
\^		$$4%%		$$4%%		$$4%%��2$C'1$��)D��}�)�


�

���v�QUqz��f@��6YLK�PX@�
r		�~

ggg!gig
i

iggYa Q@�

�		�~

ggg!gig
i

iggYa QY@F��|{srWV���������{�|�wvrzsznlhga^VqWqUTSRNLIGFDA?><875410$'# "+%#"&=#"&54?63!23232"&5#"&5#"&5#!2#!!2#!!2#!"&537#72+"&/&'&#"&4632"&4623"&462573+57	-	�
-0	
�^

��4		��%		���-��2�6!
C\�3	�%	-�	�	-	�O		��d		�I		���q


	�)�
�

����	�v�(,9mq�������\@#�����&uLK�	PX@�r##�&&�&&~*r		gj$"#i2!(1i'/% 0i)ii,g+

i

gYa.-QK�
PX@�r##�&&�&&~*r		g$$Yj"#i2!(1i'/% 0i)ii,g+

i

gYa.-QK�PX@�r##�&&�&&~*r		gj$"#i2!(1i'/% 0i)ii,g+

i

gYa.-QK�PX@��##�&&�&&~*r		gj$"#i2!(1i'/% 0i)ii,g+

i

gYa.-Q@��##�&&�&&~*�		gj$"#i2!(1i'/% 0i)ii,g+

i

gYa.-QYYYYA}������������sr;:.-�����������������������������������������������������}zr�s�qpongd[ZVUJGA>:m;l43-9.9"!
,,3+"&'&>264&'#.54>32&'.""&54622#!"&54>3!2#".6736?>54&#!"337#72+"&/&'&"&4632"&4623"&46226=4&""&=462'";26=4&#54>32#"6;2+"&5'264&""&5462"&5462264&+"&463�+<
%3&!420+=%3& e1	��		�z);.�*:
			"�
""~.��3�6		!	D
\�)):)(�!W/$!  ! e

*9))9*		@-!	
	!
) &-!
	!@&)	M		��	�2$C'1$��)D��}�)�


�

���kk*,k++k,k$		$62
&"$!!_
		!,>=,!


�v�(37R[d}����%2#!"&54>3!2#".6736?>54&#!"337#72+"&/&'&"&4632"&4623"&462#762'46?#./>3"/&/57'&47>;#762'46?#./>3"/&/57'&47>;#762'46?#./>3"/&/57'&47>;�		�z);.�*:
			"�
""~.��3�6		!	D
\��
.	$
	-,

#.
.	$
	-,

#.�&
.	$
	-,

#.d2$C'1$��)D��}�)�


�

���

07
!6
6!	

07
!6
6!	

17
!6
6!	�j�R	'09Bakt}����������	@�¹��%Lgi.g#!" i/g	
i)g)(&)(i0&%
&%g

g'i$'+$'g-+2,1*+*iW_O�����Ϧ�bb�������������������������������������������������������|{xwsronbkbkhea_\YVSLIA@=<87763�33+!54&#!"!3!2653#!".54>3!2!"&462"&462"&4627&=4>3!2+"&46;265!"%54&#!"7"&462"&462"&462&=4>3!2+"&46;265!"%54&#!"7"&462"&462"&46237#72+"&/01&'&"&4632"&4623"&462*q%�%q��%�%)0�00�0��
S
T0�00S		S$�{	�$�%TS

S
�<0�//)		)%�z�%�$S

S
Ti~.��3�6	!	D
\^?$$i��%$00�00			�	S00�61

%b)?$$??					��S0/�6/%b*>%%>>

	

	

�ݓ*�


�	


���v��.O_cg����@�k
?	
Lc>J

�g

i
	
g		gYaQ����ihPP0/!������������}zysph�i�gfeda`P_P^:965/O0O.!.+7>'%.546;+'!!"&?>3%6%2"&=!"&/76&546"&'&62#%!'%37#72+"&/&'&"&4632"&4623"&462�G
��		�#�-��>)��L	WL�	�#�	�
GLW
L
��*?���-��3�6	
	!	D\���`
KO	��A�z!�*
�%
��*
�		�y�

"
��*
%�
*�!�\�)�


�

���v��'0g���@�h
<6OL�

g

giggg	Y	aQ)( ����|ymkebZWTQGEA>9831-,(0)0$#' '+37#72+"&/&'&"&4632"&4623"&462!2"&54&#!"&/&+"3!2#!"&54?>;2'.+".?>;2.67.?>;2&/.+"�~.��3�6		!	D
\���$
	�	%�(	+		��%( ���"�

,!� ,-
��)�


�

���$��H
	]
m�,

$�
nYI+	*T!	+~	�v�('[_z���cLK�PX@\r



gggig		igYaQ@]�



gggig		igYaQY@@��|{a`)(�������{�|�wurqkh`zaz_^]\URIHDC85/,([)Z'&45+41#"&=463!2"&=#32+"&4632#!"&54>3!2#".6736?>54&#!"337#72+"&/&'&"&4632"&4623"&462�}
	M	}*

}		I		�z);.�*:
			"�
""~.��3�6		!	D
\4#!		6		6		!��
�2$C'1$��)D��}�)�


�

��
�v�-'0Wm{~���@��}bmLK�%PX@�
r��r~~

��

ijgi
igg	Y	aQ@�

����~~

��

ijgi
igg	Y	aQY@I||nn)( ��������������|~|~n{nzutkjed`_ZYPO=<-,(0)0$#' '+37#72+"&/&'&"&4632"&4623"&462.67>54."'.546762762"/"&4?622"/&4635&>2654/&'"2'&/&5462"."2""&7462"&5�-��3�6	
	!	D\�z
2:Ap�pAPCN^LAB�C@&'C��u�
�uJ�	1_��
%/3F2%
/3F3@�)�


�

���#m?CsCCsCL|#�WO�'(('ADOI���w��xI
�	�
*aa#	
	**&	
	*)&�

��		���R'+;?OSnw����������
!%!2#!"&546!%!2#!"&546!%!2#!"&546!%!2#!"&546737#72+"&/&'&#"&4632"&4623"&462%37#72+"&/&'&#"&4632"&4623"&46237#72+"&/&'&#"&4632"&4623"&462%37#72+"&/&'&#"&4632"&4623"&462w�t��_	�*w�t��_	w�t��_	�*w�t��_	�Y!��&
f
)0	

D	


�Y!��&
f
)0	

D	


��Y!��&
f
)0	

D	


�Y!��&
f
)0	

D	


(��w*	�`		�	*��w*	�`		�	��w*	�_�	*��w*	�_�	�o&�

�		
�



ao&�

�		
�



�mo&�

�		
�







ao&�

�		
�







��A'?M@J		�i
	gW_O=<98541/*'" 5#
+5>232#!"&546;5."#"3!2654&+"&=#"&5MU�TS#00#�"11"}�=z=*S�S�
.TQTTRS0#�"11"�#0R@==?|��y		yy		��A1?M@J		�i
	gW_O=<98541/*'" 5#
+5>232#!"&546;5."#"3!2654&+"&=#"&5C[�[I#00#�"11"��6r7>I		�		I�.UTZ[US0#�"11"�#0R<77;�	�		�	d

dd

��A'2@/��YaQ5#+5>232#!"&546;5."MU�TS#00#�"11"}�=z=.TQTTRS0#�"11"�#0R@==?����",6BNZY@Vg	

i

iW_O--##@?:9-6-620#,#,)&	"!+0137>3!232+#!"&'#"&4633!267/.#!"462"&5.?>&/&>}�D#$D�		,>
7#�	#8
>,		W<"�!<�?��
@��

��
�����#*+${

*��u*�
	��		�		�	
	�	�	����",5AMY`@]

�~g	

iW_O--##?>98-5-51/#,#,)&	"!+2137>3!232+#!"&'#"&4633!267/&#!"462"&5.?>&/&>hgG+#,F�

#=
>&�	'>
<$

c:�;�?
��	@���������%/0's>��i>���

�



�

�
�

����)5AMA@>g	Y
		iY_O  43.- ) )&3##3# +#"&46;7>3!232+#!"&''.#!"26=4&"76.6%'.>�A		�D#$D�		B<-�
-(?��
@��
��



�

����""��
	���		�	��	���	
���(+2?LU_@\g		gg
g

iYa
Q,,TSPOJIDC=<76,2,2%##33%"+264&"!2#!3!2#!"&'#"&46;2!26?4>2".%4>2".7264&"�%4$$4%���	 ;(��:%�		�4Q
el		};7#�08009/�_080/90*$4%%3%%%4$$�	��'5)%/B3�	��� �z0080/009/0%%4$$���3,3@MV_@\g		gg
g

iYa
Q--UTQPKJED>=87-3-3$3$33%"+264&"!2#!3!2#!".'#"&46;2!26?4>2".%4>2".7264&"�,*��� B+��4"�

�%A,dc

} 6/�5>54>5�_5>55>5?,,,���+9!*!9$�����44>5544>55,���("/<R@O�~gg
Y
a	Q10$#760<1<*)#/$/##33% +!2#!3!2#!"&'#"&46;22".4>!2".4>��	
 ;'��9%�		�4Q
el		}]0080/�|009/0�	��'5)$0
B3�	�L08009/080/90��(�+<@9����	�v+*%$
+"&5#"&4?62#46232"/&463�"h��h"i
��
X��

Y���Y

��	����FWke@b)hbL�	
iiiYaQYXIGfd_^XkYkPOGWIV87#"+2"'&'.4676761".5467276767>54&'&'&'#2>54.'2".=326564'�VXSQ&"&R;QSX�WTP<RS;PTW:Cs�sC<<""%'1HOQ�QOI!"L1' �8[57_t_75[8..6. +�#"A%"=h2@"##"@2h2i1@##\HVDsCCsD.P 0 0	
-.*< !! <!0	
Y,>9^7:_88_:7^9l.6..,��!m�LK�PX@"rgW`P@#�gW`PY@! 
+232#!"&=46;&5463!!,	R��M	,O��F�,�z�,S�����(#2C@@�~gW_O1.)(#"	+!".54>3!2"3!2654&#4?62#!"&:�t$=##=$�$=##=�P���	�

�	
�J
l#=$�$=##=$�t$=#7�t��7
	�

�	���("B@?�~gW_O!+!%!"3!2654&2?64&#!"a�&�#22#�#22�n	�

�	�J
�&�]2#�#22#�#2��	�

�	���-#4"@#4L��v,++%&27%>4&6"'%.>
6"'%.>��^�]

��
8&
�e	
�f
&��&�e	
�f
&�e�����
#&��&#	�,
$%��&"����?=GQgf@cSGgQ5
	f0)(!L��~~�iYaQdc	+76217621"/&'"&4?'"&4?.6?'&4?62764'1&"764'1&"6?627��<�}�<�)Ku'dg)yy.yy!'tOt�

		��		
	���.�!!K YX �.q�<�}�<�*Su'!yy-y
})gd'uKu�
	

���

		�.�!XX!K!!�.
����#,5Kcz�N@432
LK�
PX@Q

��~iii	i

W
_

OK�PX@K

��iii	i

W
_

O@Q

��~iii	i

W
_

OYY@=76%$
	��|{qpedML6K7K10)($,%, ##
	
+2"&462"&46!2"&462"&46!2"&46.'7"&'&'&>"'"767>'&'1&'&!'&'&547>762%!654'&'&"�&�&�s&A&[&�*0�)i
	!!')%

,
	���2''�Z]�]Z�''53��W>=gk�kg=>.&&S&&&&�&&&&�)	���\.*%!&+"�			��CLOSe]Z�''''�Z]eT�C"w�}kg=>>=gk}��{c=(+3Vc�@�*	F
E
WLRK		�
�g	g

iihYiW_O,,))b`ZXTSQOIGDB?=75,3,3210/.-)+)+"('
##+3!4&#!#13265"&54?63!2#''##37#"'&5476;54&#"5632;#.'5#"326���� ��	� �� 	�O;:�%�%*�.��&%!">#(',		!

���	c	� ��M q ��	<��}\\J��&%&	&l&)>�j�RB[p�@,65LK�
PX@;��		iiiYa
QK�PX@4�		iiiYa
Q@;��		iiiYa
QYY@]\DCgf\p]pPOC[D[#,+462"&#.?67>754&+"&#&63276;2727632?6"'.'&47>762'276764'&'&"�%3%%3%}*

	y

he]Z�''''�Z]�]Z�''''�Z]e}kg=>>=gk�kg=>>=gk�""1""��#F$

	E#
��''�Z]�]Z�''''�Z]�]Z�''*>=gk�kg=>>=gk�kg=>�v�<(<ENW@@=0)L����YaQDC@?76-,! +'%'.4>2&'&67%&6762&462".546264&">.>.��_O& 4;"�_	�";4"O�z&64>33
)=('?(818�;83;��
�
5;5J�>��&J6;4��		�5>(44)=f*(?'*8172�27 18���.)E\@Y��i	gYa
Q***E*DA?<;8631.- ))

+"'&'&476762'276764'&'&"546232+"&=#"&463�}lh>??>hl�li=@@=il}dWT1331TW�WT1331TW6&��&�q@=il�li=@@=il�li=@\31TW�WT1331TW�WT13���&��&�m3H]t9@6l]5LphdcXTSOC?:*)%#I��vji21+?6276/#/&?#'&57'&6?62'#767'&67%76'46?'"&/762'46?'"/ESKKOG2�	`pG	��
Gp
d	�6)*`K
XOy		
�)
		yK
X	Kd*�yyyd�>?�d��

�}
}
W�
B!CSO
B"C
�W
y�K\Cd2%:u	

u:!2`C\��??�`}}`
���m3Jdu�#K�
PX@wu^OEA<8	dJ7L3IK�PX@wu^OEA<8dJ7L3I@wu^OEA<8	dJ7L3IYYK�
PX@4

�g
	
	iiYaQK�PX@.�g
	iYaQ@4

�g
	
	iiYaQYY@��|{qpihWV0-(% +7".54>3!2#!.?2?!2654&#!";276'46?'"&/&?'&6?62/%&462"&4?%"/&4?62�22�22���*�$''�&&;�2	&6	6&

>		T%%T		>
K�
KK
;��::KKq2$12��1qX%'$&&��'
:�6&22&
6:
S:	K

K	:S
*�
KK
:?;:
KK���
������
1"#01'7''&7>7898967>7''"/.46?>30127'701701676301327&76709898167670181'#01"'18981'2367181676'5'&'.'#01&#&8	9763012	2?64'&/&'897'77'"'&+"0167181675"/.54?#811�
OW\#0
�[?	&\	TM@HJK�[X#/!O\[
 %"'T%$��%3
+S

!D%


���Z
��	��"\!�[\\��S

@E7F�98!
$
"&'O\![O*#�`B
"\!TG!*�[S0#

W!WO+ 

S��F� &%)
 
(!&"!1��%
�	Z	
��&_h[[\*S%E*$""&!99���9!1@.�iYaQ!!+5276764'&'&"#47676 �`TQ0110QT�TQ01uA?kook?AA?ko}u10QT�TQ0110QT`�ok?AA?ko��ok?A���$\`dhl'K�
PX@Nrggg
Wg		g_
OK�PX@Bggg
gW_
	O@Nrggg
Wg		g_
OYY@2ee]]lkjiehehgfdcba]`]`_^\ZWUPMHFCA@>96!#%5#!%5!+5#"&=46;2+!232+"&=46;54&#!32+"&=46;5!"32+"&=46;5463!3535#!3535#�K		�		K*K

�

K��K		�		K��
K

�

K(
6�����������
�

�
�)�	�

�	��
�		�
��	�

�	�*^���𚚚���jARE/@,A	L��YaQ>;+54>2>54."&'&'&754&"/&'&'&3!26?54'&F 6@6 ,29ata:3�2@K	*:*"

D6A%$ʲ 7  7 �]7:c9:b:7^�	^�**�Z 

D7"�	#+����$,@)L�YaQ
+"'&'&476762'54&">&�qa_7997_a�a_7997_aU� �
C97_a�a_7997_a�a_796i��u��:3@0%L���W_O&9%<9+#!"'.46?676763!2'!"47>;2!2��(��
	�	(
��g+g�!&�('
)',�

�	�O2"��('!!����)HY=@:?L��iW_OJIRPIYJYED53:K+&'&3!267>'	#!"&5467>'4'&54>32"&'&2#"'&547>
!	�����s�"1sA
w
	
*!	��z	"��{B
1#
	��6�	
	�

[!
		���(AH@EL
	
�		���W_OA?:720#%5!%5# +3232#!"&=46;5!32#!"&=46;546;5#"&=463!2+�,q
��
l��m��
q,�p
0
l�,}�
�tt
�

�},t�

����(^"K�
PX@0
L#JK�PX@0
L#J@0
L#JYYK�
PX@6��		�	
	
~

�g_
OK�PX@5��		�	
	
~

�W_
O@6��		�	
	
~

�g_
OYY@^^][QOHGFE?>64/.-++"/"&=6?>235#"&'&546?>;+354?632"&'"&=#32#"/.46?>;5����K��K�	��	�G	�	�K(G	��K���	�K��K�������(!"@iYaQ+"&'&4767622?64/&"�>|��>>><ki��ܯ
!
�

�
$	

Ci��||ik�kh?>|���
%
�
%�
%
��c#@@=L�ggW_O%%3+>3232"'.7#"&573#7#��
0
S�
	��

[�q�>'�d�A�	
���

	A7�=���x�7,@)igYaQ5(++"/&6767>#&'&'&6763276+".7�D�BDN%&��BD)
,,
7_\im�65n_[jl_>�P'%&��BCN%&C,_55p^]in�648?�
���(
21@.
LiYaQ)(22'+327.72654'&'&#&"'&'&476762�>/.OR`t`�K�?/.OR`973�}kh<??<hk�kg=>>=gk&Xp_QO/0G�M�)Wq_QO/0��>=gk�kg=>>=gk�kg=>����#'+/37;?CGKO�@�,+*)('&%$
#"	! �
v884400,,(($$  8;8;:9474765030321,/,/.-(+(+*)$'$'&% # #"!

	-+#3#3#3#3#3#3#3#3#3#3#3#3#3#3#3#3#3#3#3#}*T*S%O!K"KGGBCC?::
7
622..������������������������(",<L\l|�����@�&L�	g
	
	gggW_O/-���������������zwrojgb_ZWROJGB?74-</<##32&#+#!.546;56;23546;232!3!26#"&=46;27+"&=46;2+"&=46;2+"&=46;2+"&=46;2+"&=46;2+"&=46;2+"&=46;2+"&=46;2�5#�n$45#WK
�
K	X)7X�nz	�)K		K
�	K

K	�	K

K	�	K

K	�
K		K
g	K

K	�	K

K	�
K		K
g	K

K	\��%35$y%3`	``		`3�j��r
K		G


K		K

K		�		G

G		G

G		G

�		G		G		G		G		G		�e@�v+>32"/.47P
	�	\�6	�	�e@�v#+&'&#"2?>4'�
	
	�\	
�6	�	@L�v(+#!"/4&54?62�	
�5�	�		���8E+@(�����vED?>+"&4?>"&4?>.62.6?6267"&4?62�' �'ihN'�' �

$55�' �'hiN'�'
�

&44�'�*� '�'Nhi'� '�54$
�[(�'Nhi'�)�45$
�'�'����("*@'���YaQ+"&'&476762'&"2764'&"�>|��>>><ki��Fm&

�
%
f

'Ci��||ik�kh?>|�Fl


&�

Z&

��@L��v+62"/&462-1&�2�&2�q&1�-�1&���;�!@�v+"'&4762"'&47620�&1��,1&�&1��,1&^�1&'5(&2��1&'5(&2��@�!FK�
PX@��vK�PX@�v@��vYY�+2764'&"2764'&"��&2,��2&�&2,��1%^�1&'5(&2��1&'5$%3��q�42@/&LigYaQ5'*'+4676'"&'.367674.'&'&;2>'ED�BDN%&�MK�*-,8^]il�64o�hm`	?
�P'%&��BDRLD,_55p^\im�l7	?
�
�X#A@>ggW_O
#"

	+"&463!2#"&463!2#"&463!2#`  , �Q  6! �C!!E  � , !+ �!,  ,!� ,  , ���()1@.iYaQ ))
+276764'&'&"7"'&'&476762�}kg=>>=gk�kg=>>=gk}_QO/00/OQ�QO/00/OQl>=gk�kg=>>=gk�kg=>l/.OR�RO.//.OR�RO./���(@�v+"&'&476762�>|��>>><ki��Ci��||ik�kh?>|���();A@>8/L�iYaQ52 ))
+"276764'&'&'2"'&'&47676/546;2�dWT1331TW�WT1331TWd}kg=>>=gk�kg=>>=gk�	!lC�31TW�WT1331TW�WT13W>=gk�kg=>>=gk�kg=>��
	X��6
!���ER=@:B%#<.LJ:10I��vGFMLFRGR?>+%'6'7>5&'&&'54&'&'&?7>=676767&'&".4>2�KKCK57
``	>+K	@ KKD
K94	a_
<0K?!�f'A&&ANA&&A�*?9*WP*(SW*.	H_)@9*TS**WW**Eb%ANA&&ANA%����MX����K�
PX@5����7MJ@
�ץ}����sqgc�L0)$"JK�PX@5����7MJ@
�ץ}����sqgc�L0)$"J@5����7MJ@
�ץ}����sqgc�L0)$"JYYK�
PX@;�gii	
iY_
OK�PX@5�ii	
iY_
O@;�gii	
iY_
OYY@���������������³�POLK=;64'+'&'.?&'#"&5&746;67'&767267676332+&//>'&/'.=&'&'&'&6?&7'.76767>676754676766'.'&'&/.?&'#"5&746;67'&6767667>32+&/>'& 	



((�2

-	
)
2:
&)*	&-2
	
	*
17
%+)
+	2�7&*'7&*�



C((�	

		T((�.-
-
-"
,/*2	2.
$	2*-P'*&7'*'7�
	T((����?]l@iIC%	F3	L�

i
	i		Y		a	QA@
	TS@]A]640.??
	
+"264&3"264&3"264&"327673276764'&'&"/6?'&'&5476762,""0""�""0""�""0""�{kh=?.II26J]}kg=>>=gk}DJ)"62&31TW�WT1331TW� ,  ,  ,  ,  ,  , 520SVd<:61 !"20RV�UR/1�z"+2&&.1LA?%&&%?A�A?%&���(/AL2K�
PX@5#	?	-LK�PX@5#	?	-L@5#	?	-LYYK�
PX@<rg	g
	
	g
gW_OK�PX@6g	g
	
	g
gW_O@<rg	g
	
	g
gW_OYY@#CB10EDBLCL><970A1@,*'%//#73+'.#!"#&3!26=32654!"&546;;7!"&546;;##5323k\	��#0�&1"�#0�#0����1"�����	mV�[
2%X(��"12%X2%�&�P&	�p#4K�&	���
�qZ
��F�/GoJ@GF5,L��iiYaQa]*+2767#"'&'.=2767"'&'&'&=72767"'&'&'&'&=62#"'&'&'&'&=467676n�lZ<-C(bQkH\%=Yf�d]9AAG�G\%
(6n�l\:->DH�H1#
;xG�H0#.#%62+A1$'# 2'�(P
P(��&O!	O�'O 
O'�:


 :���()ID@A�~iYaQEC53 ))
+"'&'&476762'276764'&'&"#"'&'&'&5476767632�}kg=>>=gk�kg=>>=gk}_QO/00/OQ�RO/00/OR� ")' ")$l>=gk�kg=>>=gk�kg=>l/.OR�RO./0/OR�RO/0�")' ")'�� @*@'L���v"!30!@"@.6+6#!"&5467276?67627676767676=4&#!"�
2%�#4
+gq*-&"**dg6�X"	�c 2%�%2X�" ���#53%j!NS
!
MM(�uK
!#52&!E����(%<@9L�gY_O"
+!2#!"&546	27>?4&#"}�#00#�"11�u&1�O

�
(0#�"11"�#0��t1&�O
����0;;@8732-"	LKI�W_O;900+2"/+#'&?5467'.54?627>	';�>*	h2`2��	
\p:	2`2h2�f\��O*2Bh2`2��	:q_
	2`2h�Y
X��K����@��v#53+#!"&546;2!2�K2�f2KJ3�2Kn3J�t2KK23JK2J����g@SD6
LVKK�
PX@B�

�
	
	~��gY		iaQK�PX@6�
	
	��gY		iaQ@B�

�
	
	~��gY		iaQYY@ggfdba`^PO875420/.*
+3'&'&5>763267673"&#"#5737672627527=4'&'&'&'&/#42;"'&+�W�
�{
	 Bh
"!6S6?.9"B	�12%*.+�1@2��*	��;:D6	$7 
	*
	
'"�	*���( )@&iYaQ  +276764'&'&"2*>=gk�kg=>>=gk�kg=>�\PN-//-NP^}kg=>>=gk�kg=>>=gk�-�/-NP�PM./���((c@`K�~~	gg
W
_O '&%#( (+!"#&3!26=3265.!!7#4&#!5!g��%2T%22%?#5W#54��?�X2%�t?(1&X1&��#02%X2%7&1��s����#5S������1@'Jv+..267>'&'.767>7>_4��11��3@%18
$&#84)j����",#XX#:?!XZ",
 �+*11*+6KF�1��
80�EL���9"_03&!C>!"3.a"��|�7I9@62E<(&L�iYaQB?+#+6762"'&'&>26764&'&#01"&5?636/546;2�!7^mj\_l35��\`7
-,
'CBKO�&%NCA�FC�
�	!lC
y'856�mj\_k35`-C&%NCA��&#'B��
	X��6
"���� )7h@e
61,L�	g
igW_O+*"!43/.*7+7&%!)") 
+!"3!265."&5463!2#!"264&!5'&"'&"g�%22%�#53��	��+�++9*)e`��KK�1&��#42%/&1�~	��	�+8++9*�_ħ�KK����(F<@9igWaQ64'%
+276764'&'&"2"&46.547>;2+'&'&5467676=4'&�}kg=>>=gk�kg=>>=gk}'>	y
		
�	

l>=gk�kg=>>=gk�kg=>�**�	
��


	�
����#J&@#����vJI43#"+6?>&'&"&4?>&'&4627.6?62'.6?>�7:u T"2,2)poR!+y+qo) />8:y8:6+ 6)o78R +y+qo)-Ey87"2 +2+!Roq+u+ )+ y876 +6* 
Roq+y+ )+�3@�W_O#++%/&4?6!2#!$�		�\%%���
�
	�p&2%�3@�W_O#++%?64/&!"3!��

���%%\�
�
	�p&2%<�@L�v5+"/&463!2;
����������%G@D/	Jv)'+&'&'&'.'&54767676?676#"&'&'&57676767676s@3-
<Ea',��Cq?b

 !"( `{RG	
  :EW
',%��C2*$77:

",A#,����*1>@;/.-I��~�YaQ10,+$#+"/&4?62%?64/&"&4762'3'73|K�KA`���S"������
�:Oh2:
O�OdC.�B�%���b
���?;l���(
)7@4�~iYaQ###%+>2"&'&4#";26=3264&+54&"h>��||��>>���&��&Ci||��||ik�L&��&����8H_@\2	L

�		��

ig		Y		a	Q:9A@9H:H76*) ###
+546232+"&=#"&463#"'&'&476762"'%2>4'."� , G  G , G  Q/n;eUS0220SU�US01$#� +��EwF$"w�x"$F;<�G  G ,!F!!F!, ��#$20SU�US0120RVd?n,�, �Fw�<:FF:=�x"$���#/;Gr@o�		��

g
gg		Y		a	Q=<10%$C@<G=F740;1:+($/%.#"	+%132"/&>;462"&463!2#"&46;2#"&46;2#"&463!2#S�	�S!, �&&&&��&&�%%�&&:%%:&&�%%��

�L%%�� ,  , � ,!!, � ,  , q ,  , ��5@@=�~gWaQ2/(%"55%#	+	"&=#"&=46;5462#";2+".54>;2���$��$0��� 00 ��/O--O/�=�������"0��0&-O/^/O-&���(&09By@v.L�

�

ii	Y
		iaQ;:21('
?>:B;B651929,+'0(0%$! 
%+"&54>32"264&"264&4&"26"265.!"264&"264&L3J2(#5X#43G54O#52K22�I3I/2J/#52L12�#52L12��#53J24�#55#(2�I3I/2I0w3J24F5X#54G43�3J22%%33J22K22J32K2���(@�v53+#!"&5463!2�fD��HcfE?Gc~��HcfE?Gcf���+(�& 2+/.?>'7>&''7'?��q
((
p��*(��))��*��)��hl��&��&!*���$yy
#�,"��uu��&��%���+�2+?>'7>&/.�p��*)��))��q
((�&$.���#
uu
#�,$&�����#/R@Og
g	gW_O%$
+($/%.#"

+"&463!2#%"&463!2#%"&463!2#%"&463!2#h%%%%��%%%%��%%%%��%%%%!,  ,!� ,  , � ,  , �!,  ,!����#/R@Ogg	gW_
O%$
+($/%.#"

+"&463!2#"&463!2#"&463!2#"&463!2#�&&l#&��&&�&&��%%%%��&&''� ,  , � ,  , �!,  ,!q . ,!����5Q��@LK�
PX@"���WaQK�PX@��WaQ@"���WaQYY@	.->))+>54/&'&#"32"'&'.'&=4>;2#"/&'7654'&'&#32�		
&�9
��	
� 
Z
��
���mZ		�
�Z	
%
�

��
��Z

������#/R@Ogg	gW_
O%$
+($/%.#"

+"&463!2#"&463!2#"&463!2#"&463!2#h%%�&&�%%q&&��%%%%��%%%%� ,  , � ,  , �!,  ,!q!,  ,!����#/R@Ogg	gW_
O&$,)$/&/ ##+!"&463!2!"&463!2!"&463!2!"&463!2��&&�%%��&&q%%��%%%%��%%%%� ,  , � ,  , �!,  ,!q!,  ,!���(,%@"&L���v+"&'&476762764.'&?>'�>|��>>><ki���}&
}}%}}'}}#Ci��||ik�kh?>|��}
%}}$}}
%}}#���(3;?Oq@n1M
L
�

~g	i

W

_
OB@JG@OBO?>=<;:76.,)&#!33
+%32654&+"#'.+"#";3!265326=.%4;2#!!32654&+"L)

)
&�>
%�%
:�2"�#0
�0��s��*		*
?	�		�|\dd��#42%X22�PX��	�		�|
��kRd@a<2R=('L�~~~	iY_OOMIGCA87/-%#	
+!"3!2>54.#"'&'&'&#"#"&5.546236763232767632	�Y.-�-.s
6N
'6&C5#
-�Y--�-��
	"Y�	&& $
		�����(&;HQ\@YLi		iiiYa
QJI=<('NMIQJQCB<H=H21';(;%$#
+%327&'&#"'67632>54'&'&""'&'&476762".4>2'264&"9*/11bZ*/F9dr3EHOWT7-&)/.OR�RO./3}kg=>>=gk�kg=>>=gk}1R00RbR00R1++8++:6"0=!#-5-r>_QO/00/OQ_<;8��>=gk�kg=>>=gk�kg=>0RbR00RbR0l+8+*9+�� @
L�v
+!"3!2656.>54.?�6,+ �,$��%&�+�J(*�!;t�t
�����@
Jv+&'&'.27>'&g1>;v-&!-xz/7 1Z0Z1�)

(.&&-''/DA�3��b1�BE���%/@J�v,+('+	.67&767676226?264.u��65&
w.0D@=�'":G	//��
!"
I��*65w=>A-1
�N
>G>�3+��
!
	$���(
3AC@@L�~iiYaQD,+>2"&'&4356?>54'&'&#"347676322654'&"h>��||��>>�T&%"7&`	"
/3Ci||��||ik��'6:&3	 "�
���.)Sbb@_QL�~ii		iYa
Q_^XWSRFD@?98 ))
+"'&'&476762'276764'&'&"4?67>767654&"#47>32#4762"'.�}lh>??>hl�li=@@=il}dWT1331TW�WT1331TW6

	4`*4!F'%

X1/
	q@=il�li=@@=il�li=@\31TW�WT1331TW�WT130	B!A
X

���(+@G@DL�igYaQ-, 76,@-@'$+ +$	+%/#"'&'&476762%!2#!"&546276764'&'&"��
*�2|Gk\Z5665Z\�\Y56����RFC())(CF�FC())'DF��
)�)*65Z\�\Y5665Z\jBA;���)'DF�FD'))(CF�FC()���(1[@X��
g	gW_O10-+('$"

+!!72#!.54635463232+"&=#"&463c�"�&12%�&12%A��&��&�[1&�#53%�&1�d��&��&���( A@>ggW_O 
	+!!72#!.5463"&463!2#c�"�&12%�&12%���&�[1&�#53%�&1�&&���(
$@!���v+>2"&'&4!264&#!"h>��||��>>���BCi||��||ik�&&���.)5B@?igYaQ+*1.*5+4 ))
	+"'&'&476762'276764'&'&""&463!2#�}lh>??>hl�li=@@=il}dWT1331TW�WT1331TWy�q@=il�li=@@=il�li=@\31TW�WT1331TW�WT13E&&����-@-L�v)(! +'&462"&47.7>"/&4?62J} +��+ ��&,�&-��-��,}9},�+� +�
&�'�+ �+�,}��63@0�iW_O65#6)7+#!".54>7>32;26=32?64/&#"31R04X3�>i>5]:&�PDwP��
}	K	�
��6U15Z4?k?<fAIV=m��

�	�	����,6@3L�iYaQ%$,,"+%#"'&'&476762"'%2>4'."�/n;eUS0220SU�US01$#� +��EwF$"w�x"$F;<u#$20SU�US0120RVd?n,�, �Fw�<:FF:=�x"$���( $@!���v  (+476762#"&'$%2>4."h64Z\�\Z46��7
$���"9""9D9""9�k\Z4664Z\k��]-0�E!:D:!"9D9"���g�T,j�E:K�
PXA'd�\
	[
U6!
)
?
GLK�PXA'd�\
	[
U6!
)
?
GLA'd�\
	[
U6!
)
?
GLYYK�
PX@N		�	
	
~

~~i

iiYiaQK�PX@I		�	
	
~

~~i

iiYaQ@N		�	
	
~

~~i

iiYiaQYYA lk=<����tsk�l�hfOMJIDC,*+6"'.'&'.767&76767676766?6?37>&/7>&/76'.'&'&22767676'&'&'&76767676'&'.'&767676&'.?6?67676767676&&'&>76?>126?6?676767>5''&'&767>76.3'&/&'.LPLJ-/.0
"51;F-,k-1shC7(&'
	)*=!FDOR��6$#%!$19U_($[IA7+,	
)'R355
9IF<>/
!
	

 

	'
:)
 

	
	8"
		#
		

.


1$1%@BRUb$5wj")4 !2a7
(&h47*8><-.N/.�'&36/
"0,[!8R)
6.&]h-NE71.?	
+*,d	
:&H=


'* 1R 
07



@=
!
J'�( 
	
	+

N$-)
>6,
$
	>(

%7	 8C$9�~�A"1:DN�@� -(%L��

g		g
giW_OFE<;32JIENFM@?;D<C762:3:0/'&""+!2!"&/467!!"!2?4&!57>7>%2"&462!5463%2!5463��"1."�"2."��,�����KN���**:+*S��X."��"2."."2V��|�ŇKN�5+:+*<***t**���(-?@<�gW_O'$! 
	-,	+2+"&=#32#!"&=46;#+"&=463�A
�Q��

R�A
(�
B��B
BnB

�����'w��AK�
PX@/ut.q1�edb=<:6
WVSKJGE!
L2^KK�PX@/ut.q1�edb=<:6
WVSKJGE!
L2^K@/ut.q1�edb=<:6
WVSKJGE!
L2^KYYK�
PX@(�������vK�PX@$������v@(�������vYY@���������pn'%	+?3?#!"&'54>73%6276#+''"&=&/&'&'&'4737&75/.767>;6?546&32656&2".4>�3m0
)


&&
��(4X4!�13&)	&&&% 	13&&&&%Q*	#(�84X44XhX32XM#
		&<,


&C5Z7x

2	0'2&-2	
1&2�		-*(�4YfY43XjX3�j�R)5DRbn~���@�r�z9
	OH
@L{sA
:Kgggg
g
	
i

g		igiW_O���oodcTSFE66+*�����������o~o~wvjgcndm\YSbTaMKERFR6D6D?=1.*5+4# )(	 +2#!"&5463!!267%2+"&=4632#!"&463'2#"'54672!"&5467'2+"&=4632#!"&463'2#"&'54672!"&47!"!54&'V&&�<&&�
���		*				�_		S
.

"	
�[	
O		*				�_		S
.
"	
�[	��<�
R%��%%l%�&	�	*

*	�
-.
	�	*		*	�
.
.	
mi����!%H@ELggW_O%$#"	!!	+2!32!"&546735!"&'467!!k".,#��������".,#���,#�[".KK,#�".S�_����!(7@,@#L
KK�PX@H�
r
		
rWg

g
g		W		`	PK�PX@I��
		
rWg

g
g		W		`	P@J��
	
	�Wg

g
g		W		`	PYY@-*)""?>;:652/,+)7*7"("('&%$
	!!+#532>/&";#"3!26=6&%7##5!53;26=3'"&462s�d ,�@�* d�,,� +*�c������,�,�>  42.>��>-7+ �,,�,������g�2,,2�d V�@LI�v)+654'&'&"327765$0/PS�SP/00/PS`AQ2�:LZNK,..,KN�ML,.	)��k�%1@.L��W_O%$"7+#!"&'!2>52!".'4>7&-8_9��1Y�-M-�!8"5!��!8"5!�Y1��9_8-&-M-�5!��!8"5!V!8"	����3GVj~����K�
PX@{

T;
LK�PX@{

T;
L@{

T;
LYYK�
PX@l��

���	g		gi

ii

gW_OK�PX@d��

��	g		g
Y

ii

gWaQ@l��

���	g		gi

ii

gW_OYY@D�����mkXW�����������������wtk~m~b_WjXiPO65-*'$32+%1#.=462"&54&#!"3!2#!"&546362"'#'&?%6"'&?'&2+".=4>3#";2>=.2".4>"264&72"&46F	B
CV(3�v�

�}(44(???O,
S
SB>
��'A&&A'�'A%%A'��..�./q!7!!7B8  8! //@//a
���	;)��		R!!��!;)z);��
BCS
P
X
WGB�%A'�'A%%A'�'A%).�..�.C!7B7! 8B8 *-D--D-?��*7l@i%$L
��	iiY_O,+21+7,7*) 	+2!"&'467"2>4.%#"'&/767632".4>q".,#�".,#�=j>>jzj>>j
1. "-2��#9!!9F9!!9�,#�".,#�".h>jzj>>jzj>�!I}!9F9!!9F9!���R&3C[eir����������3K�
PX@��%�� &G	W
P!
LK�PX@��%�� &G	W
P!
L@��%�� &G	W
P!
LYYK�	PX@�rp7#6!5)'%&%g*(&$" & g432g+,g/.		g1i-0
i

g

iW_OK�
PX@�r~7#6!5)'%&%g*(&$" & g432g+,g/.		g1i-0
i

g

iW_OK�PX@��~7#6!5)'%&%g*(&$" & g432g+,g1/.		g-0
i

g

iW_O@��~7#6!5)'%&%g*(&$" & g432g+,g/.		g1i-0
i

g

iW_OYYY@����ȹ�����tskj]\ED54('��������������������������ǹƱ�������������������������|ys�t�onjrkrihgfa`\e]eUSNLKJD[E[=:4C5B.-'3(3&&8+2#".'54>7#"32>754.'2".4>%2+"&=463!2#32#"&'5467"2654&%#3%2"&462+"&=463!2"&=#32+"&=463#3%2"&=#"&=4632+"&=463!2#"&'5467!2#"&'5467#3%#3%#31%?'#=%�%@'#=%��&;6%�,*`!8  8B8 !7���

yu

y� /-E,/�צ��
����
�}

}}��H��_������c��$��$��^#=%�%?($=%�%@'*6%�&;*�,B 8B8  8B7!��	�	�C-B/-" /��'���	
���)��m		mm		m$������*�����k�@Iv$#+&'&#".#"67676N5.:7\Z7:/58.cR\\Rc.8J&!:..:!&JWmZ_O==O_Zm���(+N@K(L��	iY_O$"! 
	+*
+!"3!#53547632#"3#!2>5.#Z�4./��42Z"*$>,�u.<)(.�/+8�q_31}#`���.�*:����;?@<:853&" L�����v%$#)+#"'232767"&'2327.=.47&54>326767_#$BGah}�	@<94=_ +D'#1&.Fegr2V3)H:?
+C*-
`]`LP-0T'H95M-	Td-V353V2# 7	9���)lJ@GV1+]L�iiYaQhgNL@>75')%+#"'7676?327>54.#"674674'&'&5&67632#".76767654'&#".'&5476762�><gj{CB)


:!D75>I�N^GA$"	
	0-1>7X1A'#&U�$&><gj�jg<>b{jg<>
I&
1.&%�NJxE(%@>H"H%
2Z.T5=0/4'("2
dh(!SV^{jg<>><gj����1Gaw@t\BT<-L
�
~	gW_OHH32HaH_XWSQ@>:92G3E+'" 11	+2#'./7>?357>!232#"&/5462"&/5#"&/46?!#"&/57>?_ ���@ � � �  +���� (!��� � �� � ������%8K�@�B/
G<4)	!	L
�

��		�
	~�~�		gW_O:9'&EC@?9K:K20-,&8'8%%
+2"&'5#"&'5467!"2675326754&'%26754&"#"!"&'546232k ,��!+�� ,��!+�� �� ��� �� ���� 0<LX\`lx�����������(2#!"&'463!"3!2674&#2+"&=4632+"&463%2+"&=4632+"&463%#3%#3'2+"&463!2+"&463%2+"&=4632+"&463%2+"&=4632+"&463%#3%#3'2+"&463!2+"&463%2+"&=4632+"&463%2+"&=4632+"&463%#3%#3'2+"&463!2+"&463�)<8(��)<8( ��#"#"�a

S

$		}

M		S

#

}		��))�**�		}



}		�

S

$		}

M		S

#

}		��))�**�		}



}		�

S

$		}

M		S

#

}		��))�**�		}



}		3%�H&63%�&6*�L���	S

S	TT	S

S	T****T�
S

S
SS
S

S
S))))S�	T		T	SS	T		T	S****S�j�(?\��������@=�����`�����Ȱ3+�9���mYQ
;%

LK�PX@y	
r$(g#!" ig&gg'ig		g
g

%
hW_O@z		�$(g#!" ig&gg'ig		g
g

%
hW_OY@_�ˮ�]]�������������������½����ʮʨ�������]�]���xwlk\[WVSRONKJCBA@?>7510*("!	)+2!"&'467!!267%"/##"&'54673'46737232'!37>354623546232&/./##'.67367#"&'546?!?3235'5'46732"#"!54&/#"&5?4&!"!54&'"&462"&462"&462�)<8)��)<9)\�l $��T/"A
!(:!1	��.
/*)��v
	�
		
v	
����
��SE
S	���$� ��

S
T(6'�(:6(�(:�v!

�#2P''L+ ��\3	7.	
2.	
.
c
	��	,
		
h*	��=p
	d

a�GB"?


	


	


���#Nlo���@��
��
��
���&�ledG3t\[PS<	R	uonQ
L



�

~~~~		~		~~g
gW_Oqp����������pqhg_^VU+(#"
+2!"&'46?!"!2674&'7673/&?'.?>7'".?'".?'".?7"6574/&'".?62%7'".?'".?'".?�)<8)��)<8)��$ $ ����7����d�5g��b�a		

��lT��bx7(��c�{a�b	

	2%�I%62%�%6*�K�V��87����d3�h����a�a		hk���ax	7(��ca�a	
	���%<@9ggW_O"!%%
+2#!".5463!3!265!"!4&�0<,��0<,V�l%&>��&�&*�P(3)�(4�eu������$H@ELggW_O $#	+2#!"&'463!3!267!"!54&#�)<8(��)<8(^�l"#>��#�"3%�H&63%�&6���OK�j�(:AN[p~��������@6�,+�¿������������
|u	{	m`aA	LK�PX@�'%#!r4r17)+)g:/9.8+0-,*+,i**g(&$" h6
Y

i5	Y		i32hg
W
_OK�PX@�'%#!�4r17)+)g:/9.8+0-,*+,i**g(&$" h6
Y

i5	Y		i32hg
W
_O@�'%#!�4�17)+)g:/9.8+0-,*+,i**g(&$" h6
Y

i5	Y		i32hg
W
_OYY@���������qq]\POCB�����������������������������������������������������������q~q~yxlked\p]pUTO[P[HGBNCN?=<;:93210*)('! 	;+2!"&'467#35#"&46?35#"&46?35#"&46?35#"&46?3%!!267%2#"&46?32#"&46?2#"&46?3546?2"&'54672"&'546%#3%!3546235462354623546235462354623!"!54&'2"&4632"&4632"&46�)<8)��)<9)0h 0*
**
**
**
*,���$�Q	
.
�	
.
�
.

	��hh,��>SSSSS)>��$� ��	
\
\	(8)�)<8)�*<���$SSSS>�� �)
*}
*	
.}
*	
.�hhh*
**
**
**
**
**
*!D>#)





�j�(�����$@3����x3'wpo;:nUB<!
mkF>=

e[G	
	LK�PX@Q
r


pgigg
	
	hW_O@S

�

~gigg
	
	hW_OY@=��������������������usih_^WVTSNM87+*#" ��	+2!"&'467!!2672#7#"&/4673#3"&'5546?2#"&4673'32#/54627'#"&'55?37!"!54&'"&462"&462"&462�)<8)��)<9)\�l $��		K��G
���
}
K��G
���
^��$� ��

S
T(6'�(:6(�(:�v!���
{		K��G
z
��
}	
G��G	�9GB"?


	


	


���#T����@�X'
�f_5.~KztFAL$
K

�
gY
	giW_OVU����|{wvsrihcb^[U�V�IHDC@>7621-*##+2#!".54>3!"3!2654&2357>23#"&/5'&5476?6?6!2357>23#"'&'5'&=?>'2#&'&'&'&'&'&4767676767&67>76?6/&'&'&�00��00��$$$$��V	
	dE�
VdD
�
	
!	

	
	
	+�P++�+*�P���
	�4	55
3(w	
�4557w#%(!&
&

2 ,	

	����Un�����f@<R NGQPF��|r<���+�;,{se	*!	
LK�
PX@Kr	rggg

g		gW`PK�PX@L�	rggg

g		gW`P@M�		�ggg

g		gW`PYY@-��oo������������oowvihXWKJBA@?&$UT+!.'>7!7>!#!7>75'&'&6?6746737!"&/5467!275.'.6?>&%2#"&/467#3776?67673?76.!!��8'��(77(N#5 H�  H!!$%f04"	
	���
">!@

'b(��	�
Ի�}"!@2#5s�H�

!$���D���'77'U(7."7 @ ��  �5'W!
$*
�	�m5 �"#
54�	��
$)���*
: XUk��+'t}���#9GTbp~�����@�*
1
L�g$#g"! g		i

g
g

igW_O�������rqdcUUIH;:%$�����������������������ywq~r~kicpdpUbUb][ONHTITB@:G;G42/.$9%9##%+2#!".54>3!"3!2654&2/#".4>2!"&46?%"2>4.2#"&46?%2!"&46?2#"&46?!2#"&46?!2#"&46?%2#"&46?!2!"&46?�00��00��$$$$�(D(GJ)/(C((C�	
��	
�00:01��
�	
#	
��	
�	
�	
�	
�
w	
}
��
�	
�	
��	
+�P++�+*�P���(D(2'IK(CPD(���1:10:0h}}}	���#1?Vdgu��@�Lgg

g	g	
	
gggW_OwvihXW32%$~|v�w�pnhuiugf_]WdXdJI:82?3?,*$1%1#"
+2!"&'46?!"!2674&'2!"&46?%2!"&46?&/#'#.?>2!"&46?'3%2!"&46?%2!"&46?�)<8)��)<8)��$ $ E	
�f	
�	
�f	
ziwh'	
��	
�-Y	
��	
M	
��	
2%�I%62%�%6*�K���}m��FF
$
��}S}�j�(<^os��������@�������|^lb
	�zYA
kcL�~"g%$#igi!
g
 
ig	i	
	
ggW`P�����������ut__��������������������������������������t�u�srqp_o_ohgKI>=,+<@<	&+2!"&'467!!2672/&/.54>"33?6?6?'./2#"&'5467#3"67&54>2654."264&%2#"&'5467#3!"!54&'2"&4632"&4632"&46�)<8)��)<8)]�l!$��>j=(#			

',=i>%?

		

9"�
�
����!3V2#6"080"6#3V3%%3%%�
�
���?��$�!��	
\
\	(;*�+>;*�+>�~&#=j>2X 	 ]4?i>��% 
)	W
X)*M2V3<11 .00. 21<3V2S$4%%4$S	W
X)*�#@:&)





	��=/@Qb����@���f|
_WNF=5+#L�

� gg
g
g	W	_O����ccSRBA10! ������������c�c�����}yxutonig[YRbSaJHAQBP970@1?)' /!/	!+%2#"&'5467!2#"&'5467!2#"&'5467#";26=4&#!#";26=4&#!#";26=4&#232"&54&'##"&'5#""&54>735462#"&'5467#"326754&'&h�h�zh�d	h
wd	h
�d	h
E�'C(7)�
�/%@%�\)<8(�)<7(��#!�#!Ohhhhhh)h
h	h
h	h
h	w
l(C'

)<h

l/

'A(h	�7)�)<8(�)<)!�"!�#���(-6?�K�PX@<���
p


i		iY`P@=���

~


i		iY`PY@#87<;7?8?5410,)$" 
+#"#"276.+6&54&#!"/!"3!26'4&"2672"&46<��
�p��XLX��>�O(����

,���XX�<2��(@%I��YaQ+%&6767677%64����m_J@*%dOS[V{
�
�92XK^QJs=?�
�
!�l�Pb������������?6/&#"&/."'.'&6?>'&&'&47>>&/.767626?462.765!276#"'.'&47>76"&''6>267.?>64'".67&#'#&%2".4>"264&%#3&'7#35'#367#37#3&'7#3&'%363573.'3.0H7A$

$A	


3K
��aYV�$&
�`	"aYV�$&&$�VY�"&#		#&"(!		 �h�Q/�w'j>7�00800%%4$$���<����ۅ;��� �׭����4��
;d&w"�,OÞN,l4#w(j.;	
	'E'	
%			%$H&	
:
	 &$�VYa"	�`
&$�VY�YV�$&�� "("  
/"�EW	�2K7�080080)%4$$4%�p`Vcs]�_qlddl��c\_qiZ�H0[[�QA��BV5[2J��=$In~���K�PX@Hp	qh
i


iWaQ@F�	�h
i


iWaQY@F���qoKJ&%�����������yvo~q~kib`]\YWPNJnKnFD=;8742+)%I&I$$'#'$+232+"&5#".=4>;546!232+"&5#".=4>;46!232+"&=#".=4>;46#";26=4&%#";26=4&%#";26=4&�
11

00V	0000V	00002S%%S%%��T%%T$$��S$$S%%=	>0T0��		20T0>		��0T0��		80T08		��0T0>		>0T02	��$T$$T$�$T%%T$�$T$$T$�j�J,8T@Q21(#!L
i	iY_O.-43-8.8&%,,
+232#!"&54>;5>76"26?54&"!5.�I~OO,8(�,(8,ON>AK./>.1"-M1^0OJFyI�,�x(77(�,�J}$%��)d*&]#1�*I+��.M-����(?JS\e�@�D

=	L��

g

ig		giW_O^]UTLKB@*)ba]e^eYXT\U\POKSLSFE@JBJ<;7521)?*? ('+2"&'5!!2675462!".'4>72"&=!"&467!5>!"!54&'2"&4632"&4632"&46F6"!��"4�U 6!4�	hi��
�\���"�"�"�4 �%�l 6"5f 6"�Ubb	8!8	
W}x&""""""����(@KT]f@E

>	LK�
PX@[		�		p~~p~

g

igW`P@]		�		~~~~~

g

igW`PY@?_^VUMLCA))cb^f_fZYU]V]QPLTMTGFAKCK)@)@=;7521 ('+2"&'5!!2675462!".'4>7"26=!264&/!54&!"!54&'2"&4632"&4632"&46F6"!��"4�U 6!4�hi���\���"�"�"�4 �%�l 6"5f 6"�Ubb	8!8
W}x&""""""����DYftM@JL)I
iW	g_Ohgpmgthtb`[ZGE><'&+2"&46>&'&'.632#'&'&'&67676735'&'&6#"676?657%'"&>7''#"&467�




9/'!)�(@
	A	1 X,0%'S�	%1�H 1$!CTy�

�

�C

	F

�

@ 6/�	HJ	
O>@)	!&*f'%B=F�:)M,H�
>


���#3CGKT]fo������������59=2!"&'46?!"!2674&'2#!"&5463#2#!"&5463!!%!!'2"&4632"&46!2"&4632"&46%232#"&/#"&'546?!232#"&/#"&/46?#3%#32#!"&5463#2#!"&5463!!%!!'2"&4632"&46!2"&4632"&46%232#"&/#"&'546?!232#"&/#"&/46?#3%#3�)<8)��)<8)��$ $ 		��F��		
��8�K��9�

I	

}	
I

��
yP#
�yP#

��\;�[;�		��F��		
��8�K��9�

I	

}	
I

��
yP#
�yQ"

��\;�[;2%�I%62%�%6*�K��`��1��1)���:�J	h
J	h	M000.��1��1)���:�J	h
J	h
M000���#3CScgkos������@���� �! x`P@0XH8(
L"#g(g+g ! g!!g*)ig'&	%$
g

gW_O������ttTTDD44$$������������������������������t�t�|zsrqponmlkjihgfedTcTb\ZDSDRLJ4C4B<:$3$2,*#"
�,+2!"&'46?!"!2674&'2+"&=463!2+"&=463!2+"&=463!2+"&=463#37#37#37#32#!"&5463!!%2"&4632"&46232#"&/#"&'546?#3�)<8)��)<8)��$ $ �s		�		p�p�p		���``�\\�__�\\		��		
��K
q

�
�+�<"
5�'�2%�I%62%�%6*�K���aaaaaaaa*)))))))���)�5w



*4�	�
iw���(.F`j�@�	I `_^UTSQJF>=<43/2LK

��	~�

g
gW_ObagfajbjZXNMHGB@8710*)'&
.-+232#"/!"&''.?>37>7!5'#"&'5'#"&'%!>732546?32#"3'&'X$;�

 k7(� 0�3�:"��o	-o
-��
o	.n
*o�� �(f ��]0$.!0t ,f���0`$
q`�
�
`	G`��`J75���#3@DR^nu����@�k�|xsc0(L�ggiig

g

g	gW_O����__TSFE54$$������������~wvut_n_mgeZXS^T^MKERFRDCBA;94@5?$3$2,*#"
 +2!"&'46?!"!2674&'2#!"&=4632!"&46?'!!%2!"&46?%2!"&4672#!"&5463/!!767>2"&46"264&�)<8)��)<8)��$ $ �`�{			
��		i��M�	
��	
M	
��		X		��		$�~����
~���%%4$$	2%�I%62%�%6*�K������
}}SS��R���	J�w���	I��*%4$$4%*
�j�R&1n	K�	PX@k[YCB@,'%$LK�
PX@k[YCB@,'%$L@k[YCB@,'%$LYYK�	PX@+�~	iYaQK�
PX@1�~~	iYaQ@+�~	iYaQYY@32TRQLIH:62n3n

+2"'.'&47>76327%67654"32?6#/&/"&67;6?2?654'&/&'&5467&'&�f]Y�&''&�Y]�]Y�&''&�Y]n�>CNI��oJ�#i�c:;�6tfc>2-
0�gI		-0!% 
0�0	
'>LNR'&�Y]�]Y�&''&�Y]�]Y�&'��q�WPN|&FRf
LN�d>eiygc75\�5���4A#'$05���(cp���@��y]���zS'���F
L

�


�
	

	~gii

i		gYaQqqed
�����q�q�������kjdpepA>4321,+
cb+2".4>276#&&?4."372+"&/&'&/&6?5&4?'.?>6?>3"2>4./762&547.54>3264'&6?''&'&/"/&462762�9a88ara88a~^TP8;
.O^O..O/	

,�_TPPS
__.O..O\O/.O�r
&	
iVYYTk&
c!6Z48a97];(-YTk
$"�M?x88ara88ara8�d&

�	?
	

0P/.O^O/	!&O>
e
&

�
	?>	
�
&d��.O^O./O\O/�p*�H
!
E�)o>G;]79a84Z6	
E�)
o���L>x	�j�(*?Xclu~�@�]
	U/L�~	g
	
	
igW_Owvmmed[Y{zv~w~mumurqihdlel_^Yc[cNMBA?>	+2!"&'467!!267.?>/.?62>"/&4?'&6!"!54&'2"&4632"&4632"&46�)<&��)<8)]�l!#�l�{x��F��
{{��$�!��	
\
\	(;*�, ;+�+>�~&$�
��
C{x���
�{{i#@:&)





����6Tr�h@
��g[>3JK�
PX@�Y_OK�PX@Y_O@�Y_OYY@	FDCB+6767>/&/&/&/.?6?67676767;/4/&/.'7&>'&/&/&76?6767676'�HOJFCc'&'<@O?Z)%'06H"	
#
!733)!��


!'*+


�'(*!&,
	;	"'+BGIH&$
B	V@=&
�N?;&$+]>@CI@
/82_ 
[<#+
8'��"0.
�
 (("
Y04%
�	 78M)/"
'+EHDC)%!	
���(&/6=HRYd�@�;Y3	Lig
	g		Y		a	QZZ?>8710ZdZda`VUPOJIDC>H?H7=8=0616.-*)"!&&
+"276764'&'&#&'%2#67>473#&3.'#>7"&'&'3!&54?!67347654'3�|kh<??<hk�kh<??<hk�|';]��,
�
,����'|';]||];'�,
�
,p��'|];E�(?<hk�kh<??<hk�kh<?��dK[:�3-1>>1-3��$&040&~fIZ;E:[Kd��3-2>>2-3($&!$L��If;Z"&$"P"����c����@�g����	��	L����K�
ig		g
Y
_O�ֿ�����~wvqp^]ONLIGF?>7530.,
cb+2#!54/&'&'.6;22+"&63676?6=#2+"&6367>7654/&'&'#.63633!'.6?3267674'.'&/.63676?67#3&=463!23&54?##!"&=473'&'�


	
	

�
	

	

�
	
�	

�
	
	Y
	
	��
		
	#N7	�-/.	)	//	��	�
C����N���
�	$ 4
!#�D
"�

�"�
#�		�	4��($�j�(!%)048CLU^�@�=
	8754320/,+)%!L	g
	
	
igW_OWVMMED;9[ZV^W^MUMURQIHDLEL?>9C;C('$# 	+2!"&'467!32?67%3737377'7'7!"!54&'2"&4632"&4632"&46�)<&��)<8)]�lY����_��veIv����\��>��$�!��	
\
\	(;*�, ;+�+>������eI8�T�]v��v>�#@:&)





����+��!LK�PX@1r
g	ghW_O@2�
g	ghW_OY@%#+*	+2+"&5463#32!!!"&'54673&5467s,,�,,���U+�nP�:O*L,�F,,�,T�Wz+���!�+����#B@?LggW_O#"! 6+%2+"&=4632!"&5463!!x��!0."�
!0/!��Oq/!�["//"�!0S�_���C+;K[k{�@�xp
h`
XP$	H@80L��

g
	
g		ggW_Oll\\LL<<,,l{lztr\k\jdbL[LZTR<K<JDB,;,:'+/.?62.?'.?>2#!"&=463%2#!"&=463%2#!"&=463%2#!"&=463%2#!"&=463�vx�����xv���
��
z��
��
z��
�v����~v��oooo���&6:c@`
4L�
g	ggW_O)':9871.'6)6"!&%+6"'&'472!5463%2!5463!"&5463!2%!!�
$	��
*����
�
�6
+�B		�	�N��l���
{
3�Օ�
T

��
�		�e
*q���#GT`@]A:3L�~~~
gW`	PSPLJ=<7610#"	+!".54>3!2"3!2654&#127963?64.4&"'&124&#!"3!26w��4443��))))��p
p��
��
	(	e3�33�i4N)�i))�)��
a	

��a
?	

���#3?CO_ko{�����@�0\Lg 
g	g#!g"

g&$g%gW_O����}|pp``QPDD44%$������������������|�}�p{pzvtonml`k`jgdYVP_Q^DODNJHCBA@4?4>;8-*$3%2#"	'+!".54>3!2"3!2654&#2+"&=4632+"&463'#3%2+"&4632+"&=4632+"&463'#3%2+"&4632+"&=4632+"&463'#3%2+"&463w��4443��))))��	

	T		R
	�		j**g
	�
	T	

	T		R
	�		j**g
	�
	T	

	T		R
	�		j**g		�
	e3�33�i4N)�i))�)~	U		U
U+*T


�	U		U
U**U

�
T		T	
T

**T

���"'3?Lb�@�TQ!Lg
g

g
	
g		ggW_O@@44(($#SROM@L@LFE4?4?:9(3(3.-&%#'$'
+2!"&'4>?!3%!!26?!!2!"&467%2!"&467%2!"&46?%!"!5'5/"/w2=,��,A0��%�q��(��FV
�c
�
�c
�
�c
���(�0�a-@=,�2��(��%'�p���oo�%LL
���#ER_@\@4%AL��
ghW`	PQNJHDC>=('#"	+!".54>3!2"3!2654&#>&/&/#1&#'#?264&#!"3!26w��4443��))))��q��q�
��
	(	e3�33�i4N)�i))�)�a~~a��
K	

���&.BR�@.
	'
LK�	PX@H		��~�

p
		gg

W

`
P@I		��~�

~
		gg

W

`
PY@%DC1/LICRDQ;8/B1B#!	&&+#53264&+54##";26=326..4>7!".54>3!2"3!2654&#�		:a=Y		Z=a:~	
�-I**I-F��4443��))))�|?e;
;e?|{	;WbV;	�y3�33�i4N)�i))�)���$Z^gpt�t@q����20tsrojga^]\UB1
pi`_MCL�~~	gW_O������mled!	
+!"3!2>54.#!"&5463!2/&/&'7>.39;27%>=?65%7'532?53?/7%&6?0267373251327313031;2133"/"&=#"w��4333()��)))yA`/��.	`C88��*�*4ئ
���*�*�{TS0
13�i33�4��))�))�iYd%IJ%
g�]^�	BPA�Ow<
'jN�'
=xhAOA�HH)�
	�*���).6CPo�@�mT*!c]4	)"L�		i
i
i

iW_ORQED87ljfd`_\[VUQoRoKJDPEP>=7C8C65..$&+2+7>7>!"&46?!2!"&'46?/!2".4>"2>4.232#"&/5#"&46?3546h	>���5��	
w
�>
d���x��3V33VfV22V3'C((CND''C(?	B>	
>
�
	���b��}p
�<	����c�l2VfV32WfV2)(CNC('CPC'*
B
?
?>

����,\x�������K�	PXA/H
����l
�s���k
@	L�
K'&IK�
PXA/H����l
�s���k
@	L�
K'&IA/H
����l
�s���k
@	L�
K'&IYYK�	PX@l

r�!g&%$*)
i('
Y i	i#"
	
	ggY_OK�
PX@n

��!g&%$*)i#"('i i	i
	
	ggY_OK�PX@f�!g&%$*)
i('
Y i
	
i#"
	
	ggY_O@m

��!g&%$*)
i('
Y i	i#"
	
	ggY_OYYYAl������������zy.-	����������������������������������������y�z�xvonfeTQMLFD>;75-\.[,*! %+++#'&/'&54676327'&6;2+"&46;2674&'!"!2#!".=4>32#"&?'&73276?3'25?4?32+"=6"#"&7>%22=74732#"574"#"&7>72#"5743%2+"+"?63!2+"+"&576;"2>&!"2>&%#37676&!#3>56&#XJ^	G?

0	
I8R
D�00�

�$ ��$ T��00�g!!"+�'�			(� �Q!
! 	G��
�
�����
z7�?
w
F��/	�!�G0�1

!$!�$1�0��.b>>
f
 (
e
 (8�� #'	
� #'	�Y52	2	���! -2BRVYd@a2/L

g	g
iYaQ43"!YXVUTSJG<93B4A10('!-"- +2".4>+"&/&6?62"2>4.372#!"&5463%!"&75>!!!�9_88_r`88`�l�	B�C�	�-M--MZL--L��?�?	��
��	�������#M�A=8`r_88_r`8
�


�
*-MZL--LZM-x��n
��5�� L	2��2�����"&j��6@3�lGyx.L��YaQji%$+7>'&>&'&'&&'&>/.>>?6/&/.>3?67>"#674/&65�	L


>$��


+5�)k�	!��	�
�B
,i?��/��
	
	,
Q
	
	,�
��

t
�iy	M
�5
���
L2�	S	�{�(,0cv����@Ƒg�yqL



gggggig	i		gYaQ����ed21
	������������}|xwoldvev\YVSNKB@=<1c2b0/.-)(",,
	
+2"&4632"&46232+"&/&'&"&46#32".6;767>54&#!"3!2#!"&54>32!"&/5467!!267%2#"&467%!"!54&Yt��3
�6

1�,~�*:
			"�4#"2		��);.K#!�6#!�
���	
W		��6�K,
�


�	

c�=1$��)
D��

2$C'} �#!�$��
B�
C?	��!'+/5;?C�K�PX@Yr 
rg&%$#g"!g
	hW_OK�PX@Z� 
rg&%$#g"!g
	hW_O@[� 
�g&%$#g"!g
	hW_OYY@g@@<<6600,,((""@C@CBA<?<?>=6;6;:98705054321,/,/.-(+(+*)"'"'&%$#!! 	'+2#!"&5463!!%3#5#5!#5%#5357#5!#5%#5#5!##5!#5!#5���B��B�S}M}N}M}S**�f*�*S�S*M}N}���*��})*S)****)S*)�}}}}�S*))*S))))��5(
 8@5 L���W_O5+"'&>3!2!"'&6762%!'
%
��C��	$
%
#
����I#$��	N

��
S����()CL�K�
PX@:

rr	i
	
	
iiYbRK�PX@;

r�	i
	
	
iiYbR@<

��	i
	
	
iiYbRYY@%EDIHDLELB?<:9741., ))
+"'&'&476762"276764'&'&4&+4&+";#";262"&46�}kg=>>=gk�kg=>>=gk}fXT2332TX�XT2332TX)S))�}&l>=gk�kg=>>=gk�kg=>A32TX�XT2332TX�XT23��$&�&&&
�{�(,0c������@�jL<K

g i!ggigig
	g		gYaQ��������ed21
	������������������������utd�e�\YVSNKB@1c2b0/.-)(",,
	
"+2"&4632"&46232+"&/&'&"&46#32".6;767>54&#!"3!2#!"&54>32&'.".7>7.54>2#"&46?2#"&46?'"3264&!2#"&467Yt��3
�6

1�,~�*:

		
#�4#"2		��);.�0"!2
EVE
2!0�
�	�
�
�% $%�
�	K,
�


�	

c�=1$��)
D��

2$C'�0. 6#)11)#6'0�TS$3$%4$
�{�(,0cp}��@���L<K�~

giiig
	g		gYaQrqed21
	����xwq}r}kjdpep\YVSNKB@1c2b0/.-)(",,
	
+2"&4632"&46232+"&/&'&"&46#32".6;767>54&#!"3!2#!"&54>32".4>"2>4.'&4>762Yt��3
�6

1�,~�*:

		
#�4#"2		��);.f3W23VfV22V3'C('DND'(C@�I/fK,
�


�	

c�=1$��)
D��

2$C'}2VfV32WfV2)(COC''COC(?�J/g
���($-ARclu����O@z^M=
LK�PX@e
r 	r#g&%$ig"!g


ihW_O@g

� 	�#g&%$ig"!g


ihW_OY@c������xvmmed%%������������������}|v�x�mumtqponkjihdlelcbZYRQIH980/%-%-*('&$$#"!	'+2!"&'467!!26?%+5353!!"&=7>".?'.7'"&4?'&462"&4?'&46272#5#5!!#5463%!"!54&'2"&4632"&4632"&46V*<8)�5*<8)
��!�#�������_5>;/,];;
,,
w;;
,,
1)��_)��<$B!�6	\	
\
(;*�=+>;*�+>��&#�T)TT)T�=;/,:;
,,:;
,,�SS**SS�#::&)





�j�(9FVYf��@�^`YXW+-L		�i
i
	
	i
iiYaQ;:
����}|tsonA@:F;F0.*(
99+%2".4>2&'654'&'&"327#"'&'&47676"2>4..=4>7%6&.6%"'&'&&'&67>%676'&'&&'&6-3V22VfV32W��}kg=>
98^a�a^8998^aq24
9B}kh=>?<hk�(C''CPB''C6U
		
U
U��sheV��
�

>PN�H
P��F��RmoisR
!Eg\e_I �2VfV33VfV2G>=gk}B9
42qa^7997^a�a^89
>=gk�kg=>��'CND''CPB'756k+k6�(?,_
%
)(�0	!,�j��,]q���������K�	PX@;���߂rIɿ�n������Ѳ���{��|ikj@'&LK�
PX@?���߂rIɅn
������Ѳ���{��|ikj@'&L�
KK�PX@;���߂rIɿ�n������Ѳ���{��|ikj@'&L@;���߂rIɿ�n������Ѳ���{��|ikj@'&LYYYK�	PX@nr��� g&Y%Y$#"
!
gi	
gY_OK�
PX@or��� g#"!&i%
Y$

gi	
gY_OK�PX@ir��� g&Y$#"
!
%ii	
gY_OK�PX@nr��� g&Y%Y$#"
!
gi	
gY_O@o���� g&Y%Y$#"
!
gi	
gY_OYYYY@Z���ͻ�����_^.-�������������Ż�������������������������}vutsmlge^q_qUROMGD>;85-].\(-%'++"'&/.547676;7'&6;2+"&46;2674&/!"!2#!".=4>32#"/53676%3#?#"&'52&#"#"'53254&/&'&546!2#32?#"&546#5#&#53676"2>&7"34&%5�$
XJ]		F?0	
J7R
E�00�		�$ ��$ 		��002,	��&'F

& 			
%g!&b$&-*�2
	
2+�
�
4��2Y�z6	�?wA��0
� �G0�0 #!�$0�0�*-	9
�(+*H)�	/

/	/&	(
/,'4��.
v�-J
(
h))
���(6j~���������j@	M
���][UE
$L&KK�PX@urp	r		p


r
rrghg

ihW_OK�PX@vrp	r		p


r
r�ghg

ihW_OK�PX@wrp	r		p



�
r�ghg

ihW_OK�PX@x�p	r		p



�
r�ghg

ihW_OK�2PX@y�~	r		p



�
r�ghg

ihW_O@z�~	r		~



�
r�ghg

ihW_OYYYYY@K���ѿ��������������������������ƽпР���wunkcaYWQPHG>=41,)	 +!";2327>/326=6&+"'"&+"&=463!2#"&/.'#"&'&'4762763267>32%"#"327654'.'"'.=67>2'"#"32654'.'"'.=67>2!"3!2>54.!2!546!"&5!462"&7462"&7462"&��!21"�q	�#0/�	B	���		&
:

	',
&

�	&
',
	�<00�00��%��&�<&B%�
ST
�2&�#5B)3%�%3��
&�l.>>(S2@�
	^8q
4,l2	//Q( )((#m
	[)((!Q(#m
	�1�D11�1)'::'��'X��'
	
	
�{�(,0c�������@�imLk<K

g ggggig
	g		gYaQgd21
	��������������������ywsqd�g\YVSNKB@1c2b0/.-)(",,
	
!+2"&4632"&46232+"&/&'&"&46#32".6;767>54&#!"3!2#!"&54>31!2#"&/5!"&'546?#37!!%#3%!!%#3Yt��3
�6

1�,~�*:

		
#�4#"2		��);.��������w��Igg��w��IggK,
�


�	

c�=1$��)
D��

2$C'��sS���S�SSS�SSS�j�RC?@<,(L��W_O
>=+*
+2"&546!2"&5466'&/5#&/&6?6354?6*"�"��

�	�	�	��	�R�l��l�����
qq
�
	�	mm
�j�R1T@Q!L����W_O11,*%#+2#.'4676"'&/5!"&=463!54?6�
��
�
�

�""�
R�g���
	�	
�"2"
�j�R0@@= L���W_O+)$"	+2#"&54676'&/5!"&=463!54?6*�
�� 	�""�
R�l���

�	
�"2"�j�R)@@=L���W_O"!	+2#"&5467!2!"/&6?6*|
�"�
�	
�R�l��
7"�
�!
�	���(+/3?HQZ�@�8
'L

g

ig	g		ggW_ORRJIA@6400RZRZWVNMIQJQED@HAH;:4?6?030321/.-,%#++	+2!"&'467!!26?2!"&'5467!!'!5!"!54&'2"&4632"&4632"&46V*<8)�5*<8)
��!�#S�_��f���J��<$B!�6	\	
\
(;*�=+>;*�+>��&#.��)}S**$#::&)





�j�R&FG@D6L���W_OA?:832	+2"&54632+&/&6?66"'&/5#"&=46;54?6�"UX""X��	���	�	
X""X	R�l���m"2"q�
�	�
	�q"2"m

�j�R8N@K+L���gW_O
75/-('
88	+2"&5462#/&'&?6232>54'&'!5*"�fJGJH�c�

�	�

�:C "N��R�l��$#���I~

�	
�
	�7,?��j�R9F@C
��	gW_O53.,+)$"99+2!2#!32+#"&/5#"&=46;5!"&=463!5467�<##�Ŀ##��##���##<R�"2"T"2"��"2"T"2"�����9R@O/L
����	W	_O52-+(%"!98+23546;232#+"&=#+"&5#"&'546?3463�"T"2"��"2"T"2"��"�#�Ŀ##��##���##<<#�j�R0P@M+#L��gW_O! )' 0!0	+2"&/462!"&/5467%2!"&/5467k!�"��!2"��!R�l���7"2"�7"2"����+B@?���W_O
%"+*

	+%2#!"&4632+"&54632+"&5463��lf""2"",""2""""�#��""&#�#��"",#�j�R/5@2��gW_O" *' /"/5553+5463!2#!"&5463!2#!"&12#1"&546�"&##��"",##��"}�2""2""�2""2""��l�����+F@C�~�W_O! '$ +!*		+2+"&5463!2+"&5463%2#!"&463�""2"",""2""f�lX"��##&""��##,"�""�j�R)9[@X5-%L	��g
W
_O+*
31*9+9#!))
+2"&546!2"&5462!"&'5467%2!"&'5467*"�"�"��"+"��"R�l��l���7"7"�7"7"�j�R+7]@Z'L
	�~gW_O-,
30,7-6%#++

+2#!"&4632#"&'467!2#"&'467%2#!"&463��lf"7"1"7"k�lC""���"+"��"+"�""�jR.6@3���v (%. -	+2"&/462+"&5463!2+"&5463�!�;  ��:  R�l����  .��  . ��-B@?ggW_O'$-,		+%2#!"&=463%2!"&46?%2#!"&=463 ��  ��l���  �:  :�!!�;  ;�jR.6@3���v (%. -	+2"&/462+"&5463#2+"&5463�!�:  �:  R�l����  . ��  . ��
-B@?ggW_O'$-,
	+%2!"&46?%2#!"&=463%2#!"&=463��l���  .��  �!!�;  ;�;  ;�j�R)9K@HL	�
��v+*
30*9+8# )(
+2"&'46!2"&'462+"&5463#2+"&5463�!�}!q""2""�""2""R�g��g��"��""&""��""&"�j�R+7S@Pg
g	gW_O-,
30,7-7%"+*

+2!"&4672#!"&=463%2#!"&=4632!"&467��g�""��""&""��""��gC!!w"2""2"�"2""2"$!!�j�R#-K@H	L	�
��v$$
$-$,'%" ##
+2"&'46!2"&'462+!#"&5463*!�!�f""l�l""R�g��g��"��"��f"&"�j�R+S@Pg
g	gW_O! 
'$ +!+

+2!"&467%2!5463#!"&=%2!"&467��g�"�f"`"��"�gC!!�"ll"�l""l�!!�j�R)9K@HL	�
��v+*
30*9+8# )(
+2"&'46!2"&'462+"&5463!2+"&5463�!�}!�""2##��##2""R�g��g��"��""&""��""&"�j�R+7S@Pg
g	gW_O-,
30,7-7%"+*

+2!"&4672#!"&=4632#!"&=463%2!"&467��g�""��""&""��""��gC!!N#2""2#M"2##2"�!!�jR.6@3���v (%. -	+2"&/462+"&5463!2+"&5463�!�;  5;  R�l����  .��  .��-B@?ggW_O! ($ -!+		+%2#!"&=463%2#!"&=463%2!"&46? ��  . ��  ��l�:  :�:  :�!!���_<��ݑ��ݑ�����f�\R�j���������������������������������������������������������������������������������������������������������������������������������-����������������������������������^�%���������������������������������������������������������������������������������������������������������������������������������������������;�����������������k������������������������������������������������������������������������������������������������������������������������	@
���tDt�|"##�$h%<'�((�)|*�,`/0�2`3�5T6�9�;H>�@�B�D�FG8H`I�K�M�O�Q�R�S�U�V�Y�[�]�_hadd�f�hliDl�n�o�q4rtt�upwDz${�}����������������,�(���\�<������$��T�X�h�t�������0�x���<�l�l���4��������ˤ����ќҌ�@�����h���T������� ��,��`����h�0��������h 4H���	�X�x8�4���8`�Dt<<"%P&\' (H*�,�-,.$.t.�1�5�7�9�;\=T?�D$F�H�I�L�MdN�O,O�P4P�Q0Q�RtU�Y<[ \�^@a�chf�gXg�h�l�m`ndoxq�s�v�yH{��������8���\���\��,�(�$���$�����(�����`������l�H���������@�h���Ü�<�x�x���X�H�l�θϔ�l�Ԉ���Dըְ�Pװ�<���ڄ�<ی܈���d��������\�X�����d�(�@�T�d�t���D�����x�(�\���x����������dH0�<��h�	�
�(
8$�L8���,�dP �!�#�$$�(X)x/</�0x1h2�4�5�9=`@8@�A�F�I�L�P SUDX�[X\�]P`�cde�h0i�mhp|rTt�wPz4|<~l�4�4���������� ���x����������� ��������d�H������0�l������İ�t�,�D�<� ����|�D�L�T���Ҥ�p�h�d�@�����ښ�K����55;BHNY
+_�	j�			!	-	9	O	
V[	&�Copyright (C) 2021 by original authors @ fontello.comeiconsRegulareiconseiconsVersion 1.0eiconsGenerated by svg2ttf from Fontello project.http://fontello.comCopyright (C) 2021 by original authors @ fontello.comeiconsRegulareiconseiconsVersion 1.0eiconsGenerated by svg2ttf from Fontello project.http://fontello.com
�	

 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~��������������������������������������������������������������������������������������������������������������������������������	

 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~�����������������������������������������������������editor-link
editor-unlinkeditor-external-linkeditor-closeeditor-list-oleditor-list-uleditor-bold
editor-italiceditor-underlineeditor-paragraph	editor-h1	editor-h2	editor-h3	editor-h4	editor-h5	editor-h6editor-quoteeditor-code	elementorelementor-circlepojomeplusmenu-barapps	accordionalertanimation-text	animationbanner
blockquotebuttoncall-to-actioncaptchacarouselcheckboxcolumns	countdowncounterdate
divider-shapedividerdownload-buttondual-buttonemail-fieldfacebook-commentsfacebook-like-boxform-horizontal
form-verticalgallery-grid
gallery-groupgallery-justifiedgallery-masonryicon-boximage-before-after	image-box
image-hotspotimage-rolloverinfo-box
inner-section	mailchimp	menu-cardnavigation-horizontalnav-menunavigation-verticalnumber-fieldparallaxphp7	post-listpost-sliderpostposts-carousel
posts-gridposts-groupposts-justified
posts-masonryposts-ticker
price-listprice-tableradiortlscrollsearchselectsharesidebar	skill-bar	slider-3dslider-album
slider-deviceslider-full-screenslider-pushslider-verticalslider-videoslidessocial-iconsspacertabletabs	tel-field	text-area
text-fieldthumbnails-downthumbnails-halfthumbnails-right	time-linetoggleurlt-letter	wordpresstextanchorbullet-listcodefavoritegoogle-mapsimage
photo-librarywoocommerceyoutubeflip-boxsettings
headphonestestimonialcounter-circleperson
chevron-rightchevron-leftclose
file-downloadsavezoom-in	shortcodenerddevice-desktop
device-tablet
device-mobile
document-filefolder-ohypsterh-align-left
h-align-righth-align-centerh-align-stretchv-align-topv-align-bottomv-align-middlev-align-stretchpro-iconmail	lock-usertestimonial-carouselmedia-carouselsectioncolumneditclonetrashplayangle-right
angle-leftanimated-headlinemenu-togglefb-embedfb-feed
twitter-embedtwitter-feedsync
import-exportcheck-circlelibrary-savelibrary-downloadinsertpreview-medium	sort-downsort-upheadinglogo	meta-datapost-contentpost-excerptpost-navigationyoastnerd-chuckle	nerd-winkcommentsdownload-circle-olibrary-uploadsave-oupload-circle-o
ellipsis-h
ellipsis-v
arrow-leftarrow-rightarrow-up
arrow-downplay-o
archive-posts
archive-titlefeatured-image	post-info
post-title	site-logosite-search
site-titleplus-squareminus-squarecloud-checkdrag-n-dropwelcomehandlecartproduct-add-to-cartproduct-breadcrumbsproduct-categoriesproduct-descriptionproduct-imagesproduct-infoproduct-meta
product-pages
product-priceproduct-ratingproduct-related
product-stockproduct-tabs
product-titleproduct-upsellproducts	bag-light
bag-medium	bag-solidbasket-light
basket-mediumbasket-solid
cart-lightcart-medium
cart-solidexchangepreview-thin
device-laptopcollapseexpand	navigatorplug	dashboard
typography
info-circle-ointegration
plus-circle-oratingreviewtoolsloadingsitemapclickclocklibrary-openwarningflowcursor-movearrow-circle-leftflashredobanbarcodecalendar
caret-leftcaret-rightcaret-upchain-brokencheck-circle-ocheckchevron-double-leftchevron-double-rightundofiltercircle-ocircleclock-ocogcogscommenting-ocopydatabasedot-circle-oenvelopeexternal-link-square
eyedropperfolderfontadjustlightboxheart-ohistory
image-boldinfo-circlelinklong-arrow-leftlong-arrow-right
caret-downpaint-brushpencilplus-circlezoom-in-boldsort-amount-descsign-outspinnersquarestar-ostartext-align-justifytext-align-centertagstext-align-lefttext-align-rightclose-circletrash-ofont-awesome
user-circle-ovideo-cameraheartwrenchhelphelp-o
zoom-out-bold
plus-square-ominus-square-ominus-circleminus-circle-o	code-boldcloud-uploadsearch-boldmap-pinmeetup	slideshow
t-letter-boldpreferencestable-of-contentstvuploadinstagram-commentsinstagram-nested-galleryinstagram-postinstagram-videoinstagram-galleryinstagram-likesfacebooktwitter	pinterestframe-expandframe-minimizearchivecolors-typographycustomfooterheaderlayout-settingslightbox-expand	error-404theme-stylesearch-resultssingle-post
site-identity
theme-builder
download-boldshare-arrowglobal-settingsuser-preferenceslock
export-kit
import-kitlottieproducts-archivesingle-productdisable-trash-osingle-pagewordpress-light
cogs-check
custom-css
global-colorsglobetypography-1
backgrounddevice-responsivedevice-widecode-highlightvideo-playlistdownload-kitkit-details	kit-parts
kit-uploadkit-pluginskit-upload-althotspot
paypal-buttonshapewordartcheckout	containerflipinfo
my-accountpurchase-summarypage-transitionspotify
stripe-buttonwoo-settingswoo-cartgrow	order-endnowraporder-startprogress-trackershrinkwrapalign-center-halign-center-valign-end-halign-end-v
align-start-h
align-start-valign-stretch-halign-stretch-vjustify-center-hjustify-center-v
justify-end-h
justify-end-vjustify-space-around-hjustify-space-around-vjustify-space-between-hjustify-space-between-vjustify-space-evenly-hjustify-space-evenly-vjustify-start-hjustify-start-v���, �UXEY  K�QK�SZX�4�(Y`f �UX�%a�cc#b!!�Y�C#D�C`B-�,� `f-�,#!#!-�, d�BC�C ``B�CB�%C�CTx �#�CCad�Px�C`B�!e!�CC�B �C#B�C`B#�PXeY�C`B-�,�+�CX#!#!�CC#�PXeY d ��P�&Z�(
CEcE�EX!�%YR[X!#!�X �PPX!�@Y �8PX!�8YY �
CEcEad�(PX!�
CEcE �0PX!�0Y ��PX f ��a �
PX` � PX!�
` �6PX!�6``YYY�%�Cc�RX�K�
PX!�CK�PX!�Ka�c�Cc�bYYdaY�+YY#�PXeYY d�C#BY-�, E �%ad �CPX�#B�#B!!Y�`-�,#!#!�+ d�bB �#B�EX�
CEc�
C�`Ec�*! �C � ��+�0%�&QX`PaRYX#Y!Y �@SX�+!�@Y#�PXeY-�,�	C+�C`B-�,�	#B# �#Ba�bf�c�`�*-�	,  E �Cc�b �PX�@`Yf�c`D�`-�
,�	CEB*!�C`B-�,�C#D�C`B-�,  E �+#�C�%` E�#a d � PX!��0PX� �@YY#�PXeY�%#aDD�`-�
,  E �+#�C�%` E�#a d�$PX��@Y#�PXeY�%#aDD�`-�, �#B�
EPX!#!Y*!-�,�E�daD-�,�`  �CJ�PX �#BY�CJ�RX �#BY-�, �bf�c �c�#a�C` �` �#B#-�,KTX�dDY$�
e#x-�,KQXKSX�dDY!Y$�e#x-�,�CUX�C�aB�+Y�C�%B�%B�%B�# �%PX�C`�%B�� �#a�*!#�a �#a�*!�C`�%B�%a�*!Y�CG�CG`�b �PX�@`Yf�c �Cc�b �PX�@`Yf�c`�#D�C�>�C`B-�,�ETX�#B E�#B�
#�`B `�BBB�` �#B�a�+��+"Y-�,�+-�,�+-�,�+-�,�+-�,�+-�,�+-�,�+-�,�+-�,�+-�,�	+-�+,# �bf�c�`KTX# .�]!!Y-�,,# �bf�c�`KTX# .�q!!Y-�-,# �bf�c�&`KTX# .�r!!Y-� ,�+�ETX�#B E�#B�
#�`B `�a�BB�`�+��+"Y-�!,� +-�",� +-�#,� +-�$,� +-�%,� +-�&,� +-�',� +-�(,� +-�),� +-�*,�	 +-�., <�`-�/, `�` C#�`C�%a�`�.*!-�0,�/+�/*-�1,  G  �Cc�b �PX�@`Yf�c`#a8# �UX G  �Cc�b �PX�@`Yf�c`#a8!Y-�2,�ETX�EB��1*�EX0Y"Y-�3,�+�ETX�EB��1*�EX0Y"Y-�4, 5�`-�5,�EB�Ec�b �PX�@`Yf�c�+�Cc�b �PX�@`Yf�c�+��D>#8�4*!-�6, < G �Cc�b �PX�@`Yf�c`�Ca8-�7,.<-�8, < G �Cc�b �PX�@`Yf�c`�Ca�Cc8-�9,�% . G�#B�%I��G#G#a Xb!Y�#B�8*-�:,��#B�%�%G#G#a�B�C+e�.#  <�8-�;,��#B�%�% .G#G#a �#B�B�C+ �`PX �@QX�  �&YBB# �
C �#G#G#a#F`�C�b �PX�@`Yf�c` �+ ��a �C`d#�CadPX�Ca�C`Y�%�b �PX�@`Yf�ca#  �&#Fa8#�
CF�%�
CG#G#a` �C�b �PX�@`Yf�c`# �+#�C`�+�%a�%�b �PX�@`Yf�c�&a �%`d#�%`dPX!#!Y#  �&#Fa8Y-�<,��#B   �& .G#G#a#<8-�=,��#B �
#B   F#G�+#a8-�>,��#B�%�%G#G#a�TX. <#!�%�%G#G#a �%�%G#G#a�%�%I�%a�cc# Xb!Yc�b �PX�@`Yf�c`#.#  <�8#!Y-�?,��#B �
C .G#G#a `� `f�b �PX�@`Yf�c#  <�8-�@,# .F�%F�CXPRYX <Y.�0+-�A,# .F�%F�CXRPYX <Y.�0+-�B,# .F�%F�CXPRYX <Y# .F�%F�CXRPYX <Y.�0+-�C,�:+# .F�%F�CXPRYX <Y.�0+-�D,�;+�  <�#B�8# .F�%F�CXPRYX <Y.�0+�C.�0+-�E,��%�&   F#Ga�#B.G#G#a�C+# < .#8�0+-�F,�
%B��%�% .G#G#a �#B�B�C+ �`PX �@QX�  �&YBB# G�C�b �PX�@`Yf�c` �+ ��a �C`d#�CadPX�Ca�C`Y�%�b �PX�@`Yf�ca�%Fa8# <#8!  F#G�+#a8!Y�0+-�G,�:+.�0+-�H,�;+!#  <�#B#8�0+�C.�0+-�I,� G�#B�.�6*-�J,� G�#B�.�6*-�K,��7*-�L,�9*-�M,�E# . F�#a8�0+-�N,�
#B�M+-�O,�F+-�P,�F+-�Q,�F+-�R,�F+-�S,�G+-�T,�G+-�U,�G+-�V,�G+-�W,�C+-�X,�C+-�Y,�C+-�Z,�C+-�[,�C+-�\,�C+-�],�C+-�^,�C+-�_,�E+-�`,�E+-�a,�E+-�b,�E+-�c,�H+-�d,�H+-�e,�H+-�f,�H+-�g,�D+-�h,�D+-�i,�D+-�j,�D+-�k,�D+-�l,�D+-�m,�D+-�n,�D+-�o,�<+.�0+-�p,�<+�@+-�q,�<+�A+-�r,��<+�B+-�s,�<+�@+-�t,�<+�A+-�u,��<+�B+-�v,�=+.�0+-�w,�=+�@+-�x,�=+�A+-�y,�=+�B+-�z,�=+�@+-�{,�=+�A+-�|,�=+�B+-�},�>+.�0+-�~,�>+�@+-�,�>+�A+-��,�>+�B+-��,�>+�@+-��,�>+�A+-��,�>+�B+-��,�?+.�0+-��,�?+�@+-��,�?+�A+-��,�?+�B+-��,�?+�@+-��,�?+�A+-��,�?+�B+-��,�EPX��EX#!!YYB+�e�$Px�EX0Y-K��RX��Y��cp�B�*�B�
*�B�
*�B�*�B�*�D�$�QX�@�X�dD�(�QX��X�DY�'�QX��@�cTX�DYYYYY�*������D�dDDassets/lib/eicons/fonts/eicons.woff000064400000332750151327220410013377 0ustar00wOFF��,GSUBX;T �%zOS/2�D`>'Lcmap���촡cvt 
�fpgm
��b.�zgasp�glyf��ښ����head��46 �hhea��!$
lhmtx�a̢��loca�d��z��maxp�0  �^name�P}��Cpost����J��prep�lz�~�;�x�c`d``�b0`�c`rq�	a��I,�c�b`a��<2�1'3=���ʱ�i f��&;Hx�c`a~�8�������iC�f|�`��e`ef�
�\S�`x��9�C��Y@aFEL��
�x��؇����]��RQhHT�RFC�Rh�!Z��5T�Dh�$
������{�c�M���3��~��^��s��?��llK��f���
y��ϗe��ϗ,{���Y�x>7�r��k>^��u�|��˳�a���Y�U�-��:kp;nϚ���#wbm�a]��ά�]؀�r76d#6��l�=�'��Y��{�[ro��}�[�5۰-�g;���y;�fgv�!<���+��;{�p�#y��1��cy�g/��ٛ}ؗ�x�sr�d��S9���t��������39��8�x'r'�l��)��sy�q:������yg�b^�K9�s9��y/�.�".�.����x��5\����q%Wq5��z��\�y��f��
��M����vn���w�n��{y��|��a>�G��|�O�i>�g���|�/�e��W�_�|�o�m��w������c~�O�?���~ɯ�5������ȟ�3�����ɿ�7���"$-�e�D�iy���hE�����V�m��V���n�5���;�NZ[�h]��;k}�E论�6�F�Xw�&���M��6׽���Խu�W��V�Z�h[�_���^;�z�v�Nz�v�.z���iW�ݵ��G�z���hO=V��㵗��'jo�}�����u��A:XO�S�T����:T��a:\G�H��u���cu���	z�N�I:Y��st�N�s�<���|��3����E:[/�K�R��su�����r]�u�.�%�T��+u�^�W�5�\W�z���U�Z��z���uz�ޤ�f�E7�Fݔ�d���,^�<��_s��dre�ZL8�bV��ϕ��+�W&��4\���ʜõ�۹2�pe
��<ĕɈ+3W�%��M\���2Kqe���|ŕI�+3W�/��a\�ȸ2�qeJ�ʼƕɍ+3W�9��u\��2�qe���ǕM�+;W���	\�M���-�+�W6��\�6��wpe��.•��+�	W6��,\�^���pe���nÕ-�+�W6��@\ن��qeC�ʮĕ��+�W6)��T\ٮ��gqe����ŕ-�+�W63��h\�ָ��qe���.Ǖ��+�W6=��|\����R���R	���R���R���R���R���R"��$�R'��)�R,��.�R1��3�R6��8�R;��=�R@��B�RE��G�RJ��L�RO��Q�RT��V�RY��[�R^��`�Rc��e�Rh��j�Rm��o�Rr��t�Rw��y�R|��~�R��҃�R��҈�R��ҍ�R��Ғ�R��җ�R��Ҝ�R��ҡ�R��Ҧ�R��ҫ�R��Ұ�R��ҵ�R��Һ�R��ҿ�R¸�ĸRǸ�ɸR̸�θRѸ�ӸRָ�ظXtE��q��q��q��q��q��q��q��q��q��q��q��q��q��q���kW�\�p�V���W�\�$p���W�\�8p��+W�\�Lp�F��kW�\�`p���W�\�tp���W� \��p�6•+	W�%\��p�•k
W�*\��p��•�W�/\��u�&Õ�W�4\��p�vÕ+W�9\��p��ÕkW�>\�q�ĕ�W�C\�q�fĕ�W�H\�(q�ĕ+��=�n��,��w&J�)�����R�jqYM)�?�t���SJ�O)�?�t���SJ�O)�?�t���SJ�O)�?�t���SJ�O)�?�t���SJ�O)�?�t���SJ�O)�?�
�^J�O)�?�t���SJ�O)�?�t���SJ�O)�?�t���SJ�O)�?�t���SJ�O)�?�t���SJ�O)�?�t���SJ�O)�?�t���SJ�O)�?�t��v�{)�?�t���SJ�O)�?�t���SJ�O)�?�t���SJ�O)�?�t���SJ�O)�?�t���SJ�O)�?�t���SJ�O)�?�t���SJ�O)�?�t���S:(�t���SJ�O)�?�t���SJ�O)�?�t���SJ�O)�?�t���SJ�O)�?�t���SJ�O)�?�t���SJ�O)�?�t���SJ�O)�?�t���SJ�O鴼��SJ�O)�?�t���SJ�O)�?�t���SJ�O)�?�t���SJ�O)�?�t���SJ�O)�?�t���SJ�O)�?�t���SJ�O)�?�t���SJ�O)�?�t���SJ�O)�?�t���SJ�O)�?�t���SJ�O)�?�t���SJ�O)�?�t���S��o�Cx�c`@x��Wk[���
�B�ͺ�(cQ��$qb+�eQ%����un�H�M�^���5�_�?sV�O�o�iy��Jܧ�S>�3�Μ�YHhI�~�Rv���.U�=��K���ޏ��H?�Ӣ�W�n�N"&���pD��Mr4��a�
Z�U�IE-G����2I����Y�P!�;�4��t@���P(��\���h��%��GU��5E�ģ�`�4=�룕 �	�H��G���k�\�C��Q���x��dwI�0�	6m0ڈc�Y6,���|$i��י�y/���0�4Ӌ�H^�at����M�8v-�
�$v#]&�1v�t�ѕn�hA��,��x���xq�{��Q~ܤ�����H��TЋhJ�4�|d[�&UL�	9Ȧ�}ɋ�k��_Iا�Z���!te��"�%=7ݍ#�cI��"���ܔ&Mi:x#Q�i��P�
��
�����Zk�9-��y�U��O��$fJ�e��ѣs�"����p�듅4kOq<���D�C�rRM���	!��ȱ�H�J����3��U��4��CGs��B��������
���V�4�R҅�5>��b�`򵈃LP$bЇfZ9L$-"lMZ�ݽ(+
��4w��T�ݝ�{�N�u�W����Rp?ʖ�rR�=�r(-?��?�!g�(6zQ�ჿ��څ��¶1v�:o�M��t`�'�uF
3!�
�BA�9�c�U�"�p/�%�ː�Q~s�p���?�.9bQT���e�9i�<�ѧ��4µk^�.��ay	�f�5�Y>��KWge��uVa�u�M����i����9��V�S%A��l��ߖ&�c�+�ŏ�b����d�c�(��ޙ~©[W����ោ]O�?�
���
�X6��U�����5���[���c�Ҳm
����K�D�s������5���G�q��U��3���
ō����v��l�r��3kY٩��"{�ܱ�Ź������q��_Չk{�-</V�%�o���n85��&�N��%�h��u�ݤ��FEa�A)+
ْn	��ᰣ:�!>t]�H�S[F�o�w��E�Jh�
C�f�O��`�RR��8�I�l��1[R�=es':*ɲt�J��b�;���2;�vB����p���R)H��xT�\
R8�N�������m�XA�6�X3�т�NQ�lO��� e\�+��D6��F�w�/u���XH̖W�X�6���d�f���R��I�i{QK����d��TP������.6��U{�-�%��1K�q���y��q�7�?Z�m�D=o�lǭl�Yƽ}����;�ꟺ�I;M��')��t��6�18u&	m�:v��e��U�h�u�T�p���:��[3��?�t�U�����B�:V/�8���|�G�U�n{u��%�f��A�^{|��W[t���3�8�Y����kz�
�b�p�m<��h�����
�o��=���9ff���cN`�9�3��w����0���b}�ع@v�-�9��f�A�0Ϡw�g�{�3HX'��u2�g���y`��a�9�g��������.F?0v1�����Cc�������Ljq{����m~d�+�s�����xks��,d��
��9���&��Ҍ̎Cyǯ,d��qNN���L���L��w&�ތ�����G��	��	��	���y5#C���L���L�v�ZȄ��L�T�Λ/[���R��&���h���W{��Ǻ�%�A��x�̽	x�u.ZU�]��t�>�����`��A�@$$�$��wj�6��Dj_�ղv%1aK�-Ŷ��:����
e�In"ۉ�E�Q���~|���)SN�/$�]]]]=Su���:u�8��{d+J�~4�fse}�D��ė����v"�P"���/X��:��ɼpa� |I�$n
��2�#��PJ�!t7����:ك� ϰ'ELf����q` )+"^�V�'ڛq�J�Fq�"�W%�qN��z+���w��F�BE6�dw�i�H�c�C���*�lϦ�3<���b�>�7���UB�%E�"�yN V�)�4J*�(�Q�SP�G�S�%s�����p�'\V����кpO������^����SUE��iN�#t�#K��O59'I�bN����1�!Q=X�Y��7����eee�H��������ىtF)�C[�$�ݍ�s�â4�Uqp`�R��~, �a�"U:��"R�4�1�<�AH�H8
���$N!�D�'PO�$�.'�#A�vôrÇ�߷�ͣ�W��ȴ��66$�塠F��	6��h������r����Oyi=�{Kq�~�Rـ=�0�Y�9JL�VL�L\��4\��S>�|ǁ�w�3��l ��zN�I+�K� �U<��SA�>j���b�&%(6J҈ KB_�Q|�}�	BN#�;���S�pN��U�J�x/q8�����:vu�n "�-|7O�,��PC^�	#�� ��~A���s�F�Ex�Z��Tϰ>�˻����ٽ��9�akv�V��P��Q4c�val=���
����$� �"9m��q�F��$��cFj�(��,���C�����xNMf:���[��z������M#���	�Ǫ��!�rlO(�Y^:֖e��7��.LU�!	���+=��~ES�ۍ�+�~J�(�4T]¹��i�������
Y�� 	�@"��ooX�ۈsM+D!$�ա��C�n��vA��،"�<�"�>�1��96�7{�^/O�8��ΨH�.|��P�"�^�BUڋ/j� ;�b��/�1]���B���;U!��t]���s����1�֣q����\��o�$�5u5vk��,�Ι�#{��x8��yp	�f�E�xɖj����y=��C R��}�%R�"&����KR���4��M���ܺ�D�a��H׍���
��G���A����s-l߶q��CN<�gb���l�8���w��]� jZ�V��	z<� �
O��d3��ߎlG&h.̈́�/.�Kg�b7��*Z��;@w�t�ߖ �8�_{�`�)”�%el�v͗�#eeK�
?P��ZU��!�l�S�n"+~�`5�l����@���'���A��
Y%強���8��uI��q@qɚ����*��K|�Y�ԭ��/59�UC�u�,��U���s�/;gFj��A>�4Dըu�tS����d�� �4tP�?i`�D��S&4PA3N��Ddi\�q2�µ$�F�5�;��M�DYȥ/[����I�5u4w��&���h�����փ�`�͢�z�HPұ6�Ն8��+j��
F��[�B�t$C�WÉD{uux�	�ؐ��j�M�{퉼�/�/�ؐd�8�@ù
u0�'0&�ͦ�a9�x&�O�h�xD�<ކӄJ����N4ڸ�oUSmmLْ�˴��/U���*%3Zf�&t+|�cU=���t�N<Y�b<�VЈ�?(\��p3��������b�gʮ�O��%��Jo���dU�<>O�W�s�â�r���"�4C��ʡd��!��-�"SA����+T�rE��Pe0���7��z���?i��/^P$�7t�%���i=�GQЦ���T��/���p��ɥ��e�K�k+Z�2�0T�'�(���yY�=_�A2�n���Y
���2G\�JRZ�*�B�eO���;��AC����Ra��Y�|��p�h7� ÅW%y�}�Ǣ�������3T��a���ۅ���	�#�5�˗Y1��,Ҳ��	f��j�Xi �&
l�E�HG ����"��CP��S�R�.IXb��!�m�hFȯ���A���W��`�
*�U�]�G�&ͨ��_�����.Y�16ռnL�(�NIŞ�n�輨�n�C9�r��"ޱm��� �I�ЄxeC�����q��\q��@��WH�]~Ѕ<Pv�'�s�)�W�T��cf��J�eYC�"O Y��
/j�'�1"�8<I8�+��]�`b�1ڿw�u;��tksy�ej"�V��!msՑ�i˶�1@A��cG
�#0��qS�t��M~����$�A@D0Y,�,Hiǘ��aE'�S�`�/�{j)/``��H��mX�L���1>��H��%���@d�����1��0D��.�JN���H�pfBZOm�V��&��`[T�>�/ �är؂��[�ui�L�%|�aM��nQͷ�*�
0Q����3r�ߺ\
ʀ��4�Lbs& z&y�WzV&3&��&�ލ�<�-��ñ3��/�/5
�74]d��.dYA����+��V�b~���^r��`����x�C>+0/dډ���JD��,�a�ħ1RiQl}d3�~iG���ۑ2]g$&��B"��VQ�U�RU4�q:�C�O��Ϫ��0�H�9�j�ʏ	�'�x��o���;�o�8��{Y*V^�u����fgV$�30a��Lʱ7���0��o�dkc1�s%�S0��Y��"�ƴ&�la?���H�S���c�x�YhY/ͦ�i ��O�m�&�1y%XӜ��MH�*�R�Q�#��i�R�DE
�M��%�lCp3 s�.X`٨���Zê`��(IR0ٜ��<ܕ��AX*R��d0P�Q�-�GQ}2�4u?0�tK��cţC�Wa�WJ�fM�5I[4�"�W�{I
S`q`"M5H�)	��F� 6�0	�p�1ޏ��,�'�T�ݮ��4�0����\����o�$��"�˘� �$,ixF���N�)�[X�tu
,lH@A��o��3m�:wV@��7���KO<v���~x�����mܰnU���������Eww�?L'����
t�"����f�f���m"��g�s���b��g�{����1��b�i�H�0���
����u�e�b���>�`&'{��
&[uHt��$�#JT�B5��Q�%�R*���Xa�$2�'ɔ�B�g:�8�H\pO�@3S�.U����	=�Ļ)	��Y�{-����W	�������	�t%��$�n�u���@���E�H���Rg��(�Xཌ2��!�ܸ�J���#V-�<ͫ�Y�x�74���I���P$I�Z��%A�2��DI��s��������x��ө*�̏��"��7`�^Q��n��2U� ,�Y^$w=���{aH�.��?�����e�b��YBt:��f�x�.��Ɍ" �{��� K�X��3��3�K7]S�@^�YV�� /A@��w7�y����������~�o=����;=}�ɣS��uݶ�M�W��'*��#u)���}�ڣ8����[���S��XL�U�(}�t��F�����ӗX u��&�l{7i+Ff�@۴F�q{��bx�Ͷ���F���M�U�<�qx�g�E�E��ZPN����8A�er2��U@+nU��-	�	B������U��oxZ�u �
��T�P4�ji��_�S���D]���_3�
Lx�`B+��	HW`v�����#F�6]m�,��;\�j�7�#��K`r[�0;_� ������"u�
�v�p+�̀G�Cx^���ZIt��dv��?��rI��ˣ*0�*��({u\�Mw��Q���b"��U���)���Ƃ[u=�T� j�����=o��+��:���7�xc�S&����#��� �Z��tS�89d ���r1�r���ba��$:��$|��w)�Y~m���U
�ΤЉ�}�͟pP�Y�t/�t�ų/��s�>��G~�i;�m�e��"�v�P*�ɦ}i_*��5+���p�#������h�����6�(#h!�5���M�G���?�A���B��6�.k��&��=�(hK�'�Q2$ݘ,r!�ri̽j�%qn�L�GT��
u&�����կ����ξ�ң�\�|<�I�����6��)l�c�%�fPd�t7ɤ]��>h:[T�Q
�51x�/�k����?H�@���4�%).jq��G�Ry���A<2oV6�,�[S��v�2�Ƅʖ���~
4��	��B@+h���,���A�cN�f1m0����r�n�[�QCSD���7-$O���6�����"�����o�%�{&�\/=�t|.����Ʌ5��f<X#�v�@�#|�2�%�	~#�Me�
W�~N�j���?~�~�ų��}��O�g��U��]�����J����zm��
�+�:e���l�e`�߶�x�x��zp7fͻ��<��L��()"/H�PhL1Dl{��
�n�&2%�6������Ϲj�j8���Mw}Ye�K��9Q!�n�g\@)*����
ǃ���i4��FEY�M٢ I�b�&ÑQ@h��%�ɢ�Ԥ�k�s�,k�<~�e��ުh��#�Ba!�"���ʼ]C~�G�-ל�	�xP��ȁ)��+-؞f$��3���LG�^�9d��˶�%��_Xh�U�*U�,��?
���h� R�V4��U�XU��`v}�P��C%�Ғ��QRe�f�S�+�|EӤ��5U(�����A	)�7V*�(�Z�����;�P�ZQ{��Zj�����A<�xğ��`D������D�Yآ6{7駒�ݘ�:�����	S?[�Nu�f�ф���&��>�<���(��`巔���M��0ͿG���,?o����j�AO���jċ��P"����dRk�1��^F9�1%�>����ô�����6�7A��PK���l�<'�>ak������	{�e�r��lv��O�|1���[�d��g��ܦK���"[���DT��Q
�
*�NƜĝ�
ڐ�8�,�1�|*v�0��&¨&�LTǫb���HY8�k(������<bf&[zg2�q�pq+
�2�)���0�J%��?�?��/��M��t�s���]##�##�� ��A���(ʀ�=�n̝`QB���dcܠX��kq�
8P)��)$�P/+S�6"�E��G�8b�
*����:��]���M7�s�ν{����]�m��e	ep��8ڌ-&W;
_�	�֤�t��|�
���n��ϤsŸ���:���4H���
��@��:�e�i���|�*{ �nǎ;�x�r0��kW̿�	�l�*�u�{�Z�=u������-���"��AL�?��޽o>����o���o�k0Ys�g���w�!xM�+����\�ݹ��.�6wfNv����JTw��8��'6&�#Qô\�ՉTe4�������#
��+�@��8I��/�\��7Д>�֔Hy�𤪛[;�#a_h͛��}�����}o���b�fE��mmf!�f^��Ѕ�t/�m�9>h��,�^���q�a��n�P���gM�0�ʒ՛��YS�U��+������+r��@�^����I�6���\�Da��=L�b4�3˘�D,����Z
ֻ���Q��z�io"�*�]�bO���RM��?��������f�_�����Rè��q1�7Aƫ(r~E�a���D��#���0�@�LH4�P8hhU�����F@�JT��S�H�J� %�K��U�DH�%�m���N���g^A^��]��e ��h47��Uk
A"|�LD��M�NZ�ʍ�3G&L�� C^o�0	z���㶊���H@j�_� A�3B�ނ����/�?�s~W����y�|��sQ��.��(�V�!ts� �KP4�_T��m�\�Lj@lyʎ�S�,�^L���i���`!C�W-�ll�U4�v��ꡞ�+��L�6d��De}�>�����b�36cՑ�ړ�B����(��lI�4&UR�^��T8�s����T�.=%k����K�rAIץK�cI���P�S&[���Yo�T�:?�z§$P�馮��i�t���B\�g�p�A�4�.�Fx+�L
�#
\��W�C9ebɼ*O0�"�E&����t�xM�u�w#�޸����)�h�֍[7��
��Zٽ����:j7:
�HUń�-~��J�de�L�(9n!��7�"2�ϐ?~���s��d��-㿷P�}�]˖u�=��©P��0>0J�0gI�a�aȸ�w�/bO�W��.�hu�"���0#o�����o�ՉtbDc3@�~���9�
�rԋ������ʽ��-D��D���Ɯ����i�`�cċ�OC��!EP�9�3d8 �4��؇����
�D0Ď�q�~�x\��`��оS%Ix��X���Ѳ�7��^~��O�w者N?���摡
k�Wn_�}���l[k]mu<�[�[V^V��`��a6�F1�im��t[��^;��[ �B�,6�	�As�mv,pTq�RU�Sa93
�w3�ۄ%3�m�)�I��q�'�p!BǦ ��|��)�p����
s�|�G�4gZ�4'�.�O�:Q�xI��҂�WDZ:[�#-]��F
YU�PG4i�DZ��h'�"j.o���W�e,�	�!�f���LCsC3|�
��W�V<gXN+oا��'�@b� H�7$���q���3�ffF�Ì��7GF�٩�����H���7ʮ��?��v_+�9�M^�d��>|�K�W�eI̞�\�2(N�D�F�/����Ut,Zr��!�X�x�o�Ns? +m�G)T����h���VD�/�4ʴ�"�q���*�� �G�@F�sh�CX`n��YăeO�
]�:�qh�Z��L���0�4n��T���6� *�,s��<>1����v;(��=�̔(V�>܄��<�c�/Pz�)D�\|��g'��c���[/�}�Zt��ѣGi���a�Y
?�.�wQ7�������������M/0[��R�Do7��e�ӱ�bݹ�Ws�.�<�c�<ԝ��E/��/��S�� ;���E��q�'7q�؎m���:�;�|?89:�&���	�u9�� sπyZ�$@	�N��O�S1>}����m޽ew&��TW�E$�g�l�ÇI{]Kd�+��4S౎f�;����@[�L2؍{��`�:*"t*@Gɔ�w��q�	?�Jfz`ͮGv�H�2P�		�f��!�|S��'�h�<��a�hj��1��'�ػT�k�?mb�u���k!$k�r�DoG�O�񧙎�	�����~�&)�&�ŷ)\bJva`IQ�C�Jp���y@P9��n�t�ݦ٣�L�mT��(�R�qQ�<&K1g(��D⢮T<^/Պ
���r�L_�<��Y<���m=����y2�S�C*�L2O��'e�e��e���ᴮN�_�o�u��׭���mok���|nYD1J@�v[���8�,P�0����.� J�ͯ�~(��+�{(%���[�j!�ݽ<�N4h�-��%�䚛��@�A���V���
y˚�7�j�o�Lu�)�5��$�i�K�������q��lB;����F,P<ؐ�֨@�2�uL bK{��-��av`FlW��\=�njm�U��nܰv͊�;[w��T6���8SS0��Ҝ��L�PV�OLځ���XQu��_p�a.n`�SԚ��
��EUz�8��"���_�UTyNxP��H�Z�c����O.��h��6L	W3;���٠<n���A�������a�`���e�6�6��S�=!��o�YW�dž?6�S����]r��
h	Z����0���{4ǃ�Q`�����-��m�Y�zaXshtS��e]M��o۴ctdž�5�ý=]���nO7.iZ�JV6�p��p���U�	kk�b��k�����I���Y�ae
���d����o��}=;^�L�$�]6�9����/�c��#V�.z�d����ۉ	������&�]�������+h.w��=�	=��sO����0�[asqR��$�I�4����A!�N��JuWD��]����?��*�bQ�J���@�T(E��1N@�I�T�HSA��t8����r��k�5��#ab���9s��C##}�K���WgϿ�³�z��O<�Ѓ���}�y��g�[o�����9td��=�G6�l�0��by���l;��ښ�8�B���5��>s8�;�,�PL\�r�@hp��tA��
/�^�Ȟ��-cc[�hf��>^���+�<����P��B�t�j��U�Lے���Y&�͉��)+T���$���nV�c�au�B
�1�;k��ܪ����e����8������ࢎI�iF����*���ytʰ�A���Nżi%C×�K�J�m����ə=����gE�@�K�lh�qM>oS<|��:�aD�zz��g�a��Ï/ػ̊��,T��PX���6��rCaF��U-�n
��T���IC!4�a�, <�j�0���E���K������6
l[ ��oEwv͒5@�ƺx[�-X��|x
��Fu�'
$Q\`q�u{��Q�tZVF��Œ���n�G�ʧ���WO�b-`�Z� <n�k�e%
*��4g��%mz�������-��\�nE����}���XW��7��a�۱�{�W�{��z>#�00&&�<x+��g��$2tA3N"��.
L_u{O"��}��$:`�I$0�
F55� 2��kz&�l�����
���ގ���L$y�r-S����T7��ҷz�t�?�㹞�Φ�*�m�{�ӿ���<u��3w�t㱣��9#��se��ֆlS�&QY_U_>�� 粗Ӊ�t����\�gŕ�/m9S�M*ˬonQ_6l�bsh�͇��\�@�S�s�	v
���I+�.ӂ�\R������4�x�j+v�S����8�*��6^�-�%M%���Dx�I��p�o�T��ߘf�����8z5��#k����ОJK$���oA&q�h#�Jĉ�8����Y"Z
4d=�J�ڹi7�w2�
�鵂/�-E}h��!t
ݍE����$(���b��qąYX�d��/L��e�`Q"��F8ɇe�.�/�UU�삢N���C���햣����2���{Y[K���o?t��G�ytf���o����O=up��C{m��2�q}�Ⱥ��+��u�e3-Kۖ��V7'�+l������W��î�k��K�X�7􃿜��q�+�7����߱��P�'��w1��Y�$�T}t�����r��k�b���'����/o�H�Y{|�ۄҨ�]��]��(�E"�1��� ��N��)xB�qJ�2RTY�2��$�J�f����D��r�6t-��7�o��
;7�]�r���������:
���62Zp���lw^���Lj+n�K�})�s��<��W�8+J��&��6�u��;0�,�m�j�u��o�n����|�C;�3��R,�mP�-�Û��5$�㫀g���ӵ�a����J�(��j���}���{�m��Q�/}��}�?�>��
v��=]r��M��-��q\�k=�}<�x������~�h@H�]�Z���bC�ü����<�
>�°�"�g�iȆ)X�xuA}
���Lݘra���q8�nK"�������o:y�𡃓{���><4����kIzk����/�ΰf{A�)��c���f,���.$�o��=������W��-Z��[�	��x�!�a�Jl��?.��Sݘ��4�8��A�qw0�232.�ڥ{�Ώ����J�Nys�v4��154�~k�c��ff3����Ug�+Sl���O�,1������#�� �ٮ�i 	^\��W�\$�D��]�5��U��L$���w��9��~���v���w���m�O�8�	춵`��f~
����ǂ�%��/���PRl�2������mٽu��к��W��^۳v�>6��>��9'\#��H&_��Ml�*���s?���$0O�4'�5��(;���(3��ƫg����:���>	�����pb���x���A/̹�#���e��h��Ddɑ
=v|��E��Ks�+�e8��2� |���E����w+�ĉH�_����{�~�V���ŠE�G���v�YA�-��`�$����L<dQ?�RGU�-zE+o�:�T��
�A�q����!V���D8W;�D����-p�S'��Ѩ/(I��
�r�Ǯ��7$r ��l�^$b�B�H�]8�â5���
X%�"��F+��}� ��_�ī,�DHW����#DQ�� N Q��Z*�����3_�P�)�z��r�؍���l�
yn�l �a�1���ʓb*�(�uܓ�@.f
{�EM��4��4�����.�`ήa�E9�O�me�9�]G	�j�:+I���}��ܛ��	�N�3�.,�`��%���0>}hKn���&˔BYв�%��$���x���Zٮ.`g��<"�o͊�ҮL{M"V�]���I���p�y�.�"�a�����C�r��
F�c�&��CsnG9�R�X������a W��1_q���4ȷ罂Z"T\�罂s��6�y|��nguE/���l5���-�4�΢�X�]wΜ���S�
P��`@r�;0���q�g+R����d���iۅk��\U♸�4t"(���q]~ܛoni��8{���;n����o9z�m[6o�[�[ޕm����TEcec(辚_�yy����Wu�ZZُ��ɦm͚��X�c����Č/�M{�Y_�'�{�	^�!��]���=���ṅ`����	�Tp_��8�����A���Y~��D�t���{��+���X���A|p��������)���7�r��B�L�����V�{��S��~Rԇ�����k�"�.3�����!����t���#CV�eKSem��:R)�C)"0p��yӝ�r�3ݙ���s��mcn뉝�\w`��>PK:ӭM�5�����Jv_�Jv\�:���l�t���a�T�V�VLY���0���|{�����0Rɨ#�2�ޒNoٿ9�q(��Y2o�����tOuCO�8���WWʾ�;��cLn��ڶؒn���Y���}�A_��������CG�1[�82"�ZlDt݊^�=c�r).ޥ�3v�挊�N���t��O�y$�T��bٔ�6�e�֤ȥ�I�����g<:~tߞ�[ҭ�|��[��z��#���,@��ukV���^�$ۺ9���>���MC�"�PQ0��"��w1��yl�{NYƤ�S��E1�a�8�/������L��1="���X�p�2[���p"���s��M�=E���o�'�c���ƫ����x~�(=��
���J�c�(�+�O�c���5��ל���|��:eLJyP��1���=|�d[�����Ī�S�f] Pʊ�:L+�81鼠O1�5(oL)U�6I{���Bωj�n���Ԯ�׍m�<:�nՊeK��G#�hȯ��C<�eS�xrf��g;�-�?��v��z9N��=q,څตW�ls�^<����}|�.&�g�G����ǧJQ�N��
�e-H��f� z�&���y����l���d��d�*D3M�@�_�$�M��w]�)��yS;k�;���v�K�~���2�I��t�w��ʪ?��[�> �����I�k��S�d��TO���s3Mu�%,D2�����I�%Ybn/�,y:iJ�,
�v$������IU&���n56:ޭU���A��͍�
��5U�T8U��m^�s*��B�kq�1��#Ƌ�����}�F��p�}�K���
ܓ�/��Md��]��Z�v�,�;p5%K2l�O�kE[��=��1Һ�~��,qSp!�ջ��v�(��I��=7�������|[��1�R��Tcv8BXޚ�������eK�{:zZk�ui�-��}q��2e[���+>��ƕ�
�.C��/\�{��:V��
�l\f�--�Y�6d���k-l@Z��}i���OΏGhm
 ܋n@���Oeb:ǡ��+8� �a)��H���Q��,�F�2Ax���\�~71t�cgC��YD7��7v/������7�x�о�߰w��]��6NOmX?�z岁]K:ۚk���+�m�c���u��g�?bN�
�vU���s�]kK�I�k{�B�U/@I���.�]{Ջ"�۱s�;��1DX��!��6�Q�,o�^�t�T���NT��1[����Ô�Ii�I����=)fs]eRW�˱]̊q?(Jf-z����"�Os��e���+��=JN�#�����Db�x}�4�k�{�A�~�ル���A�z	}��Ǚ�u|�S縲���Ban0)	VY�&L&�9�W�Fr��k�x-�.����Ӄ�>�PY���
R�MVEI8
��s84+'�ph�7^~��n9�|�#^�x��_xu�����_z��~��y����3��{۽E�9p�Y>�<u�1�3O�L���`�s�M��B̩cޮ��bWb�Ju��g�g҅>�X&��:h��"�ˉ��l9ސ�ܳ�b�f�6���ٹ۠uQG��gK[_��֢��/�D�D�?�q�P	��^�H�R��-�x�>�5o�^,%�W���I�O�z�څ#�?�>��_����{�yJ�bY	�Na���\n�
�iDqa�*2�oBX0�0��c��Id �����&�۲�c��&��~-Ҽ�m!��JuWz������?/D�3Y|��ф�4z��>UW���?*��e����"��
���C,��lx�C����9}�-7�ܷ}�*+
�ԒA�m-�y�`�N�B%f����V�
���L�@���5R�F�m5Zۿli*Yv�]{�w�Ҿe}�-ɮTW,N���F��(ұ���N�*2��ޑMثN�Ҳgakae+�(
����
���-��H��@D�n��k ��lOe����������\';���Z��2v$QYU����ѵ}u��u}k?�v
+�Y;�k�x�։J�>*�u�>�E���(%��9��kT�rI�m�9Nn
sm+��d�q�BU��^�q�D����;��P����;�G(ݪɼ��}�$�r�T�D)Gyi_oQ�����nI��8�[�4�R�\���y�AC>�d��y6��>���M���p��s�,�T��|�w�	��I�����)�y02�Yb� DL�f�5'E�@l�|��5k 0b�@�mܶfh���\���L[KscM2�,���ݖ�3�XCւL�8S�Lw�Y�j�H�.[���t��̰�T�-ƅp�`�`�[������8Jv6WN��ls��i���Ρ/��#��Q�ޙ��♧�p
��!�~��g/��n��Nx��|D�<��$>L&�a�����"���d�����c����ɳ�����j��	=����r�iĺYS]�>(�s�	�YC�&��v�5�L?�ySg�EYx���[�Nz�f�(Mzד>�j�:'U��P:89�sdSߚ�]�M���C��ۻg灉�c�v��X?�f�oxEO�ꥫ3�%�KR�P"��Զ�J���a~��,#w�%,�Y)�� ŖC-�Xp���F%���ìH�!g��)Na�)�X u�<�sGECx���{��c�Kx����ګ�Qv��r�7���*��,��W��e�#�Ǣ�����}	K���'������l��E����w
�'��ɭ��O���|ڊV��>�nGg��9����w7c����0/ۘ�g��aɥ���ń�А�����Y1��uH#2�غGd�^J�5�B�$S�a"7o��<���V���+ 3|�h���b���a�(����b+Y.���t�5���+�:�����o1>�[�o_o/����w�9}ۭ7ߴ�侓�{{�N��::��eۊ���Xy��h-|��xqϘ���.J�R3;Yΰ褨qb�i+夛���*���,��=8��Fj�H9�U�+��'p�ET��w���ׄ@��DZ[
�
N�\E����5꥛連.�6L���}�g���֯]pD�����-e��|� <E#�2?������>
�k��ٳ�ks+g��4��,�4�,������)�>�V�' Z��Xx�,$i꯲���l�a",�kمx��/��Uh7:��͝=ޞ�D��bS����A�A�V���P�9�tAte)�Y�T¼ĂW�y���)�FlS���VVm[y�ȡ='���q��HO�Ү�:�����<>��d���@�=��A�?Q2�L���5'l���������N�[���s��.��i'P�M�����|�����o��z�p�g�#�3�W<�=ɤY~?��"4��T��H���
0��/��wn�)ȼ�o����9��y���Ñ� �P9/Z� >����:�C�2W�sߤ
���y��p��N5����نWe�����(�nTV���;ht�K��SXsUEC^���ItD&����K7��ˇ5�e��O9T&Ev��K�p$���F�UAՌ�I`�X�C[6�\���PS���m|�-;�7��X��EOgߒ�B�j}M}]m��S���&��VKk	��WҚl���4��6�4�{�m$�E�� �Y��|��oϿS�r��_��g�>�Ĵa^+
�:��|�2����X:U�m���Z]�
K��/�ؿ.�U�H����a���E�IC%2��;�l&d<TYT��W���`Y�,byw/�J]&U�흰�1+�1�����A��y�=�~~F�Gs��S����}6��څ�,	�v�;.\(�f߄����U�]�S��}%2,@�	�X��|��x�X���'��?;�+%�j�|Z����,�
�3r��LL����)���;g��k�@@�i[�8[���g�N�lAդ���t����j
��Y�@7irrm����!ml���h�NX���WB���P�p�h�_j9{]�9�l��)��l�<�ד�u&����֮쪽u����U�,9��P�=�:�7|���b鵩X�;\�9^7{Z��2�ު�lCM����D	��_�׽�����xew�B��ho��foԓP���4^�-Q9��=aS��n�r�.�_�f��ޞڮhH��_����;�i�+.C_ۿ�����k��oK.A�DO�9���M

���rUTQ4jH�lV(���H,쭬�;��:�GV��E���D�-K<G��U�Ӻ���?�]�@��-�]�6V�}��
���"�wyG[s0���Ǘ���ٵݝB*+���2��*�8�/��-��eQ
�6$k�n
���yEn���-��ΦnU��N	Q��d*���+��E�H��g�}��{����oZ���A�\J�-WMc�Җ�x�r��+���߸M���'[.��Z״h</~���XBu�!�WyI&J$��Gn_���uw4&��n�+]�h*��T�ȋ"��y�	�m���P?ڎ�����}l�l϶5�KۚkkdM ����dS�nh��ͨXT8E�f�?�#Ԃ���VԐ"�fd�e�1�qL6qxh��uk��0:tp��}Gw��22�v���U�U�=ݙ��z�_<R�s�0{l��(8N}���%�g=�Cn�X���G
K���Y,���L�+b;=tOi�"y��R�;��KbN��#��I��b�Ա( �hL��6�h���2�H��w��Ttn��OFxr�^��V����@�~M�kR�2��Wmb��R]]�d�=)��A͚`�T�b@�y��"��d����6��}�	����NS2J�,�Eu�N�Q(��Y��Z��Pw|��%+�V��:;kR��z@�U��R��bP<��E�l$>F��®�H(��)�qMU�]��x�U�W�����|��Ga���9e�ʝ	�-]�n��Ѵ
pXLX�1� 
醦
2��4\�>"��$��Ɛ$�	�5�fUWgcgg�Ycg��Z��Ґm�ij(5^]�P����vR���wa-B�ejq�����LZX ָo�
�BT�7������XY\E�[�wp���^�H��}��w_��ׂ���_]T"��k��]�?)������ѷ��a�~���E4i��$��LHÃI9�D� @�L��9ea��<�ᤰ���ȿ��+Z�W�^�v�Z���Q�K��)c�/�`��ȿ�!�|{Q#�I8q-%1mi;����,࿳����z̳7�~(��]qQ<W��g1�D�?��i'�Ja����]�[3[�?���k������W�Vkt��
K�P�$P�c�_5z��,�_�����AT���,,�_֙�o��F�eoi�.}�K*��|���o�t�h9�sJ6��XW���z�l#M%@Q:�Ha�
��H6�l4L`!�������r�)U&�_U=uJ��}�?T�De���_�o�o���G�2vkY��v�J/;�w��n.
��ݫ�6+�t8]�8�Vw���g�7~���Osܧo�Y��	�t��b���$2�셵�E�b�(�E9�EG �Sp�H���)�Ά1&��0�N[�L`tf���o8�k��5�Wvv�[=ɞx�2����2㱳�V����ma��V'��\�ڤX�Va#S!
k�/�b�#�n�B��|uL�@�{�0M����%�(H�*���?P�����m�V��.3�l�H7�d�C�$�S?<D8I%~HU��Ogx�R��R�]Y<�G$��U
�'Qa����UW�Qo�]������	Ƨ��*��S�$nQ�a�\�N��r���>`vmżOb�E��{��sh��
�r�j�8���L��̷/VS�U�,𓱅��ΒmV�n�}�V56
˜�3]�]�`ѝ��c��j�d{Q���De58��d
Q(M��*�G�'����!��7�|~�Ћ�?��{Ξ<~`��
�l7n���~��+�Ͼ8��S�x��
�w�u�̭���9y��Ծc��ڱu����
cEGHW��N�X}$��W�i�S
+�uW)�2W�*Tvv�0�������b�nѕpp�fݹt����¿�#���%�6��+F�-,Gn��Lq�b~��{���U[�5���E1E}�E��m�S�k�FQ�A;��Ĭ�-h��DY��U�c�=�0��3~Y�)�͢	���wEג�}ތz|QW�X�(�4Cai9��p��$'쐣7I�ܿ���.�L;.+?J-:J�Dz3bq����4�ъ�,-L��rv]&�0�.K��~���{Y�o{9Ș=�&t-�u�y�M'GV���Z���?5��S��+za|�m���Ʉ_`	�ڙ�	1g1K<omi�"�3U1�L��ߛQ؎�b٫
���r?Ř6����.g��TKU+-6L��(�4�r���-��'���]�n��t���9�hnMl��1�h�Ҿ��@��)u?�57�w��i���*[�(����PmH�T$��Z[]V��UƂa�˺-�#��]]�-^�7���͇��Vl�?�@�'���qmG�ҧݔ�F�yG��l�1Z�l	$2MmMOO��1%���^c����m���eQU��������U5��w����o“]�B�-�MM���ã�FRd��Q�-�C�:�G72x=�Σ���dI;D>dS �Q�\�8�;P!u���xb�Jw�`�<��`�9�<�OU��*���
E`�,D`��^x�G��}�#�vO8y>~���οp��'}��g���G�=r��Sw�z���n>r�}�゙�������i������Rl��J�Zڜ�H�.��j壣�u��|l�꟮P���b�?]��_c"�G�kW-��Ul�Јh��{�鑺�^�r�����Hω��A!>�5۱�Cvօc�@/��'
ё�B�����F����p>7�ђ�Z@.ى/3$Bt��,ޓ�J�Z+�$�
�)��ܱ2��}��a����l�j��;�Y(e��m������O�9sӍ{v����e�c�����η��b��+��SO���KO<��'�w��;�����t憓'�OM�:�������m[G6
o\חZ1����'ӝnkm�KU6ǚ�AP2�%�r��-�+��}��W$\	I^�sQ����(�hi�]oCfR^��cn�v�w,�g^⣋��Ϭ��K��߸L>X�Fa��Ե׎j�J�<Ŕ$x��ײ��T���Y��o徾��
h�2]�U���C��ӈ`��v���R��Nz#{(�uO�-�pz6%��,o�"��;�;+�n�9rx��ͣ���k�#�g䈝gd��gd��ٵ@��CK�4��F˂�/|�p�R��RL�"�����RZ������m�<����~���c�-咘�����4�KH_z��7��J�:(�hM�WۇF�.t�h��}=�>�~}]@�������������E����Խ	|ŕ?^U}_3��s�H�[��,˖Ƨ�-#�򁌍�a�2ls�ˎ0�pCH $b�#	H�@�$$�_�͒k��=�M6d9��O��_�zF����o?���鳺���ի��}|��n�J��c�9æJ}_8�ٱ �l�D4D|�^���}��tr��Iq�l<1��uAӀ��h!�|�0�^$�\.�	�ܶ�f���F����~��/��=���|��睻aC݉�����o����_�������_��|�{��_|�կ����?���}�ӏ>��S��ك�z�S}�|������]{�
W�p垻w������oضe|ݚ�+W/\^�ꭄO�h>��:�7�
���ݽB#w�=�g�o���������o�
��l���wv�;v��z{���_���շ�
���;ߣ�Y�>�ŷ�fg���q��g�����β��*���9;u9f7��Z?~9��L�E��4Nŏ�P�?Q�^r�F��I���<����4*� ��U*�O��8J㩉VDo02����7��O�@���	gp(M��h,�DW��6��Ge����"��^Χ�a�9U?����N#��/0Z1��@c�0DTk9�����'��rlN�?v��;�̣���_r>ԉ*�L�]^F{�C�q���rh=V��~"����%O���;��R��б$(xlj*������		:����-<v&�%|,��%|����=��O<��g�~���?���o�x��-����F����ܮ>�+qÊpf aR�8*�,�a�R�8Y��X.1I�qpvc��~'N�A���B�ݙ��+��W�˃�M��q[���v�.6�M�d*0��T���D�%z<��3]�X��
\(J<86�;�ޡL�Tz��V-O����;4��c�6^m���5W�*1�h�}�_��mGk[8���hj��������ӊ-9�$k�$��4�o�E)��5�I�T�D���d+l�ȿ9X+��J�Bp�?/�d�D�7�r��Ť�D��<�:��ݭw^�v����K�fז�M��
.~\��#G�N^|��m��i�����
])"�.\6xIkr��Zt���C�
�	�2�/�xKV�p)�����C�iJ� g���K���fR��rc(��(�ng�W���-���0��U�"�b,�cK�G��9g�s�ж6��[N����'���B>3ȥb�$k
ɂ|#Ыȓ�(�٩��'b1M9�d��_�'�XC����	l 3`��Yb��&�؍\��5���,�d�P��'�ئ#�홌`$h]!H\���g>���=xχn����W_�oﮉ|������y���<���O��~�c��C��w�y�o��o<|��:x�uW_w�e{��w�㯿a��� ߔoJ%lK�d�'(�sy��I9f�YoQ�Y ,l~����X��r��55எ�H��ι �fֻ��������OJ?"��#�������g��?� u�e�+oB���Ȋ�7�	��c�=CYa�3ng�
zģ�:�=űbp���`���{����p�iβO�{d+D�
�g�ުXx���dоd�SOMI؆X�MS�O�
�+ "I�!Q���q��C%~��z��穗���b����3{lf�1���1��?Z��lĺ��f���d.D��V�|����%�+�-<����N�ڹ@�z�f>�6��L!�W�x!��{�CC�Ky��
h~NR 7��ܢ�`a붨O�� g�s���M���!�ŏΛ���ښ�bt��#��,�70�j0��Y�"IkGkG{[K��)[�R]"
�)Iӑep&\��r��,JM�.՜�|�2��+�u�,�	R�U�re��d����	D^9$�^|ޙ���u��{؎c3��E*ڳ8���6+@�aQ�H���c��@�t�~�L�р�y���3(�AC�~Vև�]��(+d�866v�.��?^�6F��2l|{�5d
��X�F>b{|�o�`�N�*Z��F}@h�/Xd��U�m�D+�cs�]RG!��QA��8�Ai�jt=�f���@�$2��֦O�3�1�/QHE]��7����Hb*ي^{2T�j	�W�)k�q�RMk"⸷Df�[�����vnټ�LHw�T����e�}�\�����W_|��}����m�-;6��9�f|��ՋW�穀+�m�RS)��#y�m�\!�
&u��V�����O�]a����n��5K
t���Qlj�~���0�������.n!�gq��q�YK�C++,=s)��~Թq�(�����7W9���|���t
�7J�i>Z�&�ks	�9c��0�4���ȟEDlx�i���g�d���x@����tmU"��\��b�4�Mte�ۑi�k"N�eL�J�7�W���W�,h*`����֭�\=�|������z{�:Z[
��糉��+S�
Eq��"v��X��\C!�#�إzR��Rm�m�"�O�Y�|O�ércDzI}�)��ﶮ�4��ʼn|�#R[l����.������t���c}��e��Dp�
�<!�V���
ԑC�u�Je��r����,	��7�sǪ�`v��v�9�I���n��A���;�����MT.���֊��L��ה�'/*G&��2F՝��@�yN�D-i�@5���H��V��z���H�Oв%z���O8]C>�S͕�����ZN 1|#oφӓ��!���蒀3�>2|t�g���S{Ƶ:}/� ��V7�,�=8�	�N�Mr�θve�f�j�m�h
�fgq��
pYK��
���Ĥ� |݃ޤ��V�`$:s�qʣ;*�!�d�0/�௝�&���9,���D0PM��&�����Yp?����̅�]�lq/�4��3M0�q)��]�|�\��H���*%2�}l
^3����v�C3
~~�hUeE
<�֑�r
ڑ�)Di@ ��:�܉�uv@J�Y�<�]8�AL�\l�����}`];&Z�G_�p_�pc���]h	:��Kb.Hd�êa�U1��x��0и"s�^P��$� �T�M��*�8]��L�n_��ԍю�wo޽j�ҳ���?�{IiIkK&
{����p��r
�R���q&�Phgݣ��'ԝ
��Ҕ�;�X�!�
���<�E�����b�=}�]���-*��ަ����Ŷ�mm�7������{m�<�Lm����t���+�?}�̎�\@�=�^ǞiJ1��b��~](��YMw��_���7"��K��������v�a��W���Bq��7�f��;r��C����y�R�I��P/"�NE�xH��1ᯧ���a\�a�b�������;`U��i�Q�7�XVY�h�G�~Ts)��b���%�6m�5���D2�|��/ŢݭB���^��=ŏ�!�韒a�z�̜��.���FQ��������>��B��fdT�K7�nG��J*��E�ĺ�JנC�0`��G�1�8��}}	}���E�q/O��[���=����1>�t�G��$?B�����IE��p��e�G.��J�]��y،�>��1��~�-z���X�8۵����Yl�g�&:�WZ��9�r�|nb�f��d<��H'H<�o�ufu���}��'�|�{>x�{v��y��u���͹\*��B��կ��엞����<��>��SO>��?�O|�3�~��G?u���G�y��;n����n�	a^{ž���f��ۼ��m�����ڴnú
��֮=sdղJ�ʁ��RWs{�=הk*�S�T6��%c�D<
E#� �v�K�"֒�9֌�R}��������f~��T��@�2�l�bW�"̽p�L��@S���.Ȝ���#	'?҉�Sg���)�b��\\}���/5�V�ܦs7��䤬{�� �l����K�E��a�V�M������F���'�֙"dd��v�'�W���:�0^�]ݶ����d�>�AC~�TEfOWWΞ?�}�!�q�_�N]��5���|�Z�24X�h�Fx::3����W�)��Ӕ���	�-��CO`��C�*P���ALaq���3�����$,5�Q����OH|z�zY�M�\�QZ/r��\/��TDN\/�����@�"o�E>R��0/�M�H8Ië5��Z��`hէ4�s
�1x!hm�N�m��-��d@�t��G %/`~
��0&�MTb����Z�\�5��w��xfR�P{��73��5�(K���B�������Lܮ��
�;�r�����=�0�ϱ��O$�y���e��V?��|}�U|�Z�*&��L|��l�oh&&0�mZ�֠m�-!*��a*ɐZDƂ<A�;�S.�Ѥ"Td�T��%I݄T�Ti4��h���T���io+2��1�WU��-��c9a3b�=ä�U��5���}���o!ϫ�-�Ǎ����5�vC�A���>���h�Q
uz���Wp��[���D8&^���N���<�������<f�}h�%�u�>�s�KY�Kǰ��.�i���n$.�[��:���B)LT��	�!
���%�O��>��ĺ`��!��Ip(@���j��X�mo:��vF�=�%�]���0��SeX�"
Q�]''yg5�1uʪ�?�_�{�2p�=��#���޻?p�]��u�-7���'wP|�8��]�dh����O�Y�u���s?�ϥ����ހ��cÊ�Bs�)��SSM?��Ĝ��8��v�*��B��,)5}�0���jF���d���{���@&K���^�s�
��	�fYR��2�^cL5qF_KS,����7ez�2h�9̳��p�`
����lԮ$/;�+�~J�;ɾ�9�õ�����!-��;�
�o��{:⯸�P�ʳ�����i%<�q
�4�[���x�L��M��},sD5x��������q�A�H��jK���hA����8�2�Mţ�����<;М*�H��j͈�l���N��-մ��C���s����&7��]��:y`)Җ��y4f����i0]��C��2İ�qO60�`���уA�$Q���#"�c� Nf�Z'�7��=Nz�x,��L��:�t�^�W�N��w�L��;�H���M8�,m����G'ߜ�[���)�E���eh�,]1��--<��"�����b�����9,ġ�t��;� N�4�t
¸yn�kn`����!T����y��d��;>���/!�z1ȯ5�q[k���jEeY[���R�|C��f9�������6Ԟ9w�e��ު2̬V�Gmh-B��������w#D�0��A(�';����bnj�@o7��r0;�A�;�r��{�<�Ԏ�������\�� ��<��)�9Z�P��H��vB7��9��E9�C"�O�O��bcKu�{Ơ����|ә�t�Ii�zi��0�	��SF�rMO&�-�����d���u�^�d��Kש�)�Q��uA�D^�)_���yB�Pjtq:���#�>!�Q�ғ�jf6K�^�V�X]����y�|&��z�+�e��4C7����˷�*'сN�t8c,�D��>Ŕ��T��n�o��|L��t1�>�/�;?�*3�49�J�#�j�Y]^��kZ
�t ����"�
מx1�NT�������s0������q�I�#��D�vK! ��V�yQ�i
~�v}A)hGe�f���%�5�]��m��+���U<ѭ����H���:1�
�AV\�bh���Ċ@ٿ��6m�,G{1Um�����l�T/Wt��Z!*4t����T�{���Po�Y}�	�}�	��՚�.�۵��syW=�ȑS5��:ٜ�ŕ]�(��)��Y�Eu
aBI�Rx�~V�@rp$�T%paDZy'�����H��Ύ�b.��E�^[o3�hy����|p '[�/à��)$W(q�L�E�1�Yc@R���EƮ]�$H��F�.��ѱ��$�0��;��7�5��4�`����K���3V�L�F�Y�������e"k���$є&T��.�@Σ	��8�'��^!LD|6�o�
�6�G{zZ[�A�&{� D��f��H��!�~_�b�TH�R�dʶ/SnƾfRN	�#Kؗ*[)�)0��O�����t��p��}pg���� ���Ol>x������8zt��t���c��]/Z�!�����*7Y>�J��xFn�,�H�8I�mCTmkͦW�Z�dA?U�{�(��[�-�J����
��ei���g�(�"2��S%�1�6�A�R��{���`��>���_2#�M�W��/�I�Mq������]
Ѫ?}Q�H�?a�t:f�Mp�D�&	uK�u�N/�]z8����+��jڙ��ˋ��[��k�{�y�!I�%Y���<A���hG��#�/�����I;�$ϫ%�)���0�%^�H B���y�K�,��J.N-��������ی��l�������	Ff����H	q h�8�Ŧ�ӔՃR[��K�o�쵞p�9�y�aώM:Kx��(JBdY������:�o��KN��%�g�����n��{h��+u�?k'��&i�T�gY��bE��=�K�\`@��U��l����}V����"_�E%�@���H�����I���)H�C܈L\D�)S��I?UY&<X�L:vp�8��	�uw����8A�>x-�[�ܱ��s�ںe��3�

���:;�X�l�+O�%��@g!�n_�r��I�.��U1�L�i��XM
ɥ�"�c-�bfu&�.���t����Stn*U֧�9ӂ���WtR�s_��$k��H�P:�X���"o������+���i���L߷O�{S�Nn���,���{��<��-�]7XOpYO�^ðc?�1
���T?c�Lqt�=t�����Rƍ�R�/	�$�2���Y�CΟW��hk-�Ɂ�{�
!��1sXx��B]V|�������K��uW����b]/F��at#�t�1Їg�=g-�5���,�U	�J�AX&x"ꍘa=$���1 G��Ł�&��*�|��)�2z٥�nY5����p��W_z�����dr綋Ͻ���~d&�u���؟�i�‘�������{�Sײ)��X���̬۩�xs���@˧Z|��hq׿��+'q)\��X|w;���;��*�z
��W��%t�ɠw�����?^��x�8�T�����fr�ү�{w;w�2Ùw�s����8؈(zpvn�x����O]�|m߆F��<��JA�E�pmŶ�&>���N �)r<''������0O�L��L�1��Ĵ���ˊj�����.pR�Գo�c�7��ɾqb�'�'tv*�'�w��_�q$�5<�����L�3���n�(z}��������s޹ۢ<��pN2L�~�ˍ�tw�uvIgm�P�u��[��?�tɢ���PF�GƞM��Z�e���l�~T��t�
Z32-�9ۥJ.�ڼ���k[~��>��`�#� �7!�[8WĂ[X��c7�4�����K�?��cO��������y�Mw�|�u����=;�N�]7�rxp!�`�X���`bݜI)?�
ȑ�T(φO:_��w5�J���V�k��3Ȝ朳*Ut�0�E�-��@k��	lϖ��m8S/��9�]�@�S)���~3���-*Qx��՛�	���a�1��{Y��ziO0Ȋ��x�� ���ˆ��g��A�ٯ.k<��^�5����1ٔ�>#�{S����L�3=^/��K���2�z���E�5dv��a^-��?eqY�w��L���\w�����k��2{U�":y��XT	ƕ�fc�~÷�kX�����9��ރ=�M�F�u)4!�8�W8I�%�*@ѯQ��ʭ-I���R6�<.k��ϣ�=�u�&��
y��p3��H$
1�!����'�O}��_y�O侫�ܺep�?��_��k񵗿��o����/}��~��ǎ}��{�=�����[��X���b0/��}ˁ��7�=�a����ܔcbrlFL�\[
m��K�>)S�,��Ez��������(,�Z�#]� �(X��&SSoW̐�c��x7����r�]��%)ͤ]�m�ƫ�a�z��28�2<-W�/�sV+�L��*�ɾS���=8�V	���F�ˮ�x�����֨
X��P�_���wrX��Ж����ʐ$����q	�a�;�z";'Δ�3�x�)=]��xoJq�p^�	�v[
)bե��V��D�p�(8"�I$�Q�;!nS!͂KҸ�����i����N�B�8�h.���@5�
Ր��θ��n},��᮲������״�݊›�Q�*�ҎT����I�iI�z�P�8�y�rb�|��^�P7Z�ίl�c��,��7	G�@����T�W'4�$�B&d�����h��!}:��,\��S�(r�d8h{\:���n�:k��໧�J����g���vv1��B�N�r�W���c������9�i���m�����o� p?=�b4x�{�ir�3c1�#@+���V�њci�����������֝���TX�Au󫨶�2>�q��1���⯼��Rw��rD�7r�z�(�"���h�0��d}�C'���S��Ɖ �(�Id��E!����P��CHֈ���B%'Q��N$��ݎ#MSυt�kk30SGuDUL��
t�*�c|�{�s�����_{�E��^V��\6�F�>�s^J>J",5�O���|��.�ĵ�J	���vʍ35p~�`�qL�^�7N���쀿!���2�ؽ�<v"f�j0��Z�����ho�@��@�%/���I?ߵ.1@>����$��E�v$��3�&P�IE�8t�J��eeW�<^�j)�����q���>�^�sGO<���U��KgV:�׻{��*�O���_�؜Of*�\��'*��[{�Y#��~ؗ�g��~Ӻ�Nw�v��/8{���@.��,��ͫ�V���U��xE'�nk9�?ɋ'C���2�E�?Z�Ə:�UA-55&ٚǫ�v"$�D�xo����K���H�Y�_��N�y�Bs����O^̥ҕd>���[s�V�&��}���Icg4�'X�L�z��`����LN��Yn�L-3�e�}�69΀hB�5���	$�����bbYF����d���zIC2��lG�#f��!t
w1�p.�(�	�sL�4$yő�~�v����>�m�<�y�����Y�����}X�2.�q�$(�����" ����Y�D�V��:�j�8�<tևN�[0[�A��V3y=��%J?�E�G����2��H�fձq�o�Уi55
�Ўk�Ҵ&fZ��38�|�|�Aұ���K��m�('�]�o?0���N͹����J���5�f�c�V���Ϭ�~/v���0�u+�oq����m`��[�[䢁�l9٧��D�>�5b5����jH�T�R{�]�&�hR�vG���QmKG<.NW�1%f��`��8G�e��\�e��.o�{r��s.+�kUEc�j1lޯJ�!XF ��"��^z�K��}~9 �[�6Y���&���G��IOg���#��$���{��[����[��6��8oiwܔHW60,�%Jꛒؚ����y�����2|�t+�����ސ����M~D64����Z.�
Ś�glH�mgtQb'�=9v��-`��[t=Ի|��D5|�_p��D�h9E[��}��r�����$�ȈDم�.�rM"ɏe���D����)"ĂX4:�	^��RU5Ƒa���j�k�ٺv͊��]�9�ܭ;�ٱi�-k���]1��2����rWwK1ۙ�tKc���	��;�v�1F�P�������7�HRN�}������o�����\	XH%��5ė7���Ӌ�Z��v��
@�!t����^����ޢ��\�P�Po���jQ�8����
�W�Sn7F��T)]r'��P��4���X�Z�b��Q���t���T����Jp����/Y���mJ\�f��e����
�?��[�
�pNH�u�v"�Y�L��Q:�Z�c�diX��X4��뒄��)⌄5K����K��:��Dmh-��Ln���Ƒy@��8^�Ft,ɼ,�T@�݊;��,D��5I53j8�B�����[at�ygo^w�؅˗
-�)e3��p��� fBk'HI���0�;r7W��K�d�!--m�!P��E��(���i�T +�Y�:�0 �Z�Z���[�o�
�[Ƿ~{vs��Z04�`ׅ�Yߨ��O
.U O
<�I��	�ՙ?b~OA�_��;1'�(e��
U��M�p���'���^�s�1��/���u�[xC��
VЯʺ����1nۓ���=,�{x]|r��ܭ<ZJ��ft�=�A�Fϡ�_V��+X7_�A�#?7�4۴5s
�f�ԃS���)����S	W�3T���OƐ�fRƼ%���>l��)�#Z�42�9[�&�NbS�)�f���
	1!	��9��?zם�o={l��e����k_�����S�y��=��'?}����Gy�{��8|��;n�隫/����}���6m\�yl�Ȫek��-,mZ�Q�,�"��ČhP�E��K�pV����C=��O͹��aB��3s�z�����/�yT	C�������8Se�e�i���tM�q
9�<waF�g����גF�!o�Lb�����k'y9*�����X�K�91`x���@ �+jn1(򥍥�8i��Gn�"�n0��y�>�]�]ցY�8�"�V��e�6Q�ޒf	�2��-�1WnI�}�v�H��(��H��_u3��$\��+�K�.��5u��� ���R�����U�J^��X2�bڗXԼ|���͋<-�l���Uܐ��a��_�oA��GO�`����?�Ѣn�Ds)}x�R�m,��I�W��zݥ�<�|��1�,j�A���uP�5M�5IQTɤ䍄����S�K�1��64�W6�?y�D"#T�$NQfHG|���ڃ�D��I m�&�"��B�Q]��!NM�l:�mݶ��l�{�Ab+�S��0�eq��}a\'��L��/�!w��MU���h�7�,��]�"�_���\"�O��Z�Z#l1�[Mm��Z�O�O���'��W�o��Z7�ߤ�NĊ��j�DZ�[#�V$�|�����O�@�����w*�0��X��1B�����.�>l���<�VA�Os�0�x�N�1X2oM"9���`�I�?�b�T�A��#X15e‹�(v�L��ٶo�lʍl�=zxjbǪ���B�=w�y�m����Ձ���{ў�x�9[�ڴqú�+/Xu��e��X|�����:�������ρ�?�Ef_Džaħ��O6�p�J6�Suo�NY3*
��N��i���W���w�ϊ*����t�gL��ƫ�A�g����p� �������V���y`&8�vH'���n�QC�p�����S�U�HV/q�%�K���^�M��'u��;kv�!2�";�i�fu$�T
�1�� Z.�{V�gs(FQԃ����t���T��6��)jc��l�2^��0	�fR�s�|
��Ӯ�ȓ<f)���� �~��K�􅧟x���=��w�u���j��K
vw���%њ�3��dp�JA�!�����$�9Թ�L��En��f��x�\������l
��������}��7�A&��z[i�pS�Q+>8Ż%�i��\�����DJ�P��g��%��`DD�:�NRIR�aiD4ATDN�e�1�D�,�԰�qY��
n��"=yY�-?����(�`�m(��wQ��X}�.���a�Y8vY8�Ӹ$��,�+6�=4�vIA3������K�:���ζ���9��G6�-� luͺ9�R���Ջ����Bn�/rG"�j��hm��m�2��W�.�E(�\���|%�l�aӊ���"�(Z��PGx&-w�v�$*����	 T��7'	쇨0wPJ�) P�Dm��a��f2s?���֊��+^o��kz��;����J�PpVQ���_آ�k���m�Jg�\6�U/�=�q�m~��zY�o�:l��`[�~��:>`h�|H|��;�}�ͣ��cz�81�D��!t�}���G;g-�sA���l�#+0� �x:�
�n��k6���So4A�B{��mF��:���.�5A�����}�
�e�k����e�.�3��M�Y�
�4�6`U�2,Ga�K�P
82�����:>���:�
b�YΎnG��y%��mD��n�����)Ź�LZ{����&�6e.�rOr�B�e����6<� ��h�izE�Gm<��h�(��e�t�3���א����������oe�Ӗ-_�"X���fny��~zsJ�&� �s�_�*��l��p��F/h�dp�qB���UM������J�O���hWe��ψ�y�?BUU8��
7"�����F�+��P�cy�2>������7?�	F��o���o���/~����V��l��E�]*�5t%�Ҭ鰜�J<����-��IT��jIz�Lk��8J�<�Fu�P�0�+t��G���g���X�"6���w�c�Y��c.��…��iA^��iC,��[�#�
���t_�QF�c�Ƚ>��a3�3â/��t�-l�tN�m1�rIH��d�r�D�Vy�E���k�*$�,X3W��s5^��+�~��x���O�ݔ���wq�'9�/e���$����P�A�Y��G ����t�\���;�\�7�!qu�x�-�J�o�7o�~X�;x7��\U�i��ܓ�{��i�\ZW�P�[$�N���Q��#��j
	
Jh��L<��TS�T�e�p��n
���\*ݑ�۲*҆G��PO*�DE�c�Q�-j�X�g�'X���e�w)ɂ$���WeF�"�0\��E�cT��B��U|ZAOd�C/ந�0]��7�ȕ��[�|�����V����)��2�gg9��ʎm��]}եmڸfeI�FF$8���I� �S�I
��'u,a,�ӕ���&^{��{/ٽ�s}�\{�9�0�DK��ޝw�}�O�@U)Ֆ1�Rͨ�YJ�!����UY$��9F^GK/X=�׋i!�V	�Į��P0`���¼�T�}|�+[�o/4e���A2�oK�s�4A�o>�-(��~+N�����!���_�\�^x&�R -_�t�u復%K��2ΩC��p��ܱ}����b��[�︳c\���E�$�F.����T�&|����%��A[�}�#�����?	�뫾)Q�/�����wgeaK���b��bqU���b�*���K���&w�8Tف�o�on��}�Yf��|L�#��vݩ��3��n��,Ѝ	�Rie�
72Z3��iQtbQaDT|�z�h�]�7>^�Ǣu��ѾX/}�H�/��������9�8f�P&E�/�d�@	�r M�D���“�cMK������>R}ܓ(%��%���p3/��=	�w/�t�8-���^۴���[��8ޓ��M��1v)�k�Ɵ���x�<ڴ��C��{j�|����'�v�el���QV��ߌ-�4��z�w����V��-��2x�4SC攍]��.�O+*��K� ] :��D��	�(�!U�D��m�#�t�h�u����
��X)��N��K��02�����K����M��{��^p�V�͏�]}ƊeK!�lWGKs"y�|}1/dbc�i̩�WG&�c��9�d�s��B.�|c�Sf�e��絝�n��
b6�N��f�<��7(i�ΥTC�J��.%����a�*QU�-�,�
��VM�"�pؖTU���|���c�Y��;��H6���8��i{�D���/�?�w�?�����<@�7�m
�_�;��
ۭ�Z��b�7�*'���׊)��U�֙��t��Bz�S�����sts���KD^�,���{��Иs����[����O�vrx��D�Go�߂��&�j7o_2�7�H��A���>����|A�}��5^�5�j�K\SAL*�qST��5�SbD��J�3)*�#�,P�Į�;D���I�0�phy���&�^b[��	ֶ�-�-�}�S}���)������?��_}��?�������������p�5W_�o��;�nY?6z�������j�DI����k'v�����]��o�Er|>h�`Ǯ��գ�(�x
Q�7������z2I�y�a�!{�㸞2��*���
�Ӎs�0G5�8�������I���
�~1��ix�T���9��p(��t��Җ�v8-IM��KZ���$I鰽|K���c���Y�\�ʎ*��aP\r�M�.�� OiO�O�q�C��iA��i���
��ґ�"��y"V�pċ�g�-��jRB��g�����?��x�B*��5�K
1�k�*	������y�@�~�	IN�^�'�r蕟ΏLoa�Z\3
��c�:�w�zE��;z�$-�`,:
��7�y#-d�i,(�7wum��Ivn���x`�K�\�4�9��c�&�F>�(�_�I�E�Ε�f\��n�nz,[7t%��f��1���s�z] ���)��c�'K�b���of���_��ʼn�q��˂�[v H�Q<Aʿ?O�N�!^��/�C:�*^&&F�0Kh��D�`f��Kb�hc��rA��d��#����f�U�6�ްT�B+f�Eܪj���fu����uM�s�0�W"6�/��c���g�sYH��!N���}8�����F= Ud��I�����j�4
/��*U`�՗4�RBz��A,��L���w1�
J�d%6)�`��ߙ���m�J!�e&3�|C��@4x�����fO��W�k��Bw�m��[[���<���Y�s�ʿ����,�gƬ_���%D��� m�r�R�S�<<Jm��GG��D?�&��A��QI���R�e���)g|,�Re.x��c8[}���������Ɛc��ޠ� X2�Q��b����p�-td�$��pt����6�{jm���o֟��{��0��X��X�9ΰ���3'-��P���f[Ô��~���}����D¿�N�r����ɥB�Tz��|���:
}q�_����R��|�8���5�3ϭ�V,�T����~��#�������,�� �1L/I�`�X�C�J�
.#hֈ�d�.Rp��Nq1/�Cow�x%t����a�@&��LH*Sb���!���b�|�3�R�DnL���~��3θve���joiSwi�΍���ccE��5=sv�J(DKf�z���v�"��M�ܫPfl�?���VTF�h�\�8�;�.xt8U$KS�z#�#?i��dC#
�!���$���F+C}��m��%CÕ���}��]m�rKs>��[��T����'}�f��['�IѢ��}��
�]3�� ,�}��������2��O�*x��#7N?G/�5��C�+��Z_;V�����p�)��
-B��t�݋F��U�3�K:{T@�(
DD�)76l�؋$�2!q�jy,�3v�8ݣx����T>	�1��m�AL�G�<�V��+Tچ�:NY�$��I����!�>�놕���^�ԟt3*��_u��,>v��Ѓ��}�.���Е7\u�}�s`��>w�Ȋ�Ż���"��/�'`y3!��QdotQ�% <_L��^iDkh'��z���A��cL��ҳ�[�qN:r*���M�Qaْ/.YV�y�),�>�X0�<���N�{u�9�mmG��Ξ�|�"�EE�m,w¡���`.7�r(���6,\T��E'CAu%�ZF�q����Fs�n~�,�J��I����Ӆ��m[�NH��ε��v�wM2��4�>���~(�Z�<��u#3F�r�clΞ3|�{����L�ŋg���@XJ�SBl;�$D7:�o��u4��L��ds�9�7V\��� ��	��-�	�f���N�RVO���Y|Z��s���W�n�%��t/b�k�����#�g�
U�/x�0o=�W��G�LJ��M=N����R҅����OxD&�� ���`��6���d^��K�'ۂ^3nE���8�cK���m�	o�y��Rv�˹R)G����A��
����
��ߋr��h�0�#?ϖ��0�x�sB��Z� �?+X�?�y�;A�E��w�6�Gi�';R�!�(��}�F���!/d{z�ս��^��������oC�"���9��`�_Hy��B���%h��&Х蓕?�b7�G�~�W!����Ż]�񐷀� 65�\���v+?�%�[Ivݶ�Š�N �}�f��'wmݲvͲ����Z#�K��tr��۷Llݹi����n^�b��3��[ҿ�����֛�$��HKS�;�����~CT��
�K���qJf�C3B��s�Z����p�?�G�w�����R5���e���J�ѱy�o`��߄e����4�h<ʭ�\������<���?�O_
�?�GѦ��i^� �99��]gu�n�~������pנ��J��&�5*=cn]�b���.1ڦ��>Z�E	Z9�x��=k�kڊ�t��Z��"$œ#g����js�x�4
_
����X}�TTmfh֖O�O奤����v�z�
W�>���ȧ�m��%J^/�v0��!�mJjv���73,%��¹=<�+LYqnzPё�������ʔ砫��z}
}�����
��$[�J���D�:�
��cd�3�x���o�5{�3K�8J�Gf�8Ӛ0�b��d��TW��U��.r>��D.��]�d�[͜-�m�}!9���L�h�����d�;�m\��L"���G���v{`��"��O�?����@�S���?���B?��_E�����^D_B��O��Н�t5(��t?��q	��"%�(�LyZGS�����8��
���&��MZ�?�ߏ������������I��z��/�;~��k�)�9z��_@E�'8F���݄�G����t5�����t9�]H	bZKY�B4�zP7�[Q��0MG��0}�a�E��Af��3kւ�`
�!�q-@+P����EI�7�''Q����,3��|&
B��8b�1dI'�Hf��;s�|��'��
'a�lN�N����\�lq��M���`����5o����2����E�鮌Iܞ\y�H��JQ�h�"�,�&�I{�]쎗�����$N�4���k)}7 ɦ;Ѽ�bҐ��L���Z4��H�X2��3�6'ܦ,�.��i�_Wt_b���5�>������I#��Rp�/�,�����Boa�rI'��<��
��)M�R0��wt�
��X=�lD��/�%����8�ez>�/��>=^�vb�iɮ�(JfM�%R�r�[�����9M󩂁
�2wŧi��V�蚯���/��`����EC���'=1O8l�̔�n+�	E}�B[1H��0@zq�c۞��O���n?!ga�a��M�{�^K�tK�,K.5N$�eUY�lNu�`*U]����9����^m�Meh5h[Q)=8�[��^��HGY��R�cH�D�5�� :��*��}�x��l����%⑐�q���qC���]���F�`���Jڏ��d[2����Ӂ����o�e���l���@`��
$�|�
�+��՟�[����({n�#��`�t��M���Y4���d"�ڳύ����2��I.��@���	$�O�f��U%�%� �6�\9h|nx�[��7ļ�?N6�fM��m�!�-z��#��53�Ԟ��W�;��1�e6��1�*}����]�m�t$�/���&��p`o��[���8α@<B��Br��ݼE��yG<����3 ��
�T1�Y""w��������'���Oo��� ��"�[h;��-�O�o��������Q�As��&/�6ɣAh��x�~� }k�&2m�K�p�G�39*b�.\P���,6�S��w�69ݻ�i��&9�O���Z���i^>v���������ʀ
��α��Ug D�"�J(��S���!7./����h0J��%�|`6�!\Ƃ�`Z�õ���?��>���!��!���-@��?hŃ�,m���؄4:��h2��`PE?�*��։ʸK�(Q���\Y�GVY�U��g� �vJ0���L?d_�u��⏞Ԕ���3R��r������~���{�0�?�'�XL�P.8��G`�W<�$Nb3�0O�hP��#�U�%F#�畺�Z�
�D$�e�y�ja���n��Q���\��:��k|Q �޳
���74P�x%*������
��f�����ٴ��F�I�]��P�F��5�[\)���6BmRo^:r*�T�Tf)2�+wu��$c�l8��eL��e�to;�IX�I�h8��S�->�� ~r�c�����x�9�۽]>1��v��cs)TD�h1�
�W��
s�NeT.�E�7�#��#*=�8�r�MA*H*������q�H��&���J�i�R����c�G��3,�yT>��2����d���}b@�̕��L�`���M�Tp�
i�%���3�i�J�p~Q����IX\tyK2�J&�-_��e.�(ӆ���-��¢5�g��ɶM��肾��߇��n^��-ۼ4O�N��ӝ���lkpՠeߔny���ğ��̼���Ï�\�h���ðXԹ��u�vX���<����h=:��A��H��N
��	$��~�E-�����@ѣ���sY�������_�ў���{3�4U�mbN��I�G'*�TCɁ�'dO��9v�<���^����t�"@�R���g�l���_�IT�8Œ�F���%K��c��ZU���oJ�%oJX��J'h��t�������*�
��\�s�_
���0�7��R��qw��̼�v�۷�j��]ui�*���r��,w��M��6��`#6�Pbz	5�$G	I�@��㒻��K�ғ)���rm�󝷫���\����Wf޾��η~���K�+��^�}��,�ЂG�~�c�8��GF���Н��z���~	V]�bK����c��Ձ��J�5�h��m��W�{iO��\��v�>NE��ZC`Emϰ�w��w���k�F���c�я|�ѿ{��;n>q�uW���i�]v��7�Y=c��v_$��VKYb��nH>�����C�E=�;�2!qh̺	��"��4��n�%;q�-"˲[�v�)�S���
�i��yOJ��vf=H�%�	Y�"�eIHTG�W�<��^������8E&�@���D;L4Σ�x�����gb��e�5��<�"c�D�Ru�}��AWH���I\2�#��}����uY�u�bC�I1�Y����3;�s����,F�k����1T-X��_x�"�E}�᣽��ne��j��g٤\��
1{Y8�}�@4];_P#8�N4y
�`�ac�7��'�U=�ʒY��u�:,���[Z'몼Lq��,3돻=�'����(��7����_��C�֭`����o�D�t
߀>R�;#*�C�.���g��._� !a�r,"�&r�*$r�H�"7�cN���pU�\/���Ȯ�g_�@��~��%��N��5e��>0���mG;C�����H%�[P.p��c04�˥�w9~3��7 V@,��X9�Xt0�lH��.U���E���B������#��M�L�L(�r�2�vQ5��τtC���i}W�Ei�_���Ż���V�C]�zD��r]H��\.ť�̢5�"�B�d�Gv��p��qEHO�?���G>�◵��N,�#�ԯ�����-�2�(�`�F��%��ZR�&�Z��m'�����EHT5U�F�����yU��!�PR�!���w��ƒTȢLg�J��ŋ�xv����m� �
�R-�G2�]Nؓ�͒����>Pʼ.�	q�Z�.�W+�Y1f��^O�3�4s��Փ0g7fH϶�-P��}lӶV��r�&SloWN��,	/���2��2_�k���O�(�*wD#\�B����,QN�3�����S���9m��rn�6*���X��$�Ţ$���}#4��7	��e<���Ŋ-���$����񍢭�Rh��9��P�PK��r�`Y�8P��a��&q_8��c˛�����eB���;���4M�[S�7��P�b����FS�ǣqέY�o4�ɵ�ɫ�P������+��Qn�Ş��PGۧ�
"C���iV��l��!�c�-�\x�����RY�\f�_�Ӎ`%�e&��?���<�|-��s���U�㣇ɑ��c��7p됁<(��57��w�0c�Mè�����,��p����@{��ɞ`�!�|Oc���/�mW�����>�w�|..[�BO�n$�����b.=��⽾��~�Lw9��Rt!�ZhGe$7,,���4��GaE��r-�B��i��4ډ�:�"�,��a+��e� ۘ�t&�ӳ3N�3u�t��xE��ۆ+B^��k4C!ES��{�_S��T�'C6�Z�Rd˛
�`�7�Ȧ�:���&]�ҪD�v���#��C!�����@5H�5ð�t�g{-Ӵj�r�){L��+:{�\�[F�J=�d���w���cP�������te�>Z�J�U�n���<�[�8Y>�O�7^TtC&�U�EJ���%��OV�����PS���\��J{%�譒�H�Rj� =oW5���l\]�}������T[w$0�"'����b� ���"�$�'�̵����2��ۚJ	�SQ��:�����x���G�|�k��<�u�'n��E���9�_�'�ĵ�/�v���7��c�3�ff�����I&�z��ˣ��n���)�)J�[�����/�4�u�z�K/M{�tݑ�utB���,92��ק�HblW��0��ʯ�M��s�|��<a,�s��݉yW?e�1�W:s���>��Hԣ���'#H"t�G��ǭc�����,̹n�������2�t0�
X�0�?�%YD�������9�\c�
��T��	�;�2\��,�-�<!�ar;w�̊EC��{v��1�ypՊ�s̟��g��i�m�M���d�;���"��^1XgOHwќ�7�J0���"}�,m2ad �xR֋@)�E���J��x�"�r�mr��)��("�J{;	G3tŋ�;[����<��e�d���/�NΪ��=V"'���,���;�b\�m,��	�E�Q�L��nX���lM@��u��x>�f4���3�FC_���`�2=�.ٖ�g�`u4��[�C�R)gmr��,l�T����H/�P6GĊ8TNf8��~���(��
I��	2 .qФfwO��S���RG�)6U�&s7cڇ2���u���̥�e�P��.PQ ��*kB��ѺH}(T!��M��q��8��5��y����FgG��X,��b�y��j`���q��4�z�Q�`��f0�+�C�_S��[}_t�"*"��G�2St�KH�$Z]��tLD���;�D�;wǪ��-{v����n^�n�Ъ!�	�E9Ȗ�+|^�My��xƊ�����W0(TfA��$�)6��	��&�cf���ܚ��Ճ��,BX�'L�-�O��x�Ů.J4�>Q���٩�B��L�,^���c�v"�'7�	�v�գ���j|%���K�S)M�ߠ�`s$S\�󴝞�#�|`q���ST����w� 9NV���3W�����kF���N[#�-�T��)���_�}K�] �2[�^(��L��mV�A��һ�(�*����M�=H�J㎀N$���G
%bJ���N�j4��!]p�����(�Y�r��iS�++�^��h�ڕ���.Y�p��9+
3��L�i��w4vT�+�*�!oŸp��9nN�=�>	�%K�I�lB�'�X��@�b>3;#��^��ƭp��/�&enQK;�X%=r�Mp6����ɽI�j�ⵏ83��I;*gxt\���0\�p*JO�.��?yoG��Ϣ�
��s�][��#	���a��+���y��o��HTE��D@�)�;�8U���H��?L�{��+���M�
��jH5�:]�W��n,tK������=��}�}��^�o��YӨ�H���M��_�Rqhf���������2�r�g�"�-��,�,`��\IW7��snutY�w��B;��g:��YЕ�I9F���O	�$	�b�CQ�鶶\��y^�9����D�s�M}QΝ�bhVm�W�Q��h��
���+TTL�>{�\��juŽ�� &�ϡ�uf
�v���R�3�\P�|��A%��
cn��M�xz�`�_�[����	;}�D�T���6�"�(�d�Qj؜[�LWc�^�h���	��q�zI
����7�y��'�d�v	~�P��"Jk�.^��(:h76c�%��,�c�Bi�2J�x$�C.Y�]�x����4e�(�84�J�yt��l�4(����t�h$F�uc��&0��ݲKv�F�Z8�v[���5�~����ܩ�y7���������7Οw64�n�p�N����%�sa���uJL� [��L��7!�,s�Rv�<m��*�u�XM5r��A�J�Wj�u�iӣ��?�j>Q�]�fY�E��v) ��s�7�GR:�N�4��ߐ��g�A?G�+��䃏X^۱�?���_��D
ss`����t��l�b	q<3��`\@�7�T�5��~К�?S�ui?C��N?8reA�(�����0�p`P��(S�L~magC���!�4�jW�tD��.Q`��@������)�Ԯ'���z�(��/�V9�K.�&J�nEY�S�i3V>�w��'D�xB2d�]��u�"�Q�1�0~�QJqA�� ;U$&k$�������ۼ~�s4.�B@���Ev	�B�K&Y0�>��?�K��K��<8�V1,��Y��E���#�):/f̷�\��9�����6,�wl2�"�IG�k5'�9<!$dP���b��ґo�L��
����˜�O�wf�l��l	��8�o/=whFg猡s���3��{h뺁��u|`��N1}|�������ė�B��b�a^����ΙC;_?w������;fv�1�t�e����2ո�ےiHP�aJ�G��ƕya�7q�8��B*��ll�7/!n���:���g�>���^�B��u�1
`�RC�|�
/Y.�x�P��
ӥ�h��8o�d$˽�n<~���x���6�_��w�Do�lUE]�6
�'��u �'{�(%Ja�0�:&8�Kg(��	N�%Kl9rl�w4q�Ж��,�	�%x�u�͡�x^jT�[>��g'�e-�Õgڌ�$����ҍ���.�c��3�pQ���8"U��W�D�9�/��K��(V���W&<���Z�,>n��ŧ�b�̝=t��9�����T����pq$��'��x$Z]]���P6ZD�jzS�%NP���TW��0�J��nUQ��Rt
)J����Q\�.��{��2Y�!��.h��BR]�
��ӥ!�Vg
�喱Dd��R��#2�x���[���[K��������fi߂���S|��8X0l(���LjMK ;�/��~{,,�^�@�pD�\X�-���.G�)~�]���1yBǡ��Gu�K�F
Qh�mh�em�+�7�=Z;uӔ)�X[l��4]/��|x�5���v�$�o��p���ɧ�L[�������Y���&Fy��
���,��=�ߺ<d�b��	B�_��?�G5
sj‡��P�z��t9��r���*�U�z�G�LFhl�h�OS��A��
r��`n�B��ʛ��3s�J��wb�z`ZH�cz�#P�
XZ�]��C�\���S�$.:g�?]r�W�ߠlPa��wu�k.��:���������G���ҹ*^{`F[�c�6u��80|٥��rNk��T�;��=���ͽ�J[ϝ7�>�tݴ_xJ�����{�#�UAԽ=��h}e����?t��Sߤ�\��r{���`��&�.��js��k���h��2�#����U��C�c�2��UL���Eet{����|�� ��iX��DU0��Pa�r��C.]yI(���oR_I��˴V��}��E�ZxU��=�6���D�a���O}�˟���?�ɇ��C��زi�ܞ�����p�a����\6�,5���T[s*���s�0�tX�)�-n)���,�nyvA��p򔦱��#����,�!k������ˮ+�
�ݱ����T��k|V���))u�nk������|�j����uu�B��vJ���DB�ӹ<�˜�G�.ʌ�z�t���WtYR䠮R�A�]��q�DEy
�5��xÒݒ�ṤtczZ�q;���N��K1��dCq+V!)~���c\U��waIvE#��8���h̟Xqt(u�T�����B��Q�J�_�C����h%�&�7�Pm=D��R9�KRL��"Hn��O���|�Rz��)��&G�;�	�:�&8��a��s��:)V�f��h%�݀nGD��,��.����f,��PqG�u&��Kf@�d��?��?0�Ք0�{"�4L`�`҅���."�,���8��Q���fD����)�y�
F�Nג�Z搶���v��B�n�������Cw�QW���=����;����v�M׿��cW�����nߺi����]4wΌi�-���f��!_��3���hrzƄ�pF��5🔛�=�Z�ii�J�C��l�F�d��Ӵ**��5瀴�b�3�V�4?����9�GgL۲�7�����:���pޞ�{�+tC	�Pz�ϊ �BT�$a� J�n�\��ȹ����ͳ��*"5��	�p�Ñ��r5<��@�Q�_q.Z6L;f�4�� L�a;�a��7쇧{(�?2�i��!
[�Tx����sYv K��7�n\R��)YSը?QeM�eAĢ���ހ/�F�ݮH�^]?���K����+��w/E�S���4*����
*����aL;ӷ���.Z�H$`"
�U9�=3sX�X*�q�E�
�g`�H_�0˩Cy��sf�[�����K��i�i骊�d�'�$,'�=/�@��x1�V��>�u\���V:ӑ���p��*V���ӆ�X-�R�����Ņ8�S

�pS֯2<\��ž�B�*h�@����ٸZ������z�B��)����j*Dr���2��肚&|/t���%S��P>&�PZD_�t>��>R���j�^��mX2�Ml�OyĄe���>�bM�`�l��"���
��D{C��Q�]���
�F׷w϶���v�m{��{.�{p玭�o۽q��-��-�]�x�مE��v��4v5u��T&��g����$t�I2��T��	�����a�o!ig
�~�1M��Y�Ȗ�T74��*~<�Go���=u��Cxw:�\	��X�|�H)�TW&�WW�6�!�*E��we���&�*a�Uar�"=�<��\a�;Ov���q��I���oQi����h6�pס�x�꬇.�2<x0��C���^�2���@�-�{��t��I�l+%F�'�oX���Pp���V��_�tm�9K����kR���>��G�5��l[�97�}ߖ�C�&R������gz��+�|J�-f�J���-��o8T�����$����`�K>=�Bvў�F����EOx)���`�ҕ| Ij��g�&�{�D%�:�@i!���+����4�z�	 x� ��I5h#o���v�J���m�N���%Kz��K��^���E}�}�tC<[s#��`u8�*lG<g3���,i�[;��Tn�@�Q����TF�3�y+e�rX�:�ޘh��z���/��ؽ��74~���.^�|��W[��cc`���O�L�0�qw&T��dB��P�uͫ��|�hJ��ӎ!�����vǺ��Vo�n�2��D+�%8�0��LJ�0$\!�Y��J�S'�DNsqى�4%AC.�2�9;������O"Q��!(I��T˄�{�;#��'���Q��F�Gf���N�V^�r���C�֯�\ѹ��o�žY�:"A�f�1�>��Y`��i�8�Td�N�HN|��ꈂ\�����%�D���u�DK����1�D��e2T�rH�:�<�w�W��Œ����^� �,�g�p�Ym��_��O��pn��C�r�d�D&�?
��<����p��2�۶"�G�uEWr��鮈w�xM�W�k‹�����Ť,���:�(�������^��9;a��I��N��i�X|�,�)Ӧz�<�����A�'�2_����Sߦ����4t�sf67�R��M�Z��a�_'�]T��(��Y0W.#^u'���P�;��^-J�70G<���=H����A���5|#q+ƹ}�Ͻ��)t�`2�B��0]豭��s���>��7��:�E��������N��c��fò� s��Z�&��L���…o�U}�]j���cG\��o�?�����#?�����yǭ�\���'��(����1�q���}���_x��s���0��%�ۄ'��*�X��C����kXe�����>�+���<_�.[���{IJ��R�bJ��K?�%^!Y�خ�Z��=/SΈ#� z���s���"(��{H2�����;Oύ
Z��z��e�z!�
���x�3��y��w�n���\/�7��>u�N̡�	�W�>yX������^eI*b�s|/�FU��^�.B�*����s)�w�R��7s�ۋ���
�*�-�p�&f���1%���tg(�t�
�z:�Vt�m�9Phظ!����o�p��V-Y<w���m��u�B���"�\���p���,g���x�jMt�u�G,�� bn:ΰ����|���c��!����2�:����F���D{~�=�H�*s�(��T.�J*
���
L�^ 4��nAx�?*��-	�~�V=FT���2����ȏ��*'��EU؛h���s��6�^�,�u�'��ʜ���΋���d,3z5w�V_�=/Ӫ�B�	�)��V�zK�˕��?Ƨ�[�_�κ]�xl5 	�X�'��
�I#a�\�D�0��jp��6�I�.�M��Ȅ��8��c���Y�t��c�����C�3�)c7�`�,a>A�$�LRY摆�E�?�xQC�Xa�Ԏ��?��1u����
��NH���0ްv�mPX�w�mP��x�H?&O���	�Jx�l�[�At5�.�`[�l��W�}��P�M�!$�<�f6v6v�㰎%�
�N��Sv��ָhB����l��Uz����.TG���ѫ.?|��}�o۰v��%����O��P
�f�� "�i�0�&�4��'��L.��.-�p�{&�vJ&s/���#��5Gj�-� ��f������y���p����ݪz��]g|��J&4:×�b��7v����p��dж$�1
)>��J'�����\\���(�<V�I�%�V��(A��t���A��P�?Z=
��Φ����|yP%�Fjf�_�M2t�"p���G��S&WĘE,��J�}�
�U)������T�~�<)]n#�D��9_�!�r���G>"��6 kd~e�e��5u���?��<�Lm��ہZ��\��3p�r��i�o��t�׾y�^��۵��Y]�4��2�$P�#HJ����@V��.gn���g�hVz�f����r̯�ű�L�ӱ��u��*^�H���N�K/~��+��b'~�c�Qh ��c4(�)�F��B�~O�O�VWǦ�<��
��-9ʬ�rs��1���\��r�s���@�nK�̣��y�Pq�<���F$D�<x���t^J:�阵2�)�m��ȑTs��\���;X,�X�c4�?���ᵅ�B��r+��s�g�[��W��h�R
RBw��]���ҽv��.��mc�Ӓ�?B�3���햌�v��E?���G�tK����o�}�K��g`�"�Xϓ��c�m-~d��S۷3��YN�[�&�ְB�7@HC��cXZ��Ŕn{Xt(�1��09��ڹ4M�l,�S<�iI���tG��r�ã���n��j�%�W������}�|U��e��͜����I��h�ܓ�����^<0����I;���6a��|�>�{2�~O�^���_��_����U�W��?��h�OO�.��qS�Ԃ���&P;k�>r�y]��]睏��w:%�o.�|�X�C/�?���3g�ɐ�Y��_u��h�CK������>��z}��	����p���Mx
��iW$�zi��a|r�e�KF��:�ͷ�Y���u6e�o����½��ye��7~��^�6G'�����rBe����w�/,��L����Ш�����M`�)�e8�����SJ[ *���DIV�d��OtQ��痓ߔ��^.�N75���2A/��Z�m�\m
~��q���&��N&�C�n�s	��ݯ���D�L�Q��>i�534��h%ڌvS���݅^�˟����D	S Fiӹ	�&��}�� �@�L��$Wa�$�94��8�G��R$�*�d�P�gqFM(�1��p��6窍T{����c�>�0��U���"���ƒ#�}k�w�}�W^��[V��ݣ�w�t���?���?�1��{�{>p�]7�y��W�p�ǯ>r���\t��=�����޺k��U�W�\�|Y����3gL�h�75��V%��V�Y+�YR�������&z�m\��R�r(z����,q�A��í��X7�i8��.��ײ�����v�Վ��Vs�t�`4>qZM�8g<��^�Ù������Ja|�m�����=���k������1H��p�Ȅ�����\������m>��@&�a	�^����4�*�*����~��)��7uJ}}���E�ywm�<���\'ȡ������	r�&��p�F�F\�1P�qR�W:i%'�H��`v�x�qS�]("<1�:� �/w�fs3�ώ1J~3��|�X?:f�7~~�ã���h����x�c���z�����`IW��B��pm��<m�$�n�1%����ms���)J=���J�%�B$���"B�l)��W��D�#HX��:?�?��xJnD��+�_�'�_(����T"J�8�ֈd�D$���Pp�z0��/�]4��,��dqJ?����V8kOɈqh�I���8X�o�L1:Cq&�����r�:���+W�G��}��1"�!��*HW��Ie�}HvcM�hI�D���:
,ٴ��h��*d�F�
]�f�nF�����B�̝]���9�5W_C9�j��m�b�.ݚ�Ɖn���!��$�{�����:wh�JN{��JE�$\��0ǘ$�>��!?{�.D ��'���6�U܉�\���sxS!�k�[�OE�[�#��|l�`�)Ҟ3hϝ���`����F%,�IX��i\�'+���������{Q�h��.c �'f,��\	�R�D䄌����-������E���z汏��ҧ��ܧ>��'?��cO�%��;n�
�\}Օ#��z��]�oݲi�ʥ�{��^w#�68��p��ν��\jܽW<չ�Y���{Ǽ{3rܷ7�>��@r|1�&�)�Q�=��h�q�X������B\�%��n~oH$��[z�7���~�$X�DA��x�[�	K�A|�9�Ko��]j]�ں�&F��y����)�qT����e���XK�~ȫ�@���9�ò0Ȝ~�r k�ES��MM�U5������і�*� �Éj��6���hs<V\�H/.���j�=p,�r�@���~g�R>�.O������#݂�n�H7��4����a�4|Uu�
�V-�?�����F��"օY�G��;�2�t�w:`�'7��X�眞�lOu���)p�T�?��N�19!QJvK:��sfg�M���D7h̆~j?���h�L����a�º��1�Ə�K�O���eZ�,���|D7lC������T/t��ݍ�m!�O���S���$K�^�>�z���SV�T�=����4S��֮B����}�7�پv��~��
�8���;Ӄ鴒�0���;\C`B��w:U�~Ev��\<��e�c�;�.�R.c�!�"e��L�gE�;tn<��,7[XDL$N"���K�8����j`��N��Te[��>&���w�,X��i�K�X��٣���e��5oK��
��T&+�����4�+����R*�Q��(�%5��c}f�i����䇜��1��F��Pq�	M~�� �d"��g�_��)��Am���o���P���%
3$7@c�
�ӧ�[j�~���~Q�^ ��O��~����ING`6I�cQ�<�nΕ��_���UK$��Ѝ�U>6���9����3�&�I���#�ܱ�Xj�&�(V�Oʽ�Pn -�d�=�{NKf�`R6ΘW�B_c�_��-C����܁]�/��6�x"j�Z:Pհ���轆�_2�-�$�h9ڄ�C��k�m��	���@!iQA�	�}�]��@���2��oA��W�����`�aJ�.�#J�>�#z,2� �A���߃�f nVe���R!��H@�FQĈF ٻ�
Ȼ���ZF�`8���D00\�My*Ӳ�U��im���2�%�¡R�ё�4������<�{��A�[��o��³��Gy�����曮���ёC�=x�{w]�{��m��m޹a��Ux6gv׌)��wPRm)��ISqȞ�~��7h���˸F�,=�&`5L,�	2U�te�1��㘌o���0*pr�@��t�C:�,K��F�kjN���خS].uݳP\�6�b`sl��A�O��˥���]�k�Zf�����+W�cy6ϕ5󘙒/,�5J����0��?��z���T�>�zU��X�۠���*~�e�&}Xmp1�Ypdz��ݣ�4>h�]v��W*t�L�s�s�ז3T��أ���k��J���g�NJ����P��9ď٩N(��Y�
ݶ�VZH����"��(�-�r,��}�<T|��	�c:����7����[��ެ=r���]�x
����Hӷ�,��=d�\z�/�%#U���L
$�"I-�d<�i,ٌS,����Z`<,Ք݂H����.� :3l76���Ǽ�䧮���O�W$"�h�T���SvF�w�̧)پ3%[xm%�8��;��㎡�d�f�⩇PIw�i��;��ih}aM*LxHA� YT�a$�X�E��
CQ9���
�^�{؋�Ҟ��U'��'�M�����ᓒ���3M�
�V:���s,]�I�~�O��-��^g_�|y|����ѕ�Á
��������d�x��5�����%�b'/(�Iʣ�V�e��g���nkC5�k�5;؁s۹(�6���rt
:��.ߎ%���pڈ)b��C�!U�T*��H�DD��`��uc��}�vy8���_{���-==7\��'�^5r��\vp�Żwn�|��7m��г~����zΛ녗��`9�kxv�~?C�oi�(��W����U����*C���Y%.5Uʌԑ��/��)�K)u@`�Y#_.��
��T�Z���RS�Z��\ENU-�]4�vyP2E�=j��+�,�ɪ��k6o[V��2Wi4��')�0�`Ac�s7|�'.�9�v\��mX�D`���-+��7,+lz^��jI��s�A��k۠����h�J�9�ts����zm{���ժ:�iV�T��Xl�hr㠯+��\c�$�!J��{\*=���-Ҷ�mYƿ��yʿ,Ek�V�]��G����t:f��O�`a��V��J|���c�9t��^��E�Y9��	��l��ۻ}�u˗M�����^��ҝ��l?pӺ�뷮^�l��}�.�)LY:u)@�7�&+�Ӑx��-��<,��,�I���̷�aȣp�x��11V49��.g�ai�hC��L�8X3=�!�����"���5�ME	�UU���A�7~�'./�s��>�õK��E�m�&�u0@,k�	��c�+wH�ꑖR���Ry"��J�}K�	d����C5O	=��Q�@�id6�@�>�	�Q��Ψ�
6*k� ?�h���=."�}b�@\�@�2�ƌ����PZ��������E�2��¯��up�԰.�X����>
��%���$�Hʚi=%�w�V)�DƢ����f�F(���Xt�S��
���LJ���2�F��8�'�.�����x�g^z��{>�m��K�tf�h������_z�3/?���/>��SO>���<�O��ɻ��7P:v��{w��z���֯]�eŖ%˖,[ڿ`^���oF׌�Ιm���
ӫ��m�6��S@;������q(��m�d��,�q�1������if,)nR�e��~����3}��{1�}P�V���y��l�e%f୩���EI�
R�|+���da���'�7�Y0�����[�g
/��n���*2�j!�H��y!̂��]|�mH~n#�i{�c�Dn�t�Q"kXq�
�U��e
��
Н�;���9����uW]9�#ל�

����o���+�w�.?t�{v>2�}��k�X���ڼ%�����)��$I�z��,�`Eٻ�4&�3EP�UF��Li�:�S�n�X�l��C��x<�+)y�Ug<�d6�wq��J<�R*�8�mhZ��z��EWPv�V��7$�)ۛ�z�x]~�2nl�t�1x:	�!K	9�Al�0�M��͚h6���$�:�	Tٕ��e����� ˵�\��X��Y.���cG�\�o��֬Y�p�܎���ښd��?v�շ9z��UW^v`�\�{��{�߱mî��֬_�~���
�]0w@ɶ������֚ol�����;�j������#ϝJ�@>;)��_����_���p٥�b�0V<tVت�ߏ9��4X�:���VX���I�c��Ml)b��g��7�:�::�=zT��
�?�'�7���t�ogs�.E��˖Ֆ��������!N�
O��C��K��.�p�6�.����dy쐵�fІ ! "�BÀ���y�!�y�c'p0��Z�n����1��7g&c�(c&#��0!��X��_��¾	mzl��_�с�B߇��e�����ć?�?�{>tם��r�
GF.ٿs�lY銿+͹��L��E@�,�R)W��'yݜ�����[��@ܱo�=b�_棢.yC��氬k��K.ɥ���!^�$�n�7���@,brj����w����?1u2�fU�1&:�	��J�3碲�C�����o�#k֌�찘}gO�
ӵ���Pၽ�R>����
i�d� ̡aE X	��`�i/Q�ċl�k�Q������B�P����݅���p����7�t���ww��~�Mw�|WIep���.�}���:o�[6�Z��n��i��;Z��Mu�^��u�;r;��0$?=kǥ}�Ÿ���٩��w�3)���q�����A@����X�o'���h�?��TzE�J"�����0"a��|@9U���F2��t*ƋT����?B~���8��1�=CH��lh�\.��bΎ^�	Ώޠ�
�` ��``�"���%�W8�����=�@a�UW]v��V��ꆫn����F.���ˮ���}ގ��
+��ڻb�����.�7w6$>����m�Uy���J�L��_́�$n�K�r����{�r����=={���z3y��#�|��:�˧�
�.~Q��l4�z��Q��,�/���U/�ne3�8�_�u�h��j�K���?I���Lf��1z����4P����E��O��}���@q+��������^:�p̺�*)�4��o��Ʒ�=������'��1��1Z��2��:�sߋ>��A/���n~]!��T�J��/`�4	d.�.w��^$�'�C�`"�J� �Dqfe�L�p-(��@:%	0� ǟ[#��8	���$IT�H'���HHW4s!������r{��z�F.��iuDR�l�{�Aǧa��׶�t�}
��ed��ͧ�
�����G����ѻ�R�����Y����3����_�!�*�)z���{�Qt?�ݎnC7���h����F�AtX�2�y��CF�������ߠ_�_��Ҷ_�.�c���������+�i�/ӿ@�A/����h��v�A��cc�ӿ�)�t��ӿ�(�t=%7пk���*�����>J.�{�t>ڍ��д�A+���Cݨ�>�.���V*X5Pr�H�*Qt��
)���o��W��8d�q��T#fh�-c^��@�S�+K=u��
w�@?8��qs�W̎�D8�R鱁�}c6v�Ѵ��Y�+g9(�ce��o�d_'����� &�|&��[[bͱ��k�c8V!l��b�S��{�x}v���jj��T4�Iج�6Ea�
U�r�_Q᧛m�e�-��N��j���Ǣ,�d�S�!��Y�@0�՚�@&А�
Nw	�.�C5��zWy9<j�v�l���O�L���M�NY��l�U��n����+���2PH&�a�*��������d~����*�N�C8�Dϡ���q��:�:)R,.��dY�t�S��t�����a#U6aI�յu8`=ӱ�r�{#����%K������Hݔx^w��*r�F��\�U*�hS
�� qjJ���Ј���b��.K�_�r�&�b��8#B�A#D�5��B�U���*/�H�`Iۓ�(��.�ͽ�my�pT&�����B:w���q�0}}�.\�I�Q����g��≯����i��P�Gl��x,�3l$V��{(EW��
��"�6���Uh�]�B5�:SS=܌3(mdҀzb�]�xve���
e몲C
���>��ru����ǁG+�����+_}��͛_��ߏ�a�W�����������������W������/��/���sO�=��Ï�ч>x�=w���^u��e�^���}��޼s���7�X��w����O�y3j�d���'�y���^8dGfZ��+���_mǛ�оup�qgȽ9��%{��J���7�C��p�b�u'n�F7��:0\��qE�|�~�p�p��
���VN/���[���倴�]5�#���1�U�//�1|2�4�{�F����B�P�7|�ٗл&�~"*�JQ���\�����5�����&dҮ�YZ�x*��Ϡ��-�N�g'VAV���h�R�~�2ڌCj�<;ۖ�=�)��Q��xA�6xOᮝXպBANQI��0�\�K0Fd/Ox� R�����:�e�1eMF�rCl���ݙ��ܦ�d	\���)�8�ppӒ�K6@8`S_s_�1��|���.[��i8h:�Su��� %!��|���N�q37���n<��l��|����!44���"~t��⣒�+Na]�=n�����5f�Ú�Eī4�Kt�0�� I#�#��S��n����Gz9��W���s�Z|�v��秵���$�~��k��T�,"���=,���ƿ;�|��R(�i�Q���ZCf��O�ҁ�%��"�DW�}�.i���%,�����V����u]wΤy����&��l��+Ã��};����ގ5A˜��+�"�	?b{�鵈��> �P@��?��a�Jhn0r�`��{1��d?@��TW$��{n���vnۼf��ys�;�N��ꫛk��R�lE6��:��uo�{K�k��W�Ѝ}e�%��HF`�`�e,hp�ʇ��˓�:p	9K"?:{'�����)Ű��Ӣ�:Q#�DW��f8-T���	i4L��	I�:q[2хJ�	z8����V�z@�'���G+�zN6M�@T�tȆ��w�R�g���|YW���$�"2_���W��7�n���,%Y��eޭ�z�~{���9�e&e�7�:o(`�MQ�/eE*�y���R~#��^�]����P�ucѱ*2�;��Z�,�����c�
�7wo��#̽!RX?=��?P(��K7�T#t�5W]w�V��}{w��tp���
�׭X�`��)mM��kk֔�o}m�cN@g}���<_:�F%=���1܃��u,�wlѾl���6;�|0���*�]��O�����Obo�n���{3�]��j�i:X�CA��
�C>�E_��=�G�GP(���!�p���)L�02�l���ͅF@K��aʪ�b���� fa�Bv\.x����I=)���AB�G
zGN�<�
\v�����g���S����.;|��ݗ�>xх;�ݶu��5K�f�8�O�#���3�2��}�zΰ���f�.�����‚J��Iؚ�m˜�
�粕-�G��*��H�@Ke;:4Z[GY�Fg)��Y�Ń��rR˴�=W��^�#��%����{��=�L��)���=�EOC��/J�x^H)�%���+���_ej-N�}�ݔ=n��m��t!cG%IPez8_p���Y0
�A�wYBjWW�=��{Y�7M�O�X�w4[]��ݷ`�J�|����A�ˢx	^`ȏ*��(}����b]�cKw)L`�xk㵙�b�^����8Gk2�a��r�6X�]_&:2'���F��H�
݇>�����o���UZ��m�N��#����^�Q��7u%�)�2�vo��y$��/�0���%kO:@<ou�g�w=�[8ù��Ij�dM��.QlVt�2��lg�;���'ߛz���x��J������#�?.b�d�.;��3�.���"j�P�?�<.�k8�����봗L��:}%�(�"��usY@ˣ�aqa!�Z()V$��(�3���AC�`��H���J�$�>�fΘ:��5�T����ECA��hK�D�uR���'π餭�1ȩI���
G�+>��_�jnNu%=�:�yp&_�����`���t���˗/]V���j^Z�9�벐U�����:��c�=�7��{��������_��u�a�5�QyžW�i\�|��������'����o5<c+ۖby��Rh�E�C"`��r����O$�#4��Io��3v������s*[V�zԎf�s�4PX�0���\
�ydHǩ�RMT�a$�<�����54�R*tM������Ҝ�O��d�ѐ߶\�"�J.�/��\�����*��� ��d4`��80��>P��XQ������-��X�W	�?￾S�H�������AE0�G_R�q{q���d�^v��a�8FE
_����1�L��7�}�^S�2U[W�/�N�o8h�j_�UE~����N�8��E�
�e��k�Wd7�)λ��}����P7ZL�{Sa=R9�S5�ى�&>ӫ?�+�2xC[C[�錯��m���ٿ�xh�TƩp�4���6R3��LQ�v�3��iBă�hE��Ǻ��}Q!����C?�_�Mbl[|��a�ӭ��~!�����tSs_@��Ż,�υ�;��E�c�)�
l����&�~�J�&-�8��0��`c;�jJﻻ�I�He�!������H�1eA��,� }�\QSQ�ɧR�T�q�%8�3�R`]K�����@�8nO�@x�)��#�0f>s�ȝ5Cn��h�D�O�q���Ī�*~/�[�}���zM��2�,��W���p����4�WJ�U�\���{��֡J�{�
���I�2AE&����e��-��0�c�MvR MCt��AkH믯_�lI���{f��h�o�oIӗ�OW�KL�	�����~�h��%��4F͍Mi�&���'~�(WF>�����
����ѯ�Ҵ4����������t�Lq�?:�-�R�8��R�t�4f���V�R|#�V�n�-}V�Aw�t[��_�dJivgl�%����k�ry�
��_p0�︡p�-�3�s攎�|C���?�w܈��K��x}<Q��=�)��*�Yu����J�C���D��^ں�!�C*�I�����{09��`������9��wfvgϙٙ��iuXZY��$[�j-��W��	llL09���/N�	�p�C�s8�x�;���$�!�����C������UOuwUuUw�{�T=�����G���i��D�)����d���c=�߃������B�.�M��yi�[.�m�h,\�9aX�v��r�(�3�"�wt��c�=&S6�Qu��C�yAV�!�����l�LV&�}��a�t3�����^~g�+O>
�҄76QZ|ZU�.�,�����~��j����2�
x4eq���]^�n�ϰ^�l�ד�1Ze�
|^�x�9��*��Y@0�:� 8�N�ГJƢh���:R ]��%�G%�X�Ԗxt��h.zB�*��=�{"��,(�|���=:��~����c�wI�]��id?^k?�Y2^�����7ρ�~!.l�
'��ZW�Y<AT�
��l����*g4�$�,�"�$+(�L�hw��a����m�L����|��'w�m޻�5�|��	q7P;�n��n�{����R����\Q�F��߉��b
7Sy�Km7�
:J��ZX�I�uf��e�v�,���];w��{vL��=�c�^����fR���\*�+�*���՝s[��xn[��d���9X�i�ר�x|�1W��~���u�Bn�?z�����V�Du����]r��lڑI�$2��*Of���d<����>{��]��Yƛ���S�wx�*���5�cɟ�BV���A����ؿ9�f��M�%®���@)��Pvp�x+��D���1����D�fҩ�m��,$IB���a���IB��mx	C�&��.I�_��`\�.��tn�St=7�n�!�S�4�`����\z`w��A9xP�>�i�PwBE� 1*1��L�HN�jp���	sv�
����d,��s��iP�����Q_LVs%y�bk�d���=k�=�^����
�-z/�о�G�ohn���S˵zx+ք:7w뷛��m]����C�LNXߚДN�``Q�f��R���i��?s2l�l*�zĠ���UL��e/��C���pҒ[,ҿ_t��j����L!h��_���s��_��Eowء%�96(໌
�V:�q��D<pc��[�Sq�1�
EE�[�04��zK��w�������@��n:yH
��!(���f�}�����U�s䜿h�]�W=��OH' >!��R�|Q��$}N-��'T���>)�O�ŜW����!�Q6-�6;�y��֕�7S���u
6��#	Fվ�,��M���
UTd$E��ي�����$��X��C9&(D�y��h$�&�
C[�����;�\Z���aG�����.�F� ����^����2�G�Xx�q��O?���c}�2+���-���}�c@�ۇܟl(]�9�؜b)7?��Z\{��4=�=��PT��f���lf���9�c���p�}��c�7����nE��S����Wn�]6-�t���-�l���[�.u�����1]�#z�C���eg�g����.��S��ʿfV�Rx�p���FkU���%�6�;P���5�g��)���#Z~�I�UR#�b2P b/�i��
>�yD0}f7��l�c�P���
�*��u���0��o�m6��μ�-oz#��t[c�9[���g�.`w
d�DbQ.�2ĔR����ϲ��S�R�cf��9N��h[C�<���<}���F}9ō"/��b8�m�q��MAǁ�u�)=�~���#a��3�e��̖�
1S��G
1�EY��B�֐�^�W���J�8����)��EB��wj�ɗNί��C�}�ٍO�%8>�T�ヱ��ć�/Rdk(P.�1�-�s���R��gJ��lK����̶��W�G�_���m�t��?�K����J���-��X^�J�[ �T&^m1��a�%@�G��>F�.��YA�^�y�8:U}�����s2�@CWx�`^���ÿ`#���B��	�|�7>ς����GB��Ĺ����0P�W=�o�n��6oX?��Y�
Ԫ�������\��
�~|L>D䈉+[1�o��C!��5�����¥��ւM��
�h̕S�
n�
��	�y ��pU��[c�~E��W�ٌ��YQ�''C�+�J>�d�Ɵ��pO�|�Н�頝�MA'�[p��Āeۆ��٦�7��G��5v��}�ɐ�i�ҌCod@0)j�y�횇L��"[ۿ�*��p!j'��]��.�*FU�2,'�F'6���z�p��-c�0�Q�1ʺ�k�0t)�€YP���EC�A"���$ d6�"ޏ��y�gU���XS -�̀����LO�=|h��Շn8|Î�����H0`�̞�	��<ʵ&4뮽y����ro!��4�bਢ�*�u؅�=ݴ����qN��]����Ӫ�	�ˉ$#>� ����J�
nW�L�R&�&e���I'Vl�/�ةK{�n�|;��Ur���$է*L�G�M=0|S�E�$LS䨲1/{��a*��$��?>�k�X^�7/tlBg�@)�?�Q����Z$�0҇2�m+�I@I��1"��Ɏ	Ld;7̴������e����W����'�0T�Y(�����R��DF��r)KR�)�5h�%�ɯq��>�+F��щx.J��>�X2c�U#��O���������Ql�F�j��޷��4��BQ_zM�-ND֤���t�>�o��[��fЪOԓ^gk{����%�[q��M6&F����/87_��zӣ��h�o���r�t�L��ڬ��9˪63VeM7��;ٓl��v�(j�KcC^C�1w� l�H��pI��^�@a�S*������\vl"�7�7�����gC������)�̥L祙���
��\/�>ubjzz�ĩ�N-����p���{*�Ze�ާ���qMoĚKMx�Ъ&�@~�ˆ�]9�3�Z�E������V��ẂF&�n8q�J@s3���B>d�?D���	�Y�V�'Iy�E��`����%�H���-��>���Y?l��1��1a��y[<�V�%T�e/�7Y��t��Y%*��m�#J�.CҎ��͢A5K~�3�u�
��?�I�]
9*G��L��Ί��O�ͩ�k�I��gj���j�Ә<{\VY�}���#�%��yjZU�9��|�x�40NT?eQ}�Yӧ��Ψ�(�S|�܌�5�ܫ���
��Y #B3�ÎWe�0~�e�(F�[Ƴ�Z=��l������G��Q�8}Z�Lg�X�����Q��V�p�p��]�����6��\�j��M�<t[�[:c������6솬dQe��(-5U��*ST�9Ȥ�&�
{������"��R[�(y�V���jJv��{/�-dR��Gb$ft���'�gтq���.�\��Y|W���B�Q\��e�.n��n8]g)*zA	;�
N��������~�)5���2FI�fn�0N��Q�OȾ�FX��/U�F�j�*��4cOA�(�=��M���ɳ�-�y�5�X�<��_�����,��S��IVR��&��(�>u_��\LJ���(���e9ڀeX�_���Zu��E�{\�1c�4g
��w��pˏ��0x"����OO��~�󜳲aw���&Ӆ�_�!�@�OΈN*���G*�fIq���c�Q��xU�1[s���v|��J�Gom�T�c^�Tj�ʕp�����5:!x�_
�T�lkh���~xl�D1Z�Խ�P��hV����\Y��@���mЂ���)�ud/%"���P�.GƁ8aC�	��0�D�f���$“�;E�葇�
��p准9�7yȐe��#�m�}p�#i�C2�����y�J�/m]�5�Wg�>�O��|b8��;�:$���\iID��h�'�~�,K�D
+�F��S0X�$�*�w'�r԰�F�4��.7��Q0�\�9*I�
\��~HR4�!����CY�у�����DUW����&��[c;J��ѓ�l��[^{�8�=8��e+��s��!��Q�ey-9�����=��lY��spw8<�O�d̽ٽв?#&t]����X2%�s�L���J���!o&�PM��F�D�7[4���3�"!��?�I�$����ɣ���C05�QH1u$i�8x�PfCi!�Q,�^����r�Q�-�od'<6fwrM���5�B`冴g$a0P��B�����N(f��mG�����v~tu�F���=;G*���{���-�O^O�����oY����wvo��XrsI�}������-N�H���Q;#��c45�E���Y��0�#̃R3��Au����6��<zB	��x) 1������+�������?������+I
��v���� ��UW>|��5W�����ǯ���ᣇ���Ё��Dz�̺��X#�/���B=����_�t
�����1�\�5k_x��&]�6��̮�I��������E��	<�O�<��N��ì�h�NJ����w{�Do<Ў>������_{�s�s��ԣ��$�=����x�_z�o���,��?�����A����xY����:M@T��:�B���D�(��p7윚H�B"7�q��I��Ur�Ѻa���8^
`K]�N�K��	J�ȦL���Tǎ�|l�F��ڂ���e&*���S<�P�6����

;I��bO0A��L3Kn�_96~�x��?�Úq����T�@̉���P2�x�
�߆������O��wsB�`&a���!/pn9��1d�v!u��ո�`����N#3U$/^�a�u��d��i�<s�\�'|�﫶�U���uCO�͵�HAp��C�d9$4�z�,����z�t�8V��0�v�,�����k�
3��H�F{�w�i�d�@-�/���~X�'ݻ�}ӒU{H��Ԁ�p{�>����c��[�K��}%�"�%�>���Tf�X�(X����>+�o�����>��:���1�&��}���ֶƧ��p�8_ Q�,-��3a�];��ߺ�zm|VA�|Y!|Mr�)RҸK��m4yhZ�eiTS��+��u��(

W�`�+Ś"4��VVk�Lj��QT������@ iۋ�\E��M�uII��TF�@��*ƇM��Vث��hV���ײX���'�� �J0L���胋oL���J^k�l:d�����
ɲ�*������=٣���mb�VO:���n���|7�0�{��]��z�&hg�8����;#�j�J��PE%��mϭ�oVGff�73��
��/�w����?�W{y��z>=p�^K�i_�6O-���� �}�6�y�@���.��)���{x�=_��m�{f��O�n�;���|?��:�G����`Dw�m�����V�R;�.ڠ�%5D4�>����Ynk����w��~���o�`C�U�@
�N5���~^k>��Z]n��t/�U���
UW�����˅��9w��M����C���P<��$hs�?'�9,��¥�p]��Ο��㱓:�1��IJ}<�2)�i�/�)�ּB�ےI��
$�B�;D8��Ta�x�(��$
���UM�G5�n���ee���E�n���

�E��E�>@�k�[�*tM��݌R&A�8�A߲	t�:'L��(�{�=^��1��1��3�DB<o9N?��7�:r��r(�ag����}yjjj�����f4k��	=�i����7-�|���7�?��Y��O���,��aW����(T����i�1��P4@y��C�3�=�E6�v����8�R��G��F&sŠ�]�YSH������Ɉwʹ����1]��G
�Ư����? ��g4C
����S�(�F��F��d������B�'��$&` ��a��a�z��?�Q��<3BXT+��(�(�F���90F�q3�������3~��́�l9�p�5�\w��5��x��4�:��xҰ`'�.|`�6�q�؀s�^'7\~x�'�k$�̦UbO���Kz�߇ub
I���@�`^\2H��ZAҟ�لv�S}��j���$9��]{�Z����㦣��V������ܮ�7m�T�e��;ͯ�5k>}������e�2-���ι���o�x�(�����/�P��W."�vc&|�}���*��g�
q!
+}L�y��4�6����XT�h_��.������{rZV�Hi�Jb�D,���E��[׬�����d�H$�,�PU�1š�5�c�Mx���H�Z����}=��R���g�l"�H���x$����Fm+h~�g����Q=�&*�"Kܐb߼?���.�)�.�egs�������{ƞ��[�f�l�U�*
�C"}f1��u~�ܸ0oc��x¤�
��S›�{��%���i�l�./�"QBt��Vgyn�oz�f�1��4u>觾�E���;
S;�Аb��QUɝ0g�"�
~�{�y�W|����mw��
����k�8r`﮹���O7G'�'�|-X-��K���.�CU�wY+C�ߍ3A�㺚+y'[��Ε�p.�������zF�*�]/ϥy��5�-^�H�
Lk�������^�q�[4_��?�s2��Ԡ��R��z��P;�hG�b����khj�;����yEC۬��N���OX3�n�H�9���z��=�*��-oG�On�(R��
e_��y���t��zPUFUYZ��L��d���vC��s�f{��?��V�������:!"1Z"�Dlr��z��Q4�\���o`^%�­�p�ɉ�[c��	�C�H�a2�٭���p����Ȋ�xC	���H��Y�i���'هx�8�V/���El
a]=	��&޺q��T2�� ��ם��o�d��
s�3�p��|�J���EY�57��E����YZ8�=�(��O��S��w�X����G���Y
��e=c�Ҿg�2�+S��+���O,�މ'��G{L#�>h�{}�\�e���h�߄.���`��W/'�[%�5�������{4z;��f��"!Ί�OKq�7qk����'�6]k-Ӽ%r�i%��ԦS&�Ժ�4�^���O�*XB���r^�`%��n�*.�W�r�<6���h�|6X�?Ao+��`���'��/6A���
v+��"���Q��#a�l䪁t�$�>�BFڼ��d��;'���J��Ezq4��/t���e�˨�:���ÁxV�3~A���i��埄����N�>����@q�Uw��V
�'��'X��%�F��0�^]E`A9���)I�T.��$Z#� 	��©.�J4bK)��^�[�Q���,�~�칲18�1�-x�ӍQr�'O\{4�M#i~�C@���|��o�E�mXA@"�y���
�W_I?r�;N��!hފY-�B��<�(�,���)ι)�A�cB�9&��cbe�(F�c�t�Y܉e�p��p{��f����d���/e2�����ɬ�ӨCGIw�/�\5����"W���|�Z\F���4�͋���m0Ns�udxn�g��S����~b����R���qJ�GB�p΃.�AXi׋�a�ۚa4�߆f��8QT"A�t��qY�}a��ԫ+���^~�勤�>��QPA5�ф�/^hp����_�Z��?:c��K��m.�FȔ�}�Z�p�ц�uaɯ��8�]([_ȧ�Z:9��+��">�!ѭ�&l��)��7o�tۦ]�wMO���Pj�Є����M�܄�a��S����40����k�!��-������g��YYI�x�����=�hS��Z��Q�YØ�e1��0g�F5��E��>�%Li_]ZW,�ێ����ʲ����Qʽ�ݲ�B!f�{��]r����̒��e{�ex!� ��*��m_W����灯�T�'<,<.�L�^�?��w��)	�ҭ-������|Z���+�����7�8���?x�zy�H_O.�IWN�mL~��Çve]�,������ZT@�
��!K�FT�(��,��c��s�$ó$��vA1��'���?ӣ��o�?��W���/����_������v�m�];;/�E���1�4,L��`�	Xv<%��s���.CAD�j;���i6��	�Wg�z�a4m�Ʋ�\�Υ�%�QA�oW�l�xf?y���G����\
��4J.��Fr�0�yŐ�(�2&���ݱ2�=r�+f�䨢ɲ.G=��x�Ix���
������*b�R��'��q�#�m�C�	��&��������/�7��U�+k1�a�1(�Uy���Z�Xf�iZ��>=&���U=K1�,�K�9�#��juG�4�5l�!R^��3�c$��e�����l��HJ��mI/�u[�?�z�k^C�GR�Gsd?����$x�����Do�����G�14�Kr�k�� �e0�\T��a�#G�Ր6"�pH�ԫ^��{�
L�l����R��d,�M���p���8>>jg 2����0��
+�����w:����a�Tka�L�idS���&(�r�Kd���/��A=:�M >����~4�
�w�ku���n^w�1:2�NL_h�nq4(�&��
�c-k�wBkD4$m:�e�ɸ)��&\��UD�@$���~w���Ɠ'�N�"C��T&;Ɩ-����˖����0��b2^�7�﹤��?R�����x���F���}�`.Z�u�S��5\Y|�mDsV��ZL�*��M����_�B7�{�[��H
��:a��7P'ē'�4
�� ���G�zޝ�U��I����z���*kD��]�]�7	�e�
�7��OWm�yfC08�O�g{8@���H:�q�m3ۦ&ǚ#�*��r��N������x�䁰�K��u�(�v ~7���\�b�����j
�$a'iI����=N1\ɑ�B)?�~�}n�;+�G������'�eE��ψx��4�ja
�F�8W�b�@�Q\ܡȴȴ�
�Q W>�r0�~�$_�Q<����ǻ��"8�6�[[��(�:�c	*�l�K����ٮ�7�D5��1��@ړ���'��X��W1��4퐗��K���`��/&���[�sc�u~'��hD��m��U\_N��3�L�gz��y�C'�v��_<~x,�[��k�"��M5�ޡ�
���%�h>W'~a��.��CC'��F�ڿ.Y�)�3�jĉ�K��v�w�/s˲m3����~�m��sV��j~�m�.�3>uKs�X�cY��~��+�g�~��1��q+e�TS"*�F�
ݛ����㻐��"lh��9���D�&�)[P\�H጑��m���V��Og3츟a�5���������r��aˢ���BA�]�<��6�4�B~�b�ݳ��l��Z(2�j�ų�z��ek#�V�5Ԑ��j��������a��I��wӁ�&�bd�#���b,?��V���V96X̕����F{_(�υ��\�	X�P�R�>'�s��
�����Eb���f��a3����o�=�|�l�4�l�^-fOx�=�7�	��y�<���0���	��L@�xB��D�J樐KǢvHW�!�</��F\�Jؙ�c�b��/`,��@�R!�ҾeC��9�+��KVPg���9��~�}3���cNn�%_P
�>�ϳ�0&�7;�ZӬUsM�n[8!d7y9ˇ�wy�D���]on��+\y�-%_*Ns/n7�\�Wq�h�D:I
�+Se'�j���(�b���2ݠچ:�j$\�zT���@�}5�j�$�l���S]M@Cɂ
��yM�a�x��v��q"�,�'�����,�:��?�5�&�m�:�Y��U	ˀu��bq����lu�����ڣ�Yr]m+�|����l��j[g���.����ׁ���yB[��(Q�l�e���Lg]t��}��髟t4u�C=�#�3h�N�
�����M�`N@���!��KH���˚�k�Td���"ُ�cM�yc��"w�CԜPe^����ǎ^�c�,UG��첟��Rj�0�+ܾ�vl�����|�7��$�E��z��,W�ڬW��ٻ�e���r'MFa��0bqn^+���D0j��7JAٴ����DY/�'�p8VDK<ޜ�U)m�nL���U2�IЮ@�zTE~�[�DU���QB�By(�O��*�Tu�2#pG���2��51���zR�L��!����P��	]��&��*��6r�|0*M�wʢh����b����:1������dI\n�v��8Qx���y�#�*��\��|�Ў��Ã�w��/��A��x�v\:4����RB�pe�hV�,�DU0臤�A�UI��}AU���x�y�%��eB.��ǨP*���Lo2K�S��ϐ%!J�<6D�|�ϣކ���f��׳~6�����B�Z����|]}z�O��#@m�o�Ӭ�R�'V����$m+/��Ծ������?����鷄�PAIaI��V~��x���r��0�(�h!|�Kd�u~u8\syt�}�[*���Zk9v�B֘=żA֌���k�&��?�ż����}����������˕J9�ߘ�to����Ț�wm��glF�rGFjŤ/����&|�\m�X��������(4�2k5��v6N�a��&�*�h�Dy����!�۹~:��Kh���jW\��ά¸oG�霬�ѦG�pDßF��/�T��6/���CGNR��뇎6M��Y�Y?;wO��}f�7��3�ľ'J�Y`z�RV���K�5��#��d�~���L�@��;�yV�'�KL���9
��ѕR˜��S��}������B&��Fe��j�0hiE�DE�'�F��V�T����L��y��D�����r.K����P���,�}��L*⸸�����5�b�%O�lp����K���6��_������ۢ\�3��H��w&����}Wѣ+!�Y��g�3���������P��6��5�k�E�ȓ���w�#��*:6)l�k0���J4-�3���ӯ�K��)��6��~�(���<N��Q�t7�K�Q�r�.F�өR::�*3�ۙdj���UCR
͇�#.B�җ��(�=��	����_KL������x��~��w�����틭|G�|��ݺu�h-��$Wa̭�pC�Vkp1���<2Yǒi�tu�%���
5S���q�p��3{rU�@�W��]�l��7^�ge��kƝ۱V�j�]�\�+��Ա�dc���֚f(-�V�ߪ�g㻮�����L�Z��j
?�U�ab���:V�vt���5�R���d��lGP�?�� �T��JhSv�5�;e<�i�)��
�ŏ<�
�Q=�=�����b��y���9)ұ�CEAwN-K����:>g�#�z�՞C'��ץ�V��6hE�%���_�$</y/y��?�B��	��ه���Y�|�5�"��G]~�#����.���?�@�.�2/ˬ
�acvS�6g�	|�=^%
��p����]0�`����H�B��;�L2�Y2��̈́b�ł��wmNЀ�[�l�"�LT�s�e�7�%3R����{��që{EIW��h�db��X�HueT��v�>�e��S���A&nqih`����|�/BR|����@O>�d.q_��C��\p�IdžU�A�grI��J�YcoB���ey6�.z4ھ��;����+�c�����2嗼��U�85�d�K��F�Gg������t�i�}Q�X�-�_�z'N���L��Q�P�)��Ģ�`j@SAYD���q�Hv�`�`T9�\��A��傦M���;ĉ�/���+ ���C��,�\#���_�?���<���|W%r݂Nt��ƨF�vFPe������4<�� �,k��G��	�F��u��K�/i6ʀ۠�Xgg��Əs`���yR
�,�FLB�s��@�!o�d6��ys�@v_7q��v�T�#�_�(Tz�Fhվs�m�zr�����M��+݆�M��ޔȴ�,5C�����>��XOn�����M���bs���z��>s���o^ߺ^`v�_�/��s��"��Ic�TJ���p,�e���}e�k'+#��h�	3���k75GG&*�=Å!W}
Z^M�,�Guh�VE���*;.�(�'xܖ����V�!�n�H�Gs�{�^u7��oE��(I�,����^����❖�ޭ�w��E�q��8I���/���:���e��?﯎�ɘKB��)�)PS	
�.�&b��po!���c�`!Ѐ��Hw
-�T���Fv�̭}�/�{�>�~��})����]��Ù���ø3���2Y���a�z4~4�6r�7�n?������P╥���TR��A�֭C���?�v�i���h����
ᔣ�Gb���-��3��p�'ƫ�^`	Mczj|��F�2V�/�����f\2�o!3T9��iy�G֥�4'R7mw���HrU%�����
����Q2��Wg���-�-�խ�Q8�VaU�ϼP]�b�MF��z>����2Bn�뛠�����ڻ�Z(��g�J�խ5�]�3���^�Xw���ƅ+WoX��K��z#��|%�c�|u�N�E�Y��9Q��Ō_��~��Ox�< ��P@qY�5�:S�%�Y�&p�=/ݨ���7��Ĩ�xY���}6��}�Y$�A����}��^ /��|��b��D{��1��o�=y��OX9��o�减��l�3������X�C`L��\�g��Pɟ��R(Np��UC�d��E�3d}��_Nޣ�r������x��@���Ѕ^�SfEB�$�J1����zHW	GT��B(4(Z	�V�!^]
��|�������e�kf�%�t�����?G�sD�k2�]`2�s���2��b:EV�?���J����r�<.�ky^��A�z���Jq��U��XVJ�Y"�w>G`�Nត�:u7�#�PZ�&6gDt�Z���J�:��Jn���Ҳ�(�Z�ڿ��

N�}}h?D����-W¢�U�r��T-���@�a�d����D�ޜ�'��0o�P<�0t����(-���aTRE����pO�2~S5���	�R�J��Y���p ��^�H�Qr���5RTՠ�Ɠ�h��~?9��zA�z�2�A���h?,�͔��BE��V4e��i��Þ���3���|mx���י��h
���κ��g�c�'�Q4��3\�$#�X>�7�ް*	4���	(�Rf+�g`j��^���]�|�`b���f��x@(�r�T�[v%��	2�8(�jn\���Aq��r��p���&�vڈ�ӧ�B��N�6�d�>��G���;mĀ�b���G�E�>N����������rc�
��&7�3	��P�ex��K�~�D�L��D��EI�.�^A��#���s�[~�
[7����MO���o6����l"Y5�YqR��M��\$���-�MB�$Ѫ!�!�a���<���t[���K��2��v����*ϗ5-f�G�����Mm���~Oʺǘ�h�<�ӛd/=t<�8��~#e�����(Vw�}�//�Wܼ��N��v	�[�&�T�v��L�-Q L���.%�O�����:V�"�fK� �`� �7G��K�l�Y��9<X�'�nZ�������dž�V��Q�Rl䒊(���V�ڒ.�5n�(���?6�
��#�Xl�&E!�P"��!۰��v��!ӊ�R��f�鴓׭`���B�pq|0�^��ůJ2#��JLј�����5��E>��}��2����W�5Mi��Y�����'��܉�l�}��H#�h��-�.B�t�D�1tc떵����nٹu���K�^R��&z'⅞�	��	���R��L�Uq$����
��4�dE�=V�T�8�,o;����K��i���܎MjEVv����D?�Tǣ^_#�L���f���맖t�G&'ִ�����͝>�p
:)��+��w	��2�d0`���6(�P6�E-v�\�1D$�F
�/6:�n��3���!�G���"��?�ޚ�-'������_�Y�ro .vm�?��~S�
V�.�˳�.�r���eꤹd�25q�`1;�on�v�B�F�VҶM�O�{���R�4�a��k�_�,rE���7va���b��(�rR	���K<�@?lSx��:�4I�#�:>v�[7.��� �3����Ҿ;Ԩ�f���z�F6�֊@'�u$�_ʍo�hbx�͋�3��H���ݶ�[n�䶵S�+>ӑ�xv�W6��͢:u��k��e#��zVق���akCVo;�"b\���A&D�/�2J�d��Nn
����nC�/4�v���p��d	���r�ќ�W��(N4-�B�Y�+�d���*�R�0|�1�Q3�U����K�h�/Tş�����3��Z&���k3���!G�4�r|�����#;16�	Q%������6FFgjY� ��H��_$���\�o��]�6���֬��1~:���N�R��^��A6:�_#rj��WFygx=�_k>��'��D52ʩѣ��hvS�`x�Q�d��[1��MC{���#a��,��(�?�s�y}��g��gC�Q�އ���a�w=�xP��Z�����v���,��
�wT�E���#�B����L��h
�J=��L�'���=�p��Dz�����a3���'�X�x����'�7�����z#l��$�"����k�6���l�/�6lz�I�/F}O���a��&�9�c���h?�5?�iCi�mWo�.�?EX��`k������
�Xq:w֘_���m �����ٶ4�]�G����X��H!9�(�09@F�tW��z��x��W���+s��
�!ᑬ���j�.�+�~�R\tPX��)V���V�Y�q�\3����M��a�f��%�v�I����j3Z�\0�p4�3�:n�c])W�
=�l�Ar�i���:AoԊ�Դ���l��>䬄w�s�^�U�7:O>?h������D�-]�r��G����+!��SA�U���\n_~��rl\5ׇ��q�b}�#MA	���l��"��]��)af�f��^ ���z��[�ן��%�I�8h��|�A�#��*2O����a��(�y�q̢C�q��
l�Q��a_z�wz%-�~�R�H�hnj]��hh��N�@�G"�F��7��
j&R���y0�)�O
֏��{]�KG��w�Zs���7��ֶ���Njo߱��_��5kVS��~XсYxH���7���*���'�'�^'o�l������Ј�S?��PU�ر�C�Ls��j��T�纓ZגcR�BOr 5���d�?�R���5jPny���~gxΎ̫�[;��2v���v�H%������E:�=p�k��6ڟm��d�����X.7��C'�V:�'�y~cv|�x����+���<�g���5�W�F:��f�J�q��M�R8�`�	�J����t���!}pU���n،V�й�d(�Q�����ܫx^�?�avm��{	�_���4S��;ӣ��;�

0����eCGz�\dr)0���>�,��ku�[~�^E���?"9PG$;�?��߿.#�N��d�+�	�)|D��p�p�pR�
��pB�Z�.�f��A��%S��ӂ�Gwo�u�T%�kю� �A��G��e����9ib�hc���5��I��k�\wcY�.Y�qs��`6]��t�����x/;@/<�V�n��6�țuT�]�A9V�:ŭ��v
p����v�#g鮍~f�)Z/ɝq!=�2����`�mǶ���dhD�%ꕉM�������N̈��b�c���W^�ݴanW�����+rB���T,6��#����9���u�1��iO_�"�c���:�e����T�,�/N����$����M4����
��d]RoJ�职n+>�l��AY�a)�	$"v)e�� �zB�t��с=�}�eJ^Me�5N<�Ӂ����!{U��,��,U�;���̋
���%��NP7C�J����RIz"R�{=���,�*IY%���R&SQa�p"�Z�+��+z�]��c��T&+W�5����fy����}x��?^�T�5��ȍLgUf���'�%ӓf�!+���y��7��Y���S�)-�0��b�q�c�K�:ACQ#����DE^l��r ��+�]Nư)1ug$�L릡��Tk��5�N��Z�A����)Zhq����O<�L�Z�[�}vOp0ڧ05�Ч��H8N�@��8���" N�Bb�To�����BSI&�+bЖDxY���53=�1�sF@�2o������.4�8l���ݭs���`o��J*
���>��7�����Et���y�TP�y�&���z~��g�i����Tغe�M���'6L����������sr�*�h��1�O��Ӈ��a��7�J6��C@�N�yQ@��sPt�,t��\�sd)
K�3�{�
%C9y1��b���gq@�*����Ë�:+[�o�~���d�<�_����P�Ӥ?�6�wv���A�2u�9�F$�M��?}۬L�� ��=L�	�/��ћ#��ʏ~����tkxO�!Ψ��=�v3�����L�#B�'�I'#��51�� ���4�AS��	��r����7�3C���Obȿ]��/��7�}����z��7H�[���FW��"�
}E(	�Qs?Y�b��[nb�|c�2�-W�b��x��蒰��ݳ[7o�F�:�mU"^N$:�A����kk�S?���{ۉ�YX��YVr7��I0�J<6gd=��e�EU����-�m���o���7�p]��N��2�ऩ�M����d��2�P���ӈCJ^q۵>F#Q�K�eL�Gaw��F�5����	󘱀�+)�FqU��֮1�D�c��0e�h������ω^6�o4K��RcR<�E�OŢ�b�uN��7�jx;P�L��5d��T\�Ă�R�N��Ve-N����wt߉}��>r��l��MQ�T���)����!���L�@���iJ�*U[�FJ��'[�KE���A����~͆]�#aU��q3DjW���>�X�5-=�@9�%ό�z�hm�5�jn̰k��. {��� ������'�g�����I�	�@�����K�Go�
P&���H7��:���8�!MB�����m:�"@\Y��|����[�	�|��7Gc�0b]�%rEM]�tK·�����y0��w�y���r��M��r<F�����}o;��{��s���qۭ��_y��k��}Şc��nܵiWcCc��Z���gb}�^�[s��,�:\6F�0"����!�1z�[�%��"pfh�,�a;AdK��a񼖣M��+�F�%v�Nr����B��
���q��@S\�u��BW�<@nМf�J� �~\e�#���'?Z��;���v�/���aOEO/eӔ�fΣ�5O����ue�XCp�=:��hP�t�p��&X���SY�Jp�xu����y��s���P����`.J��mwVV0ƥ"jQ�<�-2��P�E��BO>�F�ˣ���%�:	������ߧVG@�H���<�b���/�Z|��c�"�ܣ��pa6�Œf�������|��}��+4�hy�@��mi�����
�Db��U<�����h��zX�2�k�@o ��}T0��:���g�O4I�&$M�0=���R��s�g갵���<&0i���5��r9"LOM�7����f��������D4�t
7�N�N�w=���9��{������(�Ἕ��S[���%�D�:��gh���C˙�ϥ��L?+/^	_�A��E��@���sSNƶ3�MAu�%gj�ٟ�Kl����W^i�eϫy���N�f�2X�Q!ފ��L�!d�Rĺ�0�l[����\��$G�w�~b�T��}t��꣔:��ف������t�PJ�#(����$<����_B��t	5w��ps�@2({r͎�B'�	�w��f��xI�I�њ��"�5G��߬�O�_�t�K�59��gۿ��t=K�J�9vd�`��Z���Z�2,�,����>�&l.����‡�w]�%��5Ȟ	*�@h�K����{o�%�N	�g��u&H���㌠���gU�%U>�����KQ��M4�x����abF������H,/�=H��2��Ak
I��@8���|�g�>�~xR B_�Qr�Q��.��:5رx�}��y�'��[�����>�w���{���q���|�k����k�-�k�˥�t"�X5��/���
��0�߷�G�ŭ�.e�YN��KPP�Z]��nÅF�8�֌��qcP�x�<�3Z†�9�
�E�C
Qe%��Z�6���e�=�(���
�ä��wvf6���Yi�hWY+��]�UZ��JA�Bd!�@0Kd0����݁}g�}6���6����;��f���
�0�p�w�Nuwuuuuwի߫��lY��ݢҧ.�̨.-�-\�
���j6�V��T��)�"��#���4�^�*� kRo�^��t�~:=#����fl貏Ï��ij�x��=k��r

t�#�p�A���ϝTv�'K$�QU|�͓xi ��0)vT�˪:
7
���}���tn�"�T�+x^���u��Ο��6Up�OX�`�>hA6k�fT�ͬ��g�	h<��g����B�f���Q�y����s�
���W �ܟ`�a"�M��
>�OB�ښp����&[�
W��b�!!gHnY�q�sri�Y+���p��V��?6u`����fi��tm���~K��h���,�k.����O���Dq��l+]���|������W�*�Ԗ"������hE{�U�>� z�z
�����X�(�ݯ�d��� ���9��)����8ND]'qg�X;��Tˆ��\�!������ٝM��[�hU�$S�d����*�I̕��[�2�f�o���}5��Zj�m4H�T�a�)�&�@N����\#�N�cE�"��y�����e֓_wVsС���a/��R{<ce���$�5I�&AK���6%w�ߪ�k�~���~��_x�#G��wю�k�̚��R���1����7���_��o���7~�퟽������k/���Ͼ�O/��Ǟy�G���=�������r������#��ҋ��w���ݱwt[~�k��ݲlpQ���3W�Z�5������.���DB�7�J��v�a�:`�X�W�A��3�h�E�:�Ϣ���b����G��T��%��sg���}y��򞒜�tJ���<mm�Lu~%g�r��ҏ6%{�$ѕ�T2gn?��TmK~:P&��8�1�^dzE����X��VTE��b3���ǁ���f�6^;u�ܠ;�A��p��_6|�S?}�Mi���A(7���|wf�Q�R��^��Vů�8༎�S�p����okm���T�Z_
͆�C�?�Z�k��l<�3N����V0&��B��0��6ԕ���Ś�p�,X��(0�Q���Qu�U�q���J
/�(���q��9|��ar�O�%���<Xݕ��E��a�ζb�Sif�o鷛*��.
��OϮq:Ve�7�����7-]�f�v���O���O�_q��������U��\���h΋r*1�|��H�iW
pfN��0�R�G�(S���#�< ��<�F�~�a��*�R}�N�x$fHʼm{X������5���
-4���+[�W�WWt�z]�<c?��:�h%l
��2�~۞�L���o+�İ�?WO_��{�-�����ޚI���ce^�r[���D�Y�`t�k�d��H���=�qQ���
��ܫ'������}|�mY��$*z�l�v�Ç������5b����N4�����r��3Us�{��h_u	j�����5�wz�4N�Z��.10��ny�U�"��͑���e]�g������i�ɼm-o��oØ[+����՘Q��m&�av���u��X��s���tURd�OܥǶ,M�uVH�q�
��-���[��0�I�K!Mn2a��b>���}�f�VL��;��/���4����lk���E��̨(���AQ�2�tY�뚺�+�cFڗ���r���|�r�x�-;R�b5����n��r��(�RzS�/�J^�h��Y��\���e�t�&�)k^U�j�jlh��SYn8ʜF�9�rꊴy�'X�G._g���J~Ϙmq5����[�K$a������:��gR`���\���T��H���6*�X��1Elu��#<0wn�9T���
sGV�\��>�yNfVM�tS��k����0���M
xS�ۃ3L0c�p�d5�g%� �՜Z���W�֨�v7��X�x̨Qp֬���c@p����2��2Cx�h!��<Β���%8F~�c5������x#T��q8W�VX��~ď�����;ُÅ����߳�b��X�Y�ٞ�v��y��߆i붣���
DR�t�Tq���(GPH&0N����� ER�A�*]cÂLe���"��C�R0!�b��%3qՎeA5%o����1”d�OK���뙶`���ƺ�T{�=��;�)��\�U�t>�;�['fdT4�e[��!�������8䰤m��Li
�;<�
s�y����M�&B�쐷(��Y���?��BާC^�̙ztj�3��z��oд]x��M�%�ft��fǝ��݁FϠO�ЗЫ���/�,a
;pW%���D������tƳ�?����g\��Ε�LzJ^��^���^:V�I�+�����3o���OC榰�!�A��
@LD����n„X���UU����OM�#ቓE�[EԝI��
�Rm�eF�߈��F��R]��6�*�
��S
��4��Y髥fA2h	�˩���0�J_U�!֚!Y-�����4h��c�Òc�i�KP����	�e�M�����u���o�B�H��m<��=�sύXp��L����F���N�]�y��K���H�(�Ti��V�
�s������(�O�I�<F"�hd�1�$��r{wއ=.�<�<����Q�e8�yӲ��ȋ��י��*U���m;�y�̼��9���|87�/_y�ɵk�A���׿x�?������ګ_��|�K_�̧_��'��ԗ9���w�yۭk��=~Օ��ܱf���K-���;#�	jj��,�����-٪�eh���t曘�2i�dI3�Y֎�qO��E2�D�ܲ�y|.6�b7���bu�d�	d���fz��y��{zL��tۡ�t��&ٴ��ihٿٱ)�k0�7FcRRǏ!|��X$�����VEל��ӈ��?.��qHTIC�=��P%ѦǛx,�*~�^'vGl
�C%�,�Uŗ�<6<0�K�D�9�O�n�YV$�^"�l�wD)��x=Q�K*�����H�`W;�*q�����v�э��
� ���������5���-]�*�ӶJr�r:y�p���Wv��;>�h&��i��BMLx��蚌,Q�f뙨��L�z�C�����a\|�j��1\�j�V�Ğk��b\�D����8�^p��\�u��,^�;y]w(�$n��ďF}sz}�G�l]��� +F�5�:Q-��u:�nF���r�ॄ#�bE�ȃDWN�C4��[oIq�v|��s2���[�z1'���D�b^�xׅK��@y��.)��5I�!M�4��(J�x���!�M�!��d�E�J<=d�0JL7d�s`I�����va�ч�Нw�|��kv�sx[~d��e5��+�.W�ĦQgi��JG�_��n��(.��4�DSٌ9N�f�{O�T1U���\�)������X,���f[H*��8�u�5''���nK#D<󦵥~������7�]�z�D��g���]wO�+y�p�f����y33��
�Op2�~Y�*�(�_p���Fw�!^�G6�0-YA�0W<i�x��,^��ڍ���b֥��Rws�0/�Fps�<϶�e����q���l�ӻ�scb���Y�]�]������v��mf�@��l�v��4�@}�*����OP�bpێ(�/��l�vʜ*rYW�vZ
�	44W{���b��C]����ԯ�,��F"f���<9�WEB��C�H2�5\�=�!���J���-�R��Vj�s�Љ�X�1�Y{�MsC����,���n��)zG��Ձ���L�*@��l)l����Q���1��v;�7�*�ش����	��gY�`E(�s�+xH��`
"��t��'�A����,A�n�;��,���L��V�1��=�m
.��fEY�v�s�	tBnɵ�BIm�K_�܋�=����N-��j���NJz��D�^�%���Dtm��8��`�`��t2���@0�ۂ]�(��6a��U5�*?�aZ};_�XGj�kjGQ5`�pu _��(�EBbP��$�ڰ_U��H�aū*���+K�a${�䒥Qw��l�E�	D��m�|�9&��sO]u�B�n�hW �_Ѱ�m�Ir�c�/������ڷ��+��ٳv�⁾^�~��7����g?�ٿ�����^�������?|����^x���>��c������Cw����n=~˱��t��k��9��Хv�زy��

�^�z��E}�z���L3ప�4[d�h��]И�0�ό����IƝ%-)k��̜r@J`l�	�&VKL�w֑ɱŧ��?k�N�d����vΆd��b��jI,R��Z{�H�3Qa	�-�f��)���x�ǎ5�<h��o۶���
G�gZ�=	�~$3̥��4�֘G�ګ
��俪;I�N�X�݅��_4��'v�VK��ʃ,�z.m��m۶UK�l��gv�ʂ�SSF�ųx���1t}=�+r���:�;]2i;�w���K���z;�.]�cvw��[Vϡ�ɩ�b�%�[b����^�+��ۇQ�]Ȟ�^���p9��$/�	'�^���;��"�6X��A8�וC�Z�s]G�0��GN?����{��O7\���c_4�md݊�C���gk��0�]]v�$�|O�	[�Η--?f3�LT(�+�7e��9s0k%�2�D?>���	񕧵G�LUH�K؜�e�s�5L��<�bc�:�w�x5��HD� B�(�Q�1���&�%��>1=ZQ���\`�u�U��5�r��f#��3w��S�Qj�Yn,4Y�9w�����Y0f�(<�
a��k�#�)�
:�;�2
��#��<�Z@��f��$�_�=Xa�?f`�RA�]#p}���
�s�d*�81�\N;��K:O��|�~�3��}��/�h��M׭^vd��ysg�庳m�MuՑ2w›�D��I�7nL���̕�I�-)l�e|la�"���Ғ�%�����g_೮�lgK����1�R�H)�k6���e
�D*=�e�$˗*�Cy����Ri3X�-p
&:�?�b+*��i�6A�˽a|^��q���&Ī�f7�j�l
�K�N�{�&�
=.�D��NJj"G6������k�n�w��sz�n١钪r��s�Md��N�S�����e�.��`�#��8Q�\,,�`K��mu�SX�F=�O��Y�wb��L�VL%M�V��*t��N�T���d��K%9"��aeyƻQ���x�� �I�棎�x.�\I��T�+�����4Tћ�b�.�cDE�clz���k*!d�~�����2t!��W�[MZ�0ޚ�\��9�,�Cl’��n��y�Iu�^���S�w�^MS�騥�x�E[��U�mT���DUM�"I�H?v0�w�	d��<�/<g��N�p.���y�!Y�����`ڴePe�U�6�7�3�pju�D����N�#�v��~�#��ȭW_u�خû�dt������*ʖ��|A�R��çe##�=aP0��'���d�8,���4�.E�c�l�-^pe-�W����X,E�3ϋ>��
;Y����M>�rY�C��h�������hc�d�8�X���Ǥ=]x�2Ki��,�b�=����7FH�+���7N�@�����R.R��"��/�¢ؤ���u��7̅4����	��+m~?_��I�n]��A`*m�S�@9����"���'%^��EE~���+�JL����2h#&��٘+
+<
��+�}�5�".D��^!zx��
�f�Pdw��]���by)Sݜ�0��r<�||P񴶼 K�ס�p��K��~�*�բ�w�鱕�_\�wpş�`�3��D�S��)���W6�8Γ���^�j`)����~�Kl�i,�Q/L$�������ˍ�3���.���|��X�q�h�Ȧ�|kHU4�
"����$^<��G���c���ټiٲys;�'+��}���}��Gz��o>y���k�4vӥ���{h��ݛw/۸l��������M��1�����bZr��*�g(jI�K�L���JDZ�[�zpr��!o�*1,ɩ�Y���q�|�s����dT��Y��V��W5T�UV������qs��+̮��5ߔtU�o['V�W�����洉��~��yP���
�ɩ�y���~hfsz��$� Tٷxfe����?	5Mo
�Y;��frp��D�){�Vr�����&ԃ���(�.����I/�g���P�#'&6��^fz���y3=R5=�T Ȫ�wc���Q�FI�5�*Y�ס-�iNV���CW\r���w_���ы�[G֮ؼr�y�ۛ{2=��Mɦ�˰��{N�<���^� �`?l���﫥2���Q����2?}a��P:���n�H`��D*Jo�$=���n�g�օg���[9-�.�/�ߓ� �ٳES��H���}��Ƀ�g��Y�f'Z�v��L���z}����]�w>Fa*����|�C�a\{�:*�wn$�|�e�38Uٱ�H*�;y�E��%�y�7���)v{�;�V���O|�o�Y�q�c.
O�i�q���;]y�ǰ��m�@�v��� ۅ��*tK�OEu*u]�:��|�_x񅧟����\�od�q��|��_��׿��^���̧_�������O>���O<�أw?r�#~���o9q��UW�;v���=�kd׶��y�]�5�β��s�״�އ׌Xr8�.5X�6��e0!Y�2_��cܔ4����(���ð�4�ڲ��E���6�%���'��B��^�i��k��,�����]�	ٮz�2/�\��3(pNYq)�ڮ��d���h�]�ݚ$�A�&��w���M+��/���Us�S������D��<���*o'2�3�d2�L��S��ĸ�}jy���`�tӎj�+ؼZ8L�D��]ۻ�W��2e�0!@�E�פ�ږ����1�!K�4k�M��sG�8`���A�j��yy������������e��%�l�<����thλ/�0�|�~�vAW���CK�܂@Ϡ�������[�f\�u�ȊE��Zke�
_�#��hCFV�!��Ƣ�c���y�C���9�M�l�  ~���Tƛ���LD��l+��V����7m\�;��1c�	�=��g>��='�?p��n�t�M7\s��K\�oׅ����K7n�?wƒ��Ӳ�����t�!��9�Ψ5@��_���<�E����}3����HY�g��	K��6�ˌ�Mlg�o�>���DR�*�6KE�S
��uf3�k��Ê�O�\S�g��t_��V�U�Rvn�a2�������k�|�^���S��ci``�.�V	�.�p������/mz��ۘj��P��ޒ�QI���p��iS��Ҫx�q����D�]���P�Ǭ��N�t�E���pL�
4^Q���t�H�2:OEu���=��?q9�+����\�=KPgG�����������<
��]�&��G|6�R�!\��-O�m�I��-�b�$�f@����dz<4���<��gwc;Ԑ�a������;�*�����le�mW �ݮ�<a�
�=���C+�ȿz"j�7�WG<��8s�%W`eY�ʀv�vv��ٺ����9�mB���
Ӓ�$�'+�S�e�|0Yb���9iF�)y��U@�l���>[���\y��\uR�<0�z�垈�}:���
�8��ӚW.X�d�E]=� ������q@�蝝�U���>����^G��~�~�~��1�ʼn��F溪t8�q�n
8e��)��1��z�I����d����\�b�<��/ K�)"׃�ި���e'[��f���fu��+Y�t'�ơ0e���|l�
�OK<�kkI�3���J�,������	�	�t�mZ�	A̴eY������J'��eڠl����i�-m��e1j"'�yM�$�Z�8I��Ψ�T���v��%A��(���uNrR]���v��T���E�
cl/��ax�5)�u虤�^vI6�JF�����f�0��.�H����� @��DJ����ʸD*G�<�
��+n�/���+��ۻ����D�n�vA6�U>q��<Z��U>��w��N�~2F_}��Wi�SG���R8�tlN�/�������E�;qKb�v\o�e	ƹ]g��9=+-3��u��n!����!a��dXrp��I��T�*�d��t��.q���S����ϻ���`�\rq=��S'����J
��].���G�[�wRn��V���v'6{���m�
�����'Ko�*�Z���^�|���=�g���;_}u��Ȟ�U/q����W?,-�q�G{��.ܺ��y&�
4��"qݏ~��;3uj�ϳ�/��2!6��a�^y��T"��iu�z�D/s)T2t	��f�@�a��a[R��=^�Y9�U4��}�-W޳k��T�{��[���cW��]���1�q��5�+/��g���h϶4�T%��#V�F�""���o�	�Ԓ�kb�6Ռ_c��{�B��Mx
�Z�8$����CM!�s0�X�Σ��6q��D�:��<����x�s1�V(�d�,�vir7��_᫦����a����R��i��^:���W����4�Zᖊ �Kކ�t�'sK�"�a��¨���ܒ�&���D�2�	#	�"�F���Q�ǘ�
�-��@}]4�QK����=���Fk�^�sm��	3�̤L�|�fk2<%b�/-g+������y���`m���P[�;tQ���zhFCw�����6RXG�ٗλ
Tf���:ؽ~���d�Uas�:�&��׫��HG��/���ޓ0���*��G�h
ڂN���5��1�²�fn�X��̄��	�
)y��k���۪�"�YX%y���ĺ�(b�ʏ�@"��.�_Л���hㆵ[�m^9�fٚ��g����8�������'f^94UQ%N�'�L��[Y��_<间�Z�����@pv����~Rp6��C�HK��,�ǰCN��6��Z�N�&q��56/&�6l����@y p����
���'�D[b��x��N���m�p��^��(�
;��L�(8ō�&����:^a���)VIy`j���9�
��h+�\�J߳K��=-��j��2��1�:"�OF$S�����v�Я=�|�g���ڳk��W=���_V�p���+.��Q]h��u[G��^�v��%���͙=cA߂�\U���FMbEX�xFM��
̅Z�oՇ�$a�(�
.�Y������v�}:�`��>}H�f&F[�>�07�����f�FE���O�	�k�G� �����1�}A~߶}ׯ^5gVwg:����d��3?��Ռw
X��f�^'T
<⸛JKZkax��l�g�Yf�VX��l���.O�WK�,]��]w�4ސ����x�D�IW�����30t�p�)���1�;%�;=�����Ф�07�pR���"��r2���W):V���j�>v �(�*�wlp7�-'q|�M2�6�^�����`6���\U((��P�zk:�%T�-ߙ,�T-�����{��;�)��4��\:��!,�b��ִ���9��B7���Ϡ������
��:���O�]�>ﹰl���*q��+O<	��y�?~^N�9JL)ђ��j�r�g�L*8qʲ���L~�k�kᘗe�x\�$a6K��YU�/���?�i�K��Դy^���ZKy����/U�$ �%;�ZI��5M`g�|�΄�l���5�����_���ZL)�Kj/�����zh�+�m��l��~��o�=�R�9��i�zm�:�Ie��VҖ3�x��	�k����FR�?u����	B���� ڄ�h�)+�]���{�s�Xͽ3�����ı�Gp<v�}��9�_9��2�	�.��c��ăH�{�7���kpEáh0k,��QE�H��������G�r�y�;�VSrR�y��F�7��L�TW$ऩΝ'���䭷^wݾ}CC3g�C�U�|��z�S�w�{����[����_w�曮=z͑}W��˘,`ׅ�ܱ�9qزyh���5�f�\�?�����szE�����$�zޔi�~@�֟p�����߹�9oK�?i7���3N�q�?��/\�F��,��Y����v��	k�����$������Y�HC,��w�����Xk�{�q�y]p� ����T�;��Ҹl�z��""��
��TWY��II(YK	�aSl���ԭW�-�M��RU�?�-��������գ�h=��$�,��Q��uˆ�̟���ْi�Kj3����o�^�b��<��ID�Ƙq�� �)7f��%���w�`�2�8#�@�ȼĊ��
�nؾq����Νӛk�2M�t*\���V��J�.�	���o<������X�c�%5ꌷNj:N�9a���tS��Қ,�C�����]�ю[h��!`>Ļ��XYVc��H)#sl�Z���.Y��4�K�)껰,�3�!�/f�{ףJb��`�V���V�]8�`T���>N�A�1�A�V�*F�WH�=�Eb^�p�;�zSㄛ��4S�TE���d>��V��i�к��t�]��2}�}'���qN�UW��s�7a��K<6�	|?ry��ẇ�;b�M;rvg>�
xW.�3�����M�c�Öi
=BRx)_�\
����D10*�S��o:r��s��Z�e�'�뮽��#7>������\8rA~˪����Y�>g����֒k�9�f�$+�瑬q�ÖA�8.cg�|!�u:{�Q�\,ƍ�3�f�t�<��WcߗכS��&U���:�f���h��x!~�|��u���F�⣪z��@���z�w��_�XK������Ϗ%��5��bڱ�r���Z��x���KMj�� =��Ϳ�/R��=}��W[�՚K՘�/��"?��jBb�ry���d�p_o�6���U“���)8'���/w�U|,G������!ӹ��p]�n���,:�KJ�ib�	�ט�Y%f�7�B��.��n3<�+�4c4�tI����ۚ/�\.�5e~��%-p�r����2g*f(��{Ejz
���2#�x���q��sk[���J�`�F���Ԗe�C���o];|c*�N�8���'w/���oѼ��������[6M�(��ۺ��m�SU^�����&����5���d�t�F�[���SR���Et�7�v?.�q��V,^tE��^���7wo�4�7e[�P�n��"ŭ/1�:�`66�8�![��eF"]�e.�7�ȵ�#��Ϛ17��W}���=r�Z�S��>p�`Z@����]3��6��9��+cȦ芍Ȋ.�tt��A�JG���!�E�@��	�d$H���K�H�؇��={�l��}�������yf�3:y��۱}��-�gt�d��jk�M����4��K��ʦ$�/��6@�,���T�d�f5]��+���}^��k0	U+��31'�"����-��k:1e��%_3Q�T���z]��Ŕ{���
��h���Bp��i��7�e�!���#�u��8$
�b��;`I��
��4ȊF�Z���v��K�舭T��b����>R���Գ��4��:��
����a�u��A4>�R�cS\h[�ҾaZvm��#�YE�V�؁���.,�U�s@p���B�c�7ی���Br���e�+]7�f7`�O
t�*��m[�YV�=��t��r�>e�6�܅��'m`�ƿ٭Q�W�շ�o��)t�U��9��w�	�h��,���Um2�y�6^�UxRp@��~��
�xS��wb��ը����f�C��Uk)Q�e
D�H?tT�I3���C&"e$�
ݥ9y��T�M�5���-�_r�[6�����.9���_p��=��6�ܲsd��՛-����.U�I�鞘���Yx�j���̤�����'���q[3�͔��v
݋��8�ghEB)�4Վ���S�>Lvk�
O���vۅ؋�Vp��p@�%��)���#���4zjc!�;j�/'tz*|��Ѓ��g$Q�-�Eo��p��
����yG�攷�_�o�=�q~��#�#jCCh/�m�)׌�Wwg\"�oMi�R`d�l2�Vɍ��`ӿ��%��e�
;|6���׌Q�f:��<c���2�S��A��+��%035fD�@`�˚qsD��n=H�t�����N�ג�J�Tk�-��6w`��MiO*ݙ�=�<�*�n���
��e��cB�p�*$�`(��d<U��?�.�
��=��������(�8��ϥ+���{8��TJ�����t����9�榜JХ�5�[��幮�OS8��E=�
W���\߼��5�ۚG"1JN`4��$	����վ�D���t��Ơ�ٙC+܂C#�^*S)�5|�MRb�J�pp�J9�+�g��%)	��YN�=�l��*w��\�"i��e�	ڬ�3���q ʄN��F
5@��Bs�7F�����~��p�Ȣ�]낹@�[��i����U*�AEY�Cb��a��l��U�z���z�6�ڼa��e��ϛ��=�gn���������y��Rᔧ�[fE�3�h'=jO��3�t���	��pK6�)_���K	�I�h���[�6�0����m�e3�X�2�@�W��W�����ӹm��w^�•�X.�������ҽ��⇥�w\J[���"��#�ze����ʂ^Qg��N΂�z\i�Y5�;��7/���J������.S<V�jliL�:/��Ϛ�:�`s���������H�⾊��7�m�X��^�LU�/.G�;��[�$P��ї�w�=���0��;�W����Xv=�d����?� L��4��1�C�l��.b�ɂKλ6M�A���}A���I0z�[���n;�س=�׭X�?o���lk���6)�{ܺ�Q�	o�Z�!��G0��4�d	m��l���2ǽ��i�X�/���eU���2|�vǔM�2�#�8�c��p��H�њ�|��qv���(������fy�����g^w���*z��̸̽ej��Ư銬��U#w^&|�L(r���Vf�<Y�SEU�Ê�`I��yѦH�,�`z}�$�c7�����UR�EY�l�B]���zA�q��q�������ױë�6�x���ǩ���x�*EN�8��b�y�n��ʒs��J��y"���ވ
�<a��b����b�cp��Ң/��B���5l8���<��.wX�$;'čDqf@���H�.}��]�i�1O0u��\n�h�r(��e1�R�^e�J���1�X,�*ԈZP;�C�hZ���]��PP{��v#M���P���L>@A��8Z�|��Y3;�a�z��u+�-\�p��%�������=����2]��E}��B+Be6)��*�h��艒lZ�?��2\�:y'.��ZTG>���-�y�8�O��	��k�w���,8sO�6��{�ה|2t���<�/����ck/9y_ҍ�}��t9��ϒ����wq i��3A���$	{Y�x�7�����Y�D*��b��̮!�4��/΅=n���H�,�k<Նk܉�:%��suǗpf([p�;���*�\�^�"G����_}uY�.ċ�Ӎ ���:B�k����<�d�v���\VQ��o�⼄|$Z�Kz.��|�ԩN���L�3߲�\�t�B1O�	�V�p���O��c�#�@�6���?g���`��Eur@�ʌ��2I��xc}yA�76��o٪������i�W��P�?o4C� �w��?'}�_�-@��t9�y`7��m뉢�\\�,��#���H8��/��V�fA	?��:p���wb)������b�"�(�m�8~lx�j�s;w�Y����Y[����ۻfǚ�7���_5��sA������e�����r{T�2��'sf�9��dz��`�<~p=��Ky=C�׈���1G-'F.����$U��G%m����*�����SA.9lr�;ζGJ��6��Y���СK��-ޣJ��]*��M�{���Lf0ž�p!�
MG�r�a��Z0�����Ò"6O���h�$VB��b���Q�~�*	����7֧۪����T$�!wY@��ۢ��Ƴ`@F}ά�.��x��[ݝ�.�'��
Y(��BE��7�RmgN��o���fWh͙^�a�g!=���qf'~��O�n�3�|��)~�N��Mu:��]a�3w����r�"��d��s~/�Y�V�Yj�ϭ�1=CE
�����ʢH8�e#���P"�C�IGx��&M���Q���&hpq����l��;�)�dd�,~�,2>n*��6�L���4@>,*2���d��g:e3٭(������*���#-���f�|7\U�K��ac�vQu��5��[t�X��1�OiJ�uI$R)k[��(9	�F#-Q��*\eu���o�6普�l�u��?7�Xw��F��tݴ�|��s��>&��݈N�{�i�ܫ�X��`���wS#��I�y�r,�5��'�8�\�a�yg9�۰��T���˰���I��b�y�|��� �}覛^�{���K31l��}��|�C��;u��{���Mw�~�������
�/�}�%���u����󛇗/Y�n��E��2��-=-��u�Љ�~�����{xFM�{�/��Ce߳�
��[?�R�3e�۫�q�Y2��1�PY�t�C����]&��,
���!�Ü�7�;U]���ri�Д��R}Hg��j�*�+����7](��Q��h#�9w���Yq�&+�l03��)��I��&=&=c|�s�OzHDL��i2��O����ZZ*++
.X���Ϟ=�g���Le��.�L�+��0���PD`��q=�I;?��7b�S��:�R:�9W��{p��Lӭ
`�?�%]�g��v
5����,�G�^$(TI0lg/�tE*nb)���U�������0�`�g
�
�6��hW-�?�
�Qx���g�>$]܍��;.��5�Ü 1iU!Y���q��c" �x<&�$]�����ܚ\K��|�ʩČa�g�"+�HC��B���Ȟ���U���H��gّ0'�M�DZL��)N&L�}pB}��"�3�̘�	P�)�>~ǟA���o���b��t�s�wٰ���[�cA�X��^S���{�f�^�"�1/����~K<7���s'��������2�*�ߍ$
Ira��Cy����)��^âŒ��U�w��5�K��kj��^�ҙK:�z�z�P��k8ex�(�S��`vm-��ڒmDL��ҁ#$j��kn��b=1�S?��'�9|�Q���=}C?�W�]���u�=[7��z^���—�pFϖ�"[z��+4C�\�X�qy�\��?5:����~:�v�}��/���������¾���ڞ߰n�e�M:'�]?��F
��o�TǐȨ�!6�`lb<͛��L4:�֛z�ԃ���;�l�G^k�Ì�(Ƙ"�7����MH#��ݸ�r]�Rfɻ3�03��&Y1���I`�}�V��y7e;=�Ӏ��$�s563�(��֦Ls6Ӕi�d��PA�'�c���d�L�Ƈb&J�h��U�3�4��TZ/9Qlx��z	��^�`,	�~��^ӢH�� �G��S���SU���DM��G!�x9��!<�-$��qPĚ�oԜz���m~\���#���f��"����A�y�]���i�(yQ ��C��Z��4��D�{�x~`'Q����Vpׁm3f�.:���m!s���:�h��jY��ہ_�J��m1`��s�/"T��ݤ��jq�dN�U��T=����B��*ʣ�	�]'�(uÌiST�(R��i	'�@��XC�X�d��,B;�oݼ~d���˖�Z�k����g-�������B��
�c���̈����0�8��=̘��F�=�Y2�|�����X
2`*IOƌw����䓻_�l��_�]ŭ�-ݎ����nKe�l�:�#z��\fy&�|�����4��hf�P�G�d�ל��Z�ur%ld�p��xJ7�R��X<Hv�e�ˇN�Oy�ݭ����l�?tg3T�i^����*�}���Պ���@zL�"=��G�d�z݌�&yx�Z�@'�g����2Ӗ�~�$�3�\�&	���*(��:�����M"�s7�1Ui7�z��
�(��#&�Z}	����V
�3�G�,��s����?��+;�Ճ������9
0	.*�SޤQ����U4��£�eip+�����;q��p�	�T�6���k*�|2��y�fh�]D�LNxa�A�6��o��M�^�Yw���vg��2�ֿ�����rP��Ϙ��=����؉0��CET@��~�~�~�����>�?|�e�R�Cu؅�L�}X�@��F#��p��yf�����5��zΠ_���OѿCm��:�������^����j����GO�'�N���}݅���z��I��I��E�mE[�Z�BϜ�f�nԁ�����G�alW�8��$����<3ܨ1��!��AL6��,��dө�lL��	��/�*x��,�(��?��4��@.{H:�|�&�ɤ����Ϥ:aKߥ��3t��,x���ٖ�U0Yk����F�Lr���V6�>�h�
@ڃ�8;/՚�&�@۽@�S��dB�0�d*;I�Rć�^���<'��d:���y��j�eB~^�RQ�g�d_�fb�Ӧ�ߙY	C��I�g��Y�)0�6@�<�F
�i��A�e���8HDrټaB�-�����,�ò$۽!L*���h�+�K�6;�⡨@,�E�"1����x(fer$��9�Gt/��y9'���G�}R�s�_�I~�;O���x�d��0N��@��~�2������u��́�{;��z܏<{�N��v�ܷ��p�L�JH�FfV��ͼ��
L�<�*Q`*�$�|�J�3�F� �H8���|��v�8���9�ق��������]N�_v
#���fL��ڌ�6Y�����8L%1
�&?��I�s�`��~�D����װ
c�R���L'�̂��
�7���xIK�<�����ˆ��霖�m���X��ו�Ţ>���8W�/-^������?˩���d�9کI��5�K�����ق(���6��>�w}{���Χ���.�5�������߬[XW�pU]]�w�J�l3[�+����S��*>d�S��'O��x�x�j_��T�xXp+?Pt�pX�.շja9�
��eV+n�".~��Q'��,��Pes�?y�-�yr;�Ֆ�=�s�����;�[�逪=W�r�h���ss����1	s�)��7�dϩ4�!�x/���|���OI")	J.���7)
�q�g�h�ˤz�o��f-	Ss�ז5Z���rk[�2�y���'0i�x����'�Ϋi��U�DvP6ұh8�.���1��%�8��c2�M3�k��!1�-�O2T;SO��8J*�bn��h�+�H��/>�X�=��&�ת���K���Q���w*��TQ%x����l�R�Ӂ�Q?!p���T��,���م���M!��op+<���=B�~�Ϙ��Q�ӈJ��.7uT$䄙�m�Yj���˹�5O|ޱK�P���l��)��Eχ�#_�a�r�}�<L;�c�=y�WN�p惘C"ω���$���6��a�j��ljd! ~ʂ�
�;o�,��c7_u���M�K���n���]���n:xŁ��vn�d�%k��.ZЛ��l�Լ�������<�j�Z�.;�eaekA�b��z��:wb��S�?iV�t��M�	S��O�۶&�R(�	�|�3�gҁ{69!j&Ú��w:�Y�E<�[�A2ԥ�ġ�WE����j�T==T4�&3�_]�9���<���UٯVu���	��~��f�����_��zV���ۘ-�������̭�m�0�N��Ʀ�iWSE�Ӂ*�>f6.0-xT2��
�v�Ps��}c~��Rކ���m&g�;�N�5E��5�S`��>aʧ����kP�&u�7-x&�u؋]��p���C/����ٍH>U�T�� *5\n#_�S���-�E���s�I�?_�mYXU��}�o���s+�W;�7�}x8���:;��kk++��#�`���(ח������������$}�����tC-�ʚʚ��ty:��HD�x,á2w�`�&��IA��Fb��'���/����R�N92�J��G�t���3�e)�=�Y�[p
��E,��.l�&��,j��V69p~�. g����+���*������^U�zU�]{WWW/����++�HH:�%�4m4a	:�4	�Y�2ȸ��GF=��A%��9"I@�8&gF���n�ի��,`��s��}U�����������ߕo�C��Ps��.�w��M���;9H��<3�D �W�N�@^QʣJ&��ꋚ:�:���&��V�<�8�K1_���WLSuUr!J$������j�j�l*���5&�#ۏ�#X�M|;�����(��ऌ�z
��Ro&i�fD+h�aL~�7�_�`g�<�����F�UT���;��:��1�P�8�#SM�|�3�{���5��=��x�T?Q��||�o��txf-��D'hg���ޙ�3Z�	+�;!����e���B�i��l���Z%/p���sR��k��s�ow�6�_[��*�]��`ہ����|)��.��h�[k��
d^͗Ya�ې<�}e<D��%�r���}Nթ�����/s�q?/�����}�W̦�gy=U��W���WYa�5�Ba����ժ�
\��C��8�S��7N��^5�^
��)�g�ծQq�++���#�<�{�ٿ��ay����C_�ܗ��=���g>���w�~�u�~`ߕ�\M{f=�~w��Z�KF$�9P_t��f
թS��9,6�F���};z�+HWA�f&<�~�.�ҩ�����Yt�"�6
)��������\��J�בl2,E���Ew>?�������dd�(��μ,	>9���l��1WQ�-o�
5t5���v�Iw�b��0����{���{�?P5���0��Q�*�����;�#�Ef�k�p~��}#�Y�t[Θf��ޱ�2��֏ݰs�����?�6~��-;�t^lXqb*�O���J��k]�ʭ�[�ra�iA�J-�Tg�%�<��5~�Ur9zi���}�XDV���=������G��I���ܽ�hU�Q	o�p��(��|���ve�~�o�H*	"j� �\@(̅�c�h����;<��p�J_QK�?�5���1�q�D�.��p�u�T�&
��@M�W<x�m{��Ne���l<�����]�������=��u�7�p��]�8'��x�� X����=ۖmkn�5�7�7dҩD�I�;$1;�;��l��Zu]�Ɯ�l�0-���2%0)vlhfOA��F/�8� ���&I���1���ٸ/?��^�z�0]T�#����V�;��ar��Ci.��Y,�`{����f��,�g����a�4�1���<ݷO̦�D��=N4�{kBtYl�<�Iv���h#F��x�Z�Ck��_Y��s�HfA�A���$S�E���J�&��>1���;4dF��O
�.�W.�^�\?��y�6s���|q�maNވD�}֯kx�
�6Wp��)27�A�#&����;x��*�z��yN��� �� �8IG��V��Ӕwݹ��]7^{͇��WX<kqnj�D���W�f5x���oT=7���W*(�V\W�7d�k�՜��`\����cZ�z�=�k��(�z��̥��id��Fv ���q'�oI��H[�8&x&ǙI�3-��o��'/����텙��?ז��̅s#�&Nͧ��bCQ���X�_'\<��\u�%!�㺟��1tj��~C�{�ʱ%ް������\��C#׬񩡔�h��WnZ�KJ�<���/�����5ufa��{��{K�2��,ۜ��9{��=��[�F����x-�eK�Su��d�[��o�ń!�"�
P����(L�M�"���J*!���OB���%�:��?2��˸�����0��y��I�ugol�����=;�J���'�]�'�_��̑��/��Ǿ��O�wԨ���n�#�-,�y�간�GDr�V�ľ�I�8�_xhyi���[���%܍«��7���.�X����At]�nI���҈^-�!�oH�n�o�f���1R�V�"���8�������$��FI�� ��.Ja[�/o~�\j�*R��T>�Tn��=��o�Z�@l5�.�#P]]�V(��B�ߠw�������R�tm(^��?}����e轢3�^�勿|������G�����ﻏ}����?�}�����O���=tˡݻ����k�m�r�M�/^���Ν���vٌ�6�BٜXW�Sg��CJ�	�kg�*dXג9�^!�A��kG���eS�˜@Vp[��T���L���g��n*�!�7v����aq@�[�=	�EHop#��ij!�Ϳ^�v�l��:�s�A �*�_F��e���xP�)��CT�*,�]#jƢ�:�z��w�G	��"����,db>�XhŊ�M�ИK��bxq�
GM#���d}]<PS�Jj���~���xc[�!+�\h!�W��G�j�����>4�;���a�6Q���{����L�D��#<o����&+�u�����o��o;v�g{�ps[�V�~�w�D����%��
�+�t�H������>]�Z��h��Q��e�d���f��~u�X���^�m2^��5��C�W�|�M�z�r7q�P=�]�(��
�{�/��J�0]v\�T�kc���=/�k���-҈Z�L��a��Ў���Ü&*���StQ�0�ꆨd�D�
"�#��5��gq�*�':�	����<�*���\G_��&�� [����F���Q;8�w��v]5F߉�x�[�=���_��dJ�~;pӻԀ�G�R�~�;V�&��g�=�=�MN���_����?_��_����_y�c/=�ҏ�O}�Oݻ󺫷\q��u�/ZB�ę���D�
xt�\��h҉�,�R����v}��z��1d�ҍ�o�iK��9V��2U
�7���,��*��/fӐ�!�Њ�����N&g�iz��K�`�9q�'�,R�i"�0]~� ga	��!'S���v,c�b$�2�]
��H
8��}ۏ���'eDxE�%�+�aS��P��:1|�G�4�%�h�Ee%ת��a6�-��x!!�<�%A6d(|]V�)���A��<u�>���wbvI��u��uL$�h���F����H#���0��FE�����ZP�:�c���L�|A ^)ߕ}1�5y4P'!�%F#_xъ��Θ+K��S��6
d�x�!ˊ��o�i�3[� զ$)|{��dT��e@S&�
l���?MA��*J�"���u^Q ���?�;cc�q���K_���ܩùz�~��!�)=J��s�i|���-ܭ,{�A�h���nCfisy�f#^�p�Ip�#��05�B(hE��6���X&LK�
���4��z�i�
e��p�e��������#;��������>L�K��N'odP��Đ�)��#��9)���;�F|��1–�S�0B�� 㡀cwߍ&w��O.F�tK�םxw�+��k|al��!�3h��/��
���=`��\�[�
g�6aģ	$N:��;�ʕϸ��c�`��x"��Cv0�R��Rv��$�s�5�b�-�>P;���n��cZlv��ɗ��ɓ�Jƨ��+aM&h�����E"��3.�������59�Jy�OH$?�#��eY�o�K��<,�q�
�Bm�6M�!�
%K}��:џ�eM�J��D͵BD�%xa��Yq<!l��l�-�U>�|�����l&��Q�r!f<xO���
�&$�H�{87�:�f�S=�N��Q�c*�5�Ӫ��OF#i:�~#���|����(�!���q,�g����3��Fܛ��݆��%Z�����s��$�N���C\K�!�w\�b��0ɺ+t�����Z��N9\�)M�i�QZRW4I���WM�KJ0�%I5U�!I6\��2%�D�oMy�)B)HP��ф)M�o×h„�3@�ҩx̶�@�nZ�$�.E�U�A7z��N�=$��q\��c��(A�j�۽�4����)��^�1���!���-�Vs�r�+>Ї=�)��0X�G��߇M�t_�=�����"U�,פ{�O қ3L�Y�l�b�̎����\���u���p��e�-,.��d��������B'���L}K������?N�ns��ζ��F�{{��ӉMT�Y^���f|������3������h�p&�s9�#G���Ņ=��)d6���=	��'A �&9�o��@5(�u��ߑ�J%��$B9���<ȍ�J��#g�A"�)z�I�.�4y=L���
ic�ǔ�}�̗$����u��R+W�,q�f�vj�hO�	��
���a+“b�=BU���:�ǭ,.oA�*��HmFaF�~a��a�P�T
�L�0U����֔�>O_�sj��v3�^Ȁ��}�L�I�V4��S�%��ܼ�eK\�*j<��S���b�*ZO,�'�+'�R�	c
����Y�o���@H"�*~MW�1Y�F{[c	|>��OR�����*��F���_AH0<,A:
B���t�à�kF+H�x}8dz=�y���@()�����uSa{����E���f�3���'��	j�����xA����jDg,\ˮ��0�-�|Ʀ�[S\��K;�BuXK-�W�8g'ݢ�;D�J�I�Ì�B[KS��޺���h2��Q_��$�BN�#7��Δ�P��]q��:K띷�g�����z�՚/l�`���1�����t�2�
�p�Lgz&��y��%;R�7�KP�<��a�9�e�A\��N�dv�d�/��ˡS:��)�!�Sp;�3疱F1}�a<q��=q[��k�\Z�jL�/J���`y*�G���í�e����:�i��-�^gD%�Ӑ�8	+뼂�R��ܓ�;myT`VAk�h�@KG�k��~	����8e�s�3U�r�vt�q�>H��sґO5���\�=�����%�і@wZoM�'��x�N���NS�fAK�V�b�?�a���d��?_-e����2�1ȉ��Q���n]B�A��u��H���I2�kH����'6Q�D(5徆GwM��hs�3x}���Q��g�J�7��1�;N�^e}����=��mX�1��j�х',3�_sSa�Yj����(������L*���W�>�3�>���)�S��J������/6*���zN�������]V�4���p�f��S�(A*�Q�Y�nb=A����L2�2��Z�i�������XbV�N�:g����2�lӅ�/e����fz��+�?n���-��8��k��/v7��r�d���8��-v�LaȼDgɂ���d$eS61#���q_촒�>˰v�#'߰	{V(�M��;����DZ�=q��3��J�d#����й��@6V|�98���1w�e�-��bf]e^N��T�^�)��D2Tj�	��R��JsO�h�c�p/?�NTt��4��3S��k~|�̄�;B�vTxa�5^x=./�'歗y20�z�}�&^>]�W�;�e�^�YV./.!����%II-MT	/��@�Mt}Y6vP�ؗIR��4U6���3�S�7S��Tn1/�=|j�$���e��T�� �#�}p����-��.����ơ�E՚�a���,���j$b%S�����u쐂Oֶ�\~����?�靥n��RD
�+S�
]�����>J�R�s��X�yC��󆶆�\6��f�2��ó��L�%GW��\�%���ڊ��zN��Ol����b\�
���(����d(|e�LK(J�GL�n��Z�f��̞�����s�N�ixH�����^g�o+���\��馝��u�ء��������:��=sueƝ�ta��`�V���+o�v��tA���9�.T�T�-�sו�z��!ٖj���8��*]Zc��8�
Se��Ok�p�3,�qx�c`d``�ƹS����|e�g~a�;qE;����&� ���	��\x�c`d``�������s�61E��f��xx�c~���Lu��~q\�䪥����K_�������\�E��5L67#�A�=�1�&<�qPZ�^�9��f���Yٔ���@���G��������x�5�t�e��F�
������MqP��ќ���15�bΙ���j9�XYZ�����렖�06�ƆU�E�ɨ�?����|�{����+��gg�F�R��R)0Pj+5���ʤ`r�����R�8)��]��a�ԑ�NaD��*u�/u�/ER�U�JN7�G%K=ȍΕz�H��{��(�}˥~���YRl��$�q�
���#œ?8Czz�44_F���rG�I���1��%�I��2>EJ��&J�i�d��țJ�i��#��K:�^�.��|N�4��Wa�_o�6kf�����z���^%-��ǰ-K�>�{.9�)\�W�+�u
>���0�Co=��yc��)Z�<[�B�m�o�s�:���=���~�KB��<��G��c��8s��*�W�u��)@��r~��l��K��r8G-jѺŒ���F�
���I�M�oѷ�A慲F���pY�Y�x�^�t�,�D֬ZvW�,�H<[֢��U�/%?�LֺJvo��
gm��LY�8Y�t��e�d�d%ɺ��N�YuGɺG�w�-�	Wo�>�Y��~�%{�BG� ���\+B���3��a��Y\	�ã	z�����1p�E;	��be�њ���hL��$|�����������y�9{�F�
�s�{�o�π3+@���֏xǷc�Ce+aZ)㻱�;dkX?�Ų��_�-[{z��n��F��d����6�m/���k��`����N�R[���p J���s?�����A�(��쏓S�OpO'��I�Y�T�Vѯ
/��=�!;�s����a.�^��V';������t/����\�/�Ln->��}�;�ƾ���㻺��u��f7`�'�&=���-�
�6>o�����=+����E��˛dɛ��S�jy����+�A���� ��C�!�Cj�-��-3����͗��w�y�E���N���P�(�:[���F���^��Чw��o�|@�<�X4R7�B>�L>�H�."'O�l,=���f2�`I!^�g*�&�i
���g����s�sb���x-M>�緈f��;䙰���B��Ew��_�#�a>Kx�i��3�W³�5̖o��z�%�0n	���[����{�Q�پt�fW�����_)�J�e���>��Q�^�1�s�����O�W��z'c��
��������k'�[�K���x�u��J�0�O�/��7���V�B�6�v1/�֬�蒑f�����C�B>�gm�)ؐ�wNN�|-�C|A�z�8+hRU\C��w��y���=7�ƃ�&Ǔ�=\��sGxgQߥ��ó��hy��@yޡ�N������ܤ��y�칍S�90��͒�ɳ���aO������(��ҥ��/�F;��&��\e���X%�<���։�Ef����)�l��ۦj�JB�rj�\}=��f�b��-n:��{0��kXdH��A��9�!��=�+��*�A#BN'’'�r���sN�4]�DNs�Sg%i&�T	��`�l�jS7+�d';�N��t����~z-��
!]ǎ6]ٲ��$��7��ʿ��ޠ���|��|kx�uX�$E�����{wD����H8�1#"�H���f�ٞ���{�� 0 �$�s�9�szU��;{�}��MMի��j7������� lD
K���&Zh��.z�c�e�`6cv����b7�;�θ���=p/�{c/�{����~���8a+�!8��x��x�Cq��Qx����<�£�<��q8��qx��	x"��'�D<'�d��SqN�S�b>F#@�3��ĐHp&R(d�1��0�v<
O�3�L<��Y8�9x.��y8�yx>.�E�/��"���%���x^�W�r\�+q^�W�j���Z\����7�F܄��f܂[q^����o��&�o�[�6��;�.��{�>���!|�G�1|��'�)|��g�9|_��%|_�W�5|�7�-|�w�=|?��#�?�O�3���/�+���o�;���'��_�7���?�/��6�h#�h��Ԡ&��M�R��4�eZ�M����N�3�B��n�;݉�Lw������t�'�A��=�޴݇����>�/9�ݏ���@:���tJ����@z=�B��C�:�������pz=�E����c�zK����	t<�@O�'ѓ�Dz
�D'�)t*�F��Sɥ!y䓠�)��ΠU�hB1IJ�LJIQF9MiF�hN��i�tz=��EϦ��lz�Cϥs�<:�.�����B��.���E�b��^B��e�Rz��^A��t%]E��W���j������zz
��n��&z�L�Эt��n�;�
:�3�:Q��
9�5�R �-i�FfI�Pz�T�_}We���<*w��/w37
���_���(�����M�V���+�J�ZIW�!��g�2���EKDb"b�˕�xa�E���3�DԒ(WM�$w�nZs�D�\ϓ��xɍD���8��c'cϴ*X�q,�0�ު9�>̳L�}ύ"'����u
�M2/p����\����[�m
OF�$V-O�q���ՒHk����NCv��7�
�H��cO�9�����
#g��_��J�ʮ�軫5M�
Ӷ�H�'�i�]����S�u�w�"�;�4�{k@��J���U�y���L\%�t�=�����5���-wķk*��g�@f*�YߢTF�d#�a<�v�v����gK���I�2�c��;��4�(�]��ZG�ټ�qu�8�yW㬦N�(r�Ւ 9��HNh��#�H;�����2�m��:���X�rN���5]�؊UN�$
=Qf��Fb)u97�YTW�vH]	7����8%R�Pl�mK���qF2�:��Br�a>��S>aS�F9�w"��$W���+G��ʺ���r�� ��J8��%cx��V&�,l�q�V�m$�d�>�0*Gg�"�h����pd�,�hŢ���8�4jr�D��i���B��>����@g��6�5�͑;��`�K�{p8�dR��pJ^:L�tޙIij&�Dc.�,�0ѹ�T|f�U;��ߋ��d�=�1��_Tp�3"���)g��N�D�eK�Y{��-*K��ܩhl�r�qK�m2}�W�߷A�X��L&��g%��!�����w����2&�<Qlb7���֌^	���yB_fPB�����3-0�/�d
�Tp�~$��l&�4YS�U����p!�[\XUW�d�V�Q@��fM3��^,���U��;︱���E��z+������L����
�l�7X	.�l�Բ�n��G55�=歄�­R��B/"�-���1\.A�z+�T8]���9������f�)O�LN�Z$ǒy.sn	��&tJ�Y �q�%��g����UYWg������3n�ͪ%T����~iq�{�-9��Z�׃
�^��i�MS93��Xф�i�<)>�g�u��Ӝ�	�+��Y$�#�fy�!35jIY�C�vMKq=;�G#Y�l�,���3s���$�+���ɵk8r��'v�T&����;��1�o��/��I����뾾N7dn�	Km*ugژ�F�j�����M�ԙ{�n�n�!� ��֐n�&���hPA�4���K��U�s���r��K,jP����T���<բ���CW�v���E�Gf][�ʮ�Ѯ�j���	̾�nYY�%�E<;Ʉ�3X�㸴�<����-��(yhg�D��r�3�C����Kf���虜(?�[���K���j�dgeC'�	fn֚kؗe��Dč��ƺLG��u���>e����!��G��(�g��'�wkӕ�Ê�wS��P]<V��c�<a�qCf�T�
1ǑKn.ۊ/�aq�tf����=�9�Y��

sIGn����Xu��[:�5ɼ����,���*�"�����e��(���]^���F�bu��CR�$�����81�Eqז�]N���Y�gM�<`�;k����-�[�i��$�;]�<�pK��0�,dA�h��eC��D�qS�M��
��I�n�TW���m�s�iuv웯,�l��h�jc�.�=�5LgsdW{�qgB17�tǬ�5�s,�q`}���Z ���0Ӛ+�%��l�����7����_�l�5[t-���б�k>hp�8�D�,O�H�3̬Wl6�\�#��j�L/�����Ӻ�zw�L?'�Cf�5O_�������G֠���.���B��T�|"5���J4q�l�uG�J8����o�I�]4�Ƶ�<%S�+�{�r�9��ô��:�S�t$�QrP��{Kp����v��߭L�s�D�c6&�2�
�L7��=��\�ټg�4�C]g������y8�*�#9�2-�X6i�������q��0kS�����P,���)<�/����*�"�+�����^��6�!���O�^a���F���_�nOު~u�J�4xτ�%lN����7}��e��۲�s�~"t+7��:��K?�/����y�����|7Jn=�?�55�q�(��ĝ'��|ɾ�y+�N���w�&M�<E��x3�;�oL?�I�ne�uT>�p�h�ig�����I�5=��D�u�SE���n�5vҬ��6�뱜�;V�9,�����	�qZWA�L[���L���c!���WN��փuh:X�2p��t� ����^�0�CӝKd^��k2�	��z��z�Pd3~;���︻��8����z:���;��
�-G�x�c��p"(b##c_�Ɲ�؝620hAh.z'7k'3��FƎ��
 ~��F
D��%Rz�:HhG#�CGrL62�i�`�ߺ��w#��f�6�*assets/lib/eicons/fonts/eicons.svg000064400001144103151327220410013227 0ustar00<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg xmlns="http://www.w3.org/2000/svg">
<metadata>Copyright (C) 2021 by original authors @ fontello.com</metadata>
<defs>
<font id="eicons" horiz-adv-x="1000" >
<font-face font-family="eicons" font-weight="400" font-stretch="normal" units-per-em="1000" ascent="850" descent="-150" />
<missing-glyph horiz-adv-x="1000" />
<glyph glyph-name="editor-link" unicode="&#xe800;" d="M691 233c0 8-3 15-8 20l-64 64c-6 6-13 9-21 9-9 0-16-3-22-10 0-1 2-3 6-6 3-3 5-5 6-7 2-1 3-3 5-5 2-3 3-6 4-8s1-6 1-9c0-8-3-15-8-21-6-5-13-8-21-8-3 0-6 0-9 1s-5 2-7 4c-3 2-5 3-6 5-2 1-4 3-7 6-3 4-5 5-6 6-6-6-10-14-10-22 0-9 3-15 9-21l63-63c5-6 12-9 21-9 8 0 15 3 21 8l45 45c5 6 8 13 8 21z m-215 215c0 9-3 15-9 21l-63 64c-6 5-12 8-21 8-8 0-15-3-20-8l-45-45c-6-5-9-12-9-20 0-8 3-15 9-21l63-64c6-5 13-8 21-8 9 0 16 3 22 10 0 0-2 2-6 5-3 4-5 6-6 7-2 1-3 3-5 6-2 2-3 5-4 8-1 2-1 5-1 8 0 9 3 15 8 21s13 9 21 9c3 0 6-1 9-1 2-1 5-3 8-5 2-2 4-3 5-4 2-1 4-4 7-7 3-3 5-5 6-6 7 7 10 14 10 22z m274-215c0-25-9-46-26-63l-45-44c-17-17-37-26-62-26-24 0-45 9-62 26l-63 64c-17 17-26 37-26 62 0 25 9 46 27 64l-27 27c-17-18-38-27-63-27-25 0-46 9-63 26l-64 63c-17 18-26 38-26 63 0 25 9 45 26 62l45 45c17 17 38 25 62 25 25 0 46-9 63-26l63-63c17-17 25-38 25-62 0-25-9-47-27-64l27-27c18 17 39 27 64 27 25 0 45-9 62-26l64-64c17-17 26-38 26-62z" horiz-adv-x="1000" />

<glyph glyph-name="editor-unlink" unicode="&#xe801;" d="M383 222l-78-78c-2-1-4-3-7-3-3 0-5 1-7 3-2 2-3 4-3 7s1 5 3 7l77 78c2 2 5 3 7 3s5-1 8-3c1-2 2-4 2-7s0-5-2-7z m51-12v-97c0-3-1-5-3-8-2-1-4-2-7-2s-5 0-7 2-3 5-3 8v96c0 3 1 5 3 7 1 2 4 3 7 3s5-1 7-3c2-1 3-4 3-6z m-68 67c0-3-1-5-3-7-1-2-4-3-7-3h-96c-3 0-5 1-7 3-2 2-3 4-3 7s0 5 3 7c1 2 4 3 7 3h96c3 0 5-1 7-3 2-2 3-4 3-7z m382-39c0-24-8-44-25-61l-45-44c-17-17-37-25-61-25-25 0-45 9-62 26l-101 101c-4 4-8 10-12 17l72 5 82-83c6-5 13-8 21-8 8 0 15 2 20 8l45 44c6 6 8 12 8 20 0 8-3 15-8 21l-83 83 5 72c7-4 13-9 17-13l102-101c17-17 25-38 25-62z m-186 219l-72-5-83 83c-6 5-12 8-20 8-8 0-15-3-21-8l-45-44c-6-6-8-13-8-21 0-7 3-15 8-20l83-83-5-72c-7 4-13 8-17 12l-102 102c-17 17-25 38-25 61 0 25 8 45 25 62l45 44c17 17 37 25 61 25 25 0 45-9 62-26l101-101c4-4 9-10 13-17z m191-25c0-3-1-5-3-7-2-2-4-3-7-3h-97c-3 0-5 1-7 3-1 1-3 4-3 7 0 3 1 5 3 7 2 1 4 3 7 3h97c3 0 5-1 7-3 2-2 3-4 3-7z m-165 164v-96c0-3 0-5-3-7-1-2-4-3-7-3-3 0-5 0-7 3-1 1-3 4-3 7v96c0 3 1 5 3 7 2 2 4 3 7 3 3 0 5-1 7-3 3-2 3-4 3-7z m124-45l-78-78c-2-1-4-3-7-3-2 0-4 1-7 3-2 2-3 5-3 7s1 5 3 8l78 77c2 2 4 3 7 3s5-1 7-3c1-2 3-4 3-7s-2-5-3-7z" horiz-adv-x="1000" />

<glyph glyph-name="editor-external-link" unicode="&#xe802;" d="M742 481l61-61c3-3 8-5 13-5 5 0 10 2 13 5 4 4 6 9 6 14v189c0 5-2 10-6 13-4 4-8 6-13 6h-189c-5 0-10-2-13-6s-6-8-6-13 2-10 6-13l65-65-225-225c-17-18-17-46 0-63s46-18 63 0l225 224z m8-189v-123c0-30-11-56-32-78-22-22-48-33-79-33h-320c-30 0-56 11-78 33-22 22-33 48-33 78v320c0 31 11 57 33 79s48 32 78 32h226c4 0 7-1 9-3 2-3 3-6 3-9v-25c0-3-1-6-3-8-3-3-6-4-9-4h-226c-17 0-31-6-43-18s-18-26-18-43v-320c0-17 6-31 18-43s27-18 43-18h320c17 0 31 6 44 18s17 26 17 43v123c0 4 2 7 4 9 2 2 5 3 9 3h24c4 0 7-1 9-3 3-3 4-6 4-10z" horiz-adv-x="1000" />

<glyph glyph-name="editor-close" unicode="&#xe803;" d="M580 329l158 158c16 16 16 43 0 59-17 16-43 16-59 0l-158-158-158 158c-16 17-43 17-59 0-8-8-12-18-12-29s4-22 12-30l158-158-158-158c-16-16-16-42 0-58 9-9 19-13 30-13s21 5 29 13l158 157 158-157c9-9 19-13 30-13s21 5 29 13c9 8 12 18 12 29s-4 21-12 30l-158 157z" horiz-adv-x="1000" />

<glyph glyph-name="editor-list-ol" unicode="&#xe804;" d="M182 576l26-3v-15h-83v15l27 3v84h-27v15l57 8v-107z m7-249h-31l0 1 22 23c9 10 15 19 19 25 4 6 6 13 6 21 0 11-3 20-10 26s-17 10-30 10c-12 0-22-4-29-12-8-7-11-17-11-28l0 0h24c0 6 1 11 4 15 3 4 7 6 12 6 5 0 9-2 12-5 3-4 4-8 4-13 0-4-1-8-3-13-3-4-6-10-12-16l-39-43v-16h81v31h-18l-1-12z m-1-225c6 4 10 8 14 15s5 13 5 20c0 15-4 26-12 34-7 8-17 12-30 12-11 0-20-4-28-12s-11-19-11-31l0-1h24c0 6 2 10 5 14 3 4 7 5 11 5 5 0 9-2 12-5s4-10 4-16c0-7-1-13-4-17-3-4-7-6-13-6h-14v-24h14c6 0 11-2 14-6 4-4 5-11 5-19 0-7-2-13-5-17-4-4-8-6-14-6-5 0-9 2-12 6-3 4-5 9-5 15h-23l0 0c0-15 4-26 12-34 8-8 17-12 28-12 13 0 23 4 31 13s12 20 12 35c0 8-1 16-5 23-3 6-8 11-15 14z m620 290h-475c-23 0-41-19-41-42 0-23 18-42 41-42h475c23 0 42 19 42 42 0 23-19 42-42 42z m0-250h-475c-23 0-41-19-41-42s18-42 41-42h475c23 0 42 19 42 42s-19 42-42 42z m-475 416h475c23 0 42 19 42 42s-19 42-42 42h-475c-23 0-41-19-41-42s18-42 41-42z" horiz-adv-x="1000" />

<glyph glyph-name="editor-list-ul" unicode="&#xe805;" d="M892 350c0-23-19-42-42-42h-475c-23 0-42 19-42 42 0 23 19 42 42 42h475c23 0 42-19 42-42z m-42-208h-475c-23 0-42-19-42-42s19-42 42-42h475c23 0 42 19 42 42s-19 42-42 42z m-475 416h475c23 0 42 19 42 42s-19 42-42 42h-475c-23 0-42-19-42-42s19-42 42-42z m-187 105c-35 0-63-28-63-63 0-35 28-62 63-62 34 0 62 27 62 62 0 35-28 63-62 63z m0-500c-35 0-63-28-63-63 0-35 28-62 63-62 34 0 62 27 62 62 0 35-28 63-62 63z m0 252c-35 0-63-28-63-62 0-35 28-63 63-63 34 0 62 28 62 63 0 34-28 62-62 62z" horiz-adv-x="1000" />

<glyph glyph-name="editor-bold" unicode="&#xe806;" d="M469 140c16-7 31-11 45-11 81 0 121 39 121 117 0 27-5 48-13 63-6 11-13 19-20 26s-15 13-22 16c-7 4-16 7-26 9-10 2-19 3-27 4-8 0-18 1-30 1-16 0-27-2-33-4 0-12 0-31 0-55 0-25 0-43 0-56 0-1 0-9 0-23s-1-25 0-34c0-9 0-18 1-29s2-19 4-24z m-2 256c10-1 23-2 40-2 20 0 37 1 52 4 15 3 29 8 41 15 12 6 20 16 27 28 6 13 9 28 9 46 0 15-3 28-11 39-7 11-16 20-28 26-12 6-26 11-40 14s-29 4-45 4c-12 0-28-1-48-4 0-11 1-26 2-48 1-22 2-38 2-49 0-6 0-14 0-25 0-11 0-20 0-26-2-9-2-17-1-22z m-175-296l1 30c3 1 12 3 27 5s27 6 35 9c1 3 3 6 4 9s2 7 3 11 1 7 1 10 1 7 1 12 0 9 0 12v21c0 213-2 324-7 334-1 1-3 3-7 4s-9 3-15 4-11 2-16 2-10 1-16 2-8 0-10 0l-1 28c21 0 58 1 111 3s93 4 122 4c5 0 12 0 22 0s17 0 22 0c15 0 30-1 45-4s28-8 41-14c14-6 25-14 35-23s18-20 25-34 9-28 9-45c0-11-2-21-6-31s-8-17-12-23-12-13-21-19-17-11-24-14-16-8-27-13c33-8 61-22 83-44 22-22 33-48 33-81 0-22-3-41-11-58s-18-32-30-43-28-20-45-28-35-13-54-16-37-4-57-4c-10 0-24 0-43 1s-33 1-43 1c-23 0-56-2-100-4s-69-4-75-4z" horiz-adv-x="1000" />

<glyph glyph-name="editor-italic" unicode="&#xe807;" d="M333 101l6 27c1 1 10 3 26 7s29 9 37 13c6 7 10 18 13 32 0 2 7 33 20 95s25 120 37 177 17 88 17 96v9c-5 3-11 5-18 6s-14 2-22 2-15 1-19 2l6 33c7 0 20-1 39-2s35-2 49-2c14-1 27-1 39-1 11 0 22 0 32 1s25 1 40 2 26 2 32 2c-1-8-3-18-6-29-7-2-18-6-33-9s-27-8-35-11c-2-4-4-9-5-14s-2-9-3-13-2-8-2-15-2-11-3-14c-5-32-15-77-28-136s-22-98-25-116c-1-2-2-8-4-19s-5-20-7-29-4-18-5-27-2-15-2-19l0-6c4 0 24-4 61-10-1-9-3-20-5-32-3 0-6 0-11 0s-8-1-10-1c-6 0-16 2-29 4s-22 3-27 3c-30 1-53 1-68 1-11 0-26-1-46-3s-34-4-41-4z" horiz-adv-x="1000" />

<glyph glyph-name="editor-underline" unicode="&#xe808;" d="M266 570c-8 0-13 0-15 1l-1 28c3 1 7 1 13 1 13 0 25-1 37-2 28-1 46-2 54-2 19 0 37 1 54 1 25 1 41 1 48 2 12 0 22 0 28 1l-1-5 1-20v-3c-13-2-26-3-40-3-13 0-22-3-26-8-3-3-4-17-4-43 0-3 0-6 0-10 0-4 0-7 0-8l0-74 5-90c1-27 6-48 16-65 8-13 18-23 32-30 19-10 38-15 57-15 23 0 44 3 62 9 12 4 23 10 32 17 11 8 18 14 22 20 8 12 13 24 17 37 4 16 6 40 6 74 0 17 0 30-1 41s-2 24-4 39c-1 16-3 33-4 52l-1 19c-2 14-4 24-8 28-8 8-16 11-25 11l-33-1-4 1 0 27h28l67-3c16-1 37 1 63 3l6 0c1-9 2-14 2-17 0-1 0-5-1-10-10-2-19-4-28-4-15-2-24-4-25-5-4-4-5-8-5-14 0-1 0-4 0-8 0-4 0-8 0-10 2-4 5-47 8-128 1-41-1-74-5-98-4-16-8-29-14-39-8-14-20-27-36-39-17-13-36-22-60-29-23-7-51-11-83-11-36 0-67 5-92 15-26 10-45 24-58 40-14 16-22 37-27 62-4 18-5 43-5 77v106c0 41-2 64-6 69-4 8-20 12-46 13z m484-462c0-3-1-4-3-6s-4-2-7-2h-480c-2 0-5 1-7 2s-3 3-3 6v14c0 2 1 4 3 6s5 2 7 2h480c3 0 5-1 7-2s3-4 3-6v-14z" horiz-adv-x="1000" />

<glyph glyph-name="editor-paragraph" unicode="&#xe809;" d="M437 328c-92 0-165 53-165 145s73 147 165 147h250l0 0c23 0 41-19 41-42l0 0 0 0c0-23-18-41-41-41h-42v-415l0 0c0-23-19-42-42-42l0 0 0 0c-23 0-41 19-41 42v415h-42v-415l0 0c0-23-19-42-42-42l0 0 0 0c-23 0-41 19-41 42v206z" horiz-adv-x="1000" />

<glyph glyph-name="editor-h1" unicode="&#xe80a;" d="M673 142c-10 0-24 0-44 1s-34 1-43 1c-10 0-24 0-43-1s-33-1-43-1c-5 0-9 2-12 6s-4 10-4 15c0 7 1 12 5 15s8 5 13 6 10 1 16 2 12 3 15 5c7 4 11 19 11 45l-1 127c0 5 0 8 0 10-3 1-8 2-16 2h-219c-9 0-14-1-17-2-1-2-1-5-1-10l0-120c0-31 4-49 12-54 3-2 9-4 16-4s13-1 19-1 10-2 14-5 7-8 7-15c0-6-1-11-4-16s-7-6-12-6c-10 0-26 0-46 1s-35 1-45 1c-9 0-23 0-41-1s-32-1-42-1c-5 0-8 2-11 6s-4 10-4 15c0 7 1 11 5 15s7 5 11 5 10 2 16 3 10 3 13 5c7 5 11 20 11 47l0 18v264c0 1 0 4 0 9s0 9 0 12-1 7-1 12 0 10-1 14-1 8-2 12-2 8-4 11-3 4-5 5c-3 3-8 4-14 4s-12 1-17 1-10 2-14 5-6 8-6 14c0 6 2 11 4 16s7 7 12 7c10 0 25 0 45-1s35-1 45-1c9 0 23 0 41 1s32 1 41 1c6 0 10-3 12-7s5-10 5-16c0-7-2-11-6-14s-8-5-12-5-10-1-17-1-10-2-14-4c-7-5-11-22-11-52l0-105c0-4 0-8 1-10 3-1 7-1 12-1h228c5 0 9 1 12 1 1 2 1 6 1 10l0 105c0 30-4 47-11 52-4 2-10 3-19 4s-16 1-22 4-8 8-8 16c0 6 1 11 4 16s7 7 12 7c10 0 24 0 43-1s33-1 43-1c9 0 23 0 42 1s32 1 42 1c5 0 10-2 12-7s4-10 4-16c0-6-2-11-6-14s-8-5-12-5-11 0-17 0-11-2-14-5c-8-5-12-22-12-52l1-307c0-26 4-41 11-46 3-2 8-3 15-4s13-1 18-2 9-2 13-5 6-8 6-14c0-6-1-11-4-16s-7-7-12-7z m40 244l-18 30 114 84h31v-276c0-5 0-9 0-14s0-8-1-12 0-8 0-11-1-6-1-8l37 2v-39h-143v33c5 0 10 1 15 2 4 1 8 2 11 5s5 7 7 13 3 14 3 24v200l-55-33z" horiz-adv-x="1000" />

<glyph glyph-name="editor-h2" unicode="&#xe80b;" d="M631 142c-10 0-24 0-43 1s-34 1-44 1c-9 0-24 0-43-1s-33-1-43-1c-5 0-9 2-12 6s-4 10-4 15c0 7 2 12 6 15s7 5 12 6 10 1 17 2 11 3 14 5c7 4 11 19 11 45l0 127c0 5 0 8-1 10-3 1-8 2-16 2h-219c-8 0-14-1-17-2 0-2 0-5 0-10l-1-120c0-31 5-49 12-54 4-2 9-4 16-4s14-1 19-1 10-2 15-5 6-8 6-15c0-6-1-11-4-16s-7-6-12-6c-10 0-25 0-45 1s-35 1-45 1c-10 0-24 0-42-1s-32-1-41-1c-5 0-9 2-12 6s-4 10-4 15c0 7 2 11 5 15s7 5 12 5 9 2 15 3 10 3 14 5c7 5 11 20 11 47l-1 18v264c0 1 0 4 0 9s0 9 0 12 0 7 0 12-1 10-2 14-1 8-2 12-2 8-3 11-4 4-5 5c-4 3-9 4-15 4s-12 1-17 1-10 2-13 5-6 8-6 14c0 6 1 11 4 16s6 7 11 7c10 0 25 0 45-1s35-1 45-1c9 0 23 0 41 1s33 1 42 1c5 0 9-3 12-7s4-10 4-16c0-7-2-11-5-14s-8-5-13-5-10-1-16-1-11-2-14-4c-8-5-12-22-12-52l1-105c0-4 0-8 0-10 3-1 7-1 13-1h227c6 0 10 1 13 1 0 2 0 6 0 10l1 105c0 30-4 47-12 52-3 2-10 3-19 4s-16 1-22 4-8 8-8 16c0 6 1 11 4 16s7 7 12 7c10 0 24 0 43-1s34-1 43-1c9 0 24 0 42 1s33 1 42 1c6 0 10-2 12-7s5-10 5-16c0-6-2-11-6-14s-9-5-13-5-11 0-17 0-11-2-14-5c-7-5-11-22-11-52l0-307c0-26 4-41 11-46 4-2 9-3 15-4s13-1 18-2 10-2 13-5 6-8 6-14c0-6-1-11-4-16s-7-7-12-7z m152 322c-9 0-17-2-24-6s-13-9-16-15c3-3 6-8 7-13s2-9 2-12c0-3 0-7-2-11s-3-7-5-10c-3-4-7-6-11-8s-9-4-16-4c-5 0-9 2-13 4s-7 4-10 8c-3 3-5 7-7 11s-2 10-2 14c0 5 2 11 4 16s5 12 9 18 9 11 16 17c6 5 13 10 21 14s17 7 27 10 21 3 32 3c14 0 27-1 40-5s26-8 37-16 19-17 26-29 10-27 10-44c0-8-2-17-5-26s-9-20-17-31-19-24-33-38-33-30-56-48c-9-8-17-15-24-22s-12-13-16-20-8-11-11-16-4-9-4-12l98-3h3c5 0 10 1 14 2s8 2 11 5 5 6 7 10 2 9 2 16h32l-4-81h-219c0 17 2 32 7 46s10 26 17 37 16 21 25 31 19 18 29 27c12 12 22 22 31 32s15 20 20 30c6 9 10 18 12 27s4 18 4 27c0 8-1 16-2 24s-4 15-8 21-8 11-14 15c-7 3-14 5-24 5z" horiz-adv-x="1000" />

<glyph glyph-name="editor-h3" unicode="&#xe80c;" d="M631 142c-10 0-24 0-43 1-20 1-34 1-44 1-9 0-24 0-43-1-19-1-33-1-43-1-5 0-9 2-12 6-3 5-4 10-4 15 0 7 2 12 6 15 3 4 7 5 12 6 5 0 10 1 17 2 6 1 11 3 14 5 7 4 11 19 11 45l0 127c0 5 0 8-1 10-3 1-8 2-16 2h-219c-8 0-14-1-17-2 0-2 0-5 0-10l-1-120c0-31 5-49 12-54 4-2 9-4 16-4 7-1 14-1 19-1 5 0 10-2 15-5 4-4 6-8 6-15 0-6-1-11-4-16-3-5-7-7-12-7-10 0-25 0-45 1-20 1-35 1-45 1-10 0-24 0-42-1-18-1-32-1-41-1-5 0-9 2-12 7-3 4-4 9-4 14 0 7 2 11 5 15 3 3 7 5 12 6 4 0 9 1 15 2 6 1 10 3 14 5 7 5 11 20 11 47l-1 18v265c0 1 0 4 0 9 0 5 0 9 0 12 0 3 0 7 0 12-1 6-1 10-2 14 0 4-1 8-2 12 0 4-2 8-3 11-2 2-4 4-5 5-4 3-9 4-15 4-7 1-12 1-17 1-5 0-10 2-13 5-4 3-6 8-6 14 0 6 1 11 4 16 2 5 6 7 11 7 10 0 25 0 45-1 20-1 35-1 45-1 9 0 23 0 41 1 19 1 33 1 42 1 5 0 9-2 12-7 3-5 4-10 4-16 0-6-2-11-5-14-4-3-8-5-13-5-5 0-10 0-16-1-6-1-11-2-14-4-8-5-12-22-12-52l1-104c0-5 0-8 0-11 3 0 7 0 13 0h227c6 0 10 0 13 0 0 3 0 6 0 11l1 104c0 30-4 47-12 52-3 3-10 4-19 4s-16 2-22 4c-5 3-8 8-8 17 0 5 1 10 4 15 3 5 7 8 12 8 10 0 24-1 43-2 19-1 34-1 43-1 9 0 24 0 42 1 19 1 33 2 42 2 6 0 10-3 12-8 3-4 5-10 5-15 0-7-2-12-6-15-4-2-9-4-13-4-5 0-11-1-17-1-6 0-11-2-14-4-7-5-11-23-11-53l0-307c0-26 4-41 11-45 4-2 9-4 15-5 7-1 13-1 18-1 5-1 10-2 13-5 4-4 6-8 6-15 0-6-1-11-4-16-3-5-7-7-12-7z m53 61c0 5 1 10 3 15 1 5 4 9 7 12 3 3 6 6 11 8 4 2 9 3 14 3 6 0 11-1 15-3 4-2 7-5 9-8s5-7 6-10c1-4 1-8 1-11 0-3 0-7-1-11-1-5-4-9-6-12 2-3 4-6 7-8 3-3 7-5 11-7 4-1 8-3 13-3 4-1 9-2 14-2 10 0 20 2 27 5 8 4 15 8 20 14 5 6 9 13 12 21s4 17 4 26c0 9-1 18-3 26-2 9-6 17-12 24-6 7-13 12-23 16-10 5-21 7-36 7-1 0-3 0-5 0-2 0-4 0-7 0-3 0-5-1-8-1-2 0-4 0-6 0v36c2-1 4-1 5-1 1 0 2 0 4 0 24 0 43 5 56 16 13 12 20 28 20 49 0 9-1 16-3 23-1 7-4 13-8 18-4 5-9 8-15 11s-12 4-21 4c-4 0-9 0-13-1s-8-3-11-5-6-4-9-6c-3-3-5-5-6-8 3-4 5-8 6-13 1-4 2-9 2-12 0-3-1-7-2-10s-3-7-6-10c-2-4-6-6-10-9-5-2-10-3-16-3-6 0-10 1-14 3s-7 5-10 8c-2 4-5 7-6 12-1 4-2 9-2 14 0 7 2 15 6 24 5 9 11 17 20 25 9 8 20 14 33 19 13 5 28 8 46 8 15 0 30-1 43-4 14-3 26-9 36-16s18-16 24-27c5-11 8-25 8-41 0-7-1-14-4-22-2-8-7-16-13-23-6-8-13-14-23-20s-21-11-35-14v-1c16-3 30-7 42-13 11-6 21-13 29-21 7-9 13-18 17-27 4-10 5-20 5-31 0-17-3-32-10-46s-16-24-28-33c-12-9-25-16-42-20s-34-7-54-7c-19 0-35 2-49 6s-25 10-33 17-16 15-20 24c-4 9-6 18-6 26z" horiz-adv-x="1000" />

<glyph glyph-name="editor-h4" unicode="&#xe80d;" d="M631 142c-10 0-24 0-43 1s-34 1-44 1c-9 0-24 0-43-1s-33-1-43-1c-5 0-9 2-12 6s-4 10-4 15c0 7 2 12 6 15s7 5 12 6 10 1 17 2 11 3 14 5c7 4 11 19 11 45l0 127c0 5 0 8-1 10-3 1-8 2-16 2h-219c-8 0-14-1-17-2 0-2 0-5 0-10l-1-120c0-31 5-49 12-54 4-2 9-4 16-4s14-1 19-1 10-2 15-5 6-8 6-15c0-6-1-11-4-16s-7-6-12-6c-10 0-25 0-45 1s-35 1-45 1c-10 0-24 0-42-1s-32-1-41-1c-5 0-9 2-12 6s-4 10-4 15c0 7 2 11 5 15s7 5 12 5 9 2 15 3 10 3 14 5c7 5 11 20 11 47l-1 18v264c0 1 0 4 0 9s0 9 0 12 0 7 0 12-1 10-2 14-1 8-2 12-2 8-3 11-4 4-5 5c-4 3-9 4-15 4s-12 1-17 1-10 2-13 5-6 8-6 14c0 6 1 11 4 16s6 7 11 7c10 0 25 0 45-1s35-1 45-1c9 0 23 0 41 1s33 1 42 1c5 0 9-3 12-7s4-10 4-16c0-7-2-11-5-14s-8-5-13-5-10-1-16-1-11-2-14-4c-8-5-12-22-12-52l1-105c0-4 0-8 0-10 3-1 7-1 13-1h227c6 0 10 1 13 1 0 2 0 6 0 10l1 105c0 30-4 47-12 52-3 2-10 3-19 4s-16 1-22 4-8 8-8 16c0 6 1 11 4 16s7 7 12 7c10 0 24 0 43-1s34-1 43-1c9 0 24 0 42 1s33 1 42 1c6 0 10-2 12-7s5-10 5-16c0-6-2-11-6-14s-9-5-13-5-11 0-17 0-11-2-14-5c-7-5-11-22-11-52l0-307c0-26 4-41 11-46 4-2 9-3 15-4s13-1 18-2 10-2 13-5 6-8 6-14c0-6-1-11-4-16s-7-7-12-7z m244 90v-8c0-5 0-9 0-14s0-8-1-12 0-8 0-11-1-6-1-8l37 2v-39h-142v33c5 0 10 1 15 2s8 2 11 5 5 7 7 13 2 14 2 24v14h-130v46l172 221h30v-222h49v-46h-49z m-156 47h84v110l-84-110z" horiz-adv-x="1000" />

<glyph glyph-name="editor-h5" unicode="&#xe80e;" d="M631 142c-10 0-24 0-43 1s-34 1-44 1c-9 0-24 0-43-1s-33-1-43-1c-5 0-9 2-12 6s-4 10-4 15c0 7 2 12 6 15s7 5 12 6 10 1 17 2 11 3 14 5c7 4 11 19 11 45l0 127c0 5 0 8-1 10-3 1-8 2-16 2h-219c-8 0-14-1-17-2 0-2 0-5 0-10l-1-120c0-31 5-49 12-54 4-2 9-4 16-4s14-1 19-1 10-2 15-5 6-8 6-15c0-6-1-11-4-16s-7-6-12-6c-10 0-25 0-45 1s-35 1-45 1c-10 0-24 0-42-1s-32-1-41-1c-5 0-9 2-12 6s-4 10-4 15c0 7 2 11 5 15s7 5 12 5 9 2 15 3 10 3 14 5c7 5 11 20 11 47l-1 18v264c0 1 0 4 0 9s0 9 0 12 0 7 0 12-1 10-2 14-1 8-2 12-2 8-3 11-4 4-5 5c-4 3-9 4-15 4s-12 1-17 1-10 2-13 5-6 8-6 14c0 6 1 11 4 16s6 7 11 7c10 0 25 0 45-1s35-1 45-1c9 0 23 0 41 1s33 1 42 1c5 0 9-3 12-7s4-10 4-16c0-7-2-11-5-14s-8-5-13-5-10-1-16-1-11-2-14-4c-8-5-12-22-12-52l1-105c0-4 0-8 0-10 3-1 7-1 13-1h227c6 0 10 1 13 1 0 2 0 6 0 10l1 105c0 30-4 47-12 52-3 2-10 3-19 4s-16 1-22 4-8 8-8 16c0 6 1 11 4 16s7 7 12 7c10 0 24 0 43-1s34-1 43-1c9 0 24 0 42 1s33 1 42 1c6 0 10-2 12-7s5-10 5-16c0-6-2-11-6-14s-9-5-13-5-11 0-17 0-11-2-14-5c-7-5-11-22-11-52l0-307c0-26 4-41 11-46 4-2 9-3 15-4s13-1 18-2 10-2 13-5 6-8 6-14c0-6-1-11-4-16s-7-7-12-7z m118 46c1-3 4-6 6-8s7-4 10-6 8-3 12-4 8-1 11-1c10 0 19 2 26 6s12 10 17 17 7 14 9 22 3 17 3 26c0 5 0 11 0 17s-1 12-3 18c-1 7-3 13-5 19s-7 12-11 16-10 9-16 12-15 5-25 5c-7 0-16-2-26-4s-22-8-34-15l-21 17-2 167h130c6 0 11 0 15 1s9 2 13 5 5 5 7 10 3 10 3 16h31l-4-81-157-3v-89c4 2 8 4 13 5s10 3 16 4 11 2 16 2 11 1 16 1c21 0 39-3 54-9s27-14 37-25 18-22 23-36 7-28 7-42c0-19-3-36-10-51s-17-27-30-37-25-17-41-22-31-7-47-7c-17 0-32 2-44 6s-24 10-33 16-15 14-20 22-7 16-7 24c0 5 1 10 3 15s4 8 7 12 7 6 11 9 9 3 14 3c6 0 11-1 15-3s7-5 10-8 4-7 5-11 2-7 2-11c0-3 0-6-1-10s-3-7-5-10z" horiz-adv-x="1000" />

<glyph glyph-name="editor-h6" unicode="&#xe80f;" d="M631 142c-10 0-24 0-43 1s-34 1-44 1c-9 0-24 0-43-1s-33-1-43-1c-5 0-9 2-12 6s-4 10-4 15c0 7 2 12 6 15s7 5 12 6 10 1 17 2 11 3 14 5c7 4 11 19 11 45l0 127c0 5 0 8-1 10-3 1-8 2-16 2h-219c-8 0-14-1-17-2 0-2 0-5 0-10l-1-120c0-31 5-49 12-54 4-2 9-4 16-4s14-1 19-1 10-2 15-5 6-8 6-15c0-6-1-11-4-16s-7-6-12-6c-10 0-25 0-45 1s-35 1-45 1c-10 0-24 0-42-1s-32-1-41-1c-5 0-9 2-12 6s-4 10-4 15c0 7 2 11 5 15s7 5 12 5 9 2 15 3 10 3 14 5c7 5 11 20 11 47l-1 18v264c0 1 0 4 0 9s0 9 0 12 0 7 0 12-1 10-2 14-1 8-2 12-2 8-3 11-4 4-5 5c-4 3-9 4-15 4s-12 1-17 1-10 2-13 5-6 8-6 14c0 6 1 11 4 16s6 7 11 7c10 0 25 0 45-1s35-1 45-1c9 0 23 0 41 1s33 1 42 1c5 0 9-3 12-7s4-10 4-16c0-7-2-11-5-14s-8-5-13-5-10-1-16-1-11-2-14-4c-8-5-12-22-12-52l1-105c0-4 0-8 0-10 3-1 7-1 13-1h227c6 0 10 1 13 1 0 2 0 6 0 10l1 105c0 30-4 47-12 52-3 2-10 3-19 4s-16 1-22 4-8 8-8 16c0 6 1 11 4 16s7 7 12 7c10 0 24 0 43-1s34-1 43-1c9 0 24 0 42 1s33 1 42 1c6 0 10-2 12-7s5-10 5-16c0-6-2-11-6-14s-9-5-13-5-11 0-17 0-11-2-14-5c-7-5-11-22-11-52l0-307c0-26 4-41 11-46 4-2 9-3 15-4s13-1 18-2 10-2 13-5 6-8 6-14c0-6-1-11-4-16s-7-7-12-7z m164 183c-5 0-10-1-15-3-5-2-10-4-14-7-5-3-8-7-12-10-3-5-6-9-8-13 0-8 0-17 1-26s1-18 3-27 4-18 6-26 6-16 10-23c4-7 8-12 13-16 5-4 11-6 18-6 8 0 16 2 21 6 6 4 11 9 14 16 3 6 6 13 7 21s2 17 2 25c0 5 0 11 0 17s-1 13-2 20-3 12-5 19c-2 6-4 11-8 16s-7 9-12 12c-6 3-11 5-19 5z m106 108c0-5-1-9-2-13s-3-9-6-12c-3-3-6-6-10-8-4-2-8-3-14-3-6 0-11 1-16 3-4 2-7 5-10 8-3 3-5 7-5 10s-2 7-2 11c0 3 0 6 2 10s2 8 5 11c-3 4-7 8-12 10-5 3-12 5-19 5-9 0-16-2-23-6-6-4-12-9-17-15-5-6-9-14-12-23-4-8-7-17-9-27s-3-19-4-29-2-20-2-29c3 4 7 7 11 10 5 4 11 7 17 9 6 3 13 5 20 7 6 2 13 3 20 3 17 0 32-3 45-9s24-14 32-24c8-10 15-22 19-37 4-14 6-29 6-46 0-16-3-31-10-44-6-15-14-27-25-37s-24-19-39-25-31-9-49-9c-22 0-41 4-56 11s-28 20-37 34-16 33-21 54c-4 20-6 44-6 70 0 9 1 21 3 34s4 28 8 42c3 15 9 29 15 44 7 14 15 27 25 38s23 21 37 28 30 11 49 11c16 0 30-2 41-7s21-9 28-15c8-7 13-14 17-22 5-8 6-16 6-23z" horiz-adv-x="1000" />

<glyph glyph-name="editor-quote" unicode="&#xe810;" d="M482 584v-213c0-21-4-41-12-60-8-19-19-36-33-50-14-13-30-25-49-33-20-8-40-12-60-12h-20c-5 0-9 2-13 6s-6 8-6 14v39c0 5 2 9 6 13 3 4 8 6 13 6h20c21 0 39 8 54 23 15 15 23 33 23 54v10c0 8-3 15-9 20-6 6-12 9-20 9h-68c-16 0-30 5-41 17-12 11-17 25-17 41v116c0 16 5 30 17 41 11 11 25 17 41 17h116c16 0 30-6 41-17 12-12 17-25 17-41z m271 0v-213c0-21-4-41-12-60-8-19-19-36-33-50-14-13-30-25-50-33-19-8-39-12-60-12h-19c-5 0-9 2-14 6s-5 8-5 14v39c0 5 2 9 5 13 4 4 9 6 14 6h19c22 0 40 8 55 23 15 15 22 33 22 54v10c0 8-2 15-8 20s-12 9-20 9h-68c-16 0-30 5-41 17-11 11-17 25-17 41v116c0 16 6 30 17 41s25 17 41 17h116c17 0 30-6 42-17 11-12 16-25 16-41z" horiz-adv-x="1000" />

<glyph glyph-name="editor-code" unicode="&#xe811;" d="M770 139c-8 0-17 3-24 9-13 13-14 35-1 49l141 149-139 137c-13 14-14 35 0 49 13 13 35 14 48 1l163-162c14-13 14-35 1-48l-164-173c-7-8-16-11-25-11z m-356-126l274 615c8 17 0 37-18 45-17 8-37 0-45-18l-274-614c-8-18 0-38 18-46 4-2 9-3 14-3 13 0 25 8 31 21z m-143 135c14 13 14 35 2 49l-142 148 139 138c14 14 14 35 1 49-13 13-35 14-49 1l-163-162c-13-13-14-35-1-48l165-173c7-7 16-11 25-11 8 0 17 3 23 9z" horiz-adv-x="1000" />

<glyph glyph-name="elementor" unicode="&#xe812;" d="M0 850h200v-1000h-200v1000z m400-800h600v-200h-600v200z m0 400h600v-200h-600v200z m0 400h600v-200h-600v200z" horiz-adv-x="1000" />

<glyph glyph-name="elementor-circle" unicode="&#xe813;" d="M500 850c-276 0-500-224-500-500s224-500 500-500 500 224 500 500-224 500-500 500z m-125-708h-83v416h83z m333 0h-250v83h250z m0 166h-250v84h250z m0 167h-250v83h250z" horiz-adv-x="1000" />

<glyph glyph-name="pojome" unicode="&#xe814;" d="M500-150a474 474 0 0 0-188 37l-12 6v272l32-22a407 407 0 0 1 80-44 292 292 0 0 1 191 6 286 286 0 0 1 87 59 299 299 0 0 1 58 83 292 292 0 0 1 19 105 284 284 0 0 1-19 103 298 298 0 0 1-58 83 229 229 0 0 1-87 58h0a210 210 0 0 1-103 21 214 214 0 0 1-103-20 231 231 0 0 1-87-58 256 256 0 0 1-54-83 251 251 0 0 1-22-103v-429l-34 26a559 559 0 0 0-53 46 484 484 0 0 0-147 354 487 487 0 0 0 147 356 489 489 0 0 0 353 144 488 488 0 0 0 353-144 487 487 0 0 0 147-356 484 484 0 0 0-147-353 484 484 0 0 0-353-147z m-159 71a435 435 0 0 1 159-29 443 443 0 0 1 324 134 444 444 0 0 1 134 324 447 447 0 0 1-134 327 448 448 0 0 1-324 130 448 448 0 0 1-324-130 447 447 0 0 1-134-327 444 444 0 0 1 135-324l15-15v342a292 292 0 0 0 25 119 295 295 0 0 0 66 95 268 268 0 0 0 100 68 252 252 0 0 0 117 23 251 251 0 0 0 118-22 270 270 0 0 0 99-69 340 340 0 0 0 67-95 325 325 0 0 0 23-119 333 333 0 0 0-23-122 341 341 0 0 0-67-98 328 328 0 0 0-99-68 330 330 0 0 0-221-7 462 462 0 0 0-56 31v-167z m159 232a222 222 0 0 0-76 13 214 214 0 0 0-64 43 287 287 0 0 0-44 62 194 194 0 0 0-17 82 187 187 0 0 0 17 77 210 210 0 0 0 106 106 223 223 0 0 0 154 0 215 215 0 0 0 64-43 159 159 0 0 0 44-65 184 184 0 0 0 16-76 194 194 0 0 0-17-80 190 190 0 0 0-44-63 212 212 0 0 0-63-44 222 222 0 0 0-76-12z m0 356a180 180 0 0 1-62-11 168 168 0 0 1-84-87 145 145 0 0 1-13-60 152 152 0 0 1 13-63 243 243 0 0 1 36-52 171 171 0 0 1 50-34 188 188 0 0 1 122 0 170 170 0 0 1 49 34 151 151 0 0 1 35 50 154 154 0 0 1 13 64 145 145 0 0 1-13 60 119 119 0 0 1-34 50 174 174 0 0 1-52 36 180 180 0 0 1-60 13z" horiz-adv-x="1000" />

<glyph glyph-name="plus" unicode="&#xe815;" d="M454 704c-12-12-16-25-16-41v-246h-250c-42 0-63-21-63-63s21-62 63-62h250v-246c0-17 4-33 16-46 13-13 29-17 46-17 17 0 33 4 42 17 12 13 21 25 21 46v246h245c42 0 63 21 63 62s-21 63-63 63h-245v246c0 16-5 29-21 41-13 13-25 17-42 17-17 0-33-4-46-17z" horiz-adv-x="1000" />

<glyph glyph-name="menu-bar" unicode="&#xe816;" d="M104 517h792c33 0 62 29 62 62s-29 63-62 63h-792c-33 0-62-29-62-63s29-62 62-62z m0-250h792c33 0 62 29 62 62s-29 63-62 63h-792c-33 0-62-29-62-63s29-62 62-62z m0-250h792c33 0 62 29 62 62s-29 63-62 63h-792c-33 0-62-29-62-63s29-62 62-62z" horiz-adv-x="1000" />

<glyph glyph-name="apps" unicode="&#xe817;" d="M167 517h166v166h-166v-166z m250-500h166v166h-166v-166z m-250 0h166v166h-166v-166z m0 250h166v166h-166v-166z m250 0h166v166h-166v-166z m250 416v-166h166v166h-166z m-250-166h166v166h-166v-166z m250-250h166v166h-166v-166z m0-250h166v166h-166v-166z" horiz-adv-x="1000" />

<glyph glyph-name="accordion" unicode="&#xe818;" d="M938 600h-875c-35 0-63-28-63-62v-375c0-35 28-63 63-63h875c34 0 62 28 62 63v375c0 34-28 62-62 62z m20-437c0-12-9-21-20-21h-875c-12 0-21 9-21 21v375c0 11 9 20 21 20h875c11 0 20-9 20-20v-375z m-854 520h792c11 0 21 10 21 21s-10 21-21 21h-792c-11 0-21-9-21-21s10-21 21-21z m0 125h792c11 0 21 10 21 21s-10 21-21 21h-792c-11 0-21-9-21-21s10-21 21-21z m792-916h-792c-11 0-21-10-21-21s10-21 21-21h792c11 0 21 9 21 21s-10 21-21 21z m0 125h-792c-11 0-21-10-21-21s10-21 21-21h792c11 0 21 9 21 21s-10 21-21 21z" horiz-adv-x="1000" />

<glyph glyph-name="alert" unicode="&#xe819;" d="M500 829c-264 0-479-215-479-479s215-479 479-479 479 215 479 479-215 479-479 479z m0-917c-241 0-437 197-437 438s196 438 437 438 438-197 438-438-197-438-438-438z m0 542c-34 0-62-28-62-62v-250c0-35 28-63 62-63s63 28 63 63v250c0 34-28 62-63 62z m21-312c0-12-9-21-21-21s-21 9-21 21v250c0 11 10 21 21 21s21-10 21-21v-250z m-21 479c-34 0-62-28-62-63s28-62 62-62 63 28 63 62-28 63-63 63z m0-83c-11 0-21 9-21 20s10 21 21 21 21-9 21-21-9-20-21-20z" horiz-adv-x="1000" />

<glyph glyph-name="animation-text" unicode="&#xe81a;" d="M165 545c-6 16-33 16-39 0l-125-333c-4-11 2-23 13-27 10-4 22 1 26 12l42 112c1 0 1-1 1-1h125c1 0 1 1 1 1l42-112c4-8 11-14 20-14 2 0 5 1 7 2 11 4 16 16 12 27l-125 333z m-67-195l48 128 48-128h-96z m590 83c34 0 62-28 62-62 0-12 9-21 21-21s21 9 21 21c0 57-47 104-104 104s-105-47-105-104v-83c0-58 47-105 105-105s104 47 104 105c0 11-10 20-21 20s-21-9-21-20c0-35-28-63-62-63s-63 28-63 63v83c0 34 28 62 63 62z m-250 42c-24 0-45-8-63-21v84c0 11-9 20-21 20s-21-9-21-20v-167-21-42-20-84c0-11 10-21 21-21s21 10 21 21v1c18-13 39-22 63-22 57 0 104 47 104 105v83c0 57-47 104-104 104z m62-187c0-35-28-63-62-63s-63 28-63 63v20 42 21c0 34 28 62 63 62s62-28 62-62v-83z m497-239c-1 2-27 41-80 49v210h21c11 0 20 10 20 21s-9 21-20 21h-21v252c53 9 79 48 80 49 6 10 3 23-7 29-9 6-22 3-28-6-1-2-22-32-66-32s-65 30-66 32c-6 9-19 12-28 6-10-6-13-19-7-28 1-2 26-41 80-50v-252h-21c-11 0-21-9-21-21s10-21 21-21h21v-210c-54-8-79-48-80-49-6-10-3-23 6-29 10-6 23-3 29 6 1 2 22 32 66 32s65-30 66-31c4-7 10-10 17-10 4 0 8 1 11 3 10 6 13 19 7 29z" horiz-adv-x="1000" />

<glyph glyph-name="animation" unicode="&#xe81b;" d="M973 365l-208 208c-2 2-4 4-7 5-1 0-2 0-3 0-2 1-3 1-5 1-1 0-2 0-3 0-2-1-3-1-5-1-2-1-5-3-7-5l0 0-208-208c-8-8-8-22 0-30l208-208c1-1 2-1 3-2 1-1 2-2 4-2 3-2 5-2 8-2s5 0 8 2c2 0 4 2 6 4 0 0 1 0 1 0l208 208c8 8 8 22 0 30z m-339-77l95 95v-66l-62-62-33 33z m95-30v-66l-33 33 33 33z m0 250v-66l-125-125-33 33 158 158z m42-316v316l158-158-158-158z m-423 298c-8 8-21 8-29 0l-125-125c-8-8-8-22 0-30l125-125c4-4 9-6 14-6 6 0 11 2 15 6 8 8 8 22 0 30l-110 110 110 110c8 8 8 22 0 30z m57-140l151 152c9 8 9 21 0 29s-21 9-29 0l-167-166c-8-8-8-22 0-30l167-166c4-4 9-6 15-6s10 2 14 6c9 8 9 21 0 29l-151 152z m-265 98c-8 8-22 8-30 0l-83-83c-8-8-8-22 0-30l83-83c4-4 10-6 15-6s11 2 15 6c8 8 8 21 0 29l-69 69 69 69c8 8 8 21 0 29z" horiz-adv-x="1000" />

<glyph glyph-name="banner" unicode="&#xe81c;" d="M999 378c-2 6-7 11-13 13l-113 37 22 105c2 6 1 11-3 16-3 5-7 8-13 9-9 2-220 42-379 42s-370-40-379-42c-5-1-10-4-13-9s-4-10-3-16l22-105-113-37c-6-2-10-7-13-13-2-6-1-12 2-18l59-98-20-138c-1-7 2-15 7-19 4-3 9-5 14-5 2 0 4 0 7 1 1 1 169 62 243 62 6 0 12 3 16 8 4 5 5 11 4 18l-16 62c54 8 118 16 183 16 65 0 129-8 183-16l-16-63c-1-6 0-12 4-17s10-8 17-8c73 0 241-61 242-62 3-1 5-1 8-1 4 0 9 2 13 5 5 4 8 12 7 19l-20 138 59 98c3 6 4 12 2 18z m-713-175c-62-7-151-35-198-51l16 112c1 5 0 9-3 14l-49 81 84 28 31-145c1-6 5-11 10-14 3-2 7-3 11-3 1 0 3 0 5 1 1 0 33 9 83 18l10-41z m214 105c-125 0-248-25-297-37l-53 250c58 10 223 37 350 37 127 0 292-27 350-37l-53-250c-49 12-172 37-297 37z m399-31c-3-4-4-8-3-13l16-112c-47 16-136 44-198 51l10 41c50-9 82-18 83-18 6-2 12-1 16 2 5 3 9 8 10 14l31 145 84-28-49-82z" horiz-adv-x="1000" />

<glyph glyph-name="blockquote" unicode="&#xe81d;" d="M396 683h-292c-34 0-62-28-62-62v-292c0-34 28-62 62-62h104v-69c0-40-22-75-57-93l-98-49c-8-4-13-14-11-23 2-10 11-16 21-16h141c99 0 186 63 217 156 25 74 37 150 37 228v220c0 34-28 62-62 62z m21-282c0-73-12-145-35-214-26-77-97-129-178-129h-53l18 10c50 25 81 75 81 130v90c0 11-9 20-21 20h-125c-11 0-21 10-21 21v292c0 11 10 21 21 21h292c11 0 21-10 21-21 0 0 0-220 0-220z m479 282h-292c-34 0-62-28-62-62v-292c0-34 28-62 62-62h104v-69c0-40-22-75-57-93l-98-49c-8-4-13-14-11-23 2-10 11-16 21-16h141c99 0 186 63 217 156 25 74 37 150 37 228v220c0 34-28 62-62 62z m21-282c0-73-12-145-35-214-26-77-97-129-178-129h-53l18 10c50 25 81 75 81 130v90c0 11-9 20-21 20h-125c-11 0-21 10-21 21v292c0 11 10 21 21 21h292c11 0 21-10 21-21v-220z" horiz-adv-x="1000" />

<glyph glyph-name="button" unicode="&#xe81e;" d="M451 470c-6 5-15 7-22 3-8-3-12-11-12-19v-375c0-8 5-16 13-19 7-3 16-1 22 4l63 63 71-141c2-5 7-9 12-10 2-1 4-1 6-1 4 0 8 1 11 3l93 54c5 3 8 8 10 13 1 6 0 11-3 16l-74 122h88c9 0 17 6 20 14 3 8 0 17-6 23l-292 250z m153-245c-7 0-14-4-18-11-4-6-4-14 0-21l83-135-56-33-73 147c-3 6-9 10-16 11-1 0-2 0-3 0-6 0-11-2-15-6l-48-47v279l215-184c0 0-69 0-69 0z m292 500h-792c-57 0-104-47-104-104v-250c0-58 47-104 104-104h250c12 0 21 9 21 21s-9 20-21 20h-250c-34 0-62 28-62 63v250c0 34 28 62 62 62h792c34 0 62-28 62-62v-250c0-35-28-63-62-63h-146c-11 0-21-9-21-20s10-21 21-21h146c57 0 104 46 104 104v250c0 57-47 104-104 104z" horiz-adv-x="1000" />

<glyph glyph-name="call-to-action" unicode="&#xe81f;" d="M938 621h-875c-35 0-63-28-63-63v-416c0-35 28-63 63-63h875c34 0 62 28 62 63v416c0 35-28 63-62 63z m20-479c0-12-9-21-20-21h-875c-12 0-21 9-21 21v416c0 12 9 21 21 21h875c11 0 20-9 20-21v-416z m-229 354c-80 0-146-66-146-146s66-146 146-146 146 66 146 146-65 146-146 146z m0-250c-57 0-104 47-104 104s47 104 104 104 104-47 104-104-46-104-104-104z m-250 0h-333c-12 0-21-9-21-21s9-21 21-21h333c12 0 21 10 21 21s-9 21-21 21z m0 125h-333c-12 0-21-9-21-21s9-21 21-21h333c12 0 21 10 21 21s-9 21-21 21z m0 125h-333c-12 0-21-9-21-21s9-21 21-21h333c12 0 21 10 21 21s-9 21-21 21z" horiz-adv-x="1000" />

<glyph glyph-name="captcha" unicode="&#xe820;" d="M104 246c-11 0-21-9-21-21s-9-21-20-21-21 10-21 21v83c0 12 9 21 21 21s20-9 20-21 10-20 21-20 21 9 21 20c0 35-28 63-62 63s-63-28-63-63v-83c0-34 28-62 63-62s62 28 62 62c0 12-9 21-21 21z m417 104c11 0 21-9 21-21s9-21 21-21 20 10 20 21c0 35-28 63-62 63s-63-28-63-63v-83c0-35 28-63 63-63s62 28 62 63c0 11-9 21-20 21s-21-10-21-21-10-21-21-21-21 9-21 21v83c0 12 9 21 21 21z m478-159l-63 166c-6 17-33 17-39 0l-62-166c-4-11 1-23 12-27 11-4 23 1 27 12l10 28h65l11-28c3-8 11-13 19-13 3 0 5 0 8 1 10 4 16 16 12 27z m-99 55l17 45 17-45h-34z m-672 28c-6 16-33 16-39 0l-63-167c-4-10 2-22 13-26 10-4 22 1 26 12l11 28h65l10-28c4-9 11-14 20-14 2 0 5 1 7 2 11 4 16 16 12 26l-62 167z m-36-111l16 44 17-44h-33z m162 291h-41c-12 0-21-9-21-21v-166c0-12 9-21 21-21s20 9 20 21v62h21c35 0 63 28 63 63s-28 62-63 62z m0-83h-21v42h21c12 0 21-10 21-21s-9-21-21-21z m417-83c-12 0-21-10-21-21v-63h-83v63c0 11-10 21-21 21s-21-10-21-21v-167c0-11 9-21 21-21s21 10 21 21v63h83v-63c0-11 9-21 21-21s21 10 21 21v167c0 11-10 21-21 21z m-313 145c0-11 10-20 21-20s21 9 21 20v146h42c11 0 21 10 21 21s-10 21-21 21h-125c-12 0-21-9-21-21s9-21 21-21h41v-146z" horiz-adv-x="1000" />

<glyph glyph-name="carousel" unicode="&#xe821;" d="M98 406c-8 9-21 9-29 0l-42-41c-8-8-8-22 0-30l42-41c4-4 9-6 14-6s11 2 15 6c8 8 8 21 0 29l-27 27 27 27c8 8 8 21 0 29z m875-41l-42 41c-8 9-21 9-29 0s-8-21 0-29l27-27-27-27c-8-8-8-21 0-29 4-4 9-6 15-6s10 2 14 6l42 41c8 8 8 22 0 30z m-640 68h-166c-12 0-21-9-21-20v-125c0-12 9-21 21-21h166c12 0 21 9 21 21v125c0 11-9 20-21 20z m-20-125h-125v84h125v-84z m270 125h-166c-12 0-21-9-21-20v-125c0-12 9-21 21-21h166c12 0 21 9 21 21v125c0 11-9 20-21 20z m-20-125h-125v84h125v-84z m270 125h-166c-12 0-21-9-21-20v-125c0-12 9-21 21-21h166c12 0 21 9 21 21v125c0 11-9 20-21 20z m-20-125h-125v84h125v-84z" horiz-adv-x="1000" />

<glyph glyph-name="checkbox" unicode="&#xe822;" d="M229 142h-166c-35 0-63-28-63-63v-167c0-34 28-62 63-62h166c35 0 63 28 63 62v167c0 35-28 63-63 63z m21-230c0-11-9-20-21-20h-166c-12 0-21 9-21 20v167c0 12 9 21 21 21h166c12 0 21-9 21-21v-167z m146 730h583c12 0 21 9 21 21s-9 20-21 20h-583c-12 0-21-9-21-20s9-21 21-21z m583-292h-583c-12 0-21-9-21-21s9-21 21-21h583c12 0 21 10 21 21s-9 21-21 21z m0-333h-583c-12 0-21-10-21-21s9-21 21-21h583c12 0 21 9 21 21s-9 21-21 21z m-684 824l-30-44c-10 7-23 11-36 11h-166c-35 0-63-28-63-62v-167c0-34 28-62 63-62h166c35 0 63 28 63 62v167c0 5-1 10-2 14l40 57c6 10 4 23-6 29-9 7-22 5-29-5z m-45-262c0-11-9-21-21-21h-166c-12 0-21 10-21 21v167c0 11 9 21 21 21h166c5 0 8-2 12-4l-77-110-45 45c-8 8-21 8-30 0s-8-21 0-29l63-63c4-4 9-6 15-6 0 0 1 0 2 0 6 1 11 4 15 9l66 95v-125z m45-71l-30-44c-10 7-23 11-36 11h-166c-35 0-63-28-63-62v-167c0-35 28-63 63-63h166c35 0 63 28 63 63v167c0 5-1 9-2 14l40 57c6 9 4 22-6 29-9 7-22 4-29-5z m-45-262c0-12-9-21-21-21h-166c-12 0-21 9-21 21v167c0 11 9 20 21 20h166c5 0 8-1 12-3l-77-110-45 45c-8 8-21 8-30 0s-8-22 0-30l63-62c4-4 9-6 15-6 0 0 1 0 2 0 6 0 11 4 15 9l66 94v-124z" horiz-adv-x="1000" />

<glyph glyph-name="columns" unicode="&#xe823;" d="M438 683h-417c-12 0-21-9-21-20s9-21 21-21h417c11 0 20 9 20 21s-9 20-20 20z m0-125h-417c-12 0-21-9-21-20s9-21 21-21h417c11 0 20 9 20 21s-9 20-20 20z m0-125h-417c-12 0-21-9-21-20s9-21 21-21h417c11 0 20 9 20 21s-9 20-20 20z m0-125h-417c-12 0-21-9-21-20s9-21 21-21h417c11 0 20 9 20 21s-9 20-20 20z m0-125h-417c-12 0-21-9-21-20s9-21 21-21h417c11 0 20 9 20 21s-9 20-20 20z m-125-125h-292c-12 0-21-9-21-20s9-21 21-21h292c11 0 20 9 20 21s-9 20-20 20z m250 584h416c12 0 21 9 21 21s-9 20-21 20h-416c-12 0-21-9-21-20s9-21 21-21z m416-84h-416c-12 0-21-9-21-20s9-21 21-21h416c12 0 21 9 21 21s-9 20-21 20z m0-125h-416c-12 0-21-9-21-20s9-21 21-21h416c12 0 21 9 21 21s-9 20-21 20z m0-125h-416c-12 0-21-9-21-20s9-21 21-21h416c12 0 21 9 21 21s-9 20-21 20z m0-125h-416c-12 0-21-9-21-20s9-21 21-21h416c12 0 21 9 21 21s-9 20-21 20z m-125-125h-291c-12 0-21-9-21-20s9-21 21-21h291c12 0 21 9 21 21s-9 20-21 20z" horiz-adv-x="1000" />

<glyph glyph-name="countdown" unicode="&#xe824;" d="M779 624l50 68c7 9 5 22-4 29-9 7-22 5-29-4l-50-68c-54 37-116 61-183 71v88h20c12 0 21 10 21 21s-9 21-21 21h-41-84-41c-12 0-21-9-21-21s9-21 21-21h21v-88c-67-10-130-34-183-70l-51 67c-7 9-20 11-29 4s-11-20-4-29l50-68c-97-80-158-201-158-336 0-242 196-438 437-438s438 196 438 438c0 135-62 256-159 336z m-300 184h42v-84c-7 0-14 1-21 1s-14-1-21-1v84z m21-916c-218 0-396 177-396 396s178 395 396 395 396-177 396-395-178-396-396-396z m0 750c-11 0-21-10-21-21v-333c0-12 10-21 21-21h333c12 0 21 9 21 21 0 195-159 354-354 354z m21-334v291c156-10 281-135 291-291h-291z" horiz-adv-x="1000" />

<glyph glyph-name="counter" unicode="&#xe825;" d="M994 584l-125 125 0 0c-2 1-4 3-7 4-1 1-3 1-4 1-2 0-3 1-4 1-1 0-3-1-4-1-1-1-3-1-4-1-2-1-5-3-7-5l-124-124c-9-9-9-22 0-30s21-8 29 0l89 89v-637c0-11 10-21 21-21s21 10 21 21v637l89-89c5-4 10-6 15-6s11 2 15 6c8 8 8 21 0 30z m-884-79c-8 3-18 0-23-8l-83-125c-7-10-4-22 5-29 10-6 23-4 29 6l45 68v-265c0-11 10-21 21-21s21 10 21 21v333c0 10-6 18-15 20z m203 1c-58 0-105-46-105-104 0-11 10-21 21-21s21 10 21 21c0 35 28 63 63 63s62-28 62-63v-12c0-14-5-28-14-39l-148-186c-5-6-6-15-3-22 4-7 11-12 19-12h167c11 0 21 10 21 21s-10 21-21 21h-123l121 152c15 18 23 41 23 65v12c0 58-47 104-104 104z m395-104c0 58-46 104-104 104s-104-46-104-104c0-11 9-21 21-21s21 10 21 21c0 35 28 63 62 63s63-28 63-63-28-62-63-62c-11 0-21-10-21-21s10-21 21-21c35 0 63-28 63-63s-28-62-63-62-62 28-62 62c0 12-10 21-21 21s-21-9-21-21c0-57 47-104 104-104s104 47 104 104c0 35-16 65-41 84 25 19 41 49 41 83z" horiz-adv-x="1000" />

<glyph glyph-name="date" unicode="&#xe826;" d="M938 663h-875c-35 0-63-28-63-63v-500c0-34 28-62 63-62h875c34 0 62 28 62 62v500c0 35-28 63-62 63z m20-563c0-11-9-21-20-21h-875c-12 0-21 10-21 21v500c0 12 9 21 21 21h875c11 0 20-9 20-21v-500z m-555 436c-11 4-23-1-27-12l-125-333c-4-11 2-23 13-27 2-1 4-1 7-1 8 0 16 5 19 13l125 333c4 11-1 23-12 27z m334 0c-11 4-23-1-27-12l-125-333c-4-11 1-23 12-27 2-1 5-1 7-1 9 0 17 5 20 13l125 333c4 11-2 23-12 27z m-549-332h-84c-11 0-21-9-21-21 0-11 10-20 21-20h84c11 0 20 9 20 20s-9 21-20 21z m333 0h-167c-11 0-21-9-21-21 0-11 10-20 21-20h167c11 0 21 9 21 20s-10 21-21 21z m375 0h-208c-12 0-21-9-21-21 0-11 9-20 21-20h208c11 0 21 9 21 20s-10 21-21 21z" horiz-adv-x="1000" />

<glyph glyph-name="divider-shape" unicode="&#xe827;" d="M991 409c-9 6-22 4-29-5-15-21-62-75-103-75-40 0-88 54-103 75-8 11-26 11-34 0-15-21-62-75-103-75s-87 54-102 75c-4 5-11 9-17 9-7 0-13-4-17-9-15-21-63-75-103-75-40 0-88 54-103 75-4 5-10 9-17 9-6 0-13-4-17-9-15-21-62-75-102-75-41 0-88 54-103 75-7 9-20 11-29 5-10-7-12-20-5-29 7-10 68-92 137-92 49 0 95 43 119 70 24-27 70-70 120-70 50 0 96 43 120 71 24-28 70-71 119-71 50 0 96 43 120 71 24-28 70-71 120-71 69 0 130 82 137 92 7 9 5 22-5 29z" horiz-adv-x="1000" />

<glyph glyph-name="divider" unicode="&#xe828;" d="M42 454h916c12 0 21 10 21 21s-9 21-21 21h-916c-12 0-21-9-21-21s9-21 21-21z m333 167h250c8 0 15 5 19 12s2 15-2 21l-125 167c-8 11-26 11-34 0l-125-167c-4-6-5-14-2-21 4-7 11-12 19-12z m125 153l83-111h-166l83 111z m125-695h-250c-8 0-15-4-19-11-3-7-2-16 2-22l125-167c4-5 11-8 17-8s13 3 17 8l125 167c4 6 5 15 2 22-4 7-11 11-19 11z m-125-152l-83 111h166l-83-111z m458 319h-916c-12 0-21-9-21-21s9-21 21-21h916c12 0 21 10 21 21s-9 21-21 21z" horiz-adv-x="1000" />

<glyph glyph-name="download-button" unicode="&#xe829;" d="M875 704h-750c-57 0-104-47-104-104v-250c0-57 47-104 104-104h292c11 0 21 9 21 21s-10 21-21 21h-292c-34 0-62 28-62 62v250c0 35 28 63 62 63h750c35 0 63-28 63-63v-250c0-34-28-62-63-62h-292c-11 0-20-10-20-21s9-21 20-21h292c57 0 104 47 104 104v250c0 57-47 104-104 104z m-265-548l-89-89v366c0 12-9 21-21 21s-21-9-21-21v-366l-89 89c-8 9-22 9-30 0s-8-21 0-29l125-125c4-4 10-6 15-6s11 2 15 6l125 125c8 8 8 21 0 29-8 9-22 9-30 0z" horiz-adv-x="1000" />

<glyph glyph-name="dual-button" unicode="&#xe82a;" d="M326 470c-6 5-15 7-22 3-8-3-12-11-12-19v-375c0-8 5-16 13-19 7-3 16-1 22 4l63 63 71-141c2-5 7-9 12-10 2-1 4-1 6-1 4 0 8 1 11 3l93 54c5 3 9 8 10 13 1 6 0 11-3 16l-74 122h88c9 0 17 6 20 14 3 8 0 17-6 23l-292 250z m153-245c-7 0-14-4-18-11-4-6-4-14 0-21l83-135-56-33-73 147c-3 6-9 10-16 11-1 0-2 0-3 0-6 0-11-2-15-6l-48-47v279l215-184c0 0-69 0-69 0z m417 500h-792c-57 0-104-47-104-104v-250c0-58 47-104 104-104h125c12 0 21 9 21 21s-9 20-21 20h-125c-34 0-62 28-62 63v250c0 34 28 62 62 62h396v-104c0 0 0 0 0 0v-125c0 0 0 0 0 0v-62c0-12 9-21 21-21s21 9 21 21v54l238 237h66l-298-297c-8-9-8-22 0-30 4-4 9-6 15-6s10 2 14 6l327 327c17-3 32-12 42-25-1-1-2-1-2-2l-334-333c-7-7-7-17-3-25-1-3-3-7-3-10 0-12 10-21 21-21h271c57 0 104 47 104 104v250c0 57-47 104-104 104z m-300-42l-54-53v53h54z m-54-178v66l113 112h66l-179-178z m304-197h-66l178 179v-66l-112-113z m112 304v-66l-237-238h-66l303 304z m-53-303l52 52c-4-26-25-47-52-52z" horiz-adv-x="1000" />

<glyph glyph-name="email-field" unicode="&#xe82b;" d="M938 663h-875c-35 0-63-28-63-63v-500c0-34 28-62 63-62h875c34 0 62 28 62 62v500c0 35-28 63-62 63z m20-563c0-11-9-21-20-21h-875c-12 0-21 10-21 21v500c0 12 9 21 21 21h875c11 0 20-9 20-21v-500z m-645 479c-127 0-230-103-230-229s103-229 230-229c59 0 116 23 159 64 8 8 8 22 0 30s-21 8-29 0c-35-34-81-52-130-52-104 0-188 84-188 187s84 188 188 188c102 0 185-83 187-185 0-1-1-2-1-3 0-23-19-42-42-42-21 0-39 17-41 39 0 1 1 2 1 3 0 57-47 104-104 104s-105-47-105-104 47-104 105-104c35 0 67 18 85 45 16-15 36-24 59-24 43 0 79 33 83 75 1 2 2 5 2 8 0 126-103 229-229 229z m0-291c-35 0-63 28-63 62s28 63 63 63c33 0 60-27 62-60 0-1-1-2-1-3 0-2 0-3 1-5-3-32-30-57-62-57z" horiz-adv-x="1000" />

<glyph glyph-name="facebook-comments" unicode="&#xe82c;" d="M896 725h-792c-57 0-104-47-104-104v-417c0-57 47-104 104-104h262l119-119c4-4 10-6 15-6s11 2 15 6l119 119h262c57 0 104 47 104 104v417c0 57-47 104-104 104z m62-521c0-34-28-62-62-62h-271c-5 0-11-2-15-6l-110-111-110 111c-4 4-9 6-15 6h-271c-34 0-62 28-62 62v417c0 34 28 62 62 62h792c34 0 62-28 62-62v-417z m-645 396h-42c-58 0-104-47-104-104v-21h-21c-12 0-21-9-21-21s9-21 21-21h21v-187c0-12 9-21 21-21s20 9 20 21v187h63c11 0 21 10 21 21s-10 21-21 21h-63v21c0 34 28 62 63 62h42c11 0 20 10 20 21s-9 21-20 21z m416-292h-291c-12 0-21-9-21-20s9-21 21-21h291c12 0 21 9 21 21s-9 20-21 20z m125 125h-416c-12 0-21-9-21-20s9-21 21-21h416c12 0 21 9 21 21s-9 20-21 20z m0 125h-416c-12 0-21-9-21-20s9-21 21-21h416c12 0 21 9 21 21s-9 20-21 20z" horiz-adv-x="1000" />

<glyph glyph-name="facebook-like-box" unicode="&#xe82d;" d="M896 850h-792c-57 0-104-47-104-104v-792c0-57 47-104 104-104h792c57 0 104 47 104 104v792c0 57-47 104-104 104z m62-896c0-34-28-62-62-62h-792c-34 0-62 28-62 62v792c0 34 28 62 62 62h792c34 0 62-28 62-62v-792z m-197 479h-156l1 20c13 27 19 56 19 85 0 30-7 61-21 88l-11 23c-11 21-32 34-56 34h-16c-34 0-63-28-63-62v-75c0-3 0-6-1-8l-75-188h-7v21c0 11-9 21-21 21h-208c-12 0-21-10-21-21v-375c0-12 9-21 21-21h208c12 0 21 9 21 21v50l53-27c3-2 6-2 10-2h300c53 0 98 40 104 92l23 209c3 29-6 59-26 81-20 22-48 34-78 34z m-428-416h-166v333h166v-333z m490 305l-23-208c-3-32-30-56-62-56h-296l-67 34v216h21c8 0 16 6 19 14l81 200c3 8 4 16 4 24v75c0 11 9 21 21 21h16c8 0 15-5 18-12l12-23c11-21 16-45 16-69s-5-48-16-70c-1-3-2-5-2-8l-2-46c-1-6 1-12 5-16s10-6 15-6h178c18 0 35-8 47-21 12-13 17-31 15-49z" horiz-adv-x="1000" />

<glyph glyph-name="form-horizontal" unicode="&#xe82e;" d="M21 808h958c12 0 21 10 21 21s-9 21-21 21h-958c-12 0-21-9-21-21s9-21 21-21z m958-83h-958c-12 0-21-9-21-21s9-21 21-21h958c12 0 21 10 21 21s-9 21-21 21z m0-125h-958c-12 0-21-9-21-21v-500c0-11 9-21 21-21h958c12 0 21 10 21 21v500c0 12-9 21-21 21z m-937-42h916v-345l-112-113h-804v458z m863-458l53 54v-54h-53z m-613-83h-209c-46 0-83-38-83-84s37-83 83-83h209c46 0 83 37 83 83s-37 84-83 84z m0-125h-209c-23 0-41 18-41 41s18 42 41 42h209c23 0 41-19 41-42s-18-41-41-41z" horiz-adv-x="1000" />

<glyph glyph-name="form-vertical" unicode="&#xe82f;" d="M271 433h-250c-12 0-21-9-21-20v-125c0-12 9-21 21-21h250c11 0 21 9 21 21v125c0 11-10 20-21 20z m-21-125h-208v84h208v-84z m354 125h-250c-11 0-21-9-21-20v-125c0-12 10-21 21-21h250c12 0 21 9 21 21v125c0 11-9 20-21 20z m-21-125h-208v84h208v-84z m334 125h-167c-46 0-83-37-83-83s37-83 83-83h167c46 0 83 37 83 83s-37 83-83 83z m0-125h-167c-23 0-42 19-42 42s19 42 42 42h167c23 0 41-19 41-42s-18-42-41-42z" horiz-adv-x="1000" />

<glyph glyph-name="gallery-grid" unicode="&#xe830;" d="M292 663h-250c-12 0-21-10-21-21v-250c0-12 9-21 21-21h250c11 0 21 9 21 21v250c0 11-10 21-21 21z m-21-250h-208v208h208v-208z m354 250h-250c-11 0-21-10-21-21v-250c0-12 10-21 21-21h250c12 0 21 9 21 21v250c0 11-9 21-21 21z m-21-250h-208v208h208v-208z m354 250h-250c-11 0-20-10-20-21v-250c0-12 9-21 20-21h250c12 0 21 9 21 21v250c0 11-9 21-21 21z m-20-250h-209v208h209v-208z m-646-84h-250c-12 0-21-9-21-21v-250c0-11 9-20 21-20h250c11 0 21 9 21 20v250c0 12-10 21-21 21z m-21-250h-208v209h208v-209z m354 250h-250c-11 0-21-9-21-21v-250c0-11 10-20 21-20h250c12 0 21 9 21 20v250c0 12-9 21-21 21z m-21-250h-208v209h208v-209z m354 250h-250c-11 0-20-9-20-21v-250c0-11 9-20 20-20h250c12 0 21 9 21 20v250c0 12-9 21-21 21z m-20-250h-209v209h209v-209z" horiz-adv-x="1000" />

<glyph glyph-name="gallery-group" unicode="&#xe831;" d="M979 621h-208c-12 0-21-9-21-21v-208c0-12 9-21 21-21h208c12 0 21 9 21 21v208c0 12-9 21-21 21z m-21-208h-166v166h166v-166z m21-84h-208c-12 0-21-9-21-21v-208c0-11 9-21 21-21h208c12 0 21 10 21 21v208c0 12-9 21-21 21z m-21-208h-166v167h166v-167z m-270 500h-667c-12 0-21-9-21-21v-500c0-11 9-21 21-21h667c11 0 20 10 20 21v500c0 12-9 21-20 21z m-21-500h-625v458h625v-458z" horiz-adv-x="1000" />

<glyph glyph-name="gallery-justified" unicode="&#xe832;" d="M21 517h208c12 0 21 9 21 21v208c0 11-9 21-21 21h-208c-12 0-21-10-21-21v-208c0-12 9-21 21-21z m21 208h166v-167h-166v167z m271-208h375c11 0 20 9 20 21v208c0 11-9 21-20 21h-375c-12 0-21-10-21-21v-208c0-12 9-21 21-21z m20 208h334v-167h-334v167z m646 42h-208c-12 0-21-10-21-21v-208c0-12 9-21 21-21h208c12 0 21 9 21 21v208c0 11-9 21-21 21z m-21-209h-166v167h166v-167z m-270-83h-209c-11 0-21-9-21-21v-208c0-12 10-21 21-21h209c11 0 20 9 20 21v208c0 12-9 21-20 21z m-21-208h-167v166h167v-166z m-646-42h375c11 0 21 9 21 21v208c0 12-10 21-21 21h-375c-12 0-21-9-21-21v-208c0-12 9-21 21-21z m21 208h333v-166h-333v166z m937 42h-208c-12 0-21-9-21-21v-208c0-12 9-21 21-21h208c12 0 21 9 21 21v208c0 12-9 21-21 21z m-21-208h-166v166h166v-166z m-770-84h-167c-12 0-21-9-21-20v-209c0-11 9-21 21-21h167c11 0 20 10 20 21v209c0 11-9 20-20 20z m-21-208h-125v167h125v-167z m437 208h-333c-12 0-21-9-21-20v-209c0-11 9-21 21-21h333c12 0 21 10 21 21v209c0 11-9 20-21 20z m-21-208h-291v167h291v-167z m396 208h-291c-12 0-21-9-21-20v-209c0-11 9-21 21-21h291c12 0 21 10 21 21v209c0 11-9 20-21 20z m-21-208h-250v167h250v-167z" horiz-adv-x="1000" />

<glyph glyph-name="gallery-masonry" unicode="&#xe833;" d="M292 746h-250c-12 0-21-9-21-21v-250c0-11 9-21 21-21h250c11 0 21 10 21 21v250c0 12-10 21-21 21z m-21-250h-208v208h208v-208z m354 250h-250c-11 0-21-9-21-21v-417c0-11 10-20 21-20h250c12 0 21 9 21 20v417c0 12-9 21-21 21z m-21-417h-208v375h208v-375z m354 417h-250c-11 0-20-9-20-21v-333c0-12 9-21 20-21h250c12 0 21 9 21 21v333c0 12-9 21-21 21z m-20-333h-209v291h209v-291z m-646 0h-250c-12 0-21-10-21-21v-250c0-12 9-21 21-21h250c11 0 21 9 21 21v250c0 11-10 21-21 21z m-21-250h-208v208h208v-208z m354 83h-250c-11 0-21-9-21-21v-250c0-12 10-21 21-21h250c12 0 21 9 21 21v250c0 12-9 21-21 21z m-21-250h-208v208h208v-208z m354 333h-250c-11 0-20-9-20-21v-250c0-11 9-20 20-20h250c12 0 21 9 21 20v250c0 12-9 21-21 21z m-20-250h-209v209h209v-209z" horiz-adv-x="1000" />

<glyph glyph-name="icon-box" unicode="&#xe834;" d="M854-108c13 0 21-9 21-21 0-9-8-17-17-21l-4 0h-708c-13 0-21 8-21 21 0 8 8 16 17 21l4 0h708z m0 104c13 0 21-9 21-21s-8-21-21-21h-708c-13 0-21 8-21 21s8 21 21 21h708z m-166 146c12 0 20-9 20-21s-8-21-20-21h-375c-13 0-21 8-21 21s8 21 21 21h375z m-188 708c171 0 313-142 313-312 0-171-142-313-313-313-171 0-312 142-312 313 0 170 141 312 312 312z m0-42c-150 0-271-120-271-270 0-150 121-271 271-271 150 0 271 121 271 271 0 150-121 270-271 270z m0-83c8 0 17-4 17-12l46-88 100-12c8 0 12-9 16-13 4-8 0-17-4-21l-71-71 17-100c0-8 0-16-8-20-9-5-17-5-21 0l-92 41-87-46c-9-4-17-4-21 0-9 5-9 13-9 21l17 100-75 71c-4 4-4 13-4 21 4 8 8 12 17 12l100 13 45 87c0 13 9 17 17 17z m0-67l-29-62c-4-4-8-8-17-13l-66-8 50-46c4-4 8-12 4-16l-13-67 63 33c4 4 12 4 21 0l62-33-12 67c0 8 0 12 4 16l50 46-67 8c-8 0-12 5-17 13l-33 62z" horiz-adv-x="1000" />

<glyph glyph-name="image-before-after" unicode="&#xe835;" d="M229 392c58 0 104 46 104 104s-46 104-104 104-104-47-104-104 47-104 104-104z m0 166c35 0 63-28 63-62s-28-63-63-63-62 28-62 63 28 62 62 62z m750 167h-479v83h21c11 0 21 10 21 21s-10 21-21 21h-83c-12 0-21-9-21-21s9-21 21-21h20v-83h-437c-12 0-21-9-21-21v-708c0-12 9-21 21-21h437v-83h-20c-12 0-21-10-21-21s9-21 21-21h83c11 0 21 9 21 21s-10 21-21 21h-21v83h479c12 0 21 9 21 21v708c0 12-9 21-21 21z m-521-42v-285l-127-201-128 146c-4 5-11 7-18 7-6-1-12-5-16-10l-127-224v567h416z m-416-666v15l149 262 127-145c4-5 11-8 17-7 7 0 12 4 16 9l107 169v-303h-416z m916 0h-458v666h458v-666z" horiz-adv-x="1000" />

<glyph glyph-name="image-box" unicode="&#xe836;" d="M875 829c0 12-9 21-21 21h-708c-12 0-21-9-21-21v-458c0-3 1-5 2-8 0-1 0-1 0-1 1-2 2-4 4-6 4-4 10-6 15-6l0 0h708c5 0 9 2 12 4 0 0 1 0 1 1 0 0 1 0 1 0 1 1 2 3 3 4 1 1 1 2 2 3 0 1 1 2 1 4 0 1 1 2 1 4 0 0 0 0 0 1v458z m-42-21v-377l-192 244c-3 5-9 8-15 8-7 1-12-2-16-7l-155-172-110 70c-9 5-19 4-26-3l-152-150v387h666z m-22-416h-614l139 138 111-71c9-5 20-4 27 4l150 167 187-238z m-40-125h-542c-11 0-21-10-21-21s10-21 21-21h542c11 0 21 9 21 21s-10 21-21 21z m0-125h-542c-11 0-21-10-21-21s10-21 21-21h542c11 0 21 9 21 21s-10 21-21 21z m0-125h-542c-11 0-21-10-21-21s10-21 21-21h542c11 0 21 9 21 21s-10 21-21 21z m0-125h-542c-11 0-21-10-21-21s10-21 21-21h542c11 0 21 9 21 21s-10 21-21 21z m-438 708c46 0 84 37 84 83s-38 84-84 84-83-38-83-84 37-83 83-83z m0 125c23 0 42-19 42-42s-19-41-42-41-41 18-41 41 18 42 41 42z" horiz-adv-x="1000" />

<glyph glyph-name="image-hotspot" unicode="&#xe837;" d="M229 308c58 0 104 47 104 105s-46 104-104 104-104-47-104-104 47-105 104-105z m0 167c35 0 63-28 63-62s-28-63-63-63-62 28-62 63 28 62 62 62z m750 167h-147c1 7 1 14 1 21 0 80-65 145-145 145s-146-65-146-145c0-7 0-14 1-21h-522c-12 0-21-10-21-21v-709c0-11 9-20 21-20h958c12 0 21 9 21 20v709c0 11-9 21-21 21z m-291 125c57 0 104-47 104-104 0-75-71-199-104-253-34 54-105 178-105 253 0 57 47 104 105 104z m-136-167c29-106 114-234 118-241 4-5 11-9 18-9s13 4 17 9c4 7 89 135 118 241h135v-547l-171 206c-8 10-24 10-32 0l-85-102-131 224c-4 7-10 11-18 11-6-1-14-4-18-10l-172-268-128 146c-4 5-11 7-18 7-6-1-12-5-16-11l-127-223v567h510z m-510-667v16l149 261 127-145c4-4 10-7 17-7 6 1 12 4 16 10l169 263 129-221c3-6 9-9 16-10 7 0 13 2 18 8l88 105 187-225v-55h-916z m708 730c0 34-28 62-62 62s-63-28-63-62 28-63 63-63 62 28 62 63z m-83 0c0 11 9 20 21 20s20-9 20-20-9-21-20-21-21 9-21 21z" horiz-adv-x="1000" />

<glyph glyph-name="image-rollover" unicode="&#xe838;" d="M125 621c0-58 47-104 104-104s104 46 104 104-46 104-104 104-104-47-104-104z m167 0c0-35-28-63-63-63s-62 28-62 63 28 62 62 62 63-28 63-62z m687 229h-958c-12 0-21-9-21-21v-708c0-12 9-21 21-21h458c12 0 21 9 21 21s-9 21-21 21h-437v15l149 262 127-145c4-5 11-8 17-7 7 0 13 4 16 10l104 166c6 10 3 23-6 29-10 6-23 3-29-7l-89-143-128 146c-4 5-11 8-18 7-6-1-12-5-16-10l-127-224v567h916v-562c0-12 10-21 21-21s21 9 21 21v583c0 12-9 21-21 21z m-402-298c-6 6-15 8-22 5-8-3-13-11-13-19v-578c0-7 4-15 11-18 8-4 16-3 22 2l106 83 92-166c4-7 11-11 19-11 3 0 6 1 9 2l125 63c5 2 9 7 11 12 1 6 1 11-2 16l-87 157h131c9 0 16 5 19 13 4 8 2 17-4 23l-417 416z m236-410c-8 0-15-4-18-11-4-6-4-14-1-20l94-169-88-44-94 170c-3 6-8 10-14 11-2 0-3 0-4 0-5 0-10-1-13-4l-92-72v484l346-345h-116z" horiz-adv-x="1000" />

<glyph glyph-name="info-box" unicode="&#xe839;" d="M854 850h-708c-12 0-21-9-21-21v-458c0 0 0 0 0 0v-500c0-12 9-21 21-21h708c12 0 21 9 21 21v958c0 12-9 21-21 21z m-21-42v-377l-192 244c-3 5-9 8-15 8-6 1-12-2-16-7l-155-172-110 70c-9 5-19 4-26-3l-152-150v387h666z m-22-416h-614l139 138 111-71c9-5 20-4 27 4l150 167 187-238z m-644-500v458h666v-458h-666z m562 375h-458c-12 0-21-10-21-21s9-21 21-21h458c12 0 21 9 21 21s-9 21-21 21z m-83-167h-292c-11 0-21-9-21-21v-83c0-12 10-21 21-21h292c11 0 21 9 21 21v83c0 12-10 21-21 21z m-21-83h-250v41h250v-41z m-292 583c46 0 84 37 84 83s-38 84-84 84-83-38-83-84 37-83 83-83z m0 125c23 0 42-19 42-42s-19-41-42-41-41 18-41 41 18 42 41 42z" horiz-adv-x="1000" />

<glyph glyph-name="inner-section" unicode="&#xe83a;" d="M979 850h-958c-12 0-21-9-21-21v-958c0-12 9-21 21-21h958c12 0 21 9 21 21v958c0 12-9 21-21 21z m-521-500h500v-208h-500v208z m500 42h-250v416h250v-416z m-291 416v-416h-625v416h625z m-625-458h375v-458h-375v458z m416-458v208h500v-208h-500z" horiz-adv-x="1000" />

<glyph glyph-name="mailchimp" unicode="&#xe83b;" d="M917 175v21c8 10 21 28 21 50 0 31-63 96-105 118v90c0 35-18 80-42 115 22 19 84 80 84 135 0 87-64 104-167 104-25 0-57-7-94-20-16 20-54 62-93 62-46 0-198-44-307-152-105-105-172-239-172-285 0-35 35-70 56-89-9-17-15-36-15-57 0-71 60-129 131-125 57-175 200-292 359-292 96 0 188 44 258 118 1 2 3 3 4 5 25 27 47 59 66 94 21 7 57 23 57 54 0 26-25 45-41 54z m-21 71c0-9-7-18-12-23-24-8-135-40-196-40-12 0-23 1-33 1-46 1-80 1-99-18-10-9-14-21-14-39-1-15-1-38 19-58 22-23 63-33 128-33 69 0 120 7 154 14-12-17-25-33-38-48-16-7-74-27-159-27-92 0-167 91-167 167 0 64 81 101 90 105 28 2 66 18 109 38 46 20 97 43 132 44 27-10 82-68 86-83z m-104 208v-86c-8-1-15-2-22-4 0 2 1 5 1 7v21c0 11-9 21-21 21s-21-10-21-21v-21c0-7 4-13 9-16-25-9-51-21-77-32-9-4-18-9-27-12 7 3 12 10 12 18v21c0 12-9 21-21 21s-21-9-21-21v-21c0-11 10-21 21-21 3 0 5 1 7 2-27-12-51-21-67-22-17 7-86 36-86 83 0 31 8 83 63 83 23 0 46-5 68-11 19-5 38-10 57-10 27 0 52 18 69 31 6 5 14 10 14 11l6 0c9 0 25 1 31-5 3-3 5-8 5-16z m41 250c0-31-40-77-69-103-9 8-18 15-27 18-43 19-270 94-484-236-10 4-21 6-32 8 119 230 382 376 487 376 125 0 125-31 125-63z m-750-291c0 27 57 151 161 256 97 96 239 139 277 139 14 0 36-18 52-36-137-62-313-197-401-386-19-6-35-15-49-28-19 17-40 41-40 55z m172-262c5 2 11 5 16 8 10 6 13 19 8 28-6 10-19 14-29 8-13-8-27-12-42-12-46 0-83 38-83 84s37 83 83 83c15 0 29-4 42-12 10-5 22-2 28 7 200 320 404 253 443 236 16-7 37-34 52-65-7 1-13 1-18 1l-5 0c-13 0-24-9-39-19-13-10-30-23-44-23-14 0-30 4-47 9-23 5-49 12-78 12-51 0-104-33-104-125 0-52 44-87 78-106-34-22-78-63-78-123 0-97 91-209 208-209 33 0 61 3 86 7-49-31-103-48-159-48-140 0-266 103-318 259z m626-46c0 0-1-1-1-1-1 0-1 0-2 0-1-1-62-27-189-27-65 0-89 12-99 21-6 7-7 15-7 28 0 0 0 4 0 4 0 3 1 5 2 6 7 7 40 7 69 6 11 0 22 0 34 0 55 0 143 22 187 34v-13c0-9 5-16 13-20 15-6 28-18 29-20-3-5-20-14-36-18z" horiz-adv-x="1000" />

<glyph glyph-name="menu-card" unicode="&#xe83c;" d="M750 725h-62v104c0 7-4 13-9 17-5 4-12 5-18 3l-417-125c0 0-1 0-1 0-1-1-3-2-4-2-1-1-2-2-3-2-1-1-2-3-2-4-1-1-2-2-3-3 0-1 0-2-1-4 0-1 0-2-1-4 0 0 0 0 0-1v-833c0-12 10-21 21-21h500c12 0 21 9 21 21v833c0 12-9 21-21 21z m-104 0h-254l254 76v-76z m83-833h-458v791h458v-791z m-229 416c-11 0-21-9-21-20v-42c0-36-10-51-21-57v99c0 11-9 20-20 20s-21-9-21-20v-99c-11 6-21 21-21 57v42c0 11-9 20-21 20s-21-9-21-20v-42c0-56 23-92 63-102v-148c0-12 9-21 21-21s20 9 20 21v148c40 10 63 46 63 102v42c0 11-9 20-21 20z m125 0c-26 0-50-23-69-70-13-32-22-72-22-98 0-37 22-40 29-40h41v-104c0-12 10-21 21-21s21 9 21 21v292c0 11-9 20-21 20z m-21-166h-28c0 21 11 68 28 100v-100z m21 333h-250c-11 0-21-9-21-21s10-21 21-21h250c12 0 21 10 21 21s-9 21-21 21z" horiz-adv-x="1000" />

<glyph glyph-name="navigation-horizontal" unicode="&#xe83d;" d="M125 454c-57 0-104-47-104-104s47-104 104-104 104 47 104 104-46 104-104 104z m0-166c-34 0-62 28-62 62s28 63 62 63 63-28 63-63-28-62-63-62z m375 166c-57 0-104-47-104-104s47-104 104-104 104 47 104 104-46 104-104 104z m0-166c-34 0-62 28-62 62s28 63 62 63 63-28 63-63-28-62-63-62z m375 166c-57 0-104-47-104-104s47-104 104-104 104 47 104 104-46 104-104 104z m0-166c-34 0-62 28-62 62s28 63 62 63 63-28 63-63-28-62-63-62z" horiz-adv-x="1000" />

<glyph glyph-name="nav-menu" unicode="&#xe83e;" d="M958 683h-291-334-291c-12 0-21-9-21-20v-125c0-12 9-21 21-21h271v-479c0-12 9-21 20-21h417c12 0 21 9 21 21v479h187c12 0 21 9 21 21v125c0 11-9 20-21 20z m-312-125h-292v84h292v-84z m-583 84h250v-84h-250v84z m666-584h-375v459h313 62v-459z m209 500h-188-62v84h250v-84z m-521-125c-12 0-21-9-21-20s9-21 21-21h250c11 0 21 9 21 21s-10 20-21 20h-250z m250-125h-250c-12 0-21-9-21-20s9-21 21-21h250c11 0 21 9 21 21s-10 20-21 20z m0-125h-250c-12 0-21-9-21-20s9-21 21-21h250c11 0 21 9 21 21s-10 20-21 20z" horiz-adv-x="1000" />

<glyph glyph-name="navigation-vertical" unicode="&#xe83f;" d="M500 621c58 0 104 47 104 104s-46 104-104 104-104-47-104-104 47-104 104-104z m0 167c35 0 63-28 63-63s-28-62-63-62-62 28-62 62 28 63 62 63z m0-334c-57 0-104-47-104-104s47-104 104-104 104 47 104 104-46 104-104 104z m0-166c-34 0-62 28-62 62s28 63 62 63 63-28 63-63-28-62-63-62z m0-209c-57 0-104-47-104-104s47-104 104-104 104 47 104 104-46 104-104 104z m0-167c-34 0-62 28-62 63s28 63 62 63 63-28 63-63-28-63-63-63z" horiz-adv-x="1000" />

<glyph glyph-name="number-field" unicode="&#xe840;" d="M938 663h-875c-35 0-63-28-63-63v-500c0-34 28-62 63-62h875c34 0 62 28 62 62v500c0 35-28 63-62 63z m20-563c0-11-9-21-20-21h-875c-12 0-21 10-21 21v500c0 12 9 21 21 21h875c11 0 20-9 20-21v-500z m-723 437c-8 2-18-1-23-9l-83-125c-7-9-4-22 5-29 10-6 23-3 29 6l45 68v-265c0-11 10-20 21-20s21 9 21 20v334c0 9-6 17-15 20z m203 1c-58 0-105-47-105-105 0-11 10-20 21-20s21 9 21 20c0 35 28 63 63 63s62-28 62-63v-12c0-14-5-28-14-39l-148-186c-5-6-6-14-3-22 4-7 11-11 19-11h167c11 0 21 9 21 20s-10 21-21 21h-123l121 152c15 18 23 41 23 65v12c0 58-47 105-104 105z m395-105c0 58-46 105-104 105s-104-47-104-105c0-11 9-20 21-20s21 9 21 20c0 35 28 63 62 63s63-28 63-63-28-62-63-62c-11 0-21-9-21-21s10-21 21-21c35 0 63-28 63-62s-28-63-63-63-62 28-62 63c0 11-10 21-21 21s-21-10-21-21c0-58 47-104 104-104s104 46 104 104c0 34-16 64-41 83 25 19 41 49 41 83z" horiz-adv-x="1000" />

<glyph glyph-name="parallax" unicode="&#xe841;" d="M1000 350c0 7-4 14-10 18l-120 68 119 62c7 4 11 11 11 19s-4 15-11 18l-479 250c-6 3-13 3-20 0l-479-250c-7-3-11-10-11-18 0-8 4-15 11-19l119-62-119-68c-7-4-11-11-11-18 0-8 5-15 11-18l119-62-119-68c-7-4-11-11-11-19 0-8 5-15 11-18l479-250c3-2 7-3 10-3s7 1 10 3l479 250c7 3 11 10 11 18s-4 15-10 18l-120 69 119 62c7 3 11 10 11 18z m-500 393l434-226-434-227-434 227 434 226z m436-559l-436-227-436 227 110 63 316-165c3-2 7-3 10-3s7 1 10 3l316 165 110-63z m-436-60l-436 227 110 62 316-165c3-1 7-2 10-2s7 1 10 2l316 165 110-62-436-227z" horiz-adv-x="1000" />

<glyph glyph-name="php7" unicode="&#xe842;" d="M170 454h-87c-9 0-18-6-20-16l-41-166c0 0-1 0-1-1l-20-83c-3-11 4-22 15-25 2 0 3 0 5 0 9 0 18 6 20 15l17 68h85c48 0 90 32 101 79l7 26c6 25 1 51-15 71-16 21-40 32-66 32z m40-93l-6-26c-7-28-32-47-61-47h-75l32 125h70c13 0 25-6 33-16 8-11 11-24 7-36z m460 93h-87c-9 0-18-6-20-16l-41-166c0 0-1 0-1-1l-20-83c-3-11 4-22 15-25 2 0 3 0 5 0 9 0 18 6 20 15l17 68h85c48 0 90 32 101 79l7 26c6 25 1 51-15 71-16 21-40 32-66 32z m40-93l-6-26c-7-28-32-47-61-47h-75l32 125h70c13 0 25-6 33-16 8-11 11-24 7-36z m-224 61c-16 21-40 32-66 32h-60l14 58c3 11-4 22-15 25-11 3-22-4-25-15l-62-250c-3-11 3-23 15-25 1-1 3-1 5-1 9 0 18 6 20 16l38 151h70c13 0 25-6 33-16 8-11 11-24 7-36l-22-89c-3-11 4-23 15-25 2-1 4-1 5-1 10 0 18 6 21 16l22 89c6 25 1 51-15 71z m512 105c-4 6-11 11-19 11h-166c-12 0-21-10-21-21s9-21 21-21h127l-145-218c-6-9-4-22 6-29 4-2 8-3 12-3 6 0 13 3 17 9l167 250c4 7 4 15 1 22z" horiz-adv-x="1000" />

<glyph glyph-name="post-list" unicode="&#xe843;" d="M271 829h-250c-12 0-21-9-21-21v-250c0-11 9-20 21-20h250c11 0 21 9 21 20v250c0 12-10 21-21 21z m-21-250h-208v209h208v-209z m146 84h583c12 0 21 9 21 20s-9 21-21 21h-583c-12 0-21-9-21-21s9-20 21-20z m0 83h250c11 0 21 9 21 21s-10 21-21 21h-250c-12 0-21-10-21-21s9-21 21-21z m583-125h-583c-12 0-21-9-21-21s9-21 21-21h583c12 0 21 10 21 21s-9 21-21 21z m-708-125h-250c-12 0-21-9-21-21v-250c0-11 9-21 21-21h250c11 0 21 10 21 21v250c0 12-10 21-21 21z m-21-250h-208v208h208v-208z m729 125h-583c-12 0-21-9-21-21s9-21 21-21h583c12 0 21 10 21 21s-9 21-21 21z m-583 42h250c11 0 21 9 21 20s-10 21-21 21h-250c-12 0-21-9-21-21s9-20 21-20z m583-125h-583c-12 0-21-10-21-21s9-21 21-21h583c12 0 21 9 21 21s-9 21-21 21z m-708-125h-250c-12 0-21-10-21-21v-250c0-12 9-21 21-21h250c11 0 21 9 21 21v250c0 11-10 21-21 21z m-21-251h-208v209h208v-209z m729 126h-583c-12 0-21-10-21-21s9-21 21-21h583c12 0 21 9 21 21s-9 21-21 21z m-583 41h250c11 0 21 10 21 21s-10 21-21 21h-250c-12 0-21-9-21-21s9-21 21-21z m583-125h-583c-12 0-21-9-21-21s9-21 21-21h583c12 0 21 10 21 21s-9 21-21 21z" horiz-adv-x="1000" />

<glyph glyph-name="post-slider" unicode="&#xe844;" d="M813 621h-625c-12 0-21-9-21-21v-500c0-11 9-21 21-21h625c11 0 20 10 20 21v500c0 12-9 21-20 21z m-21-500h-584v458h584v-458z m-521 42h167c11 0 20 9 20 20s-9 21-20 21h-167c-12 0-21-9-21-21 0-11 9-20 21-20z m0 83h458c12 0 21 9 21 21s-9 21-21 21h-458c-12 0-21-10-21-21s9-21 21-21z m0 83h458c12 0 21 10 21 21s-9 21-21 21h-458c-12 0-21-9-21-21s9-21 21-21z m-152 119c-8 8-21 8-29 0l-84-83c-8-8-8-22 0-30l84-83c4-4 9-6 14-6s11 2 15 6c8 8 8 21 0 29l-69 69 69 69c8 8 8 21 0 29z m875-83l-83 83c-8 8-22 8-30 0s-8-21 0-29l69-69-69-69c-8-8-8-21 0-29 4-4 10-6 15-6s11 2 15 6l83 83c8 8 8 22 0 30z" horiz-adv-x="1000" />

<glyph glyph-name="post" unicode="&#xe845;" d="M998 467c1 3 2 5 2 8 0 76-43 156-131 244s-168 131-244 131c-3 0-5-1-8-2-2 0-4-2-6-3 0-1 0-1-1-1l0 0c0 0 0 0 0 0-53-53-83-130-66-212l-150-150c-57 34-185 44-263-34-69-69 30-202 131-306l-256-257c-8-8-8-21 0-29 4-4 10-6 15-6s11 2 15 6l256 256c80-78 177-154 249-154 22 0 41 7 57 23 78 78 68 205 34 263l150 150c15-3 31-5 46-5 64 0 123 28 166 71 1 1 2 3 2 4 1 1 2 2 2 3z m-42 32c-50 12-131 56-191 116-60 60-104 141-116 191 58-9 121-47 191-117 69-69 108-132 116-190z m-387-488c-36-36-137 20-263 145-125 126-181 227-145 263 65 65 168 51 208 29-10-32 5-85 75-154 57-57 102-78 135-78 7 0 13 1 19 3 22-40 36-143-29-208z m21 250c0 0 0 0-1 0 0 0 0 0 0 0-8-9-49-5-116 62-67 67-71 108-62 116l147 148c15-35 38-71 73-106 35-35 71-58 106-73l-147-147z m71 250c-102 101-93 202-48 270 18-61 66-139 122-196 57-56 135-104 197-122-69-45-170-54-271 48z" horiz-adv-x="1000" />

<glyph glyph-name="posts-carousel" unicode="&#xe846;" d="M119 427c-8 8-21 8-29 0l-84-83c-8-8-8-21 0-30l84-83c4-4 9-6 14-6s11 2 15 6c8 8 8 22 0 30l-69 68 69 69c8 8 8 21 0 29z m875-83l-83 83c-8 8-22 8-30 0s-8-21 0-29l69-69-69-68c-8-9-8-22 0-30 4-4 10-6 15-6s11 2 15 6l83 83c8 9 8 22 0 30z m-681 173h-125c-12 0-21-10-21-21v-125c0-12 9-21 21-21h125c11 0 20 9 20 21v125c0 11-9 21-20 21z m-21-125h-84v83h84v-83z m271 125h-125c-12 0-21-10-21-21v-125c0-12 9-21 21-21h125c11 0 20 9 20 21v125c0 11-9 21-20 21z m-21-125h-84v83h84v-83z m271 125h-125c-12 0-21-10-21-21v-125c0-12 9-21 21-21h125c11 0 20 9 20 21v125c0 11-9 21-20 21z m-21-125h-84v83h84v-83z m-479-84h-125c-12 0-21-9-21-20s9-21 21-21h125c11 0 20 9 20 21s-9 20-20 20z m250 0h-125c-12 0-21-9-21-20s9-21 21-21h125c11 0 20 9 20 21s-9 20-20 20z m250 0h-125c-12 0-21-9-21-20s9-21 21-21h125c11 0 20 9 20 21s-9 20-20 20z m-542-83h-83c-12 0-21-9-21-21s9-21 21-21h83c11 0 21 10 21 21s-10 21-21 21z m250 0h-83c-12 0-21-9-21-21s9-21 21-21h83c11 0 21 10 21 21s-10 21-21 21z m250 0h-83c-12 0-21-9-21-21s9-21 21-21h83c11 0 21 10 21 21s-10 21-21 21z" horiz-adv-x="1000" />

<glyph glyph-name="posts-grid" unicode="&#xe847;" d="M292 767h-250c-12 0-21-10-21-21v-250c0-12 9-21 21-21h250c11 0 21 9 21 21v250c0 11-10 21-21 21z m-21-250h-208v208h208v-208z m-21-125c12 0 21 9 21 21s-9 20-21 20h-167c-11 0-20-9-20-20s9-21 20-21h167z m375 375h-250c-11 0-21-10-21-21v-250c0-12 10-21 21-21h250c12 0 21 9 21 21v250c0 11-9 21-21 21z m-21-250h-208v208h208v-208z m-21-125c12 0 21 9 21 21s-9 20-21 20h-166c-12 0-21-9-21-20s9-21 21-21h166z m375 375h-250c-11 0-20-10-20-21v-250c0-12 9-21 20-21h250c12 0 21 9 21 21v250c0 11-9 21-21 21z m-20-250h-209v208h209v-208z m-21-125c11 0 21 9 21 21s-10 20-21 20h-167c-11 0-21-9-21-20s10-21 21-21h167z m-625-84h-250c-12 0-21-9-21-20v-250c0-12 9-21 21-21h250c11 0 21 9 21 21v250c0 11-10 20-21 20z m-21-250h-208v209h208v-209z m-21-83h-167c-11 0-20-9-20-21s9-21 20-21h167c12 0 21 10 21 21s-9 21-21 21z m375 333h-250c-11 0-21-9-21-20v-250c0-12 10-21 21-21h250c12 0 21 9 21 21v250c0 11-9 20-21 20z m-21-250h-208v209h208v-209z m-21-83h-166c-12 0-21-9-21-21s9-21 21-21h166c12 0 21 10 21 21s-9 21-21 21z m375 333h-250c-11 0-20-9-20-20v-250c0-12 9-21 20-21h250c12 0 21 9 21 21v250c0 11-9 20-21 20z m-20-250h-209v209h209v-209z m-21-83h-167c-11 0-21-9-21-21s10-21 21-21h167c11 0 21 10 21 21s-10 21-21 21z" horiz-adv-x="1000" />

<glyph glyph-name="posts-group" unicode="&#xe848;" d="M979 767h-250c-11 0-21-10-21-21v-250c0-12 10-21 21-21h250c12 0 21 9 21 21v250c0 11-9 21-21 21z m-21-250h-208v208h208v-208z m-20-125c11 0 20 9 20 21s-9 20-20 20h-167c-12 0-21-9-21-20s9-21 21-21h167z m41-84h-250c-11 0-21-9-21-20v-250c0-12 10-21 21-21h250c12 0 21 9 21 21v250c0 11-9 20-21 20z m-21-250h-208v209h208v-209z m-20-83h-167c-12 0-21-9-21-21s9-21 21-21h167c11 0 20 10 20 21s-9 21-20 21z m-292 792h-625c-12 0-21-10-21-21v-792c0-11 9-21 21-21h625c11 0 21 10 21 21v792c0 11-10 21-21 21z m-21-792h-583v750h583v-750z m-479 83h250c11 0 21 10 21 21s-10 21-21 21h-250c-12 0-21-9-21-21s9-21 21-21z m0 125h375c11 0 21 10 21 21s-10 21-21 21h-375c-12 0-21-9-21-21s9-21 21-21z m0 125h375c11 0 21 10 21 21s-10 21-21 21h-375c-12 0-21-9-21-21s9-21 21-21z" horiz-adv-x="1000" />

<glyph glyph-name="posts-justified" unicode="&#xe849;" d="M21 600h208c12 0 21 9 21 21v208c0 12-9 21-21 21h-208c-12 0-21-9-21-21v-208c0-12 9-21 21-21z m21 208h166v-166h-166v166z m271-208h375c11 0 20 9 20 21v208c0 12-9 21-20 21h-375c-12 0-21-9-21-21v-208c0-12 9-21 21-21z m20 208h334v-166h-334v166z m646 42h-208c-12 0-21-9-21-21v-208c0-12 9-21 21-21h208c12 0 21 9 21 21v208c0 12-9 21-21 21z m-21-208h-166v166h166v-166z m-895-84c-12 0-21-9-21-20s9-21 21-21h125c11 0 20 9 20 21s-9 20-20 20h-125z m520-20c0 11-9 20-20 20h-125c-12 0-21-9-21-20s9-21 21-21h125c11 0 20 9 20 21z m355-21c11 0 20 9 20 21s-9 20-20 20h-125c-12 0-21-9-21-20s9-21 21-21h125z m-459-292h209c11 0 20 9 20 21v208c0 12-9 21-20 21h-209c-11 0-21-9-21-21v-208c0-12 10-21 21-21z m21 208h167v-166h-167v166z m-479-208h375c11 0 21 9 21 21v208c0 12-10 21-21 21h-375c-12 0-21-9-21-21v-208c0-12 9-21 21-21z m21 208h333v-166h-333v166z m937 42h-208c-12 0-21-9-21-21v-208c0-12 9-21 21-21h208c12 0 21 9 21 21v208c0 12-9 21-21 21z m-21-208h-166v166h166v-166z m-312-84h-125c-12 0-21-9-21-20s9-21 21-21h125c11 0 21 9 21 21s-10 20-21 20z m-500 0c-12 0-21-9-21-20s9-21 21-21h125c11 0 21 9 21 21s-10 20-21 20h-125z m792-41c11 0 20 9 20 21s-9 20-20 20h-125c-12 0-21-9-21-20s9-21 21-21h125z m-750-42h-167c-12 0-21-9-21-21v-208c0-12 9-21 21-21h167c11 0 20 9 20 21v208c0 12-9 21-20 21z m-21-208h-125v166h125v-166z m437 208h-333c-12 0-21-9-21-21v-208c0-12 9-21 21-21h333c12 0 21 9 21 21v208c0 12-9 21-21 21z m-21-208h-291v166h291v-166z m396 208h-291c-12 0-21-9-21-21v-208c0-12 9-21 21-21h291c12 0 21 9 21 21v208c0 12-9 21-21 21z m-21-208h-250v166h250v-166z" horiz-adv-x="1000" />

<glyph glyph-name="posts-masonry" unicode="&#xe84a;" d="M292 850h-250c-12 0-21-9-21-21v-250c0-11 9-21 21-21h250c11 0 21 10 21 21v250c0 12-10 21-21 21z m-21-250h-208v208h208v-208z m-21-125c12 0 21 9 21 21s-9 21-21 21h-167c-11 0-20-10-20-21s9-21 20-21h167z m375 375h-250c-11 0-21-9-21-21v-416c0-12 10-21 21-21h250c12 0 21 9 21 21v416c0 12-9 21-21 21z m-21-417h-208v375h208v-375z m-21-125c12 0 21 10 21 21s-9 21-21 21h-166c-12 0-21-9-21-21s9-21 21-21h166z m375 542h-250c-11 0-20-9-20-21v-333c0-12 9-21 20-21h250c12 0 21 9 21 21v333c0 12-9 21-21 21z m-20-333h-209v291h209v-291z m-21-125c11 0 21 9 21 21s-10 20-21 20h-167c-11 0-21-9-21-20s10-21 21-21h167z m-625 0h-250c-12 0-21-10-21-21v-250c0-12 9-21 21-21h250c11 0 21 9 21 21v250c0 11-10 21-21 21z m-21-250h-208v208h208v-208z m-21-84h-167c-11 0-20-9-20-20s9-21 20-21h167c12 0 21 9 21 21s-9 20-21 20z m375 167h-250c-11 0-21-9-21-21v-250c0-11 10-21 21-21h250c12 0 21 10 21 21v250c0 12-9 21-21 21z m-21-250h-208v208h208v-208z m-21-83h-166c-12 0-21-10-21-21s9-21 21-21h166c12 0 21 9 21 21s-9 21-21 21z m375 416h-250c-11 0-20-9-20-20v-250c0-12 9-21 20-21h250c12 0 21 9 21 21v250c0 11-9 20-21 20z m-20-250h-209v209h209v-209z m-21-83h-167c-11 0-21-9-21-21s10-21 21-21h167c11 0 21 10 21 21s-10 21-21 21z" horiz-adv-x="1000" />

<glyph glyph-name="posts-ticker" unicode="&#xe84b;" d="M471 788c-41 0-75-18-97-51-2-3-4-7-6-10-1-1-2-2-2-3l-5-9c0-1 0-2-1-3l-126-264-171-109c-40-25-63-68-63-114v-7c0-42 19-80 51-106 24-20 54-29 84-29 21 0 41 5 60 14l83-15 40-81c14-28 39-48 69-57l107-31c2 0 4-1 6-1 4 0 8 1 11 3 5 4 8 8 9 14l4 20c11 55-19 108-71 126l-46 125 266-36c1 0 1 0 2 0l10-1c1 0 3 0 4 0 2 0 4 0 6 0 42 0 75 17 98 50 41 59 39 160-3 270-65 171-205 305-319 305z m-394-643c-22 17-35 44-35 73v7c0 32 16 61 43 79l145 92c5-67 25-136 98-174l-146-85c-33-19-75-16-105 8z m356-107c35-9 57-43 51-78l-86 24c-19 5-34 18-43 36l-45 89c-3 6-8 10-14 12l-44 8 112 66 54-144c2-6 8-11 15-13z m-53 207c-94 28-109 104-109 184l75 157c4-37 14-77 30-118 39-102 105-190 175-245l-171 22z m379-8c-15-22-36-33-64-33-5 0-10 1-16 2l-3 0c-91 15-207 136-261 277-32 83-38 161-17 211l0 1c3 7 6 13 10 19 15 21 36 32 63 32 94 0 222-128 280-278 37-96 40-184 8-231z m-187 338c-32 9-66 4-95-14-9-6-13-18-7-28 6-10 19-13 29-7 19 11 41 14 63 9 22-5 40-19 51-38 12-19 15-41 10-63-6-22-19-40-38-51-10-6-13-19-8-29 4-6 11-10 18-10 4 0 8 1 11 3 29 17 49 44 57 77 8 32 3 66-14 94-17 29-45 49-77 57z m221-3c3-8 11-14 20-14 2 0 4 1 7 2l167 62c10 4 16 16 12 27-4 11-16 16-27 12l-167-62c-11-4-16-16-12-27z m-22 91c5 0 11 2 15 6l83 83c8 8 8 21 0 29s-21 9-30 0l-83-83c-8-8-8-21 0-29 4-4 10-6 15-6z m208-167h-125c-11 0-21-9-21-21s10-21 21-21h125c12 0 21 10 21 21s-9 21-21 21z" horiz-adv-x="1000" />

<glyph glyph-name="price-list" unicode="&#xe84c;" d="M646-25h-521v583h229c12 0 21 10 21 21v229h417v-562c0-12 9-21 21-21s20 9 20 21v583c0 12-9 21-20 21h-459c-3 0-5-1-8-2-1 0-1-1-2-1-2-1-3-2-5-3l-250-250c0-1-1-2-2-3-1-2-1-2-2-4-1-2-2-5-2-8v-625c0-11 10-21 21-21h542c11 0 21 10 21 21s-10 21-21 21z m-491 625l178 179v-179h-178z m762-635c0 47-51 63-84 69v64c24-5 41-17 42-28 1-11 12-19 23-19 11 2 20 12 19 23-4 34-38 60-84 66v23c0 11-9 20-20 20s-21-9-21-20v-23c-48-6-84-35-84-71 0-48 51-63 84-70v-63c-24 4-41 16-42 27-1 12-12 20-23 19-11-1-20-11-18-23 3-33 37-60 83-66v-22c0-12 9-21 21-21s20 9 20 21v22c49 7 84 36 84 72z m-167 104c0 11 17 24 42 29v-56c-34 8-42 19-42 27z m83-134v57c34-8 42-19 42-27 0-12-17-25-42-30z m-562 540c-35 0-63-28-63-62s28-63 63-63 62 28 62 63-28 62-62 62z m0-83c-12 0-21 9-21 21s9 20 21 20 21-9 21-20-10-21-21-21z m0-84c-35 0-63-28-63-62s28-63 63-63 62 28 62 63-28 62-62 62z m0-83c-12 0-21 9-21 21s9 21 21 21 21-10 21-21-10-21-21-21z m0-83c-35 0-63-28-63-63s28-62 63-62 62 28 62 62-28 63-62 63z m0-84c-12 0-21 10-21 21s9 21 21 21 21-9 21-21-10-21-21-21z m167 375c-12 0-21-9-21-20s9-21 21-21h250c11 0 20 9 20 21s-9 20-20 20h-250z m250-166h-250c-12 0-21-10-21-21s9-21 21-21h250c11 0 20 9 20 21s-9 21-20 21z m-42-167h-208c-12 0-21-9-21-21s9-21 21-21h208c11 0 21 10 21 21s-10 21-21 21z" horiz-adv-x="1000" />

<glyph glyph-name="price-table" unicode="&#xe84d;" d="M958 663h-187v62c0 12-9 21-21 21h-500c-11 0-21-9-21-21v-62h-187c-12 0-21-10-21-21v-584c0-11 9-20 21-20h187v-63c0-12 10-21 21-21h500c12 0 21 9 21 21v63h187c12 0 21 9 21 20v584c0 11-9 21-21 21z m-20-42v-83h-167v83h167z m-667 83h458v-125h-458v125z m-42-83v-83h-166v83h166z m-166-542v417h166v-417h-166z m666-83h-458v542h458v-542z m42 83v417h167v-417h-167z m-250 204v85c23-5 40-20 42-37 1-11 11-19 22-19 12 1 20 12 19 23-3 39-38 69-83 76v22c0 12-9 21-21 21s-21-9-21-21v-22c-47-8-83-42-83-82 0-39 27-65 83-79v-85c-23 6-40 20-42 37 0 11-12 20-22 19-11-1-20-11-19-23 3-38 38-68 83-75v-23c0-11 10-21 21-21s21 10 21 21v23c47 7 83 41 83 81 0 39-27 66-83 79z m-83 46c0 18 17 33 41 39v-75c-28 8-41 20-41 36z m83-164v75c28-8 42-19 42-36 0-17-18-33-42-39z" horiz-adv-x="1000" />

<glyph glyph-name="radio" unicode="&#xe84e;" d="M146 829c-81 0-146-65-146-146s65-145 146-145 146 65 146 145-66 146-146 146z m0-250c-58 0-104 47-104 104s46 105 104 105 104-47 104-105-47-104-104-104z m0-83c-81 0-146-66-146-146s65-146 146-146 146 66 146 146-66 146-146 146z m0-250c-58 0-104 47-104 104s46 104 104 104 104-47 104-104-47-104-104-104z m0-83c-81 0-146-66-146-146s65-146 146-146 146 65 146 146-66 146-146 146z m0-251c-58 0-104 47-104 105s46 104 104 104 104-47 104-104-47-105-104-105z m250 751h583c12 0 21 9 21 20s-9 21-21 21h-583c-12 0-21-9-21-21s9-20 21-20z m583-292h-583c-12 0-21-9-21-21s9-21 21-21h583c12 0 21 10 21 21s-9 21-21 21z m0-333h-583c-12 0-21-10-21-21s9-21 21-21h583c12 0 21 9 21 21s-9 21-21 21z m-833 375c-35 0-63-28-63-63s28-62 63-62 62 28 62 62-28 63-62 63z m0-84c-12 0-21 10-21 21s9 21 21 21 21-9 21-21-10-21-21-21z" horiz-adv-x="1000" />

<glyph glyph-name="rtl" unicode="&#xe84f;" d="M229 308c12 0 21 10 21 21v104h93l77-115c4-6 11-10 18-10 4 0 8 2 11 4 10 6 12 19 6 29l-66 99c40 14 69 52 69 98v41c0 58-46 104-104 104h-125c-11 0-21-9-21-20v-334c0-11 10-21 21-21z m21 334h104c35 0 63-28 63-63v-41c0-35-28-63-63-63h-104v167z m229 0h104v-313c0-11 10-21 21-21s21 10 21 21v313h104c12 0 21 9 21 21s-9 20-21 20h-250c-11 0-21-9-21-20s10-21 21-21z m334-334h166c12 0 21 10 21 21s-9 21-21 21h-146v313c0 11-9 20-20 20s-21-9-21-20v-334c0-11 9-21 21-21z m166-125h-908l90 90c8 8 8 21 0 29s-22 8-30 0l-125-125c0 0 0 0 0 0-2-2-3-4-4-6-3-6-3-11 0-16 0-2 1-3 2-4 1-1 1-2 2-3l125-125c4-4 10-6 15-6s11 2 15 6c8 8 8 21 0 29l-90 90h908c12 0 21 9 21 21s-9 20-21 20z" horiz-adv-x="1000" />

<glyph glyph-name="scroll" unicode="&#xe850;" d="M583 850h-166c-150 0-271-121-271-271v-375c0-195 159-354 354-354s354 159 354 354v375c0 150-121 271-271 271z m-83-167c12 0 21-9 21-20v-125c0-12-9-21-21-21s-21 9-21 21v125c0 11 10 20 21 20z m313-479c0-172-141-312-313-312s-312 140-312 312v375c0 127 102 229 229 229h62v-87c-24-8-41-31-41-58v-125c0-35 28-63 62-63s63 28 63 63v125c0 27-18 50-42 58v87h62c127 0 230-102 230-229v-375z" horiz-adv-x="1000" />

<glyph glyph-name="search" unicode="&#xe851;" d="M994-115l-304 305c63 70 102 163 102 264 0 218-178 396-396 396s-396-178-396-396 178-396 396-396c102 0 194 39 264 102l304-304c5-4 10-6 15-6s11 2 15 6c8 8 8 21 0 29z m-952 569c0 196 159 354 354 354s354-158 354-354-159-354-354-354-354 159-354 354z" horiz-adv-x="1000" />

<glyph glyph-name="select" unicode="&#xe852;" d="M938 663h-875c-35 0-63-28-63-63v-500c0-34 28-62 63-62h875c34 0 62 28 62 62v500c0 35-28 63-62 63z m20-563c0-11-9-21-20-21h-875c-12 0-21 10-21 21v500c0 12 9 21 21 21h875c11 0 20-9 20-21v-500z m-119 306l-151-151-152 151c-9 9-22 9-30 0s-8-21 0-29l167-167c4-4 9-6 15-6s10 2 14 6l167 167c8 8 8 21 0 29-8 9-21 9-30 0z" horiz-adv-x="1000" />

<glyph glyph-name="share" unicode="&#xe853;" d="M833 183c-57 0-108-29-138-74l-372 186c6 17 10 36 10 55s-4 38-10 55l372 186c30-45 81-74 138-74 92 0 167 74 167 166s-75 167-167 167-166-75-166-167c0-19 4-37 10-55l-372-185c-30 44-81 74-138 74-92 0-167-75-167-167s75-167 167-167c57 0 108 30 138 75l372-186c-6-18-10-36-10-55 0-92 74-167 166-167s167 75 167 167-75 166-167 166z m0 625c69 0 125-56 125-125s-56-125-125-125c-48 0-90 29-111 69 0 1 0 1 0 1 0 0 0 0 0 0-8 17-14 35-14 55 0 69 56 125 125 125z m-666-583c-69 0-125 56-125 125s56 125 125 125c48 0 90-28 111-69 0 0 0 0 0 0 0 0 0 0 0 0 9-17 14-36 14-56 0-20-5-38-14-55 0 0 0 0 0-1 0 0 0 0 0 0-21-41-63-69-111-69z m666-333c-69 0-125 56-125 125 0 20 6 38 14 55 0 0 0 0 0 0 0 0 0 0 0 1 21 40 63 69 111 69 69 0 125-56 125-125s-56-125-125-125z" horiz-adv-x="1000" />

<glyph glyph-name="sidebar" unicode="&#xe854;" d="M979 850h-958c-12 0-21-9-21-21v-958c0-12 9-21 21-21h958c12 0 21 9 21 21v958c0 12-9 21-21 21z m-21-42v-166h-916v166h916z m-916-208h541v-708h-541v708z m583-708v708h333v-708h-333z m229 125h-125c-11 0-21-10-21-21s10-21 21-21h125c12 0 21 9 21 21s-9 21-21 21z m0 125h-125c-11 0-21-10-21-21s10-21 21-21h125c12 0 21 9 21 21s-9 21-21 21z m0 125h-125c-11 0-21-10-21-21s10-21 21-21h125c12 0 21 9 21 21s-9 21-21 21z m0 125h-125c-11 0-21-10-21-21s10-21 21-21h125c12 0 21 9 21 21s-9 21-21 21z m0 125h-125c-11 0-21-10-21-21s10-21 21-21h125c12 0 21 9 21 21s-9 21-21 21z" horiz-adv-x="1000" />

<glyph glyph-name="skill-bar" unicode="&#xe855;" d="M938 829h-875c-35 0-63-28-63-62v-84c0-34 28-62 63-62h749c0 0 0 0 1 0s0 0 0 0h125c34 0 62 28 62 62v84c0 34-28 62-62 62z m-146-166h-96l96 95v-95z m-155 0h-66l125 125h66l-125-125z m-191 0l125 125h66l-125-125h-66z m-125 0l125 125h66l-125-125h-66z m-125 0l125 125h66l-125-125h-66z m-125 0l125 125h66l-125-125h-66z m-8 125h74l-95-96v75c0 11 9 21 21 21z m895-105c0-11-9-20-20-20h-105v125h105c11 0 20-10 20-21v-84z m-20-104h-875c-35 0-63-28-63-62v-84c0-34 28-62 63-62h499c0 0 0 0 1 0s0 0 0 0h375c34 0 62 28 62 62v84c0 34-28 62-62 62z m-396-166h-96l96 95v-95z m-155 0h-66l125 125h66l-125-125z m-191 0l125 125h66l-125-125h-66z m-125 0l125 125h66l-125-125h-66z m-8 125h74l-95-96v75c0 11 9 21 21 21z m895-105c0-11-9-20-20-20h-355v125h355c11 0 20-10 20-21v-84z m-20-354h-875c-35 0-63-28-63-62v-84c0-34 28-62 63-62h249c0 0 0 0 1 0s0 0 0 0h625c34 0 62 28 62 62v84c0 34-28 62-62 62z m-646-167h-96l96 96v-96z m-155 0h-66l125 126h66l-125-126z m-74 126h74l-95-96v75c0 11 9 21 21 21z m895-105c0-11-9-21-20-21h-605v126h605c11 0 20-10 20-21v-84z m-20 396h-875c-35 0-63-28-63-62v-84c0-34 28-62 63-62h624c0 0 0 0 1 0s0 0 0 0h250c34 0 62 28 62 62v84c0 34-28 62-62 62z m-271-166h-96l96 95v-95z m-155 0h-66l125 125h66l-125-125z m-191 0l125 125h66l-125-125h-66z m-125 0l125 125h66l-125-125h-66z m-125 0l125 125h66l-125-125h-66z m-8 125h74l-95-96v75c0 11 9 21 21 21z m895-105c0-11-9-20-20-20h-230v125h230c11 0 20-10 20-21v-84z" horiz-adv-x="1000" />

<glyph glyph-name="slider-3d" unicode="&#xe856;" d="M792 621h-584c-11 0-20-9-20-21v-417c0-11 9-20 20-20h584c11 0 21 9 21 20v417c0 12-10 21-21 21z m-21-417h-542v375h542v-375z m-655 373l-84-42c-10-5-14-17-9-28 5-10 18-14 28-9l53 27v-266l-53 26c-10 5-23 1-28-9-5-10-1-23 9-28l84-42c3-1 6-2 9-2 4 0 8 1 11 3 6 4 10 11 10 18v333c0 8-4 14-10 18-6 4-14 4-20 1z m833-292l-53-26v266l53-27c10-5 23-1 28 9 5 11 1 23-9 28l-84 42c-6 3-14 3-20-1-6-4-10-10-10-18v-333c0-7 4-14 10-18 3-2 7-3 11-3 3 0 6 1 9 2l84 42c10 5 14 18 9 28-5 10-18 14-28 9z" horiz-adv-x="1000" />

<glyph glyph-name="slider-album" unicode="&#xe857;" d="M971 533c-5 4-11 5-18 4l-140-35v56c0 12-10 21-21 21h-584c-11 0-20-9-20-21v-56l-141 35c-6 1-13 0-18-4s-8-10-8-16v-334c0-6 3-12 8-16 4-3 8-4 13-4 1 0 3 0 5 0l141 35v-56c0-12 9-21 20-21h584c11 0 21 9 21 21v56l140-35c2 0 4 0 5 0 5 0 10 1 13 4 5 4 8 10 8 16v334c0 6-3 12-8 16z m-908-323v280l125-31v-218l-125-31z m708-47h-542v375h542v-375z m167 47l-125 31v218l125 31v-280z" horiz-adv-x="1000" />

<glyph glyph-name="slider-device" unicode="&#xe858;" d="M125 288c5 0 11 2 15 6 8 8 8 21 0 29l-69 69 69 68c8 8 8 22 0 30s-22 8-30 0l-83-84c-8-8-8-21 0-29l83-83c4-4 10-6 15-6z m848 118l-83 84c-8 8-22 8-30 0-8-8-8-22 0-30l69-68-69-69c-8-8-8-21 0-29 4-4 10-6 15-6s11 2 15 6l83 83c8 8 8 21 0 29z m-98-160h-62v354c0 35-28 63-63 63h-500c-34 0-62-28-62-63v-354h-63c-11 0-21-9-21-21v-42c0-34 28-62 63-62h666c35 0 63 28 63 62v42c0 12-9 21-21 21z m-646 354c0 12 10 21 21 21h500c12 0 21-9 21-21v-354h-542v354z m625-417c0-11-9-20-21-20h-666c-12 0-21 9-21 20v21h62 584 62v-21z" horiz-adv-x="1000" />

<glyph glyph-name="slider-full-screen" unicode="&#xe859;" d="M958 704h-916c-12 0-21-9-21-21v-666c0-12 9-21 21-21h916c12 0 21 9 21 21v666c0 12-9 21-21 21z m-20-666h-875v625h875v-625z m-744 214c4-4 9-6 14-6s11 2 15 6c8 8 8 21 0 29l-68 69 68 69c8 8 8 21 0 29s-21 8-29 0l-84-83c-8-8-8-22 0-30l84-83z m583 0c4-4 9-6 15-6s10 2 14 6l84 83c8 8 8 22 0 30l-84 83c-8 8-21 8-29 0s-8-21 0-29l69-69-69-69c-8-8-8-21 0-29z m-460-80c0-1 1-2 2-3 0-1 1-1 2-2 1-1 3-2 4-3 3-1 6-1 8-1h84c11 0 21 9 21 20s-10 21-21 21h-33l68 69c8 8 8 21 0 29s-21 8-29 0l-69-68v33c0 11-9 21-21 21s-20-10-20-21v-84c0-2 0-5 1-8 1-1 2-2 3-3z m-4 345v-84c0-11 9-20 20-20s21 9 21 20v33l69-68c4-4 9-6 15-6s10 2 14 6c8 8 8 21 0 29l-68 69h33c11 0 21 9 21 21s-10 21-21 21h-84c-1 0-2-1-3-1-2 0-3 0-5-1-2-1-4-3-6-5l0 0c-1 0-1 0-1 0-1-2-3-4-4-6-1-3-1-6-1-8z m250-125c5 0 10 2 14 6l69 68v-33c0-11 9-20 21-20 11 0 21 9 21 20v84c0 1-1 3-1 4-1 1-1 3-1 4-2 5-6 9-11 11-2 0-3 0-4 1-1 0-3 1-4 1h-84c-11 0-20-10-20-21s9-21 20-21h33l-68-69c-8-8-8-21 0-29 4-4 9-6 15-6z m53-188h-33c-11 0-20-9-20-21 0-11 9-20 20-20h84c2 0 5 0 8 1 2 1 4 3 6 4 0 0 0 0 0 1l0 0c2 2 4 4 5 6 1 2 1 3 1 5 0 1 1 2 1 3v84c0 11-10 21-21 21s-21-10-21-21v-33l-69 68c-8 8-21 8-29 0s-8-21 0-29l68-69z" horiz-adv-x="1000" />

<glyph glyph-name="slider-push" unicode="&#xe85a;" d="M792 621h-584c-11 0-20-9-20-21v-417c0-11 9-20 20-20h584c11 0 21 9 21 20v417c0 12-10 21-21 21z m-21-417h-542v375h542v-375z m-646 417h-83c-12 0-21-9-21-21s9-21 21-21h62v-375h-62c-12 0-21-9-21-21 0-11 9-20 21-20h83c12 0 21 9 21 20v417c0 12-9 21-21 21z m833-417h-62v375h62c12 0 21 10 21 21s-9 21-21 21h-83c-11 0-21-9-21-21v-417c0-11 10-20 21-20h83c12 0 21 9 21 20s-9 21-21 21z" horiz-adv-x="1000" />

<glyph glyph-name="slider-vertical" unicode="&#xe85b;" d="M958 663h-916c-12 0-21-10-21-21v-584c0-11 9-20 21-20h916c12 0 21 9 21 20v584c0 11-9 21-21 21z m-20-584h-875v542h875v-542z m-369-89l-69-69-69 69c-8 8-21 8-29 0s-8-22 0-30l83-83c4-4 10-6 15-6s11 2 15 6l83 83c8 8 8 22 0 30-8 8-21 8-29 0z m-138 720l69 69 69-69c4-4 9-6 14-6s11 2 15 6c8 8 8 22 0 30l-83 83c-8 8-22 8-30 0l-83-83c-8-8-8-22 0-30s21-8 29 0z" horiz-adv-x="1000" />

<glyph glyph-name="slider-video" unicode="&#xe85c;" d="M792 579h-584c-11 0-20-9-20-21v-416c0-12 9-21 20-21h584c11 0 21 9 21 21v416c0 12-10 21-21 21z m-21-416h-542v375h542v-375z m-631 285c-8 8-22 8-30 0l-83-83c-8-8-8-22 0-30l83-83c4-4 10-6 15-6s11 2 15 6c8 8 8 21 0 29l-69 69 69 69c8 8 8 21 0 29z m833-83l-83 83c-8 8-22 8-30 0s-8-21 0-29l69-69-69-69c-8-8-8-21 0-29 4-4 10-6 15-6s11 2 15 6l83 83c8 8 8 22 0 30z m-524-117c3-1 6-2 9-2 4 0 8 1 12 3l125 84c6 4 9 10 9 17s-3 14-9 17l-125 84c-7 4-15 4-21 1-7-4-11-11-11-19v-166c0-8 4-15 11-19z m30 146l67-44-67-44v88z" horiz-adv-x="1000" />

<glyph glyph-name="slides" unicode="&#xe85d;" d="M792 621h-584c-11 0-20-9-20-21v-417c0-11 9-20 20-20h584c11 0 21 9 21 20v417c0 12-10 21-21 21z m-21-417h-542v375h542v-375z m-631 286c-8 8-22 8-30 0l-83-84c-8-8-8-21 0-29l83-83c4-4 10-6 15-6s11 2 15 6c8 8 8 21 0 29l-69 69 69 68c8 8 8 22 0 30z m833-84l-83 84c-8 8-22 8-30 0s-8-22 0-30l69-68-69-69c-8-8-8-21 0-29 4-4 10-6 15-6s11 2 15 6l83 83c8 8 8 21 0 29z" horiz-adv-x="1000" />

<glyph glyph-name="social-icons" unicode="&#xe85e;" d="M926 796l-105 9c-47 4-95 4-142 0l-105-9c-42-4-74-38-74-80v-190c0-42 32-77 74-80l105-10c24-2 47-3 71-3s47 1 71 3l105 10c42 3 74 38 74 80v190c0 42-32 76-74 80z m32-270c0-20-15-37-35-39l-106-9c-44-4-90-4-134 0l-106 9c-20 2-35 19-35 39v190c0 20 15 37 35 39l106 9c22 2 45 3 67 3s45-1 67-3l106-9c20-2 35-19 35-39v-190z m-259 196c-6 4-15 4-21 1-7-4-11-11-11-19v-166c0-8 4-15 11-19 3-1 6-2 10-2 4 0 8 1 11 3l125 84c6 3 9 10 9 17s-3 13-9 17l-125 84z m9-146v89l67-44-67-45z m-264-308c1 2 2 5 2 8 3 8-1 17-8 22-7 5-16 5-23 1-5-3-23-11-37-15-38 30-83 32-128 7-34-20-45-55-46-83-69 10-112 47-137 78-5 5-11 8-18 7-7 0-13-4-16-10-15-24-19-51-12-78 1-5 2-9 4-13 0-1-1-1-1-1-7-4-12-11-12-19 0-32 14-57 32-74 0 0-1-1-1-1-5-6-7-15-3-23 11-24 29-42 52-54-22-7-46-10-69-7-10 1-19-5-22-15-3-9 1-20 10-24 48-27 98-41 146-40 50 0 98 14 141 43 75 50 122 138 118 218 12 9 28 24 39 41 5 8 4 19-2 26-3 3-6 5-9 6z m-169-257c-32-21-92-48-170-30 21 7 40 18 56 31 6 6 8 15 5 23s-10 13-19 14c-17 0-32 5-44 13 6 2 11 5 16 9 7 5 9 14 7 22s-10 14-18 15c-7 0-30 10-44 31 5 0 11 0 16 1 8 2 15 8 16 17 2 9-2 17-10 21-7 5-20 18-25 37-1 6-2 12-2 18 36-33 89-65 166-69 6-1 13 3 17 8 4 5 6 12 4 18-3 11-2 49 25 64 33 19 61 16 87-8 3-3 7-4 11-5-1-3-1-6 0-9 1-6 5-11 9-14-3-4-5-10-4-15 8-69-33-147-99-192z m121 797h-333c-35 0-63-28-63-62v-333c0-35 28-63 63-63h333c34 0 62 28 62 63v333c0 34-28 62-62 62z m21-395c0-12-10-21-21-21h-146v166h42c11 0 21 10 21 21s-10 21-21 21h-42c0 23 19 42 42 42h21c11 0 20 9 20 21s-9 20-20 20h-21c-46 0-84-37-84-83h-20c-12 0-21-9-21-21s9-21 21-21h20v-166h-145c-12 0-21 9-21 21v333c0 11 9 21 21 21h333c11 0 21-10 21-21v-333z m437-21h-208c-81 0-146-66-146-146v-208c0-81 65-146 146-146h208c81 0 146 65 146 146v208c0 80-65 146-146 146z m104-354c0-58-46-105-104-105h-208c-58 0-104 47-104 105v208c0 57 46 104 104 104h208c58 0 104-47 104-104v-208z m-208 229c-69 0-125-56-125-125s56-125 125-125 125 56 125 125-56 125-125 125z m0-209c-46 0-83 38-83 84s37 83 83 83 83-37 83-83-37-84-83-84z" horiz-adv-x="1000" />

<glyph glyph-name="spacer" unicode="&#xe85f;" d="M42 663h916c12 0 21 9 21 20s-9 21-21 21h-916c-12 0-21-9-21-21s9-20 21-20z m583-250c8 0 15 4 19 11s2 16-2 22l-125 167c-8 10-26 10-34 0l-125-167c-4-6-5-15-2-22 4-7 11-11 19-11h104v-125h-104c-8 0-15-5-19-12-3-7-2-15 2-22l125-166c4-6 11-9 17-9s13 3 17 9l125 166c4 7 5 15 2 22-4 7-11 12-19 12h-104v125h104z m-125-278l-83 111h166l-83-111z m0 430l83-111h-166l83 111z m458-527h-916c-12 0-21-10-21-21s9-21 21-21h916c12 0 21 9 21 21s-9 21-21 21z" horiz-adv-x="1000" />

<glyph glyph-name="table" unicode="&#xe860;" d="M979 725h-958c-12 0-21-9-21-21v-708c0-12 9-21 21-21h958c12 0 21 9 21 21v708c0 12-9 21-21 21z m-602-542v125h248v-125h-248z m248-41v-125h-248v125h248z m0 333v-125h-248v125h248z m42 0h291v-125h-291v125z m-332-125h-293v125h293v-125z m-293-42h293v-125h-293v125z m625 0h291v-125h-291v125z m291 375v-166h-916v166h916z m-916-541h293v-125h-293v125z m625-125v125h291v-125h-291z" horiz-adv-x="1000" />

<glyph glyph-name="tabs" unicode="&#xe861;" d="M988 574l-42 111c-9 24-32 40-58 40h-191c-21 0-40-10-51-26-12 16-30 26-51 26h-190c-21 0-39-10-51-26-11 16-30 26-51 26h-191c-26 0-49-16-58-40l-45-120c-6-16-9-32-9-49v-478c0-35 28-63 63-63h875c34 0 62 28 62 63v500c0 13-5 26-12 36z m-291 109h191c9 0 16-5 20-13l26-70h-252l-14 42 9 27c3 9 11 14 20 14z m-292 0h190c9 0 17-5 20-14l23-69h-248l-14 42 9 27c3 9 11 14 20 14z m553-645c0-12-9-21-20-21h-875c-12 0-21 9-21 21v478c0 12 2 23 6 34l45 120c3 8 10 13 19 13h191c9 0 17-5 20-14l32-96c3-9 11-15 20-15h563c5 0 10-2 13-5l1-3c1-2 3-4 5-6 1-2 1-4 1-6v-500z" horiz-adv-x="1000" />

<glyph glyph-name="tel-field" unicode="&#xe862;" d="M938 663h-875c-35 0-63-28-63-63v-500c0-34 28-62 63-62h875c34 0 62 28 62 62v500c0 35-28 63-62 63z m20-563c0-11-9-21-20-21h-875c-12 0-21 10-21 21v500c0 12 9 21 21 21h875c11 0 20-9 20-21v-500z m-460 190c-26 0-52 4-76 12-16 5-34 1-43-9l-45-34c-52 28-85 61-113 112l33 43c11 12 16 29 11 45-9 24-13 50-13 76 0 24-19 44-44 44h-81c-24 0-44-20-44-44 0-228 186-414 415-414 24 0 44 20 44 44v81c0 24-20 44-44 44z m0-127c-206 0-373 167-371 375l84-3c0-30 5-60 14-89l20 7-23-11-42-56c-5-7-5-15-2-22 36-70 78-112 148-148 7-4 16-3 22 2l56 42c1 0 4 2 5 2 28-9 58-14 91-16l-2-83z" horiz-adv-x="1000" />

<glyph glyph-name="text-area" unicode="&#xe863;" d="M938 767h-875c-35 0-63-28-63-63v-708c0-35 28-63 63-63h875c34 0 62 28 62 63v708c0 35-28 63-62 63z m-896-771v708c0 12 9 21 21 21h875c11 0 20-9 20-21v-616l-112-113h-783c-12 0-21 9-21 21z m896-21h-33l53 54v-33c0-12-9-21-20-21z m-689 653c-6 16-33 16-39 0l-125-333c-4-11 1-23 12-27 11-4 23 1 27 12l42 112c0 0 0 0 1 0h125c0 0 0 0 1 0l42-112c3-8 11-13 19-13 3 0 5 0 8 1 10 4 16 16 12 27l-125 333z m-68-195l48 129 48-129h-96z m694-62c0 11-9 21-21 21s-21-10-21-21c0-35-28-63-62-63s-63 28-63 63v83c0 35 28 63 63 63s62-28 62-63c0-11 10-21 21-21s21 10 21 21c0 58-47 104-104 104s-104-46-104-104v-83c0-58 46-104 104-104s104 46 104 104z m-354 187c-24 0-45-8-63-21v84c0 11-9 21-20 21s-21-10-21-21v-167-21-41-21-83c0-12 9-21 21-21s20 9 20 21v0c18-13 39-21 63-21 57 0 104 46 104 104v83c0 58-47 104-104 104z m62-187c0-35-28-63-62-63s-63 28-63 63v21 41 21c0 35 28 63 63 63s62-28 62-63v-83z" horiz-adv-x="1000" />

<glyph glyph-name="text-field" unicode="&#xe864;" d="M938 663h-875c-35 0-63-28-63-63v-500c0-34 28-62 63-62h875c34 0 62 28 62 62v500c0 35-28 63-62 63z m20-563c0-11-9-21-20-21h-875c-12 0-21 10-21 21v500c0 12 9 21 21 21h875c11 0 20-9 20-21v-500z m-729 438c12 0 21 9 21 20s-9 21-21 21h-83c-12 0-21-9-21-21s9-20 21-20h21v-375h-21c-12 0-21-10-21-21s9-21 21-21h83c12 0 21 9 21 21s-9 21-21 21h-21v375h21z" horiz-adv-x="1000" />

<glyph glyph-name="thumbnails-down" unicode="&#xe865;" d="M792 663h-584c-11 0-20-10-20-21v-417c0-11 9-21 20-21h584c11 0 21 10 21 21v417c0 11-10 21-21 21z m-21-417h-542v375h542v-375z m-631 244c-8 8-22 8-30 0l-83-84c-8-8-8-21 0-29l83-83c4-4 10-6 15-6s11 2 15 6c8 8 8 21 0 29l-69 69 69 68c8 8 8 22 0 30z m833-84l-83 84c-8 8-22 8-30 0s-8-22 0-30l69-68-69-69c-8-8-8-21 0-29 4-4 10-6 15-6s11 2 15 6l83 83c8 8 8 21 0 29z m-681-243h-84c-11 0-20-10-20-21v-84c0-11 9-20 20-20h84c11 0 21 9 21 20v84c0 11-10 21-21 21z m-21-84h-42v42h42v-42z m187 84h-83c-11 0-21-10-21-21v-84c0-11 10-20 21-20h83c12 0 21 9 21 20v84c0 11-9 21-21 21z m-20-84h-42v42h42v-42z m187 84h-83c-12 0-21-10-21-21v-84c0-11 9-20 21-20h83c12 0 21 9 21 20v84c0 11-9 21-21 21z m-21-84h-41v42h41v-42z m188 84h-84c-11 0-20-10-20-21v-84c0-11 9-20 20-20h84c11 0 21 9 21 20v84c0 11-10 21-21 21z m-21-84h-42v42h42v-42z" horiz-adv-x="1000" />

<glyph glyph-name="thumbnails-half" unicode="&#xe866;" d="M479 663h-458c-12 0-21-10-21-21v-584c0-11 9-20 21-20h458c12 0 21 9 21 20v584c0 11-9 21-21 21z m-21-584h-416v542h416v-542z m521 584h-83c-12 0-21-10-21-21v-84c0-11 9-20 21-20h83c12 0 21 9 21 20v84c0 11-9 21-21 21z m-21-84h-41v42h41v-42z m21-83h-83c-12 0-21-9-21-21v-83c0-12 9-21 21-21h83c12 0 21 9 21 21v83c0 12-9 21-21 21z m-21-83h-41v41h41v-41z m21-84h-83c-12 0-21-9-21-21v-83c0-11 9-21 21-21h83c12 0 21 10 21 21v83c0 12-9 21-21 21z m-21-83h-41v42h41v-42z m21-83h-83c-12 0-21-10-21-21v-84c0-11 9-20 21-20h83c12 0 21 9 21 20v84c0 11-9 21-21 21z m-21-84h-41v42h41v-42z m-145 584h-84c-11 0-21-10-21-21v-84c0-11 10-20 21-20h84c11 0 20 9 20 20v84c0 11-9 21-20 21z m-21-84h-42v42h42v-42z m21-83h-84c-11 0-21-9-21-21v-83c0-12 10-21 21-21h84c11 0 20 9 20 21v83c0 12-9 21-20 21z m-21-83h-42v41h42v-41z m21-84h-84c-11 0-21-9-21-21v-83c0-11 10-21 21-21h84c11 0 20 10 20 21v83c0 12-9 21-20 21z m-21-83h-42v42h42v-42z m21-83h-84c-11 0-21-10-21-21v-84c0-11 10-20 21-20h84c11 0 20 9 20 20v84c0 11-9 21-20 21z m-21-84h-42v42h42v-42z m-146 584h-83c-12 0-21-10-21-21v-84c0-11 9-20 21-20h83c11 0 21 9 21 20v84c0 11-10 21-21 21z m-21-84h-42v42h42v-42z m21-83h-83c-12 0-21-9-21-21v-83c0-12 9-21 21-21h83c11 0 21 9 21 21v83c0 12-10 21-21 21z m-21-83h-42v41h42v-41z m21-84h-83c-12 0-21-9-21-21v-83c0-11 9-21 21-21h83c11 0 21 10 21 21v83c0 12-10 21-21 21z m-21-83h-42v42h42v-42z m21-83h-83c-12 0-21-10-21-21v-84c0-11 9-20 21-20h83c11 0 21 9 21 20v84c0 11-10 21-21 21z m-21-84h-42v42h42v-42z" horiz-adv-x="1000" />

<glyph glyph-name="thumbnails-right" unicode="&#xe867;" d="M813 663h-792c-12 0-21-10-21-21v-584c0-11 9-20 21-20h792c11 0 20 9 20 20v584c0 11-9 21-20 21z m-21-584h-750v542h750v-542z m187 584h-83c-12 0-21-10-21-21v-84c0-11 9-20 21-20h83c12 0 21 9 21 20v84c0 11-9 21-21 21z m-21-84h-41v42h41v-42z m21-83h-83c-12 0-21-9-21-21v-83c0-12 9-21 21-21h83c12 0 21 9 21 21v83c0 12-9 21-21 21z m-21-83h-41v41h41v-41z m21-84h-83c-12 0-21-9-21-21v-83c0-11 9-21 21-21h83c12 0 21 10 21 21v83c0 12-9 21-21 21z m-21-83h-41v42h41v-42z m21-83h-83c-12 0-21-10-21-21v-84c0-11 9-20 21-20h83c12 0 21 9 21 20v84c0 11-9 21-21 21z m-21-84h-41v42h41v-42z" horiz-adv-x="1000" />

<glyph glyph-name="time-line" unicode="&#xe868;" d="M667 454h250c34 0 62 28 62 63v250c0 34-28 62-62 62h-250c-35 0-63-28-63-62v-33l-54-55c-8 10-18 17-29 21v108c0 12-9 21-21 21s-21-9-21-21v-108c-24-8-41-31-41-58s17-50 41-59v-174c-11-4-21-12-29-21l-54 54v33c0 34-28 63-63 63h-250c-34 0-62-29-62-63v-250c0-34 28-62 62-62h250c35 0 63 28 63 62v33l54 55c8-10 18-18 29-22v-174c-24-9-41-32-41-59s17-50 41-58v-108c0-12 10-21 21-21s21 9 21 21v108c11 4 21 11 29 21l54-55v-33c0-34 28-62 63-62h250c34 0 62 28 62 62v250c0 35-28 63-62 63h-250c-35 0-63-28-63-63v-33l-54-54c-8 10-18 17-29 21v174c24 9 42 32 42 59s-18 50-42 59v174c11 4 21 12 29 21l54-54v-33c0-35 28-63 63-63z m-167 209c12 0 21-10 21-21v0c0-12-9-21-21-21s-21 9-21 21 10 21 21 21z m-140-382c-4-3-6-9-6-14v-42c0-11-9-21-21-21h-250c-11 0-20 10-20 21v250c0 12 9 21 20 21h250c12 0 21-9 21-21v-42c0-5 2-10 6-14l69-69-69-69z m140-202c12 0 21-9 21-21v0c0-11-9-20-21-20s-21 9-21 20 10 21 21 21z m140 48c4 4 6 9 6 15v41c0 12 9 21 21 21h250c11 0 21-9 21-21v-250c0-11-10-21-21-21h-250c-12 0-21 10-21 21v42c0 5-2 11-6 15l-69 68 69 69z m-140 202c-11 0-21 10-21 21v0c0 12 10 21 21 21s21-9 21-21-9-21-21-21z m71 313l69 68c4 4 6 9 6 15v42c0 11 9 21 21 21h250c11 0 21-10 21-21v-250c0-12-10-21-21-21h-250c-12 0-21 9-21 21v41c0 6-2 11-6 15l-69 69z" horiz-adv-x="1000" />

<glyph glyph-name="toggle" unicode="&#xe869;" d="M229 829h-166c-35 0-63-28-63-62v-167c0-34 28-62 63-62h166c35 0 63 28 63 62v167c0 34-28 62-63 62z m21-229c0-11-9-21-21-21h-166c-12 0-21 10-21 21v167c0 11 9 21 21 21h166c12 0 21-10 21-21v-167z m-62 104h-21v21c0 12-10 21-21 21s-21-9-21-21v-21h-21c-11 0-21-9-21-21s10-20 21-20h21v-21c0-12 9-21 21-21s21 9 21 21v21h21c11 0 20 9 20 20s-9 21-20 21z m41-208h-166c-35 0-63-28-63-63v-166c0-35 28-63 63-63h166c35 0 63 28 63 63v166c0 35-28 63-63 63z m21-229c0-12-9-21-21-21h-166c-12 0-21 9-21 21v166c0 12 9 21 21 21h166c12 0 21-9 21-21v-166z m-62 104h-21v21c0 11-10 21-21 21s-21-10-21-21v-21h-21c-11 0-21-9-21-21s10-21 21-21h21v-21c0-11 9-20 21-20s21 9 21 20v21h21c11 0 20 10 20 21s-9 21-20 21z m41-208h-166c-35 0-63-28-63-63v-167c0-34 28-62 63-62h166c35 0 63 28 63 62v167c0 35-28 63-63 63z m21-230c0-11-9-21-21-21h-166c-12 0-21 10-21 21v167c0 12 9 21 21 21h166c12 0 21-9 21-21v-167z m-62 105h-21v20c0 12-10 21-21 21s-21-9-21-21v-20h-21c-11 0-21-10-21-21s10-21 21-21h21v-21c0-12 9-21 21-21s21 9 21 21v21h21c11 0 20 9 20 21s-9 21-20 21z m208 625h583c12 0 21 9 21 20s-9 21-21 21h-583c-12 0-21-9-21-21s9-20 21-20z m583-292h-583c-12 0-21-9-21-21s9-21 21-21h583c12 0 21 10 21 21s-9 21-21 21z m0-333h-583c-12 0-21-10-21-21s9-21 21-21h583c12 0 21 9 21 21s-9 21-21 21z" horiz-adv-x="1000" />

<glyph glyph-name="url" unicode="&#xe86a;" d="M938 621h-875c-35 0-63-28-63-63v-416c0-35 28-63 63-63h875c34 0 62 28 62 63v416c0 35-28 63-62 63z m20-479c0-12-9-21-20-21h-875c-12 0-21 9-21 21v416c0 12 9 21 21 21h875c11 0 20-9 20-21v-416z m-640 312c-12 2-23-4-26-16l-26-106-38 89c-7 15-32 15-39 0l-38-89-27 106c-2 12-14 18-25 16-11-3-18-15-15-26l42-166c2-9 9-15 18-16 10-1 18 4 21 13l43 101 44-101c3-8 11-13 19-13 0 0 1 0 2 0 8 1 16 7 18 16l42 166c3 11-4 23-15 26z m291 0c-11 2-22-4-25-16l-27-106-38 89c-6 15-32 15-38 0l-38-89-27 106c-3 12-14 18-25 16-11-3-18-15-15-26l41-166c3-9 10-15 19-16 9-1 17 4 21 13l43 101 43-101c4-8 11-13 20-13 0 0 1 0 1 0 9 1 17 7 19 16l41 166c3 11-4 23-15 26z m292 0c-11 2-23-4-25-16l-27-106-38 89c-7 15-32 15-38 0l-39-89-26 106c-3 12-14 18-25 16-12-3-18-15-16-26l42-166c2-9 10-15 19-16 9-1 17 4 20 13l44 101 43-101c3-8 11-13 19-13 1 0 1 0 2 0 9 1 16 7 18 16l42 166c3 11-4 23-15 26z" horiz-adv-x="1000" />

<glyph glyph-name="t-letter" unicode="&#xe86b;" d="M647-108c0 0-1 0-1 0h-292c-11 0-21 9-21 20s10 21 21 21c35 0 63 28 63 63v646h-271c-35 0-63-28-63-63 0-11-9-21-20-21s-21 10-21 21v209c0 11 9 20 21 20h875c11 0 20-9 20-20v-209c0-11-9-21-20-21s-21 10-21 21c0 35-28 63-63 63h-271v-646c0-35 28-63 63-63 0 0 0 0 0 0h1c11 0 21-9 21-21s-10-20-21-20z m-209 41h125c-13 18-21 39-21 63v667c0 11 9 20 21 20h291c24 0 45-7 63-20v104h-834v-104c18 13 39 20 63 20h292c11 0 20-9 20-20v-667c0-24-7-45-20-63z" horiz-adv-x="1000" />

<glyph glyph-name="wordpress" unicode="&#xe86c;" d="M108 346c0 54 13 108 34 158l187-512c-66 29-121 79-162 141-42 63-59 134-59 213z m659 17c0-9 0-13 0-21s-4-17-4-25c-5-9-5-17-5-21s-8-13-12-29c-4-17-8-25-8-29l-38-130-146 421c17 0 29 4 46 4 8 0 13 5 13 9 4 4 0 12 0 16-5 5-9 9-13 9l-108-9c-25 0-59 0-104 5-5 0-9 0-13-5 0 0 0 0-4-4 0-4 0-4 0-8 0-4 0-4 4-8s4-5 8-5l42-4 63-166-88-259-142 425c17 0 30 4 46 4 9 0 13 5 13 9 4 4 0 12 0 16-4 5-9 9-17 5l-104-5c0 0-4 0-13 0s-8 0-12 0c37 55 83 96 142 130s120 45 187 45c50 0 100-8 142-29s87-41 121-75h-5c-20 0-33-8-45-21-13-12-21-29-21-50 0-4 0-8 0-12s0-8 0-13c0-4 0-8 4-12 0-4 4-8 4-13s4-8 4-12c4-4 4-8 9-13 0 0 4-4 8-12 4-4 4-8 8-13 25-20 38-58 38-95z m-259-55l121-329c0 0 0-4 4-4-41-17-87-21-129-21-37 0-75 4-112 17l116 337z m338 225c33-58 50-120 50-187 0-71-17-138-54-196s-84-108-142-142l121 346c21 59 29 104 29 142-4 12-4 25-4 37z m-525 234c58 25 117 37 179 37s121-12 179-37 104-59 146-96c42-42 75-92 96-146 25-58 37-117 37-179s-12-121-37-179c-25-59-58-104-96-146-42-42-92-75-146-96s-116-38-179-38-121 13-179 38-104 58-146 96c-42 42-75 92-96 146-25 54-37 116-37 179s12 121 37 179 59 104 96 146 92 71 146 96z m8-825c54-25 113-34 171-34s117 13 171 34c54 25 100 54 142 91 37 38 70 88 91 142 25 54 34 113 34 171s-13 117-34 171c-25 54-54 100-91 141-38 38-88 71-142 92-54 25-113 33-171 33s-117-12-171-37-100-54-137-92-71-87-96-141-33-113-33-171 12-117 33-171 54-100 92-142c41-33 87-62 141-87z" horiz-adv-x="1000" />

<glyph glyph-name="text" unicode="&#xe86d;" d="M979 642h-958c-12 0-21 9-21 21s9 20 21 20h958c12 0 21-9 21-20s-9-21-21-21z m-291-125h-667c-12 0-21 9-21 21s9 20 21 20h667c11 0 20-9 20-20s-9-21-20-21z m291-125h-958c-12 0-21 9-21 21s9 20 21 20h958c12 0 21-9 21-20s-9-21-21-21z m-291-125h-667c-12 0-21 9-21 21s9 20 21 20h667c11 0 20-9 20-20s-9-21-20-21z m291-125h-958c-12 0-21 9-21 21s9 20 21 20h958c12 0 21-9 21-20s-9-21-21-21z m-291-125h-667c-12 0-21 9-21 21s9 20 21 20h667c11 0 20-9 20-20s-9-21-20-21z" horiz-adv-x="1000" />

<glyph glyph-name="anchor" unicode="&#xe86e;" d="M500-154c-10 0-19 8-20 17-8 7-38 16-61 24-79 24-196 61-245 167h-28c-3 0-6 1-9 2-10 5-95 50-95 269 0 9 5 16 13 20 7 3 16 1 22-5 102-101 204-163 205-164 9-5 12-17 8-27l-14-28c65-62 108-67 120-67 16 0 21 24 21 25l0 392h-63c-20-26-51-42-83-42-58 0-104 47-104 105s46 104 104 104c32 0 63-16 83-42h63v32c-27 24-42 57-42 93 0 69 56 125 125 125s125-56 125-125c0-36-15-69-42-93v-32h63c20 26 51 42 83 42 58 0 104-47 104-104s-46-105-104-105c-32 0-63 16-83 42h-63v-396c0 0 0 0 0 0 1 0 6-21 21-21 12 0 55 5 121 67l-14 28c-5 10-2 22 7 27 2 1 104 63 205 164 6 6 15 8 23 5 7-4 12-11 12-20 0-219-85-264-95-269-3-1-6-2-9-2h-28c-49-106-166-143-244-167-24-8-54-17-61-24-2-9-11-17-21-17z m-348 250h36c8 0 16-5 19-13 38-98 150-133 224-157 29-9 53-16 69-26 16 10 40 17 69 26 74 24 186 59 224 157 3 8 11 13 20 13h35c12 9 57 50 67 179-68-62-130-105-159-124l13-25c4-8 2-17-4-24-58-57-115-89-161-89-41 0-59 38-62 59l0 420c0 11 9 21 21 21h94c8 0 15-4 18-11 12-19 32-31 54-31 35 0 63 28 63 63s-28 62-63 62c-22 0-42-12-54-31-3-7-10-11-18-11h-94c-12 0-21 10-21 21v63c0 7 3 13 8 17 21 16 33 40 33 66 0 46-37 83-83 83s-83-37-83-83c0-26 12-50 33-66 5-4 8-10 8-17v-63c0-11-9-21-20-21h-95c-8 0-15 4-18 11-12 19-32 31-54 31-35 0-63-28-63-62s28-63 63-63c22 0 42 12 54 31 3 7 10 11 18 11h95c11 0 20-10 20-21v-417c-3-24-21-62-62-62-46 0-103 32-161 89-6 7-8 16-4 24l13 25c-29 19-91 62-159 124 10-129 54-170 67-179z" horiz-adv-x="1000" />

<glyph glyph-name="bullet-list" unicode="&#xe86f;" d="M979 663h-708c-12 0-21 9-21 20s9 21 21 21h708c12 0 21-9 21-21s-9-20-21-20z m0-334h-708c-12 0-21 10-21 21s9 21 21 21h708c12 0 21-9 21-21s-9-21-21-21z m0-333h-708c-12 0-21 9-21 21s9 21 21 21h708c12 0 21-10 21-21s-9-21-21-21z m-875 250c-57 0-104 47-104 104s47 104 104 104 104-47 104-104-46-104-104-104z m0 167c-34 0-62-28-62-63s28-62 62-62 63 28 63 62-28 63-63 63z m0-501c-57 0-104 47-104 105s47 104 104 104 104-47 104-104-46-105-104-105z m0 167c-34 0-62-28-62-62s28-63 62-63 63 28 63 63-28 62-63 62z m0 500c-57 0-104 47-104 104s47 105 104 105 104-47 104-105-46-104-104-104z m0 167c-34 0-62-28-62-63s28-62 62-62 63 28 63 62-28 63-63 63z" horiz-adv-x="1000" />

<glyph glyph-name="code" unicode="&#xe870;" d="M313-129c-3 0-6 0-8 1-11 5-16 17-12 27l375 917c5 11 17 16 27 12 11-5 16-17 12-28l-375-916c-3-8-11-13-19-13z m416 167c-5 0-9 1-13 5-9 7-10 20-3 29l239 278-239 278c-7 9-6 22 3 30 8 7 22 6 29-3l250-291c7-8 7-20 0-27l-250-292c-4-5-10-7-16-7z m-458 0c-6 0-12 2-16 7l-250 292c-7 7-7 19 0 27l250 291c8 9 21 10 29 3 9-8 10-21 3-30l-239-278 239-278c7-9 6-22-3-29-3-4-8-5-13-5z" horiz-adv-x="1000" />

<glyph glyph-name="favorite" unicode="&#xe871;" d="M500-150c-276 0-500 224-500 500s224 500 500 500 500-224 500-500-224-500-500-500z m0 958c-253 0-458-205-458-458s205-458 458-458 458 205 458 458-205 458-458 458z m188-750c-4 0-8 2-12 4l-176 117-176-117c-7-5-17-5-24 0-7 5-10 14-8 23l59 215-176 138c-7 5-10 15-7 23 3 8 11 14 20 14h215l78 195c6 16 32 16 38 0l78-195h216c8 0 16-6 19-14 3-8 0-18-7-23l-176-138 59-215c2-9-1-18-8-23-4-2-8-4-12-4z m-188 167c4 0 8-1 12-3l141-95-48 176c-2 8 1 17 7 22l140 108h-169c-8 0-16 6-19 13l-64 160-64-159c-3-8-11-14-19-14h-169l140-108c6-5 9-14 7-22l-48-176 141 95c4 2 8 3 12 3z" horiz-adv-x="1000" />

<glyph glyph-name="google-maps" unicode="&#xe872;" d="M750 100c-10 0-18 7-20 17-33 162-91 252-137 324-12 18-23 35-33 52-18 26-30 57-35 90-3 14-4 26-4 38 0 126 103 229 229 229s229-103 229-229c0-12-1-24-4-38-5-33-17-64-36-91-8-16-20-33-31-51-47-72-105-162-138-324-1-10-10-17-20-17z m0 708c-103 0-187-84-187-187 0-9 1-19 3-30 4-29 14-54 29-76 10-17 21-34 33-52 39-61 87-136 122-255 35 119 83 193 123 255 11 18 22 35 31 51 16 23 26 48 30 76 3 12 4 22 4 31 0 103-85 187-188 187z m0-291c-57 0-104 46-104 104s47 104 104 104 104-47 104-104-47-104-104-104z m0 166c-34 0-62-28-62-62s28-63 62-63 63 28 63 63-28 62-63 62z m83-833h-708c-57 0-104 47-104 104v667c0 57 47 104 104 104h417c11 0 21-9 21-21s-10-21-21-21h-417c-34 0-62-28-62-62v-667c0-34 28-62 62-62h708c35 0 63 28 63 62v521c0 12 9 21 21 21s21-9 21-21v-521c0-57-47-104-105-104z m-750 42c-5 0-10 2-14 6-8 8-8 21 0 29l520 521c9 8 22 8 30 0s8-21 0-29l-521-521c-4-4-9-6-15-6z m792 0c-5 0-11 2-15 6l-396 396c-8 8-8 21 0 29s22 8 30 0l396-396c8-8 8-21 0-29-4-4-10-6-15-6z m-667 583c-46 0-83 37-83 83s37 84 83 84 84-38 84-84-38-83-84-83z m0 125c-23 0-41-19-41-42s18-41 41-41 42 18 42 41-19 42-42 42z m84 0h-84c-11 0-20 9-20 21s9 21 20 21h84c11 0 21-10 21-21s-10-21-21-21z m-84-292c-71 0-104 49-104 84 0 39 37 65 110 78-3 8-6 16-6 26 0 11 10 21 21 21s21-10 21-21c0-10 9-19 23-32 18-17 40-39 40-72 0-74-51-84-105-84z m37 125c-73-10-99-28-99-41 0-9 11-42 62-42 60 0 63 14 63 42 0 14-10 25-26 41z" horiz-adv-x="1000" />

<glyph glyph-name="image" unicode="&#xe873;" d="M42 83l212 300c9 9 21 13 34 5l137-96 192 233c8 13 29 13 37 0l304-454v608h-916v-596z m896-66l-309 458-183-225c-8-8-21-12-29-4l-134 96-229-325h884z m-917-46c-13 0-25 8-25 21v708c0 17 12 25 25 25h958c13 0 21-8 21-21v-708c0-13-8-21-21-21h-958z m246 571c0 25-21 50-46 50s-50-21-50-50 21-50 46-50 50 25 50 50z m46 0c0-50-42-96-92-96s-96 46-96 96 42 96 92 96 96-42 96-96z" horiz-adv-x="1000" />

<glyph glyph-name="photo-library" unicode="&#xe874;" d="M729 142h-708c-12 0-21 9-21 21v625c0 11 9 20 21 20h708c12 0 21-9 21-20v-625c0-12-9-21-21-21z m-687 41h666v584h-666v-584z m687-41c-7 0-15 4-18 11l-212 424-148-258c-3-6-8-10-15-10-6-1-13 1-17 5l-107 107-174-270c-6-9-19-12-28-6-10 6-13 19-7 29l188 291c3 6 9 9 15 10 6 1 13-2 17-6l106-106 153 268c4 7 11 11 19 11 7 0 14-5 18-12l229-458c5-10 1-23-9-28-3-2-7-2-10-2z m-500 375c-57 0-104 46-104 104s47 104 104 104 104-47 104-104-46-104-104-104z m0 166c-34 0-62-28-62-62s28-63 62-63 63 28 63 63-28 62-63 62z m584-625h-709c-11 0-21 10-21 21v84c0 11 10 20 21 20s21-9 21-20v-63h667v583h-42c-11 0-21 10-21 21s10 21 21 21h63c11 0 20-9 20-21v-625c0-11-9-21-20-21z m83-83h-708c-12 0-21 9-21 21v83c0 12 9 21 21 21s20-9 20-21v-62h667v583h-62c-12 0-21 9-21 21s9 21 21 21h83c11 0 21-10 21-21v-625c0-12-10-21-21-21z m83-83h-708c-12 0-21 9-21 20v84c0 11 9 21 21 21s21-10 21-21v-63h666v542h-62c-12 0-21 9-21 21s9 21 21 21h83c12 0 21-10 21-21v-584c0-11-9-20-21-20z" horiz-adv-x="1000" />

<glyph glyph-name="woocommerce" unicode="&#xe875;" d="M896 642h-792c-57 0-104-47-104-104v-292c0-58 47-104 104-104h403l128-80c3-3 7-4 11-4 5 0 11 3 15 7 7 7 8 18 2 26l-34 51h267c57 0 104 46 104 104v292c0 57-47 104-104 104z m62-396c0-35-28-63-62-63h-306c-7 0-14-4-18-11s-3-15 1-21l2-3-51 32c-4 2-8 3-11 3h-409c-34 0-62 28-62 63v292c0 34 28 62 62 62h792c34 0 62-28 62-62v-292z m-537 325c-47-60-61-198-65-273-23 43-41 115-51 156-11 49-15 63-34 63-17 0-19 0-85-144-10-21-22-47-32-68-6 41-12 99-18 142-4 36-8 69-11 93-2 12-12 20-24 18-11-1-19-12-17-23 3-24 7-57 11-93 26-217 27-217 51-217 17 0 18 0 78 131 13 28 29 62 41 88 23-96 50-192 101-217 3-1 6-2 9-2 4 0 8 1 11 3 6 4 10 11 10 18 0 87 16 245 58 300 7 9 5 22-4 29-9 7-22 5-29-4z m166-54c-54 0-109-63-125-142-9-50-1-96 22-123 14-18 33-27 54-27 55 0 109 62 125 142 9 49 1 95-22 123-14 17-33 27-54 27z m35-142c-13-64-54-108-84-108-9 0-16 3-22 11-15 18-20 52-13 89 13 64 54 108 84 108 9 0 16-4 22-11 15-18 20-52 13-89z m215 142c-54 0-109-63-125-142-9-50-1-96 22-123 14-18 33-27 54-27 55 0 109 62 125 142 9 49 1 95-22 123-14 17-33 27-54 27z m35-142c-13-64-54-108-84-108-9 0-16 3-22 11-15 18-20 52-13 89 13 64 54 108 84 108 9 0 16-4 22-11 15-18 20-52 13-89z" horiz-adv-x="1000" />

<glyph glyph-name="youtube" unicode="&#xe876;" d="M500-19c-49 0-98 2-146 6l-221 20c-76 6-133 69-133 145v396c0 76 57 139 133 145l221 19c97 9 195 9 292 0l221-19c76-6 133-69 133-145v-396c0-76-57-139-133-145l-221-20c-48-4-97-6-146-6z m0 696c-48 0-95-2-143-6l-220-19c-54-5-95-50-95-104v-396c0-54 41-99 95-104l220-19c95-8 191-8 286 0l220 19 0 0c54 5 95 50 95 104v396c0 54-41 99-95 104l-220 19c-48 4-95 6-143 6z m-104-535c-4 0-7 0-10 2-7 4-11 11-11 18v375c0 8 4 15 11 19 7 3 15 3 21-1l292-188c6-3 9-10 9-17s-3-14-9-18l-292-187c-3-2-7-3-11-3z m21 357v-298l232 149-232 149z" horiz-adv-x="1000" />

<glyph glyph-name="flip-box" unicode="&#xe877;" d="M813 788h-625c-12 0-21-10-21-21v-834c0-11 9-21 21-21h625c11 0 20 10 20 21v834c0 11-9 21-20 21z m-21-834h-584v792h584v-792z m207 264c-4 11-15 17-26 13l-35-11c42 86 44 194-32 271-8 8-22 8-30 0-8-8-8-21 0-29 64-65 60-159 21-232l-16 47c-4 11-15 17-26 13-11-4-17-15-13-26l29-89c0 0 1-1 1-1 1-2 1-3 2-4 1-1 2-2 3-3 0-1 1-1 1-2 0 0 1 0 1 0 1-1 2-1 3-2 2-1 6-2 9-2 2 0 4 0 6 1l89 30c11 3 17 15 13 26z m-870 265c0 1-1 1-1 2 0 1-1 2-2 4-1 1-2 1-2 2-1 1-1 2-2 2-1 1-1 1-2 1-1 0-1 1-1 1-1 0-2 0-2 1-2 0-3 1-5 1-1 0-2 0-3 0-2 0-3 0-4 0-1-1-2-1-2-1l-89-29c-11-4-17-16-13-27 4-10 16-16 27-13l34 12c-42-86-44-195 33-272 4-4 9-6 14-6 6 0 11 2 15 6 8 8 8 21 0 30-64 64-59 158-21 231l16-46c3-9 11-15 20-15 2 0 4 1 6 1 11 4 17 16 14 27l-30 88z m184 13h375c11 0 20 9 20 21s-9 21-20 21h-375c-12 0-21-10-21-21s9-21 21-21z m0-125h375c11 0 20 9 20 21s-9 21-20 21h-375c-12 0-21-10-21-21s9-21 21-21z m0-125h375c11 0 20 9 20 21s-9 21-20 21h-375c-12 0-21-10-21-21s9-21 21-21z m0-125h166c12 0 21 9 21 21s-9 21-21 21h-166c-12 0-21-10-21-21s9-21 21-21z" horiz-adv-x="1000" />

<glyph glyph-name="settings" unicode="&#xe878;" d="M662-117c-14 0-27 3-40 10-21 12-36 33-40 57-4 21-23 35-45 33-24-3-50-3-74 0-22 2-41-12-45-33-4-24-19-45-40-57-22-12-48-13-72-3-38 16-75 37-108 62-20 15-32 38-32 64-1 24 10 48 29 64 16 13 18 36 6 54-15 20-27 42-38 65-8 20-30 29-50 22-23-9-49-6-70 6-21 13-36 35-39 60-3 21-4 42-4 63s1 42 4 63c3 25 18 47 39 60 21 12 47 15 70 6 20-7 42 3 50 22 11 23 23 45 38 65 13 18 10 41-6 55-19 15-30 39-29 63 0 26 12 49 32 64 33 25 70 46 108 62 23 10 50 9 72-3 21-12 36-33 40-57 4-21 23-35 45-33 24 3 50 3 74 0 22-2 41 12 45 33 4 24 19 45 40 57 22 12 49 13 72 3 38-16 75-37 108-62 20-15 32-38 33-64 0-24-11-48-30-63-16-14-18-37-5-55 14-20 27-42 37-65 9-19 31-29 50-22 23 9 49 6 70-6 22-13 36-35 39-60 3-21 4-42 4-63s-1-42-4-63c-3-25-17-47-39-60-21-12-47-15-70-6l0 0c-19 7-42-2-50-22-11-23-23-45-38-65-12-18-10-41 6-54 19-16 30-40 29-64 0-26-12-49-32-64-33-25-70-46-108-62-10-5-21-7-32-7z m-120 142c40 0 74-28 81-68 2-12 9-22 19-27 11-6 24-7 36-2 35 15 68 34 99 57 10 8 16 19 16 31 0 12-5 24-14 31-34 28-39 75-13 111 13 18 24 38 33 58 17 39 62 59 102 44l0 0c12-4 24-3 35 3 10 7 17 17 19 30 2 19 3 38 3 57s-1 38-3 57c-2 13-9 24-19 30-11 6-23 7-34 3-40-15-86 5-103 44-9 20-20 40-33 58-26 36-21 83 13 111 9 7 14 19 14 31 0 12-6 23-16 31-31 23-64 42-99 57-12 5-25 4-36-2-10-5-17-16-19-27-7-43-46-72-90-67-22 2-44 2-66 0-44-5-83 24-90 67-2 11-9 22-19 27-11 6-24 7-36 2-35-15-68-34-99-57-10-8-15-19-16-31 0-12 5-24 14-31 34-28 39-75 13-111-12-18-24-38-33-58-17-39-62-59-102-44-12 4-24 3-34-3-11-6-18-17-20-30-2-19-3-38-3-57s1-38 3-57c2-13 9-23 20-30 10-6 22-7 33-3 41 15 86-4 103-44 9-20 21-40 33-57 26-36 21-84-13-112-9-7-14-18-14-30 1-13 6-24 16-32 31-23 64-42 99-57 12-5 25-4 36 2 10 6 17 16 19 27 7 43 46 72 90 67 22-2 44-2 66 0 3 0 6 1 9 1z m-42 117c-115 0-208 93-208 208s93 208 208 208 208-93 208-208-93-208-208-208z m0 375c-92 0-167-75-167-167s75-167 167-167 167 75 167 167-75 167-167 167z" horiz-adv-x="1000" />

<glyph glyph-name="headphones" unicode="&#xe879;" d="M1036 189v143c0 275-232 518-500 518s-500-243-500-518v-143a175 175 0 0 1-36-107 247 247 0 0 1 232-232 55 55 0 0 1 54 54v321a55 55 0 0 1-54 54 256 256 0 0 1-161-54v107a503 503 0 0 0 179 375v-89a20 20 0 0 1 11-18 16 16 0 0 1 18 4 334 334 0 0 0 253 100 329 329 0 0 0 254-100 19 19 0 0 1 14-8h7a20 20 0 0 1 11 18v93a491 491 0 0 0 178-375v-107a256 256 0 0 1-160 54 55 55 0 0 1-54-54v-321a55 55 0 0 1 54-54 247 247 0 0 1 232 232 154 154 0 0 1-32 107z m-786-285a18 18 0 0 0-36 0v321a18 18 0 0 0 36 0v-321z m-71 335v-343a210 210 0 0 0-143 186c0 86 68 139 143 157z m607 486v-68a390 390 0 0 1-250 82 390 390 0 0 1-250-82v75a454 454 0 0 0 250 82 445 445 0 0 0 250-82v-7z m35-500a18 18 0 0 0 36 0v-321a18 18 0 0 0-36 0v321z m72-329v343c78-18 143-68 143-157a214 214 0 0 0-143-186z" horiz-adv-x="1069" />

<glyph glyph-name="testimonial" unicode="&#xe87a;" d="M155-150a13 13 0 0 0-10 3 17 17 0 0 0-7 21l93 252h-83a149 149 0 0 0-148 148v428a149 149 0 0 0 148 148h707a149 149 0 0 0 148-148v-431a149 149 0 0 0-148-149h-348l-341-272h-11z m-7 966a115 115 0 0 1-113-114v-431a115 115 0 0 1 113-114h111a18 18 0 0 0 13-7 26 26 0 0 0 4-17l-83-218 297 238a13 13 0 0 0 10 4h355a115 115 0 0 1 114 114v434a115 115 0 0 1-114 114l-707-3h0z" horiz-adv-x="1003" />

<glyph glyph-name="counter-circle" unicode="&#xe87b;" d="M321 488c-8 0-13 0-17-5l-62-91c-4-9-4-17 4-21 8-4 17-4 21 4l33 50v-196c0-8 8-16 17-16 8 0 16 8 16 16v242c0 8-4 12-12 17z m150 0c-42 0-75-34-75-75 0-9 8-17 17-17s16 8 16 17c0 25 21 45 46 45s46-20 46-45v-9c0-8-4-21-8-29l-109-137c-4-5-4-13 0-17 4-4 9-8 13-8h121c8 0 16 8 16 16s-8 17-16 17h-92l87 112c13 13 17 30 17 46v9c-4 41-37 75-79 75z m287-75c0 41-33 75-75 75s-75-34-75-75c0-9 9-17 17-17s17 8 17 17c0 25 21 45 46 45 25 0 45-20 45-45s-20-46-45-46c-9 0-17-9-17-17s8-17 17-17c25 0 45-20 45-45s-20-46-45-46c-25 0-46 21-46 46 0 8-9 16-17 16s-17-8-17-16c0-42 34-75 75-75s75 33 75 75c0 25-12 45-29 62 17 13 29 38 29 63z m-258 416c263 0 479-216 479-479s-216-479-479-479-479 217-479 479c0 92 25 183 79 263 8 8 21 12 29 4 9-4 13-17 4-29-45-71-70-150-70-238 0-242 195-438 437-438s438 196 438 438-196 438-438 438c-12 0-21 8-21 20s9 21 21 21z" horiz-adv-x="1000" />

<glyph glyph-name="person" unicode="&#xe87c;" d="M500 142c-103 0-194 83-232 208-34 2-60 46-60 104 0 17 3 33 7 47-5 21-7 40-7 57 0 161 131 292 292 292s292-131 292-292c0-17-2-36-7-57 5-14 7-30 7-47 0-58-26-102-60-104-38-125-129-208-232-208z m-217 253c3 0 5 0 7-1 7-3 12-7 13-14 30-118 109-197 197-197s168 79 197 197c1 7 6 12 12 14 6 3 13 2 19-1 7-2 22 21 22 61 0 14-2 28-6 40-1 3-1 7 0 11 4 20 6 37 6 53 0 138-112 250-250 250s-250-112-250-250c0-16 2-33 7-53 0-4 0-8-1-11-4-12-6-26-6-40 0-40 16-62 21-62 3 2 8 3 12 3z m425 80c-8 0-15 5-19 12 0 2-16 37-21 72-87 6-178 48-222 93-4-7-9-13-14-18-34-34-87-34-114-34-6-14-9-59-5-103 0-6-2-12-7-16-5-5-11-7-17-6-1 0-29 5-53 5-11 0-21 9-21 20s10 21 21 21c12 0 24-1 34-1-2 37 0 91 19 111 8 8 18 11 29 11 25 0 64 1 84 21 10 10 15 23 15 41 0 12 9 21 21 21s20-9 20-21c3-21 107-104 230-104 11 0 20-9 20-21 0-20 8-46 14-61l40 3c12 1 22-7 23-19 1-11-8-21-19-22l-56-5c0 0-1 0-2 0z m-270-42h-42c-12 0-21 10-21 21s9 21 21 21h42c11 0 20-9 20-21s-9-21-20-21z m166 0h-41c-12 0-21 10-21 21s9 21 21 21h41c12 0 21-9 21-21s-9-21-21-21z m375-583h-958c-7 0-13 3-17 8-4 5-5 12-3 18l32 129c7 30 27 55 55 68l215 108c5 3 11 3 17 1 5-2 9-6 12-11l107-251 16 32c-14 19-38 56-38 86 0 38 32 62 83 62s83-24 83-62c0-30-24-67-38-86l16-32 107 251c3 5 7 9 12 11 6 2 12 2 17-1l216-108c27-13 47-38 54-68l32-129c2-6 1-13-3-18-4-5-10-8-17-8z m-385 42h359l-26 103c-5 18-17 33-33 41l-196 98-104-242z m-123 0h58l-27 53c-3 7-2 16 3 22 15 19 37 54 37 71 0 18-29 20-42 20s-42-2-42-20c0-17 23-52 38-71 5-6 6-15 2-22l-27-53z m-423 0h358l-104 242-196-98c-16-8-28-23-32-41l-26-103z" horiz-adv-x="1000" />

<glyph glyph-name="chevron-right" unicode="&#xe87d;" d="M696 317c12 12 17 29 17 46 0 16-5 33-17 41l-296 300c-12 13-25 21-46 21-16 0-29-4-41-17-13-12-21-29-21-45 0-17 4-34 16-46l255-259-259-279c-12-12-16-29-16-46 0-16 8-33 20-46 13-8 30-12 46-12 17 0 34 8 46 21l296 321z" horiz-adv-x="1000" />

<glyph glyph-name="chevron-left" unicode="&#xe87e;" d="M646 725c-17 0-33-8-42-17l-296-300c-12-12-16-29-16-45 0-17 4-34 16-46l296-321c13-13 25-21 42-21 17 0 33 4 46 17 12 12 21 29 21 46 0 16-5 33-21 45l-254 280 254 262c8 8 16 21 16 38 0 16-4 33-16 45-17 13-29 17-46 17z" horiz-adv-x="1000" />

<glyph glyph-name="close" unicode="&#xe87f;" d="M742 683l-242-241-242 241c-12 13-25 17-41 17-21 0-38-8-50-17-13-12-17-29-17-45 0-17 4-30 21-42l237-246-241-242c-29-29-29-58 0-87 29-29 58-29 87 0l242 242 242-242c12-13 29-17 45-17 17 0 34 4 46 17 13 12 17 25 17 46 0 16-4 33-17 46l-241 237 245 242c30 29 30 58 0 87-29 34-58 34-91 4z" horiz-adv-x="1000" />

<glyph glyph-name="file-download" unicode="&#xe880;" d="M792 475h-167v250h-250v-250h-167l292-292 292 292z m-584-375v-83h584v83h-584z" horiz-adv-x="1000" />

<glyph glyph-name="save" unicode="&#xe881;" d="M772 850a247 247 0 0 0 156-98 315 315 0 0 0 60-108 217 217 0 0 0 12-67v-636a93 93 0 0 0-94-91h-813a93 93 0 0 0-93 91v815a93 93 0 0 0 93 94h679z m-15-59h-516a52 52 0 0 1-52-52v-281a52 52 0 0 1 52-53h517a52 52 0 0 1 53 53v281a52 52 0 0 1-53 52z m-60 0h-143v-231h0a22 22 0 0 1 23-22h99a22 22 0 0 1 23 22z" horiz-adv-x="1000" />

<glyph glyph-name="zoom-in" unicode="&#xe882;" d="M646 267h-33l-13 12c42 46 67 109 67 175 0 150-121 271-271 271s-271-121-271-271c0-150 121-271 271-271 67 0 129 25 175 67l12-12v-34l209-208 62 62-208 209z m-250 0c-104 0-188 83-188 187s84 188 188 188 187-84 187-188-83-187-187-187z m21 208h83v-42h-83v-83h-42v83h-83v42h83v83h42v-83z" horiz-adv-x="1000" />

<glyph glyph-name="shortcode" unicode="&#xe883;" d="M917 646v-583c0-13-9-21-21-21h-83c-13 0-21 8-21 21 0 12 8 20 21 20h62v542h-62c-13 0-21 8-21 21 0 12 8 21 21 21h83c12 0 21-9 21-21z m-729-21c12 0 20 4 20 21 0 12-8 21-20 21h-84c-12 0-21-9-21-21v-583c0-13 9-21 21-21h84c12 0 20 8 20 21 0 12-8 20-20 20h-63v542h63z m125-383c-25 0-42-17-42-42s17-42 42-42 41 17 41 42-16 42-41 42z m187 0c-25 0-42-17-42-42s17-42 42-42c25 0 42 17 42 42s-17 42-42 42z m188 0c-25 0-42-17-42-42s17-42 42-42 41 17 41 42-16 42-41 42z" horiz-adv-x="1000" />

<glyph glyph-name="nerd" unicode="&#xe884;" d="M958 350c0 253-205 458-458 458s-458-205-458-458 205-458 458-458 458 205 458 458z m42 0c0-276-224-500-500-500s-500 224-500 500 224 500 500 500 500-224 500-500z m-768-135c53-93 146-136 268-136s215 43 268 136c6 10 2 23-8 28-10 6-22 2-28-8-45-78-123-114-232-114s-187 36-232 114c-6 10-18 14-28 8-10-5-14-18-8-28z m466 447c-95 0-172-74-176-168-6 1-14 2-22 2-8 0-16-1-22-2-4 94-81 168-176 168-97 0-176-79-176-177s79-176 176-176c71 0 133 43 161 104 9 2 16 10 16 20 0 21 1 21 21 21 20 0 21 0 21-21 0-10 7-18 17-20 27-61 89-104 160-104 97 0 176 79 176 176s-79 177-176 177z m-396-313c-75 0-136 61-136 136 0 76 61 137 136 137 76 0 136-62 136-137 0-75-60-136-136-136z m396 0c-75 0-136 61-136 136 0 76 61 137 136 137 75 0 136-62 136-137 0-75-61-136-136-136z m23 134c0 12-9 21-21 21s-21-9-21-21 9-20 21-20 21 9 21 20z m42 0c0-34-28-62-63-62-35 0-62 28-62 62s27 63 62 63c35 0 63-28 63-63z m-438 0c0 12-9 21-21 21s-21-9-21-21 10-20 21-20 21 9 21 20z m42 0c0-34-28-62-63-62s-62 28-62 62 28 63 62 63 63-28 63-63z" horiz-adv-x="1000" />

<glyph glyph-name="device-desktop" unicode="&#xe885;" d="M558 21c26 0 46-21 46-46v-24c0-7-6-14-14-14h-180c-8 0-14 7-14 14v24c0 25 20 46 46 46h116z m306 741c52 0 94-43 94-95v-509c0-53-42-95-94-95h-728c-52 0-94 42-94 95v509c0 52 42 95 94 95h728z m0-84h-728c-5 0-10-3-11-8l0-3v-425h750v425c0 6-4 10-9 11l-2 0z" horiz-adv-x="1000" />

<glyph glyph-name="device-tablet" unicode="&#xe886;" d="M788 808c48 0 87-39 87-87v-742c0-48-39-87-87-87h-575c-49 0-88 39-88 87v742c0 48 39 87 88 87h575z m0-83h-575c-3 0-4-2-5-4l0 0v-742c0-2 2-4 4-4l1 0h575c2 0 3 2 4 4l0 0v742c0 2-2 4-4 4l0 0z m-205-646c23 0 42-19 42-41v-8c0-7-6-13-14-13h-222c-8 0-14 6-14 13v8c0 22 19 41 42 41h166z" horiz-adv-x="1000" />

<glyph glyph-name="device-mobile" unicode="&#xe887;" d="M700 808c48 0 88-39 88-87v-742c0-48-40-87-88-87h-400c-48 0-87 39-87 87v742c0 48 39 87 87 87h400z m0-83h-400c-2 0-4-2-4-4l0 0v-742c0-2 2-4 4-4l0 0h400c2 0 4 2 4 4l0 0v742c0 2-1 4-4 4l0 0z m-164-646c23 0 42-19 42-41v-8c0-7-6-13-14-13h-118c-8 0-14 6-14 13v8c0 22 19 41 42 41h62z" horiz-adv-x="1000" />

<glyph glyph-name="document-file" unicode="&#xe888;" d="M379 842c4 4 13 8 17 8h417c33 0 62-29 62-62v-876c0-33-29-62-62-62h-625c-34 0-63 29-63 62v667c0 4 4 13 8 17l246 246z m-4-63l-179-179h158c13 0 21 8 21 21v158z m438 29h-396v-187c0-33-29-63-63-63h-187v-646c0-12 8-20 21-20h625c12 0 20 8 20 20v876c0 12-8 20-20 20z m-542-729c-13 0-21 9-21 21s8 21 21 21h458c13 0 21-8 21-21s-8-21-21-21h-458z m0-125c-13 0-21 8-21 21s8 21 21 21h458c13 0 21-9 21-21s-8-21-21-21h-458z m0 375c-13 0-21 9-21 21s8 21 21 21h458c13 0 21-8 21-21s-8-21-21-21h-458z m0-125c-13 0-21 9-21 21s8 21 21 21h458c13 0 21-8 21-21s-8-21-21-21h-458z m242 375c-13 0-21 9-21 21s8 21 21 21h216c13 0 21-8 21-21s-8-21-21-21h-216z m-242-125c-13 0-21 9-21 21s8 21 21 21h458c13 0 21-8 21-21s-8-21-21-21h-458z" horiz-adv-x="1000" />

<glyph glyph-name="folder-o" unicode="&#xe889;" d="M896-46h-792c-57 0-104 47-104 104v500c0 58 47 105 104 105h149c44 0 84-29 98-72l4-11c9-25 32-42 59-42h482c57 0 104-47 104-105v-375c0-57-47-104-104-104z m-792 667c-34 0-62-28-62-63v-500c0-34 28-62 62-62h792c34 0 62 28 62 62v375c0 35-28 63-62 63h-482c-45 0-84 29-99 71l-3 11c-9 26-33 43-59 43h-149z m834-125c-12 0-21 9-21 21v125c0 34-28 62-63 62h-708c-35 0-63-28-63-62 0-12-9-21-20-21s-21 9-21 21c0 57 46 104 104 104h708c58 0 104-47 104-104v-125c0-12-9-21-20-21z" horiz-adv-x="1000" />

<glyph glyph-name="hypster" unicode="&#xe88a;" d="M750 267c-129 0-177 68-194 109-19 48-17 105 3 151-46-12-71-12-118 0 21-46 23-103 3-151-17-41-65-109-194-109-164 0-208 91-208 146 0 7 0 15 1 25 2 23 4 59-7 72-3 3-7 6-16 7-10 0-18 8-20 17-1 10 4 19 13 23 5 2 113 43 237 43 78 0 142-17 188-29 25-7 48-13 62-13s37 6 62 13c47 12 110 29 188 29 124 0 232-41 237-43 9-4 14-13 13-23-2-9-10-17-20-17-9-1-13-4-15-7-12-13-10-49-8-72 1-10 1-18 1-25 0-55-43-146-208-146z m-133 275c-28-30-45-95-22-150 16-38 55-84 155-84 162 0 167 94 167 105 0 6-1 13-1 22-3 31-6 70 13 97-42 12-108 26-179 26-51 0-95-7-133-16z m-545-10c18-27 15-66 13-97-1-9-2-16-2-22 0-11 5-105 167-105 100 0 139 46 155 84 23 55 6 120-22 150-38 9-82 16-133 16-71 0-137-14-178-26z m491-119c-12 0-21 9-21 20 0 11-13 21-42 21s-42-10-42-21c0-11-9-20-20-20s-21 9-21 20c0 32 26 63 83 63s83-31 83-63c0-11-9-20-20-20z m-63-563c-276 0-500 224-500 500s224 500 500 500 500-224 500-500-224-500-500-500z m0 958c-253 0-458-205-458-458s205-458 458-458 458 205 458 458-205 458-458 458z m-229-416c-35 0-63 28-63 62s28 63 63 63 62-28 62-63-28-62-62-62z m0 83c-12 0-21-9-21-21s9-21 21-21 21 10 21 21-10 21-21 21z m458-83c-34 0-62 28-62 62s28 63 62 63 63-28 63-63-28-62-63-62z m0 83c-11 0-21-9-21-21s10-21 21-21 21 10 21 21-9 21-21 21z m-87-417c-40 0-163 0-163 84s62 83 92 83c14 0 31-5 54-12 49-15 122-37 228-30 10 1 18-5 21-14s0-18-8-24c-40-27-153-87-224-87z m-71 125c-38 0-50-3-50-41 0-35 66-42 121-42 34 0 86 19 133 42-72 4-126 20-162 31-18 6-34 10-42 10z m-213-125c-71 0-184 60-224 87-8 6-11 15-8 24s12 15 21 14c106-7 179 15 228 30 23 7 40 12 54 12 30 0 92 0 92-83s-122-84-163-84z m-133 84c47-23 99-42 133-42 56 0 121 7 121 42 0 38-12 41-50 41-8 0-24-4-42-10-36-11-90-27-162-31z" horiz-adv-x="1000" />

<glyph glyph-name="h-align-left" unicode="&#xe88b;" d="M83 821c30 0 55-24 55-54v-834c0-30-25-54-55-54s-54 24-54 54v834c0 30 24 54 54 54z m264-333c17 17 46 5 46-20l0-85 503 0 6 0c31-3 56-26 56-54l0-5c-3-28-30-49-62-49l-503 0 0-85c0-24-29-37-46-19l-137 139c-11 10-11 28 0 39l137 139z" horiz-adv-x="1000" />

<glyph glyph-name="h-align-right" unicode="&#xe88c;" d="M917 821c30 0 54-24 54-54v-834c0-30-24-54-54-54s-54 24-54 54v834c0 30 24 54 54 54z m-264-333l137-139c11-11 11-29 0-39l-137-139c-17-18-46-5-46 19l0 85-503 0c-32 0-59 22-62 49l0 5c0 29 24 51 56 54l6 0 503 0 0 85c0 25 29 37 46 20z" horiz-adv-x="1000" />

<glyph glyph-name="h-align-center" unicode="&#xe88d;" d="M500 821c30 0 54-24 54-54v-834c0-30-24-54-54-54s-54 24-54 54v834c0 30 24 54 54 54z m310-332l0-85 86 0c32 0 59-21 62-49l0-5c0-28-24-51-56-54l-6 0-86 0 0-85c0-24-30-37-47-19l-137 138c-11 11-11 29 0 40l137 138c17 18 47 5 47-19z m-575 22l3-3 137-138c10-10 11-25 3-36l-3-4-137-138c-16-17-43-7-47 15l0 4 0 85-86 0-6 0c-29 3-53 23-56 49l0 5 0 6c3 26 27 46 56 49l6 0 86 0 0 85c0 22 27 35 44 21l0 0z" horiz-adv-x="1000" />

<glyph glyph-name="h-align-stretch" unicode="&#xe88e;" d="M500 821c30 0 54-24 54-54v-834c0-30-24-54-54-54s-54 24-54 54v834c0 30 24 54 54 54z m310-310l3-3 137-138c10-10 11-25 3-36l-3-4-137-138c-16-17-43-7-47 15l0 4 0 85-86 0-6 0c-29 3-53 23-56 49l0 5 0 6c3 26 27 46 56 49l6 0 86 0 0 85c0 22 27 35 44 21z m-575-22l0-85 86 0c32 0 59-21 62-49l0-5c0-28-24-51-56-54l-6 0-86 0 0-85c0-24-30-37-47-19l-137 138c-11 11-11 29 0 40l137 138c17 18 47 5 47-19z" horiz-adv-x="1000" />

<glyph glyph-name="v-align-top" unicode="&#xe88f;" d="M480 641c11 11 29 11 40 0l138-138c18-17 5-46-19-46l-85 0 0-503 0-6c-3-31-26-56-54-56l-5 0c-28 3-49 30-49 62l0 503-85 0c-24 0-37 29-19 46l138 138z m437 180c30 0 54-24 54-54s-24-54-54-54h-834c-30 0-54 24-54 54s24 54 54 54h834z" horiz-adv-x="1000" />

<glyph glyph-name="v-align-bottom" unicode="&#xe890;" d="M917-13c30 0 54-24 54-54s-24-54-54-54h-834c-30 0-54 24-54 54s24 54 54 54h834z m-422 821l5 0c28 0 51-24 54-56l0-6 0-503 85 0c24 0 37-29 19-46l-138-137c-11-11-29-11-40 0l-138 137c-18 17-5 46 19 46l85 0 0 503c0 32 22 59 49 62l5 0-5 0z" horiz-adv-x="1000" />

<glyph glyph-name="v-align-middle" unicode="&#xe891;" d="M516 228l4-3 138-137c17-16 7-43-15-46l-4-1-85 0 0-86 0-5c-3-30-23-54-49-57l-5 0-6 0c-26 3-46 27-49 57l0 5 0 86-85 0c-23 0-35 27-22 44l3 3 139 137c10 10 25 11 36 3l0 0z m401 176c30 0 54-24 54-54s-24-54-54-54h-834c-30 0-54 24-54 54s24 54 54 54h834z m-417 404c28 0 51-24 54-56l0-6 0-86 85 0c24 0 37-30 19-47l-138-137c-11-11-29-11-40 0l-138 137c-18 17-5 47 19 47l85 0 0 86c0 30 19 56 44 61l5 1 5 0z" horiz-adv-x="1000" />

<glyph glyph-name="v-align-stretch" unicode="&#xe892;" d="M500 233c28 0 51-24 54-56l0-6 0-86 85 0c24 0 37-30 19-47l-138-137c-11-11-29-11-40 0l-138 137c-18 17-5 47 19 47l85 0 0 86c0 30 19 56 44 61l5 1 5 0z m417 171c30 0 54-24 54-54s-24-54-54-54h-834c-30 0-54 24-54 54s24 54 54 54h834z m-401 399l4-3 138-137c17-16 7-43-15-47l-4 0-85 0 0-86 0-6c-3-29-23-53-49-56l-5 0-6 0c-26 3-46 27-49 56l0 6 0 86-85 0c-23 0-35 26-22 44l3 3 139 137c10 10 25 11 36 3l0 0z" horiz-adv-x="1000" />

<glyph glyph-name="pro-icon" unicode="&#xe893;" d="M0 710c0 77 63 140 140 140l1434 0c78 0 140-63 140-140l0-720c0-77-63-140-140-140l-1434 0c-77 0-140 63-140 140l0 720z m262-576l65 0 0 170 117 0c88 0 138 62 138 135 0 74-49 136-138 136l-182 0 0-441z m254 305c0-46-34-77-80-77l-109 0 0 155 109 0c46 0 80-31 80-78z m381-305l75 0-110 177c55 7 107 49 107 128 0 82-56 136-138 136l-182 0 0-441 65 0 0 170 80 0 103-170z m6 305c0-46-34-77-81-77l-108 0 0 155 108 0c47 0 81-31 81-78z m128-85c0-131 88-228 217-228 129 0 218 97 218 228 0 131-89 228-218 228-129 0-217-97-217-228z m368 0c0-96-60-169-151-169-92 0-151 73-151 169 0 97 59 169 151 169 91 0 151-72 151-169z" horiz-adv-x="1714" />

<glyph glyph-name="mail" unicode="&#xe894;" d="M896 17h-792c-57 0-104 46-104 104v458c0 58 47 104 104 104h792c57 0 104-46 104-104v-458c0-58-47-104-104-104z m-792 625c-34 0-62-28-62-63v-458c0-35 28-63 62-63h792c34 0 62 28 62 63v458c0 35-28 63-62 63h-792z m396-334c-23 0-46 7-66 20l-342 234c-9 7-11 19-5 29s19 12 29 5l342-233c25-18 59-18 84 0l342 233c10 7 23 4 29-5 7-10 4-22-5-29l-342-234c-20-13-43-20-66-20z m-396-208c-6 0-12 3-16 8-7 8-6 22 3 29l250 208c9 8 22 6 29-2 8-9 6-22-2-30l-250-208c-4-3-9-5-14-5z m792 0c-5 0-10 2-13 5l-250 208c-9 8-10 21-3 30 7 8 20 10 29 2l250-208c9-7 10-21 3-29-4-5-10-8-16-8z" horiz-adv-x="1000" />

<glyph glyph-name="lock-user" unicode="&#xe895;" d="M459 767c4 0 8 1 12 4 46 33 96 37 139 37 58 0 100-18 123-53 27-42 15-64 2-78l-20-21c-4-3-6-8-7-13l-5-105c0-5 2-11 6-15s9-6 15-6c6 0 11-3 15-8 4-4 6-10 5-16l-10-83c-1-10-10-18-23-18-10 0-19-8-20-18-4-23-21-54-22-55-5-10-2-22 8-28 10-6 23-2 29 8 0 1 14 27 22 53 25 6 44 27 47 53l11 83c2 18-4 35-15 49-7 8-16 14-25 17l4 79 15 15c24 25 43 68 2 130-31 48-84 72-157 72-29 0-96 0-158-42-178-3-202-86-202-166 0-19 5-61 8-87-11-3-21-9-28-18-12-13-18-31-16-49l11-83c3-27 24-49 50-54 9-57 36-113 77-155l-15-58-160-40c-104-26-177-120-177-227 0-6 2-11 6-15 4-4 9-6 15-6l542 1c11 0 20 9 20 21 0 11-9 20-20 20 0 0 0 0 0 0l-520 0c8 79 66 146 145 166l171 43c8 1 14 7 15 15l21 81c2 8-1 16-6 21-42 39-70 97-75 154 0 11-10 20-20 20h-7c-11 0-20 7-21 18l-10 83c-1 6 1 12 5 17 4 4 9 7 15 7h5c6 0 11 2 15 7 4 4 6 10 5 16-2 21-9 81-9 102 0 65 13 123 167 125z m520-624h-21v20c0 81-65 146-145 146s-146-65-146-146v-20h-21c-12 0-21-10-21-21v-250c0-12 9-21 21-21h333c12 0 21 9 21 21v250c0 11-9 21-21 21z m-271 20c0 58 47 105 105 105s104-47 104-105v-20h-209v20z m250-271h-291v209h291v-209z m-166 90v-27c0-12 9-21 21-21s20 9 20 21v27c13 7 21 20 21 36 0 23-18 41-41 41s-42-18-42-41c0-16 8-29 21-36z" horiz-adv-x="1000" />

<glyph glyph-name="testimonial-carousel" unicode="&#xe896;" d="M25 450c-8-12-8-21 0-33l83-84c13-8 21-8 34 0 8 9 8 21 0 34l-71 66 71 67c8 8 8 21 0 33-9 9-21 9-34 0l-83-83m950-33c8 8 8 21 0 33l-83 83c-9 9-21 9-34 0-8-12-8-20 0-33l67-67-67-66c-8-13-8-21 0-34 13-8 21-8 34 0l83 84m-229 179c-17 17-38 25-63 25h-366c-25 0-46-8-63-25-16-21-25-42-25-63v-225c0-25 9-45 29-66 17-17 38-25 63-25h33l-54-104c-4-9-4-17 4-25 9-9 17-9 25 0l175 129h175c25 0 46 8 63 25 16 16 25 41 25 66v225c4 21-4 42-21 63m-29-29c8-9 12-21 12-34v-225c0-12-4-25-12-33-9-8-21-17-34-17h-183l-12-4-109-83 25 54c4 8 4 13 0 21s-8 8-16 8h-71c-13 0-25 4-34 17-8 8-16 21-16 33v229c0 13 4 25 16 34 9 8 21 12 34 12h366c13 0 21-4 34-12z" horiz-adv-x="1000" />

<glyph glyph-name="media-carousel" unicode="&#xe897;" d="M500 121c-12 0-21-8-21-21 0-12 9-21 21-21 13 0 21 9 21 21 0 13-8 21-21 21m83 0c-12 0-20-8-20-21 0-12 8-21 20-21 13 0 21 9 21 21 0 13-8 21-21 21m-187-21c0-12 8-21 21-21 12 0 21 9 21 21 0 13-9 21-21 21-13 0-21-8-21-21m-279 475l-84-42c-12-4-16-16-8-25 4-12 17-16 25-8l54 25v-262l-54 25c-12 8-21 4-25-9-8-12-4-21 8-25l84-41 8-9 8 4c9 5 13 9 9 17v333c0 9-4 13-9 17-4 4-12 4-16 0m696 25c0 13-9 21-21 21h-584c-12 0-20-8-20-21v-417c0-12 8-20 20-20h584c12 0 21 8 21 20v417m-42-396h-542v375h542v-375m-308 279l-5 0c-8 0-12-4-12-8v-171l0-4c4-4 12-8 17-4l133 83 4 4c4 5 0 13-4 17l-133 83m433 38l50-25c12-8 21-4 25 8 8 13 4 21-8 25l-84 42c-8 4-12 4-21 0-4-4-8-8-8-17v-333c0-8 4-17 8-17l13-4 8 4 84 42c12 4 16 12 8 25-4 12-17 17-25 8l-50-25v267z" horiz-adv-x="1000" />

<glyph glyph-name="section" unicode="&#xe898;" d="M58 783c-16-16-20-37-20-62v-742c0-25 8-46 25-62s37-25 62-25h750c25 0 46 8 63 25 16 16 25 37 25 62v742c0 25-9 46-25 62-21 17-42 25-63 25h-750c-29 5-50-8-67-25m67-154h733v-275h-733v275m738-366v-276h-738v276h738z" horiz-adv-x="1000" />

<glyph glyph-name="column" unicode="&#xe899;" d="M958 721c0 25-8 46-25 62-16 17-37 25-62 25h-746c-21 0-42-8-58-25-17-16-25-37-25-62v-746c0-25 8-42 25-58 16-17 37-25 58-25h746c25 0 46 8 62 25 17 16 25 37 25 58v746m-825-96h321v-642h-321v642m413-642v642h317v-642h-317z" horiz-adv-x="1000" />

<glyph glyph-name="edit" unicode="&#xe89a;" d="M725 526l-196 197 67 67c55 53 109 83 155 38l79-80c53-52 15-101-38-155z m-256 137l196-196-459-459h-193l0 196z m-434-813a35 35 0 0 0 0 70h792a35 35 0 0 0 0-70z" horiz-adv-x="862" />

<glyph glyph-name="clone" unicode="&#xe89b;" d="M288 563c-17-13-25-30-25-55v-558c0-21 8-38 20-54 13-17 34-25 55-25h558c21 0 37 8 54 25s21 33 21 54v558c0 21-8 42-21 55-17 16-33 25-54 25h-554c-25 0-42-9-54-25m-163 145c0 13 4 17 17 17h504c17 0 21-4 21-17v-37c0-13 4-25 16-33 9-9 21-13 34-13s25 4 33 13c8 8 17 20 17 33v37c0 34-13 59-34 84-25 21-50 33-83 33h-508c-34 0-59-12-84-33-20-25-33-54-33-84v-504c0-33 13-58 33-83 25-21 50-33 84-33h37c13 0 25 4 34 16 8 9 16 21 16 34 0 12-4 25-16 33-9 8-21 12-34 12h-37c-13 0-17 5-17 21v504z" horiz-adv-x="1000" />

<glyph glyph-name="trash" unicode="&#xe89c;" d="M212 782h-191a21 21 0 0 1-21-21h0v-52a21 21 0 0 1 21-20h763a21 21 0 0 1 21 21v51a21 21 0 0 1-21 21h-191l-13 52a21 21 0 0 1-21 16h-314a21 21 0 0 1-21-16z m-148-178h678a21 21 0 0 0 21-21v-606h0a127 127 0 0 0-127-127h-466a127 127 0 0 0-128 127v607a21 21 0 0 0 22 20z" horiz-adv-x="805" />

<glyph glyph-name="play" unicode="&#xe89d;" d="M838 688c-92 91-205 137-338 137-129 0-242-46-337-137-92-92-138-205-138-338 0-133 46-246 138-337 91-92 204-142 337-142 133 0 246 46 338 142 91 91 137 204 137 337 0 133-46 246-137 338m-30-30c84-87 125-187 125-308 0-121-41-225-125-308-83-84-187-130-308-130-121 0-221 42-304 130-83 83-129 187-129 308 0 121 41 221 129 308 83 84 187 130 304 130 121 0 221-46 308-130m-370-200v-250l204 125-204 125z" horiz-adv-x="1000" />

<glyph glyph-name="angle-right" unicode="&#xe89e;" d="M417 600l-59-58 192-192-192-192 59-58 250 250-250 250z" horiz-adv-x="1000" />

<glyph glyph-name="angle-left" unicode="&#xe89f;" d="M642 541l-59 59-250-250 250-250 59 59-191 191z" horiz-adv-x="1000" />

<glyph glyph-name="animated-headline" unicode="&#xe8a0;" d="M246 613c-8 16-38 16-42 0l-137-367c-4-13 0-25 12-29 13-4 25 0 29 12l46 121c0 0 0 0 0 0h138c0 0 0 0 0 0l46-121c4-8 12-16 20-16 5 0 5 0 9 0 12 4 16 16 12 29l-133 371z m-75-213l54 142 54-142h-108z m646 92c37 0 66-29 66-67 0-12 9-21 21-21 13 0 21 9 21 21 0 63-50 113-112 113-63 0-113-50-113-113v-92c0-62 50-112 113-112 62 0 112 50 112 112 0 13-8 21-21 21-12 0-21-8-21-21 0-37-29-66-66-66s-67 29-67 66v92c-4 33 29 67 67 67z m-275 46c-25 0-50-9-67-25v91c0 13-8 21-21 21-12 0-21-8-21-21v-183-21-46-21-91c0-13 9-21 21-21 13 0 21 8 21 21v0c21-13 42-25 67-25 62 0 112 50 112 112v92c4 67-50 117-112 117z m71-205c0-37-30-66-67-66s-67 29-67 66v21 46 21c0 37 29 67 67 67s67-30 67-67v-88z m-550-250c366 55 633 71 808 46 54-8 75-25 42-46" horiz-adv-x="1000" />

<glyph glyph-name="menu-toggle" unicode="&#xe8a1;" d="M250 475h500c13 0 21 8 21 21s-8 21-21 21h-500c-12 0-21-9-21-21s9-21 21-21z m0-167h500c13 0 21 9 21 21s-8 21-21 21h-500c-12 0-21-8-21-21s9-21 21-21z m0-166h500c13 0 21 8 21 21s-8 20-21 20h-500c-12 0-21-8-21-20s9-21 21-21z m667-142v700c0 38-25 67-54 67h-725c-30 0-55-29-55-67v-700c0-38 25-67 55-67h720c34 0 59 29 59 67z m41 0c0-58-41-108-95-108h-725c-55 0-96 50-96 108v700c0 58 41 108 96 108h720c59 0 100-50 100-108v-700z" horiz-adv-x="1000" />

<glyph glyph-name="fb-embed" unicode="&#xe8a2;" d="M696 150c-8 8-21 8-29 0l-79-83c-9-9-9-21 0-29l79-84c4-4 8-4 12-4 4 0 9 0 13 4 8 8 8 21 0 29l-63 67 63 67c12 12 12 25 4 33z m192 0c8 8 20 8 29 0l79-83c8-9 8-21 0-29l-79-84c-4-4-9-4-13-4-4 0-8 0-12 4-9 8-9 21 0 29l62 67-62 67c-13 12-13 25-4 33z m-71 71l-67-275c-4-13 4-21 17-25 12-4 21 4 25 16l66 280c5 12-4 21-16 25s-25-9-25-21z m-338-234h-391c-25 0-50 26-50 59v633c0 34 20 59 50 59h654c25 0 50-25 50-59v-337c0-13 8-21 21-21s20 8 20 21v337c0 54-37 100-91 100h-654c-50 0-88-46-88-100v-633c0-54 38-100 92-100h387c13 0 21 8 21 21s-8 20-21 20z m42 584c-96 0-146-50-146-150v-246c0-12 8-21 21-21s21 9 21 21v246c0 75 33 108 104 108 12 0 21 9 21 21s-9 21-21 21z m-221-208h217c12 0 21 8 21 20s-9 21-21 21h-217c-12 0-21-8-21-21s9-20 21-20z" horiz-adv-x="1000" />

<glyph glyph-name="fb-feed" unicode="&#xe8a3;" d="M63 371c-13 0-21 8-21 21v416c0 13 8 21 21 21h875c12 0 20-8 20-21v-416c0-13-8-21-20-21h-875z m854 42v375h-834v-375h834z m-854-167h875c12 0 20 8 20 21s-8 21-20 21h-875c-13 0-21-9-21-21s8-21 21-21z m0-125h583c12 0 21 8 21 21s-9 21-21 21h-583c-13 0-21-9-21-21s8-21 21-21z m0-125h583c12 0 21 8 21 21s-9 21-21 21h-583c-13 0-21-9-21-21s8-21 21-21z m0-125h583c12 0 21 8 21 21s-9 20-21 20h-583c-13 0-21-8-21-20s8-21 21-21z m833 292c-67 0-104-38-104-105v-166c0-13 8-21 21-21s20 8 20 21v166c0 46 17 63 63 63 12 0 21 8 21 21s-9 21-21 21z m-146-167h146c12 0 21 8 21 21s-9 21-21 21h-146c-12 0-21-9-21-21s9-21 21-21z" horiz-adv-x="1000" />

<glyph glyph-name="twitter-embed" unicode="&#xe8a4;" d="M696 150c-8 8-21 8-29 0l-79-83c-9-9-9-21 0-29l79-84c4-4 8-4 12-4 4 0 9 0 13 4 8 8 8 21 0 29l-63 67 63 67c12 12 12 25 4 33z m192 0c8 8 20 8 29 0l79-83c8-9 8-21 0-29l-79-84c-4-4-9-4-13-4-4 0-8 0-12 4-9 8-9 21 0 29l62 67-62 67c-13 12-13 25-4 33z m-71 71l-67-275c-4-13 4-21 17-25 12-4 21 4 25 16l66 280c5 12-4 21-16 25s-25-9-25-21z m-546 192c12-9 8-30-4-34-4 0-13 0-21 0 12-21 29-37 46-41 16 0 21-21 12-34-4-4-12-8-21-12 13-13 30-17 50-21 17 0 25-21 13-33-17-17-38-30-63-38 146-42 284 88 267 233 0 9 4 13 8 17-16 13-20 25-16 33-4 0-9 5-13 5-25 25-54 29-83 8-21-13-29-50-25-71 4-12-8-25-21-21-62 4-117 29-154 71-4-25 8-54 25-62z m-50 112c4 8 21 13 29 0 33-46 75-75 133-83 0 33 17 71 46 87 42 25 84 25 121-8 13 4 29 12 33 17 13 12 34-5 30-21 0-4-5-9-5-13 13 0 21-16 13-29-8-12-21-29-38-42 13-191-191-354-387-233-17 13-8 38 12 33 25-4 50 0 71 13-25 12-46 33-54 58-4 9 0 17 8 21-20 21-33 46-33 79 0 9 4 17 13 17-9 33-9 71 8 104z m258-538h-391c-25 0-50 26-50 59v633c0 34 20 59 50 59h654c25 0 50-25 50-59v-337c0-13 8-21 21-21s20 8 20 21v337c0 54-37 100-91 100h-654c-50 0-88-46-88-100v-633c0-54 38-100 92-100h387c13 0 21 8 21 21s-8 20-21 20z" horiz-adv-x="1000" />

<glyph glyph-name="twitter-feed" unicode="&#xe8a5;" d="M63 371c-13 0-21 8-21 21v416c0 13 8 21 21 21h875c12 0 20-8 20-21v-416c0-13-8-21-20-21h-875z m854 42v375h-834v-375h834z m-854-167h875c12 0 20 8 20 21s-8 21-20 21h-875c-13 0-21-9-21-21s8-21 21-21z m0-125h458c12 0 21 8 21 21s-9 21-21 21h-458c-13 0-21-9-21-21s8-21 21-21z m0-125h458c12 0 21 8 21 21s-9 21-21 21h-458c-13 0-21-9-21-21s8-21 21-21z m0-125h458c12 0 21 8 21 21s-9 20-21 20h-458c-13 0-21-8-21-20s8-21 21-21z m583 279c25-33 71-67 133-71-4 17 0 54 25 71 29 17 59 17 88-8 12 0 37 12 41 16-4-12-16-33-29-37 9 0 29 4 38 8-9-16-25-29-34-33 13-117-120-275-287-175 37-4 75 8 96 29-29 0-54 17-67 46 13-4 29-4 38 4-13 0-55 25-55 71 9-8 21-13 34-8-17 8-42 45-21 87l0 0z" horiz-adv-x="1000" />

<glyph glyph-name="sync" unicode="&#xe8a6;" d="M500 141c49-1 94 15 136 49 59 48 82 126 61 229-4 23 13 44 36 47s40-14 47-36c33-110-8-237-92-305-57-46-120-68-188-67v-105c0-6-2-10-5-14-4-4-8-7-13-7s-9 3-13 7l-130 146c-4 4-5 9-5 14s1 11 5 15l130 146c4 4 8 6 13 6s9-2 13-6c3-5 5-10 5-15v-104z m0 417c-49 1-94-15-136-49-59-48-82-126-61-229 5-22-13-44-36-47s-40 14-47 36c-33 111 8 237 92 305 57 46 120 69 188 68v104c0 6 2 10 5 14s8 7 13 7 10-2 13-7l130-145c4-5 5-10 5-15s-1-10-5-15l-130-145c-3-5-8-7-13-7s-9 2-13 7-5 8-5 14v104z" horiz-adv-x="1000" />

<glyph glyph-name="import-export" unicode="&#xe8a7;" d="M417 600v-345c0-17-19-30-42-30s-42 13-42 30v345h-104c-6 0-10 2-14 5-5 4-7 8-7 13 0 5 2 10 7 13l145 130c5 4 10 5 15 5s10-1 15-5l145-130c5-3 7-8 7-13 0-5-2-9-7-13-4-3-9-5-14-5h-104z m208-500v345c0 17 19 30 42 30s41-13 41-30v-345h105c5 0 10-2 14-5s6-8 6-13-2-9-6-13l-146-130c-4-4-9-5-14-5s-11 1-15 5l-146 130c-4 4-6 8-6 13s2 9 6 13 9 5 15 5h104z" horiz-adv-x="1000" />

<glyph glyph-name="check-circle" unicode="&#xe8a8;" d="M496 804c-250 0-454-204-454-458s204-454 454-454 454 204 454 454-200 458-454 458m0-954c-271 0-496 225-496 496s225 500 496 500 496-225 496-496-221-500-496-500m-79 288l-217 216c-8 9-8 21 0 29 8 9 25 9 33 0l200-200 330 330c8 8 20 8 29 0 8-9 8-21 0-30l-346-345c-4-5-8-9-17-9s-8 4-12 9z" horiz-adv-x="1000" />

<glyph glyph-name="library-save" unicode="&#xe8a9;" d="M331 267h338c21 0 39-18 39-40v-337c0-22-17-40-39-40h-338c-21 0-39 17-39 40v337c0 22 17 40 39 40z m2-42v-333h334v333h-334z m73-95c0 11 9 20 21 20s21-9 21-20v-143c0-12-9-21-21-21s-21 9-21 21v143z m91-21c-12 0-21 9-21 21 0 11 9 20 21 20h86c12 0 21-9 21-20 0-12-9-21-21-21h-86z m0-71c-12 0-21 9-21 20s9 21 21 21h86c12 0 21-9 21-21s-9-20-21-20h-86z m0-72c-12 0-21 9-21 21 0 12 9 21 21 21h86c12 0 21-9 21-21 0-12-9-21-21-21h-86z m-455 778c0 1 0 1 0 2 0 57 47 104 105 104h706c58 0 105-47 105-104v-129c26-20 42-52 42-87v-384c0-61-47-109-106-109h-120c-12 0-21 9-21 21s9 20 21 20h120c35 0 64 30 64 68v384c0 38-29 68-64 68h-501c-45 0-85 29-100 72l-3 3-2 6c-9 28-34 46-62 46h-120c-35 0-64-30-64-67v-512c0-38 29-68 64-68h120c12 0 21-9 21-20s-9-21-21-21h-120c-58 0-106 48-106 109v512c0 35 16 66 42 86z m44 21c7 1 14 2 20 2h120c44 0 84-29 100-72l2-3 4-7c8-27 33-46 61-46h501c8 0 16-1 23-2v109c0 34-29 62-64 62h-706c-29 0-53-18-61-43z" horiz-adv-x="1000" />

<glyph glyph-name="library-download" unicode="&#xe8aa;" d="M479 25v138c0 11 9 20 21 20s21-9 21-20v-138l27 28c8 8 21 8 30 0s8-22 0-30l-63-63c-8-8-21-8-30 0l-62 63c-8 8-8 21 0 30 8 8 21 8 30 0l26-28z m-146 33c0-92 75-166 167-166s167 74 167 166-75 167-167 167-167-75-167-167z m-291 686c0 1 0 1 0 2 0 57 47 104 105 104h706c58 0 105-47 105-104v-129c26-20 42-52 42-87v-384c0-61-47-109-106-109h-120c-12 0-21 9-21 21s9 20 21 20h120c35 0 64 30 64 68v384c0 38-29 68-64 68h-501c-45 0-85 29-100 72l-3 3-2 6c-9 28-34 46-62 46h-120c-35 0-64-30-64-67v-512c0-38 29-68 64-68h120c12 0 21-9 21-20s-9-21-21-21h-120c-58 0-106 48-106 109v512c0 35 16 66 42 86z m44 21c7 1 14 2 20 2h120c44 0 84-29 100-72l2-3 4-7c8-27 33-46 61-46h501c8 0 16-1 23-2v109c0 34-29 62-64 62h-706c-29 0-53-18-61-43z m206-707c0 115 93 209 208 209s208-94 208-209-93-208-208-208-208 93-208 208z" horiz-adv-x="1000" />

<glyph glyph-name="insert" unicode="&#xe8ab;" d="M375 433h-127c-11 0-20-3-28-10-8-8-12-16-12-26 0-10 4-19 12-26l273-259c8-8 17-11 28-11s19 4 27 11l274 259c8 7 11 16 11 26 0 10-3 18-11 26-8 7-17 10-28 10h-127v292c0 23-19 42-42 42h-208c-23 0-42-19-42-42l0 0v-292z m-122-500c-25 0-45 19-45 42s20 42 45 42h536c24 0 44-19 44-42s-20-42-44-42h-536z" horiz-adv-x="1000" />

<glyph glyph-name="preview-medium" unicode="&#xe8ac;" d="M893 347c-52 81-117 141-195 181 21-36 31-74 31-115 0-63-22-118-67-163-45-44-99-67-162-67s-117 23-162 67c-45 45-67 100-67 163 0 41 10 79 31 115-78-40-143-100-195-181 46-70 102-125 171-167s142-62 222-62 153 21 222 62 126 97 171 167z m-368 196c0 7-3 13-7 18-5 4-11 7-18 7-42 0-79-15-110-46-30-30-45-67-45-109 0-7 2-13 7-18 4-5 10-7 17-7 7 0 13 2 18 7 4 5 7 10 7 18 0 29 10 54 31 75s46 31 75 31c7 0 13 2 18 7 4 5 7 11 7 17z m433-196c0-12-3-23-10-35-48-79-112-142-193-189-80-47-165-70-255-70s-175 23-255 71c-81 47-145 110-193 188-7 12-10 24-10 36s3 23 10 35c48 78 112 141 193 188s165 71 255 71 175-24 255-72 145-110 193-188c7-12 10-23 10-35z" horiz-adv-x="1000" />

<glyph glyph-name="sort-down" unicode="&#xe8ad;" d="M208 480c0-10 4-19 12-26l273-259c8-8 17-11 28-11s19 4 27 11l274 259c8 7 11 16 11 26 0 10-3 18-11 25-8 8-17 11-28 11h-546c-11 0-20-3-28-11-8-7-12-15-12-25z" horiz-adv-x="1000" />

<glyph glyph-name="sort-up" unicode="&#xe8ae;" d="M208 220c0 10 4 19 12 26l273 259c8 8 17 11 28 11s19-3 27-11l274-259c8-7 11-16 11-26 0-10-3-18-11-25-8-8-17-11-28-11h-546c-11 0-20 4-28 11-8 7-12 15-12 25z" horiz-adv-x="1000" />

<glyph glyph-name="heading" unicode="&#xe8af;" d="M606-67l0 0c0 0 0 0 0 0z m12 870c0 0 0 0 0 0 0 0-1 1-1 1 0 0 0 0 1-1 0 0 0 0 0 0z m-221-36c0 0 0 0 0 0l0 0z m-280 36c1 0 1 0 0 0 0 0 0 1-1 1 0 0 1 0 1-1 0 0 0 0 0 0z m-11-870c0 0 0 0 0 0l0 0z m644 0l60 1c-3 4-6 9-8 15-8 19-9 35-8 69 0 7 0 10 0 14v651c0 36 7 64 21 84l-63 0-65-1c14-20 21-48 21-84v-247c0-24-19-44-43-44h-327c-25 0-44 20-44 44v248c0 36 7 64 21 84l-63 0-65-1c14-20 21-48 21-84v-651c0-4 0-7 0-14 1-35 0-50-8-70-2-5-5-10-7-14l57 0 60 0c-3 5-6 10-8 15-8 20-9 35-8 70 0 7 0 10 0 14v232c0 24 20 44 44 44h327c24 0 43-20 43-44v-233c0-4 0-7 1-14 1-35 0-50-9-70-2-5-4-10-7-14l57 0z m-415 332v-233c0-42-9-90 49-96 6 0 12-1 18-3 9-3 15-11 15-20 0-12-9-21-21-21l-146 0-144 0c-12 0-21 9-21 20 0 10 6 18 15 20 6 2 11 3 17 3 58 6 49 54 49 96v651c0 94-56 77-71 86-1 1-2 1-3 2-9 7-12 20-5 29 4 6 10 9 17 9l147 0 146 0c6 0 13-3 17-8 6-10 4-23-5-30-18-11-74 7-74-87v-248c0-1 1-2 3-2h326c1 0 2 1 2 2v247c0 94-56 77-71 86 0 1-1 1-2 2-10 7-12 20-5 29 3 6 10 9 17 9l147 0 145 0c7 0 13-3 17-8 7-10 4-23-5-30-17-11-73 7-73-87v-651c0-42-9-90 49-96 6 0 12-1 17-3 9-3 16-11 16-20 0-12-10-21-21-21l-147 0-144 0c-11 0-21 9-21 20 0 10 7 18 16 20 5 2 11 3 17 3 57 6 48 54 48 96v234c0 1-1 2-2 2h-326c-2 0-3-1-3-2z" horiz-adv-x="1000" />

<glyph glyph-name="logo" unicode="&#xe8b0;" d="M937 350c0 242-196 437-437 437s-437-195-437-437 195-437 437-437 437 195 437 437z m42 0c0-265-214-479-479-479s-479 214-479 479 214 479 479 479 479-214 479-479z m-773 75h9l0 0c7 0 12-5 12-11v-99l0 0c0-7 5-12 11-12h28l0 0c7 0 12-5 12-11v-10l0 0c0-7-5-12-12-12h-60l0 0c-6 0-11 5-11 12v132l0 0c0 6 5 11 11 11z m214-76c0 15-5 27-13 36-9 10-21 14-35 14s-27-4-35-14-14-21-14-36c0-16 5-28 14-37 9-9 21-14 35-14s26 5 35 14c8 9 13 21 13 37z m-106-57c-16 15-24 33-24 57 0 23 8 42 24 57 16 15 35 22 58 22 23 0 42-7 58-22 15-15 23-34 23-57 0-23-8-42-23-57-16-15-35-23-58-23s-42 8-58 23z m155 57c0 23 8 41 24 56 16 15 35 23 57 23 18 0 33-4 47-13 13-9 23-22 26-34 0-7-8-8-21-8-4 0-7 2-10 6-7 14-25 20-42 20-15 0-26-4-35-14s-13-21-13-36c0-16 4-28 13-37 9-9 20-14 33-14 13 0 23 4 31 10 8 6 11 11 13 19h-41l0 0c-6 0-11 5-11 11 0 0 0 0 0 0l0 8 0 0c0 7 5 11 11 11l64-1 0 0c6 0 11-5 11-11v-11c-3-16-9-32-24-44-14-13-32-20-54-20s-40 8-55 23c-16 14-24 33-24 56z m305 0c0 15-5 27-14 36s-20 14-35 14-26-4-35-14-13-21-13-36c0-16 5-28 13-37 10-9 21-14 35-14s27 5 35 14c10 9 14 21 14 37z m-106-57c-16 15-24 33-24 57 0 23 8 42 24 57 16 15 35 22 58 22s42-7 57-22c16-15 24-34 24-57 0-23-8-42-24-57-15-15-35-23-58-23-22 0-42 8-57 23z m-509 187c-9 0-17 8-17 17 0 9 8 17 17 17h674c10 0 17-8 17-17 0-9-7-17-17-17h-674z m0-291c-9 0-17 7-17 16s8 17 17 17h674c10 0 17-8 17-17s-7-16-17-16h-674z" horiz-adv-x="1000" />

<glyph glyph-name="meta-data" unicode="&#xe8b1;" d="M422-68l-316 296c-13 12-14 33-2 47l446 479c6 7 15 11 25 11l293-2c17 0 32-14 33-31l23-293c1-9-3-18-9-25l-446-480c-12-13-34-14-47-2z m460 508l-22 281-282 2-438-471 305-283 437 471z m-504-286c-43 17-64 66-47 109 17 42 66 63 109 46 42-17 63-66 46-109-17-42-66-63-108-46z m30 36c23 0 42 18 42 41 0 23-19 42-42 42s-41-19-41-42c0-23 18-41 41-41z m109 119c-43 17-64 66-47 108 18 43 66 63 109 46 42-17 63-65 46-108s-65-63-108-46z m31 36c23 0 42 18 42 41 0 23-19 42-42 42-23 0-42-19-42-42 0-23 19-41 42-41z m108 119c-42 17-63 66-46 108 17 43 66 63 108 46s64-65 47-108c-17-43-66-63-109-46z m32 35c22 0 41 19 41 42 0 23-19 42-41 42s-42-19-42-42c0-23 18-42 42-42z" horiz-adv-x="1000" />

<glyph glyph-name="post-content" unicode="&#xe8b2;" d="M435 267h-120l-25-70c-3-11-15-17-26-12-11 3-17 15-13 26l104 292c7 18 33 18 40 0l104-292c4-11-2-23-13-26s-23 1-26 12l-25 70z m-15 41l-45 126-45-126h90z m-40 535c4 5 10 7 16 7h417c34 0 62-28 62-62v-876c0-34-28-62-62-62h-625c-35 0-63 28-63 62v667c0 6 3 12 7 16l248 248z m-5-64l-179-179h158c12 0 21 9 21 21v158z m438 29h-396v-187c0-35-28-63-63-63h-187v-646c0-11 9-20 21-20h625c11 0 20 9 20 20v876c0 11-9 20-20 20z m-250-333c-12 0-21 9-21 21s9 21 21 21h166c12 0 21-9 21-21s-9-21-21-21h-166z m0-125c-12 0-21 9-21 21s9 21 21 21h166c12 0 21-9 21-21s-9-21-21-21h-166z m0-125c-12 0-21 9-21 21s9 21 21 21h166c12 0 21-9 21-21s-9-21-21-21h-166z m-271-146c-12 0-21 9-21 21s9 21 21 21h458c12 0 21-9 21-21s-9-21-21-21h-458z m0-125c-12 0-21 9-21 21s9 21 21 21h458c12 0 21-9 21-21s-9-21-21-21h-458z" horiz-adv-x="1000" />

<glyph glyph-name="post-excerpt" unicode="&#xe8b3;" d="M380 843c4 5 10 7 16 7h417c34 0 62-28 62-62v-876c0-34-28-62-62-62h-625c-35 0-63 28-63 62v667c0 6 3 12 7 16l248 248z m-5-64l-179-179h158c12 0 21 9 21 21v158z m438 29h-396v-187c0-35-28-63-63-63h-187v-646c0-11 9-20 21-20h625c11 0 20 9 20 20v876c0 11-9 20-20 20z m-459-812c0-23-19-42-41-42s-42 19-42 42 19 42 42 42 41-19 41-42z m125 0c0-23-19-42-41-42s-42 19-42 42 19 42 42 42 41-19 41-42z m125 0c0-23-19-42-41-42s-42 19-42 42 19 42 42 42 41-19 41-42z m-312 250c-12 0-21 9-21 21s9 21 21 21h458c12 0 21-10 21-21s-9-21-21-21h-458z m0 125c-12 0-21 9-21 21s9 21 21 21h333c12 0 21-10 21-21s-9-21-21-21h-333z m0-250c-12 0-21 9-21 21s9 21 21 21h375c11 0 21-10 21-21s-10-21-21-21h-375z" horiz-adv-x="1000" />

<glyph glyph-name="post-navigation" unicode="&#xe8b4;" d="M783 329h-158c-12 0-21 9-21 21s9 21 21 21h158l-29 25c-8 8-8 21 0 29 9 8 21 8 29 0l63-58c8-9 8-21 0-29l-63-67c-8-8-20-8-29 0-8 8-8 21 0 29l29 29z m-283 292h417c33 0 62-29 62-63v-416c0-34-29-63-62-63h-417-417c-33 0-62 29-62 63v416c0 34 29 63 62 63h417z m-283-250h158c13 0 21-8 21-21s-8-21-21-21h-158l25-29c8-8 8-21 0-29-9-8-21-8-29 0l-63 67c-8 8-8 20 0 29l63 58c8 8 20 8 29 0s8-21 0-29l-25-25z m262 208h-396c-12 0-20-8-20-21v-416c0-13 8-21 20-21h396v458z m21 42h21v-542h-21-21v542h21z m21-42v-458h396c12 0 21 8 21 21v416c0 13-9 21-21 21h-396z" horiz-adv-x="1000" />

<glyph glyph-name="yoast" unicode="&#xe8b5;" d="M300 542c0 0 38-109 117-329 16-59 12-105-9-138-16-29-45-50-87-67 0 0 0-25 0-75 42 4 75 21 104 50 38 38 63 80 75 125l242 659c0 0-29 0-88 0 0 0-54-159-162-479-4-17-34-17-38 0l-79 250c0 0-25 4-75 4z m313 237c8 17 20 29 41 29h88c21 0 41-16 41-41 0-4 0-9-4-13l-237-658c-17-50-46-96-84-138-37-37-79-58-125-62-20-4-41 12-45 37 0 4 0 4 0 4v76c0 16 12 33 25 37 33 13 54 29 66 50 13 21 17 58 4 104l-120 321c-9 21 4 46 25 54 4 0 8 4 12 4h75c17 0 33-12 38-29l58-191 142 416z m262-762l0 587c0 42-33 79-58 79 0 0-17 0-17 21s17 21 17 21c58 0 100-54 100-121l0-625-367 0c-12 0-21 8-21 21s9 21 21 21l325-4z m-342 708c13-4 17-8 17-21s-4-16-17-21l-220 0c-105 0-188-62-188-166l0-334c0-79 25-166 104-166 17 0 21-9 21-25 0-9-8-17-21-17-104 0-146 104-146 208l0 334c0 125 105 208 230 208l220 0z" horiz-adv-x="1000" />

<glyph glyph-name="nerd-chuckle" unicode="&#xe8b6;" d="M958 350c0 253-205 458-458 458s-458-205-458-458 205-458 458-458 458 205 458 458z m42 0c0-276-224-500-500-500s-500 224-500 500 224 500 500 500 500-224 500-500z m-240-107c-10 6-22 2-28-8-45-78-123-114-232-114-109 0-187 36-232 114-6 10-18 14-28 8-10-6-14-18-8-28 30-52 71-88 123-110 0-1-1-3-1-5v-83c0-12 9-21 21-21h125c12 0 21 9 21 21v63c112 4 197 47 247 135 6 10 2 23-8 28z m-364-205v54c26-7 54-11 83-12v-42h-83z m302 624c-95 0-172-74-176-168-6 1-14 2-22 2-8 0-16-1-22-2-4 94-81 168-176 168-97 0-176-79-176-177s79-176 176-176c71 0 133 43 161 104 9 2 16 10 16 20 0 21 1 21 21 21 20 0 21 0 21-21 0-10 7-18 17-20 27-61 89-104 160-104 97 0 176 79 176 176s-79 177-176 177z m-396-313c-75 0-136 61-136 136 0 76 61 137 136 137 76 0 136-62 136-137 0-75-60-136-136-136z m396 0c-75 0-136 61-136 136 0 76 61 137 136 137 75 0 136-62 136-137 0-75-61-136-136-136z m23 134c0 12-9 21-21 21s-21-9-21-21 9-20 21-20 21 9 21 20z m42 0c0-34-28-62-63-62-35 0-62 28-62 62s27 63 62 63c35 0 63-28 63-63z m-438 0c0 12-9 21-21 21s-21-9-21-21 10-20 21-20 21 9 21 20z m42 0c0-34-28-62-63-62s-62 28-62 62 28 63 62 63 63-28 63-63z" horiz-adv-x="1000" />

<glyph glyph-name="nerd-wink" unicode="&#xe8b7;" d="M958 350c0 253-205 458-458 458s-458-205-458-458 205-458 458-458 458 205 458 458z m42 0c0-276-224-500-500-500s-500 224-500 500 224 500 500 500 500-224 500-500z m-768-135c53-93 146-136 268-136s215 43 268 136c6 10 2 23-8 28-10 6-22 2-28-8-45-78-123-114-232-114s-187 36-232 114c-6 10-18 14-28 8-10-5-14-18-8-28z m466 447c-95 0-172-74-176-168-6 1-14 2-22 2-8 0-16-1-22-2-4 94-81 168-176 168-97 0-176-79-176-177s79-176 176-176c71 0 133 43 161 104 9 2 16 10 16 20 0 21 1 21 21 21 20 0 21 0 21-21 0-10 7-18 17-20 27-61 89-104 160-104 97 0 176 79 176 176s-79 177-176 177z m-396-313c-75 0-136 61-136 136 0 76 61 137 136 137 76 0 136-62 136-137 0-75-60-136-136-136z m396 0c-75 0-136 61-136 136 0 76 61 137 136 137 75 0 136-62 136-137 0-75-61-136-136-136z m-373 134c0 12-9 21-21 21s-21-9-21-21 10-20 21-20 21 9 21 20z m42 0c0-34-28-62-63-62s-62 28-62 62 28 63 62 63 63-28 63-63z m279-8h125c12 0 21 9 21 21s-9 21-21 21h-125c-12 0-21-9-21-21s9-21 21-21z" horiz-adv-x="1000" />

<glyph glyph-name="comments" unicode="&#xe8b8;" d="M217 183c-3 0-7 1-9 3-6 4-9 11-7 18l28 113h-12c-65 0-117 52-117 116v234c0 64 52 116 117 116h400c64 0 116-52 116-116 0-9-7-17-16-17h-134c-46 0-83-37-83-83v-200c0-9 2-18 5-28 2-5 1-11-2-15-3-5-8-7-13-7h-101l-162-130c-3-2-7-4-10-4z m0 567c-46 0-84-37-84-83v-234c0-46 38-83 84-83h33c5 0 10-2 13-6s4-10 3-15l-21-85 128 102c3 3 7 4 10 4h85c-1 6-1 11-1 17v200c0 64 52 116 116 116h115c-7 38-41 67-81 67h-400z m766-633c-3 0-7 1-10 3l-162 130h-228c-64 0-116 52-116 117v200c0 64 52 116 116 116h400c65 0 117-52 117-116v-200c0-65-52-117-117-117h-12l29-113c1-7-2-14-8-18-2-1-5-2-9-2z m-400 533c-46 0-83-37-83-83v-200c0-46 37-84 83-84h234c3 0 7-1 10-3l128-103-21 86c-1 5 0 10 3 14s8 6 13 6h33c46 0 84 38 84 84v200c0 46-38 83-84 83h-400z" horiz-adv-x="1000" />

<glyph glyph-name="download-circle-o" unicode="&#xe8b9;" d="M167 350c0-184 149-333 333-333s333 149 333 333-149 333-333 333-333-149-333-333z m-84 0c0 230 187 417 417 417s417-187 417-417-187-417-417-417-417 187-417 417z m375-83h-104c-6 0-10-2-14-6s-7-8-7-13 2-9 7-13l145-129c5-4 10-6 15-6s10 2 15 6l145 129c5 4 7 8 7 13s-2 10-7 13-9 6-14 6h-104v293c0 16-19 40-42 40s-42-23-42-40v-293z" horiz-adv-x="1000" />

<glyph glyph-name="library-upload" unicode="&#xe8ba;" d="M479 113v-138c0-13 9-21 21-21s21 8 21 21v138l25-25c8-9 21-9 29 0 8 8 8 20 0 29l-62 62c-9 9-21 9-30 0l-62-62c-8-9-8-21 0-29 8-9 21-9 29 0l29 25z m-146-55c0-91 75-166 167-166s167 75 167 166-75 167-167 167-167-75-167-167z m-291 688c0 0 0 0 0 0 0 58 46 104 104 104h708c59 0 104-46 104-104v-129c25-21 42-50 42-88v-383c0-58-46-108-108-108h-121c-13 0-21 8-21 20s8 21 21 21h121c37 0 66 29 66 67v383c0 38-29 71-66 71h-500c-42 0-84 25-100 71l0 0-4 8c-9 29-34 46-63 46h-117c-37 0-66-29-66-67v-512c0-38 29-67 66-67h121c13 0 21-8 21-21s-8-20-21-20h-121c-58 0-108 50-108 108v512c0 34 17 67 42 88z m46 21c8 0 12 0 20 0h121c46 0 84-29 100-71l4-4 0-4c9-30 34-46 59-46h500c8 0 16 0 25-4v108c0 33-29 62-63 62h-708c-29 0-50-16-58-41z m204-709c0 117 91 209 208 209s208-92 208-209-91-208-208-208-208 92-208 208z" horiz-adv-x="1000" />

<glyph glyph-name="save-o" unicode="&#xe8bb;" d="M683 725c-4 0-12 0-16 0h0-63-83-271-42c-45 0-83-37-83-83v-584c0-45 38-83 83-83h584c46 0 83 38 83 83v459c0 108-83 196-192 208z m-183-83v-146c0-13 8-21 21-21h83c13 0 21 8 21 21v146h42c0 0 0 0 0 0v-209h-334v209h167z m292-584h-584v584h42v-250c0-25 17-42 42-42h416c25 0 42 17 42 42v216c25-25 42-54 42-91v-459z" horiz-adv-x="1000" />

<glyph glyph-name="upload-circle-o" unicode="&#xe8bc;" d="M833 350c0 184-149 333-333 333s-333-149-333-333 149-333 333-333 333 149 333 333z m84 0c0-230-187-417-417-417s-417 187-417 417 187 417 417 417 417-187 417-417z m-375 83h104c6 0 10 2 14 6s7 8 7 13-2 9-7 13l-145 129c-5 4-10 6-15 6s-10-2-15-6l-145-129c-5-4-7-8-7-13s2-9 7-13 9-6 14-6h104v-293c0-16 19-40 42-40s42 23 42 40v293z" horiz-adv-x="1000" />

<glyph glyph-name="ellipsis-h" unicode="&#xe8bd;" d="M208 267c-45 0-83 37-83 83s38 83 83 83 84-37 84-83-38-83-84-83z m292 0c-46 0-83 37-83 83s37 83 83 83 83-37 83-83-37-83-83-83z m292 0c-46 0-84 37-84 83s38 83 84 83 83-37 83-83-37-83-83-83z" horiz-adv-x="1000" />

<glyph glyph-name="ellipsis-v" unicode="&#xe8be;" d="M417 642c0 46 37 83 83 83s83-37 83-83-37-84-83-84-83 38-83 84z m0-292c0 46 37 83 83 83s83-37 83-83-37-83-83-83-83 37-83 83z m0-292c0 46 37 84 83 84s83-38 83-84-37-83-83-83-83 38-83 83z" horiz-adv-x="1000" />

<glyph glyph-name="arrow-left" unicode="&#xe8bf;" d="M263 304l158-162c25-25 25-63 0-88-25-25-63-25-88 0l-270 279c-25 25-25 63 0 88l266 262c25 30 63 25 88 0 25-25 25-62 0-87l-171-167 650 4c33 0 62-29 62-62 0-33-29-63-62-63l-633-4z" horiz-adv-x="1000" />

<glyph glyph-name="arrow-right" unicode="&#xe8c0;" d="M738 304l-159-162c-25-25-25-63 0-88s63-25 88 0l271 279c25 25 25 63 0 88l-267 262c-25 25-63 25-88 0-25-25-25-62 0-87l171-167-650 4c-33 0-62-29-62-62 0-33 29-63 62-63l634-4z" horiz-adv-x="1000" />

<glyph glyph-name="arrow-up" unicode="&#xe8c1;" d="M413 588l-163-159c-25-25-62-25-87 0s-21 67 4 92l279 271c25 25 62 25 87 0l263-267c25-25 25-62 0-87-25-25-63-25-88 0l-166 170 0-654c0-33-29-62-63-62-33 0-62 29-62 62l-4 634z" horiz-adv-x="1000" />

<glyph glyph-name="arrow-down" unicode="&#xe8c2;" d="M413 113l-163 158c-25 25-62 25-87 0s-25-63 0-88l279-271c25-25 62-25 87 0l263 267c25 25 25 63 0 88-25 25-63 25-88 0l-166-171 4 650c0 33-29 62-63 62-33 0-62-29-62-62l-4-633z" horiz-adv-x="1000" />

<glyph glyph-name="play-o" unicode="&#xe8c3;" d="M498-124c-264 0-477 213-477 477s213 476 477 476 476-213 476-476-213-477-476-477z m151 487l-238 141v-281l238 140z" horiz-adv-x="1000" />

<glyph glyph-name="archive-posts" unicode="&#xe8c4;" d="M958 600h-916v-646c0-34 28-62 62-62h792c34 0 62 28 62 62v646z m0 42v62c0 35-28 63-62 63h-792c-34 0-62-28-62-63v-62h916z m42-688c0-57-47-104-104-104h-792c-57 0-104 47-104 104v750c0 58 47 104 104 104h792c57 0 104-46 104-104v-750z m-854 438c-12 0-21 9-21 21v83c0 12 9 21 21 21h83c12 0 21-9 21-21v-83c0-12-9-21-21-21h-83z m21 41h41v42h-41v-42z m-21-250c-12 0-21 10-21 21v84c0 11 9 20 21 20h83c12 0 21-9 21-20v-84c0-11-9-21-21-21h-83z m21 42h41v42h-41v-42z m-21-250c-12 0-21 9-21 21v83c0 12 9 21 21 21h83c12 0 21-9 21-21v-83c0-12-9-21-21-21h-83z m21 42h41v41h-41v-41z m146 458c-12 0-21 9-21 21s9 21 21 21h125c11 0 20-9 20-21s-9-21-20-21h-125z m0-83c-12 0-21 9-21 21s9 20 21 20h125c11 0 20-9 20-20s-9-21-20-21h-125z m0-125c-12 0-21 9-21 21s9 20 21 20h125c11 0 20-9 20-20s-9-21-20-21h-125z m0-84c-12 0-21 10-21 21s9 21 21 21h125c11 0 20-9 20-21s-9-21-20-21h-125z m0-125c-12 0-21 10-21 21s9 21 21 21h125c11 0 20-9 20-21s-9-21-20-21h-125z m0-83c-12 0-21 9-21 21s9 21 21 21h125c11 0 20-9 20-21s-9-21-20-21h-125z m250 417c-12 0-21 9-21 21v83c0 12 9 21 21 21h83c12 0 21-9 21-21v-83c0-12-9-21-21-21h-83z m20 41h42v42h-42v-42z m-20-250c-12 0-21 10-21 21v84c0 11 9 20 21 20h83c12 0 21-9 21-20v-84c0-11-9-21-21-21h-83z m20 42h42v42h-42v-42z m-20-250c-12 0-21 9-21 21v83c0 12 9 21 21 21h83c12 0 21-9 21-21v-83c0-12-9-21-21-21h-83z m20 42h42v41h-42v-41z m146 458c-11 0-21 9-21 21s10 21 21 21h125c12 0 21-9 21-21s-9-21-21-21h-125z m0-83c-11 0-21 9-21 21s10 20 21 20h125c12 0 21-9 21-20s-9-21-21-21h-125z m0-125c-11 0-21 9-21 21s10 20 21 20h125c12 0 21-9 21-20s-9-21-21-21h-125z m0-84c-11 0-21 10-21 21s10 21 21 21h125c12 0 21-9 21-21s-9-21-21-21h-125z m0-125c-11 0-21 10-21 21s10 21 21 21h125c12 0 21-9 21-21s-9-21-21-21h-125z m0-83c-11 0-21 9-21 21s10 21 21 21h125c12 0 21-9 21-21s-9-21-21-21h-125z m-604 729c0-11-9-21-21-21s-21 10-21 21 10 21 21 21 21-9 21-21m83 0c0-11-9-21-20-21s-21 10-21 21 9 21 21 21 20-9 20-21m84 0c0-11-9-21-21-21-12 0-21 10-21 21s9 21 21 21c12 0 21-9 21-21" horiz-adv-x="1000" />

<glyph glyph-name="archive-title" unicode="&#xe8c5;" d="M958 600h-916v-646c0-34 28-62 62-62h792c34 0 62 28 62 62v646z m0 42v62c0 35-28 63-62 63h-792c-34 0-62-28-62-63v-62h916z m42-688c0-57-47-104-104-104h-792c-57 0-104 47-104 104v750c0 58 47 104 104 104h792c57 0 104-46 104-104v-750z m-875 750c0-11-9-21-21-21s-21 10-21 21 10 21 21 21 21-9 21-21z m83 0c0-11-9-21-20-21s-21 10-21 21 9 21 21 21 20-9 20-21z m84 0c0-11-9-21-21-21-12 0-21 10-21 21s9 21 21 21c12 0 21-9 21-21z m-146-729c-12 0-21 9-21 21v83c0 12 9 21 21 21h83c12 0 21-9 21-21v-83c0-12-9-21-21-21h-83z m21 42h41v41h-41v-41z m146 41c-12 0-21 10-21 21s9 21 21 21h125c11 0 20-9 20-21s-9-21-20-21h-125z m0-83c-12 0-21 9-21 21s9 21 21 21h125c11 0 20-9 20-21s-9-21-20-21h-125z m250 0c-12 0-21 9-21 21v83c0 12 9 21 21 21h83c12 0 21-9 21-21v-83c0-12-9-21-21-21h-83z m20 42h42v41h-42v-41z m146 41c-11 0-21 10-21 21s10 21 21 21h125c12 0 21-9 21-21s-9-21-21-21h-125z m0-83c-11 0-21 9-21 21s10 21 21 21h125c12 0 21-9 21-21s-9-21-21-21h-125z m-250 292v208h-83v-22c0-12-9-21-21-21s-21 9-21 21v43c0 12 9 21 21 21h250c12 0 21-9 21-21v-43c0-12-9-21-21-21s-21 9-21 21v22h-83v-208h42c11 0 20-9 20-21s-9-21-20-21h-125c-12 0-21 9-21 21s9 21 21 21h41z" horiz-adv-x="1000" />

<glyph glyph-name="featured-image" unicode="&#xe8c6;" d="M104 183c-11 0-21 10-21 21v542c0 12 10 21 21 21h792c12 0 21-9 21-21v-542c0-11-9-21-21-21h-792z m21 42h750v500h-750v-500z m-21-167c-11 0-21 10-21 21s10 21 21 21h334c11 0 20-9 20-21s-9-21-20-21h-334z m459 0c-12 0-21 10-21 21s9 21 21 21h333c12 0 21-9 21-21s-9-21-21-21h-333z m-459-125c-11 0-21 9-21 21s10 21 21 21h334c11 0 20-9 20-21s-9-21-20-21h-334z m459 0c-12 0-21 9-21 21s9 21 21 21h333c12 0 21-9 21-21s-9-21-21-21h-333z m-246 477l-197-220c-8-9-21-9-30-2-9 8-9 21-2 30l210 233c7 8 19 9 27 3l124-88 174 218c9 11 25 10 33-1l257-367c6-10 4-23-5-29-10-7-23-4-30 5l-240 343-168-211c-7-9-20-11-29-4l-124 90z m-11 186c0 25-19 46-43 46s-43-21-43-46 20-46 43-46 43 20 43 46z m42 0c0-48-38-88-85-88s-84 40-84 88 37 87 84 87 85-39 85-87z" horiz-adv-x="1000" />

<glyph glyph-name="post-info" unicode="&#xe8c7;" d="M380 843c4 5 10 7 16 7h417c34 0 62-28 62-62v-876c0-34-28-62-62-62h-625c-35 0-63 28-63 62v667c0 6 3 12 7 16l248 248z m-5-64l-179-179h158c12 0 21 9 21 21v158z m438 29h-396v-187c0-35-28-63-63-63h-187v-646c0-11 9-20 21-20h625c11 0 20 9 20 20v876c0 11-9 20-20 20z m-459-708c0 12-9 21-21 21s-20-9-20-21 9-21 20-21 21 9 21 21z m42 0c0-35-28-62-63-62s-62 27-62 62 28 63 62 63 63-28 63-63z m125 0c0 12-9 21-21 21s-21-9-21-21 9-21 21-21 21 9 21 21z m42 0c0-35-28-62-63-62s-62 27-62 62 27 63 62 63 63-28 63-63z m125 0c0 12-10 21-21 21s-21-9-21-21 9-21 21-21 21 9 21 21z m41 0c0-35-28-62-62-62s-63 27-63 62 28 63 63 63 62-28 62-63z" horiz-adv-x="1000" />

<glyph glyph-name="post-title" unicode="&#xe8c8;" d="M479 100c0 0 0 0 0 1v291h-125v-33c0-12-9-21-21-21s-20 9-20 21v54c0 11 9 20 20 20h334c11 0 21-9 21-20v-54c0-12-10-21-21-21s-21 9-21 21v33h-125v-291c0-1 0-1 0-1h42c11 0 20-9 20-21s-9-21-20-21h-125c-12 0-21 10-21 21s9 21 21 21h41z m-99 743c4 5 10 7 16 7h417c34 0 62-28 62-62v-876c0-34-28-62-62-62h-625c-35 0-63 28-63 62v667c0 6 3 12 7 16l248 248z m-5-64l-179-179h158c12 0 21 9 21 21v158z m438 29h-396v-187c0-35-28-63-63-63h-187v-646c0-11 9-20 21-20h625c11 0 20 9 20 20v876c0 11-9 20-20 20z" horiz-adv-x="1000" />

<glyph glyph-name="site-logo" unicode="&#xe8c9;" d="M958 600h-916v-642c0-37 28-66 62-66h792c34 0 62 29 62 66v642z m0 42v58c0 37-28 67-62 67h-792c-34 0-62-30-62-67v-58h916z m42-684c0-59-46-108-104-108h-792c-58 0-104 49-104 108v742c0 60 46 108 104 108h792c58 0 104-48 104-108v-742z m-875 746c0-11-9-21-21-21s-21 10-21 21 10 21 21 21 21-9 21-21m83 0c0-11-9-21-20-21s-21 10-21 21 9 21 21 21 20-9 20-21m84 0c0-11-9-21-21-21-12 0-21 10-21 21s9 21 21 21c12 0 21-9 21-21m-113-398h11c6 0 12-6 12-13v-103c0-7 6-12 13-12h30c7 0 13-6 13-13l0-10c0-7-5-12-13-12 0 0 0 0 0 0l-65 0c-7 0-13 5-13 12v138c0 7 5 13 12 13z m233-81c0 16-5 29-14 39-10 9-23 14-39 14s-28-5-38-14c-10-10-15-23-15-39 0-16 5-29 15-39 10-9 22-14 38-14s29 5 39 14c10 10 14 23 14 39z m-115-60c-17 16-26 36-26 60 0 24 9 44 26 60s38 23 63 23 46-8 63-23c17-16 25-36 25-60 0-24-8-44-25-60-17-15-38-23-63-23-25 0-46 8-63 23z m169 60c0 24 9 44 26 60 17 15 38 23 63 23 18 0 35-4 50-13 14-9 25-23 28-35 1-8-8-10-22-10-4 0-8 3-11 7-8 14-27 22-46 22-16 0-28-5-38-15-10-9-15-22-15-39 0-16 5-29 15-38 10-10 22-15 36-15s25 4 34 10c9 6 12 12 14 20h-45c-6 0-12 5-12 12 0 0 0 1 0 1l0 7c1 6 6 12 13 12l69-1c7 0 12-5 12-13v-10c-3-18-10-34-26-47-16-14-35-20-59-20s-44 7-61 23c-17 15-25 35-25 59z m332 0c0 16-5 29-15 39-10 9-23 14-38 14-16 0-29-5-39-14-10-10-14-23-14-39 0-16 5-29 14-39 10-9 23-14 39-14 15 0 28 5 38 14 10 10 15 23 15 39z m-116-60c-17 16-25 36-25 60 0 24 8 44 26 60s37 23 62 23c25 0 46-8 63-23 17-16 26-36 26-60 0-24-9-44-26-60-17-15-38-23-63-23-25 0-46 8-63 23z m172-107h-708c-12 0-21 10-21 21s9 21 21 21h708c12 0 21-9 21-21s-9-21-21-21z m0 292h-708c-12 0-21 9-21 21s9 21 21 21h708c12 0 21-9 21-21s-9-21-21-21z" horiz-adv-x="1000" />

<glyph glyph-name="site-search" unicode="&#xe8ca;" d="M958 600h-916v-642c0-37 28-66 62-66h792c34 0 62 29 62 66v642z m0 42v58c0 37-28 67-62 67h-792c-34 0-62-30-62-67v-58h916z m42-684c0-59-46-108-104-108h-792c-58 0-104 49-104 108v742c0 60 46 108 104 108h792c58 0 104-48 104-108v-742z m-875 746c0-11-9-21-21-21s-21 10-21 21 10 21 21 21 21-9 21-21z m83 0c0-11-9-21-20-21s-21 10-21 21 9 21 21 21 20-9 20-21z m84 0c0-11-9-21-21-21-12 0-21 10-21 21s9 21 21 21c12 0 21-9 21-21z m141-491c0-1-1-2-2-3l-146-145c-8-9-21-9-29 0s-8 21 0 29l146 146c1 1 1 1 2 2-19 24-29 55-29 88 0 80 65 145 145 145s146-65 146-145-65-146-146-146c-32-1-62 10-87 29z m192 116c0 58-47 104-104 104s-104-46-104-104 46-104 104-104 104 47 104 104z" horiz-adv-x="1000" />

<glyph glyph-name="site-title" unicode="&#xe8cb;" d="M958 600h-916v-642c0-37 28-66 62-66h792c34 0 62 29 62 66v642z m0 42v58c0 37-28 67-62 67h-792c-34 0-62-30-62-67v-58h916z m42-684c0-59-46-108-104-108h-792c-58 0-104 49-104 108v742c0 60 46 108 104 108h792c58 0 104-48 104-108v-742z m-875 746c0-11-9-21-21-21s-21 10-21 21 10 21 21 21 21-9 21-21m83 0c0-11-9-21-20-21s-21 10-21 21 9 21 21 21 20-9 20-21m84 0c0-11-9-21-21-21-12 0-21 10-21 21s9 21 21 21c12 0 21-9 21-21m375-366c-12 0-21 9-21 21v33h-292v-33c0-12-9-21-21-21s-20 9-20 21v54c0 11 9 20 20 20h334c11 0 21-9 21-20v-54c0-11-10-21-21-21z m-167-258c-12 0-21 9-21 21v307c0 12 9 21 21 21 12 0 21-9 21-21v-307c0-12-9-21-21-21z m63-22h-125c-12 0-21 10-21 21s9 21 21 21h125c11 0 20-9 20-21s-9-21-20-21z" horiz-adv-x="1000" />

<glyph glyph-name="plus-square" unicode="&#xe8cc;" d="M958 638v-575c0-46-16-88-50-121s-75-50-120-50h-575c-46 0-88 16-121 50s-50 75-50 121v575c0 45 16 87 50 120s75 50 121 50h575c45 0 87-16 120-50s50-75 50-120z m-508-242h-175c-25 0-46-21-46-46s21-46 46-46h175v-175c0-25 21-46 46-46 25 0 46 21 46 46v175h175c25 0 46 21 46 46s-21 46-46 46h-175v175c0 25-21 46-46 46-25 0-46-21-46-46v-175z" horiz-adv-x="1000" />

<glyph glyph-name="minus-square" unicode="&#xe8cd;" d="M958 638v-575c0-46-16-88-50-121s-75-50-120-50h-575c-46 0-88 16-121 50s-50 75-50 121v575c0 45 16 87 50 120s75 50 121 50h575c45 0 87-16 120-50s50-75 50-120z m-679-334h446c25 0 46 21 46 46s-21 46-46 46h-446c-25 0-46-21-46-46s17-46 46-46z" horiz-adv-x="1000" />

<glyph glyph-name="cloud-check" unicode="&#xe8ce;" d="M392 675c133 33 241-17 308-146 13-21 4-50-17-62-20-13-45-4-58 16-50 92-117 125-212 100-96-25-146-95-159-225l-4-33-29-8c-92-21-133-71-133-150-5-96 37-134 125-138l525 0c129-12 179 29 179 134 0 62-25 104-75 133-21 12-29 37-21 62 12 21 37 34 58 21 84-46 125-116 125-212 0-163-96-242-266-225l-521 0c-138 4-217 87-213 233 0 113 63 192 171 229 17 146 92 238 217 271z m496-54c12 12 29 12 41 0s13-33 0-46l-329-375c0 0 0 0 0 0-17-17-42-17-54 0l-158 175c-13 13-13 33 0 46 12 12 29 12 41 0l142-158 317 358z" horiz-adv-x="1000" />

<glyph glyph-name="drag-n-drop" unicode="&#xe8cf;" d="M46 779c0-13-10-24-23-24s-23 11-23 24v48c0 13 10 23 23 23h49c13 0 23-10 23-23s-10-24-23-24h-25v-24z m122 25c-13 0-23 10-23 23s10 23 23 23h92c13 0 24-10 24-23s-11-24-24-24h-92z m185 0c-13 0-23 10-23 23s10 23 23 23h93c13 0 23-10 23-23s-10-24-23-24h-93z m186 0c-13 0-24 10-24 23s11 23 24 23h92c13 0 24-10 24-23s-11-23-24-23h-92z m209 0c-13 0-24 10-24 23s11 23 24 23h48c13 0 23-10 23-23v-48c0-13-10-24-23-24-13 0-23 11-23 24v25h-25z m25-122c0 13 10 23 23 23 13 0 23-10 23-23v-92c0-13-10-24-23-24-13 0-23 11-23 24v92z m0-193c0 13 10 23 23 23 13 0 23-10 23-23v-49c0-12-10-23-23-23-13 0-23 11-23 23v49z m-315-363c12 0 23-11 23-23 0-13-11-24-23-24h-93c-13 0-23 11-23 24 0 12 10 23 23 23h93z m-186 0c13 0 23-11 23-23 0-13-10-24-23-24h-92c-13 0-24 11-24 24 0 12 11 23 24 23h92z m-201 0c13 0 24-11 24-23 0-13-11-24-24-24h-48c-13 0-23 11-23 24v48c0 13 10 23 23 23s24-10 24-23v-25h24z m-25 122c0-13-10-24-23-24s-23 11-23 24v92c0 13 10 23 23 23s24-10 24-23v-92z m0 185c0-13-10-23-23-23s-23 10-23 23v92c0 13 10 24 23 24s24-11 24-24v-92z m0 185c0-13-10-23-23-23s-23 10-23 23v93c0 13 10 23 23 23s24-10 24-23v-93z m503-654c-29-22-70-2-70 34v621c0 39 48 58 75 30l434-448c27-28 7-74-31-74h-98l70-145c11-21 2-46-19-57l-134-69c-21-11-48-3-59 19l-77 159-91-70z m17 123l64 49c22 17 54 9 66-16l81-166 56 29-82 169c-14 28 7 62 39 62h65l-288 298v-425z" horiz-adv-x="1000" />

<glyph glyph-name="welcome" unicode="&#xe8d0;" d="M180 511v-559h676v559l-335 216-341-216z m-75 63l390 248c16 10 37 10 53 0l383-247c14-9 22-23 22-39v-630c0-26-22-46-49-46h-772c-27 0-49 20-49 46v629c0 16 8 30 22 39z m421-201c38 52 82 71 134 54 77-24 67-121 38-163-28-39-85-95-172-169v0c-86 74-143 130-171 169-30 42-39 139 38 163 51 17 96-1 133-54l0 0z" horiz-adv-x="1000" />

<glyph glyph-name="handle" unicode="&#xe8d1;" d="M167 138c-46 0-84 37-84 83s38 83 84 83 83-37 83-83-37-83-83-83z m329 0c-46 0-83 37-83 83s37 83 83 83 83-37 83-83-37-83-83-83z m333 0c-46 0-83 37-83 83s37 83 83 83c46 0 84-37 84-83s-38-83-84-83z m-662 254c-46 0-84 37-84 83s38 83 84 83 83-37 83-83-37-83-83-83z m329 0c-46 0-83 37-83 83s37 83 83 83 83-37 83-83-37-83-83-83z m333 0c-46 0-83 37-83 83s37 83 83 83c46 0 84-37 84-83s-38-83-84-83z" horiz-adv-x="1000" />

<glyph glyph-name="cart" unicode="&#xe8d2;" d="M460 58c35 0 63-28 63-62s-28-63-63-63-64 28-64 63 29 62 64 62z m250 0c35 0 63-28 63-62s-28-63-63-63-64 28-64 63 29 62 64 62z m-476 541l139-450c2-5 7-9 12-9h380c6 0 11 4 13 9l138 433c0 1 0 2 0 3 0 8-6 13-13 13l-669 1 0 0z m-13 41h682c30 0 55-24 55-54 0-6-1-11-3-17l-138-433c-7-22-28-38-52-38h-380c-23 0-45 16-52 39l-147 476c-10 35-26 67-48 97-20 27-44 40-75 40-12 0-21 9-21 21s9 21 21 21c45 0 82-20 109-58 21-30 38-61 49-94z" horiz-adv-x="1000" />

<glyph glyph-name="product-add-to-cart" unicode="&#xe8d3;" d="M741 192c-7-9-20-11-29-4-9 6-12 19-5 29 6 8 12 17 17 26 54 90 61 200 22 297-3 7-6 15-10 22-3 6-7 13-11 20-23 39-54 73-92 101-148 108-357 75-465-74s-75-358 74-466c66-48 146-69 226-62 5 1 9 1 13 2 5 0 11 1 16 2 12 2 24 5 36 8 10 4 22-3 25-14 4-11-3-22-14-26-13-3-26-7-40-9-6-1-12-2-18-3-4-1-9-1-14-2-90-8-180 16-255 70-167 122-204 356-83 524s356 205 524 83c42-31 77-69 103-113 4-8 8-15 12-23 4-8 8-16 11-25 45-108 36-232-24-334-6-10-12-19-19-29z m-324 241v125c0 12 9 21 21 21s20-9 20-21v-125h125c12 0 21-9 21-20s-9-21-21-21h-125v-125c0-12-9-21-20-21s-21 9-21 21v125h-125c-12 0-21 9-21 21s9 20 21 20h125z m237-458h126l45 147h-215l44-147z m183 188c18 0 33-15 33-33 0-3 0-7-1-10l-51-164c-4-14-17-23-32-23h-138c-15 0-28 9-33 24l-53 179c0 0 0 1-1 1-3 11-8 22-16 32-4 7-9 10-16 10-12 0-21 9-21 21s9 20 21 20c21 0 39-9 51-27 6-10 12-20 16-30h241z m-174-301c-16 0-29 13-29 30s13 29 29 29 30-13 30-29-14-30-30-30z m105 0c-17 0-30 13-30 30s13 29 30 29 29-13 29-29-14-30-29-30z" horiz-adv-x="1000" />

<glyph glyph-name="product-breadcrumbs" unicode="&#xe8d4;" d="M490 100c12 0 21-9 21-21s-9-21-21-21h-390c-54 0-100 37-100 86v579c0 48 46 85 100 85h758c55 0 100-37 100-85v-580c0-33-23-63-57-77-7-3-15-5-22-6-3 0-6-1-9-1-5-1-9-1-11-1-12 0-21 8-22 20 0 12 8 21 20 22 2 0 6 0 9 0 3 0 4 0 6 0 5 1 9 3 14 5 19 8 31 23 31 38v580c0 23-25 44-59 44h-758c-33 0-58-21-58-44v-580c0-23 25-43 58-43h390z m122-125h126l46 147h-216l44-147z m183 188c19 0 34-15 34-33 0-3-1-7-2-10l-51-164c-4-14-17-23-31-23h-139c-15 0-28 9-32 24l-54 179c0 0 0 1 0 1-4 11-9 22-16 32-5 7-10 10-17 10-12 0-21 9-21 21s9 20 21 20c21 0 39-9 51-27 7-10 12-20 16-30h241z m-173-301c-17 0-29 13-29 30s12 29 29 29 29-13 29-29-13-30-29-30z m104 0c-16 0-29 13-29 30s13 29 29 29 29-13 29-29-13-30-29-30z m-580 738c-12 0-21 9-21 21s9 21 21 21h167c11 0 20-9 20-21s-9-21-20-21h-167z m500 0c-12 0-21 9-21 21s9 21 21 21h167c11 0 20-9 20-21s-9-21-20-21h-167z m-241 67c-9 6-11 20-5 29 7 9 20 11 30 4l82-60c11-8 11-25 1-33l-84-65c-9-7-22-5-29 4-7 9-5 22 4 29l61 48-60 44z" horiz-adv-x="1000" />

<glyph glyph-name="product-categories" unicode="&#xe8d5;" d="M479 671c0 7 9 12 21 12s21-5 21-12v-100c0-7-9-13-21-13s-21 6-21 13v100z m-208-92c0-11-9-21-21-21s-21 10-21 21v42c0 34 28 62 63 62h416c35 0 63-28 63-62v-42c0-11-9-21-21-21s-21 10-21 21v42c0 12-9 21-21 21h-416c-12 0-21-9-21-21v-42z m-83-21v-41h125v41h-125z m-30 42h184c7 0 12-5 12-12v-100c0-8-5-13-12-13h-184c-7 0-12 5-12 13v100c0 7 5 12 12 12z m280-42v-41h125v41h-125z m-30 42h184c7 0 12-5 12-12v-100c0-8-5-13-12-13h-184c-7 0-12 5-12 13v100c0 7 5 12 12 12z m280-42v-41h125v41h-125z m-30 42h184c7 0 12-5 12-12v-100c0-8-5-13-12-13h-184c-7 0-12 5-12 13v100c0 7 5 12 12 12z m-168-500c12 0 21-9 21-21s-9-21-21-21h-390c-54 0-100 37-100 86v579c0 48 46 85 100 85h758c55 0 100-37 100-85v-580c0-33-23-63-57-77-7-3-15-5-22-6-3 0-6-1-9-1-5-1-9-1-11-1-12 0-21 8-22 20 0 12 8 21 20 22 2 0 6 0 9 0 3 0 4 0 6 0 5 1 9 3 14 5 19 8 31 23 31 38v580c0 23-25 44-59 44h-758c-33 0-58-21-58-44v-580c0-23 25-43 58-43h390z m122-125h126l46 147h-216l44-147z m183 188c19 0 34-15 34-33 0-3-1-7-2-10l-51-164c-4-14-17-23-31-23h-139c-15 0-28 9-32 24l-54 179c0 0 0 1 0 1-4 11-9 22-16 32-5 7-10 10-17 10-12 0-21 9-21 21s9 20 21 20c21 0 39-9 51-27 7-10 12-20 16-30h241z m-173-301c-17 0-29 13-29 30s12 29 29 29 29-13 29-29-13-30-29-30z m104 0c-16 0-29 13-29 30s13 29 29 29 29-13 29-29-13-30-29-30z" horiz-adv-x="1000" />

<glyph glyph-name="product-description" unicode="&#xe8d6;" d="M188 642c-12 0-21 9-21 21s9 20 21 20h626c11 0 21-9 21-20s-10-21-21-21h-626z m0-167c-12 0-21 9-21 21s9 21 21 21h626c11 0 21-9 21-21s-10-21-21-21h-626z m0 83c-12 0-21 10-21 21 0 12 9 21 21 21h527c12 0 21-9 21-21 0-11-9-21-21-21h-527z m0-166c-12 0-21 9-21 21s9 20 21 20h405c12 0 21-9 21-20s-9-21-21-21h-405z m302-292c12 0 21-9 21-21s-9-21-21-21h-390c-54 0-100 37-100 86v579c0 48 46 85 100 85h758c55 0 100-37 100-85v-580c0-33-23-63-57-77-7-3-15-5-22-6-3 0-6-1-9-1-5-1-9-1-11-1-12 0-21 8-22 20 0 12 8 21 20 22 2 0 6 0 9 0 3 0 4 0 6 0 5 1 9 3 14 5 19 8 31 23 31 38v580c0 23-25 44-59 44h-758c-33 0-58-21-58-44v-580c0-23 25-43 58-43h390z m122-125h126l46 147h-216l44-147z m183 188c19 0 34-15 34-33 0-3-1-7-2-10l-51-164c-4-14-17-23-31-23h-139c-15 0-28 9-32 24l-54 179c0 0 0 1 0 1-4 11-9 22-16 32-5 7-10 10-17 10-12 0-21 9-21 21s9 20 21 20c21 0 39-9 51-27 7-10 12-20 16-30h241z m-173-301c-17 0-29 13-29 30s12 29 29 29 29-13 29-29-13-30-29-30z m104 0c-16 0-29 13-29 30s13 29 29 29 29-13 29-29-13-30-29-30z" horiz-adv-x="1000" />

<glyph glyph-name="product-images" unicode="&#xe8d7;" d="M416 437h127l45 147h-216l44-147z m184 189c18 0 33-15 33-33 0-4 0-7-2-10l-51-164c-4-14-17-24-31-24h-139c-15 0-27 10-32 24l-54 179c0 1 0 1 0 1-4 11-9 22-16 33-5 6-10 9-17 9-11 0-21 9-21 21s10 21 21 21c21 0 39-10 51-28 7-9 12-19 16-30h242z m-174-301c-16 0-29 13-29 29 0 16 13 29 29 29s29-13 29-29c0-16-13-29-29-29z m104 0c-16 0-29 13-29 29 0 16 13 29 29 29 16 0 29-13 29-29 0-16-13-29-29-29z m-488 483v-625h875v625h-875z m-21 42h917c11 0 20-9 20-21v-666c0-12-9-21-20-21h-917c-12 0-21 9-21 21v666c0 12 9 21 21 21z m21-792v-83h125v83h-125z m-21 42h167c11 0 20-9 20-21v-125c0-12-9-21-20-21h-167c-12 0-21 9-21 21v125c0 12 9 21 21 21z m271-42v-83h125v83h-125z m-21 42h167c11 0 20-9 20-21v-125c0-12-9-21-20-21h-167c-12 0-21 9-21 21v125c0 12 9 21 21 21z m271-42v-83h125v83h-125z m-21 42h167c11 0 20-9 20-21v-125c0-12-9-21-20-21h-167c-12 0-21 9-21 21v125c0 12 9 21 21 21z m271-42v-83h125v83h-125z m-21 42h167c11 0 20-9 20-21v-125c0-12-9-21-20-21h-167c-12 0-21 9-21 21v125c0 12 9 21 21 21z" horiz-adv-x="1000" />

<glyph glyph-name="product-info" unicode="&#xe8d8;" d="M490 100c12 0 21-9 21-21s-9-21-21-21h-390c-54 0-100 37-100 86v579c0 48 46 85 100 85h758c55 0 100-37 100-85v-580c0-33-23-63-57-77-7-3-15-5-22-6-3 0-6-1-9-1-5-1-9-1-11-1-12 0-21 8-22 20 0 12 8 21 20 22 2 0 6 0 9 0 3 0 4 0 6 0 5 1 9 3 14 5 19 8 31 23 31 38v580c0 23-25 44-59 44h-758c-33 0-58-21-58-44v-580c0-23 25-43 58-43h390v0z m122-125h126l46 147h-216l44-147z m183 188c19 0 34-15 34-33 0-3-1-7-2-10l-51-164c-4-14-17-23-31-23h-139c-15 0-28 9-32 24l-54 179c0 0 0 1 0 1-4 11-9 22-16 32-5 7-10 10-17 10-12 0-21 9-21 21s9 20 21 20c21 0 39-9 51-27 7-10 12-20 16-30h241v0z m-173-301c-17 0-29 13-29 30s12 29 29 29 29-13 29-29-13-30-29-30z m104 0c-16 0-29 13-29 30s13 29 29 29 29-13 29-29-13-30-29-30z m-188 552l-4-12c-11-3-21-6-28-8-7-1-16-3-25-3-14 0-25 3-33 8-8 5-12 12-12 20 0 3 0 6 1 9s1 7 3 11l15 39c1 4 2 7 3 10 1 4 1 7 1 10 0 5-1 8-4 10s-8 3-16 3c-4 0-8-1-11-1-5-1-8-2-11-3l4 12c10 3 19 6 28 8s17 3 25 3c14 0 26-3 33-8 8-5 12-12 12-19 0-2-1-5-1-9s-2-8-3-12l-15-38c-1-3-2-7-3-11-1-3-1-7-1-9 0-5 2-9 4-10 4-2 9-3 17-3 3 0 7 0 12 1 4 1 7 1 9 2z m4 162c0-7-4-13-11-17s-15-7-25-7c-9 0-18 2-25 7s-10 10-10 17 3 12 10 17 16 7 25 7 18-2 25-7c7-5 11-10 11-17z m-63-288c-115 0-208 93-208 208s93 208 208 208 209-93 209-208-94-208-209-208z m0 41c92 0 167 75 167 167s-75 167-167 167-166-75-166-167 74-167 166-167z" horiz-adv-x="1000" />

<glyph glyph-name="product-meta" unicode="&#xe8d9;" d="M229 350c0 12-9 21-21 21s-20-9-20-21 9-21 20-21 21 9 21 21z m42 0c0-35-28-62-63-62s-62 27-62 62 28 63 62 63 63-28 63-63z m125 0c0 12-9 21-21 21s-21-9-21-21 9-21 21-21 21 9 21 21z m42 0c0-35-28-62-63-62s-62 27-62 62 27 63 62 63 63-28 63-63z m125 0c0 12-10 21-21 21s-21-9-21-21 9-21 21-21 21 9 21 21z m41 0c0-35-28-62-62-62s-63 27-63 62 28 63 63 63 62-28 62-63z m-114-250c12 0 21-9 21-21s-9-21-21-21h-390c-54 0-100 37-100 86v579c0 48 46 85 100 85h758c55 0 100-37 100-85v-580c0-33-23-63-57-77-7-3-15-5-22-6-3 0-6-1-9-1-5-1-9-1-11-1-12 0-21 8-22 20 0 12 8 21 20 22 2 0 6 0 9 0 3 0 4 0 6 0 5 1 9 3 14 5 19 8 31 23 31 38v580c0 23-25 44-59 44h-758c-33 0-58-21-58-44v-580c0-23 25-43 58-43h390z m122-125h126l46 147h-216l44-147z m183 188c19 0 34-15 34-33 0-3-1-7-2-10l-51-164c-4-14-17-23-31-23h-139c-15 0-28 9-32 24l-54 179c0 0 0 1 0 1-4 11-9 22-16 32-5 7-10 10-17 10-12 0-21 9-21 21s9 20 21 20c21 0 39-9 51-27 7-10 12-20 16-30h241z m-173-301c-17 0-29 13-29 30s12 29 29 29 29-13 29-29-13-30-29-30z m104 0c-16 0-29 13-29 30s13 29 29 29 29-13 29-29-13-30-29-30z" horiz-adv-x="1000" />

<glyph glyph-name="product-pages" unicode="&#xe8da;" d="M270 37h-21c-12 0-21 9-21 21v45h-45c-12 0-21 9-21 20v429c0 6 2 11 6 15l198 198c4 3 9 6 14 6h264c11 0 21-9 21-21v-45h45c11 0 20-9 20-21v-21h48c12 0 21-9 21-20v-433c0-12-9-21-21-21-11 0-20 9-20 21v412h-28v-412c0-12-9-21-20-21-12 0-21 9-21 21v453h-24v-439c0-12-10-21-21-21-12 0-21 9-21 21v505h-234l-185-185v-399h350c11 0 21-10 21-21s-10-21-21-21h-284v-24h308c12 0 21-9 21-21 0-12-9-21-21-21h-267v-27h293c12 0 21-10 21-21 0-12-9-21-21-21h-314c-11 0-20 9-20 21v48z m425-62h127l45 147h-216l44-147z m184 188c18 0 33-15 33-33 0-3 0-7-2-10l-50-164c-5-14-17-23-32-23h-139c-14 0-27 9-32 24l-54 179c0 0 0 1 0 1-3 11-9 22-16 32-4 7-9 10-17 10-11 0-20 9-20 21s9 20 20 20c21 0 39-9 51-27 7-10 12-20 17-30h241z m-174-301c-16 0-29 13-29 30s13 29 29 29 29-13 29-29-13-30-29-30z m104 0c-16 0-29 13-29 30s13 29 29 29 29-13 29-29-13-30-29-30z m-449 711v127l29 30h12v-177c0-12-9-21-21-21h-176v12l29 29h127z" horiz-adv-x="1000" />

<glyph glyph-name="product-price" unicode="&#xe8db;" d="M755 320c-57 0-102 34-106 78-1 12 8 22 19 22 12 1 22-7 23-19 2-21 31-39 64-39 35 0 64 19 64 41 0 21-20 34-64 42l-4 0c-69 13-102 40-102 83 0 46 48 84 106 84 57 0 103-34 106-78 1-11-7-21-19-22-11-2-22 7-23 19-1 22-30 39-64 39-34 0-63-19-63-41 0-21 20-34 63-41l5-1c68-13 101-40 101-83 0-46-47-84-106-84z m0-41c-12 0-21 9-21 21v333c0 12 9 21 21 21s21-9 21-21v-333c0-12-9-21-21-21z m-265-179c12 0 21-9 21-21s-9-21-21-21h-390c-54 0-100 37-100 86v579c0 48 46 85 100 85h758c55 0 100-37 100-85v-580c0-33-23-63-57-77-7-3-15-5-22-6-3 0-6-1-9-1-5-1-9-1-11-1-12 0-21 8-22 20 0 12 8 21 20 22 2 0 6 0 9 0 3 0 4 0 6 0 5 1 9 3 14 5 19 8 31 23 31 38v580c0 23-25 44-59 44h-758c-33 0-58-21-58-44v-580c0-23 25-43 58-43h390z m122-125h126l46 147h-216l44-147z m183 188c19 0 34-15 34-33 0-3-1-7-2-10l-51-164c-4-14-17-23-31-23h-139c-15 0-28 9-32 24l-54 179c0 0 0 1 0 1-4 11-9 22-16 32-5 7-10 10-17 10-12 0-21 9-21 21s9 20 21 20c21 0 39-9 51-27 7-10 12-20 16-30h241z m-173-301c-17 0-29 13-29 30s12 29 29 29 29-13 29-29-13-30-29-30z m104 0c-16 0-29 13-29 30s13 29 29 29 29-13 29-29-13-30-29-30z m-198 509c15 0 29 14 29 33v107c0 18-13 33-29 33s-28-15-28-33v-107c0-19 13-33 28-33z m0-42c-39 0-70 34-70 75v107c0 41 31 74 70 74s70-33 70-74v-107c0-41-30-75-70-75z m-182 107c-6 0-12-6-12-15v-36c0-8 6-15 12-15h33c6 0 12 7 12 15v36c0 9-6 15-12 15h-33z m-54-15v54c0 60 46 110 103 110 11 0 20-9 20-21 0-11-9-21-20-21-33 0-61-29-61-66 4 1 8 1 12 1h33c30 0 54-26 54-57v-36c0-30-24-56-54-56h-33c-30 0-54 26-54 56v36z m-101 59c15 0 28 15 28 33s-13 33-28 33c-16 0-28-9-28-15 0-12-10-21-21-21s-21 9-21 21c0 32 33 57 70 57 39 0 70-34 70-75 0-21-8-40-21-54 13-14 21-32 21-54 0-40-31-74-70-74-37 0-70 24-70 57 0 11 9 20 21 20s21-9 21-20c0-6 12-15 28-15 15 0 28 14 28 32 0 19-13 33-28 33h-16c-12 0-21 10-21 21s9 21 21 21h16z" horiz-adv-x="1000" />

<glyph glyph-name="product-rating" unicode="&#xe8dc;" d="M490 100c12 0 21-9 21-21s-9-21-21-21h-390c-54 0-100 37-100 86v579c0 48 46 85 100 85h758c55 0 100-37 100-85v-580c0-33-23-63-57-77-7-3-15-5-22-6-3 0-6-1-9-1-5-1-9-1-11-1-12 0-21 8-22 20 0 12 8 21 20 22 2 0 6 0 9 0 3 0 4 0 6 0 5 1 9 3 14 5 19 8 31 23 31 38v580c0 23-25 44-59 44h-758c-33 0-58-21-58-44v-580c0-23 25-43 58-43h390z m122-125h126l46 147h-216l44-147z m183 188c19 0 34-15 34-33 0-3-1-7-2-10l-51-164c-4-14-17-23-31-23h-139c-15 0-28 9-32 24l-54 179c0 0 0 1 0 1-4 11-9 22-16 32-5 7-10 10-17 10-12 0-21 9-21 21s9 20 21 20c21 0 39-9 51-27 7-10 12-20 16-30h241z m-173-301c-17 0-29 13-29 30s12 29 29 29 29-13 29-29-13-30-29-30z m104 0c-16 0-29 13-29 30s13 29 29 29 29-13 29-29-13-30-29-30z m-258 709c-6-8-6-8-15-10h-17l12-11c5-7 5-7 5-15l-5-27 23 13c8 4 8 4 17 0l22-13-5 27c0 9 0 9 5 15l12 11h-16c-10 2-10 2-15 10l-12 29-11-29z m-4 77c8 10 8 10 21 9 6-4 6-4 9-9l23-55h46c12-3 12-3 16-16-1-7-1-7-5-12l-36-33 10-54c-1-13-1-13-13-19-5 0-5 0-11 2l-45 27-44-27c-13-3-13-3-22 6-3 5-3 5-3 11l10 54-35 33c-7 12-7 12-1 23 5 5 5 5 12 5h46l22 55z m254-77c-6-8-6-8-15-10h-17l12-11c5-7 5-7 5-15l-5-27 23 13c8 4 8 4 17 0l22-13-5 27c0 9 0 9 5 15l12 11h-16c-10 2-10 2-15 10l-12 29-11-29z m-4 77c8 10 8 10 21 9 6-4 6-4 9-9l23-55h46c12-3 12-3 16-16-1-7-1-7-5-12l-36-33 10-54c-1-13-1-13-13-19-5 0-5 0-11 2l-45 27-44-27c-13-3-13-3-22 6-3 5-3 5-3 11l10 54-35 33c-7 12-7 12-1 23 5 5 5 5 12 5h46l22 55z m-496-77c-6-8-6-8-15-10h-17l12-11c5-7 5-7 5-15l-5-27 23 13c8 4 8 4 17 0l22-13-5 27c0 9 0 9 5 15l12 11h-16c-10 2-10 2-15 10l-12 28-11-28z m-4 77c8 10 8 10 21 9 6-4 6-4 9-9l23-55h46c12-3 12-3 16-16-1-7-1-7-5-12l-36-33 10-54c-1-13-1-13-13-19-5 0-5 0-11 2l-45 27-44-27c-13-3-13-3-22 6-3 5-3 5-3 11l10 54-35 33c-7 12-7 12-1 23 5 5 5 5 12 5h46l22 55z" horiz-adv-x="1000" />

<glyph glyph-name="product-related" unicode="&#xe8dd;" d="M42 350h625v63c0 34-28 62-63 62h-500c-34 0-62-28-62-62v-63z m625-42h-625v-354c0-34 28-62 62-62h500c35 0 63 28 63 62v354z m41-354c0-57-46-104-104-104h-500c-57 0-104 47-104 104v459c0 57 47 104 104 104h500c58 0 104-47 104-104v-459z m-583 459c0-12-9-21-21-21s-21 9-21 21 10 20 21 20 21-9 21-20m83 0c0-12-9-21-20-21s-21 9-21 21 9 20 21 20 20-9 20-20m84 0c0-12-9-21-21-21-12 0-21 9-21 21s9 20 21 20c12 0 21-9 21-20m6 235c-4 4-6 9-6 15v83c0 57 46 104 104 104h500c57 0 104-47 104-104v-458c0-58-47-105-104-105h-83c-12 0-21 10-21 21s9 21 21 21h83c34 0 62 28 62 63v354h-645c-6 0-11 2-15 6z m660 35v63c0 34-28 62-62 62h-500c-35 0-63-28-63-62v-63h625z m-541 63c0-12-9-21-21-21s-21 9-21 21 9 21 21 21 21-9 21-21m83 0c0-12-9-21-21-21s-21 9-21 21 10 21 21 21 21-9 21-21m83 0c0-12-9-21-20-21s-21 9-21 21 9 21 21 21 20-9 20-21m-452-265c-3 4-6 9-6 15v83c0 58 47 104 104 104h500c58 0 104-46 104-104v-458c0-58-46-104-104-104h-41c-12 0-21 9-21 21s9 20 21 20h41c35 0 63 28 63 63v354h-646c-6 0-11 3-15 6z m661 36v62c0 35-28 63-63 63h-500c-34 0-62-28-62-63v-62h625z m-542 62c0-11-9-21-21-21s-21 10-21 21c0 12 10 21 21 21s21-9 21-21m83 0c0-11-9-21-20-21s-21 10-21 21c0 12 9 21 21 21s20-9 20-21m84 0c0-11-9-21-21-21s-21 10-21 21c0 12 9 21 21 21s21-9 21-21m-105-538h126l46 147h-216l44-147z m183 189c19 0 34-15 34-33 0-4-1-7-2-10l-51-164c-4-14-17-23-31-23h-139c-15 0-28 9-32 23l-54 180c0 0 0 0 0 0-4 12-9 22-16 33-5 7-10 9-17 9-12 0-21 10-21 21s9 21 21 21c21 0 39-9 51-27 7-10 12-20 16-30h241z m-173-301c-17 0-29 13-29 29s12 29 29 29 29-12 29-29-13-29-29-29z m104 0c-16 0-29 13-29 29s13 29 29 29 29-12 29-29-13-29-29-29z" horiz-adv-x="1000" />

<glyph glyph-name="product-stock" unicode="&#xe8de;" d="M389 435l71 245c7 24 41 19 41-5v-672c0-13-12-23-25-20l-343 75c-9 2-16 10-16 20v335c0 12 9 21 21 21h251z m35-27c-2-9-11-15-20-15h-245v-298l301-65v499l-36-121z m28 243l-299-33-62-183h297l64 216z m-48-258h-342c-14 0-24 14-19 27l76 224c2 8 9 14 17 14l343 37c14 2 26-12 22-26l-76-261c-3-9-12-15-21-15z m429 42c12 0 21-10 21-21v-200c0-12-9-21-21-21s-21 9-21 21v179h-256c-9 0-17 6-20 15l-35 121v-499l130 28c11 2 22-5 24-16 3-11-4-22-15-24l-156-34c-13-3-25 7-25 20v671c0 24 34 29 41 5l71-245h262z m-277-42c-9 0-17 6-20 15l-76 261c-4 14 8 28 22 26l343-37c8 0 15-6 18-14l76-224c4-13-6-27-20-27h-343z m16 42h298l-63 183-298 33 63-216z m169-460h127l45 147h-216l44-147z m184 188c18 0 33-15 33-33 0-3 0-7-2-10l-51-164c-4-14-17-23-31-23h-139c-15 0-27 9-32 24l-54 179c0 0 0 1 0 1-4 11-9 22-16 32-5 7-10 10-17 10-11 0-21 9-21 21s10 20 21 20c21 0 39-9 51-27 7-10 12-20 16-30h242z m-174-301c-16 0-29 13-29 30s13 29 29 29 29-13 29-29-13-30-29-30z m104 0c-16 0-29 13-29 30s13 29 29 29 29-13 29-29-13-30-29-30z" horiz-adv-x="1000" />

<glyph glyph-name="product-tabs" unicode="&#xe8df;" d="M737-25h126l46 147h-216l44-147z m183 188c19 0 34-15 34-33 0-3-1-7-2-10l-51-164c-4-14-17-23-31-23h-139c-15 0-28 9-32 24l-54 179c0 0 0 1 0 1-4 11-9 22-16 32-5 7-10 10-17 10-12 0-21 9-21 21s9 20 21 20c21 0 39-9 51-27 7-10 12-20 16-30h241z m-173-301c-17 0-29 13-29 30s12 29 29 29 29-13 29-29-13-30-29-30z m104 0c-16 0-29 13-29 30s13 29 29 29 29-13 29-29-13-30-29-30z m-516 738h478c35 0 62-28 62-62v-328c0-11-9-20-20-20s-21 9-21 20v328c0 11-9 20-21 20h-486c-12 0-22 7-27 19l-37 93c-4 8-11 13-20 13h-140c-8 0-16-5-19-14l-40-109c-1-5-2-9-2-14v-468c0-11 9-20 21-20h555c12 0 21-10 21-21s-9-21-21-21h-555c-35 0-63 28-63 62v468c0 9 2 19 5 28l40 110c8 25 32 41 58 41h140c26 0 49-15 58-39l34-86z m219-3l-26 73c-3 8-11 13-20 13h-145c-9 0-18-6-20-15l-12-43c-3-11-14-17-26-14-11 3-17 14-14 26l12 42c7 27 32 46 60 46h145c26 0 49-16 58-41l31-84c5-15-2-32-18-37-5-2-10-3-15-2-11 2-19 13-17 25 1 4 3 8 7 11z m39 29c-3-11-15-18-26-15-11 3-17 15-14 26l11 43c8 27 32 45 60 45h145c26 0 50-16 59-42l44-126c4-11-2-23-13-27s-23 2-26 13l-45 127c-3 8-10 14-19 14h-144c-9 0-17-6-20-16l-12-42z" horiz-adv-x="1000" />

<glyph glyph-name="product-title" unicode="&#xe8e0;" d="M458 308c0 1 0 1 0 1v291h-125v-33c0-12-9-21-20-21s-21 9-21 21v54c0 12 9 21 21 21h333c12 0 21-9 21-21v-54c0-12-9-21-21-21s-21 9-21 21v33h-125v-291c0 0 0 0 0-1h42c11 0 21-9 21-20s-10-21-21-21h-125c-12 0-21 9-21 21s9 20 21 20h41z m32-208c12 0 21-9 21-21s-9-21-21-21h-390c-54 0-100 37-100 86v579c0 48 46 85 100 85h758c55 0 100-37 100-85v-580c0-33-23-63-57-77-7-3-15-5-22-6-3 0-6-1-9-1-5-1-9-1-11-1-12 0-21 8-22 20 0 12 8 21 20 22 2 0 6 0 9 0 3 0 4 0 6 0 5 1 9 3 14 5 19 8 31 23 31 38v580c0 23-25 44-59 44h-758c-33 0-58-21-58-44v-580c0-23 25-43 58-43h390z m122-125h126l46 147h-216l44-147z m183 188c19 0 34-15 34-33 0-3-1-7-2-10l-51-164c-4-14-17-23-31-23h-139c-15 0-28 9-32 24l-54 179c0 0 0 1 0 1-4 11-9 22-16 32-5 7-10 10-17 10-12 0-21 9-21 21s9 20 21 20c21 0 39-9 51-27 7-10 12-20 16-30h241z m-173-301c-17 0-29 13-29 30s12 29 29 29 29-13 29-29-13-30-29-30z m104 0c-16 0-29 13-29 30s13 29 29 29 29-13 29-29-13-30-29-30z" horiz-adv-x="1000" />

<glyph glyph-name="product-upsell" unicode="&#xe8e1;" d="M741-25h127l45 147h-216l44-147z m184 188c18 0 33-15 33-33 0-3 0-7-2-10l-51-164c-4-14-17-23-31-23h-139c-15 0-27 9-32 24l-54 179c0 0 0 1 0 1-4 11-9 22-16 32-5 7-10 10-17 10-11 0-21 9-21 21s10 20 21 20c21 0 39-9 51-27 7-10 12-20 16-30h242z m-174-301c-16 0-29 13-29 30s13 29 29 29 29-13 29-29-13-30-29-30z m104 0c-16 0-29 13-29 30s13 29 29 29 29-13 29-29-13-30-29-30z m-378 418c-9-6-22-4-29 6-7 9-4 22 5 29 67 46 108 123 108 207 0 137-109 249-243 249-134 0-243-112-243-249 0-101 58-190 147-229 10-5 15-17 10-28-4-10-17-15-27-10-104 46-172 150-172 267 0 160 127 291 285 291 157 0 285-131 285-291 0-98-48-188-126-242z m238 172c8 8 22 8 30 0 8-8 8-21 0-29l-247-253c-8-9-22-9-30 0l-117 119-183-187c-8-8-21-8-29 0-9 8-9 21-1 29l198 203c9 8 22 8 30 0l117-120 232 238z m98 91c11 0 20-10 20-21v-169c0-19-22-28-35-15l-165 169c-13 13-4 36 15 36h165z m-116-42l95-97v97h-95z m-466-35c-1 12 8 22 19 23 12 1 22-8 23-19 1-15 20-29 45-29 26 0 45 15 45 30 0 10-7 17-21 23-5 2-10 3-16 5-3 1-13 2-12 2 1 0-9 2-14 3-7 1-15 4-22 6-28 12-47 32-47 62 0 41 40 72 87 72 45 0 83-28 87-67 0-12-8-22-20-22s-21 7-22 19c-1 14-20 28-45 28-26 0-45-14-45-30 0-10 7-17 21-23 5-2 10-3 16-5 3-1 13-2 12-2-1 0 9-2 13-3 8-1 15-4 23-6 28-12 47-32 47-62 0-41-40-71-87-71-45 0-84 28-87 66z m66 191c0 11 9 21 21 21 12 0 21-10 21-21v-270c0-12-9-21-21-21-12 0-21 9-21 21v270z" horiz-adv-x="1000" />

<glyph glyph-name="products" unicode="&#xe8e2;" d="M542 808v-375h375v375h-375z m-21 42h417c11 0 20-9 20-21v-416c0-12-9-21-20-21h-417c-12 0-21 9-21 21v416c0 12 9 21 21 21z m-479-42v-375h375v375h-375z m-21 42h417c11 0 20-9 20-21v-416c0-12-9-21-20-21h-417c-12 0-21 9-21 21v416c0 12 9 21 21 21z m521-542v-375h375v375h-375z m-21 42h417c11 0 20-9 20-21v-417c0-11-9-20-20-20h-417c-12 0-21 9-21 20v417c0 12 9 21 21 21z m-479-42v-375h375v375h-375z m-21 42h417c11 0 20-9 20-21v-417c0-11-9-20-20-20h-417c-12 0-21 9-21 20v417c0 12 9 21 21 21z m185 219h89l33 111h-154l32-111z m134 149c16 0 29-13 29-29 0-3-1-5-1-8l-38-128c-4-13-15-21-28-21h-102c-13 0-25 8-28 21l-41 140c0 1 0 1 0 1-3 9-6 17-12 25-3 5-6 6-9 6-11 0-19 9-19 19s8 19 19 19c17 0 31-8 40-23 5-7 9-15 12-22h178z m-130-246c-12 0-21 11-21 23s10 23 21 23 22-10 22-23-9-23-22-23z m78 0c-12 0-21 11-21 23s10 23 21 23 22-10 22-23-10-23-22-23z m418 97h89l33 111h-154l32-111z m134 149c16 0 29-13 29-29 0-3-1-5-1-8l-38-128c-4-13-15-21-28-21h-102c-13 0-25 8-28 21l-41 140c0 1 0 1 0 1-3 9-6 17-12 25-3 5-6 6-9 6-11 0-19 9-19 19s8 19 19 19c17 0 31-8 40-23 5-7 9-15 12-22h178z m-130-246c-12 0-21 11-21 23s10 23 21 23 22-10 22-23-9-23-22-23z m78 0c-12 0-21 11-21 23s10 23 21 23 22-10 22-23-10-23-22-23z m-582-403h89l33 111h-154l32-111z m134 149c16 0 29-13 29-29 0-3-1-5-1-8l-38-128c-4-13-15-21-28-21h-102c-13 0-25 8-28 21l-41 140c0 1 0 1 0 1-3 9-6 17-12 25-3 5-6 6-9 6-11 0-19 9-19 19 0 11 8 19 19 19 17 0 31-8 40-23 5-7 9-15 12-22h178z m-130-246c-12 0-21 10-21 23 0 13 10 23 21 23s22-10 22-23c0-13-9-23-22-23z m78 0c-12 0-21 10-21 23 0 13 10 23 21 23s22-10 22-23c0-13-10-23-22-23z m418 97h89l33 111h-154l32-111z m134 149c16 0 29-13 29-29 0-3-1-5-1-8l-38-128c-4-13-15-21-28-21h-102c-13 0-25 8-28 21l-41 140c0 1 0 1 0 1-3 9-6 17-12 25-3 5-6 6-9 6-11 0-19 9-19 19 0 11 8 19 19 19 17 0 31-8 40-23 5-7 9-15 12-22h178z m-130-246c-12 0-21 10-21 23 0 13 10 23 21 23s22-10 22-23c0-13-9-23-22-23z m78 0c-12 0-21 10-21 23 0 13 10 23 21 23s22-10 22-23c0-13-10-23-22-23z" horiz-adv-x="1000" />

<glyph glyph-name="bag-light" unicode="&#xe8e3;" d="M333 558l0 84c6 108 64 165 168 165 104 0 161-57 166-166v-83h83c46 0 83-37 83-83v-500c0-46-37-83-83-83h-500c-46 0-83 37-83 83v500c0 46 37 83 83 83h83z m42 0h250l0 82c-3 85-43 125-124 125-81 0-121-40-126-124l0-83z m-42-41h-83c-23 0-42-19-42-42v-500c0-23 19-42 42-42h500c23 0 42 19 42 42v500c0 23-19 42-42 42h-83v-121c0-12-9-21-21-21s-21 9-21 21l0 121h-250l0-121c0-12-9-21-21-21-11 0-21 9-21 21l0 121z" horiz-adv-x="1000" />

<glyph glyph-name="bag-medium" unicode="&#xe8e4;" d="M323 558l0 85c6 112 68 174 178 174 109 0 172-62 176-176v-83h73c46 0 83-37 83-83v-500c0-46-37-83-83-83h-500c-46 0-83 37-83 83v500c0 46 37 83 83 83h73z m62 0h230l0 82c-4 80-38 115-114 115-76 0-111-35-116-114l0-83z m-62-62h-73c-12 0-21-9-21-21v-500c0-12 9-21 21-21h500c12 0 21 9 21 21v500c0 12-9 21-21 21h-73v-100c0-17-14-31-31-31s-31 14-31 31l0 100h-230l0-100c0-17-14-31-31-31-17 0-31 14-31 31l0 100z" horiz-adv-x="1000" />

<glyph glyph-name="bag-solid" unicode="&#xe8e5;" d="M333 558l0 84c6 108 64 165 168 165 104 0 161-57 166-166v-83h83c46 0 83-37 83-83v-500c0-46-37-83-83-83h-500c-46 0-83 37-83 83v500c0 46 37 83 83 83h83z m42 0h250l0 82c-3 85-43 125-124 125-81 0-121-40-126-124l0-83z" horiz-adv-x="1000" />

<glyph glyph-name="basket-light" unicode="&#xe8e6;" d="M125 475c0 0 0 0 0 0h131l68 203c8 27 34 47 63 47h268c30 0 56-20 63-48l68-202h130c1 0 1 0 1 0h62c12 0 21-9 21-21s-9-21-21-21h-44l-62-381c-13-46-53-77-100-77h-503c-47 0-88 31-101 79l-62 379h-44c-12 0-21 10-21 21s9 21 21 21h62z m25-42l60-370c7-27 32-46 60-46h503c28 0 52 18 60 43l60 373h-743z m592 42l-63 190c-3 11-13 18-24 18h-268c-11 0-20-7-23-17l-64-191h442z m-242-146c0 12 9 21 21 21s21-9 21-21v-208c0-12-9-21-21-21s-21 9-21 21v208z m187-211c-2-11-12-19-24-18-11 2-19 13-17 24l29 206c2 12 13 20 24 18 11-2 19-12 18-24l-30-206z m-292 6c2-11-6-22-17-24-11-2-22 6-24 18l-29 206c-2 11 6 22 18 24 11 2 22-6 23-18l29-206z" horiz-adv-x="1000" />

<glyph glyph-name="basket-medium" unicode="&#xe8e7;" d="M104 485c0 0 1 0 1 0h103l71 197c9 31 41 53 76 53h291c35 0 67-22 77-55l70-195h103c0 0 1 0 1 0h61c17 0 32-14 32-31s-15-31-32-31h-35l-61-374c-14-50-59-84-110-84h-503c-51 0-97 34-111 87l-60 371h-36c-17 0-32 14-32 31s15 31 32 31h62z m37-62l58-358c6-22 26-38 50-38h503c23 0 44 16 49 35l59 361h-719z m585 62l-63 176c-3 7-9 12-18 12h-290c-9 0-15-5-17-10l-64-178h452z m-257-156c0 17 14 31 31 31s31-14 31-31v-208c0-17-14-31-31-31s-31 14-31 31v208z m208-213c-3-17-19-28-36-26-17 2-28 18-26 35l29 206c3 17 19 29 36 27s28-18 26-35l-29-207z m-292 9c3-17-10-32-27-35-17-2-33 10-35 27l-30 206c-2 17 10 33 27 35 17 3 33-9 35-26l30-207z" horiz-adv-x="1000" />

<glyph glyph-name="basket-solid" unicode="&#xe8e8;" d="M128 433h-65c-12 0-21 10-21 21s9 21 21 21h193l68 203c8 27 34 47 63 47h268c30 0 56-20 63-48l68-202h193c12 0 21-9 21-21s-9-21-21-21h-66l-60-376c-10-36-43-61-81-61h-502c-37 0-70 25-80 61l-62 376z m614 42l-63 190c-3 11-13 18-24 18h-268c-11 0-20-7-23-17l-64-191h442z m-242-146v-208c0-12 9-21 21-21s21 9 21 21v208c0 12-9 21-21 21s-21-9-21-21z m187-211l30 206c1 11-7 22-18 24-11 2-22-6-24-18l-29-206c-2-11 6-22 17-24 12-1 23 7 24 18z m-292 6l-29 206c-2 11-12 19-24 18-11-2-19-13-17-24l29-206c2-12 12-20 24-18 11 2 19 13 17 24z" horiz-adv-x="1000" />

<glyph glyph-name="cart-light" unicode="&#xe8e9;" d="M708-4c0-35 28-63 63-63 34 0 62 28 62 63 0 34-28 62-62 62-35 0-63-28-63-62z m-520 687l750 0c12 0 22-11 20-23l-32-260c-7-52-51-92-104-92l-559 0 8-41c10-49 53-84 102-84l481 0c12 0 21-9 21-20 0-12-9-21-21-21l-481 0c-69 0-129 49-143 117l-101 508-108 0c-12 0-21 9-21 21 0 11 9 20 21 20l125 0c10 0 18-7 20-16l22-109z m8-41l59-292 567 0c32 0 58 24 62 55l30 237-718 0z m471-646c0 57 46 104 104 104 57 0 104-47 104-104 0-58-47-104-104-104-58 0-104 46-104 104z m-417 0c0 57 47 104 104 104 58 0 104-47 104-104 0-58-46-104-104-104-57 0-104 46-104 104z m42 0c0-35 28-63 62-63 35 0 63 28 63 63 0 34-28 62-63 62-34 0-62-28-62-62z" horiz-adv-x="1000" />

<glyph glyph-name="cart-medium" unicode="&#xe8ea;" d="M740-4c0-29 23-52 52-52s52 23 52 52-24 52-52 52-52-23-52-52z m-523 698h741c19 0 34-17 31-35l-32-261c-7-57-56-100-114-100h-546l6-29c8-44 47-75 92-75h480c17 0 31-14 31-31s-14-32-31-32h-481c-74 0-139 53-153 126l-100 499h-99c-17 0-32 14-32 32s15 31 32 31h125c15 0 28-11 31-25l19-100z m13-63l54-271h559c26 0 48 20 52 46l28 225h-693z m447-635c0 63 51 114 115 114s114-51 114-114-51-115-114-115-115 51-115 115z m-417 0c0 63 52 114 115 114s115-51 115-114-52-115-115-115-115 51-115 115z m63 0c0-29 23-52 52-52s52 23 52 52-23 52-52 52-52-23-52-52z" horiz-adv-x="1000" />

<glyph glyph-name="cart-solid" unicode="&#xe8eb;" d="M188 683h750c5 0 11-2 15-7 4-4 6-10 5-16l-32-260c-7-52-51-92-103-92h-560l8-41c10-48 53-84 102-84h481c12 0 21-9 21-20s-9-21-21-21h-481c-69 0-129 49-143 117l-101 508h-108c-12 0-21 9-21 21s9 20 21 20h125c10 0 18-7 20-16l22-109z m583-583c57 0 104-47 104-104s-47-104-104-104-104 46-104 104 46 104 104 104z m-417 0c58 0 104-47 104-104s-46-104-104-104-104 46-104 104 47 104 104 104z" horiz-adv-x="1000" />

<glyph glyph-name="exchange" unicode="&#xe8ec;" d="M392 600v-345c0-17-19-30-42-30s-42 13-42 30v345h-104c-6 0-10 2-14 5-5 4-7 8-7 13 0 5 2 10 7 13l145 130c5 4 10 5 15 5s10-1 15-5l145-130c5-3 7-8 7-13 0-5-2-9-7-13-4-3-9-5-14-5h-104z m208-500v345c0 17 19 30 42 30s41-13 41-30v-345h105c5 0 10-2 14-5s6-8 6-13-2-9-6-13l-146-130c-4-4-9-5-14-5s-11 1-15 5l-146 130c-4 4-6 8-6 13s2 9 6 13 9 5 15 5h104z" horiz-adv-x="1000" />

<glyph glyph-name="preview-thin" unicode="&#xe8ed;" d="M500 663c117 0 233-50 338-134 79-62 141-146 141-179s-62-112-141-179c-105-83-221-133-338-133s-233 50-337 133c-80 67-142 146-142 179s62 113 142 179c104 84 220 134 337 134z m192-92l0 0c37-46 58-100 58-158 0-138-112-250-250-250s-250 112-250 250c0 62 21 116 58 158-41-21-79-46-120-79-71-59-125-129-125-146s58-88 125-146c95-79 204-125 312-125s217 46 313 125c70 58 125 129 125 146s-59 87-125 146c-42 33-80 62-121 79z m-192 50l-8 0c-113-4-200-96-200-208 0-117 91-209 208-209s208 92 208 209c0 112-87 204-200 208l-8 0z m0-108c54 0 100-46 100-100 0-55-46-100-100-100s-100 45-100 100c0 4 0 4 0 8 8-4 17-4 25-4 42 0 75 33 75 75 4 8 4 12 0 21l0 0z" horiz-adv-x="1000" />

<glyph glyph-name="device-laptop" unicode="&#xe8ee;" d="M797 646c41 0 75-34 75-75v-390c0-13-3-25-9-35h82c7 0 13-6 13-14v-31c0-26-20-46-45-46h-825c-26 0-46 20-46 46v31c0 8 6 14 13 14h77c-5 10-9 22-9 35v390c0 41 34 75 75 75h599z m-8-83h-582v-374h582v374z" horiz-adv-x="1000" />

<glyph glyph-name="collapse" unicode="&#xe8ef;" d="M826-108h-652c-73 0-132 59-132 132v652c0 73 59 132 132 132h652c73 0 132-59 132-132v-652c0-73-59-132-132-132z m-652 823c-21 0-39-17-39-39v-652c0-21 18-39 39-39h652c21 0 39 18 39 39v652c0 22-18 39-39 39h-652z m76-457c0 8 3 16 9 22l219 227c6 6 13 10 22 10s16-4 22-10l219-227c6-6 9-14 9-22s-3-17-9-23c-6-7-13-10-22-10h-438c-8 0-16 3-22 10-6 6-9 14-9 23z" horiz-adv-x="1000" />

<glyph glyph-name="expand" unicode="&#xe8f0;" d="M865 715v-730h-730v730h730z m8 93h-746c-47 0-85-38-85-85v-746c0-47 38-85 85-85h746c47 0 85 38 85 85v746c0 47-38 85-85 85z m-623-365c0-9 3-17 9-23l219-227c6-6 13-10 22-10s16 4 22 10l219 227c6 6 9 14 9 23s-3 16-9 22-13 10-22 10h-438c-8 0-16-3-22-10s-9-14-9-22z" horiz-adv-x="1000" />

<glyph glyph-name="navigator" unicode="&#xe8f1;" d="M936 613l-418 192c-11 5-24 5-35 0l-419-192c-14-7-22-20-22-34s8-27 22-33l418-192c6-3 12-4 18-4s12 1 18 4l418 192c14 6 22 19 22 33s-8 27-22 34z m-46-205c23 11 52 1 63-23 12-23 2-52-22-63l-411-195c-12-7-28-7-41 0l-410 195c-24 11-34 40-23 63s40 35 64 23l390-185 390 185z m0-229c23 11 52 1 63-23s2-52-22-63l-411-196c-12-6-28-6-41 0l-410 196c-24 11-34 40-23 63s40 34 64 23l390-186 390 186z" horiz-adv-x="1000" />

<glyph glyph-name="plug" unicode="&#xe8f2;" d="M404 625l179 183c30 30 75 30 105 0l0 0c29-29 29-75 0-104l-180-179 125-125 180 179c29 29 75 29 104 0l0 0c29-29 29-75 0-104l-179-179 41-42c9-8 9-21 0-29l-75-83c-8-9-21-9-29 0l-25 25-117-117c-79-79-200-83-283-17l-121-121c-8-8-21-8-29 0s-8 21 0 30l121 121-46 45-121-121c-8-8-21-8-29 0-8 9-8 21 0 30l121 125c-67 83-63 204 17 283l116 117-25 21c-4 8-4 20 0 29l79 75c9 8 21 8 30 0l41-42z m75-75l179 179c13 13 13 34 0 46l0 0c-12 13-33 13-45 0l-180-179 46-46z m229-229l180 179c12 13 12 33 0 46l0 0c-13 12-34 12-46 0l-179-179 45-46z m-362 304l-46-46 25-25c8-8 8-21 0-29l-133-133c-67-67-67-175 0-242l75-75c66-67 175-67 241 0l134 133c8 9 21 9 29 0l25-25 46 46-396 396z" horiz-adv-x="1000" />

<glyph glyph-name="dashboard" unicode="&#xe8f3;" d="M500 558c25 0 42-16 42-41s-17-42-42-42-42 17-42 42 17 41 42 41z m208-83c25 0 42-17 42-42s-17-41-42-41-41 16-41 41 16 42 41 42z m-416 0c25 0 41-17 41-42s-16-41-41-41-42 16-42 41 17 42 42 42z m-84-167c25 0 42-16 42-41s-17-42-42-42-41 17-41 42 16 41 41 41z m584 0c25 0 41-16 41-41s-16-42-41-42-42 17-42 42 17 41 42 41z m-217-154c-4 34-21 63-50 79-29 17-62 17-92 5l-12 4 208 166-41-262-13 8z m-92-100c-16 0-37 4-50 13-25 12-41 37-50 62-8 25-4 54 9 79s37 42 62 50 54 5 79-8c25-12 42-37 50-62 9-25 5-55-8-80s-37-41-62-50c-13 0-21-4-30-4z m0 167c-4 0-12 0-16-4-17-4-29-17-38-29-8-13-12-34-4-46 4-17 17-29 29-38 13-8 34-12 46-8 17 4 29 17 38 29 8 13 12 33 4 46-4 17-17 29-29 37v0c-9 13-17 13-30 13z m409-267h-784l-4 8c-66 88-104 192-104 305 0 275 225 500 500 500 275 0 500-225 500-500 0-113-37-217-104-305l-4-8z m-763 42h742c58 79 87 171 87 271 0 254-204 458-458 458s-458-204-458-458c0-100 29-192 87-271z" horiz-adv-x="1000" />

<glyph glyph-name="typography" unicode="&#xe8f4;" d="M146 504v-583c0-4 4-13 12-13h663v867c0 4-4 13-13 13h-379v-230c0-29-25-54-54-54h-229z m246 284l0 0-238-242h225c4 0 13 4 13 12v230z m-234-921c-29 0-54 25-54 54v625c0 4 4 12 4 12l255 263c4 4 8 8 16 8h434c29 0 54-25 54-54v-888c0-12-9-20-21-20h-271-417z m255 316l-59 142-58-142h117z m45-125l-37 92h-138l-37-92h-42l129 330h46l129-330h-50z m230 30c-25-25-50-38-75-38-21 0-38 8-50 21s-21 29-21 46c0 25 12 46 33 62 21 13 54 21 96 21h12v29c0 29-12 42-41 42-25 0-50-8-75-21v38c29 12 58 16 83 16 29 0 46-4 58-16 13-13 21-34 21-59v-108c0-25 9-38 25-38 0 0 4 0 9 0l4-25c-9-4-21-8-34-8-29 4-41 17-45 38z m-9 25v62l-16 0c-25 0-42-4-59-12-12-9-21-21-21-38 0-12 5-21 13-25 8-8 17-12 29-12 17 0 33 8 54 25z" horiz-adv-x="1000" />

<glyph glyph-name="info-circle-o" unicode="&#xe8f5;" d="M479 483c0 34 29 59 63 59 33 0 62-25 62-59 0-33-29-58-62-58-34 0-63 25-63 58z m125-320c0-5-4-9-8-13-21-21-50-29-83-33-13 0-30 0-42 0-38 8-58 33-54 66 8 38 16 75 21 113 4 12 4 21 8 33 0 4 0 9 0 13 0 8-8 12-17 12-4 0-8 0-12 0-4 0-13 4-17 4-8 5-8 17 4 17 4 0 9 4 17 4 21 0 42 0 62 0h59c12 0 21-8 25-16 0-13-4-25-4-38-9-37-17-71-21-104-4-13-4-25-9-38 0-4 0-8 0-12 5-17 13-21 30-17 4 0 8 4 16 4 4 0 9 5 17 9 4 8 8 4 8-4z m-104-313c-275 0-500 225-500 500s225 500 500 500 500-225 500-500-225-500-500-500z m0 42c254 0 458 204 458 458s-204 458-458 458-458-204-458-458 204-458 458-458z" horiz-adv-x="1000" />

<glyph glyph-name="integration" unicode="&#xe8f6;" d="M275 679l417-241c8-5 12-17 8-30s-17-12-29-8l-417 242c-33-42-91-50-141-25-50 33-71 100-38 154s100 71 154 42c46-30 63-84 46-134z m475-412l-417-242c-8-4-20-4-29 8-4 9-4 21 9 30l416 241c-16 50 4 104 50 134 54 29 121 12 154-42 30-54 13-121-41-154-46-25-104-13-142 25z m-617-184v459c0 12 9 21 21 21s21-9 21-21v-459c50-8 92-54 92-108 0-63-50-113-113-113s-112 50-112 113c0 54 37 100 91 108z m-50-108c0-38 30-71 71-71s71 29 71 71-29 71-71 71-71-33-71-71z m788 304c33 21 46 63 25 96-21 33-63 46-96 25-33-21-46-62-25-96 21-33 63-46 96-25z m-733 375c33-21 75-8 95 25s9 75-25 96-79 8-100-25-4-75 30-96z" horiz-adv-x="1000" />

<glyph glyph-name="plus-circle-o" unicode="&#xe8f7;" d="M500-113c-254 0-462 209-462 463s208 463 462 463 463-209 463-463-209-463-463-463z m0 92c204 0 371 167 371 371s-167 371-371 371-371-167-371-371 167-371 371-371z m-46 417v175c0 25 21 46 46 46 25 0 46-21 46-46v-175h175c25 0 46-21 46-46s-21-46-46-46h-175v-175c0-25-21-46-46-46-25 0-46 21-46 46v175h-175c-25 0-46 21-46 46s21 46 46 46h175z" horiz-adv-x="1000" />

<glyph glyph-name="rating" unicode="&#xe8f8;" d="M325 446l83 12 75 150c9 17 30 17 38 0l75-150 79-12 71 125c8 17 29 12 37 0l50-125 130-25c16-4 20-25 8-38l-96-87 17-133c0-17-17-30-34-21l-112 66-71-33c0 0-4 0-4 0l12-67c5-16-16-29-29-20l-154 83-150-79c-17-9-33 4-29 21l12 66c-4 0-4 0-8 0l-71 34-112-67c-17-8-34 4-34 21l17 129-100 87c-12 13-8 34 8 38l130 25 54 121c8 16 29 16 37 0l71-121z m-46-8l-41 75-42-92c-4-8-8-13-17-13l-96-20 75-67c5-4 9-13 9-17l-13-100 88 50c4 4 12 4 21 0l79-37 8 58-121 117c-12 12-4 33 13 37l37 9z m438 4l41-4c17-5 25-25 13-38l-121-117 8-58 75 33c5 5 13 5 21 0l88-50-9 96c0 9 0 13 9 17l75 67-100 20c-9 0-13 5-17 13l-42 92-41-71z m-350-292l121 63c4 4 12 4 20 0l121-63-25 138c0 8 0 12 4 16l100 96-137 21c-8 0-13 4-17 12l-62 125-63-125c-4-4-8-8-16-12l-138-21 100-96c4-4 8-12 4-16l-12-138z" horiz-adv-x="1000" />

<glyph glyph-name="review" unicode="&#xe8f9;" d="M254 113c-58 0-108 50-108 108v292c0 58 46 108 108 108h492c58 0 108-50 108-108v-292c0-58-46-108-108-108h-283l-200-113c-17-8-38 8-30 25l42 88h-21z m192 37c4 0 8 4 8 4h292c37 0 67 29 67 67v292c0 37-30 66-67 66h-492c-37 0-66-29-66-66v-292c0-38 29-67 66-67h59c16 0 25-16 16-29l-29-58 146 83z m46 154c4 4 12 4 21 0l50-25-9 54c0 9 0 13 4 17l38 38-54 8c-9 0-13 4-17 12l-25 50-25-50c-4-4-8-8-17-12l-54-8 38-38c4-4 8-12 4-17l-8-54 54 25z m-67-83c-17-8-33 4-29 21l12 83-62 58c-13 13-4 34 12 38l84 12 37 75c9 17 29 17 38 0l37-75 84-12c16-4 25-25 12-38l-62-58 12-83c4-17-17-29-29-21l-75 42-71-42z m458 217c-8 8-8 20 0 29 9 8 21 8 30 0l75-75c8-9 8-21 0-29l-75-75c-9-9-21-9-30 0-8 8-8 20 0 29l59 58-59 63z m-762 0l-58-59 58-58c8-8 8-21 0-29-8-9-21-9-29 0l-75 75c-9 8-9 21 0 29l75 75c8 8 21 8 29 0 8-8 8-25 0-33z" horiz-adv-x="1000" />

<glyph glyph-name="tools" unicode="&#xe8fa;" d="M246-79c-8 0-17 0-25 0 0 0 0 0 0 0l-79 12 87 92-29 33-92-91-12 79c-4 17-4 33 0 50 4 29 21 58 42 79 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0l0 0c0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0l0 0 0 0c25 25 54 38 83 42 17 8 29 8 46 4h0l137 137-91 96-63-66-21 20-16-16c12-17 12-42-5-59l-29-25c-16-16-46-16-62 0l-92 92c-8 8-12 21-12 29s4 21 12 29l29 30c9 8 21 12 29 12 0 0 0 0 0 0 13 0 21-4 30-12l4-5 16 17-29 33 84 84c0 0 0 0 0 0 0 0 4 4 4 4 0 0 0 0 0 0 54 50 100 83 141 104 50 29 100 42 146 42 0 0 0 0 0 0 9 0 17 0 25 0 9 0 17 0 25-4l75-17-137-138 91-91 88 83c-4 17-4 29 0 46 4 29 17 58 42 83 0 0 0 0 0 0l0 0 0 0c0 0 0 0 0 0 0 0 0 0 0 0l0 0c0 0 0 0 0 0 0 0 0 0 0 0 20 21 45 34 75 42 16 4 37 4 58 0l79-13-92-87 30-33 91 87 13-79c0 0 0 0 0 0 4-17 4-33 0-50-4-29-17-54-38-75 0 0 0 0-4-4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0-37-38-87-50-137-42l-84-83 284-284c33-33 33-87 0-121l-30-29c-16-16-37-25-62-25 0 0 0 0 0 0-25 0-46 9-63 25l-283 284-133-134c4-20 4-41 0-62-4-29-21-54-42-75l0 0c0 0 0 0 0 0 0 0 0 0 0 0l0 0 0 0c0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0-21-21-50-34-79-42-8-8-17-8-25-8z m-13 41c9 0 17 0 25 0 21 5 46 13 63 30l0 0c0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 12 12 21 29 29 46 4 16 4 37 0 54l0 0c0 4 0 4 0 8l-4 13c-4 12-13 20-17 29 0 4-4 4-4 4 0 0 0 0 0 0-4 4-8 8-12 8-42 34-105 29-142-8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0l0 0c-17-17-25-38-29-63 0-12 0-20 0-33l25 38c8 8 21 12 33 12 0 0 0 0 0 0 13 0 21-4 29-12l29-30c9-8 13-16 13-29s-4-21-13-29l-33-33c4-5 4-5 8-5z m321 305l284-284c16-16 45-16 62 0l29 30c17 16 17 45 0 62l-283 283 0 0 0 0-92-91z m-191-100c4-9 8-13 12-21h0l275 275 0 0 71 71c-13 8-21 16-33 25-13 12-21 25-30 41l-350-350c9-4 13-8 21-12 9-4 13-8 17-17 0 0 0 0 0 0 0 0 0 0 0 0l0 0c8-4 12-8 17-12z m-275 296l-34-30 92-95 33 29-12 12-79 84z m254 20l91-91 92 91-92 92-91-92z m-175 50l83-83 271 271c-8 0-17 4-29 4-4 0-9 0-13 0-33 0-79-8-133-37-42-21-83-55-125-96 0 0-4-4-4-4 0 0 0 0 0 0l-50-55z m550 13c41-42 112-42 154 0l0 0c0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 17 17 25 37 29 58 0 9 0 21 0 29 0 0 0 5 0 5v0l-33-34c-17-16-46-16-59 0l-29 38c-8 8-12 21-12 29 0 12 4 21 12 29l34 33c-13 0-25 0-38 0-21-4-42-12-54-29 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0-46-46-46-116-4-158l0 0 0 0z" horiz-adv-x="1000" />

<glyph glyph-name="loading" unicode="&#xe8fb;" d="M500-125v117c196 0 358 162 358 358s-162 358-358 358-358-162-358-358h-117c0 263 213 475 475 475s475-212 475-475-212-475-475-475z" horiz-adv-x="1000" />

<glyph glyph-name="sitemap" unicode="&#xe8fc;" d="M479 417v154h-75c-12 0-21 8-21 21v191c0 13 9 21 21 21h192c12 0 21-8 21-21v-195c0-13-9-21-21-21h-75v-154h267c37 0 70-30 70-71v-175h75c13 0 21-9 21-21v-196c0-13-8-21-21-21h-191c-13 0-21 8-21 21v196c0 12 8 21 21 21h75v175c0 16-13 29-29 29h-267v-200h75c12 0 21-8 21-21v-196c0-12-9-21-21-21h-192c-12 0-21 9-21 21v196c0 13 9 21 21 21h75v200h-266c-17 0-30-13-30-29v-175h75c13 0 21-9 21-21v-196c0-13-8-21-21-21h-191c-13 0-21 8-21 21v196c0 12 8 21 21 21h75v175c0 37 29 71 71 71h266z m-54 346v-155h150v155h-150z m-337-784h150v154h-150v-154z m675 154v-154h150v154h-150z m-338-154h150v154h-150v-154z" horiz-adv-x="1000" />

<glyph glyph-name="click" unicode="&#xe8fd;" d="M326 458v178c0 66 53 119 118 119s118-53 118-119v-178c57 39 94 104 94 178 0 119-95 214-212 214s-213-96-213-214c0-75 38-140 95-178z m396-165c-53 12-184 48-198 62s-9 103-9 116c0 54 0 109 0 164 0 40-32 72-71 72s-71-32-71-72c0-187 0-328 0-422 0-29-3-70-14-87s-28-23-54 1-32 34-62 42-65-19-73-35-10-30 0-53c15-31 52-73 66-87 27-27 68-68 122-123 13-13 31-21 50-21h321c36 0 63 26 68 61l36 251c0 3 0 6 0 9 0 30-13 99-111 122z" horiz-adv-x="1000" />

<glyph glyph-name="clock" unicode="&#xe8fe;" d="M500-67c-230 0-417 187-417 417s187 417 417 417 417-187 417-417-187-417-417-417z m198 310l-160 105v192c0 20-17 38-38 38s-38-18-38-38v-212c0-13 6-25 17-32l177-117c17-11 41-6 52 11 12 18 7 41-10 53z" horiz-adv-x="1000" />

<glyph glyph-name="library-open" unicode="&#xe8ff;" d="M958 300c0-8-4-21-16-33l-163-192c-12-17-33-29-58-42s-50-16-71-16h-529c-13 0-21 4-29 8s-13 13-13 21c0 8 4 21 17 33l162 192c13 17 34 29 59 42s50 16 71 16h529c12 0 21-4 29-8s12-8 12-21z m-166 171v-79h-409c-29 0-62-9-95-25s-59-34-80-59l-162-191-4-4c0 0 0 4 0 4s0 4 0 4v475c0 29 12 54 33 79s46 33 79 33h159c29 0 54-12 79-33s25-50 25-79v-17h266c30 0 55-12 80-33s29-46 29-75z" horiz-adv-x="1000" />

<glyph glyph-name="warning" unicode="&#xe900;" d="M538 663c-5 8-9 12-17 16-21 9-46 4-58-16l-371-646c-4-9-4-13-4-21 0-25 16-42 41-42h742c8 0 12 0 21 4 21 13 25 38 16 59l-370 646z m33 20l371-645c25-42 8-92-29-113-13-8-25-13-42-13h-742c-46 0-83 38-83 84 0 12 4 29 12 42l371 645c25 42 75 55 113 30 12-9 25-17 29-30z m-121-450l-8 142c0 29-4 46-4 58 0 21 4 34 16 46 13 13 25 17 42 17 25 0 37-13 46-25 8-13 8-29 8-54 0-13 0-25-4-42l-13-146c0-16-4-33-8-41-8-13-17-21-33-21-17 0-25 8-34 21-4 12-8 25-8 45z m42-112c16 0 29-4 41-17 13-12 17-25 17-37 0-17-4-29-17-42-12-8-25-12-37-12-17 0-29 4-38 12-12 8-16 25-16 42 0 16 4 29 16 37 5 13 21 17 34 17z" horiz-adv-x="1000" />

<glyph glyph-name="flow" unicode="&#xe901;" d="M542 392h237c42 0 75-34 75-75v-125h113c21 0 33-17 33-34v-233c0-21-17-33-33-33h-304c-21 0-34 16-34 33v233c0 21 17 34 34 34h108v116h-542v-116h109c20 0 33-17 33-34v-233c4-17-13-33-33-33h-305c-16 0-33 16-33 33v233c0 21 17 34 33 34h113v125c0 41 33 75 75 75h237v116h-112c-21 0-33 17-33 34v233c0 17 16 33 33 33h304c21 0 33-16 33-33v-233c0-21-16-34-33-34h-108v-116z" horiz-adv-x="1000" />

<glyph glyph-name="cursor-move" unicode="&#xe902;" d="M208 296v-71c0-4 0-8-4-12-4-5-8-5-12-5-4 0-9 0-13 5l-129 137c-8 0-8 4-8 13s0 8 4 12l129 138c4 4 8 4 17 4 4 0 8 0 12-4 4-5 4-9 4-17v-75h221v221h-75c-8 0-12 0-16 4-5 4-5 8-5 12 0 5 0 9 5 13l137 129c4 8 8 8 17 8s8 0 12-4l138-129c4-4 4-8 4-12 0-5 0-9-4-13-4-8-9-8-17-8h-75v-221h242v75c0 4 0 8 4 12s8 9 12 9 9 0 13-4l129-138c4-4 4-8 4-12s0-9-4-13l-129-137c-4-5-8-5-13-5s-8 0-12 5c-4 0-4 4-4 12v75h-238v-242h71c4 0 8 0 13-4 4-4 4-8 4-12s0-9-4-13l-138-129c0-8-4-8-8-8s-9 0-13 4l-137 129c-9 4-9 8-9 17s0 8 5 12 8 4 16 4h75v238h-221z" horiz-adv-x="1000" />

<glyph glyph-name="arrow-circle-left" unicode="&#xe903;" d="M896 579c42-71 62-146 62-229s-20-158-62-229c-42-71-96-125-167-167-71-42-146-62-229-62s-158 20-229 62c-71 42-125 96-167 167-41 71-62 146-62 229s21 158 62 229 96 125 167 167 146 62 229 62 158-20 229-62 125-96 167-167z m-354-229l-175-175c-17-17-17-46 0-62 16-17 41-17 58 0l204 208c17 17 17 46 0 62l-204 205c-17 16-46 16-58 0-17-17-17-46 0-63l175-175z" horiz-adv-x="1000" />

<glyph glyph-name="flash" unicode="&#xe904;" d="M150 321l188 446c4 12 16 21 29 21l304-5c17 0 33-16 33-33 0-4 0-8-4-12l-83-192 216 0c17 0 34-17 34-33 0-9-4-17-9-21l-537-571c-13-13-33-13-46 0-8 8-12 21-8 33l91 321-175 0c-16 0-33 17-33 33 0 5 0 9 0 13z m113 42l212 0-62-217 295 317-220 0 100 237-184 0-141-337z" horiz-adv-x="1000" />

<glyph glyph-name="redo" unicode="&#xe905;" d="M679 592c-4 0-8 4-8 4-138 79-317 33-396-104s-33-313 104-392 313-33 396 104c17 29 50 38 79 21 29-17 38-50 21-79-112-192-358-259-550-146s-262 358-150 554 358 259 550 146c17-8 25-17 38-25l4 4 58 59c17 16 46 4 46-21l0-196c0-17-13-29-29-29l-196 0c-25 0-38 29-21 46l54 54z" horiz-adv-x="1000" />

<glyph glyph-name="ban" unicode="&#xe906;" d="M208 550c-41-58-62-125-62-200 0-192 154-350 350-350 79 0 150 25 212 71 0 0-4 4-4 4l-487 467c-4 4-9 4-9 8z m75 75c5 0 5-4 9-8l483-467c0 0 4-4 4-4 42 58 63 125 63 200 0 192-154 350-350 350-79 4-150-25-209-71z m209-733c-254 0-459 204-459 458s205 458 459 458 458-204 458-458-204-458-458-458z" horiz-adv-x="1000" />

<glyph glyph-name="barcode" unicode="&#xe907;" d="M125 725v-750h-42v750h42z m42 0v-750h-42v750h42z m41 0v-750h-37v750h37z m42 0v-750h-33v750h33z m42 0v-750h-34v750h34z m41 0v-750h-29v750h29z m42 0v-750h-29v750h29z m42 0v-750h-25v750h25z m41 0v-750h-25v750h25z m42 0v-750h-21v750h21z m46 0v-750h-21v750h21z m42 0v-750h-17v750h17z m41 0v-750h-16v750h16z m42 0v-750h-13v750h13z m42 0v-750h-13v750h13z m41 0v-750h-8v750h8z m42 0v-750h-8v750h8z m42 0v-750h-5v750h5z m41 0v-750h-4v750h4z m42 0v-750h-4v750h4z" horiz-adv-x="1000" />

<glyph glyph-name="calendar" unicode="&#xe908;" d="M917 604v-637c0-50-42-88-88-88h-658c-46 4-88 42-88 92v633c0 50 42 88 88 88h87v96c5 12 13 20 25 20h75c13 0 21-8 21-20v-96h238v96c0 12 8 20 21 20h75c12 0 20-8 20-20v-96h88c54 0 96-38 96-88z m-88-625v542h-658v-538c0-4 4-12 12-12h634c4 0 12 4 12 8z m-471 367h-75c-12 0-20 8-20 21v75c0 12 8 21 20 21h75c13 0 21-9 21-21v-71c0-13-8-25-21-25z m200 21c0-13-8-21-20-21h-75c-13 0-21 8-21 21v75c0 12 8 21 21 21h75c12 0 20-9 20-21v-75z m180 0c0-13-9-21-21-21h-75c-13 0-21 8-21 21v75c0 12 8 21 21 21h75c12 0 21-9 21-21v-75z m-180-159c0-12-8-20-20-20h-75c-13 0-21 8-21 20v71c0 13 8 21 21 21h75c12 0 20-8 20-21v-71z m-179 0c0-12-8-20-21-20h-75c-12 0-20 8-20 20v71c0 13 8 21 20 21h75c13 0 21-8 21-21v-71z m359 0c0-12-9-20-21-20h-75c-13 0-21 8-21 20v71c0 13 8 21 21 21h75c12 0 21-8 21-21v-71z m-180-158c0-12-8-21-20-21h-75c-13 0-21 9-21 21v71c0 12 8 21 21 21h75c12 0 20-9 20-21v-71z m-179 0c0-12-8-21-21-21h-75c-12 0-20 9-20 21v71c0 12 8 21 20 21h75c13 0 21-9 21-21v-71z m359 0c0-12-9-21-21-21h-75c-13 0-21 9-21 21v71c0 12 8 21 21 21h75c12 0 21-9 21-21v-71z" horiz-adv-x="1000" />

<glyph glyph-name="caret-left" unicode="&#xe909;" d="M592 604c8 9 12 9 25 9 8 0 16-5 25-9 8-8 8-12 8-25v-458c0-8-4-17-8-25-9-8-13-8-25-8-9 0-17 4-25 8l-229 229c-9 8-9 13-9 25 0 8 4 17 9 25l229 229z" horiz-adv-x="1000" />

<glyph glyph-name="caret-right" unicode="&#xe90a;" d="M408 604c-8 4-16 9-25 9-8 0-16-5-20-9-9-8-13-16-13-25v-458c0-8 4-17 8-25 9-8 13-8 25-8 9 0 17 4 25 8l230 229c8 8 8 13 8 25 0 8-4 17-8 25l-230 229z" horiz-adv-x="1000" />

<glyph glyph-name="caret-up" unicode="&#xe90b;" d="M763 279c8-8 8-12 8-25 0-8-4-16-8-25-9-8-13-8-25-8h-459c-8 0-16 4-25 8 0 9-4 17-4 25 0 9 4 17 8 25l230 229c8 5 16 9 25 9 8 0 16-4 25-9l225-229z" horiz-adv-x="1000" />

<glyph glyph-name="chain-broken" unicode="&#xe90c;" d="M500 492c-21-21-50-21-71 0-21 21-21 50 0 71l142 141c79 79 208 79 287 0 80-79 80-208 0-287l-141-142c-21-21-50-21-71 0-21 21-21 50 0 71l142 142c37 37 37 104 0 141s-105 38-142 0l-146-137z m0-284c21 21 50 21 71 0 21-20 21-50 0-70l-142-142c-79-79-208-79-287 0-79 79-79 208 0 287l141 142c21 21 50 21 71 0 21-25 21-54 4-75l-141-142c-38-37-38-104 0-141s104-38 141 0l142 141z m142 284c21-21 21-50 0-71l-213-213c-21-20-50-20-71 0-20 21-20 50 0 71l213 213c21 21 54 21 71 0z" horiz-adv-x="1000" />

<glyph glyph-name="check-circle-o" unicode="&#xe90d;" d="M896 579c42-71 62-146 62-229s-20-158-62-229c-42-71-96-125-167-167-71-42-146-62-229-62s-158 20-229 62c-71 42-125 96-167 167-41 71-62 146-62 229s21 158 62 229 96 125 167 167 146 62 229 62 158-20 229-62 125-96 167-167z m-504-337l-109 108c-16 17-45 17-66 0-17-17-17-46 0-67l141-141c17-17 46-17 63 0l358 346c17 16 17 45 0 66-16 17-46 17-66 0l-321-312z" horiz-adv-x="1000" />

<glyph glyph-name="check" unicode="&#xe90e;" d="M813 625c25 25 62 25 87 0 25-25 25-62 0-87l-487-467c-25-25-63-25-88 0l-225 225c-25 25-25 62 0 87 25 25 63 25 88 0l183-183 442 425z" horiz-adv-x="1000" />

<glyph glyph-name="chevron-double-left" unicode="&#xe90f;" d="M304 350l254-250c25-25 25-62 0-87-25-26-62-26-87 0l-300 295c-25 25-25 67 0 88l300 296c25 25 62 25 87 0 25-25 25-63 0-88l-254-254z m250 0l254-250c25-25 25-62 0-87s-62-26-87 0l-300 295c-25 25-25 67 0 88l300 296c25 25 62 25 87 0s25-63 0-88l-254-254z" horiz-adv-x="1000" />

<glyph glyph-name="chevron-double-right" unicode="&#xe910;" d="M679 350l-254-250c-25-25-25-62 0-87 25-26 63-26 88 0l300 295c25 25 25 67 0 88l-300 296c-25 25-63 25-88 0-25-25-25-63 0-88l254-254z m-250 0l-254-250c-25-25-25-62 0-87s63-26 88 0l300 295c25 25 25 67 0 88l-305 292c-25 25-62 25-87 0s-21-63 4-88l254-250z" horiz-adv-x="1000" />

<glyph glyph-name="undo" unicode="&#xe911;" d="M325 592c0 4 4 4 8 8 138 79 317 33 396-104s34-313-104-396-312-33-396 104c-16 29-50 38-79 21-29-17-37-50-21-79 113-192 359-259 550-146s259 358 146 550-354 263-550 150c-12-8-25-17-33-25l-4 4-59 59c-16 16-46 4-46-17l0-196c0-17 13-29 30-29l195 0c25 0 38 29 21 46l-54 50z" horiz-adv-x="1000" />

<glyph glyph-name="filter" unicode="&#xe912;" d="M96 492c-29 0-54 25-54 54s25 54 54 54h812c25 0 50-25 50-54s-25-54-54-54h-808z m121-209c-29 0-54 25-54 55 0 29 25 54 54 54h566c30 0 55-25 55-54 0-30-25-55-55-55h-566z m121-208c-30 0-55 25-55 54 0 29 25 54 55 54h325c29 0 54-25 54-54 0-29-25-54-54-54h-325z" horiz-adv-x="1000" />

<glyph glyph-name="circle-o" unicode="&#xe913;" d="M500-108c254 0 458 204 458 458s-204 458-458 458-458-204-458-458 204-458 458-458z m0 108c-192 0-350 154-350 350s158 350 350 350 350-154 350-350-158-350-350-350z" horiz-adv-x="1000" />

<glyph glyph-name="circle" unicode="&#xe914;" d="M896 579c42-71 62-146 62-229s-20-158-62-229c-42-71-96-125-167-167-71-42-146-62-229-62s-158 20-229 62c-71 42-125 96-167 167-41 71-62 146-62 229s21 158 62 229 96 125 167 167 146 62 229 62 158-20 229-62 125-96 167-167z" horiz-adv-x="1000" />

<glyph glyph-name="clock-o" unicode="&#xe915;" d="M500 721c-204 0-371-167-371-371 0-204 167-371 371-371 204 0 371 167 371 371 0 204-167 371-371 371z m0 87c254 0 458-204 458-458s-204-458-458-458-458 204-458 458 204 458 458 458z m100-600l-17-20c-12-17-37-21-58-9l-108 88v225c0 21 16 41 41 41h25c21 0 42-16 42-41v-175l67-54c16-13 21-38 8-55z" horiz-adv-x="1000" />

<glyph glyph-name="cog" unicode="&#xe916;" d="M904 246l-75 42c9 41 9 83 0 120l75 42c9 8 13 21 13 29-21 63-54 117-96 167-8 8-17 8-25 4l-75-42c-33 25-67 46-108 63v83c0 9-9 17-17 21-63 13-129 13-192 0-8-4-16-12-16-21v-87c-38-13-75-34-105-63l-75 46c-8 4-20 0-29-4-41-46-75-104-96-167 0-8 5-21 13-25l75-41c-8-42-8-84 0-121l-75-42c-8-4-13-17-8-25 20-62 54-117 95-167 9-8 17-8 25-4l75 42c34-25 67-46 109-63v-87c0-9 8-17 16-21 63-13 130-13 192 0 8 4 17 12 17 21v87c37 13 75 34 108 63l75-42c8-4 21-4 25 4 42 46 75 105 96 167-4 4-8 17-17 21z m-404-33c-79 0-142 62-142 141s63 142 142 142 142-63 142-142-63-141-142-141z" horiz-adv-x="1000" />

<glyph glyph-name="cogs" unicode="&#xe917;" d="M775 454l-12-21c-5-8-13-12-21-8-17 8-34 17-46 29-8 4-8 17-4 21l12 21c-8 12-16 25-21 37h-25c-8 0-16 5-16 17-4 17-4 33 0 54 0 9 8 17 16 17h25c5 12 13 29 21 37l-12 21c-4 9-4 17 4 21 12 8 29 17 46 25 8 0 16 0 21-8l12-21c17 4 29 4 46 0l12 21c5 8 13 8 21 8 17-4 34-17 46-25 8-4 8-17 4-21l-12-21c12-16 16-29 25-41h25c8 0 16-4 16-17 5-17 5-33 0-54 0-8-8-17-16-17h-25c-4-12-13-29-21-37l8-17c4-8 4-17-4-21-12-12-29-21-46-25-8-4-16 0-21 9l-12 20c-17-8-29-8-46-4l0 0z m-17 84c55-42 117 20 75 75-54 41-116-21-75-75l0 0z m-162-217l50-25c12-8 21-25 17-42-13-33-38-66-63-91-12-13-29-17-42-9l-41 25c-25-21-50-33-79-46v-45c0-17-13-30-30-34-33-4-70-4-108 0-17 4-29 17-29 34v45c-29 9-54 25-79 46l-42-25c-12-8-33-4-42 9-25 29-45 58-62 91-4 17 0 34 17 42l45 25c-4 29-4 58 0 92l-50 20c-12 9-20 25-12 42 12 33 37 67 62 92 13 12 30 16 42 8l42-25c25 21 50 33 79 46v50c0 17 12 29 29 33 33 4 67 4 104 0 17-4 29-16 29-33v-46c30-8 55-25 80-46l41 25c13 9 34 4 42-8 25-29 46-58 58-92 4-16 0-33-12-41l-50-25c8-34 8-63 4-92z m-171-33c83 108-42 233-150 150-83-109 42-234 150-150z m350-259l-12-21c-5-8-13-12-21-8-17 4-34 17-46 25-8 4-8 17-4 21l12 21c-8 12-16 25-21 37h-25c-8 0-16 4-16 17-4 17-4 33 0 54 0 8 8 17 16 17h25c5 12 13 29 21 37l-12 21c-4 8-4 17 4 21 12 12 29 21 46 25 8 4 16 0 21-8l12-21c17 4 29 4 46 0l12 21c5 8 13 12 21 8 17-4 34-17 46-25 8-4 8-17 4-21l-12-21c8-12 16-25 21-37h25c8 0 16-4 16-17 4-17 4-33 0-54 0-8-8-17-16-17h-21c-4-12-13-29-21-37l12-21c5-8 5-17-4-21-12-12-29-21-46-25-8-4-16 0-20 8l-13 21c-21 0-33 0-50 0z m-17 84c55-42 117 20 75 75-54 41-116-21-75-75l0 0z" horiz-adv-x="1000" />

<glyph glyph-name="commenting-o" unicode="&#xe918;" d="M300 433c-33 0-58-25-58-54 0-29 25-54 58-54s58 25 58 54c0 29-25 54-58 54z m200 0c-33 0-58-25-58-54 0-29 25-54 58-54s58 25 58 54c0 29-25 54-58 54z m200 0c-33 0-58-25-58-54 0-29 25-54 58-54 33 0 58 25 58 54 0 29-25 54-58 54z m-200 309c-250 0-458-163-458-367 0-83 37-158 96-221-25-71-84-129-84-129-12-8-12-29-8-42s21-25 37-25c109 0 196 46 250 80 50-17 109-25 167-25 254 0 458 162 458 366s-204 363-458 363z m0-646c-46 0-96 8-142 21l-41 12-34-25c-25-16-62-37-104-50 17 21 29 46 38 71l21 50-38 38c-33 33-71 91-71 162 0 154 167 279 371 279s371-125 371-279-167-279-371-279z" horiz-adv-x="1000" />

<glyph glyph-name="copy" unicode="&#xe919;" d="M875 692l-92 91c-12 17-33 25-54 25h-300c-46 0-83-37-83-87v-88h-138c-45 5-83-33-83-83v-575c0-46 38-83 83-83h388c46 0 83 37 83 87v88h138c46 0 83 37 83 87v475c0 25-8 46-25 63z m-287-713h-371c-4 0-9 4-9 13v550c0 4 5 12 9 12h129v-400c0-46 37-87 83-87h167v-75c0-9-4-13-8-13z m220 171h-366c-4 0-9 4-9 13v550c0 4 5 12 9 12h183v-158c0-25 17-42 42-42h154v-362c-4-9-8-13-13-13l0 0z m9 458h-109v113h17c4 0 4 0 8-4l84-88c0 0 4-4 4-8v-13l-4 0z" horiz-adv-x="1000" />

<glyph glyph-name="database" unicode="&#xe91a;" d="M275 429c63-12 133-21 204-21s142 9 204 21c63 13 113 34 150 59v-80c0-20-16-41-45-58s-75-33-130-42-112-16-179-16-125 4-179 16-100 25-129 42-46 38-46 58v80c38-25 88-46 150-59z m0-358c63-13 133-21 204-21s142 8 204 21 113 33 150 58v-79c0-21-16-42-45-58-34-17-75-34-130-42-54-13-112-17-179-17s-125 4-179 17c-54 12-100 25-129 42-29 21-46 37-46 62v79c38-29 88-45 150-62z m0 179c63-12 133-21 204-21s142 9 204 21c63 13 113 33 150 58v-79c0-21-16-41-45-58-34-17-75-33-130-42-54-12-112-16-179-16s-125 4-179 16c-54 13-100 25-129 42-29 21-46 37-46 58v79c38-25 88-45 150-58z m29 500c54 13 113 17 179 17s125-4 180-17 100-25 129-42 46-37 46-58v-58c0-21-17-42-46-59-34-16-75-33-129-41s-113-17-180-17-125 0-179 8-100 25-129 42c-33 21-50 42-50 63v58c0 21 17 42 46 58s79 38 133 46z" horiz-adv-x="1000" />

<glyph glyph-name="dot-circle-o" unicode="&#xe91b;" d="M500-108c-254 0-458 204-458 458s204 458 458 458 458-204 458-458-204-458-458-458z m0 108c192 0 350 154 350 350s-158 350-350 350-350-158-350-350 158-350 350-350z m125 425c13-21 21-46 21-75s-8-50-21-75c-12-21-29-42-54-54-21-13-46-21-75-21s-50 8-75 21c-21 12-42 29-54 54-13 21-21 46-21 75s8 50 21 75c12 21 29 42 54 54 21 13 46 21 75 21s50-8 75-21c25-16 42-33 54-54z" horiz-adv-x="1000" />

<glyph glyph-name="envelope" unicode="&#xe91c;" d="M942 467c8 4 16 0 16-9v-366c0-46-37-88-87-88h-742c-46 0-87 38-87 88v362c0 9 8 13 16 9 42-30 92-71 275-205 38-29 100-87 167-83 63 0 129 58 167 83 179 138 233 175 275 209z m-442-234c42 0 100 55 133 75 238 171 255 188 313 230 8 8 12 20 12 33v33c0 46-37 88-87 88h-742c-50 0-87-38-87-88v-33c0-13 4-25 16-33 55-42 71-59 313-230 29-20 87-75 129-75z" horiz-adv-x="1000" />

<glyph glyph-name="external-link-square" unicode="&#xe91d;" d="M125 808h750c46 0 83-37 83-83v-750c0-46-37-83-83-83h-750c-46 0-83 37-83 83v750c0 46 37 83 83 83z m458-287l-395-396c-25-25-25-62 0-87s62-25 87 0l396 395 79-79c21-21 58-4 63 25l4 250c0 21-17 34-34 34l-250-5c-33 0-45-37-25-62l75-75z" horiz-adv-x="1000" />

<glyph glyph-name="eyedropper" unicode="&#xe91e;" d="M767 771c41 0 75-13 104-42 29-29 42-62 42-104s-9-79-38-108l-104-104 50-50c4-5 4-9 4-13 0-4 0-8-4-12l-96-96c-4-4-8-4-12-4s-9 0-13 4l-50 50-283-275c-13-13-25-17-42-17h-92l-112-58c-4 0-8 0-8 0l-21 20c-9 5-9 9-4 13l58 113v95c0 17 4 30 17 42l279 279-50 50c-4 4-4 4-4 9 0 4 0 8 4 12l96 96c4 4 8 4 12 4s8 0 13-4l50-50 104 104c25 33 58 46 100 46z m-442-679l267 266-92 88-262-263c-5-4-5-8-5-12v-75c0-4 5-8 9-8h79c0 0 0 0 4 4z" horiz-adv-x="1000" />

<glyph glyph-name="folder" unicode="&#xe91f;" d="M958 454v-396c0-33-12-62-37-87s-54-38-88-38h-666c-34 0-63 13-88 38s-37 54-37 87v542c0 33 12 63 37 88s54 37 88 37h175c33 0 62-12 87-37s38-55 38-88v-17h366c34 0 63-12 88-37s37-54 37-92z" horiz-adv-x="1000" />

<glyph glyph-name="font" unicode="&#xe920;" d="M454 517l-87-229c12 0 33 0 71 0 33 0 62 0 83 0 8 0 17 0 29 0-33 83-62 162-96 229z m-371-567l0 42c9 4 17 4 30 8s20 4 29 4c8 0 16 4 25 9 8 4 16 8 21 16 8 9 12 17 16 25l121 317 142 371h66c5-9 9-13 9-17l104-246c12-25 29-71 54-133s46-108 58-142c5-12 17-37 30-75s25-66 37-87c8-17 13-25 17-29 8-5 21-9 46-17 25-4 37-9 41-13 0-12 4-21 4-29 0 0 0-4 0-8 0-4 0-4 0-9-20 0-54 0-95 5-42 4-75 4-96 4-25 0-63 0-109-4s-79-5-91-5c0 17 0 30 0 42l66 13c0 0 5 0 9 0 4 0 8 0 8 0 0 0 4 0 8 4 5 0 5 4 9 4s4 4 4 4c4 0 4 4 4 4 0 0 0 5 0 9 0 4-4 21-17 50-12 29-20 58-37 91-13 34-21 50-21 50l-229 0c-8-20-21-54-38-100s-25-75-25-83c0-8 5-12 9-21 0 13 8 9 16 4 9-4 17-4 25-8 9 0 17-4 30-4s20 0 20 0c0-9 0-17 0-29 0-5 0-9 0-13-20 0-50 0-87 4-42 4-71 4-88 4-4 0-8 0-12 0s-8 0-13 0c-29-8-62-12-100-12z" horiz-adv-x="1000" />

<glyph glyph-name="adjust" unicode="&#xe921;" d="M42 350c0-254 204-458 458-458s458 204 458 458-204 458-458 458-458-204-458-458z m458-342v684c188 0 342-154 342-342 0-187-154-342-342-342z" horiz-adv-x="1000" />

<glyph glyph-name="lightbox" unicode="&#xe922;" d="M871 808h-571c-50 0-87-37-87-87v-88h-84c-50 5-87-33-87-83v-575c0-46 37-83 87-83h575c46 0 88 37 88 87v88h87c46 0 88 37 88 87v567c-9 50-46 87-96 87z m-171-829h-571v371h575v-371z m171 171h-88v400c0 46-37 88-87 88h-396v83h575v-571z" horiz-adv-x="1000" />

<glyph glyph-name="heart-o" unicode="&#xe923;" d="M863 667c-105 87-263 75-363-25-100 100-258 112-362 25-134-113-117-292-21-388l312-312c17-17 42-30 67-30 25 0 50 9 67 30l312 312c104 96 121 279-12 388z m-42-329l-313-313c-4-4-8-4-12 0l-313 313c-66 66-79 187 13 266 71 59 175 50 246-16l58-67 63 62c66 67 175 75 245 17 92-71 75-196 13-262l0 0z" horiz-adv-x="1000" />

<glyph glyph-name="history" unicode="&#xe924;" d="M200 633c25 30 54 50 88 67 191 113 441 46 550-146s45-441-146-550-442-50-554 146c-17 29-9 63 20 79 30 17 63 9 80-21 79-137 254-183 395-104s184 254 105 396-255 179-396 100c-21-12-42-29-59-46l67-66c0 0 4-5 4-5 0-4-4-8-8-8l-233-17c0 0 0 0 0 0-5 0-9 5-9 9l13 229c0 0 0 4 4 4 4 4 8 4 12 0l67-67z m383-420c-12-17-37-21-58-9l-108 88v225c0 21 16 41 41 41h25c21 0 42-16 42-41v-175l67-54c16-13 21-38 8-59l-17-16z" horiz-adv-x="1000" />

<glyph glyph-name="image-bold" unicode="&#xe925;" d="M871 725h-742c-50 0-87-37-87-87v-559c0-46 37-87 87-87h746c46 0 88 37 88 87v559c-5 50-42 87-92 87z m-733-642c-5 0-13 5-13 13v533c0 4 4 13 13 13h725c4 0 12-4 12-13v-537c0-4-4-13-12-13h-725z m129 484c-38 0-71-34-71-71s33-71 71-71 71 33 71 71-30 71-71 71z m-71-417h608v196l-166 167c-9 8-25 8-34 0l-229-230-75 75c-8 9-25 9-33 0l-75-75v-133z" horiz-adv-x="1000" />

<glyph glyph-name="info-circle" unicode="&#xe926;" d="M500-108c254 0 458 204 458 458s-204 458-458 458-458-204-458-458c0-254 204-458 458-458z m0 762c25 0 50-21 50-50s-25-46-50-46c-25 0-50 21-50 50 0 13 4 25 13 34s25 12 37 12z m-87-229c-13 4-21 17-21 29 0 9 4 17 8 21 4 4 13 8 21 8h121c4 0 8-4 8-8v-296c0-46 21-62 38-66 12-5 20-17 20-30 0-16-12-29-29-29h-154c-8 4-17 4-25 13-4 4-8 12-8 21 0 12 8 25 21 29 16 4 37 21 37 66v180c0 41-21 58-37 62z" horiz-adv-x="1000" />

<glyph glyph-name="link" unicode="&#xe927;" d="M479 325c38-37 109-37 154 8l117 121c46 46 50 113 8 154s-104 38-150-8l-50-50c-20-21-54-21-75 0-20 21-20 54 0 75l50 50c84 88 221 92 305 8s79-220-9-308l-121-117c-87-87-225-91-308-8-21 21-21 54 0 75 21 21 58 21 79 0z m46 46c-37 37-108 37-154-8l-121-121c-46-46-50-113-8-154 37-38 108-38 154 8l54 54c21 21 54 21 75 0 21-21 21-54 0-75l-54-54c-83-84-221-92-304-8s-79 220 8 308l121 121c87 87 225 91 308 8 21-21 21-54 0-75-25-25-58-25-79-4z" horiz-adv-x="1000" />

<glyph glyph-name="long-arrow-left" unicode="&#xe928;" d="M292 179c0-29-38-46-63-25l-179 175c-12 13-12 38 0 50l179 175c25 17 63 0 63-29v-112h604c33 0 62-30 62-63 0-33-29-62-62-62h-604v-109z" horiz-adv-x="1000" />

<glyph glyph-name="long-arrow-right" unicode="&#xe929;" d="M708 179c0-29 38-46 63-25l179 175c13 13 13 38 0 50l-179 175c-25 17-63 0-63-29v-112h-604c-33 0-62-30-62-63 0-33 29-62 62-62h604v-109z" horiz-adv-x="1000" />

<glyph glyph-name="caret-down" unicode="&#xe92a;" d="M571 457q0-14-10-25l-250-250q-11-11-25-11t-25 11l-250 250q-11 11-11 25t11 25 25 11h500q14 0 25-11t10-25z" horiz-adv-x="571.4" />

<glyph glyph-name="paint-brush" unicode="&#xe92b;" d="M883 608c-91-175-154-270-187-304-17-16-42-41-79-50-13-4-9 25-50 63-34 33-67 25-67 46 0 8 8 50 42 91 33 38 116 121 254 246 8 8 71 75 108 42 38-34-16-121-21-134z m-370-591c-46-46-105-67-180-67-41 0-79 8-112 25s-58 38-79 67-34 58-46 91c-8 34-13 71-13 113 0 0 46-46 88-54 150-21 179 187 337 116 34-16 80-62 75-158-4-54-50-112-70-133z" horiz-adv-x="1000" />

<glyph glyph-name="pencil" unicode="&#xe92c;" d="M892 525l-75-79c-9-8-21-8-29 0l-180 187c-8 9-8 21 0 30l75 79c30 33 80 33 113 0l96-100c33-34 33-84 0-117z m-346 71l-429-446-34-208c-4-30 17-55 46-46l196 37 429 446c9 9 9 21 0 29l-179 188c-8 8-21 8-29 0z m-263-408c-8 8-8 25 0 33l250 262c9 9 25 9 34 0 8-8 8-25 0-33l-250-262c-9-9-21-9-34 0l0 0z m-58-146h79v-63l-104-21-50 59 17 108h58v-83z" horiz-adv-x="1000" />

<glyph glyph-name="plus-circle" unicode="&#xe92d;" d="M104 579c42 71 96 125 167 167s146 62 229 62 158-20 229-62 125-96 167-167c42-71 62-146 62-229s-20-158-62-229c-42-71-96-125-167-167-71-42-146-62-229-62s-158 20-229 62c-71 42-125 96-167 167-41 71-62 146-62 229s21 158 62 229z m350-183h-175c-25 0-46-21-46-46s21-46 46-46h175v-175c0-25 21-46 46-46 25 0 46 21 46 46v175h175c25 0 46 21 46 46s-21 46-46 46h-175v175c0 25-21 46-46 46-25 0-46-21-46-46v-175z" horiz-adv-x="1000" />

<glyph glyph-name="zoom-in-bold" unicode="&#xe92e;" d="M388 467v71c0 29 25 54 54 54 29 0 54-25 54-54v-71h71c29 0 54-25 54-54s-25-55-54-55h-71v-70c0-30-25-55-54-55-29 0-54 25-54 55v70h-71c-29 0-54 25-54 55s25 54 54 54h71z m266-350c-62-46-137-71-216-71-205 0-367 162-367 367s162 366 367 366 366-162 366-366c0-84-25-159-71-217l163-163c21-20 21-54 0-75-21-21-54-21-75 0l-167 159z m-216 37c141 0 258 117 258 259s-117 258-258 258-259-117-259-258 117-259 259-259z" horiz-adv-x="1000" />

<glyph glyph-name="sort-amount-desc" unicode="&#xe92f;" d="M263 129l0 0h83c25 0 37-29 21-46l-138-137c-12-13-29-13-37 0l-138 137c-16 17-4 46 21 46h83 0v588c0 33 25 62 55 62s54-29 54-62v-588z m225 284c-34 0-63 25-63 54s29 54 63 54h287c33 0 63-25 63-54s-30-54-63-54h-287z m0-209c-34 0-63 25-63 54s29 55 63 55h170c34 0 63-25 63-55s-29-54-63-54h-170z m0-208c-34 0-63 25-63 54s29 54 63 54h58c33 0 62-25 62-54s-29-54-62-54h-58z m0 625c-34 0-63 25-63 54s29 54 63 54h400c33 0 62-25 62-54s-29-54-62-54h-400z" horiz-adv-x="1000" />

<glyph glyph-name="sign-out" unicode="&#xe930;" d="M946 317l-304-300c-29-25-75-9-75 29v175h-250c-25 0-42 21-42 42v175c0 25 21 41 42 41h246v175c0 38 45 59 75 29l304-304c21-16 21-41 4-62z m-567 287h-166c-42 0-80-37-80-79v-350c0-42 38-79 80-79h166c25 0 46-21 46-46 0-25-21-46-46-46h-166c-96 0-171 75-171 171v350c0 96 75 171 171 171h166c25 0 46-21 46-46s-21-46-46-46z" horiz-adv-x="1000" />

<glyph glyph-name="spinner" unicode="&#xe931;" d="M588 721c0-46-38-88-88-88s-87 42-87 88 41 87 87 87 88-37 88-87z m-88-658c-46 0-87-38-87-88s41-83 87-83 88 37 88 87-42 84-88 84z m371 375c-46 0-88-38-88-88s38-87 88-87 87 41 87 87-37 88-87 88z m-658-88c0 46-38 88-88 88s-83-42-83-88 37-87 87-87 84 41 84 87z m25-179c-46 0-88-38-88-88s38-87 88-87 87 37 87 87c-4 50-42 88-87 88z m525 0c-46 0-88-38-88-88s38-87 88-87 87 37 87 87c0 50-37 88-87 88z m-525 529c-46 0-88-37-88-87s38-88 88-88 87 38 87 88-42 87-87 87z" horiz-adv-x="1000" />

<glyph glyph-name="square" unicode="&#xe932;" d="M958 638v-575c0-46-16-88-50-121s-75-50-120-50h-575c-46 0-88 16-121 50s-50 75-50 121v575c0 45 16 87 50 120s75 50 121 50h575c45 0 87-16 120-50s50-75 50-120z" horiz-adv-x="1000" />

<glyph glyph-name="star-o" unicode="&#xe933;" d="M913 500l-250 38-113 237c-21 42-79 42-100 0l-112-237-250-38c-46-8-63-62-30-96l180-183-42-259c-8-45 42-83 79-58l225 121 225-121c42-21 88 13 79 58l-41 259 179 183c33 34 12 92-29 96l0 0z m-242-250l42-246-213 117-212-117 41 246-171 175 238 38 104 220 108-225 238-37-175-171z" horiz-adv-x="1000" />

<glyph glyph-name="star" unicode="&#xe934;" d="M450 775l-112-237-250-38c-42-4-63-67-30-100l180-183-42-263c-8-46 42-79 79-58l225 117 225-117c42-21 88 12 79 58l-41 263 179 183c33 33 12 92-29 100l-250 38-113 237c-21 42-79 42-100 0z" horiz-adv-x="1000" />

<glyph glyph-name="text-align-justify" unicode="&#xe935;" d="M104-17c-33 0-62 25-62 55s29 54 62 54h792c33 0 62-25 62-54s-29-55-62-55h-792z m0 209c-33 0-62 25-62 54s29 54 62 54h792c33 0 62-25 62-54s-29-54-62-54h-792z m0 208c-33 0-62 25-62 54s29 54 62 54h792c33 0 62-25 62-54s-29-54-62-54h-792z m0 208c-33 0-62 25-62 55s29 54 62 54h792c33 0 62-25 62-54s-29-55-62-55h-792z" horiz-adv-x="1000" />

<glyph glyph-name="text-align-center" unicode="&#xe936;" d="M188 400c-34 0-63 25-63 54s29 54 63 54h620c38 0 63-25 63-54s-29-54-63-54h-620z m83-208c-33 0-63 25-63 54s30 54 63 54h458c34 0 63-25 63-54s-29-54-63-54h-458z m-167-209c-33 0-62 25-62 55s29 54 62 54h792c33 0 62-25 62-54s-29-55-62-55h-792z m254 625c-37 0-66 25-66 55s29 54 66 54h284c37 0 66-25 66-54s-29-55-66-55h-284z" horiz-adv-x="1000" />

<glyph glyph-name="tags" unicode="&#xe937;" d="M238 517c12 12 20 29 20 46 0 16-4 33-16 41s-25 17-42 17-33-4-42-17-16-25-16-41c0-17 4-34 16-42 13-13 25-17 42-17s29 4 38 13z m537-234c0-16-4-33-17-41l-237-238c-13-12-29-17-46-17-17 0-33 5-42 17l-345 346c-13 13-21 29-30 50s-16 38-16 54v200c0 17 4 29 16 42s25 17 42 17h200c17 0 38-5 58-13 25-4 38-17 50-29l346-346c13-8 21-25 21-42z m183 0c0-16-4-33-16-41l-238-238c-12-12-29-17-46-17-12 0-20 5-29 9-8 4-16 12-25 21l225 225c13 12 17 25 17 41 0 17-4 34-17 46l-346 346c-8 8-25 21-45 29-21 9-38 13-55 13h109c16 0 37-4 58-13 17-8 33-21 46-33l346-346c12-8 16-25 16-42z" horiz-adv-x="1000" />

<glyph glyph-name="text-align-left" unicode="&#xe938;" d="M104 400c-33 0-62 25-62 54s29 54 62 54h750c34 0 63-25 63-54s-29-54-63-54h-750z m0-208c-33 0-62 25-62 54s29 54 62 54h625c34 0 63-25 63-54s-29-54-63-54h-625z m0-209c-33 0-62 25-62 55s29 54 62 54h792c33 0 62-25 62-54s-29-55-62-55h-792z m0 625c-33 0-62 25-62 55s29 54 62 54h542c33 0 62-25 62-54s-29-55-62-55h-542z" horiz-adv-x="1000" />

<glyph glyph-name="text-align-right" unicode="&#xe939;" d="M896 400h-750c-33 0-63 25-63 54s30 54 63 54h750c33 0 62-25 62-54s-29-54-62-54z m0-208h-625c-33 0-63 25-63 54s30 54 63 54h625c33 0 62-25 62-54s-29-54-62-54z m0-209h-792c-33 0-62 25-62 55s29 54 62 54h792c33 0 62-25 62-54s-29-55-62-55z m0 625h-542c-33 0-62 25-62 55s29 54 62 54h542c33 0 62-25 62-54s-29-55-62-55z" horiz-adv-x="1000" />

<glyph glyph-name="close-circle" unicode="&#xe93a;" d="M896 579c42-71 62-146 62-229s-20-158-62-229c-42-71-96-125-167-167-71-42-146-62-229-62s-158 20-229 62c-71 42-125 96-167 167-41 71-62 146-62 229s21 158 62 229 96 125 167 167 146 62 229 62 158-20 229-62 125-96 167-167z m-333-229l125 125c16 17 16 46 0 63-17 20-46 20-63 4l-125-125-125 125c-46 41-108-25-67-67l125-125-125-125c-16-17-16-46 0-62 17-21 46-21 67-5l125 125 125-125c42-41 104 21 63 63l-125 129z" horiz-adv-x="1000" />

<glyph glyph-name="trash-o" unicode="&#xe93b;" d="M588 63h41c13 0 21 8 21 20v388c0 12-8 21-21 21h-41c-13 0-21-9-21-21v-388c0-8 12-20 21-20z m287 604h-142l-62 100c-17 25-42 41-71 41h-175c-29 0-54-16-71-41l-58-100h-142c-16 0-29-13-29-29v-30c0-16 13-29 29-29h29v-600c0-46 38-87 84-87h500c46 0 83 37 83 87v600h25c17 0 29 13 29 29v30c-4 16-16 29-29 29z m-454 50c0 4 4 4 8 4h163c4 0 8 0 8-4l29-50h-237l29 50z m342-738h-500v600h500v-600z m-367 84h42c12 0 20 8 20 20v388c0 12-8 21-20 21h-42c-13 0-21-9-21-21v-388c0-8 8-20 21-20z" horiz-adv-x="1000" />

<glyph glyph-name="font-awesome" unicode="&#xe93c;" d="M777 788h-679c-54 0-98-45-98-98v-679c0-54 44-99 98-99h679c54 0 98 45 98 99v679c0 53-44 98-98 98z m-89-556c0-8-7-11-15-15-33-14-67-27-105-27-53 0-77 33-140 33-46 0-93-17-132-34-2-1-5-1-7-2v-89c0-3 0-7-1-9v-3c-5-16-20-28-37-28-22 0-40 18-40 40v427c-15 12-26 30-26 51 0 37 30 66 66 66 36 0 65-29 65-66 0-21-9-39-25-51v-36c3 1 7 2 10 5 36 15 80 28 120 28 45 0 80-12 119-27 8-4 17-5 26-5 44 0 93 32 105 32 9 0 18-7 18-16v-274z" horiz-adv-x="875" />

<glyph glyph-name="user-circle-o" unicode="&#xe93d;" d="M313 58c54-33 120-54 187-54 71 0 133 21 188 54-21 25-46 46-71 63-34 21-75 29-117 29-75 0-146-33-187-92z m-84 71c67 79 163 129 271 129 58 0 117-16 171-45 37-21 71-50 100-84 50 59 79 138 79 221 0 192-154 350-350 350s-350-158-350-350c0-83 33-162 79-221z m271-237c-254 0-458 204-458 458s204 458 458 458 458-204 458-458-204-458-458-458z m0 383c-100 0-179 79-179 179s79 179 179 179 179-79 179-179-79-179-179-179z m0 108c38 0 71 34 71 71s-33 71-71 71-71-33-71-71 34-71 71-71z" horiz-adv-x="1000" />

<glyph glyph-name="video-camera" unicode="&#xe93e;" d="M575 642h-458c-42 0-75-34-75-71v-438c0-41 33-70 75-70h458c42 0 75 33 75 70v438c4 37-33 71-75 71z m304-59l-175-116v-238l175-116c34-21 79 0 79 37v396c0 37-45 62-79 37z" horiz-adv-x="1000" />

<glyph glyph-name="heart" unicode="&#xe93f;" d="M871 671c-100 83-242 67-333-25l-38-38-33 38c-92 92-238 104-334 25-112-96-116-263-16-367l346-354c20-21 58-21 79 0l346 354c100 100 95 271-17 367z" horiz-adv-x="1000" />

<glyph glyph-name="wrench" unicode="&#xe940;" d="M629 329l-375-375c-41-42-108-42-146 0s-41 109 0 146l375 375c-25 79-8 171 55 233 66 67 162 84 241 55 4 0 13-5 9-9-5-4-5-4-5-4-29-29-75-75-133-133 17-59 25-92 29-92s34-12 92-29c58 62 100 104 129 133 4 4 4 4 4 4s4-4 9-8c33-83 12-179-50-246-63-58-155-75-234-50z m-475-329c17-17 42-17 59 0 16 17 16 42 0 58s-42 17-59 0c-16-12-16-41 0-58z" horiz-adv-x="1000" />

<glyph glyph-name="help" unicode="&#xe941;" d="M104 579c42 71 96 125 167 167s146 62 229 62 158-20 229-62 125-96 167-167c42-71 62-146 62-229s-20-158-62-229c-42-71-96-125-167-167-71-42-146-62-229-62s-158 20-229 62c-71 42-125 96-167 167-41 71-62 146-62 229s21 158 62 229z m350-321h84l0 21c4 21 12 42 29 54l25 25c21 21 33 38 41 55s13 33 13 54c0 41-13 71-38 96s-62 33-108 33c-46 0-83-13-108-33s-42-55-42-96h96c0 16 4 29 17 41s25 9 41 9c34 0 50-17 50-54 0-13-4-25-8-34s-21-25-38-41c-20-17-33-34-41-55s-13-45-13-75z m-12-100c0-12 4-25 12-37 9-8 21-13 38-13s29 5 37 13c9 8 13 21 13 37 0 13-4 25-17 38-8 8-21 12-37 12s-30-4-38-12c0-13-8-25-8-38z" horiz-adv-x="1000" />

<glyph glyph-name="help-o" unicode="&#xe942;" d="M500-113c-254 0-462 209-462 463s208 463 462 463 463-209 463-463-209-463-463-463z m0 92c204 0 371 167 371 371s-167 371-371 371-371-167-371-371 167-371 371-371z m-46 279c0 30 4 55 13 71s21 38 41 54c21 17 34 34 38 42s8 21 8 33c0 38-16 55-50 55-16 0-29-5-37-17s-17-25-17-42h-96c0 42 13 75 42 96s62 33 108 33c46 0 84-12 109-33s37-54 37-96c0-16-4-37-12-54s-21-33-42-54l-25-25c-17-17-25-33-29-54l0-21h-88z m-12-100c0 13 4 25 16 38 9 8 21 12 38 12s29-4 37-12c9-8 17-21 17-38 0-12-4-25-12-37-9-8-21-13-38-13s-29 5-37 13c-17 8-21 21-21 37z" horiz-adv-x="1000" />

<glyph glyph-name="zoom-out-bold" unicode="&#xe943;" d="M750 167l196-196c17-17 17-50 0-67-17-17-50-21-67 0l-196 196c-66-54-150-83-245-83-217 0-396 179-396 396s179 395 396 395 395-179 395-395c0-92-33-175-83-246z m-454 291h279c25 0 46-20 46-50 0-25-21-45-46-45h-279c-25 0-46 20-46 45 0 30 21 50 46 50z m142-345c166 0 300 133 300 300s-134 300-300 300-300-134-300-300 133-300 300-300z" horiz-adv-x="1000" />

<glyph glyph-name="plus-square-o" unicode="&#xe944;" d="M867 717h-734v-730h730v730z m4 91c50 0 87-37 87-87v-746c0-46-37-88-87-88h-742c-50 5-87 42-87 92v742c0 50 37 87 87 87h742z m-421-412v175c0 25 21 46 46 46 29 0 46-17 46-46v-175h175c25 0 46-21 46-46s-21-46-46-46h-175v-175c0-25-21-46-46-46-25 0-46 21-46 46v175h-175c-25 0-46 21-46 46s21 46 46 46h175z" horiz-adv-x="1000" />

<glyph glyph-name="minus-square-o" unicode="&#xe945;" d="M867 717h-734v-730h730v730z m4 91c50 0 87-37 87-87v-746c0-46-37-88-87-88h-742c-50 5-87 42-87 92v742c0 50 37 87 87 87h742z m-592-504c-25 0-46 21-46 46s21 46 46 46h446c25 0 46-21 46-46s-21-46-46-46h-446z" horiz-adv-x="1000" />

<glyph glyph-name="minus-circle" unicode="&#xe946;" d="M104 579c42 71 96 125 167 167s146 62 229 62 158-20 229-62 125-96 167-167c42-71 62-146 62-229s-20-158-62-229c-42-71-96-125-167-167-71-42-146-62-229-62s-158 20-229 62c-71 42-125 96-167 167-41 71-62 146-62 229s21 158 62 229z m171-275h446c25 0 46 21 46 46s-21 46-46 46h-446c-25 0-46-21-46-46s21-46 46-46z" horiz-adv-x="1000" />

<glyph glyph-name="minus-circle-o" unicode="&#xe947;" d="M500-113c-254 0-462 209-462 463s208 463 462 463 463-209 463-463-209-463-463-463z m0 92c204 0 371 167 371 371s-167 371-371 371-371-167-371-371 167-371 371-371z m-221 325c-25 0-46 21-46 46s21 46 46 46h446c25 0 46-21 46-46s-21-46-46-46h-446z" horiz-adv-x="1000" />

<glyph glyph-name="code-bold" unicode="&#xe948;" d="M842 313l-125 125c-21 20-21 54 0 75 21 20 54 20 75 0l166-163c21-21 21-54 0-75l-166-171c-21-21-54-21-75 0s-21 54 0 75l125 134z m-388-359c-8-29-37-46-66-37-30 8-46 37-38 66l196 725c8 30 37 46 67 38 29-8 45-38 37-67l-196-725z m-166 225c20-21 20-54 0-75s-55-21-75 0l-167 171c-21 21-21 54 0 75l167 163c20 20 54 20 75 0 20-21 20-55 0-75l-125-125 125-134z" horiz-adv-x="1000" />

<glyph glyph-name="cloud-upload" unicode="&#xe949;" d="M779 425c100-8 179-92 179-192 0-108-87-195-191-195h-496c-125 0-229 104-229 233 0 121 87 221 204 233 50 96 146 159 254 159 138 0 254-100 279-238z m-366-96v-183c0-13 12-25 25-25h125c12 0 25 12 25 25v183h75c8 0 12 4 16 9 4 4 9 8 9 16 0 9-5 13-9 17l-162 162c-4 5-9 9-17 9s-12-4-17-9l-162-162c-4-4-8-8-8-17 0-8 4-12 8-16 4-5 8-9 17-9h75z" horiz-adv-x="1000" />

<glyph glyph-name="search-bold" unicode="&#xe94a;" d="M654 117c-62-46-137-71-216-71-205 0-367 162-367 367s162 366 367 366 366-162 366-366c0-84-25-159-71-217l163-163c21-20 21-54 0-75-21-21-54-21-75 0l-167 159z m-216 37c141 0 258 117 258 259s-117 258-258 258-259-117-259-258 117-259 259-259z" horiz-adv-x="1000" />

<glyph glyph-name="map-pin" unicode="&#xe94b;" d="M104 413c0 218 177 395 396 395s396-177 396-395c0-129-107-273-321-431-37-62-62-93-75-93s-37 31-75 93c-214 158-321 302-321 431z m396-125c69 0 125 55 125 125s-56 125-125 125-125-56-125-125 56-125 125-125z" horiz-adv-x="1000" />

<glyph glyph-name="meetup" unicode="&#xe94c;" d="M588 805c163 47 324-75 321-243 94-39 120-164 50-238 56-107 26-242-74-312-39-27-83-42-129-44-38-107-169-147-260-81-100-66-233-40-302 60-21 31-34 66-37 103-152 37-209 229-102 344-57 115 10 256 135 281 68 158 263 225 398 130z m-365-155l-4-11-11-1c-110-16-168-141-110-237l8-13-11-12c-102-94-51-267 85-289l16-3 0-16c2-35 12-69 32-98 56-82 166-103 248-48 2 2 3 3 5 5l3 2 0 0 14 11 12-11c73-64 188-29 212 66l4 15 16 0c43-2 84 10 120 35 87 62 111 182 55 273l-9 15 13 11c65 55 42 161-38 186l-16 5 1 15c12 151-133 262-278 214l-10-3-8 7c-116 89-294 27-349-118z m330-29c38 0 53-32 59-31 13 1 53 20 99 5 59-20 87-88 78-140s-26-92-69-171c-15-27-10-46 27-29 28 14 65-10 65-40 1-44-72-81-110-90-45-10-114-1-134 55-12 33-7 68 0 88 7 29 60 131 48 148-13 27-48-73-79-158-11-30-22-74-74-70-14 1-29 12-38 24-31 45 29 156 38 194 6 28-21 32-34 0-13-32-17-66-55-168-6-16-20-41-35-59-26-31-66-36-91-28-53 17-73 75-56 125 7 22 59 190 80 235 18 39 50 125 145 95 17-6 48-21 55-24 16-7 39 41 81 39z m-3-42c-4 1-9-2-19-10-2-2-15-13-20-16-17-13-35-18-56-8-16 8-39 18-50 22-36 11-56 0-76-35-3-6-6-12-10-19-2-5-8-18-9-20-6-14-18-48-34-94-2-7-2-7-4-15-8-24-17-49-25-76-5-16-9-30-14-45-10-33 2-64 29-73 14-4 35 1 46 15 11 13 23 34 28 47 13 36 23 64 31 91 4 13 14 48 16 54 3 9 5 16 8 24 12 29 36 50 66 49 38-3 56-38 47-74-2-8-5-18-10-32-2-4-11-29-14-36-5-13-9-24-12-35-10-32-11-53-8-58 3-4 8-7 7-7 13 0 17 3 25 23 1 4 8 22 7 20 2 6 5 13 9 26l4 9c18 51 30 79 41 102 7 17 15 29 23 37 23 23 59 22 77-8 17-27 10-48-17-114-2-5-2-5-4-10-24-58-22-50-24-59-6-19-7-41 0-60 9-26 47-38 85-29 37 8 79 38 78 49 0 0-5 4-5 4-35-17-66-19-86 12-15 23-10 47 5 74 40 74 55 111 63 159 7 36-16 81-50 92-16 5-33 5-53 0-3-1-14-4-13-4-7-1-12-2-17-3-14-1-23 3-32 11-3 2-4 4-7 7-5 5-6 6-8 7-5 5-9 6-18 6z" horiz-adv-x="1000" />

<glyph glyph-name="slideshow" unicode="&#xe94d;" d="M128 600h745c45 0 82-35 85-80l1-6v-557c0-46-35-83-80-86l-6-1h-745c-46 0-83 35-86 80l-1 6v558c0 46 35 83 80 86l7 0h745-745z m734-86h-724c-5 0-9-3-10-8l0-3v-536c0-5 3-9 8-10l2 0h724c5 0 9 3 10 8l1 2v536c0 6-5 11-11 11z m-227-124l3-2 166-166v-197h-608v135l75 75c8 8 20 9 29 3l3-3 75-75 227 228c8 8 21 9 30 2l0 0z m-367 53c39 0 71-33 71-72s-32-72-71-72-72 32-72 72 32 72 72 72z m565 274c23 0 42-19 42-42v-42h-750v42c0 23 19 42 42 42h666z m-125 116c23 0 42-18 42-41v-42h-500v42c0 23 19 41 42 41h416z" horiz-adv-x="1000" />

<glyph glyph-name="t-letter-bold" unicode="&#xe94e;" d="M925 808c18 0 33-14 33-33v-196c0-18-14-33-33-33h-65c-18 0-33 15-33 33v66h-245v-622h81c18 0 33-15 33-33v-66c0-18-14-33-33-33h-327c-18 0-33 15-33 33v66c0 18 15 33 33 33h82v622h-245v-66c0-18-15-33-33-33h-65c-18 0-33 15-33 33v196c0 18 14 33 33 33h850z" horiz-adv-x="1000" />

<glyph glyph-name="preferences" unicode="&#xe94f;" d="M246 333c67-29 142-33 208-4l13 4h25c4 0 12 0 16 0l-4-12 0 0c-8-25 0-50 21-67l4-4 13-8 0-4 0 0 0-5-13-8c-25-12-33-42-25-67 13-37 34-75 59-104 16-21 45-25 66-12l4 4 13 8 4-4 0 0 4-4v-13c0-4 0-12 4-16-8-9-20-13-33-13l-8 0h-525c-38 0-67 29-71 67l0 4v63c0 108 87 195 192 200l8 0h25z m471 125c33 9 66 9 100 0 4 0 8-4 8-8l0-4v-46c17-4 33-12 46-25l8-8 38 21c4 4 8 0 12-5 21-25 42-54 50-87 0-4 0-8-4-13l-4 0-38-20c5-17 5-38 0-55l0-12 38-21c4-4 8-8 4-12-8-34-25-63-50-88-4-4-8-4-12-4l-5 0-37 21c-13-13-29-21-46-29l-8-5v-45c0-5-4-9-9-13-33-8-66-8-100 0-4 0-8 4-8 8l0 5v45c-17 5-33 13-46 25l-8 9-38-21c-4-4-8 0-12 4-21 25-42 54-50 88 0 4 0 8 4 12l4 0 38 21c-4 17-4 37 0 54l0 13-38 20c-4 5-8 9-4 13 8 33 25 62 50 87 4 5 8 5 13 5l4 0 37-21c13 12 29 21 46 29l8 4v50c0 4 0 8 9 8z m75-154c-29 13-59 4-79-16-21-21-25-55-17-80 12-29 37-45 67-45 41 0 70 33 70 70 5 34-12 63-41 71z m-434 463c105 0 192-88 192-192s-87-192-192-192-191 84-191 192 83 192 191 192z" horiz-adv-x="1000" />

<glyph glyph-name="table-of-contents" unicode="&#xe950;" d="M854 850c34 0 63-29 63-62v-876c0-33-29-62-63-62h-708c-33 0-63 29-63 62v876c0 33 30 62 63 62h708z m21-208h-750v-730c0-8 8-16 17-20l4 0h708c9 0 17 8 21 16l0 4v730z m-604-584c12 0 21-8 21-20v-42c0-13-9-21-21-21h-42c-12 0-21 8-21 21v42c0 12 9 20 21 20h42z m500-20c12 0 21-9 21-21s-9-21-21-21h-417c-12 0-21 8-21 21s9 21 21 21h417z m-500 187c8 0 17-8 21-17l0-4v-41c0-9-9-17-17-21l-4 0h-42c-8 0-16 8-21 16l0 5v41c0 9 9 17 17 21l4 0h42z m500-21c12 0 21-8 21-21 0-8-9-16-17-20l-4 0h-417c-12 0-21 8-21 20 0 9 9 17 17 21l4 0h417z m-500 188c12 0 21-9 21-21v-42c0-12-9-21-21-21h-42c-12 0-21 9-21 21v42c0 12 9 21 21 21h42z m500-21c12 0 21-8 21-21s-9-21-21-21h-417c-12 0-21 9-21 21s9 21 21 21h417z m-500 187c8 0 17-8 21-16l0-4v-42c0-8-9-17-17-21l-4 0h-42c-8 0-16 8-21 17l0 4v42c0 8 9 16 17 20l4 0h42z m500-20c12 0 21-9 21-21 0-9-9-17-17-21l-4 0h-417c-12 0-21 8-21 21 0 8 9 16 17 21l4 0h417z m83 270h-708c-8 0-17-8-21-16l0-4v-105h750v105c0 8-8 16-21 20l0 0z" horiz-adv-x="1000" />

<glyph glyph-name="tv" unicode="&#xe951;" d="M875 725c46 0 79-33 83-79l0-4v-417c0-46-33-79-79-83l-4 0h-333v-75h250c25 0 41-17 41-42 0-21-16-38-37-42l-4 0h-584c-25 0-41 17-41 42 0 21 16 38 37 42l4 0h250v75h-333c-46 0-79 33-83 79l0 4v417c0 46 33 79 79 83l4 0h750z m0-83h-750v-417h750v417z" horiz-adv-x="1000" />

<glyph glyph-name="upload" unicode="&#xe952;" d="M883 308h-229v50h100c67 0 104 84 54 130l-254 254c-29 29-79 29-108 0l-254-250c-46-46-13-129 54-129h100v-55h-229c-42 0-75-33-75-75v-204c0-42 33-75 75-75h762c42 0 75 33 75 75v204c4 42-29 75-71 75z m-637 130l254 254 254-254h-179v-255h-154v255h-175z m637-409h-766v204h229v-50c0-41 33-75 75-75h154c42 0 75 34 75 75v50h229v-204z m-66 100c0-21-17-37-38-37-21 0-37 16-37 37 0 21 16 38 37 38 21 0 38-17 38-38z" horiz-adv-x="1000" />

<glyph glyph-name="instagram-comments" unicode="&#xe953;" d="M804 258c21 42 29 88 29 134 0 183-158 333-354 333-196 0-354-150-354-333 0-184 158-334 354-334 50 0 100 13 146 30l50-9 175-41c0 0 4 0 4 4l-50 216z" horiz-adv-x="1000" />

<glyph glyph-name="instagram-nested-gallery" unicode="&#xe954;" d="M792 642c50-38 83-100 83-167v-292c0-116-92-208-208-208h-292c-67 0-129 33-167 83h417c92 0 167 75 167 167v417z m-209 83c67 0 121-50 125-117l0-8v-333c0-67-50-121-116-125l-9 0h-333c-67 0-121 50-125 116l0 9v333c0 67 50 121 117 125l8 0h333z" horiz-adv-x="1000" />

<glyph glyph-name="instagram-post" unicode="&#xe955;" d="M838 225l0 0c12-4 20-12 20-21l0-4-66-279c-4-13-13-17-25-17-9 4-17 13-17 21l0 4 67 279c0 13 8 17 21 17z m-96 542c54 0 91-46 91-100v-338c0-12-8-21-20-21s-21 9-21 21v338c0 33-21 58-50 58h-650c-29 0-50-25-50-58v-634c0-33 21-58 50-58h387c13 0 21-8 21-21s-8-21-21-21h-387c-54 0-92 46-92 100v634c0 54 38 100 92 100h650z m-75-629c8 8 21 8 29 0 8-9 8-17 4-25l-4-5-63-66 63-67c8-8 8-21 0-29-4-4-8-4-13-4-4 0-8 0-12 4l-4 0-79 83c-9 9-9 17-5 25l5 4 79 80z m221 0c8 8 16 8 25 4l4-4 79-84c8-8 8-16 4-25l-4-4-79-83c-4-5-9-5-13-5-4 0-8 0-12 5-9 8-9 16-4 25l4 4 62 67-62 66c-9 13-9 25-4 34z m-384 441c79 0 142-62 142-141v-180c0-79-63-141-142-141h-175c-79 0-141 62-141 141v180c0 79 62 141 141 141h175z m0-41h-175c-54 0-100-46-100-100v-180c0-54 46-100 100-100h179c55 0 100 46 100 100v180c-4 54-50 100-104 100z m-87-67c66 0 121-54 121-121s-55-121-121-121c-67 0-121 54-121 121s54 121 121 121z m0-42c-42 0-79-33-79-79s37-79 79-79c41 0 79 33 79 79s-38 79-79 79z m129 63c17 0 29-13 29-29 0-17-12-30-29-30-17 0-29 13-29 30 0 16 12 29 29 29z" horiz-adv-x="1000" />

<glyph glyph-name="instagram-video" unicode="&#xe956;" d="M625 683c46 0 79-33 83-79l0-4v-500c0-46-33-79-79-83l-4 0h-500c-46 0-79 33-83 79l0 4v500c0 46 33 79 79 83l4 0h500z m-250-104c-125 0-229-104-229-229 0-125 104-229 229-229 125 0 229 104 229 229 0 125-104 229-229 229z m583 21v-479h-16c-75 0-129 46-146 67l-4 8v329l4 4c17 25 71 71 146 71h16z m-583-125c71 0 125-54 125-125s-54-125-125-125c-71 0-125 54-125 125s54 125 125 125z" horiz-adv-x="1000" />

<glyph glyph-name="instagram-gallery" unicode="&#xe957;" d="M817 350c75 0 137-58 141-133l0-9v-179c0-75-58-137-133-142l-8 0h-179c-75 0-138 59-142 134l0 8v179c0 75 58 138 133 142l9 0h179z m0-42h-179c-50 0-96-41-100-91l0-9v-179c0-50 41-96 91-100l9 0h179c50 0 96 42 100 92l0 8v179c0 50-42 96-92 100l-8 0z m-88-66c67 0 121-54 121-121s-54-121-121-121-121 54-121 121 55 121 121 121z m-521 25c25 0 42-17 42-42v-167c0-25-17-41-42-41h-166c-25 0-42 16-42 41v167c0 25 17 42 42 42h166z m242 0c13 0 21-9 21-21 0-8-8-17-17-21l-4 0h-117v-167h117c13 0 21-8 21-20 0-9-8-17-17-21l-4 0h-117c-20 0-37 16-41 37l0 4v167c0 21 16 38 37 42l4 0h117z m279-67c-41 0-79-33-79-79 0-42 33-79 79-79s79 33 79 79c0 42-37 79-79 79z m-521 25h-166v-167h166v167z m650 38c17 0 30-13 30-30 0-16-13-29-30-29s-29 13-29 29c0 17 13 30 29 30z m-650 295c25 0 42-16 42-41v-167c0-25-17-42-42-42h-166c-25 0-42 17-42 42v167c0 25 17 41 42 41h166z m292 0c25 0 42-16 42-41v-134c0-12-9-20-21-20s-21 12-21 20v134h-167v-167h125c13 0 21-8 21-21s-8-21-21-21h-125c-25 0-41 17-41 42v167c0 25 16 41 41 41h167z m-292-41h-166v-167h166v167z m584 41c25 0 41-16 41-41v-109c0-12-8-20-20-20s-21 8-21 20v109h-167v-109c0-12-8-20-21-20s-21 8-21 20v109c0 25 17 41 42 41h167z m-584 292c25 0 42-17 42-42v-166c0-25-17-42-42-42h-166c-25 0-42 17-42 42v166c0 25 17 42 42 42h166z m292 0c21 0 38-17 42-37l0-5v-166c0-21-17-38-38-42l-4 0h-167c-20 0-37 17-41 38l0 4v166c0 21 16 38 37 42l4 0h167z m292 0c21 0 37-17 41-37l0-5v-166c0-21-16-38-37-42l-4 0h-167c-21 0-37 17-42 38l0 4v166c0 21 17 38 38 42l4 0h167z m-584-42h-166v-166h166v166z m292 0h-167v-166h167v166z m292 0h-167v-166h167v166z" horiz-adv-x="1000" />

<glyph glyph-name="instagram-likes" unicode="&#xe958;" d="M846 538c-71 208-300 166-346 41-42 125-271 167-346-41-62-188 188-417 346-521 158 104 408 333 346 521z" horiz-adv-x="1000" />

<glyph glyph-name="facebook" unicode="&#xe959;" d="M858 808h-716c-54 0-100-45-100-100v-721c0-50 46-95 100-95h279v312h-129v146h129v113c0 129 75 195 192 195 54 0 112-8 112-8v-125h-62c-63 0-84-37-84-79v-96h142l-21-146h-117v-312h280c54 0 100 45 100 100v716c-5 55-50 100-105 100l0 0z" horiz-adv-x="1000" />

<glyph glyph-name="twitter" unicode="&#xe95a;" d="M863 538c0-9 0-17 0-25 0-250-188-534-534-534-108 0-204 29-287 84 16 0 29-5 46-5 87 0 166 30 233 80-83 0-150 54-175 129 12 0 25-4 37-4 17 0 34 4 50 8-87 17-150 92-150 183v9c25-13 55-21 84-25-50 33-84 91-84 158 0 33 9 67 25 96 92-113 234-188 388-196-4 12-4 29-4 42 0 104 83 187 187 187 54 0 104-21 138-58 41 8 83 25 121 46-13-42-42-80-84-105 38 5 75 13 109 30-30-38-63-71-100-100z" horiz-adv-x="1000" />

<glyph glyph-name="pinterest" unicode="&#xe95b;" d="M950 354c0-250-204-454-454-454-46 0-92 8-133 21 16 29 45 79 58 121 4 21 29 108 29 108 17-29 58-54 104-54 138 0 238 125 238 283 0 150-121 263-279 263-196 0-300-134-300-275 0-67 37-150 91-175 9-4 13-4 17 4 0 4 8 37 12 50 0 4 0 8-4 12-16 25-33 67-33 105-8 100 71 195 200 195 112 0 192-75 192-183 0-125-63-208-142-208-46 0-79 37-67 83 13 54 38 113 38 150 0 33-17 63-59 63-45 0-83-46-83-109 0-41 13-66 13-66s-46-192-55-225c-8-38-4-96 0-130-170 63-291 230-291 421 0 250 204 454 454 454s454-204 454-454z" horiz-adv-x="1000" />

<glyph glyph-name="frame-expand" unicode="&#xe95c;" d="M863 267c27 0 51-22 53-49l1-5v-226l-1-5c-2-25-23-46-48-48l-5-1h-225l-6 1c-25 2-46 23-48 48l-1 5 1 6c2 25 23 46 48 48l6 1h170v171l1 5c2 27 26 49 54 49z m-725 0c27 0 51-22 53-49l1-5v-171h171c27 0 51-22 53-49l1-6c0-27-22-51-49-53l-5-1h-225c-28 0-52 22-54 49l-1 5v226c0 30 25 54 55 54z m725 500c27 0 51-22 53-49l1-5v-225c0-30-24-55-54-55-28 0-52 22-54 49l-1 6v170h-170c-28 0-52 22-54 49l-1 6c0 27 22 51 49 53l6 1h225z m-500 0l5-1c25-2 46-23 48-48l1-5-1-6c-2-25-23-46-48-48l-5-1h-171v-170l-1-6c-2-27-26-49-53-49s-52 22-54 49l-1 6v225l1 5c2 25 23 46 48 48l6 1h225z" horiz-adv-x="1000" />

<glyph glyph-name="frame-minimize" unicode="&#xe95d;" d="M363 267c29 0 50-21 54-50l0-4v-226c0-29-25-54-54-54-30 0-50 21-55 50l0 4v171h-170c-30 0-50 21-55 50l0 5c0 29 21 50 50 54l5 0h225z m275 0c-30 0-50-21-55-50l0-4v-226c0-29 25-54 55-54 29 0 50 21 54 50l0 4v171h171c29 0 50 21 54 50l0 5c0 29-21 50-50 54l-4 0h-225z m-275 166c29 0 50 21 54 50l0 5v225c0 29-25 54-54 54-30 0-50-21-55-50l0-4v-171h-170c-30 0-50-21-55-50l0-4c0-30 21-50 50-55l5 0h225z m275 0c-30 0-50 21-55 50l0 5v225c0 29 25 54 55 54 29 0 50-21 54-50l0-4v-171h171c29 0 50-21 54-50l0-4c0-30-21-50-50-55l-4 0h-225z" horiz-adv-x="1000" />

<glyph glyph-name="archive" unicode="&#xe95e;" d="M896 788c54 0 100-38 104-88l0-8v-688c0-50-42-92-96-92l-8 0h-792c-54 0-100 38-104 88l0 8v688c0 50 42 92 96 92l8 0h792z m0-42h-792c-33 0-58-21-62-46l0-4v-688c0-25 25-50 58-50l4 0h792c33 0 58 21 62 46l0 4v688c0 25-25 50-58 50l-4 0z m-667-554c13 0 21-9 21-21v-83c0-13-8-21-21-21h-83c-13 0-21 8-21 21v83c0 12 8 21 21 21h83z m209-84c12 0 20-8 20-20 0-13-8-21-20-21h-125c-13 0-21 8-21 21 0 12 8 20 21 20h125z m208 84c12 0 21-9 21-21v-83c0-13-9-21-21-21h-83c-13 0-21 8-21 21v83c0 12 8 21 21 21h83z m208-84c13 0 21-8 21-20 0-13-8-21-21-21h-125c-12 0-21 8-21 21 0 12 9 20 21 20h125z m-646 42h-41v-42h41v42z m417 0h-42v-42h42v42z m-187 42c12 0 20-9 20-21 0-13-8-21-20-21h-125c-13 0-21 8-21 21 0 12 8 21 21 21h125z m416 0c13 0 21-9 21-21 0-13-8-21-21-21h-125c-12 0-21 8-21 21 0 12 9 21 21 21h125z m-625 208c13 0 21-8 21-21v-83c0-13-8-21-21-21h-83c-13 0-21 8-21 21v83c0 13 8 21 21 21h83z m209-83c12 0 20-9 20-21s-8-21-20-21h-125c-13 0-21 8-21 21s8 21 21 21h125z m208 83c12 0 21-8 21-21v-83c0-13-9-21-21-21h-83c-13 0-21 8-21 21v83c0 13 8 21 21 21h83z m208-83c13 0 21-9 21-21s-8-21-21-21h-125c-12 0-21 8-21 21s9 21 21 21h125z m-646 41h-41v-41h41v41z m417 0h-42v-41h42v41z m-187 42c12 0 20-8 20-21s-8-21-20-21h-125c-13 0-21 9-21 21s8 21 21 21h125z m416 0c13 0 21-8 21-21s-8-21-21-21h-125c-12 0-21 9-21 21s9 21 21 21h125z m-625 208c13 0 21-8 21-20v-84c0-12-8-21-21-21h-83c-13 0-21 9-21 21v84c0 12 8 20 21 20h83z m209-83c12 0 20-8 20-21s-8-21-20-21h-125c-13 0-21 9-21 21s8 21 21 21h125z m208 83c12 0 21-8 21-20v-84c0-12-9-21-21-21h-83c-13 0-21 9-21 21v84c0 12 8 20 21 20h83z m208-83c13 0 21-8 21-21s-8-21-21-21h-125c-12 0-21 9-21 21s9 21 21 21h125z m-646 42h-41v-42h41v42z m417 0h-42v-42h42v42z m-187 41c12 0 20-8 20-20 0-13-8-21-20-21h-125c-13 0-21 8-21 21 0 12 8 20 21 20h125z m416 0c13 0 21-8 21-20 0-13-8-21-21-21h-125c-12 0-21 8-21 21 0 12 9 20 21 20h125z" horiz-adv-x="1000" />

<glyph glyph-name="colors-typography" unicode="&#xe95f;" d="M896 808c55 0 100-41 104-93l0-7v-757c0-54-43-97-97-101l-7 0h-792c-55 0-100 41-104 94l0 6v758c0 53 43 97 98 100l6 0h792z m62-208h-916v-650c0-30 24-55 56-58l6 0h792c32 0 59 23 62 53l0 6v649z m-333-642c-5 0-9 2-13 5l-2 2-2 2-1-2c-2-3-5-5-8-5l-4-1-3-1h-84c-10 0-18 8-20 17l0 4v167c0 46 35 84 81 87l6 0 59 0-13 80c0 35 25 64 59 70l5 0 7 1c37 0 67-29 70-68l0-6-12-76 58 0c45 0 81-33 87-75l1-6 0-7v-166c0-11-7-19-17-21l-4-1h-250z m229 134h-325v-92h46l13 51c5 18 28 21 37 7l2-3 1-4 13-51h47v46c0 12 9 21 20 21 11 0 19-8 21-17l0-4v-46h42v46c0 12 9 21 21 21 10 0 18-8 20-17l1-4v-46h41v92z m-312 425c10 0 18-8 20-17l1-4v-99c0-27-38-28-42-4l-1 7c-1 8-7 14-15 15l-3 1-118 0 0-297c0-8 5-15 12-17l4-1 8-1c20-4 21-33 3-40l-3-1-5-1h-139l-4 1c-22 4-22 37 0 41l8 0c7 2 13 8 15 15l0 4 0 296-118 0c-8 0-15-5-17-12l-1-3-1-8c-4-22-37-22-41 0l0 4v100c0 10 7 19 17 20l3 1h417z m-21-42h-375v-21l2 1 5 1 0 0 6 1 6 0h138c11 0 19-7 21-17l0-4v-317c0-4 0-8-1-12l-1-5-1-2h24l0 2-2 5 0 0 0 6-1 6v317c0 11 8 19 17 21l4 0h139c3 0 8 0 11-1l6-1 2-1v21z m171-133c-15 0-27-11-29-22l-1-4 17-100c2-11-6-22-17-23l-4-1h-83c-24 0-43-18-45-41l-1-5v-13h325v13c0 22-15 40-36 44l-5 1-5 1h-83c-12 0-21 9-21 20l1 4 16 97c0 16-13 29-29 29z m204 425h-792c-32 0-59-24-62-54l0-5v-66h916v66c0 30-24 56-56 59l-6 0z m-771-63c0-11-9-21-21-21s-21 10-21 21 10 21 21 21 21-9 21-21m83 0c0-11-9-21-20-21s-21 10-21 21 9 21 21 21 20-9 20-21m84 0c0-11-9-21-21-21-12 0-21 10-21 21s9 21 21 21c12 0 21-9 21-21" horiz-adv-x="1000" />

<glyph glyph-name="custom" unicode="&#xe960;" d="M896 788c54 0 100-38 104-87l0-7v-688c0-50-43-90-97-93l-7-1h-792c-54 0-100 38-104 87l0 7v688c0 50 43 90 97 93l7 1h792z m0-42h-792c-33 0-59-21-62-47l0-5v-688c0-26 24-49 56-51l6-1h792c33 0 59 21 62 47l0 5v688c0 26-24 49-56 51l-6 1z m-549-87l3-3 150-150 135 136c14 13 30 20 48 21l7 0c15-1 30-7 42-17l5-4 55-56c26-26 28-68 4-96l-4-5-136-135 150-150c7-7 8-18 3-27l-3-3-126-126c-7-7-19-8-27-3l-3 3-150 150-100-100c-1-1-2-2-4-3l-3-1 0 0-1-1-178-51c-14-4-28 8-26 23l1 3 51 179 0 0 1 3 0 0 2 2 0 0 2 2 99 100-150 150c-7 7-8 18-3 27l3 3 126 126c8 8 19 9 27 3z m280-339l-98-97 136-135 97 97-9 9-23-24c-8-8-21-8-30 0-7 8-7 19-2 27l2 3 24 23-9 9-10-11c-9-8-22-8-30 0-7 7-8 19-2 27l2 3 10 11-8 8-24-23c-8-8-21-8-29 0-7 7-8 18-3 27l3 3 23 23-20 20z m-358-124l-31-107 108 31-77 76z m417 425l-5-1c-4 0-9-2-13-5l-3-3-377-377 98-97 376 376c5 5 8 11 8 17l1 4c0 7-2 13-6 18l-3 4-55 55c-4 4-10 7-17 8l-4 1z m44-41c8-7 8-18 3-26l-3-3-355-355c-8-8-21-8-29 0-7 7-8 18-3 27l3 2 355 355c8 8 21 8 29 0z m-395 32l-97-97 135-135 98 97-21 21-24-23c-8-8-21-8-29 0-7 7-8 18-3 27l3 3 23 23-9 9-10-11c-8-8-21-8-30 0-7 7-8 18-2 27l2 2 11 11-9 9-23-24c-8-8-21-8-30 0-7 7-7 18-2 27l2 2 24 24-9 8z" horiz-adv-x="1000" />

<glyph glyph-name="footer" unicode="&#xe961;" d="M896 788c58 0 104-42 104-92v-688c0-54-46-91-104-91h-792c-58 0-104 41-104 91v688c0 54 46 92 104 92h792z m62-667h-916v-117c0-29 29-50 62-50h792c33 0 62 25 62 50v117z m-62 625h-792c-33 0-62-25-62-50v-533h916v533c0 25-29 50-62 50z" horiz-adv-x="1000" />

<glyph glyph-name="header" unicode="&#xe962;" d="M896 788c54 0 100-38 104-88l0-8v-688c0-50-42-92-96-92l-8 0h-792c-54 0-100 38-104 88l0 8v688c0 50 42 92 96 92l8 0h792z m62-209h-916v-575c0-25 25-50 58-50l4 0h792c33 0 58 21 62 46l0 4v575z m-62 167h-792c-33 0-58-21-62-46l0-4v-75h916v75c0 25-25 50-58 50l-4 0z" horiz-adv-x="1000" />

<glyph glyph-name="layout-settings" unicode="&#xe963;" d="M896 808c55 0 100-43 104-97l0-7v-750c0-55-43-100-97-104l-7 0h-792c-55 0-100 43-104 97l0 7v750c0 56 43 101 98 104l6 0h792z m-750-354h-104v-500c0-32 24-59 56-62l6 0h42v83h-42c-11 0-21 9-21 21 0 10 8 19 17 20l4 1h42v83h-42c-11 0-21 9-21 21 0 10 8 19 17 20l4 1h42v83h-42c-11 0-21 9-21 21 0 10 8 19 17 20l4 1h42v83h-42c-11 0-21 9-21 21 0 10 8 19 17 20l4 1h42v62z m812 0h-770v-562h708c32 0 59 24 62 56l0 6v500z m-687-312c12 0 21-9 21-21 0-11-8-19-17-21l-4 0h-42c-11 0-21 9-21 21 0 10 8 19 17 20l4 1h42z m125 0c12 0 21-9 21-21 0-11-8-19-17-21l-4 0h-42c-11 0-21 9-21 21 0 10 8 19 17 20l4 1h42z m125 41c10 0 19-7 20-17l1-3v-42c0-11-8-19-17-21l-4 0h-42c-11 0-21 9-21 21 0 10 8 19 17 20l4 1h21v21c0 10 8 18 17 20l4 0z m0 125c10 0 19-7 20-17l1-3v-42c0-12-9-21-21-21-11 0-19 8-21 17l0 4v42c0 11 9 20 21 20z m0 125c10 0 19-7 20-17l1-3v-42c0-12-9-21-21-21-11 0-19 8-21 17l0 4v42c0 11 9 20 21 20z m-375 167h-104v-104h104v104z m812 0h-770v-104h62v42c0 11 9 20 21 20 10 0 19-7 20-17l1-3v-42h83v42c0 11 9 20 21 20 10 0 19-7 20-17l1-3v-42h83v42c0 11 9 20 21 20 10 0 19-7 20-17l1-3v-42h83v42c0 11 9 20 21 20 10 0 19-7 20-17l1-3v-42h83v42c0 11 9 20 21 20 10 0 19-7 20-17l1-3v-42h83v42c0 11 9 20 21 20 10 0 19-7 20-17l1-3v-42h41v104z m-62 167h-792c-32 0-59-25-62-57l0-6v-62h916v62c0 33-24 59-56 62l-6 1z m-792-42c12 0 21-9 21-21s-9-21-21-21-21 10-21 21 10 21 21 21z m84 0c11 0 20-9 20-21s-9-21-20-21-21 10-21 21 9 21 21 21z m83 0c12 0 21-9 21-21s-9-21-21-21c-12 0-21 10-21 21s9 21 21 21z" horiz-adv-x="1000" />

<glyph glyph-name="lightbox-expand" unicode="&#xe964;" d="M896 808c55 0 100-41 104-93l0-7v-757c0-54-43-97-97-101l-7 0h-792c-55 0-100 41-104 94l0 6v758c0 53 43 97 98 100l6 0h792z m62-208h-916v-650c0-30 24-55 56-58l6 0h792c32 0 59 23 62 53l0 6v649z m-545-146c12 0 21-9 21-21 0-10-7-18-17-20l-4 0h-71l149-150 149 150h-71c-10 0-19 7-20 17l-1 3c0 11 8 19 17 21l4 0 122 0c1 0 2 0 3 0l-3 0 2 0 0 0 3 0 0 0 3-1 0 0 2-1 0 0 2-2 0 0 2-1 2-2 0 0 2-3 0 0 1-4 0 0 1-2 0 0 1-2 0 0 0-2v-121c0-12-9-21-21-21-11 0-19 7-21 17l0 4 0 71-149-150 149-149 0 71c0 10 8 19 17 20l4 1c10 0 19-8 20-17l1-4v-122c0-1 0-3-1-4l-1-4 0 0-1-2 0 0-1-3 0 0-3-2-1-1 0 0-3-2 0 0-2-1 0 0-3-1 0 0-2-1-3 0h-122c-11 0-21 10-21 21 0 11 8 19 17 21l4 0 71 0-149 149-149-149 71 0c10 0 19-8 20-17l1-4c0-11-8-19-17-21l-4 0-124 0 0 0-4 1 0 0-3 1 0 0-3 2 0 0-2 2-2 1 0 0-2 3 0 0-1 4 0 0-1 3 0 2 0 0 0 123c0 12 9 21 21 21 10 0 18-8 20-17l1-4v-71l149 149-149 150v-71c0-11-8-19-18-21l-3 0c-11 0-19 7-21 17l0 4 0 122c0 1 0 1 0 2l0-3 0 2 0 0 0 3 0 0 1 3 0 0 2 3 0 0 1 3 0 0 2 1 1 2 0 0 3 1 0 0 2 2 0 0 3 0 0 0 4 1 0 0 123 0z m483 313h-792c-32 0-59-24-62-54l0-5v-66h916v66c0 30-24 56-56 59l-6 0z m-771-63c0-11-9-21-21-21s-21 10-21 21 10 21 21 21 21-9 21-21m83 0c0-11-9-21-20-21s-21 10-21 21 9 21 21 21 20-9 20-21m84 0c0-11-9-21-21-21-12 0-21 10-21 21s9 21 21 21c12 0 21-9 21-21" horiz-adv-x="1000" />

<glyph glyph-name="error-404" unicode="&#xe965;" d="M896 788c57 0 104-42 104-94v-688c0-52-47-94-104-94h-792c-57 0-104 42-104 94v688c0 52 47 94 104 94h792z m0-42h-792c-35 0-62-24-62-52v-688c0-28 27-52 62-52h792c35 0 62 24 62 52v688c0 28-27 52-62 52z m-596-266c5 0 9-2 13-5 3-3 5-8 5-14 0-3 0-6-3-9l-86-149 0 0 22-1 0 0 29 0 0 0 18-1v52l1 4c2 4 4 7 6 9 3 3 7 4 11 4 4 0 9-1 12-4 2-2 5-5 6-8l1-5v-53h28l4-1c4-2 7-4 9-7 3-3 4-7 4-11 0-4-2-8-5-12-2-2-6-4-10-6l-4-1-19 0-7 0v-49l0-4c-1-5-3-9-6-12-4-4-8-6-13-6-4 0-8 2-11 5-3 3-5 7-6 12l-1 4v51l-85 1c-5 0-10 0-15 0-13 2-20 9-20 20 0 2 0 4 1 6 11 20 22 40 34 60l17 30c17 29 35 59 52 89 2 4 5 7 8 9 4 1 7 2 10 2z m450 0c4 0 8-2 12-5 4-3 6-8 6-14 0-3-1-6-3-9l-86-149 0 0 21-1 0 0 29 0 0 0 19-1v52l1 4c1 4 3 7 6 9 3 3 7 4 11 4 4 0 8-1 12-4 2-2 4-5 6-8l1-5v-53h27l4-1c4-2 7-4 9-7 3-3 5-7 5-11 0-4-2-8-5-12-3-2-6-4-10-6l-4-1-19 0-7 0v-49l0-4c-1-5-3-9-6-12-4-4-9-6-13-6-4 0-8 2-12 5-3 3-5 7-6 12l0 4v51l-85 1c-5 0-10 0-15 0-14 2-20 9-20 20 0 2 0 4 0 6l17 30 0 0 18 30 42 74 26 45c3 4 6 7 9 9 3 1 6 2 10 2z m-242 5l10-1c7 0 13-2 20-5 6-3 12-6 18-10s12-9 17-14c8-9 15-20 20-32 5-11 9-24 11-36s3-26 3-39-1-25-2-38c-3-11-7-23-12-36-6-13-13-26-20-37-8-11-18-21-28-29-11-8-23-13-36-15-9-1-17-1-25-1-9 1-16 3-25 7-6 4-12 7-19 10-5 4-11 9-15 14-7 10-13 21-18 32s-7 23-9 35-3 25-3 37c0 13 1 25 3 37 1 13 5 26 10 40s12 26 20 38c8 12 18 21 30 29 12 8 25 12 40 13l10 1 0 0z m7-39c-8 2-16 1-24-1-8-2-16-7-23-13-10-9-18-22-24-38s-10-34-11-52-1-36 2-53 10-30 19-41c5-6 11-10 16-12 6-3 13-4 21-6 12 1 22 4 30 9s16 11 22 19 10 15 14 25c3 6 5 13 7 20l2 10 1 3 1 14 1 13c1 10 0 19-1 28-2 8-3 16-5 24s-5 15-10 23c-5 7-10 14-17 19-6 5-14 8-21 9z" horiz-adv-x="1000" />

<glyph glyph-name="theme-style" unicode="&#xe966;" d="M945 741c40-24 55-75 34-117l-4-7-183-292v-275l-1-7c-3-52-45-93-97-97l-6 0h-584l-6 0c-53 4-94 45-98 97l0 7v583l0 7c4 53 45 94 98 98l6 0h584l6-1c47-3 86-37 95-82l32 55c26 43 81 57 124 31z m-257-45h-584l-6 0c-29-3-53-27-56-56l0-7v-583l0-6c3-29 27-53 56-56l6-1h584l5 1c30 3 54 27 57 56l0 6v209l-33-53c18-51 1-115-47-159l-7-6c-75-63-202-69-273 6-10 10-7 26 5 33l3 1 2 1c4 2 10 5 17 11l0 3v267c0 10 7 18 17 20l4 0 196 0 24 42-533 0c-10 0-19 8-20 17l-1 4v167c0 10 8 18 17 20l4 0h542c10 0 18-7 20-17l1-3v-136l62 109v47l0 6c-3 30-27 54-57 56l-5 1z m-25-479c-35 36-81 38-118 2-10-9-16-19-22-31-3-5-4-9-6-14l-2-6-9-25c-8-26-16-40-31-55-10-9-18-17-26-23l-6-5-2-1 5-4c52-31 125-26 177 8l7 5 7 5c49 42 60 108 26 144z m-309 166c11 0 19-7 21-17l0-3v-292c0-11-7-19-17-21l-4 0h-229c-10 0-19 8-20 17l-1 4v292c0 10 8 18 17 20l4 0h229z m-21-41h-187v-250h187v250z m125 0l0-207c2 4 5 9 7 15l5 14 4 13 4 12c1 2 1 4 2 5l2 5 4 7c7 16 17 30 30 42 18 18 38 29 59 35l3 0 33 58-153 1z m217 31l-50-88c21-5 42-15 60-32l7-7 53 85-70 42z m185 321l-3-4-161-282 72-43 172 274c13 23 6 53-17 66-21 13-48 8-63-11z m-214-102h-500v-125h500v125z" horiz-adv-x="1000" />

<glyph glyph-name="search-results" unicode="&#xe967;" d="M896 788c57 0 104-42 104-94v-688c0-52-47-94-104-94h-792c-57 0-104 42-104 94v688c0 52 47 94 104 94h792z m0-42h-792c-35 0-62-24-62-52v-688c0-28 27-52 62-52h792c35 0 62 24 62 52v688c0 28-27 52-62 52z m-228-354c82 0 148-66 148-148 0-34-11-64-30-89l71-73c8-8 8-21 0-29-8-8-19-8-27-3l-3 3-71 72c-25-17-55-28-88-28-81 0-147 66-147 147s66 148 147 148z m-168-271c12 0 21-9 21-21 0-10-8-19-17-20l-4-1h-333c-12 0-21 9-21 21 0 10 7 19 17 20l4 1h333z m168 229c-58 0-105-47-105-106s47-106 105-106 106 48 106 106-47 106-106 106z m-251-104c11 0 21-9 21-21 0-10-8-19-18-20l-3-1h-250c-12 0-21 9-21 21 0 10 7 19 17 20l4 1h250z m41 125c12 0 21-9 21-21 0-10-7-19-17-20l-4-1h-291c-12 0-21 9-21 21 0 10 7 19 17 20l4 1h291z m-83 125c12 0 21-9 21-21 0-10-8-19-17-20l-4-1h-208c-12 0-21 9-21 21 0 10 7 19 17 20l4 1h208z m250 0c12 0 21-9 21-21 0-10-8-19-17-20l-4-1h-167c-11 0-20 9-20 21 0 10 7 19 17 20l3 1h167z m208 0c12 0 21-9 21-21 0-10-7-19-17-20l-4-1h-125c-11 0-20 9-20 21 0 10 7 19 17 20l3 1h125z m-416 125c11 0 21-9 21-21 0-10-8-19-18-20l-3-1h-250c-12 0-21 9-21 21 0 10 7 19 17 20l4 1h250z m416 0c12 0 21-9 21-21 0-10-7-19-17-20l-4-1h-333c-12 0-21 9-21 21 0 10 8 19 17 20l4 1h333z" horiz-adv-x="1000" />

<glyph glyph-name="single-post" unicode="&#xe968;" d="M896 788c54 0 100-38 104-87l0-7v-688c0-50-43-90-97-93l-7-1h-792c-54 0-100 38-104 87l0 7v688c0 50 43 90 97 93l7 1h792z m0-42h-792c-33 0-59-21-62-47l0-5v-688c0-26 24-49 56-51l6-1h792c33 0 59 21 62 47l0 5v688c0 26-24 49-56 51l-6 1z m-63-625c12 0 21-9 21-21 0-10-7-19-17-20l-4-1h-666c-12 0-21 9-21 21 0 10 7 19 17 20l4 1h666z m0 125c12 0 21-9 21-21 0-10-7-19-17-20l-4-1h-666c-12 0-21 9-21 21 0 10 7 19 17 20l4 1h666z m-544 365l1-4 105-292c3-10-2-22-13-26-9-4-20 1-25 9l-2 3-25 70h-119l-25-70c-3-9-13-15-23-13l-3 0c-10 4-15 14-14 23l1 4 104 292c7 17 29 18 38 4z m544-240c12 0 21-9 21-21 0-10-7-19-17-20l-4-1h-333c-12 0-21 9-21 21 0 10 8 19 17 20l4 1h333z m-562 167l-45-125h89l-44 125z m562-42c12 0 21-9 21-21 0-10-7-19-17-20l-4-1h-333c-12 0-21 9-21 21 0 10 8 19 17 20l4 1h333z m0 125c12 0 21-9 21-21 0-10-7-19-17-20l-4-1h-333c-12 0-21 9-21 21 0 10 8 19 17 20l4 1h333z" horiz-adv-x="1000" />

<glyph glyph-name="site-identity" unicode="&#xe969;" d="M896 808c55 0 100-45 104-101l0-7v-742c0-57-43-104-97-108l-7 0h-792c-55 0-100 45-104 101l0 7v742c0 57 43 104 97 108l7 0h792z m62-208h-916v-642c0-35 25-63 56-66l6 0h792c32 0 59 26 62 60l0 6v642z m-604-125c127 0 229-102 229-229 0-68-29-128-75-170l-9-8 0 0c-9-7-17-13-26-19l-11-6 0 0-10-5 0 0-10-4-12-5 0 0-9-3 0 0-5-1 0 0-6-2 0 0-10-2 0 0-13-2 0 0-11-1 0 0-7-1 0 0-5 0c-3 0-6-1-10-1l-14 1 0 0-14 1 0 0-6 1 0 0-11 1 0 0-11 3 0 0-5 1 0 0-10 3 0 0-6 3 0 0-4 1 0 0-8 3 0 0-9 4 0 0-9 5 0 0c-10 5-19 11-28 17l-10 8 0 0c-51 42-83 106-83 177-1 128 102 230 228 230z m0-292c-50 0-94-27-117-69l-4-8-1-2 5-4 9-7 0 0 7-5 8-5c4-2 9-5 14-7l8-3 7-3c5-2 10-4 15-5l9-2 11-2c6-1 13-2 20-2l9-1 5 0 0 0 7 1 8 1 11 1 7 2 0 0 5 1 9 2 9 3 9 4c5 2 9 3 14 6l10 5 0 0 8 5c3 1 6 4 8 6l8 5 4 5-1 2c-19 41-59 70-105 76l-8 1-8-1z m500 0c11 0 19-7 21-17l0-3v-84c0-10-7-19-17-20l-4-1h-208c-11 0-19 8-21 17l0 4v84c0 10 8 18 17 20l4 0h208z m-21-41h-166v-42h166v42z m-479 291c-103 0-187-84-187-187 0-41 13-78 35-109 19 33 48 58 82 73-21 20-34 47-34 78 0 57 47 104 104 104s104-47 104-104c0-31-13-58-34-78 35-15 64-40 83-73 22 31 35 68 35 109 0 103-84 187-188 187z m0-83c-34 0-62-28-62-62s28-63 62-63 63 28 63 63-28 62-63 62z m500 83c11 0 19-7 21-17l0-3v-84c0-10-7-19-17-20l-4-1h-208c-11 0-19 8-21 17l0 4v84c0 10 8 18 17 20l4 0h208z m-21-41h-166v-42h166v42z m63 375h-792c-32 0-59-27-62-61l0-6v-58h916v58c0 35-25 63-56 66l-6 1z m-792-42c12 0 21-9 21-21s-9-21-21-21-21 10-21 21 10 21 21 21z m84 0c11 0 20-9 20-21s-9-21-20-21-21 10-21 21 9 21 21 21z m83 0c12 0 21-9 21-21s-9-21-21-21c-12 0-21 10-21 21s9 21 21 21z" horiz-adv-x="1000" />

<glyph glyph-name="theme-builder" unicode="&#xe96a;" d="M550 79c29 0 50-21 54-50l0-4v-100c0-29-21-50-50-54l-4 0h-100c-29 0-50 21-54 50l0 4v100c0 29 21 50 50 54l4 0h100z m375 0c29 0 50-21 54-50l0-4v-100c0-29-21-50-50-54l-4 0h-100c-29 0-50 21-54 50l0 4v100c0 29 21 50 50 54l4 0h100z m-750 0c29 0 50-21 54-50l0-4v-100c0-29-21-50-50-54l-4 0h-100c-29 0-50 21-54 50l0 4v100c0 29 21 50 50 54l4 0h100z m375-41h-100c-4 0-12-5-12-9l0-4v-100c0-4 4-13 8-13l4 0h100c4 0 13 5 13 9l0 4v100c0 4-5 13-13 13l0 0z m375 0h-100c-4 0-12-5-12-9l0-4v-100c0-4 4-13 8-13l4 0h100c4 0 13 5 13 9l0 4v100c0 4-5 13-13 13l0 0z m-750 0h-100c-4 0-12-5-12-9l0-4v-100c0-4 4-13 8-13l4 0h100c4 0 13 5 13 9l0 4v100c0 4-5 13-13 13l0 0z m325 375c8 0 17-9 21-17l0-4v-104h229c79 0 146-67 146-146 0-13-8-21-21-21s-21 8-21 21c0 54-41 100-96 104l-8 0h-229v-104c0-13-8-21-21-21-8 0-17 8-21 17l0 4v104h-229c-58 0-104-46-104-104 0-13-8-21-21-21s-21 8-21 21c0 79 63 141 138 146l8 0h229v104c0 12 9 21 21 21z m83 416c55 0 100-41 105-96l0-8v-167c0-54-42-100-96-104l-9 0h-166c-54 0-100 42-104 96l0 8v167c0 54 41 100 95 104l9 0h166z m0-41h-166c-34 0-59-25-63-59l0-4v-167c0-33 25-58 59-62l4 0h166c34 0 59 25 63 58l0 4v167c0 33-25 58-58 63l-5 0z" horiz-adv-x="1000" />

<glyph glyph-name="download-bold" unicode="&#xe96b;" d="M572 808h-144c-23 0-43-19-43-43v-300h-157c-31 0-48-39-25-62l272-272c14-13 36-13 49 0l273 272c22 23 6 62-26 62h-157v300c1 24-19 43-42 43z m386-873v200c0 24-19 43-43 43h-262l-88-88c-36-36-94-36-130 0l-88 88h-262c-24 0-43-19-43-43v-200c0-24 19-43 43-43h830c24 0 43 19 43 43z m-222 42c0 20-16 36-36 36-19 0-35-16-35-36 0-19 16-35 35-35 20 0 36 16 36 35z m79 36c20 0 36-16 36-36 0-19-16-35-36-35-20 0-36 16-36 35 0 20 16 36 36 36z" horiz-adv-x="1000" />

<glyph glyph-name="share-arrow" unicode="&#xe96c;" d="M946 467l-279 250c-25 21-63 4-63-29v-130c-366-4-533-345-562-520 196 225 321 291 562 295v-141c0-34 38-50 63-29l279 245c17 17 17 42 0 59z" horiz-adv-x="1000" />

<glyph glyph-name="global-settings" unicode="&#xe96d;" d="M816 302c49-10 92-36 127-74 3-4 5-10 5-16-1-4-3-9-6-12l-2-2c-9-7-12-18-6-27 4-8 13-11 22-9l4 1c5 2 11 2 16 0 6-3 9-7 12-12 8-26 12-50 12-73 0-24-4-48-12-74-2-5-6-10-12-12-4-2-8-2-13-1l-3 1c-10 4-21 1-26-8-5-8-4-17 3-24l3-2c4-3 7-9 8-15 0-6-1-11-5-16-34-38-78-64-127-73-1-1-2-1-4-1-4 0-9 2-12 4-4 3-7 7-8 12l-1 3c-1 11-10 19-20 19-9 0-17-6-20-16l-1-3c0-6-3-11-8-15s-11-4-16-3c-49 9-93 35-127 73-4 5-6 10-5 16 1 5 3 9 6 12l2 3c9 7 11 17 6 27-5 7-13 11-22 9l-4-2c-5-2-11-2-17 0-5 3-9 7-11 13-9 25-13 49-13 73 0 24 4 47 13 73 2 6 6 10 11 12 5 2 9 3 14 2l3-2c10-4 21 0 26 8 5 8 3 18-3 24l-3 3c-4 3-7 8-8 14-1 6 1 12 5 16 34 39 78 64 126 74 6 1 12 0 17-4 3-3 6-7 8-11l0-4c2-10 10-18 20-18 10 0 18 6 20 15l1 3c0 6 4 12 8 15 5 4 11 5 17 4z m-337 546c264 0 479-215 479-479 0-17 0-34-3-53-1-11-12-19-22-18-12 1-20 12-19 23 1 9 2 18 2 27l-416 0 0-416c9 0 18 1 27 2 11 1 22-7 23-19 1-11-7-21-18-23-19-2-36-2-53-2-264 0-479 215-479 479s215 479 479 479z m346-592c-10-20-31-33-54-33s-44 13-55 33c-27-8-51-23-73-43 12-19 13-43 2-63-12-20-34-31-56-30-4-15-6-29-6-43 0-14 2-27 6-42 22 1 44-10 56-31 11-20 10-44-2-63 22-20 46-35 73-43 11 20 32 33 55 33s44-13 54-33c28 8 52 23 73 43-10 17-12 39-4 58l3 5c12 20 33 32 56 31 4 15 5 29 5 43 0 13-1 27-5 42-23 0-44 10-56 30-12 20-10 45 1 64-20 19-45 34-73 42z m-367-158l-157 0c38-91 94-153 157-165l0 165z m-203 0l-119 0c52-67 124-118 207-145-36 36-66 85-88 145z m516 83c57 0 104-46 104-104s-47-104-104-104-104 47-104 104 46 104 104 104z m0-41c-35 0-63-28-63-63 0-34 28-62 63-62s62 28 62 62c0 35-28 63-62 63z m-562 208l-166 0c3-76 26-147 64-208l134 0c-17 55-28 118-31 185l-1 23z m249 0l-208 0c3-75 15-147 35-208l174 0v208z m-218 250l-133 0c-38-61-61-132-65-208l166 0c2 75 14 146 32 208z m218 0l-173 0c-20-62-33-133-35-208l208 0v208z m215 0l-173 0v-208l208 0c-2 68-13 133-30 191l-5 17z m179 0l-134 0c19-62 30-133 32-208l166 0c-3 70-23 137-57 195l-7 13z m-509 187l-10-4c-79-28-147-77-197-141l119 0c22 59 52 109 88 145z m-42-145l157 0 0 164c-60-11-114-69-153-154l-4-10z m199 165l0-165 158 0c-37 87-90 148-150 163l-8 2z m116-20l1-1c35-36 64-85 87-144l119 0c-53 66-125 117-207 145z" horiz-adv-x="1000" />

<glyph glyph-name="user-preferences" unicode="&#xe96e;" d="M167 829c11 0 21-9 21-21v-62h20c58 0 105-47 105-104v-84c0-57-47-104-105-104h-20v-562c0-12-10-21-21-21s-21 9-21 21v562h-21c-57 0-104 47-104 104v84c0 57 47 104 104 104h21v62c0 12 9 21 21 21z m333 0c12 0 21-9 21-21v-312h21c57 0 104-47 104-104v-84c0-57-47-104-104-104h-21v-312c0-12-9-21-21-21s-21 9-21 21v312h-21c-57 0-104 47-104 104v84c0 57 47 104 104 104h21v312c0 12 9 21 21 21z m333 0c12 0 21-9 21-21v-562h21c58 0 104-47 104-104v-84c0-57-46-104-104-104h-21v-62c0-12-9-21-21-21s-20 9-20 21v62h-21c-58 0-104 47-104 104v84c0 57 46 104 104 104h21v562c0 12 9 21 20 21z m42-625h-83c-35 0-63-28-63-62v-84c0-34 28-62 63-62h83c35 0 63 28 63 62v84c0 34-28 62-63 62z m-333 250h-84c-34 0-62-28-62-62v-84c0-34 28-62 62-62h84c34 0 62 28 62 62v84c0 34-28 62-62 62z m-334 250h-83c-35 0-62-28-62-62v-84c0-34 27-62 62-62h83c35 0 63 28 63 62v84c0 34-28 62-63 62z" horiz-adv-x="1000" />

<glyph glyph-name="lock" unicode="&#xe96f;" d="M500 842c149 0 272-115 283-264l0-10 0-10v-125h79c53 0 96-43 96-96v-392c0-53-43-95-96-95h-724c-53 0-96 42-96 95v392c0 53 43 96 96 96h79l0 126 0 11c6 151 131 272 283 272z m0-575c-42 0-76-31-82-71l-1-6 0-7v-93l0 0c5-41 40-73 83-73 40 0 74 28 82 67l1 6 0 0v93c0 46-37 84-83 84z m0 466c-91 0-167-70-174-158l-1-8 0-9 0-125h350l0 124 0 8c-4 94-81 168-175 168z" horiz-adv-x="1000" />

<glyph glyph-name="export-kit" unicode="&#xe970;" d="M838 767c64 0 117-51 120-115l0-7v-235c0-23-18-42-41-42-22 0-39 16-42 37l0 5v32h-750v-404c0-20 15-35 33-38l4 0h676c19 0 35 15 37 34l0 4c0 23 19 42 42 42s41-19 41-42c0-64-50-118-113-121l-7 0h-676c-64 0-117 50-120 114l0 7v607c0 65 50 118 113 122l7 0h676z m-5-427c6 0 11-2 15-6l104-98c8-8 8-21 1-30l-105-98c-9-8-22-8-30 0-4 4-6 10-6 15l0 56h-271c-23 0-41 19-41 41 0 22 16 40 36 42l5 0h271l0 56c1 12 10 22 21 22z m5 343h-676c-19 0-35-14-37-33l0-5v-120h750v120c0 20-15 36-33 38l-4 0z m-633-38c23 0 42-19 42-42s-19-41-42-41-42 18-42 41 19 42 42 42z m122 0c23 0 41-19 41-42s-18-41-41-41-42 18-42 41 19 42 42 42z m121 0c23 0 42-19 42-42s-19-41-42-41c-23 0-41 18-41 41s18 42 41 42z" horiz-adv-x="1000" />

<glyph glyph-name="import-kit" unicode="&#xe971;" d="M838 767c64 0 117-51 120-115l0-7v-235c0-23-18-42-41-42-22 0-39 16-42 37l0 5v32h-750v-404c0-20 15-35 33-38l4 0h676c19 0 35 15 37 34l0 4c0 23 19 42 42 42s41-19 41-42c0-64-50-118-113-121l-7 0h-676c-64 0-117 50-120 114l0 7v607c0 65 50 118 113 122l7 0h676z m-213-427c-5 0-10-2-14-6l-104-98c-9-8-9-21-1-30l105-98c8-8 22-8 29 0 4 4 6 10 6 15l0 56h271c23 0 42 19 42 41 0 22-16 40-37 42l-5 1h-271l0 56c0 11-9 21-21 21z m213 343h-676c-19 0-35-14-37-33l0-5v-120h750v120c0 20-15 36-33 38l-4 0z m-633-38c23 0 42-19 42-42s-19-41-42-41-42 18-42 41 19 42 42 42z m122 0c23 0 41-19 41-42s-18-41-41-41-42 18-42 41 19 42 42 42z m121 0c23 0 42-19 42-42s-19-41-42-41c-23 0-41 18-41 41s18 42 41 42z" horiz-adv-x="1000" />

<glyph glyph-name="lottie" unicode="&#xe972;" d="M200 767c13 0 23-11 23-24s-10-23-23-23-23 10-23 23 10 24 23 24z m47-64c7 11 21 14 32 7 36-24 64-55 86-86 8-11 5-25-5-33s-25-5-33 6c-19 27-44 54-74 73-10 8-13 22-6 33z m137-146c11 6 25 2 31-10 24-44 43-93 52-146 0-3 1-8 1-12l1-9 64 0c11 0 21-8 22-19l1-4c0-12-8-21-20-23l-3 0-62 0 0-14 0-15-1-19c-1-16-2-30-3-40-12-103-50-190-117-246-63-55-172-73-249-4-38 35-63 88-58 159 5 70 35 118 85 157 59 47 152 67 269 68l25 0 0 3-2 11c-7 46-25 91-46 131-6 11-1 25 10 32z m41-223l-12 0c-115 0-205-17-256-58-41-33-64-68-68-124-4-56 15-95 44-121 56-51 140-36 187 4 57 49 90 124 101 217l1 13c1 9 2 21 2 33l1 16 0 20z m377 42l130-3c13-1 23-12 23-25-1-11-10-20-20-22l-4 0-130 4c-13 0-23 11-23 24 1 11 10 21 20 22l4 0z m-155 5l67-2c13-1 23-11 22-24 0-12-9-21-20-23l-3 0-67 2h-25c-13 0-23 10-23 23 0 12 8 21 19 23l4 0 26 1z" horiz-adv-x="1000" />

<glyph glyph-name="products-archive" unicode="&#xe973;" d="M896 788c54 0 100-38 104-87l0-7v-688c0-50-43-90-97-93l-7-1h-792c-54 0-100 38-104 87l0 7v688c0 50 43 90 97 93l7 1h792z m0-42h-792c-33 0-59-21-62-47l0-5v-688c0-26 24-49 56-51l6-1h792c33 0 59 21 62 47l0 5v688c0 26-24 49-56 51l-6 1z m7-417c7 0 14-6 14-14v-305c0-8-7-14-14-14h-368c-8 0-14 6-14 14v305c0 8 6 14 14 14h368z m-438 0c8 0 14-6 14-14v-305c0-8-6-14-14-14h-368c-7 0-14 6-14 14v305c0 8 7 14 14 14h368z m410-41h-312v-250h312v250z m-437 0h-313v-250h313v250z m-171-192c11 0 21-9 21-21s-10-21-21-21c-12 0-21 9-21 21s9 21 21 21z m64 0c12 0 21-9 21-21s-9-21-21-21c-11 0-21 9-21 21s10 21 21 21z m373 0c12 0 21-9 21-21s-9-21-21-21-21 9-21 21 10 21 21 21z m65 0c11 0 21-9 21-21s-10-21-21-21c-12 0-21 9-21 21s9 21 21 21z m-554 175c8 0 15-4 18-11l2-3 7-22 121 0c15 0 28-11 30-25l0-5c0-2 0-4 0-6l-1-3-24-71c-4-11-13-18-25-20l-4 0h-76c-11 0-22 6-27 16l-1 4-35 104-12 0c-11 0-19 8-21 17l0 4c0 10 7 19 17 20l4 1h27z m438 0c7 0 14-4 18-11l2-3 7-22 121 0c15 0 27-11 29-25l1-5c0-2-1-4-1-6l-1-3-24-71c-3-11-12-18-24-20l-4 0h-76c-11 0-22 6-27 16l-1 4-35 104-13 0c-10 0-18 7-20 17l-1 4c0 10 8 19 17 20l4 1h28z m-306-77h-92l16-48h59l17 48z m437 0h-91l16-48h59l16 48z m119 510c7 0 14-6 14-14v-305c0-8-7-14-14-14h-368c-8 0-14 6-14 14v305c0 8 6 14 14 14h368z m-438 0c8 0 14-6 14-14v-305c0-8-6-14-14-14h-368c-7 0-14 6-14 14v305c0 8 7 14 14 14h368z m410-41h-312v-250h312v250z m-437 0h-313v-250h313v250z m-171-192c11 0 21-9 21-21s-10-21-21-21c-12 0-21 9-21 21s9 21 21 21z m64 0c12 0 21-9 21-21s-9-21-21-21c-11 0-21 9-21 21s10 21 21 21z m373 0c12 0 21-9 21-21s-9-21-21-21-21 9-21 21 10 21 21 21z m65 0c11 0 21-9 21-21s-10-21-21-21c-12 0-21 9-21 21s9 21 21 21z m-554 175c8 0 15-4 18-11l2-3 7-22 121 0c15 0 28-11 30-25l0-5c0-2 0-4 0-6l-1-3-24-71c-4-11-13-18-25-20l-4 0h-76c-11 0-22 6-27 16l-1 4-35 104-12 0c-11 0-19 8-21 17l0 4c0 10 7 19 17 20l4 1h27z m438 0c7 0 14-4 18-11l2-3 7-22 121 0c15 0 27-11 29-25l1-5c0-2-1-4-1-6l-1-3-24-71c-4-11-13-18-24-20l-4 0h-77c-11 0-21 6-26 16l-2 4-34 104-13 0c-10 0-19 8-20 17l-1 4c0 10 8 19 17 20l4 1h28z m-306-77h-92l16-48h59l17 48z m437 0h-91l16-48h59l16 48z" horiz-adv-x="1000" />

<glyph glyph-name="single-product" unicode="&#xe974;" d="M896 788c54 0 100-38 104-87l0-7v-688c0-50-43-90-97-93l-7-1h-792c-54 0-100 38-104 87l0 7v688c0 50 43 90 97 93l7 1h792z m0-42h-792c-33 0-59-21-62-47l0-5v-688c0-26 24-49 56-51l6-1h792c33 0 59 21 62 47l0 5v688c0 26-24 49-56 51l-6 1z m-647-625c7 0 14-6 14-14v-97c0-8-7-14-14-14h-152c-7 0-14 6-14 14v97c0 8 7 14 14 14h152z m216 0c8 0 14-6 14-14v-97c0-8-6-14-14-14h-147c-8 0-14 6-14 14v97c0 8 6 14 14 14h147z m221 0c8 0 14-6 14-14v-97c0-8-6-14-14-14h-151c-8 0-14 6-14 14v97c0 8 6 14 14 14h151z m217 0c7 0 14-6 14-14v-97c0-8-7-14-14-14h-148c-7 0-13 6-13 14v97c0 8 6 14 13 14h148z m-682-42h-96v-41h96v41z m217 0h-92v-41h92v41z m220 0h-95v-41h95v41z m217 0h-92v-41h92v41z m28 625c7 0 14-6 14-14v-514c0-7-7-13-14-13h-806c-7 0-14 6-14 13v514c0 8 7 14 14 14h806z m-28-41h-750v-459h750v459z m-437-340c11 0 20-10 20-21 0-12-9-21-20-21s-21 9-21 21c0 11 9 21 21 21z m104 0c11 0 21-10 21-21 0-12-10-21-21-21-12 0-21 9-21 21 0 11 9 21 21 21z m-201 298c8 0 15-4 19-11l1-3 17-49 230 0c19 0 35-15 37-33l0-4c0-3 0-6 0-8l-2-4-43-129c-5-14-16-23-30-25l-5 0h-137c-15 0-28 8-34 20l-1 5-60 177 0 0-7 22h-34c-11 0-19 8-21 17l0 4c0 10 7 19 17 20l4 1h49z m260-105h-210l39-119h131l40 119z" horiz-adv-x="1000" />

<glyph glyph-name="disable-trash-o" unicode="&#xe975;" d="M600 808c27 0 52-13 68-35l3-6 59-102h143c13 0 25-10 27-25l0-4v-28c0-15-10-27-23-29l-4 0h-28l0-516 107-93c8-8 9-21 2-30l-28-31c-7-9-21-9-29-2l-55 48c-9-35-38-61-74-64l-6 0h-499c-43 0-79 35-83 79l0 7 0 553-132 116c-8 7-9 21-2 29l28 32c7 8 21 9 29 2l51-44 142 0 58 102c14 23 38 39 65 41l6 0h175z m-337-349l0-482h499l0 48-111 96 0-36c0-11-7-20-17-22l-4 0h-41c-10 0-19 7-21 17l0 4 0 109-111 96 0-205c0-10-7-19-17-21l-4 0h-41c-10 0-19 7-21 17l0 4 0 277-111 98z m499 120h-499l0-10 111-96c1 10 8 18 17 20l4 0h42c10 0 18-7 20-17l1-4 0-71 110-96 0 167c0 11 8 19 17 21l4 1h42c10 0 19-8 20-18l1-3 0-240 111-96-1 442z m-168 144h-163c-3 0-5-2-7-3l-1-2-31-53h241l-30 53c-1 2-4 4-6 5l-3 0z" horiz-adv-x="1000" />

<glyph glyph-name="single-page" unicode="&#xe976;" d="M896 788c54 0 100-38 104-87l0-7v-688c0-50-43-90-97-93l-7-1h-792c-54 0-100 38-104 87l0 7v688c0 50 43 90 97 93l7 1h792z m0-42h-792c-33 0-59-21-62-47l0-5v-688c0-26 24-49 56-51l6-1h792c33 0 59 21 62 47l0 5v688c0 26-24 49-56 51l-6 1z m-410-542c8 0 14-6 14-14v-180c0-8-6-14-14-14h-389c-7 0-14 6-14 14v180c0 8 7 14 14 14h389z m410-166c12 0 21-10 21-21 0-11-8-19-17-21l-4 0h-333c-12 0-21 9-21 21 0 10 7 18 17 20l4 1h333z m-438 125h-333v-125h333v125z m438-42c12 0 21-9 21-21 0-10-8-19-17-20l-4-1h-333c-12 0-21 9-21 21 0 10 7 19 17 20l4 1h333z m0 83c12 0 21-9 21-21 0-10-8-18-17-20l-4 0h-333c-12 0-21 9-21 20 0 11 7 19 17 21l4 0h333z m7 500c7 0 14-6 14-14v-430c0-8-7-14-14-14h-806c-7 0-14 6-14 14v430c0 8 7 14 14 14h806z m-258-176l-165-170c-6-5-14-8-22-5l-3 2-123 72-153-139h671l-205 240z m230 135h-750v-368l190 173c6 5 14 7 21 4l4-2 122-71 170 174c7 8 19 8 28 2l3-3 212-249v340z m-625-42c35 0 63-28 63-63s-28-62-63-62-62 28-62 62 27 63 62 63z m0-42c-12 0-21-9-21-21s9-20 21-20 21 9 21 20-9 21-21 21z" horiz-adv-x="1000" />

<glyph glyph-name="wordpress-light" unicode="&#xe977;" d="M500 850c276 0 500-224 500-500s-224-500-500-500-500 224-500 500 224 500 500 500z m8-541l-137-399c41-12 84-18 129-18 53 0 104 9 151 25l-143 392z m-466 41c0-177 100-331 247-407l-212 582c-23-54-35-113-35-175z m873 195l0-5 0-13c0-44-7-94-30-154l-5-14-138-398c130 81 216 225 216 389 0 70-15 135-43 195z m-415 263c-157 0-297-79-379-200l11 0 0 0 5 0c49 0 126 5 126 5 23 2 27-31 7-38l-4 0c0 0-22-2-48-4l-6-1 171-509 103 309-73 200-17 2c-18 1-32 3-32 3-24 1-23 36-1 39l4 0c0 0 71-6 118-6h13l20 0c46 2 98 6 98 6 24 1 28-32 7-38l-4-1c0 0-22-2-48-4l-6-1 170-505 48 157 15 52c12 39 20 71 20 100 0 58-20 99-38 130l-12 19c-19 30-35 59-35 91 0 39 28 77 68 82-81 70-186 112-301 112z" horiz-adv-x="1000" />

<glyph glyph-name="cogs-check" unicode="&#xe978;" d="M736 312c116 0 210-94 210-210s-94-210-210-210-210 94-210 210 94 210 210 210z m-183 496c20 0 37-14 40-34l15-100c19-9 38-20 56-33l94 38c20 7 41-1 50-18l84-145c9-18 5-39-10-51l-80-63c1-10 1-21 1-33l0-5 0 0c0-5-3-11-8-14s-10-5-15-5c-41 8-77 5-115-6-6-1-12 0-17 4s-8 10-7 15l1 7 0 0c0 98-77 175-172 175s-172-77-172-172c0-95 77-173 172-173l9 1 0 0c6 0 12-2 16-7s5-11 3-17c-7-23-10-47-10-71 0-51 15-100 44-141 4-6 5-14 1-20-3-6-9-10-17-10h-131c-20 0-37 15-39 34l-15 101c-19 8-38 20-56 33l-95-38c-19-7-40 0-49 18l-84 145c-9 17-5 39 10 51l80 63c-1 12-2 23-2 33 0 10 1 20 2 33l-80 62c-16 12-20 34-9 51l83 145c10 17 31 25 49 18l95-38c19 13 38 24 56 33l15 100c2 19 19 34 39 34h168z m183-534c-94 0-171-77-171-172s77-172 171-172 172 78 172 172-77 172-172 172z m-351 496l-17-112c-1-7-5-13-12-15-22-10-44-22-66-39-6-4-13-5-19-3l-105 42-86-146 89-72c5-4 8-10 7-17-2-15-3-28-3-39 0-11 1-24 3-39 1-6-2-13-7-17l-89-69 84-148 107 41c2 1 4 1 7 1 4 0 8-1 12-4 20-16 43-29 66-39 7-2 11-8 12-15l16-111 99-1c-22 41-33 87-33 133 0 19 2 38 6 57-110 7-196 99-196 210 0 116 94 210 210 210 111 0 203-86 210-196 28 6 56 7 85 4 0 8-1 15-2 22-1 6 2 13 7 17l89 69-84 148-107-41c-6-3-13-2-18 2-21 17-44 30-67 39-6 3-11 8-12 15l-16 111-170 2z m460-597c8-8 8-20 0-28l-133-133c-4-4-9-6-14-6s-9 2-13 6l-77 76c-7 8-7 20 0 27 8 8 20 8 27 0l63-62 120 120c8 7 20 7 27 0z" horiz-adv-x="1000" />

<glyph glyph-name="custom-css" unicode="&#xe979;" d="M896 808c55 0 100-45 104-101l0-7v-742c0-29-11-56-30-76-18-18-41-29-66-31l-8-1h-792c-55 0-100 45-104 102l0 6v742c0 57 43 104 97 108l7 0h792z m62-208h-916v-642c0-35 25-63 56-66l6 0h792c17 0 32 6 44 18 10 11 17 25 18 41l0 7v642z m-404-174c10-3 15-13 13-23l-1-4-127-323c-4-11-16-16-27-11-10 3-15 13-13 23l1 4 127 323c4 10 17 15 27 11z m-215-15c7-7 8-18 3-27l-3-3-120-120 120-120c7-7 8-18 3-26l-3-3c-7-7-18-8-26-3l-3 3-135 135c-7 7-8 18-2 26l2 3 135 135c8 8 21 8 29 0z m320 0c7 7 18 8 26 2l3-2 135-135 2-3c5-7 5-16 0-23l-2-3-135-135-3-2c-7-5-16-5-23 0l-3 2-3 3c-5 7-5 17 0 24l3 3 120 120-120 120-3 3c-5 8-4 19 3 26z m237 356h-792c-32 0-59-27-62-61l0-6v-58h916v58c0 35-25 63-56 66l-6 1z m-792-42c12 0 21-9 21-21s-9-21-21-21-21 10-21 21 10 21 21 21z m84 0c11 0 20-9 20-21s-9-21-20-21-21 10-21 21 9 21 21 21z m83 0c12 0 21-9 21-21s-9-21-21-21c-12 0-21 10-21 21s9 21 21 21z" horiz-adv-x="1000" />

<glyph glyph-name="global-colors" unicode="&#xe97a;" d="M465 469c198 216 427 328 481 270 52-56-65-266-282-444l-12-10-16-12c-37-28-88-63-153-103l-21-14c3-100-64-203-163-210-15-1-48-1-84 1l-40 3-32 2-25 3c-19 2-36 4-49 7l-9 1c-9 2-17 5-22 8l-5 2c-1 2-3 3-4 4l-2 2c-7 8-9 19-2 29l2 2 2 2c7 8 15 19 24 38l6 13 9 24 26 67 10 23c17 39 34 70 54 95 46 60 125 73 190 49l21 29c28 38 53 70 74 95l8 9 14 15z m-330-321l-13-34c-12-32-22-56-31-74l-3-7c-5-11-10-20-14-27l-4-5 5-1c9-2 21-3 34-5l21-1 12-1c26-2 55-3 81-3l19 0 24 0-3 2c-3 4-6 7-9 11l-4 5-4 7-3 5c0 3-2 5-3 9l-15 42-2 8c-7 18-14 31-20 38l-3 3-2 1c-22 17-36 24-55 26l-8 1z m199 137c-50 18-111 9-146-36-14-17-26-38-38-63 25-3 45-13 72-34l4-4c13-12 22-30 32-55l3-9c2-5 15-47 18-52 5-10 18-19 35-25l7-2 20-6 1 0c76 42 111 170 47 247l-7 8-6 6 2-2c-8 7-15 12-24 17l-9 5-11 5z m582 429c-10 5-62-4-125-34-87-42-184-116-282-220l-22-24-16-17c-16-19-33-41-53-67l-10-14-26-34c6-4 12-9 18-13l5-5 7-7c19-20 33-44 41-69l3-11 37 24 29 19c18 12 35 23 51 33l11 8 20 15 9 6 15 12c117 94 200 189 249 276 33 59 46 109 41 120l-1 1-1 1z" horiz-adv-x="1000" />

<glyph glyph-name="globe" unicode="&#xe97b;" d="M500 808c-253 0-458-205-458-458 0-253 205-458 458-458 253 0 458 205 458 458 0 253-205 458-458 458z m331-295h-124c-12 67-32 127-57 175 79-35 143-98 181-175l0 0z m-331 207c34 0 90-77 117-207h-234c27 130 83 207 117 207z m-370-370c0 25 3 50 8 74h144c-2-24-4-49-4-74s2-50 4-74h-144c-5 24-8 49-8 74z m39-162h124c12-68 32-128 57-175-79 35-143 97-181 175l0 0z m124 325h-124c38 77 102 140 181 175-25-48-45-108-57-175l0 0z m207-533c-34 0-90 77-117 208h234c-27-131-83-208-117-208z m130 296h-260c-2 24-3 48-3 74s2 50 3 74h260c2-24 3-48 3-74s-1-50-3-74z m20-263c25 47 45 107 57 175h124c-38-78-102-140-181-175l0 0z m69 263c1 24 3 49 3 74s-1 50-3 74h144c5-24 7-49 7-74s-2-50-7-74h-144z" horiz-adv-x="1000" />

<glyph glyph-name="typography-1" unicode="&#xe97c;" d="M230 663c28 0 28-41 1-42-17-1-30-3-36-6-3-1-5-3-7-7l0-3c-3-8-3-21-3-38l0-151h256l0 151c0 20-2 33-4 41-2 4-3 7-7 8-6 2-18 4-36 5-27 2-26 42 1 42h209c27 0 28-40 1-42-17-1-30-2-36-5-4-1-5-3-7-8-2-8-4-21-4-41v-434c0-20 2-33 4-41 2-4 3-7 7-8 6-2 18-4 36-5 27-1 26-42-1-42h-209c-27 0-28 41-1 42 17 1 30 2 36 5 3 1 5 4 7 8l1 3c2 8 2 21 2 38l0 155h-255l0-155c0-20 1-34 3-41 2-4 4-7 7-8 6-3 18-5 36-6 27-1 27-41-1-41h-209c-27 0-28 40-1 41 18 1 30 3 36 6 4 1 5 3 7 8 2 7 4 21 4 41v434c0 20-2 33-4 41-2 4-3 7-7 8-6 2-18 4-36 5l-4 0c-23 5-21 42 5 42h209z m648-4c13 9 30 1 32-14l1-3v-489c0-21 3-37 8-48 5-8 12-15 23-19l13-5 2-1c1 0 3 0 5 0l7-1 10 0 4 0c20-4 22-33 4-40l-4-1-4-1h-264l-4 1c-22 3-22 37 0 40l4 1 8 0c26 0 36 4 55 16 12 9 19 25 20 50l0 8v280c0 34-3 59-9 73-7 15-21 32-32 37-7 4-23 9-47 14l-8 1-19 4c-24 4-21 41 4 41 54 1 98 6 133 14 12 3 18 6 25 12l4 4 11 11c6 6 12 10 18 15z m-729-38h-47c4-13 6-31 6-54v-434l0-10c0-15-1-28-4-38l-1-6h46c-4 13-6 31-6 54v176c0 11 9 21 21 21h297c12 0 21-10 21-21v-176l0-10c0-15-2-28-4-38l-2-6h47c-4 13-6 31-6 54v434l0 10c0 16 1 28 4 38l2 6h-47c4-13 6-31 6-54v-172c0-12-9-21-21-21h-297c-12 0-21 9-21 21v172l0 10c0 16 2 28 4 38l2 6z m720-25l-1-2c-11-8-22-13-38-16-7-2-15-4-24-5l-13-3-1 0 3-2c9-8 18-18 24-29l5-9 3-7c8-18 12-44 13-78l0-12v-280c0-26-5-49-15-66l-5-6-1-1h67l-4 6c-8 15-12 34-13 57l0 11 0 442z" horiz-adv-x="1000" />

<glyph glyph-name="background" unicode="&#xe97d;" d="M896 808c55 0 100-45 104-101l0-7v-742c0-29-11-56-30-76-18-18-41-29-66-31l-8-1h-792c-55 0-100 45-104 102l0 6v742c0 57 43 104 97 108l7 0h792z m62-208h-916v-153l601-555h253c14 0 28 5 39 14l5 4c10 11 17 25 18 41l0 7v642z m-640-465l-238-238c2-1 4-2 7-3 1 0 3-1 5-1l6-1 6 0 89 0 186 186-61 57z m92-85l-158-158h118l101 101-61 57z m92-85l-73-73h118l16 16-61 57z m-276 255l-184-185v-77l0-7 0 0 1-7 2-7 2-4 1-3 0 0 2-4 238 237-62 57z m-92 85l-92-93v-118l153 154-61 57z m-91 85l-1-1v-118l62 62-61 57z m853 377h-792c-32 0-59-27-62-61l0-6v-58h916v58c0 35-25 63-56 66l-6 1z m-792-42c12 0 21-9 21-21s-9-21-21-21-21 10-21 21 10 21 21 21z m84 0c11 0 20-9 20-21s-9-21-20-21-21 10-21 21 9 21 21 21z m83 0c12 0 21-9 21-21s-9-21-21-21c-12 0-21 10-21 21s9 21 21 21z" horiz-adv-x="1000" />

<glyph glyph-name="device-responsive" unicode="&#xe97e;" d="M883 588c42 0 75-34 75-75v-442c0-41-33-75-75-75h-225c-41 0-75 34-75 75v442c0 41 34 75 75 75h225z m-8-84h-208v-425h208v425z m-85 209c40 0 73-33 74-73l0-2v-9h-658v-368h336v-139h-454c-25 0-45 20-46 44l0 2v31c0 7 6 13 13 14l0 0h79c-7 10-11 23-11 37l0 3v385c0 41 32 74 72 75l2 0h593z" horiz-adv-x="1000" />

<glyph glyph-name="device-wide" unicode="&#xe97f;" d="M632 79c8 0 14-6 14-14v-23c0-26-21-46-46-46h-200c-25 0-46 20-46 46v23c0 8 6 14 14 14h264z m245 625c44 0 81-36 81-80l0-1v-420c0-45-35-81-80-82l-1 0h-754c-44 0-81 36-81 81l0 1v420c0 44 36 81 80 81l1 0h754z m-2-83h-750v-417h750v417z" horiz-adv-x="1000" />

<glyph glyph-name="code-highlight" unicode="&#xe980;" d="M169 487c7-7 8-18 2-27l-3-2-118-118 120-127c7-7 8-18 2-26l-3-3c-7-7-19-8-26-2l-3 3-134 141c-7 7-8 18-2 26l2 3 133 132c9 8 21 8 30 0z m689 3l3-3 133-132c7-7 8-17 3-25l-3-4-134-141c-8-8-21-9-30-1-7 7-8 19-2 27l2 3 120 126-118 118c-7 7-9 18-3 27l3 3c6 6 18 7 26 2z m-169-355c10 0 19-9 19-19v-4c0-11-9-19-19-19h-378c-10 0-18 8-18 19v4c0 10 8 19 18 19h378z m-96 111c10 0 19-8 19-19v-4c0-10-9-19-19-19h-282c-10 0-18 9-18 19v4c0 11 8 19 18 19h282z m96 111c10 0 19-9 19-19v-4c0-11-9-19-19-19h-378c-10 0-18 8-18 19v4c0 10 8 19 18 19h378z m-96 111c10 0 19-8 19-19v-4c0-10-9-19-19-19h-282c-10 0-18 9-18 19v4c0 11 8 19 18 19h282z m96 111c10 0 19-8 19-19v-4c0-10-9-18-19-18h-378c-10 0-18 8-18 18v4c0 11 8 19 18 19h378z" horiz-adv-x="1000" />

<glyph glyph-name="video-playlist" unicode="&#xe981;" d="M407 473c5 2 12 3 18 0l3-1 292-188c5-4 9-10 9-17 0-6-2-12-6-16l-3-2-292-187c-3-2-8-4-11-4-4 0-7 1-10 3-6 3-9 8-11 14l0 4v375c0 8 4 15 11 19z m31-57v-299l232 149-232 150z m466 288c14 0 25-11 25-25v-17h-858v17c0 14 12 25 25 25h808z m-72 84c14 0 25-12 25-25v-17h-714v17c0 13 11 25 25 25h664z m147-876h-958c-12 0-21 10-21 21v667c0 12 9 21 21 21h958c12 0 21-9 21-21v-667c0-11-9-21-21-21z m-937 42h916v625h-916v-625z" horiz-adv-x="1000" />

<glyph glyph-name="download-kit" unicode="&#xe982;" d="M887-101h-775c-62 0-112 51-112 113v663c0 62 50 113 112 113h774c62 0 112-51 112-113v-663c1-62-50-113-111-113z m-775 846c-38 0-70-31-70-70v-663c0-39 32-70 70-70h774c39 0 70 32 70 70v663c0 39-31 70-70 70h-774z m389-527l0 0c2 0 3 0 4 1l0 0 0 0c1 1 1 1 2 1 2 1 3 2 5 3l147 127c9 7 9 21 2 30-8 8-21 9-30 2l-112-97v270c0 12-9 22-21 22-12 0-22-9-22-22v-270l-112 97c-9 7-23 6-30-2-8-9-7-23 2-30l147-127c1-1 3-2 5-3 0 0 1-1 2-1l0 0 0 0c1 0 2 0 3-1l0 0c2 0 2 0 4 0l0 0c2 0 3 0 4 0z m166-63c0 11-9 21-22 21h-295c-11 0-21-9-21-21 0-12 9-22 21-22h296c12 0 21 10 21 22z" horiz-adv-x="1000" />

<glyph glyph-name="kit-details" unicode="&#xe983;" d="M887-101h-775c-62 0-112 51-112 113v663c0 62 50 113 112 113h774c62 0 112-51 112-113v-663c1-62-50-113-111-113z m-775 846c-38 0-70-31-70-70v-663c0-39 32-70 70-70h774c39 0 70 32 70 70v663c0 39-31 70-70 70h-774z m259-126c12 0 22-9 22-21v-85c0-12-10-21-22-21h-84c-12 0-21 9-21 21v85c0 11 9 21 21 21h84z m254-85c11 0 21-9 21-21s-9-21-21-21h-169c-12 0-21 9-21 21s9 21 21 21h169z m-275 43h-42v-42h42v42z m359 42c11 0 21-9 21-21 0-12-9-22-21-22h-254c-11 0-21 9-21 22 0 11 9 21 21 21h254z m-338-211c12 0 22-9 22-21v-85c0-12-10-21-22-21h-84c-12 0-21 9-21 21v85c0 11 9 21 21 21h84z m254-85c11 0 21-9 21-21 0-12-9-21-21-21h-169c-12 0-21 9-21 21 0 12 9 21 21 21h169z m-275 42h-42v-42h42v42z m359 43c11 0 21-9 21-21s-9-22-21-22h-254c-11 0-21 10-21 22s9 21 21 21h254z m-338-211c12 0 22-9 22-22v-84c0-12-10-21-22-21h-84c-12 0-21 9-21 21v84c0 12 9 22 21 22h84z m254-84c11 0 21-10 21-22s-9-21-21-21h-169c-12 0-21 9-21 21s9 22 21 22h169z m-275 42h-42v-42h42v42z m359 42c11 0 21-9 21-22 0-11-9-21-21-21h-254c-11 0-21 9-21 21 0 12 9 22 21 22h254z" horiz-adv-x="1000" />

<glyph glyph-name="kit-parts" unicode="&#xe984;" d="M887 788c59 0 108-47 112-105l0-8v-663c0-60-46-108-105-112l-7 0h-775c-59 0-108 46-112 105v7 663c0 60 46 109 105 112l7 1h775z m-555-225h-290v-551c0-37 28-67 64-70l6-1h220v622z m625-443h-583v-178h512c37 0 67 28 70 64l1 6 0 108z m0 443h-583v-400h582v400z m-87-293c11 0 21-9 21-20 0-11-8-19-18-21l-3 0h-410c-11 0-21 9-21 21 0 10 8 18 18 20l3 0h410z m0 111c11 0 21-9 21-21 0-10-8-18-18-20l-3 0h-410c-11 0-21 9-21 20 0 11 8 19 18 21l3 0h410z m0 111c11 0 21-9 21-21 0-11-8-19-18-21l-3 0h-410c-11 0-21 9-21 21 0 10 8 19 18 20l3 1h410z m17 253h-775c-37 0-67-28-70-64v-6-70h914v70l0 6-1 4 0 0 0 4 0 0-1 4-2 6-1 2-2 5-3 6-1 3-4 4-3 4-5 5-5 3-5 4-4 2-3 2-5 2-3 1-3 1c-4 0-7 1-12 2h-6z" horiz-adv-x="1000" />

<glyph glyph-name="kit-upload" unicode="&#xe985;" d="M887-101h-775c-62 0-112 51-112 113v663c0 62 50 113 112 113h774c62 0 112-51 112-113v-663c1-62-50-113-111-113z m-775 846c-38 0-70-31-70-70v-663c0-39 32-70 70-70h774c39 0 70 32 70 70v663c0 39-31 70-70 70h-774z m407-506v271l113-97c8-8 22-7 29 2 8 9 7 23-2 30l-147 126c-1 2-3 3-4 4-1 0-2 0-3 0l0 0 0 0c-1 1-2 1-3 1l0 0c-2 0-2 1-4 1l0 0c0 0-2 0-3 0l0 0c-1 0-2-1-4-2l0 0 0 0c-1 0-1 0-2 0-1-1-3-2-4-4l-149-126c-8-7-9-21-2-30 8-9 21-10 30-2l113 97v-271c0-11 9-21 21-21 12 0 21 9 21 21z m148-84c0 11-9 21-22 21h-295c-11 0-21-9-21-21 0-12 9-22 21-22h296c12 0 21 10 21 22z" horiz-adv-x="1000" />

<glyph glyph-name="kit-plugins" unicode="&#xe986;" d="M730 262h-127v161h127c12 0 21 9 21 21s-9 21-21 21h-127v124c0 2-1 4-3 4l-20-2c-117-10-210-108-221-228h-89c-12 0-21-9-21-21 0-12 9-22 21-22h90c10-120 103-218 221-227l19-2c2 0 4 2 4 4v124h126c12 0 22 9 22 21-1 13-10 22-22 22z m-169-123c-91 19-160 104-160 204s69 184 160 203v-407z m326-240h-775c-62 0-112 51-112 113v663c0 62 50 113 112 113h774c62 0 112-51 112-113v-663c1-62-50-113-111-113z m-775 846c-38 0-70-31-70-70v-663c0-39 32-70 70-70h774c39 0 70 32 70 70v663c0 39-31 70-70 70h-774z" horiz-adv-x="1000" />

<glyph glyph-name="kit-upload-alt" unicode="&#xe987;" d="M887 788h-775c-62 0-112-51-112-113v-663c0-62 50-112 112-112h774c62 0 112 50 112 112v663c1 62-50 113-111 113z m70-776c0-39-32-70-70-70h-775c-39 0-70 31-70 70v663c0 39 32 70 70 70h774c39 0 70-31 70-70v-663z m-122 345l-2 3-65 100c-2 5-6 9-11 12l-96 37c-11 4-23-1-27-12-4-10 1-23 11-27l47-19-200-73-201 74 46 18c11 4 16 16 12 28s-16 15-27 11l-96-37c-6-2-9-7-11-12l-65-100-2-3-1-5v-2c0-3 0-6 1-8l1-5 6-7 56-20v-148c0-9 6-18 14-21l258-93c0-1 1-1 2-1l0 0 0 0c2-1 3-1 5-1 0 0 1 0 1 0s1 0 2 0c1 0 3 0 5 1l0 0 0 0c0 0 1 0 2 1l257 93c8 3 14 12 14 21v148l56 20 6 7 2 5c1 2 1 5 1 8v2l-1 5z m-635 2l42 66 218-80-42-65-218 79z m270-262l-216 79v119l166-60c2-1 4-2 7-2 7 0 13 4 18 10l25 39v-185h0z m259 79l-215-78v185l25-39c4-6 11-10 19-10 2 0 5 1 7 1l165 61v-120h-1z m-164 104l-42 65 218 79 42-65-218-79z m-171 296c-7 9-6 22 2 30l84 72c0 0 0 0 0 0 1 0 1 0 1 1 1 0 1 0 2 1 0 0 0 0 1 0 0 0 1 1 1 1 0 0 0 0 1 0s1 1 1 1c1 0 1 0 1 0 1 0 1 0 2 1 0 0 1 0 1 0 1 0 1 0 2 0s0 0 0 0 1 0 1 0 1 0 1 0 1 0 2 0c0 0 1 0 1-1 1 0 1 0 2 0 0 0 0-1 1-1s1 0 1 0c1 0 1-1 1-1 0 0 1 0 1 0 1-1 1-1 1-1 1-1 1-1 1-1 0 0 1 0 1 0l83-72c9-8 10-21 3-30-5-5-10-7-16-7-5 0-10 1-14 5l-48 41v-144c0-11-9-21-21-21-11 0-21 9-21 21v144l-49-42c-4-3-9-5-14-5-6 0-12 2-16 8z" horiz-adv-x="1000" />

<glyph glyph-name="hotspot" unicode="&#xe988;" d="M104 641c11 0 19-8 21-17l0-4c0-12-9-21-21-21h-62v-616l217 237c6 7 16 9 24 5l3-2 138-96 193 236c7 9 21 10 29 2l3-3 309-387v624h-354c-12 0-21 9-21 21 0 10 7 19 17 20l4 1 375 0c10 0 19-8 20-17l1-4v-708c0-11-8-19-17-21l-4 0h-958c-11 0-19 7-21 17l0 4v708c0 10 8 19 17 20l4 1 83 0z m529-325l-189-230c-6-7-16-9-24-6l-4 3-138 96-226-246h888l-307 383z m-279 493c104 0 188-84 188-187s-84-188-188-188-187 84-187 188 83 187 187 187z m0-41c-80 0-146-66-146-146s66-146 146-146 146 65 146 146-65 146-146 146z m0-42c11 0 19-8 21-17l0-4v-62h63c11 0 20-10 20-21 0-11-7-19-17-21l-3 0h-63v-63c0-11-9-20-21-20-10 0-19 7-20 17l-1 3v63h-62c-12 0-21 9-21 21 0 10 8 18 17 20l4 1h62v62c0 11 10 21 21 21z" horiz-adv-x="1000" />

<glyph glyph-name="paypal-button" unicode="&#xe989;" d="M535 428l291-250c7-5 9-15 6-23-3-8-11-13-19-13h-88l74-122c3-5 4-11 2-16-1-6-5-10-9-13l-94-55c-3-1-6-3-10-3-2 0-4 1-6 1-5 2-10 6-12 11l-71 141-63-63c-6-6-15-8-22-5-8 4-13 11-13 20v375c0 8 4 15 12 18 7 4 15 3 22-3z m7-61v-279l48 47c3 4 9 7 14 7 1 0 2 0 4-1 6-1 12-5 15-11l73-147 56 33-82 136c-4 6-5 14-1 21 4 7 11 11 19 11h68l-214 183z m354 400c57 0 104-47 104-104v-250c0-58-47-105-104-105h-167c-11 0-21 10-21 21s10 21 21 21h167c32 0 59 25 62 57l0 6v250c0 32-24 59-56 62l-6 0h-792c-32 0-59-25-62-57l0-5v-250c0-33 24-60 56-63l6 0h334c11 0 20-9 20-21s-9-21-20-21h-334c-57 0-104 47-104 105v250c0 57 47 104 104 104h792z m-358-185c5 0 7-3 5-7l-1-2-103-148c-1-2-4-3-6-4l-3 0h-30c-3 0-5 3-4 6l1 2 33 46-34 98c-1 4 0 7 4 9l2 0h27c4 0 6-1 8-4l1-2 19-62 43 62c2 4 4 5 7 6l3 1h28z m-238 4c15 0 28-4 33-13l2-4c2-2 3-3 3-1l1 2 1 6c0 3 2 4 3 5l2 0h29c3 0 4-1 4-5l0-3-16-102c-1-6-3-8-6-8l-2 0h-27c-3 0-4 1-4 3l0 2 0 8c1 2-1 2-3 0l-2-1c-10-10-20-16-40-16-30 0-51 24-49 55 3 40 30 71 71 72z m460 0c15 0 27-4 33-13l2-4c1-2 3-3 3-1l0 2 2 6c0 3 1 4 3 5l1 0h29c3 0 5-1 5-5l0-3-17-101c-1-6-3-8-6-9l-2 0h-27c-3 0-4 2-4 4l0 2 1 8c0 2-2 2-4 0l-1-1c-11-10-20-16-41-16-29 0-51 24-49 55 3 39 31 70 72 71z m146 55c2 0 4-1 4-3l0-1-27-170c0-2-1-3-3-4l-2 0h-30c-2 0-4 1-4 3l0 1 27 170c0 3 2 4 5 4h30z m-717 1c27 0 52-15 49-52-5-43-28-67-65-67h-31c-5 0-7-4-8-11l-6-39c-1-6-5-9-9-9h-29c-5 0-7 3-6 10l24 157c2 8 5 11 10 11h71z m460 0c27 0 51-15 48-52-4-43-27-67-64-67h-32c-5 0-7-4-8-11l-6-39c-1-6-4-9-9-9h-29c-5 0-6 3-6 10l25 158c1 8 4 11 10 11h71z m-344-88c-17 0-34-14-36-31-3-18 9-32 27-32 17 0 34 14 37 32 2 17-10 31-28 31z m460 0c-17 0-34-14-37-31-2-18 10-32 27-32 18 0 35 14 37 32 3 17-9 31-27 31z m-594 53l-23 0-8-50h25l4 1c13 2 21 12 22 29 1 12-7 20-20 20z m460 0l-23 0-8-50h24c15 1 26 11 26 30 1 12-7 20-19 20z" horiz-adv-x="1000" />

<glyph glyph-name="shape" unicode="&#xe98a;" d="M740 317c115 0 208-94 208-209s-93-208-208-208-209 93-209 208 94 209 209 209z m-461-7l174-127c12-8 17-23 12-36l-66-222c-4-14-17-23-32-23h-215c-14 0-27 9-32 23l-67 222c-4 13 1 28 12 36l175 127c12 9 28 9 39 0z m461-35c-92 0-167-75-167-167s75-166 167-166 166 74 166 166-74 167-166 167z m-480-2l-165-120 63-210h203l63 210-164 120z m155 502c18 0 33-14 33-32l0-1v-309c0-18-14-33-33-33l0 0h-309c-18 0-33 14-33 33l0 0v309c0 18 14 33 32 33l1 0h309z m353 7l0-1 174-332c12-22-4-48-28-49l-1 0h-348c-25 0-41 26-30 48l0 1 174 332c12 23 45 24 58 2l1-1z m-362-49h-291v-291h291v291z m333 15l-161-306h321l-160 306z" horiz-adv-x="1000" />

<glyph glyph-name="wordart" unicode="&#xe98b;" d="M208 303l9-5 588-337c41-24 66-21 79-14 13 7 20 22 19 39-1 12 8 22 20 23 12 1 22-8 23-20 2-30-11-63-41-79-31-17-73-13-121 14l-588 337c-41 24-66 21-79 14-13-7-20-22-19-39 1-12-8-22-20-23-12-1-22 8-23 20-2 30 11 63 41 80 27 14 63 13 104-6l8-4z m655 493l41-23c11-7 16-19 14-32l-107-605c-3-12-4-22-5-31 0-8 1-14 3-19 1-1 1-3 3-5 4-6 11-13 22-20 8-6 11-17 6-26-5-9-17-12-26-7l-201 116c-9 6-12 17-7 26 5 10 17 13 26 8l21-13c8-5 15-6 20-5 5 2 10 5 13 11 4 6 6 12 7 19l33 180c1 4-1 8-4 10l-182 105c-4 2-7 2-10-1l-142-121c-7-7-11-12-13-15-3-5-4-10-2-13 1-5 5-10 14-15l19-12c9-5 12-17 7-26-5-9-17-12-26-7l-133 77c-9 6-12 17-7 26 5 10 17 12 26 8 10-5 17-8 24-9l3 0 0 0c7-1 13 0 18 2l5 2c8 4 17 10 29 19l7 6 469 388c10 8 24 9 35 2z m-19-48l-15-13c-1 0-1 0 0-1 5-3 8-9 6-14l-66-370-1 0-31-172c-2-10-7-20-12-30-2-4-5-8-9-12l44-26c1 11 3 23 5 35l105 588c0 3-2 7-5 9l-12 7c-2 2-6 1-9-1z m-57-46l-207-177c-5-4-4-11 1-14l144-83c6-3 13 0 13 6l49 268z" horiz-adv-x="1000" />

<glyph glyph-name="checkout" unicode="&#xe98c;" d="M601-75c16 0 29-13 29-29s-13-29-29-29-29 13-29 29 13 29 29 29z m104 0c16 0 29-13 29-29s-13-29-29-29-29 13-29 29 13 29 29 29z m-238 300c21 0 38-10 51-27 6-10 12-20 16-30h241c18 0 33-15 33-34 0-3 0-6-2-10l-51-164c-4-13-17-23-31-23h-139c-15 0-27 10-32 24l-54 180c-4 12-9 22-16 33-5 6-10 9-17 9-11 0-21 10-21 21s10 21 22 21z m296-99h-215l44-147h126l45 147z m95 682c55 0 100-37 100-85v-580c0-33-23-63-57-77-7-3-15-5-22-6l-6-1-14-1 0 0c-12 0-21 9-22 20 0 12 8 22 20 22l9 0 6 1c5 1 9 2 14 4 19 8 31 23 31 38v580c0 23-25 44-59 44h-716c-33 0-59-21-59-44v-580c0-23 26-43 59-43h306c12 0 21-10 21-21s-9-21-21-21h-306c-54 0-100 37-100 86v579c0 48 46 85 100 85h716z m-129-125c33 0 59-24 62-56l1-6v-250c0-33-25-59-57-62l-6-1h-458c-33 0-59 25-62 57l-1 6v250c0 32 25 59 57 62l6 0h458z m21-166h-500v-146c0-11 8-19 17-21l4 0h458c11 0 19 8 21 17l0 4v146z m-354-84c12 0 21-9 21-20 0-11-8-19-17-21l-4 0h-83c-12 0-21 9-21 21 0 10 7 18 17 20l4 0h83z m333 209h-458c-11 0-19-8-21-17l0-4v-63h500v63c0 12-9 21-21 21z" horiz-adv-x="1000" />

<glyph glyph-name="container" unicode="&#xe98d;" d="M917 663c23 0 41-19 41-42v-542c0-23-18-41-41-41h-834c-23 0-41 18-41 41v542c0 23 18 42 41 42h834z m0-42h-834v-542h834v542z m-750-417v-41h83v-42h-125v83h42z m291-41v-42h-125v42h125z m209 0v-42h-125v42h125z m208 41v-83h-125v42h83v41h42z m0 209v-125h-42v125h42z m-708 0v-125h-42v125h42z m708 166v-83h-42v42h-83v41h125z m-625 0v-41h-83v-42h-42v83h125z m208 0v-41h-125v41h125z m209 0v-41h-125v41h125z" horiz-adv-x="1000" />

<glyph glyph-name="flip" unicode="&#xe98e;" d="M513 404c-17-21-46-21-63 0l-292 329c-25 30-8 75 30 75h579c37 0 58-45 33-75l-287-329z m258-512h-583c-17 0-30 8-38 25s-4 33 8 45l292 334c17 17 46 17 63 0l291-334c13-12 13-29 9-45-13-17-25-25-42-25z m-492 83h400l-200 229-200-229z" horiz-adv-x="1000" />

<glyph glyph-name="info" unicode="&#xe98f;" d="M500-108c-254 0-458 204-458 458s204 458 458 458 458-204 458-458-204-458-458-458z m0 833c-208 0-375-167-375-375s167-375 375-375 375 167 375 375-167 375-375 375z m125-583c0 25-17 41-42 41h-41v292c0 25-17 42-42 42h-83c-25 0-42-17-42-42s17-42 42-42h41v-250h-41c-25 0-42-16-42-41s17-42 42-42h166c25 0 42 17 42 42z m-125 500c25 0 42-17 42-42s-17-42-42-42-42 17-42 42 17 42 42 42z" horiz-adv-x="1000" />

<glyph glyph-name="my-account" unicode="&#xe990;" d="M601-75c16 0 29-13 29-29s-13-29-29-29-29 13-29 29 13 29 29 29z m104 0c16 0 29-13 29-29s-13-29-29-29-29 13-29 29 13 29 29 29z m-238 300c21 0 38-10 51-27 6-10 12-20 16-30h241c18 0 33-15 33-34 0-3 0-6-2-10l-51-164c-4-13-17-23-31-23h-139c-15 0-27 10-32 24l-54 180 0 0c-4 12-9 22-16 33-5 6-10 9-17 9-11 0-21 10-21 21s10 21 22 21z m296-99h-215l44-147h126l45 147z m95 682c55 0 100-37 100-85v-580c0-33-23-63-57-77-7-3-15-5-22-6l-6-1 0 0-11-1c-2 0-2 0-4 0-11 0-21 9-21 20-1 12 8 22 20 22l9 0 0 0 5 1 0 0c5 1 10 2 14 4 20 8 32 23 32 38v580c0 23-26 44-59 44h-716c-33 0-59-21-59-44v-580c0-23 26-43 59-43h306c12 0 21-10 21-21s-9-21-21-21h-306c-54 0-100 37-100 86v579c0 48 46 85 100 85h716z m-504-166c58 0 104-47 104-104 0-31-13-58-34-78 44-19 79-56 96-103 3-11-2-23-13-27-11-4-23 2-27 13-18 54-68 90-126 90-57 0-107-36-126-90-4-10-15-16-27-13-11 4-16 16-13 27 17 47 52 84 96 104-21 19-34 46-34 77 0 57 47 104 104 104z m438-209c11 0 21-9 21-20 0-11-8-19-18-21l-3 0h-209c-11 0-20 9-20 21 0 10 7 18 17 20l3 0h209z m0 84c11 0 21-9 21-21 0-11-8-19-18-21l-3 0h-209c-11 0-20 9-20 21 0 10 7 19 17 20l3 1h209z m-438 83c-34 0-62-28-62-62 0-33 24-60 56-63l6 0 1 0c34 0 62 28 62 63 0 34-28 62-63 62z m438 0c11 0 21-9 21-21 0-10-8-19-18-20l-3-1h-209c-11 0-20 10-20 21 0 11 7 19 17 21l3 0h209z" horiz-adv-x="1000" />

<glyph glyph-name="purchase-summary" unicode="&#xe991;" d="M601-75c16 0 29-13 29-29s-13-29-29-29-29 13-29 29 13 29 29 29z m104 0c16 0 29-13 29-29s-13-29-29-29-29 13-29 29 13 29 29 29z m-238 300c21 0 38-10 51-27 6-10 12-20 16-30h241c18 0 33-15 33-34 0-3 0-6-2-10l-51-164c-4-13-17-23-31-23h-139c-15 0-27 10-32 24l-54 180 0 0c-4 12-9 22-16 33-5 6-10 9-17 9-11 0-21 10-21 21s10 21 22 21z m296-99h-215l44-147h126l45 147z m95 682c55 0 100-37 100-85v-580c0-33-23-63-57-77-7-3-15-5-22-6l-6-1 0 0-11-1c-2 0-2 0-4 0-11 0-21 9-21 20-1 12 8 22 20 22l9 0 0 0 5 1 0 0c5 1 10 2 14 4 20 8 32 23 32 38v580c0 23-26 44-59 44h-716c-33 0-59-21-59-44v-580c0-23 26-43 59-43h306c12 0 21-10 21-21s-9-21-21-21h-306c-54 0-100 37-100 86v579c0 48 46 85 100 85h716z m-358-125c104 0 188-83 188-187 0-104-84-188-188-188-104 0-187 84-187 188 0 104 83 187 187 187z m0-41c-80 0-146-66-146-146 0-81 66-146 146-146 80 0 146 65 146 146 0 80-66 146-146 146z m103-63c7-7 8-18 2-26l-2-3-133-133-73 74c-8 8-8 21 0 29 7 8 18 8 27 3l3-3 44-44 102 103c9 9 22 9 30 0z" horiz-adv-x="1000" />

<glyph glyph-name="page-transition" unicode="&#xe992;" d="M854 808c56 0 101-45 104-101l0-7v-700c0-57-43-104-97-108l-7 0h-708c-56 0-101 45-104 101l0 7v700c0 57 43 104 97 108l7 0h708z m63-208h-834v-600c0-35 25-63 57-66l6-1h708c33 0 59 27 62 61l1 6v600z m-584-458v-84c0-23-18-41-41-41h-167v41h167v84h41z m125 0v-84h417v-41h-417c-23 0-41 18-41 41v84h41z m12 193c7 8 18 8 26 3l3-3 59-58c7-7 8-19 2-27l-2-3-59-59c-8-8-21-8-29 0-7 7-8 19-3 27l3 3 44 44-44 44c-7 7-8 19-3 27l3 2z m-96 0l59-58c8-9 8-22 0-30l-59-59c-9-8-21-8-30 0-8 9-8 22 0 30l44 44-44 44c-8 9-8 22 0 30 9 7 22 7 30-1z m-125 0l59-58c8-9 8-22 0-30l-59-59c-9-8-21-8-30 0-8 9-8 22 0 30l44 44-44 44c-8 9-8 22 0 30 9 7 22 7 30-1z m43 182c23 0 41-19 41-42v-83h-41v83h-167v42h167z m583 0v-42h-417v-83h-41v83c0 23 18 42 41 42h417z m-21 250h-708c-33 0-59-27-62-61l-1-6v-58h834v58c0 35-25 63-57 66l-6 1z m-708-42c12 0 21-9 21-21s-9-21-21-21-21 10-21 21 9 21 21 21z m83 0c12 0 21-9 21-21s-9-21-21-21-21 10-21 21 10 21 21 21z m84 0c11 0 20-9 20-21s-9-21-20-21-21 10-21 21 9 21 21 21z" horiz-adv-x="1000" />

<glyph glyph-name="spotify" unicode="&#xe993;" d="M813 225c103 0 187-84 187-187s-84-188-187-188-188 84-188 188 84 187 188 187z m-313 583c254 0 458-204 458-458 0-43-5-84-16-123-12 8-25 15-38 21 8 32 13 67 13 102 0 229-188 416-417 416s-417-187-417-416 188-417 417-417c35 0 70 5 102 13 6-13 13-26 21-38-39-11-80-16-123-16-255 0-459 204-459 458s205 458 459 458z m313-625c-81 0-146-65-146-145s65-146 146-146 145 65 145 146-65 145-145 145z m-15-55l4-3 85-53c26-16 26-52 0-68l-85-54c-27-17-62 2-62 34v107c0 30 31 49 58 37z m-18-37v-107l85 54-85 53z m-526 147c156 37 293 24 406-29-15-14-28-29-39-45-98 43-216 48-354 19-17-4-29 5-34 21s5 29 21 34z m487 91l13-8c17-8 21-33 13-50-3-5-7-8-11-11-6-2-12-4-18-6-8 0-15 1-21 4-125 75-313 96-459 55-20-5-37 4-45 25-5 20 4 37 25 45 161 49 362 27 503-54l0 0z m-528 209c162 50 433 37 604-63 21-12 29-37 16-58-16-21-41-25-62-17-146 92-392 96-533 54-21-4-46 9-55 29-4 25 9 46 30 55z" horiz-adv-x="1000" />

<glyph glyph-name="stripe-button" unicode="&#xe994;" d="M468 345l292-250c6-6 9-15 5-23-2-8-10-14-19-14h-88l74-122c3-4 4-10 3-16-2-5-5-10-10-13l-93-54c-4-2-7-3-11-3-2 0-4 0-6 1-5 1-10 5-12 11l-70 141-63-63c-6-6-15-8-23-5-8 3-13 11-13 19v375c0 9 5 16 12 19 7 4 16 2 22-3z m7-61v-280l48 48c4 4 9 6 15 6 1 0 2 0 3 0 7-1 12-5 15-11l74-147 55 32-82 136c-4 7-4 15 0 22 3 6 10 10 18 10h69l-215 184z m421 399c57 0 104-46 104-104v-250c0-57-47-104-104-104h-233c-12 0-21 9-21 21s9 21 21 21h233c32 0 59 24 62 56l0 6v250c0 33-24 59-56 62l-6 1h-792c-32 0-59-25-62-57l0-6v-250c0-32 24-59 56-62l6 0h267c12 0 21-9 21-21s-9-21-21-21h-267c-57 0-104 47-104 104v250c0 58 47 104 104 104h792z m-261-130c35 0 68-31 69-89 0-64-33-93-69-93-13 0-22 4-30 9l-6 4 0-57-50-10v233h44l2-12c8 6 20 15 40 15z m-310 40l0-43h38v-42h-39v-72c0-22 19-22 31-20l4 2 0 0 4 1v-41c-7-4-19-7-36-7-28 0-49 19-52 46l0 6 0 160 50 10z m-120-40c17 0 34-2 50-9v-47c-15 8-34 13-50 13-10 0-17-3-17-11 0-6 5-9 13-12l8-3 0 0 13-5 0 0 9-3c18-8 34-21 34-48 0-36-28-57-70-57-18 0-37 4-55 12v47c17-9 38-16 55-16 11 0 19 3 19 12 0 8-7 12-18 16l-17 6 0 0-9 4c-17 8-32 20-32 45 0 35 27 56 67 56z m585 0c45 0 70-36 73-85l0-9 0 0-1-16h-98c2-23 19-30 39-30 17 0 31 3 43 8l6 3v-40c-14-7-32-13-56-13-49 0-83 31-83 91 0 51 29 91 77 91z m-260-3v-175h-50v175h50z m-63 0v-46c-6 2-26 5-38-11v-118h-50v175h43l3-15c12 22 36 18 42 15z m156-41c-10 0-17-3-22-8l-2-2 0-74c5-5 12-10 24-10 18 0 30 20 30 47 1 26-12 47-30 47z m167 4c-12 0-25-8-27-27l0-5h52c0 22-13 32-25 32z m-260 104v-41l-50-11v41l50 11z" horiz-adv-x="1000" />

<glyph glyph-name="woo-settings" unicode="&#xe995;" d="M771 496h-542c-21 0-41-8-58-25s-25-38-25-63v-216c0-46 37-88 83-88h250l113-66c4 0 8-5 12-5s9 0 13 5c8 4 8 16 4 25l-17 41h163c46 0 83 38 83 88v216c4 50-33 88-79 88z m42-304c0-25-17-46-42-46h-196c-8 0-12-4-17-8s-4-13-4-21l4-13-66 38c-4 0-9 4-13 4h-250c-21 0-41 21-41 46v216c0 13 4 25 12 34s17 12 29 12h542c21 0 42-21 42-46v-216z m-363 108c-8-46-8-83-8-108 0-9 0-13-4-21s-9-8-13-8c-8 0-12 4-21 12-25 25-46 67-58 121-17-38-29-63-38-83-16-34-29-50-41-50-9 0-13 4-21 20-13 38-29 109-46 217 0 8 0 13 4 21 4 4 9 8 17 8 12 0 21-4 25-21 8-58 17-108 29-150l58 113c5 12 13 17 21 17 13 0 21-9 21-25 8-38 17-71 25-96 8 71 21 125 38 158 4 8 8 13 16 13 4 0 13 0 17-5s8-8 8-16c0-4 0-9-4-13-8-25-17-58-25-104z m292 104c-4 0-9 0-17 0-25 0-46-12-62-41-13-25-21-50-21-80 0-20 4-41 12-58s25-29 42-33c4 0 8 0 17 0 25 0 45 12 62 41 13 25 21 50 21 80 0 20-4 41-13 54-4 21-20 33-41 37z m12-112c-4-21-12-34-21-42s-16-12-20-8c-9 0-13 8-17 16s-4 17-4 25 0 13 0 21c4 13 8 25 12 34 9 12 17 20 29 16 9 0 13-8 17-16s4-17 4-25 0-13 0-21z m-179 112c-4 0-8 0-17 0-25 0-45-12-62-41-13-25-21-50-21-80 0-20 4-41 13-58s25-29 41-33c4 0 9 0 17 0 25 0 46 12 62 41 13 25 21 50 21 80 0 20-4 41-12 54-9 21-25 33-42 37z m8-112c-4-21-12-34-20-42s-17-12-21-8c-9 0-13 8-17 16s-4 17-4 25 0 13 0 21c4 13 8 25 12 34 9 12 17 20 30 16 8 0 12-8 16-16s4-17 4-25 0-13 0-21z m271 516h-708c-58 0-104-50-104-108v-700c0-58 46-108 104-108h708c59 0 104 50 104 108v700c0 58-45 108-104 108z m-708-41h708c34 0 63-29 63-67v-58h-834v58c0 38 30 67 63 67z m708-834h-708c-33 0-63 29-63 67v600h834v-600c0-38-29-67-63-67z m-729 771c0 13 8 21 21 21s21-8 21-21-9-21-21-21-21 9-21 21z m83 0c0 13 9 21 21 21s21-8 21-21-8-21-21-21-21 9-21 21z m84 0c0 13 8 21 21 21s20-8 20-21-8-21-20-21-21 9-21 21z" horiz-adv-x="1000" />

<glyph glyph-name="woo-cart" unicode="&#xe996;" d="M601-75c16 0 29-13 29-29s-13-29-29-29-29 13-29 29 13 29 29 29z m104 0c16 0 29-13 29-29s-13-29-29-29-29 13-29 29 13 29 29 29z m-238 300c21 0 38-10 51-27 6-10 12-20 16-30h241c18 0 33-15 33-34 0-3 0-6-2-10l-51-164c-4-13-17-23-31-23h-139c-15 0-27 10-32 24l-54 180 0 0c-4 12-9 22-16 33-5 6-10 9-17 9-11 0-21 10-21 21s10 21 22 21z m296-99h-215l44-147h126l45 147z m95 682c55 0 100-37 100-85v-580c0-33-23-63-57-77-7-3-15-5-22-6l-6-1 0 0-11-1c-2 0-2 0-4 0-11 0-21 9-21 20-1 12 8 22 20 22l9 0 0 0 5 1 0 0c5 1 10 2 14 4 20 8 32 23 32 38v580c0 23-26 44-59 44h-716c-33 0-59-21-59-44v-580c0-23 26-43 59-43h306c12 0 21-10 21-21s-9-21-21-21h-306c-54 0-100 37-100 86v579c0 48 46 85 100 85h716z m-484-145l0 0h4 393c21 0 39-17 41-37l1-5v-208c0-4-1-7-2-10l0-115c0-22-16-40-36-42l-5 0h-145c-21 0-39 16-41 37l-1 5v83h-205l-4 0 0 0 0 0h-145c-21 0-39 16-41 37l0 5v208c0 21 16 39 36 41l5 1h145z m396-292h-145v-83h145l0 83z m1 125h-393v-83h393v83z m-439 0h-103v-83l103 0v83z m439 125h-393v-83l393 0v83z m-439 0l-103 0v-83h103v83z" horiz-adv-x="1000" />

<glyph glyph-name="grow" unicode="&#xe997;" d="M42 850c23 0 41-19 41-42v-916c0-23-18-42-41-42s-42 19-42 42v916c0 23 19 42 42 42z m916 0c23 0 42-19 42-42v-916c0-23-19-42-42-42s-41 19-41 42v916c0 23 18 42 41 42z m-303-271c7 1 14-1 20-5l3-3 167-193c5-7 9-15 10-25 0-8-1-14-4-20l-2-5-4-5-164-190c-6-7-13-11-21-12-8 0-16 3-23 8-5 5-9 11-11 19l-1 6v113h-250l0-113c-2-10-5-19-12-25-7-5-15-8-23-8-7 1-15 5-21 12l-164 190-3 5c-5 7-7 15-6 25 1 10 4 18 9 24l168 194c6 6 13 9 22 8 8-1 15-5 22-12 5-7 8-15 8-25l0-109h250v109c0 8 2 15 5 21l3 4c7 7 14 11 22 12z" horiz-adv-x="1000" />

<glyph glyph-name="order-end" unicode="&#xe998;" d="M958 850c22 0 40-16 42-37l0-5v-916c0-22-16-40-37-42l-5 0-5 0c-19 2-34 18-37 37l0 5v916c0 22 16 40 37 42l5 0z m-375-250c9 1 17-1 24-6l4-3 209-211c8-7 11-16 13-27 0-8-1-15-5-22l-3-5-5-6-205-207c-7-8-17-12-27-13-10 0-19 3-28 9-6 6-11 13-13 21l-2 6 0 131-486 0c-33 0-59 26-59 58v50c0 32 26 58 59 58l486 0 0 127c0 9 3 17 7 23l3 4c8 7 18 12 28 13z" horiz-adv-x="1000" />

<glyph glyph-name="nowrap" unicode="&#xe999;" d="M42 850c23 0 42-19 42-42v-916c0-22-16-40-37-42l-5 0c-23 0-42 19-42 42v916c0 22 16 40 37 42l5 0z m708-250c9 1 17-1 24-6l4-3 210-211c7-7 11-16 12-27 1-8-1-15-4-22l-3-5-5-6-205-207c-8-8-17-12-27-13-10 0-20 3-28 9-7 6-11 13-14 21l-1 6 0 131h-488c-32 0-58 26-58 58v50c0 32 26 58 58 58h488l0 127c0 9 2 17 7 23l3 4c8 7 17 12 27 13z" horiz-adv-x="1000" />

<glyph glyph-name="order-start" unicode="&#xe99a;" d="M42 850c23 0 42-19 42-42v-916c0-22-16-40-37-42l-5 0c-23 0-42 19-42 42v916c0 22 16 40 37 42l5 0z m375-250c10-1 18-5 27-13 7-7 10-16 10-27l0-127 486 0c31 0 56-23 59-53l0-5v-50c0-30-23-55-53-58l-6 0-486 0 0-131c-2-11-7-20-15-27-9-6-18-9-28-9-10 0-19 5-27 13l-205 207-5 5c-6 8-8 18-7 28 1 10 5 20 12 27l209 210c8 8 18 11 29 10z" horiz-adv-x="1000" />

<glyph glyph-name="progress-tracker" unicode="&#xe99b;" d="M854 808c56 0 101-45 104-101l0-7v-700c0-57-43-104-97-108l-7 0h-708c-56 0-101 45-104 101l0 7v700c0 57 43 104 97 108l7 0h708z m63-208h-834v-600c0-35 25-63 57-66l6-1h708c33 0 59 27 62 61l1 6v600z m-83-42c21 0 39-15 41-36l0-5v-126c0-21-16-38-36-41l-5 0h-668c-21 0-38 16-41 36l0 5v126c0 21 16 39 36 41l5 0h668z m-1-41h-666v-125h666v125z m-187-42v-42h-438v42h438z m208 292h-708c-33 0-59-27-62-61l-1-6v-58h834v58c0 35-25 63-57 66l-6 1z m-708-42c12 0 21-9 21-21s-9-21-21-21-21 10-21 21 9 21 21 21z m83 0c12 0 21-9 21-21s-9-21-21-21-21 10-21 21 10 21 21 21z m84 0c11 0 20-9 20-21s-9-21-20-21-21 10-21 21 9 21 21 21z" horiz-adv-x="1000" />

<glyph glyph-name="shrink" unicode="&#xe99c;" d="M500 850c23 0 42-19 42-42v-916c0-23-19-42-42-42s-42 19-42 42v916c0 23 19 42 42 42z m324-271c8-1 15-5 22-12 5-7 8-15 8-25l0-109h88c32 0 58-26 58-58v-50c0-32-26-58-58-58h-88l0-113c-1-10-5-19-12-25-7-5-14-8-22-8-8 1-15 5-22 12l-163 190-4 5c-5 7-7 15-6 25 1 10 4 18 10 24l167 194c6 6 13 9 22 8z m-648 0c7 1 14-1 19-5l4-3 167-193c5-7 9-15 9-25 1-8 0-14-3-20l-2-5-4-5-164-190c-6-7-13-11-22-12-7 0-15 3-22 8-5 5-9 11-11 19l-1 6 0 113h-88c-32 0-58 26-58 58v50c0 32 26 58 58 58h88l0 109c0 8 2 15 5 21l3 4c6 7 14 11 22 12z" horiz-adv-x="1000" />

<glyph glyph-name="wrap" unicode="&#xe99d;" d="M42 850c23 0 41-19 41-42v-916c0-23-18-42-41-42s-42 19-42 42v916c0 23 19 42 42 42z m637-167c208 0 321-114 321-291 0-174-109-287-309-292l-13 0h-226l0-126c0-9-2-17-7-24l-3-3c-8-8-17-13-27-14-9-1-17 2-24 6l-4 3-209 211c-7 7-10 16-12 27-1 8 1 16 4 23l4 5 4 5 204 207c8 8 17 13 27 13 10 0 19-3 28-9 6-5 11-12 13-20l2-6 0-131h226c116 0 155 39 155 125 0 82-37 122-144 125l-11 0h-511v166h512z" horiz-adv-x="1000" />

<glyph glyph-name="align-center-h" unicode="&#xe99e;" d="M500 850c21 0 39-16 41-37l1-5v-250l316 0c32 0 59-26 59-58v-50c0-32-27-58-59-58h-316v-84h191c32 0 59-26 59-58v-50c0-32-27-58-59-58h-191v-250c0-22-17-40-37-42l-5 0c-21 0-39 16-41 37l-1 5v250h-191c-32 0-59 26-59 58v50c0 32 27 58 59 58h191v84h-316c-32 0-59 26-59 58v50c0 32 27 58 59 58l316 0v250c0 22 17 40 37 42l5 0z" horiz-adv-x="1000" />

<glyph glyph-name="align-center-v" unicode="&#xe99f;" d="M400 767c32 0 58-27 58-59l0-316h84l0 191c0 32 26 59 58 59h50c32 0 58-27 58-59l0-191 250 0c22 0 40-17 42-37l0-5c0-21-16-39-37-41l-5-1-250 0 0-191c0-32-26-59-58-59h-50c-32 0-58 27-58 59l0 191h-84l0-316c0-32-26-59-58-59h-50c-32 0-58 27-58 59l0 316-250 0c-22 0-39 17-42 37l0 5c0 21 16 39 37 41l5 1 250 0 0 316c0 32 26 59 58 59h50z" horiz-adv-x="1000" />

<glyph glyph-name="align-end-h" unicode="&#xe9a0;" d="M875 850c21 0 39-16 41-37l1-5v-916c0-23-19-42-42-42-21 0-39 16-41 37l-1 5v916c0 23 19 42 42 42z m-183-542c30 0 55-23 58-53l0-5v-50c0-30-23-55-53-58l-5 0h-300c-31 0-56 23-58 53l-1 5v50c0 30 24 55 53 58l6 0h300z m0 250c30 0 55-23 58-53l0-5v-50c0-30-23-55-53-58l-5 0h-550c-31 0-56 23-58 53l-1 5v50c0 30 24 55 53 58l6 0h550z" horiz-adv-x="1000" />

<glyph glyph-name="align-end-v" unicode="&#xe9a1;" d="M958 17c23 0 42-19 42-42s-19-42-42-42h-916c-23 0-42 19-42 42s19 42 42 42h916z m-558 750c32 0 58-27 58-59v-550c0-32-26-58-58-58h-50c-32 0-58 26-58 58v550c0 32 26 59 58 59h50z m250-250c32 0 58-27 58-59v-300c0-32-26-58-58-58h-50c-32 0-58 26-58 58v300c0 32 26 59 58 59h50z" horiz-adv-x="1000" />

<glyph glyph-name="align-start-h" unicode="&#xe9a2;" d="M250 450v50c0 32 26 58 58 58h550c32 0 59-26 59-58v-50c0-32-27-58-59-58h-550c-32 0-58 26-58 58z m0-250v50c0 32 26 58 58 58h300c32 0 59-26 59-58v-50c0-32-27-58-59-58h-300c-32 0-58 26-58 58z m-125 650l0 0c23 0 42-19 42-42v-916c0-23-19-42-42-42l0 0c-23 0-42 19-42 42v916c0 23 19 42 42 42z" horiz-adv-x="1000" />

<glyph glyph-name="align-start-v" unicode="&#xe9a3;" d="M400 600c32 0 58-26 58-58l0 0v-550c0-32-26-59-58-59l0 0h-50c-32 0-58 27-58 59l0 0v550c0 32 26 58 58 58l0 0h50z m250 0c32 0 58-26 58-58l0 0v-300c0-32-26-59-58-59l0 0h-50c-32 0-58 27-58 59l0 0v300c0 32 26 58 58 58l0 0h50z m308 167c23 0 42-19 42-42 0-23-19-42-42-42l0 0h-916c-23 0-42 19-42 42s19 42 42 42l0 0h916z" horiz-adv-x="1000" />

<glyph glyph-name="align-stretch-h" unicode="&#xe9a4;" d="M42 850c23 0 41-19 41-42v-916c0-23-18-42-41-42s-42 19-42 42v916c0 23 19 42 42 42z m916 0c23 0 42-19 42-42v-916c0-23-19-42-42-42s-41 19-41 42v916c0 23 18 42 41 42z m-183-542c30 0 55-23 58-53l0-5v-50c0-30-23-55-53-58l-5 0h-550c-30 0-55 23-58 53l0 5v50c0 30 23 55 53 58l5 0h550z m0 250c30 0 55-23 58-53l0-5v-50c0-30-23-55-53-58l-5 0h-550c-30 0-55 23-58 53l0 5v50c0 30 23 55 53 58l5 0h550z" horiz-adv-x="1000" />

<glyph glyph-name="align-stretch-v" unicode="&#xe9a5;" d="M958-67c23 0 42-18 42-41s-19-42-42-42h-916c-23 0-42 19-42 42s19 41 42 41h916z m-558 750c30 0 55-23 58-53l0-5v-550c0-30-23-55-53-58l-5 0h-50c-30 0-55 23-58 53l0 5v550c0 30 23 55 53 58l5 0h50z m250 0c30 0 55-23 58-53l0-5v-550c0-30-23-55-53-58l-5 0h-50c-30 0-55 23-58 53l0 5v550c0 30 23 55 53 58l5 0h50z m308 167c23 0 42-19 42-42s-19-41-42-41h-916c-23 0-42 18-42 41s19 42 42 42h916z" horiz-adv-x="1000" />

<glyph glyph-name="justify-center-h" unicode="&#xe9a6;" d="M500 850c21 0 39-16 41-37l1-5v-916c0-23-19-42-42-42-21 0-39 16-41 37l-1 5v916c0 23 19 42 42 42z m238-167c30 0 54-24 54-54v-558c0-30-24-54-54-54h-59c-30 0-54 24-54 54v558c0 30 24 54 54 54h59z m-417 0c30 0 54-24 54-54v-558c0-30-24-54-54-54h-58c-30 0-55 24-55 54v558c0 30 25 54 55 54h58z" horiz-adv-x="1000" />

<glyph glyph-name="justify-center-v" unicode="&#xe9a7;" d="M779 225c30 0 54-24 54-54v-58c0-30-24-55-54-55h-558c-30 0-54 25-54 55v58c0 30 24 54 54 54h558z m179 167c23 0 42-19 42-42 0-21-16-39-37-41l-5-1h-916c-23 0-42 19-42 42 0 21 16 39 37 41l5 1h916z m-179 250c30 0 54-24 54-54v-59c0-30-24-54-54-54h-558c-30 0-54 24-54 54v59c0 30 24 54 54 54h558z" horiz-adv-x="1000" />

<glyph glyph-name="justify-end-h" unicode="&#xe9a8;" d="M750 850c21 0 39-16 41-37l1-5v-916c0-23-19-42-42-42-21 0-39 16-41 37l-1 5v916c0 23 19 42 42 42z m-179-167c30 0 54-24 54-54v-558c0-30-24-54-54-54h-58c-30 0-55 24-55 54v558c0 30 25 54 55 54h58z m-250 0c30 0 54-24 54-54v-558c0-30-24-54-54-54h-58c-30 0-55 24-55 54v558c0 30 25 54 55 54h58z" horiz-adv-x="1000" />

<glyph glyph-name="justify-end-v" unicode="&#xe9a9;" d="M958 142c23 0 42-19 42-42 0-21-16-39-37-41l-5-1h-916c-23 0-42 19-42 42 0 21 16 39 37 41l5 1h916z m-179 250c30 0 54-24 54-54v-59c0-30-24-54-54-54h-558c-30 0-54 24-54 54v59c0 30 24 54 54 54h558z m0 250c30 0 54-24 54-54v-59c0-30-24-54-54-54h-558c-30 0-54 24-54 54v59c0 30 24 54 54 54h558z" horiz-adv-x="1000" />

<glyph glyph-name="justify-space-around-h" unicode="&#xe9aa;" d="M958 850c22 0 40-16 42-37l0-5v-916c0-23-19-42-42-42-21 0-39 16-41 37l0 5v916c0 23 18 42 41 42z m-916 0c21 0 39-16 41-37l0-5v-916c0-23-18-42-41-42-22 0-39 16-42 37l0 5v916c0 23 19 42 42 42z m608-167c32 0 58-26 58-58v-550c0-32-26-58-58-58h-50c-32 0-58 26-58 58v550c0 32 26 58 58 58h50z m-250 0c32 0 58-26 58-58v-550c0-32-26-58-58-58h-50c-32 0-58 26-58 58v550c0 32 26 58 58 58h50z" horiz-adv-x="1000" />

<glyph glyph-name="justify-space-around-v" unicode="&#xe9ab;" d="M958-67c23 0 42-18 42-41 0-22-16-40-37-42l-5 0h-916c-23 0-42 19-42 42 0 21 16 39 37 41l5 0h916z m-183 375c32 0 58-26 58-58v-50c0-32-26-58-58-58h-550c-32 0-58 26-58 58v50c0 32 26 58 58 58h550z m0 250c32 0 58-26 58-58v-50c0-32-26-58-58-58h-550c-32 0-58 26-58 58v50c0 32 26 58 58 58h550z m183 292c23 0 42-19 42-42 0-21-16-39-37-41l-5 0h-916c-23 0-42 18-42 41 0 22 16 40 37 42l5 0h916z" horiz-adv-x="1000" />

<glyph glyph-name="justify-space-between-h" unicode="&#xe9ac;" d="M42 850c21 0 39-16 41-37l0-5v-916c0-23-18-42-41-42-22 0-39 16-42 37l0 5v916c0 23 19 42 42 42z m916 0c22 0 40-16 42-37l0-5v-916c0-23-19-42-42-42-21 0-39 16-41 37l0 5v916c0 23 18 42 41 42z m-683-167c32 0 58-26 58-58v-550c0-32-26-58-58-58h-108v666h108z m558 0v-666h-108c-32 0-58 26-58 58v550c0 32 26 58 58 58h108z" horiz-adv-x="1000" />

<glyph glyph-name="justify-space-between-v" unicode="&#xe9ad;" d="M958-67c23 0 42-18 42-41 0-22-16-40-37-42l-5 0h-916c-23 0-42 19-42 42 0 21 16 39 37 41l5 0h916z m-183 250c32 0 58-26 58-58v-108h-666v108c0 32 26 58 58 58h550z m58 500v-108c0-32-26-58-58-58h-550c-32 0-58 26-58 58v108h666z m125 167c23 0 42-19 42-42 0-21-16-39-37-41l-5 0h-916c-23 0-42 18-42 41 0 22 16 40 37 42l5 0h916z" horiz-adv-x="1000" />

<glyph glyph-name="justify-space-evenly-h" unicode="&#xe9ae;" d="M958 850c22 0 40-16 42-37l0-5v-916c0-23-19-42-42-42-21 0-39 16-41 37l0 5v916c0 23 18 42 41 42z m-916 0c21 0 39-16 41-37l0-5v-916c0-23-18-42-41-42-22 0-39 16-42 37l0 5v916c0 23 19 42 42 42z m650-167c32 0 58-26 58-58v-550c0-32-26-58-58-58h-50c-32 0-59 26-59 58v550c0 32 27 58 59 58h50z m-334 0c32 0 59-26 59-58v-550c0-32-27-58-59-58h-50c-32 0-58 26-58 58v550c0 32 26 58 58 58h50z" horiz-adv-x="1000" />

<glyph glyph-name="justify-space-evenly-v" unicode="&#xe9af;" d="M958-67c23 0 42-18 42-41 0-22-16-40-37-42l-5 0h-916c-23 0-42 19-42 42 0 21 16 39 37 41l5 0h916z m-183 334c32 0 58-27 58-59v-50c0-32-26-58-58-58h-550c-32 0-58 26-58 58v50c0 32 26 59 58 59h550z m0 333c32 0 58-26 58-58v-50c0-32-26-59-58-59h-550c-32 0-58 27-58 59v50c0 32 26 58 58 58h550z m183 250c23 0 42-19 42-42 0-21-16-39-37-41l-5 0h-916c-23 0-42 18-42 41 0 22 16 40 37 42l5 0h916z" horiz-adv-x="1000" />

<glyph glyph-name="justify-start-h" unicode="&#xe9b0;" d="M250 850c21 0 39-16 41-37l1-5v-916c0-23-19-42-42-42-21 0-39 16-41 37l-1 5v916c0 23 19 42 42 42z m238-167c30 0 54-24 54-54v-558c0-30-24-54-54-54h-59c-30 0-54 24-54 54v558c0 30 24 54 54 54h59z m250 0c30 0 54-24 54-54v-558c0-30-24-54-54-54h-59c-30 0-54 24-54 54v558c0 30 24 54 54 54h59z" horiz-adv-x="1000" />

<glyph glyph-name="justify-start-v" unicode="&#xe9b1;" d="M779 225c30 0 54-24 54-54v-58c0-30-24-55-54-55h-558c-30 0-54 25-54 55v58c0 30 24 54 54 54h558z m0 250c30 0 54-24 54-54v-58c0-30-24-55-54-55h-558c-30 0-54 25-54 55v58c0 30 24 54 54 54h558z m179 167c23 0 42-19 42-42 0-21-16-39-37-41l-5-1h-916c-23 0-42 19-42 42 0 21 16 39 37 41l5 1h916z" horiz-adv-x="1000" />
</font>
</defs>
</svg>
assets/lib/eicons/fonts/eicons.eot000064400000626274151327220410013234 0ustar00�,,�LP���eiconsRegularVersion 1.0eicons�pGSUB �%z�TOS/2>'LP`cmap�촡�cvt dfpgmb.�ztgasp\glyf�����ښhead ��l6hhea
l��$hmtx������locaz�����maxp�^d name�C��post�J��<prep~�;�+��
0>DFLTlatnliga��z��z��1PfEd���R�jZ��,��,
�������	

 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~��������������������������������������������������������������������������������������������������������������������������������	

 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~���������������������������������������������������h�������������������	�	�	
�
�
����
�
�
������������������������������������ � � !�!�!"�"�"#�#�#$�$�$%�%�%&�&�&'�'�'(�(�()�)�)*�*�*+�+�+,�,�,-�-�-.�.�./�/�/0�0�01�1�12�2�23�3�34�4�45�5�56�6�67�7�78�8�89�9�9:�:�:;�;�;<�<�<=�=�=>�>�>?�?�?@�@�@A�A�AB�B�BC�C�CD�D�DE�E�EF�F�FG�G�GH�H�HI�I�IJ�J�JK�K�KL�L�LM�M�MN�N�NO�O�OP�P�PQ�Q�QR�R�RS�S�ST�T�TU�U�UV�V�VW�W�WX�X�XY�Y�YZ�Z�Z[�[�[\�\�\]�]�]^�^�^_�_�_`�`�`a�a�ab�b�bc�c�cd�d�de�e�ef�f�fg�g�gh�h�hi�i�ij�j�jk�k�kl�l�lm�m�mn�n�no�o�op�p�pq�q�qr�r�rs�s�st�t�tu�u�uv�v�vw�w�wx�x�xy�y�yz�z�z{�{�{|�|�|}�}�}~�~�~��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������	�	�	
�
�
����
�
�
������������������������������������ � � !�!�!"�"�"#�#�#$�$�$%�%�%&�&�&'�'�'(�(�()�)�)*�*�*+�+�+,�,�,-�-�-.�.�./�/�/0�0�01�1�12�2�23�3�34�4�45�5�56�6�67�7�78�8�89�9�9:�:�:;�;�;<�<�<=�=�=>�>�>?�?�?@�@�@A�A�AB�B�BC�C�CD�D�DE�E�EF�F�FG�G�GH�H�HI�I�IJ�J�JK�K�KL�L�LM�M�MN�N�NO�O�OP�P�PQ�Q�QR�R�RS�S�ST�T�TU�U�UV�V�VW�W�WX�X�XY�Y�YZ�Z�Z[�[�[\�\�\]�]�]^�^�^_�_�_`�`�`a�a�ab�b�bc�c�cd�d�de�e�ef�f�fg�g�gh�h�hi�i�ij�j�jk�k�kl�l�lm�m�mn�n�no�o�op�p�pq�q�qr�r�rs�s�st�t�tu�u�uv�v�vw�w�wx�x�xy�y�yz�z�z{�{�{|�|�|}�}�}~�~�~����������������������������������������������������������������������������������������������������������������������������������������������������������X%Hi�@G>	dTLc4	SKK�PX@6	rri		ijYaQ@8		��i		ijYaQY@fe
+%4/&"#"&/.'&/2?6'4/&"27'&'&/&'&54636"/&47'"/&4?6262�@		

	?
-�	?
-		?
	
		
-H?K@-J?G@�@	



	?	-
�	@-	@
	
�%,@I?G-?K@�^
'@Xgs�}@zoiLK<;	L�

~�~i
	
	ggYaQlked][UTEDBA5421-,%#+%"&4?62"&=462'+"&46;2"/&'72?64/7''&"&/&4?62+"&4?6;2'"&=462"&4?62NM1	D``~-HeHR
-S	f�HS

-Sf-He�aa�|NN�NNa`>	+$,eS,
SHe�S,SHfI,e"�``2NMC�@�@):LK�
PX@2��~pgW`P@3��~~gW`PY@&56%5%+26=4&+"2?#!"&546;2+"3!276=46;2�=�A�
%
�A.��-BA.��$$@�=�	
A�
%
#{,CB-@.A$��${�/@L�v+764&"'&"2?2764'D�"��#��!
��
!
I�#��
#��"
��

#
R�	&MYeq5@"'EL	JK�
PX@m�r�r		�gjWh

ii
g

Y

a
Q@n���r		�gjWh

ii
g

Y

a
QY@0hf\ZPNnkfqhqb_Ze\eVSNYPYIGBA=;:85420&+#575#57#5767654&"346235#>54&#"3462+32"&5#32654&!"3!264&!"3!264&!264&#!"�S9	
$		'Q	
			
	

b�%��%����%@T��
	



+�	


&""�""�""|�$-6?u@r

�
~
g
i

i	Y	h	a		Q87/.&%
<;7?8?32.6/6*)%-&-!$$
32+#!"&463!2!"3!264&!264&#!"'"264&"264&'"264&|�%�*�%����%�%%4$$%%4$$%%4$$^"�""�""i%4$$4%�%4$$4%�$4%%4$�Y-qQ@N*,_8/LriiY_O...q.kPIGD.))!+%3254'.'&/"53276767654'&'&'&#"7676?6575'&/&'#&"'#&#'2?6;2#"&#"�y
	! 	�		 O&>,'
	
3A
 &3�u'

��

a3
��	!@


A0#�YIK�	PX@
;7LK�
PX@
;7LK�PX@
;7L@
;7LYYYK�	PX@'���YaQK�
PX@&���WaQK�PX@"��YaQ@'���YaQYYY@FB=<!/+%76?67676=&'&#"'7332?2#"/&#&#"M
90
H
'

&e
Q	!


b/>
	 �XXhK�	PX@C,+aY	
LK�
PX@C,+aY	
LK@C,+aY	
LYYK�	PX@&i
i
		
W

	_	
	OK�
PX@0YYi
i
		
W

	_	
	O@&i
i
		
W

	_	
	OYY@ec][NL87531/XX+"/63272727"327676767654/&/&'&#'53?##"&'&'&=4'&#!"&=463!2



6N)#
!C'0H/6K�� �:'\Z(
	2G	y;'%(6j>�4�l%*@'��WaQCC&5+".4>;29+#9"&5##9"&5�.L+,K.�**H#AZB$�a��ak���AK�
PX@A54
`X
�����LK�PX@A54
`X
�����L@A54
`X
�����LYYK�
PX@4

�	
igYW_
OK�PX@0

�	
igY_
O@4

�	
igYW_
OYY@!������{xsl]\RPKD><'!��+%"&"#"&46?6765'&+"32#"&"#"&4632?6765'4/.'&#'"&5476322632#";76=4'&/&'&546322632+"7'737#52>=�(/&	

�
(0$	


	(0$	
	�&/&	
		
 r%��	'�x.


'/

	

	
,ii,	
	
-��&�T��'!������@�6
�YU��L�	

i

igWY_O�����������Յ�urleXWPNJD@>.,("��+%"&"#"&46?676=4'&+"32#"&"#"&4632?6765'4/&/&#'"&46322632#";?4'&/&'&546322632+""#".'&54>7622>7653#4767676?67676764'.'&w&1&	

�(1$		
(0$	

�
&0$	
	

�
		
.
'%e �				�	'�-	
')
-ss-		
,��&B



##'
	Q



�����@�d:���
��
L�

�
	iig
iYgaQ�����ŷ���������~}trnihfa`[ZTRNHEB+% ��+%"&"#"&47672?676=4'&+"32#"&"#"&47672?6765''4'4/&#&"&46322632#"374'&#"'&54622?2#"374>2332767>4.+5;27654&'&'&#""'&/&'&54>2#"&'&'&w'0&			
�(1$	
(0%
�
	0*	
-%

	
	)3$"
&)
�
'�-	'*

-ss-	-��'=
	
$

#	
'
�����qK�
PX@6YU�����
�LK�PX@6YU�����
�L@6YU�����
�LYYK�
PX@@�	
ig

gYW_OK�PX@=�	
ig

gY_O@@�	
ig

gYW_OYY@/������������������urleXWPNJD@>.,("��+%"&"#"&46?676=4'&+"32#"&"#"&4632?6765'4/&/&#'"&46322632#";?4'&/&'&546322632+"77#527>76=#5733'35w&1&	

�(1$		
(0$	

�
&0$	
	

�%�
��1�T�	'�-	
')
-ss-		
,��&Z'!	.��./n�����@��6
YU���ʄL�	

i

ggiYgaQ���ú���������urleXWPNJD@>.,("��+%"&"#"&46?676=4'&+"32#"&"#"&4632?6765'4/&/&#'"&46322632#";?4'&/&'&546322632+"7332767676=4'&'.'&#"/3273>536?6372"&'&'&54676?62w&1&	

�(1$		
(0$	

�
&0$	
	

n
	

��	 ,
(+3$	�	'�-	
')
-ss-		
,��&.		�QY&+


������@6��YU���LK�	PX@M

��p	
iigYgbR@N

��~	
iigYgbRY@/�����������������urleXWPNJD@>.,("��+%"&"#"&46?676=4'&+"32#"&"#"&4632?6765'4/&/&#'"&46322632#";?4'&/&'&546322632+"7"32767676=4'&/&/&'&7"'.5'&54?67&'&">767632#"&'&'&54?>?67>2w&1&	

�(1$		
(0$	

�
&0$	
	

�



a
	'
	+ .


+5�	'�-	
')
-ss-		
,��&�
		

				
l
&	)2"(	
��#K2@/3
LiYaQ568)556'++"&=46;26=4&+"&=46;2+"'.=46;26=4'&+"&=46;2�.D!"t"  -	D!"tH�:
'.

!t!"�:
'
- 

	"t"����14@1$L����v10)(
	+%".?'&4>6.26'>/7>.2

��

�

�
��
��
�
	��

�

��
��
�

�~g

��
�
��

�

��j�R0@-ggW_O+3#%!!!!!!���X��X��X��R���X�X��j�R $(O@L
�	���gW_O('&%$#"! 
+"27>764'.'&#3#535#535#53�f]Y�&''&�Y]�]Y�&''&�Y]�SSM������R'&�Y]�]Y�&''&�Y]�]Y�&'�<��`SSTSS���h�T5g��t@q
fgL L

�i	i	

	
iiYaQ��ih����uth�i�cbVTDB97,*	55+/67>764'&'&'1&&'&'.7&>6%767>'6.&47676766'&'7"'.'&74>762"7>764'&'.�bZ &*/b.1J$%216612%#"HLM��cc��MLHE���MR[�@AFF��[[��FFB**:8=>89**U85r6�'%$6!7#%P%$8$%' ,==,

:�&K.3k2.%''$/16�SF�dd��KK��dd�EHLHFA@�[\��DD��\[�@V>96)..*59};7V��
7"'+(H7&$R&$7
e
-:@:

*@��g�)@&��W_O%!&!#+#";27676=324+54.#"��??�!;�??�	
��}�"	�}�
��#A@>ggW_O ##	+!264&#!"!264&#!"!264&#!"h%%��%%%%��%%%%��%%%2&&2%�%2&&2%�%2&&2%	A�#T@Q

g	gW_O#"! +35#35#35#535#35#73535#35#35#�����������������`���������f���T���������`��`��j�R+7COv@sLg
gg
g

g		W	_		OED98-,! KIDOEO?=8C9C31,7-7'% +!+
+!"3!2654&#!"&5463!2%!264&#!"7!264&#!"!"3!264&'!"3!264&���%%k$$��		k��

��



��

 ��



��



X$��%%w$�K		w�

}

�l

}

��=-:FOXv@sALi

i		iii
Y
aQPPHG/.PXPXUTLKGOHODC>=54.:/:$#--
+"27>764'.'&"'&'&476762"26=4&"&=462'"264&"&462�aYV�$&&$�VY�YV�$&&$�VYavfc:<<:cf�fc:<<:cfw%$4%%

$$4%%


=&$�VY�YV�$&&$�VY�YV�$&�k<:cf�fc:<<:cf�fc:<$�%%�$��		�

�%4$%3%S
����B\h��@��x
F
E5RL�oL
�

�����	ig
Y
aQDC����������wuqpfe`_USONIHC\D\=<8721*)$#BBK+.6?213251327>/7%22654."2>54&""&=46'"54&"26=32>=4."&=462&'&'&'53264&+5676?6."'&'&'.#";676767632327>�}*}*
�00�$0800:/

$4%%�"

!00"$4%%4$�
		
(
	

 
		
!��pp���S$		00S00%%S$*T��

1S0�%%S$$��	�

�			
��

			
�C #'*<M_Y@V)$\9*'&%! 
#("LJ����YaQXWPOJIBA54-,+'&'#&+#32727376477''%&"264/764764.264'%&"264/764����
���_>>!!}!Ȟ��}}nn3���
�`SSEEm����G_B>B!B}!�<��}}nn�����SSEE���XBTapb@_po]ZJI^YhgTOF@0-	eEL��iYaQVU\[UaVa53/.*(#!+&/76&'&'&'&"3267676326/623227>/7676/732?6?"'6 &'&&'76?�
q3KF`�`FK3	q;.7-?!
l�l!>-7.;�4H~1T	&(�R_B65��56B_=~H
(&	Tz
%i	

	i%

b�>?
�b
�+pQ�	
@

�%%�
p+)

	���7To[@Xh0`(L
g
g	Y	_O:8ljdb[YMJA?8T:T42,*#!	+!";;2676=4&+7>=4&+"&5463!2%!";;2676=4&+7>=4&+"&5463!2���%%hb�Jx%$#a=5%,	}

$
��%%hb�Jx%$#a=5%,	}

$
�$��%E11
	VFnv�$��mi:G
F)Z
$

>$��%E11
	VFnv�$��mi:G
F)Z
$

����.^X@U-L,%$I�
gg	Y	_O1/! WTPNIFA>;8/^1^*( .!.+.6?32?676/32>&/"'&'#"!";264&+"&=463!2+";2>=4.�?G	]JX�S8I	0���00�		�$%$$�

�00���?�6		z�!�	/��0�0%�$$�%
0�0�m,9EQ]t@qg

i

g	iW_OTRHF<:.-! ZWR]T]NKFQHQB?:E<E43-9.9'& ,!,
+!"3!2654&#!"&5463!2"2>4.".4>2)"3!264&'!"3!264&'!"3!264&���%%k$$��		k�'C((CNC('C(00800��		M		��		M		��		M	m%�`%%�%�!		�		>(CNC((CND'�080080

}

}


�m=RUjm~����@��Tl
��L��	1K�~		�~ i%i"i&i'	Y#!g

i
i$g'aQ���pnkkSS���������������������������{yvun~p~kmkmedbaSUSUONKJ==8743/.)($#(+7""&=4622654&"2654&%22654&"2654&""&=46'.6?327>'7%.6?3327>/7#"26=3264&#532"#54&"26=326=4&%26=3264&+";h


$4%%4$�
$4%%4$


�?>
Af�>?A
b�)	%%	�	S

S
��

*

}		)�
S	%%S$$	h	%%S%%


	S	���?--�8,,#	�		>%4$S*

S
??

�

??

�
��

��"26FJZ^k@hLXD0Kg
Wi
_
	OMK97%#^]\[URKZMZJIHGA>7F9F6543-*#2%2+&"264/764'&"2?64%#";26=4&#53%#";26=4&#53%#";26=4&#53b**e**�z�		�	}}�		�	}}�		�	}}�))#))J}		}}T)}		}}T)}		}}T	�j�T+7C[y��d@/E
jdT
l\{�����		LyKK�	PX@r
r�r�



gghgghg		gW_O@t

����



gghgghg		gW_OY@?:8.," ����������|utonhfa^QNIF@=8C:C41,7.7(% +"+
+7#";26=4&+"&=46;2!264&#!"!"3!264&!"3!264&&+";26=4'76.+"&=46;2'&";6?&+";26=4'576.+"&=46;2'&";2?�%%�%%	�		�	�G		��	P��		G		��		G	�K�%%�%(2	�		�M-?		B-�%%�%(2	�		�M-?	B�%�$$�%��		3
��

��

8,$�$$�9	��

�
n-?_�,$�%%�9
��		�n->	^��#/;GS_kw���@�
gg g!g"	
	g#

W#

_
O��zxnlb`VTJH><20&$�������}x�z�tqlwnwhe`kbk\YT_V_PMHSJSCA<G>G750;2;+)$/&/##$+!"3!264&!"3!264&!"3!264&!"3!264&!"3!264&!"3!264&!264&#!"!"3!264&!"3!264&!"3!264&!"3!264&!"3!264&��_		��_		��_		��_		��_		����		$��		�`	��`		�		�`		�		�`		�		�`		�	���		#	�
}
}
}
}
}
H
T
}
}
}
}
�j�R38M^dm@j		!
	Li	i
	
	
igYaQ__NN:9_d_da`N^N^WTDC9M:M8654+*#3*+76.&'53264&+";'.2767654'&%3'"'&'&476762"3!2654'&'&22Re		�		fQ32J)+<:ce�fc:<+*��*k]Y5665Y]�]Y5665Y]k

M	0/QRKM�OpD
D8X

X7C
D=VYdwfc:<<:cfwcZV�T��64Z\�\Y4664Z\�]Y56�
��		`RQ/0��#O�M������2X��@�0`7)�
*	L��

�		��
i

i		Y		a	Q43��{zvurplkhgcb]\QOKI?>:93X4X-,4+/.#'#2?265264&6?2654&7"265462;264&+76=4.4."265462#"32"&54&"2>54&'>�}|Y

Y��
S-

�0

%4$��

{y0o/:/$4%%

%%4$

080H}|Y��

}YH}
D��

M/

%%�


�%0h//

%%4$

%4$$		00++��.=IUaX@UL
g
	gW_OXVKJ?>][VaXaQOJUKUEC>I?I
+!"3!2654&#!"&5463!2&2676&%&2676&#";264&!#";264&!#";264&���%%k$$��		k��}}F}}��T

TE�

�

o�		�

�%�$%�%��

�		@��M��M��


����M;@8C<5L�Ya
	QHF@?++&"'&'&""'&'&""'&'&""'&'.3276727672767327676&�"5#"6"#4#"5"0,!$%B%$B%%!,0�				
**��>,/;g@d L��h
g
		gW_O20850;2;/.&%,,+!264&#!"%3276/&"7##"2?>'&'3%!"3!264&*�		�l	V�}}�S��
}}�S�w�l		�	�

�
��
�o�����o�

����/GV@S81L�	��
gW_OGFA@;:54(%!	//+!"3!264&#!"&=463!2#!"3!2>=4.4&"'&"2?64&"k�00$

��%$�%%��$00��YY}}�0�0%�%%�$

0�0��Yn		��Y}}
����-ux|����@����zyw_T,
�	fL]K+$#I		�		~�g

gY_Ovv0. ��~}|{vxvxnk[ZVUQPGE@=:7.u0u)'- -+.6?32?>/32>&/"'&'#"!";264&+"&=463!010126=7327"3!2>=4.5573#75#?F?G	]JX�S8I	0�\��00}		}$%��B��G��
00��6qB}B��B�4���?�6z�!�	/��0�0%�$h}>		6��G��	0�0*55�Bp���B�B�4��Yf�@aV	P
	LK�	PX@Jrg
i
	
i		i

iiW`P@K�g
i
	
i		i

iiW`PY@-[Z! _^Zf[fRQNLGF@?9831.-(& Y!Y
+!"3!2654&#!"&5463!2"326764&"#".4>2"&'74."3267267654."&462���%%k$$��		k�{>j>>j>,S C%3V33VeU3!0801-A0>i>%%3#$�%�$%�%��

�		>i|i>!2VfV32U20080+ >i>��$4%#!����0Uamy�@�!L

��g

ig		ig
gW_OpndbXV31vsnypyjgbmdm^[VaXaQOLJFEBA><971U3U.+&#
	+!"3!2?!2>54.#!"'&#!"&5463!2#"#";26=3264&+546;264&!"3!264&7!"3!264&'!"3!264&���00ww00"$��	nn	��%%$�{*0		?

?%*���		#	t�`		�		�`		�	�0�_0ww0�0��%oo%�$$0�		�

$

��
}
}
�i�R#SW|�@�ug2&
v^GL5
K

�g

ig

g	g		gW_O%${xki`_][WVUTLJDA<9/,$S%S!	+!"3!2>54.#!"&5463!2#764/.+"#54&+";26=3!26?6.#3#!'5326?6=46;2;2���0000"$��%%$Ŝ%K	�		�	5,(;
(�=���$��CQ	

	�%R0��000��%%$$��'^(%K�

��		25'�+ �`M� "��
K
L .	
)�j�R',/;G�@�.*L
ggg	g		g

W
_

O><20--DA<G>G850;2;-/-/,+)("''+!264&#!"!"3!264&!"3!2654&!)7#";264&#"&46;2�		�B	�B		�		�B		�	�N�p��_5�f�"11"�#01"��(

S

}	�

�	*��q66S1E11E1}""��#'3?\@Y!
L
g
W
_	O64*(<94?6?0-(3*3'&%$##	+#";26=4&#53%#";26=4&#53%#";264&#"&46;2�		�

��b�

�	��N�"11"�#00#���}		}}T)}		}}T)0E11E0}""��#'7;KO_csw�@�5!
iUA
Lg
	gg

W
_

OedQP><)(wvutnkdsescba`ZWP_Q_ONMLEC<K>K;:982/(7)7'&%$##	+#";26=4&#53%#";26=4&#53%#";26=4&#53#";26=4&#53%#";26=4&#53%#";26=4&#53$�		�

��b�

�	��b��	��z�		�

��b�

�	��b��	���
�		�
��*
�		�
��*
�		�
���	��	��)	��	��)	��	���m#'7;a@^-Lgg
g
W
_	O*(;:981/(7*7'&%$##
+#";26=4&#53#";26=4&#53!"3!2654&!!��		�	���		�	����e		���qm	�		�	�	�

�	ЧM	�

�	������#'7;KO_csw�������@�5�����}L&g
	%$g)'g(

g, +*#g"W"_!O����zxfdQP=<*(�������������������������x�z�wvutnkdsfscba`ZWP_Q_ONMLEC<K=K;:982/(7*7'&%$##
-+326=4&+"73#!26=4&#!"7!!%#";26=4&#53#";26=4&#53!26=4&#!"7!!%#";26=4&#53#";26=4&#53%!"3!26=4&!5!%!"3!26=4&#53�		�	��w��	N����		�	�����

����zw

��	M����		�	�����		�}}���		M	��#���		#	��	�

�	Ч)	�

�	Ч�
�		�
ѧ�	�		�	Ц�	�		�	Ц�	�		�	Ц��

�Ч)�

�Ч)�

�Ч����#'7;KO_csw�@�I	
iLg
g
	
	ggg

ggW_OedQP><)(wvutnkdsescba`ZWP_Q_ONMLEC<K>K;:982/(7)7'&%$##	+#";26=4&#53%#";2654&#3%#";2654&#3#";26=4&#53#";26=4&#53%#";26=4&#53$�		�

��b�

�	��b��	��z�		�

��b�

�	��b��	���	�

�	��*	�_�	�_w*	��		M	��#��
�		�
��}	�		�	��}	��	���jkR
%:Gn��@��}|xslgd\UT	

L
	
	�
i		i
ggW_OIH<;'&HnInBA;G<G10&:':!%$

+2!"&5467%2#!"&463%2#!"&4632"'&'&47676"2>4.22/'&'&57'&5>3?4676'46?'"&'V

�8

�

�<

		��

�TIG*++*GI�IF*++*FITJ|II|�|II|J
.dG\WKd-
	B2
?>2Cl	
h��+*GH�IG*++*GI�HG*+*H|�|II|�|HSX	Gd).dG
W	C>.
C!!C.�j�REOZ^�@�GYRQNHL�igii
	
	g

Y

_
OPPFF
^]\[PZPZFOFOKJ@>=;7520/-(&%# EE
+2>4."72"&46%!53264&+";!"3!#";264&+5!2654&'&#572?)!�//900%%4$$�!

S		�K		�		S

�	���	�
	k�6��/:/080�$4%%4$�S

S	�<	S

S	�	*��ɒ�7�f�	����	�jlR%-9EQ]fo�@�-
($
L�gi

igg	g	
	
gW_Ohg_^SRGF;:/.lkgohocb^f_fYWR]S]MKFQGQA?:E;E53.9/9'&%%)2+4&#!"3!273053?'.'&!76?!"3!264&!"3!264&!"3!264&!"3!264&264&"72"&46k	�<		�*��n�����o����



��



��



��



�B#11E11""=		�6�����F���`�G���

}

}

}

�1E11E1}""���(1Acr{��K�	PX@!|/
:kqpfeb\VQ'LK�
PX@!|/
:kqpfeb\VQ'L@!|/
:kqpfeb\VQ'LYYK�	PX@[		�		~
�ii

giiW_OK�
PX@`		�		~
�ii
W

giiW_O@[		�		~
�ii

giiW_OYY@CddBB32
��~zyvudrdrBcBc_^YXTSPOIH2A3A,)$!11
+2>4."72"&46%#654."!"3!2654&%2&'&54>2?67673'&"'&#'&#567?4&"26'462"&�//900%%4$$�'CNC(��		�	��0('&(1l,,��U�
��
���X��$4%%4$S
40:/080�$4%%4$�'C''C'
�;�
}01U8?=:U10�=S,0		0,S=���f���	�7�e��i�7�$%3%%
�j�RDaq�@�p4'9	&	ohgQK

L		�		~


�

�giiW_Ocbmkbqcq][TS?>;:,*%# DD+2>4.""&462%!"3!264&#!572?6.'&!2654&.?32?>/3276&/"'&'#"}080/90�%4$$4%��B		�		�K�
hY��

�e

j\
}W��
^X^		\Zm009/0%%4$%�	�<	�
�
��	�7��		G	����
S�?�
	�,�	H�	�jkR'+7GKT]�@�'"L
g

iigg
g
	
	gW_OVUML98.,((ZYU]V]QPLTMTKJIHA?8G9G41,7.7(+(+*)! 
+!"013!2654&'.'&!76?!!"3!264&!"3!26=4&#53264&"72"&46V�<		�	��n�����o��7�h�6		�	\��

$

����#11E11""R	�6�		�	*���	�F���`�G���6w

�	S		S	S)1E11E1}""�j�R#[@X
gg
	
g		W		_	O   # #"!
+!"3!2654&!!%#3!!!)5!�B		�	������w����R	�B		�	����`��6�6���j�R?q���'G%5654'.'54&'67654'&'&#"&'&"7326?6767654'&'#'&327#"'.54767676?6767'754&">=4&"327&'&547632276?65327&'&'&&'6767676324767676767632&'&>.#"&4632676762&+"#"/&#"327#".%0##"'.=476327�2"'!8%951:7Dc*%8$<#m�OG�5$%!3I'!*
?1VD"27,(%.*%-$
 f	%
/%$(&%
	
)*7ZVs`
*F=LDB?):�!(0,>35-

IHP?G*
�	"11"ZiOQ1'	
	
++!  8.28*,LSE`X#09L=">}

�-Z>-$*	%c=62/&3#;!W�I>8'7P
	N&(#	
$�V



		
 

� 0?�RJB40	
��(-1;0,#
!5:HPZ	�	1F0�?0$	
!@#$(1a!0@v"

�jU!H\bn�@�bZFB;2/)(	LJ	�

�
g

g

jW_OdcJI""khcndn^]WVSQI\J\"H"H?>54,+! +#54&#3!2654&+7!!"54&"&=4&"26=>=4&3";2654&#476?#";264&�>
�^
�	q��S�6��

!!t)

)

�

�	�h

}��		A	L�s��*.cc.***4�		�4**F7
h		$��

��"+8Aa@^i

Y

a	Q:9-,$#
>=9A:A32,8-8('#+$+""
+"2>4."&462%"2>4."&462%"2>4."&462}00800%%3%%]00800%%3%%]00800%%3%%�080080�%3%%4$�080080�%3%%4$�080080�%3%%4$��"&+7CO�@Lg
	g

gggW_OFD:8-,KIDOFO?=8C:C20,7-6+*)'&%$#"! 
+)"3!3!265326=4&!5)3#!!7+53";264&##";264&#";264&����		�	�	����$�������wѼ>���		�
	�		�
	�		�
�}	�!		�	}}TT��)T�
}
}
�]="+8Au@r
iiii
i
		
Y

	a	
	Q:9-,$#
>=9A:A32,8-8('#+$+""
+2>4."72"&46"2>4."&462"2>4."&462�00800%%4$%00800%%3%%00800$$4%%m080080�%4$$4%��080080�%3%%4$�080080�%4%%4%��3X��@�1`8*�
x	+	L

�		�g
i

i		iW`P54��{zvurplkhgcb]\QOKI@?;:4X5X.-
+!"3!2654&#!"&5463!2&6?2654&7"265462;264&+76=4.4."265462#"32"&54&"2>54&'>���%%k$$��		k�-
S-

�0

%4$�
�

{y0o/:/$4%%

%%4$

080�%�$%�%��

�		?}	D��N0%%�	

�%1i00%%4$$4%%

00++���'+4=
@
75/-*(	2+4/764'%&27%64/76
%%727%%727%�
xw�!	�!wwww��
xw���N�Nf�L�Ln<<���Ln<<n^D>��>D
>D

��E>������?��{�>��>���$?In�\@Y�

g
	iW_O&%}xvsp`^NLHFEC8631%?&?#! +#"1"326?326?6.+732%#"1"326?326?6.+732'.+76.326?32326?6&%&+";32?6�W)	U$9""K F�W)	U$9""K F�"<	>	&F	��		���	�SD,#%]}"K	�SD,#%]}"+:	�	�"Y	Y%x

�	�
��=+7GKWco����@�=}Lg gg!		g
g"



g$g#g%gg&g(g'g)gW_O������rpfdYXNL:8.,! ����������������������ywprlidofo`]XcYcTQLWNWKJIHA?8G:G41,7.7(% +!+@
	*+#";26=4&#53!264&#!"73264&+"!"3!264&#";26=4&#53!"3!264&%3264&+"!"3!264&#";26=4&#53!"3!264&%3264&+"!"3!264&�		�

�ВG		��		�

�	P��		G	�3�		�

����		G	���

�	P��		G	�3�		�

����		G	���

�	P��		G	=	��	��}
S

}

}	�

�	��S

*
}

}
�		�
��S

)

}

�m+7IZz@wQF	L
g
	
Y		g
igW_O.," VUMLBA:941,7.7(% +"+	+!"3!2654&!!3264&+"7!264&#!"7!264&#!"'&"264/764'&"2?64-��		q��H����		�		�6		�		�6	�TTEEeSEESm	�

�	��`
S

S

wSSEEMSEES�j�R=Gbu�=@:�|urSE4(!L����v\Z86-+&%+47654#""#101&'&27327676'&'732767>'&'.'&'.7676327'0"1'&'.'&'&?'&'&767'&���q)�.2/5%/1%\�E;G2"%
�/,*!*(48V!
X����N,%("1)$ 
	
	>�`:L0BUk/:AN�q)6:;�
%/]H^��D&0%5.2.�!!
!V84(��N��
$+0)"(%,�>�:`g04..)%.lTB&�"26FJZ^jv�����@�XD0Lg

	g! gi$#"W$#"_O������ywmka_MK97%#������������������~|w�y�rpkvmvfd_jaj^]\[TRKZMZJIHG@>7F9F6543,*#2%2%+&"264/764'&"2?64%#";26=4&#53%#";26=4&#53%#";26=4&#53#";264&3#";264&3#";264&#";264&3#";264&3#";264&wTTEEeSEES�Q}		}TT}		}TT}		}TT�!}		}�}		}�}		}��S		S

�S		S

�S		S

�SSDEMSEDS�
}		}
}S*
}		}
}S*
}		}
}S�


S





����/3?OS_os�������@�M-
��mL(&$	g
g)'
%g.,*!g g/"-+W/"-+_#O��������utb`TTA@54! ��������������������������������|ytusrqpig`oboT_T^ZXSRQPJG@OAO;84?5>3210*' /!/	0+#";26=4&#53264&+"3#";26=4&#53264&+"3#";26=4&#53264&+"3#";26=4&#53#";264&#";26=4&#53#";264&#";26=4&#53#";264&$�		�

��		��

�	��		�		��	��
	�

�6�		�

����	n�

�	���		�	n��	���

�

�
�		�
���
w
�		�
���
w
�		�
���
T�		����

M�		����

M�		����

����/3?OS_kw�@�M
-	E
Lgggg		ggg
g

W

_

Omla`UTB@64! tqlwmwhe`kak\YT_U_SRQPIG@OBO;94?6?3210*' /!/
+#";26=4&#53264&+"3#";26=4&#53#";264&!"3!2654&!!3264&+"7!264&#!"7!264&#!"�

�	���		�

�	���		����		q

��G�!�

�		w

��		w

��	�
�		�
���
T�		����


��


���e

}

}

�j�R#'7;GT`pt�������������@�H
L2g
	10g34

g7g65g"9 8:#!$g=,<(;$/+'&$'g.*&%%&W.*&&%_-)%&%O�������������vubaUU=<*(��������������������������������������������������������|u�v�tsrqjhapbpU`U_\YRPMJB@<G=F;:982/(@7*7'&%$##
>+326=4&+"73#!26=4&#!"7!!%#";26=4&#53";264&#4&+";26264&+"3326=4&+"73#!26=4&#!"7!!%#";26=4&#53#";264&!";264&#264&+"3#";26=4&#53%!"3!26=4&!5!%!"3!26=4&#53�		�	��w��	N����		�	����		}�}		}c}		����

���!w

��	M����		�	����}		}
�		}
	�}		���		�}}���		M	��#���		#	��X	�		�	Ц*	�		�	Ц�	�		�	Ц�


��	�		�	Ц*	�		�	Ц�	�		�	Ц�

)
*	�		�	Ц*	�		�	Ц*	�		�	Ц�j�R/3?OS_os������@�m�!�L(&$	gg
%g)g*g'

g.!!g,gg +g/"#g-W-_O��������utb`TTA@54! ��������������������������������|ytusrqpig`oboT_T^ZXSRQPJG@OAO;84?5>3210*' /!/@	0+#";26=4&#53264&+"3#";2654&#3264&+"3#";2654&#3264&+"3!#";26=4&#53#";264&%#";26=4&#53#";264&#";26=4&#53#";264&$�		�

��		��

�	��		�		��	��
	�

�6�		�

����	n�

�	���		�	n��	���

�

R	�

�	���

w	�`		�	�_w�

	��		M	��#�`

�		�
���
�	�

�	���

��		����

	���0@NZt�����@~T	S9
Z=L&KLDI		�

�i
	
	
giYaQ������������������nl]\@?)'00+"327276?6&/276.'..=46?&'&/&/7'&'&577#"'#.'&'.7567632&76327676.732?>.'2?64.#";264&�1~�!#1S(
$k('.?#@65|�>�2�:NV-
,p6)@K/-6�*	-e,-	(.76009�1C$-(���	SS�}

}	
	��m<#7Q)G}$2,��GEQ�}
&)\:(2UY-Y	B�
�6(G�9=KA?*!O<>E>o& '%?A�|/
:E
31+?>SSS�

�j�S%(Z`fox�������@�'9?8^[._-bFaGXQ	L��g	g		i#g


i

i$i i!i%g"iW_O������������zyqphg&&������������������������������������~}y�z�utpxqxlkgohoUT<@;&(&(!%%&+!326=!2654&#!"3!264&74'&'5>'.'54&".26=>'467&5"264&"&462"264&"&462"264&"&462";264&##";264&#";264&����	��5	�


�
�H".#
$0#.#%/�*S*��%%4$$	
%%4$$	
%%4$%	
�		��		�2�		�

G
��		G	���


q����
@
$' 
?
	$		(�8
u9
	$4%%4$S
T$4%%4$S

S%4$$4%T

w
�

�


����#'+/37;kqw�@�!oOHE=srpga`UT<	
L�~

~g	g		g
g

gW_O8800,,$$dcLKCB8;8;:97654030321,/,/.-+*)($'$'&%
##+#54&#!"#";3!26=32654&#5%!!'#53!!3%5>'.'54&".'4&26=>54'467&5��	�
�		�
�	�	���6*���6�*��_
/"$/S/"

#0�)S�>		>
��?		?H
*SSS}*SS����_S�5��_�U
*		.:U

	*

.<A
K�K��=&3@MYeqz��@�
i

giiig iii
g
		
Y

	a	
	Q|{srhf\ZPNBA54('
�{�|�wvrzsznkfqhqb_Ze\eVSNYPYHGAMBM;:4@5@.-'3(3! &&
!+"2>4.".4>2"2>4.".4>2"2>4.".4>2!264&#!"!"3!264&!"3!264&"264&"&462�(C''CPC'(C'009/0(C''CPC'(C'00800(C''CPC''D'//900�G		��	P��		G		��		G	��%%4$%	
='CPB''CNC(�080090S'DND''DNC(�080080S'DND''CPC'�0:/080�
��

��

w%4$$4%T

����&:Ki�@C
I)LK�
PX@A

rq	gg
i

W

`
P@A

��	gg
i

W

`
PY@5ML=;('fd`_RQLiMiFEB@;K=K641/,+':(:&$+26=332>/>=4.+"32+732653264&+"3264&+4&"!764&"01264/!264&�	]M
B&/}

h%%h�h

h		�

V�		�
��tZ}}Z�	4
hs
c5")/��
N%)%���

9
��

9��
}Z}	}Z�jWS"H�@B5 LK�
PX@*	riiYaQ@+	�iiYaQY@EC<;42)(""
+#"2767654.2"&=46"'&'&54>;26=4&'532G�J|I0/QR�RQ/0I|�	
A+*FI�HG)+=j>>$4%>?i>RI|J��`RQ/00/QR`wJ|I�}		}�!UHG)++)GHUw>j=W }%%} W=j>�j�R3/@,L�iYaQ)+67654'&'&"32767264476762"'&'&��065Y]�]Y5665Y]kKEB60�B0/QR�RQ/00/QR�RQ/0s16BFJk]Y5665Y]�]Y560��?`SP/00/PS�SP/00/QR��0K@H!L�~gW_O0/*)$#
+!"3!2654&#!"&5463!2'&"2?64&"���%%k$$��		kw�����%�$%�%��

�		—���
�j�R1CXjz@w%	
L
ii		ii
i

Y

a
QZYED32edYjZjKJDXEX982C3C,+#!
11+%"%64'%32>4.".#"32672>4.2"&'501&54>".4>28101".547015>2A*I��

tI*-M--MZL-
��I*-M--M-*It
-LZM--M-"9""9E<"9��"9""9E<<w"9"<E9""9�("�6�"(-LZM--M-�"(-MZM-)"�-M--MZL-q"9D9"&"9"��"9D9"&;&��"9"&"9D9"	�j�R'3?KW�@�gggg

g

g		gW_OMLA@54)(TQLWMWHE@KAK<94?5?0-(3)3$!''
+!"3!2654&!5!)!'#";264&'#";264&'#";264&'#";264&'#";264&�B		�	�l��GMh}

}		}

}		}

}		}

}		}

}	R	�B		�	*���<�<}

}

}

}

}

��= $(.8JMQUY_i{~�����������K@�/,+`]\M����&(���~ L27
	g65
43
g8;g:9$g>$1B/-+)(&$(g0A.@,?*'&%&%g<#=!  g"W"_O������������lj[ZVVRR;9*)%%!!������������������������������������������������}|vqj{l{fedbZ_[_@GVYVYXWRURUTSQPONLKE@9J;J5431).*.%(%('&!$!$#"  C+!"3!1326=4&#7#7373#73#73#73'3546+532!"3!1!26=4&#7#7373#73'3546#!5!2!";1!26=4&#7#73#3546#!5!2!"3!1326=4&#7#7373#73#73'3546+532���%%�}$$�``�B}B��}B}�}B}�}B}�}B}JJ_�ii��%%�w$$�Z``�B}B��}B}�}B}JJ_���c��%%�q$$�```�B}B�J_���]��%%q�$$��``�B}B��}B}�}B}�}B}JJ_���=$T$%T$�__}}}}}}}}}}}`K
i}
�$T$%T$�__}}}}}}}`K
i}
�J$T$%T$�``~`K
i
~
8$T$%T$�__}}}}}}}}}`K
i}
�m,E>@;/.L>%KgW_O	+!"3!2654&!!?'&327654&>&/&32?>.��H

���qT55T
655T
Tm	�_�	�_w*��*M
��
*
��*�C(,04>@;4321,+*) L�gW_O%$,&+&54&#!"'&;73!26=327654!!'57��
����H
�	�l}G���}}#8		8#
��
#8		8#
N
���Nw�����"<FP_@\G
Lgi	

g

W

_
O$#POLIFEB?74.-*'#<$<
	+264/764&"%'&"2?64#4&#!"#"3!26=4&463!2!#!"&=!}	EESSYSEESh>%�$?
%�%�q
�	��q	�f	� EDTSvTDES�b%%��	*$$*	b		��?����$6Ur�� @%}Vv]wW3

�M�L	�S	LK�PX@W
r

~

~	pgi	i		hW_O@Y

�

~

~~gi	i		hW_OY@;ss��������s�s�����zykied`_ZYPOJIEC?>/.'&
+!"3!2654&!!264/764&"2?64/&"3;264&+764&"54&"26=264/3264&+"#2?26='&5&'"/#";#";2?5>5754&"'&"��l		�	��k�DDT�TTEE�:T

!DE
ED!

T�E
T!D>!T

E�	�f		�	�fq�eEESSSSEEV
ED!
	TVT!DE�D!T

E�T

!D�m)?W@T7L

	iY_O+*<931.,*?+?$!))	+!"3!2654&!!%#";#";2654&#3264&+";264&��H

���zS		>>		S	8>>		S

S	m	�_�	�_w*���	�_w

	�_
��=$5a@^&
L�	���
hW_O54/.)($#
+!"3!2654&!!'&"2?64&"7264/&"2��l		�	��k��EESS�EESS�
��H
����EESS�EESS�C%6EHG@DHGF-"LgiW_O21)(		+!"3!2654&!!&"264/764'&"2?6432?64/&7��H

����SSEE;SEES��}		})CCC	�`		�	�`wZSSEEMSEESoTT
�
�,,�m%6H@E-"LgiW_O21)(		+!"3!2654&!!&"264/764'&"2?64��H

����SSEE;SEESm	�_�	�_wYTSEDNTDES�����,->A}���)2'&2?>=4&/.=46?62%&"32?64'5656.".&'&'&1#'&727>'676.'67>'&'"'67>.'&'2>.'.5676'&7676!"3!2654&+53264&+46;264&+"#";#"&5463!2#";2>=4.+".=4>;2'"2>4."&462�iGGi *+i$F$i+*jCCjj!D!j��}		tC��

	
B"
/& $$!JHM@8A	�%24
		
	F`
0'7G��%%M$$
�*

*#1		�		M
��(C''C(�(C''C@/�/0�0�"9""9D9""9""11E01		.� .

. �.��		�		
�
T>Y,��	
$*,#	*+%y<
�	

		
@		
$4j�$��%%M$�u	�

1"�	M

��'D'�(C''C(�'D'��00�00"9D9""9D9"�1F00F1����-03?n@k	L		�

�g	
	gg

W

_
O64
<94?6?320/,*%$-
-+!264&#!"276&/&";#"2?6'&+5'3#!"3!264&*�		�l	P
}}
hh}}hS�SS��l		�	�
���}�		�}��o?o�`

����#'+/37�@�gg
	g
gW_O44,,4747653210,/,/.-+*)('&%$#"! 
+!"3!2654&53#5#5))5!!!%!!!5!)5!�B		�	������"#�����%��%��q#��#�l%��q#�	�<		�	��}})}}M}}}}�}}}��}}}����!+6TW@T
3(R
L	g

gW_O-,$"MKEC<921,6-6'&"+$+8333
+'.+"&+".+"3!2654%32#'7>!32#'7>#!"&54?6;23!2�* � �� -	%k$�ѿ�	���	0��	-� 3>ox�"%%�~
F*E*�{		�x
`��B[e@bML)X&	L
gg		iiW_O! [ZJIDC=;41 B!B
+!"3!2654&#!"&5463!2"'&.'7>'&54&+"326=4&"'&'&776?���%%k$$��		k�4($-'5!
Q97^`qeWU03T*E48(3�%�$%�%��

�		��"5&+	#)pa]79Q32TXf,-8
4E*
����#8;_y��@�c:b
L
<	n	 L�

�		�g

ig	
	iY_Oa`99��}|rplkfe`yay]\UTONJIDC?>9;9;430/##
+!"3!2654&463!2!"&#7.6?327>/74&""&=4622654."2>%"54&"265132>=4."&=462���%%k$$�f	kp��	�!5�G}**�00V$4%%4$

080/:/��"
"00"$4%%4$�%�<%%�%���		��q6!	���pp���>

%%S%%

00S//�T

��		0S0�%%S%%��;T@QL
gi	gW_O! :852/-,*'$ ;!;
+!"3!2654&#!"&5463!2264&+";#";264&+���%%k$$��		k�'		S				S		�%�$%�%��

�		>
��

w��%6FJZ^nr���@�
-"�lXDxdP<	
Lgig
g
		
W

	_
	
	Otsa_LK87����|zs�t�rqpoif_nan^]\[URKZLZJIHG@>7F8F21)(	+!"3!2654&!!&"264/764'&"2?64#";26=4&#537#";26=4&#537#";26=4&#537#";26=4&#53��H

����SSEE;SEES�QTT

**�S

S	**�S		S	))�TT

**�
�_

�
�_w�TSEDNTDES�
TT
T**
TT
T**
TT
T**
TT
T*��#'7;KO_csw�������������!"3!2654&!!%#";26=4&#53#";26=4&#53#";26=4&#53#";26=4&#53#";26=4&#53#";26=4&#53#";26=4&#53#";26=4&#53#";26=4&#53#";26=4&#53#";26=4&#53#";26=4&#53�6		�	�`�	S		S	))S		S	))S		S	))S		S	))�T

T**T

T**T

T**T

T**�S		S

**S		S

**S		S

**S		S

**�
��H
��*
TT
T*}	S		S	S)}	S

S	S*}
TT
T*
TT
T*}	S		S	S)}	S

S	S*}
TT
T*
TT
T*}	S		S	S)}	S

S	S*}
TT
T*
��#'7;KO_c�@�!
A
]ULgg
g
	
	gg

ggW_ORP><*(cba`ZWP_R_ONMLFC<K>K;:982/(7*7'&%$##	+!"3!2654&!!7#";26=4&#53#";26=4&#53#";26=4&#53#";26=4&#53-��		��S		S	))S		S	))S		S	))S		S	))�
��H
��*
TT
T*}	S		S	S)}	S

S	S*}
TT
T*��=ep������@ѹ
ba_	�^ �Y421tXVU5��
�DCA:
	LW	igg		i
g

g
i

YWaQ����gf�ý������������������~xvmlfpgpROJG>=.+&#
ee+326=4&+"&'54&"'54&+";26=726=67;26=4&+"&'5>4&'567'21"&46+"&=46;221"&4676=46;2+"&=4/"&5146276=46;2+"&=4'��$$�%66%�%%�%6


6%�$$�%66%�	
�	��	EG	
�	�

�	EG


>E	�

�	�%�$$!7l		l ( �6!%%�%$!7� ( l		l7!$%�%%!6� ( �6!%�
	��
*

�		*E��	
0	)		�

*	D
	9D	*

�		)	��=;K[w������@�^l�L$g%*	gi
g&



g+ '!gig(g,")#giW_O�������zx]\><! ����������˼������������������������x�z�sronkieda`\w]wYVQNFC<K>K7632/-)(%$ ;!;
�-+#";26=4&+"&=46;2#54&"#";26=3264&#";26=4&+"&=46;2#54&"#";26=3264&#";26=4&+"&=46;2#54&"#";26=3264&!264&#!"!"3!264&!"3!264&�%%�%%	�		�	>


	!�%%�%%	�		�	>



!�%%�%%	�		�	>



�G		��	P��		G		��		G	=$�$$�$�

�

?				
�%�%%�%�		�		>



�%�$$�%�

�		>		

		q
��

��

�mAc�T@Q{nhYLF6)$	LUK�~gW_O�~\['&
+!"3!2654&#!"&5463!2&'&"'.6?;>?6&%&'.'.6?;>?6&%&'.'.6?;>?6&���%%k$$��		k��	&&	*
+,*	&&	)++
)		&'	*,+
*	m%�`%%�%�!		�		h		jYYj		�ee�		jYYj		�ee
�		jYYj			�ee����(2Hc@`
@=7	L�
	
g		gY_OCA?><943/*'%! 	22
+0#!"&463265!""&=463!2"&54&#!30132'3&5463!25!63!2���

%��%
	k
%��%
�}	##��#$l
%�%

��

%�z%)"�hh�e#���$eny��[K�
PX@&*xung32
LoTKK�PX@&oT*xung32
L@&*xung32
LoTKYYK�
PX@A��~~		ii

Y
a

QK�PX@;��~		ii

Y
a

Q@A��~~		ii

Y
a

QYY@������|{mkOMGE@>7654%$
+47.'&%2632656/&#"'"3262656/&#6767632#"3#"'65&62#"'&'&'&547676767632767>7654'&'&'&#"l"�1R;�&�		l;-*?X�		h5Y*1+5T:&
��y3N@0�26<Ry��V�V)& #@ %%@RbQ[XLF@ %%*9IbTWR<0""&5<RGd[PV3;%!!A@ZMQ�I/Y�
	��		����
O3

	3T��2XcoU^0ZQ=%%@RV�V*%!"@ &&!?@RPc]V)& #��""&5I(IbTWR;< !%(4<QGdVUGG3��#/;Gt@qg
gg	g		g

W
_

O><20&$CA<G>G850;2;+)$/&/ ##+!"&463!2!"&463!2!"&463!2!"&463!2!"&463!2!"&463!2�B		�	��e		��B		�	��e		��B		�	��e		��
}
}
}
}
}
�f�O�"&'&/&'&'&'#"'&'&'&547632765##".4>3235.54>23>32#"&'#0132767'&>76767>+%32676?676767>;6767#"'&'46;23264&#"+"&=47>54&"+"'.#"32676;2#"&'&?&'�)7!5$-

;G$$*&
?,//,?"9D9"?,00,?&+
%&5--$5 7,��$(!16





61!(#MR

,S"	^
	%%	
^	0E1_
	%%	
_"S,

RM�


$12Db:5(
	�0:/ 0"9""9"0 080�t
(*-
bD21$

�,"

",3SF6+.�
%4$
?##00##?
$4%
�_.+6FS3 	���#09FO\e�@�igii	g		ii
g


Y

a

Q^]QPHG;:21%$ba]e^eWVP\Q\LKGOHOA@:F;F651929+*$0%0 ##+!"&463!2!"&463!2!"&463!2%".4>2'"264&".4>2'"264&".4>2'"264&�<		�		�<		�		�<		�	��00800$$4%%00800%%3%%0080/$$4%%�
��

��

�080080�%4$%3%�180080�$4%%4$�08019/�%4$%3%����@ 36@3.L��v"!*)!3"3  +"'.7>%".7&>!"'&47>9w�����
���,
��
�����l�
����$#����j�R-Qkl@i_VL8iU1L�~i	gYa
QSRdb[ZRkSkFE?=43$#--

+"'.'&47>762"276764'&'&"/".?'.>;7>32'2'&6?#"&/+76�f]Y�&''&�Y]�]Y�&''&�Y]f|kh<??<hk�kh<??<hk@��
;��NN��;��0��@@��0��'&�Y]�]Y�&''&�Y]�]Y�&'�?<hk�kh<??<hk�kh<?�uu׊
��
���_�l��l�_�j�R&DQZ���������@���6L���

�

~i	i"!ii i#i

W

_
O������������][SRFE('���źһҵ�����������������������������{zurmjfd[�]�WVRZSZLKEQFQ'D(D&&$+%"&'&'&'&/&'&'&54>2"1676?6767654.".4>2'"264&!".54>3!2#!"3!265462%"&4762!"'&462"&462'"264&3#"&46;2"'&'&547&462'3267654'&� 
>i|i> 3V2
)$$*3V300800%%3%%9�<00�

�_%%�%1����	�t��\"11E11#"CTT

\!
n

	
 2d	JA531(2>i>>i>3(135AK
�2V3
*"A)FONF)A#)3V2��080080�$4%%4$��0�0$�e%$			��0*	����tG1E11E1}""

��:


2}		


������$-:Y@V
	L�gii	W	_O8721,+('$"
+76762!	/"&5463!2#!4&"267".4>2*���0�l��˷��!
�

�B�%&.+1,+1,S,`�

�:`�j��`��.	�

�<
7*,,2,,�����(3@Id��@�*Ob	��L&Kg
iiii
g		ggW_O��geKJBA54������������ywtrqpmleg^\XWVURQJdKdFEAIBI;:4@5@-,
+%!"&5463!2%!!"&'/.767662".4>2'"264&!"&=462!#"&46;2!"&=462!#"&46;2!"&=462!#"&46;2�<		�	�H��f�
Ԕk��
j���00800%%3%%.�;


�*

?K�<	�>		S

K�<	�>		S	�	q��	)H�����
k��#j�6w080080�$4%%4$��
T?G

	��
S	S		>G
��	ST

?
����4q����t@q_G9	
$LZKg
	
i
		iW_O��sr��������������{yr�s�?>2/*'"	+!"3!27>/!2>54.#!"'&#!"&5463!2%&'&'&#"&/&'.32>?3276547676."32>76&'&"'.767>327"32>76&'&"'.767>32���00��"00"$��3�g$%$��	
 
	
L"

�3'!4&
#
#
	�3'!4&
#
#
	�0��0P30$0�t% %$$$!([?O-o'
9D5C-0	
0-[".%�Z-APRe%
=&AMA&A'%A�//r&AMA&A'%A�//����3BE&@#EDC4L�v33+"/.54>?6"?>54&/&"'&5467�JH�%=##=%ݒ��%=##=%�HJGH�(77(܏��(77(�H�	$		���(@&�&@((@&�t&@(�;)�t);;)�);��w
��e�֕�����8fr~���@�
^Q	%
LHK�

�g	g		g


g

gW_O���tshg�����������{xs~t~olgrhrWV	+!"3!2654&!!.6'&'&"'.32?>41/"5'4&"51"5'#?264'&'&737>'7!264&#!"!264&#!"!264&#!"3264&+"-��		q��H�#"6.	Y��Y""7-�w��		w��		w��		�		�	
��

B
����EFM7.C<;/YEFN7-C<;.e

}

}

}

���2x���h@e�
L�
�
�

j		iYaQ��������������zyJIEDBA=<
	xx+"'.'&'&'.67>'&'..'&47>67676&'.>767676>76'1&'2767654&'.67>176764'.&'.67>54'&'&&&'.'&'&7667>7'".4>2"2>4.�%% &;1	%  %
1;' %% ';1
%  %	1;�.5.&
;!<
&.5
4BB4
4/
; !;(/4"4B!!9_88_r_88_9-M--MZM--Mu
	""%"%"
(F
(
"%"%""%"%"
! 
F(
"%"%�&
"
	?4!	9!4?	
#
	 '' 	
#	? 9:8@'" 'v8_r_88_r_8w-MZM--MZM-���i/RIU]lx�j@glf5#	e_~zysmWVPJ9
L�
	
i		iiYaQvupojhca%.#)%,
+%54'.'&"2654&#&5>767>636=.#"3>76&"&5462'.'476.&5>7462"&5('�Y]�]Y�'($?g>  ,S"^S
2�GG�2	T]"S+  >g?��G=N+'�5�DD�57�CC�7#H?&*N��e`\�)**)�\`e�/<>g? A km�FY3453]E�mk �� ?g>7��A��f@=+&�D****K')*'���W%*?@e���i�S7�K�
PX�*LK�PX�*L�*LYYK�
PX@#�gg_OK�PX@"�gW_O@#�gg_OYY@/-&$76'7%	+.?#".54>3!2#!3%63!2>54.#�	]S(D((D(�(D((D(����33o
S)c44��(D(�(D((D(�Q(E(���4�Q4	��4�4��=7b��K�
PX@=5
`
	ULKK�PX@=5
`
	ULK@=5
`
	ULKYYK�
PX@M�
�i	
	Yig

iYaQK�PX@H�
�i	
	ii

iYaQ@M�
�i	
	Yig

iYaQYY@.dc����poc�d�]\XWSROMIHED@?;:1/+)77+"6?26=4&7"265462;264&+76=.4&"265462#"32"&54&"264'>2"'.'&54767>276764'&'&#"&46A>!

�,
	&my

\W-,>,&

&,>,
��aYV�$&&$�VY�YV�$&(F<9cf�fc:<<:cfw	�[2�

�,

	
�

p	,K,,

&&

,,@
"�&$�VY�YV�$&&%�VY`FBD;	n�wfc:<<:cf�fc:<	���j�R M��������@�W
�`C86		/������L

��

�i

i	i		i

iiiW_O������"!�������μ��ͪͤ�������������{zsqljfe]\TSON>=)(!M"M  +%".'.547&5476762%22>7>67654'&7654."36%"/&'&'&'#'#&#"&463&767632767654623276#"&46;23#"&46;2!"&?>?67&54627676%!'&/3'&676764'&"!'�3\F"('BD�DB'("F\��;OXO<

Cs�sC
�?@="	&"	

"

#&,+(	
��*		*�)		)	n�B �
k&-L-&k
� �tg��:


�>fh��4^>;+ODB'(('BDO+;>^4�	:Z11Z:
DsCCsDP'#		< 

"#
	
	#
/



��
�#
l� 4"!!"4 �l
$�
*g
b�5
5�b
����@L�v-(+654&'.#"3267�	��

���
	=
,
	����
����@L�v
+"327>54'654'.���(	��
�
��;��
	
��n� @L��v+'&"?27>54/76'.���4	��+W+��;
�--,���	��+W+��	��,+�
3@0L��W_O

+#5##!5���$��H����SSS���i�S$.@@=�~�W_O,)&%$#:+#!"&'463!"3!2654&+;265/Q)7&��&66'���=�	c	R3'0<!"��&55&/'7;���	

	��V�#/�@LIK�PX@9

r	~~p
iYbR@;

�	~~~
iYbRY@/.-,+*)('&%$##%+#'>54."32677%".4>2'3##5#5353�!
 #I|�|II|J2Z#�>�63W23VfV22VSS*SS*#[1J|II|�|I# "�>�2VfV32WfV2�*SS*S��,5>Gp@m��		��i

		iY_O@?76.-DC?G@G;:6>7>21-5.5+)&#,,3!#3++"&46;#"&46;22654&+";264&+"264&3"264&3"264&�	S

>>

S	�'

	T		T		?�&�&�&���
			��
��&&&&&&
�j�R-Ajw������@IF^
LK�PX@h

�

p�

�	r�iji		iYbRK�PX@i

�

~�

�	r�iji		iYbR@j

�

~�

�		��iji		iYbRYY@9yxlkCB����������������~x�y�rqkwlwec\[TRMLHGBjCj+4'&'&"276767"'.'&47>76227676. '."&"."3267>546232>4.".4>2!".4>2'4&"267"&4624&"267"&462�?<hk�kh<??<hk�kh<?*'&�Y]�]Y�&''&�Y]�]Y�&'�'EC�CE'B��B�/O00O_Q//Q04X		V50Q//Q�D%>%%>J?$$?g%>%%>J>%%>*%4$$4%�J
*%4$%3%^|kh<??<hk�kh<??<hk|f]Y�&''&�Y]�]Y�&''&�Y]�E"!!"Err�-M..M-0Q`Q/9/.:/Q`Q0��%>J?%%?J>%%>J?%%?J>%�	$$4%%	$$4%%����)H@ELggW_O! &% )!)	+%2+"&=4632#!"&5463!"!4'.��'77'�('77'�(�			�8'�(77(�'8T�T�	��k(.G@DLggW_O '%. -		+2#!"&5463!"3!274&#2+"&=463$33$��%33%?��@��(3$�$33$�$3S���z��(/A@>ggW_O! (& /!.		+2#!"&5463!"3!2654#2+"&=463�$44$�p$33$��p��v(3$�$33$�$3S���z	�jkR+7CO[gs�@�LKgggg


g

g	g		gW_Oih]\QPED98-,olhsirc`\g]fWTP[QZKHDOEN?<8C9B30,7-6&# ++(52+>3!2#!"&546?3265%!+3!2654&"&463!2#"&463!2#"&463!2#"&463!2#"&46;2#"&463!2#{�%%��&�
��t&�
q	��

�

�6

�

�6

�

�6

�

�

�

�6

�

J%��%%���
��&�z		l	�'}w}w}����3PS@P		giiW_
O54JGBA=:4P5P-*%"32	
+!".54>;23!2"3!2654&#!"&/.#"&=4&#!""&54>3!2���00�!7
 �00��$%$$�!7 �	%�<%
0�0.0�1( 1��0�%�%%w%' }	}$$		00}	���j�RG^y��������
&9$@[
cWL��KK�PX@�
&�0$r(i
ii,*ii+)i	%i!#.i"/ -iYa'Q@�
&�0$�(i
ii,*ii+)i	%i!#.i"/ -iYa'QYA}''����������������{z'9'953,*&&	�
�
����������������������������������������������~z�{�wumk^\QO=;42-,'%	GG1+"'&'&67"'#"'&'&5476'&'".67676322?67632#3276765'&767&#"327676'&'&#""&4&""&54762"'.'&47>762"276764'&'&"&462'"264&"&462'"264&"'&547676;276'"32767&'&'&"'&'&7>767632'327654&'&#"�V5%"1#%5VL3*
/UN362. .251NU/
+3�)DI* 

[XA��
 *ID)DA04)�	*
PGf]Y�&''&�Y]�]Y�&''&�Y]f|kh<??<hk�kh<??<hk��%%4$$	
�%%3%%


`=#C

'6'AF
);Mv		(3&!&//'�/M;)
FA'6'
B%�&!&4'		'0'+$P#		#P$+'% 
:




	
:
 %*-'# !#'-*���'&�Y]�]Y�&''&�Y]�]Y�&'�?<hk�kh<??<hk�kh<?�`$4%%4$S

S%3%%4$S

�_6&
!}


}!
&5T


���5$C@@L����W_O+2"&54662!#!/&47S  -  �!$�	�5 ��  B��UU	����5$C@@L����W_O$# +2"&546.=!"&'5467!5462�-  ���	$ �5��  B����	UU���5$?S@P650L	����W_O:921.-#"
+2"&54632#/&4?6%&'5#.'5>7354>�-  LV$ \������\  \5��  B��UU	��	
��
YU���5&>S@P,L	����W_O=<5410*("!
+2"&546&'5#.'5>7354>32#/&4?6�-  L��\  \��V$ \��5��  B����
YUUU	��	���5#>@;
L�~�W_O#"%%+62++.5#".72#!"&463��	UU	?��  ���!$�>-  -���(%C@@L���W_O %$
+2#!"&4633232"/&>;4673���  �U	��	U
-  -5 ����$���(&?S@P*	L�����	W	_O:832-+('"&%$&
+%##.'5#".?>%2#!"&463232"/&>;546?�
UU����  �U	��	U��[  [��-  -� \��V#���*$>T@Q4-L���~�	W	_O7510,+ $#%#
+%232"/&>;546?%2#!"&463##.'5#".?>�U	��	U���  ��
YU�� \��V#�-  -��\  \	��j�R!*9BO\q@n-L����
�~	

~

~�W_OZYTSMLGFA?><9876'!#'!73+4>3!2#!".5%35327>4&'&++5323'67654&+3537+5322>4."".4>2&@&�&A%&@&�f&@&Au+ !  +��-#mm#-}Kn-!L>�APm.#ll$-�7c~d77d~c7p&DZE%%EZD&�&@&&@&�0&@&&@&��>K>�"+�+���#8=K�G��"+�+xAh;;h�h;;hA0M,,M`M,,M��#8FTX@U�	g
iW_OGG:9%$GTGT9F:F/.$8%8#"	
+%!".54>3!2"3!2654&#"'%.>27%6"'&6?6!"/.>���0000��$$$$�t#��	V.V
���Q
���
�0�00�60q%�6%%�%����

����
��
��j�R������@�C0/	P
�
��L		�	~i		i
i

giW_
O��������������������������|ysqb^ZX<;86%+27676322"6?67>?6'&'?676'&#"3%264&#01!>?>?6'.'4&+"&/&6;26/&547676#54."#"3!26=4&%4>2#!5!26=>54&"�((X#

	.o&3(S0)

	(�3Q-	��P;�	(

	
	
!'Q'CND'		M	��0:/���#�
"�	5
	i		S
SO%*H
(/@

S+Q:(
C^5	;\+Q	R+
S		B'��(C''C(
�		�
00��w		�m"?^�@>
LJIK�
PX@(�gWWaQK�PX@$�gWaQ@(�gWWaQYY@]ZRPHF971/'$! +276/764'&64/&27&#!";?327>=6'+764.+"'.=4763!2S

GGcSCC

�&��&&!6

��&
8�mG	n	�		TBC	t	S	
CB

!�h


�#�
�S6	��m6FJXrx@uY2#rgP1$	k	L-	K

�	
	~

g		g
Y
aQ
	MKJIHGDA<965
	
+%"264&3"264&264&"?'&7>'4."%4&#!"3!265'!!#"?6&'%676/&"376'.�	I	���T	66	
	T
�	��		H	*����
�,2	
T
\2y	�*	��
	
)	M

�_		w`�S
y	*��.	���,2@/ggW_O&7+3!2654'&#!&!!!:4#�&2 �5�#�
�&12%�%���[�����(.@+gW_O72+4&#!"3!265!)!�1&�"1
"�&1��A���=�&11&�1"��~��~�j^\
,@)J�W_O+'7676%#5"&463!2#��C.#* O���5��C,
P F�5����9J9@6�~�gYaQ6;:3:7+3!2>54&'.#!"'463!2276=4'&'.#!";27654'&+"&5 	.	

��#�
�

*	'�(!	(%
%
3$��
.

x

%

%)+�	�i%S,2@/L����v%",,#%5 +#"3!26=4&+'.#!"!2#!".546Կ	
�		�
����	";"�./$
	4	3	4		�	��";"$/_	��9#&*@'&%$LiYaQ&!+&#"3276'"&'.467>27F����E�cʈ��?>}?���>?B?B?��NJ��������p�FH���mA�[�|@B@B?���A?C!!���}�X�2+7�;��;�X:��:��X�2+'7'�;��;�;��;��sA^jpzK�
PX@
E>QLK�PX@
E>QL@
E>QLYYK�
PX@Q

�����Y	ig
i
aQK�PX@F

����	ig
i
aQ@Q

�����Y	ig
i
aQYY@1kkCBkpkphgbaWUONIHB^C^;:650/('"!AA%;+.6?01301;>/7%22654."2>54&""&=&>%"54&"265132>=6."&=462$��.�.		�66&3>44>3&8' �#
35('8''8'��'*e��
	yy

���\'		44\33

&&\.
[

��

3\!5�&&X''��S%���(#3Fa@^��		g
ggW`PDA:72/*' ##
+!264&#!"!264&#!"!264&#!"4&#!"3!267#!".54>3!2��

�		�

�		�

�	� �+  �"),�+,,�+9���
��''�D'&11�1?-���%1Ugsw@t&"L

�
~
~g
		i

gW_OjhWV42pmhsjsdb]\VgWgROJGBA<92U4U+%&"2764/7>762"'&4?'.'676.!"&5463!22654&#!"3!264&"26=463264&3264&+"�OO??	�OO>>	@C	
B
���y�
3(�r%34(�
 HJ35	��		�	�STCC	STCC	M��	
�#y!"��

Q);;)��);
HKK�		�84���=+7CUa�K�PX@J���ph	i		g

W
a


Q@I����h	i		g

W
a


QY@EXVED:8.," ^[VaXaRPKJDUEU@=8C:C41,7.7(% +"+	+"&5463!2#'!!264&#!"!264&#!"!264&#!"!264&#!""26=463264&3264&+"?

k		��k		��

G		��

G		��

G		��
K26
"	��		�	s
�

�`
*w���}}}$72�

�#����%1f���@���smdTN��
>
�G&"L		�	~	~
	
~
	
~	~	~	~		g
W
`P�����������¡‰�rqbaCB:965+%&"2764/7>762"'&4?'.'676.%#227>76'467.7"&#.'.''>4676>762'.67.'&67&5463&76!"&5463!22654&#!"3!264&�OO??	�OO>>	@C	
B
��			
	

		%551O	+
/O%B* >


	  8;DKF
(!�y�
3(�r%34(�
�STCC	STCC	M��	
�
		

F125			%%j	#*1
	
F@>%(,	#,
��#y!"��

Q);;)��);
��=+7Cx�@ XN[sq	k	bLUhKK�	PX@Sr�

�ggg	
Y		g
g
a

QK�
PX@Yr�~

�ggg	
Y		g
g
a

QK�PX@Sr�

�ggg	
Y		g
g
a

Q@T��

�ggg	
Y		g
g
a

QYYY@;:8.," jifea_HG@=8C:C41,7.7(% +"+	+"&5463!2#'!!264&#!"!264&#!"!264&#!"!264&#!"&7676267267'67"&'67"'&'&57.'&7?

k		��k		��

�		�6

�		�6

�		�6
Q %+/)		*'+3:;4#



s
�

�`
*w���}}}#

,^"#
���>I@F1L��~�iYaQ+%7>'&>'"/&4?62&&'&>765462"&5�J>- !
5*Ug��J>- !
5*Vf
���3$uL6te"Ei��93$uL6te"Eh��
��A�+<@9����	�v+*%$
+"&5#"&4?62#46232"/&463�"h��h"i
��
X��

Y���Y

��	���j�N-AR@O5L�~~iYaQ?>8732"!--
	+"276764'&'&"'.'&47>762'&46262"&'�{jg<>><gj�jg<>=<fj}d\Y�&''&�Y\�\Y�&''%�X]���J
��
$>=gk�jf<=><gj�kh=?�F'&�Y\�\Z�'('&�Y\�\Z�&( �
�J
���j�R+7C���@�D�PLgggg	g	
	g
iW_O98-,! ������|yvqnhe`]ZWLI?<8C9B30,7-6'$ +!*
+!2#!"&546!462"&57"&46;2#"&46;2#"&46;2#454>3!2+"&46;2654&#!"&/.+";2+".54676;23!254&#!"KR��N��[		V		V		V		V		V		��1�11x		x&&�"7"x&&x		x0@x!7"�	&�>"��Q*��M_�		zG
H
00�.��2(�(( '�(
2-$( 
m%�j�R$f{��@}%

t1	L�
g


g		gigiYbR���zwspkh`]ZWROIF3;8+%5462762"/&462'2>4."454>3!2+"&46;2654&#!"&/.+";2+".54676;23!254&#!"4>2".�?>x-MZM--MZM-��1�11x		x&&�"7"x&&x		x0@x!7"�	&�>"�8_r_88_r_8��??
-L--LZM--M�00�.��2(�(( '�(
2-$( 
m%�*9`88`r_88_��A�$,@)����v $#3%% +#"32764&+4&+""&463!2#w
�z���
$��""��$9F@C
L�~~iYaQ)$%(+&'"&5473264'&#"26546326 '&'&4767632}Nu���uNE�xv��		@[
>,�
H��vxI

Ixz��x{F
[y<5>`��`>5<yi|{.		[@	,>�w�GFv%vFGHJrA@�v5$+32764&#!"�
�����
A@�v5+74762#!"&�!���
��
���(P�K�	PX�KILK�
PX�KIL�KILYYK�	PX@5	
	g

ggY_
OK�
PX@8r	
	g

ggW`
P@5	
	g

ggY_
OYY@#���þ��������}jhc`ZYFC;:31,)$"+1001'001%03#50#3001!7&'.747##!"&=47#3&'.75463!22#!"&4676367676'4'&'&'&/.763!23!2=4'&'&'&'4#'.763!22#!"&4>367676'54#!"^���<?A��?AuG��
			��		

	%

F
	$


	
��
		
��Cf$$���66��66�g
��
L�

	
�"	"��"	!�f

	
�
��>)BMV������@@]}u08LK�	PX@Zrig	
igY
igYaQK�
PX@`	rri	g	
	igY
igYaQK�PX@Zrig	
igY
igYaQ@[�ig	
igY
igYaQYYY@?����+*����������������������ywonkjfd`_[YVURQLKFE<:42*B+B+4'&'&"276767 '&'&7676 312;2+"&=464&"26&462"74632#"'.#"2767#"&50154632"'&%4&"326&462"%"&463!2#"&463!2#�<:ce�ec:<<9cf�fc9<*A@lp��pl@AA@lppl@A��	<�.*j/F.0B�1 )
%
)@@1+
j/F./E��

�

�^

�

^wfc9<<9cf�fc9<<9cfw�pl@AA@lppl@AA@lp7c
�L#E,-D.P"-


#,!E,,E.�



��	

	����(1:CL�@
LK�	PX@Ar~~
~~	~�W_O@B�~~
~~	~�W_OY@ED32! IHDLEL762:3:%$ (!(6+.7632%	'.>'264&"7.>'264&"7.>5264&"���
	�	%

�B	���J1C @@@"~ @@?"} ?@@"D(	
�
��
� 
�)��
@@@@1""w
?@?@1""w
@??@0""
�jkR'-?KWco{�@�=(5Lg	g		g

g
g

gggW_OqpedYXMLA@/.wtp{qzkhdoen_\XcYbSPLWMVGD@KAJ9742.?/?+)"+#.7>&/63!2#!"&54?3265%!+3!2654&"&46;2#"&46;2#"&46;2#"&463!2#"&463!2#�xhh(--2
�$$��%�	��t%�	q��		�		�		�		�		�		�K		�		�6		�		F$		��o~~$��%$�	��	��%�zl��}}�}	�jkR)2;DP\h�@�'Lgg
g

gg	
iW_O^]RQFEca]h^gXUQ\R[LIEPFOCB?>:96510-,#!))'51+63!2#!"&54?3265%!+3!2654&"&462"&462"&462%"&463!2#%"&463!2#"&463!2#|
�$$��%�	��t%�	q�-""}""}""��		�		�6		M		��		w

K$��%$�	��	��%�zl��"""�

}

�

�m(@JOY�K�PX@:	
rr

ghW_
OK�PX@;	
r�

ghW_
O@<	

��

ghW_
OYY@+PPLKPYPXSQNMKOLOJHCA=<540.+)"('# +#"&46;'&462"&47!2#!"&546332+"/&4?627!"3!3#!2654&#�		�
??
��%%��%%��

�
??�t		�**�		I:CA&�`&&�&�C:�
�`
��*�6
�
���(=UxK�
PX@=/iL'
IK�PX@=/iL'I@=/iL'
IYYK�
PX@2gii	

g	

a

QK�PX@1gii	
Y	
a
Q@2gii	

g	

a

QYY@&VV>>VxVwmkge][>U>TQOKJCB:7+6767#&/&%6;2&'546767676'&6726;24.#'.46?2!"&463#"32#"'&'&547>3,X!@<,9�X�OX�;8E
0
	xK
:�
.��		

�5U6		1# i?))�W3)K,9D��!��	�nHB8P!A!
���K%

 8!���(%&3��E,5

2-7N=0/4�j�R-INw������=@VS
k
K;LK�PX@q		�p

�

�rr	i
jiigYbRK�PX@r		�p

�

�r�	i
jiigYbRK�PX@s		�~

�

�r�	i
jiigYbR@t		�~

�

���	i
jiigYbRYYY@A��yxPOJJ����������������������~x�y�rpiha_ZYUTOwPwJNJN<+4'&'&"276767"'.'&47>762& '.;26=676&5"&"."3267>546232>4.".4>2!".4>2'4&"267"&4624&"267"&462�?<hk�kh<??<hk�kh<?*'&�Y]�]Y�&''&�Y]�]Y�&'�B��B,O	}	�I��',�/O00O_Q//Q04X		V50Q//Q�D%>%%>J?$$?g%>%%>J>%%>*%4$$4%�J
*%4$%3%^|kh<??<hk�kh<??<hk|f]Y�&''&�Y]�]Y�&''&�Y]�rr	M!S		?��6
*p-M..M-0Q`Q/9/.:/Q`Q0��%>J?%%?J>%%>J?%%?J>%�	$$4%%	$$4%%	�j�R-Ajw�����@�IF^
L

��

��i

gji	i		iYbR��yxlkCB��������������~x�y�rqkwlwec\[TRMLHGBjCj+4'&'&"276767"'.'&47>76227676. '."&"."3267>546232>4.".4>2!".4>2%4&"267"&4623264&+"�?<hk�kh<??<hk�kh<?*'&�Y]�]Y�&''&�Y]�]Y�&'�'EC�CE'B��B�/O00O_Q//Q04X		V50Q//Q�D%>%%>J?$$?g%>%%>J>%%>�f
*%4$%3%}		}	^|kh<??<hk�kh<??<hk|f]Y�&''&�Y]�]Y�&''&�Y]�E"!!"Err�-M..M-0Q`Q/9/.:/Q`Q0��%>J?%%?J>%%>J?%%?J>%�	$$4%%"L$@]u�@1	LiIK�
PX@8	qg
g
i
		
Y

	a	
	Q@7	�g
g
i
		
Y

	a	
	QY@-_^&%olfd^u_tYWPMFD=;54.+%@&?" $$+7".?#".=4>3!2+"+";276;&=4>;.#"/#".=4>3!2+";2'&6;26=4&#� 66 �6	�"1		e�#11#!		�U6s.n�� 56� 66 
�k"11"��
!#11#�
q5 � 56
0#��71"�"1	Uf�6&���6 �65 � 6q0#�#1gV2"�"1����)AuK�PX@-r~piYbR@/�~~iYbRY@'+276764'&'&"476762"'&'&%#"2?64/&+4&"�--KM�MK----KM�MK--T97_a�a_7997_a�a_79wh
��h ^[MK----KM�MK----KM[qa_7997_a�a_7997_a

��%
�j�R$dz�(@%

s1	LK�PX@Jrr
g


g		gigYbRK� PX@Kr�
g


g		gigYbR@L��
g


g		gigYbRYY@��~yvroie^[XUPMHE3:8+%26=264/&"272>4."014>3!2+"&46;2654&#!"&/.+";2+".54672;23!254&#!"4>2".�>>u-MZM--MZM-��/�0*2y

y&'�!7"u&&y

y2A

y"6 �	&�<�7_t_77_t_7q�

�
>>
-L--LZM--M�//�#5��1'*&!'�'
2/%' l%�(:_88_t_77`��k�"1H@E/L�	ggW_O,)&%$#"":5@
+"#!"3!2654.;26=301!5!33!26=��5"11"H"12X�
S
*����*�*�1"��"11"�5[:M�

����H��*1����)?uK�PX@-r~piYbR@/�~~iYbRY@%+4'&'&"276767"'&'&4767623264/&";265A--KM�MK----KM�MK--T97_a�a_7997_a�a_79��h
��h ^[MK----KM�MK----KM[qa_7997_a�a_7997_a

����
k�7@4YaQ
	
	
	+"&462!"&462!"&462�"11D21"11E00#11F001D11D11E00E11D10E1��G�,@)iiYaQ+462"&462"&462"&�1E01D11E00E11D10E1�#00F11��#00E11��#11E11��*@'��W_O$+"'&476%2#�&2��
2'��%%0�2&2'1�%2&��*@'��W_O$+2764'&"%"3�&2��2&��v%%0�2&2&1�%2&��/+$@!L���v+"&6762"/"&5��1%1&2�&2%L�%7��1&��r%%��+(xK�
PX�LK�PX�L�LYYK�
PX@���vK�PX@��v@���vYY�+%'&"2764&"4&"��1&1&2�&2%q�&2��2&��%%���>@L�v
+"'&'&7676 '�ol?AA?look?AA?lo�|A?look?AA?lo��pl?A���i�(	'7;KO_co{������������#/8AJ!3!26554&#!"#!".54>3!2"&=46;2#'35#"&=46;2#'35#"&=46;2#'35#"&46;2#"&46;2#"&46;2#"&46;2#"&46;2#"&46;2#"&=46;2#'35#"&=46;2#'35#"&=46;2#'35#"&46;2#"&46;2#"&46;2#"&46;2#"&46;2#"&46;2#"&462"&462"&462��l%$$��$�0��000��		S		>))		S		>))		S		>))�		}}		}}		}}		}}		}}		}}		S		?**		S		?**		S		?**�

}		}
	}		}
	}		}

}		}

}		}

}		�'

S
TX�z%%�>%%>�P00�00��	S		S	)*��
TT
**��	S		S	*)�S
}
T

}

S�	S		S	)*��
TT
**��	S		S	*)�S
}
T

}

S�


	


	


�i�(	'09BRVbn~����T�:1(LK�PX@j!rg	
i$g g+#!"
!"g
)&
g*('%gW_O@k!!�g	
i$g g+#!"
!"g
)&
g*('%gW_OY@h������podcXWDC

���������������������������������xuo~p}igcndm][WbXaVUTSLICRDQA@=<8743/.+*$!

63,+!3!26554&#!"#!".54>3!2!"&462"&462"&462"&=46;2#'35#3"&46;2#"&46;2#3"&=46;2#'35#3"&46;2#"&46;2#5#"&=46;2"&=#32+"&463��l%$$��$�0��000��

S
T�		S		>))�		}}		}}		S		?**�

}		}

}		��S	�	S*}		X�z%%�>%%>�P00�00


	


	


�	S		S	*)

S	S		S	*)

S$�		+		+		�	����+7C^gp�@�ZOL

�g
iiig		W	_
		O98,,! onkjfebaRQGF?<8C9B,7,620'$ +!*6+7"&5463!2#%!!"&463!2#3"&463!2#"&463!2#3"&463!2#"&4?>76&''4&"267"&462h

		���

N}		M		��

N}		M		����|���$"*2F11F2�
		��
*�e



}���X���	W�&$44H33	�jkR)2;DMV_o@l'Lg	g
	
	iiW_O^]ZYUTQPLKHGCB?>:96510-,#!))'51+63!2#!"&54?3265%!+3!2654&4&"267"&4624&"267"&4624&"267"&462|
�$$��%�	��t%�	q�-
*%4$$4%}*%4$$4%}

)$4%%4$K$��%$�	��	��%�zl�<		$$4%%		$$4%%		$$4%%�jkR'9?Q�@O:
G
LK�PX@<r
g

gg
g
		
W

	_	
	O@=�
g

gg
g
		
W

	_	
	OY@ A@KIFD@QAQ=;41,)'&4%+%41#"&=463!2"&=#32+"&46363!2#!"&54?3265%!+3!2654&�}N


}*}		:
�$$��%�	��t%�	qd#!		66		!��

�$��%$�	��	��%�zl�j�(	'09B\en�����`@:1(Zw��H
PLK�
PX@o rg	
i"!g!% ! g#i
g

Yi$gW_O@p�g	
i"!g!% ! g#i
g

Yi$gW_OY@T����DC

���úô����������������������~zysqnmjidc`_VRLJC\D\A@=<8743/.+*$!

63&+!3!26554&#!"#!".54>3!2%"&462"&462"&46232;2#01#"&=464&"26&462"74632#"'.#"2767#"&=>32"&%4&"26&462"!"&463!2!"&463!2��l$$$��$�0��0//��

S
TqA�--s2L33J�4%
(-EI1L--t4I44J��<		�		�<		�	X�~&&�:'':�T22�11


	


	


�ig
�Q0#H//H/S$/
	
2


-%0$I./H/T

$�j�(	'09BYfz@w:1(LL�g	
i
g

iiW_O

dc^]YWRQHGA@=<8743/.+*$!

63+!3!26554&#!"#!".54>3!2%"&462"&462"&462"&4?&54>2#74."2>��l$$$��$�0��0//��

S
T���'CNC('C(/�080/90X�~&&�:'':�T22�11


	


	


���%3'C''CND'�009/0	�j�(	'09BYfr�K�
PX@:1(O
W
LK�PX@:1(O
W
L@:1(O
W
LYYK�
PX@V
r

rrg	
ig

giW_OK�PX@P

rrg	
ig

giW_OK�PX@V
r

rrg	
ig

giW_O@W
r

�rg	
ig

giW_OYYY@8ig[ZDC

nlgrira`Zf[fSQLKHGCYDYA@=<8743/.+*$!

63+!3!26554&#!"#!".54>3!2%"&462"&462"&462"&=!"&=463!2"&5462#"&46;2��l$$$��$�0��0//��

S
Tw	��N

�	6}		}X�~&&�:'':�T22�11


	


	


��	!!		66
��	3		��	

���(+7@4�~iY_O###"53+#!"&5463!2#";26=3264&+54&"�fD��HcfE?Gc���&��&~��HcfE?Gcf��&��&����($@!���v53+#!"&5463!2!264&#!"�fD��HcfE?Gc�Y��B~��HcfE?Gcf�n&&����0C5@2CL���W_OA@;:32)'+6&'.!654&'.7>'!.7467>6201"/&462�d�2
!
&g�M
DA=D
`S%&
!}����hpYR
nN	
��
 	�
	��K`%
E2&ma!J<G@	@O.A	"
	D�zt
ymTum�	
��

�
	��g�R+7HT`lx������y@!����L�K���IK�PX@{r��p~
!	 g
i

iiii$#"W$#"`P@}���~~
!	 g
i

iiii$#"W$#"`PY@Pzynmba98-,��������������������}y�z�tqmxnwhealbk^]XWRQLKED?<8H9H30,7-6#5#6#5%+"&=46;2+7"&46;2+7"&46;2+7"&46;2#3"&46;2"&=462"&5462"&52+"&463#2+"&463#2+"&=462'"&=462'"&=462'"&=462.54>+&/767'&>;.


1


y


\

\�


]


]�

\

u

0











��		]


]


\

m

0











�!$
�
bF�#MJ@)	Q8RA��

0















0

z


\

e


1		��
0


z

\


\�


\

\�


]


]�rm�@#�!E�51
��*�W�t�>,'@$!L�W_O7+!%%62#!"&5461&'&'&7676�����`����:L$*��)
$M8���/ؙ����u�O!$!:op9!$!P�.#,5^@[	
iYa
Q.-%$
	21-5.5)($,%, ##
	
+7"&462!"&462!"&462%"&462!"&462!"&462�#11F00&"11E00*"11E11�G#11F00&"11E00*"11E11�1D10E11E00E11E01D1�1D10E11E00E11E01D1���:]@Z#L		igg
Y
aQ
	8631+(!
	

+%2"&46!2"&463!2754&#%!2#!"&'&'&#"&4632�%%4&&%%4&&�>�|	��V� ����!-		D)":$4%%4$$4%%4$�>	�* 	�O�4-(:0�vfB^b���@fL��g

ig	
	g

Y

a
Q����dcCC������������|zwvnkcdba`_C^C]ZXUTQOLJGF+%.767>/&/&'&'&?2676&'&'&7>76%546232+"&=#"&46337#72+"&/0#&'&"&4632"&4623"&462�
(#9IYWPSj	#$I1u<
	
 D�8R)'
	w]ZbeS@'"
-��}		}
}		j~-��3�5	!C]
�


C�I;*5	#$�ZWPS5$	$(<]Zbd�((

</B	Q�M
�}		}
}		}�6�)�


�

���v�(37R[dp|��@��;Lgg

igi	
	g

Y

a
Qrqfe]\TS98wuq|r{kiepfoa`\d]dXWS[T[OMJIC@8R9R7654-*! 
32+%2#!"&54>3!2#".6736?>54&#!"337#72+"&/&'&"&4632"&4623"&462"&46;2#!"&46;2#%.>.6?�		�z);.�*:
			"�
""~.��3�6		!	D
\��		�M		��h
RT
=d2$C'1$��)D��}�)�


�

���C<A0
�v�('+;?OSc������@�aM9YE1	�Lgg'%#&$"i

		gi)g(ig!Y!a+ *Q������edUTPPA@<<-,((���ȼ������������������������tqkhd�e�][TcUcPSPSRQIG@OAO<?<?>=53,;-;(+(+55,+462"&5'"&=463!2"&=4&#!"35'32+"&=4635'32+"&=4635'32+"&=462#!"&54>3!2#".6736?>54&#!"337#72+"&/&'&"&4632"&4623"&462��%�%	�`	S}���}���}����		�z);.�*:
			"�
""~.��3�6		!	D
\�d

*$$*

*		?))*dd*))*dd*))*dd�2$C'1$��)D��}�)�


�

��	�v�(#/cg����@�kL



gggggig		igYaQ����ih10%$
������������}zysph�i�gfed]ZQPLK@=740c1b+($/%.#"

 +"&463!2#"&463!2#%"&463!2#"&463!2#2#!"&54>3!2#".6736?>54&#!"337#72+"&/&'&"&4632"&4623"&462�		r

��		r

��				��		�		g		�z);.�*:
			"�
""~.��3�6		!	D
\�
�S

�
��2$C'1$��)D��}�)�


�

�����R(15EIY]mq����@�L! gigg	
i



g)'%#(&$"gW_O����srnn_^ZZKJFF7622*)! ������������|yr�s�nqnqpohe^m_mZ]Z]\[TQJYKYFIFIHG@=6E7E252543.-)1*1%$ (!(#9*+37#72+"&/&'&"&46323"&4623"&462!%!2#!"&54635'32+"&=4635'32+"&=4635'32+"&=4635'32+"&=46�-��3�6	

 
�\�k����k	}���	}���	}���	}���	��*�

�	���q*	�f		�	��SS*	}		}	*SS*	}		}	*SS*	}		}	*SS*	}		}		�v�(37R[d�����@��{tme;LK�	PX@prpgiiij

igi	
	g

Y

a
QK�PX@q�pgiiij

igi	
	g

Y

a
Q@r�~giiij

igi	
	g

Y

a
QYY@O����]\TS98��������������������xwkia`\d]dXWS[T[OMJIC@8R9R7654-*! 
32 +%2#!"&54>3!2#".6736?>54&#!"337#72+"&/&'&"&4632"&4623"&462#"&54?6?64&#?6763232?#"&462".4>2'2>4."�		�z);.�*:
			"�
""~.��3�6		!	D
\�

?9_88_r`88`9-M--MZL--Ld2$C'1$��)D��}�)�


�

��('

	&�
��8_r_88_r_8)-MZM--MZM-�v�(#,5im����@�qLgi	
iig

igYaQ����on76���������������yvn�o�mlkjc`WVRQFC=:6i7h430/+* +4&"267"&4624&"267"&4624&"267"&4622#!"&54>3!2#".6736?>54&#!"337#72+"&/&'&"&4632"&4623"&462�
*%4$$4%}*%4$$4%}

)$4%%4$r		�z);.�*:
			"�
""~.��3�6		!	D
\^		$$4%%		$$4%%		$$4%%��2$C'1$��)D��}�)�


�

���v�QUqz��f@��6YLK�PX@�
r		�~

ggg!gig
i

iggYa Q@�

�		�~

ggg!gig
i

iggYa QY@F��|{srWV���������{�|�wvrzsznlhga^VqWqUTSRNLIGFDA?><875410$'# "+%#"&=#"&54?63!23232"&5#"&5#"&5#!2#!!2#!!2#!"&537#72+"&/&'&#"&4632"&4623"&462573+57	-	�
-0	
�^

��4		��%		���-��2�6!
C\�3	�%	-�	�	-	�O		��d		�I		���q


	�)�
�

����	�v�(,9mq�������\@#�����&uLK�	PX@�r##�&&�&&~*r		gj$"#i2!(1i'/% 0i)ii,g+

i

gYa.-QK�
PX@�r##�&&�&&~*r		g$$Yj"#i2!(1i'/% 0i)ii,g+

i

gYa.-QK�PX@�r##�&&�&&~*r		gj$"#i2!(1i'/% 0i)ii,g+

i

gYa.-QK�PX@��##�&&�&&~*r		gj$"#i2!(1i'/% 0i)ii,g+

i

gYa.-Q@��##�&&�&&~*�		gj$"#i2!(1i'/% 0i)ii,g+

i

gYa.-QYYYYA}������������sr;:.-�����������������������������������������������������}zr�s�qpongd[ZVUJGA>:m;l43-9.9"!
,,3+"&'&>264&'#.54>32&'.""&54622#!"&54>3!2#".6736?>54&#!"337#72+"&/&'&"&4632"&4623"&46226=4&""&=462'";26=4&#54>32#"6;2+"&5'264&""&5462"&5462264&+"&463�+<
%3&!420+=%3& e1	��		�z);.�*:
			"�
""~.��3�6		!	D
\�)):)(�!W/$!  ! e

*9))9*		@-!	
	!
) &-!
	!@&)	M		��	�2$C'1$��)D��}�)�


�

���kk*,k++k,k$		$62
&"$!!_
		!,>=,!


�v�(37R[d}����%2#!"&54>3!2#".6736?>54&#!"337#72+"&/&'&"&4632"&4623"&462#762'46?#./>3"/&/57'&47>;#762'46?#./>3"/&/57'&47>;#762'46?#./>3"/&/57'&47>;�		�z);.�*:
			"�
""~.��3�6		!	D
\��
.	$
	-,

#.
.	$
	-,

#.�&
.	$
	-,

#.d2$C'1$��)D��}�)�


�

���

07
!6
6!	

07
!6
6!	

17
!6
6!	�j�R	'09Bakt}����������	@�¹��%Lgi.g#!" i/g	
i)g)(&)(i0&%
&%g

g'i$'+$'g-+2,1*+*iW_O�����Ϧ�bb�������������������������������������������������������|{xwsronbkbkhea_\YVSLIA@=<87763�33+!54&#!"!3!2653#!".54>3!2!"&462"&462"&4627&=4>3!2+"&46;265!"%54&#!"7"&462"&462"&462&=4>3!2+"&46;265!"%54&#!"7"&462"&462"&46237#72+"&/01&'&"&4632"&4623"&462*q%�%q��%�%)0�00�0��
S
T0�00S		S$�{	�$�%TS

S
�<0�//)		)%�z�%�$S

S
Ti~.��3�6	!	D
\^?$$i��%$00�00			�	S00�61

%b)?$$??					��S0/�6/%b*>%%>>

	

	

�ݓ*�


�	


���v��.O_cg����@�k
?	
Lc>J

�g

i
	
g		gYaQ����ihPP0/!������������}zysph�i�gfeda`P_P^:965/O0O.!.+7>'%.546;+'!!"&?>3%6%2"&=!"&/76&546"&'&62#%!'%37#72+"&/&'&"&4632"&4623"&462�G
��		�#�-��>)��L	WL�	�#�	�
GLW
L
��*?���-��3�6	
	!	D\���`
KO	��A�z!�*
�%
��*
�		�y�

"
��*
%�
*�!�\�)�


�

���v��'0g���@�h
<6OL�

g

giggg	Y	aQ)( ����|ymkebZWTQGEA>9831-,(0)0$#' '+37#72+"&/&'&"&4632"&4623"&462!2"&54&#!"&/&+"3!2#!"&54?>;2'.+".?>;2.67.?>;2&/.+"�~.��3�6		!	D
\���$
	�	%�(	+		��%( ���"�

,!� ,-
��)�


�

���$��H
	]
m�,

$�
nYI+	*T!	+~	�v�('[_z���cLK�PX@\r



gggig		igYaQ@]�



gggig		igYaQY@@��|{a`)(�������{�|�wurqkh`zaz_^]\URIHDC85/,([)Z'&45+41#"&=463!2"&=#32+"&4632#!"&54>3!2#".6736?>54&#!"337#72+"&/&'&"&4632"&4623"&462�}
	M	}*

}		I		�z);.�*:
			"�
""~.��3�6		!	D
\4#!		6		6		!��
�2$C'1$��)D��}�)�


�

��
�v�-'0Wm{~���@��}bmLK�%PX@�
r��r~~

��

ijgi
igg	Y	aQ@�

����~~

��

ijgi
igg	Y	aQY@I||nn)( ��������������|~|~n{nzutkjed`_ZYPO=<-,(0)0$#' '+37#72+"&/&'&"&4632"&4623"&462.67>54."'.546762762"/"&4?622"/&4635&>2654/&'"2'&/&5462"."2""&7462"&5�-��3�6	
	!	D\�z
2:Ap�pAPCN^LAB�C@&'C��u�
�uJ�	1_��
%/3F2%
/3F3@�)�


�

���#m?CsCCsCL|#�WO�'(('ADOI���w��xI
�	�
*aa#	
	**&	
	*)&�

��		���R'+;?OSnw����������
!%!2#!"&546!%!2#!"&546!%!2#!"&546!%!2#!"&546737#72+"&/&'&#"&4632"&4623"&462%37#72+"&/&'&#"&4632"&4623"&46237#72+"&/&'&#"&4632"&4623"&462%37#72+"&/&'&#"&4632"&4623"&462w�t��_	�*w�t��_	w�t��_	�*w�t��_	�Y!��&
f
)0	

D	


�Y!��&
f
)0	

D	


��Y!��&
f
)0	

D	


�Y!��&
f
)0	

D	


(��w*	�`		�	*��w*	�`		�	��w*	�_�	*��w*	�_�	�o&�

�		
�



ao&�

�		
�



�mo&�

�		
�







ao&�

�		
�







��A'?M@J		�i
	gW_O=<98541/*'" 5#
+5>232#!"&546;5."#"3!2654&+"&=#"&5MU�TS#00#�"11"}�=z=*S�S�
.TQTTRS0#�"11"�#0R@==?|��y		yy		��A1?M@J		�i
	gW_O=<98541/*'" 5#
+5>232#!"&546;5."#"3!2654&+"&=#"&5C[�[I#00#�"11"��6r7>I		�		I�.UTZ[US0#�"11"�#0R<77;�	�		�	d

dd

��A'2@/��YaQ5#+5>232#!"&546;5."MU�TS#00#�"11"}�=z=.TQTTRS0#�"11"�#0R@==?����",6BNZY@Vg	

i

iW_O--##@?:9-6-620#,#,)&	"!+0137>3!232+#!"&'#"&4633!267/.#!"462"&5.?>&/&>}�D#$D�		,>
7#�	#8
>,		W<"�!<�?��
@��

��
�����#*+${

*��u*�
	��		�		�	
	�	�	����",5AMY`@]

�~g	

iW_O--##?>98-5-51/#,#,)&	"!+2137>3!232+#!"&'#"&4633!267/&#!"462"&5.?>&/&>hgG+#,F�

#=
>&�	'>
<$

c:�;�?
��	@���������%/0's>��i>���

�



�

�
�

����)5AMA@>g	Y
		iY_O  43.- ) )&3##3# +#"&46;7>3!232+#!"&''.#!"26=4&"76.6%'.>�A		�D#$D�		B<-�
-(?��
@��
��



�

����""��
	���		�	��	���	
���(+2?LU_@\g		gg
g

iYa
Q,,TSPOJIDC=<76,2,2%##33%"+264&"!2#!3!2#!"&'#"&46;2!26?4>2".%4>2".7264&"�%4$$4%���	 ;(��:%�		�4Q
el		};7#�08009/�_080/90*$4%%3%%%4$$�	��'5)%/B3�	��� �z0080/009/0%%4$$���3,3@MV_@\g		gg
g

iYa
Q--UTQPKJED>=87-3-3$3$33%"+264&"!2#!3!2#!".'#"&46;2!26?4>2".%4>2".7264&"�,*��� B+��4"�

�%A,dc

} 6/�5>54>5�_5>55>5?,,,���+9!*!9$�����44>5544>55,���("/<R@O�~gg
Y
a	Q10$#760<1<*)#/$/##33% +!2#!3!2#!"&'#"&46;22".4>!2".4>��	
 ;'��9%�		�4Q
el		}]0080/�|009/0�	��'5)$0
B3�	�L08009/080/90��(�+<@9����	�v+*%$
+"&5#"&4?62#46232"/&463�"h��h"i
��
X��

Y���Y

��	����FWke@b)hbL�	
iiiYaQYXIGfd_^XkYkPOGWIV87#"+2"'&'.4676761".5467276767>54&'&'&'#2>54.'2".=326564'�VXSQ&"&R;QSX�WTP<RS;PTW:Cs�sC<<""%'1HOQ�QOI!"L1' �8[57_t_75[8..6. +�#"A%"=h2@"##"@2h2i1@##\HVDsCCsD.P 0 0	
-.*< !! <!0	
Y,>9^7:_88_:7^9l.6..,��!m�LK�PX@"rgW`P@#�gW`PY@! 
+232#!"&=46;&5463!!,	R��M	,O��F�,�z�,S�����(#2C@@�~gW_O1.)(#"	+!".54>3!2"3!2654&#4?62#!"&:�t$=##=$�$=##=�P���	�

�	
�J
l#=$�$=##=$�t$=#7�t��7
	�

�	���("B@?�~gW_O!+!%!"3!2654&2?64&#!"a�&�#22#�#22�n	�

�	�J
�&�]2#�#22#�#2��	�

�	���-#4"@#4L��v,++%&27%>4&6"'%.>
6"'%.>��^�]

��
8&
�e	
�f
&��&�e	
�f
&�e�����
#&��&#	�,
$%��&"����?=GQgf@cSGgQ5
	f0)(!L��~~�iYaQdc	+76217621"/&'"&4?'"&4?.6?'&4?62764'1&"764'1&"6?627��<�}�<�)Ku'dg)yy.yy!'tOt�

		��		
	���.�!!K YX �.q�<�}�<�*Su'!yy-y
})gd'uKu�
	

���

		�.�!XX!K!!�.
����#,5Kcz�N@432
LK�
PX@Q

��~iii	i

W
_

OK�PX@K

��iii	i

W
_

O@Q

��~iii	i

W
_

OYY@=76%$
	��|{qpedML6K7K10)($,%, ##
	
+2"&462"&46!2"&462"&46!2"&46.'7"&'&'&>"'"767>'&'1&'&!'&'&547>762%!654'&'&"�&�&�s&A&[&�*0�)i
	!!')%

,
	���2''�Z]�]Z�''53��W>=gk�kg=>.&&S&&&&�&&&&�)	���\.*%!&+"�			��CLOSe]Z�''''�Z]eT�C"w�}kg=>>=gk}��{c=(+3Vc�@�*	F
E
WLRK		�
�g	g

iihYiW_O,,))b`ZXTSQOIGDB?=75,3,3210/.-)+)+"('
##+3!4&#!#13265"&54?63!2#''##37#"'&5476;54&#"5632;#.'5#"326���� ��	� �� 	�O;:�%�%*�.��&%!">#(',		!

���	c	� ��M q ��	<��}\\J��&%&	&l&)>�j�RB[p�@,65LK�
PX@;��		iiiYa
QK�PX@4�		iiiYa
Q@;��		iiiYa
QYY@]\DCgf\p]pPOC[D[#,+462"&#.?67>754&+"&#&63276;2727632?6"'.'&47>762'276764'&'&"�%3%%3%}*

	y

he]Z�''''�Z]�]Z�''''�Z]e}kg=>>=gk�kg=>>=gk�""1""��#F$

	E#
��''�Z]�]Z�''''�Z]�]Z�''*>=gk�kg=>>=gk�kg=>�v�<(<ENW@@=0)L����YaQDC@?76-,! +'%'.4>2&'&67%&6762&462".546264&">.>.��_O& 4;"�_	�";4"O�z&64>33
)=('?(818�;83;��
�
5;5J�>��&J6;4��		�5>(44)=f*(?'*8172�27 18���.)E\@Y��i	gYa
Q***E*DA?<;8631.- ))

+"'&'&476762'276764'&'&"546232+"&=#"&463�}lh>??>hl�li=@@=il}dWT1331TW�WT1331TW6&��&�q@=il�li=@@=il�li=@\31TW�WT1331TW�WT13���&��&�m3H]t9@6l]5LphdcXTSOC?:*)%#I��vji21+?6276/#/&?#'&57'&6?62'#767'&67%76'46?'"&/762'46?'"/ESKKOG2�	`pG	��
Gp
d	�6)*`K
XOy		
�)
		yK
X	Kd*�yyyd�>?�d��

�}
}
W�
B!CSO
B"C
�W
y�K\Cd2%:u	

u:!2`C\��??�`}}`
���m3Jdu�#K�
PX@wu^OEA<8	dJ7L3IK�PX@wu^OEA<8dJ7L3I@wu^OEA<8	dJ7L3IYYK�
PX@4

�g
	
	iiYaQK�PX@.�g
	iYaQ@4

�g
	
	iiYaQYY@��|{qpihWV0-(% +7".54>3!2#!.?2?!2654&#!";276'46?'"&/&?'&6?62/%&462"&4?%"/&4?62�22�22���*�$''�&&;�2	&6	6&

>		T%%T		>
K�
KK
;��::KKq2$12��1qX%'$&&��'
:�6&22&
6:
S:	K

K	:S
*�
KK
:?;:
KK���
������
1"#01'7''&7>7898967>7''"/.46?>30127'701701676301327&76709898167670181'#01"'18981'2367181676'5'&'.'#01&#&8	9763012	2?64'&/&'897'77'"'&+"0167181675"/.54?#811�
OW\#0
�[?	&\	TM@HJK�[X#/!O\[
 %"'T%$��%3
+S

!D%


���Z
��	��"\!�[\\��S

@E7F�98!
$
"&'O\![O*#�`B
"\!TG!*�[S0#

W!WO+ 

S��F� &%)
 
(!&"!1��%
�	Z	
��&_h[[\*S%E*$""&!99���9!1@.�iYaQ!!+5276764'&'&"#47676 �`TQ0110QT�TQ01uA?kook?AA?ko}u10QT�TQ0110QT`�ok?AA?ko��ok?A���$\`dhl'K�
PX@Nrggg
Wg		g_
OK�PX@Bggg
gW_
	O@Nrggg
Wg		g_
OYY@2ee]]lkjiehehgfdcba]`]`_^\ZWUPMHFCA@>96!#%5#!%5!+5#"&=46;2+!232+"&=46;54&#!32+"&=46;5!"32+"&=46;5463!3535#!3535#�K		�		K*K

�

K��K		�		K��
K

�

K(
6�����������
�

�
�)�	�

�	��
�		�
��	�

�	�*^���𚚚���jARE/@,A	L��YaQ>;+54>2>54."&'&'&754&"/&'&'&3!26?54'&F 6@6 ,29ata:3�2@K	*:*"

D6A%$ʲ 7  7 �]7:c9:b:7^�	^�**�Z 

D7"�	#+����$,@)L�YaQ
+"'&'&476762'54&">&�qa_7997_a�a_7997_aU� �
C97_a�a_7997_a�a_796i��u��:3@0%L���W_O&9%<9+#!"'.46?676763!2'!"47>;2!2��(��
	�	(
��g+g�!&�('
)',�

�	�O2"��('!!����)HY=@:?L��iW_OJIRPIYJYED53:K+&'&3!267>'	#!"&5467>'4'&54>32"&'&2#"'&547>
!	�����s�"1sA
w
	
*!	��z	"��{B
1#
	��6�	
	�

[!
		���(AH@EL
	
�		���W_OA?:720#%5!%5# +3232#!"&=46;5!32#!"&=46;546;5#"&=463!2+�,q
��
l��m��
q,�p
0
l�,}�
�tt
�

�},t�

����(^"K�
PX@0
L#JK�PX@0
L#J@0
L#JYYK�
PX@6��		�	
	
~

�g_
OK�PX@5��		�	
	
~

�W_
O@6��		�	
	
~

�g_
OYY@^^][QOHGFE?>64/.-++"/"&=6?>235#"&'&546?>;+354?632"&'"&=#32#"/.46?>;5����K��K�	��	�G	�	�K(G	��K���	�K��K�������(!"@iYaQ+"&'&4767622?64/&"�>|��>>><ki��ܯ
!
�

�
$	

Ci��||ik�kh?>|���
%
�
%�
%
��c#@@=L�ggW_O%%3+>3232"'.7#"&573#7#��
0
S�
	��

[�q�>'�d�A�	
���

	A7�=���x�7,@)igYaQ5(++"/&6767>#&'&'&6763276+".7�D�BDN%&��BD)
,,
7_\im�65n_[jl_>�P'%&��BCN%&C,_55p^]in�648?�
���(
21@.
LiYaQ)(22'+327.72654'&'&#&"'&'&476762�>/.OR`t`�K�?/.OR`973�}kh<??<hk�kg=>>=gk&Xp_QO/0G�M�)Wq_QO/0��>=gk�kg=>>=gk�kg=>����#'+/37;?CGKO�@�,+*)('&%$
#"	! �
v884400,,(($$  8;8;:9474765030321,/,/.-(+(+*)$'$'&% # #"!

	-+#3#3#3#3#3#3#3#3#3#3#3#3#3#3#3#3#3#3#3#}*T*S%O!K"KGGBCC?::
7
622..������������������������(",<L\l|�����@�&L�	g
	
	gggW_O/-���������������zwrojgb_ZWROJGB?74-</<##32&#+#!.546;56;23546;232!3!26#"&=46;27+"&=46;2+"&=46;2+"&=46;2+"&=46;2+"&=46;2+"&=46;2+"&=46;2+"&=46;2�5#�n$45#WK
�
K	X)7X�nz	�)K		K
�	K

K	�	K

K	�	K

K	�
K		K
g	K

K	�	K

K	�
K		K
g	K

K	\��%35$y%3`	``		`3�j��r
K		G


K		K

K		�		G

G		G

G		G

�		G		G		G		G		G		�e@�v+>32"/.47P
	�	\�6	�	�e@�v#+&'&#"2?>4'�
	
	�\	
�6	�	@L�v(+#!"/4&54?62�	
�5�	�		���8E+@(�����vED?>+"&4?>"&4?>.62.6?6267"&4?62�' �'ihN'�' �

$55�' �'hiN'�'
�

&44�'�*� '�'Nhi'� '�54$
�[(�'Nhi'�)�45$
�'�'����("*@'���YaQ+"&'&476762'&"2764'&"�>|��>>><ki��Fm&

�
%
f

'Ci��||ik�kh?>|�Fl


&�

Z&

��@L��v+62"/&462-1&�2�&2�q&1�-�1&���;�!@�v+"'&4762"'&47620�&1��,1&�&1��,1&^�1&'5(&2��1&'5(&2��@�!FK�
PX@��vK�PX@�v@��vYY�+2764'&"2764'&"��&2,��2&�&2,��1%^�1&'5(&2��1&'5$%3��q�42@/&LigYaQ5'*'+4676'"&'.367674.'&'&;2>'ED�BDN%&�MK�*-,8^]il�64o�hm`	?
�P'%&��BDRLD,_55p^\im�l7	?
�
�X#A@>ggW_O
#"

	+"&463!2#"&463!2#"&463!2#`  , �Q  6! �C!!E  � , !+ �!,  ,!� ,  , ���()1@.iYaQ ))
+276764'&'&"7"'&'&476762�}kg=>>=gk�kg=>>=gk}_QO/00/OQ�QO/00/OQl>=gk�kg=>>=gk�kg=>l/.OR�RO.//.OR�RO./���(@�v+"&'&476762�>|��>>><ki��Ci��||ik�kh?>|���();A@>8/L�iYaQ52 ))
+"276764'&'&'2"'&'&47676/546;2�dWT1331TW�WT1331TWd}kg=>>=gk�kg=>>=gk�	!lC�31TW�WT1331TW�WT13W>=gk�kg=>>=gk�kg=>��
	X��6
!���ER=@:B%#<.LJ:10I��vGFMLFRGR?>+%'6'7>5&'&&'54&'&'&?7>=676767&'&".4>2�KKCK57
``	>+K	@ KKD
K94	a_
<0K?!�f'A&&ANA&&A�*?9*WP*(SW*.	H_)@9*TS**WW**Eb%ANA&&ANA%����MX����K�
PX@5����7MJ@
�ץ}����sqgc�L0)$"JK�PX@5����7MJ@
�ץ}����sqgc�L0)$"J@5����7MJ@
�ץ}����sqgc�L0)$"JYYK�
PX@;�gii	
iY_
OK�PX@5�ii	
iY_
O@;�gii	
iY_
OYY@���������������³�POLK=;64'+'&'.?&'#"&5&746;67'&767267676332+&//>'&/'.=&'&'&'&6?&7'.76767>676754676766'.'&'&/.?&'#"5&746;67'&6767667>32+&/>'& 	



((�2

-	
)
2:
&)*	&-2
	
	*
17
%+)
+	2�7&*'7&*�



C((�	

		T((�.-
-
-"
,/*2	2.
$	2*-P'*&7'*'7�
	T((����?]l@iIC%	F3	L�

i
	i		Y		a	QA@
	TS@]A]640.??
	
+"264&3"264&3"264&"327673276764'&'&"/6?'&'&5476762,""0""�""0""�""0""�{kh=?.II26J]}kg=>>=gk}DJ)"62&31TW�WT1331TW� ,  ,  ,  ,  ,  , 520SVd<:61 !"20RV�UR/1�z"+2&&.1LA?%&&%?A�A?%&���(/AL2K�
PX@5#	?	-LK�PX@5#	?	-L@5#	?	-LYYK�
PX@<rg	g
	
	g
gW_OK�PX@6g	g
	
	g
gW_O@<rg	g
	
	g
gW_OYY@#CB10EDBLCL><970A1@,*'%//#73+'.#!"#&3!26=32654!"&546;;7!"&546;;##5323k\	��#0�&1"�#0�#0����1"�����	mV�[
2%X(��"12%X2%�&�P&	�p#4K�&	���
�qZ
��F�/GoJ@GF5,L��iiYaQa]*+2767#"'&'.=2767"'&'&'&=72767"'&'&'&'&=62#"'&'&'&'&=467676n�lZ<-C(bQkH\%=Yf�d]9AAG�G\%
(6n�l\:->DH�H1#
;xG�H0#.#%62+A1$'# 2'�(P
P(��&O!	O�'O 
O'�:


 :���()ID@A�~iYaQEC53 ))
+"'&'&476762'276764'&'&"#"'&'&'&5476767632�}kg=>>=gk�kg=>>=gk}_QO/00/OQ�RO/00/OR� ")' ")$l>=gk�kg=>>=gk�kg=>l/.OR�RO./0/OR�RO/0�")' ")'�� @*@'L���v"!30!@"@.6+6#!"&5467276?67627676767676=4&#!"�
2%�#4
+gq*-&"**dg6�X"	�c 2%�%2X�" ���#53%j!NS
!
MM(�uK
!#52&!E����(%<@9L�gY_O"
+!2#!"&546	27>?4&#"}�#00#�"11�u&1�O

�
(0#�"11"�#0��t1&�O
����0;;@8732-"	LKI�W_O;900+2"/+#'&?5467'.54?627>	';�>*	h2`2��	
\p:	2`2h2�f\��O*2Bh2`2��	:q_
	2`2h�Y
X��K����@��v#53+#!"&546;2!2�K2�f2KJ3�2Kn3J�t2KK23JK2J����g@SD6
LVKK�
PX@B�

�
	
	~��gY		iaQK�PX@6�
	
	��gY		iaQ@B�

�
	
	~��gY		iaQYY@ggfdba`^PO875420/.*
+3'&'&5>763267673"&#"#5737672627527=4'&'&'&'&/#42;"'&+�W�
�{
	 Bh
"!6S6?.9"B	�12%*.+�1@2��*	��;:D6	$7 
	*
	
'"�	*���( )@&iYaQ  +276764'&'&"2*>=gk�kg=>>=gk�kg=>�\PN-//-NP^}kg=>>=gk�kg=>>=gk�-�/-NP�PM./���((c@`K�~~	gg
W
_O '&%#( (+!"#&3!26=3265.!!7#4&#!5!g��%2T%22%?#5W#54��?�X2%�t?(1&X1&��#02%X2%7&1��s����#5S������1@'Jv+..267>'&'.767>7>_4��11��3@%18
$&#84)j����",#XX#:?!XZ",
 �+*11*+6KF�1��
80�EL���9"_03&!C>!"3.a"��|�7I9@62E<(&L�iYaQB?+#+6762"'&'&>26764&'&#01"&5?636/546;2�!7^mj\_l35��\`7
-,
'CBKO�&%NCA�FC�
�	!lC
y'856�mj\_k35`-C&%NCA��&#'B��
	X��6
"���� )7h@e
61,L�	g
igW_O+*"!43/.*7+7&%!)") 
+!"3!265."&5463!2#!"264&!5'&"'&"g�%22%�#53��	��+�++9*)e`��KK�1&��#42%/&1�~	��	�+8++9*�_ħ�KK����(F<@9igWaQ64'%
+276764'&'&"2"&46.547>;2+'&'&5467676=4'&�}kg=>>=gk�kg=>>=gk}'>	y
		
�	

l>=gk�kg=>>=gk�kg=>�**�	
��


	�
����#J&@#����vJI43#"+6?>&'&"&4?>&'&4627.6?62'.6?>�7:u T"2,2)poR!+y+qo) />8:y8:6+ 6)o78R +y+qo)-Ey87"2 +2+!Roq+u+ )+ y876 +6* 
Roq+y+ )+�3@�W_O#++%/&4?6!2#!$�		�\%%���
�
	�p&2%�3@�W_O#++%?64/&!"3!��

���%%\�
�
	�p&2%<�@L�v5+"/&463!2;
����������%G@D/	Jv)'+&'&'&'.'&54767676?676#"&'&'&57676767676s@3-
<Ea',��Cq?b

 !"( `{RG	
  :EW
',%��C2*$77:

",A#,����*1>@;/.-I��~�YaQ10,+$#+"/&4?62%?64/&"&4762'3'73|K�KA`���S"������
�:Oh2:
O�OdC.�B�%���b
���?;l���(
)7@4�~iYaQ###%+>2"&'&4#";26=3264&+54&"h>��||��>>���&��&Ci||��||ik�L&��&����8H_@\2	L

�		��

ig		Y		a	Q:9A@9H:H76*) ###
+546232+"&=#"&463#"'&'&476762"'%2>4'."� , G  G , G  Q/n;eUS0220SU�US01$#� +��EwF$"w�x"$F;<�G  G ,!F!!F!, ��#$20SU�US0120RVd?n,�, �Fw�<:FF:=�x"$���#/;Gr@o�		��

g
gg		Y		a	Q=<10%$C@<G=F740;1:+($/%.#"	+%132"/&>;462"&463!2#"&46;2#"&46;2#"&463!2#S�	�S!, �&&&&��&&�%%�&&:%%:&&�%%��

�L%%�� ,  , � ,!!, � ,  , q ,  , ��5@@=�~gWaQ2/(%"55%#	+	"&=#"&=46;5462#";2+".54>;2���$��$0��� 00 ��/O--O/�=�������"0��0&-O/^/O-&���(&09By@v.L�

�

ii	Y
		iaQ;:21('
?>:B;B651929,+'0(0%$! 
%+"&54>32"264&"264&4&"26"265.!"264&"264&L3J2(#5X#43G54O#52K22�I3I/2J/#52L12�#52L12��#53J24�#55#(2�I3I/2I0w3J24F5X#54G43�3J22%%33J22K22J32K2���(@�v53+#!"&5463!2�fD��HcfE?Gc~��HcfE?Gcf���+(�& 2+/.?>'7>&''7'?��q
((
p��*(��))��*��)��hl��&��&!*���$yy
#�,"��uu��&��%���+�2+?>'7>&/.�p��*)��))��q
((�&$.���#
uu
#�,$&�����#/R@Og
g	gW_O%$
+($/%.#"

+"&463!2#%"&463!2#%"&463!2#%"&463!2#h%%%%��%%%%��%%%%��%%%%!,  ,!� ,  , � ,  , �!,  ,!����#/R@Ogg	gW_
O%$
+($/%.#"

+"&463!2#"&463!2#"&463!2#"&463!2#�&&l#&��&&�&&��%%%%��&&''� ,  , � ,  , �!,  ,!q . ,!����5Q��@LK�
PX@"���WaQK�PX@��WaQ@"���WaQYY@	.->))+>54/&'&#"32"'&'.'&=4>;2#"/&'7654'&'&#32�		
&�9
��	
� 
Z
��
���mZ		�
�Z	
%
�

��
��Z

������#/R@Ogg	gW_
O%$
+($/%.#"

+"&463!2#"&463!2#"&463!2#"&463!2#h%%�&&�%%q&&��%%%%��%%%%� ,  , � ,  , �!,  ,!q!,  ,!����#/R@Ogg	gW_
O&$,)$/&/ ##+!"&463!2!"&463!2!"&463!2!"&463!2��&&�%%��&&q%%��%%%%��%%%%� ,  , � ,  , �!,  ,!q!,  ,!���(,%@"&L���v+"&'&476762764.'&?>'�>|��>>><ki���}&
}}%}}'}}#Ci��||ik�kh?>|��}
%}}$}}
%}}#���(3;?Oq@n1M
L
�

~g	i

W

_
OB@JG@OBO?>=<;:76.,)&#!33
+%32654&+"#'.+"#";3!265326=.%4;2#!!32654&+"L)

)
&�>
%�%
:�2"�#0
�0��s��*		*
?	�		�|\dd��#42%X22�PX��	�		�|
��kRd@a<2R=('L�~~~	iY_OOMIGCA87/-%#	
+!"3!2>54.#"'&'&'&#"#"&5.546236763232767632	�Y.-�-.s
6N
'6&C5#
-�Y--�-��
	"Y�	&& $
		�����(&;HQ\@YLi		iiiYa
QJI=<('NMIQJQCB<H=H21';(;%$#
+%327&'&#"'67632>54'&'&""'&'&476762".4>2'264&"9*/11bZ*/F9dr3EHOWT7-&)/.OR�RO./3}kg=>>=gk�kg=>>=gk}1R00RbR00R1++8++:6"0=!#-5-r>_QO/00/OQ_<;8��>=gk�kg=>>=gk�kg=>0RbR00RbR0l+8+*9+�� @
L�v
+!"3!2656.>54.?�6,+ �,$��%&�+�J(*�!;t�t
�����@
Jv+&'&'.27>'&g1>;v-&!-xz/7 1Z0Z1�)

(.&&-''/DA�3��b1�BE���%/@J�v,+('+	.67&767676226?264.u��65&
w.0D@=�'":G	//��
!"
I��*65w=>A-1
�N
>G>�3+��
!
	$���(
3AC@@L�~iiYaQD,+>2"&'&4356?>54'&'&#"347676322654'&"h>��||��>>�T&%"7&`	"
/3Ci||��||ik��'6:&3	 "�
���.)Sbb@_QL�~ii		iYa
Q_^XWSRFD@?98 ))
+"'&'&476762'276764'&'&"4?67>767654&"#47>32#4762"'.�}lh>??>hl�li=@@=il}dWT1331TW�WT1331TW6

	4`*4!F'%

X1/
	q@=il�li=@@=il�li=@\31TW�WT1331TW�WT130	B!A
X

���(+@G@DL�igYaQ-, 76,@-@'$+ +$	+%/#"'&'&476762%!2#!"&546276764'&'&"��
*�2|Gk\Z5665Z\�\Y56����RFC())(CF�FC())'DF��
)�)*65Z\�\Y5665Z\jBA;���)'DF�FD'))(CF�FC()���(1[@X��
g	gW_O10-+('$"

+!!72#!.54635463232+"&=#"&463c�"�&12%�&12%A��&��&�[1&�#53%�&1�d��&��&���( A@>ggW_O 
	+!!72#!.5463"&463!2#c�"�&12%�&12%���&�[1&�#53%�&1�&&���(
$@!���v+>2"&'&4!264&#!"h>��||��>>���BCi||��||ik�&&���.)5B@?igYaQ+*1.*5+4 ))
	+"'&'&476762'276764'&'&""&463!2#�}lh>??>hl�li=@@=il}dWT1331TW�WT1331TWy�q@=il�li=@@=il�li=@\31TW�WT1331TW�WT13E&&����-@-L�v)(! +'&462"&47.7>"/&4?62J} +��+ ��&,�&-��-��,}9},�+� +�
&�'�+ �+�,}��63@0�iW_O65#6)7+#!".54>7>32;26=32?64/&#"31R04X3�>i>5]:&�PDwP��
}	K	�
��6U15Z4?k?<fAIV=m��

�	�	����,6@3L�iYaQ%$,,"+%#"'&'&476762"'%2>4'."�/n;eUS0220SU�US01$#� +��EwF$"w�x"$F;<u#$20SU�US0120RVd?n,�, �Fw�<:FF:=�x"$���( $@!���v  (+476762#"&'$%2>4."h64Z\�\Z46��7
$���"9""9D9""9�k\Z4664Z\k��]-0�E!:D:!"9D9"���g�T,j�E:K�
PXA'd�\
	[
U6!
)
?
GLK�PXA'd�\
	[
U6!
)
?
GLA'd�\
	[
U6!
)
?
GLYYK�
PX@N		�	
	
~

~~i

iiYiaQK�PX@I		�	
	
~

~~i

iiYaQ@N		�	
	
~

~~i

iiYiaQYYA lk=<����tsk�l�hfOMJIDC,*+6"'.'&'.767&76767676766?6?37>&/7>&/76'.'&'&22767676'&'&'&76767676'&'.'&767676&'.?6?67676767676&&'&>76?>126?6?676767>5''&'&767>76.3'&/&'.LPLJ-/.0
"51;F-,k-1shC7(&'
	)*=!FDOR��6$#%!$19U_($[IA7+,	
)'R355
9IF<>/
!
	

 

	'
:)
 

	
	8"
		#
		

.


1$1%@BRUb$5wj")4 !2a7
(&h47*8><-.N/.�'&36/
"0,[!8R)
6.&]h-NE71.?	
+*,d	
:&H=


'* 1R 
07



@=
!
J'�( 
	
	+

N$-)
>6,
$
	>(

%7	 8C$9�~�A"1:DN�@� -(%L��

g		g
giW_OFE<;32JIENFM@?;D<C762:3:0/'&""+!2!"&/467!!"!2?4&!57>7>%2"&462!5463%2!5463��"1."�"2."��,�����KN���**:+*S��X."��"2."."2V��|�ŇKN�5+:+*<***t**���(-?@<�gW_O'$! 
	-,	+2+"&=#32#!"&=46;#+"&=463�A
�Q��

R�A
(�
B��B
BnB

�����'w��AK�
PX@/ut.q1�edb=<:6
WVSKJGE!
L2^KK�PX@/ut.q1�edb=<:6
WVSKJGE!
L2^K@/ut.q1�edb=<:6
WVSKJGE!
L2^KYYK�
PX@(�������vK�PX@$������v@(�������vYY@���������pn'%	+?3?#!"&'54>73%6276#+''"&=&/&'&'&'4737&75/.767>;6?546&32656&2".4>�3m0
)


&&
��(4X4!�13&)	&&&% 	13&&&&%Q*	#(�84X44XhX32XM#
		&<,


&C5Z7x

2	0'2&-2	
1&2�		-*(�4YfY43XjX3�j�R)5DRbn~���@�r�z9
	OH
@L{sA
:Kgggg
g
	
i

g		igiW_O���oodcTSFE66+*�����������o~o~wvjgcndm\YSbTaMKERFR6D6D?=1.*5+4# )(	 +2#!"&5463!!267%2+"&=4632#!"&463'2#"'54672!"&5467'2+"&=4632#!"&463'2#"&'54672!"&47!"!54&'V&&�<&&�
���		*				�_		S
.

"	
�[	
O		*				�_		S
.
"	
�[	��<�
R%��%%l%�&	�	*

*	�
-.
	�	*		*	�
.
.	
mi����!%H@ELggW_O%$#"	!!	+2!32!"&546735!"&'467!!k".,#��������".,#���,#�[".KK,#�".S�_����!(7@,@#L
KK�PX@H�
r
		
rWg

g
g		W		`	PK�PX@I��
		
rWg

g
g		W		`	P@J��
	
	�Wg

g
g		W		`	PYY@-*)""?>;:652/,+)7*7"("('&%$
	!!+#532>/&";#"3!26=6&%7##5!53;26=3'"&462s�d ,�@�* d�,,� +*�c������,�,�>  42.>��>-7+ �,,�,������g�2,,2�d V�@LI�v)+654'&'&"327765$0/PS�SP/00/PS`AQ2�:LZNK,..,KN�ML,.	)��k�%1@.L��W_O%$"7+#!"&'!2>52!".'4>7&-8_9��1Y�-M-�!8"5!��!8"5!�Y1��9_8-&-M-�5!��!8"5!V!8"	����3GVj~����K�
PX@{

T;
LK�PX@{

T;
L@{

T;
LYYK�
PX@l��

���	g		gi

ii

gW_OK�PX@d��

��	g		g
Y

ii

gWaQ@l��

���	g		gi

ii

gW_OYY@D�����mkXW�����������������wtk~m~b_WjXiPO65-*'$32+%1#.=462"&54&#!"3!2#!"&546362"'#'&?%6"'&?'&2+".=4>3#";2>=.2".4>"264&72"&46F	B
CV(3�v�

�}(44(???O,
S
SB>
��'A&&A'�'A%%A'��..�./q!7!!7B8  8! //@//a
���	;)��		R!!��!;)z);��
BCS
P
X
WGB�%A'�'A%%A'�'A%).�..�.C!7B7! 8B8 *-D--D-?��*7l@i%$L
��	iiY_O,+21+7,7*) 	+2!"&'467"2>4.%#"'&/767632".4>q".,#�".,#�=j>>jzj>>j
1. "-2��#9!!9F9!!9�,#�".,#�".h>jzj>>jzj>�!I}!9F9!!9F9!���R&3C[eir����������3K�
PX@��%�� &G	W
P!
LK�PX@��%�� &G	W
P!
L@��%�� &G	W
P!
LYYK�	PX@�rp7#6!5)'%&%g*(&$" & g432g+,g/.		g1i-0
i

g

iW_OK�
PX@�r~7#6!5)'%&%g*(&$" & g432g+,g/.		g1i-0
i

g

iW_OK�PX@��~7#6!5)'%&%g*(&$" & g432g+,g1/.		g-0
i

g

iW_O@��~7#6!5)'%&%g*(&$" & g432g+,g/.		g1i-0
i

g

iW_OYYY@����ȹ�����tskj]\ED54('��������������������������ǹƱ�������������������������|ys�t�onjrkrihgfa`\e]eUSNLKJD[E[=:4C5B.-'3(3&&8+2#".'54>7#"32>754.'2".4>%2+"&=463!2#32#"&'5467"2654&%#3%2"&462+"&=463!2"&=#32+"&=463#3%2"&=#"&=4632+"&=463!2#"&'5467!2#"&'5467#3%#3%#31%?'#=%�%@'#=%��&;6%�,*`!8  8B8 !7���

yu

y� /-E,/�צ��
����
�}

}}��H��_������c��$��$��^#=%�%?($=%�%@'*6%�&;*�,B 8B8  8B7!��	�	�C-B/-" /��'���	
���)��m		mm		m$������*�����k�@Iv$#+&'&#".#"67676N5.:7\Z7:/58.cR\\Rc.8J&!:..:!&JWmZ_O==O_Zm���(+N@K(L��	iY_O$"! 
	+*
+!"3!#53547632#"3#!2>5.#Z�4./��42Z"*$>,�u.<)(.�/+8�q_31}#`���.�*:����;?@<:853&" L�����v%$#)+#"'232767"&'2327.=.47&54>326767_#$BGah}�	@<94=_ +D'#1&.Fegr2V3)H:?
+C*-
`]`LP-0T'H95M-	Td-V353V2# 7	9���)lJ@GV1+]L�iiYaQhgNL@>75')%+#"'7676?327>54.#"674674'&'&5&67632#".76767654'&#".'&5476762�><gj{CB)


:!D75>I�N^GA$"	
	0-1>7X1A'#&U�$&><gj�jg<>b{jg<>
I&
1.&%�NJxE(%@>H"H%
2Z.T5=0/4'("2
dh(!SV^{jg<>><gj����1Gaw@t\BT<-L
�
~	gW_OHH32HaH_XWSQ@>:92G3E+'" 11	+2#'./7>?357>!232#"&/5462"&/5#"&/46?!#"&/57>?_ ���@ � � �  +���� (!��� � �� � ������%8K�@�B/
G<4)	!	L
�

��		�
	~�~�		gW_O:9'&EC@?9K:K20-,&8'8%%
+2"&'5#"&'5467!"2675326754&'%26754&"#"!"&'546232k ,��!+�� ,��!+�� �� ��� �� ���� 0<LX\`lx�����������(2#!"&'463!"3!2674&#2+"&=4632+"&463%2+"&=4632+"&463%#3%#3'2+"&463!2+"&463%2+"&=4632+"&463%2+"&=4632+"&463%#3%#3'2+"&463!2+"&463%2+"&=4632+"&463%2+"&=4632+"&463%#3%#3'2+"&463!2+"&463�)<8(��)<8( ��#"#"�a

S

$		}

M		S

#

}		��))�**�		}



}		�

S

$		}

M		S

#

}		��))�**�		}



}		�

S

$		}

M		S

#

}		��))�**�		}



}		3%�H&63%�&6*�L���	S

S	TT	S

S	T****T�
S

S
SS
S

S
S))))S�	T		T	SS	T		T	S****S�j�(?\��������@=�����`�����Ȱ3+�9���mYQ
;%

LK�PX@y	
r$(g#!" ig&gg'ig		g
g

%
hW_O@z		�$(g#!" ig&gg'ig		g
g

%
hW_OY@_�ˮ�]]�������������������½����ʮʨ�������]�]���xwlk\[WVSRONKJCBA@?>7510*("!	)+2!"&'467!!267%"/##"&'54673'46737232'!37>354623546232&/./##'.67367#"&'546?!?3235'5'46732"#"!54&/#"&5?4&!"!54&'"&462"&462"&462�)<8)��)<9)\�l $��T/"A
!(:!1	��.
/*)��v
	�
		
v	
����
��SE
S	���$� ��

S
T(6'�(:6(�(:�v!

�#2P''L+ ��\3	7.	
2.	
.
c
	��	,
		
h*	��=p
	d

a�GB"?


	


	


���#Nlo���@��
��
��
���&�ledG3t\[PS<	R	uonQ
L



�

~~~~		~		~~g
gW_Oqp����������pqhg_^VU+(#"
+2!"&'46?!"!2674&'7673/&?'.?>7'".?'".?'".?7"6574/&'".?62%7'".?'".?'".?�)<8)��)<8)��$ $ ����7����d�5g��b�a		

��lT��bx7(��c�{a�b	

	2%�I%62%�%6*�K�V��87����d3�h����a�a		hk���ax	7(��ca�a	
	���%<@9ggW_O"!%%
+2#!".5463!3!265!"!4&�0<,��0<,V�l%&>��&�&*�P(3)�(4�eu������$H@ELggW_O $#	+2#!"&'463!3!267!"!54&#�)<8(��)<8(^�l"#>��#�"3%�H&63%�&6���OK�j�(:AN[p~��������@6�,+�¿������������
|u	{	m`aA	LK�PX@�'%#!r4r17)+)g:/9.8+0-,*+,i**g(&$" h6
Y

i5	Y		i32hg
W
_OK�PX@�'%#!�4r17)+)g:/9.8+0-,*+,i**g(&$" h6
Y

i5	Y		i32hg
W
_O@�'%#!�4�17)+)g:/9.8+0-,*+,i**g(&$" h6
Y

i5	Y		i32hg
W
_OYY@���������qq]\POCB�����������������������������������������������������������q~q~yxlked\p]pUTO[P[HGBNCN?=<;:93210*)('! 	;+2!"&'467#35#"&46?35#"&46?35#"&46?35#"&46?3%!!267%2#"&46?32#"&46?2#"&46?3546?2"&'54672"&'546%#3%!3546235462354623546235462354623!"!54&'2"&4632"&4632"&46�)<8)��)<9)0h 0*
**
**
**
*,���$�Q	
.
�	
.
�
.

	��hh,��>SSSSS)>��$� ��	
\
\	(8)�)<8)�*<���$SSSS>�� �)
*}
*	
.}
*	
.�hhh*
**
**
**
**
**
*!D>#)





�j�(�����$@3����x3'wpo;:nUB<!
mkF>=

e[G	
	LK�PX@Q
r


pgigg
	
	hW_O@S

�

~gigg
	
	hW_OY@=��������������������usih_^WVTSNM87+*#" ��	+2!"&'467!!2672#7#"&/4673#3"&'5546?2#"&4673'32#/54627'#"&'55?37!"!54&'"&462"&462"&462�)<8)��)<9)\�l $��		K��G
���
}
K��G
���
^��$� ��

S
T(6'�(:6(�(:�v!���
{		K��G
z
��
}	
G��G	�9GB"?


	


	


���#T����@�X'
�f_5.~KztFAL$
K

�
gY
	giW_OVU����|{wvsrihcb^[U�V�IHDC@>7621-*##+2#!".54>3!"3!2654&2357>23#"&/5'&5476?6?6!2357>23#"'&'5'&=?>'2#&'&'&'&'&'&4767676767&67>76?6/&'&'&�00��00��$$$$��V	
	dE�
VdD
�
	
!	

	
	
	+�P++�+*�P���
	�4	55
3(w	
�4557w#%(!&
&

2 ,	

	����Un�����f@<R NGQPF��|r<���+�;,{se	*!	
LK�
PX@Kr	rggg

g		gW`PK�PX@L�	rggg

g		gW`P@M�		�ggg

g		gW`PYY@-��oo������������oowvihXWKJBA@?&$UT+!.'>7!7>!#!7>75'&'&6?6746737!"&/5467!275.'.6?>&%2#"&/467#3776?67673?76.!!��8'��(77(N#5 H�  H!!$%f04"	
	���
">!@

'b(��	�
Ի�}"!@2#5s�H�

!$���D���'77'U(7."7 @ ��  �5'W!
$*
�	�m5 �"#
54�	��
$)���*
: XUk��+'t}���#9GTbp~�����@�*
1
L�g$#g"! g		i

g
g

igW_O�������rqdcUUIH;:%$�����������������������ywq~r~kicpdpUbUb][ONHTITB@:G;G42/.$9%9##%+2#!".54>3!"3!2654&2/#".4>2!"&46?%"2>4.2#"&46?%2!"&46?2#"&46?!2#"&46?!2#"&46?%2#"&46?!2!"&46?�00��00��$$$$�(D(GJ)/(C((C�	
��	
�00:01��
�	
#	
��	
�	
�	
�	
�
w	
}
��
�	
�	
��	
+�P++�+*�P���(D(2'IK(CPD(���1:10:0h}}}	���#1?Vdgu��@�Lgg

g	g	
	
gggW_OwvihXW32%$~|v�w�pnhuiugf_]WdXdJI:82?3?,*$1%1#"
+2!"&'46?!"!2674&'2!"&46?%2!"&46?&/#'#.?>2!"&46?'3%2!"&46?%2!"&46?�)<8)��)<8)��$ $ E	
�f	
�	
�f	
ziwh'	
��	
�-Y	
��	
M	
��	
2%�I%62%�%6*�K���}m��FF
$
��}S}�j�(<^os��������@�������|^lb
	�zYA
kcL�~"g%$#igi!
g
 
ig	i	
	
ggW`P�����������ut__��������������������������������������t�u�srqp_o_ohgKI>=,+<@<	&+2!"&'467!!2672/&/.54>"33?6?6?'./2#"&'5467#3"67&54>2654."264&%2#"&'5467#3!"!54&'2"&4632"&4632"&46�)<8)��)<8)]�l!$��>j=(#			

',=i>%?

		

9"�
�
����!3V2#6"080"6#3V3%%3%%�
�
���?��$�!��	
\
\	(;*�+>;*�+>�~&#=j>2X 	 ]4?i>��% 
)	W
X)*M2V3<11 .00. 21<3V2S$4%%4$S	W
X)*�#@:&)





	��=/@Qb����@���f|
_WNF=5+#L�

� gg
g
g	W	_O����ccSRBA10! ������������c�c�����}yxutonig[YRbSaJHAQBP970@1?)' /!/	!+%2#"&'5467!2#"&'5467!2#"&'5467#";26=4&#!#";26=4&#!#";26=4&#232"&54&'##"&'5#""&54>735462#"&'5467#"326754&'&h�h�zh�d	h
wd	h
�d	h
E�'C(7)�
�/%@%�\)<8(�)<7(��#!�#!Ohhhhhh)h
h	h
h	h
h	w
l(C'

)<h

l/

'A(h	�7)�)<8(�)<)!�"!�#���(-6?�K�PX@<���
p


i		iY`P@=���

~


i		iY`PY@#87<;7?8?5410,)$" 
+#"#"276.+6&54&#!"/!"3!26'4&"2672"&46<��
�p��XLX��>�O(����

,���XX�<2��(@%I��YaQ+%&6767677%64����m_J@*%dOS[V{
�
�92XK^QJs=?�
�
!�l�Pb������������?6/&#"&/."'.'&6?>'&&'&47>>&/.767626?462.765!276#"'.'&47>76"&''6>267.?>64'".67&#'#&%2".4>"264&%#3&'7#35'#367#37#3&'7#3&'%363573.'3.0H7A$

$A	


3K
��aYV�$&
�`	"aYV�$&&$�VY�"&#		#&"(!		 �h�Q/�w'j>7�00800%%4$$���<����ۅ;��� �׭����4��
;d&w"�,OÞN,l4#w(j.;	
	'E'	
%			%$H&	
:
	 &$�VYa"	�`
&$�VY�YV�$&�� "("  
/"�EW	�2K7�080080)%4$$4%�p`Vcs]�_qlddl��c\_qiZ�H0[[�QA��BV5[2J��=$In~���K�PX@Hp	qh
i


iWaQ@F�	�h
i


iWaQY@F���qoKJ&%�����������yvo~q~kib`]\YWPNJnKnFD=;8742+)%I&I$$'#'$+232+"&5#".=4>;546!232+"&5#".=4>;46!232+"&=#".=4>;46#";26=4&%#";26=4&%#";26=4&�
11

00V	0000V	00002S%%S%%��T%%T$$��S$$S%%=	>0T0��		20T0>		��0T0��		80T08		��0T0>		>0T02	��$T$$T$�$T%%T$�$T$$T$�j�J,8T@Q21(#!L
i	iY_O.-43-8.8&%,,
+232#!"&54>;5>76"26?54&"!5.�I~OO,8(�,(8,ON>AK./>.1"-M1^0OJFyI�,�x(77(�,�J}$%��)d*&]#1�*I+��.M-����(?JS\e�@�D

=	L��

g

ig		giW_O^]UTLKB@*)ba]e^eYXT\U\POKSLSFE@JBJ<;7521)?*? ('+2"&'5!!2675462!".'4>72"&=!"&467!5>!"!54&'2"&4632"&4632"&46F6"!��"4�U 6!4�	hi��
�\���"�"�"�4 �%�l 6"5f 6"�Ubb	8!8	
W}x&""""""����(@KT]f@E

>	LK�
PX@[		�		p~~p~

g

igW`P@]		�		~~~~~

g

igW`PY@?_^VUMLCA))cb^f_fZYU]V]QPLTMTGFAKCK)@)@=;7521 ('+2"&'5!!2675462!".'4>7"26=!264&/!54&!"!54&'2"&4632"&4632"&46F6"!��"4�U 6!4�hi���\���"�"�"�4 �%�l 6"5f 6"�Ubb	8!8
W}x&""""""����DYftM@JL)I
iW	g_Ohgpmgthtb`[ZGE><'&+2"&46>&'&'.632#'&'&'&67676735'&'&6#"676?657%'"&>7''#"&467�




9/'!)�(@
	A	1 X,0%'S�	%1�H 1$!CTy�

�

�C

	F

�

@ 6/�	HJ	
O>@)	!&*f'%B=F�:)M,H�
>


���#3CGKT]fo������������59=2!"&'46?!"!2674&'2#!"&5463#2#!"&5463!!%!!'2"&4632"&46!2"&4632"&46%232#"&/#"&'546?!232#"&/#"&/46?#3%#32#!"&5463#2#!"&5463!!%!!'2"&4632"&46!2"&4632"&46%232#"&/#"&'546?!232#"&/#"&/46?#3%#3�)<8)��)<8)��$ $ 		��F��		
��8�K��9�

I	

}	
I

��
yP#
�yP#

��\;�[;�		��F��		
��8�K��9�

I	

}	
I

��
yP#
�yQ"

��\;�[;2%�I%62%�%6*�K��`��1��1)���:�J	h
J	h	M000.��1��1)���:�J	h
J	h
M000���#3CScgkos������@���� �! x`P@0XH8(
L"#g(g+g ! g!!g*)ig'&	%$
g

gW_O������ttTTDD44$$������������������������������t�t�|zsrqponmlkjihgfedTcTb\ZDSDRLJ4C4B<:$3$2,*#"
�,+2!"&'46?!"!2674&'2+"&=463!2+"&=463!2+"&=463!2+"&=463#37#37#37#32#!"&5463!!%2"&4632"&46232#"&/#"&'546?#3�)<8)��)<8)��$ $ �s		�		p�p�p		���``�\\�__�\\		��		
��K
q

�
�+�<"
5�'�2%�I%62%�%6*�K���aaaaaaaa*)))))))���)�5w



*4�	�
iw���(.F`j�@�	I `_^UTSQJF>=<43/2LK

��	~�

g
gW_ObagfajbjZXNMHGB@8710*)'&
.-+232#"/!"&''.?>37>7!5'#"&'5'#"&'%!>732546?32#"3'&'X$;�

 k7(� 0�3�:"��o	-o
-��
o	.n
*o�� �(f ��]0$.!0t ,f���0`$
q`�
�
`	G`��`J75���#3@DR^nu����@�k�|xsc0(L�ggiig

g

g	gW_O����__TSFE54$$������������~wvut_n_mgeZXS^T^MKERFRDCBA;94@5?$3$2,*#"
 +2!"&'46?!"!2674&'2#!"&=4632!"&46?'!!%2!"&46?%2!"&4672#!"&5463/!!767>2"&46"264&�)<8)��)<8)��$ $ �`�{			
��		i��M�	
��	
M	
��		X		��		$�~����
~���%%4$$	2%�I%62%�%6*�K������
}}SS��R���	J�w���	I��*%4$$4%*
�j�R&1n	K�	PX@k[YCB@,'%$LK�
PX@k[YCB@,'%$L@k[YCB@,'%$LYYK�	PX@+�~	iYaQK�
PX@1�~~	iYaQ@+�~	iYaQYY@32TRQLIH:62n3n

+2"'.'&47>76327%67654"32?6#/&/"&67;6?2?654'&/&'&5467&'&�f]Y�&''&�Y]�]Y�&''&�Y]n�>CNI��oJ�#i�c:;�6tfc>2-
0�gI		-0!% 
0�0	
'>LNR'&�Y]�]Y�&''&�Y]�]Y�&'��q�WPN|&FRf
LN�d>eiygc75\�5���4A#'$05���(cp���@��y]���zS'���F
L

�


�
	

	~gii

i		gYaQqqed
�����q�q�������kjdpepA>4321,+
cb+2".4>276#&&?4."372+"&/&'&/&6?5&4?'.?>6?>3"2>4./762&547.54>3264'&6?''&'&/"/&462762�9a88ara88a~^TP8;
.O^O..O/	

,�_TPPS
__.O..O\O/.O�r
&	
iVYYTk&
c!6Z48a97];(-YTk
$"�M?x88ara88ara8�d&

�	?
	

0P/.O^O/	!&O>
e
&

�
	?>	
�
&d��.O^O./O\O/�p*�H
!
E�)o>G;]79a84Z6	
E�)
o���L>x	�j�(*?Xclu~�@�]
	U/L�~	g
	
	
igW_Owvmmed[Y{zv~w~mumurqihdlel_^Yc[cNMBA?>	+2!"&'467!!267.?>/.?62>"/&4?'&6!"!54&'2"&4632"&4632"&46�)<&��)<8)]�l!#�l�{x��F��
{{��$�!��	
\
\	(;*�, ;+�+>�~&$�
��
C{x���
�{{i#@:&)





����6Tr�h@
��g[>3JK�
PX@�Y_OK�PX@Y_O@�Y_OYY@	FDCB+6767>/&/&/&/.?6?67676767;/4/&/.'7&>'&/&/&76?6767676'�HOJFCc'&'<@O?Z)%'06H"	
#
!733)!��


!'*+


�'(*!&,
	;	"'+BGIH&$
B	V@=&
�N?;&$+]>@CI@
/82_ 
[<#+
8'��"0.
�
 (("
Y04%
�	 78M)/"
'+EHDC)%!	
���(&/6=HRYd�@�;Y3	Lig
	g		Y		a	QZZ?>8710ZdZda`VUPOJIDC>H?H7=8=0616.-*)"!&&
+"276764'&'&#&'%2#67>473#&3.'#>7"&'&'3!&54?!67347654'3�|kh<??<hk�kh<??<hk�|';]��,
�
,����'|';]||];'�,
�
,p��'|];E�(?<hk�kh<??<hk�kh<?��dK[:�3-1>>1-3��$&040&~fIZ;E:[Kd��3-2>>2-3($&!$L��If;Z"&$"P"����c����@�g����	��	L����K�
ig		g
Y
_O�ֿ�����~wvqp^]ONLIGF?>7530.,
cb+2#!54/&'&'.6;22+"&63676?6=#2+"&6367>7654/&'&'#.63633!'.6?3267674'.'&/.63676?67#3&=463!23&54?##!"&=473'&'�


	
	

�
	

	

�
	
�	

�
	
	Y
	
	��
		
	#N7	�-/.	)	//	��	�
C����N���
�	$ 4
!#�D
"�

�"�
#�		�	4��($�j�(!%)048CLU^�@�=
	8754320/,+)%!L	g
	
	
igW_OWVMMED;9[ZV^W^MUMURQIHDLEL?>9C;C('$# 	+2!"&'467!32?67%3737377'7'7!"!54&'2"&4632"&4632"&46�)<&��)<8)]�lY����_��veIv����\��>��$�!��	
\
\	(;*�, ;+�+>������eI8�T�]v��v>�#@:&)





����+��!LK�PX@1r
g	ghW_O@2�
g	ghW_OY@%#+*	+2+"&5463#32!!!"&'54673&5467s,,�,,���U+�nP�:O*L,�F,,�,T�Wz+���!�+����#B@?LggW_O#"! 6+%2+"&=4632!"&5463!!x��!0."�
!0/!��Oq/!�["//"�!0S�_���C+;K[k{�@�xp
h`
XP$	H@80L��

g
	
g		ggW_Oll\\LL<<,,l{lztr\k\jdbL[LZTR<K<JDB,;,:'+/.?62.?'.?>2#!"&=463%2#!"&=463%2#!"&=463%2#!"&=463%2#!"&=463�vx�����xv���
��
z��
��
z��
�v����~v��oooo���&6:c@`
4L�
g	ggW_O)':9871.'6)6"!&%+6"'&'472!5463%2!5463!"&5463!2%!!�
$	��
*����
�
�6
+�B		�	�N��l���
{
3�Օ�
T

��
�		�e
*q���#GT`@]A:3L�~~~
gW`	PSPLJ=<7610#"	+!".54>3!2"3!2654&#127963?64.4&"'&124&#!"3!26w��4443��))))��p
p��
��
	(	e3�33�i4N)�i))�)��
a	

��a
?	

���#3?CO_ko{�����@�0\Lg 
g	g#!g"

g&$g%gW_O����}|pp``QPDD44%$������������������|�}�p{pzvtonml`k`jgdYVP_Q^DODNJHCBA@4?4>;8-*$3%2#"	'+!".54>3!2"3!2654&#2+"&=4632+"&463'#3%2+"&4632+"&=4632+"&463'#3%2+"&4632+"&=4632+"&463'#3%2+"&463w��4443��))))��	

	T		R
	�		j**g
	�
	T	

	T		R
	�		j**g
	�
	T	

	T		R
	�		j**g		�
	e3�33�i4N)�i))�)~	U		U
U+*T


�	U		U
U**U

�
T		T	
T

**T

���"'3?Lb�@�TQ!Lg
g

g
	
g		ggW_O@@44(($#SROM@L@LFE4?4?:9(3(3.-&%#'$'
+2!"&'4>?!3%!!26?!!2!"&467%2!"&467%2!"&46?%!"!5'5/"/w2=,��,A0��%�q��(��FV
�c
�
�c
�
�c
���(�0�a-@=,�2��(��%'�p���oo�%LL
���#ER_@\@4%AL��
ghW`	PQNJHDC>=('#"	+!".54>3!2"3!2654&#>&/&/#1&#'#?264&#!"3!26w��4443��))))��q��q�
��
	(	e3�33�i4N)�i))�)�a~~a��
K	

���&.BR�@.
	'
LK�	PX@H		��~�

p
		gg

W

`
P@I		��~�

~
		gg

W

`
PY@%DC1/LICRDQ;8/B1B#!	&&+#53264&+54##";26=326..4>7!".54>3!2"3!2654&#�		:a=Y		Z=a:~	
�-I**I-F��4443��))))�|?e;
;e?|{	;WbV;	�y3�33�i4N)�i))�)���$Z^gpt�t@q����20tsrojga^]\UB1
pi`_MCL�~~	gW_O������mled!	
+!"3!2>54.#!"&5463!2/&/&'7>.39;27%>=?65%7'532?53?/7%&6?0267373251327313031;2133"/"&=#"w��4333()��)))yA`/��.	`C88��*�*4ئ
���*�*�{TS0
13�i33�4��))�))�iYd%IJ%
g�]^�	BPA�Ow<
'jN�'
=xhAOA�HH)�
	�*���).6CPo�@�mT*!c]4	)"L�		i
i
i

iW_ORQED87ljfd`_\[VUQoRoKJDPEP>=7C8C65..$&+2+7>7>!"&46?!2!"&'46?/!2".4>"2>4.232#"&/5#"&46?3546h	>���5��	
w
�>
d���x��3V33VfV22V3'C((CND''C(?	B>	
>
�
	���b��}p
�<	����c�l2VfV32WfV2)(CNC('CPC'*
B
?
?>

����,\x�������K�	PXA/H
����l
�s���k
@	L�
K'&IK�
PXA/H����l
�s���k
@	L�
K'&IA/H
����l
�s���k
@	L�
K'&IYYK�	PX@l

r�!g&%$*)
i('
Y i	i#"
	
	ggY_OK�
PX@n

��!g&%$*)i#"('i i	i
	
	ggY_OK�PX@f�!g&%$*)
i('
Y i
	
i#"
	
	ggY_O@m

��!g&%$*)
i('
Y i	i#"
	
	ggY_OYYYAl������������zy.-	����������������������������������������y�z�xvonfeTQMLFD>;75-\.[,*! %+++#'&/'&54676327'&6;2+"&46;2674&'!"!2#!".=4>32#"&?'&73276?3'25?4?32+"=6"#"&7>%22=74732#"574"#"&7>72#"5743%2+"+"?63!2+"+"&576;"2>&!"2>&%#37676&!#3>56&#XJ^	G?

0	
I8R
D�00�

�$ ��$ T��00�g!!"+�'�			(� �Q!
! 	G��
�
�����
z7�?
w
F��/	�!�G0�1

!$!�$1�0��.b>>
f
 (
e
 (8�� #'	
� #'	�Y52	2	���! -2BRVYd@a2/L

g	g
iYaQ43"!YXVUTSJG<93B4A10('!-"- +2".4>+"&/&6?62"2>4.372#!"&5463%!"&75>!!!�9_88_r`88`�l�	B�C�	�-M--MZL--L��?�?	��
��	�������#M�A=8`r_88_r`8
�


�
*-MZL--LZM-x��n
��5�� L	2��2�����"&j��6@3�lGyx.L��YaQji%$+7>'&>&'&'&&'&>/.>>?6/&/.>3?67>"#674/&65�	L


>$��


+5�)k�	!��	�
�B
,i?��/��
	
	,
Q
	
	,�
��

t
�iy	M
�5
���
L2�	S	�{�(,0cv����@Ƒg�yqL



gggggig	i		gYaQ����ed21
	������������}|xwoldvev\YVSNKB@=<1c2b0/.-)(",,
	
+2"&4632"&46232+"&/&'&"&46#32".6;767>54&#!"3!2#!"&54>32!"&/5467!!267%2#"&467%!"!54&Yt��3
�6

1�,~�*:
			"�4#"2		��);.K#!�6#!�
���	
W		��6�K,
�


�	

c�=1$��)
D��

2$C'} �#!�$��
B�
C?	��!'+/5;?C�K�PX@Yr 
rg&%$#g"!g
	hW_OK�PX@Z� 
rg&%$#g"!g
	hW_O@[� 
�g&%$#g"!g
	hW_OYY@g@@<<6600,,((""@C@CBA<?<?>=6;6;:98705054321,/,/.-(+(+*)"'"'&%$#!! 	'+2#!"&5463!!%3#5#5!#5%#5357#5!#5%#5#5!##5!#5!#5���B��B�S}M}N}M}S**�f*�*S�S*M}N}���*��})*S)****)S*)�}}}}�S*))*S))))��5(
 8@5 L���W_O5+"'&>3!2!"'&6762%!'
%
��C��	$
%
#
����I#$��	N

��
S����()CL�K�
PX@:

rr	i
	
	
iiYbRK�PX@;

r�	i
	
	
iiYbR@<

��	i
	
	
iiYbRYY@%EDIHDLELB?<:9741., ))
+"'&'&476762"276764'&'&4&+4&+";#";262"&46�}kg=>>=gk�kg=>>=gk}fXT2332TX�XT2332TX)S))�}&l>=gk�kg=>>=gk�kg=>A32TX�XT2332TX�XT23��$&�&&&
�{�(,0c������@�jL<K

g i!ggigig
	g		gYaQ��������ed21
	������������������������utd�e�\YVSNKB@1c2b0/.-)(",,
	
"+2"&4632"&46232+"&/&'&"&46#32".6;767>54&#!"3!2#!"&54>32&'.".7>7.54>2#"&46?2#"&46?'"3264&!2#"&467Yt��3
�6

1�,~�*:

		
#�4#"2		��);.�0"!2
EVE
2!0�
�	�
�
�% $%�
�	K,
�


�	

c�=1$��)
D��

2$C'�0. 6#)11)#6'0�TS$3$%4$
�{�(,0cp}��@���L<K�~

giiig
	g		gYaQrqed21
	����xwq}r}kjdpep\YVSNKB@1c2b0/.-)(",,
	
+2"&4632"&46232+"&/&'&"&46#32".6;767>54&#!"3!2#!"&54>32".4>"2>4.'&4>762Yt��3
�6

1�,~�*:

		
#�4#"2		��);.f3W23VfV22V3'C('DND'(C@�I/fK,
�


�	

c�=1$��)
D��

2$C'}2VfV32WfV2)(COC''COC(?�J/g
���($-ARclu����O@z^M=
LK�PX@e
r 	r#g&%$ig"!g


ihW_O@g

� 	�#g&%$ig"!g


ihW_OY@c������xvmmed%%������������������}|v�x�mumtqponkjihdlelcbZYRQIH980/%-%-*('&$$#"!	'+2!"&'467!!26?%+5353!!"&=7>".?'.7'"&4?'&462"&4?'&46272#5#5!!#5463%!"!54&'2"&4632"&4632"&46V*<8)�5*<8)
��!�#�������_5>;/,];;
,,
w;;
,,
1)��_)��<$B!�6	\	
\
(;*�=+>;*�+>��&#�T)TT)T�=;/,:;
,,:;
,,�SS**SS�#::&)





�j�(9FVYf��@�^`YXW+-L		�i
i
	
	i
iiYaQ;:
����}|tsonA@:F;F0.*(
99+%2".4>2&'654'&'&"327#"'&'&47676"2>4..=4>7%6&.6%"'&'&&'&67>%676'&'&&'&6-3V22VfV32W��}kg=>
98^a�a^8998^aq24
9B}kh=>?<hk�(C''CPB''C6U
		
U
U��sheV��
�

>PN�H
P��F��RmoisR
!Eg\e_I �2VfV33VfV2G>=gk}B9
42qa^7997^a�a^89
>=gk�kg=>��'CND''CPB'756k+k6�(?,_
%
)(�0	!,�j��,]q���������K�	PX@;���߂rIɿ�n������Ѳ���{��|ikj@'&LK�
PX@?���߂rIɅn
������Ѳ���{��|ikj@'&L�
KK�PX@;���߂rIɿ�n������Ѳ���{��|ikj@'&L@;���߂rIɿ�n������Ѳ���{��|ikj@'&LYYYK�	PX@nr��� g&Y%Y$#"
!
gi	
gY_OK�
PX@or��� g#"!&i%
Y$

gi	
gY_OK�PX@ir��� g&Y$#"
!
%ii	
gY_OK�PX@nr��� g&Y%Y$#"
!
gi	
gY_O@o���� g&Y%Y$#"
!
gi	
gY_OYYYY@Z���ͻ�����_^.-�������������Ż�������������������������}vutsmlge^q_qUROMGD>;85-].\(-%'++"'&/.547676;7'&6;2+"&46;2674&/!"!2#!".=4>32#"/53676%3#?#"&'52&#"#"'53254&/&'&546!2#32?#"&546#5#&#53676"2>&7"34&%5�$
XJ]		F?0	
J7R
E�00�		�$ ��$ 		��002,	��&'F

& 			
%g!&b$&-*�2
	
2+�
�
4��2Y�z6	�?wA��0
� �G0�0 #!�$0�0�*-	9
�(+*H)�	/

/	/&	(
/,'4��.
v�-J
(
h))
���(6j~���������j@	M
���][UE
$L&KK�PX@urp	r		p


r
rrghg

ihW_OK�PX@vrp	r		p


r
r�ghg

ihW_OK�PX@wrp	r		p



�
r�ghg

ihW_OK�PX@x�p	r		p



�
r�ghg

ihW_OK�2PX@y�~	r		p



�
r�ghg

ihW_O@z�~	r		~



�
r�ghg

ihW_OYYYYY@K���ѿ��������������������������ƽпР���wunkcaYWQPHG>=41,)	 +!";2327>/326=6&+"'"&+"&=463!2#"&/.'#"&'&'4762763267>32%"#"327654'.'"'.=67>2'"#"32654'.'"'.=67>2!"3!2>54.!2!546!"&5!462"&7462"&7462"&��!21"�q	�#0/�	B	���		&
:

	',
&

�	&
',
	�<00�00��%��&�<&B%�
ST
�2&�#5B)3%�%3��
&�l.>>(S2@�
	^8q
4,l2	//Q( )((#m
	[)((!Q(#m
	�1�D11�1)'::'��'X��'
	
	
�{�(,0c�������@�imLk<K

g ggggig
	g		gYaQgd21
	��������������������ywsqd�g\YVSNKB@1c2b0/.-)(",,
	
!+2"&4632"&46232+"&/&'&"&46#32".6;767>54&#!"3!2#!"&54>31!2#"&/5!"&'546?#37!!%#3%!!%#3Yt��3
�6

1�,~�*:

		
#�4#"2		��);.��������w��Igg��w��IggK,
�


�	

c�=1$��)
D��

2$C'��sS���S�SSS�SSS�j�RC?@<,(L��W_O
>=+*
+2"&546!2"&5466'&/5#&/&6?6354?6*"�"��

�	�	�	��	�R�l��l�����
qq
�
	�	mm
�j�R1T@Q!L����W_O11,*%#+2#.'4676"'&/5!"&=463!54?6�
��
�
�

�""�
R�g���
	�	
�"2"
�j�R0@@= L���W_O+)$"	+2#"&54676'&/5!"&=463!54?6*�
�� 	�""�
R�l���

�	
�"2"�j�R)@@=L���W_O"!	+2#"&5467!2!"/&6?6*|
�"�
�	
�R�l��
7"�
�!
�	���(+/3?HQZ�@�8
'L

g

ig	g		ggW_ORRJIA@6400RZRZWVNMIQJQED@HAH;:4?6?030321/.-,%#++	+2!"&'467!!26?2!"&'5467!!'!5!"!54&'2"&4632"&4632"&46V*<8)�5*<8)
��!�#S�_��f���J��<$B!�6	\	
\
(;*�=+>;*�+>��&#.��)}S**$#::&)





�j�R&FG@D6L���W_OA?:832	+2"&54632+&/&6?66"'&/5#"&=46;54?6�"UX""X��	���	�	
X""X	R�l���m"2"q�
�	�
	�q"2"m

�j�R8N@K+L���gW_O
75/-('
88	+2"&5462#/&'&?6232>54'&'!5*"�fJGJH�c�

�	�

�:C "N��R�l��$#���I~

�	
�
	�7,?��j�R9F@C
��	gW_O53.,+)$"99+2!2#!32+#"&/5#"&=46;5!"&=463!5467�<##�Ŀ##��##���##<R�"2"T"2"��"2"T"2"�����9R@O/L
����	W	_O52-+(%"!98+23546;232#+"&=#+"&5#"&'546?3463�"T"2"��"2"T"2"��"�#�Ŀ##��##���##<<#�j�R0P@M+#L��gW_O! )' 0!0	+2"&/462!"&/5467%2!"&/5467k!�"��!2"��!R�l���7"2"�7"2"����+B@?���W_O
%"+*

	+%2#!"&4632+"&54632+"&5463��lf""2"",""2""""�#��""&#�#��"",#�j�R/5@2��gW_O" *' /"/5553+5463!2#!"&5463!2#!"&12#1"&546�"&##��"",##��"}�2""2""�2""2""��l�����+F@C�~�W_O! '$ +!*		+2+"&5463!2+"&5463%2#!"&463�""2"",""2""f�lX"��##&""��##,"�""�j�R)9[@X5-%L	��g
W
_O+*
31*9+9#!))
+2"&546!2"&5462!"&'5467%2!"&'5467*"�"�"��"+"��"R�l��l���7"7"�7"7"�j�R+7]@Z'L
	�~gW_O-,
30,7-6%#++

+2#!"&4632#"&'467!2#"&'467%2#!"&463��lf"7"1"7"k�lC""���"+"��"+"�""�jR.6@3���v (%. -	+2"&/462+"&5463!2+"&5463�!�;  ��:  R�l����  .��  . ��-B@?ggW_O'$-,		+%2#!"&=463%2!"&46?%2#!"&=463 ��  ��l���  �:  :�!!�;  ;�jR.6@3���v (%. -	+2"&/462+"&5463#2+"&5463�!�:  �:  R�l����  . ��  . ��
-B@?ggW_O'$-,
	+%2!"&46?%2#!"&=463%2#!"&=463��l���  .��  �!!�;  ;�;  ;�j�R)9K@HL	�
��v+*
30*9+8# )(
+2"&'46!2"&'462+"&5463#2+"&5463�!�}!q""2""�""2""R�g��g��"��""&""��""&"�j�R+7S@Pg
g	gW_O-,
30,7-7%"+*

+2!"&4672#!"&=463%2#!"&=4632!"&467��g�""��""&""��""��gC!!w"2""2"�"2""2"$!!�j�R#-K@H	L	�
��v$$
$-$,'%" ##
+2"&'46!2"&'462+!#"&5463*!�!�f""l�l""R�g��g��"��"��f"&"�j�R+S@Pg
g	gW_O! 
'$ +!+

+2!"&467%2!5463#!"&=%2!"&467��g�"�f"`"��"�gC!!�"ll"�l""l�!!�j�R)9K@HL	�
��v+*
30*9+8# )(
+2"&'46!2"&'462+"&5463!2+"&5463�!�}!�""2##��##2""R�g��g��"��""&""��""&"�j�R+7S@Pg
g	gW_O-,
30,7-7%"+*

+2!"&4672#!"&=4632#!"&=463%2!"&467��g�""��""&""��""��gC!!N#2""2#M"2##2"�!!�jR.6@3���v (%. -	+2"&/462+"&5463!2+"&5463�!�;  5;  R�l����  .��  .��-B@?ggW_O! ($ -!+		+%2#!"&=463%2#!"&=463%2!"&46? ��  . ��  ��l�:  :�:  :�!!���_<��ݑ��ݑ�����f�\R�j���������������������������������������������������������������������������������������������������������������������������������-����������������������������������^�%���������������������������������������������������������������������������������������������������������������������������������������������;�����������������k������������������������������������������������������������������������������������������������������������������������	@
���tDt�|"##�$h%<'�((�)|*�,`/0�2`3�5T6�9�;H>�@�B�D�FG8H`I�K�M�O�Q�R�S�U�V�Y�[�]�_hadd�f�hliDl�n�o�q4rtt�upwDz${�}����������������,�(���\�<������$��T�X�h�t�������0�x���<�l�l���4��������ˤ����ќҌ�@�����h���T������� ��,��`����h�0��������h 4H���	�X�x8�4���8`�Dt<<"%P&\' (H*�,�-,.$.t.�1�5�7�9�;\=T?�D$F�H�I�L�MdN�O,O�P4P�Q0Q�RtU�Y<[ \�^@a�chf�gXg�h�l�m`ndoxq�s�v�yH{��������8���\���\��,�(�$���$�����(�����`������l�H���������@�h���Ü�<�x�x���X�H�l�θϔ�l�Ԉ���Dըְ�Pװ�<���ڄ�<ی܈���d��������\�X�����d�(�@�T�d�t���D�����x�(�\���x����������dH0�<��h�	�
�(
8$�L8���,�dP �!�#�$$�(X)x/</�0x1h2�4�5�9=`@8@�A�F�I�L�P SUDX�[X\�]P`�cde�h0i�mhp|rTt�wPz4|<~l�4�4���������� ���x����������� ��������d�H������0�l������İ�t�,�D�<� ����|�D�L�T���Ҥ�p�h�d�@�����ښ�K����55;BHNY
+_�	j�			!	-	9	O	
V[	&�Copyright (C) 2021 by original authors @ fontello.comeiconsRegulareiconseiconsVersion 1.0eiconsGenerated by svg2ttf from Fontello project.http://fontello.comCopyright (C) 2021 by original authors @ fontello.comeiconsRegulareiconseiconsVersion 1.0eiconsGenerated by svg2ttf from Fontello project.http://fontello.com
�	

 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~��������������������������������������������������������������������������������������������������������������������������������	

 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~�����������������������������������������������������editor-link
editor-unlinkeditor-external-linkeditor-closeeditor-list-oleditor-list-uleditor-bold
editor-italiceditor-underlineeditor-paragraph	editor-h1	editor-h2	editor-h3	editor-h4	editor-h5	editor-h6editor-quoteeditor-code	elementorelementor-circlepojomeplusmenu-barapps	accordionalertanimation-text	animationbanner
blockquotebuttoncall-to-actioncaptchacarouselcheckboxcolumns	countdowncounterdate
divider-shapedividerdownload-buttondual-buttonemail-fieldfacebook-commentsfacebook-like-boxform-horizontal
form-verticalgallery-grid
gallery-groupgallery-justifiedgallery-masonryicon-boximage-before-after	image-box
image-hotspotimage-rolloverinfo-box
inner-section	mailchimp	menu-cardnavigation-horizontalnav-menunavigation-verticalnumber-fieldparallaxphp7	post-listpost-sliderpostposts-carousel
posts-gridposts-groupposts-justified
posts-masonryposts-ticker
price-listprice-tableradiortlscrollsearchselectsharesidebar	skill-bar	slider-3dslider-album
slider-deviceslider-full-screenslider-pushslider-verticalslider-videoslidessocial-iconsspacertabletabs	tel-field	text-area
text-fieldthumbnails-downthumbnails-halfthumbnails-right	time-linetoggleurlt-letter	wordpresstextanchorbullet-listcodefavoritegoogle-mapsimage
photo-librarywoocommerceyoutubeflip-boxsettings
headphonestestimonialcounter-circleperson
chevron-rightchevron-leftclose
file-downloadsavezoom-in	shortcodenerddevice-desktop
device-tablet
device-mobile
document-filefolder-ohypsterh-align-left
h-align-righth-align-centerh-align-stretchv-align-topv-align-bottomv-align-middlev-align-stretchpro-iconmail	lock-usertestimonial-carouselmedia-carouselsectioncolumneditclonetrashplayangle-right
angle-leftanimated-headlinemenu-togglefb-embedfb-feed
twitter-embedtwitter-feedsync
import-exportcheck-circlelibrary-savelibrary-downloadinsertpreview-medium	sort-downsort-upheadinglogo	meta-datapost-contentpost-excerptpost-navigationyoastnerd-chuckle	nerd-winkcommentsdownload-circle-olibrary-uploadsave-oupload-circle-o
ellipsis-h
ellipsis-v
arrow-leftarrow-rightarrow-up
arrow-downplay-o
archive-posts
archive-titlefeatured-image	post-info
post-title	site-logosite-search
site-titleplus-squareminus-squarecloud-checkdrag-n-dropwelcomehandlecartproduct-add-to-cartproduct-breadcrumbsproduct-categoriesproduct-descriptionproduct-imagesproduct-infoproduct-meta
product-pages
product-priceproduct-ratingproduct-related
product-stockproduct-tabs
product-titleproduct-upsellproducts	bag-light
bag-medium	bag-solidbasket-light
basket-mediumbasket-solid
cart-lightcart-medium
cart-solidexchangepreview-thin
device-laptopcollapseexpand	navigatorplug	dashboard
typography
info-circle-ointegration
plus-circle-oratingreviewtoolsloadingsitemapclickclocklibrary-openwarningflowcursor-movearrow-circle-leftflashredobanbarcodecalendar
caret-leftcaret-rightcaret-upchain-brokencheck-circle-ocheckchevron-double-leftchevron-double-rightundofiltercircle-ocircleclock-ocogcogscommenting-ocopydatabasedot-circle-oenvelopeexternal-link-square
eyedropperfolderfontadjustlightboxheart-ohistory
image-boldinfo-circlelinklong-arrow-leftlong-arrow-right
caret-downpaint-brushpencilplus-circlezoom-in-boldsort-amount-descsign-outspinnersquarestar-ostartext-align-justifytext-align-centertagstext-align-lefttext-align-rightclose-circletrash-ofont-awesome
user-circle-ovideo-cameraheartwrenchhelphelp-o
zoom-out-bold
plus-square-ominus-square-ominus-circleminus-circle-o	code-boldcloud-uploadsearch-boldmap-pinmeetup	slideshow
t-letter-boldpreferencestable-of-contentstvuploadinstagram-commentsinstagram-nested-galleryinstagram-postinstagram-videoinstagram-galleryinstagram-likesfacebooktwitter	pinterestframe-expandframe-minimizearchivecolors-typographycustomfooterheaderlayout-settingslightbox-expand	error-404theme-stylesearch-resultssingle-post
site-identity
theme-builder
download-boldshare-arrowglobal-settingsuser-preferenceslock
export-kit
import-kitlottieproducts-archivesingle-productdisable-trash-osingle-pagewordpress-light
cogs-check
custom-css
global-colorsglobetypography-1
backgrounddevice-responsivedevice-widecode-highlightvideo-playlistdownload-kitkit-details	kit-parts
kit-uploadkit-pluginskit-upload-althotspot
paypal-buttonshapewordartcheckout	containerflipinfo
my-accountpurchase-summarypage-transitionspotify
stripe-buttonwoo-settingswoo-cartgrow	order-endnowraporder-startprogress-trackershrinkwrapalign-center-halign-center-valign-end-halign-end-v
align-start-h
align-start-valign-stretch-halign-stretch-vjustify-center-hjustify-center-v
justify-end-h
justify-end-vjustify-space-around-hjustify-space-around-vjustify-space-between-hjustify-space-between-vjustify-space-evenly-hjustify-space-evenly-vjustify-start-hjustify-start-v���, �UXEY  K�QK�SZX�4�(Y`f �UX�%a�cc#b!!�Y�C#D�C`B-�,� `f-�,#!#!-�, d�BC�C ``B�CB�%C�CTx �#�CCad�Px�C`B�!e!�CC�B �C#B�C`B#�PXeY�C`B-�,�+�CX#!#!�CC#�PXeY d ��P�&Z�(
CEcE�EX!�%YR[X!#!�X �PPX!�@Y �8PX!�8YY �
CEcEad�(PX!�
CEcE �0PX!�0Y ��PX f ��a �
PX` � PX!�
` �6PX!�6``YYY�%�Cc�RX�K�
PX!�CK�PX!�Ka�c�Cc�bYYdaY�+YY#�PXeYY d�C#BY-�, E �%ad �CPX�#B�#B!!Y�`-�,#!#!�+ d�bB �#B�EX�
CEc�
C�`Ec�*! �C � ��+�0%�&QX`PaRYX#Y!Y �@SX�+!�@Y#�PXeY-�,�	C+�C`B-�,�	#B# �#Ba�bf�c�`�*-�	,  E �Cc�b �PX�@`Yf�c`D�`-�
,�	CEB*!�C`B-�,�C#D�C`B-�,  E �+#�C�%` E�#a d � PX!��0PX� �@YY#�PXeY�%#aDD�`-�
,  E �+#�C�%` E�#a d�$PX��@Y#�PXeY�%#aDD�`-�, �#B�
EPX!#!Y*!-�,�E�daD-�,�`  �CJ�PX �#BY�CJ�RX �#BY-�, �bf�c �c�#a�C` �` �#B#-�,KTX�dDY$�
e#x-�,KQXKSX�dDY!Y$�e#x-�,�CUX�C�aB�+Y�C�%B�%B�%B�# �%PX�C`�%B�� �#a�*!#�a �#a�*!�C`�%B�%a�*!Y�CG�CG`�b �PX�@`Yf�c �Cc�b �PX�@`Yf�c`�#D�C�>�C`B-�,�ETX�#B E�#B�
#�`B `�BBB�` �#B�a�+��+"Y-�,�+-�,�+-�,�+-�,�+-�,�+-�,�+-�,�+-�,�+-�,�+-�,�	+-�+,# �bf�c�`KTX# .�]!!Y-�,,# �bf�c�`KTX# .�q!!Y-�-,# �bf�c�&`KTX# .�r!!Y-� ,�+�ETX�#B E�#B�
#�`B `�a�BB�`�+��+"Y-�!,� +-�",� +-�#,� +-�$,� +-�%,� +-�&,� +-�',� +-�(,� +-�),� +-�*,�	 +-�., <�`-�/, `�` C#�`C�%a�`�.*!-�0,�/+�/*-�1,  G  �Cc�b �PX�@`Yf�c`#a8# �UX G  �Cc�b �PX�@`Yf�c`#a8!Y-�2,�ETX�EB��1*�EX0Y"Y-�3,�+�ETX�EB��1*�EX0Y"Y-�4, 5�`-�5,�EB�Ec�b �PX�@`Yf�c�+�Cc�b �PX�@`Yf�c�+��D>#8�4*!-�6, < G �Cc�b �PX�@`Yf�c`�Ca8-�7,.<-�8, < G �Cc�b �PX�@`Yf�c`�Ca�Cc8-�9,�% . G�#B�%I��G#G#a Xb!Y�#B�8*-�:,��#B�%�%G#G#a�B�C+e�.#  <�8-�;,��#B�%�% .G#G#a �#B�B�C+ �`PX �@QX�  �&YBB# �
C �#G#G#a#F`�C�b �PX�@`Yf�c` �+ ��a �C`d#�CadPX�Ca�C`Y�%�b �PX�@`Yf�ca#  �&#Fa8#�
CF�%�
CG#G#a` �C�b �PX�@`Yf�c`# �+#�C`�+�%a�%�b �PX�@`Yf�c�&a �%`d#�%`dPX!#!Y#  �&#Fa8Y-�<,��#B   �& .G#G#a#<8-�=,��#B �
#B   F#G�+#a8-�>,��#B�%�%G#G#a�TX. <#!�%�%G#G#a �%�%G#G#a�%�%I�%a�cc# Xb!Yc�b �PX�@`Yf�c`#.#  <�8#!Y-�?,��#B �
C .G#G#a `� `f�b �PX�@`Yf�c#  <�8-�@,# .F�%F�CXPRYX <Y.�0+-�A,# .F�%F�CXRPYX <Y.�0+-�B,# .F�%F�CXPRYX <Y# .F�%F�CXRPYX <Y.�0+-�C,�:+# .F�%F�CXPRYX <Y.�0+-�D,�;+�  <�#B�8# .F�%F�CXPRYX <Y.�0+�C.�0+-�E,��%�&   F#Ga�#B.G#G#a�C+# < .#8�0+-�F,�
%B��%�% .G#G#a �#B�B�C+ �`PX �@QX�  �&YBB# G�C�b �PX�@`Yf�c` �+ ��a �C`d#�CadPX�Ca�C`Y�%�b �PX�@`Yf�ca�%Fa8# <#8!  F#G�+#a8!Y�0+-�G,�:+.�0+-�H,�;+!#  <�#B#8�0+�C.�0+-�I,� G�#B�.�6*-�J,� G�#B�.�6*-�K,��7*-�L,�9*-�M,�E# . F�#a8�0+-�N,�
#B�M+-�O,�F+-�P,�F+-�Q,�F+-�R,�F+-�S,�G+-�T,�G+-�U,�G+-�V,�G+-�W,�C+-�X,�C+-�Y,�C+-�Z,�C+-�[,�C+-�\,�C+-�],�C+-�^,�C+-�_,�E+-�`,�E+-�a,�E+-�b,�E+-�c,�H+-�d,�H+-�e,�H+-�f,�H+-�g,�D+-�h,�D+-�i,�D+-�j,�D+-�k,�D+-�l,�D+-�m,�D+-�n,�D+-�o,�<+.�0+-�p,�<+�@+-�q,�<+�A+-�r,��<+�B+-�s,�<+�@+-�t,�<+�A+-�u,��<+�B+-�v,�=+.�0+-�w,�=+�@+-�x,�=+�A+-�y,�=+�B+-�z,�=+�@+-�{,�=+�A+-�|,�=+�B+-�},�>+.�0+-�~,�>+�@+-�,�>+�A+-��,�>+�B+-��,�>+�@+-��,�>+�A+-��,�>+�B+-��,�?+.�0+-��,�?+�@+-��,�?+�A+-��,�?+�B+-��,�?+�@+-��,�?+�A+-��,�?+�B+-��,�EPX��EX#!!YYB+�e�$Px�EX0Y-K��RX��Y��cp�B�*�B�
*�B�
*�B�*�B�*�D�$�QX�@�X�dD�(�QX��X�DY�'�QX��@�cTX�DYYYYY�*������D�dDDassets/lib/eicons/fonts/eicons.woff2000064400000262520151327220410013456 0ustar00wOF2eP,d�T`�	�
�����P6$�L �5��[E�r�p"�&��L�#,����NG"t�*vT�@J�1_Ǝ�|������W$1V����iy�U���9ٗ�"�Fm9Jo!L&���w��PN�uе�4*�ge��׬������^w�G�n�4III����NY��!.�MDy�j�~����!A7A<���x�1Q"����	a/����a�
1eb��eK����&�ʯ��3�+�IR~�i�-��?I�T�t�6K_Z�ϣ\v�TH���L%� ��_f�;���2���Qg,CT�����y���</�D�2�S�M|V����E��IN_���m���4��c��:��*�����#��Ѯ���_Uv.>����\@�j��/EE��7EF��_ݒR!M
��:#�v@��Y�b��!�EzF��W�`@#��Ж,�����?�=���
A�2vD]�M��Sgx���������%����� ���X�E2=v��vǍ�Ӽa�s˝1oY�e���T4�T(Z��>����Ԡ���߫��c���М��vSM��c��b�08��������tw?x�	Б���U�$8cF��/����8h����DA�F /H�6Y�,+B�JR,tU�@�����kYt�� �
��:u��)�ٿI�z�&�gB�f��W@2����^=�}U�~��E�U��o3�"dI6�_.K��	0��f&e^��ҍ��v@IZPۄ(����%���ް���"�$O��[D��!�D�b����hC��EJ$��{���n��zPdGj�:f������* �ԥ��0���_6Y��~Q�97�fmӓæ��~�����]�#�	<����\Y�Dh�q���p��P�*��e�4m�[߼I��d����;,_L�b�zY^�\��O���W�R�$5N��90����浳�6A!`D�&�s_���������iɺc�r�H�&������~�_�ז�f��8��G��8��eT<ij�Ԓ�-
��Em*o����n��c�T�bavLaƎ�9���Ϲ�Mro��@H�P�h�Aj!!H���R�U�ڀ��U��V'i}[[��Ιدr_M�5U
�{��`f��8��0H�K׵�*p�]Nx�`�ߩ}Wv�p�8�9��p3���!$�'�7'qgK;����I�d)P0+��H�
�{��g�r���k��$!��Ā��?���%\�Ր�$�*�ww��
p�� ��4��D6f��+�3b�V��`��U��9�J�z�����[~﫛�(uKr蜆!ͺG��s�{�9���H��4	H2J6x!�@�r)� %S��\�9~��C��A�*���H�J�\�m�ۖ_px�_H�K�����:����γ���`��p�Þ�`��?�a�:O�=�w�@�"�ߴ���(���P6�4��+����ξ_ZA�T��~X
@�d�O�O���ڊ���s�����~�w [�[�t�1k��Hf�f����c�?���m�;э  wm�9�Y��&�r��]�&PPT�Lig
$�K��k�/��Ŋ�h���P#��d����E�aG']�=3 d,��-��0~m}T�	&"���3z> @�N�����g�Uw�rKS�Ƿ�C��'OM��T�c�eO���o�.�����:~`�/�����N�6��_���?�/��k@�
iD_�!�OH���dG��D(�Mw�7�����F�(Ɋ���t#(c�9\_ �q	!��J�Z�����
�FG'g��ʓ+��H���	D�Pit���py|�P$�Her�R��huz��diemckg���̹�zA`G QJh�'Id
�Fg0Yl��(����Eb�TCSK[GWO�����������k����$2�J�3�,6���@�H,���
�J������l�������G�P&��LxPh�'Id
�FGϰZ�DI�7�F�٢�Eb\BHer�R��hu�vz������ŃG/���
�@ap���`qx�D�T��d�9\_ �%R�\�T�5Z��`4YZY����;8:s�¥w��(�@���,O ��*��`��.�/PVQUS����������~�.6",\u�hW�DAECG�@�D�B�F�A�E�C�GD@DDDBDFDADEDCDG�@�D�B�F�A�E�C�G$@$D$B$F$A$E$C$G�@�D�B�F�A�E�C�Gd@dDdBdFdAdEdCdG�@�D�B�F�A�E�C�G@DBFAECG�@�D�B�F�A�E�C�GT@TDTBTFTATETCTG�@�D�B�F�A�E�C�G4@4D4B4F4A4E4C4G�@�D�B�F�A�E�C�Gt@tDtBtFtAtEtCtG�@�D�B�F�A�E�C�G@DBFAECG�@�D�B�F�A�E�C�GL@LDLBLFLALELCLG�@�D�B�F�A�E�C�G,@,D,B,F,A,E,C,G�@�D�B�F�A�E�C�Gl@lDlBlFlAlElClG�@�D�B�F�A�E�C�G@DBFAECG�@�D�B�F�A�E�C�G\@\D\B\F\A\E\C\G�@�D�B�F�A�E�C�G<@<D<B<F<A<E<C<G�@�x�x�x�x�x�x�x�������������������������������������A�!h�!�Ď`	��	�	��	�P	�Љ=a&q ��E؄C��G�D@�DD�ĉ8�J܈;�)�9� �ċx�K��?	 �DA������h��ѓJ�H8� �$�D�K�HL�L,$�ē�H�H2I!�$����I�H6�!V�K�H>�C
H!�K�"RLJH))#�d>� ���, �"RMj�b��,%���,#�d9YAV��HV��d
YK֑���4������d�L��6�N:�V��l';H'�";�.��t��K������}d?9@�C�0U��K���{�%p��B�u����/�'0��n���?t�J��+�A8�U�Й��94�f��j���EbJ�s&Ҭ4�z��h,}~{�Q�Bg�+�i����{��hĦ+�N���\��5��!}P͑�*Z�
��tE-�wUՊ��k=g=�!�+�M[Ua�2t����6��6߄"��җ�WdQ,J���hH�3�!Gw'���H��zԉ�Ձf�8\��s]���d��^��(a�{!�H��·���Fr����o;�b��h�DG1�u����f]S�<Uf�
T5���(�b�3QR��W��b�=X����X-}��m�r��s��i���H�o�ƍeC`��s��B:8��K�Wz��_����9�쁰6?u�An~+
xb��7�g)�5mQ6�)���(�]����g
���#@ej]��T�}�k���B��U|<��P�2�;�ffe�Ś$ ��∊P���H�뒇���Z�hq�[�6���K�<�t���:���n=i���<��L
�KuRd&�9�Y�j։Xw&��?DE�ŝ�;�8�D�bˤ ��P�$
4�X��x������.j�H"Z}l���~N���C�nZ��8y�c��3X���z�<=�$9
D�ԡ:� j�j��@mb��P�(�#v��i��[�֏���B���+�[���s�/�?b}$����f�g�>�Ɖ�������&��&����B��Ñ[+Z�0�Rɾ,��J��p5�Ҽ�v��T�P�<g?�w����-�i<�Fl�ai
��vT,�+u3qb4��{
	L����tEyq�k69�2��Uu�����=
8fh��@�j�j3u4��fo!j��B�V�q%�~�lʓ=W=.���=�̟�̱
P��	qY�h��W4L/�C�h1l�Vv"T�2a������'ه��?}ZVs*>͊�eR��r�LYު�t|@��ӵ��5��J	����y�ʴȍ�U���(3Gu4
p��h��a�
���c	����9��3�|ʮZJ��;^��_�[�5
P��r��'��W�ۂY+�a
��\Zpj�E�{={�B{/�^��y��4�9\��;;��
JE��H���ҢqQ��b�#�C�?�Q�1K�z��0�x�w�C��u��t��щ0Eh�ӣ�ū
+��wP����'�����M�`����/�ҡҡ#:��v��t@��#�%j��@~�[tn�Yʻ��6g��/�
���ַ]�h5SAM8KeUT>ӚiF�)fnB��XIR���	��@��	�3_��5ol� dZ�=HXd�X	 6�A�	�9L�p.�n��G�C�@��	�LXK�l!C��=H>� y�؃n>���O�&Bc�M��R��m
�@��F�"�Aa��lc�!,i`k�ֈm�k:�Y�BC�
n��P��X#��:�
Q�l��TC�}�2�eA"����O�5��~�'+;��5��d��c��څ��h�?K?n"�g^�ߋ�{/8W`�/��y�+�D0���b��.���:	N�bu�O��*�A�dA���|U�c
1���eH�(�U f��CVv��͸�pۜaf��dI�D�~R/G2B���dU�����m?gHo�"��E#31�l
����S����HX�⠆.JGށ�$B�L� J��C���e�>�J�1�p$�hu	�'z@��Aޞ�mIYy�_�Z����(�a2��R�r�v�Ku�D���]S&�i�nv)����B+�=$
c+��G!�B��F�n	��c�#NC}���5�:ag��{�Ǻ��F�B�J�Q�{P� �NH�?��{�^���7�,��K����89i!�Z�Gb`�^9Í���Y��]�SA{��3���Gg
q���4u#̳o/�)g���im�~#�4맙��{���x��wQ*X�`��u��}Dq�
�.�gZi�{=R�h�@\��u�uO�O,��[}Hu�ADn{s(6)��+S9x�Z�`:�j0`㱽�W���E��oHA?h��c��Rl����Y%�ҙ)�n�D��>V��ei�R����ﺣ��f�<N�����,��c4�{��9�b:uSs%��hݑ*=��~�����[Pbpǜ�Z�o����-��_���m;���=�еP��(�!9�L�VNe��W�+��7��B����m�o_^>
�+C��Eŝ�!D!���Q���$iR�q����Ƨ�p)��շ]��&�S����u�;%�@t�7��5v������sU@��o�geٱ�eu�v�D�\q�ݛ���9߹�G}B:]젵�4+�dw��}׈�F�b��2[j��9E2I2���w��Q��&l�O	ؒ�0<�Ҧ�7�I�Z�Q\]W�Ls�n����M{X%Eӷv�D���]�Lp�Z4fg�f���&�`~,�Q�o��M�SNҊ3�Ax�_]J+s6{�z�\"M��|>]tۭ ���
{��9-���ݓ��|���}P�.����O�b���k)A���`�u�Gl���gB>7n�4'��6�)��ZV�Q��y�z�o����ޘ���Xp�_}p3~~���9�0�G?";Vw+�|�+֒~���<"��{�v�'��b�z�Bl���&v��b��p��}!��nKF(/��}z�"���y��Jc�r�mz��{���9����(�;�v�3=)_�X(��4����o~�J)�/+$I�A��J��:�8�
A�еHIrAD�����?1��d�;ea撻�<U�6�<��l�$��y����m�߾�rts:[�u��Rp{P�6��"ӳ�\��ᙨDF��Rb��pU�(��4z��j+�&
�(i��ң��
pj�������P��F~�z��
�B!��n���a�K���iZ��U�Ȫ����`e�y�K��D�l��u�A�@��.P[�G+�׎����o���Ny�n�\�g��O�~[+AB����C���<�G$��3��Dz.�vq�7�lW��C��9��LA�!^�V���YL1�_�Ž�jcN|#!w����V��钺�K	�.D1D>��1�^]�Ĉ`HC�b�`
p�ʰ��w&��CNqڞX�i�}���J�/���P(+�꿍4KH�
\���8�b[C�Z�8�r ���`��%�c\#b���;�6B�a4'7��Zj�Sp��r���F1M
��>SzR��BJ�c������[�P2햌G��@��Ud�>�����ϝ��%-���@�^OE}��i*���DP�2�Q�I�r�V<X�FZXj9���"�Z�˗�)�)>��Խ��t�"�����d�̊|[
�]��p&*JEIrd�v(xF/t���)a[��Ǡ�Q}���{��Gz^�l�ֈw��+�x<�s6J�c\��ݒ6���RMJ�z�<9&#M�X:��j
%�`ϹXQuP��;Ps(�@�%z8���vI2�{����:s���|ƕ����hRd�/����f���qVr�q�����(���]Kc*xL��I�Ӷ�͐H�I�B=� �0����l���F^
:����Ua��I�lٷ�I|)�L��Q�?�MH�����Ȣv��7\�/��^�t^�j�o��wB�E
Z2��a�"���cQdp�rba)v1MFǣ�C�&���E�X��SѠcH�Z	[�+��e[��rMi�!s��y=�[���R$��HC�x�W��J�$d�`kE�D�S�����U㽜�_��չ��E�D��[�#2��N��6�%�(��,e���d���с�~����$]��
��8�q@�Oy�X����G�D�:�oH����X"�x�W1�E��Ui�,+�t�m��MGv��l����F��_1%�Մ�qg�
�t�H`��2�p(��cͪ�A~�S�V�즧D�+��P��#>d�RD�]�KR���d��=b}���rz6�Mܚ�Ȉ��d:%�g͝]w�u�DD�<!{�L���KW;�LIB�P����O�U8�¤�d�5�Z3�.Z
�4[uڐ�CI���ޣF�ͅ� ~��]�~}qu�1����՝�e�U<O��a~�IST�u�k|���&;FiSB3n��:�	�G���k���j��r#�;��|u�i��[��Z׻8j>���oU�������K��ox�#e�F[��ј��Xb@N�7��2(F�����-V��b��*����;A�����O/��JKYZ��n7���k��{j^ʼneq��6���c�Nx��2H:��%�Q�N�âP����	���#�>����I�W"�.?������P�v�v�\>�+D�t�S6�2��W]�#_Ig��%2om��A�ărZQQ;G��n+�	?�7�˪�'����I����D��"�8ͳS.�@QG�B���8rf*�F����W ;�����%ӆ!Z
�E���N��d����.j�F��s��N�>Ϡ'���[�kr�|�i�'�i���G�����#˸�\P'X�'�O]��	�q�>Q��ߍO�Y&��ߍ#�UtW׀5��Op�A����欄�mq]&~/����͋QI�5�P��8࿍�-��e;���e_�pD�Φ�v��q	�y�8�a��.%v�k����`�[>�N=�Hw��֜CۛLOs��������v�[��uo��W��#��O���A#�%��C��e��մ�'�#���Z�L�f>�+/��(i�^x~�+
��F8=>��-r��L�9z�H�伭!���$�)ME��� ���oe2l��cc5�U�N�)1�r�#(����meFr:��*�˥ͽ��f1���t"]5@H
+J��'U�'P������h�a8�"�0XKSZl�ô�Md�xB�E�OD����W���3�i��C�]�oz��3E��ÿ�ʢ���r��#�[�L�M$�U�LI#w.�?��?�3��|���+�#�Uv�q)�2�{�@k��䄦9����l���5�+o
2�$�@��'T�G7�F�Q�t�E]�d!����i2s*���Z�k��;W��&H��]���@c�%}�~ET��� 2��Y���USP�ڼ]�dMkF�,Һ�~_���VߩȮie�L�����49GS�	����K=�=X�6�X�3��w��^��f�X�;��TD�>|5.�Xw�^]Ѿ��K�/w���q�:�'t�,��N~n��V�pJ�e�)S�MEP��4��*�vg�Z�X.(æE|�B�(r��q��y|4pM��/��+���+r�V�-����h���p�k��)oZ3��
�E��ݗf��{9����mT��*��&��6�]S5��~5�F}|t����1���]���ɡ��	��gmSţ��{Tɾe�"3�����Nv��u.,lA�8E;�]!����٦�z��߹.�?%�;�ŭ�IC��ں�8K�}��ܸ�1#1�
O0�(
]���,h��ՠ̹�.M#Z���ab�H6�ڐ��P�Xd��r�5z�8�ԥ�@�`�(u�=ןO��/c銄�m�,���F����κ�UBp�����w��+��q��h.M6���:6!ٽP'-�1�3�(l4
DNkY_�%��k���HP
�t�3kdy�䌦AiN�QG���9����v2����I���a'�6YB?�D�Ȁ
�ոh<�9��*�%���D'J��r�ǿS����w�;����T�J�כk<����r�/M�>s�H��a�>PC��|�"�8k�߳�#���;@aq�y-���TK涴.qw�d�2�w/����|a!Vr�/�[P��諪��L	��;�\���Pװ���n)Q�c��=�t�/���o��z5|	����G����"G��~�ln�f���
‰	�T�X#��p��%yЋ�Qb@g��2>7��I��&J�щo��d�{8+F��F`�kaȉfHo`�Z/���;�~��Wʴ�u���.��O~��̧;���WN��S����\L�7��G��Tpu�qІQR;���F�)5�ɯ��c�Nnƌ׎b�_��L`����u���\ŴLM�7:2��(���vgJ %�+�3�][w��߳:�S���.�2��1��K�wB����ZܞS�4a$�mq0ڊ,u4Di�Lv�L^ڛ�@&sqH��|��nF�mǏQ�J��Z���h����gf��勨�8PwBu���o�;�J��_��4�y2.m�I��k�ݕ��F�b�ԗ��}U�^xrw�LF:;<34�ctD�J�鳂�+��7�8:79�"x�6��x�]ћ
��jzQU��!n�ci��]�m9O�%�%oZH�T��o�Dj����̥�թ�#��4���V~M݃����J7�}[m`�q
�$�0w~�u9u0�b�i�a��_vm��GIT:�{�	�lE�:Q��~�����/��_r�P��;=?��(�1�/)��A�K1߬Z����:������k�ڟ饾M�tH�'��ԇ����J�Via��q;�C8b�r��ڡ�ն4]��\������N>���]�M��)�F�6x}��=���T*Q$����ܜ8���\�l�[����m�@H�`�]y8X��`'P�6r.ЇD�ug�B_�+�iMR�S��h��in�����K;�|򞳧��;~�l��a����u�h���p�nFK c6
ʍ�jg�[6\���84�`2���iH�S}�O��i��ˣ�
⬵%�?=F���L}+*��4]A�k�������q��#� �\�q�cA4�^�-���w�kd��<b7�F=@�����s��o�wo� _���<��Fo�(=�( �{k���!���.h��/�:�fl�k��׈��ӂ?��.�Vhā͢���+4��t��-
�+l��v��b��?jNcz�M)����
U?�5��"���w����_��%ҎU~鮁9N�4h��X#/����b3!m�P\��T�Tv*e�Pr��������c�qs���f��P����>��ء��5N?�DV��y�E�<��X{��5_m!3 ��Bo�c����Pe0H��m*Ҥ60���[�����,B����¢=-{B�BSt���(>��Ĭ�U��d��G�@<$�%
�r<���Z<Q1��F��', ]W���M���Ug#%_�pj��JST���1kk4�6?̱qpo'fV��;��ܧ��!��m���޵�划�[=�5�!����{_�\.H�+3�����X���Fi=o�̧���S�[��
�:��A0}VqX,�C;pn��sn������z�;/n��}<��y��H��ut 6��v�}`�P�rx�^�I��VH�PR��B)��Y�_u��uY�w�[i�E�{Z
�|��Ԉ1�T�4�^
��~G�45,NpanŃz�ލ�iѷ��)9��
��
�A��R���;�+�Wz-�����mJ;��R|���Q��^��0՜�@���M&�`V1Y֐b���j�k'&B��D�̢j�����هV>`<��m���loV�Q�S"�.{�X�c�b�p볖��[�j���*A��/����jN�wR�����Z�_����%��R���ʡ�Ќ�cx�`���
��J�/Dk�qS���0�O�`M4����*y���_x��"�cL�#o���AG�Iz_��I��l�2`��a���vp�:y��vd��6�,@�|���6v��\�ScL;~ ���>�8���u�������)��]0Ql�|u<��҃��/��x����&�|�4��By��`ΏY�~T <�=4i�#K��t��9�D_8�� zoFG_��P�������Ӊ��4���jR�������o�+3
)�ͅ=tѱ��'Zm�=�aBU��*�˔����I@�U�#PtA0°�%����%���K�RL�̀ ���]����VӲ�㐅��G��y+��ƭ�[�Iir��]�h��#�v�`�����,Q�mZ�Ri��4�%򍢻b[�O޻L������^�]/�����Q4q
[������9�4+��r�Q�ԐHE-�H��jH]�)�Ӓ�=ソ�ZT�l�D��!O�r��O�FMj_,Qa��2*�ը+[���Ҍ�D
��e\c�kYi���a��4��v�3�sc��X���j��)�fƳn�&[�t��( �xY�yGRC+�9}��l�v��C#|��+��+�o����`�T��t���c�Z���݁�-�և�6�8.�,@΅Js���d̡̡D$%L�������%I�9���u
�c��8<��k�ml�Ж�GG%3��v5-I_lʶ
��'�R�;~c�n��,x���Z�}�\�o~x��#�_������bx�蝪��M!��/Go��p�2�	�=4Z�ԣ�o�#M���,���Q&�]�6�wVB�Rli���y{7����q�d�NJ�v�M���s���&`��D��vH'�댮�W��!�v�n�=�\#�别$�YW�=C�ݬ��4�����;]"���y��-Á-��)��X���j��Cg&��f;	~9��S�y:�e9��?�U���ݝ��NQ~��2%+�م��1?�����s��I)�u��^[��[�ẏ�'�nt��Ң`qXp�ށ!���
�'d5��^��Y�m�A*/�JI����/��7˔��&��x���٫_��jS{�x�	��wo�!�y����P�9Yb����'��يQ��C�;ۄ�G�5-�+��u��RÈ�@�9$<	������g8����m���{8V%�|��G��N���/�%�/��􀄆W��"�����d������oHoT%��'v��C%6��	��f�w8R+;�����{�O�i��͟j��u
�`�2~K"��ը�-���P%��YӲ�[D��wJ�k����sh��w�ׯN�'D
�t��͜SbU�z�|({̜���.;|R�/ϗ�(I����
:�bń�<`�t�ӷʘe���L2T����TK���Q2~8����JNJd��e�������{2<�,F�o)_x/��i�cP�9��?s��=�/-�/��k��b&�~O�pAT�7N��Y��Hk�1K|i�<)�Êl�3>���o������j�#�p�"���c� ��RgU�ݕ���Z9v!���.�P����N��L�Q��Z��>W��zg�jډȫ��akiP��d�Q�:ȏ�U�^�
�M�jv��Pu�U��l���ݖv:���r�ZQ���m`,?1��vDLG��N��ߋ��-v�'�+�U�1-Kf�	/��P���1*�~%����8U��`�F&t�������m!j*٘�4�t8�V�[Nſi�*�cˋ<�ic�m���3���ݾ�@)Jj݄�}U8IR�]Lem�gi�d
��M��o�ѳ���l��p�s9n杷��g�E��a��5q���<�51;��ƾ=�{??������(�3�[4��`�A��~ǼVqM����u0�ɋ �q_,
M�(�җB.��Sq
>ɺ�����ѹ�YO3��7������H�9t�dhp����/��W�)�߀�
�����3�G��(-R��˓1����/�كN�fL�҄:[7v��e@p5��,iQ��j�]�T0n�j.��J)}�B���'��*������ggC
*Tc��2Z[F�L`y4�o����T
nj
���R���wQ��#t �6S��i�TMV��0�-2/S�,���k�u����¬M521��:1ID*�$y�P�W���V<b�h�Czg}]m
`8&3�2���h\7f_�W��ˁ������7 ��
��?�V̛�rH5f��A8^_art���`�˜�HE����Ўh�����V�gLQF󪑖�JU���p(�B�d#��s�$#��Z�c�E2�[fz~L!K*����Q�x�2z��f�
<��f��M4P�"��Ƙ���H�*8k�3=Ǔ�ut���3�[MT���*}kwmaF��j�l{�#��,K��v�
tF�0���&1��K�������:�����<P�t�R�6��C��T"p��!o+��5`�`��<`N�/�$�>����	g*��п��v��5�LF)T�/�Bl;	1���֤EV�OS���z�~K�Ts�g���l&FV�E&�AN�>�]S:յS���q�ɞ<��!t�l��С��-n�I�
���YfBXg!u���kf�1S�0�L�X�#����aM��4���	���_d��V����8�@�r�#e�����n�Gv	����h�~{��dXde��5`Cb(�r���������^|o�Cώ�?��0��C!����yr�{����>�~��DՎ�������	E_b�~`��xu��!��w�}�p�AkRA%�������-v��t<��F)����W���y���b4��Mr��ٷ���@Ra�c]��:�̷^��gT���r܄�saY��ܕ�kf��K��"���.�㹸&�NoӖ9X��#��!s(;�-�����O��5�U��B>&Lܓ���θ���_	��֋[lW�n�d�5-1�Dv8���ʩ��K��9I�c>�����_����ּ�tJ��Jt�8�[;�؅��j��5�CI�
=!l��&ʬ#Y3�=���M��O����̈�rƙ�2Ӛ!��bRi�_���n�*n.u��T����`���������o3y!E��p��+�ͨ{�/��ĕ&�NsJ�ϙU��b�X�'���M�x����w���x#&DVF�L�TX�!��X��b+��ȳ5̂��0�ia�	�g,�Əh�ۏjM�Tx�ò/g�4�r����_+�Wx݆-�ڰ�@!� V���Y�����]�}������T|��#Q�&W���R�N�[44�5�-٘�
������>ȇ��=�ML��<:��!����A$�֊���9�*�r��2��B��LjY���c�%2iH�QVXoї�7��C!t���h�m"$�w.)ç�Ë�ޚHb�<�^�a��q��246>A
���]����nA�:E��*�7��mBp�=�f(	A����⃛i�jTxqh�#���pMyk^�MmJ���ڞ�ZS5��]¡Ccu)����ίr�(���N��QR
�_FZ5�١�q==�x1��
�EVc�<[x;�P�x�'5|�|L�S��
�`dHl�{Qf���q��Z"L�h���p4q�8nsd|%� +�f�qri��(ڱh�,�߮)�Aj�oi�~�'����de�20�#�̺�#>xO�F�����[��\�8��5:,3�&���dï͚�@�ȮR� #�Q��
)N?�9����R-�I����)hjjS@��6��&��3���]uL��c*���{n\�ǁ3v��u�=�P��6p�P���E��&%��Rx��B�󇍫�2�S�l;i��2
�K�|N>˥e�c%���s��s�������2��o'��Z�:�����G��co�Qfj�R-��'�:2�W��P��A�=��N�$�K���7ćs�y�D�:T(�cl���1իӉC��W���_O(��Z|�����PQ�z�/�8���M��С��[�J�&%��=X��A�c�Y�Ji1���:�f^�&�)7<^n�!EkɐV5�n���-A���9ʓ�\o���E����-��M2>RJ%ئ3���Wd�fnnxx��T��'G�?��qI<��/t�c��
tb�.t_�T�O�!���WW�vPj�J�{Js[��80剜�T�cv�H
{@	Y��J׃bּ��ot�dCr�{O.0}$m�kDL{�uu�CW�Á�\�j�&�mH��<O�W�&6qj� X��%��̿/]���a�B����>��M�܅}��]� �!�9[r\���`�xҵ��ٴ�MKF� �_�gAo6Iu8;4���j��Yn.p�n/�#�]�WW�\i����˃\��D��e	�p���vdž.�.�Kݻ�9K�[}tӤ}F�ϝ
ڠ媑:�#�L7gH0�Kˡ�5��� J�N��U����2^B<��*9tG1�\CV��Q��vg�dQt&��QM��`�+N����ql����a��…�r���Tx��&^�ڐ,EA
�Tz����E�/�fڍ{6�'����la>�Zu�������<��7}�l=�[��(��Σ/���5� �G>�y�����w��/�z}��>{J;�V �O�z��^�J��X�Z�����eʭ�Z)���0.��u���5��R5������ڲ8���r"R.����D�;�%.+_Wo/uK�ҹcf����߆Wf��Ez2TT����������>}����m�_�0H����6ˀ"�v�:�_�	7�,pʴ�����d����l�y��]�u=u�i
Œ�b��K^R
Cv=.M�7T�!�{jJ:ԇ�x�P�9�k��39���V��twi����5��#�G!�H��eG8�o`ٷ���y��(��Vf���d�]qYx˴FM�k"[����̵�7�1!��OA�YIO]��T�4�L"ٖ�0��Z$͌i�2���k�hB�`�����Y_�U��6�C��롷�K�/&-�/	Ă��c��2�e���'#{��񉠶
D��kF?Il*~Pn}(2|ԛ>ox�4_�r���vτ™="�=MaȢt�f�ä����"�Ȝ'�'m�g�l`Z`(,�qtu��-�t�7%"�|��_:؍���ț�[�;RܣJ������d�ׇ��6�s1�5d  ��.��3v��in�7��̭+
�@�Z�U ���
���>"X���y��蛍w_5ԥ�`jDf��Hِ�[U���x�-�1T�eGEvSMK��/���ۜ�V�HۂztX�Mjk^x"v�#_��<�T����\��o��S��U�\7�֏kƾ,�j�J�N��๡e�q�:Qހ�c��wۢ.��md>9s��_��l{w�O�����}�AJ]y�V�T��m��v��h�p	 2�篼=RxC��?d6��^�8�"ؖ�AN���(���_�7�8$
���p�tˈ����[
R�G�eں��oȥz���be{{2;�:��J�q�q[#ʍMa�'���$TL�(M�xs��i�\�&�Cc^�L����6U�	���χ��n�I���yMgw]��%"#ݱ?��^-`�o�V#fL�Ӷ�����ÖKOt���RV��6>�h{��v�D���-��f��x�A� �z��o{��}�=�H��ۦ煣'ÿ����W��ϽZ�|�7h9Y�6�o����.-*�sba�XY����+S�G#�z�݀i�� ��w�g�E8��%���nM�)�\��$h3%�̢"�]b�0���q;D�T /m�4��=��Wsh׳���q>���5L�yul�t�B�Ы}ʚٴ��϶�d�^�SV�LߛeH�=pLz���j|T�G��Q�&���Xa����l�73�)LL��ņ�#��_f+����9n⟏n�׭�]|��7���ջ'��	H\��Ɛ�=Ë*��O�uWS��Yb9����M�^�ײZ�����H
�d�O8Ä�♵V���S�t��ߔ�CF�a	zb�R�FVf�M]�lU^�a�sbB�N%�3��<�UU��:C������'sg+/|�?�2�^�o<�C��ӥy�C0,ܫ��\��v�D�z�d@���7���3���R��G%�v�J��m~��T@��F����ڞ<���J�����mx����t+^�[�����|�D���Dq������?��p��/�\�*��uY�^�c�j�ߎ
#p�^D��'��/ɨ��X�@,�� *��0��#�bJFp��U	^ǚ
{�~??L7�2��|5�2}�2k�ş�(�P��h�J��)�W	������:�Z�'��E@�f.	w�i��+�u�lR�(e������K	
/=�X�|)����x)^�R ��
��YlD�!"�"/`��]�
��&LP��F(��T$���i�Ǎ����p�+yҳY��8'�F:�Aƶ����N:�.T���h�x���x5���� @�cŅ)����ȍ�����[�E����כ�i�[�4��,�r�
����m��>���i�w�M�$�2�&�
�W������0N9�Y��bz`/�ڗ��RE�+��΋T�5 �3�Q��:YFc���b�����{�q�\*���������5|h�Ia8.�'���G/4_�o��L�oY9j4<�E0o�
�vt�cFAVn�ٔs���._����r[g ��r�Q��Zx�QGk�+�`�|���
�a#�@�2,�_�(0]\EK�ᯏO�wbO�k
D�.�Ulif7������ܕAٲ�F���
'�PF��5
���v��6��� j���4&
D�G#'m��
z����S�x��
��@a.�C�DZG2�
�2��%g#��{�V��
��I>i�����ł�=�A��{�k�yv(IC'T)�.�x�J�^��mUؐ
�4���Ӧ|
[:�s7�:�4��D}����~p)&�8�ZG�%��v�OUk�%�9�u����w�n	vx�v��J�6�c�Y�Q\trM�xf�.ۍ��'��X᰻��?�_���rnxK4��/��YV�M�~4{�/"��7��|P���H�k
��It��G2?Yx\�i&�42�
����t��7s�Mx���CIv�O%;��8���ȇ|n�ӵ���{�1O�`�Z��ȭ��r�j
;�w߿]��u�2��|Tp�b"�L�3 <�@��&
��B�D�����dD���ds��J���5�<<ᖱB�����t�X�.��gk�z��Z�&N�ׇ�S�X�`����9���jh�_oB�@·j�D]��a�<�AQ�[�"dNrKҶ�����m�zM�+7L}7U1�.�^j�{�w1Cw������/�(wcBy��	�9��\�ݙ������g��扦ܕ�x2ബc�B���&^P�z2�r�g��7�3d\?�J�∢@z�]B�.��>P�Y ���O�Mv��xťϸV�Y�[z[��>
s
���FWF���X�e}ր���ݺ��Ti[E�M~����"a����T���T%�����6qq���֪7$�~H+�~�D�����g�F�8�&����k����"�{q�q�?�$l�a���}��'����F�%�5C�o����O ��b��f�*�9�fJ�6���&��}�guD�J﹂��ﶛg8B ���v,�'������h�Q�{�x��m0N��"����h�йv��P��j�T�~s�0gY�h�����d�������N{L�	�\��kv��rH&�{����:��&3Ci��7v�������6]*z�w[�8��B~|!8=VZOQ����q����^r&`�T=h�H�1��C�j�3�	��{���\^��pY��o��U\b�rLK����x_w��}Rn�$eo�T�a�Ɇ�Sv���P�����Ӫ�(��;7o8�y_թ�/�{�T\�7Sg�ign����"=���-���8&�v��냻�0P#�?�Q��T��J�������k	�	��R��޾`;',�Y��$�c�s��F�b��c=����ԑ����fذ�`>�S�G�XlR�[-gE��t<���r!"<�{h�I�X �5�.r�[^X��V�d��(i��M%6.L�pM����m�8
z��d�,�z?T�:W`a>U��XA�FQ���0Ifmr�z�u��J��}��B$���5ia�|�����ԀG`tڝ�r���o����}��@q�=x�7�AtqqK;}��tߨ�gPT�a�w�ω����L��gp��|�A ϟ��+�w�r���^���:��nq[������2�.7S��k-�.�45T��{�L}�I�8�\�#1CTQ�F���jEp��~��4y$O����6_b����+|`L�;ʊ�0p�Zp�gMA�Ti�R�W6A7��<��Y�x���(����ۑ�6���o�>���Iǎz-Q����ox@��1IҊo-;���^��J	dn?�F�`VF�SY��#��ޚ6�vW�qT�Q?糜�+B�Ajj�M#x�-t�pSDu�֘(�mL>ah��[ۛ_��)���;��5�O���7{\]Q>o����7b߿ͥ,����\\�D��X̸��;΍����t/���
%͌���\�f�����f�P�dg��W�5�.��ߞ��DU,ڪB�]�Y�v�^��mdo�l��9�G��Ҝ��)/(+��"��?��4��1�S�(J���6��3:��>.�F^E�a�\��C��~P�fz���s�^��jz�����<f8{M	V/6���H�O����]W�zE�6���X`'��[���R��_�
C��ro[��,�% �1�Z�
��б�h/S���'cP@q��
S��v"��`%b��|M�d���ϫ|Y�MU�6A�BsC]Y�Gh�:�Xg.c�Q/�D-�[�H��a����iE��?c<���
�y��議>�\�G>�|ȝY���O�d�2F��VT9]��\+�8�T���9 P�p$<#F,�vI+v�H��K�����N��._)`�
eze���8 L�V$J8]�W�v�;
'��p���(����	'�����f�b(V
�B=$
�����=n��ؔ�z��ڛ��n\��s�c��*7�֨}�QxJ�m���ByÔ�1�PݓU �hÅ)��2���Lh3-1�����	No��1�o$Q43����J5L��)�MxU��^	��+X,{-���0�f��Mnd��t
C`BxYC����~|'x�fM��%��S������vC@s��2���(ꅴ�f1P���]�ٶ��@������I�R�!T�[0�=
��Wt�Y�����w��`�ѤK}-��GJ�0��v;�$��[	Ty�0��U�����r�U�-i�&�~p����u��D�k]ޙ��Q���Z��'�ו�4l����?~-G٩۴��Y(���-��-%X^hl�V��@F��dا�S��{�^{�ְ�'�w��������נQ�nj;��T�Ϯ�M�rPR"��[��=��]��g����>d�L-�Y��[K�4E���}`l+%���z떢�+��=�܎��
��c�pI�*-��B��;�m<=Nu��غ���R��崟���(L�5%�s�qU}8���*ᖡ�nC�-P�)�y�������o��<8q|����a@�B{+�0���@Q)P�As4.ڨb(b��JK1��qKǛ�0��gj@� �Ib�Z�1P����O6�%�^�?�2�8�cJj^��?'����
!m�H_�8F��8�x>��v�%C��E�4�hFs�8�Hض)㘠Ԩr��
׳w=/���)�!�����`ӽu8�ֈLR��ৗ�Uv�[aҡ*�a�s{���g�KP��{�WX]�k���u�%�E��*�?�0r���.��c�ҁ/�ma�(�Z兤�j�,����'?��J2�v����9B�th��e]���|�;����>�{�}�U{S^����0zA�P��^�(�[�����d�Q��K�2m�ͼUys���Qqeg�a�+|��>:����]�����4�"-�y�f�daӋ�^�֒���v �ֵ����mz���p�x�RZ�����Ś���zG�6��դH��Y#��8e��l]eVM$+��P���E�7q3<x����ٷ9��a3���GU�NSZ����3.t�R}$��vK�1��:-^ϵty׆�9\^���Ս0���q��K[�Ml�`�x+���
��g��T�T��BH&��M��Ǥ�(ڪp�iiߔ�p>��y����g�0r�6�ܲk���Q zɦ�\���{���1J�	�J�4�}��Ƿ�?��7*�rԁ�&��,ŵn���(���D��h����V�X/���U@��+�'��{pFr'܎�v:]����~ӱ�u��S�Re
WA�$��	9��<D��5�27*;����G�0<�����@R����z�H�0~�����CϽS���G�����|IB�5Of�l�])��>"yͳ�X��{l�2$M2ӌ�$J�:Qn�����F�^��<��6���ޢ���BЃ�%�g�� s��e���A�-��#�_�Z!�"���/
|���*C�Rd�v���r�ݧt*�2�����򺥇�6��+M��3ú�<4�$���y<bs@i���&�l�nPZ�����J~hv5G
���4���`u�A�i@�[��9�{.�$oC�[@m�O��K΍�ۘ}�Q�羍$|f�tlU��Dޓ��jWy>�?G(�B#LAb��@q��C�t��d6��~��E��dꤳ�~�G���_~���V+#���R��к)�`�)
�:ʾ��df�i�jY��!y�P�qr�A#�#q\�*��T�@M�y�*�X�]&@��0H0�e��g�8Q{$F�����_6�s2�W�U;�zYlP��.�ώ�1�Il��и��B6/8ζw=�Fa��VT���)���b�^=.?���$i�h�ߍ�f$#�D���hZ�\�XJP����t������7u�O4*4�Z���/.� ᑑ���uk3cuRm�I�@y'��9�%o����*��I�Pb���5
��L~��Ќ��ߓ^�N�mm0E���$�N�����k!�L�k�tUX�·icK�9�ڀ�n -��/43����mWӀ{93aP�$bn��,����(%y�? ��f�l�!_���S�Q$���*�8��ϵ�*�g�u�mf,�`�ъ_���L��@'~
-��$��\�\�$����N�)�+��M"��u�c��I��~���x�G\Úv>�D6�r�gר�^�1%���<��𵖗~I���3$7P�p����oS���\�J�6�*���G�U���̅���O���_�F̓u�J��˽zyX���i��F�w�ԟ�7D�{ųr^�]�6m����+p6��Onʪ�w�V�r�z/]R�M͟
�o�<��:��5�z�Ӝ��9�#��򰛨���!0Ҋ�>Q$o�Ă�:��6a�������Ħ!S0�N3�G�g�j����7p�8��R0�	;��aS�)�<��Ui	�)��6��n��׳#��nґ�tRpB��rg�������$>Zk@��k�S�D���L��^	P�$Z(r86!�wgm=1ph?�7�ˇ(ks�:m�W�"Ǿ�U�O�)dv[��קx4�}]Q�ވ+��7XΥ��e�ez����')i�9�,�C�:����hI�k�XW\�};���Nq��=R�^~�eہ���7o�w&��,���5���K$V.�&SI/(���fX�9f�吻"�q.�K"H��>Y��x�E"�v�-�Y92�/p^'��x0zG�J�Cs�/���ώnUu��8�Ҙ�s����1���;I4t��GҬ�L[��KR7��H��&�����e�-�&�(��(R���)(�c��m��g3n�����Aȓ�5U<N�}y��0�12����T��DLIh��|�ve��4�h�C?�:�A����q!��Ҿ�F�>J�Z5F�L��#�$�ȯ���0�O"R���=���Z�.'*E�/骯Hu��z1�|}ͣo[o���:YM��1�
�U�Ә�@!q-h��ݠRh��i����t��r�[s��u�I	�&���C�Q7X�Z0h��T/�Ϩf���3K�4i>�"�i�QAd�3�+�ǰ���q̷E�[� �)�&������Z6?��AZ�]f�l1��#�EA,�f��;G�-����0tk0
�7#�����zKR5u�)�Mh T��-ed�u�1͵�0���?��p�~
8K���/3����If��Zh��I��h�l�Ie����5GPa��h��Ô���J��XSUj{����Cg	�a�W'p���%�Y�F�;���,���)����a�lk#۰W��Y���oF!8Uf�|)rљS�XĀ�g�Y�`��;�rS+�\�R��P���N�啗|���CJ��f�%���L��ē�;(y�0t��p
���W����4r�J�K@��5�U�Ք����W8!umO��� ���"��g]0�|�Dt�IՄ�S���;�*V���z#��@s���G`�uE�l�����$�)���y��17�hľ�С�>�In��͊��0�-"x���wyؒ�s�jJZ��3��L�d�Ip�f��ҥ���������s��
X`Y�Mp����Bh$"ӭr���`�L�d�A1t��<~)�*�?7^�����ش��M.�9t.�LU�_E˿��6���׋hT�1nV[�h@;�o;��{]�mO.A���Y�S��s��^�96��(�ω�D8%9�1$�‡W?l�Y�/YxS�Ū/|`�����+�%�����D���))`f��Lx��
3�C"%�a�]ij������;�ۡ�P�0�$��B�0�$��'E�o�!�0N{���c1Z;�҃��q0����1#�Ԑ�b�q:!l!Cǃ���S	TP�OJ�щ_�� �X^v�f�
O
����ܘ(�-~���
'�r�����*X��F�\�,�g�F�,��L;��`[��Q���I��Ig��Я��K��ԯ�BEFt���\^��Ili�;��dk"�j
#SJ=EL
�ښ.�k�.�,/�ʝMN�=M�q�\+�3V���O#�SWX�`@��L|�p��H�[3��cϩ(��&<R.��r�dn�Q�e#Zn����7����~�������Rs.[M�o���ؕc��u�c��[ޑ����
�F�^��҂Yl`%A'G�gJ&���G�{�n�m3�rtͽꩍ&.K�H@J�'f�
@�І淍���}n��[��C�6��6���oX�6�ֻ�qd$�
s��H�$E��xp"�,"ҡ35C.�|6\uN�������lm����L���,0 �*s�NO ���y
�r�#ڜ��P���Kl��(�~���An���hA:Qt�s�H1��T�Јsѣ<�׽z6��!�����)�g��6��[�"��M�R�*�����YH?��|�'�)��c�ρVP*��Mȶm�ܕ��mMb�[�=�rأ۶Zm�_��!��;�xG���R*+��l{<�s�⩨�FVh���`c�_7ې�X+��W�T�"��Y.B�oE%���d����Wũ©�7p��'�;�ĝ�f}�Rq�CW���RM��'ܛG�zh<��ɩ������|��ի���V�~�}m�@y�{'%��ٴ7G�ѩ���T.���nv�'����AN`J�2�#�dH��A-.�	t�@�dZn��������K���sV*%ܞa�O��]Ƣ�Rq�؈�D�'����}�$v;X�ma�=��#7��ةr��W������3�����"x
3UD�4ϛ8�k���l`/�J:�u�De���7�ɅɐB����0�{Hl�_e��P$�O�B�}��w�3Ԡk%_�PB��N��c�3���Ǧ�Dw�0F(�R�5GaIk�gx!�ef���cn�'e��*��6���W�sځk��/ٱx9u�����R���{ҿ6����
i�CA,
f�?iD���j��-�Ra�em0PqQ��W�n��J/���� ,.��(��,�H�9O�#P|u�׷W5�<�*C�:��q��!qӎ�\�^i�v��q�Ybt� N[�ֳ�ҊX��ڊ��X)��ו��Ng	�Ґ�ԩ2Dg8���sK���,~5lω)�E����	����x����U�_�Y@|A��f�P/Of��`-D�
$�E�MA��ĥj�5s̸��*�ā&8Fa�4��/z�қ��}�Y�js�������Gs_!��Z�QY���?�gU��C�>�07�[��E�sD�,;��b-5CK������┥��y���p�k�#�p:m:x�.�(BQ�r4�jE�^�\D5Qǟ����ّ�5}�r;��4�Bs�%�6#�6�}( ַ�ʅ�e�6�{�f�ݍ;���m����LvS�Cw,U��}-&BH1����2lJ]���Gě�v&� 5x %%x�x����G�"(W�Eе\����W����z�cXJg���Z�?Ohr[E$�����H�F�L�f����\WPR"eg�"iɺ��@g[�S�J��k�`��l�ؼ�F���S���KP�t%��u�3���f��]Ϻ90$od���C�8�\m��u����ɖk�q  ��>�l��$!!Gi	�LhV��@��f�[*�Bp��J!\���1��F�D~n1ܩ����#kY��iϺ��RI��NO�W�O����
�ۚ��O�ڊƇD��@|�bi~Y9
K-��l�)��q�E�U�I�0j �FY&ZӊD\Sx�(�/2	k5F-ܴ�uUC;C~�mgW�M��}�58kr[[
.'��O����fժ
�9�qz�d���1<��^_-�z|����Qc�&�V��ɣ�J�Q�'�
}q��i��1c�Ҵ�'7f2����M��Dhv
�������0��u���O;�0�w�1?���������@WГ	��9�c[��=]�U�J�8t߶��&.dZQ[�p�����+
��m��x��o�޷�E�-�6.�xg��mm�y5sV��U���rg��ˆ ��
���1�A��4@_�E�Y�������˗�N���Zn�R~��,��LPM��&0�@�O��߱���:�7Fk̅����`���
�i���^U�g�����ni:�i�c�w�N~%���t
����;�.������a%@�gQ3�-E��w�#��J^������x��[_�5��/���F}z���2L��"�?��7�?gb�L7�4���I��g��y�2z�A�L�!⫘&7�r-̀�/�~�b7K8�F�|-Z��ȫEs1xԴ"�F�%�K>�r��lƩ�>?o1�L����A�����9�M�v-"*
x;���Pbt�R<�r�!w��m�'B�>��0�P���on����+
f���_J�'u?��Rm͉ ݘZvc
�ú��%�#{����T�<0>��-9,�G3J�G�xs��Ɓ�� ̌&�KMU?������j���mӮ6�̍e�7h�
f�-ߴ9��;�L�p#���{��}�8�v��sOP�,��Hy�œ�0�tz,�b,2����U[�P�����P�B#�ϔ
'��ff�N�ح�`��vֆ�t8�Ԧ���.������"�P��1F{�&D��KR*�R18*z��N��t�
9�M��9��k�u��F�}��>MC�Ѵ��`�g�2$�d�)���J39�7��]����M�z����D�րn��ݙO3����9�;���<��Э�b!�i����� ��]AaXQ��F�>Q�|2Ie�<ǘa����A���G{NѨt9=-�ۉh��7�o������I7t�=�O�v�4�2Q��(����Uh��4��9�V
�09��S���R����>�(��G?~��G7�6�h�@r4-G�_-�r:�>��vE���0p^F��U?�dž5�(G���B�*z�q����[<j�<a��O��z1�{�VK!�*E3��H�17�ru�D/��QpFS��i�%⚬����n��,[�x3��
��}}f�Ww�w{��E�����
0
M��ȫ��1�`�9�
^��k�t
�aMTy0]c��l�X�㒡h�	�ˈW�<w9}�sPs�	F����I���(���>1� ��;j�=4N���<U��%%�E�
6�&�}%��#���Ϳ�*K����.LQdP_���u��<�s��;�$��=�W�<���j�ny5�p+��)�jtؿ�:��m[ s�I*ȱ����:�}�Ո���)>��aѓ�?�Xxe�S��<�ɤT�)ɞ�r�Ϥ����Q?xo�r�3y��	1
"a=�^�> �-&�-�=,��?,�1I�	��Ʋ���H@�S�h��k���i�tY�|� λ3$����Z�z��A�G����g�	�ufC+�m8-G�&�[>Rs���|����y�̳�>�A��.�㡡�����%���c�������S\>E�4ѦZL�Gɘ��Sr�A��k�,_���A����bBtq#�y�+
��"-Cr��1�?>�k[6Ȧ*cz����qz&/f5��_���̀^<fU����z�]�>KW�^�i^����u���t/M��_i�.i�h�A.��#�uO�Vа�0��~�(�	�� ��lD�fW�� ��o�:r~����G,��o
O��>��:ȓ�q���)k�{X�g���[�{�c.g�6O��4�[��(
s{��Q-Y�H�N�:	h�-&�a��)W֋M�G��E��
�����9��O�i�2g���Y�2E~``^�Hy@�b`��+lQ�r�Tf��^�,Ǵ�41��]a����sΆ��vw�jƝI���|UkV9�
�Qe�s��ꑮ4XM�o����
l�_4��&ͳ{��b�4Z�Cή':���H�������;HN�Н�RnO0��;Fb�؁�P��@�y4:���Q
V��,��Y2���c���l/�|p�J�u�^zY6�7|��<F~ZrqGOd�;{�-JU�f�'�Z�1�0��b����#fӪF�G4!M@c���%g��b#����m8��¼��x�SkBQ1/-ث�0�$�q�y#u�8��S�ۻ�S��л�N�bu����2D����y	-9i���c��hz�_�g5ս_��_̌&s7����<5�j���@�4�#�9�er~��k|l|97��A^��x)��
j9L���!�5P6�~G��[="L�N��sv��`"��jm�j&K�K2���	[�A.�{knE�F-P�Ҏ��7=�9�#`�����]~�2
V��qF�D�5��핰fz�	�k�:��ܪ�9&��Pǀ����qa�>�1�αt�����.���9VI�2��D�sar�?E5��8Ea!'<�Q���:���m.�����J���	٬EV�8g
q҉�:'�����=-	F!H�����E��E�c�V~|��C
�u�k~�
Ue�9�u:l�[��%�,���HJ�tr>�T�7��R_��W��&1m}f~5f��I�V
��c^�d~8�w��/���N�nG{�di�S#I�H��E���./S�7��V�4�\91s�%����O���Z�ō�
d�=�S����h`��a�I9�~�(#��)����Գr��g�k7o\�l�uU�<]���=-sp�������0��q
�����/���:�G�߾'{�6,T�D�U�j�-�@�%���>�rp��B��y�{�&)�MA3��Q�G��}.p6���n��L9uO�g2�mb㦂�O�;���%XU�=����3r���y��ne����@Cx�~�vd�}u!���-tz�鍣�#g��"x|l��dUv{��A�
�-i���*2��_��b��]s`V��r|s�!�;���*2
����l#B�Ǡ�산�=q�){Cj!H�H�˄���Y�z�����)􇀝�s��p�pn�0[�œzx#���y<Ìx�ˤJ|G��е�?��ɩ������dgI�p��:��K�9H
��)�e�%��:�La�yy�A!��AW=mWO��23�gDQ��\�Cl{K�u!��z�{��D��~^���q��
;x���"�F�|�Z4�|�to�!��QKl�A�2�% ��}2�e�&��'"	ɕ�Ǫ�aZ�?W�n�z%y�����X����œoB�&�i�x�]-	 ׀REZ��8684@.׸��߉����.l`��=����Q?�#�����U�u����o��,}�\��C����J�I���y�(�`TѱK��6$��z����C�^��  ���u�w�H���t"���8(m~�@�����6�y.p�l��M@��wwy(����8)����Za�Tt^�߿¡�UÔ��.��?,ᕌ ��ݜ|<q��]$��cw�N��3���O��sP�*Sgm7W����:3t���W�~�n�VnDMrw�^�/��%�~��邻"O��R�y&�~�4�6Y9R9&R�a�R~Cc��;�"��Z7YX�ѳ^�Ah���8m,��1hZ8��3~;)���^- `��Q4 �߿��ު�D��lh�c�C�">�ƙ�?n�v�6�&Em��z��"�����t=Ewӻ��
M7Vh��14f�mL���J�I�=�����/�z��ȣ/��*�w��
^��XD]�L�7q�c�h7!����J���f���|u�bGBr��Fw�����eK�tΑ�w��o)�Ӕ%K9�B���ʱ�x�b,�*H���9�f5�3���o�$�4O'$c'a��\��:�=LGXtzt�⨣�d�}C�-���VAA�e��pf�Ɖ���|��Z����n�-x�J\!�!��Z�N�khF�4���ڵ�Œ3��ȸwW��H'f`ЩyA*2���&I7)I�(@�H<�q�����	I2O��2�_�Nh5�:wǪ�{36�a��z����д ��l�����r�"�oM��P䚾���Ă��t�z�W:j�����A��qPʶǨ?uLmˆƴ�-��Y3������d����Q	J'��uf-΂�[�\��P8p��V
���ȧ�6M����0�oQ�oR�8�S�|�A�o&F��|"�¬14���E2�Y�D�!|Ù�V��!r{�����1�<��i�!��;��	0C��~?�f�B�@�E�����unoS/��D-A���a��k�F���'�"� �=g[����qևi+�f���z&���8�/3��"VI�L�Ubs�w�i��:bV�VO��ӏz���<�=���bco�[�N��Y��b����33��k�Nbİ���]#��贤�'}�Gch�**7�1�0[�s�-��s�!g�i��Jn����)f��2�#r�L���m�t`s����6��`��7U��3�����6�� ���O��vQ̅:4IWU6%�z�КMk7D�ozj�\{���r�H�^,��Q��_�sS��p�O]-��I�� &��(�YM�ݕ>��E7�*�ʂj 3N���$��YJ�|�t�H\z{�e��lU���(�	,-���6��v���P�EZ�r*2����hzQ�,������e�Ň��/t�@R�|��n�(8�"%��=k�E�/�F��!����������Q,�i3����SS)֒E3�	66�o[�C�$�MT�#�+Pp��Y6�Y|P�3V�JF����̓
�
A���5F2�ԃv�t���^�a�f���ct���z/�aX<����9b�j�������.����@43���C����J�/��n%�L�ڰ:<XI/�
�D�Z P�T,b>����`�g����Z��t��Ҩ�Gw��=�TkxŒ:����z������K��h�7:�4߆�.R��|o∙g?0k]��QMdރ]Ly/{�|{����D̑3*��Z��W�&!a��T]
����iT�)�Wf�	�El�t�k�[�t���^�0�n����Jybvh Qz��I'��+��
��f����3_*\.j�D�C���u���7���De����4f��Ħ$���e��|-�����:[�1Z�>�Qm�ڡ�{�CBӵ��[�s!�Y�^I���95��3����h��lUE���wVqsk�7Q���G��J���)�>�
�dߡ�'F���dN-UK�
>��c�Z[��F�����~��h�8��z28q����O�~Ok��2S9�rnu�ݡF���vV��tE'K{/�T��;=-�=U]]���ʟ���KMG�-�GxA~]��^o���[�.��򬺬U�����=�i�i�ը�Y�rH�<e�+JOAT�[^׽N�FI��;VHm�9�#�N�J�u@��,z�0T���Ӳ��X0mZo)�k�������n�&��
�sv3+�x6E�RN�j���~6��JN�TS�� W&�u�l���y�,��j��H�J��J��jG$Ӻƌ��f\��l����.#C"�M�y���A�BtA'���N�ӧ㋌�4�P�@�־
��i�/η"gD������7��-��|E@�E_f�br(����>�
�uzoV6��#M$�|Ք�h��K�~��fҁ���m-�j����8"�i`�&���d�@��:'�,cp��:�Y�q�,3؎£(u����K��<�i�;�����'К�<�F_�PP\��Jyu�
B<CZ�qK:9��5;**dD�.?�U	7/L9j�˩˦��0L3+Z�v���c	>�x��h�_,TLu�d�����C�HK�ns<��<i��T��{Yg����>�GXIAE�Y��I�Ұΰa�Ihٍ�a�s ���XOY^��vK'@�7c�W�W��I'[��/T*C��R�@���|�����S�Ff������ʕU�%�=m��}b�w�֞>N
(���w�=�6;�a��V��ғ� �k�y"g���3�S&��<��+_7I��	k��9d9-�b
N\�Ă�""o���YD5P�NJDzmM��"��B��W�`���c~8�A	��"��R���c��a�eoj��=�6�I�/l�����COȞS�O��z��O��$ü��3v���(�3؇�0k��S����í�F�k����Pqup5�dOk�[R�I�����N8�ݿH�:��h?��{�K�J����S��s��~�����|�}ޣ k����^/'}§U�"lO��:��{�r���f���T����������`��J��b|#!߆/�I�JN�J�)�����Xd&��Q0��>�9?|�V�>�Y�����"�r�����|�+*�M)���A�Bu:"��H�1
]K�E?����K�e����	�����քO�Q�Q�����Tg{���'��� I�����&i��bo�wF���.�G�{qWo����D�ƕ�ྦྷ\�	iπ�x�F��xP�z�'���
Ï[��t�D,B��.wj
b1�	�.��T�uW�Z �@�a*U�٥@�6?A�NE]okf4:f����~�
�>(�z7�u{35i:��q��8�01]�گ�I���rZx	U+����^=1�4$m����~�|&��ɓy��I�M{�l>�Y"Z�Z�)�Ex�H.�1�"� o����4��v��g�
�f���{�7�`�(�JKZ}�J��3Ԉŝ[��D٭�6�Wb[�'rR�3o��}0y.‚uKnk�\A^�PX=�l�KYW@`>�!��* B=�&{������Y�$b�%��o��|~|3l:gz>�|�R�
�|��)�9���[`�ݔ�t�������f��ɶ�����5���H`��d���EO�^�w�z������k�6d�V���맧�W�M,4ƥ��7�-�<���Dp:.�r
G��yG����E�!� !�30�͜�oY��!"�L!<A�G��oލ�`�^	�'
@�y�J/G���8�5I�q�U��
�w�Z�񋎊�mF�1m�gp�CEٛԎ4�H�J�9.�s���3C�(<L��T�U�i�O�u�J`���1W�4�۬c,�<�3��c���:f�c���`�a4:+/6uc�5[n�7�Cؙ&;�l�=�
;$�Ķ�c�cu��h�Y���Űt����S�ͦ��dW�t��;��pӫ�o���6�iʼ�n:ږp)��y�t?���i���|���ߋ��>���CM�O��85�a&��?A,i�=�QIq�Ӥ,��!�i
���ܸ�އފ��!����ñ'0�r
p��ױ`Mѥ��Θɧ3�y�f���!|�����A7,m����y3��ob'�0$8��zRǀ��cOz�ۍ��l����
7{~mf�\�|�� �a6�� ��o�iv���;,�+t��\:���zFC�g3���s:x#���AD�~��ʙ28.�M�VB�w�4ev�I�͇|�~`؝��g);}��R����"W����փ8��M�lM�i�n���Ns-wQ�.���=��f��=�&7Vݨ+=Y=G�����H�n�/��,-��l�]��v�`�߽����^�_C/
���s�}Xo|�&A� �k���+S�B�SW��lYЎ��^�� �q�~hz���OY�V�m�J�q����|o�� ��W��� �JO���b{1���ͦ��Kf�Tj�ct���2�L�"Gr�C�ʮ׉��Avf��,�q�I}�;^c�L[�0�+}ֺ�����v��$�Dj�̌6�mN/g��r�s�%���i ݻtQ�ѫ4�#
���4s��-�r�o.!
������k.�e�56���D:cĉ�(�=�,j���p�y�ސv�m-��Jz�h}���`�ⴗZ�3�,|$8��1��t��E8��O0q���O:�/3��	��ҩ�Dq&(��;*ji?P['�ӻe�3g?�v�/�A�w�d'?�M����
�,�LE�u�_at4��
ڢձ�@ 1_���B�4ͅ%��A%L��8x�f�TL�h� ���ذ$ZnW�f���E�g��Ї���
�M���֣���ς�j��V�%ۂ ���7�8j��p�4�
�~eZj�%��̱3���"%0�Jln�+F�#�>&���	�|��v� ����++�mR�ت1o�93���ڱ��/����I|��H���.X#p��~�o�X:�ڪM�C���Ї|����\g#G�4]c��]Ɏ_�\F��
�0eoZ�;Ă*��!
'��PC��~_���B��!yL|�c���߉�}��p�hPRR�,Y�Ռ"/B����ZR�(]�����u��
3��2
N�"��c�	J[v����#6��o�[7���E�6�j�4�F~��쁼G!<<�V$Ly	����㣾i`��S�����_!���=t��.ˀ�9?8�-���ѻ��z���r���/�ƵFr��Qt��Ee����F�>��8.��\���3���t$��v0������d�p궬�{<_< ��O�b�_yξ.0�Sk[��Ͻ(x��lLW���Z:Rn/�M�ȫmO��y��g���Ik��E���#e�Q���Y�TX��;�Y��>������ї�	�ݖf.~�\�ዢ��na�S�|0��n�;[?��Ba
d���`t���V�X���?�ؗ�1�
]*�-��dh�u�H
�"��VΌ�s��=������9�cV���E�P#�'z�%"��A����Mv���g��8t��YQ�6���V�8�#/��)�x�>0�h��x�jcۨo0K����$j�	m��$;wb��@gQ���Tr^�@��
+���6�޴6A;������`)A�~��7���lk�-)]�W4�`W	+>x��J��
l�'��E+�����[&�ʓ�)��tgJn!#Z��T�p�F�TBM4�0�ޙ����$���B��,!J%�O��.h�lPȱDR
E�.-U7��եZZ�Q�w�������y�`��sœ�Q��ߕQ�ձ���f���{���fݣ�8IC���~�t�0v�X��D�49��v�&1<ǹ��6猎KuC�d�d����9����,~7�g�d�U�{)�q���jq.ͺhͥ�_�v���;�R�v:윢^���	>�a�z)�8������^,tn��}K/ڡ�w��u�z��1��Q��E�W�g�g��>1Z�lG3�����Β��7�^�}�b+|�H�ӊ���}˙�0�/[��L������fIk�΀�����!F�Dcx#;�޹XM���
L�a�f?��1�F~B�*z��O�o��`�A�b��'Q&�z�0Y�}�3v��1�E*�7���b��Bʼet2�����a��	�L���P��(#��c�6
���
�����A��	V�E�gܫ��,��ZMq��!�YY�|B�����f
����%y3�W�D����7�?O�G��G03��w���ⶅI<�|�2V���&,|�;���)�q�'u��ߍ���R�2sߍ
���Y~�A������.�q�vn�ӵ��v%�T�L�UE��y�_
s��DV�}�U�k?����!F|O�^dm�T#�qx�)�G�
CX��AS05?�u/ƭ�!H���$���/�c%�ɝk��	���~1<����l��QE9��
����
EZ	�D����đ#�Q}���5�43mp��)/,�ޗ���oԮ���7j����_p
�݃66�y�q(w#;w�_��
��Җ�;����D̃V�Wy��t����ZV�Qk�k�[�H0�[���i�	e�����_P��o���0�%B�j���0넹	��Af�{1J��}�zk�g�4�D|ߗY��s3)ֱi��c���/^�ֆn�z3ݎ�j�$��UٴC;	% �E��n	ծ~��Gu~�����J-r�w
�
bG�̘L)��^M���C^��AD�~�����@'5�K>=�"(�`�Q6��
>J���zok~5�v�Ru�_rj���ݕ���U�G����I>�I���Tg�?bT���Fj���|*a��Z����ӿ����,YM�u����̈�m�h��[9)���kF��jXUI��������Ft�V�.�?j��X�^�U㨱���p���O��?�$�џҫ+��2�*���w}Vb�XQ�V&�����ck~�6=�
�'S��yl^�bƧK�:��+�����g$���~U��\�H�p�L��#�&+|c0x�v�*��%kY�s�{:�����4E�"��&1'�ϱm�N���6=�������M}	un�8y5�a߈y�:��8�v����C�,�=!�4��*�*�UA�wAB'���Gư���4���7��&��o�'~��s�v��W�����'1<Lq⴪/�p�����7��R啛�8ˏ��e���EJ	?B㜨u�E���hK�/U÷4WYj�K�a2����H�?�w���@宷.n.M2�U�}��ρ[��t`��[9�=sߗ�C�yW���E����5�����y�D�!
"�����t��>�ۢb�w�_`�졑��r�w�Q=g�iW}��x��W=���"����h�!=#�#�y�n��%F���B&R�z�@�O:��S	�ٝ>
c�^�i�\PxYE�Y$��7m3��H�b2+J3� �$��eJBK�ǧg����
�g���~�N4��Y�C��D�oW�0n��x�N�S����$��4Lo�m�u0U	�\Vn�5��4,uxNx�y{�ٞ��m�C�4^$<O)"='
��,4,�#G�3����W����:&����AB?�/�.`�w���8��g�<f�EYDS�xX����:���,KǏ��֠�Q�0�3]�8���[*�iP*�on����ܹ����h'�(6 J�^��T6~n�+�軅Z�)�K	 �H��5��-kBF~����y"�Q�b\0�爗?8R�y/h�-�Tu�mu�unw1�Ϋ������n��#n}V_�4<|�2)�6M��UM^�}eu<7{�Տ�n��

87쾶�;'��JT�
&D13�4����)��K$�>�O�/��,����b�3#$>�JǦ�N�A���O��E�s�ȧ�~�1ŎW���T=��s��B���!/�<2�j�vq]CccSc�6x�>kx�چ��=�
e��SՋ>���o

TM�ڏ+6��m�C��P���H�Sg��s�M�NO�j5}��;{�=ۛQ����\��
�+�Ɗom�\k�
Z��@z��HǛ���;�Ɏ���Q�����8
s��u%��$Mf��tJ�P����k�$c�F	G9��x������
�ƪųK�L�r���9�^j@6��&�h`�]k�?�R~0�|�1i
s����g�2���ُ9�s�8�ь3G�؜(�'��Bm�
�Ӥ�HS�,Xs�\N�:p�qAj|���XE����m%�u�y�9-�.kG��D�N�b?Ѳ��uԇ����@���?|��a�_�;z:rNJ*�"�tR���0ԣ�$��L��}����c@�1"E��y2��'
��NJ���bS�y[���?n�>�»��~�Et�8폆�-�����t���5�)�a�]�o�f��Iˋ(�Y�K^�@_�o�/
�v��ŗk��Feb̂BZ$���\�P	J�37�<���XA�ԗG���,z��==��0�a)��:��5xg��b��Ĉ�/M��$QV.N���ٰ�H�,Y�q�Ҍ8z[ɖZ�`�-�w&ׄo�s,��K/�G�Eg7��V�8���:�YK�N�0ۺ2�q��,���Y��o�j���P���-.3O����z �j�5�M���>��5G��/H�͵Z���ٶ�	����[����X��~���������	�W�ovf'	���xA����иj=\x��x���8~���,�!��ڵ�P3vkI���BE�0�C����Y��ɊˠEFEB��s�.3q NZVa����X��K�e�d�M՜�a�e؜��*R�K��3mծR�1�2���9�9�l*��bad�W�_����K��U�K0�Hߑ�h&�Ee�ꪰ�Wu4����s��qCv%��(`I�!�xr�Fa׵?}��^%i������\sj�l/q��@n	׀��;U�-�-*��»x�'EV���T��\>�D�/=zx��y#��*�X�슬Z�T�HT�\V<E�<v�yz`ߤ���7_W2���4�姺@�|e�~ahpI���S�`�ppٸ[���A}�4��\�0\~�
��.	d�;�1�0��)62H	���߈��ik����̝�@LuF��o�#�oM��0A�h_nN�;;�?�6T�\P�������u�_��Y�a�e_���l�.�&D�_�-�,3���lð�Lc@1mB��}A�H�v��Qԭ�j�.�]�U���9ނ@6��ה���AنgK�9���}*�+�EAAEJ�H�n�/��,��F"6@��y��3d���E/�p�V��cʠӾ|NE��#�/um4��_���@ӳ�m[��>���NbH���"��	��7*��yй��_J{>���?��m�6z�]z�F�Y�BϾ����4�x�
��ABE0zˉ���.@H*��	]}�s;f�ʙ���N�����uv�W����n?�I5|�S{��JL���a.W%��l��k�p�K�]��lAmW��4z	]C�@Z�<y��v� �4ӵt�(�1A!EЈ�p�㘺k��ǚ<���Z��R���i�.�����N�~[U�%2[�WlX�5t�6{�3nk~g�yj3vg����:�P#g��v��ھ��cZ�^�O�yde��M��چx���tf���bU�
?>؀�|m��zB���a��Z��G���x���f��OU����ʼnA�^�͡�f3ϣ���;��O�=�!!�H��HR�(%����%E��b{�%���ᑧIX�\�t�������~�
�}�'�e����y,��6��9"�q��(�?��BC�yIʮ{�vzP�#�/��5�G�Vp�"dvE�zY�6��֍y�z�z��jrL}�_F���.�(��"s������=�e#W���%9r��\|��X���*��b�%+�K�7���X�,�f��Fi+q����Z�fJ�m�/|��$�D���M�	rq1�O�*K|ҽRS��}^���F��/f3U0��lN��v�_{�`��吪�f]��'ūP�jU�7��<�b��-�!���I�u��Q�2��fm���!��f1�Z��0�����9�����H�h���f�3�yJj?'��R�q
���f�]&���Wj�wy�7��-�z/��Yk�]�KЄ,g�&�~�hA�1F��%�Q�������I�m��&
�&]K�]u�����8H�jH�$��{_�\$([ޝ�\�[%#�c;���H�l����2F�g� I9g�r�z�
@nwz�}�
��=*m
߹�#�
8d[�r`�Pʪw�]G3ɴ4����t�	19}��Q媯���)��<�h*�l�� B��La��^ZCs�ߺ���qH�C���C9L�����$��}��2�a�m�oK:D�;�?ˆ��]�A!�Z`u��V&�*��m��|1�%�D�3(L��j�)���>R���:��"O)u8��ߓj�F�hBD�߈�S��	<�_��<I��rx&���)����0f$�ҹ@�q�α�C���l\�
|���C�H���	b��F�=����ΫL�A���T?��Ђ{�Ӎ�
�jZ���\I`��u��l齭�-!V�V	�9�-<����M�O�ƥ�wbG�d{����
–f]���aEO����5�\D��'jw/+G��xN���|߄F;Z���y2��1���~W�c��g�����}dR�9x�L��7�@+m�� =4x�@�R�����P�~�|t}X�������S�ɛ�Q�0[�j;�C�#ѻWh	�
2
����)Y��ԛ?%�c׏eܕ����EX�Q�����[e6+Nk&�����wn�pY�j����{��mnn��Ͳ0��VQ��Bv�����"%��p��nk�-mqPHN�v�zfNp�>'���П�	}�>�����i>�x+wfQ��I�v�~����J��#
�E��4v)Y`�U
���n<���.C�m��iac�4�Ħ�M̍/��GO���h��P�2+0�Z��@�CiX���R��,���0݌T+kMUEU�O&3�d���1�\�숥$�#6 ��%�ec�0�3l��l�_��12%��|E������K�!C�EC�Q2Љ�{��2d=������\n.a����s7A�
��ħ���'v����o�k������o�;��[�4_������׼1g`�S�M��<M�ɞ&಻��X�|i�Á�,���������_�2ߴzG{�A �6J��#;�#���;MF�`��.L�Z8h�!0��l3�QfɈ�`v�e|5�Oe����;Ͼ/i�9��<����
ը/5!�p�.���xD=\o��7#�<}4���p��X��_��#Ħ)
t��2�_�,H@�Қ�da�0Y��KD���Q�j�vY��k<²�e�_\������^Dc��b��r�3��T�7�`:/[}�W�FN�T*.�xտ;u��3g������ܳ������޶o8�T	��h�<;I	�O�MO�����Z<�:[�ص���ID�M��h�
#��h�/�}M���;}���
�">��J�F�� ��Y�m��X���j�2�U�}kۓ���	h6y�?	�E�$B�E��5>�ʆ$q��]|
j%�(R�I����&;&���[{�d���,�%��GZH�ٽ�!��n+r�~�X
�K�����'�?�	�:�������a��է#��~g4r�'ؾ��%%>�ƚ��
E�Qk�����A�w�R<���{�M��0��1���4�q��V���g�ɸmC���E9l��NA!+N�:D)D��
i�K�
��ٛ/S���I	�0��.�'Gz�k?���o�̇�j�H)R�;[5[�UWT'�#{L�?uj}j����#����Ů�=
�a/8"�G���RJhPe[��!�*E"2���%7чͅ:$���<�B����6y�($NŢ\��t��`���	���x%�8�:dra�6�$_��� ���6mӮv,p\��%[tg����� ��
�+�<Ql��O��B�bD��+�G�Bf��P�Smp5��$�;+��w�B�\��DMW�A���J��0� ����Ǟ��f�<�T�D�dT7wb3��C��TMF�խV.�`�ȍH�"h쥁f��[��
4����$����g)ĜR�X�F#wq^I&MK��)�/�d�}D
��,<C���o䜼��/\H�51,/�_���>~�r��� ���hO�Qq��
���[�꿄��{�b~8��H����+s|�QQ�?�0�d�č����
*�3��9�[����xb��?u������Z܋��Z7��eo����d	�X�n/�O1�(���E9	_�
<!����JZ	�w���!���b�\?��Q$���S5Yk_��}mI��j��>�I7�.�Y��wYx�
����(��IqB�z�+e��r����"�Ϩm������>�2�|
��KN�]I�(�� %q+"�������b�����_f�O!����Ԁ�
x�괆Fj&��t0��-}����%�>#�?���5�%���,&m�7�{;oȟg���6��
P��{��\���^�Kj��^�=�U���-�(K��#�s�DD/R3�Ҋ��C9)Mq��J�Jء��LMt�zɑ�*�?���-�'���5_Ι����zѡ�P�����n�S�!� |�m�Ҍ��[B_����A�#� ��	�}HKcʖ1 ��Б�\�d�Q�нZ��XC������cR{ŔO��	�y��|4R�C�ߣ��;�hMt�'�K��;���ߑg���Q�v�?�%�����uC�Q�W*�\M{�q��Ρ�qg�S�/�]�f�k���18�.U�q
��eظ �C޹_D�2��j�8G$�NL�:C�����Rj�l
mj�rdh�S�0eo?4"K�U?���a���L��qa<�KbuK>�_��
�]n�gb1��hh�IpG|�&���o\P��V��[�F��F3.#���������Q���ʗ@@�]��s�g�/vc�j6Ɛ0����_��M��<��$��(w����[�8��S��A�/v�K^[�t�`ky�`�dDc��Ԇh�66բ`�/9�
s��z��ʅ?����dl�xȼ	?�g���m��|q2�7��r	��4�=�3����Weo�?g�=��Q�d�,Ğ��nU07�q��������>���Ng(��i�\�����žF>9}B�zm��:B�->Μ�_�3N��<Q�Nee}����lL�@�v��i;@�7�����D)��(^*Q/;4�%&�ŝ6�7�����%Ue�����@$�h�:��z����;ذRfAm��q�e
�y2�����c�>�Ȏ:�7��:����G$%�zK���1�ϝ=g�t�#�2	����)�C�Q�?��6��L=D�G�x�x�~�>=V(�O���k��y���9V�#Z.���q�qq����_B��!���kDt�����5��.����_}dg�@��f�t���E�MTl��c���T/�ȃ�#>O~��q��mmy9��_]N�98eǹ�����h�l�7���OƾQ�_�'��]�\��B]~j�s�ױ6���7�]Z����Ӝ
�GNX,����#�դ,�-�ȑ�\N����4��[��V�Ҫ��r�ţ�w��j���!�ZV^��
��r�9HUj��؈7=��Sz#�poHT>�7���q��T�}�_�/���xl�t%�T��0`s��[K��+{v(A(���J�x��yGou��U#1G�ar�x�	�MW�Zp��]np�PMI�הl�]���v	�%C��(U���Q�A� ��1��a��p�9&�6��7���bKM��5`N��H�J�?ݚ-����!U�RH5�
y���|��9d��k�S�I�*��V���[뻶����jluZ��e���<���%��
.�[.(r!�4h�r��V�R`��d��Af����J����䪅POO�`���"�(=��A�P�h4v3
!���Ba�hI��Dg
�	�^�P�t_��ȉe�p܋z��5q.?sT�9��t~1F��+;�.�B;.�O��'QCo^�Yz�8���_�ۇ�����te�x���q���*\�8�]����� k�����ͳŶo�/��|ɒ�{��	���5A��y����2ݨ���d^@@^Зe=OT�NʶȌ�Qf�.����_��g'�?���g6��
i�a�ll�I%���Zꑐ�4��z�H�cAV��Ic�ac�U7���Db$�,�!Gj��UI�$�RQ�8I06V�������R�(ނ�򆆋��έl�*_ƪ�'E�!�0uV*NZ1�J��q�TP�P}iZ�fdb��������&s|3����᣺�k�e����>8��1�2sW��=��?zǸ�>�_Q�#�zW�:���rY�Y.�̿q����q����&8��Z��w���5�mcPn��&�; =��f���n�ݖ��6�<�r�;�&?{��Y��(4� �&o�D�a�Y��w��Ǖ�*����A�`R�9�v��J!@�V����9"t_��0�pea؆���8�NW���;b����(�ȼ�Dz��4��
Z��`oߠk|�oݾ~yJZ��)m�2#l��Y<��_�HP,ԑ� ��/�Ʊ����9�h���� $��G���%�BʇO=����ʮϴ
*�B�I�h����$���F��VD���4ޜ`��b��5�:�9��
�bN�s^���*����E��%1��1�2ݨ<?���ז��9�㇙�O:�Ñ��9f�w�R���6���Q��~��]��L�~4��/�l�)���t�Ajm�GT��Me�M�v��Coږ��r�)��֏4e�֑3�do?��t��t_�?oY���oa�AP�>�6�6�:߯@�8�)��2b^�f.iB��h�*{�w��;�>�.�|PuϷ�sG�y;��bwK�:0��+dj_��.p�g�E�'�>�p���Үs�gN�_>�!�]�m�V酮��D��c�;D��~L�Xd[2\N�4��|ݴ�|8-�#��;ޖŴ��;�T�"H�9-*�@}rS�.�7�+*n���RR���pG�W�0J?	�I�I�����R�H�0���	ԇ3���w s�'�Aǚ;��G�����jv����}5vQ�T�G��u�UٟʋGM�K��Eȼ%�#frK`D@��U��F~�8n�k�L߰���%ܪZ9./3��XӬ`h�רi��Q!-z0�<�oz�RN޸*#��~��o�!���ʳ|Pjb�����׭��3��;G�*a%n������-��������lT��D���fǹ��zկ��fV���Z��ػ����>�R�D���4�v@1O�G�^�9�b}��u���2�<�=[|�u��;m��ԓ����
C~�o?��J�N��9 ��8��
U��C��_k��_��jj����s}��=\VX�`x}Oa)1�Y��F�Ѻ��VŜ������`i��	�	�d��ODO�'�'8��9�o�M��i&HW��M�M`[0�"v1a�
�D�	���5$�����o��7.��j��=��v&���3�6:��!��l|ѝ�pC�ޢ��ɓDegzF���lT�O�
��4U*�w�����ޙf=�v���d�����!-�m��"J��t��,�d.���q�)6��W-�ߗ/�"�Z��$��*¦�CB�Q	Kp3�fz2���_��D�Ƈ�'�G��0+��\�ƚGϥGF����Y׬5��w��<"߼;���6�5�������[n(��ec�?�~�!�����	�g��g���劧O	��Z�{GsF֥	?:�n�p�f)�m����0S�L��_Ӥߵ�����,<��4B걶Z��)��j9�6��n�Њ6� ���@ry�Xs|�t�q���d�R�g�$���yC�
rS]^K&��_�5칊���Y�Y����w`����E��;e�;bE�ه��,`ӫ�bܢ\�f���Tҍ���Φ.M�79����,Kh��Yx%�_A�sl��[�?��<��Y�#L��>e���<ut߽-Ko5¶���9g������Z��wL�Ov��Ν
�<�F�a�*<��q�%�TBf,��t�8�_�eetmL���WF�J~��?\y^����1�݆ߏ
��C�Ri�z7�����+ڍ�	$9�c���x�č&��J�5�4,.w.l3�����6}�a����ʋX��㞧|���~��F��ij�W��_/-�n6����h[i`�-�Ż����h/�GX>���iÛ0Fm^U���]΂��IM��/_�_��+�~\}O̷Z�K`�m�j�_ЎJ
|s�	E�u҇F�=Ͽ��j�͠CTGG	�<O=͑��쀶�cc�x~�/2���2��PjJ���������ns$�˵����XǤ�y�?W!S�:�-��#��3�̖\�u�XR��Q��+?~U�1��h����
����P�����[�a�{}�Ž��Jh��'��ٕ�����}s�g�	��1v�.�Iv9�v#e��;�w�U9�?��Ʉ��عIJ�a���as��t��EoX��s��I�MѬO4��=�`�ѿ��]ts��e�3���8�ak�'6�h%q�Ϊ�@�r�鹎F������v�~��X�(7<�2�J���D�b��7�Z����|�^D/���;�V�<���+�ρ�u�tZ#�
�7m��ٴf[qV�5"��qE)Z��<3�?� �m���q6y�^��b��1��>���Np��	��v?�Z}�|U�^�v(�	~k�f�B����I�b�Y��Z����y`�iir�G�7xcFM�E���[���^O&�8@�-����RHm=(��|(�
��x��W����d�䡡�j7��J����I���z���{	��]_��ߪ�W��dN��&'�gr����]��~Jk@�&ߩ�8�М���I�Q�Iu�e���ӓ^�K��A3"��(���'F�4�h��P��Ӧ�*߸�/9�-��%�-������W{����XA�I�q��Oŏ���;G���˂�z�⛸D�c����:r���ed��0b0o5��=*��5��D�Zbx>���l�*�����q�8�|5�W�	�l�`���훴�kU�	���I��C�54"ÿ���w�,��+�ʾ�Wj5_��#�j��#r���䴃�C�F�*p���.|�1����� ��׫���|���K���,	���"U�m���#�����0�|�|�}�;�/w��s^�
��,aa�󮒴i�G��Bz�7��;��x��`�4<<�š�eQ��1�ӎWb��l;�p�qhk�-�`����J9��m�p�g��Οq��X�豱�y�⾪�b�y��Y�Y�ǸE���~��&��L���8ϱ�Z����j�.�Gl5�N9���0�N���N��Z��%�U��\���o��}�w��߶f��,=h�,�E���]O͑h�g���j���S	�Nk�������q��x��$(C����~#�h�ԍu3�0��g	%�� ����}6,k>:`�Z��Ҳ4���ΰo	��.�T}+6�Ƞ���"���V���}���r�tl��"W�G�h�J8�p9Dg�m=�"�k�EG���i��1)/�r�sLR���Aj���c��*�J��Aܹ�;w��Kw�]|)�"x���q�U����U��]G�`�z�)������-�ڋ6�A��M�xdOKsI�9�Bcr�Z]�M�{K��E{�h�Ş�V��tw~�[�?8�_�=�_��q������Nc۬�uLu�e��Yv�{��K�{��D�_ae��F�R*+)\U�	�,�M�

����p��D�����������`��E�`N�}
�T�t�g
�/nj�_�q����>��&ڗ�'Ġ����U��]e���>2k��uZ��n��r������}�!4��+��0�鰘i�h�ʁ�ul0�]V)�)]�iTZ���&]:�|���Ѷ��Č2��5��0L(�C�W#�-���/rI�7|�4����{w�8X(�	|���y��W����„)q��6���\P��V=�����ē��	@��X�>������2��HH�Y��>�r"�O��IJ"�H�J��`�m11�Po�,���Q�G-vN�F�`;��z��(f�zH�ִs't�?G5'8
�	~�B�j����q����!I��.���/�f�C��\D������N��v���vș_KN�O�G@�@���[���K���k�u�~�o��B���Z^���$Yr$����H��x|2F��z`�(�23Xu<`�^m����ڊ%T���Э4���w�'[iI�煭u�Y�%t-Kω�3�̻�,*Q<���ݨ�U��������b鍨{l�H�=sfI
!�|���%+j�'zY���I�t�e�?��L�ǯ��2��Jw �n�/�i�v{��5D��JPB�g�lB@���"j��!)�	^�VT�<�(}��~�����ד"#!�D�m:�|�Z����Ȟ��Fv%v���:�v:�H�Ԇ��t?3��
>'=5�!�fW1OuA����8���f���G�-4�zV��c�d�U`S���U^Kp����[a6E�mE�.=J�8�3�0zݝo�/��P:hK�H��㵙�z.]�5���Eb}A�g�G�(�n������ʰ��)�~2a/�B5���`�Z Ԉ�w+�t����]'�[j�0M�%���`���4��G\��+;��J�eJIN"�sg�)��J�m�N��ixI=�J��]��տ]~;���9�<��GG$a�\�Ѽt���������~�!���p���T˔���q7I=�	qr�E�"pNP�GN�r#?d�9F[]���$j����P'#��v�;�PdiZW�����3�*�V���Z�$OH�'y�)Ӎ�
.*?z%Q	W݈�Z�R��������ǻď&�ۇ�n�����&d��X�G>�5d�r��`6�2J��UXiv��u"���k���"��4�Q�4�_g�?�|��_u���hI���ĚD���i�ΤDPf�V	*����~���L�z�#c�PUKŪ`:z��[�my����%��7:4��G>�q�/��,�˙5��K�+�D��/g��8�3v���צ��W�t�\ũk#X�H'��
��W�|O
O��������Q��c���+糏-��u|��ZD�Td5<�B����7e��N1�;
\2���:��Z?&�\6(E�yw�J5=;����~�%�8AVM=��� ��_t�1��՜ &y��s�Xy�o咸wG�ӏ�bV����/(�-�ᾃ��*��"vw���aa�ّ�/�1��y0��L{�8\�i�i�e��Vnh����{GtJ?OC,����3/V�V�p��uL���L��“������$�7�_~
yMu��t�2�W���>�1�EsF����}��O�M�9�&y��9{��8��r���w�+l����y[e��ot3�;"�Dw��QA��O��d��-d�D�q��Ⰰ�{�G�\o)o�'��͑�
��zfh&ZR:���&��K��N�&mD@'�(�D SFYv����	;�
�R�f�U���#����"�o�R�e�)s"���Cₒ�-�B���"�엡��\�=������z�����9É
�!XXݷ�u���H�s��0�5�-�x%�f�a��ˬ4��63����_9�FgX���n[k
YGg�gon�=Z����Q�j40kbiY�,�]�]����lp=�(Ӎ����n�E��b��",�UW��/�
�g���.W���k��M��f�_*`^P��la�Y^Tt�s��Kp�E�$fv� V���9�
Ȏ�2��y�m���*��ֲp?�B��HQnƙ�=*�Z��'�sj���^��R
��@�J��Pq���Ox0 <›��������?�?:8]���jv:�JY����w	R����������N�B�f�89�q�G�_����/��r��ْ���X��_ޡr��̫����l��T��B���j�?	��|��Kt���!ک�A�ꭵi*v4 23Š����^B����=�������m>ve���o�լ��?��8�	����q����KΌo��,+��(|EKó��H-�>3�Z$C�[됹�v~9�E{e}Jy���^]n4l7��]ܟ{�����
hC�}��Vq�0������Y��G��SC����|1|����C�Bׄ��ب�K�t�=��D�'h�㴾�t�OmKmI���� �Q�������}���kȨ�iq��7:�-�'s�T��t�\����F�y�<��+0U/�-��j<�� ���1{M�9[f�(��ȥf�T.�3W�����\�X{!�?#sQ`�����H�"��B����yu;[��
��
�\��J�	�� f���K��L����K��m�\%F�@w7�\H�6kNv)�c/�I�x�����E�5��#M�s
|sj�j�C�
�jC��� @�A��1�><��;X1}��/�Cs/TvU���>��������Y�0mo�`WNA�AHO���A�Dh�|NxT�rJ����<�2�y��<�C�'ӎM�>���P��o��?)��g8�&��x�wJ0_�B'�,T�����@b�s��g��p���ʚ�oeD%����9N��isʍ0�ĝ⾀�����f2C�̚�5�s���"��N�k�8�(X�n7����pPX��i�]�寄&ءw8�-��^n��]^�K
�-eƮ"��p�q���u�	_6�����ZWQ��8P�4Uf�Ź�6E?�9N����%�5�`�gl�pr/X��'�]���慿���JJ#2'����B�cڥlD&Fz�
1��")n.��+Y-i��mF��R["�~*-����Z\I�v5!�(U�@U��"�����Wd�
��R�K���X��J}k6"�,."���� �[Ք�%��������K�V�y'��kө��tiK?�q���t;�97�X��g�����D��+6n�:x-]��jܲ%+�en�v�Fy�����3�2ҫj��7�q���|EC{��N��WV�i���-�u�S�`�R���,�H���D�<���Yi��)�Eٙ�.�����b��к2�E߀�W�/�Ʀ�>`��ӴC�#.Tħ�u���h�O��Q����W��Aj%R��ݞ��[��V��(�nD�Y����x��N�k�3򦨓%����H�8-N-;���S�(. ��7҄^,�G�h�@��V�D��ap-A)��%��褞��%;��J����s��@[�JBѶ*h�J��ĭg�����~o�N*��GJV���n�B�`sq-j�8<X:'s9��R�U�R$����qD�e�݋�2ǭ`�<�.�`�.<����2>�]��n0hU.���1	���}.o)<'�g�~�>�����7]A:DR��9I�0��5����T��c��$3m��$tOX;ۨ�K.�?��૱1���Hp}���J��ئr���3Z�S:�rav4���`�6�"���	,t.����DB+�d�L󰇮����V���m��w�����7w���F�y��L�3w��T$?Ѕ��2��l�^��5N��:�%�5��R��,��FŰ#3~�qςB`9�"i66&Dk'����Hr�r(?V^��5ǖ^�t���e�U	�O,�$�ٵ�ۿl �.�UMX�52�~y�&�$b�R��'ލq���rG483X=}/ �-��e7��W'\i�0���v��N���M`�geS5S��G%�+�ǂ�e�t!f��3ch�jwn���_b�W������9����ߡ�~���;��T�vq}鬙N5
p�[���Ú�^-o��}��I�}��}H�C�9=�����\e��{��'�\9���%�0���,�	��_��T'@��#�b�5�~@�ɹƇL�1h��C�WNFMB%��WȄq�+?���)c�p�79$�Ek�79'{��η&���.t���W��È�dK��+���r������P���8��"�b�"�����ǩ�ID�?{��9�u������+���������mp��^�I��h�V?:�8�:�,�Ez��#�1�rO�[[1�(��ó��Ob&�Yl�'3�v<���aI!��O����J�U���0X��JTBzG���9(^TJޓ���􀨇��Ӏ��i,Q?��:���	���΃m۵iڰv�V��/�^	w߀���E���v�j
1���.M;���*v�ߵ}��;����Zl�R�T�Tih\P�8�c�UZ`P$ڛi��$�c��S�l��?�v�
�4��
�eHJ_��>�S�.a����c��[�</@v�
D���(@�:��K���.�g�z��(-����"���|���嘤Vq�]S'�l��@�g�c��4dp8�K�~�mC�>��+asz����@����ʼn�k���H��x\5 q�8���v�)�uc�w5�&���1�1��û+3���X_��)x�"�����ŧ����%��� ���c����B�6�
�����p�ޭ�cc�Lu�~�
F*hj3$Ϝ�n��,}Z%;�f���'�b�ʋ����U����$V��Xs����:���΀�\29�.�'��@z����g�|��
X�w�{l� YwT���k�N�h�������6s��X����GMXhMpT$�)�~��� �ݥ�@�8M�n�����)�GB˒�)�L��6��bI�|ɘ��3�G�2�`�'��]�ȟh��]�c��B�zN����Y?+"�X����}Hse�����
"}Ĝ��N�A���]�����a����+mg��>���>
�P���g�9g�܌�GKc_�vx}t
��_���)��o 7���s�8�q�˪9k�>B�M�L��D�a�|��a��"~��N��|�
	/��kP��p�J^��A�7�T���FD��B�|�Q�mB��♉����~�r0�2:T�	�F�A��~L���$2��8����RK�b��2l`L%U�l��������mn���O�y�:GB���:�	�sذj�*+���!��D�6�m���~�CH\�ta�V%��f�#�g�Wܓ���
�Pm��E܋%����S�pX���c������kWm��Y�J��rc���(Y��P�&NSC�m^�(:�c_�i��D7�ڠ��ω1#��m�Z�4b�|�:z&$�@'�//��ۂ�e����"���/g=��%��Ă�e����ME�e]Ӭ_,ɲ20�T0���7��$�H~1)���C�p�"�S%��o":����O��8ly����1)��^,qB�S��S?��	�bK~|�Rm=��v0`������<�g�>M|����Ț���ND�~�P��-|��O����=�jB���A��(>�o�����ds�W,N���w��#��-�w����u㚨j��8�h��y�B�w�9�^MV(;D��#3�7�/oA����L��$�#�B�AMd2���G�5`灥6u�:/~c�ϫ����H&c�����+<ڀ9”l ;]�Έd΢��M��N/�N��ي�|���-}ܒ�y���47iO��$�[��m�S`�����R�\]�Rˈ�u6�I}��2d���Z۲e�S�w6&*`��'���64U�����y�6Kk�#w�rM���~]����E�-1Ǘ�����
dH�g��7�aѩG�Z��&�&�k�	~�do�(��}��~	����ʹ֊����*d0c�Of������4a{X�4����b��9}<	�[� ����*��
e~���:x-\���ۓ�}nll잰Šf\04홑���=0ч�Lj��6z��`x:|ͣ5�������#��~�|577���R�
�
:�s"�;'J�,�6n�CH_,�]��8f;����dN⦎#��>���0y�����ʘρ���[ �Unn�`�s��m�[ٶ^ ��
7�����x�I�s�#�e���j���e���*G�W��>"����1x�ʩk����� }����;���u��l�!��e	�&'��$ ��1G�Jx�<���j��9�����E��5��JZ����X[�H1��0�0뤩4��շ�^-�8N�mʈ�X�jf�ZL�B	��_Iv-=_�3�nXt�B&O�!�`��6�.�Ԑ@ʀ��'�dY�Y�܂�Z��@�W,��l'ڳ�)��1�d��W�tQ�TU]	"����I���޺�u�ἲ�bnW�Nt$2ur�|�m���;D��wr!����/'�9�N��}}RS�N�_����K��ٿ��x�w��nB��wP��;�"cRQj��O�2��N���m[Ev������ZL0E���mk��+��m^��XZ{���-�pt��s���7��3-p��ج���*�
�&=)�I���c+�`J)�#\��W�P����<�N
������ ��z�k�ml����ap�^�EӰ���e9ؓ ���ezr��1��D�ʚ���K~�ӊh���Ȧi����@�A��&�b�JB?7����P��� �CF�u�xfu�7���<�F�P=�S�d�.�o������g� ���KZ���s�I�7;�V8���ɌQ��f2`���KV/������B?���d6v0;�LN, �N�e���B�����4P�fb�l��`l�[@��{�B�C�j�7b����x�.1�2�����LP:I�C�H/�X�;ˈL�ό���غ�8ow8��|��g!C���@^N��e4���;�%�VG�:��1����� -`�8E�ժ5Y���ȵ	Tg޴]q������;}��(�Sڳ�܋��?�!,�3�
]�}I�̺��G�MWd�%��L�ި��
l��~������z��ؒ)6�~=xE�v��]F��]a��Z@����U�xe��<�W�#�(�ŵ���E�/��x�j+�B����E9�Q(��q	6:g|�tH�F���b���_Q��R03k	(�N����]U�s�ʿ����:@���r��ˆ �	�I��g���ܕ?�hBq#�&�MfT.e�z���G�ۆ5�?�f�G]q&�%*�e�<�S{�י��,�Ы�}c�f>�^��U����=/��>�3���
� �� �O���9':��Dѽ��ѽ��ϙָ������S�XR�}�@�fB~QuS)�S~되�)$��8v�c�
݇BsJ�=���$�t��ygi�OL��:��9|�x?t*�O~��Î���="Bg���	����e-�QP�h��-2����9�ī������8}����?�ȭ�+d��L@l1�9��ȧ`L�Ao�n�u�s�@�!⇟hA M L��Z*�t�K#�ޠ;BJ�������{�/�ԏ�⯩��DFC��]Z���ئ>��hSn�4�V{l��˳|U����t��ɚ`�
�]qks
��t4�ˣ�sEz6/��̮��{�wǦ܊�hb�U�R�^D��S�ʾ�Vs��}O+�|2��[xO��zԏ7�]Q^L���	�P�ߙk�ɺ^�X�2+�����:J2�3��V5x�y��Y
h�����'��bp�4U7�a�|��@���`��A�7�FyW�ìG8�8$CD5Te�؂���s7U?rv;�Ֆ+��-cP��ʃy}}��$�/�ňs�m'�(f9�\)@�ݱ��Q�X�9)kX%(kni��j�;��rۇi���T��U�T����^E��q�,�]c�Ǩf*g��k،��9�*qj��Z,'���S���Tc��CNQ�.��k��L��]���sJhM����q�\��z�����!gAy��@8�����J�7p#���x�{�V�
M�^��	��i��ɌR�Q7:R��ˏΪ�u���G����RiΈR �`U���6�t*�?C� ��;�I�������f�3W���R���+���XƓ���)/�l?�)�s?��S�]�		�1`,���F>YWG{h�f`r<��y���m��SE�#1�wW��;���P3��Y�D�Պ��9
�.9�ԍ��'�S�ӡn�e��Xe�U�zŽ�S��k�kP���g�GZ��ό�s��:z&��p��(�<8h�
�*���%qU8����4��%��VO_��h�Ϭ~t����F-�̼�g
���r�^z��L��h�Bmg��5�P��d%>��))��)�
�!�%�����jO�Z�9|��c]�{7Uo������Zc�5��K��;YsX��3�Z)=^F��L�q�#����^;>/�7���~+������NS\�M9
�,���C-Mƪ䥔X���R�dZ+!	�
�eʿ}���,�ϝ�:�o��g-6�=
H�|Q�	��s`�!�a�j֌��B[�bW&��_~��s�}�
�ݲo%1��M��m���i|-C�G��0�����w.�+2w���'a�T">A%� �3�!��t�
}������)����,�.{�ׁ�G�SIHqI?Uhmu��"��t�t�6��‚
�Ag���w��z��6{��F}DC����\#]�|4R�Ł���B��U��v؆���o���0w�B�e�
�e�'X����v�>)���)�Q ���Hrz@�x%�P��{F�Q�`�=�S������2{���4	r`l4g�Cs�
�ĈX��2.�Uz���<q�{-,Z�G��-�^��H"�t����9x=�#������c��uP-?�m�yƯC�!�_���_��:=]��~j?����2�ˆW�3t�rpA�Eh���P�X�qnn'���xN:r�o�[�9�ki:V�|�܎p�̟�m��m66^h46�0�sO�9c�]\��"E8
ݸ��l_d�m�:N��oY��ƒ�J'��]�����q�^�k^������͵�2���c��;�a�_Qc�L�a+T2=�Y6v{3�<�G;��&'Ҳ�4UF��^/��3��̣�րq]�w1~{/� 9��멕Ѕ?PG�o��U^��/�M���ᖼ�0�����ܗ1G�ﬖ���*����ev%��]�l���Q{M�����r�}n�G�����6�n���yƗ8*c�z.�U�\hX89_�s~
�G�{q�y��UӁ;�Ԩ�Mtm�5q�t�кC��ƐL�o�ێӏ�u^���n`���c�y}�3i�?5�K��@�y�����P�Tu��3��`�C����4@t�S��O��-_��p�Y��u���k��kW7��I)aR<��N_�r���<��+�O,t�r���3�⨧/�y�A���$a�U��cݞ��42͆�ܐͧ���&Q�1�Y���Z��]�J�RIagÛ��&��x%������Y��LP�ȟ)��Y��7ٚl��s��%9�\���_>��n���^CϦ�t�r���O�ܕ���y������w�����T-�F�}.�i�����C���l3����cG�O��qSɶ�2�v:���]�`�Y��}�J�)9-�qgڤ�^�����\���1���`c"�H*�=߀�bٍ����L��؃�\�Kf�8;����_��g7?5���}���E�O��s�w?���?��b��ϔ�;~�c����$zW<��c�E�����\����Y&�����f��
@�u�[f̥�3S`M�x�p��K��=Ӹ��m��eE!i�#��;��
ߑƈ���7�\F�`���-�H�ӫ�1\���/�YW�n7�+�Og�EJ������\�[R�׍
C����,�/l�����-%K�����x��(��+!gy�N��=���6�8�u3���4��
���/$�ͅ�q�o��HeLWa�
�M��Y"���#���E_��yGi�O���h|���n�1D�XC><��I~i^�3d*�`_g�^lZ0�Ig������CLHO@#�I�v�'GT�	:ٖ�z��/qq7�J���
=�o����1Ӝ.��iue�:�:Kf��Q�;t�*��!��h�"�v������P`�dc�̣,;�h#��I���΄��O����\p�uV����eg�E��E��B�
cQmW�U��
97��9'�0�L�M��ԁCV��	���
4qݠ���$�������H�7=@>#w9�]�A�Xy`׫*���bh9&�f�2��S�\�{%����<�`��zf_���B�&��*�B������	���$|�ht9�axB��&�m��x-3��'��1���%Ma	���W���;�uմ�=�ymԇ֩�tm~��f,h�T�?�;����=��ꦆ&qIV��%��L<�A�W�$���m�����L�4��ϝ�Le��\�,�/Jo�s�h�!���jy�ǿs�^
�O8��������,�lST\*2N.ׇ!���9*�(��e��9�?�&�L��Փj�.���J���%�H��k�����!���_�O�CL�+�?�}��š�U:K[�d��]�9�|�U�LR�W�w���`���2
��
"Y�ľ�<�S����lj��/&�i�P1�[�v����8+9��}hW��}������@�'
2�_��˦
���_xZ`EIj�``�%Ģ�h $�p����[���~V*_��XZ�%/ѿ�U���x�g���+yw]�@}�%��\m��t��ل	�/x�wp)���C(1��H�S�@��"�E�\�LΞ��{Q`�4E��y�kj��b�<�_�.���})�􏔲DX�t,�B`���/S��aPkH� ]�\�,���.z.+x��1:�x!�쯘�Q I�J`~��/�I��8A�j$���|NF�';0�Qf4#�?t��%��a!���2I����eS��rB�a�(#�c:�U��Ե�sA��R���}��u����J5��w�D+_��'���6�j��$~?��F�S=�%�r��6ՙ�BkY��fdj1�%���ё����ѣ�\��)n=�X�Ę.�1�m]�
�R�G�?>����=t��M�D��8	1�S��i�y��!�|XS9H'���%�&3��c��-~:?lb���g�ם"z!O�+x�O��TO���G��F�fTHI��ۧ퉎B ���m��	h�A��pVL�c�1�n���.�a����h{P���q���|q���#��n����.ƽ�3�=�丨@�┯놆L=�t
1zX*�ke���B&E�ԏ�]�g���>�stN�s��~���#�5�k�%��<x���QД��q�u��k�r���]�U�(��!���<||���g�.��F���<�;Gd�}O�^����gY�����)�zƕ�r�zĬ�R��aQXr�l:�@�A��e�)8�t'(�U��Z�6X�/
�x�B�G��,1t���4
uU��,�l,~���;�*�~[eeB��R∞����&l�Xi���:��B�2Ӂ�H
��7:b��.���}��a��|�|YD����7�}�Q��:�=���w۟I	^�����cῙʈ������|"+k<�
<t�8��D�|�@R%��F�n��=��r@�O��G�+Z� W���:���l�5ۤȳ����p�n��79�x�}�Ć�������_⟈d�?��������#�y<y��˄��G���?21a/B�C�t|?a��A]G�k��EG���B0��_k�?��P�(r�2t�e��@�]��^'���1�?�2�տd��=^�>��(,M�jM���
��`��hHJ�c+h6el�&�,�6Ǣ�^>ϡ!i�d	����"�F�W6{��ϳ��ԯ����H����*
uI���'�#+�~���/��~!�jt)�m�����Ա�uM��*,�>[�&qb�
:�`l�Dɵ�'�=�Up�eR�	��W�ʀB��'>��Ȼ)r�[i�0IU�0Aړ$�V"�~b:��]to��Uǁ�*!Q�t�Ș���iF>АfO���#�NE^�JE��(��v�-�q2E�ά,1�P��]�k��;�(GZ���8#��yFw)3e������!r�.���n
Q��?�{�OF>���&E�u��]��ᓽm5��+���c�
KX��:PIQ�kD�� B��fe�B�6�s������e�[3ns�+�;��%Y���0��-���.�["a�
��w����2l�ݔ CYz��s��0Փ[�q`�f������Jr��I�k���vVM�����)��>�����昉��*��۬P˜��.ФEx�]4r�y�0HZ���a~�Bl�>�h��3]P��ʱo����}{Ɩ)���)�؏���]n5v$-��c�Voɥȟm��.|�< �����=�4/���8/�Ԣk���a���w�Q�����+$	*�^ �q}�o��6^v��v6�8�������g�$q��C���<E���B>��i1봊e	N�(){6ך���
�����R�Y	}�^9��t2�7 �P\�L�d᭕�f!\�.jg����g�T���Z."��[�֙��?l*�
�;����!��B�
�n���3�mQ��Զ��Yז9���hm�$�G��'�UA!SXs�@$Jͦ��[������
�uOpl���fZ�<"Ɲ�-Zu�d�+����F�X���gv� poIɴ��C�gr�4���
j�g������Qk[��8�H�����aN�{flD&-G�f�QC�LO6*�"�h���g����@"�`h�o�
*RMv"����wWg�y���R�>�>�ak6�?D��!}�Q1����X�ϱ=�����M�6�z
�2��]hn���Fk�@��F��9�
�#]��$cRi_�Q��<��Io @ഫkEy���;�4
=�25U����U� ��7��b��[�&M�PQ�<C�&\��ej`��"O�b�#��o����5���}*�=L��E���>ڂ�[�|3Bd�����G��MW�3a`�/�ϱx#����g�����g��#y��n��j~�3Ӻ��oI~]���K�s��y�R�^E=�ֈ��ޢU��/7�^�TVC^~F��!���
�2Z��jh������	r���5�&��S�Ev���^]oK�E[��1�� �9�uB n����*��z�wEzO��W(e"N�c{�EXŕW���k�I;�KĠֳfF���~–�
���Aʑ��衍ٮ���1�qד�R�fNu��uL.��u�)�5Q����\��k|�
�q,R�;���f�m�4���1���"G*���O�#����C�PI�vA��AE^�X�W��DQ
��O2��#��da�I�%�9� z��C>�z ��>�;i6w�o�im���k�1)r�n�o9�*o�[d)�x'*{�ёd�mҺא�=$�	 \	dt���-�^��>����H�Rp�1��!I5m�mҋ� �0g���Z��`��N�i���"���r�ļ����}���R[����~�P����d� ��`���۷�m��)�%Z4ٸ���H�t�)���h24��4,�9�I/�% ��f �V��E�i���wQ�I�%y�k���c0"u�3#YL��B�
S��+�.��v��r����A�:)���'�שߞ�.Є�:�"u�N��.����[:�e�,]�/��au3�s�i�&��aq��*�}��|y��Zb����N��Ù:�N�<yH�<ٮ�Bѩ��t�A��-wa
�fa��r�0���g���ۜ�|����,
�c��ͭ�	�q�U8�n�ؿ)5]gCX�[�,��2���";&z�^:�9�%�9ơxWf�C�G��,U2���xX�T_�n�C�"8��]kJ,��iصM��o�/�Y�QCz��CօGً	�Э��d(].S!�P;=׉�|L��!�C3P"ݰT���>3�u\�8���;�w�ig֛�u�����؝��/�Om����m\I�A��a뼴�\��4���	E�5zz��%�Rf�r�Ժ��ݻ�
�\=7b*����
��
�~��ɨ��r�2%��k�N>��.ZT�أ����օ�o�<��	-$#E�L�[dP��`-�
i	&�a*��):��i�gQ��g6o���<Xfgٛ9s�4��f1ar9'��۶<]���	���g�O��m����;��]��	d��tW�L0�3��e�|J��Ŝ�r*S�خ�����ס)軮�̨��y��H$q2��5��W]�,�e������<���d$�}.��k��(\��*C
?gF�|V��t���Z�e����CH�V��Y��~ߝ������+�yh����́�t32�Pqf!n�gI/�sUЦl=[ڣ|�(��kMr�޵�r��t��9���e��Q%ߪp��S��9��Dg���)��n�J�\G����EB����Ż�luxk��Kϊ�.nE�����|�ϲ�����S;�Ҥ<P�Zdž��(Ek��X&���k42%��!g�-����^����ۛi�-�D�Y��SDS�i	�b�8�4�>�	S� D�+S�x�g��6K[��/>��	�z=t�9N/�%�m���n�N����ϼ��^՚ܡ޷���xd�6�����@:4pI�g�B/�cF�)���K�[*MW��2�w�Ը��xeeD6�DZ�vM�
z��\�'׃�D�z\�ϼn�N{ɻ�He��1�x�����?��0p:�[8ȔZ���S�-�ռ-�j�o��<'����#i:�T7]kYߟ�.��n'$��##�EFc5�| x�=k��9K-a	���̩ͬ�'d��^?��$"��l��֎v�eT��8��躸q��*{�b9q�^
�$;��eX�#�F��D�<�Yn���
ˤ��H�J�}\7	!ф_n��>��<Aj�M��c\�gr�=�^� �ӚX�'�	|��;��5^��9Kb�5
U�‘>��$�\�3w����皙����!��%���I5�P�tB!�pku$��,[�r~P<�2aқC`�aa��8x��s���Ϊ�����l���+� �6�zĈ��Xx�*��@�B�
w�~�p�V�:à.�R$X�dF��X� �&�Gd�?�}ZnZ���j�<G�7*+�#M�L��ñՇ�׹=��MYD!
��k��sf�I��� 3�e�CN�[�9��L�á��/3��V�$c�a��*��1��yU}�6��N�"���Sx#��N�������,9Ȣuhm	�u}�"��߂�&Grt�~����{�8rlC�C!�W�0��J�6�u��X���ǟ5<����M��.���=϶�M��9������>5�<�URy.�͸����˯"@Sg�Ϛ���*)]_��Ѩx9Պ��B�7t�ϡȧ'��USKXse���P����Aں�8a�6�9�ף�U���BG#�M����mc�\�S�v;Y�wlv�~E�&G6�0�L(�:�\��*�L���#Lgs{L����<��ޓ]S���yfCL�Tt�]sz%�
tV�˵e��5��6�!�x�$p�v꣆h|�>�7�J�$&�jCS�lU��=�{RxtGc �Q#<fu+Pn:ѧ8i�^�L� B���6�¸���k��{22��b�df��z�����yC#`�c�(���i��ϊ�,���L���ȋ��-��O	�!�.�˦L��\#6c �:�#�U�
p%@��:�0�+�@"��h�<�<IaQ"Û�z�]H���2��A3�@�$ �{����߄��}�ڠ��/ދ\^�A">z@��B�{u��w��˦J���b\r�Tz�S�IS�\w+�e#�.1�y����4�4�ቆY�b��&}��*��q77h�-�rB�u�;W�ԙ����h�H�ø3n�ޓ��i�i7Y�WaE~���jh5I���&�i���g��~Ҽ��
�o�=�Q��Ք�._��5+�s�P
2���n-XF��ڸՉ�?����p��h
`Q�e�W���p=Zs
�Q�8��k�,�B�y�/Ы��r�2��>�,C�%�^@,<�1Qw���~�-���:��W��Ӻ���iy�Nr��e6���8yekP�PŨ�iO�hY7�qh�� v)��!�Zp�����o���v�2	X�G!�䓞��mYI�1��Ҏ�h�ľ�z��_�G�J�2wŻ�#���z��&�u{ֵ��)�5�u@x�g�<�q�7Ę4���<�#i{�S���?��W��2�&[.:-���Q%�R(���7�Y�c�&�KS�xoOc#����W�V~��}W�~[�ulEk����z9봒a:�U�؏�2e�2h�$p���?���i��p�5P}ǔE�F�'��2��XbKH"d�O��,��Љ���eMV#lֽHE��պSm�����e�ͳ���G��ʜ	*��,U�-�M6/\��ye[�j���|�����#_9Ӫ�L4�/oI���ו��$��WU���<����=�gͮ��X������(99OdK..Y�j3�7`�kNZ���7���?t��\ٌ��#���++�|�?�I����g�^k��-%s�z��G�oi_��%�s��W�#D�ׇE^������:�'t���843�I�A�J�{8��:��'��#v�'�C?HPg�zfX˞4�P�fؔ�㪸s�H<WU�O�q(�7��|r�m'�ưZvc/2
�Q��eF&p�����{N#ذw�d�
��J#ަ9��銉A/���E�?�F��/qt=����^�xbp-Z����.��ncK~�5]��
����yDŦ-G�1����9��vO��L2�I�Ië�|���^�������,���'���Viff��f��&G'F'�Dz�l��ӟ?��%Y���w-�t�w��x��'�H��s��B�]mu0�57hE�����5��o�So���22���(�d,�8=�Y�}�K��	Dj�Ɉc����+Ď��<�k���!�ΐ��c� �!
��I1Z�~�;��➐���Le%(��
�N�܎Q�6/�ĵdj�
*F
��+^	��7�=�2��+~߿
�na�޿�"e`�nU}�g~�@+�5i$������۞�����_�$�(~�LqW�)��O�$�=��w6����Ɨ
2��0���p"��j�ݥ�nx;eINU���c��/r�ޭ����!3�p�	�(
��j���eMpj�=��'Ά'�c1�Y��d^\�w>�E��Xg�Q��8�.	�"F���;�	��������PD�= �C�l��,����6���S?x��cQ�\��Y��Od�G�m�J�wᣒ��=��M#��T1)�����,�i��2��"Ġ��Hz��.�4
a�#;
E\��{Ư���ͼ���iHkyLN��I�!}tg(g���̣��^��:�,{�dy�p&��ܵO�Ot�K�4�M��2�\��'l���dH�>E8�AU�\_&��8�yQf/.�b��)���e$��W�UCeV� �3��*��Y�k:v�ͦ*���}��4Y~췘�z�� d�,>�2���l5��:u��^���v��&qX�-���x��%up��6cul�Y�D�o��B3���eu�@�D�gzX�t3��l���&Z���U�!T�J�L��l3Ȕ[QXQz��G���Wql@��z�&��lO1G�gX�Eh*���T�L�t�a�J�3��\=Ҍ8+�:��G���� ��@$�M��2@��v���xK[H�Pv
k޼��)	,طM�����6�#���nmxz'��/��޳�}�.S��y��]!���_8o��sk]_/�i�d`�wu�b��
���q9���m�͇fs�d:g�K�I�@�L��o�[��Š��d|<g�UH�Z��$q�L��c�t]�I�[������ӈ�f4(b�I�p�})�Ȫ�S�*�ɃAp���c����t)��g�][�O�S��c������Q�#Au:��]�W6��D�H���m��vM������"���X�UU�2�M�#-R_�w?
�FIIr%^U�Їێ�pO9
'��0�	<��y�*8�Wk�BiCt�-P9�6����*ӆ~��e�x����{P�H��d�8���t7��Q���Wfqna=bl?3I�X+$�aς8gu^׌a���>�uip�f�7I�8��[�=�[��p*��=�P�$d�4�zQ5����r���!�Ȣ����I����>4�,���:
�Xs��ze����GRw��t��2�-���4�����j��'����"��.|���g%��]�ەv���:I�EN\�7C�>U���,�r	�<�iv��nu�����@�b���Wq�\�ϹN���ڪ��vց�'�Y|_��6��i��q�T������a�< 9~��Y(R)�^خʚmM梧����gƾk�2K‡��N\j�j��Y�p�l���Z�u���"���q���h�2�L0�(RfKs�ϓk�5�M;���@�c(R`���E��/3�;ț���Q|e�������M!���L��k�M�^����k��W�S�fZ4Z��>���xO�����)��ZR��%��ܜ�߻^��Ll��G{��:K��[���OC|�LwK�����oZe���<[�=N⻡Х���^t�]�8�P��i�
`,�c������ПR��nj�v+{���̆
a��RJ�7�W�s,�H�,�׭��s�DI��i�l�Y���V�uײRy2�T�������2�?D�J�V��{��_�ܱ5�Q��,�]�Fx�>Sֲ��_`ʛd	Ѻ�a��I<W#�v���<�\	,��f��l����o3�ϡi�R�3��[��xZeT|6\�םv#���u��9P%�+��H�u�s���u��&��6�О��&}kYMX7]�j�cW�,qϬ+�}D�m�$�탡��tf��b��]���ɽ@�t'B�)c�K�xEN��KrbIܔgh;�����Ӛ|�vx<�D����s.B�dPx
���yZ��j/\"dz���;q}z���k�|P��~����#��/:�`�" 2⎮p,;4��:#���g�8�-�\�m۫�4k��kā��ֽ�ǎ��Z��z�܂�H}�R!ep�y:���JJ��N˰�"�;�FQC�I���ԟ��qGL���?�f��B���랁�#��p��:�I�|X�[�!v"ء��04��\���:#��w�s\��g�/��]>�+�T��n���ќ߽7��}�VC-�J�<����5�bw��U�l��ƃ܌�C�lP�.����|��c5^�
񠞄��-<�M!g$A-�v�n�5��6!jU���;���fK��D{a\8�|nή��3|?3)�P`,�zȭ(��o.�r�㿡�>�p�n0{��#�qҔ��qcj;ʀC�-=k�\>t�<AR�Y���sN:ő�e�3ț�$��m�3Lg���f^�ꐼ`C�g�i�u�x޲(2��Ո�Y*���
ڳ�,MꭰU��[�T�l��Pd�YOm�%�{�"�˖b�.�[⦸�YӋK�_��S_k�`n�E�FCt'�1��نUy�T9�p�S�8vԫ�<Kb�V�-���^-���1v����!��J,W�ƟD�p{3�� �I���R�aN�Xu|u�
G�h�Fc�Y��0ZH��z4�e��qs`(���a@o	ʀ S��>���=�Y��24I�l���i�&��/=��5U��I��nErD��Y��a�A�D��64��P��|X�cQq��x Z�j�ęu��Nbi$���5����
��B=��ȿ��tΧ�JߕYt��@H��'K:�]i�c�N��ǽa��%����A���ZJ�Ө�{D�9VY��vV� B�8�V(jN4�Z�Y���ȗ�A`o3L����Ok�F���+J��7�}�����ڱoh�wa����d��W&��V�k�J��-lO)�4cY$�-��"�w7��?�O[�zo�WE��Q��S}N��+�#��14�kK�~p7к��E��[vJ*t!�SV� '�
��������–��09C:{i���K�hy!js-�v��?-]0s��/0|+��\�A�w�5I��L`�\����>_)�*,�L�q��Ɲ}�����`��G�X���(��N��IF{�\q�G��W��B(6�wc�b��+
���%	W,![|�(���(�c�~u:K�Z0�q�+b�����/�Տ����R�#�( �c�l�Fs��*P�a���"��
I��_��ܲ�"E����n5+�L�y�տ׿D�IS����Kv�bz2�_��2�+��=<
�
F���`���/
���e���t�G�9�Xx�>�-�9Ÿ��9�v��f0�a(��6,IG�gT��-N*:[�R�9��,5��sY��i���W�X?o�F�<��*K](�f�"�>���K,N��I<ŝ<�O�ڰ'��U�I\�f3�2��v��P�Ѳ�ޡ�#�0��e��"f� 7@�Y����K�v#'��Bj�,ƥð���ʀL��s�3.鴰�;���P�(��s���ID�/Y��T8����^M�m�����
O�	����flg6��g��K�
�w4[�������]��B�*�grƅ�)�|�!��
֨(�Da�k�q���;�5�#�=lQ�ϑ�Oc��mL��R�z��n����]3�cU��whm�C��l��_���{%����N�[B����VԘ��t���*1kfv��
����+#�A�"e}Wħ��6�M�i��+���ף�=��G�Ҡ}S~nrG)����y���NƄ.Z��(�ZqC���(�-i��{�I�]��٦��K=�%H�V���q�8��p"��l�$C��qp�f�e]��EXD�E�@�_Hԋ.��/���	���B�ɖmƆV����{�"hÆa�ם�����̋��+�a�)���)!ALD�	`���(�ȑ�]�`*M �J�9�a�!	�j��A�Ę�����R�#����c3��r�'w3��d1$&�i�W�/i�аj�C߮�*{��j�@.+;06��̑���l֜;9�ksυ�F��En��v?��"v�Ǻ�q����E�Y^H�w���/�p����s�t�Y2��ޗ���k���$�3E�8Ýh��ܠ>`��`�0�G=�vn�f!��\@�	n)���Z�޺ެa�p�H��;3��_9�� �{β�s���s�[���K�Q13��ө��|-&�����	xyW�J��G�Z���p�J3��h�
�C��5��ӭ��3gR�	�hS�B`7e��"7��/��l��"��p�IyzI���j�D0�p����
�������x���k�2\�'�U�����f��j&
�"w7��՛�0��ݱ5�Z�C<�_ۉ_��ga`�}y������d��8f�ؠ1_���d,�t�?��چǎmR�@2����J=F����+����?ɏ�0�w�2�#ۢ�K$x�@7��Ԑ�w?3	%ۘ 9�s���q+H�=]8v���c��B
R��½�Ő�\��.Q(���x��Q���-����"H g�HqNa����&YT;w9
}S�Y8�+��PNN�4�ʅ��g���5؛ًie��n[W�g%6�k���N����
��W
�yd��{Y�
&��6��̝q�Ñu��g���<��<Ӑ%��BV?��,��A��Mo<鋸�p�V����e�r�ܐ͚sU����	��p�S�\\���8y6�$v$�;���H�ޔ�Y�?�gv,�%Nċ��eT0�Q���>�~��*�t�Y�<sO�y��"C�A��j6Ҥ^�
Yd" �̺̺�#��H����@Ao�܅�+�@�YT?�짠e�l�F�ĥd�0v��~���m����l;l�'M�[Nz�m��r�N��$
	��b�BM2~����˺�HB�iM��d/%�hW-[875w�ͨ\D�N�.t+i��	?}N�Λ�9�#x�ҪO�#R�	�@��`��*Gw��Xk-�'����x�ѭ���n�e�f�g�X4K��u�����7���dei�D>���V:=B�~"r&��k� ��C�����B���V�)b1A;��I(]�r��b����]�5c�a���R�����dK.�5si��J�K�л�M����u>���q��������RlSUhah�a�ܯgp��Au�4,)ax�z�m%C���ĩ������h������:��
�Ѵ�3�U���o�ɛ�,�J�ϧ�ĭ�e}o&�a�i;V�1W7�q��Y��!�����G�B'�',�`��7��`���1hj'�<ߴ(�v�_9�r�>��@�'p�3f�EAȄ�BY�H{�>��e�$.��>wް`��":vi��i��x��D��:���s����"[W�ў�Bm���PQ�i�'�=�E��I�ߧ�_�9B��}�~ᯤl��"�;W��"�pC�1{
����",տ��И��!<�5�'p����g��% t�?.��$�8�O=�J�9�d��Fz8	�l��ֳ�$��5e]�))�E$�βbR"���T״��9&�˭=鯗�a�����ʟ��=8
Q��vׇ�`}�r�^��)��Y�݉�+����K`�-m
D@anK���t�k���b؈`���]����[�9��SgB�%m�.x�‹�t��8�}�����S�j��-�KO'T��7�[���ck9<IY�+$�	i�&ɤRX��(j��R����~�=�fR">M�N��ɪ�?-��i)�b[�jCh5}�T�4]���x�Itf�T|��ԣ�X8>���8�qD����ʖ_سq�/V��
�ʄ�AQ��iT��8B��S[�1ʤ�b����-�q��d\�U���"}N�MM�K��7cW��k�,Ŏgu*��BȻ���ߋ��)2}�KKR�D�A�C���:��r�#�^7"���%V
C�
�᫴�r��>
�'֭�@��.���S�,PD�����A�N4w����F��V�����2��b�:{9�����Ġ��3hv���@�r,r*���O���`�4���!��%y �q�%�|�T���&!ʉ=�2i���mhA�����J��B�������}8�̀�e�Alf£�w›�1A�q=?±�r2��y,�q`��8@;ɢ�$�-�7�Y*��R�o}t�#@D�.�GlG�>g@ϳ-���8	c���P5�D6��a�g{�ZҊ�q'g��q���$��V����L/���aJ��қ��,,Ֆ����1����3W��b˙�Z;���Q�]�%�&p��x�Օ��e��[�e���㲔XKd���ւL���ù8^�h�"�ߝ�s Ѡ'�����	H@Z��bC�*U�wRX�*�_j~d2%��ֲ���y��A�_�B�
���C5��˽��ʥ��0�'�	t�'����x�(G�P� �A�:kH�0����s��x���O;�1b3RDV�10��˸lQ{�j�(1�@�ŕQ+k}�S��.
�	X���
��ç��U�"i(F&;rȑ�]�d�uW�k}�FO4�S��B=�xZe���zw�l�.+�"��Tlj��n9�BP ��_ʬ��P �q@1+�^�����\u�;�,IX��|�3Ӓ�Z���x�tFu
�)������m{ه���L�C����T4h�n` ���*�y�
���(�s@a
 �$�,?���lW�?��[3(|�8��^�hbO}~��>�i+�Q{�d(m��y��s����(�(,��
�Z��չ����,�I�pl���N&��x��~�^E�z�n���HzR8�C��(�!N��ڪEA�[���:�!�a.�B��l�7�3�M[�y�r}Ї8-	�oe�E��m�˒;*6��ooE]Ƭ��Jh�G��?O�RN�4�w`".*�j��E�[�
����y�=���G;���Jf�f�Z5�$�U����j�̐qM3m�	&?e�i32����/���W�ߎ��2!�����O����q��9�hDٚC\Y��,\�:�9�K��2U��K��Y-��ݱ��S|���C���A/�O�<G����m%��������g���WB�R�4�--�#Ӟ@�0.�ZK�KGo�R���N�%y@d�%�
���(!	%���E.:�,
Hh�o�K ��/ �D�xA�8huXU*f���DTUFw6-	h�?7��^|��z1�ǁk�2G7|K$��s�EB�!��I�ކ#�FG	���Fn�i E_�Qlo�.��n^a�xB���U�0�S��3��7V�)�&p�7��bB
���B��n ����&5�F�䙤�Y�Y���e�PӡԶ�pS�Z\C�%�=��k����X�7�r��0�o̡0Xn%�4w�����A�-a�W��sy���`���ץg�R����=���cZW�=,K�"FD����G`�K2�t�/ă8��z��;�`L�a��€;��Z��d������$utɽ:��&��Z�E�m�������@Uڀ��pR�)<6�@oq��dy������s�Ć��Og>o����pЗ�CA6o�&#�
�Q�S�b8/�KZ��##�T��*c�Y}�C:�*��6W��S�VW�j�[�>|H�hIٸ��b�kh%ڀ
���d�&kudͱ/Q����=n�8�W�N`�&j�~��k,#Q���>���uxlZ���?�U����"N�RX�xH>��y죥h!��f�O�|?"�*�K�c�r�l� q�RUciFMC����9�M�]9W�J �y7�3o�S�
�<�a�#��nKR��w�1�a(��#Y��X\��:�!M
 Z�B�!]�e�Ï~�ݦ�z�a�Fy3�I�`�@j�Np!c�y�.��ݝL�Η�d�a߆�	F7�����ٶta\[�����-�s�����G��u�_��3�Ŵ�l$��~z�i�V{B�1�]�HE@���c�Ve�&���ci�Xpi]U�,}�Ɍ���ΈĤK9��h���-��5N���q�9�ƱGm7�ig=�T��*���u�C��T�yo#)�au�h!��9{Y'Gs] ̀2h��ᑑv�BB5����Y�>�j~|��	R۟~��'�h�n�_�`<ʻ֘
�2a� �G���H�xDU-Mk|���@~�aeGt��
x�$��y�,�c��$����U���"H@%���;w苌bY����Z��?*��?(E������ �ӻ�0��/_��.Yۥ]/���H̀>��F�?�M4}�7X�D�>QR�A�X�ҭ�3Xt'��x7|�Y�<�@��:�����7�������cK�|�gMҾy�Mr3�x�wm����]��M[�(|˔%��1�H�4��۝w}o��=�Х�#p�4�쟬X�����,C`sKW	���?ezΆ���E[
��c̩-D�~E`:�{�D�:�(��yR�:�r�sZd!7��ȓ3��I��l	We�"�~X5�����*��7<FR&�M�����KY���}
r,y���F�g��j�L��"�2�+ɞ�DA�U�~��Ē�� 	�f���2���G=Ե����s�M�ѧ��:[�h)i6�d�ޓ�GZ�	��AsN�խ��=���C�h�x6�2�>��M]��-p4�B�u�|��o�(tm���9[ڷ�v��t��yM��ǕK��8e;�x&	����pnN�H���h���n�a������l[��
��d�ڍ�C�I�v�o���׬�Rڼ<0���{�:׼*Ez�H��˴$|1YO׃^�՜�;�-�9l���Kך[�����n�|��H�M�A*5*t���ɺ���N8���P[<F0BX��Pk��4��&�=�R8V%���a�H�{��a3X�P1y�Tm��t}��,hz+�"��7z�L:�C 
��*$��(
�r(�{+zß&�E/��yG���j��6�^fCSFפ��wޯ�#M�=4ZK�CLeF�`��C!�ل�݆��|�x�0�Ϙ��6^�9f���Џ�2���7�Z��"%��R�q�G��,��	����)������
c���zz�~�>ܙ�E�~k���m2&A��'�M�܌`hevZ�j�@+���s8gS}k���F��l�Y")#K%2�ㆃ�~0�<���L��dh��i���w����:��c�@�bu�/CG�+�i��ǃ�M��$�7	�M\���n'��jʼn��25��`�KdBT��]�q�U�,�n�A�نp���$���4��l7�@��:�4�p�Yo���הY_���%�[*Q��=���%[Hx9Л����{�u�&K:xF��^&�G�J�~YF(����=�r�~��@bX�c�I=߬�E�b����nBk���)���aְj��kV��C��	L%�
͸�0t�eQ�v�:�x˜F��a�6_Sei�N��c+��d���2�~4�[������L��÷-�)���F}T�"�,� 0,u)W�8B�$8�a��㖕lx6�����������v��
鶿�W�$Ϧ����֥.�����oXX��t\��^1=f��a.N}8��lvU�zW�]��\'��V�����Uc${���L��m�%R�bǽ��0�u<���7L��k6���_�}(�T���,yS̷E���?Eib%��ߔ�˒�;@�(��r}L��0d-^
�A�����4־�c6'`1���n6�³<O�X!�8:� >�,?���Z�i���lj�h<��K��O!�E��ۧ�<��N.a�hT��\�4�Mu��g㧡&%�Zp�$$-�R��D�m�7��d���x<H�����`�aZ�p7���
ܞ�p#���^��&b0b�1�`¯��;p}Y䳃K�p�!t�	0i���9\�l��?V碌lw�Ky�������e���1��>l0NMCs�C�TY�9�Z.&�A?찈fR���,�B`��m���Qm�"
}��RX���&�����K#ؕ8t��h*����3O�7����޺E͜Jb��t"�Xs�%��.�	���$�H��WN�~U57����n��9O�}�q_9�Z�3���^���h�EQߏ��J#�0�VtIS0V�<�gba�N-��fjl2дH�p�� �׍Ʀ��j��̍�&�����ҁ��� T��_^N��f=���^���P*����ߗ���5Ud�I(U��u���0�0��:d��\�g����6�f�$�`L�����X�!<���2Eb�wٺ:����l�KF�-	��ӟ���:��ב�	�[߱>�=�����FtJ�g��b(�7Fu��AG5~���9��v���ǂ�|l��
m��ic;
g�gd�Ww�Zů�����K�-/���s�6R�ɞ��:;뺊��gg��@M�K��[u��^�U��c���%VZ��@H;��O!��k֋��a������@L�B.�Χq���
=�b�o���h-o����Y]c#^`~̰M]<vlMn�MސOD��.�H���
#�HU��D^qn���<�97Z�-�#E��������w�K�l���R��1ƒu�'^:���c�u�,Apbo:��x�Պ�c�؟�h�˜�����d��
v����� ��ay�(W����D)�
���r6�����K�'Wp>"F���Mۚ��*�M5��c3�(}ߙB�X c��M�����!�!�6�mb	�li���a��{,�%]~�P����z�e<��ߕ(�Һ�b�:Ꭴ���`�@譕˳���I�N����oo<�T�3���o�Խ�B���ׄ�y�-�Z�z盥�ڨ�u�T/A&�0��V�۸�V��N��P[؂=����9	zLp�׻*r�@�YQA�1��
R{
���v�o�E"�1
pc���=Y�+W.q{(k�^c�f p-����|GBC/A��O�J9�����W�#��N'7Z��C���Qn��P�	0p�"�����k~`Z�e��Q�m��~�cPe���҃�PC	�,fe�
��}�ðAK�8#�
�:�F�'
�8��<F�s�N�d��Bj"$�q�u�ġ$�X0y\=8����~Rx�J㫠r�{�9���o��<�^C�>/����n#�BB�)�N�}I�<Dsϩ_�3�CbY0�5,S�I���b�Rvu+*`h����`�_aD��̀ꣶz�������0��{���,E`��X5�ҘEE�8����£{��|�h�����%�\�QUpSٛ%
�ūH���48�!�>��e�2q�{��vXc��BX�0���ko�)2��h�*d@��!�t�#�x�6�t�PQ-*��:ْ��8	h�#VpSh�8F?�_z
'�����^�
��C�:ݥ�ڛ�+Ř/�i�#HA����|�Q��j��3�^�5
��6e!�oRC���j"�ب0A2�f��z��y�B���vKc����7�϶ҍm�Q�?4�zFB���b�eP�at<�@�Zf��P������!$�a���(�k��бs�\�>6�;l b;m��.*6d���x�3�a7K�1���H�_�W��R��#B�4�"�4.B��{Aqѣ�H%/�a0<�������wAJ��n$���!(9�%�	ދÑ�K鰠�T�0E��x��Q:�u;�J��w��*3$�C��ȣ�ْJ�<���C�Q+`���Xĸn/�}f@a��){�]�d.
���� ���Al�'�g����x<�G�
\��p�������);O��;��*�	M�g���W��>�sS�rIHW�X��c0l1a~��k-�D��`�c��b��up���c�2E&B�i�ƭ/���җ��(t"�R�UOiqI�����l���ʒ�z���V���b���x��Y��,9�d�W�C�;M�X���=�wJ�ژ��+}?�JR⮺���$l�$zI�f���"�@�;�5\��8���Z�ٸSp9���e�yyeb��n[j��j��̌w
�l�b��}�;V��^#�SZ�����P�ݙ9�;u"�l�@W�,���
r�r<�\�?���I����>B�1�Af8Zz�(�߸?Ș�m�tS	��],�9i�I��A甆���}K��cfl
0^���
)�4	�:B|kzp�(�j�(�����Ս}�N���Qŷt��
0�l��*[�I*���	?��{��O�s�ql*Sy�Zۨ�B
�jw����ޭ�x����cf.����*l����C2�U�.f�l��L&�F�wQ�Gʼ��x�gq�_��W鉵˖k��+���~{��q=��NVf��	���S��Ql��������#@"ɓA�̳�\۰�Ȫ6�	�*Bݴ`��"�UBi���VD�o�R_$t�>�xj����olO�<������n2�.2Bg��t�oώ�����Wg+QA޿۽�J�.�ԏߔ��f�h��y���)�q�TZ۪[^�t ��Y� ;���"A��r�eC0(-����pa�o<$���DՇn�����t���g��gA�?�}=r��ţGb�#���<�2wDNj��G��ϯ�.��:��^�2���~�@sH��y�/���#px�3�k0£�|�:O�Ӏ
�>h�'],ϣ�O�J�#���[���U'�	)�K� 6%8�2R�`���yN�2�y_vvE����������J��@��H�QA��{���f�ѠV0��/�(���$�m+(��9�|�x��َo��"ξ7���l���-����(9p�|{���V5�V���ܱ��.b4�?|���Ժe��ʰ��e[�0&�y
�n�U��t�m�&�mm+�{>qXBw�AS��
�A's�++�<k/|l1A�"1��㋡�-x��c�<�D��<�$���E��It�;�r������tHe&�	�ʅG�r��T��!�a��T���5�p�UG�̬�:���y3�hM9�:�V�*����kI��8̋Ȭ��<�`��*N-"�eu_��v�"�0jy�E2���������+Ҝ\����~ɱ!�|)x����ھ�cC�n!�u��7�'�@�����s��tI�"�	슁��b^Ÿ\2bϫgx���$�-dn�����d(��q8?H
�M�f�q��'Y�c*�".B���'үTD�g�g;�6�������L��O�^$�rQaI��<=˗f<F���6\�Ȇ��O�{F��_A(:Zk��]�gQv���Z����F�,�l��B��vG�gu��}�q#�
�1 �rǢu�����/�L� �X�B�xM@FȳkL:�#��-�DM��m���;77�˲��gɋ��;aE��›}l��tM�����0j�x��Ĵ�"��3/t$��V�[��V�H��#6���Vr���g!1,�@�o�}��8`�="���65�5o�CjW�-	���lvBG����Yd�X���0g�Q���x����e��d]e�<��(̃#uM��^HBWs�U�7CY_һ��"��g*:U	�̺�(rx��"�A&�FE�����ub��n=g�L-4�X��U�����g*�g~�l�k�1'�Q�ƛԯ�cW|E�B����k��R����c�خi��2GE��p��ݡ��ν(�ӾA}�`�e4� ����m�؈m�wK@b(g�����\;�||�m]��"��ڠL�*�ԦPڗ�$�\Y�eR��e��	�N�� �⎝VatC�O}����%��k��)�;�K�QZhF�(=�7̜�_�ȡ��>��wy��j�xr�$j7�7\��!pD½��Z���f��7Mr�H�k��wm�zoqѥ�Q�7��!�����L� ��ٝ�l���gy��>�X���Pom��>�d��a�AB�u�0Sd��:���b(�1y�=bqciI��}.�E(Æ5[E.w6��㡾R�X����|�>��j#�2hq���,mol�I6�|��ܹ��Gɶ	'����1'���v�l��G��p"��Qn�$���$I�hD~�vVzY�l�h�mF��,y��dfk��z�w=T��~E�zl��� ��O��P���w8‚�d��hِs��y`���e�:	���7����۟%݂H�گ]+��7γJn;6I��V����'�� "���	A��o�(��U���PTz��#� � ���݁Nqkz)�:�L5O��B�BB�m-�+QS�
*D��	���5���	b̖�BE	����ڠÇ�����l�\ho�����������/`G����έkW���6V���Z��r��w��_ש|(��k!�pg�LeBxp$�,��$pZ����_b-�=?Ótm;�@x��dd�m�:a$�t�e�되�J�}���\9��y��8ʛ���;��6�d������X�7_�}�q��%��O�u��A1ٰ�i�K�������,%����^�h�S��Р��~u*���
S�~��MQ/��~Jr��G���I��%B����-z���+��^;����"�l����X�/gЧ�� �OJ(72d�������*JF��.�aQ0�x�m9�M	�Mq����)Qz���D#j�30lF��V�El�A�Ob��=�Ղc�E.ZeT�bdn8�M�_�1���˄|/n�h�n�C���u����#��q"��6b*FN	��ɀy����?��c1���u��;�I�)�LS�����B�W��WR�.a䲉r���1*��P(](-F��
S������O�}YđUe:~��"r*��q�1	0���Քq,�q�8��Z���>)_'��R�M���@����61��Fa��)�6J�c�W^���W�ʎs�������+��ڎXSDX0_BTgT{����B4��AY:�K��Ѭ�_�@��}f	��8�c�:Ѓ^H��|�8�^vc�Fs���`��=v��o�4~Z�.=3�*ˀ�Qm���vSu5װz98�@��/ڋ��+���,�2K��A���b-9��з���P�Htr00�ۨ��E�#��n�u�<OלtOY�WzE�Tsu7m{mF�����.�������CȌH����@���U�5�oiǑ����J��꾃��co���N/.1Y���<�'9
'&7�^�k��A'̫$8.��W_0b�����-y�G�/�3'ڬuɅ���p0��W?��į�m��������L�,BK	C�_M��G�al� ���)}Ia1���d	�V+(�C��up�~�����}�k[�y�"��6%(C@N??�\��j&qeR���������S����E������"��I�TUx��1�{���}�K���.Niz�a�3���<N%��O�8�l�|~ Ee���3�d������wڌ��.�~��FOڜ�!]H��N�d
��#��0�Om�:PJW��[n�{��H�����r�V7fJ�eg͙�I�lcV�� �Wv��GHx=�B�ur1`�tp��܋'��#G�9����r��ll����V:;wGѽ֞"�%�]�Fv���b���aʸ��L'TW䘯�%^x���`G �i��Ia씁�����<�k{���#�'���v��:=e���-$�P��Xc>�o���]��i7��ߞ1��O��v��R��_.�:�ˮ�7i�V�W�!�<IH��;��i���!�
�����^�
k��5<�(@�oE$D9�	��8	y|����y!�X��'�@�Է4qj��bG*Yq�˳\��V��[!^�����֖���2�]]eiږ��>��������4U��ԁ�c��[�Y�2G��ˣX���#$�Zb���1��)�
I�/�![�5[�?�-�<���D��ê����u�˻R��Ħ���\�cJ�<��.�n��q�~�-q���F��2E�#��MH�e�pa��#vYc�ˋ)�_�ˮ�*(�V�;�m�h{��q��X��Q�=�1-s��{ᴪw��۹�E�׭0��52�m"󔆷��ս�����}y	</�,i}�"5w[Qͳ��cĦX�-�X!��o���QH?{�� >��q¢�{?<
�l��;�ܩ���>�w��;���ܞ�#
|�nU�pw	�uiM�f��{������u&�9�#�M?��tw���[�n�fZ�a/���c�逰��]^����ӗ�����(j��|�Ƶ:
hk+"��E]}��8F
Q@�+��u<����6I�0/�U���/�$9-Po�
��$ϱ@�V�*�J=��*l�&��x�7?��� ���5	^P�d�'cm�U�%�%	��gՍ���� j�ş}�i����l&ֵM)`6�2�u/����������@w,C��OD:�ډ;��=�\)INu�Q�^O�@��U�`�i]�"�����VX�D���e�{�O
(<��k�h5*%�ztU������֔"�Շ��P�;����
k~3�5N��ٖ�G���am�g���檑�JQ�]7̺iI[����4
�u�Y���NX�7}nq�������%%ҾMC�T�ʝ�h~vt���R���7�5���I~qH�r�ӗl���X_�mXLp����RK���"����!��7Lk���Q	Z)�dgz���Rrw~]�a�:��.E!\!@�PqM|����JV_�h��,�K�,ЩA�7��d�M�oY�˻в�F�Vɻ4�	>\��ǥ6�!�aҤ#=��~�����o��5�=�n��]�\�D<f��(D�ڢ�\Jl�cA�XU)�q@��Y�N2N�v��,�eEf-��1 2'�x1]�e<$���k<	(�@7�O�����|�����|�v2a�B')�aQPA߆�[eei�(3q�u8gJ|(O~1�r��>��`W]��rY���s�i)q���a�~>� y��Oʗ��Dy�fo�AJEw���
�JWV��)����NPĀ���0�DvK���am�z�g��m��8PsV.b}=�]�+n����{�B̈�(@������.�B�(�>O2��k��	2�C�0߯l��n(���:O,���A�5�L�ÙFluʁ"��P�xPdAe��}�"g�y��b!<V���p/���5[���־���gP��o5�����g5�N]ʠE9�q�z�����FL'��F&���OZ���g���W�R�W����6�Q�ѹ����N�pţ�|�ᣵF�J��_��aJ
��ڥ��mʑ�$,!�C�#挖� p��ej���ϛ�\`�¬��|ݹ�%.�T�{rL����2�𶚶�[�Y��#��aA�0��>bm��F�8;-�8h���;�#4^����,'\�mF��_�ml
?%�Q�U%F]�9OBw3�X�s�L�~����H���W�XY2�I����eV�3<�=C�Y�4�=
�wB��E]F�똄���P���2.�Y_a�h�p�We�?�X%]�@�W�"�G�29�gK3%R�e��~y���ǛS{J�_5��Zn��\ٌ�q����ci�G�:��L��CI�}�+r�'�fv�Z�s����AJ���Yc$�]m��|��%�fh��"���P ����x*���M�y�+x5u��{>�]����ĈH�v��	����P�'�@�y
��G0�^�#�#ǝxH�u'�
bC��D��:�a��c�b\$�g
�0�.�-+�gR=p,5x���T|�y%�҉!�>��y�d�7����;�A�HX�*�{�"5v8�:��t|�����/�y�j-��־~z�(R�0��#�Ih+B'++خ�`�5��p�l�ȟ,�B�`-6�U�u2�.��:Wb7�vV[>���Ҡ�`cv2އ-Q$���atMZ�l:i���w��=MZ5����ch.���j��;p-P�}ib9�`2K�)eJB�s���O�&Y�P�/��A_~tw��i���?�N�ʻQŻd���ds��3�G�ȅ���X���_B0^A�ǔ%�OJ�Y���(
����J{�=�}�)s,����;K=��My}����oL�[��z��M���@m|t��Va�6�J�,��4�KX5�-2"34��b�?��8�͙��b��J6��� �@*~7eź����{���">��:g2Ofi�w�،_� Exu���/�9�a�{���|��|�"	��%߾'������*���ED2�/6�P��շ��3�6����5���
&mgrc���UM��e�C�+"G}�����ItA7����?5��A��	��÷gj�A�y��].�.�bhm��0�#`�JfE�5�hxLވ^�Ϯ��ӕ`�S�XNƻ�±����'C:���������9��%��Ȩ��� ��d�쬾�*�e����9��l��}a&�k�.k�٬�<T~����p���׫Ѱ7�O���ݦL��2�qO%��[��~�FИ���.aV��ȹ"r^r]�L�J�1h�_'�뮔�l��>$ٮH�u���93��S_ٜ�q#��=���i�>��e�.1J��|�P�-�5X2����-ۂʨ޸��ݟ^n�C;;2rS/%u���شo�y�'4�?<v�կ�����Y�l��P������$$Z�Q_:���S�eX�A�Z2�:���		;̼�"�_j'	%���q���Ѡ��a�ց�0��Vߓ�akm8��;�H�
yX��C�%aZ��{���nٲLS�u�7o�c'�-"��+;��<�Z��3�k��Ը�wy߼��_:6���c|t�8�pm� ��E�Q�[��π?V�R�FIQ)��.oB�A�lL:X`w�?aP���vܽp	J�����/?�x��G 7�jP-�ʢ7�-	���bԬ��.Z"$@';`�jA��OL�P�j����-�w���$�:R ��^��'^n�K�X�A�����Im�������GO�N�hAk�GG�5x�/9
˜j�F���k�Cq�#/�3��K9�|w&)}�nVC�a;r�!Am�D� Y��&oƿ|Y�h�m�H�9ŋ:���&�6���-�c�3Š���H9Y
��ӑd���*=u���Q6��L#f���6X(�vU����aI�axuW%p"7^�3�,`p!W���a��[�A�'�&���	O�o��P�ؿz85e2��t��,�4���i%G?@M�����-{,pY��J�(��H3�O73���y�'�J�2t�r·*m�
�%Y��c̤޽�8|}�a�!q����$�'�L�ʝ�񭋟]�'.8r�E8W{��2
o�{��.�D�V�+�.(3��Yˈ��	]G�W�	\梏<=܃�HFiv�Y�GWJ�#�FQ]u�u^j+��(��2 ����Qb�ɟ]K��y�`�FA��V?��ɣ�D&+U��un�q]�
N��^�_����M�=�ޤ?��L��k;�A�w'hxo�huz�J��b�H�$�=q=Kd&�e�X�;wd���
�W
����v�����-�(P*�6���N���!xh"	K�s�|��o�; � ���7�Wq�g�1w���/B8�
�y��ŏ��p����'��Ё�+��
�(����U_.�S�˹�Qӫ�&��v�A�_3�F�@�������z6�2i����UlFP>��,���ߎ�O�1F���^�Na�1��.�_��f��L�h���v�d�ه|pn?�LD�6�K'��i]�� R�6E{ȷ��!P�9n��ڻ�
��F�M�8~S�78���Ox!�^+�W�J�aQdT)��rx�~ۊt�IA����Sp�m`Q�ˤ	�E���A^n�v״i*_]MEO�=:��F���K�%��QE��j�ѓVI��o𘖆�Vg�x���3��zx/st��,j�&L< !���O٬�_}��N�̍�`,���QU���;3`kϋV�i�Ag2���k7���(��DPa(8�ଉ�4apS�p�43�@%�2���j�)�^�F�rC׼���܋�%V�4��)r�m�$�t���3H���ꅠ����ԨQ�����.��Z�;���^�/�]X�_m�Vb�ۺ`�6/Q���0���oޱ~�	-)c�H�|�����GqDՖ�A���BX�P"��mc�<F���0����܎Vn%��Y�0�G�
Q�]��F�����2�� �G�X߱�G�vc��:z�~c;׮ٳ]��L�(q�Ȭ��%3FG�.h|��Vw~�4�""*���pU|t5��僵7@`���ߵ���7�_}+o6O��sr��C��Vgq�In�L0VfNJ(��
b�ڬ C�9u��.—FP
���hə}�F_�Ki�K��@3S��
k~$�G�����K>p-QDZ��3/!Y��"	x�`	�ܹLz�H���Xȉ=%`~p�S�B�����h���$�`�8&���\����'�.F2ig�,�f�	�����Z�_$�UN�T�-���/���ئE;
�N�i�yd�#�8�ØI���4c�T�}e�T�")V���,:VG��V��W�D�?��W+��ޤ����a����J�ۼ�8roW�dX�B*G�9��Зuۉ�6e��n�����!y�lVK�;��r�!����HH��1�ž�g?h��Ͱ�K�� ��$Ă�ڹ`�Q�9~��e�5��eE��@��$rt�ĉ�EU������u��p�xj�<H��у[�ϯZ'��ݱ�vL�8��Z�Q�@��(��+~�20�(a�۞�G�c��ߨ��Gq
�C��,�r��P��P
�Â`�I�t�)v:b��/�)��m�mNb}���&���8(<X'�I���M����%�]��^d�wE��sí�����zs�}�F'�~���[hi��(��,��_
����Ąd̸7���4tlG�`�F��$�]G�@{�E[-��n�Ռ���2T�"�
~�^-�&O��UY��<�sS�v����kB�����f/	�l/�h�/ �N#�^��>l�48�W-�1O^.1�?�'��|��j��h�C܀�4��(�w���%�xj7i0����5�5S�o!�~���P�N�?
���o}���-+W��·��,���})&�
q{ҋ�}k��Bf
��H���6��f��� �ϱ�CU&m����X�o��x�|�O��דi&PiEX�Ab�G
O�V��<7B��M2�n�8��<?��g��fu
𴻁:X��T�j��7)d�+:ržW����~S1������:!�c����Fz���P?����R.0��kDA̟�ప$�M�H[kmr�L�#	b�P�vDZ�0>
���^H@$�pZ��(P�?��꒾+�J��3�Fev����s���_��W_FN��L	p�����47m�kG
ˋ�L9����]ͫ���2�n=��n#��X949��n�s\J�y�Zp��"���+y6�R��tC�-�e!"&��!NZ�(,��%IW&_ ��\��jB�
�X���l�9��L
�|t�3���v��Kl׵
E���e��"&"����~�}�Q]�\�>k2RoR�E^.R��l;bo!�
Yj���q4�8Hۘh*<ό�~Q�BO�U�I��|�k%�r	�%ʚ�x�*�F[F�m^(��fG#�)�y�0�"��b�����[y%1��[�H2]�@�Ǹ�__�=��X�Q}4��%0���E3.�^0��H@q�Lq�?�
���fhg��Y��/��QX����;��k*p���l��o�=�����#�p�:�TW듒�rw�f�$�
!�]˜�2m�"s����#�,�{'L��Žh��:Ô"z�/ݦ�+��>����Ey���w�"�H�x���o��aͣ�wig�N��j��:�:���˾�3(�!u�EM�TD�P���H���^�(�mT�F{\��xl�RC��n%5���ˆ��/<�ԙ���p�{���Hc��A�R_`G+�}\Kה�U�OOn�䃘wz��eU�7‚�Y}�D�B
��v�Ff~&�{*�r���c�`i��eS�R.�VX�m�ݢ���%^Q����1�_�(�*NJs\&��z���R�]��~�k34�'�Y��[�<p۶�jD�i��]_���O��,��S�9E�Y��{�n~G�/�?���>͆�y߆|d7���X���P�3�톌�����`~�4�~��;�@�60z�� �tk�����G��
_��+xi;
�4e����
���V�F� �XI͑>0� ��/���D֮�v;���{k��k{� M�F�*?m�>�S���(��F���2�����b.ҝk�׾7fH-uB�ׂ���W_�#9�s	x�7��wM߬��,�zW�ˁ�?�5B��͋u
@�,W��ZN6!^�NB�����96:v�\+3DrB@�re؜ך�׫^�S��U{�n�dK�<˿́�0������������������'Id
�Fg0Yl���B�X"��J�Z���
F��b��N�� �0�L%��H��j�aZ��z�n L��,�q=?��'"����~؏���|yx|���
#(�����Q��j�aZ��z~Fq�fyQVu�v�0N��z���dz��w��(�@���,O ��*��`��.�/PVQUS������������a�����U�k�׍w~vR��Fe4���>�l�I|מ(V�+�B��}s�R��X��Ѡ1lß���������w7�̾j����ືks;��鴜��Sm=��^`���s	T�_��Ո�g�Z�R�…��b&U9Zg�U-R��`q ��8�F�C�]-���p��"@�J���d�sU7PW�+xY
wQ���L�o�fw`������:�#BV��nKȬ���*쪦u5��U�#���\r{y<n7N�!�߫]Yfg��%��Aw�	+@�*�,��`{\6rZ=J�D+��j!Vق�@��B�f��n�C�M�G�=��ô��cX?�]�PXES�K�i�����k�\�!�Bx�ѵŏMA>�Y;�?y��L�\�d4\�5��<1ì�Xg}�u��Yfu����VT,������4q.8����9o
�[��r.�֐[��5ҵj����raa]��X���D�.�*�-��%,_-4�d-�_Y�%�[�H&t\�ްh��V��pf�կ{L~=(q�p\��;#�Zd�j�Q�Z��pu���+����5���L�U
�+X���s��\
�{ğ�0{J ���x��r]gf+g�UKZB%�U�j��kA�6b���7�+%�j~b�{
Y��e<`�A�jP|����Yr��lk�����&H�J�.`K������?�\�YK��@�g��$�u��X*�Q�`7
�����
�W��~g���6܇�X�ѕ!�h��@pڼ�٩ܐgT� �C�ҳ>����V�0ddeI�ċ_��soXƦ��}A�y.��
d(�h-Tg�dW�1�u�
��@l�����C=��X��S��&���� �L��/ּ�Aw�R���%վ|���i��s����I�1?����I���'I��վ����X�3�����jjș�`��:�θ� �:��*1ٱ%�4O���P��z�����:�&����L�CBƁ#Ph��
̆�H֙�Y#@i�:��a�ҏ���~Rn���&CZe/F�Ҫ�(����b����=�=��6{)e�guC�{���e��b`9��F<Ԇ|�{�D����=�I;�Q�%k��9/�g��$�?y�E�P<��E��I^[�7K��%{�h���ֵ佽��a�/�\�or�n���:�hͪ�.u֞sȨ��
 m8ZkQ�P[�'�6m��6�F֞%��0�E[�s��3�
��j���p�T�KK�X�[͑?9� �"[���UV��J,�.EP��Üu7��v����Im�M ?p)L�WK{ڭ��d����I~�x��UG[��]�)���n��ڍ��X��\�����gp|頣aҶz<�]V%�����.�ү��72���)6��[j���R�~T�P7ˡ����-�م��+�777�(�9;���R������ϷyogՅ�~;N�8�C�O��@N\����R��ud�֬�T�C�2I�����1����5�Hf���l"�����yͪe��d����P�]����ϸ
���#ܔ�h�-�IQ��ܶ}r!�e���/K�iw�z��K/f�4۴���sϣ�ٙ������y�ˉ�C��G��&0��P0r�ǣ��n����蜖���9c��L��3@���-�#K*�Y1ո��G��Js#�7��l.���j�r�v؛˱�s�bp�5H��I��M�扑��M��V��p�ʰW�|��e%Q�(�9��̺��.�Zq�^,y)C1�U�G���W�Ԩ�F�0����u�9"`��*���P����(c����Zx�K�U��t����E���z���o��ܫ�;���n��͒���F��os�
�uKC�n��]KZu���vfa
���ꡥ@��j�x�E�c��<0�.3L�ni��%��3��DIJ�3m4!�bG�kE@%��֊�C�d�t��A�($wHcE��
μS�E�/�S�T`��a��<��祥c�/���N���)4&�	
ɧ���H�󅅽!����<����)���-���d�=�]�M���a�����)��W������5��V�3Ӛ�����
�X}���C�e��'�*L�assets/lib/eicons/css/elementor-icons.css000064400000054623151327220410014510 0ustar00@font-face {
  font-family: 'eicons';
  src: url("../fonts/eicons.eot?5.13.0");
  src: url("../fonts/eicons.eot?5.13.0#iefix") format("embedded-opentype"), url("../fonts/eicons.woff2?5.13.0") format("woff2"), url("../fonts/eicons.woff?5.13.0") format("woff"), url("../fonts/eicons.ttf?5.13.0") format("truetype"), url("../fonts/eicons.svg?5.13.0#eicon") format("svg");
  font-weight: normal;
  font-style: normal; }

[class^="eicon"],
[class*=" eicon-"] {
  display: inline-block;
  font-family: eicons;
  font-size: inherit;
  font-weight: normal;
  font-style: normal;
  font-variant: normal;
  line-height: 1;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

@keyframes eicon-spin {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(359deg); } }

.eicon-animation-spin {
  animation: eicon-spin 2s infinite linear; }

.eicon-editor-link:before {
  content: '\e800'; }

.eicon-editor-unlink:before {
  content: '\e801'; }

.eicon-editor-external-link:before {
  content: '\e802'; }

.eicon-editor-close:before {
  content: '\e803'; }

.eicon-editor-list-ol:before {
  content: '\e804'; }

.eicon-editor-list-ul:before {
  content: '\e805'; }

.eicon-editor-bold:before {
  content: '\e806'; }

.eicon-editor-italic:before {
  content: '\e807'; }

.eicon-editor-underline:before {
  content: '\e808'; }

.eicon-editor-paragraph:before {
  content: '\e809'; }

.eicon-editor-h1:before {
  content: '\e80a'; }

.eicon-editor-h2:before {
  content: '\e80b'; }

.eicon-editor-h3:before {
  content: '\e80c'; }

.eicon-editor-h4:before {
  content: '\e80d'; }

.eicon-editor-h5:before {
  content: '\e80e'; }

.eicon-editor-h6:before {
  content: '\e80f'; }

.eicon-editor-quote:before {
  content: '\e810'; }

.eicon-editor-code:before {
  content: '\e811'; }

.eicon-elementor:before {
  content: '\e812'; }

.eicon-elementor-circle:before {
  content: '\e813'; }

.eicon-pojome:before {
  content: '\e814'; }

.eicon-plus:before {
  content: '\e815'; }

.eicon-menu-bar:before {
  content: '\e816'; }

.eicon-apps:before {
  content: '\e817'; }

.eicon-accordion:before {
  content: '\e818'; }

.eicon-alert:before {
  content: '\e819'; }

.eicon-animation-text:before {
  content: '\e81a'; }

.eicon-animation:before {
  content: '\e81b'; }

.eicon-banner:before {
  content: '\e81c'; }

.eicon-blockquote:before {
  content: '\e81d'; }

.eicon-button:before {
  content: '\e81e'; }

.eicon-call-to-action:before {
  content: '\e81f'; }

.eicon-captcha:before {
  content: '\e820'; }

.eicon-carousel:before {
  content: '\e821'; }

.eicon-checkbox:before {
  content: '\e822'; }

.eicon-columns:before {
  content: '\e823'; }

.eicon-countdown:before {
  content: '\e824'; }

.eicon-counter:before {
  content: '\e825'; }

.eicon-date:before {
  content: '\e826'; }

.eicon-divider-shape:before {
  content: '\e827'; }

.eicon-divider:before {
  content: '\e828'; }

.eicon-download-button:before {
  content: '\e829'; }

.eicon-dual-button:before {
  content: '\e82a'; }

.eicon-email-field:before {
  content: '\e82b'; }

.eicon-facebook-comments:before {
  content: '\e82c'; }

.eicon-facebook-like-box:before {
  content: '\e82d'; }

.eicon-form-horizontal:before {
  content: '\e82e'; }

.eicon-form-vertical:before {
  content: '\e82f'; }

.eicon-gallery-grid:before {
  content: '\e830'; }

.eicon-gallery-group:before {
  content: '\e831'; }

.eicon-gallery-justified:before {
  content: '\e832'; }

.eicon-gallery-masonry:before {
  content: '\e833'; }

.eicon-icon-box:before {
  content: '\e834'; }

.eicon-image-before-after:before {
  content: '\e835'; }

.eicon-image-box:before {
  content: '\e836'; }

.eicon-image-hotspot:before {
  content: '\e837'; }

.eicon-image-rollover:before {
  content: '\e838'; }

.eicon-info-box:before {
  content: '\e839'; }

.eicon-inner-section:before {
  content: '\e83a'; }

.eicon-mailchimp:before {
  content: '\e83b'; }

.eicon-menu-card:before {
  content: '\e83c'; }

.eicon-navigation-horizontal:before {
  content: '\e83d'; }

.eicon-nav-menu:before {
  content: '\e83e'; }

.eicon-navigation-vertical:before {
  content: '\e83f'; }

.eicon-number-field:before {
  content: '\e840'; }

.eicon-parallax:before {
  content: '\e841'; }

.eicon-php7:before {
  content: '\e842'; }

.eicon-post-list:before {
  content: '\e843'; }

.eicon-post-slider:before {
  content: '\e844'; }

.eicon-post:before {
  content: '\e845'; }

.eicon-posts-carousel:before {
  content: '\e846'; }

.eicon-posts-grid:before {
  content: '\e847'; }

.eicon-posts-group:before {
  content: '\e848'; }

.eicon-posts-justified:before {
  content: '\e849'; }

.eicon-posts-masonry:before {
  content: '\e84a'; }

.eicon-posts-ticker:before {
  content: '\e84b'; }

.eicon-price-list:before {
  content: '\e84c'; }

.eicon-price-table:before {
  content: '\e84d'; }

.eicon-radio:before {
  content: '\e84e'; }

.eicon-rtl:before {
  content: '\e84f'; }

.eicon-scroll:before {
  content: '\e850'; }

.eicon-search:before {
  content: '\e851'; }

.eicon-select:before {
  content: '\e852'; }

.eicon-share:before {
  content: '\e853'; }

.eicon-sidebar:before {
  content: '\e854'; }

.eicon-skill-bar:before {
  content: '\e855'; }

.eicon-slider-3d:before {
  content: '\e856'; }

.eicon-slider-album:before {
  content: '\e857'; }

.eicon-slider-device:before {
  content: '\e858'; }

.eicon-slider-full-screen:before {
  content: '\e859'; }

.eicon-slider-push:before {
  content: '\e85a'; }

.eicon-slider-vertical:before {
  content: '\e85b'; }

.eicon-slider-video:before {
  content: '\e85c'; }

.eicon-slides:before {
  content: '\e85d'; }

.eicon-social-icons:before {
  content: '\e85e'; }

.eicon-spacer:before {
  content: '\e85f'; }

.eicon-table:before {
  content: '\e860'; }

.eicon-tabs:before {
  content: '\e861'; }

.eicon-tel-field:before {
  content: '\e862'; }

.eicon-text-area:before {
  content: '\e863'; }

.eicon-text-field:before {
  content: '\e864'; }

.eicon-thumbnails-down:before {
  content: '\e865'; }

.eicon-thumbnails-half:before {
  content: '\e866'; }

.eicon-thumbnails-right:before {
  content: '\e867'; }

.eicon-time-line:before {
  content: '\e868'; }

.eicon-toggle:before {
  content: '\e869'; }

.eicon-url:before {
  content: '\e86a'; }

.eicon-t-letter:before {
  content: '\e86b'; }

.eicon-wordpress:before {
  content: '\e86c'; }

.eicon-text:before {
  content: '\e86d'; }

.eicon-anchor:before {
  content: '\e86e'; }

.eicon-bullet-list:before {
  content: '\e86f'; }

.eicon-code:before {
  content: '\e870'; }

.eicon-favorite:before {
  content: '\e871'; }

.eicon-google-maps:before {
  content: '\e872'; }

.eicon-image:before {
  content: '\e873'; }

.eicon-photo-library:before {
  content: '\e874'; }

.eicon-woocommerce:before {
  content: '\e875'; }

.eicon-youtube:before {
  content: '\e876'; }

.eicon-flip-box:before {
  content: '\e877'; }

.eicon-settings:before {
  content: '\e878'; }

.eicon-headphones:before {
  content: '\e879'; }

.eicon-testimonial:before {
  content: '\e87a'; }

.eicon-counter-circle:before {
  content: '\e87b'; }

.eicon-person:before {
  content: '\e87c'; }

.eicon-chevron-right:before {
  content: '\e87d'; }

.eicon-chevron-left:before {
  content: '\e87e'; }

.eicon-close:before {
  content: '\e87f'; }

.eicon-file-download:before {
  content: '\e880'; }

.eicon-save:before {
  content: '\e881'; }

.eicon-zoom-in:before {
  content: '\e882'; }

.eicon-shortcode:before {
  content: '\e883'; }

.eicon-nerd:before {
  content: '\e884'; }

.eicon-device-desktop:before {
  content: '\e885'; }

.eicon-device-tablet:before {
  content: '\e886'; }

.eicon-device-mobile:before {
  content: '\e887'; }

.eicon-document-file:before {
  content: '\e888'; }

.eicon-folder-o:before {
  content: '\e889'; }

.eicon-hypster:before {
  content: '\e88a'; }

.eicon-h-align-left:before {
  content: '\e88b'; }

.eicon-h-align-right:before {
  content: '\e88c'; }

.eicon-h-align-center:before {
  content: '\e88d'; }

.eicon-h-align-stretch:before {
  content: '\e88e'; }

.eicon-v-align-top:before {
  content: '\e88f'; }

.eicon-v-align-bottom:before {
  content: '\e890'; }

.eicon-v-align-middle:before {
  content: '\e891'; }

.eicon-v-align-stretch:before {
  content: '\e892'; }

.eicon-pro-icon:before {
  content: '\e893'; }

.eicon-mail:before {
  content: '\e894'; }

.eicon-lock-user:before {
  content: '\e895'; }

.eicon-testimonial-carousel:before {
  content: '\e896'; }

.eicon-media-carousel:before {
  content: '\e897'; }

.eicon-section:before {
  content: '\e898'; }

.eicon-column:before {
  content: '\e899'; }

.eicon-edit:before {
  content: '\e89a'; }

.eicon-clone:before {
  content: '\e89b'; }

.eicon-trash:before {
  content: '\e89c'; }

.eicon-play:before {
  content: '\e89d'; }

.eicon-angle-right:before {
  content: '\e89e'; }

.eicon-angle-left:before {
  content: '\e89f'; }

.eicon-animated-headline:before {
  content: '\e8a0'; }

.eicon-menu-toggle:before {
  content: '\e8a1'; }

.eicon-fb-embed:before {
  content: '\e8a2'; }

.eicon-fb-feed:before {
  content: '\e8a3'; }

.eicon-twitter-embed:before {
  content: '\e8a4'; }

.eicon-twitter-feed:before {
  content: '\e8a5'; }

.eicon-sync:before {
  content: '\e8a6'; }

.eicon-import-export:before {
  content: '\e8a7'; }

.eicon-check-circle:before {
  content: '\e8a8'; }

.eicon-library-save:before {
  content: '\e8a9'; }

.eicon-library-download:before {
  content: '\e8aa'; }

.eicon-insert:before {
  content: '\e8ab'; }

.eicon-preview-medium:before {
  content: '\e8ac'; }

.eicon-sort-down:before {
  content: '\e8ad'; }

.eicon-sort-up:before {
  content: '\e8ae'; }

.eicon-heading:before {
  content: '\e8af'; }

.eicon-logo:before {
  content: '\e8b0'; }

.eicon-meta-data:before {
  content: '\e8b1'; }

.eicon-post-content:before {
  content: '\e8b2'; }

.eicon-post-excerpt:before {
  content: '\e8b3'; }

.eicon-post-navigation:before {
  content: '\e8b4'; }

.eicon-yoast:before {
  content: '\e8b5'; }

.eicon-nerd-chuckle:before {
  content: '\e8b6'; }

.eicon-nerd-wink:before {
  content: '\e8b7'; }

.eicon-comments:before {
  content: '\e8b8'; }

.eicon-download-circle-o:before {
  content: '\e8b9'; }

.eicon-library-upload:before {
  content: '\e8ba'; }

.eicon-save-o:before {
  content: '\e8bb'; }

.eicon-upload-circle-o:before {
  content: '\e8bc'; }

.eicon-ellipsis-h:before {
  content: '\e8bd'; }

.eicon-ellipsis-v:before {
  content: '\e8be'; }

.eicon-arrow-left:before {
  content: '\e8bf'; }

.eicon-arrow-right:before {
  content: '\e8c0'; }

.eicon-arrow-up:before {
  content: '\e8c1'; }

.eicon-arrow-down:before {
  content: '\e8c2'; }

.eicon-play-o:before {
  content: '\e8c3'; }

.eicon-archive-posts:before {
  content: '\e8c4'; }

.eicon-archive-title:before {
  content: '\e8c5'; }

.eicon-featured-image:before {
  content: '\e8c6'; }

.eicon-post-info:before {
  content: '\e8c7'; }

.eicon-post-title:before {
  content: '\e8c8'; }

.eicon-site-logo:before {
  content: '\e8c9'; }

.eicon-site-search:before {
  content: '\e8ca'; }

.eicon-site-title:before {
  content: '\e8cb'; }

.eicon-plus-square:before {
  content: '\e8cc'; }

.eicon-minus-square:before {
  content: '\e8cd'; }

.eicon-cloud-check:before {
  content: '\e8ce'; }

.eicon-drag-n-drop:before {
  content: '\e8cf'; }

.eicon-welcome:before {
  content: '\e8d0'; }

.eicon-handle:before {
  content: '\e8d1'; }

.eicon-cart:before {
  content: '\e8d2'; }

.eicon-product-add-to-cart:before {
  content: '\e8d3'; }

.eicon-product-breadcrumbs:before {
  content: '\e8d4'; }

.eicon-product-categories:before {
  content: '\e8d5'; }

.eicon-product-description:before {
  content: '\e8d6'; }

.eicon-product-images:before {
  content: '\e8d7'; }

.eicon-product-info:before {
  content: '\e8d8'; }

.eicon-product-meta:before {
  content: '\e8d9'; }

.eicon-product-pages:before {
  content: '\e8da'; }

.eicon-product-price:before {
  content: '\e8db'; }

.eicon-product-rating:before {
  content: '\e8dc'; }

.eicon-product-related:before {
  content: '\e8dd'; }

.eicon-product-stock:before {
  content: '\e8de'; }

.eicon-product-tabs:before {
  content: '\e8df'; }

.eicon-product-title:before {
  content: '\e8e0'; }

.eicon-product-upsell:before {
  content: '\e8e1'; }

.eicon-products:before {
  content: '\e8e2'; }

.eicon-bag-light:before {
  content: '\e8e3'; }

.eicon-bag-medium:before {
  content: '\e8e4'; }

.eicon-bag-solid:before {
  content: '\e8e5'; }

.eicon-basket-light:before {
  content: '\e8e6'; }

.eicon-basket-medium:before {
  content: '\e8e7'; }

.eicon-basket-solid:before {
  content: '\e8e8'; }

.eicon-cart-light:before {
  content: '\e8e9'; }

.eicon-cart-medium:before {
  content: '\e8ea'; }

.eicon-cart-solid:before {
  content: '\e8eb'; }

.eicon-exchange:before {
  content: '\e8ec'; }

.eicon-preview-thin:before {
  content: '\e8ed'; }

.eicon-device-laptop:before {
  content: '\e8ee'; }

.eicon-collapse:before {
  content: '\e8ef'; }

.eicon-expand:before {
  content: '\e8f0'; }

.eicon-navigator:before {
  content: '\e8f1'; }

.eicon-plug:before {
  content: '\e8f2'; }

.eicon-dashboard:before {
  content: '\e8f3'; }

.eicon-typography:before {
  content: '\e8f4'; }

.eicon-info-circle-o:before {
  content: '\e8f5'; }

.eicon-integration:before {
  content: '\e8f6'; }

.eicon-plus-circle-o:before {
  content: '\e8f7'; }

.eicon-rating:before {
  content: '\e8f8'; }

.eicon-review:before {
  content: '\e8f9'; }

.eicon-tools:before {
  content: '\e8fa'; }

.eicon-loading:before {
  content: '\e8fb'; }

.eicon-sitemap:before {
  content: '\e8fc'; }

.eicon-click:before {
  content: '\e8fd'; }

.eicon-clock:before {
  content: '\e8fe'; }

.eicon-library-open:before {
  content: '\e8ff'; }

.eicon-warning:before {
  content: '\e900'; }

.eicon-flow:before {
  content: '\e901'; }

.eicon-cursor-move:before {
  content: '\e902'; }

.eicon-arrow-circle-left:before {
  content: '\e903'; }

.eicon-flash:before {
  content: '\e904'; }

.eicon-redo:before {
  content: '\e905'; }

.eicon-ban:before {
  content: '\e906'; }

.eicon-barcode:before {
  content: '\e907'; }

.eicon-calendar:before {
  content: '\e908'; }

.eicon-caret-left:before {
  content: '\e909'; }

.eicon-caret-right:before {
  content: '\e90a'; }

.eicon-caret-up:before {
  content: '\e90b'; }

.eicon-chain-broken:before {
  content: '\e90c'; }

.eicon-check-circle-o:before {
  content: '\e90d'; }

.eicon-check:before {
  content: '\e90e'; }

.eicon-chevron-double-left:before {
  content: '\e90f'; }

.eicon-chevron-double-right:before {
  content: '\e910'; }

.eicon-undo:before {
  content: '\e911'; }

.eicon-filter:before {
  content: '\e912'; }

.eicon-circle-o:before {
  content: '\e913'; }

.eicon-circle:before {
  content: '\e914'; }

.eicon-clock-o:before {
  content: '\e915'; }

.eicon-cog:before {
  content: '\e916'; }

.eicon-cogs:before {
  content: '\e917'; }

.eicon-commenting-o:before {
  content: '\e918'; }

.eicon-copy:before {
  content: '\e919'; }

.eicon-database:before {
  content: '\e91a'; }

.eicon-dot-circle-o:before {
  content: '\e91b'; }

.eicon-envelope:before {
  content: '\e91c'; }

.eicon-external-link-square:before {
  content: '\e91d'; }

.eicon-eyedropper:before {
  content: '\e91e'; }

.eicon-folder:before {
  content: '\e91f'; }

.eicon-font:before {
  content: '\e920'; }

.eicon-adjust:before {
  content: '\e921'; }

.eicon-lightbox:before {
  content: '\e922'; }

.eicon-heart-o:before {
  content: '\e923'; }

.eicon-history:before {
  content: '\e924'; }

.eicon-image-bold:before {
  content: '\e925'; }

.eicon-info-circle:before {
  content: '\e926'; }

.eicon-link:before {
  content: '\e927'; }

.eicon-long-arrow-left:before {
  content: '\e928'; }

.eicon-long-arrow-right:before {
  content: '\e929'; }

.eicon-caret-down:before {
  content: '\e92a'; }

.eicon-paint-brush:before {
  content: '\e92b'; }

.eicon-pencil:before {
  content: '\e92c'; }

.eicon-plus-circle:before {
  content: '\e92d'; }

.eicon-zoom-in-bold:before {
  content: '\e92e'; }

.eicon-sort-amount-desc:before {
  content: '\e92f'; }

.eicon-sign-out:before {
  content: '\e930'; }

.eicon-spinner:before {
  content: '\e931'; }

.eicon-square:before {
  content: '\e932'; }

.eicon-star-o:before {
  content: '\e933'; }

.eicon-star:before {
  content: '\e934'; }

.eicon-text-align-justify:before {
  content: '\e935'; }

.eicon-text-align-center:before {
  content: '\e936'; }

.eicon-tags:before {
  content: '\e937'; }

.eicon-text-align-left:before {
  content: '\e938'; }

.eicon-text-align-right:before {
  content: '\e939'; }

.eicon-close-circle:before {
  content: '\e93a'; }

.eicon-trash-o:before {
  content: '\e93b'; }

.eicon-font-awesome:before {
  content: '\e93c'; }

.eicon-user-circle-o:before {
  content: '\e93d'; }

.eicon-video-camera:before {
  content: '\e93e'; }

.eicon-heart:before {
  content: '\e93f'; }

.eicon-wrench:before {
  content: '\e940'; }

.eicon-help:before {
  content: '\e941'; }

.eicon-help-o:before {
  content: '\e942'; }

.eicon-zoom-out-bold:before {
  content: '\e943'; }

.eicon-plus-square-o:before {
  content: '\e944'; }

.eicon-minus-square-o:before {
  content: '\e945'; }

.eicon-minus-circle:before {
  content: '\e946'; }

.eicon-minus-circle-o:before {
  content: '\e947'; }

.eicon-code-bold:before {
  content: '\e948'; }

.eicon-cloud-upload:before {
  content: '\e949'; }

.eicon-search-bold:before {
  content: '\e94a'; }

.eicon-map-pin:before {
  content: '\e94b'; }

.eicon-meetup:before {
  content: '\e94c'; }

.eicon-slideshow:before {
  content: '\e94d'; }

.eicon-t-letter-bold:before {
  content: '\e94e'; }

.eicon-preferences:before {
  content: '\e94f'; }

.eicon-table-of-contents:before {
  content: '\e950'; }

.eicon-tv:before {
  content: '\e951'; }

.eicon-upload:before {
  content: '\e952'; }

.eicon-instagram-comments:before {
  content: '\e953'; }

.eicon-instagram-nested-gallery:before {
  content: '\e954'; }

.eicon-instagram-post:before {
  content: '\e955'; }

.eicon-instagram-video:before {
  content: '\e956'; }

.eicon-instagram-gallery:before {
  content: '\e957'; }

.eicon-instagram-likes:before {
  content: '\e958'; }

.eicon-facebook:before {
  content: '\e959'; }

.eicon-twitter:before {
  content: '\e95a'; }

.eicon-pinterest:before {
  content: '\e95b'; }

.eicon-frame-expand:before {
  content: '\e95c'; }

.eicon-frame-minimize:before {
  content: '\e95d'; }

.eicon-archive:before {
  content: '\e95e'; }

.eicon-colors-typography:before {
  content: '\e95f'; }

.eicon-custom:before {
  content: '\e960'; }

.eicon-footer:before {
  content: '\e961'; }

.eicon-header:before {
  content: '\e962'; }

.eicon-layout-settings:before {
  content: '\e963'; }

.eicon-lightbox-expand:before {
  content: '\e964'; }

.eicon-error-404:before {
  content: '\e965'; }

.eicon-theme-style:before {
  content: '\e966'; }

.eicon-search-results:before {
  content: '\e967'; }

.eicon-single-post:before {
  content: '\e968'; }

.eicon-site-identity:before {
  content: '\e969'; }

.eicon-theme-builder:before {
  content: '\e96a'; }

.eicon-download-bold:before {
  content: '\e96b'; }

.eicon-share-arrow:before {
  content: '\e96c'; }

.eicon-global-settings:before {
  content: '\e96d'; }

.eicon-user-preferences:before {
  content: '\e96e'; }

.eicon-lock:before {
  content: '\e96f'; }

.eicon-export-kit:before {
  content: '\e970'; }

.eicon-import-kit:before {
  content: '\e971'; }

.eicon-lottie:before {
  content: '\e972'; }

.eicon-products-archive:before {
  content: '\e973'; }

.eicon-single-product:before {
  content: '\e974'; }

.eicon-disable-trash-o:before {
  content: '\e975'; }

.eicon-single-page:before {
  content: '\e976'; }

.eicon-wordpress-light:before {
  content: '\e977'; }

.eicon-cogs-check:before {
  content: '\e978'; }

.eicon-custom-css:before {
  content: '\e979'; }

.eicon-global-colors:before {
  content: '\e97a'; }

.eicon-globe:before {
  content: '\e97b'; }

.eicon-typography-1:before {
  content: '\e97c'; }

.eicon-background:before {
  content: '\e97d'; }

.eicon-device-responsive:before {
  content: '\e97e'; }

.eicon-device-wide:before {
  content: '\e97f'; }

.eicon-code-highlight:before {
  content: '\e980'; }

.eicon-video-playlist:before {
  content: '\e981'; }

.eicon-download-kit:before {
  content: '\e982'; }

.eicon-kit-details:before {
  content: '\e983'; }

.eicon-kit-parts:before {
  content: '\e984'; }

.eicon-kit-upload:before {
  content: '\e985'; }

.eicon-kit-plugins:before {
  content: '\e986'; }

.eicon-kit-upload-alt:before {
  content: '\e987'; }

.eicon-hotspot:before {
  content: '\e988'; }

.eicon-paypal-button:before {
  content: '\e989'; }

.eicon-shape:before {
  content: '\e98a'; }

.eicon-wordart:before {
  content: '\e98b'; }

.eicon-checkout:before {
  content: '\e98c'; }

.eicon-container:before {
  content: '\e98d'; }

.eicon-flip:before {
  content: '\e98e'; }

.eicon-info:before {
  content: '\e98f'; }

.eicon-my-account:before {
  content: '\e990'; }

.eicon-purchase-summary:before {
  content: '\e991'; }

.eicon-page-transition:before {
  content: '\e992'; }

.eicon-spotify:before {
  content: '\e993'; }

.eicon-stripe-button:before {
  content: '\e994'; }

.eicon-woo-settings:before {
  content: '\e995'; }

.eicon-woo-cart:before {
  content: '\e996'; }

.eicon-grow:before {
  content: '\e997'; }

.eicon-order-end:before {
  content: '\e998'; }

.eicon-nowrap:before {
  content: '\e999'; }

.eicon-order-start:before {
  content: '\e99a'; }

.eicon-progress-tracker:before {
  content: '\e99b'; }

.eicon-shrink:before {
  content: '\e99c'; }

.eicon-wrap:before {
  content: '\e99d'; }

.eicon-align-center-h:before {
  content: '\e99e'; }

.eicon-align-center-v:before {
  content: '\e99f'; }

.eicon-align-end-h:before {
  content: '\e9a0'; }

.eicon-align-end-v:before {
  content: '\e9a1'; }

.eicon-align-start-h:before {
  content: '\e9a2'; }

.eicon-align-start-v:before {
  content: '\e9a3'; }

.eicon-align-stretch-h:before {
  content: '\e9a4'; }

.eicon-align-stretch-v:before {
  content: '\e9a5'; }

.eicon-justify-center-h:before {
  content: '\e9a6'; }

.eicon-justify-center-v:before {
  content: '\e9a7'; }

.eicon-justify-end-h:before {
  content: '\e9a8'; }

.eicon-justify-end-v:before {
  content: '\e9a9'; }

.eicon-justify-space-around-h:before {
  content: '\e9aa'; }

.eicon-justify-space-around-v:before {
  content: '\e9ab'; }

.eicon-justify-space-between-h:before {
  content: '\e9ac'; }

.eicon-justify-space-between-v:before {
  content: '\e9ad'; }

.eicon-justify-space-evenly-h:before {
  content: '\e9ae'; }

.eicon-justify-space-evenly-v:before {
  content: '\e9af'; }

.eicon-justify-start-h:before {
  content: '\e9b0'; }

.eicon-justify-start-v:before {
  content: '\e9b1'; }

.eicon-eye:before {
  content: '\e8ac'; }

.eicon-elementor-square:before {
  content: '\e813'; }
assets/lib/eicons/css/elementor-icons.min.css000064400000044724151327220410015273 0ustar00/*! elementor-icons - v5.13.0 - 18-10-2021 */
@font-face{font-family:eicons;src:url(../fonts/eicons.eot?5.13.0);src:url(../fonts/eicons.eot?5.13.0#iefix) format("embedded-opentype"),url(../fonts/eicons.woff2?5.13.0) format("woff2"),url(../fonts/eicons.woff?5.13.0) format("woff"),url(../fonts/eicons.ttf?5.13.0) format("truetype"),url(../fonts/eicons.svg?5.13.0#eicon) format("svg");font-weight:400;font-style:normal}[class*=" eicon-"],[class^=eicon]{display:inline-block;font-family:eicons;font-size:inherit;font-weight:400;font-style:normal;font-variant:normal;line-height:1;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@keyframes a{0%{transform:rotate(0deg)}to{transform:rotate(359deg)}}.eicon-animation-spin{animation:a 2s infinite linear}.eicon-editor-link:before{content:'\e800'}.eicon-editor-unlink:before{content:'\e801'}.eicon-editor-external-link:before{content:'\e802'}.eicon-editor-close:before{content:'\e803'}.eicon-editor-list-ol:before{content:'\e804'}.eicon-editor-list-ul:before{content:'\e805'}.eicon-editor-bold:before{content:'\e806'}.eicon-editor-italic:before{content:'\e807'}.eicon-editor-underline:before{content:'\e808'}.eicon-editor-paragraph:before{content:'\e809'}.eicon-editor-h1:before{content:'\e80a'}.eicon-editor-h2:before{content:'\e80b'}.eicon-editor-h3:before{content:'\e80c'}.eicon-editor-h4:before{content:'\e80d'}.eicon-editor-h5:before{content:'\e80e'}.eicon-editor-h6:before{content:'\e80f'}.eicon-editor-quote:before{content:'\e810'}.eicon-editor-code:before{content:'\e811'}.eicon-elementor:before{content:'\e812'}.eicon-elementor-circle:before{content:'\e813'}.eicon-pojome:before{content:'\e814'}.eicon-plus:before{content:'\e815'}.eicon-menu-bar:before{content:'\e816'}.eicon-apps:before{content:'\e817'}.eicon-accordion:before{content:'\e818'}.eicon-alert:before{content:'\e819'}.eicon-animation-text:before{content:'\e81a'}.eicon-animation:before{content:'\e81b'}.eicon-banner:before{content:'\e81c'}.eicon-blockquote:before{content:'\e81d'}.eicon-button:before{content:'\e81e'}.eicon-call-to-action:before{content:'\e81f'}.eicon-captcha:before{content:'\e820'}.eicon-carousel:before{content:'\e821'}.eicon-checkbox:before{content:'\e822'}.eicon-columns:before{content:'\e823'}.eicon-countdown:before{content:'\e824'}.eicon-counter:before{content:'\e825'}.eicon-date:before{content:'\e826'}.eicon-divider-shape:before{content:'\e827'}.eicon-divider:before{content:'\e828'}.eicon-download-button:before{content:'\e829'}.eicon-dual-button:before{content:'\e82a'}.eicon-email-field:before{content:'\e82b'}.eicon-facebook-comments:before{content:'\e82c'}.eicon-facebook-like-box:before{content:'\e82d'}.eicon-form-horizontal:before{content:'\e82e'}.eicon-form-vertical:before{content:'\e82f'}.eicon-gallery-grid:before{content:'\e830'}.eicon-gallery-group:before{content:'\e831'}.eicon-gallery-justified:before{content:'\e832'}.eicon-gallery-masonry:before{content:'\e833'}.eicon-icon-box:before{content:'\e834'}.eicon-image-before-after:before{content:'\e835'}.eicon-image-box:before{content:'\e836'}.eicon-image-hotspot:before{content:'\e837'}.eicon-image-rollover:before{content:'\e838'}.eicon-info-box:before{content:'\e839'}.eicon-inner-section:before{content:'\e83a'}.eicon-mailchimp:before{content:'\e83b'}.eicon-menu-card:before{content:'\e83c'}.eicon-navigation-horizontal:before{content:'\e83d'}.eicon-nav-menu:before{content:'\e83e'}.eicon-navigation-vertical:before{content:'\e83f'}.eicon-number-field:before{content:'\e840'}.eicon-parallax:before{content:'\e841'}.eicon-php7:before{content:'\e842'}.eicon-post-list:before{content:'\e843'}.eicon-post-slider:before{content:'\e844'}.eicon-post:before{content:'\e845'}.eicon-posts-carousel:before{content:'\e846'}.eicon-posts-grid:before{content:'\e847'}.eicon-posts-group:before{content:'\e848'}.eicon-posts-justified:before{content:'\e849'}.eicon-posts-masonry:before{content:'\e84a'}.eicon-posts-ticker:before{content:'\e84b'}.eicon-price-list:before{content:'\e84c'}.eicon-price-table:before{content:'\e84d'}.eicon-radio:before{content:'\e84e'}.eicon-rtl:before{content:'\e84f'}.eicon-scroll:before{content:'\e850'}.eicon-search:before{content:'\e851'}.eicon-select:before{content:'\e852'}.eicon-share:before{content:'\e853'}.eicon-sidebar:before{content:'\e854'}.eicon-skill-bar:before{content:'\e855'}.eicon-slider-3d:before{content:'\e856'}.eicon-slider-album:before{content:'\e857'}.eicon-slider-device:before{content:'\e858'}.eicon-slider-full-screen:before{content:'\e859'}.eicon-slider-push:before{content:'\e85a'}.eicon-slider-vertical:before{content:'\e85b'}.eicon-slider-video:before{content:'\e85c'}.eicon-slides:before{content:'\e85d'}.eicon-social-icons:before{content:'\e85e'}.eicon-spacer:before{content:'\e85f'}.eicon-table:before{content:'\e860'}.eicon-tabs:before{content:'\e861'}.eicon-tel-field:before{content:'\e862'}.eicon-text-area:before{content:'\e863'}.eicon-text-field:before{content:'\e864'}.eicon-thumbnails-down:before{content:'\e865'}.eicon-thumbnails-half:before{content:'\e866'}.eicon-thumbnails-right:before{content:'\e867'}.eicon-time-line:before{content:'\e868'}.eicon-toggle:before{content:'\e869'}.eicon-url:before{content:'\e86a'}.eicon-t-letter:before{content:'\e86b'}.eicon-wordpress:before{content:'\e86c'}.eicon-text:before{content:'\e86d'}.eicon-anchor:before{content:'\e86e'}.eicon-bullet-list:before{content:'\e86f'}.eicon-code:before{content:'\e870'}.eicon-favorite:before{content:'\e871'}.eicon-google-maps:before{content:'\e872'}.eicon-image:before{content:'\e873'}.eicon-photo-library:before{content:'\e874'}.eicon-woocommerce:before{content:'\e875'}.eicon-youtube:before{content:'\e876'}.eicon-flip-box:before{content:'\e877'}.eicon-settings:before{content:'\e878'}.eicon-headphones:before{content:'\e879'}.eicon-testimonial:before{content:'\e87a'}.eicon-counter-circle:before{content:'\e87b'}.eicon-person:before{content:'\e87c'}.eicon-chevron-right:before{content:'\e87d'}.eicon-chevron-left:before{content:'\e87e'}.eicon-close:before{content:'\e87f'}.eicon-file-download:before{content:'\e880'}.eicon-save:before{content:'\e881'}.eicon-zoom-in:before{content:'\e882'}.eicon-shortcode:before{content:'\e883'}.eicon-nerd:before{content:'\e884'}.eicon-device-desktop:before{content:'\e885'}.eicon-device-tablet:before{content:'\e886'}.eicon-device-mobile:before{content:'\e887'}.eicon-document-file:before{content:'\e888'}.eicon-folder-o:before{content:'\e889'}.eicon-hypster:before{content:'\e88a'}.eicon-h-align-left:before{content:'\e88b'}.eicon-h-align-right:before{content:'\e88c'}.eicon-h-align-center:before{content:'\e88d'}.eicon-h-align-stretch:before{content:'\e88e'}.eicon-v-align-top:before{content:'\e88f'}.eicon-v-align-bottom:before{content:'\e890'}.eicon-v-align-middle:before{content:'\e891'}.eicon-v-align-stretch:before{content:'\e892'}.eicon-pro-icon:before{content:'\e893'}.eicon-mail:before{content:'\e894'}.eicon-lock-user:before{content:'\e895'}.eicon-testimonial-carousel:before{content:'\e896'}.eicon-media-carousel:before{content:'\e897'}.eicon-section:before{content:'\e898'}.eicon-column:before{content:'\e899'}.eicon-edit:before{content:'\e89a'}.eicon-clone:before{content:'\e89b'}.eicon-trash:before{content:'\e89c'}.eicon-play:before{content:'\e89d'}.eicon-angle-right:before{content:'\e89e'}.eicon-angle-left:before{content:'\e89f'}.eicon-animated-headline:before{content:'\e8a0'}.eicon-menu-toggle:before{content:'\e8a1'}.eicon-fb-embed:before{content:'\e8a2'}.eicon-fb-feed:before{content:'\e8a3'}.eicon-twitter-embed:before{content:'\e8a4'}.eicon-twitter-feed:before{content:'\e8a5'}.eicon-sync:before{content:'\e8a6'}.eicon-import-export:before{content:'\e8a7'}.eicon-check-circle:before{content:'\e8a8'}.eicon-library-save:before{content:'\e8a9'}.eicon-library-download:before{content:'\e8aa'}.eicon-insert:before{content:'\e8ab'}.eicon-preview-medium:before{content:'\e8ac'}.eicon-sort-down:before{content:'\e8ad'}.eicon-sort-up:before{content:'\e8ae'}.eicon-heading:before{content:'\e8af'}.eicon-logo:before{content:'\e8b0'}.eicon-meta-data:before{content:'\e8b1'}.eicon-post-content:before{content:'\e8b2'}.eicon-post-excerpt:before{content:'\e8b3'}.eicon-post-navigation:before{content:'\e8b4'}.eicon-yoast:before{content:'\e8b5'}.eicon-nerd-chuckle:before{content:'\e8b6'}.eicon-nerd-wink:before{content:'\e8b7'}.eicon-comments:before{content:'\e8b8'}.eicon-download-circle-o:before{content:'\e8b9'}.eicon-library-upload:before{content:'\e8ba'}.eicon-save-o:before{content:'\e8bb'}.eicon-upload-circle-o:before{content:'\e8bc'}.eicon-ellipsis-h:before{content:'\e8bd'}.eicon-ellipsis-v:before{content:'\e8be'}.eicon-arrow-left:before{content:'\e8bf'}.eicon-arrow-right:before{content:'\e8c0'}.eicon-arrow-up:before{content:'\e8c1'}.eicon-arrow-down:before{content:'\e8c2'}.eicon-play-o:before{content:'\e8c3'}.eicon-archive-posts:before{content:'\e8c4'}.eicon-archive-title:before{content:'\e8c5'}.eicon-featured-image:before{content:'\e8c6'}.eicon-post-info:before{content:'\e8c7'}.eicon-post-title:before{content:'\e8c8'}.eicon-site-logo:before{content:'\e8c9'}.eicon-site-search:before{content:'\e8ca'}.eicon-site-title:before{content:'\e8cb'}.eicon-plus-square:before{content:'\e8cc'}.eicon-minus-square:before{content:'\e8cd'}.eicon-cloud-check:before{content:'\e8ce'}.eicon-drag-n-drop:before{content:'\e8cf'}.eicon-welcome:before{content:'\e8d0'}.eicon-handle:before{content:'\e8d1'}.eicon-cart:before{content:'\e8d2'}.eicon-product-add-to-cart:before{content:'\e8d3'}.eicon-product-breadcrumbs:before{content:'\e8d4'}.eicon-product-categories:before{content:'\e8d5'}.eicon-product-description:before{content:'\e8d6'}.eicon-product-images:before{content:'\e8d7'}.eicon-product-info:before{content:'\e8d8'}.eicon-product-meta:before{content:'\e8d9'}.eicon-product-pages:before{content:'\e8da'}.eicon-product-price:before{content:'\e8db'}.eicon-product-rating:before{content:'\e8dc'}.eicon-product-related:before{content:'\e8dd'}.eicon-product-stock:before{content:'\e8de'}.eicon-product-tabs:before{content:'\e8df'}.eicon-product-title:before{content:'\e8e0'}.eicon-product-upsell:before{content:'\e8e1'}.eicon-products:before{content:'\e8e2'}.eicon-bag-light:before{content:'\e8e3'}.eicon-bag-medium:before{content:'\e8e4'}.eicon-bag-solid:before{content:'\e8e5'}.eicon-basket-light:before{content:'\e8e6'}.eicon-basket-medium:before{content:'\e8e7'}.eicon-basket-solid:before{content:'\e8e8'}.eicon-cart-light:before{content:'\e8e9'}.eicon-cart-medium:before{content:'\e8ea'}.eicon-cart-solid:before{content:'\e8eb'}.eicon-exchange:before{content:'\e8ec'}.eicon-preview-thin:before{content:'\e8ed'}.eicon-device-laptop:before{content:'\e8ee'}.eicon-collapse:before{content:'\e8ef'}.eicon-expand:before{content:'\e8f0'}.eicon-navigator:before{content:'\e8f1'}.eicon-plug:before{content:'\e8f2'}.eicon-dashboard:before{content:'\e8f3'}.eicon-typography:before{content:'\e8f4'}.eicon-info-circle-o:before{content:'\e8f5'}.eicon-integration:before{content:'\e8f6'}.eicon-plus-circle-o:before{content:'\e8f7'}.eicon-rating:before{content:'\e8f8'}.eicon-review:before{content:'\e8f9'}.eicon-tools:before{content:'\e8fa'}.eicon-loading:before{content:'\e8fb'}.eicon-sitemap:before{content:'\e8fc'}.eicon-click:before{content:'\e8fd'}.eicon-clock:before{content:'\e8fe'}.eicon-library-open:before{content:'\e8ff'}.eicon-warning:before{content:'\e900'}.eicon-flow:before{content:'\e901'}.eicon-cursor-move:before{content:'\e902'}.eicon-arrow-circle-left:before{content:'\e903'}.eicon-flash:before{content:'\e904'}.eicon-redo:before{content:'\e905'}.eicon-ban:before{content:'\e906'}.eicon-barcode:before{content:'\e907'}.eicon-calendar:before{content:'\e908'}.eicon-caret-left:before{content:'\e909'}.eicon-caret-right:before{content:'\e90a'}.eicon-caret-up:before{content:'\e90b'}.eicon-chain-broken:before{content:'\e90c'}.eicon-check-circle-o:before{content:'\e90d'}.eicon-check:before{content:'\e90e'}.eicon-chevron-double-left:before{content:'\e90f'}.eicon-chevron-double-right:before{content:'\e910'}.eicon-undo:before{content:'\e911'}.eicon-filter:before{content:'\e912'}.eicon-circle-o:before{content:'\e913'}.eicon-circle:before{content:'\e914'}.eicon-clock-o:before{content:'\e915'}.eicon-cog:before{content:'\e916'}.eicon-cogs:before{content:'\e917'}.eicon-commenting-o:before{content:'\e918'}.eicon-copy:before{content:'\e919'}.eicon-database:before{content:'\e91a'}.eicon-dot-circle-o:before{content:'\e91b'}.eicon-envelope:before{content:'\e91c'}.eicon-external-link-square:before{content:'\e91d'}.eicon-eyedropper:before{content:'\e91e'}.eicon-folder:before{content:'\e91f'}.eicon-font:before{content:'\e920'}.eicon-adjust:before{content:'\e921'}.eicon-lightbox:before{content:'\e922'}.eicon-heart-o:before{content:'\e923'}.eicon-history:before{content:'\e924'}.eicon-image-bold:before{content:'\e925'}.eicon-info-circle:before{content:'\e926'}.eicon-link:before{content:'\e927'}.eicon-long-arrow-left:before{content:'\e928'}.eicon-long-arrow-right:before{content:'\e929'}.eicon-caret-down:before{content:'\e92a'}.eicon-paint-brush:before{content:'\e92b'}.eicon-pencil:before{content:'\e92c'}.eicon-plus-circle:before{content:'\e92d'}.eicon-zoom-in-bold:before{content:'\e92e'}.eicon-sort-amount-desc:before{content:'\e92f'}.eicon-sign-out:before{content:'\e930'}.eicon-spinner:before{content:'\e931'}.eicon-square:before{content:'\e932'}.eicon-star-o:before{content:'\e933'}.eicon-star:before{content:'\e934'}.eicon-text-align-justify:before{content:'\e935'}.eicon-text-align-center:before{content:'\e936'}.eicon-tags:before{content:'\e937'}.eicon-text-align-left:before{content:'\e938'}.eicon-text-align-right:before{content:'\e939'}.eicon-close-circle:before{content:'\e93a'}.eicon-trash-o:before{content:'\e93b'}.eicon-font-awesome:before{content:'\e93c'}.eicon-user-circle-o:before{content:'\e93d'}.eicon-video-camera:before{content:'\e93e'}.eicon-heart:before{content:'\e93f'}.eicon-wrench:before{content:'\e940'}.eicon-help:before{content:'\e941'}.eicon-help-o:before{content:'\e942'}.eicon-zoom-out-bold:before{content:'\e943'}.eicon-plus-square-o:before{content:'\e944'}.eicon-minus-square-o:before{content:'\e945'}.eicon-minus-circle:before{content:'\e946'}.eicon-minus-circle-o:before{content:'\e947'}.eicon-code-bold:before{content:'\e948'}.eicon-cloud-upload:before{content:'\e949'}.eicon-search-bold:before{content:'\e94a'}.eicon-map-pin:before{content:'\e94b'}.eicon-meetup:before{content:'\e94c'}.eicon-slideshow:before{content:'\e94d'}.eicon-t-letter-bold:before{content:'\e94e'}.eicon-preferences:before{content:'\e94f'}.eicon-table-of-contents:before{content:'\e950'}.eicon-tv:before{content:'\e951'}.eicon-upload:before{content:'\e952'}.eicon-instagram-comments:before{content:'\e953'}.eicon-instagram-nested-gallery:before{content:'\e954'}.eicon-instagram-post:before{content:'\e955'}.eicon-instagram-video:before{content:'\e956'}.eicon-instagram-gallery:before{content:'\e957'}.eicon-instagram-likes:before{content:'\e958'}.eicon-facebook:before{content:'\e959'}.eicon-twitter:before{content:'\e95a'}.eicon-pinterest:before{content:'\e95b'}.eicon-frame-expand:before{content:'\e95c'}.eicon-frame-minimize:before{content:'\e95d'}.eicon-archive:before{content:'\e95e'}.eicon-colors-typography:before{content:'\e95f'}.eicon-custom:before{content:'\e960'}.eicon-footer:before{content:'\e961'}.eicon-header:before{content:'\e962'}.eicon-layout-settings:before{content:'\e963'}.eicon-lightbox-expand:before{content:'\e964'}.eicon-error-404:before{content:'\e965'}.eicon-theme-style:before{content:'\e966'}.eicon-search-results:before{content:'\e967'}.eicon-single-post:before{content:'\e968'}.eicon-site-identity:before{content:'\e969'}.eicon-theme-builder:before{content:'\e96a'}.eicon-download-bold:before{content:'\e96b'}.eicon-share-arrow:before{content:'\e96c'}.eicon-global-settings:before{content:'\e96d'}.eicon-user-preferences:before{content:'\e96e'}.eicon-lock:before{content:'\e96f'}.eicon-export-kit:before{content:'\e970'}.eicon-import-kit:before{content:'\e971'}.eicon-lottie:before{content:'\e972'}.eicon-products-archive:before{content:'\e973'}.eicon-single-product:before{content:'\e974'}.eicon-disable-trash-o:before{content:'\e975'}.eicon-single-page:before{content:'\e976'}.eicon-wordpress-light:before{content:'\e977'}.eicon-cogs-check:before{content:'\e978'}.eicon-custom-css:before{content:'\e979'}.eicon-global-colors:before{content:'\e97a'}.eicon-globe:before{content:'\e97b'}.eicon-typography-1:before{content:'\e97c'}.eicon-background:before{content:'\e97d'}.eicon-device-responsive:before{content:'\e97e'}.eicon-device-wide:before{content:'\e97f'}.eicon-code-highlight:before{content:'\e980'}.eicon-video-playlist:before{content:'\e981'}.eicon-download-kit:before{content:'\e982'}.eicon-kit-details:before{content:'\e983'}.eicon-kit-parts:before{content:'\e984'}.eicon-kit-upload:before{content:'\e985'}.eicon-kit-plugins:before{content:'\e986'}.eicon-kit-upload-alt:before{content:'\e987'}.eicon-hotspot:before{content:'\e988'}.eicon-paypal-button:before{content:'\e989'}.eicon-shape:before{content:'\e98a'}.eicon-wordart:before{content:'\e98b'}.eicon-checkout:before{content:'\e98c'}.eicon-container:before{content:'\e98d'}.eicon-flip:before{content:'\e98e'}.eicon-info:before{content:'\e98f'}.eicon-my-account:before{content:'\e990'}.eicon-purchase-summary:before{content:'\e991'}.eicon-page-transition:before{content:'\e992'}.eicon-spotify:before{content:'\e993'}.eicon-stripe-button:before{content:'\e994'}.eicon-woo-settings:before{content:'\e995'}.eicon-woo-cart:before{content:'\e996'}.eicon-grow:before{content:'\e997'}.eicon-order-end:before{content:'\e998'}.eicon-nowrap:before{content:'\e999'}.eicon-order-start:before{content:'\e99a'}.eicon-progress-tracker:before{content:'\e99b'}.eicon-shrink:before{content:'\e99c'}.eicon-wrap:before{content:'\e99d'}.eicon-align-center-h:before{content:'\e99e'}.eicon-align-center-v:before{content:'\e99f'}.eicon-align-end-h:before{content:'\e9a0'}.eicon-align-end-v:before{content:'\e9a1'}.eicon-align-start-h:before{content:'\e9a2'}.eicon-align-start-v:before{content:'\e9a3'}.eicon-align-stretch-h:before{content:'\e9a4'}.eicon-align-stretch-v:before{content:'\e9a5'}.eicon-justify-center-h:before{content:'\e9a6'}.eicon-justify-center-v:before{content:'\e9a7'}.eicon-justify-end-h:before{content:'\e9a8'}.eicon-justify-end-v:before{content:'\e9a9'}.eicon-justify-space-around-h:before{content:'\e9aa'}.eicon-justify-space-around-v:before{content:'\e9ab'}.eicon-justify-space-between-h:before{content:'\e9ac'}.eicon-justify-space-between-v:before{content:'\e9ad'}.eicon-justify-space-evenly-h:before{content:'\e9ae'}.eicon-justify-space-evenly-v:before{content:'\e9af'}.eicon-justify-start-h:before{content:'\e9b0'}.eicon-justify-start-v:before{content:'\e9b1'}.eicon-eye:before{content:'\e8ac'}.eicon-elementor-square:before{content:'\e813'}assets/lib/animate.css/animate.css000064400000032071151327220410013151 0ustar00/* Custom style for animate.css. Lines 1-17 moved to frontend/_animate.scss */

@keyframes bounce {
    from, 20%, 53%, 80%, to {
        animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
        transform: translate3d(0,0,0);
    }

    40%, 43% {
        animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
        transform: translate3d(0, -30px, 0);
    }

    70% {
        animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
        transform: translate3d(0, -15px, 0);
    }

    90% {
        transform: translate3d(0,-4px,0);
    }
}

.bounce {
    animation-name: bounce;
    transform-origin: center bottom;
}

@keyframes flash {
    from, 50%, to {
        opacity: 1;
    }

    25%, 75% {
        opacity: 0;
    }
}

.flash {
    animation-name: flash;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@keyframes pulse {
    from {
        transform: scale3d(1, 1, 1);
    }

    50% {
        transform: scale3d(1.05, 1.05, 1.05);
    }

    to {
        transform: scale3d(1, 1, 1);
    }
}

.pulse {
    animation-name: pulse;
}

@keyframes rubberBand {
    from {
        transform: scale3d(1, 1, 1);
    }

    30% {
        transform: scale3d(1.25, 0.75, 1);
    }

    40% {
        transform: scale3d(0.75, 1.25, 1);
    }

    50% {
        transform: scale3d(1.15, 0.85, 1);
    }

    65% {
        transform: scale3d(.95, 1.05, 1);
    }

    75% {
        transform: scale3d(1.05, .95, 1);
    }

    to {
        transform: scale3d(1, 1, 1);
    }
}

.rubberBand {
    animation-name: rubberBand;
}

@keyframes shake {
    from, to {
        transform: translate3d(0, 0, 0);
    }

    10%, 30%, 50%, 70%, 90% {
        transform: translate3d(-10px, 0, 0);
    }

    20%, 40%, 60%, 80% {
        transform: translate3d(10px, 0, 0);
    }
}

.shake {
    animation-name: shake;
}

@keyframes headShake {
    0% {
        transform: translateX(0);
    }

    6.5% {
        transform: translateX(-6px) rotateY(-9deg);
    }

    18.5% {
        transform: translateX(5px) rotateY(7deg);
    }

    31.5% {
        transform: translateX(-3px) rotateY(-5deg);
    }

    43.5% {
        transform: translateX(2px) rotateY(3deg);
    }

    50% {
        transform: translateX(0);
    }
}

.headShake {
    animation-timing-function: ease-in-out;
    animation-name: headShake;
}

@keyframes swing {
    20% {
        transform: rotate3d(0, 0, 1, 15deg);
    }

    40% {
        transform: rotate3d(0, 0, 1, -10deg);
    }

    60% {
        transform: rotate3d(0, 0, 1, 5deg);
    }

    80% {
        transform: rotate3d(0, 0, 1, -5deg);
    }

    to {
        transform: rotate3d(0, 0, 1, 0deg);
    }
}

.swing {
    transform-origin: top center;
    animation-name: swing;
}

@keyframes tada {
    from {
        transform: scale3d(1, 1, 1);
    }

    10%, 20% {
        transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
    }

    30%, 50%, 70%, 90% {
        transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    }

    40%, 60%, 80% {
        transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    }

    to {
        transform: scale3d(1, 1, 1);
    }
}

.tada {
    animation-name: tada;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@keyframes wobble {
    from {
        transform: none;
    }

    15% {
        transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    }

    30% {
        transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    }

    45% {
        transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    }

    60% {
        transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    }

    75% {
        transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    }

    to {
        transform: none;
    }
}

.wobble {
    animation-name: wobble;
}

@keyframes jello {
    from, 11.1%, to {
        transform: none;
    }

    22.2% {
        transform: skewX(-12.5deg) skewY(-12.5deg);
    }

    33.3% {
        transform: skewX(6.25deg) skewY(6.25deg);
    }

    44.4% {
        transform: skewX(-3.125deg) skewY(-3.125deg);
    }

    55.5% {
        transform: skewX(1.5625deg) skewY(1.5625deg);
    }

    66.6% {
        transform: skewX(-0.78125deg) skewY(-0.78125deg);
    }

    77.7% {
        transform: skewX(0.390625deg) skewY(0.390625deg);
    }

    88.8% {
        transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
    }
}

.jello {
    animation-name: jello;
    transform-origin: center;
}

@keyframes bounceIn {
    from, 20%, 40%, 60%, 80%, to {
        animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    }

    0% {
        opacity: 0;
        transform: scale3d(.3, .3, .3);
    }

    20% {
        transform: scale3d(1.1, 1.1, 1.1);
    }

    40% {
        transform: scale3d(.9, .9, .9);
    }

    60% {
        opacity: 1;
        transform: scale3d(1.03, 1.03, 1.03);
    }

    80% {
        transform: scale3d(.97, .97, .97);
    }

    to {
        opacity: 1;
        transform: scale3d(1, 1, 1);
    }
}

.bounceIn {
    animation-name: bounceIn;
}

@keyframes bounceInDown {
    from, 60%, 75%, 90%, to {
        animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    }

    0% {
        opacity: 0;
        transform: translate3d(0, -3000px, 0);
    }

    60% {
        opacity: 1;
        transform: translate3d(0, 25px, 0);
    }

    75% {
        transform: translate3d(0, -10px, 0);
    }

    90% {
        transform: translate3d(0, 5px, 0);
    }

    to {
        transform: none;
    }
}

.bounceInDown {
    animation-name: bounceInDown;
}

@keyframes bounceInLeft {
    from, 60%, 75%, 90%, to {
        animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    }

    0% {
        opacity: 0;
        transform: translate3d(-3000px, 0, 0);
    }

    60% {
        opacity: 1;
        transform: translate3d(25px, 0, 0);
    }

    75% {
        transform: translate3d(-10px, 0, 0);
    }

    90% {
        transform: translate3d(5px, 0, 0);
    }

    to {
        transform: none;
    }
}

.bounceInLeft {
    animation-name: bounceInLeft;
}

@keyframes bounceInRight {
    from, 60%, 75%, 90%, to {
        animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    }

    from {
        opacity: 0;
        transform: translate3d(3000px, 0, 0);
    }

    60% {
        opacity: 1;
        transform: translate3d(-25px, 0, 0);
    }

    75% {
        transform: translate3d(10px, 0, 0);
    }

    90% {
        transform: translate3d(-5px, 0, 0);
    }

    to {
        transform: none;
    }
}

.bounceInRight {
    animation-name: bounceInRight;
}

@keyframes bounceInUp {
    from, 60%, 75%, 90%, to {
        animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    }

    from {
        opacity: 0;
        transform: translate3d(0, 3000px, 0);
    }

    60% {
        opacity: 1;
        transform: translate3d(0, -20px, 0);
    }

    75% {
        transform: translate3d(0, 10px, 0);
    }

    90% {
        transform: translate3d(0, -5px, 0);
    }

    to {
        transform: translate3d(0, 0, 0);
    }
}

.bounceInUp {
    animation-name: bounceInUp;
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

.fadeIn {
    animation-name: fadeIn;
}

@keyframes fadeInDown {
    from {
        opacity: 0;
        transform: translate3d(0, -100%, 0);
    }

    to {
        opacity: 1;
        transform: none;
    }
}

.fadeInDown {
    animation-name: fadeInDown;
}

@keyframes fadeInLeft {
    from {
        opacity: 0;
        transform: translate3d(-100%, 0, 0);
    }

    to {
        opacity: 1;
        transform: none;
    }
}

.fadeInLeft {
    animation-name: fadeInLeft;
}

@keyframes fadeInRight {
    from {
        opacity: 0;
        transform: translate3d(100%, 0, 0);
    }

    to {
        opacity: 1;
        transform: none;
    }
}

.fadeInRight {
    animation-name: fadeInRight;
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translate3d(0, 100%, 0);
    }

    to {
        opacity: 1;
        transform: none;
    }
}

.fadeInUp {
    animation-name: fadeInUp;
}

@keyframes lightSpeedIn {
    from {
        transform: translate3d(100%, 0, 0) skewX(-30deg);
        opacity: 0;
    }

    60% {
        transform: skewX(20deg);
        opacity: 1;
    }

    80% {
        transform: skewX(-5deg);
        opacity: 1;
    }

    to {
        transform: none;
        opacity: 1;
    }
}

.lightSpeedIn {
    animation-name: lightSpeedIn;
    animation-timing-function: ease-out;
}

@keyframes rotateIn {
    from {
        transform-origin: center;
        transform: rotate3d(0, 0, 1, -200deg);
        opacity: 0;
    }

    to {
        transform-origin: center;
        transform: none;
        opacity: 1;
    }
}

.rotateIn {
    animation-name: rotateIn;
}

@keyframes rotateInDownLeft {
    from {
        transform-origin: left bottom;
        transform: rotate3d(0, 0, 1, -45deg);
        opacity: 0;
    }

    to {
        transform-origin: left bottom;
        transform: none;
        opacity: 1;
    }
}

.rotateInDownLeft {
    animation-name: rotateInDownLeft;
}

@keyframes rotateInDownRight {
    from {
        transform-origin: right bottom;
        transform: rotate3d(0, 0, 1, 45deg);
        opacity: 0;
    }

    to {
        transform-origin: right bottom;
        transform: none;
        opacity: 1;
    }
}

.rotateInDownRight {
    animation-name: rotateInDownRight;
}

@keyframes rotateInUpLeft {
    from {
        transform-origin: left bottom;
        transform: rotate3d(0, 0, 1, 45deg);
        opacity: 0;
    }

    to {
        transform-origin: left bottom;
        transform: none;
        opacity: 1;
    }
}

.rotateInUpLeft {
    animation-name: rotateInUpLeft;
}

@keyframes rotateInUpRight {
    from {
        transform-origin: right bottom;
        transform: rotate3d(0, 0, 1, -90deg);
        opacity: 0;
    }

    to {
        transform-origin: right bottom;
        transform: none;
        opacity: 1;
    }
}

.rotateInUpRight {
    animation-name: rotateInUpRight;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@keyframes rollIn {
    from {
        opacity: 0;
        transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    }

    to {
        opacity: 1;
        transform: none;
    }
}

.rollIn {
    animation-name: rollIn;
}

@keyframes zoomIn {
    from {
        opacity: 0;
        transform: scale3d(.3, .3, .3);
    }

    50% {
        opacity: 1;
    }
}

.zoomIn {
    animation-name: zoomIn;
}

@keyframes zoomInDown {
    from {
        opacity: 0;
        transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
        animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    }

    60% {
        opacity: 1;
        transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    }
}

.zoomInDown {
    animation-name: zoomInDown;
}

@keyframes zoomInLeft {
    from {
        opacity: 0;
        transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
        animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    }

    60% {
        opacity: 1;
        transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    }
}

.zoomInLeft {
    animation-name: zoomInLeft;
}

@keyframes zoomInRight {
    from {
        opacity: 0;
        transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
        animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    }

    60% {
        opacity: 1;
        transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    }
}

.zoomInRight {
    animation-name: zoomInRight;
}

@keyframes zoomInUp {
    from {
        opacity: 0;
        transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
        animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    }

    60% {
        opacity: 1;
        transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    }
}

.zoomInUp {
    animation-name: zoomInUp;
}

@keyframes slideInDown {
    from {
        transform: translate3d(0, -100%, 0);
        visibility: visible;
    }

    to {
        transform: translate3d(0, 0, 0);
    }
}

.slideInDown {
    animation-name: slideInDown;
}

@keyframes slideInLeft {
    from {
        transform: translate3d(-100%, 0, 0);
        visibility: visible;
    }

    to {
        transform: translate3d(0, 0, 0);
    }
}

.slideInLeft {
    animation-name: slideInLeft;
}

@keyframes slideInRight {
    from {
        transform: translate3d(100%, 0, 0);
        visibility: visible;
    }

    to {
        transform: translate3d(0, 0, 0);
    }
}

.slideInRight {
    animation-name: slideInRight;
}

@keyframes slideInUp {
    from {
        transform: translate3d(0, 100%, 0);
        visibility: visible;
    }

    to {
        transform: translate3d(0, 0, 0);
    }
}

.slideInUp {
    animation-name: slideInUp;
}
assets/lib/animate.css/animate-config.json000064400000001523151327220410014573 0ustar00{
  "attention_seekers": [
    "bounce",
    "flash",
    "pulse",
    "rubberBand",
    "shake",
    "headShake",
    "swing",
    "tada",
    "wobble",
    "jello"
  ],

  "bouncing_entrances": [
    "bounceIn",
    "bounceInDown",
    "bounceInLeft",
    "bounceInRight",
    "bounceInUp"
  ],

  "fading_entrances": [
    "fadeIn",
    "fadeInDown",
    "fadeInLeft",
    "fadeInRight",
    "fadeInUp"
  ],

  "lightspeed": [
    "lightSpeedIn"
  ],

  "rotating_entrances": [
    "rotateIn",
    "rotateInDownLeft",
    "rotateInDownRight",
    "rotateInUpLeft",
    "rotateInUpRight"
  ],

  "specials": [
    "rollIn"
  ],

  "zooming_entrances": [
    "zoomIn",
    "zoomInDown",
    "zoomInLeft",
    "zoomInRight",
    "zoomInUp"
  ],

  "sliding_entrances": [
    "slideInDown",
    "slideInLeft",
    "slideInRight",
    "slideInUp"
  ]
}
assets/lib/animate.css/animate.min.css000064400000020401151327220410013725 0ustar00@keyframes bounce{20%,53%,80%,from,to{animation-timing-function:cubic-bezier(.215,.61,.355,1);transform:translate3d(0,0,0)}40%,43%{animation-timing-function:cubic-bezier(.755,.050,.855,.060);transform:translate3d(0,-30px,0)}70%{animation-timing-function:cubic-bezier(.755,.050,.855,.060);transform:translate3d(0,-15px,0)}90%{transform:translate3d(0,-4px,0)}}.bounce{animation-name:bounce;transform-origin:center bottom}@keyframes flash{50%,from,to{opacity:1}25%,75%{opacity:0}}.flash{animation-name:flash}@keyframes pulse{from,to{transform:scale3d(1,1,1)}50%{transform:scale3d(1.05,1.05,1.05)}}.pulse{animation-name:pulse}@keyframes rubberBand{from,to{transform:scale3d(1,1,1)}30%{transform:scale3d(1.25,.75,1)}40%{transform:scale3d(.75,1.25,1)}50%{transform:scale3d(1.15,.85,1)}65%{transform:scale3d(.95,1.05,1)}75%{transform:scale3d(1.05,.95,1)}}.rubberBand{animation-name:rubberBand}@keyframes shake{from,to{transform:translate3d(0,0,0)}10%,30%,50%,70%,90%{transform:translate3d(-10px,0,0)}20%,40%,60%,80%{transform:translate3d(10px,0,0)}}.shake{animation-name:shake}@keyframes headShake{0%{transform:translateX(0)}6.5%{transform:translateX(-6px) rotateY(-9deg)}18.5%{transform:translateX(5px) rotateY(7deg)}31.5%{transform:translateX(-3px) rotateY(-5deg)}43.5%{transform:translateX(2px) rotateY(3deg)}50%{transform:translateX(0)}}.headShake{animation-timing-function:ease-in-out;animation-name:headShake}@keyframes swing{20%{transform:rotate3d(0,0,1,15deg)}40%{transform:rotate3d(0,0,1,-10deg)}60%{transform:rotate3d(0,0,1,5deg)}80%{transform:rotate3d(0,0,1,-5deg)}to{transform:rotate3d(0,0,1,0deg)}}.swing{transform-origin:top center;animation-name:swing}@keyframes tada{from,to{transform:scale3d(1,1,1)}10%,20%{transform:scale3d(.9,.9,.9) rotate3d(0,0,1,-3deg)}30%,50%,70%,90%{transform:scale3d(1.1,1.1,1.1) rotate3d(0,0,1,3deg)}40%,60%,80%{transform:scale3d(1.1,1.1,1.1) rotate3d(0,0,1,-3deg)}}.tada{animation-name:tada}@keyframes wobble{from,to{transform:none}15%{transform:translate3d(-25%,0,0) rotate3d(0,0,1,-5deg)}30%{transform:translate3d(20%,0,0) rotate3d(0,0,1,3deg)}45%{transform:translate3d(-15%,0,0) rotate3d(0,0,1,-3deg)}60%{transform:translate3d(10%,0,0) rotate3d(0,0,1,2deg)}75%{transform:translate3d(-5%,0,0) rotate3d(0,0,1,-1deg)}}.wobble{animation-name:wobble}@keyframes jello{11.1%,from,to{transform:none}22.2%{transform:skewX(-12.5deg) skewY(-12.5deg)}33.3%{transform:skewX(6.25deg) skewY(6.25deg)}44.4%{transform:skewX(-3.125deg) skewY(-3.125deg)}55.5%{transform:skewX(1.5625deg) skewY(1.5625deg)}66.6%{transform:skewX(-.78125deg) skewY(-.78125deg)}77.7%{transform:skewX(.390625deg) skewY(.390625deg)}88.8%{transform:skewX(-.1953125deg) skewY(-.1953125deg)}}.jello{animation-name:jello;transform-origin:center}@keyframes bounceIn{20%,40%,60%,80%,from,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:scale3d(.3,.3,.3)}20%{transform:scale3d(1.1,1.1,1.1)}40%{transform:scale3d(.9,.9,.9)}60%{opacity:1;transform:scale3d(1.03,1.03,1.03)}80%{transform:scale3d(.97,.97,.97)}to{opacity:1;transform:scale3d(1,1,1)}}.bounceIn{animation-name:bounceIn}@keyframes bounceInDown{60%,75%,90%,from,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}.bounceInDown{animation-name:bounceInDown}@keyframes bounceInLeft{60%,75%,90%,from,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}.bounceInLeft{animation-name:bounceInLeft}@keyframes bounceInRight{60%,75%,90%,from,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}from{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}.bounceInRight{animation-name:bounceInRight}@keyframes bounceInUp{60%,75%,90%,from,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}from{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translate3d(0,0,0)}}.bounceInUp{animation-name:bounceInUp}@keyframes fadeIn{from{opacity:0}to{opacity:1}}.fadeIn{animation-name:fadeIn}@keyframes fadeInDown{from{opacity:0;transform:translate3d(0,-100%,0)}to{opacity:1;transform:none}}.fadeInDown{animation-name:fadeInDown}@keyframes fadeInLeft{from{opacity:0;transform:translate3d(-100%,0,0)}to{opacity:1;transform:none}}.fadeInLeft{animation-name:fadeInLeft}@keyframes fadeInRight{from{opacity:0;transform:translate3d(100%,0,0)}to{opacity:1;transform:none}}.fadeInRight{animation-name:fadeInRight}@keyframes fadeInUp{from{opacity:0;transform:translate3d(0,100%,0)}to{opacity:1;transform:none}}.fadeInUp{animation-name:fadeInUp}@keyframes lightSpeedIn{from{transform:translate3d(100%,0,0) skewX(-30deg);opacity:0}60%{transform:skewX(20deg);opacity:1}80%{transform:skewX(-5deg);opacity:1}to{transform:none;opacity:1}}.lightSpeedIn{animation-name:lightSpeedIn;animation-timing-function:ease-out}@keyframes rotateIn{from{transform-origin:center;transform:rotate3d(0,0,1,-200deg);opacity:0}to{transform-origin:center;transform:none;opacity:1}}.rotateIn{animation-name:rotateIn}@keyframes rotateInDownLeft{from{transform-origin:left bottom;transform:rotate3d(0,0,1,-45deg);opacity:0}to{transform-origin:left bottom;transform:none;opacity:1}}.rotateInDownLeft{animation-name:rotateInDownLeft}@keyframes rotateInDownRight{from{transform-origin:right bottom;transform:rotate3d(0,0,1,45deg);opacity:0}to{transform-origin:right bottom;transform:none;opacity:1}}.rotateInDownRight{animation-name:rotateInDownRight}@keyframes rotateInUpLeft{from{transform-origin:left bottom;transform:rotate3d(0,0,1,45deg);opacity:0}to{transform-origin:left bottom;transform:none;opacity:1}}.rotateInUpLeft{animation-name:rotateInUpLeft}@keyframes rotateInUpRight{from{transform-origin:right bottom;transform:rotate3d(0,0,1,-90deg);opacity:0}to{transform-origin:right bottom;transform:none;opacity:1}}.rotateInUpRight{animation-name:rotateInUpRight}@keyframes rollIn{from{opacity:0;transform:translate3d(-100%,0,0) rotate3d(0,0,1,-120deg)}to{opacity:1;transform:none}}.rollIn{animation-name:rollIn}@keyframes zoomIn{from{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}.zoomIn{animation-name:zoomIn}@keyframes zoomInDown{from{opacity:0;transform:scale3d(.1,.1,.1) translate3d(0,-1000px,0);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;transform:scale3d(.475,.475,.475) translate3d(0,60px,0);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.zoomInDown{animation-name:zoomInDown}@keyframes zoomInLeft{from{opacity:0;transform:scale3d(.1,.1,.1) translate3d(-1000px,0,0);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;transform:scale3d(.475,.475,.475) translate3d(10px,0,0);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.zoomInLeft{animation-name:zoomInLeft}@keyframes zoomInRight{from{opacity:0;transform:scale3d(.1,.1,.1) translate3d(1000px,0,0);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;transform:scale3d(.475,.475,.475) translate3d(-10px,0,0);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.zoomInRight{animation-name:zoomInRight}@keyframes zoomInUp{from{opacity:0;transform:scale3d(.1,.1,.1) translate3d(0,1000px,0);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.zoomInUp{animation-name:zoomInUp}@keyframes slideInDown{from{transform:translate3d(0,-100%,0);visibility:visible}to{transform:translate3d(0,0,0)}}.slideInDown{animation-name:slideInDown}@keyframes slideInLeft{from{transform:translate3d(-100%,0,0);visibility:visible}to{transform:translate3d(0,0,0)}}.slideInLeft{animation-name:slideInLeft}@keyframes slideInRight{from{transform:translate3d(100%,0,0);visibility:visible}to{transform:translate3d(0,0,0)}}.slideInRight{animation-name:slideInRight}@keyframes slideInUp{from{transform:translate3d(0,100%,0);visibility:visible}to{transform:translate3d(0,0,0)}}.slideInUp{animation-name:slideInUp}
assets/lib/inline-editor/js/inline-editor.js000064400000076772151327220410015112 0ustar00/**
 * Licensed under MIT, https://github.com/sofish/pen
 *
 * Customized and fixed by Elementor team
 */

(function(root, doc) {

	var InlineEditor, debugMode, selection, utils = {};
	var slice = Array.prototype.slice;

	// allow command list
	var commandsReg = {
		block: /^(?:p|h[1-6]|blockquote|pre)$/,
		inline: /^(?:justify(center|full|left|right)|strikethrough|insert(un)?orderedlist|(in|out)dent)$/,
		biu: /^(bold|italic|underline)$/,
		source: /^(?:createlink|unlink)$/,
		insert: /^(?:inserthorizontalrule|insertimage|insert)$/,
		wrap: /^(?:code)$/
	};

	var lineBreakReg = /^(?:blockquote|pre|div)$/i,
		effectNodeReg = /(?:[pubia]|strong|em|h[1-6]|blockquote|code|[uo]l|li)/i;

	var strReg = {
		whiteSpace: /(^\s+)|(\s+$)/g,
		mailTo: /^(?!mailto:|.+\/|.+#|.+\?)(.*@.*\..+)$/,
		http: /^(?!\w+?:\/\/|mailto:|\/|\.\/|\?|#)(.*)$/
	};

	var autoLinkReg = {
		url: /((https?|ftp):\/\/|www\.)[^\s<]{3,}/gi,
		prefix: /^(?:https?|ftp):\/\//i,
		notLink: /^(?:img|a|input|audio|video|source|code|pre|script|head|title|style)$/i,
		maxLength: 100
	};

	var styleBackupDict = {
		bold: {
			styleKey: 'font-weight',
			correctValue: 'normal'
		},
		italic: {
			styleKey: 'font-style',
			correctValue: 'normal'
		},
		underline: {
			styleKey: 'text-decoration',
			correctValue: 'none'
		}
	};

	// type detect
	utils.is = function(obj, type) {
		return Object.prototype.toString.call(obj).slice(8, -1) === type;
	};

	utils.forEach = function(obj, iterator, arrayLike) {
		if (!obj) return;
		if (arrayLike == null) arrayLike = utils.is(obj, 'Array');
		if (arrayLike) {
			for (var i = 0, l = obj.length; i < l; i++) iterator(obj[i], i, obj);
		} else {
			for (var key in obj) {
				if (obj.hasOwnProperty(key)) iterator(obj[key], key, obj);
			}
		}
	};

	// copy props from a obj
	utils.copy = function(defaults, source) {
		utils.forEach(source, function (value, key) {
			defaults[key] = utils.is(value, 'Object') ? utils.copy({}, value) :
				utils.is(value, 'Array') ? utils.copy([], value) : value;
		});
		return defaults;
	};

	// log
	utils.log = function(message, force) {
		if (debugMode || force)
			console.log('%cPEN DEBUGGER: %c' + message, 'font-family:arial,sans-serif;color:#1abf89;line-height:2em;', 'font-family:cursor,monospace;color:#333;');
	};

	utils.delayExec = function (fn) {
		var timer = null;
		return function (delay) {
			clearTimeout(timer);
			timer = setTimeout(function() {
				fn();
			}, delay || 1);
		};
	};

	// merge: make it easy to have a fallback
	utils.merge = function(config) {

		// default settings
		var defaults = {
			class: 'pen',
			placeholderClass: 'pen-placeholder',
			placeholderAttr: 'data-pen-placeholder',
			debug: false,
			toolbar: null, // custom toolbar
			mode: 'basic',
			ignoreLineBreak: false,
			toolbarIconsPrefix: 'fa fa-',
			toolbarIconsDictionary: {externalLink: 'eicon-editor-external-link'},
			stay: config.stay || !config.debug,
			stayMsg: 'Are you going to leave here?',
			textarea: '<textarea name="content"></textarea>',
			list: [
				'blockquote', 'h2', 'h3', 'p', 'code', 'insertOrderedList', 'insertUnorderedList', 'inserthorizontalrule',
				'indent', 'outdent', 'bold', 'italic', 'underline', 'createlink', 'insertimage'
			],
			titles: {},
			cleanAttrs: ['id', 'class', 'style', 'name'],
			cleanTags: ['script'],
			linksInNewWindow: false
		};

		// user-friendly config
		if (config.nodeType === 1) {
			defaults.editor = config;
		} else if (config.match && config.match(/^#[\S]+$/)) {
			defaults.editor = doc.getElementById(config.slice(1));
		} else {
			defaults = utils.copy(defaults, config);
		}

		return defaults;
	};

	function commandOverall(cmd, val) {
		var message = ' to exec 「' + cmd + '」 command' + (val ? (' with value: ' + val) : '');

		try {
			doc.execCommand(cmd, false, val);
		} catch(err) {
			// TODO: there's an error when insert a image to document, but not a bug
			return utils.log('fail' + message, true);
		}

		utils.log('success' + message);
	}

	function commandInsert(ctx, name, val) {
		var node = getNode(ctx);
		if (!node) return;
		ctx._range.selectNode(node);
		ctx._range.collapse(false);

		// hide menu when a image was inserted
		if(name === 'insertimage' && ctx._menu) toggleNode(ctx._menu, true);

		return commandOverall(name, val);
	}

	function commandBlock(ctx, name) {
		var effectNodes = getEffectNodes(ctx),
			tagsList = effectNodes.map(function(node) {
				return node.nodeName.toLowerCase();
			});

		if (tagsList.indexOf(name) !== -1) name = 'p';

		return commandOverall('formatblock', name);
	}

	function commandWrap(ctx, tag, value) {
		value = '<' + tag + '>' + (value||selection.toString()) + '</' + tag + '>';
		return commandOverall('insertHTML', value);
	}

	function commandLink(ctx, tag, value) {
		if (ctx.config.linksInNewWindow && 'unlink' !== tag) {
			value = '<a href="' + value + '" target="_blank">' + (selection.toString()) + '</a>';
			return commandOverall('insertHTML', value);
		} else {
			return commandOverall(tag, value);
		}
	}

	function createTool(ctx, name, type, group) {
		var title = ctx.config.titles[name] || '',
			iconElement = document.createElement( 'div' );

		iconElement.classList.add('pen-icon');

		iconElement.setAttribute('title', title);

		if ('parent' === type) {
			iconElement.classList.add('pen-group-icon');

			iconElement.setAttribute('data-group-toggle', name);
		} else {
			iconElement.setAttribute('data-action', name);
		}

		if('child' === type) {
			iconElement.setAttribute('data-group', group);
		}

		var iconDictionary = ctx.config.toolbarIconsDictionary[ name ];

		if ( iconDictionary && iconDictionary.text ) {
			iconElement.textContent = iconDictionary.text;
		} else {
			var iconClass;

			if ( iconDictionary && iconDictionary.className ) {
				iconClass = iconDictionary.className;
			} else {
				iconClass = ctx.config.toolbarIconsPrefix + name;
			}

			iconElement.innerHTML += '<i class="' + iconClass + '"  ></i>';
		}

		return iconElement.outerHTML;
	}

	function getMenuTools(ctx) {
		return slice.call(ctx._menu.children);
	}

	function activateGroup(ctx, group) {
		var tools = getMenuTools(ctx);

		tools.forEach(function(tool) {
			toggleNode(tool, tool.getAttribute('data-group') !== group);
		});

		toggleMenuClose(ctx, ! group);

		ctx.refreshMenuPosition();
	}

	function showMainMenu(ctx) {
		activateGroup(ctx, null);

		toggleLinkInput(ctx, true);

		toggleUnlinkTool(ctx, !ctx._urlInput || ctx._urlInput.value === '');
	}

	function showLinkInput(ctx) {
		var tools = getMenuTools(ctx);

		tools.forEach(function(tool) {
			toggleNode(tool, true);
		});

		toggleLinkInput(ctx);

		toggleMenuClose(ctx);
	}

	function toggleLinkInput(ctx, hide) {
		var linkInput = ctx._menu.querySelector('.pen-input-wrapper');

		if (! linkInput) {
			return;
		}

		toggleNode(linkInput, hide);
	}

	function toggleUnlinkTool(ctx, hide) {
		var unlinkTool = ctx._menu.querySelector('[data-action="unlink"]');

		if (! unlinkTool) {
			return;
		}

		toggleNode(unlinkTool, hide);

		ctx.refreshMenuPosition();
	}

	function toggleMenuClose(ctx, hide) {
		var closeButton = ctx._menu.querySelector('[data-action="close"]');

		toggleNode(closeButton, hide);

		ctx.refreshMenuPosition();
	}

	function createLinkInput(ctx) {
		var inputWrapper = doc.createElement('div'),
			urlInput = doc.createElement('input'),
			newWindowLabel = doc.createElement('label'),
			newWindowCheckbox = doc.createElement('input'),
			newWindowIcon = doc.createElement('i');

		inputWrapper.className = 'pen-input-wrapper';

		urlInput.className = 'pen-url-input';
		urlInput.type = 'url';
		urlInput.placeholder = 'http://';

		newWindowLabel.className = 'pen-icon pen-input-label';

		newWindowCheckbox.className = 'pen-external-url-checkbox';
		newWindowCheckbox.type = 'checkbox';

		newWindowIcon.className = ctx.config.toolbarIconsDictionary.externalLink.className;

		newWindowLabel.appendChild(newWindowCheckbox);
		newWindowLabel.appendChild(newWindowIcon);

		inputWrapper.appendChild(urlInput);
		inputWrapper.appendChild(newWindowLabel);

		return inputWrapper;
	}

	function menuApply(ctx, action, value) {
		ctx.execCommand(action, value);

		ctx._range = ctx.getRange();

		ctx.highlight().menu();
	}

	function onToolbarClick(ctx, target) {
		var toolbar = ctx._toolbar || ctx._menu,
			action;

		while (!(action = target.getAttribute('data-action'))) {
			if (target.parentNode === toolbar) {
				break;
			}

			target = target.parentNode;
		}

		var groupToggle = target.getAttribute('data-group-toggle');

		if (groupToggle) {
			activateGroup(ctx, groupToggle);
		}

		if (!action) return;

		if ('close' === action) {
			showMainMenu(ctx);

			return;
		}

		if (!/(?:createlink)|(?:insertimage)/.test(action)) return menuApply(ctx, action);

		if (!ctx._urlInput) return;

		// create link
		var input = ctx._urlInput;
		if (toolbar === ctx._menu) showLinkInput(ctx);
		else {
			ctx._inputActive = true;
			ctx.menu();
		}
		if (ctx._menu.style.display === 'none') return;

		setTimeout(function() { input.focus(); }, 10);

		var createLink = function() {
			var inputValue = input.value;

			if (inputValue) {
				ctx.config.linksInNewWindow = ctx._externalUrlCheckbox.checked;

				inputValue = input.value
					.replace(strReg.whiteSpace, '')
					.replace(strReg.mailTo, 'mailto:$1')
					.replace(strReg.http, 'http://$1');
			} else {
				action = 'unlink';
			}

			menuApply(ctx, action, inputValue);
		};

		input.onkeypress = function(e) {
			if (e.which === 13) {
				e.preventDefault();

				createLink()
			}
		};

		ctx._externalUrlCheckbox.onchange = createLink;
	}

	function initToolbar(ctx) {
		var icons = '', inputStr = createLinkInput(ctx).outerHTML;

		ctx._toolbar = ctx.config.toolbar;

		if (!ctx._toolbar) {
			var toolList = ctx.config.list;

			if (! Object.values(toolList).length) {
				return;
			}

			utils.forEach(toolList, function (name, key) {
				if (Array.isArray(name)) {
					var children = name;

					name = key;

					icons += createTool(ctx, name, 'parent');

					utils.forEach(children, function(childName) {
						icons += createTool(ctx, childName, 'child', name);
					}, true);
				} else {
					icons += createTool(ctx, name);
				}
			});

			var toolListValues = Object.values(toolList);

			if (toolListValues.indexOf('createlink') >= 0 || toolListValues.indexOf('insertimage') >= 0)
				icons += inputStr;

			icons += createTool(ctx, 'close');
		} else if (ctx._toolbar.querySelectorAll('[data-action=createlink]').length ||
			ctx._toolbar.querySelectorAll('[data-action=insertimage]').length) {
			icons += inputStr;
		}

		if (icons) {
			ctx._menu = doc.createElement('div');
			ctx._menu.setAttribute('class', ctx.config.class + '-menu pen-menu');
			ctx._menu.innerHTML = icons;
			ctx._urlInput = ctx._menu.querySelector('.pen-url-input');
			ctx._externalUrlCheckbox = ctx._menu.querySelector('.pen-external-url-checkbox');
			toggleNode(ctx._menu, true);
			doc.body.appendChild(ctx._menu);
		}
	}

	function initEvents(ctx) {
		var toolbar = ctx._toolbar || ctx._menu, editor = ctx.config.editor;

		var toggleMenu = utils.delayExec(function() {
			if (toolbar) {
				ctx.highlight().menu();
			}
		});

		var outsideClick = function() {};

		function updateStatus(delay) {
			ctx._range = ctx.getRange();
			toggleMenu(delay);
		}

		if (ctx._menu) {
			var setpos = function() {
				if (ctx._menu.style.display === 'flex') ctx.menu();
			};

			// change menu offset when window resize / scroll
			addListener(ctx, root, 'resize', setpos);
			addListener(ctx, root, 'scroll', setpos);

			// toggle toolbar on mouse select
			var selecting = false;
			addListener(ctx, editor, 'mousedown', function() {
				selecting = true;
			});

			addListener(ctx, editor, 'mouseleave', function() {
				if (selecting) updateStatus(800);
				selecting = false;
			});

			addListener(ctx, editor, 'mouseup', function() {
				if (selecting) updateStatus(200);
				selecting = false;
			});

			// Hide menu when focusing outside of editor
			outsideClick = function(e) {
				if (ctx._menu && !containsNode(editor, e.target) && !containsNode(ctx._menu, e.target)) {
					removeListener(ctx, doc, 'click', outsideClick);
					toggleMenu(100);
				}
			};
		} else {
			addListener(ctx, editor, 'click', function() {
				updateStatus(0);
			});
		}

		addListener(ctx, editor, 'keyup', function(e) {
			checkPlaceholder(ctx);

			if (ctx.isEmpty()) {
				if (ctx.config.mode === 'advanced') {
					handleEmptyContent(ctx);
				}

				return;
			}

			if (isCaretAtEnd(ctx) && !isCaretAtStart(ctx) && ctx.config.mode !== 'advanced') {
				editor.innerHTML = editor.innerHTML.replace( /\u200b/, '' );

				addEmptyCharAtEnd(ctx);
			}

			// toggle toolbar on key select
			if (e.which !== 13 || e.shiftKey) return updateStatus(400);
			var node = getNode(ctx, true);
			if (!node || !node.nextSibling || !lineBreakReg.test(node.nodeName)) return;
			if (node.nodeName !== node.nextSibling.nodeName) return;
			// hack for webkit, make 'enter' behavior like as firefox.
			if (node.lastChild.nodeName !== 'BR') node.appendChild(doc.createElement('br'));
			utils.forEach(node.nextSibling.childNodes, function(child) {
				if (child) node.appendChild(child);
			}, true);
			node.parentNode.removeChild(node.nextSibling);
			focusNode(ctx, node.lastChild, ctx.getRange());
		});

		// check line break
		addListener(ctx, editor, 'keydown', function(e) {
			editor.classList.remove(ctx.config.placeholderClass);

			if (e.which !== 13 || e.shiftKey) return;

			if ( ctx.config.ignoreLineBreak ) {
				e.preventDefault();

				return;
			}

			var node = getNode(ctx, true);

			if(!node || !lineBreakReg.test(node.nodeName)) {
				if (ctx.config.mode === 'basic') {
					e.preventDefault();

					commandOverall('insertHTML', '<br>');
				}

				return;
			}

			if (!node) {
				return;
			}

			var lastChild = node.lastChild;
			if (!lastChild || !lastChild.previousSibling) return;
			if (lastChild.previousSibling.textContent || lastChild.textContent) return;
			// quit block mode for 2 'enter'
			e.preventDefault();
			var p = doc.createElement('p');
			p.innerHTML = '<br>';
			node.removeChild(lastChild);
			if (!node.nextSibling) node.parentNode.appendChild(p);
			else node.parentNode.insertBefore(p, node.nextSibling);
			focusNode(ctx, p, ctx.getRange());
		});

		if (toolbar) {
			addListener(ctx, toolbar, 'click', function(e) {
				onToolbarClick(ctx, e.target);
			});
		}

		addListener(ctx, editor, 'focus', function() {
			if (ctx.isEmpty() && ctx.config.mode === 'advanced') handleEmptyContent(ctx);
			addListener(ctx, doc, 'click', outsideClick);
		});

		addListener(ctx, editor, 'blur', function() {
			checkPlaceholder(ctx);
			ctx.checkContentChange();
		});

		// listen for paste and clear style
		addListener(ctx, editor, 'paste', function() {
			setTimeout(function() {
				ctx.cleanContent();
			});
		});
	}

	function addListener(ctx, target, type, listener) {
		if (ctx._events.hasOwnProperty(type)) {
			ctx._events[type].push(listener);
		} else {
			ctx._eventTargets = ctx._eventTargets || [];
			ctx._eventsCache = ctx._eventsCache || [];
			var index = ctx._eventTargets.indexOf(target);
			if (index < 0) index = ctx._eventTargets.push(target) - 1;
			ctx._eventsCache[index] = ctx._eventsCache[index] || {};
			ctx._eventsCache[index][type] = ctx._eventsCache[index][type] || [];
			ctx._eventsCache[index][type].push(listener);

			target.addEventListener(type, listener, false);
		}
		return ctx;
	}

	// trigger local events
	function triggerListener(ctx, type) {
		if (!ctx._events.hasOwnProperty(type)) return;
		var args = slice.call(arguments, 2);
		utils.forEach(ctx._events[type], function (listener) {
			listener.apply(ctx, args);
		});
	}

	function removeListener(ctx, target, type, listener) {
		var events = ctx._events[type];
		if (!events) {
			var _index = ctx._eventTargets.indexOf(target);
			if (_index >= 0) events = ctx._eventsCache[_index][type];
		}
		if (!events) return ctx;
		var index = events.indexOf(listener);
		if (index >= 0) events.splice(index, 1);
		target.removeEventListener(type, listener, false);
		return ctx;
	}

	function removeAllListeners(ctx) {
		utils.forEach(this._events, function (events) {
			events.length = 0;
		}, false);
		if (!ctx._eventsCache) return ctx;
		utils.forEach(ctx._eventsCache, function (events, index) {
			var target = ctx._eventTargets[index];
			utils.forEach(events, function (listeners, type) {
				utils.forEach(listeners, function (listener) {
					target.removeEventListener(type, listener, false);
				}, true);
			}, false);
		}, true);
		ctx._eventTargets = [];
		ctx._eventsCache = [];
		return ctx;
	}

	function checkPlaceholder(ctx) {
		ctx.config.editor.classList[ctx.isEmpty() ? 'add' : 'remove'](ctx.config.placeholderClass);
	}

	function trim(str) {
		return (str || '').trim().replace(/\u200b/g, '');
	}

	// node.contains is not implemented in IE10/IE11
	function containsNode(parent, child) {
		if (parent === child) return true;
		child = child.parentNode;
		while (child) {
			if (child === parent) return true;
			child = child.parentNode;
		}
		return false;
	}

	function getNode(ctx, byRoot) {
		var node,
			root = ctx.config.editor;

		ctx._range = ctx._range || ctx.getRange();

		node = ctx._range.commonAncestorContainer;

		// Fix selection detection for Firefox
		if (node.hasChildNodes() && ctx._range.startOffset + 1 === ctx._range.endOffset) {
			node = node.childNodes[ctx._range.startOffset];
		}

		if (!node || node === root) return null;

		while (node && (node.nodeType !== 1) && (node.parentNode !== root)) node = node.parentNode;

		while (node && byRoot && (node.parentNode !== root)) node = node.parentNode;

		return containsNode(root, node) ? node : null;
	}

	function getEffectNodes(ctx) {
		return getNodeParents(ctx).filter(function(node) {
			return node.nodeName.match(effectNodeReg);
		});
	}

	function getNodeParents(ctx) {
		var nodes = [],
			el = getNode(ctx);

		while (el && el !== ctx.config.editor) {
			if (el.nodeType === Node.ELEMENT_NODE) {
				nodes.push(el);
			}

			el = el.parentNode;
		}

		return nodes;
	}

	function handleEmptyContent(ctx) {
		var range = ctx._range = ctx.getRange();

		ctx.config.editor.innerHTML = '';

		var p = doc.createElement('p');

		p.innerHTML = '<br>';

		range.insertNode(p);

		focusNode(ctx, p.childNodes[0], range);
	}

	function addEmptyCharAtEnd(ctx) {
		var range = ctx.getRange(),
			emptyCharNode = doc.createTextNode('\u200b');

		range.selectNodeContents(ctx.config.editor);
		range.collapse(false);
		range.insertNode(emptyCharNode);

		focusNode(ctx, emptyCharNode, range);
	}

	function isCaretAtEnd(ctx) {
		var range = ctx.getRange(),
			clonedRange = range.cloneRange();

		clonedRange.selectNodeContents(ctx.config.editor);
		clonedRange.setStart(range.endContainer, range.endOffset);

		return clonedRange.toString() === '';
	}

	function isCaretAtStart(ctx) {
		var range = ctx.getRange(),
			clonedRange = range.cloneRange();

		clonedRange.selectNodeContents(ctx.config.editor);
		clonedRange.setEnd(range.startContainer, range.startOffset);

		return clonedRange.toString() === '';
	}

	function focusNode(ctx, node, range) {
		range.setStartAfter(node);
		range.setEndBefore(node);
		range.collapse(false);
		ctx.setRange(range);
	}

	function autoLink(node) {
		if (node.nodeType === 1) {
			if (autoLinkReg.notLink.test(node.tagName)) return;
			utils.forEach(node.childNodes, function (child) {
				autoLink(child);
			}, true);
		} else if (node.nodeType === 3) {
			var result = urlToLink(node.nodeValue || '');
			if (!result.links) return;
			var frag = doc.createDocumentFragment(),
				div = doc.createElement('div');
			div.innerHTML = result.text;
			while (div.childNodes.length) frag.appendChild(div.childNodes[0]);
			node.parentNode.replaceChild(frag, node);
		}
	}

	function urlToLink(str) {
		var count = 0;
		str = str.replace(autoLinkReg.url, function(url) {
			var realUrl = url, displayUrl = url;
			count++;
			if (url.length > autoLinkReg.maxLength) displayUrl = url.slice(0, autoLinkReg.maxLength) + '...';
			// Add http prefix if necessary
			if (!autoLinkReg.prefix.test(realUrl)) realUrl = 'http://' + realUrl;
			return '<a href="' + realUrl + '">' + displayUrl + '</a>';
		});
		return {links: count, text: str};
	}

	function toggleNode(node, hide) {
		node.style.display = hide ? 'none' : 'flex';
	}

	InlineEditor = function(config) {

		if (!config) throw new Error('Can\'t find config');

		debugMode = config.debug;

		// merge user config
		var defaults = utils.merge(config);

		var editor = defaults.editor;

		if (!editor || editor.nodeType !== 1) throw new Error('Can\'t find editor');

		// set default class
		editor.classList.add.apply(editor.classList, defaults.class.split(' '));

		// set contenteditable
		editor.setAttribute('contenteditable', 'true');

		// assign config
		this.config = defaults;

		// set placeholder
		if (defaults.placeholder) editor.setAttribute(this.config.placeholderAttr, defaults.placeholder);
		checkPlaceholder(this);

		// save the selection obj
		this.selection = selection;

		// define local events
		this._events = {change: []};

		// enable toolbar
		initToolbar(this);

		// init events
		initEvents(this);

		// to check content change
		this._prevContent = this.getContent();

		// enable markdown covert
		if (this.markdown) this.markdown.init(this);

		// stay on the page
		if (this.config.stay) this.stay(this.config);

		if(this.config.input) {
			this.addOnSubmitListener(this.config.input);
		}

		if (this.config.mode === 'advanced') {
			this.getRange().selectNodeContents(editor);

			this.setRange();
		} else {
			addEmptyCharAtEnd(this);
		}
	};

	InlineEditor.prototype.on = function(type, listener) {
		addListener(this, this.config.editor, type, listener);
		return this;
	};

	InlineEditor.prototype.addOnSubmitListener = function(inputElement) {
		var form = inputElement.form;
		var me = this;
		form.addEventListener("submit", function() {
			inputElement.value = me.config.saveAsMarkdown ? me.toMd(me.config.editor.innerHTML) : me.config.editor.innerHTML;
		});
	};

	InlineEditor.prototype.isEmpty = function(node) {
		node = node || this.config.editor;
		return !(node.querySelector('img')) && !(node.querySelector('blockquote')) &&
			!(node.querySelector('li')) && !trim(node.textContent);
	};

	InlineEditor.prototype.getContent = function() {
		return this.isEmpty() ?  '' : trim(this.config.editor.innerHTML);
	};

	InlineEditor.prototype.setContent = function(html) {
		this.config.editor.innerHTML = html;
		this.cleanContent();
		return this;
	};

	InlineEditor.prototype.checkContentChange = function () {
		var prevContent = this._prevContent, currentContent = this.getContent();
		if (prevContent === currentContent) return;
		this._prevContent = currentContent;
		triggerListener(this, 'change', currentContent, prevContent);
	};

	InlineEditor.prototype.getRange = function() {
		var editor = this.config.editor, range = selection.rangeCount && selection.getRangeAt(0);
		if (!range) range = doc.createRange();
		if (!containsNode(editor, range.commonAncestorContainer)) {
			range.selectNodeContents(editor);
			range.collapse(false);
		}
		return range;
	};

	InlineEditor.prototype.setRange = function(range) {
		range = range || this._range;

		if (!range) {
			range = this.getRange();
			range.collapse(false); // set to end
		}
		try {
			selection.removeAllRanges();
			selection.addRange(range);
		} catch (e) {/* IE throws error sometimes*/}
		return this;
	};

	InlineEditor.prototype.focus = function(focusStart) {
		if (!focusStart) this.setRange();
		this.config.editor.focus();
		return this;
	};

	InlineEditor.prototype.execCommand = function(name, value) {
		name = name.toLowerCase();
		this.setRange();

		if (commandsReg.block.test(name)) {
			commandBlock(this, name);
		} else if (commandsReg.inline.test(name)) {
			commandOverall(name, value);
		} else if (commandsReg.biu.test(name)) {
			// Temporarily removing all override style rules
			// to make sure the command will be executed correctly
			var styleBackup = styleBackupDict[ name ];

			styleBackup.backupValue = this.config.editor.style[ styleBackup.styleKey ];

			this.config.editor.style[ styleBackup.styleKey ] = styleBackup.correctValue;

			commandOverall(name, value);

			this.config.editor.style[ styleBackup.styleKey ] = styleBackup.backupValue;
		} else if (commandsReg.source.test(name)) {
			commandLink(this, name, value);
		} else if (commandsReg.insert.test(name)) {
			commandInsert(this, name, value);
		} else if (commandsReg.wrap.test(name)) {
			commandWrap(this, name, value);
		} else {
			utils.log('can not find command function for name: ' + name + (value ? (', value: ' + value) : ''), true);
		}

		if (name === 'indent') this.checkContentChange();
	};

	// remove attrs and tags
	// pen.cleanContent({cleanAttrs: ['style'], cleanTags: ['id']})
	InlineEditor.prototype.cleanContent = function(options) {
		var editor = this.config.editor;

		if (!options) options = this.config;
		utils.forEach(options.cleanAttrs, function (attr) {
			utils.forEach(editor.querySelectorAll('[' + attr + ']'), function(item) {
				item.removeAttribute(attr);
			}, true);
		}, true);
		utils.forEach(options.cleanTags, function (tag) {
			utils.forEach(editor.querySelectorAll(tag), function(item) {
				item.parentNode.removeChild(item);
			}, true);
		}, true);

		checkPlaceholder(this);
		this.checkContentChange();
		return this;
	};

	// auto link content, return content
	InlineEditor.prototype.autoLink = function() {
		autoLink(this.config.editor);
		return this.getContent();
	};

	// highlight menu
	InlineEditor.prototype.highlight = function() {
		var toolbar = this._toolbar || this._menu,
			node = getNode(this);

		// remove all highlights
		utils.forEach(toolbar.querySelectorAll('.active'), function(el) {
			el.classList.remove('active');
		}, true);

		if (!node) return this;

		var nodeParents = getNodeParents(this),
			urlInput = this._urlInput,
			externalUrlCheckbox = this._externalUrlCheckbox,
			highlight;

		if (urlInput && toolbar === this._menu) {
			// reset url inputs
			urlInput.value = '';

			this._externalUrlCheckbox.checked = false;
		}

		highlight = function(str) {
			if (!str) return;
			var el = toolbar.querySelector('[data-action=' + str + ']');
			return el && el.classList.add('active');
		};

		utils.forEach(nodeParents, function(item) {
			var tag = item.nodeName.toLowerCase(),
				align = item.style.textAlign,
				textDecoration = item.style.textDecoration;

			if (align) {
				if ('justify' === align) {
					align = 'full';
				}

				highlight('justify' + align[0].toUpperCase() + align.slice(1));
			}

			if ('underline' === textDecoration) {
				highlight('underline');
			}

			if (! tag.match(effectNodeReg)) {
				return;
			}

			switch(tag) {
				case 'a':
					urlInput.value = item.getAttribute('href');

					externalUrlCheckbox.checked = item.getAttribute('target') === '_blank';

					tag = 'createlink';

					break;
				case 'img':
					urlInput.value = item.getAttribute('src');

					tag = 'insertimage';

					break;
				case 'i':
				case 'em':
					tag = 'italic';

					break;
				case 'u':
					tag = 'underline';

					break;
				case 'b':
				case 'strong':
					tag = 'bold';

					break;
				case 'strike':
					tag = 'strikethrough';

					break;
				case 'ul':
					tag = 'insertUnorderedList';
					break;

				case 'ol':
					tag = 'insertOrderedList';

					break;
				case 'li':
					tag = 'indent';

					break;
			}

			highlight(tag);
		}, true);

		return this;
	};

	// show menu
	InlineEditor.prototype.menu = function() {
		if (!this._menu) return this;

		if (selection.isCollapsed) {
			this._menu.style.display = 'none'; //hide menu
			this._inputActive = false;
			return this;
		}

		if (this._toolbar) {
			if (!this._urlInput || !this._inputActive) return this;
		}

		showMainMenu(this);
	};

	InlineEditor.prototype.refreshMenuPosition = function() {
		var offset = this._range.getBoundingClientRect()
			, menuPadding = 10
			, top = offset.top - menuPadding
			, left = offset.left + (offset.width / 2)
			, menu = this._menu
			, menuOffset = {x: 0, y: 0}
			, stylesheet = this._stylesheet;

		// fixes some browser double click visual discontinuity
		// if the offset has no width or height it should not be used
		if (offset.width === 0 && offset.height === 0) return this;

		// store the stylesheet used for positioning the menu horizontally
		if (this._stylesheet === undefined) {
			var style = document.createElement("style");
			document.head.appendChild(style);
			this._stylesheet = stylesheet = style.sheet;
		}
		// display it to caculate its width & height
		menu.style.display = 'flex';

		menuOffset.x = left - (menu.clientWidth / 2);
		menuOffset.y = top - menu.clientHeight;

		// check to see if menu has over-extended its bounding box. if it has,
		// 1) apply a new class if overflowed on top;
		// 2) apply a new rule if overflowed on the left
		if (stylesheet.cssRules.length > 0) {
			stylesheet.deleteRule(0);
		}
		if (menuOffset.x < 0) {
			menuOffset.x = 0;
			stylesheet.insertRule('.pen-menu:after {left: ' + left + 'px;}', 0);
		} else {
			stylesheet.insertRule('.pen-menu:after {left: 50%; }', 0);
		}
		if (menuOffset.y < 0) {
			menu.classList.add('pen-menu-below');
			menuOffset.y = offset.top + offset.height + menuPadding;
		} else {
			menu.classList.remove('pen-menu-below');
		}

		menu.style.top = menuOffset.y + 'px';
		menu.style.left = menuOffset.x + 'px';

		return this;
	};

	InlineEditor.prototype.stay = function(config) {
		var ctx = this;
		if (!window.onbeforeunload) {
			window.onbeforeunload = function() {
				if (!ctx._isDestroyed) return config.stayMsg;
			};
		}
	};

	InlineEditor.prototype.destroy = function() {
		var config = this.config;

		removeAllListeners(this);

		config.editor.classList.remove.apply(config.editor.classList, config.class.split(' ').concat(config.placeholderClass));

		config.editor.removeAttribute('contenteditable');

		config.editor.removeAttribute(config.placeholderAttr);

		try {
			selection.removeAllRanges();
			if (this._menu) this._menu.parentNode.removeChild(this._menu);
		} catch (e) {/* IE throws error sometimes*/}

		this._isDestroyed = true;

		return this;
	};

	InlineEditor.prototype.rebuild = function() {
		initToolbar(this);

		initEvents(this);

		return this;
	};

	// a fallback for old browers
	root.ElementorInlineEditor = function(config) {
		if (!config) return utils.log('can\'t find config', true);

		var defaults = utils.merge(config)
			, klass = defaults.editor.getAttribute('class');

		klass = klass ? klass.replace(/\bpen\b/g, '') + ' pen-textarea ' + defaults.class : 'pen pen-textarea';
		defaults.editor.setAttribute('class', klass);
		defaults.editor.innerHTML = defaults.textarea;
		return defaults.editor;
	};

	// export content as markdown
	var regs = {
		a: [/<a\b[^>]*href=["']([^"]+|[^']+)\b[^>]*>(.*?)<\/a>/ig, '[$2]($1)'],
		img: [/<img\b[^>]*src=["']([^\"+|[^']+)[^>]*>/ig, '![]($1)'],
		b: [/<b\b[^>]*>(.*?)<\/b>/ig, '**$1**'],
		i: [/<i\b[^>]*>(.*?)<\/i>/ig, '***$1***'],
		h: [/<h([1-6])\b[^>]*>(.*?)<\/h\1>/ig, function(a, b, c) {
			return '\n' + ('######'.slice(0, b)) + ' ' + c + '\n';
		}],
		li: [/<(li)\b[^>]*>(.*?)<\/\1>/ig, '* $2\n'],
		blockquote: [/<(blockquote)\b[^>]*>(.*?)<\/\1>/ig, '\n> $2\n'],
		pre: [/<pre\b[^>]*>(.*?)<\/pre>/ig, '\n```\n$1\n```\n'],
		code: [/<code\b[^>]*>(.*?)<\/code>/ig, '\n`\n$1\n`\n'],
		p: [/<p\b[^>]*>(.*?)<\/p>/ig, '\n$1\n'],
		hr: [/<hr\b[^>]*>/ig, '\n---\n']
	};

	InlineEditor.prototype.toMd = function() {
		var html = this.getContent()
			.replace(/\n+/g, '') // remove line break
			.replace(/<([uo])l\b[^>]*>(.*?)<\/\1l>/ig, '$2'); // remove ul/ol

		for(var p in regs) {
			if (regs.hasOwnProperty(p))
				html = html.replace.apply(html, regs[p]);
		}
		return html.replace(/\*{5}/g, '**');
	};

	// make it accessible
	if (doc.getSelection) {
		selection = doc.getSelection();
		root.ElementorInlineEditor = InlineEditor;
	}

}(window, document));
assets/lib/inline-editor/js/inline-editor.min.js000064400000042367151327220410015665 0ustar00(function(a,b){function c(a,c){var d=" to exec \u300C"+a+"\u300D command"+(c?" with value: "+c:"");try{b.execCommand(a,!1,c)}catch(a){return P.log("fail"+d,!0)}P.log("success"+d)}function d(a,b,d){var e=B(a);if(e)return a._range.selectNode(e),a._range.collapse(!1),"insertimage"===b&&a._menu&&L(a._menu,!0),c(b,d)}function e(a,b){var d=C(a),e=d.map(function(a){return a.nodeName.toLowerCase()});return-1!==e.indexOf(b)&&(b="p"),c("formatblock",b)}function f(a,b,d){return d="<"+b+">"+(d||O.toString())+"</"+b+">",c("insertHTML",d)}function g(a,b,d){return a.config.linksInNewWindow&&"unlink"!==b?(d="<a href=\""+d+"\" target=\"_blank\">"+O.toString()+"</a>",c("insertHTML",d)):c(b,d)}function h(a,b,c,d){var e=a.config.titles[b]||"",f=document.createElement("div");f.classList.add("pen-icon"),f.setAttribute("title",e),"parent"===c?(f.classList.add("pen-group-icon"),f.setAttribute("data-group-toggle",b)):f.setAttribute("data-action",b),"child"===c&&f.setAttribute("data-group",d);var g=a.config.toolbarIconsDictionary[b];if(g&&g.text)f.textContent=g.text;else{var h;h=g&&g.className?g.className:a.config.toolbarIconsPrefix+b,f.innerHTML+="<i class=\""+h+"\"  ></i>"}return f.outerHTML}function i(a){return Q.call(a._menu.children)}function j(a,b){var c=i(a);c.forEach(function(a){L(a,a.getAttribute("data-group")!==b)}),o(a,!b),a.refreshMenuPosition()}function k(a){j(a,null),m(a,!0),n(a,!a._urlInput||""===a._urlInput.value)}function l(a){var b=i(a);b.forEach(function(a){L(a,!0)}),m(a),o(a)}function m(a,b){var c=a._menu.querySelector(".pen-input-wrapper");c&&L(c,b)}function n(a,b){var c=a._menu.querySelector("[data-action=\"unlink\"]");c&&(L(c,b),a.refreshMenuPosition())}function o(a,b){var c=a._menu.querySelector("[data-action=\"close\"]");L(c,b),a.refreshMenuPosition()}function p(a){var c=b.createElement("div"),d=b.createElement("input"),e=b.createElement("label"),f=b.createElement("input"),g=b.createElement("i");return c.className="pen-input-wrapper",d.className="pen-url-input",d.type="url",d.placeholder="http://",e.className="pen-icon pen-input-label",f.className="pen-external-url-checkbox",f.type="checkbox",g.className=a.config.toolbarIconsDictionary.externalLink.className,e.appendChild(f),e.appendChild(g),c.appendChild(d),c.appendChild(e),c}function q(a,b,c){a.execCommand(b,c),a._range=a.getRange(),a.highlight().menu()}function r(a,b){for(var c,d=a._toolbar||a._menu;!(c=b.getAttribute("data-action"))&&b.parentNode!==d;)b=b.parentNode;var e=b.getAttribute("data-group-toggle");if(e&&j(a,e),!!c){if("close"===c)return void k(a);if(!/(?:createlink)|(?:insertimage)/.test(c))return q(a,c);if(a._urlInput){var f=a._urlInput;if(d===a._menu?l(a):(a._inputActive=!0,a.menu()),"none"!==a._menu.style.display){setTimeout(function(){f.focus()},10);var g=function(){var b=f.value;b?(a.config.linksInNewWindow=a._externalUrlCheckbox.checked,b=f.value.replace(U.whiteSpace,"").replace(U.mailTo,"mailto:$1").replace(U.http,"http://$1")):c="unlink",q(a,c,b)};f.onkeypress=function(a){13===a.which&&(a.preventDefault(),g())},a._externalUrlCheckbox.onchange=g}}}}function s(a){var c="",d=p(a).outerHTML;if(a._toolbar=a.config.toolbar,!a._toolbar){var e=a.config.list;if(!Object.values(e).length)return;P.forEach(e,function(b,d){if(Array.isArray(b)){var e=b;b=d,c+=h(a,b,"parent"),P.forEach(e,function(d){c+=h(a,d,"child",b)},!0)}else c+=h(a,b)});var f=Object.values(e);(0<=f.indexOf("createlink")||0<=f.indexOf("insertimage"))&&(c+=d),c+=h(a,"close")}else(a._toolbar.querySelectorAll("[data-action=createlink]").length||a._toolbar.querySelectorAll("[data-action=insertimage]").length)&&(c+=d);c&&(a._menu=b.createElement("div"),a._menu.setAttribute("class",a.config.class+"-menu pen-menu"),a._menu.innerHTML=c,a._urlInput=a._menu.querySelector(".pen-url-input"),a._externalUrlCheckbox=a._menu.querySelector(".pen-external-url-checkbox"),L(a._menu,!0),b.body.appendChild(a._menu))}function t(d){function f(a){d._range=d.getRange(),i(a)}var g=d._toolbar||d._menu,h=d.config.editor,i=P.delayExec(function(){g&&d.highlight().menu()}),j=function(){};if(d._menu){var k=function(){"flex"===d._menu.style.display&&d.menu()};u(d,a,"resize",k),u(d,a,"scroll",k);var l=!1;u(d,h,"mousedown",function(){l=!0}),u(d,h,"mouseleave",function(){l&&f(800),l=!1}),u(d,h,"mouseup",function(){l&&f(200),l=!1}),j=function(a){!d._menu||A(h,a.target)||A(d._menu,a.target)||(w(d,b,"click",j),i(100))}}else u(d,h,"click",function(){f(0)});u(d,h,"keyup",function(a){if(y(d),d.isEmpty())return void("advanced"===d.config.mode&&E(d));if(G(d)&&!H(d)&&"advanced"!==d.config.mode&&(h.innerHTML=h.innerHTML.replace(/\u200b/,""),F(d)),13!==a.which||a.shiftKey)return f(400);var c=B(d,!0);c&&c.nextSibling&&S.test(c.nodeName)&&c.nodeName===c.nextSibling.nodeName&&("BR"!==c.lastChild.nodeName&&c.appendChild(b.createElement("br")),P.forEach(c.nextSibling.childNodes,function(a){a&&c.appendChild(a)},!0),c.parentNode.removeChild(c.nextSibling),I(d,c.lastChild,d.getRange()))}),u(d,h,"keydown",function(a){if(h.classList.remove(d.config.placeholderClass),!(13!==a.which||a.shiftKey)){if(d.config.ignoreLineBreak)return void a.preventDefault();var e=B(d,!0);if(!e||!S.test(e.nodeName))return void("basic"===d.config.mode&&(a.preventDefault(),c("insertHTML","<br>")));if(e){var f=e.lastChild;if(f&&f.previousSibling&&!(f.previousSibling.textContent||f.textContent)){a.preventDefault();var g=b.createElement("p");g.innerHTML="<br>",e.removeChild(f),e.nextSibling?e.parentNode.insertBefore(g,e.nextSibling):e.parentNode.appendChild(g),I(d,g,d.getRange())}}}}),g&&u(d,g,"click",function(a){r(d,a.target)}),u(d,h,"focus",function(){d.isEmpty()&&"advanced"===d.config.mode&&E(d),u(d,b,"click",j)}),u(d,h,"blur",function(){y(d),d.checkContentChange()}),u(d,h,"paste",function(){setTimeout(function(){d.cleanContent()})})}function u(a,b,c,d){if(a._events.hasOwnProperty(c))a._events[c].push(d);else{a._eventTargets=a._eventTargets||[],a._eventsCache=a._eventsCache||[];var e=a._eventTargets.indexOf(b);0>e&&(e=a._eventTargets.push(b)-1),a._eventsCache[e]=a._eventsCache[e]||{},a._eventsCache[e][c]=a._eventsCache[e][c]||[],a._eventsCache[e][c].push(d),b.addEventListener(c,d,!1)}return a}function v(a,b){if(a._events.hasOwnProperty(b)){var c=Q.call(arguments,2);P.forEach(a._events[b],function(b){b.apply(a,c)})}}function w(a,b,c,d){var e=a._events[c];if(!e){var f=a._eventTargets.indexOf(b);0<=f&&(e=a._eventsCache[f][c])}if(!e)return a;var g=e.indexOf(d);return 0<=g&&e.splice(g,1),b.removeEventListener(c,d,!1),a}function x(a){return(P.forEach(this._events,function(a){a.length=0},!1),!a._eventsCache)?a:(P.forEach(a._eventsCache,function(b,c){var d=a._eventTargets[c];P.forEach(b,function(a,b){P.forEach(a,function(a){d.removeEventListener(b,a,!1)},!0)},!1)},!0),a._eventTargets=[],a._eventsCache=[],a)}function y(a){a.config.editor.classList[a.isEmpty()?"add":"remove"](a.config.placeholderClass)}function z(a){return(a||"").trim().replace(/\u200b/g,"")}function A(a,b){if(a===b)return!0;for(b=b.parentNode;b;){if(b===a)return!0;b=b.parentNode}return!1}function B(a,b){var c,d=a.config.editor;if(a._range=a._range||a.getRange(),c=a._range.commonAncestorContainer,c.hasChildNodes()&&a._range.startOffset+1===a._range.endOffset&&(c=c.childNodes[a._range.startOffset]),!c||c===d)return null;for(;c&&1!==c.nodeType&&c.parentNode!==d;)c=c.parentNode;for(;c&&b&&c.parentNode!==d;)c=c.parentNode;return A(d,c)?c:null}function C(a){return D(a).filter(function(a){return a.nodeName.match(T)})}function D(a){for(var b=[],c=B(a);c&&c!==a.config.editor;)c.nodeType===Node.ELEMENT_NODE&&b.push(c),c=c.parentNode;return b}function E(a){var c=a._range=a.getRange();a.config.editor.innerHTML="";var d=b.createElement("p");d.innerHTML="<br>",c.insertNode(d),I(a,d.childNodes[0],c)}function F(a){var c=a.getRange(),d=b.createTextNode("\u200B");c.selectNodeContents(a.config.editor),c.collapse(!1),c.insertNode(d),I(a,d,c)}function G(a){var b=a.getRange(),c=b.cloneRange();return c.selectNodeContents(a.config.editor),c.setStart(b.endContainer,b.endOffset),""===c.toString()}function H(a){var b=a.getRange(),c=b.cloneRange();return c.selectNodeContents(a.config.editor),c.setEnd(b.startContainer,b.startOffset),""===c.toString()}function I(a,b,c){c.setStartAfter(b),c.setEndBefore(b),c.collapse(!1),a.setRange(c)}function J(a){if(1===a.nodeType){if(V.notLink.test(a.tagName))return;P.forEach(a.childNodes,function(a){J(a)},!0)}else if(3===a.nodeType){var c=K(a.nodeValue||"");if(!c.links)return;var d=b.createDocumentFragment(),e=b.createElement("div");for(e.innerHTML=c.text;e.childNodes.length;)d.appendChild(e.childNodes[0]);a.parentNode.replaceChild(d,a)}}function K(a){var b=0;return a=a.replace(V.url,function(a){var c=a,d=a;return b++,a.length>V.maxLength&&(d=a.slice(0,V.maxLength)+"..."),V.prefix.test(c)||(c="http://"+c),"<a href=\""+c+"\">"+d+"</a>"}),{links:b,text:a}}function L(a,b){a.style.display=b?"none":"flex"}var M,N,O,P={},Q=Array.prototype.slice,R={block:/^(?:p|h[1-6]|blockquote|pre)$/,inline:/^(?:justify(center|full|left|right)|strikethrough|insert(un)?orderedlist|(in|out)dent)$/,biu:/^(bold|italic|underline)$/,source:/^(?:createlink|unlink)$/,insert:/^(?:inserthorizontalrule|insertimage|insert)$/,wrap:/^(?:code)$/},S=/^(?:blockquote|pre|div)$/i,T=/(?:[pubia]|strong|em|h[1-6]|blockquote|code|[uo]l|li)/i,U={whiteSpace:/(^\s+)|(\s+$)/g,mailTo:/^(?!mailto:|.+\/|.+#|.+\?)(.*@.*\..+)$/,http:/^(?!\w+?:\/\/|mailto:|\/|\.\/|\?|#)(.*)$/},V={url:/((https?|ftp):\/\/|www\.)[^\s<]{3,}/gi,prefix:/^(?:https?|ftp):\/\//i,notLink:/^(?:img|a|input|audio|video|source|code|pre|script|head|title|style)$/i,maxLength:100},W={bold:{styleKey:"font-weight",correctValue:"normal"},italic:{styleKey:"font-style",correctValue:"normal"},underline:{styleKey:"text-decoration",correctValue:"none"}};P.is=function(a,b){return Object.prototype.toString.call(a).slice(8,-1)===b},P.forEach=function(a,b,c){if(a)if(null==c&&(c=P.is(a,"Array")),c)for(var d=0,e=a.length;d<e;d++)b(a[d],d,a);else for(var f in a)a.hasOwnProperty(f)&&b(a[f],f,a)},P.copy=function(a,b){return P.forEach(b,function(b,c){a[c]=P.is(b,"Object")?P.copy({},b):P.is(b,"Array")?P.copy([],b):b}),a},P.log=function(a,b){(N||b)&&console.log("%cPEN DEBUGGER: %c"+a,"font-family:arial,sans-serif;color:#1abf89;line-height:2em;","font-family:cursor,monospace;color:#333;")},P.delayExec=function(a){var b=null;return function(c){clearTimeout(b),b=setTimeout(function(){a()},c||1)}},P.merge=function(a){var c={class:"pen",placeholderClass:"pen-placeholder",placeholderAttr:"data-pen-placeholder",debug:!1,toolbar:null,mode:"basic",ignoreLineBreak:!1,toolbarIconsPrefix:"fa fa-",toolbarIconsDictionary:{externalLink:"eicon-editor-external-link"},stay:a.stay||!a.debug,stayMsg:"Are you going to leave here?",textarea:"<textarea name=\"content\"></textarea>",list:["blockquote","h2","h3","p","code","insertOrderedList","insertUnorderedList","inserthorizontalrule","indent","outdent","bold","italic","underline","createlink","insertimage"],titles:{},cleanAttrs:["id","class","style","name"],cleanTags:["script"],linksInNewWindow:!1};return 1===a.nodeType?c.editor=a:a.match&&a.match(/^#[\S]+$/)?c.editor=b.getElementById(a.slice(1)):c=P.copy(c,a),c},M=function(a){if(!a)throw new Error("Can't find config");N=a.debug;var b=P.merge(a),c=b.editor;if(!c||1!==c.nodeType)throw new Error("Can't find editor");c.classList.add.apply(c.classList,b.class.split(" ")),c.setAttribute("contenteditable","true"),this.config=b,b.placeholder&&c.setAttribute(this.config.placeholderAttr,b.placeholder),y(this),this.selection=O,this._events={change:[]},s(this),t(this),this._prevContent=this.getContent(),this.markdown&&this.markdown.init(this),this.config.stay&&this.stay(this.config),this.config.input&&this.addOnSubmitListener(this.config.input),"advanced"===this.config.mode?(this.getRange().selectNodeContents(c),this.setRange()):F(this)},M.prototype.on=function(a,b){return u(this,this.config.editor,a,b),this},M.prototype.addOnSubmitListener=function(a){var b=a.form,c=this;b.addEventListener("submit",function(){a.value=c.config.saveAsMarkdown?c.toMd(c.config.editor.innerHTML):c.config.editor.innerHTML})},M.prototype.isEmpty=function(a){return a=a||this.config.editor,!a.querySelector("img")&&!a.querySelector("blockquote")&&!a.querySelector("li")&&!z(a.textContent)},M.prototype.getContent=function(){return this.isEmpty()?"":z(this.config.editor.innerHTML)},M.prototype.setContent=function(a){return this.config.editor.innerHTML=a,this.cleanContent(),this},M.prototype.checkContentChange=function(){var a=this._prevContent,b=this.getContent();a===b||(this._prevContent=b,v(this,"change",b,a))},M.prototype.getRange=function(){var a=this.config.editor,c=O.rangeCount&&O.getRangeAt(0);return c||(c=b.createRange()),A(a,c.commonAncestorContainer)||(c.selectNodeContents(a),c.collapse(!1)),c},M.prototype.setRange=function(a){a=a||this._range,a||(a=this.getRange(),a.collapse(!1));try{O.removeAllRanges(),O.addRange(a)}catch(a){}return this},M.prototype.focus=function(a){return a||this.setRange(),this.config.editor.focus(),this},M.prototype.execCommand=function(a,b){if(a=a.toLowerCase(),this.setRange(),R.block.test(a))e(this,a);else if(R.inline.test(a))c(a,b);else if(R.biu.test(a)){var h=W[a];h.backupValue=this.config.editor.style[h.styleKey],this.config.editor.style[h.styleKey]=h.correctValue,c(a,b),this.config.editor.style[h.styleKey]=h.backupValue}else R.source.test(a)?g(this,a,b):R.insert.test(a)?d(this,a,b):R.wrap.test(a)?f(this,a,b):P.log("can not find command function for name: "+a+(b?", value: "+b:""),!0);"indent"===a&&this.checkContentChange()},M.prototype.cleanContent=function(a){var b=this.config.editor;return a||(a=this.config),P.forEach(a.cleanAttrs,function(a){P.forEach(b.querySelectorAll("["+a+"]"),function(b){b.removeAttribute(a)},!0)},!0),P.forEach(a.cleanTags,function(a){P.forEach(b.querySelectorAll(a),function(a){a.parentNode.removeChild(a)},!0)},!0),y(this),this.checkContentChange(),this},M.prototype.autoLink=function(){return J(this.config.editor),this.getContent()},M.prototype.highlight=function(){var a=this._toolbar||this._menu,b=B(this);if(P.forEach(a.querySelectorAll(".active"),function(a){a.classList.remove("active")},!0),!b)return this;var c,d=D(this),e=this._urlInput,f=this._externalUrlCheckbox;return e&&a===this._menu&&(e.value="",this._externalUrlCheckbox.checked=!1),c=function(b){if(b){var c=a.querySelector("[data-action="+b+"]");return c&&c.classList.add("active")}},P.forEach(d,function(a){var b=a.nodeName.toLowerCase(),d=a.style.textAlign,g=a.style.textDecoration;(d&&("justify"===d&&(d="full"),c("justify"+d[0].toUpperCase()+d.slice(1))),"underline"===g&&c("underline"),!!b.match(T))&&("a"===b?(e.value=a.getAttribute("href"),f.checked="_blank"===a.getAttribute("target"),b="createlink"):"img"===b?(e.value=a.getAttribute("src"),b="insertimage"):"i"===b||"em"===b?b="italic":"u"===b?b="underline":"b"===b||"strong"===b?b="bold":"strike"===b?b="strikethrough":"ul"===b?b="insertUnorderedList":"ol"===b?b="insertOrderedList":"li"===b?b="indent":void 0,c(b))},!0),this},M.prototype.menu=function(){return this._menu?O.isCollapsed?(this._menu.style.display="none",this._inputActive=!1,this):!this._toolbar||this._urlInput&&this._inputActive?void k(this):this:this},M.prototype.refreshMenuPosition=function(){var a=this._range.getBoundingClientRect(),b=a.top-10,c=a.left+a.width/2,d=this._menu,e={x:0,y:0},f=this._stylesheet;if(0===a.width&&0===a.height)return this;if(void 0===this._stylesheet){var g=document.createElement("style");document.head.appendChild(g),this._stylesheet=f=g.sheet}return d.style.display="flex",e.x=c-d.clientWidth/2,e.y=b-d.clientHeight,0<f.cssRules.length&&f.deleteRule(0),0>e.x?(e.x=0,f.insertRule(".pen-menu:after {left: "+c+"px;}",0)):f.insertRule(".pen-menu:after {left: 50%; }",0),0>e.y?(d.classList.add("pen-menu-below"),e.y=a.top+a.height+10):d.classList.remove("pen-menu-below"),d.style.top=e.y+"px",d.style.left=e.x+"px",this},M.prototype.stay=function(a){var b=this;window.onbeforeunload||(window.onbeforeunload=function(){if(!b._isDestroyed)return a.stayMsg})},M.prototype.destroy=function(){var a=this.config;x(this),a.editor.classList.remove.apply(a.editor.classList,a.class.split(" ").concat(a.placeholderClass)),a.editor.removeAttribute("contenteditable"),a.editor.removeAttribute(a.placeholderAttr);try{O.removeAllRanges(),this._menu&&this._menu.parentNode.removeChild(this._menu)}catch(a){}return this._isDestroyed=!0,this},M.prototype.rebuild=function(){return s(this),t(this),this},a.ElementorInlineEditor=function(a){if(!a)return P.log("can't find config",!0);var b=P.merge(a),c=b.editor.getAttribute("class");return c=c?c.replace(/\bpen\b/g,"")+" pen-textarea "+b.class:"pen pen-textarea",b.editor.setAttribute("class",c),b.editor.innerHTML=b.textarea,b.editor};var X={a:[/<a\b[^>]*href=["']([^"]+|[^']+)\b[^>]*>(.*?)<\/a>/ig,"[$2]($1)"],img:[/<img\b[^>]*src=["']([^\"+|[^']+)[^>]*>/ig,"![]($1)"],b:[/<b\b[^>]*>(.*?)<\/b>/ig,"**$1**"],i:[/<i\b[^>]*>(.*?)<\/i>/ig,"***$1***"],h:[/<h([1-6])\b[^>]*>(.*?)<\/h\1>/ig,function(d,a,b){return"\n"+"######".slice(0,a)+" "+b+"\n"}],li:[/<(li)\b[^>]*>(.*?)<\/\1>/ig,"* $2\n"],blockquote:[/<(blockquote)\b[^>]*>(.*?)<\/\1>/ig,"\n> $2\n"],pre:[/<pre\b[^>]*>(.*?)<\/pre>/ig,"\n```\n$1\n```\n"],code:[/<code\b[^>]*>(.*?)<\/code>/ig,"\n`\n$1\n`\n"],p:[/<p\b[^>]*>(.*?)<\/p>/ig,"\n$1\n"],hr:[/<hr\b[^>]*>/ig,"\n---\n"]};M.prototype.toMd=function(){var a=this.getContent().replace(/\n+/g,"").replace(/<([uo])l\b[^>]*>(.*?)<\/\1l>/ig,"$2");for(var b in X)X.hasOwnProperty(b)&&(a=a.replace.apply(a,X[b]));return a.replace(/\*{5}/g,"**")},b.getSelection&&(O=b.getSelection(),a.ElementorInlineEditor=M)})(window,document);assets/lib/font-awesome/css/v4-shims.css000064400000120540151327220410014173 0ustar00/*!
 * Font Awesome Free 5.15.3 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 */
.fa.fa-glass:before {
  content: "\f000"; }

.fa.fa-meetup {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-star-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-star-o:before {
  content: "\f005"; }

.fa.fa-remove:before {
  content: "\f00d"; }

.fa.fa-close:before {
  content: "\f00d"; }

.fa.fa-gear:before {
  content: "\f013"; }

.fa.fa-trash-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-trash-o:before {
  content: "\f2ed"; }

.fa.fa-file-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-file-o:before {
  content: "\f15b"; }

.fa.fa-clock-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-clock-o:before {
  content: "\f017"; }

.fa.fa-arrow-circle-o-down {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-arrow-circle-o-down:before {
  content: "\f358"; }

.fa.fa-arrow-circle-o-up {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-arrow-circle-o-up:before {
  content: "\f35b"; }

.fa.fa-play-circle-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-play-circle-o:before {
  content: "\f144"; }

.fa.fa-repeat:before {
  content: "\f01e"; }

.fa.fa-rotate-right:before {
  content: "\f01e"; }

.fa.fa-refresh:before {
  content: "\f021"; }

.fa.fa-list-alt {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-dedent:before {
  content: "\f03b"; }

.fa.fa-video-camera:before {
  content: "\f03d"; }

.fa.fa-picture-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-picture-o:before {
  content: "\f03e"; }

.fa.fa-photo {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-photo:before {
  content: "\f03e"; }

.fa.fa-image {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-image:before {
  content: "\f03e"; }

.fa.fa-pencil:before {
  content: "\f303"; }

.fa.fa-map-marker:before {
  content: "\f3c5"; }

.fa.fa-pencil-square-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-pencil-square-o:before {
  content: "\f044"; }

.fa.fa-share-square-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-share-square-o:before {
  content: "\f14d"; }

.fa.fa-check-square-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-check-square-o:before {
  content: "\f14a"; }

.fa.fa-arrows:before {
  content: "\f0b2"; }

.fa.fa-times-circle-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-times-circle-o:before {
  content: "\f057"; }

.fa.fa-check-circle-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-check-circle-o:before {
  content: "\f058"; }

.fa.fa-mail-forward:before {
  content: "\f064"; }

.fa.fa-expand:before {
  content: "\f424"; }

.fa.fa-compress:before {
  content: "\f422"; }

.fa.fa-eye {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-eye-slash {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-warning:before {
  content: "\f071"; }

.fa.fa-calendar:before {
  content: "\f073"; }

.fa.fa-arrows-v:before {
  content: "\f338"; }

.fa.fa-arrows-h:before {
  content: "\f337"; }

.fa.fa-bar-chart {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-bar-chart:before {
  content: "\f080"; }

.fa.fa-bar-chart-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-bar-chart-o:before {
  content: "\f080"; }

.fa.fa-twitter-square {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-facebook-square {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-gears:before {
  content: "\f085"; }

.fa.fa-thumbs-o-up {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-thumbs-o-up:before {
  content: "\f164"; }

.fa.fa-thumbs-o-down {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-thumbs-o-down:before {
  content: "\f165"; }

.fa.fa-heart-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-heart-o:before {
  content: "\f004"; }

.fa.fa-sign-out:before {
  content: "\f2f5"; }

.fa.fa-linkedin-square {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-linkedin-square:before {
  content: "\f08c"; }

.fa.fa-thumb-tack:before {
  content: "\f08d"; }

.fa.fa-external-link:before {
  content: "\f35d"; }

.fa.fa-sign-in:before {
  content: "\f2f6"; }

.fa.fa-github-square {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-lemon-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-lemon-o:before {
  content: "\f094"; }

.fa.fa-square-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-square-o:before {
  content: "\f0c8"; }

.fa.fa-bookmark-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-bookmark-o:before {
  content: "\f02e"; }

.fa.fa-twitter {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-facebook {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-facebook:before {
  content: "\f39e"; }

.fa.fa-facebook-f {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-facebook-f:before {
  content: "\f39e"; }

.fa.fa-github {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-credit-card {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-feed:before {
  content: "\f09e"; }

.fa.fa-hdd-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-hdd-o:before {
  content: "\f0a0"; }

.fa.fa-hand-o-right {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-hand-o-right:before {
  content: "\f0a4"; }

.fa.fa-hand-o-left {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-hand-o-left:before {
  content: "\f0a5"; }

.fa.fa-hand-o-up {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-hand-o-up:before {
  content: "\f0a6"; }

.fa.fa-hand-o-down {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-hand-o-down:before {
  content: "\f0a7"; }

.fa.fa-arrows-alt:before {
  content: "\f31e"; }

.fa.fa-group:before {
  content: "\f0c0"; }

.fa.fa-chain:before {
  content: "\f0c1"; }

.fa.fa-scissors:before {
  content: "\f0c4"; }

.fa.fa-files-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-files-o:before {
  content: "\f0c5"; }

.fa.fa-floppy-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-floppy-o:before {
  content: "\f0c7"; }

.fa.fa-navicon:before {
  content: "\f0c9"; }

.fa.fa-reorder:before {
  content: "\f0c9"; }

.fa.fa-pinterest {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-pinterest-square {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-google-plus-square {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-google-plus {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-google-plus:before {
  content: "\f0d5"; }

.fa.fa-money {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-money:before {
  content: "\f3d1"; }

.fa.fa-unsorted:before {
  content: "\f0dc"; }

.fa.fa-sort-desc:before {
  content: "\f0dd"; }

.fa.fa-sort-asc:before {
  content: "\f0de"; }

.fa.fa-linkedin {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-linkedin:before {
  content: "\f0e1"; }

.fa.fa-rotate-left:before {
  content: "\f0e2"; }

.fa.fa-legal:before {
  content: "\f0e3"; }

.fa.fa-tachometer:before {
  content: "\f3fd"; }

.fa.fa-dashboard:before {
  content: "\f3fd"; }

.fa.fa-comment-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-comment-o:before {
  content: "\f075"; }

.fa.fa-comments-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-comments-o:before {
  content: "\f086"; }

.fa.fa-flash:before {
  content: "\f0e7"; }

.fa.fa-clipboard {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-paste {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-paste:before {
  content: "\f328"; }

.fa.fa-lightbulb-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-lightbulb-o:before {
  content: "\f0eb"; }

.fa.fa-exchange:before {
  content: "\f362"; }

.fa.fa-cloud-download:before {
  content: "\f381"; }

.fa.fa-cloud-upload:before {
  content: "\f382"; }

.fa.fa-bell-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-bell-o:before {
  content: "\f0f3"; }

.fa.fa-cutlery:before {
  content: "\f2e7"; }

.fa.fa-file-text-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-file-text-o:before {
  content: "\f15c"; }

.fa.fa-building-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-building-o:before {
  content: "\f1ad"; }

.fa.fa-hospital-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-hospital-o:before {
  content: "\f0f8"; }

.fa.fa-tablet:before {
  content: "\f3fa"; }

.fa.fa-mobile:before {
  content: "\f3cd"; }

.fa.fa-mobile-phone:before {
  content: "\f3cd"; }

.fa.fa-circle-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-circle-o:before {
  content: "\f111"; }

.fa.fa-mail-reply:before {
  content: "\f3e5"; }

.fa.fa-github-alt {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-folder-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-folder-o:before {
  content: "\f07b"; }

.fa.fa-folder-open-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-folder-open-o:before {
  content: "\f07c"; }

.fa.fa-smile-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-smile-o:before {
  content: "\f118"; }

.fa.fa-frown-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-frown-o:before {
  content: "\f119"; }

.fa.fa-meh-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-meh-o:before {
  content: "\f11a"; }

.fa.fa-keyboard-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-keyboard-o:before {
  content: "\f11c"; }

.fa.fa-flag-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-flag-o:before {
  content: "\f024"; }

.fa.fa-mail-reply-all:before {
  content: "\f122"; }

.fa.fa-star-half-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-star-half-o:before {
  content: "\f089"; }

.fa.fa-star-half-empty {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-star-half-empty:before {
  content: "\f089"; }

.fa.fa-star-half-full {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-star-half-full:before {
  content: "\f089"; }

.fa.fa-code-fork:before {
  content: "\f126"; }

.fa.fa-chain-broken:before {
  content: "\f127"; }

.fa.fa-shield:before {
  content: "\f3ed"; }

.fa.fa-calendar-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-calendar-o:before {
  content: "\f133"; }

.fa.fa-maxcdn {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-html5 {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-css3 {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-ticket:before {
  content: "\f3ff"; }

.fa.fa-minus-square-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-minus-square-o:before {
  content: "\f146"; }

.fa.fa-level-up:before {
  content: "\f3bf"; }

.fa.fa-level-down:before {
  content: "\f3be"; }

.fa.fa-pencil-square:before {
  content: "\f14b"; }

.fa.fa-external-link-square:before {
  content: "\f360"; }

.fa.fa-compass {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-caret-square-o-down {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-caret-square-o-down:before {
  content: "\f150"; }

.fa.fa-toggle-down {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-toggle-down:before {
  content: "\f150"; }

.fa.fa-caret-square-o-up {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-caret-square-o-up:before {
  content: "\f151"; }

.fa.fa-toggle-up {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-toggle-up:before {
  content: "\f151"; }

.fa.fa-caret-square-o-right {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-caret-square-o-right:before {
  content: "\f152"; }

.fa.fa-toggle-right {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-toggle-right:before {
  content: "\f152"; }

.fa.fa-eur:before {
  content: "\f153"; }

.fa.fa-euro:before {
  content: "\f153"; }

.fa.fa-gbp:before {
  content: "\f154"; }

.fa.fa-usd:before {
  content: "\f155"; }

.fa.fa-dollar:before {
  content: "\f155"; }

.fa.fa-inr:before {
  content: "\f156"; }

.fa.fa-rupee:before {
  content: "\f156"; }

.fa.fa-jpy:before {
  content: "\f157"; }

.fa.fa-cny:before {
  content: "\f157"; }

.fa.fa-rmb:before {
  content: "\f157"; }

.fa.fa-yen:before {
  content: "\f157"; }

.fa.fa-rub:before {
  content: "\f158"; }

.fa.fa-ruble:before {
  content: "\f158"; }

.fa.fa-rouble:before {
  content: "\f158"; }

.fa.fa-krw:before {
  content: "\f159"; }

.fa.fa-won:before {
  content: "\f159"; }

.fa.fa-btc {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-bitcoin {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-bitcoin:before {
  content: "\f15a"; }

.fa.fa-file-text:before {
  content: "\f15c"; }

.fa.fa-sort-alpha-asc:before {
  content: "\f15d"; }

.fa.fa-sort-alpha-desc:before {
  content: "\f881"; }

.fa.fa-sort-amount-asc:before {
  content: "\f160"; }

.fa.fa-sort-amount-desc:before {
  content: "\f884"; }

.fa.fa-sort-numeric-asc:before {
  content: "\f162"; }

.fa.fa-sort-numeric-desc:before {
  content: "\f886"; }

.fa.fa-youtube-square {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-youtube {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-xing {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-xing-square {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-youtube-play {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-youtube-play:before {
  content: "\f167"; }

.fa.fa-dropbox {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-stack-overflow {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-instagram {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-flickr {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-adn {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-bitbucket {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-bitbucket-square {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-bitbucket-square:before {
  content: "\f171"; }

.fa.fa-tumblr {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-tumblr-square {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-long-arrow-down:before {
  content: "\f309"; }

.fa.fa-long-arrow-up:before {
  content: "\f30c"; }

.fa.fa-long-arrow-left:before {
  content: "\f30a"; }

.fa.fa-long-arrow-right:before {
  content: "\f30b"; }

.fa.fa-apple {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-windows {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-android {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-linux {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-dribbble {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-skype {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-foursquare {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-trello {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-gratipay {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-gittip {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-gittip:before {
  content: "\f184"; }

.fa.fa-sun-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-sun-o:before {
  content: "\f185"; }

.fa.fa-moon-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-moon-o:before {
  content: "\f186"; }

.fa.fa-vk {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-weibo {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-renren {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-pagelines {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-stack-exchange {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-arrow-circle-o-right {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-arrow-circle-o-right:before {
  content: "\f35a"; }

.fa.fa-arrow-circle-o-left {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-arrow-circle-o-left:before {
  content: "\f359"; }

.fa.fa-caret-square-o-left {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-caret-square-o-left:before {
  content: "\f191"; }

.fa.fa-toggle-left {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-toggle-left:before {
  content: "\f191"; }

.fa.fa-dot-circle-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-dot-circle-o:before {
  content: "\f192"; }

.fa.fa-vimeo-square {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-try:before {
  content: "\f195"; }

.fa.fa-turkish-lira:before {
  content: "\f195"; }

.fa.fa-plus-square-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-plus-square-o:before {
  content: "\f0fe"; }

.fa.fa-slack {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-wordpress {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-openid {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-institution:before {
  content: "\f19c"; }

.fa.fa-bank:before {
  content: "\f19c"; }

.fa.fa-mortar-board:before {
  content: "\f19d"; }

.fa.fa-yahoo {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-google {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-reddit {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-reddit-square {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-stumbleupon-circle {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-stumbleupon {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-delicious {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-digg {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-pied-piper-pp {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-pied-piper-alt {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-drupal {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-joomla {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-spoon:before {
  content: "\f2e5"; }

.fa.fa-behance {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-behance-square {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-steam {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-steam-square {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-automobile:before {
  content: "\f1b9"; }

.fa.fa-envelope-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-envelope-o:before {
  content: "\f0e0"; }

.fa.fa-spotify {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-deviantart {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-soundcloud {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-file-pdf-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-file-pdf-o:before {
  content: "\f1c1"; }

.fa.fa-file-word-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-file-word-o:before {
  content: "\f1c2"; }

.fa.fa-file-excel-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-file-excel-o:before {
  content: "\f1c3"; }

.fa.fa-file-powerpoint-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-file-powerpoint-o:before {
  content: "\f1c4"; }

.fa.fa-file-image-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-file-image-o:before {
  content: "\f1c5"; }

.fa.fa-file-photo-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-file-photo-o:before {
  content: "\f1c5"; }

.fa.fa-file-picture-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-file-picture-o:before {
  content: "\f1c5"; }

.fa.fa-file-archive-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-file-archive-o:before {
  content: "\f1c6"; }

.fa.fa-file-zip-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-file-zip-o:before {
  content: "\f1c6"; }

.fa.fa-file-audio-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-file-audio-o:before {
  content: "\f1c7"; }

.fa.fa-file-sound-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-file-sound-o:before {
  content: "\f1c7"; }

.fa.fa-file-video-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-file-video-o:before {
  content: "\f1c8"; }

.fa.fa-file-movie-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-file-movie-o:before {
  content: "\f1c8"; }

.fa.fa-file-code-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-file-code-o:before {
  content: "\f1c9"; }

.fa.fa-vine {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-codepen {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-jsfiddle {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-life-ring {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-life-bouy {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-life-bouy:before {
  content: "\f1cd"; }

.fa.fa-life-buoy {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-life-buoy:before {
  content: "\f1cd"; }

.fa.fa-life-saver {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-life-saver:before {
  content: "\f1cd"; }

.fa.fa-support {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-support:before {
  content: "\f1cd"; }

.fa.fa-circle-o-notch:before {
  content: "\f1ce"; }

.fa.fa-rebel {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-ra {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-ra:before {
  content: "\f1d0"; }

.fa.fa-resistance {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-resistance:before {
  content: "\f1d0"; }

.fa.fa-empire {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-ge {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-ge:before {
  content: "\f1d1"; }

.fa.fa-git-square {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-git {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-hacker-news {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-y-combinator-square {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-y-combinator-square:before {
  content: "\f1d4"; }

.fa.fa-yc-square {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-yc-square:before {
  content: "\f1d4"; }

.fa.fa-tencent-weibo {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-qq {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-weixin {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-wechat {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-wechat:before {
  content: "\f1d7"; }

.fa.fa-send:before {
  content: "\f1d8"; }

.fa.fa-paper-plane-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-paper-plane-o:before {
  content: "\f1d8"; }

.fa.fa-send-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-send-o:before {
  content: "\f1d8"; }

.fa.fa-circle-thin {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-circle-thin:before {
  content: "\f111"; }

.fa.fa-header:before {
  content: "\f1dc"; }

.fa.fa-sliders:before {
  content: "\f1de"; }

.fa.fa-futbol-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-futbol-o:before {
  content: "\f1e3"; }

.fa.fa-soccer-ball-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-soccer-ball-o:before {
  content: "\f1e3"; }

.fa.fa-slideshare {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-twitch {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-yelp {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-newspaper-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-newspaper-o:before {
  content: "\f1ea"; }

.fa.fa-paypal {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-google-wallet {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-cc-visa {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-cc-mastercard {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-cc-discover {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-cc-amex {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-cc-paypal {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-cc-stripe {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-bell-slash-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-bell-slash-o:before {
  content: "\f1f6"; }

.fa.fa-trash:before {
  content: "\f2ed"; }

.fa.fa-copyright {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-eyedropper:before {
  content: "\f1fb"; }

.fa.fa-area-chart:before {
  content: "\f1fe"; }

.fa.fa-pie-chart:before {
  content: "\f200"; }

.fa.fa-line-chart:before {
  content: "\f201"; }

.fa.fa-lastfm {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-lastfm-square {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-ioxhost {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-angellist {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-cc {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-cc:before {
  content: "\f20a"; }

.fa.fa-ils:before {
  content: "\f20b"; }

.fa.fa-shekel:before {
  content: "\f20b"; }

.fa.fa-sheqel:before {
  content: "\f20b"; }

.fa.fa-meanpath {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-meanpath:before {
  content: "\f2b4"; }

.fa.fa-buysellads {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-connectdevelop {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-dashcube {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-forumbee {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-leanpub {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-sellsy {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-shirtsinbulk {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-simplybuilt {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-skyatlas {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-diamond {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-diamond:before {
  content: "\f3a5"; }

.fa.fa-intersex:before {
  content: "\f224"; }

.fa.fa-facebook-official {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-facebook-official:before {
  content: "\f09a"; }

.fa.fa-pinterest-p {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-whatsapp {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-hotel:before {
  content: "\f236"; }

.fa.fa-viacoin {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-medium {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-y-combinator {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-yc {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-yc:before {
  content: "\f23b"; }

.fa.fa-optin-monster {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-opencart {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-expeditedssl {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-battery-4:before {
  content: "\f240"; }

.fa.fa-battery:before {
  content: "\f240"; }

.fa.fa-battery-3:before {
  content: "\f241"; }

.fa.fa-battery-2:before {
  content: "\f242"; }

.fa.fa-battery-1:before {
  content: "\f243"; }

.fa.fa-battery-0:before {
  content: "\f244"; }

.fa.fa-object-group {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-object-ungroup {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-sticky-note-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-sticky-note-o:before {
  content: "\f249"; }

.fa.fa-cc-jcb {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-cc-diners-club {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-clone {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-hourglass-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-hourglass-o:before {
  content: "\f254"; }

.fa.fa-hourglass-1:before {
  content: "\f251"; }

.fa.fa-hourglass-2:before {
  content: "\f252"; }

.fa.fa-hourglass-3:before {
  content: "\f253"; }

.fa.fa-hand-rock-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-hand-rock-o:before {
  content: "\f255"; }

.fa.fa-hand-grab-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-hand-grab-o:before {
  content: "\f255"; }

.fa.fa-hand-paper-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-hand-paper-o:before {
  content: "\f256"; }

.fa.fa-hand-stop-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-hand-stop-o:before {
  content: "\f256"; }

.fa.fa-hand-scissors-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-hand-scissors-o:before {
  content: "\f257"; }

.fa.fa-hand-lizard-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-hand-lizard-o:before {
  content: "\f258"; }

.fa.fa-hand-spock-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-hand-spock-o:before {
  content: "\f259"; }

.fa.fa-hand-pointer-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-hand-pointer-o:before {
  content: "\f25a"; }

.fa.fa-hand-peace-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-hand-peace-o:before {
  content: "\f25b"; }

.fa.fa-registered {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-creative-commons {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-gg {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-gg-circle {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-tripadvisor {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-odnoklassniki {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-odnoklassniki-square {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-get-pocket {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-wikipedia-w {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-safari {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-chrome {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-firefox {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-opera {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-internet-explorer {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-television:before {
  content: "\f26c"; }

.fa.fa-contao {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-500px {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-amazon {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-calendar-plus-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-calendar-plus-o:before {
  content: "\f271"; }

.fa.fa-calendar-minus-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-calendar-minus-o:before {
  content: "\f272"; }

.fa.fa-calendar-times-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-calendar-times-o:before {
  content: "\f273"; }

.fa.fa-calendar-check-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-calendar-check-o:before {
  content: "\f274"; }

.fa.fa-map-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-map-o:before {
  content: "\f279"; }

.fa.fa-commenting:before {
  content: "\f4ad"; }

.fa.fa-commenting-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-commenting-o:before {
  content: "\f4ad"; }

.fa.fa-houzz {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-vimeo {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-vimeo:before {
  content: "\f27d"; }

.fa.fa-black-tie {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-fonticons {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-reddit-alien {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-edge {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-credit-card-alt:before {
  content: "\f09d"; }

.fa.fa-codiepie {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-modx {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-fort-awesome {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-usb {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-product-hunt {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-mixcloud {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-scribd {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-pause-circle-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-pause-circle-o:before {
  content: "\f28b"; }

.fa.fa-stop-circle-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-stop-circle-o:before {
  content: "\f28d"; }

.fa.fa-bluetooth {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-bluetooth-b {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-gitlab {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-wpbeginner {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-wpforms {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-envira {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-wheelchair-alt {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-wheelchair-alt:before {
  content: "\f368"; }

.fa.fa-question-circle-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-question-circle-o:before {
  content: "\f059"; }

.fa.fa-volume-control-phone:before {
  content: "\f2a0"; }

.fa.fa-asl-interpreting:before {
  content: "\f2a3"; }

.fa.fa-deafness:before {
  content: "\f2a4"; }

.fa.fa-hard-of-hearing:before {
  content: "\f2a4"; }

.fa.fa-glide {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-glide-g {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-signing:before {
  content: "\f2a7"; }

.fa.fa-viadeo {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-viadeo-square {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-snapchat {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-snapchat-ghost {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-snapchat-square {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-pied-piper {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-first-order {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-yoast {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-themeisle {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-google-plus-official {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-google-plus-official:before {
  content: "\f2b3"; }

.fa.fa-google-plus-circle {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-google-plus-circle:before {
  content: "\f2b3"; }

.fa.fa-font-awesome {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-fa {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-fa:before {
  content: "\f2b4"; }

.fa.fa-handshake-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-handshake-o:before {
  content: "\f2b5"; }

.fa.fa-envelope-open-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-envelope-open-o:before {
  content: "\f2b6"; }

.fa.fa-linode {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-address-book-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-address-book-o:before {
  content: "\f2b9"; }

.fa.fa-vcard:before {
  content: "\f2bb"; }

.fa.fa-address-card-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-address-card-o:before {
  content: "\f2bb"; }

.fa.fa-vcard-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-vcard-o:before {
  content: "\f2bb"; }

.fa.fa-user-circle-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-user-circle-o:before {
  content: "\f2bd"; }

.fa.fa-user-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-user-o:before {
  content: "\f007"; }

.fa.fa-id-badge {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-drivers-license:before {
  content: "\f2c2"; }

.fa.fa-id-card-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-id-card-o:before {
  content: "\f2c2"; }

.fa.fa-drivers-license-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-drivers-license-o:before {
  content: "\f2c2"; }

.fa.fa-quora {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-free-code-camp {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-telegram {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-thermometer-4:before {
  content: "\f2c7"; }

.fa.fa-thermometer:before {
  content: "\f2c7"; }

.fa.fa-thermometer-3:before {
  content: "\f2c8"; }

.fa.fa-thermometer-2:before {
  content: "\f2c9"; }

.fa.fa-thermometer-1:before {
  content: "\f2ca"; }

.fa.fa-thermometer-0:before {
  content: "\f2cb"; }

.fa.fa-bathtub:before {
  content: "\f2cd"; }

.fa.fa-s15:before {
  content: "\f2cd"; }

.fa.fa-window-maximize {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-window-restore {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-times-rectangle:before {
  content: "\f410"; }

.fa.fa-window-close-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-window-close-o:before {
  content: "\f410"; }

.fa.fa-times-rectangle-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-times-rectangle-o:before {
  content: "\f410"; }

.fa.fa-bandcamp {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-grav {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-etsy {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-imdb {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-ravelry {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-eercast {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-eercast:before {
  content: "\f2da"; }

.fa.fa-snowflake-o {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

.fa.fa-snowflake-o:before {
  content: "\f2dc"; }

.fa.fa-superpowers {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-wpexplorer {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

.fa.fa-cab:before {
  content: "\f1ba"; }
assets/lib/font-awesome/css/font-awesome.css000064400000114125151327220410015127 0ustar00/*!
 *  Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome
 *  License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
 */
/* FONT PATH
 * -------------------------- */
@font-face {
    font-family: 'FontAwesome';
    src: url('../fonts/fontawesome-webfont.eot?v=4.7.0');
    src: url('../fonts/fontawesome-webfont.eot?#iefix&v=4.7.0') format('embedded-opentype'), url('../fonts/fontawesome-webfont.woff2?v=4.7.0') format('woff2'), url('../fonts/fontawesome-webfont.woff?v=4.7.0') format('woff'), url('../fonts/fontawesome-webfont.ttf?v=4.7.0') format('truetype'), url('../fonts/fontawesome-webfont.svg?v=4.7.0#fontawesomeregular') format('svg');
    font-weight: normal;
    font-style: normal;
}
.fa {
    display: inline-block;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
/* makes the font 33% larger relative to the icon container */
.fa-lg {
    font-size: 1.33333333em;
    line-height: 0.75em;
    vertical-align: -15%;
}
.fa-2x {
    font-size: 2em;
}
.fa-3x {
    font-size: 3em;
}
.fa-4x {
    font-size: 4em;
}
.fa-5x {
    font-size: 5em;
}
.fa-fw {
    width: 1.28571429em;
    text-align: center;
}
.fa-ul {
    padding-left: 0;
    margin-left: 2.14285714em;
    list-style-type: none;
}
.fa-ul > li {
    position: relative;
}
.fa-li {
    position: absolute;
    left: -2.14285714em;
    width: 2.14285714em;
    top: 0.14285714em;
    text-align: center;
}
.fa-li.fa-lg {
    left: -1.85714286em;
}
.fa-border {
    padding: .2em .25em .15em;
    border: solid 0.08em #eeeeee;
    border-radius: .1em;
}
.fa-pull-left {
    float: left;
}
.fa-pull-right {
    float: right;
}
.fa.fa-pull-left {
    margin-right: .3em;
}
.fa.fa-pull-right {
    margin-left: .3em;
}
/* Deprecated as of 4.4.0 */
.pull-right {
    float: right;
}
.pull-left {
    float: left;
}
.fa.pull-left {
    margin-right: .3em;
}
.fa.pull-right {
    margin-left: .3em;
}
.fa-spin {
    -webkit-animation: fa-spin 2s infinite linear;
    animation: fa-spin 2s infinite linear;
}
.fa-pulse {
    -webkit-animation: fa-spin 1s infinite steps(8);
    animation: fa-spin 1s infinite steps(8);
}
@-webkit-keyframes fa-spin {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(359deg);
        transform: rotate(359deg);
    }
}
@keyframes fa-spin {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(359deg);
        transform: rotate(359deg);
    }
}
.fa-rotate-90 {
    -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
}
.fa-rotate-180 {
    -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
}
.fa-rotate-270 {
    -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
    -webkit-transform: rotate(270deg);
    -ms-transform: rotate(270deg);
    transform: rotate(270deg);
}
.fa-flip-horizontal {
    -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";
    -webkit-transform: scale(-1, 1);
    -ms-transform: scale(-1, 1);
    transform: scale(-1, 1);
}
.fa-flip-vertical {
    -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
    -webkit-transform: scale(1, -1);
    -ms-transform: scale(1, -1);
    transform: scale(1, -1);
}
:root .fa-rotate-90,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-flip-horizontal,
:root .fa-flip-vertical {
    filter: none;
}
.fa-stack {
    position: relative;
    display: inline-block;
    width: 2em;
    height: 2em;
    line-height: 2em;
    vertical-align: middle;
}
.fa-stack-1x,
.fa-stack-2x {
    position: absolute;
    left: 0;
    width: 100%;
    text-align: center;
}
.fa-stack-1x {
    line-height: inherit;
}
.fa-stack-2x {
    font-size: 2em;
}
.fa-inverse {
    color: #ffffff;
}
/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
   readers do not read off random characters that represent icons */
.fa-glass:before {
    content: "\f000";
}
.fa-music:before {
    content: "\f001";
}
.fa-search:before {
    content: "\f002";
}
.fa-envelope-o:before {
    content: "\f003";
}
.fa-heart:before {
    content: "\f004";
}
.fa-star:before {
    content: "\f005";
}
.fa-star-o:before {
    content: "\f006";
}
.fa-user:before {
    content: "\f007";
}
.fa-film:before {
    content: "\f008";
}
.fa-th-large:before {
    content: "\f009";
}
.fa-th:before {
    content: "\f00a";
}
.fa-th-list:before {
    content: "\f00b";
}
.fa-check:before {
    content: "\f00c";
}
.fa-remove:before,
.fa-close:before,
.fa-times:before {
    content: "\f00d";
}
.fa-search-plus:before {
    content: "\f00e";
}
.fa-search-minus:before {
    content: "\f010";
}
.fa-power-off:before {
    content: "\f011";
}
.fa-signal:before {
    content: "\f012";
}
.fa-gear:before,
.fa-cog:before {
    content: "\f013";
}
.fa-trash-o:before {
    content: "\f014";
}
.fa-home:before {
    content: "\f015";
}
.fa-file-o:before {
    content: "\f016";
}
.fa-clock-o:before {
    content: "\f017";
}
.fa-road:before {
    content: "\f018";
}
.fa-download:before {
    content: "\f019";
}
.fa-arrow-circle-o-down:before {
    content: "\f01a";
}
.fa-arrow-circle-o-up:before {
    content: "\f01b";
}
.fa-inbox:before {
    content: "\f01c";
}
.fa-play-circle-o:before {
    content: "\f01d";
}
.fa-rotate-right:before,
.fa-repeat:before {
    content: "\f01e";
}
.fa-refresh:before {
    content: "\f021";
}
.fa-list-alt:before {
    content: "\f022";
}
.fa-lock:before {
    content: "\f023";
}
.fa-flag:before {
    content: "\f024";
}
.fa-headphones:before {
    content: "\f025";
}
.fa-volume-off:before {
    content: "\f026";
}
.fa-volume-down:before {
    content: "\f027";
}
.fa-volume-up:before {
    content: "\f028";
}
.fa-qrcode:before {
    content: "\f029";
}
.fa-barcode:before {
    content: "\f02a";
}
.fa-tag:before {
    content: "\f02b";
}
.fa-tags:before {
    content: "\f02c";
}
.fa-book:before {
    content: "\f02d";
}
.fa-bookmark:before {
    content: "\f02e";
}
.fa-print:before {
    content: "\f02f";
}
.fa-camera:before {
    content: "\f030";
}
.fa-font:before {
    content: "\f031";
}
.fa-bold:before {
    content: "\f032";
}
.fa-italic:before {
    content: "\f033";
}
.fa-text-height:before {
    content: "\f034";
}
.fa-text-width:before {
    content: "\f035";
}
.fa-align-left:before {
    content: "\f036";
}
.fa-align-center:before {
    content: "\f037";
}
.fa-align-right:before {
    content: "\f038";
}
.fa-align-justify:before {
    content: "\f039";
}
.fa-list:before {
    content: "\f03a";
}
.fa-dedent:before,
.fa-outdent:before {
    content: "\f03b";
}
.fa-indent:before {
    content: "\f03c";
}
.fa-video-camera:before {
    content: "\f03d";
}
.fa-photo:before,
.fa-image:before,
.fa-picture-o:before {
    content: "\f03e";
}
.fa-pencil:before {
    content: "\f040";
}
.fa-map-marker:before {
    content: "\f041";
}
.fa-adjust:before {
    content: "\f042";
}
.fa-tint:before {
    content: "\f043";
}
.fa-edit:before,
.fa-pencil-square-o:before {
    content: "\f044";
}
.fa-share-square-o:before {
    content: "\f045";
}
.fa-check-square-o:before {
    content: "\f046";
}
.fa-arrows:before {
    content: "\f047";
}
.fa-step-backward:before {
    content: "\f048";
}
.fa-fast-backward:before {
    content: "\f049";
}
.fa-backward:before {
    content: "\f04a";
}
.fa-play:before {
    content: "\f04b";
}
.fa-pause:before {
    content: "\f04c";
}
.fa-stop:before {
    content: "\f04d";
}
.fa-forward:before {
    content: "\f04e";
}
.fa-fast-forward:before {
    content: "\f050";
}
.fa-step-forward:before {
    content: "\f051";
}
.fa-eject:before {
    content: "\f052";
}
.fa-chevron-left:before {
    content: "\f053";
}
.fa-chevron-right:before {
    content: "\f054";
}
.fa-plus-circle:before {
    content: "\f055";
}
.fa-minus-circle:before {
    content: "\f056";
}
.fa-times-circle:before {
    content: "\f057";
}
.fa-check-circle:before {
    content: "\f058";
}
.fa-question-circle:before {
    content: "\f059";
}
.fa-info-circle:before {
    content: "\f05a";
}
.fa-crosshairs:before {
    content: "\f05b";
}
.fa-times-circle-o:before {
    content: "\f05c";
}
.fa-check-circle-o:before {
    content: "\f05d";
}
.fa-ban:before {
    content: "\f05e";
}
.fa-arrow-left:before {
    content: "\f060";
}
.fa-arrow-right:before {
    content: "\f061";
}
.fa-arrow-up:before {
    content: "\f062";
}
.fa-arrow-down:before {
    content: "\f063";
}
.fa-mail-forward:before,
.fa-share:before {
    content: "\f064";
}
.fa-expand:before {
    content: "\f065";
}
.fa-compress:before {
    content: "\f066";
}
.fa-plus:before {
    content: "\f067";
}
.fa-minus:before {
    content: "\f068";
}
.fa-asterisk:before {
    content: "\f069";
}
.fa-exclamation-circle:before {
    content: "\f06a";
}
.fa-gift:before {
    content: "\f06b";
}
.fa-leaf:before {
    content: "\f06c";
}
.fa-fire:before {
    content: "\f06d";
}
.fa-eye:before {
    content: "\f06e";
}
.fa-eye-slash:before {
    content: "\f070";
}
.fa-warning:before,
.fa-exclamation-triangle:before {
    content: "\f071";
}
.fa-plane:before {
    content: "\f072";
}
.fa-calendar:before {
    content: "\f073";
}
.fa-random:before {
    content: "\f074";
}
.fa-comment:before {
    content: "\f075";
}
.fa-magnet:before {
    content: "\f076";
}
.fa-chevron-up:before {
    content: "\f077";
}
.fa-chevron-down:before {
    content: "\f078";
}
.fa-retweet:before {
    content: "\f079";
}
.fa-shopping-cart:before {
    content: "\f07a";
}
.fa-folder:before {
    content: "\f07b";
}
.fa-folder-open:before {
    content: "\f07c";
}
.fa-arrows-v:before {
    content: "\f07d";
}
.fa-arrows-h:before {
    content: "\f07e";
}
.fa-bar-chart-o:before,
.fa-bar-chart:before {
    content: "\f080";
}
.fa-twitter-square:before {
    content: "\f081";
}
.fa-facebook-square:before {
    content: "\f082";
}
.fa-camera-retro:before {
    content: "\f083";
}
.fa-key:before {
    content: "\f084";
}
.fa-gears:before,
.fa-cogs:before {
    content: "\f085";
}
.fa-comments:before {
    content: "\f086";
}
.fa-thumbs-o-up:before {
    content: "\f087";
}
.fa-thumbs-o-down:before {
    content: "\f088";
}
.fa-star-half:before {
    content: "\f089";
}
.fa-heart-o:before {
    content: "\f08a";
}
.fa-sign-out:before {
    content: "\f08b";
}
.fa-linkedin-square:before {
    content: "\f08c";
}
.fa-thumb-tack:before {
    content: "\f08d";
}
.fa-external-link:before {
    content: "\f08e";
}
.fa-sign-in:before {
    content: "\f090";
}
.fa-trophy:before {
    content: "\f091";
}
.fa-github-square:before {
    content: "\f092";
}
.fa-upload:before {
    content: "\f093";
}
.fa-lemon-o:before {
    content: "\f094";
}
.fa-phone:before {
    content: "\f095";
}
.fa-square-o:before {
    content: "\f096";
}
.fa-bookmark-o:before {
    content: "\f097";
}
.fa-phone-square:before {
    content: "\f098";
}
.fa-twitter:before {
    content: "\f099";
}
.fa-facebook-f:before,
.fa-facebook:before {
    content: "\f09a";
}
.fa-github:before {
    content: "\f09b";
}
.fa-unlock:before {
    content: "\f09c";
}
.fa-credit-card:before {
    content: "\f09d";
}
.fa-feed:before,
.fa-rss:before {
    content: "\f09e";
}
.fa-hdd-o:before {
    content: "\f0a0";
}
.fa-bullhorn:before {
    content: "\f0a1";
}
.fa-bell:before {
    content: "\f0f3";
}
.fa-certificate:before {
    content: "\f0a3";
}
.fa-hand-o-right:before {
    content: "\f0a4";
}
.fa-hand-o-left:before {
    content: "\f0a5";
}
.fa-hand-o-up:before {
    content: "\f0a6";
}
.fa-hand-o-down:before {
    content: "\f0a7";
}
.fa-arrow-circle-left:before {
    content: "\f0a8";
}
.fa-arrow-circle-right:before {
    content: "\f0a9";
}
.fa-arrow-circle-up:before {
    content: "\f0aa";
}
.fa-arrow-circle-down:before {
    content: "\f0ab";
}
.fa-globe:before {
    content: "\f0ac";
}
.fa-wrench:before {
    content: "\f0ad";
}
.fa-tasks:before {
    content: "\f0ae";
}
.fa-filter:before {
    content: "\f0b0";
}
.fa-briefcase:before {
    content: "\f0b1";
}
.fa-arrows-alt:before {
    content: "\f0b2";
}
.fa-group:before,
.fa-users:before {
    content: "\f0c0";
}
.fa-chain:before,
.fa-link:before {
    content: "\f0c1";
}
.fa-cloud:before {
    content: "\f0c2";
}
.fa-flask:before {
    content: "\f0c3";
}
.fa-cut:before,
.fa-scissors:before {
    content: "\f0c4";
}
.fa-copy:before,
.fa-files-o:before {
    content: "\f0c5";
}
.fa-paperclip:before {
    content: "\f0c6";
}
.fa-save:before,
.fa-floppy-o:before {
    content: "\f0c7";
}
.fa-square:before {
    content: "\f0c8";
}
.fa-navicon:before,
.fa-reorder:before,
.fa-bars:before {
    content: "\f0c9";
}
.fa-list-ul:before {
    content: "\f0ca";
}
.fa-list-ol:before {
    content: "\f0cb";
}
.fa-strikethrough:before {
    content: "\f0cc";
}
.fa-underline:before {
    content: "\f0cd";
}
.fa-table:before {
    content: "\f0ce";
}
.fa-magic:before {
    content: "\f0d0";
}
.fa-truck:before {
    content: "\f0d1";
}
.fa-pinterest:before {
    content: "\f0d2";
}
.fa-pinterest-square:before {
    content: "\f0d3";
}
.fa-google-plus-square:before {
    content: "\f0d4";
}
.fa-google-plus:before {
    content: "\f0d5";
}
.fa-money:before {
    content: "\f0d6";
}
.fa-caret-down:before {
    content: "\f0d7";
}
.fa-caret-up:before {
    content: "\f0d8";
}
.fa-caret-left:before {
    content: "\f0d9";
}
.fa-caret-right:before {
    content: "\f0da";
}
.fa-columns:before {
    content: "\f0db";
}
.fa-unsorted:before,
.fa-sort:before {
    content: "\f0dc";
}
.fa-sort-down:before,
.fa-sort-desc:before {
    content: "\f0dd";
}
.fa-sort-up:before,
.fa-sort-asc:before {
    content: "\f0de";
}
.fa-envelope:before {
    content: "\f0e0";
}
.fa-linkedin:before {
    content: "\f0e1";
}
.fa-rotate-left:before,
.fa-undo:before {
    content: "\f0e2";
}
.fa-legal:before,
.fa-gavel:before {
    content: "\f0e3";
}
.fa-dashboard:before,
.fa-tachometer:before {
    content: "\f0e4";
}
.fa-comment-o:before {
    content: "\f0e5";
}
.fa-comments-o:before {
    content: "\f0e6";
}
.fa-flash:before,
.fa-bolt:before {
    content: "\f0e7";
}
.fa-sitemap:before {
    content: "\f0e8";
}
.fa-umbrella:before {
    content: "\f0e9";
}
.fa-paste:before,
.fa-clipboard:before {
    content: "\f0ea";
}
.fa-lightbulb-o:before {
    content: "\f0eb";
}
.fa-exchange:before {
    content: "\f0ec";
}
.fa-cloud-download:before {
    content: "\f0ed";
}
.fa-cloud-upload:before {
    content: "\f0ee";
}
.fa-user-md:before {
    content: "\f0f0";
}
.fa-stethoscope:before {
    content: "\f0f1";
}
.fa-suitcase:before {
    content: "\f0f2";
}
.fa-bell-o:before {
    content: "\f0a2";
}
.fa-coffee:before {
    content: "\f0f4";
}
.fa-cutlery:before {
    content: "\f0f5";
}
.fa-file-text-o:before {
    content: "\f0f6";
}
.fa-building-o:before {
    content: "\f0f7";
}
.fa-hospital-o:before {
    content: "\f0f8";
}
.fa-ambulance:before {
    content: "\f0f9";
}
.fa-medkit:before {
    content: "\f0fa";
}
.fa-fighter-jet:before {
    content: "\f0fb";
}
.fa-beer:before {
    content: "\f0fc";
}
.fa-h-square:before {
    content: "\f0fd";
}
.fa-plus-square:before {
    content: "\f0fe";
}
.fa-angle-double-left:before {
    content: "\f100";
}
.fa-angle-double-right:before {
    content: "\f101";
}
.fa-angle-double-up:before {
    content: "\f102";
}
.fa-angle-double-down:before {
    content: "\f103";
}
.fa-angle-left:before {
    content: "\f104";
}
.fa-angle-right:before {
    content: "\f105";
}
.fa-angle-up:before {
    content: "\f106";
}
.fa-angle-down:before {
    content: "\f107";
}
.fa-desktop:before {
    content: "\f108";
}
.fa-laptop:before {
    content: "\f109";
}
.fa-tablet:before {
    content: "\f10a";
}
.fa-mobile-phone:before,
.fa-mobile:before {
    content: "\f10b";
}
.fa-circle-o:before {
    content: "\f10c";
}
.fa-quote-left:before {
    content: "\f10d";
}
.fa-quote-right:before {
    content: "\f10e";
}
.fa-spinner:before {
    content: "\f110";
}
.fa-circle:before {
    content: "\f111";
}
.fa-mail-reply:before,
.fa-reply:before {
    content: "\f112";
}
.fa-github-alt:before {
    content: "\f113";
}
.fa-folder-o:before {
    content: "\f114";
}
.fa-folder-open-o:before {
    content: "\f115";
}
.fa-smile-o:before {
    content: "\f118";
}
.fa-frown-o:before {
    content: "\f119";
}
.fa-meh-o:before {
    content: "\f11a";
}
.fa-gamepad:before {
    content: "\f11b";
}
.fa-keyboard-o:before {
    content: "\f11c";
}
.fa-flag-o:before {
    content: "\f11d";
}
.fa-flag-checkered:before {
    content: "\f11e";
}
.fa-terminal:before {
    content: "\f120";
}
.fa-code:before {
    content: "\f121";
}
.fa-mail-reply-all:before,
.fa-reply-all:before {
    content: "\f122";
}
.fa-star-half-empty:before,
.fa-star-half-full:before,
.fa-star-half-o:before {
    content: "\f123";
}
.fa-location-arrow:before {
    content: "\f124";
}
.fa-crop:before {
    content: "\f125";
}
.fa-code-fork:before {
    content: "\f126";
}
.fa-unlink:before,
.fa-chain-broken:before {
    content: "\f127";
}
.fa-question:before {
    content: "\f128";
}
.fa-info:before {
    content: "\f129";
}
.fa-exclamation:before {
    content: "\f12a";
}
.fa-superscript:before {
    content: "\f12b";
}
.fa-subscript:before {
    content: "\f12c";
}
.fa-eraser:before {
    content: "\f12d";
}
.fa-puzzle-piece:before {
    content: "\f12e";
}
.fa-microphone:before {
    content: "\f130";
}
.fa-microphone-slash:before {
    content: "\f131";
}
.fa-shield:before {
    content: "\f132";
}
.fa-calendar-o:before {
    content: "\f133";
}
.fa-fire-extinguisher:before {
    content: "\f134";
}
.fa-rocket:before {
    content: "\f135";
}
.fa-maxcdn:before {
    content: "\f136";
}
.fa-chevron-circle-left:before {
    content: "\f137";
}
.fa-chevron-circle-right:before {
    content: "\f138";
}
.fa-chevron-circle-up:before {
    content: "\f139";
}
.fa-chevron-circle-down:before {
    content: "\f13a";
}
.fa-html5:before {
    content: "\f13b";
}
.fa-css3:before {
    content: "\f13c";
}
.fa-anchor:before {
    content: "\f13d";
}
.fa-unlock-alt:before {
    content: "\f13e";
}
.fa-bullseye:before {
    content: "\f140";
}
.fa-ellipsis-h:before {
    content: "\f141";
}
.fa-ellipsis-v:before {
    content: "\f142";
}
.fa-rss-square:before {
    content: "\f143";
}
.fa-play-circle:before {
    content: "\f144";
}
.fa-ticket:before {
    content: "\f145";
}
.fa-minus-square:before {
    content: "\f146";
}
.fa-minus-square-o:before {
    content: "\f147";
}
.fa-level-up:before {
    content: "\f148";
}
.fa-level-down:before {
    content: "\f149";
}
.fa-check-square:before {
    content: "\f14a";
}
.fa-pencil-square:before {
    content: "\f14b";
}
.fa-external-link-square:before {
    content: "\f14c";
}
.fa-share-square:before {
    content: "\f14d";
}
.fa-compass:before {
    content: "\f14e";
}
.fa-toggle-down:before,
.fa-caret-square-o-down:before {
    content: "\f150";
}
.fa-toggle-up:before,
.fa-caret-square-o-up:before {
    content: "\f151";
}
.fa-toggle-right:before,
.fa-caret-square-o-right:before {
    content: "\f152";
}
.fa-euro:before,
.fa-eur:before {
    content: "\f153";
}
.fa-gbp:before {
    content: "\f154";
}
.fa-dollar:before,
.fa-usd:before {
    content: "\f155";
}
.fa-rupee:before,
.fa-inr:before {
    content: "\f156";
}
.fa-cny:before,
.fa-rmb:before,
.fa-yen:before,
.fa-jpy:before {
    content: "\f157";
}
.fa-ruble:before,
.fa-rouble:before,
.fa-rub:before {
    content: "\f158";
}
.fa-won:before,
.fa-krw:before {
    content: "\f159";
}
.fa-bitcoin:before,
.fa-btc:before {
    content: "\f15a";
}
.fa-file:before {
    content: "\f15b";
}
.fa-file-text:before {
    content: "\f15c";
}
.fa-sort-alpha-asc:before {
    content: "\f15d";
}
.fa-sort-alpha-desc:before {
    content: "\f15e";
}
.fa-sort-amount-asc:before {
    content: "\f160";
}
.fa-sort-amount-desc:before {
    content: "\f161";
}
.fa-sort-numeric-asc:before {
    content: "\f162";
}
.fa-sort-numeric-desc:before {
    content: "\f163";
}
.fa-thumbs-up:before {
    content: "\f164";
}
.fa-thumbs-down:before {
    content: "\f165";
}
.fa-youtube-square:before {
    content: "\f166";
}
.fa-youtube:before {
    content: "\f167";
}
.fa-xing:before {
    content: "\f168";
}
.fa-xing-square:before {
    content: "\f169";
}
.fa-youtube-play:before {
    content: "\f16a";
}
.fa-dropbox:before {
    content: "\f16b";
}
.fa-stack-overflow:before {
    content: "\f16c";
}
.fa-instagram:before {
    content: "\f16d";
}
.fa-flickr:before {
    content: "\f16e";
}
.fa-adn:before {
    content: "\f170";
}
.fa-bitbucket:before {
    content: "\f171";
}
.fa-bitbucket-square:before {
    content: "\f172";
}
.fa-tumblr:before {
    content: "\f173";
}
.fa-tumblr-square:before {
    content: "\f174";
}
.fa-long-arrow-down:before {
    content: "\f175";
}
.fa-long-arrow-up:before {
    content: "\f176";
}
.fa-long-arrow-left:before {
    content: "\f177";
}
.fa-long-arrow-right:before {
    content: "\f178";
}
.fa-apple:before {
    content: "\f179";
}
.fa-windows:before {
    content: "\f17a";
}
.fa-android:before {
    content: "\f17b";
}
.fa-linux:before {
    content: "\f17c";
}
.fa-dribbble:before {
    content: "\f17d";
}
.fa-skype:before {
    content: "\f17e";
}
.fa-foursquare:before {
    content: "\f180";
}
.fa-trello:before {
    content: "\f181";
}
.fa-female:before {
    content: "\f182";
}
.fa-male:before {
    content: "\f183";
}
.fa-gittip:before,
.fa-gratipay:before {
    content: "\f184";
}
.fa-sun-o:before {
    content: "\f185";
}
.fa-moon-o:before {
    content: "\f186";
}
.fa-archive:before {
    content: "\f187";
}
.fa-bug:before {
    content: "\f188";
}
.fa-vk:before {
    content: "\f189";
}
.fa-weibo:before {
    content: "\f18a";
}
.fa-renren:before {
    content: "\f18b";
}
.fa-pagelines:before {
    content: "\f18c";
}
.fa-stack-exchange:before {
    content: "\f18d";
}
.fa-arrow-circle-o-right:before {
    content: "\f18e";
}
.fa-arrow-circle-o-left:before {
    content: "\f190";
}
.fa-toggle-left:before,
.fa-caret-square-o-left:before {
    content: "\f191";
}
.fa-dot-circle-o:before {
    content: "\f192";
}
.fa-wheelchair:before {
    content: "\f193";
}
.fa-vimeo-square:before {
    content: "\f194";
}
.fa-turkish-lira:before,
.fa-try:before {
    content: "\f195";
}
.fa-plus-square-o:before {
    content: "\f196";
}
.fa-space-shuttle:before {
    content: "\f197";
}
.fa-slack:before {
    content: "\f198";
}
.fa-envelope-square:before {
    content: "\f199";
}
.fa-wordpress:before {
    content: "\f19a";
}
.fa-openid:before {
    content: "\f19b";
}
.fa-institution:before,
.fa-bank:before,
.fa-university:before {
    content: "\f19c";
}
.fa-mortar-board:before,
.fa-graduation-cap:before {
    content: "\f19d";
}
.fa-yahoo:before {
    content: "\f19e";
}
.fa-google:before {
    content: "\f1a0";
}
.fa-reddit:before {
    content: "\f1a1";
}
.fa-reddit-square:before {
    content: "\f1a2";
}
.fa-stumbleupon-circle:before {
    content: "\f1a3";
}
.fa-stumbleupon:before {
    content: "\f1a4";
}
.fa-delicious:before {
    content: "\f1a5";
}
.fa-digg:before {
    content: "\f1a6";
}
.fa-pied-piper-pp:before {
    content: "\f1a7";
}
.fa-pied-piper-alt:before {
    content: "\f1a8";
}
.fa-drupal:before {
    content: "\f1a9";
}
.fa-joomla:before {
    content: "\f1aa";
}
.fa-language:before {
    content: "\f1ab";
}
.fa-fax:before {
    content: "\f1ac";
}
.fa-building:before {
    content: "\f1ad";
}
.fa-child:before {
    content: "\f1ae";
}
.fa-paw:before {
    content: "\f1b0";
}
.fa-spoon:before {
    content: "\f1b1";
}
.fa-cube:before {
    content: "\f1b2";
}
.fa-cubes:before {
    content: "\f1b3";
}
.fa-behance:before {
    content: "\f1b4";
}
.fa-behance-square:before {
    content: "\f1b5";
}
.fa-steam:before {
    content: "\f1b6";
}
.fa-steam-square:before {
    content: "\f1b7";
}
.fa-recycle:before {
    content: "\f1b8";
}
.fa-automobile:before,
.fa-car:before {
    content: "\f1b9";
}
.fa-cab:before,
.fa-taxi:before {
    content: "\f1ba";
}
.fa-tree:before {
    content: "\f1bb";
}
.fa-spotify:before {
    content: "\f1bc";
}
.fa-deviantart:before {
    content: "\f1bd";
}
.fa-soundcloud:before {
    content: "\f1be";
}
.fa-database:before {
    content: "\f1c0";
}
.fa-file-pdf-o:before {
    content: "\f1c1";
}
.fa-file-word-o:before {
    content: "\f1c2";
}
.fa-file-excel-o:before {
    content: "\f1c3";
}
.fa-file-powerpoint-o:before {
    content: "\f1c4";
}
.fa-file-photo-o:before,
.fa-file-picture-o:before,
.fa-file-image-o:before {
    content: "\f1c5";
}
.fa-file-zip-o:before,
.fa-file-archive-o:before {
    content: "\f1c6";
}
.fa-file-sound-o:before,
.fa-file-audio-o:before {
    content: "\f1c7";
}
.fa-file-movie-o:before,
.fa-file-video-o:before {
    content: "\f1c8";
}
.fa-file-code-o:before {
    content: "\f1c9";
}
.fa-vine:before {
    content: "\f1ca";
}
.fa-codepen:before {
    content: "\f1cb";
}
.fa-jsfiddle:before {
    content: "\f1cc";
}
.fa-life-bouy:before,
.fa-life-buoy:before,
.fa-life-saver:before,
.fa-support:before,
.fa-life-ring:before {
    content: "\f1cd";
}
.fa-circle-o-notch:before {
    content: "\f1ce";
}
.fa-ra:before,
.fa-resistance:before,
.fa-rebel:before {
    content: "\f1d0";
}
.fa-ge:before,
.fa-empire:before {
    content: "\f1d1";
}
.fa-git-square:before {
    content: "\f1d2";
}
.fa-git:before {
    content: "\f1d3";
}
.fa-y-combinator-square:before,
.fa-yc-square:before,
.fa-hacker-news:before {
    content: "\f1d4";
}
.fa-tencent-weibo:before {
    content: "\f1d5";
}
.fa-qq:before {
    content: "\f1d6";
}
.fa-wechat:before,
.fa-weixin:before {
    content: "\f1d7";
}
.fa-send:before,
.fa-paper-plane:before {
    content: "\f1d8";
}
.fa-send-o:before,
.fa-paper-plane-o:before {
    content: "\f1d9";
}
.fa-history:before {
    content: "\f1da";
}
.fa-circle-thin:before {
    content: "\f1db";
}
.fa-header:before {
    content: "\f1dc";
}
.fa-paragraph:before {
    content: "\f1dd";
}
.fa-sliders:before {
    content: "\f1de";
}
.fa-share-alt:before {
    content: "\f1e0";
}
.fa-share-alt-square:before {
    content: "\f1e1";
}
.fa-bomb:before {
    content: "\f1e2";
}
.fa-soccer-ball-o:before,
.fa-futbol-o:before {
    content: "\f1e3";
}
.fa-tty:before {
    content: "\f1e4";
}
.fa-binoculars:before {
    content: "\f1e5";
}
.fa-plug:before {
    content: "\f1e6";
}
.fa-slideshare:before {
    content: "\f1e7";
}
.fa-twitch:before {
    content: "\f1e8";
}
.fa-yelp:before {
    content: "\f1e9";
}
.fa-newspaper-o:before {
    content: "\f1ea";
}
.fa-wifi:before {
    content: "\f1eb";
}
.fa-calculator:before {
    content: "\f1ec";
}
.fa-paypal:before {
    content: "\f1ed";
}
.fa-google-wallet:before {
    content: "\f1ee";
}
.fa-cc-visa:before {
    content: "\f1f0";
}
.fa-cc-mastercard:before {
    content: "\f1f1";
}
.fa-cc-discover:before {
    content: "\f1f2";
}
.fa-cc-amex:before {
    content: "\f1f3";
}
.fa-cc-paypal:before {
    content: "\f1f4";
}
.fa-cc-stripe:before {
    content: "\f1f5";
}
.fa-bell-slash:before {
    content: "\f1f6";
}
.fa-bell-slash-o:before {
    content: "\f1f7";
}
.fa-trash:before {
    content: "\f1f8";
}
.fa-copyright:before {
    content: "\f1f9";
}
.fa-at:before {
    content: "\f1fa";
}
.fa-eyedropper:before {
    content: "\f1fb";
}
.fa-paint-brush:before {
    content: "\f1fc";
}
.fa-birthday-cake:before {
    content: "\f1fd";
}
.fa-area-chart:before {
    content: "\f1fe";
}
.fa-pie-chart:before {
    content: "\f200";
}
.fa-line-chart:before {
    content: "\f201";
}
.fa-lastfm:before {
    content: "\f202";
}
.fa-lastfm-square:before {
    content: "\f203";
}
.fa-toggle-off:before {
    content: "\f204";
}
.fa-toggle-on:before {
    content: "\f205";
}
.fa-bicycle:before {
    content: "\f206";
}
.fa-bus:before {
    content: "\f207";
}
.fa-ioxhost:before {
    content: "\f208";
}
.fa-angellist:before {
    content: "\f209";
}
.fa-cc:before {
    content: "\f20a";
}
.fa-shekel:before,
.fa-sheqel:before,
.fa-ils:before {
    content: "\f20b";
}
.fa-meanpath:before {
    content: "\f20c";
}
.fa-buysellads:before {
    content: "\f20d";
}
.fa-connectdevelop:before {
    content: "\f20e";
}
.fa-dashcube:before {
    content: "\f210";
}
.fa-forumbee:before {
    content: "\f211";
}
.fa-leanpub:before {
    content: "\f212";
}
.fa-sellsy:before {
    content: "\f213";
}
.fa-shirtsinbulk:before {
    content: "\f214";
}
.fa-simplybuilt:before {
    content: "\f215";
}
.fa-skyatlas:before {
    content: "\f216";
}
.fa-cart-plus:before {
    content: "\f217";
}
.fa-cart-arrow-down:before {
    content: "\f218";
}
.fa-diamond:before {
    content: "\f219";
}
.fa-ship:before {
    content: "\f21a";
}
.fa-user-secret:before {
    content: "\f21b";
}
.fa-motorcycle:before {
    content: "\f21c";
}
.fa-street-view:before {
    content: "\f21d";
}
.fa-heartbeat:before {
    content: "\f21e";
}
.fa-venus:before {
    content: "\f221";
}
.fa-mars:before {
    content: "\f222";
}
.fa-mercury:before {
    content: "\f223";
}
.fa-intersex:before,
.fa-transgender:before {
    content: "\f224";
}
.fa-transgender-alt:before {
    content: "\f225";
}
.fa-venus-double:before {
    content: "\f226";
}
.fa-mars-double:before {
    content: "\f227";
}
.fa-venus-mars:before {
    content: "\f228";
}
.fa-mars-stroke:before {
    content: "\f229";
}
.fa-mars-stroke-v:before {
    content: "\f22a";
}
.fa-mars-stroke-h:before {
    content: "\f22b";
}
.fa-neuter:before {
    content: "\f22c";
}
.fa-genderless:before {
    content: "\f22d";
}
.fa-facebook-official:before {
    content: "\f230";
}
.fa-pinterest-p:before {
    content: "\f231";
}
.fa-whatsapp:before {
    content: "\f232";
}
.fa-server:before {
    content: "\f233";
}
.fa-user-plus:before {
    content: "\f234";
}
.fa-user-times:before {
    content: "\f235";
}
.fa-hotel:before,
.fa-bed:before {
    content: "\f236";
}
.fa-viacoin:before {
    content: "\f237";
}
.fa-train:before {
    content: "\f238";
}
.fa-subway:before {
    content: "\f239";
}
.fa-medium:before {
    content: "\f23a";
}
.fa-yc:before,
.fa-y-combinator:before {
    content: "\f23b";
}
.fa-optin-monster:before {
    content: "\f23c";
}
.fa-opencart:before {
    content: "\f23d";
}
.fa-expeditedssl:before {
    content: "\f23e";
}
.fa-battery-4:before,
.fa-battery:before,
.fa-battery-full:before {
    content: "\f240";
}
.fa-battery-3:before,
.fa-battery-three-quarters:before {
    content: "\f241";
}
.fa-battery-2:before,
.fa-battery-half:before {
    content: "\f242";
}
.fa-battery-1:before,
.fa-battery-quarter:before {
    content: "\f243";
}
.fa-battery-0:before,
.fa-battery-empty:before {
    content: "\f244";
}
.fa-mouse-pointer:before {
    content: "\f245";
}
.fa-i-cursor:before {
    content: "\f246";
}
.fa-object-group:before {
    content: "\f247";
}
.fa-object-ungroup:before {
    content: "\f248";
}
.fa-sticky-note:before {
    content: "\f249";
}
.fa-sticky-note-o:before {
    content: "\f24a";
}
.fa-cc-jcb:before {
    content: "\f24b";
}
.fa-cc-diners-club:before {
    content: "\f24c";
}
.fa-clone:before {
    content: "\f24d";
}
.fa-balance-scale:before {
    content: "\f24e";
}
.fa-hourglass-o:before {
    content: "\f250";
}
.fa-hourglass-1:before,
.fa-hourglass-start:before {
    content: "\f251";
}
.fa-hourglass-2:before,
.fa-hourglass-half:before {
    content: "\f252";
}
.fa-hourglass-3:before,
.fa-hourglass-end:before {
    content: "\f253";
}
.fa-hourglass:before {
    content: "\f254";
}
.fa-hand-grab-o:before,
.fa-hand-rock-o:before {
    content: "\f255";
}
.fa-hand-stop-o:before,
.fa-hand-paper-o:before {
    content: "\f256";
}
.fa-hand-scissors-o:before {
    content: "\f257";
}
.fa-hand-lizard-o:before {
    content: "\f258";
}
.fa-hand-spock-o:before {
    content: "\f259";
}
.fa-hand-pointer-o:before {
    content: "\f25a";
}
.fa-hand-peace-o:before {
    content: "\f25b";
}
.fa-trademark:before {
    content: "\f25c";
}
.fa-registered:before {
    content: "\f25d";
}
.fa-creative-commons:before {
    content: "\f25e";
}
.fa-gg:before {
    content: "\f260";
}
.fa-gg-circle:before {
    content: "\f261";
}
.fa-tripadvisor:before {
    content: "\f262";
}
.fa-odnoklassniki:before {
    content: "\f263";
}
.fa-odnoklassniki-square:before {
    content: "\f264";
}
.fa-get-pocket:before {
    content: "\f265";
}
.fa-wikipedia-w:before {
    content: "\f266";
}
.fa-safari:before {
    content: "\f267";
}
.fa-chrome:before {
    content: "\f268";
}
.fa-firefox:before {
    content: "\f269";
}
.fa-opera:before {
    content: "\f26a";
}
.fa-internet-explorer:before {
    content: "\f26b";
}
.fa-tv:before,
.fa-television:before {
    content: "\f26c";
}
.fa-contao:before {
    content: "\f26d";
}
.fa-500px:before {
    content: "\f26e";
}
.fa-amazon:before {
    content: "\f270";
}
.fa-calendar-plus-o:before {
    content: "\f271";
}
.fa-calendar-minus-o:before {
    content: "\f272";
}
.fa-calendar-times-o:before {
    content: "\f273";
}
.fa-calendar-check-o:before {
    content: "\f274";
}
.fa-industry:before {
    content: "\f275";
}
.fa-map-pin:before {
    content: "\f276";
}
.fa-map-signs:before {
    content: "\f277";
}
.fa-map-o:before {
    content: "\f278";
}
.fa-map:before {
    content: "\f279";
}
.fa-commenting:before {
    content: "\f27a";
}
.fa-commenting-o:before {
    content: "\f27b";
}
.fa-houzz:before {
    content: "\f27c";
}
.fa-vimeo:before {
    content: "\f27d";
}
.fa-black-tie:before {
    content: "\f27e";
}
.fa-fonticons:before {
    content: "\f280";
}
.fa-reddit-alien:before {
    content: "\f281";
}
.fa-edge:before {
    content: "\f282";
}
.fa-credit-card-alt:before {
    content: "\f283";
}
.fa-codiepie:before {
    content: "\f284";
}
.fa-modx:before {
    content: "\f285";
}
.fa-fort-awesome:before {
    content: "\f286";
}
.fa-usb:before {
    content: "\f287";
}
.fa-product-hunt:before {
    content: "\f288";
}
.fa-mixcloud:before {
    content: "\f289";
}
.fa-scribd:before {
    content: "\f28a";
}
.fa-pause-circle:before {
    content: "\f28b";
}
.fa-pause-circle-o:before {
    content: "\f28c";
}
.fa-stop-circle:before {
    content: "\f28d";
}
.fa-stop-circle-o:before {
    content: "\f28e";
}
.fa-shopping-bag:before {
    content: "\f290";
}
.fa-shopping-basket:before {
    content: "\f291";
}
.fa-hashtag:before {
    content: "\f292";
}
.fa-bluetooth:before {
    content: "\f293";
}
.fa-bluetooth-b:before {
    content: "\f294";
}
.fa-percent:before {
    content: "\f295";
}
.fa-gitlab:before {
    content: "\f296";
}
.fa-wpbeginner:before {
    content: "\f297";
}
.fa-wpforms:before {
    content: "\f298";
}
.fa-envira:before {
    content: "\f299";
}
.fa-universal-access:before {
    content: "\f29a";
}
.fa-wheelchair-alt:before {
    content: "\f29b";
}
.fa-question-circle-o:before {
    content: "\f29c";
}
.fa-blind:before {
    content: "\f29d";
}
.fa-audio-description:before {
    content: "\f29e";
}
.fa-volume-control-phone:before {
    content: "\f2a0";
}
.fa-braille:before {
    content: "\f2a1";
}
.fa-assistive-listening-systems:before {
    content: "\f2a2";
}
.fa-asl-interpreting:before,
.fa-american-sign-language-interpreting:before {
    content: "\f2a3";
}
.fa-deafness:before,
.fa-hard-of-hearing:before,
.fa-deaf:before {
    content: "\f2a4";
}
.fa-glide:before {
    content: "\f2a5";
}
.fa-glide-g:before {
    content: "\f2a6";
}
.fa-signing:before,
.fa-sign-language:before {
    content: "\f2a7";
}
.fa-low-vision:before {
    content: "\f2a8";
}
.fa-viadeo:before {
    content: "\f2a9";
}
.fa-viadeo-square:before {
    content: "\f2aa";
}
.fa-snapchat:before {
    content: "\f2ab";
}
.fa-snapchat-ghost:before {
    content: "\f2ac";
}
.fa-snapchat-square:before {
    content: "\f2ad";
}
.fa-pied-piper:before {
    content: "\f2ae";
}
.fa-first-order:before {
    content: "\f2b0";
}
.fa-yoast:before {
    content: "\f2b1";
}
.fa-themeisle:before {
    content: "\f2b2";
}
.fa-google-plus-circle:before,
.fa-google-plus-official:before {
    content: "\f2b3";
}
.fa-fa:before,
.fa-font-awesome:before {
    content: "\f2b4";
}
.fa-handshake-o:before {
    content: "\f2b5";
}
.fa-envelope-open:before {
    content: "\f2b6";
}
.fa-envelope-open-o:before {
    content: "\f2b7";
}
.fa-linode:before {
    content: "\f2b8";
}
.fa-address-book:before {
    content: "\f2b9";
}
.fa-address-book-o:before {
    content: "\f2ba";
}
.fa-vcard:before,
.fa-address-card:before {
    content: "\f2bb";
}
.fa-vcard-o:before,
.fa-address-card-o:before {
    content: "\f2bc";
}
.fa-user-circle:before {
    content: "\f2bd";
}
.fa-user-circle-o:before {
    content: "\f2be";
}
.fa-user-o:before {
    content: "\f2c0";
}
.fa-id-badge:before {
    content: "\f2c1";
}
.fa-drivers-license:before,
.fa-id-card:before {
    content: "\f2c2";
}
.fa-drivers-license-o:before,
.fa-id-card-o:before {
    content: "\f2c3";
}
.fa-quora:before {
    content: "\f2c4";
}
.fa-free-code-camp:before {
    content: "\f2c5";
}
.fa-telegram:before {
    content: "\f2c6";
}
.fa-thermometer-4:before,
.fa-thermometer:before,
.fa-thermometer-full:before {
    content: "\f2c7";
}
.fa-thermometer-3:before,
.fa-thermometer-three-quarters:before {
    content: "\f2c8";
}
.fa-thermometer-2:before,
.fa-thermometer-half:before {
    content: "\f2c9";
}
.fa-thermometer-1:before,
.fa-thermometer-quarter:before {
    content: "\f2ca";
}
.fa-thermometer-0:before,
.fa-thermometer-empty:before {
    content: "\f2cb";
}
.fa-shower:before {
    content: "\f2cc";
}
.fa-bathtub:before,
.fa-s15:before,
.fa-bath:before {
    content: "\f2cd";
}
.fa-podcast:before {
    content: "\f2ce";
}
.fa-window-maximize:before {
    content: "\f2d0";
}
.fa-window-minimize:before {
    content: "\f2d1";
}
.fa-window-restore:before {
    content: "\f2d2";
}
.fa-times-rectangle:before,
.fa-window-close:before {
    content: "\f2d3";
}
.fa-times-rectangle-o:before,
.fa-window-close-o:before {
    content: "\f2d4";
}
.fa-bandcamp:before {
    content: "\f2d5";
}
.fa-grav:before {
    content: "\f2d6";
}
.fa-etsy:before {
    content: "\f2d7";
}
.fa-imdb:before {
    content: "\f2d8";
}
.fa-ravelry:before {
    content: "\f2d9";
}
.fa-eercast:before {
    content: "\f2da";
}
.fa-microchip:before {
    content: "\f2db";
}
.fa-snowflake-o:before {
    content: "\f2dc";
}
.fa-superpowers:before {
    content: "\f2dd";
}
.fa-wpexplorer:before {
    content: "\f2de";
}
.fa-meetup:before {
    content: "\f2e0";
}
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
}
.sr-only-focusable:active,
.sr-only-focusable:focus {
    position: static;
    width: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    clip: auto;
}assets/lib/font-awesome/css/v4-shims.min.css000064400000064116151327220410014763 0ustar00/*!
 * Font Awesome Free 5.15.3 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 */
.fa.fa-glass:before{content:"\f000"}.fa.fa-meetup{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-star-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-star-o:before{content:"\f005"}.fa.fa-close:before,.fa.fa-remove:before{content:"\f00d"}.fa.fa-gear:before{content:"\f013"}.fa.fa-trash-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-trash-o:before{content:"\f2ed"}.fa.fa-file-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-o:before{content:"\f15b"}.fa.fa-clock-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-clock-o:before{content:"\f017"}.fa.fa-arrow-circle-o-down{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-arrow-circle-o-down:before{content:"\f358"}.fa.fa-arrow-circle-o-up{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-arrow-circle-o-up:before{content:"\f35b"}.fa.fa-play-circle-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-play-circle-o:before{content:"\f144"}.fa.fa-repeat:before,.fa.fa-rotate-right:before{content:"\f01e"}.fa.fa-refresh:before{content:"\f021"}.fa.fa-list-alt{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-dedent:before{content:"\f03b"}.fa.fa-video-camera:before{content:"\f03d"}.fa.fa-picture-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-picture-o:before{content:"\f03e"}.fa.fa-photo{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-photo:before{content:"\f03e"}.fa.fa-image{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-image:before{content:"\f03e"}.fa.fa-pencil:before{content:"\f303"}.fa.fa-map-marker:before{content:"\f3c5"}.fa.fa-pencil-square-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-pencil-square-o:before{content:"\f044"}.fa.fa-share-square-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-share-square-o:before{content:"\f14d"}.fa.fa-check-square-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-check-square-o:before{content:"\f14a"}.fa.fa-arrows:before{content:"\f0b2"}.fa.fa-times-circle-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-times-circle-o:before{content:"\f057"}.fa.fa-check-circle-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-check-circle-o:before{content:"\f058"}.fa.fa-mail-forward:before{content:"\f064"}.fa.fa-expand:before{content:"\f424"}.fa.fa-compress:before{content:"\f422"}.fa.fa-eye,.fa.fa-eye-slash{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-warning:before{content:"\f071"}.fa.fa-calendar:before{content:"\f073"}.fa.fa-arrows-v:before{content:"\f338"}.fa.fa-arrows-h:before{content:"\f337"}.fa.fa-bar-chart{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-bar-chart:before{content:"\f080"}.fa.fa-bar-chart-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-bar-chart-o:before{content:"\f080"}.fa.fa-facebook-square,.fa.fa-twitter-square{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-gears:before{content:"\f085"}.fa.fa-thumbs-o-up{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-thumbs-o-up:before{content:"\f164"}.fa.fa-thumbs-o-down{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-thumbs-o-down:before{content:"\f165"}.fa.fa-heart-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-heart-o:before{content:"\f004"}.fa.fa-sign-out:before{content:"\f2f5"}.fa.fa-linkedin-square{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-linkedin-square:before{content:"\f08c"}.fa.fa-thumb-tack:before{content:"\f08d"}.fa.fa-external-link:before{content:"\f35d"}.fa.fa-sign-in:before{content:"\f2f6"}.fa.fa-github-square{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-lemon-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-lemon-o:before{content:"\f094"}.fa.fa-square-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-square-o:before{content:"\f0c8"}.fa.fa-bookmark-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-bookmark-o:before{content:"\f02e"}.fa.fa-facebook,.fa.fa-twitter{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-facebook:before{content:"\f39e"}.fa.fa-facebook-f{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-facebook-f:before{content:"\f39e"}.fa.fa-github{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-credit-card{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-feed:before{content:"\f09e"}.fa.fa-hdd-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hdd-o:before{content:"\f0a0"}.fa.fa-hand-o-right{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-o-right:before{content:"\f0a4"}.fa.fa-hand-o-left{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-o-left:before{content:"\f0a5"}.fa.fa-hand-o-up{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-o-up:before{content:"\f0a6"}.fa.fa-hand-o-down{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-o-down:before{content:"\f0a7"}.fa.fa-arrows-alt:before{content:"\f31e"}.fa.fa-group:before{content:"\f0c0"}.fa.fa-chain:before{content:"\f0c1"}.fa.fa-scissors:before{content:"\f0c4"}.fa.fa-files-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-files-o:before{content:"\f0c5"}.fa.fa-floppy-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-floppy-o:before{content:"\f0c7"}.fa.fa-navicon:before,.fa.fa-reorder:before{content:"\f0c9"}.fa.fa-google-plus,.fa.fa-google-plus-square,.fa.fa-pinterest,.fa.fa-pinterest-square{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-google-plus:before{content:"\f0d5"}.fa.fa-money{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-money:before{content:"\f3d1"}.fa.fa-unsorted:before{content:"\f0dc"}.fa.fa-sort-desc:before{content:"\f0dd"}.fa.fa-sort-asc:before{content:"\f0de"}.fa.fa-linkedin{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-linkedin:before{content:"\f0e1"}.fa.fa-rotate-left:before{content:"\f0e2"}.fa.fa-legal:before{content:"\f0e3"}.fa.fa-dashboard:before,.fa.fa-tachometer:before{content:"\f3fd"}.fa.fa-comment-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-comment-o:before{content:"\f075"}.fa.fa-comments-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-comments-o:before{content:"\f086"}.fa.fa-flash:before{content:"\f0e7"}.fa.fa-clipboard,.fa.fa-paste{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-paste:before{content:"\f328"}.fa.fa-lightbulb-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-lightbulb-o:before{content:"\f0eb"}.fa.fa-exchange:before{content:"\f362"}.fa.fa-cloud-download:before{content:"\f381"}.fa.fa-cloud-upload:before{content:"\f382"}.fa.fa-bell-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-bell-o:before{content:"\f0f3"}.fa.fa-cutlery:before{content:"\f2e7"}.fa.fa-file-text-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-text-o:before{content:"\f15c"}.fa.fa-building-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-building-o:before{content:"\f1ad"}.fa.fa-hospital-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hospital-o:before{content:"\f0f8"}.fa.fa-tablet:before{content:"\f3fa"}.fa.fa-mobile-phone:before,.fa.fa-mobile:before{content:"\f3cd"}.fa.fa-circle-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-circle-o:before{content:"\f111"}.fa.fa-mail-reply:before{content:"\f3e5"}.fa.fa-github-alt{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-folder-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-folder-o:before{content:"\f07b"}.fa.fa-folder-open-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-folder-open-o:before{content:"\f07c"}.fa.fa-smile-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-smile-o:before{content:"\f118"}.fa.fa-frown-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-frown-o:before{content:"\f119"}.fa.fa-meh-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-meh-o:before{content:"\f11a"}.fa.fa-keyboard-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-keyboard-o:before{content:"\f11c"}.fa.fa-flag-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-flag-o:before{content:"\f024"}.fa.fa-mail-reply-all:before{content:"\f122"}.fa.fa-star-half-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-star-half-o:before{content:"\f089"}.fa.fa-star-half-empty{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-star-half-empty:before{content:"\f089"}.fa.fa-star-half-full{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-star-half-full:before{content:"\f089"}.fa.fa-code-fork:before{content:"\f126"}.fa.fa-chain-broken:before{content:"\f127"}.fa.fa-shield:before{content:"\f3ed"}.fa.fa-calendar-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-calendar-o:before{content:"\f133"}.fa.fa-css3,.fa.fa-html5,.fa.fa-maxcdn{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-ticket:before{content:"\f3ff"}.fa.fa-minus-square-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-minus-square-o:before{content:"\f146"}.fa.fa-level-up:before{content:"\f3bf"}.fa.fa-level-down:before{content:"\f3be"}.fa.fa-pencil-square:before{content:"\f14b"}.fa.fa-external-link-square:before{content:"\f360"}.fa.fa-compass{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-caret-square-o-down{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-caret-square-o-down:before{content:"\f150"}.fa.fa-toggle-down{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-toggle-down:before{content:"\f150"}.fa.fa-caret-square-o-up{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-caret-square-o-up:before{content:"\f151"}.fa.fa-toggle-up{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-toggle-up:before{content:"\f151"}.fa.fa-caret-square-o-right{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-caret-square-o-right:before{content:"\f152"}.fa.fa-toggle-right{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-toggle-right:before{content:"\f152"}.fa.fa-eur:before,.fa.fa-euro:before{content:"\f153"}.fa.fa-gbp:before{content:"\f154"}.fa.fa-dollar:before,.fa.fa-usd:before{content:"\f155"}.fa.fa-inr:before,.fa.fa-rupee:before{content:"\f156"}.fa.fa-cny:before,.fa.fa-jpy:before,.fa.fa-rmb:before,.fa.fa-yen:before{content:"\f157"}.fa.fa-rouble:before,.fa.fa-rub:before,.fa.fa-ruble:before{content:"\f158"}.fa.fa-krw:before,.fa.fa-won:before{content:"\f159"}.fa.fa-bitcoin,.fa.fa-btc{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-bitcoin:before{content:"\f15a"}.fa.fa-file-text:before{content:"\f15c"}.fa.fa-sort-alpha-asc:before{content:"\f15d"}.fa.fa-sort-alpha-desc:before{content:"\f881"}.fa.fa-sort-amount-asc:before{content:"\f160"}.fa.fa-sort-amount-desc:before{content:"\f884"}.fa.fa-sort-numeric-asc:before{content:"\f162"}.fa.fa-sort-numeric-desc:before{content:"\f886"}.fa.fa-xing,.fa.fa-xing-square,.fa.fa-youtube,.fa.fa-youtube-play,.fa.fa-youtube-square{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-youtube-play:before{content:"\f167"}.fa.fa-adn,.fa.fa-bitbucket,.fa.fa-bitbucket-square,.fa.fa-dropbox,.fa.fa-flickr,.fa.fa-instagram,.fa.fa-stack-overflow{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-bitbucket-square:before{content:"\f171"}.fa.fa-tumblr,.fa.fa-tumblr-square{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-long-arrow-down:before{content:"\f309"}.fa.fa-long-arrow-up:before{content:"\f30c"}.fa.fa-long-arrow-left:before{content:"\f30a"}.fa.fa-long-arrow-right:before{content:"\f30b"}.fa.fa-android,.fa.fa-apple,.fa.fa-dribbble,.fa.fa-foursquare,.fa.fa-gittip,.fa.fa-gratipay,.fa.fa-linux,.fa.fa-skype,.fa.fa-trello,.fa.fa-windows{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-gittip:before{content:"\f184"}.fa.fa-sun-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-sun-o:before{content:"\f185"}.fa.fa-moon-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-moon-o:before{content:"\f186"}.fa.fa-pagelines,.fa.fa-renren,.fa.fa-stack-exchange,.fa.fa-vk,.fa.fa-weibo{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-arrow-circle-o-right{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-arrow-circle-o-right:before{content:"\f35a"}.fa.fa-arrow-circle-o-left{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-arrow-circle-o-left:before{content:"\f359"}.fa.fa-caret-square-o-left{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-caret-square-o-left:before{content:"\f191"}.fa.fa-toggle-left{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-toggle-left:before{content:"\f191"}.fa.fa-dot-circle-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-dot-circle-o:before{content:"\f192"}.fa.fa-vimeo-square{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-try:before,.fa.fa-turkish-lira:before{content:"\f195"}.fa.fa-plus-square-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-plus-square-o:before{content:"\f0fe"}.fa.fa-openid,.fa.fa-slack,.fa.fa-wordpress{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-bank:before,.fa.fa-institution:before{content:"\f19c"}.fa.fa-mortar-board:before{content:"\f19d"}.fa.fa-delicious,.fa.fa-digg,.fa.fa-drupal,.fa.fa-google,.fa.fa-joomla,.fa.fa-pied-piper-alt,.fa.fa-pied-piper-pp,.fa.fa-reddit,.fa.fa-reddit-square,.fa.fa-stumbleupon,.fa.fa-stumbleupon-circle,.fa.fa-yahoo{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-spoon:before{content:"\f2e5"}.fa.fa-behance,.fa.fa-behance-square,.fa.fa-steam,.fa.fa-steam-square{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-automobile:before{content:"\f1b9"}.fa.fa-envelope-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-envelope-o:before{content:"\f0e0"}.fa.fa-deviantart,.fa.fa-soundcloud,.fa.fa-spotify{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-file-pdf-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-pdf-o:before{content:"\f1c1"}.fa.fa-file-word-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-word-o:before{content:"\f1c2"}.fa.fa-file-excel-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-excel-o:before{content:"\f1c3"}.fa.fa-file-powerpoint-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-powerpoint-o:before{content:"\f1c4"}.fa.fa-file-image-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-image-o:before{content:"\f1c5"}.fa.fa-file-photo-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-photo-o:before{content:"\f1c5"}.fa.fa-file-picture-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-picture-o:before{content:"\f1c5"}.fa.fa-file-archive-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-archive-o:before{content:"\f1c6"}.fa.fa-file-zip-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-zip-o:before{content:"\f1c6"}.fa.fa-file-audio-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-audio-o:before{content:"\f1c7"}.fa.fa-file-sound-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-sound-o:before{content:"\f1c7"}.fa.fa-file-video-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-video-o:before{content:"\f1c8"}.fa.fa-file-movie-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-movie-o:before{content:"\f1c8"}.fa.fa-file-code-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-file-code-o:before{content:"\f1c9"}.fa.fa-codepen,.fa.fa-jsfiddle,.fa.fa-vine{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-life-bouy,.fa.fa-life-ring{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-life-bouy:before{content:"\f1cd"}.fa.fa-life-buoy{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-life-buoy:before{content:"\f1cd"}.fa.fa-life-saver{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-life-saver:before{content:"\f1cd"}.fa.fa-support{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-support:before{content:"\f1cd"}.fa.fa-circle-o-notch:before{content:"\f1ce"}.fa.fa-ra,.fa.fa-rebel{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-ra:before{content:"\f1d0"}.fa.fa-resistance{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-resistance:before{content:"\f1d0"}.fa.fa-empire,.fa.fa-ge{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-ge:before{content:"\f1d1"}.fa.fa-git,.fa.fa-git-square,.fa.fa-hacker-news,.fa.fa-y-combinator-square{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-y-combinator-square:before{content:"\f1d4"}.fa.fa-yc-square{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-yc-square:before{content:"\f1d4"}.fa.fa-qq,.fa.fa-tencent-weibo,.fa.fa-wechat,.fa.fa-weixin{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-wechat:before{content:"\f1d7"}.fa.fa-send:before{content:"\f1d8"}.fa.fa-paper-plane-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-paper-plane-o:before{content:"\f1d8"}.fa.fa-send-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-send-o:before{content:"\f1d8"}.fa.fa-circle-thin{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-circle-thin:before{content:"\f111"}.fa.fa-header:before{content:"\f1dc"}.fa.fa-sliders:before{content:"\f1de"}.fa.fa-futbol-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-futbol-o:before{content:"\f1e3"}.fa.fa-soccer-ball-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-soccer-ball-o:before{content:"\f1e3"}.fa.fa-slideshare,.fa.fa-twitch,.fa.fa-yelp{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-newspaper-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-newspaper-o:before{content:"\f1ea"}.fa.fa-cc-amex,.fa.fa-cc-discover,.fa.fa-cc-mastercard,.fa.fa-cc-paypal,.fa.fa-cc-stripe,.fa.fa-cc-visa,.fa.fa-google-wallet,.fa.fa-paypal{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-bell-slash-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-bell-slash-o:before{content:"\f1f6"}.fa.fa-trash:before{content:"\f2ed"}.fa.fa-copyright{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-eyedropper:before{content:"\f1fb"}.fa.fa-area-chart:before{content:"\f1fe"}.fa.fa-pie-chart:before{content:"\f200"}.fa.fa-line-chart:before{content:"\f201"}.fa.fa-angellist,.fa.fa-ioxhost,.fa.fa-lastfm,.fa.fa-lastfm-square{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-cc{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-cc:before{content:"\f20a"}.fa.fa-ils:before,.fa.fa-shekel:before,.fa.fa-sheqel:before{content:"\f20b"}.fa.fa-meanpath{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-meanpath:before{content:"\f2b4"}.fa.fa-buysellads,.fa.fa-connectdevelop,.fa.fa-dashcube,.fa.fa-forumbee,.fa.fa-leanpub,.fa.fa-sellsy,.fa.fa-shirtsinbulk,.fa.fa-simplybuilt,.fa.fa-skyatlas{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-diamond{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-diamond:before{content:"\f3a5"}.fa.fa-intersex:before{content:"\f224"}.fa.fa-facebook-official{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-facebook-official:before{content:"\f09a"}.fa.fa-pinterest-p,.fa.fa-whatsapp{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-hotel:before{content:"\f236"}.fa.fa-medium,.fa.fa-viacoin,.fa.fa-y-combinator,.fa.fa-yc{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-yc:before{content:"\f23b"}.fa.fa-expeditedssl,.fa.fa-opencart,.fa.fa-optin-monster{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-battery-4:before,.fa.fa-battery:before{content:"\f240"}.fa.fa-battery-3:before{content:"\f241"}.fa.fa-battery-2:before{content:"\f242"}.fa.fa-battery-1:before{content:"\f243"}.fa.fa-battery-0:before{content:"\f244"}.fa.fa-object-group,.fa.fa-object-ungroup,.fa.fa-sticky-note-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-sticky-note-o:before{content:"\f249"}.fa.fa-cc-diners-club,.fa.fa-cc-jcb{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-clone,.fa.fa-hourglass-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hourglass-o:before{content:"\f254"}.fa.fa-hourglass-1:before{content:"\f251"}.fa.fa-hourglass-2:before{content:"\f252"}.fa.fa-hourglass-3:before{content:"\f253"}.fa.fa-hand-rock-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-rock-o:before{content:"\f255"}.fa.fa-hand-grab-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-grab-o:before{content:"\f255"}.fa.fa-hand-paper-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-paper-o:before{content:"\f256"}.fa.fa-hand-stop-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-stop-o:before{content:"\f256"}.fa.fa-hand-scissors-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-scissors-o:before{content:"\f257"}.fa.fa-hand-lizard-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-lizard-o:before{content:"\f258"}.fa.fa-hand-spock-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-spock-o:before{content:"\f259"}.fa.fa-hand-pointer-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-pointer-o:before{content:"\f25a"}.fa.fa-hand-peace-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-hand-peace-o:before{content:"\f25b"}.fa.fa-registered{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-chrome,.fa.fa-creative-commons,.fa.fa-firefox,.fa.fa-get-pocket,.fa.fa-gg,.fa.fa-gg-circle,.fa.fa-internet-explorer,.fa.fa-odnoklassniki,.fa.fa-odnoklassniki-square,.fa.fa-opera,.fa.fa-safari,.fa.fa-tripadvisor,.fa.fa-wikipedia-w{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-television:before{content:"\f26c"}.fa.fa-500px,.fa.fa-amazon,.fa.fa-contao{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-calendar-plus-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-calendar-plus-o:before{content:"\f271"}.fa.fa-calendar-minus-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-calendar-minus-o:before{content:"\f272"}.fa.fa-calendar-times-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-calendar-times-o:before{content:"\f273"}.fa.fa-calendar-check-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-calendar-check-o:before{content:"\f274"}.fa.fa-map-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-map-o:before{content:"\f279"}.fa.fa-commenting:before{content:"\f4ad"}.fa.fa-commenting-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-commenting-o:before{content:"\f4ad"}.fa.fa-houzz,.fa.fa-vimeo{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-vimeo:before{content:"\f27d"}.fa.fa-black-tie,.fa.fa-edge,.fa.fa-fonticons,.fa.fa-reddit-alien{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-credit-card-alt:before{content:"\f09d"}.fa.fa-codiepie,.fa.fa-fort-awesome,.fa.fa-mixcloud,.fa.fa-modx,.fa.fa-product-hunt,.fa.fa-scribd,.fa.fa-usb{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-pause-circle-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-pause-circle-o:before{content:"\f28b"}.fa.fa-stop-circle-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-stop-circle-o:before{content:"\f28d"}.fa.fa-bluetooth,.fa.fa-bluetooth-b,.fa.fa-envira,.fa.fa-gitlab,.fa.fa-wheelchair-alt,.fa.fa-wpbeginner,.fa.fa-wpforms{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-wheelchair-alt:before{content:"\f368"}.fa.fa-question-circle-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-question-circle-o:before{content:"\f059"}.fa.fa-volume-control-phone:before{content:"\f2a0"}.fa.fa-asl-interpreting:before{content:"\f2a3"}.fa.fa-deafness:before,.fa.fa-hard-of-hearing:before{content:"\f2a4"}.fa.fa-glide,.fa.fa-glide-g{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-signing:before{content:"\f2a7"}.fa.fa-first-order,.fa.fa-google-plus-official,.fa.fa-pied-piper,.fa.fa-snapchat,.fa.fa-snapchat-ghost,.fa.fa-snapchat-square,.fa.fa-themeisle,.fa.fa-viadeo,.fa.fa-viadeo-square,.fa.fa-yoast{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-google-plus-official:before{content:"\f2b3"}.fa.fa-google-plus-circle{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-google-plus-circle:before{content:"\f2b3"}.fa.fa-fa,.fa.fa-font-awesome{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-fa:before{content:"\f2b4"}.fa.fa-handshake-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-handshake-o:before{content:"\f2b5"}.fa.fa-envelope-open-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-envelope-open-o:before{content:"\f2b6"}.fa.fa-linode{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-address-book-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-address-book-o:before{content:"\f2b9"}.fa.fa-vcard:before{content:"\f2bb"}.fa.fa-address-card-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-address-card-o:before{content:"\f2bb"}.fa.fa-vcard-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-vcard-o:before{content:"\f2bb"}.fa.fa-user-circle-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-user-circle-o:before{content:"\f2bd"}.fa.fa-user-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-user-o:before{content:"\f007"}.fa.fa-id-badge{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-drivers-license:before{content:"\f2c2"}.fa.fa-id-card-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-id-card-o:before{content:"\f2c2"}.fa.fa-drivers-license-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-drivers-license-o:before{content:"\f2c2"}.fa.fa-free-code-camp,.fa.fa-quora,.fa.fa-telegram{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-thermometer-4:before,.fa.fa-thermometer:before{content:"\f2c7"}.fa.fa-thermometer-3:before{content:"\f2c8"}.fa.fa-thermometer-2:before{content:"\f2c9"}.fa.fa-thermometer-1:before{content:"\f2ca"}.fa.fa-thermometer-0:before{content:"\f2cb"}.fa.fa-bathtub:before,.fa.fa-s15:before{content:"\f2cd"}.fa.fa-window-maximize,.fa.fa-window-restore{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-times-rectangle:before{content:"\f410"}.fa.fa-window-close-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-window-close-o:before{content:"\f410"}.fa.fa-times-rectangle-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-times-rectangle-o:before{content:"\f410"}.fa.fa-bandcamp,.fa.fa-eercast,.fa.fa-etsy,.fa.fa-grav,.fa.fa-imdb,.fa.fa-ravelry{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-eercast:before{content:"\f2da"}.fa.fa-snowflake-o{font-family:"Font Awesome 5 Free";font-weight:400}.fa.fa-snowflake-o:before{content:"\f2dc"}.fa.fa-superpowers,.fa.fa-wpexplorer{font-family:"Font Awesome 5 Brands";font-weight:400}.fa.fa-cab:before{content:"\f1ba"}assets/lib/font-awesome/css/svg-with-js.min.css000064400000014327151327220410015472 0ustar00/*!
 * Font Awesome Free 5.15.3 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 */
.svg-inline--fa,svg:not(:root).svg-inline--fa{overflow:visible}.svg-inline--fa{display:inline-block;font-size:inherit;height:1em;vertical-align:-.125em}.svg-inline--fa.fa-lg{vertical-align:-.225em}.svg-inline--fa.fa-w-1{width:.0625em}.svg-inline--fa.fa-w-2{width:.125em}.svg-inline--fa.fa-w-3{width:.1875em}.svg-inline--fa.fa-w-4{width:.25em}.svg-inline--fa.fa-w-5{width:.3125em}.svg-inline--fa.fa-w-6{width:.375em}.svg-inline--fa.fa-w-7{width:.4375em}.svg-inline--fa.fa-w-8{width:.5em}.svg-inline--fa.fa-w-9{width:.5625em}.svg-inline--fa.fa-w-10{width:.625em}.svg-inline--fa.fa-w-11{width:.6875em}.svg-inline--fa.fa-w-12{width:.75em}.svg-inline--fa.fa-w-13{width:.8125em}.svg-inline--fa.fa-w-14{width:.875em}.svg-inline--fa.fa-w-15{width:.9375em}.svg-inline--fa.fa-w-16{width:1em}.svg-inline--fa.fa-w-17{width:1.0625em}.svg-inline--fa.fa-w-18{width:1.125em}.svg-inline--fa.fa-w-19{width:1.1875em}.svg-inline--fa.fa-w-20{width:1.25em}.svg-inline--fa.fa-pull-left{margin-right:.3em;width:auto}.svg-inline--fa.fa-pull-right{margin-left:.3em;width:auto}.svg-inline--fa.fa-border{height:1.5em}.svg-inline--fa.fa-li{width:2em}.svg-inline--fa.fa-fw{width:1.25em}.fa-layers svg.svg-inline--fa{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0}.fa-layers{display:inline-block;height:1em;position:relative;text-align:center;vertical-align:-.125em;width:1em}.fa-layers svg.svg-inline--fa{-webkit-transform-origin:center center;transform-origin:center center}.fa-layers-counter,.fa-layers-text{display:inline-block;position:absolute;text-align:center}.fa-layers-text{left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-transform-origin:center center;transform-origin:center center}.fa-layers-counter{background-color:#ff253a;border-radius:1em;-webkit-box-sizing:border-box;box-sizing:border-box;color:#fff;height:1.5em;line-height:1;max-width:5em;min-width:1.5em;overflow:hidden;padding:.25em;right:0;text-overflow:ellipsis;top:0;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:top right;transform-origin:top right}.fa-layers-bottom-right{bottom:0;right:0;top:auto;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:bottom right;transform-origin:bottom right}.fa-layers-bottom-left{bottom:0;left:0;right:auto;top:auto;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:bottom left;transform-origin:bottom left}.fa-layers-top-right{right:0;top:0;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:top right;transform-origin:top right}.fa-layers-top-left{left:0;right:auto;top:0;-webkit-transform:scale(.25);transform:scale(.25);-webkit-transform-origin:top left;transform-origin:top left}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:.08em solid #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.fab.fa-pull-left,.fal.fa-pull-left,.far.fa-pull-left,.fas.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.fab.fa-pull-right,.fal.fa-pull-right,.far.fa-pull-right,.fas.fa-pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.fa-pulse{-webkit-animation:fa-spin 1s steps(8) infinite;animation:fa-spin 1s steps(8) infinite}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-webkit-transform:scaleY(-1);transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical,.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1);transform:scale(-1)}:root .fa-flip-both,:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{-webkit-filter:none;filter:none}.fa-stack{display:inline-block;height:2em;position:relative;width:2.5em}.fa-stack-1x,.fa-stack-2x{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0}.svg-inline--fa.fa-stack-1x{height:1em;width:1.25em}.svg-inline--fa.fa-stack-2x{height:2em;width:2.5em}.fa-inverse{color:#fff}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.svg-inline--fa .fa-primary{fill:var(--fa-primary-color,currentColor);opacity:1;opacity:var(--fa-primary-opacity,1)}.svg-inline--fa .fa-secondary{fill:var(--fa-secondary-color,currentColor)}.svg-inline--fa .fa-secondary,.svg-inline--fa.fa-swap-opacity .fa-primary{opacity:.4;opacity:var(--fa-secondary-opacity,.4)}.svg-inline--fa.fa-swap-opacity .fa-secondary{opacity:1;opacity:var(--fa-primary-opacity,1)}.svg-inline--fa mask .fa-primary,.svg-inline--fa mask .fa-secondary{fill:#000}.fad.fa-inverse{color:#fff}assets/lib/font-awesome/css/font-awesome.min.css000064400000074427151327220410015723 0ustar00/*!
 *  Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome
 *  License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
 */@font-face{font-family:'FontAwesome';src:url('../fonts/fontawesome-webfont.eot?v=4.7.0');src:url('../fonts/fontawesome-webfont.eot?#iefix&v=4.7.0') format('embedded-opentype'),url('../fonts/fontawesome-webfont.woff2?v=4.7.0') format('woff2'),url('../fonts/fontawesome-webfont.woff?v=4.7.0') format('woff'),url('../fonts/fontawesome-webfont.ttf?v=4.7.0') format('truetype'),url('../fonts/fontawesome-webfont.svg?v=4.7.0#fontawesomeregular') format('svg');font-weight:normal;font-style:normal}.fa{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fa-lg{font-size:1.33333333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.28571429em;text-align:center}.fa-ul{padding-left:0;margin-left:2.14285714em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.14285714em;width:2.14285714em;top:.14285714em;text-align:center}.fa-li.fa-lg{left:-1.85714286em}.fa-border{padding:.2em .25em .15em;border:solid .08em #eee;border-radius:.1em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left{margin-right:.3em}.fa.fa-pull-right{margin-left:.3em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left{margin-right:.3em}.fa.pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.fa-pulse{-webkit-animation:fa-spin 1s infinite steps(8);animation:fa-spin 1s infinite steps(8)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scale(-1, 1);-ms-transform:scale(-1, 1);transform:scale(-1, 1)}.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";-webkit-transform:scale(1, -1);-ms-transform:scale(1, -1);transform:scale(1, -1)}:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-flip-horizontal,:root .fa-flip-vertical{filter:none}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:"\f000"}.fa-music:before{content:"\f001"}.fa-search:before{content:"\f002"}.fa-envelope-o:before{content:"\f003"}.fa-heart:before{content:"\f004"}.fa-star:before{content:"\f005"}.fa-star-o:before{content:"\f006"}.fa-user:before{content:"\f007"}.fa-film:before{content:"\f008"}.fa-th-large:before{content:"\f009"}.fa-th:before{content:"\f00a"}.fa-th-list:before{content:"\f00b"}.fa-check:before{content:"\f00c"}.fa-remove:before,.fa-close:before,.fa-times:before{content:"\f00d"}.fa-search-plus:before{content:"\f00e"}.fa-search-minus:before{content:"\f010"}.fa-power-off:before{content:"\f011"}.fa-signal:before{content:"\f012"}.fa-gear:before,.fa-cog:before{content:"\f013"}.fa-trash-o:before{content:"\f014"}.fa-home:before{content:"\f015"}.fa-file-o:before{content:"\f016"}.fa-clock-o:before{content:"\f017"}.fa-road:before{content:"\f018"}.fa-download:before{content:"\f019"}.fa-arrow-circle-o-down:before{content:"\f01a"}.fa-arrow-circle-o-up:before{content:"\f01b"}.fa-inbox:before{content:"\f01c"}.fa-play-circle-o:before{content:"\f01d"}.fa-rotate-right:before,.fa-repeat:before{content:"\f01e"}.fa-refresh:before{content:"\f021"}.fa-list-alt:before{content:"\f022"}.fa-lock:before{content:"\f023"}.fa-flag:before{content:"\f024"}.fa-headphones:before{content:"\f025"}.fa-volume-off:before{content:"\f026"}.fa-volume-down:before{content:"\f027"}.fa-volume-up:before{content:"\f028"}.fa-qrcode:before{content:"\f029"}.fa-barcode:before{content:"\f02a"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-print:before{content:"\f02f"}.fa-camera:before{content:"\f030"}.fa-font:before{content:"\f031"}.fa-bold:before{content:"\f032"}.fa-italic:before{content:"\f033"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-align-left:before{content:"\f036"}.fa-align-center:before{content:"\f037"}.fa-align-right:before{content:"\f038"}.fa-align-justify:before{content:"\f039"}.fa-list:before{content:"\f03a"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-indent:before{content:"\f03c"}.fa-video-camera:before{content:"\f03d"}.fa-photo:before,.fa-image:before,.fa-picture-o:before{content:"\f03e"}.fa-pencil:before{content:"\f040"}.fa-map-marker:before{content:"\f041"}.fa-adjust:before{content:"\f042"}.fa-tint:before{content:"\f043"}.fa-edit:before,.fa-pencil-square-o:before{content:"\f044"}.fa-share-square-o:before{content:"\f045"}.fa-check-square-o:before{content:"\f046"}.fa-arrows:before{content:"\f047"}.fa-step-backward:before{content:"\f048"}.fa-fast-backward:before{content:"\f049"}.fa-backward:before{content:"\f04a"}.fa-play:before{content:"\f04b"}.fa-pause:before{content:"\f04c"}.fa-stop:before{content:"\f04d"}.fa-forward:before{content:"\f04e"}.fa-fast-forward:before{content:"\f050"}.fa-step-forward:before{content:"\f051"}.fa-eject:before{content:"\f052"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-plus-circle:before{content:"\f055"}.fa-minus-circle:before{content:"\f056"}.fa-times-circle:before{content:"\f057"}.fa-check-circle:before{content:"\f058"}.fa-question-circle:before{content:"\f059"}.fa-info-circle:before{content:"\f05a"}.fa-crosshairs:before{content:"\f05b"}.fa-times-circle-o:before{content:"\f05c"}.fa-check-circle-o:before{content:"\f05d"}.fa-ban:before{content:"\f05e"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrow-down:before{content:"\f063"}.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-expand:before{content:"\f065"}.fa-compress:before{content:"\f066"}.fa-plus:before{content:"\f067"}.fa-minus:before{content:"\f068"}.fa-asterisk:before{content:"\f069"}.fa-exclamation-circle:before{content:"\f06a"}.fa-gift:before{content:"\f06b"}.fa-leaf:before{content:"\f06c"}.fa-fire:before{content:"\f06d"}.fa-eye:before{content:"\f06e"}.fa-eye-slash:before{content:"\f070"}.fa-warning:before,.fa-exclamation-triangle:before{content:"\f071"}.fa-plane:before{content:"\f072"}.fa-calendar:before{content:"\f073"}.fa-random:before{content:"\f074"}.fa-comment:before{content:"\f075"}.fa-magnet:before{content:"\f076"}.fa-chevron-up:before{content:"\f077"}.fa-chevron-down:before{content:"\f078"}.fa-retweet:before{content:"\f079"}.fa-shopping-cart:before{content:"\f07a"}.fa-folder:before{content:"\f07b"}.fa-folder-open:before{content:"\f07c"}.fa-arrows-v:before{content:"\f07d"}.fa-arrows-h:before{content:"\f07e"}.fa-bar-chart-o:before,.fa-bar-chart:before{content:"\f080"}.fa-twitter-square:before{content:"\f081"}.fa-facebook-square:before{content:"\f082"}.fa-camera-retro:before{content:"\f083"}.fa-key:before{content:"\f084"}.fa-gears:before,.fa-cogs:before{content:"\f085"}.fa-comments:before{content:"\f086"}.fa-thumbs-o-up:before{content:"\f087"}.fa-thumbs-o-down:before{content:"\f088"}.fa-star-half:before{content:"\f089"}.fa-heart-o:before{content:"\f08a"}.fa-sign-out:before{content:"\f08b"}.fa-linkedin-square:before{content:"\f08c"}.fa-thumb-tack:before{content:"\f08d"}.fa-external-link:before{content:"\f08e"}.fa-sign-in:before{content:"\f090"}.fa-trophy:before{content:"\f091"}.fa-github-square:before{content:"\f092"}.fa-upload:before{content:"\f093"}.fa-lemon-o:before{content:"\f094"}.fa-phone:before{content:"\f095"}.fa-square-o:before{content:"\f096"}.fa-bookmark-o:before{content:"\f097"}.fa-phone-square:before{content:"\f098"}.fa-twitter:before{content:"\f099"}.fa-facebook-f:before,.fa-facebook:before{content:"\f09a"}.fa-github:before{content:"\f09b"}.fa-unlock:before{content:"\f09c"}.fa-credit-card:before{content:"\f09d"}.fa-feed:before,.fa-rss:before{content:"\f09e"}.fa-hdd-o:before{content:"\f0a0"}.fa-bullhorn:before{content:"\f0a1"}.fa-bell:before{content:"\f0f3"}.fa-certificate:before{content:"\f0a3"}.fa-hand-o-right:before{content:"\f0a4"}.fa-hand-o-left:before{content:"\f0a5"}.fa-hand-o-up:before{content:"\f0a6"}.fa-hand-o-down:before{content:"\f0a7"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-globe:before{content:"\f0ac"}.fa-wrench:before{content:"\f0ad"}.fa-tasks:before{content:"\f0ae"}.fa-filter:before{content:"\f0b0"}.fa-briefcase:before{content:"\f0b1"}.fa-arrows-alt:before{content:"\f0b2"}.fa-group:before,.fa-users:before{content:"\f0c0"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-cloud:before{content:"\f0c2"}.fa-flask:before{content:"\f0c3"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-copy:before,.fa-files-o:before{content:"\f0c5"}.fa-paperclip:before{content:"\f0c6"}.fa-save:before,.fa-floppy-o:before{content:"\f0c7"}.fa-square:before{content:"\f0c8"}.fa-navicon:before,.fa-reorder:before,.fa-bars:before{content:"\f0c9"}.fa-list-ul:before{content:"\f0ca"}.fa-list-ol:before{content:"\f0cb"}.fa-strikethrough:before{content:"\f0cc"}.fa-underline:before{content:"\f0cd"}.fa-table:before{content:"\f0ce"}.fa-magic:before{content:"\f0d0"}.fa-truck:before{content:"\f0d1"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-square:before{content:"\f0d3"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-plus:before{content:"\f0d5"}.fa-money:before{content:"\f0d6"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-up:before{content:"\f0d8"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-columns:before{content:"\f0db"}.fa-unsorted:before,.fa-sort:before{content:"\f0dc"}.fa-sort-down:before,.fa-sort-desc:before{content:"\f0dd"}.fa-sort-up:before,.fa-sort-asc:before{content:"\f0de"}.fa-envelope:before{content:"\f0e0"}.fa-linkedin:before{content:"\f0e1"}.fa-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-legal:before,.fa-gavel:before{content:"\f0e3"}.fa-dashboard:before,.fa-tachometer:before{content:"\f0e4"}.fa-comment-o:before{content:"\f0e5"}.fa-comments-o:before{content:"\f0e6"}.fa-flash:before,.fa-bolt:before{content:"\f0e7"}.fa-sitemap:before{content:"\f0e8"}.fa-umbrella:before{content:"\f0e9"}.fa-paste:before,.fa-clipboard:before{content:"\f0ea"}.fa-lightbulb-o:before{content:"\f0eb"}.fa-exchange:before{content:"\f0ec"}.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-upload:before{content:"\f0ee"}.fa-user-md:before{content:"\f0f0"}.fa-stethoscope:before{content:"\f0f1"}.fa-suitcase:before{content:"\f0f2"}.fa-bell-o:before{content:"\f0a2"}.fa-coffee:before{content:"\f0f4"}.fa-cutlery:before{content:"\f0f5"}.fa-file-text-o:before{content:"\f0f6"}.fa-building-o:before{content:"\f0f7"}.fa-hospital-o:before{content:"\f0f8"}.fa-ambulance:before{content:"\f0f9"}.fa-medkit:before{content:"\f0fa"}.fa-fighter-jet:before{content:"\f0fb"}.fa-beer:before{content:"\f0fc"}.fa-h-square:before{content:"\f0fd"}.fa-plus-square:before{content:"\f0fe"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angle-down:before{content:"\f107"}.fa-desktop:before{content:"\f108"}.fa-laptop:before{content:"\f109"}.fa-tablet:before{content:"\f10a"}.fa-mobile-phone:before,.fa-mobile:before{content:"\f10b"}.fa-circle-o:before{content:"\f10c"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-spinner:before{content:"\f110"}.fa-circle:before{content:"\f111"}.fa-mail-reply:before,.fa-reply:before{content:"\f112"}.fa-github-alt:before{content:"\f113"}.fa-folder-o:before{content:"\f114"}.fa-folder-open-o:before{content:"\f115"}.fa-smile-o:before{content:"\f118"}.fa-frown-o:before{content:"\f119"}.fa-meh-o:before{content:"\f11a"}.fa-gamepad:before{content:"\f11b"}.fa-keyboard-o:before{content:"\f11c"}.fa-flag-o:before{content:"\f11d"}.fa-flag-checkered:before{content:"\f11e"}.fa-terminal:before{content:"\f120"}.fa-code:before{content:"\f121"}.fa-mail-reply-all:before,.fa-reply-all:before{content:"\f122"}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:"\f123"}.fa-location-arrow:before{content:"\f124"}.fa-crop:before{content:"\f125"}.fa-code-fork:before{content:"\f126"}.fa-unlink:before,.fa-chain-broken:before{content:"\f127"}.fa-question:before{content:"\f128"}.fa-info:before{content:"\f129"}.fa-exclamation:before{content:"\f12a"}.fa-superscript:before{content:"\f12b"}.fa-subscript:before{content:"\f12c"}.fa-eraser:before{content:"\f12d"}.fa-puzzle-piece:before{content:"\f12e"}.fa-microphone:before{content:"\f130"}.fa-microphone-slash:before{content:"\f131"}.fa-shield:before{content:"\f132"}.fa-calendar-o:before{content:"\f133"}.fa-fire-extinguisher:before{content:"\f134"}.fa-rocket:before{content:"\f135"}.fa-maxcdn:before{content:"\f136"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-html5:before{content:"\f13b"}.fa-css3:before{content:"\f13c"}.fa-anchor:before{content:"\f13d"}.fa-unlock-alt:before{content:"\f13e"}.fa-bullseye:before{content:"\f140"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-rss-square:before{content:"\f143"}.fa-play-circle:before{content:"\f144"}.fa-ticket:before{content:"\f145"}.fa-minus-square:before{content:"\f146"}.fa-minus-square-o:before{content:"\f147"}.fa-level-up:before{content:"\f148"}.fa-level-down:before{content:"\f149"}.fa-check-square:before{content:"\f14a"}.fa-pencil-square:before{content:"\f14b"}.fa-external-link-square:before{content:"\f14c"}.fa-share-square:before{content:"\f14d"}.fa-compass:before{content:"\f14e"}.fa-toggle-down:before,.fa-caret-square-o-down:before{content:"\f150"}.fa-toggle-up:before,.fa-caret-square-o-up:before{content:"\f151"}.fa-toggle-right:before,.fa-caret-square-o-right:before{content:"\f152"}.fa-euro:before,.fa-eur:before{content:"\f153"}.fa-gbp:before{content:"\f154"}.fa-dollar:before,.fa-usd:before{content:"\f155"}.fa-rupee:before,.fa-inr:before{content:"\f156"}.fa-cny:before,.fa-rmb:before,.fa-yen:before,.fa-jpy:before{content:"\f157"}.fa-ruble:before,.fa-rouble:before,.fa-rub:before{content:"\f158"}.fa-won:before,.fa-krw:before{content:"\f159"}.fa-bitcoin:before,.fa-btc:before{content:"\f15a"}.fa-file:before{content:"\f15b"}.fa-file-text:before{content:"\f15c"}.fa-sort-alpha-asc:before{content:"\f15d"}.fa-sort-alpha-desc:before{content:"\f15e"}.fa-sort-amount-asc:before{content:"\f160"}.fa-sort-amount-desc:before{content:"\f161"}.fa-sort-numeric-asc:before{content:"\f162"}.fa-sort-numeric-desc:before{content:"\f163"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbs-down:before{content:"\f165"}.fa-youtube-square:before{content:"\f166"}.fa-youtube:before{content:"\f167"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-youtube-play:before{content:"\f16a"}.fa-dropbox:before{content:"\f16b"}.fa-stack-overflow:before{content:"\f16c"}.fa-instagram:before{content:"\f16d"}.fa-flickr:before{content:"\f16e"}.fa-adn:before{content:"\f170"}.fa-bitbucket:before{content:"\f171"}.fa-bitbucket-square:before{content:"\f172"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-long-arrow-down:before{content:"\f175"}.fa-long-arrow-up:before{content:"\f176"}.fa-long-arrow-left:before{content:"\f177"}.fa-long-arrow-right:before{content:"\f178"}.fa-apple:before{content:"\f179"}.fa-windows:before{content:"\f17a"}.fa-android:before{content:"\f17b"}.fa-linux:before{content:"\f17c"}.fa-dribbble:before{content:"\f17d"}.fa-skype:before{content:"\f17e"}.fa-foursquare:before{content:"\f180"}.fa-trello:before{content:"\f181"}.fa-female:before{content:"\f182"}.fa-male:before{content:"\f183"}.fa-gittip:before,.fa-gratipay:before{content:"\f184"}.fa-sun-o:before{content:"\f185"}.fa-moon-o:before{content:"\f186"}.fa-archive:before{content:"\f187"}.fa-bug:before{content:"\f188"}.fa-vk:before{content:"\f189"}.fa-weibo:before{content:"\f18a"}.fa-renren:before{content:"\f18b"}.fa-pagelines:before{content:"\f18c"}.fa-stack-exchange:before{content:"\f18d"}.fa-arrow-circle-o-right:before{content:"\f18e"}.fa-arrow-circle-o-left:before{content:"\f190"}.fa-toggle-left:before,.fa-caret-square-o-left:before{content:"\f191"}.fa-dot-circle-o:before{content:"\f192"}.fa-wheelchair:before{content:"\f193"}.fa-vimeo-square:before{content:"\f194"}.fa-turkish-lira:before,.fa-try:before{content:"\f195"}.fa-plus-square-o:before{content:"\f196"}.fa-space-shuttle:before{content:"\f197"}.fa-slack:before{content:"\f198"}.fa-envelope-square:before{content:"\f199"}.fa-wordpress:before{content:"\f19a"}.fa-openid:before{content:"\f19b"}.fa-institution:before,.fa-bank:before,.fa-university:before{content:"\f19c"}.fa-mortar-board:before,.fa-graduation-cap:before{content:"\f19d"}.fa-yahoo:before{content:"\f19e"}.fa-google:before{content:"\f1a0"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-square:before{content:"\f1a2"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-stumbleupon:before{content:"\f1a4"}.fa-delicious:before{content:"\f1a5"}.fa-digg:before{content:"\f1a6"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-drupal:before{content:"\f1a9"}.fa-joomla:before{content:"\f1aa"}.fa-language:before{content:"\f1ab"}.fa-fax:before{content:"\f1ac"}.fa-building:before{content:"\f1ad"}.fa-child:before{content:"\f1ae"}.fa-paw:before{content:"\f1b0"}.fa-spoon:before{content:"\f1b1"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-recycle:before{content:"\f1b8"}.fa-automobile:before,.fa-car:before{content:"\f1b9"}.fa-cab:before,.fa-taxi:before{content:"\f1ba"}.fa-tree:before{content:"\f1bb"}.fa-spotify:before{content:"\f1bc"}.fa-deviantart:before{content:"\f1bd"}.fa-soundcloud:before{content:"\f1be"}.fa-database:before{content:"\f1c0"}.fa-file-pdf-o:before{content:"\f1c1"}.fa-file-word-o:before{content:"\f1c2"}.fa-file-excel-o:before{content:"\f1c3"}.fa-file-powerpoint-o:before{content:"\f1c4"}.fa-file-photo-o:before,.fa-file-picture-o:before,.fa-file-image-o:before{content:"\f1c5"}.fa-file-zip-o:before,.fa-file-archive-o:before{content:"\f1c6"}.fa-file-sound-o:before,.fa-file-audio-o:before{content:"\f1c7"}.fa-file-movie-o:before,.fa-file-video-o:before{content:"\f1c8"}.fa-file-code-o:before{content:"\f1c9"}.fa-vine:before{content:"\f1ca"}.fa-codepen:before{content:"\f1cb"}.fa-jsfiddle:before{content:"\f1cc"}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-saver:before,.fa-support:before,.fa-life-ring:before{content:"\f1cd"}.fa-circle-o-notch:before{content:"\f1ce"}.fa-ra:before,.fa-resistance:before,.fa-rebel:before{content:"\f1d0"}.fa-ge:before,.fa-empire:before{content:"\f1d1"}.fa-git-square:before{content:"\f1d2"}.fa-git:before{content:"\f1d3"}.fa-y-combinator-square:before,.fa-yc-square:before,.fa-hacker-news:before{content:"\f1d4"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-qq:before{content:"\f1d6"}.fa-wechat:before,.fa-weixin:before{content:"\f1d7"}.fa-send:before,.fa-paper-plane:before{content:"\f1d8"}.fa-send-o:before,.fa-paper-plane-o:before{content:"\f1d9"}.fa-history:before{content:"\f1da"}.fa-circle-thin:before{content:"\f1db"}.fa-header:before{content:"\f1dc"}.fa-paragraph:before{content:"\f1dd"}.fa-sliders:before{content:"\f1de"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-bomb:before{content:"\f1e2"}.fa-soccer-ball-o:before,.fa-futbol-o:before{content:"\f1e3"}.fa-tty:before{content:"\f1e4"}.fa-binoculars:before{content:"\f1e5"}.fa-plug:before{content:"\f1e6"}.fa-slideshare:before{content:"\f1e7"}.fa-twitch:before{content:"\f1e8"}.fa-yelp:before{content:"\f1e9"}.fa-newspaper-o:before{content:"\f1ea"}.fa-wifi:before{content:"\f1eb"}.fa-calculator:before{content:"\f1ec"}.fa-paypal:before{content:"\f1ed"}.fa-google-wallet:before{content:"\f1ee"}.fa-cc-visa:before{content:"\f1f0"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-bell-slash:before{content:"\f1f6"}.fa-bell-slash-o:before{content:"\f1f7"}.fa-trash:before{content:"\f1f8"}.fa-copyright:before{content:"\f1f9"}.fa-at:before{content:"\f1fa"}.fa-eyedropper:before{content:"\f1fb"}.fa-paint-brush:before{content:"\f1fc"}.fa-birthday-cake:before{content:"\f1fd"}.fa-area-chart:before{content:"\f1fe"}.fa-pie-chart:before{content:"\f200"}.fa-line-chart:before{content:"\f201"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-bicycle:before{content:"\f206"}.fa-bus:before{content:"\f207"}.fa-ioxhost:before{content:"\f208"}.fa-angellist:before{content:"\f209"}.fa-cc:before{content:"\f20a"}.fa-shekel:before,.fa-sheqel:before,.fa-ils:before{content:"\f20b"}.fa-meanpath:before{content:"\f20c"}.fa-buysellads:before{content:"\f20d"}.fa-connectdevelop:before{content:"\f20e"}.fa-dashcube:before{content:"\f210"}.fa-forumbee:before{content:"\f211"}.fa-leanpub:before{content:"\f212"}.fa-sellsy:before{content:"\f213"}.fa-shirtsinbulk:before{content:"\f214"}.fa-simplybuilt:before{content:"\f215"}.fa-skyatlas:before{content:"\f216"}.fa-cart-plus:before{content:"\f217"}.fa-cart-arrow-down:before{content:"\f218"}.fa-diamond:before{content:"\f219"}.fa-ship:before{content:"\f21a"}.fa-user-secret:before{content:"\f21b"}.fa-motorcycle:before{content:"\f21c"}.fa-street-view:before{content:"\f21d"}.fa-heartbeat:before{content:"\f21e"}.fa-venus:before{content:"\f221"}.fa-mars:before{content:"\f222"}.fa-mercury:before{content:"\f223"}.fa-intersex:before,.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-venus-double:before{content:"\f226"}.fa-mars-double:before{content:"\f227"}.fa-venus-mars:before{content:"\f228"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-neuter:before{content:"\f22c"}.fa-genderless:before{content:"\f22d"}.fa-facebook-official:before{content:"\f230"}.fa-pinterest-p:before{content:"\f231"}.fa-whatsapp:before{content:"\f232"}.fa-server:before{content:"\f233"}.fa-user-plus:before{content:"\f234"}.fa-user-times:before{content:"\f235"}.fa-hotel:before,.fa-bed:before{content:"\f236"}.fa-viacoin:before{content:"\f237"}.fa-train:before{content:"\f238"}.fa-subway:before{content:"\f239"}.fa-medium:before{content:"\f23a"}.fa-yc:before,.fa-y-combinator:before{content:"\f23b"}.fa-optin-monster:before{content:"\f23c"}.fa-opencart:before{content:"\f23d"}.fa-expeditedssl:before{content:"\f23e"}.fa-battery-4:before,.fa-battery:before,.fa-battery-full:before{content:"\f240"}.fa-battery-3:before,.fa-battery-three-quarters:before{content:"\f241"}.fa-battery-2:before,.fa-battery-half:before{content:"\f242"}.fa-battery-1:before,.fa-battery-quarter:before{content:"\f243"}.fa-battery-0:before,.fa-battery-empty:before{content:"\f244"}.fa-mouse-pointer:before{content:"\f245"}.fa-i-cursor:before{content:"\f246"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-sticky-note:before{content:"\f249"}.fa-sticky-note-o:before{content:"\f24a"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-diners-club:before{content:"\f24c"}.fa-clone:before{content:"\f24d"}.fa-balance-scale:before{content:"\f24e"}.fa-hourglass-o:before{content:"\f250"}.fa-hourglass-1:before,.fa-hourglass-start:before{content:"\f251"}.fa-hourglass-2:before,.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-3:before,.fa-hourglass-end:before{content:"\f253"}.fa-hourglass:before{content:"\f254"}.fa-hand-grab-o:before,.fa-hand-rock-o:before{content:"\f255"}.fa-hand-stop-o:before,.fa-hand-paper-o:before{content:"\f256"}.fa-hand-scissors-o:before{content:"\f257"}.fa-hand-lizard-o:before{content:"\f258"}.fa-hand-spock-o:before{content:"\f259"}.fa-hand-pointer-o:before{content:"\f25a"}.fa-hand-peace-o:before{content:"\f25b"}.fa-trademark:before{content:"\f25c"}.fa-registered:before{content:"\f25d"}.fa-creative-commons:before{content:"\f25e"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-tripadvisor:before{content:"\f262"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-get-pocket:before{content:"\f265"}.fa-wikipedia-w:before{content:"\f266"}.fa-safari:before{content:"\f267"}.fa-chrome:before{content:"\f268"}.fa-firefox:before{content:"\f269"}.fa-opera:before{content:"\f26a"}.fa-internet-explorer:before{content:"\f26b"}.fa-tv:before,.fa-television:before{content:"\f26c"}.fa-contao:before{content:"\f26d"}.fa-500px:before{content:"\f26e"}.fa-amazon:before{content:"\f270"}.fa-calendar-plus-o:before{content:"\f271"}.fa-calendar-minus-o:before{content:"\f272"}.fa-calendar-times-o:before{content:"\f273"}.fa-calendar-check-o:before{content:"\f274"}.fa-industry:before{content:"\f275"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-map-o:before{content:"\f278"}.fa-map:before{content:"\f279"}.fa-commenting:before{content:"\f27a"}.fa-commenting-o:before{content:"\f27b"}.fa-houzz:before{content:"\f27c"}.fa-vimeo:before{content:"\f27d"}.fa-black-tie:before{content:"\f27e"}.fa-fonticons:before{content:"\f280"}.fa-reddit-alien:before{content:"\f281"}.fa-edge:before{content:"\f282"}.fa-credit-card-alt:before{content:"\f283"}.fa-codiepie:before{content:"\f284"}.fa-modx:before{content:"\f285"}.fa-fort-awesome:before{content:"\f286"}.fa-usb:before{content:"\f287"}.fa-product-hunt:before{content:"\f288"}.fa-mixcloud:before{content:"\f289"}.fa-scribd:before{content:"\f28a"}.fa-pause-circle:before{content:"\f28b"}.fa-pause-circle-o:before{content:"\f28c"}.fa-stop-circle:before{content:"\f28d"}.fa-stop-circle-o:before{content:"\f28e"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-hashtag:before{content:"\f292"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-percent:before{content:"\f295"}.fa-gitlab:before{content:"\f296"}.fa-wpbeginner:before{content:"\f297"}.fa-wpforms:before{content:"\f298"}.fa-envira:before{content:"\f299"}.fa-universal-access:before{content:"\f29a"}.fa-wheelchair-alt:before{content:"\f29b"}.fa-question-circle-o:before{content:"\f29c"}.fa-blind:before{content:"\f29d"}.fa-audio-description:before{content:"\f29e"}.fa-volume-control-phone:before{content:"\f2a0"}.fa-braille:before{content:"\f2a1"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-asl-interpreting:before,.fa-american-sign-language-interpreting:before{content:"\f2a3"}.fa-deafness:before,.fa-hard-of-hearing:before,.fa-deaf:before{content:"\f2a4"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-signing:before,.fa-sign-language:before{content:"\f2a7"}.fa-low-vision:before{content:"\f2a8"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.fa-pied-piper:before{content:"\f2ae"}.fa-first-order:before{content:"\f2b0"}.fa-yoast:before{content:"\f2b1"}.fa-themeisle:before{content:"\f2b2"}.fa-google-plus-circle:before,.fa-google-plus-official:before{content:"\f2b3"}.fa-fa:before,.fa-font-awesome:before{content:"\f2b4"}.fa-handshake-o:before{content:"\f2b5"}.fa-envelope-open:before{content:"\f2b6"}.fa-envelope-open-o:before{content:"\f2b7"}.fa-linode:before{content:"\f2b8"}.fa-address-book:before{content:"\f2b9"}.fa-address-book-o:before{content:"\f2ba"}.fa-vcard:before,.fa-address-card:before{content:"\f2bb"}.fa-vcard-o:before,.fa-address-card-o:before{content:"\f2bc"}.fa-user-circle:before{content:"\f2bd"}.fa-user-circle-o:before{content:"\f2be"}.fa-user-o:before{content:"\f2c0"}.fa-id-badge:before{content:"\f2c1"}.fa-drivers-license:before,.fa-id-card:before{content:"\f2c2"}.fa-drivers-license-o:before,.fa-id-card-o:before{content:"\f2c3"}.fa-quora:before{content:"\f2c4"}.fa-free-code-camp:before{content:"\f2c5"}.fa-telegram:before{content:"\f2c6"}.fa-thermometer-4:before,.fa-thermometer:before,.fa-thermometer-full:before{content:"\f2c7"}.fa-thermometer-3:before,.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-thermometer-2:before,.fa-thermometer-half:before{content:"\f2c9"}.fa-thermometer-1:before,.fa-thermometer-quarter:before{content:"\f2ca"}.fa-thermometer-0:before,.fa-thermometer-empty:before{content:"\f2cb"}.fa-shower:before{content:"\f2cc"}.fa-bathtub:before,.fa-s15:before,.fa-bath:before{content:"\f2cd"}.fa-podcast:before{content:"\f2ce"}.fa-window-maximize:before{content:"\f2d0"}.fa-window-minimize:before{content:"\f2d1"}.fa-window-restore:before{content:"\f2d2"}.fa-times-rectangle:before,.fa-window-close:before{content:"\f2d3"}.fa-times-rectangle-o:before,.fa-window-close-o:before{content:"\f2d4"}.fa-bandcamp:before{content:"\f2d5"}.fa-grav:before{content:"\f2d6"}.fa-etsy:before{content:"\f2d7"}.fa-imdb:before{content:"\f2d8"}.fa-ravelry:before{content:"\f2d9"}.fa-eercast:before{content:"\f2da"}.fa-microchip:before{content:"\f2db"}.fa-snowflake-o:before{content:"\f2dc"}.fa-superpowers:before{content:"\f2dd"}.fa-wpexplorer:before{content:"\f2de"}.fa-meetup:before{content:"\f2e0"}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}assets/lib/font-awesome/css/all.min.css000064400000163720151327220410014062 0ustar00/*!
 * Font Awesome Free 5.15.3 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 */
.fa,.fab,.fad,.fal,.far,.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:.08em solid #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.fab.fa-pull-left,.fal.fa-pull-left,.far.fa-pull-left,.fas.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.fab.fa-pull-right,.fal.fa-pull-right,.far.fa-pull-right,.fas.fa-pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.fa-pulse{-webkit-animation:fa-spin 1s steps(8) infinite;animation:fa-spin 1s steps(8) infinite}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-webkit-transform:scaleY(-1);transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical,.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1);transform:scale(-1)}:root .fa-flip-both,:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{-webkit-filter:none;filter:none}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-500px:before{content:"\f26e"}.fa-accessible-icon:before{content:"\f368"}.fa-accusoft:before{content:"\f369"}.fa-acquisitions-incorporated:before{content:"\f6af"}.fa-ad:before{content:"\f641"}.fa-address-book:before{content:"\f2b9"}.fa-address-card:before{content:"\f2bb"}.fa-adjust:before{content:"\f042"}.fa-adn:before{content:"\f170"}.fa-adversal:before{content:"\f36a"}.fa-affiliatetheme:before{content:"\f36b"}.fa-air-freshener:before{content:"\f5d0"}.fa-airbnb:before{content:"\f834"}.fa-algolia:before{content:"\f36c"}.fa-align-center:before{content:"\f037"}.fa-align-justify:before{content:"\f039"}.fa-align-left:before{content:"\f036"}.fa-align-right:before{content:"\f038"}.fa-alipay:before{content:"\f642"}.fa-allergies:before{content:"\f461"}.fa-amazon:before{content:"\f270"}.fa-amazon-pay:before{content:"\f42c"}.fa-ambulance:before{content:"\f0f9"}.fa-american-sign-language-interpreting:before{content:"\f2a3"}.fa-amilia:before{content:"\f36d"}.fa-anchor:before{content:"\f13d"}.fa-android:before{content:"\f17b"}.fa-angellist:before{content:"\f209"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-down:before{content:"\f107"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angry:before{content:"\f556"}.fa-angrycreative:before{content:"\f36e"}.fa-angular:before{content:"\f420"}.fa-ankh:before{content:"\f644"}.fa-app-store:before{content:"\f36f"}.fa-app-store-ios:before{content:"\f370"}.fa-apper:before{content:"\f371"}.fa-apple:before{content:"\f179"}.fa-apple-alt:before{content:"\f5d1"}.fa-apple-pay:before{content:"\f415"}.fa-archive:before{content:"\f187"}.fa-archway:before{content:"\f557"}.fa-arrow-alt-circle-down:before{content:"\f358"}.fa-arrow-alt-circle-left:before{content:"\f359"}.fa-arrow-alt-circle-right:before{content:"\f35a"}.fa-arrow-alt-circle-up:before{content:"\f35b"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-down:before{content:"\f063"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrows-alt:before{content:"\f0b2"}.fa-arrows-alt-h:before{content:"\f337"}.fa-arrows-alt-v:before{content:"\f338"}.fa-artstation:before{content:"\f77a"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-asterisk:before{content:"\f069"}.fa-asymmetrik:before{content:"\f372"}.fa-at:before{content:"\f1fa"}.fa-atlas:before{content:"\f558"}.fa-atlassian:before{content:"\f77b"}.fa-atom:before{content:"\f5d2"}.fa-audible:before{content:"\f373"}.fa-audio-description:before{content:"\f29e"}.fa-autoprefixer:before{content:"\f41c"}.fa-avianex:before{content:"\f374"}.fa-aviato:before{content:"\f421"}.fa-award:before{content:"\f559"}.fa-aws:before{content:"\f375"}.fa-baby:before{content:"\f77c"}.fa-baby-carriage:before{content:"\f77d"}.fa-backspace:before{content:"\f55a"}.fa-backward:before{content:"\f04a"}.fa-bacon:before{content:"\f7e5"}.fa-bacteria:before{content:"\e059"}.fa-bacterium:before{content:"\e05a"}.fa-bahai:before{content:"\f666"}.fa-balance-scale:before{content:"\f24e"}.fa-balance-scale-left:before{content:"\f515"}.fa-balance-scale-right:before{content:"\f516"}.fa-ban:before{content:"\f05e"}.fa-band-aid:before{content:"\f462"}.fa-bandcamp:before{content:"\f2d5"}.fa-barcode:before{content:"\f02a"}.fa-bars:before{content:"\f0c9"}.fa-baseball-ball:before{content:"\f433"}.fa-basketball-ball:before{content:"\f434"}.fa-bath:before{content:"\f2cd"}.fa-battery-empty:before{content:"\f244"}.fa-battery-full:before{content:"\f240"}.fa-battery-half:before{content:"\f242"}.fa-battery-quarter:before{content:"\f243"}.fa-battery-three-quarters:before{content:"\f241"}.fa-battle-net:before{content:"\f835"}.fa-bed:before{content:"\f236"}.fa-beer:before{content:"\f0fc"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-bell:before{content:"\f0f3"}.fa-bell-slash:before{content:"\f1f6"}.fa-bezier-curve:before{content:"\f55b"}.fa-bible:before{content:"\f647"}.fa-bicycle:before{content:"\f206"}.fa-biking:before{content:"\f84a"}.fa-bimobject:before{content:"\f378"}.fa-binoculars:before{content:"\f1e5"}.fa-biohazard:before{content:"\f780"}.fa-birthday-cake:before{content:"\f1fd"}.fa-bitbucket:before{content:"\f171"}.fa-bitcoin:before{content:"\f379"}.fa-bity:before{content:"\f37a"}.fa-black-tie:before{content:"\f27e"}.fa-blackberry:before{content:"\f37b"}.fa-blender:before{content:"\f517"}.fa-blender-phone:before{content:"\f6b6"}.fa-blind:before{content:"\f29d"}.fa-blog:before{content:"\f781"}.fa-blogger:before{content:"\f37c"}.fa-blogger-b:before{content:"\f37d"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-bold:before{content:"\f032"}.fa-bolt:before{content:"\f0e7"}.fa-bomb:before{content:"\f1e2"}.fa-bone:before{content:"\f5d7"}.fa-bong:before{content:"\f55c"}.fa-book:before{content:"\f02d"}.fa-book-dead:before{content:"\f6b7"}.fa-book-medical:before{content:"\f7e6"}.fa-book-open:before{content:"\f518"}.fa-book-reader:before{content:"\f5da"}.fa-bookmark:before{content:"\f02e"}.fa-bootstrap:before{content:"\f836"}.fa-border-all:before{content:"\f84c"}.fa-border-none:before{content:"\f850"}.fa-border-style:before{content:"\f853"}.fa-bowling-ball:before{content:"\f436"}.fa-box:before{content:"\f466"}.fa-box-open:before{content:"\f49e"}.fa-box-tissue:before{content:"\e05b"}.fa-boxes:before{content:"\f468"}.fa-braille:before{content:"\f2a1"}.fa-brain:before{content:"\f5dc"}.fa-bread-slice:before{content:"\f7ec"}.fa-briefcase:before{content:"\f0b1"}.fa-briefcase-medical:before{content:"\f469"}.fa-broadcast-tower:before{content:"\f519"}.fa-broom:before{content:"\f51a"}.fa-brush:before{content:"\f55d"}.fa-btc:before{content:"\f15a"}.fa-buffer:before{content:"\f837"}.fa-bug:before{content:"\f188"}.fa-building:before{content:"\f1ad"}.fa-bullhorn:before{content:"\f0a1"}.fa-bullseye:before{content:"\f140"}.fa-burn:before{content:"\f46a"}.fa-buromobelexperte:before{content:"\f37f"}.fa-bus:before{content:"\f207"}.fa-bus-alt:before{content:"\f55e"}.fa-business-time:before{content:"\f64a"}.fa-buy-n-large:before{content:"\f8a6"}.fa-buysellads:before{content:"\f20d"}.fa-calculator:before{content:"\f1ec"}.fa-calendar:before{content:"\f133"}.fa-calendar-alt:before{content:"\f073"}.fa-calendar-check:before{content:"\f274"}.fa-calendar-day:before{content:"\f783"}.fa-calendar-minus:before{content:"\f272"}.fa-calendar-plus:before{content:"\f271"}.fa-calendar-times:before{content:"\f273"}.fa-calendar-week:before{content:"\f784"}.fa-camera:before{content:"\f030"}.fa-camera-retro:before{content:"\f083"}.fa-campground:before{content:"\f6bb"}.fa-canadian-maple-leaf:before{content:"\f785"}.fa-candy-cane:before{content:"\f786"}.fa-cannabis:before{content:"\f55f"}.fa-capsules:before{content:"\f46b"}.fa-car:before{content:"\f1b9"}.fa-car-alt:before{content:"\f5de"}.fa-car-battery:before{content:"\f5df"}.fa-car-crash:before{content:"\f5e1"}.fa-car-side:before{content:"\f5e4"}.fa-caravan:before{content:"\f8ff"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-caret-square-down:before{content:"\f150"}.fa-caret-square-left:before{content:"\f191"}.fa-caret-square-right:before{content:"\f152"}.fa-caret-square-up:before{content:"\f151"}.fa-caret-up:before{content:"\f0d8"}.fa-carrot:before{content:"\f787"}.fa-cart-arrow-down:before{content:"\f218"}.fa-cart-plus:before{content:"\f217"}.fa-cash-register:before{content:"\f788"}.fa-cat:before{content:"\f6be"}.fa-cc-amazon-pay:before{content:"\f42d"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-apple-pay:before{content:"\f416"}.fa-cc-diners-club:before{content:"\f24c"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-cc-visa:before{content:"\f1f0"}.fa-centercode:before{content:"\f380"}.fa-centos:before{content:"\f789"}.fa-certificate:before{content:"\f0a3"}.fa-chair:before{content:"\f6c0"}.fa-chalkboard:before{content:"\f51b"}.fa-chalkboard-teacher:before{content:"\f51c"}.fa-charging-station:before{content:"\f5e7"}.fa-chart-area:before{content:"\f1fe"}.fa-chart-bar:before{content:"\f080"}.fa-chart-line:before{content:"\f201"}.fa-chart-pie:before{content:"\f200"}.fa-check:before{content:"\f00c"}.fa-check-circle:before{content:"\f058"}.fa-check-double:before{content:"\f560"}.fa-check-square:before{content:"\f14a"}.fa-cheese:before{content:"\f7ef"}.fa-chess:before{content:"\f439"}.fa-chess-bishop:before{content:"\f43a"}.fa-chess-board:before{content:"\f43c"}.fa-chess-king:before{content:"\f43f"}.fa-chess-knight:before{content:"\f441"}.fa-chess-pawn:before{content:"\f443"}.fa-chess-queen:before{content:"\f445"}.fa-chess-rook:before{content:"\f447"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-down:before{content:"\f078"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-chevron-up:before{content:"\f077"}.fa-child:before{content:"\f1ae"}.fa-chrome:before{content:"\f268"}.fa-chromecast:before{content:"\f838"}.fa-church:before{content:"\f51d"}.fa-circle:before{content:"\f111"}.fa-circle-notch:before{content:"\f1ce"}.fa-city:before{content:"\f64f"}.fa-clinic-medical:before{content:"\f7f2"}.fa-clipboard:before{content:"\f328"}.fa-clipboard-check:before{content:"\f46c"}.fa-clipboard-list:before{content:"\f46d"}.fa-clock:before{content:"\f017"}.fa-clone:before{content:"\f24d"}.fa-closed-captioning:before{content:"\f20a"}.fa-cloud:before{content:"\f0c2"}.fa-cloud-download-alt:before{content:"\f381"}.fa-cloud-meatball:before{content:"\f73b"}.fa-cloud-moon:before{content:"\f6c3"}.fa-cloud-moon-rain:before{content:"\f73c"}.fa-cloud-rain:before{content:"\f73d"}.fa-cloud-showers-heavy:before{content:"\f740"}.fa-cloud-sun:before{content:"\f6c4"}.fa-cloud-sun-rain:before{content:"\f743"}.fa-cloud-upload-alt:before{content:"\f382"}.fa-cloudflare:before{content:"\e07d"}.fa-cloudscale:before{content:"\f383"}.fa-cloudsmith:before{content:"\f384"}.fa-cloudversify:before{content:"\f385"}.fa-cocktail:before{content:"\f561"}.fa-code:before{content:"\f121"}.fa-code-branch:before{content:"\f126"}.fa-codepen:before{content:"\f1cb"}.fa-codiepie:before{content:"\f284"}.fa-coffee:before{content:"\f0f4"}.fa-cog:before{content:"\f013"}.fa-cogs:before{content:"\f085"}.fa-coins:before{content:"\f51e"}.fa-columns:before{content:"\f0db"}.fa-comment:before{content:"\f075"}.fa-comment-alt:before{content:"\f27a"}.fa-comment-dollar:before{content:"\f651"}.fa-comment-dots:before{content:"\f4ad"}.fa-comment-medical:before{content:"\f7f5"}.fa-comment-slash:before{content:"\f4b3"}.fa-comments:before{content:"\f086"}.fa-comments-dollar:before{content:"\f653"}.fa-compact-disc:before{content:"\f51f"}.fa-compass:before{content:"\f14e"}.fa-compress:before{content:"\f066"}.fa-compress-alt:before{content:"\f422"}.fa-compress-arrows-alt:before{content:"\f78c"}.fa-concierge-bell:before{content:"\f562"}.fa-confluence:before{content:"\f78d"}.fa-connectdevelop:before{content:"\f20e"}.fa-contao:before{content:"\f26d"}.fa-cookie:before{content:"\f563"}.fa-cookie-bite:before{content:"\f564"}.fa-copy:before{content:"\f0c5"}.fa-copyright:before{content:"\f1f9"}.fa-cotton-bureau:before{content:"\f89e"}.fa-couch:before{content:"\f4b8"}.fa-cpanel:before{content:"\f388"}.fa-creative-commons:before{content:"\f25e"}.fa-creative-commons-by:before{content:"\f4e7"}.fa-creative-commons-nc:before{content:"\f4e8"}.fa-creative-commons-nc-eu:before{content:"\f4e9"}.fa-creative-commons-nc-jp:before{content:"\f4ea"}.fa-creative-commons-nd:before{content:"\f4eb"}.fa-creative-commons-pd:before{content:"\f4ec"}.fa-creative-commons-pd-alt:before{content:"\f4ed"}.fa-creative-commons-remix:before{content:"\f4ee"}.fa-creative-commons-sa:before{content:"\f4ef"}.fa-creative-commons-sampling:before{content:"\f4f0"}.fa-creative-commons-sampling-plus:before{content:"\f4f1"}.fa-creative-commons-share:before{content:"\f4f2"}.fa-creative-commons-zero:before{content:"\f4f3"}.fa-credit-card:before{content:"\f09d"}.fa-critical-role:before{content:"\f6c9"}.fa-crop:before{content:"\f125"}.fa-crop-alt:before{content:"\f565"}.fa-cross:before{content:"\f654"}.fa-crosshairs:before{content:"\f05b"}.fa-crow:before{content:"\f520"}.fa-crown:before{content:"\f521"}.fa-crutch:before{content:"\f7f7"}.fa-css3:before{content:"\f13c"}.fa-css3-alt:before{content:"\f38b"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-cut:before{content:"\f0c4"}.fa-cuttlefish:before{content:"\f38c"}.fa-d-and-d:before{content:"\f38d"}.fa-d-and-d-beyond:before{content:"\f6ca"}.fa-dailymotion:before{content:"\e052"}.fa-dashcube:before{content:"\f210"}.fa-database:before{content:"\f1c0"}.fa-deaf:before{content:"\f2a4"}.fa-deezer:before{content:"\e077"}.fa-delicious:before{content:"\f1a5"}.fa-democrat:before{content:"\f747"}.fa-deploydog:before{content:"\f38e"}.fa-deskpro:before{content:"\f38f"}.fa-desktop:before{content:"\f108"}.fa-dev:before{content:"\f6cc"}.fa-deviantart:before{content:"\f1bd"}.fa-dharmachakra:before{content:"\f655"}.fa-dhl:before{content:"\f790"}.fa-diagnoses:before{content:"\f470"}.fa-diaspora:before{content:"\f791"}.fa-dice:before{content:"\f522"}.fa-dice-d20:before{content:"\f6cf"}.fa-dice-d6:before{content:"\f6d1"}.fa-dice-five:before{content:"\f523"}.fa-dice-four:before{content:"\f524"}.fa-dice-one:before{content:"\f525"}.fa-dice-six:before{content:"\f526"}.fa-dice-three:before{content:"\f527"}.fa-dice-two:before{content:"\f528"}.fa-digg:before{content:"\f1a6"}.fa-digital-ocean:before{content:"\f391"}.fa-digital-tachograph:before{content:"\f566"}.fa-directions:before{content:"\f5eb"}.fa-discord:before{content:"\f392"}.fa-discourse:before{content:"\f393"}.fa-disease:before{content:"\f7fa"}.fa-divide:before{content:"\f529"}.fa-dizzy:before{content:"\f567"}.fa-dna:before{content:"\f471"}.fa-dochub:before{content:"\f394"}.fa-docker:before{content:"\f395"}.fa-dog:before{content:"\f6d3"}.fa-dollar-sign:before{content:"\f155"}.fa-dolly:before{content:"\f472"}.fa-dolly-flatbed:before{content:"\f474"}.fa-donate:before{content:"\f4b9"}.fa-door-closed:before{content:"\f52a"}.fa-door-open:before{content:"\f52b"}.fa-dot-circle:before{content:"\f192"}.fa-dove:before{content:"\f4ba"}.fa-download:before{content:"\f019"}.fa-draft2digital:before{content:"\f396"}.fa-drafting-compass:before{content:"\f568"}.fa-dragon:before{content:"\f6d5"}.fa-draw-polygon:before{content:"\f5ee"}.fa-dribbble:before{content:"\f17d"}.fa-dribbble-square:before{content:"\f397"}.fa-dropbox:before{content:"\f16b"}.fa-drum:before{content:"\f569"}.fa-drum-steelpan:before{content:"\f56a"}.fa-drumstick-bite:before{content:"\f6d7"}.fa-drupal:before{content:"\f1a9"}.fa-dumbbell:before{content:"\f44b"}.fa-dumpster:before{content:"\f793"}.fa-dumpster-fire:before{content:"\f794"}.fa-dungeon:before{content:"\f6d9"}.fa-dyalog:before{content:"\f399"}.fa-earlybirds:before{content:"\f39a"}.fa-ebay:before{content:"\f4f4"}.fa-edge:before{content:"\f282"}.fa-edge-legacy:before{content:"\e078"}.fa-edit:before{content:"\f044"}.fa-egg:before{content:"\f7fb"}.fa-eject:before{content:"\f052"}.fa-elementor:before{content:"\f430"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-ello:before{content:"\f5f1"}.fa-ember:before{content:"\f423"}.fa-empire:before{content:"\f1d1"}.fa-envelope:before{content:"\f0e0"}.fa-envelope-open:before{content:"\f2b6"}.fa-envelope-open-text:before{content:"\f658"}.fa-envelope-square:before{content:"\f199"}.fa-envira:before{content:"\f299"}.fa-equals:before{content:"\f52c"}.fa-eraser:before{content:"\f12d"}.fa-erlang:before{content:"\f39d"}.fa-ethereum:before{content:"\f42e"}.fa-ethernet:before{content:"\f796"}.fa-etsy:before{content:"\f2d7"}.fa-euro-sign:before{content:"\f153"}.fa-evernote:before{content:"\f839"}.fa-exchange-alt:before{content:"\f362"}.fa-exclamation:before{content:"\f12a"}.fa-exclamation-circle:before{content:"\f06a"}.fa-exclamation-triangle:before{content:"\f071"}.fa-expand:before{content:"\f065"}.fa-expand-alt:before{content:"\f424"}.fa-expand-arrows-alt:before{content:"\f31e"}.fa-expeditedssl:before{content:"\f23e"}.fa-external-link-alt:before{content:"\f35d"}.fa-external-link-square-alt:before{content:"\f360"}.fa-eye:before{content:"\f06e"}.fa-eye-dropper:before{content:"\f1fb"}.fa-eye-slash:before{content:"\f070"}.fa-facebook:before{content:"\f09a"}.fa-facebook-f:before{content:"\f39e"}.fa-facebook-messenger:before{content:"\f39f"}.fa-facebook-square:before{content:"\f082"}.fa-fan:before{content:"\f863"}.fa-fantasy-flight-games:before{content:"\f6dc"}.fa-fast-backward:before{content:"\f049"}.fa-fast-forward:before{content:"\f050"}.fa-faucet:before{content:"\e005"}.fa-fax:before{content:"\f1ac"}.fa-feather:before{content:"\f52d"}.fa-feather-alt:before{content:"\f56b"}.fa-fedex:before{content:"\f797"}.fa-fedora:before{content:"\f798"}.fa-female:before{content:"\f182"}.fa-fighter-jet:before{content:"\f0fb"}.fa-figma:before{content:"\f799"}.fa-file:before{content:"\f15b"}.fa-file-alt:before{content:"\f15c"}.fa-file-archive:before{content:"\f1c6"}.fa-file-audio:before{content:"\f1c7"}.fa-file-code:before{content:"\f1c9"}.fa-file-contract:before{content:"\f56c"}.fa-file-csv:before{content:"\f6dd"}.fa-file-download:before{content:"\f56d"}.fa-file-excel:before{content:"\f1c3"}.fa-file-export:before{content:"\f56e"}.fa-file-image:before{content:"\f1c5"}.fa-file-import:before{content:"\f56f"}.fa-file-invoice:before{content:"\f570"}.fa-file-invoice-dollar:before{content:"\f571"}.fa-file-medical:before{content:"\f477"}.fa-file-medical-alt:before{content:"\f478"}.fa-file-pdf:before{content:"\f1c1"}.fa-file-powerpoint:before{content:"\f1c4"}.fa-file-prescription:before{content:"\f572"}.fa-file-signature:before{content:"\f573"}.fa-file-upload:before{content:"\f574"}.fa-file-video:before{content:"\f1c8"}.fa-file-word:before{content:"\f1c2"}.fa-fill:before{content:"\f575"}.fa-fill-drip:before{content:"\f576"}.fa-film:before{content:"\f008"}.fa-filter:before{content:"\f0b0"}.fa-fingerprint:before{content:"\f577"}.fa-fire:before{content:"\f06d"}.fa-fire-alt:before{content:"\f7e4"}.fa-fire-extinguisher:before{content:"\f134"}.fa-firefox:before{content:"\f269"}.fa-firefox-browser:before{content:"\e007"}.fa-first-aid:before{content:"\f479"}.fa-first-order:before{content:"\f2b0"}.fa-first-order-alt:before{content:"\f50a"}.fa-firstdraft:before{content:"\f3a1"}.fa-fish:before{content:"\f578"}.fa-fist-raised:before{content:"\f6de"}.fa-flag:before{content:"\f024"}.fa-flag-checkered:before{content:"\f11e"}.fa-flag-usa:before{content:"\f74d"}.fa-flask:before{content:"\f0c3"}.fa-flickr:before{content:"\f16e"}.fa-flipboard:before{content:"\f44d"}.fa-flushed:before{content:"\f579"}.fa-fly:before{content:"\f417"}.fa-folder:before{content:"\f07b"}.fa-folder-minus:before{content:"\f65d"}.fa-folder-open:before{content:"\f07c"}.fa-folder-plus:before{content:"\f65e"}.fa-font:before{content:"\f031"}.fa-font-awesome:before{content:"\f2b4"}.fa-font-awesome-alt:before{content:"\f35c"}.fa-font-awesome-flag:before{content:"\f425"}.fa-font-awesome-logo-full:before{content:"\f4e6"}.fa-fonticons:before{content:"\f280"}.fa-fonticons-fi:before{content:"\f3a2"}.fa-football-ball:before{content:"\f44e"}.fa-fort-awesome:before{content:"\f286"}.fa-fort-awesome-alt:before{content:"\f3a3"}.fa-forumbee:before{content:"\f211"}.fa-forward:before{content:"\f04e"}.fa-foursquare:before{content:"\f180"}.fa-free-code-camp:before{content:"\f2c5"}.fa-freebsd:before{content:"\f3a4"}.fa-frog:before{content:"\f52e"}.fa-frown:before{content:"\f119"}.fa-frown-open:before{content:"\f57a"}.fa-fulcrum:before{content:"\f50b"}.fa-funnel-dollar:before{content:"\f662"}.fa-futbol:before{content:"\f1e3"}.fa-galactic-republic:before{content:"\f50c"}.fa-galactic-senate:before{content:"\f50d"}.fa-gamepad:before{content:"\f11b"}.fa-gas-pump:before{content:"\f52f"}.fa-gavel:before{content:"\f0e3"}.fa-gem:before{content:"\f3a5"}.fa-genderless:before{content:"\f22d"}.fa-get-pocket:before{content:"\f265"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-ghost:before{content:"\f6e2"}.fa-gift:before{content:"\f06b"}.fa-gifts:before{content:"\f79c"}.fa-git:before{content:"\f1d3"}.fa-git-alt:before{content:"\f841"}.fa-git-square:before{content:"\f1d2"}.fa-github:before{content:"\f09b"}.fa-github-alt:before{content:"\f113"}.fa-github-square:before{content:"\f092"}.fa-gitkraken:before{content:"\f3a6"}.fa-gitlab:before{content:"\f296"}.fa-gitter:before{content:"\f426"}.fa-glass-cheers:before{content:"\f79f"}.fa-glass-martini:before{content:"\f000"}.fa-glass-martini-alt:before{content:"\f57b"}.fa-glass-whiskey:before{content:"\f7a0"}.fa-glasses:before{content:"\f530"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-globe:before{content:"\f0ac"}.fa-globe-africa:before{content:"\f57c"}.fa-globe-americas:before{content:"\f57d"}.fa-globe-asia:before{content:"\f57e"}.fa-globe-europe:before{content:"\f7a2"}.fa-gofore:before{content:"\f3a7"}.fa-golf-ball:before{content:"\f450"}.fa-goodreads:before{content:"\f3a8"}.fa-goodreads-g:before{content:"\f3a9"}.fa-google:before{content:"\f1a0"}.fa-google-drive:before{content:"\f3aa"}.fa-google-pay:before{content:"\e079"}.fa-google-play:before{content:"\f3ab"}.fa-google-plus:before{content:"\f2b3"}.fa-google-plus-g:before{content:"\f0d5"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-wallet:before{content:"\f1ee"}.fa-gopuram:before{content:"\f664"}.fa-graduation-cap:before{content:"\f19d"}.fa-gratipay:before{content:"\f184"}.fa-grav:before{content:"\f2d6"}.fa-greater-than:before{content:"\f531"}.fa-greater-than-equal:before{content:"\f532"}.fa-grimace:before{content:"\f57f"}.fa-grin:before{content:"\f580"}.fa-grin-alt:before{content:"\f581"}.fa-grin-beam:before{content:"\f582"}.fa-grin-beam-sweat:before{content:"\f583"}.fa-grin-hearts:before{content:"\f584"}.fa-grin-squint:before{content:"\f585"}.fa-grin-squint-tears:before{content:"\f586"}.fa-grin-stars:before{content:"\f587"}.fa-grin-tears:before{content:"\f588"}.fa-grin-tongue:before{content:"\f589"}.fa-grin-tongue-squint:before{content:"\f58a"}.fa-grin-tongue-wink:before{content:"\f58b"}.fa-grin-wink:before{content:"\f58c"}.fa-grip-horizontal:before{content:"\f58d"}.fa-grip-lines:before{content:"\f7a4"}.fa-grip-lines-vertical:before{content:"\f7a5"}.fa-grip-vertical:before{content:"\f58e"}.fa-gripfire:before{content:"\f3ac"}.fa-grunt:before{content:"\f3ad"}.fa-guilded:before{content:"\e07e"}.fa-guitar:before{content:"\f7a6"}.fa-gulp:before{content:"\f3ae"}.fa-h-square:before{content:"\f0fd"}.fa-hacker-news:before{content:"\f1d4"}.fa-hacker-news-square:before{content:"\f3af"}.fa-hackerrank:before{content:"\f5f7"}.fa-hamburger:before{content:"\f805"}.fa-hammer:before{content:"\f6e3"}.fa-hamsa:before{content:"\f665"}.fa-hand-holding:before{content:"\f4bd"}.fa-hand-holding-heart:before{content:"\f4be"}.fa-hand-holding-medical:before{content:"\e05c"}.fa-hand-holding-usd:before{content:"\f4c0"}.fa-hand-holding-water:before{content:"\f4c1"}.fa-hand-lizard:before{content:"\f258"}.fa-hand-middle-finger:before{content:"\f806"}.fa-hand-paper:before{content:"\f256"}.fa-hand-peace:before{content:"\f25b"}.fa-hand-point-down:before{content:"\f0a7"}.fa-hand-point-left:before{content:"\f0a5"}.fa-hand-point-right:before{content:"\f0a4"}.fa-hand-point-up:before{content:"\f0a6"}.fa-hand-pointer:before{content:"\f25a"}.fa-hand-rock:before{content:"\f255"}.fa-hand-scissors:before{content:"\f257"}.fa-hand-sparkles:before{content:"\e05d"}.fa-hand-spock:before{content:"\f259"}.fa-hands:before{content:"\f4c2"}.fa-hands-helping:before{content:"\f4c4"}.fa-hands-wash:before{content:"\e05e"}.fa-handshake:before{content:"\f2b5"}.fa-handshake-alt-slash:before{content:"\e05f"}.fa-handshake-slash:before{content:"\e060"}.fa-hanukiah:before{content:"\f6e6"}.fa-hard-hat:before{content:"\f807"}.fa-hashtag:before{content:"\f292"}.fa-hat-cowboy:before{content:"\f8c0"}.fa-hat-cowboy-side:before{content:"\f8c1"}.fa-hat-wizard:before{content:"\f6e8"}.fa-hdd:before{content:"\f0a0"}.fa-head-side-cough:before{content:"\e061"}.fa-head-side-cough-slash:before{content:"\e062"}.fa-head-side-mask:before{content:"\e063"}.fa-head-side-virus:before{content:"\e064"}.fa-heading:before{content:"\f1dc"}.fa-headphones:before{content:"\f025"}.fa-headphones-alt:before{content:"\f58f"}.fa-headset:before{content:"\f590"}.fa-heart:before{content:"\f004"}.fa-heart-broken:before{content:"\f7a9"}.fa-heartbeat:before{content:"\f21e"}.fa-helicopter:before{content:"\f533"}.fa-highlighter:before{content:"\f591"}.fa-hiking:before{content:"\f6ec"}.fa-hippo:before{content:"\f6ed"}.fa-hips:before{content:"\f452"}.fa-hire-a-helper:before{content:"\f3b0"}.fa-history:before{content:"\f1da"}.fa-hive:before{content:"\e07f"}.fa-hockey-puck:before{content:"\f453"}.fa-holly-berry:before{content:"\f7aa"}.fa-home:before{content:"\f015"}.fa-hooli:before{content:"\f427"}.fa-hornbill:before{content:"\f592"}.fa-horse:before{content:"\f6f0"}.fa-horse-head:before{content:"\f7ab"}.fa-hospital:before{content:"\f0f8"}.fa-hospital-alt:before{content:"\f47d"}.fa-hospital-symbol:before{content:"\f47e"}.fa-hospital-user:before{content:"\f80d"}.fa-hot-tub:before{content:"\f593"}.fa-hotdog:before{content:"\f80f"}.fa-hotel:before{content:"\f594"}.fa-hotjar:before{content:"\f3b1"}.fa-hourglass:before{content:"\f254"}.fa-hourglass-end:before{content:"\f253"}.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-start:before{content:"\f251"}.fa-house-damage:before{content:"\f6f1"}.fa-house-user:before{content:"\e065"}.fa-houzz:before{content:"\f27c"}.fa-hryvnia:before{content:"\f6f2"}.fa-html5:before{content:"\f13b"}.fa-hubspot:before{content:"\f3b2"}.fa-i-cursor:before{content:"\f246"}.fa-ice-cream:before{content:"\f810"}.fa-icicles:before{content:"\f7ad"}.fa-icons:before{content:"\f86d"}.fa-id-badge:before{content:"\f2c1"}.fa-id-card:before{content:"\f2c2"}.fa-id-card-alt:before{content:"\f47f"}.fa-ideal:before{content:"\e013"}.fa-igloo:before{content:"\f7ae"}.fa-image:before{content:"\f03e"}.fa-images:before{content:"\f302"}.fa-imdb:before{content:"\f2d8"}.fa-inbox:before{content:"\f01c"}.fa-indent:before{content:"\f03c"}.fa-industry:before{content:"\f275"}.fa-infinity:before{content:"\f534"}.fa-info:before{content:"\f129"}.fa-info-circle:before{content:"\f05a"}.fa-innosoft:before{content:"\e080"}.fa-instagram:before{content:"\f16d"}.fa-instagram-square:before{content:"\e055"}.fa-instalod:before{content:"\e081"}.fa-intercom:before{content:"\f7af"}.fa-internet-explorer:before{content:"\f26b"}.fa-invision:before{content:"\f7b0"}.fa-ioxhost:before{content:"\f208"}.fa-italic:before{content:"\f033"}.fa-itch-io:before{content:"\f83a"}.fa-itunes:before{content:"\f3b4"}.fa-itunes-note:before{content:"\f3b5"}.fa-java:before{content:"\f4e4"}.fa-jedi:before{content:"\f669"}.fa-jedi-order:before{content:"\f50e"}.fa-jenkins:before{content:"\f3b6"}.fa-jira:before{content:"\f7b1"}.fa-joget:before{content:"\f3b7"}.fa-joint:before{content:"\f595"}.fa-joomla:before{content:"\f1aa"}.fa-journal-whills:before{content:"\f66a"}.fa-js:before{content:"\f3b8"}.fa-js-square:before{content:"\f3b9"}.fa-jsfiddle:before{content:"\f1cc"}.fa-kaaba:before{content:"\f66b"}.fa-kaggle:before{content:"\f5fa"}.fa-key:before{content:"\f084"}.fa-keybase:before{content:"\f4f5"}.fa-keyboard:before{content:"\f11c"}.fa-keycdn:before{content:"\f3ba"}.fa-khanda:before{content:"\f66d"}.fa-kickstarter:before{content:"\f3bb"}.fa-kickstarter-k:before{content:"\f3bc"}.fa-kiss:before{content:"\f596"}.fa-kiss-beam:before{content:"\f597"}.fa-kiss-wink-heart:before{content:"\f598"}.fa-kiwi-bird:before{content:"\f535"}.fa-korvue:before{content:"\f42f"}.fa-landmark:before{content:"\f66f"}.fa-language:before{content:"\f1ab"}.fa-laptop:before{content:"\f109"}.fa-laptop-code:before{content:"\f5fc"}.fa-laptop-house:before{content:"\e066"}.fa-laptop-medical:before{content:"\f812"}.fa-laravel:before{content:"\f3bd"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-laugh:before{content:"\f599"}.fa-laugh-beam:before{content:"\f59a"}.fa-laugh-squint:before{content:"\f59b"}.fa-laugh-wink:before{content:"\f59c"}.fa-layer-group:before{content:"\f5fd"}.fa-leaf:before{content:"\f06c"}.fa-leanpub:before{content:"\f212"}.fa-lemon:before{content:"\f094"}.fa-less:before{content:"\f41d"}.fa-less-than:before{content:"\f536"}.fa-less-than-equal:before{content:"\f537"}.fa-level-down-alt:before{content:"\f3be"}.fa-level-up-alt:before{content:"\f3bf"}.fa-life-ring:before{content:"\f1cd"}.fa-lightbulb:before{content:"\f0eb"}.fa-line:before{content:"\f3c0"}.fa-link:before{content:"\f0c1"}.fa-linkedin:before{content:"\f08c"}.fa-linkedin-in:before{content:"\f0e1"}.fa-linode:before{content:"\f2b8"}.fa-linux:before{content:"\f17c"}.fa-lira-sign:before{content:"\f195"}.fa-list:before{content:"\f03a"}.fa-list-alt:before{content:"\f022"}.fa-list-ol:before{content:"\f0cb"}.fa-list-ul:before{content:"\f0ca"}.fa-location-arrow:before{content:"\f124"}.fa-lock:before{content:"\f023"}.fa-lock-open:before{content:"\f3c1"}.fa-long-arrow-alt-down:before{content:"\f309"}.fa-long-arrow-alt-left:before{content:"\f30a"}.fa-long-arrow-alt-right:before{content:"\f30b"}.fa-long-arrow-alt-up:before{content:"\f30c"}.fa-low-vision:before{content:"\f2a8"}.fa-luggage-cart:before{content:"\f59d"}.fa-lungs:before{content:"\f604"}.fa-lungs-virus:before{content:"\e067"}.fa-lyft:before{content:"\f3c3"}.fa-magento:before{content:"\f3c4"}.fa-magic:before{content:"\f0d0"}.fa-magnet:before{content:"\f076"}.fa-mail-bulk:before{content:"\f674"}.fa-mailchimp:before{content:"\f59e"}.fa-male:before{content:"\f183"}.fa-mandalorian:before{content:"\f50f"}.fa-map:before{content:"\f279"}.fa-map-marked:before{content:"\f59f"}.fa-map-marked-alt:before{content:"\f5a0"}.fa-map-marker:before{content:"\f041"}.fa-map-marker-alt:before{content:"\f3c5"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-markdown:before{content:"\f60f"}.fa-marker:before{content:"\f5a1"}.fa-mars:before{content:"\f222"}.fa-mars-double:before{content:"\f227"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mask:before{content:"\f6fa"}.fa-mastodon:before{content:"\f4f6"}.fa-maxcdn:before{content:"\f136"}.fa-mdb:before{content:"\f8ca"}.fa-medal:before{content:"\f5a2"}.fa-medapps:before{content:"\f3c6"}.fa-medium:before{content:"\f23a"}.fa-medium-m:before{content:"\f3c7"}.fa-medkit:before{content:"\f0fa"}.fa-medrt:before{content:"\f3c8"}.fa-meetup:before{content:"\f2e0"}.fa-megaport:before{content:"\f5a3"}.fa-meh:before{content:"\f11a"}.fa-meh-blank:before{content:"\f5a4"}.fa-meh-rolling-eyes:before{content:"\f5a5"}.fa-memory:before{content:"\f538"}.fa-mendeley:before{content:"\f7b3"}.fa-menorah:before{content:"\f676"}.fa-mercury:before{content:"\f223"}.fa-meteor:before{content:"\f753"}.fa-microblog:before{content:"\e01a"}.fa-microchip:before{content:"\f2db"}.fa-microphone:before{content:"\f130"}.fa-microphone-alt:before{content:"\f3c9"}.fa-microphone-alt-slash:before{content:"\f539"}.fa-microphone-slash:before{content:"\f131"}.fa-microscope:before{content:"\f610"}.fa-microsoft:before{content:"\f3ca"}.fa-minus:before{content:"\f068"}.fa-minus-circle:before{content:"\f056"}.fa-minus-square:before{content:"\f146"}.fa-mitten:before{content:"\f7b5"}.fa-mix:before{content:"\f3cb"}.fa-mixcloud:before{content:"\f289"}.fa-mixer:before{content:"\e056"}.fa-mizuni:before{content:"\f3cc"}.fa-mobile:before{content:"\f10b"}.fa-mobile-alt:before{content:"\f3cd"}.fa-modx:before{content:"\f285"}.fa-monero:before{content:"\f3d0"}.fa-money-bill:before{content:"\f0d6"}.fa-money-bill-alt:before{content:"\f3d1"}.fa-money-bill-wave:before{content:"\f53a"}.fa-money-bill-wave-alt:before{content:"\f53b"}.fa-money-check:before{content:"\f53c"}.fa-money-check-alt:before{content:"\f53d"}.fa-monument:before{content:"\f5a6"}.fa-moon:before{content:"\f186"}.fa-mortar-pestle:before{content:"\f5a7"}.fa-mosque:before{content:"\f678"}.fa-motorcycle:before{content:"\f21c"}.fa-mountain:before{content:"\f6fc"}.fa-mouse:before{content:"\f8cc"}.fa-mouse-pointer:before{content:"\f245"}.fa-mug-hot:before{content:"\f7b6"}.fa-music:before{content:"\f001"}.fa-napster:before{content:"\f3d2"}.fa-neos:before{content:"\f612"}.fa-network-wired:before{content:"\f6ff"}.fa-neuter:before{content:"\f22c"}.fa-newspaper:before{content:"\f1ea"}.fa-nimblr:before{content:"\f5a8"}.fa-node:before{content:"\f419"}.fa-node-js:before{content:"\f3d3"}.fa-not-equal:before{content:"\f53e"}.fa-notes-medical:before{content:"\f481"}.fa-npm:before{content:"\f3d4"}.fa-ns8:before{content:"\f3d5"}.fa-nutritionix:before{content:"\f3d6"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-octopus-deploy:before{content:"\e082"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-oil-can:before{content:"\f613"}.fa-old-republic:before{content:"\f510"}.fa-om:before{content:"\f679"}.fa-opencart:before{content:"\f23d"}.fa-openid:before{content:"\f19b"}.fa-opera:before{content:"\f26a"}.fa-optin-monster:before{content:"\f23c"}.fa-orcid:before{content:"\f8d2"}.fa-osi:before{content:"\f41a"}.fa-otter:before{content:"\f700"}.fa-outdent:before{content:"\f03b"}.fa-page4:before{content:"\f3d7"}.fa-pagelines:before{content:"\f18c"}.fa-pager:before{content:"\f815"}.fa-paint-brush:before{content:"\f1fc"}.fa-paint-roller:before{content:"\f5aa"}.fa-palette:before{content:"\f53f"}.fa-palfed:before{content:"\f3d8"}.fa-pallet:before{content:"\f482"}.fa-paper-plane:before{content:"\f1d8"}.fa-paperclip:before{content:"\f0c6"}.fa-parachute-box:before{content:"\f4cd"}.fa-paragraph:before{content:"\f1dd"}.fa-parking:before{content:"\f540"}.fa-passport:before{content:"\f5ab"}.fa-pastafarianism:before{content:"\f67b"}.fa-paste:before{content:"\f0ea"}.fa-patreon:before{content:"\f3d9"}.fa-pause:before{content:"\f04c"}.fa-pause-circle:before{content:"\f28b"}.fa-paw:before{content:"\f1b0"}.fa-paypal:before{content:"\f1ed"}.fa-peace:before{content:"\f67c"}.fa-pen:before{content:"\f304"}.fa-pen-alt:before{content:"\f305"}.fa-pen-fancy:before{content:"\f5ac"}.fa-pen-nib:before{content:"\f5ad"}.fa-pen-square:before{content:"\f14b"}.fa-pencil-alt:before{content:"\f303"}.fa-pencil-ruler:before{content:"\f5ae"}.fa-penny-arcade:before{content:"\f704"}.fa-people-arrows:before{content:"\e068"}.fa-people-carry:before{content:"\f4ce"}.fa-pepper-hot:before{content:"\f816"}.fa-perbyte:before{content:"\e083"}.fa-percent:before{content:"\f295"}.fa-percentage:before{content:"\f541"}.fa-periscope:before{content:"\f3da"}.fa-person-booth:before{content:"\f756"}.fa-phabricator:before{content:"\f3db"}.fa-phoenix-framework:before{content:"\f3dc"}.fa-phoenix-squadron:before{content:"\f511"}.fa-phone:before{content:"\f095"}.fa-phone-alt:before{content:"\f879"}.fa-phone-slash:before{content:"\f3dd"}.fa-phone-square:before{content:"\f098"}.fa-phone-square-alt:before{content:"\f87b"}.fa-phone-volume:before{content:"\f2a0"}.fa-photo-video:before{content:"\f87c"}.fa-php:before{content:"\f457"}.fa-pied-piper:before{content:"\f2ae"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-pied-piper-hat:before{content:"\f4e5"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-pied-piper-square:before{content:"\e01e"}.fa-piggy-bank:before{content:"\f4d3"}.fa-pills:before{content:"\f484"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-p:before{content:"\f231"}.fa-pinterest-square:before{content:"\f0d3"}.fa-pizza-slice:before{content:"\f818"}.fa-place-of-worship:before{content:"\f67f"}.fa-plane:before{content:"\f072"}.fa-plane-arrival:before{content:"\f5af"}.fa-plane-departure:before{content:"\f5b0"}.fa-plane-slash:before{content:"\e069"}.fa-play:before{content:"\f04b"}.fa-play-circle:before{content:"\f144"}.fa-playstation:before{content:"\f3df"}.fa-plug:before{content:"\f1e6"}.fa-plus:before{content:"\f067"}.fa-plus-circle:before{content:"\f055"}.fa-plus-square:before{content:"\f0fe"}.fa-podcast:before{content:"\f2ce"}.fa-poll:before{content:"\f681"}.fa-poll-h:before{content:"\f682"}.fa-poo:before{content:"\f2fe"}.fa-poo-storm:before{content:"\f75a"}.fa-poop:before{content:"\f619"}.fa-portrait:before{content:"\f3e0"}.fa-pound-sign:before{content:"\f154"}.fa-power-off:before{content:"\f011"}.fa-pray:before{content:"\f683"}.fa-praying-hands:before{content:"\f684"}.fa-prescription:before{content:"\f5b1"}.fa-prescription-bottle:before{content:"\f485"}.fa-prescription-bottle-alt:before{content:"\f486"}.fa-print:before{content:"\f02f"}.fa-procedures:before{content:"\f487"}.fa-product-hunt:before{content:"\f288"}.fa-project-diagram:before{content:"\f542"}.fa-pump-medical:before{content:"\e06a"}.fa-pump-soap:before{content:"\e06b"}.fa-pushed:before{content:"\f3e1"}.fa-puzzle-piece:before{content:"\f12e"}.fa-python:before{content:"\f3e2"}.fa-qq:before{content:"\f1d6"}.fa-qrcode:before{content:"\f029"}.fa-question:before{content:"\f128"}.fa-question-circle:before{content:"\f059"}.fa-quidditch:before{content:"\f458"}.fa-quinscape:before{content:"\f459"}.fa-quora:before{content:"\f2c4"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-quran:before{content:"\f687"}.fa-r-project:before{content:"\f4f7"}.fa-radiation:before{content:"\f7b9"}.fa-radiation-alt:before{content:"\f7ba"}.fa-rainbow:before{content:"\f75b"}.fa-random:before{content:"\f074"}.fa-raspberry-pi:before{content:"\f7bb"}.fa-ravelry:before{content:"\f2d9"}.fa-react:before{content:"\f41b"}.fa-reacteurope:before{content:"\f75d"}.fa-readme:before{content:"\f4d5"}.fa-rebel:before{content:"\f1d0"}.fa-receipt:before{content:"\f543"}.fa-record-vinyl:before{content:"\f8d9"}.fa-recycle:before{content:"\f1b8"}.fa-red-river:before{content:"\f3e3"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-alien:before{content:"\f281"}.fa-reddit-square:before{content:"\f1a2"}.fa-redhat:before{content:"\f7bc"}.fa-redo:before{content:"\f01e"}.fa-redo-alt:before{content:"\f2f9"}.fa-registered:before{content:"\f25d"}.fa-remove-format:before{content:"\f87d"}.fa-renren:before{content:"\f18b"}.fa-reply:before{content:"\f3e5"}.fa-reply-all:before{content:"\f122"}.fa-replyd:before{content:"\f3e6"}.fa-republican:before{content:"\f75e"}.fa-researchgate:before{content:"\f4f8"}.fa-resolving:before{content:"\f3e7"}.fa-restroom:before{content:"\f7bd"}.fa-retweet:before{content:"\f079"}.fa-rev:before{content:"\f5b2"}.fa-ribbon:before{content:"\f4d6"}.fa-ring:before{content:"\f70b"}.fa-road:before{content:"\f018"}.fa-robot:before{content:"\f544"}.fa-rocket:before{content:"\f135"}.fa-rocketchat:before{content:"\f3e8"}.fa-rockrms:before{content:"\f3e9"}.fa-route:before{content:"\f4d7"}.fa-rss:before{content:"\f09e"}.fa-rss-square:before{content:"\f143"}.fa-ruble-sign:before{content:"\f158"}.fa-ruler:before{content:"\f545"}.fa-ruler-combined:before{content:"\f546"}.fa-ruler-horizontal:before{content:"\f547"}.fa-ruler-vertical:before{content:"\f548"}.fa-running:before{content:"\f70c"}.fa-rupee-sign:before{content:"\f156"}.fa-rust:before{content:"\e07a"}.fa-sad-cry:before{content:"\f5b3"}.fa-sad-tear:before{content:"\f5b4"}.fa-safari:before{content:"\f267"}.fa-salesforce:before{content:"\f83b"}.fa-sass:before{content:"\f41e"}.fa-satellite:before{content:"\f7bf"}.fa-satellite-dish:before{content:"\f7c0"}.fa-save:before{content:"\f0c7"}.fa-schlix:before{content:"\f3ea"}.fa-school:before{content:"\f549"}.fa-screwdriver:before{content:"\f54a"}.fa-scribd:before{content:"\f28a"}.fa-scroll:before{content:"\f70e"}.fa-sd-card:before{content:"\f7c2"}.fa-search:before{content:"\f002"}.fa-search-dollar:before{content:"\f688"}.fa-search-location:before{content:"\f689"}.fa-search-minus:before{content:"\f010"}.fa-search-plus:before{content:"\f00e"}.fa-searchengin:before{content:"\f3eb"}.fa-seedling:before{content:"\f4d8"}.fa-sellcast:before{content:"\f2da"}.fa-sellsy:before{content:"\f213"}.fa-server:before{content:"\f233"}.fa-servicestack:before{content:"\f3ec"}.fa-shapes:before{content:"\f61f"}.fa-share:before{content:"\f064"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-share-square:before{content:"\f14d"}.fa-shekel-sign:before{content:"\f20b"}.fa-shield-alt:before{content:"\f3ed"}.fa-shield-virus:before{content:"\e06c"}.fa-ship:before{content:"\f21a"}.fa-shipping-fast:before{content:"\f48b"}.fa-shirtsinbulk:before{content:"\f214"}.fa-shoe-prints:before{content:"\f54b"}.fa-shopify:before{content:"\e057"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-shopping-cart:before{content:"\f07a"}.fa-shopware:before{content:"\f5b5"}.fa-shower:before{content:"\f2cc"}.fa-shuttle-van:before{content:"\f5b6"}.fa-sign:before{content:"\f4d9"}.fa-sign-in-alt:before{content:"\f2f6"}.fa-sign-language:before{content:"\f2a7"}.fa-sign-out-alt:before{content:"\f2f5"}.fa-signal:before{content:"\f012"}.fa-signature:before{content:"\f5b7"}.fa-sim-card:before{content:"\f7c4"}.fa-simplybuilt:before{content:"\f215"}.fa-sink:before{content:"\e06d"}.fa-sistrix:before{content:"\f3ee"}.fa-sitemap:before{content:"\f0e8"}.fa-sith:before{content:"\f512"}.fa-skating:before{content:"\f7c5"}.fa-sketch:before{content:"\f7c6"}.fa-skiing:before{content:"\f7c9"}.fa-skiing-nordic:before{content:"\f7ca"}.fa-skull:before{content:"\f54c"}.fa-skull-crossbones:before{content:"\f714"}.fa-skyatlas:before{content:"\f216"}.fa-skype:before{content:"\f17e"}.fa-slack:before{content:"\f198"}.fa-slack-hash:before{content:"\f3ef"}.fa-slash:before{content:"\f715"}.fa-sleigh:before{content:"\f7cc"}.fa-sliders-h:before{content:"\f1de"}.fa-slideshare:before{content:"\f1e7"}.fa-smile:before{content:"\f118"}.fa-smile-beam:before{content:"\f5b8"}.fa-smile-wink:before{content:"\f4da"}.fa-smog:before{content:"\f75f"}.fa-smoking:before{content:"\f48d"}.fa-smoking-ban:before{content:"\f54d"}.fa-sms:before{content:"\f7cd"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.fa-snowboarding:before{content:"\f7ce"}.fa-snowflake:before{content:"\f2dc"}.fa-snowman:before{content:"\f7d0"}.fa-snowplow:before{content:"\f7d2"}.fa-soap:before{content:"\e06e"}.fa-socks:before{content:"\f696"}.fa-solar-panel:before{content:"\f5ba"}.fa-sort:before{content:"\f0dc"}.fa-sort-alpha-down:before{content:"\f15d"}.fa-sort-alpha-down-alt:before{content:"\f881"}.fa-sort-alpha-up:before{content:"\f15e"}.fa-sort-alpha-up-alt:before{content:"\f882"}.fa-sort-amount-down:before{content:"\f160"}.fa-sort-amount-down-alt:before{content:"\f884"}.fa-sort-amount-up:before{content:"\f161"}.fa-sort-amount-up-alt:before{content:"\f885"}.fa-sort-down:before{content:"\f0dd"}.fa-sort-numeric-down:before{content:"\f162"}.fa-sort-numeric-down-alt:before{content:"\f886"}.fa-sort-numeric-up:before{content:"\f163"}.fa-sort-numeric-up-alt:before{content:"\f887"}.fa-sort-up:before{content:"\f0de"}.fa-soundcloud:before{content:"\f1be"}.fa-sourcetree:before{content:"\f7d3"}.fa-spa:before{content:"\f5bb"}.fa-space-shuttle:before{content:"\f197"}.fa-speakap:before{content:"\f3f3"}.fa-speaker-deck:before{content:"\f83c"}.fa-spell-check:before{content:"\f891"}.fa-spider:before{content:"\f717"}.fa-spinner:before{content:"\f110"}.fa-splotch:before{content:"\f5bc"}.fa-spotify:before{content:"\f1bc"}.fa-spray-can:before{content:"\f5bd"}.fa-square:before{content:"\f0c8"}.fa-square-full:before{content:"\f45c"}.fa-square-root-alt:before{content:"\f698"}.fa-squarespace:before{content:"\f5be"}.fa-stack-exchange:before{content:"\f18d"}.fa-stack-overflow:before{content:"\f16c"}.fa-stackpath:before{content:"\f842"}.fa-stamp:before{content:"\f5bf"}.fa-star:before{content:"\f005"}.fa-star-and-crescent:before{content:"\f699"}.fa-star-half:before{content:"\f089"}.fa-star-half-alt:before{content:"\f5c0"}.fa-star-of-david:before{content:"\f69a"}.fa-star-of-life:before{content:"\f621"}.fa-staylinked:before{content:"\f3f5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-steam-symbol:before{content:"\f3f6"}.fa-step-backward:before{content:"\f048"}.fa-step-forward:before{content:"\f051"}.fa-stethoscope:before{content:"\f0f1"}.fa-sticker-mule:before{content:"\f3f7"}.fa-sticky-note:before{content:"\f249"}.fa-stop:before{content:"\f04d"}.fa-stop-circle:before{content:"\f28d"}.fa-stopwatch:before{content:"\f2f2"}.fa-stopwatch-20:before{content:"\e06f"}.fa-store:before{content:"\f54e"}.fa-store-alt:before{content:"\f54f"}.fa-store-alt-slash:before{content:"\e070"}.fa-store-slash:before{content:"\e071"}.fa-strava:before{content:"\f428"}.fa-stream:before{content:"\f550"}.fa-street-view:before{content:"\f21d"}.fa-strikethrough:before{content:"\f0cc"}.fa-stripe:before{content:"\f429"}.fa-stripe-s:before{content:"\f42a"}.fa-stroopwafel:before{content:"\f551"}.fa-studiovinari:before{content:"\f3f8"}.fa-stumbleupon:before{content:"\f1a4"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-subscript:before{content:"\f12c"}.fa-subway:before{content:"\f239"}.fa-suitcase:before{content:"\f0f2"}.fa-suitcase-rolling:before{content:"\f5c1"}.fa-sun:before{content:"\f185"}.fa-superpowers:before{content:"\f2dd"}.fa-superscript:before{content:"\f12b"}.fa-supple:before{content:"\f3f9"}.fa-surprise:before{content:"\f5c2"}.fa-suse:before{content:"\f7d6"}.fa-swatchbook:before{content:"\f5c3"}.fa-swift:before{content:"\f8e1"}.fa-swimmer:before{content:"\f5c4"}.fa-swimming-pool:before{content:"\f5c5"}.fa-symfony:before{content:"\f83d"}.fa-synagogue:before{content:"\f69b"}.fa-sync:before{content:"\f021"}.fa-sync-alt:before{content:"\f2f1"}.fa-syringe:before{content:"\f48e"}.fa-table:before{content:"\f0ce"}.fa-table-tennis:before{content:"\f45d"}.fa-tablet:before{content:"\f10a"}.fa-tablet-alt:before{content:"\f3fa"}.fa-tablets:before{content:"\f490"}.fa-tachometer-alt:before{content:"\f3fd"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-tape:before{content:"\f4db"}.fa-tasks:before{content:"\f0ae"}.fa-taxi:before{content:"\f1ba"}.fa-teamspeak:before{content:"\f4f9"}.fa-teeth:before{content:"\f62e"}.fa-teeth-open:before{content:"\f62f"}.fa-telegram:before{content:"\f2c6"}.fa-telegram-plane:before{content:"\f3fe"}.fa-temperature-high:before{content:"\f769"}.fa-temperature-low:before{content:"\f76b"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-tenge:before{content:"\f7d7"}.fa-terminal:before{content:"\f120"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-th:before{content:"\f00a"}.fa-th-large:before{content:"\f009"}.fa-th-list:before{content:"\f00b"}.fa-the-red-yeti:before{content:"\f69d"}.fa-theater-masks:before{content:"\f630"}.fa-themeco:before{content:"\f5c6"}.fa-themeisle:before{content:"\f2b2"}.fa-thermometer:before{content:"\f491"}.fa-thermometer-empty:before{content:"\f2cb"}.fa-thermometer-full:before{content:"\f2c7"}.fa-thermometer-half:before{content:"\f2c9"}.fa-thermometer-quarter:before{content:"\f2ca"}.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-think-peaks:before{content:"\f731"}.fa-thumbs-down:before{content:"\f165"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbtack:before{content:"\f08d"}.fa-ticket-alt:before{content:"\f3ff"}.fa-tiktok:before{content:"\e07b"}.fa-times:before{content:"\f00d"}.fa-times-circle:before{content:"\f057"}.fa-tint:before{content:"\f043"}.fa-tint-slash:before{content:"\f5c7"}.fa-tired:before{content:"\f5c8"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-toilet:before{content:"\f7d8"}.fa-toilet-paper:before{content:"\f71e"}.fa-toilet-paper-slash:before{content:"\e072"}.fa-toolbox:before{content:"\f552"}.fa-tools:before{content:"\f7d9"}.fa-tooth:before{content:"\f5c9"}.fa-torah:before{content:"\f6a0"}.fa-torii-gate:before{content:"\f6a1"}.fa-tractor:before{content:"\f722"}.fa-trade-federation:before{content:"\f513"}.fa-trademark:before{content:"\f25c"}.fa-traffic-light:before{content:"\f637"}.fa-trailer:before{content:"\e041"}.fa-train:before{content:"\f238"}.fa-tram:before{content:"\f7da"}.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-trash:before{content:"\f1f8"}.fa-trash-alt:before{content:"\f2ed"}.fa-trash-restore:before{content:"\f829"}.fa-trash-restore-alt:before{content:"\f82a"}.fa-tree:before{content:"\f1bb"}.fa-trello:before{content:"\f181"}.fa-tripadvisor:before{content:"\f262"}.fa-trophy:before{content:"\f091"}.fa-truck:before{content:"\f0d1"}.fa-truck-loading:before{content:"\f4de"}.fa-truck-monster:before{content:"\f63b"}.fa-truck-moving:before{content:"\f4df"}.fa-truck-pickup:before{content:"\f63c"}.fa-tshirt:before{content:"\f553"}.fa-tty:before{content:"\f1e4"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-tv:before{content:"\f26c"}.fa-twitch:before{content:"\f1e8"}.fa-twitter:before{content:"\f099"}.fa-twitter-square:before{content:"\f081"}.fa-typo3:before{content:"\f42b"}.fa-uber:before{content:"\f402"}.fa-ubuntu:before{content:"\f7df"}.fa-uikit:before{content:"\f403"}.fa-umbraco:before{content:"\f8e8"}.fa-umbrella:before{content:"\f0e9"}.fa-umbrella-beach:before{content:"\f5ca"}.fa-uncharted:before{content:"\e084"}.fa-underline:before{content:"\f0cd"}.fa-undo:before{content:"\f0e2"}.fa-undo-alt:before{content:"\f2ea"}.fa-uniregistry:before{content:"\f404"}.fa-unity:before{content:"\e049"}.fa-universal-access:before{content:"\f29a"}.fa-university:before{content:"\f19c"}.fa-unlink:before{content:"\f127"}.fa-unlock:before{content:"\f09c"}.fa-unlock-alt:before{content:"\f13e"}.fa-unsplash:before{content:"\e07c"}.fa-untappd:before{content:"\f405"}.fa-upload:before{content:"\f093"}.fa-ups:before{content:"\f7e0"}.fa-usb:before{content:"\f287"}.fa-user:before{content:"\f007"}.fa-user-alt:before{content:"\f406"}.fa-user-alt-slash:before{content:"\f4fa"}.fa-user-astronaut:before{content:"\f4fb"}.fa-user-check:before{content:"\f4fc"}.fa-user-circle:before{content:"\f2bd"}.fa-user-clock:before{content:"\f4fd"}.fa-user-cog:before{content:"\f4fe"}.fa-user-edit:before{content:"\f4ff"}.fa-user-friends:before{content:"\f500"}.fa-user-graduate:before{content:"\f501"}.fa-user-injured:before{content:"\f728"}.fa-user-lock:before{content:"\f502"}.fa-user-md:before{content:"\f0f0"}.fa-user-minus:before{content:"\f503"}.fa-user-ninja:before{content:"\f504"}.fa-user-nurse:before{content:"\f82f"}.fa-user-plus:before{content:"\f234"}.fa-user-secret:before{content:"\f21b"}.fa-user-shield:before{content:"\f505"}.fa-user-slash:before{content:"\f506"}.fa-user-tag:before{content:"\f507"}.fa-user-tie:before{content:"\f508"}.fa-user-times:before{content:"\f235"}.fa-users:before{content:"\f0c0"}.fa-users-cog:before{content:"\f509"}.fa-users-slash:before{content:"\e073"}.fa-usps:before{content:"\f7e1"}.fa-ussunnah:before{content:"\f407"}.fa-utensil-spoon:before{content:"\f2e5"}.fa-utensils:before{content:"\f2e7"}.fa-vaadin:before{content:"\f408"}.fa-vector-square:before{content:"\f5cb"}.fa-venus:before{content:"\f221"}.fa-venus-double:before{content:"\f226"}.fa-venus-mars:before{content:"\f228"}.fa-vest:before{content:"\e085"}.fa-vest-patches:before{content:"\e086"}.fa-viacoin:before{content:"\f237"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-vial:before{content:"\f492"}.fa-vials:before{content:"\f493"}.fa-viber:before{content:"\f409"}.fa-video:before{content:"\f03d"}.fa-video-slash:before{content:"\f4e2"}.fa-vihara:before{content:"\f6a7"}.fa-vimeo:before{content:"\f40a"}.fa-vimeo-square:before{content:"\f194"}.fa-vimeo-v:before{content:"\f27d"}.fa-vine:before{content:"\f1ca"}.fa-virus:before{content:"\e074"}.fa-virus-slash:before{content:"\e075"}.fa-viruses:before{content:"\e076"}.fa-vk:before{content:"\f189"}.fa-vnv:before{content:"\f40b"}.fa-voicemail:before{content:"\f897"}.fa-volleyball-ball:before{content:"\f45f"}.fa-volume-down:before{content:"\f027"}.fa-volume-mute:before{content:"\f6a9"}.fa-volume-off:before{content:"\f026"}.fa-volume-up:before{content:"\f028"}.fa-vote-yea:before{content:"\f772"}.fa-vr-cardboard:before{content:"\f729"}.fa-vuejs:before{content:"\f41f"}.fa-walking:before{content:"\f554"}.fa-wallet:before{content:"\f555"}.fa-warehouse:before{content:"\f494"}.fa-watchman-monitoring:before{content:"\e087"}.fa-water:before{content:"\f773"}.fa-wave-square:before{content:"\f83e"}.fa-waze:before{content:"\f83f"}.fa-weebly:before{content:"\f5cc"}.fa-weibo:before{content:"\f18a"}.fa-weight:before{content:"\f496"}.fa-weight-hanging:before{content:"\f5cd"}.fa-weixin:before{content:"\f1d7"}.fa-whatsapp:before{content:"\f232"}.fa-whatsapp-square:before{content:"\f40c"}.fa-wheelchair:before{content:"\f193"}.fa-whmcs:before{content:"\f40d"}.fa-wifi:before{content:"\f1eb"}.fa-wikipedia-w:before{content:"\f266"}.fa-wind:before{content:"\f72e"}.fa-window-close:before{content:"\f410"}.fa-window-maximize:before{content:"\f2d0"}.fa-window-minimize:before{content:"\f2d1"}.fa-window-restore:before{content:"\f2d2"}.fa-windows:before{content:"\f17a"}.fa-wine-bottle:before{content:"\f72f"}.fa-wine-glass:before{content:"\f4e3"}.fa-wine-glass-alt:before{content:"\f5ce"}.fa-wix:before{content:"\f5cf"}.fa-wizards-of-the-coast:before{content:"\f730"}.fa-wodu:before{content:"\e088"}.fa-wolf-pack-battalion:before{content:"\f514"}.fa-won-sign:before{content:"\f159"}.fa-wordpress:before{content:"\f19a"}.fa-wordpress-simple:before{content:"\f411"}.fa-wpbeginner:before{content:"\f297"}.fa-wpexplorer:before{content:"\f2de"}.fa-wpforms:before{content:"\f298"}.fa-wpressr:before{content:"\f3e4"}.fa-wrench:before{content:"\f0ad"}.fa-x-ray:before{content:"\f497"}.fa-xbox:before{content:"\f412"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-y-combinator:before{content:"\f23b"}.fa-yahoo:before{content:"\f19e"}.fa-yammer:before{content:"\f840"}.fa-yandex:before{content:"\f413"}.fa-yandex-international:before{content:"\f414"}.fa-yarn:before{content:"\f7e3"}.fa-yelp:before{content:"\f1e9"}.fa-yen-sign:before{content:"\f157"}.fa-yin-yang:before{content:"\f6ad"}.fa-yoast:before{content:"\f2b1"}.fa-youtube:before{content:"\f167"}.fa-youtube-square:before{content:"\f431"}.fa-zhihu:before{content:"\f63f"}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}@font-face{font-family:"Font Awesome 5 Brands";font-style:normal;font-weight:400;font-display:block;src:url(../webfonts/fa-brands-400.eot);src:url(../webfonts/fa-brands-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.woff) format("woff"),url(../webfonts/fa-brands-400.ttf) format("truetype"),url(../webfonts/fa-brands-400.svg#fontawesome) format("svg")}.fab{font-family:"Font Awesome 5 Brands"}@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:400;font-display:block;src:url(../webfonts/fa-regular-400.eot);src:url(../webfonts/fa-regular-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.woff) format("woff"),url(../webfonts/fa-regular-400.ttf) format("truetype"),url(../webfonts/fa-regular-400.svg#fontawesome) format("svg")}.fab,.far{font-weight:400}@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:900;font-display:block;src:url(../webfonts/fa-solid-900.eot);src:url(../webfonts/fa-solid-900.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.woff) format("woff"),url(../webfonts/fa-solid-900.ttf) format("truetype"),url(../webfonts/fa-solid-900.svg#fontawesome) format("svg")}.fa,.far,.fas{font-family:"Font Awesome 5 Free"}.fa,.fas{font-weight:900}assets/lib/font-awesome/css/fontawesome.css000064400000214466151327220410015063 0ustar00/*!
 * Font Awesome Free 5.15.3 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 */
.fa,
.fas,
.far,
.fal,
.fad,
.fab {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1; }

.fa-lg {
  font-size: 1.33333em;
  line-height: 0.75em;
  vertical-align: -.0667em; }

.fa-xs {
  font-size: .75em; }

.fa-sm {
  font-size: .875em; }

.fa-1x {
  font-size: 1em; }

.fa-2x {
  font-size: 2em; }

.fa-3x {
  font-size: 3em; }

.fa-4x {
  font-size: 4em; }

.fa-5x {
  font-size: 5em; }

.fa-6x {
  font-size: 6em; }

.fa-7x {
  font-size: 7em; }

.fa-8x {
  font-size: 8em; }

.fa-9x {
  font-size: 9em; }

.fa-10x {
  font-size: 10em; }

.fa-fw {
  text-align: center;
  width: 1.25em; }

.fa-ul {
  list-style-type: none;
  margin-left: 2.5em;
  padding-left: 0; }
  .fa-ul > li {
    position: relative; }

.fa-li {
  left: -2em;
  position: absolute;
  text-align: center;
  width: 2em;
  line-height: inherit; }

.fa-border {
  border: solid 0.08em #eee;
  border-radius: .1em;
  padding: .2em .25em .15em; }

.fa-pull-left {
  float: left; }

.fa-pull-right {
  float: right; }

.fa.fa-pull-left,
.fas.fa-pull-left,
.far.fa-pull-left,
.fal.fa-pull-left,
.fab.fa-pull-left {
  margin-right: .3em; }

.fa.fa-pull-right,
.fas.fa-pull-right,
.far.fa-pull-right,
.fal.fa-pull-right,
.fab.fa-pull-right {
  margin-left: .3em; }

.fa-spin {
  -webkit-animation: fa-spin 2s infinite linear;
          animation: fa-spin 2s infinite linear; }

.fa-pulse {
  -webkit-animation: fa-spin 1s infinite steps(8);
          animation: fa-spin 1s infinite steps(8); }

@-webkit-keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

@keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

.fa-rotate-90 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg); }

.fa-rotate-180 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg); }

.fa-rotate-270 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
  -webkit-transform: rotate(270deg);
          transform: rotate(270deg); }

.fa-flip-horizontal {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1); }

.fa-flip-vertical {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
  -webkit-transform: scale(1, -1);
          transform: scale(1, -1); }

.fa-flip-both, .fa-flip-horizontal.fa-flip-vertical {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
  -webkit-transform: scale(-1, -1);
          transform: scale(-1, -1); }

:root .fa-rotate-90,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-flip-horizontal,
:root .fa-flip-vertical,
:root .fa-flip-both {
  -webkit-filter: none;
          filter: none; }

.fa-stack {
  display: inline-block;
  height: 2em;
  line-height: 2em;
  position: relative;
  vertical-align: middle;
  width: 2.5em; }

.fa-stack-1x,
.fa-stack-2x {
  left: 0;
  position: absolute;
  text-align: center;
  width: 100%; }

.fa-stack-1x {
  line-height: inherit; }

.fa-stack-2x {
  font-size: 2em; }

.fa-inverse {
  color: #fff; }

/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
readers do not read off random characters that represent icons */
.fa-500px:before {
  content: "\f26e"; }

.fa-accessible-icon:before {
  content: "\f368"; }

.fa-accusoft:before {
  content: "\f369"; }

.fa-acquisitions-incorporated:before {
  content: "\f6af"; }

.fa-ad:before {
  content: "\f641"; }

.fa-address-book:before {
  content: "\f2b9"; }

.fa-address-card:before {
  content: "\f2bb"; }

.fa-adjust:before {
  content: "\f042"; }

.fa-adn:before {
  content: "\f170"; }

.fa-adversal:before {
  content: "\f36a"; }

.fa-affiliatetheme:before {
  content: "\f36b"; }

.fa-air-freshener:before {
  content: "\f5d0"; }

.fa-airbnb:before {
  content: "\f834"; }

.fa-algolia:before {
  content: "\f36c"; }

.fa-align-center:before {
  content: "\f037"; }

.fa-align-justify:before {
  content: "\f039"; }

.fa-align-left:before {
  content: "\f036"; }

.fa-align-right:before {
  content: "\f038"; }

.fa-alipay:before {
  content: "\f642"; }

.fa-allergies:before {
  content: "\f461"; }

.fa-amazon:before {
  content: "\f270"; }

.fa-amazon-pay:before {
  content: "\f42c"; }

.fa-ambulance:before {
  content: "\f0f9"; }

.fa-american-sign-language-interpreting:before {
  content: "\f2a3"; }

.fa-amilia:before {
  content: "\f36d"; }

.fa-anchor:before {
  content: "\f13d"; }

.fa-android:before {
  content: "\f17b"; }

.fa-angellist:before {
  content: "\f209"; }

.fa-angle-double-down:before {
  content: "\f103"; }

.fa-angle-double-left:before {
  content: "\f100"; }

.fa-angle-double-right:before {
  content: "\f101"; }

.fa-angle-double-up:before {
  content: "\f102"; }

.fa-angle-down:before {
  content: "\f107"; }

.fa-angle-left:before {
  content: "\f104"; }

.fa-angle-right:before {
  content: "\f105"; }

.fa-angle-up:before {
  content: "\f106"; }

.fa-angry:before {
  content: "\f556"; }

.fa-angrycreative:before {
  content: "\f36e"; }

.fa-angular:before {
  content: "\f420"; }

.fa-ankh:before {
  content: "\f644"; }

.fa-app-store:before {
  content: "\f36f"; }

.fa-app-store-ios:before {
  content: "\f370"; }

.fa-apper:before {
  content: "\f371"; }

.fa-apple:before {
  content: "\f179"; }

.fa-apple-alt:before {
  content: "\f5d1"; }

.fa-apple-pay:before {
  content: "\f415"; }

.fa-archive:before {
  content: "\f187"; }

.fa-archway:before {
  content: "\f557"; }

.fa-arrow-alt-circle-down:before {
  content: "\f358"; }

.fa-arrow-alt-circle-left:before {
  content: "\f359"; }

.fa-arrow-alt-circle-right:before {
  content: "\f35a"; }

.fa-arrow-alt-circle-up:before {
  content: "\f35b"; }

.fa-arrow-circle-down:before {
  content: "\f0ab"; }

.fa-arrow-circle-left:before {
  content: "\f0a8"; }

.fa-arrow-circle-right:before {
  content: "\f0a9"; }

.fa-arrow-circle-up:before {
  content: "\f0aa"; }

.fa-arrow-down:before {
  content: "\f063"; }

.fa-arrow-left:before {
  content: "\f060"; }

.fa-arrow-right:before {
  content: "\f061"; }

.fa-arrow-up:before {
  content: "\f062"; }

.fa-arrows-alt:before {
  content: "\f0b2"; }

.fa-arrows-alt-h:before {
  content: "\f337"; }

.fa-arrows-alt-v:before {
  content: "\f338"; }

.fa-artstation:before {
  content: "\f77a"; }

.fa-assistive-listening-systems:before {
  content: "\f2a2"; }

.fa-asterisk:before {
  content: "\f069"; }

.fa-asymmetrik:before {
  content: "\f372"; }

.fa-at:before {
  content: "\f1fa"; }

.fa-atlas:before {
  content: "\f558"; }

.fa-atlassian:before {
  content: "\f77b"; }

.fa-atom:before {
  content: "\f5d2"; }

.fa-audible:before {
  content: "\f373"; }

.fa-audio-description:before {
  content: "\f29e"; }

.fa-autoprefixer:before {
  content: "\f41c"; }

.fa-avianex:before {
  content: "\f374"; }

.fa-aviato:before {
  content: "\f421"; }

.fa-award:before {
  content: "\f559"; }

.fa-aws:before {
  content: "\f375"; }

.fa-baby:before {
  content: "\f77c"; }

.fa-baby-carriage:before {
  content: "\f77d"; }

.fa-backspace:before {
  content: "\f55a"; }

.fa-backward:before {
  content: "\f04a"; }

.fa-bacon:before {
  content: "\f7e5"; }

.fa-bacteria:before {
  content: "\e059"; }

.fa-bacterium:before {
  content: "\e05a"; }

.fa-bahai:before {
  content: "\f666"; }

.fa-balance-scale:before {
  content: "\f24e"; }

.fa-balance-scale-left:before {
  content: "\f515"; }

.fa-balance-scale-right:before {
  content: "\f516"; }

.fa-ban:before {
  content: "\f05e"; }

.fa-band-aid:before {
  content: "\f462"; }

.fa-bandcamp:before {
  content: "\f2d5"; }

.fa-barcode:before {
  content: "\f02a"; }

.fa-bars:before {
  content: "\f0c9"; }

.fa-baseball-ball:before {
  content: "\f433"; }

.fa-basketball-ball:before {
  content: "\f434"; }

.fa-bath:before {
  content: "\f2cd"; }

.fa-battery-empty:before {
  content: "\f244"; }

.fa-battery-full:before {
  content: "\f240"; }

.fa-battery-half:before {
  content: "\f242"; }

.fa-battery-quarter:before {
  content: "\f243"; }

.fa-battery-three-quarters:before {
  content: "\f241"; }

.fa-battle-net:before {
  content: "\f835"; }

.fa-bed:before {
  content: "\f236"; }

.fa-beer:before {
  content: "\f0fc"; }

.fa-behance:before {
  content: "\f1b4"; }

.fa-behance-square:before {
  content: "\f1b5"; }

.fa-bell:before {
  content: "\f0f3"; }

.fa-bell-slash:before {
  content: "\f1f6"; }

.fa-bezier-curve:before {
  content: "\f55b"; }

.fa-bible:before {
  content: "\f647"; }

.fa-bicycle:before {
  content: "\f206"; }

.fa-biking:before {
  content: "\f84a"; }

.fa-bimobject:before {
  content: "\f378"; }

.fa-binoculars:before {
  content: "\f1e5"; }

.fa-biohazard:before {
  content: "\f780"; }

.fa-birthday-cake:before {
  content: "\f1fd"; }

.fa-bitbucket:before {
  content: "\f171"; }

.fa-bitcoin:before {
  content: "\f379"; }

.fa-bity:before {
  content: "\f37a"; }

.fa-black-tie:before {
  content: "\f27e"; }

.fa-blackberry:before {
  content: "\f37b"; }

.fa-blender:before {
  content: "\f517"; }

.fa-blender-phone:before {
  content: "\f6b6"; }

.fa-blind:before {
  content: "\f29d"; }

.fa-blog:before {
  content: "\f781"; }

.fa-blogger:before {
  content: "\f37c"; }

.fa-blogger-b:before {
  content: "\f37d"; }

.fa-bluetooth:before {
  content: "\f293"; }

.fa-bluetooth-b:before {
  content: "\f294"; }

.fa-bold:before {
  content: "\f032"; }

.fa-bolt:before {
  content: "\f0e7"; }

.fa-bomb:before {
  content: "\f1e2"; }

.fa-bone:before {
  content: "\f5d7"; }

.fa-bong:before {
  content: "\f55c"; }

.fa-book:before {
  content: "\f02d"; }

.fa-book-dead:before {
  content: "\f6b7"; }

.fa-book-medical:before {
  content: "\f7e6"; }

.fa-book-open:before {
  content: "\f518"; }

.fa-book-reader:before {
  content: "\f5da"; }

.fa-bookmark:before {
  content: "\f02e"; }

.fa-bootstrap:before {
  content: "\f836"; }

.fa-border-all:before {
  content: "\f84c"; }

.fa-border-none:before {
  content: "\f850"; }

.fa-border-style:before {
  content: "\f853"; }

.fa-bowling-ball:before {
  content: "\f436"; }

.fa-box:before {
  content: "\f466"; }

.fa-box-open:before {
  content: "\f49e"; }

.fa-box-tissue:before {
  content: "\e05b"; }

.fa-boxes:before {
  content: "\f468"; }

.fa-braille:before {
  content: "\f2a1"; }

.fa-brain:before {
  content: "\f5dc"; }

.fa-bread-slice:before {
  content: "\f7ec"; }

.fa-briefcase:before {
  content: "\f0b1"; }

.fa-briefcase-medical:before {
  content: "\f469"; }

.fa-broadcast-tower:before {
  content: "\f519"; }

.fa-broom:before {
  content: "\f51a"; }

.fa-brush:before {
  content: "\f55d"; }

.fa-btc:before {
  content: "\f15a"; }

.fa-buffer:before {
  content: "\f837"; }

.fa-bug:before {
  content: "\f188"; }

.fa-building:before {
  content: "\f1ad"; }

.fa-bullhorn:before {
  content: "\f0a1"; }

.fa-bullseye:before {
  content: "\f140"; }

.fa-burn:before {
  content: "\f46a"; }

.fa-buromobelexperte:before {
  content: "\f37f"; }

.fa-bus:before {
  content: "\f207"; }

.fa-bus-alt:before {
  content: "\f55e"; }

.fa-business-time:before {
  content: "\f64a"; }

.fa-buy-n-large:before {
  content: "\f8a6"; }

.fa-buysellads:before {
  content: "\f20d"; }

.fa-calculator:before {
  content: "\f1ec"; }

.fa-calendar:before {
  content: "\f133"; }

.fa-calendar-alt:before {
  content: "\f073"; }

.fa-calendar-check:before {
  content: "\f274"; }

.fa-calendar-day:before {
  content: "\f783"; }

.fa-calendar-minus:before {
  content: "\f272"; }

.fa-calendar-plus:before {
  content: "\f271"; }

.fa-calendar-times:before {
  content: "\f273"; }

.fa-calendar-week:before {
  content: "\f784"; }

.fa-camera:before {
  content: "\f030"; }

.fa-camera-retro:before {
  content: "\f083"; }

.fa-campground:before {
  content: "\f6bb"; }

.fa-canadian-maple-leaf:before {
  content: "\f785"; }

.fa-candy-cane:before {
  content: "\f786"; }

.fa-cannabis:before {
  content: "\f55f"; }

.fa-capsules:before {
  content: "\f46b"; }

.fa-car:before {
  content: "\f1b9"; }

.fa-car-alt:before {
  content: "\f5de"; }

.fa-car-battery:before {
  content: "\f5df"; }

.fa-car-crash:before {
  content: "\f5e1"; }

.fa-car-side:before {
  content: "\f5e4"; }

.fa-caravan:before {
  content: "\f8ff"; }

.fa-caret-down:before {
  content: "\f0d7"; }

.fa-caret-left:before {
  content: "\f0d9"; }

.fa-caret-right:before {
  content: "\f0da"; }

.fa-caret-square-down:before {
  content: "\f150"; }

.fa-caret-square-left:before {
  content: "\f191"; }

.fa-caret-square-right:before {
  content: "\f152"; }

.fa-caret-square-up:before {
  content: "\f151"; }

.fa-caret-up:before {
  content: "\f0d8"; }

.fa-carrot:before {
  content: "\f787"; }

.fa-cart-arrow-down:before {
  content: "\f218"; }

.fa-cart-plus:before {
  content: "\f217"; }

.fa-cash-register:before {
  content: "\f788"; }

.fa-cat:before {
  content: "\f6be"; }

.fa-cc-amazon-pay:before {
  content: "\f42d"; }

.fa-cc-amex:before {
  content: "\f1f3"; }

.fa-cc-apple-pay:before {
  content: "\f416"; }

.fa-cc-diners-club:before {
  content: "\f24c"; }

.fa-cc-discover:before {
  content: "\f1f2"; }

.fa-cc-jcb:before {
  content: "\f24b"; }

.fa-cc-mastercard:before {
  content: "\f1f1"; }

.fa-cc-paypal:before {
  content: "\f1f4"; }

.fa-cc-stripe:before {
  content: "\f1f5"; }

.fa-cc-visa:before {
  content: "\f1f0"; }

.fa-centercode:before {
  content: "\f380"; }

.fa-centos:before {
  content: "\f789"; }

.fa-certificate:before {
  content: "\f0a3"; }

.fa-chair:before {
  content: "\f6c0"; }

.fa-chalkboard:before {
  content: "\f51b"; }

.fa-chalkboard-teacher:before {
  content: "\f51c"; }

.fa-charging-station:before {
  content: "\f5e7"; }

.fa-chart-area:before {
  content: "\f1fe"; }

.fa-chart-bar:before {
  content: "\f080"; }

.fa-chart-line:before {
  content: "\f201"; }

.fa-chart-pie:before {
  content: "\f200"; }

.fa-check:before {
  content: "\f00c"; }

.fa-check-circle:before {
  content: "\f058"; }

.fa-check-double:before {
  content: "\f560"; }

.fa-check-square:before {
  content: "\f14a"; }

.fa-cheese:before {
  content: "\f7ef"; }

.fa-chess:before {
  content: "\f439"; }

.fa-chess-bishop:before {
  content: "\f43a"; }

.fa-chess-board:before {
  content: "\f43c"; }

.fa-chess-king:before {
  content: "\f43f"; }

.fa-chess-knight:before {
  content: "\f441"; }

.fa-chess-pawn:before {
  content: "\f443"; }

.fa-chess-queen:before {
  content: "\f445"; }

.fa-chess-rook:before {
  content: "\f447"; }

.fa-chevron-circle-down:before {
  content: "\f13a"; }

.fa-chevron-circle-left:before {
  content: "\f137"; }

.fa-chevron-circle-right:before {
  content: "\f138"; }

.fa-chevron-circle-up:before {
  content: "\f139"; }

.fa-chevron-down:before {
  content: "\f078"; }

.fa-chevron-left:before {
  content: "\f053"; }

.fa-chevron-right:before {
  content: "\f054"; }

.fa-chevron-up:before {
  content: "\f077"; }

.fa-child:before {
  content: "\f1ae"; }

.fa-chrome:before {
  content: "\f268"; }

.fa-chromecast:before {
  content: "\f838"; }

.fa-church:before {
  content: "\f51d"; }

.fa-circle:before {
  content: "\f111"; }

.fa-circle-notch:before {
  content: "\f1ce"; }

.fa-city:before {
  content: "\f64f"; }

.fa-clinic-medical:before {
  content: "\f7f2"; }

.fa-clipboard:before {
  content: "\f328"; }

.fa-clipboard-check:before {
  content: "\f46c"; }

.fa-clipboard-list:before {
  content: "\f46d"; }

.fa-clock:before {
  content: "\f017"; }

.fa-clone:before {
  content: "\f24d"; }

.fa-closed-captioning:before {
  content: "\f20a"; }

.fa-cloud:before {
  content: "\f0c2"; }

.fa-cloud-download-alt:before {
  content: "\f381"; }

.fa-cloud-meatball:before {
  content: "\f73b"; }

.fa-cloud-moon:before {
  content: "\f6c3"; }

.fa-cloud-moon-rain:before {
  content: "\f73c"; }

.fa-cloud-rain:before {
  content: "\f73d"; }

.fa-cloud-showers-heavy:before {
  content: "\f740"; }

.fa-cloud-sun:before {
  content: "\f6c4"; }

.fa-cloud-sun-rain:before {
  content: "\f743"; }

.fa-cloud-upload-alt:before {
  content: "\f382"; }

.fa-cloudflare:before {
  content: "\e07d"; }

.fa-cloudscale:before {
  content: "\f383"; }

.fa-cloudsmith:before {
  content: "\f384"; }

.fa-cloudversify:before {
  content: "\f385"; }

.fa-cocktail:before {
  content: "\f561"; }

.fa-code:before {
  content: "\f121"; }

.fa-code-branch:before {
  content: "\f126"; }

.fa-codepen:before {
  content: "\f1cb"; }

.fa-codiepie:before {
  content: "\f284"; }

.fa-coffee:before {
  content: "\f0f4"; }

.fa-cog:before {
  content: "\f013"; }

.fa-cogs:before {
  content: "\f085"; }

.fa-coins:before {
  content: "\f51e"; }

.fa-columns:before {
  content: "\f0db"; }

.fa-comment:before {
  content: "\f075"; }

.fa-comment-alt:before {
  content: "\f27a"; }

.fa-comment-dollar:before {
  content: "\f651"; }

.fa-comment-dots:before {
  content: "\f4ad"; }

.fa-comment-medical:before {
  content: "\f7f5"; }

.fa-comment-slash:before {
  content: "\f4b3"; }

.fa-comments:before {
  content: "\f086"; }

.fa-comments-dollar:before {
  content: "\f653"; }

.fa-compact-disc:before {
  content: "\f51f"; }

.fa-compass:before {
  content: "\f14e"; }

.fa-compress:before {
  content: "\f066"; }

.fa-compress-alt:before {
  content: "\f422"; }

.fa-compress-arrows-alt:before {
  content: "\f78c"; }

.fa-concierge-bell:before {
  content: "\f562"; }

.fa-confluence:before {
  content: "\f78d"; }

.fa-connectdevelop:before {
  content: "\f20e"; }

.fa-contao:before {
  content: "\f26d"; }

.fa-cookie:before {
  content: "\f563"; }

.fa-cookie-bite:before {
  content: "\f564"; }

.fa-copy:before {
  content: "\f0c5"; }

.fa-copyright:before {
  content: "\f1f9"; }

.fa-cotton-bureau:before {
  content: "\f89e"; }

.fa-couch:before {
  content: "\f4b8"; }

.fa-cpanel:before {
  content: "\f388"; }

.fa-creative-commons:before {
  content: "\f25e"; }

.fa-creative-commons-by:before {
  content: "\f4e7"; }

.fa-creative-commons-nc:before {
  content: "\f4e8"; }

.fa-creative-commons-nc-eu:before {
  content: "\f4e9"; }

.fa-creative-commons-nc-jp:before {
  content: "\f4ea"; }

.fa-creative-commons-nd:before {
  content: "\f4eb"; }

.fa-creative-commons-pd:before {
  content: "\f4ec"; }

.fa-creative-commons-pd-alt:before {
  content: "\f4ed"; }

.fa-creative-commons-remix:before {
  content: "\f4ee"; }

.fa-creative-commons-sa:before {
  content: "\f4ef"; }

.fa-creative-commons-sampling:before {
  content: "\f4f0"; }

.fa-creative-commons-sampling-plus:before {
  content: "\f4f1"; }

.fa-creative-commons-share:before {
  content: "\f4f2"; }

.fa-creative-commons-zero:before {
  content: "\f4f3"; }

.fa-credit-card:before {
  content: "\f09d"; }

.fa-critical-role:before {
  content: "\f6c9"; }

.fa-crop:before {
  content: "\f125"; }

.fa-crop-alt:before {
  content: "\f565"; }

.fa-cross:before {
  content: "\f654"; }

.fa-crosshairs:before {
  content: "\f05b"; }

.fa-crow:before {
  content: "\f520"; }

.fa-crown:before {
  content: "\f521"; }

.fa-crutch:before {
  content: "\f7f7"; }

.fa-css3:before {
  content: "\f13c"; }

.fa-css3-alt:before {
  content: "\f38b"; }

.fa-cube:before {
  content: "\f1b2"; }

.fa-cubes:before {
  content: "\f1b3"; }

.fa-cut:before {
  content: "\f0c4"; }

.fa-cuttlefish:before {
  content: "\f38c"; }

.fa-d-and-d:before {
  content: "\f38d"; }

.fa-d-and-d-beyond:before {
  content: "\f6ca"; }

.fa-dailymotion:before {
  content: "\e052"; }

.fa-dashcube:before {
  content: "\f210"; }

.fa-database:before {
  content: "\f1c0"; }

.fa-deaf:before {
  content: "\f2a4"; }

.fa-deezer:before {
  content: "\e077"; }

.fa-delicious:before {
  content: "\f1a5"; }

.fa-democrat:before {
  content: "\f747"; }

.fa-deploydog:before {
  content: "\f38e"; }

.fa-deskpro:before {
  content: "\f38f"; }

.fa-desktop:before {
  content: "\f108"; }

.fa-dev:before {
  content: "\f6cc"; }

.fa-deviantart:before {
  content: "\f1bd"; }

.fa-dharmachakra:before {
  content: "\f655"; }

.fa-dhl:before {
  content: "\f790"; }

.fa-diagnoses:before {
  content: "\f470"; }

.fa-diaspora:before {
  content: "\f791"; }

.fa-dice:before {
  content: "\f522"; }

.fa-dice-d20:before {
  content: "\f6cf"; }

.fa-dice-d6:before {
  content: "\f6d1"; }

.fa-dice-five:before {
  content: "\f523"; }

.fa-dice-four:before {
  content: "\f524"; }

.fa-dice-one:before {
  content: "\f525"; }

.fa-dice-six:before {
  content: "\f526"; }

.fa-dice-three:before {
  content: "\f527"; }

.fa-dice-two:before {
  content: "\f528"; }

.fa-digg:before {
  content: "\f1a6"; }

.fa-digital-ocean:before {
  content: "\f391"; }

.fa-digital-tachograph:before {
  content: "\f566"; }

.fa-directions:before {
  content: "\f5eb"; }

.fa-discord:before {
  content: "\f392"; }

.fa-discourse:before {
  content: "\f393"; }

.fa-disease:before {
  content: "\f7fa"; }

.fa-divide:before {
  content: "\f529"; }

.fa-dizzy:before {
  content: "\f567"; }

.fa-dna:before {
  content: "\f471"; }

.fa-dochub:before {
  content: "\f394"; }

.fa-docker:before {
  content: "\f395"; }

.fa-dog:before {
  content: "\f6d3"; }

.fa-dollar-sign:before {
  content: "\f155"; }

.fa-dolly:before {
  content: "\f472"; }

.fa-dolly-flatbed:before {
  content: "\f474"; }

.fa-donate:before {
  content: "\f4b9"; }

.fa-door-closed:before {
  content: "\f52a"; }

.fa-door-open:before {
  content: "\f52b"; }

.fa-dot-circle:before {
  content: "\f192"; }

.fa-dove:before {
  content: "\f4ba"; }

.fa-download:before {
  content: "\f019"; }

.fa-draft2digital:before {
  content: "\f396"; }

.fa-drafting-compass:before {
  content: "\f568"; }

.fa-dragon:before {
  content: "\f6d5"; }

.fa-draw-polygon:before {
  content: "\f5ee"; }

.fa-dribbble:before {
  content: "\f17d"; }

.fa-dribbble-square:before {
  content: "\f397"; }

.fa-dropbox:before {
  content: "\f16b"; }

.fa-drum:before {
  content: "\f569"; }

.fa-drum-steelpan:before {
  content: "\f56a"; }

.fa-drumstick-bite:before {
  content: "\f6d7"; }

.fa-drupal:before {
  content: "\f1a9"; }

.fa-dumbbell:before {
  content: "\f44b"; }

.fa-dumpster:before {
  content: "\f793"; }

.fa-dumpster-fire:before {
  content: "\f794"; }

.fa-dungeon:before {
  content: "\f6d9"; }

.fa-dyalog:before {
  content: "\f399"; }

.fa-earlybirds:before {
  content: "\f39a"; }

.fa-ebay:before {
  content: "\f4f4"; }

.fa-edge:before {
  content: "\f282"; }

.fa-edge-legacy:before {
  content: "\e078"; }

.fa-edit:before {
  content: "\f044"; }

.fa-egg:before {
  content: "\f7fb"; }

.fa-eject:before {
  content: "\f052"; }

.fa-elementor:before {
  content: "\f430"; }

.fa-ellipsis-h:before {
  content: "\f141"; }

.fa-ellipsis-v:before {
  content: "\f142"; }

.fa-ello:before {
  content: "\f5f1"; }

.fa-ember:before {
  content: "\f423"; }

.fa-empire:before {
  content: "\f1d1"; }

.fa-envelope:before {
  content: "\f0e0"; }

.fa-envelope-open:before {
  content: "\f2b6"; }

.fa-envelope-open-text:before {
  content: "\f658"; }

.fa-envelope-square:before {
  content: "\f199"; }

.fa-envira:before {
  content: "\f299"; }

.fa-equals:before {
  content: "\f52c"; }

.fa-eraser:before {
  content: "\f12d"; }

.fa-erlang:before {
  content: "\f39d"; }

.fa-ethereum:before {
  content: "\f42e"; }

.fa-ethernet:before {
  content: "\f796"; }

.fa-etsy:before {
  content: "\f2d7"; }

.fa-euro-sign:before {
  content: "\f153"; }

.fa-evernote:before {
  content: "\f839"; }

.fa-exchange-alt:before {
  content: "\f362"; }

.fa-exclamation:before {
  content: "\f12a"; }

.fa-exclamation-circle:before {
  content: "\f06a"; }

.fa-exclamation-triangle:before {
  content: "\f071"; }

.fa-expand:before {
  content: "\f065"; }

.fa-expand-alt:before {
  content: "\f424"; }

.fa-expand-arrows-alt:before {
  content: "\f31e"; }

.fa-expeditedssl:before {
  content: "\f23e"; }

.fa-external-link-alt:before {
  content: "\f35d"; }

.fa-external-link-square-alt:before {
  content: "\f360"; }

.fa-eye:before {
  content: "\f06e"; }

.fa-eye-dropper:before {
  content: "\f1fb"; }

.fa-eye-slash:before {
  content: "\f070"; }

.fa-facebook:before {
  content: "\f09a"; }

.fa-facebook-f:before {
  content: "\f39e"; }

.fa-facebook-messenger:before {
  content: "\f39f"; }

.fa-facebook-square:before {
  content: "\f082"; }

.fa-fan:before {
  content: "\f863"; }

.fa-fantasy-flight-games:before {
  content: "\f6dc"; }

.fa-fast-backward:before {
  content: "\f049"; }

.fa-fast-forward:before {
  content: "\f050"; }

.fa-faucet:before {
  content: "\e005"; }

.fa-fax:before {
  content: "\f1ac"; }

.fa-feather:before {
  content: "\f52d"; }

.fa-feather-alt:before {
  content: "\f56b"; }

.fa-fedex:before {
  content: "\f797"; }

.fa-fedora:before {
  content: "\f798"; }

.fa-female:before {
  content: "\f182"; }

.fa-fighter-jet:before {
  content: "\f0fb"; }

.fa-figma:before {
  content: "\f799"; }

.fa-file:before {
  content: "\f15b"; }

.fa-file-alt:before {
  content: "\f15c"; }

.fa-file-archive:before {
  content: "\f1c6"; }

.fa-file-audio:before {
  content: "\f1c7"; }

.fa-file-code:before {
  content: "\f1c9"; }

.fa-file-contract:before {
  content: "\f56c"; }

.fa-file-csv:before {
  content: "\f6dd"; }

.fa-file-download:before {
  content: "\f56d"; }

.fa-file-excel:before {
  content: "\f1c3"; }

.fa-file-export:before {
  content: "\f56e"; }

.fa-file-image:before {
  content: "\f1c5"; }

.fa-file-import:before {
  content: "\f56f"; }

.fa-file-invoice:before {
  content: "\f570"; }

.fa-file-invoice-dollar:before {
  content: "\f571"; }

.fa-file-medical:before {
  content: "\f477"; }

.fa-file-medical-alt:before {
  content: "\f478"; }

.fa-file-pdf:before {
  content: "\f1c1"; }

.fa-file-powerpoint:before {
  content: "\f1c4"; }

.fa-file-prescription:before {
  content: "\f572"; }

.fa-file-signature:before {
  content: "\f573"; }

.fa-file-upload:before {
  content: "\f574"; }

.fa-file-video:before {
  content: "\f1c8"; }

.fa-file-word:before {
  content: "\f1c2"; }

.fa-fill:before {
  content: "\f575"; }

.fa-fill-drip:before {
  content: "\f576"; }

.fa-film:before {
  content: "\f008"; }

.fa-filter:before {
  content: "\f0b0"; }

.fa-fingerprint:before {
  content: "\f577"; }

.fa-fire:before {
  content: "\f06d"; }

.fa-fire-alt:before {
  content: "\f7e4"; }

.fa-fire-extinguisher:before {
  content: "\f134"; }

.fa-firefox:before {
  content: "\f269"; }

.fa-firefox-browser:before {
  content: "\e007"; }

.fa-first-aid:before {
  content: "\f479"; }

.fa-first-order:before {
  content: "\f2b0"; }

.fa-first-order-alt:before {
  content: "\f50a"; }

.fa-firstdraft:before {
  content: "\f3a1"; }

.fa-fish:before {
  content: "\f578"; }

.fa-fist-raised:before {
  content: "\f6de"; }

.fa-flag:before {
  content: "\f024"; }

.fa-flag-checkered:before {
  content: "\f11e"; }

.fa-flag-usa:before {
  content: "\f74d"; }

.fa-flask:before {
  content: "\f0c3"; }

.fa-flickr:before {
  content: "\f16e"; }

.fa-flipboard:before {
  content: "\f44d"; }

.fa-flushed:before {
  content: "\f579"; }

.fa-fly:before {
  content: "\f417"; }

.fa-folder:before {
  content: "\f07b"; }

.fa-folder-minus:before {
  content: "\f65d"; }

.fa-folder-open:before {
  content: "\f07c"; }

.fa-folder-plus:before {
  content: "\f65e"; }

.fa-font:before {
  content: "\f031"; }

.fa-font-awesome:before {
  content: "\f2b4"; }

.fa-font-awesome-alt:before {
  content: "\f35c"; }

.fa-font-awesome-flag:before {
  content: "\f425"; }

.fa-font-awesome-logo-full:before {
  content: "\f4e6"; }

.fa-fonticons:before {
  content: "\f280"; }

.fa-fonticons-fi:before {
  content: "\f3a2"; }

.fa-football-ball:before {
  content: "\f44e"; }

.fa-fort-awesome:before {
  content: "\f286"; }

.fa-fort-awesome-alt:before {
  content: "\f3a3"; }

.fa-forumbee:before {
  content: "\f211"; }

.fa-forward:before {
  content: "\f04e"; }

.fa-foursquare:before {
  content: "\f180"; }

.fa-free-code-camp:before {
  content: "\f2c5"; }

.fa-freebsd:before {
  content: "\f3a4"; }

.fa-frog:before {
  content: "\f52e"; }

.fa-frown:before {
  content: "\f119"; }

.fa-frown-open:before {
  content: "\f57a"; }

.fa-fulcrum:before {
  content: "\f50b"; }

.fa-funnel-dollar:before {
  content: "\f662"; }

.fa-futbol:before {
  content: "\f1e3"; }

.fa-galactic-republic:before {
  content: "\f50c"; }

.fa-galactic-senate:before {
  content: "\f50d"; }

.fa-gamepad:before {
  content: "\f11b"; }

.fa-gas-pump:before {
  content: "\f52f"; }

.fa-gavel:before {
  content: "\f0e3"; }

.fa-gem:before {
  content: "\f3a5"; }

.fa-genderless:before {
  content: "\f22d"; }

.fa-get-pocket:before {
  content: "\f265"; }

.fa-gg:before {
  content: "\f260"; }

.fa-gg-circle:before {
  content: "\f261"; }

.fa-ghost:before {
  content: "\f6e2"; }

.fa-gift:before {
  content: "\f06b"; }

.fa-gifts:before {
  content: "\f79c"; }

.fa-git:before {
  content: "\f1d3"; }

.fa-git-alt:before {
  content: "\f841"; }

.fa-git-square:before {
  content: "\f1d2"; }

.fa-github:before {
  content: "\f09b"; }

.fa-github-alt:before {
  content: "\f113"; }

.fa-github-square:before {
  content: "\f092"; }

.fa-gitkraken:before {
  content: "\f3a6"; }

.fa-gitlab:before {
  content: "\f296"; }

.fa-gitter:before {
  content: "\f426"; }

.fa-glass-cheers:before {
  content: "\f79f"; }

.fa-glass-martini:before {
  content: "\f000"; }

.fa-glass-martini-alt:before {
  content: "\f57b"; }

.fa-glass-whiskey:before {
  content: "\f7a0"; }

.fa-glasses:before {
  content: "\f530"; }

.fa-glide:before {
  content: "\f2a5"; }

.fa-glide-g:before {
  content: "\f2a6"; }

.fa-globe:before {
  content: "\f0ac"; }

.fa-globe-africa:before {
  content: "\f57c"; }

.fa-globe-americas:before {
  content: "\f57d"; }

.fa-globe-asia:before {
  content: "\f57e"; }

.fa-globe-europe:before {
  content: "\f7a2"; }

.fa-gofore:before {
  content: "\f3a7"; }

.fa-golf-ball:before {
  content: "\f450"; }

.fa-goodreads:before {
  content: "\f3a8"; }

.fa-goodreads-g:before {
  content: "\f3a9"; }

.fa-google:before {
  content: "\f1a0"; }

.fa-google-drive:before {
  content: "\f3aa"; }

.fa-google-pay:before {
  content: "\e079"; }

.fa-google-play:before {
  content: "\f3ab"; }

.fa-google-plus:before {
  content: "\f2b3"; }

.fa-google-plus-g:before {
  content: "\f0d5"; }

.fa-google-plus-square:before {
  content: "\f0d4"; }

.fa-google-wallet:before {
  content: "\f1ee"; }

.fa-gopuram:before {
  content: "\f664"; }

.fa-graduation-cap:before {
  content: "\f19d"; }

.fa-gratipay:before {
  content: "\f184"; }

.fa-grav:before {
  content: "\f2d6"; }

.fa-greater-than:before {
  content: "\f531"; }

.fa-greater-than-equal:before {
  content: "\f532"; }

.fa-grimace:before {
  content: "\f57f"; }

.fa-grin:before {
  content: "\f580"; }

.fa-grin-alt:before {
  content: "\f581"; }

.fa-grin-beam:before {
  content: "\f582"; }

.fa-grin-beam-sweat:before {
  content: "\f583"; }

.fa-grin-hearts:before {
  content: "\f584"; }

.fa-grin-squint:before {
  content: "\f585"; }

.fa-grin-squint-tears:before {
  content: "\f586"; }

.fa-grin-stars:before {
  content: "\f587"; }

.fa-grin-tears:before {
  content: "\f588"; }

.fa-grin-tongue:before {
  content: "\f589"; }

.fa-grin-tongue-squint:before {
  content: "\f58a"; }

.fa-grin-tongue-wink:before {
  content: "\f58b"; }

.fa-grin-wink:before {
  content: "\f58c"; }

.fa-grip-horizontal:before {
  content: "\f58d"; }

.fa-grip-lines:before {
  content: "\f7a4"; }

.fa-grip-lines-vertical:before {
  content: "\f7a5"; }

.fa-grip-vertical:before {
  content: "\f58e"; }

.fa-gripfire:before {
  content: "\f3ac"; }

.fa-grunt:before {
  content: "\f3ad"; }

.fa-guilded:before {
  content: "\e07e"; }

.fa-guitar:before {
  content: "\f7a6"; }

.fa-gulp:before {
  content: "\f3ae"; }

.fa-h-square:before {
  content: "\f0fd"; }

.fa-hacker-news:before {
  content: "\f1d4"; }

.fa-hacker-news-square:before {
  content: "\f3af"; }

.fa-hackerrank:before {
  content: "\f5f7"; }

.fa-hamburger:before {
  content: "\f805"; }

.fa-hammer:before {
  content: "\f6e3"; }

.fa-hamsa:before {
  content: "\f665"; }

.fa-hand-holding:before {
  content: "\f4bd"; }

.fa-hand-holding-heart:before {
  content: "\f4be"; }

.fa-hand-holding-medical:before {
  content: "\e05c"; }

.fa-hand-holding-usd:before {
  content: "\f4c0"; }

.fa-hand-holding-water:before {
  content: "\f4c1"; }

.fa-hand-lizard:before {
  content: "\f258"; }

.fa-hand-middle-finger:before {
  content: "\f806"; }

.fa-hand-paper:before {
  content: "\f256"; }

.fa-hand-peace:before {
  content: "\f25b"; }

.fa-hand-point-down:before {
  content: "\f0a7"; }

.fa-hand-point-left:before {
  content: "\f0a5"; }

.fa-hand-point-right:before {
  content: "\f0a4"; }

.fa-hand-point-up:before {
  content: "\f0a6"; }

.fa-hand-pointer:before {
  content: "\f25a"; }

.fa-hand-rock:before {
  content: "\f255"; }

.fa-hand-scissors:before {
  content: "\f257"; }

.fa-hand-sparkles:before {
  content: "\e05d"; }

.fa-hand-spock:before {
  content: "\f259"; }

.fa-hands:before {
  content: "\f4c2"; }

.fa-hands-helping:before {
  content: "\f4c4"; }

.fa-hands-wash:before {
  content: "\e05e"; }

.fa-handshake:before {
  content: "\f2b5"; }

.fa-handshake-alt-slash:before {
  content: "\e05f"; }

.fa-handshake-slash:before {
  content: "\e060"; }

.fa-hanukiah:before {
  content: "\f6e6"; }

.fa-hard-hat:before {
  content: "\f807"; }

.fa-hashtag:before {
  content: "\f292"; }

.fa-hat-cowboy:before {
  content: "\f8c0"; }

.fa-hat-cowboy-side:before {
  content: "\f8c1"; }

.fa-hat-wizard:before {
  content: "\f6e8"; }

.fa-hdd:before {
  content: "\f0a0"; }

.fa-head-side-cough:before {
  content: "\e061"; }

.fa-head-side-cough-slash:before {
  content: "\e062"; }

.fa-head-side-mask:before {
  content: "\e063"; }

.fa-head-side-virus:before {
  content: "\e064"; }

.fa-heading:before {
  content: "\f1dc"; }

.fa-headphones:before {
  content: "\f025"; }

.fa-headphones-alt:before {
  content: "\f58f"; }

.fa-headset:before {
  content: "\f590"; }

.fa-heart:before {
  content: "\f004"; }

.fa-heart-broken:before {
  content: "\f7a9"; }

.fa-heartbeat:before {
  content: "\f21e"; }

.fa-helicopter:before {
  content: "\f533"; }

.fa-highlighter:before {
  content: "\f591"; }

.fa-hiking:before {
  content: "\f6ec"; }

.fa-hippo:before {
  content: "\f6ed"; }

.fa-hips:before {
  content: "\f452"; }

.fa-hire-a-helper:before {
  content: "\f3b0"; }

.fa-history:before {
  content: "\f1da"; }

.fa-hive:before {
  content: "\e07f"; }

.fa-hockey-puck:before {
  content: "\f453"; }

.fa-holly-berry:before {
  content: "\f7aa"; }

.fa-home:before {
  content: "\f015"; }

.fa-hooli:before {
  content: "\f427"; }

.fa-hornbill:before {
  content: "\f592"; }

.fa-horse:before {
  content: "\f6f0"; }

.fa-horse-head:before {
  content: "\f7ab"; }

.fa-hospital:before {
  content: "\f0f8"; }

.fa-hospital-alt:before {
  content: "\f47d"; }

.fa-hospital-symbol:before {
  content: "\f47e"; }

.fa-hospital-user:before {
  content: "\f80d"; }

.fa-hot-tub:before {
  content: "\f593"; }

.fa-hotdog:before {
  content: "\f80f"; }

.fa-hotel:before {
  content: "\f594"; }

.fa-hotjar:before {
  content: "\f3b1"; }

.fa-hourglass:before {
  content: "\f254"; }

.fa-hourglass-end:before {
  content: "\f253"; }

.fa-hourglass-half:before {
  content: "\f252"; }

.fa-hourglass-start:before {
  content: "\f251"; }

.fa-house-damage:before {
  content: "\f6f1"; }

.fa-house-user:before {
  content: "\e065"; }

.fa-houzz:before {
  content: "\f27c"; }

.fa-hryvnia:before {
  content: "\f6f2"; }

.fa-html5:before {
  content: "\f13b"; }

.fa-hubspot:before {
  content: "\f3b2"; }

.fa-i-cursor:before {
  content: "\f246"; }

.fa-ice-cream:before {
  content: "\f810"; }

.fa-icicles:before {
  content: "\f7ad"; }

.fa-icons:before {
  content: "\f86d"; }

.fa-id-badge:before {
  content: "\f2c1"; }

.fa-id-card:before {
  content: "\f2c2"; }

.fa-id-card-alt:before {
  content: "\f47f"; }

.fa-ideal:before {
  content: "\e013"; }

.fa-igloo:before {
  content: "\f7ae"; }

.fa-image:before {
  content: "\f03e"; }

.fa-images:before {
  content: "\f302"; }

.fa-imdb:before {
  content: "\f2d8"; }

.fa-inbox:before {
  content: "\f01c"; }

.fa-indent:before {
  content: "\f03c"; }

.fa-industry:before {
  content: "\f275"; }

.fa-infinity:before {
  content: "\f534"; }

.fa-info:before {
  content: "\f129"; }

.fa-info-circle:before {
  content: "\f05a"; }

.fa-innosoft:before {
  content: "\e080"; }

.fa-instagram:before {
  content: "\f16d"; }

.fa-instagram-square:before {
  content: "\e055"; }

.fa-instalod:before {
  content: "\e081"; }

.fa-intercom:before {
  content: "\f7af"; }

.fa-internet-explorer:before {
  content: "\f26b"; }

.fa-invision:before {
  content: "\f7b0"; }

.fa-ioxhost:before {
  content: "\f208"; }

.fa-italic:before {
  content: "\f033"; }

.fa-itch-io:before {
  content: "\f83a"; }

.fa-itunes:before {
  content: "\f3b4"; }

.fa-itunes-note:before {
  content: "\f3b5"; }

.fa-java:before {
  content: "\f4e4"; }

.fa-jedi:before {
  content: "\f669"; }

.fa-jedi-order:before {
  content: "\f50e"; }

.fa-jenkins:before {
  content: "\f3b6"; }

.fa-jira:before {
  content: "\f7b1"; }

.fa-joget:before {
  content: "\f3b7"; }

.fa-joint:before {
  content: "\f595"; }

.fa-joomla:before {
  content: "\f1aa"; }

.fa-journal-whills:before {
  content: "\f66a"; }

.fa-js:before {
  content: "\f3b8"; }

.fa-js-square:before {
  content: "\f3b9"; }

.fa-jsfiddle:before {
  content: "\f1cc"; }

.fa-kaaba:before {
  content: "\f66b"; }

.fa-kaggle:before {
  content: "\f5fa"; }

.fa-key:before {
  content: "\f084"; }

.fa-keybase:before {
  content: "\f4f5"; }

.fa-keyboard:before {
  content: "\f11c"; }

.fa-keycdn:before {
  content: "\f3ba"; }

.fa-khanda:before {
  content: "\f66d"; }

.fa-kickstarter:before {
  content: "\f3bb"; }

.fa-kickstarter-k:before {
  content: "\f3bc"; }

.fa-kiss:before {
  content: "\f596"; }

.fa-kiss-beam:before {
  content: "\f597"; }

.fa-kiss-wink-heart:before {
  content: "\f598"; }

.fa-kiwi-bird:before {
  content: "\f535"; }

.fa-korvue:before {
  content: "\f42f"; }

.fa-landmark:before {
  content: "\f66f"; }

.fa-language:before {
  content: "\f1ab"; }

.fa-laptop:before {
  content: "\f109"; }

.fa-laptop-code:before {
  content: "\f5fc"; }

.fa-laptop-house:before {
  content: "\e066"; }

.fa-laptop-medical:before {
  content: "\f812"; }

.fa-laravel:before {
  content: "\f3bd"; }

.fa-lastfm:before {
  content: "\f202"; }

.fa-lastfm-square:before {
  content: "\f203"; }

.fa-laugh:before {
  content: "\f599"; }

.fa-laugh-beam:before {
  content: "\f59a"; }

.fa-laugh-squint:before {
  content: "\f59b"; }

.fa-laugh-wink:before {
  content: "\f59c"; }

.fa-layer-group:before {
  content: "\f5fd"; }

.fa-leaf:before {
  content: "\f06c"; }

.fa-leanpub:before {
  content: "\f212"; }

.fa-lemon:before {
  content: "\f094"; }

.fa-less:before {
  content: "\f41d"; }

.fa-less-than:before {
  content: "\f536"; }

.fa-less-than-equal:before {
  content: "\f537"; }

.fa-level-down-alt:before {
  content: "\f3be"; }

.fa-level-up-alt:before {
  content: "\f3bf"; }

.fa-life-ring:before {
  content: "\f1cd"; }

.fa-lightbulb:before {
  content: "\f0eb"; }

.fa-line:before {
  content: "\f3c0"; }

.fa-link:before {
  content: "\f0c1"; }

.fa-linkedin:before {
  content: "\f08c"; }

.fa-linkedin-in:before {
  content: "\f0e1"; }

.fa-linode:before {
  content: "\f2b8"; }

.fa-linux:before {
  content: "\f17c"; }

.fa-lira-sign:before {
  content: "\f195"; }

.fa-list:before {
  content: "\f03a"; }

.fa-list-alt:before {
  content: "\f022"; }

.fa-list-ol:before {
  content: "\f0cb"; }

.fa-list-ul:before {
  content: "\f0ca"; }

.fa-location-arrow:before {
  content: "\f124"; }

.fa-lock:before {
  content: "\f023"; }

.fa-lock-open:before {
  content: "\f3c1"; }

.fa-long-arrow-alt-down:before {
  content: "\f309"; }

.fa-long-arrow-alt-left:before {
  content: "\f30a"; }

.fa-long-arrow-alt-right:before {
  content: "\f30b"; }

.fa-long-arrow-alt-up:before {
  content: "\f30c"; }

.fa-low-vision:before {
  content: "\f2a8"; }

.fa-luggage-cart:before {
  content: "\f59d"; }

.fa-lungs:before {
  content: "\f604"; }

.fa-lungs-virus:before {
  content: "\e067"; }

.fa-lyft:before {
  content: "\f3c3"; }

.fa-magento:before {
  content: "\f3c4"; }

.fa-magic:before {
  content: "\f0d0"; }

.fa-magnet:before {
  content: "\f076"; }

.fa-mail-bulk:before {
  content: "\f674"; }

.fa-mailchimp:before {
  content: "\f59e"; }

.fa-male:before {
  content: "\f183"; }

.fa-mandalorian:before {
  content: "\f50f"; }

.fa-map:before {
  content: "\f279"; }

.fa-map-marked:before {
  content: "\f59f"; }

.fa-map-marked-alt:before {
  content: "\f5a0"; }

.fa-map-marker:before {
  content: "\f041"; }

.fa-map-marker-alt:before {
  content: "\f3c5"; }

.fa-map-pin:before {
  content: "\f276"; }

.fa-map-signs:before {
  content: "\f277"; }

.fa-markdown:before {
  content: "\f60f"; }

.fa-marker:before {
  content: "\f5a1"; }

.fa-mars:before {
  content: "\f222"; }

.fa-mars-double:before {
  content: "\f227"; }

.fa-mars-stroke:before {
  content: "\f229"; }

.fa-mars-stroke-h:before {
  content: "\f22b"; }

.fa-mars-stroke-v:before {
  content: "\f22a"; }

.fa-mask:before {
  content: "\f6fa"; }

.fa-mastodon:before {
  content: "\f4f6"; }

.fa-maxcdn:before {
  content: "\f136"; }

.fa-mdb:before {
  content: "\f8ca"; }

.fa-medal:before {
  content: "\f5a2"; }

.fa-medapps:before {
  content: "\f3c6"; }

.fa-medium:before {
  content: "\f23a"; }

.fa-medium-m:before {
  content: "\f3c7"; }

.fa-medkit:before {
  content: "\f0fa"; }

.fa-medrt:before {
  content: "\f3c8"; }

.fa-meetup:before {
  content: "\f2e0"; }

.fa-megaport:before {
  content: "\f5a3"; }

.fa-meh:before {
  content: "\f11a"; }

.fa-meh-blank:before {
  content: "\f5a4"; }

.fa-meh-rolling-eyes:before {
  content: "\f5a5"; }

.fa-memory:before {
  content: "\f538"; }

.fa-mendeley:before {
  content: "\f7b3"; }

.fa-menorah:before {
  content: "\f676"; }

.fa-mercury:before {
  content: "\f223"; }

.fa-meteor:before {
  content: "\f753"; }

.fa-microblog:before {
  content: "\e01a"; }

.fa-microchip:before {
  content: "\f2db"; }

.fa-microphone:before {
  content: "\f130"; }

.fa-microphone-alt:before {
  content: "\f3c9"; }

.fa-microphone-alt-slash:before {
  content: "\f539"; }

.fa-microphone-slash:before {
  content: "\f131"; }

.fa-microscope:before {
  content: "\f610"; }

.fa-microsoft:before {
  content: "\f3ca"; }

.fa-minus:before {
  content: "\f068"; }

.fa-minus-circle:before {
  content: "\f056"; }

.fa-minus-square:before {
  content: "\f146"; }

.fa-mitten:before {
  content: "\f7b5"; }

.fa-mix:before {
  content: "\f3cb"; }

.fa-mixcloud:before {
  content: "\f289"; }

.fa-mixer:before {
  content: "\e056"; }

.fa-mizuni:before {
  content: "\f3cc"; }

.fa-mobile:before {
  content: "\f10b"; }

.fa-mobile-alt:before {
  content: "\f3cd"; }

.fa-modx:before {
  content: "\f285"; }

.fa-monero:before {
  content: "\f3d0"; }

.fa-money-bill:before {
  content: "\f0d6"; }

.fa-money-bill-alt:before {
  content: "\f3d1"; }

.fa-money-bill-wave:before {
  content: "\f53a"; }

.fa-money-bill-wave-alt:before {
  content: "\f53b"; }

.fa-money-check:before {
  content: "\f53c"; }

.fa-money-check-alt:before {
  content: "\f53d"; }

.fa-monument:before {
  content: "\f5a6"; }

.fa-moon:before {
  content: "\f186"; }

.fa-mortar-pestle:before {
  content: "\f5a7"; }

.fa-mosque:before {
  content: "\f678"; }

.fa-motorcycle:before {
  content: "\f21c"; }

.fa-mountain:before {
  content: "\f6fc"; }

.fa-mouse:before {
  content: "\f8cc"; }

.fa-mouse-pointer:before {
  content: "\f245"; }

.fa-mug-hot:before {
  content: "\f7b6"; }

.fa-music:before {
  content: "\f001"; }

.fa-napster:before {
  content: "\f3d2"; }

.fa-neos:before {
  content: "\f612"; }

.fa-network-wired:before {
  content: "\f6ff"; }

.fa-neuter:before {
  content: "\f22c"; }

.fa-newspaper:before {
  content: "\f1ea"; }

.fa-nimblr:before {
  content: "\f5a8"; }

.fa-node:before {
  content: "\f419"; }

.fa-node-js:before {
  content: "\f3d3"; }

.fa-not-equal:before {
  content: "\f53e"; }

.fa-notes-medical:before {
  content: "\f481"; }

.fa-npm:before {
  content: "\f3d4"; }

.fa-ns8:before {
  content: "\f3d5"; }

.fa-nutritionix:before {
  content: "\f3d6"; }

.fa-object-group:before {
  content: "\f247"; }

.fa-object-ungroup:before {
  content: "\f248"; }

.fa-octopus-deploy:before {
  content: "\e082"; }

.fa-odnoklassniki:before {
  content: "\f263"; }

.fa-odnoklassniki-square:before {
  content: "\f264"; }

.fa-oil-can:before {
  content: "\f613"; }

.fa-old-republic:before {
  content: "\f510"; }

.fa-om:before {
  content: "\f679"; }

.fa-opencart:before {
  content: "\f23d"; }

.fa-openid:before {
  content: "\f19b"; }

.fa-opera:before {
  content: "\f26a"; }

.fa-optin-monster:before {
  content: "\f23c"; }

.fa-orcid:before {
  content: "\f8d2"; }

.fa-osi:before {
  content: "\f41a"; }

.fa-otter:before {
  content: "\f700"; }

.fa-outdent:before {
  content: "\f03b"; }

.fa-page4:before {
  content: "\f3d7"; }

.fa-pagelines:before {
  content: "\f18c"; }

.fa-pager:before {
  content: "\f815"; }

.fa-paint-brush:before {
  content: "\f1fc"; }

.fa-paint-roller:before {
  content: "\f5aa"; }

.fa-palette:before {
  content: "\f53f"; }

.fa-palfed:before {
  content: "\f3d8"; }

.fa-pallet:before {
  content: "\f482"; }

.fa-paper-plane:before {
  content: "\f1d8"; }

.fa-paperclip:before {
  content: "\f0c6"; }

.fa-parachute-box:before {
  content: "\f4cd"; }

.fa-paragraph:before {
  content: "\f1dd"; }

.fa-parking:before {
  content: "\f540"; }

.fa-passport:before {
  content: "\f5ab"; }

.fa-pastafarianism:before {
  content: "\f67b"; }

.fa-paste:before {
  content: "\f0ea"; }

.fa-patreon:before {
  content: "\f3d9"; }

.fa-pause:before {
  content: "\f04c"; }

.fa-pause-circle:before {
  content: "\f28b"; }

.fa-paw:before {
  content: "\f1b0"; }

.fa-paypal:before {
  content: "\f1ed"; }

.fa-peace:before {
  content: "\f67c"; }

.fa-pen:before {
  content: "\f304"; }

.fa-pen-alt:before {
  content: "\f305"; }

.fa-pen-fancy:before {
  content: "\f5ac"; }

.fa-pen-nib:before {
  content: "\f5ad"; }

.fa-pen-square:before {
  content: "\f14b"; }

.fa-pencil-alt:before {
  content: "\f303"; }

.fa-pencil-ruler:before {
  content: "\f5ae"; }

.fa-penny-arcade:before {
  content: "\f704"; }

.fa-people-arrows:before {
  content: "\e068"; }

.fa-people-carry:before {
  content: "\f4ce"; }

.fa-pepper-hot:before {
  content: "\f816"; }

.fa-perbyte:before {
  content: "\e083"; }

.fa-percent:before {
  content: "\f295"; }

.fa-percentage:before {
  content: "\f541"; }

.fa-periscope:before {
  content: "\f3da"; }

.fa-person-booth:before {
  content: "\f756"; }

.fa-phabricator:before {
  content: "\f3db"; }

.fa-phoenix-framework:before {
  content: "\f3dc"; }

.fa-phoenix-squadron:before {
  content: "\f511"; }

.fa-phone:before {
  content: "\f095"; }

.fa-phone-alt:before {
  content: "\f879"; }

.fa-phone-slash:before {
  content: "\f3dd"; }

.fa-phone-square:before {
  content: "\f098"; }

.fa-phone-square-alt:before {
  content: "\f87b"; }

.fa-phone-volume:before {
  content: "\f2a0"; }

.fa-photo-video:before {
  content: "\f87c"; }

.fa-php:before {
  content: "\f457"; }

.fa-pied-piper:before {
  content: "\f2ae"; }

.fa-pied-piper-alt:before {
  content: "\f1a8"; }

.fa-pied-piper-hat:before {
  content: "\f4e5"; }

.fa-pied-piper-pp:before {
  content: "\f1a7"; }

.fa-pied-piper-square:before {
  content: "\e01e"; }

.fa-piggy-bank:before {
  content: "\f4d3"; }

.fa-pills:before {
  content: "\f484"; }

.fa-pinterest:before {
  content: "\f0d2"; }

.fa-pinterest-p:before {
  content: "\f231"; }

.fa-pinterest-square:before {
  content: "\f0d3"; }

.fa-pizza-slice:before {
  content: "\f818"; }

.fa-place-of-worship:before {
  content: "\f67f"; }

.fa-plane:before {
  content: "\f072"; }

.fa-plane-arrival:before {
  content: "\f5af"; }

.fa-plane-departure:before {
  content: "\f5b0"; }

.fa-plane-slash:before {
  content: "\e069"; }

.fa-play:before {
  content: "\f04b"; }

.fa-play-circle:before {
  content: "\f144"; }

.fa-playstation:before {
  content: "\f3df"; }

.fa-plug:before {
  content: "\f1e6"; }

.fa-plus:before {
  content: "\f067"; }

.fa-plus-circle:before {
  content: "\f055"; }

.fa-plus-square:before {
  content: "\f0fe"; }

.fa-podcast:before {
  content: "\f2ce"; }

.fa-poll:before {
  content: "\f681"; }

.fa-poll-h:before {
  content: "\f682"; }

.fa-poo:before {
  content: "\f2fe"; }

.fa-poo-storm:before {
  content: "\f75a"; }

.fa-poop:before {
  content: "\f619"; }

.fa-portrait:before {
  content: "\f3e0"; }

.fa-pound-sign:before {
  content: "\f154"; }

.fa-power-off:before {
  content: "\f011"; }

.fa-pray:before {
  content: "\f683"; }

.fa-praying-hands:before {
  content: "\f684"; }

.fa-prescription:before {
  content: "\f5b1"; }

.fa-prescription-bottle:before {
  content: "\f485"; }

.fa-prescription-bottle-alt:before {
  content: "\f486"; }

.fa-print:before {
  content: "\f02f"; }

.fa-procedures:before {
  content: "\f487"; }

.fa-product-hunt:before {
  content: "\f288"; }

.fa-project-diagram:before {
  content: "\f542"; }

.fa-pump-medical:before {
  content: "\e06a"; }

.fa-pump-soap:before {
  content: "\e06b"; }

.fa-pushed:before {
  content: "\f3e1"; }

.fa-puzzle-piece:before {
  content: "\f12e"; }

.fa-python:before {
  content: "\f3e2"; }

.fa-qq:before {
  content: "\f1d6"; }

.fa-qrcode:before {
  content: "\f029"; }

.fa-question:before {
  content: "\f128"; }

.fa-question-circle:before {
  content: "\f059"; }

.fa-quidditch:before {
  content: "\f458"; }

.fa-quinscape:before {
  content: "\f459"; }

.fa-quora:before {
  content: "\f2c4"; }

.fa-quote-left:before {
  content: "\f10d"; }

.fa-quote-right:before {
  content: "\f10e"; }

.fa-quran:before {
  content: "\f687"; }

.fa-r-project:before {
  content: "\f4f7"; }

.fa-radiation:before {
  content: "\f7b9"; }

.fa-radiation-alt:before {
  content: "\f7ba"; }

.fa-rainbow:before {
  content: "\f75b"; }

.fa-random:before {
  content: "\f074"; }

.fa-raspberry-pi:before {
  content: "\f7bb"; }

.fa-ravelry:before {
  content: "\f2d9"; }

.fa-react:before {
  content: "\f41b"; }

.fa-reacteurope:before {
  content: "\f75d"; }

.fa-readme:before {
  content: "\f4d5"; }

.fa-rebel:before {
  content: "\f1d0"; }

.fa-receipt:before {
  content: "\f543"; }

.fa-record-vinyl:before {
  content: "\f8d9"; }

.fa-recycle:before {
  content: "\f1b8"; }

.fa-red-river:before {
  content: "\f3e3"; }

.fa-reddit:before {
  content: "\f1a1"; }

.fa-reddit-alien:before {
  content: "\f281"; }

.fa-reddit-square:before {
  content: "\f1a2"; }

.fa-redhat:before {
  content: "\f7bc"; }

.fa-redo:before {
  content: "\f01e"; }

.fa-redo-alt:before {
  content: "\f2f9"; }

.fa-registered:before {
  content: "\f25d"; }

.fa-remove-format:before {
  content: "\f87d"; }

.fa-renren:before {
  content: "\f18b"; }

.fa-reply:before {
  content: "\f3e5"; }

.fa-reply-all:before {
  content: "\f122"; }

.fa-replyd:before {
  content: "\f3e6"; }

.fa-republican:before {
  content: "\f75e"; }

.fa-researchgate:before {
  content: "\f4f8"; }

.fa-resolving:before {
  content: "\f3e7"; }

.fa-restroom:before {
  content: "\f7bd"; }

.fa-retweet:before {
  content: "\f079"; }

.fa-rev:before {
  content: "\f5b2"; }

.fa-ribbon:before {
  content: "\f4d6"; }

.fa-ring:before {
  content: "\f70b"; }

.fa-road:before {
  content: "\f018"; }

.fa-robot:before {
  content: "\f544"; }

.fa-rocket:before {
  content: "\f135"; }

.fa-rocketchat:before {
  content: "\f3e8"; }

.fa-rockrms:before {
  content: "\f3e9"; }

.fa-route:before {
  content: "\f4d7"; }

.fa-rss:before {
  content: "\f09e"; }

.fa-rss-square:before {
  content: "\f143"; }

.fa-ruble-sign:before {
  content: "\f158"; }

.fa-ruler:before {
  content: "\f545"; }

.fa-ruler-combined:before {
  content: "\f546"; }

.fa-ruler-horizontal:before {
  content: "\f547"; }

.fa-ruler-vertical:before {
  content: "\f548"; }

.fa-running:before {
  content: "\f70c"; }

.fa-rupee-sign:before {
  content: "\f156"; }

.fa-rust:before {
  content: "\e07a"; }

.fa-sad-cry:before {
  content: "\f5b3"; }

.fa-sad-tear:before {
  content: "\f5b4"; }

.fa-safari:before {
  content: "\f267"; }

.fa-salesforce:before {
  content: "\f83b"; }

.fa-sass:before {
  content: "\f41e"; }

.fa-satellite:before {
  content: "\f7bf"; }

.fa-satellite-dish:before {
  content: "\f7c0"; }

.fa-save:before {
  content: "\f0c7"; }

.fa-schlix:before {
  content: "\f3ea"; }

.fa-school:before {
  content: "\f549"; }

.fa-screwdriver:before {
  content: "\f54a"; }

.fa-scribd:before {
  content: "\f28a"; }

.fa-scroll:before {
  content: "\f70e"; }

.fa-sd-card:before {
  content: "\f7c2"; }

.fa-search:before {
  content: "\f002"; }

.fa-search-dollar:before {
  content: "\f688"; }

.fa-search-location:before {
  content: "\f689"; }

.fa-search-minus:before {
  content: "\f010"; }

.fa-search-plus:before {
  content: "\f00e"; }

.fa-searchengin:before {
  content: "\f3eb"; }

.fa-seedling:before {
  content: "\f4d8"; }

.fa-sellcast:before {
  content: "\f2da"; }

.fa-sellsy:before {
  content: "\f213"; }

.fa-server:before {
  content: "\f233"; }

.fa-servicestack:before {
  content: "\f3ec"; }

.fa-shapes:before {
  content: "\f61f"; }

.fa-share:before {
  content: "\f064"; }

.fa-share-alt:before {
  content: "\f1e0"; }

.fa-share-alt-square:before {
  content: "\f1e1"; }

.fa-share-square:before {
  content: "\f14d"; }

.fa-shekel-sign:before {
  content: "\f20b"; }

.fa-shield-alt:before {
  content: "\f3ed"; }

.fa-shield-virus:before {
  content: "\e06c"; }

.fa-ship:before {
  content: "\f21a"; }

.fa-shipping-fast:before {
  content: "\f48b"; }

.fa-shirtsinbulk:before {
  content: "\f214"; }

.fa-shoe-prints:before {
  content: "\f54b"; }

.fa-shopify:before {
  content: "\e057"; }

.fa-shopping-bag:before {
  content: "\f290"; }

.fa-shopping-basket:before {
  content: "\f291"; }

.fa-shopping-cart:before {
  content: "\f07a"; }

.fa-shopware:before {
  content: "\f5b5"; }

.fa-shower:before {
  content: "\f2cc"; }

.fa-shuttle-van:before {
  content: "\f5b6"; }

.fa-sign:before {
  content: "\f4d9"; }

.fa-sign-in-alt:before {
  content: "\f2f6"; }

.fa-sign-language:before {
  content: "\f2a7"; }

.fa-sign-out-alt:before {
  content: "\f2f5"; }

.fa-signal:before {
  content: "\f012"; }

.fa-signature:before {
  content: "\f5b7"; }

.fa-sim-card:before {
  content: "\f7c4"; }

.fa-simplybuilt:before {
  content: "\f215"; }

.fa-sink:before {
  content: "\e06d"; }

.fa-sistrix:before {
  content: "\f3ee"; }

.fa-sitemap:before {
  content: "\f0e8"; }

.fa-sith:before {
  content: "\f512"; }

.fa-skating:before {
  content: "\f7c5"; }

.fa-sketch:before {
  content: "\f7c6"; }

.fa-skiing:before {
  content: "\f7c9"; }

.fa-skiing-nordic:before {
  content: "\f7ca"; }

.fa-skull:before {
  content: "\f54c"; }

.fa-skull-crossbones:before {
  content: "\f714"; }

.fa-skyatlas:before {
  content: "\f216"; }

.fa-skype:before {
  content: "\f17e"; }

.fa-slack:before {
  content: "\f198"; }

.fa-slack-hash:before {
  content: "\f3ef"; }

.fa-slash:before {
  content: "\f715"; }

.fa-sleigh:before {
  content: "\f7cc"; }

.fa-sliders-h:before {
  content: "\f1de"; }

.fa-slideshare:before {
  content: "\f1e7"; }

.fa-smile:before {
  content: "\f118"; }

.fa-smile-beam:before {
  content: "\f5b8"; }

.fa-smile-wink:before {
  content: "\f4da"; }

.fa-smog:before {
  content: "\f75f"; }

.fa-smoking:before {
  content: "\f48d"; }

.fa-smoking-ban:before {
  content: "\f54d"; }

.fa-sms:before {
  content: "\f7cd"; }

.fa-snapchat:before {
  content: "\f2ab"; }

.fa-snapchat-ghost:before {
  content: "\f2ac"; }

.fa-snapchat-square:before {
  content: "\f2ad"; }

.fa-snowboarding:before {
  content: "\f7ce"; }

.fa-snowflake:before {
  content: "\f2dc"; }

.fa-snowman:before {
  content: "\f7d0"; }

.fa-snowplow:before {
  content: "\f7d2"; }

.fa-soap:before {
  content: "\e06e"; }

.fa-socks:before {
  content: "\f696"; }

.fa-solar-panel:before {
  content: "\f5ba"; }

.fa-sort:before {
  content: "\f0dc"; }

.fa-sort-alpha-down:before {
  content: "\f15d"; }

.fa-sort-alpha-down-alt:before {
  content: "\f881"; }

.fa-sort-alpha-up:before {
  content: "\f15e"; }

.fa-sort-alpha-up-alt:before {
  content: "\f882"; }

.fa-sort-amount-down:before {
  content: "\f160"; }

.fa-sort-amount-down-alt:before {
  content: "\f884"; }

.fa-sort-amount-up:before {
  content: "\f161"; }

.fa-sort-amount-up-alt:before {
  content: "\f885"; }

.fa-sort-down:before {
  content: "\f0dd"; }

.fa-sort-numeric-down:before {
  content: "\f162"; }

.fa-sort-numeric-down-alt:before {
  content: "\f886"; }

.fa-sort-numeric-up:before {
  content: "\f163"; }

.fa-sort-numeric-up-alt:before {
  content: "\f887"; }

.fa-sort-up:before {
  content: "\f0de"; }

.fa-soundcloud:before {
  content: "\f1be"; }

.fa-sourcetree:before {
  content: "\f7d3"; }

.fa-spa:before {
  content: "\f5bb"; }

.fa-space-shuttle:before {
  content: "\f197"; }

.fa-speakap:before {
  content: "\f3f3"; }

.fa-speaker-deck:before {
  content: "\f83c"; }

.fa-spell-check:before {
  content: "\f891"; }

.fa-spider:before {
  content: "\f717"; }

.fa-spinner:before {
  content: "\f110"; }

.fa-splotch:before {
  content: "\f5bc"; }

.fa-spotify:before {
  content: "\f1bc"; }

.fa-spray-can:before {
  content: "\f5bd"; }

.fa-square:before {
  content: "\f0c8"; }

.fa-square-full:before {
  content: "\f45c"; }

.fa-square-root-alt:before {
  content: "\f698"; }

.fa-squarespace:before {
  content: "\f5be"; }

.fa-stack-exchange:before {
  content: "\f18d"; }

.fa-stack-overflow:before {
  content: "\f16c"; }

.fa-stackpath:before {
  content: "\f842"; }

.fa-stamp:before {
  content: "\f5bf"; }

.fa-star:before {
  content: "\f005"; }

.fa-star-and-crescent:before {
  content: "\f699"; }

.fa-star-half:before {
  content: "\f089"; }

.fa-star-half-alt:before {
  content: "\f5c0"; }

.fa-star-of-david:before {
  content: "\f69a"; }

.fa-star-of-life:before {
  content: "\f621"; }

.fa-staylinked:before {
  content: "\f3f5"; }

.fa-steam:before {
  content: "\f1b6"; }

.fa-steam-square:before {
  content: "\f1b7"; }

.fa-steam-symbol:before {
  content: "\f3f6"; }

.fa-step-backward:before {
  content: "\f048"; }

.fa-step-forward:before {
  content: "\f051"; }

.fa-stethoscope:before {
  content: "\f0f1"; }

.fa-sticker-mule:before {
  content: "\f3f7"; }

.fa-sticky-note:before {
  content: "\f249"; }

.fa-stop:before {
  content: "\f04d"; }

.fa-stop-circle:before {
  content: "\f28d"; }

.fa-stopwatch:before {
  content: "\f2f2"; }

.fa-stopwatch-20:before {
  content: "\e06f"; }

.fa-store:before {
  content: "\f54e"; }

.fa-store-alt:before {
  content: "\f54f"; }

.fa-store-alt-slash:before {
  content: "\e070"; }

.fa-store-slash:before {
  content: "\e071"; }

.fa-strava:before {
  content: "\f428"; }

.fa-stream:before {
  content: "\f550"; }

.fa-street-view:before {
  content: "\f21d"; }

.fa-strikethrough:before {
  content: "\f0cc"; }

.fa-stripe:before {
  content: "\f429"; }

.fa-stripe-s:before {
  content: "\f42a"; }

.fa-stroopwafel:before {
  content: "\f551"; }

.fa-studiovinari:before {
  content: "\f3f8"; }

.fa-stumbleupon:before {
  content: "\f1a4"; }

.fa-stumbleupon-circle:before {
  content: "\f1a3"; }

.fa-subscript:before {
  content: "\f12c"; }

.fa-subway:before {
  content: "\f239"; }

.fa-suitcase:before {
  content: "\f0f2"; }

.fa-suitcase-rolling:before {
  content: "\f5c1"; }

.fa-sun:before {
  content: "\f185"; }

.fa-superpowers:before {
  content: "\f2dd"; }

.fa-superscript:before {
  content: "\f12b"; }

.fa-supple:before {
  content: "\f3f9"; }

.fa-surprise:before {
  content: "\f5c2"; }

.fa-suse:before {
  content: "\f7d6"; }

.fa-swatchbook:before {
  content: "\f5c3"; }

.fa-swift:before {
  content: "\f8e1"; }

.fa-swimmer:before {
  content: "\f5c4"; }

.fa-swimming-pool:before {
  content: "\f5c5"; }

.fa-symfony:before {
  content: "\f83d"; }

.fa-synagogue:before {
  content: "\f69b"; }

.fa-sync:before {
  content: "\f021"; }

.fa-sync-alt:before {
  content: "\f2f1"; }

.fa-syringe:before {
  content: "\f48e"; }

.fa-table:before {
  content: "\f0ce"; }

.fa-table-tennis:before {
  content: "\f45d"; }

.fa-tablet:before {
  content: "\f10a"; }

.fa-tablet-alt:before {
  content: "\f3fa"; }

.fa-tablets:before {
  content: "\f490"; }

.fa-tachometer-alt:before {
  content: "\f3fd"; }

.fa-tag:before {
  content: "\f02b"; }

.fa-tags:before {
  content: "\f02c"; }

.fa-tape:before {
  content: "\f4db"; }

.fa-tasks:before {
  content: "\f0ae"; }

.fa-taxi:before {
  content: "\f1ba"; }

.fa-teamspeak:before {
  content: "\f4f9"; }

.fa-teeth:before {
  content: "\f62e"; }

.fa-teeth-open:before {
  content: "\f62f"; }

.fa-telegram:before {
  content: "\f2c6"; }

.fa-telegram-plane:before {
  content: "\f3fe"; }

.fa-temperature-high:before {
  content: "\f769"; }

.fa-temperature-low:before {
  content: "\f76b"; }

.fa-tencent-weibo:before {
  content: "\f1d5"; }

.fa-tenge:before {
  content: "\f7d7"; }

.fa-terminal:before {
  content: "\f120"; }

.fa-text-height:before {
  content: "\f034"; }

.fa-text-width:before {
  content: "\f035"; }

.fa-th:before {
  content: "\f00a"; }

.fa-th-large:before {
  content: "\f009"; }

.fa-th-list:before {
  content: "\f00b"; }

.fa-the-red-yeti:before {
  content: "\f69d"; }

.fa-theater-masks:before {
  content: "\f630"; }

.fa-themeco:before {
  content: "\f5c6"; }

.fa-themeisle:before {
  content: "\f2b2"; }

.fa-thermometer:before {
  content: "\f491"; }

.fa-thermometer-empty:before {
  content: "\f2cb"; }

.fa-thermometer-full:before {
  content: "\f2c7"; }

.fa-thermometer-half:before {
  content: "\f2c9"; }

.fa-thermometer-quarter:before {
  content: "\f2ca"; }

.fa-thermometer-three-quarters:before {
  content: "\f2c8"; }

.fa-think-peaks:before {
  content: "\f731"; }

.fa-thumbs-down:before {
  content: "\f165"; }

.fa-thumbs-up:before {
  content: "\f164"; }

.fa-thumbtack:before {
  content: "\f08d"; }

.fa-ticket-alt:before {
  content: "\f3ff"; }

.fa-tiktok:before {
  content: "\e07b"; }

.fa-times:before {
  content: "\f00d"; }

.fa-times-circle:before {
  content: "\f057"; }

.fa-tint:before {
  content: "\f043"; }

.fa-tint-slash:before {
  content: "\f5c7"; }

.fa-tired:before {
  content: "\f5c8"; }

.fa-toggle-off:before {
  content: "\f204"; }

.fa-toggle-on:before {
  content: "\f205"; }

.fa-toilet:before {
  content: "\f7d8"; }

.fa-toilet-paper:before {
  content: "\f71e"; }

.fa-toilet-paper-slash:before {
  content: "\e072"; }

.fa-toolbox:before {
  content: "\f552"; }

.fa-tools:before {
  content: "\f7d9"; }

.fa-tooth:before {
  content: "\f5c9"; }

.fa-torah:before {
  content: "\f6a0"; }

.fa-torii-gate:before {
  content: "\f6a1"; }

.fa-tractor:before {
  content: "\f722"; }

.fa-trade-federation:before {
  content: "\f513"; }

.fa-trademark:before {
  content: "\f25c"; }

.fa-traffic-light:before {
  content: "\f637"; }

.fa-trailer:before {
  content: "\e041"; }

.fa-train:before {
  content: "\f238"; }

.fa-tram:before {
  content: "\f7da"; }

.fa-transgender:before {
  content: "\f224"; }

.fa-transgender-alt:before {
  content: "\f225"; }

.fa-trash:before {
  content: "\f1f8"; }

.fa-trash-alt:before {
  content: "\f2ed"; }

.fa-trash-restore:before {
  content: "\f829"; }

.fa-trash-restore-alt:before {
  content: "\f82a"; }

.fa-tree:before {
  content: "\f1bb"; }

.fa-trello:before {
  content: "\f181"; }

.fa-tripadvisor:before {
  content: "\f262"; }

.fa-trophy:before {
  content: "\f091"; }

.fa-truck:before {
  content: "\f0d1"; }

.fa-truck-loading:before {
  content: "\f4de"; }

.fa-truck-monster:before {
  content: "\f63b"; }

.fa-truck-moving:before {
  content: "\f4df"; }

.fa-truck-pickup:before {
  content: "\f63c"; }

.fa-tshirt:before {
  content: "\f553"; }

.fa-tty:before {
  content: "\f1e4"; }

.fa-tumblr:before {
  content: "\f173"; }

.fa-tumblr-square:before {
  content: "\f174"; }

.fa-tv:before {
  content: "\f26c"; }

.fa-twitch:before {
  content: "\f1e8"; }

.fa-twitter:before {
  content: "\f099"; }

.fa-twitter-square:before {
  content: "\f081"; }

.fa-typo3:before {
  content: "\f42b"; }

.fa-uber:before {
  content: "\f402"; }

.fa-ubuntu:before {
  content: "\f7df"; }

.fa-uikit:before {
  content: "\f403"; }

.fa-umbraco:before {
  content: "\f8e8"; }

.fa-umbrella:before {
  content: "\f0e9"; }

.fa-umbrella-beach:before {
  content: "\f5ca"; }

.fa-uncharted:before {
  content: "\e084"; }

.fa-underline:before {
  content: "\f0cd"; }

.fa-undo:before {
  content: "\f0e2"; }

.fa-undo-alt:before {
  content: "\f2ea"; }

.fa-uniregistry:before {
  content: "\f404"; }

.fa-unity:before {
  content: "\e049"; }

.fa-universal-access:before {
  content: "\f29a"; }

.fa-university:before {
  content: "\f19c"; }

.fa-unlink:before {
  content: "\f127"; }

.fa-unlock:before {
  content: "\f09c"; }

.fa-unlock-alt:before {
  content: "\f13e"; }

.fa-unsplash:before {
  content: "\e07c"; }

.fa-untappd:before {
  content: "\f405"; }

.fa-upload:before {
  content: "\f093"; }

.fa-ups:before {
  content: "\f7e0"; }

.fa-usb:before {
  content: "\f287"; }

.fa-user:before {
  content: "\f007"; }

.fa-user-alt:before {
  content: "\f406"; }

.fa-user-alt-slash:before {
  content: "\f4fa"; }

.fa-user-astronaut:before {
  content: "\f4fb"; }

.fa-user-check:before {
  content: "\f4fc"; }

.fa-user-circle:before {
  content: "\f2bd"; }

.fa-user-clock:before {
  content: "\f4fd"; }

.fa-user-cog:before {
  content: "\f4fe"; }

.fa-user-edit:before {
  content: "\f4ff"; }

.fa-user-friends:before {
  content: "\f500"; }

.fa-user-graduate:before {
  content: "\f501"; }

.fa-user-injured:before {
  content: "\f728"; }

.fa-user-lock:before {
  content: "\f502"; }

.fa-user-md:before {
  content: "\f0f0"; }

.fa-user-minus:before {
  content: "\f503"; }

.fa-user-ninja:before {
  content: "\f504"; }

.fa-user-nurse:before {
  content: "\f82f"; }

.fa-user-plus:before {
  content: "\f234"; }

.fa-user-secret:before {
  content: "\f21b"; }

.fa-user-shield:before {
  content: "\f505"; }

.fa-user-slash:before {
  content: "\f506"; }

.fa-user-tag:before {
  content: "\f507"; }

.fa-user-tie:before {
  content: "\f508"; }

.fa-user-times:before {
  content: "\f235"; }

.fa-users:before {
  content: "\f0c0"; }

.fa-users-cog:before {
  content: "\f509"; }

.fa-users-slash:before {
  content: "\e073"; }

.fa-usps:before {
  content: "\f7e1"; }

.fa-ussunnah:before {
  content: "\f407"; }

.fa-utensil-spoon:before {
  content: "\f2e5"; }

.fa-utensils:before {
  content: "\f2e7"; }

.fa-vaadin:before {
  content: "\f408"; }

.fa-vector-square:before {
  content: "\f5cb"; }

.fa-venus:before {
  content: "\f221"; }

.fa-venus-double:before {
  content: "\f226"; }

.fa-venus-mars:before {
  content: "\f228"; }

.fa-vest:before {
  content: "\e085"; }

.fa-vest-patches:before {
  content: "\e086"; }

.fa-viacoin:before {
  content: "\f237"; }

.fa-viadeo:before {
  content: "\f2a9"; }

.fa-viadeo-square:before {
  content: "\f2aa"; }

.fa-vial:before {
  content: "\f492"; }

.fa-vials:before {
  content: "\f493"; }

.fa-viber:before {
  content: "\f409"; }

.fa-video:before {
  content: "\f03d"; }

.fa-video-slash:before {
  content: "\f4e2"; }

.fa-vihara:before {
  content: "\f6a7"; }

.fa-vimeo:before {
  content: "\f40a"; }

.fa-vimeo-square:before {
  content: "\f194"; }

.fa-vimeo-v:before {
  content: "\f27d"; }

.fa-vine:before {
  content: "\f1ca"; }

.fa-virus:before {
  content: "\e074"; }

.fa-virus-slash:before {
  content: "\e075"; }

.fa-viruses:before {
  content: "\e076"; }

.fa-vk:before {
  content: "\f189"; }

.fa-vnv:before {
  content: "\f40b"; }

.fa-voicemail:before {
  content: "\f897"; }

.fa-volleyball-ball:before {
  content: "\f45f"; }

.fa-volume-down:before {
  content: "\f027"; }

.fa-volume-mute:before {
  content: "\f6a9"; }

.fa-volume-off:before {
  content: "\f026"; }

.fa-volume-up:before {
  content: "\f028"; }

.fa-vote-yea:before {
  content: "\f772"; }

.fa-vr-cardboard:before {
  content: "\f729"; }

.fa-vuejs:before {
  content: "\f41f"; }

.fa-walking:before {
  content: "\f554"; }

.fa-wallet:before {
  content: "\f555"; }

.fa-warehouse:before {
  content: "\f494"; }

.fa-watchman-monitoring:before {
  content: "\e087"; }

.fa-water:before {
  content: "\f773"; }

.fa-wave-square:before {
  content: "\f83e"; }

.fa-waze:before {
  content: "\f83f"; }

.fa-weebly:before {
  content: "\f5cc"; }

.fa-weibo:before {
  content: "\f18a"; }

.fa-weight:before {
  content: "\f496"; }

.fa-weight-hanging:before {
  content: "\f5cd"; }

.fa-weixin:before {
  content: "\f1d7"; }

.fa-whatsapp:before {
  content: "\f232"; }

.fa-whatsapp-square:before {
  content: "\f40c"; }

.fa-wheelchair:before {
  content: "\f193"; }

.fa-whmcs:before {
  content: "\f40d"; }

.fa-wifi:before {
  content: "\f1eb"; }

.fa-wikipedia-w:before {
  content: "\f266"; }

.fa-wind:before {
  content: "\f72e"; }

.fa-window-close:before {
  content: "\f410"; }

.fa-window-maximize:before {
  content: "\f2d0"; }

.fa-window-minimize:before {
  content: "\f2d1"; }

.fa-window-restore:before {
  content: "\f2d2"; }

.fa-windows:before {
  content: "\f17a"; }

.fa-wine-bottle:before {
  content: "\f72f"; }

.fa-wine-glass:before {
  content: "\f4e3"; }

.fa-wine-glass-alt:before {
  content: "\f5ce"; }

.fa-wix:before {
  content: "\f5cf"; }

.fa-wizards-of-the-coast:before {
  content: "\f730"; }

.fa-wodu:before {
  content: "\e088"; }

.fa-wolf-pack-battalion:before {
  content: "\f514"; }

.fa-won-sign:before {
  content: "\f159"; }

.fa-wordpress:before {
  content: "\f19a"; }

.fa-wordpress-simple:before {
  content: "\f411"; }

.fa-wpbeginner:before {
  content: "\f297"; }

.fa-wpexplorer:before {
  content: "\f2de"; }

.fa-wpforms:before {
  content: "\f298"; }

.fa-wpressr:before {
  content: "\f3e4"; }

.fa-wrench:before {
  content: "\f0ad"; }

.fa-x-ray:before {
  content: "\f497"; }

.fa-xbox:before {
  content: "\f412"; }

.fa-xing:before {
  content: "\f168"; }

.fa-xing-square:before {
  content: "\f169"; }

.fa-y-combinator:before {
  content: "\f23b"; }

.fa-yahoo:before {
  content: "\f19e"; }

.fa-yammer:before {
  content: "\f840"; }

.fa-yandex:before {
  content: "\f413"; }

.fa-yandex-international:before {
  content: "\f414"; }

.fa-yarn:before {
  content: "\f7e3"; }

.fa-yelp:before {
  content: "\f1e9"; }

.fa-yen-sign:before {
  content: "\f157"; }

.fa-yin-yang:before {
  content: "\f6ad"; }

.fa-yoast:before {
  content: "\f2b1"; }

.fa-youtube:before {
  content: "\f167"; }

.fa-youtube-square:before {
  content: "\f431"; }

.fa-zhihu:before {
  content: "\f63f"; }

.sr-only {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px; }

.sr-only-focusable:active, .sr-only-focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto; }
assets/lib/font-awesome/css/solid.min.css000064400000001235151327220410014414 0ustar00/*!
 * Font Awesome Free 5.15.3 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 */
@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:900;font-display:block;src:url(../webfonts/fa-solid-900.eot);src:url(../webfonts/fa-solid-900.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.woff) format("woff"),url(../webfonts/fa-solid-900.ttf) format("truetype"),url(../webfonts/fa-solid-900.svg#fontawesome) format("svg")}.fa,.fas{font-family:"Font Awesome 5 Free";font-weight:900}assets/lib/font-awesome/css/regular.min.css000064400000001245151327220410014744 0ustar00/*!
 * Font Awesome Free 5.15.3 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 */
@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:400;font-display:block;src:url(../webfonts/fa-regular-400.eot);src:url(../webfonts/fa-regular-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.woff) format("woff"),url(../webfonts/fa-regular-400.ttf) format("truetype"),url(../webfonts/fa-regular-400.svg#fontawesome) format("svg")}.far{font-family:"Font Awesome 5 Free";font-weight:400}assets/lib/font-awesome/css/brands.css000064400000001334151327220410013771 0ustar00/*!
 * Font Awesome Free 5.15.3 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 */
@font-face {
  font-family: 'Font Awesome 5 Brands';
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url("../webfonts/fa-brands-400.eot");
  src: url("../webfonts/fa-brands-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.woff") format("woff"), url("../webfonts/fa-brands-400.ttf") format("truetype"), url("../webfonts/fa-brands-400.svg#fontawesome") format("svg"); }

.fab {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }
assets/lib/font-awesome/css/fontawesome.min.css000064400000161070151327220410015635 0ustar00/*!
 * Font Awesome Free 5.15.3 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 */
.fa,.fab,.fad,.fal,.far,.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:.08em solid #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.fab.fa-pull-left,.fal.fa-pull-left,.far.fa-pull-left,.fas.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.fab.fa-pull-right,.fal.fa-pull-right,.far.fa-pull-right,.fas.fa-pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.fa-pulse{-webkit-animation:fa-spin 1s steps(8) infinite;animation:fa-spin 1s steps(8) infinite}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-webkit-transform:scaleY(-1);transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical,.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1);transform:scale(-1)}:root .fa-flip-both,:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{-webkit-filter:none;filter:none}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-500px:before{content:"\f26e"}.fa-accessible-icon:before{content:"\f368"}.fa-accusoft:before{content:"\f369"}.fa-acquisitions-incorporated:before{content:"\f6af"}.fa-ad:before{content:"\f641"}.fa-address-book:before{content:"\f2b9"}.fa-address-card:before{content:"\f2bb"}.fa-adjust:before{content:"\f042"}.fa-adn:before{content:"\f170"}.fa-adversal:before{content:"\f36a"}.fa-affiliatetheme:before{content:"\f36b"}.fa-air-freshener:before{content:"\f5d0"}.fa-airbnb:before{content:"\f834"}.fa-algolia:before{content:"\f36c"}.fa-align-center:before{content:"\f037"}.fa-align-justify:before{content:"\f039"}.fa-align-left:before{content:"\f036"}.fa-align-right:before{content:"\f038"}.fa-alipay:before{content:"\f642"}.fa-allergies:before{content:"\f461"}.fa-amazon:before{content:"\f270"}.fa-amazon-pay:before{content:"\f42c"}.fa-ambulance:before{content:"\f0f9"}.fa-american-sign-language-interpreting:before{content:"\f2a3"}.fa-amilia:before{content:"\f36d"}.fa-anchor:before{content:"\f13d"}.fa-android:before{content:"\f17b"}.fa-angellist:before{content:"\f209"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-down:before{content:"\f107"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angry:before{content:"\f556"}.fa-angrycreative:before{content:"\f36e"}.fa-angular:before{content:"\f420"}.fa-ankh:before{content:"\f644"}.fa-app-store:before{content:"\f36f"}.fa-app-store-ios:before{content:"\f370"}.fa-apper:before{content:"\f371"}.fa-apple:before{content:"\f179"}.fa-apple-alt:before{content:"\f5d1"}.fa-apple-pay:before{content:"\f415"}.fa-archive:before{content:"\f187"}.fa-archway:before{content:"\f557"}.fa-arrow-alt-circle-down:before{content:"\f358"}.fa-arrow-alt-circle-left:before{content:"\f359"}.fa-arrow-alt-circle-right:before{content:"\f35a"}.fa-arrow-alt-circle-up:before{content:"\f35b"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-down:before{content:"\f063"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrows-alt:before{content:"\f0b2"}.fa-arrows-alt-h:before{content:"\f337"}.fa-arrows-alt-v:before{content:"\f338"}.fa-artstation:before{content:"\f77a"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-asterisk:before{content:"\f069"}.fa-asymmetrik:before{content:"\f372"}.fa-at:before{content:"\f1fa"}.fa-atlas:before{content:"\f558"}.fa-atlassian:before{content:"\f77b"}.fa-atom:before{content:"\f5d2"}.fa-audible:before{content:"\f373"}.fa-audio-description:before{content:"\f29e"}.fa-autoprefixer:before{content:"\f41c"}.fa-avianex:before{content:"\f374"}.fa-aviato:before{content:"\f421"}.fa-award:before{content:"\f559"}.fa-aws:before{content:"\f375"}.fa-baby:before{content:"\f77c"}.fa-baby-carriage:before{content:"\f77d"}.fa-backspace:before{content:"\f55a"}.fa-backward:before{content:"\f04a"}.fa-bacon:before{content:"\f7e5"}.fa-bacteria:before{content:"\e059"}.fa-bacterium:before{content:"\e05a"}.fa-bahai:before{content:"\f666"}.fa-balance-scale:before{content:"\f24e"}.fa-balance-scale-left:before{content:"\f515"}.fa-balance-scale-right:before{content:"\f516"}.fa-ban:before{content:"\f05e"}.fa-band-aid:before{content:"\f462"}.fa-bandcamp:before{content:"\f2d5"}.fa-barcode:before{content:"\f02a"}.fa-bars:before{content:"\f0c9"}.fa-baseball-ball:before{content:"\f433"}.fa-basketball-ball:before{content:"\f434"}.fa-bath:before{content:"\f2cd"}.fa-battery-empty:before{content:"\f244"}.fa-battery-full:before{content:"\f240"}.fa-battery-half:before{content:"\f242"}.fa-battery-quarter:before{content:"\f243"}.fa-battery-three-quarters:before{content:"\f241"}.fa-battle-net:before{content:"\f835"}.fa-bed:before{content:"\f236"}.fa-beer:before{content:"\f0fc"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-bell:before{content:"\f0f3"}.fa-bell-slash:before{content:"\f1f6"}.fa-bezier-curve:before{content:"\f55b"}.fa-bible:before{content:"\f647"}.fa-bicycle:before{content:"\f206"}.fa-biking:before{content:"\f84a"}.fa-bimobject:before{content:"\f378"}.fa-binoculars:before{content:"\f1e5"}.fa-biohazard:before{content:"\f780"}.fa-birthday-cake:before{content:"\f1fd"}.fa-bitbucket:before{content:"\f171"}.fa-bitcoin:before{content:"\f379"}.fa-bity:before{content:"\f37a"}.fa-black-tie:before{content:"\f27e"}.fa-blackberry:before{content:"\f37b"}.fa-blender:before{content:"\f517"}.fa-blender-phone:before{content:"\f6b6"}.fa-blind:before{content:"\f29d"}.fa-blog:before{content:"\f781"}.fa-blogger:before{content:"\f37c"}.fa-blogger-b:before{content:"\f37d"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-bold:before{content:"\f032"}.fa-bolt:before{content:"\f0e7"}.fa-bomb:before{content:"\f1e2"}.fa-bone:before{content:"\f5d7"}.fa-bong:before{content:"\f55c"}.fa-book:before{content:"\f02d"}.fa-book-dead:before{content:"\f6b7"}.fa-book-medical:before{content:"\f7e6"}.fa-book-open:before{content:"\f518"}.fa-book-reader:before{content:"\f5da"}.fa-bookmark:before{content:"\f02e"}.fa-bootstrap:before{content:"\f836"}.fa-border-all:before{content:"\f84c"}.fa-border-none:before{content:"\f850"}.fa-border-style:before{content:"\f853"}.fa-bowling-ball:before{content:"\f436"}.fa-box:before{content:"\f466"}.fa-box-open:before{content:"\f49e"}.fa-box-tissue:before{content:"\e05b"}.fa-boxes:before{content:"\f468"}.fa-braille:before{content:"\f2a1"}.fa-brain:before{content:"\f5dc"}.fa-bread-slice:before{content:"\f7ec"}.fa-briefcase:before{content:"\f0b1"}.fa-briefcase-medical:before{content:"\f469"}.fa-broadcast-tower:before{content:"\f519"}.fa-broom:before{content:"\f51a"}.fa-brush:before{content:"\f55d"}.fa-btc:before{content:"\f15a"}.fa-buffer:before{content:"\f837"}.fa-bug:before{content:"\f188"}.fa-building:before{content:"\f1ad"}.fa-bullhorn:before{content:"\f0a1"}.fa-bullseye:before{content:"\f140"}.fa-burn:before{content:"\f46a"}.fa-buromobelexperte:before{content:"\f37f"}.fa-bus:before{content:"\f207"}.fa-bus-alt:before{content:"\f55e"}.fa-business-time:before{content:"\f64a"}.fa-buy-n-large:before{content:"\f8a6"}.fa-buysellads:before{content:"\f20d"}.fa-calculator:before{content:"\f1ec"}.fa-calendar:before{content:"\f133"}.fa-calendar-alt:before{content:"\f073"}.fa-calendar-check:before{content:"\f274"}.fa-calendar-day:before{content:"\f783"}.fa-calendar-minus:before{content:"\f272"}.fa-calendar-plus:before{content:"\f271"}.fa-calendar-times:before{content:"\f273"}.fa-calendar-week:before{content:"\f784"}.fa-camera:before{content:"\f030"}.fa-camera-retro:before{content:"\f083"}.fa-campground:before{content:"\f6bb"}.fa-canadian-maple-leaf:before{content:"\f785"}.fa-candy-cane:before{content:"\f786"}.fa-cannabis:before{content:"\f55f"}.fa-capsules:before{content:"\f46b"}.fa-car:before{content:"\f1b9"}.fa-car-alt:before{content:"\f5de"}.fa-car-battery:before{content:"\f5df"}.fa-car-crash:before{content:"\f5e1"}.fa-car-side:before{content:"\f5e4"}.fa-caravan:before{content:"\f8ff"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-caret-square-down:before{content:"\f150"}.fa-caret-square-left:before{content:"\f191"}.fa-caret-square-right:before{content:"\f152"}.fa-caret-square-up:before{content:"\f151"}.fa-caret-up:before{content:"\f0d8"}.fa-carrot:before{content:"\f787"}.fa-cart-arrow-down:before{content:"\f218"}.fa-cart-plus:before{content:"\f217"}.fa-cash-register:before{content:"\f788"}.fa-cat:before{content:"\f6be"}.fa-cc-amazon-pay:before{content:"\f42d"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-apple-pay:before{content:"\f416"}.fa-cc-diners-club:before{content:"\f24c"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-cc-visa:before{content:"\f1f0"}.fa-centercode:before{content:"\f380"}.fa-centos:before{content:"\f789"}.fa-certificate:before{content:"\f0a3"}.fa-chair:before{content:"\f6c0"}.fa-chalkboard:before{content:"\f51b"}.fa-chalkboard-teacher:before{content:"\f51c"}.fa-charging-station:before{content:"\f5e7"}.fa-chart-area:before{content:"\f1fe"}.fa-chart-bar:before{content:"\f080"}.fa-chart-line:before{content:"\f201"}.fa-chart-pie:before{content:"\f200"}.fa-check:before{content:"\f00c"}.fa-check-circle:before{content:"\f058"}.fa-check-double:before{content:"\f560"}.fa-check-square:before{content:"\f14a"}.fa-cheese:before{content:"\f7ef"}.fa-chess:before{content:"\f439"}.fa-chess-bishop:before{content:"\f43a"}.fa-chess-board:before{content:"\f43c"}.fa-chess-king:before{content:"\f43f"}.fa-chess-knight:before{content:"\f441"}.fa-chess-pawn:before{content:"\f443"}.fa-chess-queen:before{content:"\f445"}.fa-chess-rook:before{content:"\f447"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-down:before{content:"\f078"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-chevron-up:before{content:"\f077"}.fa-child:before{content:"\f1ae"}.fa-chrome:before{content:"\f268"}.fa-chromecast:before{content:"\f838"}.fa-church:before{content:"\f51d"}.fa-circle:before{content:"\f111"}.fa-circle-notch:before{content:"\f1ce"}.fa-city:before{content:"\f64f"}.fa-clinic-medical:before{content:"\f7f2"}.fa-clipboard:before{content:"\f328"}.fa-clipboard-check:before{content:"\f46c"}.fa-clipboard-list:before{content:"\f46d"}.fa-clock:before{content:"\f017"}.fa-clone:before{content:"\f24d"}.fa-closed-captioning:before{content:"\f20a"}.fa-cloud:before{content:"\f0c2"}.fa-cloud-download-alt:before{content:"\f381"}.fa-cloud-meatball:before{content:"\f73b"}.fa-cloud-moon:before{content:"\f6c3"}.fa-cloud-moon-rain:before{content:"\f73c"}.fa-cloud-rain:before{content:"\f73d"}.fa-cloud-showers-heavy:before{content:"\f740"}.fa-cloud-sun:before{content:"\f6c4"}.fa-cloud-sun-rain:before{content:"\f743"}.fa-cloud-upload-alt:before{content:"\f382"}.fa-cloudflare:before{content:"\e07d"}.fa-cloudscale:before{content:"\f383"}.fa-cloudsmith:before{content:"\f384"}.fa-cloudversify:before{content:"\f385"}.fa-cocktail:before{content:"\f561"}.fa-code:before{content:"\f121"}.fa-code-branch:before{content:"\f126"}.fa-codepen:before{content:"\f1cb"}.fa-codiepie:before{content:"\f284"}.fa-coffee:before{content:"\f0f4"}.fa-cog:before{content:"\f013"}.fa-cogs:before{content:"\f085"}.fa-coins:before{content:"\f51e"}.fa-columns:before{content:"\f0db"}.fa-comment:before{content:"\f075"}.fa-comment-alt:before{content:"\f27a"}.fa-comment-dollar:before{content:"\f651"}.fa-comment-dots:before{content:"\f4ad"}.fa-comment-medical:before{content:"\f7f5"}.fa-comment-slash:before{content:"\f4b3"}.fa-comments:before{content:"\f086"}.fa-comments-dollar:before{content:"\f653"}.fa-compact-disc:before{content:"\f51f"}.fa-compass:before{content:"\f14e"}.fa-compress:before{content:"\f066"}.fa-compress-alt:before{content:"\f422"}.fa-compress-arrows-alt:before{content:"\f78c"}.fa-concierge-bell:before{content:"\f562"}.fa-confluence:before{content:"\f78d"}.fa-connectdevelop:before{content:"\f20e"}.fa-contao:before{content:"\f26d"}.fa-cookie:before{content:"\f563"}.fa-cookie-bite:before{content:"\f564"}.fa-copy:before{content:"\f0c5"}.fa-copyright:before{content:"\f1f9"}.fa-cotton-bureau:before{content:"\f89e"}.fa-couch:before{content:"\f4b8"}.fa-cpanel:before{content:"\f388"}.fa-creative-commons:before{content:"\f25e"}.fa-creative-commons-by:before{content:"\f4e7"}.fa-creative-commons-nc:before{content:"\f4e8"}.fa-creative-commons-nc-eu:before{content:"\f4e9"}.fa-creative-commons-nc-jp:before{content:"\f4ea"}.fa-creative-commons-nd:before{content:"\f4eb"}.fa-creative-commons-pd:before{content:"\f4ec"}.fa-creative-commons-pd-alt:before{content:"\f4ed"}.fa-creative-commons-remix:before{content:"\f4ee"}.fa-creative-commons-sa:before{content:"\f4ef"}.fa-creative-commons-sampling:before{content:"\f4f0"}.fa-creative-commons-sampling-plus:before{content:"\f4f1"}.fa-creative-commons-share:before{content:"\f4f2"}.fa-creative-commons-zero:before{content:"\f4f3"}.fa-credit-card:before{content:"\f09d"}.fa-critical-role:before{content:"\f6c9"}.fa-crop:before{content:"\f125"}.fa-crop-alt:before{content:"\f565"}.fa-cross:before{content:"\f654"}.fa-crosshairs:before{content:"\f05b"}.fa-crow:before{content:"\f520"}.fa-crown:before{content:"\f521"}.fa-crutch:before{content:"\f7f7"}.fa-css3:before{content:"\f13c"}.fa-css3-alt:before{content:"\f38b"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-cut:before{content:"\f0c4"}.fa-cuttlefish:before{content:"\f38c"}.fa-d-and-d:before{content:"\f38d"}.fa-d-and-d-beyond:before{content:"\f6ca"}.fa-dailymotion:before{content:"\e052"}.fa-dashcube:before{content:"\f210"}.fa-database:before{content:"\f1c0"}.fa-deaf:before{content:"\f2a4"}.fa-deezer:before{content:"\e077"}.fa-delicious:before{content:"\f1a5"}.fa-democrat:before{content:"\f747"}.fa-deploydog:before{content:"\f38e"}.fa-deskpro:before{content:"\f38f"}.fa-desktop:before{content:"\f108"}.fa-dev:before{content:"\f6cc"}.fa-deviantart:before{content:"\f1bd"}.fa-dharmachakra:before{content:"\f655"}.fa-dhl:before{content:"\f790"}.fa-diagnoses:before{content:"\f470"}.fa-diaspora:before{content:"\f791"}.fa-dice:before{content:"\f522"}.fa-dice-d20:before{content:"\f6cf"}.fa-dice-d6:before{content:"\f6d1"}.fa-dice-five:before{content:"\f523"}.fa-dice-four:before{content:"\f524"}.fa-dice-one:before{content:"\f525"}.fa-dice-six:before{content:"\f526"}.fa-dice-three:before{content:"\f527"}.fa-dice-two:before{content:"\f528"}.fa-digg:before{content:"\f1a6"}.fa-digital-ocean:before{content:"\f391"}.fa-digital-tachograph:before{content:"\f566"}.fa-directions:before{content:"\f5eb"}.fa-discord:before{content:"\f392"}.fa-discourse:before{content:"\f393"}.fa-disease:before{content:"\f7fa"}.fa-divide:before{content:"\f529"}.fa-dizzy:before{content:"\f567"}.fa-dna:before{content:"\f471"}.fa-dochub:before{content:"\f394"}.fa-docker:before{content:"\f395"}.fa-dog:before{content:"\f6d3"}.fa-dollar-sign:before{content:"\f155"}.fa-dolly:before{content:"\f472"}.fa-dolly-flatbed:before{content:"\f474"}.fa-donate:before{content:"\f4b9"}.fa-door-closed:before{content:"\f52a"}.fa-door-open:before{content:"\f52b"}.fa-dot-circle:before{content:"\f192"}.fa-dove:before{content:"\f4ba"}.fa-download:before{content:"\f019"}.fa-draft2digital:before{content:"\f396"}.fa-drafting-compass:before{content:"\f568"}.fa-dragon:before{content:"\f6d5"}.fa-draw-polygon:before{content:"\f5ee"}.fa-dribbble:before{content:"\f17d"}.fa-dribbble-square:before{content:"\f397"}.fa-dropbox:before{content:"\f16b"}.fa-drum:before{content:"\f569"}.fa-drum-steelpan:before{content:"\f56a"}.fa-drumstick-bite:before{content:"\f6d7"}.fa-drupal:before{content:"\f1a9"}.fa-dumbbell:before{content:"\f44b"}.fa-dumpster:before{content:"\f793"}.fa-dumpster-fire:before{content:"\f794"}.fa-dungeon:before{content:"\f6d9"}.fa-dyalog:before{content:"\f399"}.fa-earlybirds:before{content:"\f39a"}.fa-ebay:before{content:"\f4f4"}.fa-edge:before{content:"\f282"}.fa-edge-legacy:before{content:"\e078"}.fa-edit:before{content:"\f044"}.fa-egg:before{content:"\f7fb"}.fa-eject:before{content:"\f052"}.fa-elementor:before{content:"\f430"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-ello:before{content:"\f5f1"}.fa-ember:before{content:"\f423"}.fa-empire:before{content:"\f1d1"}.fa-envelope:before{content:"\f0e0"}.fa-envelope-open:before{content:"\f2b6"}.fa-envelope-open-text:before{content:"\f658"}.fa-envelope-square:before{content:"\f199"}.fa-envira:before{content:"\f299"}.fa-equals:before{content:"\f52c"}.fa-eraser:before{content:"\f12d"}.fa-erlang:before{content:"\f39d"}.fa-ethereum:before{content:"\f42e"}.fa-ethernet:before{content:"\f796"}.fa-etsy:before{content:"\f2d7"}.fa-euro-sign:before{content:"\f153"}.fa-evernote:before{content:"\f839"}.fa-exchange-alt:before{content:"\f362"}.fa-exclamation:before{content:"\f12a"}.fa-exclamation-circle:before{content:"\f06a"}.fa-exclamation-triangle:before{content:"\f071"}.fa-expand:before{content:"\f065"}.fa-expand-alt:before{content:"\f424"}.fa-expand-arrows-alt:before{content:"\f31e"}.fa-expeditedssl:before{content:"\f23e"}.fa-external-link-alt:before{content:"\f35d"}.fa-external-link-square-alt:before{content:"\f360"}.fa-eye:before{content:"\f06e"}.fa-eye-dropper:before{content:"\f1fb"}.fa-eye-slash:before{content:"\f070"}.fa-facebook:before{content:"\f09a"}.fa-facebook-f:before{content:"\f39e"}.fa-facebook-messenger:before{content:"\f39f"}.fa-facebook-square:before{content:"\f082"}.fa-fan:before{content:"\f863"}.fa-fantasy-flight-games:before{content:"\f6dc"}.fa-fast-backward:before{content:"\f049"}.fa-fast-forward:before{content:"\f050"}.fa-faucet:before{content:"\e005"}.fa-fax:before{content:"\f1ac"}.fa-feather:before{content:"\f52d"}.fa-feather-alt:before{content:"\f56b"}.fa-fedex:before{content:"\f797"}.fa-fedora:before{content:"\f798"}.fa-female:before{content:"\f182"}.fa-fighter-jet:before{content:"\f0fb"}.fa-figma:before{content:"\f799"}.fa-file:before{content:"\f15b"}.fa-file-alt:before{content:"\f15c"}.fa-file-archive:before{content:"\f1c6"}.fa-file-audio:before{content:"\f1c7"}.fa-file-code:before{content:"\f1c9"}.fa-file-contract:before{content:"\f56c"}.fa-file-csv:before{content:"\f6dd"}.fa-file-download:before{content:"\f56d"}.fa-file-excel:before{content:"\f1c3"}.fa-file-export:before{content:"\f56e"}.fa-file-image:before{content:"\f1c5"}.fa-file-import:before{content:"\f56f"}.fa-file-invoice:before{content:"\f570"}.fa-file-invoice-dollar:before{content:"\f571"}.fa-file-medical:before{content:"\f477"}.fa-file-medical-alt:before{content:"\f478"}.fa-file-pdf:before{content:"\f1c1"}.fa-file-powerpoint:before{content:"\f1c4"}.fa-file-prescription:before{content:"\f572"}.fa-file-signature:before{content:"\f573"}.fa-file-upload:before{content:"\f574"}.fa-file-video:before{content:"\f1c8"}.fa-file-word:before{content:"\f1c2"}.fa-fill:before{content:"\f575"}.fa-fill-drip:before{content:"\f576"}.fa-film:before{content:"\f008"}.fa-filter:before{content:"\f0b0"}.fa-fingerprint:before{content:"\f577"}.fa-fire:before{content:"\f06d"}.fa-fire-alt:before{content:"\f7e4"}.fa-fire-extinguisher:before{content:"\f134"}.fa-firefox:before{content:"\f269"}.fa-firefox-browser:before{content:"\e007"}.fa-first-aid:before{content:"\f479"}.fa-first-order:before{content:"\f2b0"}.fa-first-order-alt:before{content:"\f50a"}.fa-firstdraft:before{content:"\f3a1"}.fa-fish:before{content:"\f578"}.fa-fist-raised:before{content:"\f6de"}.fa-flag:before{content:"\f024"}.fa-flag-checkered:before{content:"\f11e"}.fa-flag-usa:before{content:"\f74d"}.fa-flask:before{content:"\f0c3"}.fa-flickr:before{content:"\f16e"}.fa-flipboard:before{content:"\f44d"}.fa-flushed:before{content:"\f579"}.fa-fly:before{content:"\f417"}.fa-folder:before{content:"\f07b"}.fa-folder-minus:before{content:"\f65d"}.fa-folder-open:before{content:"\f07c"}.fa-folder-plus:before{content:"\f65e"}.fa-font:before{content:"\f031"}.fa-font-awesome:before{content:"\f2b4"}.fa-font-awesome-alt:before{content:"\f35c"}.fa-font-awesome-flag:before{content:"\f425"}.fa-font-awesome-logo-full:before{content:"\f4e6"}.fa-fonticons:before{content:"\f280"}.fa-fonticons-fi:before{content:"\f3a2"}.fa-football-ball:before{content:"\f44e"}.fa-fort-awesome:before{content:"\f286"}.fa-fort-awesome-alt:before{content:"\f3a3"}.fa-forumbee:before{content:"\f211"}.fa-forward:before{content:"\f04e"}.fa-foursquare:before{content:"\f180"}.fa-free-code-camp:before{content:"\f2c5"}.fa-freebsd:before{content:"\f3a4"}.fa-frog:before{content:"\f52e"}.fa-frown:before{content:"\f119"}.fa-frown-open:before{content:"\f57a"}.fa-fulcrum:before{content:"\f50b"}.fa-funnel-dollar:before{content:"\f662"}.fa-futbol:before{content:"\f1e3"}.fa-galactic-republic:before{content:"\f50c"}.fa-galactic-senate:before{content:"\f50d"}.fa-gamepad:before{content:"\f11b"}.fa-gas-pump:before{content:"\f52f"}.fa-gavel:before{content:"\f0e3"}.fa-gem:before{content:"\f3a5"}.fa-genderless:before{content:"\f22d"}.fa-get-pocket:before{content:"\f265"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-ghost:before{content:"\f6e2"}.fa-gift:before{content:"\f06b"}.fa-gifts:before{content:"\f79c"}.fa-git:before{content:"\f1d3"}.fa-git-alt:before{content:"\f841"}.fa-git-square:before{content:"\f1d2"}.fa-github:before{content:"\f09b"}.fa-github-alt:before{content:"\f113"}.fa-github-square:before{content:"\f092"}.fa-gitkraken:before{content:"\f3a6"}.fa-gitlab:before{content:"\f296"}.fa-gitter:before{content:"\f426"}.fa-glass-cheers:before{content:"\f79f"}.fa-glass-martini:before{content:"\f000"}.fa-glass-martini-alt:before{content:"\f57b"}.fa-glass-whiskey:before{content:"\f7a0"}.fa-glasses:before{content:"\f530"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-globe:before{content:"\f0ac"}.fa-globe-africa:before{content:"\f57c"}.fa-globe-americas:before{content:"\f57d"}.fa-globe-asia:before{content:"\f57e"}.fa-globe-europe:before{content:"\f7a2"}.fa-gofore:before{content:"\f3a7"}.fa-golf-ball:before{content:"\f450"}.fa-goodreads:before{content:"\f3a8"}.fa-goodreads-g:before{content:"\f3a9"}.fa-google:before{content:"\f1a0"}.fa-google-drive:before{content:"\f3aa"}.fa-google-pay:before{content:"\e079"}.fa-google-play:before{content:"\f3ab"}.fa-google-plus:before{content:"\f2b3"}.fa-google-plus-g:before{content:"\f0d5"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-wallet:before{content:"\f1ee"}.fa-gopuram:before{content:"\f664"}.fa-graduation-cap:before{content:"\f19d"}.fa-gratipay:before{content:"\f184"}.fa-grav:before{content:"\f2d6"}.fa-greater-than:before{content:"\f531"}.fa-greater-than-equal:before{content:"\f532"}.fa-grimace:before{content:"\f57f"}.fa-grin:before{content:"\f580"}.fa-grin-alt:before{content:"\f581"}.fa-grin-beam:before{content:"\f582"}.fa-grin-beam-sweat:before{content:"\f583"}.fa-grin-hearts:before{content:"\f584"}.fa-grin-squint:before{content:"\f585"}.fa-grin-squint-tears:before{content:"\f586"}.fa-grin-stars:before{content:"\f587"}.fa-grin-tears:before{content:"\f588"}.fa-grin-tongue:before{content:"\f589"}.fa-grin-tongue-squint:before{content:"\f58a"}.fa-grin-tongue-wink:before{content:"\f58b"}.fa-grin-wink:before{content:"\f58c"}.fa-grip-horizontal:before{content:"\f58d"}.fa-grip-lines:before{content:"\f7a4"}.fa-grip-lines-vertical:before{content:"\f7a5"}.fa-grip-vertical:before{content:"\f58e"}.fa-gripfire:before{content:"\f3ac"}.fa-grunt:before{content:"\f3ad"}.fa-guilded:before{content:"\e07e"}.fa-guitar:before{content:"\f7a6"}.fa-gulp:before{content:"\f3ae"}.fa-h-square:before{content:"\f0fd"}.fa-hacker-news:before{content:"\f1d4"}.fa-hacker-news-square:before{content:"\f3af"}.fa-hackerrank:before{content:"\f5f7"}.fa-hamburger:before{content:"\f805"}.fa-hammer:before{content:"\f6e3"}.fa-hamsa:before{content:"\f665"}.fa-hand-holding:before{content:"\f4bd"}.fa-hand-holding-heart:before{content:"\f4be"}.fa-hand-holding-medical:before{content:"\e05c"}.fa-hand-holding-usd:before{content:"\f4c0"}.fa-hand-holding-water:before{content:"\f4c1"}.fa-hand-lizard:before{content:"\f258"}.fa-hand-middle-finger:before{content:"\f806"}.fa-hand-paper:before{content:"\f256"}.fa-hand-peace:before{content:"\f25b"}.fa-hand-point-down:before{content:"\f0a7"}.fa-hand-point-left:before{content:"\f0a5"}.fa-hand-point-right:before{content:"\f0a4"}.fa-hand-point-up:before{content:"\f0a6"}.fa-hand-pointer:before{content:"\f25a"}.fa-hand-rock:before{content:"\f255"}.fa-hand-scissors:before{content:"\f257"}.fa-hand-sparkles:before{content:"\e05d"}.fa-hand-spock:before{content:"\f259"}.fa-hands:before{content:"\f4c2"}.fa-hands-helping:before{content:"\f4c4"}.fa-hands-wash:before{content:"\e05e"}.fa-handshake:before{content:"\f2b5"}.fa-handshake-alt-slash:before{content:"\e05f"}.fa-handshake-slash:before{content:"\e060"}.fa-hanukiah:before{content:"\f6e6"}.fa-hard-hat:before{content:"\f807"}.fa-hashtag:before{content:"\f292"}.fa-hat-cowboy:before{content:"\f8c0"}.fa-hat-cowboy-side:before{content:"\f8c1"}.fa-hat-wizard:before{content:"\f6e8"}.fa-hdd:before{content:"\f0a0"}.fa-head-side-cough:before{content:"\e061"}.fa-head-side-cough-slash:before{content:"\e062"}.fa-head-side-mask:before{content:"\e063"}.fa-head-side-virus:before{content:"\e064"}.fa-heading:before{content:"\f1dc"}.fa-headphones:before{content:"\f025"}.fa-headphones-alt:before{content:"\f58f"}.fa-headset:before{content:"\f590"}.fa-heart:before{content:"\f004"}.fa-heart-broken:before{content:"\f7a9"}.fa-heartbeat:before{content:"\f21e"}.fa-helicopter:before{content:"\f533"}.fa-highlighter:before{content:"\f591"}.fa-hiking:before{content:"\f6ec"}.fa-hippo:before{content:"\f6ed"}.fa-hips:before{content:"\f452"}.fa-hire-a-helper:before{content:"\f3b0"}.fa-history:before{content:"\f1da"}.fa-hive:before{content:"\e07f"}.fa-hockey-puck:before{content:"\f453"}.fa-holly-berry:before{content:"\f7aa"}.fa-home:before{content:"\f015"}.fa-hooli:before{content:"\f427"}.fa-hornbill:before{content:"\f592"}.fa-horse:before{content:"\f6f0"}.fa-horse-head:before{content:"\f7ab"}.fa-hospital:before{content:"\f0f8"}.fa-hospital-alt:before{content:"\f47d"}.fa-hospital-symbol:before{content:"\f47e"}.fa-hospital-user:before{content:"\f80d"}.fa-hot-tub:before{content:"\f593"}.fa-hotdog:before{content:"\f80f"}.fa-hotel:before{content:"\f594"}.fa-hotjar:before{content:"\f3b1"}.fa-hourglass:before{content:"\f254"}.fa-hourglass-end:before{content:"\f253"}.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-start:before{content:"\f251"}.fa-house-damage:before{content:"\f6f1"}.fa-house-user:before{content:"\e065"}.fa-houzz:before{content:"\f27c"}.fa-hryvnia:before{content:"\f6f2"}.fa-html5:before{content:"\f13b"}.fa-hubspot:before{content:"\f3b2"}.fa-i-cursor:before{content:"\f246"}.fa-ice-cream:before{content:"\f810"}.fa-icicles:before{content:"\f7ad"}.fa-icons:before{content:"\f86d"}.fa-id-badge:before{content:"\f2c1"}.fa-id-card:before{content:"\f2c2"}.fa-id-card-alt:before{content:"\f47f"}.fa-ideal:before{content:"\e013"}.fa-igloo:before{content:"\f7ae"}.fa-image:before{content:"\f03e"}.fa-images:before{content:"\f302"}.fa-imdb:before{content:"\f2d8"}.fa-inbox:before{content:"\f01c"}.fa-indent:before{content:"\f03c"}.fa-industry:before{content:"\f275"}.fa-infinity:before{content:"\f534"}.fa-info:before{content:"\f129"}.fa-info-circle:before{content:"\f05a"}.fa-innosoft:before{content:"\e080"}.fa-instagram:before{content:"\f16d"}.fa-instagram-square:before{content:"\e055"}.fa-instalod:before{content:"\e081"}.fa-intercom:before{content:"\f7af"}.fa-internet-explorer:before{content:"\f26b"}.fa-invision:before{content:"\f7b0"}.fa-ioxhost:before{content:"\f208"}.fa-italic:before{content:"\f033"}.fa-itch-io:before{content:"\f83a"}.fa-itunes:before{content:"\f3b4"}.fa-itunes-note:before{content:"\f3b5"}.fa-java:before{content:"\f4e4"}.fa-jedi:before{content:"\f669"}.fa-jedi-order:before{content:"\f50e"}.fa-jenkins:before{content:"\f3b6"}.fa-jira:before{content:"\f7b1"}.fa-joget:before{content:"\f3b7"}.fa-joint:before{content:"\f595"}.fa-joomla:before{content:"\f1aa"}.fa-journal-whills:before{content:"\f66a"}.fa-js:before{content:"\f3b8"}.fa-js-square:before{content:"\f3b9"}.fa-jsfiddle:before{content:"\f1cc"}.fa-kaaba:before{content:"\f66b"}.fa-kaggle:before{content:"\f5fa"}.fa-key:before{content:"\f084"}.fa-keybase:before{content:"\f4f5"}.fa-keyboard:before{content:"\f11c"}.fa-keycdn:before{content:"\f3ba"}.fa-khanda:before{content:"\f66d"}.fa-kickstarter:before{content:"\f3bb"}.fa-kickstarter-k:before{content:"\f3bc"}.fa-kiss:before{content:"\f596"}.fa-kiss-beam:before{content:"\f597"}.fa-kiss-wink-heart:before{content:"\f598"}.fa-kiwi-bird:before{content:"\f535"}.fa-korvue:before{content:"\f42f"}.fa-landmark:before{content:"\f66f"}.fa-language:before{content:"\f1ab"}.fa-laptop:before{content:"\f109"}.fa-laptop-code:before{content:"\f5fc"}.fa-laptop-house:before{content:"\e066"}.fa-laptop-medical:before{content:"\f812"}.fa-laravel:before{content:"\f3bd"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-laugh:before{content:"\f599"}.fa-laugh-beam:before{content:"\f59a"}.fa-laugh-squint:before{content:"\f59b"}.fa-laugh-wink:before{content:"\f59c"}.fa-layer-group:before{content:"\f5fd"}.fa-leaf:before{content:"\f06c"}.fa-leanpub:before{content:"\f212"}.fa-lemon:before{content:"\f094"}.fa-less:before{content:"\f41d"}.fa-less-than:before{content:"\f536"}.fa-less-than-equal:before{content:"\f537"}.fa-level-down-alt:before{content:"\f3be"}.fa-level-up-alt:before{content:"\f3bf"}.fa-life-ring:before{content:"\f1cd"}.fa-lightbulb:before{content:"\f0eb"}.fa-line:before{content:"\f3c0"}.fa-link:before{content:"\f0c1"}.fa-linkedin:before{content:"\f08c"}.fa-linkedin-in:before{content:"\f0e1"}.fa-linode:before{content:"\f2b8"}.fa-linux:before{content:"\f17c"}.fa-lira-sign:before{content:"\f195"}.fa-list:before{content:"\f03a"}.fa-list-alt:before{content:"\f022"}.fa-list-ol:before{content:"\f0cb"}.fa-list-ul:before{content:"\f0ca"}.fa-location-arrow:before{content:"\f124"}.fa-lock:before{content:"\f023"}.fa-lock-open:before{content:"\f3c1"}.fa-long-arrow-alt-down:before{content:"\f309"}.fa-long-arrow-alt-left:before{content:"\f30a"}.fa-long-arrow-alt-right:before{content:"\f30b"}.fa-long-arrow-alt-up:before{content:"\f30c"}.fa-low-vision:before{content:"\f2a8"}.fa-luggage-cart:before{content:"\f59d"}.fa-lungs:before{content:"\f604"}.fa-lungs-virus:before{content:"\e067"}.fa-lyft:before{content:"\f3c3"}.fa-magento:before{content:"\f3c4"}.fa-magic:before{content:"\f0d0"}.fa-magnet:before{content:"\f076"}.fa-mail-bulk:before{content:"\f674"}.fa-mailchimp:before{content:"\f59e"}.fa-male:before{content:"\f183"}.fa-mandalorian:before{content:"\f50f"}.fa-map:before{content:"\f279"}.fa-map-marked:before{content:"\f59f"}.fa-map-marked-alt:before{content:"\f5a0"}.fa-map-marker:before{content:"\f041"}.fa-map-marker-alt:before{content:"\f3c5"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-markdown:before{content:"\f60f"}.fa-marker:before{content:"\f5a1"}.fa-mars:before{content:"\f222"}.fa-mars-double:before{content:"\f227"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mask:before{content:"\f6fa"}.fa-mastodon:before{content:"\f4f6"}.fa-maxcdn:before{content:"\f136"}.fa-mdb:before{content:"\f8ca"}.fa-medal:before{content:"\f5a2"}.fa-medapps:before{content:"\f3c6"}.fa-medium:before{content:"\f23a"}.fa-medium-m:before{content:"\f3c7"}.fa-medkit:before{content:"\f0fa"}.fa-medrt:before{content:"\f3c8"}.fa-meetup:before{content:"\f2e0"}.fa-megaport:before{content:"\f5a3"}.fa-meh:before{content:"\f11a"}.fa-meh-blank:before{content:"\f5a4"}.fa-meh-rolling-eyes:before{content:"\f5a5"}.fa-memory:before{content:"\f538"}.fa-mendeley:before{content:"\f7b3"}.fa-menorah:before{content:"\f676"}.fa-mercury:before{content:"\f223"}.fa-meteor:before{content:"\f753"}.fa-microblog:before{content:"\e01a"}.fa-microchip:before{content:"\f2db"}.fa-microphone:before{content:"\f130"}.fa-microphone-alt:before{content:"\f3c9"}.fa-microphone-alt-slash:before{content:"\f539"}.fa-microphone-slash:before{content:"\f131"}.fa-microscope:before{content:"\f610"}.fa-microsoft:before{content:"\f3ca"}.fa-minus:before{content:"\f068"}.fa-minus-circle:before{content:"\f056"}.fa-minus-square:before{content:"\f146"}.fa-mitten:before{content:"\f7b5"}.fa-mix:before{content:"\f3cb"}.fa-mixcloud:before{content:"\f289"}.fa-mixer:before{content:"\e056"}.fa-mizuni:before{content:"\f3cc"}.fa-mobile:before{content:"\f10b"}.fa-mobile-alt:before{content:"\f3cd"}.fa-modx:before{content:"\f285"}.fa-monero:before{content:"\f3d0"}.fa-money-bill:before{content:"\f0d6"}.fa-money-bill-alt:before{content:"\f3d1"}.fa-money-bill-wave:before{content:"\f53a"}.fa-money-bill-wave-alt:before{content:"\f53b"}.fa-money-check:before{content:"\f53c"}.fa-money-check-alt:before{content:"\f53d"}.fa-monument:before{content:"\f5a6"}.fa-moon:before{content:"\f186"}.fa-mortar-pestle:before{content:"\f5a7"}.fa-mosque:before{content:"\f678"}.fa-motorcycle:before{content:"\f21c"}.fa-mountain:before{content:"\f6fc"}.fa-mouse:before{content:"\f8cc"}.fa-mouse-pointer:before{content:"\f245"}.fa-mug-hot:before{content:"\f7b6"}.fa-music:before{content:"\f001"}.fa-napster:before{content:"\f3d2"}.fa-neos:before{content:"\f612"}.fa-network-wired:before{content:"\f6ff"}.fa-neuter:before{content:"\f22c"}.fa-newspaper:before{content:"\f1ea"}.fa-nimblr:before{content:"\f5a8"}.fa-node:before{content:"\f419"}.fa-node-js:before{content:"\f3d3"}.fa-not-equal:before{content:"\f53e"}.fa-notes-medical:before{content:"\f481"}.fa-npm:before{content:"\f3d4"}.fa-ns8:before{content:"\f3d5"}.fa-nutritionix:before{content:"\f3d6"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-octopus-deploy:before{content:"\e082"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-oil-can:before{content:"\f613"}.fa-old-republic:before{content:"\f510"}.fa-om:before{content:"\f679"}.fa-opencart:before{content:"\f23d"}.fa-openid:before{content:"\f19b"}.fa-opera:before{content:"\f26a"}.fa-optin-monster:before{content:"\f23c"}.fa-orcid:before{content:"\f8d2"}.fa-osi:before{content:"\f41a"}.fa-otter:before{content:"\f700"}.fa-outdent:before{content:"\f03b"}.fa-page4:before{content:"\f3d7"}.fa-pagelines:before{content:"\f18c"}.fa-pager:before{content:"\f815"}.fa-paint-brush:before{content:"\f1fc"}.fa-paint-roller:before{content:"\f5aa"}.fa-palette:before{content:"\f53f"}.fa-palfed:before{content:"\f3d8"}.fa-pallet:before{content:"\f482"}.fa-paper-plane:before{content:"\f1d8"}.fa-paperclip:before{content:"\f0c6"}.fa-parachute-box:before{content:"\f4cd"}.fa-paragraph:before{content:"\f1dd"}.fa-parking:before{content:"\f540"}.fa-passport:before{content:"\f5ab"}.fa-pastafarianism:before{content:"\f67b"}.fa-paste:before{content:"\f0ea"}.fa-patreon:before{content:"\f3d9"}.fa-pause:before{content:"\f04c"}.fa-pause-circle:before{content:"\f28b"}.fa-paw:before{content:"\f1b0"}.fa-paypal:before{content:"\f1ed"}.fa-peace:before{content:"\f67c"}.fa-pen:before{content:"\f304"}.fa-pen-alt:before{content:"\f305"}.fa-pen-fancy:before{content:"\f5ac"}.fa-pen-nib:before{content:"\f5ad"}.fa-pen-square:before{content:"\f14b"}.fa-pencil-alt:before{content:"\f303"}.fa-pencil-ruler:before{content:"\f5ae"}.fa-penny-arcade:before{content:"\f704"}.fa-people-arrows:before{content:"\e068"}.fa-people-carry:before{content:"\f4ce"}.fa-pepper-hot:before{content:"\f816"}.fa-perbyte:before{content:"\e083"}.fa-percent:before{content:"\f295"}.fa-percentage:before{content:"\f541"}.fa-periscope:before{content:"\f3da"}.fa-person-booth:before{content:"\f756"}.fa-phabricator:before{content:"\f3db"}.fa-phoenix-framework:before{content:"\f3dc"}.fa-phoenix-squadron:before{content:"\f511"}.fa-phone:before{content:"\f095"}.fa-phone-alt:before{content:"\f879"}.fa-phone-slash:before{content:"\f3dd"}.fa-phone-square:before{content:"\f098"}.fa-phone-square-alt:before{content:"\f87b"}.fa-phone-volume:before{content:"\f2a0"}.fa-photo-video:before{content:"\f87c"}.fa-php:before{content:"\f457"}.fa-pied-piper:before{content:"\f2ae"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-pied-piper-hat:before{content:"\f4e5"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-pied-piper-square:before{content:"\e01e"}.fa-piggy-bank:before{content:"\f4d3"}.fa-pills:before{content:"\f484"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-p:before{content:"\f231"}.fa-pinterest-square:before{content:"\f0d3"}.fa-pizza-slice:before{content:"\f818"}.fa-place-of-worship:before{content:"\f67f"}.fa-plane:before{content:"\f072"}.fa-plane-arrival:before{content:"\f5af"}.fa-plane-departure:before{content:"\f5b0"}.fa-plane-slash:before{content:"\e069"}.fa-play:before{content:"\f04b"}.fa-play-circle:before{content:"\f144"}.fa-playstation:before{content:"\f3df"}.fa-plug:before{content:"\f1e6"}.fa-plus:before{content:"\f067"}.fa-plus-circle:before{content:"\f055"}.fa-plus-square:before{content:"\f0fe"}.fa-podcast:before{content:"\f2ce"}.fa-poll:before{content:"\f681"}.fa-poll-h:before{content:"\f682"}.fa-poo:before{content:"\f2fe"}.fa-poo-storm:before{content:"\f75a"}.fa-poop:before{content:"\f619"}.fa-portrait:before{content:"\f3e0"}.fa-pound-sign:before{content:"\f154"}.fa-power-off:before{content:"\f011"}.fa-pray:before{content:"\f683"}.fa-praying-hands:before{content:"\f684"}.fa-prescription:before{content:"\f5b1"}.fa-prescription-bottle:before{content:"\f485"}.fa-prescription-bottle-alt:before{content:"\f486"}.fa-print:before{content:"\f02f"}.fa-procedures:before{content:"\f487"}.fa-product-hunt:before{content:"\f288"}.fa-project-diagram:before{content:"\f542"}.fa-pump-medical:before{content:"\e06a"}.fa-pump-soap:before{content:"\e06b"}.fa-pushed:before{content:"\f3e1"}.fa-puzzle-piece:before{content:"\f12e"}.fa-python:before{content:"\f3e2"}.fa-qq:before{content:"\f1d6"}.fa-qrcode:before{content:"\f029"}.fa-question:before{content:"\f128"}.fa-question-circle:before{content:"\f059"}.fa-quidditch:before{content:"\f458"}.fa-quinscape:before{content:"\f459"}.fa-quora:before{content:"\f2c4"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-quran:before{content:"\f687"}.fa-r-project:before{content:"\f4f7"}.fa-radiation:before{content:"\f7b9"}.fa-radiation-alt:before{content:"\f7ba"}.fa-rainbow:before{content:"\f75b"}.fa-random:before{content:"\f074"}.fa-raspberry-pi:before{content:"\f7bb"}.fa-ravelry:before{content:"\f2d9"}.fa-react:before{content:"\f41b"}.fa-reacteurope:before{content:"\f75d"}.fa-readme:before{content:"\f4d5"}.fa-rebel:before{content:"\f1d0"}.fa-receipt:before{content:"\f543"}.fa-record-vinyl:before{content:"\f8d9"}.fa-recycle:before{content:"\f1b8"}.fa-red-river:before{content:"\f3e3"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-alien:before{content:"\f281"}.fa-reddit-square:before{content:"\f1a2"}.fa-redhat:before{content:"\f7bc"}.fa-redo:before{content:"\f01e"}.fa-redo-alt:before{content:"\f2f9"}.fa-registered:before{content:"\f25d"}.fa-remove-format:before{content:"\f87d"}.fa-renren:before{content:"\f18b"}.fa-reply:before{content:"\f3e5"}.fa-reply-all:before{content:"\f122"}.fa-replyd:before{content:"\f3e6"}.fa-republican:before{content:"\f75e"}.fa-researchgate:before{content:"\f4f8"}.fa-resolving:before{content:"\f3e7"}.fa-restroom:before{content:"\f7bd"}.fa-retweet:before{content:"\f079"}.fa-rev:before{content:"\f5b2"}.fa-ribbon:before{content:"\f4d6"}.fa-ring:before{content:"\f70b"}.fa-road:before{content:"\f018"}.fa-robot:before{content:"\f544"}.fa-rocket:before{content:"\f135"}.fa-rocketchat:before{content:"\f3e8"}.fa-rockrms:before{content:"\f3e9"}.fa-route:before{content:"\f4d7"}.fa-rss:before{content:"\f09e"}.fa-rss-square:before{content:"\f143"}.fa-ruble-sign:before{content:"\f158"}.fa-ruler:before{content:"\f545"}.fa-ruler-combined:before{content:"\f546"}.fa-ruler-horizontal:before{content:"\f547"}.fa-ruler-vertical:before{content:"\f548"}.fa-running:before{content:"\f70c"}.fa-rupee-sign:before{content:"\f156"}.fa-rust:before{content:"\e07a"}.fa-sad-cry:before{content:"\f5b3"}.fa-sad-tear:before{content:"\f5b4"}.fa-safari:before{content:"\f267"}.fa-salesforce:before{content:"\f83b"}.fa-sass:before{content:"\f41e"}.fa-satellite:before{content:"\f7bf"}.fa-satellite-dish:before{content:"\f7c0"}.fa-save:before{content:"\f0c7"}.fa-schlix:before{content:"\f3ea"}.fa-school:before{content:"\f549"}.fa-screwdriver:before{content:"\f54a"}.fa-scribd:before{content:"\f28a"}.fa-scroll:before{content:"\f70e"}.fa-sd-card:before{content:"\f7c2"}.fa-search:before{content:"\f002"}.fa-search-dollar:before{content:"\f688"}.fa-search-location:before{content:"\f689"}.fa-search-minus:before{content:"\f010"}.fa-search-plus:before{content:"\f00e"}.fa-searchengin:before{content:"\f3eb"}.fa-seedling:before{content:"\f4d8"}.fa-sellcast:before{content:"\f2da"}.fa-sellsy:before{content:"\f213"}.fa-server:before{content:"\f233"}.fa-servicestack:before{content:"\f3ec"}.fa-shapes:before{content:"\f61f"}.fa-share:before{content:"\f064"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-share-square:before{content:"\f14d"}.fa-shekel-sign:before{content:"\f20b"}.fa-shield-alt:before{content:"\f3ed"}.fa-shield-virus:before{content:"\e06c"}.fa-ship:before{content:"\f21a"}.fa-shipping-fast:before{content:"\f48b"}.fa-shirtsinbulk:before{content:"\f214"}.fa-shoe-prints:before{content:"\f54b"}.fa-shopify:before{content:"\e057"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-shopping-cart:before{content:"\f07a"}.fa-shopware:before{content:"\f5b5"}.fa-shower:before{content:"\f2cc"}.fa-shuttle-van:before{content:"\f5b6"}.fa-sign:before{content:"\f4d9"}.fa-sign-in-alt:before{content:"\f2f6"}.fa-sign-language:before{content:"\f2a7"}.fa-sign-out-alt:before{content:"\f2f5"}.fa-signal:before{content:"\f012"}.fa-signature:before{content:"\f5b7"}.fa-sim-card:before{content:"\f7c4"}.fa-simplybuilt:before{content:"\f215"}.fa-sink:before{content:"\e06d"}.fa-sistrix:before{content:"\f3ee"}.fa-sitemap:before{content:"\f0e8"}.fa-sith:before{content:"\f512"}.fa-skating:before{content:"\f7c5"}.fa-sketch:before{content:"\f7c6"}.fa-skiing:before{content:"\f7c9"}.fa-skiing-nordic:before{content:"\f7ca"}.fa-skull:before{content:"\f54c"}.fa-skull-crossbones:before{content:"\f714"}.fa-skyatlas:before{content:"\f216"}.fa-skype:before{content:"\f17e"}.fa-slack:before{content:"\f198"}.fa-slack-hash:before{content:"\f3ef"}.fa-slash:before{content:"\f715"}.fa-sleigh:before{content:"\f7cc"}.fa-sliders-h:before{content:"\f1de"}.fa-slideshare:before{content:"\f1e7"}.fa-smile:before{content:"\f118"}.fa-smile-beam:before{content:"\f5b8"}.fa-smile-wink:before{content:"\f4da"}.fa-smog:before{content:"\f75f"}.fa-smoking:before{content:"\f48d"}.fa-smoking-ban:before{content:"\f54d"}.fa-sms:before{content:"\f7cd"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.fa-snowboarding:before{content:"\f7ce"}.fa-snowflake:before{content:"\f2dc"}.fa-snowman:before{content:"\f7d0"}.fa-snowplow:before{content:"\f7d2"}.fa-soap:before{content:"\e06e"}.fa-socks:before{content:"\f696"}.fa-solar-panel:before{content:"\f5ba"}.fa-sort:before{content:"\f0dc"}.fa-sort-alpha-down:before{content:"\f15d"}.fa-sort-alpha-down-alt:before{content:"\f881"}.fa-sort-alpha-up:before{content:"\f15e"}.fa-sort-alpha-up-alt:before{content:"\f882"}.fa-sort-amount-down:before{content:"\f160"}.fa-sort-amount-down-alt:before{content:"\f884"}.fa-sort-amount-up:before{content:"\f161"}.fa-sort-amount-up-alt:before{content:"\f885"}.fa-sort-down:before{content:"\f0dd"}.fa-sort-numeric-down:before{content:"\f162"}.fa-sort-numeric-down-alt:before{content:"\f886"}.fa-sort-numeric-up:before{content:"\f163"}.fa-sort-numeric-up-alt:before{content:"\f887"}.fa-sort-up:before{content:"\f0de"}.fa-soundcloud:before{content:"\f1be"}.fa-sourcetree:before{content:"\f7d3"}.fa-spa:before{content:"\f5bb"}.fa-space-shuttle:before{content:"\f197"}.fa-speakap:before{content:"\f3f3"}.fa-speaker-deck:before{content:"\f83c"}.fa-spell-check:before{content:"\f891"}.fa-spider:before{content:"\f717"}.fa-spinner:before{content:"\f110"}.fa-splotch:before{content:"\f5bc"}.fa-spotify:before{content:"\f1bc"}.fa-spray-can:before{content:"\f5bd"}.fa-square:before{content:"\f0c8"}.fa-square-full:before{content:"\f45c"}.fa-square-root-alt:before{content:"\f698"}.fa-squarespace:before{content:"\f5be"}.fa-stack-exchange:before{content:"\f18d"}.fa-stack-overflow:before{content:"\f16c"}.fa-stackpath:before{content:"\f842"}.fa-stamp:before{content:"\f5bf"}.fa-star:before{content:"\f005"}.fa-star-and-crescent:before{content:"\f699"}.fa-star-half:before{content:"\f089"}.fa-star-half-alt:before{content:"\f5c0"}.fa-star-of-david:before{content:"\f69a"}.fa-star-of-life:before{content:"\f621"}.fa-staylinked:before{content:"\f3f5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-steam-symbol:before{content:"\f3f6"}.fa-step-backward:before{content:"\f048"}.fa-step-forward:before{content:"\f051"}.fa-stethoscope:before{content:"\f0f1"}.fa-sticker-mule:before{content:"\f3f7"}.fa-sticky-note:before{content:"\f249"}.fa-stop:before{content:"\f04d"}.fa-stop-circle:before{content:"\f28d"}.fa-stopwatch:before{content:"\f2f2"}.fa-stopwatch-20:before{content:"\e06f"}.fa-store:before{content:"\f54e"}.fa-store-alt:before{content:"\f54f"}.fa-store-alt-slash:before{content:"\e070"}.fa-store-slash:before{content:"\e071"}.fa-strava:before{content:"\f428"}.fa-stream:before{content:"\f550"}.fa-street-view:before{content:"\f21d"}.fa-strikethrough:before{content:"\f0cc"}.fa-stripe:before{content:"\f429"}.fa-stripe-s:before{content:"\f42a"}.fa-stroopwafel:before{content:"\f551"}.fa-studiovinari:before{content:"\f3f8"}.fa-stumbleupon:before{content:"\f1a4"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-subscript:before{content:"\f12c"}.fa-subway:before{content:"\f239"}.fa-suitcase:before{content:"\f0f2"}.fa-suitcase-rolling:before{content:"\f5c1"}.fa-sun:before{content:"\f185"}.fa-superpowers:before{content:"\f2dd"}.fa-superscript:before{content:"\f12b"}.fa-supple:before{content:"\f3f9"}.fa-surprise:before{content:"\f5c2"}.fa-suse:before{content:"\f7d6"}.fa-swatchbook:before{content:"\f5c3"}.fa-swift:before{content:"\f8e1"}.fa-swimmer:before{content:"\f5c4"}.fa-swimming-pool:before{content:"\f5c5"}.fa-symfony:before{content:"\f83d"}.fa-synagogue:before{content:"\f69b"}.fa-sync:before{content:"\f021"}.fa-sync-alt:before{content:"\f2f1"}.fa-syringe:before{content:"\f48e"}.fa-table:before{content:"\f0ce"}.fa-table-tennis:before{content:"\f45d"}.fa-tablet:before{content:"\f10a"}.fa-tablet-alt:before{content:"\f3fa"}.fa-tablets:before{content:"\f490"}.fa-tachometer-alt:before{content:"\f3fd"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-tape:before{content:"\f4db"}.fa-tasks:before{content:"\f0ae"}.fa-taxi:before{content:"\f1ba"}.fa-teamspeak:before{content:"\f4f9"}.fa-teeth:before{content:"\f62e"}.fa-teeth-open:before{content:"\f62f"}.fa-telegram:before{content:"\f2c6"}.fa-telegram-plane:before{content:"\f3fe"}.fa-temperature-high:before{content:"\f769"}.fa-temperature-low:before{content:"\f76b"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-tenge:before{content:"\f7d7"}.fa-terminal:before{content:"\f120"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-th:before{content:"\f00a"}.fa-th-large:before{content:"\f009"}.fa-th-list:before{content:"\f00b"}.fa-the-red-yeti:before{content:"\f69d"}.fa-theater-masks:before{content:"\f630"}.fa-themeco:before{content:"\f5c6"}.fa-themeisle:before{content:"\f2b2"}.fa-thermometer:before{content:"\f491"}.fa-thermometer-empty:before{content:"\f2cb"}.fa-thermometer-full:before{content:"\f2c7"}.fa-thermometer-half:before{content:"\f2c9"}.fa-thermometer-quarter:before{content:"\f2ca"}.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-think-peaks:before{content:"\f731"}.fa-thumbs-down:before{content:"\f165"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbtack:before{content:"\f08d"}.fa-ticket-alt:before{content:"\f3ff"}.fa-tiktok:before{content:"\e07b"}.fa-times:before{content:"\f00d"}.fa-times-circle:before{content:"\f057"}.fa-tint:before{content:"\f043"}.fa-tint-slash:before{content:"\f5c7"}.fa-tired:before{content:"\f5c8"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-toilet:before{content:"\f7d8"}.fa-toilet-paper:before{content:"\f71e"}.fa-toilet-paper-slash:before{content:"\e072"}.fa-toolbox:before{content:"\f552"}.fa-tools:before{content:"\f7d9"}.fa-tooth:before{content:"\f5c9"}.fa-torah:before{content:"\f6a0"}.fa-torii-gate:before{content:"\f6a1"}.fa-tractor:before{content:"\f722"}.fa-trade-federation:before{content:"\f513"}.fa-trademark:before{content:"\f25c"}.fa-traffic-light:before{content:"\f637"}.fa-trailer:before{content:"\e041"}.fa-train:before{content:"\f238"}.fa-tram:before{content:"\f7da"}.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-trash:before{content:"\f1f8"}.fa-trash-alt:before{content:"\f2ed"}.fa-trash-restore:before{content:"\f829"}.fa-trash-restore-alt:before{content:"\f82a"}.fa-tree:before{content:"\f1bb"}.fa-trello:before{content:"\f181"}.fa-tripadvisor:before{content:"\f262"}.fa-trophy:before{content:"\f091"}.fa-truck:before{content:"\f0d1"}.fa-truck-loading:before{content:"\f4de"}.fa-truck-monster:before{content:"\f63b"}.fa-truck-moving:before{content:"\f4df"}.fa-truck-pickup:before{content:"\f63c"}.fa-tshirt:before{content:"\f553"}.fa-tty:before{content:"\f1e4"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-tv:before{content:"\f26c"}.fa-twitch:before{content:"\f1e8"}.fa-twitter:before{content:"\f099"}.fa-twitter-square:before{content:"\f081"}.fa-typo3:before{content:"\f42b"}.fa-uber:before{content:"\f402"}.fa-ubuntu:before{content:"\f7df"}.fa-uikit:before{content:"\f403"}.fa-umbraco:before{content:"\f8e8"}.fa-umbrella:before{content:"\f0e9"}.fa-umbrella-beach:before{content:"\f5ca"}.fa-uncharted:before{content:"\e084"}.fa-underline:before{content:"\f0cd"}.fa-undo:before{content:"\f0e2"}.fa-undo-alt:before{content:"\f2ea"}.fa-uniregistry:before{content:"\f404"}.fa-unity:before{content:"\e049"}.fa-universal-access:before{content:"\f29a"}.fa-university:before{content:"\f19c"}.fa-unlink:before{content:"\f127"}.fa-unlock:before{content:"\f09c"}.fa-unlock-alt:before{content:"\f13e"}.fa-unsplash:before{content:"\e07c"}.fa-untappd:before{content:"\f405"}.fa-upload:before{content:"\f093"}.fa-ups:before{content:"\f7e0"}.fa-usb:before{content:"\f287"}.fa-user:before{content:"\f007"}.fa-user-alt:before{content:"\f406"}.fa-user-alt-slash:before{content:"\f4fa"}.fa-user-astronaut:before{content:"\f4fb"}.fa-user-check:before{content:"\f4fc"}.fa-user-circle:before{content:"\f2bd"}.fa-user-clock:before{content:"\f4fd"}.fa-user-cog:before{content:"\f4fe"}.fa-user-edit:before{content:"\f4ff"}.fa-user-friends:before{content:"\f500"}.fa-user-graduate:before{content:"\f501"}.fa-user-injured:before{content:"\f728"}.fa-user-lock:before{content:"\f502"}.fa-user-md:before{content:"\f0f0"}.fa-user-minus:before{content:"\f503"}.fa-user-ninja:before{content:"\f504"}.fa-user-nurse:before{content:"\f82f"}.fa-user-plus:before{content:"\f234"}.fa-user-secret:before{content:"\f21b"}.fa-user-shield:before{content:"\f505"}.fa-user-slash:before{content:"\f506"}.fa-user-tag:before{content:"\f507"}.fa-user-tie:before{content:"\f508"}.fa-user-times:before{content:"\f235"}.fa-users:before{content:"\f0c0"}.fa-users-cog:before{content:"\f509"}.fa-users-slash:before{content:"\e073"}.fa-usps:before{content:"\f7e1"}.fa-ussunnah:before{content:"\f407"}.fa-utensil-spoon:before{content:"\f2e5"}.fa-utensils:before{content:"\f2e7"}.fa-vaadin:before{content:"\f408"}.fa-vector-square:before{content:"\f5cb"}.fa-venus:before{content:"\f221"}.fa-venus-double:before{content:"\f226"}.fa-venus-mars:before{content:"\f228"}.fa-vest:before{content:"\e085"}.fa-vest-patches:before{content:"\e086"}.fa-viacoin:before{content:"\f237"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-vial:before{content:"\f492"}.fa-vials:before{content:"\f493"}.fa-viber:before{content:"\f409"}.fa-video:before{content:"\f03d"}.fa-video-slash:before{content:"\f4e2"}.fa-vihara:before{content:"\f6a7"}.fa-vimeo:before{content:"\f40a"}.fa-vimeo-square:before{content:"\f194"}.fa-vimeo-v:before{content:"\f27d"}.fa-vine:before{content:"\f1ca"}.fa-virus:before{content:"\e074"}.fa-virus-slash:before{content:"\e075"}.fa-viruses:before{content:"\e076"}.fa-vk:before{content:"\f189"}.fa-vnv:before{content:"\f40b"}.fa-voicemail:before{content:"\f897"}.fa-volleyball-ball:before{content:"\f45f"}.fa-volume-down:before{content:"\f027"}.fa-volume-mute:before{content:"\f6a9"}.fa-volume-off:before{content:"\f026"}.fa-volume-up:before{content:"\f028"}.fa-vote-yea:before{content:"\f772"}.fa-vr-cardboard:before{content:"\f729"}.fa-vuejs:before{content:"\f41f"}.fa-walking:before{content:"\f554"}.fa-wallet:before{content:"\f555"}.fa-warehouse:before{content:"\f494"}.fa-watchman-monitoring:before{content:"\e087"}.fa-water:before{content:"\f773"}.fa-wave-square:before{content:"\f83e"}.fa-waze:before{content:"\f83f"}.fa-weebly:before{content:"\f5cc"}.fa-weibo:before{content:"\f18a"}.fa-weight:before{content:"\f496"}.fa-weight-hanging:before{content:"\f5cd"}.fa-weixin:before{content:"\f1d7"}.fa-whatsapp:before{content:"\f232"}.fa-whatsapp-square:before{content:"\f40c"}.fa-wheelchair:before{content:"\f193"}.fa-whmcs:before{content:"\f40d"}.fa-wifi:before{content:"\f1eb"}.fa-wikipedia-w:before{content:"\f266"}.fa-wind:before{content:"\f72e"}.fa-window-close:before{content:"\f410"}.fa-window-maximize:before{content:"\f2d0"}.fa-window-minimize:before{content:"\f2d1"}.fa-window-restore:before{content:"\f2d2"}.fa-windows:before{content:"\f17a"}.fa-wine-bottle:before{content:"\f72f"}.fa-wine-glass:before{content:"\f4e3"}.fa-wine-glass-alt:before{content:"\f5ce"}.fa-wix:before{content:"\f5cf"}.fa-wizards-of-the-coast:before{content:"\f730"}.fa-wodu:before{content:"\e088"}.fa-wolf-pack-battalion:before{content:"\f514"}.fa-won-sign:before{content:"\f159"}.fa-wordpress:before{content:"\f19a"}.fa-wordpress-simple:before{content:"\f411"}.fa-wpbeginner:before{content:"\f297"}.fa-wpexplorer:before{content:"\f2de"}.fa-wpforms:before{content:"\f298"}.fa-wpressr:before{content:"\f3e4"}.fa-wrench:before{content:"\f0ad"}.fa-x-ray:before{content:"\f497"}.fa-xbox:before{content:"\f412"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-y-combinator:before{content:"\f23b"}.fa-yahoo:before{content:"\f19e"}.fa-yammer:before{content:"\f840"}.fa-yandex:before{content:"\f413"}.fa-yandex-international:before{content:"\f414"}.fa-yarn:before{content:"\f7e3"}.fa-yelp:before{content:"\f1e9"}.fa-yen-sign:before{content:"\f157"}.fa-yin-yang:before{content:"\f6ad"}.fa-yoast:before{content:"\f2b1"}.fa-youtube:before{content:"\f167"}.fa-youtube-square:before{content:"\f431"}.fa-zhihu:before{content:"\f63f"}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}assets/lib/font-awesome/css/regular.css000064400000001336151327220410014163 0ustar00/*!
 * Font Awesome Free 5.15.3 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 */
@font-face {
  font-family: 'Font Awesome 5 Free';
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url("../webfonts/fa-regular-400.eot");
  src: url("../webfonts/fa-regular-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.woff") format("woff"), url("../webfonts/fa-regular-400.ttf") format("truetype"), url("../webfonts/fa-regular-400.svg#fontawesome") format("svg"); }

.far {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }
assets/lib/font-awesome/css/svg-with-js.css000064400000017615151327220410014713 0ustar00/*!
 * Font Awesome Free 5.15.3 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 */
svg:not(:root).svg-inline--fa {
  overflow: visible; }

.svg-inline--fa {
  display: inline-block;
  font-size: inherit;
  height: 1em;
  overflow: visible;
  vertical-align: -.125em; }
  .svg-inline--fa.fa-lg {
    vertical-align: -.225em; }
  .svg-inline--fa.fa-w-1 {
    width: 0.0625em; }
  .svg-inline--fa.fa-w-2 {
    width: 0.125em; }
  .svg-inline--fa.fa-w-3 {
    width: 0.1875em; }
  .svg-inline--fa.fa-w-4 {
    width: 0.25em; }
  .svg-inline--fa.fa-w-5 {
    width: 0.3125em; }
  .svg-inline--fa.fa-w-6 {
    width: 0.375em; }
  .svg-inline--fa.fa-w-7 {
    width: 0.4375em; }
  .svg-inline--fa.fa-w-8 {
    width: 0.5em; }
  .svg-inline--fa.fa-w-9 {
    width: 0.5625em; }
  .svg-inline--fa.fa-w-10 {
    width: 0.625em; }
  .svg-inline--fa.fa-w-11 {
    width: 0.6875em; }
  .svg-inline--fa.fa-w-12 {
    width: 0.75em; }
  .svg-inline--fa.fa-w-13 {
    width: 0.8125em; }
  .svg-inline--fa.fa-w-14 {
    width: 0.875em; }
  .svg-inline--fa.fa-w-15 {
    width: 0.9375em; }
  .svg-inline--fa.fa-w-16 {
    width: 1em; }
  .svg-inline--fa.fa-w-17 {
    width: 1.0625em; }
  .svg-inline--fa.fa-w-18 {
    width: 1.125em; }
  .svg-inline--fa.fa-w-19 {
    width: 1.1875em; }
  .svg-inline--fa.fa-w-20 {
    width: 1.25em; }
  .svg-inline--fa.fa-pull-left {
    margin-right: .3em;
    width: auto; }
  .svg-inline--fa.fa-pull-right {
    margin-left: .3em;
    width: auto; }
  .svg-inline--fa.fa-border {
    height: 1.5em; }
  .svg-inline--fa.fa-li {
    width: 2em; }
  .svg-inline--fa.fa-fw {
    width: 1.25em; }

.fa-layers svg.svg-inline--fa {
  bottom: 0;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0; }

.fa-layers {
  display: inline-block;
  height: 1em;
  position: relative;
  text-align: center;
  vertical-align: -.125em;
  width: 1em; }
  .fa-layers svg.svg-inline--fa {
    -webkit-transform-origin: center center;
            transform-origin: center center; }

.fa-layers-text, .fa-layers-counter {
  display: inline-block;
  position: absolute;
  text-align: center; }

.fa-layers-text {
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transform-origin: center center;
          transform-origin: center center; }

.fa-layers-counter {
  background-color: #ff253a;
  border-radius: 1em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #fff;
  height: 1.5em;
  line-height: 1;
  max-width: 5em;
  min-width: 1.5em;
  overflow: hidden;
  padding: .25em;
  right: 0;
  text-overflow: ellipsis;
  top: 0;
  -webkit-transform: scale(0.25);
          transform: scale(0.25);
  -webkit-transform-origin: top right;
          transform-origin: top right; }

.fa-layers-bottom-right {
  bottom: 0;
  right: 0;
  top: auto;
  -webkit-transform: scale(0.25);
          transform: scale(0.25);
  -webkit-transform-origin: bottom right;
          transform-origin: bottom right; }

.fa-layers-bottom-left {
  bottom: 0;
  left: 0;
  right: auto;
  top: auto;
  -webkit-transform: scale(0.25);
          transform: scale(0.25);
  -webkit-transform-origin: bottom left;
          transform-origin: bottom left; }

.fa-layers-top-right {
  right: 0;
  top: 0;
  -webkit-transform: scale(0.25);
          transform: scale(0.25);
  -webkit-transform-origin: top right;
          transform-origin: top right; }

.fa-layers-top-left {
  left: 0;
  right: auto;
  top: 0;
  -webkit-transform: scale(0.25);
          transform: scale(0.25);
  -webkit-transform-origin: top left;
          transform-origin: top left; }

.fa-lg {
  font-size: 1.33333em;
  line-height: 0.75em;
  vertical-align: -.0667em; }

.fa-xs {
  font-size: .75em; }

.fa-sm {
  font-size: .875em; }

.fa-1x {
  font-size: 1em; }

.fa-2x {
  font-size: 2em; }

.fa-3x {
  font-size: 3em; }

.fa-4x {
  font-size: 4em; }

.fa-5x {
  font-size: 5em; }

.fa-6x {
  font-size: 6em; }

.fa-7x {
  font-size: 7em; }

.fa-8x {
  font-size: 8em; }

.fa-9x {
  font-size: 9em; }

.fa-10x {
  font-size: 10em; }

.fa-fw {
  text-align: center;
  width: 1.25em; }

.fa-ul {
  list-style-type: none;
  margin-left: 2.5em;
  padding-left: 0; }
  .fa-ul > li {
    position: relative; }

.fa-li {
  left: -2em;
  position: absolute;
  text-align: center;
  width: 2em;
  line-height: inherit; }

.fa-border {
  border: solid 0.08em #eee;
  border-radius: .1em;
  padding: .2em .25em .15em; }

.fa-pull-left {
  float: left; }

.fa-pull-right {
  float: right; }

.fa.fa-pull-left,
.fas.fa-pull-left,
.far.fa-pull-left,
.fal.fa-pull-left,
.fab.fa-pull-left {
  margin-right: .3em; }

.fa.fa-pull-right,
.fas.fa-pull-right,
.far.fa-pull-right,
.fal.fa-pull-right,
.fab.fa-pull-right {
  margin-left: .3em; }

.fa-spin {
  -webkit-animation: fa-spin 2s infinite linear;
          animation: fa-spin 2s infinite linear; }

.fa-pulse {
  -webkit-animation: fa-spin 1s infinite steps(8);
          animation: fa-spin 1s infinite steps(8); }

@-webkit-keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

@keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

.fa-rotate-90 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg); }

.fa-rotate-180 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg); }

.fa-rotate-270 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
  -webkit-transform: rotate(270deg);
          transform: rotate(270deg); }

.fa-flip-horizontal {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1); }

.fa-flip-vertical {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
  -webkit-transform: scale(1, -1);
          transform: scale(1, -1); }

.fa-flip-both, .fa-flip-horizontal.fa-flip-vertical {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
  -webkit-transform: scale(-1, -1);
          transform: scale(-1, -1); }

:root .fa-rotate-90,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-flip-horizontal,
:root .fa-flip-vertical,
:root .fa-flip-both {
  -webkit-filter: none;
          filter: none; }

.fa-stack {
  display: inline-block;
  height: 2em;
  position: relative;
  width: 2.5em; }

.fa-stack-1x,
.fa-stack-2x {
  bottom: 0;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0; }

.svg-inline--fa.fa-stack-1x {
  height: 1em;
  width: 1.25em; }

.svg-inline--fa.fa-stack-2x {
  height: 2em;
  width: 2.5em; }

.fa-inverse {
  color: #fff; }

.sr-only {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px; }

.sr-only-focusable:active, .sr-only-focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto; }

.svg-inline--fa .fa-primary {
  fill: var(--fa-primary-color, currentColor);
  opacity: 1;
  opacity: var(--fa-primary-opacity, 1); }

.svg-inline--fa .fa-secondary {
  fill: var(--fa-secondary-color, currentColor);
  opacity: 0.4;
  opacity: var(--fa-secondary-opacity, 0.4); }

.svg-inline--fa.fa-swap-opacity .fa-primary {
  opacity: 0.4;
  opacity: var(--fa-secondary-opacity, 0.4); }

.svg-inline--fa.fa-swap-opacity .fa-secondary {
  opacity: 1;
  opacity: var(--fa-primary-opacity, 1); }

.svg-inline--fa mask .fa-primary,
.svg-inline--fa mask .fa-secondary {
  fill: black; }

.fad.fa-inverse {
  color: #fff; }
assets/lib/font-awesome/css/brands.min.css000064400000001243151327220410014552 0ustar00/*!
 * Font Awesome Free 5.15.3 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 */
@font-face{font-family:"Font Awesome 5 Brands";font-style:normal;font-weight:400;font-display:block;src:url(../webfonts/fa-brands-400.eot);src:url(../webfonts/fa-brands-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.woff) format("woff"),url(../webfonts/fa-brands-400.ttf) format("truetype"),url(../webfonts/fa-brands-400.svg#fontawesome) format("svg")}.fab{font-family:"Font Awesome 5 Brands";font-weight:400}assets/lib/font-awesome/css/all.css000064400000217631151327220410013301 0ustar00/*!
 * Font Awesome Free 5.15.3 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 */
.fa,
.fas,
.far,
.fal,
.fad,
.fab {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1; }

.fa-lg {
  font-size: 1.33333em;
  line-height: 0.75em;
  vertical-align: -.0667em; }

.fa-xs {
  font-size: .75em; }

.fa-sm {
  font-size: .875em; }

.fa-1x {
  font-size: 1em; }

.fa-2x {
  font-size: 2em; }

.fa-3x {
  font-size: 3em; }

.fa-4x {
  font-size: 4em; }

.fa-5x {
  font-size: 5em; }

.fa-6x {
  font-size: 6em; }

.fa-7x {
  font-size: 7em; }

.fa-8x {
  font-size: 8em; }

.fa-9x {
  font-size: 9em; }

.fa-10x {
  font-size: 10em; }

.fa-fw {
  text-align: center;
  width: 1.25em; }

.fa-ul {
  list-style-type: none;
  margin-left: 2.5em;
  padding-left: 0; }
  .fa-ul > li {
    position: relative; }

.fa-li {
  left: -2em;
  position: absolute;
  text-align: center;
  width: 2em;
  line-height: inherit; }

.fa-border {
  border: solid 0.08em #eee;
  border-radius: .1em;
  padding: .2em .25em .15em; }

.fa-pull-left {
  float: left; }

.fa-pull-right {
  float: right; }

.fa.fa-pull-left,
.fas.fa-pull-left,
.far.fa-pull-left,
.fal.fa-pull-left,
.fab.fa-pull-left {
  margin-right: .3em; }

.fa.fa-pull-right,
.fas.fa-pull-right,
.far.fa-pull-right,
.fal.fa-pull-right,
.fab.fa-pull-right {
  margin-left: .3em; }

.fa-spin {
  -webkit-animation: fa-spin 2s infinite linear;
          animation: fa-spin 2s infinite linear; }

.fa-pulse {
  -webkit-animation: fa-spin 1s infinite steps(8);
          animation: fa-spin 1s infinite steps(8); }

@-webkit-keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

@keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

.fa-rotate-90 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg); }

.fa-rotate-180 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg); }

.fa-rotate-270 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
  -webkit-transform: rotate(270deg);
          transform: rotate(270deg); }

.fa-flip-horizontal {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1); }

.fa-flip-vertical {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
  -webkit-transform: scale(1, -1);
          transform: scale(1, -1); }

.fa-flip-both, .fa-flip-horizontal.fa-flip-vertical {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
  -webkit-transform: scale(-1, -1);
          transform: scale(-1, -1); }

:root .fa-rotate-90,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-flip-horizontal,
:root .fa-flip-vertical,
:root .fa-flip-both {
  -webkit-filter: none;
          filter: none; }

.fa-stack {
  display: inline-block;
  height: 2em;
  line-height: 2em;
  position: relative;
  vertical-align: middle;
  width: 2.5em; }

.fa-stack-1x,
.fa-stack-2x {
  left: 0;
  position: absolute;
  text-align: center;
  width: 100%; }

.fa-stack-1x {
  line-height: inherit; }

.fa-stack-2x {
  font-size: 2em; }

.fa-inverse {
  color: #fff; }

/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
readers do not read off random characters that represent icons */
.fa-500px:before {
  content: "\f26e"; }

.fa-accessible-icon:before {
  content: "\f368"; }

.fa-accusoft:before {
  content: "\f369"; }

.fa-acquisitions-incorporated:before {
  content: "\f6af"; }

.fa-ad:before {
  content: "\f641"; }

.fa-address-book:before {
  content: "\f2b9"; }

.fa-address-card:before {
  content: "\f2bb"; }

.fa-adjust:before {
  content: "\f042"; }

.fa-adn:before {
  content: "\f170"; }

.fa-adversal:before {
  content: "\f36a"; }

.fa-affiliatetheme:before {
  content: "\f36b"; }

.fa-air-freshener:before {
  content: "\f5d0"; }

.fa-airbnb:before {
  content: "\f834"; }

.fa-algolia:before {
  content: "\f36c"; }

.fa-align-center:before {
  content: "\f037"; }

.fa-align-justify:before {
  content: "\f039"; }

.fa-align-left:before {
  content: "\f036"; }

.fa-align-right:before {
  content: "\f038"; }

.fa-alipay:before {
  content: "\f642"; }

.fa-allergies:before {
  content: "\f461"; }

.fa-amazon:before {
  content: "\f270"; }

.fa-amazon-pay:before {
  content: "\f42c"; }

.fa-ambulance:before {
  content: "\f0f9"; }

.fa-american-sign-language-interpreting:before {
  content: "\f2a3"; }

.fa-amilia:before {
  content: "\f36d"; }

.fa-anchor:before {
  content: "\f13d"; }

.fa-android:before {
  content: "\f17b"; }

.fa-angellist:before {
  content: "\f209"; }

.fa-angle-double-down:before {
  content: "\f103"; }

.fa-angle-double-left:before {
  content: "\f100"; }

.fa-angle-double-right:before {
  content: "\f101"; }

.fa-angle-double-up:before {
  content: "\f102"; }

.fa-angle-down:before {
  content: "\f107"; }

.fa-angle-left:before {
  content: "\f104"; }

.fa-angle-right:before {
  content: "\f105"; }

.fa-angle-up:before {
  content: "\f106"; }

.fa-angry:before {
  content: "\f556"; }

.fa-angrycreative:before {
  content: "\f36e"; }

.fa-angular:before {
  content: "\f420"; }

.fa-ankh:before {
  content: "\f644"; }

.fa-app-store:before {
  content: "\f36f"; }

.fa-app-store-ios:before {
  content: "\f370"; }

.fa-apper:before {
  content: "\f371"; }

.fa-apple:before {
  content: "\f179"; }

.fa-apple-alt:before {
  content: "\f5d1"; }

.fa-apple-pay:before {
  content: "\f415"; }

.fa-archive:before {
  content: "\f187"; }

.fa-archway:before {
  content: "\f557"; }

.fa-arrow-alt-circle-down:before {
  content: "\f358"; }

.fa-arrow-alt-circle-left:before {
  content: "\f359"; }

.fa-arrow-alt-circle-right:before {
  content: "\f35a"; }

.fa-arrow-alt-circle-up:before {
  content: "\f35b"; }

.fa-arrow-circle-down:before {
  content: "\f0ab"; }

.fa-arrow-circle-left:before {
  content: "\f0a8"; }

.fa-arrow-circle-right:before {
  content: "\f0a9"; }

.fa-arrow-circle-up:before {
  content: "\f0aa"; }

.fa-arrow-down:before {
  content: "\f063"; }

.fa-arrow-left:before {
  content: "\f060"; }

.fa-arrow-right:before {
  content: "\f061"; }

.fa-arrow-up:before {
  content: "\f062"; }

.fa-arrows-alt:before {
  content: "\f0b2"; }

.fa-arrows-alt-h:before {
  content: "\f337"; }

.fa-arrows-alt-v:before {
  content: "\f338"; }

.fa-artstation:before {
  content: "\f77a"; }

.fa-assistive-listening-systems:before {
  content: "\f2a2"; }

.fa-asterisk:before {
  content: "\f069"; }

.fa-asymmetrik:before {
  content: "\f372"; }

.fa-at:before {
  content: "\f1fa"; }

.fa-atlas:before {
  content: "\f558"; }

.fa-atlassian:before {
  content: "\f77b"; }

.fa-atom:before {
  content: "\f5d2"; }

.fa-audible:before {
  content: "\f373"; }

.fa-audio-description:before {
  content: "\f29e"; }

.fa-autoprefixer:before {
  content: "\f41c"; }

.fa-avianex:before {
  content: "\f374"; }

.fa-aviato:before {
  content: "\f421"; }

.fa-award:before {
  content: "\f559"; }

.fa-aws:before {
  content: "\f375"; }

.fa-baby:before {
  content: "\f77c"; }

.fa-baby-carriage:before {
  content: "\f77d"; }

.fa-backspace:before {
  content: "\f55a"; }

.fa-backward:before {
  content: "\f04a"; }

.fa-bacon:before {
  content: "\f7e5"; }

.fa-bacteria:before {
  content: "\e059"; }

.fa-bacterium:before {
  content: "\e05a"; }

.fa-bahai:before {
  content: "\f666"; }

.fa-balance-scale:before {
  content: "\f24e"; }

.fa-balance-scale-left:before {
  content: "\f515"; }

.fa-balance-scale-right:before {
  content: "\f516"; }

.fa-ban:before {
  content: "\f05e"; }

.fa-band-aid:before {
  content: "\f462"; }

.fa-bandcamp:before {
  content: "\f2d5"; }

.fa-barcode:before {
  content: "\f02a"; }

.fa-bars:before {
  content: "\f0c9"; }

.fa-baseball-ball:before {
  content: "\f433"; }

.fa-basketball-ball:before {
  content: "\f434"; }

.fa-bath:before {
  content: "\f2cd"; }

.fa-battery-empty:before {
  content: "\f244"; }

.fa-battery-full:before {
  content: "\f240"; }

.fa-battery-half:before {
  content: "\f242"; }

.fa-battery-quarter:before {
  content: "\f243"; }

.fa-battery-three-quarters:before {
  content: "\f241"; }

.fa-battle-net:before {
  content: "\f835"; }

.fa-bed:before {
  content: "\f236"; }

.fa-beer:before {
  content: "\f0fc"; }

.fa-behance:before {
  content: "\f1b4"; }

.fa-behance-square:before {
  content: "\f1b5"; }

.fa-bell:before {
  content: "\f0f3"; }

.fa-bell-slash:before {
  content: "\f1f6"; }

.fa-bezier-curve:before {
  content: "\f55b"; }

.fa-bible:before {
  content: "\f647"; }

.fa-bicycle:before {
  content: "\f206"; }

.fa-biking:before {
  content: "\f84a"; }

.fa-bimobject:before {
  content: "\f378"; }

.fa-binoculars:before {
  content: "\f1e5"; }

.fa-biohazard:before {
  content: "\f780"; }

.fa-birthday-cake:before {
  content: "\f1fd"; }

.fa-bitbucket:before {
  content: "\f171"; }

.fa-bitcoin:before {
  content: "\f379"; }

.fa-bity:before {
  content: "\f37a"; }

.fa-black-tie:before {
  content: "\f27e"; }

.fa-blackberry:before {
  content: "\f37b"; }

.fa-blender:before {
  content: "\f517"; }

.fa-blender-phone:before {
  content: "\f6b6"; }

.fa-blind:before {
  content: "\f29d"; }

.fa-blog:before {
  content: "\f781"; }

.fa-blogger:before {
  content: "\f37c"; }

.fa-blogger-b:before {
  content: "\f37d"; }

.fa-bluetooth:before {
  content: "\f293"; }

.fa-bluetooth-b:before {
  content: "\f294"; }

.fa-bold:before {
  content: "\f032"; }

.fa-bolt:before {
  content: "\f0e7"; }

.fa-bomb:before {
  content: "\f1e2"; }

.fa-bone:before {
  content: "\f5d7"; }

.fa-bong:before {
  content: "\f55c"; }

.fa-book:before {
  content: "\f02d"; }

.fa-book-dead:before {
  content: "\f6b7"; }

.fa-book-medical:before {
  content: "\f7e6"; }

.fa-book-open:before {
  content: "\f518"; }

.fa-book-reader:before {
  content: "\f5da"; }

.fa-bookmark:before {
  content: "\f02e"; }

.fa-bootstrap:before {
  content: "\f836"; }

.fa-border-all:before {
  content: "\f84c"; }

.fa-border-none:before {
  content: "\f850"; }

.fa-border-style:before {
  content: "\f853"; }

.fa-bowling-ball:before {
  content: "\f436"; }

.fa-box:before {
  content: "\f466"; }

.fa-box-open:before {
  content: "\f49e"; }

.fa-box-tissue:before {
  content: "\e05b"; }

.fa-boxes:before {
  content: "\f468"; }

.fa-braille:before {
  content: "\f2a1"; }

.fa-brain:before {
  content: "\f5dc"; }

.fa-bread-slice:before {
  content: "\f7ec"; }

.fa-briefcase:before {
  content: "\f0b1"; }

.fa-briefcase-medical:before {
  content: "\f469"; }

.fa-broadcast-tower:before {
  content: "\f519"; }

.fa-broom:before {
  content: "\f51a"; }

.fa-brush:before {
  content: "\f55d"; }

.fa-btc:before {
  content: "\f15a"; }

.fa-buffer:before {
  content: "\f837"; }

.fa-bug:before {
  content: "\f188"; }

.fa-building:before {
  content: "\f1ad"; }

.fa-bullhorn:before {
  content: "\f0a1"; }

.fa-bullseye:before {
  content: "\f140"; }

.fa-burn:before {
  content: "\f46a"; }

.fa-buromobelexperte:before {
  content: "\f37f"; }

.fa-bus:before {
  content: "\f207"; }

.fa-bus-alt:before {
  content: "\f55e"; }

.fa-business-time:before {
  content: "\f64a"; }

.fa-buy-n-large:before {
  content: "\f8a6"; }

.fa-buysellads:before {
  content: "\f20d"; }

.fa-calculator:before {
  content: "\f1ec"; }

.fa-calendar:before {
  content: "\f133"; }

.fa-calendar-alt:before {
  content: "\f073"; }

.fa-calendar-check:before {
  content: "\f274"; }

.fa-calendar-day:before {
  content: "\f783"; }

.fa-calendar-minus:before {
  content: "\f272"; }

.fa-calendar-plus:before {
  content: "\f271"; }

.fa-calendar-times:before {
  content: "\f273"; }

.fa-calendar-week:before {
  content: "\f784"; }

.fa-camera:before {
  content: "\f030"; }

.fa-camera-retro:before {
  content: "\f083"; }

.fa-campground:before {
  content: "\f6bb"; }

.fa-canadian-maple-leaf:before {
  content: "\f785"; }

.fa-candy-cane:before {
  content: "\f786"; }

.fa-cannabis:before {
  content: "\f55f"; }

.fa-capsules:before {
  content: "\f46b"; }

.fa-car:before {
  content: "\f1b9"; }

.fa-car-alt:before {
  content: "\f5de"; }

.fa-car-battery:before {
  content: "\f5df"; }

.fa-car-crash:before {
  content: "\f5e1"; }

.fa-car-side:before {
  content: "\f5e4"; }

.fa-caravan:before {
  content: "\f8ff"; }

.fa-caret-down:before {
  content: "\f0d7"; }

.fa-caret-left:before {
  content: "\f0d9"; }

.fa-caret-right:before {
  content: "\f0da"; }

.fa-caret-square-down:before {
  content: "\f150"; }

.fa-caret-square-left:before {
  content: "\f191"; }

.fa-caret-square-right:before {
  content: "\f152"; }

.fa-caret-square-up:before {
  content: "\f151"; }

.fa-caret-up:before {
  content: "\f0d8"; }

.fa-carrot:before {
  content: "\f787"; }

.fa-cart-arrow-down:before {
  content: "\f218"; }

.fa-cart-plus:before {
  content: "\f217"; }

.fa-cash-register:before {
  content: "\f788"; }

.fa-cat:before {
  content: "\f6be"; }

.fa-cc-amazon-pay:before {
  content: "\f42d"; }

.fa-cc-amex:before {
  content: "\f1f3"; }

.fa-cc-apple-pay:before {
  content: "\f416"; }

.fa-cc-diners-club:before {
  content: "\f24c"; }

.fa-cc-discover:before {
  content: "\f1f2"; }

.fa-cc-jcb:before {
  content: "\f24b"; }

.fa-cc-mastercard:before {
  content: "\f1f1"; }

.fa-cc-paypal:before {
  content: "\f1f4"; }

.fa-cc-stripe:before {
  content: "\f1f5"; }

.fa-cc-visa:before {
  content: "\f1f0"; }

.fa-centercode:before {
  content: "\f380"; }

.fa-centos:before {
  content: "\f789"; }

.fa-certificate:before {
  content: "\f0a3"; }

.fa-chair:before {
  content: "\f6c0"; }

.fa-chalkboard:before {
  content: "\f51b"; }

.fa-chalkboard-teacher:before {
  content: "\f51c"; }

.fa-charging-station:before {
  content: "\f5e7"; }

.fa-chart-area:before {
  content: "\f1fe"; }

.fa-chart-bar:before {
  content: "\f080"; }

.fa-chart-line:before {
  content: "\f201"; }

.fa-chart-pie:before {
  content: "\f200"; }

.fa-check:before {
  content: "\f00c"; }

.fa-check-circle:before {
  content: "\f058"; }

.fa-check-double:before {
  content: "\f560"; }

.fa-check-square:before {
  content: "\f14a"; }

.fa-cheese:before {
  content: "\f7ef"; }

.fa-chess:before {
  content: "\f439"; }

.fa-chess-bishop:before {
  content: "\f43a"; }

.fa-chess-board:before {
  content: "\f43c"; }

.fa-chess-king:before {
  content: "\f43f"; }

.fa-chess-knight:before {
  content: "\f441"; }

.fa-chess-pawn:before {
  content: "\f443"; }

.fa-chess-queen:before {
  content: "\f445"; }

.fa-chess-rook:before {
  content: "\f447"; }

.fa-chevron-circle-down:before {
  content: "\f13a"; }

.fa-chevron-circle-left:before {
  content: "\f137"; }

.fa-chevron-circle-right:before {
  content: "\f138"; }

.fa-chevron-circle-up:before {
  content: "\f139"; }

.fa-chevron-down:before {
  content: "\f078"; }

.fa-chevron-left:before {
  content: "\f053"; }

.fa-chevron-right:before {
  content: "\f054"; }

.fa-chevron-up:before {
  content: "\f077"; }

.fa-child:before {
  content: "\f1ae"; }

.fa-chrome:before {
  content: "\f268"; }

.fa-chromecast:before {
  content: "\f838"; }

.fa-church:before {
  content: "\f51d"; }

.fa-circle:before {
  content: "\f111"; }

.fa-circle-notch:before {
  content: "\f1ce"; }

.fa-city:before {
  content: "\f64f"; }

.fa-clinic-medical:before {
  content: "\f7f2"; }

.fa-clipboard:before {
  content: "\f328"; }

.fa-clipboard-check:before {
  content: "\f46c"; }

.fa-clipboard-list:before {
  content: "\f46d"; }

.fa-clock:before {
  content: "\f017"; }

.fa-clone:before {
  content: "\f24d"; }

.fa-closed-captioning:before {
  content: "\f20a"; }

.fa-cloud:before {
  content: "\f0c2"; }

.fa-cloud-download-alt:before {
  content: "\f381"; }

.fa-cloud-meatball:before {
  content: "\f73b"; }

.fa-cloud-moon:before {
  content: "\f6c3"; }

.fa-cloud-moon-rain:before {
  content: "\f73c"; }

.fa-cloud-rain:before {
  content: "\f73d"; }

.fa-cloud-showers-heavy:before {
  content: "\f740"; }

.fa-cloud-sun:before {
  content: "\f6c4"; }

.fa-cloud-sun-rain:before {
  content: "\f743"; }

.fa-cloud-upload-alt:before {
  content: "\f382"; }

.fa-cloudflare:before {
  content: "\e07d"; }

.fa-cloudscale:before {
  content: "\f383"; }

.fa-cloudsmith:before {
  content: "\f384"; }

.fa-cloudversify:before {
  content: "\f385"; }

.fa-cocktail:before {
  content: "\f561"; }

.fa-code:before {
  content: "\f121"; }

.fa-code-branch:before {
  content: "\f126"; }

.fa-codepen:before {
  content: "\f1cb"; }

.fa-codiepie:before {
  content: "\f284"; }

.fa-coffee:before {
  content: "\f0f4"; }

.fa-cog:before {
  content: "\f013"; }

.fa-cogs:before {
  content: "\f085"; }

.fa-coins:before {
  content: "\f51e"; }

.fa-columns:before {
  content: "\f0db"; }

.fa-comment:before {
  content: "\f075"; }

.fa-comment-alt:before {
  content: "\f27a"; }

.fa-comment-dollar:before {
  content: "\f651"; }

.fa-comment-dots:before {
  content: "\f4ad"; }

.fa-comment-medical:before {
  content: "\f7f5"; }

.fa-comment-slash:before {
  content: "\f4b3"; }

.fa-comments:before {
  content: "\f086"; }

.fa-comments-dollar:before {
  content: "\f653"; }

.fa-compact-disc:before {
  content: "\f51f"; }

.fa-compass:before {
  content: "\f14e"; }

.fa-compress:before {
  content: "\f066"; }

.fa-compress-alt:before {
  content: "\f422"; }

.fa-compress-arrows-alt:before {
  content: "\f78c"; }

.fa-concierge-bell:before {
  content: "\f562"; }

.fa-confluence:before {
  content: "\f78d"; }

.fa-connectdevelop:before {
  content: "\f20e"; }

.fa-contao:before {
  content: "\f26d"; }

.fa-cookie:before {
  content: "\f563"; }

.fa-cookie-bite:before {
  content: "\f564"; }

.fa-copy:before {
  content: "\f0c5"; }

.fa-copyright:before {
  content: "\f1f9"; }

.fa-cotton-bureau:before {
  content: "\f89e"; }

.fa-couch:before {
  content: "\f4b8"; }

.fa-cpanel:before {
  content: "\f388"; }

.fa-creative-commons:before {
  content: "\f25e"; }

.fa-creative-commons-by:before {
  content: "\f4e7"; }

.fa-creative-commons-nc:before {
  content: "\f4e8"; }

.fa-creative-commons-nc-eu:before {
  content: "\f4e9"; }

.fa-creative-commons-nc-jp:before {
  content: "\f4ea"; }

.fa-creative-commons-nd:before {
  content: "\f4eb"; }

.fa-creative-commons-pd:before {
  content: "\f4ec"; }

.fa-creative-commons-pd-alt:before {
  content: "\f4ed"; }

.fa-creative-commons-remix:before {
  content: "\f4ee"; }

.fa-creative-commons-sa:before {
  content: "\f4ef"; }

.fa-creative-commons-sampling:before {
  content: "\f4f0"; }

.fa-creative-commons-sampling-plus:before {
  content: "\f4f1"; }

.fa-creative-commons-share:before {
  content: "\f4f2"; }

.fa-creative-commons-zero:before {
  content: "\f4f3"; }

.fa-credit-card:before {
  content: "\f09d"; }

.fa-critical-role:before {
  content: "\f6c9"; }

.fa-crop:before {
  content: "\f125"; }

.fa-crop-alt:before {
  content: "\f565"; }

.fa-cross:before {
  content: "\f654"; }

.fa-crosshairs:before {
  content: "\f05b"; }

.fa-crow:before {
  content: "\f520"; }

.fa-crown:before {
  content: "\f521"; }

.fa-crutch:before {
  content: "\f7f7"; }

.fa-css3:before {
  content: "\f13c"; }

.fa-css3-alt:before {
  content: "\f38b"; }

.fa-cube:before {
  content: "\f1b2"; }

.fa-cubes:before {
  content: "\f1b3"; }

.fa-cut:before {
  content: "\f0c4"; }

.fa-cuttlefish:before {
  content: "\f38c"; }

.fa-d-and-d:before {
  content: "\f38d"; }

.fa-d-and-d-beyond:before {
  content: "\f6ca"; }

.fa-dailymotion:before {
  content: "\e052"; }

.fa-dashcube:before {
  content: "\f210"; }

.fa-database:before {
  content: "\f1c0"; }

.fa-deaf:before {
  content: "\f2a4"; }

.fa-deezer:before {
  content: "\e077"; }

.fa-delicious:before {
  content: "\f1a5"; }

.fa-democrat:before {
  content: "\f747"; }

.fa-deploydog:before {
  content: "\f38e"; }

.fa-deskpro:before {
  content: "\f38f"; }

.fa-desktop:before {
  content: "\f108"; }

.fa-dev:before {
  content: "\f6cc"; }

.fa-deviantart:before {
  content: "\f1bd"; }

.fa-dharmachakra:before {
  content: "\f655"; }

.fa-dhl:before {
  content: "\f790"; }

.fa-diagnoses:before {
  content: "\f470"; }

.fa-diaspora:before {
  content: "\f791"; }

.fa-dice:before {
  content: "\f522"; }

.fa-dice-d20:before {
  content: "\f6cf"; }

.fa-dice-d6:before {
  content: "\f6d1"; }

.fa-dice-five:before {
  content: "\f523"; }

.fa-dice-four:before {
  content: "\f524"; }

.fa-dice-one:before {
  content: "\f525"; }

.fa-dice-six:before {
  content: "\f526"; }

.fa-dice-three:before {
  content: "\f527"; }

.fa-dice-two:before {
  content: "\f528"; }

.fa-digg:before {
  content: "\f1a6"; }

.fa-digital-ocean:before {
  content: "\f391"; }

.fa-digital-tachograph:before {
  content: "\f566"; }

.fa-directions:before {
  content: "\f5eb"; }

.fa-discord:before {
  content: "\f392"; }

.fa-discourse:before {
  content: "\f393"; }

.fa-disease:before {
  content: "\f7fa"; }

.fa-divide:before {
  content: "\f529"; }

.fa-dizzy:before {
  content: "\f567"; }

.fa-dna:before {
  content: "\f471"; }

.fa-dochub:before {
  content: "\f394"; }

.fa-docker:before {
  content: "\f395"; }

.fa-dog:before {
  content: "\f6d3"; }

.fa-dollar-sign:before {
  content: "\f155"; }

.fa-dolly:before {
  content: "\f472"; }

.fa-dolly-flatbed:before {
  content: "\f474"; }

.fa-donate:before {
  content: "\f4b9"; }

.fa-door-closed:before {
  content: "\f52a"; }

.fa-door-open:before {
  content: "\f52b"; }

.fa-dot-circle:before {
  content: "\f192"; }

.fa-dove:before {
  content: "\f4ba"; }

.fa-download:before {
  content: "\f019"; }

.fa-draft2digital:before {
  content: "\f396"; }

.fa-drafting-compass:before {
  content: "\f568"; }

.fa-dragon:before {
  content: "\f6d5"; }

.fa-draw-polygon:before {
  content: "\f5ee"; }

.fa-dribbble:before {
  content: "\f17d"; }

.fa-dribbble-square:before {
  content: "\f397"; }

.fa-dropbox:before {
  content: "\f16b"; }

.fa-drum:before {
  content: "\f569"; }

.fa-drum-steelpan:before {
  content: "\f56a"; }

.fa-drumstick-bite:before {
  content: "\f6d7"; }

.fa-drupal:before {
  content: "\f1a9"; }

.fa-dumbbell:before {
  content: "\f44b"; }

.fa-dumpster:before {
  content: "\f793"; }

.fa-dumpster-fire:before {
  content: "\f794"; }

.fa-dungeon:before {
  content: "\f6d9"; }

.fa-dyalog:before {
  content: "\f399"; }

.fa-earlybirds:before {
  content: "\f39a"; }

.fa-ebay:before {
  content: "\f4f4"; }

.fa-edge:before {
  content: "\f282"; }

.fa-edge-legacy:before {
  content: "\e078"; }

.fa-edit:before {
  content: "\f044"; }

.fa-egg:before {
  content: "\f7fb"; }

.fa-eject:before {
  content: "\f052"; }

.fa-elementor:before {
  content: "\f430"; }

.fa-ellipsis-h:before {
  content: "\f141"; }

.fa-ellipsis-v:before {
  content: "\f142"; }

.fa-ello:before {
  content: "\f5f1"; }

.fa-ember:before {
  content: "\f423"; }

.fa-empire:before {
  content: "\f1d1"; }

.fa-envelope:before {
  content: "\f0e0"; }

.fa-envelope-open:before {
  content: "\f2b6"; }

.fa-envelope-open-text:before {
  content: "\f658"; }

.fa-envelope-square:before {
  content: "\f199"; }

.fa-envira:before {
  content: "\f299"; }

.fa-equals:before {
  content: "\f52c"; }

.fa-eraser:before {
  content: "\f12d"; }

.fa-erlang:before {
  content: "\f39d"; }

.fa-ethereum:before {
  content: "\f42e"; }

.fa-ethernet:before {
  content: "\f796"; }

.fa-etsy:before {
  content: "\f2d7"; }

.fa-euro-sign:before {
  content: "\f153"; }

.fa-evernote:before {
  content: "\f839"; }

.fa-exchange-alt:before {
  content: "\f362"; }

.fa-exclamation:before {
  content: "\f12a"; }

.fa-exclamation-circle:before {
  content: "\f06a"; }

.fa-exclamation-triangle:before {
  content: "\f071"; }

.fa-expand:before {
  content: "\f065"; }

.fa-expand-alt:before {
  content: "\f424"; }

.fa-expand-arrows-alt:before {
  content: "\f31e"; }

.fa-expeditedssl:before {
  content: "\f23e"; }

.fa-external-link-alt:before {
  content: "\f35d"; }

.fa-external-link-square-alt:before {
  content: "\f360"; }

.fa-eye:before {
  content: "\f06e"; }

.fa-eye-dropper:before {
  content: "\f1fb"; }

.fa-eye-slash:before {
  content: "\f070"; }

.fa-facebook:before {
  content: "\f09a"; }

.fa-facebook-f:before {
  content: "\f39e"; }

.fa-facebook-messenger:before {
  content: "\f39f"; }

.fa-facebook-square:before {
  content: "\f082"; }

.fa-fan:before {
  content: "\f863"; }

.fa-fantasy-flight-games:before {
  content: "\f6dc"; }

.fa-fast-backward:before {
  content: "\f049"; }

.fa-fast-forward:before {
  content: "\f050"; }

.fa-faucet:before {
  content: "\e005"; }

.fa-fax:before {
  content: "\f1ac"; }

.fa-feather:before {
  content: "\f52d"; }

.fa-feather-alt:before {
  content: "\f56b"; }

.fa-fedex:before {
  content: "\f797"; }

.fa-fedora:before {
  content: "\f798"; }

.fa-female:before {
  content: "\f182"; }

.fa-fighter-jet:before {
  content: "\f0fb"; }

.fa-figma:before {
  content: "\f799"; }

.fa-file:before {
  content: "\f15b"; }

.fa-file-alt:before {
  content: "\f15c"; }

.fa-file-archive:before {
  content: "\f1c6"; }

.fa-file-audio:before {
  content: "\f1c7"; }

.fa-file-code:before {
  content: "\f1c9"; }

.fa-file-contract:before {
  content: "\f56c"; }

.fa-file-csv:before {
  content: "\f6dd"; }

.fa-file-download:before {
  content: "\f56d"; }

.fa-file-excel:before {
  content: "\f1c3"; }

.fa-file-export:before {
  content: "\f56e"; }

.fa-file-image:before {
  content: "\f1c5"; }

.fa-file-import:before {
  content: "\f56f"; }

.fa-file-invoice:before {
  content: "\f570"; }

.fa-file-invoice-dollar:before {
  content: "\f571"; }

.fa-file-medical:before {
  content: "\f477"; }

.fa-file-medical-alt:before {
  content: "\f478"; }

.fa-file-pdf:before {
  content: "\f1c1"; }

.fa-file-powerpoint:before {
  content: "\f1c4"; }

.fa-file-prescription:before {
  content: "\f572"; }

.fa-file-signature:before {
  content: "\f573"; }

.fa-file-upload:before {
  content: "\f574"; }

.fa-file-video:before {
  content: "\f1c8"; }

.fa-file-word:before {
  content: "\f1c2"; }

.fa-fill:before {
  content: "\f575"; }

.fa-fill-drip:before {
  content: "\f576"; }

.fa-film:before {
  content: "\f008"; }

.fa-filter:before {
  content: "\f0b0"; }

.fa-fingerprint:before {
  content: "\f577"; }

.fa-fire:before {
  content: "\f06d"; }

.fa-fire-alt:before {
  content: "\f7e4"; }

.fa-fire-extinguisher:before {
  content: "\f134"; }

.fa-firefox:before {
  content: "\f269"; }

.fa-firefox-browser:before {
  content: "\e007"; }

.fa-first-aid:before {
  content: "\f479"; }

.fa-first-order:before {
  content: "\f2b0"; }

.fa-first-order-alt:before {
  content: "\f50a"; }

.fa-firstdraft:before {
  content: "\f3a1"; }

.fa-fish:before {
  content: "\f578"; }

.fa-fist-raised:before {
  content: "\f6de"; }

.fa-flag:before {
  content: "\f024"; }

.fa-flag-checkered:before {
  content: "\f11e"; }

.fa-flag-usa:before {
  content: "\f74d"; }

.fa-flask:before {
  content: "\f0c3"; }

.fa-flickr:before {
  content: "\f16e"; }

.fa-flipboard:before {
  content: "\f44d"; }

.fa-flushed:before {
  content: "\f579"; }

.fa-fly:before {
  content: "\f417"; }

.fa-folder:before {
  content: "\f07b"; }

.fa-folder-minus:before {
  content: "\f65d"; }

.fa-folder-open:before {
  content: "\f07c"; }

.fa-folder-plus:before {
  content: "\f65e"; }

.fa-font:before {
  content: "\f031"; }

.fa-font-awesome:before {
  content: "\f2b4"; }

.fa-font-awesome-alt:before {
  content: "\f35c"; }

.fa-font-awesome-flag:before {
  content: "\f425"; }

.fa-font-awesome-logo-full:before {
  content: "\f4e6"; }

.fa-fonticons:before {
  content: "\f280"; }

.fa-fonticons-fi:before {
  content: "\f3a2"; }

.fa-football-ball:before {
  content: "\f44e"; }

.fa-fort-awesome:before {
  content: "\f286"; }

.fa-fort-awesome-alt:before {
  content: "\f3a3"; }

.fa-forumbee:before {
  content: "\f211"; }

.fa-forward:before {
  content: "\f04e"; }

.fa-foursquare:before {
  content: "\f180"; }

.fa-free-code-camp:before {
  content: "\f2c5"; }

.fa-freebsd:before {
  content: "\f3a4"; }

.fa-frog:before {
  content: "\f52e"; }

.fa-frown:before {
  content: "\f119"; }

.fa-frown-open:before {
  content: "\f57a"; }

.fa-fulcrum:before {
  content: "\f50b"; }

.fa-funnel-dollar:before {
  content: "\f662"; }

.fa-futbol:before {
  content: "\f1e3"; }

.fa-galactic-republic:before {
  content: "\f50c"; }

.fa-galactic-senate:before {
  content: "\f50d"; }

.fa-gamepad:before {
  content: "\f11b"; }

.fa-gas-pump:before {
  content: "\f52f"; }

.fa-gavel:before {
  content: "\f0e3"; }

.fa-gem:before {
  content: "\f3a5"; }

.fa-genderless:before {
  content: "\f22d"; }

.fa-get-pocket:before {
  content: "\f265"; }

.fa-gg:before {
  content: "\f260"; }

.fa-gg-circle:before {
  content: "\f261"; }

.fa-ghost:before {
  content: "\f6e2"; }

.fa-gift:before {
  content: "\f06b"; }

.fa-gifts:before {
  content: "\f79c"; }

.fa-git:before {
  content: "\f1d3"; }

.fa-git-alt:before {
  content: "\f841"; }

.fa-git-square:before {
  content: "\f1d2"; }

.fa-github:before {
  content: "\f09b"; }

.fa-github-alt:before {
  content: "\f113"; }

.fa-github-square:before {
  content: "\f092"; }

.fa-gitkraken:before {
  content: "\f3a6"; }

.fa-gitlab:before {
  content: "\f296"; }

.fa-gitter:before {
  content: "\f426"; }

.fa-glass-cheers:before {
  content: "\f79f"; }

.fa-glass-martini:before {
  content: "\f000"; }

.fa-glass-martini-alt:before {
  content: "\f57b"; }

.fa-glass-whiskey:before {
  content: "\f7a0"; }

.fa-glasses:before {
  content: "\f530"; }

.fa-glide:before {
  content: "\f2a5"; }

.fa-glide-g:before {
  content: "\f2a6"; }

.fa-globe:before {
  content: "\f0ac"; }

.fa-globe-africa:before {
  content: "\f57c"; }

.fa-globe-americas:before {
  content: "\f57d"; }

.fa-globe-asia:before {
  content: "\f57e"; }

.fa-globe-europe:before {
  content: "\f7a2"; }

.fa-gofore:before {
  content: "\f3a7"; }

.fa-golf-ball:before {
  content: "\f450"; }

.fa-goodreads:before {
  content: "\f3a8"; }

.fa-goodreads-g:before {
  content: "\f3a9"; }

.fa-google:before {
  content: "\f1a0"; }

.fa-google-drive:before {
  content: "\f3aa"; }

.fa-google-pay:before {
  content: "\e079"; }

.fa-google-play:before {
  content: "\f3ab"; }

.fa-google-plus:before {
  content: "\f2b3"; }

.fa-google-plus-g:before {
  content: "\f0d5"; }

.fa-google-plus-square:before {
  content: "\f0d4"; }

.fa-google-wallet:before {
  content: "\f1ee"; }

.fa-gopuram:before {
  content: "\f664"; }

.fa-graduation-cap:before {
  content: "\f19d"; }

.fa-gratipay:before {
  content: "\f184"; }

.fa-grav:before {
  content: "\f2d6"; }

.fa-greater-than:before {
  content: "\f531"; }

.fa-greater-than-equal:before {
  content: "\f532"; }

.fa-grimace:before {
  content: "\f57f"; }

.fa-grin:before {
  content: "\f580"; }

.fa-grin-alt:before {
  content: "\f581"; }

.fa-grin-beam:before {
  content: "\f582"; }

.fa-grin-beam-sweat:before {
  content: "\f583"; }

.fa-grin-hearts:before {
  content: "\f584"; }

.fa-grin-squint:before {
  content: "\f585"; }

.fa-grin-squint-tears:before {
  content: "\f586"; }

.fa-grin-stars:before {
  content: "\f587"; }

.fa-grin-tears:before {
  content: "\f588"; }

.fa-grin-tongue:before {
  content: "\f589"; }

.fa-grin-tongue-squint:before {
  content: "\f58a"; }

.fa-grin-tongue-wink:before {
  content: "\f58b"; }

.fa-grin-wink:before {
  content: "\f58c"; }

.fa-grip-horizontal:before {
  content: "\f58d"; }

.fa-grip-lines:before {
  content: "\f7a4"; }

.fa-grip-lines-vertical:before {
  content: "\f7a5"; }

.fa-grip-vertical:before {
  content: "\f58e"; }

.fa-gripfire:before {
  content: "\f3ac"; }

.fa-grunt:before {
  content: "\f3ad"; }

.fa-guilded:before {
  content: "\e07e"; }

.fa-guitar:before {
  content: "\f7a6"; }

.fa-gulp:before {
  content: "\f3ae"; }

.fa-h-square:before {
  content: "\f0fd"; }

.fa-hacker-news:before {
  content: "\f1d4"; }

.fa-hacker-news-square:before {
  content: "\f3af"; }

.fa-hackerrank:before {
  content: "\f5f7"; }

.fa-hamburger:before {
  content: "\f805"; }

.fa-hammer:before {
  content: "\f6e3"; }

.fa-hamsa:before {
  content: "\f665"; }

.fa-hand-holding:before {
  content: "\f4bd"; }

.fa-hand-holding-heart:before {
  content: "\f4be"; }

.fa-hand-holding-medical:before {
  content: "\e05c"; }

.fa-hand-holding-usd:before {
  content: "\f4c0"; }

.fa-hand-holding-water:before {
  content: "\f4c1"; }

.fa-hand-lizard:before {
  content: "\f258"; }

.fa-hand-middle-finger:before {
  content: "\f806"; }

.fa-hand-paper:before {
  content: "\f256"; }

.fa-hand-peace:before {
  content: "\f25b"; }

.fa-hand-point-down:before {
  content: "\f0a7"; }

.fa-hand-point-left:before {
  content: "\f0a5"; }

.fa-hand-point-right:before {
  content: "\f0a4"; }

.fa-hand-point-up:before {
  content: "\f0a6"; }

.fa-hand-pointer:before {
  content: "\f25a"; }

.fa-hand-rock:before {
  content: "\f255"; }

.fa-hand-scissors:before {
  content: "\f257"; }

.fa-hand-sparkles:before {
  content: "\e05d"; }

.fa-hand-spock:before {
  content: "\f259"; }

.fa-hands:before {
  content: "\f4c2"; }

.fa-hands-helping:before {
  content: "\f4c4"; }

.fa-hands-wash:before {
  content: "\e05e"; }

.fa-handshake:before {
  content: "\f2b5"; }

.fa-handshake-alt-slash:before {
  content: "\e05f"; }

.fa-handshake-slash:before {
  content: "\e060"; }

.fa-hanukiah:before {
  content: "\f6e6"; }

.fa-hard-hat:before {
  content: "\f807"; }

.fa-hashtag:before {
  content: "\f292"; }

.fa-hat-cowboy:before {
  content: "\f8c0"; }

.fa-hat-cowboy-side:before {
  content: "\f8c1"; }

.fa-hat-wizard:before {
  content: "\f6e8"; }

.fa-hdd:before {
  content: "\f0a0"; }

.fa-head-side-cough:before {
  content: "\e061"; }

.fa-head-side-cough-slash:before {
  content: "\e062"; }

.fa-head-side-mask:before {
  content: "\e063"; }

.fa-head-side-virus:before {
  content: "\e064"; }

.fa-heading:before {
  content: "\f1dc"; }

.fa-headphones:before {
  content: "\f025"; }

.fa-headphones-alt:before {
  content: "\f58f"; }

.fa-headset:before {
  content: "\f590"; }

.fa-heart:before {
  content: "\f004"; }

.fa-heart-broken:before {
  content: "\f7a9"; }

.fa-heartbeat:before {
  content: "\f21e"; }

.fa-helicopter:before {
  content: "\f533"; }

.fa-highlighter:before {
  content: "\f591"; }

.fa-hiking:before {
  content: "\f6ec"; }

.fa-hippo:before {
  content: "\f6ed"; }

.fa-hips:before {
  content: "\f452"; }

.fa-hire-a-helper:before {
  content: "\f3b0"; }

.fa-history:before {
  content: "\f1da"; }

.fa-hive:before {
  content: "\e07f"; }

.fa-hockey-puck:before {
  content: "\f453"; }

.fa-holly-berry:before {
  content: "\f7aa"; }

.fa-home:before {
  content: "\f015"; }

.fa-hooli:before {
  content: "\f427"; }

.fa-hornbill:before {
  content: "\f592"; }

.fa-horse:before {
  content: "\f6f0"; }

.fa-horse-head:before {
  content: "\f7ab"; }

.fa-hospital:before {
  content: "\f0f8"; }

.fa-hospital-alt:before {
  content: "\f47d"; }

.fa-hospital-symbol:before {
  content: "\f47e"; }

.fa-hospital-user:before {
  content: "\f80d"; }

.fa-hot-tub:before {
  content: "\f593"; }

.fa-hotdog:before {
  content: "\f80f"; }

.fa-hotel:before {
  content: "\f594"; }

.fa-hotjar:before {
  content: "\f3b1"; }

.fa-hourglass:before {
  content: "\f254"; }

.fa-hourglass-end:before {
  content: "\f253"; }

.fa-hourglass-half:before {
  content: "\f252"; }

.fa-hourglass-start:before {
  content: "\f251"; }

.fa-house-damage:before {
  content: "\f6f1"; }

.fa-house-user:before {
  content: "\e065"; }

.fa-houzz:before {
  content: "\f27c"; }

.fa-hryvnia:before {
  content: "\f6f2"; }

.fa-html5:before {
  content: "\f13b"; }

.fa-hubspot:before {
  content: "\f3b2"; }

.fa-i-cursor:before {
  content: "\f246"; }

.fa-ice-cream:before {
  content: "\f810"; }

.fa-icicles:before {
  content: "\f7ad"; }

.fa-icons:before {
  content: "\f86d"; }

.fa-id-badge:before {
  content: "\f2c1"; }

.fa-id-card:before {
  content: "\f2c2"; }

.fa-id-card-alt:before {
  content: "\f47f"; }

.fa-ideal:before {
  content: "\e013"; }

.fa-igloo:before {
  content: "\f7ae"; }

.fa-image:before {
  content: "\f03e"; }

.fa-images:before {
  content: "\f302"; }

.fa-imdb:before {
  content: "\f2d8"; }

.fa-inbox:before {
  content: "\f01c"; }

.fa-indent:before {
  content: "\f03c"; }

.fa-industry:before {
  content: "\f275"; }

.fa-infinity:before {
  content: "\f534"; }

.fa-info:before {
  content: "\f129"; }

.fa-info-circle:before {
  content: "\f05a"; }

.fa-innosoft:before {
  content: "\e080"; }

.fa-instagram:before {
  content: "\f16d"; }

.fa-instagram-square:before {
  content: "\e055"; }

.fa-instalod:before {
  content: "\e081"; }

.fa-intercom:before {
  content: "\f7af"; }

.fa-internet-explorer:before {
  content: "\f26b"; }

.fa-invision:before {
  content: "\f7b0"; }

.fa-ioxhost:before {
  content: "\f208"; }

.fa-italic:before {
  content: "\f033"; }

.fa-itch-io:before {
  content: "\f83a"; }

.fa-itunes:before {
  content: "\f3b4"; }

.fa-itunes-note:before {
  content: "\f3b5"; }

.fa-java:before {
  content: "\f4e4"; }

.fa-jedi:before {
  content: "\f669"; }

.fa-jedi-order:before {
  content: "\f50e"; }

.fa-jenkins:before {
  content: "\f3b6"; }

.fa-jira:before {
  content: "\f7b1"; }

.fa-joget:before {
  content: "\f3b7"; }

.fa-joint:before {
  content: "\f595"; }

.fa-joomla:before {
  content: "\f1aa"; }

.fa-journal-whills:before {
  content: "\f66a"; }

.fa-js:before {
  content: "\f3b8"; }

.fa-js-square:before {
  content: "\f3b9"; }

.fa-jsfiddle:before {
  content: "\f1cc"; }

.fa-kaaba:before {
  content: "\f66b"; }

.fa-kaggle:before {
  content: "\f5fa"; }

.fa-key:before {
  content: "\f084"; }

.fa-keybase:before {
  content: "\f4f5"; }

.fa-keyboard:before {
  content: "\f11c"; }

.fa-keycdn:before {
  content: "\f3ba"; }

.fa-khanda:before {
  content: "\f66d"; }

.fa-kickstarter:before {
  content: "\f3bb"; }

.fa-kickstarter-k:before {
  content: "\f3bc"; }

.fa-kiss:before {
  content: "\f596"; }

.fa-kiss-beam:before {
  content: "\f597"; }

.fa-kiss-wink-heart:before {
  content: "\f598"; }

.fa-kiwi-bird:before {
  content: "\f535"; }

.fa-korvue:before {
  content: "\f42f"; }

.fa-landmark:before {
  content: "\f66f"; }

.fa-language:before {
  content: "\f1ab"; }

.fa-laptop:before {
  content: "\f109"; }

.fa-laptop-code:before {
  content: "\f5fc"; }

.fa-laptop-house:before {
  content: "\e066"; }

.fa-laptop-medical:before {
  content: "\f812"; }

.fa-laravel:before {
  content: "\f3bd"; }

.fa-lastfm:before {
  content: "\f202"; }

.fa-lastfm-square:before {
  content: "\f203"; }

.fa-laugh:before {
  content: "\f599"; }

.fa-laugh-beam:before {
  content: "\f59a"; }

.fa-laugh-squint:before {
  content: "\f59b"; }

.fa-laugh-wink:before {
  content: "\f59c"; }

.fa-layer-group:before {
  content: "\f5fd"; }

.fa-leaf:before {
  content: "\f06c"; }

.fa-leanpub:before {
  content: "\f212"; }

.fa-lemon:before {
  content: "\f094"; }

.fa-less:before {
  content: "\f41d"; }

.fa-less-than:before {
  content: "\f536"; }

.fa-less-than-equal:before {
  content: "\f537"; }

.fa-level-down-alt:before {
  content: "\f3be"; }

.fa-level-up-alt:before {
  content: "\f3bf"; }

.fa-life-ring:before {
  content: "\f1cd"; }

.fa-lightbulb:before {
  content: "\f0eb"; }

.fa-line:before {
  content: "\f3c0"; }

.fa-link:before {
  content: "\f0c1"; }

.fa-linkedin:before {
  content: "\f08c"; }

.fa-linkedin-in:before {
  content: "\f0e1"; }

.fa-linode:before {
  content: "\f2b8"; }

.fa-linux:before {
  content: "\f17c"; }

.fa-lira-sign:before {
  content: "\f195"; }

.fa-list:before {
  content: "\f03a"; }

.fa-list-alt:before {
  content: "\f022"; }

.fa-list-ol:before {
  content: "\f0cb"; }

.fa-list-ul:before {
  content: "\f0ca"; }

.fa-location-arrow:before {
  content: "\f124"; }

.fa-lock:before {
  content: "\f023"; }

.fa-lock-open:before {
  content: "\f3c1"; }

.fa-long-arrow-alt-down:before {
  content: "\f309"; }

.fa-long-arrow-alt-left:before {
  content: "\f30a"; }

.fa-long-arrow-alt-right:before {
  content: "\f30b"; }

.fa-long-arrow-alt-up:before {
  content: "\f30c"; }

.fa-low-vision:before {
  content: "\f2a8"; }

.fa-luggage-cart:before {
  content: "\f59d"; }

.fa-lungs:before {
  content: "\f604"; }

.fa-lungs-virus:before {
  content: "\e067"; }

.fa-lyft:before {
  content: "\f3c3"; }

.fa-magento:before {
  content: "\f3c4"; }

.fa-magic:before {
  content: "\f0d0"; }

.fa-magnet:before {
  content: "\f076"; }

.fa-mail-bulk:before {
  content: "\f674"; }

.fa-mailchimp:before {
  content: "\f59e"; }

.fa-male:before {
  content: "\f183"; }

.fa-mandalorian:before {
  content: "\f50f"; }

.fa-map:before {
  content: "\f279"; }

.fa-map-marked:before {
  content: "\f59f"; }

.fa-map-marked-alt:before {
  content: "\f5a0"; }

.fa-map-marker:before {
  content: "\f041"; }

.fa-map-marker-alt:before {
  content: "\f3c5"; }

.fa-map-pin:before {
  content: "\f276"; }

.fa-map-signs:before {
  content: "\f277"; }

.fa-markdown:before {
  content: "\f60f"; }

.fa-marker:before {
  content: "\f5a1"; }

.fa-mars:before {
  content: "\f222"; }

.fa-mars-double:before {
  content: "\f227"; }

.fa-mars-stroke:before {
  content: "\f229"; }

.fa-mars-stroke-h:before {
  content: "\f22b"; }

.fa-mars-stroke-v:before {
  content: "\f22a"; }

.fa-mask:before {
  content: "\f6fa"; }

.fa-mastodon:before {
  content: "\f4f6"; }

.fa-maxcdn:before {
  content: "\f136"; }

.fa-mdb:before {
  content: "\f8ca"; }

.fa-medal:before {
  content: "\f5a2"; }

.fa-medapps:before {
  content: "\f3c6"; }

.fa-medium:before {
  content: "\f23a"; }

.fa-medium-m:before {
  content: "\f3c7"; }

.fa-medkit:before {
  content: "\f0fa"; }

.fa-medrt:before {
  content: "\f3c8"; }

.fa-meetup:before {
  content: "\f2e0"; }

.fa-megaport:before {
  content: "\f5a3"; }

.fa-meh:before {
  content: "\f11a"; }

.fa-meh-blank:before {
  content: "\f5a4"; }

.fa-meh-rolling-eyes:before {
  content: "\f5a5"; }

.fa-memory:before {
  content: "\f538"; }

.fa-mendeley:before {
  content: "\f7b3"; }

.fa-menorah:before {
  content: "\f676"; }

.fa-mercury:before {
  content: "\f223"; }

.fa-meteor:before {
  content: "\f753"; }

.fa-microblog:before {
  content: "\e01a"; }

.fa-microchip:before {
  content: "\f2db"; }

.fa-microphone:before {
  content: "\f130"; }

.fa-microphone-alt:before {
  content: "\f3c9"; }

.fa-microphone-alt-slash:before {
  content: "\f539"; }

.fa-microphone-slash:before {
  content: "\f131"; }

.fa-microscope:before {
  content: "\f610"; }

.fa-microsoft:before {
  content: "\f3ca"; }

.fa-minus:before {
  content: "\f068"; }

.fa-minus-circle:before {
  content: "\f056"; }

.fa-minus-square:before {
  content: "\f146"; }

.fa-mitten:before {
  content: "\f7b5"; }

.fa-mix:before {
  content: "\f3cb"; }

.fa-mixcloud:before {
  content: "\f289"; }

.fa-mixer:before {
  content: "\e056"; }

.fa-mizuni:before {
  content: "\f3cc"; }

.fa-mobile:before {
  content: "\f10b"; }

.fa-mobile-alt:before {
  content: "\f3cd"; }

.fa-modx:before {
  content: "\f285"; }

.fa-monero:before {
  content: "\f3d0"; }

.fa-money-bill:before {
  content: "\f0d6"; }

.fa-money-bill-alt:before {
  content: "\f3d1"; }

.fa-money-bill-wave:before {
  content: "\f53a"; }

.fa-money-bill-wave-alt:before {
  content: "\f53b"; }

.fa-money-check:before {
  content: "\f53c"; }

.fa-money-check-alt:before {
  content: "\f53d"; }

.fa-monument:before {
  content: "\f5a6"; }

.fa-moon:before {
  content: "\f186"; }

.fa-mortar-pestle:before {
  content: "\f5a7"; }

.fa-mosque:before {
  content: "\f678"; }

.fa-motorcycle:before {
  content: "\f21c"; }

.fa-mountain:before {
  content: "\f6fc"; }

.fa-mouse:before {
  content: "\f8cc"; }

.fa-mouse-pointer:before {
  content: "\f245"; }

.fa-mug-hot:before {
  content: "\f7b6"; }

.fa-music:before {
  content: "\f001"; }

.fa-napster:before {
  content: "\f3d2"; }

.fa-neos:before {
  content: "\f612"; }

.fa-network-wired:before {
  content: "\f6ff"; }

.fa-neuter:before {
  content: "\f22c"; }

.fa-newspaper:before {
  content: "\f1ea"; }

.fa-nimblr:before {
  content: "\f5a8"; }

.fa-node:before {
  content: "\f419"; }

.fa-node-js:before {
  content: "\f3d3"; }

.fa-not-equal:before {
  content: "\f53e"; }

.fa-notes-medical:before {
  content: "\f481"; }

.fa-npm:before {
  content: "\f3d4"; }

.fa-ns8:before {
  content: "\f3d5"; }

.fa-nutritionix:before {
  content: "\f3d6"; }

.fa-object-group:before {
  content: "\f247"; }

.fa-object-ungroup:before {
  content: "\f248"; }

.fa-octopus-deploy:before {
  content: "\e082"; }

.fa-odnoklassniki:before {
  content: "\f263"; }

.fa-odnoklassniki-square:before {
  content: "\f264"; }

.fa-oil-can:before {
  content: "\f613"; }

.fa-old-republic:before {
  content: "\f510"; }

.fa-om:before {
  content: "\f679"; }

.fa-opencart:before {
  content: "\f23d"; }

.fa-openid:before {
  content: "\f19b"; }

.fa-opera:before {
  content: "\f26a"; }

.fa-optin-monster:before {
  content: "\f23c"; }

.fa-orcid:before {
  content: "\f8d2"; }

.fa-osi:before {
  content: "\f41a"; }

.fa-otter:before {
  content: "\f700"; }

.fa-outdent:before {
  content: "\f03b"; }

.fa-page4:before {
  content: "\f3d7"; }

.fa-pagelines:before {
  content: "\f18c"; }

.fa-pager:before {
  content: "\f815"; }

.fa-paint-brush:before {
  content: "\f1fc"; }

.fa-paint-roller:before {
  content: "\f5aa"; }

.fa-palette:before {
  content: "\f53f"; }

.fa-palfed:before {
  content: "\f3d8"; }

.fa-pallet:before {
  content: "\f482"; }

.fa-paper-plane:before {
  content: "\f1d8"; }

.fa-paperclip:before {
  content: "\f0c6"; }

.fa-parachute-box:before {
  content: "\f4cd"; }

.fa-paragraph:before {
  content: "\f1dd"; }

.fa-parking:before {
  content: "\f540"; }

.fa-passport:before {
  content: "\f5ab"; }

.fa-pastafarianism:before {
  content: "\f67b"; }

.fa-paste:before {
  content: "\f0ea"; }

.fa-patreon:before {
  content: "\f3d9"; }

.fa-pause:before {
  content: "\f04c"; }

.fa-pause-circle:before {
  content: "\f28b"; }

.fa-paw:before {
  content: "\f1b0"; }

.fa-paypal:before {
  content: "\f1ed"; }

.fa-peace:before {
  content: "\f67c"; }

.fa-pen:before {
  content: "\f304"; }

.fa-pen-alt:before {
  content: "\f305"; }

.fa-pen-fancy:before {
  content: "\f5ac"; }

.fa-pen-nib:before {
  content: "\f5ad"; }

.fa-pen-square:before {
  content: "\f14b"; }

.fa-pencil-alt:before {
  content: "\f303"; }

.fa-pencil-ruler:before {
  content: "\f5ae"; }

.fa-penny-arcade:before {
  content: "\f704"; }

.fa-people-arrows:before {
  content: "\e068"; }

.fa-people-carry:before {
  content: "\f4ce"; }

.fa-pepper-hot:before {
  content: "\f816"; }

.fa-perbyte:before {
  content: "\e083"; }

.fa-percent:before {
  content: "\f295"; }

.fa-percentage:before {
  content: "\f541"; }

.fa-periscope:before {
  content: "\f3da"; }

.fa-person-booth:before {
  content: "\f756"; }

.fa-phabricator:before {
  content: "\f3db"; }

.fa-phoenix-framework:before {
  content: "\f3dc"; }

.fa-phoenix-squadron:before {
  content: "\f511"; }

.fa-phone:before {
  content: "\f095"; }

.fa-phone-alt:before {
  content: "\f879"; }

.fa-phone-slash:before {
  content: "\f3dd"; }

.fa-phone-square:before {
  content: "\f098"; }

.fa-phone-square-alt:before {
  content: "\f87b"; }

.fa-phone-volume:before {
  content: "\f2a0"; }

.fa-photo-video:before {
  content: "\f87c"; }

.fa-php:before {
  content: "\f457"; }

.fa-pied-piper:before {
  content: "\f2ae"; }

.fa-pied-piper-alt:before {
  content: "\f1a8"; }

.fa-pied-piper-hat:before {
  content: "\f4e5"; }

.fa-pied-piper-pp:before {
  content: "\f1a7"; }

.fa-pied-piper-square:before {
  content: "\e01e"; }

.fa-piggy-bank:before {
  content: "\f4d3"; }

.fa-pills:before {
  content: "\f484"; }

.fa-pinterest:before {
  content: "\f0d2"; }

.fa-pinterest-p:before {
  content: "\f231"; }

.fa-pinterest-square:before {
  content: "\f0d3"; }

.fa-pizza-slice:before {
  content: "\f818"; }

.fa-place-of-worship:before {
  content: "\f67f"; }

.fa-plane:before {
  content: "\f072"; }

.fa-plane-arrival:before {
  content: "\f5af"; }

.fa-plane-departure:before {
  content: "\f5b0"; }

.fa-plane-slash:before {
  content: "\e069"; }

.fa-play:before {
  content: "\f04b"; }

.fa-play-circle:before {
  content: "\f144"; }

.fa-playstation:before {
  content: "\f3df"; }

.fa-plug:before {
  content: "\f1e6"; }

.fa-plus:before {
  content: "\f067"; }

.fa-plus-circle:before {
  content: "\f055"; }

.fa-plus-square:before {
  content: "\f0fe"; }

.fa-podcast:before {
  content: "\f2ce"; }

.fa-poll:before {
  content: "\f681"; }

.fa-poll-h:before {
  content: "\f682"; }

.fa-poo:before {
  content: "\f2fe"; }

.fa-poo-storm:before {
  content: "\f75a"; }

.fa-poop:before {
  content: "\f619"; }

.fa-portrait:before {
  content: "\f3e0"; }

.fa-pound-sign:before {
  content: "\f154"; }

.fa-power-off:before {
  content: "\f011"; }

.fa-pray:before {
  content: "\f683"; }

.fa-praying-hands:before {
  content: "\f684"; }

.fa-prescription:before {
  content: "\f5b1"; }

.fa-prescription-bottle:before {
  content: "\f485"; }

.fa-prescription-bottle-alt:before {
  content: "\f486"; }

.fa-print:before {
  content: "\f02f"; }

.fa-procedures:before {
  content: "\f487"; }

.fa-product-hunt:before {
  content: "\f288"; }

.fa-project-diagram:before {
  content: "\f542"; }

.fa-pump-medical:before {
  content: "\e06a"; }

.fa-pump-soap:before {
  content: "\e06b"; }

.fa-pushed:before {
  content: "\f3e1"; }

.fa-puzzle-piece:before {
  content: "\f12e"; }

.fa-python:before {
  content: "\f3e2"; }

.fa-qq:before {
  content: "\f1d6"; }

.fa-qrcode:before {
  content: "\f029"; }

.fa-question:before {
  content: "\f128"; }

.fa-question-circle:before {
  content: "\f059"; }

.fa-quidditch:before {
  content: "\f458"; }

.fa-quinscape:before {
  content: "\f459"; }

.fa-quora:before {
  content: "\f2c4"; }

.fa-quote-left:before {
  content: "\f10d"; }

.fa-quote-right:before {
  content: "\f10e"; }

.fa-quran:before {
  content: "\f687"; }

.fa-r-project:before {
  content: "\f4f7"; }

.fa-radiation:before {
  content: "\f7b9"; }

.fa-radiation-alt:before {
  content: "\f7ba"; }

.fa-rainbow:before {
  content: "\f75b"; }

.fa-random:before {
  content: "\f074"; }

.fa-raspberry-pi:before {
  content: "\f7bb"; }

.fa-ravelry:before {
  content: "\f2d9"; }

.fa-react:before {
  content: "\f41b"; }

.fa-reacteurope:before {
  content: "\f75d"; }

.fa-readme:before {
  content: "\f4d5"; }

.fa-rebel:before {
  content: "\f1d0"; }

.fa-receipt:before {
  content: "\f543"; }

.fa-record-vinyl:before {
  content: "\f8d9"; }

.fa-recycle:before {
  content: "\f1b8"; }

.fa-red-river:before {
  content: "\f3e3"; }

.fa-reddit:before {
  content: "\f1a1"; }

.fa-reddit-alien:before {
  content: "\f281"; }

.fa-reddit-square:before {
  content: "\f1a2"; }

.fa-redhat:before {
  content: "\f7bc"; }

.fa-redo:before {
  content: "\f01e"; }

.fa-redo-alt:before {
  content: "\f2f9"; }

.fa-registered:before {
  content: "\f25d"; }

.fa-remove-format:before {
  content: "\f87d"; }

.fa-renren:before {
  content: "\f18b"; }

.fa-reply:before {
  content: "\f3e5"; }

.fa-reply-all:before {
  content: "\f122"; }

.fa-replyd:before {
  content: "\f3e6"; }

.fa-republican:before {
  content: "\f75e"; }

.fa-researchgate:before {
  content: "\f4f8"; }

.fa-resolving:before {
  content: "\f3e7"; }

.fa-restroom:before {
  content: "\f7bd"; }

.fa-retweet:before {
  content: "\f079"; }

.fa-rev:before {
  content: "\f5b2"; }

.fa-ribbon:before {
  content: "\f4d6"; }

.fa-ring:before {
  content: "\f70b"; }

.fa-road:before {
  content: "\f018"; }

.fa-robot:before {
  content: "\f544"; }

.fa-rocket:before {
  content: "\f135"; }

.fa-rocketchat:before {
  content: "\f3e8"; }

.fa-rockrms:before {
  content: "\f3e9"; }

.fa-route:before {
  content: "\f4d7"; }

.fa-rss:before {
  content: "\f09e"; }

.fa-rss-square:before {
  content: "\f143"; }

.fa-ruble-sign:before {
  content: "\f158"; }

.fa-ruler:before {
  content: "\f545"; }

.fa-ruler-combined:before {
  content: "\f546"; }

.fa-ruler-horizontal:before {
  content: "\f547"; }

.fa-ruler-vertical:before {
  content: "\f548"; }

.fa-running:before {
  content: "\f70c"; }

.fa-rupee-sign:before {
  content: "\f156"; }

.fa-rust:before {
  content: "\e07a"; }

.fa-sad-cry:before {
  content: "\f5b3"; }

.fa-sad-tear:before {
  content: "\f5b4"; }

.fa-safari:before {
  content: "\f267"; }

.fa-salesforce:before {
  content: "\f83b"; }

.fa-sass:before {
  content: "\f41e"; }

.fa-satellite:before {
  content: "\f7bf"; }

.fa-satellite-dish:before {
  content: "\f7c0"; }

.fa-save:before {
  content: "\f0c7"; }

.fa-schlix:before {
  content: "\f3ea"; }

.fa-school:before {
  content: "\f549"; }

.fa-screwdriver:before {
  content: "\f54a"; }

.fa-scribd:before {
  content: "\f28a"; }

.fa-scroll:before {
  content: "\f70e"; }

.fa-sd-card:before {
  content: "\f7c2"; }

.fa-search:before {
  content: "\f002"; }

.fa-search-dollar:before {
  content: "\f688"; }

.fa-search-location:before {
  content: "\f689"; }

.fa-search-minus:before {
  content: "\f010"; }

.fa-search-plus:before {
  content: "\f00e"; }

.fa-searchengin:before {
  content: "\f3eb"; }

.fa-seedling:before {
  content: "\f4d8"; }

.fa-sellcast:before {
  content: "\f2da"; }

.fa-sellsy:before {
  content: "\f213"; }

.fa-server:before {
  content: "\f233"; }

.fa-servicestack:before {
  content: "\f3ec"; }

.fa-shapes:before {
  content: "\f61f"; }

.fa-share:before {
  content: "\f064"; }

.fa-share-alt:before {
  content: "\f1e0"; }

.fa-share-alt-square:before {
  content: "\f1e1"; }

.fa-share-square:before {
  content: "\f14d"; }

.fa-shekel-sign:before {
  content: "\f20b"; }

.fa-shield-alt:before {
  content: "\f3ed"; }

.fa-shield-virus:before {
  content: "\e06c"; }

.fa-ship:before {
  content: "\f21a"; }

.fa-shipping-fast:before {
  content: "\f48b"; }

.fa-shirtsinbulk:before {
  content: "\f214"; }

.fa-shoe-prints:before {
  content: "\f54b"; }

.fa-shopify:before {
  content: "\e057"; }

.fa-shopping-bag:before {
  content: "\f290"; }

.fa-shopping-basket:before {
  content: "\f291"; }

.fa-shopping-cart:before {
  content: "\f07a"; }

.fa-shopware:before {
  content: "\f5b5"; }

.fa-shower:before {
  content: "\f2cc"; }

.fa-shuttle-van:before {
  content: "\f5b6"; }

.fa-sign:before {
  content: "\f4d9"; }

.fa-sign-in-alt:before {
  content: "\f2f6"; }

.fa-sign-language:before {
  content: "\f2a7"; }

.fa-sign-out-alt:before {
  content: "\f2f5"; }

.fa-signal:before {
  content: "\f012"; }

.fa-signature:before {
  content: "\f5b7"; }

.fa-sim-card:before {
  content: "\f7c4"; }

.fa-simplybuilt:before {
  content: "\f215"; }

.fa-sink:before {
  content: "\e06d"; }

.fa-sistrix:before {
  content: "\f3ee"; }

.fa-sitemap:before {
  content: "\f0e8"; }

.fa-sith:before {
  content: "\f512"; }

.fa-skating:before {
  content: "\f7c5"; }

.fa-sketch:before {
  content: "\f7c6"; }

.fa-skiing:before {
  content: "\f7c9"; }

.fa-skiing-nordic:before {
  content: "\f7ca"; }

.fa-skull:before {
  content: "\f54c"; }

.fa-skull-crossbones:before {
  content: "\f714"; }

.fa-skyatlas:before {
  content: "\f216"; }

.fa-skype:before {
  content: "\f17e"; }

.fa-slack:before {
  content: "\f198"; }

.fa-slack-hash:before {
  content: "\f3ef"; }

.fa-slash:before {
  content: "\f715"; }

.fa-sleigh:before {
  content: "\f7cc"; }

.fa-sliders-h:before {
  content: "\f1de"; }

.fa-slideshare:before {
  content: "\f1e7"; }

.fa-smile:before {
  content: "\f118"; }

.fa-smile-beam:before {
  content: "\f5b8"; }

.fa-smile-wink:before {
  content: "\f4da"; }

.fa-smog:before {
  content: "\f75f"; }

.fa-smoking:before {
  content: "\f48d"; }

.fa-smoking-ban:before {
  content: "\f54d"; }

.fa-sms:before {
  content: "\f7cd"; }

.fa-snapchat:before {
  content: "\f2ab"; }

.fa-snapchat-ghost:before {
  content: "\f2ac"; }

.fa-snapchat-square:before {
  content: "\f2ad"; }

.fa-snowboarding:before {
  content: "\f7ce"; }

.fa-snowflake:before {
  content: "\f2dc"; }

.fa-snowman:before {
  content: "\f7d0"; }

.fa-snowplow:before {
  content: "\f7d2"; }

.fa-soap:before {
  content: "\e06e"; }

.fa-socks:before {
  content: "\f696"; }

.fa-solar-panel:before {
  content: "\f5ba"; }

.fa-sort:before {
  content: "\f0dc"; }

.fa-sort-alpha-down:before {
  content: "\f15d"; }

.fa-sort-alpha-down-alt:before {
  content: "\f881"; }

.fa-sort-alpha-up:before {
  content: "\f15e"; }

.fa-sort-alpha-up-alt:before {
  content: "\f882"; }

.fa-sort-amount-down:before {
  content: "\f160"; }

.fa-sort-amount-down-alt:before {
  content: "\f884"; }

.fa-sort-amount-up:before {
  content: "\f161"; }

.fa-sort-amount-up-alt:before {
  content: "\f885"; }

.fa-sort-down:before {
  content: "\f0dd"; }

.fa-sort-numeric-down:before {
  content: "\f162"; }

.fa-sort-numeric-down-alt:before {
  content: "\f886"; }

.fa-sort-numeric-up:before {
  content: "\f163"; }

.fa-sort-numeric-up-alt:before {
  content: "\f887"; }

.fa-sort-up:before {
  content: "\f0de"; }

.fa-soundcloud:before {
  content: "\f1be"; }

.fa-sourcetree:before {
  content: "\f7d3"; }

.fa-spa:before {
  content: "\f5bb"; }

.fa-space-shuttle:before {
  content: "\f197"; }

.fa-speakap:before {
  content: "\f3f3"; }

.fa-speaker-deck:before {
  content: "\f83c"; }

.fa-spell-check:before {
  content: "\f891"; }

.fa-spider:before {
  content: "\f717"; }

.fa-spinner:before {
  content: "\f110"; }

.fa-splotch:before {
  content: "\f5bc"; }

.fa-spotify:before {
  content: "\f1bc"; }

.fa-spray-can:before {
  content: "\f5bd"; }

.fa-square:before {
  content: "\f0c8"; }

.fa-square-full:before {
  content: "\f45c"; }

.fa-square-root-alt:before {
  content: "\f698"; }

.fa-squarespace:before {
  content: "\f5be"; }

.fa-stack-exchange:before {
  content: "\f18d"; }

.fa-stack-overflow:before {
  content: "\f16c"; }

.fa-stackpath:before {
  content: "\f842"; }

.fa-stamp:before {
  content: "\f5bf"; }

.fa-star:before {
  content: "\f005"; }

.fa-star-and-crescent:before {
  content: "\f699"; }

.fa-star-half:before {
  content: "\f089"; }

.fa-star-half-alt:before {
  content: "\f5c0"; }

.fa-star-of-david:before {
  content: "\f69a"; }

.fa-star-of-life:before {
  content: "\f621"; }

.fa-staylinked:before {
  content: "\f3f5"; }

.fa-steam:before {
  content: "\f1b6"; }

.fa-steam-square:before {
  content: "\f1b7"; }

.fa-steam-symbol:before {
  content: "\f3f6"; }

.fa-step-backward:before {
  content: "\f048"; }

.fa-step-forward:before {
  content: "\f051"; }

.fa-stethoscope:before {
  content: "\f0f1"; }

.fa-sticker-mule:before {
  content: "\f3f7"; }

.fa-sticky-note:before {
  content: "\f249"; }

.fa-stop:before {
  content: "\f04d"; }

.fa-stop-circle:before {
  content: "\f28d"; }

.fa-stopwatch:before {
  content: "\f2f2"; }

.fa-stopwatch-20:before {
  content: "\e06f"; }

.fa-store:before {
  content: "\f54e"; }

.fa-store-alt:before {
  content: "\f54f"; }

.fa-store-alt-slash:before {
  content: "\e070"; }

.fa-store-slash:before {
  content: "\e071"; }

.fa-strava:before {
  content: "\f428"; }

.fa-stream:before {
  content: "\f550"; }

.fa-street-view:before {
  content: "\f21d"; }

.fa-strikethrough:before {
  content: "\f0cc"; }

.fa-stripe:before {
  content: "\f429"; }

.fa-stripe-s:before {
  content: "\f42a"; }

.fa-stroopwafel:before {
  content: "\f551"; }

.fa-studiovinari:before {
  content: "\f3f8"; }

.fa-stumbleupon:before {
  content: "\f1a4"; }

.fa-stumbleupon-circle:before {
  content: "\f1a3"; }

.fa-subscript:before {
  content: "\f12c"; }

.fa-subway:before {
  content: "\f239"; }

.fa-suitcase:before {
  content: "\f0f2"; }

.fa-suitcase-rolling:before {
  content: "\f5c1"; }

.fa-sun:before {
  content: "\f185"; }

.fa-superpowers:before {
  content: "\f2dd"; }

.fa-superscript:before {
  content: "\f12b"; }

.fa-supple:before {
  content: "\f3f9"; }

.fa-surprise:before {
  content: "\f5c2"; }

.fa-suse:before {
  content: "\f7d6"; }

.fa-swatchbook:before {
  content: "\f5c3"; }

.fa-swift:before {
  content: "\f8e1"; }

.fa-swimmer:before {
  content: "\f5c4"; }

.fa-swimming-pool:before {
  content: "\f5c5"; }

.fa-symfony:before {
  content: "\f83d"; }

.fa-synagogue:before {
  content: "\f69b"; }

.fa-sync:before {
  content: "\f021"; }

.fa-sync-alt:before {
  content: "\f2f1"; }

.fa-syringe:before {
  content: "\f48e"; }

.fa-table:before {
  content: "\f0ce"; }

.fa-table-tennis:before {
  content: "\f45d"; }

.fa-tablet:before {
  content: "\f10a"; }

.fa-tablet-alt:before {
  content: "\f3fa"; }

.fa-tablets:before {
  content: "\f490"; }

.fa-tachometer-alt:before {
  content: "\f3fd"; }

.fa-tag:before {
  content: "\f02b"; }

.fa-tags:before {
  content: "\f02c"; }

.fa-tape:before {
  content: "\f4db"; }

.fa-tasks:before {
  content: "\f0ae"; }

.fa-taxi:before {
  content: "\f1ba"; }

.fa-teamspeak:before {
  content: "\f4f9"; }

.fa-teeth:before {
  content: "\f62e"; }

.fa-teeth-open:before {
  content: "\f62f"; }

.fa-telegram:before {
  content: "\f2c6"; }

.fa-telegram-plane:before {
  content: "\f3fe"; }

.fa-temperature-high:before {
  content: "\f769"; }

.fa-temperature-low:before {
  content: "\f76b"; }

.fa-tencent-weibo:before {
  content: "\f1d5"; }

.fa-tenge:before {
  content: "\f7d7"; }

.fa-terminal:before {
  content: "\f120"; }

.fa-text-height:before {
  content: "\f034"; }

.fa-text-width:before {
  content: "\f035"; }

.fa-th:before {
  content: "\f00a"; }

.fa-th-large:before {
  content: "\f009"; }

.fa-th-list:before {
  content: "\f00b"; }

.fa-the-red-yeti:before {
  content: "\f69d"; }

.fa-theater-masks:before {
  content: "\f630"; }

.fa-themeco:before {
  content: "\f5c6"; }

.fa-themeisle:before {
  content: "\f2b2"; }

.fa-thermometer:before {
  content: "\f491"; }

.fa-thermometer-empty:before {
  content: "\f2cb"; }

.fa-thermometer-full:before {
  content: "\f2c7"; }

.fa-thermometer-half:before {
  content: "\f2c9"; }

.fa-thermometer-quarter:before {
  content: "\f2ca"; }

.fa-thermometer-three-quarters:before {
  content: "\f2c8"; }

.fa-think-peaks:before {
  content: "\f731"; }

.fa-thumbs-down:before {
  content: "\f165"; }

.fa-thumbs-up:before {
  content: "\f164"; }

.fa-thumbtack:before {
  content: "\f08d"; }

.fa-ticket-alt:before {
  content: "\f3ff"; }

.fa-tiktok:before {
  content: "\e07b"; }

.fa-times:before {
  content: "\f00d"; }

.fa-times-circle:before {
  content: "\f057"; }

.fa-tint:before {
  content: "\f043"; }

.fa-tint-slash:before {
  content: "\f5c7"; }

.fa-tired:before {
  content: "\f5c8"; }

.fa-toggle-off:before {
  content: "\f204"; }

.fa-toggle-on:before {
  content: "\f205"; }

.fa-toilet:before {
  content: "\f7d8"; }

.fa-toilet-paper:before {
  content: "\f71e"; }

.fa-toilet-paper-slash:before {
  content: "\e072"; }

.fa-toolbox:before {
  content: "\f552"; }

.fa-tools:before {
  content: "\f7d9"; }

.fa-tooth:before {
  content: "\f5c9"; }

.fa-torah:before {
  content: "\f6a0"; }

.fa-torii-gate:before {
  content: "\f6a1"; }

.fa-tractor:before {
  content: "\f722"; }

.fa-trade-federation:before {
  content: "\f513"; }

.fa-trademark:before {
  content: "\f25c"; }

.fa-traffic-light:before {
  content: "\f637"; }

.fa-trailer:before {
  content: "\e041"; }

.fa-train:before {
  content: "\f238"; }

.fa-tram:before {
  content: "\f7da"; }

.fa-transgender:before {
  content: "\f224"; }

.fa-transgender-alt:before {
  content: "\f225"; }

.fa-trash:before {
  content: "\f1f8"; }

.fa-trash-alt:before {
  content: "\f2ed"; }

.fa-trash-restore:before {
  content: "\f829"; }

.fa-trash-restore-alt:before {
  content: "\f82a"; }

.fa-tree:before {
  content: "\f1bb"; }

.fa-trello:before {
  content: "\f181"; }

.fa-tripadvisor:before {
  content: "\f262"; }

.fa-trophy:before {
  content: "\f091"; }

.fa-truck:before {
  content: "\f0d1"; }

.fa-truck-loading:before {
  content: "\f4de"; }

.fa-truck-monster:before {
  content: "\f63b"; }

.fa-truck-moving:before {
  content: "\f4df"; }

.fa-truck-pickup:before {
  content: "\f63c"; }

.fa-tshirt:before {
  content: "\f553"; }

.fa-tty:before {
  content: "\f1e4"; }

.fa-tumblr:before {
  content: "\f173"; }

.fa-tumblr-square:before {
  content: "\f174"; }

.fa-tv:before {
  content: "\f26c"; }

.fa-twitch:before {
  content: "\f1e8"; }

.fa-twitter:before {
  content: "\f099"; }

.fa-twitter-square:before {
  content: "\f081"; }

.fa-typo3:before {
  content: "\f42b"; }

.fa-uber:before {
  content: "\f402"; }

.fa-ubuntu:before {
  content: "\f7df"; }

.fa-uikit:before {
  content: "\f403"; }

.fa-umbraco:before {
  content: "\f8e8"; }

.fa-umbrella:before {
  content: "\f0e9"; }

.fa-umbrella-beach:before {
  content: "\f5ca"; }

.fa-uncharted:before {
  content: "\e084"; }

.fa-underline:before {
  content: "\f0cd"; }

.fa-undo:before {
  content: "\f0e2"; }

.fa-undo-alt:before {
  content: "\f2ea"; }

.fa-uniregistry:before {
  content: "\f404"; }

.fa-unity:before {
  content: "\e049"; }

.fa-universal-access:before {
  content: "\f29a"; }

.fa-university:before {
  content: "\f19c"; }

.fa-unlink:before {
  content: "\f127"; }

.fa-unlock:before {
  content: "\f09c"; }

.fa-unlock-alt:before {
  content: "\f13e"; }

.fa-unsplash:before {
  content: "\e07c"; }

.fa-untappd:before {
  content: "\f405"; }

.fa-upload:before {
  content: "\f093"; }

.fa-ups:before {
  content: "\f7e0"; }

.fa-usb:before {
  content: "\f287"; }

.fa-user:before {
  content: "\f007"; }

.fa-user-alt:before {
  content: "\f406"; }

.fa-user-alt-slash:before {
  content: "\f4fa"; }

.fa-user-astronaut:before {
  content: "\f4fb"; }

.fa-user-check:before {
  content: "\f4fc"; }

.fa-user-circle:before {
  content: "\f2bd"; }

.fa-user-clock:before {
  content: "\f4fd"; }

.fa-user-cog:before {
  content: "\f4fe"; }

.fa-user-edit:before {
  content: "\f4ff"; }

.fa-user-friends:before {
  content: "\f500"; }

.fa-user-graduate:before {
  content: "\f501"; }

.fa-user-injured:before {
  content: "\f728"; }

.fa-user-lock:before {
  content: "\f502"; }

.fa-user-md:before {
  content: "\f0f0"; }

.fa-user-minus:before {
  content: "\f503"; }

.fa-user-ninja:before {
  content: "\f504"; }

.fa-user-nurse:before {
  content: "\f82f"; }

.fa-user-plus:before {
  content: "\f234"; }

.fa-user-secret:before {
  content: "\f21b"; }

.fa-user-shield:before {
  content: "\f505"; }

.fa-user-slash:before {
  content: "\f506"; }

.fa-user-tag:before {
  content: "\f507"; }

.fa-user-tie:before {
  content: "\f508"; }

.fa-user-times:before {
  content: "\f235"; }

.fa-users:before {
  content: "\f0c0"; }

.fa-users-cog:before {
  content: "\f509"; }

.fa-users-slash:before {
  content: "\e073"; }

.fa-usps:before {
  content: "\f7e1"; }

.fa-ussunnah:before {
  content: "\f407"; }

.fa-utensil-spoon:before {
  content: "\f2e5"; }

.fa-utensils:before {
  content: "\f2e7"; }

.fa-vaadin:before {
  content: "\f408"; }

.fa-vector-square:before {
  content: "\f5cb"; }

.fa-venus:before {
  content: "\f221"; }

.fa-venus-double:before {
  content: "\f226"; }

.fa-venus-mars:before {
  content: "\f228"; }

.fa-vest:before {
  content: "\e085"; }

.fa-vest-patches:before {
  content: "\e086"; }

.fa-viacoin:before {
  content: "\f237"; }

.fa-viadeo:before {
  content: "\f2a9"; }

.fa-viadeo-square:before {
  content: "\f2aa"; }

.fa-vial:before {
  content: "\f492"; }

.fa-vials:before {
  content: "\f493"; }

.fa-viber:before {
  content: "\f409"; }

.fa-video:before {
  content: "\f03d"; }

.fa-video-slash:before {
  content: "\f4e2"; }

.fa-vihara:before {
  content: "\f6a7"; }

.fa-vimeo:before {
  content: "\f40a"; }

.fa-vimeo-square:before {
  content: "\f194"; }

.fa-vimeo-v:before {
  content: "\f27d"; }

.fa-vine:before {
  content: "\f1ca"; }

.fa-virus:before {
  content: "\e074"; }

.fa-virus-slash:before {
  content: "\e075"; }

.fa-viruses:before {
  content: "\e076"; }

.fa-vk:before {
  content: "\f189"; }

.fa-vnv:before {
  content: "\f40b"; }

.fa-voicemail:before {
  content: "\f897"; }

.fa-volleyball-ball:before {
  content: "\f45f"; }

.fa-volume-down:before {
  content: "\f027"; }

.fa-volume-mute:before {
  content: "\f6a9"; }

.fa-volume-off:before {
  content: "\f026"; }

.fa-volume-up:before {
  content: "\f028"; }

.fa-vote-yea:before {
  content: "\f772"; }

.fa-vr-cardboard:before {
  content: "\f729"; }

.fa-vuejs:before {
  content: "\f41f"; }

.fa-walking:before {
  content: "\f554"; }

.fa-wallet:before {
  content: "\f555"; }

.fa-warehouse:before {
  content: "\f494"; }

.fa-watchman-monitoring:before {
  content: "\e087"; }

.fa-water:before {
  content: "\f773"; }

.fa-wave-square:before {
  content: "\f83e"; }

.fa-waze:before {
  content: "\f83f"; }

.fa-weebly:before {
  content: "\f5cc"; }

.fa-weibo:before {
  content: "\f18a"; }

.fa-weight:before {
  content: "\f496"; }

.fa-weight-hanging:before {
  content: "\f5cd"; }

.fa-weixin:before {
  content: "\f1d7"; }

.fa-whatsapp:before {
  content: "\f232"; }

.fa-whatsapp-square:before {
  content: "\f40c"; }

.fa-wheelchair:before {
  content: "\f193"; }

.fa-whmcs:before {
  content: "\f40d"; }

.fa-wifi:before {
  content: "\f1eb"; }

.fa-wikipedia-w:before {
  content: "\f266"; }

.fa-wind:before {
  content: "\f72e"; }

.fa-window-close:before {
  content: "\f410"; }

.fa-window-maximize:before {
  content: "\f2d0"; }

.fa-window-minimize:before {
  content: "\f2d1"; }

.fa-window-restore:before {
  content: "\f2d2"; }

.fa-windows:before {
  content: "\f17a"; }

.fa-wine-bottle:before {
  content: "\f72f"; }

.fa-wine-glass:before {
  content: "\f4e3"; }

.fa-wine-glass-alt:before {
  content: "\f5ce"; }

.fa-wix:before {
  content: "\f5cf"; }

.fa-wizards-of-the-coast:before {
  content: "\f730"; }

.fa-wodu:before {
  content: "\e088"; }

.fa-wolf-pack-battalion:before {
  content: "\f514"; }

.fa-won-sign:before {
  content: "\f159"; }

.fa-wordpress:before {
  content: "\f19a"; }

.fa-wordpress-simple:before {
  content: "\f411"; }

.fa-wpbeginner:before {
  content: "\f297"; }

.fa-wpexplorer:before {
  content: "\f2de"; }

.fa-wpforms:before {
  content: "\f298"; }

.fa-wpressr:before {
  content: "\f3e4"; }

.fa-wrench:before {
  content: "\f0ad"; }

.fa-x-ray:before {
  content: "\f497"; }

.fa-xbox:before {
  content: "\f412"; }

.fa-xing:before {
  content: "\f168"; }

.fa-xing-square:before {
  content: "\f169"; }

.fa-y-combinator:before {
  content: "\f23b"; }

.fa-yahoo:before {
  content: "\f19e"; }

.fa-yammer:before {
  content: "\f840"; }

.fa-yandex:before {
  content: "\f413"; }

.fa-yandex-international:before {
  content: "\f414"; }

.fa-yarn:before {
  content: "\f7e3"; }

.fa-yelp:before {
  content: "\f1e9"; }

.fa-yen-sign:before {
  content: "\f157"; }

.fa-yin-yang:before {
  content: "\f6ad"; }

.fa-yoast:before {
  content: "\f2b1"; }

.fa-youtube:before {
  content: "\f167"; }

.fa-youtube-square:before {
  content: "\f431"; }

.fa-zhihu:before {
  content: "\f63f"; }

.sr-only {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px; }

.sr-only-focusable:active, .sr-only-focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto; }
@font-face {
  font-family: 'Font Awesome 5 Brands';
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url("../webfonts/fa-brands-400.eot");
  src: url("../webfonts/fa-brands-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.woff") format("woff"), url("../webfonts/fa-brands-400.ttf") format("truetype"), url("../webfonts/fa-brands-400.svg#fontawesome") format("svg"); }

.fab {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }
@font-face {
  font-family: 'Font Awesome 5 Free';
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url("../webfonts/fa-regular-400.eot");
  src: url("../webfonts/fa-regular-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.woff") format("woff"), url("../webfonts/fa-regular-400.ttf") format("truetype"), url("../webfonts/fa-regular-400.svg#fontawesome") format("svg"); }

.far {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }
@font-face {
  font-family: 'Font Awesome 5 Free';
  font-style: normal;
  font-weight: 900;
  font-display: block;
  src: url("../webfonts/fa-solid-900.eot");
  src: url("../webfonts/fa-solid-900.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.woff") format("woff"), url("../webfonts/fa-solid-900.ttf") format("truetype"), url("../webfonts/fa-solid-900.svg#fontawesome") format("svg"); }

.fa,
.fas {
  font-family: 'Font Awesome 5 Free';
  font-weight: 900; }
assets/lib/font-awesome/css/solid.css000064400000001327151327220410013634 0ustar00/*!
 * Font Awesome Free 5.15.3 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 */
@font-face {
  font-family: 'Font Awesome 5 Free';
  font-style: normal;
  font-weight: 900;
  font-display: block;
  src: url("../webfonts/fa-solid-900.eot");
  src: url("../webfonts/fa-solid-900.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.woff") format("woff"), url("../webfonts/fa-solid-900.ttf") format("truetype"), url("../webfonts/fa-solid-900.svg#fontawesome") format("svg"); }

.fa,
.fas {
  font-family: 'Font Awesome 5 Free';
  font-weight: 900; }
assets/lib/font-awesome/js/v4-shims.js000064400000042063151327220410013646 0ustar00/*!
 * 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 (global, factory) {
  typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
  typeof define === 'function' && define.amd ? define(factory) :
  (global['fontawesome-free-shims'] = factory());
}(this, (function () { 'use strict';

  var _WINDOW = {};
  var _DOCUMENT = {};

  try {
    if (typeof window !== 'undefined') _WINDOW = window;
    if (typeof document !== 'undefined') _DOCUMENT = document;
  } catch (e) {}

  var _ref = _WINDOW.navigator || {},
      _ref$userAgent = _ref.userAgent,
      userAgent = _ref$userAgent === void 0 ? '' : _ref$userAgent;

  var WINDOW = _WINDOW;
  var DOCUMENT = _DOCUMENT;
  var IS_BROWSER = !!WINDOW.document;
  var IS_DOM = !!DOCUMENT.documentElement && !!DOCUMENT.head && typeof DOCUMENT.addEventListener === 'function' && typeof DOCUMENT.createElement === 'function';
  var IS_IE = ~userAgent.indexOf('MSIE') || ~userAgent.indexOf('Trident/');

  var NAMESPACE_IDENTIFIER = '___FONT_AWESOME___';
  var PRODUCTION = function () {
    try {
      return process.env.NODE_ENV === 'production';
    } catch (e) {
      return false;
    }
  }();

  function bunker(fn) {
    try {
      fn();
    } catch (e) {
      if (!PRODUCTION) {
        throw e;
      }
    }
  }

  var w = WINDOW || {};
  if (!w[NAMESPACE_IDENTIFIER]) w[NAMESPACE_IDENTIFIER] = {};
  if (!w[NAMESPACE_IDENTIFIER].styles) w[NAMESPACE_IDENTIFIER].styles = {};
  if (!w[NAMESPACE_IDENTIFIER].hooks) w[NAMESPACE_IDENTIFIER].hooks = {};
  if (!w[NAMESPACE_IDENTIFIER].shims) w[NAMESPACE_IDENTIFIER].shims = [];
  var namespace = w[NAMESPACE_IDENTIFIER];

  var shims = [["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"]];
  bunker(function () {
    if (typeof namespace.hooks.addShims === 'function') {
      namespace.hooks.addShims(shims);
    } else {
      var _namespace$shims;

      (_namespace$shims = namespace.shims).push.apply(_namespace$shims, shims);
    }
  });

  return shims;

})));
assets/lib/font-awesome/js/brands.js000064400000014307151327220410013445 0ustar00{
  "icons": [
	"500px",
	"accessible-icon",
	"accusoft",
	"acquisitions-incorporated",
	"adn",
	"adversal",
	"affiliatetheme",
	"airbnb",
	"algolia",
	"alipay",
	"amazon",
	"amazon-pay",
	"amilia",
	"android",
	"angellist",
	"angrycreative",
	"angular",
	"app-store",
	"app-store-ios",
	"apper",
	"apple",
	"apple-pay",
	"artstation",
	"asymmetrik",
	"atlassian",
	"audible",
	"autoprefixer",
	"avianex",
	"aviato",
	"aws",
	"bandcamp",
	"battle-net",
	"behance",
	"behance-square",
	"bimobject",
	"bitbucket",
	"bitcoin",
	"bity",
	"black-tie",
	"blackberry",
	"blogger",
	"blogger-b",
	"bluetooth",
	"bluetooth-b",
	"bootstrap",
	"btc",
	"buffer",
	"buromobelexperte",
	"buy-n-large",
	"buysellads",
	"canadian-maple-leaf",
	"cc-amazon-pay",
	"cc-amex",
	"cc-apple-pay",
	"cc-diners-club",
	"cc-discover",
	"cc-jcb",
	"cc-mastercard",
	"cc-paypal",
	"cc-stripe",
	"cc-visa",
	"centercode",
	"centos",
	"chrome",
	"chromecast",
	"cloudflare",
	"cloudscale",
	"cloudsmith",
	"cloudversify",
	"codepen",
	"codiepie",
	"confluence",
	"connectdevelop",
	"contao",
	"cotton-bureau",
	"cpanel",
	"creative-commons",
	"creative-commons-by",
	"creative-commons-nc",
	"creative-commons-nc-eu",
	"creative-commons-nc-jp",
	"creative-commons-nd",
	"creative-commons-pd",
	"creative-commons-pd-alt",
	"creative-commons-remix",
	"creative-commons-sa",
	"creative-commons-sampling",
	"creative-commons-sampling-plus",
	"creative-commons-share",
	"creative-commons-zero",
	"critical-role",
	"css3",
	"css3-alt",
	"cuttlefish",
	"d-and-d",
	"d-and-d-beyond",
	"dailymotion",
	"dashcube",
	"deezer",
	"delicious",
	"deploydog",
	"deskpro",
	"dev",
	"deviantart",
	"dhl",
	"diaspora",
	"digg",
	"digital-ocean",
	"discord",
	"discourse",
	"dochub",
	"docker",
	"draft2digital",
	"dribbble",
	"dribbble-square",
	"dropbox",
	"drupal",
	"dyalog",
	"earlybirds",
	"ebay",
	"edge",
	"edge-legacy",
	"elementor",
	"ello",
	"ember",
	"empire",
	"envira",
	"erlang",
	"ethereum",
	"etsy",
	"evernote",
	"expeditedssl",
	"facebook",
	"facebook-f",
	"facebook-messenger",
	"facebook-square",
	"fantasy-flight-games",
	"fedex",
	"fedora",
	"figma",
	"firefox",
	"firefox-browser",
	"first-order",
	"first-order-alt",
	"firstdraft",
	"flickr",
	"flipboard",
	"fly",
	"font-awesome",
	"font-awesome-alt",
	"font-awesome-flag",
	"fonticons",
	"fonticons-fi",
	"fort-awesome",
	"fort-awesome-alt",
	"forumbee",
	"foursquare",
	"free-code-camp",
	"freebsd",
	"fulcrum",
	"galactic-republic",
	"galactic-senate",
	"get-pocket",
	"gg",
	"gg-circle",
	"git",
	"git-alt",
	"git-square",
	"github",
	"github-alt",
	"github-square",
	"gitkraken",
	"gitlab",
	"gitter",
	"glide",
	"glide-g",
	"gofore",
	"goodreads",
	"goodreads-g",
	"google",
	"google-drive",
	"google-pay",
	"google-play",
	"google-plus",
	"google-plus-g",
	"google-plus-square",
	"google-wallet",
	"gratipay",
	"grav",
	"gripfire",
	"grunt",
	"guilded",
	"gulp",
	"hacker-news",
	"hacker-news-square",
	"hackerrank",
	"hips",
	"hire-a-helper",
	"hive",
	"hooli",
	"hornbill",
	"hotjar",
	"houzz",
	"html5",
	"hubspot",
	"ideal",
	"imdb",
	"innosoft",
	"instagram",
	"instalod",
	"intercom",
	"internet-explorer",
	"invision",
	"ioxhost",
	"itch-io",
	"itunes",
	"itunes-note",
	"java",
	"jedi-order",
	"jenkins",
	"jira",
	"joget",
	"joomla",
	"js",
	"js-square",
	"jsfiddle",
	"kaggle",
	"keybase",
	"keycdn",
	"kickstarter",
	"kickstarter-k",
	"korvue",
	"laravel",
	"lastfm",
	"lastfm-square",
	"leanpub",
	"less",
	"line",
	"linkedin",
	"linkedin-in",
	"linode",
	"linux",
	"lyft",
	"magento",
	"mailchimp",
	"mandalorian",
	"markdown",
	"mastodon",
	"maxcdn",
	"mdb",
	"medapps",
	"medium",
	"medium-m",
	"medrt",
	"meetup",
	"megaport",
	"mendeley",
	"microblog",
	"microsoft",
	"mix",
	"mixcloud",
	"mizuni",
	"modx",
	"monero",
	"napster",
	"neos",
	"nimblr",
	"node",
	"node-js",
	"npm",
	"ns8",
	"nutritionix",
	"octopus-deploy",
	"odnoklassniki",
	"odnoklassniki-square",
	"old-republic",
	"opencart",
	"openid",
	"opera",
	"optin-monster",
	"orcid",
	"osi",
	"page4",
	"pagelines",
	"palfed",
	"patreon",
	"paypal",
	"penny-arcade",
	"perbyte",
	"periscope",
	"phabricator",
	"phoenix-framework",
	"phoenix-squadron",
	"php",
	"pied-piper",
	"pied-piper-alt",
	"pied-piper-hat",
	"pied-piper-pp",
	"pied-piper-square",
	"pinterest",
	"pinterest-p",
	"pinterest-square",
	"playstation",
	"product-hunt",
	"pushed",
	"python",
	"qq",
	"quinscape",
	"quora",
	"r-project",
	"raspberry-pi",
	"ravelry",
	"react",
	"reacteurope",
	"readme",
	"rebel",
	"red-river",
	"reddit",
	"reddit-alien",
	"reddit-square",
	"redhat",
	"renren",
	"replyd",
	"researchgate",
	"resolving",
	"rev",
	"rocketchat",
	"rockrms",
	"rust",
	"safari",
	"salesforce",
	"sass",
	"schlix",
	"scribd",
	"searchengin",
	"sellcast",
	"sellsy",
	"servicestack",
	"shirtsinbulk",
	"shopware",
	"simplybuilt",
	"sistrix",
	"sith",
	"sketch",
	"skyatlas",
	"skype",
	"slack",
	"slack-hash",
	"slideshare",
	"snapchat",
	"snapchat-ghost",
	"snapchat-square",
	"soundcloud",
	"sourcetree",
	"speakap",
	"speaker-deck",
	"spotify",
	"squarespace",
	"stack-exchange",
	"stack-overflow",
	"stackpath",
	"staylinked",
	"steam",
	"steam-square",
	"steam-symbol",
	"sticker-mule",
	"strava",
	"stripe",
	"stripe-s",
	"studiovinari",
	"stumbleupon",
	"stumbleupon-circle",
	"superpowers",
	"supple",
	"suse",
	"swift",
	"symfony",
	"teamspeak",
	"telegram",
	"telegram-plane",
	"tencent-weibo",
	"the-red-yeti",
	"themeco",
	"themeisle",
	"think-peaks",
	"tiktok",
	"trade-federation",
	"trello",
	"tripadvisor",
	"tumblr",
	"tumblr-square",
	"twitch",
	"twitter",
	"twitter-square",
	"typo3",
	"uber",
	"ubuntu",
	"uikit",
	"umbraco",
	"uncharted",
	"uniregistry",
	"unity",
	"unsplash",
	"untappd",
	"ups",
	"usb",
	"usps",
	"ussunnah",
	"vaadin",
	"viacoin",
	"viadeo",
	"viadeo-square",
	"viber",
	"vimeo",
	"vimeo-square",
	"vimeo-v",
	"vine",
	"vk",
	"vnv",
	"vuejs",
	"watchman-monitoring",
	"waze",
	"weebly",
	"weibo",
	"weixin",
	"whatsapp",
	"whatsapp-square",
	"whmcs",
	"wikipedia-w",
	"windows",
	"wix",
	"wizards-of-the-coast",
	"wodu",
	"wolf-pack-battalion",
	"wordpress",
	"wordpress-simple",
	"wpbeginner",
	"wpexplorer",
	"wpforms",
	"wpressr",
	"xbox",
	"xing",
	"xing-square",
	"y-combinator",
	"yahoo",
	"yammer",
	"yandex",
	"yandex-international",
	"yarn",
	"yelp",
	"yoast",
	"youtube",
	"youtube-square",
	"zhihu"
	]
}assets/lib/font-awesome/js/v4-shims.min.js000064400000035317151327220410014434 0ustar00/*!
 * 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)
 */
var l,a;l=this,a=function(){"use strict";var l={},a={};try{"undefined"!=typeof window&&(l=window),"undefined"!=typeof document&&(a=document)}catch(l){}var e=(l.navigator||{}).userAgent,r=void 0===e?"":e,n=l,o=a,u=(n.document,!!o.documentElement&&!!o.head&&"function"==typeof o.addEventListener&&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&&"undefined"!=typeof module?module.exports=a():"function"==typeof define&&define.amd?define(a):l["fontawesome-free-shims"]=a();assets/lib/font-awesome/js/solid.js000064400000034414151327220410013307 0ustar00{
  "icons": [
	"ad",
	"address-book",
	"address-card",
	"adjust",
	"air-freshener",
	"align-center",
	"align-justify",
	"align-left",
	"align-right",
	"allergies",
	"ambulance",
	"american-sign-language-interpreting",
	"anchor",
	"angle-double-down",
	"angle-double-left",
	"angle-double-right",
	"angle-double-up",
	"angle-down",
	"angle-left",
	"angle-right",
	"angle-up",
	"angry",
	"ankh",
	"apple-alt",
	"archive",
	"archway",
	"arrow-alt-circle-down",
	"arrow-alt-circle-left",
	"arrow-alt-circle-right",
	"arrow-alt-circle-up",
	"arrow-circle-down",
	"arrow-circle-left",
	"arrow-circle-right",
	"arrow-circle-up",
	"arrow-down",
	"arrow-left",
	"arrow-right",
	"arrow-up",
	"arrows-alt",
	"arrows-alt-h",
	"arrows-alt-v",
	"assistive-listening-systems",
	"asterisk",
	"at",
	"atlas",
	"atom",
	"audio-description",
	"award",
	"baby",
	"baby-carriage",
	"backspace",
	"backward",
	"bacon",
	"bacteria",
	"bacterium",
	"bahai",
	"balance-scale",
	"balance-scale-left",
	"balance-scale-right",
	"ban",
	"band-aid",
	"barcode",
	"bars",
	"baseball-ball",
	"basketball-ball",
	"bath",
	"battery-empty",
	"battery-full",
	"battery-half",
	"battery-quarter",
	"battery-three-quarters",
	"bed",
	"beer",
	"bell",
	"bell-slash",
	"bezier-curve",
	"bible",
	"bicycle",
	"biking",
	"binoculars",
	"biohazard",
	"birthday-cake",
	"blender",
	"blender-phone",
	"blind",
	"blog",
	"bold",
	"bolt",
	"bomb",
	"bone",
	"bong",
	"book",
	"book-dead",
	"book-medical",
	"book-open",
	"book-reader",
	"bookmark",
	"border-all",
	"border-none",
	"border-style",
	"bowling-ball",
	"box",
	"box-open",
	"box-tissue",
	"boxes",
	"braille",
	"brain",
	"bread-slice",
	"briefcase",
	"briefcase-medical",
	"broadcast-tower",
	"broom",
	"brush",
	"bug",
	"building",
	"bullhorn",
	"bullseye",
	"burn",
	"bus",
	"bus-alt",
	"business-time",
	"calculator",
	"calendar",
	"calendar-alt",
	"calendar-check",
	"calendar-day",
	"calendar-minus",
	"calendar-plus",
	"calendar-times",
	"calendar-week",
	"camera",
	"camera-retro",
	"campground",
	"candy-cane",
	"cannabis",
	"capsules",
	"car",
	"car-alt",
	"car-battery",
	"car-crash",
	"car-side",
	"caravan",
	"caret-down",
	"caret-left",
	"caret-right",
	"caret-square-down",
	"caret-square-left",
	"caret-square-right",
	"caret-square-up",
	"caret-up",
	"carrot",
	"cart-arrow-down",
	"cart-plus",
	"cash-register",
	"cat",
	"certificate",
	"chair",
	"chalkboard",
	"chalkboard-teacher",
	"charging-station",
	"chart-area",
	"chart-bar",
	"chart-line",
	"chart-pie",
	"check",
	"check-circle",
	"check-double",
	"check-square",
	"cheese",
	"chess",
	"chess-bishop",
	"chess-board",
	"chess-king",
	"chess-knight",
	"chess-pawn",
	"chess-queen",
	"chess-rook",
	"chevron-circle-down",
	"chevron-circle-left",
	"chevron-circle-right",
	"chevron-circle-up",
	"chevron-down",
	"chevron-left",
	"chevron-right",
	"chevron-up",
	"child",
	"church",
	"circle",
	"circle-notch",
	"city",
	"clinic-medical",
	"clipboard",
	"clipboard-check",
	"clipboard-list",
	"clock",
	"clone",
	"closed-captioning",
	"cloud",
	"cloud-download-alt",
	"cloud-meatball",
	"cloud-moon",
	"cloud-moon-rain",
	"cloud-rain",
	"cloud-showers-heavy",
	"cloud-sun",
	"cloud-sun-rain",
	"cloud-upload-alt",
	"cocktail",
	"code",
	"code-branch",
	"coffee",
	"cog",
	"cogs",
	"coins",
	"columns",
	"comment",
	"comment-alt",
	"comment-dollar",
	"comment-dots",
	"comment-medical",
	"comment-slash",
	"comments",
	"comments-dollar",
	"compact-disc",
	"compass",
	"compress",
	"compress-alt",
	"compress-arrows-alt",
	"concierge-bell",
	"cookie",
	"cookie-bite",
	"copy",
	"copyright",
	"couch",
	"credit-card",
	"crop",
	"crop-alt",
	"cross",
	"crosshairs",
	"crow",
	"crown",
	"crutch",
	"cube",
	"cubes",
	"cut",
	"database",
	"deaf",
	"democrat",
	"desktop",
	"dharmachakra",
	"diagnoses",
	"dice",
	"dice-d20",
	"dice-d6",
	"dice-five",
	"dice-four",
	"dice-one",
	"dice-six",
	"dice-three",
	"dice-two",
	"digital-tachograph",
	"directions",
	"divide",
	"dizzy",
	"dna",
	"dog",
	"dollar-sign",
	"dolly",
	"dolly-flatbed",
	"donate",
	"door-closed",
	"door-open",
	"dot-circle",
	"dove",
	"download",
	"drafting-compass",
	"dragon",
	"draw-polygon",
	"drum",
	"drum-steelpan",
	"drumstick-bite",
	"dumbbell",
	"dumpster",
	"dumpster-fire",
	"dungeon",
	"edit",
	"egg",
	"eject",
	"ellipsis-h",
	"ellipsis-v",
	"envelope",
	"envelope-open",
	"envelope-open-text",
	"envelope-square",
	"equals",
	"eraser",
	"ethernet",
	"euro-sign",
	"exchange-alt",
	"exclamation",
	"exclamation-circle",
	"exclamation-triangle",
	"expand",
	"expand-alt",
	"expand-arrows-alt",
	"external-link-alt",
	"external-link-square-alt",
	"eye",
	"eye-dropper",
	"eye-slash",
	"fan",
	"fast-backward",
	"fast-forward",
	"fax",
	"feather",
	"feather-alt",
	"female",
	"fighter-jet",
	"file",
	"file-alt",
	"file-archive",
	"file-audio",
	"file-code",
	"file-contract",
	"file-csv",
	"file-download",
	"file-excel",
	"file-export",
	"file-image",
	"file-import",
	"file-invoice",
	"file-invoice-dollar",
	"file-medical",
	"file-medical-alt",
	"file-pdf",
	"file-powerpoint",
	"file-prescription",
	"file-signature",
	"file-upload",
	"file-video",
	"file-word",
	"fill",
	"fill-drip",
	"film",
	"filter",
	"fingerprint",
	"fire",
	"fire-alt",
	"fire-extinguisher",
	"first-aid",
	"fish",
	"fist-raised",
	"flag",
	"flag-checkered",
	"flag-usa",
	"flask",
	"flushed",
	"folder",
	"folder-minus",
	"folder-open",
	"folder-plus",
	"font",
	"football-ball",
	"forward",
	"frog",
	"frown",
	"frown-open",
	"funnel-dollar",
	"futbol",
	"gamepad",
	"gas-pump",
	"gavel",
	"gem",
	"genderless",
	"ghost",
	"gift",
	"gifts",
	"glass-cheers",
	"glass-martini",
	"glass-martini-alt",
	"glass-whiskey",
	"glasses",
	"globe",
	"globe-africa",
	"globe-americas",
	"globe-asia",
	"globe-europe",
	"golf-ball",
	"gopuram",
	"graduation-cap",
	"greater-than",
	"greater-than-equal",
	"grimace",
	"grin",
	"grin-alt",
	"grin-beam",
	"grin-beam-sweat",
	"grin-hearts",
	"grin-squint",
	"grin-squint-tears",
	"grin-stars",
	"grin-tears",
	"grin-tongue",
	"grin-tongue-squint",
	"grin-tongue-wink",
	"grin-wink",
	"grip-horizontal",
	"grip-lines",
	"grip-lines-vertical",
	"grip-vertical",
	"guitar",
	"h-square",
	"hamburger",
	"hammer",
	"hamsa",
	"hand-holding",
	"hand-holding-heart",
	"hand-holding-medical",
	"hand-holding-usd",
	"hand-lizard",
	"hand-middle-finger",
	"hand-paper",
	"hand-peace",
	"hand-point-down",
	"hand-point-left",
	"hand-point-right",
	"hand-point-up",
	"hand-pointer",
	"hand-rock",
	"hand-scissors",
	"hand-sparkles",
	"hand-spock",
	"hands",
	"hands-helping",
	"hands-wash",
	"handshake",
	"handshake-alt-slash",
	"handshake-slash",
	"hanukiah",
	"hard-hat",
	"hashtag",
	"hat-cowboy",
	"hat-cowboy-side",
	"hat-wizard",
	"hdd",
	"head-side-cough",
	"head-side-cough-slash",
	"head-side-mask",
	"head-side-virus",
	"heading",
	"headphones",
	"headphones-alt",
	"headset",
	"heart",
	"heart-broken",
	"heartbeat",
	"helicopter",
	"highlighter",
	"hiking",
	"hippo",
	"history",
	"hockey-puck",
	"holly-berry",
	"home",
	"horse",
	"horse-head",
	"hospital",
	"hospital-alt",
	"hospital-symbol",
	"hot-tub",
	"hotdog",
	"hotel",
	"hourglass",
	"hourglass-end",
	"hourglass-half",
	"hourglass-start",
	"house-damage",
	"house-user",
	"hryvnia",
	"i-cursor",
	"ice-cream",
	"icicles",
	"icons",
	"id-badge",
	"id-card",
	"id-card-alt",
	"igloo",
	"image",
	"images",
	"inbox",
	"indent",
	"industry",
	"infinity",
	"info",
	"info-circle",
	"italic",
	"jedi",
	"joint",
	"journal-whills",
	"kaaba",
	"key",
	"keyboard",
	"khanda",
	"kiss",
	"kiss-beam",
	"kiss-wink-heart",
	"kiwi-bird",
	"landmark",
	"language",
	"laptop",
	"laptop-code",
	"laptop-house",
	"laptop-medical",
	"laugh",
	"laugh-beam",
	"laugh-squint",
	"laugh-wink",
	"layer-group",
	"leaf",
	"lemon",
	"less-than",
	"less-than-equal",
	"level-down-alt",
	"level-up-alt",
	"life-ring",
	"lightbulb",
	"link",
	"lira-sign",
	"list",
	"list-alt",
	"list-ol",
	"list-ul",
	"location-arrow",
	"lock",
	"lock-open",
	"long-arrow-alt-down",
	"long-arrow-alt-left",
	"long-arrow-alt-right",
	"long-arrow-alt-up",
	"low-vision",
	"luggage-cart",
	"lungs-virus",
	"magic",
	"magnet",
	"mail-bulk",
	"male",
	"map",
	"map-marked",
	"map-marked-alt",
	"map-marker",
	"map-marker-alt",
	"map-pin",
	"map-signs",
	"marker",
	"mars",
	"mars-double",
	"mars-stroke",
	"mars-stroke-h",
	"mars-stroke-v",
	"mask",
	"medal",
	"medkit",
	"meh",
	"meh-blank",
	"meh-rolling-eyes",
	"memory",
	"menorah",
	"mercury",
	"meteor",
	"microchip",
	"microphone",
	"microphone-alt",
	"microphone-alt-slash",
	"microphone-slash",
	"microscope",
	"minus",
	"minus-circle",
	"minus-square",
	"mitten",
	"mobile",
	"mobile-alt",
	"money-bill",
	"money-bill-alt",
	"money-bill-wave",
	"money-bill-wave-alt",
	"money-check",
	"money-check-alt",
	"monument",
	"moon",
	"mortar-pestle",
	"mosque",
	"motorcycle",
	"mountain",
	"mouse",
	"mouse-pointer",
	"mug-hot",
	"music",
	"network-wired",
	"neuter",
	"newspaper",
	"not-equal",
	"notes-medical",
	"object-group",
	"object-ungroup",
	"oil-can",
	"om",
	"otter",
	"outdent",
	"pager",
	"paint-brush",
	"paint-roller",
	"palette",
	"pallet",
	"paper-plane",
	"paperclip",
	"parachute-box",
	"paragraph",
	"parking",
	"passport",
	"pastafarianism",
	"paste",
	"pause",
	"pause-circle",
	"paw",
	"peace",
	"pen",
	"pen-alt",
	"pen-fancy",
	"pen-nib",
	"pen-square",
	"pencil-alt",
	"pencil-ruler",
	"people-arrows",
	"people-carry",
	"pepper-hot",
	"percent",
	"percentage",
	"person-booth",
	"phone",
	"phone-alt",
	"phone-slash",
	"phone-square",
	"phone-square-alt",
	"phone-volume",
	"photo-video",
	"plane-slash",
	"piggy-bank",
	"pills",
	"pizza-slice",
	"place-of-worship",
	"plane",
	"plane-arrival",
	"plane-departure",
	"play",
	"play-circle",
	"plug",
	"plus",
	"plus-circle",
	"plus-square",
	"podcast",
	"poll",
	"poll-h",
	"poo",
	"poo-storm",
	"poop",
	"portrait",
	"pound-sign",
	"power-off",
	"pray",
	"praying-hands",
	"prescription",
	"prescription-bottle",
	"prescription-bottle-alt",
	"print",
	"procedures",
	"project-diagram",
	"pump-medical",
	"pump-soap",
	"puzzle-piece",
	"qrcode",
	"question",
	"question-circle",
	"quidditch",
	"quote-left",
	"quote-right",
	"quran",
	"radiation",
	"radiation-alt",
	"rainbow",
	"random",
	"receipt",
	"record-vinyl",
	"recycle",
	"redo",
	"redo-alt",
	"registered",
	"remove-format",
	"reply",
	"reply-all",
	"republican",
	"restroom",
	"retweet",
	"ribbon",
	"ring",
	"road",
	"robot",
	"rocket",
	"route",
	"rss",
	"rss-square",
	"ruble-sign",
	"ruler",
	"ruler-combined",
	"ruler-horizontal",
	"ruler-vertical",
	"running",
	"rupee-sign",
	"sad-cry",
	"sad-tear",
	"satellite",
	"satellite-dish",
	"save",
	"school",
	"screwdriver",
	"scroll",
	"sd-card",
	"search",
	"search-dollar",
	"search-location",
	"search-minus",
	"search-plus",
	"seedling",
	"server",
	"shapes",
	"share",
	"share-alt",
	"share-alt-square",
	"share-square",
	"shekel-sign",
	"shield-alt",
	"shield-virus",
	"ship",
	"shipping-fast",
	"shoe-prints",
	"shopping-bag",
	"shopping-basket",
	"shopping-cart",
	"shower",
	"shuttle-van",
	"sign",
	"sign-in-alt",
	"sign-language",
	"sign-out-alt",
	"signal",
	"signature",
	"sim-card",
	"sink",
	"sitemap",
	"skating",
	"skiing",
	"skiing-nordic",
	"skull",
	"skull-crossbones",
	"slash",
	"sleigh",
	"sliders-h",
	"smile",
	"smile-beam",
	"smile-wink",
	"smog",
	"smoking",
	"smoking-ban",
	"sms",
	"snowboarding",
	"snowflake",
	"snowman",
	"snowplow",
	"soap",
	"socks",
	"solar-panel",
	"sort",
	"sort-alpha-down",
	"sort-alpha-down-alt",
	"sort-alpha-up",
	"sort-alpha-up-alt",
	"sort-amount-down",
	"sort-amount-down-alt",
	"sort-amount-up",
	"sort-amount-up-alt",
	"sort-down",
	"sort-numeric-down",
	"sort-numeric-down-alt",
	"sort-numeric-up",
	"sort-numeric-up-alt",
	"sort-up",
	"spa",
	"space-shuttle",
	"spell-check",
	"spider",
	"spinner",
	"splotch",
	"spray-can",
	"square",
	"square-full",
	"square-root-alt",
	"stamp",
	"star",
	"star-and-crescent",
	"star-half",
	"star-half-alt",
	"star-of-david",
	"star-of-life",
	"step-backward",
	"step-forward",
	"stethoscope",
	"sticky-note",
	"stop",
	"stop-circle",
	"stopwatch",
	"stopwatch-20",
	"store",
	"store-alt",
	"store-alt-slash",
	"store-slash",
	"stream",
	"street-view",
	"strikethrough",
	"stroopwafel",
	"subscript",
	"subway",
	"suitcase",
	"suitcase-rolling",
	"sun",
	"superscript",
	"surprise",
	"swatchbook",
	"swimmer",
	"swimming-pool",
	"synagogue",
	"sync",
	"sync-alt",
	"syringe",
	"table",
	"table-tennis",
	"tablet",
	"tablet-alt",
	"tablets",
	"tachometer-alt",
	"tag",
	"tags",
	"tape",
	"tasks",
	"taxi",
	"teeth",
	"teeth-open",
	"temperature-high",
	"temperature-low",
	"tenge",
	"terminal",
	"text-height",
	"text-width",
	"th",
	"th-large",
	"th-list",
	"theater-masks",
	"thermometer",
	"thermometer-empty",
	"thermometer-full",
	"thermometer-half",
	"thermometer-quarter",
	"thermometer-three-quarters",
	"thumbs-down",
	"thumbs-up",
	"thumbtack",
	"ticket-alt",
	"times",
	"times-circle",
	"tint",
	"tint-slash",
	"tired",
	"toggle-off",
	"toggle-on",
	"toilet",
	"toilet-paper",
	"toilet-paper-slash",
	"toolbox",
	"tools",
	"tooth",
	"torah",
	"torii-gate",
	"tractor",
	"trademark",
	"traffic-light",
	"trailer",
	"train",
	"tram",
	"transgender",
	"transgender-alt",
	"trash",
	"trash-alt",
	"trash-restore",
	"trash-restore-alt",
	"tree",
	"trophy",
	"truck",
	"truck-loading",
	"truck-monster",
	"truck-moving",
	"truck-pickup",
	"tshirt",
	"tty",
	"tv",
	"umbrella",
	"umbrella-beach",
	"underline",
	"undo",
	"undo-alt",
	"universal-access",
	"university",
	"unlink",
	"unlock",
	"unlock-alt",
	"upload",
	"user",
	"user-alt",
	"user-alt-slash",
	"user-astronaut",
	"user-check",
	"user-circle",
	"user-clock",
	"user-cog",
	"user-edit",
	"user-friends",
	"user-graduate",
	"user-injured",
	"user-lock",
	"user-md",
	"user-minus",
	"user-ninja",
	"user-nurse",
	"user-plus",
	"user-secret",
	"user-shield",
	"user-slash",
	"user-tag",
	"user-tie",
	"user-times",
	"users",
	"users-slash",
	"users-cog",
	"utensil-spoon",
	"utensils",
	"vector-square",
	"venus",
	"venus-double",
	"venus-mars",
	"vest",
	"vest-patches",
	"vial",
	"vials",
	"video",
	"video-slash",
	"vihara",
	"virus",
	"virus-slash",
	"viruses",
	"voicemail",
	"volleyball-ball",
	"volume-down",
	"volume-mute",
	"volume-off",
	"volume-up",
	"vote-yea",
	"vr-cardboard",
	"walking",
	"wallet",
	"warehouse",
	"water",
	"wave-square",
	"weight",
	"weight-hanging",
	"wheelchair",
	"wifi",
	"wind",
	"window-close",
	"window-maximize",
	"window-minimize",
	"window-restore",
	"wine-bottle",
	"wine-glass",
	"wine-glass-alt",
	"won-sign",
	"wrench",
	"x-ray",
	"yen-sign",
	"yin-yang"
	]
}assets/lib/font-awesome/js/regular.js000064400000004330151327220410013630 0ustar00{
  "icons": [
	"address-book",
	"address-card",
	"angry",
	"arrow-alt-circle-down",
	"arrow-alt-circle-left",
	"arrow-alt-circle-right",
	"arrow-alt-circle-up",
	"bell",
	"bell-slash",
	"bookmark",
	"building",
	"calendar",
	"calendar-alt",
	"calendar-check",
	"calendar-minus",
	"calendar-plus",
	"calendar-times",
	"caret-square-down",
	"caret-square-left",
	"caret-square-right",
	"caret-square-up",
	"chart-bar",
	"check-circle",
	"check-square",
	"circle",
	"clipboard",
	"clock",
	"clone",
	"closed-captioning",
	"comment",
	"comment-alt",
	"comment-dots",
	"comments",
	"compass",
	"copy",
	"copyright",
	"credit-card",
	"dizzy",
	"dot-circle",
	"edit",
	"envelope",
	"envelope-open",
	"eye",
	"eye-slash",
	"file",
	"file-alt",
	"file-archive",
	"file-audio",
	"file-code",
	"file-excel",
	"file-image",
	"file-pdf",
	"file-powerpoint",
	"file-video",
	"file-word",
	"flag",
	"flushed",
	"folder",
	"folder-open",
	"frown",
	"frown-open",
	"futbol",
	"gem",
	"grimace",
	"grin",
	"grin-alt",
	"grin-beam",
	"grin-beam-sweat",
	"grin-hearts",
	"grin-squint",
	"grin-squint-tears",
	"grin-stars",
	"grin-tears",
	"grin-tongue",
	"grin-tongue-squint",
	"grin-tongue-wink",
	"grin-wink",
	"hand-lizard",
	"hand-paper",
	"hand-peace",
	"hand-point-down",
	"hand-point-left",
	"hand-point-right",
	"hand-point-up",
	"hand-pointer",
	"hand-rock",
	"hand-scissors",
	"hand-spock",
	"handshake",
	"hdd",
	"heart",
	"hospital",
	"hourglass",
	"id-badge",
	"id-card",
	"image",
	"images",
	"keyboard",
	"kiss",
	"kiss-beam",
	"kiss-wink-heart",
	"laugh",
	"laugh-beam",
	"laugh-squint",
	"laugh-wink",
	"lemon",
	"life-ring",
	"lightbulb",
	"list-alt",
	"map",
	"meh",
	"meh-blank",
	"meh-rolling-eyes",
	"minus-square",
	"money-bill-alt",
	"moon",
	"newspaper",
	"object-group",
	"object-ungroup",
	"paper-plane",
	"pause-circle",
	"play-circle",
	"plus-square",
	"question-circle",
	"registered",
	"sad-cry",
	"sad-tear",
	"save",
	"share-square",
	"smile",
	"smile-beam",
	"smile-wink",
	"snowflake",
	"square",
	"star",
	"star-half",
	"sticky-note",
	"stop-circle",
	"sun",
	"surprise",
	"thumbs-down",
	"thumbs-up",
	"times-circle",
	"tired",
	"trash-alt",
	"user",
	"user-circle",
	"window-close",
	"window-maximize",
	"window-minimize",
	"window-restore"
	]
}assets/lib/font-awesome/webfonts/fa-solid-900.eot000064400000614426151327220410015576 0ustar00��LP+�ve2Font Awesome 5 Free Solid
SolidL331.523 (Font Awesome version: 5.15.3)2Font Awesome 5 Free Solid
�PFFTM��^��GDEF*��OS/23�V`X`cmap�j�4h�gasp���glyfTɔ�-��lhead׾N�6hheaC-$hmtx��	��locajD8�maxpN]8 name%�1�X+post�Fa�1.K��ev�+_<��v{��v{��������������Z @��LfGLf��PfEd�������.�T:� ���@�@ ������@��@����
����������������@�`�@@��@��@������@@�������@�`@�@����@���@@��������@���@�@��@��������@@���@��@�@������@�@@�����������������������@@��@
@
@
@���@���`�������������@@@@@��@����@����@������@`�������@���������@����@@ ��@��@����������������������������������������������� ���@������� ��@@��@@������� � ��@� �  ����������@@���������@������������ ��@�@���������������@����@��@�������@������
��
��
���@@��@��@�`@������@@�������@��@�����������@�@����@���@@@��@�����������������������@@@@�������@�������������� ������������������������@�������������������@@��������@���������������������@��h��������@�@��������@����@��@���@�@��@�����������������������@ @���������@@�����������������������@������������������ ���������@�����@�������������@���@������@�@��@��������������@��������@�����@���@ ������@�����@@�������������������@��@�����@��@���@�@���@���@��������@������������ ���������@������ ���������@�������������@�@@��� ���� ������������������������������@�������
�
�����A�v����������>�D�N�[�^�n�|��������������������������������"�.�1�5�:�>�D�F�K�N�Y�^�e���������������������������������-�6�9�I�N�]�l�w�z�������������������������������������(�8�[�]�`�b��������������������������"�$�4�6�:�<�?�A�C�E�G�K�N�P�S�X�]�_�b�f�m�r�t�y��������������������������	������������������������������������!�0�7�<�A�D�G�J�O�Q�U�X�^�b�f�k�m�o�t�v�y�|�����������������������������������������������"�)�/�=�@�C�G�M�S�V�[�_�i�k�s�}�������������������������������������������������
�����*�/�>�J�L�P�S�c�m�y�}������������������A�Y����������!�A�H�P�^�`�p���������������������������
���� �$�0�3�7�=�@�F�J�M�P�[�`�����������������������������
���!�3�8�@�M�Q�l�q�y����������������������������������	��(�7�X�]�`�b��������������������������"�$�3�6�9�<�?�A�C�E�G�K�N�P�S�X�\�_�a�f�h�p�t�w�}������������������������������������������������������������!�.�7�;�A�D�G�J�O�Q�S�X�]�b�d�i�m�o�t�v�x�{������������������������������������������������"�(�.�;�@�C�G�M�S�V�Z�^�i�k�r�|�������������������������������������������������
�����)�/�>�J�L�P�S�c�m�y�{��������������������%$#"! 
������������������������������������������vutspgfecaVUSNMGDB40/���������������������jH0/,)&#
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�

~
}
u
q
o
m
k
U
J
I
H
G
E
D
C
B
A
@
?
>
:
8
7
6
5
3
1
.
,






���������������������������������������������}{tsqgfa`ZWRNCA?<720-+"!������������������������������������vmba^]TO'
�
���0�d	��p
|thT���D�X(��pt �!�#�$`%�%�&,&�&�'8'�(�)�*�+�,H,�-`-�.�/X0,0�1D1�2�33�4p5<5�66�6�7@808�9|9�:T:�;;�<<<�=D=�>t?8?�@�AHA�B�C�D�D�EdE�E�FHF�G8G�G�HH|H�IIhI�JJXJ�KKDK�LL�MM�NPN�OOxO�P@P�Q�Q�R(R�S4S�TdT�UPVV�WXX�YY�Y�Z@[[�[�\(]]�^P`�aPa�bb�cxd dxeepe�fxgg�hXii�jtk(k�ll�l�m�nDo`o�pp�q�rxr�s8s�t`uu|u�v<wx�yXzzh{{�|8|l|�|�}}X}�}�~~�,��,����h�������$����(����P�������x������L�����(����`���D�������(������(�(���8������|�H���D���l�D���`����8�������@������`����h��\��� ���d���(����������\���t�������l�P�8� ������|���L��L���x������p����\����4�$���D¬�`�`�`�0Ƹ����Ʉ�(ʴˀ�T���΄���H��Ш��҄� �Ԡ�P��|�X���ڴ� ۴�|���t�X޴�,���(�l��t�8�����<�<�p� ����<�������X�����d���\������L���,�����L��������@�D���p���p����T�x<�,�tD�D�H��	X	�
 
��X
4
�����lT�X`$����<��L� �!�"�"�##�$�&�''�(@))�*8*�+D+�,�-,-�..x.�.�/</�0,0�11X1�22X2�3D3�4<4�5T5�66l6�7888t9D9�:T:�;;�<l<�=L=�>\>�?p@@�A�BxC�D�E0E�F�G0HII�JJ�J�KPLMHM�NLN�O�O�P`P�Q�R�S�T�UDU�VpV�X(X�Y,Y�Z�[[�\ \�]�^�_�``�aa�b\b�d(d�eDe�f\gthh�i,jPj�k�ldl�n<o$o�ptp�q8q�r0r�s�tttt�u�vpwx\x�y�z<z�{t{�|�}}�~������x���������P���\�������0������P����x���X�����D�X���(���D���L�����p�0���d������8���4������8���4���<���x�H���\������X�<���|����T���������������4���h�l�<����|�����p����p���l�P���`�Ø�Ĕ��hƌ������L��˜̄�D������ �������l�`�\�״��P��ۘ�<��(ޠ�L���|�T���x������x������P���|���@���D���`���d�P���P��p���0���@�����d���8�|�(�H����l�L�x���|8�	x	�
��
T�L��P��8���@��4���� t!�#l$t%�&p'D))�+P-<-�.,.�/�00�1�2�3x44�5x6(6�88�9�::�;l<|<�=�>H>�?�@�AXBB�CTE<FXG|HH�J�K<L$L�M�NTOHO�P(QQ�R<SS�TdT�VV�X<X�YxZtZ�[�]]�_`�b<c�dPeXf,gh�iLjj�kll�m�nho�p�qq�r�s,t�u�v�w�x4y|zTz�|$|�|�}�}�$��,���@����`�P� ���@���������4�`�`�����T�����|�����p�������<���������������� ���d�����0���������0�l���L�p���`�\������������x�t���t���D���l�#>%2+"&4&+"&'#"&=46;6757'&=46546;276/`B^
@


=L=]		w"  !�n	 	n��^B
##	`	00`

		

����#-6>FNV%2#!."#"&5463!2%54+"6754+"6254+"54+"354+" 2"&4264&"p		��>T>2			�@qlo���B//B/C�	 	)77)	 		�Ll�YY(�lD����/B//BA�������QY%#1"/1#"/"/#0"##"&54?&'"#"&54?454767'&5463267'&54763267'&54763267'&5463267632376327232#"/264&"6264&"#"/#"/#"/#"/#"##"&54?&'#"&54?&547'&546326767'&547632467676767461'&546326767'&46263023763272312264&"	

			





		



	

�i			�




	





	

			


��	
	
	


				
	


			"M			6
	
			

	

				
	
	
�������"/#"/"#"/"/#*##"'&54?&'#"&54?454767'&5463267'&5463267'&54763267'&5463267632376327632264&"6264&"�

	


! 





		

			 ��((vY

	


	
 
	

	


��((l�����	-%!32;5!#!"&2!546;#"3!264&+7��@�%%n�@
�@
�
�
1		`		� *��@@


��
@	


	@����@�#K"&=46;546;232++"&=#!"&=46;76;2+";7632�		@	@	@		@	@	X�"��		7/ *�
N		xx

@	@		@	@
@

@�
d
`	&
	
X����_s�"/&54?62+"/&546325462;2=462;2=462;2=462#'64/&"2?11"/&54?62k111;&
�}
&x@11111111���
 �

��

��

�H

�&0
P1111 ��!�R���$"&462'7>&#".=4627>32?>32?>0"%2+";2+";2+"'654&'546?63232+"3"&4622"&4((�			
�"<		'/	
,"		"J/<�	
�	
�_	
�!$0%l
/�	
�E��((�((B

0�8!q


2�	
	z�	
	�k
	lQ32


,)@
!

��((����7L%7654&#"#"'&54?63276;76;232+&'%3#"/#"/#"&=46g	!K��u	
TLX	
V
	7p		b�~	
[�		�	��[	EQ	7	�
���
R	�	����$,[3+6"2645#"/#"/%3#"&5:64&"%#"'&54?63276;76;2&/7654&#"H
@7			@	
[�`@
)			��K��u	
TLX	
V
	7�	@8�
@			��
R�
			���[	EQ	7�v
����'/PX$"&4622"&4&2"&42"&462"&4&2"&4'+#";+#5&546;2&264&"rb2�23
 `

`&@�@pP*4Y5��~FZv6;
 & �:UPp/)�%���� (08KS%#"'&54?6326;2'654&#""&462"&462;+#5&547#"2"&4ƴ��'1;*4Y5�
	jN��
`&@�@?
+���!/)�j		
�N& �:U.(������667#5&1!'>;2&264&"";#";+5!ܠC���g>B4Y5�0		�
�		�!��ñ=�7E/)�%�		 		�0���)y$2"&4&2"&4++!5&546;2'264&+"&?64&"&=4&"/&"+";22?626=46264/&63				7			=
 &@�@pPJ4Y5�			

(		(
				

(		(
	�			I			Z
@&@�9VPp/)�		(
				

(		(
				

(��@�+3A%&/#!"&=&/&547%62546;2&"2642654&+"3;
��
e	@	�4&&4&0	8(@(8	��

��

Z4		�&4&&4�	(88(	����3MQ%#"&=#"/&54?62546;2#"54&+"32#!"&=46;546;2#5#�
�

X	 	;�	@		���%�0���
��		N'		`4%		@	�

�

�������9����&"546;2327&54767>32&#"#";6"/&"&=4&"&4?6&+"&46;26/&4626=462?62;2+"&264&"264&"/&'32654/3264&+764&#"54632X		�
 </N!E
)�

(		(
				

(		(
				�			I			,N/< )
E)�		�T	
7.{l
&(	(	'
				

(		(
				

(		(d			I			.7
		(	'&
l��@�#+Gg"&462+"&="&=46;2$"&4622#+"&=764/.5>3"&=#"/&4?6235462z4&&4&@2
@

&@ H�4&&4& &

@
2H H
�
HH
�
@&4&&4�&
0`

�
`&D�&4&&4F&`
�

`0
&
D�
D$$D
D$$����@4547+"&54?#+"&5457#"'&54?632'&546;232+ EB	B
1g+(	 :���%
B	irBB9,�u	�:	l����	�'2'������7N2+"&5457>354&+54&+"#";;26=3267"/##546;232�%&�%$�((((�
+C�
@
C !�&&�!�((((�
+ `

����62+"&5457>32654'&""/##546;232�$&�&$32#4
4
+C�
@
C "�&%�"�"EF 
+ `

����ow2"&4%"'.546?632264&+"&?64&"&=4&"/&"+";22?626=46264/&63"2"&4�			,FH$*M@'�		
n			

(		(
				

(		(
	[						u N�[<C_�GP�		(
				

(		(
				

(			���	P75!#!"&%2#!"&=46;5#"&=46;235467632+"&=4&"3546;2+ �8(�(8�		� 		`@		P
@+"	
(8	 	@
P		@   (88�	 		 	 		
0�$88(		

�0
		 ��� (08D2#!"&=46;#";2654&'6"&462&"&4626"&46232+"&46�(88(��(88(�Y(88(�(8#F4&&4&�((���&&�&&8(�(88(�(8%8P88(2
&4&&4z((�&4&&4&
����)S^g'.7>75#"&=46;2+762#67>54#";27543230;2=4754&#"32&2#"=�"|WVyeI 		�		 8,
�1

88	
R	�879E

3>Wz�ULp"	 		 	"	$
� =<'
k ?j?�tt������,:#"&7#"'&54?632763!2#!3535#!"&53XJ::��#	�	V
��)5�@�@
�
@DD"��-��" )c��2I

���`�
F73!"&=327'#"'.7#"'&54?632763!2#"'#"'532767z�a		+$����"		�	=$-**
�		@�
�Y(m��h(Z!!pP�����;C47#!"&547>5#"'&54?63263!&5462&264&"@<��	
:��6# 28P8+!!�6		&

^�*-e>I'3=PppPEh{%6%%6����?JX7#"&547#"&=46;2$"&462#"'&54?632>32467#!"&5%2+.'63�%�(B
&@�4&&4&k����>+.B' 7-��<,����&
B(�%�:#
 & &4&&4�g�*8B.#8+#I,B��& 
#:�����W_g%2+"#"/&"&=4&#"&54?6&+"&46;26/&546326=462?6323264&"264&"�&GG&&GG&��((v�G&&GG&&G,((T������$Xa767"&=4&00.6?6&+"&463'&?6626=462?62;2+"%4654&#"r
�G		&

��	

]GG	&�	����&G���
	I	&&G~
�����OW���%2+""/&"&=4&"&4?6&+"&46;26/&4626=462?623264&"'""/&"&=4&"&4?6&+"&46;26/&4626=462?62;2#&264&"264&"p			

(		(
				

(		(
	�e55


55


�i			`		(
				

(		(
				

( �5

55



53			����.:F%+57#"'#"&=4?546;232?6;264&"2764/&"�
�J#''#9
�
5
    
�

0

,	0
0��
���)�
�P�

��
0
	0

0����.JRh%+57#"'#"&=4?546;232?6;22?264/764&"'&"264&"%26545.+56&'"#"3�
�J#''#9
�
5
    
��



""/



��
���)�
�P�

�p



�""a


0�����32+"546;5'&63!2��8�8������**���632"&46325"&463247�
8P88(�8P88(�
��%%6%�K�%%6%���!%"/&=#"&46232&264&"�d8HVzz�z,
�jKKjKd
,z�zzVH8KjKKj�����"/&6767>�/+�

�+/)k&&k�(|+�

�+|(#	''	��1�62/&?'&6?	(	A�j �� j���&g�	DD
�g&����$"&4622#!"&=46;27jKKjK&7O��O7#L#�KjKKjkO7**7O	�/;GS_kw��2+54+"!54+"#"&546;;2=!;2=54+";2=4+";2=4+";254+";2=4+";254+";2=4+";2=4+";2�

(��(

(@(��((((((����p((((((�
��

P
��((l((l((�``�``�((l((l((���/?32+"&=46#2+"&=46346;2+"&5"&=46;2#(�

�
F

�


�

�
(

�

�
�

�

�

�
��

�


�

�
	���/?O_o�+"&=46;2+"&=46;2746;2+"&5#+"&=46;22+"&=46346;2+"&5%"&=46;2#"&=46;2#%46;2+"&5�
e

e
�
f

f
 
e

e
 
f

f
�

e


e

e
�

e

e

e

��
f

f
�P

P
�

P

�

P



P

�
P

P
�

P

�
P

P
�
P

P
h

P

���/?O_7+"&=46;246;2+"&52+"&=463"&=463!2#463!2#!"&5"&=463!2#�
e

e
�
e

e
}

e

�



��


��




�P

P
�

P

�
P

P
�@
P

P
�

P

�
P

P
7'&4?62762"��%p�%��	�$p�$����aq#7"/"/&4?'&4?62762�d		
	dd	
		dd		
	dd	
		�d	
		dd		
	dd	
		dd		
	���5=++"=#"=4;54;232"/&=#"&46232&4&"208 88 8�d8HVzz�z,
d�PpPPp 88 88��d
,z�zzVH8d�pPPpP���%-+"=4;2"/&=#"&46232&4&"20���d8HVzz�z,
d�PpPPp  ��d
,z�zzVH8d�pPPpP����$4"&5467632654&'.?>+"&=46;2�08�͒80	 $bFEc$ _
 

 
�"k=g��g=j#	F)EcbG'G	�

�

��h�/?O72+"&=4632+"&=463%2+"&546372+"&546372+"&5463�		0		P		0		0		0		�		0		�		0		�	�		�	`	`		`	�	��		 	`	��		�	`	� 		�	����<D%/'&=&''&'&?&47'&767667547676264&"�	&+"	76
"*	&	**	&	*"	77	"*	&	*�B//B/�
5)1

1)5	$
5)1

1)5
##-/B//B����A�C62+"&=4&+"+"&=%#"/&"#"/&54?62546;2�	p		@		p	����"
Z8,��	
`		`
	�1���JI�����2"&4654/54&+"327�Α�ΑT:	 	C��Α�Ψ*�		�1��E�!/?%+'4&+"#"&76;;265'32;26/&+"265'4&+"3=�	D	��bb�((7		.		-bb@4,,�00���+3;3232"/&6;546#!"&=46;2?324&"264&"2�P
X
	��	

X2
�0

�1*1�
|L�
�	��	�
��p

p
11j@�%#!"&=4?63!23373'8� j��U{ p {U����+�@@����52+"&=46303.#"327632#"&4632'41463��eM-IggIB2"F`g��f8b#��/$*g�g,"@�͒.)R���)S4146;2+"&=463.#"+"&545>322676;2#"&'1+"=46;2#'�/�fM->_
1�Z8b#�=`
1�Z8b#/�fM��/$*L;	Ws.)��L;	Ws.)R�/$*���'3?K!"&5463!2"264"264"264754+";254+";254+";2�`���""""""������� `��h""I""I""�  T  T  ����%2#!"&=46;5462#54&"���Y~YP*<*���H?YY?HH**H���'276#"&#"+"&5&54662^0E;?$h>4

"!Gh] �	)#^

�!

#���/2+"&=46;254&"6;2+"&/&=4�ԖA-

/!q�q!/

-A��j0	-?
�
"OqqO"
�
?-	0j���6/#"&=46;�Yf

fy��Y
�
����#6/#"&=46;.6764'.>�Yf

f�				x��Y
�
)0).��@�%:L6/#"&=46;%.67>4&'.>&'&67>4&'.>.6764'.>�Yf

fB<DD<	1991	(-)		""	
)a				y��Y
�
�'~�~'!hvh!�`S	=F=6)0).	����#'+=3'3573#75#53'35%3#5##5333#'3#��@����@����@  ` @`@  @  ��@@@�@@@�����@@@� `� �   �#'+/37;?13333333333333333333333333333333			$										���������������������������������������������������=46;2"/&6"264���(��((���(���((����)%"/&=46;2264&""'764/32��(���((2�(��1��(����((���J��(����#/8%#!"&5463!2;2=4+";2=4+"&7!"3�		
��(88(H
���������

X4
8(@(8
nF�  ����
463!2' �@��0p���#'082+#!"&=#"&=4635463!25!%5#"&=#264&"�%	0
��
0	%

	.	@�0	�&%p	`

`	p%�
	.	
��``�`	0�H���!)#!"&546;7>;2324&"26"&462�`X~X�FdFFd&4H44H0�� !!�dFFdF�H44H4����+.%2+"&=46;'#32+"&=46;6;2'3'�		�		�		�		�0��^/ 	 		 	@@	 		 	j��������%-%+"&=46;#"&=46;2'3264&#264&+MR6�		  		�9L�W  W�?$4F	0	 	0	T9$a`(��!.!p��@�#+32+"&=46;#"&=46;2@	?P/		�		?P/		�	� 	��	 		 	@	 		��C�-I2+"&=#32+"&=46;#+"&=4632"/&6;5#"&?62+0		 	8(		�		(8	 		 PP00PP0�	`		 ��	 		 	0 		`	��PP�PP�����-I2+"&=#32+"&=46;5#+"&=463&=#/&4?63546�		 	x		�		x	 		[PP�PP��	P		p	 		 	p		P	��PP00PP00����/?7"&=463!2#"&=463!2#2#!"&=4632#!"&=463
���		�`		�		�`		`&&&&@	 		 	�	 		 	����/?2#!"&=4632#!"&=463"&=46;2##"&=46;2�		�`		�		�`		\��� 	 		 	�	 		 	@((�((����/?7"&=463!2#2#!"&=4632#!"&=4632#!"&=463		�				�`		������	 		 	�	 		 	�&&�&&����/?%2#!"&=463%2#!"&=463%2#!"&=463%2#!"&=463�		�`		�		�`		�		�`		�		�`		 	 		 	�	 		 	�	 		 	�	 		 	���/?O_72+"&=4632+"&=4632+"&=4632#!"&=4632#!"&=4632#!"&=463P		@		@		@		@		@		�		��		@		��		@		��		P	@		@	@	@		@	�	@		@	�	 		 	@	 		 	�	 		 	����+;K7'&4?62#!"&=463%2+"&=46372+"&=46372#!"&=463e``D		�`		�����		�`		U``�-	 		 	�&&�&&�	 		 	����+;K7&=462#!"&=463%2+"&=46372+"&=46372#!"&=463`5		�`		�����		�`		U�`�	 		 	�&&�&&�	 		 	@�2#!"&54636/5P���"#n��� &�K��")"&5463!2"264!5'&'&�`���.!!.!h�X�8H ��H!.!!.�pX�8H����.5462"�="
p�p
"=6#X$5"PppP"5$X#
����
6462"7264&#�Α��gLllLYΑ�Α@l�l��`�!"&54>762264&#"&54&"�6,!g�g!-5-		!/		B�4_6I&JhhJ&H8^4�@		/!		.B��@�6&?67/&?624?6#!"&5463!2+!�Z�\


��$Z$ �(��(�@mZ�

\� #Z#��(�`(��@����4;276/+"@0�%%�0���
��
�����54;27676//+"(�%�%%�%�(h��
��
��
��
�����7&4?6'7&4?6'�%%@�%%�

�
��
�

�
��
����%&546���13�6������#"&546;2%+"&546;2�`````��0`����2#!"&5463������`���%&546&546��%%@�%%�

�
@
�

�
@
���+"=&=&54654654;2(�%�%%�%�(t����
��
@
��
��@����+"=&54654;2�0�%%�0��X��
�
��������%#!"&=463!2%"&?62#�
��

�
�p�*�@@

@
39��9��%�?62"/&4#�����������%�%"/.?'&6?62�������������#2"&454+54+"#";;2=32�Α�Α�\8\\8\��Α�΃8\\8\\����2"&4!2=4#!"�Α�Αt����Α�Ώ88����#2"&4'76/&'&??6�Α�ΑrBB(	AA	(BB(	AA	(��Α�ΨAA	(BB(	AA	(BB(����"&46276/&'&��Α�΄��Fh'Α�Α����Fh����*2"&462"7>32;2=4>54&"264��Α��`J+	#	8H &&'Α�ΑR@		

	&*<�&&����'2"&4$"26454+54+";#";2�Α�Α	""@X��Α��#""�d@���'OW%2++"=.'#"=4;>754;2>7#"=4;.'+"=32+54;24"&462�eF(FeeF(Fe�,?
))
?,(,?
))
?,(�(FeeF(FeeF�
?,(,?
))
?,(,?
)y����
2"&4.67�Α�Α�`�4&��`�4��&��Α��`&��4`&4������%"/&4?62!2#!��x

��x��s
 
s����762"/&6?!"&=463!'.���x��

x}��s
 
s����7'&4?62&/+"&5#��s
 
s���x��

x����%"/&4?646;27>���s
 
s���x

��x���&='.54>7546��1D2
#02LP4�

X*@+U,,B)	P
����!2C546;2++"%4;2+"=#"52+"=4;543+"&=4;232
|T( |
(T�
|T�|
(T|
(T�
|T�|
(T�
|T����!2C#"&=4;232%+"=4;54;2+"=#"=4;2+"=46;2+�|
(T��
|T((T|
�(
|T
|T(
(T�XT(
||
(����#%2++"&=#"&=46;546;2�

�
 
�

�
 
�
 
�

�
 
�

����%2#!"&=463�

��

�
 

 
����5%/+"&?&/&6?'.?>'&6;276�	�&�	��	�&�	�r	"	T��T	"	NN	"	T��T	"	N����"&462"264';2574&+"��Α��T&&Z0@'Α�Α��&&������
.7A353#"&53#2#!"&=46;&54632>32!3.#"3264&#" ��
�
 
	� 	
,
4$..$4
��V#!� ����
@
P		P
$4 $$ 4$5""$%����@�'&'.7>3264&#"&546;26762"�u8[5	 @Q}G		�upPP/O�BN��	.%,.
/>0"		TPp/)����!"&547632654.676�#11#q�q7%&
"�2,2M/OqqON9U&% "*=%
@�+%"&'&47>22654&"72"&54732654'6=*���**����<TTxTT<(88O9	�PaaPPaa�T<<TTxT�8O99'
	����/E%27#"&'&4767#"'&54?632632'654&#"654'6320@

4)%[�*iRs���EN[�*3IT<4'I	

'80)
aPQ8M:�c&aP;+9<T!98'����H�!%#!"&762"264';2574&+":
� 
�8&&Z0@00���&&�������@�(2++"&?#+"&?'&6;23'&6;2�BBri	B	1g+(	  	(+g1	B	i'2'�
�:ll:�
�����	!-9EQo!#!"&%;2=4+";2=4+"';2=4+";2=4+"';2=4+";2=4+"2!546;546;23546;2���@((((�((((�((((P�@0	 	�	 	���((�((t((�((t((�((@000		00		0���;%&=#"/73546%"=4;2'!#+"=4;76;546&5�P;F55 �coF55  �oT�;PPYP(K:9(g8K:9�8�(PP�����2#"'#"&>7&54�Ԗ�j83AL9�z�z3
19JV���>#"&=46;2%+"=46;232".54546;226=46��hW�h��Nt{tO�2<2,PPP|,	Ht;;tG14-44-4;�E/&/&4?62�����=����;�E7'&4?>76"�����C������}�!C%"/&4?625#"/&6;2762+"&="/&4?62"/32vee(�	�
(���
(ee(�	hdd+�
�+
�+dd+���B�.%#!!2"&547#"&547#"&=46;2!2��
 !.!�!.!FF

g
	�� #!!!! W

-�2#!"&546;��`�@@� @D�
%#!"&?63!2%"46;32=I%�pI%��T,
E�@��| | 8v@0�/?T%"&=46;2#3"&=46;2#!"&=46;2#3"&=46;2#2#!"&546;2M&:&��&:&�		�0
	 	�����FF��@	 	
P		�����-5=M!2#!"&546";2=4#2=4&+"#"3264&"62"&4265463264&#"0��`	t@	���dFFdFTH44H4!	
		&���` 	
`J	-$��FdFFd�4H44H4	
		&���!)#"'+++"&=4?&54632264&"gI%
(
p
�	gIIg�((Ig(
(

N
�Igg((������;C����'&'&?&'#"'&76;67'&767667632+/'>'&/'.=&''&'&?&7'&7676675467676>.6'&'&?&'#"'&76;67'&767667632+/'>'&







&	
&	g"	!
&&	
 
!!
 	&&
 
"{#0#0	







&	
&			
			
	

	>##�
(
""
'
 
'

"	

	"&
50#0#�		

				

		>##����B�)#"'#"&767&5462#"'#"&'32654'�zV<3+.&z��.+3<@hc�9HB�^
")3B^��"
6,qO	Q13�� �
&?'&6?6 � j�A	��HD	�g&�����+%+"/&=#"&546?#"&=463!2+*&0
�
�
0&*



*�;%
h00h
$<v
0

0
��@�3;C232#!"=46;5.'&'&=46;5463!2&'#%5#676(
>0>"

0%��%0$>0>
h

��@�@#�
88-"$HH
&"-88
(

(�
)--)
���/7?%#"&=#"&?62+7#!"&=46;;26=324&"264&"2(P
X
	��	

X�
�0

�!P!�
|L@
�	��	�
p

p
!!j�����#5&.7>&>676>.2327>�"		
'BF:;-+
+"		
'BF:;-+
�4j
^�"+
+-;:FB'
		"+
+-;:FB'
	c
j4,^�����#"/&?6>7'&?6���p1;[<0����h0<\:2p����.2#!"&54632654/"#"'&#"���.x�A
%#KF	���`���x	FK#%
A����&%2#!"&=46;5462+"&=4&#"���Y}Z
 
+*���f@ZY?

*+g��@�	!+=!#!"&7;2=4+";2=4+"!5463!2@� ����HH�����X((((00����06"&462+"&5.'"&=463+"&5.'"&=463�%5&&5�	0	wT	
t��	0	ː	
s�t;5&&5%o
	Tw	0	�t
	��	0	u�@�#+%#!"&=463!2'!"763!2&"264&"264@� �0� aa3s�``<��`��@�,4$#"/&++"'&547#"&=46;2?632#2@ 	UBUK"%%�UBU	@!TkkT�J�
D5+"#5:%`%5D
��C`C�����;%//&/&?'.?'&6?'&67>7676�.

?>	--	>?

..

?>	--
>?

�-
>?
..
?>
--
>?
//

?>
�&6>%+#*#"&'.=47>763232+"&=46;24&"2d

'(#GE
	��`
0

0
�
+%#$$
	�

-+
�

�
��&6>3&'&632#*#"&7.7.7#"&54632+"&=46264&"-�	
EG#('

d�0

0
$
+-

�	
$$#%+

�

�
�������&6>2666+"'.'&54654632+"&=46"264�
+%#$$
	�

-+
�

�
��d

'(#GE
	��`
0

0
������&6>5&547>76;2'''#"&546;2+"&64&"2\
+-

�	
$$#%+

�

�
��	
EG#('

d�0

0
����%"&462'326=4&+764/&"2?64gΑ�Α�L�

�L��8�Α��H

H������%2"&47#";2?64/&"�Α�Α�L�

�L����Α��H

H������%6462"'7;26=2?64/&"2�Α��H

H��YΑ�Α�L�

�L������%"&46254&+"'&"2?64/&"��Α��H

H��'Α�Α�L�

�L��	����
"+17=#>2473#%#&'%#>#64'#&4733"&673%3.P�0:0���Bl#5S��$lSk		r�r		r(�0:0�$lS��l#5S DTT�@  @ �\2K[2\3K�    !>!@"!>!!DTTJ2\3K~\2K�����$'"&4?&67>76264&"�	P&�5%�
J$JDK
�<S$I
�%5�%Q	
KDJ�������+3CSc"/&4?62762"/&4?627622"&4%2#!"&=4632#!"&=4632#!"&=463�I
/
@
H
/
@
\((�		��		 		��		 		��		�	H0
?�
H/	?�((	 		 	@	 		 	�	 		 	�����2/&='&63��P
�����
8��'+%53#!"&=3;2672!546;546;2#5#@��`�	`	��P�@�p0��0		�PP00  �����;%"/&6;5#/&4?635#"&?62+3546&=#32`OO3eOOe3
OO3eOOe3
OOe3OO
3eOOe3OO
3e����%9G6"&462"&4622+.'63*&4622#!"&=46;27'#"&=46;2z4&&4&�4&&4& &
B(�\BB\B#0C��C0	!F!�(B
&@�&4&&4&&4&&4F& 
#:B\BB\bC00C
:#
 &�����%K"&4?62?64'&'&5&?66&'&'&?>'&"&'&4?6G,,D,~Y,&	
<C	jY,&	
<C	
,,D,-~,D,Y~,&
	;C<
�Y~,&
	;C<
	-~,D,����%#!"&5467454632632,:K5��<T6*^B,J(8�	F.5KT</JB^,$8(����%%#!"&?5#"&=46;2+3'&=#�(*��*(u

�

��0@,#II#��



�iN
��
����'/7%"/"&46327'#"&462762264&"264&"�		Ft8P88(!!(88P8tF		����	s(88P8!!8P88(s	F������#,!#!"&546;3;#!"&546;#532@
��

H!�
h
��

�y`
(

p
��!X
��

p
I
`������2&6?62&'&6?6?64'&"2?6"++,�"^!!!�@��		�(�3H��-~--�"""_!�?��		�*�K5��-����(#!"&5463!2264&"4/&+";25����6%%6%���>��`��%6%%6h����2#!"&5463������`����/"&=463!2#"&=463!2#"&=463!2#		�		�`		�		�`		�		<	(		(	�	(		(	�	(		(	���'7G2"&42"&42"&4%2#!"&=4632#!"&=4632#!"&=463((((((�		��		@		��		@		��		�((�((�((	 		 	@	 		 	�	 		 	�����*:JZt�7#"'&?63254+"/&?67#"=4;20%2#!"&=463%2#!"&=4632#!"&=463'"=4;5#"54?6;232#"=4>54#"/&763232#>	9�		��		@		��		@		��		�D		
'/		
		�	 		 	�	 		 	��	 		 	�@X����/M%2#!"&=46;&'&546;2#"'&+"3+"&/&54?632;2654�		� 		fH4D%=	+
BW^H4D%=	+
B�	 		 	3I' 
`3I' 
����/?"&=46;2+26=#"&=46;2+"&=2#!"&=463 		�		 /B/ 		�		 ^�^p		�`		�	 		 	�!//!�	 		 	�B^^B���	 		 	���2#!"&54635#75#5#75#��`�����������`��``�``�``�``���'+/?/?/?"/&47627'�    �5555E5555b		��	
U		l	
;W3V`   `555�555�
	��		U
	l		�V3W����'/7<%2+"&5#"&5#"&5463!232264&"264&"75'#p		08P8�8P8@,d�,((\((�d,`	 	(88((88(@0dlp((((�dp��!&+2#!"&546334&#5265#264&"5"75#`

��

@%%@�B//B/`%@@%�
��

@
��%�%�8P88Ph@%�@%W9!2"/&6
	��	
	��	`9	%!"&?62!��
	��	
`	��	'�Y/&4?6�	��	A��
	��	
'�Y546&	��	?
	��	
���2#!"&5463#!#��`�������`����
��3�732"/&6%+"&?62)�ww�w�wwiw
��3�732"/&6)�ww�ww
�4�%#"&?62�ww�ww�86#!"&=462>76".#&'&=463!2"��`!yv�z4	�	1}��X	

Ue	Y(&[	����+7#"&=4;2>3#"'&?63264&#"32��0#a6g��g_G
	"	2BIggI+Jb��N'+�͑@		",g�g'!0���7%"/&4?'"/&4?627'"/&4?62762�|(Q		s		.		s		Q(}q�}(Q		s		.		s		Q(|q����D�2#"&?#"&?>;2(�.w 	�* ����	�����5EU72+"&=4637#546;5#"&=46;2+32#5##52+"&=463!2+"&=463�

`

H0�(

�

(�0�0H

`

P

`

`
`

`
P0:@
`

`
@:000P
`

`

`

`
����B�-C%'."'0.#""'.&7>75462632#"&'&>3265@57	(74�\\���/!*	�

#+
'"+$
cz



zx�!/
		����/8#"&546;6232#"6"2643+"&546;7#532�h

QJQ
�!*�h
�

�r`
B�
P
  
H!y��

0
h
&`B��`�
 053+"/&46320#41&'&7264&#"26546`�
>	`dKJg,%�%,�		.B		/&&
 GigIB2+00+2�		B.		!/����U$"&462462"7#!"&=4672654&'527267?6/546?6=4&'jKKjK��6J��@0!.!:$00 
$�KjKKj��N5--1KQ!!R

.,, 
*,���?G2#"&'.=46?6326='.?>326=&7>264&"�& gIGg7I?
	9('8

?I7A-.B!$			P%%qEc_DY9�	
	
{(8:'z
	

	�9X):=+q&%P			���	
!46;235+32#"&546;�����00�`00 ��p�  P�`��������)"&537#!"&54767>54675462�4&��	��	H88H@%q



C,:V

V:,C������'7"&=463!2+##3264&!"'&763!2�(8
�5KK5 8(�  &&�!	
H@8(�
KjK(8 �&4&�� 	����'3;GSo!54;46;546;23232#";2=432=4+"#"3547#";2=44+";25'3;2=32=4+54+"#"��@
X
p
X
�((�((t(@4((�((
,h
H

H
�� ((@((�TT`(((�����'/KSX%2+"&5#"&5#"&5463!232264&"754+54+"#";;2=32264&"75'#p		08P8�8P8@,d�,((�808808�((�d,`	 	(88((88(@0dlp((�088088�((�dp���
%I3546;2335+32#"&546;4&+54&+"#";;26=3265` � ��@ 	0	 	0		0	 	0	 `00���  P�`���	0		0	 	0		0	����/%#32+535##'53535'575#5#57335#532+3 ``�0u(s0C"0@@0"C0s(u0���PE*EP������".:2#!"&5463!254&+7626=4&"26=4&"p!/Q
��


@	07	�			W			`/!�'
$*

�

(с	�E	�		�		�		�����3#!"&5463!2#"#54&+";26=3;26=4&���`p 	�	 		 	�	 		p��`D	PP		�		PP		�	����+2#!"&546354+54+"#";;2=32���@\8\\8\���`�8\\8\\�a)?62"/&4&4?62"'�``���``ш``��``�a)7"/&4?'&4?627"/&4?'&4?62�``���``��``��``����A�)7"/"/&4?62'62"/"/&47��``��``��``���``����A�)7'&4?62762""/&4?62762��``��``��``���``�a?62"/&4 �``�ш``��a7"/&4?'&4?62�``���``���XA("/"/&4?62��``� �``���X@(7'&4?62762"��``�`�``���@�#2+32#!"&46;7#"&5463!�H

��

H��@���00@�� ������!%%2#!"&=46;;267!463!2!p	&�&	�
=��@�� 	&&	p��P�������2#!"&5463264&"������`�� ��@�2+"&5463264&"�c��`�� ���9%2+"&=46;2+"#2+"&=46;2+"��^B

&��^B

&���B^
0
&@��B^
0
&@���92+"&=46;26=#"&=463#2+"&=46;26=#"&=463�^B

&P�^B

&P��B^
0
&@��B^
0
&@����'/7"&4622"&462"&4 "&4622"&4$2"&42"&40(((((�((��((((B((��((�((�`((�((((�((((B((����2"&4�Α�Α��Α������%2"&4"264&"2646."'&2�Α�ΑU��#n#-���Α���**6����%2"&4"264&"264>'&"762�Α�ΑU��-�-#n��Α���66*����2"&4"26424+"36264&"�Α�Α������Α���  ��`+3;2#"'##"&46354+54+"#";;2=32264&"6264&"�B^^BC/\/CB^^BX4444�""W""`^�^00^�^�4444@""I""
@�'3?KWco{���)"&5463!254+";2754+";2754+";2754+";2754+";254+";2754+";2754+";2754+";254+";2%54+";2754+";2� ��\((`((`((`((`((��((`((`((`((��(( ��`(( ��((((((((((T((((((((T((((((���-3W.'76#"&#"+"&5&546623256%5'5&'&56765767556�	2	2�;?$i>4

"!Gh0�"(#M'##&>&#7.(!?&#%% *D��	)"^

�!
#�HF
�GH	DDGFFDDHFG������$%"/&4?'&4?62#!"&=463!2����w
��

0
������

 

������+'&76'/&?6/&?'&?6=�=�}	�

�	+		[[			+		[[		+	�

@��*t	�		�	.	PP	/	.	PP	.	�		����@�.76&76&'/&4&4?61'��3N>!0#9T�x�mm�

S)F/,UZR
T
��

^^
����	�6&=#"&67�/�-%�
�/�`
�%-���7%2++"&53#"&5#"&=46;546;27#5376�

(
0
�s�
(

(
0
�s�;;`
0
(

�`

0
(

��`;;�����4<DL"&54675.546267>767.5462$"264264&""264�
- 2
/B//B/9 /B/��						�			0**	)!//!*�*!//!*�	
*!///			��			7			�����/?%"&4?62?6/&?62/&?64&""'&4?620		-,~Y,-	(-*<-(		-,~Y,-	(-*<-��G�*	-,Y~,-		(-<*-�(	-,Y~,-		(-<*-����G��z�(02+"&=4>7>54&#"/.762"&4�Bn%%
H

,"+?F:((:(�Z@ 1


"![��)9))9����&735#"&=46;232+"&=462"&4p�6<**<*�0�00�*<**<����6"&46246;2+"&5�/B//Bh
^

B
1B//B/G

��


�S2+"&=46;5#"&54?6;2'2+32+"/+"&=46;7'#"&=46;2763�		`			
0	�		!NN!		CPPC		!NN!		CPP 	 		 	`	 		�`	0	pp	0	ss	0	pp	0	ss���S!2+"&=46;5#"&54?6;22+32+"/+"&=46;7'#"&=46;2763�		`			
0	�		!NN!		CPPC		!NN!		CPP	 		 	`	 		��	0	pp	0	ss	0	pp	0	ss�����%32#!"/&4762%37���`(���|PrD��(`(�(1}PC��@�E%2#"&#"".54654&#"&/054&54632>?032614-.$#$%54@p '#$(::)	2�&#$##
0	M
2	20Ek��`�<6"&=4627232+"&=46;5.=46;26=463�P88P8@	WA8		�		8AW		B19T	`8(�(88(�(h	0Bc	"				"	iD(		*3NM80	������#C'&?654626=46;22+"&=46;5.=7z	
��	
�8P8		L		�		8AW4
<)2


	�

	�-(88(�0		0*&�				"	iD)(9'"����
+!2#!"&54%#!"=46;54;2354;232�����X0(�(0��,$4444������6>6/&5#+"&=4675*.767&632347264&"��
()
�
)
	<!":
�			�t4!�

�!5

		L1-			���*2#"&=&/&6?#"&54?>;>32264&"�D<b
	3	h
1h'dH3 
�""�!2Hd'h
1
h	3
	
c
=C�""����"&462%2?64/764/&"gΑ�Α���ee�8�Α��V�ff�����2"&4'&"2?64�Α�Αj�ee���Α��V�ff�����6462"2?2?64/&"�Α��V�ff�YΑ�Αj�ee�����"&462764/&"'&"2��Α��V�ff�'Α�Α���ee�����B�BJ7"&?6+5#"=4;5.54632+>7#"&?6+"&'"264
DD#R044$9((7$440R#DD ���`DD'1�(
2(98'2
(�1'DDIWWI ����&2%2#!"&=46;5462+"&=4&#"54&"26���Y}Z
 
+*p""���f@ZY?

*+g�00����2"&4264&"62"&4264&"�Α�Α��ll�l�jKKjKf4&&4&��Α���l�ll��KjKKju&4&&4x�$"&46:"&4$2"&4H*<**<t<**<*��<**<*�<**<**<**<**<**<����2"&<62"462"B<**<**<**<**<**<*<**<t<**<*��<**<*����);2#!"&5463264&"265.'"3;265.'"33���,((�uS<U��~f����`��((Su#U<}�#�f����2"&464/&7�Α�Αl���Α��k�����2#!"&5463!2=4#!"���,�����`��88����!"&5463!2'76/&'&���`��Fh `��b��Fh����)!"&5463!2?6/&7'&"?64���`��	9�7g7 `��.�9	�8	7��A�@&="'.54>3546463276#!"&546;2+!8�-?0	+-FJ/��
��y	3@�H
';(
O)*>&	H��Y`������>2"&2"&46&?67�GΑ�Αv�B���Α��B�B����#!"&5463!2?6&+"���`��||�p��`�||����5463!2#!"&%'&;26`��d||�`���||����!2#!"&54676/&0`���||���`��||���B�B%#"&'#"&=4;&7#"&=4;>32'&#"32+32+32767	Mp!oH(>�
��
rA*",VF@P	,(#	
		'/��@�1%2#!"=4;5#"=4;54632'&"32+354634��$O=7/		7"TT{`h(�(B7G#
$!@(3����*�A7+"&="'.?6;2654/.'&6;546;22'&+"�,-:$	 	0&"

B
g".A1	 	0&"

B
	�
T-!'0		0"	


4"1G0		0"	

	��@�4#32++"/&=46;267#"=4;&+"&=43!24I	;5L9�S�T'��)U(`(8F��5 (-(��n�:232+32++"=#"=4;5'#"=4;'&6;236?63_P:Xll8llX:PA77�� % \\ % �qH%#q����)27#32++"=#"=4;5#"=46;54;2'32654&#�\��;4444�@QQ�M$((#� (44( -�O�Qۖ)#"(��@�ENRZdh#32++"/#+"/#"=4;'#"=4;'&6;2376;2376;2327#32>?#;'&'#7#136?#4?FU*
9	+7*
9	)TF>0*
m	,
n
.0�x&Q��'Q (�		��		�( (Q		VV		VV		Q(�66/�  	66�  ����;#!"&546;#532�
�
��

Ƞ�
b8
��

�
z�b����)5>;#!"&546;54+";2=4+";254+";257#532�
�
��

�@������`�
b8
��

�
��LTz�b������5OR72"/&6;46;2%232+"&=4?#"&=4637+"/#+"&54?6;23'�PP0	 	 	=8		�	=8		�	G	;*4 ```0		��@	
F	 		
F	 	U	

	�e0������5OR"&?62++"&5232+"&=4?#"&=4637+"/#+"&54?6;23'PP0	 	`	=8		�	=8		�	G	;*4  ``��		0�	
F	 		
F	 	U	

	�e0�����%5EU%2+"&=463'2"/&6;46;2%2+"&=4632+"&=4632#!"&=4630		@		@PP0	 	0		�		�		�				�		 	 		 	@``0		��	 		 	�	 		 		 		 	�����%5EU%2+"&=463"&?62++"&5!2+"&=4632+"&=4632#!"&=4630		@		�PP0	 	p		�		�		�				�		 	 		 	``��		0	 		 	�	 		 		 		 	������4<R"&54?6;232+"&=46;56&/&767.7>264&"2"/&6;46;20	
0			`		
(>*,


	$+
"�PP0	 	`	 		p	 		 	@�1'3>=&\``0		��������<R%6&/&767.7>264&"'"&54?6;232+"&=46;5'++"&5#"&?62J(>*,


	$+
"	
0			`		�P0	 	0P�1'3>=&\�	 		p	 		 	@;`��		0`���D72+"&=463264&"32#+"'&#"&=47>767632h

P

X e#


*!0H#5�
�

�
�y?#.) �M,:$���D46;2+"&56264&""'&'.'&=463276;23+
P

P
(5#H0!*


#e �

�

2��:,M� ).#?$����"2"&4++"&=#"&?6;732e6%%6%�8
 
80%%�%6%%6��h

h�����$2"&42++"&=#"&=46;7E6%%6%p

@

%%�%6%%6k�
�

�
������/72"&4/"/&?'&4?'&67627664&"�P88P8V

^!
d0/d
!^

^!d//d
!cKKjKK 8P88P/d
!^

^!d//d
!^

^!
d�KjKKjK����"&463276j��j/7�]$h@�Ԗ^6^y-2���	%3!#!"&7;2=4+"%2#!"&=463 �
��
�hh 
	� 	
 ��
��
0		0
�����?E%+"/#54+""'"&4?&=#"&546;5'&4623762322#4
7=	
6(33(6
	=7

8/	
6�6
	/8
��\B�
 <
	7 �� 7	
< 
;.
	77	
.;B..����!"&5463!26=4&���`�|| `��d||�����2"&44&"2�Α�ΑH/B//B��Α�ΈB//B/���*@%&/#"&'&54632+3276'#"&54673267�A>� (# �		y�	9%�W5Ig=2B.*?>
!	��&$%!	 	 {7/:gI7Y'3.B7)����:%2+"=&=4?5&=4?54;27676265463t{eP1		71		78�		��		�Fb�dp�)
)
E3)
)
�MH����3<%#!3#5#"&="=435"=435463352#!226&#"Q//4E��	�(B+*7"    "7*+B(�	E5�4
#$#��%@((@%��#$#
p((@����%=2#!"&546322>36754&#!"".'&'3!265����
J(
��
(I	I

���`�5 

 	5		5�

����%9+#!"=#"=4?622#!"=4637335335332!54;��x��
�0
8@@@@@$�`$@XX��

�����#./+"&?&54767'&47%67"&57n���	8	0
�p�p�!'"U<

ss
	"U�,q%%q,
 �`DNd7#?%2#!54+54+"#";&'&767?6'&'6732%463!!"&57;2?3;26/&+"�&�

��@@r			





 ��
��
;		<		9	 	�&&!�
��
@x
	


		



##l
��
8
		
����%5EU^n2#!"&546;254&+";26=4&+";2654&+";26=4&+";26=#"&=#'2+"&5463�

��

�
	.	�	 		 		 		 	�	 		 		 		 	0	��

 

 
��

�
	.	
�� 		 		� 		 		y 		 		� 		 		w@	0�@
��

@
����)5=IUa2!54;463!2;2=4+";2=4+"2=4+"354+"754+";2=4+";2=4+";2��@
P
��((((4(t(�(((((( �

�8�((l((�((�TT�((l((l((����)462"6+"&=#+"&5'&462376x*<**<�	_



_	
VfV
Z<**<*P
^��

pp

^
	WW	�����"*262#"&#"#"&546&.>.>.6.>�L\>&"LM"&>,*,�/-/-�,*,E/-/�C_&&_j4-
4-
&A7&A
-4
-47A&7A���6/&=46?7575����������N�
hh
�HNN��P�B���!'+/37%//&=4?54?65'75'57'57'�dhhdad

d"UwfffUUfffVUUfff�	n
2442
n	$l	&&	lI$E�))&��K'O�''*FK'O�''*�����8T7/;2+".?'&6?67&"/&?6276/.?+/&?6326/&?6�	(3
44$6	3)	n|	$	"
j*(	n	(�	6$`PP`

"
�

Q!(0A"QI

--B
n�"A00PP0!,

���5?N]2++"&=!+"&=&=47#"/&6;7>;2%!'.+":>54&"!264&":�	
 
�
 
	<9"�"9���9
"N"
		06

  

60		* && *22
�!!���19BJ%+"&=!+"&=&=46?>;546;232264&"7!'.+"264&"� 
 
�
 
 +
�
+��5
�
�#0$)

  

)%0#U" 

 "�]C�������-%++"&?5#"&?#"&?#"'&?62++z
�		`		�
P	O
nn
O	F11Z[
uu
[����"&=462"&= "&= ����������G2G���G2w.++.++�g++g1og++g1����$@IM7.4326673#!"&546;&'6'.32767326'&7#532'6�3
O
��
��

�&$>$

O�
%+�(6V
��

�
�
�$/
76 &
>"	�
�������;D;#!"&546;"&'&+"&'&+";27673;2?6&#7#532�
�
��

�9
	

%
%		&
&O�
b8
��

�
�
es		s_
	�		cX		�	��b����4=;#!"&546;6&+"4'&+";2767;26/7#532�
�
��

�<#%%#<<#"#<��
b8
��

�
�ED
]^=!$^��b����";72+57#532;#!"&546;4&+";26=:>�

��
7
�
��

�5(!Q�=�
��
��

�
��!,�9����"-#5323#!"&546;"2645'&'&��
b��
��

�j''�(	g((F�b0��

�
�
((�p(h((0����&*K#5322"&47;#!"&546;3533526/&+535#535#535##3#3#y�
��
�
��

h @� 2
           W
����
��

�
     ��&W
            a����!/=F;#!"&546;54&#";67764'&7&7647#532�
�
��

�@$$!
		O
	
)@�
b8
��

�
�l�$8$8	;n
N	*u��b����4#532;#!"&546;4&54&+";26=65��
b�
�
��

�`7
p

p
7F�b
��

�
��7&

p

&7����3G`#5323#!"&546;7654/7654/&#"32032?454/0#"764/&#"327��
b��
��

�s((AA5>>�A((F�b0��

�
�
�$$==1��g=$$����
!'2"&4%&'264&"'677&'67'�Α�Α�?�P88P8 @m?�@��Α��@�8P88P�?�@m?����"46#"&'46762654&'&5 Qi�fg�iQ:Ll�lL:��Vg��gV�b?LllL?b�����6/&=6&'.7�
H
}@
 ���j
��P4M
Q%�,����%7#"'.?>3264&#"+"&=46632/546;2��gXD2@LllLI53�	2Hcg$A

)'͒7(l�l23	�2E��3�

h ����K32+"&=46;5#32+"&=46;#"&=46;2+35#"&=46;2#� 		�		 � 		�		  		�		 � 		�		`��	 		 	��	 		 	@	 		 	��	 		 	 ����!++"&5#+"&=#"&46;2�	0	 	 	 	 B^^B�	� 	��		p��		p^�^	���#Gk%2#!+"&=#"&=46;546;2%2++"&=!"&=463!546;272++"&=#"&=46;546;2�		��	 	P		P	 	P		P	 	��		P	 	P		�	 	�		�	 	@	 				 			�	 				 			�	 				 			����%%2"&547'#"&46327&5462#"'6`(88P8f"(88("f8P88("ff�8P88(
@8P8@
(88P8@

@����5#!"&5463!2"'64'73264&"&#"327264&���`�DD!!.!D!!D!.!!p��`�))!.!!)!.!)!!.!���'/7?O"&4632762?2+"43&2"=&?6'&6/&6463264&#"26�4z�zzV-)4M0.	U	;	��&		(8		h4)-Vzz�z4<+					�&		8(		����%*"&462'7&''77'77'?6'7��Α��a?"'>KK>'#?&U%>>%U&�NN'Α�Α�:T6**6T:B4"MM"4\88\
���!-9EQ]iu�����>#"/&5057&0#"/&54+"=4;2+"=4;2+"=4;2+"=4;2+"=4;2+"=4;2+"=4;2+"=4;2+"=4;2+"=4;2+"=4;2+"=4;2D��D
+W``W+`((`((`((`((`((��((`((`((`((��(( ��`((XD11D

E#
<##<
#E�(((((((((�(((((((�(((((���	1;?#546;246;#+"&=>%+"&=#532%2#546353�`	@	��
` 
`
�
`
 `
��	`	p@�00		w
��

,,G)99)G,,

��s	00	�������#+#54622+#5.=#"&=4637#5462@@0		I7@7I		p@�``
�	 	 9YccY9 	 	�``
@�&2>JV2#!"&546;54632=#72=4+"3!2=4+"3'2=4+"3!2=4+"372=4#!"3(
�(!
(
(��h�8�h�����
��!

����``((������,'& /&47>2"&4%'&"/&4762{"n��n"W��6%%6%"?�?"W�%"dd"Q99��%6%%6y"

66

"L����/?O_o2#!"&546354&+";26=4&+";2654&+";26=4&+";2654&+";2654&#!"3!26���P&&&&�&&&&�&&��&��`��M&&�&&{&&�&&{��ff������#.4'&?66754621%#"&547>"&53z	
��	
�%=8H	�~��	�4&�


	�

	p1


V:,C
��

2�%����!2#!"&=46;76;2!+"&�		�`		x	r	�����	 		 	

�MS������12"&4654/.#"&546326?654'.#"32>�Α�Αm"#'("$5>RQ? 8��Α���"
0 !+#R=>S����:F2#".'#"&546326;2>54&#"3276#"&462654&#"j�JL
*,4Q9*- jNLllL6-
	=Jg��Q%$�|d?T91BVy
2JVl�l	(�Α��)) ���#?+'754"/&4?62763~�~-8  �8M
)�)
Ms~�~  8-`8PM
)�)
M�����+70#"&532762#"/&54>76�XF:@@j UP.
@	'%?�J8@XC


D:�a5	#8����#4?JU%"&""&#"#"&"#546;5335335332!526226226323"&546523"&546523"&54652�'/''(
'/'@@@@@�@''/''/'
'��
 
r
 
r
 
@      P�������`      @
%&
%&
%&�%2#!"54;2%6!57>��(5Z��W
U@(h����h�r����!�#%2/7+5463&'&676
=��	�
Y���<K`�wZ�S:
�A
�	���+�`\�	�2%2#!"&546;22/"//&?627'&63�		�0
	 	�	 `

I.D

II @	 	
P		�� 	v `		J.E		JJ @�2+"&463264&"264&+�PppP�PppP�KjKKj�5KK5111�p�pp�p�jKKjK�KjK7�7@�2+"&463264&"�PppP�PppP�jKKjK�p�pp�p��KjKKj������7;JPf2'.547'+#"&546327#"&546;23'#"&=46;263&267#"&?&#"?#654&#"&/5KK54K)V
4E,5KL41
W	r3		@
N��+J(	Q-	!//�J�$�"2/!

-

-,M55JK48&�*6K64K0

			}J&vI/B/`x( 0`0"!/H
	G,���4<LT2+++"&=#+"&="&=#"&=46;5462264&"7!26=4&#!"264&"�


 
�
 



�����0

�
@
P
� 

  

 
�
P
0".."0��]
�

�
p�'?2#!"&5463&546?6'.676/&&546?6'.676/&��`�=@RA?S�>@RA@R��� �%"4./6%"4./6����94&++"&546;2+"&52+"&546;23265463�!p	0	
�8P	0	�	P8�
	0	p!	!��		�
P8�		0	��8P
		�!(	��B�0T%!!2#"&'&7#'.'&7#"&=46;2!2'#54&+"#";;26=326=4&���
 ! �#FF

g
	�/t0		0		0		0		� #! !"W

-��(		(		(		(		��B�0C%!!2#"&'&7#'.'&7#"&=46;2!2'#54+"#"?6&���
 ! �#FF

g
	�/y++DD� #! !"W

-��<<DD����;C%32#"'+"&'#"&=463267'&6?546;546;232%7625�=,

X70�07X

,>
F*
@
�
@
*��v
vK")

;!!;

)"F
#�
(

(
�#
�X&&X����26:V%#!"&=467'&6;&5&54767>?6327/77475#"'0326762676�#��%
:@F

F@;
� 2�*2J,42.	�=#--$><!

1"		"1

!�x( �� (�������GVl2'"&547'+#"&7>767&+"&546;23'#"&=46;276;2+6267#"&?&#"%6&#"&/7>4KL64K-

TE,6KH2 8

8E�B		P&-

R ��(	Q)!//�0"1

22"+K46LK4;'B$
*6M63H

( 		&*
 
7�K/B/L"2Q
R "0+���#?%"&54672654&'56&"&462"&=46;2732#+"&5pAO�ԖOA3=z�z=3M6%%6%�
&

@
v.(88(.	!!�%6%%6�
``
`

�����
)%3"/3727#'&"'&"#&6?62762@m��^9�$!w1:$f!$&n''n&�,��H		
%i(7		b�	
V(i%((''�� �!)32++"=#"=4;5.5462264&" ?1$$($$1?TxT�/B//B3N4($$(4N3<TTB//B/�� 2/"&46327'&63264&"tQTxTT<*#P�B//B/�OP#*<TTxTQ��/B//B�� �;C%32++"=#"=4;5.547&'&'&6;227676;2264&" ?1$$($$1?3&(
F
(&3�/B//B�3N4($$(4N3C+ /

/ +"B//B/����192/32++"=#"=4;5.546327'&63264&"tQ?1$$($$1?T<*#P�B//B/�OP#*3N((N3<TQ��/B//B����OW2/32++"=#"=4;5.547'/&?'&=4;276627'&63264&"�Q?1$$($$1?			O	#T#P�B//B/�OP#*3N((N3*#	O	Q��/B//B���!)W32++"=#"=4;5.5462264&"32++"=#"=4;5&'673264&#"&'632 ?1$$($$1?TxT�/B//B!$$($$"!//!"'2<T?3N4($$(4N3<TTB//B/�4($$(4/B/ T<3N���!K2"/"&46327'&63264&"%2"/#"&'67264&#0"1677'&63T
1TxTT<*#0�B//B/�
1T<8Q!/B//!!0�O0#*<TTxT1��/B//BQO0#*<TJ7!//B/!1��@�&HP2"/#"'673264&#"&'6327'&63232++"=#"=4;5.54264&"4
1T<2'"!//!"'2*#0�oxT?1$$($$1?oB//B/�O0#*<T /B/1@T<3N4($$(4N3<�/B//B��*22//"&546327'&?67'&63264&"t			TxTT<*#	�B//B/�O			#*<TT<<T			��/B//B��!�,47"&47675#"&=46;5#"&?6+32+64&"�*TxT*(88('//B//�*xTTx*	(88(	�/B//B/0�P(0%&=#+"=#"&462354;2354664&"�		8(	*xTTx*	(�//B//�8(*TxT*(�/B//B/�� �+"=.5462264&" ?1(1?TxT�B//B/3N��N3<TT�/B//B0 P"264&2"&4�B//B/�xTTxT/B//BoTxTTx	���/7?OW_!"&=463!2&"264&"264!"&=463!2&"264&"264!"&=463!2&"264&"264�@

�
3NX�@

�
3NX�@

�
3N 
@

@
X�
@

@
X�
@

@
X����#+?%2++"&=#"&=46;546;2"&4622#!"&=46;27p		@	 	@		@	 	��jKKjK&7O��O7#L#�	 	@		@	 	@		@0KjKKjkO7**7O����#7%//&?'&?676"&4622#!"&=46;27N-..--..��jKKjK&7O��O7#L#�.--..-->KjKKjkO7**7O��+6"&462%2+"&=!+"&546;235463�B//B/.B	 	�	 		 	�	�/B//BQB.�		00		`		А	����'/##!"&?"&546;254&#!"3!26"264�N4?��?4NO1�2N0
��

0
�.!!.!`�'9229''99�p

p
6!.!!.����'7?G##!"&?"&546;254&+";26754&+";26"264$"264�N4?��?4NO1�2N�
h

h
�
h

h
((��((`�'9229''99�p

p

p

p
.(((( �`!%!!535#7232+#!"&=463!5 � �  

��` �@@�
�
�`�� �`!%!!535#7232+#!"&=463!5 � �  

�p�� �@@�
�
�`�� �`!%!!535#7232+#!"&=463#5 � �  

�� �@@�
�
�`�� �`!%!!535#7232+#!"&=463#5 � �  

��� �@@�
�
�`�� �`!!!535#7232+#!"&=463 � �  

� �@@�
�
���D�%#&/&546.j81
5W	w��Y	
�	�����E#"32+72#".'#"&=4632=#"=4;54"&=4632>32T$$T-.T$$T-.�0p(p1((0p(p1(���,8G32+"=!+"=4;#"=4;2!54;2+;2=4+"54++;2�(��((�(����@T
H�@��((@((���H
4��@�+]7+"=4;5#"=4;2!54;2+32+"=732+"=!+"=4;53;26=4&+5354;2+@44 44�4��4�
@

h4�4�44�4@�44H

@
H4����%"!"&5463!2+538
��

�
b
��
�
�

��7b�
���!2#!"&54633#!"&546;������0/��� �`0 �!/������.1]%"&5054676762'3"&5054676762'3'2#!"&=46;&'#"&=46;6232+KjK

<

�H��KjK

<

ȐH		�`		�&�		�N�		�&p!//!<4&(59	��!//!<4&(59	���	 		 	')	 	  	 	)������)/2#2#!"&=463467.5"&=4634&"h

D55D

��

D55D

=V=�

CkkC



CkkC

�@;UU;����)/52#2#!"&=463467.5"&=463."65#h

D55D

��

D55D


2<2
���

CkkC



CkkC

��$,,$""����)/2#!"&=463467.5"&=463!2265#hD55D

��

D55D

P
�V=��CkkC



CkkC



�U;;����)2#!"&=463467.5"&=463!2hD55D

��

D55D

P
�CkkC



CkkC



���=2+"&=4/&=463254632354632354632346�0
�
p p�t

d+B0�0/ ������22+"/&>546323546323546323546��}
!	 @�q�!
,���ױ�W���+4635#"&46;5#"&46;5'.>7>+"�  �в$�	
p�P	""(E$%K@� ��@�$54/&+"&=46;2?6&+"&=463!2�p�
%|

�!
N� =G
%3	!
��t���H+"/&546324/&5463232545'&5463232?>32132?>32�D	8%6'l
=*
&38&"/��#-%f9)(�
}�
���{������-159%+"/&>46235462354623462#37#37#3� ��
!	 """"�XX�`��!
,�((a`````������+$2+"/&6?'&>354623546234�" �@K%$E("�P�p
	�$���   �`F2++"&=#"&=43+"/5#+"/#+"&76;236?6;2U6Ut
6		2		6A	+	+	A`+��+��
�6"UU6�(5 ����*%+5326"&462&'654+";26=3;26ۑΑ��+&jG		
,�8'Α�Α��O2Y
�

HS
����#'2+32#!"&=46;5#"&5463!P�		�`		������ 	 		 	 @�� ������+G!"=46;54;2354;232!2#!"&544+54+"#";;2=325��X0(�(0�L���H<(<<(< $4444$ ���<<(<<����+7!"=46;54;2354;232!2#!"&542=4+"3��X0(�(0�L���<� $4444$ ���((����+G!"=46;54;2354;232!2#!"&5476/&'&??6'��X0(�(0�L���
0			00			00			00			 $4444$ ���0			00			00			00			����+;!"=46;54;2354;232!2#!"&54'&'&?6��X0(�(0�L���Y	j.			R	�	 $4444$ ��`	j/	T�	���6#!"&546;276�
�0

p
���

�

�XD�� �	727"/2"&4724#"2546pxTTxT�&6(��!!�TxTTx6&(�����$9#!"&=46;546;23253+"&2#!"/&?6;53�+	�

�	 	�	�@	 	�

�	++	�@k,	
P
			�9pp		
P
	,,	  ��@�4?&576������J8��?
0�@���
��8����2+&=#"&5463�&&�}
`&&�&��&^T& &����'2"&454&+";26754&+";26�Α�Α�	0		0	p	0		0	��Α�η�		�		�		�		����2"&454&+";26�Α�ΑX	�		�	��Α�η�		�		����!)3#!"&535462#354&"264&"264&"``/!��!/`KjK��&4&�� ��!//! 5KK5  &&���@�)5AM%+#!"&/#"&=46;7>3'&>3254&"26754&"26'54&"26@
��

CkP�PkC
��p��
��

�mm��p

p

p

p

p

p
������CG+32++"&?#+"&?#"&?6;7#"&?6;76;2376;2327#�
OK
P
(b
)K
OK
P
(b
)K�c

�	(
V
	RV
	R	(
�	(
V
	RV
	R	���������-6"&462&"2642"&4264&"32+"&76�\BB\B\((�\BB\B\((h ��"	p�B\BB\^((�B\BB\^((��0
�
����G"264$2"&462"&46"264>."'&67673>'.56V�zz�z��Α�Α��pp�p�RHLH5	




	�z�zz���Α��Yp�pp�DM

/A.!!.A/����B#"/67'&/"&462&/&#".?5#"&=76;2|}~�?$$$ofB6

= ?��Ú
X<$$��'l�	
��P
_O		�4C7#76772+57#!"&5463!2'&+";2?3;2674&+";26�		�/��`���9	$9	4	�5.99.5�

1b_�� ��
		
V-3�4����!3CS.676#"#'7232#"/&764'&?67/&764'&?6/&764'&?6a@-.?
@	 8  8 @�		_--
	%%	
&

;@��@
(
QZZQ
(�"V6�6
	-t-	7#X#
	B	��'/7?GOW_6"&4622"&42"&42"&42"&42"&42"&42"&42"&42"&42"&42"&4�%6%%6(6%%6%�6%%6%6%%6%��6%%6%�s%6%%6��s%6%%6��s%6%%6��S���7?G\`7"&5462"&54&"&2#"&4632654>54&""&542"&42"&4%"&54=.'.>'7�/B/1�g?-FdFSmQ@
Qf��"P"�!//!
�gI!2-?%&2FF2I�m�Do
�V�"P"������1?q&2#2#'&/&?6766766&#"32763&%.6767&'&6767'.7>7"'&63"&7>376"#32654&# !=+^C,:)
F
"(-+
%

p:)
F
"(	-+
	 !=+\C�

3

	!Y	!JZ9


A4!JZ9



3

	!G�����7CP7"&5462"&54&"&2#"&4632654>54&""&54%/&?6"/&?6�/B/1�g?-FdF�		W	W	��		�
		��!//!
�gI!2-?%&2FF2I�	W	W		��	�	�	������2?k46;5#"&546;5#"&546;5#"&746;'.>+"&7'&6767054/&'&6767'&6767'&676'&>[
>~��}�
	|PkI%		

�
={4	
N^
	_M
	g$Z
��.

#

0ZC	
cy
	zb
	�&����@�-B%&'#"/&'&767'&6?6632654&#"6"26591W+
��)w
}q<1W+
5(*Y��"P8*&$�T+:
e	
��:��(fT+:
H
W�'38P	
$=���� (/7W2&/76'&"&'&4757633#"&5:64&"3#&"264///#576;?�
	7�

P
"


b	
�`@
)			��`
				�
		
 	5[7	
TR;�	7�vI
!Z@�
			)�
@			

	&
R�7	K<���E#!"&547670>321&0#".1&'&2>767654'�`)||)B#GG#	$FF$ Z		Z B3		32


2����'/C#32+32+#!"&5463!232&"26454&+"'#";26���@�4&&4&0'*'
	�	
 @(@(0�0( &4&&4�""��@�+7CO2#!"&5463"26454&+"'#";26754+";2=4+";2=4+";2� �4&&4&0'*'
	�	
����������``&4&&4�""=HH����2"&4$"26427.#""'&#"�Α�ΑH44H4��94 ( 4��Α��14H44H��D!!����#72#!"&5463";264&#"26454&+"'#";26P��`		`		4&&4&0'*'
	�	
��`� 				�&4&&4�""��@�	+7?Q2!5463!#!"&%;2=4+";2=4+";2=4+"&"264;26'.+"'#"��0@� `�������4&&4&�
�
"*"��p0���HH�&4&&4�
�����2B#0#"&54754622654.'54&"37"&5475462� K55J 8P8`!/(/ A%6%  `�%05KL50$�(88�h/!			��
		 0P%%%�

������"B7"&54754627#0#"&54754624.'54&";26�%6%    K55J 8P8(/ !/@%%%�

�0%05KL50$�(88(��			��
		 0/�����"B7"&54754627#0#"&54754624.'54&";26�%6%    K55J 8P8(/ !/@%%%i

i0%05KL50$�(88(��			��
		 0/�����"B7"&54754627#0#"&54754624.'54&";26�%6%    K55J 8P8(/ !/@%%%)

)0%05KL50$�(88(��			��
		 0/�����:6"&4627#0#"&54754624.'54&";26�%6%%6E K55J 8P8(/ !/[6%%6%%05KL50$�(88(��			��
		 0/���'/7?GOW_gow�$2"&462"&4"&462"&462&2"&46"&462462"&2"&42"&462"&42"&42"&42"&42"&462"&47"/&4?&547'&#"#+"&5462632762)			)			7			)			7			�			@			 			i			)			7						7						I			&� 
	 	Ie#
. �			i			7			)			7			)			 			@						)			7						7						I			�� .
$��		/4M$
 ���I75!+"&=!+"&=&%2#!"&=46;5462662"/&47&7'&" � 	 	�	 	 �		� 		)9-#
i
@00+)				)�				�)
i
#,	�����+NV"'.542''&546'&'&7654&2&767>54&#"'.542"&4J�u.W=9R0;)%5��F8%,hHIg*$9E�6%%6%)U,,U�
+>=UQ9A,
()95%+�]BlN.IggH-NlB]%6%%6���2#!"&546354#!"��`������`�TT��`%2#!"&=463��``  ���!)+54&+5463!2#!"&5463!24+"30/!� ��� D������!/0��� 04	���/?O_o�+"&546;2++53232++53232++53232++53232%3#"=#"=4;5473#"=#"=4;5473#"=#"=4;5473#"=#"=4;54���`********�********��`�N0f0f0f00`0`0`0�������%/&/"/+"&="/&4?5/.?/&?'.?>7'&/&6?'&?6'&6?65'&4?6546;2762?>76/76�!?5

 	
6?!"F@@F"!?6	 	6?!
"F@@Fg

G$N5
(		(
6N$G

%%

G$N5
(		(
5N$G

%%����	�'"/&4?&67>�(0$X%�	3	�
$1��*�1$
�	3	�%X$0����);+"&?.5476227>56227562.>32+"&7�% 

@

 %,,,y,"*9

8�_"&7�

�7&"_�G;����#VLB&
�0

����$2#"'&?632676&+"&=466f��g_G
	(0?FaeEB0*�
$G��Α@	(*bEGc,*
�$E����	!-E!#!"&26=4&"26=4&"26=4&"%2#!"&=46;76;2 ���				`				`				@		�`		x	r	P���		�		�		�		�		�		�	 		 	

����9&#"+"&7>3276+"&73232676;2#"'&=46s1B:[
9�ZcH$
��׆*1B:[
9�ZcH$;-G8		WsE$�
y*-G8		WsE$�
����"0%"&54675#"=4;2+7654&+";2�z�zeKx8,			"�((�VzzVMu"(("	$			3b������1%&=#"&=46;546+"&=46;2+";2��

����T(88(TT

T��`
`
`��8(�(8(
�
���1!#"=4;26=4&+"=4;2'&=#"&=46;546�TT

TT(88W��

�(
�
(8(�(8��`
`
`����$276+"&?&'&3276#"&46dG$
�*0BEeaF?0(	
G_g���E$�
*,cGEb*(	@�Α���08DL%#!"&5467&546;&546;2654'6323232$"2646&+"26&264&"�#*��*#*&!/	(8&*����<8<%O(**(#*&/!8(&*#[x  `��@�!)4%#!"&546;3%#!"&5463!24&"2!5'&'&���/!������((D`X�( �!/PD((`0pX�(�����
!(/&?62'6&?6?6&5#75�.	o		.(<�	o		��z\
�

�$$ @2.		o	.<(		o	��z 
�

�h0@ $�����&?'762#���r
�9�9(c���
r)(9�9�����	'762&76?'/&?62�9�9(�US�Qr
Q�fw!v(9�9(TS�Q
rQ�fv
����732"/&6;4;2�.VV.8fVV.��M�37/&4?6!2#�VV.�.VV.8M�3%546&=!"=43:VV���.VV.8
����#"&?62++"5X.VV.8VV��������;%+"&?'+"&=467'&=46;27'&6;2/76�
p$kk$p
$kk$
p$kk$p
$kk$hp
$kk$
p$kk$p
$kk$
p$kk$����)#!"&546;46232&"26454+";2���P&4&P�H��P��`&&4d��M346&=#/&4?63zVV�VV�VV..VV.
����72"/&6;5#"&?62+�VV..VV.FVV�VV�����"&462#"?6&+54+"��Α�ΓGssG@'Α�Α�tsst����"&462'#54&6=32=4gΑ�Α�tsst8�Α�ΓGssG@����2"&43?6/&#"�Α�Α�tsst��Α�ΓGssG@����6462"75326/&;;2�Α�ΓGssG@YΑ�Α�tsst���4%2#!"&546;2+!54632/"/&4?'&63�	���		�@	X
$��$�	�`	 	��p	@
�$��$����##!"&5463!2#"?6=4&���`Xp �			� p��`$ �			� p
���+5463!546&=!"&2#!/&4?6
hPP��
�

��PP
0PP0�

0PP0����0%#!"&54674546326326&+54&+"#"7,:K5��<T6*^B,J(8�A	0	Aj�	F.5KT</JB^,$8(ip		pj����0%#!"&546745463263226/&;;26=,:K5��<T6*^B,J(8�jjA	0	�	F.5KT</JB^,$8(Njjp		p��@�#'#!7#3#3'!"'?3&�ZeE0E��E�PEee{G�C{e������� ����B������E�%"/&6;#"/&6;232:hh
@T8�
@8pp8
������E�++"&?6;#"&?62:
@
�8T@
hH��
8p��@�&2+"&=4&#"32#!"&=46;54i}Z
 
+*0����Y?P

P*+G��F@����.5462"&264&"�="
p�p
"=B//B/6#X$5"PppP"5$X#
�/B//B��`�0R232+"&=46;5.=46;26=463"&=462#";#";#";P	WA8		�		8AW		B19T	hP88P8UUUUUU	0Bc	"				"	iD(		*3NM80	�8(�(88(  (��@�#2+"&5463264&"74+";2�c�����`�� Y8����-27?DI%2+"=4;5#"/&54?6;2%2#!"&546334&#5265#264&"5"75#`@

��

@%%@�P88P8p%@@%�7
X�
��

@
��%�%�B\BB\b@%�@%������
(%67#"/&?6'&?667'&?6Py�p�
��	

a<0heC>Wh0�

�

	��$%2p������+2#!"&5463"26454&+"'#";26P���4&&4&0'*'
	�	
��`��&4&&4�""�����76&764.'/&4�4PL20#
2D1��

P	)B,,U+@*X
�����'.546?62>7'�,FH$*M@'�Kc�lN�[<C_�GP�F%�lJ����#2#!"&5463264&"74#!"3!2�������H��`�� Y8����@�
#+<FN2#!"'&54%"32?461.264&"6264&"%6.3654'73264&#"264&"��'	�D	' 

			�C	=#	n	L


.��wNCCNwi
���5
		�%�@�/!!$3#!"&=264&#5463!2"'4&#!"3!265�@���� �L
��

P
 �t(``(``8

�

���$"&4622#!"&=46;27<xTTxT5K�`K57#L#�TxTTxtK55K���+2#!"&5463'76/&'&??6��`LCC		(		BB		(		CC		(		BB		(	���`��BB		(		CC		(		BB		(		CC		(	������'?'&6;2//&+"&=4676c!p
c�c!p
cc
p!cbc
p!c����'7+"&=4676?'&6;2//&�]!p
]]!p
]�]
p!]k]
p!]���� &,%#"'67'&477&'6267&'%6'77&7p!HddH 66 H�H 67���T'FF'!D�D!&FF&!D�D"MM
CC�MM
BD����
 &+'6'676'7&'%'67%&'667�*N5i.9S?��N7M
<.�4b�.8S?^N7M
��.�4b�*N5�M7N,�.Fb4"N*E�.�?S,.Fb4"N*E�.�?S�M7N,����2"&4264&"6264&"264&"�Α�Αk`��Α��'Z����;Ss{�7'&546;5#"=4;54;232+3232+#65#"&=463+"&=4?546;27'&=4;2354;2354;2#7354&"+"&=4?546;2J"	99	"
		�		�		�			�	t6~/ 		w		�			�	�Z	  	Z		A??A		�
		
		�
;;
RP  		�
		
		��@�#37467.546;22?#5&2#!"&=463G*
@
&!ld8�8(		��		�5�"

=le<+C,,]	 		 	 ���#'+/37;?CGKOSW[_cgkosw{#53#7#53#'3##53#5#5#535#5353#5353#53353%3##53533#753'533#%3##5353'#5373#3#'#553%#53#@�@@�@�@@�@@�@�@��@�@@@@�@@@@��@�@�@��@@@@@@@�@@�@@@@@@�@@�@@�@�@@�@@�@@@@@��@@@@�@@@@�@@�@�@@@@@�@@�@@@�@@@@��@@@@@@�@@�@@�@�@@�@@�@@@@@��@@�@@@�@�@@@@@�@@�@����5!2#!"&=4632!'&546;5#"=4;54;232+�		��		p
J��J
�((0((	 		 	 
��
00((00������%-=7&=4?'&54;2!546?6=#"'4"2642#!"&=463	�Oq��9
	(		��		��
	pP�&

2���	 		 	��@�#37.546232+#6=#"&=4632#!"&=463i=V=		�		�		��		�/+==+/	 	P++P	 	�	 		 	�����G"&4622#!"&=463!'&54?6323>546;22676;23276.!!.!x		��		�f��f
'"'
P!.!!.��	 		 	��	



����#+;2!65'546;23546;23546354&"2#!"&=463p	@
��
@	8	0	P	0	X�		��		�	� VJJV �		00		00	��@

@�	 		 	����/S2+"&=#"=4;54632++"&546;2'2+"&=#+"&546;235463h

0

@
0

0
�

0
�
0

0
�
`
��

h0h
�0h



h�
�p

��

�

��
����
Q'&'&'&'>7'&'&'&??6/7?6/7?6/76/&�
�63�4
�63�g��gf�45��[45��o��o�T����!+5?73+"+"=4&+"&%#.54622654''4''32674''326`�

(

@5-�-5z�z�H@ 


�7]]7Vzz�/M�<62"'67"&5�Ԗ�Ԗ7��7�Ԗ�P88P8((n(88(����1%/6?6&67>32"&4'7>76W
�65_<Q�C..C.�
�";V"�
�m($*
 pJ�/B//Bp
�+m7+�	���!!�@����	�
'%&'762&/"/&4?'.72"&4�0q"�8?�?/�)$Y5g#	>P88P8� /�8??/��$g5Y#Q"�8P88P������	%-:7&'>7'&67&'&'667&'67#"'6#"16&�5K$`D$>_GE#�70Z0344�LS)(F�>!3v�E[F;
�I\,-'�!c=#.Gr 2Oc?Q�&��]2�U(
1)+,GR;$/�PE�������:BJRZbjr2+"/&>5462;2=462;2=462;2=4264&"6264&"264&"6264&"264&"264&"6264&"��}
!	�							I							I			)			)			P
�q�!
!�

��

��

�H
��			W			�			W			)			I			w			 �`	'/746;#"&52+!&"264"264&"264"264&``&@&&`��Fn &��&&�&@��@���RnR���0#532'#617>3!#!"&5����3c�`�!������@�)>%2+"&=46;75%"&=46;7532#2+"&=46;750		�		P  ��		P  P		�		�		P  �	�		�	``@	�	``	�	@	�		�	``���92#!"&546;546;2'3554+54+"#";;2=32��`P��� 808808@�� 00   �088088����
"&5462654'�Ukk�kj,T6``�M�:^vv^:���5*8ii8*��G�%/%#"/&'"&=46326763254&"7'&#"+'$<"�B\BB.-@
$<"��(#RA�']1�
�.BB.�.B>,!1�pp-:]	)����-2#!"&546;462&"2646/&'&7P��P&4&6a			j.			R	���`&&�	j/	T����%-5AMY2#!"&546;462264&"6264&"6264&"6"26454+";2=4+";2=4+";2P��P&4&��h���������`&&��RR���hh����3;CK[$"&462&"&462'&67676563267'&'#5&$"264&"264&"&4622#!"&=463�			�H44H4��7VJ<E /

27�81
7n�			�		��		�			G4H44H�	
 #
	[[n			�	 		 	������<AGM>7.'&6;2!676;23&'67+"'&'!+"&67#7!36!&'# B--B 
 8 

*M1,"
 *9
 �� 
�$����	��
�./DIID/

(?9@$Z8		h����B�2:%'&6?7'76&'.'&7#"&=46;276264&"&5>!=!=<���D-+,\Y		pd-���((��cc�5)G,8,7#	 	��$G�((����B7"&546;7532#2+"&547#"&547#"&5#"&=46;2�		�00�		 		S(�(S	0		`	�		�  �	�	@	 				p	 		������6#532;#!"&546;4+54+"#";;2=325y�
7
�
��

�@808808W
��
��

�
��88088����/8;#!"&=32?3264&+'&"'&+"=4;546;#532 
�
��
F#
9Z		F#
9�8
ș�
8
��

�Fr,		Fr(�
i
���@�	
)346;#"&5!%;;2=32=4+54+"#"%2+00�@�808808P0p�@0��@�088088������@�%1=Ieq}2#!"&546;546;254+";2=4+";254+";2=4+";2754+54+"#";;2=3254+";2=4+";2 
	��	
�
�
�((((�((((�((((`
��		p
@

@��((�((t((�((���((�((���#2"&454+"#54+";2=3;2�Ԗ�Ԗp0`00`0��Ԗ����XX�XX��@�-72#!"&546;35"26426'.+"'#"3#546;2� ��F4&&4&
"*"
��
@
���```�&4&&4�

�``
����9E2#!"&546;462&"26454+54+"#";;2=32=4+";2P��P&4&6H808808�����`&&��088088�����8<@7"&=46;7532##32#!"&=46;5#"&=463!25#!5#�		p@@p		�00		��		00		`		������	�	�  �	�	�@	 		 	@	 		 	@@@@@��D�'2"&=454&"7.7>/&76B\BB\B�(��/vT"�S	#�/�B.�.BB.�.�pp�#	Sv/7Tv/�"����!15!#!"&=32=4+532=4+532=4#72#!"&=463 @
�
xxxxx�

��

@��

@@@�
0

0
����52#!"&=463!#!"&7;;2=32=4+54+"#"h

��

@
�
@808808�
0

0
� `��
�088088����#?G%2+"&=!+"&546;235463'"=4;276232+'"/"&462.B	 	�	 		 	�	��2f		z2L4&&4&�B.�		00		`		�	�(c		7		,c		7�&4&&4����IQY^%2+"&5#"&=32=4+"=4;2=4+"=4;2=4#!"=4;5463!232264&"264&"75'#p		08P8�8P8�������8,d�,((\((�d,`	 	(88((88(�00dlp((((�dp����#37NZ%2+"=43+"=4&'&=4;22#!"&=4635#+"=4'&=4;22+"=43x0).0$0p		��`�0$<0X0`��	W1&B%>>��	�	@p@@B9!,*AB>,��������>7//&?'&??6/7?6'7//&?67'&?6�@��&@BC87-8�-I"�"9-A��CB@&87.8�-J"�"8-������!+2#!"&562"&'463/&76.76dx[	��	/	[x[	T	#�/F�/vT	#M::c:MM:kTv/�#F�#	Tv/�����(#"&4?57?6/7?6/7?6/7>�#�dYY-22-22-23.M�!R�YYe.32.32.32.������/#"'&6?'&?67'�"�+/�"FO�"�$ R�"�EO�����';?"=4;2+"&=3352#!"&=463"=4;2+"&=335H�/B/0@�		��		X�/B/0@�00�!//!�``��	 		 	�00�!//!�``����#A%2#!"=432#!"=43%2#!"5743%+"=4&#!"+"547%62���p��p���P��P`00`00�00� ���

�W q���!22#!"&546;2654'"&462'"2654'76.�&&��&&q�qd�^^�^�""�&��&&@&-3OqqO3-�^�^^�:O����3}62"&4"&4622#!"&=4632#!"&=46;!'54+532=4+54+"#";#";#";#"26=3264&+532=4+532�			�			�		��		`		��		0`�hhhh��hh@(@(@hh�@						�	 		 	�@	 		 	`���    ((  ������"-%2?/.=32?7/76!6/.7��
��
�@@��\����\��'�66�'kkp8� 

 �8�����"*2#"'#"&>7&54264&"264&"264&"�Ԗ�j83AL9s���z�z3
19JVv������$747#"'#"&767&'&?6632@	E&(83AL,9:
��	

iI`j�9��
3
4+9�

�

	R5zVH:��974&+463!2#"!%2+"&=!+"&=&546;2!5463�& 8(@(8 &���& 	@	��	@	 & 
�
�&(88(&@`&$y				y$&
``
���Eg$"&462'+"&;26=>54&/&546;2?6&'&'54&+"2#!"&=46;#"3!2=4+67V�zz�z�"?
&
	
">
'


�

�@

 +?

l

@, z�zz��$!




$!




��
`

`
''�����	)1&'67673+#&'&6?&'&54762546264&" N5 
,pp ^BMA
k.�U}N/			;1%
E8K@�B^8H$Qh=7	
EX<!/`			��A�%%#!"&=46;76;2+";2?625���		7/ *�N		v]	x
	y	`	&		J��A�8%'&6767>"#!"&=46;76;2+";2?62m=<m���		7/ *�N		v]	�rHHrH
	y	`	&		J��A�Cl.'&67546;2'&+"+"&=&'&5474?6;254'#!"&=46;76;2+";2?62 

	$	6 

	$	����		7/ *�
N		v]	0%			%			�

y	`	&
		J��A�1$"&54762#!"&=46;76;2+";2?62HP8SS����		7/ *�N		v]	�7',pp,'
	y	`	&		J����"E7+"'&/&=4622?6/&>$2+"&=4?>2?54�9	�i
Z
&�
i�	9&

Z�M"+p		�
�

�l
	3�
�
�		p+"M
3	
l�
������%@2+++&/&6?54?26=%54&+"&=4?6;76�


&�gPPA*<*,P!�"!gg
0
@
&<�.0$'z**8%.!X~	
<�����3++"&=47'#"&7>7#6;5#462#327#4'
	�
�
�	
X?>t0pQ^Qp0t>?X
��

��
6TDl��RnnR��lDT������dm"&462"&462#"/?#"#.?6?'#&/&/"#"&/&?676546;2?676.7�((d((N)
C



+3�3+



C$
	�	
#��)`((((�pE.d L]\1G
!!
G1\]L P 
'"
`		`
"'
 �.E
����@�@HW%2++"&=#+"&=.5#"&7>32+";>;26;264&"'"4&54621&#0		1
	@	�	@	"("!	+X:�, 
i			�8P8�	�	
Q		00		QC&&7I"L@			�(88(������)?/.%'.4>?6762'67&"uO[D	�	E
�
,
"k
,"O4!Z!�Xf#	II@&W;���&.;C%2#!673264&+"&46;&5462#"3"2642.54264&"�(88(���

`(88(--8P80`

m�xP80 5S�8P8!8P8@ (88(P�8(P&V(H���2+"&="&5%3&'>@]�	 	]��@tU+h`�]�		��]@V�	=/4?���#'2#!+"&5#"&=46;546;25!�		��	 	0		0	 	 @�	 	��		p	 	0		0��������,<62"4&"276'."?62&276&"�Α��7�
%(%
&�-�-

#nYΑ�Α					o66*����!2"&42#!"&462&264&"�4&&4&�		�p]����C�P88P8&4&&4�	 	����]^B@8P88P������&.7'&6?7'76&!#"&'/&7%46264&"21M>M2�LB.-A�w
Z�((H�\]�:~�p.B?-l.^D
�@((����)19?G%+"&547##"'#"&5463!232264&"264&"%3'&#264&"m	/B/�/!((!/
�
&��0\+�V	!//!!/  /!P

`��0+�������&/'&?632576%5#!"&z

���%	

N� n"��n
��

	�!

	=��K�
���
����%�2+"546;5.?46;2��(4@	�	@4uW7��7Wu������ '&?6>323!"&=46z
��	

�M2<T)!�0���O


�

	i/=T<(B3�
7O����+3OW_7"&=46;>232+"&'7;26=4&+"/?+54&+"#"&=46722"&4&2#54@		P`P		P`P8(0(8�H$$$$�3EP
�
PE30p			W	 �	`	+55+	`	+55+X(88(Y$$$�L3
@

@
3L`					00����+$"&4622#!"&=46;27%/&?676jKKjK&7O��O7#L#T	�	Q			-i	�KjKKjkO7**7O��	R			-h	����+3$2"&454+54+";2'!"&=46;2732&"&462�xTTxT�
&


<
�(#��O7#L#
+jKKjK�TxTTxB
6

L
,L*7O&HKjKKj����;CKv%/'&=&''&'&?&7'&767667547676264&"&"&462#!"&=46;2732332?b
!!

!!
�((�jKKjKI��O7#L#


	K    0((tKjKKj��
*7O

'����$/$"&4622!"&=46;277&7%'?62jKKjK&;)N��O7#L#>�G�=*H%�KjKKjk.M=
*7O��G��*H&����#76"&4622#!"&=46;27$"&4622+46=4'6;27�\BB\B#0C��C0	!F!P88P80.B�(*�B\BB\bC00C 8P88PXB.'9+����9%#!"&=467&4?6"&547'+"&?&5475?6K��K6_���`KjKB*M6

6M_P..5KK55
>		>
;����4<D$"&462!"&=46;32730%2+"&=46;5462264&"754&"jKKjK 	��O7#&&# 

�

 /B/]@�KjKKj��*7O
�

�
P!//!P�}P

P����+%2+"&=463"&4622#!"&=46;27p		�		�jKKjK&7O��O7#L#�	 		 	0KjKKjkO7**7O����#+%#!"&=467'47&52>32#"&'7"34&#E4G��G4e�++1>%5KK5,Cg
�
�L4**4Lf�33(!'KjK5)`

����6%'.54?6>7'&"&462#!"&=46;273230n++5Ps!;`�jKKjK 7,	
��O7#L#�,M3"sN-�N:&KjKKjsDm#*7O������'&?6>32467!"&5z
��	

�I25K0&��@/��


�

	r1DK5)B
�1J	�����!6%"/&=46;2264&"&"&462#!"&=46;2732w	
\		[Of�jKKjK:��O7#L#S		]		[O
EJKjKKj�(:*7O����$"&462#!"&=4677'3jKKjK 5K��K50  `  �KjKKjlN5**5N��88�����;CKb��%/'&=&''&'&?&7'&767667547676264&"$"&462"&5462"'&#""#"&=46;3:630#327'#"&=46;2b
!!

!!
�((��4&&4&�.BA]B	

h�D/	!##
�(B
&@k    0((t&4&&4FB..BB."�


0C '	�:#
 &������*@CY\!2+"&5&'&/&6?&5463276%"&5054676762'3'1"&50546767623'		�	�
�/!.v
�  KjK

<

ȐH��
KjK

<f�H	 		W0+!/(',!�ِ!//!<4&(59	�j(59	!//!<4&��������*@CY\46;&/.?>632/+"&5'0546767621"&73'0546767621"&73'`	� �
v.!/�
�	�	`

<

KjK8�H

<

KjK8�H	'!,'(/!+0��		�	96(&4<!//1���	95(&4<!//1����;?%2#!"&=463264&"";#";#";!'#"&=463!3'#�%
��
%sH���ri�	g��QQF@% 

 %`�@@@`�@����@�!6#&5476'&'"&546
�OM{O�
����'	l	//	��	'R	����$7Ieh"'&476;2#'+"'&476;2%+"&7>&'&6;22+"&764'&63&/#/.7&54623'�"		_		#
#		#				#y"		R�1�1�&4&p`06
,
�4]+	9|9	9|9		)[6@6
,
d��
vv
:%%�t����)%/6?6&67>3%'7>76W
�65_<Q�	�";V"�
�m)$*
 pJ�
	�+m6+�	����
!#463!2#2#!"&=463!53`@�@P		��		����x��`��	 		 	@@������472+"&54632276&"&4622+&'3533!&#5463�/A�A/(P88P8P�	L�@��!`B//B 8P88P��&@@ 2.����-6?%#54&"#54?5#"&=46;546;232+4?#"&5%+5�`%6%`p0		0	 	0		0��mp	m	p�	�`%%`�	D3	 	0		0	 	3�/�	�d	����	$,45 7"&5"&462267"&5%567$2"&4&'67==q�q��qq�q�hthq�q�?!4���pp�p�0n37++++&&@&4&&4�4&&)?+�/B//B	"%+����2"&44635"264&"62"&4�Α�ΑX^BOq�P88P8S��Α��gB^ qO`8P88PH����(02/*+/#&54754632264&" (8`M=),'&,ayt/!'J�%PAepxhx=	%!/ H����;!2#!"&=4632#"'!'#"&4626?&5462?&54		�`		�(H��H(HR(RH	 		 	@(��(

+��+

����(08@HP2+"&=7>'264&"'"/&4?62264&"264&"6264&"6264&"264&"P��	
�(��(����.�1��(��(���rr�����'/72#!"&5463264&"6264&"264&"264&"6264&"�%%��%%3ss�%��%%@%���ss�����'/2#!"&5463264&"6264&"264&"6264&"�%%��%%3��%��%%@%���������2#!"&5463264&"�%%��%%��%��%%@%�����'/7?2#!"&5463264&"6264&"6264&"264&"6264&"6264&"�%%��%%3��%��%%@%��MM�MM����'2#!"&5463264&"264&"264&"�%%��%%3ss�%��%%@%�ss����2#!"&5463264&"264&"�%%��%%3��%��%%@%������62"&46"&4622#!"&=463�6%%6%[6%%6%�

��

`%6%%6�%6%%6U
 

 
����!!2#!"&=46;463!2&264&"p		��		p m	 		 	��s�����"*!2+#5326!"&=46;467264&"p		�`p���		P
�	 	�@����!	 	m�0�P%2#!"&=463%2#!"&=463�

��

�

��

�
 

 
�
 

 
���"33&'"&476&&67>7>�'
!�b'�bGE:B�)!.,_Q�'g9,'1B�5t*"-,!����@�5=32+'6.'&"?632#!"&5467>2264&"�:)�b6
	Zw	F#
 #& #O
	��&�z,:,S_#"Vi
	~,
	B0
	%}�%%C���@D!2#!"&=463'.=4&+!46;23226=.='&4?625#P		��		�/!%��&�&$4&��	 		 	U� +,p`&&�4$ 

�>&�����@�CP]%+"&/#+"&=4?>/&6323632'&'&&/&6?67&#";26%5&#";26>C0%.B$B.%0C-
C$'));7J7;))'$C
��##%$%6$%##%�F/C=,'',=C/F�&%
	��	
%&��)

%%

)������%&/&6?'.?>n��	��
	�"	�	ff
	����&.?>&/&6?2#!"&=4637


.��

��

�p

Txx
D�
0

0
������&+=%"/&6;235#"&=463!2+2#'3.#!"&=463!260
V� 	(+а		�		�]�
�}
D�!#��		F
@
s@l:@	 		 	@�]
�|/D�	 	 �`#2#"'#"&4632627&#"!264&#"�FccFQFFQFccFQFF�////++L++///`^�^OO^�^OO�@@&4&&4&@@����@�4<@%"#"/#"+"&=#"'+"&=.54>76;2264&"5@
JLL				,4$0	TFCP
.Ewh��1	;		16		JY4)D&
0.=K�c	����%'%&=47%6m
	��3	�Z
	�"	�	f����&7&=47%6'2#!"&=4637.


��

D

�p

�xDD
B
0

0
��!E!5>4&'5463!25#35#35#5!#54&"#54&"#54&"#54&"���
@
�`@�@�@�`�@		�		�		�		=cc#

��������``







������5U'&?65462#";#";#36=46;22+"&=46;5.=7z	
��	
�8P8UUUUU),		L		�		8AW4
<)2


	�

	�-(88(   0		0*&�				"	iD)(9'"����#)17=#"'&#"#"'&5463232632267&.#6264&"575&'m
+1>�>?5
+1>�>?��#$"%�B//B/` ���
>=
>d=��$8P88PT:�1
#����%#"'&#"#"'&5463232632264&"m
+1>�>?5
+1>�>?��B//B/���
>=
>��8P88P����	%1=G1!#!"&%;26=4&+";2=4+"%3!2=4#!";2=4+"2!5463�
��
�	`		`	pp��0����0	��	@��
� 		 		Xh@	00	����IUam2#!"&5463>54&/&546;2?6'&'54+"+"'&;25754+";2754+";2=4#!"3!2`

��

�-	-	�pp�PP���
��

�
��



 h����3%#32+/&?#"&=46;7#"&=463!7632�bK�

�S	

37

�K�

R


4
�`
 
j		
C
 
`
 
j		
C
 
�����%-56+".7>264&"6264&"6264&"264&"�P�U&P&(/hP)
n/3���=N&@";*P}CJm��m-S����"*2#!"&5463264&+";26=72+5����(88(`		 	0

0���`��8P8	�		0�@����"&462"&467"/&4762�%6%%6%�%%6%%F

��





%%%6%%�%6%%6%�

��





����$4%2+"&=4633#"'#"&=46;2%2+"&=463�

�

@��@$I`

�
�

�

�
�

�
  @0p �
�

�

�
����%1=I6/"/"/&54676276254+";2=4+";2=4+";2f&6
66
6&&6
66
6�������	
� 
	------	
�
	-----��hh������	!)-19=G73#"&=46%#!"&546;5462324&"2#37#364&"2#37+532   

&��&/!pp!/��""@@`@@h""@@�
  
�
�
0��&&!/@

@/�""X   �""X ��
�������7&/&6??6/7?6/7?6/7?6/7?6/76|�PE<
<87<<77<
;E���'ef/0ff/0ff'���#G7&546;2#";#";#"32#!"'73;2=3;2=3;2=��
`
88888x

�@�)@@�)��

 @@@
`
�888888@@@72#!"&=46;;2=3;2=3;2=3;2=3;2= 

�

0@@@@@
�

�
XXXXXXXXXX���/73+"&546;2#";#";#";#"�X
�

�
XXXXXXX @

�

@@@@����	/7A546;#"&52+"=4;27#54&+"#4?62264&"%2+
@P	h0��	`	��3B//B/p
	P�
��	@@(@
���		�u
k�/B//B
��	@���	#.'7562"/&47�@`>SS�>+u5�@�SS>�+>u5����!3"&46;46;#"%2'&/52>76#"'.#57676�%% �%  ,IfHM-4#-:+0�MHfI80+:-#3 %6%���6%��2.&B

�	 B&.2 	�
���'/72+54+"#54+"#"&?6'.54264&"264&"�Ԗ2,		N@N		,2�4&&4&�4&&4&��]4Z B8888B Z4]�&4&&4&&4&&4���	/G7546;#"&2"&427735654&#"32+'2+"'.#"&'46;2`	`v	6Ԗ�Ԗ=2��$q| 3$qO=2|�		#,#$�@	`	7�Ԗ���$2=Oq�  o2=Oq$|	@	���t�2#"'"'"'#"'.?63!22767#!"&=327!5Z&/,XX-/&A	�				
�@
			
�I(Z!!!!!!Z(h���

�dd������
%%53#!"&53%#!"&?63!23+"&@@
�
@�
��U	�	%@	 	@��

��""����		���/"&=463!2#2#!"&=4632#!"&=463		�		@		�`		`		�`		@	@		@	P	@		@	�	@		@	�����7'7'772"&464/76/&'7?6/76/&'&'76/&'&'76/&'&?'&?'&??6/7??6/7??6/76/&'77'7�---�-------jԖ�Ԗ�.""--"!-.""--"!-�---�---D---�---q�Ԗ�Ԓ-"!-.""--"!-.""-3---���+/M%#54&+"#54&+"#54?6;546;232'5#53#!"&=3;26=3;26�	�	 	�	 	�	.	
3�3
	����
�@
�	 	�	 	�	
S				S
	.	PP		@@�`

`				������%/&#!"&=4&&/&6?267w9
9
�
99�?L?`
r		�

�		r
`��C�:I"&462/&/&/&/&?.?67>327"&4?6�((.		-
<"	#8	�(	;
	2
`((�E2Y


JB"<	 	*"�4
,"	<	
2	���$2#!"&5463!2#!"3264&"��s%%p	��		C@�%@%			�����-D2"&42654':1276&/&>'&"7627>.3232654'�Α�Α�P
�b FbP
��Α��W



	�&&�


	��@�"2!2+"&=4&"+"&=46;!2#!"&=4630		�	8P8	�				��			 		�(88(�		 	`���	 		 		����	!8@H%6?#&''#>#6&'37.'#!"&5463!2"2645!"3>-''-V."'--'L�

��)77)F�jKKjK ��
�1) )**)1�1))**�	4
	7)@)7&KjKKj��@������(qy7327/"&?#'&/327>767'&"&'.'&'.'&764'&7>767>76276&264&"a4%4	
.
	
	4%4
J
		
		
	
�7N77NU
�&p
W&�



	
		
	�P88P8����-2#!"/&4?63'76/&'&??6@%%���		�>>>>>>>>�%�%�

��>>>>>>>>����%5K[2+"&=463#>7##"&46322+"&=4632#"&'##&'6=3>2+"&=463p

`

@629*P %% %

`

%% P*926U 

`

�
`

`
8H'?0O%6%�
`

`
%6%O0?'H��
`

`
����1;#"'&54675#"&=46;2+7'&?6/'!&/5#.�&4,		�		'	4	+�%%`@!,34Y�	 
	 
�'	4	+.53,!�''
������	#2!54635!+"&=#"&"264`
��
 �%@%6%@%��
��
��  %@%%@%M���4@HR\d2+++"&=#+"&="&=#"&=46;5462%;2=4+"264&"75#";26=4&+264&"�


 
�
 



�������=�p

�p

ps@
P
� 

  

 
�
P
0".."08��]�
`

`
�������Y%#"##"'&'+"=#"'&767"#"'&4767.'4546320454>762>7632�		<I		%((%		I<		 ,+	"S!!!!S"+-X	@@		!V#

)5p(

(p5)
	#V!	�����'"/&4?62762'&?62762"����(o���p-
7�
-����(p��p-7�-�����@�-2+"546;5'&63!22#"'73264&#"#>(�8�n��<TT<(#$(88(,
4J}��}�TxT$	8P8+5�)!4675#"&=46;2+2#!"&=463 Rn�@nR		`		�		� 		=~TT~				��	 		 	���'/7%/&/&/&54?6?6264&"6264&"264&"�$&E'*M*7$&E'*M*7��3��*'E&$7+L
 E&$7+������&.6%/&/&/&54?6?63264&"6264&"264&"�#&E'*M*7$&E&*J5J��3��*&E&$7+L
 E&$4J5Jq�����1%2++"&5#5323#"&5#"&=46;546;2�

(
0
��
���
(

(
0
`
0
(

H`
�H��`

0
(
 �`'3?K[g2#!"&546354+";2';2=4+";2=4+";2=4+";2=4+"754&+";2654+";2`

��

���@@@(	�		�	��`
�


�H00		0		y����'?2"&4>/76.'&7264&"7'76.'&?>�Α�Α�c4&&4&���Α��>�&4&&4����=E%/67#"'&/7&'&6?67&5462'0"0"132676&"264�767,R(�J42G6G!	D8P84#03C#"9d
�h`:_~>H{:|"

v(88(Y$
Xt7/

����3J54&"54&"&'54&"&=4>3276322654&'#"/&54?&#"�QH4<<4H0>R-97n		���z.(v		IVzF9�. f

wh

hw

f .�-

G
	�%	M
/&5��@�(32"&=46/627."75&"26>54&'���8DF;<<"*"} @ &4&/:GD8�K5�5KK5�5S,
&&
�

&&m
&&
,��� 33#"&476&67>	-jQ�e:K>@9�2D[OV,�}n5119�."3W8.����)T];#!"&546;;2=4+";2=4+""'.'&"+";26?212?62;264&##532�
�
��

ȠPPPP�	+"		
/		I�
8
��

�
HH�	)6		2
			
�����'0;#!"&546;6&+54&+"#"27#532�
�
��

�LA	 	A`��
8
��

�
��P		P`R
���G�3#532&=#53546;#!"&546;;#"��
b�`@@��	�
��

�
��	F�b�`A@A|	�

�
�
�	���	373#"&=46%#532;#!"&=3?6/&#46;pp		��
7
�
��
�``�
Ƞ@	 	�
��
��

�A``A
����*6BR%#5%#532;#!"&546;;2=4+";2=4+"54+";254&+";265 ��
7
�
��

ȠPPPPPP	�		�	�@@�
��
��

�
HH���		`		����&2l#532;#!"&546;;2=4+";2=4+">54&/&546;2?6'&'54+"+"'&;25y�
7
�
��

ȠPPPP�-	-	W
��
��

�
HX��



����;CL;#!"&546;&'654&+";26=3??6/76/#5327#532�
�
��

�E!!%P			;�00		ɀ
b8
��

�
��!&%	�		0;7 		��b��A�6?DN73#!"&546;;&'.'&"+";26??62#5327#%'762��
��

�
��	+"		��
b`�D�ED(

�
�
/R	)6		2

(�b�D��D����'0;#!"&546;26/&";;26=7#532�
�
��

�A``A	 	��
8
��

�
��``P		P�
����&%"/&4?'&?67627'"/�		�Pu_VVR		[1�;;		;Q�		�uP_VVR		��0�;;		;R
��@�
"1%"&546?"/&4?'&?67627'"/@%6% 		�Pu_VVR		[1�;;		;Q�]#%%@		�uP_VVR		��0�;;		;R
�����
-A\k�62#"&76'47'.76'4&'".76'&6&'.76'&767'.76'.'".676#"&54'&>'&'.'&#0#"&=&76�+>		";I		
(�Lm

Q9		

&]4X<9


GKl?q�
rn	ik
`<*MK	
GH  ML	
FI)<
#.><	
79?1:kJ
65
897O
z,
	'
Q	*1<9R	
fHJ<�� @` 2#"&'&?'&6>264&"G0a@((@a0>p&X	
W&p�`)7337)<*B
nn
B*<�����'/$2"&4&2"&462"&4264&"24+"36264&"N�Α�ΑP*<**<���<**<*�ΑΑ��)<**<*�  h*<**<����%2"&4264&"6'."7626264&"�Α�Α��	
=<=
	14)��Α��*�	"!	������32+"546;5'&63!2!!��8�8��J��0����**0����j2"&446;.'+";2;2/&+";232?676?6?6=4&+"/&6?63232?65�Α�Α�	Y;		Z
	/
 	
	
	��Α��G	:R				 	
	
����_n2"&4654/&+.#"/&54?632;26/&54?6;2?6/&?6//2?676767654'�Α�ΑJ		
C	
	
G 	
	
_
��Α���
			


		G&
	
			 
	
/d/*����8m2"&4762;2=4/&4?&#"32?6;26=4/&?63254/&=4+"+"/&+";237632;2?6�Α�Α�	3Su>
		�'

	��Α��_N
	&
uS-			f



	
����!%)-15=DK2"&45#375#"6264&"5#75#5#75#5#75#6264&"5#326=4&+�Α�Α�(

 5000p000p000`(

��Α��(
8(
��((8((8((8((8((8((h�(%
(����%2"&4"264&"2642676&"'&�Α�ΑU�`Y
	/�/	
��Α���6'		'����#12"&4%2767&'&"2767&'&"2676&"'&�Α�Α8�+`Y
	/�/	
��Α��!"		!"		!"		!"	��6'		'����'52"&4$"?626'."?626'&2676&"'&�Α�Α[&#
&
	
�&#
&
	
`Y
	/�/	
��Α��)))�6'		'����-=K"&5476227"&4632&"?626'."?626'&2676&"'&�(**0	�Α�gJ>/L&#
&
	
�&#
&
	
`Y
	/�/	
@77<03g��Α)!.)))�6'		'����'92"&4?6&'&'&2676&"'&%>'.'.7�Α�ΑZFi`Y
	/�/	
��Α��F

��6'		'�
F����!/2"&46/76&?64/&2676&"'&�Α�ΑP!!�!!PPX`Y
	/�/	
��Α��-0((((00��6'		'�����/<IY"&767622"&47667'676&&>'?6&/.?6&>'&26�*��)!)y�G!)y�G�	Z

4]
Z

4�"k,<@PH)��H)
G�y) G�y) ([
4
�

Z
`"a$,k���� .G2"&4?6/76&/&"2676&"'&%6&/&"?6/�Α�Α_#
F`Y
	/�/	
'#
#��Α��	##	  ��6'		'�	  	##������5EUc72"&476"'&'&61"&'067676&>2&'&&"?626'."?626'&2676&"'&f)S)
Hr s�s 
���

K&#
&
	
�&#
&
	
`Y
	/�/	
�H))GR9DD9R]]b)))�6'		'����%-D26=676&"'&.54264&"264&"#"&=6362?>�ΑYH	*
	/�/	
*	HY��&%��gO~.$		$.~OgW�@%'?	����4AN%#"&=6362?>26=676&"'&.5464/&?'76&6%&%�ΑYH	*
	/�/	
*	HY�P!!�!!
	PPI@%'?	j�gO~.$		$.~OgA0((((00����%5=T2"&4&26=676&"'&.546'."?62264&"#"&=6362?>N�ΑYH	*
	/�/	
*	HY�%(%
&�4&&4&
&%��gO~.$		$.~OgP					0&4&&4�@%'?	����-<62"4&"276'."?62&2676&"�Α��7�%(%
&�	
Y`Y
	/�YΑ�Α					a	'66'	 �`/?O_72+"&=46;2+"&=46;2+"&=463%2+"&=46;2+"&=46;2+"&=463`

@

�

@

�

@

�

@

�

@

�

@

�
@

@

@

@

@

@
�
@

@

@

@

@

@
��@�/?O_2+"&=4632+"&=4632+"&=4632+"&=4632+"&=4632+"&=463`

@

@

@

@

@



@

@

@

@

@

�
@

@
�
@

@
�
@

@
@
@

@
�
@

@
�
@

@
���;72+"&=46;2+"&=4632+"&=4&"+"&=6�

%%�%%

�Ҕ		z�z		�
�
&@&&@&
�
�ip		pVzzVp		pi���F7+"&=46;2#"&=46;22+"&46;23265454&"+"&=6�
%%
�

%%�Ҕ5%� fz�z		�p
%0%�
p
%0%`�i�%5(�VzzV		i��!�77/'7'&54%'76DC#)�#+3`3
����+ FC##�*
3`3+�+ǩ����';GS_ks&'&'&6;2+"'&'&'&6;2+"2#!"&=46;254+";2754+";2754+";2754+";2"&462�+
+
n+
+
�
%��%%+o�```��6%%6%($>($>($>($>@
�%%�%
S�pppppppp@%6%%6��@�-=M]ms��#32+54&+"#"&=46;#"&=463!2;26=4&+";26=4&+"';26=4&+"26=4&+"334&"%54&+";26=4&+";260		�	 	�				 		��&&&&�&&3&3�8P8&&&&���	 	P		P	 	�	 		 	-&&e&&[&&�&&�(88e&&e&&����6?K&=4;2+"=46#"'6+"=4&'&=4;22#"/2!2+"/�<0(0��$qY��Z�).0$0�vYuV

v*AB>,9!,��P8!W1&B%>>����
p
�����,42"&4264&"4'654&'&7>264&"�Α�Α��##))��Α��W�
			�����4D2"&465."?624'654&'&7>765."?62�Α�Α�#&#	
&
h##))A#&#	
&
��Α��K))�
			�))����%-JZ%/&67676#"&462&#.&264&"4'654&'&7>?626'."�S
�/4g��ΑT��##))
'	%(%.!	S 	T�Α�g.,%#�
			�						����%2"&4"264&"2642676&#!"3�Α�ΑU�87Q
��
Q7��Α���H66H����'52"&4?626'."?626'."6&#!";26�Α�Α

&
	
#&#�

&
	
#&#
��
Q77Q��Α��6))))�6HH����!/2"&46/76&?64/&6&#!";26�Α�ΑP!!�!!PP
��
Q77Q��Α��0((((00�6HH����-2"&4?626'."&"2646&#!";26�Α�Α
&	%(%Z�
��
Q77Q��Α��5						6HH����	ALP7"&=46;%+5322+"&547#"&547#"&5#"&=46;2#46;25#�

 @
  
0		S(�(S	0		`	`�`0`�
�
� 
�
�	 		p	 		�� �000��@� )2"'&547&=42767'5%6�hJrr�w�
,!�!/��J4>��>4�0�?
��(%�@�%(�
�8 ��@�(12"'&54264&"7&=42767'5%6�hJrrm""�w�
,!�!/��J4>��>4^""I0�?
��(%�@�%(�
�8 �����	?&76'7'/&?6276^K�KQr
�5��bWi!%�K�KQ
rs5K��bWh$�����	4'&6;2%2&'7632"&46&/&"?6/�?/o	
o
U
	o/?E
ʒgg�g
44&	//	=
+��+
s�g�gg�6
//
%4		4����2"&4264&"264&"�Α�Α����Α��W����!32"&42654'"&54724+"362654'"&547�Α�ΑX&4&""���4&""��Α��G&&&

�  p&&

&����*!2#!"&=463!6?654&+";26p		��		�MM0FF	 		 	[��;LL�&&���	+#76322++"&767.5#"&=463�d��				C6
�
6C		�c�$�	 	<a  a<	 	���0#!"&=463!22+2+"&=463546;265�
��

`
 %8(�

@

%�
@

`

 %@(8 
�

�
 %
	����	,8@E673&.'3'>76732#!"&5463264&+"36264&"7#&�-''-V.'j

��%%		�		;jKKjK�-'1) )**h**f)1
�@
%�%�`				`KjKKj�1)���?'73264&"'766'OTc!�]
];1#]$�b�!cT;]
]�'T(�b���!7'73264&"'6%'762���+	 ���
(�]�9�9(5+��!]�(
� J(9�9�����$67'&4?622?'762'&?%"/7?md		Z		">>,�.q.(-�q��k�		Z		d�,>>�d		Z		">>,.q.-(q��k		Z		e�,>>����.!2#!"&=4637&=46'46'%&'p		��		

'f0
A	db+
(&+��	 		 	�
e		C�	�1N
������1!2#!"&=4637'&6?627'&6?63276+"p		��		AM(Hh�A�c++.,���	 		 	kS$4b!R21'$�����*2%//&?'#+"&546;276%3264&#-NNNN�	 		�(80$TN��`

`NNNN�P			8($6TN�@����+3D254&""'54&".546'."?62264&"76'."?62�ΑA7		.d.		7A�
%(%
&9((�%(%
&	��gBq!�		��		�!qBgG					�&4&&4�						����#.2"&4"2642654'&"6264&">'&#"32�Α�ΑU�(**3�-F7��Α���77��6 ����!)-59%+"&5#"&5#"&5463!235#264&"75#264&"'3'#u
 8P8�8P8 

��R``L((�`�((0�PB�
o
(88((88(
 
�`��((�``�((�`����:2##"'&7#"&?6&&/&?6>76327>o
	4:C#+M�

b:

7:&
*KJ	6
E=	 	"8=�	�'
	%#3hG6!'����#32"&4?626'."6&"'&276'."?62�Α�Αp

&
	
#&#�

#n#

-�3
#&#	
&
��Α��F))�**6�))����%)-159=!2+"&=46;53#!"&54>3!23'7#?#3'#73'3'#�		�		0��7��7���
�
�j�
`����
gFrj	 
	 
  ���

B1``�pp�``�p�``�p����A�,2"'.543267>&'&'6768'S�S''?D++D?'��!FG"%;?QQ?;%$'88'$oo==o����"%/&&?6/&6?6�%">H6 F&3
&)'H!.L	�C>"(	4949/!=	���	!)19AIQ#546;22"&42#!"&=463264&""&4622"&4&2"&462"&42"&4�
@
��(8
�
8(B//B/��Mss�``
m
8(�

�(8�/B//B3s����*5!2#!"&=46;26=4'&5463 �@(8
�@
8(C	D-+@@@8( 

 (8(2,:+ *$
�����'#"/#"&?'&6?627//�
j��j
�A	(	ARr3f&g�DD�g&���Qg��6r����#/;I2++"&=#+"&=#"&=46354+";2=4+";2'#546;2#5P	 	�	 	�����0`0 �				��h�PPPP����2"&4264&"264&"6264&"�Α�Α�C4&&4&���Α��*�&4&&4����
%-1573622#!>?"&546;2264&"75#75#�		�K		�

����8P8
�
j8@@@		�L		�
�
� ��(88(�
�[�@@�@@ �hT\7&'76?6/&"'&+""2+"'"'"'+"&=46;276;2276;2276;23$"&462�	DP(1d"dq
0

0�		:&&t&&t&&:		%JJ%�1B//B/�b9
"&
P			 	 	      	 	`/B//B����4j%2+"'"'"'+"&=46;276;2276;2276;23%"'&'5462+"&=4&"35462+"&=4&"#5#p		:&&t&&t&&:		%JJ%��
8P8	 	�8P8	 	
� 	 	      	 	 	
�(88(		

``(88(		

�
	`������ '&?66762%47#"&z	
��	
�(-6,!��2BIg


	�

	�>@4_6I&(&�-h����!/2"&46/76&?64/&"7626'&�Α�ΑP!!�!!PP�RM)�)��Α��-0((((00�>-


-������1"&/.""&/&'&'&7>76676/676�%
""
%2" #d
	

0)"2`>1(CS9"

�

�


"9SC(2="3	@#3����	1.7>>327/6'&2#!"&=46;7s-�G'I!`+
.#:?f		��		�I<A78;Z=L_�[�,�H	%]J��	 		 	�����/37;?W#2+"&5#+"&=4635"&=46;2346;235!355#!5#=#"&=#+3235463


`
�
`



`
�
`
` ��  �  
�
  
�
@
�
`



`
�
`



     ��    `�
  
�
  
�����!%#!"&7>;&546232&264&"��`I<8P8<�))$(88(����%�!2+"546;5.?46;23'��(4@	�	@4r�uW7��7Wu�PP���!5I]q2#!"&=463264&"#546;2"/&4?62'&4?62"'"/&4?62'"/&4?62�(8
�
8(B//B/��
@
�@ 8(�

�(8�/B//BQ``
!�.������"5#"'&"#"'&'&767676676'#'&7676763_'$+A
 
A+$'*$$*?#/++G0:

:0G++/#

%
$
	����%07>FNY62"&47'"''&7&766267&'&'767"&#">"6727&'6264&"6''6'&#"#��77W$|$W77W$|$W��%,� 2 B//B/�%�s5KK54
VV
45KK54
VV
��	
#�
#
�%��%K/B//B?
#
	�#
	 �`M%#"&'4.#!"#"&=46764'.=46323!2>5>32W,'
��	',,'
	',�
$,
,$

$,
,$���)"&462'&'.=46%6&=476`8P88P>
F|�<|E
D�P88P8��#��"�)��@�%K2#"&'#"&547.547&5467&5463021>#"'#"&546320212�&*&*(&"�*&*&"&(�&��**	(.(	&��(	**x%&	(��)3BQ%+"&=!+"&=&=46?>;2%!'.+":>54&"!264&":�
 
�
 
9"�"9���9
"N"
�!06

  

60!2 && 222
�!!�#/K2#!"&546;546;23546;254+";2%54+54+"#";;2=32�

�@

 	`	�	`	�pp((((@
�


0		00		0�((((������*fu��7&?6/.?6/&6?>?6/.?'/&'&?&'&?676?676767676$&>767'&'&/&#"&>�#
NA	2M
+= %�




	�
	
 {
��
�	{ �l)
�.M
+=
NA	28+$�/4
C

4.+!	5`6!+.O
����#+/3;2+"&5#"&5#"&=46?>;2264&"75#;'#264&" (8	08P8�8P80	0!�m�|((xM&��MY�((8(P	(88((88(	p"z��((�```��((��@�Qh!2#!"&=46332'.=4&+!46;2327>=.=46;5462354626&+76&+";327P		��			2"'��%�%$4

			 		��:D;	 		 	@	 *x!..p`%%�4$
v* 	0		00		`3	kS���'%"/&4?626/&#";2=37�		�

�		�

{U
p
 `
�

�		�

�		�N6
P@6����'9AIQYa%2#"'##"&5475&546323632#0#23'"1"&463037#264&"64&"2$"264264&"264&"�%%%�%%  %%�%%%''���&%%&��			w			��			 			@			`%6%  %%�%%  %6%A A	@%6%@b			�			 			��			 			����7AE%'&?67&?'&?6'2#!"&=46;;267!463!2!�::$$U$$::	&�&	�
=��@���;;$$$$;;�	&&	p��P��������0&4?62'%/&4?2?/&4?2?������;��:��:��,jjjjjII�jjII����X%/.=32?654/32?&54767>3276=46;254632|N/<(V	��	V(</N!E
)!		!)
E:.7
1X:
pp
:X1
7.zm
&<�		�<&
m���!;G7"&=463546;22++"&=2#!"&5463!264&#52%"=4;2#�

	@	

	(	$	� 	5KK5Oq1����
�
		
�
		�		KjK@qOI7  �`15@6#!"&='.=463235#"&=46;2+325'46?"&v�	
��
F
�88		�		892��0�
+$ �

/_
0				0A?>]
+>���0%#!"&5467&546;&546;2654'6323232�#*��*#*%!/
(8%*O(**(#*%/!8(%*#���#62"&4%+"&?622+"&=463KjKKjK��k*P

�

�KjKKj�%%���
�

�
������5%/+"&=&/&6?'.?>546;276� 
�	@	�
 �� 
�	@	�
 �r
8O�		�O8
NN
8O�		�O8
N	����+9GUcq2#!"&546354&+"26=4&";2654&+"26=4&";2654&+"26=4&";2654&+"26=4&";26 (88(�@(88(@	@	((	@	�	P	!.!!.!	P	�	P	!.!!.!	P	�	@	((	@	�8(��(88(@(8��@		@�@@		q8		8!!�X!!X		q8		8!!�X!!X		y@		@�@@		
����+9GWes��2#!"&=46354&";26754&";26754&";26754&";262#!"&=46354&+"26754&+"26754&+"26754&+"26 (8%�%8(@(	@	�!.!	P	�!.!	P	�(	@	%8(�@(8%`	@	(�	P	!.!�	P	!.!�	@	(�8(@%%@(8�  		8!!8		8!!8		  		�% (88( %P 		 		!!		!! 		 ������&2COWc7&6#"./&67632*#"&'&567%.?>766676.67&'7676.6�  TF&
#YJ gu$$ dY� ,
� SaAO6 ��,
 SF
.�"� ,�+**2# $D&�'
91+	
&�)H!A`)��	�,'*(O	����)19A3"&'.535.535.53546;23264&"6264&"6264&"�$@%	F\F	%@$@$@
�
@$�((((((1
& 2	,99,	2 &
1&
1 

 1
&�((d((d((����.2����%2+."#."#"&=46;546;546;232%3'#2+/+"&=&'/&?&'#"&=46;67'&?667546;276264&"'2+/+"&=&'/&?&'#"&=46;67'&?667546;276264&"p		CLCBCLC			�
qSJ
���3Q0		
	 	
		
	 	
((�		
	 	
		
	 	
((�	 	""""	 	P	`
h
@`@��	 	
		
	 	
		
P((4	 	
		
	 	
		
P((����6:BJ%2+"&547#"&547#"&=46;546;546;232%3'264&"264&"p		2B\BDB\B2		
�
qm0
���M�((<((�	 	.BB..BB.	 	@
�
�
@�``��((((�
0H?62"&472#!"&546326/&+";2?33754&+"&#"327;26����`�	66	F�		**
	�55��� ��
��
�		$*<*	��@�#.%2++"&=#"&=46;&5462&">54(

`
 
`

-%JlJ%E,�
 
�

�
 
;5AOOA5;�"99����:B%#!"&5463!2;;26=326=4&+54&+"#"5!"3�

��)77)F��	0	 	0		0	 	0	��
Z	4
	7)@)7v 	p		p	 	0		0	��@����/3B$2"&454+54+";2'"!546;546;232&'5#!"&=33�xTTxT�
&


<
@7.�uP�P	������	�TxTTxB
6

L
� P001`  �*&�0	����-9EQ]iu�����2#!"&546;546;23546;23546;254+";2=4+";2=4+";254+";2=4+";2=4+";254+";2=4+";2=4+";254+";2=4+";2h

��

(		@		@
�
��((((((�((((((�((((((�((((
��

h
P		PP		PH

��((l((l((�((l((l((T((l((l((��((l((���S2#"'#"547>7&54>'./&54;2?6&'&'54&+"+"'&;265�Ԗ�j83AL92	 		2	 		�z�z329JV�%			%			��B�Ld#"'#"54767&5462;2=>54&/&546;2?6'&'54+"+"'&#"'#"&'32654'�zV<3+.&z�f-	-	Z.+3<@hc�9HB�^)3B^�



�
6,qO

P23����#2++"&=#"&=46;546;2`

`
@
`

`
@
@
@
�

�
@
`

`
���W]ciou}���%2#'"/+"&57&'"/&4?&'"&=46367'&4?6267'46;2762'7&'67#677&'7&'6264&"67'367'?&'�

$
/;		;/
$

$
/;		;/
$�
+Y%+
l@	L1	C
+2:%+
l@	@1	�		;/
$

$
/;		;/
$

$
/;@	11	%
L%+
�@	1w�1	%
H%+
���-T7"&=46;2#546;2+"&2?#!"&=%5!'54767546;>3232�		�		�	�		�	F4��`�`��`NN�				P				r��՗�
F��F

,		,�!2#!"&546;54&+";26��`�@`	�		�	@� @�				�52#!"&546;54&+54&+"#";;26=326��`�@X
@
	@		@	
@
@� @�	@		@		@		@	������V/&='&63!22"&4>54&/&546;2?6'&'54+"+"'&;25�?R;#P��y�^^�^�-	-	gCQ9	<��''�^�^^��



���eoy%2+5#5#5#33#54&+"#53535####"&=46;546;546;54623546235462354623232'354&+"54&+"�		P     P	@	P     P						@		@		@				�0		8	 	`	�	��``��P		P��``��	�	p	P	p								p	P	p�00		�@		@���1?G%"/&5476;5462;2=462;2=4623226?."62"&4�	f8�8f	@ 

 

 @��00200=�
	n<<n	
��

��

�Ѐ $ <�����2D%/#"/#"&57"#"&?'&6?'&676276'7'7''77'�
bK	
lDDl
Kb
n*^""^*/$/5--5/$4!!�5S
qYYq
S5h
<k

k<
h}(2332(6**6��0��%#"#.'3'&'45473'676327#"'&54?'&4?'&543243127632#"/>7654'&547654'&54763231!�QM(;/)V
:)9+****%5):
	V)/;`HXWE;	
)f<G+%7-D	A!		! ��!		!A5%
7%+G=f);�����%#!"&5463!2!"3!0#"/267#"'&54?<14'#"54?&''312545'764/7454#"#'4"'"#"32?.547&547#"/�
��)77)FC��
�%	=N=	%

		
F	4
	7)@)7�� &11&  #	
po	! ��A�-;IW%&54?626"/.=54&?6754&?66=4/&'6=4/&*����� ,�

��PP�``�PP�``l1PP1OmR�66�"-$���jrz/612#"&/"&5475#"&46307'/&'&6765'&?.5467'&?7>54'&54764'6'76/�82
5P/

	
))
	

/P8
/<		&!M,;;,L"&	U

�~s?'$=
*!		

		!*
AE� 	

(/(F6$	33	55	33	$6F(/(	t &&""&&���'7#!"&=4?62335335332!546;2#!"&=463�
	� 	
��@`@`@	�@	�		� 		d%		%Z������	00	`	 		 	��@�'9=L:767#!"&=72"#".'.'5463%2+5.+54635#%#5463!2#"�*+ @
�
@ �
,)"	),


�$`
 @��`
@
�& 0�

�0�
!	"
`
�
�! 
�@@` �

`&����	'2=HS^it�2#546;2#546;2#546;2#54636"&546?"&546?"&546?"&546?"&546?"&546?"&546?546;2+32#!"&=46;5#"&=46;2;546;2326�	@	�	@	�	@	�	@	} s s s s s s 	 	8(��		�`		��(8	 	
�	 	�
@	��		��		��		��	 
 .

 .

 .

 .

 .

 .

 .
Ӑ		�(8@	 		 	@8(�		�
�		�����	CP3+"&%!&5476?2+54&"#54&/#54&"#"&=463#5467�
@
C��XE++EX

 @@ 

��  @��
�C8+5

5+8C<
�
@

@H$
&H@

@
�
@!  0
�����g�'&4?6"2#".5'546326=4&"+#".5463264&+&/&6;264&#"/&47632?6#".'&66iR;;%'
#/
)K5*A$!1 &&!			 

(8!1	/
q1$)&'5��;)d$4
&+	d
!5K01&4& (&
. '$
�	
$

���������$&#"'.'&'32#".'"'#"&463267&'#"'&.>6767&'#".'&#"&463232>7'.5462627&5462327>32#"#"'7>"264$"264g!	 

(

(

 	!


*#%6%:%6%#*


�			��			h
#8-%%-8#

!4"%%%%%%%%"4!

'							����2"&44&'657677�Α�Α�WA��Y&s3&�AW���Α��gCg�g)�rG"ir	"?gC/)g����,%+54?#"&5%#54&"#54?54?6m	p�mp	�`%6%`0	LL	Qd	�L/�	�	�`%%`�	s	KK	s����/?2#!"&546354&+";26754&+";26754&+";26���p	 		 	`	 		 	`	 		 	���`���		�		�		�		@		@		����/?%#!"&5463!2326=4&+"326=4&+"326=4&+"���`���		�		�		�		@		@		`p	 		 	`	 		 	`	 		 	����("&462'+"&46;'.?67676&6%%6%_#n�\- 1&(':!
X!@%6%%6�An1"#G!\!./
!H
������(Q2#"&=4?54?03>26=4#"/.=46226=4/&67621/&�Zu
M		z�&/		M
u
�'?
/`Q��M		P
�`/
?'�

P		M�
�Q����1NV%#!"&5463!2"3237232/76&#/&"'"327654#0"#"&463:1324#&5!"3�

��)77)F�;/DD/'88'u��
Z	4
	7)@)7xCC`C8N8��@���![%"/&=#"&46232264&"7+"=&'&?6;2654/.546754;2'&+"�d8HVzz�z,
��xTTxT�	-	d
,z�zzVH8	TxTTxE


���!-5%"/&=#"&46232264&"62"'&54264&"�d8HVzz�z,
��xTTxTq>+CC@d
,z�zzVH8	TxTTx�+$OO$5�����%47#"&'&6?535#546;272#546353#"&'&67�( .
W��
��
�
 �3s -
�^)!HA���  

  
���@&W!H��G�;%//&?'&?67672+#"/#"&=46;2>3;........

�b X,

Q
:U�........�
0
���
0
jC
���92#"&4632#0&#"3267#"/#"&?'&6?62T	+.j��j.,
W||W�7
DD
7L""	�Ԗ
|�|�6L$$L6EE������ &),/25%+"/#"&?'&6;76232#'#3373'7#73'�5k8*8k55k8*8kB( 5p55p8.�((�.�(�Y$^^$YY$^^$!7XXX&8!!�!&8!����	'E762#547!#762'#54&#4?6'76&+'&"#";2?326F&�r�&�`-`�H''''�+���

�+�f
��`'&]z
f�((((����EQTW]%'37'$2"&54737!;32?327654/7654&+'&#1"#"$2"&54#''73@$Q��((�|�����	<<	<<s((�$,B!!B!!R��
�@

�
�����`11
1

111
1

1�
�@

�
o8888���59=27+32++"&=!+"&=#"&=46;5#"&=3355#xH@
 0		0	 	�	 	0		0 
@H`�`� `
@	 	�		��		�	 	@
` `@@@@@������@DH%+"&=#+"&=#+"&='&'&?5'&4?5'&6?%35!5!y7	 	�	 	�	 	7Y7		w��w		7����@��/
0		00		00		0
1@2@VV@2@�@@�@���-6/#"&=46;//&?'&?676�Yf

fP-..--..y��Y
�
`.--..--����%2"&4264&"&264&#"3"&462"&4�Α�Α�P88(PppP(8S��Α���m8P8p�p8P�����@�4DL";#";#";!!&'.7>/762#!"&=463264&"����ri����p'
FF'--[%
��
%��@@@`@��
M�N	
?JJp% 

 %`����0LT\"&462#!"&5463!2";26=654??6/76/&'&5!"3"&462			�

��)77)F�B/ 	@	 �GGbbFFbb���
w			8			�	4
	7)@)7& 
		
 �++**�@8			���� #!2#!"&=46;'&?676%3p		��		�5	

))


	5��t�	 		 	JJ
		
88
		
J�������+5=E327+"&=32+"&54&"&4632>?"&=264&"264&"#	F.	 	� 
	�&
(833�@8P8@			Y			,:�		�`
	&
8(V'`@�(88(�@P							������7#546;2#54'#5##5#+"&=!+"&="&?63!2p0K5@5K0(000(N	 	�	 	
j@��5KK5��.������p		pp		p ��B�<%+"&54674&5463263276&'654&#"&'&54632W*/!�(8$8(,
&�5T%8(
qO#)m_.!/8(1
(8&'A$(8
Pp
F)F[����CP%#!"&54674&54632632%&?'&4?'&676276&'&"74632.?$8(��(84%B."6&�R	L	
SS
	X))X	

	!\B1#)
;
'z
1(88(&6.B$
&
	X))X	
SS
	Y
!B\.#1$D/
������ '09BHL7'"&?&=46&63''&4?6#76276/&62&=7#'3'kl�MA�rQ�	=m__}LP	��uj�ddd�8�.�BY1b	����z�	b��WBߜŰ�����#'&4?66&='46/&5����  � ���� R
ww
e��&]

�mt�

]& �� �3;%+"&=#+"&=.54623%+'54632324&"2*�	@	�	@	$
�& �5@	p			�6�		pp		�
1
p &$.�
				������AG7&?>#"&?#!"&547>7.='&4?'&6;2+"/#77		u*x�[ #H0�

GU�Z-3<<>�
K		@�uW+*)EB<#/@
_6m
2

c	
	%����(&#"+"'&7'&4632?54762�3HV(	#2"#(?2��3I	X!
)#"1$	(VO?2���/?O_o����7+"&767>%+"/&67622+"&=4632+"&=463/.7676"'&'&?6#''&'&?>2+"&=4632+"&=463'62+"5'67+"5+"5�
a
%*%@�		`		`		`		�		S*
�
S
*S		$
*I		`		`		`		�

@��


.+�
hh
��	@		@	�	@		@		3$�

3+.
�3	Z�	@		@	�	@		@	�����������-Ohq;#!"&546;54+";2=4+"&=46;22654/&54;2=4+"+"374+"276=4+"&57#532�
�
��

�`		,`$$y�
8
��

�
�� 	 	`x7''7�
�����BN^n#"546;2!5'&=;27;2732?>72=4+"&546;2'&+546;2"&=46;2#3"&=46;2#0	 	�$�%  '
#	p&  	 	��		 		@		 		 �		�X($@@%5N	(		(	%?p		�	�		�		�		�	����&.6/&/&"/&&546264&"264&"�Rt
+))+
l��qQ��	0..0	Pv�����G�'%/&?'/&='6276"&47%;Z$1Z/�/-	��1�4%��Z	1-//-$1�%4�����'/mx��������32#54#32#54;2#54;2#54#54;2!32#54!2+32#!"&=46;5#"&=46;2;546;2326=4636"&546?"&546?$"&546?"&546?"&546?"&546?"&546?"&546?"&546?� 8 � H ` �H 	8(��		�`		��(8	 	
�	 	�
	���22�22 xxxxxxxxxxxx	p(8@	 		 	@8(p		p
�		�
p	 

'

' 

'@

'

'

'

'

'

'���#+!2#!"&=4637#76?#?/7?/�		� 		��o$�8V�@@  @�    	 		 	@ �&k�


�   @@ �   ������
HP7#"'.7/.?>2+"&=#"/1"&='&54?>3235463&"&462Q#4

@:!�			0
/W	 /#	\((�5e
�b"+	��		�	P/S

SV

k/	@((����<D2#+"&=#+"&="'+"&=4632546;2632>264&"E"
	 	�	@	3z3	@	pPI7

0�			`*\
 		 �		GG		�B^)1

!	P			��A�IQ&/0+"&='+"/&54?&5465+"&=4636;46;2264&"@! 	@	�	B		4$+�K5x	G			sM
	&f-!�		�@idD)
8		8$4!5K	 			����G�43+'7'#"&=265%/&/&7%62546;2 �	�(h�<h%�	���
e	@	M��	7@�w@I	�H�

��

Z4		�����Y%#32+;2?6+"&'&7#"&=46;7#"&=46;7654&+"&/&6?6;232pd"�		�	T	%O2*		d"�		�	T	%O2*		� 	 				
.0	 	 	 				
.0	 	����!+2#"/&"#"&7676276'&"276'&"A�J2??&'&@OarJO^!		!^!		1^!		!^!		�mIWH
8&&8�P`,�)))))))����#!"'&5476273{	��	 
"
f&@U		�L�&@����KOSW%+32+"&=46;5!32+"&=46;5#"&=463!5#"&=46;2+!2%35#5#!5#�	h8

�

8��8

�

8h		H

�

H	����@`�`�	(
�

�
((
�

�
(		(
�

�
(	x@��@@@@������>FN2+32+'32+";2+"&'&76=46;76;2"264267#7`
8(\7
	PK�@
	�		p

l0(pP8�
9			Mwf�
 (82n
	�P
			%*&.PpX
			W;7�2"&=4$"6265427&"�ړ�ԖP�pI�I��9�9:��R>b;SS;b>/!

**

!Z����B"&462+"&46;%2+"/#"'.?'.?'&.6?6$((�

 M

C

6
 >U
%
(
'%,G*`((��)N$	f
W2
.W
(5����
&2#"&=4&54'!2!!2#!265(P	-P(8�� P	B.��(8�P	@�&'p8(� 	.B8(������#7?G/&/&6?'.?>76'.5462+"&76"264&"264�
��
��
��
�� &TxT& ~
��
ZZ
EE
ZZ
E�:"5KK5":

�������&?6S��	
M	
=�

	�9

����G�o�'&54?>#/#+"&='"&547+"&=4?#/&?6;'&/&?637>23?632/&6?6#'&'��	

	0/=		J7R7J		=/0	

	4
NE
5	

	2=$
$
$=2	

	5
EN
s6NH(�		
Ha	N		Iw
(==(wI		N	aH
		O	P		
L44L
		P	�HN6	����@�!)19AI!#!"&7>=46264&"264&"264&"264&"62"&4264&"� 	��

8			I			I			I			�P88P8S�e>�1
	&

�Pp�															�p�pp��%6%%6����ksx$2"&4264&"2&#"#+"/+"&=&'"/&4?&'#"&=46;67'&4?6546;2354762264&"73'#�H44H4Nh
	3;$Q
	
	,	
	

	� 
8f	
�oB//B/fn)kp4H44H<
3
	30	
	

	
	,	

��(.$

(�/B//B�``����
 (<#>32#7"&547367#'547"&%2+'72+654&+'327ZR@(\gB6jK���b�P0
*q7OP/!F*#L#�D$,P2�K5

5w�0*=)�D(`�O7*!/`��#+2+"&/&"+"&5463264&"264&"`

� 
:
 �

e6%%6%e6%%6%�
��
==
@
�%6%%6%%6%%6��
�?Y72#"&'&6;2326'.+"&=4635"&=463!2676&#"+"&7>#2&'&6;23264&+&'�%9:+#5
 �				N 
C)(	:-06D
/+H
"
t�/$,A,"
	 	 	 	
'-(.G T7.
+'
(&���'"/&4?>7&?67'�M�5Z�N#L��zZzwL#N�Z5�M�^zZz���-W62"&4$2"&4'#"'"'#"'&7&47&66266+&'&#&""#"&5467&54632632:12((�((G2$2#�8(+	<	+(8%B. 5%!/(`((((2

2#$�P8
	
8(2

.B!/!	��B�5BO\i%#!"&5467<146326326#"&"'.'&'>32#"'&?>#"'&?>#"'&?>#"'&?>^%/!�!/%8(1,�+E&+T:

R�$	%
[$	%
[$	%
[$	%
�,!//!,(8(%5/
+:P
55D�@@@@@@@@���+9G2#!"&5467&54632632:62"&546762"&546762"&546�(88(��(8%B. 5%!/��"("�"("�"("@8P88(2

.B!/!	�232323�����
)7Ec6#"'.?>#"'.?6&#"'.?6$#"'.?6&#"'.?672#!"&5467&54632632:�@	@m@	@�@	@�@	@S@	@;(88(��(8%B. 5%!/Q
p
p
p
p
p
p
p
p
p
p�8P88(2

.B!/!	����@�DO\iv�%#!"&5467<146326321&?'&4?'&6762760"1"&7&54632#"'&?>#"'&?>#"'&?>#"'&?>�%/!�!/$8(1,��;GGK##K	% Ib&D$	%
[$	%
[$	%
[$	%
�,!//!,(8(%?K##KGGP&
�@@@@@@@@������0Ib{�%'.'!'+"/&?67&'.7676326&#/&""?65'76&#/&""?65'76&#/&""?65'5!+"&=#+"&}	

	
��6&

	K	+*
Q�&C��
�
�
��`	@	�	@	�
		
Nl#	c#
	+**Q$ 





퐐		PP		���
1S[cks2+"&54327.5>7327&'.5>7&'327&'.5>676.264&"6264&"264&"6264&"	 	,>&3=1S?AW3+O-%>&3=+O-%&.T,+O-.	5!6H+O-%&.T,:W52H/ &;3�							I							�
�0		�
��$
E	V>		
=	t!E		
�		'			/	


9	


/	


���%-7?"&4726767632676324&"2'"&462"&462� LB9�r9D�[a	�KjKKj5 			�a[�D9r�9BL 
��jKKjK�

I			��@�	19NUb53+"&2+"/"&='0&5"&=46;2&"&462753"&5#"&'#"&?'46;#%2+"&5�@	 	 

:)&-Y((��

�
 @`
	 	0��		Q=
8

8+e

�`&-`((D �`


��
��
�0		�����L%2#"&?#"&?6;27+76'&+76&+"#"&5467&546;2654'632324X;
D|+/!


D0!/+
&!/	(8&p�	ax
	Ao.!/"x/!.&/!8(&��@�<Y6+"&=4&'&+"&=466+"&=4&'&+"&=466+"&=4&"+"&=46S�S	 	oSf�	 	�lW�	 	B19T	 	_N-F	 		 	+�K�Q�		�V�
�e�		�t�ZtV�		�3NM8�		�JrW	:-�		�

�		�#9����	";T!546;26&/&"?6/76&/&"?6/76&/&"?6/2'.=#+"&=#+"&=!26=463 ��^B�B^��

�

�

�	5#) 	`	�	`	 			@@B^^,





�	@#01 +p		PP		�p		@	����/G%2#!"&=4632+"&=463!2#!"&=463'"&4632632632+"'p		��		@		�		 		��		P<TT<=++=(D.BB.<%^%P				`								�TxT--*"B\B  ���/A2"&4264&""&54754622654'54&"7"&54675462xP88P8S� TxT B\B�B/ ( `(		�8P88PH�(2<TT<1)�.BB��/!(��(!N�		���/A2"&4264&""&54754622654'54&"7"&54675462xP88P8S� TxT B\B�B/ ( `(		�8P88PH�(2<TT<1)�.BB��/!(��(!N		����)9%2#!"&=46;#"3!2=4+5!463!2?6/&'&`

��

@

�

 ��
@
��J�_)�
`

`
@@@@

�K^)��@�*U�%#&'"'"'"&=46767>7>7627#&'"'"'"&=46767>7>7627#&'"'"'"&=46767>7>7622
+$)l+)l+#,
!
X

Y
!
+$)l+)l+#,
!
X

Y
!
+$)l+)l+#,
!
X

Y
@	 		 				�	 		 				�	 		 				������%="&462#"/&4?7#"'.?'6#5&/.>2?6�B//B/�


0	.=u.	0


�)�) )'b') /B//B��'
!
@9339@
!
' � 

 		���19A!46762+"&547"'"&5467&5!5463264&" 4&"2�o�0+!h		0<"/B/!F!/B/"<�&��`��6`"
\	 	@K8+!//!
		
!//!+8K@&������B�
 em"&'62&.'632767632&7'&'&'&''&4767>.&76767&54762654'&6264&" 	'V'	�%,5�4,$k6+`2+=66>+2`+6
)FdF)
�((P

��P/C**C/P� =	Xb	  bX= ?13HH30@�((���3G7&=46;22654&'&=467+"&5.'.=46+"&5.'"&=46�:D
	<)Ej
0
(0z�	 	�a	
Sv	 	S9	
�d=)<	WD�

�2��z
	a�	 	`vS
:R
 
����	7!#!"&7;26=4&+"%2!546;546;23546;2���@	`		`	P�@0	 	�	 	���`		`		�000		00		0����	7!#!"&73!26=4&#!"%2!546;546;23546;2���@	 		��	P�@0	 	�	 	���@		@		�000		00		0�����")-15;C#"/&67%>'&#"#"/&6?63267'7'?'?'77&'67'�)6��
 a				!%,.O��=�<�<Q	-
$=d9w!�6�718>=��'''�.
	�	�����*'&&'&7276/>76/&67*."'f91��3
7S�DX!"&#b.&291B		
28 &"!XD
�����)9IY]m}���%#!"&=4?>;5#"&=463!2+32;26=4&+"";26=4&#'#";26=4&'35#26=4&+"3;26=4&+"54+";2754&+";26754&+";26�
�@
U`				`��				 				0				���(				 				���				0				E[

[�@	`		`	@				G				P				� �				@				�x				W				���+@V72/"/&4?'&637"&=46762#/&=46;26+"&?'&4?62�
c
c!�
c
c!cc
p��
p!c
c�
p!c
c@
p!c
c�c
c!p
p
c
c����B�C#'32%#73#5"&?6;2++"&=!+"&='#"&=46;'!0ac	��~�~��	c�			 	��	 			 �`������`�@	 	�				�	 	  ������	%?N^#53##7/32210'&/&"&?6;#+"&='#"&=46;'%"&54676>'&'&'32�=d�~!c
�'	c�51�	 			%4^�^D4('?3&X���H
>``� K7H6		�	 	 !`A]]A&m/$(�?/S!('1�32+5##5##5##5##"&=46;546;546;232�		P @ @ @ P		0	0	�	0		�	��������	�	0	0		0	0����5<Ccmw7#"&546;'&?6'&6?67>763253#"&53#2#5+#546;&54632632#3&#"7654&#"36�	�


			  
		)��
�

��
( 7!!7 (�5	�	5�#�
`
	


	66

��`��`
 
`��`
,KK,
0		0������9=A%'&6?'#"&/#"'/&7>7.?>76767'7'�
'(??('
�'%WrrW%'��_$�p$_C	h.'KK'.h	C	fW(�
00
�(Wf	G'@..@'�����2#!"&'&63!!�8$��$8���9���e@�����dt�2"&44&#"#"#;2=732;2?6;2;2=4?6=46;2+";2;6$;2?6=4&">7#"/&+'&+";2�Α�Α�uS(	

	% 

		 ��
	}5W
	
+ +	��Α��gSu	

	
		
			!�
	��8-
%

` %2#!"&=463%2#!"&=463�		� 		�		� 		�	 		 	�	 		 	 ����+"&546;2+"&546;2`	 		 	�	 		 	0		�		� 		�		�����+3.767>7676?6?62264&"�		/$L
#
#kS#&"7L/		��((�		/L7"&"Sk##
L%/		��((�����"/&6?>'7'6�$!��!$"b&`�0`"&a"v%i(��(i%#W@��@h#������?i"&4622462"&"&462&54'&6767>'&'&636762'&'.7676&'"'6'&5<546�((@(((((@	72		94�	27	
	49	((((`((�=3


:2
	�
1:
+3	

���.6%+"/#"&'.+"&=4>?6264&"�.	
3
./	7")�
%B0�
0 2zt(	
@
 &R
Q?bU;K
6*8�����"'"/"/"'&63!2�WB.".,$W���,l����}��@�'08!>32#47%#534'3+#."#553#"&62#54@��'~J�`Bp?��B��
� 2:F:2���
�P8��~;E��C=�_��=C@`
 �##��``�8(``(������%2#!"&=463$!'&>76p		��		e(H��0@te
 	@		@	�"5W�:e@:����'9A&'&'&6;2+"7&'&'&6;2+"2++"&=463264&+#

n#

�.BB.8(�(8
p.#1,#1, B\B(88(�
�(`������"/%4'7>#"'.?2&"&462%"&5>76H&Q,6	�Q7|7Q-((��	6,Q&�,� `8
D�

� ((
8` �,����%-5=%4'7>#27"'.7'"&7676"&462"264"&4628*4
�$*"H"C
4*�Α�Α��ll�l��#C*B
6

C

y
B*C#��Α��l�ll�l ����)9U"&462"&462++"&=#"&?6727%2+"&5463++"&=#"&=4672�4&&4&Z4&&4&?7
0
7.8��		 		|

P

8@&4&&4&&4&&4��h

h��	� 		�	��
�

�
������;?C%"//"&46327'&676327'&4?6;2762%7''�a		P
k
l*0)&
Q		a	

	P0

/

0Q	��IEI2EID�a		Q
&)0*l
k	Q		a		Q0

/

0P	hIEJ�EIE�����1I.7>7&5462#"'%1+"&5.'.=463210+"&5.'"&=4632119�bu
C	 
�a		z�Z	 	S9		Sv b�9t
+		a�	 	�z	:R	 	v����
2#!"&575#35#35#@&&�&� 0�0�0�&��&&@��``````����
#*.546;#!"&575#354&+326=#35#;5'!5%35#"&��&�&�@�
  
�@�
 @�@ 
�&���&&�@@ 
@�@
 @@ 
@`@@@ @������(2O2"&42+"&46;264!6"/&627"&4?"&46;2"1"&='&6?|(()	`		`	��'DD
=\		0

�R=N�((�\				DD�	\	
�1S=Y

SN8�����$C"&462#"'%.>7'&776'&76776/&//'�((%�x			�.Kk(

1���#>R04	: s/`((���fEK5(#JFa 3		
9��@�.BN"&4622#!"&46;0&5&6?63232647'.?'&3737#"/d((�*� 

+6
(%,G*,
F
�U
%
'4>+�!
 =`((��
*
(5
�"Q2
.W
���

[�)N$	L����>%#!"&=463!2654/&?6%5"&46;2;26=32###5##5.e,��			



��

1T,T1&`

8(@�@*6a&'		


w�4X4&@`(80004E�����4Uw2#"'#"&>7&542654/&54;2=4+"+"3754&+"'&+";2=2?;232654/&54;2=4+"+"3�Ԗ�j83AL9��	

	
0�z�z3
19JV�h		##		hD88D�����EQ"&462'76#"'%&'&>&'&6?54?'&/&>#"'&7�((TB4Z		��!&
J#*		?o
�<U�`((�?'f"�!			
5(:4S

--=

�����QYaiq|�+"'.547&507'.?>546;2167&5462704=46;276$264&"264&"6264&"6264&"7654&"6264&"��!	#%c
!&,�		8	
8P8
	8		
��			)																(7
"-.QC(?,
7		.!(88(".		*			��			7			7			O			2			����Z_k62"&462"&462"&462"&4"/&=##!"&5467546;546;2354?623'264&#!"3n^^^$
%)+B.�.B#� O@)%
$��@zD:�H#%
$*:.BB.!6[p�
3:*$
% f S`@���((����2++"=#"=43%2#!"=43t�8�h�� 8��8�88����%19#+"&?.5475#"&=463!2;2=4+"264&"p /(�(/ 		`		��006tRRtR��2TGGT2�				������/9A%"/.7'#'76'"'&7>76'&"&4?264&"�5
uk>`@�k04
R*I%JDK
	�|5%�u45u0k�@`>k6R=+	KDJ$JR {%5�������)-15="&462232#!"&=46;5"#"'&67%65#%35+3"&462-��

��

�����``�``c�
<\
�

�
S;���`````` ����"&54676>'&'&'32D4H���_I9*
$:\(!K8+�0�+_��_6�D5: ��Y'	Cu088E����A�(Q6'&67670767>767632%"#"/67>7>767� !5#$	
$7E $C)

	%.&%
5	
$7E %C(

	%.&%
	 !5#�!	!#
J6&0

	%
%&�
J6'/

	%
&&!!	!����2:%#!"&5463!2;;2=32=4+54+"#"5!"3�

��)77)F��808808��
Z	4
	7)@)7�088088��@��@�2##!"&5"&54���#��#�k>�

>���	5!#!"&5!%630
�@
,Y{���

��Z�����@�,H3#!"&=26554+54+"#";;2=327#"/&"#"/&547%62 �	�`	;808808���M��		�D088088����

���22#"1"'#"547>7&5454+54+"#";;2=32�Ԗ�j73AL9`808808�z�z31:IVn088088�����%."/&4?627"/&4?6?7'76�
�7-nxf
fn-7
D
P	�
�7-nf
fxn-7{
D
	P����"*2:%/&&?6/&6?6264&"264&"6264&"�%">H7 F&3
&)'H!.L	���)			�C>")	4949/!=Ssm			����2"&546�b]2p�p2�u�7PppP7����'/7?%2#!"&4632#!"&=4637"&7>2#&"264&"264"264��`�	&��&	~�~>			�			�			�((�	&&	�42BB24p			)						 ����7%+"/&=4?2=46?62=463212=46�B.�.!

'

$�S.B!J
L� �� 
2	�#%!5467546;272#!"&=463�@B5)	`	)5B		� 		�@@;aRp		pRa�	 		 	����>JVr~�$"&46220+"&50546322760!"&546;546;23254+";2=4+";27532=4+54+"#";;254+";2=4+";2P88P80.B�B.*�*��	
 
�
 
�((((0P((((�8P88PXB..B
*<	p
@

@
�4((�((��((�((�����
7AK#"&547664&"2767>7>7>7>76'.?6&/�/��"!/`(	
 ' ' 	
 ' ' �|�3��3�/B��/!"`w
' ' 
' ' �3��3� ����2#!"&46;&5462'!"p��TxT�cc	( ((	;UU;	��������%)A7"=4;54;232++"=%!463!2!2#!"&=46;;267�80880 ��@���	&�&	�
=�088088���P���`	&&	�#32#!"&54635#"3754&+326754&#!"3!26�&&��&&`P		�	PP	�
��

@
�&�&&&��0			0	�@

@
���.%3#"&4632>77'#5'6326'&54?632Kk%Kj�L!!(?)!5�26YK$(
�'"G@)!.!&>@E&.D9N"+
$7���
!)1.'7>#"&5476264&"6264&"264&"���
9��/����
rC{�
ň��9q��i
L�{����	7!+"&7;;26=326/&"72#!"&=46;76;25��E9	 	9Z�		�`		x	r	S���p		p^�	 		 	

����	7!#!"&7;;26=326/&"72#!"&=46;76;2 ���[9	 	9Z�		�`		x	r	P���p		p^�	 		 	

����:B%#!"&54676"&=4?62';;2=32=4+54+"#"26=?6K"��"K6_5jKU

U�(/B/�N6""6N_oK5n  n5�]!//!����-#"&5#+"&=46;546;23546;2+ܘ`�		p�`�		p \�	 	����	 	�����'/7?G"&462'"&='&54?63232+"2"&4264&"$2"&4264&"�((4);*Rp		G5

@6jKKjKf4&&4&��jKKjKf4&&4&`((�!2
�

o6
	`9 KjKKju&4&&4�KjKKju&4&&4����2#!"&5463#3'#335#35#�

��

`������������
��

�
@�����������/?O_o��������/?O72+"&=46;2+"&=46;2+"&=463!2+"&=4632+"&=46;2+"&=46;2+"&=46372+"&=46372+"&=4632+"&=46372+"&=4632+"&=4632+"&=46;2+"&=46;2+"&=4632+"&=4632+"&=46372+"&=46372+"&=46372+"&=46;2+"&=463�		 		�		 		�		 		�		 		�		 		�		 		�		 		 		 		 		 		�		 		 		 		@		 		�		 		�		 		�		 		��		 		 		 		 		 		 		 		 		 		�		 		�	 		 		 		 		 		 		 		 	�	 		 		 		 		 		 	`	 		 	�	 		 	�	 		 	�	 		 	��	 		 	�	 		 		 		 		 		 	�	 		 	�	 		 	`	 		 	�	 		 	`	 		 		 		 	����/?O_o�72+"&=463#2+"&=46;2+"&=46372+"&=4632+"&=4632+"&=4632+"&=46372#!+"&5463�		 		@		 		�		 		�		 		 		 		 		 		 		 		 		��	 	
 	 		 		 		 		 		 	�	 		 	`	 		 	`	 		 	 	 		 	`	 	��		�
�����#+2/&?#"&'&6&546766264&"a=Z{
Q<#*=Z{
Q<#D@Q<#*=Z{
Q<#*=Z{
������*2Hf7'&6767>"2+"&=46;76;2264&"%2"&?#"&?6;26"&46325"&46325467ua5

5a��0H[,,�\
>L'&5%%p&5%%�c>>c`���,,V�Sk	3`�(0l(k���%#"54?6327632����h0	<8y1Vh�p1y8<	����.2#!"&5463454/&#"&'7654/&#"#327���P	FK#&
A�x���`��
&#KF	x�����(4@PX_2+##546354+";254+";2=4+";2=4+";22#!"&5463"2645''`

���
H				`												�

��

M`� @�
��
@@`
g			�			q			q			0
��

 
@�``� @ ����;?%2+"&=46;7#"'&54?6325463!2+"&=#'7#P		�		 C	5��s	�		 	v1C v 	 		 	P4*�Y,		`		 �4`������5OR72"/&6;46;27"&=4?#"&=46;232#+"/#+"&54?6;23'�PP0	 	�	=8		�	=8			G	;*4 ```0		�Ѐ	
F	 		
F	 	�	

	�e0������5OR"&?62++"&5"&=4?#"&=46;232#+"/#+"&54?6;23'PP0	 	�	=8		�	=8			G	;*4  ``��		0@	
F	 		
F	 	�	

	�e0�����/?U"&=46;2#"&=46;2#2#!"&=4635"&=46;2#!2"/&6;46;2�		@		@		�		�		�				�		�PP0	 	`	 		 	�	 		 	�	 		 	@	 		 	``0		�������/?U"&=46;2#"&=46;2#2#!"&=4635"&=46;2#%"&?62++"&5�		@		@		�		�		�				�		�`PP0	 	`	 		 	�	 		 	�	 		 	@	 		 	�``��		0������5JR72"/&6;46;22+"&=46;5#"&54?6;26&/&767.7>264&"�PP0	 			`			
0	6(>*,


	$+
"```0		��@	 		 	@	 		p}1'3>=&\������5JR++"&5#"&?622+"&=46;5#"&54?6;26&/&767.7>264&"kP0	 	0P)		`			
0	6(>*,


	$+
"�`��		0`��	 		 	@	 		p}1'3>=&\��A�&@CX%"&=46;2#'3264&#3264&#'+"/#+"&54?6;23'"/&4?62762		K 2	2!3(

(8

�D	X	D;.��p-
7�
�	�	*# +�0`0��	$$	��E�
�p
-8��� �@#2#!"&4623&54264&"264&"�xTT<��<TTxTp��/B//B`B//B/@TxTTwUU;,$$,<B//B/�/B//B����
2%"'63227632".'&5463232>7632�G�G';(;�4Bt�tB4		8?e56d?7���	D5++5D	 
������
*%3!"'&7>32#"./&#"7>?632bB_H��Z:5)=#84% b6@�#�U9/FV ,$T+A)����	=!+"&#546;2#5�^B@B^��^B@B^�`��B^^�� B^^B �����2"&4264&"2"&4264&"�V==V=^OΑ�Α�jKKjK(=V==VC�Α���KjKKj����"*:D$2"&42#!"&5#"&5463!2264&"754&+";2654&+"�			�		��8P8 &&`B^�l((p
�

�
�
@
�			g	 	(88(&&^B�p((�@

@
s�

�V6�� �H&�
,v�3m��	4	2Q	
�	@�	2	Lb	,�	
X	.�	&�	
'	29	&�	
�Copyright (c) Font AwesomeCopyright (c) Font AwesomeFont Awesome 5 Free SolidFont Awesome 5 Free SolidSolidSolidFont Awesome 5 Free Solid-5.15.3Font Awesome 5 Free Solid-5.15.3Font Awesome 5 Free SolidFont Awesome 5 Free Solid331.523 (Font Awesome version: 5.15.3)331.523 (Font Awesome version: 5.15.3)FontAwesome5Free-SolidFontAwesome5Free-SolidThe web's most popular icon set and toolkit.The web's most popular icon set and toolkit.https://fontawesome.comhttps://fontawesome.comFont Awesome 5 FreeFont Awesome 5 FreeSolidSolidFont Awesome 5 Free SolidFont Awesome 5 Free SolidFont Awesome 5 FreeFont Awesome 5 FreeSolidSolid���	

 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvw�
xyz{|}~���������������������������������������������������������������������������������������������������������������������"�����������	

 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJK�LMNOPQRSTUVWX�#YZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~����������������������������������������������������������������������������������������������������������������������������������	

 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefg�hijklmnopq�rstuvwxyz{|}~��������������������������������������������������������������������������������������������������������������������������������	

 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcd�efghijklmnopqrstuvwxyz{|}~���������������������������������������������������������������������������������������������faucettrailerbacteria	bacterium
box-tissuehand-holding-medical
hand-sparkles
hands-washhandshake-alt-slashhandshake-slashhead-side-coughhead-side-cough-slashhead-side-maskhead-side-virus
house-userlaptop-houselungs-virus
people-arrowsplane-slashpump-medical	pump-soapshield-virussinksoapstopwatch-20store-alt-slashstore-slashtoilet-paper-slashusers-slashvirusvirus-slashvirusesvestvest-patches
glass-martinimusicsearchheartstaruserfilmth-largethth-listchecktimessearch-plussearch-minus	power-offsignalcoghomeclockroaddownloadinboxredosynclist-altlockflag
headphones
volume-offvolume-down	volume-upqrcodebarcodetagtagsbookbookmarkprintcamerafontbolditalictext-height
text-width
align-leftalign-centeralign-right
align-justifylistoutdentindentvideoimage
map-markeradjusttintedit
step-backward
fast-backwardbackwardplaypausestopforwardfast-forwardstep-forwardejectchevron-left
chevron-rightplus-circleminus-circletimes-circlecheck-circlequestion-circleinfo-circle
crosshairsban
arrow-leftarrow-rightarrow-up
arrow-downshareexpandcompressexclamation-circlegiftleaffireeye	eye-slashexclamation-triangleplanecalendar-altrandomcommentmagnet
chevron-upchevron-downretweet
shopping-cartfolderfolder-open	chart-barcamera-retrokeycogscomments	star-half	thumbtacktrophyuploadlemonphonephone-squareunlockcredit-cardrsshddbullhorncertificatehand-point-righthand-point-left
hand-point-uphand-point-downarrow-circle-leftarrow-circle-rightarrow-circle-uparrow-circle-downglobewrenchtasksfilter	briefcase
arrows-altuserslinkcloudflaskcutcopy	paperclipsavesquarebarslist-ullist-ol
strikethrough	underlinetablemagictruck
money-bill
caret-downcaret-up
caret-leftcaret-rightcolumnssort	sort-downsort-upenvelopeundogavelboltsitemapumbrellapaste	lightbulbuser-mdstethoscopesuitcasebellcoffeehospital	ambulancemedkitfighter-jetbeerh-squareplus-squareangle-double-leftangle-double-rightangle-double-upangle-double-down
angle-leftangle-rightangle-up
angle-downdesktoplaptoptabletmobile
quote-leftquote-rightspinnercirclesmilefrownmehgamepadkeyboardflag-checkeredterminalcode	reply-alllocation-arrowcropcode-branchunlinkinfoexclamationsuperscript	subscripteraserpuzzle-piece
microphonemicrophone-slashcalendarfire-extinguisherrocketchevron-circle-leftchevron-circle-rightchevron-circle-upchevron-circle-downanchor
unlock-altbullseye
ellipsis-h
ellipsis-v
rss-squareplay-circleminus-squarecheck-square
pen-squareshare-squarecompasscaret-square-downcaret-square-upcaret-square-right	euro-sign
pound-signdollar-sign
rupee-signyen-sign
ruble-signwon-signfilefile-altsort-alpha-down
sort-alpha-upsort-amount-downsort-amount-upsort-numeric-downsort-numeric-up	thumbs-upthumbs-downfemalemalesunmoonarchivebugcaret-square-left
dot-circle
wheelchair	lira-sign
space-shuttleenvelope-square
universitygraduation-caplanguagefaxbuildingchildpawcubecubesrecyclecartaxitreedatabasefile-pdf	file-word
file-excelfile-powerpoint
file-imagefile-archive
file-audio
file-video	file-code	life-ringcircle-notchpaper-planehistoryheading	sliders-h	share-altshare-alt-squarebombfutboltty
binocularsplug	newspaperwifi
calculator
bell-slashtrasheye-dropperpaint-brush
birthday-cake
chart-area	chart-pie
chart-line
toggle-off	toggle-onbicyclebusclosed-captioningshekel-sign	cart-pluscart-arrow-downshipuser-secret
motorcyclestreet-view	heartbeatvenusmarsmercurytransgendertransgender-altvenus-doublemars-double
venus-marsmars-stroke
mars-stroke-v
mars-stroke-hneuter
genderlessserver	user-plus
user-timesbedtrainsubwaybattery-fullbattery-three-quartersbattery-halfbattery-quarter
battery-empty
mouse-pointeri-cursorobject-groupobject-ungroupsticky-noteclone
balance-scalehourglass-starthourglass-half
hourglass-end	hourglass	hand-rock
hand-paper
hand-scissorshand-lizard
hand-spockhand-pointer
hand-peacetv
calendar-pluscalendar-minuscalendar-timescalendar-checkindustrymap-pin	map-signsmapcomment-altpause-circlestop-circleshopping-bagshopping-baskethashtaguniversal-accessblindaudio-descriptionphone-volumebrailleassistive-listening-systems#american-sign-language-interpretingdeaf
sign-language
low-vision	handshake
envelope-openaddress-bookaddress-carduser-circleid-badgeid-cardthermometer-fullthermometer-three-quartersthermometer-halfthermometer-quarterthermometer-emptyshowerbathpodcastwindow-maximizewindow-minimizewindow-restore	microchip	snowflake
utensil-spoonutensilsundo-alt	trash-altsync-alt	stopwatchsign-out-altsign-in-altredo-altpooimages
pencil-altpenpen-altlong-arrow-alt-downlong-arrow-alt-leftlong-arrow-alt-rightlong-arrow-alt-upexpand-arrows-alt	clipboardarrows-alt-harrows-alt-varrow-alt-circle-downarrow-alt-circle-leftarrow-alt-circle-rightarrow-alt-circle-upexternal-link-altexternal-link-square-altexchange-altcloud-download-altcloud-upload-altgemlevel-down-altlevel-up-alt	lock-openmap-marker-altmicrophone-alt
mobile-altmoney-bill-altphone-slashportraitreply
shield-alt
tablet-alttachometer-alt
ticket-altuser-altwindow-closecompress-alt
expand-alt
baseball-ballbasketball-ballbowling-ballchesschess-bishopchess-board
chess-kingchess-knight
chess-pawnchess-queen
chess-rookdumbbell
football-ball	golf-ballhockey-puck	quidditchsquare-fulltable-tennisvolleyball-ball	allergiesband-aidboxboxesbriefcase-medicalburncapsulesclipboard-checkclipboard-list	diagnosesdnadolly
dolly-flatbedfile-medicalfile-medical-alt	first-aidhospital-althospital-symbolid-card-alt
notes-medicalpalletpillsprescription-bottleprescription-bottle-alt
procedures
shipping-fastsmokingsyringetabletsthermometervialvials	warehouseweightx-raybox-opencomment-dots
comment-slashcouchdonatedovehand-holdinghand-holding-hearthand-holding-usdhand-holding-waterhands
hands-helping
parachute-boxpeople-carry
piggy-bankribbonrouteseedlingsign
smile-winktape
truck-loadingtruck-movingvideo-slash
wine-glassuser-alt-slashuser-astronaut
user-check
user-clockuser-cog	user-edituser-friends
user-graduate	user-lock
user-minus
user-ninjauser-shield
user-slashuser-taguser-tie	users-cogbalance-scale-leftbalance-scale-rightblender	book-openbroadcast-towerbroom
chalkboardchalkboard-teacherchurchcoinscompact-disccrowcrowndice	dice-five	dice-fourdice-onedice-six
dice-threedice-twodoor-closed	door-openequalsfeatherfroggas-pumpglassesgreater-thangreater-than-equal
helicopter	kiwi-bird	less-thanless-than-equalmemorymicrophone-alt-slashmoney-bill-wavemoney-bill-wave-altmoney-checkmoney-check-alt	not-equalpaletteparking
percentageproject-diagramreceiptrobotrulerruler-combinedruler-horizontalruler-verticalschoolscrewdrivershoe-printsskullsmoking-banstore	store-altstreamstroopwafeltoolboxtshirtwalkingwalletangryarchwayatlasaward	backspacebezier-curvebongbrushbus-altcannabischeck-doublecocktailconcierge-bellcookiecookie-bitecrop-altdigital-tachographdizzydrafting-compassdrum
drum-steelpanfeather-alt
file-contract
file-downloadfile-exportfile-importfile-invoicefile-invoice-dollarfile-prescriptionfile-signaturefile-uploadfill	fill-dripfingerprintfishflushed
frown-openglass-martini-altglobe-africaglobe-americas
globe-asiagrimacegringrin-alt	grin-beamgrin-beam-sweatgrin-heartsgrin-squintgrin-squint-tears
grin-stars
grin-tearsgrin-tonguegrin-tongue-squintgrin-tongue-wink	grin-winkgrip-horizontal
grip-verticalheadphones-altheadsethighlighterhot-tubhoteljointkiss	kiss-beamkiss-wink-heartlaugh
laugh-beamlaugh-squint
laugh-winkluggage-cart
map-markedmap-marked-altmarkermedal	meh-blankmeh-rolling-eyesmonument
mortar-pestlepaint-rollerpassport	pen-fancypen-nibpencil-ruler
plane-arrivalplane-departureprescriptionsad-crysad-tearshuttle-van	signature
smile-beamsolar-panelspasplotch	spray-canstamp
star-half-altsuitcase-rollingsurprise
swatchbookswimmer
swimming-pool
tint-slashtiredtoothumbrella-beach
vector-squareweight-hangingwine-glass-alt
air-freshener	apple-altatombonebook-readerbraincar-altcar-battery	car-crashcar-sidecharging-station
directionsdraw-polygonlaptop-codelayer-grouplungs
microscopeoil-canpoopshapesstar-of-lifeteeth
teeth-open
theater-masks
traffic-light
truck-monstertruck-pickupadankhbible
business-timecitycomment-dollarcomments-dollarcrossdharmachakraenvelope-open-textfolder-minusfolder-plus
funnel-dollargopuramhamsabahaijedijournal-whillskaabakhandalandmark	mail-bulkmenorahmosqueompastafarianismpeaceplace-of-worshippollpoll-hpray
praying-handsquran
search-dollarsearch-locationsockssquare-root-altstar-and-crescent
star-of-david	synagoguetorah
torii-gateviharavolume-muteyin-yang
blender-phone	book-dead
campgroundcatchair
cloud-moon	cloud-sundice-d20dice-d6dogdragondrumstick-bitedungeonfile-csvfist-raisedghosthammerhanukiah
hat-wizardhikinghippohorsehouse-damagehryvniamaskmountain
network-wiredotterrunningscrollskull-crossbonesspidertoilet-papertractoruser-injuredvr-cardboardwindwine-bottlecloud-meatballcloud-moon-rain
cloud-raincloud-showers-heavycloud-sun-raindemocratflag-usameteorperson-booth	poo-stormrainbow
republicansmogtemperature-hightemperature-lowvote-yeawaterbaby
baby-carriage	biohazardblogcalendar-day
calendar-week
candy-canecarrot
cash-registercompress-arrows-altdumpster
dumpster-fireethernetgiftsglass-cheers
glass-whiskeyglobe-europe
grip-linesgrip-lines-verticalguitarheart-brokenholly-berry
horse-headiciclesigloomittenmug-hot	radiation
radiation-altrestroom	satellitesatellite-dishsd-cardsim-cardskatingskiing
skiing-nordicsleighsmssnowboardingsnowmansnowplowtengetoilettoolstramfire-altbaconbook-medicalbread-slicecheeseclinic-medicalcomment-medicalcrutchdiseaseegg	hamburgerhand-middle-fingerhard-hat
hospital-userhotdog	ice-creamlaptop-medicalpager
pepper-hotpizza-slice
trash-restoretrash-restore-alt
user-nursewave-squarebiking
border-allborder-noneborder-stylefanicons	phone-altphone-square-altphoto-video
remove-formatsort-alpha-down-altsort-alpha-up-altsort-amount-down-altsort-amount-up-altsort-numeric-down-altsort-numeric-up-altspell-check	voicemail
hat-cowboyhat-cowboy-sidemouserecord-vinylcaravan�����f��v{��v{�assets/lib/font-awesome/webfonts/fa-regular-400.svg000064400000432512151327220410016122 0ustar00<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1">
<metadata>
Created by FontForge 20201107 at Tue Mar 16 10:15:04 2021
 By Robert Madole
Copyright (c) Font Awesome
</metadata>
<!-- Font Awesome Free 5.15.3 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) --><defs>
<font id="FontAwesome5Free-Regular" horiz-adv-x="512" >
  <font-face 
    font-family="Font Awesome 5 Free Regular"
    font-weight="400"
    font-stretch="normal"
    units-per-em="512"
    panose-1="2 0 5 3 0 0 0 0 0 0"
    ascent="448"
    descent="-64"
    bbox="-0.0663408 -64.0662 640.004 448.1"
    underline-thickness="25"
    underline-position="-50"
    unicode-range="U+0020-F5C8"
  />
    <missing-glyph />
    <glyph glyph-name="heart" unicode="&#xf004;" 
d="M458.4 383.7c75.2998 -63.4004 64.0996 -166.601 10.5996 -221.3l-175.4 -178.7c-10 -10.2002 -23.2998 -15.7998 -37.5996 -15.7998c-14.2002 0 -27.5996 5.69922 -37.5996 15.8994l-175.4 178.7c-53.5996 54.7002 -64.5996 157.9 10.5996 221.2
c57.8008 48.7002 147.101 41.2998 202.4 -15c55.2998 56.2998 144.6 63.5996 202.4 15zM434.8 196.2c36.2002 36.8994 43.7998 107.7 -7.2998 150.8c-38.7002 32.5996 -98.7002 27.9004 -136.5 -10.5996l-35 -35.7002l-35 35.7002
c-37.5996 38.2998 -97.5996 43.1992 -136.5 10.5c-51.2002 -43.1006 -43.7998 -113.5 -7.2998 -150.7l175.399 -178.7c2.40039 -2.40039 4.40039 -2.40039 6.80078 0z" />
    <glyph glyph-name="star" unicode="&#xf005;" horiz-adv-x="576" 
d="M528.1 276.5c26.2002 -3.7998 36.7002 -36.0996 17.7002 -54.5996l-105.7 -103l25 -145.5c4.5 -26.3008 -23.1992 -45.9004 -46.3994 -33.7002l-130.7 68.7002l-130.7 -68.7002c-23.2002 -12.2998 -50.8994 7.39941 -46.3994 33.7002l25 145.5l-105.7 103
c-19 18.5 -8.5 50.7998 17.7002 54.5996l146.1 21.2998l65.2998 132.4c11.7998 23.8994 45.7002 23.5996 57.4004 0l65.2998 -132.4zM388.6 135.7l100.601 98l-139 20.2002l-62.2002 126l-62.2002 -126l-139 -20.2002l100.601 -98l-23.7002 -138.4l124.3 65.2998
l124.3 -65.2998z" />
    <glyph glyph-name="user" unicode="&#xf007;" horiz-adv-x="448" 
d="M313.6 144c74.2002 0 134.4 -60.2002 134.4 -134.4v-25.5996c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v25.5996c0 74.2002 60.2002 134.4 134.4 134.4c28.7998 0 42.5 -16 89.5996 -16s60.9004 16 89.5996 16zM400 -16v25.5996
c0 47.6006 -38.7998 86.4004 -86.4004 86.4004c-14.6992 0 -37.8994 -16 -89.5996 -16c-51.2998 0 -75 16 -89.5996 16c-47.6006 0 -86.4004 -38.7998 -86.4004 -86.4004v-25.5996h352zM224 160c-79.5 0 -144 64.5 -144 144s64.5 144 144 144s144 -64.5 144 -144
s-64.5 -144 -144 -144zM224 400c-52.9004 0 -96 -43.0996 -96 -96s43.0996 -96 96 -96s96 43.0996 96 96s-43.0996 96 -96 96z" />
    <glyph glyph-name="clock" unicode="&#xf017;" 
d="M256 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM256 -8c110.5 0 200 89.5 200 200s-89.5 200 -200 200s-200 -89.5 -200 -200s89.5 -200 200 -200zM317.8 96.4004l-84.8994 61.6992
c-3.10059 2.30078 -4.90039 5.90039 -4.90039 9.7002v164.2c0 6.59961 5.40039 12 12 12h32c6.59961 0 12 -5.40039 12 -12v-141.7l66.7998 -48.5996c5.40039 -3.90039 6.5 -11.4004 2.60059 -16.7998l-18.8008 -25.9004c-3.89941 -5.2998 -11.3994 -6.5 -16.7998 -2.59961z
" />
    <glyph glyph-name="list-alt" unicode="&#xf022;" 
d="M464 416c26.5098 0 48 -21.4902 48 -48v-352c0 -26.5098 -21.4902 -48 -48 -48h-416c-26.5098 0 -48 21.4902 -48 48v352c0 26.5098 21.4902 48 48 48h416zM458 16c3.31152 0 6 2.68848 6 6v340c0 3.31152 -2.68848 6 -6 6h-404c-3.31152 0 -6 -2.68848 -6 -6v-340
c0 -3.31152 2.68848 -6 6 -6h404zM416 108v-24c0 -6.62695 -5.37305 -12 -12 -12h-200c-6.62695 0 -12 5.37305 -12 12v24c0 6.62695 5.37305 12 12 12h200c6.62695 0 12 -5.37305 12 -12zM416 204v-24c0 -6.62695 -5.37305 -12 -12 -12h-200c-6.62695 0 -12 5.37305 -12 12
v24c0 6.62695 5.37305 12 12 12h200c6.62695 0 12 -5.37305 12 -12zM416 300v-24c0 -6.62695 -5.37305 -12 -12 -12h-200c-6.62695 0 -12 5.37305 -12 12v24c0 6.62695 5.37305 12 12 12h200c6.62695 0 12 -5.37305 12 -12zM164 288c0 -19.8818 -16.1182 -36 -36 -36
s-36 16.1182 -36 36s16.1182 36 36 36s36 -16.1182 36 -36zM164 192c0 -19.8818 -16.1182 -36 -36 -36s-36 16.1182 -36 36s16.1182 36 36 36s36 -16.1182 36 -36zM164 96c0 -19.8818 -16.1182 -36 -36 -36s-36 16.1182 -36 36s16.1182 36 36 36s36 -16.1182 36 -36z" />
    <glyph glyph-name="flag" unicode="&#xf024;" 
d="M336.174 368c35.4668 0 73.0195 12.6914 108.922 28.1797c31.6406 13.6514 66.9043 -9.65723 66.9043 -44.1162v-239.919c0 -16.1953 -8.1543 -31.3057 -21.7129 -40.1631c-26.5762 -17.3643 -70.0693 -39.9814 -128.548 -39.9814c-68.6084 0 -112.781 32 -161.913 32
c-56.5674 0 -89.957 -11.2803 -127.826 -28.5566v-83.4434c0 -8.83691 -7.16309 -16 -16 -16h-16c-8.83691 0 -16 7.16309 -16 16v406.438c-14.3428 8.2998 -24 23.7979 -24 41.5615c0 27.5693 23.2422 49.71 51.2012 47.8965
c22.9658 -1.49023 41.8662 -19.4717 44.4805 -42.3379c0.213867 -1.83398 0.308594 -3.65918 0.308594 -5.5498c0 -5.30273 -0.860352 -10.4053 -2.4502 -15.1768c22.418 8.68555 49.4199 15.168 80.7207 15.168c68.6084 0 112.781 -32 161.913 -32zM464 112v240
c-31.5059 -14.6338 -84.5547 -32 -127.826 -32c-59.9111 0 -101.968 32 -161.913 32c-41.4365 0 -80.4766 -16.5879 -102.261 -32v-232c31.4473 14.5967 84.4648 24 127.826 24c59.9111 0 101.968 -32 161.913 -32c41.4365 0 80.4775 16.5879 102.261 32z" />
    <glyph glyph-name="bookmark" unicode="&#xf02e;" horiz-adv-x="384" 
d="M336 448c26.5098 0 48 -21.4902 48 -48v-464l-192 112l-192 -112v464c0 26.5098 21.4902 48 48 48h288zM336 19.5703v374.434c0 3.31348 -2.68555 5.99609 -6 5.99609h-276c-3.31152 0 -6 -2.68848 -6 -6v-374.43l144 84z" />
    <glyph glyph-name="image" unicode="&#xf03e;" 
d="M464 384c26.5098 0 48 -21.4902 48 -48v-288c0 -26.5098 -21.4902 -48 -48 -48h-416c-26.5098 0 -48 21.4902 -48 48v288c0 26.5098 21.4902 48 48 48h416zM458 48c3.31152 0 6 2.68848 6 6v276c0 3.31152 -2.68848 6 -6 6h-404c-3.31152 0 -6 -2.68848 -6 -6v-276
c0 -3.31152 2.68848 -6 6 -6h404zM128 296c22.0908 0 40 -17.9092 40 -40s-17.9092 -40 -40 -40s-40 17.9092 -40 40s17.9092 40 40 40zM96 96v48l39.5137 39.5146c4.6875 4.68652 12.2852 4.68652 16.9717 0l39.5146 -39.5146l119.514 119.515
c4.6875 4.68652 12.2852 4.68652 16.9717 0l87.5146 -87.5146v-80h-320z" />
    <glyph glyph-name="edit" unicode="&#xf044;" horiz-adv-x="576" 
d="M402.3 103.1l32 32c5 5 13.7002 1.5 13.7002 -5.69922v-145.4c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h273.5c7.09961 0 10.7002 -8.59961 5.7002 -13.7002l-32 -32c-1.5 -1.5 -3.5 -2.2998 -5.7002 -2.2998h-241.5v-352h352
v113.5c0 2.09961 0.799805 4.09961 2.2998 5.59961zM558.9 304.9l-262.601 -262.601l-90.3994 -10c-26.2002 -2.89941 -48.5 19.2002 -45.6006 45.6006l10 90.3994l262.601 262.601c22.8994 22.8994 59.8994 22.8994 82.6992 0l43.2002 -43.2002
c22.9004 -22.9004 22.9004 -60 0.100586 -82.7998zM460.1 274l-58.0996 58.0996l-185.8 -185.899l-7.2998 -65.2998l65.2998 7.2998zM524.9 353.7l-43.2002 43.2002c-4.10059 4.09961 -10.7998 4.09961 -14.7998 0l-30.9004 -30.9004l58.0996 -58.0996l30.9004 30.8994
c4 4.2002 4 10.7998 -0.0996094 14.9004z" />
    <glyph glyph-name="times-circle" unicode="&#xf057;" 
d="M256 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM256 -8c110.5 0 200 89.5 200 200s-89.5 200 -200 200s-200 -89.5 -200 -200s89.5 -200 200 -200zM357.8 254.2l-62.2002 -62.2002l62.2002 -62.2002
c4.7002 -4.7002 4.7002 -12.2998 0 -17l-22.5996 -22.5996c-4.7002 -4.7002 -12.2998 -4.7002 -17 0l-62.2002 62.2002l-62.2002 -62.2002c-4.7002 -4.7002 -12.2998 -4.7002 -17 0l-22.5996 22.5996c-4.7002 4.7002 -4.7002 12.2998 0 17l62.2002 62.2002l-62.2002 62.2002
c-4.7002 4.7002 -4.7002 12.2998 0 17l22.5996 22.5996c4.7002 4.7002 12.2998 4.7002 17 0l62.2002 -62.2002l62.2002 62.2002c4.7002 4.7002 12.2998 4.7002 17 0l22.5996 -22.5996c4.7002 -4.7002 4.7002 -12.2998 0 -17z" />
    <glyph glyph-name="check-circle" unicode="&#xf058;" 
d="M256 440c136.967 0 248 -111.033 248 -248s-111.033 -248 -248 -248s-248 111.033 -248 248s111.033 248 248 248zM256 392c-110.549 0 -200 -89.4678 -200 -200c0 -110.549 89.4678 -200 200 -200c110.549 0 200 89.4678 200 200c0 110.549 -89.4678 200 -200 200z
M396.204 261.733c4.66699 -4.70508 4.63672 -12.3037 -0.0673828 -16.9717l-172.589 -171.204c-4.70508 -4.66797 -12.3027 -4.63672 -16.9697 0.0683594l-90.7812 91.5156c-4.66797 4.70605 -4.63672 12.3047 0.0683594 16.9717l22.7188 22.5361
c4.70508 4.66699 12.3027 4.63574 16.9697 -0.0693359l59.792 -60.2773l141.353 140.216c4.70508 4.66797 12.3027 4.6377 16.9697 -0.0673828z" />
    <glyph glyph-name="question-circle" unicode="&#xf059;" 
d="M256 440c136.957 0 248 -111.083 248 -248c0 -136.997 -111.043 -248 -248 -248s-248 111.003 -248 248c0 136.917 111.043 248 248 248zM256 -8c110.569 0 200 89.4697 200 200c0 110.529 -89.5088 200 -200 200c-110.528 0 -200 -89.5049 -200 -200
c0 -110.569 89.4678 -200 200 -200zM363.244 247.2c0 -67.0518 -72.4209 -68.084 -72.4209 -92.8633v-6.33691c0 -6.62695 -5.37305 -12 -12 -12h-45.6475c-6.62695 0 -12 5.37305 -12 12v8.65918c0 35.7451 27.1006 50.0342 47.5791 61.5156
c17.5615 9.84473 28.3242 16.541 28.3242 29.5791c0 17.2461 -21.999 28.6934 -39.7842 28.6934c-23.1885 0 -33.8936 -10.9775 -48.9424 -29.9697c-4.05664 -5.11914 -11.46 -6.07031 -16.666 -2.12402l-27.8232 21.0986
c-5.10742 3.87207 -6.25098 11.0654 -2.64453 16.3633c23.627 34.6934 53.7217 54.1846 100.575 54.1846c49.0713 0 101.45 -38.3037 101.45 -88.7998zM298 80c0 -23.1592 -18.8408 -42 -42 -42s-42 18.8408 -42 42s18.8408 42 42 42s42 -18.8408 42 -42z" />
    <glyph glyph-name="eye" unicode="&#xf06e;" horiz-adv-x="576" 
d="M288 304c0.114258 0 0.240234 -0.0175781 0.354492 -0.0175781c61.6543 0 111.71 -50.0557 111.71 -111.71s-50.0557 -111.71 -111.71 -111.71s-111.71 50.0557 -111.71 111.71c0 10.7422 1.51953 21.1328 4.35547 30.9678
c7.95898 -4.52637 17.2129 -7.17188 27 -7.24023c30.9072 0 56 25.0928 56 56c-0.0683594 9.78711 -2.71387 19.041 -7.24023 27c9.88379 3.07617 20.3896 4.83008 31.2402 5zM572.52 206.6c2.21387 -4.37793 3.46094 -9.38965 3.46094 -14.626
c0 -5.2373 -1.24707 -10.1855 -3.46094 -14.5635c-54.1992 -105.771 -161.59 -177.41 -284.52 -177.41s-230.29 71.5898 -284.52 177.4c-2.21387 4.37793 -3.46094 9.38965 -3.46094 14.626c0 5.2373 1.24707 10.1855 3.46094 14.5635
c54.1992 105.771 161.59 177.41 284.52 177.41s230.29 -71.5898 284.52 -177.4zM288 48c98.6602 0 189.1 55 237.93 144c-48.8398 89 -139.27 144 -237.93 144s-189.09 -55 -237.93 -144c48.8398 -89 139.279 -144 237.93 -144z" />
    <glyph glyph-name="eye-slash" unicode="&#xf070;" horiz-adv-x="640" 
d="M634 -23c3.66895 -2.93262 6.00391 -7.45117 6.00391 -12.5088c0 -3.7832 -1.31543 -7.26074 -3.51367 -10.001l-10 -12.4902c-2.93359 -3.66309 -7.44824 -5.99414 -12.502 -5.99414c-3.77637 0 -7.25 1.31152 -9.98828 3.50391l-598 467.49
c-3.66895 2.93262 -6.00391 7.45117 -6.00391 12.5088c0 3.7832 1.31543 7.26074 3.51367 10.001l10 12.4902c2.93359 3.66309 7.44824 5.99414 12.502 5.99414c3.77637 0 7.25 -1.31152 9.98828 -3.50391zM296.79 301.53c7.51172 1.60254 15.2266 2.45508 23.21 2.46973
c60.4805 0 109.36 -47.9102 111.58 -107.85zM343.21 82.46c-7.51367 -1.59375 -15.2285 -2.44336 -23.21 -2.45996c-60.4697 0 -109.35 47.9102 -111.58 107.84zM320 336c-19.8799 0 -39.2803 -2.7998 -58.2197 -7.09961l-46.4102 36.29
c32.9199 11.8096 67.9297 18.8096 104.63 18.8096c122.93 0 230.29 -71.5898 284.57 -177.4c2.21289 -4.37793 3.45996 -9.38965 3.45996 -14.626c0 -5.2373 -1.24707 -10.1855 -3.45996 -14.5635c-14.1924 -27.5625 -31.9229 -52.6689 -52.9004 -75.1104l-37.7402 29.5
c17.2305 18.0527 31.9385 38.1318 44 60.2002c-48.8398 89 -139.279 144 -237.93 144zM320 48c19.8896 0 39.2803 2.7998 58.2197 7.08984l46.4102 -36.2803c-32.9199 -11.7598 -67.9297 -18.8096 -104.63 -18.8096c-122.92 0 -230.28 71.5898 -284.51 177.4
c-2.21387 4.37793 -3.46094 9.38965 -3.46094 14.626c0 5.2373 1.24707 10.1855 3.46094 14.5635c14.1885 27.5586 31.916 52.6621 52.8896 75.1006l37.7402 -29.5c-17.249 -18.0469 -31.9727 -38.1221 -44.0498 -60.1904c48.8496 -89 139.279 -144 237.93 -144z" />
    <glyph glyph-name="calendar-alt" unicode="&#xf073;" horiz-adv-x="448" 
d="M148 160h-40c-6.59961 0 -12 5.40039 -12 12v40c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-40c0 -6.59961 -5.40039 -12 -12 -12zM256 172c0 -6.59961 -5.40039 -12 -12 -12h-40c-6.59961 0 -12 5.40039 -12 12v40c0 6.59961 5.40039 12 12 12h40
c6.59961 0 12 -5.40039 12 -12v-40zM352 172c0 -6.59961 -5.40039 -12 -12 -12h-40c-6.59961 0 -12 5.40039 -12 12v40c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-40zM256 76c0 -6.59961 -5.40039 -12 -12 -12h-40c-6.59961 0 -12 5.40039 -12 12v40
c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-40zM160 76c0 -6.59961 -5.40039 -12 -12 -12h-40c-6.59961 0 -12 5.40039 -12 12v40c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-40zM352 76c0 -6.59961 -5.40039 -12 -12 -12h-40
c-6.59961 0 -12 5.40039 -12 12v40c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-40zM448 336v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h48v52c0 6.59961 5.40039 12 12 12h40
c6.59961 0 12 -5.40039 12 -12v-52h128v52c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-52h48c26.5 0 48 -21.5 48 -48zM400 -10v298h-352v-298c0 -3.2998 2.7002 -6 6 -6h340c3.2998 0 6 2.7002 6 6z" />
    <glyph glyph-name="comment" unicode="&#xf075;" 
d="M256 416c141.4 0 256 -93.0996 256 -208s-114.6 -208 -256 -208c-32.7998 0 -64 5.2002 -92.9004 14.2998c-29.0996 -20.5996 -77.5996 -46.2998 -139.1 -46.2998c-9.59961 0 -18.2998 5.7002 -22.0996 14.5c-3.80078 8.7998 -2 19 4.59961 26
c0.5 0.400391 31.5 33.7998 46.4004 73.2002c-33 35.0996 -52.9004 78.7002 -52.9004 126.3c0 114.9 114.6 208 256 208zM256 48c114.7 0 208 71.7998 208 160s-93.2998 160 -208 160s-208 -71.7998 -208 -160c0 -42.2002 21.7002 -74.0996 39.7998 -93.4004
l20.6006 -21.7998l-10.6006 -28.0996c-5.5 -14.5 -12.5996 -28.1006 -19.8994 -40.2002c23.5996 7.59961 43.1992 18.9004 57.5 29l19.5 13.7998l22.6992 -7.2002c25.3008 -8 51.7002 -12.0996 78.4004 -12.0996z" />
    <glyph glyph-name="folder" unicode="&#xf07b;" 
d="M464 320c26.5098 0 48 -21.4902 48 -48v-224c0 -26.5098 -21.4902 -48 -48 -48h-416c-26.5098 0 -48 21.4902 -48 48v288c0 26.5098 21.4902 48 48 48h146.74c8.49023 0 16.6299 -3.37012 22.6299 -9.37012l54.6299 -54.6299h192zM464 48v224h-198.62
c-8.49023 0 -16.6299 3.37012 -22.6299 9.37012l-54.6299 54.6299h-140.12v-288h416z" />
    <glyph glyph-name="folder-open" unicode="&#xf07c;" horiz-adv-x="576" 
d="M527.9 224c37.6992 0 60.6992 -41.5 40.6992 -73.4004l-79.8994 -128c-8.7998 -14.0996 -24.2002 -22.5996 -40.7002 -22.5996h-400c-26.5 0 -48 21.5 -48 48v288c0 26.5 21.5 48 48 48h160l64 -64h160c26.5 0 48 -21.5 48 -48v-48h47.9004zM48 330v-233.4l62.9004 104.2
c8.69922 14.4004 24.2998 23.2002 41.0996 23.2002h280v42c0 3.2998 -2.7002 6 -6 6h-173.9l-64 64h-134.1c-3.2998 0 -6 -2.7002 -6 -6zM448 48l80 128h-378.8l-77.2002 -128h376z" />
    <glyph glyph-name="chart-bar" unicode="&#xf080;" 
d="M396.8 96c-6.39941 0 -12.7998 6.40039 -12.7998 12.7998v230.4c0 6.39941 6.40039 12.7998 12.7998 12.7998h22.4004c6.39941 0 12.7998 -6.40039 12.7998 -12.7998v-230.4c0 -6.39941 -6.40039 -12.7998 -12.7998 -12.7998h-22.4004zM204.8 96
c-6.39941 0 -12.7998 6.40039 -12.7998 12.7998v198.4c0 6.39941 6.40039 12.7998 12.7998 12.7998h22.4004c6.39941 0 12.7998 -6.40039 12.7998 -12.7998v-198.4c0 -6.39941 -6.40039 -12.7998 -12.7998 -12.7998h-22.4004zM300.8 96
c-6.39941 0 -12.7998 6.40039 -12.7998 12.7998v134.4c0 6.39941 6.40039 12.7998 12.7998 12.7998h22.4004c6.39941 0 12.7998 -6.40039 12.7998 -12.7998v-134.4c0 -6.39941 -6.40039 -12.7998 -12.7998 -12.7998h-22.4004zM496 48c8.83984 0 16 -7.16016 16 -16v-16
c0 -8.83984 -7.16016 -16 -16 -16h-464c-17.6699 0 -32 14.3301 -32 32v336c0 8.83984 7.16016 16 16 16h16c8.83984 0 16 -7.16016 16 -16v-320h448zM108.8 96c-6.39941 0 -12.7998 6.40039 -12.7998 12.7998v70.4004c0 6.39941 6.40039 12.7998 12.7998 12.7998h22.4004
c6.39941 0 12.7998 -6.40039 12.7998 -12.7998v-70.4004c0 -6.39941 -6.40039 -12.7998 -12.7998 -12.7998h-22.4004z" />
    <glyph glyph-name="comments" unicode="&#xf086;" horiz-adv-x="576" 
d="M532 61.7998c15.2998 -30.7002 37.4004 -54.5 37.7998 -54.7998c6.2998 -6.7002 8 -16.5 4.40039 -25c-3.7002 -8.5 -12 -14 -21.2002 -14c-53.5996 0 -96.7002 20.2998 -125.2 38.7998c-19 -4.39941 -39 -6.7998 -59.7998 -6.7998
c-86.2002 0 -159.9 40.4004 -191.3 97.7998c-9.7002 1.2002 -19.2002 2.7998 -28.4004 4.90039c-28.5 -18.6006 -71.7002 -38.7998 -125.2 -38.7998c-9.19922 0 -17.5996 5.5 -21.1992 14c-3.7002 8.5 -1.90039 18.2998 4.39941 25
c0.400391 0.399414 22.4004 24.1992 37.7002 54.8994c-27.5 27.2002 -44 61.2002 -44 98.2002c0 88.4004 93.0996 160 208 160c86.2998 0 160.3 -40.5 191.8 -98.0996c99.7002 -11.8008 176.2 -77.9004 176.2 -157.9c0 -37.0996 -16.5 -71.0996 -44 -98.2002zM139.2 154.1
l19.7998 -4.5c16 -3.69922 32.5 -5.59961 49 -5.59961c86.7002 0 160 51.2998 160 112s-73.2998 112 -160 112s-160 -51.2998 -160 -112c0 -28.7002 16.2002 -50.5996 29.7002 -64l24.7998 -24.5l-15.5 -31.0996c-2.59961 -5.10059 -5.2998 -10.1006 -8 -14.8008
c14.5996 5.10059 29 12.3008 43.0996 21.4004zM498.3 96c13.5 13.4004 29.7002 35.2998 29.7002 64c0 49.2002 -48.2998 91.5 -112.7 106c0.299805 -3.2998 0.700195 -6.59961 0.700195 -10c0 -80.9004 -78 -147.5 -179.3 -158.3
c29.0996 -29.6006 77.2998 -49.7002 131.3 -49.7002c16.5 0 33 1.90039 49 5.59961l19.9004 4.60059l17.0996 -11.1006c14.0996 -9.09961 28.5 -16.2998 43.0996 -21.3994c-2.69922 4.7002 -5.39941 9.7002 -8 14.7998l-15.5 31.0996z" />
    <glyph glyph-name="star-half" unicode="&#xf089;" horiz-adv-x="576" 
d="M288 62.7002v-54.2998l-130.7 -68.6006c-23.3994 -12.2998 -50.8994 7.60059 -46.3994 33.7002l25 145.5l-105.7 103c-19 18.5 -8.5 50.7998 17.7002 54.5996l146.1 21.2002l65.2998 132.4c5.90039 11.8994 17.2998 17.7998 28.7002 17.7998v-68.0996l-62.2002 -126
l-139 -20.2002l100.601 -98l-23.7002 -138.4z" />
    <glyph glyph-name="lemon" unicode="&#xf094;" 
d="M484.112 420.111c28.1221 -28.123 35.9434 -68.0039 19.0215 -97.0547c-23.0576 -39.584 50.1436 -163.384 -82.3311 -295.86c-132.301 -132.298 -256.435 -59.3594 -295.857 -82.3291c-29.0459 -16.917 -68.9219 -9.11426 -97.0576 19.0205
c-28.1221 28.1221 -35.9434 68.0029 -19.0215 97.0547c23.0566 39.5859 -50.1436 163.386 82.3301 295.86c132.308 132.309 256.407 59.3496 295.862 82.332c29.0498 16.9219 68.9307 9.09863 97.0537 -19.0234zM461.707 347.217
c13.5166 23.2031 -27.7578 63.7314 -50.4883 50.4912c-66.6025 -38.7939 -165.646 45.5898 -286.081 -74.8457c-120.444 -120.445 -36.0449 -219.472 -74.8447 -286.08c-13.542 -23.2471 27.8145 -63.6953 50.4932 -50.4883
c66.6006 38.7949 165.636 -45.5996 286.076 74.8428c120.444 120.445 36.0449 219.472 74.8447 286.08zM291.846 338.481c1.37012 -10.96 -6.40332 -20.957 -17.3643 -22.3271c-54.8467 -6.85547 -135.779 -87.7871 -142.636 -142.636
c-1.37305 -10.9883 -11.3984 -18.7334 -22.3262 -17.3643c-10.9609 1.37012 -18.7344 11.3652 -17.3643 22.3262c9.16211 73.2852 104.167 168.215 177.364 177.364c10.9531 1.36816 20.9561 -6.40234 22.3262 -17.3633z" />
    <glyph glyph-name="credit-card" unicode="&#xf09d;" horiz-adv-x="576" 
d="M527.9 416c26.5996 0 48.0996 -21.5 48.0996 -48v-352c0 -26.5 -21.5 -48 -48.0996 -48h-479.801c-26.5996 0 -48.0996 21.5 -48.0996 48v352c0 26.5 21.5 48 48.0996 48h479.801zM54.0996 368c-3.2998 0 -6 -2.7002 -6 -6v-42h479.801v42c0 3.2998 -2.7002 6 -6 6
h-467.801zM521.9 16c3.2998 0 6 2.7002 6 6v170h-479.801v-170c0 -3.2998 2.7002 -6 6 -6h467.801zM192 116v-40c0 -6.59961 -5.40039 -12 -12 -12h-72c-6.59961 0 -12 5.40039 -12 12v40c0 6.59961 5.40039 12 12 12h72c6.59961 0 12 -5.40039 12 -12zM384 116v-40
c0 -6.59961 -5.40039 -12 -12 -12h-136c-6.59961 0 -12 5.40039 -12 12v40c0 6.59961 5.40039 12 12 12h136c6.59961 0 12 -5.40039 12 -12z" />
    <glyph glyph-name="hdd" unicode="&#xf0a0;" horiz-adv-x="576" 
d="M567.403 212.358c5.59668 -8.04688 8.59668 -17.6113 8.59668 -27.4121v-136.946c0 -26.5098 -21.4902 -48 -48 -48h-480c-26.5098 0 -48 21.4902 -48 48v136.946c0 10.167 3.19531 19.6465 8.59668 27.4121l105.08 151.053
c8.67383 12.4678 23.0791 20.5889 39.4043 20.5889h269.838c16.3252 0 30.7305 -8.12109 39.4043 -20.5889zM153.081 336l-77.9131 -112h425.664l-77.9131 112h-269.838zM528 48v128h-480v-128h480zM496 112c0 -17.6729 -14.3271 -32 -32 -32s-32 14.3271 -32 32
s14.3271 32 32 32s32 -14.3271 32 -32zM400 112c0 -17.6729 -14.3271 -32 -32 -32s-32 14.3271 -32 32s14.3271 32 32 32s32 -14.3271 32 -32z" />
    <glyph glyph-name="hand-point-right" unicode="&#xf0a4;" 
d="M428.8 310.4c45.0996 0 83.2002 -38.1016 83.2002 -83.2002c0 -45.6162 -37.7646 -83.2002 -83.2002 -83.2002h-35.6475c-1.71387 -7.70605 -4.43555 -15.2051 -7.92969 -22.0645c2.50586 -22.0059 -3.50293 -44.9775 -15.9844 -62.791
c-1.14062 -52.4863 -37.3984 -91.1445 -99.9404 -91.1445h-21.2988c-60.0635 0 -98.5117 40 -127.2 40h-2.67871c-5.74707 -4.95215 -13.5361 -8 -22.1201 -8h-64c-17.6729 0 -32 12.8936 -32 28.7998v230.4c0 15.9062 14.3271 28.7998 32 28.7998h64.001
c8.58398 0 16.373 -3.04785 22.1201 -8h2.67871c6.96387 0 14.8623 6.19336 30.1816 23.6689l0.128906 0.148438l0.130859 0.145508c8.85645 9.93652 18.1162 20.8398 25.8506 33.2529c18.7051 30.2471 30.3936 78.7842 75.707 78.7842c56.9277 0 92 -35.2861 92 -83.2002
c0 -0.0283203 0 0.0361328 0 0.0078125c0 -7.66602 -0.748047 -15.1582 -2.17578 -22.4072h86.1768zM428.8 192c18.9756 0 35.2002 16.2246 35.2002 35.2002c0 18.7002 -16.7754 35.2002 -35.2002 35.2002h-158.399c0 17.3242 26.3994 35.1992 26.3994 70.3994
c0 26.4004 -20.625 35.2002 -44 35.2002c-8.79395 0 -20.4443 -32.7119 -34.9258 -56.0996c-9.07422 -14.5752 -19.5244 -27.2256 -30.7988 -39.875c-16.1094 -18.374 -33.8359 -36.6328 -59.0752 -39.5967v-176.753c42.79 -3.7627 74.5088 -39.6758 120 -39.6758h21.2988
c40.5244 0 57.124 22.1973 50.6006 61.3252c14.6113 8.00098 24.1514 33.9785 12.9248 53.625c19.3652 18.2246 17.7871 46.3809 4.9502 61.0498h91.0254zM88 64c0 13.2549 -10.7451 24 -24 24s-24 -10.7451 -24 -24s10.7451 -24 24 -24s24 10.7451 24 24z" />
    <glyph glyph-name="hand-point-left" unicode="&#xf0a5;" 
d="M0 227.2c0 45.0986 38.1006 83.2002 83.2002 83.2002h86.1758c-1.3623 6.91016 -2.17578 14.374 -2.17578 22.3994c0 47.9141 35.0723 83.2002 92 83.2002c45.3135 0 57.002 -48.5371 75.7061 -78.7852c7.73438 -12.4121 16.9951 -23.3154 25.8506 -33.2529
l0.130859 -0.145508l0.128906 -0.148438c15.3213 -17.4746 23.2197 -23.668 30.1836 -23.668h2.67871c5.74707 4.95215 13.5361 8 22.1201 8h64c17.6729 0 32 -12.8936 32 -28.7998v-230.4c0 -15.9062 -14.3271 -28.7998 -32 -28.7998h-64
c-8.58398 0 -16.373 3.04785 -22.1201 8h-2.67871c-28.6885 0 -67.1367 -40 -127.2 -40h-21.2988c-62.542 0 -98.8008 38.6582 -99.9404 91.1445c-12.4814 17.8135 -18.4922 40.7852 -15.9844 62.791c-3.49414 6.85938 -6.21582 14.3584 -7.92969 22.0645h-35.6465
c-45.4355 0 -83.2002 37.584 -83.2002 83.2002zM48 227.2c0 -18.9756 16.2246 -35.2002 35.2002 -35.2002h91.0244c-12.8369 -14.6689 -14.415 -42.8252 4.9502 -61.0498c-11.2256 -19.6465 -1.68652 -45.624 12.9248 -53.625
c-6.52246 -39.1279 10.0771 -61.3252 50.6016 -61.3252h21.2988c45.4912 0 77.21 35.9131 120 39.6768v176.752c-25.2393 2.96289 -42.9658 21.2227 -59.0752 39.5967c-11.2744 12.6494 -21.7246 25.2998 -30.7988 39.875
c-14.4814 23.3877 -26.1318 56.0996 -34.9258 56.0996c-23.375 0 -44 -8.7998 -44 -35.2002c0 -35.2002 26.3994 -53.0752 26.3994 -70.3994h-158.399c-18.4248 0 -35.2002 -16.5 -35.2002 -35.2002zM448 88c-13.2549 0 -24 -10.7451 -24 -24s10.7451 -24 24 -24
s24 10.7451 24 24s-10.7451 24 -24 24z" />
    <glyph glyph-name="hand-point-up" unicode="&#xf0a6;" horiz-adv-x="448" 
d="M105.6 364.8c0 45.0996 38.1016 83.2002 83.2002 83.2002c45.6162 0 83.2002 -37.7646 83.2002 -83.2002v-35.6465c7.70605 -1.71387 15.2051 -4.43555 22.0645 -7.92969c22.0059 2.50684 44.9775 -3.50293 62.791 -15.9844
c52.4863 -1.14062 91.1445 -37.3984 91.1445 -99.9404v-21.2988c0 -60.0635 -40 -98.5117 -40 -127.2v-2.67871c4.95215 -5.74707 8 -13.5361 8 -22.1201v-64c0 -17.6729 -12.8936 -32 -28.7998 -32h-230.4c-15.9062 0 -28.7998 14.3271 -28.7998 32v64
c0 8.58398 3.04785 16.373 8 22.1201v2.67871c0 6.96387 -6.19336 14.8623 -23.6689 30.1816l-0.148438 0.128906l-0.145508 0.130859c-9.93652 8.85645 -20.8398 18.1162 -33.2529 25.8506c-30.2471 18.7051 -78.7842 30.3936 -78.7842 75.707
c0 56.9277 35.2861 92 83.2002 92c0.0283203 0 -0.0361328 0 -0.0078125 0c7.66602 0 15.1582 -0.748047 22.4072 -2.17578v86.1768zM224 364.8c0 18.9756 -16.2246 35.2002 -35.2002 35.2002c-18.7002 0 -35.2002 -16.7754 -35.2002 -35.2002v-158.399
c-17.3242 0 -35.1992 26.3994 -70.3994 26.3994c-26.4004 0 -35.2002 -20.625 -35.2002 -44c0 -8.79395 32.7119 -20.4443 56.0996 -34.9258c14.5752 -9.07422 27.2256 -19.5244 39.875 -30.7988c18.374 -16.1094 36.6328 -33.8359 39.5967 -59.0752h176.753
c3.7627 42.79 39.6758 74.5088 39.6758 120v21.2988c0 40.5244 -22.1973 57.124 -61.3252 50.6006c-8.00098 14.6113 -33.9785 24.1514 -53.625 12.9248c-18.2246 19.3652 -46.3809 17.7871 -61.0498 4.9502v91.0254zM352 24c-13.2549 0 -24 -10.7451 -24 -24
s10.7451 -24 24 -24s24 10.7451 24 24s-10.7451 24 -24 24z" />
    <glyph glyph-name="hand-point-down" unicode="&#xf0a7;" horiz-adv-x="448" 
d="M188.8 -64c-45.0986 0 -83.2002 38.1006 -83.2002 83.2002v86.1758c-6.91016 -1.3623 -14.374 -2.17578 -22.3994 -2.17578c-47.9141 0 -83.2002 35.0723 -83.2002 92c0 45.3135 48.5371 57.002 78.7852 75.707c12.4121 7.73438 23.3154 16.9951 33.2529 25.8506
l0.145508 0.130859l0.148438 0.128906c17.4746 15.3213 23.668 23.2197 23.668 30.1836v2.67871c-4.95215 5.74707 -8 13.5361 -8 22.1201v64c0 17.6729 12.8936 32 28.7998 32h230.4c15.9062 0 28.7998 -14.3271 28.7998 -32v-64.001
c0 -8.58398 -3.04785 -16.373 -8 -22.1201v-2.67871c0 -28.6885 40 -67.1367 40 -127.2v-21.2988c0 -62.542 -38.6582 -98.8008 -91.1445 -99.9404c-17.8135 -12.4814 -40.7852 -18.4922 -62.791 -15.9844c-6.85938 -3.49414 -14.3584 -6.21582 -22.0645 -7.92969v-35.6465
c0 -45.4355 -37.584 -83.2002 -83.2002 -83.2002zM188.8 -16c18.9756 0 35.2002 16.2246 35.2002 35.2002v91.0244c14.6689 -12.8369 42.8252 -14.415 61.0498 4.9502c19.6465 -11.2256 45.624 -1.68652 53.625 12.9248c39.1279 -6.52246 61.3252 10.0771 61.3252 50.6016
v21.2988c0 45.4912 -35.9131 77.21 -39.6768 120h-176.752c-2.96289 -25.2393 -21.2227 -42.9658 -39.5967 -59.0752c-12.6494 -11.2744 -25.2998 -21.7246 -39.875 -30.7988c-23.3877 -14.4814 -56.0996 -26.1318 -56.0996 -34.9258c0 -23.375 8.7998 -44 35.2002 -44
c35.2002 0 53.0752 26.3994 70.3994 26.3994v-158.399c0 -18.4248 16.5 -35.2002 35.2002 -35.2002zM328 384c0 -13.2549 10.7451 -24 24 -24s24 10.7451 24 24s-10.7451 24 -24 24s-24 -10.7451 -24 -24z" />
    <glyph glyph-name="copy" unicode="&#xf0c5;" horiz-adv-x="448" 
d="M433.941 382.059c8.68848 -8.68848 14.0586 -20.6943 14.0586 -33.9404v-268.118c0 -26.5098 -21.4902 -48 -48 -48h-80v-48c0 -26.5098 -21.4902 -48 -48 -48h-224c-26.5098 0 -48 21.4902 -48 48v320c0 26.5098 21.4902 48 48 48h80v48c0 26.5098 21.4902 48 48 48
h172.118c13.2461 0 25.252 -5.37012 33.9404 -14.0586zM266 -16c3.31152 0 6 2.68848 6 6v42h-96c-26.5098 0 -48 21.4902 -48 48v224h-74c-3.31152 0 -6 -2.68848 -6 -6v-308c0 -3.31152 2.68848 -6 6 -6h212zM394 80c3.31152 0 6 2.68848 6 6v202h-88
c-13.2549 0 -24 10.7451 -24 24v88h-106c-3.31152 0 -6 -2.68848 -6 -6v-308c0 -3.31152 2.68848 -6 6 -6h212zM400 336v9.63184c0 1.65527 -0.670898 3.15723 -1.75684 4.24316l-48.3682 48.3682c-1.12598 1.125 -2.65234 1.75684 -4.24316 1.75684h-9.63184v-64h64z" />
    <glyph glyph-name="save" unicode="&#xf0c7;" horiz-adv-x="448" 
d="M433.941 318.059c8.68848 -8.68848 14.0586 -20.6943 14.0586 -33.9404v-268.118c0 -26.5098 -21.4902 -48 -48 -48h-352c-26.5098 0 -48 21.4902 -48 48v352c0 26.5098 21.4902 48 48 48h268.118c13.2461 0 25.252 -5.37012 33.9404 -14.0586zM272 368h-128v-80h128v80z
M394 16c3.31152 0 6 2.68848 6 6v259.632c0 1.65527 -0.670898 3.15723 -1.75684 4.24316l-78.2432 78.2432v-100.118c0 -13.2549 -10.7451 -24 -24 -24h-176c-13.2549 0 -24 10.7451 -24 24v104h-42c-3.31152 0 -6 -2.68848 -6 -6v-340c0 -3.31152 2.68848 -6 6 -6h340z
M224 216c48.5234 0 88 -39.4766 88 -88s-39.4766 -88 -88 -88s-88 39.4766 -88 88s39.4766 88 88 88zM224 88c22.0557 0 40 17.9443 40 40s-17.9443 40 -40 40s-40 -17.9443 -40 -40s17.9443 -40 40 -40z" />
    <glyph glyph-name="square" unicode="&#xf0c8;" horiz-adv-x="448" 
d="M400 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h352zM394 16c3.2998 0 6 2.7002 6 6v340c0 3.2998 -2.7002 6 -6 6h-340c-3.2998 0 -6 -2.7002 -6 -6v-340c0 -3.2998 2.7002 -6 6 -6h340z" />
    <glyph glyph-name="envelope" unicode="&#xf0e0;" 
d="M464 384c26.5098 0 48 -21.4902 48 -48v-288c0 -26.5098 -21.4902 -48 -48 -48h-416c-26.5098 0 -48 21.4902 -48 48v288c0 26.5098 21.4902 48 48 48h416zM464 336h-416v-40.8047c22.4248 -18.2627 58.1797 -46.6602 134.587 -106.49
c16.834 -13.2422 50.2051 -45.0762 73.4131 -44.7012c23.2119 -0.371094 56.5723 31.4541 73.4131 44.7012c76.4189 59.8389 112.165 88.2305 134.587 106.49v40.8047zM48 48h416v185.601c-22.915 -18.252 -55.4189 -43.8691 -104.947 -82.6523
c-22.5439 -17.748 -60.3359 -55.1787 -103.053 -54.9473c-42.9277 -0.231445 -81.2051 37.75 -103.062 54.9551c-49.5293 38.7842 -82.0244 64.3945 -104.938 82.6455v-185.602z" />
    <glyph glyph-name="lightbulb" unicode="&#xf0eb;" horiz-adv-x="352" 
d="M176 368c8.83984 0 16 -7.16016 16 -16s-7.16016 -16 -16 -16c-35.2803 0 -64 -28.7002 -64 -64c0 -8.83984 -7.16016 -16 -16 -16s-16 7.16016 -16 16c0 52.9404 43.0596 96 96 96zM96.0596 -11.1699l-0.0400391 43.1797h159.961l-0.0507812 -43.1797
c-0.00976562 -3.13965 -0.939453 -6.21973 -2.67969 -8.83984l-24.5098 -36.8398c-2.95996 -4.45996 -7.95996 -7.14062 -13.3203 -7.14062h-78.8496c-5.35059 0 -10.3506 2.68066 -13.3203 7.14062l-24.5098 36.8398c-1.75 2.62012 -2.68066 5.68945 -2.68066 8.83984z
M176 448c97.2002 0 176 -78.7998 176 -176c0 -44.3701 -16.4502 -84.8496 -43.5498 -115.79c-16.6406 -18.9795 -42.7402 -58.79 -52.4199 -92.1602v-0.0498047h-48v0.0996094c0.00488281 4.98145 0.790039 9.78809 2.21973 14.3008
c5.67969 17.9893 22.9902 64.8496 62.0996 109.46c20.4102 23.29 31.6504 53.1699 31.6504 84.1396c0 70.5801 -57.4199 128 -128 128c-68.2803 0 -128.15 -54.3604 -127.95 -128c0.0898438 -30.9902 11.0703 -60.71 31.6104 -84.1396
c39.3496 -44.9004 56.5801 -91.8604 62.1699 -109.67c1.42969 -4.56055 2.13965 -9.30078 2.15039 -14.0703v-0.120117h-48v0.0595703c-9.68066 33.3604 -35.7803 73.1709 -52.4209 92.1602c-27.1094 30.9307 -43.5596 71.4102 -43.5596 115.78
c0 93.0303 73.7197 176 176 176z" />
    <glyph glyph-name="bell" unicode="&#xf0f3;" horiz-adv-x="448" 
d="M439.39 85.71c6 -6.44043 8.66016 -14.1602 8.61035 -21.71c-0.0996094 -16.4004 -12.9805 -32 -32.0996 -32h-383.801c-19.1191 0 -31.9893 15.5996 -32.0996 32c-0.0498047 7.5498 2.61035 15.2598 8.61035 21.71c19.3193 20.7598 55.4697 51.9902 55.4697 154.29
c0 77.7002 54.4795 139.9 127.939 155.16v20.8398c0 17.6699 14.3203 32 31.9805 32s31.9805 -14.3301 31.9805 -32v-20.8398c73.46 -15.2598 127.939 -77.46 127.939 -155.16c0 -102.3 36.1504 -133.53 55.4697 -154.29zM67.5303 80h312.939
c-21.2197 27.96 -44.4199 74.3203 -44.5293 159.42c0 0.200195 0.0595703 0.379883 0.0595703 0.580078c0 61.8604 -50.1396 112 -112 112s-112 -50.1396 -112 -112c0 -0.200195 0.0595703 -0.379883 0.0595703 -0.580078
c-0.109375 -85.0898 -23.3096 -131.45 -44.5293 -159.42zM224 -64c-35.3203 0 -63.9697 28.6504 -63.9697 64h127.939c0 -35.3496 -28.6494 -64 -63.9697 -64z" />
    <glyph glyph-name="hospital" unicode="&#xf0f8;" horiz-adv-x="448" 
d="M128 204v40c0 6.62695 5.37305 12 12 12h40c6.62695 0 12 -5.37305 12 -12v-40c0 -6.62695 -5.37305 -12 -12 -12h-40c-6.62695 0 -12 5.37305 -12 12zM268 192c-6.62695 0 -12 5.37305 -12 12v40c0 6.62695 5.37305 12 12 12h40c6.62695 0 12 -5.37305 12 -12v-40
c0 -6.62695 -5.37305 -12 -12 -12h-40zM192 108c0 -6.62695 -5.37305 -12 -12 -12h-40c-6.62695 0 -12 5.37305 -12 12v40c0 6.62695 5.37305 12 12 12h40c6.62695 0 12 -5.37305 12 -12v-40zM268 96c-6.62695 0 -12 5.37305 -12 12v40c0 6.62695 5.37305 12 12 12h40
c6.62695 0 12 -5.37305 12 -12v-40c0 -6.62695 -5.37305 -12 -12 -12h-40zM448 -28v-36h-448v36c0 6.62695 5.37305 12 12 12h19.5v378.965c0 11.6172 10.7451 21.0352 24 21.0352h88.5v40c0 13.2549 10.7451 24 24 24h112c13.2549 0 24 -10.7451 24 -24v-40h88.5
c13.2549 0 24 -9.41797 24 -21.0352v-378.965h19.5c6.62695 0 12 -5.37305 12 -12zM79.5 -15h112.5v67c0 6.62695 5.37305 12 12 12h40c6.62695 0 12 -5.37305 12 -12v-67h112.5v351h-64.5v-24c0 -13.2549 -10.7451 -24 -24 -24h-112c-13.2549 0 -24 10.7451 -24 24v24
h-64.5v-351zM266 384h-26v26c0 3.31152 -2.68848 6 -6 6h-20c-3.31152 0 -6 -2.68848 -6 -6v-26h-26c-3.31152 0 -6 -2.68848 -6 -6v-20c0 -3.31152 2.68848 -6 6 -6h26v-26c0 -3.31152 2.68848 -6 6 -6h20c3.31152 0 6 2.68848 6 6v26h26c3.31152 0 6 2.68848 6 6v20
c0 3.31152 -2.68848 6 -6 6z" />
    <glyph glyph-name="plus-square" unicode="&#xf0fe;" horiz-adv-x="448" 
d="M352 208v-32c0 -6.59961 -5.40039 -12 -12 -12h-88v-88c0 -6.59961 -5.40039 -12 -12 -12h-32c-6.59961 0 -12 5.40039 -12 12v88h-88c-6.59961 0 -12 5.40039 -12 12v32c0 6.59961 5.40039 12 12 12h88v88c0 6.59961 5.40039 12 12 12h32c6.59961 0 12 -5.40039 12 -12
v-88h88c6.59961 0 12 -5.40039 12 -12zM448 368v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h352c26.5 0 48 -21.5 48 -48zM400 22v340c0 3.2998 -2.7002 6 -6 6h-340c-3.2998 0 -6 -2.7002 -6 -6v-340
c0 -3.2998 2.7002 -6 6 -6h340c3.2998 0 6 2.7002 6 6z" />
    <glyph glyph-name="circle" unicode="&#xf111;" 
d="M256 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM256 -8c110.5 0 200 89.5 200 200s-89.5 200 -200 200s-200 -89.5 -200 -200s89.5 -200 200 -200z" />
    <glyph glyph-name="smile" unicode="&#xf118;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM168 208c-17.7002 0 -32 14.2998 -32 32s14.2998 32 32 32
s32 -14.2998 32 -32s-14.2998 -32 -32 -32zM328 208c-17.7002 0 -32 14.2998 -32 32s14.2998 32 32 32s32 -14.2998 32 -32s-14.2998 -32 -32 -32zM332 135.4c8.5 10.1992 23.7002 11.5 33.7998 3.09961c10.2002 -8.5 11.6006 -23.5996 3.10059 -33.7998
c-30 -36 -74.1006 -56.6006 -120.9 -56.6006s-90.9004 20.6006 -120.9 56.6006c-8.39941 10.2002 -7.09961 25.2998 3.10059 33.7998c10.0996 8.40039 25.2998 7.09961 33.7998 -3.09961c20.7998 -25.1006 51.5 -39.4004 84 -39.4004s63.2002 14.4004 84 39.4004z" />
    <glyph glyph-name="frown" unicode="&#xf119;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM168 208c-17.7002 0 -32 14.2998 -32 32s14.2998 32 32 32
s32 -14.2998 32 -32s-14.2998 -32 -32 -32zM328 272c17.7002 0 32 -14.2998 32 -32s-14.2998 -32 -32 -32s-32 14.2998 -32 32s14.2998 32 32 32zM248 144c40.2002 0 78 -17.7002 103.8 -48.5996c8.40039 -10.2002 7.10059 -25.3008 -3.09961 -33.8008
c-10.7002 -8.7998 -25.7002 -6.59961 -33.7998 3.10059c-16.6006 20 -41 31.3994 -66.9004 31.3994s-50.2998 -11.5 -66.9004 -31.3994c-8.5 -10.2002 -23.5996 -11.5 -33.7998 -3.10059c-10.2002 8.5 -11.5996 23.6006 -3.09961 33.8008
c25.7998 30.8994 63.5996 48.5996 103.8 48.5996z" />
    <glyph glyph-name="meh" unicode="&#xf11a;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM168 208c-17.7002 0 -32 14.2998 -32 32s14.2998 32 32 32
s32 -14.2998 32 -32s-14.2998 -32 -32 -32zM328 272c17.7002 0 32 -14.2998 32 -32s-14.2998 -32 -32 -32s-32 14.2998 -32 32s14.2998 32 32 32zM336 128c13.2002 0 24 -10.7998 24 -24s-10.7998 -24 -24 -24h-176c-13.2002 0 -24 10.7998 -24 24s10.7998 24 24 24h176z
" />
    <glyph glyph-name="keyboard" unicode="&#xf11c;" horiz-adv-x="576" 
d="M528 384c26.5098 0 48 -21.4902 48 -48v-288c0 -26.5098 -21.4902 -48 -48 -48h-480c-26.5098 0 -48 21.4902 -48 48v288c0 26.5098 21.4902 48 48 48h480zM536 48v288c0 4.41113 -3.58887 8 -8 8h-480c-4.41113 0 -8 -3.58887 -8 -8v-288c0 -4.41113 3.58887 -8 8 -8
h480c4.41113 0 8 3.58887 8 8zM170 178c0 -6.62695 -5.37305 -12 -12 -12h-28c-6.62695 0 -12 5.37305 -12 12v28c0 6.62695 5.37305 12 12 12h28c6.62695 0 12 -5.37305 12 -12v-28zM266 178c0 -6.62695 -5.37305 -12 -12 -12h-28c-6.62695 0 -12 5.37305 -12 12v28
c0 6.62695 5.37305 12 12 12h28c6.62695 0 12 -5.37305 12 -12v-28zM362 178c0 -6.62695 -5.37305 -12 -12 -12h-28c-6.62695 0 -12 5.37305 -12 12v28c0 6.62695 5.37305 12 12 12h28c6.62695 0 12 -5.37305 12 -12v-28zM458 178c0 -6.62695 -5.37305 -12 -12 -12h-28
c-6.62695 0 -12 5.37305 -12 12v28c0 6.62695 5.37305 12 12 12h28c6.62695 0 12 -5.37305 12 -12v-28zM122 96c0 -6.62695 -5.37305 -12 -12 -12h-28c-6.62695 0 -12 5.37305 -12 12v28c0 6.62695 5.37305 12 12 12h28c6.62695 0 12 -5.37305 12 -12v-28zM506 96
c0 -6.62695 -5.37305 -12 -12 -12h-28c-6.62695 0 -12 5.37305 -12 12v28c0 6.62695 5.37305 12 12 12h28c6.62695 0 12 -5.37305 12 -12v-28zM122 260c0 -6.62695 -5.37305 -12 -12 -12h-28c-6.62695 0 -12 5.37305 -12 12v28c0 6.62695 5.37305 12 12 12h28
c6.62695 0 12 -5.37305 12 -12v-28zM218 260c0 -6.62695 -5.37305 -12 -12 -12h-28c-6.62695 0 -12 5.37305 -12 12v28c0 6.62695 5.37305 12 12 12h28c6.62695 0 12 -5.37305 12 -12v-28zM314 260c0 -6.62695 -5.37305 -12 -12 -12h-28c-6.62695 0 -12 5.37305 -12 12v28
c0 6.62695 5.37305 12 12 12h28c6.62695 0 12 -5.37305 12 -12v-28zM410 260c0 -6.62695 -5.37305 -12 -12 -12h-28c-6.62695 0 -12 5.37305 -12 12v28c0 6.62695 5.37305 12 12 12h28c6.62695 0 12 -5.37305 12 -12v-28zM506 260c0 -6.62695 -5.37305 -12 -12 -12h-28
c-6.62695 0 -12 5.37305 -12 12v28c0 6.62695 5.37305 12 12 12h28c6.62695 0 12 -5.37305 12 -12v-28zM408 102c0 -6.62695 -5.37305 -12 -12 -12h-216c-6.62695 0 -12 5.37305 -12 12v16c0 6.62695 5.37305 12 12 12h216c6.62695 0 12 -5.37305 12 -12v-16z" />
    <glyph glyph-name="calendar" unicode="&#xf133;" horiz-adv-x="448" 
d="M400 384c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h48v52c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-52h128v52c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12
v-52h48zM394 -16c3.2998 0 6 2.7002 6 6v298h-352v-298c0 -3.2998 2.7002 -6 6 -6h340z" />
    <glyph glyph-name="play-circle" unicode="&#xf144;" 
d="M371.7 210c16.3994 -9.2002 16.3994 -32.9004 0 -42l-176 -101c-15.9004 -8.7998 -35.7002 2.59961 -35.7002 21v208c0 18.5 19.9004 29.7998 35.7002 21zM504 192c0 -137 -111 -248 -248 -248s-248 111 -248 248s111 248 248 248s248 -111 248 -248zM56 192
c0 -110.5 89.5 -200 200 -200s200 89.5 200 200s-89.5 200 -200 200s-200 -89.5 -200 -200z" />
    <glyph glyph-name="minus-square" unicode="&#xf146;" horiz-adv-x="448" 
d="M108 164c-6.59961 0 -12 5.40039 -12 12v32c0 6.59961 5.40039 12 12 12h232c6.59961 0 12 -5.40039 12 -12v-32c0 -6.59961 -5.40039 -12 -12 -12h-232zM448 368v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h352
c26.5 0 48 -21.5 48 -48zM400 22v340c0 3.2998 -2.7002 6 -6 6h-340c-3.2998 0 -6 -2.7002 -6 -6v-340c0 -3.2998 2.7002 -6 6 -6h340c3.2998 0 6 2.7002 6 6z" />
    <glyph glyph-name="check-square" unicode="&#xf14a;" horiz-adv-x="448" 
d="M400 416c26.5098 0 48 -21.4902 48 -48v-352c0 -26.5098 -21.4902 -48 -48 -48h-352c-26.5098 0 -48 21.4902 -48 48v352c0 26.5098 21.4902 48 48 48h352zM400 16v352h-352v-352h352zM364.136 257.724l-172.589 -171.204
c-4.70508 -4.66699 -12.3027 -4.63672 -16.9697 0.0683594l-90.7812 91.5156c-4.66699 4.70508 -4.63672 12.3037 0.0693359 16.9717l22.7188 22.5361c4.70508 4.66699 12.3027 4.63672 16.9697 -0.0693359l59.792 -60.2773l141.353 140.217
c4.70508 4.66699 12.3027 4.63672 16.9697 -0.0683594l22.5361 -22.7178c4.66699 -4.70605 4.63672 -12.3047 -0.0683594 -16.9717z" />
    <glyph glyph-name="share-square" unicode="&#xf14d;" horiz-adv-x="576" 
d="M561.938 289.94c18.75 -18.7402 18.75 -49.1406 0 -67.8809l-143.998 -144c-29.9727 -29.9727 -81.9404 -9.05273 -81.9404 33.9404v53.7998c-101.266 -7.83691 -99.625 -31.6406 -84.1104 -78.7598c14.2285 -43.0889 -33.4736 -79.248 -71.0195 -55.7402
c-51.6924 32.3057 -84.8701 83.0635 -84.8701 144.76c0 39.3408 12.2197 72.7402 36.3301 99.3008c19.8398 21.8398 47.7402 38.4697 82.9102 49.4199c36.7295 11.4395 78.3096 16.1094 120.76 17.9893v57.1982c0 42.9355 51.9258 63.9541 81.9404 33.9404zM384 112l144 144
l-144 144v-104.09c-110.86 -0.90332 -240 -10.5166 -240 -119.851c0 -52.1396 32.79 -85.6094 62.3096 -104.06c-39.8174 120.65 48.999 141.918 177.69 143.84v-103.84zM408.74 27.5068c7.4375 2.125 14.5508 5.30566 20.9736 9.30273
c7.97656 4.95215 18.2861 -0.825195 18.2861 -10.2139v-42.5957c0 -26.5098 -21.4902 -48 -48 -48h-352c-26.5098 0 -48 21.4902 -48 48v352c0 26.5098 21.4902 48 48 48h132c6.62695 0 12 -5.37305 12 -12v-4.48633c0 -4.91699 -2.9873 -9.36914 -7.56934 -11.1514
c-13.7021 -5.33105 -26.3955 -11.5371 -38.0498 -18.585c-1.82715 -1.11523 -3.98633 -1.76953 -6.28027 -1.77734h-86.1006c-3.31152 0 -6 -2.68848 -6 -6v-340c0 -3.31152 2.68848 -6 6 -6h340c3.31152 0 6 2.68848 6 6v25.9658c0 5.37012 3.5791 10.0596 8.74023 11.541z
" />
    <glyph glyph-name="compass" unicode="&#xf14e;" horiz-adv-x="496" 
d="M347.94 318.14c16.6592 7.61035 33.8096 -9.54004 26.1992 -26.1992l-65.9697 -144.341c-3.19238 -6.9834 -8.78613 -12.5771 -15.7695 -15.7695l-144.341 -65.9697c-16.6592 -7.61035 -33.8096 9.5498 -26.1992 26.1992l65.9697 144.341
c3.19238 6.9834 8.78613 12.5771 15.7695 15.7695zM270.58 169.42c12.4697 12.4697 12.4697 32.6904 0 45.1602s-32.6904 12.4697 -45.1602 0s-12.4697 -32.6904 0 -45.1602s32.6904 -12.4697 45.1602 0zM248 440c136.97 0 248 -111.03 248 -248s-111.03 -248 -248 -248
s-248 111.03 -248 248s111.03 248 248 248zM248 -8c110.28 0 200 89.7197 200 200s-89.7197 200 -200 200s-200 -89.7197 -200 -200s89.7197 -200 200 -200z" />
    <glyph glyph-name="caret-square-down" unicode="&#xf150;" horiz-adv-x="448" 
d="M125.1 240h197.801c10.6992 0 16.0996 -13 8.5 -20.5l-98.9004 -98.2998c-4.7002 -4.7002 -12.2002 -4.7002 -16.9004 0l-98.8994 98.2998c-7.7002 7.5 -2.2998 20.5 8.39941 20.5zM448 368v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352
c0 26.5 21.5 48 48 48h352c26.5 0 48 -21.5 48 -48zM400 22v340c0 3.2998 -2.7002 6 -6 6h-340c-3.2998 0 -6 -2.7002 -6 -6v-340c0 -3.2998 2.7002 -6 6 -6h340c3.2998 0 6 2.7002 6 6z" />
    <glyph glyph-name="caret-square-up" unicode="&#xf151;" horiz-adv-x="448" 
d="M322.9 144h-197.801c-10.6992 0 -16.0996 13 -8.5 20.5l98.9004 98.2998c4.7002 4.7002 12.2002 4.7002 16.9004 0l98.8994 -98.2998c7.7002 -7.5 2.2998 -20.5 -8.39941 -20.5zM448 368v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352
c0 26.5 21.5 48 48 48h352c26.5 0 48 -21.5 48 -48zM400 22v340c0 3.2998 -2.7002 6 -6 6h-340c-3.2998 0 -6 -2.7002 -6 -6v-340c0 -3.2998 2.7002 -6 6 -6h340c3.2998 0 6 2.7002 6 6z" />
    <glyph glyph-name="caret-square-right" unicode="&#xf152;" horiz-adv-x="448" 
d="M176 93.0996v197.801c0 10.6992 13 16.0996 20.5 8.5l98.2998 -98.9004c4.7002 -4.7002 4.7002 -12.2002 0 -16.9004l-98.2998 -98.8994c-7.5 -7.7002 -20.5 -2.2998 -20.5 8.39941zM448 368v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352
c0 26.5 21.5 48 48 48h352c26.5 0 48 -21.5 48 -48zM400 22v340c0 3.2998 -2.7002 6 -6 6h-340c-3.2998 0 -6 -2.7002 -6 -6v-340c0 -3.2998 2.7002 -6 6 -6h340c3.2998 0 6 2.7002 6 6z" />
    <glyph glyph-name="file" unicode="&#xf15b;" horiz-adv-x="384" 
d="M369.9 350.1c9 -9 14.0996 -21.2998 14.0996 -34v-332.1c0 -26.5 -21.5 -48 -48 -48h-288c-26.5 0 -48 21.5 -48 48v416c0 26.5 21.5 48 48 48.0996h204.1c12.7002 0 24.9004 -5.09961 33.9004 -14.0996zM332.1 320l-76.0996 76.0996v-76.0996h76.0996zM48 -16h288v288
h-104c-13.2998 0 -24 10.7002 -24 24v104h-160v-416z" />
    <glyph glyph-name="file-alt" unicode="&#xf15c;" horiz-adv-x="384" 
d="M288 200v-28c0 -6.59961 -5.40039 -12 -12 -12h-168c-6.59961 0 -12 5.40039 -12 12v28c0 6.59961 5.40039 12 12 12h168c6.59961 0 12 -5.40039 12 -12zM276 128c6.59961 0 12 -5.40039 12 -12v-28c0 -6.59961 -5.40039 -12 -12 -12h-168c-6.59961 0 -12 5.40039 -12 12
v28c0 6.59961 5.40039 12 12 12h168zM384 316.1v-332.1c0 -26.5 -21.5 -48 -48 -48h-288c-26.5 0 -48 21.5 -48 48v416c0 26.5 21.5 48 48 48h204.1c12.7002 0 24.9004 -5.09961 33.9004 -14.0996l83.9004 -83.9004c9 -8.90039 14.0996 -21.2002 14.0996 -33.9004z
M256 396.1v-76.0996h76.0996zM336 -16v288h-104c-13.2998 0 -24 10.7002 -24 24v104h-160v-416h288z" />
    <glyph glyph-name="thumbs-up" unicode="&#xf164;" 
d="M466.27 161.31c4.6748 -22.6465 0.864258 -44.5371 -8.98926 -62.9893c2.95898 -23.8682 -4.02148 -48.5654 -17.3398 -66.9902c-0.954102 -55.9072 -35.8232 -95.3301 -112.94 -95.3301c-7 0 -15 0.00976562 -22.2197 0.00976562
c-102.742 0 -133.293 38.9395 -177.803 39.9404c-3.56934 -13.7764 -16.085 -23.9502 -30.9775 -23.9502h-64c-17.6729 0 -32 14.3271 -32 32v240c0 17.6729 14.3271 32 32 32h98.7598c19.1455 16.9531 46.0137 60.6533 68.7598 83.4004
c13.667 13.667 10.1533 108.6 71.7607 108.6c57.5801 0 95.2695 -31.9355 95.2695 -104.73c0 -18.4092 -3.92969 -33.7295 -8.84961 -46.5391h36.4795c48.6025 0 85.8203 -41.5654 85.8203 -85.5801c0 -19.1504 -4.95996 -34.9902 -13.7305 -49.8408zM404.52 107.48
c21.5811 20.3838 18.6992 51.0645 5.21094 65.6191c9.44922 0 22.3594 18.9102 22.2695 37.8105c-0.0898438 18.9102 -16.71 37.8203 -37.8203 37.8203h-103.989c0 37.8193 28.3594 55.3691 28.3594 94.5391c0 23.75 0 56.7305 -47.2695 56.7305
c-18.9102 -18.9102 -9.45996 -66.1797 -37.8203 -94.54c-26.5596 -26.5703 -66.1797 -97.46 -94.54 -97.46h-10.9199v-186.17c53.6113 0 100.001 -37.8203 171.64 -37.8203h37.8203c35.5117 0 60.8203 17.1201 53.1201 65.9004
c15.2002 8.16016 26.5 36.4395 13.9395 57.5703zM88 16c0 13.2549 -10.7451 24 -24 24s-24 -10.7451 -24 -24s10.7451 -24 24 -24s24 10.7451 24 24z" />
    <glyph glyph-name="thumbs-down" unicode="&#xf165;" 
d="M466.27 222.69c8.77051 -14.8506 13.7305 -30.6904 13.7305 -49.8408c0 -44.0146 -37.2178 -85.5801 -85.8203 -85.5801h-36.4795c4.91992 -12.8096 8.84961 -28.1299 8.84961 -46.5391c0 -72.7949 -37.6895 -104.73 -95.2695 -104.73
c-61.6074 0 -58.0938 94.9326 -71.7607 108.6c-22.7461 22.7471 -49.6133 66.4473 -68.7598 83.4004h-7.05176c-5.5332 -9.56152 -15.8662 -16 -27.708 -16h-64c-17.6729 0 -32 14.3271 -32 32v240c0 17.6729 14.3271 32 32 32h64c8.11328 0 15.5146 -3.02539 21.1553 -8
h10.8447c40.9971 0 73.1953 39.9902 176.78 39.9902c7.21973 0 15.2197 0.00976562 22.2197 0.00976562c77.1172 0 111.986 -39.4229 112.94 -95.3301c13.3184 -18.4248 20.2979 -43.1221 17.3398 -66.9902c9.85352 -18.4521 13.6641 -40.3428 8.98926 -62.9893zM64 152
c13.2549 0 24 10.7451 24 24s-10.7451 24 -24 24s-24 -10.7451 -24 -24s10.7451 -24 24 -24zM394.18 135.27c21.1104 0 37.7305 18.9102 37.8203 37.8203c0.0898438 18.9004 -12.8203 37.8105 -22.2695 37.8105c13.4883 14.5547 16.3701 45.2354 -5.21094 65.6191
c12.5605 21.1309 1.26074 49.4102 -13.9395 57.5703c7.7002 48.7803 -17.6084 65.9004 -53.1201 65.9004h-37.8203c-71.6387 0 -118.028 -37.8203 -171.64 -37.8203v-186.17h10.9199c28.3604 0 67.9805 -70.8896 94.54 -97.46
c28.3604 -28.3604 18.9102 -75.6299 37.8203 -94.54c47.2695 0 47.2695 32.9805 47.2695 56.7305c0 39.1699 -28.3594 56.7197 -28.3594 94.5391h103.989z" />
    <glyph glyph-name="sun" unicode="&#xf185;" 
d="M494.2 226.1c11.2002 -7.59961 17.7998 -20.0996 17.8994 -33.6992c0 -13.4004 -6.69922 -26 -17.7998 -33.5l-59.7998 -40.5l13.7002 -71c2.5 -13.2002 -1.60059 -26.8008 -11.1006 -36.3008s-22.8994 -13.7998 -36.2998 -11.0996l-70.8994 13.7002l-40.4004 -59.9004
c-7.5 -11.0996 -20.0996 -17.7998 -33.5 -17.7998s-26 6.7002 -33.5 17.9004l-40.4004 59.8994l-70.7998 -13.7002c-13.3994 -2.59961 -26.7998 1.60059 -36.2998 11.1006s-13.7002 23.0996 -11.0996 36.2998l13.6992 71l-59.7998 40.5
c-11.0996 7.5 -17.7998 20 -17.7998 33.5s6.59961 26 17.7998 33.5996l59.7998 40.5l-13.6992 71c-2.60059 13.2002 1.59961 26.7002 11.0996 36.3008c9.5 9.59961 23 13.6992 36.2998 11.1992l70.7998 -13.6992l40.4004 59.8994c15.0996 22.2998 51.9004 22.2998 67 0
l40.4004 -59.8994l70.8994 13.6992c13 2.60059 26.6006 -1.59961 36.2002 -11.0996c9.5 -9.59961 13.7002 -23.2002 11.0996 -36.4004l-13.6992 -71zM381.3 140.5l76.7998 52.0996l-76.7998 52l17.6006 91.1006l-91 -17.6006l-51.9004 76.9004l-51.7998 -76.7998
l-91 17.5996l17.5996 -91.2002l-76.7998 -52l76.7998 -52l-17.5996 -91.1992l90.8994 17.5996l51.9004 -77l51.9004 76.9004l91 -17.6006zM256 296c57.2998 0 104 -46.7002 104 -104s-46.7002 -104 -104 -104s-104 46.7002 -104 104s46.7002 104 104 104zM256 136
c30.9004 0 56 25.0996 56 56s-25.0996 56 -56 56s-56 -25.0996 -56 -56s25.0996 -56 56 -56z" />
    <glyph glyph-name="moon" unicode="&#xf186;" 
d="M279.135 -64c-141.424 0 -256 114.64 -256 256c0 141.425 114.641 256 256 256c16.0342 -0.00292969 31.5078 -1.46875 46.7354 -4.27734c44.0205 -8.13086 53.7666 -66.8691 15.0215 -88.9189c-41.374 -23.5439 -67.4336 -67.4121 -67.4336 -115.836
c0 -83.5234 75.9238 -146.475 158.272 -130.792c43.6904 8.32129 74.5186 -42.5693 46.248 -77.4004c-47.8613 -58.9717 -120.088 -94.7754 -198.844 -94.7754zM279.135 400c-114.875 0 -208 -93.125 -208 -208s93.125 -208 208 -208
c65.2314 0 123.439 30.0361 161.575 77.0244c-111.611 -21.2568 -215.252 64.0957 -215.252 177.943c0 67.5127 36.9326 126.392 91.6934 157.555c-12.3271 2.27637 -25.0312 3.47754 -38.0166 3.47754z" />
    <glyph glyph-name="caret-square-left" unicode="&#xf191;" horiz-adv-x="448" 
d="M272 290.9v-197.801c0 -10.6992 -13 -16.0996 -20.5 -8.5l-98.2998 98.9004c-4.7002 4.7002 -4.7002 12.2002 0 16.9004l98.2998 98.8994c7.5 7.7002 20.5 2.2998 20.5 -8.39941zM448 368v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352
c0 26.5 21.5 48 48 48h352c26.5 0 48 -21.5 48 -48zM400 22v340c0 3.2998 -2.7002 6 -6 6h-340c-3.2998 0 -6 -2.7002 -6 -6v-340c0 -3.2998 2.7002 -6 6 -6h340c3.2998 0 6 2.7002 6 6z" />
    <glyph glyph-name="dot-circle" unicode="&#xf192;" 
d="M256 392c-110.549 0 -200 -89.4678 -200 -200c0 -110.549 89.4678 -200 200 -200c110.549 0 200 89.4678 200 200c0 110.549 -89.4678 200 -200 200zM256 440c136.967 0 248 -111.033 248 -248s-111.033 -248 -248 -248s-248 111.033 -248 248s111.033 248 248 248z
M256 272c44.1826 0 80 -35.8174 80 -80s-35.8174 -80 -80 -80s-80 35.8174 -80 80s35.8174 80 80 80z" />
    <glyph glyph-name="building" unicode="&#xf1ad;" horiz-adv-x="448" 
d="M128 300v40c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-40c0 -6.59961 -5.40039 -12 -12 -12h-40c-6.59961 0 -12 5.40039 -12 12zM268 288c-6.59961 0 -12 5.40039 -12 12v40c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-40
c0 -6.59961 -5.40039 -12 -12 -12h-40zM140 192c-6.59961 0 -12 5.40039 -12 12v40c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-40c0 -6.59961 -5.40039 -12 -12 -12h-40zM268 192c-6.59961 0 -12 5.40039 -12 12v40c0 6.59961 5.40039 12 12 12h40
c6.59961 0 12 -5.40039 12 -12v-40c0 -6.59961 -5.40039 -12 -12 -12h-40zM192 108c0 -6.59961 -5.40039 -12 -12 -12h-40c-6.59961 0 -12 5.40039 -12 12v40c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-40zM268 96c-6.59961 0 -12 5.40039 -12 12v40
c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-40c0 -6.59961 -5.40039 -12 -12 -12h-40zM448 -28v-36h-448v36c0 6.59961 5.40039 12 12 12h19.5v440c0 13.2998 10.7002 24 24 24h337c13.2998 0 24 -10.7002 24 -24v-440h19.5
c6.59961 0 12 -5.40039 12 -12zM79.5 -15h112.5v67c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-67h112.5v414l-288.5 1z" />
    <glyph glyph-name="file-pdf" unicode="&#xf1c1;" horiz-adv-x="384" 
d="M369.9 350.1c9 -9 14.0996 -21.2998 14.0996 -34v-332.1c0 -26.5 -21.5 -48 -48 -48h-288c-26.5 0 -48 21.5 -48 48v416c0 26.5 21.5 48 48 48.0996h204.1c12.7002 0 24.9004 -5.09961 33.9004 -14.0996zM332.1 320l-76.0996 76.0996v-76.0996h76.0996zM48 -16h288v288
h-104c-13.2998 0 -24 10.7002 -24 24v104h-160v-416zM298.2 127.7c10.5 -10.5 8 -38.7002 -17.5 -38.7002c-14.7998 0 -36.9004 6.7998 -55.7998 17c-21.6006 -3.59961 -46 -12.7002 -68.4004 -20.0996c-50.0996 -86.4004 -79.4004 -47 -76.0996 -31.2002
c4 20 31 35.8994 51 46.2002c10.5 18.3994 25.3994 50.5 35.3994 74.3994c-7.39941 28.6006 -11.3994 51 -7 67.1006c4.7998 17.6992 38.4004 20.2998 42.6006 -5.90039c4.69922 -15.4004 -1.5 -39.9004 -5.40039 -56c8.09961 -21.2998 19.5996 -35.7998 36.7998 -46.2998
c17.4004 2.2002 52.2002 5.5 64.4004 -6.5zM100.1 49.9004c0 -0.700195 11.4004 4.69922 30.4004 35c-5.90039 -5.5 -25.2998 -21.3008 -30.4004 -35zM181.7 240.5c-2.5 0 -2.60059 -26.9004 1.7998 -40.7998c4.90039 8.7002 5.59961 40.7998 -1.7998 40.7998zM157.3 103.9
c15.9004 6.09961 34 14.8994 54.7998 19.1992c-11.1992 8.30078 -21.7998 20.4004 -30.0996 35.5c-6.7002 -17.6992 -15 -37.7998 -24.7002 -54.6992zM288.9 108.9c3.59961 2.39941 -2.2002 10.3994 -37.3008 7.7998c32.3008 -13.7998 37.3008 -7.7998 37.3008 -7.7998z" />
    <glyph glyph-name="file-word" unicode="&#xf1c2;" horiz-adv-x="384" 
d="M369.9 350.1c9 -9 14.0996 -21.2998 14.0996 -34v-332.1c0 -26.5 -21.5 -48 -48 -48h-288c-26.5 0 -48 21.5 -48 48v416c0 26.5 21.5 48 48 48.0996h204.1c12.7002 0 24.9004 -5.09961 33.9004 -14.0996zM332.1 320l-76.0996 76.0996v-76.0996h76.0996zM48 -16h288v288
h-104c-13.2998 0 -24 10.7002 -24 24v104h-160v-416zM268.1 192v0.200195h15.8008c7.7998 0 13.5 -7.2998 11.5996 -14.9004c-4.2998 -17 -13.7002 -54.0996 -34.5 -136c-1.2998 -5.39941 -6.09961 -9.09961 -11.5996 -9.09961h-24.7002
c-5.5 0 -10.2998 3.7998 -11.6006 9.09961c-5.2998 20.9004 -17.7998 71 -17.8994 71.4004l-2.90039 17.2998c-0.5 -5.2998 -1.5 -11.0996 -3 -17.2998l-17.8994 -71.4004c-1.30078 -5.39941 -6.10059 -9.09961 -11.6006 -9.09961h-25.2002
c-5.59961 0 -10.3994 3.7002 -11.6992 9.09961c-6.5 26.5 -25.2002 103.4 -33.2002 136c-1.7998 7.5 3.89941 14.7998 11.7002 14.7998h16.7998c5.7998 0 10.7002 -4.09961 11.7998 -9.69922c5 -25.7002 18.4004 -93.8008 19.0996 -99
c0.300781 -1.7002 0.400391 -3.10059 0.5 -4.2002c0.800781 7.5 0.400391 4.7002 24.8008 103.7c1.39941 5.2998 6.19922 9.09961 11.6992 9.09961h13.3008c5.59961 0 10.3994 -3.7998 11.6992 -9.2002c23.9004 -99.7002 22.8008 -94.3994 23.6006 -99.5
c0.299805 -1.7002 0.5 -3.09961 0.700195 -4.2998c0.599609 8.09961 0.399414 5.7998 21 103.5c1.09961 5.5 6 9.5 11.6992 9.5z" />
    <glyph glyph-name="file-excel" unicode="&#xf1c3;" horiz-adv-x="384" 
d="M369.9 350.1c9 -9 14.0996 -21.2998 14.0996 -34v-332.1c0 -26.5 -21.5 -48 -48 -48h-288c-26.5 0 -48 21.5 -48 48v416c0 26.5 21.5 48 48 48.0996h204.1c12.7002 0 24.9004 -5.09961 33.9004 -14.0996zM332.1 320l-76.0996 76.0996v-76.0996h76.0996zM48 -16h288v288
h-104c-13.2998 0 -24 10.7002 -24 24v104h-160v-416zM260 224c9.2002 0 15 -10 10.2998 -18c-16 -27.5 -45.5996 -76.9004 -46.2998 -78l46.4004 -78c4.59961 -8 -1.10059 -18 -10.4004 -18h-28.7998c-4.40039 0 -8.5 2.40039 -10.6006 6.2998
c-22.6992 41.7998 -13.6992 27.5 -28.5996 57.7002c-5.59961 -12.7002 -6.90039 -17.7002 -28.5996 -57.7002c-2.10059 -3.89941 -6.10059 -6.2998 -10.5 -6.2998h-28.9004c-9.2998 0 -15.0996 10 -10.4004 18l46.3008 78l-46.3008 78c-4.59961 8 1.10059 18 10.4004 18
h28.9004c4.39941 0 8.5 -2.40039 10.5996 -6.2998c21.7002 -40.4004 14.7002 -28.6006 28.5996 -57.7002c6.40039 15.2998 10.6006 24.5996 28.6006 57.7002c2.09961 3.89941 6.09961 6.2998 10.5 6.2998h28.7998z" />
    <glyph glyph-name="file-powerpoint" unicode="&#xf1c4;" horiz-adv-x="384" 
d="M369.9 350.1c9 -9 14.0996 -21.2998 14.0996 -34v-332.1c0 -26.5 -21.5 -48 -48 -48h-288c-26.5 0 -48 21.5 -48 48v416c0 26.5 21.5 48 48 48.0996h204.1c12.7002 0 24.9004 -5.09961 33.9004 -14.0996zM332.1 320l-76.0996 76.0996v-76.0996h76.0996zM48 -16h288v288
h-104c-13.2998 0 -24 10.7002 -24 24v104h-160v-416zM120 44v168c0 6.59961 5.40039 12 12 12h69.2002c36.7002 0 62.7998 -27 62.7998 -66.2998c0 -74.2998 -68.7002 -66.5 -95.5 -66.5v-47.2002c0 -6.59961 -5.40039 -12 -12 -12h-24.5c-6.59961 0 -12 5.40039 -12 12z
M168.5 131.4h23c7.90039 0 13.9004 2.39941 18.0996 7.19922c8.5 9.80078 8.40039 28.5 0.100586 37.8008c-4.10059 4.59961 -9.90039 7 -17.4004 7h-23.8994v-52h0.0996094z" />
    <glyph glyph-name="file-image" unicode="&#xf1c5;" horiz-adv-x="384" 
d="M369.9 350.1c9 -9 14.0996 -21.2998 14.0996 -34v-332.1c0 -26.5 -21.5 -48 -48 -48h-288c-26.5 0 -48 21.5 -48 48v416c0 26.5 21.5 48 48 48.0996h204.1c12.7002 0 24.9004 -5.09961 33.9004 -14.0996zM332.1 320l-76.0996 76.0996v-76.0996h76.0996zM48 -16h288v288
h-104c-13.2998 0 -24 10.7002 -24 24v104h-160v-416zM80 32v64l39.5 39.5c4.7002 4.7002 12.2998 4.7002 17 0l39.5 -39.5l87.5 87.5c4.7002 4.7002 12.2998 4.7002 17 0l23.5 -23.5v-128h-224zM128 272c26.5 0 48 -21.5 48 -48s-21.5 -48 -48 -48s-48 21.5 -48 48
s21.5 48 48 48z" />
    <glyph glyph-name="file-archive" unicode="&#xf1c6;" horiz-adv-x="384" 
d="M128.3 288h32v-32h-32v32zM192.3 384v-32h-32v32h32zM128.3 352h32v-32h-32v32zM192.3 320v-32h-32v32h32zM369.9 350.1c9 -9 14.0996 -21.2998 14.0996 -34v-332.1c0 -26.5 -21.5 -48 -48 -48h-288c-26.5 0 -48 21.5 -48 48v416c0 26.5 21.5 48 48 48.0996h204.1
c12.7002 0 24.9004 -5.09961 33.9004 -14.0996zM256 396.1v-76.0996h76.0996zM336 -16v288h-104c-13.2998 0 -24 10.7002 -24 24v104h-48.2998v-16h-32v16h-79.7002v-416h288zM194.2 182.3l17.2998 -87.7002c6.40039 -32.3994 -18.4004 -62.5996 -51.5 -62.5996
c-33.2002 0 -58 30.4004 -51.4004 62.9004l19.7002 97.0996v32h32v-32h22.1006c5.7998 0 10.6992 -4.09961 11.7998 -9.7002zM160.3 57.9004c17.9004 0 32.4004 12.0996 32.4004 27c0 14.8994 -14.5 27 -32.4004 27c-17.8994 0 -32.3994 -12.1006 -32.3994 -27
c0 -14.9004 14.5 -27 32.3994 -27zM192.3 256v-32h-32v32h32z" />
    <glyph glyph-name="file-audio" unicode="&#xf1c7;" horiz-adv-x="384" 
d="M369.941 350.059c8.68848 -8.68848 14.0586 -20.6943 14.0586 -33.9404v-332.118c0 -26.5098 -21.4902 -48 -48 -48h-288c-26.5098 0 -48 21.4902 -48 48v416c0 26.5098 21.4902 48 48 48h204.118c13.2461 0 25.252 -5.37012 33.9404 -14.0586zM332.118 320
l-76.1182 76.1182v-76.1182h76.1182zM48 -16h288v288h-104c-13.2549 0 -24 10.7451 -24 24v104h-160v-416zM192 60.0244c0 -10.6914 -12.9258 -16.0459 -20.4854 -8.48535l-35.5146 35.9746h-28c-6.62695 0 -12 5.37305 -12 12v56c0 6.62695 5.37305 12 12 12h28
l35.5146 36.9473c7.56055 7.56055 20.4854 2.20605 20.4854 -8.48535v-135.951zM233.201 107.154c9.05078 9.29688 9.05957 24.1328 0.000976562 33.4385c-22.1494 22.752 12.2344 56.2461 34.3945 33.4814c27.1982 -27.9404 27.2119 -72.4443 0.000976562 -100.401
c-21.793 -22.3857 -56.9463 10.3154 -34.3965 33.4814z" />
    <glyph glyph-name="file-video" unicode="&#xf1c8;" horiz-adv-x="384" 
d="M369.941 350.059c8.68848 -8.68848 14.0586 -20.6943 14.0586 -33.9404v-332.118c0 -26.5098 -21.4902 -48 -48 -48h-288c-26.5098 0 -48 21.4902 -48 48v416c0 26.5098 21.4902 48 48 48h204.118c13.2461 0 25.252 -5.37012 33.9404 -14.0586zM332.118 320
l-76.1182 76.1182v-76.1182h76.1182zM48 -16h288v288h-104c-13.2549 0 -24 10.7451 -24 24v104h-160v-416zM276.687 195.303c10.0049 10.0049 27.3135 2.99707 27.3135 -11.3135v-111.976c0 -14.2939 -17.2959 -21.332 -27.3135 -11.3135l-52.6865 52.6738v-37.374
c0 -11.0459 -8.9541 -20 -20 -20h-104c-11.0459 0 -20 8.9541 -20 20v104c0 11.0459 8.9541 20 20 20h104c11.0459 0 20 -8.9541 20 -20v-37.374z" />
    <glyph glyph-name="file-code" unicode="&#xf1c9;" horiz-adv-x="384" 
d="M149.9 98.9004c3.5 -3.30078 3.69922 -8.90039 0.399414 -12.4004l-17.3994 -18.5996c-1.60059 -1.80078 -4 -2.80078 -6.40039 -2.80078c-2.2002 0 -4.40039 0.900391 -6 2.40039l-57.7002 54.0996c-3.7002 3.40039 -3.7002 9.30078 0 12.8008l57.7002 54.0996
c3.40039 3.2998 9 3.2002 12.4004 -0.400391l17.3994 -18.5996l0.200195 -0.200195c3.2002 -3.59961 2.7998 -9.2002 -0.799805 -12.3994l-32.7998 -28.9004l32.7998 -28.9004zM369.9 350.1c9 -9 14.0996 -21.2998 14.0996 -34v-332.1c0 -26.5 -21.5 -48 -48 -48h-288
c-26.5 0 -48 21.5 -48 48v416c0 26.5 21.5 48 48 48.0996h204.1c12.7002 0 24.9004 -5.09961 33.9004 -14.0996zM256 396.1v-76.0996h76.0996zM336 -16v288h-104c-13.2998 0 -24 10.7002 -24 24v104h-160v-416h288zM209.6 234l24.4004 -7
c4.7002 -1.2998 7.40039 -6.2002 6 -10.9004l-54.7002 -188.199c-1.2998 -4.60059 -6.2002 -7.40039 -10.8994 -6l-24.4004 7.09961c-4.7002 1.2998 -7.40039 6.2002 -6 10.9004l54.7002 188.1c1.39941 4.7002 6.2002 7.40039 10.8994 6zM234.1 157.1
c-3.5 3.30078 -3.69922 8.90039 -0.399414 12.4004l17.3994 18.5996c3.30078 3.60059 8.90039 3.7002 12.4004 0.400391l57.7002 -54.0996c3.7002 -3.40039 3.7002 -9.30078 0 -12.8008l-57.7002 -54.0996c-3.5 -3.2998 -9.09961 -3.09961 -12.4004 0.400391
l-17.3994 18.5996l-0.200195 0.200195c-3.2002 3.59961 -2.7998 9.2002 0.799805 12.3994l32.7998 28.9004l-32.7998 28.9004z" />
    <glyph glyph-name="life-ring" unicode="&#xf1cd;" 
d="M256 -56c-136.967 0 -248 111.033 -248 248s111.033 248 248 248s248 -111.033 248 -248s-111.033 -248 -248 -248zM152.602 20.7197c63.2178 -38.3184 143.579 -38.3184 206.797 0l-53.4111 53.4111c-31.8467 -13.5215 -68.168 -13.5059 -99.9746 0zM336 192
c0 44.1123 -35.8877 80 -80 80s-80 -35.8877 -80 -80s35.8877 -80 80 -80s80 35.8877 80 80zM427.28 88.6016c38.3184 63.2178 38.3184 143.579 0 206.797l-53.4111 -53.4111c13.5215 -31.8467 13.5049 -68.168 0 -99.9746zM359.397 363.28
c-63.2168 38.3184 -143.578 38.3184 -206.796 0l53.4111 -53.4111c31.8457 13.5215 68.167 13.5049 99.9736 0zM84.7197 295.398c-38.3184 -63.2178 -38.3184 -143.579 0 -206.797l53.4111 53.4111c-13.5215 31.8467 -13.5059 68.168 0 99.9746z" />
    <glyph glyph-name="paper-plane" unicode="&#xf1d8;" 
d="M440 441.5c34.5996 19.9004 77.5996 -8.7998 71.5 -48.9004l-59.4004 -387.199c-2.2998 -14.5 -11.0996 -27.3008 -23.8994 -34.5c-7.2998 -4.10059 -15.4004 -6.2002 -23.6006 -6.2002c-6.19922 0 -12.3994 1.2002 -18.2998 3.59961l-111.899 46.2002l-43.8008 -59.0996
c-27.3994 -36.9004 -86.5996 -17.8008 -86.5996 28.5996v84.4004l-114.3 47.2998c-36.7998 15.0996 -40.1006 66 -5.7002 85.8994zM192 -16l36.5996 49.5l-36.5996 15.0996v-64.5996zM404.6 12.7002l59.4004 387.3l-416 -240l107.8 -44.5996l211.5 184.3
c14.2002 12.2998 34.4004 -5.7002 23.7002 -21.2002l-140.2 -202.3z" />
    <glyph glyph-name="futbol" unicode="&#xf1e3;" horiz-adv-x="496" 
d="M483.8 268.6c42.2998 -130.199 -29 -270.1 -159.2 -312.399c-25.5 -8.2998 -51.2998 -12.2002 -76.6992 -12.2002c-104.5 0 -201.7 66.5996 -235.7 171.4c-42.2998 130.199 29 270.1 159.2 312.399c25.5 8.2998 51.2998 12.2002 76.6992 12.2002
c104.5 0 201.7 -66.5996 235.7 -171.4zM409.3 74.9004c6.10059 8.39941 12.1006 16.8994 16.7998 26.1992c14.3008 28.1006 21.5 58.5 21.7002 89.2002l-38.8994 36.4004l-71.1006 -22.1006l-24.3994 -75.1992l43.6992 -60.9004zM409.3 310.3
c-24.5 33.4004 -58.7002 58.4004 -97.8994 71.4004l-47.4004 -26.2002v-73.7998l64.2002 -46.5l70.7002 22zM184.9 381.6c-39.9004 -13.2998 -73.5 -38.5 -97.8008 -71.8994l10.1006 -52.5l70.5996 -22l64.2002 46.5v73.7998zM139 68.5l43.5 61.7002l-24.2998 74.2998
l-71.1006 22.2002l-39 -36.4004c0.5 -55.7002 23.4004 -95.2002 37.8008 -115.3zM187.2 1.5c64.0996 -20.4004 115.5 -1.7998 121.7 0l22.3994 48.0996l-44.2998 61.7002h-78.5996l-43.6006 -61.7002z" />
    <glyph glyph-name="newspaper" unicode="&#xf1ea;" horiz-adv-x="576" 
d="M552 384c13.2549 0 24 -10.7451 24 -24v-336c0 -13.2549 -10.7451 -24 -24 -24h-496c-30.9277 0 -56 25.0723 -56 56v272c0 13.2549 10.7451 24 24 24h42.752c6.60547 18.623 24.3896 32 45.248 32h440zM48 56c0 -4.41113 3.58887 -8 8 -8s8 3.58887 8 8v248h-16v-248z
M528 48v288h-416v-280c0 -2.7168 -0.204102 -5.38574 -0.578125 -8h416.578zM172 168c-6.62695 0 -12 5.37305 -12 12v96c0 6.62695 5.37305 12 12 12h136c6.62695 0 12 -5.37305 12 -12v-96c0 -6.62695 -5.37305 -12 -12 -12h-136zM200 248v-40h80v40h-80zM160 108v24
c0 6.62695 5.37305 12 12 12h136c6.62695 0 12 -5.37305 12 -12v-24c0 -6.62695 -5.37305 -12 -12 -12h-136c-6.62695 0 -12 5.37305 -12 12zM352 108v24c0 6.62695 5.37305 12 12 12h104c6.62695 0 12 -5.37305 12 -12v-24c0 -6.62695 -5.37305 -12 -12 -12h-104
c-6.62695 0 -12 5.37305 -12 12zM352 252v24c0 6.62695 5.37305 12 12 12h104c6.62695 0 12 -5.37305 12 -12v-24c0 -6.62695 -5.37305 -12 -12 -12h-104c-6.62695 0 -12 5.37305 -12 12zM352 180v24c0 6.62695 5.37305 12 12 12h104c6.62695 0 12 -5.37305 12 -12v-24
c0 -6.62695 -5.37305 -12 -12 -12h-104c-6.62695 0 -12 5.37305 -12 12z" />
    <glyph glyph-name="bell-slash" unicode="&#xf1f6;" horiz-adv-x="640" 
d="M633.99 -23.0195c6.91016 -5.52051 8.01953 -15.5908 2.5 -22.4902l-10 -12.4902c-5.53027 -6.88965 -15.5898 -8.00977 -22.4902 -2.49023l-598 467.51c-6.90039 5.52051 -8.01953 15.5908 -2.49023 22.4902l10 12.4902
c5.52051 6.90039 15.5898 8.00977 22.4902 2.49023zM163.53 80h182.84l61.3994 -48h-279.659c-19.1201 0 -31.9902 15.5996 -32.1006 32c-0.0498047 7.5498 2.61035 15.2598 8.61035 21.71c18.3701 19.7402 51.5703 49.6904 54.8398 140.42l45.4697 -35.5498
c-6.91992 -54.7803 -24.6895 -88.5498 -41.3994 -110.58zM320 352c-23.3496 0 -45 -7.17969 -62.9404 -19.4004l-38.1699 29.8408c19.6807 15.7793 43.1104 27.3096 69.1299 32.7197v20.8398c0 17.6699 14.3203 32 31.9805 32s31.9805 -14.3301 31.9805 -32v-20.8398
c73.46 -15.2598 127.939 -77.46 127.939 -155.16c0 -41.3604 6.03027 -70.7197 14.3398 -92.8496l-59.5293 46.54c-1.63086 13.96 -2.77051 28.8896 -2.79004 45.7295c0 0.200195 0.0595703 0.379883 0.0595703 0.580078c0 61.8604 -50.1396 112 -112 112zM320 -64
c-35.3203 0 -63.9697 28.6504 -63.9697 64h127.939c0 -35.3496 -28.6494 -64 -63.9697 -64z" />
    <glyph glyph-name="copyright" unicode="&#xf1f9;" 
d="M256 440c136.967 0 248 -111.033 248 -248s-111.033 -248 -248 -248s-248 111.033 -248 248s111.033 248 248 248zM256 -8c110.549 0 200 89.4678 200 200c0 110.549 -89.4678 200 -200 200c-110.549 0 -200 -89.4688 -200 -200c0 -110.549 89.4678 -200 200 -200z
M363.351 93.0645c-9.61328 -9.71289 -45.5293 -41.3965 -104.064 -41.3965c-82.4297 0 -140.484 61.4248 -140.484 141.567c0 79.1514 60.2754 139.4 139.763 139.4c55.5303 0 88.7373 -26.6201 97.5928 -34.7783c2.37793 -2.1875 3.86914 -5.3252 3.86914 -8.80762
c0 -2.39746 -0.717773 -4.64258 -1.93359 -6.51465l-18.1543 -28.1133c-3.8418 -5.9502 -11.9668 -7.28223 -17.499 -2.9209c-8.5957 6.77637 -31.8145 22.5381 -61.708 22.5381c-48.3037 0 -77.916 -35.3301 -77.916 -80.082c0 -41.5889 26.8877 -83.6924 78.2764 -83.6924
c32.6572 0 56.8428 19.0391 65.7266 27.2256c5.26953 4.85645 13.5957 4.03906 17.8193 -1.73828l19.8652 -27.1699c1.45996 -1.98145 2.32422 -4.42969 2.32422 -7.07715c0 -3.28809 -1.32422 -6.2793 -3.47656 -8.44043z" />
    <glyph glyph-name="closed-captioning" unicode="&#xf20a;" 
d="M464 384c26.5 0 48 -21.5 48 -48v-288c0 -26.5 -21.5 -48 -48 -48h-416c-26.5 0 -48 21.5 -48 48v288c0 26.5 21.5 48 48 48h416zM458 48c3.2998 0 6 2.7002 6 6v276c0 3.2998 -2.7002 6 -6 6h-404c-3.2998 0 -6 -2.7002 -6 -6v-276c0 -3.2998 2.7002 -6 6 -6h404z
M246.9 133.7c1.69922 -2.40039 1.5 -5.60059 -0.5 -7.7002c-53.6006 -56.7998 -172.801 -32.0996 -172.801 67.9004c0 97.2998 121.7 119.5 172.5 70.0996c2.10059 -2 2.5 -3.2002 1 -5.7002l-17.5 -30.5c-1.89941 -3.09961 -6.19922 -4 -9.09961 -1.7002
c-40.7998 32 -94.5996 14.9004 -94.5996 -31.1992c0 -48 51 -70.5 92.1992 -32.6006c2.80078 2.5 7.10059 2.10059 9.2002 -0.899414zM437.3 133.7c1.7002 -2.40039 1.5 -5.60059 -0.5 -7.7002c-53.5996 -56.9004 -172.8 -32.0996 -172.8 67.9004
c0 97.2998 121.7 119.5 172.5 70.0996c2.09961 -2 2.5 -3.2002 1 -5.7002l-17.5 -30.5c-1.90039 -3.09961 -6.2002 -4 -9.09961 -1.7002c-40.8008 32 -94.6006 14.9004 -94.6006 -31.1992c0 -48 51 -70.5 92.2002 -32.6006c2.7998 2.5 7.09961 2.10059 9.2002 -0.899414z
" />
    <glyph glyph-name="object-group" unicode="&#xf247;" 
d="M500 320h-12v-256h12c6.62695 0 12 -5.37305 12 -12v-72c0 -6.62695 -5.37305 -12 -12 -12h-72c-6.62695 0 -12 5.37305 -12 12v12h-320v-12c0 -6.62695 -5.37305 -12 -12 -12h-72c-6.62695 0 -12 5.37305 -12 12v72c0 6.62695 5.37305 12 12 12h12v256h-12
c-6.62695 0 -12 5.37305 -12 12v72c0 6.62695 5.37305 12 12 12h72c6.62695 0 12 -5.37305 12 -12v-12h320v12c0 6.62695 5.37305 12 12 12h72c6.62695 0 12 -5.37305 12 -12v-72c0 -6.62695 -5.37305 -12 -12 -12zM448 384v-32h32v32h-32zM32 384v-32h32v32h-32zM64 0v32
h-32v-32h32zM480 0v32h-32v-32h32zM440 64v256h-12c-6.62695 0 -12 5.37305 -12 12v12h-320v-12c0 -6.62695 -5.37305 -12 -12 -12h-12v-256h12c6.62695 0 12 -5.37305 12 -12v-12h320v12c0 6.62695 5.37305 12 12 12h12zM404 256c6.62695 0 12 -5.37207 12 -12v-168
c0 -6.62793 -5.37305 -12 -12 -12h-200c-6.62695 0 -12 5.37207 -12 12v52h-84c-6.62695 0 -12 5.37207 -12 12v168c0 6.62793 5.37305 12 12 12h200c6.62695 0 12 -5.37207 12 -12v-52h84zM136 280v-112h144v112h-144zM376 104v112h-56v-76
c0 -6.62793 -5.37305 -12 -12 -12h-76v-24h144z" />
    <glyph glyph-name="object-ungroup" unicode="&#xf248;" horiz-adv-x="576" 
d="M564 224h-12v-160h12c6.62695 0 12 -5.37305 12 -12v-72c0 -6.62695 -5.37305 -12 -12 -12h-72c-6.62695 0 -12 5.37305 -12 12v12h-224v-12c0 -6.62695 -5.37305 -12 -12 -12h-72c-6.62695 0 -12 5.37305 -12 12v72c0 6.62695 5.37305 12 12 12h12v24h-88v-12
c0 -6.62695 -5.37305 -12 -12 -12h-72c-6.62695 0 -12 5.37305 -12 12v72c0 6.62695 5.37305 12 12 12h12v160h-12c-6.62695 0 -12 5.37305 -12 12v72c0 6.62695 5.37305 12 12 12h72c6.62695 0 12 -5.37305 12 -12v-12h224v12c0 6.62695 5.37305 12 12 12h72
c6.62695 0 12 -5.37305 12 -12v-72c0 -6.62695 -5.37305 -12 -12 -12h-12v-24h88v12c0 6.62695 5.37305 12 12 12h72c6.62695 0 12 -5.37305 12 -12v-72c0 -6.62695 -5.37305 -12 -12 -12zM352 384v-32h32v32h-32zM352 128v-32h32v32h-32zM64 96v32h-32v-32h32zM64 352v32
h-32v-32h32zM96 136h224v12c0 6.62695 5.37305 12 12 12h12v160h-12c-6.62695 0 -12 5.37305 -12 12v12h-224v-12c0 -6.62695 -5.37305 -12 -12 -12h-12v-160h12c6.62695 0 12 -5.37305 12 -12v-12zM224 0v32h-32v-32h32zM504 64v160h-12c-6.62695 0 -12 5.37305 -12 12v12
h-88v-88h12c6.62695 0 12 -5.37305 12 -12v-72c0 -6.62695 -5.37305 -12 -12 -12h-72c-6.62695 0 -12 5.37305 -12 12v12h-88v-24h12c6.62695 0 12 -5.37305 12 -12v-12h224v12c0 6.62695 5.37305 12 12 12h12zM544 0v32h-32v-32h32zM544 256v32h-32v-32h32z" />
    <glyph glyph-name="sticky-note" unicode="&#xf249;" horiz-adv-x="448" 
d="M448 99.8936c0 -13.2451 -5.37012 -25.252 -14.0586 -33.9404l-83.8828 -83.8818c-8.68848 -8.68848 -20.6943 -14.0596 -33.9404 -14.0596h-268.118c-26.5098 0 -48 21.4902 -48 48v351.988c0 26.5098 21.4902 48 48 48h352c26.5098 0 48 -21.4902 48 -48v-268.106z
M320 19.8936l76.1182 76.1182h-76.1182v-76.1182zM400 368h-352v-351.988h224v104c0 13.2549 10.7451 24 24 24h104v223.988z" />
    <glyph glyph-name="clone" unicode="&#xf24d;" 
d="M464 448c26.5098 0 48 -21.4902 48 -48v-320c0 -26.5098 -21.4902 -48 -48 -48h-48v-48c0 -26.5098 -21.4902 -48 -48 -48h-320c-26.5098 0 -48 21.4902 -48 48v320c0 26.5098 21.4902 48 48 48h48v48c0 26.5098 21.4902 48 48 48h320zM362 -16c3.31152 0 6 2.68848 6 6
v42h-224c-26.5098 0 -48 21.4902 -48 48v224h-42c-3.31152 0 -6 -2.68848 -6 -6v-308c0 -3.31152 2.68848 -6 6 -6h308zM458 80c3.31152 0 6 2.68848 6 6v308c0 3.31152 -2.68848 6 -6 6h-308c-3.31152 0 -6 -2.68848 -6 -6v-308c0 -3.31152 2.68848 -6 6 -6h308z" />
    <glyph glyph-name="hourglass" unicode="&#xf254;" horiz-adv-x="384" 
d="M368 400c0 -80.0996 -31.8984 -165.619 -97.1797 -208c64.9912 -42.1934 97.1797 -127.436 97.1797 -208h4c6.62695 0 12 -5.37305 12 -12v-24c0 -6.62695 -5.37305 -12 -12 -12h-360c-6.62695 0 -12 5.37305 -12 12v24c0 6.62695 5.37305 12 12 12h4
c0 80.0996 31.8994 165.619 97.1797 208c-64.9912 42.1934 -97.1797 127.436 -97.1797 208h-4c-6.62695 0 -12 5.37305 -12 12v24c0 6.62695 5.37305 12 12 12h360c6.62695 0 12 -5.37305 12 -12v-24c0 -6.62695 -5.37305 -12 -12 -12h-4zM64 400
c0 -101.621 57.3066 -184 128 -184s128 82.3799 128 184h-256zM320 -16c0 101.62 -57.3076 184 -128 184s-128 -82.3799 -128 -184h256z" />
    <glyph glyph-name="hand-rock" unicode="&#xf255;" 
d="M408.864 368.948c48.8213 20.751 103.136 -15.0723 103.136 -67.9111v-114.443c0 -15.3955 -3.08887 -30.3906 -9.18262 -44.5674l-42.835 -99.6562c-4.99707 -11.625 -3.98242 -18.8574 -3.98242 -42.3701c0 -17.6729 -14.3271 -32 -32 -32h-252
c-17.6729 0 -32 14.3271 -32 32c0 27.3301 1.1416 29.2012 -3.11035 32.9033l-97.71 85.0811c-24.8994 21.6797 -39.1797 52.8926 -39.1797 85.6338v56.9531c0 47.4277 44.8457 82.0215 91.0459 71.1807c1.96094 55.751 63.5107 87.8262 110.671 60.8057
c29.1895 31.0713 78.8604 31.4473 108.334 -0.0214844c32.7051 18.6846 76.4121 10.3096 98.8135 -23.5879zM464 186.594v114.445c0 34.29 -52 33.8232 -52 0.676758c0 -8.83594 -7.16309 -16 -16 -16h-7c-8.83691 0 -16 7.16406 -16 16v26.751
c0 34.457 -52 33.707 -52 0.676758v-27.4287c0 -8.83594 -7.16309 -16 -16 -16h-7c-8.83691 0 -16 7.16406 -16 16v40.4658c0 34.3525 -52 33.8115 -52 0.677734v-41.1436c0 -8.83594 -7.16406 -16 -16 -16h-7c-8.83594 0 -16 7.16406 -16 16v26.751
c0 34.4023 -52 33.7744 -52 0.676758v-116.571c0 -8.83105 -7.17773 -15.9961 -16.0078 -15.9961c-4.0166 0 -7.68848 1.48242 -10.499 3.92969l-7 6.09473c-3.37012 2.93457 -5.49316 7.25293 -5.49316 12.0674v41.2275c0 34.2148 -52 33.8857 -52 0.677734v-56.9531
c0 -18.8555 8.27441 -36.874 22.7002 -49.4365l97.71 -85.0801c12.4502 -10.8398 19.5898 -26.4463 19.5898 -42.8164v-10.2861h220v7.07617c0 13.21 2.65332 26.0791 7.88281 38.25l42.835 99.6553c3.37891 7.82715 5.28223 16.501 5.28223 25.5625v0.0498047z" />
    <glyph glyph-name="hand-paper" unicode="&#xf256;" horiz-adv-x="448" 
d="M372.57 335.359c39.9062 5.63281 75.4297 -25.7393 75.4297 -66.3594v-131.564c-0.00292969 -15.7393 -1.80566 -30.9482 -5.19531 -45.666l-30.1836 -130.958c-3.34668 -14.5234 -16.2783 -24.8125 -31.1816 -24.8125h-222.897
c-10.7539 0 -20.2588 5.28613 -26.0615 13.4316l-119.97 168.415c-21.2441 29.8203 -14.8047 71.3574 14.5498 93.1533c18.7754 13.9395 42.1309 16.2979 62.083 8.87109v126.13c0 44.0547 41.125 75.5439 82.4053 64.9834c23.8926 48.1963 92.3535 50.2471 117.982 0.74707
c42.5186 11.1445 83.0391 -21.9346 83.0391 -65.5469v-10.8242zM399.997 137.437l-0.00195312 131.563c0 24.9492 -36.5703 25.5508 -36.5703 -0.691406v-76.3086c0 -8.83691 -7.16309 -16 -16 -16h-6.85645c-8.83691 0 -16 7.16309 -16 16v154.184
c0 25.501 -36.5703 26.3633 -36.5703 0.691406v-154.875c0 -8.83691 -7.16309 -16 -16 -16h-6.85645c-8.83691 0 -16 7.16309 -16 16v188.309c0 25.501 -36.5703 26.3545 -36.5703 0.691406v-189c0 -8.83691 -7.16309 -16 -16 -16h-6.85645c-8.83691 0 -16 7.16309 -16 16
v153.309c0 25.501 -36.5713 26.3359 -36.5713 0.691406v-206.494c0 -15.5703 -20.0352 -21.9092 -29.0303 -9.2832l-27.1279 38.0791c-14.3711 20.1709 -43.833 -2.33496 -29.3945 -22.6045l115.196 -161.697h201.92l27.3252 118.551
c2.63086 11.417 3.96484 23.1553 3.96484 34.8857z" />
    <glyph glyph-name="hand-scissors" unicode="&#xf257;" 
d="M256 -32c-44.9561 0 -77.3428 43.2627 -64.0244 85.8535c-21.6484 13.71 -34.0156 38.7617 -30.3408 65.0068h-87.6348c-40.8037 0 -74 32.8105 -74 73.1406c0 40.3291 33.1963 73.1396 74 73.1396l94 -9.14062l-78.8496 18.6787
c-38.3076 14.7422 -57.04 57.4707 -41.9424 95.1123c15.0303 37.4736 57.7549 55.7803 95.6416 41.2012l144.929 -55.7568c24.9551 30.5566 57.8086 43.9932 92.2178 24.7324l97.999 -54.8525c20.9746 -11.7393 34.0049 -33.8457 34.0049 -57.6904v-205.702
c0 -30.7422 -21.4404 -57.5576 -51.7979 -64.5537l-118.999 -27.4268c-4.97168 -1.14648 -10.0889 -1.72949 -15.2031 -1.72949zM256 16.0127l70 -0.000976562c1.52441 0 2.99707 0.174805 4.42285 0.501953l119.001 27.4277
c8.58203 1.97754 14.5762 9.29102 14.5762 17.7812v205.701c0 6.4873 -3.62109 12.542 -9.44922 15.8047l-98 54.8545c-8.13965 4.55566 -18.668 2.61914 -24.4873 -4.50781l-21.7646 -26.6475c-2.93457 -3.59375 -7.40332 -5.87305 -12.4004 -5.87305
c-2.02246 0 -3.95703 0.375977 -5.73828 1.06152l-166.549 64.0908c-32.6543 12.5664 -50.7744 -34.5771 -19.2227 -46.7168l155.357 -59.7852c6 -2.30859 10.2539 -8.12402 10.2539 -14.9326v-11.6328c0 -8.83691 -7.16309 -16 -16 -16h-182
c-34.375 0 -34.4297 -50.2803 0 -50.2803h182c8.83691 0 16 -7.16309 16 -16v-6.85645c0 -8.83691 -7.16309 -16 -16 -16h-28c-25.1221 0 -25.1592 -36.5674 0 -36.5674h28c8.83691 0 16 -7.16211 16 -16v-6.85547c0 -8.83691 -7.16309 -16 -16 -16
c-25.1201 0 -25.1602 -36.5674 0 -36.5674z" />
    <glyph glyph-name="hand-lizard" unicode="&#xf258;" horiz-adv-x="576" 
d="M556.686 157.458c12.6357 -19.4863 19.3145 -42.0615 19.3145 -65.2871v-124.171h-224v71.582l-99.751 38.7871c-2.7832 1.08203 -5.70996 1.63086 -8.69727 1.63086h-131.552c-30.8789 0 -56 25.1211 -56 56c0 48.5234 39.4766 88 88 88h113.709l18.333 48h-196.042
c-44.1123 0 -80 35.8877 -80 80v8c0 30.8779 25.1211 56 56 56h293.917c24.5 0 47.084 -12.2725 60.4111 -32.8291zM528 16v76.1709c0 0.0166016 -0.0439453 0.106445 -0.0439453 0.12207c0 14.3945 -4.24219 27.8057 -11.5439 39.0498l-146.358 225.715
c-4.44336 6.85254 -11.9707 10.9424 -20.1367 10.9424h-293.917c-4.41113 0 -8 -3.58887 -8 -8v-8c0 -17.6445 14.3555 -32 32 -32h213.471c25.2021 0 42.626 -25.293 33.6299 -48.8457l-24.5518 -64.2812c-7.05371 -18.4658 -25.0732 -30.873 -44.8398 -30.873h-113.709
c-22.0557 0 -40 -17.9443 -40 -40c0 -4.41113 3.58887 -8 8 -8h131.552c0.0175781 0 0.0712891 -0.0273438 0.0888672 -0.0273438c9.16992 0 17.9404 -1.72461 26.0039 -4.86621l99.752 -38.7881c18.5898 -7.22852 30.6035 -24.7881 30.6035 -44.7363v-23.582h128z" />
    <glyph glyph-name="hand-spock" unicode="&#xf259;" 
d="M501.03 331.824c6.92773 -11.1826 10.9697 -24.4053 10.9697 -38.5146c0 -5.92676 -0.706055 -11.6885 -2.03809 -17.208l-57.623 -241.963c-13.2236 -56.1904 -63.707 -98.1387 -123.908 -98.1387h-0.352539h-107.455
c-0.0761719 0 -0.193359 0.00195312 -0.270508 0.00195312c-40.9248 0 -78.1475 15.9814 -105.761 42.0391l-91.3652 85.9766c-14.3076 13.4434 -23.2246 32.5547 -23.2246 53.7168c0 19.5254 7.61035 37.2861 20.0254 50.4766
c5.31836 5.66406 29.875 29.3926 68.1152 21.8477l-24.3594 82.1973c-1.97363 6.64844 -2.97656 13.6836 -2.97656 20.9688c0 38.6953 29.8926 70.4639 67.8262 73.4531c-0.246094 2.45117 -0.34082 4.85547 -0.34082 7.37207c0 34.4199 23.585 63.376 55.4619 71.5752
c43.248 10.9785 80.5645 -17.7012 89.6602 -53.0723l13.6836 -53.207l4.64648 22.6602c6.99023 33.5186 36.6826 58.8037 72.2373 58.916c8.73438 0 56.625 -3.26953 70.7383 -54.0801c15.0664 0.710938 46.9199 -3.50977 66.3105 -35.0176zM463.271 287.219
c7.86914 32.9844 -42.1211 45.2695 -50.0859 11.9219l-24.8008 -104.146c-4.38867 -18.4141 -31.7783 -11.8926 -28.0557 6.2168l28.5479 139.166c7.39844 36.0703 -43.3076 45.0703 -50.1182 11.9629l-31.791 -154.971
c-3.54883 -17.3086 -28.2832 -18.0469 -32.7109 -0.804688l-47.3262 184.035c-8.43359 32.8105 -58.3691 20.2676 -49.8652 -12.8359l42.4414 -165.039c4.81641 -18.7207 -23.3711 -26.9121 -28.9648 -8.00781l-31.3438 105.779
c-9.6875 32.6465 -59.1191 18.2578 -49.3867 -14.625l36.0137 -121.539c6.59375 -22.2441 10.1777 -45.7803 10.1777 -70.1523c0 -6.54297 -8.05664 -10.9355 -13.4824 -5.82617l-51.123 48.1074c-24.7852 23.4082 -60.0527 -14.1875 -35.2793 -37.4902l91.3691 -85.9805
c19.0469 -17.9736 44.75 -28.998 72.9795 -28.998h0.157227h107.455c0.0732422 0 0.138672 0.0429688 0.212891 0.0429688c37.5791 0 69.1016 26.1416 77.3564 61.2168z" />
    <glyph glyph-name="hand-pointer" unicode="&#xf25a;" horiz-adv-x="448" 
d="M358.182 268.639c43.1934 16.6348 89.8184 -15.7949 89.8184 -62.6387v-84c-0.000976562 -5.24023 -0.600586 -10.3037 -1.72754 -15.2041l-27.4297 -118.999c-6.98242 -30.2969 -33.7549 -51.7969 -64.5566 -51.7969h-178.286
c-21.2588 0 -41.3682 10.4102 -53.791 27.8457l-109.699 154.001c-21.2432 29.8193 -14.8047 71.3574 14.5498 93.1523c18.8115 13.9658 42.1748 16.2822 62.083 8.87207v161.129c0 36.9443 29.7363 67 66.2861 67s66.2861 -30.0557 66.2861 -67v-73.6338
c20.4131 2.85742 41.4678 -3.94238 56.5947 -19.6289c27.1934 12.8467 60.3799 5.66992 79.8721 -19.0986zM80.9854 168.303c-14.4004 20.2119 -43.8008 -2.38281 -29.3945 -22.6055l109.712 -154c3.43457 -4.81934 8.92871 -7.69727 14.6973 -7.69727h178.285
c8.49219 0 15.8037 5.99414 17.7822 14.5762l27.4297 119.001c0.333008 1.44629 0.501953 2.93457 0.501953 4.42285v84c0 25.1602 -36.5713 25.1211 -36.5713 0c0 -8.83594 -7.16309 -16 -16 -16h-6.85645c-8.83691 0 -16 7.16406 -16 16v21
c0 25.1602 -36.5713 25.1201 -36.5713 0v-21c0 -8.83594 -7.16309 -16 -16 -16h-6.85938c-8.83691 0 -16 7.16406 -16 16v35c0 25.1602 -36.5703 25.1201 -36.5703 0v-35c0 -8.83594 -7.16309 -16 -16 -16h-6.85742c-8.83691 0 -16 7.16406 -16 16v175
c0 25.1602 -36.5713 25.1201 -36.5713 0v-241.493c0 -15.5703 -20.0352 -21.9092 -29.0303 -9.2832zM176.143 48v96c0 8.83691 6.26855 16 14 16h6c7.73242 0 14 -7.16309 14 -16v-96c0 -8.83691 -6.26758 -16 -14 -16h-6c-7.73242 0 -14 7.16309 -14 16zM251.571 48v96
c0 8.83691 6.26758 16 14 16h6c7.73145 0 14 -7.16309 14 -16v-96c0 -8.83691 -6.26855 -16 -14 -16h-6c-7.73242 0 -14 7.16309 -14 16zM327 48v96c0 8.83691 6.26758 16 14 16h6c7.73242 0 14 -7.16309 14 -16v-96c0 -8.83691 -6.26758 -16 -14 -16h-6
c-7.73242 0 -14 7.16309 -14 16z" />
    <glyph glyph-name="hand-peace" unicode="&#xf25b;" horiz-adv-x="448" 
d="M362.146 256.024c42.5908 13.3184 85.8535 -19.0684 85.8535 -64.0244l-0.0117188 -70.001c-0.000976562 -5.24023 -0.600586 -10.3027 -1.72949 -15.2031l-27.4268 -118.999c-6.99707 -30.3564 -33.8105 -51.7969 -64.5547 -51.7969h-205.702
c-23.8447 0 -45.9502 13.0303 -57.6904 34.0059l-54.8525 97.999c-19.2607 34.4092 -5.82422 67.2617 24.7324 92.2178l-55.7568 144.928c-14.5791 37.8867 3.72754 80.6113 41.2012 95.6416c37.6406 15.0977 80.3691 -3.63477 95.1123 -41.9424l18.6787 -78.8496
l-9.14062 94c0 40.8037 32.8096 74 73.1396 74s73.1406 -33.1963 73.1406 -74v-87.6348c26.2451 3.6748 51.2959 -8.69238 65.0068 -30.3408zM399.987 122l-0.000976562 70c0 25.1602 -36.5674 25.1201 -36.5674 0c0 -8.83691 -7.16309 -16 -16 -16h-6.85547
c-8.83789 0 -16 7.16309 -16 16v28c0 25.1592 -36.5674 25.1221 -36.5674 0v-28c0 -8.83691 -7.16309 -16 -16 -16h-6.85645c-8.83691 0 -16 7.16309 -16 16v182c0 34.4297 -50.2803 34.375 -50.2803 0v-182c0 -8.83691 -7.16309 -16 -16 -16h-11.6328
c-6.80859 0 -12.624 4.25391 -14.9326 10.2539l-59.7842 155.357c-12.1396 31.5518 -59.2842 13.4326 -46.7168 -19.2227l64.0898 -166.549c0.685547 -1.78125 1.07812 -3.71875 1.07812 -5.74121c0 -4.99707 -2.2959 -9.46289 -5.88965 -12.3975l-26.6475 -21.7646
c-7.12695 -5.81934 -9.06445 -16.3467 -4.50781 -24.4873l54.8535 -98c3.26367 -5.82812 9.31934 -9.44922 15.8057 -9.44922h205.701c8.49121 0 15.8037 5.99414 17.7812 14.5762l27.4277 119.001c0.333008 1.44629 0.501953 2.93457 0.501953 4.42285z" />
    <glyph glyph-name="registered" unicode="&#xf25d;" 
d="M256 440c136.967 0 248 -111.033 248 -248s-111.033 -248 -248 -248s-248 111.033 -248 248s111.033 248 248 248zM256 -8c110.549 0 200 89.4678 200 200c0 110.549 -89.4678 200 -200 200c-110.549 0 -200 -89.4688 -200 -200c0 -110.549 89.4678 -200 200 -200z
M366.442 73.791c4.40332 -7.99219 -1.37012 -17.791 -10.5107 -17.791h-42.8096c-0.00488281 0 -0.000976562 -0.0126953 -0.00585938 -0.0126953c-4.58594 0 -8.57422 2.58301 -10.5869 6.37305l-47.5156 89.3027h-31.958v-83.6631c0 -6.61719 -5.38281 -12 -12 -12
h-38.5674c-6.61719 0 -12 5.38281 -12 12v248.304c0 6.61719 5.38281 12 12 12h78.667c71.251 0 101.498 -32.749 101.498 -85.252c0 -31.6123 -15.2148 -59.2969 -39.4824 -73.1758c3.02148 -4.61719 0.225586 0.199219 53.2715 -96.085zM256.933 208.094
c20.9131 0 32.4307 11.5186 32.4316 32.4316c0 19.5752 -6.5127 31.709 -38.9297 31.709h-27.377v-64.1406h33.875z" />
    <glyph glyph-name="calendar-plus" unicode="&#xf271;" horiz-adv-x="448" 
d="M336 156v-24c0 -6.59961 -5.40039 -12 -12 -12h-76v-76c0 -6.59961 -5.40039 -12 -12 -12h-24c-6.59961 0 -12 5.40039 -12 12v76h-76c-6.59961 0 -12 5.40039 -12 12v24c0 6.59961 5.40039 12 12 12h76v76c0 6.59961 5.40039 12 12 12h24c6.59961 0 12 -5.40039 12 -12
v-76h76c6.59961 0 12 -5.40039 12 -12zM448 336v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h48v52c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-52h128v52c0 6.59961 5.40039 12 12 12h40
c6.59961 0 12 -5.40039 12 -12v-52h48c26.5 0 48 -21.5 48 -48zM400 -10v298h-352v-298c0 -3.2998 2.7002 -6 6 -6h340c3.2998 0 6 2.7002 6 6z" />
    <glyph glyph-name="calendar-minus" unicode="&#xf272;" horiz-adv-x="448" 
d="M124 120c-6.59961 0 -12 5.40039 -12 12v24c0 6.59961 5.40039 12 12 12h200c6.59961 0 12 -5.40039 12 -12v-24c0 -6.59961 -5.40039 -12 -12 -12h-200zM448 336v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h48v52
c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-52h128v52c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-52h48c26.5 0 48 -21.5 48 -48zM400 -10v298h-352v-298c0 -3.2998 2.7002 -6 6 -6h340c3.2998 0 6 2.7002 6 6z" />
    <glyph glyph-name="calendar-times" unicode="&#xf273;" horiz-adv-x="448" 
d="M311.7 73.2998l-17 -17c-4.7002 -4.7002 -12.2998 -4.7002 -17 0l-53.7002 53.7998l-53.7002 -53.6992c-4.7002 -4.7002 -12.2998 -4.7002 -17 0l-17 17c-4.7002 4.69922 -4.7002 12.2998 0 17l53.7002 53.6992l-53.7002 53.7002c-4.7002 4.7002 -4.7002 12.2998 0 17
l17 17c4.7002 4.7002 12.2998 4.7002 17 0l53.7002 -53.7002l53.7002 53.7002c4.7002 4.7002 12.2998 4.7002 17 0l17 -17c4.7002 -4.7002 4.7002 -12.2998 0 -17l-53.7998 -53.7998l53.6992 -53.7002c4.80078 -4.7002 4.80078 -12.2998 0.100586 -17zM448 336v-352
c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h48v52c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-52h128v52c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-52h48c26.5 0 48 -21.5 48 -48zM400 -10
v298h-352v-298c0 -3.2998 2.7002 -6 6 -6h340c3.2998 0 6 2.7002 6 6z" />
    <glyph glyph-name="calendar-check" unicode="&#xf274;" horiz-adv-x="448" 
d="M400 384c26.5098 0 48 -21.4902 48 -48v-352c0 -26.5098 -21.4902 -48 -48 -48h-352c-26.5098 0 -48 21.4902 -48 48v352c0 26.5098 21.4902 48 48 48h48v52c0 6.62695 5.37305 12 12 12h40c6.62695 0 12 -5.37305 12 -12v-52h128v52c0 6.62695 5.37305 12 12 12h40
c6.62695 0 12 -5.37305 12 -12v-52h48zM394 -16c3.31152 0 6 2.68848 6 6v298h-352v-298c0 -3.31152 2.68848 -6 6 -6h340zM341.151 184.65l-142.31 -141.169c-4.70508 -4.66699 -12.3027 -4.6377 -16.9707 0.0673828l-75.0908 75.6992
c-4.66699 4.70508 -4.6377 12.3027 0.0673828 16.9707l22.7197 22.5361c4.70508 4.66699 12.3027 4.63672 16.9697 -0.0693359l44.1035 -44.4609l111.072 110.182c4.70508 4.66699 12.3027 4.63672 16.9707 -0.0683594l22.5361 -22.7178
c4.66699 -4.70508 4.63672 -12.3027 -0.0683594 -16.9697z" />
    <glyph glyph-name="map" unicode="&#xf279;" horiz-adv-x="576" 
d="M560.02 416c8.4502 0 15.9805 -6.83008 15.9805 -16.0195v-346.32c0 -13.4707 -8.32422 -24.9951 -20.1201 -29.71l-151.83 -52.8105c-6.23242 -2.02832 -12.9023 -3.12305 -19.8076 -3.12305c-7.07324 0 -13.8799 1.15039 -20.2422 3.27344l-172 60.71l-170.05 -62.8398
c-1.99023 -0.790039 -4 -1.16016 -5.95996 -1.16016c-8.45996 0 -15.9902 6.83008 -15.9902 16.0195v346.32c0.00292969 13.4697 8.32617 24.9932 20.1201 29.71l151.83 52.8105c6.43945 2.08984 13.1201 3.13965 19.8096 3.13965
c7.06641 -0.00292969 13.8789 -1.16602 20.2402 -3.28027l172 -60.7197h0.00976562l170.05 62.8398c1.98047 0.790039 4 1.16016 5.95996 1.16016zM224 357.58v-285.97l128 -45.1904v285.97zM48 29.9502l127.36 47.0801l0.639648 0.229492v286.2l-128 -44.5303v-288.979z
M528 65.0801v288.97l-127.36 -47.0693l-0.639648 -0.240234v-286.19z" />
    <glyph glyph-name="comment-alt" unicode="&#xf27a;" 
d="M448 448c35.2998 0 64 -28.7002 64 -64v-288c0 -35.2998 -28.7002 -64 -64 -64h-144l-124.9 -93.5996c-2.19922 -1.7002 -4.69922 -2.40039 -7.09961 -2.40039c-6.2002 0 -12 4.90039 -12 12v84h-96c-35.2998 0 -64 28.7002 -64 64v288c0 35.2998 28.7002 64 64 64h384z
M464 96v288c0 8.7998 -7.2002 16 -16 16h-384c-8.7998 0 -16 -7.2002 -16 -16v-288c0 -8.7998 7.2002 -16 16 -16h144v-60l67.2002 50.4004l12.7998 9.59961h160c8.7998 0 16 7.2002 16 16z" />
    <glyph glyph-name="pause-circle" unicode="&#xf28b;" 
d="M256 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM256 -8c110.5 0 200 89.5 200 200s-89.5 200 -200 200s-200 -89.5 -200 -200s89.5 -200 200 -200zM352 272v-160c0 -8.7998 -7.2002 -16 -16 -16h-48
c-8.7998 0 -16 7.2002 -16 16v160c0 8.7998 7.2002 16 16 16h48c8.7998 0 16 -7.2002 16 -16zM240 272v-160c0 -8.7998 -7.2002 -16 -16 -16h-48c-8.7998 0 -16 7.2002 -16 16v160c0 8.7998 7.2002 16 16 16h48c8.7998 0 16 -7.2002 16 -16z" />
    <glyph glyph-name="stop-circle" unicode="&#xf28d;" 
d="M504 192c0 -137 -111 -248 -248 -248s-248 111 -248 248s111 248 248 248s248 -111 248 -248zM56 192c0 -110.5 89.5 -200 200 -200s200 89.5 200 200s-89.5 200 -200 200s-200 -89.5 -200 -200zM352 272v-160c0 -8.7998 -7.2002 -16 -16 -16h-160
c-8.7998 0 -16 7.2002 -16 16v160c0 8.7998 7.2002 16 16 16h160c8.7998 0 16 -7.2002 16 -16z" />
    <glyph glyph-name="handshake" unicode="&#xf2b5;" horiz-adv-x="640" 
d="M519.2 320.1h120.8v-255.699h-64c-17.5 0 -31.7998 14.1992 -31.9004 31.6992h-57.8994c-1.7998 -8.19922 -5.2998 -16.0996 -10.9004 -23l-26.2002 -32.2998c-15.7998 -19.3994 -41.8994 -25.5 -64 -16.7998c-13.5 -16.5996 -30.5996 -24 -48.7998 -24
c-15.0996 0 -28.5996 5.09961 -41.0996 15.9004c-31.7998 -21.9004 -74.7002 -21.3008 -105.601 3.7998l-84.5996 76.3994h-9.09961c-0.100586 -17.5 -14.3008 -31.6992 -31.9004 -31.6992h-64v255.699h118l47.5996 47.6006c10.5 10.3994 24.8008 16.2998 39.6006 16.2998
h226.8c15.4326 0 29.4326 -6.22168 39.5996 -16.2998zM48 96.4004c8.7998 0 16 7.09961 16 16c0 8.7998 -7.2002 16 -16 16s-16 -7.2002 -16 -16c0 -8.80078 7.2002 -16 16 -16zM438 103.3c2.7002 3.40039 2.2002 8.5 -1.2002 11.2998l-108.2 87.8008l-8.19922 -7.5
c-40.3008 -36.8008 -86.7002 -11.8008 -101.5 4.39941c-26.7002 29 -25 74.4004 4.39941 101.3l38.7002 35.5h-56.7002c-2 -0.799805 -3.7002 -1.5 -5.7002 -2.2998l-61.6992 -61.5996h-41.9004v-128.101h27.7002l97.2998 -88
c16.0996 -13.0996 41.4004 -10.5 55.2998 6.60059l15.6006 19.2002l36.7998 -31.5c3 -2.40039 12 -4.90039 18 2.39941l30 36.5l23.8994 -19.3994c3.5 -2.80078 8.5 -2.2002 11.3008 1.19922zM544 144.1v128h-44.7002l-61.7002 61.6006
c-1.39941 1.5 -3.39941 2.2998 -5.5 2.2998l-83.6992 -0.200195c-10 0 -19.6006 -3.7002 -27 -10.5l-65.6006 -60.0996c-9.7002 -8.7998 -10.5 -24 -1.2002 -33.9004c8.90039 -9.39941 25.1006 -8.7002 34.6006 0l55.2002 50.6006c6.5 5.89941 16.5996 5.5 22.5996 -1
l10.9004 -11.7002c6 -6.5 5.5 -16.6006 -1 -22.6006l-12.5 -11.3994l102.699 -83.4004c2.80078 -2.2998 5.40039 -4.89941 7.7002 -7.7002h69.2002zM592 96.4004c8.7998 0 16 7.09961 16 16c0 8.7998 -7.2002 16 -16 16s-16 -7.2002 -16 -16c0 -8.80078 7.2002 -16 16 -16z
" />
    <glyph glyph-name="envelope-open" unicode="&#xf2b6;" 
d="M494.586 283.484c10.6523 -8.80762 17.4141 -22.1064 17.4141 -36.9932v-262.491c0 -26.5098 -21.4902 -48 -48 -48h-416c-26.5098 0 -48 21.4902 -48 48v262.515c0 14.9355 6.80469 28.2705 17.5146 37.0771c4.08008 3.35449 110.688 89.0996 135.15 108.549
c22.6992 18.1426 60.1299 55.8594 103.335 55.8594c43.4365 0 81.2314 -38.1914 103.335 -55.8594c23.5283 -18.707 130.554 -104.773 135.251 -108.656zM464 -10v253.632c0 0.00195312 0.00390625 0.000976562 0.00390625 0.00292969
c0 1.88184 -0.869141 3.56152 -2.22754 4.66016c-15.8633 12.8232 -108.793 87.5752 -132.366 106.316c-17.5527 14.0195 -49.7168 45.3887 -73.4102 45.3887c-23.6016 0 -55.2451 -30.8799 -73.4102 -45.3887c-23.5713 -18.7393 -116.494 -93.4795 -132.364 -106.293
c-1.40918 -1.13965 -2.22559 -2.85254 -2.22559 -4.66504v-253.653c0 -3.31152 2.68848 -6 6 -6h404c3.31152 0 6 2.68848 6 6zM432.009 177.704c4.24902 -5.15918 3.46484 -12.7949 -1.74512 -16.9814c-28.9746 -23.2822 -59.2734 -47.5967 -70.9287 -56.8623
c-22.6992 -18.1436 -60.1299 -55.8604 -103.335 -55.8604c-43.4521 0 -81.2871 38.2373 -103.335 55.8604c-11.2793 8.9668 -41.7441 33.4131 -70.9268 56.8643c-5.20996 4.1875 -5.99316 11.8223 -1.74512 16.9814l15.2578 18.5283
c4.17773 5.07227 11.6572 5.84277 16.7793 1.72559c28.6182 -23.001 58.5654 -47.0352 70.5596 -56.5713c17.5527 -14.0195 49.7168 -45.3887 73.4102 -45.3887c23.6016 0 55.2461 30.8799 73.4102 45.3887c11.9941 9.53516 41.9434 33.5703 70.5625 56.5684
c5.12207 4.11621 12.6016 3.3457 16.7783 -1.72656z" />
    <glyph glyph-name="address-book" unicode="&#xf2b9;" horiz-adv-x="448" 
d="M436 288h-20v-64h20c6.59961 0 12 -5.40039 12 -12v-40c0 -6.59961 -5.40039 -12 -12 -12h-20v-64h20c6.59961 0 12 -5.40039 12 -12v-40c0 -6.59961 -5.40039 -12 -12 -12h-20v-48c0 -26.5 -21.5 -48 -48 -48h-320c-26.5 0 -48 21.5 -48 48v416c0 26.5 21.5 48 48 48
h320c26.5 0 48 -21.5 48 -48v-48h20c6.59961 0 12 -5.40039 12 -12v-40c0 -6.59961 -5.40039 -12 -12 -12zM368 -16v416h-320v-416h320zM208 192c-35.2998 0 -64 28.7002 -64 64s28.7002 64 64 64s64 -28.7002 64 -64s-28.7002 -64 -64 -64zM118.4 64
c-12.4004 0 -22.4004 8.59961 -22.4004 19.2002v19.2002c0 31.7998 30.0996 57.5996 67.2002 57.5996c11.3994 0 17.8994 -8 44.7998 -8c26.0996 0 34 8 44.7998 8c37.1006 0 67.2002 -25.7998 67.2002 -57.5996v-19.2002c0 -10.6006 -10 -19.2002 -22.4004 -19.2002
h-179.199z" />
    <glyph glyph-name="address-card" unicode="&#xf2bb;" horiz-adv-x="576" 
d="M528 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-480c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h480zM528 16v352h-480v-352h480zM208 192c-35.2998 0 -64 28.7002 -64 64s28.7002 64 64 64s64 -28.7002 64 -64s-28.7002 -64 -64 -64z
M118.4 64c-12.4004 0 -22.4004 8.59961 -22.4004 19.2002v19.2002c0 31.7998 30.0996 57.5996 67.2002 57.5996c11.3994 0 17.8994 -8 44.7998 -8c26.0996 0 34 8 44.7998 8c37.1006 0 67.2002 -25.7998 67.2002 -57.5996v-19.2002
c0 -10.6006 -10 -19.2002 -22.4004 -19.2002h-179.199zM360 128c-4.40039 0 -8 3.59961 -8 8v16c0 4.40039 3.59961 8 8 8h112c4.40039 0 8 -3.59961 8 -8v-16c0 -4.40039 -3.59961 -8 -8 -8h-112zM360 192c-4.40039 0 -8 3.59961 -8 8v16c0 4.40039 3.59961 8 8 8h112
c4.40039 0 8 -3.59961 8 -8v-16c0 -4.40039 -3.59961 -8 -8 -8h-112zM360 256c-4.40039 0 -8 3.59961 -8 8v16c0 4.40039 3.59961 8 8 8h112c4.40039 0 8 -3.59961 8 -8v-16c0 -4.40039 -3.59961 -8 -8 -8h-112z" />
    <glyph glyph-name="user-circle" unicode="&#xf2bd;" horiz-adv-x="496" 
d="M248 344c53 0 96 -43 96 -96s-43 -96 -96 -96s-96 43 -96 96s43 96 96 96zM248 200c26.5 0 48 21.5 48 48s-21.5 48 -48 48s-48 -21.5 -48 -48s21.5 -48 48 -48zM248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8
c49.7002 0 95.0996 18.2998 130.1 48.4004c-14.8994 23 -40.3994 38.5 -69.5996 39.5c-20.7998 -6.5 -40.5996 -9.60059 -60.5 -9.60059s-39.7002 3.2002 -60.5 9.60059c-29.2002 -0.900391 -54.7002 -16.5 -69.5996 -39.5c35 -30.1006 80.3994 -48.4004 130.1 -48.4004z
M410.7 76.0996c23.3994 32.7002 37.2998 72.7002 37.2998 115.9c0 110.3 -89.7002 200 -200 200s-200 -89.7002 -200 -200c0 -43.2002 13.9004 -83.2002 37.2998 -115.9c24.5 31.4004 62.2002 51.9004 105.101 51.9004c10.1992 0 26.0996 -9.59961 57.5996 -9.59961
c31.5996 0 47.4004 9.59961 57.5996 9.59961c43 0 80.7002 -20.5 105.101 -51.9004z" />
    <glyph glyph-name="id-badge" unicode="&#xf2c1;" horiz-adv-x="384" 
d="M336 448c26.5 0 48 -21.5 48 -48v-416c0 -26.5 -21.5 -48 -48 -48h-288c-26.5 0 -48 21.5 -48 48v416c0 26.5 21.5 48 48 48h288zM336 -16v416h-288v-416h288zM144 336c-8.7998 0 -16 7.2002 -16 16s7.2002 16 16 16h96c8.7998 0 16 -7.2002 16 -16s-7.2002 -16 -16 -16
h-96zM192 160c-35.2998 0 -64 28.7002 -64 64s28.7002 64 64 64s64 -28.7002 64 -64s-28.7002 -64 -64 -64zM102.4 32c-12.4004 0 -22.4004 8.59961 -22.4004 19.2002v19.2002c0 31.7998 30.0996 57.5996 67.2002 57.5996c11.3994 0 17.8994 -8 44.7998 -8
c26.0996 0 34 8 44.7998 8c37.1006 0 67.2002 -25.7998 67.2002 -57.5996v-19.2002c0 -10.6006 -10 -19.2002 -22.4004 -19.2002h-179.199z" />
    <glyph glyph-name="id-card" unicode="&#xf2c2;" horiz-adv-x="576" 
d="M528 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-480c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h480zM528 16v288h-480v-288h32.7998c-1 4.5 -0.799805 -3.59961 -0.799805 22.4004c0 31.7998 30.0996 57.5996 67.2002 57.5996
c11.3994 0 17.8994 -8 44.7998 -8c26.0996 0 34 8 44.7998 8c37.1006 0 67.2002 -25.7998 67.2002 -57.5996c0 -26 0.0996094 -17.9004 -0.799805 -22.4004h224.8zM360 96c-4.40039 0 -8 3.59961 -8 8v16c0 4.40039 3.59961 8 8 8h112c4.40039 0 8 -3.59961 8 -8v-16
c0 -4.40039 -3.59961 -8 -8 -8h-112zM360 160c-4.40039 0 -8 3.59961 -8 8v16c0 4.40039 3.59961 8 8 8h112c4.40039 0 8 -3.59961 8 -8v-16c0 -4.40039 -3.59961 -8 -8 -8h-112zM360 224c-4.40039 0 -8 3.59961 -8 8v16c0 4.40039 3.59961 8 8 8h112
c4.40039 0 8 -3.59961 8 -8v-16c0 -4.40039 -3.59961 -8 -8 -8h-112zM192 128c-35.2998 0 -64 28.7002 -64 64s28.7002 64 64 64s64 -28.7002 64 -64s-28.7002 -64 -64 -64z" />
    <glyph glyph-name="window-maximize" unicode="&#xf2d0;" 
d="M464 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-416c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h416zM464 22v234h-416v-234c0 -3.2998 2.7002 -6 6 -6h404c3.2998 0 6 2.7002 6 6z" />
    <glyph glyph-name="window-minimize" unicode="&#xf2d1;" 
d="M480 -32h-448c-17.7002 0 -32 14.2998 -32 32s14.2998 32 32 32h448c17.7002 0 32 -14.2998 32 -32s-14.2998 -32 -32 -32z" />
    <glyph glyph-name="window-restore" unicode="&#xf2d2;" 
d="M464 448c26.5 0 48 -21.5 48 -48v-320c0 -26.5 -21.5 -48 -48 -48h-48v-48c0 -26.5 -21.5 -48 -48 -48h-320c-26.5 0 -48 21.5 -48 48v320c0 26.5 21.5 48 48 48h48v48c0 26.5 21.5 48 48 48h320zM368 -16v208h-320v-208h320zM464 80v320h-320v-48h224
c26.5 0 48 -21.5 48 -48v-224h48z" />
    <glyph glyph-name="snowflake" unicode="&#xf2dc;" horiz-adv-x="448" 
d="M440.1 92.7998c7.60059 -4.39941 10.1006 -14.2002 5.5 -21.7002l-7.89941 -13.8994c-4.40039 -7.7002 -14 -10.2998 -21.5 -5.90039l-39.2002 23l9.09961 -34.7002c2.30078 -8.5 -2.69922 -17.2998 -11.0996 -19.5996l-15.2002 -4.09961
c-8.39941 -2.30078 -17.0996 2.7998 -19.2998 11.2998l-21.2998 81l-71.9004 42.2002v-84.5l58.2998 -59.3008c6.10059 -6.19922 6.10059 -16.3994 0 -22.5996l-11.0996 -11.2998c-6.09961 -6.2002 -16.0996 -6.2002 -22.2002 0l-24.8994 25.3994v-46.0996
c0 -8.7998 -7 -16 -15.7002 -16h-15.7002c-8.7002 0 -15.7002 7.2002 -15.7002 16v45.9004l-24.8994 -25.4004c-6.10059 -6.2002 -16.1006 -6.2002 -22.2002 0l-11.1006 11.2998c-6.09961 6.2002 -6.09961 16.4004 0 22.6006l58.3008 59.2998v84.5l-71.9004 -42.2002
l-21.2998 -81c-2.2998 -8.5 -10.9004 -13.5996 -19.2998 -11.2998l-15.2002 4.09961c-8.40039 2.2998 -13.2998 11.1006 -11.1006 19.6006l9.10059 34.6992l-39.2002 -23c-7.5 -4.39941 -17.2002 -1.7998 -21.5 5.90039l-7.90039 13.9004
c-4.2998 7.69922 -1.69922 17.5 5.80078 21.8994l39.1992 23l-34.0996 9.2998c-8.40039 2.30078 -13.2998 11.1006 -11.0996 19.6006l4.09961 15.5c2.2998 8.5 10.9004 13.5996 19.2998 11.2998l79.7002 -21.7002l71.9004 42.2002l-71.9004 42.2002l-79.7002 -21.7002
c-8.39941 -2.2998 -17.0996 2.7998 -19.2998 11.2998l-4.09961 15.5c-2.30078 8.5 2.69922 17.2998 11.0996 19.6006l34.0996 9.09961l-39.1992 23c-7.60059 4.5 -10.1006 14.2002 -5.80078 21.9004l7.90039 13.8994c4.40039 7.7002 14 10.2998 21.5 5.90039l39.2002 -23
l-9.10059 34.7002c-2.2998 8.5 2.7002 17.2998 11.1006 19.5996l15.2002 4.09961c8.39941 2.30078 17.0996 -2.7998 19.2998 -11.2998l21.2998 -81l71.9004 -42.2002v84.5l-58.3008 59.3008c-6.09961 6.19922 -6.09961 16.3994 0 22.5996l11.5 11.2998
c6.10059 6.2002 16.1006 6.2002 22.2002 0l24.9004 -25.3994v46.0996c0 8.7998 7 16 15.7002 16h15.6992c8.7002 0 15.7002 -7.2002 15.7002 -16v-45.9004l24.9004 25.4004c6.09961 6.2002 16.0996 6.2002 22.2002 0l11.0996 -11.2998
c6.09961 -6.2002 6.09961 -16.4004 0 -22.6006l-58.2998 -59.2998v-84.5l71.8994 42.2002l21.3008 81c2.2998 8.5 10.8994 13.5996 19.2998 11.2998l15.2002 -4.09961c8.39941 -2.2998 13.2998 -11.1006 11.0996 -19.6006l-9.09961 -34.6992l39.1992 23
c7.5 4.39941 17.2002 1.7998 21.5 -5.90039l7.90039 -13.9004c4.2998 -7.69922 1.7002 -17.5 -5.7998 -21.8994l-39.2002 -23l34.0996 -9.2998c8.40039 -2.30078 13.3008 -11.1006 11.1006 -19.6006l-4.10059 -15.5c-2.2998 -8.5 -10.8994 -13.5996 -19.2998 -11.2998
l-79.7002 21.7002l-71.8994 -42.2002l71.7998 -42.2002l79.7002 21.7002c8.39941 2.2998 17.0996 -2.7998 19.2998 -11.2998l4.09961 -15.5c2.30078 -8.5 -2.69922 -17.2998 -11.0996 -19.6006l-34.0996 -9.2998z" />
    <glyph glyph-name="trash-alt" unicode="&#xf2ed;" horiz-adv-x="448" 
d="M268 32c-6.62305 0 -12 5.37695 -12 12v216c0 6.62305 5.37695 12 12 12h24c6.62305 0 12 -5.37695 12 -12v-216c0 -6.62305 -5.37695 -12 -12 -12h-24zM432 368c8.83105 0 16 -7.16895 16 -16v-16c0 -8.83105 -7.16895 -16 -16 -16h-16v-336
c0 -26.4922 -21.5078 -48 -48 -48h-288c-26.4922 0 -48 21.5078 -48 48v336h-16c-8.83105 0 -16 7.16895 -16 16v16c0 8.83105 7.16895 16 16 16h82.4102l34.0195 56.7002c8.39258 13.9844 23.6777 23.2998 41.1602 23.2998h100.82
c0.0078125 0 -0.015625 0.0517578 -0.0078125 0.0517578c17.4824 0 32.7949 -9.36719 41.1875 -23.3516l34 -56.7002h82.4102zM171.84 397.09l-17.4502 -29.0898h139.221l-17.46 29.0898c-1.0498 1.74707 -2.95898 2.91016 -5.14355 2.91016h-0.00683594h-94
c-0.00585938 0 -0.00683594 0.00683594 -0.0126953 0.00683594c-2.18457 0 -4.09766 -1.16992 -5.14746 -2.91699zM368 -16v336h-288v-336h288zM156 32c-6.62305 0 -12 5.37695 -12 12v216c0 6.62305 5.37695 12 12 12h24c6.62305 0 12 -5.37695 12 -12v-216
c0 -6.62305 -5.37695 -12 -12 -12h-24z" />
    <glyph glyph-name="images" unicode="&#xf302;" horiz-adv-x="576" 
d="M480 32v-16c0 -26.5098 -21.4902 -48 -48 -48h-384c-26.5098 0 -48 21.4902 -48 48v256c0 26.5098 21.4902 48 48 48h16v-48h-10c-3.31152 0 -6 -2.68848 -6 -6v-244c0 -3.31152 2.68848 -6 6 -6h372c3.31152 0 6 2.68848 6 6v10h48zM522 368h-372
c-3.31152 0 -6 -2.68848 -6 -6v-244c0 -3.31152 2.68848 -6 6 -6h372c3.31152 0 6 2.68848 6 6v244c0 3.31152 -2.68848 6 -6 6zM528 416c26.5098 0 48 -21.4902 48 -48v-256c0 -26.5098 -21.4902 -48 -48 -48h-384c-26.5098 0 -48 21.4902 -48 48v256
c0 26.5098 21.4902 48 48 48h384zM264 304c0 -22.0908 -17.9092 -40 -40 -40s-40 17.9092 -40 40s17.9092 40 40 40s40 -17.9092 40 -40zM192 208l39.5146 39.5146c4.68652 4.68652 12.2842 4.68652 16.9717 0l39.5137 -39.5146l103.515 103.515
c4.68652 4.68652 12.2842 4.68652 16.9717 0l71.5137 -71.5146v-80h-288v48z" />
    <glyph glyph-name="clipboard" unicode="&#xf328;" horiz-adv-x="384" 
d="M336 384c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-288c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h80c0 35.2998 28.7002 64 64 64s64 -28.7002 64 -64h80zM192 408c-13.2998 0 -24 -10.7002 -24 -24s10.7002 -24 24 -24s24 10.7002 24 24
s-10.7002 24 -24 24zM336 -10v340c0 3.2998 -2.7002 6 -6 6h-42v-36c0 -6.59961 -5.40039 -12 -12 -12h-168c-6.59961 0 -12 5.40039 -12 12v36h-42c-3.2998 0 -6 -2.7002 -6 -6v-340c0 -3.2998 2.7002 -6 6 -6h276c3.2998 0 6 2.7002 6 6z" />
    <glyph glyph-name="arrow-alt-circle-down" unicode="&#xf358;" 
d="M256 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM256 -8c110.5 0 200 89.5 200 200s-89.5 200 -200 200s-200 -89.5 -200 -200s89.5 -200 200 -200zM224 308c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-116
h67c10.7002 0 16.0996 -12.9004 8.5 -20.5l-99 -99c-4.7002 -4.7002 -12.2998 -4.7002 -17 0l-99 99c-7.5 7.59961 -2.2002 20.5 8.5 20.5h67v116z" />
    <glyph glyph-name="arrow-alt-circle-left" unicode="&#xf359;" 
d="M8 192c0 137 111 248 248 248s248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248zM456 192c0 110.5 -89.5 200 -200 200s-200 -89.5 -200 -200s89.5 -200 200 -200s200 89.5 200 200zM384 212v-40c0 -6.59961 -5.40039 -12 -12 -12h-116v-67
c0 -10.7002 -12.9004 -16 -20.5 -8.5l-99 99c-4.7002 4.7002 -4.7002 12.2998 0 17l99 99c7.59961 7.59961 20.5 2.2002 20.5 -8.5v-67h116c6.59961 0 12 -5.40039 12 -12z" />
    <glyph glyph-name="arrow-alt-circle-right" unicode="&#xf35a;" 
d="M504 192c0 -137 -111 -248 -248 -248s-248 111 -248 248s111 248 248 248s248 -111 248 -248zM56 192c0 -110.5 89.5 -200 200 -200s200 89.5 200 200s-89.5 200 -200 200s-200 -89.5 -200 -200zM128 172v40c0 6.59961 5.40039 12 12 12h116v67
c0 10.7002 12.9004 16 20.5 8.5l99 -99c4.7002 -4.7002 4.7002 -12.2998 0 -17l-99 -99c-7.59961 -7.59961 -20.5 -2.2002 -20.5 8.5v67h-116c-6.59961 0 -12 5.40039 -12 12z" />
    <glyph glyph-name="arrow-alt-circle-up" unicode="&#xf35b;" 
d="M256 -56c-137 0 -248 111 -248 248s111 248 248 248s248 -111 248 -248s-111 -248 -248 -248zM256 392c-110.5 0 -200 -89.5 -200 -200s89.5 -200 200 -200s200 89.5 200 200s-89.5 200 -200 200zM276 64h-40c-6.59961 0 -12 5.40039 -12 12v116h-67
c-10.7002 0 -16 12.9004 -8.5 20.5l99 99c4.7002 4.7002 12.2998 4.7002 17 0l99 -99c7.59961 -7.59961 2.2002 -20.5 -8.5 -20.5h-67v-116c0 -6.59961 -5.40039 -12 -12 -12z" />
    <glyph glyph-name="gem" unicode="&#xf3a5;" horiz-adv-x="576" 
d="M464 448c4.09961 0 7.7998 -2 10.0996 -5.40039l99.9004 -147.199c2.90039 -4.40039 2.59961 -10.1006 -0.700195 -14.2002l-276 -340.8c-4.7998 -5.90039 -13.7998 -5.90039 -18.5996 0l-276 340.8c-3.2998 4 -3.60059 9.7998 -0.700195 14.2002l100 147.199
c2.2002 3.40039 6 5.40039 10 5.40039h352zM444.7 400h-56.7998l51.6992 -96h68.4004zM242.6 400l-51.5996 -96h194l-51.7002 96h-90.7002zM131.3 400l-63.2998 -96h68.4004l51.6992 96h-56.7998zM88.2998 256l119.7 -160l-68.2998 160h-51.4004zM191.2 256l96.7998 -243.3
l96.7998 243.3h-193.6zM368 96l119.6 160h-51.3994z" />
    <glyph glyph-name="money-bill-alt" unicode="&#xf3d1;" horiz-adv-x="640" 
d="M320 304c53.0195 0 96 -50.1396 96 -112c0 -61.8701 -43 -112 -96 -112c-53.0195 0 -96 50.1504 -96 112c0 61.8604 42.9805 112 96 112zM360 136v16c0 4.41992 -3.58008 8 -8 8h-16v88c0 4.41992 -3.58008 8 -8 8h-13.5801
c-4.91113 0 -9.50586 -1.49316 -13.3096 -4.03027l-15.3301 -10.2197c-2.15332 -1.43262 -3.55957 -3.88379 -3.55957 -6.66113c0 -1.6377 0.493164 -3.16113 1.33887 -4.42871l8.88086 -13.3105c1.43164 -2.15234 3.88379 -3.55957 6.66113 -3.55957
c1.6377 0 3.16016 0.494141 4.42871 1.33984l0.469727 0.310547v-55.4404h-16c-4.41992 0 -8 -3.58008 -8 -8v-16c0 -4.41992 3.58008 -8 8 -8h64c4.41992 0 8 3.58008 8 8zM608 384c17.6699 0 32 -14.3301 32 -32v-320c0 -17.6699 -14.3301 -32 -32 -32h-576
c-17.6699 0 -32 14.3301 -32 32v320c0 17.6699 14.3301 32 32 32h576zM592 112v160c-35.3496 0 -64 28.6504 -64 64h-416c0 -35.3496 -28.6504 -64 -64 -64v-160c35.3496 0 64 -28.6504 64 -64h416c0 35.3496 28.6504 64 64 64z" />
    <glyph glyph-name="window-close" unicode="&#xf410;" 
d="M464 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-416c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h416zM464 22v340c0 3.2998 -2.7002 6 -6 6h-404c-3.2998 0 -6 -2.7002 -6 -6v-340c0 -3.2998 2.7002 -6 6 -6h404c3.2998 0 6 2.7002 6 6z
M356.5 253.4l-61.4004 -61.4004l61.4004 -61.4004c4.59961 -4.59961 4.59961 -12.0996 0 -16.7998l-22.2998 -22.2998c-4.60059 -4.59961 -12.1006 -4.59961 -16.7998 0l-61.4004 61.4004l-61.4004 -61.4004c-4.59961 -4.59961 -12.0996 -4.59961 -16.7998 0
l-22.2998 22.2998c-4.59961 4.60059 -4.59961 12.1006 0 16.7998l61.4004 61.4004l-61.4004 61.4004c-4.59961 4.59961 -4.59961 12.0996 0 16.7998l22.2998 22.2998c4.60059 4.59961 12.1006 4.59961 16.7998 0l61.4004 -61.4004l61.4004 61.4004
c4.59961 4.59961 12.0996 4.59961 16.7998 0l22.2998 -22.2998c4.7002 -4.60059 4.7002 -12.1006 0 -16.7998z" />
    <glyph glyph-name="comment-dots" unicode="&#xf4ad;" 
d="M144 240c17.7002 0 32 -14.2998 32 -32s-14.2998 -32 -32 -32s-32 14.2998 -32 32s14.2998 32 32 32zM256 240c17.7002 0 32 -14.2998 32 -32s-14.2998 -32 -32 -32s-32 14.2998 -32 32s14.2998 32 32 32zM368 240c17.7002 0 32 -14.2998 32 -32s-14.2998 -32 -32 -32
s-32 14.2998 -32 32s14.2998 32 32 32zM256 416c141.4 0 256 -93.0996 256 -208s-114.6 -208 -256 -208c-32.7998 0 -64 5.2002 -92.9004 14.2998c-29.0996 -20.5996 -77.5996 -46.2998 -139.1 -46.2998c-9.59961 0 -18.2998 5.7002 -22.0996 14.5
c-3.80078 8.7998 -2 19 4.59961 26c0.5 0.400391 31.5 33.7998 46.4004 73.2002c-33 35.0996 -52.9004 78.7002 -52.9004 126.3c0 114.9 114.6 208 256 208zM256 48c114.7 0 208 71.7998 208 160s-93.2998 160 -208 160s-208 -71.7998 -208 -160
c0 -42.2002 21.7002 -74.0996 39.7998 -93.4004l20.6006 -21.7998l-10.6006 -28.0996c-5.5 -14.5 -12.5996 -28.1006 -19.8994 -40.2002c23.5996 7.59961 43.1992 18.9004 57.5 29l19.5 13.7998l22.6992 -7.2002c25.3008 -8 51.7002 -12.0996 78.4004 -12.0996z" />
    <glyph glyph-name="smile-wink" unicode="&#xf4da;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM365.8 138.4c10.2002 -8.5 11.6006 -23.6006 3.10059 -33.8008
c-30 -36 -74.1006 -56.5996 -120.9 -56.5996s-90.9004 20.5996 -120.9 56.5996c-8.39941 10.2002 -7.09961 25.3008 3.10059 33.8008c10.0996 8.39941 25.2998 7.09961 33.7998 -3.10059c20.7998 -25.0996 51.5 -39.3994 84 -39.3994s63.2002 14.3994 84 39.3994
c8.5 10.2002 23.5996 11.6006 33.7998 3.10059zM168 208c-17.7002 0 -32 14.2998 -32 32s14.2998 32 32 32s32 -14.2998 32 -32s-14.2998 -32 -32 -32zM328 268c25.7002 0 55.9004 -16.9004 59.7002 -42.0996c1.7998 -11.1006 -11.2998 -18.2002 -19.7998 -10.8008l-9.5 8.5
c-14.8008 13.2002 -46.2002 13.2002 -61 0l-9.5 -8.5c-8.30078 -7.39941 -21.5 -0.399414 -19.8008 10.8008c4 25.1992 34.2002 42.0996 59.9004 42.0996z" />
    <glyph glyph-name="angry" unicode="&#xf556;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM248 136c33.5996 0 65.2002 -14.7998 86.7998 -40.5996
c8.40039 -10.2002 7.10059 -25.3008 -3.09961 -33.8008c-10.6006 -8.89941 -25.7002 -6.69922 -33.7998 3c-24.8008 29.7002 -75 29.7002 -99.8008 0c-8.5 -10.1992 -23.5996 -11.5 -33.7998 -3s-11.5996 23.6006 -3.09961 33.8008
c21.5996 25.7998 53.2002 40.5996 86.7998 40.5996zM200 208c0 -17.7002 -14.2998 -32.0996 -32 -32.0996s-32 14.2998 -32 32c0 6.19922 2.2002 11.6992 5.2998 16.5996l-28.2002 8.5c-12.6992 3.7998 -19.8994 17.2002 -16.0996 29.9004
c3.7998 12.6992 17.0996 20 29.9004 16.0996l80 -24c12.6992 -3.7998 19.8994 -17.2002 16.0996 -29.9004c-3.09961 -10.3994 -12.7002 -17.0996 -23 -17.0996zM399 262.9c3.7998 -12.7002 -3.40039 -26.1006 -16.0996 -29.8008l-28.2002 -8.5
c3.09961 -4.89941 5.2998 -10.3994 5.2998 -16.5996c0 -17.7002 -14.2998 -32 -32 -32s-32 14.2998 -32 32c-10.2998 0 -19.9004 6.7002 -23 17.0996c-3.7998 12.7002 3.40039 26.1006 16.0996 29.9004l80 24c12.8008 3.7998 26.1006 -3.40039 29.9004 -16.0996z" />
    <glyph glyph-name="dizzy" unicode="&#xf567;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM214.2 209.9
c-7.90039 -7.90039 -20.5 -7.90039 -28.4004 -0.200195l-17.7998 17.7998l-17.7998 -17.7998c-7.7998 -7.7998 -20.5 -7.7998 -28.2998 0c-7.80078 7.7998 -7.80078 20.5 0 28.2998l17.8994 17.9004l-17.8994 17.8994c-7.80078 7.7998 -7.80078 20.5 0 28.2998
c7.7998 7.80078 20.5 7.80078 28.2998 0l17.7998 -17.7998l17.9004 17.9004c7.7998 7.7998 20.5 7.7998 28.2998 0s7.7998 -20.5 0 -28.2998l-17.9004 -17.9004l17.9004 -17.7998c7.7998 -7.7998 7.7998 -20.5 0 -28.2998zM374.2 302.1
c7.7002 -7.7998 7.7002 -20.3994 0 -28.1992l-17.9004 -17.9004l17.7998 -18c7.80078 -7.7998 7.80078 -20.5 0 -28.2998c-7.7998 -7.7998 -20.5 -7.7998 -28.2998 0l-17.7998 17.7998l-17.7998 -17.7998c-7.7998 -7.7998 -20.5 -7.7998 -28.2998 0
c-7.80078 7.7998 -7.80078 20.5 0 28.2998l17.8994 17.9004l-17.8994 17.8994c-7.80078 7.7998 -7.80078 20.5 0 28.2998c7.7998 7.80078 20.5 7.80078 28.2998 0l17.7998 -17.7998l17.9004 17.7998c7.7998 7.80078 20.5 7.80078 28.2998 0zM248 176
c35.2998 0 64 -28.7002 64 -64s-28.7002 -64 -64 -64s-64 28.7002 -64 64s28.7002 64 64 64z" />
    <glyph glyph-name="flushed" unicode="&#xf579;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM344 304c44.2002 0 80 -35.7998 80 -80s-35.7998 -80 -80 -80
s-80 35.7998 -80 80s35.7998 80 80 80zM344 176c26.5 0 48 21.5 48 48s-21.5 48 -48 48s-48 -21.5 -48 -48s21.5 -48 48 -48zM344 248c13.2998 0 24 -10.7002 24 -24s-10.7002 -24 -24 -24s-24 10.7002 -24 24s10.7002 24 24 24zM232 224c0 -44.2002 -35.7998 -80 -80 -80
s-80 35.7998 -80 80s35.7998 80 80 80s80 -35.7998 80 -80zM152 176c26.5 0 48 21.5 48 48s-21.5 48 -48 48s-48 -21.5 -48 -48s21.5 -48 48 -48zM152 248c13.2998 0 24 -10.7002 24 -24s-10.7002 -24 -24 -24s-24 10.7002 -24 24s10.7002 24 24 24zM312 104
c13.2002 0 24 -10.7998 24 -24s-10.7998 -24 -24 -24h-128c-13.2002 0 -24 10.7998 -24 24s10.7998 24 24 24h128z" />
    <glyph glyph-name="frown-open" unicode="&#xf57a;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM200 240c0 -17.7002 -14.2998 -32 -32 -32s-32 14.2998 -32 32
s14.2998 32 32 32s32 -14.2998 32 -32zM328 272c17.7002 0 32 -14.2998 32 -32s-14.2998 -32 -32 -32s-32 14.2998 -32 32s14.2998 32 32 32zM248 160c35.5996 0 88.7998 -21.2998 95.7998 -61.2002c2 -11.7998 -9.09961 -21.5996 -20.5 -18.0996
c-31.2002 9.59961 -59.3994 15.2998 -75.2998 15.2998s-44.0996 -5.7002 -75.2998 -15.2998c-11.5 -3.40039 -22.5 6.2998 -20.5 18.0996c7 39.9004 60.2002 61.2002 95.7998 61.2002z" />
    <glyph glyph-name="grimace" unicode="&#xf57f;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM168 208c-17.7002 0 -32 14.2998 -32 32s14.2998 32 32 32
s32 -14.2998 32 -32s-14.2998 -32 -32 -32zM328 208c-17.7002 0 -32 14.2998 -32 32s14.2998 32 32 32s32 -14.2998 32 -32s-14.2998 -32 -32 -32zM344 192c26.5 0 48 -21.5 48 -48v-32c0 -26.5 -21.5 -48 -48 -48h-192c-26.5 0 -48 21.5 -48 48v32c0 26.5 21.5 48 48 48
h192zM176 96v24h-40v-8c0 -8.7998 7.2002 -16 16 -16h24zM176 136v24h-24c-8.7998 0 -16 -7.2002 -16 -16v-8h40zM240 96v24h-48v-24h48zM240 136v24h-48v-24h48zM304 96v24h-48v-24h48zM304 136v24h-48v-24h48zM360 112v8h-40v-24h24c8.7998 0 16 7.2002 16 16zM360 136v8
c0 8.7998 -7.2002 16 -16 16h-24v-24h40z" />
    <glyph glyph-name="grin" unicode="&#xf580;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM353.6 143.4c10 3.09961 19.3008 -5.5 17.7002 -15.3008
c-8 -47.0996 -71.2998 -80 -123.3 -80s-115.4 32.9004 -123.3 80c-1.7002 9.90039 7.7998 18.4004 17.7002 15.3008c26 -8.30078 64.3994 -13.1006 105.6 -13.1006s79.7002 4.7998 105.6 13.1006zM168 208c-17.7002 0 -32 14.2998 -32 32s14.2998 32 32 32
s32 -14.2998 32 -32s-14.2998 -32 -32 -32zM328 208c-17.7002 0 -32 14.2998 -32 32s14.2998 32 32 32s32 -14.2998 32 -32s-14.2998 -32 -32 -32z" />
    <glyph glyph-name="grin-alt" unicode="&#xf581;" horiz-adv-x="496" 
d="M200.3 200c-7.5 -11.4004 -24.5996 -12 -32.7002 0c-12.3994 18.7002 -15.1992 37.2998 -15.6992 56c0.599609 18.7002 3.2998 37.2998 15.6992 56c7.60059 11.4004 24.7002 12 32.7002 0c12.4004 -18.7002 15.2002 -37.2998 15.7002 -56
c-0.599609 -18.7002 -3.2998 -37.2998 -15.7002 -56zM328.3 200c-7.5 -11.4004 -24.5996 -12 -32.7002 0c-12.3994 18.7002 -15.1992 37.2998 -15.6992 56c0.599609 18.7002 3.2998 37.2998 15.6992 56c7.60059 11.4004 24.7002 12 32.7002 0
c12.4004 -18.7002 15.2002 -37.2998 15.7002 -56c-0.599609 -18.7002 -3.2998 -37.2998 -15.7002 -56zM248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200
s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM353.6 143.4c10 3.09961 19.3008 -5.5 17.7002 -15.3008c-8 -47.0996 -71.2998 -80 -123.3 -80s-115.4 32.8008 -123.3 80c-1.7002 10 7.7998 18.4004 17.7002 15.3008c26 -8.30078 64.3994 -13.1006 105.6 -13.1006
s79.7002 4.7998 105.6 13.1006z" />
    <glyph glyph-name="grin-beam" unicode="&#xf582;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM353.6 143.4c10 3.09961 19.3008 -5.5 17.7002 -15.3008
c-8 -47.0996 -71.2998 -80 -123.3 -80s-115.4 32.9004 -123.3 80c-1.7002 10 7.89941 18.4004 17.7002 15.3008c26 -8.30078 64.3994 -13.1006 105.6 -13.1006s79.7002 4.7998 105.6 13.1006zM117.7 216.3c-3.60059 1.10059 -6 4.60059 -5.7002 8.2998
c3.2998 42.1006 32.2002 71.4004 56 71.4004s52.7002 -29.2998 56 -71.4004c0.299805 -3.7998 -2.09961 -7.19922 -5.7002 -8.2998c-3.09961 -1 -7.2002 0 -9.2998 3.7002l-9.5 17c-7.7002 13.7002 -19.2002 21.5996 -31.5 21.5996s-23.7998 -7.89941 -31.5 -21.5996
l-9.5 -17c-1.90039 -3.2002 -5.7998 -4.7998 -9.2998 -3.7002zM277.7 216.3c-3.60059 1.10059 -6 4.60059 -5.7002 8.2998c3.2998 42.1006 32.2002 71.4004 56 71.4004s52.7002 -29.2998 56 -71.4004c0.299805 -3.7998 -2.09961 -7.19922 -5.7002 -8.2998
c-3.09961 -1 -7.2002 0 -9.2998 3.7002l-9.5 17c-7.7002 13.7002 -19.2002 21.5996 -31.5 21.5996s-23.7998 -7.89941 -31.5 -21.5996l-9.5 -17c-1.90039 -3.2002 -5.7998 -4.7998 -9.2998 -3.7002z" />
    <glyph glyph-name="grin-beam-sweat" unicode="&#xf583;" horiz-adv-x="496" 
d="M440 288c-29.5 0 -53.2998 26.2998 -53.2998 58.7002c0 25 31.7002 75.5 46.2002 97.2998c3.5 5.2998 10.5996 5.2998 14.1992 0c14.5 -21.7998 46.2002 -72.2998 46.2002 -97.2998c0 -32.4004 -23.7998 -58.7002 -53.2998 -58.7002zM248 48
c-51.9004 0 -115.3 32.9004 -123.3 80c-1.7002 10 7.89941 18.4004 17.7002 15.2998c26 -8.2998 64.3994 -13.0996 105.6 -13.0996s79.7002 4.7998 105.6 13.0996c10 3.2002 19.4004 -5.39941 17.7002 -15.2998c-8 -47.0996 -71.3994 -80 -123.3 -80zM378.3 216.3
c-3.09961 -0.899414 -7.2002 0.100586 -9.2998 3.7002l-9.5 17c-7.7002 13.7002 -19.2002 21.5996 -31.5 21.5996s-23.7998 -7.89941 -31.5 -21.5996l-9.5 -17c-1.90039 -3.2002 -5.7998 -4.7998 -9.2998 -3.7002c-3.60059 1.10059 -6 4.60059 -5.7002 8.2998
c3.2998 42.1006 32.2002 71.4004 56 71.4004s52.7002 -29.2998 56 -71.4004c0.299805 -3.7998 -2.09961 -7.19922 -5.7002 -8.2998zM483.6 269.2c8 -24.2998 12.4004 -50.2002 12.4004 -77.2002c0 -137 -111 -248 -248 -248s-248 111 -248 248s111 248 248 248
c45.7002 0 88.4004 -12.5996 125.2 -34.2002c-10.9004 -21.5996 -15.5 -36.2002 -17.2002 -45.7002c-31.2002 20.1006 -68.2002 31.9004 -108 31.9004c-110.3 0 -200 -89.7002 -200 -200s89.7002 -200 200 -200s200 89.7002 200 200
c0 22.5 -3.90039 44.0996 -10.7998 64.2998c0.399414 0 21.7998 -2.7998 46.3994 12.9004zM168 258.6c-12.2998 0 -23.7998 -7.7998 -31.5 -21.5996l-9.5 -17c-1.90039 -3.2002 -5.7998 -4.7998 -9.2998 -3.7002c-3.60059 1.10059 -6 4.60059 -5.7002 8.2998
c3.2998 42.1006 32.2002 71.4004 56 71.4004s52.7002 -29.2998 56 -71.4004c0.299805 -3.7998 -2.09961 -7.19922 -5.7002 -8.2998c-3.09961 -1 -7.2002 0 -9.2998 3.7002l-9.5 17c-7.7002 13.7002 -19.2002 21.5996 -31.5 21.5996z" />
    <glyph glyph-name="grin-hearts" unicode="&#xf584;" horiz-adv-x="496" 
d="M353.6 143.4c10 3.09961 19.3008 -5.5 17.7002 -15.3008c-8 -47.0996 -71.2998 -80 -123.3 -80s-115.4 32.8008 -123.3 80c-1.7002 10 7.89941 18.4004 17.7002 15.3008c26 -8.30078 64.3994 -13.1006 105.6 -13.1006s79.7002 4.7998 105.6 13.1006zM200.8 192.3
l-70.2002 18.1006c-20.3994 5.2998 -31.8994 27 -24.1992 47.1992c6.69922 17.7002 26.6992 26.7002 44.8994 22l7.10059 -1.89941l2 7.09961c5.09961 18.1006 22.8994 30.9004 41.5 27.9004c21.3994 -3.40039 34.3994 -24.2002 28.7998 -44.5l-19.4004 -69.9004
c-1.2998 -4.5 -6 -7.2002 -10.5 -6zM389.6 257.6c7.7002 -20.1992 -3.7998 -41.7998 -24.1992 -47.0996l-70.2002 -18.2002c-4.60059 -1.2002 -9.2998 1.5 -10.5 6l-19.4004 69.9004c-5.59961 20.2998 7.40039 41.0996 28.7998 44.5c18.7002 3 36.5 -9.7998 41.5 -27.9004
l2 -7.09961l7.10059 1.89941c18.2002 4.7002 38.2002 -4.39941 44.8994 -22zM248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200
s89.7002 -200 200 -200z" />
    <glyph glyph-name="grin-squint" unicode="&#xf585;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM353.6 143.4c10 3.09961 19.3008 -5.5 17.7002 -15.3008
c-8 -47.0996 -71.2998 -80 -123.3 -80s-115.4 32.9004 -123.3 80c-1.7002 9.90039 7.7998 18.4004 17.7002 15.3008c26 -8.30078 64.3994 -13.1006 105.6 -13.1006s79.7002 4.7998 105.6 13.1006zM118.9 184.2c-3.80078 4.39941 -3.90039 11 -0.100586 15.5l33.6006 40.2998
l-33.6006 40.2998c-3.7002 4.5 -3.7002 11 0.100586 15.5c3.89941 4.40039 10.1992 5.5 15.2998 2.5l80 -48c3.59961 -2.2002 5.7998 -6.09961 5.7998 -10.2998s-2.2002 -8.09961 -5.7998 -10.2998l-80 -48c-5.40039 -3.2002 -11.7002 -1.7002 -15.2998 2.5zM361.8 181.7
l-80 48c-3.59961 2.2002 -5.7998 6.09961 -5.7998 10.2998s2.2002 8.09961 5.7998 10.2998l80 48c5.10059 2.90039 11.5 1.90039 15.2998 -2.5c3.80078 -4.5 3.90039 -11 0.100586 -15.5l-33.6006 -40.2998l33.6006 -40.2998c3.7002 -4.5 3.7002 -11 -0.100586 -15.5
c-3.59961 -4.2002 -9.89941 -5.7002 -15.2998 -2.5z" />
    <glyph glyph-name="grin-squint-tears" unicode="&#xf586;" 
d="M117.1 63.9004c6.30078 0.899414 11.7002 -4.5 10.9004 -10.9004c-3.7002 -25.7998 -13.7002 -84 -30.5996 -100.9c-22 -21.8994 -57.9004 -21.5 -80.3008 0.900391c-22.3994 22.4004 -22.7998 58.4004 -0.899414 80.2998
c16.8994 16.9004 75.0996 26.9004 100.899 30.6006zM75.9004 105.6c-19.6006 -3.89941 -35.1006 -8.09961 -47.3008 -12.1992c-39.2998 90.5996 -22.0996 199.899 52 274c48.5 48.3994 111.9 72.5996 175.4 72.5996c38.9004 0 77.7998 -9.2002 113.2 -27.4004
c-4 -12.1992 -8.2002 -28 -12 -48.2998c-30.4004 17.9004 -65 27.7002 -101.2 27.7002c-53.4004 0 -103.6 -20.7998 -141.4 -58.5996c-61.5996 -61.5 -74.2998 -153.4 -38.6992 -227.801zM428.2 293.2c20.2998 3.89941 36.2002 8 48.5 12
c47.8994 -93.2002 32.8994 -210.5 -45.2002 -288.601c-48.5 -48.3994 -111.9 -72.5996 -175.4 -72.5996c-33.6992 0 -67.2998 7 -98.6992 20.5996c4.19922 12.2002 8.2998 27.7002 12.1992 47.2002c26.6006 -12.7998 55.9004 -19.7998 86.4004 -19.7998
c53.4004 0 103.6 20.7998 141.4 58.5996c65.6992 65.7002 75.7998 166 30.7998 242.601zM394.9 320.1c-6.30078 -0.899414 -11.7002 4.5 -10.9004 10.9004c3.7002 25.7998 13.7002 84 30.5996 100.9c22 21.8994 57.9004 21.5 80.3008 -0.900391
c22.3994 -22.4004 22.7998 -58.4004 0.899414 -80.2998c-16.8994 -16.9004 -75.0996 -26.9004 -100.899 -30.6006zM207.9 211.8c3 -3 4.19922 -7.2998 3.19922 -11.5l-22.5996 -90.5c-1.40039 -5.39941 -6.2002 -9.09961 -11.7002 -9.09961h-0.899414
c-5.80078 0.5 -10.5 5.09961 -11 10.8994l-4.80078 52.3008l-52.2998 4.7998c-5.7998 0.5 -10.3994 5.2002 -10.8994 11c-0.400391 5.89941 3.39941 11.2002 9.09961 12.5996l90.5 22.7002c4.2002 1 8.40039 -0.200195 11.4004 -3.2002zM247.6 236.9
c-0.0996094 0 -6.39941 -1.80078 -11.3994 3.19922c-3 3 -4.2002 7.30078 -3.2002 11.4004l22.5996 90.5c1.40039 5.7002 7 9.2002 12.6006 9.09961c5.7998 -0.5 10.5 -5.09961 11 -10.8994l4.7998 -52.2998l52.2998 -4.80078c5.7998 -0.5 10.4004 -5.19922 10.9004 -11
c0.399414 -5.89941 -3.40039 -11.1992 -9.10059 -12.5996zM299.6 148.4c29.1006 29.0996 53 59.5996 65.3008 83.7998c4.89941 9.2998 17.5996 9.89941 23.3994 1.7002c27.7002 -38.9004 6.10059 -106.9 -30.5996 -143.7s-104.8 -58.2998 -143.7 -30.6006
c-8.2998 5.90039 -7.5 18.6006 1.7002 23.4004c24.2002 12.5 54.7998 36.2998 83.8994 65.4004z" />
    <glyph glyph-name="grin-stars" unicode="&#xf587;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM353.6 143.4c10 3.09961 19.3008 -5.5 17.7002 -15.3008
c-8 -47.0996 -71.2998 -80 -123.3 -80s-115.4 32.8008 -123.3 80c-1.7002 10 7.89941 18.4004 17.7002 15.3008c26 -8.30078 64.3994 -13.1006 105.6 -13.1006s79.7002 4.7998 105.6 13.1006zM125.7 200.9l6.09961 34.8994l-25.3994 24.6006
c-4.60059 4.59961 -1.90039 12.2998 4.2998 13.1992l34.8994 5l15.5 31.6006c2.90039 5.7998 11 5.7998 13.9004 0l15.5 -31.6006l34.9004 -5c6.19922 -1 8.7998 -8.69922 4.2998 -13.1992l-25.4004 -24.6006l6 -34.8994c1 -6.2002 -5.39941 -11 -11 -7.90039
l-31.2998 16.2998l-31.2998 -16.2998c-5.60059 -3.09961 -12 1.7002 -11 7.90039zM385.4 273.6c6.19922 -1 8.89941 -8.59961 4.39941 -13.1992l-25.3994 -24.6006l6 -34.8994c1 -6.2002 -5.40039 -11 -11 -7.90039l-31.3008 16.2998l-31.2998 -16.2998
c-5.59961 -3.09961 -12 1.7002 -11 7.90039l6 34.8994l-25.3994 24.6006c-4.60059 4.59961 -1.90039 12.2998 4.2998 13.1992l34.8994 5l15.5 31.6006c2.90039 5.7998 11 5.7998 13.9004 0l15.5 -31.6006z" />
    <glyph glyph-name="grin-tears" unicode="&#xf588;" horiz-adv-x="640" 
d="M117.1 191.9c6.30078 0.899414 11.7002 -4.5 10.9004 -10.9004c-3.7002 -25.7998 -13.7002 -84 -30.5996 -100.9c-22 -21.8994 -57.9004 -21.5 -80.3008 0.900391c-22.3994 22.4004 -22.7998 58.4004 -0.899414 80.2998c16.8994 16.9004 75.0996 26.9004 100.899 30.6006
zM623.8 161.3c21.9004 -21.8994 21.5 -57.8994 -0.799805 -80.2002c-22.4004 -22.3994 -58.4004 -22.7998 -80.2998 -0.899414c-16.9004 16.8994 -26.9004 75.0996 -30.6006 100.899c-0.899414 6.30078 4.5 11.7002 10.8008 10.8008
c25.7998 -3.7002 84 -13.7002 100.899 -30.6006zM497.2 99.5996c12.3994 -37.2998 25.0996 -43.7998 28.2998 -46.5c-44.5996 -65.7998 -120 -109.1 -205.5 -109.1s-160.9 43.2998 -205.5 109.1c3.09961 2.60059 15.7998 9.10059 28.2998 46.5
c33.4004 -63.8994 100.3 -107.6 177.2 -107.6s143.8 43.7002 177.2 107.6zM122.7 223.5c-2.40039 0.299805 -5 2.5 -49.5 -6.90039c12.3994 125.4 118.1 223.4 246.8 223.4s234.4 -98 246.8 -223.5c-44.2998 9.40039 -47.3994 7.2002 -49.5 7
c-15.2002 95.2998 -97.7998 168.5 -197.3 168.5s-182.1 -73.2002 -197.3 -168.5zM320 48c-51.9004 0 -115.3 32.9004 -123.3 80c-1.7002 10 7.89941 18.4004 17.7002 15.2998c26 -8.2998 64.3994 -13.0996 105.6 -13.0996s79.7002 4.7998 105.6 13.0996
c10 3.2002 19.4004 -5.39941 17.7002 -15.2998c-8 -47.0996 -71.3994 -80 -123.3 -80zM450.3 216.3c-3.09961 -0.899414 -7.2002 0.100586 -9.2998 3.7002l-9.5 17c-7.7002 13.7002 -19.2002 21.5996 -31.5 21.5996s-23.7998 -7.89941 -31.5 -21.5996l-9.5 -17
c-1.90039 -3.2002 -5.7998 -4.7998 -9.2998 -3.7002c-3.60059 1.10059 -6 4.60059 -5.7002 8.2998c3.2998 42.1006 32.2002 71.4004 56 71.4004s52.7002 -29.2998 56 -71.4004c0.299805 -3.7998 -2.09961 -7.19922 -5.7002 -8.2998zM240 258.6
c-12.2998 0 -23.7998 -7.7998 -31.5 -21.5996l-9.5 -17c-1.90039 -3.2002 -5.7998 -4.7998 -9.2998 -3.7002c-3.60059 1.10059 -6 4.60059 -5.7002 8.2998c3.2998 42.1006 32.2002 71.4004 56 71.4004s52.7002 -29.2998 56 -71.4004
c0.299805 -3.7998 -2.09961 -7.19922 -5.7002 -8.2998c-3.09961 -1 -7.2002 0 -9.2998 3.7002l-9.5 17c-7.7002 13.7002 -19.2002 21.5996 -31.5 21.5996z" />
    <glyph glyph-name="grin-tongue" unicode="&#xf589;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM312 40h0.0996094v43.7998l-17.6992 8.7998c-15.1006 7.60059 -31.5 -1.69922 -34.9004 -16.5l-2.7998 -12.0996c-2.10059 -9.2002 -15.2002 -9.2002 -17.2998 0
l-2.80078 12.0996c-3.39941 14.8008 -19.8994 24 -34.8994 16.5l-17.7002 -8.7998v-42.7998c0 -35.2002 28 -64.5 63.0996 -65c35.8008 -0.5 64.9004 28.4004 64.9004 64zM340.2 14.7002c64 33.3994 107.8 100.3 107.8 177.3c0 110.3 -89.7002 200 -200 200
s-200 -89.7002 -200 -200c0 -77 43.7998 -143.9 107.8 -177.3c-2.2002 8.09961 -3.7998 16.5 -3.7998 25.2998v43.5c-14.2002 12.4004 -24.4004 27.5 -27.2998 44.5c-1.7002 10 7.7998 18.4004 17.7002 15.2998c26 -8.2998 64.3994 -13.0996 105.6 -13.0996
s79.7002 4.7998 105.6 13.0996c10 3.2002 19.4004 -5.39941 17.7002 -15.2998c-2.89941 -17 -13.0996 -32.0996 -27.2998 -44.5v-43.5c0 -8.7998 -1.59961 -17.2002 -3.7998 -25.2998zM168 272c17.7002 0 32 -14.2998 32 -32s-14.2998 -32 -32 -32s-32 14.2998 -32 32
s14.2998 32 32 32zM328 272c17.7002 0 32 -14.2998 32 -32s-14.2998 -32 -32 -32s-32 14.2998 -32 32s14.2998 32 32 32z" />
    <glyph glyph-name="grin-tongue-squint" unicode="&#xf58a;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM312 40h0.0996094v43.7998l-17.6992 8.7998c-15.1006 7.60059 -31.5 -1.69922 -34.9004 -16.5l-2.7998 -12.0996c-2.10059 -9.2002 -15.2002 -9.2002 -17.2998 0
l-2.80078 12.0996c-3.39941 14.8008 -19.8994 24 -34.8994 16.5l-17.7002 -8.7998v-42.7998c0 -35.2002 28 -64.5 63.0996 -65c35.8008 -0.5 64.9004 28.4004 64.9004 64zM340.2 14.7002c64 33.3994 107.8 100.3 107.8 177.3c0 110.3 -89.7002 200 -200 200
s-200 -89.7002 -200 -200c0 -77 43.7998 -143.9 107.8 -177.3c-2.2002 8.09961 -3.7998 16.5 -3.7998 25.2998v43.5c-14.2002 12.4004 -24.4004 27.5 -27.2998 44.5c-1.7002 10 7.7998 18.4004 17.7002 15.2998c26 -8.2998 64.3994 -13.0996 105.6 -13.0996
s79.7002 4.7998 105.6 13.0996c10 3.2002 19.4004 -5.39941 17.7002 -15.2998c-2.89941 -17 -13.0996 -32.0996 -27.2998 -44.5v-43.5c0 -8.7998 -1.59961 -17.2002 -3.7998 -25.2998zM377.1 295.8c3.80078 -4.39941 3.90039 -11 0.100586 -15.5l-33.6006 -40.2998
l33.6006 -40.2998c3.7002 -4.5 3.7002 -11 -0.100586 -15.5c-3.59961 -4.2002 -9.89941 -5.7002 -15.2998 -2.5l-80 48c-3.59961 2.2002 -5.7998 6.09961 -5.7998 10.2998s2.2002 8.09961 5.7998 10.2998l80 48c5 3 11.5 1.90039 15.2998 -2.5zM214.2 250.3
c3.59961 -2.2002 5.7998 -6.09961 5.7998 -10.2998s-2.2002 -8.09961 -5.7998 -10.2998l-80 -48c-5.40039 -3.2002 -11.7002 -1.7002 -15.2998 2.5c-3.80078 4.5 -3.90039 11 -0.100586 15.5l33.6006 40.2998l-33.6006 40.2998c-3.7002 4.5 -3.7002 11 0.100586 15.5
c3.89941 4.5 10.2998 5.5 15.2998 2.5z" />
    <glyph glyph-name="grin-tongue-wink" unicode="&#xf58b;" horiz-adv-x="496" 
d="M152 268c25.7002 0 55.9004 -16.9004 59.7998 -42.0996c0.799805 -5 -1.7002 -10 -6.09961 -12.4004c-5.7002 -3.09961 -11.2002 -0.599609 -13.7002 1.59961l-9.5 8.5c-14.7998 13.2002 -46.2002 13.2002 -61 0l-9.5 -8.5
c-3.7998 -3.39941 -9.2998 -4 -13.7002 -1.59961c-4.39941 2.40039 -6.89941 7.40039 -6.09961 12.4004c3.89941 25.1992 34.0996 42.0996 59.7998 42.0996zM328 320c44.2002 0 80 -35.7998 80 -80s-35.7998 -80 -80 -80s-80 35.7998 -80 80s35.7998 80 80 80zM328 192
c26.5 0 48 21.5 48 48s-21.5 48 -48 48s-48 -21.5 -48 -48s21.5 -48 48 -48zM328 264c13.2998 0 24 -10.7002 24 -24s-10.7002 -24 -24 -24s-24 10.7002 -24 24s10.7002 24 24 24zM248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248z
M312 40h0.0996094v43.7998l-17.6992 8.7998c-15.1006 7.60059 -31.5 -1.69922 -34.9004 -16.5l-2.7998 -12.0996c-2.10059 -9.2002 -15.2002 -9.2002 -17.2998 0l-2.80078 12.0996c-3.39941 14.8008 -19.8994 24 -34.8994 16.5l-17.7002 -8.7998v-42.7998
c0 -35.2002 28 -64.5 63.0996 -65c35.8008 -0.5 64.9004 28.4004 64.9004 64zM340.2 14.7002c64 33.3994 107.8 100.3 107.8 177.3c0 110.3 -89.7002 200 -200 200s-200 -89.7002 -200 -200c0 -77 43.7998 -143.9 107.8 -177.3
c-2.2002 8.09961 -3.7998 16.5 -3.7998 25.2998v43.5c-14.2002 12.4004 -24.4004 27.5 -27.2998 44.5c-1.7002 10 7.7998 18.4004 17.7002 15.2998c26 -8.2998 64.3994 -13.0996 105.6 -13.0996s79.7002 4.7998 105.6 13.0996c10 3.2002 19.4004 -5.39941 17.7002 -15.2998
c-2.89941 -17 -13.0996 -32.0996 -27.2998 -44.5v-43.5c0 -8.7998 -1.59961 -17.2002 -3.7998 -25.2998z" />
    <glyph glyph-name="grin-wink" unicode="&#xf58c;" horiz-adv-x="496" 
d="M328 268c25.6904 0 55.8799 -16.9199 59.8701 -42.1201c1.72949 -11.0898 -11.3506 -18.2695 -19.8301 -10.8398l-9.5498 8.47949c-14.8105 13.1904 -46.1602 13.1904 -60.9707 0l-9.5498 -8.47949c-8.33008 -7.40039 -21.5801 -0.379883 -19.8301 10.8398
c3.98047 25.2002 34.1699 42.1201 59.8604 42.1201zM168 208c-17.6699 0 -32 14.3301 -32 32s14.3301 32 32 32s32 -14.3301 32 -32s-14.3301 -32 -32 -32zM353.55 143.36c10.04 3.13965 19.3906 -5.4502 17.71 -15.3408
c-7.92969 -47.1494 -71.3193 -80.0195 -123.26 -80.0195s-115.33 32.8701 -123.26 80.0195c-1.69043 9.9707 7.76953 18.4707 17.71 15.3408c25.9297 -8.31055 64.3994 -13.0605 105.55 -13.0605s79.6201 4.75977 105.55 13.0605zM248 440c136.97 0 248 -111.03 248 -248
s-111.03 -248 -248 -248s-248 111.03 -248 248s111.03 248 248 248zM248 -8c110.28 0 200 89.7197 200 200s-89.7197 200 -200 200s-200 -89.7197 -200 -200s89.7197 -200 200 -200z" />
    <glyph glyph-name="kiss" unicode="&#xf596;" horiz-adv-x="496" 
d="M168 272c17.7002 0 32 -14.2998 32 -32s-14.2998 -32 -32 -32s-32 14.2998 -32 32s14.2998 32 32 32zM304 140c0 -13 -13.4004 -27.2998 -35.0996 -36.4004c21.7998 -8.69922 35.1992 -23 35.1992 -36c0 -19.1992 -28.6992 -41.5 -71.5 -44h-0.5
c-3.69922 0 -7 2.60059 -7.7998 6.2002c-0.899414 3.7998 1.10059 7.7002 4.7002 9.2002l17 7.2002c12.9004 5.5 20.7002 13.5 20.7002 21.5s-7.7998 16 -20.7998 21.5l-16.9004 7.2002c-6 2.59961 -5.7002 12.3994 0 14.7998l17 7.2002
c12.9004 5.5 20.7002 13.5 20.7002 21.5s-7.7998 16 -20.7998 21.5l-16.9004 7.19922c-3.59961 1.5 -5.59961 5.40039 -4.7002 9.2002c0.799805 3.7998 4.40039 6.60059 8.2002 6.2002c42.7002 -2.5 71.5 -24.7998 71.5 -44zM248 440c137 0 248 -111 248 -248
s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM328 272c17.7002 0 32 -14.2998 32 -32s-14.2998 -32 -32 -32s-32 14.2998 -32 32s14.2998 32 32 32z
" />
    <glyph glyph-name="kiss-beam" unicode="&#xf597;" horiz-adv-x="496" 
d="M168 296c23.7998 0 52.7002 -29.2998 55.7998 -71.4004c0.299805 -3.7998 -2 -7.19922 -5.59961 -8.2998c-3.10059 -1 -7.2002 0 -9.2998 3.7002l-9.5 17c-7.7002 13.7002 -19.2002 21.5996 -31.5 21.5996c-12.3008 0 -23.8008 -7.89941 -31.5 -21.5996l-9.5 -17
c-1.80078 -3.2002 -5.80078 -4.7002 -9.30078 -3.7002c-3.59961 1.10059 -5.89941 4.60059 -5.59961 8.2998c3.2998 42.1006 32.2002 71.4004 56 71.4004zM248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8
c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM304 140c0 -13 -13.4004 -27.2998 -35.0996 -36.4004c21.7998 -8.69922 35.1992 -23 35.1992 -36c0 -19.1992 -28.6992 -41.5 -71.5 -44h-0.5
c-3.69922 0 -7 2.60059 -7.7998 6.2002c-0.899414 3.7998 1.10059 7.7002 4.7002 9.2002l17 7.2002c12.9004 5.5 20.7002 13.5 20.7002 21.5s-7.7998 16 -20.7998 21.5l-16.9004 7.2002c-6 2.59961 -5.7002 12.3994 0 14.7998l17 7.2002
c12.9004 5.5 20.7002 13.5 20.7002 21.5s-7.7998 16 -20.7998 21.5l-16.9004 7.19922c-3.59961 1.5 -5.59961 5.40039 -4.7002 9.2002c0.799805 3.7998 4.40039 6.60059 8.2002 6.2002c42.7002 -2.5 71.5 -24.7998 71.5 -44zM328 296
c23.7998 0 52.7002 -29.2998 55.7998 -71.4004c0.299805 -3.7998 -2 -7.19922 -5.59961 -8.2998c-3.10059 -1 -7.2002 0 -9.2998 3.7002l-9.5 17c-7.7002 13.7002 -19.2002 21.5996 -31.5 21.5996c-12.3008 0 -23.8008 -7.89941 -31.5 -21.5996l-9.5 -17
c-1.80078 -3.2002 -5.80078 -4.7002 -9.30078 -3.7002c-3.59961 1.10059 -5.89941 4.60059 -5.59961 8.2998c3.2998 42.1006 32.2002 71.4004 56 71.4004z" />
    <glyph glyph-name="kiss-wink-heart" unicode="&#xf598;" horiz-adv-x="504" 
d="M304 139.5c0 -13 -13.4004 -27.2998 -35.0996 -36.4004c21.7998 -8.69922 35.1992 -23 35.1992 -36c0 -19.1992 -28.6992 -41.5 -71.5 -44h-0.5c-3.69922 0 -7 2.60059 -7.7998 6.2002c-0.899414 3.7998 1.10059 7.7002 4.7002 9.2002l17 7.2002
c12.9004 5.5 20.7002 13.5 20.7002 21.5s-7.7998 16 -20.7998 21.5l-16.9004 7.2002c-6 2.59961 -5.7002 12.3994 0 14.7998l17 7.2002c12.9004 5.5 20.7002 13.5 20.7002 21.5s-7.7998 16 -20.7998 21.5l-16.9004 7.19922c-3.59961 1.5 -5.59961 5.40039 -4.7002 9.2002
c0.799805 3.7998 4.40039 6.60059 8.2002 6.2002c42.7002 -2.5 71.5 -24.7998 71.5 -44zM374.5 223c-14.7998 13.2002 -46.2002 13.2002 -61 0l-9.5 -8.5c-2.5 -2.2998 -7.90039 -4.7002 -13.7002 -1.59961c-4.39941 2.39941 -6.89941 7.39941 -6.09961 12.3994
c3.89941 25.2002 34.2002 42.1006 59.7998 42.1006s55.7998 -16.9004 59.7998 -42.1006c0.799805 -5 -1.7002 -10 -6.09961 -12.3994c-4.40039 -2.40039 -9.90039 -1.7002 -13.7002 1.59961zM136 239.5c0 17.7002 14.2998 32 32 32s32 -14.2998 32 -32s-14.2998 -32 -32 -32
s-32 14.2998 -32 32zM501.1 45.5c9.2002 -23.9004 -4.39941 -49.4004 -28.5 -55.7002l-83 -21.5c-5.39941 -1.39941 -10.8994 1.7998 -12.3994 7.10059l-22.9004 82.5996c-6.59961 24 8.7998 48.5996 34 52.5996c22 3.5 43.1006 -11.5996 49 -33l2.2998 -8.39941
l8.40039 2.2002c21.5996 5.59961 45.0996 -5.10059 53.0996 -25.9004zM334 11.7002c17.7002 -64 10.9004 -39.5 13.4004 -46.7998c-30.5 -13.4004 -64 -20.9004 -99.4004 -20.9004c-137 0 -248 111 -248 248s111 248 248 248s248 -111 247.9 -248
c0 -31.7998 -6.2002 -62.0996 -17.1006 -90c-6 1.5 -12.2002 2.7998 -18.5996 2.90039c-5.60059 9.69922 -13.6006 17.5 -22.6006 23.8994c6.7002 19.9004 10.4004 41.1006 10.4004 63.2002c0 110.3 -89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200
c30.7998 0 59.9004 7.2002 86 19.7002z" />
    <glyph glyph-name="laugh" unicode="&#xf599;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM389.4 50.5996c37.7998 37.8008 58.5996 88 58.5996 141.4s-20.7998 103.6 -58.5996 141.4c-37.8008 37.7998 -88 58.5996 -141.4 58.5996s-103.6 -20.7998 -141.4 -58.5996
c-37.7998 -37.8008 -58.5996 -88 -58.5996 -141.4s20.7998 -103.6 58.5996 -141.4c37.8008 -37.7998 88 -58.5996 141.4 -58.5996s103.6 20.7998 141.4 58.5996zM328 224c-17.7002 0 -32 14.2998 -32 32s14.2998 32 32 32s32 -14.2998 32 -32s-14.2998 -32 -32 -32zM168 224
c-17.7002 0 -32 14.2998 -32 32s14.2998 32 32 32s32 -14.2998 32 -32s-14.2998 -32 -32 -32zM362.4 160c8.19922 0 14.5 -7 13.5 -15c-7.5 -59.2002 -58.9004 -105 -121.101 -105h-13.5996c-62.2002 0 -113.601 45.7998 -121.101 105c-1 8 5.30078 15 13.5 15h228.801z" />
    <glyph glyph-name="laugh-beam" unicode="&#xf59a;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM389.4 50.5996c37.7998 37.8008 58.5996 88 58.5996 141.4s-20.7998 103.6 -58.5996 141.4c-37.8008 37.7998 -88 58.5996 -141.4 58.5996s-103.6 -20.7998 -141.4 -58.5996
c-37.7998 -37.8008 -58.5996 -88 -58.5996 -141.4s20.7998 -103.6 58.5996 -141.4c37.8008 -37.7998 88 -58.5996 141.4 -58.5996s103.6 20.7998 141.4 58.5996zM328 296c23.7998 0 52.7002 -29.2998 55.7998 -71.4004c0.700195 -8.5 -10.7998 -11.8994 -14.8994 -4.5
l-9.5 17c-7.7002 13.7002 -19.2002 21.6006 -31.5 21.6006c-12.3008 0 -23.8008 -7.90039 -31.5 -21.6006l-9.5 -17c-4.10059 -7.39941 -15.6006 -4.09961 -14.9004 4.5c3.2998 42.1006 32.2002 71.4004 56 71.4004zM127 220.1c-4.2002 -7.39941 -15.7002 -4 -15.0996 4.5
c3.2998 42.1006 32.1992 71.4004 56 71.4004c23.7998 0 52.6992 -29.2998 56 -71.4004c0.699219 -8.5 -10.8008 -11.8994 -14.9004 -4.5l-9.5 17c-7.7002 13.7002 -19.2002 21.6006 -31.5 21.6006s-23.7998 -7.90039 -31.5 -21.6006zM362.4 160c8.19922 0 14.5 -7 13.5 -15
c-7.5 -59.2002 -58.9004 -105 -121.101 -105h-13.5996c-62.2002 0 -113.601 45.7998 -121.101 105c-1 8 5.30078 15 13.5 15h228.801z" />
    <glyph glyph-name="laugh-squint" unicode="&#xf59b;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM389.4 50.5996c37.7998 37.8008 58.5996 88 58.5996 141.4s-20.7998 103.6 -58.5996 141.4c-37.8008 37.7998 -88 58.5996 -141.4 58.5996s-103.6 -20.7998 -141.4 -58.5996
c-37.7998 -37.8008 -58.5996 -88 -58.5996 -141.4s20.7998 -103.6 58.5996 -141.4c37.8008 -37.7998 88 -58.5996 141.4 -58.5996s103.6 20.7998 141.4 58.5996zM343.6 252l33.6006 -40.2998c8.59961 -10.4004 -3.90039 -24.7998 -15.4004 -18l-80 48
c-7.7998 4.7002 -7.7998 15.8994 0 20.5996l80 48c11.6006 6.7998 24 -7.7002 15.4004 -18zM134.2 193.7c-11.6006 -6.7998 -24.1006 7.59961 -15.4004 18l33.6006 40.2998l-33.6006 40.2998c-8.59961 10.2998 3.7998 24.9004 15.4004 18l80 -48
c7.7998 -4.7002 7.7998 -15.8994 0 -20.5996zM362.4 160c8.19922 0 14.5 -7 13.5 -15c-7.5 -59.2002 -58.9004 -105 -121.101 -105h-13.5996c-62.2002 0 -113.601 45.7998 -121.101 105c-1 8 5.30078 15 13.5 15h228.801z" />
    <glyph glyph-name="laugh-wink" unicode="&#xf59c;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM389.4 50.5996c37.7998 37.8008 58.5996 88 58.5996 141.4s-20.7998 103.6 -58.5996 141.4c-37.8008 37.7998 -88 58.5996 -141.4 58.5996s-103.6 -20.7998 -141.4 -58.5996
c-37.7998 -37.8008 -58.5996 -88 -58.5996 -141.4s20.7998 -103.6 58.5996 -141.4c37.8008 -37.7998 88 -58.5996 141.4 -58.5996s103.6 20.7998 141.4 58.5996zM328 284c25.7002 0 55.9004 -16.9004 59.7002 -42.0996c1.7998 -11.1006 -11.2998 -18.2002 -19.7998 -10.8008
l-9.5 8.5c-14.8008 13.2002 -46.2002 13.2002 -61 0l-9.5 -8.5c-8.30078 -7.39941 -21.5 -0.399414 -19.8008 10.8008c4 25.1992 34.2002 42.0996 59.9004 42.0996zM168 224c-17.7002 0 -32 14.2998 -32 32s14.2998 32 32 32s32 -14.2998 32 -32s-14.2998 -32 -32 -32z
M362.4 160c8.19922 0 14.5 -7 13.5 -15c-7.5 -59.2002 -58.9004 -105 -121.101 -105h-13.5996c-62.2002 0 -113.601 45.7998 -121.101 105c-1 8 5.30078 15 13.5 15h228.801z" />
    <glyph glyph-name="meh-blank" unicode="&#xf5a4;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM168 272c17.7002 0 32 -14.2998 32 -32s-14.2998 -32 -32 -32
s-32 14.2998 -32 32s14.2998 32 32 32zM328 272c17.7002 0 32 -14.2998 32 -32s-14.2998 -32 -32 -32s-32 14.2998 -32 32s14.2998 32 32 32z" />
    <glyph glyph-name="meh-rolling-eyes" unicode="&#xf5a5;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM336 296c39.7998 0 72 -32.2002 72 -72s-32.2002 -72 -72 -72
s-72 32.2002 -72 72s32.2002 72 72 72zM336 184c22.0996 0 40 17.9004 40 40c0 13.5996 -7.2998 25.0996 -17.7002 32.2998c1 -2.59961 1.7002 -5.39941 1.7002 -8.2998c0 -13.2998 -10.7002 -24 -24 -24s-24 10.7002 -24 24c0 3 0.700195 5.7002 1.7002 8.2998
c-10.4004 -7.2002 -17.7002 -18.7002 -17.7002 -32.2998c0 -22.0996 17.9004 -40 40 -40zM232 224c0 -39.7998 -32.2002 -72 -72 -72s-72 32.2002 -72 72s32.2002 72 72 72s72 -32.2002 72 -72zM120 224c0 -22.0996 17.9004 -40 40 -40s40 17.9004 40 40
c0 13.5996 -7.2998 25.0996 -17.7002 32.2998c1 -2.59961 1.7002 -5.39941 1.7002 -8.2998c0 -13.2998 -10.7002 -24 -24 -24s-24 10.7002 -24 24c0 3 0.700195 5.7002 1.7002 8.2998c-10.4004 -7.2002 -17.7002 -18.7002 -17.7002 -32.2998zM312 96
c13.2002 0 24 -10.7998 24 -24s-10.7998 -24 -24 -24h-128c-13.2002 0 -24 10.7998 -24 24s10.7998 24 24 24h128z" />
    <glyph glyph-name="sad-cry" unicode="&#xf5b3;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM392 53.5996c34.5996 35.9004 56 84.7002 56 138.4c0 110.3 -89.7002 200 -200 200s-200 -89.7002 -200 -200c0 -53.7002 21.4004 -102.4 56 -138.4v114.4
c0 13.2002 10.7998 24 24 24s24 -10.7998 24 -24v-151.4c28.5 -15.5996 61.2002 -24.5996 96 -24.5996s67.5 9 96 24.5996v151.4c0 13.2002 10.7998 24 24 24s24 -10.7998 24 -24v-114.4zM205.8 213.5c-5.7998 -3.2002 -11.2002 -0.700195 -13.7002 1.59961l-9.5 8.5
c-14.7998 13.2002 -46.1992 13.2002 -61 0l-9.5 -8.5c-3.7998 -3.39941 -9.2998 -4 -13.6992 -1.59961c-4.40039 2.40039 -6.90039 7.40039 -6.10059 12.4004c3.90039 25.1992 34.2002 42.0996 59.7998 42.0996c25.6006 0 55.8008 -16.9004 59.8008 -42.0996
c0.799805 -5 -1.7002 -10 -6.10059 -12.4004zM344 268c25.7002 0 55.9004 -16.9004 59.7998 -42.0996c0.799805 -5 -1.7002 -10 -6.09961 -12.4004c-5.7002 -3.09961 -11.2002 -0.599609 -13.7002 1.59961l-9.5 8.5c-14.7998 13.2002 -46.2002 13.2002 -61 0l-9.5 -8.5
c-3.7998 -3.39941 -9.2002 -4 -13.7002 -1.59961c-4.39941 2.40039 -6.89941 7.40039 -6.09961 12.4004c3.89941 25.1992 34.0996 42.0996 59.7998 42.0996zM248 176c30.9004 0 56 -28.7002 56 -64s-25.0996 -64 -56 -64s-56 28.7002 -56 64s25.0996 64 56 64z" />
    <glyph glyph-name="sad-tear" unicode="&#xf5b4;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM256 144c38.0996 0 74 -16.7998 98.5 -46.0996
c8.5 -10.2002 7.09961 -25.3008 -3.09961 -33.8008c-10.6006 -8.7998 -25.7002 -6.69922 -33.8008 3.10059c-15.2998 18.2998 -37.7998 28.7998 -61.5996 28.7998c-13.2002 0 -24 10.7998 -24 24s10.7998 24 24 24zM168 208c-17.7002 0 -32 14.2998 -32 32s14.2998 32 32 32
s32 -14.2998 32 -32s-14.2998 -32 -32 -32zM328 272c17.7002 0 32 -14.2998 32 -32s-14.2998 -32 -32 -32s-32 14.2998 -32 32s14.2998 32 32 32zM162.4 173.2c2.7998 3.7002 8.39941 3.7002 11.1992 0c11.4004 -15.2998 36.4004 -50.6006 36.4004 -68.1006
c0 -22.6992 -18.7998 -41.0996 -42 -41.0996s-42 18.4004 -42 41.0996c0 17.5 25 52.8008 36.4004 68.1006z" />
    <glyph glyph-name="smile-beam" unicode="&#xf5b8;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM332 135.4c8.5 10.1992 23.5996 11.5 33.7998 3.09961
c10.2002 -8.5 11.6006 -23.5996 3.10059 -33.7998c-30 -36 -74.1006 -56.6006 -120.9 -56.6006s-90.9004 20.6006 -120.9 56.6006c-8.39941 10.2002 -7.09961 25.2998 3.10059 33.7998c10.2002 8.40039 25.2998 7.09961 33.7998 -3.09961
c20.7998 -25.1006 51.5 -39.4004 84 -39.4004s63.2002 14.4004 84 39.4004zM136.5 237l-9.5 -17c-1.90039 -3.2002 -5.90039 -4.7998 -9.2998 -3.7002c-3.60059 1.10059 -6 4.60059 -5.7002 8.2998c3.2998 42.1006 32.2002 71.4004 56 71.4004s52.7002 -29.2998 56 -71.4004
c0.299805 -3.7998 -2.09961 -7.19922 -5.7002 -8.2998c-3.09961 -1 -7.2002 0 -9.2998 3.7002l-9.5 17c-7.7002 13.7002 -19.2002 21.5996 -31.5 21.5996s-23.7998 -7.89941 -31.5 -21.5996zM328 296c23.7998 0 52.7002 -29.2998 56 -71.4004
c0.299805 -3.7998 -2.09961 -7.19922 -5.7002 -8.2998c-3.09961 -1 -7.2002 0 -9.2998 3.7002l-9.5 17c-7.7002 13.7002 -19.2002 21.5996 -31.5 21.5996s-23.7998 -7.89941 -31.5 -21.5996l-9.5 -17c-1.90039 -3.2002 -5.7998 -4.7998 -9.2998 -3.7002
c-3.60059 1.10059 -6 4.60059 -5.7002 8.2998c3.2998 42.1006 32.2002 71.4004 56 71.4004z" />
    <glyph glyph-name="surprise" unicode="&#xf5c2;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM248 168c35.2998 0 64 -28.7002 64 -64s-28.7002 -64 -64 -64
s-64 28.7002 -64 64s28.7002 64 64 64zM200 240c0 -17.7002 -14.2998 -32 -32 -32s-32 14.2998 -32 32s14.2998 32 32 32s32 -14.2998 32 -32zM328 272c17.7002 0 32 -14.2998 32 -32s-14.2998 -32 -32 -32s-32 14.2998 -32 32s14.2998 32 32 32z" />
    <glyph glyph-name="tired" unicode="&#xf5c8;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -8c110.3 0 200 89.7002 200 200s-89.7002 200 -200 200s-200 -89.7002 -200 -200s89.7002 -200 200 -200zM377.1 295.8c3.80078 -4.39941 3.90039 -11 0.100586 -15.5
l-33.6006 -40.2998l33.6006 -40.2998c3.7998 -4.5 3.7002 -11 -0.100586 -15.5c-3.5 -4.10059 -9.89941 -5.7002 -15.2998 -2.5l-80 48c-3.59961 2.2002 -5.7998 6.09961 -5.7998 10.2998s2.2002 8.09961 5.7998 10.2998l80 48c5 2.90039 11.5 1.90039 15.2998 -2.5z
M220 240c0 -4.2002 -2.2002 -8.09961 -5.7998 -10.2998l-80 -48c-5.40039 -3.2002 -11.7998 -1.60059 -15.2998 2.5c-3.80078 4.5 -3.90039 11 -0.100586 15.5l33.6006 40.2998l-33.6006 40.2998c-3.7998 4.5 -3.7002 11 0.100586 15.5
c3.7998 4.40039 10.2998 5.5 15.2998 2.5l80 -48c3.59961 -2.2002 5.7998 -6.09961 5.7998 -10.2998zM248 176c45.4004 0 100.9 -38.2998 107.8 -93.2998c1.5 -11.9004 -7 -21.6006 -15.5 -17.9004c-22.7002 9.7002 -56.2998 15.2002 -92.2998 15.2002
s-69.5996 -5.5 -92.2998 -15.2002c-8.60059 -3.7002 -17 6.10059 -15.5 17.9004c6.89941 55 62.3994 93.2998 107.8 93.2998z" />
  </font>
</defs></svg>
assets/lib/font-awesome/webfonts/fa-solid-900.svg000064400003402717151327220410015607 0ustar00<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1">
<metadata>
Created by FontForge 20201107 at Tue Mar 16 10:15:04 2021
 By Robert Madole
Copyright (c) Font Awesome
</metadata>
<!-- Font Awesome Free 5.15.3 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) --><defs>
<font id="FontAwesome5Free-Solid" horiz-adv-x="512" >
  <font-face 
    font-family="Font Awesome 5 Free Solid"
    font-weight="900"
    font-stretch="normal"
    units-per-em="512"
    panose-1="2 0 5 3 0 0 0 0 0 0"
    ascent="448"
    descent="-64"
    bbox="-1.00195 -64.9795 640.104 448.576"
    underline-thickness="25"
    underline-position="-50"
    unicode-range="U+0020-F8FF"
  />
    <missing-glyph />
    <glyph glyph-name="faucet" unicode="&#xe005;" 
d="M352 192c88.3066 0 160 -71.6934 160 -160c0 -17.6611 -14.3389 -32 -32 -32h-64c-17.6611 0 -32 14.3389 -32 32s-14.3389 32 -32 32h-12.79c-20.5898 -37.7305 -64.21 -64 -115.21 -64s-94.6201 26.2695 -115.21 64h-92.79c-8.83105 0 -16 7.16895 -16 16v96
c0 8.83105 7.16895 16 16 16h118.61c15.71 13.4004 35.46 23 57.3896 28v47.5596l32 3.38086l32 -3.38086v-47.5596c21.9297 -4.92969 41.6797 -14.5596 57.3896 -28h38.6104zM81.5898 288.09c-9.41992 -1 -17.5898 6.81055 -17.5898 16.7998v30.2207
c0 9.98926 8.16992 17.7998 17.5898 16.8096l110.41 -11.6602v27.7402c0 8.83105 7.16895 16 16 16h32c8.83105 0 16 -7.16895 16 -16v-27.7402l110.41 11.6602c9.41992 0.990234 17.5898 -6.80957 17.5898 -16.8096v-30.2207
c0 -9.98926 -8.16992 -17.7998 -17.5898 -16.7998l-142.41 15z" />
    <glyph glyph-name="trailer" unicode="&#xe041;" horiz-adv-x="640" 
d="M624 128c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-337.61c-7.83008 54.21 -54 96 -110.39 96s-102.56 -41.79 -110.39 -96h-49.6104c-8.83105 0 -16 7.16895 -16 16v288c0 8.83105 7.16895 16 16 16h512c8.83105 0 16 -7.16895 16 -16v-240
h80zM96 204.32v107.68c0 4.41504 -3.58496 8 -8 8h-16c-4.41504 0 -8 -3.58496 -8 -8v-128.39c9.85938 8.0166 20.5459 14.9482 32 20.71zM192 222.86v89.1396c0 4.41504 -3.58496 8 -8 8h-16c-4.41504 0 -8 -3.58496 -8 -8v-89.1396
c5.30957 0.489258 10.5703 1.13965 16 1.13965s10.6904 -0.650391 16 -1.13965zM288 183.61v128.39c0 4.41504 -3.58496 8 -8 8h-16c-4.41504 0 -8 -3.58496 -8 -8v-107.68c11.4541 -5.76172 22.1406 -12.6934 32 -20.71zM384 128v184c0 4.41504 -3.58496 8 -8 8h-16
c-4.41504 0 -8 -3.58496 -8 -8v-184h32zM480 128v184c0 4.41504 -3.58496 8 -8 8h-16c-4.41504 0 -8 -3.58496 -8 -8v-184h32zM176 128c44.1533 0 80 -35.8467 80 -80s-35.8467 -80 -80 -80s-80 35.8467 -80 80s35.8467 80 80 80zM176 16c17.6611 0 32 14.3389 32 32
s-14.3389 32 -32 32s-32 -14.3389 -32 -32s14.3389 -32 32 -32z" />
    <glyph glyph-name="bacteria" unicode="&#xe059;" horiz-adv-x="640" 
d="M272.35 221.6c-2.19727 -0.946289 -4.63184 -1.47949 -7.17578 -1.47949h-0.0341797c-0.00292969 0 0.00195312 -0.0146484 -0.00195312 -0.0146484c-7.27051 0 -13.5322 4.35449 -16.3174 10.5947l-3.91992 8.84961
c-1.15039 -0.729492 -2.35059 -1.37988 -3.4707 -2.14941c-3.47168 -2.44629 -6.75293 -5.02832 -9.93945 -7.82031c-4.16406 -3.56152 -8.00098 -7.31543 -11.6504 -11.4004c-2.79688 -3.0166 -5.3916 -6.11719 -7.87012 -9.41016
c-0.700195 -0.969727 -1.22949 -2.0498 -1.89941 -3.0498l8.7998 -4.10938c6.0166 -2.84082 10.1523 -8.94531 10.1523 -16.0361c0 -9.79199 -7.9502 -17.7432 -17.7432 -17.7432c-2.70312 0 -5.26562 0.606445 -7.55957 1.68848l-9 4.2207
c-1.61035 -5.00293 -2.92773 -10.2646 -3.87012 -15.5303c-1.9248 -11.2178 -6.14648 -21.8359 -12.0801 -31.0498l9.14062 -9.37012c3.09082 -3.19824 4.99121 -7.55957 4.99121 -12.3545c0 -9.80859 -7.96387 -17.7715 -17.7725 -17.7715
c-5.01465 0 -9.54688 2.08105 -12.7793 5.42578l-8.58984 8.7998c-13.0752 -8.66602 -28.8223 -13.7949 -45.6494 -13.8799c-1.03027 0 -2.10059 0.259766 -3.10059 0.259766l-2.87012 -11c-2.08008 -7.52637 -8.97949 -13.0732 -17.165 -13.0732
c-9.8291 0 -17.8096 7.98047 -17.8096 17.8105c0 1.44043 0.171875 2.84082 0.495117 4.18359l2.87988 11.0596c-15.5566 7.7666 -28.2236 20.1123 -36.3896 35.4297l-11.2705 -3.33008c-1.60547 -0.477539 -3.30273 -0.741211 -5.06348 -0.741211
c-9.79004 0 -17.7383 7.94824 -17.7383 17.7383c0 8.03027 5.34668 14.8213 12.6719 17.0029l11.5801 3.43066c-0.142578 1.98535 -0.214844 3.83594 -0.214844 5.85742c0 4.47168 0.353516 8.86133 1.03516 13.1426c1.72949 10.3799 4.72949 20.2197 7.51953 30.2197
l-10.3496 3.54004c-6.94824 2.40234 -11.9346 8.99512 -11.9346 16.7549c0 9.78711 7.94629 17.7334 17.7334 17.7334c2.02734 0 3.97559 -0.34082 5.79102 -0.96875l10.4795 -3.58984c6.40332 15.3193 14.1484 30.0723 23 43.9102l-8.87988 6.46973
c-4.4375 3.20996 -7.30176 8.43652 -7.30176 14.3262c0 3.90625 1.27148 7.51855 3.42188 10.4443c3.24805 4.4248 8.49316 7.27441 14.3975 7.27441c3.9209 0 7.54688 -1.26758 10.4922 -3.41406l8.82031 -6.4209c10.6797 12.8564 22.2119 24.5146 34.9502 35.3301
l-6.4502 8.61035c-2.22168 2.95703 -3.5625 6.6377 -3.5625 10.6182c0 5.82617 2.82227 10.998 7.17285 14.2217c2.97461 2.20312 6.66211 3.53027 10.6445 3.53027c5.83789 0 11.0273 -2.80078 14.2949 -7.12988l6.32031 -8.43066
c13.8359 9.05371 28.5869 16.9834 43.9404 23.5703l-3.49023 9.7998c-0.658203 1.8584 -1.02734 3.86816 -1.02734 5.95117c0 9.8252 7.97656 17.8018 17.8018 17.8018c7.74316 0 14.3379 -4.9541 16.7852 -11.8623l3.37988 -9.45996
c10.9004 3.16992 21.7305 6.38965 33.1104 8.21973c4.51367 0.758789 9.02637 1.15234 13.7539 1.15234c1 0 1.99512 -0.0175781 2.98633 -0.0527344l2.81934 10.7803c1.98633 7.66504 8.95117 13.3457 17.2334 13.3457c9.82617 0 17.8047 -7.97754 17.8047 -17.8037
c0 -1.54395 -0.197266 -3.04297 -0.567383 -4.47168l-2.83984 -10.8506c15.5527 -7.83105 28.2119 -20.2178 36.3799 -35.5693l11.3398 3.35938c1.6084 0.480469 3.30957 0.745117 5.07324 0.745117c9.79199 0 17.7412 -7.9502 17.7412 -17.7412
c0 -8.02832 -5.34375 -14.8184 -12.665 -17.0039l-11.8496 -3.50977c0.120117 -1.82227 0.125977 -3.67969 0.125977 -5.53223c0 -15.5859 -4.2998 -30.1758 -11.7764 -42.6475l9.7207 -8.76074c3.56934 -3.25 5.79688 -7.92969 5.79688 -13.1328
c0 -9.80469 -7.95996 -17.7646 -17.7637 -17.7646c-4.60156 0 -8.79688 1.75391 -11.9531 4.62793l-10 9c-9.85547 -6.88477 -21.4219 -11.7422 -33.75 -13.8398c-4.16895 -0.80957 -8.35547 -1.85547 -12.3604 -3.08008l4 -9.08008
c0.96875 -2.18848 1.5293 -4.61426 1.5293 -7.16016c0 -7.26172 -4.37988 -13.5078 -10.6396 -16.2402zM128 192c17.6611 0 32 14.3389 32 32s-14.3389 32 -32 32s-32 -14.3389 -32 -32s14.3389 -32 32 -32zM208 288c8.83105 0 16 7.16895 16 16s-7.16895 16 -16 16
s-16 -7.16895 -16 -16s7.16895 -16 16 -16zM639.26 242.7c0.470703 -1.59277 0.724609 -3.27344 0.724609 -5.01758c0 -8.04492 -5.37891 -14.8438 -12.7344 -16.9922l-11.5801 -3.43066c0.143555 -1.99512 0.216797 -3.85547 0.216797 -5.88672
c0 -4.47852 -0.354492 -8.875 -1.03711 -13.1631c-1.72949 -10.3701 -4.72949 -20.21 -7.51953 -30.21l10.3398 -3.53027c6.94824 -2.40234 11.9346 -8.99414 11.9346 -16.7549c0 -9.78711 -7.94629 -17.7334 -17.7344 -17.7334
c-2.02637 0 -3.97559 0.34082 -5.79004 0.96875l-10.4805 3.58984c-6.40527 -15.3213 -14.1494 -30.0781 -23 -43.9199l8.88086 -6.45996c4.6377 -3.20605 7.64746 -8.54297 7.64746 -14.6025c0 -9.80176 -7.95801 -17.7598 -17.7598 -17.7598
c-4.10156 0 -7.87988 1.39355 -10.8877 3.73242l-8.82031 6.41992c-10.6826 -12.8574 -22.2148 -24.5176 -34.9502 -35.3398l6.4502 -8.61035c2.23926 -2.96094 3.5918 -6.6543 3.5918 -10.6494c0 -5.84082 -2.83984 -11.0225 -7.21191 -14.2402
c-2.97363 -2.20508 -6.66016 -3.53418 -10.6426 -3.53418c-5.83594 0 -11.0234 2.80273 -14.2871 7.13379l-6.32031 8.42969c-13.8379 -9.05273 -28.5889 -16.9854 -43.9404 -23.5801l3.49023 -9.79004c0.658203 -1.85742 1.02734 -3.86816 1.02734 -5.9502
c0 -9.8252 -7.97656 -17.8018 -17.8018 -17.8018c-7.74316 0 -14.3379 4.9541 -16.7852 11.8623l-3.37988 9.45996c-10.8604 -3.16992 -21.7305 -6.34961 -33.1006 -8.24023c-4.51465 -0.757812 -9.02832 -1.15234 -13.7568 -1.15234
c-0.999023 0 -1.99316 0.0175781 -2.9834 0.0527344l-2.81934 -10.7803c-1.98633 -7.66504 -8.95117 -13.3457 -17.2334 -13.3457c-9.82617 0 -17.8037 7.97754 -17.8037 17.8047c0 1.54395 0.196289 3.04199 0.566406 4.47168l2.84082 10.8496
c-15.5664 7.8291 -28.2363 20.2207 -36.4102 35.5801l-11.3398 -3.36035c-1.61035 -0.480469 -3.31348 -0.746094 -5.0791 -0.746094c-9.79199 0 -17.7422 7.9502 -17.7422 17.7432c0 8.02734 5.3418 14.8164 12.6611 17.0029l11.8594 3.51074
c-0.119141 1.82227 -0.125 3.67871 -0.125 5.53125c0 15.5869 4.29883 30.1768 11.7754 42.6484l-9.71973 8.75c-3.68848 3.25684 -6.00293 8.0166 -6.00293 13.3193c0 9.80762 7.96289 17.7705 17.7705 17.7705c4.69824 0 8.97363 -1.82812 12.1523 -4.80957l10 -9
c9.85645 6.9082 21.4297 11.7861 33.7695 13.8994c4.1709 0.804688 8.35742 1.85156 12.3604 3.08008l-4 9.08008c-0.962891 2.18262 -1.51953 4.60156 -1.51953 7.13867c0 7.25391 4.37012 13.4951 10.6191 16.2314c2.19824 0.954102 4.63477 1.49414 7.18066 1.5
c0.00390625 0 -0.00195312 0.0146484 0.00195312 0.0146484c7.27051 0 13.5322 -4.35449 16.3174 -10.5947l3.91992 -8.84961c1.15039 0.729492 2.35059 1.37988 3.4707 2.14941c3.49023 2.4502 6.79199 5.03613 10 7.83008c4.13867 3.53516 7.94922 7.2666 11.5693 11.3301
c2.82617 3.03223 5.44336 6.15332 7.94043 9.46973c0.69043 0.970703 1.21973 2.0498 1.88965 3.0498l-8.7998 4.11035c-6.0166 2.84082 -10.1523 8.94531 -10.1523 16.0352c0 9.79297 7.9502 17.7432 17.7432 17.7432c2.70312 0 5.26562 -0.605469 7.55957 -1.68848
l9 -4.21973c1.60938 4.99902 2.92676 10.2578 3.87012 15.5195c1.91992 11.2236 6.14258 21.8457 12.0801 31.0605l-9.14062 9.37012c-3.09082 3.19824 -4.99121 7.55957 -4.99121 12.3535c0 9.80957 7.96387 17.7725 17.7725 17.7725
c5.01465 0 9.54688 -2.08105 12.7793 -5.42578l8.58984 -8.81055c13.0723 8.67285 28.8203 13.8066 45.6494 13.8906c1.03027 0 2.10059 -0.260742 3.10059 -0.260742l2.87012 11c2.10059 7.49609 8.98438 13.0137 17.1475 13.0137
c9.83008 0 17.8105 -7.98047 17.8105 -17.8096c0 -1.41602 -0.166016 -2.79297 -0.478516 -4.11426l-2.87988 -11.0596c15.5527 -7.77246 28.2188 -20.1162 36.3896 -35.4297l11.2705 3.33008c1.59766 0.478516 3.28906 0.739258 5.04199 0.739258h0.0380859
c0.00585938 0 0.0078125 -0.000976562 0.0136719 -0.000976562c8.0459 0 14.8506 -5.35254 17.0459 -12.6885zM416 32c17.6611 0 32 14.3389 32 32s-14.3389 32 -32 32s-32 -14.3389 -32 -32s14.3389 -32 32 -32z" />
    <glyph glyph-name="bacterium" unicode="&#xe05a;" 
d="M511 345.07c0.634766 -2.13379 0.976562 -4.3877 0.976562 -6.72656c0 -10.7275 -7.1709 -19.7949 -16.9766 -22.6641l-15.79 -4.67969c0.15625 -2.4082 0.163086 -4.86133 0.163086 -7.30859c0 -20.8174 -5.75195 -40.3027 -15.7529 -56.9512l12.9395 -11.6699
c5.1709 -4.34766 8.44043 -10.8584 8.44043 -18.1357c0 -13.0742 -10.6152 -23.6895 -23.6895 -23.6895c-6.47754 0 -12.3525 2.60547 -16.6309 6.8252l-13.3301 12c-13.1318 -9.21387 -28.5537 -15.7207 -45 -18.54c-5.5625 -1.07129 -11.1484 -2.46484 -16.4893 -4.10059
l5.35938 -12.1094c1.2793 -2.91602 2.0127 -6.17285 2.0127 -9.55859c0 -13.1035 -10.6377 -23.7412 -23.7412 -23.7412c-9.7168 0 -18.0791 5.85156 -21.751 14.2197l-5.23047 11.7998c-1.5293 -0.980469 -3.12988 -1.87012 -4.62988 -2.87012
c-4.61719 -3.25684 -8.98438 -6.69043 -13.2295 -10.4004c-5.58008 -4.76562 -10.7148 -9.79785 -15.5908 -15.2793c-3.71875 -4.00195 -7.16699 -8.11914 -10.46 -12.4902c-0.929688 -1.29004 -1.62988 -2.74023 -2.51953 -4.05957l11.7197 -5.49023
c8.20801 -3.71484 13.8818 -11.9531 13.8818 -21.542c0 -13.0576 -10.6016 -23.6592 -23.6602 -23.6592c-3.73535 0 -7.26855 0.867188 -10.4111 2.41113l-12 5.63965c-2.14844 -6.6709 -3.90527 -13.6875 -5.16016 -20.71
c-2.5625 -14.959 -8.19336 -29.1182 -16.1104 -41.3994l12.1904 -12.5c3.92383 -4.22949 6.32129 -9.90332 6.32129 -16.1221c0 -13.0801 -10.6201 -23.7002 -23.7002 -23.7002c-6.5127 0 -12.416 2.63379 -16.7012 6.8916l-11.4502 11.7402
c-17.4336 -11.5586 -38.4326 -18.4014 -60.8701 -18.5195c-1.36035 0 -2.75977 0.299805 -4.12988 0.349609l-3.80957 -14.6299c-2.67383 -10.1768 -11.9395 -17.7002 -22.9502 -17.7002h-0.0498047c-2.07324 0.00292969 -4.07715 0.264648 -6 0.75
c-10.1992 2.62988 -17.751 11.8857 -17.751 22.9014c0 2.04688 0.260742 4.03418 0.750977 5.92871l3.84961 14.75c-20.7412 10.3623 -37.6318 26.8203 -48.5303 47.2402l-15 -4.44043c-2.14062 -0.638672 -4.40527 -0.989258 -6.75293 -0.989258
c-13.0479 0 -23.6406 10.5928 -23.6406 23.6406c0 10.6992 7.12402 19.749 16.8838 22.6592l15.4404 4.55957c-0.199219 2.7207 -0.300781 5.25781 -0.300781 8.0293c0 5.89355 0.458008 11.6826 1.34082 17.3311c2.37012 13.6738 5.52832 27.3877 9.2998 40.5293
l-13 4.48047c-9.47656 3.08398 -16.3213 11.9814 -16.3213 22.4805c0 13.0527 10.5967 23.6504 23.6494 23.6504c2.86035 0 5.60254 -0.508789 8.1416 -1.44141l12.9297 -4.42969c8.61523 20.5029 19.0254 40.2393 30.9199 58.75l-11.0898 8.06055
c-6.20508 4.27051 -10.2344 11.3994 -10.2344 19.4951c0 13.0693 10.6104 23.6797 23.6797 23.6797c5.48535 0 10.5381 -1.86914 14.5547 -5.00488l11 -8c14.2725 17.249 29.6816 32.9014 46.7002 47.4395l-8 10.6299c-2.9541 3.9375 -4.7373 8.83691 -4.7373 14.1338
c0 7.7666 3.76465 14.6611 9.56738 18.9561c3.96484 2.93848 8.87988 4.70801 14.1885 4.70801c7.78125 0 14.6973 -3.73438 19.0518 -9.50781l8 -10.6299c18.4736 12.2129 38.1689 22.917 58.6895 31.8301l-4.2998 12.0498
c-0.799805 2.37695 -1.24805 4.93555 -1.24805 7.58105c0 13.1025 10.6377 23.7402 23.7402 23.7402c10.1953 0 18.8975 -6.44043 22.2578 -15.4707l4.2998 -12c14.3408 4.27246 29.3477 7.81055 44.3301 10.4102c6.0459 1.01172 12.0889 1.53711 18.4199 1.53711
c1.30859 0 2.6123 -0.0224609 3.91016 -0.0673828l3.75977 14.3701c2.64941 10.2295 11.9443 17.8125 22.998 17.8125c13.1123 0 23.7588 -10.6465 23.7588 -23.7588c0 -2.05957 -0.262695 -4.05762 -0.756836 -5.96387l-3.79004 -14.4697
c20.7402 -10.4336 37.6182 -26.9492 48.5 -47.4209l15.1201 4.48047c2.14844 0.639648 4.41797 0.985352 6.77246 0.985352c10.7344 0 19.8164 -7.13379 22.7578 -16.915zM160 80c26.4922 0 48 21.5078 48 48s-21.5078 48 -48 48s-48 -21.5078 -48 -48s21.5078 -48 48 -48z
M240 216c13.2461 0 24 10.7539 24 24s-10.7539 24 -24 24s-24 -10.7539 -24 -24s10.7539 -24 24 -24z" />
    <glyph glyph-name="box-tissue" unicode="&#xe05b;" 
d="M383.88 160.18h-256l-64 288h141.4c30.9912 -0.00195312 57.3018 -20.1162 66.5996 -48c9.29492 -27.8818 35.6016 -47.9961 66.5898 -48h109.41zM-0.120117 -31.8203v64h512v-64c0 -17.6611 -14.3389 -32 -32 -32h-448c-17.6611 0 -32 14.3389 -32 32zM479.88 224.18
c17.6562 -0.00488281 31.9902 -14.3418 31.9902 -32v-128h-512v128c0 17.6611 14.3389 32 32 32h49l14.2197 -64h-15.21c-8.83008 0 -16 -7.16895 -16 -16c0 -8.83008 7.16992 -16 16 -16h352c8.83105 0 16 7.16992 16 16c0 8.83105 -7.16895 16 -16 16h-14.2695l21.3301 64
h40.9395z" />
    <glyph glyph-name="hand-holding-medical" unicode="&#xe05c;" horiz-adv-x="576" 
d="M159.88 272.18c-8.83008 0 -16 7.16992 -16 16v64c0 8.83105 7.16992 16 16 16h64v64c0 8.83105 7.16992 16 16 16h64c8.83105 0 16 -7.16895 16 -16v-64h64c8.83105 0 16 -7.16895 16 -16v-64c0 -8.83008 -7.16895 -16 -16 -16h-64v-64c0 -8.83008 -7.16895 -16 -16 -16
h-64c-8.83008 0 -16 7.16992 -16 16v64h-64zM568.07 111.87c4.87109 -6.62695 7.80469 -14.8232 7.80469 -23.6709c0 -13.1982 -6.40527 -24.9121 -16.2754 -32.1992l-135.029 -99.5703c-17.2783 -12.6621 -38.6699 -20.2148 -61.7002 -20.2695h-347
c-8.80273 0.0595703 -15.9404 7.19727 -16 16v96c0.0595703 8.80273 7.19727 15.9395 16 16h55.3604l46.5 37.7402c20.2246 16.3867 46.0615 26.25 74.0947 26.25h0.0244141h160c17.6943 0 32.0654 -14.3359 32.0654 -32.0303
c0 -1.82324 -0.152344 -3.61035 -0.445312 -5.35059c-2.62012 -15.7393 -17.3701 -26.6094 -33.3701 -26.6094h-78.2393c-8.83105 0 -16 -7.16992 -16 -16c0 -8.83105 7.16895 -16 16 -16h120.609l119.67 88.1797c6.63281 4.91016 14.8516 7.87012 23.7295 7.87012
c13.2129 0 24.9355 -6.43555 32.2012 -16.3398z" />
    <glyph glyph-name="hand-sparkles" unicode="&#xe05d;" horiz-adv-x="640" 
d="M106.66 277.36l-20.7402 -49.6201c-1.08691 -2.19531 -3.34277 -3.70703 -5.95605 -3.70703s-4.87695 1.51172 -5.96387 3.70703l-20.6602 49.6602h-0.0703125l-49.5898 20.5996c-2.10938 1.20508 -3.55469 3.42969 -3.67969 6v0
c0.124023 2.57617 1.5791 4.80371 3.7002 6l49.6299 20.6904h0.0498047l20.7002 49.6299c1.0918 2.18848 3.3457 3.69434 5.95605 3.69434s4.87207 -1.50586 5.96387 -3.69434l20.6602 -49.6406h0.0703125l49.5693 -20.6699c2.11328 -1.2002 3.56055 -3.42676 3.68066 -6v0
c-0.125977 -2.57031 -1.57129 -4.79492 -3.68066 -6l-49.5498 -20.6494h-0.0898438zM471.38 -19.4102l37.4902 -15.6299l0.0703125 -0.169922c-7.59082 -17.0596 -24 -28.79 -43.2402 -28.79h-197.61c-15.9482 0.0273438 -30.0625 7.79492 -38.79 19.79l-125.6 172.61
c-4.80469 6.60156 -7.68066 14.7979 -7.68066 23.5801c0 22.085 17.9297 40.0156 40.0146 40.0156c13.3027 0 25.0986 -6.50586 32.376 -16.5059l23.5898 -32.4902v241c0 17.6611 14.3389 32 32 32s32 -14.3389 32 -32v-152c0 -4.41504 3.58496 -8 8 -8h16
c4.41504 0 8 3.58496 8 8v184c0 17.6611 14.3389 32 32 32s32 -14.3389 32 -32v-184c0 -4.41504 3.58496 -8 8 -8h16c4.41504 0 8 3.58496 8 8v152c0 17.6611 14.3389 32 32 32s32 -14.3389 32 -32v-152c0 -4.41504 3.58496 -8 8 -8h16c4.41504 0 8 3.58496 8 8v72
c0 17.6611 14.3389 32 32 32s32 -14.3389 32 -32v-176.03c-0.0195312 -1.30957 -0.269531 -2.66992 -0.269531 -4c-7.77051 -3.70996 -14.5 -9.59961 -18.3506 -17.3398l-0.469727 -0.950195l-0.410156 -1l-15.6299 -37.4795l-37.4902 -15.6299l-1 -0.430664l-1 -0.489258
c-12.6719 -6.35254 -21.3789 -19.4189 -21.3789 -34.5479s8.70703 -28.2402 21.3789 -34.5928l1 -0.5zM349.79 108.48c1.31543 0.655273 2.21973 2.00879 2.21973 3.57715s-0.904297 2.92676 -2.21973 3.58203l-29.79 12.4199l-12.4297 29.7803
c-0.657227 1.30957 -2.00879 2.20996 -3.57324 2.20996c-1.56348 0 -2.91992 -0.900391 -3.57715 -2.20996l-12.4199 -29.7803l-29.79 -12.4199c-1.31543 -0.655273 -2.21973 -2.00879 -2.21973 -3.57715s0.904297 -2.92676 2.21973 -3.58203l29.79 -12.4102
l12.4297 -29.7803c0.657227 -1.30957 2.00879 -2.20996 3.57324 -2.20996c1.56348 0 2.91992 0.900391 3.57715 2.20996l12.4199 29.7803zM640 16.0898l-0.0703125 -0.0703125v0c-0.135742 -2.55078 -1.58008 -4.75684 -3.67969 -5.94922l-49.5498 -20.6602h-0.0898438v0
l-20.6904 -49.6201c-1.08691 -2.19531 -3.34277 -3.70703 -5.95605 -3.70703s-4.87695 1.51172 -5.96387 3.70703l-20.6602 49.5898h-0.0703125l-49.5693 20.6699c-2.10059 1.19238 -3.54395 3.39844 -3.68066 5.9502v0c0.118164 2.57324 1.56641 4.80078 3.68066 6
l49.6299 20.7402h0.0498047l20.7002 49.6299c1.0918 2.18848 3.3457 3.69434 5.95605 3.69434s4.87207 -1.50586 5.96387 -3.69434l20.6797 -49.6104h0.0703125l49.5703 -20.6699c2.11328 -1.19922 3.5625 -3.42676 3.67969 -6z" />
    <glyph glyph-name="hands-wash" unicode="&#xe05e;" horiz-adv-x="576" 
d="M496 224c-26.4922 0 -48 21.5078 -48 48s21.5078 48 48 48s48 -21.5078 48 -48s-21.5078 -48 -48 -48zM311.47 269.55l-16.0801 -4.96973l20.9004 66.1699c3.5 11.0703 14.1797 18.8604 25.71 17.5098c12.0508 -1.27246 21.4727 -11.4824 21.4727 -23.8682
c0 -2.53418 -0.393555 -4.97754 -1.12305 -7.27148l-15.3496 -48.6104c-5.91699 2.19336 -12.3369 3.43457 -19 3.49023c-0.0107422 0 -0.0185547 -0.0107422 -0.0302734 -0.0107422c-5.7373 0 -11.2773 -0.853516 -16.5 -2.43945zM93.6504 61.6699
c-36.4326 21.1162 -60.9873 60.2432 -61.6504 105.19v112.729c0.179688 13.3203 11.6699 23.9102 24.9004 23.8604c13.1807 -0.0771484 23.8604 -10.7988 23.8604 -23.9971c0 -0.0507812 0 -0.102539 -0.000976562 -0.15332l2.06055 -50.0498l60 189.85
c3.5 11.0703 14.1797 18.9004 25.71 17.46c12.0371 -1.28613 21.4443 -11.4883 21.4443 -23.8652c0 -2.52441 -0.390625 -4.95801 -1.11426 -7.24414l-38.5605 -122c-0.240234 -0.760742 -0.373047 -1.57129 -0.373047 -2.41016
c0 -4.41699 3.58496 -8.00195 8.00195 -8.00195c3.57617 0 6.60742 2.35156 7.63086 5.5918l47.9307 151.71c3.50977 11.0605 14.1797 18.8506 25.71 17.5098c12.0371 -1.28613 21.4443 -11.4883 21.4443 -23.8652c0 -2.52441 -0.390625 -4.95801 -1.11426 -7.24414
l-43.3701 -137.79c-0.241211 -0.762695 -0.375 -1.57422 -0.375 -2.41602c0 -4.41699 3.58594 -8.00293 8.00293 -8.00293c3.57617 0 6.60645 2.35059 7.63184 5.58887l33.4502 106.42c3.5 11.0703 14.1895 18.8604 25.7197 17.5195
c12.0371 -1.28613 21.4443 -11.4883 21.4443 -23.8652c0 -2.52441 -0.390625 -4.95801 -1.11426 -7.24414l-34.1602 -108.12l-73.7002 -22.7598c-62.1299 -20.5283 -107.005 -79.04 -107.06 -148v-25.6904c-0.80957 -0.169922 -1.5498 -0.519531 -2.34961 -0.709961z
M519.1 112c11.6104 0 22.25 -7.83984 24.4404 -19.2402c0.3125 -1.54395 0.477539 -3.12402 0.477539 -4.75977c0 -13.2461 -10.7549 -24 -24 -24h-0.0175781h-160c-4.41504 0 -8 -3.58496 -8 -8s3.58496 -8 8 -8h127.1c11.6104 0 22.25 -7.83984 24.4404 -19.2402
c0.3125 -1.54395 0.477539 -3.12402 0.477539 -4.75977c0 -13.2461 -10.7549 -24 -24 -24h-0.0175781h-128c-4.41504 0 -8 -3.58496 -8 -8s3.58496 -8 8 -8h95.0996c11.6104 0 22.25 -7.83984 24.4404 -19.2402c0.3125 -1.54395 0.477539 -3.12402 0.477539 -4.75977
c0 -13.2461 -10.7549 -24 -24 -24h-0.0175781h-208c-22.6738 0.0859375 -43.9951 6.60645 -62 17.7197c3.8623 9.36328 5.9668 19.6699 5.9668 30.4199c0 38.6191 -27.499 70.8652 -63.9668 78.21v25.6504c0 54.8691 35.7324 101.431 85.1904 117.69l107.72 33.25
c2.24121 0.692383 4.62207 1.0752 7.08984 1.0752c13.252 0 24.0107 -10.7588 24.0107 -24.0107c0 -10.7842 -7.125 -19.917 -16.9209 -22.9453l-47.0898 -17.0596h199.1c11.6104 0 22.25 -7.83984 24.4404 -19.2402c0.3125 -1.54395 0.477539 -3.12402 0.477539 -4.75977
c0 -13.2461 -10.7549 -24 -24 -24h-0.0175781h-128c-4.41504 0 -8 -3.58496 -8 -8s3.58496 -8 8 -8h159.1zM416 384c-17.6611 0 -32 14.3389 -32 32s14.3389 32 32 32s32 -14.3389 32 -32s-14.3389 -32 -32 -32zM112 32c26.4922 0 48 -21.5078 48 -48s-21.5078 -48 -48 -48
s-48 21.5078 -48 48s21.5078 48 48 48z" />
    <glyph glyph-name="handshake-alt-slash" unicode="&#xe05f;" horiz-adv-x="640" 
d="M358.59 252.4l26.1104 23.8896c3.19727 2.92676 5.19238 7.13086 5.19238 11.8037c0 8.83203 -7.1709 16.0029 -16.0039 16.0029c-4.16016 0 -7.95117 -1.59082 -10.7988 -4.19629l-27 -24.7002l-32.6895 -29.9199l330.43 -255.38
c3.76562 -2.92871 6.1709 -7.50781 6.1709 -12.6426c0 -3.69434 -1.25488 -7.09863 -3.36133 -9.80762l-19.6396 -25.2705c-2.92871 -3.76855 -7.50879 -6.17578 -12.6465 -6.17578c-3.69727 0 -7.10254 1.25684 -9.81348 3.36621l-588.35 454.72
c-3.76562 2.92871 -6.17188 7.50781 -6.17188 12.6426c0 3.69434 1.25488 7.09766 3.36133 9.80762l19.6201 25.2695c2.92773 3.77148 7.51074 6.18164 12.6504 6.18164c3.69922 0 7.1084 -1.25879 9.81934 -3.37109l116.891 -90.3301l20.3398 20.2998
c5.78027 5.7998 13.7764 9.39258 22.5996 9.41016h83.79l-75.5996 -69.2402l25.6895 -19.8496l88.1201 80.6797c5.69238 5.21777 13.2881 8.40723 21.6104 8.41016h85.8896c8.82812 -0.0146484 16.8271 -3.60742 22.6104 -9.41016l54.5898 -54.5898h112
c8.7998 0 15.9502 -7.12109 16 -15.9102v-191.8c-0.0273438 -8.81836 -7.18164 -15.9727 -16 -16h-97.5898c-2.7002 15.1729 -10.7646 28.5215 -22.21 37.9102zM16 320h7.55957l382.44 -295.59l-8.7998 -10.8203c-6.81543 -8.38672 -17.2246 -13.7119 -28.8633 -13.7119
c-8.87793 0 -17.0322 3.12012 -23.4268 8.32227l-17.9102 15.5l-0.200195 -0.200195c-11.7383 -14.4346 -29.6592 -23.5977 -49.6963 -23.5977c-15.2695 0 -29.2969 5.35938 -40.3037 14.2979l-90.5 81.8896h-130.3c-8.83105 0 -16 7.16992 -16 16v191.91
c0.0273438 8.81836 7.18164 15.9727 16 16z" />
    <glyph glyph-name="handshake-slash" unicode="&#xe060;" horiz-adv-x="640" 
d="M0 319.79h23.8301l72.1699 -55.79v-168c0 -17.6611 -14.3389 -32 -32 -32h-64v255.79zM48 127.9c-8.83105 0 -16 -7.16992 -16 -16c0 -8.83105 7.16895 -16 16 -16s16 7.16895 16 16c0 8.83008 -7.16895 16 -16 16zM128 96.0898v143.19l278 -214.87l-8.7998 -10.8203
c-6.81543 -8.38672 -17.2246 -13.7119 -28.8633 -13.7119c-8.87793 0 -17.0322 3.12012 -23.4268 8.32227l-17.9102 15.5l-0.200195 -0.200195c-11.7383 -14.4346 -29.6592 -23.5977 -49.6963 -23.5977c-15.2695 0 -29.2969 5.35938 -40.3037 14.2979l-90.5 81.8896
h-18.2998zM544 319.79h96v-255.89h-64c-17.6611 0 -32 14.3379 -32 32v223.89zM592 95.9004c8.83105 0 16 7.16895 16 16c0 8.83008 -7.16895 16 -16 16s-16 -7.16992 -16 -16c0 -8.83105 7.16895 -16 16 -16zM303.33 245.33l330.5 -255.43
c3.76953 -2.92871 6.17676 -7.50977 6.17676 -12.6475c0 -3.69238 -1.25293 -7.09375 -3.35645 -9.80273l-19.6504 -25.2705c-2.92773 -3.77051 -7.51074 -6.18066 -12.6504 -6.18066c-3.69922 0 -7.1084 1.25879 -9.81934 3.37109l-588.34 454.72
c-3.76562 2.92871 -6.17188 7.50781 -6.17188 12.6426c0 3.69434 1.25488 7.09766 3.36133 9.80762l19.6201 25.2695c2.92773 3.77148 7.51074 6.18164 12.6504 6.18164c3.69922 0 7.1084 -1.25879 9.81934 -3.37109l116.891 -90.3398l20.3398 20.3096
c5.78027 5.7998 13.7764 9.39258 22.5996 9.41016h83.79l-75.5996 -69.2402l25.6396 -19.8096l88.0703 80.6396c5.68457 5.21973 13.2764 8.41016 21.5947 8.41016h0.00488281h85.9004c0.0117188 0 0.0263672 0.00488281 0.0380859 0.00488281
c8.82031 0 16.8047 -3.60254 22.5615 -9.41504l54.6104 -54.5898v-193.5c-2.45605 2.78125 -5.0625 5.31934 -7.91016 7.7002l-145.59 118.2l26.0898 23.8896c3.05762 2.91504 4.95215 7.02441 4.95215 11.5781c0 8.83105 -7.16895 16 -16 16
c-4.03613 0 -7.72559 -1.49805 -10.542 -3.96777z" />
    <glyph glyph-name="head-side-cough" unicode="&#xe061;" horiz-adv-x="640" 
d="M616 144c-13.2461 0 -24 10.7539 -24 24s10.7539 24 24 24s24 -10.7539 24 -24s-10.7539 -24 -24 -24zM552 32c13.2461 0 24 -10.7539 24 -24s-10.7539 -24 -24 -24s-24 10.7539 -24 24s10.7539 24 24 24zM488 88c13.2461 0 24 -10.7539 24 -24s-10.7539 -24 -24 -24
s-24 10.7539 -24 24s10.7539 24 24 24zM616 -16c13.2461 0 24 -10.7539 24 -24s-10.7539 -24 -24 -24s-24 10.7539 -24 24s10.7539 24 24 24zM616 88c13.2461 0 24 -10.7539 24 -24s-10.7539 -24 -24 -24s-24 10.7539 -24 24s10.7539 24 24 24zM552 128
c13.2461 0 24 -10.7539 24 -24s-10.7539 -24 -24 -24s-24 10.7539 -24 24s10.7539 24 24 24zM477.22 173c1.76367 -3.9668 2.75977 -8.38281 2.75977 -13c0 -17.6543 -14.3281 -31.9883 -31.9795 -32h-32v-32h-96c-17.6611 0 -32 -14.3389 -32 -32s14.3389 -32 32 -32h96
c0 -35.3223 -28.6777 -64 -64 -64h-64v-32h-224v177.12c-39.25 35.2598 -64 86.1299 -64 142.88c0 106 86 192 192 192h42.0996c70.2783 -0.046875 132.342 -34.8047 170 -88.25c24.6201 -35 52.1201 -139.63 73.1201 -186.75zM288 224
c17.6436 0.0380859 31.9619 14.3564 32 32c0 17.6611 -14.3389 32 -32 32s-32 -14.3389 -32 -32s14.3389 -32 32 -32z" />
    <glyph glyph-name="head-side-cough-slash" unicode="&#xe062;" horiz-adv-x="640" 
d="M454.11 128.79l179.72 -138.89c3.76562 -2.92871 6.1709 -7.50781 6.1709 -12.6426c0 -3.69434 -1.25488 -7.09863 -3.36133 -9.80762l-19.6396 -25.2705c-2.92773 -3.77051 -7.51074 -6.18066 -12.6504 -6.18066c-3.69922 0 -7.1084 1.25879 -9.81934 3.37109
l-588.351 454.72c-3.76562 2.92871 -6.1709 7.50781 -6.1709 12.6426c0 3.69434 1.25488 7.09766 3.36133 9.80762l19.6299 25.2695c2.92871 3.76855 7.50879 6.17676 12.6465 6.17676c3.69727 0 7.10254 -1.25684 9.81348 -3.36621l38.7197 -29.9199
c30.6045 20.9385 67.7969 33.2998 107.644 33.2998h0.176758h42.0996c70.2783 -0.046875 132.342 -34.8047 170 -88.25c24.6201 -35 52.1201 -139.63 73.1201 -186.75c8.51074 -19.21 -3.5498 -40.4004 -23.1094 -44.21zM313.39 237.55
c3.85059 5.28027 6.61035 11.4502 6.58008 18.4502c-0.0332031 17.6455 -14.3535 31.9668 -32 32c-9.92969 0 -18.4795 -4.86035 -24.3594 -12zM616 144c-13.2461 0 -24 10.7539 -24 24s10.7539 24 24 24s24 -10.7539 24 -24s-10.7539 -24 -24 -24zM552 80
c-13.2461 0 -24 10.7539 -24 24s10.7539 24 24 24s24 -10.7539 24 -24s-10.7539 -24 -24 -24zM288 64c0 -17.6611 14.3389 -32 32 -32h96c0 -35.3223 -28.6777 -64 -64 -64h-64v-32h-224v177.12c-39.25 35.2598 -64 86.1299 -64 142.88
c0.015625 31.0195 7.56055 60.5098 20.7305 86.4102l318.81 -246.41h-19.54c-17.6611 0 -32 -14.3389 -32 -32zM616 88c13.2461 0 24 -10.7539 24 -24s-10.7539 -24 -24 -24s-24 10.7539 -24 24s10.7539 24 24 24z" />
    <glyph glyph-name="head-side-mask" unicode="&#xe063;" 
d="M0.150391 263.58c0.445312 9.60547 1.64062 19.0078 3.51953 28.1699l220.33 -160.26v-195.49h-160v177.12c-41 36.8203 -66.1699 90.6699 -63.8496 150.46zM509.22 173c1.62891 -3.79102 2.54688 -7.97949 2.54688 -12.3652
c0 -0.211914 -0.00195312 -0.423828 -0.00683594 -0.634766h-272.55l-225.96 164.35c29.2305 73.0801 103.75 123.65 186.75 123.65h66.1104c70.2744 -0.046875 132.336 -34.8047 169.989 -88.25c24.6201 -35 52.1201 -139.63 73.1201 -186.75zM320 224
c17.6436 0.0380859 31.9619 14.3564 32 32c0 17.6611 -14.3389 32 -32 32s-32 -14.3389 -32 -32s14.3389 -32 32 -32zM336 80c-8.83105 0 -16 -7.16895 -16 -16s7.16895 -16 16 -16h149.34l-10.6699 -32h-138.67c-8.83105 0 -16 -7.16895 -16 -16s7.16895 -16 16 -16h128
l-1.41016 -4.24023c-8.47363 -25.4199 -32.458 -43.7578 -60.71 -43.7598h-145.88v192h256l-16 -48h-160z" />
    <glyph glyph-name="head-side-virus" unicode="&#xe064;" 
d="M272 208c8.83105 0 16 -7.16895 16 -16s-7.16895 -16 -16 -16s-16 7.16895 -16 16s7.16895 16 16 16zM208 272c8.83105 0 16 -7.16895 16 -16s-7.16895 -16 -16 -16s-16 7.16895 -16 16s7.16895 16 16 16zM509.2 173c1.76367 -3.9668 2.75879 -8.38281 2.75879 -13
c0 -17.6475 -14.3164 -31.9775 -31.959 -32h-32v-64c0 -35.3223 -28.6777 -64 -64 -64h-64v-64h-256v177.19c-39.3125 35.0342 -64 86.0137 -64 142.763v0.046875c0 106 86 192 192 192h74.0898c70.3008 0 132.405 -34.7725 170.04 -88.25
c24.6396 -35.0195 52.1396 -139.63 73.0703 -186.75zM368 208c8.83105 0 16 7.16895 16 16s-7.16895 16 -16 16h-12.1201c-28.5098 0 -42.79 34.4697 -22.6299 54.6299l8.58008 8.57031c2.89648 2.89648 4.68457 6.90137 4.68457 11.3174
c0 8.83105 -7.16992 16.002 -16.002 16.002c-4.41602 0 -8.41602 -1.79297 -11.3125 -4.68945l-8.57031 -8.58008c-20.1602 -20.1602 -54.6299 -5.87988 -54.6299 22.6299v12.1201c0 8.83105 -7.16895 16 -16 16s-16 -7.16895 -16 -16v-12.1201
c0 -28.5098 -34.4697 -42.79 -54.6299 -22.6299l-8.57031 8.58008c-2.89648 2.89648 -6.90137 4.68457 -11.3174 4.68457c-8.83105 0 -16.002 -7.16992 -16.002 -16.002c0 -4.41602 1.79297 -8.41602 4.68945 -11.3125l8.58008 -8.57031
c20.1602 -20.1602 5.87988 -54.6299 -22.6299 -54.6299h-12.1201c-8.83105 0 -16 -7.16895 -16 -16s7.16895 -16 16 -16h12.1201c28.5098 0 42.79 -34.4697 22.6299 -54.6299l-8.58008 -8.57031c-2.89648 -2.89648 -4.68457 -6.90137 -4.68457 -11.3174
c0 -8.83105 7.16992 -16.002 16.002 -16.002c4.41602 0 8.41602 1.79297 11.3125 4.68945l8.57031 8.58008c20.1602 20.1602 54.6299 5.87988 54.6299 -22.6299v-12.1201c0 -8.83105 7.16895 -16 16 -16s16 7.16895 16 16v12.1201c0 28.5098 34.4697 42.79 54.6299 22.6299
l8.57031 -8.58008c2.89648 -2.89648 6.90137 -4.68457 11.3174 -4.68457c8.83105 0 16.002 7.16992 16.002 16.002c0 4.41602 -1.79297 8.41602 -4.68945 11.3125l-8.58008 8.57031c-20.1602 20.1602 -5.87988 54.6299 22.6299 54.6299h12.1201z" />
    <glyph glyph-name="house-user" unicode="&#xe065;" horiz-adv-x="576" 
d="M570.69 211.73c2.9082 -3.21777 4.83887 -7.36914 5.30957 -11.9209c-0.388672 -3.95801 -1.85742 -7.64648 -4.08984 -10.6895l-21.4102 -23.8105c-3.20117 -2.90527 -7.33496 -4.83594 -11.8701 -5.30957c-3.9668 0.40625 -7.66406 1.88379 -10.7197 4.12012
l-15.9102 14v-210.12c0 -17.6611 -14.3389 -32 -32 -32h-383.91c-17.6611 0 -32 14.3389 -32 32v210.11l-15.8994 -14c-3.04297 -2.23926 -6.73047 -3.71484 -10.6904 -4.11035c-4.57715 0.460938 -8.75586 2.38867 -12 5.2998l-21.4102 23.79
c-2.37695 2.95605 -3.87891 6.67773 -4.08984 10.71c0.241211 4.62402 2.20312 8.8125 5.25977 11.9004l256 226c6.28027 5.68945 18.21 10.2998 26.7402 10.2998s20.5 -4.61035 26.7803 -10.2998l101.22 -89.3701v51.6699c0 8.83105 7.16895 16 16 16h64
c8.83105 0 16 -7.16895 16 -16v-136.44zM288 272c-35.3223 0 -64 -28.6777 -64 -64s28.6777 -64 64 -64s64 28.6777 64 64s-28.6777 64 -64 64zM400 0c8.83105 0 16 7.16895 16 16c0 52.9834 -43.0166 96 -96 96h-64c-52.9834 0 -96 -43.0166 -96 -96
c0 -8.83105 7.16895 -16 16 -16h224z" />
    <glyph glyph-name="laptop-house" unicode="&#xe066;" horiz-adv-x="640" 
d="M272 160v-128h-176c-17.6611 0 -32 14.3389 -32 32v164.12l-21.6602 -19.1201c-2.5957 -2.02832 -5.83691 -3.30469 -9.33984 -3.48047c-4.15527 0.22168 -7.91113 2.00684 -10.6602 4.78027l-18.79 21.3105c-2.06836 2.59668 -3.37207 5.8584 -3.5498 9.38965
c0.234375 4.12598 2.01758 7.85352 4.78027 10.5801l211.8 187.5c5.54004 4.91992 16.0703 8.91992 23.4697 8.91992c7.40039 0 17.9502 -4 23.4502 -8.91992l88.5 -78.3799v39.2998c0 8.83105 7.16895 16 16 16h32c8.83105 0 16 -7.16895 16 -16v-96l59.25 -52.3896
c2.74609 -2.74707 4.5166 -6.48145 4.75 -10.6104c-0.186523 -3.56445 -1.51172 -6.85449 -3.61035 -9.46973l-6.64941 -7.53027h-136.94c-17.7998 0 -33.6895 -8.24023 -44.7998 -21.1201v37.1201c0 8.83105 -7.16895 16 -16 16h-64c-8.83105 0 -16 -7.16895 -16 -16v-64
c0 -8.83105 7.16895 -16 16 -16h64zM629.33 0c5.88867 0 10.6699 -4.78125 10.6699 -10.6699v-10.6602c-0.0820312 -23.4883 -19.1201 -42.5498 -42.5996 -42.6699h-298.801c-23.4795 0.120117 -42.5176 19.1816 -42.5996 42.6699v10.6602
c0 5.88867 4.78125 10.6699 10.6699 10.6699h37.3301v160c0 17.6699 12.8896 32 28.7998 32h230.4c15.9102 0 28.7998 -14.3301 28.7998 -32v-160h37.3301zM544 0v144h-192v-144h192z" />
    <glyph glyph-name="lungs-virus" unicode="&#xe067;" horiz-adv-x="640" 
d="M344 297.32c-6.99512 4.2207 -15.291 6.65039 -24.0498 6.65039s-16.9551 -2.42969 -23.9502 -6.65039v134.68c0 8.83105 7.16895 16 16 16h16c8.83105 0 16 -7.16895 16 -16v-134.68zM195.54 3.54004c8.44824 -8.67969 20.2178 -14.0645 33.2754 -14.0645
c2.87988 0 5.69922 0.261719 8.43457 0.764648c-13.043 -16.7764 -31.3789 -29.1445 -52.5 -34.75l-59.5 -15.8701c-62.75 -16.8799 -125.25 27.3799 -125.25 88.6299c0 0.0820312 0.0126953 0.125 0.0126953 0.207031c0 10.1719 1.3457 20.0322 3.86719 29.4131
c22.0361 82.46 57.0371 160.927 102 231c22.1201 34.6299 36.1201 63.1299 80.1201 63.1299c38.6201 0 70 -29.3799 70 -65.75v-27.6797c-7.62012 5.0918 -16.832 8.08496 -26.6768 8.08496c-26.4922 0 -48 -21.5088 -48 -48c0 -13.3232 5.43945 -25.3848 14.2168 -34.085
l8.58008 -8.57031h-12.1201c-26.4922 0 -48 -21.5078 -48 -48s21.5078 -48 48 -48h12.1201l-8.58008 -8.58008c-8.67383 -8.69531 -14.0391 -20.707 -14.0391 -33.9473s5.36523 -25.2363 14.0391 -33.9326zM421.83 26.1699
c-2.89648 -2.89648 -6.90137 -4.68945 -11.3174 -4.68945s-8.41602 1.79297 -11.3125 4.68945l-8.57031 8.57031c-20.1602 20.1602 -54.6299 5.87988 -54.6299 -22.6201v-12.1201c0 -8.83105 -7.16895 -16 -16 -16s-16 7.16895 -16 16v12.1201
c0 28.5 -34.4697 42.7803 -54.6299 22.6201l-8.57031 -8.57031c-2.9082 -2.99609 -6.98242 -4.85449 -11.4834 -4.85449c-8.83105 0 -16 7.16992 -16 16c0 4.49902 1.86035 8.56641 4.85352 11.4746l8.58008 8.58008c20.1602 20.1602 5.87988 54.6299 -22.6299 54.6299
h-12.1201c-8.83105 0 -16 7.16895 -16 16s7.16895 16 16 16h12.1201c28.5098 0 42.79 34.4697 22.6299 54.6201l-8.58008 8.58008c-2.89648 2.89648 -4.68457 6.90137 -4.68457 11.3174c0 8.83105 7.16992 16.002 16.002 16.002
c4.41602 0 8.41602 -1.79297 11.3125 -4.68945l8.57031 -8.58008c20.1602 -20.1602 54.6299 -5.87988 54.6299 22.6299v12.1201c0 8.83105 7.16895 16 16 16s16 -7.16895 16 -16v-12.1201c0 -28.5098 34.4697 -42.79 54.6299 -22.6299l8.57031 8.58008
c2.89648 2.89648 6.90137 4.68457 11.3174 4.68457c8.83105 0 16.002 -7.16992 16.002 -16.002c0 -4.41602 -1.79297 -8.41602 -4.68945 -11.3125l-8.58008 -8.58008c-20.1602 -20.1504 -5.87988 -54.6201 22.6299 -54.6201h12.1201c8.83105 0 16 -7.16895 16 -16
s-7.16895 -16 -16 -16h-12.1201c-28.5098 0 -42.79 -34.4697 -22.6299 -54.6299l8.58008 -8.58008c2.89355 -2.89551 4.68457 -6.89844 4.68457 -11.3125c0 -4.41309 -1.79102 -8.41211 -4.68457 -11.3076zM288 144c8.83105 0 16 7.16895 16 16s-7.16895 16 -16 16
s-16 -7.16895 -16 -16s7.16895 -16 16 -16zM352 80c8.83105 0 16 7.16895 16 16s-7.16895 16 -16 16s-16 -7.16895 -16 -16s7.16895 -16 16 -16zM636.12 57.8701c2.52148 -9.38086 3.87988 -19.2021 3.87988 -29.374v-0.246094c0 -61.25 -62.5 -105.51 -125.25 -88.6299
l-59.5 15.8701c-21.1211 5.60547 -39.457 17.9736 -52.5 34.75c2.77246 -0.50293 5.59766 -0.761719 8.51465 -0.761719c26.3262 0 47.7002 21.374 47.7002 47.7002c0 13.4287 -5.56152 25.5693 -14.5049 34.2412l-8.58008 8.58008h12.1201c26.4922 0 48 21.5078 48 48
s-21.5078 48 -48 48h-12.1201l8.58008 8.53027c8.77734 8.7002 14.1602 20.7393 14.1602 34.0615c0 26.4922 -21.5078 48 -48 48c-9.84375 0 -19 -2.96973 -26.6201 -8.06152v27.7197c0 36.3701 31.3799 65.75 70 65.75c44 0 58 -28.5 80.1201 -63.1299
c44.9629 -70.0732 79.9639 -148.54 102 -231z" />
    <glyph glyph-name="people-arrows" unicode="&#xe068;" horiz-adv-x="576" 
d="M96 320c-35.3223 0 -64 28.6777 -64 64s28.6777 64 64 64s64 -28.6777 64 -64s-28.6777 -64 -64 -64zM96 143.92c0 -0.0400391 -0.0117188 -0.078125 -0.0117188 -0.119141c0 -12.5332 5.24219 -23.8516 13.6514 -31.8809l50.3604 -47.5303v-96.3896
c0 -17.6611 -14.3389 -32 -32 -32h-64c-17.6611 0 -32 14.3389 -32 32v128c-17.6611 0 -32 14.3389 -32 32v96c0 35.3223 28.6777 64 64 64h64c26.9717 -0.0253906 50.0303 -16.7598 59.3799 -40.4297c-1.83984 -1.26074 -3.95996 -2.02051 -5.61035 -3.57031
l-72.1299 -68.0801c-8.40918 -8.03418 -13.6396 -19.3555 -13.6396 -31.8926v-0.107422zM480 320c-35.3223 0 -64 28.6777 -64 64s28.6777 64 64 64s64 -28.6777 64 -64s-28.6777 -64 -64 -64zM512 288c35.3223 0 64 -28.6777 64 -64v-96c0 -17.6611 -14.3389 -32 -32 -32
v-128c0 -17.6611 -14.3389 -32 -32 -32h-64c-17.6611 0 -32 14.3389 -32 32v96.3799l50.3604 47.5498c8.4082 8.07617 13.6445 19.4336 13.6445 32.002c0 12.5674 -5.23633 23.9219 -13.6445 31.998l-72.1201 68.0605c-1.62012 1.58984 -3.78027 2.31934 -5.62012 3.58984
c9.35352 23.666 32.4102 40.3965 59.3799 40.4199h64zM444.4 152.66c2.22461 -2.24219 3.59961 -5.33203 3.59961 -8.7373c0 -3.4043 -1.375 -6.49121 -3.59961 -8.73242l-72.1201 -68.0703c-2.1543 -2.05371 -5.07227 -3.31543 -8.28027 -3.31543
c-6.62305 0 -12 5.37695 -12 12v0.0556641v36.1396h-128v-36.1396c0 -0.0185547 -0.00292969 -0.0361328 -0.00292969 -0.0546875c0 -6.62305 -5.37695 -12 -12 -12c-3.20801 0 -6.12305 1.26074 -8.27734 3.31445l-72.1201 68.0703
c-2.22461 2.24121 -3.59961 5.33203 -3.59961 8.73633c0 3.40527 1.375 6.49121 3.59961 8.7334l72.1201 68.0703c2.1543 2.05273 5.07227 3.31445 8.28027 3.31445c6.62305 0 12 -5.37695 12 -12v-0.0449219v-36h128v36
c0 0.0117188 0.00292969 0.0224609 0.00292969 0.0341797c0 6.62305 5.37695 12 12 12c3.20801 0 6.12305 -1.26074 8.27734 -3.31445z" />
    <glyph glyph-name="plane-slash" unicode="&#xe069;" horiz-adv-x="640" 
d="M32.4805 300.12c-0.258789 1.12109 -0.386719 2.2959 -0.386719 3.49512c0 2.94531 0.825195 5.7002 2.25586 8.04492l324.841 -251.061l-66.6006 -116.54c-2.75684 -4.82227 -7.94141 -8.05957 -13.8896 -8.05957h-65.5
c-8.81641 0.0166016 -15.9678 7.17676 -15.9678 15.9971c0 1.53027 0.21582 3.01074 0.617188 4.41309l49 171.59h-102.85l-43.2002 -57.5898c-2.91797 -3.89648 -7.5625 -6.40723 -12.7998 -6.41016h-40c-8.82812 0.00292969 -15.9941 7.16406 -15.9941 15.9932
c0 1.33691 0.165039 2.63574 0.474609 3.87695l31.5195 108.13zM633.82 -10.0898c3.77148 -2.92871 6.18164 -7.51074 6.18164 -12.6514c0 -3.69531 -1.25488 -7.09863 -3.3623 -9.80859l-19.6396 -25.2598c-2.92773 -3.77246 -7.51074 -6.18262 -12.6514 -6.18262
c-3.69434 0 -7.09863 1.25488 -9.80859 3.3623l-588.36 454.72c-3.76855 2.92871 -6.17578 7.50879 -6.17578 12.6465c0 3.69727 1.25684 7.10352 3.36621 9.81348l19.6299 25.2598c2.92871 3.76855 7.50879 6.17676 12.6465 6.17676
c3.69727 0 7.10254 -1.25684 9.81348 -3.36621l189.3 -146.3l-36.9395 129.29c-0.398438 1.39551 -0.614258 2.86621 -0.614258 4.38965c0 8.8291 7.16602 15.9971 15.9941 16h65.5098c5.12988 0 11.3496 -3.61035 13.9004 -8.05957l105.09 -183.94h114.3
c35.3398 0 96 -28.6602 96 -64s-60.6602 -64 -96 -64h-56.8604z" />
    <glyph glyph-name="pump-medical" unicode="&#xe06a;" horiz-adv-x="384" 
d="M235.51 288.18c33.3369 -0.00195312 60.7559 -25.6123 63.7305 -58.1797l20.3701 -224c0.175781 -1.93066 0.262695 -3.82324 0.262695 -5.7998c0 -35.3203 -28.6738 -63.9961 -63.9932 -64h-192c-35.3223 0 -64.0059 28.6143 -64.0059 63.9365
c0 1.97656 0.0898438 3.93262 0.265625 5.86328l20.3701 224c2.97461 32.5674 30.3936 58.1777 63.7305 58.1797h151.27zM239.88 114.85v26.6602c0 7.3623 -5.97754 13.3398 -13.3398 13.3398h-40v40c0 7.35742 -5.97266 13.3301 -13.3301 13.3301h-26.6699
c-7.35742 0 -13.3301 -5.97266 -13.3301 -13.3301v-40h-40c-7.35742 0 -13.3301 -5.97266 -13.3301 -13.3291v-0.0107422v-26.6602c0 -7.3584 5.97266 -13.334 13.3301 -13.3398h40v-40c0 -7.35645 5.97266 -13.3301 13.3301 -13.3301h26.6699
c7.35742 0 13.3301 5.97363 13.3301 13.3301v40h40c7.36035 0.00585938 13.334 5.98047 13.3398 13.3398zM379.19 354.12c2.89648 -2.89648 4.68945 -6.90137 4.68945 -11.3174s-1.79297 -8.41602 -4.68945 -11.3125l-22.6201 -22.6201
c-2.89648 -2.89746 -6.90137 -4.68945 -11.3174 -4.68945s-8.41699 1.79199 -11.3125 4.68945l-43.3105 43.3096h-66.75v-32h-128v96c0 17.6611 14.3389 32 32 32h64c17.6611 0 32 -14.3389 32 -32h66.75c17.6553 -0.00195312 33.6582 -7.16016 45.2402 -18.7393z" />
    <glyph glyph-name="pump-soap" unicode="&#xe06b;" horiz-adv-x="384" 
d="M235.63 288c0.00390625 0 0.0107422 -0.0634766 0.0146484 -0.0634766c33.3496 0 60.7754 -25.5625 63.7354 -58.1465l20.3604 -224c0.174805 -1.92773 0.259766 -3.81738 0.259766 -5.79004c0 -35.3223 -28.6777 -64 -64 -64h-192
c-35.3193 0.00390625 -63.9941 28.6172 -63.9941 63.9365c0 1.97363 0.0888672 3.92578 0.263672 5.85352l20.3604 224c2.95996 32.584 30.3906 58.21 63.7402 58.21h151.26zM160 32c33.1201 0 60 26.3301 60 58.7305c0 25 -35.6699 75.4697 -52 97.2695
c-1.82422 2.43848 -4.72559 4.01855 -8.00293 4.01855c-3.26758 0 -6.17188 -1.57129 -7.99707 -3.99902c-16.2998 -21.7998 -52 -72.2695 -52 -97.2695c0 -32.4199 26.8799 -58.75 60 -58.75zM379.31 353.94c2.89746 -2.89648 4.69043 -6.90137 4.69043 -11.3174
s-1.79297 -8.41699 -4.69043 -11.3135l-22.6191 -22.6191c-2.89648 -2.89746 -6.90137 -4.69043 -11.3174 -4.69043s-8.41699 1.79297 -11.3135 4.69043l-43.3096 43.3096h-66.75v-32h-128v96c0 17.6611 14.3389 32 32 32h64c17.6611 0 32 -14.3389 32 -32h66.75
c17.6582 0 33.666 -7.1582 45.25 -18.7402z" />
    <glyph glyph-name="shield-virus" unicode="&#xe06c;" 
d="M224 256c8.83105 0 16 -7.16895 16 -16s-7.16895 -16 -16 -16s-16 7.16895 -16 16s7.16895 16 16 16zM466.5 364.32c17.3359 -7.24121 29.5 -24.3428 29.5 -44.291v-0.0292969c0 -221.3 -135.91 -344.61 -221.59 -380.32
c-5.67578 -2.3584 -11.9619 -3.66016 -18.4873 -3.66016c-6.52441 0 -12.7471 1.30176 -18.4229 3.66016c-107 44.6006 -221.5 181.82 -221.5 380.32c0 0.0166016 -0.03125 0.0107422 -0.03125 0.0263672c0 19.9707 12.2402 37.1055 29.6211 44.3037l192 80
c5.75293 2.17188 12 3.46582 18.46 3.66992c6.45605 -0.208008 12.7012 -1.50586 18.4502 -3.67969zM384 192c8.83105 0 16 7.16895 16 16s-7.16895 16 -16 16h-12.1201c-28.5098 0 -42.79 34.4697 -22.6299 54.6299l8.58008 8.57031
c2.89648 2.89648 4.68457 6.90137 4.68457 11.3174c0 8.83105 -7.16992 16.002 -16.002 16.002c-4.41602 0 -8.41602 -1.79297 -11.3125 -4.68945l-8.57031 -8.58008c-20.1602 -20.1602 -54.6299 -5.87988 -54.6299 22.6299v12.1201c0 8.83105 -7.16895 16 -16 16
s-16 -7.16895 -16 -16v-12.1201c0 -28.5098 -34.4697 -42.79 -54.6299 -22.6299l-8.57031 8.58008c-2.89648 2.89648 -6.90137 4.68457 -11.3174 4.68457c-8.83105 0 -16.002 -7.16992 -16.002 -16.002c0 -4.41602 1.79297 -8.41602 4.68945 -11.3125l8.58008 -8.57031
c20.1602 -20.1602 5.87988 -54.6299 -22.6299 -54.6299h-12.1201c-8.83105 0 -16 -7.16895 -16 -16s7.16895 -16 16 -16h12.1201c28.5098 0 42.79 -34.4697 22.6299 -54.6299l-8.58008 -8.57031c-2.89648 -2.89648 -4.68457 -6.90137 -4.68457 -11.3174
c0 -8.83105 7.16992 -16.002 16.002 -16.002c4.41602 0 8.41602 1.79297 11.3125 4.68945l8.57031 8.58008c20.1602 20.1602 54.6299 5.87988 54.6299 -22.6299v-12.1201c0 -8.83105 7.16895 -16 16 -16s16 7.16895 16 16v12.1201c0 28.5098 34.4697 42.79 54.6299 22.6299
l8.57031 -8.58008c2.89648 -2.89648 6.90137 -4.68457 11.3174 -4.68457c8.83105 0 16.002 7.16992 16.002 16.002c0 4.41602 -1.79297 8.41602 -4.68945 11.3125l-8.58008 8.57031c-20.1602 20.1602 -5.87988 54.6299 22.6299 54.6299h12.1201zM288 192
c8.83105 0 16 -7.16895 16 -16s-7.16895 -16 -16 -16s-16 7.16895 -16 16s7.16895 16 16 16z" />
    <glyph glyph-name="sink" unicode="&#xe06d;" 
d="M32 32v32h448v-32c0 -52.9834 -43.0166 -96 -96 -96h-256c-52.9834 0 -96 43.0166 -96 96zM496 160c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-480c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h96v32h-64
c-8.83105 0 -16 7.16895 -16 16v16c0 8.83105 7.16895 16 16 16h80c17.6611 0 32 -14.3389 32 -32v-48h64v188.21c0 46.4297 31.29 89.0801 76.8701 97.9297c6.15625 1.23926 12.4512 1.8877 18.9697 1.8877c53.0283 0 96.0879 -43.0166 96.1602 -96.0273v-16
c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v16c0 17.6611 -14.3389 32 -32 32s-32 -14.3389 -32 -32v-192h64v48c0 17.6611 14.3389 32 32 32h80c8.83105 0 16 -7.16895 16 -16v-16c0 -8.83105 -7.16895 -16 -16 -16h-64v-32h96z" />
    <glyph glyph-name="soap" unicode="&#xe06e;" 
d="M416 256c52.9834 0 96 -43.0166 96 -96v-128c0 -52.9834 -43.0166 -96 -96 -96h-320c-52.9834 0 -96 43.0166 -96 96v128c0 52.9834 43.0166 96 96 96h128c0.0634766 -24.6279 9.49707 -47.1133 24.9102 -64h-88.9102c-52.9834 0 -96 -43.0166 -96 -96
s43.0166 -96 96 -96h192c0.0703125 0 0.171875 -0.0322266 0.242188 -0.0322266c52.873 0 95.7998 42.9268 95.7998 95.7998c0 41.3477 -26.251 76.6123 -62.9824 90.0225c19.0049 17.4219 30.9033 42.4307 30.9404 70.21zM320 192c-35.3223 0 -64 28.6777 -64 64
s28.6777 64 64 64s64 -28.6777 64 -64s-28.6777 -64 -64 -64zM208 352c-26.4922 0 -48 21.5078 -48 48s21.5078 48 48 48s48 -21.5078 48 -48s-21.5078 -48 -48 -48zM384 384c-17.6611 0 -32 14.3389 -32 32s14.3389 32 32 32s32 -14.3389 32 -32s-14.3389 -32 -32 -32z
M160 160h192c35.3223 0 64 -28.6777 64 -64s-28.6777 -64 -64 -64h-192c-35.3223 0 -64 28.6777 -64 64s28.6777 64 64 64z" />
    <glyph glyph-name="stopwatch-20" unicode="&#xe06f;" horiz-adv-x="448" 
d="M398.5 257.09c21.1045 -32.3291 33.501 -71.1426 33.501 -112.596c0 -0.165039 -0.000976562 -0.329102 -0.000976562 -0.494141c0 -116 -94.8701 -209.77 -211.28 -208c-113.96 1.78027 -208.08 100.5 -204.63 214.43c3.10156 100.915 78.4639 183.935 175.91 199.07
v34.5h-32c-8.81836 0.0273438 -15.9727 7.18164 -16 16v32c0.0273438 8.81836 7.18164 15.9727 16 16h128c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-32v-34.5c37.3506 -5.76855 71.749 -21.625 99.6904 -44.5898l24.6797 24.6797
c2.89648 2.89746 6.90137 4.69043 11.3174 4.69043s8.41602 -1.79297 11.3125 -4.69043l22.6797 -22.6797c2.89746 -2.89648 4.69043 -6.90137 4.69043 -11.3174s-1.79297 -8.41602 -4.69043 -11.3125l-26.5898 -26.5801zM204.37 70.4502l-49.1299 0.0400391
c1.7998 15.6299 14.8496 36.2002 26.4102 51.2002c21.9092 30.0996 34.3496 45.7295 34.3496 81.3096c0 35.1504 -12.5703 61 -55.5703 61c-47.9492 0 -56.4297 -32.9404 -56.4297 -60.2402v-4.06934c0.0703125 -4.46582 3.71484 -8.07129 8.19629 -8.07129
c0.0449219 0 0.0888672 0 0.133789 0.000976562h24.9004c0.0439453 -0.000976562 0.0859375 0.000976562 0.130859 0.000976562c4.48145 0 8.12891 3.60352 8.19824 8.06934v5.22949c0 15.2803 3.30078 22.6797 12.6904 22.6797c10.4199 0 12.21 -7.34961 12.21 -24.2695
c0 -25.0205 -6.67969 -33.1504 -27.0996 -62.3398c-23.7803 -33.96 -35.6699 -56.1504 -38.4502 -91.3701c-0.0273438 -0.388672 -0.0449219 -0.765625 -0.0449219 -1.16113c0 -9.08496 7.37598 -16.46 16.46 -16.46c0.0654297 0 0.129883 0 0.194336 0.000976562h82.8506
c0.0410156 -0.000976562 0.0800781 0.000976562 0.121094 0.000976562c4.48145 0 8.12891 3.60352 8.19922 8.06934v22.3096c-0.0703125 4.46484 -3.71582 8.07129 -8.19727 8.07129c-0.0410156 0 -0.0820312 -0.000976562 -0.123047 -0.000976562zM344 95.6797v107.021
c0 38.6602 -19 61.2998 -55.7998 61.2998c-36.6201 0 -56.2002 -22.4902 -56.2002 -63.2197v-105.33c0 -33.9307 11.1904 -63.4502 54.7695 -63.4502c44.9307 0 57.2305 28.5195 57.2305 63.6797zM287.87 226.27c10.0098 0 13.0195 -8.05957 13 -19.3291v-115.94
c0 -13.2695 -3.36035 -21.2695 -13 -21.2695s-13.2305 7.47949 -13.2305 20.5898v115.949c0 12.5 3.82031 20 13.2305 20z" />
    <glyph glyph-name="store-alt-slash" unicode="&#xe070;" horiz-adv-x="640" 
d="M17.8896 324.38l88.4707 -68.3799h-74.2607c-25.5898 0 -40.79 28.5 -26.5898 49.7998zM576 34.5801l57.8301 -44.6797c3.76562 -2.92871 6.1709 -7.50781 6.1709 -12.6426c0 -3.69434 -1.25488 -7.09863 -3.36133 -9.80762l-19.6396 -25.2598
c-2.92773 -3.77539 -7.5127 -6.1875 -12.6553 -6.1875c-3.69727 0 -7.10352 1.25684 -9.81445 3.36719l-588.351 454.72c-3.76562 2.92871 -6.1709 7.50781 -6.1709 12.6426c0 3.69434 1.25488 7.09766 3.36133 9.80762l19.6299 25.2695
c2.92871 3.76855 7.50879 6.17676 12.6465 6.17676c3.69727 0 7.10254 -1.25684 9.81348 -3.36621l34.6904 -26.8203l10.6592 16c5.71387 8.57715 15.4521 14.2002 26.5215 14.2002h0.0888672h405.18c0.00390625 0 -0.0107422 0.0322266 -0.00683594 0.0322266
c11.1172 0 20.9248 -5.64941 26.707 -14.2324l85.29 -128c14.1104 -21.2998 -1.08984 -49.7998 -26.5898 -49.7998h-318.48l41.4004 -32h53.0801v-41l128 -99v140h64v-189.42zM320 64v26.8799l64 -49.4697v-73.4102c0 -17.6611 -14.3389 -32 -32 -32h-256
c-17.6611 0 -32 14.3389 -32 32v256h64v-160h192z" />
    <glyph glyph-name="store-slash" unicode="&#xe071;" horiz-adv-x="640" 
d="M121.51 64h226.91l157.33 -128h-414.52c-16.8105 0 -30.4004 14.2998 -30.4004 32v196.8c5.02051 -1.53516 10.2939 -2.76074 15.5801 -3.59961c5.62891 -0.791016 11.2549 -1.19727 17.0996 -1.2002c9.65723 0.157227 19.0283 1.47559 28 3.7998v-99.7998z
M93.5098 192.09c-0.0644531 0 -0.0566406 -0.00390625 -0.121094 -0.00390625c-4.37402 0 -8.67969 0.294922 -12.8984 0.864258c-58.9404 8.46973 -87.0098 81.6094 -56.4902 135l133.51 -108.62c-16.71 -16.5205 -38.8994 -27.2402 -64 -27.2402zM602.13 -10.0898
c3.59863 -3.04297 5.86719 -7.59961 5.86719 -12.6758c0 -3.6582 -1.1875 -7.04102 -3.19727 -9.78418l-18.6602 -25.2598c-2.66211 -3.74902 -7.04102 -6.17871 -11.9854 -6.17871c-3.54785 0 -6.80469 1.26074 -9.34473 3.3584l-558.939 454.72
c-3.59863 3.04297 -5.86719 7.59961 -5.86719 12.6758c0 3.6582 1.1875 7.04102 3.19727 9.78418l18.6602 25.2598c2.66016 3.74805 7.03711 6.17676 11.9785 6.17676c3.55176 0 6.81055 -1.26367 9.35156 -3.36621l33.6895 -27.4004l9.38965 15.7803
c5.16309 8.89941 14.7383 14.8848 25.7305 15h383.81c10.998 -0.109375 20.5781 -6.09668 25.7402 -15l61.6602 -103.6c31.9404 -53.6006 3.59961 -127.99 -56.0596 -136.4c-4.28027 -0.598633 -8.55762 -0.90625 -13 -0.910156c-28.0303 0 -52.9199 13 -70.1104 33.1104
c-17.1104 -20.1104 -42 -33.1104 -70.1104 -33.1104c-8.83496 0.130859 -17.3857 1.58594 -25.4102 4.14062l137.82 -112.11v79.6797c8.95801 -2.36523 18.3291 -3.6875 28 -3.7998c5.9082 0.00683594 11.5957 0.412109 17.29 1.2002
c5.31152 0.757812 10.584 1.9873 15.5703 3.59961v-130.21z" />
    <glyph glyph-name="toilet-paper-slash" unicode="&#xe072;" horiz-adv-x="640" 
d="M64 256c0 10.8096 0.530273 21.3398 1.41992 31.6699l316 -244.25c-4.17969 -32.2002 -12.8701 -57.7197 -22.1797 -85.5498c-4.19727 -12.7002 -16.1592 -21.8701 -30.2588 -21.8701h-0.121094h-280.86c-8.79395 0.0429688 -15.917 7.19824 -15.917 16.002
c0 1.74512 0.279297 3.4248 0.796875 4.99805c21.3701 64.1201 31.1201 85.75 31.1201 126.87v172.13zM633.82 -10.0898c3.77148 -2.92871 6.18164 -7.51074 6.18164 -12.6514c0 -3.69531 -1.25488 -7.09863 -3.3623 -9.80859l-19.6396 -25.2598
c-2.92773 -3.77246 -7.51074 -6.18262 -12.6514 -6.18262c-3.69434 0 -7.09863 1.25488 -9.80859 3.3623l-588.36 454.72c-3.76855 2.92871 -6.17578 7.50879 -6.17578 12.6465c0 3.69727 1.25684 7.10352 3.36621 9.81348l19.6299 25.2598
c2.92871 3.76855 7.50879 6.17676 12.6465 6.17676c3.69727 0 7.10254 -1.25684 9.81348 -3.36621l53.2803 -41.1504c16.6299 27.7002 37.9297 44.5303 61.2598 44.5303h284.5c-36.8701 -38.5 -60.5 -108.38 -60.5 -192v-73l50.4297 -39
c-11.4297 31.5996 -18.4297 70 -18.4297 112c0 106 43 192 96 192s96 -86 96 -192c0 -92.3203 -32.7197 -168.91 -76.1797 -187.28zM512 192c17.6201 0 32 28.6299 32 64s-14.3701 64 -32 64s-32 -28.6201 -32 -64s14.3701 -64 32 -64z" />
    <glyph glyph-name="users-slash" unicode="&#xe073;" horiz-adv-x="640" 
d="M132.65 235.68c-10.3945 -7.33496 -23.1328 -11.6836 -36.8105 -11.6836c-35.2344 0 -63.8398 28.6055 -63.8398 63.8398v0.164062c0.0615234 7.80859 1.5625 15.3242 4.20996 22.2197zM173.09 173.4c-40.2002 -21.9072 -68.8896 -62.1416 -75.1797 -109.4h-65.9102
c-17.6611 0 -32 14.3389 -32 32v32c0.0332031 35.3076 28.6924 63.9668 64 64h64c0.0224609 0 0.0537109 0.0078125 0.0771484 0.0078125c17.5605 0 33.4727 -7.11035 45.0127 -18.6074zM544 224c-35.3076 0.0332031 -63.9668 28.6924 -64 64c0 35.3223 28.6777 64 64 64
s64 -28.6777 64 -64s-28.6777 -64 -64 -64zM500.56 92.8896l133.271 -102.989c3.76562 -2.92871 6.1709 -7.50781 6.1709 -12.6426c0 -3.69434 -1.25488 -7.09863 -3.36133 -9.80762l-19.6396 -25.2705c-2.92773 -3.77051 -7.51074 -6.18066 -12.6504 -6.18066
c-3.69922 0 -7.1084 1.25879 -9.81934 3.37109l-588.351 454.72c-3.76562 2.92871 -6.1709 7.50781 -6.1709 12.6426c0 3.69434 1.25488 7.09766 3.36133 9.80762l19.6299 25.2695c2.92871 3.76855 7.50879 6.17676 12.6465 6.17676
c3.69727 0 7.10254 -1.25684 9.81348 -3.36621l163.94 -126.7c6.90918 55.25 53.46 98.0801 110.6 98.0801c0.0234375 0 0.0458984 0.000976562 0.0703125 0.000976562c61.7754 0 111.93 -50.1533 111.93 -111.93v-0.0712891c0 -47.3096 -29.54 -86.9297 -71 -103.23
l55.0898 -42.5996c37.6797 -6.53711 69.0986 -31.4668 84.4697 -65.2803zM128 44.79c0 59.79 45.7402 108.38 104 114.08l244.57 -189c-3.99707 -1.1582 -8.21582 -1.81152 -12.5703 -1.87012h-288c-26.4922 0 -48 21.5078 -48 48v28.79zM576 192
c35.3076 -0.0332031 63.9668 -28.6924 64 -64v-32c0 -17.6611 -14.3389 -32 -32 -32h-66c-6.21875 47.2666 -34.8916 87.5146 -75.0898 109.4c11.54 11.4971 27.4609 18.5996 45.0215 18.5996h0.0683594h64z" />
    <glyph glyph-name="virus" unicode="&#xe074;" 
d="M483.55 220.45c0.180664 0.00292969 0.332031 0.00488281 0.512695 0.00488281c15.7021 0 28.4502 -12.748 28.4502 -28.4502s-12.748 -28.4502 -28.4502 -28.4502c-0.180664 0 -0.362305 0.00195312 -0.542969 0.00488281h-21.5391
c-50.6807 0 -76.0703 -61.2793 -40.2305 -97.1191l15.25 -15.2402c4.66602 -5.06836 7.50879 -11.8418 7.50879 -19.2666c0 -15.7021 -12.748 -28.4502 -28.4502 -28.4502c-7.42578 0 -14.1904 2.85059 -19.2588 7.5166l-15.2402 15.2305
c-35.8398 35.8398 -97.1094 10.4492 -97.1094 -40.2305v-21.5195c0 -15.7021 -12.748 -28.4502 -28.4502 -28.4502s-28.4502 12.748 -28.4502 28.4502v21.5391c0 50.6807 -61.2695 76.0703 -97.1094 40.2305l-15.2402 -15.25
c-5.06836 -4.66602 -11.8418 -7.50879 -19.2666 -7.50879c-15.7021 0 -28.4502 12.748 -28.4502 28.4502c0 7.42578 2.85059 14.1904 7.5166 19.2588l15.2305 15.2402c35.8398 35.8398 10.4492 97.1191 -40.2305 97.1191h-21.5498
c-0.180664 -0.00292969 -0.361328 -0.00488281 -0.542969 -0.00488281c-15.7021 0 -28.4502 12.748 -28.4502 28.4502s12.748 28.4502 28.4502 28.4502c0.181641 0 0.362305 -0.00195312 0.542969 -0.00488281h21.5693c50.6807 0 76.0703 61.2695 40.2305 97.1094
l-15.25 15.25c-4.73047 5.08008 -7.61816 11.8994 -7.61816 19.3818c0 15.6963 12.7432 28.4404 28.4395 28.4404c7.48535 0 14.2988 -2.89844 19.3789 -7.63184l15.2402 -15.2305c35.8398 -35.8291 97.1094 -10.4492 97.1094 40.2305v21.5596
c0 15.7021 12.748 28.4502 28.4502 28.4502s28.4502 -12.748 28.4502 -28.4502v-21.5498c0 -50.6797 61.2695 -76.0596 97.1094 -40.2295l15.2402 15.2197c5.08008 4.7334 11.9023 7.62305 19.3867 7.62305c15.6963 0 28.4404 -12.7432 28.4404 -28.4395
c0 -7.48242 -2.89648 -14.2939 -7.62695 -19.374l-15.2305 -15.25c-35.8398 -35.8398 -10.4492 -97.1094 40.2305 -97.1094h21.5498zM224 176c26.4922 0 48 21.5078 48 48s-21.5078 48 -48 48s-48 -21.5078 -48 -48s21.5078 -48 48 -48zM304 120c13.2461 0 24 10.7539 24 24
s-10.7539 24 -24 24s-24 -10.7539 -24 -24s10.7539 -24 24 -24z" />
    <glyph glyph-name="virus-slash" unicode="&#xe075;" horiz-adv-x="640" 
d="M114 220.4c9.90039 0.0996094 19.7002 2.89941 28.0996 8l244.5 -189c-21.1992 -7.5 -38.1992 -26.8008 -38.1992 -53.4004v-21.5c0 -15.7002 -12.7002 -28.4004 -28.4004 -28.4004s-28.5 12.7002 -28.5 28.4004v21.5c0 50.7002 -61.2998 76 -97.0996 40.2002
l-15.2002 -15.2002c-0.5 -0.599609 -1.10059 -1.09961 -1.60059 -1.59961c-11.5 -10.6006 -29.5996 -9.90039 -40.1992 1.59961c-10.6006 11.5 -9.90039 29.5 1.59961 40.2002l15.2002 15.2998c35.8994 35.7998 10.5 97.0996 -40.2002 97.0996h-21.5996
c-15.7002 0 -28.4004 12.7002 -28.4004 28.4004s12.7002 28.4004 28.4004 28.4004h21.5996zM617 -57.7998c-5.40039 -7 -15.5 -8.2998 -22.4004 -2.90039l-588.399 454.7c-7 5.5 -8.2002 15.5 -2.7998 22.5l19.5996 25.2998c5.5 7 15.5 8.2002 22.5 2.7998l93.2002 -72.0996
c11.0996 11.0996 29.3994 11.5996 40.5 0.5l15.2998 -15.2002c35.7998 -35.8994 97.0996 -10.5 97.0996 40.2002v21.5996c0 15.7002 12.7002 28.4004 28.4004 28.4004s28.4004 -12.7002 28.5 -28.5v-21.5996c0 -50.7002 61.2998 -76 97.0996 -40.2002l15.2002 15.2002
c10.9004 10.0996 27.7002 10.0996 38.6006 0c11.5996 -10.7002 12.2998 -28.7002 1.59961 -40.2002l-15.2002 -15.2998c-35.8994 -35.8008 -10.5 -97.1006 40.2002 -97.1006h21.5c15.7002 0 28.4004 -12.7002 28.4004 -28.3994
c0 -15.7002 -12.7002 -28.4004 -28.4004 -28.4004h-21.5c-30.5 0 -51.2002 -22.0996 -55.4004 -47.5l163.2 -126c7 -5.5 8.2002 -15.5 2.7998 -22.5zM335.4 220.5c0.0996094 1.2002 0.599609 2.2998 0.5 3.5c0 26.5 -21.5 48 -48 48
c-5.2002 -0.0996094 -10.5 -1.09961 -15.4004 -2.90039z" />
    <glyph glyph-name="viruses" unicode="&#xe076;" horiz-adv-x="640" 
d="M624 96c8.83105 0 16 -7.16895 16 -16s-7.16895 -16 -16 -16h-12.1201c-28.5098 0 -42.79 -34.4697 -22.6299 -54.6299l8.58008 -8.57031c2.89648 -2.89648 4.68457 -6.90137 4.68457 -11.3174c0 -8.83105 -7.16992 -16.002 -16.002 -16.002
c-4.41602 0 -8.41602 1.79297 -11.3125 4.68945l-8.57031 8.58008c-20.1602 20.1602 -54.6299 5.87988 -54.6299 -22.6299v-12.1201c0 -8.83105 -7.16895 -16 -16 -16s-16 7.16895 -16 16v12.1201c0 28.5098 -34.4697 42.79 -54.6299 22.6299l-8.57031 -8.58008
c-2.89648 -2.89648 -6.90137 -4.68457 -11.3174 -4.68457c-8.83105 0 -16.002 7.16992 -16.002 16.002c0 4.41602 1.79297 8.41602 4.68945 11.3125l8.58008 8.57031c20.1602 20.1602 5.87988 54.6299 -22.6299 54.6299h-12.1201c-8.83105 0 -16 7.16895 -16 16
s7.16895 16 16 16h12.1201c28.5098 0 42.79 34.4697 22.6299 54.6299l-8.58008 8.57031c-2.89648 2.89648 -4.68457 6.90137 -4.68457 11.3174c0 8.83105 7.16992 16.002 16.002 16.002c4.41602 0 8.41602 -1.79297 11.3125 -4.68945l8.57031 -8.58008
c20.1602 -20.1602 54.6299 -5.87988 54.6299 22.6299v12.1201c0 8.83105 7.16895 16 16 16s16 -7.16895 16 -16v-12.1201c0 -28.5098 34.4697 -42.79 54.6299 -22.6299l8.57031 8.58008c2.89648 2.89648 6.90137 4.68457 11.3174 4.68457
c8.83105 0 16.002 -7.16992 16.002 -16.002c0 -4.41602 -1.79297 -8.41602 -4.68945 -11.3125l-8.58008 -8.57031c-20.1602 -20.1602 -5.87988 -54.6299 22.6299 -54.6299h12.1201zM480 64c17.6611 0 32 14.3389 32 32s-14.3389 32 -32 32s-32 -14.3389 -32 -32
s14.3389 -32 32 -32zM346.51 234.67c-38.0195 0 -57.0498 -45.96 -30.1699 -72.8398l11.4297 -11.4297c3.8623 -3.8623 6.24609 -9.20117 6.24609 -15.0879c0 -11.7744 -9.55957 -21.334 -21.334 -21.334c-5.88672 0 -11.2197 2.38965 -15.082 6.25195l-11.4297 11.4297
c-26.8398 26.8799 -72.8398 7.83008 -72.8398 -30.1699v-16.1602c0 -11.7725 -9.55762 -21.3301 -21.3301 -21.3301s-21.3301 9.55762 -21.3301 21.3301v16.1602c0 38.0195 -45.96 57.0498 -72.8398 30.1699l-11.4297 -11.4297
c-3.8623 -3.8623 -9.20117 -6.24609 -15.0879 -6.24609c-11.7744 0 -21.334 9.55957 -21.334 21.334c0 5.88672 2.38965 11.2197 6.25195 15.082l11.4297 11.4297c26.8799 26.8398 7.83008 72.8398 -30.1699 72.8398h-16.1602c-11.7725 0 -21.3301 9.55762 -21.3301 21.3301
s9.55762 21.3301 21.3301 21.3301h16.1602c38.0195 0 57.0498 45.96 30.1699 72.8398l-11.4297 11.4404c-3.83008 3.85645 -6.19043 9.17188 -6.19043 15.0312c0 11.7725 9.55762 21.3301 21.3301 21.3301c5.86035 0 11.1729 -2.36914 15.0303 -6.20215l11.4297 -11.4297
c26.8398 -26.8799 72.8398 -7.83008 72.8398 30.1699v16.1602c0 11.7725 9.55762 21.3301 21.3301 21.3301s21.3301 -9.55762 21.3301 -21.3301v-16.1602c0 -38.0195 45.96 -57.0498 72.8398 -30.1699l11.4297 11.4297c3.85742 3.83301 9.17578 6.19531 15.0361 6.19531
c11.7725 0 21.3301 -9.55762 21.3301 -21.3291c0 -5.85938 -2.36621 -11.1689 -6.19629 -15.0254l-11.4297 -11.4404c-26.8799 -26.8398 -7.83008 -72.8398 30.1699 -72.8398h16.1602c11.7725 0 21.3301 -9.55762 21.3301 -21.3301s-9.55762 -21.3301 -21.3301 -21.3301
h-16.1602zM160 256c17.6611 0 32 14.3389 32 32s-14.3389 32 -32 32s-32 -14.3389 -32 -32s14.3389 -32 32 -32zM240 224c8.83105 0 16 7.16895 16 16s-7.16895 16 -16 16s-16 -7.16895 -16 -16s7.16895 -16 16 -16z" />
    <glyph glyph-name="vest" unicode="&#xe085;" horiz-adv-x="448" 
d="M437.252 208.123c6.76562 -10.1484 10.748 -22.3994 10.748 -35.5v-204.623c0 -17.6611 -14.3389 -32 -32 -32h-192v224l73.8115 221.438c-21.7695 -12.3281 -47.0635 -19.5205 -73.8115 -19.6729c-26.748 0.150391 -52.042 7.34277 -73.8115 19.6699l56.9463 -170.836
l-13.4922 -40.4805c-1.05957 -3.17969 -1.64258 -6.58496 -1.64258 -10.1191v-224h-160c-17.6611 0 -32 14.3389 -32 32v204.623c0 13.1006 3.98242 25.3516 10.748 35.5l53.252 79.877v128c0 17.6611 14.3389 32 32 32h32
c4.91211 -0.00195312 9.50586 -1.49512 13.3115 -4.03125l25 -16.6719c16.4814 -11.0186 36.4971 -17.4463 57.793 -17.4463s41.1025 6.42773 57.584 17.4463l25 16.6719c3.80566 2.53613 8.39941 4.0293 13.3115 4.03125h32c17.6611 0 32 -14.3389 32 -32v-128z
M131.312 76.6885c2.78125 2.87891 4.48828 6.80078 4.48828 11.1152c0 8.83105 -7.16992 16 -16 16c-4.31445 0 -8.23242 -1.71094 -11.1113 -4.49219l-48 -48c-2.78125 -2.87891 -4.48828 -6.80078 -4.48828 -11.1152c0 -8.83105 7.16992 -16 16 -16
c4.31445 0 8.23242 1.71094 11.1113 4.49219zM387.312 28.6885c2.89746 2.89453 4.69043 6.89844 4.69043 11.3135s-1.79297 8.41504 -4.69043 11.3096l-48 48c-2.87891 2.78125 -6.80078 4.48828 -11.1152 4.48828c-8.83105 0 -16 -7.16992 -16 -16
c0 -4.31445 1.71094 -8.23242 4.49219 -11.1113l48 -48c2.89453 -2.89746 6.89844 -4.69043 11.3135 -4.69043s8.41504 1.79297 11.3096 4.69043z" />
    <glyph glyph-name="vest-patches" unicode="&#xe086;" horiz-adv-x="448" 
d="M437.252 208.123c6.76562 -10.1484 10.748 -22.3994 10.748 -35.5v-204.623c0 -17.6611 -14.3389 -32 -32 -32h-192v224l73.8105 221.434c-21.7705 -12.3252 -47.0635 -19.5156 -73.8105 -19.668c-26.7471 0.154297 -52.041 7.34668 -73.8115 19.6738l56.9463 -170.84
l-13.4922 -40.4805c-1.05957 -3.17969 -1.64258 -6.58496 -1.64258 -10.1191v-224h-160c-17.6611 0 -32 14.3389 -32 32v204.623c0 13.1006 3.98242 25.3516 10.748 35.5l53.252 79.877v128c0 17.6611 14.3389 32 32 32h32l0.0283203 -0.0146484
c4.91113 0 9.47949 -1.47949 13.2832 -4.0166l25 -16.6719c16.4814 -11.0186 36.4971 -17.4463 57.793 -17.4463s41.1025 6.42773 57.584 17.4463l25 16.6719c3.80371 2.53711 8.39551 4.03125 13.3066 4.03125h0.00488281h32c17.6611 0 32 -14.3389 32 -32v-128z
M63.5 175.516l15.5156 -15.5156l-15.5156 -15.5156c-2.12402 -2.16699 -3.43066 -5.1377 -3.43066 -8.4082c0 -6.62891 5.38086 -12.0107 12.0098 -12.0107c3.2793 0 6.25293 1.31738 8.4209 3.4502l15.5 15.5l15.5 -15.5
c2.16797 -2.13281 5.14551 -3.44629 8.42383 -3.44629c6.62891 0 12.0107 5.38184 12.0107 12.0098c0 3.27051 -1.31055 6.23828 -3.43457 8.40527l-15.5156 15.5156l15.5156 15.5156c2.12402 2.16699 3.43066 5.1377 3.43066 8.4082
c0 6.62891 -5.38086 12.0107 -12.0098 12.0107c-3.2793 0 -6.25293 -1.31738 -8.4209 -3.4502l-15.5 -15.5l-15.5 15.5c-2.16797 2.13281 -5.14551 3.44629 -8.42383 3.44629c-6.62891 0 -12.0107 -5.38184 -12.0107 -12.0098c0 -3.27051 1.31055 -6.23828 3.43457 -8.40527
zM96 -8c22.0762 0 40 17.9238 40 40s-17.9238 40 -40 40s-40 -17.9238 -40 -40s17.9238 -40 40 -40zM359.227 112.215c13.6875 0.0966797 24.7734 11.2139 24.7734 24.9229c0 0.757812 -0.0341797 1.50684 -0.0996094 2.24707
c-1.16406 12.8008 -12.5742 22.1113 -25.4004 22.0762l-5.05078 -0.0371094l0.0371094 5.05762c0.0722656 12.7998 -9.26758 24.2568 -22.0566 25.4189c-0.742188 0.0664062 -1.46973 0.0947266 -2.22949 0.0947266c-13.7012 0 -24.8418 -11.0527 -24.9854 -24.7207
l-0.214844 -48.5742c0 -0.00976562 -0.000976562 -0.0195312 -0.000976562 -0.0292969c0 -3.68164 2.98926 -6.6709 6.6709 -6.6709h0.0302734z" />
    <glyph glyph-name="glass-martini" unicode="&#xf000;" 
d="M502.05 390.4l-214.05 -214.04v-192.36h56c22.0898 0 40 -17.9102 40 -40c0 -4.41992 -3.58008 -8 -8 -8h-240c-4.41992 0 -8 3.58008 -8 8c0 22.0898 17.9102 40 40 40h56v192.36l-214.05 214.04c-21.25 21.2598 -6.2002 57.5996 23.8496 57.5996h444.4
c30.0498 0 45.0996 -36.3398 23.8496 -57.5996z" />
    <glyph glyph-name="music" unicode="&#xf001;" 
d="M470.38 446.49c3.03613 0.957031 6.26953 1.47949 9.62012 1.47949c17.6514 0 31.9834 -14.3223 32 -31.9697v-352c0 -35.3496 -43 -64 -96 -64s-96 28.6602 -96 64s43 64 96 64c11.0361 -0.0605469 21.7158 -1.4248 32 -3.92969v184.609l-256 -75v-233.68
c0 -35.3398 -43 -64 -96 -64s-96 28.6602 -96 64s43 64 96 64c11.0352 -0.0625 21.7139 -1.42285 32 -3.91992v261.41c0.00878906 14.3125 9.43359 26.4336 22.4102 30.5098z" />
    <glyph glyph-name="search" unicode="&#xf002;" 
d="M505 5.2998c9.2998 -9.39941 9.2998 -24.5996 -0.0996094 -34l-28.3008 -28.2998c-9.2998 -9.40039 -24.5 -9.40039 -33.8994 0l-99.7002 99.7002c-4.5 4.5 -7 10.5996 -7 17v16.2998c-35.2998 -27.5996 -79.7002 -44 -128 -44c-114.9 0 -208 93.0996 -208 208
s93.0996 208 208 208s208 -93.0996 208 -208c0 -48.2998 -16.4004 -92.7002 -44 -128h16.2998c6.40039 0 12.5 -2.5 17 -7zM208 112c70.7998 0 128 57.2998 128 128c0 70.7998 -57.2998 128 -128 128c-70.7998 0 -128 -57.2998 -128 -128c0 -70.7998 57.2998 -128 128 -128z
" />
    <glyph glyph-name="heart" unicode="&#xf004;" 
d="M462.3 385.4c62.7998 -53.6006 66.1006 -149.801 9.7998 -207.9l-193.5 -199.8c-12.5 -12.9004 -32.7998 -12.9004 -45.2998 0l-193.5 199.8c-56.2002 58.0996 -52.8994 154.3 9.90039 207.9c54.7998 46.6992 136.399 38.2998 186.6 -13.6006l19.7002 -20.2998
l19.7002 20.2998c50.2998 51.9004 131.8 60.2998 186.6 13.6006z" />
    <glyph glyph-name="star" unicode="&#xf005;" horiz-adv-x="576" 
d="M259.3 430.2c11.7998 23.8994 45.7002 23.5996 57.4004 0l65.2998 -132.4l146.1 -21.2998c26.2002 -3.7998 36.7002 -36.0996 17.7002 -54.5996l-105.7 -103l25 -145.5c4.5 -26.3008 -23.1992 -45.9004 -46.3994 -33.7002l-130.7 68.7002l-130.7 -68.7002
c-23.2002 -12.2998 -50.8994 7.39941 -46.3994 33.7002l25 145.5l-105.7 103c-19 18.5 -8.5 50.7998 17.7002 54.5996l146.1 21.2998z" />
    <glyph glyph-name="user" unicode="&#xf007;" horiz-adv-x="448" 
d="M224 192c-70.7002 0 -128 57.2998 -128 128s57.2998 128 128 128s128 -57.2998 128 -128s-57.2998 -128 -128 -128zM313.6 160c74.2002 0 134.4 -60.2002 134.4 -134.4v-41.5996c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v41.5996
c0 74.2002 60.2002 134.4 134.4 134.4h16.6992c22.3008 -10.2002 46.9004 -16 72.9004 -16s50.7002 5.7998 72.9004 16h16.6992z" />
    <glyph glyph-name="film" unicode="&#xf008;" 
d="M488 384c13.2998 0 24 -10.7002 24 -24v-336c0 -13.2998 -10.7002 -24 -24 -24h-8v20c0 6.59961 -5.40039 12 -12 12h-40c-6.59961 0 -12 -5.40039 -12 -12v-20h-320v20c0 6.59961 -5.40039 12 -12 12h-40c-6.59961 0 -12 -5.40039 -12 -12v-20h-8
c-13.2998 0 -24 10.7002 -24 24v336c0 13.2998 10.7002 24 24 24h8v-20c0 -6.59961 5.40039 -12 12 -12h40c6.59961 0 12 5.40039 12 12v20h320v-20c0 -6.59961 5.40039 -12 12 -12h40c6.59961 0 12 5.40039 12 12v20h8zM96 76v40c0 6.59961 -5.40039 12 -12 12h-40
c-6.59961 0 -12 -5.40039 -12 -12v-40c0 -6.59961 5.40039 -12 12 -12h40c6.59961 0 12 5.40039 12 12zM96 172v40c0 6.59961 -5.40039 12 -12 12h-40c-6.59961 0 -12 -5.40039 -12 -12v-40c0 -6.59961 5.40039 -12 12 -12h40c6.59961 0 12 5.40039 12 12zM96 268v40
c0 6.59961 -5.40039 12 -12 12h-40c-6.59961 0 -12 -5.40039 -12 -12v-40c0 -6.59961 5.40039 -12 12 -12h40c6.59961 0 12 5.40039 12 12zM368 60v96c0 6.59961 -5.40039 12 -12 12h-200c-6.59961 0 -12 -5.40039 -12 -12v-96c0 -6.59961 5.40039 -12 12 -12h200
c6.59961 0 12 5.40039 12 12zM368 228v96c0 6.59961 -5.40039 12 -12 12h-200c-6.59961 0 -12 -5.40039 -12 -12v-96c0 -6.59961 5.40039 -12 12 -12h200c6.59961 0 12 5.40039 12 12zM480 76v40c0 6.59961 -5.40039 12 -12 12h-40c-6.59961 0 -12 -5.40039 -12 -12v-40
c0 -6.59961 5.40039 -12 12 -12h40c6.59961 0 12 5.40039 12 12zM480 172v40c0 6.59961 -5.40039 12 -12 12h-40c-6.59961 0 -12 -5.40039 -12 -12v-40c0 -6.59961 5.40039 -12 12 -12h40c6.59961 0 12 5.40039 12 12zM480 268v40c0 6.59961 -5.40039 12 -12 12h-40
c-6.59961 0 -12 -5.40039 -12 -12v-40c0 -6.59961 5.40039 -12 12 -12h40c6.59961 0 12 5.40039 12 12z" />
    <glyph glyph-name="th-large" unicode="&#xf009;" 
d="M296 416h192c13.2549 0 24 -10.7451 24 -24v-160c0 -13.2549 -10.7451 -24 -24 -24h-192c-13.2549 0 -24 10.7451 -24 24v160c0 13.2549 10.7451 24 24 24zM216 416c13.2549 0 24 -10.7451 24 -24v-160c0 -13.2549 -10.7451 -24 -24 -24h-192
c-13.2549 0 -24 10.7451 -24 24v160c0 13.2549 10.7451 24 24 24h192zM0 152c0 13.2549 10.7451 24 24 24h192c13.2549 0 24 -10.7451 24 -24v-160c0 -13.2549 -10.7451 -24 -24 -24h-192c-13.2549 0 -24 10.7451 -24 24v160zM296 -32c-13.2549 0 -24 10.7451 -24 24v160
c0 13.2549 10.7451 24 24 24h192c13.2549 0 24 -10.7451 24 -24v-160c0 -13.2549 -10.7451 -24 -24 -24h-192z" />
    <glyph glyph-name="th" unicode="&#xf00a;" 
d="M149.333 392v-80c0 -13.2549 -10.7451 -24 -24 -24h-101.333c-13.2549 0 -24 10.7451 -24 24v80c0 13.2549 10.7451 24 24 24h101.333c13.2549 0 24 -10.7451 24 -24zM330.667 152c0 -13.2549 -10.7451 -24 -24.001 -24h-101.333c-13.2549 0 -24 10.7451 -24 24v80
c0 13.2549 10.7451 24 24 24h101.334c13.2549 0 24 -10.7451 24 -24v-80zM362.667 392c0 13.2549 10.7451 24 24 24h101.333c13.2549 0 24 -10.7451 24 -24v-80c0 -13.2549 -10.7451 -24 -24 -24h-101.333c-13.2549 0 -24 10.7451 -24 24v80zM330.667 312
c0 -13.2549 -10.7451 -24 -24.001 -24h-101.333c-13.2549 0 -24 10.7451 -24 24v80c0 13.2549 10.7451 24 24 24h101.334c13.2549 0 24 -10.7451 24 -24v-80zM125.333 256c13.2549 0 24 -10.7451 24 -24v-80c0 -13.2549 -10.7451 -24 -24 -24h-101.333
c-13.2549 0 -24 10.7451 -24 24v80c0 13.2549 10.7451 24 24 24h101.333zM0 72c0 13.2549 10.7451 24 24 24h101.333c13.2549 0 24 -10.7451 24 -24v-80c0 -13.2549 -10.7451 -24 -24 -24h-101.333c-13.2549 0 -24 10.7451 -24 24v80zM386.667 128
c-13.2549 0 -24 10.7451 -24 24v80c0 13.2549 10.7451 24 24 24h101.333c13.2549 0 24 -10.7451 24 -24v-80c0 -13.2549 -10.7451 -24 -24 -24h-101.333zM386.667 -32c-13.2549 0 -24 10.7451 -24 24v80c0 13.2549 10.7451 24 24 24h101.333c13.2549 0 24 -10.7451 24 -24
v-80c0 -13.2549 -10.7451 -24 -24 -24h-101.333zM181.333 72c0 13.2549 10.7451 24 24 24h101.333c13.2549 0 24 -10.7451 24 -24v-80c0 -13.2549 -10.7451 -24 -24 -24h-101.333c-13.2549 0 -24 10.7451 -24 24v80z" />
    <glyph glyph-name="th-list" unicode="&#xf00b;" 
d="M149.333 232v-80c0 -13.2549 -10.7451 -24 -24 -24h-101.333c-13.2549 0 -24 10.7451 -24 24v80c0 13.2549 10.7451 24 24 24h101.333c13.2549 0 24 -10.7451 24 -24zM0 72c0 13.2549 10.7451 24 24 24h101.333c13.2549 0 24 -10.7451 24 -24v-80
c0 -13.2549 -10.7451 -24 -24 -24h-101.333c-13.2549 0 -24 10.7451 -24 24v80zM125.333 416c13.2549 0 24 -10.7451 24 -24v-80c0 -13.2549 -10.7451 -24 -24 -24h-101.333c-13.2549 0 -24 10.7451 -24 24v80c0 13.2549 10.7451 24 24 24h101.333zM205.333 -32
c-13.2549 0 -24 10.7451 -24 24v80c0 13.2549 10.7451 24 24 24h282.667c13.2549 0 24 -10.7451 24 -24v-80c0 -13.2549 -10.7451 -24 -24 -24h-282.667zM181.333 392c0 13.2549 10.7451 24 24 24h282.667c13.2549 0 24 -10.7451 24 -24v-80
c0 -13.2549 -10.7451 -24 -24 -24h-282.667c-13.2549 0 -24 10.7451 -24 24v80zM205.333 128c-13.2549 0 -24 10.7451 -24 24v80c0 13.2549 10.7451 24 24 24h282.667c13.2549 0 24 -10.7451 24 -24v-80c0 -13.2549 -10.7451 -24 -24 -24h-282.667z" />
    <glyph glyph-name="check" unicode="&#xf00c;" 
d="M173.898 8.5957l-166.4 166.4c-9.99707 9.99707 -9.99707 26.2061 0 36.2041l36.2031 36.2041c9.99707 9.99805 26.207 9.99805 36.2041 0l112.095 -112.095l240.095 240.095c9.99707 9.99707 26.207 9.99707 36.2041 0l36.2031 -36.2041
c9.99707 -9.99707 9.99707 -26.2061 0 -36.2041l-294.4 -294.401c-9.99805 -9.99707 -26.207 -9.99707 -36.2031 0.000976562z" />
    <glyph glyph-name="times" unicode="&#xf00d;" horiz-adv-x="352" 
d="M242.72 192l100.07 -100.07c12.2803 -12.29 12.2803 -32.1992 0 -44.4795l-22.2402 -22.2402c-12.2803 -12.2803 -32.2002 -12.2803 -44.4795 0l-100.07 100.07l-100.07 -100.07c-12.2793 -12.2803 -32.1992 -12.2803 -44.4795 0l-22.2402 22.2402
c-12.2803 12.29 -12.2803 32.2002 0 44.4795l100.07 100.07l-100.07 100.07c-12.2803 12.29 -12.2803 32.1992 0 44.4795l22.2402 22.2402c12.29 12.2803 32.2002 12.2803 44.4795 0l100.07 -100.07l100.07 100.07c12.29 12.2803 32.1992 12.2803 44.4795 0
l22.2402 -22.2402c12.2803 -12.29 12.2803 -32.2002 0 -44.4795z" />
    <glyph glyph-name="search-plus" unicode="&#xf00e;" 
d="M304 256v-32c0 -6.59961 -5.40039 -12 -12 -12h-56v-56c0 -6.59961 -5.40039 -12 -12 -12h-32c-6.59961 0 -12 5.40039 -12 12v56h-56c-6.59961 0 -12 5.40039 -12 12v32c0 6.59961 5.40039 12 12 12h56v56c0 6.59961 5.40039 12 12 12h32c6.59961 0 12 -5.40039 12 -12
v-56h56c6.59961 0 12 -5.40039 12 -12zM505 -28.7002l-28.2998 -28.2998c-9.40039 -9.40039 -24.6006 -9.40039 -33.9004 0l-99.7998 99.7002c-4.5 4.5 -7 10.5996 -7 17v16.2998c-35.2998 -27.5996 -79.7002 -44 -128 -44c-114.9 0 -208 93.0996 -208 208
s93.0996 208 208 208s208 -93.0996 208 -208c0 -48.2998 -16.4004 -92.7002 -44 -128h16.2998c6.40039 0 12.5 -2.5 17 -7l99.7002 -99.7002c9.2998 -9.39941 9.2998 -24.5996 0 -34zM344 240c0 75.2002 -60.7998 136 -136 136s-136 -60.7998 -136 -136
s60.7998 -136 136 -136s136 60.7998 136 136z" />
    <glyph glyph-name="search-minus" unicode="&#xf010;" 
d="M304 256v-32c0 -6.59961 -5.40039 -12 -12 -12h-168c-6.59961 0 -12 5.40039 -12 12v32c0 6.59961 5.40039 12 12 12h168c6.59961 0 12 -5.40039 12 -12zM505 -28.7002l-28.2998 -28.2998c-9.40039 -9.40039 -24.6006 -9.40039 -33.9004 0l-99.7998 99.7002
c-4.5 4.5 -7 10.5996 -7 17v16.2998c-35.2998 -27.5996 -79.7002 -44 -128 -44c-114.9 0 -208 93.0996 -208 208s93.0996 208 208 208s208 -93.0996 208 -208c0 -48.2998 -16.4004 -92.7002 -44 -128h16.2998c6.40039 0 12.5 -2.5 17 -7l99.7002 -99.7002
c9.2998 -9.39941 9.2998 -24.5996 0 -34zM344 240c0 75.2002 -60.7998 136 -136 136s-136 -60.7998 -136 -136s60.7998 -136 136 -136s136 60.7998 136 136z" />
    <glyph glyph-name="power-off" unicode="&#xf011;" 
d="M400 393.9c63 -45 104 -118.601 104 -201.9c0 -136.8 -110.8 -247.7 -247.5 -248c-136.5 -0.299805 -248.3 111 -248.5 247.6c-0.0996094 83.3008 40.9004 157.101 103.8 202.2c11.7002 8.2998 28 4.7998 35 -7.7002l15.7998 -28.0996
c5.90039 -10.5 3.10059 -23.7998 -6.59961 -31c-41.5 -30.7998 -68 -79.5996 -68 -134.9c-0.0996094 -92.2998 74.5 -168.1 168 -168.1c91.5996 0 168.6 74.2002 168 169.1c-0.299805 51.8008 -24.7002 101.801 -68.0996 134c-9.7002 7.2002 -12.4004 20.5 -6.5 30.9004
l15.7998 28.0996c7 12.4004 23.2002 16.1006 34.7998 7.80078zM296 184c0 -13.2998 -10.7002 -24 -24 -24h-32c-13.2998 0 -24 10.7002 -24 24v240c0 13.2998 10.7002 24 24 24h32c13.2998 0 24 -10.7002 24 -24v-240z" />
    <glyph glyph-name="signal" unicode="&#xf012;" horiz-adv-x="640" 
d="M216 160c8.83984 0 16 -7.16016 16 -16v-192c0 -8.83984 -7.16016 -16 -16 -16h-48c-8.83984 0 -16 7.16016 -16 16v192c0 8.83984 7.16016 16 16 16h48zM88 64c8.83984 0 16 -7.16016 16 -16v-96c0 -8.83984 -7.16016 -16 -16 -16h-48c-8.83984 0 -16 7.16016 -16 16v96
c0 8.83984 7.16016 16 16 16h48zM344 256c8.83984 0 16 -7.16016 16 -16v-288c0 -8.83984 -7.16016 -16 -16 -16h-48c-8.83984 0 -16 7.16016 -16 16v288c0 8.83984 7.16016 16 16 16h48zM472 352c8.83984 0 16 -7.16016 16 -16v-384c0 -8.83984 -7.16016 -16 -16 -16h-48
c-8.83984 0 -16 7.16016 -16 16v384c0 8.83984 7.16016 16 16 16h48zM600 448c8.83984 0 16 -7.16016 16 -16v-480c0 -8.83984 -7.16016 -16 -16 -16h-48c-8.83984 0 -16 7.16016 -16 16v480c0 8.83984 7.16016 16 16 16h48z" />
    <glyph glyph-name="cog" unicode="&#xf013;" 
d="M487.4 132.3c4.89941 -2.7998 7.09961 -8.59961 5.59961 -14.0996c-11.0996 -35.7002 -30 -67.9004 -54.7002 -94.6006c-3.7998 -4.19922 -9.89941 -5.09961 -14.7998 -2.2998l-42.5996 24.6006c-18 -15.3008 -38.6006 -27.2002 -60.8008 -35.1006v-49.2002
c0 -5.59961 -3.89941 -10.5 -9.39941 -11.6992c-34.9004 -7.80078 -72.5 -8.2002 -109.2 0c-5.5 1.19922 -9.40039 6.09961 -9.40039 11.6992v49.2002c-22.2998 7.7998 -42.8994 19.7002 -60.7998 35.1006l-42.5996 -24.6006c-4.7998 -2.7998 -11 -1.7998 -14.7998 2.2998
c-24.7002 26.8008 -43.6006 59 -54.7002 94.6006c-1.60059 5.39941 0.599609 11.2002 5.5 14l42.5996 24.5996c-4.2998 23.2002 -4.2998 47 0 70.2002l-42.5996 24.5996c-4.90039 2.80078 -7.2002 8.60059 -5.5 14c11.0996 35.7002 30 67.9004 54.7002 94.6006
c3.7998 4.2002 9.89941 5.09961 14.7998 2.2998l42.5 -24.5996c18 15.2998 38.5996 27.1992 60.7998 35.0996v49.2002c0 5.59961 3.90039 10.5 9.40039 11.7002c34.8994 7.7998 72.5 8.19922 109.199 0c5.5 -1.2002 9.40039 -6.10059 9.40039 -11.7002v-49.1006
c22.2998 -7.7998 42.9004 -19.6992 60.7998 -35.0996l42.6006 24.5996c4.7998 2.80078 11 1.80078 14.7998 -2.2998c24.7002 -26.7998 43.5996 -59 54.7002 -94.5996c1.59961 -5.40039 -0.600586 -11.2002 -5.5 -14l-42.6006 -24.6006
c4.2998 -23.1992 4.2998 -47 0 -70.1992zM256 112c44.0996 0 80 35.9004 80 80s-35.9004 80 -80 80s-80 -35.9004 -80 -80s35.9004 -80 80 -80z" />
    <glyph glyph-name="home" unicode="&#xf015;" horiz-adv-x="576" 
d="M280.37 299.74c2.09082 1.68555 4.76562 2.69434 7.6582 2.69434s5.55078 -1.00879 7.6416 -2.69434l184.33 -151.74v-164c0 -8.83105 -7.16895 -16 -16 -16l-112.02 0.30957c-8.83105 0 -16.001 7.16895 -16.001 15.999c0 0.0175781 0 0.0341797 0.000976562 0.0517578
v95.6396c0 8.83105 -7.16992 16 -16 16h-64c-8.83105 0 -16 -7.16895 -16 -16v-95.71c0 -8.80371 -7.12695 -15.9561 -15.9209 -16l-112.06 -0.290039c-8.83105 0 -16 7.16895 -16 16v163.89zM571.6 196.53c2.70703 -2.20117 4.42578 -5.56152 4.42578 -9.31836
c0 -2.88867 -1.02246 -5.54004 -2.72559 -7.6123l-25.5 -31c-2.20117 -2.66309 -5.53418 -4.35059 -9.25684 -4.35059c-2.90332 0 -5.56641 1.0332 -7.64258 2.75098l-235.23 193.74c-2.09082 1.68555 -4.7666 2.69434 -7.6582 2.69434
c-2.89258 0 -5.55078 -1.00879 -7.6416 -2.69434l-235.22 -193.74c-2.0752 -1.71387 -4.73926 -2.75586 -7.63867 -2.75586c-3.73242 0 -7.07031 1.70898 -9.27148 4.38574l-25.5 31c-1.71875 2.07617 -2.7627 4.74414 -2.7627 7.64648
c0 3.72266 1.69824 7.05176 4.3623 9.25391l253.13 208.47c8.29102 6.82227 18.9668 10.9209 30.5312 10.9209s22.1787 -4.09863 30.4688 -10.9209l89.5303 -73.6602v72.6104c0 6.62305 5.37695 12 12 12h56c6.62305 0 12 -5.37695 12 -12v-138.51z" />
    <glyph glyph-name="clock" unicode="&#xf017;" 
d="M256 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM348.49 127c2.19531 2.73926 3.52637 6.21973 3.52637 10c0 5.05566 -2.35059 9.56738 -6.0166 12.5l-58 42.5v144c0 8.83105 -7.16895 16 -16 16h-32
c-8.83105 0 -16 -7.16895 -16 -16v-155.55c0 -12.6338 5.8418 -23.8975 15 -31.2305l67 -49.7197v0c2.7373 -2.19043 6.21387 -3.51758 9.98926 -3.51758c5.05566 0 9.56738 2.35059 12.501 6.01758l20 25v0z" />
    <glyph glyph-name="road" unicode="&#xf018;" horiz-adv-x="576" 
d="M573.19 45.3301c9.25977 -21.1904 -5.5 -45.3301 -27.7305 -45.3301h-196.84l-10.3105 97.6797c-0.859375 8.14062 -7.71973 14.3203 -15.9092 14.3203h-68.8008c-8.18945 0 -15.0498 -6.17969 -15.9092 -14.3203l-10.3105 -97.6797h-196.84
c-22.2305 0 -36.9902 24.1396 -27.7402 45.3301l139.79 320c4.96973 11.3799 15.7998 18.6699 27.7305 18.6699h97.5898l-2.4502 -23.1602c-0.5 -4.71973 3.20996 -8.83984 7.95996 -8.83984h29.1602c4.75 0 8.45996 4.12012 7.95996 8.83984l-2.4502 23.1602h97.5898
c11.9199 0 22.75 -7.29004 27.7207 -18.6699zM260.4 312.84l-4.59082 -43.5801c-0.75 -7.08984 4.80078 -13.2598 11.9307 -13.2598h40.54c7.12012 0 12.6797 6.16992 11.9297 13.2598l-4.59961 43.5801c-0.430664 4.07031 -3.87012 7.16016 -7.95996 7.16016h-39.29
c-0.00195312 0 -0.00390625 -0.0078125 -0.00488281 -0.0078125c-4.12891 0 -7.53125 -3.13477 -7.95508 -7.15234zM315.64 144c9.5 0 16.9102 8.23047 15.9102 17.6797l-5.06934 48c-0.860352 8.14062 -7.7207 14.3203 -15.9102 14.3203h-45.1504
c-8.18945 0 -15.0498 -6.17969 -15.9102 -14.3203l-5.06934 -48c-1 -9.44922 6.40918 -17.6797 15.9092 -17.6797h55.29z" />
    <glyph glyph-name="download" unicode="&#xf019;" 
d="M216 448h80c13.2998 0 24 -10.7002 24 -24v-168h87.7002c17.7998 0 26.7002 -21.5 14.0996 -34.0996l-152.1 -152.2c-7.5 -7.5 -19.7998 -7.5 -27.2998 0l-152.301 152.2c-12.5996 12.5996 -3.69922 34.0996 14.1006 34.0996h87.7998v168c0 13.2998 10.7002 24 24 24z
M512 72v-112c0 -13.2998 -10.7002 -24 -24 -24h-464c-13.2998 0 -24 10.7002 -24 24v112c0 13.2998 10.7002 24 24 24h146.7l49 -49c20.0996 -20.0996 52.5 -20.0996 72.5996 0l49 49h146.7c13.2998 0 24 -10.7002 24 -24zM388 -16c0 11 -9 20 -20 20s-20 -9 -20 -20
s9 -20 20 -20s20 9 20 20zM452 -16c0 11 -9 20 -20 20s-20 -9 -20 -20s9 -20 20 -20s20 9 20 20z" />
    <glyph glyph-name="inbox" unicode="&#xf01c;" horiz-adv-x="576" 
d="M567.938 204.092c5.07422 -7.61035 8.06152 -16.7998 8.06152 -26.625v-129.467c0 -26.5098 -21.4902 -48 -48 -48h-480c-26.5098 0 -48 21.4902 -48 48v129.467c0 9.8252 2.9873 19.0146 8.06152 26.625l105.689 158.534c8.60742 12.9102 23.2725 21.374 39.9385 21.374
h268.621c16.667 0 31.332 -8.46387 39.9395 -21.374zM162.252 320l-85.334 -128h123.082l32 -64h112l32 64h123.082l-85.333 128h-251.497z" />
    <glyph glyph-name="redo" unicode="&#xf01e;" 
d="M500.33 448c6.62305 0 12 -5.37695 12 -12v-200.34c0 -6.62305 -5.37695 -12 -12 -12h-200.33c-6.62305 0 -12 5.37695 -12 12v47.4102c0 0.00390625 -0.00878906 0.00878906 -0.00878906 0.0136719c0 6.62305 5.37695 12 12 12
c0.194336 0 0.386719 -0.00488281 0.579102 -0.0136719l101.529 -4.87012c-31.6084 47.0322 -85.1172 77.8594 -145.992 77.8594c-97.1367 0 -176 -78.8633 -176 -176s78.8633 -176 176 -176c44.502 0 85.168 16.5518 116.173 43.8301
c2.10938 1.84375 4.87793 2.96582 7.89746 2.96582c3.31055 0 6.31055 -1.34375 8.48242 -3.51562l34 -34c2.17383 -2.17188 3.52246 -5.17285 3.52246 -8.48633c0 -3.55176 -1.54688 -6.74512 -4.00293 -8.94336c-43.8477 -39.6924 -102.079 -63.9102 -165.824 -63.9102
h-0.355469c-136.9 0 -247.9 110.93 -248 247.81c-0.0996094 136.66 111.34 248.19 248 248.19c0.0927734 0 0.116211 0.140625 0.208984 0.140625c75.5918 0 143.312 -33.9727 188.711 -87.4707l-4 82.7598c-0.00878906 0.192383 -0.0136719 0.375977 -0.0136719 0.570312
c0 6.62305 5.37695 12 12 12h0.0136719h47.4102z" />
    <glyph glyph-name="sync" unicode="&#xf021;" 
d="M440.65 435.43c-0.00976562 0.192383 -0.0136719 0.375977 -0.0136719 0.570312c0 6.62109 5.37305 11.9961 11.9932 12h47.3701c6.62305 0 12 -5.37695 12 -12v-200.35c0 -6.62305 -5.37695 -12 -12 -12h-200.22c-6.62305 0 -12 5.37695 -12 12v47.4092
c0 0.00488281 -0.00878906 0.00976562 -0.00878906 0.0136719c0 6.62305 5.37695 12 12 12c0.194336 0 0.386719 -0.00390625 0.578125 -0.0136719l101.46 -4.85938c-31.5938 46.9941 -85.1406 77.6738 -145.973 77.6738c-82.8662 0 -152.428 -57.4229 -171.027 -134.614
c-1.24219 -5.29688 -5.99707 -9.25391 -11.6699 -9.25977h-49.0498c-6.62305 0 -12 5.36719 -12 11.9893c0 0.748047 0.0693359 1.48047 0.200195 2.19043c21.6201 114.9 122.44 201.82 243.54 201.82c0.0966797 0 0.123047 0.141602 0.219727 0.141602
c75.5615 0 143.248 -33.9814 188.601 -87.4814zM255.83 16c0.015625 0 0.0185547 0.0898438 0.0332031 0.0898438c82.8701 0 152.43 57.4434 170.997 134.65c1.24219 5.29688 5.99707 9.25391 11.6699 9.25977h49.0498c6.62305 0 12 -5.36719 12 -11.9893
c0 -0.748047 -0.0693359 -1.48047 -0.200195 -2.19043c-21.6201 -114.9 -122.439 -201.82 -243.55 -201.82c-0.0800781 0 -0.0908203 -0.140625 -0.170898 -0.140625c-75.4814 0 -143.106 33.9082 -188.459 87.3105l4.14941 -82.5703
c0.0107422 -0.201172 0.015625 -0.395508 0.015625 -0.599609c0 -6.62305 -5.37695 -12 -12 -12h-0.015625h-47.3496c-6.62305 0 -12 5.37695 -12 12v200.33c0 6.62305 5.37695 12 12 12h200.2c6.62305 0 12 -5.37695 12 -12v-47.4004
c0 -0.00390625 0.0078125 -0.00878906 0.0078125 -0.0136719c0 -6.62305 -5.37695 -12 -12 -12c-0.193359 0 -0.386719 0.00488281 -0.578125 0.0136719l-101.8 4.87012c31.5254 -47.0088 85.0449 -77.7998 145.847 -77.7998h0.15332z" />
    <glyph glyph-name="list-alt" unicode="&#xf022;" 
d="M464 -32h-416c-26.5098 0 -48 21.4902 -48 48v352c0 26.5098 21.4902 48 48 48h416c26.5098 0 48 -21.4902 48 -48v-352c0 -26.5098 -21.4902 -48 -48 -48zM128 328c-22.0908 0 -40 -17.9092 -40 -40s17.9092 -40 40 -40s40 17.9092 40 40s-17.9092 40 -40 40zM128 232
c-22.0908 0 -40 -17.9092 -40 -40s17.9092 -40 40 -40s40 17.9092 40 40s-17.9092 40 -40 40zM128 136c-22.0908 0 -40 -17.9092 -40 -40s17.9092 -40 40 -40s40 17.9092 40 40s-17.9092 40 -40 40zM416 272v32c0 6.62695 -5.37305 12 -12 12h-200
c-6.62695 0 -12 -5.37305 -12 -12v-32c0 -6.62695 5.37305 -12 12 -12h200c6.62695 0 12 5.37305 12 12zM416 176v32c0 6.62695 -5.37305 12 -12 12h-200c-6.62695 0 -12 -5.37305 -12 -12v-32c0 -6.62695 5.37305 -12 12 -12h200c6.62695 0 12 5.37305 12 12zM416 80v32
c0 6.62695 -5.37305 12 -12 12h-200c-6.62695 0 -12 -5.37305 -12 -12v-32c0 -6.62695 5.37305 -12 12 -12h200c6.62695 0 12 5.37305 12 12z" />
    <glyph glyph-name="lock" unicode="&#xf023;" horiz-adv-x="448" 
d="M400 224c26.5 0 48 -21.5 48 -48v-192c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v192c0 26.5 21.5 48 48 48h24v72c0 83.7998 68.2002 152 152 152s152 -68.2002 152 -152v-72h24zM296 224v72c0 39.7002 -32.2998 72 -72 72s-72 -32.2998 -72 -72v-72h144
z" />
    <glyph glyph-name="flag" unicode="&#xf024;" 
d="M349.565 349.217c40.4951 0 82.6113 15.9062 116.949 31.8545c21.2168 9.85352 45.4854 -5.62305 45.4854 -29.0166v-243.1c0 -10.5264 -5.16016 -20.4072 -13.8428 -26.3584c-35.8379 -24.5635 -74.3359 -40.8574 -122.505 -40.8574
c-67.373 0 -111.629 34.7832 -165.218 34.7832c-50.8525 0 -86.124 -10.0586 -114.435 -22.1221v-94.4004c0 -13.2549 -10.7451 -24 -24 -24h-16c-13.2549 0 -24 10.7451 -24 24v386.055c-14.5029 10.1201 -24 26.9189 -24 45.9453
c0 31.7041 26.3447 57.2539 58.3379 55.9521c28.4678 -1.1582 51.7793 -23.9668 53.5508 -52.4033c0.0761719 -1.19141 0.0927734 -2.37305 0.0927734 -3.58301c0 -7.03711 -1.30176 -13.7734 -3.67871 -19.9785c20.7363 7.62891 43.0898 12.0127 68.0449 12.0127
c67.373 0 111.63 -34.7832 165.218 -34.7832z" />
    <glyph glyph-name="headphones" unicode="&#xf025;" 
d="M256 416c141.504 0 256 -114.521 256 -256v-48c0 -12.5312 -7.1875 -23.3711 -17.6904 -28.6221l-14.3818 -7.19141c-2.01074 -60.0889 -51.3486 -108.187 -111.928 -108.187h-24c-13.2549 0 -24 10.7451 -24 24v176c0 13.2549 10.7451 24 24 24h24
c31.3418 0 59.6709 -12.8789 80 -33.627v1.62695c0 105.869 -86.1309 192 -192 192s-192 -86.1309 -192 -192v-1.62695c20.3291 20.748 48.6582 33.627 80 33.627h24c13.2549 0 24 -10.7451 24 -24v-176c0 -13.2549 -10.7451 -24 -24 -24h-24
c-60.5791 0 -109.917 48.0967 -111.928 108.187l-14.3828 7.19141c-10.502 5.25098 -17.6895 16.0908 -17.6895 28.6221v48c0 141.504 114.52 256 256 256z" />
    <glyph glyph-name="volume-off" unicode="&#xf026;" horiz-adv-x="256" 
d="M215 377c15 15 41 4.46973 41 -17v-336c0 -21.4697 -26 -32 -41 -17l-88.9404 89h-102.06c-13.2461 0 -24 10.7539 -24 24v144c0 13.2461 10.7539 24 24 24h102z" />
    <glyph glyph-name="volume-down" unicode="&#xf027;" horiz-adv-x="384" 
d="M215.03 375.96c15.0098 15 40.9697 4.49023 40.9697 -16.9795v-335.961c0 -21.4395 -25.9404 -32 -40.9697 -16.9697l-88.9707 88.9502h-102.06c-13.2598 0 -24 10.75 -24 24v144c0 13.2598 10.7402 24 24 24h102.06zM338.23 267.88
c28.2393 -15.5498 45.7793 -44.9902 45.7793 -76.8701s-17.54 -61.3301 -45.7695 -76.8799c-11.5605 -6.34961 -26.1807 -2.20996 -32.6104 9.4502c-6.38965 11.6104 -2.16016 26.2002 9.4502 32.6104c12.9004 7.08984 20.9199 20.4297 20.9199 34.8096
s-8.01953 27.7197 -20.9297 34.8203c-11.6104 6.41016 -15.8398 21 -9.4502 32.6094c6.41992 11.6104 21.0303 15.7803 32.6104 9.4502z" />
    <glyph glyph-name="volume-up" unicode="&#xf028;" horiz-adv-x="576" 
d="M215.03 376.95c15.0098 15.0098 40.9697 4.49023 40.9697 -16.9697v-335.961c0 -21.4395 -25.9404 -32 -40.9697 -16.9697l-88.9707 88.9502h-102.06c-13.2598 0 -24 10.75 -24 24v144c0 13.2598 10.7402 24 24 24h102.06zM448.35 428.03
c79.9199 -52.46 127.65 -140.7 127.65 -236.03s-47.7305 -183.58 -127.65 -236.04c-11.5801 -7.61035 -26.4697 -3.75977 -33.5098 6.9502c-7.33984 11.1602 -4.21973 26.1797 6.9502 33.5c66.2695 43.4902 105.82 116.6 105.82 195.58
c0 78.9795 -39.5508 152.09 -105.82 195.58c-11.1699 7.33008 -14.29 22.3398 -6.9502 33.5098c7.33008 11.1895 22.3398 14.2803 33.5098 6.9502zM480 192c0 -63.54 -32.0596 -121.94 -85.7695 -156.24c-12 -7.67969 -26.6104 -2.89941 -33.1201 7.45996
c-7.09082 11.29 -3.78027 26.2207 7.40918 33.3604c39.75 25.3896 63.4805 68.5303 63.4805 115.42s-23.7305 90.0303 -63.4805 115.42c-11.1895 7.15039 -14.5 22.0801 -7.40918 33.3604c7.08984 11.2793 21.9297 14.5996 33.1201 7.45996
c53.71 -34.2998 85.7695 -92.71 85.7695 -156.24zM338.23 268.87c28.2393 -15.54 45.7793 -44.9805 45.7793 -76.8604s-17.54 -61.3301 -45.7695 -76.8799c-11.5605 -6.34961 -26.1807 -2.20996 -32.6104 9.4502c-6.38965 11.6104 -2.16016 26.2002 9.4502 32.6104
c12.9004 7.08984 20.9199 20.4297 20.9199 34.8096c0 14.3701 -8.01953 27.7197 -20.9297 34.8096c-11.6104 6.41016 -15.8398 21 -9.4502 32.6104c6.41992 11.6104 21.0303 15.7803 32.6104 9.4502z" />
    <glyph glyph-name="qrcode" unicode="&#xf029;" horiz-adv-x="448" 
d="M0 224v192h192v-192h-192zM64 352v-64h64v64h-64zM256 416h192v-192h-192v192zM384 288v64h-64v-64h64zM0 -32v192h192v-192h-192zM64 96v-64h64v64h-64zM416 160h32v-128h-96v32h-32v-96h-64v192h96v-32h64v32zM416 0h32v-32h-32v32zM352 0h32v-32h-32v32z" />
    <glyph glyph-name="barcode" unicode="&#xf02a;" 
d="M0 0v384h18v-384h-18zM26.8574 0.273438v383.727h9.14258v-383.727h-9.14258zM54 0.273438v383.727h8.85742v-383.727h-8.85742zM98.8574 0.273438v383.727h8.85645v-383.727h-8.85645zM134.857 0.273438v383.727h17.7139v-383.727h-17.7139zM179.714 0.273438v383.727
h8.85742v-383.727h-8.85742zM197.714 0.273438v383.727h8.85742v-383.727h-8.85742zM215.714 0.273438v383.727h8.85742v-383.727h-8.85742zM251.429 0.273438v383.727h18v-383.727h-18zM296.286 0.273438v383.727h18v-383.727h-18zM332.285 0.273438v383.727h18.001
v-383.727h-18.001zM368.286 0.273438v383.727h18.001v-383.727h-18.001zM395.143 0.273438v383.727h18v-383.727h-18zM440.286 0.273438v383.727h26.8564v-383.727h-26.8564zM476 0.273438v383.727h9.14258v-383.727h-9.14258zM494 0v384h18v-384h-18z" />
    <glyph glyph-name="tag" unicode="&#xf02b;" 
d="M0 195.882v204.118c0 26.5098 21.4902 48 48 48h204.118c13.2461 0 25.252 -5.37012 33.9404 -14.0586l211.883 -211.883c18.7441 -18.7441 18.7441 -49.1367 0 -67.8818l-204.118 -204.118c-18.7451 -18.7441 -49.1377 -18.7441 -67.8818 0l-211.883 211.883
c-8.68848 8.68848 -14.0586 20.6943 -14.0586 33.9404zM112 384c-26.5098 0 -48 -21.4902 -48 -48s21.4902 -48 48 -48s48 21.4902 48 48s-21.4902 48 -48 48z" />
    <glyph glyph-name="tags" unicode="&#xf02c;" horiz-adv-x="640" 
d="M497.941 222.059c18.7441 -18.7441 18.7441 -49.1367 0 -67.8818l-204.118 -204.118c-18.7461 -18.7451 -49.1387 -18.7441 -67.8818 0l-211.883 211.883c-8.68848 8.68848 -14.0586 20.6943 -14.0586 33.9404v204.118c0 26.5098 21.4902 48 48 48h204.118
c13.2461 0 25.252 -5.37012 33.9404 -14.0586zM112 288c26.5098 0 48 21.4902 48 48s-21.4902 48 -48 48s-48 -21.4902 -48 -48s21.4902 -48 48 -48zM625.941 154.177l-204.118 -204.118c-18.7451 -18.7441 -49.1377 -18.7441 -67.8818 0l-0.360352 0.360352
l174.059 174.059c16.999 16.999 26.3604 39.6006 26.3604 63.6406s-9.3623 46.6406 -26.3604 63.6396l-196.242 196.242h48.7207c13.2461 0 25.252 -5.37012 33.9404 -14.0586l211.883 -211.883c18.7441 -18.7441 18.7441 -49.1367 0 -67.8818z" />
    <glyph glyph-name="book" unicode="&#xf02d;" horiz-adv-x="448" 
d="M448 88c0 -7.5 -3.5 -14.2998 -8.90039 -18.5996c-4.19922 -15.4004 -4.19922 -59.3008 0 -74.7002c5.40039 -4.40039 8.90039 -11.2002 8.90039 -18.7002v-16c0 -13.2998 -10.7002 -24 -24 -24h-328c-53 0 -96 43 -96 96v320c0 53 43 96 96 96h328
c13.2998 0 24 -10.7002 24 -24v-336zM128 314v-20c0 -3.2998 2.7002 -6 6 -6h212c3.2998 0 6 2.7002 6 6v20c0 3.2998 -2.7002 6 -6 6h-212c-3.2998 0 -6 -2.7002 -6 -6zM128 250v-20c0 -3.2998 2.7002 -6 6 -6h212c3.2998 0 6 2.7002 6 6v20c0 3.2998 -2.7002 6 -6 6h-212
c-3.2998 0 -6 -2.7002 -6 -6zM381.4 0c-1.90039 17.0996 -1.90039 46.9004 0 64h-285.4c-17.5996 0 -32 -14.4004 -32 -32c0 -17.7002 14.2998 -32 32 -32h285.4z" />
    <glyph glyph-name="bookmark" unicode="&#xf02e;" horiz-adv-x="384" 
d="M0 -64v464c0 26.5098 21.4902 48 48 48h288c26.5098 0 48 -21.4902 48 -48v-464l-192 112z" />
    <glyph glyph-name="print" unicode="&#xf02f;" 
d="M448 256c35.3496 0 64 -28.6504 64 -64v-112c0 -8.83984 -7.16016 -16 -16 -16h-48v-96c0 -17.6699 -14.3301 -32 -32 -32h-320c-17.6699 0 -32 14.3301 -32 32v96h-48c-8.83984 0 -16 7.16016 -16 16v112c0 35.3496 28.6504 64 64 64v160c0 17.6699 14.3301 32 32 32
h274.74c8.49023 0 16.6299 -3.37012 22.6299 -9.37012l45.2598 -45.25c6 -6.00977 9.37012 -14.1396 9.37012 -22.6299v-114.75zM384 0v96h-256v-96h256zM384 224v96h-48c-8.83984 0 -16 7.16016 -16 16v48h-192v-160h256zM432 152c13.25 0 24 10.75 24 24
c0 13.2598 -10.75 24 -24 24s-24 -10.7402 -24 -24c0 -13.25 10.75 -24 24 -24z" />
    <glyph glyph-name="camera" unicode="&#xf030;" 
d="M512 304v-288c0 -26.5 -21.5 -48 -48 -48h-416c-26.5 0 -48 21.5 -48 48v288c0 26.5 21.5 48 48 48h88l12.2998 32.9004c7 18.6992 24.9004 31.0996 44.9004 31.0996h125.5c20 0 37.8994 -12.4004 44.8994 -31.0996l12.4004 -32.9004h88c26.5 0 48 -21.5 48 -48zM376 160
c0 66.2002 -53.7998 120 -120 120s-120 -53.7998 -120 -120s53.7998 -120 120 -120s120 53.7998 120 120zM344 160c0 -48.5 -39.5 -88 -88 -88s-88 39.5 -88 88s39.5 88 88 88s88 -39.5 88 -88z" />
    <glyph glyph-name="font" unicode="&#xf031;" horiz-adv-x="448" 
d="M432 32c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-128c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h19.5801l-23.2998 64h-152.561l-23.2998 -64h19.5801c8.83105 0 16 -7.16895 16 -16v-32
c0 -8.83105 -7.16895 -16 -16 -16h-128c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h23.4102l130.71 362.31c4.29297 12.6133 16.2363 21.6904 30.293 21.6904h0.00683594h47.1602l-0.00292969 0.00683594c14.0576 0 26.0098 -9.08398 30.3027 -21.6973
l130.71 -362.31h23.4102zM176.85 176h94.3008l-47.1504 129.49z" />
    <glyph glyph-name="bold" unicode="&#xf032;" horiz-adv-x="384" 
d="M333.49 210c34.4395 -27.54 55.5693 -71.1504 50.8301 -119.6c-6.86035 -70.6504 -70.2002 -122.4 -141 -122.4h-209.32c-8.83105 0 -16 7.16895 -16 16v48c0 8.83105 7.16895 16 16 16h31.8701v288h-31.8701c-8.83105 0 -16 7.16895 -16 16v48
c0 8.83105 7.16895 16 16 16h199.42c74.5801 0 134.45 -64.4902 127.07 -140.79c-2.43945 -24.5273 -12.1992 -47.1309 -27 -65.21zM145.66 336v-96h87.7598c26.4922 0 48 21.5078 48 48s-21.5078 48 -48 48h-87.7598zM233.42 48c30.9072 0 56 25.0928 56 56
s-25.0928 56 -56 56h-87.7598v-112h87.7598z" />
    <glyph glyph-name="italic" unicode="&#xf033;" horiz-adv-x="320" 
d="M320 400v-32c0 -8.83105 -7.16895 -16 -16 -16h-62.7598l-80 -320h46.7598c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-192c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h62.7598l80 320h-46.7598
c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h192c8.83105 0 16 -7.16895 16 -16z" />
    <glyph glyph-name="text-height" unicode="&#xf034;" horiz-adv-x="576" 
d="M304 416c8.83105 0 16 -7.16895 16 -16v-96c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v32h-56v-304h40c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-160c-8.83105 0 -16 7.16895 -16 16v32
c0 8.83105 7.16895 16 16 16h40v304h-56v-32c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v96c0 8.83105 7.16895 16 16 16h288zM560 80c15.6396 0 20.6396 -18 11.3096 -27.3096l-80 -80c-2.89551 -2.89453 -6.89844 -4.68555 -11.3115 -4.68555
c-4.41406 0 -8.41211 1.79102 -11.3076 4.68555l-80 80c-10.0107 10 -3 27.3096 11.3096 27.3096h48v224h-48c-15.6396 0 -20.6396 18 -11.3096 27.3096l80 80c2.89551 2.89453 6.89844 4.68555 11.3115 4.68555c4.41406 0 8.41211 -1.79102 11.3076 -4.68555l80 -80
c10.0205 -10 3 -27.3096 -11.3096 -27.3096h-48v-224h48z" />
    <glyph glyph-name="text-width" unicode="&#xf035;" horiz-adv-x="448" 
d="M432 416c8.83105 0 16 -7.16895 16 -16v-80c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v16h-120v-112h24c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-128c-8.83105 0 -16 7.16895 -16 16v32
c0 8.83105 7.16895 16 16 16h24v112h-120v-16c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v80c0 8.83105 7.16895 16 16 16h416zM363.31 155.31l80 -80c2.89453 -2.89551 4.68555 -6.89844 4.68555 -11.3115
c0 -4.41406 -1.79102 -8.41211 -4.68555 -11.3076l-80 -80c-10 -10.0205 -27.3096 -3 -27.3096 11.3096v48h-224v-48c0 -15.6396 -18 -20.6396 -27.3096 -11.3096l-80 80c-2.89453 2.89551 -4.68555 6.89844 -4.68555 11.3115c0 4.41406 1.79102 8.41211 4.68555 11.3076
l80 80c10 10.0107 27.3096 3 27.3096 -11.3096v-48h224v48c0 15.6396 18 20.6396 27.3096 11.3096z" />
    <glyph glyph-name="align-left" unicode="&#xf036;" horiz-adv-x="448" 
d="M12.8301 96c-7.07617 0 -12.8301 5.74414 -12.8301 12.8193v0.0107422v38.3398v0.00976562c0 7.07617 5.74414 12.8203 12.8193 12.8203h0.0107422h262.34h0.00976562c7.07617 0 12.8203 -5.74414 12.8203 -12.8193v-0.0107422v-38.3398v-0.00976562
c0 -7.07617 -5.74414 -12.8203 -12.8193 -12.8203h-0.0107422h-262.34zM12.8301 352c-7.07617 0 -12.8301 5.74414 -12.8301 12.8193v0.0107422v38.3398v0.00976562c0 7.07617 5.74414 12.8203 12.8193 12.8203h0.0107422h262.34h0.00976562
c7.07617 0 12.8203 -5.74414 12.8203 -12.8193v-0.0107422v-38.3398v-0.00976562c0 -7.07617 -5.74414 -12.8203 -12.8193 -12.8203h-0.0107422h-262.34zM432 288c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-416c-8.83105 0 -16 7.16895 -16 16v32
c0 8.83105 7.16895 16 16 16h416zM432 32c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-416c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h416z" />
    <glyph glyph-name="align-center" unicode="&#xf037;" horiz-adv-x="448" 
d="M432 288c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-416c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h416zM432 32c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-416c-8.83105 0 -16 7.16895 -16 16
v32c0 8.83105 7.16895 16 16 16h416zM108.1 352c-6.67773 0 -12.0996 5.42188 -12.0996 12.0996v39.8105c0 6.67285 5.41699 12.0898 12.0898 12.0898h0.00976562h231.811c6.67285 0 12.0898 -5.41699 12.0898 -12.0898v-39.8105v-0.00976562
c0 -6.67285 -5.41699 -12.0898 -12.0898 -12.0898h-231.811zM339.91 96h-231.811c-6.67773 0 -12.0996 5.42188 -12.0996 12.0996v39.8105c0 6.67285 5.41699 12.0898 12.0898 12.0898h0.00976562h231.811c6.67285 0 12.0898 -5.41699 12.0898 -12.0898v-39.8105
v-0.00976562c0 -6.67285 -5.41699 -12.0898 -12.0898 -12.0898z" />
    <glyph glyph-name="align-right" unicode="&#xf038;" horiz-adv-x="448" 
d="M16 224c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h416c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-416zM432 32c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-416c-8.83105 0 -16 7.16895 -16 16
v32c0 8.83105 7.16895 16 16 16h416zM435.17 416c7.07617 0 12.8301 -5.74414 12.8301 -12.8193v-0.0107422v-38.3398v-0.00976562c0 -7.07617 -5.74414 -12.8203 -12.8193 -12.8203h-0.0107422h-262.34h-0.00976562c-7.07617 0 -12.8203 5.74414 -12.8203 12.8193
v0.0107422v38.3398v0.00976562c0 7.07617 5.74414 12.8203 12.8193 12.8203h0.0107422h262.34zM435.17 160c7.07617 0 12.8301 -5.74414 12.8301 -12.8193v-0.0107422v-38.3398v-0.00976562c0 -7.07617 -5.74414 -12.8203 -12.8193 -12.8203h-0.0107422h-262.34h-0.00976562
c-7.07617 0 -12.8203 5.74414 -12.8203 12.8193v0.0107422v38.3398v0.00976562c0 7.07617 5.74414 12.8203 12.8193 12.8203h0.0107422h262.34z" />
    <glyph glyph-name="align-justify" unicode="&#xf039;" horiz-adv-x="448" 
d="M432 32c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-416c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h416zM432 160c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-416c-8.83105 0 -16 7.16895 -16 16
v32c0 8.83105 7.16895 16 16 16h416zM432 288c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-416c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h416zM432 416c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16
h-416c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h416z" />
    <glyph glyph-name="list" unicode="&#xf03a;" 
d="M80 80c8.83105 0 16 -7.16895 16 -16v-64c0 -8.83105 -7.16895 -16 -16 -16h-64c-8.83105 0 -16 7.16895 -16 16v64c0 8.83105 7.16895 16 16 16h64zM80 400c8.83105 0 16 -7.16895 16 -16v-64c0 -8.83105 -7.16895 -16 -16 -16h-64c-8.83105 0 -16 7.16895 -16 16v64
c0 8.83105 7.16895 16 16 16h64zM80 240c8.83105 0 16 -7.16895 16 -16v-64c0 -8.83105 -7.16895 -16 -16 -16h-64c-8.83105 0 -16 7.16895 -16 16v64c0 8.83105 7.16895 16 16 16h64zM496 64c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-320
c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h320zM496 384c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-320c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h320zM496 224c8.83105 0 16 -7.16895 16 -16v-32
c0 -8.83105 -7.16895 -16 -16 -16h-320c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h320z" />
    <glyph glyph-name="outdent" unicode="&#xf03b;" horiz-adv-x="448" 
d="M100.69 84.71l-96 95.9805c-2.89453 2.89551 -4.68555 6.89844 -4.68555 11.3115c0 4.41406 1.79102 8.41211 4.68555 11.3076l96 96c9.97949 10 27.3096 3.01074 27.3096 -11.3096v-191.98c0 -14.2393 -17.3096 -21.3096 -27.3096 -11.3096zM432 32
c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-416c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h416zM435.17 160c7.07617 0 12.8301 -5.74414 12.8301 -12.8193v-0.0107422v-38.3398v-0.00976562
c0 -7.07617 -5.74414 -12.8203 -12.8193 -12.8203h-0.0107422h-230.34h-0.00976562c-7.07617 0 -12.8203 5.74414 -12.8203 12.8193v0.0107422v38.3398v0.00976562c0 7.07617 5.74414 12.8203 12.8193 12.8203h0.0107422h230.34zM435.17 288
c7.07617 0 12.8301 -5.74414 12.8301 -12.8193v-0.0107422v-38.3398v-0.00976562c0 -7.07617 -5.74414 -12.8203 -12.8193 -12.8203h-0.0107422h-230.34h-0.00976562c-7.07617 0 -12.8203 5.74414 -12.8203 12.8193v0.0107422v38.3398v0.00976562
c0 7.07617 5.74414 12.8203 12.8193 12.8203h0.0107422h230.34zM432 416c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-416c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h416z" />
    <glyph glyph-name="indent" unicode="&#xf03c;" horiz-adv-x="448" 
d="M27.3096 84.7002c-9.97949 -10 -27.3096 -3.00977 -27.3096 11.2998v192c0 14.2197 17.2695 21.3398 27.3096 11.3203l96 -96c2.89453 -2.89648 4.68555 -6.89941 4.68555 -11.3125s-1.79102 -8.41211 -4.68555 -11.3076zM432 32c8.83105 0 16 -7.16895 16 -16v-32
c0 -8.83105 -7.16895 -16 -16 -16h-416c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h416zM435.17 160c7.07617 0 12.8301 -5.74414 12.8301 -12.8193v-0.0107422v-38.3398v-0.00976562c0 -7.07617 -5.74414 -12.8203 -12.8193 -12.8203h-0.0107422
h-230.34h-0.00976562c-7.07617 0 -12.8203 5.74414 -12.8203 12.8193v0.0107422v38.3398v0.00976562c0 7.07617 5.74414 12.8203 12.8193 12.8203h0.0107422h230.34zM435.17 288c7.07617 0 12.8301 -5.74414 12.8301 -12.8193v-0.0107422v-38.3398v-0.00976562
c0 -7.07617 -5.74414 -12.8203 -12.8193 -12.8203h-0.0107422h-230.34h-0.00976562c-7.07617 0 -12.8203 5.74414 -12.8203 12.8193v0.0107422v38.3398v0.00976562c0 7.07617 5.74414 12.8203 12.8193 12.8203h0.0107422h230.34zM432 416c8.83105 0 16 -7.16895 16 -16v-32
c0 -8.83105 -7.16895 -16 -16 -16h-416c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h416z" />
    <glyph glyph-name="video" unicode="&#xf03d;" horiz-adv-x="576" 
d="M336.2 384c26.3994 0 47.7998 -21.4004 47.7998 -47.7998v-288.4c0 -26.3994 -21.4004 -47.7998 -47.7998 -47.7998h-288.4c-26.3994 0 -47.7998 21.4004 -47.7998 47.7998v288.4c0 26.3994 21.4004 47.7998 47.7998 47.7998h288.4zM525.6 346.3
c21.3008 14.6006 50.4004 -0.399414 50.4004 -25.7998v-256.9c0 -25.5 -29.2002 -40.3994 -50.4004 -25.7998l-109.6 75.5v157.4z" />
    <glyph glyph-name="image" unicode="&#xf03e;" 
d="M464 0h-416c-26.5098 0 -48 21.4902 -48 48v288c0 26.5098 21.4902 48 48 48h416c26.5098 0 48 -21.4902 48 -48v-288c0 -26.5098 -21.4902 -48 -48 -48zM112 328c-30.9277 0 -56 -25.0723 -56 -56s25.0723 -56 56 -56s56 25.0723 56 56s-25.0723 56 -56 56zM64 64h384
v112l-87.5146 87.5146c-4.68652 4.68652 -12.2842 4.68652 -16.9717 0l-135.514 -135.515l-55.5146 55.5146c-4.68652 4.68652 -12.2842 4.68652 -16.9717 0l-71.5137 -71.5146v-48z" />
    <glyph glyph-name="map-marker" unicode="&#xf041;" horiz-adv-x="384" 
d="M172.268 -53.6699c-145.298 210.639 -172.268 232.257 -172.268 309.67c0 106.039 85.9609 192 192 192s192 -85.9609 192 -192c0 -77.4131 -26.9697 -99.0312 -172.268 -309.67c-9.53516 -13.7744 -29.9307 -13.7734 -39.4648 0z" />
    <glyph glyph-name="adjust" unicode="&#xf042;" 
d="M8 192c0 136.967 111.034 248 248 248s248 -111.034 248 -248s-111.033 -248 -248 -248s-248 111.034 -248 248zM256 8c101.689 0 184 82.2949 184 184c0 101.689 -82.2949 184 -184 184v-368z" />
    <glyph glyph-name="tint" unicode="&#xf043;" horiz-adv-x="352" 
d="M205.22 425.91c46.9902 -158.48 146.78 -200.07 146.78 -311.82c0 -98.4395 -78.7197 -178.09 -176 -178.09s-176 79.6504 -176 178.09c0 111.19 100.01 154.061 146.78 311.82c9 30.1201 50.5 28.7803 58.4395 0zM176 0c8.83984 0 16 7.16016 16 16s-7.16016 16 -16 16
c-44.1104 0 -80 35.8896 -80 80c0 8.83984 -7.16016 16 -16 16s-16 -7.16016 -16 -16c0 -61.75 50.25 -112 112 -112z" />
    <glyph glyph-name="edit" unicode="&#xf044;" horiz-adv-x="576" 
d="M402.6 364.8l90.2002 -90.2002c3.7998 -3.7998 3.7998 -10 0 -13.7998l-218.399 -218.399l-92.8008 -10.3008c-12.3994 -1.39941 -22.8994 9.10059 -21.5 21.5l10.3008 92.8008l218.399 218.399c3.7998 3.7998 10 3.7998 13.7998 0zM564.6 387.7
c15.2002 -15.2002 15.2002 -39.9004 0 -55.2002l-35.3994 -35.4004c-3.7998 -3.7998 -10 -3.7998 -13.7998 0l-90.2002 90.2002c-3.7998 3.7998 -3.7998 10 0 13.7998l35.3994 35.4004c15.3008 15.2002 40 15.2002 55.2002 0zM384 101.8c0 3.2002 1.2998 6.2002 3.5 8.5
l40 40c7.59961 7.5 20.5 2.2002 20.5 -8.5v-157.8c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h285.8c10.7002 0 16.1006 -12.9004 8.5 -20.5l-40 -40c-2.2998 -2.2002 -5.2998 -3.5 -8.5 -3.5h-229.8v-320h320v101.8z" />
    <glyph glyph-name="step-backward" unicode="&#xf048;" horiz-adv-x="448" 
d="M64 -20v424c0 6.59961 5.40039 12 12 12h48c6.59961 0 12 -5.40039 12 -12v-176.4l195.5 181c20.5996 17.1006 52.5 2.80078 52.5 -24.5996v-384c0 -27.4004 -31.9004 -41.7002 -52.5 -24.5996l-195.5 179.899v-175.3c0 -6.59961 -5.40039 -12 -12 -12h-48
c-6.59961 0 -12 5.40039 -12 12z" />
    <glyph glyph-name="fast-backward" unicode="&#xf049;" 
d="M0 12v360c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-151.9l171.5 156.5c20.5996 17.1006 52.5 2.80078 52.5 -24.5996v-131.9l171.5 156.5c20.5996 17.1006 52.5 2.80078 52.5 -24.5996v-320c0 -27.4004 -31.9004 -41.7002 -52.5 -24.5996
l-171.5 155.3v-130.7c0 -27.4004 -31.9004 -41.7002 -52.5 -24.5996l-171.5 155.3v-150.7c0 -6.59961 -5.40039 -12 -12 -12h-40c-6.59961 0 -12 5.40039 -12 12z" />
    <glyph glyph-name="backward" unicode="&#xf04a;" 
d="M11.5 167.4c-15.2998 12.7998 -15.2998 36.3994 0 49.1992l192 160c20.5996 17.2002 52.5 2.80078 52.5 -24.5996v-320c0 -27.4004 -31.9004 -41.7998 -52.5 -24.5996zM267.5 167.4c-15.2998 12.7998 -15.2998 36.3994 0 49.1992l192 160
c20.5996 17.2002 52.5 2.80078 52.5 -24.5996v-320c0 -27.4004 -31.9004 -41.7998 -52.5 -24.5996z" />
    <glyph glyph-name="play" unicode="&#xf04b;" horiz-adv-x="448" 
d="M424.4 233.3c31.5 -18.5 31.3994 -64.0996 0 -82.5996l-352 -208c-31.7002 -18.7998 -72.4004 3.7998 -72.4004 41.2998v416.1c0 41.8008 43.7998 58.2002 72.4004 41.3008z" />
    <glyph glyph-name="pause" unicode="&#xf04c;" horiz-adv-x="448" 
d="M144 -31h-96c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h96c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48zM448 17c0 -26.5 -21.5 -48 -48 -48h-96c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h96c26.5 0 48 -21.5 48 -48v-352z" />
    <glyph glyph-name="stop" unicode="&#xf04d;" horiz-adv-x="448" 
d="M400 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h352z" />
    <glyph glyph-name="forward" unicode="&#xf04e;" 
d="M500.5 216.6c15.2998 -12.7998 15.2998 -36.3994 0 -49.1992l-192 -160c-20.5996 -17.2002 -52.5 -2.80078 -52.5 24.5996v320c0 27.4004 31.9004 41.7002 52.5 24.5996zM244.5 216.6c15.2998 -12.7998 15.2998 -36.3994 0 -49.1992l-192 -160
c-20.5996 -17.2002 -52.5 -2.80078 -52.5 24.5996v320c0 27.4004 31.9004 41.7002 52.5 24.5996z" />
    <glyph glyph-name="fast-forward" unicode="&#xf050;" 
d="M512 372v-360c0 -6.59961 -5.40039 -12 -12 -12h-40c-6.59961 0 -12 5.40039 -12 12v151.9l-171.5 -156.5c-20.5996 -17.2002 -52.5 -2.80078 -52.5 24.5996v131.9l-171.5 -156.5c-20.5996 -17.2002 -52.5 -2.80078 -52.5 24.5996v320
c0 27.4004 31.9004 41.7002 52.5 24.5996l171.5 -155.399v130.8c0 27.4004 31.9004 41.7002 52.5 24.5996l171.5 -155.399v150.8c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12z" />
    <glyph glyph-name="step-forward" unicode="&#xf051;" horiz-adv-x="448" 
d="M384 404v-424c0 -6.59961 -5.40039 -12 -12 -12h-48c-6.59961 0 -12 5.40039 -12 12v176.4l-195.5 -181c-20.5996 -17.1006 -52.5 -2.80078 -52.5 24.5996v384c0 27.4004 31.9004 41.7002 52.5 24.5996l195.5 -179.899v175.3c0 6.59961 5.40039 12 12 12h48
c6.59961 0 12 -5.40039 12 -12z" />
    <glyph glyph-name="eject" unicode="&#xf052;" horiz-adv-x="448" 
d="M448 64v-64c0 -17.6729 -14.3271 -32 -32 -32h-384c-17.6729 0 -32 14.3271 -32 32v64c0 17.6729 14.3271 32 32 32h384c17.6729 0 32 -14.3271 32 -32zM48.0527 128c-41.7285 0 -63.5273 49.7324 -35.3828 80.4346l175.946 192.008
c19.0156 20.7432 51.7529 20.7422 70.7666 0l175.939 -192.008c28.1973 -30.7607 6.26758 -80.4346 -35.3828 -80.4346h-351.887z" />
    <glyph glyph-name="chevron-left" unicode="&#xf053;" horiz-adv-x="320" 
d="M34.5195 208.97l194.351 194.34c9.37012 9.37012 24.5703 9.37012 33.9395 0l22.6709 -22.6699c9.35938 -9.35938 9.36914 -24.5195 0.0390625 -33.8994l-154.029 -154.74l154.02 -154.75c9.33984 -9.37988 9.32031 -24.54 -0.0400391 -33.9004l-22.6699 -22.6699
c-9.37012 -9.37012 -24.5693 -9.37012 -33.9395 0l-194.341 194.351c-9.36914 9.37012 -9.36914 24.5693 0 33.9395z" />
    <glyph glyph-name="chevron-right" unicode="&#xf054;" horiz-adv-x="320" 
d="M285.476 175.029l-194.344 -194.344c-9.37305 -9.37207 -24.5684 -9.37207 -33.9404 0l-22.667 22.667c-9.35742 9.35742 -9.375 24.5225 -0.0400391 33.9014l154.021 154.746l-154.021 154.745c-9.33496 9.37891 -9.31738 24.5439 0.0400391 33.9014l22.667 22.667
c9.37305 9.37207 24.5684 9.37207 33.9404 0l194.343 -194.344c9.37305 -9.37207 9.37305 -24.5674 0.000976562 -33.9404z" />
    <glyph glyph-name="plus-circle" unicode="&#xf055;" 
d="M256 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM400 164v56c0 6.59961 -5.40039 12 -12 12h-92v92c0 6.59961 -5.40039 12 -12 12h-56c-6.59961 0 -12 -5.40039 -12 -12v-92h-92c-6.59961 0 -12 -5.40039 -12 -12v-56
c0 -6.59961 5.40039 -12 12 -12h92v-92c0 -6.59961 5.40039 -12 12 -12h56c6.59961 0 12 5.40039 12 12v92h92c6.59961 0 12 5.40039 12 12z" />
    <glyph glyph-name="minus-circle" unicode="&#xf056;" 
d="M256 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM124 152h264c6.59961 0 12 5.40039 12 12v56c0 6.59961 -5.40039 12 -12 12h-264c-6.59961 0 -12 -5.40039 -12 -12v-56c0 -6.59961 5.40039 -12 12 -12z" />
    <glyph glyph-name="times-circle" unicode="&#xf057;" 
d="M256 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM377.6 126.9l-65.5996 65.0996l65.7002 65c4.7002 4.7002 4.7002 12.2998 0 17l-39.6006 39.5996c-4.69922 4.7002 -12.2998 4.7002 -17 0l-65.0996 -65.5996l-65 65.7002
c-4.7002 4.7002 -12.2998 4.7002 -17 0l-39.5996 -39.6006c-4.7002 -4.69922 -4.7002 -12.2998 0 -17l65.5996 -65.0996l-65.5996 -65c-4.7002 -4.7002 -4.7002 -12.2998 0 -17l39.5 -39.5996c4.69922 -4.7002 12.2998 -4.7002 17 0l65.0996 65.5996l65 -65.5996
c4.7002 -4.7002 12.2998 -4.7002 17 0l39.5996 39.5c4.7002 4.69922 4.7002 12.2998 0 17z" />
    <glyph glyph-name="check-circle" unicode="&#xf058;" 
d="M504 192c0 -136.967 -111.033 -248 -248 -248s-248 111.033 -248 248s111.033 248 248 248s248 -111.033 248 -248zM227.314 60.6855l184 184c6.24707 6.24805 6.24707 16.3799 0 22.6279l-22.6279 22.627c-6.24707 6.24902 -16.3789 6.24902 -22.6279 0
l-150.059 -150.059l-70.0586 70.0596c-6.24805 6.24805 -16.3799 6.24805 -22.6279 0l-22.6279 -22.627c-6.24707 -6.24805 -6.24707 -16.3799 0 -22.6279l104 -104c6.24902 -6.24805 16.3799 -6.24805 22.6289 -0.000976562z" />
    <glyph glyph-name="question-circle" unicode="&#xf059;" 
d="M504 192c0 -136.997 -111.043 -248 -248 -248s-248 111.003 -248 248c0 136.917 111.043 248 248 248s248 -111.083 248 -248zM262.655 358c-54.4971 0 -89.2549 -22.957 -116.549 -63.7578c-3.53613 -5.28613 -2.35352 -12.415 2.71484 -16.2578l34.6982 -26.3105
c5.20508 -3.94727 12.6211 -3.00781 16.665 2.12207c17.8643 22.6582 30.1133 35.7969 57.3037 35.7969c20.4287 0 45.6973 -13.1475 45.6973 -32.958c0 -14.9756 -12.3623 -22.667 -32.5332 -33.9756c-23.5244 -13.1875 -54.6523 -29.6006 -54.6523 -70.6592v-4
c0 -6.62695 5.37305 -12 12 -12h56c6.62695 0 12 5.37305 12 12v1.33301c0 28.4619 83.1855 29.6475 83.1855 106.667c0 58.002 -60.1641 102 -116.53 102zM256 110c-25.3652 0 -46 -20.6348 -46 -46c0 -25.3643 20.6348 -46 46 -46s46 20.6357 46 46
c0 25.3652 -20.6348 46 -46 46z" />
    <glyph glyph-name="info-circle" unicode="&#xf05a;" 
d="M256 440c136.957 0 248 -111.083 248 -248c0 -136.997 -111.043 -248 -248 -248s-248 111.003 -248 248c0 136.917 111.043 248 248 248zM256 330c-23.1963 0 -42 -18.8037 -42 -42s18.8037 -42 42 -42s42 18.8037 42 42s-18.8037 42 -42 42zM312 76v24
c0 6.62695 -5.37305 12 -12 12h-12v100c0 6.62695 -5.37305 12 -12 12h-64c-6.62695 0 -12 -5.37305 -12 -12v-24c0 -6.62695 5.37305 -12 12 -12h12v-64h-12c-6.62695 0 -12 -5.37305 -12 -12v-24c0 -6.62695 5.37305 -12 12 -12h88c6.62695 0 12 5.37305 12 12z" />
    <glyph glyph-name="crosshairs" unicode="&#xf05b;" 
d="M500 224c6.62695 0 12 -5.37305 12 -12v-40c0 -6.62695 -5.37305 -12 -12 -12h-30.3643c-13.9121 -93.6748 -87.9609 -167.724 -181.636 -181.636v-30.3643c0 -6.62695 -5.37305 -12 -12 -12h-40c-6.62695 0 -12 5.37305 -12 12v30.3643
c-93.6748 13.9121 -167.724 87.9609 -181.636 181.636h-30.3643c-6.62695 0 -12 5.37305 -12 12v40c0 6.62695 5.37305 12 12 12h30.3643c13.9121 93.6748 87.9609 167.724 181.636 181.636v30.3643c0 6.62695 5.37305 12 12 12h40c6.62695 0 12 -5.37305 12 -12v-30.3643
c93.6748 -13.9121 167.724 -87.9609 181.636 -181.636h30.3643zM288 43.3662c58.2432 12.417 104.232 58.46 116.634 116.634h-40.6338c-6.62695 0 -12 5.37305 -12 12v40c0 6.62695 5.37305 12 12 12h40.6338c-12.417 58.2432 -58.46 104.232 -116.634 116.634v-40.6338
c0 -6.62695 -5.37305 -12 -12 -12h-40c-6.62695 0 -12 5.37305 -12 12v40.6338c-58.2432 -12.417 -104.232 -58.46 -116.634 -116.634h40.6338c6.62695 0 12 -5.37305 12 -12v-40c0 -6.62695 -5.37305 -12 -12 -12h-40.6338
c12.417 -58.2432 58.46 -104.232 116.634 -116.634v40.6338c0 6.62695 5.37305 12 12 12h40c6.62695 0 12 -5.37305 12 -12v-40.6338zM288 192c0 -17.6729 -14.3271 -32 -32 -32s-32 14.3271 -32 32s14.3271 32 32 32s32 -14.3271 32 -32z" />
    <glyph glyph-name="ban" unicode="&#xf05e;" 
d="M256 440c136.967 0 248 -111.034 248 -248s-111.034 -248 -248 -248s-248 111.033 -248 248s111.034 248 248 248zM386.108 322.108c-65.4121 65.4102 -165.435 70.0312 -235.639 20.6758l256.315 -256.313c49.3232 70.1562 44.7705 170.189 -20.6768 235.638z
M125.892 61.8916c65.4121 -65.4111 165.436 -70.0312 235.639 -20.6758l-256.315 256.313c-49.3232 -70.1562 -44.7705 -170.189 20.6768 -235.638z" />
    <glyph glyph-name="arrow-left" unicode="&#xf060;" horiz-adv-x="448" 
d="M257.5 2.90039l-22.2002 -22.2002c-9.39941 -9.40039 -24.5996 -9.40039 -33.8994 0l-194.4 194.3c-9.40039 9.40039 -9.40039 24.5996 0 33.9004l194.4 194.399c9.39941 9.40039 24.5996 9.40039 33.8994 0l22.2002 -22.2002c9.5 -9.5 9.2998 -25 -0.400391 -34.2998
l-120.5 -114.8h287.4c13.2998 0 24 -10.7002 24 -24v-32c0 -13.2998 -10.7002 -24 -24 -24h-287.4l120.5 -114.8c9.80078 -9.2998 10 -24.7998 0.400391 -34.2998z" />
    <glyph glyph-name="arrow-right" unicode="&#xf061;" horiz-adv-x="448" 
d="M190.5 381.1l22.2002 22.2002c9.39941 9.40039 24.5996 9.40039 33.8994 0l194.4 -194.3c9.40039 -9.40039 9.40039 -24.5996 0 -33.9004l-194.4 -194.399c-9.39941 -9.40039 -24.5996 -9.40039 -33.8994 0l-22.2002 22.2002c-9.5 9.5 -9.2998 25 0.400391 34.2998
l120.5 114.8h-287.4c-13.2998 0 -24 10.7002 -24 24v32c0 13.2998 10.7002 24 24 24h287.4l-120.5 114.8c-9.80078 9.2998 -10 24.7998 -0.400391 34.2998z" />
    <glyph glyph-name="arrow-up" unicode="&#xf062;" horiz-adv-x="448" 
d="M34.9004 158.5l-22.2002 22.2002c-9.40039 9.39941 -9.40039 24.5996 0 33.8994l194.3 194.4c9.40039 9.40039 24.5996 9.40039 33.9004 0l194.3 -194.3c9.39941 -9.40039 9.39941 -24.6006 0 -33.9004l-22.2002 -22.2002c-9.5 -9.5 -25 -9.2998 -34.2998 0.400391
l-114.7 120.4v-287.4c0 -13.2998 -10.7002 -24 -24 -24h-32c-13.2998 0 -24 10.7002 -24 24v287.4l-114.8 -120.5c-9.2998 -9.80078 -24.7998 -10 -34.2998 -0.400391z" />
    <glyph glyph-name="arrow-down" unicode="&#xf063;" horiz-adv-x="448" 
d="M413.1 225.5l22.2002 -22.2002c9.40039 -9.39941 9.40039 -24.5996 0 -33.8994l-194.3 -194.4c-9.40039 -9.40039 -24.5996 -9.40039 -33.9004 0l-194.399 194.4c-9.40039 9.39941 -9.40039 24.5996 0 33.8994l22.2002 22.2002c9.5 9.5 25 9.2998 34.2998 -0.400391
l114.8 -120.5v287.4c0 13.2998 10.7002 24 24 24h32c13.2998 0 24 -10.7002 24 -24v-287.4l114.8 120.5c9.2998 9.80078 24.7998 10 34.2998 0.400391z" />
    <glyph glyph-name="share" unicode="&#xf064;" 
d="M503.691 258.164c11.0859 -9.5752 11.0703 -26.7656 0 -36.3281l-176.005 -152c-15.3867 -13.2891 -39.6865 -2.53613 -39.6865 18.1641v87.915c-155.083 -2.23145 -221.934 -40.7295 -176.59 -185.742c5.03418 -16.0977 -14.4238 -28.5615 -28.0771 -18.6309
c-43.752 31.8232 -83.333 92.6914 -83.333 154.132c0 152.227 127.371 184.419 288 186.258v80.0537c0 20.668 24.2812 31.4688 39.6865 18.1641z" />
    <glyph glyph-name="expand" unicode="&#xf065;" horiz-adv-x="448" 
d="M0 268v124c0 13.2998 10.7002 24 24 24h124c6.59961 0 12 -5.40039 12 -12v-40c0 -6.59961 -5.40039 -12 -12 -12h-84v-84c0 -6.59961 -5.40039 -12 -12 -12h-40c-6.59961 0 -12 5.40039 -12 12zM288 404c0 6.59961 5.40039 12 12 12h124c13.2998 0 24 -10.7002 24 -24
v-124c0 -6.59961 -5.40039 -12 -12 -12h-40c-6.59961 0 -12 5.40039 -12 12v84h-84c-6.59961 0 -12 5.40039 -12 12v40zM436 128c6.59961 0 12 -5.40039 12 -12v-124c0 -13.2998 -10.7002 -24 -24 -24h-124c-6.59961 0 -12 5.40039 -12 12v40c0 6.59961 5.40039 12 12 12h84
v84c0 6.59961 5.40039 12 12 12h40zM160 -20c0 -6.59961 -5.40039 -12 -12 -12h-124c-13.2998 0 -24 10.7002 -24 24v124c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-84h84c6.59961 0 12 -5.40039 12 -12v-40z" />
    <glyph glyph-name="compress" unicode="&#xf066;" horiz-adv-x="448" 
d="M436 256h-124c-13.2998 0 -24 10.7002 -24 24v124c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-84h84c6.59961 0 12 -5.40039 12 -12v-40c0 -6.59961 -5.40039 -12 -12 -12zM160 280c0 -13.2998 -10.7002 -24 -24 -24h-124
c-6.59961 0 -12 5.40039 -12 12v40c0 6.59961 5.40039 12 12 12h84v84c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-124zM160 -20c0 -6.59961 -5.40039 -12 -12 -12h-40c-6.59961 0 -12 5.40039 -12 12v84h-84c-6.59961 0 -12 5.40039 -12 12v40
c0 6.59961 5.40039 12 12 12h124c13.2998 0 24 -10.7002 24 -24v-124zM352 -20c0 -6.59961 -5.40039 -12 -12 -12h-40c-6.59961 0 -12 5.40039 -12 12v124c0 13.2998 10.7002 24 24 24h124c6.59961 0 12 -5.40039 12 -12v-40c0 -6.59961 -5.40039 -12 -12 -12h-84v-84z" />
    <glyph glyph-name="plus" unicode="&#xf067;" horiz-adv-x="448" 
d="M416 240c17.6699 0 32 -14.3301 32 -32v-32c0 -17.6699 -14.3301 -32 -32 -32h-144v-144c0 -17.6699 -14.3301 -32 -32 -32h-32c-17.6699 0 -32 14.3301 -32 32v144h-144c-17.6699 0 -32 14.3301 -32 32v32c0 17.6699 14.3301 32 32 32h144v144
c0 17.6699 14.3301 32 32 32h32c17.6699 0 32 -14.3301 32 -32v-144h144z" />
    <glyph glyph-name="minus" unicode="&#xf068;" horiz-adv-x="448" 
d="M416 240c17.6699 0 32 -14.3301 32 -32v-32c0 -17.6699 -14.3301 -32 -32 -32h-384c-17.6699 0 -32 14.3301 -32 32v32c0 17.6699 14.3301 32 32 32h384z" />
    <glyph glyph-name="asterisk" unicode="&#xf069;" 
d="M478.21 113.907c11.7949 -6.47754 15.96 -21.3828 9.23242 -33.0361l-19.4805 -33.7412c-6.72754 -11.6533 -21.7207 -15.499 -33.2266 -8.52246l-138.735 84.1104l3.47559 -162.204c0.288086 -13.4531 -10.5391 -24.5137 -23.9941 -24.5137h-38.9619
c-13.4551 0 -24.2822 11.0605 -23.9941 24.5137l3.47461 162.204l-138.735 -84.1113c-11.5059 -6.97656 -26.499 -3.13086 -33.2266 8.52246l-19.4805 33.7412c-6.72852 11.6533 -2.5625 26.5596 9.23242 33.0371l142.21 78.0928l-142.209 78.0918
c-11.7949 6.47754 -15.9609 21.3838 -9.2334 33.0371l19.4805 33.7412c6.72754 11.6533 21.7207 15.499 33.2266 8.52246l138.735 -84.1104l-3.47363 162.204c-0.289062 13.4531 10.5381 24.5137 23.9932 24.5137h38.9609c13.4561 0 24.2822 -11.0605 23.9941 -24.5137
l-3.47461 -162.204l138.735 84.1113c11.5068 6.97656 26.499 3.13086 33.2266 -8.52246l19.4805 -33.7412c6.72852 -11.6533 2.5625 -26.5596 -9.23242 -33.0371l-142.21 -78.0928z" />
    <glyph glyph-name="exclamation-circle" unicode="&#xf06a;" 
d="M504 192c0 -136.997 -111.043 -248 -248 -248s-248 111.003 -248 248c0 136.917 111.043 248 248 248s248 -111.083 248 -248zM256 142c-25.4053 0 -46 -20.5947 -46 -46s20.5947 -46 46 -46s46 20.5947 46 46s-20.5947 46 -46 46zM212.327 307.346l7.41797 -136
c0.34668 -6.36328 5.6084 -11.3457 11.9814 -11.3457h48.5469c6.37305 0 11.6348 4.98242 11.9814 11.3457l7.41797 136c0.375 6.87402 -5.09766 12.6543 -11.9814 12.6543h-63.3838c-6.88379 0 -12.3555 -5.78027 -11.9805 -12.6543z" />
    <glyph glyph-name="gift" unicode="&#xf06b;" 
d="M32 0v128h192v-160h-160c-17.7002 0 -32 14.2998 -32 32zM288 -32v160h192v-128c0 -17.7002 -14.2998 -32 -32 -32h-160zM480 288c17.7002 0 32 -14.2998 32 -32v-80c0 -8.7998 -7.2002 -16 -16 -16h-480c-8.7998 0 -16 7.2002 -16 16v80c0 17.7002 14.2998 32 32 32
h44.0996c-6.2998 12.0996 -10.0996 25.5 -10.0996 40c0 48.5 39.5 88 88 88c41.5996 0 68.5 -21.2998 103 -68.2998c34.5 47 61.4004 68.2998 103 68.2998c48.5 0 88 -39.5 88 -88c0 -14.5 -3.90039 -27.9004 -10.0996 -40h42.0996zM153.9 288h86.0996
c-51.5 76.7002 -66.2002 80 -86.0996 80c-22.1006 0 -40 -17.9004 -40 -40s17.8994 -40 40 -40zM360 288c22.0996 0 40 17.9004 40 40s-17.9004 40 -40 40c-20.4004 0 -34.7002 -3.5 -86.0996 -80h86.0996z" />
    <glyph glyph-name="leaf" unicode="&#xf06c;" horiz-adv-x="576" 
d="M546.2 438.3c19 -42.3994 29.7998 -94.3994 29.7998 -144.6c0 -172.4 -110.5 -313.2 -267.5 -324.601c-80.9004 -8.59961 -142.5 33.3008 -174.9 77.2002c-51 -42.7002 -70.3994 -87 -71.8994 -90.5996c-6.7998 -16.2002 -25.4004 -24.1006 -41.7998 -17.2998
c-16.3008 6.69922 -24.1006 25.2998 -17.5 41.5996c23.5996 57.9004 130.199 212 381.6 212c8.7998 0 16 7.2002 16 16s-7.2002 16 -16 16c-130.6 0 -222.7 -38.7998 -286.5 -84.5c-0.700195 6.7998 -1.5 13.5 -1.5 20.5c0 106 86 192 192 192h80
c63.4004 0 118.9 33.5996 149.9 87.5c6.69922 11.7998 22.6992 11.2998 28.2998 -1.2002z" />
    <glyph glyph-name="fire" unicode="&#xf06d;" horiz-adv-x="384" 
d="M216 424.14c0 -103.14 168 -125.85 168 -296.14c0 -105.87 -86.1299 -192 -192 -192s-192 86.1299 -192 192c0 58.6699 27.7998 106.84 54.5703 134.96c14.96 15.7305 41.4297 5.2002 41.4297 -16.5v-85.5098c0 -35.1699 27.9805 -64.4902 63.1504 -64.9404
c35.7393 -0.469727 64.8496 28.3604 64.8496 63.9902c0 88 -176 96.1504 -52.1504 277.18c13.5 19.7305 44.1504 10.7607 44.1504 -13.04z" />
    <glyph glyph-name="eye" unicode="&#xf06e;" horiz-adv-x="576" 
d="M572.52 206.6c2.21387 -4.37793 3.46094 -9.38965 3.46094 -14.626c0 -5.2373 -1.24707 -10.1855 -3.46094 -14.5635c-54.1992 -105.771 -161.59 -177.41 -284.52 -177.41s-230.29 71.5898 -284.52 177.4c-2.21387 4.37793 -3.46094 9.38965 -3.46094 14.626
c0 5.2373 1.24707 10.1855 3.46094 14.5635c54.1992 105.771 161.59 177.41 284.52 177.41s230.29 -71.5898 284.52 -177.4zM288 48c0.0234375 0 0.0458984 -0.000976562 0.0703125 -0.000976562c79.4365 0 143.93 64.4922 143.93 143.93v0.0712891
c0 79.4756 -64.5244 144 -144 144s-144 -64.5244 -144 -144s64.5244 -144 144 -144zM288 288c0.0761719 0 0.160156 -0.0273438 0.237305 -0.0273438c52.8623 0 95.7803 -42.917 95.7803 -95.7793s-42.918 -95.7803 -95.7803 -95.7803s-95.7803 42.918 -95.7803 95.7803
c0 8.68945 1.16016 17.1104 3.33301 25.1162c7.93164 -5.83594 17.7432 -9.26758 28.3359 -9.26758c26.4092 0 47.8496 21.4404 47.8496 47.8496c0 10.5938 -3.44922 20.3867 -9.28516 28.3184c8.0459 2.34277 16.541 3.66797 25.3096 3.79004z" />
    <glyph glyph-name="eye-slash" unicode="&#xf070;" horiz-adv-x="640" 
d="M320 48c8.91309 0.0830078 17.542 0.976562 26 2.61035l51.8896 -40.1504c-25.0195 -6.45996 -50.9795 -10.46 -77.8896 -10.46c-122.93 0 -230.29 71.5898 -284.52 177.4c-2.21387 4.37793 -3.46094 9.38965 -3.46094 14.626c0 5.2373 1.24707 10.1855 3.46094 14.5635
c10.2393 20 22.9297 38.29 36.7197 55.5898l104.899 -81.0693c5.65039 -74.4004 67.0508 -133.11 142.9 -133.11zM633.82 -10.0996c3.76855 -2.92871 6.17676 -7.50977 6.17676 -12.6475c0 -3.69238 -1.25293 -7.09375 -3.35742 -9.80273l-19.6396 -25.2705
c-2.92871 -3.76855 -7.50879 -6.17578 -12.6465 -6.17578c-3.69727 0 -7.10254 1.25684 -9.81348 3.36621l-588.36 454.729c-3.76562 2.92871 -6.1709 7.50781 -6.1709 12.6426c0 3.69434 1.25488 7.09863 3.36133 9.80762l19.6299 25.2705
c2.92871 3.76855 7.50879 6.17578 12.6465 6.17578c3.69727 0 7.10254 -1.25684 9.81348 -3.36621l127.22 -98.3301c43.6846 23.8564 94.0967 37.6357 147.32 37.7002c122.93 0 230.29 -71.5898 284.52 -177.4c2.21387 -4.37793 3.46094 -9.38965 3.46094 -14.626
c0 -5.2373 -1.24707 -10.1855 -3.46094 -14.5635c-20.2109 -39.3887 -47.6904 -73.7881 -81.25 -102.07zM450.1 131.9c8.61035 18.3203 13.9004 38.4697 13.9004 60.0996c0 0.0273438 0.00195312 0.0527344 0.00195312 0.0800781c0 79.4316 -64.4883 143.92 -143.92 143.92
h-0.0820312c-34.6328 -0.0253906 -66.4756 -12.4902 -91.1504 -33.1104l73.6104 -56.8896c0.857422 3.20508 1.38867 6.5625 1.54004 10c-0.0185547 10.5391 -3.49023 20.3242 -9.30957 28.21c8.43164 2.46191 17.3359 3.82031 26.5576 3.82031
c52.2998 0 94.7607 -42.46 94.7607 -94.7598c0 -0.423828 -0.00292969 -0.847656 -0.00878906 -1.27051c-0.138672 -10.377 -1.97559 -20.4014 -5.2002 -29.7197z" />
    <glyph glyph-name="exclamation-triangle" unicode="&#xf071;" horiz-adv-x="576" 
d="M569.517 7.9873c18.458 -31.9941 -4.71094 -71.9873 -41.5762 -71.9873h-479.887c-36.9365 0 -59.999 40.0547 -41.5771 71.9873l239.946 416.027c18.4668 32.0098 64.7197 31.9512 83.1543 0zM288 94c-25.4053 0 -46 -20.5947 -46 -46s20.5947 -46 46 -46
s46 20.5947 46 46s-20.5947 46 -46 46zM244.327 259.346l7.41797 -136c0.34668 -6.36328 5.6084 -11.3457 11.9814 -11.3457h48.5469c6.37305 0 11.6348 4.98242 11.9814 11.3457l7.41797 136c0.375 6.87402 -5.09766 12.6543 -11.9814 12.6543h-63.3838
c-6.88379 0 -12.3555 -5.78027 -11.9805 -12.6543z" />
    <glyph glyph-name="plane" unicode="&#xf072;" horiz-adv-x="576" 
d="M480 256c35.3496 0 96 -28.6504 96 -64s-60.6504 -64 -96 -64h-114.29l-105.11 -183.94c-2.84961 -4.97949 -8.14941 -8.05957 -13.8896 -8.05957h-65.5c-10.6299 0 -18.2998 10.1797 -15.3799 20.4004l49.0303 171.6h-102.86l-43.2002 -57.5996
c-3.01953 -4.03027 -7.75977 -6.40039 -12.7998 -6.40039h-39.9902c-10.4102 0 -18.0498 9.78027 -15.5195 19.8799l31.5098 108.12l-31.5098 108.12c-2.53027 10.0996 5.10938 19.8799 15.5195 19.8799h39.9902c5.03027 0 9.78027 -2.37012 12.7998 -6.40039
l43.2002 -57.5996h102.86l-49.0303 171.61c-2.91992 10.2197 4.75 20.3896 15.3799 20.3896h65.5c5.95117 0 11.1396 -3.23633 13.9004 -8.05957l105.1 -183.94h114.29z" />
    <glyph glyph-name="calendar-alt" unicode="&#xf073;" horiz-adv-x="448" 
d="M0 -16v272h448v-272c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48zM320 180v-40c0 -6.59961 5.40039 -12 12 -12h40c6.59961 0 12 5.40039 12 12v40c0 6.59961 -5.40039 12 -12 12h-40c-6.59961 0 -12 -5.40039 -12 -12zM320 52v-40
c0 -6.59961 5.40039 -12 12 -12h40c6.59961 0 12 5.40039 12 12v40c0 6.59961 -5.40039 12 -12 12h-40c-6.59961 0 -12 -5.40039 -12 -12zM192 180v-40c0 -6.59961 5.40039 -12 12 -12h40c6.59961 0 12 5.40039 12 12v40c0 6.59961 -5.40039 12 -12 12h-40
c-6.59961 0 -12 -5.40039 -12 -12zM192 52v-40c0 -6.59961 5.40039 -12 12 -12h40c6.59961 0 12 5.40039 12 12v40c0 6.59961 -5.40039 12 -12 12h-40c-6.59961 0 -12 -5.40039 -12 -12zM64 180v-40c0 -6.59961 5.40039 -12 12 -12h40c6.59961 0 12 5.40039 12 12v40
c0 6.59961 -5.40039 12 -12 12h-40c-6.59961 0 -12 -5.40039 -12 -12zM64 52v-40c0 -6.59961 5.40039 -12 12 -12h40c6.59961 0 12 5.40039 12 12v40c0 6.59961 -5.40039 12 -12 12h-40c-6.59961 0 -12 -5.40039 -12 -12zM400 384c26.5 0 48 -21.5 48 -48v-48h-448v48
c0 26.5 21.5 48 48 48h48v48c0 8.7998 7.2002 16 16 16h32c8.7998 0 16 -7.2002 16 -16v-48h128v48c0 8.7998 7.2002 16 16 16h32c8.7998 0 16 -7.2002 16 -16v-48h48z" />
    <glyph glyph-name="random" unicode="&#xf074;" 
d="M504.971 88.9707c9.37305 -9.37305 9.37305 -24.5684 0 -33.9404l-80 -79.9844c-15.0098 -15.0098 -40.9707 -4.49023 -40.9707 16.9707v39.9834h-58.7852c-3.46094 0 -6.58105 1.46484 -8.77246 3.81152l-70.5566 75.5967l53.333 57.1426l52.7812 -56.5508h32v39.9814
c0 21.4375 25.9434 31.9971 40.9707 16.9707zM12 272c-6.62695 0 -12 5.37305 -12 12v56c0 6.62695 5.37305 12 12 12h110.785c3.46094 0 6.58203 -1.46484 8.77246 -3.81152l70.5566 -75.5967l-53.333 -57.1426l-52.7812 56.5508h-84zM384 272h-32l-220.442 -236.188
c-2.26953 -2.43066 -5.44629 -3.81152 -8.77246 -3.81152h-110.785c-6.62695 0 -12 5.37305 -12 12v56c0 6.62695 5.37305 12 12 12h84l220.442 236.188c2.19141 2.34668 5.31152 3.81152 8.77246 3.81152h58.7852v39.9814c0 21.4365 25.9434 31.9971 40.9707 16.9697
l80 -79.9814c9.37305 -9.37207 9.37305 -24.5674 0 -33.9404l-80 -79.9844c-15.0098 -15.0088 -40.9707 -4.48926 -40.9707 16.9707v39.9844z" />
    <glyph glyph-name="comment" unicode="&#xf075;" 
d="M256 416c141.4 0 256 -93.0996 256 -208s-114.6 -208 -256 -208c-38.4004 0 -74.7002 7.09961 -107.4 19.4004c-24.5996 -19.6006 -74.2998 -51.4004 -140.6 -51.4004c-3.2002 0 -6 1.7998 -7.2998 4.7998s-0.700195 6.40039 1.5 8.7002
c0.5 0.5 42.2998 45.4004 54.7998 95.7998c-35.5996 35.7002 -57 81.1006 -57 130.7c0 114.9 114.6 208 256 208z" />
    <glyph glyph-name="magnet" unicode="&#xf076;" 
d="M164.07 299.9h-152.07c-6.62305 0 -12 5.37695 -12 12v80c0 19.8682 16.1309 36 36 36h104c19.8691 0 36 -16.1318 36 -36v-80c0 -0.0380859 0.000976562 -0.0751953 0.000976562 -0.112305c0 -6.5625 -5.32812 -11.8906 -11.8906 -11.8906
c-0.0136719 0 -0.0263672 0.00292969 -0.0400391 0.00292969zM512 311.9c0 -0.00390625 0.00195312 -0.0078125 0.00195312 -0.0107422c0 -6.5625 -5.32715 -11.8906 -11.8896 -11.8906c-0.0380859 0 -0.0751953 0.000976562 -0.112305 0.000976562h-152
c-6.62305 0 -12 5.37695 -12 12v80c0 19.8691 16.1309 36 36 36h104c19.8691 0 36 -16.1309 36 -36v-80.0996zM348 267.9h151.85c6.62305 0 12.001 -5.37598 12.001 -11.998c0 -0.0341797 0 -0.0683594 -0.000976562 -0.102539
c-0.199219 -20.2002 -0.599609 -40.3994 0 -53.2002c0 -150.699 -134.42 -246.699 -255 -246.699s-256.75 96 -256.75 246.6c0.600586 13 0.100586 31.9004 0 53.2998v0.100586c0 6.62305 5.37695 12 12 12h151.9c6.62305 0 12 -5.37695 12 -12v-52
c0 -127.9 160 -128.101 160 0v52c0 6.62305 5.37695 12 12 12z" />
    <glyph glyph-name="chevron-up" unicode="&#xf077;" horiz-adv-x="448" 
d="M240.971 317.476l194.344 -194.343c9.37207 -9.37305 9.37207 -24.5684 0 -33.9404l-22.667 -22.667c-9.35742 -9.35742 -24.5225 -9.375 -33.9014 -0.0400391l-154.746 154.02l-154.745 -154.021c-9.37891 -9.33496 -24.5439 -9.31738 -33.9014 0.0400391
l-22.667 22.667c-9.37207 9.37305 -9.37207 24.5684 0 33.9404l194.344 194.343c9.37207 9.37305 24.5674 9.37305 33.9404 0.000976562z" />
    <glyph glyph-name="chevron-down" unicode="&#xf078;" horiz-adv-x="448" 
d="M207.029 66.5244l-194.344 194.344c-9.37207 9.37305 -9.37207 24.5684 0 33.9404l22.667 22.667c9.35742 9.35742 24.5225 9.375 33.9014 0.0400391l154.746 -154.021l154.745 154.021c9.37891 9.33496 24.5439 9.31738 33.9014 -0.0400391l22.667 -22.667
c9.37207 -9.37305 9.37207 -24.5684 0 -33.9404l-194.343 -194.344c-9.37305 -9.37207 -24.5684 -9.37207 -33.9414 0z" />
    <glyph glyph-name="retweet" unicode="&#xf079;" horiz-adv-x="640" 
d="M629.657 104.402l-100.687 -100.687c-9.37305 -9.37207 -24.5674 -9.37207 -33.9404 0l-100.688 100.687c-9.37305 9.37305 -9.37305 24.5684 0 33.9404l10.8232 10.8232c9.56152 9.56152 25.1328 9.33984 34.4189 -0.492188l40.415 -42.792v182.118h-187.549
c-6.62305 0 -12.626 2.68555 -16.9707 7.0293l-16 16c-15.1191 15.1201 -4.41113 40.9707 16.9707 40.9707h243.549c13.2549 0 24 -10.7451 24 -24v-222.118l40.416 42.792c9.28516 9.83105 24.8564 10.0537 34.4189 0.492188l10.8232 -10.8232
c9.37207 -9.37207 9.37207 -24.5684 -0.000976562 -33.9404zM364.519 88.9707l16.001 -16c15.1191 -15.1201 4.41113 -40.9707 -16.9707 -40.9707h-243.549c-13.2549 0 -24 10.7451 -24 24v222.119l-40.416 -42.793c-9.28613 -9.83105 -24.8574 -10.0527 -34.4189 -0.491211
l-10.8223 10.8223c-9.37305 9.37207 -9.37305 24.5674 0 33.9404l100.688 100.687c9.37207 9.37305 24.5674 9.37305 33.9404 0l100.687 -100.686c9.37305 -9.37207 9.37305 -24.5674 0 -33.9404l-10.8223 -10.8223c-9.5625 -9.5625 -25.1328 -9.33984 -34.4189 0.491211
l-40.416 42.792v-182.119h187.548c6.62305 0 12.627 -2.68457 16.9707 -7.0293z" />
    <glyph glyph-name="shopping-cart" unicode="&#xf07a;" horiz-adv-x="576" 
d="M528.12 146.681c-2.4834 -10.9268 -12.1973 -18.6807 -23.4033 -18.6807h-293.145l6.54492 -32h268.418c15.4004 0 26.8154 -14.3008 23.4033 -29.3193l-5.51758 -24.2754c18.6914 -9.07324 31.5791 -28.2334 31.5791 -50.4053c0 -30.9277 -25.0723 -56 -56 -56
s-56 25.0723 -56 56c0 15.6738 6.44727 29.835 16.8232 40h-209.647c10.377 -10.165 16.8242 -24.3262 16.8242 -40c0 -30.9277 -25.0723 -56 -56 -56s-56 25.0723 -56 56c0 20.7783 11.3252 38.9004 28.1309 48.5654l-70.248 343.435h-69.8828
c-13.2549 0 -24 10.7451 -24 24v16c0 13.2549 10.7451 24 24 24h102.529c11.4004 0 21.2285 -8.02148 23.5127 -19.1904l9.16602 -44.8096h392.782c15.4004 0 26.8154 -14.3008 23.4023 -29.3193z" />
    <glyph glyph-name="folder" unicode="&#xf07b;" 
d="M464 320c26.5098 0 48 -21.4902 48 -48v-224c0 -26.5098 -21.4902 -48 -48 -48h-416c-26.5098 0 -48 21.4902 -48 48v288c0 26.5098 21.4902 48 48 48h160l64 -64h192z" />
    <glyph glyph-name="folder-open" unicode="&#xf07c;" horiz-adv-x="576" 
d="M572.694 155.907l-72.4248 -124.155c-11.0967 -19.0244 -31.6865 -31.752 -55.2803 -31.752h-399.964c-18.5234 0 -30.0645 20.0928 -20.7314 36.0928l72.4238 124.155c11.0986 19.0244 31.6875 31.752 55.2822 31.752h399.964
c18.5234 0 30.0645 -20.0928 20.7305 -36.0928zM152 224c-34.0107 0 -65.7861 -18.25 -82.9229 -47.6279l-69.0771 -118.418v278.046c0 26.5098 21.4902 48 48 48h160l64 -64h160c26.5098 0 48 -21.4902 48 -48v-48h-328z" />
    <glyph glyph-name="chart-bar" unicode="&#xf080;" 
d="M332.8 128c-6.39941 0 -12.7998 6.40039 -12.7998 12.7998v134.4c0 6.39941 6.40039 12.7998 12.7998 12.7998h38.4004c6.39941 0 12.7998 -6.40039 12.7998 -12.7998v-134.4c0 -6.39941 -6.40039 -12.7998 -12.7998 -12.7998h-38.4004zM428.8 128
c-6.39941 0 -12.7998 6.40039 -12.7998 12.7998v230.4c0 6.39941 6.40039 12.7998 12.7998 12.7998h38.4004c6.39941 0 12.7998 -6.40039 12.7998 -12.7998v-230.4c0 -6.39941 -6.40039 -12.7998 -12.7998 -12.7998h-38.4004zM140.8 128
c-6.39941 0 -12.7998 6.40039 -12.7998 12.7998v70.4004c0 6.39941 6.40039 12.7998 12.7998 12.7998h38.4004c6.39941 0 12.7998 -6.40039 12.7998 -12.7998v-70.4004c0 -6.39941 -6.40039 -12.7998 -12.7998 -12.7998h-38.4004zM236.8 128
c-6.39941 0 -12.7998 6.40039 -12.7998 12.7998v198.4c0 6.39941 6.40039 12.7998 12.7998 12.7998h38.4004c6.39941 0 12.7998 -6.40039 12.7998 -12.7998v-198.4c0 -6.39941 -6.40039 -12.7998 -12.7998 -12.7998h-38.4004zM496 64c8.83984 0 16 -7.16016 16 -16v-32
c0 -8.83984 -7.16016 -16 -16 -16h-464c-17.6699 0 -32 14.3301 -32 32v336c0 8.83984 7.16016 16 16 16h32c8.83984 0 16 -7.16016 16 -16v-304h432z" />
    <glyph glyph-name="camera-retro" unicode="&#xf083;" 
d="M48 416h416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-416c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48zM48 384c-8.7998 0 -16 -7.2002 -16 -16v-10c0 -3.2998 2.7002 -6 6 -6h116c3.2998 0 6 2.7002 6 6v20c0 3.2998 -2.7002 6 -6 6h-106z
M474 288c3.2998 0 6 2.7002 6 6v74c0 8.7998 -7.2002 16 -16 16h-252.8c-2 0 -3.90039 -1 -5 -2.7002l-30.2002 -45.2998h-138c-3.2998 0 -6 -2.7002 -6 -6v-36c0 -3.2998 2.7002 -6 6 -6h436zM256 24c66.2002 0 120 53.7998 120 120s-53.7998 120 -120 120
s-120 -53.7998 -120 -120s53.7998 -120 120 -120zM256 232c48.5 0 88 -39.5 88 -88s-39.5 -88 -88 -88s-88 39.5 -88 88s39.5 88 88 88zM208 128c8.7998 0 16 7.2002 16 16c0 17.5996 14.4004 32 32 32c8.7998 0 16 7.2002 16 16s-7.2002 16 -16 16
c-35.2998 0 -64 -28.7002 -64 -64c0 -8.7998 7.2002 -16 16 -16z" />
    <glyph glyph-name="key" unicode="&#xf084;" 
d="M512 271.999c0 -97.2021 -78.7979 -175.999 -176 -175.999c-11.2197 0 -22.1904 1.06152 -32.8271 3.06934l-24.0117 -27.0146c-4.39746 -4.94727 -10.8047 -8.05469 -17.9385 -8.05469h-37.2227v-40c0 -13.2549 -10.7451 -24 -24 -24h-40v-40
c0 -13.2549 -10.7451 -24 -24 -24h-112c-13.2549 0 -24 10.7451 -24 24v78.0586c0 6.36523 2.5293 12.4707 7.0293 16.9717l161.802 161.802c-5.72266 17.3535 -8.83105 35.8965 -8.83105 55.168c0 97.2021 78.7969 175.999 175.999 176
c97.4893 0.000976562 176.001 -78.5107 176.001 -176.001zM336 320c0 -26.5098 21.4902 -48 48 -48s48 21.4902 48 48s-21.4902 48 -48 48s-48 -21.4902 -48 -48z" />
    <glyph glyph-name="cogs" unicode="&#xf085;" horiz-adv-x="640" 
d="M512.1 257l-8.19922 -14.2998c-3 -5.2998 -9.40039 -7.5 -15.1006 -5.40039c-11.7998 4.40039 -22.5996 10.7002 -32.0996 18.6006c-4.60059 3.7998 -5.7998 10.5 -2.7998 15.6992l8.19922 14.3008c-6.89941 8 -12.2998 17.2998 -15.8994 27.3994h-16.5
c-6 0 -11.2002 4.2998 -12.2002 10.2998c-2 12 -2.09961 24.6006 0 37.1006c1 6 6.2002 10.3994 12.2002 10.3994h16.5c3.59961 10.1006 9 19.4004 15.8994 27.4004l-8.19922 14.2998c-3 5.2002 -1.90039 11.9004 2.7998 15.7002
c9.5 7.90039 20.3994 14.2002 32.0996 18.5996c5.7002 2.10059 12.1006 -0.0996094 15.1006 -5.39941l8.19922 -14.2998c10.5 1.89941 21.2002 1.89941 31.7002 0l8.2002 14.2998c3 5.2998 9.40039 7.5 15.0996 5.39941c11.8008 -4.39941 22.6006 -10.6992 32.1006 -18.5996
c4.59961 -3.7998 5.7998 -10.5 2.7998 -15.7002l-8.2002 -14.2998c6.90039 -8 12.2998 -17.2998 15.9004 -27.4004h16.5c6 0 11.2002 -4.2998 12.2002 -10.2998c2 -12 2.09961 -24.5996 0 -37.0996c-1 -6 -6.2002 -10.4004 -12.2002 -10.4004h-16.5
c-3.60059 -10.0996 -9 -19.3994 -15.9004 -27.3994l8.2002 -14.3008c3 -5.19922 1.90039 -11.8994 -2.7998 -15.6992c-9.5 -7.90039 -20.4004 -14.2002 -32.1006 -18.6006c-5.69922 -2.09961 -12.0996 0.100586 -15.0996 5.40039l-8.2002 14.2998
c-10.3994 -1.90039 -21.2002 -1.90039 -31.7002 0zM501.6 315.8c38.5 -29.5996 82.4004 14.2998 52.8008 52.7998c-38.5 29.7002 -82.4004 -14.2998 -52.8008 -52.7998zM386.3 161.9l33.7002 -16.8008c10.0996 -5.7998 14.5 -18.0996 10.5 -29.0996
c-8.90039 -24.2002 -26.4004 -46.4004 -42.5996 -65.7998c-7.40039 -8.90039 -20.2002 -11.1006 -30.3008 -5.2998l-29.0996 16.7998c-16 -13.7002 -34.5996 -24.6006 -54.9004 -31.7002v-33.5996c0 -11.6006 -8.2998 -21.6006 -19.6992 -23.6006
c-24.6006 -4.2002 -50.4004 -4.39941 -75.9004 0c-11.5 2 -20 11.9004 -20 23.6006v33.5996c-20.2998 7.2002 -38.9004 18 -54.9004 31.7002l-29.0996 -16.7002c-10 -5.7998 -22.9004 -3.59961 -30.2998 5.2998c-16.2002 19.4004 -33.2998 41.6006 -42.2002 65.7002
c-4 10.9004 0.400391 23.2002 10.5 29.0996l33.2998 16.8008c-3.89941 20.8994 -3.89941 42.3994 0 63.3994l-33.2998 16.9004c-10.0996 5.7998 -14.5996 18.0996 -10.5 29c8.90039 24.2002 26 46.3994 42.2002 65.7998c7.39941 8.90039 20.2002 11.0996 30.2998 5.2998
l29.0996 -16.7998c16 13.7002 34.6006 24.5996 54.9004 31.7002v33.7002c0 11.5 8.2002 21.5 19.5996 23.5c24.6006 4.19922 50.5 4.39941 76 0.0996094c11.5 -2 20 -11.9004 20 -23.5996v-33.6006c20.3008 -7.2002 38.9004 -18 54.9004 -31.7002l29.0996 16.8008
c10 5.7998 22.9004 3.59961 30.3008 -5.30078c16.1992 -19.3994 33.1992 -41.5996 42.0996 -65.7998c4 -10.8994 0.0996094 -23.2002 -10 -29.0996l-33.7002 -16.7998c3.90039 -21 3.90039 -42.5 0 -63.5zM268.7 140.8c59.2002 77 -28.7002 164.9 -105.7 105.7
c-59.2002 -77 28.7002 -164.9 105.7 -105.7zM512.1 -41.9004l-8.19922 -14.2998c-3 -5.2998 -9.40039 -7.5 -15.1006 -5.39941c-11.7998 4.39941 -22.5996 10.6992 -32.0996 18.5996c-4.60059 3.7998 -5.7998 10.5 -2.7998 15.7002l8.19922 14.2998
c-6.89941 8 -12.2998 17.2998 -15.8994 27.4004h-16.5c-6 0 -11.2002 4.2998 -12.2002 10.2998c-2 12 -2.09961 24.5996 0 37.0996c1 6 6.2002 10.4004 12.2002 10.4004h16.5c3.59961 10.0996 9 19.3994 15.8994 27.3994l-8.19922 14.3008
c-3 5.19922 -1.90039 11.8994 2.7998 15.6992c9.5 7.90039 20.3994 14.2002 32.0996 18.6006c5.7002 2.09961 12.1006 -0.100586 15.1006 -5.40039l8.19922 -14.2998c10.5 1.90039 21.2002 1.90039 31.7002 0l8.2002 14.2998c3 5.2998 9.40039 7.5 15.0996 5.40039
c11.8008 -4.40039 22.6006 -10.7002 32.1006 -18.6006c4.59961 -3.7998 5.7998 -10.5 2.7998 -15.6992l-8.2002 -14.3008c6.90039 -8 12.2998 -17.2998 15.9004 -27.3994h16.5c6 0 11.2002 -4.2998 12.2002 -10.2998c2 -12 2.09961 -24.6006 0 -37.1006
c-1 -6 -6.2002 -10.3994 -12.2002 -10.3994h-16.5c-3.60059 -10.1006 -9 -19.4004 -15.9004 -27.4004l8.2002 -14.2998c3 -5.2002 1.90039 -11.9004 -2.7998 -15.7002c-9.5 -7.90039 -20.4004 -14.2002 -32.1006 -18.5996
c-5.69922 -2.10059 -12.0996 0.0996094 -15.0996 5.39941l-8.2002 14.2998c-10.3994 -1.89941 -21.2002 -1.89941 -31.7002 0zM501.6 17c38.5 -29.5996 82.4004 14.2998 52.8008 52.7998c-38.5 29.6006 -82.4004 -14.2998 -52.8008 -52.7998z" />
    <glyph glyph-name="comments" unicode="&#xf086;" horiz-adv-x="576" 
d="M416 256c0 -88.4004 -93.0996 -160 -208 -160c-41 0 -79.0996 9.2998 -111.3 25c-21.7998 -12.7002 -52.1006 -25 -88.7002 -25c-3.2002 0 -6 1.7998 -7.2998 4.7998s-0.700195 6.40039 1.5 8.7002c0.299805 0.299805 22.3994 24.2998 35.7998 54.5
c-23.9004 26.0996 -38 57.7002 -38 92c0 88.4004 93.0996 160 208 160s208 -71.5996 208 -160zM538 36c13.4004 -30.2998 35.5 -54.2002 35.7998 -54.5c2.2002 -2.40039 2.7998 -5.7998 1.5 -8.7002c-1.2002 -2.89941 -4.09961 -4.7998 -7.2998 -4.7998
c-36.5996 0 -66.9004 12.2998 -88.7002 25c-32.2002 -15.7998 -70.2998 -25 -111.3 -25c-86.2002 0 -160.2 40.4004 -191.7 97.9004c10.4004 -1.10059 20.9004 -1.90039 31.7002 -1.90039c132.3 0 240 86.0996 240 192c0 6.7998 -0.400391 13.5 -1.2998 20.0996
c75.7998 -23.8994 129.3 -81.1992 129.3 -148.1c0 -34.2998 -14.0996 -66 -38 -92z" />
    <glyph glyph-name="star-half" unicode="&#xf089;" horiz-adv-x="576" 
d="M288 448v-439.6l-130.7 -68.6006c-23.3994 -12.2998 -50.8994 7.60059 -46.3994 33.7002l25 145.5l-105.7 103c-19 18.5 -8.5 50.7998 17.7002 54.5996l146.1 21.2002l65.2998 132.4c5.90039 11.8994 17.2998 17.7998 28.7002 17.7998z" />
    <glyph glyph-name="thumbtack" unicode="&#xf08d;" horiz-adv-x="384" 
d="M298.028 233.733c47.9893 -22.3135 85.9717 -62.5508 85.9727 -113.733c0 -13.2549 -10.7451 -24 -24 -24h-136v-104.007c0 -1.2832 -0.307617 -2.50293 -0.844727 -3.57812l-24 -48c-2.94727 -5.89258 -11.3701 -5.88184 -14.3115 0l-24 48
c-0.555664 1.11133 -0.844727 2.33594 -0.844727 3.57812v104.007h-136c-13.2549 0 -24 10.7451 -24 24c0 50.7393 37.4648 91.1797 85.9717 113.733l12.2354 118.267h-42.207c-13.2549 0 -24 10.7451 -24 24v48c0 13.2549 10.7451 24 24 24h272
c13.2549 0 24 -10.7451 24 -24v-48c0 -13.2549 -10.7451 -24 -24 -24h-42.207z" />
    <glyph glyph-name="trophy" unicode="&#xf091;" horiz-adv-x="576" 
d="M552 384c13.2998 0 24 -10.7002 24 -24v-56c0 -35.7002 -22.5996 -72.4004 -61.9004 -100.7c-31.3994 -22.7002 -69.6992 -37.0996 -110 -41.7002c-31.3994 -52.0996 -68.0996 -73.5996 -68.0996 -73.5996v-72h48c35.2998 0 64 -20.7002 64 -56v-12
c0 -6.59961 -5.40039 -12 -12 -12h-296c-6.59961 0 -12 5.40039 -12 12v12c0 35.2998 28.7002 56 64 56h48v72s-36.7002 21.5 -68.0996 73.5996c-40.2002 4.60059 -78.5 19 -110 41.7002c-39.4004 28.2998 -61.9004 65 -61.9004 100.7v56c0 13.2998 10.7002 24 24 24h104v40
c0 13.2998 10.7002 24 24 24h272c13.2998 0 24 -10.7002 24 -24v-40h104zM99.2998 255.2c12.5 -9 26.6006 -16.2002 41.7002 -21.4004c-7 25 -11.7998 53.6006 -12.7998 86.2002h-64.2002v-16c0 -11.5996 10.9004 -31.2002 35.2998 -48.7998zM512 304v16h-64.2998
c-1 -32.5996 -5.7998 -61.2002 -12.7998 -86.2002c15.0996 5.2002 29.2998 12.4004 41.7998 21.4004c17.5996 12.7002 35.2998 32.7002 35.2998 48.7998z" />
    <glyph glyph-name="upload" unicode="&#xf093;" 
d="M296 64h-80c-13.2998 0 -24 10.7002 -24 24v168h-87.7002c-17.7998 0 -26.7002 21.5 -14.0996 34.0996l152.1 152.2c7.5 7.5 19.7998 7.5 27.2998 0l152.2 -152.2c12.6006 -12.5996 3.7002 -34.0996 -14.0996 -34.0996h-87.7002v-168c0 -13.2998 -10.7002 -24 -24 -24z
M512 72v-112c0 -13.2998 -10.7002 -24 -24 -24h-464c-13.2998 0 -24 10.7002 -24 24v112c0 13.2998 10.7002 24 24 24h136v-8c0 -30.9004 25.0996 -56 56 -56h80c30.9004 0 56 25.0996 56 56v8h136c13.2998 0 24 -10.7002 24 -24zM388 -16c0 11 -9 20 -20 20s-20 -9 -20 -20
s9 -20 20 -20s20 9 20 20zM452 -16c0 11 -9 20 -20 20s-20 -9 -20 -20s9 -20 20 -20s20 9 20 20z" />
    <glyph glyph-name="lemon" unicode="&#xf094;" 
d="M489.038 425.037c23.0938 -23.0938 28.8916 -54.3906 16.833 -75.0928c-34.3115 -58.9043 53.0762 -181.249 -86.7461 -321.071s-262.167 -52.4326 -321.068 -86.7432c-20.7031 -12.0586 -52 -6.2627 -75.0947 16.832c-23.0928 23.0938 -28.8916 54.3906 -16.833 75.0928
c34.3125 58.9043 -53.0781 181.247 86.7451 321.07s262.167 52.4336 321.073 86.7461c20.7012 12.0586 51.9971 6.25879 75.0908 -16.834zM243.881 352.478c8.57227 2.14355 13.7832 10.8291 11.6416 19.4023c-2.14258 8.57324 -10.8281 13.7852 -19.4033 11.6426
c-69.8027 -17.4521 -154.218 -101.949 -171.643 -171.643c-2.1416 -8.57324 3.07031 -17.2588 11.6426 -19.4033c1.30273 -0.324219 2.6084 -0.480469 3.89258 -0.480469c7.16895 0 13.6943 4.85352 15.5117 12.124c14.5498 58.2031 90.1689 133.811 148.357 148.357z" />
    <glyph glyph-name="phone" unicode="&#xf095;" 
d="M493.4 423.4c10.8994 -2.5 18.5996 -12.2002 18.5996 -23.4004c0 -256.5 -207.9 -464 -464 -464c-11.2998 0 -20.9004 7.7998 -23.4004 18.5996l-24 104c-2.59961 11.3008 3.30078 22.9004 14 27.6006l112 48c9.80078 4.2002 21.2002 1.39941 28 -6.90039
l49.6006 -60.5996c78.2998 36.7002 141.2 100.5 177.2 177.2l-60.6006 49.5996c-8.2998 6.7002 -11.0996 18.2002 -6.89941 28l48 112c4.59961 10.5996 16.1992 16.5 27.5 13.9004z" />
    <glyph glyph-name="phone-square" unicode="&#xf098;" horiz-adv-x="448" 
d="M400 416c26.5098 0 48 -21.4902 48 -48v-352c0 -26.5098 -21.4902 -48 -48 -48h-352c-26.5098 0 -48 21.4902 -48 48v352c0 26.5098 21.4902 48 48 48h352zM94 32c160.055 0 290 129.708 290 290c0 7.11621 -4.97559 13.0801 -11.6279 14.6143l-65 14.998
c-1.08691 0.250977 -2.20312 0.394531 -3.36621 0.394531c-6.18457 0 -11.501 -3.75195 -13.7939 -9.10156l-30 -69.998c-0.775391 -1.81055 -1.22266 -3.81055 -1.22266 -5.90332c0 -4.68066 2.14844 -8.86328 5.51172 -11.6152l37.8857 -30.9971
c-22.4834 -47.9219 -61.8369 -87.8164 -110.78 -110.779l-30.9971 37.8848c-2.75195 3.36328 -6.94043 5.49414 -11.6211 5.49414c-2.09277 0 -4.08691 -0.429688 -5.89746 -1.20508l-69.998 -29.999c-5.34961 -2.29297 -9.08984 -7.59375 -9.08984 -13.7783
c0 -1.16309 0.131836 -2.29492 0.382812 -3.38184l14.998 -65c1.55957 -6.75391 7.58301 -11.627 14.6162 -11.627z" />
    <glyph glyph-name="unlock" unicode="&#xf09c;" horiz-adv-x="448" 
d="M400 192c26.5 0 48 -21.5 48 -48v-160c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v160c0 26.5 21.5 48 48 48h24v102.5c0 84 67.5 153.2 151.5 153.5s152.5 -68 152.5 -152v-16c0 -13.2998 -10.7002 -24 -24 -24h-32c-13.2998 0 -24 10.7002 -24 24v16
c0 39.9004 -32.7002 72.4004 -72.7002 72c-39.5996 -0.400391 -71.2998 -33.2998 -71.2998 -72.9004v-103.1h248z" />
    <glyph glyph-name="credit-card" unicode="&#xf09d;" horiz-adv-x="576" 
d="M0 16v176h576v-176c0 -26.5 -21.5 -48 -48 -48h-480c-26.5 0 -48 21.5 -48 48zM192 84v-40c0 -6.59961 5.40039 -12 12 -12h136c6.59961 0 12 5.40039 12 12v40c0 6.59961 -5.40039 12 -12 12h-136c-6.59961 0 -12 -5.40039 -12 -12zM64 84v-40
c0 -6.59961 5.40039 -12 12 -12h72c6.59961 0 12 5.40039 12 12v40c0 6.59961 -5.40039 12 -12 12h-72c-6.59961 0 -12 -5.40039 -12 -12zM576 368v-48h-576v48c0 26.5 21.5 48 48 48h480c26.5 0 48 -21.5 48 -48z" />
    <glyph glyph-name="rss" unicode="&#xf09e;" horiz-adv-x="448" 
d="M128.081 32.041c0 -35.3691 -28.6719 -64.041 -64.041 -64.041s-64.04 28.6719 -64.04 64.041s28.6719 64.041 64.041 64.041s64.04 -28.6729 64.04 -64.041zM303.741 -15.209c0.494141 -9.13477 -6.84668 -16.791 -15.9951 -16.79h-48.0693
c-8.41406 0 -15.4707 6.49023 -16.0176 14.8867c-7.29883 112.07 -96.9404 201.488 -208.772 208.772c-8.39648 0.545898 -14.8867 7.60254 -14.8867 16.0176v48.0693c0 9.14746 7.65625 16.4883 16.791 15.9941c154.765 -8.36328 278.596 -132.351 286.95 -286.95z
M447.99 -15.4971c0.324219 -9.03027 -6.97168 -16.5029 -16.0049 -16.5039h-48.0684c-8.62598 0 -15.6455 6.83496 -15.999 15.4531c-7.83789 191.148 -161.286 344.626 -352.465 352.465c-8.61816 0.354492 -15.4531 7.37402 -15.4531 15.999v48.0684
c0 9.03418 7.47266 16.3301 16.5029 16.0059c234.962 -8.43555 423.093 -197.667 431.487 -431.487z" />
    <glyph glyph-name="hdd" unicode="&#xf0a0;" horiz-adv-x="576" 
d="M576 144v-96c0 -26.5098 -21.4902 -48 -48 -48h-480c-26.5098 0 -48 21.4902 -48 48v96c0 26.5098 21.4902 48 48 48h480c26.5098 0 48 -21.4902 48 -48zM528 224h-480c-0.0234375 0 -0.0996094 -0.0361328 -0.124023 -0.0361328
c-10.8613 0 -21.2168 -2.18066 -30.6533 -6.12891l96.5283 144.791c8.60742 12.9102 23.2725 21.374 39.9385 21.374h268.621c16.667 0 31.332 -8.46387 39.9395 -21.374l96.5273 -144.791c-9.43652 3.94824 -19.8447 6.16504 -30.7061 6.16504h-0.0712891zM480 128
c-17.6729 0 -32 -14.3271 -32 -32s14.3271 -32 32 -32s32 14.3271 32 32s-14.3271 32 -32 32zM384 128c-17.6729 0 -32 -14.3271 -32 -32s14.3271 -32 32 -32s32 14.3271 32 32s-14.3271 32 -32 32z" />
    <glyph glyph-name="bullhorn" unicode="&#xf0a1;" horiz-adv-x="576" 
d="M576 208c0 -23.6299 -12.9502 -44.04 -32.0098 -55.1299v-152.87c0 -9.21973 -7.08008 -32 -32 -32c-7.5459 0.00683594 -14.5078 2.64062 -19.9805 7.01953l-85.0293 68.0303c-42.7002 34.1406 -96.3203 52.9502 -150.98 52.9502h-28.0801
c-2.79004 -10.21 -4.41016 -20.8896 -4.41016 -32c0 -29.0801 9.75 -55.9199 26.1504 -77.4404c15.79 -20.7197 0.149414 -50.5596 -25.9004 -50.5596h-74.2793c-11.8809 0 -23.2109 6.37012 -28.4004 17.0596c-16.2998 33.5908 -25.5605 71.1709 -25.5605 110.94
c0 10.8604 0.790039 21.5195 2.18066 32h-33.7002c-35.3496 0 -64 28.6504 -64 64v96c0 35.3496 28.6504 64 64 64h192c54.6602 0 108.28 18.8096 150.99 52.9502l85.0293 68.0303c5.79004 4.63965 12.8604 7.01953 19.9805 7.01953c25.0195 0 32 -23.2598 32 -32.0098
v-152.87c19.0498 -11.0801 32 -31.4902 32 -55.1201zM480 66.5801v282.84l-33.0498 -26.4395c-54 -43.2002 -121.83 -66.9805 -190.95 -66.9805v-96c69.1201 0 136.95 -23.7803 190.95 -66.9805z" />
    <glyph glyph-name="certificate" unicode="&#xf0a3;" 
d="M458.622 192.08l45.9844 -45.0039c13.7012 -12.9727 7.32227 -36.0371 -10.6641 -40.3389l-62.6504 -15.9902l17.6611 -62.0146c4.99023 -17.834 -11.8252 -34.665 -29.6611 -29.6719l-61.9941 17.667l-15.9834 -62.6709
c-4.33887 -18.1533 -27.8252 -24.1553 -40.3252 -10.668l-44.9893 46.001l-44.9912 -46.001c-12.6289 -13.3496 -35.8857 -7.90625 -40.3252 10.668l-15.9834 62.6709l-61.9941 -17.667c-17.832 -4.99121 -34.6523 11.833 -29.6611 29.6719l17.6611 62.0146
l-62.6504 15.9902c-17.9795 4.2998 -24.3721 27.3613 -10.6641 40.3389l45.9854 45.0039l-45.9854 45.0049c-13.7012 12.9707 -7.32227 36.0371 10.665 40.3379l62.6504 15.9902l-17.6611 62.0146c-4.99023 17.834 11.8242 34.665 29.6611 29.6709l61.9951 -17.667
l15.9834 62.6709c4.27832 17.9023 27.6953 24.0195 40.3252 10.6689l44.9893 -46.3418l44.9902 46.3428c12.7744 13.5039 36.0947 7.03027 40.3252 -10.6689l15.9834 -62.6709l61.9941 17.667c17.832 4.99219 34.6523 -11.833 29.6611 -29.6709l-17.6611 -62.0146
l62.6504 -15.9902c17.9795 -4.2998 24.3721 -27.3623 10.6641 -40.3389z" />
    <glyph glyph-name="hand-point-right" unicode="&#xf0a4;" 
d="M512 248.348c0 -23.625 -20.6504 -43.8252 -44.7998 -43.8252h-99.8516c16.3408 -17.0488 18.3467 -49.7666 -6.29883 -70.9443c14.2881 -22.8291 2.14746 -53.0176 -16.4502 -62.3154c8.97461 -49.1406 -21.9453 -71.2627 -72.5996 -71.2627
c-2.74609 0 -13.2764 0.203125 -16 0.195312c-61.9707 -0.167969 -76.8936 31.0645 -123.731 38.3145c-11.6729 1.80762 -20.2686 11.8916 -20.2686 23.7041v171.525l0.00195312 0.000976562c0.0107422 18.3662 10.6074 35.8887 28.4639 43.8447
c28.8857 12.9941 95.4131 49.0381 107.534 77.3232c7.79688 18.1934 21.3838 29.084 40 29.0918c34.2217 0.0136719 57.752 -35.0977 44.1191 -66.9082c-3.58301 -8.3584 -8.3125 -16.6699 -14.1533 -24.918h149.234c23.4502 0 44.7998 -20.543 44.7998 -43.8262zM96 248
v-192c0 -13.2549 -10.7451 -24 -24 -24h-48c-13.2549 0 -24 10.7451 -24 24v192c0 13.2549 10.7451 24 24 24h48c13.2549 0 24 -10.7451 24 -24zM68 80c0 11.0459 -8.9541 20 -20 20s-20 -8.9541 -20 -20s8.9541 -20 20 -20s20 8.9541 20 20z" />
    <glyph glyph-name="hand-point-left" unicode="&#xf0a5;" 
d="M44.7998 292.174h149.234c-5.84082 8.24805 -10.5703 16.5586 -14.1533 24.918c-13.6328 31.8105 9.89746 66.9219 44.1191 66.9082c18.6162 -0.0078125 32.2031 -10.8975 40 -29.0918c12.1221 -28.2861 78.6484 -64.3291 107.534 -77.3232
c17.8564 -7.95605 28.4531 -25.4785 28.4639 -43.8447l0.00195312 -0.000976562v-171.526c0 -11.8115 -8.5957 -21.8965 -20.2686 -23.7031c-46.8379 -7.25 -61.7607 -38.4824 -123.731 -38.3145c-2.72363 0.00683594 -13.2539 -0.195312 -16 -0.195312
c-50.6543 0 -81.5742 22.1221 -72.5996 71.2627c-18.5977 9.29688 -30.7383 39.4863 -16.4502 62.3154c-24.6455 21.1768 -22.6396 53.8955 -6.29883 70.9443h-99.8516c-24.1494 0 -44.7998 20.2002 -44.7998 43.8252c0 23.2832 21.3496 43.8262 44.7998 43.8262zM440 272
h48c13.2549 0 24 -10.7451 24 -24v-192c0 -13.2549 -10.7451 -24 -24 -24h-48c-13.2549 0 -24 10.7451 -24 24v192c0 13.2549 10.7451 24 24 24zM464 60c11.0459 0 20 8.9541 20 20s-8.9541 20 -20 20s-20 -8.9541 -20 -20s8.9541 -20 20 -20z" />
    <glyph glyph-name="hand-point-up" unicode="&#xf0a6;" horiz-adv-x="384" 
d="M135.652 448c23.625 0 43.8252 -20.6504 43.8252 -44.7998v-99.8516c17.0488 16.3408 49.7666 18.3467 70.9443 -6.29883c22.8291 14.2881 53.0176 2.14746 62.3154 -16.4502c49.1406 8.97461 71.2627 -21.9453 71.2627 -72.5996
c0 -2.74609 -0.203125 -13.2764 -0.195312 -16c0.167969 -61.9707 -31.0645 -76.8936 -38.3145 -123.731c-1.80762 -11.6729 -11.8916 -20.2686 -23.7041 -20.2686h-171.525l-0.000976562 0.00195312c-18.3662 0.0107422 -35.8887 10.6074 -43.8447 28.4639
c-12.9941 28.8857 -49.0381 95.4121 -77.3232 107.534c-18.1943 7.79688 -29.084 21.3838 -29.0918 40c-0.0136719 34.2217 35.0977 57.752 66.9082 44.1191c8.3584 -3.58301 16.6699 -8.3125 24.918 -14.1533v149.234c0 23.4502 20.543 44.7998 43.8262 44.7998zM136 32
h192c13.2549 0 24 -10.7451 24 -24v-48c0 -13.2549 -10.7451 -24 -24 -24h-192c-13.2549 0 -24 10.7451 -24 24v48c0 13.2549 10.7451 24 24 24zM304 4c-11.0459 0 -20 -8.9541 -20 -20s8.9541 -20 20 -20s20 8.9541 20 20s-8.9541 20 -20 20z" />
    <glyph glyph-name="hand-point-down" unicode="&#xf0a7;" horiz-adv-x="384" 
d="M91.8262 -19.2002v149.234c-8.24805 -5.84082 -16.5586 -10.5703 -24.918 -14.1533c-31.8105 -13.6328 -66.9219 9.89746 -66.9082 44.1191c0.0078125 18.6162 10.8975 32.2031 29.0918 40c28.2861 12.1221 64.3291 78.6484 77.3232 107.534
c7.95605 17.8564 25.4785 28.4531 43.8447 28.4639l0.000976562 0.00195312h171.526c11.8115 0 21.8965 -8.5957 23.7031 -20.2686c7.25 -46.8379 38.4824 -61.7607 38.3145 -123.731c-0.00683594 -2.72363 0.195312 -13.2539 0.195312 -16
c0 -50.6543 -22.1221 -81.5742 -71.2627 -72.5996c-9.29688 -18.5977 -39.4863 -30.7383 -62.3154 -16.4502c-21.1768 -24.6455 -53.8955 -22.6396 -70.9443 -6.29883v-99.8516c0 -24.1494 -20.2002 -44.7998 -43.8252 -44.7998
c-23.2832 0 -43.8262 21.3496 -43.8262 44.7998zM112 376v48c0 13.2549 10.7451 24 24 24h192c13.2549 0 24 -10.7451 24 -24v-48c0 -13.2549 -10.7451 -24 -24 -24h-192c-13.2549 0 -24 10.7451 -24 24zM324 400c0 11.0459 -8.9541 20 -20 20s-20 -8.9541 -20 -20
s8.9541 -20 20 -20s20 8.9541 20 20z" />
    <glyph glyph-name="arrow-circle-left" unicode="&#xf0a8;" 
d="M256 -56c-137 0 -248 111 -248 248s111 248 248 248s248 -111 248 -248s-111 -248 -248 -248zM284.9 87.5996l-75.5 72.4004h182.6c13.2998 0 24 10.7002 24 24v16c0 13.2998 -10.7002 24 -24 24h-182.6l75.5 72.4004c9.69922 9.2998 9.89941 24.7998 0.399414 34.2998
l-11 10.8994c-9.39941 9.40039 -24.5996 9.40039 -33.8994 0l-132.7 -132.6c-9.40039 -9.40039 -9.40039 -24.5996 0 -33.9004l132.7 -132.699c9.39941 -9.40039 24.5996 -9.40039 33.8994 0l11 10.8994c9.5 9.5 9.2998 25 -0.399414 34.2998z" />
    <glyph glyph-name="arrow-circle-right" unicode="&#xf0a9;" 
d="M256 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM227.1 296.4l75.5 -72.4004h-182.6c-13.2998 0 -24 -10.7002 -24 -24v-16c0 -13.2998 10.7002 -24 24 -24h182.6l-75.5 -72.4004
c-9.69922 -9.2998 -9.89941 -24.7998 -0.399414 -34.2998l11 -10.8994c9.39941 -9.40039 24.5996 -9.40039 33.8994 0l132.7 132.6c9.40039 9.40039 9.40039 24.5996 0 33.9004l-132.7 132.8c-9.39941 9.39941 -24.5996 9.39941 -33.8994 0l-11 -10.9004
c-9.5 -9.59961 -9.2998 -25.0996 0.399414 -34.3994z" />
    <glyph glyph-name="arrow-circle-up" unicode="&#xf0aa;" 
d="M8 192c0 137 111 248 248 248s248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248zM151.6 163.1l72.4004 75.5v-182.6c0 -13.2998 10.7002 -24 24 -24h16c13.2998 0 24 10.7002 24 24v182.6l72.4004 -75.5c9.2998 -9.69922 24.7998 -9.89941 34.2998 -0.399414
l10.8994 11c9.40039 9.39941 9.40039 24.5996 0 33.8994l-132.6 132.7c-9.40039 9.40039 -24.5996 9.40039 -33.9004 0l-132.8 -132.7c-9.39941 -9.39941 -9.39941 -24.5996 0 -33.8994l10.9004 -11c9.59961 -9.5 25.0996 -9.2998 34.3994 0.399414z" />
    <glyph glyph-name="arrow-circle-down" unicode="&#xf0ab;" 
d="M504 192c0 -137 -111 -248 -248 -248s-248 111 -248 248s111 248 248 248s248 -111 248 -248zM360.4 220.9l-72.4004 -75.5v182.6c0 13.2998 -10.7002 24 -24 24h-16c-13.2998 0 -24 -10.7002 -24 -24v-182.6l-72.4004 75.5
c-9.2998 9.69922 -24.7998 9.89941 -34.2998 0.399414l-10.8994 -11c-9.40039 -9.39941 -9.40039 -24.5996 0 -33.8994l132.6 -132.7c9.40039 -9.40039 24.5996 -9.40039 33.9004 0l132.699 132.7c9.40039 9.39941 9.40039 24.5996 0 33.8994l-10.8994 11
c-9.5 9.5 -25 9.2998 -34.2998 -0.399414z" />
    <glyph glyph-name="globe" unicode="&#xf0ac;" horiz-adv-x="496" 
d="M336.5 288h-177c14.5 89.2998 48.7002 152 88.5 152s74 -62.7002 88.5 -152zM152 192c0 22.2002 1.2002 43.5 3.2998 64h185.3c2.10059 -20.5 3.30078 -41.7998 3.30078 -64s-1.2002 -43.5 -3.30078 -64h-185.3c-2.09961 20.5 -3.2998 41.7998 -3.2998 64zM476.7 288
h-108c-8.7998 56.9004 -25.6006 107.8 -50 141.6c71.5 -21.1992 129.399 -73.6992 158 -141.6zM177.2 429.6c-24.4004 -33.7998 -41.2002 -84.6992 -49.9004 -141.6h-108c28.5 67.9004 86.5 120.4 157.9 141.6zM487.4 256c5.39941 -20.5 8.5 -41.7998 8.5 -64
s-3.10059 -43.5 -8.60059 -64h-114.6c2.09961 21 3.2998 42.5 3.2998 64s-1.2002 43 -3.2998 64h114.7zM120 192c0 -21.5 1.2002 -43 3.2002 -64h-114.601c-5.39941 20.5 -8.59961 41.7998 -8.59961 64s3.2002 43.5 8.59961 64h114.7
c-2.09961 -21 -3.2998 -42.5 -3.2998 -64zM159.5 96h177c-14.5 -89.2998 -48.7002 -152 -88.5 -152s-74 62.7002 -88.5 152zM318.8 -45.5996c24.4004 33.7998 41.2002 84.6992 50 141.6h108c-28.5996 -67.9004 -86.5996 -120.4 -158 -141.6zM19.2998 96h108
c8.7998 -56.9004 25.6006 -107.8 50 -141.6c-71.5 21.1992 -129.399 73.6992 -158 141.6z" />
    <glyph glyph-name="wrench" unicode="&#xf0ad;" 
d="M507.73 338.9c11.7891 -47.4102 -0.84082 -99.6602 -37.9102 -136.73c-39.9004 -39.9004 -97.25 -50.9297 -147.37 -34.2197l-213.21 -213.21c-24.9902 -24.9902 -65.5098 -24.9902 -90.5 0s-24.9902 65.5098 0 90.5l213.39 213.39
c-16.5 50.1006 -5.58984 107.561 34.0498 147.2c37.0303 37.0195 89.2002 49.6699 136.58 37.9297c9.08984 -2.25977 12.2803 -13.54 5.66016 -20.1602l-74.3604 -74.3594l11.3105 -67.8799l67.8799 -11.3105l74.3604 74.3604
c6.58008 6.58008 17.8799 3.51953 20.1201 -5.50977zM64 -24c13.25 0 24 10.75 24 24c0 13.2598 -10.75 24 -24 24s-24 -10.7402 -24 -24c0 -13.25 10.75 -24 24 -24z" />
    <glyph glyph-name="tasks" unicode="&#xf0ae;" 
d="M139.61 412.5l17 -16.5c2.13281 -2.18066 3.44922 -5.16797 3.44922 -8.45605c0 -3.33496 -1.35352 -6.35547 -3.54004 -8.54395l-72.1992 -72.1904l-15.5898 -15.6191c-2.29297 -2.17969 -5.39941 -3.51758 -8.80859 -3.51758
c-3.41016 0 -6.50977 1.33789 -8.80176 3.51758l-47.5898 47.3994c-2.18066 2.17383 -3.53125 5.18262 -3.53125 8.50195c0 3.31836 1.35059 6.3252 3.53125 8.49805l15.7002 15.7197c2.17285 2.18164 5.18164 3.53125 8.50098 3.53125s6.3252 -1.34961 8.49902 -3.53125
l22.6992 -22.1191l63.6807 63.3096c2.17285 2.18066 5.18262 3.53125 8.50098 3.53125c3.31934 0 6.3252 -1.35059 8.49902 -3.53125zM139.61 253.31l16.9795 -17c2.125 -2.16504 3.43652 -5.13574 3.43652 -8.40625c0 -3.31641 -1.34863 -6.32031 -3.52637 -8.49316
l-72.2002 -72.2197l-15.7002 -15.6904c-2.29004 -2.17871 -5.39551 -3.5166 -8.80273 -3.5166c-3.4082 0 -6.50586 1.33789 -8.79688 3.5166l-47.4697 47.5c-2.18066 2.17285 -3.53125 5.18262 -3.53125 8.50195c0 3.31836 1.35059 6.3252 3.53125 8.49805l15.7002 15.6904
c2.17285 2.18066 5.18164 3.53125 8.50098 3.53125s6.3252 -1.35059 8.49902 -3.53125l22.6992 -22.1006l63.6807 63.7197c2.17285 2.18164 5.18262 3.53125 8.50098 3.53125c3.31934 0 6.3252 -1.34961 8.49902 -3.53125zM64 80c26.4922 0 48 -21.5078 48 -48
s-21.5078 -48 -48 -48c-26.4697 0 -48.5898 21.5 -48.5898 48s22.0996 48 48.5898 48zM496 64c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-288c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h288zM496 384
c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-288c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h288zM496 224c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-288c-8.83105 0 -16 7.16895 -16 16v32
c0 8.83105 7.16895 16 16 16h288z" />
    <glyph glyph-name="filter" unicode="&#xf0b0;" 
d="M487.976 448c21.3623 0 32.0459 -25.8965 16.9717 -40.9707l-184.947 -184.971v-262.039c0 -19.5127 -21.9805 -30.71 -37.7627 -19.6611l-80 55.9795c-6.41602 4.49219 -10.2373 11.8311 -10.2373 19.6621v206.059l-184.942 184.971
c-15.1045 15.1045 -4.34766 40.9707 16.9707 40.9707h463.947z" />
    <glyph glyph-name="briefcase" unicode="&#xf0b1;" 
d="M320 112v48h192v-144c0 -25.5996 -22.4004 -48 -48 -48h-416c-25.5996 0 -48 22.4004 -48 48v144h192v-48c0 -8.83984 7.16016 -16 16 -16h96c8.83984 0 16 7.16016 16 16zM464 320c25.5996 0 48 -22.4004 48 -48v-80h-512v80c0 25.5996 22.4004 48 48 48h80v48
c0 25.5996 22.4004 48 48 48h160c25.5996 0 48 -22.4004 48 -48v-48h80zM320 320v32h-128v-32h128z" />
    <glyph glyph-name="arrows-alt" unicode="&#xf0b2;" 
d="M352.201 22.2246l-79.1963 -79.1953c-9.37305 -9.37305 -24.5684 -9.37305 -33.9404 0l-79.1963 79.1953c-15.1191 15.1191 -4.41113 40.9717 16.9707 40.9707h51.1621l-0.000976562 100.805h-100.804v-51.1621c0 -21.3818 -25.8516 -32.0898 -40.9717 -16.9707
l-79.1953 79.1963c-9.37305 9.37207 -9.37305 24.5684 0 33.9404l79.1953 79.1963c15.1191 15.1191 40.9717 4.41113 40.9717 -16.9717v-51.2285h100.804v100.804h-51.2305c-21.3818 0 -32.0898 25.8516 -16.9707 40.9717l79.1963 79.1953
c9.37305 9.37305 24.5684 9.37305 33.9404 0l79.1963 -79.1953c15.1191 -15.1191 4.41113 -40.9717 -16.9707 -40.9717h-51.1621v-100.804h100.804v51.1621c0 21.3818 25.8516 32.0898 40.9707 16.9707l79.1953 -79.1963c9.37305 -9.37207 9.37305 -24.5684 0 -33.9404
l-79.1953 -79.1963c-15.1191 -15.1191 -40.9717 -4.41113 -40.9707 16.9717v51.2285h-100.803v-100.804h51.2305c21.3818 0 32.0898 -25.8516 16.9707 -40.9717z" />
    <glyph glyph-name="users" unicode="&#xf0c0;" horiz-adv-x="640" 
d="M96 224c-35.2998 0 -64 28.7002 -64 64s28.7002 64 64 64s64 -28.7002 64 -64s-28.7002 -64 -64 -64zM544 224c-35.2998 0 -64 28.7002 -64 64s28.7002 64 64 64s64 -28.7002 64 -64s-28.7002 -64 -64 -64zM576 192c35.2998 0 64 -28.7002 64 -64v-32
c0 -17.7002 -14.2998 -32 -32 -32h-66c-6.2002 47.4004 -34.7998 87.2998 -75.0996 109.4c11.5996 11.5 27.5 18.5996 45.0996 18.5996h64zM320 192c-61.9004 0 -112 50.0996 -112 112s50.0996 112 112 112s112 -50.0996 112 -112s-50.0996 -112 -112 -112zM396.8 160
c63.6006 0 115.2 -51.5996 115.2 -115.2v-28.7998c0 -26.5 -21.5 -48 -48 -48h-288c-26.5 0 -48 21.5 -48 48v28.7998c0 63.6006 51.5996 115.2 115.2 115.2h8.2998c20.9004 -10 43.9004 -16 68.5 -16s47.7002 6 68.5 16h8.2998zM173.1 173.4
c-40.2998 -22.1006 -68.8994 -62 -75.1992 -109.4h-65.9004c-17.7002 0 -32 14.2998 -32 32v32c0 35.2998 28.7002 64 64 64h64c17.5996 0 33.5 -7.09961 45.0996 -18.5996z" />
    <glyph glyph-name="link" unicode="&#xf0c1;" 
d="M326.612 262.609c59.7471 -59.8096 58.9268 -155.698 0.359375 -214.591c-0.109375 -0.119141 -0.239258 -0.25 -0.359375 -0.369141l-67.2002 -67.2002c-59.2705 -59.2705 -155.699 -59.2627 -214.96 0c-59.2705 59.2598 -59.2705 155.7 0 214.96l37.1055 37.1055
c9.84082 9.84082 26.7861 3.30078 27.2939 -10.6055c0.648438 -17.7227 3.82617 -35.5273 9.69043 -52.7207c1.98633 -5.82227 0.567383 -12.2627 -3.7832 -16.6123l-13.0869 -13.0869c-28.0254 -28.0264 -28.9053 -73.6602 -1.15527 -101.96
c28.0244 -28.5791 74.0859 -28.749 102.325 -0.510742l67.2002 67.1904c28.1914 28.1914 28.0732 73.7568 0 101.83c-3.70117 3.69434 -7.42871 6.56348 -10.3408 8.56934c-4.05078 2.78125 -6.74707 7.37402 -6.94727 12.6055
c-0.395508 10.5674 3.34766 21.4561 11.6982 29.8057l21.0537 21.0557c5.52148 5.52051 14.1826 6.19922 20.584 1.73047c7.38574 -5.15723 14.1709 -10.8447 20.5225 -17.1963zM467.547 403.551c59.2705 -59.2598 59.2705 -155.7 -0.000976562 -214.959l-37.1055 -37.1055
c-9.84082 -9.83984 -26.7852 -3.30078 -27.2939 10.6055c-0.648438 17.7227 -3.82617 35.5273 -9.69043 52.7217c-1.98633 5.82129 -0.567383 12.2617 3.7832 16.6113l13.0869 13.0869c28.0264 28.0264 28.9053 73.6602 1.15527 101.96
c-28.0254 28.5791 -74.0869 28.749 -102.325 0.510742l-67.2002 -67.1904c-28.1914 -28.1914 -28.0732 -73.7568 0 -101.83c3.70117 -3.69434 7.42871 -6.56348 10.3408 -8.56934c4.05078 -2.78125 6.74707 -7.37402 6.94727 -12.6055
c0.395508 -10.5674 -3.34766 -21.4561 -11.6982 -29.8057l-21.0537 -21.0557c-5.52051 -5.51953 -14.1826 -6.19922 -20.584 -1.73047c-7.38574 5.15625 -14.1699 10.8447 -20.5215 17.1953c-59.7471 59.8096 -58.9258 155.698 -0.359375 214.591
c0.109375 0.119141 0.239258 0.25 0.359375 0.369141l67.2002 67.2002c59.2705 59.2705 155.699 59.2627 214.96 0z" />
    <glyph glyph-name="cloud" unicode="&#xf0c2;" horiz-adv-x="640" 
d="M537.6 221.4c58.4004 -11.8008 102.4 -63.5 102.4 -125.4c0 -70.7002 -57.2998 -128 -128 -128h-368c-79.5 0 -144 64.5 -144 144c0 62.7998 40.2002 116.2 96.2002 135.9c-0.100586 2.69922 -0.200195 5.39941 -0.200195 8.09961c0 88.4004 71.5996 160 160 160
c59.2998 0 111 -32.2002 138.7 -80.2002c15.2002 10.2002 33.5996 16.2002 53.2998 16.2002c53 0 96 -43 96 -96c0 -12.2002 -2.2998 -23.9004 -6.40039 -34.5996z" />
    <glyph glyph-name="flask" unicode="&#xf0c3;" horiz-adv-x="448" 
d="M437.2 44.5c29.2998 -47 -4.40039 -108.5 -60.1006 -108.5h-306.199c-55.6006 0 -89.4004 61.4004 -60.1006 108.5l117.2 188.5v151h-8c-13.2998 0 -24 10.7002 -24 24v16c0 13.2998 10.7002 24 24 24h208c13.2998 0 24 -10.7002 24 -24v-16
c0 -13.2998 -10.7002 -24 -24 -24h-8v-151zM137.9 128h172l-48.2002 77.5996c-3.60059 5.2002 -5.7998 11.5 -5.7998 18.4004v160h-64v-160c0 -6.7998 -2.10059 -13.2002 -5.80078 -18.4004z" />
    <glyph glyph-name="cut" unicode="&#xf0c4;" horiz-adv-x="448" 
d="M278.06 192l166.421 -166.43c4.68945 -4.69043 4.68945 -12.29 0 -16.9707c-32.8008 -32.7998 -85.9902 -32.7998 -118.79 0l-115.511 115.521l-24.8594 -24.8604c4.30957 -10.9199 6.67969 -22.8096 6.67969 -35.2598c0 -53.0195 -42.9805 -96 -96 -96
s-96 42.9805 -96 96s42.9805 96 96 96c4.53027 0 8.99023 -0.320312 13.3604 -0.929688l32.9297 32.9297l-32.9297 32.9297c-4.37012 -0.609375 -8.82031 -0.929688 -13.3604 -0.929688c-53.0195 0 -96 42.9805 -96 96s42.9805 96 96 96s96 -42.9805 96 -96
c0 -12.4502 -2.37012 -24.3398 -6.67969 -35.2598l24.8594 -24.8604l115.511 115.521c32.7998 32.7998 85.9893 32.7998 118.79 0c4.68945 -4.68066 4.68945 -12.2803 0 -16.9707zM96 288c17.6396 0 32 14.3604 32 32s-14.3604 32 -32 32s-32 -14.3604 -32 -32
s14.3604 -32 32 -32zM96 32c17.6396 0 32 14.3604 32 32s-14.3604 32 -32 32s-32 -14.3604 -32 -32s14.3604 -32 32 -32z" />
    <glyph glyph-name="copy" unicode="&#xf0c5;" horiz-adv-x="448" 
d="M320 0v-40c0 -13.2549 -10.7451 -24 -24 -24h-272c-13.2549 0 -24 10.7451 -24 24v368c0 13.2549 10.7451 24 24 24h72v-296c0 -30.8789 25.1211 -56 56 -56h168zM320 344c0 -13.2002 10.7998 -24 24 -24h104v-264c0 -13.2549 -10.7451 -24 -24 -24h-272
c-13.2549 0 -24 10.7451 -24 24v368c0 13.2549 10.7451 24 24 24h168v-104zM440.971 375.029c4.34473 -4.34473 7.0293 -10.3477 7.0293 -16.9707v-6.05859h-96v96h6.05859c6.62305 0 12.626 -2.68457 16.9707 -7.0293z" />
    <glyph glyph-name="paperclip" unicode="&#xf0c6;" horiz-adv-x="448" 
d="M43.2461 -18.1416c-58.4297 60.2891 -57.3408 157.511 1.38574 217.581l209.76 214.561c44.3164 45.332 116.352 45.3359 160.672 0c43.8896 -44.8936 43.9424 -117.329 0 -162.276l-182.85 -186.852c-29.8545 -30.5371 -78.6328 -30.1113 -107.981 0.998047
c-28.2754 29.9697 -27.3682 77.4727 1.45117 106.953l143.743 146.835c6.18262 6.31348 16.3125 6.42188 22.626 0.241211l22.8613 -22.3799c6.31445 -6.18164 6.42188 -16.3115 0.241211 -22.626l-143.729 -146.82c-4.93164 -5.04492 -5.23535 -13.4287 -0.647461 -18.292
c4.37207 -4.63379 11.2451 -4.71094 15.6875 -0.165039l182.85 186.851c19.6123 20.0625 19.6123 52.7256 -0.0117188 72.7979c-19.1885 19.627 -49.957 19.6377 -69.1533 0l-209.762 -214.56c-34.7627 -35.5605 -35.2988 -93.1201 -1.19043 -128.313
c34.0098 -35.0928 88.9844 -35.1367 123.058 -0.285156l172.061 175.999c6.17676 6.31836 16.3066 6.43262 22.626 0.255859l22.877 -22.3643c6.31836 -6.17676 6.43359 -16.3066 0.255859 -22.626l-172.061 -175.998c-59.5752 -60.9385 -155.942 -60.2158 -214.77 0.485352
z" />
    <glyph glyph-name="save" unicode="&#xf0c7;" horiz-adv-x="448" 
d="M433.941 318.059c8.68848 -8.68848 14.0586 -20.6943 14.0586 -33.9404v-268.118c0 -26.5098 -21.4902 -48 -48 -48h-352c-26.5098 0 -48 21.4902 -48 48v352c0 26.5098 21.4902 48 48 48h268.118c13.2461 0 25.252 -5.37012 33.9404 -14.0586zM224 32
c35.3457 0 64 28.6543 64 64s-28.6543 64 -64 64s-64 -28.6543 -64 -64s28.6543 -64 64 -64zM320 336.52c0 3.31152 -1.34277 6.31348 -3.51465 8.48535l-3.48047 3.48047c-2.25 2.25098 -5.30176 3.51465 -8.48535 3.51465h-228.52c-6.62695 0 -12 -5.37305 -12 -12v-104
c0 -6.62695 5.37305 -12 12 -12h232c6.62695 0 12 5.37305 12 12v100.52z" />
    <glyph glyph-name="square" unicode="&#xf0c8;" horiz-adv-x="448" 
d="M400 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h352z" />
    <glyph glyph-name="bars" unicode="&#xf0c9;" horiz-adv-x="448" 
d="M16 316c-8.83691 0 -16 7.16309 -16 16v40c0 8.83691 7.16309 16 16 16h416c8.83691 0 16 -7.16309 16 -16v-40c0 -8.83691 -7.16309 -16 -16 -16h-416zM16 156c-8.83691 0 -16 7.16309 -16 16v40c0 8.83691 7.16309 16 16 16h416c8.83691 0 16 -7.16309 16 -16v-40
c0 -8.83691 -7.16309 -16 -16 -16h-416zM16 -4c-8.83691 0 -16 7.16309 -16 16v40c0 8.83691 7.16309 16 16 16h416c8.83691 0 16 -7.16309 16 -16v-40c0 -8.83691 -7.16309 -16 -16 -16h-416z" />
    <glyph glyph-name="list-ul" unicode="&#xf0ca;" 
d="M48 400c26.4922 0 48 -21.5078 48 -48s-21.5078 -48 -48 -48s-48 21.5078 -48 48s21.5078 48 48 48zM48 240c26.4922 0 48 -21.5078 48 -48s-21.5078 -48 -48 -48s-48 21.5078 -48 48s21.5078 48 48 48zM48 80c26.4922 0 48 -21.5078 48 -48s-21.5078 -48 -48 -48
s-48 21.5078 -48 48s21.5078 48 48 48zM496 64c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-320c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h320zM496 384c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16
h-320c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h320zM496 224c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-320c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h320z" />
    <glyph glyph-name="list-ol" unicode="&#xf0cb;" 
d="M61.7695 47c19.6104 -5.12012 28.7002 -20.5 28.7305 -34.8799c0 -21.3701 -14.3398 -44.1201 -48.5 -44.1201c-16.6201 0 -29.29 4.75 -37 9.44043c-5.82031 4.21973 -6.34961 9.80957 -2.62988 15.9395l5.58984 9.31055c3.86035 6.61914 9.11035 7 15.5996 3.11914
c4.76758 -1.95996 10.0107 -3.07617 15.4707 -3.11914c10.1602 0 14.3594 3.5 14.3594 8.21973c0 6.64941 -5.60938 9.08984 -15.9395 9.08984h-4.73047c-5.95996 0 -9.25 2.12012 -12.25 7.87988l-1.0498 1.92969c-2.4502 4.75 -1.2002 9.81055 2.7998 14.8809l5.61035 7
c3.47461 4.32422 7.0957 8.37695 11 12.3096h-22.8301c-4.41504 0 -8 3.58496 -8 8v16c0 4.41504 3.58496 8 8 8h57c7.5 0 11.3398 -4 11.3398 -11.3496v-3.31055c0.0136719 -0.299805 0.0175781 -0.595703 0.0175781 -0.899414
c0 -5.10449 -1.9248 -9.76367 -5.08789 -13.29zM496 224c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-320c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h320zM496 384c8.83105 0 16 -7.16895 16 -16v-32
c0 -8.83105 -7.16895 -16 -16 -16h-320c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h320zM496 64c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-320c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h320zM16 288
c-4.41504 0 -8 3.58496 -8 8v16c0 4.41504 3.58496 8 8 8h16v64h-8c-4.4082 0.0078125 -7.98145 3.59766 -7.98145 8.00781c0 1.2832 0.303711 2.49707 0.841797 3.57227l8 16c1.31055 2.62012 4.01367 4.41406 7.13965 4.41992h24c4.41504 0 8 -3.58496 8 -8v-88h16
c4.41504 0 8 -3.58496 8 -8v-16c0 -4.41504 -3.58496 -8 -8 -8h-64zM12.0898 128c-7.00977 0 -12.0898 4 -12.0898 11.4102v4c0 47.2803 51 56.3994 50.9697 69.1201c0 7.18945 -5.9502 8.75 -9.2793 8.75c-0.0185547 0 -0.0380859 0.000976562 -0.0566406 0.000976562
c-3.65918 0 -6.97949 -1.46582 -9.40332 -3.84082c-5.12012 -4.91016 -10.5107 -7 -16.1201 -2.44043l-8.58008 6.87988c-5.7998 4.53027 -7.16992 9.78027 -2.7998 15.3701c6.65918 8.75 19.0996 18.75 40.46 18.75c19.4697 0 44.4697 -10.5 44.4697 -39.5596
c0 -37.7607 -45.0498 -46.1504 -48.3398 -56.4404h38.6797c4.41504 0 8 -3.58496 8 -8v-16c0 -4.41504 -3.58496 -8 -8 -8h-67.9102z" />
    <glyph glyph-name="strikethrough" unicode="&#xf0cc;" 
d="M496 224c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-480c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h102.29c-11.6797 16.5303 -19.7803 35.4697 -21.7803 56.3604c-0.385742 3.97559 -0.577148 7.88281 -0.577148 11.96
c0 68.2266 55.3633 123.624 123.577 123.68h68c50.1416 0 93.5244 -28.7686 114.521 -70.7998l0.529297 -1c1.07324 -2.14844 1.70215 -4.57715 1.70215 -7.13965c0 -6.26562 -3.61035 -11.6953 -8.86133 -14.3203l-42.9404 -21.4707
c-2.14941 -1.07324 -4.5791 -1.70312 -7.14355 -1.70312c-6.2627 0 -11.6895 3.60645 -14.3164 8.85352c-8.18652 16.374 -25.0859 27.5801 -44.623 27.5801h-0.0371094h-66.79c-24.0352 -0.000976562 -43.5479 -19.5059 -43.5479 -43.541
c0 -19.5742 12.9414 -36.1494 30.7285 -41.6289l87.1699 -26.8301h202.1zM315.76 128h94.3906c2.6084 -7.7373 4.44434 -15.9834 5.33984 -24.3604c0.385742 -3.97559 0.577148 -7.88281 0.577148 -11.96c0 -68.2266 -55.3633 -123.624 -123.577 -123.68h-68
c-50.1416 0 -93.5244 28.7686 -114.521 70.7998l-0.529297 1c-1.07324 2.14844 -1.70215 4.57715 -1.70215 7.13965c0 6.26562 3.61035 11.6953 8.86133 14.3203l42.9404 21.4707c2.14941 1.07324 4.5791 1.70312 7.14355 1.70312
c6.2627 0 11.6895 -3.60645 14.3164 -8.85352c8.18652 -16.374 25.0859 -27.5801 44.623 -27.5801h0.0371094h66.79c24.0254 0.0224609 43.5273 19.5244 43.5498 43.5498c-0.0117188 15.3828 -8.07227 28.8594 -20.2402 36.4502z" />
    <glyph glyph-name="underline" unicode="&#xf0cd;" horiz-adv-x="448" 
d="M32 384c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h144c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-32v-160c0 -44.1533 35.8467 -80 80 -80s80 35.8467 80 80v160h-32c-8.83105 0 -16 7.16895 -16 16v32
c0 8.83105 7.16895 16 16 16h144c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-32v-160c0 -88.2197 -71.7803 -160 -160 -160s-160 71.7803 -160 160v160h-32zM432 0c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-416
c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h416z" />
    <glyph glyph-name="table" unicode="&#xf0ce;" 
d="M464 416c26.5098 0 48 -21.4902 48 -48v-352c0 -26.5098 -21.4902 -48 -48 -48h-416c-26.5098 0 -48 21.4902 -48 48v352c0 26.5098 21.4902 48 48 48h416zM224 32v96h-160v-96h160zM224 192v96h-160v-96h160zM448 32v96h-160v-96h160zM448 192v96h-160v-96h160z" />
    <glyph glyph-name="magic" unicode="&#xf0d0;" 
d="M224 352l-16 32l-32 16l32 16l16 32l16 -32l32 -16l-32 -16zM80 288l-26.6602 53.3301l-53.3398 26.6699l53.3398 26.6699l26.6602 53.3301l26.6602 -53.3301l53.3398 -26.6699l-53.3398 -26.6699zM432 160l26.6602 -53.3301l53.3398 -26.6699l-53.3398 -26.6699
l-26.6602 -53.3301l-26.6602 53.3301l-53.3398 26.6699l53.3398 26.6699zM502.62 353.77c12.5 -12.4893 12.5 -32.7598 0 -45.2393l-363.14 -363.15c-6.25 -6.25 -14.4404 -9.37012 -22.6309 -9.37012c-8.17969 0 -16.3691 3.12012 -22.6191 9.37012l-84.8506 84.8506
c-12.5 12.4893 -12.5 32.75 0 45.25l363.14 363.14c6.25 6.25977 14.4404 9.37988 22.6309 9.37988c8.18945 0 16.3799 -3.12012 22.6191 -9.37988zM359.45 244.54l86.5996 86.5996l-50.9102 50.9102l-86.5996 -86.5996z" />
    <glyph glyph-name="truck" unicode="&#xf0d1;" horiz-adv-x="640" 
d="M624 96c8.7998 0 16 -7.2002 16 -16v-32c0 -8.7998 -7.2002 -16 -16 -16h-48c0 -53 -43 -96 -96 -96s-96 43 -96 96h-128c0 -53 -43 -96 -96 -96s-96 43 -96 96h-16c-26.5 0 -48 21.5 -48 48v320c0 26.5 21.5 48 48 48h320c26.5 0 48 -21.5 48 -48v-48h44.0996
c12.7002 0 24.9004 -5.09961 33.9004 -14.0996l99.9004 -99.9004c9 -9 14.0996 -21.2002 14.0996 -33.9004v-108.1h16zM160 -16c26.5 0 48 21.5 48 48s-21.5 48 -48 48s-48 -21.5 -48 -48s21.5 -48 48 -48zM480 -16c26.5 0 48 21.5 48 48s-21.5 48 -48 48s-48 -21.5 -48 -48
s21.5 -48 48 -48zM560 192v12.0996l-99.9004 99.9004h-44.0996v-112h144z" />
    <glyph glyph-name="money-bill" unicode="&#xf0d6;" horiz-adv-x="640" 
d="M608 384c17.6699 0 32 -14.3301 32 -32v-320c0 -17.6699 -14.3301 -32 -32 -32h-576c-17.6699 0 -32 14.3301 -32 32v320c0 17.6699 14.3301 32 32 32h576zM48 48h64c0 35.3496 -28.6504 64 -64 64v-64zM48 272c35.3496 0 64 28.6504 64 64h-64v-64zM320 96
c44.1699 0 80 42.9697 80 96c0 53.0195 -35.8203 96 -80 96s-80 -42.9805 -80 -96c0 -53.0098 35.8096 -96 80 -96zM592 48v64c-35.3496 0 -64 -28.6504 -64 -64h64zM592 272v64h-64c0 -35.3496 28.6504 -64 64 -64z" />
    <glyph glyph-name="caret-down" unicode="&#xf0d7;" horiz-adv-x="320" 
d="M31.2998 256h257.3c17.8008 0 26.7002 -21.5 14.1006 -34.0996l-128.601 -128.7c-7.7998 -7.7998 -20.5 -7.7998 -28.2998 0l-128.6 128.7c-12.6006 12.5996 -3.7002 34.0996 14.0996 34.0996z" />
    <glyph glyph-name="caret-up" unicode="&#xf0d8;" horiz-adv-x="320" 
d="M288.662 96h-257.324c-17.8184 0 -26.7412 21.543 -14.1416 34.1416l128.662 128.662c7.80957 7.81055 20.4736 7.81055 28.2832 0l128.662 -128.662c12.6006 -12.5986 3.67676 -34.1416 -14.1416 -34.1416z" />
    <glyph glyph-name="caret-left" unicode="&#xf0d9;" horiz-adv-x="192" 
d="M192 320.662v-257.324c0 -17.8184 -21.543 -26.7412 -34.1416 -14.1416l-128.662 128.662c-7.81055 7.80957 -7.81055 20.4736 0 28.2832l128.662 128.662c12.5986 12.6006 34.1416 3.67676 34.1416 -14.1416z" />
    <glyph glyph-name="caret-right" unicode="&#xf0da;" horiz-adv-x="192" 
d="M0 63.3379v257.324c0 17.8184 21.543 26.7412 34.1416 14.1416l128.662 -128.662c7.81055 -7.80957 7.81055 -20.4736 0 -28.2832l-128.662 -128.662c-12.5986 -12.6006 -34.1416 -3.67676 -34.1416 14.1416z" />
    <glyph glyph-name="columns" unicode="&#xf0db;" 
d="M464 416c26.5098 0 48 -21.4902 48 -48v-352c0 -26.5098 -21.4902 -48 -48 -48h-416c-26.5098 0 -48 21.4902 -48 48v352c0 26.5098 21.4902 48 48 48h416zM224 32v256h-160v-256h160zM448 32v256h-160v-256h160z" />
    <glyph glyph-name="sort" unicode="&#xf0dc;" horiz-adv-x="320" 
d="M41 160h238c21.4004 0 32.0996 -25.9004 17 -41l-119 -119c-9.40039 -9.40039 -24.5996 -9.40039 -33.9004 0l-119.1 119c-15.0996 15.0996 -4.40039 41 17 41zM296 265c15.0996 -15.0996 4.40039 -41 -17 -41h-238c-21.4004 0 -32.0996 25.9004 -17 41l119.1 119
c9.30078 9.40039 24.5 9.40039 33.9004 0z" />
    <glyph glyph-name="sort-down" unicode="&#xf0dd;" horiz-adv-x="320" 
d="M41 160h238c21.4004 0 32.0996 -25.9004 17 -41l-119 -119c-9.40039 -9.40039 -24.5996 -9.40039 -33.9004 0l-119.1 119c-15.0996 15.0996 -4.40039 41 17 41z" />
    <glyph glyph-name="sort-up" unicode="&#xf0de;" horiz-adv-x="320" 
d="M279 224h-238c-21.4004 0 -32.0996 25.9004 -17 41l119 119c9.40039 9.40039 24.5996 9.40039 33.9004 0l119 -119c15.1992 -15.0996 4.5 -41 -16.9004 -41z" />
    <glyph glyph-name="envelope" unicode="&#xf0e0;" 
d="M502.3 257.2c3.90039 3.09961 9.7002 0.200195 9.7002 -4.7002v-204.5c0 -26.5 -21.5 -48 -48 -48h-416c-26.5 0 -48 21.5 -48 48v204.4c0 5 5.7002 7.7998 9.7002 4.69922c22.3994 -17.3994 52.0996 -39.5 154.1 -113.6
c21.1006 -15.4004 56.7002 -47.7998 92.2002 -47.5996c35.7002 -0.300781 72 32.7998 92.2998 47.5996c102 74.0996 131.601 96.2998 154 113.7zM256 128c-23.2002 -0.400391 -56.5996 29.2002 -73.4004 41.4004c-132.699 96.2998 -142.8 104.8 -173.399 128.699
c-5.7998 4.60059 -9.2002 11.5 -9.2002 18.9004v19c0 26.5 21.5 48 48 48h416c26.5 0 48 -21.5 48 -48v-19c0 -7.40039 -3.40039 -14.4004 -9.2002 -18.9004c-30.5996 -24 -40.7002 -32.3994 -173.399 -128.699c-16.8008 -12.2002 -50.2002 -41.8008 -73.4004 -41.4004z" />
    <glyph glyph-name="undo" unicode="&#xf0e2;" 
d="M212.333 223.667h-200.333c-6.62695 0 -12 5.37305 -12 12v200.333c0 6.62695 5.37305 12 12 12h48c6.62695 0 12 -5.37305 12 -12v-78.1123c45.7734 50.833 112.26 82.6426 186.175 82.1055c136.906 -0.994141 246.448 -111.623 246.157 -248.532
c-0.291016 -136.719 -111.212 -247.461 -247.999 -247.461c-64.0889 0 -122.496 24.3135 -166.51 64.2148c-5.09961 4.62207 -5.33398 12.5537 -0.466797 17.4199l33.9668 33.9668c4.47363 4.47461 11.6621 4.71777 16.4004 0.525391
c31.0361 -27.4629 71.8564 -44.127 116.609 -44.127c97.2676 0 176 78.7158 176 176c0 97.2666 -78.7158 176 -176 176c-58.4961 0 -110.28 -28.4756 -142.274 -72.333h98.2744c6.62695 0 12 -5.37305 12 -12v-48c0 -6.62695 -5.37305 -12 -12 -12z" />
    <glyph glyph-name="gavel" unicode="&#xf0e3;" 
d="M504.971 248.638c9.37207 -9.37305 9.37207 -24.5684 0 -33.9404l-124.451 -124.451c-9.37109 -9.37305 -24.5674 -9.37305 -33.9404 0l-22.627 22.627c-9.37305 9.37207 -9.37305 24.5684 0 33.9414l5.65723 5.65625l-39.5986 39.5986l-81.04 -81.04l5.65723 -5.65723
c12.4971 -12.4971 12.4971 -32.7578 0 -45.2549l-114.745 -114.745c-12.4971 -12.4971 -32.7578 -12.4971 -45.2549 0l-45.2549 45.2549c-12.4971 12.4971 -12.4971 32.7578 0 45.2549l114.744 114.746c12.4971 12.4971 32.7578 12.4971 45.2549 0l5.65723 -5.65723
l81.04 81.04l-39.5986 39.5986l-5.65625 -5.65723c-9.37207 -9.37305 -24.5684 -9.37305 -33.9414 0l-22.627 22.627c-9.37305 9.37207 -9.37305 24.5684 0 33.9404l124.451 124.451c9.37207 9.37305 24.5674 9.37305 33.9404 0l22.627 -22.6279
c9.37305 -9.37207 9.37305 -24.5674 0 -33.9404l-5.65625 -5.65723l113.138 -113.137l5.65723 5.65625c9.37207 9.37305 24.5674 9.37305 33.9404 0z" />
    <glyph glyph-name="bolt" unicode="&#xf0e7;" horiz-adv-x="320" 
d="M296 288c18.5 0 30 -20.0996 20.7002 -36l-176 -304c-4.40039 -7.59961 -12.4004 -12 -20.7998 -12c-15.3008 0 -26.9004 14.2998 -23.3008 29.5l46.1006 194.5h-118.7c-14.5 0 -25.7002 12.7998 -23.7998 27.2002l32 240
c1.59961 11.8994 11.7998 20.7998 23.7998 20.7998h144c15.7002 0 27.2002 -15 23.2002 -30.2002l-42.6006 -129.8h115.4z" />
    <glyph glyph-name="sitemap" unicode="&#xf0e8;" horiz-adv-x="640" 
d="M128 96c17.6699 0 32 -14.3301 32 -32v-96c0 -17.6699 -14.3301 -32 -32 -32h-96c-17.6699 0 -32 14.3301 -32 32v96c0 17.6699 14.3301 32 32 32h96zM104 176v-48h-48v57.5898c0 21.1797 17.2305 38.4102 38.4102 38.4102h201.59v64h-40c-17.6699 0 -32 14.3301 -32 32
v96c0 17.6699 14.3301 32 32 32h128c17.6699 0 32 -14.3301 32 -32v-96c0 -17.6699 -14.3301 -32 -32 -32h-40v-64h201.59c21.1797 0 38.4102 -17.2402 38.4102 -38.4102v-57.5898h-48v48h-192v-48h-48v48h-192zM368 96c17.6699 0 32 -14.3301 32 -32v-96
c0 -17.6699 -14.3301 -32 -32 -32h-96c-17.6699 0 -32 14.3301 -32 32v96c0 17.6699 14.3301 32 32 32h96zM608 96c17.6699 0 32 -14.3301 32 -32v-96c0 -17.6699 -14.3301 -32 -32 -32h-96c-17.6699 0 -32 14.3301 -32 32v96c0 17.6699 14.3301 32 32 32h96z" />
    <glyph glyph-name="umbrella" unicode="&#xf0e9;" horiz-adv-x="576" 
d="M575.7 167.2c2.2002 -10.1006 -8.40039 -21.4004 -18.7002 -11.4004c-51.5 54.4004 -107.6 52.5 -158.6 -37c-5.30078 -9.5 -14.9004 -8.59961 -19.7002 0c-2.5 4.40039 -32.2002 73.2002 -90.7002 73.2002c-45.7998 0 -70.5 -37.7998 -90.7002 -73.2002
c-4.7998 -8.59961 -14.3994 -9.5 -19.7002 0c-50.8994 89.4004 -106.6 92 -158.6 37c-10.2002 -9.89941 -20.9004 1.2998 -18.7002 11.4004c29.2002 136.3 138 218.2 255.7 230.899v17.9004c0 17.7002 14.2998 32 32 32s32 -14.2998 32 -32v-17.9004
c117.3 -12.6992 227.1 -94.5996 255.7 -230.899zM256 146.3c9.59961 8.90039 19.7002 13.6006 32 13.7002c12.2002 0 22.9004 -5.7002 32 -13.5996v-130.301c0 -44.0996 -35.9004 -80 -80 -80c-33.7998 0 -64.2002 21.4004 -75.4004 53.3008
c-5.89941 16.5996 2.80078 34.8994 19.5 40.7998c16.7002 5.89941 34.9004 -2.7998 40.8008 -19.5c1.89941 -5.40039 7.2998 -10.7002 15.0996 -10.7002c8.7998 0 16 7.2002 16 16v130.3z" />
    <glyph glyph-name="paste" unicode="&#xf0ea;" horiz-adv-x="448" 
d="M128 264v-232h-104c-13.2549 0 -24 10.7451 -24 24v336c0 13.2549 10.7451 24 24 24h80.6104c11.084 19.1104 31.7529 32 55.3896 32s44.3057 -12.8896 55.3896 -32h80.6104c13.2549 0 24 -10.7451 24 -24v-72h-136c-30.8779 0 -56 -25.1211 -56 -56zM160 408
c-13.2549 0 -24 -10.7451 -24 -24s10.7451 -24 24 -24s24 10.7451 24 24s-10.7451 24 -24 24zM344 160h104v-200c0 -13.2549 -10.7451 -24 -24 -24h-240c-13.2549 0 -24 10.7451 -24 24v304c0 13.2549 10.7451 24 24 24h136v-104c0 -13.2002 10.7998 -24 24 -24z
M448 198.059v-6.05859h-96v96h6.05859c6.62305 0 12.626 -2.68457 16.9707 -7.0293l65.9404 -65.9404c4.34473 -4.34473 7.03027 -10.3477 7.03027 -16.9717z" />
    <glyph glyph-name="lightbulb" unicode="&#xf0eb;" horiz-adv-x="352" 
d="M96.0596 -6.34961l-0.0498047 38.3496h159.98l-0.0400391 -38.3496c-0.0078125 -6.52637 -1.99219 -12.6309 -5.36035 -17.6904l-17.0898 -25.6904c-5.73242 -8.62305 -15.5176 -14.2793 -26.6396 -14.2793h-61.71c-11.123 0 -20.9072 5.65625 -26.6406 14.2793
l-17.0898 25.6904c-3.49023 5.24023 -5.34961 11.4004 -5.36035 17.6904zM0 272c0 93.0303 73.4404 175.69 175.45 176c97.46 0.299805 176.55 -78.6104 176.55 -176c0 -44.3701 -16.4502 -84.8496 -43.5596 -115.78c-16.5205 -18.8496 -42.3604 -58.2295 -52.21 -91.4502
c-0.0400391 -0.269531 -0.0703125 -0.519531 -0.110352 -0.779297h-160.24c-0.0400391 0.259766 -0.0703125 0.519531 -0.110352 0.779297c-9.84961 33.2207 -35.6895 72.6006 -52.21 91.4502c-27.1094 30.9307 -43.5596 71.4102 -43.5596 115.78zM176 352
c8.83984 0 16 7.16016 16 16s-7.16016 16 -16 16c-61.7598 0 -112 -50.2402 -112 -112c0 -8.83984 7.16016 -16 16 -16s16 7.16016 16 16c0 44.1104 35.8896 80 80 80z" />
    <glyph glyph-name="user-md" unicode="&#xf0f0;" horiz-adv-x="448" 
d="M224 192c-70.7002 0 -128 57.2998 -128 128s57.2998 128 128 128s128 -57.2998 128 -128s-57.2998 -128 -128 -128zM104 24c0 13.2998 10.7002 24 24 24s24 -10.7002 24 -24s-10.7002 -24 -24 -24s-24 10.7002 -24 24zM320 159.4c71.2002 -3.5 128 -61.8008 128 -133.801
v-44.7998c0 -24.7002 -20.0996 -44.7998 -44.7998 -44.7998h-358.4c-24.7002 0 -44.7998 20.0996 -44.7998 44.7998v44.7998c0 66.6006 48.5 121.4 112.1 132.101v-80.4004c-23.0996 -6.89941 -40 -28.0996 -40 -53.3994c0 -30.9004 25.1006 -56 56 -56
c30.9004 0 56 25.0996 56 56c0 25.2998 -16.8994 46.5 -40 53.3994v81.6006c7.7002 -1 15.2002 -2.60059 22.6006 -5.2002c18 -6.2998 37.2998 -9.7998 57.3994 -9.7998c20.1006 0 39.4004 3.5 57.4004 9.7998c2.2002 0.799805 4.40039 1.2002 6.59961 1.89941v-45.1992
c-36.5 -7.5 -64 -39.8008 -64 -78.4004v-43.7998c0 -8.10059 5.90039 -14.7998 13.8008 -15.9004l31.1992 -4.2002c4.30078 -0.799805 8.5 2 9.40039 6.30078l3.09961 15.6992c0.800781 4.30078 -2 8.5 -6.2998 9.40039l-19.2998 3.90039v26.6992
c0 67 96 64.7002 96 1.90039v-28.5l-19.2998 -3.90039c-4.40039 -0.799805 -7.2002 -5.09961 -6.2998 -9.39941l3.09961 -15.7002c0.900391 -4.40039 5.09961 -7.2002 9.40039 -6.2998l32.1992 6.39941c7.5 1.5 12.9004 8.10059 12.9004 15.7002v41.7002
c0 38.5996 -27.5 71 -64 78.4004v49z" />
    <glyph glyph-name="stethoscope" unicode="&#xf0f1;" 
d="M447.1 336c35.7002 0.5 64.9004 -28.2998 64.9004 -64c0 -23.7002 -12.9004 -44.2998 -32 -55.4004v-112.6c0 -92.5996 -79 -168 -176 -168c-95.4004 0 -173.3 72.7998 -175.9 163.2c-73 14.7998 -128.1 79.5 -128.1 156.8v155.4c0 11.5 8.09961 21.2998 19.2998 23.5996
l62.7998 12.4004c13 2.59961 25.6006 -5.80078 28.2002 -18.8008l3.10059 -15.6992c2.59961 -13 -5.80078 -25.6006 -18.8008 -28.2002l-30.6992 -6.10059v-122.5c0 -53.2998 43.5 -96.5 96.8994 -96c52.9004 0.5 95.1006 44.3008 95.1006 97.2002v121.4l-30.7002 6.09961
c-13 2.60059 -21.4004 15.2002 -18.7998 28.2002l3.19922 15.7002c2.60059 13 15.2002 21.3994 28.2002 18.7998l62.9004 -12.5996c11.2002 -2.2002 19.2998 -12.1006 19.2998 -23.5v-155.4c0 -77.2002 -55 -141.8 -127.8 -156.8
c2.7002 -55.1006 51.8994 -99.2002 111.899 -99.2002c61.8008 0 112 46.7002 112 104v112.6c-19.5 11.2002 -32.5 32.5 -32 56.8008c0.700195 34.1992 28.8008 62.0996 63 62.5996zM448 256c8.7998 0 16 7.2002 16 16s-7.2002 16 -16 16s-16 -7.2002 -16 -16
s7.2002 -16 16 -16z" />
    <glyph glyph-name="suitcase" unicode="&#xf0f2;" 
d="M128 -32v400c0 26.5 21.5 48 48 48h160c26.5 0 48 -21.5 48 -48v-400h-256zM192 352v-32h128v32h-128zM512 272v-256c0 -26.5 -21.5 -48 -48 -48h-48v352h48c26.5 0 48 -21.5 48 -48zM96 -32h-48c-26.5 0 -48 21.5 -48 48v256c0 26.5 21.5 48 48 48h48v-352z" />
    <glyph glyph-name="bell" unicode="&#xf0f3;" horiz-adv-x="448" 
d="M224 -64c-35.3203 0 -63.9697 28.6504 -63.9697 64h127.939c0 -35.3496 -28.6494 -64 -63.9697 -64zM439.39 85.71c6 -6.44043 8.66016 -14.1602 8.61035 -21.71c-0.0996094 -16.4004 -12.9805 -32 -32.0996 -32h-383.801c-19.1191 0 -31.9893 15.5996 -32.0996 32
c-0.0498047 7.5498 2.61035 15.2598 8.61035 21.71c19.3193 20.7598 55.4697 51.9902 55.4697 154.29c0 77.7002 54.4795 139.9 127.939 155.16v20.8398c0 17.6699 14.3203 32 31.9805 32s31.9805 -14.3301 31.9805 -32v-20.8398
c73.46 -15.2598 127.939 -77.46 127.939 -155.16c0 -102.3 36.1504 -133.53 55.4697 -154.29z" />
    <glyph glyph-name="coffee" unicode="&#xf0f4;" horiz-adv-x="640" 
d="M192 64c-53 0 -96 43 -96 96v232c0 13.2998 10.7002 24 24 24h392c70.5996 0 128 -57.4004 128 -128s-57.4004 -128 -128 -128h-32c0 -53 -43 -96 -96 -96h-192zM512 352h-32v-128h32c35.2998 0 64 28.7002 64 64s-28.7002 64 -64 64zM559.7 -32h-511.4
c-47.5996 0 -61 64 -36 64h583.3c25 0 11.8008 -64 -35.8994 -64z" />
    <glyph glyph-name="hospital" unicode="&#xf0f8;" horiz-adv-x="448" 
d="M448 -44v-20h-448v20c0 6.62695 5.37305 12 12 12h20v360c0 13.2549 10.7451 24 24 24h88v72c0 13.2549 10.7451 24 24 24h112c13.2549 0 24 -10.7451 24 -24v-72h88c13.2549 0 24 -10.7451 24 -24v-360h20c6.62695 0 12 -5.37305 12 -12zM308 256h-40
c-6.62695 0 -12 -5.37305 -12 -12v-40c0 -6.62695 5.37305 -12 12 -12h40c6.62695 0 12 5.37305 12 12v40c0 6.62695 -5.37305 12 -12 12zM140 192h40c6.62695 0 12 5.37305 12 12v40c0 6.62695 -5.37305 12 -12 12h-40c-6.62695 0 -12 -5.37305 -12 -12v-40
c0 -6.62695 5.37305 -12 12 -12zM244 64h-40c-6.62695 0 -12 -5.37305 -12 -12v-84h64v84c0 6.62695 -5.37305 12 -12 12zM308 160h-40c-6.62695 0 -12 -5.37305 -12 -12v-40c0 -6.62695 5.37305 -12 12 -12h40c6.62695 0 12 5.37305 12 12v40c0 6.62695 -5.37305 12 -12 12
zM192 148c0 6.62695 -5.37305 12 -12 12h-40c-6.62695 0 -12 -5.37305 -12 -12v-40c0 -6.62695 5.37305 -12 12 -12h40c6.62695 0 12 5.37305 12 12v40zM182 352h26v-26c0 -3.31152 2.68848 -6 6 -6h20c3.31152 0 6 2.68848 6 6v26h26c3.31152 0 6 2.68848 6 6v20
c0 3.31152 -2.68848 6 -6 6h-26v26c0 3.31152 -2.68848 6 -6 6h-20c-3.31152 0 -6 -2.68848 -6 -6v-26h-26c-3.31152 0 -6 -2.68848 -6 -6v-20c0 -3.31152 2.68848 -6 6 -6z" />
    <glyph glyph-name="ambulance" unicode="&#xf0f9;" horiz-adv-x="640" 
d="M624 96c8.7998 0 16 -7.2002 16 -16v-32c0 -8.7998 -7.2002 -16 -16 -16h-48c0 -53 -43 -96 -96 -96s-96 43 -96 96h-128c0 -53 -43 -96 -96 -96s-96 43 -96 96h-16c-26.5 0 -48 21.5 -48 48v320c0 26.5 21.5 48 48 48h320c26.5 0 48 -21.5 48 -48v-48h44.0996
c12.7002 0 24.9004 -5.09961 33.9004 -14.0996l99.9004 -99.9004c9 -9 14.0996 -21.2002 14.0996 -33.9004v-108.1h16zM160 -16c26.5 0 48 21.5 48 48s-21.5 48 -48 48s-48 -21.5 -48 -48s21.5 -48 48 -48zM304 232v48c0 4.40039 -3.59961 8 -8 8h-56v56
c0 4.40039 -3.59961 8 -8 8h-48c-4.40039 0 -8 -3.59961 -8 -8v-56h-56c-4.40039 0 -8 -3.59961 -8 -8v-48c0 -4.40039 3.59961 -8 8 -8h56v-56c0 -4.40039 3.59961 -8 8 -8h48c4.40039 0 8 3.59961 8 8v56h56c4.40039 0 8 3.59961 8 8zM480 -16c26.5 0 48 21.5 48 48
s-21.5 48 -48 48s-48 -21.5 -48 -48s21.5 -48 48 -48zM560 192v12.0996l-99.9004 99.9004h-44.0996v-112h144z" />
    <glyph glyph-name="medkit" unicode="&#xf0fa;" 
d="M96 -32v352h32v48c0 26.5098 21.4902 48 48 48h160c26.5098 0 48 -21.4902 48 -48v-48h32v-352h-320zM192 352v-32h128v32h-128zM512 272v-256c0 -26.5098 -21.4902 -48 -48 -48h-16v352h16c26.5098 0 48 -21.4902 48 -48zM64 -32h-16c-26.5098 0 -48 21.4902 -48 48v256
c0 26.5098 21.4902 48 48 48h16v-352zM352 176c0 8.83691 -7.16309 16 -16 16h-48v48c0 8.83691 -7.16309 16 -16 16h-32c-8.83691 0 -16 -7.16309 -16 -16v-48h-48c-8.83691 0 -16 -7.16309 -16 -16v-32c0 -8.83691 7.16309 -16 16 -16h48v-48
c0 -8.83691 7.16309 -16 16 -16h32c8.83691 0 16 7.16309 16 16v48h48c8.83691 0 16 7.16309 16 16v32z" />
    <glyph glyph-name="fighter-jet" unicode="&#xf0fb;" horiz-adv-x="640" 
d="M544 224c96 -21.333 96 -26.583 96 -32s0 -10.667 -96 -32l-128 -16l-48 -16h-24l-116.842 -148h39.5088c11.666 0 21.333 -2.625 21.333 -6s-9.66602 -6 -21.333 -6h-114.667v12h16v164h-48l-66.666 -80h-34.667l-10.667 10.667v69.333h8v16h48v2.66699l-64 8v42.667
l64 8v2.66602h-48v16h-8v69.333l10.667 10.667h34.666l66.667 -80h48v164h-16v12h114.667c11.666 0 21.333 -2.625 21.333 -6s-9.66699 -6 -21.333 -6h-39.5088l116.842 -148h24l48 -16z" />
    <glyph glyph-name="beer" unicode="&#xf0fc;" horiz-adv-x="448" 
d="M368 352c44.1123 0 80 -35.8877 80 -80v-128.86c0 -31.5273 -18.6035 -60.2031 -47.3936 -73.0527l-80.6064 -35.9766v-42.1104c0 -13.2549 -10.7451 -24 -24 -24h-272c-13.2549 0 -24 10.7451 -24 24v400c0 13.2549 10.7451 24 24 24h272c13.2549 0 24 -10.7451 24 -24
v-40h48zM384 143.14v128.86c0 8.82227 -7.17773 16 -16 16h-48v-183.805l54.5215 24.334c5.58789 2.49902 9.47363 8.09863 9.47852 14.6104zM208 64c8.83594 0 16 7.16406 16 16v224c0 8.83594 -7.16406 16 -16 16s-16 -7.16406 -16 -16v-224
c0 -8.83594 7.16406 -16 16 -16zM112 64c8.83594 0 16 7.16406 16 16v224c0 8.83594 -7.16406 16 -16 16s-16 -7.16406 -16 -16v-224c0 -8.83594 7.16406 -16 16 -16z" />
    <glyph glyph-name="h-square" unicode="&#xf0fd;" horiz-adv-x="448" 
d="M448 368v-352c0 -26.5098 -21.4902 -48 -48 -48h-352c-26.5098 0 -48 21.4902 -48 48v352c0 26.5098 21.4902 48 48 48h352c26.5098 0 48 -21.4902 48 -48zM336 320h-32c-8.83691 0 -16 -7.16309 -16 -16v-80h-128v80c0 8.83691 -7.16309 16 -16 16h-32
c-8.83691 0 -16 -7.16309 -16 -16v-224c0 -8.83691 7.16309 -16 16 -16h32c8.83691 0 16 7.16309 16 16v80h128v-80c0 -8.83691 7.16309 -16 16 -16h32c8.83691 0 16 7.16309 16 16v224c0 8.83691 -7.16309 16 -16 16z" />
    <glyph glyph-name="plus-square" unicode="&#xf0fe;" horiz-adv-x="448" 
d="M400 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h352zM368 164v56c0 6.59961 -5.40039 12 -12 12h-92v92c0 6.59961 -5.40039 12 -12 12h-56c-6.59961 0 -12 -5.40039 -12 -12v-92h-92
c-6.59961 0 -12 -5.40039 -12 -12v-56c0 -6.59961 5.40039 -12 12 -12h92v-92c0 -6.59961 5.40039 -12 12 -12h56c6.59961 0 12 5.40039 12 12v92h92c6.59961 0 12 5.40039 12 12z" />
    <glyph glyph-name="angle-double-left" unicode="&#xf100;" horiz-adv-x="448" 
d="M223.7 209l136 136c9.39941 9.40039 24.5996 9.40039 33.8994 0l22.6006 -22.5996c9.39941 -9.40039 9.39941 -24.6006 0 -33.9004l-96.2998 -96.5l96.3994 -96.4004c9.40039 -9.39941 9.40039 -24.5996 0 -33.8994l-22.5996 -22.7002
c-9.40039 -9.40039 -24.6006 -9.40039 -33.9004 0l-136 136c-9.5 9.40039 -9.5 24.5996 -0.0996094 34zM31.7002 175c-9.40039 9.40039 -9.40039 24.5996 0.0996094 34l136 136c9.2998 9.40039 24.5 9.40039 33.9004 0l22.5996 -22.7002
c9.40039 -9.2998 9.40039 -24.5 0 -33.8994l-96.3994 -96.4004l96.2998 -96.5c9.39941 -9.2998 9.39941 -24.5 0 -33.9004l-22.6006 -22.5996c-9.2998 -9.40039 -24.5 -9.40039 -33.8994 0z" />
    <glyph glyph-name="angle-double-right" unicode="&#xf101;" horiz-adv-x="448" 
d="M224.3 175l-136 -136c-9.39941 -9.40039 -24.5996 -9.40039 -33.8994 0l-22.6006 22.5996c-9.39941 9.40039 -9.39941 24.6006 0 33.9004l96.4004 96.4004l-96.4004 96.3994c-9.39941 9.40039 -9.39941 24.6006 0 33.9004l22.5 22.7998
c9.40039 9.40039 24.6006 9.40039 33.9004 0l136 -136c9.5 -9.40039 9.5 -24.5996 0.0996094 -34zM416.3 209c9.40039 -9.40039 9.40039 -24.5996 0 -33.7998l-136 -136c-9.2998 -9.40039 -24.5 -9.40039 -33.8994 0l-22.6006 22.5996
c-9.39941 9.2998 -9.39941 24.5 0 33.9004l96.4004 96.3994l-96.4004 96.4004c-9.39941 9.2998 -9.39941 24.5 0 33.9004l22.6006 22.5996c9.2998 9.40039 24.5 9.40039 33.8994 0z" />
    <glyph glyph-name="angle-double-up" unicode="&#xf102;" horiz-adv-x="320" 
d="M177 192.3l136 -136c9.40039 -9.39941 9.40039 -24.5996 0 -33.8994l-22.5996 -22.6006c-9.40039 -9.39941 -24.6006 -9.39941 -33.9004 0l-96.5 96.2998l-96.4004 -96.3994c-9.39941 -9.40039 -24.5996 -9.40039 -33.8994 0l-22.7002 22.5996
c-9.40039 9.40039 -9.40039 24.6006 0 33.9004l136 136c9.40039 9.5 24.5996 9.5 34 0.0996094zM143 384.3c9.40039 9.40039 24.5996 9.40039 33.7998 0l136 -136c9.40039 -9.2998 9.40039 -24.5 0 -33.8994l-22.5996 -22.6006c-9.2998 -9.39941 -24.5 -9.39941 -33.9004 0
l-96.3994 96.4004l-96.4004 -96.4004c-9.2998 -9.39941 -24.5 -9.39941 -33.9004 0l-22.5996 22.6006c-9.40039 9.2998 -9.40039 24.5 0 33.8994z" />
    <glyph glyph-name="angle-double-down" unicode="&#xf103;" horiz-adv-x="320" 
d="M143 191.7l-136 136c-9.40039 9.39941 -9.40039 24.5996 0 33.8994l22.5996 22.6006c9.40039 9.39941 24.6006 9.39941 33.9004 0l96.4004 -96.4004l96.3994 96.4004c9.40039 9.39941 24.6006 9.39941 33.9004 0l22.7998 -22.5
c9.40039 -9.40039 9.40039 -24.6006 0 -33.9004l-136 -136c-9.40039 -9.5 -24.5996 -9.5 -34 -0.0996094zM177 -0.299805c-9.40039 -9.40039 -24.5996 -9.40039 -34 0.0996094l-136 136c-9.40039 9.2998 -9.40039 24.5 0 33.9004l22.7002 22.5996
c9.2998 9.40039 24.5 9.40039 33.8994 0l96.4004 -96.3994l96.5 96.2998c9.2998 9.39941 24.5 9.39941 33.9004 0l22.5996 -22.6006c9.40039 -9.2998 9.40039 -24.5 0 -33.8994z" />
    <glyph glyph-name="angle-left" unicode="&#xf104;" horiz-adv-x="256" 
d="M31.7002 209l136 136c9.39941 9.40039 24.5996 9.40039 33.8994 0l22.6006 -22.5996c9.39941 -9.40039 9.39941 -24.6006 0 -33.9004l-96.2998 -96.5l96.3994 -96.4004c9.40039 -9.39941 9.40039 -24.5996 0 -33.8994l-22.5996 -22.7002
c-9.40039 -9.40039 -24.6006 -9.40039 -33.9004 0l-136 136c-9.5 9.40039 -9.5 24.5996 -0.0996094 34z" />
    <glyph glyph-name="angle-right" unicode="&#xf105;" horiz-adv-x="256" 
d="M224.3 175l-136 -136c-9.39941 -9.40039 -24.5996 -9.40039 -33.8994 0l-22.6006 22.5996c-9.39941 9.40039 -9.39941 24.6006 0 33.9004l96.4004 96.4004l-96.4004 96.3994c-9.39941 9.40039 -9.39941 24.6006 0 33.9004l22.5 22.7998
c9.40039 9.40039 24.6006 9.40039 33.9004 0l136 -136c9.5 -9.40039 9.5 -24.5996 0.0996094 -34z" />
    <glyph glyph-name="angle-up" unicode="&#xf106;" horiz-adv-x="320" 
d="M177 288.3l136 -136c9.40039 -9.39941 9.40039 -24.5996 0 -33.8994l-22.5996 -22.6006c-9.40039 -9.39941 -24.6006 -9.39941 -33.9004 0l-96.5 96.2998l-96.4004 -96.3994c-9.39941 -9.40039 -24.5996 -9.40039 -33.8994 0l-22.7002 22.5996
c-9.40039 9.40039 -9.40039 24.6006 0 33.9004l136 136c9.40039 9.5 24.5996 9.5 34 0.0996094z" />
    <glyph glyph-name="angle-down" unicode="&#xf107;" horiz-adv-x="320" 
d="M143 95.7002l-136 136c-9.40039 9.39941 -9.40039 24.5996 0 33.8994l22.5996 22.6006c9.40039 9.39941 24.6006 9.39941 33.9004 0l96.4004 -96.4004l96.3994 96.4004c9.40039 9.39941 24.6006 9.39941 33.9004 0l22.5996 -22.6006
c9.40039 -9.39941 9.40039 -24.5996 0 -33.8994l-136 -136c-9.2002 -9.40039 -24.3994 -9.40039 -33.7998 0z" />
    <glyph glyph-name="desktop" unicode="&#xf108;" horiz-adv-x="576" 
d="M528 448c26.5 0 48 -21.5 48 -48v-320c0 -26.5 -21.5 -48 -48 -48h-192l16 -48h72c13.2998 0 24 -10.7002 24 -24s-10.7002 -24 -24 -24h-272c-13.2998 0 -24 10.7002 -24 24s10.7002 24 24 24h72l16 48h-192c-26.5 0 -48 21.5 -48 48v320c0 26.5 21.5 48 48 48h480z
M512 96v288h-448v-288h448z" />
    <glyph glyph-name="laptop" unicode="&#xf109;" horiz-adv-x="640" 
d="M624 32c8.7998 0 16 -7.2002 16 -16v-16c0 -35.2002 -28.7998 -64 -64 -64h-512c-35.2002 0 -64 28.7998 -64 64v16c0 8.7998 7.2002 16 16 16h239.23c-0.25 -14.5303 14.0791 -32 32.7695 -32h60.7998c18.0303 0 32 12.1904 32.7402 32h242.46zM576 400v-336h-512v336
c0 26.4004 21.5996 48 48 48h416c26.4004 0 48 -21.5996 48 -48zM512 128v256h-384v-256h384z" />
    <glyph glyph-name="tablet" unicode="&#xf10a;" horiz-adv-x="448" 
d="M400 448c26.5 0 48 -21.5 48 -48v-416c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v416c0 26.5 21.5 48 48 48h352zM224 -32c17.7002 0 32 14.2998 32 32s-14.2998 32 -32 32s-32 -14.2998 -32 -32s14.2998 -32 32 -32z" />
    <glyph glyph-name="mobile" unicode="&#xf10b;" horiz-adv-x="320" 
d="M272 448c26.5 0 48 -21.5 48 -48v-416c0 -26.5 -21.5 -48 -48 -48h-224c-26.5 0 -48 21.5 -48 48v416c0 26.5 21.5 48 48 48h224zM160 -32c17.7002 0 32 14.2998 32 32s-14.2998 32 -32 32s-32 -14.2998 -32 -32s14.2998 -32 32 -32z" />
    <glyph glyph-name="quote-left" unicode="&#xf10d;" 
d="M464 192c26.5 0 48 -21.5 48 -48v-128c0 -26.5 -21.5 -48 -48 -48h-128c-26.5 0 -48 21.5 -48 48v240c0 88.4004 71.5996 160 160 160h8c13.2998 0 24 -10.7002 24 -24v-48c0 -13.2998 -10.7002 -24 -24 -24h-8c-35.2998 0 -64 -28.7002 -64 -64v-64h80zM176 192
c26.5 0 48 -21.5 48 -48v-128c0 -26.5 -21.5 -48 -48 -48h-128c-26.5 0 -48 21.5 -48 48v240c0 88.4004 71.5996 160 160 160h8c13.2998 0 24 -10.7002 24 -24v-48c0 -13.2998 -10.7002 -24 -24 -24h-8c-35.2998 0 -64 -28.7002 -64 -64v-64h80z" />
    <glyph glyph-name="quote-right" unicode="&#xf10e;" 
d="M464 416c26.5 0 48 -21.5 48 -48v-240c0 -88.4004 -71.5996 -160 -160 -160h-8c-13.2998 0 -24 10.7002 -24 24v48c0 13.2998 10.7002 24 24 24h8c35.2998 0 64 28.7002 64 64v64h-80c-26.5 0 -48 21.5 -48 48v128c0 26.5 21.5 48 48 48h128zM176 416
c26.5 0 48 -21.5 48 -48v-240c0 -88.4004 -71.5996 -160 -160 -160h-8c-13.2998 0 -24 10.7002 -24 24v48c0 13.2998 10.7002 24 24 24h8c35.2998 0 64 28.7002 64 64v64h-80c-26.5 0 -48 21.5 -48 48v128c0 26.5 21.5 48 48 48h128z" />
    <glyph glyph-name="spinner" unicode="&#xf110;" 
d="M304 400c0 -26.5098 -21.4902 -48 -48 -48s-48 21.4902 -48 48s21.4902 48 48 48s48 -21.4902 48 -48zM256 32c26.5098 0 48 -21.4902 48 -48s-21.4902 -48 -48 -48s-48 21.4902 -48 48s21.4902 48 48 48zM464 240c26.5098 0 48 -21.4902 48 -48s-21.4902 -48 -48 -48
s-48 21.4902 -48 48s21.4902 48 48 48zM96 192c0 -26.5098 -21.4902 -48 -48 -48s-48 21.4902 -48 48s21.4902 48 48 48s48 -21.4902 48 -48zM108.922 92.9219c26.5088 0 48 -21.4912 48 -48c0 -26.5098 -21.4902 -48 -48 -48s-48 21.4902 -48 48s21.4902 48 48 48z
M403.078 92.9219c26.5098 0 48 -21.4912 48 -48c0 -26.5098 -21.4902 -48 -48 -48s-48 21.4902 -48 48s21.4902 48 48 48zM108.922 387.078c26.5088 0 48 -21.4902 48 -48s-21.4902 -48 -48 -48s-48 21.4902 -48 48s21.4902 48 48 48z" />
    <glyph glyph-name="circle" unicode="&#xf111;" 
d="M256 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248z" />
    <glyph glyph-name="smile" unicode="&#xf118;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM328 272c-17.7002 0 -32 -14.2998 -32 -32s14.2998 -32 32 -32s32 14.2998 32 32s-14.2998 32 -32 32zM168 272c-17.7002 0 -32 -14.2998 -32 -32s14.2998 -32 32 -32
s32 14.2998 32 32s-14.2998 32 -32 32zM362.8 101.8c13.5 16.2998 -11.2002 36.7002 -24.5996 20.5c-22.4004 -26.7998 -55.2002 -42.2002 -90.2002 -42.2002s-67.7998 15.3008 -90.2002 42.2002c-13.5996 16.2002 -38.2002 -4.2002 -24.5996 -20.5
c28.5 -34.2002 70.2998 -53.7998 114.8 -53.7998s86.2998 19.5996 114.8 53.7998z" />
    <glyph glyph-name="frown" unicode="&#xf119;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM328 272c-17.7002 0 -32 -14.2998 -32 -32s14.2998 -32 32 -32s32 14.2998 32 32s-14.2998 32 -32 32zM168 272c-17.7002 0 -32 -14.2998 -32 -32s14.2998 -32 32 -32
s32 14.2998 32 32s-14.2998 32 -32 32zM338.2 53.7998c13.5 -16.2998 38.0996 4.2002 24.5 20.4004c-28.4004 34.2002 -70.2998 53.7998 -114.7 53.7998s-86.2998 -19.5996 -114.8 -53.7002c-13.5 -16.2998 11.0996 -36.7998 24.5996 -20.5
c22.4004 26.7998 55.2998 42.2002 90.2002 42.2002s67.7998 -15.4004 90.2002 -42.2002z" />
    <glyph glyph-name="meh" unicode="&#xf11a;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM168 272c-17.7002 0 -32 -14.2998 -32 -32s14.2998 -32 32 -32s32 14.2998 32 32s-14.2998 32 -32 32zM344 80c21.2002 0 21.2002 32 0 32h-192c-21.2002 0 -21.2002 -32 0 -32
h192zM328 208c17.7002 0 32 14.2998 32 32s-14.2998 32 -32 32s-32 -14.2998 -32 -32s14.2998 -32 32 -32z" />
    <glyph glyph-name="gamepad" unicode="&#xf11b;" horiz-adv-x="640" 
d="M480.07 352c88.2842 -0.0263672 159.938 -71.7402 159.938 -160.03c0 -88.3066 -71.6934 -160 -160 -160c-44.7324 0 -85.2021 18.3965 -114.249 48.0303h-91.5195c-29.0469 -29.6338 -69.5078 -48 -114.24 -48c-88.3066 0 -160 71.6934 -160 160s71.6934 160 160 160
h320.07zM248 180v24c0 6.62305 -5.37695 12 -12 12h-52v52c0 6.62305 -5.37695 12 -12 12h-24c-6.62305 0 -12 -5.37695 -12 -12v-52h-52c-6.62305 0 -12 -5.37695 -12 -12v-24c0 -6.62305 5.37695 -12 12 -12h52v-52c0 -6.62305 5.37695 -12 12 -12h24
c6.62305 0 12 5.37695 12 12v52h52c6.62305 0 12 5.37695 12 12zM464 104c22.0762 0 40 17.9238 40 40s-17.9238 40 -40 40s-40 -17.9238 -40 -40s17.9238 -40 40 -40zM528 200c22.0762 0 40 17.9238 40 40s-17.9238 40 -40 40s-40 -17.9238 -40 -40s17.9238 -40 40 -40z
" />
    <glyph glyph-name="keyboard" unicode="&#xf11c;" horiz-adv-x="576" 
d="M528 0h-480c-26.5098 0 -48 21.4902 -48 48v288c0 26.5098 21.4902 48 48 48h480c26.5098 0 48 -21.4902 48 -48v-288c0 -26.5098 -21.4902 -48 -48 -48zM128 268v40c0 6.62695 -5.37305 12 -12 12h-40c-6.62695 0 -12 -5.37305 -12 -12v-40
c0 -6.62695 5.37305 -12 12 -12h40c6.62695 0 12 5.37305 12 12zM224 268v40c0 6.62695 -5.37305 12 -12 12h-40c-6.62695 0 -12 -5.37305 -12 -12v-40c0 -6.62695 5.37305 -12 12 -12h40c6.62695 0 12 5.37305 12 12zM320 268v40c0 6.62695 -5.37305 12 -12 12h-40
c-6.62695 0 -12 -5.37305 -12 -12v-40c0 -6.62695 5.37305 -12 12 -12h40c6.62695 0 12 5.37305 12 12zM416 268v40c0 6.62695 -5.37305 12 -12 12h-40c-6.62695 0 -12 -5.37305 -12 -12v-40c0 -6.62695 5.37305 -12 12 -12h40c6.62695 0 12 5.37305 12 12zM512 268v40
c0 6.62695 -5.37305 12 -12 12h-40c-6.62695 0 -12 -5.37305 -12 -12v-40c0 -6.62695 5.37305 -12 12 -12h40c6.62695 0 12 5.37305 12 12zM176 172v40c0 6.62695 -5.37305 12 -12 12h-40c-6.62695 0 -12 -5.37305 -12 -12v-40c0 -6.62695 5.37305 -12 12 -12h40
c6.62695 0 12 5.37305 12 12zM272 172v40c0 6.62695 -5.37305 12 -12 12h-40c-6.62695 0 -12 -5.37305 -12 -12v-40c0 -6.62695 5.37305 -12 12 -12h40c6.62695 0 12 5.37305 12 12zM368 172v40c0 6.62695 -5.37305 12 -12 12h-40c-6.62695 0 -12 -5.37305 -12 -12v-40
c0 -6.62695 5.37305 -12 12 -12h40c6.62695 0 12 5.37305 12 12zM464 172v40c0 6.62695 -5.37305 12 -12 12h-40c-6.62695 0 -12 -5.37305 -12 -12v-40c0 -6.62695 5.37305 -12 12 -12h40c6.62695 0 12 5.37305 12 12zM128 76v40c0 6.62695 -5.37305 12 -12 12h-40
c-6.62695 0 -12 -5.37305 -12 -12v-40c0 -6.62695 5.37305 -12 12 -12h40c6.62695 0 12 5.37305 12 12zM416 76v40c0 6.62695 -5.37305 12 -12 12h-232c-6.62695 0 -12 -5.37305 -12 -12v-40c0 -6.62695 5.37305 -12 12 -12h232c6.62695 0 12 5.37305 12 12zM512 76v40
c0 6.62695 -5.37305 12 -12 12h-40c-6.62695 0 -12 -5.37305 -12 -12v-40c0 -6.62695 5.37305 -12 12 -12h40c6.62695 0 12 5.37305 12 12z" />
    <glyph glyph-name="flag-checkered" unicode="&#xf11e;" 
d="M243.2 258.1c24.2002 -6.69922 47.5996 -16.3994 73.5996 -22.1992v-68.2002c-24.2998 6.7002 -47.5 16.3994 -73.5996 22.2998v68.0996zM466.5 381.1c21.2002 9.80078 45.5 -5.69922 45.4004 -29v-243.1c0 -10.5996 -5.10059 -20.4004 -13.8008 -26.4004
c-35.7998 -24.5996 -74.2998 -40.8994 -122.5 -40.8994c-67.3994 0 -111.6 34.7998 -165.199 34.7998c-50.8008 0 -86.1006 -10 -114.4 -22.0996v-94.4004c0 -13.2998 -10.7002 -24 -24 -24h-16c-13.2998 0 -24 10.7002 -24 24v386.1c-14.5 10.1006 -24 26.9004 -24 45.9004
c0 31.7002 26.2998 57.2998 58.2998 56c28.5 -1.2002 51.7998 -24 53.6006 -52.4004c0.5 -8.39941 -0.800781 -16.2998 -3.60059 -23.5996c20.7002 7.59961 43 12 68 12c67.4004 0 111.7 -34.7998 165.2 -34.7998c40.5 0 82.7002 16 117 31.8994zM169.6 122.5v71.2998
c-26.0996 -2.39941 -47.3994 -8.09961 -73.5996 -17.3994v-70.5c23.5996 8.39941 47.7998 13.8994 73.5996 16.5996zM464 257v70.5c-21.2998 -8.90039 -46.5996 -17.7002 -73.5996 -22.5v-71.9004c-26 -4.19922 -49.9004 -2.59961 -73.6006 2.7002v68.4004
c-26.3994 4.59961 -49.8994 13.8994 -73.5996 21.2998v-67.4004c-25.2002 7 -46.6006 9.40039 -73.6006 5.7002v71.6006c-23.5 -2.2002 -40.3994 -9.80078 -73.5996 -22v-70.5c29 10.6992 51.2002 17.7998 73.5996 20.8994v-70c32.8008 3 53.9004 0.600586 73.6006 -3.7998
v-68.5c26.2998 -4.59961 49.7002 -13.9004 73.5996 -21.2998v67.3994c25.7002 -7.09961 46.6006 -9.2998 73.6006 -5.59961v-71.5996c25.0996 2.39941 48.5 11 73.5996 27.0996v70.5c-22.2002 -14.2002 -48.7998 -22.5996 -73.5996 -26v71.0996
c27.2998 4.40039 50 14.1006 73.5996 23.9004z" />
    <glyph glyph-name="terminal" unicode="&#xf120;" horiz-adv-x="640" 
d="M257.981 175.029l-194.344 -194.344c-9.37305 -9.37207 -24.5684 -9.37207 -33.9404 0l-22.668 22.667c-9.35742 9.35742 -9.375 24.5225 -0.0400391 33.9014l154.021 154.746l-154.021 154.745c-9.33496 9.37891 -9.31738 24.5439 0.0400391 33.9014l22.667 22.667
c9.37305 9.37207 24.5684 9.37207 33.9404 0l194.344 -194.344c9.37207 -9.37207 9.37207 -24.5674 0 -33.9404zM640 -8c0 -13.2549 -10.7451 -24 -24 -24h-304c-13.2549 0 -24 10.7451 -24 24v32c0 13.2549 10.7451 24 24 24h304c13.2549 0 24 -10.7451 24 -24v-32z" />
    <glyph glyph-name="code" unicode="&#xf121;" horiz-adv-x="640" 
d="M278.9 -63.5l-61 17.7002c-6.40039 1.7998 -10 8.5 -8.2002 14.8994l136.5 470.2c1.7998 6.40039 8.5 10 14.8994 8.2002l61 -17.7002c6.40039 -1.7998 10 -8.5 8.2002 -14.8994l-136.5 -470.2c-1.89941 -6.40039 -8.5 -10.1006 -14.8994 -8.2002zM164.9 48.7002
c-4.5 -4.90039 -12.1006 -5.10059 -17 -0.5l-144.101 135.1c-5.09961 4.7002 -5.09961 12.7998 0 17.5l144.101 135c4.89941 4.60059 12.5 4.2998 17 -0.5l43.5 -46.3994c4.69922 -4.90039 4.2998 -12.7002 -0.800781 -17.2002l-90.5996 -79.7002l90.5996 -79.7002
c5.10059 -4.5 5.40039 -12.2998 0.800781 -17.2002zM492.1 48.0996c-4.89941 -4.5 -12.5 -4.2998 -17 0.600586l-43.5 46.3994c-4.69922 4.90039 -4.2998 12.7002 0.800781 17.2002l90.5996 79.7002l-90.5996 79.7998c-5.10059 4.5 -5.40039 12.2998 -0.800781 17.2002
l43.5 46.4004c4.60059 4.7998 12.2002 5 17 0.5l144.101 -135.2c5.09961 -4.7002 5.09961 -12.7998 0 -17.5z" />
    <glyph glyph-name="reply-all" unicode="&#xf122;" horiz-adv-x="576" 
d="M136.309 258.164l176.005 151.985c15.4062 13.3047 39.6865 2.50293 39.6865 -18.1641v-82.7637c129.182 -10.2305 224 -52.2119 224 -183.548c0 -61.4404 -39.582 -122.309 -83.333 -154.132c-13.6533 -9.93066 -33.1113 2.5332 -28.0771 18.6309
c38.5117 123.162 -3.92188 169.482 -112.59 182.016v-84.1758c0 -20.7012 -24.2998 -31.4531 -39.6865 -18.1641l-176.005 151.987c-11.0703 9.56152 -11.0859 26.7529 0 36.3281zM8.30859 221.836c-11.0703 9.56152 -11.0859 26.7529 0 36.3281l176.005 151.985
c15.4062 13.3047 39.6865 2.50293 39.6865 -18.1641v-15.8174l-108.607 -93.7861c-11.8906 -10.2637 -19.3926 -25.4307 -19.3926 -42.3564v-0.0234375c0 -0.0078125 -0.0292969 -0.00292969 -0.0292969 -0.0117188c0 -16.9268 7.53125 -32.1084 19.4229 -42.373
l108.606 -93.7852v-15.8184c0 -20.7002 -24.2998 -31.4531 -39.6865 -18.1641z" />
    <glyph glyph-name="location-arrow" unicode="&#xf124;" 
d="M444.52 444.48c38.3809 16 79.9609 -25.5801 63.9707 -63.9707l-191.9 -415.779c-22.3896 -47.9805 -92.75 -31.9805 -92.75 19.1895v175.91h-175.91c-51.1699 0 -67.1602 70.3604 -19.1895 92.75z" />
    <glyph glyph-name="crop" unicode="&#xf125;" 
d="M488 96c13.25 0 24 -10.7402 24 -24v-48c0 -13.25 -10.75 -24 -24 -24h-40v-40c0 -13.25 -10.75 -24 -24 -24h-48c-13.25 0 -24 10.75 -24 24v282.75l-146.75 -146.75h114.75v-96h-232c-13.25 0 -24 10.75 -24 24v264h-40c-13.25 0 -24 10.75 -24 24v48
c0 13.2598 10.75 24 24 24h40v40c0 13.2598 10.75 24 24 24h48c13.25 0 24 -10.7402 24 -24v-282.75l146.75 146.75h-114.75v96h210.75l59.3096 59.3096c6.25 6.25 16.3809 6.25 22.6309 0l22.6191 -22.6191c6.25 -6.25 6.25 -16.3809 0 -22.6309l-59.3096 -59.3096v-242.75
h40z" />
    <glyph glyph-name="code-branch" unicode="&#xf126;" horiz-adv-x="384" 
d="M384 304c0 -35.2002 -22.7998 -65.0996 -54.4004 -75.9004c-0.5 -28.0996 -7.59961 -50.5 -21.5996 -67.8994c-28.2002 -35 -76 -39.5 -118.2 -43.4004c-25.7002 -2.39941 -49.8994 -4.59961 -66.0996 -12.7998c-7.10059 -3.59961 -11.7998 -8.2002 -14.9004 -13.4004
c30 -11.5 51.2002 -40.5996 51.2002 -74.5996c0 -44.2002 -35.7998 -80 -80 -80s-80 35.7998 -80 80c0 35.7998 23.5 66.0996 56 76.4004v199.3c-32.5 10.2002 -56 40.5 -56 76.2998c0 44.2002 35.7998 80 80 80s80 -35.7998 80 -80c0 -35.7998 -23.5 -66.0996 -56 -76.2998
v-144c23.9004 11.5 53.0996 14.2998 81.2998 16.8994c35.9004 3.30078 69.7998 6.5 85.2002 25.7002c6.7998 8.40039 10.4004 20.7998 11 36.9004c-33.2002 9.7002 -57.5 40.3994 -57.5 76.7998c0 44.2002 35.7998 80 80 80s80 -35.7998 80 -80zM80 384
c-8.7998 0 -16 -7.2002 -16 -16s7.2002 -16 16 -16s16 7.2002 16 16s-7.2002 16 -16 16zM80 0c8.7998 0 16 7.2002 16 16s-7.2002 16 -16 16s-16 -7.2002 -16 -16s7.2002 -16 16 -16zM304 320c-8.7998 0 -16 -7.2002 -16 -16s7.2002 -16 16 -16s16 7.2002 16 16
s-7.2002 16 -16 16z" />
    <glyph glyph-name="unlink" unicode="&#xf127;" 
d="M304.083 42.0928c4.68555 -4.68555 4.68555 -12.2842 0 -16.9707l-44.6738 -44.6738c-59.2627 -59.2627 -155.693 -59.2666 -214.961 0c-59.2646 59.2646 -59.2646 155.695 0 214.96l44.6748 44.6748c4.68555 4.68555 12.2842 4.68555 16.9707 0l39.5986 -39.5977
c4.68555 -4.68652 4.68555 -12.2842 0 -16.9717l-44.6758 -44.6738c-28.0713 -28.0732 -28.0713 -73.75 0 -101.823c28.0723 -28.0713 73.75 -28.0723 101.824 0l44.6738 44.6748c4.68652 4.68555 12.2842 4.68555 16.9717 0zM247.515 302.309l-39.5967 39.5986
c-4.68555 4.68652 -4.68555 12.2852 0 16.9707l44.6738 44.6738c59.2666 59.2646 155.695 59.2646 214.961 0s59.2656 -155.694 0 -214.96l-44.6748 -44.6748c-4.68652 -4.68555 -12.2852 -4.68555 -16.9707 0l-39.5986 39.5977c-4.68555 4.6875 -4.68555 12.2852 0 16.9717
l44.6758 44.6738c28.0713 28.0732 28.0713 73.75 0 101.823c-28.0742 28.0723 -73.752 28.0742 -101.824 0l-44.6738 -44.6748c-4.6875 -4.68555 -12.2852 -4.68555 -16.9717 0zM482.343 -56.9707c-9.37207 -9.37207 -24.5674 -9.37207 -33.9404 0l-441.373 441.373
c-9.37305 9.37207 -9.37305 24.5674 0 33.9404l22.6279 22.6279c9.37207 9.37305 24.5674 9.37305 33.9404 0l441.372 -441.374c9.37305 -9.37207 9.37305 -24.5674 0 -33.9404z" />
    <glyph glyph-name="question" unicode="&#xf128;" horiz-adv-x="384" 
d="M202.021 448c84.8809 0 175.482 -66.2559 175.481 -153.6c0 -115.982 -125.268 -117.768 -125.268 -160.627v-5.77344c0 -13.2549 -10.7451 -24 -24 -24h-72.4717c-13.2549 0 -24 10.7451 -24 24v9.78809c0 61.8291 46.876 86.5449 82.2998 106.405
c30.376 17.0293 48.9922 28.6113 48.9922 51.1641c0 29.832 -38.0518 49.6309 -68.8154 49.6309c-39.127 0 -57.708 -18.0684 -82.7568 -49.4492c-8.12109 -10.1738 -22.8809 -12.0127 -33.2529 -4.14844l-43.1387 32.709c-10.2705 7.78809 -12.541 22.2939 -5.17773 32.874
c40.5889 58.3232 92.2881 91.0264 172.107 91.0264zM192 74.541c38.1963 0 69.2715 -31.0742 69.2715 -69.2695c0 -38.1963 -31.0752 -69.2715 -69.2715 -69.2715s-69.2715 31.0752 -69.2715 69.2695c0 38.1963 31.0752 69.2715 69.2715 69.2715z" />
    <glyph glyph-name="info" unicode="&#xf129;" horiz-adv-x="192" 
d="M20 23.7715h20v144.457h-20c-11.0459 0 -20 8.9541 -20 20v47.7715c0 11.0459 8.9541 20 20 20h112c11.0459 0 20 -8.9541 20 -20v-212.229h20c11.0459 0 20 -8.9541 20 -20v-47.7715c0 -11.0459 -8.9541 -20 -20 -20h-152c-11.0459 0 -20 8.9541 -20 20v47.7715
c0 11.0459 8.9541 20 20 20zM96 448c39.7637 0 72 -32.2354 72 -72s-32.2354 -72 -72 -72s-72 32.2354 -72 72s32.2354 72 72 72z" />
    <glyph glyph-name="exclamation" unicode="&#xf12a;" horiz-adv-x="192" 
d="M176 16c0 -44.1123 -35.8877 -80 -80 -80s-80 35.8877 -80 80s35.8877 80 80 80s80 -35.8877 80 -80zM25.2598 422.801c-0.68457 13.709 10.2441 25.1992 23.9707 25.1992h93.5391c13.7266 0 24.6553 -11.4902 23.9707 -25.1992l-13.6006 -272
c-0.638672 -12.7725 -11.1807 -22.8008 -23.9697 -22.8008h-66.3398c-12.7891 0 -23.3311 10.0283 -23.9697 22.8008z" />
    <glyph glyph-name="superscript" unicode="&#xf12b;" 
d="M496 288c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-96c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h16v96h-16c-8.82422 0.0078125 -15.9775 7.18945 -15.9775 16.0156c0 2.57129 0.608398 5.00098 1.6875 7.1543l16 32
c2.62598 5.23926 8.03613 8.8252 14.29 8.83008h48c8.83105 0 16 -7.16895 16 -16v-144h16zM336 384c8.83105 0 16 -7.16895 16 -16v-48c0 -8.83105 -7.16895 -16 -16 -16h-33.4805l-77.8096 -112l77.8096 -112h33.4805c8.83105 0 16 -7.16895 16 -16v-48
c0 -8.83105 -7.16895 -16 -16 -16h-67c-5.41113 0.0273438 -10.1836 2.73047 -13.0596 6.87012l-79.9004 115l-79.9004 -115c-2.89062 -4.16016 -7.69531 -6.87012 -13.1396 -6.87012h-67c-8.83105 0 -16 7.16895 -16 16v48c0 8.83105 7.16895 16 16 16h33.4805l77.8096 112
l-77.8096 112h-33.4805c-8.83105 0 -16 7.16895 -16 16v48c0 8.83105 7.16895 16 16 16h67c5.41113 -0.0273438 10.1836 -2.73047 13.0596 -6.87012l79.9004 -115l79.9004 115c2.89062 4.16016 7.69531 6.87012 13.1396 6.87012h67z" />
    <glyph glyph-name="subscript" unicode="&#xf12c;" 
d="M496 0c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-96c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h16v96h-16c-8.82422 0.0078125 -15.9775 7.18945 -15.9775 16.0156c0 2.57129 0.608398 5.00098 1.6875 7.1543l16 32
c2.62598 5.23926 8.03613 8.8252 14.29 8.83008h48c8.83105 0 16 -7.16895 16 -16v-144h16zM336 384c8.83105 0 16 -7.16895 16 -16v-48c0 -8.83105 -7.16895 -16 -16 -16h-33.4805l-77.8096 -112l77.8096 -112h33.4805c8.83105 0 16 -7.16895 16 -16v-48
c0 -8.83105 -7.16895 -16 -16 -16h-67c-5.41113 0.0273438 -10.1836 2.73047 -13.0596 6.87012l-79.9004 115l-79.9004 -115c-2.89062 -4.16016 -7.69531 -6.87012 -13.1396 -6.87012h-67c-8.83105 0 -16 7.16895 -16 16v48c0 8.83105 7.16895 16 16 16h33.4805l77.8096 112
l-77.8096 112h-33.4805c-8.83105 0 -16 7.16895 -16 16v48c0 8.83105 7.16895 16 16 16h67c5.41113 -0.0273438 10.1836 -2.73047 13.0596 -6.87012l79.9004 -115l79.9004 115c2.89062 4.16016 7.69531 6.87012 13.1396 6.87012h67z" />
    <glyph glyph-name="eraser" unicode="&#xf12d;" 
d="M497.941 174.059l-142.059 -142.059h144.117c6.62695 0 12 -5.37305 12 -12v-40c0 -6.62695 -5.37305 -12 -12 -12h-356c-13.2461 0 -25.2529 5.37012 -33.9424 14.0586l-96 96c-18.7441 18.7451 -18.7441 49.1377 0 67.8828l256 256
c18.7471 18.7451 49.1387 18.7441 67.8838 0l160 -160c18.7441 -18.7451 18.7441 -49.1377 0 -67.8828zM195.314 236.686l-124.687 -124.686l80 -80h114.745l67.3135 67.3135z" />
    <glyph glyph-name="puzzle-piece" unicode="&#xf12e;" horiz-adv-x="576" 
d="M519.442 159.349c37.5957 0 56.5576 -31.5928 56.5576 -65.792c0 -33.5469 -19.2881 -61.5566 -54.9229 -61.5557c-39.8848 0 -50.3457 36.1523 -86.3086 36.1523c-60.5518 0 -25.8262 -120.102 -25.8262 -120.102c-51.5557 0 -181.23 -35.0732 -181.23 25.7305
c0 35.8271 36.2881 46.25 36.2881 85.9844c0 35.501 -28.1152 54.7178 -61.7881 54.7178c-34.3271 0 -63.5771 -18.8906 -63.5771 -56.3467c0 -41.3633 40 -58.998 40 -81.4707c0 -69.709 -178.635 -28.6621 -178.635 -28.6621v333.237s175.885 -40.9609 175.884 28.6621
c0 22.4727 -31.7109 40.3857 -31.7109 81.75c0 37.4551 31.7119 56.3457 66.3662 56.3457c33.3457 0 61.4609 -19.2158 61.4609 -54.7178c0 -39.7354 -36.2881 -50.1582 -36.2881 -85.9854c0 -83.2969 196.288 -3.29688 196.288 -3.29688
s-54.5908 -176.244 5.38379 -176.244c22.5586 0 40.5391 31.5928 82.0586 31.5928z" />
    <glyph glyph-name="microphone" unicode="&#xf130;" horiz-adv-x="352" 
d="M176 96c-53.0195 0 -96 42.9805 -96 96v160c0 53.0195 42.9805 96 96 96s96 -42.9805 96 -96v-160c0 -53.0195 -42.9805 -96 -96 -96zM336 256c8.83984 0 16 -7.16016 16 -16v-48c0 -88.9004 -66.29 -162.47 -152 -174.23v-33.7695h56c8.83984 0 16 -7.16016 16 -16v-16
c0 -8.83984 -7.16016 -16 -16 -16h-160c-8.83984 0 -16 7.16016 -16 16v16c0 8.83984 7.16016 16 16 16h56v34.1504c-88.0303 12.1396 -152 92.0498 -152 181.689v40.1602c0 8.83984 7.16016 16 16 16h16c8.83984 0 16 -7.16016 16 -16v-42.2998
c0 -66.8105 48.71 -126.59 115.21 -133.08c76.2998 -7.44043 140.79 52.5801 140.79 127.38v48c0 8.83984 7.16016 16 16 16h16z" />
    <glyph glyph-name="microphone-slash" unicode="&#xf131;" horiz-adv-x="640" 
d="M633.82 -10.0996c6.97949 -5.43066 8.22949 -15.4805 2.81934 -22.4502l-19.6396 -25.2705c-5.42969 -6.97949 -15.4805 -8.23926 -22.46 -2.80957l-588.36 454.729c-6.97949 5.43066 -8.22949 15.4805 -2.80957 22.4502l19.6396 25.2705
c5.41992 6.97949 15.4805 8.22949 22.46 2.80957l178.54 -137.99v45.3604c0 53.0195 42.9805 96 96 96c53.0205 0 96 -42.9805 96 -96v-160.01c0 -10.4502 -2.17969 -20.2705 -5.2793 -29.6699l26.5498 -20.5205c6.75977 15.4004 10.7197 32.2803 10.7197 50.2002v48
c0 8.83984 7.16016 16 16 16h16c8.83984 0 16 -7.16016 16 -16v-48c0 -29.0098 -7.38965 -56.1299 -19.9805 -80.1396zM400 -16c8.83984 0 16 -7.16016 16 -16v-16c0 -8.83984 -7.16016 -16 -16 -16h-160c-8.83984 0 -16 7.16016 -16 16v16c0 8.83984 7.16016 16 16 16h56
v34.1504c-88.0303 12.1396 -152 92.0498 -152 181.689v6.85059l52.0303 -40.2305c12.4395 -53.2197 55.3301 -96.4004 111.18 -101.85c6.94043 -0.669922 13.6396 -0.200195 20.3496 0.199219l50.1104 -38.7295c-10.8203 -3.77051 -22.0098 -6.70996 -33.6699 -8.31055
v-33.7695h56z" />
    <glyph glyph-name="calendar" unicode="&#xf133;" horiz-adv-x="448" 
d="M12 256h424c6.59961 0 12 -5.40039 12 -12v-260c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v260c0 6.59961 5.40039 12 12 12zM448 300c0 -6.59961 -5.40039 -12 -12 -12h-424c-6.59961 0 -12 5.40039 -12 12v36c0 26.5 21.5 48 48 48h48v52
c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-52h128v52c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-52h48c26.5 0 48 -21.5 48 -48v-36z" />
    <glyph glyph-name="fire-extinguisher" unicode="&#xf134;" horiz-adv-x="448" 
d="M434.027 421.671c7.31445 1.21875 13.9727 -4.4209 13.9727 -11.8369v-115.668c0 -7.41602 -6.6582 -13.0557 -13.9727 -11.8369l-168 28c-11.7305 1.95508 -10.0273 14.6973 -10.0273 17.6709h-40v-27.0303c41.4043 -10.6582 72 -48.2383 72 -92.9697v-248
c0 -13.2549 -10.7451 -24 -24 -24h-144c-13.2549 0 -24 10.7451 -24 24v246.795c0 44.8945 30.457 83.2666 72 94.1289v27.0762c-61.0361 0 -92.9424 7.00977 -121.711 -64.9141c-4.91699 -12.2949 -18.8789 -18.2959 -31.1963 -13.3701
c-12.3066 4.92285 -18.293 18.8906 -13.3701 31.1973c14.668 36.6709 38.0107 77.833 90.0498 90.8838c-14.1406 36.5273 12.793 76.2031 52.2275 76.2031c37.4463 0 64.3525 -36.1084 53.668 -72h58.332c0 4.2002 -1.30664 15.7822 10.0273 17.6709zM144 376
c8.82227 0 16 7.17773 16 16s-7.17773 16 -16 16s-16 -7.17773 -16 -16s7.17773 -16 16 -16z" />
    <glyph glyph-name="rocket" unicode="&#xf135;" 
d="M505.12 428.906c6.95508 -32.2031 6.95508 -57.4062 6.86133 -82.6094c0 -102.688 -55.4375 -164.781 -128.035 -211.094v-104.438c0 -16.3594 -11.8789 -35.5625 -26.5078 -42.8594l-98.7275 -49.3906c-3.27441 -1.48047 -6.91699 -2.375 -10.707 -2.51562
c-13.2471 0.00195312 -24.002 10.7539 -24.0059 24v103.844l-22.4746 -22.4688c-13.1211 -13.1562 -34.1211 -11.1875 -45.2773 0l-50.9043 50.9062c-12.9961 12.9922 -11.3652 33.8887 0 45.25l22.4746 22.4688h-103.811c-13.2461 0.00195312 -24.001 10.7539 -24.0059 24
c0.136719 3.79004 1.03223 7.43164 2.51562 10.7031l49.4355 98.8125c7.33008 14.6094 26.5391 26.4688 42.8867 26.4844h104.215c46.2168 72.7969 108.122 128 211.354 128c25.0996 0 50.3086 0 82.5059 -6.90625c5.54883 -1.1875 11.0176 -6.65625 12.207 -12.1875z
M384.04 280c22.0752 0.0078125 39.9971 17.9258 40.0098 40c0 22.0762 -17.9229 40 -40 40c-22.0762 0 -40 -17.9238 -40 -40c0 -22.0732 17.918 -39.9951 39.9902 -40z" />
    <glyph glyph-name="chevron-circle-left" unicode="&#xf137;" 
d="M256 -56c-137 0 -248 111 -248 248s111 248 248 248s248 -111 248 -248s-111 -248 -248 -248zM142.1 175l135.5 -135.5c9.40039 -9.40039 24.6006 -9.40039 33.9004 0l17 17c9.40039 9.40039 9.40039 24.5996 0 33.9004l-101.6 101.6l101.6 101.6
c9.40039 9.40039 9.40039 24.6006 0 33.9004l-17 17c-9.40039 9.40039 -24.5996 9.40039 -33.9004 0l-135.5 -135.5c-9.39941 -9.40039 -9.39941 -24.5996 0 -34z" />
    <glyph glyph-name="chevron-circle-right" unicode="&#xf138;" 
d="M256 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM369.9 209l-135.5 135.5c-9.40039 9.40039 -24.6006 9.40039 -33.9004 0l-17 -17c-9.40039 -9.40039 -9.40039 -24.5996 0 -33.9004l101.6 -101.6l-101.6 -101.6
c-9.40039 -9.40039 -9.40039 -24.6006 0 -33.9004l17 -17c9.40039 -9.40039 24.5996 -9.40039 33.9004 0l135.5 135.5c9.39941 9.40039 9.39941 24.5996 0 34z" />
    <glyph glyph-name="chevron-circle-up" unicode="&#xf139;" 
d="M8 192c0 137 111 248 248 248s248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248zM239 305.9l-135.5 -135.5c-9.40039 -9.40039 -9.40039 -24.6006 0 -33.9004l17 -17c9.40039 -9.40039 24.5996 -9.40039 33.9004 0l101.6 101.6l101.6 -101.6
c9.40039 -9.40039 24.6006 -9.40039 33.9004 0l17 17c9.40039 9.40039 9.40039 24.5996 0 33.9004l-135.5 135.5c-9.40039 9.39941 -24.5996 9.39941 -34 0z" />
    <glyph glyph-name="chevron-circle-down" unicode="&#xf13a;" 
d="M504 192c0 -137 -111 -248 -248 -248s-248 111 -248 248s111 248 248 248s248 -111 248 -248zM273 78.0996l135.5 135.5c9.40039 9.40039 9.40039 24.6006 0 33.9004l-17 17c-9.40039 9.40039 -24.5996 9.40039 -33.9004 0l-101.6 -101.6l-101.6 101.6
c-9.40039 9.40039 -24.6006 9.40039 -33.9004 0l-17 -17c-9.40039 -9.40039 -9.40039 -24.5996 0 -33.9004l135.5 -135.5c9.40039 -9.39941 24.5996 -9.39941 34 0z" />
    <glyph glyph-name="anchor" unicode="&#xf13d;" horiz-adv-x="576" 
d="M12.9707 96c-10.6904 0 -16.0449 12.9258 -8.48535 20.4854l67.0283 67.0283c4.6875 4.68652 12.2852 4.68652 16.9717 0l67.0283 -67.0283c7.56055 -7.55957 2.20605 -20.4854 -8.48438 -20.4854h-35.1465c20.2969 -54.3359 85.1816 -86.6162 144.117 -94.0146v190.015
h-52c-6.62695 0 -12 5.37305 -12 12v40c0 6.62695 5.37305 12 12 12h52v5.46973c-37.2842 13.1807 -64 48.7324 -64 90.5303c0 53.4746 43.7227 96.7393 97.3701 95.9902c52.2354 -0.728516 94.6348 -43.7627 94.6289 -96.002
c-0.00488281 -41.793 -26.7188 -77.3398 -64 -90.5186v-5.46973h52c6.62695 0 12 -5.37305 12 -12v-40c0 -6.62695 -5.37305 -12 -12 -12h-52v-190.015c59.1543 7.42676 123.827 39.6973 144.117 94.0146h-35.1465c-10.6904 0 -16.0449 12.9248 -8.48438 20.4854
l67.0283 67.0283c4.6875 4.68652 12.2852 4.68652 16.9717 0l67.0283 -67.0283c7.56055 -7.55957 2.20605 -20.4854 -8.48438 -20.4854h-32.3945c-21.7822 -102.62 -136.406 -160 -242.635 -160c-106.056 0 -220.828 57.2646 -242.635 160h-32.3945zM288 384
c-17.6445 0 -32 -14.3555 -32 -32s14.3555 -32 32 -32s32 14.3555 32 32s-14.3555 32 -32 32z" />
    <glyph glyph-name="unlock-alt" unicode="&#xf13e;" horiz-adv-x="448" 
d="M400 192c26.5 0 48 -21.5 48 -48v-160c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v160c0 26.5 21.5 48 48 48h24v102.5c0 84 67.5 153.2 151.5 153.5s152.5 -68 152.5 -152v-16c0 -13.2998 -10.7002 -24 -24 -24h-32c-13.2998 0 -24 10.7002 -24 24v16
c0 39.9004 -32.7002 72.4004 -72.7002 72c-39.5996 -0.400391 -71.2998 -33.2998 -71.2998 -72.9004v-103.1h248zM264 40v48c0 22.0996 -17.9004 40 -40 40s-40 -17.9004 -40 -40v-48c0 -22.0996 17.9004 -40 40 -40s40 17.9004 40 40z" />
    <glyph glyph-name="bullseye" unicode="&#xf140;" horiz-adv-x="496" 
d="M248 440c136.97 0 248 -111.03 248 -248s-111.03 -248 -248 -248s-248 111.03 -248 248s111.03 248 248 248zM248 8c101.71 0 184 82.3096 184 184c0 101.71 -82.3096 184 -184 184c-101.71 0 -184 -82.3096 -184 -184c0 -101.71 82.3096 -184 184 -184zM248 320
c70.6904 0 128 -57.3096 128 -128s-57.3096 -128 -128 -128s-128 57.3096 -128 128s57.3096 128 128 128zM248 128c35.29 0 64 28.71 64 64s-28.71 64 -64 64s-64 -28.71 -64 -64s28.71 -64 64 -64z" />
    <glyph glyph-name="ellipsis-h" unicode="&#xf141;" 
d="M328 192c0 -39.7998 -32.2002 -72 -72 -72s-72 32.2002 -72 72s32.2002 72 72 72s72 -32.2002 72 -72zM432 264c39.7998 0 72 -32.2002 72 -72s-32.2002 -72 -72 -72s-72 32.2002 -72 72s32.2002 72 72 72zM80 264c39.7998 0 72 -32.2002 72 -72s-32.2002 -72 -72 -72
s-72 32.2002 -72 72s32.2002 72 72 72z" />
    <glyph glyph-name="ellipsis-v" unicode="&#xf142;" horiz-adv-x="192" 
d="M96 264c39.7998 0 72 -32.2002 72 -72s-32.2002 -72 -72 -72s-72 32.2002 -72 72s32.2002 72 72 72zM24 368c0 39.7998 32.2002 72 72 72s72 -32.2002 72 -72s-32.2002 -72 -72 -72s-72 32.2002 -72 72zM24 16c0 39.7998 32.2002 72 72 72s72 -32.2002 72 -72
s-32.2002 -72 -72 -72s-72 32.2002 -72 72z" />
    <glyph glyph-name="rss-square" unicode="&#xf143;" horiz-adv-x="448" 
d="M400 416c26.5098 0 48 -21.4902 48 -48v-352c0 -26.5098 -21.4902 -48 -48 -48h-352c-26.5098 0 -48 21.4902 -48 48v352c0 26.5098 21.4902 48 48 48h352zM112 32c26.5098 0 48 21.4902 48 48s-21.4902 48 -48 48s-48 -21.4902 -48 -48s21.4902 -48 48 -48zM269.533 32
c6.53516 0 11.7764 5.46777 11.4248 11.9941c-5.9668 110.428 -94.418 198.99 -204.964 204.964c-6.52637 0.351562 -11.9941 -4.88965 -11.9941 -11.4248v-34.335c0 -6.00977 4.63574 -11.0508 10.6328 -11.4414c79.8799 -5.20312 143.909 -69.0732 149.123 -149.123
c0.391602 -5.99805 5.43066 -10.6338 11.4424 -10.6338h34.335zM372.56 32c6.4541 0 11.6641 5.33789 11.4326 11.7871c-5.99512 167.014 -140.375 302.18 -308.205 308.205c-6.44922 0.231445 -11.7871 -4.97852 -11.7871 -11.4326v-34.334
c0 -6.16016 4.88184 -11.1748 11.0391 -11.4277c136.556 -5.59863 246.162 -115.225 251.76 -251.76c0.251953 -6.15625 5.2666 -11.0381 11.4268 -11.0381h34.334z" />
    <glyph glyph-name="play-circle" unicode="&#xf144;" 
d="M256 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM371.7 168c16.3994 9.09961 16.3994 32.7998 0 42l-176 107c-15.9004 8.7998 -35.7002 -2.59961 -35.7002 -21v-208c0 -18.5 19.9004 -29.7998 35.7002 -21z" />
    <glyph glyph-name="minus-square" unicode="&#xf146;" horiz-adv-x="448" 
d="M400 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h352zM92 152h264c6.59961 0 12 5.40039 12 12v56c0 6.59961 -5.40039 12 -12 12h-264c-6.59961 0 -12 -5.40039 -12 -12v-56
c0 -6.59961 5.40039 -12 12 -12z" />
    <glyph glyph-name="check-square" unicode="&#xf14a;" horiz-adv-x="448" 
d="M400 -32h-352c-26.5098 0 -48 21.4902 -48 48v352c0 26.5098 21.4902 48 48 48h352c26.5098 0 48 -21.4902 48 -48v-352c0 -26.5098 -21.4902 -48 -48 -48zM195.314 66.0586l184 184c6.24707 6.24805 6.24707 16.3799 0 22.627l-22.6279 22.6279
c-6.24707 6.24707 -16.3789 6.24805 -22.6279 0l-150.059 -150.059l-70.0586 70.0596c-6.24805 6.24707 -16.3799 6.24707 -22.6279 0l-22.6279 -22.6279c-6.24707 -6.24707 -6.24707 -16.3789 0 -22.627l104 -104c6.24902 -6.25 16.3799 -6.25 22.6289 -0.000976562z" />
    <glyph glyph-name="pen-square" unicode="&#xf14b;" horiz-adv-x="448" 
d="M400 -32h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h352c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48zM238.1 270.1l-135.699 -135.699l-6.30078 -57.1006c-0.799805 -7.59961 5.60059 -14.0996 13.3008 -13.2998l57.0996 6.2998l135.7 135.7
c2.2998 2.2998 2.2998 6.09961 0 8.5l-55.5 55.5c-2.5 2.40039 -6.2998 2.40039 -8.60059 0.0996094zM345 282.9l-30.0996 30.0996c-9.40039 9.40039 -24.6006 9.40039 -33.9004 0l-23.0996 -23.0996c-2.30078 -2.30078 -2.30078 -6.10059 0 -8.5l55.5 -55.5
c2.2998 -2.30078 6.09961 -2.30078 8.5 0l23.0996 23.0996c9.2998 9.2998 9.2998 24.5 0 33.9004z" />
    <glyph glyph-name="share-square" unicode="&#xf14d;" horiz-adv-x="576" 
d="M568.482 270.552l-144.004 -135.984c-15.1787 -14.335 -40.4785 -3.70703 -40.4785 17.4473v71.9629c-144.575 -0.969727 -205.566 -35.1123 -164.775 -171.353c4.4834 -14.9727 -12.8457 -26.5674 -25.0059 -17.3301
c-38.9668 29.5996 -74.2188 86.2168 -74.2188 143.366c0 143.937 117.599 172.5 264 173.312v72.0156c0 21.1738 25.3174 31.7676 40.4785 17.4473l144.004 -135.987c10.0195 -9.46289 10.0273 -25.4248 0 -34.8965zM384 68.8721c0 7.34473 6.53027 12.9053 13.7998 11.8594
c3.36816 -0.485352 6.75977 -0.711914 10.2607 -0.711914c8.3877 0 16.4424 1.44043 23.9287 4.08887c7.81348 2.76367 16.0107 -3.01465 16.0107 -11.3027v-88.8057c0 -26.5098 -21.4902 -48 -48 -48h-352c-26.5098 0 -48 21.4902 -48 48v352c0 26.5098 21.4902 48 48 48
h121.033c12.5508 0 16.6748 -16.8301 5.54492 -22.6309c-18.7773 -9.78613 -36.0615 -22.1084 -51.0137 -37.6758c-2.18164 -2.27637 -5.25098 -3.69141 -8.64844 -3.69336h-50.916v-320h320v68.8721z" />
    <glyph glyph-name="compass" unicode="&#xf14e;" horiz-adv-x="496" 
d="M225.38 214.63c12.4902 12.4902 32.75 12.4902 45.25 0s12.5 -32.75 0 -45.25c-12.4902 -12.5 -32.7598 -12.5 -45.25 0c-12.5 12.4902 -12.5 32.75 0 45.25zM248 440c136.97 0 248 -111.03 248 -248s-111.03 -248 -248 -248s-248 111.03 -248 248s111.03 248 248 248z
M374.14 291.95c7.61035 16.6494 -9.54004 33.7998 -26.1895 26.2002l-144.34 -65.9707c-6.98438 -3.19238 -12.5781 -8.78516 -15.7705 -15.7695l-65.9795 -144.351c-7.61035 -16.6494 9.5498 -33.8096 26.1992 -26.1992l144.341 65.9697
c6.9834 3.19238 12.5771 8.78613 15.7695 15.7695z" />
    <glyph glyph-name="caret-square-down" unicode="&#xf150;" horiz-adv-x="448" 
d="M448 368v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h352c26.5 0 48 -21.5 48 -48zM92.5 227.5l123 -123c4.7002 -4.7002 12.2998 -4.7002 17 0l123 123c7.59961 7.59961 2.2002 20.5 -8.5 20.5h-246
c-10.7002 0 -16.0996 -12.9004 -8.5 -20.5z" />
    <glyph glyph-name="caret-square-up" unicode="&#xf151;" horiz-adv-x="448" 
d="M0 16v352c0 26.5098 21.4902 48 48 48h352c26.5098 0 48 -21.4902 48 -48v-352c0 -26.5098 -21.4902 -48 -48 -48h-352c-26.5098 0 -48 21.4902 -48 48zM355.515 156.485l-123.029 123.029c-4.68652 4.68652 -12.2842 4.68652 -16.9717 0l-123.028 -123.029
c-7.56055 -7.56055 -2.20605 -20.4854 8.48438 -20.4854h246.06c10.6904 0 16.0449 12.9258 8.48535 20.4854z" />
    <glyph glyph-name="caret-square-right" unicode="&#xf152;" horiz-adv-x="448" 
d="M48 416h352c26.5098 0 48 -21.4902 48 -48v-352c0 -26.5098 -21.4902 -48 -48 -48h-352c-26.5098 0 -48 21.4902 -48 48v352c0 26.5098 21.4902 48 48 48zM188.485 60.4854l123.028 123.028c4.68652 4.68652 4.68652 12.2842 0 16.9717l-123.028 123.029
c-7.56055 7.56055 -20.4854 2.20605 -20.4854 -8.48438v-246.06c0 -10.6904 12.9258 -16.0449 20.4854 -8.48535z" />
    <glyph glyph-name="euro-sign" unicode="&#xf153;" horiz-adv-x="320" 
d="M310.706 34.2354l8.81836 -44.4902c1.23828 -6.24902 -2.62109 -12.3623 -8.78809 -13.957c-12.5391 -3.24414 -34.8008 -7.78809 -61.1016 -7.78809c-104.371 0 -182.496 65.3076 -207.521 155.64h-30.1143c-6.62695 0 -12 5.37305 -12 12v28.3604
c0 6.62695 5.37305 12 12 12h21.3877c-1 12.958 -0.828125 28.6377 0.181641 42.2451h-21.5693c-6.62695 0 -12 5.37305 -12 12v29.7549c0 6.62695 5.37305 12 12 12h33.0752c28.9551 83.748 107.376 144 204.56 144c21.0752 0 40.582 -2.91211 52.6865 -5.20703
c6.86035 -1.30078 11.1475 -8.17578 9.32617 -14.917l-11.9912 -44.3682c-1.65527 -6.125 -7.78613 -9.89062 -14.002 -8.62305c-9.28711 1.89551 -23.3652 4.14551 -37.8516 4.14551c-54.9287 0 -96.9854 -30.0391 -117.619 -75.0303h138.278
c7.66211 0 13.3613 -7.08203 11.7227 -14.5664l-6.51172 -29.7549c-1.17969 -5.3877 -5.9834 -9.43359 -11.7227 -9.43359h-146.593c-1.55176 -13.958 -1.34766 -27.917 -0.137695 -42.2451h134.237c7.68945 0 13.3936 -7.12891 11.708 -14.6309l-6.37305 -28.3604
c-1.20312 -5.35547 -5.99121 -9.36914 -11.708 -9.36914h-113.689c19.5322 -50.6582 64.6982 -85.4482 121.462 -85.4482c18.0039 0 34.7334 2.97363 45.4258 5.41211c6.58887 1.50391 13.1094 -2.73828 14.4238 -9.36816z" />
    <glyph glyph-name="pound-sign" unicode="&#xf154;" horiz-adv-x="320" 
d="M308 96c6.62695 0 12 -5.37305 12 -12v-104c0 -6.62695 -5.37305 -12 -12 -12h-296c-6.62695 0 -12 5.37305 -12 12v40c0 6.62695 5.37305 12 12 12h36v128h-28c-6.62695 0 -12 5.37305 -12 12v40c0 6.62695 5.37305 12 12 12h28v66.0391
c0 73.2188 58.0264 125.961 139.931 125.961c48.6455 0 85.1934 -22.5596 101.575 -34.9277c5.39844 -4.07617 6.35254 -11.8057 2.11914 -17.0811l-28.4932 -35.5137c-3.7998 -4.73535 -10.5371 -5.89746 -15.6875 -2.68457
c-11.7744 7.34375 -33.9941 18.8486 -57.6523 18.8486c-37.2305 0 -61.792 -24.8193 -61.792 -57.0859v-63.5557h84c6.62695 0 12 -5.37305 12 -12v-40c0 -6.62695 -5.37305 -12 -12 -12h-84v-126.848h122.505v50.8477c0 6.62695 5.37305 12 12 12h45.4951z" />
    <glyph glyph-name="dollar-sign" unicode="&#xf155;" horiz-adv-x="288" 
d="M209.2 214.6c57.8994 -16.8994 94 -80.0996 72.5 -141.699c-15.4004 -44.1006 -59.1006 -71.8008 -105.7 -72.7002v-48.2002c0 -8.7998 -7.2002 -16 -16 -16h-32c-8.7998 0 -16 7.2002 -16 16v48c-31.4004 0.0996094 -62 10.7998 -86.5 30
c-7.90039 6.09961 -8.90039 17.5996 -1.7998 24.5l34.7998 34c5.2002 5.09961 13.4004 6.09961 19.5 2c10 -6.7998 22 -10.5 34.2002 -10.5h66.2998c16.2998 0 29.5 13.2002 29.5 29.5c0 13 -8.7002 24.5996 -21.2002 28.2998l-102.5 30
c-44.3994 13 -79.5996 50.5 -83.7998 96.6006c-5.90039 64.8994 45.2998 119.6 109 119.6h2.5v48c0 8.7998 7.2002 16 16 16h32c8.7998 0 16 -7.2002 16 -16v-48c31.4004 -0.0996094 62 -10.7998 86.5 -30c7.90039 -6.09961 8.90039 -17.5996 1.7998 -24.5l-34.7998 -34
c-5.2002 -5.09961 -13.4004 -6.09961 -19.5 -2c-10 6.7998 -22 10.5 -34.2002 10.5h-66.2998c-16.2998 0 -29.5 -13.2002 -29.5 -29.5c0 -13 8.7002 -24.7002 21.2002 -28.2998z" />
    <glyph glyph-name="rupee-sign" unicode="&#xf156;" horiz-adv-x="320" 
d="M308 352h-72.9424c5.97266 -9.75391 10.7666 -20.459 14.252 -32h58.6904c6.62695 0 12 -5.37305 12 -12v-40c0 -6.62695 -5.37305 -12 -12 -12h-52.8105c-7.1748 -74.5107 -61.8193 -125.566 -138.318 -127.906l150.882 -139.275
c8.02734 -7.41016 2.78516 -20.8184 -8.13867 -20.8184h-82.5625c-3.1377 0 -6 1.20801 -8.13867 3.18164l-165.052 152.356c-2.46094 2.27148 -3.86133 5.46875 -3.86133 8.81836v53.0117c0 6.62695 5.37305 12 12 12h84c41.7959 0 68.54 22.5459 74.7568 58.6318h-158.757
c-6.62695 0 -12 5.37305 -12 12v40c0 6.62695 5.37305 12 12 12h146.25c-12.709 17.2939 -33.6621 27.252 -60.9697 27.252h-85.2803c-6.62695 0 -12 5.37305 -12 12v44.748c0 6.62695 5.37305 12 12 12h296c6.62695 0 12 -5.37305 12 -12v-40
c0 -6.62695 -5.37305 -12 -12 -12z" />
    <glyph glyph-name="yen-sign" unicode="&#xf157;" horiz-adv-x="384" 
d="M351.2 416c9.09961 0 14.8994 -9.7002 10.5996 -17.5996l-80.0996 -150.4h58.2998c6.59961 0 12 -5.40039 12 -12v-32c0 -6.59961 -5.40039 -12 -12 -12h-88.2002l-19.7998 -37.2002v-26.7998h108c6.59961 0 12 -5.40039 12 -12v-32c0 -6.59961 -5.40039 -12 -12 -12
h-108v-92c0 -6.59961 -5.40039 -12 -12 -12h-56c-6.59961 0 -12 5.40039 -12 12v92h-108c-6.59961 0 -12 5.40039 -12 12v32c0 6.59961 5.40039 12 12 12h108v26.7998l-19.7998 37.2002h-88.2002c-6.59961 0 -12 5.40039 -12 12v32c0 6.59961 5.40039 12 12 12h58.2998
l-80.0996 150.4c-4.2002 7.89941 1.5 17.5996 10.5996 17.5996h65.2002c4.59961 0 8.7998 -2.59961 10.7998 -6.7002l55.4004 -113.2c14.5 -34.6992 27.0996 -71.8994 27.0996 -71.8994h1.2998s12.6006 37.2002 27.1006 71.8994l55.3994 113.2
c2 4.10059 6.2002 6.7002 10.8008 6.7002h65.2998z" />
    <glyph glyph-name="ruble-sign" unicode="&#xf158;" horiz-adv-x="384" 
d="M239.36 128h-92.8008v-32h161.44c6.62695 0 12 -5.37305 12 -12v-40c0 -6.62695 -5.37305 -12 -12 -12h-161.44v-52c0 -6.62695 -5.37305 -12 -12 -12h-58.5596c-6.62695 0 -12 5.37305 -12 12v52h-52c-6.62695 0 -12 5.37305 -12 12v40c0 6.62695 5.37305 12 12 12h52
v32h-52c-6.62695 0 -12 5.37305 -12 12v45.3682c0 6.62695 5.37305 12 12 12h52v206.632c0 6.62695 5.37305 12 12 12h163.36c85.1201 0 144.64 -57.5996 144.64 -143.071c0 -85.4707 -59.5195 -144.929 -144.64 -144.929zM146.56 347.252v-149.884h77.4404
c48 0 76.1602 29.7285 76.1602 75.5605c0 45.2129 -28.1602 74.3232 -74.8799 74.3232h-78.7207z" />
    <glyph glyph-name="won-sign" unicode="&#xf159;" horiz-adv-x="576" 
d="M564 256h-62.7002l-7.39941 -32h70.0996c6.59961 0 12 -5.40039 12 -12v-40c0 -6.59961 -5.40039 -12 -12 -12h-84.9004l-42.0996 -182.7c-1.2998 -5.39941 -6.09961 -9.2998 -11.7002 -9.2998h-56.7998c-5.59961 0 -10.4004 3.90039 -11.7002 9.2998l-42.3994 182.7
h-55.1006l-42.2998 -182.7c-1.2998 -5.39941 -6.09961 -9.2998 -11.7002 -9.2998h-56.7998c-5.59961 0 -10.5 3.90039 -11.7002 9.40039l-40.8994 182.6h-83.9004c-6.59961 0 -12 5.40039 -12 12v40c0 6.59961 5.40039 12 12 12h69.5l-7.2002 32h-62.2998
c-6.59961 0 -12 5.40039 -12 12v40c0 6.59961 5.40039 12 12 12h48l-18.0996 80.7002c-1.7002 7.5 4 14.5996 11.6992 14.5996h42.1006c5.7002 0 10.7002 -4 11.7998 -9.59961l17.5 -85.7002h108.7l20 86c1.2998 5.5 6.09961 9.2998 11.7002 9.2998h44
c5.59961 0 10.3994 -3.7998 11.6992 -9.2998l19.7002 -86h109.9l14.3994 85.7998c1.10059 5.5 6 9.5 11.7002 9.5h46.1006c7.69922 0 13.3994 -7.2002 11.6992 -14.7002l-18.5996 -80.5996h48c6.59961 0 12 -5.40039 12 -12v-40c0 -6.59961 -5.40039 -12 -12 -12zM183.8 106
l12.6006 54h-38.8008l11 -54c5.10059 -25.2002 6.80078 -47.2002 6.80078 -47.2002h1.09961c0.5 0 1.09961 21.4004 7.2998 47.2002zM211.3 224l7.5 32h-80.7998l6.5 -32h66.7998zM274.2 224h25.3994l-2 8.59961c-1.89941 8 -3.5 16 -4.7998 23.4004h-11.7998
c-1.2998 -7.40039 -2.90039 -15.4004 -4.7998 -23.4004zM405.1 106l11.5 54h-39.0996l12.4004 -54c6.19922 -25.7998 6.69922 -47.2002 7.2998 -47.2002h1.09961s1.7002 22 6.7998 47.2002zM430.3 224l6.90039 32h-81.6006l7.30078 -32h67.3994z" />
    <glyph glyph-name="file" unicode="&#xf15b;" horiz-adv-x="384" 
d="M224 312c0 -13.2002 10.7998 -24 24 -24h136v-328c0 -13.2998 -10.7002 -24 -24 -24h-336c-13.2998 0 -24 10.7002 -24 24v464c0 13.2998 10.7002 24 24 24h200v-136zM384 326.1v-6.09961h-128v128h6.09961c6.40039 0 12.5 -2.5 17 -7l97.9004 -98
c4.5 -4.5 7 -10.5996 7 -16.9004z" />
    <glyph glyph-name="file-alt" unicode="&#xf15c;" horiz-adv-x="384" 
d="M224 312c0 -13.2002 10.7998 -24 24 -24h136v-328c0 -13.2998 -10.7002 -24 -24 -24h-336c-13.2998 0 -24 10.7002 -24 24v464c0 13.2998 10.7002 24 24 24h200v-136zM288 76v8c0 6.59961 -5.40039 12 -12 12h-168c-6.59961 0 -12 -5.40039 -12 -12v-8
c0 -6.59961 5.40039 -12 12 -12h168c6.59961 0 12 5.40039 12 12zM288 140v8c0 6.59961 -5.40039 12 -12 12h-168c-6.59961 0 -12 -5.40039 -12 -12v-8c0 -6.59961 5.40039 -12 12 -12h168c6.59961 0 12 5.40039 12 12zM288 212c0 6.59961 -5.40039 12 -12 12h-168
c-6.59961 0 -12 -5.40039 -12 -12v-8c0 -6.59961 5.40039 -12 12 -12h168c6.59961 0 12 5.40039 12 12v8zM384 326.1v-6.09961h-128v128h6.09961c6.40039 0 12.5 -2.5 17 -7l97.9004 -98c4.5 -4.5 7 -10.5996 7 -16.9004z" />
    <glyph glyph-name="sort-alpha-down" unicode="&#xf15d;" horiz-adv-x="448" 
d="M176 96c14.2197 0 21.3496 -17.2598 11.3301 -27.3096l-80 -96c-2.89551 -2.89453 -6.89844 -4.68555 -11.3125 -4.68555c-4.41309 0 -8.41211 1.79102 -11.3076 4.68555l-80 96c-10.0703 10.0693 -2.90039 27.3096 11.29 27.3096h48v304c0 8.83105 7.16895 16 16 16h32
c8.83105 0 16 -7.16895 16 -16v-304h48zM416 160c8.83105 0 16 -7.16895 16 -16v-17.6299c0 -9.51074 -4.14355 -18.0566 -10.7402 -23.9199l-61.2598 -70.4502h56c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-128c-8.83105 0 -16 7.16895 -16 16
v17.6299c0 9.51074 4.14355 18.0566 10.7402 23.9199l61.2598 70.4502h-56c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h128zM447.06 245.38c0.600586 -1.67969 0.931641 -3.49512 0.931641 -5.37988c0 -8.82812 -7.16406 -15.9951 -15.9912 -16h-24.8398
c-0.015625 0 -0.0263672 -0.00195312 -0.0419922 -0.00195312c-7.11426 0 -13.1514 4.6543 -15.2285 11.082l-4.40918 12.9199h-71l-4.4209 -12.9199c-2.07617 -6.42773 -8.10938 -11.0801 -15.2246 -11.0801h-0.00488281h-24.8301
c-8.82715 0.00488281 -15.9863 7.17773 -15.9863 16.0049c0 1.88574 0.326172 3.69531 0.926758 5.375l59.2695 160c2.20996 6.19043 8.125 10.6201 15.0703 10.6201h41.4395c6.94531 0 12.8604 -4.42969 15.0703 -10.6201zM335.61 304h32.7793l-16.3896 48z" />
    <glyph glyph-name="sort-alpha-up" unicode="&#xf15e;" horiz-adv-x="448" 
d="M16 288c-14.2197 0 -21.3496 17.2598 -11.3096 27.3096l80 96c2.89551 2.89453 6.89844 4.68555 11.3115 4.68555c4.41406 0 8.41211 -1.79102 11.3076 -4.68555l80 -96c10.0703 -10.0693 2.90039 -27.3096 -11.3096 -27.3096h-48v-304c0 -8.83105 -7.16895 -16 -16 -16
h-32c-8.83105 0 -16 7.16895 -16 16v304h-48zM416 160c8.83105 0 16 -7.16895 16 -16v-17.6299c0 -9.51074 -4.14355 -18.0566 -10.7402 -23.9199l-61.2598 -70.4502h56c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-128
c-8.83105 0 -16 7.16895 -16 16v17.6299c0 9.51074 4.14355 18.0566 10.7402 23.9199l61.2598 70.4502h-56c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h128zM447.06 245.38c0.600586 -1.67969 0.931641 -3.49512 0.931641 -5.37988
c0 -8.82812 -7.16406 -15.9951 -15.9912 -16h-24.8398c-0.015625 0 -0.0263672 -0.00195312 -0.0419922 -0.00195312c-7.11426 0 -13.1514 4.6543 -15.2285 11.082l-4.40918 12.9199h-71l-4.4209 -12.9199c-2.07617 -6.42773 -8.10938 -11.0801 -15.2246 -11.0801
h-0.00488281h-24.8301c-8.82715 0.00488281 -15.9863 7.17773 -15.9863 16.0049c0 1.88574 0.326172 3.69531 0.926758 5.375l59.2695 160c2.20996 6.19043 8.125 10.6201 15.0703 10.6201h41.4395c6.94531 0 12.8604 -4.42969 15.0703 -10.6201zM335.61 304h32.7793
l-16.3896 48z" />
    <glyph glyph-name="sort-amount-down" unicode="&#xf160;" 
d="M304 32c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-64c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h64zM176 96c14.2197 0 21.3496 -17.2598 11.3301 -27.3096l-80 -96
c-2.89551 -2.89453 -6.89844 -4.68555 -11.3125 -4.68555c-4.41309 0 -8.41211 1.79102 -11.3076 4.68555l-80 96c-10.0801 10.0693 -2.90039 27.3096 11.29 27.3096h48v304c0 8.83105 7.16895 16 16 16h32c8.83105 0 16 -7.16895 16 -16v-304h48zM432 288
c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-192c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h192zM368 160c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-128c-8.83105 0 -16 7.16895 -16 16v32
c0 8.83105 7.16895 16 16 16h128zM496 416c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-256c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h256z" />
    <glyph glyph-name="sort-amount-up" unicode="&#xf161;" 
d="M304 32c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-64c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h64zM16 288c-14.2305 0 -21.3496 17.2598 -11.3096 27.3096l80 96c2.89551 2.89453 6.89844 4.68555 11.3115 4.68555
c4.41406 0 8.41211 -1.79102 11.3076 -4.68555l80 -96c10.0703 -10.0693 2.90039 -27.3096 -11.3096 -27.3096h-48v-304c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v304h-48zM432 288c8.83105 0 16 -7.16895 16 -16v-32
c0 -8.83105 -7.16895 -16 -16 -16h-192c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h192zM368 160c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-128c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h128zM496 416
c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-256c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h256z" />
    <glyph glyph-name="sort-numeric-down" unicode="&#xf162;" horiz-adv-x="448" 
d="M304 352c-8.82422 0.0078125 -15.9775 7.18945 -15.9775 16.0156c0 2.57129 0.608398 5.00098 1.6875 7.1543l16 32c2.62598 5.23926 8.03613 8.8252 14.29 8.83008h48c8.83105 0 16 -7.16895 16 -16v-112h16c8.83105 0 16 -7.16895 16 -16v-32
c0 -8.83105 -7.16895 -16 -16 -16h-96c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h16v64h-16zM330.15 189.09c53.4502 14.25 101.85 -25.8799 101.869 -77.0898v-10.7695c0 -70.3906 -28.25 -107.24 -86.25 -132
c-8.36914 -3.58008 -18.0293 1.2793 -20.8994 9.90918l-9.90039 20c-2.62012 7.87012 0.610352 16.9404 8.18066 20.3408c7.59961 3.28516 14.6064 7.64258 20.8496 12.9092c-47.6396 4.76074 -83.0996 51.4805 -68.8496 102.53c7.62793 26.2793 28.5596 46.9287 55 54.1699
zM352 92c11.0381 0 20 8.96191 20 20s-8.96191 20 -20 20s-20 -8.96191 -20 -20s8.96191 -20 20 -20zM176 96c14.2197 0 21.3496 -17.2598 11.3301 -27.3096l-80 -96c-2.89551 -2.89453 -6.89844 -4.68555 -11.3125 -4.68555c-4.41309 0 -8.41211 1.79102 -11.3076 4.68555
l-80 96c-10.0703 10.0693 -2.90039 27.3096 11.29 27.3096h48v304c0 8.83105 7.16895 16 16 16h32c8.83105 0 16 -7.16895 16 -16v-304h48z" />
    <glyph glyph-name="sort-numeric-up" unicode="&#xf163;" horiz-adv-x="448" 
d="M330.17 189.09c53.4502 14.25 101.83 -25.8799 101.85 -77.0898v-10.7695c0 -70.3906 -28.25 -107.24 -86.25 -132c-8.36914 -3.58008 -18.0293 1.2793 -20.8994 9.90918l-9.90039 20c-2.62012 7.87012 0.610352 16.9404 8.18066 20.3408
c7.59961 3.28516 14.6064 7.64258 20.8496 12.9092c-47.6396 4.76074 -83.0996 51.4805 -68.8301 102.53c7.62891 26.2793 28.5596 46.9287 55 54.1699zM352 92c11.0381 0 20 8.96191 20 20s-8.96191 20 -20 20s-20 -8.96191 -20 -20s8.96191 -20 20 -20zM304 352
c-8.82422 0.0078125 -15.9775 7.18945 -15.9775 16.0156c0 2.57129 0.608398 5.00098 1.6875 7.1543l16 32c2.62598 5.23926 8.03613 8.8252 14.29 8.83008h48c8.83105 0 16 -7.16895 16 -16v-112h16c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-96
c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h16v64h-16zM107.31 411.31l80 -96c10.0703 -10.0693 2.90039 -27.3096 -11.3096 -27.3096h-48v-304c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v304h-48
c-14.2197 0 -21.3496 17.2598 -11.3096 27.3096l80 96c2.89551 2.89453 6.89844 4.68555 11.3115 4.68555c4.41406 0 8.41211 -1.79102 11.3076 -4.68555z" />
    <glyph glyph-name="thumbs-up" unicode="&#xf164;" 
d="M104 224c13.2549 0 24 -10.7451 24 -24v-240c0 -13.2549 -10.7451 -24 -24 -24h-80c-13.2549 0 -24 10.7451 -24 24v240c0 13.2549 10.7451 24 24 24h80zM64 -24c13.2549 0 24 10.7451 24 24s-10.7451 24 -24 24s-24 -10.7451 -24 -24s10.7451 -24 24 -24zM384 366.548
c0 -42.416 -25.9697 -66.208 -33.2773 -94.5479h101.724c33.3965 0 59.3965 -27.7461 59.5527 -58.0977c0.0839844 -17.9385 -7.5459 -37.249 -19.4395 -49.1973l-0.109375 -0.110352c9.83594 -23.3369 8.23633 -56.0371 -9.30859 -79.4688
c8.68164 -25.8945 -0.0683594 -57.7041 -16.3818 -74.7568c4.29785 -17.5977 2.24414 -32.5752 -6.14746 -44.6318c-20.4102 -29.3242 -70.9961 -29.7373 -113.773 -29.7373l-2.84473 0.000976562c-48.2871 0.0166016 -87.8057 17.5977 -119.561 31.7246
c-15.957 7.09961 -36.8203 15.8877 -52.6504 16.1787c-6.54004 0.120117 -11.7832 5.45703 -11.7832 11.998v213.77c0 3.2002 1.28223 6.27148 3.55762 8.52148c39.6143 39.1436 56.6484 80.5869 89.1172 113.11c14.8037 14.832 20.1885 37.2363 25.3936 58.9023
c4.44629 18.501 13.749 57.7939 33.9316 57.7939c24 0 72 -8 72 -81.4521z" />
    <glyph glyph-name="thumbs-down" unicode="&#xf165;" 
d="M0 392c0 13.2549 10.7451 24 24 24h80c13.2549 0 24 -10.7451 24 -24v-240c0 -13.2549 -10.7451 -24 -24 -24h-80c-13.2549 0 -24 10.7451 -24 24v240zM40 192c0 -13.2549 10.7451 -24 24 -24s24 10.7451 24 24s-10.7451 24 -24 24s-24 -10.7451 -24 -24zM312 -64
c-20.1826 0 -29.4854 39.293 -33.9307 57.7949c-5.20605 21.666 -10.5889 44.0703 -25.3936 58.9023c-32.4688 32.5234 -49.5029 73.9668 -89.1172 113.11c-2.19727 2.17285 -3.55762 5.19043 -3.55762 8.52148v213.77c0 6.54102 5.24316 11.8779 11.7832 11.998
c15.8311 0.290039 36.6934 9.0791 52.6504 16.1787c31.7549 14.127 71.2744 31.708 119.561 31.7246h2.84375c42.7773 0 93.3633 -0.413086 113.774 -29.7373c8.3916 -12.0566 10.4453 -27.0342 6.14746 -44.6318c16.3125 -17.0527 25.0635 -48.8633 16.3818 -74.7568
c17.5439 -23.4316 19.1436 -56.1318 9.30859 -79.4688l0.109375 -0.110352c11.8936 -11.9492 19.5234 -31.2588 19.4395 -49.1973c-0.15625 -30.3516 -26.1572 -58.0977 -59.5527 -58.0977h-101.725c7.30762 -28.3398 33.2773 -52.1318 33.2773 -94.5479
c0 -73.4521 -48 -81.4521 -72 -81.4521z" />
    <glyph glyph-name="female" unicode="&#xf182;" horiz-adv-x="256" 
d="M128 448c35.3457 0 64 -28.6543 64 -64s-28.6543 -64 -64 -64s-64 28.6543 -64 64s28.6543 64 64 64zM247.283 93.8213c3.78809 -15.1504 -7.69238 -29.8213 -23.2832 -29.8213h-56v-104c0 -13.2549 -10.7451 -24 -24 -24h-32c-13.2549 0 -24 10.7451 -24 24v104h-56
c-15.6172 0 -27.0654 14.6953 -23.2832 29.8213l48 192c2.6084 10.4316 12.0488 18.1787 23.2832 18.1787h11.3604c23.6895 -10.8936 50.5684 -10.4434 73.2793 0h11.3604c11.2344 0 20.6748 -7.74707 23.2832 -18.1787z" />
    <glyph glyph-name="male" unicode="&#xf183;" horiz-adv-x="192" 
d="M96 448c35.3457 0 64 -28.6543 64 -64s-28.6543 -64 -64 -64s-64 28.6543 -64 64s28.6543 64 64 64zM144 304c26.5098 0 48 -21.4902 48 -48v-136c0 -13.2549 -10.7451 -24 -24 -24h-16v-136c0 -13.2549 -10.7451 -24 -24 -24h-64c-13.2549 0 -24 10.7451 -24 24v136h-16
c-13.2549 0 -24 10.7451 -24 24v136c0 26.5098 21.4902 48 48 48h11.3604c23.6895 -10.8936 50.5684 -10.4434 73.2793 0h11.3604z" />
    <glyph glyph-name="sun" unicode="&#xf185;" 
d="M256 288c52.9004 0 96 -43.0996 96 -96s-43.0996 -96 -96 -96s-96 43.0996 -96 96s43.0996 96 96 96zM502.4 207.5c12.7998 -6.40039 12.7998 -24.5996 -0.200195 -31.0996l-94.7002 -47.3008l33.5 -100.399c4.59961 -13.5 -8.2998 -26.4004 -21.9004 -21.9004
l-100.399 33.5l-47.2998 -94.7002c-6.40039 -12.7998 -24.6006 -12.7998 -31 0l-47.3008 94.7002l-100.399 -33.5c-13.5 -4.59961 -26.4004 8.2998 -21.9004 21.9004l33.5 100.5l-94.7002 47.2998c-12.7998 6.40039 -12.7998 24.5996 0 31l94.7002 47.4004l-33.5 100.399
c-4.59961 13.5 8.2998 26.4004 21.9004 21.9004l100.5 -33.5l47.2998 94.7002c6.40039 12.7998 24.5996 12.7998 31 0l47.4004 -94.8008l100.399 33.5c13.5 4.60059 26.4004 -8.2998 21.9004 -21.8994l-33.5 -100.4zM346.5 101.5c49.9004 49.9004 49.9004 131.1 0 181
s-131.1 49.9004 -181 0s-49.9004 -131.1 0 -181s131.1 -49.9004 181 0z" />
    <glyph glyph-name="moon" unicode="&#xf186;" 
d="M283.211 -64c-141.489 0 -256 114.691 -256 256c0 141.489 114.691 256 256 256c16.0479 -0.00195312 31.5352 -1.46973 46.7754 -4.28027c11.0059 -2.0332 13.4414 -16.7178 3.75586 -22.2295c-62.8359 -35.7588 -101.498 -102.172 -101.498 -174.395
c0 -125.378 114.059 -220.607 238.262 -196.954c10.9229 2.08008 18.6299 -10.6416 11.5625 -19.3496c-47.7783 -58.8672 -119.896 -94.792 -198.857 -94.792z" />
    <glyph glyph-name="archive" unicode="&#xf187;" 
d="M32 0v288h448v-288c0 -17.7002 -14.2998 -32 -32 -32h-384c-17.7002 0 -32 14.2998 -32 32zM192 212v-8c0 -6.59961 5.40039 -12 12 -12h104c6.59961 0 12 5.40039 12 12v8c0 6.59961 -5.40039 12 -12 12h-104c-6.59961 0 -12 -5.40039 -12 -12zM480 416
c17.7002 0 32 -14.2998 32 -32v-48c0 -8.7998 -7.2002 -16 -16 -16h-480c-8.7998 0 -16 7.2002 -16 16v48c0 17.7002 14.2998 32 32 32h448z" />
    <glyph glyph-name="bug" unicode="&#xf188;" 
d="M511.988 159.1c-0.478516 -17.4297 -15.2168 -31.0996 -32.6533 -31.0996h-55.335v-16c0 -21.8643 -4.88184 -42.584 -13.5996 -61.1445l60.2275 -60.2285c12.4961 -12.4971 12.4961 -32.7578 0 -45.2549c-12.498 -12.4971 -32.7588 -12.4961 -45.2559 0
l-54.7363 54.7363c-24.75 -20.0732 -56.2852 -32.1084 -90.6357 -32.1084v244c0 6.62695 -5.37305 12 -12 12h-24c-6.62695 0 -12 -5.37305 -12 -12v-244c-34.3506 0 -65.8857 12.0352 -90.6357 32.1084l-54.7363 -54.7363c-12.498 -12.4971 -32.7588 -12.4961 -45.2559 0
c-12.4961 12.4971 -12.4961 32.7578 0 45.2549l60.2275 60.2285c-8.71777 18.5605 -13.5996 39.2803 -13.5996 61.1445v16h-55.334c-17.4355 0 -32.1748 13.6699 -32.6533 31.0996c-0.49707 18.084 14.0156 32.9004 31.9873 32.9004h56v58.7451l-46.6279 46.6279
c-12.4961 12.4971 -12.4961 32.7578 0 45.2549c12.498 12.4971 32.7578 12.4971 45.2559 0l54.627 -54.6279h229.489l54.627 54.627c12.498 12.4971 32.7578 12.4971 45.2559 0c12.4961 -12.4971 12.4961 -32.7578 0 -45.2549l-46.627 -46.627v-58.7451h56
c17.9717 0 32.4844 -14.8164 31.9883 -32.9004zM257 448c61.8564 0 112 -50.1436 112 -112h-224c0 61.8564 50.1436 112 112 112z" />
    <glyph glyph-name="caret-square-left" unicode="&#xf191;" horiz-adv-x="448" 
d="M400 -32h-352c-26.5098 0 -48 21.4902 -48 48v352c0 26.5098 21.4902 48 48 48h352c26.5098 0 48 -21.4902 48 -48v-352c0 -26.5098 -21.4902 -48 -48 -48zM259.515 323.515l-123.029 -123.029c-4.68652 -4.68652 -4.68652 -12.2842 0 -16.9717l123.028 -123.028
c7.56055 -7.56055 20.4854 -2.20605 20.4854 8.48438v246.06c0.000976562 10.6904 -12.9248 16.0449 -20.4844 8.48535z" />
    <glyph glyph-name="dot-circle" unicode="&#xf192;" 
d="M256 440c136.967 0 248 -111.033 248 -248s-111.033 -248 -248 -248s-248 111.033 -248 248s111.033 248 248 248zM336 192c0 44.1123 -35.8877 80 -80 80s-80 -35.8877 -80 -80s35.8877 -80 80 -80s80 35.8877 80 80z" />
    <glyph glyph-name="wheelchair" unicode="&#xf193;" 
d="M496.101 62.3311l14.2275 -28.6631c3.92871 -7.91504 0.697266 -17.5156 -7.21777 -21.4453l-65.4658 -32.8857c-16.0488 -7.9668 -35.5557 -1.19434 -43.1885 15.0547l-62.7773 133.608h-139.679c-15.9248 0 -29.4258 11.71 -31.6787 27.4746
c-33.8887 237.218 -31.9414 222.481 -32.3213 228.525c0 36.3584 30.3184 65.6348 67.0518 63.9287c33.2715 -1.54492 60.0479 -28.9043 60.9248 -62.2012c0.868164 -32.9326 -23.1514 -60.4229 -54.6074 -65.0381l4.66992 -32.6904h129.961c8.83691 0 16 -7.16309 16 -16
v-32c0 -8.83691 -7.16309 -16 -16 -16h-120.818l4.57227 -32h132.246c12.8076 0 23.8506 -7.5127 28.9619 -18.3916l57.5146 -122.407l36.1787 18.3486c7.91504 3.92871 17.5166 0.697266 21.4453 -7.21777zM311.358 96l25.752 -54.8076
c-27.3047 -61.8848 -89.2402 -105.192 -161.11 -105.192c-97.0469 0 -176 78.9531 -176 176c0 74.0371 45.9561 137.536 110.836 163.489c2.64453 -18.4736 5.77637 -40.3682 9.48828 -66.333c-33.6299 -19.3477 -56.3242 -55.6514 -56.3242 -97.1562
c0 -61.7568 50.2432 -112 112 -112c56.3242 0 103.064 41.7959 110.852 96h24.5068z" />
    <glyph glyph-name="lira-sign" unicode="&#xf195;" horiz-adv-x="384" 
d="M371.994 192c6.78613 0 12.2578 -5.62598 11.9971 -12.4082c-5.15332 -133.758 -94.3174 -211.592 -228.408 -211.592h-79.583c-6.62695 0 -12 5.37305 -12 12v193.442l-49.3975 -10.9775c-7.49316 -1.66602 -14.6025 4.03711 -14.6025 11.7139v40.9766
c0 5.72656 4.02734 10.5205 9.39746 11.7139l54.6025 12.1338v30.4395l-49.3975 -10.9775c-7.49316 -1.66602 -14.6025 4.03711 -14.6025 11.7139v40.9766c0 5.72656 4.02734 10.5205 9.39746 11.7139l54.6025 12.1338v68.9971c0 6.62695 5.37305 12 12 12h56
c6.62695 0 12 -5.37305 12 -12v-51.2188l129.397 28.7539c7.49316 1.66602 14.6025 -4.03711 14.6025 -11.7139v-40.9756c0 -5.72656 -4.02734 -10.5205 -9.39746 -11.7139l-134.603 -29.9121v-30.4385l129.397 28.7539c7.49316 1.66602 14.6025 -4.03711 14.6025 -11.7139
v-40.9766c0 -5.72656 -4.02734 -10.5205 -9.39746 -11.7139l-134.603 -29.9121v-159.219c86.1787 0 168 48 168 148.754c0 6.33398 5.63965 11.2461 11.9746 11.2461h48.0195z" />
    <glyph glyph-name="space-shuttle" unicode="&#xf197;" horiz-adv-x="640" 
d="M592.604 239.756c29.6787 -13.9111 47.3965 -31.7637 47.3965 -47.7559s-17.7178 -33.8447 -47.3965 -47.7559c-32.8682 -15.4082 -76.8262 -24.2441 -120.604 -24.2441h-285.674c-4.95215 -6.55469 -10.585 -11.9775 -16.7197 -16h206.394
c-146.843 -30.2529 -156.597 -136 -279.997 -136h-0.00292969v128h-16v-128c-26.5098 0 -48 28.6543 -48 64v64c-23.1807 0 -32 10.0166 -32 24v40c0 13.9678 8.80273 24 32 24v16c-23.1807 0 -32 10.0166 -32 24v40c0 13.9678 8.80273 24 32 24v64
c0 35.3457 21.4902 64 48 64v-128h16v128h0.00292969c123.4 0 133.154 -105.747 279.997 -136h-206.393c6.13477 -4.02246 11.7676 -9.44531 16.7197 -16h285.673c43.7773 0 87.7354 -8.83594 120.604 -24.2441zM488 152c31.9424 0 31.9092 80 0 80
c-4.41504 0 -8 -3.58496 -8 -8v-64c0 -4.41504 3.58496 -8 8 -8z" />
    <glyph glyph-name="envelope-square" unicode="&#xf199;" horiz-adv-x="448" 
d="M400 416c26.5098 0 48 -21.4902 48 -48v-352c0 -26.5098 -21.4902 -48 -48 -48h-352c-26.5098 0 -48 21.4902 -48 48v352c0 26.5098 21.4902 48 48 48h352zM178.117 185.896c10.5156 -7.66895 31.3799 -26.1133 45.8828 -25.8955
c14.4912 -0.225586 35.3828 18.2393 45.8828 25.8936c90.6836 65.8145 89.7461 65.9697 114.117 84.9385v25.167c0 13.2549 -10.7451 24 -24 24h-272c-13.2549 0 -24 -10.7451 -24 -24v-25.167c24.3525 -18.9541 23.4287 -19.1201 114.117 -84.9365zM384 230.225
c-13.958 -10.793 -33.3252 -25.2334 -95.2832 -70.1982c-13.6826 -9.98438 -37.833 -32.1592 -64.7197 -32.0254c-26.7188 -0.134766 -50.5322 21.6689 -64.6943 32.0098c-61.9736 44.9785 -81.3447 59.4199 -95.3027 70.2139v-142.225c0 -13.2549 10.7451 -24 24 -24h272
c13.2549 0 24 10.7451 24 24v142.225z" />
    <glyph glyph-name="university" unicode="&#xf19c;" 
d="M496 320v-16c0 -4.41504 -3.58496 -8 -8 -8h-24v-12c0 -6.62695 -5.37305 -12 -12 -12h-392c-6.62695 0 -12 5.37305 -12 12v12h-24c-4.41504 0 -8 3.58496 -8 8v16c0 3.33398 2.03906 6.19141 4.94141 7.3916l232 88
c0.94043 0.389648 1.97168 0.605469 3.05371 0.605469c1.08105 0 2.12305 -0.21582 3.06348 -0.605469l232 -88c2.90234 -1.2002 4.94141 -4.05762 4.94141 -7.3916zM472 16c13.2549 0 24 -10.7451 24 -24v-16c0 -4.41504 -3.58496 -8 -8 -8h-464
c-4.41504 0 -8 3.58496 -8 8v16c0 13.2549 10.7451 24 24 24h432zM96 256h64v-192h64v192h64v-192h64v192h64v-192h36c6.62695 0 12 -5.37305 12 -12v-20h-416v20c0 6.62695 5.37305 12 12 12h36v192z" />
    <glyph glyph-name="graduation-cap" unicode="&#xf19d;" horiz-adv-x="640" 
d="M622.34 294.8c23.5498 -7.24023 23.5498 -38.3594 0 -45.5996l-278.95 -85.7002c-20.3496 -6.25 -37.7295 -2.78027 -46.79 0l-195.569 60.0898c-12.25 -8.41992 -19.9307 -21.7002 -20.6904 -36.7197c9.19043 -5.62012 15.6602 -15.2998 15.6602 -26.8701
c0 -10.7803 -5.67969 -19.8496 -13.8604 -25.6504l25.5303 -114.88c2.21973 -9.98926 -5.37988 -19.4697 -15.6201 -19.4697h-56.1094c-10.2305 0 -17.8301 9.48047 -15.6104 19.4697l25.5303 114.88c-8.18066 5.80078 -13.8604 14.8701 -13.8604 25.6504
c0 11.8896 6.78027 21.8496 16.4102 27.3701c0.649414 17.6201 7.20996 33.71 17.8799 46.8994l-48.6299 14.9404c-23.54 7.23047 -23.54 38.3604 0 45.5898l278.95 85.7002c15.1895 4.66992 31.5898 4.66992 46.79 0zM352.79 132.91l145.03 44.5596l14.1797 -113.47
c0 -35.3496 -85.96 -64 -192 -64s-192 28.6504 -192 64l14.1797 113.46l145.021 -44.5498c12.75 -3.91992 37.0596 -8.75977 65.5898 0z" />
    <glyph glyph-name="language" unicode="&#xf1ab;" horiz-adv-x="640" 
d="M152.1 211.8l10.9004 -37.5h-38.0996l11.0996 37.5c3.5 12.1006 7.7998 33.2002 7.7998 33.2002h0.5s4.2998 -21.0996 7.7998 -33.2002zM616 352c13.2998 0 24 -10.7002 24 -24v-272c0 -13.2998 -10.7002 -24 -24 -24h-280v320h280zM592 232v16
c0 6.59961 -5.40039 12 -12 12h-64v16c0 6.59961 -5.40039 12 -12 12h-16c-6.59961 0 -12 -5.40039 -12 -12v-16h-64c-6.59961 0 -12 -5.40039 -12 -12v-16c0 -6.59961 5.40039 -12 12 -12h114.3c-6.2002 -14.2998 -16.5 -29 -30 -43.2002
c-6.59961 6.90039 -12.3994 13.9004 -17.3994 20.9004c-3.60059 5.09961 -10.6006 6.59961 -16 3.39941l-7.30078 -4.2998l-6.5 -3.89941c-5.89941 -3.5 -7.69922 -11.4004 -3.69922 -17.1006c6.09961 -8.7002 13.0996 -17.2998 21 -25.7002
c-8.10059 -6.2998 -16.8008 -12.2998 -26.1006 -18c-5.59961 -3.39941 -7.39941 -10.5996 -4.2002 -16.1992l7.90039 -13.9004c3.40039 -5.90039 10.9004 -7.7998 16.7002 -4.2998c12.7002 7.7998 24.5 16.2002 35.3994 24.8994
c10.9004 -8.7998 22.8008 -17.0996 35.4004 -24.8994c5.7998 -3.5 13.2998 -1.60059 16.7002 4.2998l7.89941 13.9004c3.2002 5.69922 1.40039 12.7998 -4.09961 16.1992c-9 5.5 -17.7002 11.6006 -26.0996 18c21 22.5 35.7998 46.3008 42.6992 69.9004h11.4004
c6.59961 0 12 5.40039 12 12zM0 328c0 13.2998 10.7002 24 24 24h280v-320h-280c-13.2998 0 -24 10.7002 -24 24v272zM58.9004 111.9c-2.60059 -7.80078 3.19922 -15.9004 11.3994 -15.9004h22.9004c5.2998 0 10 3.59961 11.5 8.7002l9.09961 31.7998h60.2002
l9.40039 -31.9004c1.4668 -4.96582 6.06152 -8.5957 11.5 -8.59961h22.8994c8.2998 0 14 8.09961 11.4004 15.9004l-57.5 169.1c-1.7002 4.7998 -6.2998 8.09961 -11.4004 8.09961h-32.5c-5.2002 0 -9.7002 -3.19922 -11.3994 -8.09961z" />
    <glyph glyph-name="fax" unicode="&#xf1ac;" 
d="M480 288c17.6611 0 32 -14.3389 32 -32v-288c0 -17.6611 -14.3389 -32 -32 -32h-320c-17.6611 0 -32 14.3389 -32 32v448c0 17.6611 14.3389 32 32 32h242.75c8.82715 -0.000976562 16.8291 -3.58008 22.6201 -9.37012l45.25 -45.25
c5.7959 -5.79199 9.37891 -13.7979 9.37988 -22.6299v-82.75zM288 16v32c0 8.83105 -7.16895 16 -16 16h-32c-8.83105 0 -16 -7.16895 -16 -16v-32c0 -8.83105 7.16895 -16 16 -16h32c8.83105 0 16 7.16895 16 16zM288 144v32c0 8.83105 -7.16895 16 -16 16h-32
c-8.83105 0 -16 -7.16895 -16 -16v-32c0 -8.83105 7.16895 -16 16 -16h32c8.83105 0 16 7.16895 16 16zM416 16v32c0 8.83105 -7.16895 16 -16 16h-32c-8.83105 0 -16 -7.16895 -16 -16v-32c0 -8.83105 7.16895 -16 16 -16h32c8.83105 0 16 7.16895 16 16zM416 144v32
c0 8.83105 -7.16895 16 -16 16h-32c-8.83105 0 -16 -7.16895 -16 -16v-32c0 -8.83105 7.16895 -16 16 -16h32c8.83105 0 16 7.16895 16 16zM416 256v64h-48c-8.83105 0 -16 7.16895 -16 16v48h-160v-128h224zM64 320c17.6611 0 32 -14.3389 32 -32v-320
c0 -17.6611 -14.3389 -32 -32 -32h-32c-17.6611 0 -32 14.3389 -32 32v320c0 17.6611 14.3389 32 32 32h32z" />
    <glyph glyph-name="building" unicode="&#xf1ad;" horiz-adv-x="448" 
d="M436 -32c6.62695 0 12 -5.37305 12 -12v-20h-448v20c0 6.62695 5.37305 12 12 12h20v456c0 13.2549 10.7451 24 24 24h336c13.2549 0 24 -10.7451 24 -24v-456h20zM128 372v-40c0 -6.62695 5.37305 -12 12 -12h40c6.62695 0 12 5.37305 12 12v40
c0 6.62695 -5.37305 12 -12 12h-40c-6.62695 0 -12 -5.37305 -12 -12zM128 276v-40c0 -6.62695 5.37305 -12 12 -12h40c6.62695 0 12 5.37305 12 12v40c0 6.62695 -5.37305 12 -12 12h-40c-6.62695 0 -12 -5.37305 -12 -12zM180 128c6.62695 0 12 5.37305 12 12v40
c0 6.62695 -5.37305 12 -12 12h-40c-6.62695 0 -12 -5.37305 -12 -12v-40c0 -6.62695 5.37305 -12 12 -12h40zM256 -32v84c0 6.62695 -5.37305 12 -12 12h-40c-6.62695 0 -12 -5.37305 -12 -12v-84h64zM320 140v40c0 6.62695 -5.37305 12 -12 12h-40
c-6.62695 0 -12 -5.37305 -12 -12v-40c0 -6.62695 5.37305 -12 12 -12h40c6.62695 0 12 5.37305 12 12zM320 236v40c0 6.62695 -5.37305 12 -12 12h-40c-6.62695 0 -12 -5.37305 -12 -12v-40c0 -6.62695 5.37305 -12 12 -12h40c6.62695 0 12 5.37305 12 12zM320 332v40
c0 6.62695 -5.37305 12 -12 12h-40c-6.62695 0 -12 -5.37305 -12 -12v-40c0 -6.62695 5.37305 -12 12 -12h40c6.62695 0 12 5.37305 12 12z" />
    <glyph glyph-name="child" unicode="&#xf1ae;" horiz-adv-x="384" 
d="M120 376c0 39.7646 32.2354 72 72 72s72 -32.2354 72 -72c0 -39.7637 -32.2354 -72 -72 -72s-72 32.2363 -72 72zM374.627 374.627c12.4971 -12.4971 12.4971 -32.7568 0 -45.2539l-94.627 -94.627v-266.746c0 -17.6729 -14.3271 -32 -32 -32h-16
c-17.6729 0 -32 14.3271 -32 32v112h-16v-112c0 -17.6729 -14.3271 -32 -32 -32h-16c-17.6729 0 -32 14.3271 -32 32v266.746l-94.627 94.626c-12.4971 12.4971 -12.4971 32.7578 0 45.2549c12.4961 12.4971 32.7578 12.4971 45.2539 0l86.627 -86.627h101.491
l86.6279 86.627c12.4961 12.4971 32.7578 12.4971 45.2539 0z" />
    <glyph glyph-name="paw" unicode="&#xf1b0;" 
d="M256 224c79.4102 0 192 -122.76 192 -200.25c0 -34.9004 -26.8096 -55.75 -71.7402 -55.75c-48.4102 0 -80.75 25.0801 -120.26 25.0801c-39.1699 0 -71.4199 -25.0801 -120.26 -25.0801c-44.9307 0 -71.7402 20.8496 -71.7402 55.75c0 77.4902 112.59 200.25 192 200.25
zM108.72 236.61c10.4004 -34.6504 -4.76953 -68.3799 -33.8896 -75.3408c-29.1201 -6.95996 -61.1602 15.4805 -71.5605 50.1309c-10.3994 34.6494 4.77051 68.3799 33.8906 75.3398s61.1602 -15.4805 71.5596 -50.1299zM193.44 257.39
c-30.9307 -8.14941 -65.6201 20.4502 -77.46 63.8701c-11.8408 43.4199 3.63965 85.2207 34.5791 93.3604c30.9404 8.13965 65.6201 -20.4502 77.46 -63.8701c11.8408 -43.4199 -3.63965 -85.2197 -34.5791 -93.3604zM474.83 286.73
c29.1201 -6.96094 44.29 -40.6904 33.8896 -75.3408c-10.4102 -34.6494 -42.4395 -57.0898 -71.5596 -50.1299s-44.29 40.6904 -33.8906 75.3398c10.4102 34.6504 42.4404 57.0908 71.5605 50.1309zM318.56 257.39c-30.9395 8.14062 -46.4199 49.9404 -34.5791 93.3604
c11.8398 43.4199 46.5195 72.0195 77.46 63.8701c30.9395 -8.15039 46.4199 -49.9404 34.5791 -93.3604c-11.8398 -43.4199 -46.5195 -72.0098 -77.46 -63.8701z" />
    <glyph glyph-name="cube" unicode="&#xf1b2;" 
d="M239.1 441.7c10.9004 4.09961 22.9004 4.09961 33.7002 -0.100586l208 -78c18.7002 -7 31.1006 -24.8994 31.1006 -44.8994v-225.101c0 -18.0996 -10.2002 -34.7998 -26.5 -42.8994l-208 -104c-13.5 -6.7998 -29.4004 -6.7998 -42.9004 0l-208 104
c-16.2002 8.09961 -26.5 24.7002 -26.5 42.8994v225.101c0 20 12.4004 38 31.0996 45zM256 379.6l-192 -72v-1.09961l192 -78l192 78v1.09961zM288 23.5996l160 80v133.9l-160 -65v-148.9z" />
    <glyph glyph-name="cubes" unicode="&#xf1b3;" 
d="M488.6 197.8c14.1006 -5.2998 23.4004 -18.7002 23.4004 -33.7002v-110.1c0 -13.5996 -7.7002 -26.0996 -19.9004 -32.2002l-100 -50c-10.0996 -5.09961 -22.0996 -5.09961 -32.1992 0l-103.9 52l-103.9 -52c-10.0996 -5.09961 -22.0996 -5.09961 -32.1992 0l-100 50
c-12.2002 6.10059 -19.9004 18.6006 -19.9004 32.2002v110.1c0 15 9.2998 28.4004 23.2998 33.7002l96.6006 36.2002v108.5c0 15 9.2998 28.4004 23.3994 33.7002l100 37.5c8.2002 3.09961 17.2002 3.09961 25.2998 0l100 -37.5
c14.1006 -5.2998 23.4004 -18.7002 23.4004 -33.7002v-108.5zM358 233.2v73.2998l-85 -37v-68.2002zM154 343.9v-0.600586l102 -41.3994l102 41.3994v0.600586l-102 38.1992zM238 52.7998v75.4004l-85 -38.7998v-79.1006zM238 164.8v0.600586l-102 38.1992l-102 -38.1992
v-0.600586l102 -41.3994zM478 52.7998v75.4004l-85 -38.7998v-79.1006zM478 164.8v0.600586l-102 38.1992l-102 -38.1992v-0.600586l102 -41.3994z" />
    <glyph glyph-name="recycle" unicode="&#xf1b8;" 
d="M184.561 186.097c3.23242 -13.9971 -12.1221 -24.6348 -24.0674 -17.168l-40.7363 25.4551l-50.8672 -81.4014c-13.2832 -21.2559 2.07031 -48.9824 27.1221 -48.9824h51.9883c6.62695 0 12 -5.37305 12 -12v-40c0 -6.62695 -5.37305 -12 -12 -12h-51.8848
c-75.334 0 -121.302 83.0479 -81.4082 146.88l50.8223 81.3877l-40.7256 25.4482c-12.0811 7.54688 -8.96582 25.9609 4.87891 29.1582l110.237 25.4502c8.61133 1.9873 17.2012 -3.38086 19.1895 -11.9902zM283.122 369.012
c-12.2842 19.6543 -41.5449 20.3193 -54.2568 -0.0214844l-17.9609 -28.7432c-3.5127 -5.62012 -10.916 -7.3291 -16.5361 -3.81738l-33.9189 21.1953c-5.62012 3.51172 -7.33008 10.9131 -3.82031 16.5332l17.9629 28.7656c37.6074 60.1709 125.295 60.0332 162.816 0
l41.2627 -66.082l40.6875 25.4238c12.0771 7.55176 27.2646 -3.32324 24.0674 -17.168l-25.4502 -110.236c-1.97363 -8.55273 -10.5166 -13.9893 -19.1885 -11.9902l-110.237 25.4502c-13.8789 3.20508 -16.9297 21.6299 -4.87891 29.1572l40.7402 25.457zM497.288 146.88
c39.9268 -63.8828 -6.13379 -146.88 -81.4082 -146.88h-95.8799v-47.9893c0 -14.3105 -17.3105 -21.3184 -27.3135 -11.3145l-80 79.9883c-6.24805 6.24805 -6.24805 16.3799 0 22.627l80 79.9814c10.0713 10.0703 27.3135 2.90039 27.3135 -11.3125v-47.9814h95.9844
c25.0791 0 40.3926 27.749 27.1357 48.96l-27.5645 44.1123c-3.51172 5.62109 -1.80176 13.0234 3.81836 16.5361l33.8613 21.1582c5.62207 3.51367 13.0264 1.80273 16.5381 -3.82031z" />
    <glyph glyph-name="car" unicode="&#xf1b9;" 
d="M499.99 272c7.80957 0 13.54 -7.33984 11.6494 -14.9102l-6 -24c-1.33008 -5.33984 -6.12988 -9.08984 -11.6396 -9.08984h-20.0703c13.4199 -11.7305 22.0703 -28.7803 22.0703 -48v-48c0 -16.1299 -6.16016 -30.6797 -16 -41.9297v-54.0703
c0 -17.6699 -14.3301 -32 -32 -32h-32c-17.6699 0 -32 14.3301 -32 32v32h-256v-32c0 -17.6699 -14.3301 -32 -32 -32h-32c-17.6699 0 -32 14.3301 -32 32v54.0703c-9.83984 11.2598 -16 25.8096 -16 41.9297v48c0 19.2197 8.65039 36.2695 22.0801 48h-20.0703
c-5.50977 0 -10.3096 3.75 -11.6396 9.08984l-6 24c-1.90039 7.57031 3.83008 14.9102 11.6396 14.9102h59.8604l16.6396 41.5996c17.1104 42.7705 57.9307 70.4004 103.99 70.4004h127c46.0703 0 86.8799 -27.6299 103.98 -70.4004l16.6396 -41.5996h59.8701z
M147.93 289.83l-19.9297 -49.8301h256l-19.9297 49.8301c-7.29004 18.2197 -24.9404 30.1699 -44.5703 30.1699h-127c-19.6299 0 -37.2803 -11.9502 -44.5703 -30.1699zM96 128.2c19.2002 0 48 -3.19043 48 15.9502c0 19.1396 -28.7998 47.8496 -48 47.8496
s-32 -12.7598 -32 -31.9004c0 -19.1396 12.7998 -31.8994 32 -31.8994zM416 128.2c19.2002 0 32 12.7598 32 31.8994c0 19.1406 -12.7998 31.9004 -32 31.9004s-48 -28.71 -48 -47.8496c0 -19.1406 28.7998 -15.9502 48 -15.9502z" />
    <glyph glyph-name="taxi" unicode="&#xf1ba;" 
d="M462 206.36c28.5898 -6.40039 50 -31.8301 50 -62.3604v-48c0 -23.6201 -12.9502 -44.0303 -32 -55.1201v-40.8799c0 -17.6699 -14.3301 -32 -32 -32h-32c-17.6699 0 -32 14.3301 -32 32v32h-256v-32c0 -17.6699 -14.3301 -32 -32 -32h-32c-17.6699 0 -32 14.3301 -32 32
v40.8799c-19.0498 11.0801 -32 31.4902 -32 55.1201v48c0 30.5303 21.4102 55.96 50 62.3604l22 84.8398c9.59961 35.2002 41.5996 60.7998 76.7998 60.7998h11.2002v32c0 17.6699 14.3301 32 32 32h128c17.6699 0 32 -14.3301 32 -32v-32h11.2002
c35.2002 0 67.2002 -25.5996 76.7998 -60.7998zM96 96c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32s-32 -14.3301 -32 -32s14.3301 -32 32 -32zM116.55 208h278.9l-17.3906 67.1396c-2.01953 7.37988 -9.37988 12.8604 -14.8496 12.8604h-214.4
c-5.46973 0 -12.8291 -5.48047 -15.0596 -13.6396zM416 96c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32s-32 -14.3301 -32 -32s14.3301 -32 32 -32z" />
    <glyph glyph-name="tree" unicode="&#xf1bb;" horiz-adv-x="384" 
d="M378.31 69.5098c6 -6.79004 7.36035 -16.0898 3.56055 -24.2598c-3.75 -8.0498 -12 -13.25 -21.0098 -13.25h-136.86v-24.4502l30.29 -48.3994c5.32031 -10.6406 -2.41992 -23.1602 -14.3096 -23.1602h-95.9609c-11.8896 0 -19.6299 12.5195 -14.3096 23.1602
l30.29 48.3994v24.4502h-136.86c-9.00977 0 -17.2598 5.2002 -21.0098 13.25c-3.7998 8.16992 -2.43945 17.4697 3.56055 24.2598l79.8896 90.4902h-30.6299c-9.02051 0 -16.9805 5 -20.7803 13.0498c-3.79004 8.0498 -2.54004 17.2598 3.27051 24.04l78.1396 90.9102
h-28.8896c-9.10059 0 -17.3105 5.34961 -20.8701 13.6104c-3.51074 8.12988 -1.86035 17.5898 4.23926 24.0801l110.28 117.479c6.04004 6.4502 17.29 6.4502 23.3203 0l110.27 -117.479c6.10059 -6.49023 7.76074 -15.9502 4.24023 -24.0801
c-3.55957 -8.26074 -11.7598 -13.6104 -20.8604 -13.6104h-28.8896l78.1299 -90.8896c5.83008 -6.79004 7.08008 -16.0107 3.28027 -24.0508c-3.7998 -8.05957 -11.7705 -13.0596 -20.7803 -13.0596h-30.6299z" />
    <glyph glyph-name="database" unicode="&#xf1c0;" horiz-adv-x="448" 
d="M448 374.857v-45.7148c0 -40.2852 -100.333 -73.1426 -224 -73.1426s-224 32.8574 -224 73.1426v45.7148c0 40.2852 100.333 73.1426 224 73.1426s224 -32.8574 224 -73.1426zM448 272v-102.857c0 -40.2852 -100.333 -73.1426 -224 -73.1426s-224 32.8574 -224 73.1426
v102.857c48.125 -33.1426 136.208 -48.5723 224 -48.5723s175.874 15.4297 224 48.5723zM448 112v-102.857c0 -40.2852 -100.333 -73.1426 -224 -73.1426s-224 32.8574 -224 73.1426v102.857c48.125 -33.1426 136.208 -48.5723 224 -48.5723s175.874 15.4297 224 48.5723z
" />
    <glyph glyph-name="file-pdf" unicode="&#xf1c1;" horiz-adv-x="384" 
d="M181.9 191.9c-5 16 -4.90039 46.8994 -2 46.8994c8.39941 0 7.59961 -36.8994 2 -46.8994zM180.2 144.7c9.59961 -17.4004 21.7998 -31.2002 34.5 -40.7998c-23.9004 -4.7002 -44.6006 -14.9004 -62.9004 -21.9004c11.1006 19.4004 20.7002 42.5 28.4004 62.7002z
M86.0996 19.9004c5.80078 15.6992 28.2002 33.8994 34.9004 40.1992c-21.7002 -34.7998 -34.9004 -41 -34.9004 -40.1992zM248 288h136v-328c0 -13.2998 -10.7002 -24 -24 -24h-336c-13.2998 0 -24 10.7002 -24 24v464c0 13.2998 10.7002 24 24 24h200v-136
c0 -13.2002 10.7998 -24 24 -24zM240 116.2c-20 12.2002 -33.2998 29 -42.7002 53.7998c4.5 18.5 11.6006 46.5996 6.2002 64.2002c-4.7002 29.3994 -42.4004 26.5 -47.7998 6.7998c-5 -18.2998 -0.400391 -44.0996 8.09961 -77
c-11.5996 -27.5996 -28.7002 -64.5996 -40.7998 -85.7998c-0.0996094 0 -0.0996094 -0.100586 -0.200195 -0.100586c-27.0996 -13.8994 -73.5996 -44.5 -54.5 -68c5.60059 -6.89941 16 -10 21.5 -10c17.9004 0 35.7002 18 61.1006 61.8008
c25.7998 8.5 54.0996 19.0996 79 23.1992c21.6992 -11.7998 47.0996 -19.5 64 -19.5c29.1992 0 31.1992 32 19.6992 43.4004c-13.8994 13.5996 -54.2998 9.7002 -73.5996 7.2002zM377 343c4.5 -4.5 7 -10.5996 7 -16.9004v-6.09961h-128v128h6c6.40039 0 12.5 -2.5 17 -7z
M302.9 87.7002c0 0 -5.7002 -6.7998 -42.8008 9c40.3008 2.89941 46.9004 -6.2998 42.8008 -9z" />
    <glyph glyph-name="file-word" unicode="&#xf1c2;" horiz-adv-x="384" 
d="M224 312c0 -13.2002 10.7998 -24 24 -24h136v-328c0 -13.2998 -10.7002 -24 -24 -24h-336c-13.2998 0 -24 10.7002 -24 24v464c0 13.2998 10.7002 24 24 24h200v-136zM281.1 192c-5.59961 0 -10.5 -3.90039 -11.5 -9.5c-24.1992 -111.4 -21.7998 -118 -21.5996 -129.2
c-0.799805 5.40039 -5.59961 29 -29.5996 129.4c-1.30078 5.39941 -6.10059 9.2002 -11.7002 9.2002h-29.1006c-5.59961 0 -10.3994 -3.7002 -11.6992 -9.10059c-22.1006 -90 -27.8008 -112.5 -29.4004 -122.7c-0.900391 12.7002 -5.40039 44.2002 -21 122.2
c-1.09961 5.7002 -6.09961 9.7002 -11.7998 9.7002h-24.5c-7.7002 0 -13.4004 -7.09961 -11.7002 -14.5996l37.7998 -168c1.2002 -5.5 6.10059 -9.40039 11.7002 -9.40039h37.0996c5.5 0 10.3008 3.7998 11.6006 9.09961c23.2002 93.1006 24.5 96.2002 25.5996 110.5h0.5
c4.7998 -29.2998 -0.200195 -7 25.6006 -110.5c1.2998 -5.2998 6.09961 -9.09961 11.5996 -9.09961h38c5.59961 0 10.5 3.7998 11.7002 9.2998l38 168c1.7002 7.60059 -4 14.7002 -11.7002 14.7002h-23.9004zM384 326.1v-6.09961h-128v128h6.09961
c6.40039 0 12.5 -2.5 17 -7l97.9004 -98c4.5 -4.5 7 -10.5996 7 -16.9004z" />
    <glyph glyph-name="file-excel" unicode="&#xf1c3;" horiz-adv-x="384" 
d="M224 312c0 -13.2002 10.7998 -24 24 -24h136v-328c0 -13.2998 -10.7002 -24 -24 -24h-336c-13.2998 0 -24 10.7002 -24 24v464c0 13.2998 10.7002 24 24 24h200v-136zM284.1 205.5c5.10059 8 -0.599609 18.5 -10.0996 18.4004h-34.7998
c-4.40039 0 -8.5 -2.40039 -10.6006 -6.30078c-30.5 -56.7998 -36.5996 -68.5 -36.5996 -68.5c-16.5996 34.9004 -10.5 19.7002 -36.5996 68.5c-2.10059 3.90039 -6.2002 6.30078 -10.6006 6.30078h-34.7998c-9.5 0 -15.2998 -10.5 -10.0996 -18.5l60.2998 -93.5
l-60.2998 -93.5c-5.10059 -8 0.599609 -18.5 10.0996 -18.5h34.9004c4.39941 0 8.39941 2.39941 10.5 6.2998c26.5996 48.7998 30.1992 54 36.5996 68.7998c0 0 16.9004 -32.5 36.5 -68.7002c2.09961 -3.89941 6.2002 -6.2998 10.5996 -6.2998h34.9004
c9.5 0 15.2002 10.5 10.0996 18.5l-60.0996 93.5zM384 326.1v-6.09961h-128v128h6.09961c6.40039 0 12.5 -2.5 17 -7l97.9004 -98c4.5 -4.5 7 -10.5996 7 -16.9004z" />
    <glyph glyph-name="file-powerpoint" unicode="&#xf1c4;" horiz-adv-x="384" 
d="M193.7 176.8c8.7998 0 15.5 -2.7002 20.2998 -8.09961c9.59961 -10.9004 9.7998 -32.7002 -0.200195 -44.1006c-4.89941 -5.59961 -11.8994 -8.5 -21.0996 -8.5h-26.9004v60.7002h27.9004zM377 343c4.5 -4.5 7 -10.5996 7 -16.9004v-6.09961h-128v128h6
c6.40039 0 12.5 -2.5 17 -7zM224 312c0 -13.2002 10.7998 -24 24 -24h136v-328c0 -13.2998 -10.7002 -24 -24 -24h-336c-13.2998 0 -24 10.7002 -24 24v464c0 13.2998 10.7002 24 24 24h200v-136zM277 146.8c0 44.2002 -28.4004 77 -72.9004 77h-81
c-6.59961 0 -12 -5.39941 -12 -12v-199.8c0 -6.59961 5.40039 -12 12 -12h30.8008c6.59961 0 12 5.40039 12 12v57.2002c22.2998 0 111.1 -12.7002 111.1 77.5996z" />
    <glyph glyph-name="file-image" unicode="&#xf1c5;" horiz-adv-x="384" 
d="M384 326.059v-6.05859h-128v128h6.05859c6.62305 0 12.626 -2.68457 16.9707 -7.0293l97.9404 -97.9404c4.34473 -4.34473 7.03027 -10.3477 7.03027 -16.9717zM248 288h136v-328c0 -13.2549 -10.7451 -24 -24 -24h-336c-13.2549 0 -24 10.7451 -24 24v464
c0 13.2549 10.7451 24 24 24h200v-136c0 -13.2002 10.7998 -24 24 -24zM112.545 272c-26.5088 0 -48 -21.4902 -48 -48s21.4902 -48 48 -48s48 21.4902 48 48s-21.4902 48 -48 48zM320.545 32v112l-39.5137 39.5146c-4.6875 4.68652 -12.2852 4.68652 -16.9717 0
l-103.515 -103.515l-39.5146 39.5146c-4.68652 4.68652 -11.7988 5.1709 -16.4854 0.485352l-39.5146 -39.5146l-0.485352 -48.4854h256z" />
    <glyph glyph-name="file-archive" unicode="&#xf1c6;" horiz-adv-x="384" 
d="M377 343c4.5 -4.5 7 -10.5996 7 -16.9004v-6.09961h-128v128h6.09961c6.40039 0 12.5 -2.5 17 -7zM128.4 112c17.8994 0 32.5 -12.0996 32.5 -27s-14.5 -27 -32.4004 -27s-32.5 12 -32.5 27c0 14.9004 14.5 27 32.4004 27zM224 312c0 -13.2002 10.7998 -24 24 -24h136
v-328c0 -13.2998 -10.7002 -24 -24 -24h-336c-13.2998 0 -24 10.7002 -24 24v464c0 13.2998 10.7002 24 24 24h104.4v-32h32v32h63.5996v-136zM95.9004 416v-32h32v32h-32zM128.2 32c33 0 57.7998 30.2002 51.3994 62.5996l-17.2998 87.7002
c-1.09961 5.60059 -6.09961 9.7002 -11.7998 9.7002h-22.0996v32h32v32h-32v32h32v32h-32v32h32v32h-32v-32h-32v-32h32v-32h-32v-32h32v-32h-32v-32l-19.6006 -97.0996c-6.59961 -32.5 18.2002 -62.9004 51.4004 -62.9004z" />
    <glyph glyph-name="file-audio" unicode="&#xf1c7;" horiz-adv-x="384" 
d="M224 312c0 -13.2002 10.7998 -24 24 -24h136v-328c0 -13.2998 -10.7002 -24 -24 -24h-336c-13.2998 0 -24 10.7002 -24 24v464c0 13.2998 10.7002 24 24 24h200v-136zM160 44v136c0 10.7002 -12.9004 16.0996 -20.5 8.5l-35.5 -36.5h-28c-6.59961 0 -12 -5.40039 -12 -12
v-56c0 -6.59961 5.40039 -12 12 -12h28l35.5 -36.5c7.59961 -7.5 20.5 -2.2002 20.5 8.5zM193.2 91.5996c-22.5 -23.0996 12.5996 -55.7998 34.3994 -33.5c27.2002 28 27.2002 72.5 0 100.4c-22.1992 22.7002 -56.5 -10.7002 -34.3994 -33.5
c9.09961 -9.2998 9.09961 -24.0996 0 -33.4004zM279.2 208.7c-22.1006 22.7998 -56.5 -10.7002 -34.4004 -33.5c36.2998 -37.2998 36.2002 -96.6006 0 -133.8c-22.5996 -23.2002 12.6006 -55.9004 34.4004 -33.5c54.3994 56 54.3994 144.899 0 200.8zM384 326.1v-6.09961
h-128v128h6.09961c6.40039 0 12.5 -2.5 17 -7l97.9004 -98c4.5 -4.5 7 -10.5996 7 -16.9004z" />
    <glyph glyph-name="file-video" unicode="&#xf1c8;" horiz-adv-x="384" 
d="M384 326.059v-6.05859h-128v128h6.05859c6.36523 0 12.4707 -2.5293 16.9717 -7.0293l97.9404 -97.9404c4.34375 -4.34473 7.0293 -10.3486 7.0293 -16.9717zM224 312c0 -13.2002 10.7998 -24 24 -24h136v-328c0 -13.2549 -10.7451 -24 -24 -24h-336
c-13.2549 0 -24 10.7451 -24 24v464c0 13.2549 10.7451 24 24 24h200v-136zM320 167.984c0 21.4609 -25.96 31.9795 -40.9707 16.9697l-55.0293 -55.0127v38.0586c0 13.2549 -10.7451 24 -24 24h-112c-13.2549 0 -24 -10.7451 -24 -24v-112c0 -13.2549 10.7451 -24 24 -24
h112c13.2549 0 24 10.7451 24 24v38.0586l55.0293 -55.0088c15.0273 -15.0264 40.9707 -4.47363 40.9707 16.9717v111.963z" />
    <glyph glyph-name="file-code" unicode="&#xf1c9;" horiz-adv-x="384" 
d="M384 326.059v-6.05859h-128v128h6.05859c6.36523 0 12.4707 -2.5293 16.9717 -7.0293l97.9404 -97.9404c4.34375 -4.34473 7.0293 -10.3486 7.0293 -16.9717zM248 288h136v-328c0 -13.2549 -10.7451 -24 -24 -24h-336c-13.2549 0 -24 10.7451 -24 24v464
c0 13.2549 10.7451 24 24 24h200v-136c0 -13.2002 10.7998 -24 24 -24zM123.206 47.4951l19.5791 20.8838c0.905273 0.96582 1.46289 2.26562 1.46289 3.69238c0 1.61426 -0.709961 3.06445 -1.83496 4.05469l-40.7627 35.874l40.7627 35.874
c1.125 0.990234 1.83203 2.44043 1.83203 4.05566c0 1.42676 -0.554688 2.72559 -1.45996 3.69141l-19.5791 20.8848c-0.985352 1.05176 -2.3877 1.70703 -3.94141 1.70703c-1.42676 0 -2.72559 -0.555664 -3.69141 -1.46094l-64.8662 -60.8115
c-1.05078 -0.986328 -1.70801 -2.38672 -1.70801 -3.93945c0 -1.55371 0.657227 -2.9541 1.70801 -3.94043l64.8662 -60.8115c0.96582 -0.905273 2.26562 -1.46289 3.69336 -1.46289c1.55273 0 2.9541 0.657227 3.93945 1.70898zM174.501 -2.98438
c0.478516 -0.138672 0.982422 -0.212891 1.50488 -0.212891c2.45801 0 4.53418 1.64551 5.18555 3.89453l61.4395 211.626c0.138672 0.478516 0.213867 0.982422 0.213867 1.50488c0 2.45801 -1.64551 4.53418 -3.89355 5.18652l-27.4521 7.9707
c-0.477539 0.138672 -0.981445 0.212891 -1.50391 0.212891c-2.45801 0 -4.53516 -1.64551 -5.18848 -3.89453l-61.4395 -211.626c-0.138672 -0.477539 -0.212891 -0.981445 -0.212891 -1.50293c0 -2.45898 1.64551 -4.53516 3.89355 -5.18848zM335.293 108.061
c1.05176 0.986328 1.70898 2.38672 1.70898 3.94043c0 1.55273 -0.657227 2.95312 -1.70801 3.93945l-64.8662 60.8115c-0.96582 0.905273 -2.26562 1.46289 -3.69336 1.46289c-1.55273 0 -2.9541 -0.657227 -3.93945 -1.70898l-19.5801 -20.8848
c-0.905273 -0.96582 -1.46289 -2.26562 -1.46289 -3.69238c0 -1.61426 0.709961 -3.06445 1.83496 -4.05469l40.7627 -35.874l-40.7637 -35.873c-1.125 -0.990234 -1.83203 -2.44043 -1.83203 -4.05566c0 -1.42676 0.554688 -2.72559 1.45996 -3.69141l19.5801 -20.8848
c0.985352 -1.05176 2.3877 -1.70703 3.94141 -1.70703c1.42676 0 2.72559 0.555664 3.69141 1.46094z" />
    <glyph glyph-name="life-ring" unicode="&#xf1cd;" 
d="M256 440c136.967 0 248 -111.033 248 -248s-111.033 -248 -248 -248s-248 111.033 -248 248s111.033 248 248 248zM429.696 320.441c-12.8584 17.3291 -27.9258 32.3965 -45.2549 45.2549l-63.3994 -63.3994c18.585 -11.0029 34.2676 -26.6963 45.2549 -45.2549zM256 96
c53.0186 0 96 42.9814 96 96s-42.9814 96 -96 96s-96 -42.9814 -96 -96s42.9814 -96 96 -96zM127.559 365.696c-17.3291 -12.8584 -32.3965 -27.9258 -45.2549 -45.2549l63.3994 -63.3994c11.0029 18.585 26.6963 34.2676 45.2549 45.2549zM82.3037 63.5586
c12.8584 -17.3291 27.9258 -32.3965 45.2549 -45.2549l63.3994 63.3994c-18.585 11.0029 -34.2676 26.6963 -45.2549 45.2549zM384.441 18.3037c17.3291 12.8584 32.3965 27.9258 45.2549 45.2549l-63.3994 63.3994c-11.0029 -18.585 -26.6963 -34.2676 -45.2549 -45.2549z
" />
    <glyph glyph-name="circle-notch" unicode="&#xf1ce;" 
d="M288 408.944c0 15.5996 14.6777 27.167 29.7891 23.292c107.071 -27.457 186.211 -124.604 186.211 -240.236c0 -136.788 -110.745 -247.711 -247.466 -247.999c-137.054 -0.289062 -247.812 109.615 -248.531 246.667c-0.609375 116.126 78.5996 213.85 185.951 241.502
c15.2119 3.91895 30.0459 -7.52539 30.0459 -23.2344v-16.6475c0 -10.8047 -7.28125 -20.1621 -17.6885 -23.0693c-77.5254 -21.6543 -134.312 -92.749 -134.312 -177.219c0 -101.705 82.3105 -184 184 -184c101.705 0 184 82.3105 184 184
c0 84.4824 -56.7959 155.566 -134.314 177.219c-10.4043 2.90723 -17.6855 12.2627 -17.6855 23.0664v16.6592z" />
    <glyph glyph-name="paper-plane" unicode="&#xf1d8;" 
d="M476 444.8c17.2998 10 39 -4.59961 35.5996 -24.7998l-72 -432c-2.59961 -15.2998 -18.7998 -24.2002 -33 -18.2002l-124.6 52.2002l-63.5 -77.2998c-14 -17.1006 -42.5 -7.7998 -42.5 15.7998v80.5l240.9 293.5c4.69922 5.7002 -3.10059 13.2002 -8.60059 8.2998
l-287.3 -253.2l-106.3 44.6006c-18 7.59961 -20.2998 32.7998 -2.2002 43.2002z" />
    <glyph glyph-name="history" unicode="&#xf1da;" 
d="M504 192.469c0.25293 -136.64 -111.18 -248.372 -247.82 -248.468c-59.0146 -0.0419922 -113.223 20.5303 -155.821 54.9111c-11.0771 8.93945 -11.9053 25.541 -1.83984 35.6064l11.2676 11.2676c8.6084 8.6084 22.3525 9.55078 31.8906 1.9834
c31.3848 -24.9043 71.1045 -39.7695 114.323 -39.7695c101.705 0 184 82.3105 184 184c0 101.705 -82.3105 184 -184 184c-48.8145 0 -93.1494 -18.9688 -126.068 -49.9316l50.7539 -50.7539c10.0801 -10.0801 2.94141 -27.3145 -11.3125 -27.3145h-145.373
c-8.83691 0 -16 7.16309 -16 16v145.373c0 14.2539 17.2344 21.3926 27.3145 11.3135l49.3711 -49.3711c44.5234 42.5488 104.866 68.6846 171.314 68.6846c136.81 0 247.747 -110.78 248 -247.531zM323.088 113.685c-8.1377 -10.4629 -23.2158 -12.3467 -33.6787 -4.20996
l-65.4092 50.874v135.651c0 13.2549 10.7451 24 24 24h16c13.2549 0 24 -10.7451 24 -24v-104.349l40.7012 -31.6572c10.4629 -8.13672 12.3477 -23.2158 4.20996 -33.6787z" />
    <glyph glyph-name="heading" unicode="&#xf1dc;" 
d="M448 352v-320h32c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-160c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h32v128h-192v-128h32c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-160
c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h32v320h-32c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h160c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-32v-128h192v128h-32c-8.83105 0 -16 7.16895 -16 16v32
c0 8.83105 7.16895 16 16 16h160c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-32z" />
    <glyph glyph-name="paragraph" unicode="&#xf1dd;" horiz-adv-x="448" 
d="M448 400v-32c0 -8.83105 -7.16895 -16 -16 -16h-48v-368c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v368h-32v-368c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v112h-32c-88.3066 0 -160 71.6934 -160 160
s71.6934 160 160 160h240c8.83105 0 16 -7.16895 16 -16z" />
    <glyph glyph-name="sliders-h" unicode="&#xf1de;" 
d="M496 64c8.7998 0 16 -7.2002 16 -16v-32c0 -8.7998 -7.2002 -16 -16 -16h-336v-16c0 -8.7998 -7.2002 -16 -16 -16h-32c-8.7998 0 -16 7.2002 -16 16v16h-80c-8.7998 0 -16 7.2002 -16 16v32c0 8.7998 7.2002 16 16 16h80v16c0 8.7998 7.2002 16 16 16h32
c8.7998 0 16 -7.2002 16 -16v-16h336zM496 224c8.7998 0 16 -7.2002 16 -16v-32c0 -8.7998 -7.2002 -16 -16 -16h-80v-16c0 -8.7998 -7.2002 -16 -16 -16h-32c-8.7998 0 -16 7.2002 -16 16v16h-336c-8.7998 0 -16 7.2002 -16 16v32c0 8.7998 7.2002 16 16 16h336v16
c0 8.7998 7.2002 16 16 16h32c8.7998 0 16 -7.2002 16 -16v-16h80zM496 384c8.7998 0 16 -7.2002 16 -16v-32c0 -8.7998 -7.2002 -16 -16 -16h-208v-16c0 -8.7998 -7.2002 -16 -16 -16h-32c-8.7998 0 -16 7.2002 -16 16v16h-208c-8.7998 0 -16 7.2002 -16 16v32
c0 8.7998 7.2002 16 16 16h208v16c0 8.7998 7.2002 16 16 16h32c8.7998 0 16 -7.2002 16 -16v-16h208z" />
    <glyph glyph-name="share-alt" unicode="&#xf1e0;" horiz-adv-x="448" 
d="M352 128c53.0186 0 96 -42.9814 96 -96s-42.9814 -96 -96 -96s-96 42.9814 -96 96c0 0.00976562 0.00292969 -0.0429688 0.00292969 -0.0332031c0 7.16699 0.785156 14.1523 2.27344 20.874l-102.486 64.0537c-16.4033 -13.0752 -37.1816 -20.8945 -59.79 -20.8945
c-53.0186 0 -96 42.9814 -96 96s42.9814 96 96 96c22.6084 0 43.3867 -7.81934 59.79 -20.8945l102.486 64.0537c-1.48633 6.71094 -2.27637 13.6826 -2.27637 20.8408c0 53.0186 42.9814 96 96 96s96 -42.9814 96 -96s-42.9814 -96 -96 -96
c-22.6084 0 -43.3867 7.81934 -59.79 20.8965l-102.486 -64.0547c1.48828 -6.73145 2.27344 -13.6025 2.27344 -20.7793s-0.785156 -14.1719 -2.27344 -20.9033l102.486 -64.0537c16.4033 13.0752 37.1816 20.8945 59.79 20.8945z" />
    <glyph glyph-name="share-alt-square" unicode="&#xf1e1;" horiz-adv-x="448" 
d="M448 368v-352c0 -26.5098 -21.4902 -48 -48 -48h-352c-26.5098 0 -48 21.4902 -48 48v352c0 26.5098 21.4902 48 48 48h352c26.5098 0 48 -21.4902 48 -48zM304 152c-14.5615 0 -27.8232 -5.56055 -37.7832 -14.6709l-67.958 40.7744
c1.13379 4.45312 1.73633 9.11719 1.73633 13.9199c0 4.80371 -0.602539 9.4209 -1.73633 13.874l67.958 40.7744c9.95996 -9.11133 23.2217 -14.6719 37.7832 -14.6719c30.9277 0 56 25.0723 56 56s-25.0723 56 -56 56s-56 -25.0723 -56 -56
c0 -4.79688 0.605469 -9.45312 1.74023 -13.8975l-67.958 -40.7744c-9.95898 9.11133 -23.2207 14.6719 -37.7822 14.6719c-30.9277 0 -56 -25.0723 -56 -56s25.0723 -56 56 -56c14.5615 0 27.8232 5.56055 37.7832 14.6709l67.958 -40.7744
c-1.13281 -4.44141 -1.73535 -9.09375 -1.73535 -13.8857c0 -0.0117188 -0.00488281 0 -0.00488281 -0.0117188c0 -30.9277 25.0723 -56 56 -56s56 25.0723 56 56c-0.000976562 30.9287 -25.0732 56.001 -56.001 56.001z" />
    <glyph glyph-name="bomb" unicode="&#xf1e2;" 
d="M440.5 359.5l-52 -52l26.5 -26.5c9.40039 -9.40039 9.40039 -24.5996 0 -33.9004l-17.4004 -17.3994c11.8008 -26.1006 18.4004 -55.1006 18.4004 -85.6006c0 -114.899 -93.0996 -208 -208 -208s-208 93 -208 207.9s93.0996 208 208 208
c30.5 0 59.5 -6.59961 85.5996 -18.4004l17.4004 17.4004c9.40039 9.40039 24.5996 9.40039 33.9004 0l26.5 -26.5l52 52zM500 388c6.59961 0 12 -5.40039 12 -12s-5.40039 -12 -12 -12h-24c-6.59961 0 -12 5.40039 -12 12s5.40039 12 12 12h24zM440 448
c6.59961 0 12 -5.40039 12 -12v-24c0 -6.59961 -5.40039 -12 -12 -12s-12 5.40039 -12 12v24c0 6.59961 5.40039 12 12 12zM473.9 393c-4.60059 -4.7002 -12.2002 -4.7002 -17 0c-4.7002 4.7002 -4.7002 12.2998 0 17l17 17c4.69922 4.7002 12.2998 4.7002 17 0
c4.69922 -4.7002 4.69922 -12.2998 0 -17zM406.1 393l-17 17c-4.69922 4.7002 -4.69922 12.2998 0 17c4.7002 4.7002 12.3008 4.7002 17 0l17 -17c4.7002 -4.7002 4.7002 -12.2998 0 -17c-4.69922 -4.7002 -12.2998 -4.7002 -17 0zM473.9 359l17 -17
c4.69922 -4.7002 4.69922 -12.2998 0 -17c-4.7002 -4.7002 -12.3008 -4.7002 -17 0l-17 17c-4.7002 4.7002 -4.7002 12.2998 0 17c4.69922 4.7002 12.2998 4.7002 17 0zM112 176c0 35.2998 28.7002 64 64 64c8.7998 0 16 7.2002 16 16s-7.2002 16 -16 16
c-52.9004 0 -96 -43.0996 -96 -96c0 -8.7998 7.2002 -16 16 -16s16 7.2002 16 16z" />
    <glyph glyph-name="futbol" unicode="&#xf1e3;" 
d="M504 192c0 -136.967 -111.033 -248 -248 -248s-248 111.033 -248 248s111.033 248 248 248s248 -111.033 248 -248zM456 192l-0.00292969 0.282227l-26.0645 -22.7412l-62.6787 58.5l16.4541 84.3555l34.3027 -3.07227
c-24.8887 34.2158 -60.0039 60.0889 -100.709 73.1406l13.6514 -31.9385l-74.9531 -41.5264l-74.9531 41.5254l13.6514 31.9385c-40.6309 -13.0283 -75.7803 -38.8701 -100.709 -73.1406l34.5645 3.07324l16.1924 -84.3555l-62.6777 -58.5l-26.0645 22.7412
l-0.00292969 -0.282227c0 -43.0146 13.4971 -83.9521 38.4717 -117.991l7.7041 33.8975l85.1387 -10.4473l36.3008 -77.8262l-29.9023 -17.7861c40.2021 -13.1221 84.29 -13.1475 124.572 0l-29.9023 17.7861l36.3008 77.8262l85.1387 10.4473l7.7041 -33.8975
c24.9756 34.0391 38.4727 74.9766 38.4727 117.991zM207.898 122.429l-29.8945 91.3125l77.9961 56.5264l77.9961 -56.5264l-29.6221 -91.3125h-96.4756z" />
    <glyph glyph-name="tty" unicode="&#xf1e4;" 
d="M5.37012 344.178c138.532 138.532 362.936 138.326 501.262 0c6.07812 -6.07812 7.07422 -15.4961 2.58301 -22.6807l-43.2139 -69.1377c-3.24023 -5.18457 -8.99902 -8.63672 -15.5576 -8.63672c-2.40137 0 -4.69531 0.490234 -6.79883 1.33105l-86.4219 34.5693
c-6.75684 2.70312 -11.5352 9.31348 -11.5352 17.0312c0 0.621094 0.0410156 1.20898 0.101562 1.81445l5.95215 59.5312c-62.1455 22.4541 -130.636 21.9863 -191.483 0l5.95312 -59.5322c0.0605469 -0.606445 0.0917969 -1.22168 0.0917969 -1.84375
c0 -7.7168 -4.76855 -14.2998 -11.5254 -17.002l-86.4238 -34.5684c-2.10254 -0.84082 -4.39648 -1.30371 -6.79785 -1.30371c-6.55859 0 -12.3174 3.4248 -15.5576 8.60938l-43.2109 69.1387c-1.75879 2.81348 -2.77539 6.1377 -2.77539 9.69727
c0 5.05859 2.04004 9.66406 5.3584 12.9824zM96 140c0 -6.62695 -5.37305 -12 -12 -12h-40c-6.62695 0 -12 5.37305 -12 12v40c0 6.62695 5.37305 12 12 12h40c6.62695 0 12 -5.37305 12 -12v-40zM192 140c0 -6.62695 -5.37305 -12 -12 -12h-40
c-6.62695 0 -12 5.37305 -12 12v40c0 6.62695 5.37305 12 12 12h40c6.62695 0 12 -5.37305 12 -12v-40zM288 140c0 -6.62695 -5.37305 -12 -12 -12h-40c-6.62695 0 -12 5.37305 -12 12v40c0 6.62695 5.37305 12 12 12h40c6.62695 0 12 -5.37305 12 -12v-40zM384 140
c0 -6.62695 -5.37305 -12 -12 -12h-40c-6.62695 0 -12 5.37305 -12 12v40c0 6.62695 5.37305 12 12 12h40c6.62695 0 12 -5.37305 12 -12v-40zM480 140c0 -6.62695 -5.37305 -12 -12 -12h-40c-6.62695 0 -12 5.37305 -12 12v40c0 6.62695 5.37305 12 12 12h40
c6.62695 0 12 -5.37305 12 -12v-40zM144 44c0 -6.62695 -5.37305 -12 -12 -12h-40c-6.62695 0 -12 5.37305 -12 12v40c0 6.62695 5.37305 12 12 12h40c6.62695 0 12 -5.37305 12 -12v-40zM240 44c0 -6.62695 -5.37305 -12 -12 -12h-40c-6.62695 0 -12 5.37305 -12 12v40
c0 6.62695 5.37305 12 12 12h40c6.62695 0 12 -5.37305 12 -12v-40zM336 44c0 -6.62695 -5.37305 -12 -12 -12h-40c-6.62695 0 -12 5.37305 -12 12v40c0 6.62695 5.37305 12 12 12h40c6.62695 0 12 -5.37305 12 -12v-40zM432 44c0 -6.62695 -5.37305 -12 -12 -12h-40
c-6.62695 0 -12 5.37305 -12 12v40c0 6.62695 5.37305 12 12 12h40c6.62695 0 12 -5.37305 12 -12v-40zM96 -52c0 -6.62695 -5.37305 -12 -12 -12h-40c-6.62695 0 -12 5.37305 -12 12v40c0 6.62695 5.37305 12 12 12h40c6.62695 0 12 -5.37305 12 -12v-40zM384 -52
c0 -6.62695 -5.37305 -12 -12 -12h-232c-6.62695 0 -12 5.37305 -12 12v40c0 6.62695 5.37305 12 12 12h232c6.62695 0 12 -5.37305 12 -12v-40zM480 -52c0 -6.62695 -5.37305 -12 -12 -12h-40c-6.62695 0 -12 5.37305 -12 12v40c0 6.62695 5.37305 12 12 12h40
c6.62695 0 12 -5.37305 12 -12v-40z" />
    <glyph glyph-name="binoculars" unicode="&#xf1e5;" 
d="M416 400v-48h-96v48c0 8.83984 7.16016 16 16 16h64c8.83984 0 16 -7.16016 16 -16zM63.9102 288.01c0.479492 17.6201 14.2998 31.9902 31.9297 31.9902h96.1602v-160h-32v-160c0 -17.6699 -14.3301 -32 -32 -32h-96c-17.6699 0 -32 14.3301 -32 32v44
c3.45996 129.78 61.4004 150.16 63.9102 244.01zM448.09 288.01c2.50977 -93.8496 60.4502 -114.229 63.9102 -244.01v-44c0 -17.6699 -14.3301 -32 -32 -32h-96c-17.6699 0 -32 14.3301 -32 32v160h-32v160h96.1602c17.6299 0 31.4502 -14.3701 31.9297 -31.9902zM176 416
c8.83984 0 16 -7.16016 16 -16v-48h-96v48c0 8.83984 7.16016 16 16 16h64zM224 160v160h64v-160h-64z" />
    <glyph glyph-name="plug" unicode="&#xf1e6;" horiz-adv-x="384" 
d="M320 416v-96h-64v96c0 17.6611 14.3389 32 32 32s32 -14.3389 32 -32zM368 288c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-16v-32c-0.0117188 -77.3096 -55.0684 -141.886 -128 -156.8v-99.2002h-64v99.2002
c-72.9316 14.9141 -127.988 79.4902 -128 156.8v32h-16c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h352zM128 416v-96h-64v96c0 17.6611 14.3389 32 32 32s32 -14.3389 32 -32z" />
    <glyph glyph-name="newspaper" unicode="&#xf1ea;" horiz-adv-x="576" 
d="M552 384c13.2549 0 24 -10.7451 24 -24v-312c0 -26.5098 -21.4902 -48 -48 -48h-472c-30.9277 0 -56 25.0723 -56 56v272c0 13.2549 10.7451 24 24 24h40v8c0 13.2549 10.7451 24 24 24h464zM56 48c4.41504 0 8 3.58496 8 8v248h-16v-248c0 -4.41504 3.58496 -8 8 -8z
M292 64c6.62695 0 12 5.37305 12 12v8c0 6.62695 -5.37305 12 -12 12h-152c-6.62695 0 -12 -5.37305 -12 -12v-8c0 -6.62695 5.37305 -12 12 -12h152zM500 64c6.62695 0 12 5.37305 12 12v8c0 6.62695 -5.37305 12 -12 12h-152c-6.62695 0 -12 -5.37305 -12 -12v-8
c0 -6.62695 5.37305 -12 12 -12h152zM292 160c6.62695 0 12 5.37305 12 12v8c0 6.62695 -5.37305 12 -12 12h-152c-6.62695 0 -12 -5.37305 -12 -12v-8c0 -6.62695 5.37305 -12 12 -12h152zM500 160c6.62695 0 12 5.37305 12 12v8c0 6.62695 -5.37305 12 -12 12h-152
c-6.62695 0 -12 -5.37305 -12 -12v-8c0 -6.62695 5.37305 -12 12 -12h152zM500 256c6.62695 0 12 5.37305 12 12v40c0 6.62695 -5.37305 12 -12 12h-360c-6.62695 0 -12 -5.37305 -12 -12v-40c0 -6.62695 5.37305 -12 12 -12h360z" />
    <glyph glyph-name="wifi" unicode="&#xf1eb;" horiz-adv-x="640" 
d="M634.91 293.12c6.66016 -6.16016 6.79004 -16.5898 0.359375 -22.9805l-34.2393 -33.9697c-6.14062 -6.08984 -16.0205 -6.22949 -22.4004 -0.379883c-145.95 133.71 -371.33 133.68 -517.25 0c-6.37988 -5.84961 -16.2598 -5.71973 -22.3994 0.379883l-34.2402 33.9697
c-6.44043 6.39062 -6.31055 16.8203 0.349609 22.9805c177.101 163.81 452.65 163.87 629.82 0zM320 96c35.3496 0 64 -28.6504 64 -64s-28.6504 -64 -64 -64s-64 28.6504 -64 64s28.6504 64 64 64zM522.67 179.59c6.88965 -6.08984 7.12012 -16.6895 0.560547 -23.1494
l-34.4404 -33.9902c-6 -5.93066 -15.6602 -6.32031 -22.0498 -0.799805c-83.75 72.4092 -209.54 72.5693 -293.49 0c-6.38965 -5.52051 -16.0498 -5.12012 -22.0498 0.799805l-34.4404 33.9902c-6.5498 6.45996 -6.33008 17.0498 0.570312 23.1494
c115.13 101.82 290.08 101.93 405.34 0z" />
    <glyph glyph-name="calculator" unicode="&#xf1ec;" horiz-adv-x="448" 
d="M400 448c25.5996 0 48 -22.4004 48 -48v-416c0 -25.5996 -22.4004 -48 -48 -48h-352c-25.5996 0 -48 22.4004 -48 48v416c0 25.5996 22.4004 48 48 48h352zM128 12.7998v38.4004c0 6.39941 -6.40039 12.7998 -12.7998 12.7998h-38.4004
c-6.39941 0 -12.7998 -6.40039 -12.7998 -12.7998v-38.4004c0 -6.39941 6.40039 -12.7998 12.7998 -12.7998h38.4004c6.39941 0 12.7998 6.40039 12.7998 12.7998zM128 140.8v38.4004c0 6.39941 -6.40039 12.7998 -12.7998 12.7998h-38.4004
c-6.39941 0 -12.7998 -6.40039 -12.7998 -12.7998v-38.4004c0 -6.39941 6.40039 -12.7998 12.7998 -12.7998h38.4004c6.39941 0 12.7998 6.40039 12.7998 12.7998zM256 12.7998v38.4004c0 6.39941 -6.40039 12.7998 -12.7998 12.7998h-38.4004
c-6.39941 0 -12.7998 -6.40039 -12.7998 -12.7998v-38.4004c0 -6.39941 6.40039 -12.7998 12.7998 -12.7998h38.4004c6.39941 0 12.7998 6.40039 12.7998 12.7998zM256 140.8v38.4004c0 6.39941 -6.40039 12.7998 -12.7998 12.7998h-38.4004
c-6.39941 0 -12.7998 -6.40039 -12.7998 -12.7998v-38.4004c0 -6.39941 6.40039 -12.7998 12.7998 -12.7998h38.4004c6.39941 0 12.7998 6.40039 12.7998 12.7998zM384 12.7998v166.4c0 6.39941 -6.40039 12.7998 -12.7998 12.7998h-38.4004
c-6.39941 0 -12.7998 -6.40039 -12.7998 -12.7998v-166.4c0 -6.39941 6.40039 -12.7998 12.7998 -12.7998h38.4004c6.39941 0 12.7998 6.40039 12.7998 12.7998zM384 268.8v102.4c0 6.39941 -6.40039 12.7998 -12.7998 12.7998h-294.4
c-6.39941 0 -12.7998 -6.40039 -12.7998 -12.7998v-102.4c0 -6.39941 6.40039 -12.7998 12.7998 -12.7998h294.4c6.39941 0 12.7998 6.40039 12.7998 12.7998z" />
    <glyph glyph-name="bell-slash" unicode="&#xf1f6;" horiz-adv-x="640" 
d="M633.82 -10.0996c6.97949 -5.43066 8.22949 -15.4805 2.80957 -22.4502l-19.6396 -25.2705c-5.43066 -6.97949 -15.4805 -8.23926 -22.46 -2.80957l-588.351 454.729c-6.97949 5.43066 -8.22949 15.4805 -2.80957 22.4502l19.6396 25.2705
c5.41992 6.97949 15.4805 8.22949 22.46 2.80957l144.96 -112.04c22.9307 31.5 57.2607 54.1904 97.5898 62.5703v20.8398c0 17.6699 14.3203 32 31.9805 32s31.9805 -14.3301 31.9805 -32v-20.8301c73.46 -15.2598 127.939 -77.46 127.939 -155.16
c0 -102.3 36.1504 -133.529 55.4697 -154.29c6 -6.43945 8.66016 -14.1602 8.61035 -21.71c0 -1.39941 -0.610352 -2.67969 -0.799805 -4.05957zM157.23 196.46l212.789 -164.46h-241.92c-19.1191 0 -31.9893 15.5996 -32.0996 32
c-0.0498047 7.5498 2.61035 15.2598 8.61035 21.71c16.21 17.4199 44.0098 42.79 52.6201 110.75zM320 -64c-35.3203 0 -63.9697 28.6504 -63.9697 64h127.939c0 -35.3496 -28.6494 -64 -63.9697 -64z" />
    <glyph glyph-name="trash" unicode="&#xf1f8;" horiz-adv-x="448" 
d="M432 416c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-416c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h120l9.40039 18.7002c3.85547 7.88574 11.9434 13.2998 21.3066 13.2998h0.0927734h114.3
c0.00585938 0 -0.00195312 0.0234375 0.00390625 0.0234375c9.41113 0 17.5645 -5.42871 21.4961 -13.3232l9.40039 -18.7002h120zM53.2002 -19l-21.2002 339h384l-21.2002 -339c-1.57031 -25.0762 -22.4316 -44.9971 -47.8994 -45h-245.801
c-25.4678 0.00292969 -46.3291 19.9238 -47.8994 45z" />
    <glyph glyph-name="copyright" unicode="&#xf1f9;" 
d="M256 440c136.967 0 248 -111.033 248 -248s-111.033 -248 -248 -248s-248 111.033 -248 248s111.033 248 248 248zM373.134 93.2471c1.78516 2.09473 2.86035 4.82812 2.86035 7.79395c0 2.64355 -0.856445 5.08789 -2.30762 7.07227l-24.5469 33.5713
c-4.44824 6.08691 -13.376 6.61816 -18.5078 1.05371c-0.263672 -0.287109 -26.8467 -28.625 -65.5439 -28.625c-48.7627 0 -74.2773 40.0898 -74.2773 79.6914c0 42.5068 27.8008 76.082 73.916 76.082c35.3516 0 61.6475 -23.666 61.8809 -23.8799
c5.45996 -5.05566 14.1846 -3.97168 18.2334 2.29492l22.3799 34.6553c1.20996 1.87305 1.91895 4.12109 1.91895 6.51465c0 3.125 -1.19727 5.97168 -3.15625 8.1084c-1.45703 1.58887 -36.4658 38.9043 -103.423 38.9043c-81.7578 0 -143.762 -62.0986 -143.762 -143.401
c0 -82.3066 59.792 -145.567 144.484 -145.567c70.0752 0 108.259 43.8643 109.851 45.7314z" />
    <glyph glyph-name="at" unicode="&#xf1fa;" 
d="M256 440c138.023 0 248 -87.6533 248 -224c0 -75.7979 -41.3906 -147.41 -150.299 -147.41c-30.0977 0 -61.1885 -0.000976562 -70.71 34.1035c-17.6221 -22.6963 -48.0068 -38.333 -74.9912 -38.333c-59.2148 0 -96 40.5664 -96 105.87
c0 89.2256 63.251 151.46 137.831 151.46c19.5225 0 45.2744 -3.87402 59.9707 -21.7754l0.00976562 0.0917969c0.765625 6.7373 6.49219 11.9932 13.4326 11.9932h44.9805c15.083 0 26.4287 -13.75 23.5625 -28.5586l-23.4336 -121.11
c-3.43359 -17.167 -3.87207 -29.5703 13.4766 -30.0244c37.0771 3.95117 58.1699 44.9072 58.1699 83.6934c0 102.381 -83.8613 160 -184 160c-101.458 0 -184 -82.542 -184 -184s82.542 -184 184 -184c35.3145 0 69.9199 10.2432 99.4102 29.1572
c10.1934 6.53809 23.7021 4.24219 31.373 -5.12891l10.1768 -12.4336c9.07324 -11.084 6.45312 -27.5566 -5.55176 -35.3721c-40.0664 -26.083 -87.2539 -40.2227 -135.408 -40.2227c-137.081 0 -248 110.941 -248 248c0 137.081 110.941 248 248 248zM234.32 135.57
c24.2861 0 58.1611 27.6689 58.1611 72.7295c0 25.5293 -13.3096 40.7705 -35.6016 40.7705c-27.8506 0 -58.6299 -27.7363 -58.6299 -72.7295c0 -25.1475 13.8213 -40.7705 36.0703 -40.7705z" />
    <glyph glyph-name="eye-dropper" unicode="&#xf1fb;" 
d="M50.75 114.75l126.63 126.61l128 -128l-126.64 -126.62c-12 -12 -28.2803 -18.7402 -45.25 -18.7402h-45.4902l-56 -32l-32 32l32 56v45.4902c0 16.9795 6.75 33.2598 18.75 45.2598zM483.88 419.88c37.5 -37.4902 37.5 -98.2695 -0.00976562 -135.75l-77.0898 -77.0898
l13.0996 -13.0996c9.37012 -9.37012 9.37012 -24.5703 0 -33.9404l-40.9697 -40.96c-9.29004 -9.30957 -24.5 -9.44043 -33.9404 0l-161.939 161.94c-9.37012 9.36914 -9.37012 24.5693 0 33.9395l40.9697 40.9697c9.29004 9.31055 24.5 9.44043 33.9404 0l13.0996 -13.0996
l77.0898 77.0898c37.4697 37.5 98.2803 37.5 135.75 0z" />
    <glyph glyph-name="paint-brush" unicode="&#xf1fc;" 
d="M167.02 138.66l88.0107 -73.3398c0.319336 -3.05078 0.969727 -6.02051 0.969727 -9.12988c0 -76.4209 -52.1396 -120.19 -128 -120.19c-90.0703 0 -128 72.3799 -128.01 154.73c9.79004 -6.68066 44.1396 -34.3506 55.25 -34.3506
c6.58984 0 12.2402 3.77051 14.5898 9.98047c20.6602 54.4395 57.0703 69.7197 97.1895 72.2998zM457.89 448c28.1104 0 54.1104 -20.6396 54.1104 -49.5498c0 -16.1406 -6.51953 -31.6406 -13.9004 -45.9902c-113.05 -210.99 -149.05 -256.46 -211.159 -256.46
c-7.75 0 -15.1807 1.23047 -22.3906 3.03027l-63.8193 53.1797c-5.48047 11.9404 -8.73047 25 -8.73047 38.7002c0 53.75 21.2695 58.04 225.68 240.64c10.8398 9.74023 25.0508 16.4502 40.21 16.4502z" />
    <glyph glyph-name="birthday-cake" unicode="&#xf1fd;" horiz-adv-x="448" 
d="M448 64c-28.0195 0 -31.2598 32 -74.5 32c-43.4297 0 -46.8252 -32 -74.75 -32c-27.6953 0 -31.4541 32 -74.75 32c-42.8418 0 -47.2178 -32 -74.5 -32c-28.1484 0 -31.2021 32 -74.75 32c-43.5469 0 -46.6533 -32 -74.75 -32v80c0 26.5 21.5 48 48 48h16v144h64v-144h64
v144h64v-144h64v144h64v-144h16c26.5 0 48 -21.5 48 -48v-80zM448 -64h-448v96c43.3564 0 46.7666 32 74.75 32c27.9512 0 31.2529 -32 74.75 -32c42.8428 0 47.2168 32 74.5 32c28.1484 0 31.2012 -32 74.75 -32c43.3574 0 46.7666 32 74.75 32
c27.4883 0 31.252 -32 74.5 -32v-96zM96 352c-17.75 0 -32 14.25 -32 32c0 31 32 23 32 64c12 0 32 -29.5 32 -56s-14.25 -40 -32 -40zM224 352c-17.75 0 -32 14.25 -32 32c0 31 32 23 32 64c12 0 32 -29.5 32 -56s-14.25 -40 -32 -40zM352 352c-17.75 0 -32 14.25 -32 32
c0 31 32 23 32 64c12 0 32 -29.5 32 -56s-14.25 -40 -32 -40z" />
    <glyph glyph-name="chart-area" unicode="&#xf1fe;" 
d="M500 64c6.59961 0 12 -5.40039 12 -12v-40c0 -6.59961 -5.40039 -12 -12 -12h-488c-6.59961 0 -12 5.40039 -12 12v360c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-308h436zM372.7 288.5c6 4 14.2002 1.7998 17.3994 -4.7002l89.9004 -187.8h-384v104
l86.7998 144.7c4.40039 7.2998 14.7998 7.7998 19.9004 1l85.2998 -113.7z" />
    <glyph glyph-name="chart-pie" unicode="&#xf200;" horiz-adv-x="544" 
d="M527.79 160c9.5498 0 17.4004 -8.38965 16.0596 -17.8496c-7.80957 -55.25 -34.4297 -104.4 -73.1299 -140.86c-6.20996 -5.84961 -16.1494 -5.36035 -22.1895 0.679688l-158.03 158.03h237.29zM511.96 224.8c0.629883 -9.12012 -7.0498 -16.7998 -16.1904 -16.7998
h-223.77v223.76c0 9.14062 7.67969 16.8301 16.7998 16.2002c119.46 -8.24023 214.92 -103.7 223.16 -223.16zM224 160l155.86 -155.87c6.84961 -6.84961 6.33008 -18.4795 -1.57031 -24.0801c-38.29 -27.1602 -84.8604 -43.3994 -135.26 -44.0303
c-128.2 -1.60938 -238.53 103.471 -242.891 231.61c-4.23926 124.771 86.8506 228.88 206.021 245.72c9.4502 1.34082 17.8398 -6.50977 17.8398 -16.0596v-237.29z" />
    <glyph glyph-name="chart-line" unicode="&#xf201;" 
d="M496 64c8.83984 0 16 -7.16016 16 -16v-32c0 -8.83984 -7.16016 -16 -16 -16h-464c-17.6699 0 -32 14.3301 -32 32v336c0 8.83984 7.16016 16 16 16h32c8.83984 0 16 -7.16016 16 -16v-304h432zM464 352c8.83984 0 16 -7.16016 15.9902 -16v-118.05
c0 -21.3799 -25.8506 -32.0898 -40.9707 -16.9697l-32.3994 32.3994l-96 -96c-12.4902 -12.5 -32.75 -12.5 -45.25 0l-73.3701 73.3701l-46.0596 -46.0703c-6.25 -6.25 -16.3809 -6.25 -22.6309 0l-22.6191 22.6201c-6.25 6.25 -6.25 16.3799 0 22.6299l68.6895 68.6904
c12.4902 12.5 32.75 12.5 45.25 0l73.3701 -73.3701l73.3701 73.3799l-32.4004 32.4004c-15.1201 15.1201 -4.41016 40.9697 16.9707 40.9697h118.06z" />
    <glyph glyph-name="toggle-off" unicode="&#xf204;" horiz-adv-x="576" 
d="M384 384c106.039 0 192 -85.9609 192 -192s-85.9609 -192 -192 -192h-192c-106.039 0 -192 85.9609 -192 192s85.9609 192 192 192h192zM64 192c0 -70.751 57.2588 -128 128 -128c70.751 0 128 57.2588 128 128c0 70.751 -57.2588 128 -128 128
c-70.751 0 -128 -57.2588 -128 -128zM384 64c70.751 0 128 57.2598 128 128c0 70.751 -57.2588 128 -128 128h-48.9053c65.2363 -72.8799 65.2168 -183.142 0 -256h48.9053z" />
    <glyph glyph-name="toggle-on" unicode="&#xf205;" horiz-adv-x="576" 
d="M384 384c106 0 192 -86 192 -192s-86 -192 -192 -192h-192c-106 0 -192 86 -192 192s86 192 192 192h192zM384 64c70.7002 0 128 57.2002 128 128c0 70.7002 -57.2002 128 -128 128c-70.7002 0 -128 -57.2002 -128 -128c0 -70.7002 57.2002 -128 128 -128z" />
    <glyph glyph-name="bicycle" unicode="&#xf206;" horiz-adv-x="640" 
d="M512.509 255.999c70.9502 -0.276367 128.562 -59.0547 127.477 -129.996c-1.07422 -70.1934 -58.6494 -126.681 -129.255 -125.996c-68.8301 0.667969 -126.584 58.8857 -126.729 127.719c-0.078125 37.3564 15.8516 70.9893 41.3066 94.4375l-14.9375 24.0674
l-85.9619 -138.863c-4.23145 -6.83496 -11.7832 -11.3672 -20.4062 -11.3672h-52.0332c-14.209 -55.207 -64.3252 -96 -123.967 -96c-70.9473 0 -128.415 57.7207 -128 128.764c0.410156 70.2246 58.0918 127.406 128.317 127.236
c15.0879 -0.0371094 29.5586 -2.69043 42.9912 -7.51953l29.417 47.5195h-48.7256c-13.1191 0 -23.7627 10.5186 -23.9951 23.5635c-0.241211 13.4375 11.0947 24.4365 24.5361 24.4365h87.459c8.83691 0 16 -7.16309 16 -16v-16h113.544l-14.8955 24h-50.6494
c-8.83691 0 -16 7.16309 -16 16v16c0 8.83691 7.16309 16 16 16h64c8.6123 0 16.1572 -4.52148 20.3916 -11.3428l77.6807 -125.153c14.4053 5.54004 30.0625 8.55957 46.4355 8.49512zM186.75 182.228l-23.6641 -38.2275h43.3057
c-2.96875 14.5674 -9.91504 27.6992 -19.6416 38.2275zM128.002 48c32.7383 0 60.9297 19.7754 73.2998 48h-81.2998c-18.7891 0 -30.2871 20.6729 -20.4062 36.6318l45.5049 73.5088c-5.5127 1.20605 -11.2295 1.85938 -17.0986 1.85938c-44.1123 0 -80 -35.8877 -80 -80
s35.8877 -80 80 -80zM290.632 144l74.2861 120h-127.547l-24.7461 -39.9736c22.8271 -20.1328 38.4229 -48.2705 42.3828 -80.0264h35.624zM507.689 48.1143c46.0605 -2.43164 84.3115 34.3447 84.3125 79.8848c0 44.1123 -35.8877 80 -80 80
c-0.0136719 0 0.00585938 -0.0078125 -0.00683594 -0.0078125c-6.85156 0 -13.5029 -0.864258 -19.8516 -2.48926l44.4688 -71.6426c4.66113 -7.50879 2.35156 -17.3721 -5.15625 -22.0322l-13.5938 -8.4375c-7.50879 -4.65918 -17.3721 -2.35156 -22.0322 5.15625
l-44.4326 71.5859c-12.7021 -14.7451 -20.1475 -34.1416 -19.3359 -55.2627c1.57812 -41.0635 34.5918 -74.5898 75.6279 -76.7549z" />
    <glyph glyph-name="bus" unicode="&#xf207;" 
d="M488 320c13.25 0 24 -10.7402 24 -24v-80c0 -13.25 -10.75 -24 -24 -24h-8v-166.4c0 -12.7998 -9.59961 -25.5996 -25.5996 -25.5996h-6.40039v-32c0 -17.6699 -14.3301 -32 -32 -32h-32c-17.6699 0 -32 14.3301 -32 32v32h-192v-32c0 -17.6699 -14.3301 -32 -32 -32h-32
c-17.6699 0 -32 14.3301 -32 32v32c-17.6699 0 -32 14.3301 -32 32v160h-8c-13.25 0 -24 10.75 -24 24v80c0 13.2598 10.75 24 24 24h8v48c0 44.7998 99.2002 80 224 80s224 -35.2002 224 -80v-48h8zM112 48c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32
s-32 -14.3301 -32 -32s14.3301 -32 32 -32zM128 160h256c17.6699 0 32 14.3301 32 32v128c0 17.6699 -14.3301 32 -32 32h-256c-17.6699 0 -32 -14.3301 -32 -32v-128c0 -17.6699 14.3301 -32 32 -32zM400 48c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32
s-32 -14.3301 -32 -32s14.3301 -32 32 -32z" />
    <glyph glyph-name="closed-captioning" unicode="&#xf20a;" 
d="M464 384c26.5 0 48 -21.5 48 -48v-288c0 -26.5 -21.5 -48 -48 -48h-416c-26.5 0 -48 21.5 -48 48v288c0 26.5 21.5 48 48 48h416zM218.1 160.3c-41.1992 -37.8994 -92.1992 -15.3994 -92.2998 32.6006c0 46.0996 53.7998 63.1992 94.6006 31.1992
c2.89941 -2.2998 7.19922 -1.39941 9.09961 1.7002l17.5 30.5c1.5 2.5 1.09961 3.7002 -1 5.7002c-50.7998 49.4004 -172.5 27.2002 -172.5 -70.0996c0 -100 119.2 -124.7 172.8 -67.9004c2 2.09961 2.2002 5.2998 0.5 7.7002l-19.5 27.7002
c-2.09961 3 -6.39941 3.39941 -9.2002 0.899414zM408.5 160.3c-41.2002 -37.8994 -92.2002 -15.3994 -92.2002 32.6006c0 46.0996 53.7998 63.1992 94.6006 31.1992c2.89941 -2.2998 7.19922 -1.39941 9.09961 1.7002l17.5 30.5c1.5 2.5 1.09961 3.7002 -1 5.7002
c-50.7998 49.4004 -172.5 27.2002 -172.5 -70.0996c0 -100 119.2 -124.801 172.7 -67.9004c2 2.09961 2.2002 5.2998 0.5 7.7002l-19.5 27.7002c-2.10059 3 -6.40039 3.39941 -9.2002 0.899414z" />
    <glyph glyph-name="shekel-sign" unicode="&#xf20b;" horiz-adv-x="448" 
d="M248 280c0 30.9297 -25.0703 56 -56 56h-112v-352c0 -8.83984 -7.16016 -16 -16 -16h-48c-8.83984 0 -16 7.16016 -16 16v408c0 13.2598 10.75 24 24 24h168c75.1104 0 136 -60.8896 136 -136v-168c0 -8.83984 -7.16016 -16 -16 -16h-48c-8.83984 0 -16 7.16016 -16 16
v168zM432 416c8.83984 0 16 -7.16016 16 -16v-296c0 -75.1104 -60.8896 -136 -136 -136h-168c-13.25 0 -24 10.75 -24 24v280c0 8.83984 7.16016 16 16 16h48c8.83984 0 16 -7.16016 16 -16v-224h112c30.9297 0 56 25.0703 56 56v296c0 8.83984 7.16016 16 16 16h48z" />
    <glyph glyph-name="cart-plus" unicode="&#xf217;" horiz-adv-x="576" 
d="M504.717 128h-293.145l6.54492 -32h268.418c15.4004 0 26.8154 -14.3008 23.4033 -29.3193l-5.51758 -24.2754c18.6914 -9.07324 31.5791 -28.2334 31.5791 -50.4053c0 -31.2021 -25.5186 -56.4443 -56.8242 -55.9941
c-29.8232 0.428711 -54.3496 24.6309 -55.1543 54.4473c-0.44043 16.2871 6.08496 31.0488 16.8027 41.5479h-209.648c10.377 -10.166 16.8242 -24.3271 16.8242 -40.001c0 -31.8135 -26.5283 -57.4307 -58.6699 -55.9385c-28.54 1.3252 -51.751 24.3857 -53.251 52.917
c-1.1582 22.0342 10.4355 41.4551 28.0508 51.5869l-70.2471 343.435h-69.8828c-13.2549 0 -24 10.7451 -24 24v16c0 13.2549 10.7451 24 24 24h102.529c11.4004 0 21.2275 -8.02148 23.5127 -19.1904l9.16602 -44.8096h392.782
c15.4004 0 26.8154 -14.3008 23.4023 -29.3193l-47.2725 -208c-2.4834 -10.9268 -12.1973 -18.6807 -23.4033 -18.6807zM408 280h-48v40c0 8.83691 -7.16309 16 -16 16h-16c-8.83691 0 -16 -7.16309 -16 -16v-40h-48c-8.83691 0 -16 -7.16309 -16 -16v-16
c0 -8.83691 7.16309 -16 16 -16h48v-40c0 -8.83691 7.16309 -16 16 -16h16c8.83691 0 16 7.16309 16 16v40h48c8.83691 0 16 7.16309 16 16v16c0 8.83691 -7.16309 16 -16 16z" />
    <glyph glyph-name="cart-arrow-down" unicode="&#xf218;" horiz-adv-x="576" 
d="M504.717 128h-293.145l6.54492 -32h268.418c15.4004 0 26.8154 -14.3008 23.4033 -29.3193l-5.51758 -24.2754c18.6914 -9.07324 31.5791 -28.2334 31.5791 -50.4053c0 -31.2021 -25.5186 -56.4443 -56.8242 -55.9941
c-29.8232 0.428711 -54.3496 24.6309 -55.1543 54.4473c-0.44043 16.2871 6.08496 31.0488 16.8027 41.5479h-209.648c10.377 -10.166 16.8242 -24.3271 16.8242 -40.001c0 -31.8135 -26.5283 -57.4307 -58.6699 -55.9385c-28.54 1.3252 -51.751 24.3857 -53.251 52.917
c-1.1582 22.0342 10.4355 41.4551 28.0508 51.5869l-70.2471 343.435h-69.8828c-13.2549 0 -24 10.7451 -24 24v16c0 13.2549 10.7451 24 24 24h102.529c11.4004 0 21.2275 -8.02148 23.5127 -19.1904l9.16602 -44.8096h392.782
c15.4004 0 26.8154 -14.3008 23.4023 -29.3193l-47.2725 -208c-2.4834 -10.9268 -12.1973 -18.6807 -23.4033 -18.6807zM403.029 256h-43.0293v60c0 6.62695 -5.37305 12 -12 12h-24c-6.62695 0 -12 -5.37305 -12 -12v-60h-43.0293
c-10.6904 0 -16.0449 -12.9258 -8.48438 -20.4854l67.0283 -67.0283c4.68652 -4.68652 12.2842 -4.68652 16.9717 0l67.0283 67.0283c7.55957 7.55957 2.20508 20.4854 -8.48535 20.4854z" />
    <glyph glyph-name="ship" unicode="&#xf21a;" horiz-adv-x="640" 
d="M496.616 75.3613c17.8418 -44.3604 58.5664 -75.3613 119.384 -75.3613c13.2549 0 24 -10.7451 24 -24v-16c0 -13.2549 -10.7451 -24 -24 -24c-61.0322 0 -107.505 20.6162 -143.258 59.3965c-14.4189 -34.8281 -48.7637 -59.3965 -88.7422 -59.3965h-128
c-39.9785 0 -74.3232 24.5684 -88.7422 59.3965c-35.7588 -38.7861 -82.2344 -59.3965 -143.258 -59.3965c-13.2549 0 -24 10.7451 -24 24v16c0 13.2549 10.7451 24 24 24c61.5869 0 101.828 31.7129 119.384 75.3613l-70.0117 70.0117
c-16.918 16.9189 -9.91699 45.7793 12.8359 53.0918l41.792 13.4336v140.102c0 17.6729 14.3271 32 32 32h64v40c0 13.2549 10.7451 24 24 24h144c13.2549 0 24 -10.7451 24 -24v-40h64c17.6729 0 32 -14.3271 32 -32v-140.102l41.792 -13.4336
c22.7783 -7.32129 29.7354 -36.1914 12.8359 -53.0918zM192 320v-87.5312l118.208 37.9951c3.08594 0.992188 6.38086 1.52832 9.79492 1.52832c3.41309 0 6.70312 -0.536133 9.78906 -1.52832l118.208 -37.9951v87.5312h-256z" />
    <glyph glyph-name="user-secret" unicode="&#xf21b;" horiz-adv-x="448" 
d="M383.9 139.7c38.2998 -23.7002 64.0996 -65.7002 64.0996 -114.101v-44.7998c0 -24.7002 -20.0996 -44.7998 -44.7998 -44.7998h-358.4c-24.7002 0 -44.7998 20.0996 -44.7998 44.7998v44.7998c0 49.7002 27.2998 92.6006 67.4004 115.9l-25.8008 60.2002
c-4.5 10.5996 3.2002 22.2998 14.7002 22.2998h57.5c-11 18.9004 -17.7998 40.5996 -17.7998 64v0.299805c-39.2002 7.7998 -64 19.1006 -64 31.7002c0 13.2998 27.2998 25.0996 70 33c9.2002 32.7998 27.0996 65.7998 40.5996 82.7998
c9.5 11.9004 25.9004 15.6006 39.5 8.7998l27.6006 -13.7998c9 -4.5 19.5996 -4.5 28.5996 0l27.6006 13.7998c13.5996 6.80078 30 3.10059 39.5 -8.7998c13.5996 -17 31.3994 -50 40.5996 -82.7998c42.7998 -7.90039 70.0996 -19.7002 70.0996 -33
c0 -12.5996 -24.7998 -23.9004 -64 -31.7002v-0.299805c0 -23.4004 -6.7998 -45.0996 -17.7998 -64h58.5c11.2998 0 19 -11.2002 15 -21.7002zM176 -32l32 120l-24 40l-49.5996 32zM272 -32l41.5996 192l-49.5996 -32l-24 -40zM313.7 266.5
c0.799805 2.59961 6.2998 5.7002 6.39941 5.7998v10.7998c-28.2998 -3.69922 -61 -5.7998 -96 -5.7998s-67.6992 2.2002 -96 5.7998v-10.7998c0 -0.0996094 5.5 -3.2998 6.30078 -5.7998c3.7998 -11.9004 7 -24.5996 16.5 -33.4004c8 -7.39941 47 -25.1992 64 25
c2.89941 8.40039 15.5 8.40039 18.2998 0c16 -47.3994 53.8994 -34.2998 64 -25c9.5 8.80078 12.5996 21.5 16.5 33.4004z" />
    <glyph glyph-name="motorcycle" unicode="&#xf21c;" horiz-adv-x="640" 
d="M512.9 256c69.5996 -0.5 126.5 -57.2998 127.199 -126.9c0.600586 -71.5996 -57.5996 -129.8 -129.199 -129.1c-69.6006 0.599609 -126.301 57.5 -126.801 127.1c-0.299805 39.3008 17.2002 74.5 44.8008 98.2002l-12.5 20.7998
c-38.7002 -31.2998 -58.3008 -77.8994 -56.2002 -125c0.599609 -13.6992 -10.2998 -25.0996 -24 -25.0996h-84.2002c-14.2998 -55.2002 -64.4004 -96 -124 -96c-71.7002 0 -129.6 58.9004 -128 131c1.59961 67.4004 55.9004 122.5 123.2 124.9
c14.3994 0.5 28.2998 -1.30078 41.2998 -5.2002l11.2998 20.5c-9.09961 13.8994 -23.2998 24.7998 -47.7998 24.7998h-56c-13.0996 0 -23.7998 10.5 -24 23.5c-0.299805 13.5 11 24.5 24.5 24.5h55.5c55 0 82.2002 -16.9004 99.9004 -40h153.699l-19.1992 32h-66.4004
c-8.7998 0 -16 7.2002 -16 16v16c0 8.7998 7.2002 16 16 16h80c8.40039 0 16.2002 -4.40039 20.5996 -11.5996l22.8008 -38l37.5 41.6992c4.5 5 11 7.90039 17.7998 7.90039h45.2998c13.2998 0 24 -10.7002 24 -24v-32c0 -13.2998 -10.7002 -24 -24 -24h-82.4004
l32.9004 -54.9004c13.2998 4.60059 27.5 7 42.4004 6.90039zM128 48c32.7002 0 60.9004 19.7998 73.2998 48h-81.2998c-18.2002 0 -29.7998 19.5996 -21 35.5996l41.5 75.4004c-4.09961 0.700195 -8.2998 1 -12.5 1c-44.0996 0 -80 -35.9004 -80 -80s35.9004 -80 80 -80z
M591.9 123.6c2.39941 46.1006 -34.3008 84.4004 -79.9004 84.3008c-5.40039 0 -10.7002 -0.5 -15.9004 -1.60059l48.6006 -80.8994c4.5 -7.60059 2.09961 -17.5 -5.5 -22l-13.7002 -8.2002c-7.59961 -4.5 -17.5 -2.10059 -22 5.5l-49.4004 82.3994
c-13.6992 -14.2998 -22.0996 -33.6992 -22.0996 -55.0996c0 -45.5996 38.2998 -82.4004 84.4004 -79.9004c40.5 2.10059 73.2998 34.9004 75.5 75.5z" />
    <glyph glyph-name="street-view" unicode="&#xf21d;" 
d="M367.9 118.24c85.2295 -15.5801 144.1 -48.29 144.1 -86.2402c0 -53.0195 -114.62 -96 -256 -96s-256 42.9805 -256 96c0 37.9502 58.8701 70.6602 144.1 86.2402c4.62012 -5.2998 9.78027 -10.1006 15.9004 -13.6504v-22.9395
c-66.5195 -9.35059 -112 -28.0508 -112 -49.6504c0 -30.9297 93.1201 -56 208 -56s208 25.0703 208 56c0 21.5996 -45.4805 40.3096 -112 49.6504v22.9395c6.12012 3.5498 11.2803 8.35059 15.9004 13.6504zM256 320c-35.3496 0 -64 28.6504 -64 64s28.6504 64 64 64
s64 -28.6504 64 -64s-28.6504 -64 -64 -64zM192 128c-17.6699 0 -32 14.3301 -32 32v96c0 26.5098 21.4902 48 48 48h11.7998c11.0703 -5.03027 23.2598 -8 36.2002 -8s25.1299 2.96973 36.2002 8h11.7998c26.5098 0 48 -21.4902 48 -48v-96
c0 -17.6699 -14.3301 -32 -32 -32v-96c0 -17.6699 -14.3301 -32 -32 -32h-64c-17.6699 0 -32 14.3301 -32 32v96z" />
    <glyph glyph-name="heartbeat" unicode="&#xf21e;" 
d="M320.2 204.2l22.0996 -44.2002h109.101l-182.601 -186.5c-7.09961 -7.2998 -18.5996 -7.2998 -25.7002 0l-182.5 186.5h94.1006l30 71.7002l56.8994 -126.3c5.5 -12.3008 22.9004 -12.7002 28.9004 -0.600586zM473.7 374.1
c48.7002 -49.7998 50.7998 -129.1 7.2998 -182.1h-118.9l-27.5996 55.2002c-5.90039 11.7998 -22.7002 11.7998 -28.5996 0l-49 -97.9004l-58.2002 129.3c-5.7998 12.8008 -24 12.5 -29.4004 -0.399414l-35.8994 -86.2002h-102.4c-43.5 53 -41.4004 132.3 7.2998 182.1
l2.40039 2.40039c51.5 52.7002 135.899 52.7002 187.399 0l27.9004 -28.5l27.9004 28.5996c51.5996 52.6006 135.899 52.6006 187.399 0z" />
    <glyph glyph-name="venus" unicode="&#xf221;" horiz-adv-x="288" 
d="M288 272c0 -68.5 -47.9004 -125.9 -112 -140.4v-51.5996h36c6.59961 0 12 -5.40039 12 -12v-40c0 -6.59961 -5.40039 -12 -12 -12h-36v-36c0 -6.59961 -5.40039 -12 -12 -12h-40c-6.59961 0 -12 5.40039 -12 12v36h-36c-6.59961 0 -12 5.40039 -12 12v40
c0 6.59961 5.40039 12 12 12h36v51.5996c-64.0996 14.5 -112 71.9004 -112 140.4c0 79.5 64.5 144 144 144s144 -64.5 144 -144zM64 272c0 -44.0996 35.9004 -80 80 -80s80 35.9004 80 80s-35.9004 80 -80 80s-80 -35.9004 -80 -80z" />
    <glyph glyph-name="mars" unicode="&#xf222;" horiz-adv-x="384" 
d="M372 384c6.59961 0 12 -5.40039 12 -12v-79c0 -10.7002 -12.9004 -16.0996 -20.5 -8.5l-16.9004 16.9004l-80.6992 -80.7002c14 -22.2002 22.0996 -48.5 22.0996 -76.7002c0 -79.5 -64.5 -144 -144 -144s-144 64.5 -144 144s64.5 144 144 144
c28.2002 0 54.5 -8.09961 76.7002 -22.0996l80.7002 80.6992l-16.9004 16.9004c-7.5 7.59961 -2.2002 20.5 8.5 20.5h79zM144 64c44.0996 0 80 35.9004 80 80s-35.9004 80 -80 80s-80 -35.9004 -80 -80s35.9004 -80 80 -80z" />
    <glyph glyph-name="mercury" unicode="&#xf223;" horiz-adv-x="288" 
d="M288 240c0 -68.5 -47.9004 -125.9 -112 -140.4v-51.5996h36c6.59961 0 12 -5.40039 12 -12v-40c0 -6.59961 -5.40039 -12 -12 -12h-36v-36c0 -6.59961 -5.40039 -12 -12 -12h-40c-6.59961 0 -12 5.40039 -12 12v36h-36c-6.59961 0 -12 5.40039 -12 12v40
c0 6.59961 5.40039 12 12 12h36v51.5996c-64.0996 14.5 -112 71.9004 -112 140.4c0 44.2002 19.9004 83.7002 51.2002 110c-2.5 1.90039 -4.90039 3.7998 -7.2002 5.7998c-24.7998 21.2002 -39.7998 48.7998 -43.2002 78.9004
c-0.899414 7.09961 4.7002 13.2998 11.9004 13.2998h40.5c5.7002 0 10.5996 -4.09961 11.7002 -9.7998c2.5 -12.5 9.59961 -24.2998 20.6992 -33.7998c15.4004 -13.2002 36.1006 -20.4004 58.4004 -20.4004s43 7.2002 58.2998 20.4004
c11.1006 9.5 18.2998 21.2998 20.7002 33.7998c1.09961 5.7002 6 9.7998 11.7998 9.7998h40.5c7.2002 0 12.7998 -6.2002 11.9004 -13.2998c-3.40039 -30 -18.5 -57.6006 -43.2002 -78.7998c-2.2998 -2 -4.7002 -4 -7.2002 -5.80078
c31.2998 -26.3994 51.2002 -65.8994 51.2002 -110.1zM64 240c0 -44.0996 35.9004 -80 80 -80s80 35.9004 80 80s-35.9004 80 -80 80s-80 -35.9004 -80 -80z" />
    <glyph glyph-name="transgender" unicode="&#xf224;" horiz-adv-x="384" 
d="M372 448c6.59961 0 12 -5.40039 12 -12v-79c0 -10.7002 -12.9004 -16.0996 -20.5 -8.5l-16.9004 16.9004l-80.6992 -80.7002c14 -22.2002 22.0996 -48.5 22.0996 -76.7002c0 -68.5 -47.9004 -125.8 -112 -140.4v-27.5996h36c6.59961 0 12 -5.40039 12 -12v-40
c0 -6.59961 -5.40039 -12 -12 -12h-36v-28c0 -6.59961 -5.40039 -12 -12 -12h-40c-6.59961 0 -12 5.40039 -12 12v28h-36c-6.59961 0 -12 5.40039 -12 12v40c0 6.59961 5.40039 12 12 12h36v27.5996c-64.0996 14.5 -112 71.9004 -112 140.4c0 79.5 64.5 144 144 144
c28.2002 0 54.5 -8.09961 76.7002 -22.0996l80.7002 80.6992l-16.9004 16.9004c-7.5 7.59961 -2.2002 20.5 8.5 20.5h79zM144 128c44.0996 0 80 35.9004 80 80s-35.9004 80 -80 80s-80 -35.9004 -80 -80s35.9004 -80 80 -80z" />
    <glyph glyph-name="transgender-alt" unicode="&#xf225;" horiz-adv-x="480" 
d="M468 448c6.59961 0 12 -5.40039 12 -12v-79c0 -10.7002 -12.9004 -16.0996 -20.5 -8.5l-16.9004 16.9004l-80.6992 -80.7002c14 -22.2002 22.0996 -48.5 22.0996 -76.7002c0 -68.5 -47.9004 -125.8 -112 -140.4v-27.5996h36c6.59961 0 12 -5.40039 12 -12v-40
c0 -6.59961 -5.40039 -12 -12 -12h-36v-28c0 -6.59961 -5.40039 -12 -12 -12h-40c-6.59961 0 -12 5.40039 -12 12v28h-36c-6.59961 0 -12 5.40039 -12 12v40c0 6.59961 5.40039 12 12 12h36v27.5996c-64.0996 14.5 -112 71.9004 -112 140.4
c0 28.2002 8.09961 54.5 22.2002 76.5996l-16.5 16.5l-19.7998 -19.7998c-4.7002 -4.7002 -12.3008 -4.7002 -17 0l-28.3008 28.2998c-4.69922 4.7002 -4.69922 12.3008 0 17l19.8008 19.8008l-19 19l-16.9004 -16.9004c-7.59961 -7.5 -20.5 -2.2002 -20.5 8.5v79
c0 6.59961 5.40039 12 12 12h79c10.7002 0 16.0996 -12.9004 8.40039 -20.4004l-16.9004 -16.8994l19 -19l19.7998 19.7998c4.7002 4.7002 12.2998 4.7002 17 0l28.2998 -28.2998c4.7002 -4.7002 4.7002 -12.2998 0 -17l-19.7998 -19.7998l16.5 -16.5
c22.2002 14 48.5 22.0996 76.7002 22.0996s54.5 -8.09961 76.7002 -22.0996l80.7002 80.6992l-16.9004 16.9004c-7.5 7.59961 -2.2002 20.5 8.5 20.5h79zM240 128c44.0996 0 80 35.9004 80 80s-35.9004 80 -80 80s-80 -35.9004 -80 -80s35.9004 -80 80 -80z" />
    <glyph glyph-name="venus-double" unicode="&#xf226;" 
d="M288 272c0 -68.5 -47.9004 -125.9 -112 -140.4v-51.5996h36c6.59961 0 12 -5.40039 12 -12v-40c0 -6.59961 -5.40039 -12 -12 -12h-36v-36c0 -6.59961 -5.40039 -12 -12 -12h-40c-6.59961 0 -12 5.40039 -12 12v36h-36c-6.59961 0 -12 5.40039 -12 12v40
c0 6.59961 5.40039 12 12 12h36v51.5996c-64.0996 14.5 -112 71.9004 -112 140.4c0 79.5 64.5 144 144 144s144 -64.5 144 -144zM64 272c0 -44.0996 35.9004 -80 80 -80s80 35.9004 80 80s-35.9004 80 -80 80s-80 -35.9004 -80 -80zM400 131.6v-51.5996h36
c6.59961 0 12 -5.40039 12 -12v-40c0 -6.59961 -5.40039 -12 -12 -12h-36v-36c0 -6.59961 -5.40039 -12 -12 -12h-40c-6.59961 0 -12 5.40039 -12 12v36h-36c-6.59961 0 -12 5.40039 -12 12v40c0 6.59961 5.40039 12 12 12h36v51.5996
c-21.2002 4.80078 -40.5996 14.3008 -57.2002 27.3008c14 16.6992 25 36 32.1006 57.0996c14.5 -14.7998 34.6992 -24 57.0996 -24c44.0996 0 80 35.9004 80 80s-35.9004 80 -80 80c-22.2998 0 -42.5996 -9.2002 -57.0996 -24
c-7.10059 21.0996 -18 40.4004 -32.1006 57.0996c24.6006 19.3008 55.5 30.9004 89.2002 30.9004c79.5 0 144 -64.5 144 -144c0 -68.5 -47.9004 -125.9 -112 -140.4z" />
    <glyph glyph-name="mars-double" unicode="&#xf227;" 
d="M340 448c6.59961 0 12 -5.40039 12 -12v-79c0 -7.2002 -5.90039 -12 -12.0996 -12c-2.90039 0 -6 1.09961 -8.40039 3.5l-16.9004 16.9004l-48.6992 -48.7002c14 -22.2002 22.0996 -48.5 22.0996 -76.7002c0 -79.5 -64.5 -144 -144 -144s-144 64.5 -144 144
s64.5 144 144 144c28.2002 0 54.5 -8.09961 76.7002 -22.0996l48.7002 48.6992l-16.9004 16.9004c-7.5 7.59961 -2.2002 20.5 8.5 20.5h79zM144 160c44.0996 0 80 35.9004 80 80s-35.9004 80 -80 80s-80 -35.9004 -80 -80s35.9004 -80 80 -80zM500 288.1
c6.59961 0 12 -5.39941 12 -12.0996v-79c0 -7.2002 -5.90039 -12 -12.0996 -12c-3 0 -6 1.09961 -8.40039 3.5l-16.9004 16.9004l-48.6992 -48.7002c14 -22.2002 22.0996 -48.5 22.0996 -76.7002c0 -79.5 -64.5 -144 -144 -144c-74.4004 0 -135.6 56.4004 -143.2 128.9
c21.7998 2 43.2998 8.19922 63.2998 18.3994c-0.0996094 -1 -0.0996094 -2.09961 -0.0996094 -3.2002c0 -44.0996 35.9004 -80 80 -80s80 35.9004 80 80c0 44.1006 -35.9004 80 -80 80c-1 0 -2.09961 -0.0996094 -3.2002 -0.0996094
c10.2002 20 16.2998 41.5 18.4004 63.2998c22.5 -2.39941 43.2998 -9.89941 61.5 -21.2998l48.7002 48.7002l-16.9004 16.8994c-7.5 7.60059 -2.2002 20.5 8.5 20.5h79z" />
    <glyph glyph-name="venus-mars" unicode="&#xf228;" horiz-adv-x="576" 
d="M564 448c6.59961 0 12 -5.40039 12 -12v-79c0 -7.2002 -5.90039 -12 -12.0996 -12c-3 0 -6 1.09961 -8.40039 3.5l-16.9004 16.9004l-48.6992 -48.7002c14 -22.2002 22.0996 -48.5 22.0996 -76.7002c0 -79.5 -64.5 -144 -144 -144
c-33.7002 0 -64.7002 11.5 -89.2002 30.9004c14.1006 16.6992 25 36 32.1006 57.0996c14.5 -14.7998 34.7998 -24 57.0996 -24c44.0996 0 80 35.9004 80 80s-35.9004 80 -80 80c-22.4004 0 -42.5996 -9.2002 -57.0996 -24
c-7.10059 21.0996 -18.1006 40.4004 -32.1006 57.0996c24.6006 19.3008 55.5 30.9004 89.2002 30.9004c28.2002 0 54.5 -8.09961 76.7002 -22.0996l48.7002 48.6992l-16.9004 16.9004c-7.5 7.59961 -2.2002 20.5 8.5 20.5h79zM144 384c79.5 0 144 -64.5 144 -144
c0 -68.5 -47.9004 -125.8 -112 -140.4v-51.5996h36c6.59961 0 12 -5.40039 12 -12v-40c0 -6.59961 -5.40039 -12 -12 -12h-36v-36c0 -6.59961 -5.40039 -12 -12 -12h-40c-6.59961 0 -12 5.40039 -12 12v36h-36c-6.59961 0 -12 5.40039 -12 12v40c0 6.59961 5.40039 12 12 12
h36v51.5996c-64.0996 14.5 -112 71.9004 -112 140.4c0 79.5 64.5 144 144 144zM144 160c44.0996 0 80 35.9004 80 80s-35.9004 80 -80 80s-80 -35.9004 -80 -80s35.9004 -80 80 -80z" />
    <glyph glyph-name="mars-stroke" unicode="&#xf229;" horiz-adv-x="384" 
d="M372 384c6.59961 0 12 -5.40039 12.0996 -12v-78.9004c0 -10.6992 -12.8994 -16.0996 -20.5 -8.5l-16.8994 16.9004l-17.5 -17.5l14.0996 -14.0996c4.7002 -4.7002 4.7002 -12.3008 0 -17l-28.2998 -28.3008c-4.7002 -4.69922 -12.2998 -4.69922 -17 0l-14.0996 14.1006
l-18 -18c14 -22.2002 22.0996 -48.5 22.0996 -76.7002c0 -79.5 -64.5 -144 -144 -144s-144 64.5 -144 144s64.5 144 143.9 144c28.1992 0 54.5 -8.09961 76.6992 -22.0996l18 18l-14.0996 14.0996c-4.7002 4.7002 -4.7002 12.2998 0 17l28.2998 28.2002
c4.7002 4.7002 12.2998 4.7002 17 0l14.1006 -14.1006l17.5 17.5l-16.9004 16.9004c-7.5 7.59961 -2.2002 20.5 8.5 20.5h79zM144 64c44.0996 0 80 35.9004 80 80s-35.9004 80 -80 80s-80 -35.9004 -80 -80s35.9004 -80 80 -80z" />
    <glyph glyph-name="mars-stroke-v" unicode="&#xf22a;" horiz-adv-x="288" 
d="M245.8 213.8c56.2998 -56.2002 56.2998 -147.399 0 -203.6c-56.2002 -56.2002 -147.399 -56.2002 -203.6 0s-56.2002 147.399 0 203.6c19.8994 19.9004 44.2002 32.7998 69.7998 38.6006v25.3994h-20c-6.59961 0 -12 5.40039 -12 12v40c0 6.60059 5.40039 12 12 12h20
v24.7002h-23.9004c-10.6992 0 -16.0996 12.9004 -8.5 20.5l55.9004 55.9004c4.7002 4.69922 12.2998 4.69922 17 0l55.9004 -55.8008c7.5 -7.59961 2.19922 -20.5 -8.5 -20.5h-23.9004v-24.7998h20c6.59961 0 12 -5.39941 12 -12v-40c0 -6.59961 -5.40039 -12 -12 -12h-20
v-25.3994c25.5996 -5.80078 49.9004 -18.7002 69.7998 -38.6006zM200.6 55.4004c31.2002 31.1992 31.2002 82 0 113.1c-31.1992 31.2002 -81.8994 31.2002 -113.1 0s-31.2002 -81.9004 0 -113.1c31.2002 -31.2002 81.9004 -31.2002 113.1 0z" />
    <glyph glyph-name="mars-stroke-h" unicode="&#xf22b;" horiz-adv-x="480" 
d="M476.2 200.5c4.7002 -4.7002 4.7002 -12.2998 0.0996094 -17l-55.8994 -55.9004c-7.60059 -7.5 -20.5 -2.19922 -20.5 8.5v23.9004h-23.9004v-20c0 -6.59961 -5.40039 -12 -12 -12h-40c-6.59961 0 -12 5.40039 -12 12v20h-27.5996
c-5.80078 -25.5996 -18.7002 -49.9004 -38.6006 -69.7998c-56.2002 -56.2002 -147.399 -56.2002 -203.6 0s-56.2002 147.399 0 203.6s147.399 56.2002 203.6 0c19.9004 -19.8994 32.7998 -44.2002 38.6006 -69.7998h27.5996v20c0 6.59961 5.40039 12 12 12h40
c6.59961 0 12 -5.40039 12 -12v-20h23.7998v23.9004c0 10.6992 12.9004 16.0996 20.5 8.5zM200.6 135.4c31.2002 31.1992 31.2002 82 0 113.1c-31.1992 31.2002 -81.8994 31.2002 -113.1 0s-31.2002 -81.9004 0 -113.1c31.2002 -31.2002 81.9004 -31.2002 113.1 0z" />
    <glyph glyph-name="neuter" unicode="&#xf22c;" horiz-adv-x="288" 
d="M288 272c0 -68.5 -47.9004 -125.9 -112 -140.4v-151.6c0 -6.59961 -5.40039 -12 -12 -12h-40c-6.59961 0 -12 5.40039 -12 12v151.6c-64.0996 14.5 -112 71.9004 -112 140.4c0 79.5 64.5 144 144 144s144 -64.5 144 -144zM144 192c44.0996 0 80 35.9004 80 80
s-35.9004 80 -80 80s-80 -35.9004 -80 -80s35.9004 -80 80 -80z" />
    <glyph glyph-name="genderless" unicode="&#xf22d;" horiz-adv-x="288" 
d="M144 272c-44.0996 0 -80 -35.9004 -80 -80s35.9004 -80 80 -80s80 35.9004 80 80s-35.9004 80 -80 80zM144 336c79.5 0 144 -64.5 144 -144s-64.5 -144 -144 -144s-144 64.5 -144 144s64.5 144 144 144z" />
    <glyph glyph-name="server" unicode="&#xf233;" 
d="M480 288h-448c-17.6729 0 -32 14.3271 -32 32v64c0 17.6729 14.3271 32 32 32h448c17.6729 0 32 -14.3271 32 -32v-64c0 -17.6729 -14.3271 -32 -32 -32zM432 376c-13.2549 0 -24 -10.7451 -24 -24s10.7451 -24 24 -24s24 10.7451 24 24s-10.7451 24 -24 24zM368 376
c-13.2549 0 -24 -10.7451 -24 -24s10.7451 -24 24 -24s24 10.7451 24 24s-10.7451 24 -24 24zM480 128h-448c-17.6729 0 -32 14.3271 -32 32v64c0 17.6729 14.3271 32 32 32h448c17.6729 0 32 -14.3271 32 -32v-64c0 -17.6729 -14.3271 -32 -32 -32zM432 216
c-13.2549 0 -24 -10.7451 -24 -24s10.7451 -24 24 -24s24 10.7451 24 24s-10.7451 24 -24 24zM368 216c-13.2549 0 -24 -10.7451 -24 -24s10.7451 -24 24 -24s24 10.7451 24 24s-10.7451 24 -24 24zM480 -32h-448c-17.6729 0 -32 14.3271 -32 32v64
c0 17.6729 14.3271 32 32 32h448c17.6729 0 32 -14.3271 32 -32v-64c0 -17.6729 -14.3271 -32 -32 -32zM432 56c-13.2549 0 -24 -10.7451 -24 -24s10.7451 -24 24 -24s24 10.7451 24 24s-10.7451 24 -24 24zM368 56c-13.2549 0 -24 -10.7451 -24 -24s10.7451 -24 24 -24
s24 10.7451 24 24s-10.7451 24 -24 24z" />
    <glyph glyph-name="user-plus" unicode="&#xf234;" horiz-adv-x="640" 
d="M624 240c8.7998 0 16 -7.2002 16 -16v-32c0 -8.7998 -7.2002 -16 -16 -16h-64v-64c0 -8.7998 -7.2002 -16 -16 -16h-32c-8.7998 0 -16 7.2002 -16 16v64h-64c-8.7998 0 -16 7.2002 -16 16v32c0 8.7998 7.2002 16 16 16h64v64c0 8.7998 7.2002 16 16 16h32
c8.7998 0 16 -7.2002 16 -16v-64h64zM224 192c-70.7002 0 -128 57.2998 -128 128s57.2998 128 128 128s128 -57.2998 128 -128s-57.2998 -128 -128 -128zM313.6 160c74.2002 0 134.4 -60.2002 134.4 -134.4v-41.5996c0 -26.5 -21.5 -48 -48 -48h-352
c-26.5 0 -48 21.5 -48 48v41.5996c0 74.2002 60.2002 134.4 134.4 134.4h16.6992c22.3008 -10.2002 46.9004 -16 72.9004 -16s50.7002 5.7998 72.9004 16h16.6992z" />
    <glyph glyph-name="user-times" unicode="&#xf235;" horiz-adv-x="640" 
d="M589.6 208l45.6006 -45.5996c6.2998 -6.30078 6.2998 -16.5 0 -22.8008l-22.7998 -22.7998c-6.30078 -6.2998 -16.5 -6.2998 -22.8008 0l-45.5996 45.6006l-45.5996 -45.6006c-6.30078 -6.2998 -16.5 -6.2998 -22.8008 0l-22.7998 22.7998
c-6.2998 6.30078 -6.2998 16.5 0 22.8008l45.6006 45.5996l-45.6006 45.5996c-6.2998 6.30078 -6.2998 16.5 0 22.8008l22.7998 22.7998c6.30078 6.2998 16.5 6.2998 22.8008 0l45.5996 -45.6006l45.5996 45.6006c6.30078 6.2998 16.5 6.2998 22.8008 0l22.7998 -22.7998
c6.2998 -6.30078 6.2998 -16.5 0 -22.8008zM224 192c-70.7002 0 -128 57.2998 -128 128s57.2998 128 128 128s128 -57.2998 128 -128s-57.2998 -128 -128 -128zM313.6 160c74.2002 0 134.4 -60.2002 134.4 -134.4v-41.5996c0 -26.5 -21.5 -48 -48 -48h-352
c-26.5 0 -48 21.5 -48 48v41.5996c0 74.2002 60.2002 134.4 134.4 134.4h16.6992c22.3008 -10.2002 46.9004 -16 72.9004 -16s50.7002 5.7998 72.9004 16h16.6992z" />
    <glyph glyph-name="bed" unicode="&#xf236;" horiz-adv-x="640" 
d="M176 192c-44.1104 0 -80 35.8896 -80 80s35.8896 80 80 80s80 -35.8896 80 -80s-35.8896 -80 -80 -80zM528 320c61.8604 0 112 -50.1396 112 -112v-192c0 -8.83984 -7.16016 -16 -16 -16h-32c-8.83984 0 -16 7.16016 -16 16v48h-512v-48c0 -8.83984 -7.16016 -16 -16 -16
h-32c-8.83984 0 -16 7.16016 -16 16v352c0 8.83984 7.16016 16 16 16h32c8.83984 0 16 -7.16016 16 -16v-208h224v144c0 8.83984 7.16016 16 16 16h224z" />
    <glyph glyph-name="train" unicode="&#xf238;" horiz-adv-x="448" 
d="M448 352v-256c0 -51.8154 -61.624 -96 -130.022 -96l62.9805 -49.7207c5.94727 -4.69629 2.60352 -14.2793 -4.95801 -14.2793h-304c-7.57812 0 -10.8916 9.59375 -4.95703 14.2793l62.9795 49.7207c-68.2021 0 -130.022 44.0459 -130.022 96v256c0 53.0186 64 96 128 96
h192c65 0 128 -42.9814 128 -96zM400 216v112c0 13.2549 -10.7451 24 -24 24h-304c-13.2549 0 -24 -10.7451 -24 -24v-112c0 -13.2549 10.7451 -24 24 -24h304c13.2549 0 24 10.7451 24 24zM224 152c-30.9277 0 -56 -25.0723 -56 -56s25.0723 -56 56 -56s56 25.0723 56 56
s-25.0723 56 -56 56z" />
    <glyph glyph-name="subway" unicode="&#xf239;" horiz-adv-x="448" 
d="M448 352v-256c0 -51.8154 -61.624 -96 -130.022 -96l62.9805 -49.7207c5.94727 -4.69629 2.60352 -14.2793 -4.95801 -14.2793h-304c-7.57812 0 -10.8916 9.59375 -4.95703 14.2793l62.9795 49.7207c-68.2021 0 -130.022 44.0459 -130.022 96v256c0 53.0186 64 96 128 96
h192c65 0 128 -42.9814 128 -96zM200 216v112c0 13.2549 -10.7451 24 -24 24h-104c-13.2549 0 -24 -10.7451 -24 -24v-112c0 -13.2549 10.7451 -24 24 -24h104c13.2549 0 24 10.7451 24 24zM400 216v112c0 13.2549 -10.7451 24 -24 24h-104c-13.2549 0 -24 -10.7451 -24 -24
v-112c0 -13.2549 10.7451 -24 24 -24h104c13.2549 0 24 10.7451 24 24zM352 160c-26.5098 0 -48 -21.4902 -48 -48s21.4902 -48 48 -48s48 21.4902 48 48s-21.4902 48 -48 48zM96 160c-26.5098 0 -48 -21.4902 -48 -48s21.4902 -48 48 -48s48 21.4902 48 48
s-21.4902 48 -48 48z" />
    <glyph glyph-name="battery-full" unicode="&#xf240;" horiz-adv-x="640" 
d="M544 288h-480v-192h480v64h32v64h-32v64zM560 352c26.5098 0 48 -21.4902 48 -48v-16h8c13.2549 0 24 -10.7451 24 -24v-144c0 -13.2549 -10.7451 -24 -24 -24h-8v-16c0 -26.5098 -21.4902 -48 -48 -48h-512c-26.5098 0 -48 21.4902 -48 48v224
c0 26.5098 21.4902 48 48 48h512zM512 256v-128h-416v128h416z" />
    <glyph glyph-name="battery-three-quarters" unicode="&#xf241;" horiz-adv-x="640" 
d="M544 288h-480v-192h480v64h32v64h-32v64zM560 352c26.5098 0 48 -21.4902 48 -48v-16h8c13.2549 0 24 -10.7451 24 -24v-144c0 -13.2549 -10.7451 -24 -24 -24h-8v-16c0 -26.5098 -21.4902 -48 -48 -48h-512c-26.5098 0 -48 21.4902 -48 48v224
c0 26.5098 21.4902 48 48 48h512zM416 256v-128h-320v128h320z" />
    <glyph glyph-name="battery-half" unicode="&#xf242;" horiz-adv-x="640" 
d="M544 288h-480v-192h480v64h32v64h-32v64zM560 352c26.5098 0 48 -21.4902 48 -48v-16h8c13.2549 0 24 -10.7451 24 -24v-144c0 -13.2549 -10.7451 -24 -24 -24h-8v-16c0 -26.5098 -21.4902 -48 -48 -48h-512c-26.5098 0 -48 21.4902 -48 48v224
c0 26.5098 21.4902 48 48 48h512zM320 256v-128h-224v128h224z" />
    <glyph glyph-name="battery-quarter" unicode="&#xf243;" horiz-adv-x="640" 
d="M544 288h-480v-192h480v64h32v64h-32v64zM560 352c26.5098 0 48 -21.4902 48 -48v-16h8c13.2549 0 24 -10.7451 24 -24v-144c0 -13.2549 -10.7451 -24 -24 -24h-8v-16c0 -26.5098 -21.4902 -48 -48 -48h-512c-26.5098 0 -48 21.4902 -48 48v224
c0 26.5098 21.4902 48 48 48h512zM224 256v-128h-128v128h128z" />
    <glyph glyph-name="battery-empty" unicode="&#xf244;" horiz-adv-x="640" 
d="M544 288h-480v-192h480v64h32v64h-32v64zM560 352c26.5098 0 48 -21.4902 48 -48v-16h8c13.2549 0 24 -10.7451 24 -24v-144c0 -13.2549 -10.7451 -24 -24 -24h-8v-16c0 -26.5098 -21.4902 -48 -48 -48h-512c-26.5098 0 -48 21.4902 -48 48v224
c0 26.5098 21.4902 48 48 48h512z" />
    <glyph glyph-name="mouse-pointer" unicode="&#xf245;" horiz-adv-x="320" 
d="M302.189 118.874h-106.084l55.8301 -135.993c3.88965 -9.42773 -0.554688 -19.999 -9.44336 -23.999l-49.165 -21.4268c-9.16504 -4 -19.4434 0.571289 -23.332 9.71387l-53.0527 129.136l-86.6641 -89.1377c-11.5498 -11.877 -30.2783 -2.7207 -30.2783 12.8564v429.678
c0 16.3994 19.9209 24.3945 30.2773 12.8555l284.412 -292.542c11.4717 -11.1787 3.00684 -31.1406 -12.5 -31.1406z" />
    <glyph glyph-name="i-cursor" unicode="&#xf246;" horiz-adv-x="256" 
d="M256 395.952c0 -6.64648 -5.4043 -12.0098 -12.0498 -11.9922c-27.875 0.0712891 -83.9502 -3.20996 -83.9502 -48.1416v-111.818h36c6.62695 0 12 -5.37305 12 -12v-40c0 -6.62695 -5.37305 -12 -12 -12h-36v-112c0 -44.9395 57.8887 -48.5527 83.8555 -48.2422
c6.68652 0.0800781 12.1445 -5.31055 12.1445 -11.998v-39.6445c0 -6.5957 -5.31836 -11.957 -11.9131 -12c-35.0654 -0.228516 -78.3525 0.62207 -116.087 37.8447c-38.4688 -37.9482 -83.6211 -38.3027 -116.158 -37.8936
c-6.56738 0.0820312 -11.8418 5.42969 -11.8418 11.999v39.9824c0 6.64648 5.4043 12.0098 12.0498 11.9932c27.875 -0.0722656 83.9502 3.02734 83.9502 47.959v112h-36c-6.62695 0 -12 5.37305 -12 12v40c0 6.62695 5.37305 12 12 12h36v111.818
c0 44.9385 -57.8887 48.7344 -83.8555 48.4248c-6.68652 -0.0800781 -12.1445 5.31055 -12.1445 11.998v39.6445c0 6.5957 5.31836 11.957 11.9131 12c35.0654 0.228516 78.3525 -0.62207 116.087 -37.8447c38.4688 37.9482 83.6211 38.3027 116.158 37.8926
c6.56738 -0.0820312 11.8418 -5.42969 11.8418 -11.999v-39.9824z" />
    <glyph glyph-name="object-group" unicode="&#xf247;" 
d="M480 320v-288h20c6.62695 0 12 -5.37305 12 -12v-40c0 -6.62695 -5.37305 -12 -12 -12h-40c-6.62695 0 -12 5.37305 -12 12v20h-384v-20c0 -6.62695 -5.37305 -12 -12 -12h-40c-6.62695 0 -12 5.37305 -12 12v40c0 6.62695 5.37305 12 12 12h20v320h-20
c-6.62695 0 -12 5.37305 -12 12v40c0 6.62695 5.37305 12 12 12h40c6.62695 0 12 -5.37305 12 -12v-20h384v20c0 6.62695 5.37305 12 12 12h40c6.62695 0 12 -5.37305 12 -12v-40c0 -6.62695 -5.37305 -12 -12 -12h-20v-32zM96 172c0 -6.62695 5.37305 -12 12 -12h168
c6.62695 0 12 5.37305 12 12v136c0 6.62695 -5.37305 12 -12 12h-168c-6.62695 0 -12 -5.37305 -12 -12v-136zM416 76v136c0 6.62695 -5.37305 12 -12 12h-84v-72c0 -13.2549 -10.7451 -24 -24 -24h-72v-52c0 -6.62695 5.37305 -12 12 -12h168c6.62695 0 12 5.37305 12 12z
" />
    <glyph glyph-name="object-ungroup" unicode="&#xf248;" horiz-adv-x="576" 
d="M64 128v-26c0 -3.31152 -2.68848 -6 -6 -6h-52c-3.31152 0 -6 2.68848 -6 6v52c0 3.31152 2.68848 6 6 6h26v192h-26c-3.31152 0 -6 2.68848 -6 6v52c0 3.31152 2.68848 6 6 6h52c3.31152 0 6 -2.68848 6 -6v-26h288v26c0 3.31152 2.68848 6 6 6h52
c3.31152 0 6 -2.68848 6 -6v-52c0 -3.31152 -2.68848 -6 -6 -6h-26v-192h26c3.31152 0 6 -2.68848 6 -6v-52c0 -3.31152 -2.68848 -6 -6 -6h-52c-3.31152 0 -6 2.68848 -6 6v26h-288zM544 192v-160h26c3.31152 0 6 -2.68848 6 -6v-52c0 -3.31152 -2.68848 -6 -6 -6h-52
c-3.31152 0 -6 2.68848 -6 6v26h-288v-26c0 -3.31152 -2.68848 -6 -6 -6h-52c-3.31152 0 -6 2.68848 -6 6v52c0 3.31152 2.68848 6 6 6h26v72h136v-8c0 -13.2549 10.7451 -24 24 -24h64c13.2549 0 24 10.7451 24 24v64c0 13.2549 -10.7451 24 -24 24h-8v72h104v26
c0 3.31152 2.68848 6 6 6h52c3.31152 0 6 -2.68848 6 -6v-52c0 -3.31152 -2.68848 -6 -6 -6h-26v-32z" />
    <glyph glyph-name="sticky-note" unicode="&#xf249;" horiz-adv-x="448" 
d="M312 128c-13.2002 0 -24 -10.7998 -24 -24v-136h-264c-13.2998 0 -24 10.7002 -24 24v400c0 13.2998 10.7002 24 24 24h400c13.2998 0 24 -10.7002 24 -24v-264h-136zM441 73l-98 -98c-4.5 -4.5 -10.5996 -7 -17 -7h-6v128h128v-6.09961
c0 -6.30078 -2.5 -12.4004 -7 -16.9004z" />
    <glyph glyph-name="clone" unicode="&#xf24d;" 
d="M464 448c26.5098 0 48 -21.4902 48 -48v-288c0 -26.5098 -21.4902 -48 -48 -48h-288c-26.5098 0 -48 21.4902 -48 48v288c0 26.5098 21.4902 48 48 48h288zM176 32h208v-48c0 -26.5098 -21.4902 -48 -48 -48h-288c-26.5098 0 -48 21.4902 -48 48v288
c0 26.5098 21.4902 48 48 48h48v-208c0 -44.1123 35.8877 -80 80 -80z" />
    <glyph glyph-name="balance-scale" unicode="&#xf24e;" horiz-adv-x="640" 
d="M256 112c0 -44.1797 -57.3096 -80 -128 -80s-128 35.8203 -128 80h0.0195312c0 15.6699 -2.0791 7.25 85.04 181.51c17.6807 35.3604 68.2207 35.29 85.8701 0c86.3906 -172.779 85.0508 -165.33 85.0508 -181.51h0.0195312zM128 272l-72 -144h144zM639.98 112
c0 -44.1797 -57.29 -80 -127.98 -80s-128 35.8203 -128 80h0.0195312c0 15.6699 -2.0791 7.25 85.04 181.51c17.6807 35.3604 68.2207 35.29 85.8701 0c86.3906 -172.779 85.0508 -165.33 85.0508 -181.51zM440 128h144l-72 144zM528 0c8.83984 0 16 -7.16016 16 -16v-32
c0 -8.83984 -7.16016 -16 -16 -16h-416c-8.83984 0 -16 7.16016 -16 16v32c0 8.83984 7.16016 16 16 16h176v294.75c-23.5195 10.29 -41.1602 31.4902 -46.3896 57.25h-129.61c-8.83984 0 -16 7.16016 -16 16v32c0 8.83984 7.16016 16 16 16h144.36
c14.5996 19.3203 37.5498 32 63.6396 32s49.04 -12.6797 63.6396 -32h144.36c8.83984 0 16 -7.16016 16 -16v-32c0 -8.83984 -7.16016 -16 -16 -16h-129.61c-5.22949 -25.7695 -22.8799 -46.96 -46.3896 -57.25v-294.75h176z" />
    <glyph glyph-name="hourglass-start" unicode="&#xf251;" horiz-adv-x="384" 
d="M360 448c13.2549 0 24 -10.7451 24 -24v-16c0 -13.2549 -10.7451 -24 -24 -24c0 -90.9648 -51.0156 -167.734 -120.842 -192c69.8262 -24.2656 120.842 -101.035 120.842 -192c13.2549 0 24 -10.7451 24 -24v-16c0 -13.2549 -10.7451 -24 -24 -24h-336
c-13.2549 0 -24 10.7451 -24 24v16c0 13.2549 10.7451 24 24 24c0 90.9648 51.0156 167.734 120.842 192c-69.8262 24.2656 -120.842 101.035 -120.842 192c-13.2549 0 -24 10.7451 -24 24v16c0 13.2549 10.7451 24 24 24h336zM296 0c0 77.4834 -46.2139 144 -104 144
c-57.7959 0 -104 -66.542 -104 -144h208z" />
    <glyph glyph-name="hourglass-half" unicode="&#xf252;" horiz-adv-x="384" 
d="M360 448c13.2549 0 24 -10.7451 24 -24v-16c0 -13.2549 -10.7451 -24 -24 -24c0 -90.9648 -51.0156 -167.734 -120.842 -192c69.8262 -24.2656 120.842 -101.035 120.842 -192c13.2549 0 24 -10.7451 24 -24v-16c0 -13.2549 -10.7451 -24 -24 -24h-336
c-13.2549 0 -24 10.7451 -24 24v16c0 13.2549 10.7451 24 24 24c0 90.9648 51.0156 167.734 120.842 192c-69.8262 24.2656 -120.842 101.035 -120.842 192c-13.2549 0 -24 10.7451 -24 24v16c0 13.2549 10.7451 24 24 24h336zM284.922 64
c-17.0596 46.8037 -52.1006 80 -92.9219 80c-40.8242 0 -75.8613 -33.2031 -92.9199 -80h185.842zM284.941 320c7.07129 19.4131 11.0586 41.1953 11.0586 64h-208c0 -22.748 3.98828 -44.5479 11.0781 -64h185.863z" />
    <glyph glyph-name="hourglass-end" unicode="&#xf253;" horiz-adv-x="384" 
d="M360 384c0 -90.9648 -51.0156 -167.734 -120.842 -192c69.8262 -24.2656 120.842 -101.035 120.842 -192c13.2549 0 24 -10.7451 24 -24v-16c0 -13.2549 -10.7451 -24 -24 -24h-336c-13.2549 0 -24 10.7451 -24 24v16c0 13.2549 10.7451 24 24 24
c0 90.9648 51.0156 167.734 120.842 192c-69.8262 24.2656 -120.842 101.035 -120.842 192c-13.2549 0 -24 10.7451 -24 24v16c0 13.2549 10.7451 24 24 24h336c13.2549 0 24 -10.7451 24 -24v-16c0 -13.2549 -10.7451 -24 -24 -24zM192 240c57.4902 0 104 66.0547 104 144
h-208c0 -77.4824 46.2129 -144 104 -144z" />
    <glyph glyph-name="hourglass" unicode="&#xf254;" horiz-adv-x="384" 
d="M360 384c0 -90.9648 -51.0156 -167.734 -120.842 -192c69.8262 -24.2656 120.842 -101.035 120.842 -192c13.2549 0 24 -10.7451 24 -24v-16c0 -13.2549 -10.7451 -24 -24 -24h-336c-13.2549 0 -24 10.7451 -24 24v16c0 13.2549 10.7451 24 24 24
c0 90.9648 51.0156 167.734 120.842 192c-69.8262 24.2656 -120.842 101.035 -120.842 192c-13.2549 0 -24 10.7451 -24 24v16c0 13.2549 10.7451 24 24 24h336c13.2549 0 24 -10.7451 24 -24v-16c0 -13.2549 -10.7451 -24 -24 -24z" />
    <glyph glyph-name="hand-rock" unicode="&#xf255;" 
d="M464.8 368c26.2998 -0.400391 47.2002 -22.5 47.2002 -48.7998v-133.5c0 -12.7998 -2.5 -25.5 -7.5 -37.2998l-49 -116.301c-4.90039 -11.7998 -7.5 -24.5 -7.5 -37.2998v-2.89941c0 -13.3008 -10.7002 -24 -24 -24h-240c-13.2998 0 -24 10.6992 -24 24v6.69922
c0 13.7002 -5.90039 26.8008 -16.0996 35.9004l-111.7 99.2998c-20.5 18.2998 -32.2002 44.4004 -32.2002 71.7998v66.4004c0 26.7998 21.9004 48.4004 48.7998 48c26.2998 -0.5 47.2002 -22.5 47.2002 -48.7998v-48.1006l8 -7.09961v136
c0 26.7998 21.9004 48.4004 48.7998 48c26.2998 -0.5 47.2002 -22.5 47.2002 -48.7998v-31.2002h8v48c0 26.7998 21.9004 48.4004 48.7998 48c26.2998 -0.5 47.2002 -22.5 47.2002 -48.7998v-47.2002h8v32c0 26.7998 21.9004 48.4004 48.7998 48
c26.2998 -0.5 47.2002 -22.5 47.2002 -48.7998v-31.2002h8c0 26.7998 21.9004 48.4004 48.7998 48z" />
    <glyph glyph-name="hand-paper" unicode="&#xf256;" horiz-adv-x="448" 
d="M408.781 319.993c21.7305 -0.416016 39.2188 -18.1621 39.2178 -39.9932v-150.359c0 -15.166 -1.77344 -29.8193 -5.10449 -43.9746l-26.5078 -112.66c-5.10156 -21.6816 -24.4502 -37.0059 -46.7236 -37.0059h-197.59c-15.9629 0 -30.0908 7.76562 -38.8193 19.7676
l-125.601 172.705c-12.9932 17.8672 -9.04297 42.8838 8.82129 55.877c17.8682 12.9941 42.8848 9.04297 55.877 -8.82227l31.6484 -43.5195v235.992c0 21.8311 17.4883 39.5771 39.2188 39.9932c22.4248 0.428711 40.7812 -18.3535 40.7812 -40.7832v-175.21h8v216
c0 21.8311 17.4883 39.5771 39.2188 39.9932c22.4248 0.428711 40.7812 -18.3535 40.7812 -40.7832v-215.21h8v177c0 21.8311 17.4883 39.5771 39.2188 39.9932c22.4248 0.428711 40.7812 -18.3535 40.7812 -40.7832v-176.21h8v87.21
c0 22.4297 18.3564 41.2119 40.7812 40.7832z" />
    <glyph glyph-name="hand-scissors" unicode="&#xf257;" 
d="M216 8c0 22.0918 17.9092 40 40 40v8h-32c-22.0908 0 -40 17.9082 -40 40s17.9092 40 40 40h32v8h-208c-26.5098 0 -48 21.4902 -48 48s21.4902 48 48 48h208v13.5723l-177.551 69.7393c-24.6738 9.69434 -36.8184 37.5557 -27.125 62.2285
c9.69238 24.6738 37.5537 36.8174 62.2275 27.124l190.342 -74.7646l24.8721 31.0898c12.3066 15.3809 33.9785 19.5146 51.0811 9.74121l112 -64c12.0605 -6.89355 20.1533 -19.8564 20.1533 -34.7305v-240c0 -18.5615 -12.7695 -34.6855 -30.8379 -38.9365l-136 -32
c-2.94824 -0.694336 -6.00391 -1.06348 -9.16211 -1.06348h-80c-22.0908 0 -40 17.9082 -40 40z" />
    <glyph glyph-name="hand-lizard" unicode="&#xf258;" horiz-adv-x="576" 
d="M384 -32v61.4609c0 8.5332 -4.4375 16.0166 -11.1543 20.2734l-111.748 70.8105c-7.41895 4.70215 -16.2656 7.45508 -25.6914 7.45508h-147.406c-13.2549 0 -24 10.7451 -24 24v8c0 35.3457 28.6543 64 64 64h123.648c13.3086 0 24.7158 8.12109 29.5371 19.6924
l21.4102 51.3848c4.94141 11.8555 -3.77051 24.9229 -16.6143 24.9229h-229.981c-30.9277 0 -56 25.0723 -56 56v16c0 13.2549 10.7451 24 24 24h333.544c17.0908 0 32.0781 -8.90137 40.583 -22.3682l163.04 -258.146c9.35645 -14.8145 14.833 -32.4619 14.833 -51.2637
v-116.222h-192z" />
    <glyph glyph-name="hand-spock" unicode="&#xf259;" 
d="M510.9 302.729l-68.2969 -286.823c-10.8975 -45.7705 -52.0801 -79.9062 -101.166 -79.9062h-127.363c-36.0293 0 -68.8447 14.0459 -93.1855 36.9531l-108.298 101.92c-7.72754 7.29297 -12.5537 17.6299 -12.5537 29.084c0 22.0723 17.9199 39.9922 39.9922 39.9922
c10.5742 0 20.2188 -4.11426 27.374 -10.8262l60.5928 -57.0254v0c0 27.958 -4.1084 54.9473 -11.6699 80.4668l-42.6885 144.075c-1.06738 3.60254 -1.63965 7.41699 -1.63965 11.3633c0 22.0801 17.9258 40.0059 40.0049 40.0059
c18.1338 0 33.4512 -12.0977 38.3525 -28.6504l37.1543 -125.395c1.02148 -3.44629 4.21387 -5.96387 7.99023 -5.96387c4.59766 0 8.33105 3.7334 8.33105 8.33105c0 0.717773 -0.09375 1.41016 -0.264648 2.07422l-50.3047 195.641
c-0.821289 3.19238 -1.25879 6.53711 -1.25879 9.98438c0 22.0742 17.9219 39.9961 39.9971 39.9961c18.6279 0 34.291 -12.793 38.7305 -30.043l56.0947 -218.158c1.15527 -4.49512 5.23926 -7.82129 10.0928 -7.82129c5.03125 0 9.23438 3.57715 10.207 8.32227
l37.6826 183.704c3.76074 18.2139 19.9043 31.9248 39.2256 31.9248c4.20703 0 8.26562 -0.629883 12.0771 -1.83496c19.8604 -6.2998 30.8623 -27.6738 26.6758 -48.085l-33.8389 -164.967c-0.101562 -0.492188 -0.154297 -1.00098 -0.154297 -1.52344
c0 -4.16797 3.38379 -7.55176 7.55176 -7.55176c3.56445 0 6.55566 2.48535 7.34668 5.80859l29.3975 123.459c4.19141 17.6016 20.0312 30.708 38.9082 30.708c22.0732 0 39.9941 -17.9209 39.9941 -39.9941c0 -3.19727 -0.380859 -6.26465 -1.09082 -9.24512v0z" />
    <glyph glyph-name="hand-pointer" unicode="&#xf25a;" horiz-adv-x="448" 
d="M448 208v-96c0 -3.08398 -0.356445 -6.15918 -1.06348 -9.16211l-32 -136c-4.25098 -18.0684 -20.375 -30.8379 -38.9365 -30.8379h-208c-13.3018 0 -25.0752 6.47168 -32.3496 16.4727l-127.997 176c-12.9932 17.8662 -9.04297 42.8838 8.82129 55.876
c17.8672 12.9941 42.8848 9.04297 55.877 -8.82227l31.6484 -43.5186v275.992c0 22.0908 17.9082 40 40 40s40 -17.9092 40 -40v-200h8v40c0 22.0908 17.9082 40 40 40s40 -17.9092 40 -40v-40h8v24c0 22.0908 17.9082 40 40 40s40 -17.9092 40 -40v-24h8
c0 22.0908 17.9082 40 40 40s40 -17.9092 40 -40zM192 128h-8v-96h8v96zM280 128h-8v-96h8v96zM368 128h-8v-96h8v96z" />
    <glyph glyph-name="hand-peace" unicode="&#xf25b;" horiz-adv-x="448" 
d="M408 232c22.0918 0 40 -17.9092 40 -40v-80c0 -3.1582 -0.369141 -6.21484 -1.06348 -9.16211l-32 -136c-4.25098 -18.0684 -20.375 -30.8379 -38.9365 -30.8379h-240c-14.874 0 -27.8379 8.09375 -34.7285 20.1543l-64 112
c-9.77441 17.1025 -5.64062 38.7744 9.74023 51.0811l31.0898 24.8721l-74.7646 190.342c-9.69336 24.6738 2.4502 52.5342 27.124 62.2266c24.6729 9.69434 52.5332 -2.4502 62.2275 -27.125l69.7393 -177.551h13.5723v208c0 26.5098 21.4902 48 48 48s48 -21.4902 48 -48
v-208h8v32c0 22.0908 17.9082 40 40 40s40 -17.9092 40 -40v-32h8c0 22.0908 17.9082 40 40 40z" />
    <glyph glyph-name="trademark" unicode="&#xf25c;" horiz-adv-x="640" 
d="M260.6 352c6.60059 0 12 -5.40039 11.9004 -12v-43.0996c0 -6.60059 -5.40039 -12 -12 -12h-85.0996v-240.9c0 -6.59961 -5.40039 -12 -12 -12h-54.3008c-6.59961 0 -12 5.40039 -12 12v240.9h-85.0996c-6.59961 0 -12 5.39941 -12 12v43.0996
c0 6.59961 5.40039 12 12 12h248.6zM640 45c0.5 -7 -5 -13 -12 -13h-53.9004c-6.2998 0 -11.5996 4.90039 -12 11.2002l-9.09961 132.899c-1.7998 24.2002 0 53.7002 0 53.7002h-0.900391s-10.6992 -33.5996 -17.8994 -53.7002l-30.7002 -84.6992
c-1.7002 -4.7002 -6.2002 -7.90039 -11.2998 -7.90039h-50.2998c-5.10059 0 -9.60059 3.2002 -11.3008 7.90039l-30.6992 84.6992c-7.2002 20.1006 -17.9004 53.7002 -17.9004 53.7002h-0.900391s1.80078 -29.5 0 -53.7002l-9.09961 -132.899
c-0.5 -6.2998 -5.7002 -11.2002 -12 -11.2002h-54.5c-7.09961 0 -12.5996 6 -12 13l24.4004 296c0.599609 6.2002 5.7998 11 12 11h65.3994c5.10059 0 9.60059 -3.2998 11.2998 -8.09961l43.8008 -127.101c7.19922 -20.5996 16.0996 -52.7998 16.0996 -52.7998h0.900391
s8.89941 32.2002 16.0996 52.7998l43.7998 127.101c1.60059 4.7998 6.2002 8.09961 11.2998 8.09961h65.4004c6.2998 0 11.5 -4.7998 12 -11z" />
    <glyph glyph-name="registered" unicode="&#xf25d;" 
d="M285.363 240.525c0 -18.6006 -9.83105 -28.4316 -28.4316 -28.4316h-29.876v56.1406h23.3779c28.668 0 34.9297 -8.77344 34.9297 -27.709zM504 192c0 -136.967 -111.033 -248 -248 -248s-248 111.033 -248 248s111.033 248 248 248s248 -111.033 248 -248z
M363.411 87.5859c-46.7295 84.8252 -43.2988 78.6357 -44.7021 80.9805c23.4316 15.1719 37.9453 42.9785 37.9453 74.4854c0 54.2441 -31.5 89.252 -105.498 89.252h-70.667c-13.2549 0 -24 -10.7451 -24 -24v-232.304c0 -13.2549 10.7451 -24 24 -24h22.5664
c13.2549 0 24 10.7451 24 24v71.6631h25.5566l44.1289 -82.9375c4.03516 -7.58301 12.0049 -12.7266 21.1875 -12.7266h24.4639c18.2617 0.000976562 29.8291 19.5908 21.0186 35.5869z" />
    <glyph glyph-name="tv" unicode="&#xf26c;" horiz-adv-x="640" 
d="M592 448c26.4922 0 48 -21.5078 48 -48v-320c0 -26.4922 -21.5078 -48 -48 -48h-240v-32h176c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-416c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h176v32h-240
c-26.4922 0 -48 21.5078 -48 48v320c0 26.4922 21.5078 48 48 48h544zM576 96v288h-512v-288h512z" />
    <glyph glyph-name="calendar-plus" unicode="&#xf271;" horiz-adv-x="448" 
d="M436 288h-424c-6.59961 0 -12 5.40039 -12 12v36c0 26.5 21.5 48 48 48h48v52c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-52h128v52c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-52h48c26.5 0 48 -21.5 48 -48v-36
c0 -6.59961 -5.40039 -12 -12 -12zM12 256h424c6.59961 0 12 -5.40039 12 -12v-260c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v260c0 6.59961 5.40039 12 12 12zM328 116c0 6.59961 -5.40039 12 -12 12h-60v60c0 6.59961 -5.40039 12 -12 12h-40
c-6.59961 0 -12 -5.40039 -12 -12v-60h-60c-6.59961 0 -12 -5.40039 -12 -12v-40c0 -6.59961 5.40039 -12 12 -12h60v-60c0 -6.59961 5.40039 -12 12 -12h40c6.59961 0 12 5.40039 12 12v60h60c6.59961 0 12 5.40039 12 12v40z" />
    <glyph glyph-name="calendar-minus" unicode="&#xf272;" horiz-adv-x="448" 
d="M436 288h-424c-6.59961 0 -12 5.40039 -12 12v36c0 26.5 21.5 48 48 48h48v52c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-52h128v52c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-52h48c26.5 0 48 -21.5 48 -48v-36
c0 -6.59961 -5.40039 -12 -12 -12zM12 256h424c6.59961 0 12 -5.40039 12 -12v-260c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v260c0 6.59961 5.40039 12 12 12zM316 64c6.59961 0 12 5.40039 12 12v40c0 6.59961 -5.40039 12 -12 12h-184
c-6.59961 0 -12 -5.40039 -12 -12v-40c0 -6.59961 5.40039 -12 12 -12h184z" />
    <glyph glyph-name="calendar-times" unicode="&#xf273;" horiz-adv-x="448" 
d="M436 288h-424c-6.59961 0 -12 5.40039 -12 12v36c0 26.5 21.5 48 48 48h48v52c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-52h128v52c0 6.59961 5.40039 12 12 12h40c6.59961 0 12 -5.40039 12 -12v-52h48c26.5 0 48 -21.5 48 -48v-36
c0 -6.59961 -5.40039 -12 -12 -12zM12 256h424c6.59961 0 12 -5.40039 12 -12v-260c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v260c0 6.59961 5.40039 12 12 12zM269.3 96l48.1006 48.0996c4.69922 4.7002 4.69922 12.3008 0 17l-28.3008 28.3008
c-4.69922 4.69922 -12.2998 4.69922 -17 0l-48.0996 -48.1006l-48.0996 48.1006c-4.7002 4.69922 -12.3008 4.69922 -17 0l-28.3008 -28.3008c-4.69922 -4.69922 -4.69922 -12.2998 0 -17l48.1006 -48.0996l-48.1006 -48.0996c-4.69922 -4.7002 -4.69922 -12.3008 0 -17
l28.3008 -28.3008c4.69922 -4.69922 12.2998 -4.69922 17 0l48.0996 48.1006l48.0996 -48.1006c4.7002 -4.69922 12.3008 -4.69922 17 0l28.3008 28.3008c4.69922 4.69922 4.69922 12.2998 0 17z" />
    <glyph glyph-name="calendar-check" unicode="&#xf274;" horiz-adv-x="448" 
d="M436 288h-424c-6.62695 0 -12 5.37305 -12 12v36c0 26.5098 21.4902 48 48 48h48v52c0 6.62695 5.37305 12 12 12h40c6.62695 0 12 -5.37305 12 -12v-52h128v52c0 6.62695 5.37305 12 12 12h40c6.62695 0 12 -5.37305 12 -12v-52h48c26.5098 0 48 -21.4902 48 -48v-36
c0 -6.62695 -5.37305 -12 -12 -12zM12 256h424c6.62695 0 12 -5.37305 12 -12v-260c0 -26.5098 -21.4902 -48 -48 -48h-352c-26.5098 0 -48 21.4902 -48 48v260c0 6.62695 5.37305 12 12 12zM345.296 160.053l-28.1689 28.3984
c-4.66699 4.70508 -12.2646 4.73535 -16.9697 0.0673828l-106.037 -105.184l-45.9805 46.3516c-4.66699 4.70508 -12.2656 4.73633 -16.9707 0.0683594l-28.3965 -28.1699c-4.70508 -4.66699 -4.73633 -12.2646 -0.0683594 -16.9697l82.6006 -83.2695
c4.66699 -4.70508 12.2656 -4.73535 16.9707 -0.0673828l142.952 141.805c4.70508 4.66699 4.73633 12.2646 0.0683594 16.9697z" />
    <glyph glyph-name="industry" unicode="&#xf275;" 
d="M475.115 284.219c15.9541 10.1514 36.8848 -1.33105 36.8848 -20.248v-271.971c0 -13.2549 -10.7451 -24 -24 -24h-464c-13.2549 0 -24 10.7451 -24 24v400c0 13.2549 10.7451 24 24 24h112c13.2549 0 24 -10.7451 24 -24v-196.309l139.115 88.5273
c15.9541 10.1514 36.8848 -1.33203 36.8848 -20.248v-68.2793z" />
    <glyph glyph-name="map-pin" unicode="&#xf276;" horiz-adv-x="288" 
d="M112 131.06c10.3896 -1.91992 21.0596 -3.05957 32 -3.05957s21.6104 1.13965 32 3.05957v-156.689l-22.0098 -33.0205c-4.75 -7.11914 -15.2207 -7.11914 -19.9707 0l-22.0195 33.0205v156.689zM144 448c79.5303 0 144 -64.4697 144 -144s-64.4697 -144 -144 -144
s-144 64.4697 -144 144s64.4697 144 144 144zM144 372c6.62012 0 12 5.37988 12 12s-5.37988 12 -12 12c-50.7197 0 -92 -41.2695 -92 -92c0 -6.62012 5.37988 -12 12 -12s12 5.37988 12 12c0 37.5 30.5 68 68 68z" />
    <glyph glyph-name="map-signs" unicode="&#xf277;" 
d="M507.31 363.31c6.25 -6.25 6.25 -16.3691 0 -22.6299l-43.3096 -43.3096c-6.00977 -6 -14.1396 -9.37012 -22.6299 -9.37012h-385.37c-13.25 0 -24 10.75 -24 24v80c0 13.25 10.75 24 24 24h168v16c0 8.83984 7.16016 16 16 16h32c8.83984 0 16 -7.16016 16 -16v-16
h153.37c8.49023 0 16.6299 -3.37012 22.6299 -9.37012zM224 -48v112h64v-112c0 -8.83984 -7.16016 -16 -16 -16h-32c-8.83984 0 -16 7.16016 -16 16zM456 224c13.25 0 24 -10.75 24 -24v-80c0 -13.25 -10.75 -24 -24 -24h-385.37
c-8.49023 0 -16.6299 3.37012 -22.6299 9.37012l-43.3096 43.3096c-6.25 6.25 -6.25 16.3799 0 22.6299l43.3096 43.3203c6.00977 6 14.1396 9.37012 22.6299 9.37012h153.37v32h64v-32h168z" />
    <glyph glyph-name="map" unicode="&#xf279;" horiz-adv-x="576" 
d="M0 330.34c0.00292969 13.4697 8.32617 24.9932 20.1201 29.71l139.88 55.9502v-384l-138.06 -62.8398c-10.5107 -4.2002 -21.9404 3.54004 -21.9404 14.8594v346.32zM192 32v384l192 -64v-384zM554.06 414.84c10.5107 4.2002 21.9404 -3.54004 21.9404 -14.8594v-346.32
c0 -13.4707 -8.32422 -24.9951 -20.1201 -29.71l-139.88 -55.9502v384z" />
    <glyph glyph-name="comment-alt" unicode="&#xf27a;" 
d="M448 448c35.2998 0 64 -28.7002 64 -64v-288c0 -35.2998 -28.7002 -64 -64 -64h-144l-124.9 -93.7002c-7.89941 -5.7998 -19.0996 -0.0996094 -19.0996 9.7002v84h-96c-35.2998 0 -64 28.7002 -64 64v288c0 35.2998 28.7002 64 64 64h384z" />
    <glyph glyph-name="pause-circle" unicode="&#xf28b;" 
d="M256 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM240 112v160c0 8.7998 -7.2002 16 -16 16h-48c-8.7998 0 -16 -7.2002 -16 -16v-160c0 -8.7998 7.2002 -16 16 -16h48c8.7998 0 16 7.2002 16 16zM352 112v160
c0 8.7998 -7.2002 16 -16 16h-48c-8.7998 0 -16 -7.2002 -16 -16v-160c0 -8.7998 7.2002 -16 16 -16h48c8.7998 0 16 7.2002 16 16z" />
    <glyph glyph-name="stop-circle" unicode="&#xf28d;" 
d="M256 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM352 112v160c0 8.7998 -7.2002 16 -16 16h-160c-8.7998 0 -16 -7.2002 -16 -16v-160c0 -8.7998 7.2002 -16 16 -16h160c8.7998 0 16 7.2002 16 16z" />
    <glyph glyph-name="shopping-bag" unicode="&#xf290;" horiz-adv-x="448" 
d="M352 288h96v-272c0 -44.1826 -35.8174 -80 -80 -80h-288c-44.1826 0 -80 35.8174 -80 80v272h96v32c0 70.5801 57.4199 128 128 128c70.5791 0 128 -57.4199 128 -128v-32zM160 320v-32h128v32c0 35.29 -28.71 64 -64 64s-64 -28.71 -64 -64zM320 200
c13.2549 0 24 10.7451 24 24s-10.7451 24 -24 24s-24 -10.7451 -24 -24s10.7451 -24 24 -24zM128 200c13.2549 0 24 10.7451 24 24s-10.7451 24 -24 24s-24 -10.7451 -24 -24s10.7451 -24 24 -24z" />
    <glyph glyph-name="shopping-basket" unicode="&#xf291;" horiz-adv-x="576" 
d="M576 232v-16c0 -13.2549 -10.7451 -24 -24 -24h-8l-26.1133 -182.788c-3.37793 -23.6465 -23.6299 -41.2119 -47.5166 -41.2119h-364.74c-23.8867 0 -44.1387 17.5654 -47.5176 41.2119l-26.1123 182.788h-8c-13.2549 0 -24 10.7451 -24 24v16
c0 13.2549 10.7451 24 24 24h67.3408l106.78 146.821c10.3945 14.292 30.4072 17.4531 44.7012 7.05762c14.293 -10.3945 17.4531 -30.4082 7.05762 -44.7012l-79.4033 -109.178h235.047l-79.4033 109.179c-10.3955 14.292 -7.23438 34.3066 7.05859 44.7012
c14.291 10.3955 34.3066 7.23535 44.7012 -7.05762l106.779 -146.822h67.3408c13.2549 0 24 -10.7451 24 -24zM312 56v112c0 13.2549 -10.7451 24 -24 24s-24 -10.7451 -24 -24v-112c0 -13.2549 10.7451 -24 24 -24s24 10.7451 24 24zM424 56v112
c0 13.2549 -10.7451 24 -24 24s-24 -10.7451 -24 -24v-112c0 -13.2549 10.7451 -24 24 -24s24 10.7451 24 24zM200 56v112c0 13.2549 -10.7451 24 -24 24s-24 -10.7451 -24 -24v-112c0 -13.2549 10.7451 -24 24 -24s24 10.7451 24 24z" />
    <glyph glyph-name="hashtag" unicode="&#xf292;" horiz-adv-x="448" 
d="M440.667 265.891c-1.00195 -5.61328 -5.91309 -9.89062 -11.8135 -9.89062h-79.0957l-22.8564 -128h74.8096c7.4707 0 13.126 -6.75391 11.8135 -14.1094l-7.14355 -40c-1.00195 -5.61328 -5.91309 -9.89062 -11.8125 -9.89062h-79.0967l-15.377 -86.1094
c-1.00195 -5.61328 -5.91309 -9.89062 -11.8125 -9.89062h-40.6318c-7.47266 0 -13.127 6.75391 -11.8135 14.1094l14.623 81.8906h-98.6338l-15.3779 -86.1094c-1.00195 -5.61328 -5.91309 -9.89062 -11.8135 -9.89062h-40.6318
c-7.4707 0 -13.126 6.75391 -11.8125 14.1094l14.623 81.8906h-74.8105c-7.4707 0 -13.126 6.75391 -11.8125 14.1094l7.14258 40c1.00195 5.61328 5.91309 9.89062 11.8135 9.89062h79.0957l22.8564 128h-74.8096c-7.4707 0 -13.126 6.75391 -11.8135 14.1094l7.14355 40
c1.00195 5.61328 5.91309 9.89062 11.8125 9.89062h79.0967l15.377 86.1094c1.00195 5.61328 5.91309 9.89062 11.8125 9.89062h40.6318c7.47266 0 13.127 -6.75391 11.8135 -14.1094l-14.623 -81.8906h98.6348l15.377 86.1094
c1.00195 5.61328 5.91309 9.89062 11.8135 9.89062h40.6318c7.4707 0 13.126 -6.75391 11.8125 -14.1094l-14.623 -81.8906h74.8105c7.4707 0 13.126 -6.75391 11.8125 -14.1094zM261.889 128l22.8574 128h-98.6338l-22.8574 -128h98.6338z" />
    <glyph glyph-name="percent" unicode="&#xf295;" horiz-adv-x="448" 
d="M112 224c-61.9004 0 -112 50.0996 -112 112s50.0996 112 112 112s112 -50.0996 112 -112s-50.0996 -112 -112 -112zM112 384c-26.5 0 -48 -21.5 -48 -48s21.5 -48 48 -48s48 21.5 48 48s-21.5 48 -48 48zM336 160c61.9004 0 112 -50.0996 112 -112
s-50.0996 -112 -112 -112s-112 50.0996 -112 112s50.0996 112 112 112zM336 0c26.5 0 48 21.5 48 48s-21.5 48 -48 48s-48 -21.5 -48 -48s21.5 -48 48 -48zM392.3 447.8l31.6006 0.100586c19.3994 0.0996094 30.8994 -21.8008 19.6992 -37.8008l-366.199 -463.699
c-4.33203 -6.17773 -11.4912 -10.1973 -19.6006 -10.2002l-33.3994 -0.100586c-19.5 0 -30.9004 21.9004 -19.7002 37.8008l368 463.699c4.5 6.40039 11.7998 10.2002 19.5996 10.2002z" />
    <glyph glyph-name="universal-access" unicode="&#xf29a;" 
d="M256 400c-114.971 0 -208 -93.0469 -208 -208c0 -114.971 93.0469 -208 208 -208c114.971 0 208 93.0469 208 208c0 114.971 -93.0469 208 -208 208zM256 440c136.967 0 248 -111.033 248 -248s-111.033 -248 -248 -248s-248 111.033 -248 248s111.033 248 248 248z
M256 384c106.039 0 192 -85.9609 192 -192s-85.9609 -192 -192 -192s-192 85.9609 -192 192s85.9609 192 192 192zM256 340c-19.8818 0 -36 -16.1182 -36 -36s16.1182 -36 36 -36s36 16.1182 36 36s-16.1182 36 -36 36zM373.741 241.977
c8.59961 2.03027 13.9258 10.6484 11.8965 19.249c-2.03027 8.60156 -10.6494 13.9258 -19.249 11.8955c-96.4912 -22.7832 -124.089 -22.8291 -220.774 0c-8.60254 2.03125 -17.2178 -3.29395 -19.249 -11.8955c-2.03125 -8.60059 3.29492 -17.2178 11.8945 -19.249
c28.7129 -6.7793 55.5127 -12.749 82.1416 -15.8066c-0.852539 -101.08 -12.3242 -123.08 -25.0371 -155.621c-3.61719 -9.25879 0.957031 -19.6982 10.2168 -23.3145c9.26465 -3.61914 19.7002 0.961914 23.3154 10.2168c8.72754 22.3408 17.0947 40.6982 22.2617 78.5488
h9.68555c5.1748 -37.9131 13.5566 -56.2412 22.2617 -78.5488c3.61621 -9.25977 14.0547 -13.834 23.3154 -10.2168c9.25977 3.61621 13.834 14.0547 10.2168 23.3145c-12.7305 32.5693 -24.1855 54.5986 -25.0371 155.621c26.6299 3.05859 53.4287 9.02832 82.1406 15.8066
z" />
    <glyph glyph-name="blind" unicode="&#xf29d;" horiz-adv-x="384" 
d="M380.15 -62.8369c-1.20898 -0.733398 -2.62695 -1.15625 -4.14258 -1.15625c-2.89941 0 -5.44336 1.53223 -6.84668 3.84277l-125.33 206.428c5.10547 2.02539 9.53809 5.2959 12.958 9.48438l126.048 -207.607c0.734375 -1.20898 1.15723 -2.62793 1.15723 -4.14355
c0 -2.89941 -1.53223 -5.44434 -3.84375 -6.84766zM142.803 133.662l62.8145 -153.537c6.69141 -16.3584 -1.14453 -35.042 -17.501 -41.7344c-16.3564 -6.69043 -35.04 1.1416 -41.7334 17.501l-36.1201 88.2852zM96 360c-24.3008 0 -44 19.6992 -44 44s19.6992 44 44 44
s44 -19.6992 44 -44s-19.6992 -44 -44 -44zM250.837 190.872c8.19336 -10.374 6.44434 -25.4922 -3.96582 -33.708c-9.33984 -7.37402 -24.5635 -7.61914 -33.708 3.96484l-102.3 129.217c-0.733398 0.924805 -1.86328 1.5127 -3.13281 1.5127
c-2.20801 0 -4.00098 -1.79297 -4.00098 -4.00098c0 -0.9375 0.323242 -1.7998 0.864258 -2.48242l31.4062 -39.8164v-107.196l-65.9258 -181.288c-6.04102 -16.6143 -24.4072 -25.1768 -41.0088 -19.1387c-16.6104 6.04004 -25.1787 24.4004 -19.1387 41.0098
l54.0732 148.693v140.698l-16 -20.5713v-79.7656c0 -13.0996 -10.4951 -23.748 -23.5361 -23.9961c-13.4531 -0.254883 -24.4639 11.0811 -24.4639 24.5361v95.6943l61.0557 78.5c4.72754 6.0791 11.7979 9.23633 18.9443 9.23926v0.0263672h32v-0.015625
c7.08691 -0.00390625 14.1035 -3.11719 18.8369 -9.1123z" />
    <glyph glyph-name="audio-description" unicode="&#xf29e;" 
d="M162.925 209.291l8.82227 -30.6553h-25.6064l9.04102 30.6523c1.27734 4.4209 2.65137 9.99414 3.87207 15.2451c1.2207 -5.25098 2.59473 -10.8232 3.87109 -15.2422zM329.399 241.39c28.6846 0 46.1748 -16.7656 46.1748 -49.0049
c0 -32.0977 -16.3994 -49.7754 -46.1748 -49.7754h-14.5234v98.7803h14.5234zM512 336v-288c0 -26.5098 -21.4902 -48 -48 -48h-416c-26.5098 0 -48 21.4902 -48 48v288c0 26.5098 21.4902 48 48 48h416c26.5098 0 48 -21.4902 48 -48zM245.459 111.861l-57.0967 168
c-1.6084 4.73242 -6.08887 8.13867 -11.3623 8.13867h-35.8936c-5.27344 0 -9.75391 -3.40625 -11.3623 -8.13867l-57.0967 -168c-2.64453 -7.7832 3.1416 -15.8613 11.3613 -15.8613h29.1328c5.47559 0 10.0977 3.67676 11.5352 8.69336l8.57422 29.9053h51.3672
l8.79297 -29.9766c1.46094 -4.97949 6.06543 -8.62207 11.5146 -8.62207h29.1719c8.2207 0 14.0059 8.07812 11.3613 15.8613zM430.16 192.386c0 58.9775 -37.9189 95.6143 -98.96 95.6143h-57.3662c-6.62695 0 -12 -5.37305 -12 -12v-168c0 -6.62695 5.37305 -12 12 -12
h57.3662c61.041 0 98.96 36.9326 98.96 96.3857z" />
    <glyph glyph-name="phone-volume" unicode="&#xf2a0;" horiz-adv-x="384" 
d="M97.333 -58.9658c-129.874 129.874 -129.681 340.252 0 469.933c5.69824 5.69824 14.5273 6.63184 21.2627 2.42188l64.8174 -40.5127c4.86035 -3.03711 8.09668 -8.43652 8.09668 -14.5859c0 -2.25098 -0.458984 -4.40137 -1.24805 -6.37207l-32.4082 -81.0205
c-2.5332 -6.33496 -8.73047 -10.8145 -15.9648 -10.8145c-0.583008 0 -1.13574 0.0380859 -1.7041 0.0947266l-55.8096 5.58008c-21.0508 -58.2607 -20.6123 -122.471 0 -179.515l55.8105 5.58105c0.568359 0.0566406 1.14551 0.0859375 1.72852 0.0859375
c7.23438 0 13.4072 -4.4707 15.9414 -10.8047l32.4072 -81.0225c0.789062 -1.9707 1.22266 -4.12207 1.22266 -6.37305c0 -6.14844 -3.21094 -11.5469 -8.07129 -14.585l-64.8174 -40.5127c-2.6377 -1.64844 -5.75391 -2.60156 -9.09082 -2.60156
c-4.74316 0 -9.06152 1.91211 -12.1729 5.02344zM247.126 352.527c11.832 -20.0469 11.832 -45.0088 0 -65.0557c-3.9502 -6.69238 -13.1084 -7.95898 -18.7178 -2.58105l-5.97559 5.72656c-3.91016 3.74805 -4.79297 9.62207 -2.26074 14.4102
c2.35645 4.46191 3.69141 9.5459 3.69141 14.9395c0 5.39258 -1.33496 10.543 -3.69141 15.0049c-2.5332 4.78809 -1.64941 10.6621 2.26074 14.4102l5.97559 5.72656c5.60938 5.37793 14.7676 4.11133 18.7178 -2.58105zM338.913 443.714
c60.1396 -71.6035 60.0918 -175.882 0 -247.428c-4.47363 -5.32715 -12.5303 -5.74609 -17.5518 -0.933594l-5.79785 5.55762c-4.56055 4.37109 -4.97754 11.5293 -0.930664 16.3789c49.6875 59.5381 49.6465 145.933 0 205.422
c-4.04688 4.84961 -3.63086 12.0078 0.930664 16.3789l5.79785 5.55762c5.02148 4.8125 13.0781 4.39355 17.5518 -0.933594zM292.941 398.773c36.0498 -46.3223 36.1074 -111.149 0 -157.547c-4.39062 -5.64062 -12.6973 -6.25098 -17.8564 -1.30371l-5.81836 5.5791
c-4.39941 4.21875 -4.99805 11.0947 -1.28418 15.9307c26.5352 34.5645 26.5332 82.5723 0 117.135c-3.71387 4.83594 -3.11523 11.7109 1.28418 15.9307l5.81836 5.5791c5.15918 4.94727 13.4658 4.33691 17.8564 -1.30371z" />
    <glyph glyph-name="braille" unicode="&#xf2a1;" horiz-adv-x="640" 
d="M128 192c0 -35.3457 -28.6543 -64 -64 -64s-64 28.6543 -64 64s28.6543 64 64 64s64 -28.6543 64 -64zM64 64c17.6729 0 32 -14.3271 32 -32s-14.3271 -32 -32 -32s-32 14.3271 -32 32s14.3271 32 32 32zM64 416c35.3457 0 64 -28.6543 64 -64s-28.6543 -64 -64 -64
s-64 28.6543 -64 64s28.6543 64 64 64zM224 224c17.6729 0 32 -14.3271 32 -32s-14.3271 -32 -32 -32s-32 14.3271 -32 32s14.3271 32 32 32zM224 64c17.6729 0 32 -14.3271 32 -32s-14.3271 -32 -32 -32s-32 14.3271 -32 32s14.3271 32 32 32zM224 416
c35.3457 0 64 -28.6543 64 -64s-28.6543 -64 -64 -64s-64 28.6543 -64 64s28.6543 64 64 64zM448 224c17.6729 0 32 -14.3271 32 -32s-14.3271 -32 -32 -32s-32 14.3271 -32 32s14.3271 32 32 32zM448 64c17.6729 0 32 -14.3271 32 -32s-14.3271 -32 -32 -32
s-32 14.3271 -32 32s14.3271 32 32 32zM448 416c35.3457 0 64 -28.6543 64 -64s-28.6543 -64 -64 -64s-64 28.6543 -64 64s28.6543 64 64 64zM608 224c17.6729 0 32 -14.3271 32 -32s-14.3271 -32 -32 -32s-32 14.3271 -32 32s14.3271 32 32 32zM608 64
c17.6729 0 32 -14.3271 32 -32s-14.3271 -32 -32 -32s-32 14.3271 -32 32s14.3271 32 32 32zM608 384c17.6729 0 32 -14.3271 32 -32s-14.3271 -32 -32 -32s-32 14.3271 -32 32s14.3271 32 32 32z" />
    <glyph glyph-name="assistive-listening-systems" unicode="&#xf2a2;" 
d="M216 188c0 -15.4639 -12.5361 -28 -28 -28s-28 12.5361 -28 28c0 44.1123 35.8877 80 80 80s80 -35.8877 80 -80c0 -15.4639 -12.5361 -28 -28 -28s-28 12.5361 -28 28c0 13.2344 -10.7666 24 -24 24s-24 -10.7656 -24 -24zM240 364c97.0469 0 176 -78.9531 176 -176
c0 -95.9863 -71.4053 -109.798 -72 -144.226c-0.124023 -59.4463 -48.5254 -107.774 -108 -107.774c-15.4639 0 -28 12.5361 -28 28s12.5361 28 28 28c28.6729 0 52 23.3271 52 52l0.00292969 0.37793c0.988281 73.3115 71.9971 68.458 71.9971 143.622
c0 66.168 -53.832 120 -120 120s-120 -53.832 -120 -120c0 -15.4639 -12.5361 -28 -28 -28s-28 12.5361 -28 28c0 97.0469 78.9531 176 176 176zM160 128c17.6729 0 32 -14.3271 32 -32s-14.3271 -32 -32 -32s-32 14.3271 -32 32s14.3271 32 32 32zM32 0
c17.6729 0 32 -14.3271 32 -32s-14.3271 -32 -32 -32s-32 14.3271 -32 32s14.3271 32 32 32zM512 187.993c0 -15.4639 -12.5371 -28 -28.001 -28s-28 12.5361 -28 28c0 1.12695 -0.00683594 2.24512 -0.0332031 3.36328l-0.00292969 0.1875
c-1.4668 91.4404 -60.1709 172.599 -146.077 201.953c-14.6318 5.00098 -22.4414 20.917 -17.4414 35.5498c5.00098 14.6328 20.917 22.4404 35.5498 17.4424c108.163 -36.959 182.082 -139.015 183.961 -253.965c0.0332031 -1.50684 0.0449219 -3.01367 0.0449219 -4.53125
zM152.971 8.9707l-33.9404 -33.9404l-80 80l33.9404 33.9404z" />
    <glyph glyph-name="american-sign-language-interpreting" unicode="&#xf2a3;" horiz-adv-x="640" 
d="M290.547 258.961c-20.2949 10.1494 -44.1465 11.1992 -64.7393 3.88965c42.6064 0 71.208 -20.4746 85.5781 -50.5752c8.57617 -17.8994 -5.14746 -38.0713 -23.6172 -38.0713c18.4297 0 32.2119 -20.1357 23.6172 -38.0713
c-14.7246 -30.8457 -46.123 -50.8535 -80.2979 -50.8535c-0.556641 0 -94.4707 8.61426 -94.4707 8.61426l-66.4062 -33.3467c-9.38379 -4.69336 -19.8145 -0.378906 -23.8945 7.78125l-44.4561 88.9248c-4.16699 8.61523 -1.11133 18.8975 6.94531 23.6211l58.0723 33.0693
l41.1221 74.1953c6.38965 57.2451 34.7314 109.768 79.7432 146.727c11.3906 9.44824 28.3408 7.78125 37.5098 -3.61328c9.44629 -11.3936 7.78027 -28.0674 -3.6123 -37.5156c-12.5029 -10.5596 -23.6172 -22.5098 -32.5088 -35.5703
c21.6719 14.7285 46.6787 24.7324 74.1865 28.0674c14.7246 1.94434 28.0625 -8.33594 29.7295 -23.0654c1.94531 -14.7275 -8.33594 -28.0674 -23.0615 -29.7344c-16.1162 -1.94434 -31.1201 -7.50293 -44.1787 -15.2832c26.1143 5.71289 58.7119 3.1377 88.0791 -11.1152
c13.3359 -6.66895 18.8936 -22.5088 12.2246 -35.8486c-6.38965 -13.0596 -22.5039 -18.6162 -35.5645 -12.2256zM263.318 189.489c-6.1123 12.5049 -18.3379 20.2861 -32.2314 20.2861h-0.107422c-19.5703 0 -35.46 -15.8896 -35.46 -35.46
c0 -0.0380859 0.00195312 -0.0732422 0.00292969 -0.110352c0 -21.4277 17.8076 -35.5703 35.5645 -35.5703c13.8936 0 26.1191 7.78125 32.2314 20.2861c4.44531 9.44922 13.6133 15.0059 23.3389 15.2842c-9.72559 0.277344 -18.8936 5.83496 -23.3389 15.2842z
M638.139 226.726c4.16797 -8.61426 1.11133 -18.8965 -6.94531 -23.6201l-58.0713 -33.0693l-41.1221 -74.1963c-6.38965 -57.2451 -34.7314 -109.767 -79.7432 -146.726c-10.9316 -9.1123 -27.7988 -8.14453 -37.5098 3.6123
c-9.44629 11.3945 -7.78027 28.0674 3.61328 37.5166c12.5029 10.5586 23.6162 22.5088 32.5078 35.5703c-21.6719 -14.7295 -46.6787 -24.7324 -74.1865 -28.0674c-10.0205 -2.50586 -27.5518 5.64258 -29.7295 23.0645c-1.94531 14.7285 8.33594 28.0674 23.0615 29.7344
c16.1162 1.94629 31.1201 7.50293 44.1787 15.2842c-26.1143 -5.71289 -58.7119 -3.1377 -88.0791 11.1152c-13.3359 6.66895 -18.8936 22.5088 -12.2246 35.8477c6.38965 13.0605 22.5049 18.6191 35.5654 12.2266c20.2949 -10.1484 44.1465 -11.1982 64.7393 -3.88965
c-42.6064 0 -71.208 20.4746 -85.5781 50.5762c-8.57617 17.8984 5.14746 38.0713 23.6172 38.0713c-18.4297 0 -32.2109 20.1357 -23.6172 38.0703c14.0332 29.3965 44.0391 50.8877 81.9658 50.8545l92.8027 -8.61523l66.4062 33.3467
c9.4082 4.7041 19.8281 0.354492 23.8936 -7.78027zM408.912 245.344c-13.8936 0 -26.1191 -7.78027 -32.2314 -20.2861c-4.44531 -9.44824 -13.6133 -15.0059 -23.3389 -15.2832c9.72559 -0.27832 18.8936 -5.83594 23.3389 -15.2842
c6.1123 -12.5049 18.3379 -20.2861 32.2314 -20.2861h0.107422c19.5703 0 35.46 15.8887 35.46 35.46c0 0.0371094 -0.00195312 0.0722656 -0.00292969 0.110352c0 21.4287 -17.8076 35.5693 -35.5645 35.5693z" />
    <glyph glyph-name="deaf" unicode="&#xf2a4;" 
d="M216 188c0 -15.4639 -12.5361 -28 -28 -28s-28 12.5361 -28 28c0 44.1123 35.8877 80 80 80s80 -35.8877 80 -80c0 -15.4639 -12.5361 -28 -28 -28s-28 12.5361 -28 28c0 13.2344 -10.7666 24 -24 24s-24 -10.7656 -24 -24zM240 364c97.0469 0 176 -78.9531 176 -176
c0 -95.9863 -71.4053 -109.798 -72 -144.226c-0.124023 -59.4463 -48.5254 -107.774 -108 -107.774c-15.4639 0 -28 12.5361 -28 28s12.5361 28 28 28c28.6729 0 52 23.3271 52 52l0.00292969 0.37793c0.988281 73.3115 71.9971 68.458 71.9971 143.622
c0 66.168 -53.832 120 -120 120s-120 -53.832 -120 -120c0 -15.4639 -12.5361 -28 -28 -28s-28 12.5361 -28 28c0 97.0469 78.9531 176 176 176zM508.485 416.201c4.68652 -4.68652 4.68652 -12.2842 0 -16.9727l-87.0303 -87.0283
c-4.68652 -4.68652 -12.2842 -4.68652 -16.9697 0l-28.2852 28.2852c-4.68652 4.68652 -4.68652 12.2842 0 16.9707l87.0283 87.0293c4.6875 4.68555 12.2842 4.68555 16.9717 0zM168.97 133.255l28.2861 -28.2842c4.68652 -4.68652 4.68652 -12.2852 0 -16.9707
l-148.484 -148.485c-4.6875 -4.68555 -12.2842 -4.68555 -16.9717 0l-28.2852 28.2842c-4.68555 4.6875 -4.68555 12.2852 0 16.9707l148.485 148.485c4.68555 4.68652 12.2842 4.68652 16.9697 0z" />
    <glyph glyph-name="sign-language" unicode="&#xf2a7;" horiz-adv-x="448" 
d="M91.4336 -35.9873c-0.306641 16.0186 13.1094 29.1289 29.1309 29.1289h62.293v5.71484h-125.864c-16.0215 0 -29.4375 13.1104 -29.1299 29.1289c0.296875 15.5234 12.9717 28.0146 28.5645 28.0146h126.43v5.71387h-153.722
c-16.0205 0 -29.4365 13.1113 -29.1299 29.1289c0.296875 15.5225 12.9727 28.0137 28.5664 28.0137h154.286v5.71387h-125.151c-16.0215 0 -29.4375 13.1104 -29.1299 29.1289c0.296875 15.5215 12.9727 28.0127 28.5654 28.0127h168.566l-31.085 22.6064
c-12.7617 9.28027 -15.583 27.1484 -6.30176 39.9121c9.28027 12.7607 27.1494 15.5811 39.9121 6.30176l123.36 -89.7148c8.57324 -6.23535 14.1201 -16.3271 14.1201 -27.7285v-141.136c0 -15.9102 -10.9463 -29.7305 -26.4326 -33.374l-80.4717 -18.9346
c-10.1113 -2.37891 -20.5771 -3.64551 -31.4102 -3.64551h-107.4c-15.5928 0.000976562 -28.2686 12.4922 -28.5664 28.0137zM164.683 189.714l-36.3711 46.71c-9.5791 12.3027 -7.51172 29.9795 4.55371 39.75c12.4502 10.083 31.0371 7.55273 40.8799 -5.08789
l13.0039 -16.7002c-17.1426 -15.6484 -15.4092 -43.0244 3.16992 -56.5361l11.1875 -8.13574h-36.4238zM447.981 191.817c0.0117188 -0.379883 0.0439453 -0.729492 0.0439453 -1.1123c0 -10.9961 -5.1875 -20.7891 -13.2461 -27.0654l-61.0645 -47.5488v16.999
c0 13.4834 -6.51074 26.2686 -17.415 34.1982l-123.359 89.7139c-12.6357 9.18945 -29.1934 9.16113 -41.6904 0.904297l-52.0527 66.8486c-9.84375 12.6416 -7.74121 31.2822 5.08594 40.8809c12.4297 9.30273 30.0732 6.97559 39.6523 -5.32812l77.6758 -99.7539
l4.50879 3.51172l-94.4434 121.287c-9.84277 12.6416 -7.74121 31.2822 5.08594 40.8818c12.4307 9.30176 30.0732 6.97461 39.6533 -5.32812l94.79 -121.734l4.50879 3.51074l-76.8887 98.7451c-9.84277 12.6416 -7.74121 31.2822 5.08594 40.8809
c12.4297 9.30273 30.0732 6.97559 39.6533 -5.32715l103.562 -133.001l-1.26172 38.4141c-0.518555 15.7715 11.8457 28.9756 27.6191 29.4932c15.7705 0.517578 28.9746 -11.8477 29.4922 -27.6191z" />
    <glyph glyph-name="low-vision" unicode="&#xf2a8;" horiz-adv-x="576" 
d="M569.344 216.369c4.20996 -7.13086 6.62598 -15.5469 6.62598 -24.4199c0 -8.87402 -2.41699 -17.1875 -6.62695 -24.3193c-31.9746 -54.2607 -79.6484 -98.3232 -136.81 -126.301l0.00683594 -0.00878906l43.1201 -58.377
c7.60156 -10.8594 4.95996 -25.8252 -5.90039 -33.4268l-13.1133 -9.17773c-10.8594 -7.59863 -25.8223 -4.95801 -33.4238 5.90039l-251.836 356.544c-13.5234 -6.16211 -26.5166 -13.3994 -38.7764 -21.5635l189.979 -271.399
c-11.4863 -1.21191 -22.4707 -1.83301 -34.2754 -1.83301c-15.1465 0 -30.0566 1.02344 -44.6641 3.00293l-40.6309 58.04h-0.00976562l-119.399 170.58c-10.457 -11.1943 -19.8271 -23.0791 -28.2939 -35.9121l124.19 -177.417
c-73.1172 25.4863 -134.358 76.0166 -172.858 141.349c-8.96484 15.2109 -8.76562 33.8643 0 48.7393c0.0107422 0.0166016 0.0234375 0.0332031 0.0332031 0.0498047c33.5459 56.8984 82.7676 99.8506 136.79 126.242l-43.1309 58.3945
c-7.60156 10.8604 -4.95996 25.8252 5.90039 33.4268l13.1143 9.17773c10.8584 7.59961 25.8213 4.95801 33.4229 -5.90039l52.7705 -72.1689c26.3496 6.79004 53.9834 10.4092 82.4512 10.4092c119.81 0 224.96 -63.9492 281.344 -159.631zM390.026 102.06
c21.1406 23.9658 33.9736 55.4365 33.9736 89.9404c0 75.1738 -60.8379 136 -136 136c-17.5117 0 -34.2422 -3.30566 -49.6084 -9.32324l19.0684 -27.2363c25.9883 7.96289 54.7598 5.56836 79.5098 -7.68066h-0.0292969c-23.6504 0 -42.8203 -19.1699 -42.8203 -42.8193
c0 -23.4717 18.9922 -42.8203 42.8203 -42.8203c23.6494 0 42.8193 19.1699 42.8193 42.8203v0.0292969c18.9111 -35.3271 15.8818 -79.1123 -8.7998 -111.68z" />
    <glyph glyph-name="handshake" unicode="&#xf2b5;" horiz-adv-x="640" 
d="M434.7 384c8.5 0 16.7002 -3.40039 22.5996 -9.40039l54.6006 -54.5996v-193.5c-2.40039 2.7002 -5 5.2998 -7.90039 7.7002l-145.6 118.2l26.0996 23.8994c6.5 6 7 16.1006 1 22.6006c-5.90039 6.5 -16.0996 6.89941 -22.5996 1l-79.9004 -73.2002
c-0.0996094 -0.100586 -0.299805 -0.100586 -0.400391 -0.200195c-16.6992 -14.9004 -43.3994 -11.2002 -56.0996 2.7002c-14.2002 15.5 -14.5 40.3994 2.09961 56c0.100586 0.0996094 0.200195 0.299805 0.300781 0.399414l98.2998 90
c5.89941 5.40039 13.5996 8.40039 21.5996 8.40039h85.9004zM544 319.8h96v-255.899h-64c-17.7002 0 -32 14.2998 -32 32v223.899zM592 95.9004c8.7998 0 16 7.19922 16 16c0 8.7998 -7.2002 16 -16 16s-16 -7.2002 -16 -16c0 -8.80078 7.2002 -16 16 -16zM0 64v255.8h96
v-223.8c0 -17.7002 -14.2998 -32 -32 -32h-64zM48 127.9c-8.7998 0 -16 -7.10059 -16 -16c0 -8.80078 7.2002 -16 16 -16s16 7.19922 16 16c0 8.7998 -7.2002 16 -16 16zM483.9 109.3c13.6992 -11.2002 15.7998 -31.2998 4.59961 -45.0996l-9.5 -11.7002
c-11.0996 -13.7998 -31.2998 -15.7998 -45 -4.7002l-5.40039 4.40039l-31.3994 -38.6006c-12.9004 -15.8994 -36.4004 -18.3994 -52.2998 -5.39941l-17.9004 15.5l-0.200195 -0.200195c-22.2998 -27.4004 -62.5996 -31.5996 -90 -9.2998l-90.5 81.8994h-18.2998v223.9
l54.7002 54.5996c6 6 14.0996 9.40039 22.5996 9.40039h83.7998l-81.7998 -74.9004c-29.2002 -26.7998 -31.2998 -72.2998 -4.39941 -101.699c26.5 -28.9004 72 -31.5 101.699 -4.40039l30 27.5z" />
    <glyph glyph-name="envelope-open" unicode="&#xf2b6;" 
d="M512 -16c0 -26.5098 -21.4902 -48 -48 -48h-416c-26.5098 0 -48 21.4902 -48 48v263.276c0 15.3379 7.17383 28.9863 18.3867 37.7754c24.9131 19.5293 45.501 35.3652 164.2 121.512c16.8252 12.2666 50.21 41.7832 73.4131 41.4336
c23.1982 0.353516 56.5957 -29.1719 73.4131 -41.4326c118.687 -86.1377 139.303 -101.995 164.2 -121.513c11.2129 -8.78906 18.3867 -22.4375 18.3867 -37.7754v-263.276zM446.334 180.605c-2.5625 3.72754 -7.7002 4.59473 -11.3389 1.90625
c-22.8447 -16.873 -55.4619 -40.7051 -105.582 -77.0791c-16.8252 -12.2656 -50.21 -41.7803 -73.4131 -41.4297c-23.2109 -0.34375 -56.5586 29.1436 -73.4131 41.4297c-50.1143 36.3701 -82.7344 60.2041 -105.582 77.0791
c-3.63867 2.68848 -8.77637 1.82129 -11.3389 -1.90625l-9.07227 -13.1963c-0.884766 -1.28711 -1.40332 -2.8457 -1.40332 -4.52539c0 -2.63867 1.26953 -4.98438 3.24219 -6.44141c22.8877 -16.8994 55.4541 -40.6904 105.304 -76.8682
c20.2734 -14.7812 56.5234 -47.8135 92.2637 -47.5732c35.7236 -0.242188 71.9609 32.7715 92.2627 47.5732c49.8506 36.1787 82.418 59.9697 105.304 76.8682c1.97266 1.45703 3.25391 3.79883 3.25391 6.4375c0 1.67969 -0.530273 3.24219 -1.41504 4.5293z" />
    <glyph glyph-name="address-book" unicode="&#xf2b9;" horiz-adv-x="448" 
d="M436 288h-20v-64h20c6.59961 0 12 -5.40039 12 -12v-40c0 -6.59961 -5.40039 -12 -12 -12h-20v-64h20c6.59961 0 12 -5.40039 12 -12v-40c0 -6.59961 -5.40039 -12 -12 -12h-20v-48c0 -26.5 -21.5 -48 -48 -48h-320c-26.5 0 -48 21.5 -48 48v416c0 26.5 21.5 48 48 48
h320c26.5 0 48 -21.5 48 -48v-48h20c6.59961 0 12 -5.40039 12 -12v-40c0 -6.59961 -5.40039 -12 -12 -12zM208 320c-35.2998 0 -64 -28.7002 -64 -64s28.7002 -64 64 -64s64 28.7002 64 64s-28.7002 64 -64 64zM320 83.2002v19.2002
c0 31.7998 -30.0996 57.5996 -67.2002 57.5996h-5c-12.2002 -5.09961 -25.7002 -8 -39.7998 -8s-27.5 2.90039 -39.7998 8h-5c-37.1006 0 -67.2002 -25.7998 -67.2002 -57.5996v-19.2002c0 -10.6006 10 -19.2002 22.4004 -19.2002h179.199
c12.4004 0 22.4004 8.59961 22.4004 19.2002z" />
    <glyph glyph-name="address-card" unicode="&#xf2bb;" horiz-adv-x="576" 
d="M528 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-480c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h480zM176 320c-35.2998 0 -64 -28.7002 -64 -64s28.7002 -64 64 -64s64 28.7002 64 64s-28.7002 64 -64 64zM288 83.2002v19.2002
c0 31.7998 -30.0996 57.5996 -67.2002 57.5996h-5c-12.2002 -5.09961 -25.7002 -8 -39.7998 -8s-27.5 2.90039 -39.7998 8h-5c-37.1006 0 -67.2002 -25.7998 -67.2002 -57.5996v-19.2002c0 -10.6006 10 -19.2002 22.4004 -19.2002h179.199
c12.4004 0 22.4004 8.59961 22.4004 19.2002zM512 136v16c0 4.40039 -3.59961 8 -8 8h-144c-4.40039 0 -8 -3.59961 -8 -8v-16c0 -4.40039 3.59961 -8 8 -8h144c4.40039 0 8 3.59961 8 8zM512 200v16c0 4.40039 -3.59961 8 -8 8h-144c-4.40039 0 -8 -3.59961 -8 -8v-16
c0 -4.40039 3.59961 -8 8 -8h144c4.40039 0 8 3.59961 8 8zM512 264v16c0 4.40039 -3.59961 8 -8 8h-144c-4.40039 0 -8 -3.59961 -8 -8v-16c0 -4.40039 3.59961 -8 8 -8h144c4.40039 0 8 3.59961 8 8z" />
    <glyph glyph-name="user-circle" unicode="&#xf2bd;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 344c-48.5996 0 -88 -39.4004 -88 -88s39.4004 -88 88 -88s88 39.4004 88 88s-39.4004 88 -88 88zM248 0c58.7002 0 111.3 26.5996 146.5 68.2002
c-18.7998 35.3994 -55.5996 59.7998 -98.5 59.7998c-2.40039 0 -4.7998 -0.400391 -7.09961 -1.09961c-12.9004 -4.2002 -26.6006 -6.90039 -40.9004 -6.90039s-27.9004 2.7002 -40.9004 6.90039c-2.2998 0.699219 -4.69922 1.09961 -7.09961 1.09961
c-42.9004 0 -79.7002 -24.4004 -98.5 -59.7998c35.2002 -41.6006 87.7998 -68.2002 146.5 -68.2002z" />
    <glyph glyph-name="id-badge" unicode="&#xf2c1;" horiz-adv-x="384" 
d="M336 448c26.5 0 48 -21.5 48 -48v-416c0 -26.5 -21.5 -48 -48 -48h-288c-26.5 0 -48 21.5 -48 48v416c0 26.5 21.5 48 48 48h288zM144 416c-8.7998 0 -16 -7.2002 -16 -16s7.2002 -16 16 -16h96c8.7998 0 16 7.2002 16 16s-7.2002 16 -16 16h-96zM192 288
c-35.2998 0 -64 -28.7002 -64 -64s28.7002 -64 64 -64s64 28.7002 64 64s-28.7002 64 -64 64zM304 51.2002v19.2002c0 31.7998 -30.0996 57.5996 -67.2002 57.5996h-5c-12.2002 -5.09961 -25.7002 -8 -39.7998 -8s-27.5 2.90039 -39.7998 8h-5
c-37.1006 0 -67.2002 -25.7998 -67.2002 -57.5996v-19.2002c0 -10.6006 10 -19.2002 22.4004 -19.2002h179.199c12.4004 0 22.4004 8.59961 22.4004 19.2002z" />
    <glyph glyph-name="id-card" unicode="&#xf2c2;" horiz-adv-x="576" 
d="M528 416c26.5 0 48 -21.5 48 -48v-16h-576v16c0 26.5 21.5 48 48 48h480zM0 16v304h576v-304c0 -26.5 -21.5 -48 -48 -48h-480c-26.5 0 -48 21.5 -48 48zM352 248v-16c0 -4.40039 3.59961 -8 8 -8h144c4.40039 0 8 3.59961 8 8v16c0 4.40039 -3.59961 8 -8 8h-144
c-4.40039 0 -8 -3.59961 -8 -8zM352 184v-16c0 -4.40039 3.59961 -8 8 -8h144c4.40039 0 8 3.59961 8 8v16c0 4.40039 -3.59961 8 -8 8h-144c-4.40039 0 -8 -3.59961 -8 -8zM352 120v-16c0 -4.40039 3.59961 -8 8 -8h144c4.40039 0 8 3.59961 8 8v16
c0 4.40039 -3.59961 8 -8 8h-144c-4.40039 0 -8 -3.59961 -8 -8zM176 256c-35.2998 0 -64 -28.7002 -64 -64s28.7002 -64 64 -64s64 28.7002 64 64s-28.7002 64 -64 64zM67.0996 51.7998c-3.19922 -9.7998 5.2002 -19.7998 15.6006 -19.7998h186.6
c10.4004 0 18.7998 9.90039 15.6006 19.7998c-8.40039 25.7002 -32.5 44.2002 -60.9004 44.2002h-8.2002c-12.2002 -5.09961 -25.7002 -8 -39.7998 -8s-27.5 2.90039 -39.7998 8h-8.2002c-28.4004 0 -52.5 -18.5 -60.9004 -44.2002z" />
    <glyph glyph-name="thermometer-full" unicode="&#xf2c7;" horiz-adv-x="256" 
d="M224 352v-203.347c19.9121 -22.5635 32 -52.1943 32 -84.6533c0 -70.6963 -57.3018 -128 -128 -128c-0.298828 0 -0.610352 0.000976562 -0.90918 0.00292969c-70.3018 0.488281 -127.448 58.3613 -127.089 128.664c0.164062 32.1973 12.2227 61.5771 31.998 83.9863
v203.347c0 53.0186 42.9814 96 96 96s96 -42.9814 96 -96zM128 -16c44.1123 0 80 35.8877 80 80c0 34.3379 -19.3701 52.1904 -32 66.502v221.498c0 26.4668 -21.5332 48 -48 48s-48 -21.5332 -48 -48v-221.498c-12.7334 -14.4277 -31.8262 -32.0996 -31.999 -66.0801
c-0.223633 -43.876 35.5635 -80.1162 79.4229 -80.4199zM192 64c0 -35.3457 -28.6543 -64 -64 -64s-64 28.6543 -64 64c0 23.6846 12.876 44.3486 32 55.417v232.583c0 17.6729 14.3271 32 32 32s32 -14.3271 32 -32v-232.583c19.124 -11.0684 32 -31.7324 32 -55.417z" />
    <glyph glyph-name="thermometer-three-quarters" unicode="&#xf2c8;" horiz-adv-x="256" 
d="M192 64c0 -35.3457 -28.6543 -64 -64 -64s-64 28.6543 -64 64c0 23.6846 12.876 44.3486 32 55.417v168.583c0 17.6729 14.3271 32 32 32s32 -14.3271 32 -32v-168.583c19.124 -11.0684 32 -31.7324 32 -55.417zM224 148.653c19.9121 -22.5635 32 -52.1943 32 -84.6533
c0 -70.6963 -57.3027 -128 -128 -128c-0.298828 0 -0.609375 0.000976562 -0.90918 0.00292969c-70.3018 0.488281 -127.448 58.3613 -127.089 128.664c0.164062 32.1982 12.2227 61.5781 31.998 83.9863v203.347c0 53.0186 42.9814 96 96 96s96 -42.9814 96 -96v-203.347z
M208 64c0 34.3389 -19.3701 52.1904 -32 66.502v221.498c0 26.4668 -21.5332 48 -48 48s-48 -21.5332 -48 -48v-221.498c-12.7324 -14.4277 -31.8252 -32.0996 -31.999 -66.0801c-0.223633 -43.876 35.5635 -80.1162 79.4229 -80.4199l0.576172 -0.00195312
c44.1123 0 80 35.8877 80 80z" />
    <glyph glyph-name="thermometer-half" unicode="&#xf2c9;" horiz-adv-x="256" 
d="M192 64c0 -35.3457 -28.6543 -64 -64 -64s-64 28.6543 -64 64c0 23.6846 12.876 44.3486 32 55.417v104.583c0 17.6729 14.3271 32 32 32s32 -14.3271 32 -32v-104.583c19.124 -11.0684 32 -31.7324 32 -55.417zM224 148.653c19.9121 -22.5635 32 -52.1943 32 -84.6533
c0 -70.6963 -57.3027 -128 -128 -128c-0.298828 0 -0.609375 0.000976562 -0.90918 0.00292969c-70.3018 0.488281 -127.448 58.3613 -127.089 128.664c0.164062 32.1982 12.2227 61.5781 31.998 83.9863v203.347c0 53.0186 42.9814 96 96 96s96 -42.9814 96 -96v-203.347z
M208 64c0 34.3389 -19.3701 52.1904 -32 66.502v221.498c0 26.4668 -21.5332 48 -48 48s-48 -21.5332 -48 -48v-221.498c-12.7324 -14.4277 -31.8252 -32.0996 -31.999 -66.0801c-0.223633 -43.876 35.5635 -80.1162 79.4229 -80.4199l0.576172 -0.00195312
c44.1123 0 80 35.8877 80 80z" />
    <glyph glyph-name="thermometer-quarter" unicode="&#xf2ca;" horiz-adv-x="256" 
d="M192 64c0 -35.3457 -28.6543 -64 -64 -64s-64 28.6543 -64 64c0 23.6846 12.876 44.3486 32 55.417v40.583c0 17.6729 14.3271 32 32 32s32 -14.3271 32 -32v-40.583c19.124 -11.0684 32 -31.7324 32 -55.417zM224 148.653c19.9121 -22.5635 32 -52.1943 32 -84.6533
c0 -70.6963 -57.3027 -128 -128 -128c-0.298828 0 -0.609375 0.000976562 -0.90918 0.00292969c-70.3018 0.488281 -127.448 58.3613 -127.089 128.664c0.164062 32.1982 12.2227 61.5781 31.998 83.9863v203.347c0 53.0186 42.9814 96 96 96s96 -42.9814 96 -96v-203.347z
M208 64c0 34.3389 -19.3701 52.1904 -32 66.502v221.498c0 26.4668 -21.5332 48 -48 48s-48 -21.5332 -48 -48v-221.498c-12.7324 -14.4277 -31.8252 -32.0996 -31.999 -66.0801c-0.223633 -43.876 35.5635 -80.1162 79.4229 -80.4199l0.576172 -0.00195312
c44.1123 0 80 35.8877 80 80z" />
    <glyph glyph-name="thermometer-empty" unicode="&#xf2cb;" horiz-adv-x="256" 
d="M192 64c0 -35.3457 -28.6543 -64 -64 -64s-64 28.6543 -64 64s28.6543 64 64 64s64 -28.6543 64 -64zM224 148.653c19.9121 -22.5635 32 -52.1943 32 -84.6533c0 -70.6963 -57.3027 -128 -128 -128c-0.298828 0 -0.609375 0.000976562 -0.90918 0.00292969
c-70.3018 0.488281 -127.448 58.3613 -127.089 128.664c0.164062 32.1982 12.2227 61.5781 31.998 83.9863v203.347c0 53.0186 42.9814 96 96 96s96 -42.9814 96 -96v-203.347zM208 64c0 34.3389 -19.3701 52.1904 -32 66.502v221.498c0 26.4668 -21.5332 48 -48 48
s-48 -21.5332 -48 -48v-221.498c-12.7324 -14.4277 -31.8252 -32.0996 -31.999 -66.0801c-0.223633 -43.876 35.5635 -80.1162 79.4229 -80.4199l0.576172 -0.00195312c44.1123 0 80 35.8877 80 80z" />
    <glyph glyph-name="shower" unicode="&#xf2cc;" 
d="M304 128c8.83105 0 16 -7.16895 16 -16s-7.16895 -16 -16 -16s-16 7.16895 -16 16s7.16895 16 16 16zM336 224c8.83105 0 16 -7.16895 16 -16s-7.16895 -16 -16 -16s-16 7.16895 -16 16s7.16895 16 16 16zM368 160c-8.83105 0 -16 7.16895 -16 16s7.16895 16 16 16
s16 -7.16895 16 -16s-7.16895 -16 -16 -16zM336 128c-8.83105 0 -16 7.16895 -16 16s7.16895 16 16 16s16 -7.16895 16 -16s-7.16895 -16 -16 -16zM304 192c8.83105 0 16 -7.16895 16 -16s-7.16895 -16 -16 -16s-16 7.16895 -16 16s7.16895 16 16 16zM432 224
c-8.83105 0 -16 7.16895 -16 16s7.16895 16 16 16s16 -7.16895 16 -16s-7.16895 -16 -16 -16zM384 208c0 8.83105 7.16895 16 16 16s16 -7.16895 16 -16s-7.16895 -16 -16 -16s-16 7.16895 -16 16zM368 256c8.83105 0 16 -7.16895 16 -16s-7.16895 -16 -16 -16
s-16 7.16895 -16 16s7.16895 16 16 16zM464 224c8.83105 0 16 -7.16895 16 -16s-7.16895 -16 -16 -16s-16 7.16895 -16 16s7.16895 16 16 16zM496 256c8.83105 0 16 -7.16895 16 -16s-7.16895 -16 -16 -16s-16 7.16895 -16 16s7.16895 16 16 16zM432 192
c8.83105 0 16 -7.16895 16 -16s-7.16895 -16 -16 -16s-16 7.16895 -16 16s7.16895 16 16 16zM400 160c8.83105 0 16 -7.16895 16 -16s-7.16895 -16 -16 -16s-16 7.16895 -16 16s7.16895 16 16 16zM336 96c8.83105 0 16 -7.16895 16 -16s-7.16895 -16 -16 -16
s-16 7.16895 -16 16s7.16895 16 16 16zM304 64c8.83105 0 16 -7.16895 16 -16s-7.16895 -16 -16 -16s-16 7.16895 -16 16s7.16895 16 16 16zM368 128c8.83105 0 16 -7.16895 16 -16s-7.16895 -16 -16 -16s-16 7.16895 -16 16s7.16895 16 16 16zM389.65 346.35
c2.89648 -2.89551 4.68945 -6.90039 4.68945 -11.3164s-1.79297 -8.41699 -4.68945 -11.3135l-169.381 -169.37c-2.89551 -2.89648 -6.90039 -4.68945 -11.3164 -4.68945s-8.41699 1.79297 -11.3135 4.68945l-11.2998 11.3105
c-2.89355 2.89551 -4.68457 6.89844 -4.68457 11.3125c0 4.41309 1.79102 8.41113 4.68457 11.3076l5.66016 5.66992c-19.7871 20.0811 -31.9951 47.6602 -32 78.0498c0 19.2402 5.2998 37.0801 13.9297 52.8604l-10 10c-10.5723 10.6055 -25.1416 17.167 -41.2861 17.167
c-2.58984 0 -5.1416 -0.169922 -7.64355 -0.49707c-30 -3.73047 -51 -31.7803 -51 -61.9307v-305.6c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v303.15c0 67.9395 55.4902 129.35 123.44 128.85
c33.4453 -0.166992 63.7471 -13.835 85.6592 -35.8496l10 -10c15.8203 8.5498 33.6602 13.8496 52.9004 13.8496c30.3916 -0.000976562 57.9707 -12.21 78.0498 -32l5.66992 5.66016c2.89648 2.89648 6.90137 4.68945 11.3174 4.68945s8.41699 -1.79297 11.3125 -4.68945z
" />
    <glyph glyph-name="bath" unicode="&#xf2cd;" 
d="M32 64v48h448v-48c-0.0576172 -28.2656 -12.3916 -53.6514 -32 -71.0898v-40.9102c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v16h-256v-16c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v40.9102
c-19.6084 17.4385 -31.9424 42.8242 -32 71.0898zM496 192c8.83105 0 16 -7.16895 16 -16v-16c0 -8.83105 -7.16895 -16 -16 -16h-480c-8.83105 0 -16 7.16895 -16 16v16c0 8.83105 7.16895 16 16 16h16v186.75c0 38.2197 31.0391 69.2656 69.2598 69.2656
c19.1113 0 36.4248 -7.75879 48.96 -20.2959l19.2607 -19.2695c29.8994 13.1299 59.1094 7.60938 79.7295 -8.62012l0.169922 0.169922c2.89551 2.89355 6.89941 4.68457 11.3125 4.68457s8.41211 -1.79102 11.3076 -4.68457l11.3096 -11.3096
c2.89746 -2.89648 4.69043 -6.90137 4.69043 -11.3174s-1.79297 -8.41699 -4.69043 -11.3135l-105.369 -105.369c-2.89648 -2.89746 -6.90137 -4.69043 -11.3174 -4.69043s-8.41699 1.79297 -11.3135 4.69043l-11.3096 11.3096
c-2.88477 2.89453 -4.66992 6.8916 -4.66992 11.2969c0 4.40625 1.78516 8.39844 4.66992 11.293l0.169922 0.169922c-16.2295 20.6201 -21.75 49.8506 -8.62012 79.7305l-19.2695 19.2598c-3.84766 3.84082 -9.16016 6.21289 -15.0205 6.21289
c-11.7178 0 -21.2344 -9.50098 -21.2598 -21.2129v-186.75h416z" />
    <glyph glyph-name="podcast" unicode="&#xf2ce;" horiz-adv-x="448" 
d="M267.429 -40.5635c-5.14258 -19.0098 -24.5703 -23.4365 -43.4287 -23.4365c-18.8574 0 -38.2861 4.42676 -43.4277 23.4365c-7.64551 28.4297 -20.5723 99.665 -20.5723 132.813c0 35.1562 31.1416 43.75 64 43.75s64 -8.59375 64 -43.75
c0 -32.9492 -12.8711 -104.179 -20.5713 -132.813zM156.867 159.446c2.6748 -2.61914 2.39941 -6.98535 -0.628906 -9.18555c-9.3125 -6.76465 -16.4609 -15.3418 -21.2354 -25.3623c-1.74219 -3.65723 -6.5 -4.6582 -9.45312 -1.8877
c-28.0176 26.2891 -45.5498 63.6279 -45.5498 104.989c0 80.7852 66.8691 146.247 148.163 143.941c76.1982 -2.16113 137.938 -64.1631 139.793 -140.369c1.04199 -42.7822 -16.6846 -81.5225 -45.5107 -108.565c-2.95215 -2.76855 -7.70801 -1.7627 -9.44922 1.8916
c-4.77441 10.0195 -11.9219 18.5977 -21.2344 25.3623c-3.02832 2.20117 -3.30273 6.56738 -0.62793 9.1875c17.8018 17.4355 28.8662 41.7246 28.8662 68.5518c0 54.1934 -45.1377 98.042 -99.793 95.9258c-49.7295 -1.9248 -90.0703 -42.1572 -92.124 -91.8809
c-1.17383 -28.4258 10.0908 -54.291 28.7842 -72.5986zM224 448c123.815 0 224 -100.205 224 -224c0 -90.1865 -52.7734 -165.727 -125.739 -201.407c-4.33203 -2.11914 -9.2666 1.54297 -8.53516 6.31055c2.55566 16.6416 4.625 33.1924 5.62402 47.2295
c48.4922 31.377 80.6504 85.9355 80.6504 147.867c0 97.2031 -79.207 176.253 -176.468 175.999c-96.2393 -0.250977 -174.938 -78.6621 -175.529 -174.899c-0.376953 -61.3311 30.7871 -115.541 78.1875 -147.347c1.52832 -1.02637 2.53125 -2.67578 2.67773 -4.51172
c1.06348 -13.3936 3.02344 -28.8271 5.40625 -44.3389c0.731445 -4.7666 -4.20215 -8.42871 -8.53516 -6.31055c-73.1377 35.7607 -125.739 111.416 -125.739 201.408c0 123.815 100.204 224 224 224zM224 288c35.3457 0 64 -28.6543 64 -64s-28.6543 -64 -64 -64
s-64 28.6543 -64 64s28.6543 64 64 64z" />
    <glyph glyph-name="window-maximize" unicode="&#xf2d0;" 
d="M464 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-416c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h416zM448 256v84c0 6.59961 -5.40039 12 -12 12h-360c-6.59961 0 -12 -5.40039 -12 -12v-84h384z" />
    <glyph glyph-name="window-minimize" unicode="&#xf2d1;" 
d="M464 96c26.5 0 48 -21.5 48 -48v-32c0 -26.5 -21.5 -48 -48 -48h-416c-26.5 0 -48 21.5 -48 48v32c0 26.5 21.5 48 48 48h416z" />
    <glyph glyph-name="window-restore" unicode="&#xf2d2;" 
d="M512 400v-288c0 -26.5 -21.5 -48 -48 -48h-48v208c0 44.0996 -35.9004 80 -80 80h-208v48c0 26.5 21.5 48 48 48h288c26.5 0 48 -21.5 48 -48zM384 272v-288c0 -26.5 -21.5 -48 -48 -48h-288c-26.5 0 -48 21.5 -48 48v288c0 26.5 21.5 48 48 48h288
c26.5 0 48 -21.5 48 -48zM316 244c0 6.59961 -5.40039 12 -12 12h-228c-6.59961 0 -12 -5.40039 -12 -12v-52h252v52z" />
    <glyph glyph-name="microchip" unicode="&#xf2db;" 
d="M416 400v-416c0 -26.5098 -21.4902 -48 -48 -48h-224c-26.5098 0 -48 21.4902 -48 48v416c0 26.5098 21.4902 48 48 48h224c26.5098 0 48 -21.4902 48 -48zM512 342v-12c0 -3.31152 -2.68848 -6 -6 -6h-18v-6c0 -3.31152 -2.68848 -6 -6 -6h-42v48h42
c3.31152 0 6 -2.68848 6 -6v-6h18c3.31152 0 6 -2.68848 6 -6zM512 246v-12c0 -3.31152 -2.68848 -6 -6 -6h-18v-6c0 -3.31152 -2.68848 -6 -6 -6h-42v48h42c3.31152 0 6 -2.68848 6 -6v-6h18c3.31152 0 6 -2.68848 6 -6zM512 150v-12c0 -3.31152 -2.68848 -6 -6 -6h-18v-6
c0 -3.31152 -2.68848 -6 -6 -6h-42v48h42c3.31152 0 6 -2.68848 6 -6v-6h18c3.31152 0 6 -2.68848 6 -6zM512 54v-12c0 -3.31152 -2.68848 -6 -6 -6h-18v-6c0 -3.31152 -2.68848 -6 -6 -6h-42v48h42c3.31152 0 6 -2.68848 6 -6v-6h18c3.31152 0 6 -2.68848 6 -6zM30 72h42
v-48h-42c-3.31152 0 -6 2.68848 -6 6v6h-18c-3.31152 0 -6 2.68848 -6 6v12c0 3.31152 2.68848 6 6 6h18v6c0 3.31152 2.68848 6 6 6zM30 168h42v-48h-42c-3.31152 0 -6 2.68848 -6 6v6h-18c-3.31152 0 -6 2.68848 -6 6v12c0 3.31152 2.68848 6 6 6h18v6
c0 3.31152 2.68848 6 6 6zM30 264h42v-48h-42c-3.31152 0 -6 2.68848 -6 6v6h-18c-3.31152 0 -6 2.68848 -6 6v12c0 3.31152 2.68848 6 6 6h18v6c0 3.31152 2.68848 6 6 6zM30 360h42v-48h-42c-3.31152 0 -6 2.68848 -6 6v6h-18c-3.31152 0 -6 2.68848 -6 6v12
c0 3.31152 2.68848 6 6 6h18v6c0 3.31152 2.68848 6 6 6z" />
    <glyph glyph-name="snowflake" unicode="&#xf2dc;" horiz-adv-x="448" 
d="M440.3 102.8c7.40039 -4.2002 9.90039 -13.7002 5.60059 -21l-15.5 -26.7998c-4.30078 -7.40039 -13.7002 -10 -21.1006 -5.7002l-33.7998 19.5l7 -26c2.2002 -8.2002 -2.7002 -16.7002 -10.9004 -18.8994l-14.8994 -4
c-8.2002 -2.2002 -16.7002 2.69922 -18.9004 10.8994l-19 70.7998l-62.7998 36.2002v-77.5l53.4004 -53.7002c6.19922 -6.19922 6.19922 -16.3994 0 -22.5996l-11.3008 -11.2998c-6.19922 -6.2002 -16.3994 -6.2002 -22.5996 0l-19.7002 19.7002v-40.4004
c0 -8.7998 -7.2002 -16 -16 -16h-32c-8.7998 0 -16 7.2002 -16 16v40.2998l-19.7002 -19.7002c-6.19922 -6.19922 -16.3994 -6.19922 -22.5996 0l-11.2998 11.3008c-6.2998 6.19922 -6.2998 16.3994 0 22.5996l53.7002 53.7002v77.5l-62.8008 -36.2002l-19 -70.7998
c-2.19922 -8.2002 -10.6992 -13.1006 -18.8994 -10.9004l-14.9004 4c-8.2002 2.2002 -13.0996 10.7002 -10.8994 18.9004l7 26l-33.8008 -19.5c-7.39941 -4.2002 -16.7998 -1.7002 -21.0996 5.7002l-15.5 26.7998c-4.2002 7.39941 -1.7002 16.7998 5.7002 21.0996
l33.7998 19.6006l-26 7c-8.2002 2.19922 -13.0996 10.6992 -10.9004 18.8994l4 14.9004c2.2002 8.2002 10.7002 13.0996 18.9004 10.8994l70.7998 -19l63.7998 36.9004l-63.7998 36.9004l-70.7998 -19c-8.2002 -2.2002 -16.7002 2.69922 -18.9004 10.8994l-4 14.9004
c-2.19922 8.2998 2.7002 16.7998 11 19l26 7l-33.7998 19.5c-7.39941 4.2998 -10 13.7002 -5.7002 21.0996l15.5 26.7002c4.30078 7.40039 13.7002 10 21.1006 5.7002l33.7998 -19.5l-7 26c-2.2002 8.2002 2.7002 16.7002 10.9004 18.8994l14.8994 4
c8.2002 2.2002 16.7002 -2.69922 18.9004 -10.8994l19 -70.7998l62.7998 -36.2002v77.5l-53.7002 53.7002c-6.2998 6.19922 -6.2998 16.3994 0 22.5996l11.4004 11.2998c6.2002 6.2002 16.3994 6.2002 22.5996 0l19.7002 -19.7002v40.4004c0 8.7998 7.2002 16 16 16h32
c8.7998 0 16 -7.2002 16 -16v-40.4004l19.7998 19.7002c6.2002 6.2002 16.4004 6.2002 22.6006 0l11.2998 -11.2998c6.2002 -6.2002 6.2002 -16.4004 0 -22.5996l-53.7002 -53.7002v-77.5l62.7998 36.2002l19 70.7998c2.2002 8.2002 10.7002 13.0996 18.9004 10.8994
l14.8994 -4c8.2002 -2.19922 13.1006 -10.6992 10.9004 -18.8994l-7 -26l33.7998 19.5c7.40039 4.2002 16.7998 1.7002 21.1006 -5.7002l15.5 -26.7998c4.19922 -7.40039 1.69922 -16.7998 -5.7002 -21.1006l-33.7998 -19.5l26 -7
c8.19922 -2.19922 13.0996 -10.6992 10.8994 -18.8994l-4 -14.9004c-2.2002 -8.2002 -10.7002 -13.0996 -18.8994 -10.8994l-70.8008 19l-63.7998 -36.9004l63.9004 -37l70.7998 19c8.2002 2.2002 16.7002 -2.7002 18.9004 -10.9004l4 -14.8994
c2.19922 -8.2002 -2.7002 -16.7002 -10.9004 -18.9004l-26 -7z" />
    <glyph glyph-name="utensil-spoon" unicode="&#xf2e5;" 
d="M480.1 416.1c55.1006 -55 34.5 -164.899 -28.5 -227.8c-49.2998 -49.2998 -110 -55.0996 -160.399 -28.7998l-192.4 -214.4c-10.3994 -11.5996 -28.5 -12.0996 -39.5 -1.09961l-51.2998 51.2998c-11.0996 11 -10.5996 29 1 39.5l214.5 192.4
c-26.2998 50.3994 -20.5 111.1 28.7998 160.399c62.9004 63 172.8 83.6006 227.8 28.5z" />
    <glyph glyph-name="utensils" unicode="&#xf2e7;" horiz-adv-x="416" 
d="M207.9 432.8c0.799805 -4.7002 16.0996 -94.5 16.0996 -128.8c0 -52.2998 -27.7998 -89.5996 -68.9004 -104.6l12.9004 -238.101c0.700195 -13.7002 -10.2002 -25.2998 -24 -25.2998h-64c-13.7002 0 -24.7002 11.5 -24 25.2998l12.9004 238.101
c-41.2002 15 -68.9004 52.3994 -68.9004 104.6c0 34.4004 15.2998 124.1 16.0996 128.8c3.2002 20.2998 45.3008 20.6006 47.9004 -1.09961v-141.2c1.2998 -3.40039 15.0996 -3.2002 16 0c1.40039 25.2998 7.90039 139.2 8 141.8c3.2998 20.7998 44.7002 20.7998 47.9004 0
c0.199219 -2.7002 6.59961 -116.5 8 -141.8c0.899414 -3.2002 14.7998 -3.40039 16 0v141.2c2.59961 21.5996 44.7998 21.3994 48 1.09961zM327.1 147.1c-156.5 122.4 -17.5996 300.9 64.9004 300.9c13.2998 0 24 -10.7998 24 -24v-464c0 -13.2998 -10.7002 -24 -24 -24h-56
c-14 0 -25.0996 12 -23.9004 26z" />
    <glyph glyph-name="undo-alt" unicode="&#xf2ea;" 
d="M255.545 440c136.809 0.245117 248.456 -111.193 248.455 -248.002c-0.000976562 -136.965 -111.034 -247.998 -248 -247.998c-63.9258 0 -122.202 24.1865 -166.178 63.9082c-5.11328 4.61816 -5.35449 12.5605 -0.482422 17.4326l39.6621 39.6621
c4.46191 4.46094 11.625 4.71387 16.3682 0.552734c30.6328 -26.8779 69.5029 -41.5557 110.63 -41.5557c93.8164 0 167.236 75.9912 167.994 166.552c0.798828 95.4648 -77.0859 170.24 -169.484 169.442c-42.4287 -0.366211 -82.3662 -16.374 -113.229 -45.2734
l41.75 -41.75c15.1191 -15.1201 4.41113 -40.9707 -16.9717 -40.9707h-134.059c-13.2549 0 -24 10.7451 -24 24v134.059c0 21.3828 25.8506 32.0908 40.9707 16.9707l35.7139 -35.7139c44.4229 42.4512 104.592 68.5654 170.86 68.6846z" />
    <glyph glyph-name="trash-alt" unicode="&#xf2ed;" horiz-adv-x="448" 
d="M32 -16v336h384v-336c0 -26.4922 -21.5078 -48 -48 -48h-288c-26.4922 0 -48 21.5078 -48 48zM304 240v-224c0 -8.83105 7.16895 -16 16 -16s16 7.16895 16 16v224c0 8.83105 -7.16895 16 -16 16s-16 -7.16895 -16 -16zM208 240v-224c0 -8.83105 7.16895 -16 16 -16
s16 7.16895 16 16v224c0 8.83105 -7.16895 16 -16 16s-16 -7.16895 -16 -16zM112 240v-224c0 -8.83105 7.16895 -16 16 -16s16 7.16895 16 16v224c0 8.83105 -7.16895 16 -16 16s-16 -7.16895 -16 -16zM432 416c8.83105 0 16 -7.16895 16 -16v-32
c0 -8.83105 -7.16895 -16 -16 -16h-416c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h120l9.40039 18.7002c3.85547 7.88574 11.9434 13.2998 21.3066 13.2998h0.0927734h114.3c0.00585938 0 -0.00195312 0.0234375 0.00390625 0.0234375
c9.41113 0 17.5645 -5.42871 21.4961 -13.3232l9.40039 -18.7002h120z" />
    <glyph glyph-name="sync-alt" unicode="&#xf2f1;" 
d="M370.72 314.72c-31.2617 29.2725 -71.832 45.3184 -114.872 45.2803c-77.458 -0.0683594 -144.328 -53.1777 -162.791 -126.85c-1.34375 -5.36328 -6.12207 -9.15039 -11.6504 -9.15039h-57.3037c-7.49707 0 -13.1934 6.80664 -11.8066 14.1758
c21.6367 114.9 122.518 201.824 243.704 201.824c66.4482 0 126.791 -26.1357 171.315 -68.6846l35.7148 35.7148c15.1191 15.1191 40.9697 4.41113 40.9697 -16.9717v-134.059c0 -13.2549 -10.7451 -24 -24 -24h-134.059c-21.3828 0 -32.0908 25.8506 -16.9717 40.9707z
M32 152h134.059c21.3828 0 32.0908 -25.8506 16.9717 -40.9707l-41.75 -41.75c31.2617 -29.2734 71.835 -45.3193 114.876 -45.2803c77.418 0.0703125 144.314 53.1436 162.787 126.849c1.34375 5.36328 6.12207 9.15039 11.6504 9.15039h57.3047
c7.49805 0 13.1934 -6.80664 11.8066 -14.1758c-21.6377 -114.898 -122.519 -201.822 -243.705 -201.822c-66.4482 0 -126.791 26.1357 -171.315 68.6846l-35.7148 -35.7148c-15.1191 -15.1191 -40.9697 -4.41113 -40.9697 16.9717v134.059c0 13.2549 10.7451 24 24 24z" />
    <glyph glyph-name="stopwatch" unicode="&#xf2f2;" horiz-adv-x="448" 
d="M432 144c0 -114.9 -93.0996 -208 -208 -208s-208 93.0996 -208 208c0 104 76.2998 190.2 176 205.5v34.5h-28c-6.59961 0 -12 5.40039 -12 12v40c0 6.59961 5.40039 12 12 12h120c6.59961 0 12 -5.40039 12 -12v-40c0 -6.59961 -5.40039 -12 -12 -12h-28v-34.5
c37.5 -5.7998 71.7002 -21.5996 99.7002 -44.5996l27.5 27.5c4.7002 4.69922 12.2998 4.69922 17 0l28.2998 -28.3008c4.7002 -4.69922 4.7002 -12.2998 0 -17l-29.4004 -29.3994l-0.599609 -0.600586c21.2002 -32.3994 33.5 -71.2998 33.5 -113.1zM256 108v151.5
c0 6.59961 -5.40039 12 -12 12h-40c-6.59961 0 -12 -5.40039 -12 -12v-151.5c0 -6.59961 5.40039 -12 12 -12h40c6.59961 0 12 5.40039 12 12z" />
    <glyph glyph-name="sign-out-alt" unicode="&#xf2f5;" 
d="M497 175l-168 -168c-15 -15 -41 -4.5 -41 17v96h-136c-13.2998 0 -24 10.7002 -24 24v96c0 13.2998 10.7002 24 24 24h136v96c0 21.4004 25.9004 32 41 17l168 -168c9.2998 -9.40039 9.2998 -24.5996 0 -34zM192 12c0 -6.59961 -5.40039 -12 -12 -12h-84
c-53 0 -96 43 -96 96v192c0 53 43 96 96 96h84c6.59961 0 12 -5.40039 12 -12v-40c0 -6.59961 -5.40039 -12 -12 -12h-84c-17.7002 0 -32 -14.2998 -32 -32v-192c0 -17.7002 14.2998 -32 32 -32h84c6.59961 0 12 -5.40039 12 -12v-40z" />
    <glyph glyph-name="sign-in-alt" unicode="&#xf2f6;" 
d="M416 0h-84c-6.59961 0 -12 5.40039 -12 12v40c0 6.59961 5.40039 12 12 12h84c17.7002 0 32 14.2998 32 32v192c0 17.7002 -14.2998 32 -32 32h-84c-6.59961 0 -12 5.40039 -12 12v40c0 6.59961 5.40039 12 12 12h84c53 0 96 -43 96 -96v-192c0 -53 -43 -96 -96 -96z
M369 201c9.2998 -9.40039 9.2998 -24.5996 0 -34l-168 -168c-15 -15 -41 -4.5 -41 17v96h-136c-13.2998 0 -24 10.7002 -24 24v96c0 13.2998 10.7002 24 24 24h136v96c0 21.5 26 32 41 17z" />
    <glyph glyph-name="redo-alt" unicode="&#xf2f9;" 
d="M256.455 440c66.2686 -0.119141 126.437 -26.2334 170.859 -68.6846l35.7148 35.7148c15.1201 15.1191 40.9707 4.41113 40.9707 -16.9717v-134.059c0 -13.2549 -10.7451 -24 -24 -24h-134.059c-21.3828 0 -32.0908 25.8506 -16.9717 40.9707l41.75 41.75
c-30.8633 28.8994 -70.8008 44.9072 -113.229 45.2734c-92.3984 0.797852 -170.283 -73.9775 -169.484 -169.442c0.757812 -90.5605 74.1777 -166.552 167.994 -166.552c41.127 0 79.9971 14.6777 110.629 41.5557c4.74316 4.16113 11.9062 3.9082 16.3682 -0.552734
l39.6621 -39.6621c4.87207 -4.87207 4.63086 -12.8145 -0.482422 -17.4326c-43.9746 -39.7217 -102.251 -63.9082 -166.177 -63.9082c-136.966 0 -247.999 111.033 -248 247.998c-0.000976562 136.809 111.646 248.247 248.455 248.002z" />
    <glyph glyph-name="poo" unicode="&#xf2fe;" 
d="M451.4 78.9004c34.2998 -5.5 60.5996 -35 60.5996 -70.9004c0 -39.7998 -32.2002 -72 -72 -72h-368c-39.7998 0 -72 32.2002 -72 72c0 35.9004 26.2998 65.4004 60.5996 70.9004c-17.2998 13.0996 -28.5996 33.6992 -28.5996 57.0996c0 39.7998 32.2002 72 72 72h14.0996
c-13.3994 11.7002 -22.0996 28.7998 -22.0996 48c0 35.2998 28.7002 64 64 64h16c44.2002 0 80 35.7998 80 80c0 17.4004 -5.7002 33.4004 -15.0996 46.5c4.89941 0.799805 9.89941 1.5 15.0996 1.5c53 0 96 -43 96 -96c0 -11.2998 -2.2998 -21.9004 -5.90039 -32h5.90039
c35.2998 0 64 -28.7002 64 -64c0 -19.2002 -8.7002 -36.2998 -22.0996 -48h14.0996c39.7998 0 72 -32.2002 72 -72c0 -23.4004 -11.2998 -44 -28.5996 -57.0996zM192 192c-17.7002 0 -32 -14.2998 -32 -32s14.2998 -32 32 -32s32 14.2998 32 32s-14.2998 32 -32 32z
M351.5 53c2 5.2998 -2 11 -7.7998 11h-175.4c-5.7998 0 -9.7998 -5.7002 -7.7998 -11c10.5 -27.9004 58.5 -53 95.5 -53s85 25.0996 95.5 53zM320 128c17.7002 0 32 14.2998 32 32s-14.2998 32 -32 32s-32 -14.2998 -32 -32s14.2998 -32 32 -32z" />
    <glyph glyph-name="images" unicode="&#xf302;" horiz-adv-x="576" 
d="M480 32v-16c0 -26.5098 -21.4902 -48 -48 -48h-384c-26.5098 0 -48 21.4902 -48 48v256c0 26.5098 21.4902 48 48 48h16v-208c0 -44.1123 35.8877 -80 80 -80h336zM576 112c0 -26.5098 -21.4902 -48 -48 -48h-384c-26.5098 0 -48 21.4902 -48 48v256
c0 26.5098 21.4902 48 48 48h384c26.5098 0 48 -21.4902 48 -48v-256zM256 320c0 26.5098 -21.4902 48 -48 48s-48 -21.4902 -48 -48s21.4902 -48 48 -48s48 21.4902 48 48zM160 176v-48h352v112l-87.5137 87.5146c-4.6875 4.68652 -12.2852 4.68652 -16.9717 0
l-135.515 -135.515l-39.5137 39.5146c-4.6875 4.68652 -12.2852 4.68652 -16.9717 0z" />
    <glyph glyph-name="pencil-alt" unicode="&#xf303;" 
d="M497.9 305.9l-46.1006 -46.1006c-4.7002 -4.7002 -12.2998 -4.7002 -17 0l-111 111c-4.7002 4.7002 -4.7002 12.2998 0 17l46.1006 46.1006c18.6992 18.6992 49.0996 18.6992 67.8994 0l60.1006 -60.1006c18.7998 -18.7002 18.7998 -49.0996 0 -67.8994zM284.2 348.2
c4.7002 4.7002 12.2998 4.7002 17.0996 0l111 -111c4.7002 -4.7002 4.7002 -12.2998 0 -17l-262.6 -262.601l-121.5 -21.2998c-16.4004 -2.7998 -30.7002 11.4004 -27.7998 27.7998l21.1992 121.5zM124.1 108.1c5.5 -5.5 14.3008 -5.5 19.8008 0l154 154
c5.5 5.5 5.5 14.3008 0 19.8008s-14.3008 5.5 -19.8008 0l-154 -154c-5.5 -5.5 -5.5 -14.3008 0 -19.8008zM88 24v48h-36.2998l-11.2998 -64.5l31.0996 -31.0996l64.5 11.2998v36.2998h-48z" />
    <glyph glyph-name="pen" unicode="&#xf304;" 
d="M290.74 354.76l128.02 -128.02l-277.99 -277.99l-114.14 -12.5996c-15.2803 -1.69043 -28.1895 11.2295 -26.4902 26.5098l12.7002 114.22zM497.94 373.82c18.75 -18.75 18.75 -49.1504 0 -67.9102l-56.5508 -56.5498l-128.02 128.02l56.5498 56.5498
c18.75 18.75 49.1602 18.75 67.9102 0z" />
    <glyph glyph-name="pen-alt" unicode="&#xf305;" 
d="M497.94 373.83c18.75 -18.7598 18.75 -49.1602 0 -67.9102l-56.5508 -56.5498l-128.02 128.02l56.5498 56.5508c18.75 18.75 49.1602 18.75 67.9102 0zM251.14 394.36l84.8506 -84.8506l82.7695 -82.7695l-196.79 -196.79
c-51.1611 -51.1592 -119.559 -85.4326 -195.34 -93.7998c-15.2803 -1.69043 -28.1895 11.2295 -26.4902 26.5098l0.0302734 0.229492c8.42188 75.6777 42.6777 143.978 93.7803 195.08l151.56 151.55l-22.6299 22.6201l-101.82 -101.819
c-6.25 -6.25 -16.3799 -6.25 -22.6299 0l-22.6299 22.6299c-6.25 6.24023 -6.25 16.3701 0 22.6201l118.78 118.79c15.6201 15.6201 40.9395 15.6201 56.5596 0z" />
    <glyph glyph-name="long-arrow-alt-down" unicode="&#xf309;" horiz-adv-x="256" 
d="M168 102.059h46.0576c21.3828 0 32.0908 -25.8516 16.9717 -40.9707l-86.0596 -86.0586c-9.37207 -9.37305 -24.5674 -9.37305 -33.9404 0l-86.0596 86.0586c-15.1191 15.1201 -4.41113 40.9707 16.9717 40.9707h46.0586v301.941c0 6.62695 5.37305 12 12 12h56
c6.62695 0 12 -5.37305 12 -12v-301.941z" />
    <glyph glyph-name="long-arrow-alt-left" unicode="&#xf30a;" horiz-adv-x="448" 
d="M134.059 152v-46.0576c0 -21.3828 -25.8516 -32.0908 -40.9707 -16.9717l-86.0586 86.0596c-9.37305 9.37207 -9.37305 24.5674 0 33.9404l86.0586 86.0596c15.1201 15.1191 40.9707 4.41113 40.9707 -16.9717v-46.0586h301.941c6.62695 0 12 -5.37305 12 -12v-56
c0 -6.62695 -5.37305 -12 -12 -12h-301.941z" />
    <glyph glyph-name="long-arrow-alt-right" unicode="&#xf30b;" horiz-adv-x="448" 
d="M313.941 232v46.0576c0 21.3828 25.8516 32.0908 40.9707 16.9717l86.0586 -86.0596c9.37305 -9.37207 9.37305 -24.5674 0 -33.9404l-86.0586 -86.0596c-15.1201 -15.1191 -40.9707 -4.41113 -40.9707 16.9717v46.0586h-301.941c-6.62695 0 -12 5.37305 -12 12v56
c0 6.62695 5.37305 12 12 12h301.941z" />
    <glyph glyph-name="long-arrow-alt-up" unicode="&#xf30c;" horiz-adv-x="256" 
d="M88 281.941h-46.0576c-21.3828 0 -32.0908 25.8516 -16.9717 40.9707l86.0596 86.0586c9.37207 9.37305 24.5674 9.37305 33.9404 0l86.0596 -86.0586c15.1191 -15.1201 4.41113 -40.9707 -16.9717 -40.9707h-46.0586v-301.941c0 -6.62695 -5.37305 -12 -12 -12h-56
c-6.62695 0 -12 5.37305 -12 12v301.941z" />
    <glyph glyph-name="expand-arrows-alt" unicode="&#xf31e;" horiz-adv-x="448" 
d="M448 104v-112v-0.0615234c0 -13.2129 -10.7275 -23.9395 -23.9395 -23.9395c-0.0205078 0 -0.0400391 0.000976562 -0.0605469 0.000976562h-112c-21.3896 0 -32.0898 25.9004 -17 41l36.2002 36.2002l-107.2 107.2l-107.23 -107.301l36.2305 -36.0996
c15.0898 -15.0996 4.38965 -41 -17 -41h-112h-0.0615234c-13.2129 0 -23.9395 10.7275 -23.9395 23.9395c0 0.0205078 0.000976562 0.0400391 0.000976562 0.0605469v112c0 21.4004 25.8896 32.0996 41 17l36.1904 -36.2002l107.27 107.2l-107.28 107.3l-36.1797 -36.2998
c-15.0996 -15.0996 -41 -4.40039 -41 17v112v0.0615234c0 13.2129 10.7275 23.9395 23.9395 23.9395c0.0205078 0 0.0400391 -0.000976562 0.0605469 -0.000976562h112c21.3896 0 32.0898 -25.9004 17 -41l-36.2002 -36.2002l107.2 -107.2l107.23 107.301l-36.2305 36.0996
c-15.0898 15.0996 -4.38965 41 17 41h112h0.0615234c13.2129 0 23.9395 -10.7275 23.9395 -23.9395c0 -0.0205078 -0.000976562 -0.0400391 -0.000976562 -0.0605469v-112c0 -21.4004 -25.8896 -32.0996 -41 -17l-36.1904 36.2002l-107.27 -107.2l107.28 -107.3
l36.1797 36.2002c15.0996 15.1992 41 4.5 41 -16.9004z" />
    <glyph glyph-name="clipboard" unicode="&#xf328;" horiz-adv-x="384" 
d="M384 336v-352c0 -26.5098 -21.4902 -48 -48 -48h-288c-26.5098 0 -48 21.4902 -48 48v352c0 26.5098 21.4902 48 48 48h80c0 35.29 28.71 64 64 64s64 -28.71 64 -64h80c26.5098 0 48 -21.4902 48 -48zM192 408c-13.2549 0 -24 -10.7451 -24 -24s10.7451 -24 24 -24
s24 10.7451 24 24s-10.7451 24 -24 24zM288 294v20c0 3.31152 -2.68848 6 -6 6h-180c-3.31152 0 -6 -2.68848 -6 -6v-20c0 -3.31152 2.68848 -6 6 -6h180c3.31152 0 6 2.68848 6 6z" />
    <glyph glyph-name="arrows-alt-h" unicode="&#xf337;" 
d="M377.941 278.059c0 21.3828 25.8516 32.0908 40.9707 16.9707l86.0586 -86.0596c9.37305 -9.37305 9.37305 -24.5674 0 -33.9404l-86.0586 -86.0596c-15.1201 -15.1191 -40.9707 -4.41113 -40.9707 16.9717v46.0586h-243.883v-46.0576
c0 -21.3828 -25.8516 -32.0908 -40.9707 -16.9717l-86.0586 86.0596c-9.37305 9.37305 -9.37305 24.5674 0 33.9404l86.0586 86.0596c15.1201 15.1191 40.9707 4.41113 40.9707 -16.9717v-46.0586h243.883v46.0586z" />
    <glyph glyph-name="arrows-alt-v" unicode="&#xf338;" horiz-adv-x="256" 
d="M214.059 70.0586c21.3828 0 32.0908 -25.8516 16.9707 -40.9707l-86.0596 -86.0586c-9.37305 -9.37305 -24.5674 -9.37305 -33.9404 0l-86.0596 86.0586c-15.1191 15.1201 -4.41113 40.9707 16.9717 40.9707h46.0586v243.883h-46.0576
c-21.3828 0 -32.0908 25.8516 -16.9717 40.9707l86.0596 86.0586c9.37305 9.37305 24.5674 9.37305 33.9404 0l86.0596 -86.0586c15.1191 -15.1201 4.41113 -40.9707 -16.9717 -40.9707h-46.0586v-243.883h46.0586z" />
    <glyph glyph-name="arrow-alt-circle-down" unicode="&#xf358;" 
d="M504 192c0 -137 -111 -248 -248 -248s-248 111 -248 248s111 248 248 248s248 -111 248 -248zM212 308v-116h-70.9004c-10.6992 0 -16.0996 -13 -8.5 -20.5l114.9 -114.3c4.7002 -4.7002 12.2002 -4.7002 16.9004 0l114.899 114.3c7.60059 7.59961 2.2002 20.5 -8.5 20.5
h-70.7998v116c0 6.59961 -5.40039 12 -12 12h-64c-6.59961 0 -12 -5.40039 -12 -12z" />
    <glyph glyph-name="arrow-alt-circle-left" unicode="&#xf359;" 
d="M256 -56c-137 0 -248 111 -248 248s111 248 248 248s248 -111 248 -248s-111 -248 -248 -248zM372 236h-116v70.9004c0 10.6992 -13 16.0996 -20.5 8.5l-114.3 -114.9c-4.7002 -4.7002 -4.7002 -12.2002 0 -16.9004l114.3 -114.899
c7.59961 -7.60059 20.5 -2.2002 20.5 8.5v70.7998h116c6.59961 0 12 5.40039 12 12v64c0 6.59961 -5.40039 12 -12 12z" />
    <glyph glyph-name="arrow-alt-circle-right" unicode="&#xf35a;" 
d="M256 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM140 148h116v-70.9004c0 -10.6992 13 -16.0996 20.5 -8.5l114.3 114.9c4.7002 4.7002 4.7002 12.2002 0 16.9004l-114.3 115c-7.59961 7.59961 -20.5 2.19922 -20.5 -8.5
v-70.9004h-116c-6.59961 0 -12 -5.40039 -12 -12v-64c0 -6.59961 5.40039 -12 12 -12z" />
    <glyph glyph-name="arrow-alt-circle-up" unicode="&#xf35b;" 
d="M8 192c0 137 111 248 248 248s248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248zM300 76v116h70.9004c10.6992 0 16.0996 13 8.5 20.5l-114.9 114.3c-4.7002 4.7002 -12.2002 4.7002 -16.9004 0l-115 -114.3c-7.59961 -7.59961 -2.19922 -20.5 8.5 -20.5
h70.9004v-116c0 -6.59961 5.40039 -12 12 -12h64c6.59961 0 12 5.40039 12 12z" />
    <glyph glyph-name="external-link-alt" unicode="&#xf35d;" 
d="M432 128c8.83105 0 16 -7.16895 16 -16v-128c0 -26.4922 -21.5078 -48 -48 -48h-352c-26.4922 0 -48 21.5078 -48 48v352c0 26.4922 21.5078 48 48 48h160c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-144v-320h320v112
c0 8.83105 7.16895 16 16 16h32zM488 448c13.2461 0 24 -10.7539 24 -24v-128c0 -21.5 -26 -32 -41 -17l-35.7197 35.6797l-243.61 -243.68c-4.34668 -4.36133 -10.3652 -7.0625 -17.0029 -7.0625s-12.6504 2.70117 -16.9971 7.0625l-22.6699 22.6299
c-4.36133 4.34668 -7.0625 10.3652 -7.0625 17.0029c0 6.63867 2.70117 12.6504 7.0625 16.9971l243.73 243.64l-35.7305 35.7305c-15.0498 15.0898 -4.37012 41 17 41h128z" />
    <glyph glyph-name="external-link-square-alt" unicode="&#xf360;" horiz-adv-x="448" 
d="M448 368v-352c0 -26.5098 -21.4902 -48 -48 -48h-352c-26.5098 0 -48 21.4902 -48 48v352c0 26.5098 21.4902 48 48 48h352c26.5098 0 48 -21.4902 48 -48zM360 352h-111.971c-21.3135 0 -32.0801 -25.8613 -16.9717 -40.9707l31.9844 -31.9873l-195.527 -195.527
c-4.68555 -4.68555 -4.68555 -12.2832 0 -16.9707l31.0293 -31.0293c4.6875 -4.68555 12.2852 -4.68555 16.9707 0l195.526 195.526l31.9883 -31.9912c15.0283 -15.0264 40.9707 -4.47461 40.9707 16.9717v111.979c0 13.2549 -10.7451 24 -24 24z" />
    <glyph glyph-name="exchange-alt" unicode="&#xf362;" 
d="M0 280v16c0 13.2549 10.7451 24 24 24h360v48c0 21.3672 25.8994 32.042 40.9707 16.9707l80 -80c9.37207 -9.37305 9.37207 -24.5684 0 -33.9404l-80 -80c-15.0146 -15.0127 -40.9707 -4.48633 -40.9707 16.9697v48h-360c-13.2549 0 -24 10.7451 -24 24zM488 128
c13.2549 0 24 -10.7451 24 -24v-16c0 -13.2549 -10.7451 -24 -24 -24h-360v-48c0 -21.4365 -25.9434 -31.9971 -40.9707 -16.9697l-80 80c-9.37207 9.37207 -9.37207 24.5674 0 33.9404l80 80c15.1084 15.1094 40.9707 4.34375 40.9707 -16.9707v-48h360z" />
    <glyph glyph-name="cloud-download-alt" unicode="&#xf381;" horiz-adv-x="640" 
d="M537.6 221.4c58.4004 -11.8008 102.4 -63.5 102.4 -125.4c0 -70.7002 -57.2998 -128 -128 -128h-368c-79.5 0 -144 64.5 -144 144c0 62.7998 40.2002 116.2 96.2002 135.9c-0.100586 2.69922 -0.200195 5.39941 -0.200195 8.09961c0 88.4004 71.5996 160 160 160
c59.2998 0 111 -32.2002 138.7 -80.2002c15.2002 10.2002 33.5996 16.2002 53.2998 16.2002c53 0 96 -43 96 -96c0 -12.2002 -2.2998 -23.9004 -6.40039 -34.5996zM404.7 132.7c10.0996 10.0996 2.89941 27.2998 -11.2998 27.2998h-65.4004v112c0 8.7998 -7.2002 16 -16 16
h-48c-8.7998 0 -16 -7.2002 -16 -16v-112h-65.4004c-14.1992 0 -21.3994 -17.2002 -11.2998 -27.2998l105.4 -105.4c6.2002 -6.2002 16.3994 -6.2002 22.5996 0z" />
    <glyph glyph-name="cloud-upload-alt" unicode="&#xf382;" horiz-adv-x="640" 
d="M537.6 221.4c58.4004 -11.8008 102.4 -63.5 102.4 -125.4c0 -70.7002 -57.2998 -128 -128 -128h-368c-79.5 0 -144 64.5 -144 144c0 62.7998 40.2002 116.2 96.2002 135.9c-0.100586 2.69922 -0.200195 5.39941 -0.200195 8.09961c0 88.4004 71.5996 160 160 160
c59.2998 0 111 -32.2002 138.7 -80.2002c15.2002 10.2002 33.5996 16.2002 53.2998 16.2002c53 0 96 -43 96 -96c0 -12.2002 -2.2998 -23.9004 -6.40039 -34.5996zM393.4 160c14.1992 0 21.3994 17.2002 11.2998 27.2998l-105.4 105.4
c-6.2002 6.2002 -16.3994 6.2002 -22.5996 0l-105.4 -105.4c-10.0996 -10.0996 -3 -27.2998 11.2998 -27.2998h65.4004v-112c0 -8.7998 7.2002 -16 16 -16h48c8.7998 0 16 7.2002 16 16v112h65.4004z" />
    <glyph glyph-name="gem" unicode="&#xf3a5;" horiz-adv-x="576" 
d="M485.5 448l90.5 -160h-101.1l-69.2002 160h79.7998zM357.5 448l69.2002 -160h-277.4l69.2002 160h139zM90.5 448h79.7998l-69.2002 -160h-101.1zM0 256h100.7l123 -251.7c1.5 -3.09961 -2.7002 -5.89941 -5 -3.2998zM148.2 256h279.6l-137 -318.2
c-1 -2.39941 -4.5 -2.39941 -5.5 0zM352.3 4.2998l123 251.7h100.7l-218.7 -254.9c-2.2998 -2.69922 -6.5 0.100586 -5 3.2002z" />
    <glyph glyph-name="level-down-alt" unicode="&#xf3be;" horiz-adv-x="320" 
d="M313.553 55.6689l-103.966 -112.003c-9.48535 -10.2139 -25.6758 -10.2295 -35.1738 0l-103.975 112.003c-14.2061 15.2998 -3.37695 40.3311 17.5869 40.3311h63.9746v272h-83.9756c-3.31152 0 -6.31348 1.34277 -8.48535 3.51465l-56 56
c-7.56055 7.55957 -2.20605 20.4854 8.48535 20.4854h195.976c13.2549 0 24 -10.7451 24 -24v-328h63.9658c20.8779 0 31.8516 -24.9688 17.5869 -40.3311z" />
    <glyph glyph-name="level-up-alt" unicode="&#xf3bf;" horiz-adv-x="320" 
d="M313.553 328.331c14.2646 -15.3623 3.29102 -40.3311 -17.5869 -40.3311h-63.9658v-328c0 -13.2549 -10.7451 -24 -24 -24h-195.976c-10.6914 0 -16.0459 12.9258 -8.48535 20.4854l56 56c2.17188 2.17188 5.17383 3.51465 8.48535 3.51465h83.9756v272h-63.9746
c-20.9639 0 -31.793 25.0312 -17.5869 40.3311l103.975 112.003c9.49805 10.2295 25.6885 10.2139 35.1738 0z" />
    <glyph glyph-name="lock-open" unicode="&#xf3c1;" horiz-adv-x="576" 
d="M423.5 448c84 0.299805 152.5 -68 152.5 -152v-80c0 -13.2998 -10.7002 -24 -24 -24h-32c-13.2998 0 -24 10.7002 -24 24v80c0 39.9004 -32.7002 72.4004 -72.7002 72c-39.5996 -0.400391 -71.2998 -33.2998 -71.2998 -72.9004v-71.0996h48c26.5 0 48 -21.5 48 -48v-192
c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v192c0 26.5 21.5 48 48 48h224v70.5c0 84 67.5 153.2 151.5 153.5z" />
    <glyph glyph-name="map-marker-alt" unicode="&#xf3c5;" horiz-adv-x="384" 
d="M172.268 -53.6699c-145.298 210.639 -172.268 232.257 -172.268 309.67c0 106.039 85.9609 192 192 192s192 -85.9609 192 -192c0 -77.4131 -26.9697 -99.0312 -172.268 -309.67c-9.53516 -13.7744 -29.9307 -13.7734 -39.4648 0zM192 176c44.1826 0 80 35.8174 80 80
s-35.8174 80 -80 80s-80 -35.8174 -80 -80s35.8174 -80 80 -80z" />
    <glyph glyph-name="microphone-alt" unicode="&#xf3c9;" horiz-adv-x="352" 
d="M336 256c8.83984 0 16 -7.16016 16 -16v-48c0 -88.9004 -66.29 -162.47 -152 -174.23v-33.7695h56c8.83984 0 16 -7.16016 16 -16v-16c0 -8.83984 -7.16016 -16 -16 -16h-160c-8.83984 0 -16 7.16016 -16 16v16c0 8.83984 7.16016 16 16 16h56v34.1504
c-88.0303 12.1396 -152 92.0498 -152 181.689v40.1602c0 8.83984 7.16016 16 16 16h16c8.83984 0 16 -7.16016 16 -16v-42.2998c0 -66.8105 48.71 -126.59 115.21 -133.08c76.2998 -7.44043 140.79 52.5801 140.79 127.38v48c0 8.83984 7.16016 16 16 16h16zM176 96
c-53.0195 0 -96 42.9805 -96 96v160c0 53.0195 42.9805 96 96 96s96 -42.9805 96 -96h-85.3301c-5.88965 0 -10.6699 -3.58008 -10.6699 -8v-16c0 -4.41992 4.78027 -8 10.6699 -8h85.3301v-32h-85.3301c-5.88965 0 -10.6699 -3.58008 -10.6699 -8v-16
c0 -4.41992 4.78027 -8 10.6699 -8h85.3301v-32h-85.3301c-5.88965 0 -10.6699 -3.58008 -10.6699 -8v-16c0 -4.41992 4.78027 -8 10.6699 -8h85.3301c0 -53.0195 -42.9805 -96 -96 -96z" />
    <glyph glyph-name="mobile-alt" unicode="&#xf3cd;" horiz-adv-x="320" 
d="M272 448c26.5 0 48 -21.5 48 -48v-416c0 -26.5 -21.5 -48 -48 -48h-224c-26.5 0 -48 21.5 -48 48v416c0 26.5 21.5 48 48 48h224zM160 -32c17.7002 0 32 14.2998 32 32s-14.2998 32 -32 32s-32 -14.2998 -32 -32s14.2998 -32 32 -32zM272 76v312
c0 6.59961 -5.40039 12 -12 12h-200c-6.59961 0 -12 -5.40039 -12 -12v-312c0 -6.59961 5.40039 -12 12 -12h200c6.59961 0 12 5.40039 12 12z" />
    <glyph glyph-name="money-bill-alt" unicode="&#xf3d1;" horiz-adv-x="640" 
d="M352 160c4.41992 0 8 -3.58008 8 -8v-16c0 -4.41992 -3.58008 -8 -8 -8h-64c-4.41992 0 -8 3.58008 -8 8v16c0 4.41992 3.58008 8 8 8h16v55.4404l-0.469727 -0.310547c-1.26855 -0.845703 -2.79395 -1.35156 -4.43164 -1.35156
c-2.77734 0 -5.22559 1.41895 -6.6582 3.57129l-8.88086 13.3105c-0.845703 1.26758 -1.35156 2.79395 -1.35156 4.43066c0 2.77734 1.41992 5.22656 3.57227 6.65918l15.3301 10.2197c3.93945 2.62988 8.56934 4.03027 13.3096 4.03027h13.5801c4.41992 0 8 -3.58008 8 -8
v-88h16zM608 384c17.6699 0 32 -14.3301 32 -32v-320c0 -17.6699 -14.3301 -32 -32 -32h-576c-17.6699 0 -32 14.3301 -32 32v320c0 17.6699 14.3301 32 32 32h576zM48 48h64c0 35.3496 -28.6504 64 -64 64v-64zM48 272c35.3496 0 64 28.6504 64 64h-64v-64zM320 80
c53 0 96 50.1299 96 112c0 61.8604 -42.9805 112 -96 112s-96 -50.1396 -96 -112c0 -61.8496 42.9805 -112 96 -112zM592 48v64c-35.3496 0 -64 -28.6504 -64 -64h64zM592 272v64h-64c0 -35.3496 28.6504 -64 64 -64z" />
    <glyph glyph-name="phone-slash" unicode="&#xf3dd;" horiz-adv-x="640" 
d="M268.2 66.5996c11.5 5.40039 22.7002 11.6006 33.5996 18.1006l80 -61.7998c-76 -54.5 -169 -86.9004 -269.7 -86.9004c-11.2998 0 -20.8994 7.7998 -23.3994 18.5996l-24 104c-2.60059 11.4004 3.2002 22.9004 13.8994 27.5l112 48
c9.80078 4.2002 21.2002 1.40039 28 -6.89941zM633.8 -10.0996c7 -5.40039 8.2998 -15.5 2.90039 -22.3008l-19.6006 -25.2998c-5.5 -7 -15.5 -8.2002 -22.5 -2.7998l-588.399 454.7c-7 5.39941 -8.2002 15.3994 -2.7998 22.3994l19.5996 25.2002
c5.5 7 15.5 8.2002 22.5 2.7998l353.9 -273.5c18.0996 22.5 33.7998 46.7002 46 72.8008l-60.6006 49.5996c-8.2998 6.7002 -11.0996 18.2002 -6.89941 28l48 112c4.59961 10.5996 16.1992 16.5 27.5 13.9004l104 -24c10.8994 -2.5 18.5996 -12.2002 18.5996 -23.4004
c0 -108.9 -38.0996 -208.4 -100.9 -287.5z" />
    <glyph glyph-name="portrait" unicode="&#xf3e0;" horiz-adv-x="384" 
d="M336 448c26.5 0 48 -21.5 48 -48v-416c0 -26.5 -21.5 -48 -48 -48h-288c-26.5 0 -48 21.5 -48 48v416c0 26.5 21.5 48 48 48h288zM192 320c-35.2998 0 -64 -28.7002 -64 -64s28.7002 -64 64 -64s64 28.7002 64 64s-28.7002 64 -64 64zM304 83.2002v19.2002
c0 31.7998 -30.0996 57.5996 -67.2002 57.5996h-5c-12.2002 -5.09961 -25.7002 -8 -39.7998 -8s-27.5 2.90039 -39.7998 8h-5c-37.1006 0 -67.2002 -25.7998 -67.2002 -57.5996v-19.2002c0 -10.6006 10 -19.2002 22.4004 -19.2002h179.199
c12.4004 0 22.4004 8.59961 22.4004 19.2002z" />
    <glyph glyph-name="reply" unicode="&#xf3e5;" 
d="M8.30859 258.164l176.005 151.985c15.4053 13.3047 39.6865 2.50391 39.6865 -18.1641v-80.0537c160.629 -1.83887 288 -34.0312 288 -186.258c0 -61.4404 -39.5811 -122.309 -83.333 -154.132c-13.6533 -9.93066 -33.1113 2.5332 -28.0771 18.6309
c45.3438 145.012 -21.5068 183.51 -176.59 185.742v-87.915c0 -20.7002 -24.2998 -31.4531 -39.6865 -18.1641l-176.005 152c-11.0703 9.5625 -11.0859 26.7529 0 36.3281z" />
    <glyph glyph-name="shield-alt" unicode="&#xf3ed;" 
d="M466.5 364.3c17.7998 -7.39941 29.5 -24.8994 29.5 -44.2998c0 -221.3 -135.9 -344.6 -221.6 -380.3c-11.8008 -4.90039 -25.1006 -4.90039 -36.9004 0c-107 44.5996 -221.5 181.8 -221.5 380.3c0 19.4004 11.7002 36.9004 29.5996 44.2998l192 80
c5.67578 2.35449 11.96 3.6543 18.4824 3.6543c6.52148 0 12.7432 -1.2998 18.418 -3.6543zM256.1 1.7002c93.7002 46.5996 172.5 156.3 175.801 307.7l-175.9 73.2998z" />
    <glyph glyph-name="tablet-alt" unicode="&#xf3fa;" horiz-adv-x="448" 
d="M400 448c26.5 0 48 -21.5 48 -48v-416c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v416c0 26.5 21.5 48 48 48h352zM224 -32c17.7002 0 32 14.2998 32 32s-14.2998 32 -32 32s-32 -14.2998 -32 -32s14.2998 -32 32 -32zM400 76v312
c0 6.59961 -5.40039 12 -12 12h-328c-6.59961 0 -12 -5.40039 -12 -12v-312c0 -6.59961 5.40039 -12 12 -12h328c6.59961 0 12 5.40039 12 12z" />
    <glyph glyph-name="tachometer-alt" unicode="&#xf3fd;" horiz-adv-x="576" 
d="M288 416c159.06 0 288 -128.94 288 -288c0 -52.7998 -14.25 -102.26 -39.0596 -144.8c-5.61035 -9.62012 -16.3008 -15.2002 -27.4404 -15.2002h-443c-11.1396 0 -21.8301 5.58008 -27.4404 15.2002c-24.8096 42.54 -39.0596 92 -39.0596 144.8
c0 159.06 128.94 288 288 288zM288 352c-17.6699 0 -31.9902 -14.3301 -31.9902 -32s14.3301 -32 32 -32c6.66992 0 12.5098 2.51953 17.6406 6.00977l9.21973 27.6699c0.80957 2.44043 2.33984 4.41016 3.4502 6.66992c-3.74023 13.5205 -15.6104 23.6504 -30.3203 23.6504
zM96 64c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32s-32 -14.3301 -32 -32s14.3301 -32 32 -32zM144 224c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32s-32 -14.3301 -32 -32s14.3301 -32 32 -32zM390.77 296.41c4.18066 12.5703 -2.59961 26.1699 -15.1699 30.3594
c-12.6299 4.28027 -26.1895 -2.60938 -30.3594 -15.1699l-61.3398 -184.01c-33.4004 -2.16016 -59.9004 -29.6494 -59.9004 -63.5898c0 -11.7197 3.37988 -22.5498 8.87988 -32h110.24c5.5 9.4502 8.87988 20.2803 8.87988 32c0 19.46 -8.87012 36.6699 -22.5596 48.4102z
M405.43 239.21c5.68066 -8.94043 15.1904 -15.21 26.5703 -15.2197c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32c-3.91992 0 -7.58008 -0.94043 -11.0498 -2.23047zM480 64c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32s-32 -14.3301 -32 -32s14.3301 -32 32 -32z
" />
    <glyph glyph-name="ticket-alt" unicode="&#xf3ff;" horiz-adv-x="576" 
d="M128 288h320v-192h-320v192zM528 192c0 -26.5098 21.4902 -48 48 -48v-96c0 -26.5098 -21.4902 -48 -48 -48h-480c-26.5098 0 -48 21.4902 -48 48v96c26.5098 0 48 21.4902 48 48s-21.4902 48 -48 48v96c0 26.5098 21.4902 48 48 48h480c26.5098 0 48 -21.4902 48 -48
v-96c-26.5098 0 -48 -21.4902 -48 -48zM480 296c0 13.2549 -10.7451 24 -24 24h-336c-13.2549 0 -24 -10.7451 -24 -24v-208c0 -13.2549 10.7451 -24 24 -24h336c13.2549 0 24 10.7451 24 24v208z" />
    <glyph glyph-name="user-alt" unicode="&#xf406;" 
d="M256 160c-79.5 0 -144 64.5 -144 144s64.5 144 144 144s144 -64.5 144 -144s-64.5 -144 -144 -144zM384 128c70.7002 0 128 -57.2998 128 -128v-16c0 -26.5 -21.5 -48 -48 -48h-416c-26.5 0 -48 21.5 -48 48v16c0 70.7002 57.2998 128 128 128h55.0996
c22.3008 -10.2002 46.9004 -16 72.9004 -16s50.7002 5.7998 72.9004 16h55.0996z" />
    <glyph glyph-name="window-close" unicode="&#xf410;" 
d="M464 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-416c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h416zM380.4 125.5l-67.1006 66.5l67.1006 66.5c4.7998 4.7998 4.7998 12.5996 0 17.4004l-40.5 40.5
c-4.80078 4.7998 -12.6006 4.7998 -17.4004 0l-66.5 -67.1006l-66.5 67.1006c-4.7998 4.7998 -12.5996 4.7998 -17.4004 0l-40.5 -40.5c-4.7998 -4.80078 -4.7998 -12.6006 0 -17.4004l67.1006 -66.5l-67.1006 -66.5c-4.7998 -4.7998 -4.7998 -12.5996 0 -17.4004
l40.5 -40.5c4.80078 -4.7998 12.6006 -4.7998 17.4004 0l66.5 67.1006l66.5 -67.1006c4.7998 -4.7998 12.5996 -4.7998 17.4004 0l40.5 40.5c4.7998 4.80078 4.7998 12.6006 0 17.4004z" />
    <glyph glyph-name="compress-alt" unicode="&#xf422;" horiz-adv-x="448" 
d="M4.68555 20.6855l99.3145 99.3145l-32.9219 31.0293c-15.1201 15.1201 -4.41211 40.9707 16.9697 40.9707h112c13.2549 0 23.9521 -10.7451 23.9521 -24v-112c0 -21.3818 -25.8027 -32.0898 -40.9219 -16.9707l-31.0781 32.9707l-99.3145 -99.3145
c-6.24707 -6.24707 -16.3789 -6.24707 -22.627 0l-25.373 25.373c-6.24707 6.24805 -6.24707 16.3799 0 22.627zM443.314 363.314l-99.3145 -99.3145l32.9219 -31.0293c15.1201 -15.1201 4.41211 -40.9707 -16.9697 -40.9707h-112c-13.2549 0 -23.9521 10.7451 -23.9521 24
v112c0 21.3818 25.8027 32.0898 40.9219 16.9707l31.0781 -32.9707l99.3145 99.3145c6.24707 6.24707 16.3789 6.24707 22.627 0l25.373 -25.373c6.24707 -6.24805 6.24707 -16.3799 0 -22.627z" />
    <glyph glyph-name="expand-alt" unicode="&#xf424;" horiz-adv-x="448" 
d="M212.686 132.686l-92.6855 -92.6855l32.9219 -31.0293c15.1201 -15.1201 4.41211 -40.9707 -16.9697 -40.9707h-112c-13.2549 0 -23.9521 10.7451 -23.9521 24v112c0 21.3818 25.8027 32.0898 40.9219 16.9707l31.0781 -32.9707l92.6855 92.6855
c6.24805 6.24805 16.3799 6.24805 22.6279 0l25.3721 -25.3721c6.24902 -6.24805 6.24902 -16.3789 0 -22.6279zM235.314 251.314l92.6855 92.6855l-32.9219 31.0293c-15.1201 15.1201 -4.41211 40.9707 16.9697 40.9707h112c13.2549 0 23.9521 -10.7451 23.9521 -24v-112
c0 -21.3818 -25.8027 -32.0898 -40.9219 -16.9707l-31.0781 32.9707l-92.6855 -92.6855c-6.24805 -6.24805 -16.3799 -6.24805 -22.6279 0l-25.3721 25.3721c-6.24902 6.24805 -6.24902 16.3789 0 22.6279z" />
    <glyph glyph-name="baseball-ball" unicode="&#xf433;" horiz-adv-x="496" 
d="M368.5 84.0996c12.9004 -26.6992 30.2998 -50.1992 51.4004 -70.5996c-44.6006 -43 -105.101 -69.5 -171.9 -69.5c-66.9004 0 -127.5 26.5996 -172 69.7002c21.2002 20.3994 38.5996 44 51.5 70.7002l-28.7998 13.8994c-11.1006 -23 -26.1006 -43.2998 -44.2998 -61
c-34 42.4004 -54.4004 96.1006 -54.4004 154.7s20.4004 112.3 54.4004 154.8c17.7998 -17.2998 32.5 -37.0996 43.5 -59.3994l28.6992 14.0996c-12.7998 25.9004 -30 48.9004 -50.6992 68.7998c44.5996 43.1006 105.199 69.7002 172.1 69.7002
c67 0 127.6 -26.7002 172.2 -69.7998c-20.7998 -20 -38 -43 -50.7998 -69l28.6992 -14.1006c11 22.4004 25.8008 42.2002 43.6006 59.5c33.7998 -42.3994 54.2002 -96.0996 54.2002 -154.6c0 -58.5996 -20.5 -112.4 -54.5 -154.9c-18.1006 17.7002 -33 38 -44.1006 60.9004z
M140.2 116.1c17.2998 53.9004 14.2998 108.2 -0.700195 153.801l-30.4004 -10c13.3008 -40.2002 15.5 -87.6006 0.600586 -134zM356.5 269.5c-15 -45.5 -18 -99.7998 -0.700195 -153.8l30.5 9.7998c-14.8994 46.5 -12.5996 93.9004 0.600586 134z" />
    <glyph glyph-name="basketball-ball" unicode="&#xf434;" horiz-adv-x="496" 
d="M212.3 437.7c-1.5 -50 -17 -95.4004 -44.7998 -131.2l-77.4004 77.4004c36 29.6992 78.4004 47.5 122.2 53.7998zM248 226l-46.2998 46.2998c37.2002 45.4004 57.5 103.8 58.7002 167.7c51.8994 -2.59961 103.1 -21.0996 145.5 -56.0996zM56.0996 349.9l77.4004 -77.4004
c-35.7002 -27.7998 -81.2002 -43.2998 -131.2 -44.7998c6.2998 43.7998 24.1006 86.2002 53.7998 122.2zM328.3 145.7l-46.2998 46.2998l157.9 157.9c35 -42.4004 53.5 -93.6006 56.0996 -145.5c-64 -1.30078 -122.4 -21.6006 -167.7 -58.7002zM248 158l46.2998 -46.2998
c-37.0996 -45.2998 -57.3994 -103.7 -58.7002 -167.7c-51.8994 2.59961 -103.1 21.2002 -145.5 56.0996zM439.9 34.0996l-77.4004 77.4004c35.7002 27.7002 81.0996 43.2002 131.2 44.7998c-6.2998 -43.7998 -24.1006 -86.2002 -53.7998 -122.2zM167.7 238.3
l46.2998 -46.2998l-157.9 -157.9c-35 42.4004 -53.5 93.6006 -56.0996 145.5c63.9004 1.10059 122.3 21.5 167.7 58.7002zM283.7 -53.7002c1.59961 50 17.0996 95.5 44.7998 131.2l77.4004 -77.4004c-36 -29.6992 -78.4004 -47.5 -122.2 -53.7998z" />
    <glyph glyph-name="bowling-ball" unicode="&#xf436;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM120 256c17.7002 0 32 14.2998 32 32s-14.2998 32 -32 32s-32 -14.2998 -32 -32s14.2998 -32 32 -32zM184 352c0 -17.7002 14.2998 -32 32 -32s32 14.2998 32 32
s-14.2998 32 -32 32s-32 -14.2998 -32 -32zM232 208c17.7002 0 32 14.2998 32 32s-14.2998 32 -32 32s-32 -14.2998 -32 -32s14.2998 -32 32 -32z" />
    <glyph glyph-name="chess" unicode="&#xf439;" 
d="M74 240l-33.9102 90.3799c-0.655273 1.74707 -1.01953 3.64551 -1.01953 5.62012c0 8.83105 7.16895 16 16 16h0.0195312h56.9102v32h-24c-4.41504 0 -8 3.58496 -8 8v16c0 4.41504 3.58496 8 8 8h24v24c0 4.41504 3.58496 8 8 8h16c4.41504 0 8 -3.58496 8 -8v-24h24
c4.41504 0 8 -3.58496 8 -8v-16c0 -4.41504 -3.58496 -8 -8 -8h-24v-32h56.8896c0.00683594 0 0.0078125 -0.00683594 0.0146484 -0.00683594c8.83008 0 16 -7.16992 16 -16c0 -1.97461 -0.359375 -3.86621 -1.01465 -5.61328l-33.8896 -90.3799h10
c8.83105 0 16 -7.16895 16 -16v-16c0 -8.83105 -7.16895 -16 -16 -16h-15.9404c0.142578 -44.1934 5.69141 -86.9287 15.9404 -128h-128c10.249 41.0713 15.7979 83.8066 15.9404 128h-15.9404c-8.83105 0 -16 7.16895 -16 16v16c0 8.83105 7.16895 16 16 16h10z
M247.16 -11.5801c5.24805 -2.62598 8.83984 -8.0459 8.83984 -14.3096v-22.1104c0 -8.83105 -7.16895 -16 -16 -16h-224c-8.83105 0 -16 7.16895 -16 16v22.1104c0.000976562 6.26562 3.59668 11.6855 8.84961 14.3096l23.1504 11.5801v16c0 8.83105 7.16895 16 16 16h160
c8.83105 0 16 -7.16895 16 -16v-16zM339.93 146.2l-24.5693 20.7998c-6.94434 5.86133 -11.3438 14.6143 -11.3604 24.4004v58.5996c0 3.31152 2.68848 6 6 6h26.3896c3.31152 0 6 -2.68848 6 -6v-26h24.71v26c0 3.31152 2.68848 6 6 6h53.8105c3.31152 0 6 -2.68848 6 -6
v-26h24.71v26c0 3.31152 2.68848 6 6 6h26.3799c3.31152 0 6 -2.68848 6 -6v-58.54c0 -0.0107422 0.0185547 -0.0126953 0.0185547 -0.0234375c0 -9.79297 -4.40918 -18.5645 -11.3486 -24.4365l-24.5996 -20.79l3.29004 -82.21h-126.721zM384 144v-32h32v32
c0 8.83105 -7.16895 16 -16 16s-16 -7.16895 -16 -16zM503.16 -11.5801c5.24805 -2.62598 8.83984 -8.0459 8.83984 -14.3096v-22.1104c0 -8.83105 -7.16895 -16 -16 -16h-192c-8.83105 0 -16 7.16895 -16 16v22.1104c0.000976562 6.26562 3.59668 11.6855 8.84961 14.3096
l23.1504 11.5801v16c0 8.83105 7.16895 16 16 16h128c8.83105 0 16 -7.16895 16 -16v-16z" />
    <glyph glyph-name="chess-bishop" unicode="&#xf43a;" horiz-adv-x="320" 
d="M8 160.12c0 73.3799 59.8096 181.08 112.6 225.37c-14 3.41992 -24.5996 15.5098 -24.5996 30.5098c0 17.6611 14.3389 32 32 32h64c17.6611 0 32 -14.3389 32 -32c0 -15.0498 -10.5996 -27.0898 -24.5996 -30.5098c24.3994 -20.4902 50.0693 -54.6807 70.8691 -92.5898
l-107.89 -107.931c-1.44727 -1.44727 -2.3418 -3.44922 -2.3418 -5.65625c0 -2.20605 0.894531 -4.20508 2.3418 -5.65332l11.3105 -11.3105c1.44727 -1.44629 3.44922 -2.3418 5.65527 -2.3418c2.20703 0 4.20605 0.895508 5.6543 2.3418l100.31 100.33
c15.96 -35.46 26.6904 -71.9492 26.6904 -102.56c0 -51.6006 -22.1396 -73.8301 -56 -84.6006v-43.5195h-192v43.5195c-33.8604 10.7705 -56 32.9609 -56 84.6006zM304 0c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-288
c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h288z" />
    <glyph glyph-name="chess-board" unicode="&#xf43c;" 
d="M255.9 447.8v-64h-64v64h64zM0 383.83h64v-64h-64v64zM128 447.8v-64h-64v64h64zM192 191.9h64v-64h-64v64zM0 255.88h64v-64h-64v64zM383.85 447.8v-64h-64v64h64zM511.85 447.8v-64h-64v64h64zM128 191.9v-64h-64v64h64zM511.8 0h-64v64h64v-64zM511.8 128h-64v64h64
v-64zM383.85 -64v64h64v-64h-64zM511.85 255.88h-64v64h64v-64zM128 -64v64h64v-64h-64zM0 -64v64h64v-64h-64zM255.9 -64v64h64v-64h-64zM0 127.93h64v-64h-64v64zM319.88 319.85h-64v64h64v-64zM255.88 191.85v64h64v-64h-64zM191.88 63.8496h64v-64h-64v64z
M319.88 127.85v64h64v-64h-64zM319.88 255.8v64h64v-64h-64zM319.88 63.8701h64v-64h-64v64zM64 63.9502h64v-64h-64v64zM192 319.85h-64v64h64v-64zM383.92 63.9502v64h64v-64h-64zM255.92 255.88h-64v64h64v-64zM383.92 383.83h64v-64h-64v64zM255.92 127.93h64v-64h-64
v64zM191.92 255.88l0.0800781 -64h-64v64h63.9199zM383.84 191.88v64h64v-64h-64zM128 319.85v-64h-64v64h64zM128 127.93h64v-64h-64v64z" />
    <glyph glyph-name="chess-king" unicode="&#xf43f;" horiz-adv-x="448" 
d="M400 0c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-352c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h352zM416 288c17.6494 -0.0136719 31.9688 -14.3477 31.9688 -32.001c0 -3.32129 -0.507812 -6.52539 -1.44922 -9.53906
l-73.0791 -214.46h-298.881l-73.0791 214.46c-0.941406 3.01367 -1.45508 6.21875 -1.45508 9.54004c0 17.6533 14.3252 31.9863 31.9746 32h160v48h-40c-4.41504 0 -8 3.58496 -8 8v48c0 4.41504 3.58496 8 8 8h40v40c0 4.41504 3.58496 8 8 8h48
c4.41504 0 8 -3.58496 8 -8v-40h40c4.41504 0 8 -3.58496 8 -8v-48c0 -4.41504 -3.58496 -8 -8 -8h-40v-48h160z" />
    <glyph glyph-name="chess-knight" unicode="&#xf441;" horiz-adv-x="384" 
d="M19 175.53c-11.2041 4.98145 -19 16.1963 -19 29.2393v0.0205078v137.21c0 0.0195312 -0.00292969 0.0419922 -0.00292969 0.0625c0 6.60742 2.67578 12.5957 7.00293 16.9375l9 9l-14.21 28.4199c-1.13867 2.27344 -1.79004 4.85547 -1.79004 7.56934v0.0107422
c0 6.62305 5.37695 12 12 12h147.94c106 0 191.92 -86 191.92 -192v-192h-319.86v14.5195c0 0.0078125 -0.078125 -0.03125 -0.078125 -0.0244141c0 31.3145 18.0312 58.4512 44.2686 71.585l57.2197 28.6504c15.751 7.87695 26.5303 24.1348 26.5303 42.9297v0.00976562
v50.3301l-22.1201 -11.0801c-6.19238 -3.09668 -10.8369 -8.78906 -12.5508 -15.6504l-9.21973 -30.6494c-2.81152 -9.35645 -9.77051 -16.9043 -18.7598 -20.5l-12.7803 -5.12012c-3.66895 -1.46777 -7.7168 -2.27246 -11.9082 -2.27246
c-4.61621 0 -9.00586 0.979492 -12.9717 2.74219zM52 320c-11.0381 0 -20 -8.96191 -20 -20s8.96191 -20 20 -20s20 8.96191 20 20s-8.96191 20 -20 20zM368 0c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-352c-8.83105 0 -16 7.16895 -16 16v32
c0 8.83105 7.16895 16 16 16h352z" />
    <glyph glyph-name="chess-pawn" unicode="&#xf443;" horiz-adv-x="320" 
d="M105.1 224c-29.3896 18.3799 -49.0996 50.7803 -49.0996 88c0 57.3994 46.6006 104 104 104s104 -46.6006 104 -104c0 -37.2197 -19.71 -69.6201 -49.0996 -88h25.0996c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-16v-5.49023
c0 -44 4.11035 -86.5996 24 -122.51h-176c19.8604 35.9102 24 78.5098 24 122.51v5.49023h-16c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h25.0996zM304 0c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-288
c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h288z" />
    <glyph glyph-name="chess-queen" unicode="&#xf445;" 
d="M256 336c-30.9072 0 -56 25.0928 -56 56s25.0928 56 56 56s56 -25.0928 56 -56s-25.0928 -56 -56 -56zM432 0c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-352c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h352zM504.87 263.84
c4.30566 -2.86816 7.11914 -7.77344 7.11914 -13.3311c0 -2.56445 -0.604492 -4.98926 -1.67969 -7.13867l-102.55 -211.37h-303.52l-102.55 211.33c-1.0752 2.14941 -1.70508 4.58008 -1.70508 7.14453c0 5.55762 2.83887 10.457 7.14453 13.3252l28.5703 16
c7.35938 4.91016 16.8096 2.5498 22.0898 -4.54004c8.6543 -11.709 22.4922 -19.2686 38.1572 -19.2686c1.13672 0 2.26562 0.0400391 3.38281 0.119141c25.6699 1.73926 44.6699 24.7998 44.6699 50.4893c0 7.39648 6.00391 13.4004 13.4004 13.4004h38.7695
c6.04004 0 11.6104 -3.99023 12.8604 -9.91016c4.57715 -21.7363 23.8789 -38.0752 46.9688 -38.0752s42.3936 16.3389 46.9707 38.0752c1.25 5.91016 6.86035 9.91016 12.8604 9.91016h38.7695c7.39648 0 13.4004 -6.00391 13.4004 -13.4004
c0 -23.5293 15.7002 -45.46 38.8398 -49.75c2.95898 -0.576172 5.9541 -0.918945 9.08105 -0.918945c15.6064 0 29.4688 7.5293 38.1494 19.1494c5.37988 7.13965 14.8496 9.67969 22.29 4.67969z" />
    <glyph glyph-name="chess-rook" unicode="&#xf447;" horiz-adv-x="384" 
d="M368 416c8.83105 0 16 -7.16895 16 -16v-176l-64 -32c0 -47.7197 1.54004 -95 13.21 -160h-282.42c11.6699 65 13.21 111.67 13.21 160l-64 32v176c0 8.83105 7.16895 16 16 16h56.0996c8.83105 0 16 -7.16895 16 -16v-48h47.9004v48c0 8.83105 7.16895 16 16 16h80
c8.83105 0 16 -7.16895 16 -16v-48h48v48c0 8.83105 7.16895 16 16 16h56zM224 128v64c0 17.6611 -14.3389 32 -32 32s-32 -14.3389 -32 -32v-64h64zM368 0c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-352c-8.83105 0 -16 7.16895 -16 16v32
c0 8.83105 7.16895 16 16 16h352z" />
    <glyph glyph-name="dumbbell" unicode="&#xf44b;" horiz-adv-x="640" 
d="M104 352c13.2998 0 24 -10.7002 24 -24v-272c0 -13.2998 -10.7002 -24 -24 -24h-48c-13.2998 0 -24 10.7002 -24 24v104h-24c-4.40039 0 -8 3.59961 -8 8v48c0 4.40039 3.59961 8 8 8h24v104c0 13.2998 10.7002 24 24 24h48zM632 224c4.40039 0 8 -3.59961 8 -8v-48
c0 -4.40039 -3.59961 -8 -8 -8h-24v-104c0 -13.2998 -10.7002 -24 -24 -24h-48c-13.2998 0 -24 10.7002 -24 24v272c0 13.2998 10.7002 24 24 24h48c13.2998 0 24 -10.7002 24 -24v-104h24zM456 416c13.2998 0 24 -10.7002 24 -24v-400c0 -13.2998 -10.7002 -24 -24 -24h-48
c-13.2998 0 -24 10.7002 -24 24v168h-128v-168c0 -13.2998 -10.7002 -24 -24 -24h-48c-13.2998 0 -24 10.7002 -24 24v400c0 13.2998 10.7002 24 24 24h48c13.2998 0 24 -10.7002 24 -24v-168h128v168c0 13.2998 10.7002 24 24 24h48z" />
    <glyph glyph-name="football-ball" unicode="&#xf44e;" horiz-adv-x="496" 
d="M481.5 387.7c6.2998 -23.9004 13.7002 -61 14.5 -104.5l-156.6 156.8c43.5996 -0.900391 80.8994 -8.5 104.8 -14.9004c18.2002 -4.89941 32.5 -19.1992 37.2998 -37.3994zM14.5 -3.7002c-6.2998 23.9004 -13.7002 61 -14.5 104.5l156.6 -156.8
c-43.5996 0.900391 -80.8994 8.5 -104.8 14.9004c-18.2002 4.89941 -32.5 19.1992 -37.2998 37.3994zM4.2002 164.6c22.5996 152.7 138.899 252 271.399 271.4l216.301 -216.6c-22.7002 -152.7 -139 -252 -271.5 -271.4zM321.5 288.2l-28.2998 -28.5l-28.2998 28.2998
c-3.10059 3.09961 -8.2002 3.09961 -11.3008 0l-11.2998 -11.2998c-3.09961 -3.10059 -3.09961 -8.2002 0 -11.2998l28.2998 -28.3008l-22.5996 -22.5996l-28.2998 28.2998c-3.10059 3.10059 -8.2002 3.10059 -11.2998 0l-11.3008 -11.2998
c-3.09961 -3.09961 -3.09961 -8.2002 0 -11.2998l28.3008 -28.2998l-22.6006 -22.6006l-28.2998 28.2998c-3.09961 3.10059 -8.2002 3.10059 -11.2998 0l-11.2998 -11.2998c-3.10059 -3.09961 -3.10059 -8.2002 0 -11.2998l28.2998 -28.2002l-28.2998 -28.2998
c-3.10059 -3.09961 -3.10059 -8.2002 0 -11.2998l11.2998 -11.2998c3.09961 -3.10059 8.2002 -3.10059 11.2998 0l28.2998 28.2998l28.2998 -28.2998c3.10059 -3.10059 8.2002 -3.10059 11.3008 0l11.2998 11.2998c3.09961 3.09961 3.09961 8.2002 0 11.2998
l-28.2998 28.2998l22.5996 22.6006l28.2998 -28.3008c3.10059 -3.09961 8.2002 -3.09961 11.2998 0l11.3008 11.3008c3.09961 3.09961 3.09961 8.19922 0 11.2998l-28.3008 28.2998l22.6006 22.7002l28.2998 -28.2998c3.09961 -3.10059 8.2002 -3.10059 11.2998 0
l11.2998 11.2998c3.10059 3.09961 3.10059 8.2002 0 11.2998l-28.2998 28.2998l28.2998 28.2998c3.10059 3.10059 3.10059 8.2002 0 11.3008l-11.2998 11.2998c-3.09961 3.09961 -8.2002 3.09961 -11.2998 0z" />
    <glyph glyph-name="golf-ball" unicode="&#xf450;" horiz-adv-x="416" 
d="M96 32h224c0 -17.7002 -14.2998 -32 -32 -32h-16c-17.7002 0 -32 -14.2998 -32 -32v-20c0 -6.59961 -5.40039 -12 -12 -12h-40c-6.59961 0 -12 5.40039 -12 12v20c0 17.7002 -14.2998 32 -32 32h-16c-17.7002 0 -32 14.2998 -32 32zM416 240
c0 -74.2002 -39 -139.2 -97.5 -176h-221c-58.5 36.7998 -97.5 101.8 -97.5 176c0 114.9 93.0996 208 208 208s208 -93.0996 208 -208zM235.9 196.1c18.2998 0 33.0996 14.8008 33.0996 33.1006c0 14.3994 -9.2998 26.2998 -22.0996 30.8994
c9.59961 -26.7998 -15.6006 -51.2998 -41.9004 -41.8994c4.59961 -12.7998 16.5 -22.1006 30.9004 -22.1006zM285 149.2c0 14.3994 -9.2998 26.2998 -22.0996 30.8994c9.59961 -26.7998 -15.6006 -51.2998 -41.9004 -41.8994
c4.59961 -12.7998 16.5 -22.1006 30.9004 -22.1006c18.2998 0 33.0996 14.9004 33.0996 33.1006zM349 213.2c0 14.3994 -9.2998 26.2998 -22.0996 30.8994c9.59961 -26.7998 -15.6006 -51.2998 -41.9004 -41.8994c4.59961 -12.7998 16.5 -22.1006 30.9004 -22.1006
c18.2998 0 33.0996 14.9004 33.0996 33.1006z" />
    <glyph glyph-name="hockey-puck" unicode="&#xf453;" 
d="M0 288c0 53 114.6 96 256 96s256 -43 256 -96s-114.6 -96 -256 -96s-256 43 -256 96zM0 205.8c113.5 -82.3994 398.6 -82.2998 512 0v-109.8c0 -53 -114.6 -96 -256 -96s-256 43 -256 96v109.8z" />
    <glyph glyph-name="quidditch" unicode="&#xf458;" horiz-adv-x="640" 
d="M256.5 231.2l86.7002 -109.2s-16.6006 -102.4 -76.6006 -150.1c-59.8994 -47.7002 -266.6 -34.1006 -266.6 -34.1006s3.7998 23.1006 11 55.4004l94.5996 112.2c4 4.69922 -0.899414 11.5996 -6.59961 9.5l-60.4004 -22.1006c14.4004 41.7002 32.7002 80 54.6006 97.5
c59.8994 47.7998 163.3 40.9004 163.3 40.9004zM494.5 96.2002c44 0 79.7998 -35.7002 79.7998 -79.9004c0 -44.0996 -35.7002 -79.8994 -79.7998 -79.8994s-79.7998 35.7998 -79.7998 79.8994c0 44.1006 35.7998 79.9004 79.7998 79.9004zM636.5 417
c5.5 -6.90039 4.40039 -17 -2.5 -22.5l-232.5 -177.9l34.0996 -42.8994c5.10059 -6.40039 1.7002 -15.9004 -6.2998 -17.6006l-58.7998 -12.3994l-86.7002 109.2l25.2998 54.5996c3.5 7.40039 13.5 8.59961 18.6006 2.2002l34.0996 -43l232.5 177.899
c6.90039 5.40039 16.9004 4.30078 22.4004 -2.59961z" />
    <glyph glyph-name="square-full" unicode="&#xf45c;" 
d="M512 -64h-512v512h512v-512z" />
    <glyph glyph-name="table-tennis" unicode="&#xf45d;" 
d="M496.2 151.5c-64.1006 43.2002 -149.5 27.9004 -195.601 -34.2002l-211.5 211.5l56 56.1006c83.9004 84.0996 220 84.0996 303.9 0c63 -63.1006 78.7002 -155.601 47.2002 -233.4zM278.3 71.7998c-3.7002 -12.7002 -6.2998 -25.8994 -6.2002 -39.7002
c0 -19.5 3.90039 -38.0996 11 -55.0996c-25.6992 2.7998 -50.5996 13.5996 -70.2998 33.2998l-35.7002 35.7002l-89.2998 -103.3c-7.5 -8.60059 -20.7002 -9.10059 -28.7002 -1l-53.3994 53.5c-8.10059 8.09961 -7.60059 21.2998 1 28.7998l103 89.4004l-34.5 34.5996
c-39 39.0996 -44.6006 98.7998 -17.2998 144.1zM416 128c53 0 96 -43 96 -96s-43 -96 -96 -96s-96 43 -96 96s43 96 96 96z" />
    <glyph glyph-name="volleyball-ball" unicode="&#xf45f;" 
d="M231.39 204.52c-70.1855 -43.1172 -122.835 -111.301 -146.1 -192.199c-24.0918 22.8398 -43.4365 50.252 -56.9004 81.0996c22.8008 94.4004 89.5 174.4 180.301 216.8c13.8145 -32.4951 21.9121 -68.375 22.6992 -105.7zM194.49 338.92
c-84 -39.5 -149 -108.4 -182.4 -191.5c-19.7998 109.3 34 212.4 125 262.2c22.8408 -20.3574 42.0732 -43.9951 57.4004 -70.7002zM382.09 173.82c-36.7021 4.46582 -71.8574 16.1094 -102.899 33.1797c-2.36035 86.3154 -37.5332 164.725 -93.5 222.72
c47.2998 14 84.1992 10.2002 98.8994 8.5c70.2002 -66.8994 106.101 -164.6 97.5 -264.399zM257.39 164.32c49.7002 -26.8008 104 -40.8008 158.601 -40.9004c27.9346 0.173828 54.9697 3.79297 80.8994 10.4004c-7.93359 -32.9053 -22.5615 -63.5879 -42.1992 -89.9004
c-93 -27.2998 -195.5 -9.5 -277.5 47.7998c21.9443 29.166 48.8877 53.5898 80.1992 72.6006zM159.09 64.6201c53.6006 -37.2998 144 -78.2002 256.9 -62.1006c-43.0684 -36.5068 -99.1953 -58.4424 -160.021 -58.4424c-47.2529 0 -91.4258 13.2939 -128.979 36.3428
c6.39941 29.7998 16.8994 58.2002 32.0996 84.2002zM339.39 425.22c95.9004 -34.2998 164.601 -125.6 164.601 -233.399c0 -2 -0.299805 -4 -0.299805 -6c-28.0381 -9.1709 -57.998 -14.2012 -89.083 -14.2012c-0.206055 0 -0.412109 0 -0.617188 0.000976562
c7.89941 92.3994 -19.2998 183.2 -74.6006 253.6z" />
    <glyph glyph-name="allergies" unicode="&#xf461;" horiz-adv-x="448" 
d="M416 336c17.5996 0 32 -14.4004 32 -32v-176.1c-0.200195 -14 -1.90039 -28.6006 -5.09961 -42.3008l-26.5 -112.699c-5.10059 -21.7002 -24.4004 -37 -46.7002 -37h-197.601c-15.2998 0 -29.7998 7.39941 -38.7998 19.7998l-125.6 172.7
c-13 17.8994 -9.10059 42.8994 8.7998 55.8994s42.9004 9.10059 55.9004 -8.7998l23.5996 -32.5v241c0 17.5996 14.4004 32 32 32s32 -14.4004 32 -32v-152c0 -4.40039 3.59961 -8 8 -8h16c4.40039 0 8 3.59961 8 8v184c0 17.5996 14.4004 32 32 32s32 -14.4004 32 -32v-184
c0 -4.40039 3.59961 -8 8 -8h16c4.40039 0 8 3.59961 8 8v152c0 17.5996 14.4004 32 32 32s32 -14.4004 32 -32v-152c0 -4.40039 3.59961 -8 8 -8h16c4.40039 0 8 3.59961 8 8v72c0 17.5996 14.4004 32 32 32zM176 32c8.7998 0 16 7.2002 16 16s-7.2002 16 -16 16
s-16 -7.2002 -16 -16s7.2002 -16 16 -16zM176 128c8.7998 0 16 7.2002 16 16s-7.2002 16 -16 16s-16 -7.2002 -16 -16s7.2002 -16 16 -16zM240 0c8.7998 0 16 7.2002 16 16s-7.2002 16 -16 16s-16 -7.2002 -16 -16s7.2002 -16 16 -16zM240 96c8.7998 0 16 7.2002 16 16
s-7.2002 16 -16 16s-16 -7.2002 -16 -16s7.2002 -16 16 -16zM304 64c8.7998 0 16 7.2002 16 16s-7.2002 16 -16 16s-16 -7.2002 -16 -16s7.2002 -16 16 -16zM336 0c8.7998 0 16 7.2002 16 16s-7.2002 16 -16 16s-16 -7.2002 -16 -16s7.2002 -16 16 -16zM368 128
c8.7998 0 16 7.2002 16 16s-7.2002 16 -16 16s-16 -7.2002 -16 -16s7.2002 -16 16 -16z" />
    <glyph glyph-name="band-aid" unicode="&#xf462;" horiz-adv-x="640" 
d="M0 288c0 35.2998 28.7002 64 64 64h96v-320h-96c-35.2998 0 -64 28.7002 -64 64v192zM576 352c35.2998 0 64 -28.7002 64 -64v-192c0 -35.2998 -28.7002 -64 -64 -64h-96v320h96zM192 32v320h256v-320h-256zM368 264c-13.2998 0 -24 -10.7002 -24 -24s10.7002 -24 24 -24
s24 10.7002 24 24s-10.7002 24 -24 24zM368 168c-13.2998 0 -24 -10.7002 -24 -24s10.7002 -24 24 -24s24 10.7002 24 24s-10.7002 24 -24 24zM272 264c-13.2998 0 -24 -10.7002 -24 -24s10.7002 -24 24 -24s24 10.7002 24 24s-10.7002 24 -24 24zM272 168
c-13.2998 0 -24 -10.7002 -24 -24s10.7002 -24 24 -24s24 10.7002 24 24s-10.7002 24 -24 24z" />
    <glyph glyph-name="box" unicode="&#xf466;" 
d="M509.5 263.4c0.799805 -2.40039 0.799805 -4.90039 1.2002 -7.40039h-238.7v192h141.4c20.6992 0 39 -13.2002 45.5 -32.7998zM240 448v-192h-238.7c0.400391 2.5 0.400391 5 1.2002 7.40039l50.5996 151.8c6.5 19.5996 24.8008 32.7998 45.5 32.7998h141.4zM0 224h512
v-240c0 -26.5 -21.5 -48 -48 -48h-416c-26.5 0 -48 21.5 -48 48v240z" />
    <glyph glyph-name="boxes" unicode="&#xf468;" horiz-adv-x="576" 
d="M560 160c8.7998 0 16 -7.2002 16 -16v-192c0 -8.7998 -7.2002 -16 -16 -16h-224c-8.7998 0 -16 7.2002 -16 16v192c0 8.7998 7.2002 16 16 16h80v-96l32 21.2998l32 -21.2998v96h80zM176 224c-8.7998 0 -16 7.2002 -16 16v192c0 8.7998 7.2002 16 16 16h80v-96
l32 21.2998l32 -21.2998v96h80c8.7998 0 16 -7.2002 16 -16v-192c0 -8.7998 -7.2002 -16 -16 -16h-224zM240 160c8.7998 0 16 -7.2002 16 -16v-192c0 -8.7998 -7.2002 -16 -16 -16h-224c-8.7998 0 -16 7.2002 -16 16v192c0 8.7998 7.2002 16 16 16h80v-96l32 21.2998
l32 -21.2998v96h80z" />
    <glyph glyph-name="briefcase-medical" unicode="&#xf469;" 
d="M464 320c26.5 0 48 -21.5 48 -48v-288c0 -26.5 -21.5 -48 -48 -48h-416c-26.5 0 -48 21.5 -48 48v288c0 26.5 21.5 48 48 48h80v48c0 26.5 21.5 48 48 48h160c26.5 0 48 -21.5 48 -48v-48h80zM192 352v-32h128v32h-128zM352 104v48c0 4.40039 -3.59961 8 -8 8h-56v56
c0 4.40039 -3.59961 8 -8 8h-48c-4.40039 0 -8 -3.59961 -8 -8v-56h-56c-4.40039 0 -8 -3.59961 -8 -8v-48c0 -4.40039 3.59961 -8 8 -8h56v-56c0 -4.40039 3.59961 -8 8 -8h48c4.40039 0 8 3.59961 8 8v56h56c4.40039 0 8 3.59961 8 8z" />
    <glyph glyph-name="burn" unicode="&#xf46a;" horiz-adv-x="384" 
d="M192 448c111.8 -100.9 192 -220.6 192 -300.5c0 -124.5 -79 -211.5 -192 -211.5s-192 87 -192 211.5c0 79.5996 79.7002 199.2 192 300.5zM192 0c56.5 0 96 39 96 94.7998c0 13.5 -4.59961 61.5 -96 161.2c-91.4004 -99.7002 -96 -147.7 -96 -161.2
c0 -55.7998 39.5 -94.7998 96 -94.7998z" />
    <glyph glyph-name="capsules" unicode="&#xf46b;" horiz-adv-x="576" 
d="M555.3 147.9c36.2002 -51.7002 23.7002 -123 -28 -159.2c-20 -14 -42.7998 -20.7002 -65.5 -20.7002c-36.0996 0 -71.5996 17 -93.7998 48.7998l-131.2 187.3c-5.5 7.90039 -9.5 16.4004 -12.7998 25v-149.1c0 -61.9004 -50.0996 -112 -112 -112s-112 50.0996 -112 112
v224c0 61.9004 50.0996 112 112 112c60 0 108.5 -47.2002 111.4 -106.5c7.7998 21 21.7998 40 41.5 53.7998c20 14 42.8994 20.7002 65.5 20.7002c36 0 71.5 -17 93.7998 -48.7998zM160 192v112c0 26.5 -21.5 48 -48 48s-48 -21.5 -48 -48v-112h96zM354.8 147.1
l82.5 57.7002l-65.5996 93.7002c-9.40039 13.5 -24.7998 21.5 -41.2998 21.5c-10.3008 0 -20.3008 -3.09961 -28.8008 -9.09961c-11 -7.7002 -18.3994 -19.3008 -20.6992 -32.5c-2.40039 -13.2002 0.599609 -26.6006 8.2998 -37.6006z" />
    <glyph glyph-name="clipboard-check" unicode="&#xf46c;" horiz-adv-x="384" 
d="M336 384c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-288c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h80c0 35.2998 28.7002 64 64 64s64 -28.7002 64 -64h80zM192 408c-13.2998 0 -24 -10.7002 -24 -24s10.7002 -24 24 -24s24 10.7002 24 24
s-10.7002 24 -24 24zM313.2 176.2c4.7002 4.7002 4.7998 12.2002 0.0996094 17l-28.2002 28.3994c-4.69922 4.7002 -12.2998 4.80078 -17 0.100586l-106 -105.2l-46 46.4004c-4.69922 4.69922 -12.2998 4.7998 -17 0.0996094l-28.3994 -28.2002
c-4.7002 -4.7002 -4.7998 -12.2998 -0.100586 -17l82.6006 -83.2998c4.7002 -4.7002 12.2998 -4.7998 17 -0.0996094z" />
    <glyph glyph-name="clipboard-list" unicode="&#xf46d;" horiz-adv-x="384" 
d="M336 384c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-288c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h80c0 35.2998 28.7002 64 64 64s64 -28.7002 64 -64h80zM96 24c13.2998 0 24 10.7002 24 24s-10.7002 24 -24 24s-24 -10.7002 -24 -24
s10.7002 -24 24 -24zM96 120c13.2998 0 24 10.7002 24 24s-10.7002 24 -24 24s-24 -10.7002 -24 -24s10.7002 -24 24 -24zM96 216c13.2998 0 24 10.7002 24 24s-10.7002 24 -24 24s-24 -10.7002 -24 -24s10.7002 -24 24 -24zM192 408c-13.2998 0 -24 -10.7002 -24 -24
s10.7002 -24 24 -24s24 10.7002 24 24s-10.7002 24 -24 24zM320 40v16c0 4.40039 -3.59961 8 -8 8h-144c-4.40039 0 -8 -3.59961 -8 -8v-16c0 -4.40039 3.59961 -8 8 -8h144c4.40039 0 8 3.59961 8 8zM320 136v16c0 4.40039 -3.59961 8 -8 8h-144
c-4.40039 0 -8 -3.59961 -8 -8v-16c0 -4.40039 3.59961 -8 8 -8h144c4.40039 0 8 3.59961 8 8zM320 232v16c0 4.40039 -3.59961 8 -8 8h-144c-4.40039 0 -8 -3.59961 -8 -8v-16c0 -4.40039 3.59961 -8 8 -8h144c4.40039 0 8 3.59961 8 8z" />
    <glyph glyph-name="diagnoses" unicode="&#xf470;" horiz-adv-x="640" 
d="M496 192c-8.7998 0 -16 7.2002 -16 16s7.2002 16 16 16s16 -7.2002 16 -16s-7.2002 -16 -16 -16zM320 272c-48.5 0 -88 39.5 -88 88s39.5 88 88 88s88 -39.5 88 -88s-39.5 -88 -88 -88zM59.7998 84l-17.7002 26.7002c-8.7998 13.2998 -7.59961 34.5996 10 45.0996
c7.40039 4.40039 17.5 10 28.7002 16c31.6006 -27.2998 79 -4.2002 79.2002 36c47.0996 17.7002 103 32.2002 160 32.2002c45.0996 0 89.2998 -9.2002 129.2 -21.7998c-11.7002 -52.9004 59.5996 -81.2002 87.7002 -35.1006
c21.3994 -10.3994 39.1992 -20.2998 51.0996 -27.3994c17.5996 -10.5 18.7998 -31.9004 10 -45.1006l-17.7998 -26.6992c-10.2002 -15.1006 -29.2998 -17.8008 -42.9004 -9.80078c-16.2002 9.60059 -56.2002 31.8008 -105.3 48.6006v-90.7002h-224v90.7998
c-49.0996 -16.8994 -89.0996 -39 -105.3 -48.5996c-13.6006 -8 -32.7002 -5.5 -42.9004 9.7998zM368 104c-13.2998 0 -24 -10.7002 -24 -24s10.7002 -24 24 -24s24 10.7002 24 24s-10.7002 24 -24 24zM272 200c-13.2998 0 -24 -10.7002 -24 -24s10.7002 -24 24 -24
s24 10.7002 24 24s-10.7002 24 -24 24zM112 192c-8.7998 0 -16 7.2002 -16 16s7.2002 16 16 16s16 -7.2002 16 -16s-7.2002 -16 -16 -16zM624 0c8.7998 0 16 -7.2002 16 -16v-32c0 -8.7998 -7.2002 -16 -16 -16h-608c-8.7998 0 -16 7.2002 -16 16v32
c0 8.7998 7.2002 16 16 16h608z" />
    <glyph glyph-name="dna" unicode="&#xf471;" horiz-adv-x="448" 
d="M0.0996094 -46.0996c5.2002 42.8994 31.4004 153.899 159.9 238.1c-128.6 84.2002 -154.7 195.2 -159.9 238.1c-1.09961 9.5 6.40039 17.8008 16 17.8008l32.3008 0.0996094c8.09961 0.0996094 14.8994 -5.90039 16 -13.9004
c0.699219 -5 1.7998 -11.0996 3.39941 -18.0996h312.4c1.59961 7 2.7002 13.2002 3.39941 18.0996c1.10059 8 7.90039 13.9004 16 13.9004l32.4004 -0.0996094c9.59961 0 17 -8.30078 15.9004 -17.8008c-5.80078 -47.8994 -37.4004 -181.199 -209.5 -266.699
c-31.7002 -15.8008 -57.4004 -33.3008 -78.7002 -51.4004h127.6c-5.59961 4.7998 -10.7998 9.59961 -17 14.2002c21.4004 11.2002 40.9004 23 58.5 35.3994c93.2998 -78.6992 114.3 -169.8 118.9 -207.699c1.2002 -9.5 -6.2998 -17.8008 -15.9004 -17.8008
l-32.2998 -0.0996094c-8.09961 -0.0996094 -14.9004 5.90039 -16 13.9004c-0.599609 4.89941 -1.90039 11.1992 -3.5 18.0996h-312.3c-1.60059 -7 -2.7002 -13.2002 -3.40039 -18.0996c-1.09961 -8 -7.89941 -13.9004 -16 -13.9004l-32.2998 0.0996094
c-9.59961 0 -17 8.30078 -15.9004 17.8008zM224 228.4c25.0996 13.5996 46.4004 28.3994 64.2002 43.5996h-128.5c17.8994 -15.2002 39.2002 -29.9004 64.2998 -43.5996zM355.1 352h-262.1c5.7002 -10.4004 12.7002 -21.0996 21 -32h220.1
c8.2002 10.9004 15.2002 21.5996 21 32zM92.9004 32h261.6c-5.7998 10.4004 -12.9004 21.0996 -21.2002 32h-219.399c-8.2002 -10.9004 -15.2002 -21.5996 -21 -32z" />
    <glyph glyph-name="dolly" unicode="&#xf472;" horiz-adv-x="576" 
d="M294.2 170.3l-53 159.4c-2.7998 8.2998 1.7002 17.3994 10.0996 20.2002l61.6006 20.5l33.0996 -99.4004l60.7002 20.0996l-33.1006 99.4004l61.1006 20.4004c8.2998 2.7998 17.3994 -1.7002 20.2002 -10.1006l60.3994 -181.2
c2.7998 -8.2998 -1.7002 -17.3994 -10.0996 -20.1992l-161.5 -53.8008c-14.7998 11.3008 -31.5 19.7002 -49.5 24.7002zM575.2 121.6c2.7998 -8.39941 -1.7998 -17.3994 -10.1006 -20.1992l-213.3 -71.2002c-1.09961 -57.7998 -53.2002 -103.3 -113.399 -92.6006
c-39.4004 6.90039 -71.2002 39.8008 -77.3008 79.2002c-5.69922 36.9004 9.90039 70.1006 36 90.5l-92.1992 276.7h-88.9004c-8.7998 0 -16 7.2002 -16 16v32c0 8.7998 7.2002 16 16 16h112c13.7998 0 26 -8.7998 30.4004 -21.9004l99.3994 -298.199
c29.9004 -0.600586 56.2998 -15 73.5 -37l213.5 71.1992c8.2998 2.80078 17.4004 -1.69922 20.2002 -10.0996zM256 -16c26.5 0 48 21.5 48 48s-21.5 48 -48 48s-48 -21.5 -48 -48s21.5 -48 48 -48z" />
    <glyph glyph-name="dolly-flatbed" unicode="&#xf474;" horiz-adv-x="640" 
d="M208 128c-8.7998 0 -16 7.2002 -16 16v256c0 8.7998 7.2002 16 16 16h144v-128l48 32l48 -32v128h144c8.7998 0 16 -7.2002 16 -16v-256c0 -8.7998 -7.2002 -16 -16 -16h-384zM624 64c8.7998 0 16 -7.2002 16 -16v-32c0 -8.7998 -7.2002 -16 -16 -16h-82.7998
c1.7002 -5 2.89941 -10.4004 2.89941 -16c0 -26.5 -21.5 -48 -48 -48s-48 21.5 -48 48c0 5.59961 1.10059 11 2.90039 16h-197.9c1.7002 -5 2.90039 -10.4004 2.90039 -16c0 -26.5 -21.5 -48 -48 -48s-48 21.5 -48 48c0 5.59961 1.09961 11 2.90039 16h-82.9004
c-8.7998 0 -16 7.2002 -16 16v368h-48c-8.7998 0 -16 7.2002 -16 16v32c0 8.7998 7.2002 16 16 16h96c8.7998 0 16 -7.2002 16 -16v-368h496z" />
    <glyph glyph-name="file-medical" unicode="&#xf477;" horiz-adv-x="384" 
d="M377 343c4.5 -4.5 7 -10.5996 7 -16.9004v-6.09961h-128v128h6.09961c6.40039 0 12.5 -2.5 17 -7zM224 312c0 -13.2002 10.7998 -24 24 -24h136v-328c0 -13.2998 -10.7002 -24 -24 -24h-336c-13.2998 0 -24 10.7002 -24 24v464c0 13.2998 10.7002 24 24 24h200v-136z
M288 152c0 4.40039 -3.59961 8 -8 8h-56v56c0 4.40039 -3.59961 8 -8 8h-48c-4.40039 0 -8 -3.59961 -8 -8v-56h-56c-4.40039 0 -8 -3.59961 -8 -8v-48c0 -4.40039 3.59961 -8 8 -8h56v-56c0 -4.40039 3.59961 -8 8 -8h48c4.40039 0 8 3.59961 8 8v56h56
c4.40039 0 8 3.59961 8 8v48z" />
    <glyph glyph-name="file-medical-alt" unicode="&#xf478;" horiz-adv-x="448" 
d="M288 312c0 -13.2002 10.7998 -24 24 -24h136v-328c0 -13.2998 -10.7002 -24 -24 -24h-336c-13.2998 0 -24 10.7002 -24 24v168h70.0996l34.8008 -69.5c2.89941 -5.90039 11.3994 -5.90039 14.2998 0l56.7998 113.7l22.0996 -44.2002h89.9004c8.7998 0 16 7.2002 16 16
s-7.2002 16 -16 16h-70.2002l-34.7002 69.5c-2.89941 5.90039 -11.3994 5.90039 -14.2998 0l-56.7998 -113.7l-19.9004 39.7998c-1.39941 2.7002 -4.19922 4.40039 -7.19922 4.40039h-140.9c-4.40039 0 -8 3.59961 -8 8v16c0 4.40039 3.59961 8 8 8h56v232
c0 13.2998 10.7002 24 24 24h200v-136zM441 343c4.5 -4.5 7 -10.5996 7 -16.9004v-6.09961h-128v128h6.09961c6.40039 0 12.5 -2.5 17 -7z" />
    <glyph glyph-name="first-aid" unicode="&#xf479;" horiz-adv-x="576" 
d="M0 368c0 26.5 21.5 48 48 48h48v-448h-48c-26.5 0 -48 21.5 -48 48v352zM128 -32v448h320v-448h-320zM192 216v-48c0 -4.40039 3.59961 -8 8 -8h56v-56c0 -4.40039 3.59961 -8 8 -8h48c4.40039 0 8 3.59961 8 8v56h56c4.40039 0 8 3.59961 8 8v48
c0 4.40039 -3.59961 8 -8 8h-56v56c0 4.40039 -3.59961 8 -8 8h-48c-4.40039 0 -8 -3.59961 -8 -8v-56h-56c-4.40039 0 -8 -3.59961 -8 -8zM528 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-48v448h48z" />
    <glyph glyph-name="hospital-alt" unicode="&#xf47d;" horiz-adv-x="576" 
d="M544 352c17.7002 0 32 -14.2998 32 -32v-368c0 -8.7998 -7.2002 -16 -16 -16h-544c-8.7998 0 -16 7.2002 -16 16v368c0 17.7002 14.2998 32 32 32h128v64c0 17.7002 14.2998 32 32 32h192c17.7002 0 32 -14.2998 32 -32v-64h128zM160 12v40c0 6.59961 -5.40039 12 -12 12
h-40c-6.59961 0 -12 -5.40039 -12 -12v-40c0 -6.59961 5.40039 -12 12 -12h40c6.59961 0 12 5.40039 12 12zM160 140v40c0 6.59961 -5.40039 12 -12 12h-40c-6.59961 0 -12 -5.40039 -12 -12v-40c0 -6.59961 5.40039 -12 12 -12h40c6.59961 0 12 5.40039 12 12zM320 12v40
c0 6.59961 -5.40039 12 -12 12h-40c-6.59961 0 -12 -5.40039 -12 -12v-40c0 -6.59961 5.40039 -12 12 -12h40c6.59961 0 12 5.40039 12 12zM320 140v40c0 6.59961 -5.40039 12 -12 12h-40c-6.59961 0 -12 -5.40039 -12 -12v-40c0 -6.59961 5.40039 -12 12 -12h40
c6.59961 0 12 5.40039 12 12zM336 310v20c0 3.2998 -2.7002 6 -6 6h-26v26c0 3.2998 -2.7002 6 -6 6h-20c-3.2998 0 -6 -2.7002 -6 -6v-26h-26c-3.2998 0 -6 -2.7002 -6 -6v-20c0 -3.2998 2.7002 -6 6 -6h26v-26c0 -3.2998 2.7002 -6 6 -6h20c3.2998 0 6 2.7002 6 6v26h26
c3.2998 0 6 2.7002 6 6zM480 12v40c0 6.59961 -5.40039 12 -12 12h-40c-6.59961 0 -12 -5.40039 -12 -12v-40c0 -6.59961 5.40039 -12 12 -12h40c6.59961 0 12 5.40039 12 12zM480 140v40c0 6.59961 -5.40039 12 -12 12h-40c-6.59961 0 -12 -5.40039 -12 -12v-40
c0 -6.59961 5.40039 -12 12 -12h40c6.59961 0 12 5.40039 12 12z" />
    <glyph glyph-name="hospital-symbol" unicode="&#xf47e;" 
d="M256 448c141.4 0 256 -114.6 256 -256s-114.6 -256 -256 -256s-256 114.6 -256 256s114.6 256 256 256zM368 72v240c0 4.40039 -3.59961 8 -8 8h-48c-4.40039 0 -8 -3.59961 -8 -8v-88h-96v88c0 4.40039 -3.59961 8 -8 8h-48c-4.40039 0 -8 -3.59961 -8 -8v-240
c0 -4.40039 3.59961 -8 8 -8h48c4.40039 0 8 3.59961 8 8v88h96v-88c0 -4.40039 3.59961 -8 8 -8h48c4.40039 0 8 3.59961 8 8z" />
    <glyph glyph-name="id-card-alt" unicode="&#xf47f;" horiz-adv-x="576" 
d="M528 384c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-480c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h144v-96h192v96h144zM288 224c-35.2998 0 -64 -28.7002 -64 -64s28.7002 -64 64 -64s64 28.7002 64 64s-28.7002 64 -64 64zM381.3 0
c10.4004 0 18.7998 10 15.6006 19.7998c-8.40039 25.7002 -32.5 44.2002 -60.9004 44.2002h-8.2002c-12.2002 -5.09961 -25.7002 -8 -39.7998 -8s-27.5 2.90039 -39.7998 8h-8.2002c-28.5 0 -52.5996 -18.5996 -60.9004 -44.2002
c-3.19922 -9.7998 5.2002 -19.7998 15.6006 -19.7998h186.6zM352 416v-96h-128v96c0 17.7002 14.2998 32 32 32h64c17.7002 0 32 -14.2998 32 -32z" />
    <glyph glyph-name="notes-medical" unicode="&#xf481;" horiz-adv-x="384" 
d="M336 384c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-288c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h80c0 35.2998 28.7002 64 64 64s64 -28.7002 64 -64h80zM192 408c-13.2998 0 -24 -10.7002 -24 -24s10.7002 -24 24 -24s24 10.7002 24 24
s-10.7002 24 -24 24zM288 104v48c0 4.40039 -3.59961 8 -8 8h-56v56c0 4.40039 -3.59961 8 -8 8h-48c-4.40039 0 -8 -3.59961 -8 -8v-56h-56c-4.40039 0 -8 -3.59961 -8 -8v-48c0 -4.40039 3.59961 -8 8 -8h56v-56c0 -4.40039 3.59961 -8 8 -8h48c4.40039 0 8 3.59961 8 8
v56h56c4.40039 0 8 3.59961 8 8zM288 296v16c0 4.40039 -3.59961 8 -8 8h-176c-4.40039 0 -8 -3.59961 -8 -8v-16c0 -4.40039 3.59961 -8 8 -8h176c4.40039 0 8 3.59961 8 8z" />
    <glyph glyph-name="pallet" unicode="&#xf482;" horiz-adv-x="640" 
d="M144 192c-8.7998 0 -16 7.2002 -16 16v224c0 8.7998 7.2002 16 16 16h112v-128l64 32l64 -32v128h112c8.7998 0 16 -7.2002 16 -16v-224c0 -8.7998 -7.2002 -16 -16 -16h-352zM624 64h-48v-64h48c8.7998 0 16 -7.2002 16 -16v-32c0 -8.7998 -7.2002 -16 -16 -16h-608
c-8.7998 0 -16 7.2002 -16 16v32c0 8.7998 7.2002 16 16 16h48v64h-48c-8.7998 0 -16 7.2002 -16 16v32c0 8.7998 7.2002 16 16 16h608c8.7998 0 16 -7.2002 16 -16v-32c0 -8.7998 -7.2002 -16 -16 -16zM288 0v64h-160v-64h160zM512 0v64h-160v-64h160z" />
    <glyph glyph-name="pills" unicode="&#xf484;" horiz-adv-x="576" 
d="M112 416c61.9004 0 112 -50.0996 112 -112v-224c0 -61.9004 -50.0996 -112 -112 -112s-112 50.0996 -112 112v224c0 61.9004 50.0996 112 112 112zM160 192v112c0 26.5 -21.5 48 -48 48s-48 -21.5 -48 -48v-112h96zM299.7 221.7l210.8 -210.8
c3.5 -3.5 3.2002 -9.40039 -0.799805 -12.3008c-62.5 -45.2998 -150.101 -40.3994 -206.4 15.9004s-61.2002 143.9 -15.8994 206.4c2.89941 3.89941 8.7998 4.2998 12.2998 0.799805zM529.5 240.7c56.4004 -56.2998 61.2002 -143.8 15.9004 -206.4
c-2.90039 -3.89941 -8.80078 -4.2998 -12.3008 -0.799805l-210.8 210.8c-3.5 3.5 -3.2002 9.40039 0.799805 12.2998c62.5 45.3008 150.101 40.4004 206.4 -15.8994z" />
    <glyph glyph-name="prescription-bottle" unicode="&#xf485;" horiz-adv-x="384" 
d="M32 256v64h320v-352c0 -17.5996 -14.4004 -32 -32 -32h-256c-17.5996 0 -32 14.4004 -32 32v64h120c4.40039 0 8 3.59961 8 8v16c0 4.40039 -3.59961 8 -8 8h-120v64h120c4.40039 0 8 3.59961 8 8v16c0 4.40039 -3.59961 8 -8 8h-120v64h120c4.40039 0 8 3.59961 8 8v16
c0 4.40039 -3.59961 8 -8 8h-120zM360 448c13.2002 0 24 -10.7998 24 -24v-48c0 -13.2002 -10.7998 -24 -24 -24h-336c-13.2002 0 -24 10.7998 -24 24v48c0 13.2002 10.7998 24 24 24h336z" />
    <glyph glyph-name="prescription-bottle-alt" unicode="&#xf486;" horiz-adv-x="384" 
d="M360 448c13.2002 0 24 -10.7998 24 -24v-48c0 -13.2002 -10.7998 -24 -24 -24h-336c-13.2002 0 -24 10.7998 -24 24v48c0 13.2002 10.7998 24 24 24h336zM32 -32v352h320v-352c0 -17.5996 -14.4004 -32 -32 -32h-256c-17.5996 0 -32 14.4004 -32 32zM96 152v-48
c0 -4.40039 3.59961 -8 8 -8h56v-56c0 -4.40039 3.59961 -8 8 -8h48c4.40039 0 8 3.59961 8 8v56h56c4.40039 0 8 3.59961 8 8v48c0 4.40039 -3.59961 8 -8 8h-56v56c0 4.40039 -3.59961 8 -8 8h-48c-4.40039 0 -8 -3.59961 -8 -8v-56h-56c-4.40039 0 -8 -3.59961 -8 -8z
" />
    <glyph glyph-name="procedures" unicode="&#xf487;" horiz-adv-x="640" 
d="M528 224c61.9004 0 112 -50.0996 112 -112v-160c0 -8.7998 -7.2002 -16 -16 -16h-32c-8.7998 0 -16 7.2002 -16 16v48h-512v-48c0 -8.7998 -7.2002 -16 -16 -16h-32c-8.7998 0 -16 7.2002 -16 16v352c0 8.7998 7.2002 16 16 16h32c8.7998 0 16 -7.2002 16 -16v-240h192
v144c0 8.7998 7.2002 16 16 16h256zM136 352c-4.40039 0 -8 3.59961 -8 8v16c0 4.40039 3.59961 8 8 8h140.9c3.09961 0 5.7998 -1.7002 7.19922 -4.40039l19.9004 -39.7998l49.7002 99.4004c5.89941 11.7998 22.7002 11.7998 28.5996 0l27.6006 -55.2002h102.1
c8.7998 0 16 -7.2002 16 -16s-7.2002 -16 -16 -16h-121.9l-22.0996 44.2002l-49.7002 -99.4004c-5.89941 -11.7998 -22.7002 -11.7998 -28.5996 0l-27.6006 55.2002h-126.1zM160 96c-35.2998 0 -64 28.7002 -64 64s28.7002 64 64 64s64 -28.7002 64 -64
s-28.7002 -64 -64 -64z" />
    <glyph glyph-name="shipping-fast" unicode="&#xf48b;" horiz-adv-x="640" 
d="M624 96c8.7998 0 16 -7.2002 16 -16v-32c0 -8.7998 -7.2002 -16 -16 -16h-48c0 -53 -43 -96 -96 -96s-96 43 -96 96h-128c0 -53 -43 -96 -96 -96s-96 43 -96 96v128h152c4.40039 0 8 3.59961 8 8v16c0 4.40039 -3.59961 8 -8 8h-208c-4.40039 0 -8 3.59961 -8 8v16
c0 4.40039 3.59961 8 8 8h240c4.40039 0 8 3.59961 8 8v16c0 4.40039 -3.59961 8 -8 8h-208c-4.40039 0 -8 3.59961 -8 8v16c0 4.40039 3.59961 8 8 8h240c4.40039 0 8 3.59961 8 8v16c0 4.40039 -3.59961 8 -8 8h-272c-4.40039 0 -8 3.59961 -8 8v16
c0 4.40039 3.59961 8 8 8h56v48c0 26.5 21.5 48 48 48h256c26.5 0 48 -21.5 48 -48v-48h44.0996c12.7002 0 24.9004 -5.09961 33.9004 -14.0996l99.9004 -99.9004c9 -9 14.0996 -21.2002 14.0996 -33.9004v-108.1h16zM160 -16c26.5 0 48 21.5 48 48s-21.5 48 -48 48
s-48 -21.5 -48 -48s21.5 -48 48 -48zM480 -16c26.5 0 48 21.5 48 48s-21.5 48 -48 48s-48 -21.5 -48 -48s21.5 -48 48 -48zM560 192v12.0996l-99.9004 99.9004h-44.0996v-112h144z" />
    <glyph glyph-name="smoking" unicode="&#xf48d;" horiz-adv-x="640" 
d="M632 96c4.40039 0 8 -3.59961 8 -8v-144c0 -4.40039 -3.59961 -8 -8 -8h-48c-4.40039 0 -8 3.59961 -8 8v144c0 4.40039 3.59961 8 8 8h48zM553.3 360.9c54.2998 -36.4004 86.7002 -97.1006 86.7002 -162.601v-30.2998c0 -4.40039 -3.59961 -8 -8 -8h-48
c-4.40039 0 -8 3.59961 -8 8v30.2998c0 50.2002 -25.2002 96.7002 -67.4004 124c-18.3994 12 -28.5996 33.4004 -28.5996 55.4004v62.2998c0 4.40039 3.59961 8 8 8h48c4.40039 0 8 -3.59961 8 -8v-62.2998c0 -6.7998 3.59961 -13 9.2998 -16.7998zM432 96
c8.7998 0 16 -7.2002 16 -16v-128c0 -8.7998 -7.2002 -16 -16 -16h-384c-26.5 0 -48 21.5 -48 48v64c0 26.5 21.5 48 48 48h384zM400 -16v64h-176v-64h176zM487.7 306.4c35.2998 -24.7002 56.2998 -64.8008 56.2998 -108.101v-30.2998c0 -4.40039 -3.59961 -8 -8 -8h-48
c-4.40039 0 -8 3.59961 -8 8v30.2998c0 27.4004 -13.2998 52.9004 -35.7002 68.6006c-35.7002 25.0996 -60.2998 63 -60.2998 106.699v66.4004c0 4.40039 3.59961 8 8 8h48c4.40039 0 8 -3.59961 8 -8v-62.2998c0 -29 15.7998 -54.7002 39.7002 -71.2998zM536 96
c4.40039 0 8 -3.59961 8 -8v-144c0 -4.40039 -3.59961 -8 -8 -8h-48c-4.40039 0 -8 3.59961 -8 8v144c0 4.40039 3.59961 8 8 8h48z" />
    <glyph glyph-name="syringe" unicode="&#xf48e;" 
d="M201.5 273.2l64.9004 65l135.699 -135.7l-181.899 -181.9c-17.5 -17.5996 -41.5 -25.5996 -65.4004 -23l-63.5996 7.10059l-66.2998 -66.2998c-3.10059 -3.10059 -8.2002 -3.10059 -11.3008 0l-11.2998 11.2998c-3.09961 3.09961 -3.09961 8.2002 0 11.2998
l66.4004 66.4004l-7.10059 63.5996c-2.59961 24.2998 5.7002 48.0996 23 65.4004l26.4004 26.3994l55.7998 -55.8994c3.10059 -3.10059 8.2002 -3.10059 11.2998 0l11.3008 11.2998c3.09961 3.09961 3.09961 8.2002 0 11.2998l-55.8008 55.7998l45.3008 45.2998
l55.6992 -55.7998c3.10059 -3.09961 8.2002 -3.09961 11.3008 0l11.2998 11.2998c3.09961 3.10059 3.09961 8.2002 0 11.3008zM509.7 366.5c3.09961 -3.2002 3.09961 -8.2002 0 -11.4004l-11.2998 -11.2998c-3.10059 -3.09961 -8.2002 -3.09961 -11.3008 0l-28.2998 28.2998
l-45.2998 -45.2998l73.5 -73.5c3.09961 -3.09961 3.09961 -8.2002 0 -11.2998l-33.9004 -34c-3.09961 -3.09961 -8.19922 -3.09961 -11.2998 0l-17 17l-135.7 135.9l-17 17c-3.09961 3.09961 -3.09961 8.19922 0 11.2998l33.9004 33.8994
c3.09961 3.10059 8.2002 3.10059 11.2998 0l17 -17l56.6006 -56.5996l45.2998 45.2998l-28.2998 28.2998c-3.10059 3.10059 -3.10059 8.2002 0 11.3008l11.2998 11.2998c3.09961 3.09961 8.2002 3.09961 11.2998 0z" />
    <glyph glyph-name="tablets" unicode="&#xf490;" horiz-adv-x="640" 
d="M160 256c81.0996 0 147.5 -58.5 160 -134.7c0.799805 -4.7998 -3.2998 -9.2998 -8.2998 -9.2998h-303.3c-5 0 -9.10059 4.5 -8.30078 9.2998c12.4004 76.2002 78.8008 134.7 159.9 134.7zM311.6 80c5 0 9.10059 -4.5 8.30078 -9.2998
c-12.4004 -76.2002 -78.8008 -134.7 -159.9 -134.7s-147.5 58.5 -159.9 134.7c-0.799805 4.7998 3.30078 9.2998 8.30078 9.2998h303.199zM593.4 401.4c56.5 -56.5 61.3994 -144.2 15.8994 -206.9c-2.7998 -4 -8.7998 -4.2998 -12.2998 -0.799805l-211.3 211.399
c-3.5 3.40039 -3.2002 9.40039 0.799805 12.3008c62.7002 45.3994 150.4 40.5 206.9 -16zM363 382.3l211.3 -211.3c3.5 -3.40039 3.2002 -9.40039 -0.799805 -12.2998c-62.7002 -45.5 -150.4 -40.6006 -206.9 15.8994c-56.3994 56.5 -61.2998 144.2 -15.8994 206.9
c2.7998 4 8.7998 4.2998 12.2998 0.799805z" />
    <glyph glyph-name="thermometer" unicode="&#xf491;" 
d="M476.8 427.6c49.4004 -40.6992 42.1006 -107.3 7.2002 -142.199l-254.2 -253.301h-99.8994l-89 -89c-9.30078 -9.39941 -24.5 -9.39941 -33.9004 0c-9.40039 9.30078 -9.40039 24.5 0 33.9004l89 89v100.9l45.2998 45.6992l50.1006 -50.1992
c3.09961 -3.10059 8.19922 -3.10059 11.2998 0l11.2998 11.2998c3.09961 3.09961 3.09961 8.2002 0 11.2998l-50.0996 50.2002l45.0996 45.3994l50.2998 -50.1992c3.10059 -3.10059 8.2002 -3.10059 11.2998 0l11.3008 11.2998c3.09961 3.09961 3.09961 8.2002 0 11.2998
l-50.3008 50.4004l45.1006 45.3994l50.3994 -50.5c3.10059 -3.09961 8.2002 -3.09961 11.3008 0l11.2998 11.2998c3.09961 3.10059 3.09961 8.2002 0 11.3008l-50.5 50.5l45.7002 46c36.3994 36.5 94.3994 40.8994 131.899 10.1992z" />
    <glyph glyph-name="vial" unicode="&#xf492;" horiz-adv-x="480" 
d="M477.7 261.9c3.09961 -3.10059 3.09961 -8.2002 0 -11.2002l-34 -33.9004c-3.10059 -3.09961 -8.2002 -3.09961 -11.2998 0l-11.2002 11.1006l-246.3 -245.7c-20.1006 -20.1006 -46.5 -30.1006 -72.9004 -30.1006c-28.9004 -0.0996094 -57.7998 11.9004 -78.4004 35.9004
c-35.6992 41.5 -29.3994 104.8 9.40039 143.5l242.4 241.9l-11.2002 11.0996c-3.10059 3.09961 -3.10059 8.2002 0 11.2998l34 33.9004c3.09961 3.09961 8.2002 3.09961 11.2998 0zM318 192l69.5 69.4004l-78.5 78.2998l-148 -147.7h157z" />
    <glyph glyph-name="vials" unicode="&#xf493;" horiz-adv-x="640" 
d="M72 384c-4.40039 0 -8 3.59961 -8 8v48c0 4.40039 3.59961 8 8 8h208c4.40039 0 8 -3.59961 8 -8v-48c0 -4.40039 -3.59961 -8 -8 -8h-24v-240c0 -44.0996 -35.9004 -80 -80 -80s-80 35.9004 -80 80v240h-24zM144 384v-96h64v96h-64zM624 0c8.7998 0 16 -7.2002 16 -16
v-32c0 -8.7998 -7.2002 -16 -16 -16h-608c-8.7998 0 -16 7.2002 -16 16v32c0 8.7998 7.2002 16 16 16h608zM360 384c-4.40039 0 -8 3.59961 -8 8v48c0 4.40039 3.59961 8 8 8h208c4.40039 0 8 -3.59961 8 -8v-48c0 -4.40039 -3.59961 -8 -8 -8h-24v-240
c0 -44.0996 -35.9004 -80 -80 -80s-80 35.9004 -80 80v240h-24zM432 384v-96h64v96h-64z" />
    <glyph glyph-name="warehouse" unicode="&#xf494;" horiz-adv-x="640" 
d="M504 96c4.40039 0 8 -3.59961 8 -8v-48c0 -4.40039 -3.59961 -8 -8 -8h-367.7c-4.39941 0 -8 3.59961 -8 8l0.100586 48c0 4.40039 3.59961 8 8 8h367.6zM504 0c4.40039 0 8 -3.59961 8 -8v-48c0 -4.40039 -3.59961 -8 -8 -8h-368c-4.40039 0 -8 3.59961 -8 8
l0.0996094 48c0 4.40039 3.60059 8 8 8h367.9zM504 192c4.40039 0 8 -3.59961 8 -8v-48c0 -4.40039 -3.59961 -8 -8 -8h-367.5c-4.40039 0 -8 3.59961 -8 8l0.0996094 48c0 4.40039 3.60059 8 8 8h367.4zM610.5 331c17.7998 -7.5 29.5 -24.9004 29.5 -44.2998v-342.7
c0 -4.40039 -3.59961 -8 -8 -8h-80c-4.40039 0 -8 3.59961 -8 8v248c0 17.5996 -14.5996 32 -32.5996 32h-382.801c-18 0 -32.5996 -14.4004 -32.5996 -32v-248c0 -4.40039 -3.59961 -8 -8 -8h-80c-4.40039 0 -8 3.59961 -8 8v342.7c0 19.3994 11.7002 36.7998 29.5 44.2998
l272 113.3c5.6748 2.35449 11.959 3.6543 18.4814 3.6543s12.7432 -1.2998 18.4189 -3.6543z" />
    <glyph glyph-name="weight" unicode="&#xf496;" 
d="M448 384c35.29 0 64 -28.71 64 -64v-320c0 -35.29 -28.71 -64 -64 -64h-384c-35.29 0 -64 28.71 -64 64v320c0 35.29 28.71 64 64 64h25.9805c-16.4209 -28.2803 -25.9805 -61.0098 -25.9805 -96c0 -105.87 86.1299 -192 192 -192s192 86.1299 192 192
c0 34.9902 -9.55957 67.7197 -25.9805 96h25.9805zM256 128c-88.3701 0 -160 71.6299 -160 160s71.6299 160 160 160s160 -71.6299 160 -160s-71.6299 -160 -160 -160zM255.7 279.94c-21.9404 -0.170898 -39.7002 -17.96 -39.7002 -39.9404c0 -22.0898 17.9102 -40 40 -40
s40 17.9102 40 40c0 10.5498 -4.26953 20 -10.9502 27.1602l33.6699 78.5498c3.4707 8.11035 -0.290039 17.5205 -8.41016 21c-8.08984 3.50977 -17.5293 -0.240234 -21.0293 -8.41016z" />
    <glyph glyph-name="x-ray" unicode="&#xf497;" horiz-adv-x="640" 
d="M240 64c8.7998 0 16 -7.2002 16 -16s-7.2002 -16 -16 -16s-16 7.2002 -16 16s7.2002 16 16 16zM400 32c-8.7998 0 -16 7.2002 -16 16s7.2002 16 16 16s16 -7.2002 16 -16s-7.2002 -16 -16 -16zM624 448c8.7998 0 16 -7.2002 16 -16v-32c0 -8.7998 -7.2002 -16 -16 -16
h-608c-8.7998 0 -16 7.2002 -16 16v32c0 8.7998 7.2002 16 16 16h608zM624 0c8.7998 0 16 -7.2002 16 -16v-32c0 -8.7998 -7.2002 -16 -16 -16h-608c-8.7998 0 -16 7.2002 -16 16v32c0 8.7998 7.2002 16 16 16h48v352h512v-352h48zM480 200v16c0 4.40039 -3.59961 8 -8 8
h-136v32h104c4.40039 0 8 3.59961 8 8v16c0 4.40039 -3.59961 8 -8 8h-104v24c0 4.40039 -3.59961 8 -8 8h-16c-4.40039 0 -8 -3.59961 -8 -8v-24h-104c-4.40039 0 -8 -3.59961 -8 -8v-16c0 -4.40039 3.59961 -8 8 -8h104v-32h-136c-4.40039 0 -8 -3.59961 -8 -8v-16
c0 -4.40039 3.59961 -8 8 -8h136v-32h-104c-4.40039 0 -8 -3.59961 -8 -8v-16c0 -4.40039 3.59961 -8 8 -8h104v-32h-64c-26.5 0 -48 -21.5 -48 -48s21.5 -48 48 -48s48 21.5 48 48v16h64v-16c0 -26.5 21.5 -48 48 -48s48 21.5 48 48s-21.5 48 -48 48h-64v32h104
c4.40039 0 8 3.59961 8 8v16c0 4.40039 -3.59961 8 -8 8h-104v32h136c4.40039 0 8 3.59961 8 8z" />
    <glyph glyph-name="box-open" unicode="&#xf49e;" horiz-adv-x="640" 
d="M425.7 192c4.5 0 9 0.599609 13.2998 1.90039l137 39.0996v-178c0 -14.5996 -10 -27.4004 -24.2002 -31l-216.399 -54.0996c-10.1006 -2.5 -20.8008 -2.5 -31 0l-216.2 54.0996c-14.2002 3.5 -24.2002 16.2998 -24.2002 31v178l137 -39.2002
c4.2998 -1.2998 8.7998 -1.89941 13.2998 -1.89941c16.9004 0 32.7998 9 41.5 23.5l64.2002 106.6l64.2998 -106.6c8.60059 -14.4004 24.5 -23.4004 41.4004 -23.4004zM638.3 304.2c4.5 -9.2002 -0.299805 -20.2002 -10.2002 -23.1006l-197.899 -56.5
c-7.10059 -2 -14.7002 1 -18.5 7.30078l-91.7002 152.1l250.1 31.9004c6.90039 0.899414 13.6006 -2.7002 16.7002 -8.90039zM53.2002 407c3.09961 6.2002 9.7002 9.7002 16.5996 8.90039l250.2 -31.9004l-91.7998 -152c-3.7998 -6.2998 -11.4004 -9.2998 -18.5 -7.2998
l-197.9 56.5c-9.7998 2.7998 -14.7002 13.7998 -10.0996 23z" />
    <glyph glyph-name="comment-dots" unicode="&#xf4ad;" 
d="M256 416c141.4 0 256 -93.0996 256 -208s-114.6 -208 -256 -208c-38.4004 0 -74.7002 7.09961 -107.4 19.4004c-24.5996 -19.6006 -74.2998 -51.4004 -140.6 -51.4004c-3.2002 0 -6 1.7998 -7.2998 4.7998s-0.700195 6.40039 1.5 8.7002
c0.5 0.5 42.2998 45.4004 54.7998 95.7998c-35.5996 35.7002 -57 81.1006 -57 130.7c0 114.9 114.6 208 256 208zM128 176c17.7002 0 32 14.2998 32 32s-14.2998 32 -32 32s-32 -14.2998 -32 -32s14.2998 -32 32 -32zM256 176c17.7002 0 32 14.2998 32 32
s-14.2998 32 -32 32s-32 -14.2998 -32 -32s14.2998 -32 32 -32zM384 176c17.7002 0 32 14.2998 32 32s-14.2998 32 -32 32s-32 -14.2998 -32 -32s14.2998 -32 32 -32z" />
    <glyph glyph-name="comment-slash" unicode="&#xf4b3;" horiz-adv-x="640" 
d="M64 208c0 18.5996 3.2998 36.5 8.90039 53.5996l325.5 -251.6c-24.7002 -6.40039 -51 -10 -78.4004 -10c-38.4004 0 -74.7002 7.09961 -107.4 19.4004c-24.5996 -19.6006 -74.2998 -51.4004 -140.6 -51.4004c-3.2002 0 -6 1.90039 -7.2998 4.7998
c-1.2998 3 -0.700195 6.40039 1.5 8.7002c0.5 0.599609 42.2002 45.5 54.7998 95.7998c-35.5996 35.7002 -57 81.1006 -57 130.7zM633.8 -10.0996c7 -5.40039 8.2998 -15.5 2.90039 -22.3008l-19.6006 -25.2998c-5.5 -7 -15.5 -8.2002 -22.5 -2.7998l-588.399 454.7
c-7 5.39941 -8.2002 15.3994 -2.7998 22.3994l19.5996 25.2002c5.5 7 15.5 8.2002 22.5 2.7998l105.1 -81.2998c45.2002 32.6006 104.301 52.7002 169.4 52.7002c141.4 0 256 -93.0996 256 -208c0 -49.2002 -21.4004 -94.0996 -56.5996 -129.7z" />
    <glyph glyph-name="couch" unicode="&#xf4b8;" horiz-adv-x="640" 
d="M160 224c0 35.2998 -28.7002 64 -64 64h-32c0 53 43 96 96 96h320c53 0 96 -43 96 -96h-32c-35.2998 0 -64 -28.7002 -64 -64v-64h-320v64zM576 256c35.2998 0 64 -28.7002 64 -64c0 -23.5996 -13 -44 -32 -55.0996v-120.9c0 -8.7998 -7.2002 -16 -16 -16h-64
c-8.7998 0 -16 7.2002 -16 16v16h-384v-16c0 -8.7998 -7.2002 -16 -16 -16h-64c-8.7998 0 -16 7.2002 -16 16v120.9c-19 11.0996 -32 31.5 -32 55.0996c0 35.2998 28.7002 64 64 64h32c17.7002 0 32 -14.2998 32 -32v-96h384v96c0 17.7002 14.2998 32 32 32h32z" />
    <glyph glyph-name="donate" unicode="&#xf4b9;" 
d="M256 32c-114.9 0 -208 93.0996 -208 208s93.0996 208 208 208s208 -93.0996 208 -208s-93.0996 -208 -208 -208zM233.8 350.6c-32.7002 -0.899414 -59 -28.3994 -59.0996 -62.3994c0 -27.7002 18 -52.4004 43.7002 -60.1006l62.2998 -18.6992
c7.09961 -2.10059 12.0996 -9.40039 12.0996 -17.6006c0 -10.0996 -7.2998 -18.2998 -16.2998 -18.2998h-38.9004c-6.39941 0 -12.3994 1.7002 -17.7998 5.09961c-4.5 2.80078 -10.2002 2.7002 -14 -1l-16.2998 -15.5c-5 -4.7998 -4.40039 -13 1.2002 -17.0996
c12.5 -9.2998 27.5 -14.5996 43 -15.4004v-17c0 -9.19922 7.39941 -16.5996 16.5996 -16.5996h11.1006c9.19922 0 16.5996 7.40039 16.5996 16.5996v16.8008c32.7002 0.899414 59.0996 28.3994 59.0996 62.3994c0 27.7002 -18 52.4004 -43.6992 60.1006l-62.3008 18.6992
c-7.09961 2.10059 -12.0996 9.40039 -12.0996 17.6006c0 10.0996 7.2998 18.2998 16.2998 18.2998h38.9004c6.39941 0 12.3994 -1.7002 17.7998 -5.09961c4.5 -2.80078 10.2002 -2.7002 14 1l16.2998 15.5c5 4.7998 4.40039 13 -1.2002 17.0996
c-12.5 9.2998 -27.5 14.5996 -43 15.4004v17c0 9.19922 -7.39941 16.5996 -16.5996 16.5996h-11.0996c-9.2002 0 -16.6006 -7.40039 -16.6006 -16.5996v-16.8008zM480 96c17.7002 0 32 -14.2998 32 -32v-96c0 -17.7002 -14.2998 -32 -32 -32h-448
c-17.7002 0 -32 14.2998 -32 32v96c0 17.7002 14.2998 32 32 32h32.4004c19.6992 -26 44.5996 -47.7002 73 -64h-63.8008c-5.2998 0 -9.59961 -3.59961 -9.59961 -8v-16c0 -4.40039 4.2998 -8 9.59961 -8h364.7c5.2998 0 9.60059 3.59961 9.60059 8v16
c0 4.40039 -4.30078 8 -9.60059 8h-63.7998c28.4004 16.2998 53.4004 38 73 64h32.5z" />
    <glyph glyph-name="dove" unicode="&#xf4ba;" 
d="M288 280.8c-50.7998 10.5 -96.5996 36.7998 -130.8 75.1006c11.2002 32.3994 27.7998 61.5996 48.8994 86.5c8.80078 10.5 25.7002 5.19922 27.8008 -8.30078c7 -45.8994 25.8994 -88.8994 54.0996 -125.199v-28.1006zM400 384h112l-32 -64v-160.1
c0 -88.4004 -71.5996 -159.9 -160 -159.9h-76.9004l-65.1992 -56.0996c-6.10059 -5.30078 -14.1006 -8.2002 -22.1006 -7.90039c-92.7998 3.7998 -135.8 49.4004 -153.2 76.2998c-6 9.2998 -1.19922 21.7002 9.5 24.4004l143.9 36
c-12.7998 9.59961 -25.7002 20.0996 -38.9004 32.7998c-51 49 -85.0996 115.1 -85.0996 185.9c0 41.3994 9.40039 80.5996 26 115.699c5.7998 12.3008 23.5 11.6006 29 -0.899414c40 -91.2002 128.6 -155.5 233 -161.7v59.4004c0 44.1992 35.7998 80.0996 80 80.0996z
M400 287.9c8.7998 0 16 7.19922 16 16c0 8.7998 -7.2002 16 -16 16s-16 -7.2002 -16 -16c0 -8.80078 7.2002 -16 16 -16z" />
    <glyph glyph-name="hand-holding" unicode="&#xf4bd;" horiz-adv-x="576" 
d="M565.3 119.9c15.1006 -13.6006 13.9004 -36.8008 -1.2998 -48.9004l-151.2 -121c-11.3994 -9.09961 -25.5 -14 -40 -14h-356.8c-8.7998 0 -16 7.2002 -16 16v96c0 8.7998 7.2002 16 16 16h55.4004l46.5 37.7002c21 17 47.0996 26.2998 74.0996 26.2998h160
c19.5 0 34.9004 -17.4004 31.5996 -37.4004c-2.59961 -15.6992 -17.3994 -26.5996 -33.2998 -26.5996h-78.2998c-8.7998 0 -16 -7.2002 -16 -16s7.2002 -16 16 -16h118.3c14.6006 0 28.7002 4.90039 40 14l92.4004 73.9004c12.3994 10 30.7998 10.6992 42.5996 0z" />
    <glyph glyph-name="hand-holding-heart" unicode="&#xf4be;" horiz-adv-x="576" 
d="M275.3 197.5l-108.899 114.2c-31.6006 33.2002 -29.7002 88.2002 5.59961 118.8c30.7998 26.7002 76.7002 21.9004 104.9 -7.7998l11.0996 -11.6006l11.2002 11.7002c28.2002 29.6006 74.0996 34.4004 104.899 7.7002c35.4004 -30.5996 37.2002 -85.5996 5.60059 -118.8
l-108.9 -114.2c-7.09961 -7.40039 -18.5 -7.40039 -25.5 0zM565.3 119.9c15.1006 -13.6006 13.9004 -36.8008 -1.2998 -48.9004l-151.2 -121c-11.3994 -9.09961 -25.5 -14 -40 -14h-356.8c-8.7998 0 -16 7.2002 -16 16v96c0 8.7998 7.2002 16 16 16h55.4004l46.5 37.7002
c21 17 47.0996 26.2998 74.0996 26.2998h160c19.5 0 34.9004 -17.4004 31.5996 -37.4004c-2.59961 -15.6992 -17.3994 -26.5996 -33.2998 -26.5996h-78.2998c-8.7998 0 -16 -7.2002 -16 -16s7.2002 -16 16 -16h118.3c14.6006 0 28.7002 4.90039 40 14l92.4004 73.9004
c12.3994 10 30.7998 10.6992 42.5996 0z" />
    <glyph glyph-name="hand-holding-usd" unicode="&#xf4c0;" horiz-adv-x="576" 
d="M271.06 303.7c-24.0596 6.39941 -43.4297 24.7002 -46.5693 47.7002c-4.33984 32 20.6201 59.3994 53.5098 63v17.5996c0 8.7998 7.82031 16 17.3701 16h17.3701c9.5498 0 17.3701 -7.2002 17.3701 -16v-17.7197c12.457 -1.28516 24.2842 -5.35938 34.5195 -11.5
c3.32227 -2.00098 5.52734 -5.64746 5.52734 -9.80469c0 -2.18945 -0.617188 -4.23633 -1.6875 -5.97559c-0.592773 -0.978516 -1.31836 -1.8457 -2.16992 -2.59961l-19 -17.5c-4.01953 -3.7002 -10.0693 -4.2002 -15.2998 -2
c-3.46289 1.4043 -7.2666 2.19336 -11.2305 2.19922h-35.5996c-5.03027 0 -9.12012 -3.7998 -9.12012 -8.39941c0.12207 -3.94727 2.91699 -7.23145 6.62988 -8.10059l54.2705 -14.2998c24.0996 -6.39941 43.4102 -24.7002 46.5596 -47.7002
c4.33984 -32 -20.5693 -59.3994 -53.5 -63v-17.5996c0 -8.7998 -7.83008 -16 -17.3799 -16h-17.3701c-9.54004 0 -17.3701 7.2002 -17.3701 16v17.7002c-12.4541 1.28516 -24.2773 5.35938 -34.5098 11.5c-3.33008 1.99609 -5.54199 5.64551 -5.54199 9.80762
c0 2.17188 0.607422 4.20312 1.66211 5.93262c0.617188 1.00098 1.36914 1.88867 2.25 2.65918l19 17.5c4.01953 3.7002 10.0596 4.2002 15.2998 2c3.45117 -1.39941 7.24121 -2.18848 11.1904 -2.19922h35.5996c5.03027 0 9.12012 3.7998 9.12012 8.39941
c-0.121094 3.94727 -2.91602 7.23145 -6.62988 8.10059zM565.27 119.9c6.5918 -5.86328 10.7656 -14.3916 10.7656 -23.8984c0 -10.1123 -4.70117 -19.1357 -12.0352 -25.002l-151.23 -121c-10.9443 -8.74512 -24.8633 -14 -39.9482 -14h-0.0517578h-356.77
c-8.83105 0 -16 7.16895 -16 16v96c0 8.83105 7.16895 16 16 16h55.4004l46.5 37.71c20.2197 16.4053 46.0596 26.2822 74.0996 26.29h160c17.6406 0 31.9668 -14.3066 32 -31.9404c0 -0.0410156 0.000976562 -0.0507812 0.000976562 -0.0917969
c0 -1.83008 -0.158203 -3.62402 -0.460938 -5.36816c-2.54004 -15.6992 -17.3496 -26.5996 -33.25 -26.5996h-78.29c-8.83105 0 -16 -7.16895 -16 -16s7.16895 -16 16 -16h118.27c0.0605469 0 0.161133 0.0234375 0.22168 0.0234375
c15.0459 0 28.8799 5.23242 39.7783 13.9766l92.4004 73.9004c12.4004 10 30.7998 10.6992 42.5996 0z" />
    <glyph glyph-name="hand-holding-water" unicode="&#xf4c1;" horiz-adv-x="576" 
d="M288 192c-53 0 -96 42.0996 -96 94c0 40 57.0996 120.7 83.2002 155.6c6.39941 8.5 19.2002 8.5 25.5996 0c26.1006 -34.8994 83.2002 -115.6 83.2002 -155.6c0 -51.9004 -43 -94 -96 -94zM565.3 119.9c15.1006 -13.6006 13.9004 -36.8008 -1.2998 -48.9004l-151.2 -121
c-11.3994 -9.09961 -25.5 -14 -40 -14h-356.8c-8.7998 0 -16 7.2002 -16 16v96c0 8.7998 7.2002 16 16 16h55.4004l46.5 37.7002c21 17 47.0996 26.2998 74.0996 26.2998h160c19.5 0 34.9004 -17.4004 31.5996 -37.4004
c-2.59961 -15.6992 -17.3994 -26.5996 -33.2998 -26.5996h-78.2998c-8.7998 0 -16 -7.2002 -16 -16s7.2002 -16 16 -16h118.3c14.6006 0 28.7002 4.90039 40 14l92.4004 73.9004c12.3994 10 30.7998 10.6992 42.5996 0z" />
    <glyph glyph-name="hands" unicode="&#xf4c2;" horiz-adv-x="640" 
d="M204.8 217.6l57.6006 -76.7998c16.5996 -22.2002 25.5996 -49.0996 25.5996 -76.7998v-112c0 -8.7998 -7.2002 -16 -16 -16h-131.7c-7.2002 0 -13.5 4.7002 -15.2998 11.5996c-2 7.80078 -5.40039 15.2002 -10.4004 21.7002l-104.1 134.3
c-6.7998 8.5 -10.5 19.1006 -10.5 30v218.4c0 17.7002 14.2998 32 32 32s32 -14.2998 32 -32v-148.4l89.7998 -107.8c6 -7.2998 16.9004 -7.7998 23.6006 -1.09961l12.7998 12.7998c5.59961 5.59961 6.2998 14.5 1.5 20.9004l-38.1006 50.7998
c-10.5996 14.0996 -7.69922 34.2002 6.40039 44.7998s34.2002 7.7002 44.7998 -6.40039zM608 384c17.7002 0 32 -14.2998 32 -32v-218.4c0 -10.8994 -3.7002 -21.5 -10.5 -30l-104.1 -134.3c-5 -6.5 -8.40039 -13.8994 -10.4004 -21.7002
c-1.7998 -6.89941 -8.2002 -11.5996 -15.2998 -11.5996h-131.7c-8.7998 0 -16 7.2002 -16 16v112c0 27.7002 9 54.5996 25.5996 76.7998l57.6006 76.7998c10.5996 14.1006 30.7002 17 44.7998 6.40039s17 -30.7002 6.40039 -44.7998l-38.1006 -50.7998
c-4.7998 -6.40039 -4.09961 -15.3008 1.5 -20.9004l12.7998 -12.7998c6.60059 -6.60059 17.6006 -6.10059 23.6006 1.09961l89.7998 107.8v148.4c0 17.7002 14.2998 32 32 32z" />
    <glyph glyph-name="hands-helping" unicode="&#xf4c4;" horiz-adv-x="640" 
d="M488 256c13.2998 0 24 -10.7002 24 -24v-48c0 -13.2998 -10.7002 -24 -24 -24h-8v-64c0 -17.7002 -14.2998 -32 -32 -32h-16c0 -35.2998 -28.7002 -64 -64 -64h-136.6l-103.4 -59.7002c-15.2998 -8.7998 -34.9004 -3.59961 -43.7002 11.7002l-80 138.6
c-8.89941 15.3008 -3.59961 34.9004 11.7002 43.7002l80 46.2002v47.2998c0 22.4004 11.7998 43.2998 31.0996 54.7998l64.9004 39v-121.6c0 -39.7002 32.2998 -72 72 -72s72 32.2998 72 72v56h152zM635.7 293.4c8.7998 -15.3008 3.59961 -34.8008 -11.7002 -43.7002
l-80 -46.2002v28.5c0 30.9004 -25.0996 56 -56 56h-184v-88c0 -22.0996 -17.9004 -40 -40 -40s-40 17.9004 -40 40v126.3c0 11 5.59961 21.2998 15 27.1006l33.5 20.8994c10.2002 6.2998 21.9004 9.7002 33.9004 9.7002h102.199l103.4 59.7002
c15.2998 8.7998 34.9004 3.59961 43.7002 -11.7002z" />
    <glyph glyph-name="parachute-box" unicode="&#xf4cd;" 
d="M511.9 273c1.09961 -9.2002 -6.80078 -17 -16.1006 -17h-8.7002l-136.8 -151.9c0.700195 -2.69922 1.60059 -5.19922 1.60059 -8.09961v-128c0 -17.7002 -14.3008 -32 -32 -32h-128c-17.7002 0 -32 14.2998 -32 32v128c0 2.90039 0.899414 5.5 1.59961 8.09961
l-136.7 151.9h-8.7002c-9.19922 0 -17.0996 7.90039 -16 17c9.10059 75.5 78.4004 132.3 158.301 158.7c-36.4004 -39.4004 -62.4004 -100.601 -62.4004 -175.7h-28.0996l116.6 -129.5c2.5 0.599609 4.7998 1.5 7.5 1.5h48v128h-112c0 115.2 68.9004 192 128 192
s128 -76.7998 128 -192h-112v-128h48c2.7002 0 5 -0.900391 7.5 -1.5l116.6 129.5h-28.0996c0 75.0996 -26 136.3 -62.4004 175.7c79.9004 -26.2998 149.2 -83.1006 158.301 -158.7z" />
    <glyph glyph-name="people-carry" unicode="&#xf4ce;" horiz-adv-x="640" 
d="M128 352c-26.5 0 -48 21.5 -48 48s21.5 48 48 48s48 -21.5 48 -48s-21.5 -48 -48 -48zM512 352c-26.5 0 -48 21.5 -48 48s21.5 48 48 48s48 -21.5 48 -48s-21.5 -48 -48 -48zM637.7 -20.0996c6.59961 -16.4004 -1.40039 -35 -17.7998 -41.6006
c-3.90039 -1.59961 -7.90039 -2.2998 -11.9004 -2.2998c-12.7002 0 -24.7002 7.59961 -29.7002 20.0996l-27.7002 69.2002l2 18.2002l41.1006 46.4004zM603.5 189.7c4.59961 -20 -0.799805 -41.2002 -14.4004 -56.7002l-67.1992 -75.9004l-10.1006 -92.5996
c-1.7998 -16.4004 -15.7002 -28.5 -31.7998 -28.5c-1.2002 0 -2.2998 0.0996094 -3.5 0.200195c-17.5 1.89941 -30.2002 17.7002 -28.2998 35.2998l10.0996 92.7998c1.5 13 6.90039 25.1006 15.6006 35l43.2998 49l-17.6006 70.2998l-6.7998 -20.3994
c-4.09961 -12.6006 -11.8994 -23.4004 -24.5 -32.6006l-51.0996 -32.5c-4.60059 -2.89941 -12.1006 -4.59961 -17.2002 -5h-160c-5.09961 0.400391 -12.5996 2.10059 -17.2002 5l-51.0996 32.5c-12.6006 9.2002 -20.4004 20.1006 -24.5 32.6006l-6.7998 20.3994
l-17.6006 -70.2998l43.2998 -49c8.7002 -9.89941 14.1006 -22 15.6006 -35l10.0996 -92.7998c1.90039 -17.5996 -10.7002 -33.4004 -28.2998 -35.2998c-1.2002 -0.100586 -2.2998 -0.200195 -3.5 -0.200195c-16.2002 0 -30 12.2002 -31.7998 28.5l-10.1006 92.5996
l-67.1992 75.9004c-13.7002 15.5 -19 36.7002 -14.4004 56.7002l18.4004 80.2002c4.59961 20 18.5996 36.7998 37.5 44.8994c18.5 8 38.8994 6.7002 56.0996 -3.2998c22.7002 -13.4004 39.7998 -34.4004 48.0996 -59.4004l11.3008 -33.8994l16.0996 -10.2002v96
c0 8.7998 7.2002 16 16 16h160c8.7998 0 16 -7.2002 16 -16v-96l16 10.2002l11.2998 33.8994c8.40039 24.9004 25.4004 46 48.1006 59.4004c17.0996 10 37.5996 11.2998 56.0996 3.2998c18.9004 -8.09961 32.9004 -24.8994 37.5 -44.8994zM46.2998 89.9004l41.1006 -46.4004
l2 -18.2002l-27.7002 -69.2002c-6.5 -16.0996 -24.7998 -24.3994 -41.6006 -17.7998c-16.3994 6.60059 -24.3994 25.2002 -17.7998 41.6006z" />
    <glyph glyph-name="piggy-bank" unicode="&#xf4d3;" horiz-adv-x="576" 
d="M560 224c8.7998 0 16 -7.2002 16 -16v-128c0 -8.7998 -7.2002 -16 -16 -16h-48.7002c-9 -11.9004 -19.5 -22.4004 -31.2998 -31.2998v-80.7002c0 -8.7998 -7.2002 -16 -16 -16h-64c-8.7998 0 -16 7.2002 -16 16v48h-128v-48c0 -8.7998 -7.2002 -16 -16 -16h-64
c-8.7998 0 -16 7.2002 -16 16v80.7002c-38.5996 29.2002 -64 75.0996 -64 127.3h-40c-33.2998 0 -59.9004 29.2002 -55.5 63.4004c3.59961 28.1992 29 48.5996 57.5 48.5996c3.2998 0 6 -2.7002 6 -6v-20c0 -3.2998 -2.7002 -6 -6 -6h-1
c-11.5996 0 -22.2998 -7.7998 -24.5 -19.2002c-3 -15.2998 8.7002 -28.7998 23.5 -28.7998h43.2002c14.8994 73 79.3994 128 156.8 128h128c7.90039 0 15.4004 -1.2002 23 -2.2998c17.5996 20.7998 43.5996 34.2998 73 34.2998h32l-18.9004 -75.5
c15.8008 -14.7998 28.6006 -32.5 37.4004 -52.5h29.5zM432 160c8.7998 0 16 7.2002 16 16s-7.2002 16 -16 16s-16 -7.2002 -16 -16s7.2002 -16 16 -16zM256 352c-16.4004 0 -32.2002 -2.2998 -47.4004 -6.2002c-0.0996094 2.10059 -0.599609 4.10059 -0.599609 6.2002
c0 53 43 96 96 96s96 -43 96 -96c0 -0.299805 -0.0996094 -0.5 -0.0996094 -0.799805c-5.2002 0.399414 -10.5 0.799805 -15.9004 0.799805h-128z" />
    <glyph glyph-name="ribbon" unicode="&#xf4d6;" horiz-adv-x="448" 
d="M6.09961 3.7002l117.2 130l79.2002 -87.9004l-91.7998 -101.899c-8 -8.80078 -21.4004 -10.5 -31.2998 -3.80078l-68.8008 27.9004c-12 8.09961 -14.0996 24.9004 -4.5 35.7002zM441.9 3.7002c9.69922 -10.7998 7.59961 -27.6006 -4.30078 -35.6006l-68.7998 -27.8994
c-9.89941 -6.7002 -23.2998 -5.10059 -31.2998 3.7998l-248.1 275.3c-48.6006 53.7998 -13 113.5 -11.5 116l43.5996 73.2002c4.2998 7.2002 9.90039 13.2998 16.7998 18c44 29.7002 130.7 27.5996 171.4 0c6.89941 -4.7002 12.5 -10.7998 16.7998 -18l43.7002 -73.5
c21.8994 -36.9004 17.2998 -83.5996 -11.4004 -115.5l-34.2002 -38l-79.0996 87.7002s52.7002 59 56 64.5996c-15.4004 8.40039 -40.2002 17.9004 -77.5 17.9004s-62.0996 -9.5 -77.5 -17.9004c3.40039 -5.5 295.4 -330.1 295.4 -330.1z" />
    <glyph glyph-name="route" unicode="&#xf4d7;" 
d="M416 128c52.9004 0 96 -43.0996 96 -96s-43.0996 -96 -96 -96h-277.8c13.5 16.2998 31.2998 39.2002 47.2998 64h230.5c17.5996 0 32 14.4004 32 32s-14.4004 32 -32 32h-96c-52.9004 0 -96 43.0996 -96 96s43.0996 96 96 96h45.2998
c-23.0996 32.5996 -45.2998 70.5 -45.2998 96c0 53 43 96 96 96s96 -43 96 -96s-96 -160 -96 -160h-96c-17.5996 0 -32 -14.4004 -32 -32s14.4004 -32 32 -32h96zM416 384c-17.7002 0 -32 -14.2998 -32 -32s14.2998 -32 32 -32s32 14.2998 32 32s-14.2998 32 -32 32zM96 192
c53 0 96 -43 96 -96s-96 -160 -96 -160s-96 107 -96 160s43 96 96 96zM96 64c17.7002 0 32 14.2998 32 32s-14.2998 32 -32 32s-32 -14.2998 -32 -32s14.2998 -32 32 -32z" />
    <glyph glyph-name="seedling" unicode="&#xf4d8;" 
d="M64 352c123.7 0 224 -100.3 224 -224v-144c0 -8.7998 -7.2002 -16 -16 -16h-32c-8.7998 0 -16 7.2002 -16 16v144c-123.7 0 -224 100.3 -224 224h64zM448 416h64c0 -115.9 -88 -211.1 -200.7 -222.8c-10.7998 40.7002 -31.2998 77.3994 -59 107.6
c38.2998 68.7002 111.5 115.2 195.7 115.2z" />
    <glyph glyph-name="sign" unicode="&#xf4d9;" 
d="M496 384c8.7998 0 16 -7.2002 16 -16v-32c0 -8.7998 -7.2002 -16 -16 -16h-368v-368c0 -8.7998 -7.2002 -16 -16 -16h-32c-8.7998 0 -16 7.2002 -16 16v368h-48c-8.7998 0 -16 7.2002 -16 16v32c0 8.7998 7.2002 16 16 16h48v48c0 8.7998 7.2002 16 16 16h32
c8.7998 0 16 -7.2002 16 -16v-48h368zM160 64v224h320v-224h-320z" />
    <glyph glyph-name="smile-wink" unicode="&#xf4da;" horiz-adv-x="496" 
d="M0 192c0 137 111 248 248 248s248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248zM200 240c0 17.7002 -14.2998 32 -32 32s-32 -14.2998 -32 -32s14.2998 -32 32 -32s32 14.2998 32 32zM358.5 223.5l9.7002 -8.5c8.39941 -7.5 21.5 -0.299805 19.7998 10.7998
c-4 25.2002 -34.2002 42.1006 -59.9004 42.1006c-25.6992 0 -55.8994 -16.9004 -59.8994 -42.1006c-1.7998 -11.2002 11.5 -18.2002 19.7998 -10.7998l9.5 8.5c14.7998 13.2002 46.2002 13.2002 61 0zM157.8 122.2c-13.3994 16.2998 -38.0996 -4.10059 -24.5996 -20.4004
c28.5 -34.2002 70.2998 -53.7998 114.8 -53.7998s86.2998 19.5996 114.8 53.7002c13.5 16.2998 -11 36.7002 -24.5996 20.5c-22.4004 -26.7998 -55.2002 -42.2002 -90.2002 -42.2002s-67.7998 15.2998 -90.2002 42.2002z" />
    <glyph glyph-name="tape" unicode="&#xf4db;" horiz-adv-x="640" 
d="M224 256c35.2998 0 64 -28.7002 64 -64s-28.7002 -64 -64 -64s-64 28.7002 -64 64s28.7002 64 64 64zM624 32c8.7998 0 16 -7.2002 16 -16v-32c0 -8.7998 -7.2002 -16 -16 -16h-400c-123.7 0 -224 100.3 -224 224s100.3 224 224 224s224 -100.3 224 -224
c0 -62.7002 -25.9004 -119.3 -67.4004 -160h243.4zM224 96c53 0 96 43 96 96s-43 96 -96 96s-96 -43 -96 -96s43 -96 96 -96z" />
    <glyph glyph-name="truck-loading" unicode="&#xf4de;" horiz-adv-x="640" 
d="M50.2002 72.4004l-49.6006 185.5c-2.2998 8.5 2.80078 17.2998 11.3008 19.5996l77.2998 20.7002l24.7998 -92.7002l61.7998 16.5l-24.7998 92.7002l77.2002 20.7998c8.5 2.2998 17.2998 -2.7998 19.5996 -11.2998l49.7002 -185.5
c2.2998 -8.5 -2.7998 -17.2998 -11.2998 -19.6006l-216.4 -58c-8.5 -2.2998 -17.2998 2.80078 -19.5996 11.3008zM384 448h256v-400c0 -61.9004 -50.0996 -112 -112 -112c-60.4004 0 -109.2 47.9004 -111.6 107.7l-393.7 -107.4
c-4.2002 -1.2002 -8.60059 1.2998 -9.7998 5.60059l-12.6006 46.2998c-1.2002 4.2002 1.2998 8.59961 5.60059 9.7998l346.1 94.4004v323.6c0 17.7002 14.2998 32 32 32zM528 0c26.5 0 48 21.5 48 48s-21.5 48 -48 48s-48 -21.5 -48 -48s21.5 -48 48 -48z" />
    <glyph glyph-name="truck-moving" unicode="&#xf4df;" horiz-adv-x="640" 
d="M621.3 210.7c12 -12 18.7002 -28.2002 18.7002 -45.2002v-85.5c0 -8.7998 -7.2002 -16 -16 -16h-17.5996c1 -5.2002 1.59961 -10.5 1.59961 -16c0 -44.2002 -35.7998 -80 -80 -80s-80 35.7998 -80 80c0 5.5 0.5 10.7998 1.59961 16h-163.199
c1 -5.2002 1.59961 -10.5 1.59961 -16c0 -44.2002 -35.7998 -80 -80 -80c-26.2998 0 -49.4004 12.7998 -64 32.4004c-14.5996 -19.5 -37.7002 -32.4004 -64 -32.4004c-44.2002 0 -80 35.7998 -80 80v336c0 17.7002 14.2998 32 32 32h416c17.7002 0 32 -14.2998 32 -32
v-96.0996h37.5c17 0 33.2998 -6.7002 45.2998 -18.7002zM80 16c17.5996 0 32 14.4004 32 32s-14.4004 32 -32 32s-32 -14.4004 -32 -32s14.4004 -32 32 -32zM208 16c17.5996 0 32 14.4004 32 32s-14.4004 32 -32 32s-32 -14.4004 -32 -32s14.4004 -32 32 -32zM480 240v-48
h92.0996l-43.2998 43.2998c-3 3 -7 4.7002 -11.2998 4.7002h-37.5zM528 16c17.5996 0 32 14.4004 32 32s-14.4004 32 -32 32s-32 -14.4004 -32 -32s14.4004 -32 32 -32z" />
    <glyph glyph-name="video-slash" unicode="&#xf4e2;" horiz-adv-x="640" 
d="M633.8 -10.0996c7 -5.40039 8.2998 -15.5 2.7998 -22.4004l-19.5996 -25.2998c-5.5 -7 -15.5 -8.2002 -22.5 -2.7998l-178.5 138l-373.3 288.6l-36.5 28.2002c-7 5.39941 -8.2002 15.3994 -2.7998 22.3994l19.5996 25.2002c5.5 7 15.5 8.2002 22.5 2.7998
l78.4004 -60.5996h244.3c26.3994 0 47.7998 -21.4004 47.7998 -47.7998v-178l32 -24.7002v137.2l109.6 75.5996c21.3008 14.6006 50.4004 -0.299805 50.4004 -25.7998v-257c0 -17.4004 -13.7998 -29.7002 -29.2002 -31.0996zM32 47.7998v245.5l365.8 -282.8
c-8.2002 -6.5 -18.3994 -10.5 -29.5996 -10.5h-288.4c-26.3994 0 -47.7998 21.4004 -47.7998 47.7998z" />
    <glyph glyph-name="wine-glass" unicode="&#xf4e3;" horiz-adv-x="288" 
d="M216 -16c22.0898 0 40 -17.9102 40 -40c0 -4.41992 -3.58008 -8 -8 -8h-208c-4.41992 0 -8 3.58008 -8 8c0 22.0898 17.9102 40 40 40h40v117.18c-68.4697 15.8906 -118.05 79.9102 -111.4 154.16l15.96 178.11c0.730469 8.24023 7.55078 14.5498 15.7002 14.5498h223.48
c8.16016 0 14.9697 -6.30957 15.71 -14.5498l15.9502 -178.101c6.64941 -74.25 -42.9307 -138.27 -111.4 -154.159v-117.19h40z" />
    <glyph glyph-name="user-alt-slash" unicode="&#xf4fa;" horiz-adv-x="640" 
d="M633.8 -10.0996c7 -5.40039 8.2998 -15.5 2.90039 -22.3008l-19.6006 -25.2998c-5.5 -7 -15.5 -8.2002 -22.5 -2.7998l-588.399 454.7c-7 5.39941 -8.2002 15.3994 -2.7998 22.3994l19.5996 25.2002c5.5 7 15.5 8.2002 22.5 2.7998l135.5 -104.8
c16 62.1006 71.9004 108.2 139 108.2c79.5 0 144 -64.5 144 -144c0 -54.0996 -30.2002 -100.7 -74.4004 -125.3zM198.4 128h47.3994l248.4 -192h-382.2c-26.5 0 -48 21.5 -48 48v9.59961c0 74.2002 60.2002 134.4 134.4 134.4z" />
    <glyph glyph-name="user-astronaut" unicode="&#xf4fb;" horiz-adv-x="448" 
d="M64 224c-8.7998 0 -16 7.2002 -16 16v96c0 8.7998 7.2002 16 16 16h13.5c24.7002 56.5 80.9004 96 146.5 96s121.8 -39.5 146.5 -96h13.5c8.7998 0 16 -7.2002 16 -16v-96c0 -8.7998 -7.2002 -16 -16 -16h-13.5c-24.7002 -56.5 -80.9004 -96 -146.5 -96
s-121.8 39.5 -146.5 96h-13.5zM104 312v-24c0 -53 43 -96 96 -96h48c53 0 96 43 96 96v24c0 22.0996 -21.5 40 -48 40h-144c-26.5 0 -48 -17.9004 -48 -40zM176 240l-12 36l-36 12l36 12l12 36l12 -36l36 -12l-36 -12zM327.6 126.6c67.5 -7.09961 120.4 -63.5996 120.4 -133
v-9.59961c0 -26.5 -21.5 -48 -48 -48h-80v64c0 17.7002 -14.2998 32 -32 32h-128c-17.7002 0 -32 -14.2998 -32 -32v-64h-80c-26.5 0 -48 21.5 -48 48v9.59961c0 69.4004 52.9004 125.9 120.4 133c29.8994 -19.2998 65.3994 -30.5996 103.6 -30.5996
s73.7002 11.2998 103.6 30.5996zM272 0c8.7998 0 16 -7.2002 16 -16s-7.2002 -16 -16 -16s-16 7.2002 -16 16s7.2002 16 16 16zM176 0c8.7998 0 16 -7.2002 16 -16v-48h-32v48c0 8.7998 7.2002 16 16 16z" />
    <glyph glyph-name="user-check" unicode="&#xf4fc;" horiz-adv-x="640" 
d="M224 192c-70.7002 0 -128 57.2998 -128 128s57.2998 128 128 128s128 -57.2998 128 -128s-57.2998 -128 -128 -128zM313.6 160c74.2002 0 134.4 -60.2002 134.4 -134.4v-41.5996c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v41.5996
c0 74.2002 60.2002 134.4 134.4 134.4h16.6992c22.3008 -10.2002 46.9004 -16 72.9004 -16s50.7002 5.7998 72.9004 16h16.6992zM636.6 288.4c4.60059 -4.60059 4.5 -12.1006 -0.0996094 -16.8008l-141.3 -140.199c-4.7002 -4.60059 -12.2002 -4.60059 -16.7998 0.0996094
l-81.7002 82.2998c-4.60059 4.7002 -4.60059 12.2002 0.0996094 16.7998l28.1006 27.9004c4.69922 4.59961 12.1992 4.59961 16.7998 -0.0996094l45.5 -45.8008l104.8 104c4.7002 4.60059 12.2002 4.60059 16.7998 -0.0996094z" />
    <glyph glyph-name="user-clock" unicode="&#xf4fd;" horiz-adv-x="640" 
d="M496 224c79.5996 0 144 -64.4004 144 -144s-64.4004 -144 -144 -144s-144 64.4004 -144 144s64.4004 144 144 144zM560 73.7002v12.5996c0 5.2998 -4.40039 9.7002 -9.7002 9.7002h-38.2998v54.2998c0 5.2998 -4.40039 9.7002 -9.7002 9.7002h-12.5996
c-5.2998 0 -9.7002 -4.40039 -9.7002 -9.7002v-76.5996c0 -5.2998 4.40039 -9.7002 9.7002 -9.7002h60.5996c5.2998 0 9.7002 4.40039 9.7002 9.7002zM320 80c0 -59.5 29.7998 -112.1 75.0996 -144h-347.1c-26.5 0 -48 21.5 -48 48v41.5996
c0 74.2002 60.2002 134.4 134.4 134.4h16.6992c22.3008 -10.2002 46.9004 -16 72.9004 -16s50.7002 5.7998 72.9004 16h16.6992c8.40039 0 16.6006 -1 24.6006 -2.5c-11.5 -23.4004 -18.2002 -49.7002 -18.2002 -77.5zM224 192c-70.7002 0 -128 57.2998 -128 128
s57.2998 128 128 128s128 -57.2998 128 -128s-57.2998 -128 -128 -128z" />
    <glyph glyph-name="user-cog" unicode="&#xf4fe;" horiz-adv-x="640" 
d="M610.5 74.7002l25.7998 -14.9004c2.90039 -1.7002 4.2998 -5.2002 3.2998 -8.5c-6.69922 -21.5996 -18.1992 -41.2002 -33.1992 -57.3994c-2.30078 -2.5 -6.10059 -3.10059 -9 -1.40039l-25.8008 14.9004c-10.8994 -9.30078 -23.3994 -16.5 -36.8994 -21.3008v-29.7998
c0 -3.39941 -2.40039 -6.39941 -5.7002 -7.09961c-21.2002 -4.7998 -43.9004 -5 -66.2002 0c-3.2998 0.700195 -5.7002 3.7002 -5.7002 7.09961v29.7998c-13.5 4.80078 -26 12 -36.8994 21.3008l-25.7998 -14.9004c-3 -1.7002 -6.7002 -1.09961 -9 1.40039
c-15 16.2998 -26.5 35.7998 -33.2002 57.3994c-1 3.2998 0.299805 6.7998 3.2998 8.5l25.7998 14.9004c-2.59961 14.0996 -2.59961 28.5 0 42.5996l-25.7998 14.9004c-2.90039 1.7002 -4.2998 5.2002 -3.2998 8.5c6.7002 21.5996 18.2002 41.2002 33.2002 57.3994
c2.2998 2.5 6.09961 3.10059 9 1.40039l25.7998 -14.9004c10.8994 9.30078 23.3994 16.5 36.8994 21.3008v29.7998c0 3.39941 2.40039 6.39941 5.7002 7.09961c21.2002 4.7998 43.9004 5 66.2002 0c3.2998 -0.700195 5.7002 -3.7002 5.7002 -7.09961v-29.7998
c13.5 -4.80078 26 -12 36.8994 -21.3008l25.8008 14.9004c3 1.7002 6.69922 1.09961 9 -1.40039c15 -16.1992 26.5 -35.7998 33.1992 -57.3994c1 -3.2998 -0.299805 -6.7998 -3.2998 -8.5l-25.7998 -14.9004c2.59961 -14.0996 2.59961 -28.5 0 -42.5996zM496 47.5
c26.7998 0 48.5 21.7998 48.5 48.5s-21.7998 48.5 -48.5 48.5s-48.5 -21.7998 -48.5 -48.5s21.7002 -48.5 48.5 -48.5zM224 192c-70.7002 0 -128 57.2998 -128 128s57.2998 128 128 128s128 -57.2998 128 -128s-57.2998 -128 -128 -128zM425.2 -34.5v-9.2002
c0 -4.09961 0.799805 -8 2 -11.7998c-7.7002 -5.2998 -17.1006 -8.5 -27.2002 -8.5h-352c-26.5 0 -48 21.5 -48 48v41.5996c0 74.2002 60.2002 134.4 134.4 134.4h16.6992c22.3008 -10.2002 46.9004 -16 72.9004 -16s50.7002 5.7998 72.9004 16h16.6992
c3.90039 0 7.60059 -0.900391 11.4004 -1.2002c-1 -2.89941 -2.2998 -5.7998 -3.2002 -8.7002c-5.5 -17.6992 1.90039 -36.5 17.9004 -45.6992l7.89941 -4.60059c-0.0996094 -2.59961 -0.0996094 -5.2002 0 -7.7998l-7.89941 -4.59961
c-16 -9.30078 -23.4004 -28 -17.9004 -45.7002c7.90039 -25.7002 21.9004 -49.7998 40.2002 -69.6006c7.5 -8 18 -12.5996 28.9004 -12.5996c6.7998 0 13.5996 1.90039 19.5996 5.2998l7.90039 4.60059c2.19922 -1.30078 4.5 -2.7002 6.7998 -3.90039z" />
    <glyph glyph-name="user-edit" unicode="&#xf4ff;" horiz-adv-x="640" 
d="M224 192c-70.7002 0 -128 57.2998 -128 128s57.2998 128 128 128s128 -57.2998 128 -128s-57.2998 -128 -128 -128zM313.6 160c39.9004 0 75.4004 -17.7998 99.9004 -45.5l-77.2998 -77.2998l-7.90039 -7.90039l-1.2002 -11.0996l-6.7998 -60.9004
c-0.799805 -7.2998 0.200195 -14.5 2.60059 -21.2998h-274.9c-26.5 0 -48 21.5 -48 48v41.5996c0 74.2002 60.2002 134.4 134.4 134.4h16.6992c22.3008 -10.2002 46.9004 -16 72.9004 -16s50.7002 5.7998 72.9004 16h16.6992zM358.9 14.7002l137.899 137.8l71.7002 -71.7002
l-137.9 -137.899l-60.8994 -6.80078c-10.1006 -1.19922 -18.7002 7.40039 -17.6006 17.6006zM633 179.1c9.2998 -9.39941 9.2998 -24.5 0 -33.8994l-41.7998 -41.7998l-71.7998 71.6992l4.09961 4.10059l37.7998 37.7998c9.2998 9.2998 24.5 9.2998 33.7998 0z" />
    <glyph glyph-name="user-friends" unicode="&#xf500;" horiz-adv-x="640" 
d="M192 192c-61.9004 0 -112 50.0996 -112 112s50.0996 112 112 112s112 -50.0996 112 -112s-50.0996 -112 -112 -112zM268.8 160c63.6006 0 115.2 -51.5996 115.2 -115.2v-28.7998c0 -26.5 -21.5 -48 -48 -48h-288c-26.5 0 -48 21.5 -48 48v28.7998
c0 63.6006 51.5996 115.2 115.2 115.2h8.2998c20.9004 -10 43.9004 -16 68.5 -16s47.7002 6 68.5 16h8.2998zM480 192c-53 0 -96 43 -96 96s43 96 96 96s96 -43 96 -96s-43 -96 -96 -96zM528 160c61.9004 0 112 -50.0996 112 -112c0 -26.5 -21.5 -48 -48 -48h-176.6
c0.0996094 2.09961 0.599609 4.2002 0.599609 6.40039v38.3994c0 38.6006 -15.2998 73.5 -39.7002 99.7998c16.5 9.5 35.2998 15.4004 55.7002 15.4004h3.7998c13.9004 -4.7998 28.6006 -8 44.2002 -8s30.2998 3.2002 44.2002 8h3.7998z" />
    <glyph glyph-name="user-graduate" unicode="&#xf501;" horiz-adv-x="448" 
d="M319.4 127.4c71.5 -3.10059 128.6 -61.6006 128.6 -133.801v-9.59961c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v9.59961c0 72.2002 57.0996 130.7 128.6 133.801l95.4004 -95.4004zM13.5996 368.2c-18.0996 4.39941 -18.0996 27.2002 0 31.5996
l190.601 45.9004c13 3.09961 26.7002 3.09961 39.7002 0l190.399 -46c18.2002 -4.40039 18.2002 -27.1006 0 -31.5l-96.2998 -23.2002c8.7002 -17.2002 14 -36.4004 14 -57c0 -70.7002 -57.2998 -128 -128 -128s-128 57.2998 -128 128c0 20.5996 5.40039 39.7998 14 57
l-66 15.9004v-52.6006c7 -4.2002 12 -11.5 12 -20.2998c0 -8.40039 -4.59961 -15.4004 -11.0996 -19.7002l15.5996 -62.2998c1.7002 -6.90039 -2.09961 -14 -7.59961 -14h-41.8008c-5.5 0 -9.2998 7.09961 -7.59961 14l15.5996 62.2998
c-6.5 4.2998 -11.0996 11.2998 -11.0996 19.7002c0 8.7998 5 16.0996 12 20.2998v58.4004z" />
    <glyph glyph-name="user-lock" unicode="&#xf502;" horiz-adv-x="640" 
d="M224 192c-70.6455 0 -128 57.3545 -128 128s57.3545 128 128 128s128 -57.3545 128 -128s-57.3545 -128 -128 -128zM320 128v-160c0.0791016 -11.6504 3.3418 -22.6367 8.90039 -32h-280.9c-26.4922 0 -48 21.5078 -48 48v41.5996
c0.0166016 74.1699 60.2305 134.384 134.4 134.4h16.6992c22.1426 -10.2109 47.085 -15.9072 73.0498 -15.9072c25.9639 0 50.6084 5.69629 72.751 15.9072h16.6992c5 0 9.7002 -1 14.5 -1.5c-5.06641 -9.00684 -8.02539 -19.4561 -8.09961 -30.5zM608 160
c17.6611 0 32 -14.3389 32 -32v-160c0 -17.6611 -14.3389 -32 -32 -32h-224c-17.6611 0 -32 14.3389 -32 32v160c0 17.6611 14.3389 32 32 32h32v80c0 44.1533 35.8467 80 80 80s80 -35.8467 80 -80v-80h32zM496 16c17.6611 0 32 14.3389 32 32s-14.3389 32 -32 32
s-32 -14.3389 -32 -32s14.3389 -32 32 -32zM528 160v80c0 17.6611 -14.3389 32 -32 32s-32 -14.3389 -32 -32v-80h64z" />
    <glyph glyph-name="user-minus" unicode="&#xf503;" horiz-adv-x="640" 
d="M624 240c8.7998 0 16 -7.2002 16 -16v-32c0 -8.7998 -7.2002 -16 -16 -16h-192c-8.7998 0 -16 7.2002 -16 16v32c0 8.7998 7.2002 16 16 16h192zM224 192c-70.7002 0 -128 57.2998 -128 128s57.2998 128 128 128s128 -57.2998 128 -128s-57.2998 -128 -128 -128z
M313.6 160c74.2002 0 134.4 -60.2002 134.4 -134.4v-41.5996c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v41.5996c0 74.2002 60.2002 134.4 134.4 134.4h16.6992c22.3008 -10.2002 46.9004 -16 72.9004 -16s50.7002 5.7998 72.9004 16h16.6992z" />
    <glyph glyph-name="user-ninja" unicode="&#xf504;" horiz-adv-x="448" 
d="M325.4 158.8c68.5996 -6.09961 122.6 -63 122.6 -133.2v-41.5996c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v41.5996c0 70.2002 54 127.101 122.6 133.2l101.4 -101.399zM32 256c0 33.4004 17.0996 62.7998 43.0996 80
c-26 17.2002 -43.0996 46.5996 -43.0996 80c32 0 60.0996 -15.7998 77.5 -39.7998c20.9004 42.3994 64.0996 71.7998 114.5 71.7998c70.7002 0 128 -57.2998 128 -128s-57.2998 -128 -128 -128c-58.7998 0 -107.7 39.7998 -122.8 93.7002
c-17.4004 -18.2002 -41.9004 -29.7002 -69.2002 -29.7002zM176 352c-17.7002 0 -32 -14.2998 -32 -32h160c0 17.7002 -14.2998 32 -32 32h-96z" />
    <glyph glyph-name="user-shield" unicode="&#xf505;" horiz-adv-x="640" 
d="M622.3 176.9c10.7002 -4.2002 17.7002 -14 17.7002 -24.9004c0 -124.5 -81.5996 -193.9 -132.9 -213.9c-4.19922 -1.59961 -12.5996 -3.69922 -22.1992 0c-64.2002 25.1006 -132.9 102.301 -132.9 213.9c0 10.9004 7 20.7002 17.7002 24.9004l115.2 45
c9.59961 3.69922 18.0996 1.59961 22.1992 0zM496 -14.4004c34.5996 16.4004 89.9004 64.7002 95.5 151.801l-95.5 37.2998v-189.101zM224 192c-70.7002 0 -128 57.2998 -128 128s57.2998 128 128 128s128 -57.2998 128 -128s-57.2998 -128 -128 -128zM320 152
c0 -95.2998 45.2002 -169.1 99.2002 -212c-5.90039 -2.5 -12.4004 -4 -19.2002 -4h-352c-26.5 0 -48 21.5 -48 48v41.5996c0 74.2002 60.2002 134.4 134.4 134.4h16.6992c22.3008 -10.2002 46.9004 -16 72.9004 -16s50.7002 5.7998 72.9004 16h16.6992
c2.60059 0 5 -0.700195 7.5 -0.799805c-0.299805 -2.40039 -1.09961 -4.7002 -1.09961 -7.2002z" />
    <glyph glyph-name="user-slash" unicode="&#xf506;" horiz-adv-x="640" 
d="M633.8 -10.0996c7 -5.40039 8.2998 -15.5 2.90039 -22.3008l-19.6006 -25.2998c-5.5 -7 -15.5 -8.2002 -22.5 -2.7998l-588.399 454.7c-7 5.39941 -8.2002 15.3994 -2.7998 22.3994l19.5996 25.2002c5.5 7 15.5 8.2002 22.5 2.7998l147.6 -114
c5.40039 65.6006 59.8008 117.4 126.9 117.4c70.7002 0 128 -57.2998 128 -128c0 -55.7998 -35.9004 -102.7 -85.7002 -120.3zM96 25.5996c0 66.4004 48.2002 121.101 111.4 132.101l286.8 -221.7h-350.2c-26.5 0 -48 21.5 -48 48v41.5996z" />
    <glyph glyph-name="user-tag" unicode="&#xf507;" horiz-adv-x="640" 
d="M630.6 83.0996c12.5 -12.5 12.5 -32.6992 -0.0996094 -45.1992l-92.5 -92.5c-12.5 -12.5 -32.7998 -12.5 -45.2998 0l-90.2998 90.1992c-12 12 -18.7002 28.2002 -18.7002 45.2002v79.2002c0 17.7002 14.2998 32 32 32h79.2998c17 0 33.2998 -6.7002 45.2998 -18.7002z
M447.8 104.1c13.2998 0 24 10.8008 24 24c0 13.3008 -10.7002 24 -24 24s-24 -10.6992 -24 -24c0 -13.2998 10.7002 -24 24 -24zM224 192.1c-70.7002 0 -128 57.3008 -128 127.9c0 70.7002 57.2998 128 128 128s128 -57.2998 128 -127.9c0 -70.6992 -57.2998 -128 -128 -128
zM351.8 80.9004c0 -25.7002 10 -49.8008 28.1006 -67.9004l58 -58c-8.80078 -11.4004 -22.4004 -18.9004 -37.9004 -18.9004h-352c-26.5 0 -48 21.5 -48 48v41.6006c0 74.2002 60.2002 134.399 134.4 134.5h16.6992c22.3008 -10.2002 46.9004 -16 72.9004 -16
s50.7002 5.7998 72.9004 16h16.6992c13.3008 0 26 -2.60059 38.2002 -6.2002v-73.0996z" />
    <glyph glyph-name="user-tie" unicode="&#xf508;" horiz-adv-x="448" 
d="M224 192c-70.7002 0 -128 57.2998 -128 128s57.2998 128 128 128s128 -57.2998 128 -128s-57.2998 -128 -128 -128zM319.8 159.4c71.2998 -3.40039 128.2 -61.7002 128.2 -133.801v-41.5996c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v41.5996
c0 72.1006 56.9004 130.4 128.2 133.801l47.7998 -191.4l32 136l-32 56h96l-32 -56l32 -136z" />
    <glyph glyph-name="users-cog" unicode="&#xf509;" horiz-adv-x="640" 
d="M610.5 106.7l25.7998 -14.9004c2.90039 -1.7002 4.2998 -5.2002 3.2998 -8.5c-6.69922 -21.5996 -18.1992 -41.2002 -33.1992 -57.3994c-2.30078 -2.5 -6.10059 -3.10059 -9 -1.40039l-25.8008 14.9004c-10.8994 -9.30078 -23.3994 -16.5 -36.8994 -21.3008v-29.7998
c0 -3.39941 -2.40039 -6.39941 -5.7002 -7.09961c-21.2002 -4.7998 -43.9004 -5 -66.2002 0c-3.2998 0.700195 -5.7002 3.7002 -5.7002 7.09961v29.7998c-13.5 4.80078 -26 12 -36.8994 21.3008l-25.7998 -14.9004c-3 -1.7002 -6.7002 -1.09961 -9 1.40039
c-15 16.2998 -26.5 35.7998 -33.2002 57.3994c-1 3.2998 0.299805 6.7998 3.2998 8.5l25.7998 14.9004c-2.59961 14.0996 -2.59961 28.5 0 42.5996l-25.7998 14.9004c-2.90039 1.7002 -4.2998 5.2002 -3.2998 8.5c6.7002 21.5996 18.2002 41.2002 33.2002 57.3994
c2.2998 2.5 6.09961 3.10059 9 1.40039l25.7998 -14.9004c10.8994 9.30078 23.3994 16.5 36.8994 21.3008v29.7998c0 3.39941 2.40039 6.39941 5.7002 7.09961c21.2002 4.7998 43.9004 5 66.2002 0c3.2998 -0.700195 5.7002 -3.7002 5.7002 -7.09961v-29.7998
c13.5 -4.80078 26 -12 36.8994 -21.3008l25.8008 14.9004c3 1.7002 6.69922 1.09961 9 -1.40039c15 -16.1992 26.5 -35.7998 33.1992 -57.3994c1 -3.2998 -0.299805 -6.7998 -3.2998 -8.5l-25.7998 -14.9004c2.59961 -14.0996 2.59961 -28.5 0 -42.5996zM496 79.5
c26.7998 0 48.5 21.7998 48.5 48.5s-21.7998 48.5 -48.5 48.5s-48.5 -21.7998 -48.5 -48.5s21.7002 -48.5 48.5 -48.5zM96 224c-35.2998 0 -64 28.7002 -64 64s28.7002 64 64 64s64 -28.7002 64 -64s-28.7002 -64 -64 -64zM320 192c-61.9004 0 -112 50.0996 -112 112
s50 111.9 111.9 111.9c61.8994 0 112 -50.1006 112 -112c0 -17.2002 -4.2002 -33.4004 -11.2002 -48c-0.799805 -0.5 -1.60059 -0.900391 -2.40039 -1.40039l-7.89941 4.59961c-5.90039 3.5 -12.7002 5.30078 -19.6006 5.30078c-11 0 -21.5 -4.60059 -28.8994 -12.6006
c-15.8008 -17.0996 -28 -37.5 -36.3008 -59.2002c-1.89941 -0.0996094 -3.69922 -0.599609 -5.59961 -0.599609zM425.2 -2.5v-9.2002c0 -7.5 2.5 -14.2998 6.2002 -20.2998h-255.4c-26.5 0 -48 21.5 -48 48v28.7998c0 63.6006 51.5996 115.2 115.3 115.2h8.2998
c20.9004 -10 43.9004 -16 68.5 -16c3.30078 0 6.5 0.400391 9.80078 0.599609c2.7998 -3.09961 6 -5.89941 9.7998 -8.09961l7.89941 -4.59961c-0.0996094 -2.60059 -0.0996094 -5.2002 0 -7.80078c-0.899414 -0.599609 -36.5 -15.7998 -25.7998 -50.2998
c7.90039 -25.7002 21.9004 -49.7998 40.2002 -69.5996c7.5 -8 18 -12.6006 28.9004 -12.6006c12.1992 0 19.2998 5 27.5 9.80078c2.19922 -1.30078 4.5 -2.7002 6.7998 -3.90039zM173.1 173.4c-40.2998 -22.1006 -68.8994 -62 -75.1992 -109.4h-65.9004
c-17.7002 0 -32 14.2998 -32 32v32c0 35.2998 28.7002 64 64 64h64c17.5996 0 33.5 -7.09961 45.0996 -18.5996z" />
    <glyph glyph-name="balance-scale-left" unicode="&#xf515;" horiz-adv-x="640" 
d="M528 0c8.83984 0 16 -7.16016 16.0098 -16v-32c0 -8.83984 -7.16016 -16 -16 -16h-224c-8.83984 0 -16 7.16016 -16 16v342.75c-4.55957 2 -8.91992 4.34961 -12.9902 7.12012l-142.05 -47.6299c-8.37988 -2.81055 -17.4502 1.7002 -20.2598 10.0801l-10.1699 30.3398
c-2.80957 8.37988 1.7002 17.4502 10.0801 20.2598l128.39 43.0498c-0.419922 3.32031 -1.00977 6.60059 -1.00977 10.0303c0 44.1797 35.8203 80 80 80c29.6904 0 55.2998 -16.3604 69.1104 -40.3701l117.92 39.5303c8.37988 2.80957 17.4502 -1.7002 20.2598 -10.0801
l10.1699 -30.3398c2.80957 -8.37988 -1.7002 -17.4502 -10.0801 -20.2598l-132 -44.2607c-7.28027 -21.25 -22.96 -38.5293 -43.3799 -47.4697v-294.75h176zM639.98 144c0 -44.1797 -57.29 -80 -127.98 -80s-128 35.8203 -128 80h0.0195312
c0 15.6699 -2.0791 7.25 85.04 181.51c17.6807 35.3604 68.2207 35.29 85.8701 0c86.3906 -172.779 85.0508 -165.33 85.0508 -181.51zM440 160h144l-72 144zM170.93 197.51c86.3906 -172.779 85.0508 -165.33 85.0508 -181.51h0.0195312c0 -44.1797 -57.3096 -80 -128 -80
s-128 35.8203 -128 80h0.0195312c0 15.6699 -2.0791 7.25 85.04 181.51c17.6807 35.3604 68.2207 35.29 85.8701 0zM56 32h144l-72 144z" />
    <glyph glyph-name="balance-scale-right" unicode="&#xf516;" horiz-adv-x="640" 
d="M96 -16c0 8.83984 7.16016 16 16 16h175.99v294.76c-20.4199 8.93066 -36.1006 26.2207 -43.3799 47.4707l-132 44.2598c-8.37012 2.80957 -12.8906 11.8799 -10.0801 20.2598l10.1699 30.3398c2.80957 8.37012 11.8799 12.8906 20.2598 10.0801l117.93 -39.54
c13.8105 24.0098 39.4199 40.3701 69.1104 40.3701c44.1797 0 80 -35.8203 80 -80c0 -3.42969 -0.589844 -6.70996 -1.00977 -10.0303l128.399 -43.0498c8.37012 -2.80957 12.8906 -11.8799 10.0801 -20.2598l-10.1699 -30.3398
c-2.80957 -8.37012 -11.8799 -12.8906 -20.2598 -10.0801l-142.05 47.6299c-4.07031 -2.77051 -8.43066 -5.12012 -12.9902 -7.12012v-342.75c0 -8.83984 -7.16016 -16 -16 -16h-224c-8.83984 0 -16 7.16016 -16 16v32zM0 144c0 16.1797 -1.32031 8.73047 85.0596 181.51
c17.6504 35.29 68.1904 35.3604 85.8701 0c87.1299 -174.26 85.0508 -165.84 85.0508 -181.51h0.0195312c0 -44.1797 -57.3096 -80 -128 -80s-128 35.8203 -128 80zM56 160h144l-72 144zM384.02 16c0 16.1797 -1.33984 8.73047 85.04 181.51
c17.6504 35.29 68.1904 35.3604 85.8701 0c87.1299 -174.26 85.0508 -165.84 85.0508 -181.51h0.0195312c0 -44.1797 -57.3096 -80 -128 -80s-128 35.8203 -128 80h0.0195312zM440 32h144l-72 144z" />
    <glyph glyph-name="blender" unicode="&#xf517;" 
d="M416 64c35.3496 0 64 -28.6504 64 -64v-32c0 -17.6699 -14.3301 -32 -32 -32h-320c-17.6699 0 -32 14.3301 -32 32v32c0 35.3496 28.6504 64 64 64h256zM288 -32c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32s-32 -14.3301 -32 -32s14.3301 -32 32 -32zM328 384
c-4.41992 0 -8 -3.58008 -8 -8v-16c0 -4.41992 3.58008 -8 8 -8h157.82l-17.46 -64h-140.36c-4.41992 0 -8 -3.58008 -8 -8v-16c0 -4.41992 3.58008 -8 8 -8h131.64l-17.46 -64h-114.18c-4.41992 0 -8 -3.58008 -8 -8v-16c0 -4.41992 3.58008 -8 8 -8h105.46l-17.46 -64
h-256l-8.73047 96h-103.27c-26.5098 0 -48 21.4902 -48 48v160c0 26.5098 21.4902 48 48 48h464l-17.46 -64h-166.54zM64 256h81.46l-11.6396 128h-69.8203v-128z" />
    <glyph glyph-name="book-open" unicode="&#xf518;" horiz-adv-x="576" 
d="M542.22 415.95c18.4199 1.04004 33.7803 -12.9902 33.7705 -30.7002v-337.84c0 -16.2305 -13.1299 -29.7705 -30.0205 -30.6602c-49.4697 -2.59961 -149.52 -12.0996 -218.7 -46.9199c-10.6494 -5.36035 -23.2793 1.93945 -23.2793 13.4902v363.87
c0 5.2793 2.62988 10.3291 7.26953 13.1699c67.2402 41.1592 176.16 52.4795 230.96 55.5898zM264.73 360.36c4.64941 -2.85059 7.26953 -7.7002 7.26953 -12.9902v-364.12c0 -11.5195 -12.5898 -18.8096 -23.21 -13.46c-69.1797 34.8398 -169.28 44.3496 -218.771 46.9502
c-16.8896 0.879883 -30.0195 14.4199 -30.0195 30.6602v337.85c0 17.71 15.3604 31.7402 33.7803 30.7002c54.7998 -3.12012 163.72 -14.4307 230.95 -55.5898z" />
    <glyph glyph-name="broadcast-tower" unicode="&#xf519;" horiz-adv-x="640" 
d="M150.94 256c-7.01074 0 -13.46 4.5 -15.4004 11.2402c-4.90039 16.9697 -7.54004 34.6396 -7.54004 52.7598s2.63965 35.79 7.53027 52.7695c1.9502 6.74023 8.39941 11.2305 15.4102 11.2305h33.7295c11.0098 0 18.6201 -10.8301 14.8604 -21.1797
c-4.93066 -13.5801 -7.5498 -27.9805 -7.5498 -42.8203s2.61914 -29.2402 7.5498 -42.8203c3.75 -10.3496 -3.85059 -21.1797 -14.8604 -21.1797h-33.7295zM89.9199 424.66c-16.54 -31.1406 -49.6104 -115.97 0.169922 -209.29
c5.66016 -10.6299 -1.92969 -23.3701 -13.9502 -23.3701h-34.8398c-6.18945 0 -11.9902 3.50977 -14.6094 9.13965c-23.5703 50.5303 -26.6904 94.1104 -26.6904 118.86c0 42.3496 9.40039 82.46 25.8896 118.69c2.60059 5.71973 8.4707 9.30957 14.7402 9.30957h35.3301
c12.0098 0 19.5996 -12.7197 13.96 -23.3398zM614.06 438.71c16.5205 -36.2295 25.9404 -76.3496 25.9404 -118.71s-9.42969 -82.4805 -25.96 -118.71c-2.59961 -5.70996 -8.45996 -9.29004 -14.7305 -9.29004h-35.2295c-12.1104 0 -19.6299 12.8398 -13.9102 23.5195
c48.1396 89.8105 17.9902 174.94 -0.280273 209.23c-5.63965 10.5898 2.04004 23.25 14.0205 23.25h35.4199c6.26953 0 12.1299 -3.58008 14.7295 -9.29004zM489.06 384c7.01074 0 13.46 -4.49023 15.4004 -11.2402c4.90039 -16.9697 7.54004 -34.6396 7.54004 -52.7598
s-2.62988 -35.79 -7.53027 -52.7598c-1.9502 -6.75 -8.38965 -11.2402 -15.4102 -11.2402h-33.7295c-11.0098 0 -18.6201 10.8301 -14.8604 21.1797c4.93066 13.5801 7.5498 27.9805 7.5498 42.8203s-2.61914 29.2402 -7.5498 42.8203
c-3.75 10.3496 3.85059 21.1797 14.8604 21.1797h33.7295zM372.76 283.88l130.5 -313.41c3.39062 -8.14941 -0.459961 -17.5195 -8.60938 -20.9199l-29.5107 -12.3096c-8.14941 -3.40039 -17.5098 0.450195 -20.9092 8.60938l-49.2002 118.15h-150.07l-49.1904 -118.15
c-3.38965 -8.14941 -12.7598 -12.0098 -20.9092 -8.60938l-29.5107 12.3096c-8.14941 3.40039 -12.0098 12.7705 -8.60938 20.9199l130.5 313.41c-7.0498 10.29 -11.2002 22.71 -11.2002 36.1201c0 35.3496 28.6396 64 63.96 64c35.3301 0 63.96 -28.6504 63.96 -64
c0 -13.4102 -4.15039 -25.8301 -11.2002 -36.1201zM271.62 128h96.7598l-48.3799 116.19z" />
    <glyph glyph-name="broom" unicode="&#xf51a;" horiz-adv-x="640" 
d="M256.47 231.23l86.7305 -109.181s-16.6006 -102.359 -76.5703 -150.12c-59.9697 -47.7793 -266.63 -34.1201 -266.63 -34.1201s3.7998 23.1406 11 55.4307l94.6201 112.17c3.96973 4.7002 -0.870117 11.6201 -6.65039 9.5l-60.3994 -22.0898
c14.4395 41.6602 32.7197 80.04 54.5996 97.4697c59.9697 47.7598 163.3 40.9404 163.3 40.9404zM636.53 416.97c5.48926 -6.91016 4.33984 -16.96 -2.5498 -22.4395l-232.48 -177.8l34.0898 -42.9209c5.08008 -6.39941 1.66016 -15.9092 -6.33984 -17.5996
l-58.7998 -12.4502l-86.7305 109.181l25.3301 54.5498c3.4502 7.41992 13.5 8.62012 18.5898 2.20996l34.1406 -42.9697l232.479 177.8c6.89062 5.48926 16.9199 4.33984 22.4102 -2.56055z" />
    <glyph glyph-name="chalkboard" unicode="&#xf51b;" horiz-adv-x="640" 
d="M96 384v-352h-64v376c0 22.0596 17.9404 40 40 40h496c22.0596 0 40 -17.9404 40 -40v-376h-64v352h-448zM624 0c8.83984 0 16 -7.16016 16 -16v-32c0 -8.83984 -7.16016 -16 -16 -16h-608c-8.83984 0 -16 7.16016 -16 16v32c0 8.83984 7.16016 16 16 16h272v64h192v-64
h144z" />
    <glyph glyph-name="chalkboard-teacher" unicode="&#xf51c;" horiz-adv-x="640" 
d="M208 96c62.0596 0 112.33 -50.4805 112 -112.62c-0.139648 -26.2598 -21.7305 -47.3799 -48 -47.3799h-224c-26.2695 0 -47.8604 21.1201 -48 47.3799c-0.330078 62.1396 49.9404 112.62 112 112.62c2.38965 0 4.76953 -0.349609 7.0498 -1.08984
c12.9697 -4.20996 26.6006 -6.91016 40.9502 -6.91016s27.9805 2.7002 40.9404 6.91016c2.2793 0.740234 4.66992 1.08984 7.05957 1.08984zM160 128c-53.0195 0 -96 42.9805 -96 96s42.9805 96 96 96s96 -42.9805 96 -96s-42.9805 -96 -96 -96zM592 448
c26.4697 0 48 -22.25 48 -49.5898v-316.82c0 -27.3398 -21.5303 -49.5898 -48 -49.5898h-244.55c-6.57031 25.2695 -20.5898 47.3096 -39.6904 64h76.2402v64h128v-64h64v288h-352v-49.7998c-18.9004 11.0195 -40.5801 17.7998 -64 17.7998v46.4102
c0 27.3398 21.5303 49.5898 48 49.5898h384z" />
    <glyph glyph-name="church" unicode="&#xf51d;" horiz-adv-x="640" 
d="M464.46 201.32c9.63965 -5.78027 15.54 -16.2002 15.54 -27.4404v-237.88h-96v96c0 35.3496 -28.6504 64 -64 64s-64 -28.6504 -64 -64v-96h-96v237.88c0 11.6572 6.21387 21.8467 15.54 27.4404l112.46 67.4795v51.2002h-48c-8.83984 0 -16 7.16016 -16 16v32
c0 8.83984 7.16016 16 16 16h48v48c0 8.83984 7.16016 16 16 16h32c8.83984 0 16 -7.16016 16 -16v-48h48c8.83984 0 16 -7.16016 16 -16v-32c0 -8.83984 -7.16016 -16 -16 -16h-48v-51.2002zM0 52.04c0.00292969 13.1953 7.97949 24.5215 19.3896 29.4199l108.61 46.54
v-192h-112c-8.83984 0 -16 7.16016 -16 16v100.04zM620.61 81.46c11.7598 -5.0498 19.3896 -16.6201 19.3896 -29.4199v-100.04c0 -8.83984 -7.16016 -16 -16 -16h-112v192z" />
    <glyph glyph-name="coins" unicode="&#xf51e;" 
d="M0 42.7002c41.2998 -29.1006 116.8 -42.7002 192 -42.7002s150.7 13.5996 192 42.7002v-42.7002c0 -35.2998 -86 -64 -192 -64s-192 28.7002 -192 64v42.7002zM320 320c-106 0 -192 28.7002 -192 64s86 64 192 64s192 -28.7002 192 -64s-86 -64 -192 -64zM0 147.6
c41.2998 -34 116.9 -51.5996 192 -51.5996s150.7 17.5996 192 51.5996v-51.5996c0 -35.2998 -86 -64 -192 -64s-192 28.7002 -192 64v51.5996zM416 136.6v63.6006c38.7002 6.89941 72.7998 18.0996 96 34.5v-42.7002c0 -23.7002 -38.7002 -44.2998 -96 -55.4004zM192 288
c106 0 192 -35.7998 192 -80s-86 -80 -192 -80s-192 35.7998 -192 80s86 80 192 80zM411.3 231.7c-8.7998 23.7002 -30.5 42.8994 -60 57.2002c64.2002 3.19922 125.2 16.6992 160.7 41.7998v-42.7002c0 -24.2998 -40.7002 -45.5 -100.7 -56.2998z" />
    <glyph glyph-name="compact-disc" unicode="&#xf51f;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM88 192c0 88.2002 71.7998 160 160 160v32c-105.9 0 -192 -86.0996 -192 -192h32zM248 96c53 0 96 43 96 96s-43 96 -96 96s-96 -43 -96 -96s43 -96 96 -96zM248 224
c17.7002 0 32 -14.2998 32 -32s-14.2998 -32 -32 -32s-32 14.2998 -32 32s14.2998 32 32 32z" />
    <glyph glyph-name="crow" unicode="&#xf520;" horiz-adv-x="640" 
d="M544 416c53.0195 0 96 -28.6504 96 -64l-96 -16v-80c0 -87.2598 -58.2598 -160.8 -137.97 -184.14l41.2393 -111.53c2.27051 -6.23047 -0.939453 -13.1104 -7.16992 -15.3799l-22.5498 -8.20996c-6.22949 -2.27051 -13.1094 0.939453 -15.3799 7.16992l-44.5098 120.38
c-1.90039 -0.0595703 -3.75 -0.290039 -5.66016 -0.290039h-39.0596l38.3291 -103.68c2.27051 -6.23047 -0.939453 -13.1104 -7.16992 -15.3799l-22.5498 -8.20996c-6.22949 -2.27051 -13.1094 0.939453 -15.3799 7.16992l-44.4102 120.1h-96.4902l-121.539 -60.7695
c-20.0908 -10.04 -43.7305 4.56934 -43.7305 27.0293c0.00195312 9.8877 4.7373 18.6572 12.0898 24.1699l371.91 292.59v20.9805c0 44.1797 35.8203 80 80 80c26.0898 0 49.04 -12.6797 63.6396 -32h16.3604zM464 344c13.25 0 24 10.75 24 24c0 13.2598 -10.75 24 -24 24
s-24 -10.7402 -24 -24c0 -13.25 10.75 -24 24 -24z" />
    <glyph glyph-name="crown" unicode="&#xf521;" horiz-adv-x="640" 
d="M528 0c8.7998 0 16 -7.2002 16 -16v-32c0 -8.7998 -7.2002 -16 -16 -16h-416c-8.7998 0 -16 7.2002 -16 16v32c0 8.7998 7.2002 16 16 16h416zM592 320c26.5 0 48 -21.5 48 -48s-21.5 -48 -48 -48c-2.59961 0 -5.2002 0.400391 -7.7002 0.799805l-72.2998 -192.8h-384
l-72.2998 192.8c-2.5 -0.399414 -5.10059 -0.799805 -7.7002 -0.799805c-26.5 0 -48 21.5 -48 48s21.5996 48 48.0996 48s48 -21.5 48 -48c0 -7.09961 -1.69922 -13.7998 -4.39941 -19.7998l72.2998 -43.4004c15.2998 -9.2002 35.2998 -4 44.2002 11.6006l81.5 142.6
c-10.7002 8.7998 -17.7002 22 -17.7002 37c0 26.5 21.5 48 48 48s48 -21.5 48 -48c0 -15 -7 -28.2002 -17.7002 -37l81.5 -142.6c8.90039 -15.6006 28.7998 -20.8008 44.2002 -11.6006l72.4004 43.4004c-2.80078 6.09961 -4.40039 12.7002 -4.40039 19.7998
c0 26.5 21.5 48 48 48z" />
    <glyph glyph-name="dice" unicode="&#xf522;" horiz-adv-x="640" 
d="M592 256c26.5098 0 48 -21.4902 48 -48v-224c0 -26.5098 -21.4902 -48 -48 -48h-224c-26.5098 0 -48 21.4902 -48 48v46.4199l136.26 136.26c24.1201 24.1201 29.6904 59.7305 17 89.3203h118.74zM480 72c13.25 0 24 10.75 24 24c0 13.2598 -10.75 24 -24 24
s-24 -10.7402 -24 -24c0 -13.25 10.75 -24 24 -24zM433.63 258.7c19.1602 -19.1602 19.1602 -50.2305 0 -69.4004l-174.939 -174.93c-19.1602 -19.1602 -50.2305 -19.1602 -69.3906 0l-174.93 174.939c-19.1602 19.1602 -19.1602 50.2305 0 69.3906l174.939 174.93
c19.1602 19.1602 50.2305 19.1602 69.3906 0zM96 200c13.25 0 24 10.75 24 24c0 13.2598 -10.75 24 -24 24s-24 -10.7402 -24 -24c0 -13.25 10.75 -24 24 -24zM224 72c13.25 0 24 10.75 24 24c0 13.2598 -10.75 24 -24 24s-24 -10.7402 -24 -24c0 -13.25 10.75 -24 24 -24z
M224 200c13.25 0 24 10.75 24 24c0 13.2598 -10.75 24 -24 24s-24 -10.7402 -24 -24c0 -13.25 10.75 -24 24 -24zM224 328c13.25 0 24 10.75 24 24c0 13.2598 -10.75 24 -24 24s-24 -10.7402 -24 -24c0 -13.25 10.75 -24 24 -24zM352 200c13.25 0 24 10.75 24 24
c0 13.2598 -10.75 24 -24 24s-24 -10.7402 -24 -24c0 -13.25 10.75 -24 24 -24z" />
    <glyph glyph-name="dice-five" unicode="&#xf523;" horiz-adv-x="448" 
d="M384 416c35.3496 0 64 -28.6504 64 -64v-320c0 -35.3496 -28.6504 -64 -64 -64h-320c-35.3496 0 -64 28.6504 -64 64v320c0 35.3496 28.6504 64 64 64h320zM128 64c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32s-32 -14.3301 -32 -32s14.3301 -32 32 -32zM128 256
c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32s-32 -14.3301 -32 -32s14.3301 -32 32 -32zM224 160c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32s-32 -14.3301 -32 -32s14.3301 -32 32 -32zM320 64c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32
s-32 -14.3301 -32 -32s14.3301 -32 32 -32zM320 256c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32s-32 -14.3301 -32 -32s14.3301 -32 32 -32z" />
    <glyph glyph-name="dice-four" unicode="&#xf524;" horiz-adv-x="448" 
d="M384 416c35.3496 0 64 -28.6504 64 -64v-320c0 -35.3496 -28.6504 -64 -64 -64h-320c-35.3496 0 -64 28.6504 -64 64v320c0 35.3496 28.6504 64 64 64h320zM128 64c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32s-32 -14.3301 -32 -32s14.3301 -32 32 -32zM128 256
c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32s-32 -14.3301 -32 -32s14.3301 -32 32 -32zM320 64c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32s-32 -14.3301 -32 -32s14.3301 -32 32 -32zM320 256c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32
s-32 -14.3301 -32 -32s14.3301 -32 32 -32z" />
    <glyph glyph-name="dice-one" unicode="&#xf525;" horiz-adv-x="448" 
d="M384 416c35.3496 0 64 -28.6504 64 -64v-320c0 -35.3496 -28.6504 -64 -64 -64h-320c-35.3496 0 -64 28.6504 -64 64v320c0 35.3496 28.6504 64 64 64h320zM224 160c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32s-32 -14.3301 -32 -32s14.3301 -32 32 -32z" />
    <glyph glyph-name="dice-six" unicode="&#xf526;" horiz-adv-x="448" 
d="M384 416c35.3496 0 64 -28.6504 64 -64v-320c0 -35.3496 -28.6504 -64 -64 -64h-320c-35.3496 0 -64 28.6504 -64 64v320c0 35.3496 28.6504 64 64 64h320zM128 64c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32s-32 -14.3301 -32 -32s14.3301 -32 32 -32zM128 160
c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32s-32 -14.3301 -32 -32s14.3301 -32 32 -32zM128 256c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32s-32 -14.3301 -32 -32s14.3301 -32 32 -32zM320 64c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32
s-32 -14.3301 -32 -32s14.3301 -32 32 -32zM320 160c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32s-32 -14.3301 -32 -32s14.3301 -32 32 -32zM320 256c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32s-32 -14.3301 -32 -32s14.3301 -32 32 -32z" />
    <glyph glyph-name="dice-three" unicode="&#xf527;" horiz-adv-x="448" 
d="M384 416c35.3496 0 64 -28.6504 64 -64v-320c0 -35.3496 -28.6504 -64 -64 -64h-320c-35.3496 0 -64 28.6504 -64 64v320c0 35.3496 28.6504 64 64 64h320zM128 256c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32s-32 -14.3301 -32 -32s14.3301 -32 32 -32zM224 160
c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32s-32 -14.3301 -32 -32s14.3301 -32 32 -32zM320 64c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32s-32 -14.3301 -32 -32s14.3301 -32 32 -32z" />
    <glyph glyph-name="dice-two" unicode="&#xf528;" horiz-adv-x="448" 
d="M384 416c35.3496 0 64 -28.6504 64 -64v-320c0 -35.3496 -28.6504 -64 -64 -64h-320c-35.3496 0 -64 28.6504 -64 64v320c0 35.3496 28.6504 64 64 64h320zM128 256c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32s-32 -14.3301 -32 -32s14.3301 -32 32 -32zM320 64
c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32s-32 -14.3301 -32 -32s14.3301 -32 32 -32z" />
    <glyph glyph-name="divide" unicode="&#xf529;" horiz-adv-x="448" 
d="M224 96c35.3496 0 64 -28.6504 64 -64s-28.6504 -64 -64 -64s-64 28.6504 -64 64s28.6504 64 64 64zM224 288c-35.3496 0 -64 28.6504 -64 64s28.6504 64 64 64s64 -28.6504 64 -64s-28.6504 -64 -64 -64zM416 240c17.6699 0 32 -14.3301 32 -32v-32
c0 -17.6699 -14.3301 -32 -32 -32h-384c-17.6699 0 -32 14.3301 -32 32v32c0 17.6699 14.3301 32 32 32h384z" />
    <glyph glyph-name="door-closed" unicode="&#xf52a;" horiz-adv-x="640" 
d="M624 0c8.83984 0 16 -7.16016 16 -16v-32c0 -8.83984 -7.16016 -16 -16 -16h-608c-8.83984 0 -16 7.16016 -16 16v32c0 8.83984 7.16016 16 16 16h111.99v397.2c0 28.0195 21.5293 50.7998 48 50.7998h288.01c26.4697 0 48 -22.7803 48 -50.7998v-397.2h112zM415.99 160
c17.6797 0 32.0098 14.3301 32 32c0 17.6699 -14.3301 32 -32 32s-32 -14.3301 -32 -32s14.3301 -32 32 -32z" />
    <glyph glyph-name="door-open" unicode="&#xf52b;" horiz-adv-x="640" 
d="M624 0c8.83984 0 16 -7.16016 16 -16v-32c0 -8.83984 -7.16016 -16 -16 -16h-144v384h-96v64h112c26.4697 0 48 -22.1904 48 -49.4502v-334.55h80zM312.24 446.99c20.2002 5.24023 39.7598 -10.5898 39.7598 -32.1699v-478.82h-336c-8.83984 0 -16 7.16016 -16 16v32
c0 8.83984 7.16016 16 16 16h80v365.08c0 15.2197 9.99023 28.4795 24.2402 32.1699zM264 160c13.25 0 24 14.3301 24 32s-10.75 32 -24 32s-24 -14.3301 -24 -32s10.75 -32 24 -32z" />
    <glyph glyph-name="equals" unicode="&#xf52c;" horiz-adv-x="448" 
d="M416 144c17.6699 0 32 -14.3301 32 -32v-32c0 -17.6699 -14.3301 -32 -32 -32h-384c-17.6699 0 -32 14.3301 -32 32v32c0 17.6699 14.3301 32 32 32h384zM416 336c17.6699 0 32 -14.3301 32 -32v-32c0 -17.6699 -14.3301 -32 -32 -32h-384c-17.6699 0 -32 14.3301 -32 32
v32c0 17.6699 14.3301 32 32 32h384z" />
    <glyph glyph-name="feather" unicode="&#xf52d;" 
d="M467.14 403.16c50.5703 -50.5205 61.7002 -124.9 16.2607 -199.36l-131.54 -43.7998h97.7793c-9.92969 -10.6797 3.68066 3.07031 -46.3096 -46.8604l-147.57 -49.1396h98.1904c-74.9502 -73.1104 -194.53 -70.6504 -246.83 -54.9404l-66.1006 -66.0293
c-9.37988 -9.37012 -24.5996 -9.37012 -33.9795 0s-9.37988 24.5693 0 33.9395l259.52 259.25c6.25 6.25 6.25 16.3799 0 22.6299s-16.3896 6.25 -22.6494 0l-178.44 -178.25c-6.75 60.3408 3.18066 150.78 63.6406 211.17c24.7695 24.7402 7.13965 7.14062 85.75 85.6602
c90.6094 90.5107 189.729 88.21 252.279 25.7305z" />
    <glyph glyph-name="frog" unicode="&#xf52e;" horiz-adv-x="576" 
d="M446.53 350.57c0 0 58.4297 -19.0605 98.9893 -41.2803c18.7607 -10.2803 30.4805 -29.8301 30.4805 -51.2305c0 -21.793 -11.9512 -40.7695 -29.71 -50.7295l-154.44 -86.6504l98.5205 -104.68h53.6299c17.6699 0 32 -14.3301 32 -32c0 -8.83984 -7.16016 -16 -16 -16
h-90.3799l-118.53 125.94c5.07031 54.1494 -29.9297 85.0596 -40.7998 93.21c-36.8496 27.6191 -88.29 27.6592 -125.13 0l-34.7803 -26.0908c-7.07031 -5.2998 -8.49023 -15.3291 -3.18945 -22.4092c5.31934 -7.10059 15.3496 -8.5 22.4092 -3.19043l32.7607 24.5898
c20.6895 15.5303 48.3496 20.8105 72.2393 10.8799c44.0605 -18.3193 57.8506 -70.3701 33.71 -106.6l-35.7998 -48.3301h79.4902c17.6699 0 32 -14.3301 32 -32c0 -8.83984 -7.16016 -16 -16 -16h-304c-34.9199 0 -63.8896 28.0996 -64 63.0195
c-0.5 166.86 126.75 304.021 289.46 319.44c6.82031 37.25 39.3096 65.54 78.54 65.54c39.1904 0 71.6699 -28.2305 78.5303 -65.4297zM368 312c13.25 0 24 10.75 24 24c0 13.2598 -10.75 24 -24 24c-13.2598 0 -24 -10.7402 -24 -24c0 -13.25 10.7402 -24 24 -24z" />
    <glyph glyph-name="gas-pump" unicode="&#xf52f;" 
d="M336 0c8.7998 0 16 -7.2002 16 -16v-32c0 -8.7998 -7.2002 -16 -16 -16h-320c-8.7998 0 -16 7.2002 -16 16v32c0 8.7998 7.2002 16 16 16h320zM493.2 340.7c12 -12 18.7998 -28.2998 18.7998 -45.2998v-223.4c0 -42.2002 -36.5 -76 -79.5 -71.7002
c-37.5 3.90039 -64.5 38.2002 -64.5 75.9004v27.7998c0 22.0996 -17.9004 40 -40 40h-8v-112h-288v352c0 35.2998 28.7002 64 64 64h160c35.2998 0 64 -28.7002 64 -64v-192h8c48.5996 0 88 -39.4004 88 -88v-32c0 -13.2002 10.7998 -24 24 -24s24 10.7998 24 24v160.8
c-27.0996 3.90039 -48 27.1006 -48 55.2002v62.0996l-37.7002 37.7002c-6.2002 6.2002 -6.2002 16.4004 0 22.6006l11.2998 11.2998c6.2002 6.2002 16.4004 6.2002 22.6006 0zM256 256v128h-160v-128h160z" />
    <glyph glyph-name="glasses" unicode="&#xf530;" horiz-adv-x="576" 
d="M574.1 167.63c1.26074 -5.07031 1.90039 -10.2695 1.90039 -15.5v-70.25c0 -62.8896 -51.5801 -113.88 -115.2 -113.88h-37.1201c-60.2793 0 -110.37 45.9404 -114.87 105.37l-2.92969 38.6299h-35.75l-2.92969 -38.6299
c-4.50977 -59.4297 -54.6006 -105.37 -114.88 -105.37h-37.1201c-63.6201 0 -115.2 50.9902 -115.2 113.89v70.25c0.000976562 5.35059 0.663086 10.5205 1.90039 15.4902l45.3398 181.73c5.91016 23.6895 21.5898 44.0293 43 55.7998
c21.4395 11.7402 46.9697 14.1094 70.1895 6.33008l15.25 -5.08008c8.39062 -2.79004 12.9199 -11.8604 10.1201 -20.2402l-5.05957 -15.1797c-2.79004 -8.37988 -11.8506 -12.9102 -20.2305 -10.1201l-13.1699 4.38965
c-10.8701 3.62012 -22.9902 3.57031 -33.1494 -1.72949c-10.29 -5.36035 -17.5908 -14.5605 -20.3809 -25.8105l-38.46 -153.83c22.1904 6.81055 49.79 12.46 81.21 12.46c34.7803 0 73.9902 -7.00977 114.86 -26.75h73.1797
c40.8701 19.7207 80.0801 26.7402 114.851 26.7402c31.4102 0 59.0098 -5.64941 81.2002 -12.46l-38.46 153.82c-2.80078 11.2598 -10.0801 20.4502 -20.3701 25.8193c-10.1602 5.30078 -22.29 5.35059 -33.1602 1.73047l-13.1797 -4.38965
c-8.38086 -2.79004 -17.4404 1.73926 -20.2305 10.1201l-5.05957 15.1797c-2.80078 8.37988 1.72949 17.4502 10.1191 20.2402l15.25 5.08008c23.2207 7.7793 48.75 5.39941 70.1904 -6.33008c21.4102 -11.7607 37.0898 -32.1104 43 -55.8105zM203.38 78.21l3.12988 41.2197
c-22.6699 8.58984 -46.0693 12.9199 -69.9297 12.9199c-29.1602 0 -54.46 -6.42969 -72.5801 -12.9199v-37.54c0 -27.5098 22.9697 -49.8896 51.2002 -49.8896h37.1201c26.6602 0 49.0898 20.2998 51.0596 46.21zM512 81.8799l-0.00976562 37.54
c-18.1201 6.49023 -43.4307 12.9297 -72.5498 12.9297c-23.8701 0 -47.2803 -4.33008 -69.9502 -12.9199l3.12988 -41.2197c1.95996 -25.9102 24.3896 -46.21 51.0596 -46.21h37.1201c28.2305 0 51.2002 22.3701 51.2002 49.8799z" />
    <glyph glyph-name="greater-than" unicode="&#xf531;" horiz-adv-x="384" 
d="M365.52 238.15c11.2803 -5.25 18.4805 -16.5605 18.4902 -29.0107v-34.2295c-0.00195312 -12.8398 -7.55469 -23.9062 -18.4795 -29l-306.471 -142.91c-16.0195 -7.46973 -35.0596 -0.540039 -42.5293 15.4805l-13.5205 29
c-7.46973 16.0195 -0.540039 35.0596 15.4805 42.5293l218.47 101.891l-218.43 101.85c-16.0605 7.49023 -23.0107 26.5801 -15.5205 42.6396l13.5703 29.0801c7.49023 16.0605 26.5801 23.0107 42.6396 15.5205z" />
    <glyph glyph-name="greater-than-equal" unicode="&#xf532;" horiz-adv-x="448" 
d="M55.2197 340.31c-18.29 6 -27.7393 24.2607 -21.0996 40.79l12.0303 29.9199c6.63965 16.5303 26.8594 25.0605 45.1494 19.0605l301.72 -119.98c13.7705 -4.51953 22.9805 -16.6094 22.9805 -30.1699v-15.96c0 -13.5596 -9.20996 -25.6494 -22.9805 -30.1699
l-301.409 -119.859c-18.3906 -6.04004 -38.7002 2.54004 -45.3799 19.1494l-12.0908 30.0801c-6.67969 16.6104 2.81055 34.9697 21.2002 41l175.44 68.0498zM424 48c13.25 0 24 -10.7402 24 -24v-48c0 -13.25 -10.75 -24 -24 -24h-400c-13.25 0 -24 10.75 -24 24v48
c0 13.2598 10.75 24 24 24h400z" />
    <glyph glyph-name="helicopter" unicode="&#xf533;" horiz-adv-x="640" 
d="M304 64c-10.4707 0 -19.7627 5.01465 -25.5996 12.7998l-86.4004 115.2l-160 64l-31.5098 108.12c-2.53027 10.0996 5.10938 19.8799 15.5195 19.8799h39.9902c5.03027 0 9.78027 -2.37012 12.7998 -6.40039l43.2002 -57.5996h208v64h-176c-8.83984 0 -16 7.16016 -16 16
v32c0 8.83984 7.16016 16 16 16h416c8.83984 0 16 -7.16016 16 -16v-32c0 -8.83984 -7.16016 -16 -16 -16h-176v-64c123.71 0 224 -100.29 224 -224c0 -17.6699 -14.3301 -32 -32 -32h-272zM416 252.49v-124.49h124.79c-12.7598 62.5596 -62.2402 111.7 -124.79 124.49z
M635.37 -10.8096c6.58984 -6.61035 6.04004 -17.5205 -0.980469 -23.6602c-33.1494 -29.0498 -53.5693 -29.5205 -68.4492 -29.5205h-325.94c-8.83984 0 -16 7.18066 -16 16.0303v32.0596c0 8.85059 7.16016 16.0303 16 16.0303h325.94
c10.7998 0 17.5498 4.48047 24.6396 11.25c6.40039 6.11035 16.3896 6.27051 22.6396 0.00976562z" />
    <glyph glyph-name="infinity" unicode="&#xf534;" horiz-adv-x="640" 
d="M471.1 352c93.1006 0 168.9 -71.7998 168.9 -160s-75.7998 -160 -168.9 -160c-66.0996 0 -117.8 41.2998 -151.1 78.5996c-33.2998 -37.2998 -85 -78.5996 -151.1 -78.5996c-93.1006 0 -168.9 71.7998 -168.9 160s75.7998 160 168.9 160
c66.0996 0 117.8 -41.2998 151.1 -78.5996c33.2998 37.2998 85 78.5996 151.1 78.5996zM168.9 128c38.0996 0 73.5996 36.4004 94 64c-20.6006 27.9004 -55.8008 64 -94 64c-40.2002 0 -72.9004 -28.7002 -72.9004 -64s32.7002 -64 72.9004 -64zM471.1 128
c40.2002 0 72.9004 28.7002 72.9004 64s-32.7002 64 -72.9004 64c-38.0996 0 -73.5996 -36.4004 -94 -64c20.6006 -27.9004 55.8008 -64 94 -64z" />
    <glyph glyph-name="kiwi-bird" unicode="&#xf535;" horiz-adv-x="576" 
d="M575.81 230.02c0.300781 -5.7793 0.160156 -246.02 0.160156 -246.02c0 -7.30957 -4.95996 -13.7002 -12.0498 -15.5c-1.30957 -0.339844 -2.63965 -0.5 -3.9502 -0.5c-5.75 0 -11.1895 3.11035 -14.0498 8.33984l-74.4102 136.44
c-7.04004 -0.470703 2.43066 -0.780273 -23.0498 -0.780273c-54.5996 0 -106.39 -19.25 -152.13 -49.0596c-12.46 -8.12012 -26.0996 -14.4502 -40.3398 -19.5107v-59.4297c0 -8.83984 -7.16016 -16 -16 -16h-16c-8.83984 0 -16 7.16016 -16 16v49.1797
c-5.32031 -0.449219 -10.5605 -1.17969 -16 -1.17969c-16.6006 0 -32.6406 2.2998 -48 6.25977v-54.2598c0 -8.83984 -7.16016 -16 -16 -16h-16c-8.83984 0 -16 7.16016 -16 16v73.9902c-57.3105 33.21 -95.9502 95.0596 -95.9902 166.01
c-0.0800781 145.76 129.3 182.88 147.31 186.94c57.1709 12.9199 111.221 0.259766 153.21 -28.7002c43.4902 -29.9902 94.9209 -46.2402 147.74 -46.2402h9.37012c60.6504 0 115.01 -45.4102 118.18 -105.98zM463.97 200c13.25 0 24 10.75 24 24
c0 13.2598 -10.75 24 -24 24s-24 -10.7402 -24 -24c0 -13.25 10.75 -24 24 -24zM543.97 46.75v99.0596c-11.1299 -11.3799 -24.7393 -20.1494 -39.8594 -25.9795z" />
    <glyph glyph-name="less-than" unicode="&#xf536;" horiz-adv-x="384" 
d="M365.46 90.2598c16.0703 -7.49023 23.0205 -26.5801 15.5303 -42.6396l-13.5605 -29.0801c-7.48926 -16.0596 -26.5801 -23.0098 -42.6396 -15.5205l-306.31 142.83c-11.2705 5.25 -18.4805 16.5605 -18.4805 29v34.2402c0.00488281 12.8389 7.55664 23.9043 18.4805 29
l306.46 142.91c16.0195 7.46973 35.0596 0.540039 42.5293 -15.4805l13.5205 -29c7.46973 -16.0195 0.540039 -35.0596 -15.4805 -42.5293l-218.47 -101.88z" />
    <glyph glyph-name="less-than-equal" unicode="&#xf537;" horiz-adv-x="448" 
d="M54.9805 233.8c-13.7705 4.52051 -22.9805 16.6104 -22.9805 30.1699v15.96c0 13.5703 9.20996 25.6602 22.9805 30.1807l301.71 119.96c18.29 6 38.5098 -2.53027 45.1494 -19.0605l12.0303 -29.9199c6.63965 -16.5195 -2.81055 -34.79 -21.1006 -40.79
l-175.56 -68.0898l175.44 -68.0498c18.3896 -6.03027 27.8896 -24.3906 21.21 -41l-12.0908 -30.0801c-6.66992 -16.6104 -26.9893 -25.1797 -45.3799 -19.1504zM424 48c13.25 0 24 -10.7402 24 -24v-48c0 -13.25 -10.75 -24 -24 -24h-400c-13.25 0 -24 10.75 -24 24v48
c0 13.2598 10.75 24 24 24h400z" />
    <glyph glyph-name="memory" unicode="&#xf538;" horiz-adv-x="640" 
d="M640 317.06c-18.5996 -6.60938 -32 -24.1895 -32 -45.0596s13.4004 -38.4502 32 -45.0596v-98.9404h-640v98.9404c18.5996 6.60938 32 24.1895 32 45.0596s-13.4004 38.4502 -32 45.0596v34.9404c0 17.6699 14.3301 32 32 32h576c17.6699 0 32 -14.3301 32 -32v-34.9404z
M224 192v128h-64v-128h64zM352 192v128h-64v-128h64zM480 192v128h-64v-128h64zM0 0v96h640v-96h-64v26.6699c0 8.83984 -7.16016 16 -16 16s-16 -7.16016 -16 -16v-26.6699h-128v26.6699c0 8.83984 -7.16016 16 -16 16s-16 -7.16016 -16 -16v-26.6699h-128v26.6699
c0 8.83984 -7.16016 16 -16 16s-16 -7.16016 -16 -16v-26.6699h-128v26.6699c0 8.83984 -7.16016 16 -16 16s-16 -7.16016 -16 -16v-26.6699h-64z" />
    <glyph glyph-name="microphone-alt-slash" unicode="&#xf539;" horiz-adv-x="640" 
d="M633.82 -10.0996c6.97949 -5.43066 8.22949 -15.4805 2.81934 -22.4502l-19.6396 -25.2705c-5.42969 -6.97949 -15.4805 -8.23926 -22.46 -2.80957l-588.36 454.729c-6.97949 5.43066 -8.22949 15.4805 -2.80957 22.4502l19.6396 25.2705
c5.41992 6.97949 15.4805 8.22949 22.46 2.80957l178.53 -138v45.3604c0 53.0195 42.9805 96 96 96s96 -42.9805 96 -96h-85.3301c-5.88965 0 -10.6699 -3.58008 -10.6699 -8v-16c0 -4.41992 4.78027 -8 10.6699 -8h85.3301v-32h-85.3301
c-5.88965 0 -10.6699 -3.58008 -10.6699 -8v-16c0 -4.41992 4.78027 -8 10.6699 -8h85.3301v-32h-85.0596l41.3994 -32h43.6699c0 -10.4502 -2.17969 -20.2705 -5.2793 -29.6699l26.5498 -20.5205c6.75977 15.4004 10.7197 32.2803 10.7197 50.2002v48
c0 8.83984 7.16016 16 16 16h16c8.83984 0 16 -7.16016 16 -16v-48c0 -28.9805 -7.25977 -56.21 -19.7402 -80.3301zM400 -16c8.83984 0 16 -7.16016 16 -16v-16c0 -8.83984 -7.16016 -16 -16 -16h-160c-8.83984 0 -16 7.16016 -16 16v16c0 8.83984 7.16016 16 16 16h56
v34.1504c-88.0303 12.1396 -152 92.0498 -152 181.689v6.85059l52.0303 -40.2207c12.4395 -53.2197 55.3301 -96.3994 111.18 -101.85c6.94043 -0.669922 13.6396 -0.200195 20.3496 0.200195l50.4004 -38.96c-10.8604 -3.80078 -22.25 -6.45996 -33.96 -8.08008v-33.7803
h56z" />
    <glyph glyph-name="money-bill-wave" unicode="&#xf53a;" horiz-adv-x="640" 
d="M621.16 393.54c11.6094 -4.87012 18.8398 -16.8301 18.8496 -29.4697v-317.25c0 -18.4902 -15.04 -31.8105 -32.25 -31.8105c-3.39941 0 -6.87988 0.520508 -10.3496 1.62012c-30.8906 9.7998 -61.7598 13.7197 -92.6504 13.7197
c-123.17 0 -246.34 -62.3496 -369.51 -62.3496c-38.7998 0 -77.6201 6.19043 -116.41 22.4697c-11.6094 4.86035 -18.8398 16.8301 -18.8398 29.46v317.261c0 18.4893 15.04 31.8096 32.25 31.8096c3.40039 0 6.87988 -0.519531 10.3496 -1.62012
c30.8906 -9.7998 61.7607 -13.7197 92.6504 -13.7197c123.17 0 246.33 62.3496 369.5 62.3398c38.7998 0 77.6201 -6.19043 116.41 -22.46zM48 315.78v-60.4707c31 0 56.8398 22.1504 62.7197 51.54c-21.5996 1.36035 -42.5996 3.89062 -62.7197 8.93066zM48 30.7803
c20.1201 -7.31055 41.1797 -11.8105 63.71 -13.6201c-1.53027 34.1299 -29.3398 61.3994 -63.71 61.3994v-47.7793zM320 96c44.1699 0 80 42.9697 80 96c0 53.0195 -35.8203 96 -80 96s-80 -42.9805 -80 -96c0 -53.0098 35.8096 -96 80 -96zM592 68.2197v57.7207
c-26.8203 -3.40039 -48.4502 -23.2002 -54.3203 -49.2803c18.6104 -1.58984 36.8008 -4.0498 54.3203 -8.44043zM592 304.33v48.8896c-17.7197 6.43066 -36.2695 10.4902 -55.8096 12.6602c0.949219 -31.8496 24.9199 -57.6396 55.8096 -61.5498z" />
    <glyph glyph-name="money-bill-wave-alt" unicode="&#xf53b;" horiz-adv-x="640" 
d="M621.16 393.54c11.6094 -4.87012 18.8398 -16.8301 18.8496 -29.4697v-317.25c0 -18.4902 -15.04 -31.8105 -32.25 -31.8105c-3.39941 0 -6.87988 0.520508 -10.3496 1.62012c-30.8906 9.7998 -61.7598 13.7197 -92.6504 13.7197
c-123.17 0 -246.34 -62.3496 -369.51 -62.3496c-38.7998 0 -77.6201 6.19043 -116.41 22.4697c-11.6094 4.86035 -18.8398 16.8301 -18.8398 29.46v317.261c0 18.4893 15.04 31.8096 32.25 31.8096c3.40039 0 6.87988 -0.519531 10.3496 -1.62012
c30.8906 -9.7998 61.7607 -13.7197 92.6504 -13.7197c123.17 0 246.33 62.3496 369.5 62.3398c38.7998 0 77.6201 -6.19043 116.41 -22.46zM320 96c44.1699 0 80 42.9697 80 96c0 53.0195 -35.8203 96 -80 96s-80 -42.9805 -80 -96c0 -53.0098 35.8096 -96 80 -96z" />
    <glyph glyph-name="money-check" unicode="&#xf53c;" horiz-adv-x="640" 
d="M0 0v320h640v-320c0 -17.6699 -14.3301 -32 -32 -32h-576c-17.6699 0 -32 14.3301 -32 32zM448 208v-32c0 -8.83984 7.16016 -16 16 -16h96c8.83984 0 16 7.16016 16 16v32c0 8.83984 -7.16016 16 -16 16h-96c-8.83984 0 -16 -7.16016 -16 -16zM448 88v-16
c0 -4.41992 3.58008 -8 8 -8h112c4.41992 0 8 3.58008 8 8v16c0 4.41992 -3.58008 8 -8 8h-112c-4.41992 0 -8 -3.58008 -8 -8zM64 184v-16c0 -4.41992 3.58008 -8 8 -8h304c4.41992 0 8 3.58008 8 8v16c0 4.41992 -3.58008 8 -8 8h-304c-4.41992 0 -8 -3.58008 -8 -8z
M64 88v-16c0 -4.41992 3.58008 -8 8 -8h176c4.41992 0 8 3.58008 8 8v16c0 4.41992 -3.58008 8 -8 8h-176c-4.41992 0 -8 -3.58008 -8 -8zM624 416c8.83984 0 16 -7.16016 16 -16v-48h-640v48c0 8.83984 7.16016 16 16 16h608z" />
    <glyph glyph-name="money-check-alt" unicode="&#xf53d;" horiz-adv-x="640" 
d="M608 416c17.6699 0 32 -14.3301 32 -32v-384c0 -17.6699 -14.3301 -32 -32 -32h-576c-17.6699 0 -32 14.3301 -32 32v384c0 17.6699 14.3301 32 32 32h576zM176 120.12c23.6201 0.629883 42.6699 20.54 42.6699 45.0703c0 19.9697 -12.9902 37.8096 -31.5801 43.3896
l-45 13.5c-5.16016 1.54004 -8.76953 6.78027 -8.76953 12.7295c0 7.27051 5.2998 13.1904 11.7998 13.1904h28.1104c4.55957 0 8.94922 -1.29004 12.8193 -3.71973c3.24023 -2.03027 7.36035 -1.91016 10.1299 0.729492l11.75 11.21
c3.53027 3.37012 3.33008 9.20996 -0.569336 12.1406c-9.10059 6.83984 -20.0801 10.7695 -31.3701 11.3496v16.29c0 4.41992 -3.58008 8 -8 8h-16c-4.41992 0 -8 -3.58008 -8 -8v-16.1201c-23.6201 -0.629883 -42.6699 -20.5498 -42.6699 -45.0703
c0 -19.9697 12.9893 -37.8096 31.5801 -43.3896l45 -13.5c5.15918 -1.54004 8.76953 -6.78027 8.76953 -12.7295c0 -7.27051 -5.2998 -13.1904 -11.7998 -13.1904h-28.1104c-4.55957 0 -8.9502 1.2998 -12.8193 3.71973
c-3.24023 2.03027 -7.36035 1.91016 -10.1309 -0.729492l-11.75 -11.21c-3.5293 -3.37012 -3.3291 -9.20996 0.570312 -12.1406c9.10059 -6.83008 20.0801 -10.7695 31.3701 -11.3496v-16.29c0 -4.41992 3.58008 -8 8 -8h16c4.41992 0 8 3.58008 8 8v16.1201zM416 136v16
c0 4.41992 -3.58008 8 -8 8h-112c-4.41992 0 -8 -3.58008 -8 -8v-16c0 -4.41992 3.58008 -8 8 -8h112c4.41992 0 8 3.58008 8 8zM576 136v16c0 4.41992 -3.58008 8 -8 8h-80c-4.41992 0 -8 -3.58008 -8 -8v-16c0 -4.41992 3.58008 -8 8 -8h80c4.41992 0 8 3.58008 8 8z
M576 232v16c0 4.41992 -3.58008 8 -8 8h-272c-4.41992 0 -8 -3.58008 -8 -8v-16c0 -4.41992 3.58008 -8 8 -8h272c4.41992 0 8 3.58008 8 8z" />
    <glyph glyph-name="not-equal" unicode="&#xf53e;" horiz-adv-x="448" 
d="M416 240h-98.4199l-74.5303 -96h172.95c17.6699 0 32 -14.3301 32 -32v-32c0 -17.6699 -14.3301 -32 -32 -32h-247.48l-82.0898 -105.73c-5.37012 -7.00977 -15.4102 -8.34961 -22.4297 -2.96973l-25.4102 19.46c-7.00977 5.37988 -8.33984 15.4199 -2.96973 22.4307
l51.8701 66.8096h-55.4902c-17.6699 0 -32 14.3301 -32 32v32c0 17.6699 14.3301 32 32 32h130.03l74.5293 96h-204.56c-17.6699 0 -32 14.3301 -32 32v32c0 17.6699 14.3301 32 32 32h279.09l82.0801 105.73c5.37988 7.00977 15.4199 8.34961 22.4404 2.96973
l25.4092 -19.46c7.01074 -5.37012 8.34082 -15.4102 2.9707 -22.4307l-51.8701 -66.8096h23.8799c17.6699 0 32 -14.3301 32 -32v-32c0 -17.6699 -14.3301 -32 -32 -32z" />
    <glyph glyph-name="palette" unicode="&#xf53f;" 
d="M204.3 443c163.8 31.9004 307.2 -92.0996 307.7 -249.7c-0.0996094 -35.7002 -29.0996 -65.2998 -64.9004 -65.2998h-79.6992c-51 0 -84 -53 -60.9004 -98.4004c18.9004 -37.0996 -1.2998 -85.2998 -42.5 -91.6992c-127.1 -19.7002 -295.8 119.699 -258.8 306.699
c19.5996 99.1006 99.7002 179 199.1 198.4zM96 128c17.7002 0 32 14.2998 32 32s-14.2998 32 -32 32s-32 -14.2998 -32 -32s14.2998 -32 32 -32zM128 256c17.7002 0 32 14.2998 32 32s-14.2998 32 -32 32s-32 -14.2998 -32 -32s14.2998 -32 32 -32zM256 320
c17.7002 0 32 14.2998 32 32s-14.2998 32 -32 32s-32 -14.2998 -32 -32s14.2998 -32 32 -32zM384 256c17.7002 0 32 14.2998 32 32s-14.2998 32 -32 32s-32 -14.2998 -32 -32s14.2998 -32 32 -32z" />
    <glyph glyph-name="parking" unicode="&#xf540;" horiz-adv-x="448" 
d="M400 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h352zM240 128c52.9004 0 96 43.0996 96 96s-43.0996 96 -96 96h-96c-8.7998 0 -16 -7.2002 -16 -16v-224c0 -8.7998 7.2002 -16 16 -16h32
c8.7998 0 16 7.2002 16 16v48h48zM240 256c17.5996 0 32 -14.4004 32 -32s-14.4004 -32 -32 -32h-48v64h48z" />
    <glyph glyph-name="percentage" unicode="&#xf541;" horiz-adv-x="384" 
d="M109.25 274.75c-24.9902 -25 -65.5098 -25 -90.5098 0c-24.9902 24.9902 -24.9902 65.5195 0 90.5098s65.5195 24.9902 90.5098 0s24.9902 -65.5195 0 -90.5098zM365.25 109.26c25 -25 25 -65.5195 0 -90.5098c-24.9902 -24.9902 -65.5195 -24.9902 -90.5098 0
s-24.9902 65.5195 0 90.5098s65.5195 24.9902 90.5098 0zM363.31 340.69c12.5 -12.5 12.5 -32.7607 0 -45.25l-274.75 -274.75c-12.4893 -12.5 -32.75 -12.5 -45.25 0l-22.6191 22.6191c-12.5 12.4902 -12.5 32.75 0 45.25l274.75 274.75c12.4893 12.5 32.75 12.5 45.25 0z
" />
    <glyph glyph-name="project-diagram" unicode="&#xf542;" horiz-adv-x="640" 
d="M384 128c17.6699 0 32 -14.3301 32 -32v-128c0 -17.6699 -14.3301 -32 -32 -32h-128c-17.6699 0 -32 14.3301 -32 32v128c0 17.6699 14.3301 32 32 32h128zM192 416v-32h224v-64h-224v-47.5098l64.2803 -112.49h-0.280273c-23.5996 0 -44.0195 -12.9805 -55.1201 -32.04
l-73.1602 128.04h-95.7197c-17.6699 0 -32 14.3301 -32 32v128c0 17.6699 14.3301 32 32 32h128c17.6699 0 32 -14.3301 32 -32zM608 448c17.6699 0 32 -14.3301 32 -32v-128c0 -17.6699 -14.3301 -32 -32 -32h-128c-17.6699 0 -32 14.3301 -32 32v128
c0 17.6699 14.3301 32 32 32h128z" />
    <glyph glyph-name="receipt" unicode="&#xf543;" horiz-adv-x="384" 
d="M358.4 444.8c10.5996 7.90039 25.5996 0.400391 25.5996 -12.7998v-480c0 -13.2002 -15.0996 -20.7002 -25.5996 -12.7998l-38.4004 44.7998l-54.4004 -44.7998c-2.66602 -2.01953 -6.01367 -3.21777 -9.6123 -3.21777c-3.59961 0 -6.9209 1.19824 -9.58691 3.21777
l-54.4004 44.7998l-54.4004 -44.7998c-2.66602 -2.01953 -6.01367 -3.21777 -9.6123 -3.21777c-3.59961 0 -6.9209 1.19824 -9.58691 3.21777l-54.4004 44.7998l-38.4004 -44.7998c-10.5996 -7.90039 -25.5996 -0.400391 -25.5996 12.7998v480
c0 13.2002 15 20.7002 25.5996 12.7998l38.4004 -44.7998l54.4004 44.7998c2.66602 2.01953 6.01367 3.21777 9.6123 3.21777c3.59961 0 6.9209 -1.19824 9.58691 -3.21777l54.4004 -44.7998l54.4004 44.7998c2.66602 2.01953 6.01367 3.21777 9.6123 3.21777
c3.59961 0 6.9209 -1.19824 9.58691 -3.21777l54.4004 -44.7998zM320 88v16c0 4.40039 -3.59961 8 -8 8h-240c-4.40039 0 -8 -3.59961 -8 -8v-16c0 -4.40039 3.59961 -8 8 -8h240c4.40039 0 8 3.59961 8 8zM320 184v16c0 4.40039 -3.59961 8 -8 8h-240
c-4.40039 0 -8 -3.59961 -8 -8v-16c0 -4.40039 3.59961 -8 8 -8h240c4.40039 0 8 3.59961 8 8zM320 280v16c0 4.40039 -3.59961 8 -8 8h-240c-4.40039 0 -8 -3.59961 -8 -8v-16c0 -4.40039 3.59961 -8 8 -8h240c4.40039 0 8 3.59961 8 8z" />
    <glyph glyph-name="robot" unicode="&#xf544;" horiz-adv-x="640" 
d="M32 224h32v-192h-32h-0.0390625c-17.6406 0 -31.9619 14.3213 -31.9619 31.9619c0 0.0126953 0.000976562 0.0253906 0.000976562 0.0380859v128v0.0390625c0 17.6406 14.3213 31.9619 31.9619 31.9619c0.0126953 0 0.0253906 -0.000976562 0.0380859 -0.000976562z
M544 272v-272c-0.0351562 -35.3066 -28.6934 -63.9648 -64 -64h-320c-35.3066 0.0351562 -63.9648 28.6934 -64 64v272v0.0263672c0 44.1387 35.835 79.9746 79.9736 79.9746c0.00878906 0 0.0175781 -0.000976562 0.0263672 -0.000976562h112v64
c0 17.6611 14.3389 32 32 32s32 -14.3389 32 -32v-64h112h0.0263672c44.1387 0 79.9746 -35.835 79.9746 -79.9736c0 -0.00878906 -0.000976562 -0.0175781 -0.000976562 -0.0263672zM264 192c0 22.0762 -17.9238 40 -40 40s-40 -17.9238 -40 -40s17.9238 -40 40 -40
c22.0752 0 40 17.9248 40 40zM256 64h-64v-32h64v32zM352 64h-64v-32h64v32zM456 192c0 22.0762 -17.9238 40 -40 40s-40 -17.9238 -40 -40s17.9238 -40 40 -40c22.0752 0 40 17.9248 40 40zM448 64h-64v-32h64v32zM640 192v-128v-0.0390625
c0 -17.6406 -14.3213 -31.9619 -31.9619 -31.9619c-0.0126953 0 -0.0253906 0.000976562 -0.0380859 0.000976562h-32v192h32h0.0390625c17.6406 0 31.9619 -14.3213 31.9619 -31.9619c0 -0.0126953 -0.000976562 -0.0253906 -0.000976562 -0.0380859z" />
    <glyph glyph-name="ruler" unicode="&#xf545;" horiz-adv-x="640" 
d="M635.7 280.8c8.7998 -15 3.59961 -34.2002 -11.6006 -42.7998l-496.8 -281.9c-15.2002 -8.59961 -34.7002 -3.5 -43.5 11.5l-79.5996 135.601c-8.7998 15 -3.5 34.0996 11.7002 42.7998l69 39.0996l59.6992 -101.399c2.2002 -3.7998 7.10059 -5.10059 10.9004 -2.90039
l13.7998 7.7998c3.7998 2.2002 5.10059 7 2.90039 10.7002l-59.7002 101.7l55.2002 31.2998l27.8994 -47.5c2.2002 -3.7998 7.10059 -5.09961 10.9004 -2.89941l13.7998 7.7998c3.7998 2.2002 5.10059 6.89941 2.90039 10.7002l-27.9004 47.3994l55.2002 31.2998
l59.7002 -101.699c2.2002 -3.80078 7.09961 -5.10059 10.8994 -2.90039l13.8008 7.7998c3.7998 2.2002 5.09961 7 2.89941 10.7002l-59.7998 101.7l55.2002 31.2998l27.8994 -47.2998c2.2002 -3.7998 7.10059 -5.10059 10.9004 -2.90039l13.7998 7.7998
c3.7998 2.2002 5.10059 6.90039 2.90039 10.7002l-27.9004 47.4004l55.2002 31.2998l59.7002 -101.6c2.2002 -3.80078 7.09961 -5.10059 10.8994 -2.90039l13.8008 7.7998c3.7998 2.2002 5.09961 6.90039 2.89941 10.7002l-59.7002 101.7l69 39.0996
c15.2002 8.60059 34.7002 3.5 43.5 -11.5z" />
    <glyph glyph-name="ruler-combined" unicode="&#xf546;" 
d="M160 160v-41.3799l-158.43 -158.42c-0.660156 2.55957 -1.57031 5.03027 -1.57031 7.7998v448c0 17.6699 14.3301 32 32 32h96c17.6699 0 32 -14.3301 32 -32v-32h-56c-4.41992 0 -8 -3.58008 -8 -8v-16c0 -4.41992 3.58008 -8 8 -8h56v-64h-56
c-4.41992 0 -8 -3.58008 -8 -8v-16c0 -4.41992 3.58008 -8 8 -8h56v-64h-56c-4.41992 0 -8 -3.58008 -8 -8v-16c0 -4.41992 3.58008 -8 8 -8h56zM480 96c17.6699 0 32 -14.3301 32 -32v-96c0 -17.6699 -14.3301 -32 -32 -32h-448
c-2.75977 0 -5.24023 0.910156 -7.7998 1.57031l158.43 158.43h41.3701v-56c0 -4.41992 3.58008 -8 8 -8h16c4.41992 0 8 3.58008 8 8v56h64v-56c0 -4.41992 3.58008 -8 8 -8h16c4.41992 0 8 3.58008 8 8v56h64v-56c0 -4.41992 3.58008 -8 8 -8h16c4.41992 0 8 3.58008 8 8
v56h32z" />
    <glyph glyph-name="ruler-horizontal" unicode="&#xf547;" horiz-adv-x="576" 
d="M544 320c17.6699 0 32 -14.3301 32 -32v-192c0 -17.6699 -14.3301 -32 -32 -32h-512c-17.6699 0 -32 14.3301 -32 32v192c0 17.6699 14.3301 32 32 32h48v-88c0 -4.41992 3.58008 -8 8 -8h16c4.41992 0 8 3.58008 8 8v88h64v-88c0 -4.41992 3.58008 -8 8 -8h16
c4.41992 0 8 3.58008 8 8v88h64v-88c0 -4.41992 3.58008 -8 8 -8h16c4.41992 0 8 3.58008 8 8v88h64v-88c0 -4.41992 3.58008 -8 8 -8h16c4.41992 0 8 3.58008 8 8v88h64v-88c0 -4.41992 3.58008 -8 8 -8h16c4.41992 0 8 3.58008 8 8v88h48z" />
    <glyph glyph-name="ruler-vertical" unicode="&#xf548;" horiz-adv-x="256" 
d="M168 32h88v-64c0 -17.6699 -14.3301 -32 -32 -32h-192c-17.6699 0 -32 14.3301 -32 32v448c0 17.6699 14.3301 32 32 32h192c17.6699 0 32 -14.3301 32 -32v-64h-88c-4.41992 0 -8 -3.58008 -8 -8v-16c0 -4.41992 3.58008 -8 8 -8h88v-64h-88
c-4.41992 0 -8 -3.58008 -8 -8v-16c0 -4.41992 3.58008 -8 8 -8h88v-64h-88c-4.41992 0 -8 -3.58008 -8 -8v-16c0 -4.41992 3.58008 -8 8 -8h88v-64h-88c-4.41992 0 -8 -3.58008 -8 -8v-16c0 -4.41992 3.58008 -8 8 -8z" />
    <glyph glyph-name="school" unicode="&#xf549;" horiz-adv-x="640" 
d="M0 224c0 17.6699 14.3301 32 32 32h64v-320h-80c-8.83984 0 -16 7.16016 -16 16v272zM360 272c4.41992 0 8 -3.58008 8 -8v-16c0 -4.41992 -3.58008 -8 -8 -8h-48c-4.41992 0 -8 3.58008 -8 8v64c0 4.41992 3.58008 8 8 8h16c4.41992 0 8 -3.58008 8 -8v-40h24z
M497.75 335.96c8.90039 -5.92969 14.25 -15.9297 14.25 -26.6299v-373.33h-128v144c0 8.83984 -7.16016 16 -16 16h-96c-8.83984 0 -16 -7.16016 -16 -16v-144h-128v373.34c0.00195312 11.1084 5.64453 20.8828 14.25 26.6201l160 106.67
c5.0752 3.38086 11.2324 5.35156 17.7822 5.35156s12.6426 -1.9707 17.7178 -5.35156zM320 192c44.1797 0 80 35.8203 80 80s-35.8203 80 -80 80s-80 -35.8203 -80 -80s35.8203 -80 80 -80zM608 256c17.6699 0 32 -14.3301 32 -32v-272c0 -8.83984 -7.16016 -16 -16 -16h-80
v320h64z" />
    <glyph glyph-name="screwdriver" unicode="&#xf54a;" 
d="M448 448l64 -64l-96 -128h-62.0596l-83.0303 -83.0303c-4.25 6.79004 -9.07031 13.2705 -14.8701 19.0703c-5.7998 5.80957 -12.2803 10.6201 -19.0703 14.8701l83.0303 83.0303v62.0596zM128 169.41c29.1104 29.1094 76.2998 29.1094 105.41 0
c29.1094 -29.1104 29.1094 -76.2998 0 -105.41l-117.08 -117.08c-14.5605 -14.5596 -38.1504 -14.5596 -52.71 0l-52.7002 52.7002c-14.5498 14.5596 -14.5498 38.1602 0 52.71z" />
    <glyph glyph-name="shoe-prints" unicode="&#xf54b;" horiz-adv-x="640" 
d="M192 288c-35.3496 0 -64 28.6504 -64 64s28.6504 64 64 64h32v-128h-32zM0 32c0 35.3496 28.6504 64 64 64h32v-128h-32c-35.3496 0 -64 28.6504 -64 64zM337.46 160c90.3604 0 174.54 -32 174.54 -96c0 -45.2197 -39.0996 -97.2998 -148.58 -120.82
c-31.9795 -6.87012 -64.8896 -8.50977 -97.5801 -6.19922c-27.2998 1.92969 -54.0996 7.76953 -80.3096 15.0498l-57.5303 15.9697v128c60.21 0 79.9404 15.6201 104.73 32c28.5693 18.8799 69.8193 32 104.729 32zM491.42 440.81
c109.48 -23.5098 148.58 -75.5898 148.58 -120.81c0 -64 -84.1797 -96 -174.54 -96c-34.9102 0 -76.1602 13.1201 -104.729 32c-24.79 16.3799 -44.5303 32 -104.73 32v128l57.5303 15.9697c26.21 7.27051 53.0098 13.1104 80.3096 15.04
c32.6904 2.32031 65.6006 0.669922 97.5801 -6.2002z" />
    <glyph glyph-name="skull" unicode="&#xf54c;" 
d="M256 448c141.4 0 256 -100.3 256 -224c0 -70.0996 -36.9004 -132.6 -94.5 -173.7c-9.7002 -6.89941 -15.2002 -18.2002 -13.5 -29.8994l9.40039 -66.2002c1.39941 -9.60059 -6 -18.2002 -15.7002 -18.2002h-77.7002v56c0 4.40039 -3.59961 8 -8 8h-16
c-4.40039 0 -8 -3.59961 -8 -8v-56h-64v56c0 4.40039 -3.59961 8 -8 8h-16c-4.40039 0 -8 -3.59961 -8 -8v-56h-77.7002c-9.7002 0 -17.0996 8.59961 -15.7002 18.2002l9.40039 66.2002c1.7002 11.7998 -3.90039 23 -13.5 29.8994
c-57.5996 41.1006 -94.5 103.601 -94.5 173.7c0 123.7 114.6 224 256 224zM160 128c35.2998 0 64 28.7002 64 64s-28.7002 64 -64 64s-64 -28.7002 -64 -64s28.7002 -64 64 -64zM352 128c35.2998 0 64 28.7002 64 64s-28.7002 64 -64 64s-64 -28.7002 -64 -64
s28.7002 -64 64 -64z" />
    <glyph glyph-name="smoking-ban" unicode="&#xf54d;" 
d="M96 144v64c0 8.7998 7.2002 16 16 16h21.5l96 -96h-117.5c-8.7998 0 -16 7.2002 -16 16zM256 448c141.4 0 256 -114.6 256 -256s-114.6 -256 -256 -256s-256 114.6 -256 256s114.6 256 256 256zM256 0c41.4004 0 79.7002 13.2998 111.1 35.7002l-267.399 267.399
c-22.4004 -31.3994 -35.7002 -69.6992 -35.7002 -111.1c0 -105.9 86.0996 -192 192 -192zM301.2 192l32 -32h50.7998v32h-82.7998zM412.3 80.9004c22.4004 31.3994 35.7002 69.6992 35.7002 111.1c0 105.9 -86.0996 192 -192 192
c-41.4004 0 -79.7002 -13.2998 -111.1 -35.7002l124.3 -124.3h130.8c8.7998 0 16 -7.2002 16 -16v-64c0 -8.7998 -7.2002 -16 -16 -16h-34.7998zM320.6 320c32.1006 0 58.7002 -23.7002 63.3008 -54.5996c0.699219 -4.90039 -3 -9.40039 -8 -9.40039h-16.2002
c-3.7002 0 -7 2.5 -7.7002 6.09961c-2.7998 14.7002 -15.7998 25.9004 -31.4004 25.9004c-32.0996 0 -58.6992 23.7002 -63.2998 54.5996c-0.700195 4.90039 3 9.40039 8 9.40039h16.2002c3.7002 0 7 -2.5 7.7002 -6.09961
c2.7998 -14.7002 15.7998 -25.9004 31.3994 -25.9004z" />
    <glyph glyph-name="store" unicode="&#xf54e;" horiz-adv-x="616" 
d="M602 329.4c33.5996 -53.6006 3.7998 -128 -59 -136.4c-4.5 -0.599609 -9 -0.900391 -13.7002 -0.900391c-29.5 0 -55.7002 13 -73.7998 33.1006c-18 -20.1006 -44.2002 -33.1006 -73.7998 -33.1006c-29.5 0 -55.7998 13 -73.7998 33.1006
c-18 -20.1006 -44.2002 -33.1006 -73.8008 -33.1006c-29.5 0 -55.7998 13 -73.7998 33.1006c-18 -20.1006 -44.2002 -33.1006 -73.7998 -33.1006c-4.59961 0 -9.2002 0.300781 -13.7002 0.900391c-62.5996 8.5 -92.2998 82.9004 -58.7998 136.4l64.9004 103.6
c5.7998 9.2998 16.0996 15 27.0996 15h404c11 0 21.2998 -5.7002 27.0996 -15zM529.5 160c6.09961 0 12.0996 0.400391 18.2002 1.2002c5.59961 0.700195 11 2 16.3994 3.59961v-196.8c0 -17.7002 -14.2998 -32 -32 -32h-448c-17.6992 0 -32 14.2998 -32 32v196.8
c5.30078 -1.5 10.8008 -2.7998 16.4004 -3.59961c5.90039 -0.799805 12 -1.2002 18 -1.2002c10 0 19.9004 1.59961 29.5 3.7998v-99.7998h384v99.7998c9.59961 -2.2998 19.5 -3.7998 29.5 -3.7998z" />
    <glyph glyph-name="store-alt" unicode="&#xf54f;" horiz-adv-x="640" 
d="M320 64v160h64v-256c0 -17.7002 -14.2998 -32 -32 -32h-256c-17.7002 0 -32 14.2998 -32 32v256h64v-160h192zM634.6 305.8c14.1006 -21.2998 -1.09961 -49.7998 -26.5996 -49.7998h-575.9c-25.5996 0 -40.7998 28.5 -26.5996 49.7998l85.2998 128
c5.90039 8.90039 15.9004 14.2002 26.6006 14.2002h405.199c10.7002 0 20.7002 -5.2998 26.7002 -14.2002zM512 -48v272h64v-272c0 -8.7998 -7.2002 -16 -16 -16h-32c-8.7998 0 -16 7.2002 -16 16z" />
    <glyph glyph-name="stream" unicode="&#xf550;" 
d="M16 320c-8.83984 0 -16 7.16016 -16 16v64c0 8.83984 7.16016 16 16 16h416c8.83984 0 16 -7.16016 16 -16v-64c0 -8.83984 -7.16016 -16 -16 -16h-416zM496 240c8.83984 0 16 -7.16016 16 -16v-64c0 -8.83984 -7.16016 -16 -16 -16h-416c-8.83984 0 -16 7.16016 -16 16
v64c0 8.83984 7.16016 16 16 16h416zM432 64c8.83984 0 16 -7.16016 16 -16v-64c0 -8.83984 -7.16016 -16 -16 -16h-416c-8.83984 0 -16 7.16016 -16 16v64c0 8.83984 7.16016 16 16 16h416z" />
    <glyph glyph-name="stroopwafel" unicode="&#xf551;" 
d="M188.12 237.26l45.25 -45.2598l-45.2598 -45.25l-45.25 45.25zM301.25 259.88l-45.25 -45.25l-45.25 45.2598l45.25 45.25zM210.75 124.12l45.25 45.25l45.2598 -45.25l-45.2598 -45.2598zM256 448c141.38 0 256 -114.62 256 -256s-114.62 -256 -256 -256
s-256 114.62 -256 256s114.62 256 256 256zM442.68 152.4c1.44629 1.4502 2.3418 3.45312 2.3418 5.66113s-0.895508 4.20801 -2.3418 5.6582l-28.29 28.2803l28.2705 28.3096c3.12012 3.12012 3.12012 8.19043 0 11.3105l-11.3105 11.3096
c-3.11914 3.12012 -8.18945 3.12012 -11.3096 0l-28.29 -28.29l-45.25 45.2607l33.9404 33.9395l16.9697 -16.9697c3.12012 -3.12012 8.18945 -3.12012 11.3096 0l11.3105 11.3096c3.12012 3.12012 3.12012 8.19043 0 11.3105l-16.9707 16.9697l16.9707 16.9697
c3.12012 3.12012 3.12012 8.19043 0 11.3105l-11.3105 11.3096c-3.12012 3.12012 -8.18945 3.12012 -11.3096 0l-16.9697 -16.9697l-16.9707 16.9697c-3.12012 3.12012 -8.18945 3.12012 -11.3096 0l-11.3105 -11.3096c-3.11914 -3.12012 -3.11914 -8.19043 0 -11.3105
l16.9707 -16.9697l-33.9404 -33.9404l-45.2598 45.25l28.29 28.29c3.12012 3.12012 3.12012 8.19043 0 11.3105l-11.3105 11.3096c-3.11914 3.12012 -8.18945 3.12012 -11.3096 0l-28.29 -28.29l-28.3096 28.2705c-3.12012 3.12012 -8.19043 3.12012 -11.3105 0
l-11.3096 -11.3105c-3.12012 -3.11914 -3.12012 -8.18945 0 -11.3096l28.29 -28.29l-45.2607 -45.25l-33.9395 33.9404l16.9697 16.9697c3.12012 3.12012 3.12012 8.18945 0 11.3096l-11.3096 11.3105c-3.12012 3.12012 -8.19043 3.12012 -11.3105 0l-16.9697 -16.9707
l-16.9697 16.9707c-3.12012 3.12012 -8.19043 3.12012 -11.3105 0l-11.3096 -11.3105c-3.12012 -3.12012 -3.12012 -8.18945 0 -11.3096l16.9697 -16.9697l-16.9697 -16.9707c-3.12012 -3.12012 -3.12012 -8.18945 0 -11.3096l11.3096 -11.3105
c3.12012 -3.11914 8.19043 -3.11914 11.3105 0l16.9697 16.9707l33.9404 -33.9404l-45.25 -45.2598l-28.29 28.29c-3.12012 3.12012 -8.19043 3.12012 -11.3105 0l-11.3096 -11.3105c-3.12012 -3.11914 -3.12012 -8.18945 0 -11.3096l28.29 -28.29l-28.29 -28.29
c-3.12012 -3.12012 -3.12012 -8.19043 0 -11.3096l11.3398 -11.3301c3.12012 -3.12012 8.18945 -3.12012 11.3096 0l28.29 28.29l45.25 -45.25l-33.9395 -33.9404l-16.9707 16.9697c-3.11914 3.12012 -8.18945 3.12012 -11.3096 0l-11.3096 -11.3096
c-3.12012 -3.12012 -3.12012 -8.19043 0 -11.3105l16.9697 -16.9697l-16.9697 -16.9697c-3.12012 -3.12012 -3.12012 -8.19043 0 -11.3105l11.3096 -11.3096c3.12012 -3.12012 8.19043 -3.12012 11.3096 0l16.9707 16.9697l16.9697 -16.9697
c3.12012 -3.12012 8.19043 -3.12012 11.3096 0l11.3105 11.3096c3.12012 3.12012 3.12012 8.19043 0 11.3105l-16.9697 16.9697l33.9395 33.9404l45.25 -45.2598l-28.29 -28.29c-3.12012 -3.12012 -3.12012 -8.19043 0 -11.3105l11.3105 -11.3096
c3.11914 -3.12012 8.18945 -3.12012 11.3096 0l28.29 28.29l28.3096 -28.2705c3.12012 -3.12012 8.19043 -3.12012 11.3105 0l11.3096 11.3105c3.12012 3.11914 3.12012 8.18945 0 11.3096l-28.29 28.29l45.2607 45.2598l33.9395 -33.9395l-16.9697 -16.9707
c-3.12012 -3.11914 -3.12012 -8.18945 0 -11.3096l11.3096 -11.3096c3.12012 -3.12012 8.19043 -3.12012 11.3105 0l16.9697 16.9697l16.9697 -16.9697c3.12012 -3.12012 8.19043 -3.12012 11.3105 0l11.3096 11.3096c3.12012 3.12012 3.12012 8.19043 0 11.3096
l-16.9697 16.9707l16.9697 16.9697c3.12012 3.12012 3.12012 8.19043 0 11.3096l-11.3096 11.3105c-3.12012 3.12012 -8.19043 3.12012 -11.3105 0l-16.9697 -16.9697l-33.9404 33.9395l45.25 45.25l28.29 -28.29c3.12012 -3.12012 8.19043 -3.12012 11.3105 0zM278.63 192
l45.2598 45.2598l45.25 -45.2598l-45.25 -45.25z" />
    <glyph glyph-name="toolbox" unicode="&#xf552;" 
d="M502.63 233.37c6 -6 9.37012 -14.1396 9.37012 -22.6201v-82.75h-128v16c0 8.83984 -7.16016 16 -16 16h-32c-8.83984 0 -16 -7.16016 -16 -16v-16h-128v16c0 8.83984 -7.16016 16 -16 16h-32c-8.83984 0 -16 -7.16016 -16 -16v-16h-128v82.7402
c0 8.49023 3.37012 16.6299 9.37012 22.6299l45.25 45.2598c6.00977 6 14.1396 9.37012 22.6299 9.37012h50.75v80c0 26.5098 21.4902 48 48 48h160c26.5098 0 48 -21.4902 48 -48v-80.0098h50.75c8.49023 0 16.6299 -3.37012 22.6299 -9.37012zM320 288v64h-128v-64h128z
M384 80v16h128v-96c0 -17.6699 -14.3301 -32 -32 -32h-448c-17.6699 0 -32 14.3301 -32 32v96h128v-16c0 -8.83984 7.16016 -16 16 -16h32c8.83984 0 16 7.16016 16 16v16h128v-16c0 -8.83984 7.16016 -16 16 -16h32c8.83984 0 16 7.16016 16 16z" />
    <glyph glyph-name="tshirt" unicode="&#xf553;" horiz-adv-x="640" 
d="M631.2 351.5c7.89941 -3.90039 11.0996 -13.5996 7.09961 -21.5l-57.2998 -114.4c-4 -8 -13.5996 -11.1992 -21.5 -7.19922l-56.5996 27.6992c-10.6006 5.2002 -23 -2.59961 -23 -14.3994v-253.7c0 -17.7002 -14.3008 -32 -32 -32h-256c-17.7002 0 -32 14.2998 -32 32
v253.6c0 11.9004 -12.4004 19.6006 -23 14.4004l-56.6006 -27.7002c-7.89941 -3.89941 -17.5 -0.700195 -21.5 7.2002l-57.2002 114.5c-3.89941 7.90039 -0.699219 17.5 7.2002 21.5l194.7 96.5c20.0996 -27.7998 64.5996 -47.2002 116.5 -47.2002
s96.4004 19.4004 116.5 47.2002z" />
    <glyph glyph-name="walking" unicode="&#xf554;" horiz-adv-x="320" 
d="M208 352c-26.5 0 -48 21.5 -48 48s21.5 48 48 48s48 -21.5 48 -48s-21.5 -48 -48 -48zM302.5 202.9c15.7002 -7.90039 22 -27.3008 14.2998 -43c-7.89941 -15.8008 -26.8994 -22.2002 -42.5 -14.3008l-23.2998 11.8008c-15 7.59961 -26.4004 20.8994 -31.7002 37
l-5.5 16.5l-17.2002 -68.7002l45.5 -49.7002c7.2002 -7.7998 12.3008 -17.4004 14.9004 -27.7002l22.2002 -89c4.2998 -17.0996 -6.2002 -34.5 -23.2998 -38.7998c-17.1006 -4.2998 -34.5 6.2002 -38.8008 23.2998l-18.2998 73.2998
c-2.59961 10.3008 -7.7002 19.8008 -14.8994 27.7002l-59.9004 65.4004c-14.5 15.8994 -20.0996 38 -14.9004 58.7998l15.2002 60.7002l-26.7998 -10.7998c-7.2002 -2.90039 -13 -8.40039 -16.5 -15.4004l-6.7002 -13.5996
c-7.89941 -15.8008 -26.8994 -22.2002 -42.5 -14.3008c-15.7002 7.90039 -22 27.1006 -14.2002 42.9004l6.7002 13.5996c10.4004 21 28.1006 37.5 49.7002 46.2002c37.4004 15.1006 57.2998 25.2998 93.2998 25.2002c46.5 -0.0996094 87.5 -31.2998 102.2 -75.9004
l9.7002 -29.3994zM73.5996 62.2002l20.7002 51.5c8.7002 -11.9004 -7.89941 6.59961 47.4004 -53.7002l-13.5 -33.7998c-3.2998 -8.10059 -8.10059 -15.4004 -14.2002 -21.5l-59.4004 -59.4004c-12.5 -12.5 -32.6992 -12.5 -45.1992 0s-12.5 32.7998 0 45.2998l50 50.1006
c6.19922 6.09961 11 13.3994 14.1992 21.5z" />
    <glyph glyph-name="wallet" unicode="&#xf555;" 
d="M461.2 320c28.0195 0 50.7998 -21.5303 50.7998 -48v-256c0 -26.4697 -22.7803 -48 -50.7998 -48h-397.2c-35.3496 0 -64 28.6504 -64 64v320c0 35.3496 28.6504 64 64 64h368c26.5098 0 48 -21.4902 48 -48c0 -8.83984 -7.16016 -16 -16 -16h-384
c-8.83984 0 -16 -7.16016 -16 -16s7.16016 -16 16 -16h381.2zM416 112c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32s-32 -14.3301 -32 -32s14.3301 -32 32 -32z" />
    <glyph glyph-name="angry" unicode="&#xf556;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM136 208c0 -17.7002 14.4004 -32 32.0996 -32c17.7002 0 32 14.2998 32 32c0 2.90039 -1 5.5 -1.69922 8.2002c0.599609 0 1.19922 -0.200195 1.69922 -0.200195
c6.90039 0 13.2002 4.5 15.3008 11.4004c2.59961 8.39941 -2.2002 17.3994 -10.7002 19.8994l-80 24c-8.5 2.5 -17.4004 -2.2002 -19.9004 -10.7002c-2.59961 -8.39941 2.2002 -17.3994 10.7002 -19.8994l31 -9.2998c-6.40039 -5.90039 -10.5 -14.1006 -10.5 -23.4004z
M304 53.7998c13.4004 -16.0996 38.2998 4 24.5 20.5c-20 24 -49.4004 37.7998 -80.5996 37.7998c-31.2002 0 -60.6006 -13.7998 -80.6006 -37.7998c-13.5996 -16.2998 11.1006 -36.7998 24.6006 -20.5c27.8994 33.4004 84.2998 33.4004 112.1 0zM380.6 240.7
c8.5 2.5 13.3008 11.3994 10.8008 19.8994c-2.5 8.40039 -11.5 13.2002 -19.9004 10.7002l-80 -24c-8.40039 -2.5 -13.2002 -11.3994 -10.7002 -19.8994c2.10059 -6.90039 8.40039 -11.4004 15.2998 -11.4004c0.600586 0 1.10059 0.0996094 1.7002 0.200195
c-0.799805 -2.60059 -1.7002 -5.2998 -1.7002 -8.2002c0 -17.7002 14.3008 -32 32 -32c17.7002 0 32 14.2998 32 32c0 9.2998 -4.19922 17.5996 -10.5 23.4004z" />
    <glyph glyph-name="archway" unicode="&#xf557;" horiz-adv-x="576" 
d="M560 0c8.83984 0 16 -7.16016 16 -16v-32c0 -8.83984 -7.16016 -16 -16 -16h-159.98c-8.83984 0 -16 7.16016 -16 16v16l-0.0195312 160c0 53.0195 -42.9805 96 -96 96s-96 -42.9805 -96 -96v-176c0 -8.83984 -7.16016 -16 -16 -16h-159.98
c-8.83984 0 -16 7.16016 -16 16v32c0 8.83984 7.16016 16 16 16h15.9805v352h512v-352h16zM560 448c8.83984 0 16 -7.16016 16 -16v-32c0 -8.83984 -7.16016 -16 -16 -16h-544c-8.83984 0 -16 7.16016 -16 16v32c0 8.83984 7.16016 16 16 16h544z" />
    <glyph glyph-name="atlas" unicode="&#xf558;" horiz-adv-x="448" 
d="M318.38 240c-5.28027 -31.2197 -25.5898 -57.1699 -53.2998 -70.4102c7.66992 19.0605 12.7197 43.3799 14.21 70.4102h39.0898zM318.38 272h-39.0898c-1.49023 27.0303 -6.53027 51.3496 -14.21 70.4102c27.71 -13.2402 48.0098 -39.1904 53.2998 -70.4102zM224 350.69
c7.69043 -7.4502 20.7695 -34.4307 23.4404 -78.6904h-46.8701c2.66016 44.2695 15.7393 71.2402 23.4297 78.6904zM182.92 342.41c-7.67969 -19.0605 -12.7197 -43.3799 -14.21 -70.4102h-39.0898c5.28027 31.2197 25.5898 57.1699 53.2998 70.4102zM182.92 169.59
c-27.71 13.2402 -48.0195 39.1904 -53.2998 70.4102h39.0898c1.49023 -27.0303 6.53027 -51.3496 14.21 -70.4102zM247.43 240c-2.66016 -44.2598 -15.7393 -71.2402 -23.4395 -78.6904c-7.69043 7.4502 -20.7705 34.4307 -23.4307 78.6904h46.8701zM448 89.5996
c0 -9.59961 -3.2002 -16 -9.59961 -19.1992c-3.2002 -12.8008 -3.2002 -57.6006 0 -73.6006c6.39941 -6.39941 9.59961 -12.7998 9.59961 -19.2002v-16c0 -16 -12.7998 -25.5996 -25.5996 -25.5996h-326.4c-54.4004 0 -96 41.5996 -96 96v320c0 54.4004 41.5996 96 96 96
h326.4c16 0 25.5996 -9.59961 25.5996 -25.5996v-332.801zM224 384c-70.6904 0 -128 -57.3096 -128 -128s57.3096 -128 128 -128s128 57.3096 128 128s-57.3096 128 -128 128zM384 0v64h-288c-16 0 -32 -12.7998 -32 -32s12.7998 -32 32 -32h288z" />
    <glyph glyph-name="award" unicode="&#xf559;" horiz-adv-x="384" 
d="M97.1201 85.3701c13.79 -13.7803 32.1104 -21.3701 51.6104 -21.3701c12.4395 0 24.4697 3.54004 35.3096 9.58008l-52.0498 -127.62c-4.39062 -10.7695 -18.4307 -13.4004 -26.4307 -4.95996l-36.2393 38.2803l-52.6904 -2.01074
c-11.6201 -0.439453 -19.8203 11.2607 -15.4297 22.0303l45.3701 111.24c7.55957 -5.87012 15.9199 -10.7705 25.4297 -13.3203c20.96 -5.60938 16.4297 -3.16016 25.1201 -11.8496zM382.8 -0.700195c4.39062 -10.7598 -3.80957 -22.4697 -15.4297 -22.0303
l-52.6904 2.01074l-36.25 -38.2803c-7.98926 -8.44043 -22.04 -5.80957 -26.4297 4.95996l-52.0498 127.62c10.8398 -6.03027 22.8701 -9.58008 35.3096 -9.58008c19.5 0 37.8301 7.58984 51.6201 21.3701c8.66992 8.66992 4.0498 6.20996 25.1201 11.8496
c9.50977 2.5498 17.8701 7.44043 25.4297 13.3203zM263 108c-13.2305 -13.4697 -33.8398 -15.8799 -49.7305 -5.82031c-6.13867 3.89746 -13.5029 6.15527 -21.3066 6.15527s-15.084 -2.25781 -21.2227 -6.15527c-15.9004 -10.0596 -36.5098 -7.64941 -49.7402 5.82031
c-14.7305 15 -16.4004 14.04 -38.7803 20.1396c-13.8896 3.79004 -24.75 14.8408 -28.4697 28.9805c-7.48047 28.3994 -5.54004 24.9697 -25.9502 45.75c-10.1699 10.3604 -14.1396 25.4502 -10.4199 39.5898c7.48047 28.4199 7.46973 24.46 0 52.8203
c-3.72949 14.1396 0.25 29.2295 10.4199 39.5801c20.4102 20.7793 18.4805 17.3594 25.9502 45.75c3.71973 14.1396 14.5801 25.1895 28.4697 28.9795c27.8906 7.61035 24.5303 5.62988 44.9404 26.4102c10.1699 10.3604 25 14.4004 38.8896 10.6104
c27.9199 -7.61035 24.0303 -7.60059 51.9004 0c13.8896 3.79004 28.7197 -0.260742 38.8896 -10.6104c20.4297 -20.79 17.0703 -18.7998 44.9502 -26.4102c13.8896 -3.79004 24.75 -14.8398 28.4697 -28.9795c7.48047 -28.3906 5.54004 -24.9707 25.9502 -45.75
c10.1699 -10.3506 14.1396 -25.4404 10.4199 -39.5801c-7.47949 -28.4102 -7.46973 -24.4502 0 -52.8301c3.71973 -14.1406 -0.25 -29.2305 -10.4199 -39.5801c-20.4102 -20.7803 -18.4697 -17.3506 -25.9502 -45.75c-3.71973 -14.1396 -14.5801 -25.1904 -28.4697 -28.9805
c-21.7598 -5.92969 -23.5098 -4.58984 -38.79 -20.1396zM97.6602 272.04c0 -53.0303 42.2402 -96.0205 94.3398 -96.0205s94.3398 42.9902 94.3398 96.0205s-42.2402 96.0195 -94.3398 96.0195s-94.3398 -42.9893 -94.3398 -96.0195z" />
    <glyph glyph-name="backspace" unicode="&#xf55a;" horiz-adv-x="640" 
d="M576 384c35.3496 0 64 -28.6504 64 -64v-256c0 -35.3496 -28.6504 -64 -64 -64h-370.75c-16.9697 0 -33.25 6.75 -45.25 18.75l-150.63 150.63c-12.5 12.4902 -12.5 32.75 0 45.25l150.63 150.62c11.5801 11.5869 27.5869 18.75 45.2471 18.75h0.0126953h370.74z
M491.31 129.94l-62.0596 62.0596l62.0596 62.0596c6.25 6.25 6.25 16.3809 0 22.6309l-22.6191 22.6191c-6.25 6.25 -16.3809 6.25 -22.6309 0l-62.0596 -62.0596l-62.0596 62.0596c-6.25 6.25 -16.3809 6.25 -22.6309 0l-22.6191 -22.6191
c-6.25 -6.25 -6.25 -16.3809 0 -22.6309l62.0596 -62.0596l-62.0596 -62.0596c-6.25 -6.25 -6.25 -16.3809 0 -22.6309l22.6191 -22.6191c6.25 -6.25 16.3809 -6.25 22.6309 0l62.0596 62.0596l62.0596 -62.0596c6.25 -6.25 16.3809 -6.25 22.6309 0l22.6191 22.6191
c6.25 6.25 6.25 16.3809 0 22.6309z" />
    <glyph glyph-name="bezier-curve" unicode="&#xf55b;" horiz-adv-x="640" 
d="M368 416c17.6699 0 32 -14.3301 32 -32v-96c0 -17.6699 -14.3301 -32 -32 -32h-96c-17.6699 0 -32 14.3301 -32 32v96c0 17.6699 14.3301 32 32 32h96zM208 360v-72c0 -9.4502 2.17969 -18.3604 5.87988 -26.4404c-34.2695 -24.3496 -59.7402 -59.9492 -71.04 -101.56
h-49.3994c13.6797 64.6797 54.1699 119.48 109.54 152h-79.7305c-9.5 -23.4404 -32.4102 -40 -59.25 -40c-35.3398 0 -64 28.6504 -64 64s28.6602 64 64 64c26.8398 0 49.75 -16.5596 59.25 -40h84.75zM160 128c17.6699 0 32 -14.3301 32 -32v-96
c0 -17.6699 -14.3301 -32 -32 -32h-96c-17.6699 0 -32 14.3301 -32 32v96c0 17.6699 14.3301 32 32 32h96zM576 400c35.3398 0 64 -28.6504 64 -64s-28.6602 -64 -64 -64c-26.8398 0 -49.75 16.5596 -59.25 40h-79.7305c55.3701 -32.5195 95.8604 -87.3203 109.54 -152
h-49.3994c-11.2998 41.6104 -36.7705 77.21 -71.04 101.56c3.68945 8.08008 5.87988 16.9902 5.87988 26.4404v72h84.75c9.5 23.4404 32.4102 40 59.25 40zM576 128c17.6699 0 32 -14.3301 32 -32v-96c0 -17.6699 -14.3301 -32 -32 -32h-96c-17.6699 0 -32 14.3301 -32 32
v96c0 17.6699 14.3301 32 32 32h96z" />
    <glyph glyph-name="bong" unicode="&#xf55c;" horiz-adv-x="448" 
d="M302.5 -64h-221c-23.1699 0 -44.4199 12.5801 -56 32.6602c-16.1904 28.0703 -25.5 60.5898 -25.5 95.3398c0 71.0303 38.6699 132.9 96 166.11v153.93l-15.9697 -0.0205078c-8.85059 -0.00976562 -16.0303 7.16016 -16.0205 16.0107l0.0400391 31.7295
c0.00976562 8.82031 7.16016 15.9707 15.9805 15.9805l223.939 0.259766c8.85059 0.00976562 16.0303 -7.16992 16.0205 -16.0195l-0.0400391 -31.7207c-0.00976562 -8.81934 -7.16016 -15.9697 -15.9805 -15.9795l-15.9697 -0.0205078v-154.16
c14.1201 -8.17969 27.0898 -18.1396 38.6504 -29.5098l39.4092 39.4102l-9.37988 9.37988c-6.25 6.25 -6.25 16.3799 0 22.6299l11.3105 11.3105c6.25 6.25 16.3799 6.25 22.6299 0l52.6895 -52.6904c6.25 -6.25 6.25 -16.3799 0 -22.6299l-11.2998 -11.3203
c-6.25 -6.25 -16.3799 -6.25 -22.6299 0l-9.37988 9.37988l-43.4404 -43.4395c17.3604 -28.8105 27.4404 -62.5 27.4404 -98.6201c0 -34.75 -9.30957 -67.2598 -25.5 -95.3398c-11.5703 -20.0801 -32.8203 -32.6602 -56 -32.6602zM120.06 188.57
c-24.8096 -14.3701 -44.1094 -35.7305 -56.5596 -60.5703h257c-12.4404 24.8398 -31.75 46.2002 -56.5596 60.5703l-23.9404 13.8701v181.76l-96 -0.110352v-181.649z" />
    <glyph glyph-name="brush" unicode="&#xf55d;" horiz-adv-x="384" 
d="M352 448c17.6699 0 32 -14.3301 32 -32v-224h-384v224c0 17.6699 14.3301 32 32 32h320zM0 128v32h384v-32c0 -35.3496 -28.6602 -64 -64 -64h-64v-64c0 -35.3496 -28.6602 -64 -64 -64s-64 28.6504 -64 64v64h-64c-35.3398 0 -64 28.6504 -64 64zM192 24
c-13.25 0 -24 -10.7402 -24 -24c0 -13.25 10.75 -24 24 -24s24 10.75 24 24c0 13.2598 -10.75 24 -24 24z" />
    <glyph glyph-name="bus-alt" unicode="&#xf55e;" 
d="M488 320c13.25 0 24 -10.7402 24 -24v-80c0 -13.25 -10.75 -24 -24 -24h-8v-166.4c0 -12.7998 -9.59961 -25.5996 -25.5996 -25.5996h-6.40039v-32c0 -17.6699 -14.3301 -32 -32 -32h-32c-17.6699 0 -32 14.3301 -32 32v32h-192v-32c0 -17.6699 -14.3301 -32 -32 -32h-32
c-17.6699 0 -32 14.3301 -32 32v32c-17.6699 0 -32 14.3301 -32 32v160h-8c-13.25 0 -24 10.75 -24 24v80c0 13.2598 10.75 24 24 24h8v48c0 44.7998 99.2002 80 224 80s224 -35.2002 224 -80v-48h8zM160 376v-16c0 -4.41992 3.58008 -8 8 -8h176c4.41992 0 8 3.58008 8 8
v16c0 4.41992 -3.58008 8 -8 8h-176c-4.41992 0 -8 -3.58008 -8 -8zM112 48c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32s-32 -14.3301 -32 -32s14.3301 -32 32 -32zM240 160v160h-112c-17.6699 0 -32 -14.3301 -32 -32v-96c0 -17.6699 14.3301 -32 32 -32h112zM272 160
h112c17.6699 0 32 14.3301 32 32v96c0 17.6699 -14.3301 32 -32 32h-112v-160zM400 48c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32s-32 -14.3301 -32 -32s14.3301 -32 32 -32z" />
    <glyph glyph-name="cannabis" unicode="&#xf55f;" 
d="M503.47 87.75c5.24023 -2.75977 8.52051 -8.20996 8.53027 -14.1504c0.00976562 -5.92969 -3.26953 -11.3691 -8.50977 -14.1494c-2.4502 -1.29004 -60.7705 -31.7197 -133.49 -31.7197c-6.12988 0 -11.96 0.0996094 -17.5 0.30957
c11.3604 -22.2305 16.5195 -38.3096 16.8096 -39.2197c1.80078 -5.68066 0.290039 -11.8906 -3.90918 -16.1104c-2.90137 -2.91113 -6.91699 -4.70801 -11.3477 -4.70801c-1.6543 0 -3.25098 0.250977 -4.75293 0.717773c-1.83008 0.580078 -37.7197 11.9902 -77.2998 39.29
v-64.0098c0 -4.41992 -3.58008 -8 -8 -8h-16c-4.41992 0 -8 3.58008 -8 8v64.0195c-39.5801 -27.2998 -75.4697 -38.7197 -77.2998 -39.2891c-1.50195 -0.466797 -3.10059 -0.724609 -4.75586 -0.724609c-4.43066 0 -8.44336 1.80273 -11.3447 4.71387
c-4.19922 4.2207 -5.70996 10.4307 -3.90918 16.1104c0.290039 0.910156 5.43945 16.9902 16.8096 39.2197c-5.54004 -0.209961 -11.3604 -0.30957 -17.5 -0.30957c-72.7305 0 -131.04 30.4297 -133.49 31.7197c-5.06836 2.68652 -8.52441 7.99805 -8.52441 14.1299
c0 6.13965 3.46484 11.4766 8.54492 14.1602c1.56934 0.820312 32.3896 16.8896 76.7793 25.8096c-64.25 75.1201 -84.0498 161.671 -84.9297 165.641c-0.25 1.12207 -0.384766 2.28125 -0.384766 3.47754c0 4.40723 1.78711 8.39941 4.6748 11.292
c3.03027 3.04004 7.12012 4.7002 11.3203 4.7002c1.14941 0 2.2998 -0.129883 3.43945 -0.379883c3.89062 -0.860352 86.5508 -19.5996 160.58 -79.7598c0 1.45996 -0.00976562 2.92969 -0.00976562 4.39941c0 118.79 59.9805 213.721 62.5303 217.7
c2.93945 4.58984 8.01953 7.37012 13.4697 7.37012c5.65625 0 10.6211 -2.92969 13.46 -7.37012c2.5498 -3.97949 62.5303 -98.9102 62.5303 -217.7c0 -1.46973 0 -2.93945 -0.00976562 -4.39941c74.0391 60.1699 156.699 78.9102 160.579 79.7598
c1.15039 0.259766 2.30078 0.379883 3.44043 0.379883c4.2002 0 8.29004 -1.66016 11.3203 -4.7002c3.85938 -3.87012 5.47949 -9.43945 4.2998 -14.7695c-0.879883 -3.96973 -20.6797 -90.5205 -84.9297 -165.641c44.3896 -8.91992 75.2197 -24.9893 76.7793 -25.8096z" />
    <glyph glyph-name="check-double" unicode="&#xf560;" 
d="M505 273.2c9.2998 -9.2998 9.2998 -24.5 -0.0996094 -34l-296 -296.2c-9.30078 -9.40039 -24.5 -9.40039 -33.9004 0l-168 168.1c-9.40039 9.40039 -9.40039 24.6006 0 34l39.7002 39.7002c9.2998 9.40039 24.5 9.40039 33.8994 0l111.4 -111.5l239.5 239.5
c9.2998 9.40039 24.5 9.40039 33.9004 0zM180.7 167.2l-112 112.2c-6.2002 6.19922 -6.2002 16.2998 0 22.5996l45.2998 45.2998c6.2002 6.2998 16.4004 6.2998 22.5996 0l55.4004 -55.5l151.5 151.5c6.2002 6.2998 16.4004 6.2998 22.5996 0l45.2002 -45.2998
c6.2002 -6.2002 6.2002 -16.2998 0 -22.5996l-208 -208.2c-6.2002 -6.2998 -16.3994 -6.2998 -22.5996 0z" />
    <glyph glyph-name="cocktail" unicode="&#xf561;" horiz-adv-x="576" 
d="M296 -16c22.0898 0 40 -17.9102 40 -40c0 -4.41992 -3.58008 -8 -8 -8h-240c-4.41992 0 -8 3.58008 -8 8c0 22.0898 17.9102 40 40 40h56v125.22l-168.74 168.73c-15.5195 15.5195 -4.5293 42.0498 17.4199 42.0498h366.641c21.9492 0 32.9395 -26.5303 17.4199 -42.0498
l-168.74 -168.73v-125.22h56zM432 448c79.5303 0 144 -64.4697 144 -144s-64.4697 -144 -144 -144c-27.4102 0 -52.7695 8.08008 -74.5801 21.3799l35.2598 35.2598c12.0303 -5.43945 25.2803 -8.63965 39.3203 -8.63965c52.9297 0 96 43.0596 96 96s-43.0703 96 -96 96
c-35.3701 0 -65.9902 -19.4502 -82.6396 -48h-52.54c19.8301 55.7998 72.5693 96 135.18 96z" />
    <glyph glyph-name="concierge-bell" unicode="&#xf562;" 
d="M288 317.46c108.51 -15.5703 192 -108.64 192 -221.46h-448c0 112.82 83.4902 205.89 192 221.46v18.54h-16c-8.83984 0 -16 7.16016 -16 16v16c0 8.83984 7.16016 16 16 16h96c8.83984 0 16 -7.16016 16 -16v-16c0 -8.83984 -7.16016 -16 -16 -16h-16v-18.54zM496 64
c8.83984 0 16 -7.16016 16 -16v-32c0 -8.83984 -7.16016 -16 -16 -16h-480c-8.83984 0 -16 7.16016 -16 16v32c0 8.83984 7.16016 16 16 16h480z" />
    <glyph glyph-name="cookie" unicode="&#xf563;" 
d="M510.37 193.21c4.37988 -27.6602 -0.110352 -56 -12.8203 -80.96l-35.0996 -68.8701c-12.7021 -24.9268 -32.8652 -45.0938 -57.79 -57.7998l-69.1201 -35.21c-24.8301 -12.6396 -53.0098 -17.1104 -80.5205 -12.75l-76.6992 12.1396
c-28.1211 4.45801 -53.4463 17.7891 -72.71 37.0498l-54.7607 54.75c-19.3213 19.3281 -32.6924 44.7373 -37.1592 72.9502l-12.0801 76.2705c-1.07715 6.79883 -1.55371 13.7725 -1.55371 20.8721c0 21.6162 5.18359 42.0303 14.373 60.0674l35.1006 68.8799
c12.6992 24.9297 32.8633 45.0967 57.79 57.8008l69.1201 35.21c24.8291 12.6494 53.0098 17.1201 80.5195 12.7598l76.7002 -12.1504c27.5303 -4.34961 52.9795 -17.3301 72.71 -37.0498l54.7598 -54.75c19.3213 -19.3281 32.6924 -44.7363 37.1602 -72.9502zM176 80
c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32s-32 -14.3301 -32 -32s14.3301 -32 32 -32zM208 240c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32s-32 -14.3301 -32 -32s14.3301 -32 32 -32zM368 112c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32
s-32 -14.3301 -32 -32s14.3301 -32 32 -32z" />
    <glyph glyph-name="cookie-bite" unicode="&#xf564;" 
d="M510.52 192.18c4.10059 -27.3301 -0.349609 -55.2695 -12.9092 -79.9102l-35.1006 -68.8799c-12.6992 -24.9316 -32.8623 -45.1025 -57.79 -57.8096l-69.1299 -35.21c-24.8301 -12.6504 -53.0195 -17.1201 -80.5303 -12.7598l-76.71 12.1494
c-28.123 4.45801 -53.4482 17.793 -72.71 37.0605l-54.7695 54.7598c-19.3223 19.332 -32.6934 44.7441 -37.1602 72.96l-12.0801 76.2695c-1.07617 6.7998 -1.55273 13.7734 -1.55273 20.874c0 21.6182 5.18262 42.0361 14.373 60.0762l35.0996 68.8799
c12.6963 24.9346 32.8613 45.1055 57.79 57.8105l69.1299 35.2197c24.5898 12.5205 52.46 16.96 79.7207 12.8203c0.859375 -69.96 57.6895 -126.45 127.859 -126.45c0 -70.1699 56.5 -127.01 126.47 -127.86zM176 80c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32
s-32 -14.3301 -32 -32s14.3301 -32 32 -32zM208 240c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32s-32 -14.3301 -32 -32s14.3301 -32 32 -32zM368 112c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32s-32 -14.3301 -32 -32s14.3301 -32 32 -32z" />
    <glyph glyph-name="crop-alt" unicode="&#xf565;" 
d="M488 96c13.25 0 24 -10.7402 24 -24v-48c0 -13.25 -10.75 -24 -24 -24h-40v-40c0 -13.25 -10.75 -24 -24 -24h-48c-13.25 0 -24 10.75 -24 24v328h-160v96h224c17.6699 0 32 -14.3301 32 -32v-256h40zM160 424v-328h160v-96h-224c-17.6699 0 -32 14.3301 -32 32v256h-40
c-13.25 0 -24 10.75 -24 24v48c0 13.2598 10.75 24 24 24h40v40c0 13.2598 10.75 24 24 24h48c13.25 0 24 -10.7402 24 -24z" />
    <glyph glyph-name="digital-tachograph" unicode="&#xf566;" horiz-adv-x="640" 
d="M608 352c17.6699 0 32 -14.3301 32 -32v-256c0 -17.6699 -14.3301 -32 -32 -32h-576c-17.6699 0 -32 14.3301 -32 32v256c0 17.6699 14.3301 32 32 32h576zM304 96v8c0 4.41992 -3.58008 8 -8 8h-224c-4.41992 0 -8 -3.58008 -8 -8v-8c0 -4.41992 3.58008 -8 8 -8h224
c4.41992 0 8 3.58008 8 8zM72 160c0 -4.41992 3.58008 -8 8 -8h16c4.41992 0 8 3.58008 8 8v16c0 4.41992 -3.58008 8 -8 8h-16c-4.41992 0 -8 -3.58008 -8 -8v-16zM136 160c0 -4.41992 3.58008 -8 8 -8h16c4.41992 0 8 3.58008 8 8v16c0 4.41992 -3.58008 8 -8 8h-16
c-4.41992 0 -8 -3.58008 -8 -8v-16zM200 160c0 -4.41992 3.58008 -8 8 -8h16c4.41992 0 8 3.58008 8 8v16c0 4.41992 -3.58008 8 -8 8h-16c-4.41992 0 -8 -3.58008 -8 -8v-16zM264 160c0 -4.41992 3.58008 -8 8 -8h16c4.41992 0 8 3.58008 8 8v16c0 4.41992 -3.58008 8 -8 8
h-16c-4.41992 0 -8 -3.58008 -8 -8v-16zM304 224v48c0 8.83984 -7.16016 16 -16 16h-208c-8.83984 0 -16 -7.16016 -16 -16v-48c0 -8.83984 7.16016 -16 16 -16h208c8.83984 0 16 7.16016 16 16zM576 96v8c0 4.41992 -3.58008 8 -8 8h-224c-4.41992 0 -8 -3.58008 -8 -8v-8
c0 -4.41992 3.58008 -8 8 -8h224c4.41992 0 8 3.58008 8 8z" />
    <glyph glyph-name="dizzy" unicode="&#xf567;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM152 233.4l28.7002 -28.7002c14.7002 -14.7998 37.7998 7.39941 22.5996 22.5996l-28.7002 28.7002l28.7002 28.7002c15 14.8994 -7.59961 37.5996 -22.5996 22.5996
l-28.7002 -28.7002l-28.7002 28.7002c-14.8994 15 -37.5996 -7.59961 -22.5996 -22.5996l28.7002 -28.7002l-28.7002 -28.7002c-15.2002 -15.0996 7.7998 -37.3994 22.5996 -22.5996zM248 32c35.2998 0 64 28.7002 64 64s-28.7002 64 -64 64s-64 -28.7002 -64 -64
s28.7002 -64 64 -64zM395.3 227.3l-28.7002 28.7002l28.7002 28.7002c15 14.8994 -7.59961 37.5996 -22.5996 22.5996l-28.7002 -28.7002l-28.7002 28.7002c-14.8994 15 -37.5996 -7.59961 -22.5996 -22.5996l28.7002 -28.7002l-28.7002 -28.7002
c-15.2002 -15.0996 7.7998 -37.3994 22.5996 -22.5996l28.7002 28.7002l28.7002 -28.7002c14.7002 -14.7998 37.7998 7.39941 22.5996 22.5996z" />
    <glyph glyph-name="drafting-compass" unicode="&#xf568;" 
d="M457.01 103.58l54.9805 -95.2305l-7.02051 -58.25c-1.2793 -10.5898 -12.3594 -16.9893 -22.1699 -12.7998l-53.9502 23.04l-54.3799 94.1904c29.9102 11.8701 57.4902 28.7197 82.54 49.0498zM499.5 198.14c-52.6201 -83.1299 -144.45 -134.14 -243.5 -134.14
c-35.3799 0 -69.8701 6.71973 -102.06 18.96l-70.8008 -122.63l-53.9492 -23.04c-9.81055 -4.19043 -20.8906 2.20996 -22.1709 12.7998l-7.01953 58.25l71.2803 123.46c-21.29 17.8105 -40.4102 38.3799 -55.9805 62.0205
c-4.99023 7.56934 -2.20996 17.9297 5.64062 22.4697l27.75 16.0703c7.40918 4.29004 16.5898 1.76953 21.3799 -5.33008c9.71973 -14.4102 21.1299 -27.3906 33.6797 -39l68.2998 118.31c-7.43945 13.6299 -12.0498 29.0303 -12.0498 45.6602c0 53.0195 42.9805 96 96 96
s96 -42.9805 96 -96c0 -16.6299 -4.61035 -32.0303 -12.0596 -45.6602l51.79 -89.71c-23.0508 -23.1699 -51.3809 -39.96 -82.6104 -48.9199l-51.0898 88.5c-0.69043 -0.0195312 -1.33984 -0.209961 -2.04004 -0.209961s-1.33984 0.19043 -2.04004 0.209961
l-67.3604 -116.68c22.1797 -7.28027 45.4805 -11.5303 69.4102 -11.5303c76.25 0 147.01 38.8496 188.12 102.38c4.64941 7.17969 13.7803 9.87012 21.2598 5.71973l28.0703 -15.5693c7.93945 -4.40039 10.9102 -14.7207 6.0498 -22.3906zM256 384
c-17.6699 0 -32 -14.3301 -32 -32s14.3301 -32 32 -32s32 14.3301 32 32s-14.3301 32 -32 32z" />
    <glyph glyph-name="drum" unicode="&#xf569;" 
d="M431.34 325.95c44.9004 -16.3398 80.6602 -42.7803 80.6602 -86.1006v-160.229c0 -30.2705 -27.5 -57.6797 -72 -77.8604v101.9c0 13.2461 -10.7539 24 -24 24s-24 -10.7539 -24 -24v-118.93c-33.0498 -9.11035 -71.0703 -15.0605 -112 -16.7305v103.61
c0 13.2461 -10.7539 24 -24 24s-24 -10.7539 -24 -24v-103.61c-40.9297 1.66992 -78.9502 7.62012 -112 16.7305v118.93c0 13.2461 -10.7539 24 -24 24s-24 -10.7539 -24 -24v-101.9c-44.5 20.1807 -72 47.5898 -72 77.8604v160.229c0 107.601 219.55 112.15 256 112.15
c15.2197 0 62.4297 -0.910156 112.19 -9.69043l110.06 71c2.53711 1.69238 5.59082 2.7041 8.86621 2.7041c5.55664 0 10.4551 -2.83887 13.3242 -7.14355l8.86914 -13.3105c1.69238 -2.53711 2.7041 -5.58984 2.7041 -8.86523
c0 -5.55664 -2.83887 -10.4561 -7.14355 -13.3242zM256 175.76c114.87 0 208 28.6904 208 64.0898c0 21.3105 -33.9102 40.1504 -85.8604 51.75l-118.64 -76.5195c-2.53711 -1.69141 -5.59082 -2.7041 -8.86621 -2.7041c-5.55664 0 -10.4551 2.83887 -13.3242 7.14355
l-8.86914 13.3105c-1.69434 2.53809 -2.70703 5.59277 -2.70703 8.87012c0 5.55371 2.83594 10.4502 7.13672 13.3193l72.8096 47c-15.9492 1.2002 -32.5293 1.91016 -49.6797 1.91016c-114.88 0 -208 -28.6797 -208 -64.0801c0 -35.3994 93.1201 -64.0898 208 -64.0898z
" />
    <glyph glyph-name="drum-steelpan" unicode="&#xf56a;" horiz-adv-x="576" 
d="M288 416c159.06 0 288 -57.3096 288 -128v-192c0 -70.6904 -128.94 -128 -288 -128s-288 57.3096 -288 128v192c0 70.6904 128.94 128 288 128zM205.01 257.64c5.11035 19.0605 2.49023 38.96 -7.37012 56.0508l-25.5996 44.3398
c-73.9297 -13.6406 -124.04 -39.8701 -124.04 -70.0303c0 -30.7803 52.2305 -57.46 128.7 -70.8398c13.7695 9.91016 23.8594 23.8701 28.3096 40.4795zM288 208c21.0801 0 41.4102 1 60.8896 2.7002c-8.05957 26.1299 -32.1494 45.2998 -60.8896 45.2998
s-52.8301 -19.1699 -60.8896 -45.2998c19.4795 -1.7002 39.8096 -2.7002 60.8896 -2.7002zM352 352v13.04c-20.4004 1.87988 -41.7998 2.95996 -64 2.95996s-43.5996 -1.08008 -64 -2.95996v-13.04c0 -35.29 28.71 -64 64 -64s64 28.71 64 64zM398.93 217.1
c76.6699 13.3604 129.07 40.0703 129.07 70.9004c0 30.21 -50.2803 56.5 -124.44 70.0996l-25.6494 -44.4199c-9.87012 -17.0801 -12.4902 -36.9795 -7.37988 -56.04c4.45996 -16.6396 14.5898 -30.6299 28.3994 -40.54z" />
    <glyph glyph-name="feather-alt" unicode="&#xf56b;" 
d="M512 448c-1.80957 -26.2598 -11.71 -132.86 -53.6201 -234.79l-106.54 -53.21h81.1406c-9.08008 -16.4102 -19.2002 -32.2305 -30.4502 -47.1201l-146.79 -48.8799h100.95c-35.5605 -30.0703 -79.1006 -51.0996 -132.58 -56.54
c-41.8105 -4.83008 -83.8701 -7.21973 -125.96 -7.36035l-57.1309 -57.0693c-9.38965 -9.37012 -24.5996 -9.37012 -33.9795 0s-9.37988 24.5693 0 33.9395l259.5 259.24c6.25 6.25 6.25 16.3799 0 22.6299s-16.4004 6.25 -22.6504 0l-178.87 -178.689
c1.15039 26.7998 2.90039 53.5801 5.99023 80.2393c25.4307 249.41 389.21 284.051 440.99 287.61z" />
    <glyph glyph-name="file-contract" unicode="&#xf56c;" horiz-adv-x="384" 
d="M224 312c0 -13.2002 10.7998 -24 24 -24h136v-328c0 -13.2998 -10.7002 -24 -24 -24h-336c-13.2998 0 -24 10.7002 -24 24v464c0 13.2998 10.7002 24 24 24h200v-136zM64 376v-16c0 -4.41992 3.58008 -8 8 -8h80c4.41992 0 8 3.58008 8 8v16c0 4.41992 -3.58008 8 -8 8
h-80c-4.41992 0 -8 -3.58008 -8 -8zM64 312v-16c0 -4.41992 3.58008 -8 8 -8h80c4.41992 0 8 3.58008 8 8v16c0 4.41992 -3.58008 8 -8 8h-80c-4.41992 0 -8 -3.58008 -8 -8zM256.81 64c-4.19922 0 -8.13965 2.44043 -10.1592 6.5
c-11.9502 23.8604 -46.2305 30.3496 -66 14.1602l-13.8809 41.6396c-3.28906 9.82031 -12.4297 16.4102 -22.7695 16.4102s-19.4805 -6.59961 -22.7803 -16.4102l-18.1895 -54.6396c-1.53027 -4.58008 -5.81055 -7.66016 -10.6406 -7.66016h-12.3896
c-8.83984 0 -16 -7.16016 -16 -16s7.16016 -16 16 -16h12.3896c18.6201 0 35.1104 11.8701 41 29.5303l10.6104 31.8799l16.8301 -50.46c2.03027 -6.14062 7.58008 -10.4404 14.0303 -10.8906c0.389648 -0.0292969 0.759766 -0.0498047 1.13965 -0.0498047
c0.00390625 0 -0.00292969 -0.015625 0.000976562 -0.015625c6.26074 0 11.6865 3.60742 14.3086 8.85547l7.6709 15.3408c2.7998 5.59961 7.93945 6.18945 10.0195 6.18945s7.21973 -0.599609 10.1699 -6.51953c7.37012 -14.7207 22.1904 -23.8604 38.6396 -23.8604
h47.1904c8.83984 0 16 7.16016 16 16s-7.16016 16 -16 16h-47.1904zM377 343c4.5 -4.5 7 -10.5996 7 -16.9004v-6.09961h-128v128h6.09961c6.40039 0 12.5 -2.5 17 -7z" />
    <glyph glyph-name="file-download" unicode="&#xf56d;" horiz-adv-x="384" 
d="M224 312c0 -13.2002 10.7998 -24 24 -24h136v-328c0 -13.2998 -10.7002 -24 -24 -24h-336c-13.2998 0 -24 10.7002 -24 24v464c0 13.2998 10.7002 24 24 24h200v-136zM300.45 100.64c10.1299 10.0703 3.00977 27.3604 -11.2705 27.3604h-65.1797v80
c0 8.83984 -7.16016 16 -16 16h-32c-8.83984 0 -16 -7.16016 -16 -16v-80h-65.1797c-14.2803 0 -21.4004 -17.29 -11.25 -27.3604l96.4199 -95.6992c6.64941 -6.61035 17.3896 -6.61035 24.04 0zM377 343c4.5 -4.5 7 -10.5996 7 -16.9004v-6.09961h-128v128h6.09961
c6.40039 0 12.5 -2.5 17 -7z" />
    <glyph glyph-name="file-export" unicode="&#xf56e;" horiz-adv-x="576" 
d="M384 326.1v-6.09961h-128v128h6.09961c6.40039 0 12.5 -2.5 17 -7l97.9004 -98c4.5 -4.5 7 -10.5996 7 -16.9004zM571 140c6.59961 -6.59961 6.59961 -17.4004 0 -24l-95.7002 -96.5c-10.0996 -10.0996 -27.3994 -3 -27.3994 11.2998v65.2002h-64v64h64v65.0996
c0 14.3008 17.2998 21.4004 27.3994 11.3008zM192 112c0 -8.7998 7.2002 -16 16 -16h176v-136c0 -13.2998 -10.7002 -24 -24 -24h-336c-13.2998 0 -24 10.7002 -24 24v464c0 13.2998 10.7002 24 24 24h200v-136c0 -13.2002 10.7998 -24 24 -24h136v-128h-176
c-8.7998 0 -16 -7.2002 -16 -16v-32z" />
    <glyph glyph-name="file-import" unicode="&#xf56f;" 
d="M16 160h112v-64h-112c-8.7998 0 -16 7.2002 -16 16v32c0 8.7998 7.2002 16 16 16zM505 343c4.5 -4.5 7 -10.5996 7 -16.9004v-6.09961h-128v128h6.09961c6.40039 0 12.5 -2.5 17 -7zM352 312c0 -13.2002 10.7998 -24 24 -24h136v-328c0 -13.2998 -10.7002 -24 -24 -24
h-336c-13.2998 0 -24 10.7002 -24 24v136h127.9v-65.0996c0 -14.3008 17.2998 -21.4004 27.3994 -11.3008l95.7002 96.4004c6.59961 6.59961 6.59961 17.2998 0 24l-95.5996 96.5c-10.1006 10.0996 -27.4004 3 -27.4004 -11.2998v-65.2002h-128v264
c0 13.2998 10.7002 24 24 24h200v-136z" />
    <glyph glyph-name="file-invoice" unicode="&#xf570;" horiz-adv-x="384" 
d="M288 192v-64h-192v64h192zM377 343c4.5 -4.5 7 -10.5996 7 -16.9004v-6.09961h-128v128h6.09961c6.40039 0 12.5 -2.5 17 -7zM224 312c0 -13.2002 10.7998 -24 24 -24h136v-328c0 -13.2998 -10.7002 -24 -24 -24h-336c-13.2998 0 -24 10.7002 -24 24v464
c0 13.2998 10.7002 24 24 24h200v-136zM64 376v-16c0 -4.41992 3.58008 -8 8 -8h80c4.41992 0 8 3.58008 8 8v16c0 4.41992 -3.58008 8 -8 8h-80c-4.41992 0 -8 -3.58008 -8 -8zM64 312v-16c0 -4.41992 3.58008 -8 8 -8h80c4.41992 0 8 3.58008 8 8v16
c0 4.41992 -3.58008 8 -8 8h-80c-4.41992 0 -8 -3.58008 -8 -8zM320 8v16c0 4.41992 -3.58008 8 -8 8h-80c-4.41992 0 -8 -3.58008 -8 -8v-16c0 -4.41992 3.58008 -8 8 -8h80c4.41992 0 8 3.58008 8 8zM320 208c0 8.83984 -7.16016 16 -16 16h-224
c-8.83984 0 -16 -7.16016 -16 -16v-96c0 -8.83984 7.16016 -16 16 -16h224c8.83984 0 16 7.16016 16 16v96z" />
    <glyph glyph-name="file-invoice-dollar" unicode="&#xf571;" horiz-adv-x="384" 
d="M377 343c4.5 -4.5 7 -10.5996 7 -16.9004v-6.09961h-128v128h6.09961c6.40039 0 12.5 -2.5 17 -7zM224 312c0 -13.2002 10.7998 -24 24 -24h136v-328c0 -13.2998 -10.7002 -24 -24 -24h-336c-13.2998 0 -24 10.7002 -24 24v464c0 13.2998 10.7002 24 24 24h200v-136z
M64 376v-16c0 -4.41992 3.58008 -8 8 -8h80c4.41992 0 8 3.58008 8 8v16c0 4.41992 -3.58008 8 -8 8h-80c-4.41992 0 -8 -3.58008 -8 -8zM64 296c0 -4.41992 3.58008 -8 8 -8h80c4.41992 0 8 3.58008 8 8v16c0 4.41992 -3.58008 8 -8 8h-80c-4.41992 0 -8 -3.58008 -8 -8
v-16zM208 32.1201c23.6201 0.629883 42.6699 20.54 42.6699 45.0703c0 19.9697 -12.9902 37.8096 -31.5801 43.3896l-45 13.5c-5.16016 1.54004 -8.76953 6.78027 -8.76953 12.7295c0 7.27051 5.2998 13.1904 11.7998 13.1904h28.1104
c4.55957 0 8.94922 -1.29004 12.8193 -3.71973c3.24023 -2.03027 7.36035 -1.91016 10.1299 0.729492l11.75 11.21c3.53027 3.37012 3.33008 9.20996 -0.569336 12.1406c-9.10059 6.83984 -20.0801 10.7695 -31.3701 11.3496v24.29c0 4.41992 -3.58008 8 -8 8h-16
c-4.41992 0 -8 -3.58008 -8 -8v-24.1201c-23.6201 -0.629883 -42.6699 -20.5498 -42.6699 -45.0703c0 -19.9697 12.9893 -37.8096 31.5801 -43.3896l45 -13.5c5.15918 -1.54004 8.76953 -6.78027 8.76953 -12.7295c0 -7.27051 -5.2998 -13.1904 -11.7998 -13.1904h-28.1104
c-4.55957 0 -8.9502 1.2998 -12.8193 3.71973c-3.24023 2.03027 -7.36035 1.91016 -10.1309 -0.729492l-11.75 -11.21c-3.5293 -3.37012 -3.3291 -9.20996 0.570312 -12.1406c9.10059 -6.83008 20.0801 -10.7695 31.3701 -11.3496v-24.29c0 -4.41992 3.58008 -8 8 -8h16
c4.41992 0 8 3.58008 8 8v24.1201z" />
    <glyph glyph-name="file-prescription" unicode="&#xf572;" horiz-adv-x="384" 
d="M224 312c0 -13.2002 10.7998 -24 24 -24h136v-328c0 -13.2998 -10.7002 -24 -24 -24h-336c-13.2998 0 -24 10.7002 -24 24v464c0 13.2998 10.7002 24 24 24h200v-136zM292.53 132.52c-6.25 6.25 -16.3799 6.25 -22.6299 0l-29.9004 -29.8994l-33.46 33.46
c19.8398 10.8701 33.46 31.7002 33.46 55.9199c0 35.3496 -28.6504 64 -64 64h-80c-8.83984 0 -16 -7.16016 -16 -16v-160c0 -8.83984 7.16016 -16 16 -16h16c8.83984 0 16 7.16016 16 16v48h18.7402l59.3193 -59.3096l-30.0596 -30.0605
c-6.25 -6.25 -6.25 -16.3799 0 -22.6299l11.3096 -11.3096c6.25 -6.25 16.3809 -6.25 22.6309 0l30.0596 30.0596l30.0596 -30.0703c6.25 -6.25 16.3809 -6.25 22.6309 0l11.3096 11.3105c6.25 6.25 6.25 16.3799 0 22.6299l-30.0596 30.0596l29.8994 29.9004
c6.25 6.25 6.25 16.3799 0 22.6299zM176 176h-48v32h48c8.82031 0 16 -7.17969 16 -16s-7.17969 -16 -16 -16zM384 326.1v-6.09961h-128v128h6.09961c6.40039 0 12.5 -2.5 17 -7l97.9004 -98c4.5 -4.5 7 -10.5996 7 -16.9004z" />
    <glyph glyph-name="file-signature" unicode="&#xf573;" horiz-adv-x="576" 
d="M218.17 23.8604c7.25 -14.4707 21.71 -23.4404 37.8301 -23.75l128 -0.110352v-40c0 -13.2998 -10.7002 -24 -24 -24h-336c-13.2998 0 -24 10.7002 -24 24v464c0 13.2998 10.7002 24 24 24h200v-136c0 -13.2002 10.7998 -24 24 -24h136.01v-46.5498l-128 -127.09
v-82.1201c-3.87012 0.30957 -7.46973 2.47949 -9.35938 6.25977c-11.9404 23.8604 -46.25 30.3496 -66 14.1602l-13.8809 41.6396c-3.28906 9.82031 -12.4297 16.4102 -22.7695 16.4102s-19.4805 -6.59961 -22.7803 -16.4102l-18.1895 -54.6396
c-1.53027 -4.58008 -5.81055 -7.66016 -10.6406 -7.66016h-12.3896c-8.83984 0 -16 -7.16016 -16 -16s7.16016 -16 16 -16h12.3896c18.6201 0 35.1104 11.8701 41 29.5303l10.6104 31.8799l16.8301 -50.4697c4.4502 -13.46 23.1104 -14.8701 29.4795 -2.09082
l7.6709 15.3408c2.7998 5.59961 7.93945 6.18945 10.0195 6.18945s7.21973 -0.599609 10.1699 -6.51953zM384 326.1v-6.09961h-128v128h6.09961c6.40039 0 12.5 -2.5 17 -7l97.9004 -98c4.5 -4.5 7 -10.5996 7 -16.9004zM288 101.04l162.79 161.62l67.8799 -67.8799
l-161.68 -162.78h-68.9902v69.04zM568.54 280.67c9.9502 -9.93945 9.9502 -26.0703 0 -36.0098l-27.25 -27.25l-67.8799 67.8799l27.25 27.25c9.93945 9.94043 26.0703 9.94043 36.0098 0z" />
    <glyph glyph-name="file-upload" unicode="&#xf574;" horiz-adv-x="384" 
d="M224 312c0 -13.2002 10.7998 -24 24 -24h136v-328c0 -13.2998 -10.7002 -24 -24 -24h-336c-13.2998 0 -24 10.7002 -24 24v464c0 13.2998 10.7002 24 24 24h200v-136zM289.18 95.9902c14.2803 0 21.4004 17.29 11.25 27.3594l-96.4199 95.7002
c-6.64941 6.61035 -17.3896 6.61035 -24.04 0l-96.4199 -95.7002c-10.1396 -10.0693 -3.00977 -27.3594 11.2705 -27.3594h65.1797v-80c0 -8.83984 7.16016 -16 16 -16h32c8.83984 0 16 7.16016 16 16v80h65.1797zM377 343c4.5 -4.5 7 -10.5996 7 -16.9004v-6.09961h-128
v128h6.09961c6.40039 0 12.5 -2.5 17 -7z" />
    <glyph glyph-name="fill" unicode="&#xf575;" 
d="M502.63 230.94c12.4902 -12.5 12.4902 -32.7607 0 -45.2607l-221.57 -221.569c-18.75 -18.75 -43.3096 -28.1201 -67.8799 -28.1201c-24.5596 0 -49.1201 9.37988 -67.8701 28.1201l-117.189 117.189c-37.4902 37.4902 -37.4902 98.2598 0 135.75l94.7598 94.7598
l-86.1895 86.1807c-6.24023 6.25 -6.24023 16.3799 0 22.6299l22.6191 22.6104c6.24023 6.25 16.3809 6.25 22.6201 0l86.1807 -86.1807l81.5801 81.5801c6.23926 6.25 14.4297 9.37012 22.6191 9.37012c8.19043 0 16.3809 -3.12012 22.6309 -9.37012zM386.41 159.97
l48.3496 48.3398l-162.45 162.44l-58.9492 -58.9502l58.6094 -58.5996c12.4902 -12.4902 12.4902 -32.75 0 -45.2402c-12.4893 -12.4902 -32.75 -12.4902 -45.2393 0l-58.6104 58.5996l-81.6104 -81.6094l-13.1494 -13.1504
c-3.86035 -3.84961 -6.07031 -7.99023 -7.43066 -11.8301h320.48z" />
    <glyph glyph-name="fill-drip" unicode="&#xf576;" horiz-adv-x="576" 
d="M512 128c0 0 64 -92.6504 64 -128s-28.6602 -64 -64 -64s-64 28.6504 -64 64s64 128 64 128zM502.63 230.94c12.4902 -12.5 12.4902 -32.75 -0.00976562 -45.25l-221.57 -221.57c-18.7402 -18.75 -43.2998 -28.1201 -67.8701 -28.1201
c-24.5596 0 -49.1299 9.37988 -67.8701 28.1201l-117.189 117.189c-37.4902 37.4902 -37.4902 98.2705 0 135.75l94.7598 94.7607l-86.1895 86.1797c-6.24023 6.24023 -6.24023 16.3701 0 22.6201l22.6191 22.6201c6.24023 6.25 16.3701 6.25 22.6201 0l86.1807 -86.1904
l81.5801 81.5801c6.23926 6.25 14.4297 9.37012 22.6191 9.37012c8.19043 0 16.3809 -3.12012 22.6309 -9.37012zM386.41 159.97l48.3398 48.3398l-162.44 162.44l-58.9492 -58.9502l58.5996 -58.5996c12.4902 -12.4902 12.4902 -32.75 0 -45.2402
s-32.75 -12.4902 -45.2402 0l-58.5996 58.5996l-81.6104 -81.6094l-13.1494 -13.1504c-3.86035 -3.84961 -6.07031 -7.99023 -7.43066 -11.8301h320.48z" />
    <glyph glyph-name="fingerprint" unicode="&#xf577;" 
d="M256.12 202.04c13.2598 0 24 -10.75 23.9902 -24c1.55957 -99.1104 -15.9502 -176.61 -29.4805 -224.521c-2.97949 -10.5996 -12.6104 -17.5195 -23.0898 -17.5195c-20.9697 0 -25.8496 20.7695 -23.1201 30.4902c19.5605 69.6494 28.8398 139.3 27.7002 211.55
c0 13.2598 10.75 24 24 24zM255.26 283.77c56.9707 -0.839844 104.03 -46.9199 104.91 -102.72c0.790039 -50.8994 -2.99023 -102.08 -11.2695 -152.109c-0.770508 -4.6709 -7.61035 -23.1006 -27.5801 -19.7705c-13.0703 2.16016 -21.9307 14.5205 -19.7607 27.5801
c7.80078 47.2197 11.3809 95.5 10.6104 143.55c-0.469727 30.1299 -26.3096 55 -57.6201 55.4697c-34.5303 0.150391 -54.8594 -26.3896 -54.4502 -52.3398c0.800781 -51.4395 -4.0293 -102.93 -14.3691 -153.02c-2.69043 -12.9805 -15.3105 -21.3105 -28.3604 -18.6406
c-12.9697 2.6709 -21.3301 15.3809 -18.6396 28.3604c9.61914 46.6396 14.1191 94.6104 13.3691 142.55c-0.849609 54.0205 41.9004 101.16 103.16 101.09zM144.57 303.55c10.2793 -8.37012 11.8398 -23.4795 3.48926 -33.7598
c-18.7998 -23.0898 -28.4697 -51.0898 -28 -80.9697c0.640625 -40.6699 -2.66992 -81.4902 -9.85938 -121.33c-0.820312 -4.5498 -7.78027 -22.8604 -27.8906 -19.3604c-13.0498 2.36035 -21.6992 14.8398 -19.3594 27.8896c6.63965 36.7803 9.7002 74.4707 9.10938 112.051
c-0.639648 40.7197 13.1309 80.5 38.75 112c8.39062 10.2793 23.46 11.8193 33.7607 3.47949zM254.04 365.88c101.09 -1.5 184.6 -83.0801 186.16 -181.83c0.0751953 -4.88281 0.147461 -8.55371 0.147461 -13.4551c0 -35.9766 -2.0498 -71.4785 -6.03809 -106.395
c-1.06934 -9.23047 -9.85938 -23.0605 -26.5791 -21.1104c-13.1602 1.5 -22.6104 13.4102 -21.1104 26.5801c4.2998 37.5205 6.16992 75.75 5.58008 113.63c-1.15039 73.0801 -63.4502 133.45 -138.88 134.58c-11.5303 0.0800781 -22.9502 -1.08008 -34 -3.68945
c-12.8906 -3 -25.8301 4.93945 -28.8906 17.8291c-3.04004 12.9102 4.94043 25.8301 17.8301 28.8906c14.9102 3.53027 30.3701 5.37988 45.7803 4.96973zM506.11 244.43c6.22949 -28.2295 6.00977 -50.1602 5.83008 -72.3398
c-0.110352 -13.1895 -10.8301 -23.7998 -24 -23.7998h-0.200195c-13.25 0.110352 -23.9102 10.9297 -23.7998 24.2002c0.209961 24.1895 0.00976562 40.1895 -4.7002 61.5996c-2.86035 12.9502 5.31934 25.75 18.2598 28.6104
c13.0996 2.92969 25.75 -5.35059 28.6104 -18.2705zM465.99 335.15c7.62012 -10.8408 5 -25.8105 -5.83984 -33.4307c-10.8604 -7.58984 -25.8105 -5 -33.4199 5.86035c-39.8906 56.8301 -105.171 91.3604 -174.62 92.3896
c-56.3408 0.810547 -108.92 -20.0596 -147.681 -58.8594c-37.1201 -37.1406 -57.1094 -86.5 -56.2793 -139l-0.160156 -23.6406c-0.379883 -13 -11.0498 -23.2998 -23.9707 -23.2998c-0.239258 0 -0.489258 0 -0.719727 0.0205078
c-13.25 0.379883 -23.6699 11.4395 -23.2803 24.6895l0.120117 21.4697c-1.04004 65.6104 23.9502 127.28 70.3203 173.71c48.0098 48.0303 112.56 73.7607 182.35 72.9209c84.79 -1.27051 164.48 -43.4404 213.181 -112.83z" />
    <glyph glyph-name="fish" unicode="&#xf578;" horiz-adv-x="576" 
d="M327.1 352c137.46 0 248.9 -128 248.9 -160s-111.44 -160 -248.9 -160c-89.9697 0 -168.55 54.7695 -212.279 101.62l-87.3301 -66.0498c-12.1299 -9.16992 -30.2402 0.599609 -27.1406 14.6602l24.1904 109.77l-24.1797 109.76
c-3.10059 14.0605 15.0098 23.8398 27.1396 14.6602l87.3301 -66.0498c43.7295 46.8604 122.3 101.63 212.27 101.63zM414.53 168c13.25 0 24 10.75 24 24c0 13.2598 -10.7402 24 -24 24c-13.25 0 -24 -10.7402 -24 -24c0 -13.25 10.75 -24 24 -24z" />
    <glyph glyph-name="flushed" unicode="&#xf579;" horiz-adv-x="496" 
d="M344 248c13.2998 0 24 -10.7002 24 -24s-10.7002 -24 -24 -24s-24 10.7002 -24 24s10.7002 24 24 24zM152 248c13.2998 0 24 -10.7002 24 -24s-10.7002 -24 -24 -24s-24 10.7002 -24 24s10.7002 24 24 24zM248 440c137 0 248 -111 248 -248s-111 -248 -248 -248
s-248 111 -248 248s111 248 248 248zM80 224c0 -39.7998 32.2002 -72 72 -72s72 32.2002 72 72s-32.2002 72 -72 72s-72 -32.2002 -72 -72zM312 48c21.2002 0 21.2002 32 0 32h-128c-21.2002 0 -21.2002 -32 0 -32h128zM344 152c39.7998 0 72 32.2002 72 72
s-32.2002 72 -72 72s-72 -32.2002 -72 -72s32.2002 -72 72 -72z" />
    <glyph glyph-name="frown-open" unicode="&#xf57a;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM136 240c0 -17.7002 14.2998 -32 32 -32s32 14.2998 32 32s-14.2998 32 -32 32s-32 -14.2998 -32 -32zM323.3 56.7002c11.4004 -3.5 22.5 6.2002 20.5 18.0996
c-7 39.9004 -60.0996 61.2002 -95.7998 61.2002s-88.7998 -21.2002 -95.7998 -61.2002c-2 -11.7998 9 -21.5996 20.5 -18.0996c31.2002 9.59961 59.3994 15.2998 75.2998 15.2998s44.0996 -5.7002 75.2998 -15.2998zM328 208c17.7002 0 32 14.2998 32 32s-14.2998 32 -32 32
s-32 -14.2998 -32 -32s14.2998 -32 32 -32z" />
    <glyph glyph-name="glass-martini-alt" unicode="&#xf57b;" 
d="M502.05 390.4l-214.05 -214.04v-192.36h56c22.0898 0 40 -17.9102 40 -40c0 -4.41992 -3.58008 -8 -8 -8h-240c-4.41992 0 -8 3.58008 -8 8c0 22.0898 17.9102 40 40 40h56v192.36l-214.05 214.04c-21.25 21.2598 -6.2002 57.5996 23.8496 57.5996h444.4
c30.0498 0 45.0996 -36.3398 23.8496 -57.5996zM443.77 400h-375.529l48 -48h279.529z" />
    <glyph glyph-name="globe-africa" unicode="&#xf57c;" horiz-adv-x="496" 
d="M248 440c136.97 0 248 -111.03 248 -248s-111.03 -248 -248 -248s-248 111.03 -248 248s111.03 248 248 248zM408 224.5c0 8.55957 6.94043 15.5 15.5 15.5h18.4297c-19.0693 76.9805 -82.6992 136.37 -161.92 149.21v-21.7002c0 -8.55957 -6.93945 -15.5 -15.5 -15.5
h-24.21c-5.17969 0 -10.0195 -2.58984 -12.8896 -6.89941l-8.08008 -12.1104c-2.13965 -3.20996 -5.40039 -5.5 -9.13965 -6.44043l-14.4502 -3.60938c-6.90039 -1.73047 -11.7402 -7.93066 -11.7402 -15.04v-4.40039c0 -8.55957 6.94043 -15.5 15.5 -15.5h90.0498
l0.00488281 0.00195312c4.27637 0 8.15039 -1.73633 10.9551 -4.54199l6.91992 -6.91992c2.91016 -2.91016 6.85059 -4.54004 10.96 -4.54004h10.0908c8.55957 0 15.5 -6.93945 15.5 -15.5c0 -6.66992 -4.27051 -12.5898 -10.6006 -14.7002l-47.3096 -15.7695
c-3.90039 -1.2998 -8.15039 -1 -11.8301 0.839844l-14.7207 7.36035c-7.5791 3.7998 -15.9492 5.76953 -24.4297 5.76953h-0.889648c-12.2734 -0.00292969 -23.6533 -4.08594 -32.7803 -10.9297l-27.5801 -20.6904c-13.75 -10.3193 -21.8496 -26.5098 -21.8496 -43.6992
v-14.0605c0.00292969 -15.0742 6.11328 -28.7393 16 -38.6299c10.25 -10.2402 24.1396 -16 38.6299 -16h25.8799c8.55957 0 15.5 -6.94043 15.5 -15.5v-29.8896c0 -12.6504 3.0293 -24.6885 8.33008 -35.29c4.7002 -9.40039 14.3096 -15.3398 24.8203 -15.3398
c9.63477 0.000976562 18.1133 4.89551 23.0898 12.3594l13.0293 19.5498c7.18359 10.7715 15.4854 20.4473 25 29.1602c2.4707 2.27051 4.14062 5.27051 4.76074 8.56055l4.2998 22.8301c0.439453 2.3291 1.41016 4.5293 2.83008 6.42969l18.7402 24.9795
c2.00977 2.68066 3.09961 5.9502 3.09961 9.30078v11.3398c0 8.55957 -6.94043 15.5 -15.5 15.5h-8.20996c-5.17969 0 -10.0205 2.58984 -12.8896 6.89941l-13.2402 19.8604c-5.66992 8.50977 -1.70996 20.0703 7.99023 23.2998l2.64941 0.879883
c1.53906 0.511719 3.20312 0.78418 4.91309 0.78418c3.17383 0 6.12695 -0.955078 8.58691 -2.59375l18.21 -12.1396c2.45801 -1.6416 5.44043 -2.59863 8.61523 -2.59863c2.48438 0 4.83301 0.585938 6.91504 1.62793l15.3896 7.7002
c5.25 2.62012 8.57031 7.99023 8.57031 13.8604v6.92969z" />
    <glyph glyph-name="globe-americas" unicode="&#xf57d;" horiz-adv-x="496" 
d="M248 440c136.97 0 248 -111.03 248 -248s-111.03 -248 -248 -248s-248 111.03 -248 248s111.03 248 248 248zM330.29 82.4004c8.47363 8.42676 13.7158 20.0977 13.7197 32.9795l0.00488281 0.00976562c0 8.41504 -3.41602 16.0391 -8.93457 21.5605l-13.6904 13.6895
c-6.00977 6 -14.1396 9.37012 -22.6299 9.37012h-66.75c-9.41016 4.70996 -21.4795 32 -32 32c-10.5195 0 -20.8994 2.4502 -30.3096 7.16016l-11.0801 5.54004c-4.0498 2.03027 -6.61035 6.16016 -6.61035 10.6904h-0.00195312c0 5.27539 3.42578 9.75684 8.17188 11.3398
l31.1699 10.3896c1.58887 0.52832 3.29785 0.81543 5.0625 0.81543c4.00977 0 7.67676 -1.47656 10.4883 -3.91504l9.2793 -8.06055c1.4502 -1.25977 3.31055 -1.95996 5.24023 -1.95996h5.63965c5.94043 0 9.81055 6.25977 7.15039 11.5801l-15.5898 31.1904
c-0.535156 1.07324 -0.842773 2.29297 -0.842773 3.57324c0 2.24805 0.928711 4.28125 2.42285 5.73633l9.91992 9.65039c1.5 1.45996 3.5 2.26953 5.58008 2.26953h8.99023l0.00390625 -0.000976562c2.20703 0 4.20703 0.894531 5.65527 2.34082l8 8
c3.12012 3.12012 3.12012 8.19043 0 11.3105l-4.68945 4.68945c-3.12012 3.12012 -3.12012 8.19043 0 11.3105l10.3398 10.3398l4.69043 4.67969c6.25 6.25 6.25 16.3799 0 22.6299l-28.3008 28.3008c-8.26953 -0.310547 -16.3994 -1.12988 -24.3896 -2.41992v-11.3008
c0 -11.8994 -12.5195 -19.6299 -23.1602 -14.3096l-24.0098 12.0098c-45.8398 -19.8496 -82.7305 -56.3896 -103.2 -101.89c9.92969 -14.7197 25.21 -37.3701 34.5898 -51.1406c5.20605 -7.66895 11.2012 -14.5479 18.0605 -20.7393l0.799805 -0.720703
c9.5498 -8.60938 20.1699 -15.9697 31.6504 -21.75c14 -7.0498 34.4395 -18.1592 48.8096 -26.1094c10.1904 -5.62988 16.46 -16.3301 16.46 -27.9707v-32.0098c0 -8.49023 3.37012 -16.6299 9.37012 -22.6299c14.9902 -14.9902 24.3203 -38.6299 22.6299 -51.25v-27.3799
c14.6504 0 28.8896 1.69043 42.6504 4.69043l17.3896 46.8496c2.04004 5.49023 3.25977 11.21 4.76953 16.8701c1.07031 4.00977 3.18066 7.70996 6.1709 10.71c3.31934 3.33008 7.40918 7.39941 11.3096 11.2803zM417 173.75l29.1797 -7.29004
c1.08008 8.37988 1.82031 16.8701 1.82031 25.54c0 32.1299 -7.7998 62.4102 -21.3203 89.3301l-12.9795 -6.49023c-3.74023 -1.85938 -6.91992 -4.67969 -9.24023 -8.14941l-19.5898 -29.3809c-2.54004 -3.80371 -4.02051 -8.4209 -4.02051 -13.334
c0 -4.91211 1.48047 -9.48145 4.02051 -13.2852l17.9795 -26.9707c3.31055 -4.96973 8.36035 -8.51953 14.1504 -9.96973z" />
    <glyph glyph-name="globe-asia" unicode="&#xf57e;" horiz-adv-x="496" 
d="M248 440c136.97 0 248 -111.03 248 -248s-111.03 -248 -248 -248s-248 111.03 -248 248s111.03 248 248 248zM236.66 199.77l17.3701 28.9502c1.7998 2.99023 6.2002 2.82031 7.75977 -0.299805c1.34961 -2.70996 4.12012 -4.41992 7.15039 -4.41992h3.05957
c4.41992 0 8 3.58008 8 8v78.1201c0 6.05957 -3.41992 11.5996 -8.83984 14.3096l-10.8301 5.41016c-5.49023 2.75 -5.96973 10.4004 -0.860352 13.8105l50.1602 38.5293c-19.4297 6.31055 -40.1201 9.82031 -61.6299 9.82031c-110.28 0 -200 -89.7197 -200 -200
c0 -10.9199 1.12012 -21.5498 2.80957 -31.9902h62.5703c4.24023 0 8.31055 1.69043 11.3105 4.69043l19.4697 19.46c3.85938 3.85938 10.3701 2.7998 12.8096 -2.08008l22.6201 -45.2305c2.70996 -5.42969 8.25 -8.84961 14.3105 -8.84961h6.10938
c8.83984 0 16 7.16016 16 16v9.37012c0 4.24023 -1.68945 8.30957 -4.68945 11.3096l-5.66016 5.66016c-3.12012 3.12012 -3.12012 8.19043 0 11.3105l5.66016 5.65918c3 3 7.06934 4.69043 11.3096 4.69043h0.310547c5.61914 0 10.8291 2.9502 13.7197 7.76953z
M408 89.5703l-0.00976562 24.5996c0 4.24023 -1.69043 8.31055 -4.69043 11.3105l-11.9102 11.9092c-1.5 1.5 -2.33984 3.54004 -2.33984 5.66016v12.9307c0 2.20996 -1.79004 4 -4 4h-6.05957c-1.78027 0 -3.33984 -1.1709 -3.83984 -2.88086l-4.2002 -14.4697
c-0.490234 -1.7002 -2.06055 -2.87988 -3.83984 -2.87988h-3.80078c-1.66211 0.000976562 -3.08691 1.01465 -3.68945 2.45996l-5.35059 12.8496c-1.23926 2.99023 -4.15918 4.93066 -7.38965 4.93066h-12.0898
c-0.00390625 0 -0.0146484 -0.00488281 -0.0185547 -0.00488281c-1.72168 0 -3.31738 -0.545898 -4.62109 -1.47559l-23.71 -16.8896c-1.73047 -1.23047 -3.61035 -2.25977 -5.59082 -3.0498l-39.3398 -15.7402c-3.04004 -1.21973 -5.0293 -4.16016 -5.0293 -7.42969
v-10.2002l-0.00195312 -0.00390625c0 -2.20703 0.895508 -4.20703 2.3418 -5.65625l11.9102 -11.9102c3 -3 7.06934 -4.68945 11.3096 -4.68945h10.3398c1.31055 0 2.61035 0.15918 3.87988 0.479492l21.2705 5.32031c2.08203 0.520508 4.25391 0.802734 6.49707 0.802734
c7.38574 0 14.0771 -2.99805 18.9229 -7.84277l13.0098 -13.0098c3 -3 7.07031 -4.69043 11.3096 -4.69043h15.1602c4.24023 0 8.31055 1.69043 11.3105 4.69043l9.56934 9.56934c3 3 4.69043 7.07031 4.69043 11.3105z" />
    <glyph glyph-name="grimace" unicode="&#xf57f;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM144 48v40h-40v-8c0 -17.7002 14.2998 -32 32 -32h8zM144 104v40h-8c-17.7002 0 -32 -14.2998 -32 -32v-8h40zM136 240c0 -17.7002 14.2998 -32 32 -32s32 14.2998 32 32
s-14.2998 32 -32 32s-32 -14.2998 -32 -32zM208 48v40h-48v-40h48zM208 104v40h-48v-40h48zM272 48v40h-48v-40h48zM272 104v40h-48v-40h48zM336 48v40h-48v-40h48zM336 104v40h-48v-40h48zM328 208c17.7002 0 32 14.2998 32 32s-14.2998 32 -32 32s-32 -14.2998 -32 -32
s14.2998 -32 32 -32zM392 80v8h-40v-40h8c17.7002 0 32 14.2998 32 32zM392 104v8c0 17.7002 -14.2998 32 -32 32h-8v-40h40z" />
    <glyph glyph-name="grin" unicode="&#xf580;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM328 272c-17.7002 0 -32 -14.2998 -32 -32s14.2998 -32 32 -32s32 14.2998 32 32s-14.2998 32 -32 32zM168 272c-17.7002 0 -32 -14.2998 -32 -32s14.2998 -32 32 -32
s32 14.2998 32 32s-14.2998 32 -32 32zM248 16c60.5996 0 134.5 38.2998 143.8 93.2998c1.90039 11.7998 -9.39941 21.6006 -20.7002 17.9004c-30.1992 -9.7002 -75.0996 -15.2002 -123.1 -15.2002s-92.9004 5.5 -123.1 15.2002
c-11.4004 3.7002 -22.7002 -6.10059 -20.7002 -17.9004c9.2998 -55 83.2002 -93.2998 143.8 -93.2998z" />
    <glyph glyph-name="grin-alt" unicode="&#xf581;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM311.7 311.3c-12.4004 -18.3994 -15.2002 -36.8994 -15.7002 -55.2998c0.599609 -18.4004 3.2998 -36.9004 15.7002 -55.2998c8 -11.7002 25.0996 -11.4004 32.7002 0
c12.3994 18.3994 15.1992 36.8994 15.6992 55.2998c-0.599609 18.4004 -3.2998 36.9004 -15.6992 55.2998c-8 11.7002 -25.1006 11.4004 -32.7002 0zM151.7 311.3c-12.4004 -18.3994 -15.2002 -36.8994 -15.7002 -55.2998
c0.599609 -18.4004 3.2998 -36.9004 15.7002 -55.2998c8 -11.7002 25.0996 -11.4004 32.7002 0c12.3994 18.3994 15.1992 36.8994 15.6992 55.2998c-0.599609 18.4004 -3.2998 36.9004 -15.6992 55.2998c-8 11.7002 -25.1006 11.4004 -32.7002 0zM248 16
c60.5996 0 134.5 38.2998 143.8 93.2998c1.90039 11.7998 -9.2998 21.6006 -20.7002 17.9004c-30.1992 -9.7002 -75.0996 -15.2002 -123.1 -15.2002s-92.9004 5.5 -123.1 15.2002c-11.4004 3.7002 -22.7002 -6.10059 -20.7002 -17.9004
c9.2998 -55 83.2002 -93.2998 143.8 -93.2998z" />
    <glyph glyph-name="grin-beam" unicode="&#xf582;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM328 296c-23.7998 0 -52.7002 -29.2998 -55.7998 -71.4004c-0.700195 -8.5 10.7998 -11.7998 14.8994 -4.5l9.5 17c7.7002 13.7002 19.2002 21.6006 31.5 21.6006
c12.3008 0 23.8008 -7.90039 31.5 -21.6006l9.5 -17c4.10059 -7.39941 15.6006 -4.09961 14.9004 4.5c-3.2998 42.1006 -32.2002 71.4004 -56 71.4004zM168 296c-23.7998 0 -52.7002 -29.2998 -55.7998 -71.4004c-0.700195 -8.5 10.7002 -11.8994 14.8994 -4.5l9.5 17
c7.7002 13.7002 19.2002 21.6006 31.5 21.6006c12.3008 0 23.8008 -7.90039 31.5 -21.6006l9.5 -17c4.10059 -7.39941 15.6006 -4.09961 14.9004 4.5c-3.2998 42.1006 -32.2002 71.4004 -56 71.4004zM248 16c60.5996 0 134.5 38.2998 143.8 93.2998
c1.90039 11.7998 -9.2998 21.6006 -20.7002 17.9004c-30.1992 -9.7002 -75.0996 -15.2002 -123.1 -15.2002s-92.9004 5.5 -123.1 15.2002c-11.3008 3.7002 -22.7002 -6 -20.7002 -17.9004c9.2998 -55 83.2002 -93.2998 143.8 -93.2998z" />
    <glyph glyph-name="grin-beam-sweat" unicode="&#xf583;" horiz-adv-x="504" 
d="M456 320c-26.5 0 -48 21 -48 47c0 20 28.5 60.4004 41.5996 77.7998c3.2002 4.2998 9.60059 4.2998 12.8008 0c13.0996 -17.3994 41.5996 -57.7998 41.5996 -77.7998c0 -26 -21.5 -47 -48 -47zM456 288c6.7998 0 13.2002 1.09961 19.5 2.59961
c13.0996 -30.1992 20.5 -63.5 20.5 -98.5996c0 -137 -111 -248 -248 -248s-248 111 -248 248s111 248 248 248c50.2998 0 97 -15.0996 136.1 -40.7998c-7.7998 -18 -8.09961 -27.7998 -8.09961 -32.2002c0 -43.5996 35.9004 -79 80 -79zM328 296
c-23.7998 0 -52.7002 -29.2998 -55.7998 -71.4004c-0.700195 -8.5 10.7998 -11.8994 14.8994 -4.5l9.5 17c7.7002 13.7002 19.2002 21.6006 31.5 21.6006c12.3008 0 23.8008 -7.90039 31.5 -21.6006l9.5 -17c4.10059 -7.5 15.6006 -4.09961 14.9004 4.5
c-3.2998 42.1006 -32.2002 71.4004 -56 71.4004zM168 296c-23.7998 0 -52.7002 -29.2998 -55.7998 -71.4004c-0.700195 -8.5 10.7002 -11.8994 14.8994 -4.5l9.5 17c7.7002 13.7002 19.2002 21.6006 31.5 21.6006c12.3008 0 23.8008 -7.90039 31.5 -21.6006l9.5 -17
c4.10059 -7.5 15.6006 -4.09961 14.9004 4.5c-3.2998 42.1006 -32.2002 71.4004 -56 71.4004zM248 16c60.5996 0 134.5 38.2998 143.8 93.2998c1.90039 11.7002 -9.2002 21.6006 -20.7002 17.9004c-30.1992 -9.7002 -75.0996 -15.2002 -123.1 -15.2002
s-92.9004 5.5 -123.1 15.2002c-11.4004 3.7002 -22.7002 -6.10059 -20.7002 -17.9004c9.2998 -55 83.2002 -93.2998 143.8 -93.2998z" />
    <glyph glyph-name="grin-hearts" unicode="&#xf584;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM90.4004 264.4c-7.7002 -20.2002 3.7998 -41.8008 24.1992 -47.2002l70.2002 -18.2002c4.60059 -1.2002 9.2998 1.5 10.5 6l19.4004 69.9004
c5.59961 20.2998 -7.40039 41.0996 -28.7998 44.5c-18.7002 3 -36.5 -9.80078 -41.5 -27.9004l-2 -7.09961l-7.10059 1.89941c-18.2002 4.7998 -38.2002 -4.2998 -44.8994 -21.8994zM248 16c60.5996 0 134.5 38.2998 143.8 93.2998
c1.90039 11.7998 -9.2998 21.5 -20.7002 17.9004c-30.1992 -9.7002 -75.0996 -15.2002 -123.1 -15.2002s-92.9004 5.5 -123.1 15.2002c-11.5 3.59961 -22.7002 -6.10059 -20.7002 -17.9004c9.2998 -55 83.2002 -93.2998 143.8 -93.2998zM381.4 217.3
c20.3994 5.2998 31.8994 26.9004 24.1992 47.2002c-6.69922 17.5996 -26.6992 26.5996 -44.8994 21.9004l-7.10059 -1.90039l-2 7.09961c-5.09961 18.1006 -22.8994 30.9004 -41.5 27.9004c-21.3994 -3.40039 -34.3994 -24.2002 -28.7998 -44.5l19.4004 -69.9004
c1.2998 -4.5 6 -7.19922 10.5 -6z" />
    <glyph glyph-name="grin-squint" unicode="&#xf585;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM281.8 250.3c-7.7002 -4.7002 -7.7002 -15.8994 0 -20.5996l80 -48c11.5 -6.7998 24.1006 7.59961 15.4004 18l-33.6006 40.2998l33.6006 40.2998
c8.59961 10.2998 -3.7998 24.9004 -15.4004 18zM118.8 280.3l33.6006 -40.2998l-33.6006 -40.2998c-8.59961 -10.4004 3.90039 -24.7998 15.4004 -18l80 48c7.7998 4.7002 7.7998 15.8994 0 20.5996l-80 48c-11.6006 6.90039 -24 -7.7002 -15.4004 -18zM248 16
c60.5996 0 134.5 38.2998 143.8 93.2998c1.90039 11.7002 -9.2002 21.6006 -20.7002 17.9004c-30.1992 -9.7002 -75.0996 -15.2002 -123.1 -15.2002s-92.9004 5.5 -123.1 15.2002c-11.3008 3.7002 -22.7002 -6 -20.7002 -17.9004
c9.2998 -55 83.2002 -93.2998 143.8 -93.2998z" />
    <glyph glyph-name="grin-squint-tears" unicode="&#xf586;" 
d="M409.6 336.1c-5.59961 -0.799805 -10.2998 3.90039 -9.5 9.40039c3.30078 22.5996 12 73.5 26.8008 88.2998c19.0996 19.2002 50.6992 18.9004 70.2998 -0.700195c19.5996 -19.5996 19.8994 -51 0.700195 -70.1992
c-14.8008 -14.8008 -65.7002 -23.6006 -88.3008 -26.8008zM102.4 47.9004c5.59961 0.799805 10.2998 -3.90039 9.5 -9.40039c-3.30078 -22.5996 -12 -73.5 -26.8008 -88.2998c-19.1992 -19.2002 -50.5996 -18.9004 -70.1992 0.700195
c-19.6006 19.5996 -19.9004 51.0996 -0.800781 70.1992c14.8008 14.8008 65.7002 23.6006 88.3008 26.8008zM414.1 304.4c24 3.5 42.1006 7.39941 56.5 11.5c54.8008 -94.9004 42 -218.2 -39.1992 -299.301c-81.2002 -81.0996 -204.5 -94 -299.301 -39.1992
c4.10059 14.3994 8.10059 32.5 11.5 56.5c2.90039 20.5 -12.5 49.5996 -45.6992 45.6992c-24.1006 -3.5 -42.1006 -7.39941 -56.5 -11.5c-54.8008 94.9004 -41.9004 218.2 39.1992 299.301c81.2002 81.0996 204.5 94 299.301 39.1992
c-4.10059 -14.3994 -8.10059 -32.5 -11.5 -56.5c-2.90039 -20.5996 12.6992 -49.5996 45.6992 -45.6992zM255.7 342l-22.5 -90.5996c-2.2002 -8.60059 5.59961 -16.7002 14.5 -14.5l90.5 22.5996c13.0996 3.2998 11.5996 22.4004 -1.7998 23.5996l-52.3008 4.80078
l-4.7998 52.2998c-1.2002 13.2998 -20.2998 15 -23.5996 1.7998zM164.8 111.7c1.2998 -13.4004 20.4004 -14.9004 23.5 -1.7002l22.6006 90.5c2.19922 8.7002 -5.7002 16.7002 -14.5 14.5l-90.5 -22.5996c-13.1006 -3.30078 -11.6006 -22.4004 1.7998 -23.6006
l52.2998 -4.7998zM380.5 67.5c42.7998 42.9004 68 122.3 35.7002 167.6c-7.10059 9.90039 -21.9004 8.5 -27.2998 -2c-14.6006 -28.1992 -42.4004 -63.8994 -76.3008 -97.7998c-33.8994 -33.8994 -69.5 -61.7002 -97.7998 -76.2998
c-10.7002 -5.40039 -11.7998 -20.2998 -2 -27.2002c14.4004 -10.2002 32.1006 -14.7002 51 -14.7002c41 0 87.4004 21.1006 116.7 50.4004z" />
    <glyph glyph-name="grin-stars" unicode="&#xf587;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM94.5996 279.1c-6.19922 -1 -8.89941 -8.59961 -4.2998 -13.2998l25.4004 -24.5996l-6 -34.9004c-1 -6.2002 5.2998 -11 11 -7.89941l31.2998 16.2998l31.2002 -16.2002
c5.7002 -3.09961 12 1.7002 11 7.90039l-6 34.8994l25.3994 24.6006c4.60059 4.59961 1.90039 12.1992 -4.2998 13.1992l-34.8994 5l-15.5 31.6006c-2.90039 5.7998 -11 5.7998 -13.9004 0l-15.5 -31.6006zM248 16c60.5996 0 134.5 38.2998 143.8 93.2998
c1.90039 11.7998 -9.2002 21.6006 -20.7002 17.9004c-30.1992 -9.7002 -75.0996 -15.2002 -123.1 -15.2002s-92.9004 5.5 -123.1 15.2002c-11.4004 3.59961 -22.7002 -6.10059 -20.7002 -17.9004c9.2998 -55 83.2002 -93.2998 143.8 -93.2998zM405.7 265.9
c4.59961 4.59961 1.89941 12.1992 -4.40039 13.0996l-34.8994 5l-15.5 31.5996c-2.90039 5.80078 -11 5.80078 -13.9004 0l-15.5 -31.5996l-34.9004 -5c-6.19922 -1 -8.7998 -8.59961 -4.2998 -13.2002l25.4004 -24.5996l-6 -34.9004c-1 -6.2002 5.2998 -11 11 -7.89941
l31.2998 16.2998l31.2998 -16.2002c5.7002 -3.09961 12 1.7002 11 7.90039l-6 34.8994z" />
    <glyph glyph-name="grin-tears" unicode="&#xf588;" horiz-adv-x="640" 
d="M102.4 191.9c5.59961 0.799805 10.2998 -3.90039 9.5 -9.40039c-3.30078 -22.5996 -12 -73.5 -26.8008 -88.2998c-19.1992 -19.2002 -50.5996 -18.9004 -70.1992 0.700195c-19.6006 19.5996 -19.9004 51.0996 -0.800781 70.1992
c14.8008 14.8008 65.7002 23.6006 88.3008 26.8008zM625.8 165.1c19.2002 -19.0996 18.7998 -50.6992 -0.799805 -70.2998c-19.5996 -19.5996 -51 -19.8994 -70.2002 -0.700195c-14.7998 14.8008 -23.5996 65.7002 -26.7998 88.3008c-0.799805 5.59961 4 10.2998 9.5 9.5
c22.5996 -3.30078 73.5 -12 88.2998 -26.8008zM496.4 177.9c11.7998 -82.3008 29.8994 -100.4 35.7998 -106.301c0.899414 -1 2 -1.59961 3 -2.5c-42.7002 -74.6992 -123 -125.1 -215.2 -125.1s-172.5 50.4004 -215.2 125c1 0.900391 2.10059 1.59961 3 2.5
c5.90039 6 24 24.0996 35.7998 106.4c2.90039 20.3994 -12.5 49.5996 -45.6992 45.6992c-8.90039 -1.2998 -16.8008 -2.69922 -24.3008 -4.09961c13.7002 124 118.7 220.5 246.4 220.5s232.7 -96.5 246.4 -220.5c-7.5 1.40039 -15.4004 2.7998 -24.3008 4.09961
c-26.5996 3.80078 -49.5 -19.0996 -45.6992 -45.6992zM400 296c-23.7998 0 -52.7002 -29.2998 -55.7998 -71.4004c-0.700195 -8.5 10.7002 -11.8994 14.8994 -4.5l9.5 17c7.7002 13.7002 19.2002 21.6006 31.5 21.6006c12.3008 0 23.8008 -7.90039 31.5 -21.6006l9.5 -17
c4.10059 -7.5 15.6006 -4.09961 14.9004 4.5c-3.2998 42.1006 -32.2002 71.4004 -56 71.4004zM240 296c-23.7998 0 -52.7002 -29.2998 -55.7998 -71.4004c-0.700195 -8.5 10.7002 -11.8994 14.8994 -4.5l9.5 17c7.7002 13.7002 19.2002 21.6006 31.5 21.6006
c12.3008 0 23.8008 -7.90039 31.5 -21.6006l9.5 -17c4.10059 -7.5 15.6006 -4.09961 14.9004 4.5c-3.2998 42.1006 -32.2002 71.4004 -56 71.4004zM320 16c60.5996 0 134.5 38.2998 143.8 93.2998c1.90039 11.7998 -9.2998 21.6006 -20.7002 17.9004
c-30.1992 -9.7002 -75.0996 -15.2002 -123.1 -15.2002s-92.9004 5.5 -123.1 15.2002c-11.5 3.7002 -22.7002 -6.2002 -20.7002 -17.9004c9.2998 -55 83.2002 -93.2998 143.8 -93.2998z" />
    <glyph glyph-name="grin-tongue" unicode="&#xf589;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248c0 -106.3 -67 -196.7 -161 -232c5.59961 12.2002 9 25.7002 9 40v45.5c24.7002 16.2002 43.5 38.0996 47.7998 63.7998c1.90039 11.7998 -9.2998 21.5 -20.7002 17.9004c-30.1992 -9.7002 -75.0996 -15.2002 -123.1 -15.2002
s-92.9004 5.5 -123.1 15.2002c-11.4004 3.59961 -22.7002 -6.10059 -20.7002 -17.9004c4.2998 -25.7002 23.0996 -47.5996 47.7998 -63.7998v-45.5c0 -14.2998 3.40039 -27.7998 9 -40c-94 35.2998 -161 125.7 -161 232c0 137 111 248 248 248zM168 208
c17.7002 0 32 14.2998 32 32s-14.2998 32 -32 32s-32 -14.2998 -32 -32s14.2998 -32 32 -32zM328 208c17.7002 0 32 14.2998 32 32s-14.2998 32 -32 32s-32 -14.2998 -32 -32s14.2998 -32 32 -32zM293.1 73.4004c0.800781 -0.400391 -0.5 0.299805 19 -9.30078v-64
c0 -35.5996 -29.1992 -64.5 -64.8994 -64c-35.1006 0.400391 -63.1006 29.7002 -63.1006 64.9004v63c19.2002 9.59961 18 9 18.9004 9.40039c14.4004 6.5 31.0996 -2.2002 34.5996 -17.6006l1.80078 -7.7998c2.09961 -9.2002 15.1992 -9.2002 17.2998 0l1.7998 7.7998
c3.5 15.4004 20.2002 24.1006 34.5996 17.6006z" />
    <glyph glyph-name="grin-tongue-squint" unicode="&#xf58a;" horiz-adv-x="496" 
d="M293.1 73.4004c0.800781 -0.400391 -0.5 0.299805 19 -9.30078v-64c0 -35.5996 -29.1992 -64.5 -64.8994 -64c-35.1006 0.400391 -63.1006 29.7002 -63.1006 64.9004v63c19.2002 9.59961 18 9 18.9004 9.40039c14.4004 6.5 31.0996 -2.2002 34.5996 -17.6006
l1.80078 -7.7998c2.09961 -9.2002 15.1992 -9.2002 17.2998 0l1.7998 7.7998c3.5 15.4004 20.2002 24.1006 34.5996 17.6006zM248 440c137 0 248 -111 248 -248c0 -106.3 -67 -196.7 -161 -232c5.59961 12.2002 9 25.7002 9 40v45.5
c24.7002 16.2002 43.5 38.0996 47.7998 63.7998c1.90039 11.7998 -9.2998 21.6006 -20.7002 17.9004c-30.1992 -9.7002 -75.0996 -15.2002 -123.1 -15.2002s-92.9004 5.5 -123.1 15.2002c-11.5 3.59961 -22.7002 -6.10059 -20.7002 -17.9004
c4.2998 -25.7002 23.0996 -47.5996 47.7998 -63.7998v-45.5c0 -14.2998 3.40039 -27.7998 9 -40c-94 35.2998 -161 125.7 -161 232c0 137 111 248 248 248zM214.2 229.7c7.7002 4.7002 7.7002 15.8994 0 20.5996l-80 48c-11.6006 6.90039 -24 -7.7002 -15.4004 -18
l33.6006 -40.2998l-33.6006 -40.2998c-8.59961 -10.4004 3.90039 -24.7998 15.4004 -18zM377.2 199.7l-33.6006 40.2998l33.6006 40.2998c8.5 10.2998 -3.7002 24.9004 -15.4004 18l-80 -48c-7.7998 -4.7002 -7.7998 -15.8994 0 -20.5996l80 -48
c11.5 -6.7998 24.1006 7.59961 15.4004 18z" />
    <glyph glyph-name="grin-tongue-wink" unicode="&#xf58b;" horiz-adv-x="496" 
d="M344 264c13.2998 0 24 -10.7002 24 -24s-10.7002 -24 -24 -24s-24 10.7002 -24 24s10.7002 24 24 24zM248 440c137 0 248 -111 248 -248c0 -106.3 -67 -196.7 -161 -232c5.59961 12.2002 9 25.7002 9 40v45.5c24.7002 16.2002 43.5 38.0996 47.7998 63.7998
c1.90039 11.7998 -9.2002 21.6006 -20.7002 17.9004c-30.1992 -9.7002 -75.0996 -15.2002 -123.1 -15.2002s-92.9004 5.5 -123.1 15.2002c-11.4004 3.59961 -22.7002 -6.10059 -20.7002 -17.9004c4.2998 -25.7002 23.0996 -47.5996 47.7998 -63.7998v-45.5
c0 -14.2998 3.40039 -27.7998 9 -40c-94 35.2998 -161 125.7 -161 232c0 137 111 248 248 248zM192 215c8.40039 -7.40039 21.5996 -0.299805 20 10.7998c-4 25.2002 -34.2002 42.1006 -59.9004 42.1006c-25.6992 0 -55.8994 -16.9004 -59.8994 -42.1006
c-1.7998 -11.0996 11.2998 -18.2002 19.7998 -10.7998l9.5 8.5c14.7998 13.2002 46.2002 13.2002 61 0zM344 176c35.2998 0 64 28.7002 64 64s-28.7002 64 -64 64s-64 -28.7002 -64 -64s28.7002 -64 64 -64zM293.1 73.4004c0.800781 -0.400391 -0.5 0.299805 19 -9.30078
v-64c0 -35.5996 -29.1992 -64.5 -64.8994 -64c-35.1006 0.400391 -63.1006 29.7002 -63.1006 64.9004v63c19.2002 9.59961 18 9 18.9004 9.40039c14.4004 6.5 31.0996 -2.2002 34.5996 -17.6006l1.80078 -7.7998c2.09961 -9.2002 15.1992 -9.2002 17.2998 0l1.7998 7.7998
c3.5 15.4004 20.2002 24.1006 34.5996 17.6006z" />
    <glyph glyph-name="grin-wink" unicode="&#xf58c;" horiz-adv-x="496" 
d="M0 192c0 137 111 248 248 248s248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248zM200 240c0 17.7002 -14.2998 32 -32 32s-32 -14.2998 -32 -32s14.2998 -32 32 -32s32 14.2998 32 32zM368 215c8.5 -7.40039 21.5996 -0.200195 20 10.7998
c-4 25.2002 -34.2002 42.1006 -59.9004 42.1006c-25.6992 0 -55.8994 -16.9004 -59.8994 -42.1006c-1.7998 -11.2002 11.5 -18.2002 19.7998 -10.7998l9.5 8.5c14.7998 13.2002 46.2002 13.2002 61 0zM124.9 127.2c-11.4004 3.7002 -22.7002 -6 -20.7002 -17.9004
c9.2998 -55 83.2002 -93.2998 143.8 -93.2998s134.6 38.2998 143.8 93.2998c1.90039 11.9004 -9.39941 21.6006 -20.7002 17.9004c-30.1992 -9.7002 -75.0996 -15.2002 -123.1 -15.2002s-92.9004 5.5 -123.1 15.2002z" />
    <glyph glyph-name="grip-horizontal" unicode="&#xf58d;" horiz-adv-x="448" 
d="M96 160c17.6699 0 32 -14.3301 32 -32v-64c0 -17.6699 -14.3301 -32 -32 -32h-64c-17.6699 0 -32 14.3301 -32 32v64c0 17.6699 14.3301 32 32 32h64zM256 160c17.6699 0 32 -14.3301 32 -32v-64c0 -17.6699 -14.3301 -32 -32 -32h-64c-17.6699 0 -32 14.3301 -32 32v64
c0 17.6699 14.3301 32 32 32h64zM416 160c17.6699 0 32 -14.3301 32 -32v-64c0 -17.6699 -14.3301 -32 -32 -32h-64c-17.6699 0 -32 14.3301 -32 32v64c0 17.6699 14.3301 32 32 32h64zM96 352c17.6699 0 32 -14.3301 32 -32v-64c0 -17.6699 -14.3301 -32 -32 -32h-64
c-17.6699 0 -32 14.3301 -32 32v64c0 17.6699 14.3301 32 32 32h64zM256 352c17.6699 0 32 -14.3301 32 -32v-64c0 -17.6699 -14.3301 -32 -32 -32h-64c-17.6699 0 -32 14.3301 -32 32v64c0 17.6699 14.3301 32 32 32h64zM416 352c17.6699 0 32 -14.3301 32 -32v-64
c0 -17.6699 -14.3301 -32 -32 -32h-64c-17.6699 0 -32 14.3301 -32 32v64c0 17.6699 14.3301 32 32 32h64z" />
    <glyph glyph-name="grip-vertical" unicode="&#xf58e;" horiz-adv-x="320" 
d="M96 416c17.6699 0 32 -14.3301 32 -32v-64c0 -17.6699 -14.3301 -32 -32 -32h-64c-17.6699 0 -32 14.3301 -32 32v64c0 17.6699 14.3301 32 32 32h64zM96 256c17.6699 0 32 -14.3301 32 -32v-64c0 -17.6699 -14.3301 -32 -32 -32h-64c-17.6699 0 -32 14.3301 -32 32v64
c0 17.6699 14.3301 32 32 32h64zM96 96c17.6699 0 32 -14.3301 32 -32v-64c0 -17.6699 -14.3301 -32 -32 -32h-64c-17.6699 0 -32 14.3301 -32 32v64c0 17.6699 14.3301 32 32 32h64zM288 416c17.6699 0 32 -14.3301 32 -32v-64c0 -17.6699 -14.3301 -32 -32 -32h-64
c-17.6699 0 -32 14.3301 -32 32v64c0 17.6699 14.3301 32 32 32h64zM288 256c17.6699 0 32 -14.3301 32 -32v-64c0 -17.6699 -14.3301 -32 -32 -32h-64c-17.6699 0 -32 14.3301 -32 32v64c0 17.6699 14.3301 32 32 32h64zM288 96c17.6699 0 32 -14.3301 32 -32v-64
c0 -17.6699 -14.3301 -32 -32 -32h-64c-17.6699 0 -32 14.3301 -32 32v64c0 17.6699 14.3301 32 32 32h64z" />
    <glyph glyph-name="headphones-alt" unicode="&#xf58f;" 
d="M160 160c17.6699 0 32 -14.3496 32 -32.0596v-127.881c0 -17.6992 -14.3301 -32.0596 -32 -32.0596h-16c-35.3496 0 -64 28.71 -64 64.1201v63.7598c0 35.4199 28.6504 64.1201 64 64.1201h16zM368 160c35.3496 0 64 -28.71 64 -64.1201v-63.7598
c0 -35.4102 -28.6504 -64.1201 -64 -64.1201h-16c-17.6699 0 -32 14.3604 -32 32.0596v127.881c0 17.71 14.3301 32.0596 32 32.0596h16zM256 416c143.09 0 251.43 -119.13 256 -256v-112c0 -8.83984 -7.16016 -16 -16 -16h-16c-8.83984 0 -16 7.16016 -16 16v112
c0 114.67 -93.3301 207.8 -208 207.82c-114.67 -0.0205078 -208 -93.1504 -208 -207.82v-112c0 -8.83984 -7.16016 -16 -16 -16h-16c-8.83984 0 -16 7.16016 -16 16v112c4.57031 136.87 112.91 256 256 256z" />
    <glyph glyph-name="headset" unicode="&#xf590;" 
d="M192 240v-112c0 -17.6699 -14.3301 -32 -32 -32h-16c-35.3496 0 -64 28.6504 -64 64v48c0 35.3496 28.6504 64 64 64h16c17.6699 0 32 -14.3301 32 -32zM368 96h-16c-17.6699 0 -32 14.3301 -32 32v112c0 17.6699 14.3301 32 32 32h16c35.3496 0 64 -28.6504 64 -64v-48
c0 -35.3496 -28.6504 -64 -64 -64zM256 448c142.82 0 251.42 -118.83 256 -256v-165.72c0 -49.8604 -40.4199 -90.2803 -90.2803 -90.2803h-181.72c-26.5098 0 -48 21.4902 -48 48s21.4902 48 48 48h32c26.5098 0 48 -21.4902 48 -48h101.72
c23.3506 0 42.2803 18.9297 42.2803 42.2803c0 0 -0.0400391 163.29 -0.120117 165.72h0.120117c0 114.69 -93.3096 208 -208 208s-208 -93.3096 -208 -208v-16c0 -8.83984 -7.16016 -16 -16 -16h-16c-8.83984 0 -16 7.16016 -16 16v16c4.58008 137.17 113.18 256 256 256z
" />
    <glyph glyph-name="highlighter" unicode="&#xf591;" horiz-adv-x="544" 
d="M0 -31.9805l68.3301 70.4707l67.04 -67.04l-35.4502 -35.4502zM124.61 208.03l41.5195 35.4395l173.34 -173.34l-35.5498 -41.6396c-9.5 -10.7705 -24.4199 -14.9805 -38.1504 -10.7803l-42.7393 13.0801l-50.8604 -50.8604l-96.2295 96.2305l50.9297 50.9395
l-13.0498 42.8301c-1.02832 3.37598 -1.60645 6.94922 -1.60645 10.6592c0 10.9229 4.79688 20.7344 12.3965 27.4414zM527.92 368.73c20.5 -20.5 21.5303 -53.3906 2.34961 -75.1309l-169.949 -199.06l-169.771 169.78l199.05 169.96
c21.7402 19.1699 54.6309 18.1396 75.1201 -2.35059z" />
    <glyph glyph-name="hot-tub" unicode="&#xf593;" 
d="M414.21 270.35c-3.15039 25.3906 -14.6104 47.9707 -31.9697 62.1406c-27.7305 22.6299 -45.79 58.0498 -50.1299 97.1602c-1.09082 9.7793 6.48926 18.3496 16 18.3496h16.1201c7.98926 0 14.7295 -6.13965 15.7393 -14.3398
c3.16016 -25.4004 14.6104 -47.9805 31.9805 -62.1504c27.7295 -22.6299 45.79 -58.0498 50.1299 -97.1602c1.08008 -9.7793 -6.49023 -18.3496 -16 -18.3496h-16.1201c-8 0 -14.7295 6.13965 -15.75 14.3496zM306.21 270.35
c-3.15039 25.3906 -14.6104 47.9707 -31.9697 62.1406c-27.7305 22.6299 -45.79 58.0498 -50.1299 97.1602c-1.09082 9.7793 6.48926 18.3496 16 18.3496h16.1201c7.98926 0 14.7295 -6.13965 15.7393 -14.3398c3.16016 -25.4004 14.6104 -47.9805 31.9805 -62.1504
c27.7295 -22.6299 45.79 -58.0498 50.1299 -97.1602c1.08008 -9.7793 -6.49023 -18.3496 -16 -18.3496h-16.1201c-8 0 -14.7295 6.13965 -15.75 14.3496zM480 192c17.6699 0 32 -14.3301 32 -32v-160c0 -35.3496 -28.6504 -64 -64 -64h-384c-35.3496 0 -64 28.6504 -64 64
v224c0 35.3496 28.6504 64 64 64h42.6699c14.3779 0 27.7109 -4.78223 38.4004 -12.7998l110.93 -83.2002h224zM128 8v112c0 4.41992 -3.58008 8 -8 8h-16c-4.41992 0 -8 -3.58008 -8 -8v-112c0 -4.41992 3.58008 -8 8 -8h16c4.41992 0 8 3.58008 8 8zM224 8v112
c0 4.41992 -3.58008 8 -8 8h-16c-4.41992 0 -8 -3.58008 -8 -8v-112c0 -4.41992 3.58008 -8 8 -8h16c4.41992 0 8 3.58008 8 8zM320 8v112c0 4.41992 -3.58008 8 -8 8h-16c-4.41992 0 -8 -3.58008 -8 -8v-112c0 -4.41992 3.58008 -8 8 -8h16c4.41992 0 8 3.58008 8 8zM416 8
v112c0 4.41992 -3.58008 8 -8 8h-16c-4.41992 0 -8 -3.58008 -8 -8v-112c0 -4.41992 3.58008 -8 8 -8h16c4.41992 0 8 3.58008 8 8zM64 320c-35.3496 0 -64 28.6504 -64 64s28.6504 64 64 64s64 -28.6504 64 -64s-28.6504 -64 -64 -64z" />
    <glyph glyph-name="hotel" unicode="&#xf594;" horiz-adv-x="576" 
d="M560 384h-16v-384h16c8.83984 0 16 -7.16016 16 -16v-32c0 -8.83984 -7.16016 -16 -16 -16h-240v80c0 8.7998 -7.2002 16 -16 16h-32c-8.7998 0 -16 -7.2002 -16 -16v-80h-240c-8.83984 0 -16 7.16016 -16 16v32c0 8.83984 7.16016 16 16 16h15.9805v384h-15.9805
c-8.83984 0 -16 7.16016 -16 16v32c0 8.83984 7.16016 16 16 16h544c8.83984 0 16 -7.16016 16 -16v-32c0 -8.83984 -7.16016 -16 -16 -16zM256 339.2v-38.4004c0 -6.39941 6.40039 -12.7998 12.7998 -12.7998h38.4004c6.39941 0 12.7998 6.40039 12.7998 12.7998v38.4004
c0 6.39941 -6.40039 12.7998 -12.7998 12.7998h-38.4004c-6.39941 0 -12.7998 -6.40039 -12.7998 -12.7998zM256 243.2v-38.4004c0 -6.39941 6.40039 -12.7998 12.7998 -12.7998h38.4004c6.39941 0 12.7998 6.40039 12.7998 12.7998v38.4004
c0 6.39941 -6.40039 12.7998 -12.7998 12.7998h-38.4004c-6.39941 0 -12.7998 -6.40039 -12.7998 -12.7998zM128 339.2v-38.4004c0 -6.39941 6.40039 -12.7998 12.7998 -12.7998h38.4004c6.39941 0 12.7998 6.40039 12.7998 12.7998v38.4004
c0 6.39941 -6.40039 12.7998 -12.7998 12.7998h-38.4004c-6.39941 0 -12.7998 -6.40039 -12.7998 -12.7998zM179.2 192c6.39941 0 12.7998 6.40039 12.7998 12.7998v38.4004c0 6.39941 -6.40039 12.7998 -12.7998 12.7998h-38.4004
c-6.39941 0 -12.7998 -6.40039 -12.7998 -12.7998v-38.4004c0 -6.39941 6.40039 -12.7998 12.7998 -12.7998h38.4004zM192 64h192c0 53.0195 -42.9805 96 -96 96s-96 -42.9805 -96 -96zM448 204.8v38.4004c0 6.39941 -6.40039 12.7998 -12.7998 12.7998h-38.4004
c-6.39941 0 -12.7998 -6.40039 -12.7998 -12.7998v-38.4004c0 -6.39941 6.40039 -12.7998 12.7998 -12.7998h38.4004c6.39941 0 12.7998 6.40039 12.7998 12.7998zM448 300.8v38.4004c0 6.39941 -6.40039 12.7998 -12.7998 12.7998h-38.4004
c-6.39941 0 -12.7998 -6.40039 -12.7998 -12.7998v-38.4004c0 -6.39941 6.40039 -12.7998 12.7998 -12.7998h38.4004c6.39941 0 12.7998 6.40039 12.7998 12.7998z" />
    <glyph glyph-name="joint" unicode="&#xf595;" horiz-adv-x="640" 
d="M444.34 266.9c-35.7803 25.0693 -60.3398 63.0098 -60.3398 106.699v66.4004c0 4.41992 3.58008 8 8 8h48c4.41992 0 8 -3.58008 8 -8v-62.3096c0 -29.0303 15.8496 -54.71 39.6602 -71.3203c35.3301 -24.6504 56.3398 -64.8203 56.3398 -108.061v-30.3096
c0 -4.41992 -3.58008 -8 -8 -8h-48c-4.41992 0 -8 3.58008 -8 8v30.3096c0 27.4307 -13.2803 52.9102 -35.6602 68.5908zM194.97 89.0195c22.3701 3.60059 45.0801 -4.30957 59.8203 -21.5098l112.72 -131.51h-88.5693c-98.6406 0 -195.29 27.7197 -278.94 80
c59.6904 37.3096 126.03 61.9297 194.97 73.0195zM553.28 360.91c54.3096 -36.4102 86.7197 -97.1602 86.7197 -162.601v-30.3096c0 -4.41992 -3.58008 -8 -8 -8h-48c-4.41992 0 -8 3.58008 -8 8v30.3096c0 50.1504 -25.21 96.6504 -67.3604 123.99
c-18.4697 11.9805 -28.6396 33.3701 -28.6396 55.3906v62.3096c0 4.41992 3.58008 8 8 8h48c4.41992 0 8 -3.58008 8 -8v-62.3096c0 -6.82031 3.61035 -12.9805 9.28027 -16.7803zM360.89 95.9502c0.0371094 0 0.0556641 0.0351562 0.0927734 0.0351562
c19.4336 0 36.8535 -8.68652 48.5879 -22.3857l117.949 -137.6h-88.4492c-19.4385 0 -36.8506 8.65137 -48.5898 22.3496l-117.801 137.431c1.40039 0.0195312 53.8105 0.109375 88.21 0.169922zM616 96c13.25 0 24 -10.7402 24 -24v-112c0 -13.25 -10.75 -24 -24 -24
h-17.4199c-19.4375 0 -36.8506 8.65137 -48.5898 22.3496l-117.99 137.65h184z" />
    <glyph glyph-name="kiss" unicode="&#xf596;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM168 208c17.7002 0 32 14.2998 32 32s-14.2998 32 -32 32s-32 -14.2998 -32 -32s14.2998 -32 32 -32zM304 52c0 13 -13.4004 27.2998 -35.2002 36.4004
c21.7998 8.69922 35.2002 23 35.2002 36c0 19.1992 -28.7002 41.5 -71.5 44c-8.40039 1.09961 -12.2002 -11.8008 -3.59961 -15.4004l17 -7.2002c13 -5.5 20.7998 -13.5 20.7998 -21.5s-7.7998 -16 -20.7998 -21.5l-17 -7.2002c-6.10059 -2.59961 -6 -12.2998 0 -14.7998
l17 -7.2002c13 -5.5 20.7998 -13.5 20.7998 -21.5s-7.7998 -16 -20.7998 -21.5l-17 -7.19922c-8.5 -3.60059 -4.90039 -16.2002 3.59961 -15.4004c42.7998 2.5 71.5 24.7998 71.5 44zM328 208c17.7002 0 32 14.2998 32 32s-14.2998 32 -32 32s-32 -14.2998 -32 -32
s14.2998 -32 32 -32z" />
    <glyph glyph-name="kiss-beam" unicode="&#xf597;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM209 220.1c4.2002 -7.5 15.5996 -4 15.0996 4.5c-3.2998 42.1006 -32.1992 71.4004 -56 71.4004c-23.7998 0 -52.6992 -29.2998 -56 -71.4004
c-0.699219 -8.5 10.7002 -11.8994 14.9004 -4.5l9.5 17c7.7002 13.7002 19.2002 21.6006 31.5 21.6006s23.7998 -7.90039 31.5 -21.6006zM304 52c0 13 -13.4004 27.2998 -35.2002 36.4004c21.7998 8.69922 35.2002 23 35.2002 36c0 19.1992 -28.7002 41.5 -71.5 44
c-8.40039 1.09961 -12.2002 -11.8008 -3.59961 -15.4004l17 -7.2002c13 -5.5 20.7998 -13.5 20.7998 -21.5s-7.7998 -16 -20.7998 -21.5l-17 -7.2002c-6.10059 -2.59961 -6 -12.2998 0 -14.7998l17 -7.2002c13 -5.5 20.7998 -13.5 20.7998 -21.5s-7.7998 -16 -20.7998 -21.5
l-17 -7.19922c-8.5 -3.60059 -4.90039 -16.2002 3.59961 -15.4004c42.7998 2.5 71.5 24.7998 71.5 44zM369 220.1c4.2002 -7.5 15.5996 -4 15.0996 4.5c-3.2998 42.1006 -32.1992 71.4004 -56 71.4004c-23.7998 0 -52.6992 -29.2998 -56 -71.4004
c-0.699219 -8.5 10.8008 -11.7998 14.9004 -4.5l9.5 17c7.7002 13.7002 19.2002 21.6006 31.5 21.6006s23.7998 -7.90039 31.5 -21.6006z" />
    <glyph glyph-name="kiss-wink-heart" unicode="&#xf598;" horiz-adv-x="504" 
d="M501.1 45.5c9.2002 -23.9004 -4.39941 -49.4004 -28.5 -55.7002l-83 -21.5c-5.39941 -1.39941 -10.8994 1.7998 -12.3994 7.10059l-22.9004 82.5996c-6.59961 24 8.7998 48.5996 34 52.5996c22 3.5 43.1006 -11.5996 49 -33l2.2998 -8.39941l8.40039 2.2002
c21.5996 5.59961 45.0996 -5.10059 53.0996 -25.9004zM323.5 49.5c0 0 23.5996 -83.9004 23.9004 -84.5996c-30.5 -13.4004 -64 -20.9004 -99.4004 -20.9004c-137 0 -248 111 -248 248s111 248 248 248s248 -111 248 -248c0 -31.7998 -6.2002 -62.0996 -17.0996 -90
c-6 1.5 -12.2002 2.7998 -18.6006 2.90039c-29.0996 49.7998 -98.0996 50.5996 -127.8 4.2998c-11.2998 -17.7002 -14.5996 -39.4004 -9 -59.7002zM168 208c17.7002 0 32 14.2998 32 32s-14.2998 32 -32 32s-32 -14.2998 -32 -32s14.2998 -32 32 -32zM288 52
c0 13 -13.4004 27.2998 -35.2002 36.4004c21.7998 8.69922 35.2002 23 35.2002 36c0 19.1992 -28.7002 41.5 -71.5 44c-8.2002 1.19922 -12.4004 -11.7002 -3.59961 -15.4004l17 -7.2002c13 -5.5 20.7998 -13.5 20.7998 -21.5s-7.7998 -16 -20.7998 -21.5l-17 -7.2002
c-5.7002 -2.5 -6 -12.2998 0 -14.7998l17 -7.2002c13 -5.5 20.7998 -13.5 20.7998 -21.5s-7.7998 -16 -20.7998 -21.5l-17 -7.19922c-8.5 -3.60059 -4.90039 -16.2002 3.59961 -15.4004c42.7998 2.5 71.5 24.7998 71.5 44zM304 231l9.7002 8.5
c14.7998 13.2002 46.2002 13.2002 61 0l9.5 -8.5c8.5 -7.5 21.5 -0.299805 19.7998 10.7998c-4 25.2002 -34.2002 42.1006 -59.9004 42.1006c-25.6992 0 -55.8994 -16.9004 -59.8994 -42.1006c-1.7998 -11.2002 11.5 -18.2002 19.7998 -10.7998z" />
    <glyph glyph-name="laugh" unicode="&#xf599;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM328 288c-17.7002 0 -32 -14.2998 -32 -32s14.2998 -32 32 -32s32 14.2998 32 32s-14.2998 32 -32 32zM168 288c-17.7002 0 -32 -14.2998 -32 -32s14.2998 -32 32 -32
s32 14.2998 32 32s-14.2998 32 -32 32zM256 16c73.4004 0 134 55 142.9 126c1.19922 9.59961 -6.30078 18 -15.9004 18h-270c-9.59961 0 -17.0996 -8.5 -15.9004 -18c8.90039 -71 69.5 -126 142.9 -126h16z" />
    <glyph glyph-name="laugh-beam" unicode="&#xf59a;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM272 240.6c-0.700195 -8.59961 10.9004 -11.8994 15.0996 -4.5l9.5 17c7.7002 13.7002 19.2002 21.6006 31.5 21.6006c12.3008 0 23.8008 -7.90039 31.5 -21.6006l9.5 -17
c4.10059 -7.39941 15.6006 -4.09961 14.9004 4.5c-3.2998 42.1006 -32.2002 71.4004 -56 71.4004s-52.7002 -29.2998 -56 -71.4004zM112 240.6c-0.700195 -8.5 10.7998 -11.8994 15.0996 -4.5l9.5 17c7.7002 13.7002 19.2002 21.6006 31.5 21.6006
c12.3008 0 23.8008 -7.90039 31.5 -21.6006l9.5 -17c4.10059 -7.39941 15.6006 -4.09961 14.9004 4.5c-3.2998 42.1006 -32.2002 71.4004 -56 71.4004s-52.7002 -29.2998 -56 -71.4004zM398.9 142c1.19922 9.59961 -6.30078 18 -15.9004 18h-270
c-9.59961 0 -17.0996 -8.5 -15.9004 -18c8.90039 -71 69.5 -126 142.9 -126h16c73.4004 0 134 55 142.9 126z" />
    <glyph glyph-name="laugh-squint" unicode="&#xf59b;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM281.8 278.3c-7.7002 -4.7002 -7.7002 -15.8994 0 -20.5996l80 -48c11.5 -6.7998 24.1006 7.59961 15.4004 18l-33.6006 40.2998l33.6006 40.2998
c8.59961 10.2998 -3.7998 24.9004 -15.4004 18zM118.8 308.3l33.6006 -40.2998l-33.6006 -40.2998c-8.59961 -10.4004 3.90039 -24.7998 15.4004 -18l80 48c7.7998 4.7002 7.7998 15.8994 0 20.5996l-80 48c-11.6006 6.90039 -24 -7.7002 -15.4004 -18zM398.9 142
c1.19922 9.59961 -6.30078 18 -15.9004 18h-270c-9.59961 0 -17.0996 -8.5 -15.9004 -18c8.90039 -71 69.5 -126 142.9 -126h16c73.4004 0 134 55 142.9 126z" />
    <glyph glyph-name="laugh-wink" unicode="&#xf59c;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM268.1 241.9c-1.69922 -11.2002 11.5 -18.3008 19.9004 -10.9004l9.59961 8.59961c14.8008 13.2002 46.2002 13.2002 61 0l9.5 -8.5
c8.40039 -7.5 21.5 -0.299805 19.8008 10.8008c-4 25.1992 -34.2002 42.0996 -59.9004 42.0996s-55.9004 -16.9004 -59.9004 -42.0996zM168 288c-17.7002 0 -32 -14.2998 -32 -32s14.2998 -32 32 -32s32 14.2998 32 32s-14.2998 32 -32 32zM398.9 142
c1.19922 9.59961 -6.30078 18 -15.9004 18h-270c-9.59961 0 -17.0996 -8.5 -15.9004 -18c8.90039 -71 69.5 -126 142.9 -126h16c73.4004 0 134 55 142.9 126z" />
    <glyph glyph-name="luggage-cart" unicode="&#xf59d;" horiz-adv-x="640" 
d="M224 128c-17.6699 0 -32 14.3301 -32 32v160c0 17.6699 14.3301 32 32 32h32v-224h-32zM576 160c0 -17.6699 -14.3301 -32 -32 -32h-32v224h32c17.6699 0 32 -14.3301 32 -32v-160zM624 64c8.83984 0 16 -7.16016 16 -16v-32c0 -8.83984 -7.16016 -16 -16 -16h-82.9404
c1.79004 -5.03027 2.94043 -10.3604 2.94043 -16c0 -26.5098 -21.4902 -48 -48 -48s-48 21.4902 -48 48c0 5.63965 1.15039 10.9697 2.94043 16h-197.881c1.79004 -5.03027 2.94043 -10.3604 2.94043 -16c0 -26.5098 -21.4902 -48 -48 -48s-48 21.4902 -48 48
c0 5.63965 1.15039 10.9697 2.94043 16h-82.9404c-8.83984 0 -16 7.16016 -16 16v368h-48c-8.83984 0 -16 7.16016 -16 16v32c0 8.83984 7.16016 16 16 16h96c8.83984 0 16 -7.16016 16 -16v-368h496zM480 352v-224h-192v272c0 26.5098 21.4902 48 48 48h96
c26.5098 0 48 -21.4902 48 -48v-48zM432 352v48h-96v-48h96z" />
    <glyph glyph-name="map-marked" unicode="&#xf59f;" horiz-adv-x="576" 
d="M288 448c69.5898 0 126 -56.4102 126 -126c0 -56.2598 -82.3496 -158.8 -113.9 -196.02c-6.37988 -7.54004 -17.8096 -7.54004 -24.1992 0c-31.5508 37.2197 -113.9 139.76 -113.9 196.02c0 69.5898 56.4102 126 126 126zM20.1201 232.05l118.63 47.4502
c5.17969 -14.8799 12.4102 -30.4404 21.25 -46.4199v-233.08l-138.06 -62.8398c-10.5107 -4.2002 -21.9404 3.54004 -21.9404 14.8594v250.32c0.00292969 13.4697 8.32617 24.9932 20.1201 29.71zM288 88.3301c14.0703 0 27.3799 6.17969 36.5098 16.9502
c19.6699 23.2002 40.5703 49.6299 59.4902 76.7197v-245.99l-192 64v182c18.9199 -27.0996 39.8301 -53.5195 59.4902 -76.7197c9.12988 -10.7803 22.4395 -16.96 36.5098 -16.96zM554.06 286.84c10.5107 4.2002 21.9404 -3.54004 21.9404 -14.8594v-250.32
c0 -13.4707 -8.32422 -24.9951 -20.1201 -29.71l-139.88 -55.9502v288z" />
    <glyph glyph-name="map-marked-alt" unicode="&#xf5a0;" horiz-adv-x="576" 
d="M288 448c69.5898 0 126 -56.4102 126 -126c0 -56.2598 -82.3496 -158.8 -113.9 -196.02c-6.37988 -7.54004 -17.8096 -7.54004 -24.1992 0c-31.5508 37.2197 -113.9 139.76 -113.9 196.02c0 69.5898 56.4102 126 126 126zM288 280c23.2002 0 42 18.7998 42 42
s-18.7998 42 -42 42s-42 -18.7998 -42 -42s18.7998 -42 42 -42zM20.1201 232.05l118.63 47.4502c5.17969 -14.8799 12.4102 -30.4404 21.25 -46.4199v-233.08l-138.06 -62.8398c-10.5107 -4.2002 -21.9404 3.54004 -21.9404 14.8594v250.32
c0.00292969 13.4697 8.32617 24.9932 20.1201 29.71zM288 88.3301c14.0703 0 27.3799 6.17969 36.5098 16.9502c19.6699 23.2002 40.5703 49.6299 59.4902 76.7197v-245.99l-192 64v182c18.9199 -27.0996 39.8301 -53.5195 59.4902 -76.7197
c9.12988 -10.7803 22.4395 -16.96 36.5098 -16.96zM554.06 286.84c10.5107 4.2002 21.9404 -3.54004 21.9404 -14.8594v-250.32c0 -13.4707 -8.32422 -24.9951 -20.1201 -29.71l-139.88 -55.9502v288z" />
    <glyph glyph-name="marker" unicode="&#xf5a1;" 
d="M93.9502 157.97l75.3994 75.4004l128.021 -128.021l-75.4004 -75.3994c-51.1611 -51.1592 -119.559 -85.4326 -195.34 -93.7998c-15.2803 -1.69043 -28.1895 11.2295 -26.4902 26.5098l0.0302734 0.229492c8.42188 75.6777 42.6777 143.978 93.7803 195.08z
M485.49 421.49c35.3496 -35.3604 35.3496 -92.6699 0 -128.021l-165.49 -165.489l-128.02 128.02l98.4795 98.4697l-19.5898 19.5898l-87.1504 -87.1494c-6.25 -6.25 -16.3799 -6.25 -22.6299 0l-22.6201 22.6201c-6.25 6.25 -6.25 16.3799 0 22.6299l104.12 104.12
c15.6104 15.6201 40.9404 15.6201 56.5605 0l36.5596 -36.5498l21.7598 21.7598c35.3506 35.3496 92.6699 35.3496 128.021 0z" />
    <glyph glyph-name="medal" unicode="&#xf5a2;" 
d="M223.75 317.25c-42.04 -6.55957 -79.8398 -25.6201 -109.56 -53.3896l-111.271 158.96c-7.41992 10.6094 0.160156 25.1797 13.1104 25.1797h111.149c11.6572 0 21.8467 -6.21387 27.4404 -15.54zM495.97 448c12.9502 0 20.5303 -14.5703 13.1104 -25.1797
l-111.271 -158.95c-29.7197 27.7598 -67.5195 46.8203 -109.56 53.3799l69.1299 115.21c5.78027 9.63965 16.2002 15.54 27.4404 15.54h111.149zM256 288c97.2002 0 176 -78.7998 176 -176s-78.7998 -176 -176 -176s-176 78.7998 -176 176s78.7998 176 176 176z
M348.52 130.74c6.82031 6.63965 3.05078 18.2295 -6.34961 19.5898l-52.4297 7.63965l-23.4307 47.5205c-2.10938 4.25 -6.21973 6.38965 -10.3291 6.38965c-4.09082 0 -8.1709 -2.11035 -10.2803 -6.38965l-23.4307 -47.5205l-52.4297 -7.63965
c-9.39941 -1.36035 -13.1699 -12.9502 -6.34961 -19.5898l37.9297 -36.96l-8.96973 -52.2207c-1.60059 -9.34961 8.25 -16.54 16.6494 -12.0898l46.9004 24.6504l46.9102 -24.6504c8.38965 -4.41992 18.25 2.73047 16.6494 12.0898l-8.96973 52.2207z" />
    <glyph glyph-name="meh-blank" unicode="&#xf5a4;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM168 208c17.7002 0 32 14.2998 32 32s-14.2998 32 -32 32s-32 -14.2998 -32 -32s14.2998 -32 32 -32zM328 208c17.7002 0 32 14.2998 32 32s-14.2998 32 -32 32
s-32 -14.2998 -32 -32s14.2998 -32 32 -32z" />
    <glyph glyph-name="meh-rolling-eyes" unicode="&#xf5a5;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM88 224c0 -35.2998 28.7002 -64 64 -64s64 28.7002 64 64c0 24.2998 -13.7002 45.2002 -33.5996 56c0.699219 -2.59961 1.59961 -5.2002 1.59961 -8
c0 -17.7002 -14.2998 -32 -32 -32s-32 14.2998 -32 32c0 2.7998 0.900391 5.40039 1.59961 8c-19.8994 -10.7998 -33.5996 -31.7002 -33.5996 -56zM312 48c21.2002 0 21.2002 32 0 32h-128c-21.2002 0 -21.2002 -32 0 -32h128zM344 160c35.2998 0 64 28.7002 64 64
c0 24.2998 -13.7002 45.2002 -33.5996 56c0.699219 -2.59961 1.59961 -5.2002 1.59961 -8c0 -17.7002 -14.2998 -32 -32 -32s-32 14.2998 -32 32c0 2.7998 0.900391 5.40039 1.59961 8c-19.8994 -10.7998 -33.5996 -31.7002 -33.5996 -56c0 -35.2998 28.7002 -64 64 -64z
" />
    <glyph glyph-name="monument" unicode="&#xf5a6;" horiz-adv-x="384" 
d="M368 0c8.83984 0 16 -7.16016 16 -16v-32c0 -8.83984 -7.16016 -16 -16 -16h-352c-8.83984 0 -16 7.16016 -16 16v32c0 8.83984 7.16016 16 16 16h352zM289.14 347.26l30.8604 -315.26h-256l30.8701 315.26c0.751953 7.54688 4.12988 14.3613 9.20996 19.4404
l76.5996 76.6094c6.25 6.25 16.3799 6.25 22.6299 0l76.6201 -76.6094c5.08008 -5.0791 8.45801 -11.8936 9.20996 -19.4404zM240 140.8v38.4004c0 6.39941 -6.40039 12.7998 -12.7998 12.7998h-70.4004c-6.39941 0 -12.7998 -6.40039 -12.7998 -12.7998v-38.4004
c0 -6.39941 6.40039 -12.7998 12.7998 -12.7998h70.4004c6.39941 0 12.7998 6.40039 12.7998 12.7998z" />
    <glyph glyph-name="mortar-pestle" unicode="&#xf5a7;" 
d="M501.54 387.09l-99.0801 -99.0898h-151.37l203.811 152.86c5.96094 4.46875 13.4297 7.11426 21.4473 7.11426c5.71973 0 11.1279 -1.34863 15.9219 -3.74414c21.7803 -10.8906 26.4902 -39.9209 9.27051 -57.1406zM496 256c8.83984 0 16 -7.16016 16 -16v-32
c0 -8.83984 -7.16016 -16 -16 -16h-16c0 -80.9805 -50.2002 -150.11 -121.13 -178.32c12.7695 -16.8701 21.7295 -36.7998 24.9502 -58.6895c1.45996 -9.91992 -6.04004 -18.9805 -16.0703 -18.9805h-223.5c-10.0303 0 -17.5303 9.06055 -16.0703 18.9805
c3.23047 21.8896 12.1904 41.8193 24.9502 58.6895c-70.9297 28.21 -121.13 97.3398 -121.13 178.32h-16c-8.83984 0 -16 7.16016 -16 16v32c0 8.83984 7.16016 16 16 16h480z" />
    <glyph glyph-name="paint-roller" unicode="&#xf5aa;" 
d="M416 320c0 -17.6699 -14.3301 -32 -32 -32h-352c-17.6699 0 -32 14.3301 -32 32v96c0 17.6699 14.3301 32 32 32h352c17.6699 0 32 -14.3301 32 -32v-96zM448 384c35.3496 0 64 -28.6504 64 -64v-64c0 -53.0195 -42.9805 -96 -96 -96h-160v-32
c17.6699 0 32 -14.3301 32 -32v-128c0 -17.6699 -14.3301 -32 -32 -32h-64c-17.6699 0 -32 14.3301 -32 32v128c0 17.6699 14.3301 32 32 32v32c0 35.3496 28.6504 64 64 64h160c17.6699 0 32 14.3301 32 32v128z" />
    <glyph glyph-name="passport" unicode="&#xf5ab;" horiz-adv-x="448" 
d="M129.62 272c5.28027 31.2197 25.5898 57.1699 53.2998 70.4102c-7.66992 -19.0605 -12.7197 -43.3799 -14.21 -70.4102h-39.0898zM129.62 240h39.0898c1.49023 -27.0303 6.53027 -51.3496 14.21 -70.4102c-27.71 13.2402 -48.0098 39.1904 -53.2998 70.4102zM224 161.31
c-7.69043 7.4502 -20.7695 34.4307 -23.4404 78.6904h46.8701c-2.66016 -44.2695 -15.7393 -71.2402 -23.4297 -78.6904zM200.57 272c2.66016 44.2598 15.7393 71.2402 23.4395 78.6904c7.69043 -7.4502 20.7705 -34.4307 23.4307 -78.6904h-46.8701zM265.08 169.59
c7.67969 19.0605 12.7197 43.3799 14.21 70.4102h39.0898c-5.28027 -31.2197 -25.5898 -57.1699 -53.2998 -70.4102zM416 448c17.6699 0 32 -14.3301 32 -32v-448c0 -17.6699 -14.3301 -32 -32 -32h-352c-35.3496 0 -64 28.6504 -64 64v384c0 35.3496 28.6504 64 64 64h352z
M336 32c8.7998 0 16 7.2002 16 16s-7.2002 16 -16 16h-224c-8.7998 0 -16 -7.2002 -16 -16s7.2002 -16 16 -16h224zM224 128c70.6904 0 128 57.3096 128 128s-57.3096 128 -128 128s-128 -57.3096 -128 -128s57.3096 -128 128 -128zM265.08 342.41
c27.71 -13.2402 48.0195 -39.1904 53.2998 -70.4102h-39.0898c-1.49023 27.0303 -6.53027 51.3496 -14.21 70.4102z" />
    <glyph glyph-name="pen-fancy" unicode="&#xf5ac;" 
d="M79.1797 165.06l84.0703 33.0703l98.8799 -98.8799l-33.0703 -84.0703c-3.1748 -9.5332 -10.7061 -17.0645 -20.2393 -20.2393l-176.82 -58.9404l-4.67969 4.67969l92.8896 92.8906c2.55957 -0.660156 5.03027 -1.57031 7.7998 -1.57031c17.6699 0 32 14.3301 32 32
s-14.3301 32 -32 32s-32 -14.3301 -32 -32c0 -2.76953 0.910156 -5.24023 1.57031 -7.7998l-92.8896 -92.8906l-4.69043 4.69043l58.9404 176.82c3.17773 9.53223 10.707 17.0615 20.2393 20.2393zM369.25 419.68c74.4805 84.2607 199.15 -39.1602 114.23 -114.229
l-199.49 -183.11l-97.8506 97.8506z" />
    <glyph glyph-name="pen-nib" unicode="&#xf5ad;" 
d="M136.6 309.21l151.4 42.79l128 -128l-42.79 -151.4c-5.76172 -20.3838 -21.3594 -36.6455 -41.3496 -43.3096l-279.86 -93.29l-14.6904 14.6904l150.11 150.109c6.25977 -2.99023 13.1797 -4.7998 20.5801 -4.7998c26.5098 0 48 21.4902 48 48s-21.4902 48 -48 48
s-48 -21.4902 -48 -48c0 -7.40039 1.80957 -14.3203 4.7998 -20.5801l-150.109 -150.11l-14.6904 14.6904l93.29 279.86c6.66406 19.9902 22.9258 35.5879 43.3096 41.3496zM497.94 373.83c18.75 -18.7598 18.75 -49.1602 0 -67.9102l-56.5508 -56.5498l-128.02 128.02
l56.5498 56.5508c18.75 18.75 49.1602 18.75 67.9102 0z" />
    <glyph glyph-name="pencil-ruler" unicode="&#xf5ae;" 
d="M109.46 203.96l-100.17 100.18c-12.3896 12.3906 -12.3799 32.4707 0 44.8604l89.71 89.71c12.3896 12.3896 32.4697 12.3896 44.8604 0l33.6396 -33.6504l-61.6797 -61.6797c-3.10059 -3.08984 -3.10059 -8.11035 0 -11.21l11.21 -11.21
c1.43359 -1.43652 3.41797 -2.32617 5.60547 -2.32617c2.18848 0 4.16992 0.889648 5.60449 2.32617l61.6797 61.6797l44.1201 -44.1201zM497.93 320.76l-46.0195 -46.0293l-113.2 113.199l46.0205 46.0107c18.7695 18.7598 49.1895 18.7598 67.9492 0l45.25 -45.25
c18.75 -18.7607 18.7607 -49.1709 0 -67.9307zM316.08 365.29l113.2 -113.19l-296.92 -296.93l-107.45 -18.8398c-14.5 -2.5498 -27.1201 10.0703 -24.5898 24.5596l18.7598 107.44zM502.71 79.8604c12.3896 -12.3906 12.3896 -32.4707 0 -44.8604l-89.71 -89.7002
c-12.3896 -12.3896 -32.4697 -12.3896 -44.8604 0l-100.21 100.2l134.58 134.56l44.1406 -44.1396l-61.6807 -61.6797c-3.08984 -3.08984 -3.08984 -8.11035 0 -11.21l11.21 -11.21c3.08984 -3.10059 8.11035 -3.10059 11.21 0l61.6807 61.6797z" />
    <glyph glyph-name="plane-arrival" unicode="&#xf5af;" horiz-adv-x="640" 
d="M624 0c8.83984 0 16 -7.16016 16 -16v-32c0 -8.83984 -7.16016 -16 -16 -16h-608c-8.83984 0 -16 7.16016 -16 16v32c0 8.83984 7.16016 16 16 16h608zM44.8096 242.34c-6.5498 5.91016 -12.3896 14.3398 -12.5791 23.25l-0.230469 101.78
c0.19043 10.8799 10.3799 18.7002 20.7197 15.8799l39.7305 -10.8301c5.00977 -1.36035 9.08984 -5.04004 11.0195 -9.92969l27.5898 -67.8799l102.2 -27.8408l-47.9199 164.211c-0.189453 11.1191 10.1504 19.3193 20.71 16.4395l65.0898 -17.7295
c5.70996 -1.56055 10.1504 -6.10059 11.6602 -11.9102l100.36 -191.851l97.5098 -26.5596c26.4805 -7.20996 51.5498 -20.1797 70.8301 -40c21.6396 -22.25 27.2002 -40.46 23.3701 -54.96c-3.81055 -14.5 -17.5801 -27.4404 -47.25 -35.71
c-26.4404 -7.36035 -54.5205 -5.85059 -81 1.35938l-287.601 78.3506c-9.58496 2.61621 -18.2998 7.45605 -25.4697 13.9297z" />
    <glyph glyph-name="plane-departure" unicode="&#xf5b0;" horiz-adv-x="640" 
d="M624 0c8.83984 0 16 -7.16016 16 -16v-32c0 -8.83984 -7.16016 -16 -16 -16h-608c-8.83984 0 -16 7.16016 -16 16v32c0 8.83984 7.16016 16 16 16h608zM80.5498 106.73l-76.21 82.9697c-7.62012 8.95996 -4.87012 22.7803 5.57031 28.0801l40.1299 20.3701
c2.41504 1.22461 5.18066 1.91504 8.07227 1.91504c2.875 0 5.59277 -0.682617 7.99805 -1.89551l72.3496 -36.4697l103.21 52.3799l-156.22 98.0996c-8.08008 8.87988 -5.5 23.1201 5.16992 28.5303l65.75 33.3701c2.41504 1.22559 5.18164 1.91699 8.07324 1.91699
c3.67383 0 7.08984 -1.11621 9.92676 -3.02734l218.7 -82.0596l98.5098 49.9902c26.7402 13.5596 56.4297 21.4199 86.2803 19.4795c33.5098 -2.17969 51.04 -12.8799 58.25 -27.4502c7.22949 -14.5596 5.23926 -35.1699 -13.0703 -63.6494
c-16.3096 -25.3701 -40.2803 -44.7402 -67.0205 -58.3105l-290.96 -147.649c-8.88574 -4.51562 -19.001 -7.10645 -29.6396 -7.12012l-130.54 -0.180664c-9.22949 -0.00976562 -18.0498 3.87012 -24.3301 10.7109z" />
    <glyph glyph-name="prescription" unicode="&#xf5b1;" horiz-adv-x="384" 
d="M301.26 96l78.0605 -78.0498c6.25 -6.25 6.25 -16.3799 0 -22.6299l-22.6299 -22.6299c-6.25 -6.25 -16.3809 -6.25 -22.6309 0l-78.0596 78.0596l-78.0498 -78.0703c-6.25 -6.25 -16.3799 -6.25 -22.6299 0l-22.6299 22.6299c-6.25 6.25 -6.25 16.3809 0 22.6309
l78.0596 78.0596l-128 128h-18.75v-80c0 -8.83984 -7.16016 -16 -16 -16h-32c-8.83984 0 -16 7.16016 -16 16v256c0 8.83984 7.16016 16 16 16h144c53.0195 0 96 -42.9805 96 -96c0 -48.8896 -36.6904 -88.7998 -83.96 -94.7803l83.96 -83.96l78.0596 78.0605
c6.25 6.25 16.3809 6.25 22.6309 0l22.6299 -22.6299c6.25 -6.25 6.25 -16.3809 0 -22.6309zM64 352v-64h96c17.6396 0 32 14.3604 32 32s-14.3604 32 -32 32h-96z" />
    <glyph glyph-name="sad-cry" unicode="&#xf5b3;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248c0 -90 -48.2002 -168.7 -120 -212.1v180.1c0 8.7998 -7.2002 16 -16 16s-16 -7.2002 -16 -16v-196.7c-29.5 -12.3994 -62 -19.2998 -96 -19.2998s-66.5 6.90039 -96 19.2998v196.7c0 8.7998 -7.2002 16 -16 16s-16 -7.2002 -16 -16
v-180.1c-71.7998 43.3994 -120 122 -120 212.1c0 137 111 248 248 248zM182.5 223.5l9.7002 -8.5c2.5 -2.2998 7.89941 -4.7002 13.7002 -1.59961c4.39941 2.39941 6.89941 7.39941 6.09961 12.3994c-4 25.2002 -34.2002 42.1006 -59.9004 42.1006
c-25.6992 0 -55.8994 -16.9004 -59.8994 -42.1006c-0.799805 -5 1.7002 -10 6.09961 -12.3994c4.40039 -2.40039 9.90039 -1.7002 13.7002 1.59961l9.5 8.5c14.7998 13.2002 46.2002 13.2002 61 0zM248 32c26.5 0 48 28.7002 48 64s-21.5 64 -48 64s-48 -28.7002 -48 -64
s21.5 -64 48 -64zM397.8 213.5c4.40039 2.40039 6.7998 7.40039 6.2002 12.2998c-4 25.2002 -34.2002 42.1006 -59.9004 42.1006c-25.6992 0 -55.8994 -16.9004 -59.8994 -42.1006c-0.799805 -5 1.7002 -10 6.09961 -12.3994
c4.40039 -2.40039 9.90039 -1.7002 13.7002 1.59961l9.59961 8.59961c14.8008 13.2002 46.2002 13.2002 61 0l9.5 -8.5c2.5 -2.2998 7.90039 -4.69922 13.7002 -1.59961z" />
    <glyph glyph-name="sad-tear" unicode="&#xf5b4;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM328 272c-17.7002 0 -32 -14.2998 -32 -32s14.2998 -32 32 -32s32 14.2998 32 32s-14.2998 32 -32 32zM152 32c26.5 0 48 21 48 47c0 20 -28.5 60.4004 -41.5996 77.7998
c-3.2002 4.2998 -9.60059 4.2998 -12.8008 0c-13.0996 -17.3994 -41.5996 -57.7998 -41.5996 -77.7998c0 -26 21.5 -47 48 -47zM168 208c17.7002 0 32 14.2998 32 32s-14.2998 32 -32 32s-32 -14.2998 -32 -32s14.2998 -32 32 -32zM338.2 53.7998
c13.2998 -16.0996 38.2998 4 24.5 20.4004c-28.4004 34.2002 -70.2998 53.7998 -114.7 53.7998c-21.2002 0 -21.2002 -32 0 -32c34.9004 0 67.7998 -15.4004 90.2002 -42.2002z" />
    <glyph glyph-name="shuttle-van" unicode="&#xf5b6;" horiz-adv-x="640" 
d="M628.88 237.35c7.17969 -8.62988 11.1201 -19.5 11.1201 -30.7295v-110.62c0 -17.6699 -14.3301 -32 -32 -32h-32c0 -53.0195 -42.9805 -96 -96 -96s-96 42.9805 -96 96h-128c0 -53.0195 -42.9805 -96 -96 -96s-96 42.9805 -96 96h-32c-17.6699 0 -32 14.3301 -32 32v288
c0 17.6699 14.3301 32 32 32h425.52c14.8184 -0.00292969 28.0625 -6.70312 36.8701 -17.2695zM64 256h96v96h-96v-96zM160 16c26.5098 0 48 21.4902 48 48s-21.4902 48 -48 48s-48 -21.4902 -48 -48s21.4902 -48 48 -48zM320 256v96h-96v-96h96zM480 16
c26.5098 0 48 21.4902 48 48s-21.4902 48 -48 48s-48 -21.4902 -48 -48s21.4902 -48 48 -48zM384 256h146.02l-80 96h-66.0195v-96z" />
    <glyph glyph-name="signature" unicode="&#xf5b7;" horiz-adv-x="640" 
d="M623.2 256c9.09961 0.599609 16.7998 -7.09961 16.5996 -16.2002v-32.0996c0 -8.5 -6.7002 -15.1006 -15.2002 -15.7998c-39.3994 -3.2002 -105.399 -51 -138.399 -65.8008c-34.2998 -15.3994 -66.7002 -30 -102.3 -30c-28.2002 0 -50.2002 8.5 -65.5 25.3008
c-22.7002 24.8994 -22.8008 55.2998 -20.6006 83.7998c-56.5 -45.1006 -169 -153.601 -211.2 -195.8c-6.09961 -6.2002 -14.2998 -9.40039 -22.5996 -9.40039c-27 0 -36.5 27 -29.7002 43.9004l98.2002 245.6c8 19.9004 -14.2998 38.7998 -32.7002 27.0996l-58 -38.8994
c-7.5 -4.7998 -17.3994 -2.60059 -22.0996 4.89941l-17.2002 27c-4.7002 7.5 -2.5 17.4004 4.90039 22.1006l54.8994 36.8994c76.5 48.7002 160.101 -26.8994 129.7 -102.8l-41.5 -103.7c105.2 101.2 144.4 124.5 169.5 126
c54.4004 3.10059 43.7998 -68.0996 42.7002 -76.0996c-4.7002 -35.7002 -1.2998 -51.9004 21.2998 -51.9004c21.9004 0 47 11.3008 76.0996 24.4004c37.4004 16.7998 111.301 68 163.101 71.5z" />
    <glyph glyph-name="smile-beam" unicode="&#xf5b8;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM112 224.6c-0.700195 -8.5 10.7998 -11.8994 15.0996 -4.5l9.5 17c7.7002 13.7002 19.2002 21.6006 31.5 21.6006c12.3008 0 23.8008 -7.90039 31.5 -21.6006l9.5 -17
c4.10059 -7.39941 15.6006 -4.09961 14.9004 4.5c-3.2998 42.1006 -32.2002 71.4004 -56 71.4004s-52.7002 -29.2998 -56 -71.4004zM362.8 101.8c13.5 16.2002 -11 36.7002 -24.5996 20.5c-22.4004 -26.7998 -55.2002 -42.2002 -90.2002 -42.2002
s-67.7998 15.3008 -90.2002 42.2002c-13.5996 16.2002 -38.0996 -4.2002 -24.5996 -20.5c28.5 -34.2002 70.2998 -53.7998 114.8 -53.7998s86.2998 19.5996 114.8 53.7998zM369 220.1c4.09961 -7.39941 15.7002 -4.09961 15.0996 4.5
c-3.2998 42.1006 -32.1992 71.4004 -56 71.4004c-23.7998 0 -52.6992 -29.2998 -56 -71.4004c-0.699219 -8.5 10.8008 -11.7998 14.9004 -4.5l9.5 17c7.7002 13.7002 19.2002 21.6006 31.5 21.6006s23.7998 -7.90039 31.5 -21.6006z" />
    <glyph glyph-name="solar-panel" unicode="&#xf5ba;" horiz-adv-x="640" 
d="M431.98 -0.00976562c8.84961 0.00976562 16.0293 -7.16992 16.0195 -16.0205l-0.0400391 -31.7295c-0.00976562 -8.82031 -7.16016 -15.9707 -15.9795 -15.9805l-223.961 -0.259766c-8.84961 -0.00976562 -16.0293 7.16992 -16.0195 16.0195l0.0498047 31.7305
c0.00976562 8.83008 7.16016 15.9805 15.9805 15.9902l47.9795 0.0498047v32.21h128v-32.0596zM585.2 421.26c58.1094 -342.42 54.7803 -321.39 54.7598 -325.47c-0.0800781 -17.2305 -14.3604 -31.79 -32.5898 -31.79h-574.74c-18.3096 0 -32.6299 14.6797 -32.5996 32
c0.00976562 3.91992 -3.35059 -17.1602 54.7598 325.26c2.62012 15.4307 16.21 26.7402 32.1396 26.7402h466.13c15.9307 0 29.5205 -11.3096 32.1406 -26.7402zM259.83 384l-9.77051 -96h139.87l-9.76953 96h-120.33zM184.66 128l11.4102 112h-105.971l-19.0098 -112
h113.57zM200.95 288l9.76953 96h-96.1895l-16.29 -96h102.71zM233.77 128h172.45l-11.3994 112h-149.65zM429.27 384l9.77051 -96h102.71l-16.29 96h-96.1904zM455.33 128h113.58l-19.0098 112h-105.971z" />
    <glyph glyph-name="spa" unicode="&#xf5bb;" horiz-adv-x="576" 
d="M568.25 256c4.41016 0.0195312 7.79004 -3.40039 7.75 -7.82031c-0.230469 -27.9199 -7.12988 -126.13 -88.7695 -199.3c-84.04 -81.8301 -167.23 -80.8799 -199.23 -80.8799s-115.21 -0.94043 -199.23 80.8799c-81.6299 73.1602 -88.5391 171.38 -88.7695 199.3
c-0.0400391 4.41992 3.33984 7.83984 7.75 7.82031c29.04 -0.129883 135.01 -6.16016 213.84 -83c33.1201 -29.6299 53.3604 -63.2998 66.4102 -94.8604c13.0498 31.5605 33.29 65.2305 66.4102 94.8604c78.8301 76.8398 184.8 82.8701 213.84 83zM287.98 145.4
c-12.9727 19.0527 -27.9248 36.124 -45.04 51.46c-18.7207 18.25 -38.8506 32.6895 -59.2207 44.3896c16.4707 70.4404 51.75 132.93 96.7402 172.07c4.12012 3.58008 11.0303 3.58008 15.1396 0c45.0107 -39.1699 80.29 -101.721 96.7305 -172.221
c-20.6797 -11.8799 -41.1699 -26.5693 -60.2598 -45.1797c-16.4902 -14.7402 -31.2705 -31.6699 -44.0898 -50.5195z" />
    <glyph glyph-name="splotch" unicode="&#xf5bc;" 
d="M472.29 252.11c48.54 -16.6201 53.8301 -73.8301 8.9502 -96.79l-62 -31.7402c-17.8301 -9.12988 -29.2803 -25.2002 -30.6299 -42.9902l-4.7002 -61.8594c-3.41016 -44.79 -65.1299 -66.7803 -104.45 -37.2207l-54.3203 40.8301
c-15.6201 11.7305 -36.96 16.1201 -57.0693 11.7305l-69.96 -15.2803c-50.6504 -11.0596 -94.0801 32.5596 -73.4902 73.8096l28.4297 56.9805c8.18066 16.3799 6.44043 35.1699 -4.63965 50.2402l-38.54 52.4199c-27.9004 37.9502 6.97949 86.8994 59.0303 82.8301
l71.8799 -5.62012c20.6602 -1.62012 40.9395 5.59961 54.2002 19.3096l46.1396 47.6699c33.4102 34.5107 98.3994 21.1504 109.979 -22.6201l15.9902 -60.4492c4.60059 -17.3799 18.8604 -31.7002 38.1406 -38.3008z" />
    <glyph glyph-name="spray-can" unicode="&#xf5bd;" 
d="M224 416v-96h-128v96c0 17.6699 14.3301 32 32 32h64c17.6699 0 32 -14.3301 32 -32zM480 320c17.6699 0 32 -14.3301 32 -32s-14.3301 -32 -32 -32s-32 14.3301 -32 32s14.3301 32 32 32zM224 288c53.0195 0 96 -42.9805 96 -96v-224c0 -17.6699 -14.3301 -32 -32 -32
h-256c-17.6699 0 -32 14.3301 -32 32v224c0 53.0195 42.9805 96 96 96h128zM160 32c44.1797 0 80 35.8203 80 80s-35.8203 80 -80 80s-80 -35.8203 -80 -80s35.8203 -80 80 -80zM480 352c-17.6699 0 -32 14.3301 -32 32s14.3301 32 32 32s32 -14.3301 32 -32
s-14.3301 -32 -32 -32zM384 320c17.6699 0 32 -14.3301 32 -32s-14.3301 -32 -32 -32s-32 14.3301 -32 32s14.3301 32 32 32zM288 416c17.6699 0 32 -14.3301 32 -32s-14.3301 -32 -32 -32s-32 14.3301 -32 32s14.3301 32 32 32zM384 416c17.6699 0 32 -14.3301 32 -32
s-14.3301 -32 -32 -32s-32 14.3301 -32 32s14.3301 32 32 32zM480 224c17.6699 0 32 -14.3301 32 -32s-14.3301 -32 -32 -32s-32 14.3301 -32 32s14.3301 32 32 32z" />
    <glyph glyph-name="stamp" unicode="&#xf5bf;" 
d="M32 -64v64h448v-64h-448zM416 192c53.0195 0 96 -42.9805 96 -96v-32c0 -17.6699 -14.3301 -32 -32 -32h-448c-17.6699 0 -32 14.3301 -32 32v32c0 53.0195 42.9805 96 96 96h66.5596c16.2607 0 29.4404 13.1797 29.4404 29.4404v0.0693359
c0 31.79 -9.98047 62.0605 -23.3096 90.9102c-5.57031 12.04 -8.69043 25.4199 -8.69043 39.5801c0 58.6699 52.6201 105.04 113.25 94.4902c38.79 -6.75 70.4902 -38.6699 77.2598 -77.4502c3.85059 -22.0303 0.0605469 -42.8096 -9.0498 -60.4199
c-12.5801 -24.3105 -21.46 -50.3506 -21.46 -77.7197v-9.45996c0 -16.2607 13.1797 -29.4404 29.4404 -29.4404h66.5596z" />
    <glyph glyph-name="star-half-alt" unicode="&#xf5c0;" horiz-adv-x="536" 
d="M508.55 276.49c26.25 -3.7998 36.7705 -36.1006 17.7305 -54.6006l-105.91 -102.979l25.0303 -145.49c3.55957 -20.79 -13.0605 -37.4004 -31.6602 -37.4004c-4.91016 0 -9.9707 1.16016 -14.8301 3.71094l-130.94 68.6992l-130.95 -68.6797
c-4.86914 -2.58008 -9.93945 -3.75 -14.8691 -3.75c-18.5801 0 -35.1699 16.6699 -31.6104 37.4502l25.0596 145.479l-105.89 103c-19.0303 18.5 -8.50977 50.79 17.7402 54.5898l146.38 21.29l65.4297 132.381c5.90039 11.9092 17.29 17.8096 28.6904 17.8096
c11.4697 0 22.9395 -5.98047 28.8193 -17.8096l65.4102 -132.391zM386.81 153.29l82.6504 80.3799l-114.229 16.6299l-25.0107 3.64062l-11.1797 22.6299l-51.0303 103.29l-0.0292969 -317.19l22.3799 -11.7402l102.13 -53.5898l-19.5205 113.45l-4.2793 24.8799z" />
    <glyph glyph-name="suitcase-rolling" unicode="&#xf5c1;" horiz-adv-x="384" 
d="M336 288c26.5098 0 48 -21.4902 48 -48v-224c0 -26.5098 -21.4902 -48 -48 -48h-16v-16c0 -8.83984 -7.16016 -16 -16 -16h-32c-8.83984 0 -16 7.16016 -16 16v16h-128v-16c0 -8.83984 -7.16016 -16 -16 -16h-32c-8.83984 0 -16 7.16016 -16 16v16h-16
c-26.5098 0 -48 21.4902 -48 48v224c0 26.5098 21.4902 48 48 48h288zM320 72v16c0 4.41992 -3.58008 8 -8 8h-240c-4.41992 0 -8 -3.58008 -8 -8v-16c0 -4.41992 3.58008 -8 8 -8h240c4.41992 0 8 3.58008 8 8zM320 168v16c0 4.41992 -3.58008 8 -8 8h-240
c-4.41992 0 -8 -3.58008 -8 -8v-16c0 -4.41992 3.58008 -8 8 -8h240c4.41992 0 8 3.58008 8 8zM144 400v-80h-48v80c0 26.5098 21.4902 48 48 48h96c26.5098 0 48 -21.4902 48 -48v-80h-48v80h-96z" />
    <glyph glyph-name="surprise" unicode="&#xf5c2;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM136 240c0 -17.7002 14.2998 -32 32 -32s32 14.2998 32 32s-14.2998 32 -32 32s-32 -14.2998 -32 -32zM248 32c35.2998 0 64 28.7002 64 64s-28.7002 64 -64 64
s-64 -28.7002 -64 -64s28.7002 -64 64 -64zM328 208c17.7002 0 32 14.2998 32 32s-14.2998 32 -32 32s-32 -14.2998 -32 -32s14.2998 -32 32 -32z" />
    <glyph glyph-name="swatchbook" unicode="&#xf5c3;" 
d="M434.66 280.29c5.77344 -5.79004 9.34473 -13.7861 9.34473 -22.5996c0 -8.81445 -3.57129 -16.8008 -9.34473 -22.5908l-210.66 -211.1v271.12l75.4297 75.5195l0.0703125 0.0703125v0c5.75781 5.73633 13.707 9.28516 22.4688 9.28516
c8.79883 0 16.7676 -3.57715 22.5312 -9.35547l90.1602 -90.3496v0zM480 128c17.6611 0 32 -14.3389 32 -32v-128c0 -17.6611 -14.3389 -32 -32 -32h-300c2.17969 1.91016 4.62012 3.41992 6.67969 5.49023l186.41 186.51h106.91zM192 416v-384
c0 -52.9834 -43.0166 -96 -96 -96s-96 43.0166 -96 96v384c0 17.6611 14.3389 32 32 32h128c17.6611 0 32 -14.3389 32 -32zM96 8c13.2461 0 24 10.7539 24 24s-10.7539 24 -24 24s-24 -10.7539 -24 -24s10.7539 -24 24 -24zM128 192v64h-64v-64h64zM128 320v64h-64v-64h64z
" />
    <glyph glyph-name="swimmer" unicode="&#xf5c4;" horiz-adv-x="640" 
d="M189.61 137.42c-5.04004 4.65039 -10.3906 8.34961 -15.8604 11.5801l68.6299 98.04c7.36035 10.5 16.3398 19.5498 26.7197 26.9404l80.0205 57.1699c25.54 18.2598 57.8301 24.96 88.5596 18.3799l100.351 -21.5303c25.9297 -5.55957 42.4297 -31.0801 36.8799 -57
c-5.56055 -25.9102 -31.0898 -42.4102 -57 -36.8799l-100.351 21.5303c-4.33984 0.90918 -8.97949 -0.0302734 -12.6191 -2.61035l-18 -12.8604l112.84 -80.5996c-17.5107 -1.04004 -34.5303 -8.4502 -49.3906 -22.1602
c-3.5293 -3.25977 -15.2695 -9.41992 -34.3896 -9.41992s-30.8496 6.16016 -34.3896 9.41992c-16.0107 14.7705 -34.5 22.5801 -53.46 22.5801h-16.3008c-18.96 0 -37.4395 -7.80957 -53.46 -22.5801c-3.5293 -3.25977 -15.2695 -9.41992 -34.3896 -9.41992
s-30.8496 6.16016 -34.3896 9.41992zM624 96c8.83984 0 16 -7.16016 16 -16v-32c0 -8.83984 -7.16016 -16 -16 -16h-16c-38.6201 0 -72.7197 12.1797 -96 31.8398c-23.2803 -19.6494 -57.3799 -31.8398 -96 -31.8398s-72.7197 12.1797 -96 31.8398
c-23.2803 -19.6494 -57.3799 -31.8398 -96 -31.8398s-72.7197 12.1797 -96 31.8398c-23.2803 -19.6494 -57.3799 -31.8398 -96 -31.8398h-16c-8.83984 0 -16 7.16016 -16 16v32c0 8.83984 7.16016 16 16 16h16c26.04 0 45.7998 8.41992 56.0703 17.9004
c8.89941 8.20996 19.6602 14.0996 31.7695 14.0996h16.2998c12.1104 0 22.8701 -5.88965 31.7705 -14.0996c10.29 -9.48047 30.0498 -17.9004 56.0898 -17.9004s45.7998 8.41992 56.0703 17.9004c8.89941 8.20996 19.6602 14.0996 31.7695 14.0996h16.2998
c12.1104 0 22.8701 -5.88965 31.7705 -14.0996c10.29 -9.48047 30.0498 -17.9004 56.0898 -17.9004s45.7998 8.41992 56.0703 17.9004c8.89941 8.20996 19.6602 14.0996 31.7695 14.0996h16.2998c12.1104 0 22.8701 -5.88965 31.7705 -14.0996
c10.29 -9.48047 30.0498 -17.9004 56.0898 -17.9004h16zM112 192c-44.1797 0 -80 35.8203 -80 80s35.8203 80 80 80s80 -35.8203 80 -80s-35.8203 -80 -80 -80z" />
    <glyph glyph-name="swimming-pool" unicode="&#xf5c5;" horiz-adv-x="640" 
d="M624 32c8.83984 0 16 -7.16016 16 -16v-32c0 -8.83984 -7.16016 -16 -16 -16h-16c-38.6201 0 -72.7197 12.1797 -96 31.8398c-23.2803 -19.6494 -57.3799 -31.8398 -96 -31.8398s-72.7197 12.1797 -96 31.8398c-23.2803 -19.6494 -57.3799 -31.8398 -96 -31.8398
s-72.7197 12.1797 -96 31.8398c-23.2803 -19.6494 -57.3799 -31.8398 -96 -31.8398h-16c-8.83984 0 -16 7.16016 -16 16v32c0 8.83984 7.16016 16 16 16h16c26.04 0 45.7998 8.41992 56.0703 17.9004c8.89941 8.20996 19.6602 14.0996 31.7695 14.0996h16.2998
c12.1104 0 22.8701 -5.88965 31.7705 -14.0996c10.29 -9.48047 30.0498 -17.9004 56.0898 -17.9004s45.7998 8.41992 56.0703 17.9004c8.89941 8.20996 19.6602 14.0996 31.7695 14.0996h16.2998c12.1104 0 22.8701 -5.88965 31.7705 -14.0996
c10.29 -9.48047 30.0498 -17.9004 56.0898 -17.9004s45.7998 8.41992 56.0703 17.9004c8.89941 8.20996 19.6602 14.0996 31.7695 14.0996h16.2998c12.1104 0 22.8701 -5.88965 31.7705 -14.0996c10.29 -9.48047 30.0498 -17.9004 56.0898 -17.9004h16zM224 64
c-19.1201 0 -30.8604 6.16016 -34.3896 9.42969c-9.16992 8.4502 -19.2002 14.3398 -29.6104 18.0703v228.5c0 52.9404 43.0596 96 96 96s96 -43.0596 96 -96v-16c0 -8.83984 -7.16016 -16 -16 -16h-32c-8.83984 0 -16 7.16016 -16 16v16c0 17.6396 -14.3604 32 -32 32
s-32 -14.3604 -32 -32v-96h192v96c0 52.9404 43.0596 96 96 96s96 -43.0596 96 -96v-16c0 -8.83984 -7.16016 -16 -16 -16h-32c-8.83984 0 -16 7.16016 -16 16v16c0 17.6396 -14.3604 32 -32 32s-32 -14.3604 -32 -32v-228.51
c-10.4102 -3.73047 -20.4404 -9.61035 -29.6104 -18.0703c-3.5293 -3.25977 -15.2695 -9.41992 -34.3896 -9.41992v96h-192v-96z" />
    <glyph glyph-name="tint-slash" unicode="&#xf5c7;" horiz-adv-x="640" 
d="M633.82 -10.0996c6.97949 -5.43066 8.22949 -15.4805 2.81934 -22.4502l-19.6396 -25.2705c-5.42969 -6.97949 -15.4805 -8.23926 -22.46 -2.80957l-588.36 454.729c-6.97949 5.43066 -8.22949 15.4805 -2.80957 22.4502l19.6396 25.2705
c5.41992 6.97949 15.4805 8.22949 22.46 2.80957l186.82 -144.399c21.6201 33.7197 42.9697 73.3398 58.4902 125.68c9 30.1201 50.5 28.7803 58.4395 0c46.9902 -158.48 146.78 -200.061 146.78 -311.82c0 -5.70996 -0.509766 -11.2998 -1.03027 -16.8701zM144 114.09
c0 29.7803 7.30957 54.6299 18.7197 78.1299l273.681 -211.52c-31.0303 -27.7402 -71.6904 -44.7002 -116.4 -44.7002c-97.2803 0 -176 79.6504 -176 178.09z" />
    <glyph glyph-name="tired" unicode="&#xf5c8;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM281.8 250.3c-7.7002 -4.7002 -7.7002 -15.8994 0 -20.5996l80 -48c11.5 -6.7998 24.1006 7.59961 15.4004 18l-33.6006 40.2998l33.6006 40.2998
c8.59961 10.2998 -3.7998 24.9004 -15.4004 18zM118.8 280.3l33.6006 -40.2998l-33.6006 -40.2998c-8.59961 -10.4004 3.90039 -24.7998 15.4004 -18l80 48c7.7998 4.7002 7.7998 15.8994 0 20.5996l-80 48c-11.6006 6.90039 -24 -7.7002 -15.4004 -18zM248 160
c-51.9004 0 -115.3 -43.7998 -123.2 -106.7c-1.7002 -13.3994 7.90039 -24.5996 17.7002 -20.3994c25.9004 11.0996 64.4004 17.3994 105.5 17.3994s79.5996 -6.2998 105.5 -17.3994c9.7002 -4.2002 19.4004 6.7998 17.7002 20.3994
c-7.90039 62.9004 -71.2998 106.7 -123.2 106.7z" />
    <glyph glyph-name="tooth" unicode="&#xf5c9;" horiz-adv-x="448" 
d="M443.98 351.75c10.1299 -41.6299 0.419922 -80.8203 -21.5303 -110.43c-23.3604 -31.5703 -32.6807 -68.6504 -36.29 -107.351c-4.41016 -47.1602 -10.3301 -94.1699 -20.9404 -140.319l-7.7998 -33.9502c-3.18945 -13.8701 -15.4902 -23.7002 -29.6699 -23.7002
c-13.9697 0 -26.1504 9.5498 -29.54 23.1602l-34.4697 138.42c-4.56055 18.3096 -20.96 31.1602 -39.7598 31.1602c-18.8008 0 -35.2002 -12.8398 -39.7607 -31.1602l-34.4697 -138.42c-3.38965 -13.6104 -15.5703 -23.1602 -29.54 -23.1602
c-14.1797 0 -26.4795 9.83008 -29.6699 23.7002l-7.7998 33.9502c-10.6104 46.1592 -16.54 93.1592 -20.9404 140.319c-3.60938 38.6904 -12.9297 75.7803 -36.29 107.351c-21.9199 29.6201 -31.6299 68.8096 -21.5 110.43c11.0098 45.2197 47.1104 82.0498 92.0098 93.7197
c23.4307 6.08984 46.1104 0.540039 66.8105 -10.3096l100.51 -64.6201c7.83984 -5.05957 17.6504 -2.15039 22.1104 4.7998c4.78027 7.44043 2.62012 17.3398 -4.7998 22.1104l-28.3203 18.21c3.54004 1.75 7.25 3.08984 10.5 5.47949
c26.1396 19.2305 56.9502 32.6904 89.1396 24.3301c44.9004 -11.6602 81 -48.5 92.0107 -93.7197z" />
    <glyph glyph-name="umbrella-beach" unicode="&#xf5ca;" horiz-adv-x="640" 
d="M115.38 311.1c-10.0801 3.66992 -14.1104 16.3203 -7.41992 24.7207c59.75 74.8398 152.65 116.689 248.53 111.8c-52.79 -29.4102 -103.811 -92.1602 -139 -173.7zM247.63 262.94c44.4902 101.979 114.74 171.14 172.76 171.149c7.95996 0 15.6904 -1.2998 23.0908 -4
c61.3291 -22.3203 78.3896 -132.6 42.6299 -253.979zM521.48 387.5c76.5293 -57.9199 120.76 -149.67 118.439 -245.36c-0.259766 -10.7393 -11.4795 -17.8398 -21.5703 -14.1699l-102.619 37.3604c17.5293 58.75 24.6895 117.09 18.9492 166.979
c-2.37012 20.5908 -6.97949 38.8906 -13.1992 55.1904zM560 0.0195312c8.83984 0 16 -7.15918 16 -16v-32.0098c0 -8.83984 -7.16016 -16.0098 -16 -16.0098h-544c-8.83984 0 -16 7.16992 -16 16.0098v32.0098c0 8.85059 7.16016 16.0107 16 16.0107h236.96l72.9004 200.37
l60.1396 -21.9004l-64.9404 -178.48h238.94z" />
    <glyph glyph-name="vector-square" unicode="&#xf5cb;" 
d="M512 320c0 -17.6699 -14.3301 -32 -32 -32v-192c17.6699 0 32 -14.3301 32 -32v-96c0 -17.6699 -14.3301 -32 -32 -32h-96c-17.6699 0 -32 14.3301 -32 32h-192c0 -17.6699 -14.3301 -32 -32 -32h-96c-17.6699 0 -32 14.3301 -32 32v96c0 17.6699 14.3301 32 32 32v192
c-17.6699 0 -32 14.3301 -32 32v96c0 17.6699 14.3301 32 32 32h96c17.6699 0 32 -14.3301 32 -32h192c0 17.6699 14.3301 32 32 32h96c17.6699 0 32 -14.3301 32 -32v-96zM416 384v-32h32v32h-32zM64 384v-32h32v32h-32zM96 0v32h-32v-32h32zM448 0v32h-32v-32h32zM416 96
v192h-32c-17.6699 0 -32 14.3301 -32 32v32h-192v-32c0 -17.6699 -14.3301 -32 -32 -32h-32v-192h32c17.6699 0 32 -14.3301 32 -32v-32h192v32c0 17.6699 14.3301 32 32 32h32z" />
    <glyph glyph-name="weight-hanging" unicode="&#xf5cd;" 
d="M510.28 2.13965c8.33008 -33.3096 -14.6602 -66.1396 -46.2998 -66.1396h-415.95c-31.6504 0 -54.6406 32.8301 -46.3105 66.1396l73.0498 292.13c3.79004 15.1807 16.4404 25.7207 30.8701 25.7207h60.25c-3.58008 10.0498 -5.87988 20.7197 -5.87988 32
c0 53.0195 42.9805 96 96 96c53.0205 0 96 -42.9805 96 -96c0 -11.2803 -2.30957 -21.9502 -5.87988 -32h60.25c14.4297 0 27.0703 -10.5303 30.8701 -25.7207zM256 320c17.6396 0 32 14.3604 32 32s-14.3604 32 -32 32s-32 -14.3604 -32 -32s14.3604 -32 32 -32z" />
    <glyph glyph-name="wine-glass-alt" unicode="&#xf5ce;" horiz-adv-x="288" 
d="M216 -16c22.0898 0 40 -17.9102 40 -40c0 -4.41992 -3.58008 -8 -8 -8h-208c-4.41992 0 -8 3.58008 -8 8c0 22.0898 17.9102 40 40 40h40v117.18c-68.4697 15.8906 -118.05 79.9102 -111.4 154.16l15.96 178.11c0.730469 8.24023 7.55078 14.5498 15.7002 14.5498h223.48
c8.16016 0 14.9697 -6.30957 15.71 -14.5498l15.9502 -178.101c6.64941 -74.25 -42.9307 -138.27 -111.4 -154.159v-117.19h40zM61.75 400l-7.16992 -80h178.84l-7.16992 80h-164.5z" />
    <glyph glyph-name="air-freshener" unicode="&#xf5d0;" 
d="M224 288c53 0 96 -43 96 -96v-224c0 -17.625 -14.375 -32 -32 -32h-256c-17.625 0 -32 14.375 -32 32v224c0 53 43 96 96 96h128zM160 32c44.125 0 80 35.875 80 80s-35.875 80 -80 80s-80 -35.875 -80 -80s35.875 -80 80 -80zM224 416v-96h-128v96
c0 17.625 14.375 32 32 32h64c17.625 0 32 -14.375 32 -32zM381.781 396.422l-29.7812 -12.4219l-12.4385 -29.7812c-0.592773 -1.21875 -2.18652 -2.21875 -3.56152 -2.21875s-2.96875 1 -3.59375 2.21875l-12.4062 29.7812l-29.7812 12.4219
c-1.21875 0.609375 -2.21875 2.21875 -2.21875 3.57812c0 1.375 1 2.96875 2.21875 3.57812l29.7812 12.4219l12.4062 29.7812c0.625 1.21875 2.21875 2.21875 3.59375 2.21875s2.96875 -1 3.56152 -2.21875l12.4385 -29.7812l29.7812 -12.4219
c1.21875 -0.609375 2.21875 -2.20312 2.21875 -3.57812c0 -1.35938 -1 -2.96875 -2.21875 -3.57812zM448 384l-29.7812 12.4219c-1.21875 0.609375 -2.21875 2.21875 -2.21875 3.57812c0 1.375 1 2.96875 2.21875 3.57812l29.7812 12.4219l12.4062 29.7812
c0.625 1.21875 2.21875 2.21875 3.59375 2.21875s2.96875 -1 3.56152 -2.21875l12.4385 -29.7812l29.7812 -12.4219c1.21875 -0.609375 2.21875 -2.20312 2.21875 -3.57812c0 -1.35938 -1 -2.96875 -2.21875 -3.57812l-29.7812 -12.4219l-12.4385 -29.7812
c-0.592773 -1.21875 -2.18652 -2.21875 -3.56152 -2.21875s-2.96875 1 -3.59375 2.21875zM480 224l29.7812 -12.4219c1.21875 -0.609375 2.21875 -2.20312 2.21875 -3.57812c0 -1.35938 -1 -2.96875 -2.21875 -3.57812l-29.7812 -12.4219l-12.4385 -29.7812
c-0.592773 -1.21875 -2.18652 -2.21875 -3.56152 -2.21875s-2.96875 1 -3.59375 2.21875l-12.4062 29.7812l-29.7812 12.4219c-1.21875 0.609375 -2.21875 2.21875 -2.21875 3.57812c0 1.375 1 2.96875 2.21875 3.57812l29.7812 12.4219l12.4062 29.7812
c0.625 1.21875 2.21875 2.21875 3.59375 2.21875s2.96875 -1 3.56152 -2.21875zM445.781 300.422l-29.7812 -12.4219l-12.4385 -29.7812c-0.592773 -1.21875 -2.18652 -2.21875 -3.56152 -2.21875s-2.96875 1 -3.59375 2.21875l-12.4062 29.7812l-29.7812 12.4219
c-1.21875 0.609375 -2.21875 2.21875 -2.21875 3.57812c0 1.375 1 2.96875 2.21875 3.57812l29.7812 12.4219l12.4062 29.7812c0.625 1.21875 2.21875 2.21875 3.59375 2.21875s2.96875 -1 3.56152 -2.21875l12.4385 -29.7812l29.7812 -12.4219
c1.21875 -0.609375 2.21875 -2.20312 2.21875 -3.57812c0 -1.35938 -1 -2.96875 -2.21875 -3.57812z" />
    <glyph glyph-name="apple-alt" unicode="&#xf5d1;" horiz-adv-x="448" 
d="M350.85 319c25.9707 -4.66992 47.2705 -18.6699 63.9199 -42c14.6504 -20.6699 24.6406 -46.6699 29.9609 -78c4.66992 -28.6699 4.31934 -57.3301 -1 -86c-7.99023 -47.3301 -23.9707 -87 -47.9404 -119c-28.6396 -38.6699 -64.5898 -58 -107.87 -58
c-10.6602 0 -22.2998 3.33008 -34.96 10c-8.66016 5.33008 -18.3096 8 -28.9697 8s-20.2998 -2.66992 -28.9707 -8c-12.6592 -6.66992 -24.2998 -10 -34.96 -10c-43.2793 0 -79.2295 19.3301 -107.869 58c-23.9707 32 -39.9502 71.6699 -47.9404 119
c-5.32031 28.6699 -5.66992 57.3301 -1 86c5.32031 31.3301 15.3096 57.3301 29.96 78c16.6504 23.3301 37.9502 37.3301 63.9199 42c15.9805 2.66992 37.9502 0.330078 65.9199 -7c23.9697 -6.66992 44.2803 -14.6699 60.9307 -24
c16.6494 9.33008 36.96 17.3301 60.9297 24c27.9795 7.33008 49.96 9.66992 65.9395 7zM295.91 360c-9.32031 -8.66992 -21.6504 -15 -36.96 -19c-10.6602 -3.33008 -22.2998 -5 -34.96 -5l-14.9805 1c-1.33008 9.33008 -1.33008 20 0 32
c2.66992 24 10.3203 42.3301 22.9707 55c9.31934 8.66992 21.6494 15 36.96 19c10.6592 3.33008 22.2998 5 34.96 5l14.9795 -1l1 -15c0 -12.6699 -1.66992 -24.3301 -4.99023 -35c-3.98926 -15.3301 -10.3096 -27.6699 -18.9795 -37z" />
    <glyph glyph-name="atom" unicode="&#xf5d2;" horiz-adv-x="448" 
d="M223.999 224c17.6484 -0.03125 31.9727 -14.3525 32.0078 -32c0 -17.6611 -14.3389 -32 -32 -32s-32 14.3389 -32 32c0 17.6582 14.335 31.9961 31.9922 32zM438.171 320c16.3789 -29.375 15.0039 -73.125 -25.1309 -128c40.1348 -54.875 41.5098 -98.625 25.1309 -128
c-29.1309 -52.375 -101.646 -43.625 -116.275 -41.875c-21.5039 -51.25 -54.2617 -86.125 -97.8965 -86.125s-76.3906 34.875 -97.8965 86.125c-14.627 -1.75 -87.1426 -10.5 -116.273 41.875c-16.3789 29.375 -15.0039 73.125 25.1289 128
c-40.1328 54.875 -41.5078 98.625 -25.1289 128c10.877 19.5 40.5078 50.625 116.273 41.875c21.5059 51.25 54.2617 86.125 97.8965 86.125s76.3926 -34.875 97.8965 -86.125c75.7656 8.875 105.398 -22.375 116.275 -41.875zM63.3389 96
c3.75195 -6.625 19.0059 -11.875 43.6348 -11c-2.75 13 -5.125 26.375 -6.75 40.125c-7.75195 6.25 -15.0039 12.625 -21.8809 19.125c-15.1289 -23.5 -19.0039 -41 -15.0039 -48.25zM100.224 258.875c1.625 13.5 3.875 26.875 6.75 40.25c-1.875 0 -4 0.375 -5.75 0.375
c-21.5059 0 -34.5078 -5.375 -37.8848 -11.5c-4 -7.25 -0.125 -24.75 15.0039 -48.25c6.87695 6.5 14.1289 12.875 21.8809 19.125zM223.999 384c-9.50195 0 -22.2539 -13.5 -33.8828 -37.25c11.2539 -3.75 22.5059 -8 33.8828 -12.875
c11.3789 4.875 22.6309 9.125 33.8828 12.875c-11.627 23.75 -24.3809 37.25 -33.8828 37.25zM223.999 0c9.50195 0 22.2559 13.5 33.8828 37.25c-11.252 3.75 -22.5039 8 -33.8828 12.875c-11.377 -4.875 -22.6289 -9.125 -33.8828 -12.875
c11.6289 -23.75 24.3809 -37.25 33.8828 -37.25zM223.999 112c44.1533 0 80 35.8467 80 80s-35.8467 80 -80 80s-80 -35.8467 -80 -80s35.8467 -80 80 -80zM384.659 96c4 7.25 0.125 24.75 -15.0039 48.25c-6.875 -6.5 -14.127 -12.875 -21.8789 -19.125
c-1.625 -13.75 -4 -27.125 -6.75195 -40.125c24.6309 -0.875 40.0098 4.375 43.6348 11zM369.655 239.75c15.1289 23.5 19.0039 41 15.0039 48.25c-3.375 6.125 -16.3789 11.5 -37.8828 11.5c-1.75 0 -3.87695 -0.375 -5.75195 -0.375
c2.87695 -13.375 5.12695 -26.75 6.75195 -40.25c7.75195 -6.25 15.0039 -12.625 21.8789 -19.125z" />
    <glyph glyph-name="bone" unicode="&#xf5d7;" horiz-adv-x="640" 
d="M598.88 203.44c-9.42969 -4.70996 -9.42969 -18.1709 -0.00976562 -22.8809c25.2002 -12.5996 41.1201 -38.3496 41.1201 -66.5293v-7.64062c0 -41.0898 -33.2998 -74.3896 -74.3799 -74.3896c-32.0107 0 -60.4404 20.4902 -70.5703 50.8604
c-6.53027 19.5996 -10.7305 45.1396 -38.1104 45.1396h-273.87c-26.5098 0 -30.4297 -22.1104 -38.1094 -45.1396c-10.1299 -30.3701 -38.5498 -50.8604 -70.5703 -50.8604c-41.0801 0 -74.3799 33.2998 -74.3799 74.3896v7.64062
c0 28.1699 15.9199 53.9297 41.1201 66.5293c9.42969 4.70996 9.42969 18.1709 0 22.8809c-25.2002 12.5996 -41.1201 38.3594 -41.1201 66.5293v7.64062c0 41.0898 33.2998 74.3896 74.3896 74.3896c32.0107 0 60.4404 -20.4902 70.5605 -50.8604
c6.53027 -19.5996 10.7295 -45.1396 38.1094 -45.1396h273.87c26.5107 0 30.4307 22.1104 38.1104 45.1396c10.1299 30.3701 38.5498 50.8604 70.5703 50.8604c41.0898 0 74.3896 -33.2998 74.3896 -74.3896v-7.64062c0 -28.1699 -15.9199 -53.9297 -41.1201 -66.5293z" />
    <glyph glyph-name="book-reader" unicode="&#xf5da;" 
d="M352 352c0 -53.0195 -42.9805 -96 -96 -96s-96 42.9805 -96 96s42.9805 96 96 96s96 -42.9805 96 -96zM233.59 206.9c4.10059 -2.51074 6.41016 -6.79004 6.41992 -11.46v-245.99c0 -10.1602 -11.1094 -16.5898 -20.4795 -11.8701
c-61.0498 30.75 -149.38 39.1396 -193.04 41.4297c-14.9004 0.770508 -26.4902 12.7207 -26.4902 27.0498v222.801c0 15.6299 13.5498 28.0098 29.7998 27.0898c48.3604 -2.75 144.46 -12.7305 203.79 -49.0498zM482.2 255.95
c16.25 0.919922 29.7998 -11.46 29.8096 -27.0898v-222.82c0 -14.3301 -11.5898 -26.2803 -26.4902 -27.0596c-43.6494 -2.29004 -131.93 -10.6807 -192.97 -41.4004c-9.39941 -4.73047 -20.54 1.70996 -20.54 11.9004v245.789c0 4.6709 2.31055 9.12012 6.41016 11.6309
c59.3203 36.3193 155.43 46.3096 203.78 49.0498z" />
    <glyph glyph-name="brain" unicode="&#xf5dc;" horiz-adv-x="576" 
d="M208 448c35.2998 0 64 -28.7002 64 -64v-376c0 -39.7998 -32.2002 -72 -72 -72c-31.7998 0 -58.4004 20.7002 -68 49.2002c-3.90039 -0.700195 -7.90039 -1.2002 -12 -1.2002c-39.7998 0 -72 32.2002 -72 72c0 4.7998 0.5 9.5 1.40039 14.0996
c-29 12 -49.4004 40.6006 -49.4004 73.9004c0 29.7002 16.2998 55.2998 40.2998 69.0996c-5.09961 10.6006 -8.2998 22.3008 -8.2998 34.9004c0 33.4004 20.5 62 49.7002 74c-1.10059 4.5 -1.7002 9.2002 -1.7002 14c0 35.2998 28.7002 64 64 64
c0.799805 0 1.40039 -0.200195 2.2002 -0.200195c7.09961 27.7002 31.8994 48.2002 61.7998 48.2002zM576 144c0 -33.2998 -20.4004 -61.9004 -49.4004 -73.9004c0.900391 -4.59961 1.40039 -9.2998 1.40039 -14.0996c0 -39.7998 -32.2002 -72 -72 -72
c-4.09961 0 -8.09961 0.5 -12 1.2002c-9.59961 -28.5 -36.2002 -49.2002 -68 -49.2002c-39.7998 0 -72 32.2002 -72 72v376c0 35.4004 28.7002 64 64 64c29.9004 0 54.7002 -20.5 61.7998 -48.2002c0.700195 0 1.40039 0.200195 2.2002 0.200195
c35.2998 0 64 -28.7002 64 -64c0 -4.7998 -0.700195 -9.5 -1.7002 -14c29.2002 -12 49.7002 -40.5996 49.7002 -74c0 -12.5996 -3.09961 -24.2998 -8.2998 -34.9004c24 -13.7998 40.2998 -39.3994 40.2998 -69.0996z" />
    <glyph glyph-name="car-alt" unicode="&#xf5de;" horiz-adv-x="480" 
d="M438.66 235.67c24.1201 -9.16992 41.3398 -32.3301 41.3398 -59.6699v-48c0 -16.1299 -6.16016 -30.6797 -16 -41.9297v-54.0703c0 -17.6699 -14.3301 -32 -32 -32h-32c-17.6699 0 -32 14.3301 -32 32v32h-256v-32c0 -17.6699 -14.3301 -32 -32 -32h-32
c-17.6699 0 -32 14.3301 -32 32v54.0703c-9.83984 11.2598 -16 25.8096 -16 41.9297v48c0 27.3398 17.2197 50.5 41.3398 59.6699l11.2402 28.0996l19.9297 49.8301c17.1104 42.7705 57.9307 70.4004 103.99 70.4004h127c46.0703 0 86.8799 -27.6299 103.99 -70.4004
l19.9297 -49.8301zM131.93 289.83l-19.9297 -49.8301h256l-19.9297 49.8301c-7.29004 18.2197 -24.9404 30.1699 -44.5703 30.1699h-127c-19.6299 0 -37.2803 -11.9502 -44.5703 -30.1699zM80 128.2c19.2002 0 48 -3.19043 48 15.9502
c0 19.1396 -28.7998 47.8496 -48 47.8496s-32 -12.7598 -32 -31.9004c0 -19.1396 12.7998 -31.8994 32 -31.8994zM400 128.2c19.2002 0 32 12.7598 32 31.8994c0 19.1406 -12.7998 31.9004 -32 31.9004s-48 -28.71 -48 -47.8496c0 -19.1406 28.7998 -15.9502 48 -15.9502z
" />
    <glyph glyph-name="car-battery" unicode="&#xf5df;" 
d="M480 320c17.6699 0 32 -14.3301 32 -32v-256c0 -17.6699 -14.3301 -32 -32 -32h-448c-17.6699 0 -32 14.3301 -32 32v256c0 17.6699 14.3301 32 32 32h32v48c0 8.83984 7.16016 16 16 16h96c8.83984 0 16 -7.16016 16 -16v-48h128v48c0 8.83984 7.16016 16 16 16h96
c8.83984 0 16 -7.16016 16 -16v-48h32zM192 184v16c0 4.41992 -3.58008 8 -8 8h-112c-4.41992 0 -8 -3.58008 -8 -8v-16c0 -4.41992 3.58008 -8 8 -8h112c4.41992 0 8 3.58008 8 8zM448 184v16c0 4.41992 -3.58008 8 -8 8h-40v40c0 4.41992 -3.58008 8 -8 8h-16
c-4.41992 0 -8 -3.58008 -8 -8v-40h-40c-4.41992 0 -8 -3.58008 -8 -8v-16c0 -4.41992 3.58008 -8 8 -8h40v-40c0 -4.41992 3.58008 -8 8 -8h16c4.41992 0 8 3.58008 8 8v40h40c4.41992 0 8 3.58008 8 8z" />
    <glyph glyph-name="car-crash" unicode="&#xf5e1;" horiz-adv-x="640" 
d="M143.25 227.19l-12.4199 -46.3701c-3.00977 -11.25 -3.62988 -22.8906 -2.41016 -34.3906l-35.2002 -28.9795c-6.56934 -5.41016 -16.3096 0.429688 -14.6201 8.76953l15.4404 76.6807c1.05957 5.25977 -2.66016 10.2793 -8 10.79l-77.8604 7.5498
c-8.46973 0.819336 -11.2295 11.8301 -4.13965 16.54l65.1504 43.2998c4.45996 2.96973 5.37988 9.15039 1.97949 13.29l-49.71 60.4102c-5.41016 6.56934 0.429688 16.2998 8.78027 14.6201l76.6797 -15.4404c5.25977 -1.05957 10.2803 2.66016 10.7998 8l7.5498 77.8604
c0.820312 8.47949 11.8301 11.2295 16.5508 4.13965l43.2998 -65.1396c2.96973 -4.45996 9.14941 -5.37988 13.29 -1.98047l60.3994 49.71c6.57031 5.41016 16.3008 -0.429688 14.6201 -8.76953l-11.3301 -56.1602c-2.70996 -3.0498 -5.42969 -6.08984 -7.90918 -9.40039
l-32.1504 -42.9697l-10.71 -14.3203c-32.7305 -8.75977 -59.1797 -34.5293 -68.0801 -67.7393zM637.82 94.6797l-12.4199 -46.3594c-3.13086 -11.6807 -9.38086 -21.6104 -17.5508 -29.3604c-2.72852 -2.58398 -5.62695 -4.90137 -8.75977 -7l-13.9902 -52.2295
c-1.13965 -4.27051 -3.09961 -8.10059 -5.64941 -11.3809c-7.66992 -9.83984 -20.7402 -14.6797 -33.54 -11.25l-30.9102 8.28027c-17.0703 4.57031 -27.2002 22.1201 -22.6299 39.1904l8.28027 30.9102l-247.28 66.2598l-8.28027 -30.9102
c-4.57031 -17.0703 -22.1201 -27.2002 -39.1895 -22.6299l-30.9102 8.28027c-12.7998 3.42969 -21.7002 14.1592 -23.4199 26.5098c-0.570312 4.12012 -0.350586 8.41992 0.790039 12.6797l13.9893 52.2305c-1.63086 3.31445 -3.02148 6.85352 -4.08984 10.4492
c-3.2002 10.79 -3.64941 22.5205 -0.519531 34.2002l12.4199 46.3701c5.30957 19.7998 19.3594 34.8301 36.8896 42.21c5.75 2.42285 12.0352 4.06543 18.4902 4.71973l18.1299 24.2305l32.1504 42.9697c3.44922 4.61035 7.18945 8.90039 11.1992 12.8398
c8 7.89062 17.0303 14.4404 26.7402 19.5107c4.86035 2.54004 9.89062 4.70996 15.0498 6.48926c10.3301 3.58008 21.1904 5.62988 32.2402 6.04004s22.3105 -0.819336 33.4307 -3.7998l122.68 -32.8701c11.1201 -2.97949 21.4795 -7.54004 30.8496 -13.4297
c14.0459 -8.81934 25.7959 -20.5068 34.6904 -34.5c8.81934 -13.8799 14.6396 -29.8398 16.6797 -46.9902l6.36035 -53.29l3.58984 -30.0498c10.3115 -7.44531 18.2578 -17.8018 22.7402 -29.9297c4.38965 -11.8799 5.29004 -25.1904 1.75 -38.3906zM255.58 213.66
c-18.5498 4.96973 -34.21 -4.04004 -39.1699 -22.5303s4.10938 -34.1201 22.6494 -39.0898c18.5508 -4.96973 45.54 -15.5098 50.4902 2.97949c4.95996 18.4902 -15.4297 53.6709 -33.9697 58.6406zM546.19 185.49l-6.36035 53.29
c-0.580078 4.87012 -1.88965 9.5293 -3.82031 13.8594c-5.7998 12.9902 -17.2002 23.0107 -31.4199 26.8203l-122.68 32.8701c-3.96777 1.0625 -8.13672 1.62891 -12.4375 1.62891c-15.7295 0 -29.6641 -7.53418 -38.4229 -19.2393l-32.1494 -42.9697l172 -46.0801z
M564.68 130.84c-18.5498 4.96973 -53.7998 -15.3096 -58.75 -33.79c-4.94922 -18.4902 23.6904 -22.8594 42.2402 -27.8301c18.5498 -4.96973 34.21 4.04004 39.1699 22.5303c4.9502 18.4805 -4.10938 34.1201 -22.6602 39.0898z" />
    <glyph glyph-name="car-side" unicode="&#xf5e4;" horiz-adv-x="640" 
d="M544 256c53.0195 0 96 -42.9805 96 -96v-80c0 -8.83984 -7.16016 -16 -16 -16h-48c0 -53.0195 -42.9805 -96 -96 -96s-96 42.9805 -96 96h-128c0 -53.0195 -42.9805 -96 -96 -96s-96 42.9805 -96 96h-48c-8.83984 0 -16 7.16016 -16 16v112
c0 29.79 20.4404 54.5996 48 61.7402l47.9102 122.029c9.71973 24.3008 33.25 40.2305 59.4199 40.2305h213.91c20.2227 -0.00292969 38.2441 -9.35645 49.9795 -24.0195l108.78 -135.98h16zM160 16c26.4697 0 48 21.5303 48 48s-21.5303 48 -48 48s-48 -21.5303 -48 -48
s21.5303 -48 48 -48zM232 256v96h-76.6699l-38.4004 -96h115.07zM280 256h166.04l-76.7998 96h-89.2402v-96zM480 16c26.4697 0 48 21.5303 48 48s-21.5303 48 -48 48s-48 -21.5303 -48 -48s21.5303 -48 48 -48z" />
    <glyph glyph-name="charging-station" unicode="&#xf5e7;" horiz-adv-x="576" 
d="M336 0c8.83984 0 16 -7.16016 16 -16v-32c0 -8.83984 -7.16016 -16 -16 -16h-320c-8.83984 0 -16 7.16016 -16 16v32c0 8.83984 7.16016 16 16 16h320zM544 320h16c8.83984 0 16 -7.16016 16 -16v-32c0 -35.7598 -23.6201 -65.6904 -56 -75.9297v-120.07
c0 -44.4102 -38.29 -80.0498 -83.5898 -75.6201c-39.4902 3.85059 -68.4102 39.3398 -68.4102 79.0098v24.6104c0 22.0898 -17.9102 40 -40 40h-8v-112h-288v352c0 35.3496 28.6504 64 64 64h160c35.3496 0 64 -28.6504 64 -64v-192h8c48.5996 0 88 -39.4004 88 -88v-28
c0 -16.9902 15.2197 -30.5 32.7402 -27.6104c13.7598 2.27051 23.2598 15.2402 23.2598 29.1904v118.49c-32.3799 10.2393 -56 40.1699 -56 75.9297v32c0 8.83984 7.16016 16 16 16h16v48c0 8.83984 7.16016 16 16 16s16 -7.16016 16 -16v-48h32v48
c0 8.83984 7.16016 16 16 16s16 -7.16016 16 -16v-48zM260.09 272.24c4.62012 6.97949 -1.14941 15.7598 -10.3896 15.7598h-57.7002l11.5996 50.79c2.02051 6.66992 -3.71973 13.21 -11.5996 13.21h-68c-6.01953 0 -11.0996 -3.90039 -11.8896 -9.11035l-16 -107
c-0.959961 -6.2998 4.63965 -11.8896 11.8896 -11.8896h59.3496l-23.0195 -83.0801c-1.7998 -6.63965 4 -12.9199 11.6699 -12.9199c4.17969 0 8.19043 1.91016 10.3896 5.24023z" />
    <glyph glyph-name="directions" unicode="&#xf5eb;" 
d="M502.61 214.68c12.5195 -12.5293 12.5195 -32.8301 0 -45.3594l-223.931 -223.931c-12.5293 -12.5293 -32.8398 -12.5293 -45.3594 0l-223.931 223.931c-12.5195 12.5293 -12.5195 32.8301 0 45.3594l223.931 223.931c12.5293 12.5195 32.8398 12.5195 45.3594 0z
M401.63 202.12c3.42969 3.16992 3.42969 8.58984 0 11.7598l-84.21 77.7305c-5.12988 4.72949 -13.4297 1.08984 -13.4297 -5.87988v-53.7305h-112c-17.6699 0 -32 -14.3301 -32 -32v-80c0 -4.41992 3.58008 -8 8 -8h32c4.41992 0 8 3.58008 8 8v64h96v-53.7305
c0 -6.97949 8.30957 -10.6094 13.4297 -5.87988z" />
    <glyph glyph-name="draw-polygon" unicode="&#xf5ee;" horiz-adv-x="448" 
d="M384 96c35.3496 0 64 -28.6504 63.9902 -64c0 -35.3496 -28.6504 -64 -64 -64c-23.6299 0 -44.0303 12.9502 -55.1201 32h-209.75c-11.0801 -19.0498 -31.4902 -32 -55.1201 -32c-35.3496 0 -64 28.6504 -64 64c0 23.6299 12.9502 44.04 32 55.1299v209.75
c-19.0498 11.0801 -32 31.4902 -32 55.1201c0 35.3496 28.6504 64 64 64c23.6299 0 44.04 -12.9502 55.1201 -32h209.76c11.0801 19.0498 31.4902 32 55.1201 32c35.3496 0 64 -28.6504 64 -64s-28.6504 -64 -64 -64c-0.349609 0 -0.669922 0.0898438 -1.01953 0.0996094
l-39.2002 -65.3193c5.08008 -9.16992 8.21973 -19.5605 8.21973 -30.7803s-3.15039 -21.6104 -8.21973 -30.7803l39.2002 -65.3193c0.349609 0 0.669922 0.0996094 1.01953 0.0996094zM96 87.1201c9.61816 -5.58398 17.5361 -13.502 23.1201 -23.1201h208.36
l-38.4609 64.0996c-0.349609 0 -0.669922 -0.0996094 -1.01953 -0.0996094c-35.3496 0 -64 28.6504 -64 64s28.6504 64 64 64c0.349609 0 0.669922 -0.0898438 1.01953 -0.0996094l38.4609 64.0996h-208.36c-5.58691 -9.61523 -13.5049 -17.5332 -23.1201 -23.1201v-209.76z
M272 192c0 -8.82031 7.17969 -16 16 -16s16 7.17969 16 16s-7.17969 16 -16 16s-16 -7.17969 -16 -16zM400 352c0 8.82031 -7.17969 16 -16 16s-16 -7.17969 -16 -16s7.17969 -16 16 -16s16 7.17969 16 16zM64 368c-8.82031 0 -16 -7.17969 -16 -16s7.17969 -16 16 -16
s16 7.17969 16 16s-7.17969 16 -16 16zM48 32c0 -8.82031 7.17969 -16 16 -16s16 7.17969 16 16s-7.17969 16 -16 16s-16 -7.17969 -16 -16zM384 16c8.82031 0 16 7.17969 16 16s-7.17969 16 -16 16s-16 -7.17969 -16 -16s7.17969 -16 16 -16z" />
    <glyph glyph-name="laptop-code" unicode="&#xf5fc;" horiz-adv-x="640" 
d="M255.03 186.35l-58.3506 58.3408c-6.25 6.25 -6.25 16.3799 0 22.6299l58.3398 58.3398c6.25 6.25 16.3809 6.25 22.6309 0l11.3096 -11.3105c6.25 -6.25 6.25 -16.3799 0 -22.6299l-35.71 -35.7197l35.7197 -35.71c6.25 -6.25 6.25 -16.3799 0 -22.6299
l-11.3096 -11.3105c-6.25 -6.25 -16.3799 -6.25 -22.6299 0zM351.04 197.65c-6.25 6.25 -6.25 16.3799 0 22.6299l35.71 35.7197l-35.71 35.71c-6.25 6.25 -6.25 16.3799 0 22.6299l11.3096 11.3105c6.25 6.25 16.3809 6.25 22.6309 0l58.3398 -58.3408
c6.25 -6.25 6.25 -16.3799 0 -22.6299l-58.3398 -58.3398c-6.25 -6.25 -16.3809 -6.25 -22.6309 0zM624 32c8.7998 0 16 -7.2002 16 -16v-16c0 -35.2002 -28.7998 -64 -64 -64h-512c-35.2002 0 -64 28.7998 -64 64v16c0 8.7998 7.2002 16 16 16h239.23
c-0.25 -14.5303 14.0791 -32 32.7695 -32h60.7998c18.0303 0 32 12.1904 32.7402 32h242.46zM576 400v-336h-512v336c0 26.4004 21.5996 48 48 48h416c26.4004 0 48 -21.5996 48 -48zM512 128v256h-384v-256h384z" />
    <glyph glyph-name="layer-group" unicode="&#xf5fd;" 
d="M12.4102 299.98c-16.5498 7.50977 -16.5498 32.5293 0 40.0391l232.95 105.671c3.23633 1.47949 6.87695 2.30371 10.666 2.30371s7.38672 -0.824219 10.624 -2.30371l232.93 -105.681c16.5498 -7.50977 16.5498 -32.5195 0 -40.0293l-232.94 -105.671
c-6.7998 -3.08984 -14.4893 -3.08984 -21.29 0zM499.59 211.7c16.5498 -7.5 16.5498 -32.5 0 -40l-232.95 -105.59c-6.7998 -3.08008 -14.4893 -3.08008 -21.29 0l-232.939 105.59c-16.5498 7.5 -16.5498 32.5 0 40l58.0996 26.3301l161.63 -73.2705
c7.57031 -3.42969 15.5908 -5.16992 23.8604 -5.16992s16.2998 1.74023 23.8604 5.16992l161.64 73.2705zM499.59 83.9004c16.5498 -7.5 16.5498 -32.5 0 -40l-232.95 -105.591c-6.7998 -3.0791 -14.4893 -3.0791 -21.29 0l-232.939 105.591
c-16.5498 7.5 -16.5498 32.5 0 40l57.8799 26.2295l161.85 -73.3701c7.57031 -3.42969 15.5908 -5.16992 23.8604 -5.16992s16.2998 1.74023 23.8604 5.16992l161.859 73.3701z" />
    <glyph glyph-name="lungs" unicode="&#xf604;" horiz-adv-x="640" 
d="M636.11 57.8496c2.58984 -9.68945 3.88965 -19.6396 3.88965 -29.6299c0 -61.2295 -62.4805 -105.439 -125.24 -88.6201l-59.5 15.9502c-42.1797 11.3105 -71.2598 47.4697 -71.2598 88.6201v87.4902l85.8398 -57.2305
c1.26855 -0.845703 2.79395 -1.35156 4.43164 -1.35156c2.77734 0 5.22559 1.41992 6.6582 3.57227l8.87988 13.3096c0.845703 1.26758 1.35254 2.79395 1.35254 4.43164c0 2.77734 -1.41992 5.22559 -3.57227 6.6582l-167.59 111.72l-167.59 -111.72
c-2.15332 -1.43262 -3.55957 -3.88379 -3.55957 -6.66113c0 -1.6377 0.493164 -3.16113 1.33984 -4.42871l8.87988 -13.3096c1.43262 -2.15332 3.88379 -3.56055 6.66113 -3.56055c1.6377 0 3.16016 0.494141 4.42871 1.33984l85.8398 57.2305v-87.4902
c0 -41.1504 -29.0801 -77.3203 -71.2598 -88.6201l-59.5 -15.9502c-62.7598 -16.8193 -125.24 27.3906 -125.24 88.6201c0 9.99023 1.2998 19.9404 3.88965 29.6299c21.6699 81.3008 56.04 159.15 102.011 231.021c22.1191 34.5703 36.0693 63.1299 80.0498 63.1299
c38.6895 0 70.0498 -29.4199 70.0498 -65.71v-60.1104l32.8799 21.9199c4.4502 2.9707 7.12012 7.95996 7.12012 13.3105v170.59c0 8.83984 7.16016 16 16 16h16c8.83984 0 16 -7.16016 16 -16v-170.59c0 -5.55273 2.81934 -10.4414 7.12012 -13.3105l32.8799 -21.9199
v60.1104c0 36.29 31.3604 65.71 70.0498 65.71c43.9805 0 57.9307 -28.5596 80.0498 -63.1299c45.9707 -71.8701 80.3408 -149.72 102.011 -231.021z" />
    <glyph glyph-name="microscope" unicode="&#xf610;" 
d="M160 128c-17.6699 0 -32 14.3301 -32 32v224c0 17.6699 14.3301 32 32 32v16c0 8.83984 7.16016 16 16 16h64c8.83984 0 16 -7.16016 16 -16v-16c17.6699 0 32 -14.3301 32 -32v-224c0 -17.6699 -14.3301 -32 -32 -32h-12v-16c0 -8.83984 -7.16016 -16 -16 -16h-40
c-8.83984 0 -16 7.16016 -16 16v16h-12zM464 0c26.5098 0 48 -21.4902 48 -48c0 -8.83984 -7.16016 -16 -16 -16h-480c-8.83984 0 -16 7.16016 -16 16c0 26.5098 21.4902 48 48 48h272c70.5801 0 128 57.4199 128 128s-57.4199 128 -128 128v64
c105.88 0 192 -86.1201 192 -192c0 -49.2002 -18.7598 -93.9902 -49.29 -128h1.29004zM104 32c-4.41992 0 -8 3.58008 -8 8v16c0 4.41992 3.58008 8 8 8h208c4.41992 0 8 -3.58008 8 -8v-16c0 -4.41992 -3.58008 -8 -8 -8h-208z" />
    <glyph glyph-name="oil-can" unicode="&#xf613;" horiz-adv-x="640" 
d="M629.8 287.69c5.11035 1.45996 10.2002 -2.38086 10.1904 -7.69043v-18.0801c0 -2.12012 -0.839844 -4.16016 -2.33984 -5.66016l-212.261 -214.75c-6.00977 -6.08984 -14.21 -9.50977 -22.7598 -9.50977h-274.63c-17.6699 0 -32 14.3301 -32 32v46.54l-69.7197 12.6904
c-15.2207 2.75977 -26.2803 16.0195 -26.2803 31.4795v94.9502c0 17.9795 14.6699 32.0098 31.9297 32.0098c1.9873 0 3.9043 -0.181641 5.79004 -0.530273l138.28 -25.1396h56v48h-56c-8.83984 0 -16 7.16016 -16 16v16c0 8.83984 7.16016 16 16 16h160
c8.83984 0 16 -7.16016 16 -16v-16c0 -8.83984 -7.16016 -16 -16 -16h-56v-48h56.8896c10.2598 -0.00390625 20.0205 -2.46191 28.6201 -6.75977l50.4902 -25.2402zM96 159.33v62.4297l-48 8.73047v-62.4307zM549.33 74.6699c0 23.5605 42.6699 85.3301 42.6699 85.3301
s42.6699 -61.7598 42.6699 -85.3301s-19.0996 -42.6699 -42.6699 -42.6699s-42.6699 19.1104 -42.6699 42.6699z" />
    <glyph glyph-name="poop" unicode="&#xf619;" 
d="M451.36 78.8604c34.3301 -5.48047 60.6396 -34.9805 60.6396 -70.8604c0 -39.7598 -32.2402 -72 -72 -72h-368c-39.7598 0 -72 32.2402 -72 72c0 35.8799 26.3096 65.3799 60.6396 70.8604c-17.2998 13.1494 -28.6396 33.7295 -28.6396 57.1396
c0 39.7695 32.2402 72 72 72h14.0703c-13.4199 11.7305 -22.0703 28.7803 -22.0703 48c0 35.3496 28.6504 64 64 64h16c44.1797 0 80 35.8203 80 80c0 17.3799 -5.69043 33.3604 -15.1104 46.4805c4.95996 0.779297 9.94043 1.51953 15.1104 1.51953
c53.0195 0 96 -42.9805 96 -96c0 -11.2803 -2.30957 -21.9502 -5.87988 -32h5.87988c35.3496 0 64 -28.6504 64 -64c0 -19.2197 -8.65039 -36.2695 -22.0703 -48h14.0703c39.7598 0 72 -32.2305 72 -72c0 -23.4102 -11.3398 -43.9902 -28.6396 -57.1396z" />
    <glyph glyph-name="shapes" unicode="&#xf61f;" 
d="M128 192c70.6455 0 128 -57.3545 128 -128s-57.3545 -128 -128 -128s-128 57.3545 -128 128s57.3545 128 128 128zM507 246.86c14.2402 -24.3799 -3.58008 -54.8604 -32.0898 -54.8604h-213.82c-28.5098 0 -46.3301 30.4805 -32.0898 54.8604l106.93 182.85
c6.48828 10.9688 18.3906 18.3311 32.0469 18.3311c13.6553 0 25.6055 -7.3623 32.0938 -18.3311zM480 160c17.6611 0 32 -14.3389 32 -32v-160c0 -17.6611 -14.3389 -32 -32 -32h-160c-17.6611 0 -32 14.3389 -32 32v160c0 17.6611 14.3389 32 32 32h160z" />
    <glyph glyph-name="star-of-life" unicode="&#xf621;" horiz-adv-x="480" 
d="M471.99 113.57c7.66016 -4.41992 10.2793 -14.2002 5.85938 -21.8506l-32.0195 -55.4297c-4.41992 -7.66016 -14.21 -10.2803 -21.8701 -5.86035l-135.93 78.4307v-156.86c0 -8.83984 -7.16992 -16 -16.0107 -16h-64.0391c-8.84082 0 -16.0107 7.16016 -16.0107 16
v156.85l-135.93 -78.4297c-7.66016 -4.41016 -17.4502 -1.79004 -21.8701 5.86035l-32.0195 55.4297c-4.41992 7.65039 -1.80078 17.4404 5.85938 21.8604l135.931 78.4297l-135.931 78.4297c-7.66016 4.41992 -10.2793 14.21 -5.85938 21.8604l32.0195 55.4199
c4.41992 7.65039 14.21 10.2803 21.8701 5.86035l135.93 -78.4307v156.86c0 8.83984 7.16992 16 16.0107 16h64.0391c8.84082 0 16.0107 -7.16016 16.0107 -16v-156.85l135.93 78.4297c7.66016 4.41992 17.4502 1.79004 21.8701 -5.86035l32.0195 -55.4297
c4.41992 -7.66016 1.80078 -17.4404 -5.85938 -21.8604l-135.931 -78.4297z" />
    <glyph glyph-name="teeth" unicode="&#xf62e;" horiz-adv-x="640" 
d="M544 448c53.0195 0 96 -42.9805 96 -96v-320c0 -53.0195 -42.9805 -96 -96 -96h-448c-53.0195 0 -96 42.9805 -96 96v320c0 53.0195 42.9805 96 96 96h448zM160 80v64c0 8.83984 -7.16016 16 -16 16h-64c-8.83984 0 -16 -7.16016 -16 -16v-64
c0 -26.5098 21.4902 -48 48 -48s48 21.4902 48 48zM160 208v64c0 26.5098 -21.4902 48 -48 48s-48 -21.4902 -48 -48v-64c0 -8.83984 7.16016 -16 16 -16h64c8.83984 0 16 7.16016 16 16zM304 88v56c0 8.83984 -7.16016 16 -16 16h-80c-8.83984 0 -16 -7.16016 -16 -16v-56
c0 -30.9297 25.0703 -56 56 -56s56 25.0703 56 56zM304 208v88c0 30.9297 -25.0703 56 -56 56s-56 -25.0703 -56 -56v-88c0 -8.83984 7.16016 -16 16 -16h80c8.83984 0 16 7.16016 16 16zM448 88v56c0 8.83984 -7.16016 16 -16 16h-80c-8.83984 0 -16 -7.16016 -16 -16v-56
c0 -30.9297 25.0703 -56 56 -56s56 25.0703 56 56zM448 208v88c0 30.9297 -25.0703 56 -56 56s-56 -25.0703 -56 -56v-88c0 -8.83984 7.16016 -16 16 -16h80c8.83984 0 16 7.16016 16 16zM576 80v64c0 8.83984 -7.16016 16 -16 16h-64c-8.83984 0 -16 -7.16016 -16 -16v-64
c0 -26.5098 21.4902 -48 48 -48s48 21.4902 48 48zM576 208v64c0 26.5098 -21.4902 48 -48 48s-48 -21.4902 -48 -48v-64c0 -8.83984 7.16016 -16 16 -16h64c8.83984 0 16 7.16016 16 16z" />
    <glyph glyph-name="teeth-open" unicode="&#xf62f;" horiz-adv-x="640" 
d="M544 448c53.0195 0 96 -42.9805 96 -96v-64c0 -35.3496 -28.6602 -64 -64 -64h-512c-35.3398 0 -64 28.6504 -64 64v64c0 53.0195 42.9805 96 96 96h448zM160 272v32c0 26.5098 -21.4902 48 -48 48s-48 -21.4902 -48 -48v-32c0 -8.83984 7.16016 -16 16 -16h64
c8.83984 0 16 7.16016 16 16zM304 272v56c0 30.9297 -25.0703 56 -56 56s-56 -25.0703 -56 -56v-56c0 -8.83984 7.16016 -16 16 -16h80c8.83984 0 16 7.16016 16 16zM448 272v56c0 30.9297 -25.0703 56 -56 56s-56 -25.0703 -56 -56v-56c0 -8.83984 7.16016 -16 16 -16h80
c8.83984 0 16 7.16016 16 16zM576 272v32c0 26.5098 -21.4902 48 -48 48s-48 -21.4902 -48 -48v-32c0 -8.83984 7.16016 -16 16 -16h64c8.83984 0 16 7.16016 16 16zM576 128c35.3398 0 64 -28.6504 64 -64v-32c0 -53.0195 -42.9805 -96 -96 -96h-448
c-53.0195 0 -96 42.9805 -96 96v32c0 35.3496 28.6602 64 64 64h512zM160 48v32c0 8.83984 -7.16016 16 -16 16h-64c-8.83984 0 -16 -7.16016 -16 -16v-32c0 -26.5098 21.4902 -48 48 -48s48 21.4902 48 48zM304 56v24c0 8.83984 -7.16016 16 -16 16h-80
c-8.83984 0 -16 -7.16016 -16 -16v-24c0 -30.9297 25.0703 -56 56 -56s56 25.0703 56 56zM448 56v24c0 8.83984 -7.16016 16 -16 16h-80c-8.83984 0 -16 -7.16016 -16 -16v-24c0 -30.9297 25.0703 -56 56 -56s56 25.0703 56 56zM576 48v32c0 8.83984 -7.16016 16 -16 16h-64
c-8.83984 0 -16 -7.16016 -16 -16v-32c0 -26.5098 21.4902 -48 48 -48s48 21.4902 48 48z" />
    <glyph glyph-name="theater-masks" unicode="&#xf630;" horiz-adv-x="640" 
d="M206.86 202.85l-7.62988 -43.1797c-21.0908 -7.21973 -38.5 -18.2002 -49.9004 -30.9199c-2.41992 32.9004 21.6504 63.6504 57.5303 74.0996zM95.8096 153c5.87012 -33.1699 64.3203 -71.8096 111.931 -84.79c10.5596 -27.0996 25.9795 -50.5 39.5 -67.5801
c-3.25977 -0.339844 -6.41992 -0.799805 -10.0098 -0.799805c-68.1201 0 -190.221 61.5596 -204.45 142.08l-31.7305 179.51c-4.96973 28.0996 7.98047 56.0996 32.1504 69.5205c67.8193 37.6396 143.46 57.0596 220.12 57.0596c23.9199 0 47.9492 -1.88965 71.8594 -5.7002
c17.29 -2.76953 31.7803 -13.0498 41.7705 -27c-19.1299 -0.769531 -38.29 -2.2998 -57.1807 -5.31934c-19.8594 -3.1709 -37.6396 -12.5303 -51.5898 -26c-1.62012 0.0195312 -3.23926 0.189453 -4.84961 0.189453c-65.8896 0 -131.25 -16.9502 -189.01 -49.0098
c0.0400391 -0.0302734 -0.530273 -1.03027 -0.240234 -2.65039zM193.36 290.46c3.83984 -21.7002 -10.6904 -42.4004 -32.4404 -46.2197c-21.7598 -3.82031 -42.5 10.6699 -46.3398 32.3701c-0.730469 4.12012 -0.610352 8.15918 -0.0898438 12.0996
c10.8096 -5.57031 24.8301 -7.75 39.4795 -5.16992c14.6504 2.57031 27.0703 9.41016 35.3203 18.3203c1.83984 -3.53027 3.33984 -7.28027 4.07031 -11.4004zM606.8 327.1c24.1699 -13.4092 37.1201 -41.4092 32.1504 -69.5195l-31.7305 -179.51
c-15.3896 -87.0508 -156.83 -151.931 -219.859 -140.84c-63.0303 11.0791 -173.7 120.3 -158.311 207.35l31.7305 179.51c4.95996 28.1006 26.7295 50 54.04 54.3604c100.55 16.0596 203 -1.96973 291.979 -51.3506zM333.56 230.3
c-0.729492 -4.12012 -0.609375 -8.16016 -0.0791016 -12.1094c10.8096 5.56934 24.8291 7.75 39.4795 5.16992c14.6504 -2.57031 27.0703 -9.41016 35.3203 -18.3203c1.83984 3.53027 3.33984 7.28027 4.06934 11.4004c3.83008 21.6992 -10.6895 42.3896 -32.4492 46.2197
c-21.7607 3.83008 -42.5 -10.6602 -46.3408 -32.3604zM404.03 31.54c55.6699 -9.79004 108.2 23.7803 122.38 75.7197c-28.1104 -16.9697 -68.6504 -24.21 -111.93 -16.5996c-43.2803 7.60938 -78.8906 28.2402 -99.4902 53.7803
c-4.48047 -53.6309 33.3594 -103.11 89.04 -112.9zM534.33 182.88c1.83984 3.52051 3.33984 7.27051 4.07031 11.4004c3.83008 21.7002 -10.7002 42.3896 -32.4502 46.2197c-21.7598 3.82031 -42.5 -10.6699 -46.3398 -32.3701
c-0.730469 -4.12012 -0.610352 -8.16016 -0.0908203 -12.0996c10.8105 5.56934 24.8301 7.75 39.4805 5.16992c14.6504 -2.57031 27.0801 -9.41016 35.3301 -18.3203z" />
    <glyph glyph-name="traffic-light" unicode="&#xf637;" horiz-adv-x="384" 
d="M384 256c0 -41.7402 -26.7998 -76.9004 -64 -90.1201v-37.8799h64c0 -42.8398 -28.25 -78.6904 -66.9902 -91.0498c-12.4297 -57.6699 -63.6094 -100.95 -125.01 -100.95s-112.58 43.2803 -125.01 100.95c-38.7402 12.3594 -66.9902 48.21 -66.9902 91.0498h64v37.8799
c-37.2002 13.2197 -64 48.3799 -64 90.1201h64v37.8799c-37.2002 13.2197 -64 48.3799 -64 90.1201h64v32c0 17.6699 14.3301 32 32 32h192c17.6699 0 32 -14.3301 32 -32v-32h64c0 -41.7402 -26.7998 -76.9004 -64 -90.1201v-37.8799h64zM192 32
c26.5098 0 48 21.4902 48 48s-21.4902 48 -48 48s-48 -21.4902 -48 -48s21.4902 -48 48 -48zM192 160c26.5098 0 48 21.4902 48 48s-21.4902 48 -48 48s-48 -21.4902 -48 -48s21.4902 -48 48 -48zM192 288c26.5098 0 48 21.4902 48 48s-21.4902 48 -48 48
s-48 -21.4902 -48 -48s21.4902 -48 48 -48z" />
    <glyph glyph-name="truck-monster" unicode="&#xf63b;" horiz-adv-x="640" 
d="M624 224c8.83984 0 16 -7.16016 16 -16v-32c0 -8.83984 -7.16016 -16 -16 -16h-16.71c-29.21 38.6504 -75.0996 64 -127.28 64c-52.1797 0 -98.0693 -25.3496 -127.279 -64h-65.4502c-29.21 38.6504 -75.1006 64 -127.28 64s-98.0703 -25.3496 -127.28 -64h-16.7197
c-8.83984 0 -16 7.16016 -16 16v32c0 8.83984 7.16016 16 16 16h16v80c0 8.83984 7.16016 16 16 16h176v96c0 17.6699 14.3301 32 32 32h113.24c20.2227 -0.00292969 38.2441 -9.35645 49.9795 -24.0195l83.1807 -103.98h73.5996c17.6699 0 32 -14.3301 32 -32v-64h16z
M288 320h132.44l-51.2002 64h-81.2402v-64zM592 96c8.83984 0 16 -7.16016 16.0195 -16v-32c0 -8.83984 -7.15918 -16 -16 -16h-5.19922c-2.1709 -7.26172 -5.11426 -14.3359 -8.65039 -20.8896l3.66992 -3.66992c6.25 -6.25 6.25 -16.3809 0 -22.6309l-22.6299 -22.6299
c-6.25 -6.25 -16.3799 -6.25 -22.6299 0l-3.66992 3.66992c-6.62012 -3.58008 -13.5703 -6.44922 -20.9004 -8.64941v-5.2002c0 -8.83984 -7.16016 -16 -16 -16h-32c-8.83984 0 -16 7.16016 -16 16v5.2002c-7.33008 2.2002 -14.29 5.08008 -20.8994 8.64941
l-3.66992 -3.66992c-6.25 -6.25 -16.3809 -6.25 -22.6309 0l-22.6299 22.6299c-6.25 6.25 -6.25 16.3809 0 22.6309l3.66992 3.66992c-3.58008 6.60938 -6.44922 13.5596 -8.64941 20.8896h-5.2002c-8.83984 0 -16 7.16016 -16 16v32c0 8.83984 7.16016 16 16 16h5.2002
c2.16992 7.26172 5.11426 14.3359 8.64941 20.8896l-3.66992 3.66992c-6.25 6.25 -6.25 16.3809 0 22.6309l22.6299 22.6299c6.25 6.25 16.3809 6.25 22.6309 0l3.66992 -3.66992c6.60938 3.58008 13.5596 6.44922 20.8896 8.64941v5.2002c0 8.83984 7.16016 16 16 16h32
c8.83984 0 16 -7.16016 16 -16v-5.2002c7.26172 -2.16992 14.3359 -5.11426 20.8896 -8.64941l3.66992 3.66992c6.25 6.25 16.3809 6.25 22.6309 0l22.6299 -22.6299c6.25 -6.25 6.25 -16.3809 0 -22.6309l-3.66992 -3.66992
c3.58008 -6.60938 6.44922 -13.5596 8.64941 -20.8896h5.2002zM480 16c26.5098 0 48 21.4902 48 48s-21.4902 48 -48 48s-48 -21.4902 -48 -48s21.4902 -48 48 -48zM272 96c8.83984 0 16 -7.16016 16.0195 -15.9902v-32c0 -8.83984 -7.15918 -16 -16 -16h-5.19922
c-2.1709 -7.26074 -5.11426 -14.3359 -8.65039 -20.8896l3.66992 -3.66992c6.25 -6.25 6.25 -16.3799 0 -22.6299l-22.6299 -22.6299c-6.25 -6.25 -16.3799 -6.25 -22.6299 0l-3.66992 3.66992c-6.62012 -3.58008 -13.5703 -6.4502 -20.9004 -8.65039v-5.2002
c0 -8.83984 -7.16016 -16 -16 -16h-32c-8.83984 0 -16 7.16016 -16 16v5.2002c-7.33008 2.2002 -14.29 5.08008 -20.8994 8.65039l-3.66992 -3.66992c-6.25 -6.25 -16.3809 -6.25 -22.6309 0l-22.6299 22.6299c-6.25 6.25 -6.25 16.3799 0 22.6299l3.66992 3.66992
c-3.58008 6.61035 -6.44922 13.5596 -8.64941 20.8896h-5.2002c-8.83984 0 -16 7.16016 -16 16v32c0 8.83984 7.16016 16 16 16h5.2002c2.16992 7.26172 5.11426 14.3359 8.64941 20.8906l-3.66992 3.66992c-6.25 6.25 -6.25 16.3799 0 22.6299l22.6299 22.6201
c6.25 6.25 16.3809 6.25 22.6309 0l3.66992 -3.66992c6.60938 3.58008 13.5596 6.44922 20.8896 8.64941v5.2002c0 8.83984 7.16016 16 16 16h32c8.83984 0 16 -7.16016 16 -16v-5.2002c7.26172 -2.16992 14.3359 -5.11426 20.8896 -8.64941l3.66992 3.66992
c6.25 6.25 16.3809 6.25 22.6309 0l22.6299 -22.6299c6.25 -6.25 6.25 -16.3809 0 -22.6309l-3.66992 -3.66992c3.58008 -6.60938 6.44922 -13.5596 8.64941 -20.8896h5.2002zM160 16c26.5098 0 48 21.4902 48 48s-21.4902 48 -48 48s-48 -21.4902 -48 -48
s21.4902 -48 48 -48z" />
    <glyph glyph-name="truck-pickup" unicode="&#xf63c;" horiz-adv-x="640" 
d="M624 160c8.83984 0 16 -7.16016 16 -16v-32c0 -8.83984 -7.16016 -16 -16 -16h-49.5996c0.759766 -5.26953 1.60938 -10.5195 1.60938 -16c0 -61.8604 -50.1396 -112 -112 -112c-61.8594 0 -112 50.1396 -112 112c0 5.48047 0.850586 10.7305 1.61035 16h-67.2305
c0.760742 -5.26953 1.61035 -10.5195 1.61035 -16c0 -61.8604 -50.1396 -112 -112 -112s-112 50.1396 -112 112c0 5.48047 0.849609 10.7305 1.61035 16h-49.6104c-8.83984 0 -16 7.16016 -16 16v32c0 8.83984 7.16016 16 16 16h16v64c0 17.6699 14.3301 32 32 32h160v128
c0 17.6699 14.3301 32 32 32h113.24c20.2227 -0.00292969 38.2441 -9.35645 49.9795 -24.0195l108.78 -135.98h48c17.6699 0 32 -14.3301 32 -32v-64h16zM288 352v-96h158.04l-76.7998 96h-81.2402zM176 32c26.4697 0 48 21.5303 48 48s-21.5303 48 -48 48
s-48 -21.5303 -48 -48s21.5303 -48 48 -48zM464 32c26.4697 0 48 21.5303 48 48s-21.5303 48 -48 48s-48 -21.5303 -48 -48s21.5303 -48 48 -48z" />
    <glyph glyph-name="ad" unicode="&#xf641;" 
d="M157.52 176l18.4805 53.2197l18.4805 -53.2197h-36.9609zM352 192c13.2305 0 24 -10.7695 24 -24s-10.7695 -24 -24 -24s-24 10.7695 -24 24s10.7695 24 24 24zM464 384c26.5 0 48 -21.5 48 -48v-288c0 -26.5 -21.5 -48 -48 -48h-416c-26.5 0 -48 21.5 -48 48v288
c0 26.5 21.5 48 48 48h416zM250.58 96c11 0 18.7197 10.8496 15.1104 21.25l-53.6904 154.62c-3.25586 9.3877 -12.1758 16.1299 -22.666 16.1299h-0.00390625h-26.6602l0.00292969 0.00585938c-10.4873 0 -19.4131 -6.74219 -22.6729 -16.126l-53.7002 -154.63
c-3.60938 -10.4004 4.11035 -21.25 15.1201 -21.25h16.9404c0.00195312 0 -0.000976562 -0.00390625 0.000976562 -0.00390625c6.99316 0 12.9453 4.49609 15.1191 10.7539l7.37988 21.25h70.29l7.36914 -21.25c2.24023 -6.42969 8.31055 -10.75 15.1201 -10.75h16.9404z
M424 112v160c0 8.83984 -7.16016 16 -16 16h-16c-8.83984 0 -16 -7.16016 -16 -16v-36.4199c-7.54004 2.68945 -15.54 4.41992 -24 4.41992c-39.7002 0 -72 -32.2998 -72 -72s32.2998 -72 72 -72c9.92969 0 19.4004 2.01953 28.0195 5.67969
c2.94043 -3.41016 7.13086 -5.67969 11.9805 -5.67969h16c8.83984 0 16 7.16016 16 16z" />
    <glyph glyph-name="ankh" unicode="&#xf644;" horiz-adv-x="320" 
d="M296 192c13.25 0 24 -10.7402 24 -24v-32c0 -13.25 -10.75 -24 -24 -24h-96v-152c0 -13.25 -10.75 -24 -24 -24h-32c-13.25 0 -24 10.75 -24 24v152h-96c-13.25 0 -24 10.75 -24 24v32c0 13.2598 10.75 24 24 24h44.6201c-21.0801 33.9902 -36.6201 74.3496 -36.6201 112
c0 88.3701 57.3096 144 128 144s128 -55.6299 128 -144c0 -37.6504 -15.54 -78.0098 -36.6201 -112h44.6201zM160 368c-29.6104 0 -48 -24.5195 -48 -64c0 -34.6602 27.1396 -78.1504 48 -100.87c20.8604 22.7305 48 66.21 48 100.87c0 39.4805 -18.3896 64 -48 64z" />
    <glyph glyph-name="bible" unicode="&#xf647;" horiz-adv-x="448" 
d="M448 89.5996c0 -9.59961 -3.2002 -16 -9.59961 -19.1992c-3.2002 -12.8008 -3.2002 -57.6006 0 -73.6006c6.39941 -6.39941 9.59961 -12.7998 9.59961 -19.2002v-16c0 -16 -12.7998 -25.5996 -25.5996 -25.5996h-326.4c-54.4004 0 -96 41.5996 -96 96v320
c0 54.4004 41.5996 96 96 96h326.4c16 0 25.5996 -9.59961 25.5996 -25.5996v-332.801zM144 304v-32c0 -8.83984 7.16016 -16 16 -16h48v-112c0 -8.83984 7.16016 -16 16 -16h32c8.83984 0 16 7.16016 16 16v112h48c8.83984 0 16 7.16016 16 16v32
c0 8.83984 -7.16016 16 -16 16h-48v48c0 8.83984 -7.16016 16 -16 16h-32c-8.83984 0 -16 -7.16016 -16 -16v-48h-48c-8.83984 0 -16 -7.16016 -16 -16zM380.8 0v64h-284.8c-16 0 -32 -12.7998 -32 -32s12.7998 -32 32 -32h284.8z" />
    <glyph glyph-name="business-time" unicode="&#xf64a;" horiz-adv-x="640" 
d="M496 224c79.5898 0 144 -64.4102 144 -144s-64.4102 -144 -144 -144s-144 64.4102 -144 144s64.4102 144 144 144zM560 73.71v12.5801c0 5.33984 -4.37012 9.70996 -9.70996 9.70996h-38.29v54.2803c0 5.33984 -4.37012 9.70996 -9.70996 9.70996h-12.5703
c-5.33984 0 -9.70996 -4.37012 -9.70996 -9.70996v-76.5703c0 -5.33984 4.37012 -9.70996 9.70996 -9.70996h60.5703c5.33984 0 9.70996 4.37012 9.70996 9.70996zM496 256c-37.5303 0 -72.2803 -11.9102 -100.88 -32h-395.12v80c0 25.5996 22.4004 48 48 48h80v48
c0 25.5996 22.4004 48 48 48h160c25.5996 0 48 -22.4004 48 -48v-48h80c25.5996 0 48 -22.4004 48 -48v-48.8096c-5.28027 0.479492 -10.5996 0.80957 -16 0.80957zM320 352v32h-128v-32h128zM326.82 128c-4.33984 -15.2803 -6.82031 -31.3398 -6.82031 -48
c0 -28.8203 7.09961 -55.96 19.4297 -80h-291.43c-25.5996 0 -48 22.4004 -48 48v144h192v-48c0 -8.83984 7.16016 -16 16 -16h118.82z" />
    <glyph glyph-name="city" unicode="&#xf64f;" horiz-adv-x="640" 
d="M616 256c13.25 0 24 -10.7402 24 -24v-264c0 -17.6699 -14.3301 -32 -32 -32h-576c-17.6699 0 -32 14.3301 -32 32v360c0 13.2598 10.7402 24 24 24h40v80c0 8.83984 7.16016 16 16 16h16c8.83984 0 16 -7.16016 16 -16v-80h64v80c0 8.83984 7.16016 16 16 16h16
c8.83984 0 16 -7.16016 16 -16v-80h64v72c0 13.2598 10.7402 24 24 24h144c13.2598 0 24 -10.7402 24 -24v-168h136zM128 44v40c0 6.62988 -5.37012 12 -12 12h-40c-6.62988 0 -12 -5.37012 -12 -12v-40c0 -6.62988 5.37012 -12 12 -12h40c6.62988 0 12 5.37012 12 12z
M128 140v40c0 6.62988 -5.37012 12 -12 12h-40c-6.62988 0 -12 -5.37012 -12 -12v-40c0 -6.62988 5.37012 -12 12 -12h40c6.62988 0 12 5.37012 12 12zM128 236v40c0 6.62988 -5.37012 12 -12 12h-40c-6.62988 0 -12 -5.37012 -12 -12v-40c0 -6.62988 5.37012 -12 12 -12h40
c6.62988 0 12 5.37012 12 12zM256 44v40c0 6.62988 -5.37012 12 -12 12h-40c-6.62988 0 -12 -5.37012 -12 -12v-40c0 -6.62988 5.37012 -12 12 -12h40c6.62988 0 12 5.37012 12 12zM256 140v40c0 6.62988 -5.37012 12 -12 12h-40c-6.62988 0 -12 -5.37012 -12 -12v-40
c0 -6.62988 5.37012 -12 12 -12h40c6.62988 0 12 5.37012 12 12zM256 236v40c0 6.62988 -5.37012 12 -12 12h-40c-6.62988 0 -12 -5.37012 -12 -12v-40c0 -6.62988 5.37012 -12 12 -12h40c6.62988 0 12 5.37012 12 12zM416 140v40c0 6.62988 -5.37012 12 -12 12h-40
c-6.62988 0 -12 -5.37012 -12 -12v-40c0 -6.62988 5.37012 -12 12 -12h40c6.62988 0 12 5.37012 12 12zM416 236v40c0 6.62988 -5.37012 12 -12 12h-40c-6.62988 0 -12 -5.37012 -12 -12v-40c0 -6.62988 5.37012 -12 12 -12h40c6.62988 0 12 5.37012 12 12zM416 332v40
c0 6.62988 -5.37012 12 -12 12h-40c-6.62988 0 -12 -5.37012 -12 -12v-40c0 -6.62988 5.37012 -12 12 -12h40c6.62988 0 12 5.37012 12 12zM576 44v40c0 6.62988 -5.37012 12 -12 12h-40c-6.62988 0 -12 -5.37012 -12 -12v-40c0 -6.62988 5.37012 -12 12 -12h40
c6.62988 0 12 5.37012 12 12zM576 140v40c0 6.62988 -5.37012 12 -12 12h-40c-6.62988 0 -12 -5.37012 -12 -12v-40c0 -6.62988 5.37012 -12 12 -12h40c6.62988 0 12 5.37012 12 12z" />
    <glyph glyph-name="comment-dollar" unicode="&#xf651;" 
d="M256 416c141.38 0 256 -93.1201 256 -208s-114.62 -208 -256 -208c-38.4102 0 -74.71 7.07031 -107.4 19.3799c-24.6094 -19.6299 -74.3398 -51.3799 -140.6 -51.3799l-0.00195312 0.00195312c-4.41309 0 -7.99512 3.58301 -7.99512 7.99512
c0 2.13184 0.835938 4.06934 2.19727 5.50293c0.5 0.530273 42.2598 45.4502 54.8193 95.7598c-35.6094 35.7305 -57.0195 81.1807 -57.0195 130.74c0 114.88 114.62 208 256 208zM280 113.56c30.29 3.62012 53.3701 30.9805 49.3203 63.04
c-2.90039 22.96 -20.6602 41.3105 -42.9102 47.6699l-50.0703 14.3008c-3.59961 1.0293 -6.12012 4.35938 -6.12012 8.10938c0 4.64062 3.78027 8.41992 8.44043 8.41992h32.7803c0.0214844 0 0.0634766 -0.0126953 0.0859375 -0.0126953
c3.62891 0 7.07422 -0.790039 10.1738 -2.20703c4.7998 -2.20996 10.3701 -1.70996 14.1094 2.03027l17.5205 17.5195c5.26953 5.27051 4.66992 14.2705 -1.5498 18.3799c-9.5 6.27051 -20.3604 10.1104 -31.7803 11.46v17.7305c0 8.83984 -7.16016 16 -16 16h-16
c-8.83984 0 -16 -7.16016 -16 -16v-17.5498c-30.29 -3.62012 -53.3701 -30.9805 -49.3203 -63.0498c2.90039 -22.96 20.6602 -41.3203 42.9102 -47.6699l50.0703 -14.3008c3.59961 -1.0293 6.12012 -4.35938 6.12012 -8.10938
c0 -4.64062 -3.78027 -8.41992 -8.44043 -8.41992h-32.7803c-3.59961 0 -7.0791 0.759766 -10.2598 2.21973c-4.7998 2.20996 -10.3701 1.70996 -14.1094 -2.03027l-17.5205 -17.5195c-5.26953 -5.27051 -4.66992 -14.2705 1.5498 -18.3799
c9.5 -6.27051 20.3604 -10.1104 31.7803 -11.46v-17.7305c0 -8.83984 7.16016 -16 16 -16h16c8.83984 0 16 7.16016 16 16v17.5596z" />
    <glyph glyph-name="comments-dollar" unicode="&#xf653;" horiz-adv-x="576" 
d="M416 256c0 -88.3701 -93.1201 -160 -208 -160c-40.9805 0 -79.0703 9.24023 -111.27 24.9805c-21.8008 -12.7305 -52.1504 -24.9805 -88.7305 -24.9805l-0.00195312 0.00195312c-4.41309 0 -7.99512 3.58301 -7.99512 7.99512
c0 2.13184 0.835938 4.06934 2.19727 5.50293c0.319336 0.339844 22.4102 24.2803 35.7695 54.5195c-23.8398 26.0303 -37.9697 57.7109 -37.9697 91.9805c0 88.3701 93.1201 160 208 160s208 -71.6299 208 -160zM192 160c0 -4.41992 3.58008 -8 8 -8h16
c4.41992 0 8 3.58008 8 8v16.1201c23.6201 0.629883 42.6699 20.54 42.6699 45.0703c0 19.9697 -12.9902 37.8096 -31.5801 43.3896l-45 13.5c-5.16016 1.54004 -8.76953 6.78027 -8.76953 12.7295c0 7.27051 5.2998 13.1904 11.7998 13.1904h28.1104
c4.55957 0 8.94922 -1.29004 12.8193 -3.71973c3.24023 -2.03027 7.36035 -1.91016 10.1299 0.729492l11.75 11.21c3.53027 3.37012 3.33008 9.20996 -0.569336 12.1406c-9.10059 6.83984 -20.0801 10.7695 -31.3701 11.3496v16.29c0 4.41992 -3.58008 8 -8 8h-16
c-4.41992 0 -8 -3.58008 -8 -8v-16.1201c-23.6201 -0.629883 -42.6699 -20.5498 -42.6699 -45.0703c0 -19.9697 12.9893 -37.8096 31.5801 -43.3896l45 -13.5c5.15918 -1.54004 8.76953 -6.78027 8.76953 -12.7295c0 -7.27051 -5.2998 -13.1904 -11.7998 -13.1904h-28.1104
c-4.55957 0 -8.9502 1.2998 -12.8193 3.71973c-3.24023 2.03027 -7.36035 1.91016 -10.1309 -0.729492l-11.75 -11.21c-3.5293 -3.37012 -3.3291 -9.20996 0.570312 -12.1406c9.10059 -6.83008 20.0801 -10.7695 31.3701 -11.3496v-16.29zM538.01 36.0098
c13.3604 -30.2598 35.4707 -54.1699 35.7803 -54.5c2.20996 -2.33008 2.82031 -5.72949 1.5498 -8.66992c-1.25 -2.92969 -4.13965 -4.83984 -7.33984 -4.83984c-36.5801 0 -66.9297 12.25 -88.7305 24.9805c-32.1992 -15.7402 -70.2891 -24.9805 -111.27 -24.9805
c-86.2305 0 -160.2 40.3701 -191.73 97.8799c10.4102 -1.11035 20.9502 -1.87988 31.7305 -1.87988c132.34 0 240 86.1299 240 192c0 6.78027 -0.469727 13.4697 -1.33008 20.0703c75.8398 -23.8701 129.33 -81.1299 129.33 -148.07
c0 -34.2695 -14.1299 -65.96 -37.9902 -91.9902z" />
    <glyph glyph-name="cross" unicode="&#xf654;" horiz-adv-x="384" 
d="M352 320c17.6699 0 32 -14.3301 32 -32v-64c0 -17.6699 -14.3301 -32 -32 -32h-96v-224c0 -17.6699 -14.3301 -32 -32 -32h-64c-17.6699 0 -32 14.3301 -32 32v224h-96c-17.6699 0 -32 14.3301 -32 32v64c0 17.6699 14.3301 32 32 32h96v96c0 17.6699 14.3301 32 32 32
h64c17.6699 0 32 -14.3301 32 -32v-96h96z" />
    <glyph glyph-name="dharmachakra" unicode="&#xf655;" 
d="M495 222.94c9.20996 0.569336 17 -6.74023 17.0098 -15.9707v-29.9395c0 -9.23047 -7.79004 -16.5498 -17 -15.9707l-17.2197 1.08008c-5.28027 -39.4795 -20.7998 -75.6299 -43.8604 -105.83l12.9502 -11.4297c6.91992 -6.09961 7.25977 -16.7803 0.730469 -23.3096
l-21.1699 -21.1699c-6.52051 -6.52051 -17.2002 -6.19043 -23.3105 0.729492l-11.4297 12.9502c-30.2002 -23.0703 -66.3506 -38.5898 -105.84 -43.8604l1.08008 -17.2197c0.569336 -9.20996 -6.74023 -17 -15.9707 -17h-29.9395c-9.23047 0 -16.5498 7.79004 -15.9707 17
l1.09082 17.2197c-39.4902 5.28027 -75.6406 20.7998 -105.841 43.8604l-11.4297 -12.9502c-6.09961 -6.91992 -16.7803 -7.25977 -23.3096 -0.729492l-21.1699 21.1699c-6.52051 6.51953 -6.19043 17.1992 0.729492 23.3096l12.9502 11.4297
c-23.0703 30.1904 -38.5898 66.3408 -43.8604 105.83l-17.2197 -1.08008c-9.20996 -0.569336 -17 6.74023 -17 15.9707v29.9395c0 9.23047 7.79004 16.5498 17 15.9707l17.2197 -1.08008c5.28027 39.4893 20.7998 75.6396 43.8604 105.84l-12.9502 11.4297
c-6.91992 6.10059 -7.25977 16.7803 -0.729492 23.3105l21.1699 21.1592c6.51953 6.52051 17.1992 6.19043 23.3096 -0.729492l11.4297 -12.9502c30.1904 23.0703 66.3408 38.5898 105.83 43.8604l-1.08008 17.2197c-0.569336 9.20996 6.74023 17 15.9707 17h29.9395
c9.23047 0 16.5498 -7.79004 15.9707 -17l-1.07031 -17.21c39.4795 -5.28027 75.6299 -20.7998 105.83 -43.8604l11.4297 12.9404c6.10059 6.91992 16.7803 7.25977 23.3105 0.729492l21.1592 -21.1592c6.52051 -6.52051 6.19043 -17.2002 -0.729492 -23.3105
l-12.9502 -11.4297c23.0703 -30.2002 38.5898 -66.3506 43.8604 -105.84zM281.84 349.39l-4.00977 -64.1201c10.2998 -2.40918 19.8896 -6.50977 28.6201 -11.9492l42.6201 48.29c-19.6006 14.1201 -42.4199 23.71 -67.2305 27.7793zM230.16 349.39
c-24.8105 -4.06934 -47.6299 -13.6592 -67.2305 -27.7793l42.6201 -48.29c8.73047 5.42969 18.3301 9.54004 28.6201 11.9492zM126.39 285.06c-14.1201 -19.5996 -23.71 -42.4092 -27.7793 -67.2197l64.1201 -4.00977c2.41992 10.29 6.51953 19.8896 11.96 28.6201z
M98.6104 166.16c4.06934 -24.8105 13.6592 -47.6299 27.7793 -67.2305l48.29 42.6201c-5.42969 8.73047 -9.54004 18.3301 -11.9492 28.6201zM230.16 34.6104l4 64.1201c-10.29 2.41992 -19.8906 6.51953 -28.6201 11.96l-42.6104 -48.3008
c19.6006 -14.1201 42.4199 -23.71 67.2305 -27.7793zM256 160c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32s-32 -14.3301 -32 -32s14.3301 -32 32 -32zM281.84 34.6104c24.8105 4.06934 47.6201 13.6592 67.2197 27.7793l-42.6094 48.3008
c-8.73047 -5.44043 -18.3301 -9.55078 -28.6201 -11.96zM385.61 98.9404c14.1201 19.5898 23.71 42.4092 27.7793 67.2295l-64.1201 4.00977c-2.40918 -10.2998 -6.50977 -19.8896 -11.9492 -28.6201zM349.27 213.83l64.1201 4
c-4.06934 24.8096 -13.6592 47.6299 -27.7793 67.2295l-48.3008 -42.6094c5.44043 -8.73047 9.55078 -18.3301 11.96 -28.6201z" />
    <glyph glyph-name="envelope-open-text" unicode="&#xf658;" 
d="M176 232c-8.83984 0 -16 7.16016 -16 16v16c0 8.83984 7.16016 16 16 16h160c8.83984 0 16 -7.16016 16 -16v-16c0 -8.83984 -7.16016 -16 -16 -16h-160zM160 152v16c0 8.83984 7.16016 16 16 16h160c8.83984 0 16 -7.16016 16 -16v-16c0 -8.83984 -7.16016 -16 -16 -16
h-160c-8.83984 0 -16 7.16016 -16 16zM256 30.8701c16.4199 0 32.8398 5.07031 46.8604 15.1895l209.14 151.08v-213.14c0 -26.5098 -21.4902 -48 -48 -48h-416c-26.5098 0 -48 21.4902 -48 48v213.14l209.14 -151.08c14.0205 -10.1299 30.4404 -15.1895 46.8604 -15.1895z
M493.61 285.05c11.6094 -9.09961 18.3896 -23.0303 18.3896 -37.7695v-10.6504l-96 -69.3496v184.72h-320v-184.72l-96 69.3496v10.6504c0.00195312 15.3359 7.17676 28.9824 18.3896 37.7695c8.85059 6.94043 17.2402 13.4805 29.6104 22.8105v44.1396
c0 26.5098 21.4902 48 48 48h77.5498c3.04004 2.2002 5.87012 4.25977 9.04004 6.55957c16.8203 12.2705 50.21 41.79 73.4102 41.4404c23.2002 0.349609 56.5996 -29.1699 73.4102 -41.4404c3.16992 -2.2998 6 -4.35938 9.04004 -6.55957h77.5498
c26.5098 0 48 -21.4902 48 -48v-44.1396c12.3701 -9.34082 20.7598 -15.8701 29.6104 -22.8105z" />
    <glyph glyph-name="folder-minus" unicode="&#xf65d;" 
d="M464 320c26.5098 0 48 -21.4902 48 -48v-224c0 -26.5098 -21.4902 -48 -48 -48h-416c-26.5098 0 -48 21.4902 -48 48v288c0 26.5098 21.4902 48 48 48h160l64 -64h192zM368 152v16c0 8.83984 -7.16016 16 -16 16h-192c-8.83984 0 -16 -7.16016 -16 -16v-16
c0 -8.83984 7.16016 -16 16 -16h192c8.83984 0 16 7.16016 16 16z" />
    <glyph glyph-name="folder-plus" unicode="&#xf65e;" 
d="M464 320c26.4922 0 48 -21.5078 48 -48v-224c0 -26.4922 -21.5078 -48 -48 -48h-416c-26.4922 0 -48 21.5078 -48 48v288c0 26.4922 21.5078 48 48 48h160l64 -64h192zM359.5 152v16c0 8.83105 -7.16895 16 -16 16h-64v64c0 8.83105 -7.16895 16 -16 16h-16
c-8.83105 0 -16 -7.16895 -16 -16v-64h-64c-8.83105 0 -16 -7.16895 -16 -16v-16c0 -8.83105 7.16895 -16 16 -16h64v-64c0 -8.83105 7.16895 -16 16 -16h16c8.83105 0 16 7.16895 16 16v64h64c8.83105 0 16 7.16895 16 16z" />
    <glyph glyph-name="funnel-dollar" unicode="&#xf662;" horiz-adv-x="640" 
d="M433.46 282.06c-83.4102 -20.8896 -145.46 -96.2695 -145.46 -186.06c0 -54.3496 22.7998 -103.38 59.21 -138.35c-10.75 -20.54 -38.3604 -29.21 -59.2197 -13.5703l-79.9902 60c-10.0703 7.55957 -16 19.4102 -16 32v155.92l-182.66 201.93
c-19.9502 19.9502 -5.82031 54.0703 22.4004 54.0703h480.52c28.2207 0 42.3506 -34.1201 22.4004 -54.0703zM480 256c88.3701 0 160 -71.6299 160 -160s-71.6299 -160 -160 -160s-160 71.6299 -160 160s71.6299 160 160 160zM496 16.1201
c23.6299 0.629883 42.6699 20.54 42.6699 45.0703c0 19.9697 -12.9902 37.8096 -31.5801 43.3896l-45 13.5c-5.16016 1.54004 -8.76953 6.78027 -8.76953 12.7295c0 7.27051 5.2998 13.1904 11.7998 13.1904h28.1104c4.55957 0 8.94922 -1.29004 12.8193 -3.71973
c3.24023 -2.03027 7.36035 -1.91016 10.1299 0.729492l11.75 11.21c3.53027 3.37012 3.33008 9.20996 -0.569336 12.1406c-9.10059 6.83984 -20.0801 10.7695 -31.3701 11.3496v16.29c0 4.41992 -3.58008 8 -8 8h-16c-4.41992 0 -8 -3.58008 -8 -8v-16.1201
c-23.6201 -0.629883 -42.6699 -20.5498 -42.6699 -45.0703c0 -19.9697 12.9893 -37.8096 31.5801 -43.3896l45 -13.5c5.15918 -1.54004 8.76953 -6.78027 8.76953 -12.7295c0 -7.27051 -5.2998 -13.1904 -11.7998 -13.1904h-28.1104
c-4.55957 0 -8.9502 1.2998 -12.8193 3.71973c-3.24023 2.03027 -7.36035 1.91016 -10.1309 -0.729492l-11.75 -11.21c-3.5293 -3.37012 -3.3291 -9.20996 0.570312 -12.1406c9.10059 -6.83008 20.0801 -10.7695 31.3701 -11.3496v-16.29c0 -4.41992 3.58008 -8 8 -8h16
c4.41992 0 8 3.58008 8 8v16.1201z" />
    <glyph glyph-name="gopuram" unicode="&#xf664;" 
d="M496 96c8.7998 0 16 -7.2002 16 -16v-128c0 -8.7998 -7.2002 -16 -16 -16h-80v160h-32v128h-32v96h-32v-96h32v-128h32v-160h-80v80c0 8.7998 -7.2002 16 -16 16h-64c-8.7998 0 -16 -7.2002 -16 -16v-80h-80v160h32v128h32v96h-32v-96h-32v-128h-32v-160h-80
c-8.7998 0 -16 7.2002 -16 16v128c0 8.7998 7.2002 16 16 16h16v112c0 8.7998 7.2002 16 16 16h16v80c0 8.7998 7.2002 16 16 16h16v112c0 8.7998 7.2002 16 16 16s16 -7.2002 16 -16v-16h64v16c0 8.7998 7.2002 16 16 16s16 -7.2002 16 -16v-16h64v16
c0 8.7998 7.2002 16 16 16s16 -7.2002 16 -16v-16h64v16c0 8.7998 7.2002 16 16 16s16 -7.2002 16 -16v-112h16c8.7998 0 16 -7.2002 16 -16v-80h16c8.7998 0 16 -7.2002 16 -16v-112h16zM232 272v-48h48v48c0 8.7998 -7.2002 16 -16 16h-16c-8.7998 0 -16 -7.2002 -16 -16z
M288 96v64c0 8.7998 -7.2002 16 -16 16h-32c-8.7998 0 -16 -7.2002 -16 -16v-64h64z" />
    <glyph glyph-name="hamsa" unicode="&#xf665;" 
d="M509.34 140.75c1.70117 -3.9043 2.65918 -8.24805 2.65918 -12.7764c0 -8.42383 -3.26562 -16.0908 -8.59863 -21.8037l-102.681 -110.03c-35.6895 -38.2197 -88.4102 -60.1396 -144.72 -60.1396s-109.03 21.9199 -144.71 60.1396l-102.69 110.03
c-5.33301 5.71289 -8.58398 13.4141 -8.58398 21.8379c0 4.52832 0.943359 8.83789 2.64453 12.7422c5.05957 11.6904 16.5898 19.25 29.3398 19.25h64v208c0 22 18 40 40 40s40 -18 40 -40v-134c0 -5.51953 4.48047 -10 10 -10h20c5.51953 0 10 4.48047 10 10v174
c0 22 18 40 40 40s40 -18 40 -40v-174c0 -5.51953 4.48047 -10 10 -10h20c5.51953 0 10 4.48047 10 10v134c0 22 18 40 40 40s40 -18 40 -40v-208h64c12.75 0 24.2803 -7.55957 29.3398 -19.25zM256 32c53.0195 0 96 64 96 64s-42.9805 64 -96 64s-96 -64 -96 -64
s42.9805 -64 96 -64zM256 128c17.6699 0 32 -14.3301 32 -32s-14.3301 -32 -32 -32s-32 14.3301 -32 32s14.3301 32 32 32z" />
    <glyph glyph-name="bahai" unicode="&#xf666;" 
d="M496.25 245.48c17.54 -2.46094 21.6797 -26.2705 6.04004 -34.6602l-98.1602 -52.6602l74.4805 -83.54c11.8594 -13.29 0.00976562 -34.25 -17.3506 -30.4902l-108.569 23.6504l4.10938 -112.55c0.430664 -11.6504 -8.87012 -19.2207 -18.4102 -19.2207
c-5.15918 0 -10.3896 2.20996 -14.1992 7.18066l-68.1807 88.8994l-68.1797 -88.8994c-3.81055 -4.9707 -9.0498 -7.18066 -14.2002 -7.18066c-9.54004 0 -18.8398 7.57031 -18.4102 19.2207l4.11035 112.55l-108.57 -23.6504
c-1.39941 -0.30957 -2.75977 -0.450195 -4.06934 -0.450195c-15.0107 0 -24.21 18.6807 -13.29 30.9307l74.4795 83.54l-98.1602 52.6592c-15.6494 8.40039 -11.5098 32.21 6.03027 34.6709l110 15.4297l-41.8203 104.34c-6.66016 16.6396 11.6006 32.1797 26.5898 22.6299
l94.04 -59.8896l34.0908 107.189c2.70996 8.55078 10.0293 12.8203 17.3496 12.8203s14.6396 -4.26953 17.3496 -12.8203l34.0908 -107.18l94.04 59.8896c14.9893 9.55078 33.2598 -5.98926 26.5898 -22.6299l-41.8203 -104.34zM338.51 136.32l-35.6094 39.9297
l46.9199 25.1699l-52.5703 7.37988l19.9902 49.8701l-44.9502 -28.6201l-16.29 51.2305l-16.3096 -51.2305l-44.9502 28.6201l19.9902 -49.8701l-52.5703 -7.37988l46.9199 -25.1699l-35.5996 -39.9297l51.8896 11.2998l-1.95996 -53.79l32.5898 42.4902l32.5898 -42.4902
l-1.96973 53.79z" />
    <glyph glyph-name="jedi" unicode="&#xf669;" horiz-adv-x="576" 
d="M535.953 96c-42.6406 -94.1719 -137.641 -160 -247.984 -160c-4.26562 0 -8.54688 0.0986328 -12.8447 0.296875c-103.969 4.76562 -193.859 69.4688 -235.109 159.703h39.9219l-58.6094 58.5938c-2.65332 12.8242 -4.38672 25.9951 -5.10938 39.4219
c-0.133789 3.5166 -0.202148 7.05078 -0.202148 10.5996c0 6.65527 0.234375 12.8477 0.702148 19.3848h47.2188l-41.3906 41.375c14.7842 66.6123 53.959 124.015 107.969 162.078c2.61426 1.87109 5.82812 2.98535 9.28125 3
c5.62793 -0.03125 10.5791 -2.89355 13.5 -7.25c1.76367 -2.57422 2.7959 -5.68848 2.7959 -9.04199c0 -2.13086 -0.414062 -4.19141 -1.1709 -6.05176c-6.31445 -15.834 -9.84375 -33.1904 -9.84375 -51.2656c0 -45.1094 21.0469 -86.5781 57.7188 -113.734
c4.07324 -2.96484 6.72266 -7.76855 6.72266 -13.1865c0 -4.86133 -2.13965 -9.2168 -5.51953 -12.2041c-26.5469 -23.9844 -41.1719 -56.5 -41.1719 -91.5781c0 -60.0312 42.9531 -110.281 99.8906 -121.922l2.5 65.2656l-27.1562 -18.4844
c-1.29688 -0.832031 -2.83887 -1.31445 -4.49219 -1.31445c-2.10352 0 -4.04004 0.777344 -5.50781 2.06445c-1.55078 1.46387 -2.51953 3.53809 -2.51953 5.83691c0 1.49414 0.416992 2.90234 1.12891 4.10059l20.125 33.7656l-42.0625 8.73438
c-3.64062 0.744141 -6.38379 3.96777 -6.38379 7.82812s2.74316 7.08398 6.38379 7.82812l42.0625 8.71875l-20.1094 33.7344c-0.724609 1.20312 -1.1416 2.61133 -1.1416 4.11719c0 4.41016 3.58105 7.99121 7.99121 7.99121c1.67188 0 3.22656 -0.510742 4.50977 -1.38965
l30.3906 -20.6562l11.5166 287.969c0.15918 4.25879 3.66797 7.66699 7.96484 7.66699c0.0117188 0 0.0234375 0.00488281 0.0351562 0.00488281h0.046875c4.29004 -0.0332031 7.78418 -3.44629 7.95312 -7.70312l11.5312 -287.922l30.3906 20.6719
c1.28223 0.855469 2.82227 1.35449 4.47852 1.35449c2.12793 0 4.07715 -0.820312 5.52148 -2.16699c1.54785 -1.45898 2.51465 -3.52832 2.51465 -5.82129c0 -1.48828 -0.415039 -2.89062 -1.12402 -4.08496l-20.1406 -33.7656l42.0781 -8.73438
c3.63379 -0.750977 6.36914 -3.97266 6.36914 -7.82812s-2.73535 -7.07715 -6.36914 -7.82812l-42.0781 -8.71875l20.1094 -33.7344c0.730469 -1.20508 1.15039 -2.61719 1.15039 -4.12793c0 -2.27637 -0.947266 -4.33984 -2.47852 -5.79395
c-1.46484 -1.32227 -3.4043 -2.12793 -5.53125 -2.12793c-1.6543 0 -3.20801 0.492188 -4.5 1.33105l-27.1719 18.4688l2.5 -65.3438c48.4844 9.40625 87.5781 48.1562 97.3125 96.5c1.68066 8.11816 2.56445 16.5254 2.56445 25.1387
c0 36.5547 -15.8574 69.3145 -41.127 91.9395c-3.38867 2.98926 -5.52734 7.3623 -5.52734 12.2314c0 5.42578 2.64844 10.2256 6.73047 13.1904c36.6562 27.1719 57.6875 68.6094 57.6875 113.734v0.0859375c0 18.0664 -3.53613 35.4062 -9.85938 51.2266
c-0.763672 1.86523 -1.18555 3.90625 -1.18555 6.0459c0 3.34668 1.0332 6.47949 2.79492 9.04785c2.9248 4.35059 7.875 7.20605 13.5 7.23438c3.44043 -0.0136719 6.64355 -1.12305 9.25 -2.98438c53.9287 -38.2227 93.0518 -95.6611 107.906 -162.281l-41.25 -41.2344
h46.9531c0.359375 -5.76562 1.04688 -11.4531 1.04688 -17.2656c-0.0332031 -17.8086 -1.7959 -35.0137 -5.125 -51.8594l-58.8906 -58.875h39.9688z" />
    <glyph glyph-name="journal-whills" unicode="&#xf66a;" horiz-adv-x="448" 
d="M438.406 70.4062c-3.20312 -12.8125 -3.20312 -57.6094 0 -73.6094c6.39062 -6.39062 9.58887 -12.792 9.59375 -19.2031v-16c0 -16 -12.7969 -25.5938 -25.5938 -25.5938h-326.406c-54.4062 0 -96 41.5938 -96 96v320c0 54.4062 41.5938 96 96 96h326.406
c16 0 25.5938 -9.59375 25.5938 -25.5938v-332.812c0 -9.59375 -3.19824 -15.9893 -9.59375 -19.1875zM380.797 64h-284.797c-16 0 -32 -12.7969 -32 -32s12.7969 -32 32 -32h284.797v64zM128.016 271.984c0 -0.515625 0.140625 -0.984375 0.140625 -1.5l37.1094 -32.4688
c1.67383 -1.4668 2.73047 -3.62012 2.73047 -6.01758c0 -4.41309 -3.58398 -7.99414 -7.99609 -7.99805h-0.015625c-1.97363 0.0996094 -3.79785 0.828125 -5.25 1.98438l-23.5938 20.6406c11.5469 -49.5781 55.7656 -86.625 108.859 -86.625
s97.3125 37.0469 108.875 86.625l-23.5938 -20.6406c-1.40918 -1.22461 -3.25391 -1.96875 -5.26562 -1.96875h-0.015625c-2.34766 0.129883 -4.46777 1.14551 -6.01562 2.71875c-1.1543 1.45996 -1.88184 3.28809 -1.98438 5.26562
c0.128906 2.35059 1.15137 4.47266 2.73438 6.01562l37.1094 32.4688c0.015625 0.53125 0.15625 1 0.15625 1.51562c0 11.0469 -2.09375 21.5156 -5.0625 31.5938l-21.2656 -21.25c-1.44922 -1.4502 -3.45117 -2.34863 -5.66211 -2.34863
c-4.41797 0 -8.00488 3.58691 -8.00488 8.00488c0 2.20605 0.892578 4.20801 2.33887 5.65625l26.4219 26.4062c-10.0342 20.8945 -26.1904 38.0244 -46.3594 49.2656c6.05371 -9.67676 9.55469 -21.1123 9.55469 -33.3584c0 -19.916 -9.17383 -37.7295 -23.6172 -49.2822
c9.69336 -10.0459 15.6592 -23.7119 15.6592 -38.7598c0 -26.875 -19.0703 -49.3535 -44.3779 -54.6621l-1.42188 34.2812l12.6719 -8.625c0.635742 -0.432617 1.40234 -0.685547 2.22852 -0.685547c0.00585938 0 0.015625 -0.00195312 0.0214844 -0.00195312h0.0263672
c2.19727 0 3.98047 1.7832 3.98047 3.98047c0 0.748047 -0.209961 1.45215 -0.569336 2.05078l-8.53125 14.3125l17.9062 3.71875c1.81738 0.379883 3.18457 1.99219 3.18457 3.92188s-1.36719 3.54199 -3.18457 3.92188l-17.9062 3.71875l8.53125 14.3125
c0.359375 0.598633 0.566406 1.29883 0.566406 2.04688c0 2.19629 -1.7832 3.98047 -3.98047 3.98047c-0.00878906 0 -0.0146484 0.00390625 -0.0234375 0.00390625c-0.817383 -0.0322266 -1.58984 -0.275391 -2.25 -0.671875l-14.1875 -9.65625l-4.6875 112.297
c-0.09375 2.12695 -1.84961 3.8252 -4 3.8252s-3.90625 -1.69824 -4 -3.8252l-4.625 -110.812l-12 8.15625c-0.639648 0.43457 -1.41211 0.688477 -2.24316 0.688477c-2.20996 0 -4.00293 -1.79395 -4.00293 -4.00391c0 -0.745117 0.203125 -1.44629 0.558594 -2.04395
l8.53125 -14.3125l-17.9062 -3.71875c-1.81738 -0.375977 -3.18457 -1.98633 -3.18457 -3.91406s1.36719 -3.53809 3.18457 -3.91406l17.9062 -3.73438l-8.53125 -14.2969c-0.330078 -0.611328 -0.532227 -1.31152 -0.5625 -2.04688
c0.0615234 -1.12109 0.525391 -2.14062 1.25 -2.90625c0.717773 -0.677734 1.68652 -1.09277 2.75 -1.09375c0.830078 0.00390625 1.60645 0.257812 2.25 0.6875l10.3594 7.04688l-1.35938 -32.7188c-25.3086 5.31836 -44.335 27.79 -44.335 54.6709
c0 15.0518 5.92285 28.7324 15.6162 38.7822c-14.4434 11.5508 -23.7012 29.3193 -23.7012 49.2334c0 12.2559 3.59082 23.7412 9.6543 33.4229c-20.1709 -11.2451 -36.3311 -28.374 -46.375 -49.2656l26.4219 -26.4219c1.43945 -1.44727 2.33008 -3.44043 2.33008 -5.64062
c0 -4.41504 -3.58496 -8 -7.99902 -8c-2.2002 0 -4.19629 0.888672 -5.64355 2.32812l-21.2656 21.2656c-2.98438 -10.0938 -5.07812 -20.5625 -5.0625 -31.625z" />
    <glyph glyph-name="kaaba" unicode="&#xf66b;" horiz-adv-x="576" 
d="M554.12 364.49c13.0703 -4.36035 21.8799 -16.5898 21.8799 -30.3604v-49.0098l-265 79.5098c-15.0596 4.5 -30.9502 4.5 -45.9805 0l-265.02 -79.5098v49.0098c0.000976562 14.1279 9.16992 26.1211 21.8799 30.3604l235.771 78.5801
c9.53711 3.17969 19.7705 4.90234 30.3711 4.90234c10.5996 0 20.8008 -1.72266 30.3389 -4.90234zM274.22 333.97c9 2.7207 18.5498 2.7207 27.5898 0l274.2 -82.2598v-228.39c0 -15 -10.4199 -27.9902 -25.0596 -31.2402l-242.12 -53.7998
c-6.72461 -1.49512 -13.5928 -2.28418 -20.7646 -2.28418s-14.1611 0.789062 -20.8857 2.28418l-242.12 53.7998c-14.6396 3.25977 -25.0596 16.2402 -25.0596 31.2402v228.38zM128 217.89v16.5801c0 5.28027 -5.01953 9.11035 -10.1104 7.7207l-80 -21.8203
c-3.47949 -0.950195 -5.88965 -4.11035 -5.88965 -7.71973v-16.5801c0 -5.27051 5.01953 -9.10059 10.1104 -7.7207l80 21.8203c3.47949 0.950195 5.88965 4.11035 5.88965 7.71973zM272 257.17v16.5801c0 5.28027 -5.01953 9.11035 -10.1104 7.71973l-96 -26.1797
c-3.47949 -0.950195 -5.88965 -4.11035 -5.88965 -7.71973v-16.5801c0 -5.28027 5.01953 -9.11035 10.1104 -7.7207l96 26.1807c3.47949 0.950195 5.88965 4.10938 5.88965 7.71973zM448 234.47v-16.5801c0 -0.00195312 0.00195312 -0.00195312 0.00195312 -0.00390625
c0 -3.68359 2.49609 -6.78906 5.8877 -7.71582l80 -21.8203c5.09082 -1.38965 10.1104 2.44043 10.1104 7.7207v16.5801c0 3.60938 -2.41016 6.76953 -5.88965 7.71973l-80 21.8203c-5.09082 1.38965 -10.1104 -2.44043 -10.1104 -7.7207zM304 273.74v-16.5801
c0 -0.00195312 0.00195312 -0.00292969 0.00195312 -0.00488281c0 -3.68359 2.49609 -6.78906 5.8877 -7.71484l96 -26.1807c5.09082 -1.38965 10.1104 2.44043 10.1104 7.7207v16.5791c0 3.61035 -2.41016 6.77051 -5.88965 7.7207l-96 26.1797
c-5.09082 1.38965 -10.1104 -2.44043 -10.1104 -7.71973z" />
    <glyph glyph-name="khanda" unicode="&#xf66d;" 
d="M415.81 382c73.71 -40.2402 111.78 -123.85 90.1602 -207.51c-7.25 -28.0898 -22.3799 -53.5703 -41.25 -75.5898l-52.5098 -61.3105c-4.87012 -5.67969 -13.04 -7.22949 -19.6504 -3.70996l-79.3496 42.2305l-29.21 -20.3408l47.0801 -32.7793
c1.66992 0.370117 3.22949 1.00977 5.00977 1.00977c13.25 0 23.9902 -10.7402 23.9902 -24c0 -13.25 -10.7402 -24 -23.9902 -24c-12.0898 0 -21.6797 9.11035 -23.3301 20.7598l-40.9102 28.4805v-30.1504c9.38086 -5.58008 15.9902 -15.3896 15.9902 -27.0996
c0 -17.6699 -14.3203 -32 -31.9795 -32c-17.6602 0 -31.9805 14.3301 -31.9805 32c0 11.7197 6.60059 21.5293 15.9902 27.0996v29.9502l-40.6299 -28.2803c-1.64062 -11.6494 -11.2305 -20.7598 -23.3301 -20.7598c-13.25 0 -23.9902 10.75 -23.9902 24
c0 13.2598 10.7402 24 23.9902 24c1.78027 0 3.33984 -0.639648 5.00977 -1.00977l47.0801 32.7793l-29.21 20.3301l-79.3496 -42.2295c-6.61035 -3.52051 -14.7803 -1.96973 -19.6504 3.71973l-55.9697 65.3604c-12.5703 14.6797 -23.3906 31.0693 -30.46 49.0596
c-35.6602 90.6904 2.95996 186.391 81.4893 229.24c6.34082 3.5 15.0205 2.63965 20.0205 -2.7002c4.99023 -5.30957 6.45996 -12.9199 2.58984 -19.0801c-16.4902 -26.1602 -25.2002 -56.3896 -25.2002 -87.4697c0.180664 -53.1904 26.7598 -102.62 71.0303 -132.18
l76.5898 -53.3301v19.8994l-44.0498 36.0908c-3.91016 4.20996 -5 10.0996 -2.81055 15.2793l7.85059 17.2402c-33.8506 19.2598 -56.9404 55.2402 -56.9404 96.9902c0 40.79 22.0205 76.1396 54.5898 95.7197l-5.21973 11.4404
c-2.33008 5.5293 -0.929688 11.8301 3.57031 16.04l58.9902 52.8096l58.9893 -52.8203c4.5 -4.20996 5.91016 -10.5098 3.57031 -16.04l-5.21973 -11.4395c32.5693 -19.5801 54.5898 -54.9199 54.5898 -95.71c0 -41.7402 -23.0996 -77.7305 -56.9404 -96.9902
l7.85059 -17.2402c2.18945 -5.18945 1.10938 -11.0801 -2.81055 -15.2793l-44.0498 -36.0908v-20.0996l76.6299 53.3496c44.5 29.7207 71.0801 79.1602 71.2705 132.41c0 31.0205 -8.70996 61.25 -25.2002 87.4102c-1.55762 2.46582 -2.46973 5.40723 -2.46973 8.53613
c0 4.25293 1.66602 8.12012 4.37988 10.9844c4.99023 5.34961 12.9902 6.51953 19.3594 3.01953zM319.82 272c0 21.3203 -10.5801 40.1201 -26.6504 51.7695l-7.83008 -17.1797c-8.75 -24.5195 -8.75 -51.04 0 -75.5596l5.65039 -12.4102
c17.3398 11.46 28.8301 31.0801 28.8301 53.3799zM191.89 272c0 -22.2998 11.5 -41.9297 28.8408 -53.3896l5.64941 12.4092c8.75 24.5303 8.75 51.04 0 75.5605l-7.83008 17.1797c-16.0801 -11.6396 -26.6602 -30.4395 -26.6602 -51.7598z" />
    <glyph glyph-name="landmark" unicode="&#xf66f;" 
d="M501.62 355.89c6.24023 -2.33984 10.3799 -8.30957 10.3799 -14.9795v-36.9102c0 -8.83984 -7.16016 -16 -16 -16h-480c-8.83984 0 -16 7.16016 -16 16v36.9102c0.000976562 6.85547 4.31445 12.7041 10.3799 14.9795l234.39 90.0703
c3.49219 1.31152 7.30176 2.02832 11.25 2.02832c3.94727 0 7.72852 -0.716797 11.2207 -2.02832zM64 256h64v-160h96v160h64v-160h96v160h64v-160h16c8.83984 0 16 -7.16016 16 -16v-48h-448v48c0 8.83984 7.16016 16 16 16h16v160zM496 0c8.83984 0 16 -7.16016 16 -16
v-32c0 -8.83984 -7.16016 -16 -16 -16h-480c-8.83984 0 -16 7.16016 -16 16v32c0 8.83984 7.16016 16 16 16h480z" />
    <glyph glyph-name="mail-bulk" unicode="&#xf674;" horiz-adv-x="576" 
d="M160 0c25.5996 0 51.2002 22.4004 64 32c64 44.7998 83.2002 60.7998 96 70.4004v-134.4c0 -17.6699 -14.3301 -32 -32 -32h-256c-17.6699 0 -32 14.3301 -32 32v134.4c12.7998 -9.60059 32 -25.6006 96 -70.4004c12.7998 -9.59961 38.4004 -32 64 -32zM288 192
c17.6699 0 32 -14.3301 32 -32v-19.2002c-25.5996 -19.2002 -22.4004 -19.2002 -115.2 -86.3994c-9.59961 -3.2002 -28.7998 -22.4004 -44.7998 -22.4004s-35.2002 19.2002 -44.7998 25.5996c-92.7998 67.2002 -89.6006 67.2002 -115.2 86.4004v16
c0 17.6699 14.3301 32 32 32h256zM544 288c17.6699 0 32 -14.3301 32 -32v-192c0 -17.6699 -14.3301 -32 -32 -32h-192v134.4l-0.290039 -0.220703c-3.12012 32.4004 -30.5 57.8203 -63.71 57.8203h-96v32c0 17.6699 14.3301 32 32 32h320zM512 160v64h-64v-64h64zM160 256
v-32h-96v192c0 17.6699 14.3301 32 32 32h320c17.6699 0 32 -14.3301 32 -32v-96h-224c-35.29 0 -64 -28.71 -64 -64z" />
    <glyph glyph-name="menorah" unicode="&#xf676;" horiz-adv-x="640" 
d="M144 320c8.83984 0 16 -7.16016 16 -16v-144h-64v144c0 8.83984 7.16016 16 16 16h32zM240 320c8.83984 0 16 -7.16016 16 -16v-144h-64v144c0 8.83984 7.16016 16 16 16h32zM432 320c8.83984 0 16 -7.16016 16 -16v-144h-64v144c0 8.83984 7.16016 16 16 16h32zM528 320
c8.83984 0 16 -7.16016 16 -16v-144h-64v144c0 8.83984 7.16016 16 16 16h32zM608 352c-17.6699 0 -32 14.3301 -32 32s32 64 32 64s32 -46.3301 32 -64s-14.3301 -32 -32 -32zM512 352c-17.6699 0 -32 14.3301 -32 32s32 64 32 64s32 -46.3301 32 -64s-14.3301 -32 -32 -32
zM416 352c-17.6699 0 -32 14.3301 -32 32s32 64 32 64s32 -46.3301 32 -64s-14.3301 -32 -32 -32zM320 352c-17.6699 0 -32 14.3301 -32 32s32 64 32 64s32 -46.3301 32 -64s-14.3301 -32 -32 -32zM224 352c-17.6699 0 -32 14.3301 -32 32s32 64 32 64s32 -46.3301 32 -64
s-14.3301 -32 -32 -32zM128 352c-17.6699 0 -32 14.3301 -32 32s32 64 32 64s32 -46.3301 32 -64s-14.3301 -32 -32 -32zM32 352c-17.6699 0 -32 14.3301 -32 32s32 64 32 64s32 -46.3301 32 -64s-14.3301 -32 -32 -32zM576 160v144c0 8.83984 7.16016 16 16 16h32
c8.83984 0 16 -7.16016 16 -16v-144c0 -53.0195 -42.9805 -96 -96 -96h-192v-64h176c8.83984 0 16 -7.16016 16 -16v-32c0 -8.83984 -7.16016 -16 -16 -16h-416c-8.83984 0 -16 7.16016 -16 16v32c0 8.83984 7.16016 16 16 16h176v64h-192c-53.0195 0 -96 42.9805 -96 96
v144c0 8.83984 7.16016 16 16 16h32c8.83984 0 16 -7.16016 16 -16v-144c0 -17.6699 14.3301 -32 32 -32h192v176c0 8.83984 7.16016 16 16 16h32c8.83984 0 16 -7.16016 16 -16v-176h192c17.6699 0 32 14.3301 32 32z" />
    <glyph glyph-name="mosque" unicode="&#xf678;" horiz-adv-x="640" 
d="M0 -32v320h128v-320c0 -17.6699 -14.3301 -32 -32 -32h-64c-17.6699 0 -32 14.3301 -32 32zM579.16 160h-358.32c-17.8594 17.3896 -28.8398 37.3398 -28.8398 58.9102c0 52.8594 41.79 93.79 87.9199 122.899c41.9502 26.46 80.6299 57.7705 111.96 96.2207
l8.12012 9.96973l8.12012 -9.96973c31.3301 -38.4502 70.0195 -69.75 111.96 -96.2207c46.1299 -29.1094 87.9199 -70.04 87.9199 -122.899c0 -21.5703 -10.9805 -41.5205 -28.8398 -58.9102zM608 128c17.6699 0 32 -14.3301 32 -32v-128c0 -17.6699 -14.3301 -32 -32 -32
h-32v64c0 17.6699 -14.3301 32 -32 32s-32 -14.3301 -32 -32v-64h-64v72c0 48 -48 72 -48 72s-48 -24 -48 -72v-72h-64v64c0 17.6699 -14.3301 32 -32 32s-32 -14.3301 -32 -32v-64h-32c-17.6699 0 -32 14.3301 -32 32v128c0 17.6699 14.3301 32 32 32h416zM64 448
c0 0 64 -32 64 -96v-32h-128v32c0 64 64 96 64 96z" />
    <glyph glyph-name="om" unicode="&#xf679;" 
d="M360.6 387.06l-21.5801 21.5605c-1.89062 1.88867 -3.06055 4.50098 -3.06055 7.38086c0 2.88086 1.16992 5.49023 3.06055 7.37891l21.5703 21.5605c4.08008 4.06934 10.6797 4.06934 14.7598 0l21.5801 -21.5605c1.8916 -1.88867 3.06152 -4.50098 3.06152 -7.38086
c0 -2.88086 -1.16992 -5.49023 -3.06152 -7.37891l-21.5693 -21.5605c-1.88867 -1.89062 -4.50098 -3.06055 -7.38184 -3.06055s-5.49023 1.16992 -7.37891 3.06055zM412.11 256c55.0898 0 99.8896 -44.7998 99.8896 -99.8799v-100.12c0 -48.5303 -47.4805 -88 -96.0195 -88
c-96.0205 0 -96.0205 64 -96.0205 64v37.8701c0 7.55957 9.42969 10.8896 14.2002 5.01953c15.1494 -18.6494 42.4199 -42.8896 81.8203 -42.8896c13.2393 0 32.0098 10.7695 32.0098 24v100.12c0 19.79 -16.1006 35.8799 -35.8799 35.8799
c-9.60059 0 -18.6006 -3.73047 -25.3799 -10.5l-24.25 -24.25c-18.8701 -18.8604 -43.9502 -29.25 -70.6406 -29.25h-21.6895c11.0293 -18.9004 17.8096 -40.5801 17.8096 -64c0 -70.5801 -57.4297 -128 -128.02 -128c-118.811 0 -160.03 96 -159.94 150.81
c0.0195312 8.80078 10.2598 12.7705 14.79 5.2207c22.7998 -38.0107 49.1299 -92.0303 145.15 -92.0303c35.2998 0 64.0098 28.7002 64.0098 64s-28.71 64 -64.0098 64h-33.0303c-5.57031 0.450195 -10.6406 3.49023 -13.1699 8.5498l-16.0898 32.1699
c-5.35059 10.7002 2.42969 23.2803 14.3896 23.2803h31.9004c26.4697 0 48.0098 21.5303 48.0098 48s-21.54 48 -48.0098 48c-11.25 0 -21.8203 -3.80957 -30.2705 -10.71c-5.54004 -4.53027 -13.4795 -4.50977 -19.2002 -0.209961l-26.1494 19.6299
c-8.08984 6.08008 -8.48047 17.9697 -1.12012 24.9297c25.1094 23.7402 59.8594 34.71 96.0098 28.7803c43.1602 -7.08008 79.4199 -40.6396 89.5205 -83.1895c6.43945 -27.1201 2.80957 -53.1309 -7.73047 -75.2305h46.8398c9.60059 0 18.6006 3.73047 25.3799 10.5
l24.25 24.25c18.8701 18.8604 43.9502 29.25 70.6406 29.25zM454.29 380.73c10.5596 7.95996 25.7002 0.489258 25.7002 -12.7305v-35.5195c0 -2.36035 -0.509766 -4.71094 -1.53027 -6.83008c-2.96973 -6.30078 -21.8301 -37.6602 -101.75 -37.6602
c-78.4297 0 -117.19 69.3896 -118.8 72.3398c-3.61035 6.62988 -2.08008 14.8799 3.66016 19.7998c5.69922 4.92969 14.1201 5.16992 20.1396 0.549805c3.53027 -2.69922 87.0303 -65.0693 172.58 0.0507812z" />
    <glyph glyph-name="pastafarianism" unicode="&#xf67b;" horiz-adv-x="640" 
d="M624.54 100.33c12.4004 -4.71973 18.5996 -18.5801 13.8896 -30.9805c-4.69922 -12.4092 -18.5801 -18.6299 -30.9697 -13.8799c-8.11035 3.08984 -14.3398 0.19043 -31.3896 -11.3594c-13.5508 -9.15039 -30.8301 -20.8408 -52.4199 -20.8408
c-7.16992 0 -14.8301 1.28027 -22.9707 4.39062c-32.6602 12.4395 -39.9893 41.3301 -45.3301 62.4395c-2.20996 8.7207 -3.98926 14.4902 -5.94922 18.8701c-16.6201 -13.5996 -36.9307 -25.8701 -61.6201 -34.1602c10.0098 -37 32.2793 -90.8096 60.2197 -90.8096
c13.25 0 24 -10.75 24 -24s-10.75 -24 -24 -24c-66.7402 0 -97.0498 88.6299 -107.42 129.14c-6.69043 -0.599609 -13.4199 -1.13965 -20.5801 -1.13965s-13.8896 0.540039 -20.5801 1.13965c-10.3701 -40.5098 -40.6797 -129.14 -107.42 -129.14c-13.25 0 -24 10.75 -24 24
s10.75 24 24 24c28.0801 0 50.2998 53.7998 60.2598 90.7998c-24.6895 8.29004 -45.0195 20.5605 -61.6396 34.1699c-1.95996 -4.37988 -3.74023 -10.1494 -5.9502 -18.8701c-5.34961 -21.1094 -12.6699 -50 -45.3301 -62.4395
c-8.13965 -3.11035 -15.7998 -4.39062 -22.9697 -4.39062c-21.5898 -0.0195312 -38.8701 11.6807 -52.4199 20.8408c-17.0498 11.5498 -23.2305 14.4492 -31.3906 11.3594c-12.3594 -4.72949 -26.25 1.4707 -30.9697 13.8799
c-4.71973 12.3906 1.48047 26.25 13.8701 30.9707c32.6504 12.4697 57.3398 -4.25 75.3701 -16.4502c17.0801 -11.5303 23.2998 -14.4199 31.4102 -11.3604c8.12012 3.10059 10.8301 9.37988 15.8896 29.3799c3.33008 13.1504 7.44043 29.3203 17.9502 42.6504
c-2.24023 2.91016 -4.42969 5.78027 -6.37988 8.57031c-10.1699 -9.56055 -23.4102 -17.1104 -41.7002 -17.1104c-33.9502 0 -50.8701 25.7803 -62.0596 42.8301c-10.6006 16.1396 -15 21.1699 -21.9404 21.1699c-13.25 0 -24 10.75 -24 24s10.75 24 24 24
c33.96 0 50.8799 -25.7803 62.0596 -42.8301c10.6006 -16.1396 15 -21.1699 21.9404 -21.1699c17.1504 0 37.6797 61.5596 97.2695 101.9l-17.25 34.5c-33.46 2.09961 -60.0195 29.6191 -60.0195 63.5996c0 35.3496 28.6504 64 64 64s64 -28.6504 64 -64
c0 -13.0195 -3.94043 -25.0996 -10.5996 -35.21l18.1494 -36.2998c16.9697 4.59961 35.6006 7.50977 56.46 7.50977c20.8604 0 39.4805 -2.91016 56.46 -7.50977l18.1504 36.2998c-6.67969 10.1104 -10.6201 22.1904 -10.6201 35.21c0 35.3496 28.6504 64 64 64
s64 -28.6504 64 -64c0 -33.9805 -26.5703 -61.5 -60.0098 -63.5898l-17.25 -34.5c59.7793 -40.4805 79.9502 -101.91 97.2598 -101.91c6.94043 0 11.3398 5.03027 21.9404 21.1699c11.1895 17.0498 28.1094 42.8301 62.0596 42.8301c13.25 0 24 -10.75 24 -24
s-10.75 -24 -24 -24c-6.94043 0 -11.3496 -5.03027 -21.9404 -21.1699c-11.1895 -17.0498 -28.1094 -42.8301 -62.0596 -42.8301c-18.29 0 -31.5303 7.5498 -41.7002 17.1201c-1.9502 -2.78027 -4.13965 -5.66016 -6.37988 -8.57031
c10.5098 -13.3301 14.6201 -29.5 17.9502 -42.6494c5.05957 -20 7.76953 -26.29 15.8896 -29.3809c8.16016 -3.05957 14.3506 -0.169922 31.4102 11.3604c18.0098 12.2002 42.6699 28.9697 75.3701 16.4502zM448 400c-8.82031 0 -16 -7.17969 -16 -16s7.17969 -16 16 -16
s16 7.17969 16 16s-7.17969 16 -16 16zM192 400c-8.82031 0 -16 -7.17969 -16 -16s7.17969 -16 16 -16s16 7.17969 16 16s-7.17969 16 -16 16z" />
    <glyph glyph-name="peace" unicode="&#xf67c;" horiz-adv-x="496" 
d="M248 440c136.97 0 248 -111.03 248 -248s-111.03 -248 -248 -248s-248 111.03 -248 248s111.03 248 248 248zM432 192c0 90.5303 -65.7695 165.82 -152 181.03v-165.66l129.43 -103.54c14.3701 26.2002 22.5703 56.2402 22.5703 88.1699zM216 10.9697v114.46
l-89.29 -71.4395c24.7998 -21.8203 55.4297 -37.0498 89.29 -43.0205zM280 125.43v-114.449c33.8604 5.96973 64.4902 21.1992 89.29 43.0195zM216 373.03c-86.2305 -15.21 -152 -90.5 -152 -181.03c0 -31.9297 8.2002 -61.9697 22.5703 -88.1699l129.43 103.54v165.66z" />
    <glyph glyph-name="place-of-worship" unicode="&#xf67f;" horiz-adv-x="640" 
d="M620.61 81.4502c11.4111 -4.89258 19.3896 -16.2168 19.3896 -29.4102v-100.04c0 -8.83984 -7.16016 -16 -16 -16h-112v192zM0 52.04c0 13.1934 7.97852 24.5176 19.3896 29.4102l108.61 46.5498v-192h-112c-8.83984 0 -16 7.16016 -16 16v100.04zM464.46 201.32
c9.63965 -5.78027 15.54 -16.2002 15.54 -27.4404v-237.88h-96v96c0 35.3496 -28.6602 64 -64 64s-64 -28.6504 -64 -64v-96h-96v237.88c0 11.6572 6.21387 21.8467 15.54 27.4404l48.46 29.0801v114.97c0 8.49023 3.37988 16.6299 9.37988 22.6299l75.3105 75.3096
c6.23926 6.25 16.3691 6.25 22.6191 0l75.3105 -75.3096c6.00977 -6.00977 9.37988 -14.1396 9.37988 -22.6299v-114.97z" />
    <glyph glyph-name="poll" unicode="&#xf681;" horiz-adv-x="448" 
d="M400 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h352zM160 80v128c0 8.83984 -7.16016 16 -16 16h-32c-8.83984 0 -16 -7.16016 -16 -16v-128c0 -8.83984 7.16016 -16 16 -16h32
c8.83984 0 16 7.16016 16 16zM256 80v224c0 8.83984 -7.16016 16 -16 16h-32c-8.83984 0 -16 -7.16016 -16 -16v-224c0 -8.83984 7.16016 -16 16 -16h32c8.83984 0 16 7.16016 16 16zM352 80v64c0 8.83984 -7.16016 16 -16 16h-32c-8.83984 0 -16 -7.16016 -16 -16v-64
c0 -8.83984 7.16016 -16 16 -16h32c8.83984 0 16 7.16016 16 16z" />
    <glyph glyph-name="poll-h" unicode="&#xf682;" horiz-adv-x="448" 
d="M448 16c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h352c26.5 0 48 -21.5 48 -48v-352zM112 256h128c8.83984 0 16 7.16016 16 16v32c0 8.83984 -7.16016 16 -16 16h-128c-8.83984 0 -16 -7.16016 -16 -16v-32
c0 -8.83984 7.16016 -16 16 -16zM112 160h224c8.83984 0 16 7.16016 16 16v32c0 8.83984 -7.16016 16 -16 16h-224c-8.83984 0 -16 -7.16016 -16 -16v-32c0 -8.83984 7.16016 -16 16 -16zM112 64h64c8.83984 0 16 7.16016 16 16v32c0 8.83984 -7.16016 16 -16 16h-64
c-8.83984 0 -16 -7.16016 -16 -16v-32c0 -8.83984 7.16016 -16 16 -16z" />
    <glyph glyph-name="pray" unicode="&#xf683;" horiz-adv-x="384" 
d="M256 320c-35.3496 0 -64 28.6504 -64 64s28.6504 64 64 64s64 -28.6504 64 -64s-28.6504 -64 -64 -64zM225.37 150.25l-24.1504 28.7598l-34.7998 -64.8701l109.86 -109.859c25.4893 -25.4902 5.7998 -68.2803 -28.2803 -68.2803h-208c-22.0898 0 -40 17.9102 -40 40
s17.9102 40 40 40h91.5596l-44.8096 34.8896c-42.8799 27.3799 -57.5898 80.1104 -34.1904 123.75l49.3701 92.0303c11.1201 20.6504 32.1807 34.4404 56.3701 36.9199c24.7803 2.58984 48.5605 -6.93945 64 -25.3301l38.9102 -46.3096l57.4404 47
c17.1191 13.9697 42.3398 11.4902 56.3096 -5.62012c13.9697 -17.0898 11.4697 -42.2998 -5.62012 -56.2803l-88 -72.0195c-16.9697 -13.8701 -41.9102 -11.5 -55.9697 5.21973z" />
    <glyph glyph-name="praying-hands" unicode="&#xf684;" horiz-adv-x="640" 
d="M272 256.09c17.5996 0 32 -14.3994 32 -32v-128c0 -51.8896 -34.8398 -98.0801 -84.75 -112.35l-179.19 -46.6201c-2.64941 -0.69043 -5.36914 -1.03027 -8.05957 -1.03027c-23.4805 0 -32 21.1797 -32 32v96
c0 0.00390625 -0.00488281 -0.000976562 -0.00488281 0.00292969c0 14.1221 9.1748 26.1182 21.8848 30.3477l90.1201 30.04v80.2295c0 18.9805 5.55957 37.3896 16.1201 53.2305l117.26 175.899c0.169922 0.270508 0.589844 0.25 0.790039 0.480469
c9.58008 13.5098 27.8496 17.8799 42.2998 9.20996c15.1602 -9.10059 20.0605 -28.75 10.9707 -43.9102l-77.75 -129.59c-8.9707 -14.9199 -13.6904 -32 -13.6904 -49.3906v-76.5498c0 -8.83984 7.16016 -16 16 -16s16 7.16016 16 16v80c0 17.6006 14.4004 32 32 32z
M618.12 94.3604c13.0703 -4.36035 21.8799 -16.5801 21.8799 -30.3506v-96c0 -10.8193 -8.51953 -32 -32 -32c-2.67969 0 -5.40039 0.339844 -8.05957 1.03027l-179.19 46.6201c-49.9102 14.2598 -84.75 60.4502 -84.75 112.34v128c0 17.5996 14.4004 32 32 32
s32 -14.4004 32 -32v-80c0 -8.83984 7.16016 -16 16 -16s16 7.16016 16 16v76.5498c0 17.3906 -4.71973 34.4697 -13.6904 49.3906l-77.75 129.59c-9.08984 15.1602 -4.18945 34.8193 10.9707 43.9102c14.4502 8.66992 32.7197 4.2998 42.2998 -9.20996
c0.200195 -0.240234 0.610352 -0.210938 0.790039 -0.480469l117.26 -175.89c10.5605 -15.8408 16.1201 -34.25 16.1201 -53.2305v-80.2295z" />
    <glyph glyph-name="quran" unicode="&#xf687;" horiz-adv-x="448" 
d="M448 89.5996c0 -9.59961 -3.2002 -16 -9.59961 -19.1992c-3.2002 -12.8008 -3.2002 -57.6006 0 -73.6006c6.39941 -6.39941 9.59961 -12.7998 9.59961 -19.2002v-16c0 -16 -12.7998 -25.5996 -25.5996 -25.5996h-326.4c-54.4004 0 -96 41.5996 -96 96v320
c0 54.4004 41.5996 96 96 96h326.4c16 0 25.5996 -9.59961 25.5996 -25.5996v-332.801zM301.08 302.18l-11.1904 -22.6494l-24.9893 -3.62988c-2.68066 -0.390625 -3.75 -3.66992 -1.81055 -5.56055l18.0898 -17.6299l-4.26953 -24.8896
c-0.360352 -2.11035 1.30957 -3.82031 3.20996 -3.82031c0.5 0 1.01953 0.120117 1.51953 0.379883l22.3604 11.75l22.3604 -11.75c0.5 -0.259766 1.01953 -0.379883 1.51953 -0.379883c1.90039 0 3.57031 1.70996 3.20996 3.82031l-4.26953 24.8896l18.0898 17.6299
c1.92969 1.89062 0.859375 5.16992 -1.81055 5.56055l-25 3.62988l-11.1797 22.6494c-0.599609 1.20996 -1.75977 1.82031 -2.91992 1.82031s-2.32031 -0.610352 -2.91992 -1.82031zM243.19 371.19c-63.5205 0 -115.19 -51.6709 -115.19 -115.19
c0 -63.5098 51.6699 -115.19 115.18 -115.18c13.6006 0 27.1201 2.46973 40.1904 7.33984c2.67969 0.910156 4.62012 3.43945 4.62012 6.41992c0 3.63965 -2.87012 6.78027 -6.7998 6.78027c-0.650391 0 -3.10059 -0.209961 -4.13086 -0.209961
c-52.3096 0 -94.8594 42.5596 -94.8594 94.8594c0 52.3105 42.5498 94.8604 94.8594 94.8604c1.04004 0 3.45996 -0.209961 4.13086 -0.209961c0.738281 -0.276367 1.54004 -0.429688 2.375 -0.429688c3.73926 0 6.77441 3.03516 6.77441 6.77441
c0 3.7373 -3.0332 6.77246 -6.76953 6.77539c-13.1201 4.91992 -26.71 7.41016 -40.3799 7.41016zM380.8 0v64h-284.8c-16 0 -32 -12.7998 -32 -32s12.7998 -32 32 -32h284.8z" />
    <glyph glyph-name="search-dollar" unicode="&#xf688;" 
d="M505.04 5.33984c9.2998 -9.39941 9.2998 -24.5898 -0.0996094 -33.9902l-28.3008 -28.2998c-9.2998 -9.39941 -24.5 -9.39941 -33.8994 0l-99.71 99.6904c-4.5 4.5 -7 10.5996 -7 17v16.2998c-35.2998 -27.5996 -79.71 -44 -128.011 -44
c-114.909 0 -208.02 93.0898 -208.02 207.979c0 114.891 93.1201 207.98 208.02 207.98c114.9 0 208.011 -93.0898 208.011 -207.98c0 -48.2998 -16.4004 -92.6895 -44 -127.989h16.2998c6.40039 0 12.5 -2.5 17 -7zM208.02 96.04c79.6504 0 144 64.4502 144 143.979
c0 79.6406 -64.46 143.98 -144 143.98c-79.6494 0 -144 -64.4502 -144 -143.98c0 -79.6396 64.4609 -143.979 144 -143.979zM235.13 248.58c18.6006 -5.58008 31.5898 -23.4199 31.5898 -43.3896c0 -24.5303 -19.0498 -44.4404 -42.6797 -45.0703v-16.1201
c0 -4.41992 -3.58008 -8 -8 -8h-16c-4.41992 0 -8 3.58008 -8 8v16.29c-11.29 0.580078 -22.2705 4.51953 -31.3701 11.3496c-3.90039 2.93066 -4.09961 8.77051 -0.570312 12.1406l11.75 11.21c2.77051 2.63965 6.89062 2.75977 10.1309 0.729492
c3.85938 -2.42969 8.25977 -3.71973 12.8193 -3.71973h28.1006c6.5 0 11.7998 5.91992 11.7998 13.1904c0 5.94922 -3.61035 11.1797 -8.77051 12.7295l-45.0098 13.5c-18.5898 5.58008 -31.5801 23.4199 -31.5801 43.3896c0 24.5205 19.0498 44.4404 42.6797 45.0703
v16.1201c0 4.41992 3.58008 8 8 8h16c4.4209 0 8 -3.58008 8 -8v-16.29c11.29 -0.580078 22.2705 -4.51953 31.3701 -11.3496c3.90039 -2.93066 4.10059 -8.77051 0.570312 -12.1406l-11.75 -11.21c-2.76953 -2.63965 -6.88965 -2.75977 -10.1299 -0.729492
c-3.86035 2.42969 -8.25977 3.71973 -12.8203 3.71973h-28.1094c-6.5 0 -11.8008 -5.91992 -11.8008 -13.1904c0 -5.94922 3.61035 -11.1797 8.77051 -12.7295z" />
    <glyph glyph-name="search-location" unicode="&#xf689;" 
d="M505.04 5.33984c9.2998 -9.39941 9.2998 -24.5898 -0.0996094 -33.9902l-28.3008 -28.2998c-9.2998 -9.39941 -24.5 -9.39941 -33.8994 0l-99.71 99.6904c-4.5 4.5 -7 10.5996 -7 17v16.2998c-35.2998 -27.5996 -79.71 -44 -128.011 -44
c-114.909 0 -208.02 93.0898 -208.02 207.979c0 114.891 93.1201 207.98 208.02 207.98c114.9 0 208.011 -93.0898 208.011 -207.98c0 -48.2998 -16.4004 -92.6895 -44 -127.989h16.2998c6.40039 0 12.5 -2.5 17 -7zM208.02 96.04c79.6504 0 144 64.4502 144 143.979
c0 79.6406 -64.46 143.98 -144 143.98c-79.6494 0 -144 -64.4502 -144 -143.98c0 -79.6396 64.4609 -143.979 144 -143.979zM208.04 336c40.7803 0 73.8398 -33.0498 73.8398 -73.8301c0 -32.9697 -48.2598 -93.0498 -66.75 -114.86
c-1.69531 -2.02832 -4.23926 -3.32031 -7.08691 -3.32031c-2.84863 0 -5.39746 1.29199 -7.09277 3.32031c-18.4902 21.8105 -66.75 81.9004 -66.75 114.86c0 40.7803 33.0596 73.8301 73.8398 73.8301zM208.04 240c13.25 0 24 10.75 24 24c0 13.2598 -10.75 24 -24 24
s-24 -10.7402 -24 -24c0 -13.25 10.7402 -24 24 -24z" />
    <glyph glyph-name="socks" unicode="&#xf696;" 
d="M214.66 136.99c-52.7402 -39.5605 -69.0498 -110.021 -39.2002 -165.4l-21.8604 -16.3896c-17.2695 -12.9502 -37.4893 -19.2002 -57.5195 -19.2002c-32.8105 0 -65.6904 16.75 -83.9404 48.3301c-24.6494 42.6396 -10.1895 97.5 29.21 127.06l86.6504 64.6104v176h160
v-160zM288 416v-32h-160v32c0 17.6699 14.3301 32 32 32h128c2.84961 0 5.40039 -0.919922 8.01953 -1.62012c-4.94922 -9.08008 -8.01953 -19.3301 -8.01953 -30.3799zM480 448c17.6699 0 32 -14.3301 32 -32v-32h-192v32c0 17.6699 14.3301 32 32 32h128zM320 176v176h192
v-208c0 -41.8877 -20.0566 -79.043 -51.2002 -102.4l-115.2 -86.3994c-17.2695 -12.9502 -37.4893 -19.2002 -57.5195 -19.2002c-32.8105 0 -65.1699 16.75 -83.4199 48.3301c-24.6504 42.6396 -10.1904 97.5 29.21 127.06z" />
    <glyph glyph-name="square-root-alt" unicode="&#xf698;" horiz-adv-x="576" 
d="M571.31 196.69c6.25 -6.25 6.25 -16.3809 0 -22.6309l-46.0596 -46.0596l46.0596 -46.0596c6.25 -6.25 6.25 -16.3809 0 -22.6309l-22.6191 -22.6191c-6.25 -6.25 -16.3809 -6.25 -22.6309 0l-46.0596 46.0596l-46.0596 -46.0596c-6.25 -6.25 -16.3809 -6.25 -22.6309 0
l-22.6191 22.6191c-6.25 6.25 -6.25 16.3809 0 22.6309l46.0596 46.0596l-46.0596 46.0596c-6.25 6.25 -6.25 16.3809 0 22.6309l22.6191 22.6191c6.25 6.25 16.3809 6.25 22.6309 0l46.0596 -46.0596l46.0596 46.0596c6.25 6.25 16.3809 6.25 22.6309 0zM552 448
c13.25 0 24 -10.7402 24 -24v-48c0 -13.25 -10.75 -24 -24 -24h-194.97l-97.8105 -374.52c-9.83984 -32.4805 -37.0098 -41.4805 -54.2793 -41.4805c-18.6406 0 -35.9502 8.5 -48.4404 28.2695l-88.8799 163.73h-43.6201c-13.25 0 -24 10.75 -24 24v48
c0 13.2598 10.75 24 24 24h81.4697c12.0801 -0.00292969 22.584 -6.67871 28.0303 -16.5703l58.4102 -106.1l84.79 322.8c3.68945 14.0703 16.4102 23.8701 30.9502 23.8701h244.35z" />
    <glyph glyph-name="star-and-crescent" unicode="&#xf699;" 
d="M340.47 -18.3604c8.74023 0 15.1299 -6.96973 15.1299 -15.0596c0 -6.62012 -4.31934 -12.2402 -10.2793 -14.2598c-29.04 -10.8301 -59.0898 -16.3203 -89.3203 -16.3203c-141.16 0 -256 114.84 -256 256s114.84 256 256 256c30.3896 0 60.5801 -5.54004 89.75 -16.4805
c6.91992 -2.59961 10.9297 -9.83984 9.46973 -17.0898c-1.41992 -7.04004 -7.62012 -12.0693 -14.75 -12.0693c-1.47949 0 -6.85938 0.459961 -9.17969 0.459961c-116.25 0 -210.82 -94.5703 -210.82 -210.82s94.5703 -210.82 210.82 -210.82
c2.29004 0 7.72949 0.459961 9.17969 0.459961zM503.46 234.14c8.16992 -1.17969 11.4297 -11.2197 5.52051 -16.9893l-55.2705 -53.8701l13.0498 -76.0703c1.11035 -6.42969 -4.00977 -11.6602 -9.80957 -11.6602c-1.53027 0 -3.11035 0.370117 -4.64062 1.16992
l-68.3096 35.9102l-68.3301 -35.9102c-1.53027 -0.80957 -3.11035 -1.16992 -4.63965 -1.16992c-5.7998 0 -10.9199 5.21973 -9.81055 11.6602l13.0498 76.0703l-55.2695 53.8701c-5.91016 5.76953 -2.65039 15.8096 5.51953 16.9893l76.3809 11.1006l34.1592 69.21
c1.83008 3.7002 5.38086 5.5498 8.93066 5.5498s7.09961 -1.84961 8.92969 -5.5498l34.1602 -69.21z" />
    <glyph glyph-name="star-of-david" unicode="&#xf69a;" horiz-adv-x="464" 
d="M405.68 192l53.2207 -89.3896c14.4092 -24.21 -3.41016 -54.6104 -32.0107 -54.6104h-106.93l-55.9502 -93.9805c-7.14941 -12.0098 -19.5801 -18.0195 -32.0098 -18.0195s-24.8604 6.00977 -32.0098 18.0195l-55.9502 93.9805h-106.93
c-28.6006 0 -46.4199 30.4004 -32.0107 54.6104l53.2207 89.3896l-53.2207 89.3896c-14.4092 24.21 3.41016 54.6104 32.0107 54.6104h106.93l55.9502 93.9805c7.14941 12.0098 19.5801 18.0195 32.0098 18.0195s24.8604 -6.00977 32.0098 -18.0195l55.9502 -93.9805h106.92
c28.6006 0 46.4199 -30.4004 32.0098 -54.6104zM392.9 280h-39.6006l19.7998 -33.2598zM340.51 192l-52.3896 88h-112.25l-52.3799 -88l52.3896 -88h112.24zM232 374.28l-22.7803 -38.2803h45.5703zM71.0996 280l19.8008 -33.2598l19.7998 33.2598h-39.6006zM71.0996 104
h39.6006l-19.7998 33.2598zM232 9.71973l22.7803 38.2803h-45.5703zM353.29 104h39.6104l-19.8105 33.2598z" />
    <glyph glyph-name="synagogue" unicode="&#xf69b;" horiz-adv-x="640" 
d="M70 251.49c5.30957 6.00977 14.6904 6.00977 20 0l38 -43.0703v-272.42h-128v226.07l0.00488281 0.0185547c0 6.75391 2.51758 12.9229 6.66504 17.6211zM633.33 179.71c4.2998 -4.87012 6.66992 -11.1396 6.66992 -17.6396v-226.07h-128v272.42l38 43.0703
c5.30957 6.01953 14.6904 6.01953 20 0zM339.99 440.99l128 -102.4c7.58984 -6.07031 12.0098 -15.2695 12.0098 -24.9902v-377.6h-96v96c0 38.8701 -34.6602 69.6504 -74.75 63.1201c-31.4697 -5.12012 -53.25 -34.6699 -53.25 -66.5498v-92.5703h-96v377.6
c0 10.1123 4.67773 19.123 12.0098 24.9902l128 102.4c11.6904 9.34961 28.29 9.34961 39.9805 0zM392.06 225.44l-19.1895 30.5596l19.2002 30.5703c1.97949 3.14941 -0.290039 7.23926 -4 7.23926h-38.9502l-25.1201 39.9805c-1.84961 2.9502 -6.15039 2.9502 -8 0
l-25.1201 -40h-38.9395c-3.70996 0 -5.98047 -4.08984 -4 -7.24023l19.1992 -30.5596l-19.1992 -30.5605c-1.98047 -3.14941 0.279297 -7.23926 4 -7.23926h38.9395l25.1201 -39.9805c1.84961 -2.9502 6.15039 -2.9502 8 0l25.1201 39.9902h38.9395
c3.70996 0 5.98047 4.08984 4 7.24023z" />
    <glyph glyph-name="torah" unicode="&#xf6a0;" horiz-adv-x="640" 
d="M320.05 81.5195l-17.7402 29.6406h35.46zM419.26 247.52l-18.3994 -30.8193l-18.46 30.8193h36.8594zM48 448c26.5098 0 48 -14.3301 48 -32v-448c0 -17.6699 -21.4902 -32 -48 -32s-48 14.3301 -48 32v448c0 17.6699 21.4902 32 48 32zM220.74 136.5l18.3896 30.8203
l18.46 -30.8203h-36.8496zM382.45 136.5l18.4102 30.7998l18.4492 -30.7998h-36.8594zM128 -16v416h384v-416h-384zM194.77 262.13c-1.7627 -3.04492 -2.77148 -6.62402 -2.77148 -10.3936c0 -3.92969 1.09668 -7.60547 3.00195 -10.7363l29.3604 -49l-29.21 -48.8398
c-1.91211 -3.17578 -3.02637 -6.91699 -3.02637 -10.8906c0 -11.6504 9.45898 -21.1094 21.1104 -21.1094h0.015625h59.5l29.25 -48.8799c3.61816 -6.12793 10.2754 -10.2207 17.9004 -10.2207h0.0996094c7.7373 0.0166016 14.4912 4.17676 18.1602 10.4004l29.1299 48.7002
h59.4697c0.0078125 0 0.00195312 -0.0224609 0.00878906 -0.0224609c7.90723 0 14.8115 4.32812 18.4717 10.7422c1.75879 3.04199 2.76562 6.61621 2.76562 10.3799c0 3.93164 -1.09863 7.6084 -3.00586 10.7402l-29.3701 49l29.2402 48.8496
c1.90723 3.17383 3.01758 6.91113 3.01758 10.8809c0 11.6553 -9.46191 21.1182 -21.1182 21.1191h-59.5195l-29.25 48.8604c-3.6123 6.12207 -10.2617 10.21 -17.8779 10.21h-0.0722656c-0.0117188 0 -0.00976562 0.0224609 -0.0214844 0.0224609
c-7.74316 0 -14.5186 -4.17383 -18.1982 -10.3926l-29.1299 -48.71h-59.4502c-0.015625 0 -0.0166016 0.0224609 -0.0322266 0.0224609c-7.89844 0 -14.7939 -4.32422 -18.4482 -10.7324zM592 448c26.5098 0 48 -14.3301 48 -32v-448c0 -17.6699 -21.4902 -32 -48 -32
s-48 14.3301 -48 32v448c0 17.6699 21.4902 32 48 32zM320 302.47l17.6797 -29.6201h-35.46zM257.55 247.47l-18.3701 -30.7998l-18.4395 30.7998h36.8096zM287.13 136.47l-33.2295 55.5303l33.1699 55.5195h65.79l33.2295 -55.5195l-33.1699 -55.5303h-65.79z" />
    <glyph glyph-name="torii-gate" unicode="&#xf6a1;" 
d="M376.45 416c48.5918 0.00292969 94.8242 11.6396 135.55 32v-96c0 -17.6699 -14.3301 -32 -32 -32h-32v-64h48c8.83984 0 16 -7.16016 16 -16v-32c0 -8.83984 -7.16016 -16 -16 -16h-48v-240c0 -8.83984 -7.16016 -16 -16 -16h-32c-8.83984 0 -16 7.16016 -16 16v240
h-256v-240c0 -8.83984 -7.16016 -16 -16 -16h-32c-8.83984 0 -16 7.16016 -16 16v240h-48c-8.83984 0 -16 7.16016 -16 16v32c0 8.83984 7.16016 16 16 16h48v64h-32c-17.6699 0 -32 14.3301 -32 32v96c40.7256 -20.3604 86.958 -31.9971 135.55 -32h240.9zM128 320v-64h96
v64h-96zM384 256v64h-96v-64h96z" />
    <glyph glyph-name="vihara" unicode="&#xf6a7;" horiz-adv-x="640" 
d="M632.88 47.29c5.41992 -3.61035 7.7002 -9.62012 6.99023 -15.29c-0.620117 -5.00977 -3.56055 -9.75 -8.71973 -12.3301l-55.1504 -19.6699v-48c0 -8.83984 -7.16016 -16 -16 -16h-32c-8.83984 0 -16 7.16016 -16 16v48h-160v-48c0 -8.83984 -7.16016 -16 -16 -16h-32
c-8.83984 0 -16 7.16016 -16 16v48h-160v-48c0 -8.83984 -7.16016 -16 -16 -16h-32c-8.83984 0 -16 7.16016 -16 16v48l-55.1602 19.6699c-5.14941 2.58008 -8.09961 7.32031 -8.71973 12.3301c-0.700195 5.66016 1.58008 11.6699 7 15.29l88.8799 48.71v64
l-55.1602 17.6904c-11.79 5.89941 -11.79 22.7197 0 28.6191l119.16 49.6904v64l-27.3096 16.3096c-7.7207 7.7207 -5.61035 20.7402 4.15918 25.6201l183.15 86.0703l183.15 -86.0801c9.76953 -4.87988 11.8799 -17.9004 4.15918 -25.6201l-27.3096 -16.2998v-64
l119.16 -49.6904c11.79 -5.89941 11.79 -22.7197 0 -28.6191l-55.1602 -17.6904v-64zM224 320v-64h192v64h-192zM160 96h320v64h-320v-64z" />
    <glyph glyph-name="volume-mute" unicode="&#xf6a9;" 
d="M215.03 376.95c15.0098 15.0098 40.9697 4.49023 40.9697 -16.9697v-335.961c0 -21.4395 -25.9404 -32 -40.9697 -16.9697l-88.9707 88.9502h-102.06c-13.2598 0 -24 10.75 -24 24v144c0 13.2598 10.7402 24 24 24h102.06zM461.64 192l45.6406 -45.6396
c6.2998 -6.30078 6.2998 -16.5205 0 -22.8203l-22.8203 -22.8203c-6.2998 -6.2998 -16.5195 -6.2998 -22.8203 0l-45.6396 45.6406l-45.6299 -45.6299c-6.2998 -6.30078 -16.5205 -6.30078 -22.8203 0l-22.8193 22.8193c-6.30078 6.2998 -6.30078 16.5205 0 22.8203
l45.6299 45.6299l-45.6406 45.6396c-6.2998 6.30078 -6.2998 16.5205 0 22.8203l22.8203 22.8203c6.2998 6.2998 16.5195 6.2998 22.8203 0l45.6396 -45.6406l45.6396 45.6406c6.30078 6.2998 16.5205 6.2998 22.8203 0l22.8203 -22.8203
c6.2998 -6.2998 6.2998 -16.5195 0 -22.8203z" />
    <glyph glyph-name="yin-yang" unicode="&#xf6ad;" horiz-adv-x="496" 
d="M248 440c136.97 0 248 -111.03 248 -248s-111.03 -248 -248 -248s-248 111.03 -248 248s111.03 248 248 248zM248 64c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32s-32 -14.3301 -32 -32s14.3301 -32 32 -32zM248 192c53.0195 0 96 42.9805 96 96s-42.9805 96 -96 96
c-106.04 0 -192 -85.96 -192 -192s85.96 -192 192 -192c-53.0195 0 -96 42.9805 -96 96s42.9805 96 96 96zM248 320c17.6699 0 32 -14.3301 32 -32s-14.3301 -32 -32 -32s-32 14.3301 -32 32s14.3301 32 32 32z" />
    <glyph glyph-name="blender-phone" unicode="&#xf6b6;" horiz-adv-x="576" 
d="M392 384c-4.41992 0 -8 -3.58008 -8 -8v-16c0 -4.41992 3.58008 -8 8 -8h157.82l-17.46 -64h-140.36c-4.41992 0 -8 -3.58008 -8 -8v-16c0 -4.41992 3.58008 -8 8 -8h131.64l-17.46 -64h-114.18c-4.41992 0 -8 -3.58008 -8 -8v-16c0 -4.41992 3.58008 -8 8 -8h105.46
l-17.46 -64h-288v352h384l-17.46 -64h-166.54zM158.8 112.99c3.00977 -7.40039 0.200195 -15.8506 -6.68945 -20.0703l-39.4102 -24.1797c-12.5303 -7.68066 -31.7803 -6 -41.6504 4.7998c-94.0996 102.94 -94.6699 258.89 -2.09961 362.49
c11.1396 12.4697 29.5596 15.8398 43.8896 7.0498l39.2803 -24.0996c6.87988 -4.2207 9.7002 -12.6807 6.67969 -20.0703l-25.7803 -63.2598c-2.7793 -6.80078 -9.80957 -10.9902 -17.2393 -10.2607l-45.0303 4.41992c-17.6504 -47.9395 -17.2803 -100.779 0 -147.72
l45.0303 4.41992c7.43945 0.730469 14.46 -3.4502 17.2393 -10.2598zM480 64c35.3496 0 64 -28.6504 64 -64v-32c0 -17.6699 -14.3301 -32 -32 -32h-352c-17.6699 0 -32 14.3301 -32 32v32c0 35.3496 28.6504 64 64 64h288zM336 -32c17.6699 0 32 14.3301 32 32
s-14.3301 32 -32 32s-32 -14.3301 -32 -32s14.3301 -32 32 -32z" />
    <glyph glyph-name="book-dead" unicode="&#xf6b7;" horiz-adv-x="448" 
d="M272 312c-8.7998 0 -16 7.2002 -16 16s7.2002 16 16 16s16 -7.2002 16 -16s-7.2002 -16 -16 -16zM448 89.5996c0 -9.59961 -3.2002 -16 -9.59961 -19.1992c-3.2002 -12.8008 -3.2002 -57.6006 0 -73.6006c6.39941 -6.39941 9.59961 -12.7998 9.59961 -19.2002v-16
c0 -16 -12.7998 -25.5996 -25.5996 -25.5996h-326.4c-54.4004 0 -96 41.5996 -96 96v320c0 54.4004 41.5996 96 96 96h326.4c16 0 25.5996 -9.59961 25.5996 -25.5996v-332.801zM240 392c-44.2002 0 -80 -28.7002 -80 -64c0 -20.9004 12.7002 -39.2002 32 -50.9004v-13.0996
c0 -8.7998 7.2002 -16 16 -16h64c8.7998 0 16 7.2002 16 16v13.0996c19.2998 11.7002 32 30 32 50.9004c0 35.2998 -35.7998 64 -80 64zM124.8 224.7c-1.7002 -4.10059 0.100586 -8.7998 4.2002 -10.5l70.5 -30.2998l-70.4004 -30.1006
c-4.09961 -1.7002 -5.89941 -6.39941 -4.19922 -10.5l6.2998 -14.7002c1.7002 -4.09961 6.39941 -5.89941 10.5 -4.19922l98.2998 42.1992l98.2998 -42.0996c4.10059 -1.7002 8.7998 0.0996094 10.5 4.2002l6.2998 14.7002c1.7002 4.09961 -0.0996094 8.7998 -4.19922 10.5
l-70.3008 30.0996l70.3008 30.2002c4.09961 1.7002 5.89941 6.39941 4.19922 10.5l-6.2998 14.7002c-1.7002 4.09961 -6.39941 5.89941 -10.5 4.19922l-98.3994 -42.0996l-98.3008 42.0996c-4.09961 1.7002 -8.7998 -0.0996094 -10.5 -4.19922zM380.8 0v64h-284.8
c-16 0 -32 -12.7998 -32 -32s12.7998 -32 32 -32h284.8zM208 312c-8.7998 0 -16 7.2002 -16 16s7.2002 16 16 16s16 -7.2002 16 -16s-7.2002 -16 -16 -16z" />
    <glyph glyph-name="campground" unicode="&#xf6bb;" horiz-adv-x="640" 
d="M624 0c8.83984 0 16 -7.16016 16 -16v-32c0 -8.83984 -7.16016 -16 -16 -16h-608c-8.83984 0 -16 7.16016 -16 16v32c0 8.83984 7.16016 16 16 16h24.6797l239.79 330.25l-53.4102 73.5498c-5.19922 7.15039 -3.60938 17.1602 3.54004 22.3506l25.8809 18.7998
c7.14941 5.18945 17.1592 3.59961 22.3496 -3.5498l41.1699 -56.7002l41.1602 56.6895c5.2002 7.16016 15.2002 8.74023 22.3496 3.55078l25.9004 -18.79c7.14941 -5.19043 8.72949 -15.2002 3.54004 -22.3506l-53.4102 -73.5498l239.78 -330.25h24.6797zM320 160
l-116.36 -160h232.721z" />
    <glyph glyph-name="cat" unicode="&#xf6be;" 
d="M290.59 256c11.8906 -58.3496 63.6006 -102.4 125.41 -102.4c11.1104 0 21.71 1.87012 32 4.54004v-206.14c0 -8.83984 -7.16016 -16 -16 -16h-32c-8.83984 0 -16 7.16016 -16 16v144l-128 -96h32c17.6699 0 32 -14.3301 32 -32v-16c0 -8.83984 -7.16016 -16 -16 -16
h-176c-35.2998 0 -64 28.7002 -64 64v256c0 17.6396 -14.3604 32 -32 32c-17.6699 0 -32 14.3301 -32 32s14.3301 32 32 32c52.9404 0 96 -43.0596 96 -96v-85.9502c55.7695 83.9697 142.41 85.9502 162.59 85.9502zM448 352l64 64v-134.4c0 -53.0195 -42.9805 -96 -96 -96
s-96 42.9805 -96 96v134.4l64 -64h64zM376 272c8.83984 0 16 7.16016 16 16s-7.16016 16 -16 16s-16 -7.16016 -16 -16s7.16016 -16 16 -16zM456 272c8.83984 0 16 7.16016 16 16s-7.16016 16 -16 16s-16 -7.16016 -16 -16s7.16016 -16 16 -16z" />
    <glyph glyph-name="chair" unicode="&#xf6c0;" horiz-adv-x="448" 
d="M112 320v-128h-48v128c0 70.7002 57.2998 128 128 128h64c70.7002 0 128 -57.2998 128 -128v-128h-48v128c0 29.5 -16.2002 55 -40 68.9004v-196.9h-48v208h-48v-208h-48v196.9c-23.7998 -13.9004 -40 -39.4004 -40 -68.9004zM446.3 106.1
c6.90039 -20.6992 -8.5 -42.0996 -30.2998 -42.0996v-112c0 -8.7998 -7.2002 -16 -16 -16h-32c-8.7998 0 -16 7.2002 -16 16v112h-256v-112c0 -8.7998 -7.2002 -16 -16 -16h-32c-8.7998 0 -16 7.2002 -16 16v112c-21.7998 0 -37.2002 21.4004 -30.4004 42.0996l10.7002 32
c4.40039 13.1006 16.6006 21.9004 30.4004 21.9004h362.5c13.7998 0 26 -8.7998 30.3994 -21.9004z" />
    <glyph glyph-name="cloud-moon" unicode="&#xf6c3;" horiz-adv-x="576" 
d="M342.8 95.2998c40.9004 -3.5 73.2002 -37.3994 73.2002 -79.2998c0 -44.2002 -35.7998 -80 -80 -80h-240c-53 0 -96 43 -96 96c0 41.9004 27.0996 77.2002 64.5996 90.2998c-0.0996094 1.90039 -0.599609 3.7002 -0.599609 5.7002c0 53 43 96 96 96
c36.2002 0 67.4004 -20.2998 83.7002 -49.9004c11.5 11 27.0996 17.9004 44.2998 17.9004c35.2998 0 64 -28.7002 64 -64c0 -12 -3.5 -23.0996 -9.2002 -32.7002zM565.3 149.6c8.2002 1.60059 14 -8 8.7002 -14.5c-33.4004 -41.0996 -82.7002 -67 -137.1 -70.3994
c-11.1006 23.0996 -29.9004 41.7998 -53.5 52.5996c0.399414 3.5 0.599609 7.10059 0.599609 10.7002c0 52.9004 -43.0996 96 -96 96c-12.7002 0 -25 -2.5 -36.4004 -7.2002c-5.09961 5.2998 -10.7998 9.90039 -16.6992 14.2002c-1.10059 8.2002 -1.80078 16.5 -1.80078 25
c0 106.1 86 192 191.9 192c11.7002 0 23.4004 -1.09961 35.0996 -3.2002c8.2002 -1.59961 10.1006 -12.5996 2.80078 -16.7002c-47.1006 -26.7998 -76.1006 -76.5996 -76.1006 -130.8c0 -94 85.4004 -165.399 178.5 -147.7z" />
    <glyph glyph-name="cloud-sun" unicode="&#xf6c4;" horiz-adv-x="640" 
d="M575.2 122.3c37.5996 -13 64.7998 -48.2998 64.7998 -90.3994c0 -53 -43 -96 -96 -96h-272c-53 0 -96 43 -96 96c0 50.5996 39.2998 91.5996 88.9004 95.2998c-0.200195 2.89941 -0.900391 5.7002 -0.900391 8.7002c0 61.8994 50.2002 112 112 112
c45.4004 0 84.2998 -27.2002 101.9 -66c9.89941 6.19922 21.5 10 34.0996 10c35.2998 0 64 -28.7002 64 -64c0 -1.90039 -0.599609 -3.7002 -0.799805 -5.60059zM144.8 144.9c10.6006 -10.6006 22.9004 -18.6006 36 -24c-9.59961 -9.80078 -17.5 -21.1006 -23.5996 -33.5
l-76.1006 -25.3008c-11.8994 -3.89941 -23.1992 7.30078 -19.1992 19.2002l29.2998 87.7998l-82.7998 41.4004c-11.2002 5.59961 -11.2002 21.5 0 27.0996l82.7998 41.5l-29.2998 87.8008c-3.90039 11.7998 7.39941 23.0996 19.1992 19.1992l87.9004 -29.2998
l41.4004 82.7998c5.59961 11.2002 21.5996 11.2002 27.0996 0l41.5 -82.7998l87.7998 29.2998c11.9004 3.90039 23.2002 -7.2998 19.2002 -19.1992l-29.7998 -88.9004c-10.6006 -1.5 -20.9004 -3.7998 -30.7002 -7.5c-5.40039 11.7998 -12.5996 23 -22.2998 32.7002
c-43.7002 43.7002 -114.7 43.7002 -158.4 0c-43.7002 -43.6006 -43.7002 -114.601 0 -158.3zM140 224.1c0 46.3008 37.7002 83.9004 84 83.9004c34 0 63.2998 -20.4004 76.5 -49.5c-36.4004 -22.5 -62 -60.7002 -67.4004 -105
c-8.89941 -2.90039 -17.1992 -7 -25.1992 -11.7002c-38.6006 7.5 -67.9004 41.5 -67.9004 82.2998z" />
    <glyph glyph-name="dice-d20" unicode="&#xf6cf;" horiz-adv-x="480" 
d="M106.75 232.94l108.64 -190.101l-208.26 22.0703c-5.83008 0.639648 -9.00977 7.13965 -5.92969 12.1396zM7.41016 132.57c-2.12012 -3.44043 -7.41016 -1.94043 -7.41016 2.08984v162.81c0 3.11035 3.38965 5.03027 6.05957 3.43066l76.6406 -45.9805zM18.25 24.4004
c-4.03027 1.97949 -2.25 8.06934 2.2002 7.56934l203.55 -22.2998v-65.6699c0 -5.83008 -6.0498 -9.70996 -11.3496 -7.25977zM99.4697 282.18l-81.5293 48.6904c-2.52051 1.51953 -2.60059 5.16016 -0.130859 6.78027l150.811 98.6094
c7.18945 4.11035 15.1201 -4.08008 10.7803 -11.1396zM240 272h-109.21l95.5801 168.38c3.12988 5.08008 8.37988 7.62012 13.6299 7.62012s10.5 -2.54004 13.6299 -7.62012l95.5801 -168.38h-109.21zM473.94 300.9c2.66992 1.59961 6.05957 -0.320312 6.05957 -3.43066
v-162.81c0 -4.04004 -5.2998 -5.54004 -7.41016 -2.10059l-75.29 122.351zM380.53 282.18l-79.9307 142.94c-4.33984 7.05957 3.59082 15.25 10.7803 11.1396l150.811 -98.5996c2.46973 -1.62012 2.39941 -5.25977 -0.130859 -6.78027zM459.55 31.9697
c4.4502 0.5 6.23047 -5.58984 2.2002 -7.55957l-194.4 -87.6602c-5.2998 -2.4502 -11.3496 1.41992 -11.3496 7.25977v65.6699zM373.25 232.94l105.56 -155.891c3.08008 -5 -0.0996094 -11.4902 -5.92969 -12.1396l-208.26 -22.0703zM240 240h100.43l-100.43 -175.75
l-100.43 175.75h100.43z" />
    <glyph glyph-name="dice-d6" unicode="&#xf6d1;" horiz-adv-x="448" 
d="M422.19 338.05c5.3291 -3.24023 5.2998 -11.2695 -0.0507812 -14.46l-198.14 -118.14l-198.13 118.14c-5.35059 3.19043 -5.37988 11.2305 -0.0605469 14.46l165.971 100.88c19.9102 12.1006 44.5195 12.1006 64.4297 0zM436.03 293.42
c5.33008 3.17969 11.9697 -0.839844 11.9697 -7.25v-197.7c0 -23.7598 -12.1104 -45.7393 -31.79 -57.7002l-152.16 -92.4795c-10.6602 -6.48047 -24.0498 1.5498 -24.0498 14.4297v223.82zM0 286.17c0 6.41016 6.63965 10.4297 11.9697 7.25l196.03 -116.88v-223.81
c0 -12.8906 -13.3799 -20.9102 -24.0498 -14.4307l-152.16 92.4697c-19.6797 11.9609 -31.79 33.9307 -31.79 57.7002v197.7z" />
    <glyph glyph-name="dog" unicode="&#xf6d3;" horiz-adv-x="576" 
d="M298.06 224l149.94 -53.5498v-218.45c0 -8.83105 -7.16895 -16 -16 -16h-64c-8.83105 0 -16 7.16895 -16 16v112h-160v-112c0 -8.83105 -7.16895 -16 -16 -16h-64c-8.83105 0 -16 7.16895 -16 16v213.91c-37.1602 13.25 -64 48.4297 -64 90.0898
c0 17.6611 14.3389 32 32 32s32 -14.3389 32 -32c0.0332031 -17.6455 14.3545 -31.9668 32 -32h170.06zM544 336v-32c0 -35.3223 -28.6777 -64 -64 -64h-32v-35.5801l-128 45.71v149.87c0 14.25 17.2197 21.3896 27.3096 11.3096l27.2803 -27.3096h53.6299
c10.9102 0 23.75 -7.91992 28.6201 -17.6904l7.16016 -14.3096h64c8.83105 0 16 -7.16895 16 -16zM432 336c0 8.83105 -7.16895 16 -16 16s-16 -7.16895 -16 -16s7.16895 -16 16 -16s16 7.16895 16 16z" />
    <glyph glyph-name="dragon" unicode="&#xf6d5;" horiz-adv-x="640" 
d="M18.3203 192.22c-15.96 -2.2793 -24.8906 17.8105 -12.5107 28.1406l117.4 116.34c21.7705 18.5996 53.2402 20.4697 77.0596 4.58984l119.73 -87.5996v-42.2705c0 -28.9102 5.29004 -56.9795 14.7305 -83.3799h-222.7c-14.25 0 -21.3906 17.2295 -11.3105 27.3096
l91.2803 68.6904zM575.19 158.12c41.9092 -20.96 67.1592 -64.0801 64.6396 -111.36c-3.37988 -63.2002 -59.7002 -110.77 -122.99 -110.76h-499.08c-9.80957 0 -17.7598 8 -17.7598 17.7998c0 8.32031 5.78027 15.5303 13.9004 17.3301
c89.54 19.9004 238.51 54.1006 434.1 60.9102c-59.9697 39.9902 -96 107.3 -96 179.38v108.62l-59.5801 24.8496c-5.90039 2.9502 -5.90039 11.3604 0 14.3105l59.5801 24.8398l-61.6396 50.3496c-5.04004 5.04004 -1.4707 13.6104 5.65918 13.6104h237.45
c10.0703 0 19.5498 -4.7002 25.6006 -12.7598l74.5293 -99.3799c4.00781 -5.3457 6.37988 -12.042 6.37988 -19.2305c0 -5.12988 -1.20996 -9.98047 -3.35938 -14.2803l-14.3105 -28.6191c-5.25 -10.502 -16.0889 -17.6895 -28.6191 -17.6904h-30.9707
c-8.48926 0 -16.6299 3.37012 -22.6299 9.37012l-28.0898 22.6299h-64v-36.6904c0.00195312 -18.791 10.7812 -35.0459 26.5303 -42.9199zM489.18 381.75c-4.33008 -17.1396 8.56055 -28.96 21.5205 -29.6699c11.6602 -0.629883 21.3799 7.34961 24.1299 18.2598z" />
    <glyph glyph-name="drumstick-bite" unicode="&#xf6d7;" 
d="M462.8 398.43c34.3203 -34.2793 50.4307 -79.5996 49.1299 -124.56c-41.9795 22.6602 -94.3594 17.5596 -128.739 -16.7998c-40.8809 -40.8398 -40.6904 -107.181 -1.05078 -151.07c-18.9736 -6.45312 -39.3203 -10.0049 -60.4648 -10.0049
c-0.475586 0 -0.950195 0.000976562 -1.4248 0.00488281h-85.8896l-40.6104 -40.5596c-9.71973 -9.75 -11.0898 -24.0205 -6 -36.75c2.77051 -6.92383 4.3125 -14.5234 4.3125 -22.4316c0 -33.3086 -27.042 -60.3506 -60.3496 -60.3506
c-16.7041 0 -31.8311 6.80078 -42.7627 17.7822c-15.2803 15.2695 -19.6006 36.5 -15.1006 56.0996c-19.6094 -4.49023 -40.8496 -0.179688 -56.1191 15.0703c-10.9395 10.9229 -17.668 26.002 -17.668 42.666c0 33.2979 27.0332 60.3301 60.3301 60.3301
c7.88965 0 15.4277 -1.51758 22.3379 -4.27637c12.7793 -5.07031 27.0791 -3.69043 36.7793 6l40.6201 40.5898v85.8301c0 64 27.6904 107 63.1699 142.43c30.666 30.6338 73.0479 49.5889 119.774 49.5889s89.0605 -18.9551 119.726 -49.5889z" />
    <glyph glyph-name="dungeon" unicode="&#xf6d9;" 
d="M128.73 252.68c6.58984 -4.12012 8.89941 -12.2393 6.33984 -19.5801c-3 -8.60938 -5.15039 -17.6094 -6.24023 -26.9395c-0.929688 -7.91016 -7.0498 -14.1602 -15.0098 -14.1602h-97.1299c-9.10059 0 -16.7402 7.62988 -16.1504 16.7197
c2.0293 31.5166 9.95215 61.9062 22.4502 89.2705c3.93945 8.62012 14.8896 11.4697 22.9297 6.4502zM319.03 440c9.16992 -2.36035 13.9102 -12.5996 10.3896 -21.3896l-37.4697 -104.03c-2.28027 -6.34961 -8.2998 -10.5801 -15.0498 -10.5801h-41.8008
c-6.92773 0.00292969 -12.8281 4.41211 -15.0498 10.5801l-37.4697 104.03c-3.52051 8.79004 1.21973 19.04 10.3896 21.3896c20.1699 5.17969 41.2607 8 63.0303 8s42.8604 -2.82031 63.0303 -8zM112 160c8.83984 0 16 -7.16016 16 -16v-64
c0 -8.83984 -7.16016 -16 -16 -16h-96c-8.83984 0 -16 7.16016 -16 16v64c0 8.83984 7.16016 16 16 16h96zM112 32c8.83984 0 16 -7.16016 16 -16v-64c0 -8.83984 -7.16016 -16 -16 -16h-96c-8.83984 0 -16 7.16016 -16 16v64c0 8.83984 7.16016 16 16 16h96zM189.31 315.67
c2.85059 -7.12012 -0.0195312 -14.8799 -6.2998 -19.29c-6 -4.2002 -11.6094 -8.89941 -16.79 -14.0498c-5.4502 -5.41016 -13.5996 -6.86035 -20.1094 -2.79004l-82.9307 51.8301c-8.06934 5.04004 -10.2793 16.2002 -4.21973 23.5195
c20.0459 24.1963 44.0801 44.3428 71.6104 59.8906c8.29004 4.67969 18.8896 0.519531 22.4199 -8.31055zM398.18 192c-7.95996 0 -14.0801 6.25 -15.0098 14.1602c-1.08984 9.32031 -3.22949 18.3301 -6.24023 26.9395c-2.55957 7.34082 -0.25 15.46 6.33984 19.5801
l82.8105 51.7607c8.04004 5.01953 18.9902 2.16992 22.9297 -6.4502c12.499 -27.3633 20.4219 -57.7529 22.4502 -89.2705c0.589844 -9.08984 -7.0498 -16.7197 -16.1504 -16.7197h-97.1299zM453.03 354.89c6.06934 -7.31934 3.84961 -18.4795 -4.2207 -23.5098
l-82.9297 -51.8301c-6.50977 -4.06934 -14.6699 -2.62012 -20.1104 2.79004c-5.17969 5.15039 -10.7891 9.85059 -16.7891 14.0498c-6.28027 4.40039 -9.15039 12.1602 -6.30078 19.2803l36.3203 90.7998c3.54004 8.83008 14.1396 12.9902 22.4199 8.31055
c27.5303 -15.5479 51.5645 -35.6943 71.6104 -59.8906zM496 160c8.83984 0 16 -7.16016 16 -16v-64c0 -8.83984 -7.16016 -16 -16 -16h-96c-8.83984 0 -16 7.16016 -16 16v64c0 8.83984 7.16016 16 16 16h96zM496 32c8.83984 0 16 -7.16016 16 -16v-64
c0 -8.83984 -7.16016 -16 -16 -16h-96c-8.83984 0 -16 7.16016 -16 16v64c0 8.83984 7.16016 16 16 16h96zM240 270.38c5.23047 0.889648 10.5195 1.62012 16 1.62012s10.7695 -0.730469 16 -1.62012v-294.38c0 -4.41992 -3.58008 -8 -8 -8h-16c-4.41992 0 -8 3.58008 -8 8
v294.38zM176 228.87c8.16016 12.2998 19.2197 22.3203 32 29.7695v-282.64c0 -4.41992 -3.58008 -8 -8 -8h-16c-4.41992 0 -8 3.58008 -8 8v252.87zM304 258.64c12.7803 -7.44922 23.8398 -17.4697 32 -29.7695v-252.87c0 -4.41992 -3.58008 -8 -8 -8h-16
c-4.41992 0 -8 3.58008 -8 8v282.64z" />
    <glyph glyph-name="file-csv" unicode="&#xf6dd;" horiz-adv-x="384" 
d="M224 312c0 -13.2002 10.7998 -24 24 -24h136v-328c0 -13.2998 -10.7002 -24 -24 -24h-336c-13.2998 0 -24 10.7002 -24 24v464c0 13.2998 10.7002 24 24 24h200v-136zM128 168v16c0 4.41992 -3.58008 8 -8 8h-8c-26.5098 0 -48 -21.4902 -48 -48v-32
c0 -26.5098 21.4902 -48 48 -48h8c4.41992 0 8 3.58008 8 8v16c0 4.41992 -3.58008 8 -8 8h-8c-8.83984 0 -16 7.16016 -16 16v32c0 8.83984 7.16016 16 16 16h8c4.41992 0 8 3.58008 8 8zM172.27 64c23.3906 0 42.4004 17.3301 42.3906 38.6201
c0 10.6602 -4.86035 20.9199 -13.3301 28.1396l-21.8896 18.7705c-1.37012 1.17969 -2.12012 2.54004 -2.12012 3.83984c0 3.12012 4.45996 6.62012 10.4102 6.62012h12.2695c4.41992 0 8 3.58008 8 8v16c0 4.41992 -3.58008 8 -8 8h-12.25
c-23.3896 0 -42.4102 -17.3203 -42.4102 -38.6201c0 -10.6602 4.86035 -20.9199 13.3301 -28.1396l21.8896 -18.7705c1.37012 -1.17969 2.12012 -2.54004 2.12012 -3.83984c0 -3.12012 -4.45996 -6.62012 -10.4102 -6.62012h-12.2695c-4.41992 0 -8 -3.58008 -8 -8v-16
c0 -4.41992 3.58008 -8 8 -8h12.2695zM256 184c0 4.41992 -3.58008 8 -8 8h-16c-4.41992 0 -8 -3.58008 -8 -8v-20.7998c0 -35.4805 12.8799 -68.8906 36.2803 -94.0898c3.01953 -3.25 7.26953 -5.11035 11.7197 -5.11035s8.7002 1.86035 11.7197 5.11035
c23.4004 25.1992 36.2803 58.6094 36.2803 94.0898v20.7998c0 4.41992 -3.58008 8 -8 8h-16c-4.41992 0 -8 -3.58008 -8 -8v-20.7998c0 -20.2705 -5.7002 -40.1807 -16 -56.8799c-10.2998 16.71 -16 36.6094 -16 56.8799v20.7998zM377 343c4.5 -4.5 7 -10.5996 7 -16.9004
v-6.09961h-128v128h6.09961c6.40039 0 12.5 -2.5 17 -7z" />
    <glyph glyph-name="fist-raised" unicode="&#xf6de;" horiz-adv-x="384" 
d="M255.98 288h-48.0303c-5.62988 0 -10.9502 -1.15039 -15.9697 -2.92969v146.93c0 8.83984 7.15918 16 16 16h32c8.83984 0 16 -7.16016 16 -16v-144zM383.98 192.01l0.0195312 -88.2197c0 -26.4971 -10.7412 -50.5273 -28.1201 -67.9102l-35.9102 -35.9199v-63.96
h-255.979v64l-26.5 26.5098c-24.0098 24.0098 -37.4902 56.5605 -37.4902 90.5098v77.9307c5.03027 -1.7998 10.3604 -2.9502 16 -2.9502h32c12.3301 0 23.4805 4.80957 32 12.4902c8.50977 -7.66992 19.6602 -12.4805 32 -12.4805h32
c7.91016 0 15.2803 2.11035 21.8701 5.52051c7.46973 -16.3301 21.5996 -28.9404 38.8701 -34.4502c-17.1104 -14.8203 -31.5801 -34.4805 -47.3105 -58.0801l-6.30957 -9.46973c-0.845703 -1.26855 -1.35156 -2.79395 -1.35156 -4.43164
c0 -2.77734 1.41895 -5.22559 3.57129 -6.6582l13.3105 -8.88086c1.26758 -0.845703 2.79395 -1.35156 4.43066 -1.35156c2.77734 0 5.22559 1.41992 6.65918 3.57227l6.30957 9.46973c31.8906 47.8398 51.5303 70.2695 96.0498 72.5498
c4.29004 0.219727 7.88086 3.70996 7.88086 8v16.2002c0 4.41992 -3.52051 8 -13.2002 8h-35.2607c-26.2695 0 -47.5693 21.3203 -47.5693 47.5898v0.560547c0 8.7793 7.12012 15.8496 15.8994 15.8496h112.141c35.3301 0 63.9795 -28.6504 63.9902 -63.9902zM351.97 282.1
c-10.0596 3.59082 -20.7197 5.90039 -32 5.90039h-32v112c0 8.83984 7.16016 16 16 16h32c8.83984 0 16 -7.16016 16 -16v-117.9zM16 224c-8.83984 0 -16 7.16016 -16 16v128c0 8.83984 7.16016 16 16 16h32c8.83984 0 16 -7.16016 16 -16v-128
c0 -8.83984 -7.16016 -16 -16 -16h-32zM111.99 224c-8.83984 0 -16 7.16016 -16 16v160c0 8.83984 7.16016 16 16 16h32c8.83984 0 16 -7.16016 16 -16v-160c0 -8.83984 -7.16016 -16 -16 -16h-32z" />
    <glyph glyph-name="ghost" unicode="&#xf6e2;" horiz-adv-x="384" 
d="M186.1 447.91c108.73 3.25977 197.9 -83.9102 197.9 -191.91v-271.97c0 -14.25 -17.2305 -21.3906 -27.3096 -11.3105l-24.9209 18.5303c-6.65918 4.95996 -16 3.99023 -21.5098 -2.20996l-42.9502 -48.3496c-6.25 -6.25 -16.3799 -6.25 -22.6299 0l-40.7197 45.8496
c-6.36035 7.16992 -17.5498 7.16992 -23.9199 0l-40.7197 -45.8496c-6.25 -6.25 -16.3799 -6.25 -22.6299 0l-42.9502 48.3496c-5.50977 6.2002 -14.8506 7.16016 -21.5098 2.20996l-24.9209 -18.5303c-10.0791 -10.0801 -27.3096 -2.9502 -27.3096 11.3105v263.92
c0 105.13 81.0098 196.81 186.1 199.96zM128 224c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32s-32 -14.3301 -32 -32s14.3301 -32 32 -32zM256 224c17.6699 0 32 14.3301 32 32s-14.3301 32 -32 32s-32 -14.3301 -32 -32s14.3301 -32 32 -32z" />
    <glyph glyph-name="hammer" unicode="&#xf6e3;" horiz-adv-x="576" 
d="M571.31 254.06c6.25 -6.25 6.25 -16.3799 0.0205078 -22.6191l-90.5098 -90.5107c-6.25 -6.25 -16.3799 -6.25 -22.6299 0l-22.6309 22.6299c-6.25 6.25 -6.25 16.3809 0 22.6309l11.3105 11.3096l-28.9004 28.9004
c-21.3096 -5.63086 -44.8994 -0.360352 -61.6094 16.3496l-49.1406 49.1396c-12.0098 12 -18.75 28.2803 -18.75 45.25v18.75l-90.5098 45.25c62.4902 62.4805 163.8 62.4805 226.28 0l45.25 -45.25c16.71 -16.71 21.9795 -40.2998 16.3496 -61.6094l28.9004 -28.9004
l11.3096 11.3105c6.25 6.25 16.3799 6.25 22.6299 0zM284.59 269.26l49.1406 -49.1396c3.53906 -3.54004 7.47949 -6.5 11.4395 -9.41016l-238.13 -255.07c-23.8799 -25.5801 -64.2002 -26.2695 -88.9297 -1.5293c-24.7305 24.7393 -24.04 65.0498 1.5293 88.9297
l255.101 238.17c3.00977 -4.16016 6.14941 -8.25 9.84961 -11.9502z" />
    <glyph glyph-name="hanukiah" unicode="&#xf6e6;" horiz-adv-x="640" 
d="M232 288h16c4.41992 0 8 -3.58008 8 -8v-120h-32v120c0 4.41992 3.58008 8 8 8zM168 288h16c4.41992 0 8 -3.58008 8 -8v-120h-32v120c0 4.41992 3.58008 8 8 8zM392 288h16c4.41992 0 8 -3.58008 8 -8v-120h-32v120c0 4.41992 3.58008 8 8 8zM456 288h16
c4.41992 0 8 -3.58008 8 -8v-120h-32v120c0 4.41992 3.58008 8 8 8zM544 280v-120h-32v120c0 4.41992 3.58008 8 8 8h16c4.41992 0 8 -3.58008 8 -8zM104 288h16c4.41992 0 8 -3.58008 8 -8v-120h-32v120c0 4.41992 3.58008 8 8 8zM624 288c8.83984 0 16 -7.16016 16 -16
v-112c0 -53.0195 -42.9805 -96 -96 -96h-192v-64h176c8.83984 0 16 -7.16016 16 -16v-32c0 -8.83984 -7.16016 -16 -16 -16h-416c-8.83984 0 -16 7.16016 -16 16v32c0 8.83984 7.16016 16 16 16h176v64h-192c-53.0195 0 -96 42.9805 -96 96v112c0 8.83984 7.16016 16 16 16
h32c8.83984 0 16 -7.16016 16 -16v-112c0 -17.6699 14.3301 -32 32 -32h192v192c0 8.83984 7.16016 16 16 16h32c8.83984 0 16 -7.16016 16 -16v-192h192c17.6699 0 32 14.3301 32 32v112c0 8.83984 7.16016 16 16 16h32zM608 320c-13.25 0 -24 11.9502 -24 26.6699
s24 53.3301 24 53.3301s24 -38.5996 24 -53.3301c0 -14.7295 -10.75 -26.6699 -24 -26.6699zM32 320c-13.25 0 -24 11.9502 -24 26.6699s24 53.3301 24 53.3301s24 -38.5996 24 -53.3301c0 -14.7295 -10.75 -26.6699 -24 -26.6699zM320 368
c-13.25 0 -24 11.9502 -24 26.6699s24 53.3301 24 53.3301s24 -38.5996 24 -53.3301c0 -14.7295 -10.75 -26.6699 -24 -26.6699zM112 320c-13.25 0 -24 11.9502 -24 26.6699s24 53.3301 24 53.3301s24 -38.5996 24 -53.3301c0 -14.7295 -10.75 -26.6699 -24 -26.6699z
M176 320c-13.25 0 -24 11.9502 -24 26.6699s24 53.3301 24 53.3301s24 -38.5996 24 -53.3301c0 -14.7295 -10.75 -26.6699 -24 -26.6699zM240 320c-13.25 0 -24 11.9502 -24 26.6699s24 53.3301 24 53.3301s24 -38.5996 24 -53.3301
c0 -14.7295 -10.75 -26.6699 -24 -26.6699zM400 320c-13.25 0 -24 11.9502 -24 26.6699s24 53.3301 24 53.3301s24 -38.5996 24 -53.3301c0 -14.7295 -10.75 -26.6699 -24 -26.6699zM464 320c-13.25 0 -24 11.9502 -24 26.6699s24 53.3301 24 53.3301
s24 -38.5996 24 -53.3301c0 -14.7295 -10.75 -26.6699 -24 -26.6699zM528 320c-13.25 0 -24 11.9502 -24 26.6699s24 53.3301 24 53.3301s24 -38.5996 24 -53.3301c0 -14.7295 -10.75 -26.6699 -24 -26.6699z" />
    <glyph glyph-name="hat-wizard" unicode="&#xf6e8;" 
d="M496 0c8.83984 0 16 -7.16016 16 -16v-32c0 -8.83984 -7.16016 -16 -16 -16h-480c-8.83984 0 -16 7.16016 -16 16v32c0 8.83984 7.16016 16 16 16h480zM192 64l16 -32h-144l110.96 249.66c11.1211 25.0264 29.8379 45.6514 53.46 59.1494l187.58 107.19l-56.2998 -168.92
c-2.12207 -6.35938 -3.25781 -13.2188 -3.25781 -20.2881c0 -8.93164 1.83496 -17.4375 5.14746 -25.1621l86.4102 -201.63h-208l16 32l64 32l-64 32l-32 64l-32 -64l-64 -32zM256 288l-32 -16l32 -16l16 -32l16 32l32 16l-32 16l-16 32z" />
    <glyph glyph-name="hiking" unicode="&#xf6ec;" horiz-adv-x="384" 
d="M80.9502 -24.2305l34.5596 138.221l52.7803 -52.7803l-25.2402 -100.97c-3.64941 -14.5303 -16.6895 -24.2305 -31.0195 -24.2305c-2.58008 0 -5.19043 0.290039 -7.7998 0.950195c-17.1406 4.28027 -27.5605 21.6504 -23.2803 38.8096zM95.8398 171.89
c-2.18945 -8.41992 -11.0801 -13.54 -19.8701 -11.4395l-63.5596 15.25c-8.78027 2.10938 -14.1104 10.6396 -11.9199 19.0596l25.2695 98.1299c10.9707 42.1006 55.4404 67.6904 99.3203 57.1699c8.78027 -2.10938 14.1104 -10.6396 11.9199 -19.0596zM368 288
c8.83984 0 16 -7.16016 15.9902 -16v-320.01c0 -8.83984 -7.16016 -16 -16 -16h-16c-8.83984 0 -16 7.16016 -16 16v240h-48c-8.48047 0 -16.6201 3.37988 -22.6201 9.37988l-22.4297 22.4297l-19.8906 -79.5693
c-0.129883 -0.520508 -0.469727 -0.910156 -0.620117 -1.41016l46.8203 -46.8203c12.0898 -12.0898 18.75 -28.1602 18.75 -45.25v-82.75c0 -17.6699 -14.3301 -32 -32 -32s-32 14.3301 -32 32v82.75l-86.6201 86.6201c-5.79297 5.79395 -9.37109 13.7861 -9.37109 22.6191
c0 2.67969 0.330078 5.28223 0.951172 7.77051l26.9199 107.721c6.56055 26.2197 30.0098 44.5195 57.0303 44.5195c15.7002 0 30.4697 -6.11035 41.5596 -17.2197l46.7803 -46.7803h34.75v16c0 8.83984 7.16016 16 16 16h16zM240 352c-26.5098 0 -48 21.4902 -48 48
s21.4902 48 48 48s48 -21.4902 48 -48s-21.4902 -48 -48 -48z" />
    <glyph glyph-name="hippo" unicode="&#xf6ed;" horiz-adv-x="640" 
d="M581.12 351.8c34.0898 -0.189453 58.8799 -33.6895 58.8799 -67.7803v-92.0195c0 -17.6699 -14.3301 -32 -32 -32v-32c0 -8.83984 -7.16016 -16 -16 -16h-32c-8.83984 0 -16 7.16016 -16 16v32h-128v-176c0 -8.83984 -7.16016 -16 -16 -16h-64
c-8.83984 0 -16 7.16016 -16 16v70.79c-32.3496 -14.3604 -70.7197 -22.79 -112 -22.79s-79.6504 8.42969 -112 22.79v-70.79c0 -8.83984 -7.16016 -16 -16 -16h-64c-8.83984 0 -16 7.16016 -16 16v240c0 88.3604 85.96 160 192 160
c49.2402 0 94.0098 -15.5801 128 -40.9805v48.9805c0 13.2598 10.75 24 24 24h16c13.25 0 24 -10.7402 24 -24v-13.8799c10.0498 3.58008 20.7197 5.87988 32 5.87988c39.8301 0 73.9805 -24.2695 88.5195 -58.8203c24.1006 9.04004 48.9307 26.7705 76.6006 26.6201z
M448 272c8.83984 0 16 7.16016 16 16s-7.16016 16 -16 16s-16 -7.16016 -16 -16s7.16016 -16 16 -16z" />
    <glyph glyph-name="horse" unicode="&#xf6f0;" horiz-adv-x="576" 
d="M575.92 371.4l0.0605469 -77.71c0 -0.0107422 0.0185547 -0.00683594 0.0185547 -0.0166016c0 -13.4707 -8.34277 -25.0088 -20.1387 -29.7236l-32.5508 -13.0205c-15.4395 -6.17969 -33.04 0.5 -40.4893 15.3701l-18.9004 37.7002l-16 7.11035v-102.471
c0.00976562 -0.219727 0.0800781 -0.419922 0.0800781 -0.639648c0 -30.4697 -12.2598 -58.0303 -32 -78.2197v-177.78c0 -8.83984 -7.16016 -16 -16 -16h-64c-8.83984 0 -16 7.16016 -16 16v150.4l-133.97 22.3301l-23.8398 -63.5908l26.3096 -105.26
c2.53027 -10.0996 -5.11035 -19.8799 -15.5195 -19.8799h-65.9609c-7.48633 0 -13.7783 5.16602 -15.5098 12.1201l-24.8496 99.4102c-1.24707 4.98047 -1.8916 10.1924 -1.8916 15.5576c0 7.8916 1.43262 15.4502 4.05176 22.4316l25.7197 68.6006
c-18.7002 17.5195 -30.54 42.2402 -30.54 69.8799c0 2.62988 0.570312 5.09961 0.780273 7.67969c-9.91016 -7.29004 -16.7803 -18.46 -16.7803 -31.6797v-56c0 -8.83984 -7.16016 -16 -16 -16h-16c-8.83984 0 -16 7.16016 -16 16v56c0 48.5303 39.4697 88 88 88v-1.11035
c17.5996 20.1299 43.1602 33.1104 72 33.1104h159.92c0 70.6904 57.3105 128 128 128h119.98c5.05957 0 8.94922 -4.67969 7.92969 -9.63965c-2.67969 -13.1699 -11.1201 -23.8203 -22.1797 -30.6602c5.10938 -5.37988 9.90918 -10.4697 13.6895 -14.5
c5.56055 -5.93066 8.57031 -13.6699 8.58008 -21.7998zM511.92 352c8.83984 0 16 7.16016 16 16s-7.16016 16 -16 16s-16 -7.16016 -16 -16s7.16016 -16 16 -16z" />
    <glyph glyph-name="house-damage" unicode="&#xf6f1;" horiz-adv-x="576" 
d="M288 333.04l218.74 -192.94c1.54004 -1.37988 3.55957 -2.04004 5.25977 -3.19922v-184.9c0 -8.83984 -7.16016 -16 -16 -16h-176.19l-39.9199 55.25l104.11 64l-148.05 136.78l60.1602 -119.221l-104.11 -64l37.2305 -72.8096h-149.23c-8.83984 0 -16 7.16016 -16 16
v184.94c1.78027 1.20996 3.84961 1.88965 5.46973 3.34961zM570.69 211.72c6.5791 -5.89941 7.11914 -16.0195 1.21973 -22.5898l-21.4004 -23.8203c-5.91016 -6.56934 -16.0293 -7.10938 -22.5996 -1.20996l-229.32 202.271c-6.0498 5.33008 -15.1201 5.33008 -21.1699 0
l-229.32 -202.28c-6.58008 -5.91016 -16.6992 -5.35938 -22.5996 1.20996l-21.4004 23.8203c-5.90918 6.58008 -5.35938 16.6895 1.20996 22.5996l255.99 226.011c7.60059 6.85938 17.1406 10.2793 26.7002 10.2695s19.1201 -3.4502 26.75 -10.3096l101.25 -89.3809v51.6904
c0 8.83984 7.16016 16 16 16h64c8.83984 0 16 -7.16016 16 -16v-136.45z" />
    <glyph glyph-name="hryvnia" unicode="&#xf6f2;" horiz-adv-x="384" 
d="M368 208h-99.7002l-34.6699 -32h134.37c8.83984 0 16 -7.16016 16 -16v-32c0 -8.83984 -7.16016 -16 -16 -16h-203.7l-29.4902 -27.2197c-4.3291 -4 -6.80957 -9.66992 -6.80957 -15.5801c0 -11.6807 9.50977 -21.2002 21.2002 -21.2002h83.6299
c5.83301 0 11.1992 2.09375 15.3604 5.55957l11.75 9.80078c10.1895 8.48926 25.3193 7.12012 33.8096 -3.07031l20.4902 -24.5898c8.49023 -10.1807 7.10938 -25.3105 -3.07031 -33.7998l-11.7695 -9.81055c-18.6807 -15.5596 -42.2207 -24.0898 -66.54 -24.0898h-78.8203
c-37.1396 0 -73.3799 17.8496 -92.0498 49.9502c-17.8701 30.7197 -17.54 65.4199 -4.12988 94.0498h-41.8604c-8.83984 0 -16 7.16016 -16 16v32c0 8.83984 7.16016 16 16 16h99.7002l34.6699 32h-134.37c-8.83984 0 -16 7.16016 -16 16v32c0 8.83984 7.16016 16 16 16
h203.7l29.4902 27.21c4.3291 4 6.80957 9.66992 6.80957 15.5801c0 11.6797 -9.50977 21.2002 -21.2002 21.2002h-83.6201c-5.62012 0 -11.0693 -1.9707 -15.3896 -5.57031l-11.7305 -9.78027c-10.1895 -8.48926 -25.3193 -7.12012 -33.8096 3.07031l-20.4902 24.5898
c-8.49023 10.1807 -7.10938 25.3105 3.07031 33.7998l11.7695 9.81055c18.6807 15.5596 42.2207 24.0898 66.54 24.0898h78.8203c37.1396 0 73.3799 -17.8398 92.0498 -49.9502c17.8701 -30.7197 17.54 -65.4199 4.12988 -94.0498h41.8604c8.83984 0 16 -7.16016 16 -16v-32
c0 -8.83984 -7.16016 -16 -16 -16z" />
    <glyph glyph-name="mask" unicode="&#xf6fa;" horiz-adv-x="640" 
d="M320.67 384c449.09 0 348.32 -384 158.46 -384c-39.8994 0 -77.4697 20.6904 -101.41 55.8604l-25.7295 37.79c-15.6602 22.9893 -46.9707 22.9893 -62.6299 0l-25.7305 -37.79c-23.9502 -35.1699 -61.5195 -55.8604 -101.42 -55.8604c-199.11 0 -284.14 384 158.46 384z
M184 139.64c41.0596 0 67.7598 25.6504 80.0801 41.0508c5.22949 6.54004 5.22949 16.0996 0 22.6299c-12.3203 15.3896 -39.0098 41.0498 -80.0801 41.0498s-67.7598 -25.6504 -80.0801 -41.0498c-5.22949 -6.54004 -5.22949 -16.1006 0 -22.6299
c12.3203 -15.3906 39.0205 -41.0508 80.0801 -41.0508zM456 139.64c41.0596 0 67.7598 25.6504 80.0801 41.0508c5.22949 6.54004 5.22949 16.0996 0 22.6299c-12.3203 15.3896 -39.0098 41.0498 -80.0801 41.0498s-67.7598 -25.6504 -80.0801 -41.0498
c-5.22949 -6.54004 -5.22949 -16.1006 0 -22.6299c12.3203 -15.3906 39.0205 -41.0508 80.0801 -41.0508z" />
    <glyph glyph-name="mountain" unicode="&#xf6fc;" horiz-adv-x="640" 
d="M634.92 -14.7002c3.2041 -4.98145 5.06348 -10.9756 5.06348 -17.334c0 -5.53906 -1.41113 -10.751 -3.89355 -15.2959c-5.60938 -10.2803 -16.3799 -16.6699 -28.0898 -16.6699h-576c-12.1191 0 -22.6582 6.7168 -28.0898 16.6602
c-2.48242 4.5459 -3.89355 9.82715 -3.89355 15.3672c0 6.36035 1.85938 12.2891 5.06348 17.2725l288 448c5.88965 9.16016 16.0303 14.7002 26.9199 14.7002s21.0303 -5.54004 26.9199 -14.7002zM320 356.82l-102.06 -158.761l38.0596 -38.0596l64 64h85.3896z" />
    <glyph glyph-name="network-wired" unicode="&#xf6ff;" horiz-adv-x="640" 
d="M640 184c0 -8.83984 -7.16016 -16 -16 -16h-104v-40h56c17.6699 0 32 -14.3301 32 -32v-128c0 -17.6699 -14.3301 -32 -32 -32h-160c-17.6699 0 -32 14.3301 -32 32v128c0 17.6699 14.3301 32 32 32h56v40h-304v-40h56c17.6699 0 32 -14.3301 32 -32v-128
c0 -17.6699 -14.3301 -32 -32 -32h-160c-17.6699 0 -32 14.3301 -32 32v128c0 17.6699 14.3301 32 32 32h56v40h-104c-8.83984 0 -16 7.16016 -16 16v16c0 8.83984 7.16016 16 16 16h280v40h-72c-17.6699 0 -32 14.3301 -32 32v128c0 17.6699 14.3301 32 32 32h192
c17.6699 0 32 -14.3301 32 -32v-128c0 -17.6699 -14.3301 -32 -32 -32h-72v-40h280c8.83984 0 16 -7.16016 16 -16v-16zM256 320h128v64h-128v-64zM192 0v64h-96v-64h96zM544 0v64h-96v-64h96z" />
    <glyph glyph-name="otter" unicode="&#xf700;" horiz-adv-x="640" 
d="M608 416c17.6699 0 32 -14.3301 32 -32v-32c0 -53.0195 -42.9805 -96 -96 -96h-22.8604l-92.4697 -49.79l55.1104 -110.21h28.2197c17.6699 0 32 -14.3301 32 -32v-16c0 -8.83984 -7.16016 -16 -16 -16h-80l-74.5098 144.5l-149.49 -80.5h64
c17.6699 0 32 -14.3301 32 -32v-16c0 -8.83984 -7.16016 -16 -16 -16h-224c-8.83008 0 -16 -7.16992 -16 -16s7.16992 -16 16 -16h112c17.6699 0 32 -14.3301 32 -32s-14.3301 -32 -32 -32h-108.47c-39.3799 0 -75.5205 26.9004 -82.2803 65.7002
c-4.91016 28.1201 5 54.2197 23.1904 71.7998c23.5596 22.75 39.5596 52.1396 39.5596 84.8896v1.61035c0 106.04 85.96 192 192 192h56l153.25 87.5703c9.66992 5.51953 20.6104 8.42969 31.75 8.42969h20.4902c0.00390625 0 0.0166016 0.00878906 0.0214844 0.00878906
c17.6602 0 33.6582 -7.17188 45.2383 -18.7588l13.25 -13.25h32zM512 400c-8.83984 0 -16 -7.16016 -16 -16s7.16016 -16 16 -16s16 7.16016 16 16s-7.16016 16 -16 16zM544 304c20.8301 0 38.4297 13.4199 45.0498 32h-77.0498l-118.57 -59.29l13.7705 -27.5498
l101.84 54.8398h34.96z" />
    <glyph glyph-name="ring" unicode="&#xf70b;" 
d="M256 384c145.94 0 256 -61.9102 256 -144v-98.1299c0 -78.3506 -114.62 -141.87 -256 -141.87s-256 63.5195 -256 141.87v98.1299c0 82.0898 110.06 144 256 144zM256 320c-106.04 0 -192 -35.8203 -192 -80c0 -9.25977 3.96973 -18.1201 10.9102 -26.3896
c44.9395 26.1797 108.859 42.3896 181.09 42.3896s136.15 -16.21 181.09 -42.3896c6.94043 8.26953 10.9102 17.1299 10.9102 26.3896c0 44.1797 -85.96 80 -192 80zM120.43 183.36c34.7305 -14.4307 82.6406 -23.3604 135.57 -23.3604s100.84 8.92969 135.57 23.3604
c-34.6104 14.71 -81.21 24.6396 -135.57 24.6396s-100.96 -9.92969 -135.57 -24.6396z" />
    <glyph glyph-name="running" unicode="&#xf70c;" horiz-adv-x="416" 
d="M272 352c-26.5098 0 -48 21.4902 -48 48s21.4902 48 48 48s48 -21.4902 48 -48s-21.4902 -48 -48 -48zM113.69 130.53c7.92969 -17.2402 20.6699 -32.3799 37.9893 -42.6104l10.6699 -6.2998l-8.79004 -20.5205c-7.5293 -17.6494 -24.8594 -29.0898 -44.1094 -29.0898
h-77.4502c-17.6699 0 -32 14.3301 -32 32s14.3301 32 32 32h66.8896zM384 224.01c17.6699 0 32 -14.3193 32 -31.9902c0 -17.6699 -14.3301 -32 -32 -32h-53.9902c-18.1895 0 -35.1094 10.5508 -43.1094 26.8906l-20.2705 41.4297l-31.3096 -78.2803l61.2393 -36.1396
c18.75 -11.3096 27.5508 -33.6201 21.6406 -54.3896l-31.6406 -101.061c-4.29004 -13.6797 -16.9092 -22.4502 -30.5195 -22.4502c-3.16992 0 -6.38965 0.480469 -9.58008 1.48047c-16.8604 5.28027 -26.25 23.2305 -20.9697 40.0898l27.4697 87.7305l-84.9795 50.1699
c-27.6104 16.2998 -38.9209 50.8301 -26.3008 80.3096l37.46 87.3906l-14.6992 4.36914c-7.83008 1.86035 -17.6006 -0.25 -25.2705 -6.13965l-39.6895 -30.4102c-14.0205 -10.7402 -34.0908 -8.10938 -44.8604 5.91992c-10.7705 14.0303 -8.11035 34.1104 5.91992 44.8604
l39.6699 30.4102c23.0703 17.6895 52.54 23.9395 80.8398 17.1396l71.0801 -21.1396c26.3301 -6.70996 49.2803 -25.3906 61.7803 -50.9404l26.0596 -53.25h44.0303z" />
    <glyph glyph-name="scroll" unicode="&#xf70e;" horiz-adv-x="640" 
d="M48 448c26.4697 0 48 -21.5303 48 -48v-80h-80c-8.83984 0 -16 7.16016 -16 16v64c0 26.4697 21.5303 48 48 48zM256 35.4297c0 -31.8896 -21.7803 -61.4297 -53.25 -66.5498c-40.0996 -6.53027 -74.75 24.25 -74.75 63.1201v368c0 18.0801 -6.25977 34.5898 -16.4102 48
h336.41c52.9404 0 96 -43.0596 96 -96v-256h-288v-60.5703zM288 64h336c8.83984 0 16 -7.16016 16 -16c0 -61.8604 -50.1396 -112 -112 -112h-336c52.9404 0 96 43.0703 96 96v32z" />
    <glyph glyph-name="skull-crossbones" unicode="&#xf714;" horiz-adv-x="448" 
d="M439.15 -5.05957c7.89941 -3.9502 11.1094 -13.5605 7.15918 -21.4707l-14.3096 -28.6299c-3.95996 -7.89941 -13.5703 -11.0996 -21.4697 -7.14941l-186.53 90.7197l-186.52 -90.7197c-7.91016 -3.95996 -17.5205 -0.75 -21.4707 7.14941l-14.3096 28.6299
c-3.95996 7.91016 -0.75 17.5205 7.14941 21.4707l141.98 69.0596l-141.99 69.0596c-7.89941 3.9502 -11.0996 13.5605 -7.14941 21.46l14.3096 28.6309c3.95996 7.90918 13.5703 11.1094 21.4697 7.15918l186.53 -90.7197l186.53 90.7197
c7.91016 3.9502 17.5195 0.740234 21.4697 -7.15918l14.3096 -28.6309c3.95996 -7.89941 0.75 -17.5098 -7.14941 -21.46l-141.99 -69.0596zM150 210.72c-41.7803 22.4102 -70 62.75 -70 109.28c0 70.6904 64.4697 128 144 128s144 -57.3096 144 -128
c0 -46.5303 -28.2197 -86.8701 -70 -109.28l5.5 -25.8701c2.66992 -12.6191 -5.41992 -24.8496 -16.4502 -24.8496h-126.08c-11.0293 0 -19.1201 12.2305 -16.4502 24.8496zM280 336c-17.6504 0 -32 -14.3496 -32 -32s14.3496 -32 32 -32s32 14.3496 32 32
s-14.3496 32 -32 32zM168 336c-17.6504 0 -32 -14.3496 -32 -32s14.3496 -32 32 -32s32 14.3496 32 32s-14.3496 32 -32 32z" />
    <glyph glyph-name="slash" unicode="&#xf715;" horiz-adv-x="640" 
d="M594.53 -60.6299l-588.351 454.729c-6.96973 5.41992 -8.22949 15.4707 -2.80957 22.4502l19.6396 25.2705c5.41992 6.97949 15.4805 8.23926 22.46 2.80957l588.351 -454.729c6.96973 -5.41992 8.22949 -15.4707 2.80957 -22.4502l-19.6396 -25.2705
c-5.41992 -6.97949 -15.4805 -8.22949 -22.46 -2.80957z" />
    <glyph glyph-name="spider" unicode="&#xf717;" horiz-adv-x="576" 
d="M151.17 280.65l-27.1504 54.2998c-2.14551 4.29883 -3.3623 9.18359 -3.3623 14.3115c0 3.53516 0.573242 6.9375 1.63281 10.1182l25.8896 77.6797c2.79004 8.39062 11.8604 12.9209 20.2402 10.1201l15.1699 -5.05957
c8.39062 -2.7998 12.9102 -11.8604 10.1201 -20.2402l-23.7998 -71.3896l20.29 -40.5801c-1.41016 -4.20996 -2.49023 -8.20996 -3.20996 -11.79l-5.2207 -26.1201h-4.66992zM573.31 98.6201c4.90039 -7.35059 2.9209 -17.2803 -4.43945 -22.1797l-13.3105 -8.88086
c-7.34961 -4.89941 -17.29 -2.90918 -22.1895 4.44043l-48 72h-47.0605l60.8301 -97.3301c3.16992 -5.08008 4.86035 -10.96 4.86035 -16.96v-77.71c0 -8.83984 -7.16016 -16 -16 -16h-16c-8.83984 0 -16 7.16016 -16 16v73.1104l-74.0801 118.529
c1 -14.0498 2.08008 -28.1094 2.08008 -42.21c0 -53.0693 -40.7598 -101.43 -96 -101.43s-96 48.3604 -96 101.43c0 14.1006 1.07031 28.1602 2.08008 42.21l-74.0801 -118.529v-73.1104c0 -8.83984 -7.16016 -16 -16 -16h-16c-8.83984 0 -16 7.16016 -16 16v77.7002
c0 0.00292969 0.0205078 0.0400391 0.0205078 0.0439453c0 6.20898 1.77246 12.0078 4.83984 16.916l60.8301 97.3301h-47.0605l-48 -72c-4.89941 -7.35059 -14.8398 -9.33984 -22.1895 -4.44043l-13.3105 8.87988c-7.36035 4.90039 -9.33984 14.8398 -4.43945 22.1904
l52.7393 79.1299c5.74121 8.60547 15.5186 14.248 26.6299 14.25h77.9404l-68.9902 24.3496c-6.81738 2.27441 -12.5947 6.74023 -16.5098 12.6104l-53.5996 80.4102c-4.90039 7.36035 -2.91016 17.29 4.43945 22.1895l13.3105 8.88086
c7.35938 4.89941 17.29 2.90918 22.1895 -4.44043l50.5703 -75.8301l60.4902 -20.1699h36.0996l10.3701 51.8496c2.18945 10.9707 17.3701 60.1504 69.6299 60.1504s67.4404 -49.1797 69.6299 -60.1504l10.3701 -51.8496h36.0996l60.5 20.1699l50.5605 75.8301
c4.89941 7.34961 14.8398 9.33984 22.1895 4.44043l13.3105 -8.88086c7.34961 -4.89941 9.33984 -14.8398 4.43945 -22.1895l-53.5996 -80.4102c-3.91504 -5.87012 -9.69238 -10.3359 -16.5098 -12.6104l-68.9902 -24.3594h77.9404
c11.1084 -0.00292969 20.8828 -5.64453 26.6191 -14.25zM406.09 350.49l-23.7998 71.3896c-2.79004 8.37988 1.74023 17.4404 10.1201 20.2402l15.1699 5.05957c8.37988 2.80078 17.4502 -1.73926 20.2402 -10.1201l25.8896 -77.6797
c1.06152 -3.18164 1.62598 -6.62109 1.62598 -10.1582c0 -5.12695 -1.20801 -9.97461 -3.35547 -14.2715l-27.1504 -54.2998l-25.9297 -8.65039h-4.66992l-5.2207 26.1201c-0.719727 3.58008 -1.7998 7.58008 -3.20996 11.79z" />
    <glyph glyph-name="toilet-paper" unicode="&#xf71e;" horiz-adv-x="576" 
d="M128 448h284.44c-36.7705 -38.4805 -60.4404 -108.4 -60.4404 -192v-172.07c0 -53.6494 -11.8799 -87.5693 -24.71 -126.05c-4.36035 -13.0703 -16.5898 -21.8799 -30.3604 -21.8799h-280.92c-10.9199 0 -18.6299 10.7002 -15.1797 21.0596
c21.3701 64.1006 31.1699 85.75 31.1699 126.87v172.07c0 106.04 42.9805 192 96 192zM96 224c8.83984 0 16 7.16016 16 16s-7.16016 16 -16 16s-16 -7.16016 -16 -16s7.16016 -16 16 -16zM160 224c8.83984 0 16 7.16016 16 16s-7.16016 16 -16 16s-16 -7.16016 -16 -16
s7.16016 -16 16 -16zM224 224c8.83984 0 16 7.16016 16 16s-7.16016 16 -16 16s-16 -7.16016 -16 -16s7.16016 -16 16 -16zM288 224c8.83984 0 16 7.16016 16 16s-7.16016 16 -16 16s-16 -7.16016 -16 -16s7.16016 -16 16 -16zM480 448c53.0195 0 96 -85.96 96 -192
s-42.9805 -192 -96 -192s-96 85.96 -96 192s42.9805 192 96 192zM480 192c17.6699 0 32 28.6504 32 64s-14.3301 64 -32 64s-32 -28.6504 -32 -64s14.3301 -64 32 -64z" />
    <glyph glyph-name="tractor" unicode="&#xf722;" horiz-adv-x="640" 
d="M528 112c48.5996 0 88 -39.4004 88 -88s-39.4004 -88 -88 -88s-88 39.4004 -88 88s39.4004 88 88 88zM528 0c13.2305 0 24 10.7695 24 24s-10.7695 24 -24 24s-24 -10.7695 -24 -24s10.7695 -24 24 -24zM608 288c17.6699 0 32 -14.3301 31.9902 -32v-50.7598
c0 -8.49023 -3.37012 -16.6299 -9.37012 -22.6299l-50.8203 -50.8203c-15.7295 7.58984 -33.1602 12.2002 -51.7998 12.2002c-39.1396 0 -73.5498 -19.0098 -95.46 -48h-80.54v-6c0 -12.1504 -9.84961 -22 -22 -22h-7.16016
c-2.9502 -9.90039 -6.91992 -19.46 -11.9102 -28.7207l5.06055 -5.05957c8.58984 -8.58984 8.58984 -22.5195 0 -31.1104l-31.1104 -31.1094c-8.58984 -8.58984 -22.5195 -8.58984 -31.1104 0l-5.05957 5.05957c-9.25977 -4.99023 -18.8203 -8.95996 -28.7197 -11.9102
v-7.13965c0 -12.1504 -9.85059 -22 -22 -22h-44c-12.1504 0 -22 9.84961 -22 22v7.15039c-9.90039 2.94922 -19.46 6.91992 -28.7207 11.9092l-5.05957 -5.05957c-8.58984 -8.58984 -22.5195 -8.58984 -31.1104 0l-31.1094 31.1104
c-8.58984 8.58984 -8.58984 22.5195 0 31.1094l5.05957 5.06055c-4.99023 9.26953 -8.9502 18.8193 -11.9102 28.7295h-7.13965c-12.1504 0 -22 9.85059 -22 22v44c0 12.1504 9.84961 22 22 22h7.15039c2.94922 9.90039 6.91992 19.46 11.9092 28.7207l-5.05957 5.05957
c-8.58984 8.58984 -8.58984 22.5195 0 31.1104l31.1104 31.1094c7.92969 7.93066 20.2598 8.2002 28.8896 1.4707v146.52c0 26.4697 21.5303 48 48 48h133.45c0.015625 0 0.00878906 0.0341797 0.0244141 0.0341797c19.7969 0 36.8047 -12.0312 44.1055 -29.1738
l56.0898 -130.86h102.33v40.2002c0 29.9902 10.5801 58.8994 29.5 81.7197c6.37988 7.7002 18.04 8.23047 24.7002 0.780273l21.6299 -24.1699c4.87012 -5.43066 5.74023 -13.6904 1.32031 -19.4902c-8.4502 -11.0801 -13.1504 -24.7197 -13.1504 -38.8398v-40.2002h64z
M176 32c44.1797 0 80 35.8203 80 80s-35.8203 80 -80 80s-80 -35.8203 -80 -80s35.8203 -80 80 -80zM198 288h110.04l-41.1504 96h-106.89v-96h38z" />
    <glyph glyph-name="user-injured" unicode="&#xf728;" horiz-adv-x="448" 
d="M277.37 436.02l-90.6904 -68.0195h-81.1895c19.0098 46.8701 64.8193 80 118.51 80c19.1104 0 37.0801 -4.46973 53.3701 -11.9805zM342.51 368h-102.52l66.0293 49.5195c15.8203 -13.3193 28.5908 -30.0498 36.4902 -49.5195zM224 192c-70.6904 0 -128 57.3096 -128 128
c0 5.48047 0.94043 10.7002 1.61035 16h252.779c0.660156 -5.2998 1.61035 -10.5195 1.61035 -16c0 -70.6904 -57.3096 -128 -128 -128zM80 148.3c9.34668 4.14844 19.4795 7.31641 29.8096 9.21973l98.4502 -221.52h-128.26v212.3zM0 -16v41.5996
c0 41.1406 18.8799 77.5107 48 102.16v-191.76c-26.5098 0 -48 21.4902 -48 48zM256 32c26.4697 0 48 -21.5303 48 -48s-21.5303 -48 -48 -48h-12.71l-42.6699 96h55.3799zM313.6 160c74.2305 0 134.4 -60.1699 134.4 -134.4v-41.5996c0 -26.5098 -21.4902 -48 -48 -48
h-80.4102c10.1504 13.4102 16.4102 29.9199 16.4102 48c0 44.1104 -35.8896 80 -80 80h-69.5898l-42.6699 96h7.37012c22.2393 -10.1797 46.8799 -16 72.8896 -16s50.6504 5.82031 72.8896 16h16.71z" />
    <glyph glyph-name="vr-cardboard" unicode="&#xf729;" horiz-adv-x="640" 
d="M608 384c17.6699 0 32 -14.3301 32 -32v-320c0 -17.6699 -14.3301 -32 -32 -32h-160.22c-25.1807 0 -48.0303 14.7695 -58.3604 37.7402l-27.7402 61.6396c-7.88965 17.54 -24.0293 28.6201 -41.6797 28.6201s-33.79 -11.0801 -41.6797 -28.6201l-27.7402 -61.6396
c-10.3301 -22.9707 -33.1699 -37.7402 -58.3604 -37.7402h-160.22c-17.6699 0 -32 14.3301 -32 32v320c0 17.6699 14.3301 32 32 32h576zM160 144c35.3496 0 64 28.6504 64 64s-28.6504 64 -64 64s-64 -28.6504 -64 -64s28.6504 -64 64 -64zM480 144
c35.3496 0 64 28.6504 64 64s-28.6504 64 -64 64s-64 -28.6504 -64 -64s28.6504 -64 64 -64z" />
    <glyph glyph-name="wind" unicode="&#xf72e;" 
d="M156.7 192c48.7002 0 92.2998 -35 98.3994 -83.4004c7.5 -58.5 -38.0996 -108.6 -95.1992 -108.6c-46.6006 0 -85.6006 33.5 -94.2002 77.5996c-1.7998 9.60059 6.09961 18.4004 15.8994 18.4004h32.8008c6.59961 0 13.0996 -3.7998 15.1992 -10.0996
c4.30078 -12.7002 16.3008 -21.9004 30.4004 -21.9004c19.5 0 34.9004 17.4004 31.5996 37.4004c-2.59961 15.6992 -17.5 26.5996 -33.3994 26.5996h-142.2c-8.7998 0 -16 7.2002 -16 16v32c0 8.7998 7.2002 16 16 16h140.7zM16 224c-8.7998 0 -16 7.2002 -16 16v32
c0 8.7998 7.2002 16 16 16h334.2c16 0 30.7998 10.9004 33.3994 26.5996c3.30078 20 -12.1992 37.4004 -31.5996 37.4004c-14.0996 0 -26.0996 -9.2002 -30.4004 -21.9004c-2.09961 -6.2998 -8.5 -10.0996 -15.1992 -10.0996h-32.8008
c-9.69922 0 -17.6992 8.7002 -15.7998 18.2998c9.7998 50.6006 59.5 87.1006 114.9 75.5c36.2002 -7.59961 65.5 -36.8994 73.0996 -73.0996c13 -61.9004 -34.0996 -116.7 -93.7998 -116.7h-336zM400 192c70.5 0 126 -65.5 108.9 -138.7
c-9.60059 -41.0996 -43.5 -74 -84.7002 -82.7002c-58.9004 -12.5 -111.601 21.7002 -129.4 72.3008c-3.7002 10.2998 4.40039 21.0996 15.2998 21.0996h33.8008c5.7998 0 11.5996 -2.59961 14.5 -7.59961c8.2998 -14.5 23.6992 -24.4004 41.5996 -24.4004
c26.5 0 48 21.5 48 48s-21.5 48 -48 48h-116.5c-6.59961 25.2002 -20.5 47.4004 -39.7998 64h156.3z" />
    <glyph glyph-name="wine-bottle" unicode="&#xf72f;" 
d="M507.31 375.43c6.25 -6.25 6.25 -16.3799 0.0107422 -22.6201l-22.6299 -22.6299c-6.25 -6.25 -16.3809 -6.25 -22.6309 0l-76.6699 -76.6699c19.7002 -46.5801 10.7305 -102.41 -27.2295 -140.37l-158.391 -158.39c-24.9893 -24.9902 -65.5195 -24.9902 -90.5098 0
l-90.5098 90.5098c-24.9902 24.9902 -24.9902 65.5205 0 90.5098l158.38 158.381c37.9697 37.96 93.79 46.9297 140.37 27.2295l76.6699 76.6699c-6.25 6.25 -6.25 16.3799 0 22.6299l22.6299 22.6299c6.25 6.25 16.3799 6.25 22.6299 0zM179.22 24.71l122.04 122.04
l-90.5098 90.5098l-122.04 -122.04z" />
    <glyph glyph-name="cloud-meatball" unicode="&#xf73b;" 
d="M48 96c26.5 0 48 -21.5 48 -48s-21.5 -48 -48 -48s-48 21.5 -48 48s21.5 48 48 48zM464 96c26.5 0 48 -21.5 48 -48s-21.5 -48 -48 -48s-48 21.5 -48 48s21.5 48 48 48zM345 84.9004c13.5 -7 23 -20.7002 23 -36.9004s-9.5 -29.9004 -23 -36.9004
c4.59961 -14.5 1.7002 -30.7998 -9.7998 -42.2998c-8.2002 -8.2002 -18.9004 -12.2998 -29.7002 -12.2998c-4.2998 0 -8.5 1.2002 -12.5996 2.5c-7 -13.5 -20.7002 -23 -36.9004 -23s-29.9004 9.5 -36.9004 23c-4.09961 -1.40039 -8.2998 -2.5 -12.5996 -2.5
c-10.7998 0 -21.5 4.09961 -29.7002 12.2998c-11.5 11.5 -14.5 27.7998 -9.89941 42.2998c-13.5 7 -23 20.7002 -23 36.9004s9.5 29.9004 23 36.9004c-4.5 14.5 -1.60059 30.7998 9.89941 42.2998s27.7998 14.5 42.2998 9.89941c7 13.5 20.7002 23 36.9004 23
s29.9004 -9.5 36.9004 -23c14.5 4.5 30.7998 1.60059 42.2998 -9.89941c11.3994 -11.5 14.3994 -27.7998 9.7998 -42.2998zM512 224c0 -53 -43 -96 -96 -96h-43.4004c-3.5 8 -8.39941 15.4004 -14.7998 21.7998c-13.5 13.5 -31.5 21.1006 -50.7998 21.2998
c-13.5 13.2002 -31.7002 20.9004 -51 20.9004s-37.5 -7.7002 -51 -20.9004c-19.2998 -0.199219 -37.2998 -7.7998 -50.7998 -21.2998c-6.40039 -6.39941 -11.2002 -13.7998 -14.7998 -21.7998h-43.4004c-53 0 -96 43 -96 96c0 42.5 27.7998 78.2002 66.0996 90.7998
c-1.2998 6.90039 -2.09961 13.9004 -2.09961 21.2002c0 61.9004 50.0996 112 112 112c43.2998 0 80.4004 -24.7998 99 -60.7998c14.7002 17.5 36.4004 28.7998 61 28.7998c44.2002 0 80 -35.7998 80 -80c0 -5.59961 -0.5 -11 -1.59961 -16.2002
c0.5 0 1 0.200195 1.59961 0.200195c53 0 96 -43 96 -96z" />
    <glyph glyph-name="cloud-moon-rain" unicode="&#xf73c;" horiz-adv-x="576" 
d="M350.5 222.5c37.2998 -6.7998 65.5 -39.2998 65.5 -78.5c0 -44.2002 -35.7998 -80 -80 -80h-256c-44.2002 0 -80 35.7998 -80 80c0 38.7998 27.5996 71.0996 64.2002 78.4004c0 0.5 -0.200195 1.09961 -0.200195 1.59961c0 53 43 96 96 96
c32.0996 0 60.2998 -15.9004 77.7002 -40c10.3994 5 22 8 34.2998 8c39.2002 0 71.5996 -28.2998 78.5 -65.5zM567.9 224.2c6.19922 1.2002 10.5996 -6 6.39941 -10.7998c-27 -33.1006 -67.8994 -53.3008 -112.6 -53.3008c-5.2002 0 -10.1006 1 -15.2002 1.5
c-6.2002 39.4004 -33.0996 72.5 -70.2002 86.8008c-10.7002 27.8994 -32.2002 49.7998 -58.8994 61.6992c3.2998 76.7002 66.5 137.9 144.399 137.9c8.90039 0 17.7998 -0.799805 26.5 -2.40039c6.2002 -1.09961 7.60059 -9.39941 2.10059 -12.5
c-35.6006 -20.0996 -57.5 -57.5 -57.5 -98.0996c0 -70.5 64.5996 -124.1 135 -110.8zM364.5 29.9004c7.7002 -4.40039 10.2998 -14.1006 6 -21.8008l-36.5996 -64c-3 -5.19922 -8.40039 -8.09961 -13.9004 -8.09961c-2.7002 0 -5.40039 0.700195 -7.90039 2.09961
c-7.69922 4.40039 -10.3994 14.1006 -6 21.8008l36.6006 64c4.39941 7.7998 14.2002 10.2998 21.7998 6zM268.5 29.9004c7.7002 -4.40039 10.2998 -14.1006 6 -21.8008l-36.5996 -64c-3 -5.19922 -8.40039 -8.09961 -13.9004 -8.09961
c-2.7002 0 -5.40039 0.700195 -7.90039 2.09961c-7.69922 4.40039 -10.3994 14.1006 -6 21.8008l36.6006 64c4.39941 7.7998 14.2002 10.2998 21.7998 6zM172.5 29.9004c7.7002 -4.40039 10.2998 -14.1006 6 -21.8008l-36.5996 -64
c-3 -5.19922 -8.40039 -8.09961 -13.9004 -8.09961c-2.7002 0 -5.40039 0.700195 -7.90039 2.09961c-7.69922 4.40039 -10.3994 14.1006 -6 21.8008l36.6006 64c4.39941 7.7998 14.2002 10.2998 21.7998 6zM76.5 29.9004c7.7002 -4.40039 10.2998 -14.1006 6 -21.8008
l-36.5996 -64c-3 -5.19922 -8.40039 -8.09961 -13.9004 -8.09961c-2.7002 0 -5.40039 0.700195 -7.90039 2.09961c-7.69922 4.40039 -10.3994 14.1006 -6 21.8008l36.6006 64c4.39941 7.7998 14.2002 10.2998 21.7998 6z" />
    <glyph glyph-name="cloud-rain" unicode="&#xf73d;" 
d="M416 320c53 0 96 -43 96 -96s-43 -96 -96 -96h-320c-53 0 -96 43 -96 96c0 42.5 27.7998 78.2002 66.0996 90.7998c-1.2998 6.90039 -2.09961 13.9004 -2.09961 21.2002c0 61.9004 50.0996 112 112 112c43.2998 0 80.4004 -24.7998 99 -60.7998
c14.7002 17.5 36.4004 28.7998 61 28.7998c44.2002 0 80 -35.7998 80 -80c0 -5.59961 -0.5 -11 -1.59961 -16.2002c0.5 0 1 0.200195 1.59961 0.200195zM88 73.7998c2.5 8.5 13.7998 8.10059 16 0c12.7998 -44.5996 40 -56.2998 40 -87.7002
c0 -27.6992 -21.5 -50.0996 -48 -50.0996s-48 22.4004 -48 50.0996c0 31.3008 27.2002 43.3008 40 87.7002zM248 73.7998c2.5 8.5 13.7998 8.10059 16 0c12.7998 -44.5996 40 -56.2998 40 -87.7002c0 -27.6992 -21.5 -50.0996 -48 -50.0996s-48 22.4004 -48 50.0996
c0 31.3008 27.2002 43.3008 40 87.7002zM408 73.7998c2.5 8.5 13.7998 8.10059 16 0c12.7998 -44.5996 40 -56.2998 40 -87.7002c0 -27.6992 -21.5 -50.0996 -48 -50.0996s-48 22.4004 -48 50.0996c0 31.3008 27.2002 43.3008 40 87.7002z" />
    <glyph glyph-name="cloud-showers-heavy" unicode="&#xf740;" 
d="M183.9 77.9004c7.69922 -4.40039 10.3994 -14.2002 6 -21.8008l-64 -112c-3 -5.19922 -8.40039 -8.09961 -13.9004 -8.09961c-2.7002 0 -5.40039 0.700195 -7.90039 2.09961c-7.69922 4.30078 -10.3994 14.1006 -6 21.8008l64 112
c4.40039 7.7998 14.2002 10.3994 21.8008 6zM279.9 77.9004c7.69922 -4.40039 10.3994 -14.2002 6 -21.8008l-64 -112c-3 -5.19922 -8.40039 -8.09961 -13.9004 -8.09961c-2.7002 0 -5.40039 0.700195 -7.90039 2.09961c-7.69922 4.30078 -10.3994 14.1006 -6 21.8008
l64 112c4.40039 7.7998 14.2002 10.3994 21.8008 6zM87.9004 77.9004c7.69922 -4.40039 10.3994 -14.2002 6 -21.8008l-64 -112c-3 -5.19922 -8.40039 -8.09961 -13.9004 -8.09961c-2.7002 0 -5.40039 0.700195 -7.90039 2.09961
c-7.69922 4.30078 -10.3994 14.1006 -6 21.8008l64 112c4.40039 7.7998 14.2002 10.3994 21.8008 6zM471.9 77.9004c7.69922 -4.40039 10.3994 -14.2002 6 -21.8008l-64 -112c-3 -5.19922 -8.40039 -8.09961 -13.9004 -8.09961
c-2.7002 0 -5.40039 0.700195 -7.90039 2.09961c-7.69922 4.30078 -10.3994 14.1006 -6 21.8008l64 112c4.40039 7.7998 14.2002 10.3994 21.8008 6zM375.9 77.9004c7.69922 -4.40039 10.3994 -14.2002 6 -21.8008l-64 -112
c-3 -5.19922 -8.40039 -8.09961 -13.9004 -8.09961c-2.7002 0 -5.40039 0.700195 -7.90039 2.09961c-7.69922 4.30078 -10.3994 14.1006 -6 21.8008l64 112c4.40039 7.7998 14.2002 10.3994 21.8008 6zM416 320c53 0 96 -43 96 -96s-43 -96 -96 -96h-320
c-53 0 -96 43 -96 96c0 42.5 27.7998 78.2002 66.0996 90.7998c-1.2998 6.90039 -2.09961 13.9004 -2.09961 21.2002c0 61.9004 50.2002 112 112 112c43.2998 0 80.4004 -24.7998 99 -60.7998c14.7002 17.5 36.4004 28.7998 61 28.7998c44.2002 0 80 -35.7998 80 -80
c0 -5.59961 -0.5 -11 -1.59961 -16.2002c0.5 0 1 0.200195 1.59961 0.200195z" />
    <glyph glyph-name="cloud-sun-rain" unicode="&#xf743;" horiz-adv-x="576" 
d="M510.5 222.5c37.2998 -6.7998 65.5 -39.2998 65.5 -78.5c0 -44.2002 -35.7998 -80 -80 -80h-256c-44.2002 0 -80 35.7998 -80 80c0 38.7998 27.5996 71 64.2002 78.4004c0 0.5 -0.200195 1.09961 -0.200195 1.59961c0 53 43 96 96 96
c32.0996 0 60.2998 -15.9004 77.7002 -40c10.3994 5 22 8 34.2998 8c39.2002 0 71.5996 -28.2998 78.5 -65.5zM124.1 188.1c3.10059 -3.09961 6.60059 -5.59961 10.2002 -8.2998c-3.89941 -11.3994 -6.2002 -23.3994 -6.2002 -35.8994c0 -2.5 0.5 -4.80078 0.700195 -7.2002
l-59.2002 -19.7002c-10.1992 -3.2998 -19.8994 6.2998 -16.5 16.5l25.1006 75.2998l-71 35.5c-9.60059 4.7998 -9.60059 18.5 0 23.2998l71 35.5l-25.1006 75.3008c-3.39941 10.1992 6.2002 19.8994 16.4004 16.5l75.2998 -25.1006l35.5 71
c4.7998 9.60059 18.5 9.60059 23.2998 0l35.5 -71l75.3008 25.1006c10.1992 3.39941 19.8994 -6.2002 16.5 -16.4004l-8.90039 -26.7002c-0.700195 0 -1.2998 0.200195 -2 0.200195c-25.5996 0 -49.2002 -7.7998 -69.2002 -20.7002
c-37.5996 29.4004 -92.0996 27.2002 -126.7 -7.39941c-37.3994 -37.5 -37.3994 -98.4004 0 -135.801zM193.9 246.1c-18.2002 -8.2998 -33.5 -21.2998 -44.8008 -37.1992c-12.8994 11.6992 -21.0996 28.3994 -21.0996 47.0996c0 35.2998 28.7002 64 64 64
c12.4004 0 24 -3.7002 33.7998 -9.90039c-16.0996 -17.5996 -27.5996 -39.5 -31.8994 -64zM524.5 29.9004c7.7002 -4.40039 10.2998 -14.1006 6 -21.8008l-36.5996 -64c-3 -5.19922 -8.40039 -8.09961 -13.9004 -8.09961c-2.7002 0 -5.40039 0.700195 -7.90039 2.09961
c-7.69922 4.40039 -10.3994 14.1006 -6 21.8008l36.6006 64c4.39941 7.7998 14.2002 10.2998 21.7998 6zM428.5 29.9004c7.7002 -4.40039 10.2998 -14.1006 6 -21.8008l-36.5996 -64c-3 -5.19922 -8.40039 -8.09961 -13.9004 -8.09961
c-2.7002 0 -5.40039 0.700195 -7.90039 2.09961c-7.69922 4.40039 -10.3994 14.1006 -6 21.8008l36.6006 64c4.39941 7.7998 14.2002 10.2998 21.7998 6zM332.5 29.9004c7.7002 -4.40039 10.2998 -14.1006 6 -21.8008l-36.5996 -64
c-3 -5.19922 -8.40039 -8.09961 -13.9004 -8.09961c-2.7002 0 -5.40039 0.700195 -7.90039 2.09961c-7.69922 4.40039 -10.3994 14.1006 -6 21.8008l36.6006 64c4.39941 7.7998 14.2002 10.2998 21.7998 6zM236.5 29.9004c7.7002 -4.40039 10.2998 -14.1006 6 -21.8008
l-36.5996 -64c-3 -5.19922 -8.40039 -8.09961 -13.9004 -8.09961c-2.7002 0 -5.40039 0.700195 -7.90039 2.09961c-7.69922 4.40039 -10.3994 14.1006 -6 21.8008l36.6006 64c4.39941 7.7998 14.2002 10.2998 21.7998 6z" />
    <glyph glyph-name="democrat" unicode="&#xf747;" horiz-adv-x="640" 
d="M637.3 191.1c4.90039 -7.39941 2.90039 -17.2998 -4.39941 -22.2998l-26.6006 -17.7002c-7.39941 -4.89941 -17.2998 -3 -22.2002 4.40039c-21.7998 32.7002 -23.8994 38.0996 -40.0996 50.2998v-77.7998h-352l-54 108l-38.0996 -34.5996
c-6 -6 -14.1006 -9.40039 -22.6006 -9.40039h-31c-12.0996 0 -23.2002 6.90039 -28.5996 17.7002l-14.2998 28.5996c-5.40039 10.7998 -4.30078 23.7998 3 33.5l74.5996 99.2998c1.7002 2.30078 4.2002 3.7002 6.40039 5.40039c-4 2.2002 -8 4.2002 -11.3008 7.5
c-16.3994 16.4004 -18.3994 41.7998 -6.09961 60.4004c2.7998 4.19922 8.7998 4.7998 12.4004 1.19922l42.8994 -42.7998l41.7998 41.7998c4.40039 4.40039 11.8008 3.7002 15.2002 -1.5c15.1006 -22.7998 12.6006 -53.7998 -7.5 -73.8994l81.2002 -81.2002h235.6
c50.8008 0 97.9004 -25.2002 126.101 -67.5zM296.2 204.7c3 2.89941 1.39941 7.89941 -2.60059 8.5l-22.7998 3.2998l-10.2002 20.7002c-1.89941 3.7002 -7.19922 3.7002 -9 0l-10.1992 -20.7002l-22.8008 -3.2998c-4.09961 -0.600586 -5.7998 -5.60059 -2.7998 -8.5
l16.5 -16.1006l-3.89941 -22.6992c-0.700195 -4.10059 3.59961 -7.2002 7.19922 -5.30078l20.4004 10.7002l20.4004 -10.7002c3.59961 -1.89941 7.89941 1.2002 7.19922 5.30078l-3.89941 22.6992zM408.2 204.7c3 2.89941 1.39941 7.89941 -2.60059 8.5l-22.7998 3.2998
l-10.2002 20.7002c-1.89941 3.7002 -7.19922 3.7002 -9 0l-10.1992 -20.7002l-22.8008 -3.2998c-4.09961 -0.600586 -5.7998 -5.60059 -2.7998 -8.5l16.5 -16.1006l-3.89941 -22.6992c-0.700195 -4.10059 3.59961 -7.2002 7.19922 -5.30078l20.4004 10.7002
l20.4004 -10.7002c3.59961 -1.89941 7.89941 1.2002 7.19922 5.30078l-3.89941 22.6992zM520.2 204.7c3 2.89941 1.39941 7.89941 -2.60059 8.5l-22.7998 3.2998l-10.2002 20.7002c-1.89941 3.7002 -7.19922 3.7002 -9 0l-10.1992 -20.7002l-22.8008 -3.2998
c-4.09961 -0.600586 -5.7998 -5.60059 -2.7998 -8.5l16.5 -16.1006l-3.89941 -22.6992c-0.700195 -4.10059 3.59961 -7.2002 7.19922 -5.30078l20.4004 10.7002l20.4004 -10.7002c3.59961 -1.89941 7.89941 1.2002 7.19922 5.30078l-3.89941 22.6992zM192 -48v144h352v-144
c0 -8.7998 -7.2002 -16 -16 -16h-64c-8.7998 0 -16 7.2002 -16 16v80h-160v-80c0 -8.7998 -7.2002 -16 -16 -16h-64c-8.7998 0 -16 7.2002 -16 16z" />
    <glyph glyph-name="flag-usa" unicode="&#xf74d;" 
d="M32 448c17.7002 0 32 -14.2998 32 -32v-464c0 -8.7998 -7.2002 -16 -16 -16h-32c-8.7998 0 -16 7.2002 -16 16v464c0 17.7002 14.2998 32 32 32zM299.9 144.4c31.0996 -8.2002 62.5996 -16.5 100 -16.6006c31.8994 0 68.5 6.7998 112.1 24.1006v-36
c0 -12.3008 -7.09961 -23.8008 -18.5 -28.8008c-175.8 -76.3994 -211.8 69.1006 -397.5 -23.0996v69.2998c92.2002 39.9004 146.7 26.2002 203.9 11.1006zM299.9 240.4c31.0996 -8.2002 62.5996 -16.5 100 -16.5c31.8994 0 68.5 6.7998 112.1 24.0996v-61.5
c-92.2002 -39.9004 -146.7 -26.2002 -203.9 -11.0996c-57.5 15.0996 -117.3 30 -212.1 -7.60059v61.5c92.2002 39.9004 146.7 26.2002 203.9 11.1006zM309.4 366.3c-7 2.10059 -14.1006 4.2002 -21.3008 6.2002v-33.2002c4 -1.09961 8.10059 -2.2998 12.1006 -3.5
c26.7002 -8.09961 52.8994 -15.8994 85.7002 -15.8994c32.7998 0 72.5 7.89941 126.1 31.3994v-68.8994c-92.2002 -39.8008 -146.7 -26.1006 -203.9 -11.1006c-57.5 15.1006 -117.3 29.9004 -212.1 -7.59961v151.899c209.4 94.6006 195.3 -59.0996 366.6 28.2002
c22.6006 11.5 49.4004 -1.5 49.4004 -26.5996v-30.7998c-105.2 -49.1006 -150.8 -35.7002 -202.6 -20.1006zM160 319.9c8.7998 0 16 7.09961 16 16c0 8.89941 -7.2002 16 -16 16s-16 -7.2002 -16 -16c0 -8.90039 7.2002 -16 16 -16zM160 375.7c8.7998 0 16 7.2002 16 16
c0 8.89941 -7.2002 16 -16 16s-16 -7.2002 -16 -16c0 -8.90039 7.2002 -16 16 -16zM224 327.8c8.7998 0 16 7.2002 16 16c0 8.90039 -7.2002 16 -16 16s-16 -7.2002 -16 -16c0 -8.89941 7.2002 -16 16 -16zM224 383.7c8.7998 0 16 7.2002 16 16c0 8.89941 -7.2002 16 -16 16
s-16 -7.2002 -16 -16c0 -8.90039 7.2002 -16 16 -16z" />
    <glyph glyph-name="meteor" unicode="&#xf753;" 
d="M511.328 427.197c-11.6074 -38.7021 -34.3076 -111.702 -61.3037 -187.701c6.99902 -2.09375 13.4043 -4 18.6074 -5.59277c6.58301 -2.00684 11.3779 -8.13184 11.3779 -15.3672c0 -2.71875 -0.685547 -5.29395 -1.87988 -7.53906
c-22.1055 -42.2969 -82.6904 -152.795 -142.479 -214.403c-0.999023 -1.09375 -1.99902 -2.5 -2.99902 -3.5c-35.2676 -35.2773 -83.9824 -57.1094 -137.757 -57.1094c-107.53 0 -194.83 87.2998 -194.83 194.83c0 53.7559 21.7637 102.511 57.0195 137.775
c1 1 2.40625 2 3.49902 3c61.6006 59.9053 171.975 120.405 214.374 142.498c2.24512 1.19434 4.80664 1.87109 7.52441 1.87109c7.23535 0 13.374 -4.78711 15.3779 -11.3711c1.59375 -5.09375 3.5 -11.5928 5.59277 -18.5928
c75.8955 26.999 148.978 49.7021 187.675 61.2959c1.4834 0.448242 3.05664 0.689453 4.68652 0.689453c8.93164 0 16.1826 -7.25098 16.1826 -16.1826c0 -1.59961 -0.236328 -3.14062 -0.668945 -4.60059zM319.951 127.998
c-0.00976562 70.626 -57.3525 127.962 -127.98 127.962c-70.6348 0 -127.98 -57.3457 -127.98 -127.98c0 -70.6338 57.3457 -127.979 127.98 -127.979c70.6318 0 127.976 57.3438 127.976 127.976c0 0.0078125 0.00488281 0.0146484 0.00488281 0.0224609zM191.971 159.997
c-0.00292969 -17.6562 -14.3379 -31.9902 -31.9951 -31.9902c-17.6582 0 -31.9951 14.3369 -31.9951 31.9951c0 17.6592 14.3369 31.9951 31.9951 31.9951h0.0371094c17.6387 0 31.959 -14.3203 31.959 -31.959
c0 -0.0136719 -0.000976562 -0.0263672 -0.000976562 -0.0410156v0zM223.966 79.998c-0.000976562 -8.82812 -7.16895 -15.9951 -15.998 -15.9951s-15.9971 7.16895 -15.9971 15.998s7.16797 15.9971 15.9971 15.9971c8.81738 -0.0283203 15.9707 -7.18262 15.998 -16v0z
" />
    <glyph glyph-name="person-booth" unicode="&#xf756;" horiz-adv-x="576" 
d="M192 -48v176h64v-176c0 -8.7998 -7.2002 -16 -16 -16h-32c-8.7998 0 -16 7.2002 -16 16zM224 224c17.7002 0 32 -14.2998 32 -32s-14.2998 -32 -32 -32h-57.5c-12.7998 0 -24.7998 5 -33.9004 14.0996l-20.8994 20.9004v-80.5996l41.2002 -61.3008
c4.39941 -8.7998 6.69922 -18.6992 6.69922 -28.5996v-56.5c0 -17.7002 -14.2998 -32 -32 -32c-17.6992 0 -32 14.2998 -32 32v56l-29.0996 43c-0.900391 0.400391 -1.59961 1.2002 -2.5 1.7002l-0.0996094 -100.7c0 -17.7002 -14.4004 -32 -32 -32
c-17.6006 0 -31.9004 14.2998 -31.9004 32l0.200195 160l-0.200195 95.9004c0 17.0996 6.7002 33.1992 18.7002 45.2998c12.0996 12.0996 28.2002 18.7998 45.2998 18.7998h18.7002c17 0 33.0996 -6.59961 45.2002 -18.7002l45.1992 -45.2998h50.9004zM64 320
c-26.5 0 -48 21.5 -48 48s21.5 48 48 48s48 -21.5 48 -48s-21.5 -48 -48 -48zM288 416v32h192v-416c0 -17.7002 -14.2998 -32 -32 -32s-32 14.2998 -32 32c0 -17.7002 -14.2998 -32 -32 -32c-17.0996 0 -30.7998 13.5 -31.7002 30.4004
c-4.2998 -21.3008 -17.0996 -30.4004 -32.2998 -30.4004c-18.4004 0 -35.7002 16.7002 -31.4004 38.2998l30.9004 154.601zM192 416c0 17.7002 14.2998 32 32 32h32v-192h-64v160zM544 448c17.7002 0 32 -14.2998 32 -32v-464c0 -8.7998 -7.2002 -16 -16 -16h-32
c-8.7998 0 -16 7.2002 -16 16v496h32z" />
    <glyph glyph-name="poo-storm" unicode="&#xf75a;" horiz-adv-x="448" 
d="M308 112c9.2002 0 15 -10 10.4004 -18l-88 -152c-2.2002 -3.7998 -6.2002 -6 -10.4004 -6c-7.7002 0 -13.5 7.2002 -11.7002 14.7998l23 97.2002h-59.2998c-7.2998 0 -12.9004 6.40039 -11.9004 13.5996l16 120c0.800781 5.90039 5.90039 10.4004 11.9004 10.4004h68
c7.90039 0 13.5996 -7.5 11.5996 -15.0996l-17.2998 -64.9004h57.7002zM374.4 223.3c41 -3.2998 73.5996 -37.5 73.5 -79.2998c0 -44 -36 -80 -80 -80h-30l8.09961 14c7.7998 13.5 7.7998 30.4004 0 44s-22.4004 22 -38.0996 22h-16l6.59961 24.7002
c3.59961 13.2998 0.799805 27.2002 -7.59961 38.0996c-8.40039 10.9004 -21.1006 17.2002 -34.9004 17.2002h-68c-22 0 -40.7002 -16.4004 -43.7002 -38.2002l-16 -120c0 -0.599609 0.100586 -1.2002 0 -1.7998h-48.2998c-44 0 -80 36 -80 80
c0 41.7998 32.5996 76 73.5996 79.2998c-5.89941 9.60059 -9.59961 20.6006 -9.59961 32.7002c0 35.2998 28.7002 64 64 64h16c44.2002 0 80 35.7998 80 80c0 17.4004 -5.7002 33.4004 -15.0996 46.5c4.89941 0.799805 9.89941 1.5 15.0996 1.5c53 0 96 -43 96 -96
c0 -11.2998 -2.2998 -21.9004 -5.90039 -32h5.90039c35.2998 0 64 -28.7002 64 -64c0 -12.0996 -3.7002 -23.0996 -9.59961 -32.7002z" />
    <glyph glyph-name="rainbow" unicode="&#xf75b;" horiz-adv-x="576" 
d="M268.3 415.3c167.7 11.2998 307.7 -122 307.7 -287.3v-144c0 -8.7998 -7.2002 -16 -16 -16h-32c-8.7998 0 -16 7.2002 -16 16v136.2c0 113.8 -81.5996 215.399 -194.5 229.899c-136.6 17.6006 -253.5 -88.8994 -253.5 -222.1v-144c0 -8.7998 -7.2002 -16 -16 -16h-32
c-8.7998 0 -16 7.2002 -16 16v133.8c0 153.3 115.4 287.3 268.3 297.5zM262.7 318.4c117.1 15 217.3 -76.2002 217.3 -190.4v-144c0 -8.7998 -7.2002 -16 -16 -16h-32c-8.7998 0 -16 7.2002 -16 16v138.3c0 66.9004 -48.7002 126.601 -115.2 133.101
c-76.2998 7.39941 -140.8 -52.6006 -140.8 -127.4v-144c0 -8.7998 -7.2002 -16 -16 -16h-32c-8.7998 0 -16 7.2002 -16 16v137.3c0 97.6006 70 184.7 166.7 197.101zM268.9 222.1c61.2998 11.9004 115.1 -34.8994 115.1 -94.0996v-144c0 -8.7998 -7.2002 -16 -16 -16h-32
c-8.7998 0 -16 7.2002 -16 16v144c0 17.5996 -14.2998 32 -32 32s-32 -14.4004 -32 -32v-144c0 -8.7998 -7.2002 -16 -16 -16h-32c-8.7998 0 -16 7.2002 -16 16v140.2c0 46.3994 31.2998 89 76.9004 97.8994z" />
    <glyph glyph-name="republican" unicode="&#xf75e;" horiz-adv-x="640" 
d="M544 256v-64h-544v64c0 88.4004 71.5996 160 160 160h224c88.4004 0 160 -71.5996 160 -160zM176.3 277.6c3.5 3.5 1.60059 9.5 -3.39941 10.2002l-27.4004 4l-12.2002 24.7998c-2.09961 4.40039 -8.5 4.5 -10.7002 0l-12.1992 -24.7998l-27.4004 -4
c-4.90039 -0.700195 -6.90039 -6.7002 -3.2998 -10.2002l19.7998 -19.2998l-4.7002 -27.2998c-0.799805 -4.90039 4.40039 -8.59961 8.7002 -6.2998l24.5 12.8994l24.5 -12.8994c4.40039 -2.2998 9.5 1.39941 8.7002 6.2998l-4.7002 27.2998zM320.3 277.6
c3.5 3.5 1.60059 9.5 -3.39941 10.2002l-27.4004 4l-12.2002 24.7998c-2.09961 4.40039 -8.5 4.5 -10.7002 0l-12.1992 -24.7998l-27.4004 -4c-4.90039 -0.700195 -6.90039 -6.7002 -3.2998 -10.2002l19.7998 -19.2998l-4.7002 -27.2998
c-0.799805 -4.90039 4.40039 -8.59961 8.7002 -6.2998l24.5 12.8994l24.5 -12.8994c4.40039 -2.2998 9.5 1.39941 8.7002 6.2998l-4.7002 27.2998zM464.3 277.6c3.5 3.5 1.60059 9.5 -3.39941 10.2002l-27.4004 4l-12.2002 24.7998c-2.09961 4.40039 -8.5 4.5 -10.7002 0
l-12.1992 -24.7998l-27.4004 -4c-4.90039 -0.700195 -6.90039 -6.7002 -3.2998 -10.2002l19.7998 -19.2998l-4.7002 -27.2998c-0.799805 -4.90039 4.40039 -8.59961 8.7002 -6.2998l24.5 12.8994l24.5 -12.8994c4.40039 -2.2998 9.5 1.39941 8.7002 6.2998l-4.7002 27.2998z
M624 128c8.7998 0 16 -7.2002 16 -16v-64c0 -46.9004 -40.5996 -84.5 -88.4004 -79.5996c-41.5996 4.19922 -71.5996 42.5 -71.5996 84.2998v43.2998h-32v-112c0 -8.7998 -7.2002 -16 -16 -16h-96c-8.7998 0 -16 7.2002 -16 16v80h-192v-80c0 -8.7998 -7.2002 -16 -16 -16
h-96c-8.7998 0 -16 7.2002 -16 16v176h544v-112c0 -8.7998 7.2002 -16 16 -16s16 7.2002 16 16v64c0 8.7998 7.2002 16 16 16h32z" />
    <glyph glyph-name="smog" unicode="&#xf75f;" horiz-adv-x="640" 
d="M624 80c8.7998 0 16 -7.2002 16 -16v-16c0 -8.7998 -7.2002 -16 -16 -16h-544c-8.7998 0 -16 7.2002 -16 16v16c0 8.7998 7.2002 16 16 16h544zM144 -16c8.7998 0 16 -7.2002 16 -16v-16c0 -8.7998 -7.2002 -16 -16 -16h-128c-8.7998 0 -16 7.2002 -16 16v16
c0 8.7998 7.2002 16 16 16h128zM560 -16c8.7998 0 16 -7.2002 16 -16v-16c0 -8.7998 -7.2002 -16 -16 -16h-336c-8.7998 0 -16 7.2002 -16 16v16c0 8.7998 7.2002 16 16 16h336zM144 160c-79.5 0 -144 64.5 -144 144s64.5 144 144 144c41 0 77.7998 -17.2998 104 -44.7998
c26.2002 27.5 63 44.7998 104 44.7998c54.7998 0 102 -31 126.3 -76.0996c15 7.5 31.7002 12.0996 49.7002 12.0996c61.9004 0 112 -50.0996 112 -112s-50.0996 -112 -112 -112h-60.0996c-22.6006 -19.7002 -51.6006 -32 -83.9004 -32s-61.4004 12.2998 -83.9004 32h-156.1z
" />
    <glyph glyph-name="temperature-high" unicode="&#xf769;" 
d="M416 448c52.9004 0 96 -43.0996 96 -96s-43.0996 -96 -96 -96s-96 43.0996 -96 96s43.0996 96 96 96zM416 320c17.7002 0 32 14.2998 32 32s-14.2998 32 -32 32s-32 -14.2998 -32 -32s14.2998 -32 32 -32zM256 336v-166.5c19.7002 -24.5996 32 -55.5 32 -89.5
c0 -79.5 -64.5 -144 -144 -144s-144 64.5 -144 144c0 34 12.2998 64.7998 32 89.5v166.5c0 61.9004 50.0996 112 112 112s112 -50.0996 112 -112zM144 0c44.0996 0 80 35.9004 80 80c0 25.5 -12.2002 49 -32 63.7998v192.2c0 26.5 -21.5 48 -48 48s-48 -21.5 -48 -48v-192.2
c-19.7998 -14.8994 -32 -38.2998 -32 -63.7998c0 -44.0996 35.9004 -80 80 -80zM160 125.1c18.5996 -6.59961 32 -24.1992 32 -45.0996c0 -26.5 -21.5 -48 -48 -48s-48 21.5 -48 48c0 20.9004 13.4004 38.5 32 45.0996v210.9c0 8.7998 7.2002 16 16 16s16 -7.2002 16 -16
v-210.9z" />
    <glyph glyph-name="temperature-low" unicode="&#xf76b;" 
d="M416 448c52.9004 0 96 -43.0996 96 -96s-43.0996 -96 -96 -96s-96 43.0996 -96 96s43.0996 96 96 96zM416 320c17.7002 0 32 14.2998 32 32s-14.2998 32 -32 32s-32 -14.2998 -32 -32s14.2998 -32 32 -32zM256 336v-166.5c19.7002 -24.5996 32 -55.5 32 -89.5
c0 -79.5 -64.5 -144 -144 -144s-144 64.5 -144 144c0 34 12.2998 64.7998 32 89.5v166.5c0 61.9004 50.0996 112 112 112s112 -50.0996 112 -112zM144 0c44.0996 0 80 35.9004 80 80c0 25.5 -12.2002 49 -32 63.7998v192.2c0 26.5 -21.5 48 -48 48s-48 -21.5 -48 -48v-192.2
c-19.7998 -14.8994 -32 -38.2998 -32 -63.7998c0 -44.0996 35.9004 -80 80 -80zM160 125.1c18.5996 -6.59961 32 -24.1992 32 -45.0996c0 -26.5 -21.5 -48 -48 -48s-48 21.5 -48 48c0 20.9004 13.4004 38.5 32 45.0996v18.9004c0 8.7998 7.2002 16 16 16s16 -7.2002 16 -16
v-18.9004z" />
    <glyph glyph-name="vote-yea" unicode="&#xf772;" horiz-adv-x="640" 
d="M608 128c17.7002 0 32 -14.2998 32 -32v-96c0 -17.7002 -14.2998 -32 -32 -32h-576c-17.7002 0 -32 14.2998 -32 32v96c0 17.7002 14.2998 32 32 32h64v-64h-22.4004c-5.2998 0 -9.59961 -3.59961 -9.59961 -8v-16c0 -4.40039 4.2998 -8 9.59961 -8h492.801
c5.2998 0 9.59961 3.59961 9.59961 8v16c0 4.40039 -4.2998 8 -9.59961 8h-22.4004v64h64zM512 64h-384v319.7c0 17.7998 14.5 32.2998 32.4004 32.2998h319.3c17.7998 0 32.2998 -14.4004 32.2998 -32.2998v-319.7zM211.2 246c-4.2002 -4.2002 -4.2998 -11 0 -15.2002
l74.0996 -74.7002c4.2002 -4.2998 11 -4.2998 15.2002 -0.0996094l128.3 127.2c4.2998 4.2002 4.2998 11 0.100586 15.2002l-25.3008 25.5c-4.19922 4.2998 -11 4.2998 -15.1992 0.0996094l-95.2002 -94.4004l-41.2998 41.6006
c-4.2002 4.2998 -11 4.2998 -15.2002 0.0996094z" />
    <glyph glyph-name="water" unicode="&#xf773;" horiz-adv-x="576" 
d="M562.1 64.0996c8.10059 -0.899414 13.9004 -8.2998 13.8008 -16.2998v-31.5996c0 -9.10059 -7.60059 -16.7998 -16.7002 -16c-28.2002 2.5 -55.7998 11.5996 -79.1006 25.7998c-55 -34.0996 -135.5 -34.5996 -192 0c-55 -34.0996 -135.5 -34.5996 -192 0
c-23.2998 -14.5 -50.5996 -23.4004 -79.3994 -25.9004c-9.10059 -0.799805 -16.7002 6.90039 -16.7002 16v32.2002c0 7.90039 5.7002 14.9004 13.5996 15.7002c21.7002 2.2998 42.2002 10.2002 57.7002 22.4004c13.7998 10.8994 33.6006 13.1992 47.1006 2
c38.2998 -31.7002 107.199 -31.8008 145.199 -1.7002c13.7002 10.8994 33.2002 13 46.7002 1.7998c38.5 -31.9004 107.8 -31.9004 145.7 -1.5c14 11.2998 34.0996 11.0996 48.2002 0c15.7998 -12.4004 36.3994 -20.5 57.8994 -22.9004zM562.1 208.1
c8.10059 -0.899414 13.9004 -8.2998 13.8008 -16.2998v-31.5996c0 -9.10059 -7.60059 -16.7998 -16.7002 -16c-28.2002 2.5 -55.7998 11.5996 -79.1006 25.7998c-55 -34.0996 -135.5 -34.5996 -192 0c-55 -34.0996 -135.5 -34.5996 -192 0
c-23.2998 -14.5 -50.5996 -23.4004 -79.3994 -25.9004c-9.10059 -0.799805 -16.7002 6.90039 -16.7002 16v32.2002c0 7.90039 5.7002 14.9004 13.5996 15.7002c21.7002 2.2998 42.2002 10.2002 57.7002 22.4004c13.7998 10.8994 33.6006 13.1992 47.1006 2
c38.2998 -31.7002 107.199 -31.8008 145.199 -1.7002c13.7002 10.8994 33.2002 13 46.7002 1.7998c38.5 -31.9004 107.8 -31.9004 145.7 -1.5c14 11.2998 34.0996 11.0996 48.2002 0c15.7998 -12.4004 36.3994 -20.5 57.8994 -22.9004zM562.1 352.1
c8.10059 -0.899414 13.9004 -8.2998 13.8008 -16.2998v-31.5996c0 -9.10059 -7.60059 -16.7998 -16.7002 -16c-28.2002 2.5 -55.7998 11.5996 -79.1006 25.7998c-55 -34.0996 -135.5 -34.5996 -192 0c-55 -34.0996 -135.5 -34.5996 -192 0
c-23.2998 -14.5 -50.5996 -23.4004 -79.3994 -25.9004c-9.10059 -0.799805 -16.7002 6.90039 -16.7002 16v32.2002c0 7.90039 5.7002 14.9004 13.5996 15.7002c21.7002 2.2998 42.2002 10.2002 57.7002 22.4004c13.7998 10.8994 33.6006 13.1992 47.1006 2
c38.2998 -31.7002 107.199 -31.8008 145.199 -1.7002c13.7002 10.8994 33.2002 13 46.7002 1.7998c38.5 -31.9004 107.8 -31.9004 145.7 -1.5c14 11.2998 34.0996 11.0996 48.2002 0c15.7998 -12.4004 36.3994 -20.4004 57.8994 -22.9004z" />
    <glyph glyph-name="baby" unicode="&#xf77c;" horiz-adv-x="384" 
d="M192 288c-44.2002 0 -80 35.7998 -80 80s35.7998 80 80 80s80 -35.7998 80 -80s-35.7998 -80 -80 -80zM138.6 39.2002l29.4004 -39.2002c13.2002 -17.7002 9.7002 -42.7998 -8 -56c-7.2002 -5.40039 -15.7002 -8 -24 -8c-12.0996 0 -24.0996 5.5 -32 16l-48 64
c-10.9004 14.5996 -10.5996 34.7998 0.799805 49l45.9004 57.4004l61.5 -51.2002zM281.3 122.4l45.9004 -57.4004c11.3994 -14.2002 11.7002 -34.4004 0.799805 -49l-48 -64c-7.7998 -10.5 -19.7998 -16 -32 -16c-8.40039 0 -16.7998 2.59961 -24 8
c-17.7002 13.2002 -21.2002 38.2998 -8 56l29.4004 39.2002l-25.6006 32zM376.7 303c12.7002 -18.0996 8.39941 -43 -9.7002 -55.7998l-40.5996 -28.5c-17 -11.9004 -35.4004 -20.9004 -54.4004 -27.9004v-30.7998h-160v30.9004c-19 7 -37.4004 16 -54.4004 27.8994
l-40.5996 28.5c-18 12.7002 -22.4004 37.6006 -9.7002 55.7002c12.7002 18 37.6006 22.4004 55.7002 9.7002l40.5996 -28.4004c52.6006 -37 124.101 -37 176.801 0l40.5996 28.5c18.0996 12.6006 43 8.2998 55.7002 -9.7998z" />
    <glyph glyph-name="baby-carriage" unicode="&#xf77d;" 
d="M144.8 431l111.2 -175h-256c0 74 35.2998 140.1 90.7998 184.4c16.7998 13.3994 42.7002 8.39941 54 -9.40039zM496 352c8.7998 0 16 -7.2002 16 -16v-32c0 -8.7998 -7.2002 -16 -16 -16h-48v-64c0 -50.5996 -23 -96.4004 -60.2998 -130.7
c34.5996 -8.89941 60.2998 -40 60.2998 -77.2998c0 -44.2002 -35.7998 -80 -80 -80s-80 35.7998 -80 80c0 8.90039 1.7002 17.2002 4.40039 25.2002c-21.5 -5.90039 -44.6006 -9.2002 -68.4004 -9.2002s-46.7998 3.2998 -68.4004 9.2002
c2.60059 -8 4.40039 -16.2998 4.40039 -25.2002c0 -44.2002 -35.7998 -80 -80 -80s-80 35.7998 -80 80c0 37.2998 25.7002 68.4004 60.2998 77.2998c-37.2998 34.2998 -60.2998 80.1006 -60.2998 130.7h384v64c0 35.2998 28.7002 64 64 64h48zM80 -16
c17.5996 0 32 14.4004 32 32s-14.4004 32 -32 32s-32 -14.4004 -32 -32s14.4004 -32 32 -32zM400 16c0 17.5996 -14.4004 32 -32 32s-32 -14.4004 -32 -32s14.4004 -32 32 -32s32 14.4004 32 32z" />
    <glyph glyph-name="biohazard" unicode="&#xf780;" horiz-adv-x="576" 
d="M287.9 336c-18.5 0 -36 -3.7998 -52.5 -9.5c-13.3008 10.2998 -23.6006 24.2998 -29.5 40.7002c25.1992 10.8994 53 16.8994 82.0996 16.8994c29.2002 0 57 -6.09961 82.2002 -17c-5.90039 -16.3994 -16.2002 -30.3994 -29.5 -40.6992
c-16.6006 5.7998 -34.2002 9.59961 -52.7998 9.59961zM163.6 9.2998c-47.5 35.5 -79.1992 90.7002 -83.2998 153.5c7.2998 2.10059 14.9004 3.10059 22.5 3.10059c9.2002 0 17.9004 -1.80078 26.4004 -4.60059c4.09961 -44.2998 26 -83.2002 58.8994 -109.6
c-4.09961 -16 -12.5 -30.6006 -24.5 -42.4004zM387.8 51.9004c32.7002 26.3994 54.6006 65.0996 58.7002 109.3c8.59961 2.7998 17.4004 4.7002 26.5996 4.7002c7.5 0 15 -1 22.2002 -3c-3.89941 -62.8008 -35.5996 -118 -83 -153.5c-12 11.7998 -20.3994 26.5 -24.5 42.5z
M501.3 256.9c34.6006 -20.4004 61 -53.3008 74.1006 -92.4004c1.2998 -3.7002 -0.200195 -7.7998 -3.5 -9.7998c-3.30078 -2 -7.5 -1.2998 -10 1.59961c-9.40039 10.7998 -19 19 -29.2002 25.1006c-57.2998 33.8994 -130.8 13.6992 -163.9 -45
c-33.0996 -58.7002 -13.3994 -134 43.9004 -167.9c10.2002 -6.09961 21.8994 -10.5 35.7998 -13.4004c3.7998 -0.799805 6.40039 -4.19922 6.40039 -8.09961c-0.100586 -4 -2.7002 -7.2998 -6.5 -8c-39.7002 -7.7998 -80.6006 -0.799805 -115.2 19.7002
c-18 10.5996 -32.9004 24.5 -45.2998 40.0996c-12.4004 -15.5996 -27.3008 -29.5 -45.3008 -40.0996c-34.5996 -20.5 -75.5 -27.5 -115.199 -19.7002c-3.80078 0.700195 -6.40039 4 -6.5 8c0 3.90039 2.69922 7.2998 6.39941 8.09961
c13.7998 3 25.6006 7.30078 35.7998 13.4004c57.3008 33.9004 77 109.2 43.9004 167.9c-33.0996 58.6992 -106.6 78.8994 -163.9 45c-10.1992 -6 -19.7998 -14.3008 -29.1992 -25.1006c-2.5 -2.89941 -6.7002 -3.59961 -10 -1.59961
c-3.30078 2.09961 -4.80078 6.09961 -3.5 9.7998c13.2998 39.0996 39.6992 71.9004 74.2998 92.4004c17.5996 10.3994 36.3994 16.5996 55.2998 19.8994c-6.09961 17.7002 -10 36.4004 -10 56.2002c0 41 14.5996 80.7998 41 112.2c2.5 3 6.59961 3.7002 10 1.7998
c3.2998 -1.90039 4.7998 -6 3.59961 -9.7002c-4.39941 -13.7998 -6.59961 -26.3994 -6.59961 -38.5c0 -67.7998 53.7998 -122.899 120 -122.899s120 55.0996 120 122.899c0 12.2002 -2.09961 24.7002 -6.59961 38.5c-1.2002 3.7002 0.299805 7.7998 3.59961 9.7002
c3.40039 1.90039 7.5 1.2002 10 -1.7998c26.5 -31.4004 41 -71.2002 41 -112.2c0 -19.7998 -4 -38.5 -10 -56.2002c19 -3.2998 37.7002 -9.5 55.2998 -19.8994zM287.9 127.9c26.5 0 48 21.5 48 48s-21.5 48 -48 48s-48 -21.5 -48 -48s21.5 -48 48 -48z" />
    <glyph glyph-name="blog" unicode="&#xf781;" 
d="M172.2 221.2c75.5 -15 129.899 -89.2998 112.5 -172.2c-11.4004 -54.2998 -55.2998 -98.2998 -109.7 -109.7c-92.9004 -19.5 -175 51.2002 -175 140.7v248c0 13.2998 10.7002 24 24 24h48c13.2998 0 24 -10.7002 24 -24v-248c0 -26.5 21.5 -48 48 -48s48 21.5 48 48
c0 20.5996 -13.0996 38.2002 -31.2998 45c-9.60059 3.59961 -16.7002 11.7998 -16.7002 22v50.4004c0 14.8994 13.5996 26.6992 28.2002 23.7998zM209 448c163.2 -8.59961 294.4 -139.8 302.9 -303c0.5 -9.2002 -6.80078 -17 -16 -17h-32.1006
c-8.39941 0 -15.3994 6.59961 -15.8994 15c-7.5 129.5 -111.5 234.5 -240.9 241.5c-8.40039 0.400391 -15 7.40039 -15 15.9004v31.5996c0 9.2002 7.7998 16.5 17 16zM209.3 352c110.101 -8.5 198.2 -96.5996 206.601 -206.7
c0.699219 -9.2998 -6.80078 -17.2998 -16.1006 -17.2998h-32.2002c-8.2998 0 -15.0996 6.40039 -15.8994 14.7002c-6.90039 77 -68.1006 138.899 -144.9 145.2c-8.2998 0.599609 -14.7998 7.5 -14.7998 15.8994v32.1006c0 9.39941 8 16.7998 17.2998 16.0996z" />
    <glyph glyph-name="calendar-day" unicode="&#xf783;" horiz-adv-x="448" 
d="M0 -16v272h448v-272c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48zM64 176v-96c0 -8.7998 7.2002 -16 16 -16h96c8.7998 0 16 7.2002 16 16v96c0 8.7998 -7.2002 16 -16 16h-96c-8.7998 0 -16 -7.2002 -16 -16zM400 384c26.5 0 48 -21.5 48 -48v-48h-448v48
c0 26.5 21.5 48 48 48h48v48c0 8.7998 7.2002 16 16 16h32c8.7998 0 16 -7.2002 16 -16v-48h128v48c0 8.7998 7.2002 16 16 16h32c8.7998 0 16 -7.2002 16 -16v-48h48z" />
    <glyph glyph-name="calendar-week" unicode="&#xf784;" horiz-adv-x="448" 
d="M0 -16v272h448v-272c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48zM64 176v-64c0 -8.7998 7.2002 -16 16 -16h288c8.7998 0 16 7.2002 16 16v64c0 8.7998 -7.2002 16 -16 16h-288c-8.7998 0 -16 -7.2002 -16 -16zM400 384c26.5 0 48 -21.5 48 -48v-48h-448
v48c0 26.5 21.5 48 48 48h48v48c0 8.7998 7.2002 16 16 16h32c8.7998 0 16 -7.2002 16 -16v-48h128v48c0 8.7998 7.2002 16 16 16h32c8.7998 0 16 -7.2002 16 -16v-48h48z" />
    <glyph glyph-name="candy-cane" unicode="&#xf786;" 
d="M497.5 356c35.7002 -75.5 2.7998 -166.1 -68.9004 -209l-347.3 -206.5c-5.2002 -3 -10.7998 -4.5 -16.3994 -4.5c-10.9004 0 -21.5 5.59961 -27.5 15.5996l-32.8008 54.9004c-9.09961 15.2002 -4.19922 34.7998 11 43.9004l353.601 210.1
c15.0996 9.09961 20.0996 28.7998 11 43.9004c-6 10 -16.6006 15.5996 -27.5 15.5996c-5.60059 0 -11.2998 -1.40039 -16.4004 -4.5l-27.5 -16.4004c-5.2002 -3 -10.7998 -4.5 -16.3994 -4.5c-10.9004 0 -21.5 5.60059 -27.5 15.6006l-32.8008 54.8994
c-9.09961 15.2002 -4.19922 34.8008 11 43.9004l27.5 16.4004c25.6006 15.2998 53.9004 22.5996 81.8008 22.5996c59.3994 0 117.199 -33.0996 145.1 -92zM319.8 343c8.5 5.09961 18.1006 7.59961 27.9004 8.40039l-20.6006 61.7998
c-10.5 -2.10059 -20.5996 -5.5 -30.2998 -10.2002l20.5 -61.5zM145.9 16.2002l30.7998 18.2998l-60.5 38.5l-30.7998 -18.2998zM253.4 80.0996l30.7998 18.3008l-60.5 38.5l-30.7998 -18.3008zM364.3 146l30.7998 18.2998l-60.5 38.5l-30.7998 -18.2998zM384.7 343.3
c9.2002 -5.39941 17.2002 -13 22.8994 -22.2998l45.7002 45.7002c-6.59961 8.5 -14.2002 16.0996 -22.5996 22.5996zM466.8 235.5c4.60059 9.7998 8 20 10.1006 30.4004l-60.4004 20.0996c-0.0996094 -4.5 -0.700195 -9.09961 -1.7998 -13.5996
c-1.60059 -6.2002 -4.2002 -11.8008 -7.40039 -17.1006z" />
    <glyph glyph-name="carrot" unicode="&#xf787;" 
d="M298.2 291.4c61.7002 -30.1006 87.2998 -104.5 57.2002 -166.2c-12.6006 -25.7998 -33.1006 -45.4004 -57.1006 -57.1006l-102 -49.7998l-57 57c-6.2002 6.2002 -16.2998 6.2002 -22.5996 0s-6.2998 -16.3994 0 -22.5996l49.2002 -49.2002l-133.601 -65.2002
c-11.0996 -5.39941 -24.5996 -0.799805 -30 10.2998c-3.09961 6.40039 -2.89941 13.7002 0 19.7002l128.101 262.7l50.1992 -50.2002c3.10059 -3.09961 7.2002 -4.7002 11.3008 -4.7002c4.09961 0 8.19922 1.60059 11.2998 4.7002c6.2998 6.2002 6.2998 16.2998 0 22.6006
l-55.2002 55.1992c35.7002 43.3008 97.5 58.5 150.2 32.8008zM390.3 326.3c40.7002 19.5 88.7998 9.40039 121.7 -30.2998c-41.5996 -50.2998 -107.5 -52.5 -151.9 -7.90039l-8 8c-44.5996 44.4004 -42.3994 110.2 7.90039 151.9
c39.7002 -32.9004 49.7998 -81 30.2998 -121.7z" />
    <glyph glyph-name="cash-register" unicode="&#xf788;" 
d="M511.1 69.2002c0.600586 -3.5 0.900391 -7 0.800781 -10.5v-90.7002c0 -17.7002 -14.3008 -32 -32 -32h-448c-17.7002 0 -32 14.2998 -32 32v90.7998c0 3.5 0.299805 7 0.899414 10.5l26.7002 160c2.59961 15.4004 16 26.7002 31.5996 26.7002h84.9004v64h-96
c-8.7998 0 -16 7.2002 -16 16v96c0 8.7998 7.2002 16 16 16h256c8.7998 0 16 -7.2002 16 -16v-96.0996c0 -8.80078 -7.2002 -16 -16 -16h-96v-64h244.8c15.7002 0 29 -11.3008 31.6006 -26.7002zM280 200v-16c0 -8.7998 7.2002 -16 16 -16h16c8.7998 0 16 7.2002 16 16v16
c0 8.7998 -7.2002 16 -16 16h-16c-8.7998 0 -16 -7.2002 -16 -16zM248 136c-8.7998 0 -16 -7.2002 -16 -16v-16c0 -8.7998 7.2002 -16 16 -16h16c8.7998 0 16 7.2002 16 16v16c0 8.7998 -7.2002 16 -16 16h-16zM216 216h-16c-8.7998 0 -16 -7.2002 -16 -16v-16
c0 -8.7998 7.2002 -16 16 -16h16c8.7998 0 16 7.2002 16 16v16c0 8.7998 -7.2002 16 -16 16zM80 368h192v32h-192v-32zM120 168c8.7998 0 16 7.2002 16 16v16c0 8.7998 -7.2002 16 -16 16h-16c-8.7998 0 -16 -7.2002 -16 -16v-16c0 -8.7998 7.2002 -16 16 -16h16zM136 104
c0 -8.7998 7.2002 -16 16 -16h16c8.7998 0 16 7.2002 16 16v16c0 8.7998 -7.2002 16 -16 16h-16c-8.7998 0 -16 -7.2002 -16 -16v-16zM352 -8v16c0 4.40039 -3.59961 8 -8 8h-176c-4.40039 0 -8 -3.59961 -8 -8v-16c0 -4.40039 3.59961 -8 8 -8h176c4.40039 0 8 3.59961 8 8
zM376 104v16c0 8.7998 -7.2002 16 -16 16h-16c-8.7998 0 -16 -7.2002 -16 -16v-16c0 -8.7998 7.2002 -16 16 -16h16c8.7998 0 16 7.2002 16 16zM424 184v16c0 8.7998 -7.2002 16 -16 16h-16c-8.7998 0 -16 -7.2002 -16 -16v-16c0 -8.7998 7.2002 -16 16 -16h16
c8.7998 0 16 7.2002 16 16z" />
    <glyph glyph-name="compress-arrows-alt" unicode="&#xf78c;" 
d="M200 160c13.2998 0 24 -10.7002 24 -24v-112c0 -21.4004 -25.7998 -32.0996 -40.9004 -17l-31.0996 33l-99.2998 -99.2998c-6.2002 -6.2002 -16.4004 -6.2002 -22.6006 0l-25.3994 25.3994c-6.2002 6.2002 -6.2002 16.4004 0 22.6006l99.2002 99.2998l-32.9004 31
c-15.0996 15.2002 -4.40039 41 17 41h112zM312 224c-13.2998 0 -24 10.7002 -24 24v112c0 21.4004 25.7998 32.0996 40.9004 17l31.0996 -33l99.2998 99.2998c6.2002 6.2002 16.4004 6.2002 22.6006 0l25.3994 -25.3994c6.2002 -6.2002 6.2002 -16.4004 0 -22.6006
l-99.2998 -99.2998l33 -31c15.0996 -15.0996 4.40039 -41 -17 -41h-112zM408 88l99.2998 -99.4004c6.2002 -6.19922 6.2002 -16.3994 0 -22.5996l-25.3994 -25.4004c-6.2002 -6.19922 -16.4004 -6.19922 -22.6006 0l-99.2998 99.3008l-31 -32.9004
c-15.0996 -15.0996 -41 -4.40039 -41 17v112c0 13.2998 10.7002 24 24 24h112c21.4004 0 32.0996 -25.7998 17 -40.9004zM183 376.9c15.0996 15.0996 41 4.39941 41 -16.9004v-112c0 -13.2998 -10.7002 -24 -24 -24h-112c-21.4004 0 -32.0996 25.7998 -17 40.9004
l33 31.0996l-99.2998 99.2998c-6.2002 6.2002 -6.2002 16.4004 0 22.6006l25.3994 25.3994c6.2002 6.2002 16.4004 6.2002 22.6006 0l99.2998 -99.2998z" />
    <glyph glyph-name="dumpster" unicode="&#xf793;" horiz-adv-x="576" 
d="M560 288h-97.2998l-25.6006 128h98.9004c7.2998 0 13.7002 -5 15.5 -12.0996l24 -96c2.5 -10.1006 -5.09961 -19.9004 -15.5 -19.9004zM272 416v-128h-126.1l25.5996 128h100.5zM404.5 416l25.5996 -128h-126.1v128h100.5zM16 288c-10.4004 0 -18 9.7998 -15.5 19.9004
l24 96c1.7998 7.09961 8.2002 12.0996 15.5 12.0996h98.9004l-25.6006 -128h-97.2998zM560 224c8.7998 0 16 -7.2002 16 -16v-32c0 -8.7998 -7.2002 -16 -16 -16h-28l-20 -160v-16c0 -8.7998 -7.2002 -16 -16 -16h-32c-8.7998 0 -16 7.2002 -16 16v16h-320v-16
c0 -8.7998 -7.2002 -16 -16 -16h-32c-8.7998 0 -16 7.2002 -16 16v16l-20 160h-28c-8.7998 0 -16 7.2002 -16 16v32c0 8.7998 7.2002 16 16 16h20l-4 32h512l-4 -32h20z" />
    <glyph glyph-name="dumpster-fire" unicode="&#xf794;" horiz-adv-x="640" 
d="M418.7 343.9c-19.7002 -17.6006 -37.7002 -36.5 -53.9004 -55.8008h-60.7998v128h100.5l14.4004 -72zM272 416v-128h-126.1l25.5996 128h100.5zM461.3 343.9l-11.8994 10.5996l-12.3008 61.5h98.9004c7.2998 0 13.7002 -5 15.4004 -12.0996l24 -96
c0.199219 -0.800781 -0.100586 -1.5 0 -2.30078c-1 1 -2 2.2002 -3.10059 3.10059l-21.2998 19l-21.2998 -19c-5.90039 -5.2002 -11.6006 -10.7002 -17.2998 -16.2998c-15.6006 17.7998 -32.9004 35.1992 -51.1006 51.5zM16 288c-10.4004 0 -18 9.7998 -15.5 19.9004l24 96
c1.7998 7.09961 8.2002 12.0996 15.5 12.0996h98.9004l-25.6006 -128h-97.2998zM340.6 256c-32.6992 -46.7002 -52.5996 -93.7002 -52.5996 -129.6c0 -48.5 18.5996 -92.7002 48.7998 -126.4h-208.8v-16c0 -8.7998 -7.2002 -16 -16 -16h-32c-8.7998 0 -16 7.2002 -16 16v16
l-20 160h-28c-8.7998 0 -16 7.2002 -16 16v32c0 8.7998 7.2002 16 16 16h20l-4 32h308.6zM551.1 284.8c51.8008 -46.2002 88.9004 -121.8 88.8008 -158.399c0 -87.5 -71.6006 -158.4 -160 -158.4c-88.4004 0 -160 70.9004 -160 158.4c0 49.2998 49.7998 130.899 120 193.6
c27.3994 -24.4004 51.5 -50.5996 71 -76.4004c11.8994 14 25.2998 27.9004 40.1992 41.2002zM532.5 55.4004c33.4004 24.1992 41.2002 71.0996 22.5996 107.8c-2.2998 4.5 -4.89941 9.2002 -7.69922 14l-39.8008 -47s-62.3994 82.5 -67.0996 88.0996
c-32.9004 -40.8994 -49.4004 -64.7998 -49.4004 -91.8994c0 -54.5 39.9004 -88 88.9004 -88c19.5996 0 37.7998 6.2998 52.5 17z" />
    <glyph glyph-name="ethernet" unicode="&#xf796;" 
d="M496 256c8.7998 0 16 -7.2002 16 -16v-224c0 -8.7998 -7.2002 -16 -16 -16h-80v128h-32v-128h-64v128h-32v-128h-64v128h-32v-128h-64v128h-32v-128h-80c-8.7998 0 -16 7.2002 -16 16v224c0 8.7998 7.2002 16 16 16h48v48c0 8.7998 7.2002 16 16 16h48v48
c0 8.7998 7.2002 16 16 16h224c8.7998 0 16 -7.2002 16 -16v-48h48c8.7998 0 16 -7.2002 16 -16v-48h48z" />
    <glyph glyph-name="gifts" unicode="&#xf79c;" horiz-adv-x="640" 
d="M240.6 253.9c-27.7998 -6.90039 -48.5996 -32 -48.5996 -61.9004v-224c0 -11.7002 3.40039 -22.5 8.90039 -32h-168.9c-17.7002 0 -32 14.2998 -32 32v352c0 17.7002 14.2998 32 32 32h29.4004l-30.7002 22c-7.2002 5.09961 -8.7998 15.0996 -3.7002 22.2998l9.2998 13
c5.10059 7.2002 15.1006 8.7998 22.2998 3.7002l32.1006 -22.7998l-11.5 30.5996c-3.2002 8.2002 1 17.5 9.2998 20.6006l15 5.59961c8.2998 3.09961 17.5 -1.09961 20.5996 -9.40039l19.9004 -53.0996l19.9004 53c3.09961 8.2998 12.2998 12.5 20.5996 9.40039l15 -5.60059
c8.2998 -3.09961 12.5 -12.2998 9.40039 -20.5996l-11.5 -30.6006l32 22.9004c7.19922 5.2002 17.1992 3.5 22.2998 -3.7002l9.2998 -13c5.2002 -7.2002 3.5 -17.2002 -3.7002 -22.2998l-30.7002 -22h29.4004c12.7002 0 23.4004 -7.5 28.5996 -18.2998
c-26.6992 -18.6006 -42.0996 -49 -44 -79.7998zM224 -32v96h192v-128h-160c-17.7002 0 -32 14.2998 -32 32zM448 -64v128h192v-96c0 -17.7002 -14.2998 -32 -32 -32h-160zM608 224c17.7002 0 32 -14.2998 32 -32v-96h-192v128h-15.2998l-0.700195 0.200195
l-0.700195 -0.200195h-15.2998v-128h-192v96c0 17.7002 14.2998 32 32 32h20.4004c-2.7002 7.59961 -4.40039 15.5 -4.40039 23.7998c0 35.5 27 72.2002 72.0996 72.2002c48 0 75.8008 -47.7002 87.9004 -75.2998c12 27.5996 39.7998 75.2998 87.9004 75.2998
c45.0996 0 72.0996 -36.7002 72.0996 -72.2002c0 -8.2998 -1.7998 -16.2002 -4.40039 -23.7998h20.4004zM336 224h52.5996c-8.89941 20.5996 -25.7998 48 -44.5 48c-17.6992 0 -24.0996 -14.5 -24.0996 -24.2002c0 -5.2002 1.5 -12.5996 8.7998 -19
c2.10059 -1.7998 4.5 -3.39941 7.2002 -4.7998zM535.2 228.8c7.2998 6.40039 8.7998 13.7998 8.7998 19c0 9.7002 -6.40039 24.2002 -24.0996 24.2002c-18.7002 0 -35.7002 -27.7002 -44.5 -48h52.5996c2.7002 1.40039 5.09961 3 7.2002 4.7998z" />
    <glyph glyph-name="glass-cheers" unicode="&#xf79f;" horiz-adv-x="640" 
d="M639.4 14.4004c1.69922 -4.10059 -0.300781 -8.7002 -4.30078 -10.4004l-162.399 -67.4004c-4 -1.69922 -8.7002 0.200195 -10.4004 4.30078c-8.5 20.3994 1.2002 43.7998 21.6006 52.2998l22.0996 9.2002l-39.2998 103.6
c-4.40039 -0.5 -8.7998 -1.2998 -13.1006 -1.2998c-51.6992 0 -99.3994 33.0996 -113.399 85.2998l-20.2002 75.4004l-20.2002 -75.4004c-14 -52.2002 -61.7002 -85.2998 -113.399 -85.2998c-4.30078 0 -8.7002 0.799805 -13.1006 1.2998l-39.3994 -103.6l22.0996 -9.2002
c20.4004 -8.5 30 -31.9004 21.5996 -52.2998c-1.69922 -4.10059 -6.2998 -6 -10.3994 -4.30078l-162.3 67.4004c-4.10059 1.7002 -6 6.40039 -4.30078 10.5c8.5 20.4004 31.8008 30.0996 52.2002 21.5996l22.1006 -9.19922l38.6992 101.899
c-47.8994 34.9004 -64.6992 100.2 -34.5 152.7l86.6006 150.5c8 13.9004 25.0996 19.7998 40 13.5996l114.3 -47.3994l114.3 47.3994c14.9004 6.10059 32 0.300781 40 -13.5996l86.6006 -150.5c30.2998 -52.5 13.3994 -117.8 -34.5 -152.8l38.6992 -101.9l22.1006 9.2002
c20.3994 8.5 43.7998 -1.2002 52.2002 -21.5996zM275.9 285.9l18.8994 70.6992l-94.5 39.2002l-36.5 -63.3994zM364.1 285.9l112.101 46.5l-36.5 63.3994l-94.5 -39.2002z" />
    <glyph glyph-name="glass-whiskey" unicode="&#xf7a0;" 
d="M480 416c19.5 0 34.4004 -17.2002 31.7002 -36.5l-55.6006 -356.5c-4.5 -31.5 -31.5996 -54.9004 -63.3994 -54.9004h-273c-31.9004 0 -58.9004 23.4004 -63.4004 54.9004l-56 356.5c-2.7002 19.2998 12.2002 36.5 31.7002 36.5h448zM442.6 352h-373.199l30.1992 -192
h313z" />
    <glyph glyph-name="globe-europe" unicode="&#xf7a2;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM448 192c0 110.3 -89.7002 200 -200.2 200c-1.89941 0 -3.7998 -0.200195 -5.7002 -0.299805l-28.8994 -21.7002c-2 -1.5 -3.2002 -3.90039 -3.2002 -6.40039v-20
c0 -4.39941 3.59961 -8 8 -8h16c4.40039 0 8 3.60059 8 8v8l16 16h20.7002c6.2002 0 11.2998 -5.09961 11.2998 -11.2998c0 -3 -1.2002 -5.89941 -3.2998 -8l-26.7998 -26.7998c-1.2002 -1.2002 -2.7002 -2.09961 -4.40039 -2.7002l-40 -13.2998
c-3.2998 -1.09961 -5.5 -4.2002 -5.5 -7.59961c0 -6.60059 -2.59961 -12.9004 -7.2002 -17.5l-20.0996 -20.1006c-3 -3 -4.7002 -7.09961 -4.7002 -11.2998v-25.2998c0 -8.7998 7.2002 -16 16 -16h22.0996c6.10059 0 11.6006 3.39941 14.3008 8.7998l9.39941 18.7002
c1.40039 2.7002 4.2002 4.39941 7.2002 4.39941h3.09961c4.40039 0 8 -3.59961 8 -8c0 -4.39941 3.60059 -8 8 -8h16c4.40039 0 8 3.60059 8 8v2.2002c0 3.5 2.2002 6.5 5.5 7.60059l31.6006 10.5c6.5 2.19922 10.8994 8.2998 10.8994 15.1992v4.5
c0 8.80078 7.2002 16 16 16h36.7002c6.2002 0 11.2998 -5.09961 11.2998 -11.2998v-9.39941c0 -6.2002 -5.09961 -11.3008 -11.2998 -11.3008h-32c-3 0 -5.89941 -1.19922 -8 -3.2998l-9.39941 -9.39941c-2.10059 -2.10059 -3.30078 -5 -3.30078 -8
c0 -6.2002 5.10059 -11.3008 11.3008 -11.3008h16c3 0 5.89941 -1.19922 8 -3.2998l9.39941 -9.39941c2.10059 -2.10059 3.2998 -5 3.2998 -8v-8.7002l-12.5 -12.5c-4.59961 -4.60059 -4.59961 -12.1006 -0.0996094 -16.7002l32 -32.5996
c3 -3.10059 7.09961 -4.80078 11.4004 -4.80078h20.2998c6.89941 20.2002 10.7998 41.9004 10.7998 64.4004zM130.1 298.9c0 -6.2002 5.10059 -11.3008 11.3008 -11.3008h16c3 0 5.89941 1.2002 8 3.30078l9.39941 9.39941c2.10059 2.10059 3.2998 5 3.2998 8v16
c0 6.2002 -5.09961 11.2998 -11.2998 11.2998c-3 0 -5.89941 -1.19922 -8 -3.2998l-25.3994 -25.3994c-2.10059 -2.10059 -3.30078 -5 -3.30078 -8zM258.1 -7.5c71.1006 3.59961 132.5 44.2002 164.9 103.1h-13.4004c-4.7998 0 -9.5 1.90039 -12.8994 5.30078
l-17.2998 17.2998c-6 6 -14.1006 9.39941 -22.6006 9.39941h-18.2998l-43.2002 37.1006c-8.2002 7 -18.7002 10.8994 -29.5996 10.8994h-31.2002c-8.2002 0 -16.2998 -2.2998 -23.4004 -6.5l-42.8994 -25.6992c-13.7002 -8.2002 -22.1006 -23 -22.1006 -39v-23.9004
c0 -14.2998 6.7002 -27.7998 18.2002 -36.4004l22.2002 -16.6992c8.7002 -6.5 24.5996 -11.8008 35.4004 -11.8008h20.1992c8.80078 0 16 -7.19922 16 -16v-7.09961z" />
    <glyph glyph-name="grip-lines" unicode="&#xf7a4;" 
d="M496 160c8.7998 0 16 -7.2002 16 -16v-32c0 -8.7998 -7.2002 -16 -16 -16h-480c-8.7998 0 -16 7.2002 -16 16v32c0 8.7998 7.2002 16 16 16h480zM496 288c8.7998 0 16 -7.2002 16 -16v-32c0 -8.7998 -7.2002 -16 -16 -16h-480c-8.7998 0 -16 7.2002 -16 16v32
c0 8.7998 7.2002 16 16 16h480z" />
    <glyph glyph-name="grip-lines-vertical" unicode="&#xf7a5;" horiz-adv-x="256" 
d="M96 -48c0 -8.7998 -7.2002 -16 -16 -16h-32c-8.7998 0 -16 7.2002 -16 16v480c0 8.7998 7.2002 16 16 16h32c8.7998 0 16 -7.2002 16 -16v-480zM224 -48c0 -8.7998 -7.2002 -16 -16 -16h-32c-8.7998 0 -16 7.2002 -16 16v480c0 8.7998 7.2002 16 16 16h32
c8.7998 0 16 -7.2002 16 -16v-480z" />
    <glyph glyph-name="guitar" unicode="&#xf7a6;" 
d="M502.63 409c5.77344 -5.79004 9.34473 -13.7852 9.34473 -22.5996c0 -8.8291 -3.58398 -16.8281 -9.375 -22.6201l-46.3301 -46.3203c-3.82617 -3.83691 -8.53223 -6.78125 -13.7891 -8.53027l-36.4805 -12.1602l-76.2402 -76.2393
c8.79004 -12.2002 15.7705 -25.5605 19.1602 -40.2002c7.74023 -33.3896 0.870117 -66.8701 -22 -89.75c-9.26367 -9.2207 -20.71 -16.2314 -33.4795 -20.25c-18.54 -6.00977 -32.6709 -23.29 -34.4307 -42.1396c-2.29004 -23.8105 -11.4502 -45.8301 -28.4502 -62.71
c-45.5596 -45.4805 -127.5 -37.3809 -182.979 18.0693c-55.4805 55.4502 -63.6904 137.45 -18.0498 182.96c16.8799 16.9902 38.9102 26.1699 62.6094 28.4404c18.9404 1.76953 36.1504 15.8994 42.1504 34.46c4.01172 12.7686 11.0195 24.2119 20.2402 33.4697
c22.8799 22.8799 56.4297 29.7803 89.8799 22c14.5996 -3.39941 27.9395 -10.3799 40.0996 -19.1396l76.2598 76.2598l12.1602 36.5098c1.74902 5.25781 4.69336 9.96387 8.53027 13.79l46.2803 46.3301c5.79199 5.79395 13.8018 9.37988 22.6338 9.37988
s16.833 -3.58594 22.626 -9.37988zM208 96c26.4922 0 48 21.5078 48 48s-21.5078 48 -48 48s-48 -21.5078 -48 -48s21.5078 -48 48 -48z" />
    <glyph glyph-name="heart-broken" unicode="&#xf7a9;" 
d="M473.7 374.2c48.7002 -49.7998 50.7998 -129.101 7.2998 -182.101l-212.2 -218.699c-7.09961 -7.30078 -18.5996 -7.30078 -25.7002 0l-212.1 218.6c-43.5 53.0996 -41.4004 132.4 7.2998 182.2l2.40039 2.39941c46.2998 47.4004 119 51.8008 170.7 14l28.5996 -86.5
l-96 -64l144 -144l-48 128l96 64l-34.2998 103.4c51.5996 36.9004 123.6 32.2002 169.6 -14.7998z" />
    <glyph glyph-name="holly-berry" unicode="&#xf7aa;" horiz-adv-x="448" 
d="M144 256c-26.5 0 -48 21.5 -48 48s21.5 48 48 48s48 -21.5 48 -48s-21.5 -48 -48 -48zM256 304c0 26.5 21.5 48 48 48s48 -21.5 48 -48s-21.5 -48 -48 -48s-48 21.5 -48 48zM224 352c-26.5 0 -48 21.5 -48 48s21.5 48 48 48s48 -21.5 48 -48s-21.5 -48 -48 -48z
M207.8 212.9c-0.399414 -39.8008 7.40039 -78.1006 22.9004 -112.301c4 -8.89941 -2 -19.1992 -11.7002 -20.1992c-15.2002 -1.5 -30.4004 -4.60059 -45.2998 -9.10059c-14.9004 -4.5 -23.7998 -19.8994 -20.2002 -35.0996s8.5 -29.9004 14.7002 -43.7998
c4 -8.90039 -1.90039 -19.3008 -11.6006 -20.2002c-35.8994 -3.40039 -71.5996 -14.9004 -104.8 -33.9004c-12.3994 -7.09961 -27.5 1.60059 -27.5996 16c-0.100586 38.2002 -8 74.9004 -23 107.7c-4 8.90039 2 19.2002 11.7002 20.2002
c15.1992 1.5 30.3994 4.59961 45.2998 9.09961c14.8994 4.5 23.7998 19.9004 20.2002 35.1006c-3.60059 15.1992 -8.5 29.8994 -14.7002 43.7998c-4 8.89941 1.89941 19.2998 11.5996 20.2002c37.2998 3.5 74.4004 15.8994 108.7 36.1992
c10.7002 6.40039 23.9004 -1.2998 23.7998 -13.6992zM435 82.4004c9.7002 -1 15.7998 -11.4004 11.5 -20.1006c-15 -32.7002 -22.7998 -69.5 -23 -107.7c0 -14.3994 -15.0996 -23.0996 -27.5996 -16c-33.2002 19 -68.9004 30.5 -104.801 33.9004
c-9.69922 0.900391 -15.5996 11.2998 -11.5996 20.2002c6.2002 14 11.0996 28.5996 14.7002 43.7998c3.59961 15.2002 -5.2998 30.5996 -20.2002 35.0996c-4.90039 1.5 -9.90039 2.5 -14.7998 3.7002c5.7998 12.2998 6.2998 26.5 0.599609 38.9004
c-12.8994 28.2998 -19.7002 60.7002 -19.8994 94c0 1.7002 0.199219 3.2998 0.199219 4.89941c-0.0996094 12.3008 13.1006 20 23.8008 13.7002c34.2998 -20.2998 71.3994 -32.7002 108.699 -36.2002c9.7002 -0.899414 15.6006 -11.2998 11.6006 -20.1992
c-6.2002 -14 -11.1006 -28.6006 -14.7002 -43.8008c-3.59961 -15.1992 5.2998 -30.5996 20.2002 -35.0996c15 -4.40039 30.0996 -7.5 45.2998 -9.09961z" />
    <glyph glyph-name="horse-head" unicode="&#xf7ab;" 
d="M509.8 115.5c4.60059 -11.7998 1.7998 -25.2998 -7.09961 -34.4004l-45.2998 -39.7998c-6 -6 -14.1006 -9.39941 -22.6006 -9.39941h-50.2998c-10.2998 0 -20 4.89941 -26 13.2998l-46 63.8994c-13.7998 -8.09961 -29.5996 -13.1992 -46.7998 -13.1992
c-39.2002 0 -72.6006 23.6992 -87.4004 57.3994c-2.2998 5.10059 -9 6.2998 -12.8994 2.40039l-12.1006 -12.1006c-2.5 -2.39941 -3.2002 -6.19922 -1.59961 -9.2998c19.7002 -38.8994 58.7002 -66.0996 104.3 -69.5996v-0.700195l40.7998 -81.7002
c10.7002 -21.2998 -4.7998 -46.2998 -28.5996 -46.2998h-236.2c-17.7002 0 -32 14.2998 -32 32v81.2002c0 159.899 35.9004 275.399 166.9 322.5l202.199 75.7002c4.90039 1.7998 10.7002 -1.10059 12 -6.10059c12.1006 -46.3994 -16.1992 -71.7002 -34.1992 -82.2998
c42.5996 -8.2002 78.0996 -38 93 -79.2002zM328 224c13.2998 0 24 10.7002 24 24s-10.7002 24 -24 24s-24 -10.7002 -24 -24s10.7002 -24 24 -24z" />
    <glyph glyph-name="icicles" unicode="&#xf7ad;" 
d="M511.4 410.1l-87.5 -467.699c-1.7002 -8.60059 -14 -8.60059 -15.7002 0l-66.7002 363.8l-45.7998 -172.5c-2.2998 -7.60059 -13 -7.60059 -15.2998 0l-34.1006 133.399l-46.5 -196.899c-1.89941 -8.2998 -13.7002 -8.2998 -15.5996 0l-44.2002 187.3l-36.4004 -124.1
c-2.39941 -7.2002 -12.5996 -7.2002 -15.0996 0l-87.0996 273.399c-6.2002 20.5 9.19922 41.2002 30.5996 41.2002h448c20 0 35.0996 -18.2002 31.4004 -37.9004z" />
    <glyph glyph-name="igloo" unicode="&#xf7ae;" horiz-adv-x="576" 
d="M320 414.1v-126.1h-271.4c51.6006 77.2002 139.601 128 239.4 128c10.7998 0 21.5 -0.700195 32 -1.90039zM96 256v-128h-96c0 46 11.0996 89.4004 30.2998 128h65.7002zM352 408.6c72.7998 -16.5 135.2 -60.5 175.4 -120.6h-175.4v120.6zM480 128v128h65.7002
c19.2002 -38.5996 30.2998 -82 30.2998 -128h-96zM416 64c0 11.0996 -1.90039 21.7002 -4.5 32h164.5v-96c0 -17.7002 -14.2998 -32 -32 -32h-128v96zM448 256v-128h-49.7998c-22.2002 38.0996 -63 64 -110.2 64s-88 -25.9004 -110.2 -64h-49.7998v128h320zM0 0v96h164.5
c-2.59961 -10.2998 -4.5 -20.9004 -4.5 -32v-96h-128c-17.7002 0 -32 14.2998 -32 32zM288 160c53 0 96 -43 96 -96v-96h-192v96c0 53 43 96 96 96z" />
    <glyph glyph-name="mitten" unicode="&#xf7b5;" horiz-adv-x="448" 
d="M368 32c8.7998 0 16 -7.2002 16 -16v-64c0 -8.7998 -7.2002 -16 -16 -16h-320c-8.7998 0 -16 7.2002 -16 16v64c0 8.7998 7.2002 16 16 16h320zM425 241.1c27.0996 -22.5996 30.7998 -62.8994 8.09961 -90.0996l-72.5 -87h-309l-47.8994 207.6
c-17.9004 77.5 30.5 154.801 107.899 172.7c77.4004 17.9004 154.801 -30.5 172.801 -108l29.5996 -128.399l20.9004 25c22.5996 27.1992 62.8994 30.7998 90.0996 8.19922z" />
    <glyph glyph-name="mug-hot" unicode="&#xf7b6;" 
d="M127.1 301.5c-2.69922 16.5996 -10.3994 31.9004 -22.3994 44.0996c-22.6006 23.1006 -36.7002 52.5 -40.6006 84.4004c-1.09961 9.5 6.5 18 16.3008 18h16.3994c8.2002 0 15 -5.90039 16.1006 -13.7998c2.7998 -20.2002 12 -38.7998 26.3994 -53.5
c20.2002 -20.5 32.7998 -46.5 36.6006 -74.7002c1.2998 -9.5 -6.5 -18 -16.3008 -18h-16.5c-8 0 -14.6992 5.7998 -16 13.5zM239.1 301.5c-2.69922 16.5996 -10.3994 31.9004 -22.3994 44.0996c-22.6006 23.1006 -36.7002 52.5 -40.6006 84.4004
c-1.19922 9.5 6.5 18 16.3008 18h16.3994c8.2002 0 15 -5.90039 16.1006 -13.7998c2.7998 -20.2002 12 -38.7998 26.3994 -53.5c20.2002 -20.5 32.7998 -46.5 36.6006 -74.7002c1.2998 -9.5 -6.5 -18 -16.3008 -18h-16.5c-8 0 -14.6992 5.7998 -16 13.5zM400 256
c61.7998 0 112 -50.2002 112 -112s-50.2002 -112 -112 -112h-16c0 -53 -43 -96 -96 -96h-192c-53 0 -96 43 -96 96v192c0 17.7002 14.2998 32 32 32h368zM400 96c26.5 0 48 21.5 48 48s-21.5 48 -48 48h-16v-96h16z" />
    <glyph glyph-name="radiation" unicode="&#xf7b9;" horiz-adv-x="496" 
d="M328.2 192.2c0 28.5996 -15.2002 53.5 -37.7998 67.7998l80.3994 128.4c4.7998 7.69922 15.2998 10.0996 22.7002 4.7998c58.0996 -42 97.4004 -108.4 102.5 -184.2c0.599609 -9.09961 -7.09961 -16.7998 -16.2002 -16.7998h-151.6zM290.4 124.5l80.3994 -128.5
c4.7998 -7.59961 2.40039 -18.0996 -5.59961 -22.4004c-34.9004 -18.7998 -74.7998 -29.5996 -117.2 -29.5996s-82.2998 10.7998 -117.2 29.5996c-8 4.30078 -10.3994 14.7002 -5.59961 22.4004l80.3994 128.5c12.4004 -7.7002 26.8008 -12.4004 42.4004 -12.4004
s30.0996 4.7002 42.4004 12.4004zM248 144.2c-26.5 0 -48 21.5 -48 48s21.5 48 48 48s48 -21.5 48 -48s-21.5 -48 -48 -48zM16.2002 192.2c-9.10059 0 -16.7998 7.7002 -16.2002 16.7002c5.09961 75.7998 44.4004 142.199 102.5 184.199
c7.40039 5.40039 17.9004 2.90039 22.7002 -4.7998l80.3994 -128.399c-22.5996 -14.2002 -37.7998 -39.1006 -37.7998 -67.7002h-151.6z" />
    <glyph glyph-name="radiation-alt" unicode="&#xf7ba;" horiz-adv-x="496" 
d="M312 192c0 22.7998 -12.0996 42.7998 -30.0996 54l41.6992 66.7998c5.2002 8.2998 16.4004 9.90039 24 3.7998c32.5 -26 54.9004 -64.1992 59.5 -107.8c0.900391 -9.09961 -6.7998 -16.7998 -16 -16.7998h-79.0996zM214.2 137.9
c9.7998 -6.2002 21.5 -9.90039 33.8994 -9.90039c12.4004 0 24 3.7002 33.8008 9.90039l41.7998 -66.9004c4.7998 -7.7998 2.39941 -18.4004 -5.7998 -22.5c-21.2002 -10.4004 -44.8008 -16.5 -69.9004 -16.5s-48.7002 6.09961 -69.7998 16.5
c-8.2002 4.09961 -10.7002 14.7002 -5.7998 22.5zM104.9 192c-9.2002 0 -17 7.7002 -15.9004 16.9004c4.59961 43.5996 26.9004 81.7998 59.5 107.8c7.59961 6.09961 18.7998 4.5 24 -3.7998l41.7002 -66.8008c-18.1006 -11.2998 -30.2002 -31.2998 -30.2002 -54.0996
h-79.0996zM248 -56c-137 0 -248 111 -248 248s111 248 248 248s248 -111 248 -248s-111 -248 -248 -248zM248 376c-101.5 0 -184 -82.5 -184 -184s82.5 -184 184 -184s184 82.5 184 184s-82.5 184 -184 184zM248 160c-17.7002 0 -32 14.2998 -32 32s14.2998 32 32 32
s32 -14.2998 32 -32s-14.2998 -32 -32 -32z" />
    <glyph glyph-name="restroom" unicode="&#xf7bd;" horiz-adv-x="640" 
d="M128 320c-35.2998 0 -64 28.7002 -64 64s28.7002 64 64 64s64 -28.7002 64 -64s-28.7002 -64 -64 -64zM512 320c-35.2998 0 -64 28.7002 -64 64s28.7002 64 64 64s64 -28.7002 64 -64s-28.7002 -64 -64 -64zM639.3 93.5c3.7002 -15.0996 -8.2998 -29.5 -24.5 -29.5
h-54.7998v-104c0 -13.2998 -10.7002 -24 -24 -24h-48c-13.2998 0 -24 10.7002 -24 24v104h-54.7998c-16.2002 0 -28.2002 14.4004 -24.7002 29.5l45.5996 185.8c3.30078 13.5 15.5 23 29.8008 24.2002c15 -9.7002 32.7998 -15.5 52 -15.5c19.1992 0 37 5.7998 52 15.5
c14.2998 -1.2002 26.5 -10.7002 29.7998 -24.2002zM336 448c8.7998 0 16 -7.2002 16 -16v-480c0 -8.7998 -7.2002 -16 -16 -16h-32c-8.7998 0 -16 7.2002 -16 16v480c0 8.7998 7.2002 16 16 16h32zM180.1 303.6c24.6006 -2.09961 43.9004 -22.5 43.9004 -47.5996v-136
c0 -13.2998 -10.7002 -24 -24 -24h-8v-136c0 -13.2998 -10.7002 -24 -24 -24h-80c-13.2998 0 -24 10.7002 -24 24v136h-8c-13.2998 0 -24 10.7002 -24 24v136c0 25.0996 19.2998 45.5 43.9004 47.5996c15 -9.7998 32.8994 -15.5996 52.0996 -15.5996
s37.0996 5.7998 52.0996 15.5996z" />
    <glyph glyph-name="satellite" unicode="&#xf7bf;" 
d="M502.609 137.958l-96.7041 -96.7168c-5.76758 -5.74707 -13.7207 -9.30176 -22.499 -9.30176c-8.77734 0 -16.7402 3.55469 -22.5078 9.30176l-80.3262 80.418l-9.89258 -9.9082c10.8848 -23.9746 16.9482 -50.5957 16.9482 -78.6221
c0 -32.3584 -8.10156 -63.1982 -22.3555 -89.9004c-4.50098 -8.50098 -16.3936 -9.59473 -23.207 -2.79785l-107.519 107.515l-17.7998 -17.7988c0.703125 -2.60938 1.60938 -5.00098 1.60938 -7.79785c0 -17.6641 -14.3408 -32.0059 -32.0049 -32.0059
s-32.0059 14.3418 -32.0059 32.0059s14.3418 32.0039 32.0059 32.0039c2.79688 0 5.18848 -0.90625 7.79785 -1.60938l17.7998 17.7998l-107.518 107.515c-6.79883 6.8125 -5.7041 18.6113 2.79688 23.2061c26.7031 14.2539 57.1895 22.3359 89.5479 22.3359
c28.0273 0 55.0049 -6.04395 78.9805 -16.9297l9.79883 9.79883l-80.3105 80.417c-5.74609 5.78613 -9.29785 13.7539 -9.29785 22.5449s3.55176 16.7686 9.29785 22.5547l96.7197 96.7168c5.72754 5.74512 13.6484 9.30273 22.3945 9.30273
c0.0351562 0 0.0732422 -0.00488281 0.109375 -0.00488281h0.0458984c8.79199 0 16.7656 -3.5498 22.5518 -9.29785l80.3262 -80.3076l47.8047 47.8965c6.08301 6.07715 14.4805 9.83789 23.749 9.83789c9.26953 0 17.6768 -3.76074 23.7588 -9.83789l47.5088 -47.5059
c6.07031 -6.08594 9.82617 -14.4824 9.82617 -23.749s-3.75586 -17.6719 -9.82617 -23.7578l-47.8057 -47.8975l80.3105 -80.417c5.73633 -5.75195 9.28516 -13.6865 9.28516 -22.4434c0 -8.81348 -3.59277 -16.8018 -9.39453 -22.5625zM219.562 250.567l73.8252 73.8223
l-68.918 68.8994l-73.8096 -73.8066zM457.305 160.461l-68.9023 68.916l-73.8242 -73.8232l68.918 -68.8994z" />
    <glyph glyph-name="satellite-dish" unicode="&#xf7c0;" 
d="M305.449 -14.5898c7.3916 -7.29785 6.18848 -20.0967 -3 -25.0039c-77.7129 -41.8027 -176.726 -29.9102 -242.344 35.708c-65.6016 65.6035 -77.5098 164.523 -35.6914 242.332c4.89062 9.09473 17.6895 10.2979 25.0029 3l116.812 -116.813l27.3945 27.3945
c-0.6875 2.60938 -1.59375 5.00098 -1.59375 7.81348c0 17.6631 14.3398 32.0039 32.0039 32.0039c17.6631 0 32.0039 -14.3408 32.0039 -32.0039c0 -17.6641 -14.3408 -32.0039 -32.0039 -32.0039c-2.79785 0 -5.2041 0.890625 -7.79785 1.59375l-27.4102 -27.4102z
M511.976 144.933c0.0175781 -0.301758 0.0253906 -0.605469 0.0253906 -0.912109c0 -8.86133 -7.1748 -16.0488 -16.0273 -16.0898h-32.1133c-8.46289 0.0244141 -15.3867 6.65918 -15.8926 15.002c-7.50098 129.519 -111.515 234.533 -240.937 241.534
c-8.34863 0.444336 -14.9902 7.36426 -14.9902 15.8223c0 0.0292969 -0.0126953 0.0566406 -0.0117188 0.0859375v31.5986c0.0361328 8.85156 7.2334 16.0264 16.0938 16.0264c0.308594 0 0.603516 -0.00683594 0.908203 -0.0244141
c163.224 -8.59473 294.443 -139.816 302.944 -303.043zM415.964 145.229c0.0244141 -0.364258 0.0371094 -0.732422 0.0371094 -1.10254c0 -8.92578 -7.23145 -16.1621 -16.1484 -16.1963h-32.208c-8.34961 0.0605469 -15.1953 6.51953 -15.8926 14.7051
c-6.90625 77.0107 -68.1172 138.91 -144.924 145.224c-8.25781 0.592773 -14.7959 7.48633 -14.7988 15.8926v32.1143v0.00390625c0 8.9043 7.22949 16.1338 16.1338 16.1338c0.396484 0 0.775391 -0.0136719 1.16504 -0.0419922
c110.123 -8.50098 198.229 -96.6074 206.636 -206.732z" />
    <glyph glyph-name="sd-card" unicode="&#xf7c2;" horiz-adv-x="384" 
d="M320 448c35.2998 0 64 -28.7002 64 -64v-384c0 -35.2998 -28.7002 -64 -64 -64h-256c-35.2998 0 -64 28.7002 -64 64v320l128 128h192zM160 288v96h-48v-96h48zM240 288v96h-48v-96h48zM320 288v96h-48v-96h48z" />
    <glyph glyph-name="sim-card" unicode="&#xf7c4;" horiz-adv-x="384" 
d="M0 384c0 35.2998 28.7002 64 64 64h192l128 -128v-320c0 -35.2998 -28.7002 -64 -64 -64h-256c-35.2998 0 -64 28.7002 -64 64v384zM224 192v64h-64v-64h64zM320 192v32c0 17.7002 -14.2998 32 -32 32h-32v-64h64zM256 64v-64h32c17.7002 0 32 14.2998 32 32v32h-64z
M160 64v-64h64v64h-64zM64 64v-32c0 -17.7002 14.2998 -32 32 -32h32v64h-64zM64 160v-64h256v64h-256zM64 224v-32h64v64h-32c-17.7002 0 -32 -14.2998 -32 -32z" />
    <glyph glyph-name="skating" unicode="&#xf7c5;" horiz-adv-x="448" 
d="M400 448c26.5 0 48 -21.5 48 -48s-21.5 -48 -48 -48s-48 21.5 -48 48s21.5 48 48 48zM400 0c8.7998 0 16 -7.2002 16 -16c0 -26.5 -21.5 -48 -48 -48h-96c-8.7998 0 -16 7.2002 -16 16s7.2002 16 16 16h96c8.7998 0 16 7.2002 16 16s7.2002 16 16 16zM117.8 -8.59961
c6.2998 6.2998 16.5 6.19922 22.7002 0c6.2002 -6.2002 6.2002 -16.4004 0 -22.6006c-9.2998 -9.2998 -21.5996 -14 -33.9004 -14c-12.2998 0 -24.5996 4.60059 -34 14l-67.8994 67.9004c-6.2002 6.2002 -6.2002 16.3994 0 22.5996s16.3994 6.2002 22.5996 0
l67.9004 -67.8994c6.2002 -6.30078 16.3994 -6.2002 22.5996 0zM173.9 171.2c3.7998 -6.10059 8.19922 -11.7998 13.1992 -16.7998l30.2002 -30.2002l-91.8994 -91.9004c-6.2002 -6.2998 -14.4004 -9.39941 -22.6006 -9.39941s-16.3994 3.19922 -22.5996 9.39941
c-12.5 12.4004 -12.5 32.7002 0 45.2002zM128 288c-17.7002 0 -32 14.2998 -32 32s14.2998 32 32 32h204.6c16.3008 0 30.8008 -9.7002 37 -24.7002c6.2002 -15 2.80078 -32.0996 -8.69922 -43.5996l-82.3008 -82.2998c-0.5 -0.5 -1.19922 -0.700195 -1.69922 -1.10059
l61 -61c9 -8.89941 14.0996 -21.2998 14.0996 -33.8994v-89.4004c0 -17.7002 -14.2998 -32 -32 -32s-32 14.2998 -32 32v82.7998l-78.2002 78.2002c-12.5996 12.5 -19.3994 29.9004 -18.7002 47.7002c0.700195 17.7002 8.80078 34.5996 22.3008 46.0996l20.0996 17.2002
h-105.5z" />
    <glyph glyph-name="skiing" unicode="&#xf7c9;" 
d="M432 352c-26.5 0 -48 21.5 -48 48s21.5 48 48 48s48 -21.5 48 -48s-21.5 -48 -48 -48zM505 -4.09961c9.2998 -9.30078 9.2998 -24.5 0 -33.8008c-17 -17 -39.7998 -26 -63 -26c-12.5996 0 -25.2002 2.60059 -37.0996 8.10059l-391.9 202.5
c-11.7998 6 -16.4004 20.5 -10.2998 32.2998c6.09961 11.7998 20.5996 16.2998 32.2998 10.2998l197.9 -102.3l45.8994 68.7998l-75.0996 75.2002c-14.2998 14.4004 -20.6006 34.5 -17.7002 54.4004l107 -53.1006l40.4004 -40.5
c16.1992 -16.0996 18.6992 -41.5996 6 -60.5996l-49.2002 -73.7998l135.8 -70.2002c14.5996 -6.7002 33 -3.40039 45.0996 8.7002c9.30078 9.39941 24.5 9.39941 33.9004 0zM120 356.4l-26.2002 23c-2.2002 1.89941 -2.39941 5.19922 -0.5 7.39941
c1.2998 1.5 3.2002 2.10059 5 1.7002l34.4004 -7h0.200195l11.0996 21.7002c13.7002 -7 21.2002 -21.1006 20.9004 -35.6006l62.5 -31l81.1992 32.5c43.6006 17.4004 76.4004 -15 84.5 -39.1992l17.1006 -51.2002l52.0996 -26.1006
c15.7998 -7.89941 22.2002 -27.0996 14.2998 -42.8994c-7.89941 -15.7998 -27 -22.2002 -42.8994 -14.2998l-58.1006 29c-11.3994 5.69922 -20 15.5996 -24 27.6992l-6.39941 19.1006l-32.4004 -13l-114.5 56.7998c0.100586 0.0996094 0.100586 0.200195 0.200195 0.299805
l-47.2002 23.4004c-11.5996 -9.7002 -28.3994 -12.1006 -42.7998 -4.7998z" />
    <glyph glyph-name="skiing-nordic" unicode="&#xf7ca;" horiz-adv-x="576" 
d="M336 352c-26.5 0 -48 21.5 -48 48s21.5 48 48 48s48 -21.5 48 -48s-21.5 -48 -48 -48zM552 32c13.2002 0 24 -10.7998 24 -24c0 -39.7002 -32.2998 -72 -72 -72h-480c-13.2002 0 -24 10.7002 -24 24s10.7998 24 24 24h42.9004l54.0996 270.8
c-0.700195 0.799805 -1.7002 1.2002 -2.40039 2.10059c-10.7998 14.0996 -8.09961 34.1992 5.90039 44.8994l39.7002 30.4004c23 17.5996 52.5 23.8994 80.7998 17.0996l71.2002 -21.2002c26.2998 -6.69922 49.2998 -25.3994 61.7998 -50.8994l26.0996 -53.2002h44
c17.7002 0 32 -14.2998 32 -32c0 -13.4004 -8.39941 -24.9004 -20.0996 -29.5996l-25.5 -178.4h69.5c13.2002 0 24 10.7998 24 24c0 13.2998 10.7998 24 24 24zM291.5 -16l25.5 81.2002l-85 50.2002c-27.5996 16.2998 -38.9004 50.7998 -26.2998 80.2998l37.5 87.3994
l-14.7002 4.40039c-7.90039 1.90039 -17.5996 -0.200195 -25.2998 -6.09961l-39.7002 -30.4004c-3.59961 -2.7002 -7.59961 -4.59961 -11.7002 -5.59961l-52.2998 -261.4h24.2002l62.5 131.8c7.59961 -10.8994 17.3994 -20.5996 29.5 -27.7998l22 -13l-43.1006 -91h96.9004z
M402.1 -16l25.2002 176h-33.2998c-18.2002 0 -35.0996 10.5996 -43.0996 26.9004l-20.3008 41.3994l-31.2998 -78.2998l61.2002 -36.0996c18.7002 -11.3008 27.5 -33.6006 21.5996 -54.4004l-23.5996 -75.5h43.5996z" />
    <glyph glyph-name="sleigh" unicode="&#xf7cc;" horiz-adv-x="640" 
d="M612.7 97.2998c18.5 -14.7002 28.5996 -37.2002 27.2002 -61c-2.2002 -39 -36.9004 -68.2998 -75.9004 -68.2998h-516c-8.7998 0 -16 7.2002 -16 16v16c0 8.7998 7.2002 16 16 16h519.3c13.6006 0 24.6006 11 24.6006 24.5996c0 7.5 -3.30078 14.5 -9.2002 19.2002
l-9.2998 7.40039c-6.90039 5.5 -8 15.5996 -2.5 22.5l10 12.5c5.5 6.89941 15.5996 8 22.5 2.5zM32 224v128c-17.7002 0 -32 14.2998 -32 32s14.2998 32 32 32h20.7002c65.7002 0 125.899 -37.2002 155.3 -96s89.5 -96 155.3 -96h20.7002c35.2998 0 64 28.7002 64 64v64h96
c17.7002 0 32 -14.2998 32 -32s-14.2998 -32 -32 -32v-96c0 -53 -43 -96 -96 -96v-48h-64v48h-192v-48h-64v52.5c-55.0996 14.2998 -96 63.9004 -96 123.5z" />
    <glyph glyph-name="sms" unicode="&#xf7cd;" 
d="M256 416c141.4 0 256 -93.0996 256 -208s-114.6 -208 -256 -208c-38.4004 0 -74.7002 7.09961 -107.4 19.4004c-24.5996 -19.6006 -74.2998 -51.4004 -140.6 -51.4004c-3.2002 0 -6 1.7998 -7.2998 4.7998s-0.700195 6.40039 1.5 8.7002
c0.5 0.5 42.2998 45.4004 54.7998 95.7998c-35.5996 35.7002 -57 81.1006 -57 130.7c0 114.9 114.6 208 256 208zM128.2 144c23.3994 0 42.5 17.2998 42.3994 38.5996c0 10.6006 -4.7998 20.9004 -13.2998 28.1006l-21.8994 18.7998
c-1.30078 1.09961 -2.10059 2.5 -2.10059 3.7998c0 3.10059 4.40039 6.60059 10.4004 6.60059h12.2998c4.40039 0 8 3.59961 8 8v16c0 4.39941 -3.59961 8 -8 8h-12.2002c-23.3994 0 -42.3994 -17.3008 -42.3994 -38.6006c0 -10.5996 4.7998 -20.8994 13.2998 -28.0996
l21.8994 -18.7998c1.30078 -1.10059 2.10059 -2.5 2.10059 -3.80078c0 -3.09961 -4.40039 -6.59961 -10.4004 -6.59961h-12.2998c-4.40039 0 -8 -3.59961 -8 -8v-16c0 -4.40039 3.59961 -8 8 -8h12.2002zM320 152v104c0 8.7998 -7.2002 16 -16 16h-16
c-6 0 -11.5996 -3.40039 -14.2998 -8.7998l-17.7002 -35.4004l-17.7002 35.4004c-2.7002 5.39941 -8.2002 8.7998 -14.2998 8.7998h-16c-8.7998 0 -16 -7.2002 -16 -16v-104c0 -4.40039 3.59961 -8 8 -8h16c4.40039 0 8 3.59961 8 8v68.2002l24.9004 -55.7998
c2.89941 -5.90039 11.3994 -5.90039 14.2998 0l24.7998 55.7998v-68.2002c0 -4.40039 3.59961 -8 8 -8h16c4.40039 0 8 3.59961 8 8zM368.3 144c23.4004 0 42.4004 17.2998 42.2998 38.5996c0 10.6006 -4.7998 20.9004 -13.2998 28.1006l-21.8994 18.7998
c-1.30078 1.09961 -2.10059 2.5 -2.10059 3.7998c0 3.10059 4.40039 6.60059 10.4004 6.60059h12.2998c4.40039 0 8 3.59961 8 8v16c0 4.39941 -3.59961 8 -8 8h-12.2002c-23.3994 0 -42.3994 -17.3008 -42.3994 -38.6006c0 -10.5996 4.7998 -20.8994 13.2998 -28.0996
l21.8994 -18.7998c1.30078 -1.10059 2.10059 -2.5 2.10059 -3.80078c0 -3.09961 -4.40039 -6.59961 -10.4004 -6.59961h-12.2998c-4.40039 0 -8 -3.59961 -8 -8v-16c0 -4.40039 3.59961 -8 8 -8h12.2998z" />
    <glyph glyph-name="snowboarding" unicode="&#xf7ce;" 
d="M432 352c-26.5 0 -48 21.5 -48 48s21.5 48 48 48s48 -21.5 48 -48s-21.5 -48 -48 -48zM460.8 198.4l-83.5 62.8994l-66 -30.5l52 -39c14.9004 -11.2002 22 -30.2002 18.1006 -48.3994l-21.9004 -102c-2.2002 -10.1006 -9.09961 -17.8008 -17.7998 -21.9004
l90.7998 -33.0996c9.7002 -3.5 20.2002 -3.10059 29.5 1.2998c12 5.59961 26.2998 0.399414 31.9004 -11.6006c5.59961 -12 0.399414 -26.2998 -11.6006 -31.8994c-11.5996 -5.5 -24 -8.2002 -36.5 -8.2002c-10 0 -20 1.7998 -29.7002 5.2998l-364.8 132.7
c-21.7998 7.90039 -39.0996 23.7998 -48.8994 44.7998c-5.60059 12 -0.400391 26.2998 11.5996 31.9004c12 5.59961 26.2998 0.399414 31.9004 -11.6006c4.39941 -9.39941 12.0996 -16.5 21.7998 -20l38.7002 -14.0996c-3.80078 3.5 -7 7.7002 -8.7002 12.9004
c-5.60059 16.7998 3.39941 34.8994 20.2002 40.5l74.0996 24.6992v53.1006c0 24.3994 13.5996 46.2998 35.4004 57.2002l41.1992 20.5996l-16.3994 5.5c-12.1006 4.09961 -22 12.5996 -27.7002 24l-29.0996 58.0996c-7.90039 15.8008 -1.5 35 14.2998 42.9004
s35 1.5 42.8994 -14.2998l26.1006 -52.1006l63.7002 -21.1992c16.2998 -5.40039 31.5996 -13.5 45.3994 -23.8008l111.4 -83.5c14.2002 -10.5996 17 -30.6992 6.39941 -44.7998c-6.2998 -8.39941 -15.8994 -12.7998 -25.5996 -12.7998
c-6.7002 0 -13.4004 2.09961 -19.2002 6.40039zM316.4 146.7l-60.5 45.2998v-20.5c0 -20.7002 -13.2002 -39 -32.8008 -45.5l-85 -28.4004c-2.59961 -0.899414 -5.2998 -1.09961 -8 -1.2998l169.4 -61.5996c-2.90039 6.09961 -4.2998 12.8994 -2.7998 20z" />
    <glyph glyph-name="snowman" unicode="&#xf7d0;" 
d="M510.9 295.7c3.19922 -8.10059 -0.800781 -17.2002 -8.90039 -20.2998l-135.2 -55.2002c0.400391 -4.10059 1.2002 -8 1.2002 -12.2002c0 -10 -1.7002 -19.5 -4.2002 -28.7002c21.1006 -21.3994 36.1006 -48.7998 41.6006 -79
c11.5 -63.2002 -16.4004 -120.3 -62.9004 -152.6c-10.9004 -7.60059 -23.9004 -11.7002 -37.2002 -11.7002h-99.2002c-11 0 -22 2.2998 -31.2998 8.2002c-42.3994 26.8994 -70.7998 73.7998 -70.7998 127.8c0 41.7998 16.9004 79.5996 44.2998 107.1
c-2.5 9.30078 -4.2002 18.8008 -4.2002 28.9004c0 4.2002 0.800781 8.2002 1.2002 12.2002l-135.2 55.2002c-8.19922 3.19922 -12.1992 12.2998 -8.89941 20.2998l5.89941 14.5c3.30078 8 12.6006 11.8994 20.8008 8.7002l28.0996 -11.5v29
c0 8.59961 7.2002 15.5996 16 15.5996h16c8.7998 0 16 -7 15.7998 -15.5996v-46.9004c0 -0.5 -0.200195 -1 -0.299805 -1.5l56.4004 -23c6 10 13.2998 18.9004 22 26.5996c-13.5 16.6006 -22 37.4004 -22 60.5c0 53 43 96 96 96s96 -43 96 -96
c0 -23.0996 -8.40039 -43.8994 -22 -60.5c8.69922 -7.69922 16.0996 -16.5996 22 -26.5996l56.3994 23c0 0.5 -0.299805 1 -0.299805 1.5v46.9004c0 8.59961 7.2002 15.5996 16 15.5996h16c8.7998 0 16 -7 16 -15.5996v-29l28.2002 11.5
c8.2002 3.19922 17.5 -0.700195 20.7998 -8.7002zM224 352c8.7998 0 16 7.2002 16 16s-7.2002 16 -16 16s-16 -7.2002 -16 -16s7.2002 -16 16 -16zM256 80c8.7998 0 16 7.2002 16 16s-7.2002 16 -16 16s-16 -7.2002 -16 -16s7.2002 -16 16 -16zM256 144
c8.7998 0 16 7.2002 16 16s-7.2002 16 -16 16s-16 -7.2002 -16 -16s7.2002 -16 16 -16zM256 208c8.7998 0 16 7.2002 16 16s-7.2002 16 -16 16s-16 -7.2002 -16 -16s7.2002 -16 16 -16zM256 296c0 0 16 23.2002 16 32s-7.2002 16 -16 16s-16 -7.2002 -16 -16s16 -32 16 -32z
M288 352c8.7998 0 16 7.2002 16 16s-7.2002 16 -16 16s-16 -7.2002 -16 -16s7.2002 -16 16 -16z" />
    <glyph glyph-name="snowplow" unicode="&#xf7d2;" horiz-adv-x="640" 
d="M120 72c13.2998 0 24 -10.7002 24 -24s-10.7002 -24 -24 -24s-24 10.7002 -24 24s10.7002 24 24 24zM200 72c13.2998 0 24 -10.7002 24 -24s-10.7002 -24 -24 -24s-24 10.7002 -24 24s10.7002 24 24 24zM280 72c13.2998 0 24 -10.7002 24 -24s-10.7002 -24 -24 -24
s-24 10.7002 -24 24s10.7002 24 24 24zM360 72c13.2998 0 24 -10.7002 24 -24s-10.7002 -24 -24 -24s-24 10.7002 -24 24s10.7002 24 24 24zM598.6 22.5996l36.7002 -36.6992c6.2002 -6.2002 6.2002 -16.4004 0 -22.6006l-22.5996 -22.5996
c-6.2002 -6.2002 -16.4004 -6.2002 -22.6006 0l-36.6992 36.7002c-26.5 26.5 -41.4004 62.3994 -41.4004 99.8994v18.7002h-43.2002c7 -14.5996 11.2002 -30.7002 11.2002 -48c0 -61.9004 -50.0996 -112 -112 -112h-256c-61.9004 0 -112 50.0996 -112 112
c0 44.5996 26.2998 82.7998 64 100.8v91.2002c0 26.5 21.5 48 48 48h16v112c0 26.5 21.5 48 48 48h144.3c19.2998 0 36.6006 -11.4004 44.2002 -29.0996l78.2998 -182.801c3.40039 -8 5.2002 -16.5 5.2002 -25.1992v-50.9004h64v18.7002
c0 37.5 14.9004 73.3994 41.4004 99.8994l36.6992 36.7002c6.2002 6.2002 16.4004 6.2002 22.6006 0l22.5996 -22.5996c6.2002 -6.2002 6.2002 -16.4004 0 -22.6006l-36.7002 -36.6992c-14.5 -14.5 -22.5996 -34.1006 -22.5996 -54.6006v-101.6
c0 -20.5 8.09961 -40.1006 22.5996 -54.6006zM192 384v-96l64 -64h122.4l-68.6006 160h-117.8zM368 0c26.5 0 48 21.5 48 48s-21.5 48 -48 48h-256c-26.5 0 -48 -21.5 -48 -48s21.5 -48 48 -48h256z" />
    <glyph glyph-name="tenge" unicode="&#xf7d7;" horiz-adv-x="384" 
d="M372 288c6.59961 0 12 -5.40039 12 -12v-56c0 -6.59961 -5.40039 -12 -12 -12h-140v-228c0 -6.59961 -5.40039 -12 -12 -12h-56c-6.59961 0 -12 5.40039 -12 12v228h-140c-6.59961 0 -12 5.40039 -12 12v56c0 6.59961 5.40039 12 12 12h360zM372 416
c6.59961 0 12 -5.40039 12 -12v-56c0 -6.59961 -5.40039 -12 -12 -12h-360c-6.59961 0 -12 5.40039 -12 12v56c0 6.59961 5.40039 12 12 12h360z" />
    <glyph glyph-name="toilet" unicode="&#xf7d8;" horiz-adv-x="384" 
d="M368 400h-16v-156.7c20.2002 -10.0996 32 -22.2002 32 -35.2998c0 -67.2002 -34.5996 -126.2 -86.7998 -160.5l21.3994 -70.2002c6.30078 -20.5 -9.09961 -41.2998 -30.5996 -41.2998h-192c-21.5 0 -36.9004 20.7998 -30.5996 41.2998l21.3994 70.2002
c-52.2002 34.2998 -86.7998 93.2998 -86.7998 160.5c0 13.0996 11.7998 25.2002 32 35.2998v156.7h-16c-8.7998 0 -16 7.2002 -16 16v16c0 8.7998 7.2002 16 16 16h352c8.7998 0 16 -7.2002 16 -16v-16c0 -8.7998 -7.2002 -16 -16 -16zM80 376v-16
c0 -4.40039 3.59961 -8 8 -8h48c4.40039 0 8 3.59961 8 8v16c0 4.40039 -3.59961 8 -8 8h-48c-4.40039 0 -8 -3.59961 -8 -8zM192 176c77.0996 0 139.6 14.2998 139.6 32s-62.5 32 -139.6 32s-139.6 -14.2998 -139.6 -32s62.5 -32 139.6 -32z" />
    <glyph glyph-name="tools" unicode="&#xf7d9;" 
d="M501.1 52.2998c14.5 -14.5 14.5 -38.0996 0 -52.7002l-52.6992 -52.6992c-14.5 -14.6006 -38.1006 -14.6006 -52.7002 0l-117.101 117.1c-23.0996 23.0996 -27.5 57.5996 -13.8994 85.4004l-106.601 106.6h-62.0996l-96 128l64 64l128 -96v-62.0996l106.6 -106.601
c27.8008 13.7002 62.3008 9.2002 85.4004 -13.8994zM331.7 223c-8.2002 0 -16.6006 -1 -24.7002 -2.90039l-82.0996 82.1006c-0.700195 37.5 12.6992 75.0996 41.1992 103.6c37 37 89.2002 49.6006 136.601 37.9004c9.09961 -2.2998 12.2998 -13.6006 5.7002 -20.2002
l-74.4004 -74.4004l11.2998 -67.8994l67.9004 -11.2998l74.3994 74.3994c6.60059 6.60059 17.9004 3.5 20.1006 -5.5c11.7998 -47.3994 -0.799805 -99.5996 -37.9004 -136.7c-13 -13 -28 -22.5996 -43.7998 -29.5l-19.4004 19.4004c-20 20 -46.5996 31 -74.8994 31z
M227.8 141c-4.89941 -21.0996 -2.59961 -42.7998 5 -62.7002l-123.6 -123.6c-25 -25 -65.5 -25 -90.5 0s-25 65.5 0 90.5l152.399 152.5zM64 -24c13.2998 0 24 10.7998 24 24c0 13.2998 -10.7002 24 -24 24s-24 -10.7002 -24 -24c0 -13.2002 10.7998 -24 24 -24z" />
    <glyph glyph-name="tram" unicode="&#xf7da;" 
d="M288 384c-17.7002 0 -32 14.2998 -32 32s14.2998 32 32 32s32 -14.2998 32 -32s-14.2998 -32 -32 -32zM511.5 396.1c2.2002 -8.5 -2.7998 -17.2998 -11.4004 -19.5996l-228.1 -60.7998v-91.7002h176c17.7002 0 32 -14.2998 32 -32v-224c0 -17.7002 -14.2998 -32 -32 -32
h-384c-17.7002 0 -32 14.2998 -32 32v224c0 17.7002 14.2998 32 32 32h176v83.2002l-219.9 -58.7002c-1.2998 -0.299805 -2.69922 -0.5 -4.09961 -0.5c-7.09961 0 -13.5 4.7002 -15.4004 11.7998c-2.2998 8.60059 2.80078 17.2998 11.3008 19.6006l480 128
c8.59961 2.2998 17.2998 -2.7002 19.5996 -11.3008zM176 64v96h-96v-96h96zM336 160v-96h96v96h-96zM304 160h-96v-96h96v96zM192 352c-17.7002 0 -32 14.2998 -32 32s14.2998 32 32 32s32 -14.2998 32 -32s-14.2998 -32 -32 -32z" />
    <glyph glyph-name="fire-alt" unicode="&#xf7e4;" horiz-adv-x="448" 
d="M323.56 396.8c72.46 -67.2598 124.44 -177.13 124.44 -230.399c0 -127.25 -100.29 -230.4 -224 -230.4s-224 103.15 -224 230.4c0 71.6396 69.7402 190.43 168 281.6c38.2803 -35.5303 72.0801 -73.6201 99.3398 -111.17
c16.6406 20.3799 35.4199 40.6699 56.2197 59.9697zM304.09 56.1504c49.2402 34.4492 60.7803 101.229 33.4297 153.42c-3.35938 6.41992 -7.12988 13.1201 -11.2695 19.9697l-58.6299 -66.8799s-91.9004 117.359 -98.8301 125.34
c-48.4805 -58.1201 -72.79 -92.1396 -72.79 -130.75c0 -77.5098 58.71 -125.25 130.86 -125.25c28.8594 0 55.5693 8.99023 77.2295 24.1504z" />
    <glyph glyph-name="bacon" unicode="&#xf7e5;" horiz-adv-x="576" 
d="M218.92 111.61c-34.8604 -34.8799 -59.6504 -44.1602 -85.9199 -54c-26 -9.76074 -53 -20.1299 -88.1699 -52.7305l-35.7598 35.5098c-12.7002 12.6104 -12.0703 33.6104 1.79004 45.0605c36.3398 29.9795 66.21 41.0996 91.0693 50.3594
c9.16992 3.41016 68.9707 19.2607 98.7207 98.0908c8.60938 22.8096 46.3496 134.58 188.979 187.72c15.8506 5.91016 27.3604 10.2002 41 20.2998c5.14941 3.80859 11.5498 6.08008 18.4404 6.08008c8.46484 0 16.1426 -3.40137 21.7393 -8.91016l37.6709 -37.3896
c-30.1504 -27.6904 -52.9102 -36.3701 -76.79 -45.3701c-28.3008 -10.6104 -57.5703 -21.5801 -97.3506 -61.3799s-50.7598 -69.0498 -61.3701 -97.3398c-9.84961 -26.3008 -19.1602 -51.1104 -54.0498 -86zM566.92 343.61
c12.7002 -12.5996 12.0801 -33.6602 -1.80957 -45.0605c-36.3701 -30.0098 -66.2402 -41.1396 -91.1104 -50.4102c-9.2002 -3.43945 -69 -19.3193 -98.7305 -98.1094c-8.93945 -23.5898 -46.7393 -134.69 -188.939 -187.69
c-15.8496 -5.89941 -27.3398 -10.1797 -40.9404 -20.2402c-5.14941 -3.81055 -11.5527 -6.08301 -18.4453 -6.08301c-8.46289 0 -16.1377 3.39844 -21.7344 8.90332l-37.6797 37.4297c30.1094 27.6699 52.8594 36.3301 76.7197 45.3301
c28.2998 10.5898 57.5098 21.54 97.2998 61.3203s50.7803 69 61.4199 97.3301c9.81055 26.3096 19.1104 51.1602 54 86c34.8906 34.8398 59.6904 44.1504 85.9502 54c26.0703 9.79004 53.0605 20.1602 88.25 52.79z" />
    <glyph glyph-name="book-medical" unicode="&#xf7e6;" horiz-adv-x="448" 
d="M448 89.5996c0 -9.59961 -3.2002 -15.999 -9.59961 -19.1992c-3.2002 -12.8008 -3.2002 -57.6006 0 -73.6006c6.39941 -6.39941 9.59961 -12.7998 9.59961 -19.2002v-16c0 -16 -12.7998 -25.5996 -25.5996 -25.5996h-326.4c-54.4004 0 -96 41.5996 -96 96v320
c0 54.4004 41.5996 96 96 96h326.4c16 0 25.5996 -9.59961 25.5996 -25.5996v-332.801zM144 280v-48c0 -4.41504 3.58496 -8 8 -8h56v-56c0 -4.41504 3.58496 -8 8 -8h48c4.41504 0 8 3.58496 8 8v56h56c4.41504 0 8 3.58496 8 8v48c0 4.41504 -3.58496 8 -8 8h-56v56
c0 4.41504 -3.58496 8 -8 8h-48c-4.41504 0 -8 -3.58496 -8 -8v-56h-56c-4.41504 0 -8 -3.58496 -8 -8zM380.8 0v64h-284.8c-16 0 -32 -12.7998 -32 -32s12.7998 -32 32 -32h284.8z" />
    <glyph glyph-name="bread-slice" unicode="&#xf7ec;" horiz-adv-x="576" 
d="M288 448c180 0 288 -93.4004 288 -169.14c0 -30.3008 -24.2402 -54.8604 -64 -54.8604v-256c0 -17.6699 -16.1201 -32 -36 -32h-376c-19.8799 0 -36 14.3301 -36 32v256c-39.7598 0 -64 24.5596 -64 54.8604c0 75.7393 108 169.14 288 169.14z" />
    <glyph glyph-name="cheese" unicode="&#xf7ef;" 
d="M0 160h512v-160c0 -17.6611 -14.3389 -32 -32 -32h-448c-17.6611 0 -32 14.3389 -32 32v160zM299.83 416c118.17 -6.2002 212.17 -104.11 212.17 -224h-512l278.7 217c5.47656 4.38477 12.4277 7.02051 19.9814 7.02051
c0.384766 0 0.767578 -0.00683594 1.14844 -0.0205078z" />
    <glyph glyph-name="clinic-medical" unicode="&#xf7f2;" horiz-adv-x="576" 
d="M288 333l218.74 -192.9c1.54004 -1.37988 3.55957 -2.04004 5.25977 -3.19922v-184.9c0 -8.83105 -7.16895 -16 -16 -16h-416c-8.83105 0 -16 7.16895 -16 16v184.94c1.78027 1.20996 3.84961 1.88965 5.46973 3.34961zM384 72v48c0 4.41504 -3.58496 8 -8 8h-56v56
c0 4.41504 -3.58496 8 -8 8h-48c-4.41504 0 -8 -3.58496 -8 -8v-56h-56c-4.41504 0 -8 -3.58496 -8 -8v-48c0 -4.41504 3.58496 -8 8 -8h56v-56c0 -4.41504 3.58496 -8 8 -8h48c4.41504 0 8 3.58496 8 8v56h56c4.41504 0 8 3.58496 8 8zM570.69 211.72
c3.2627 -2.92969 5.30762 -7.18555 5.30762 -11.9121c0 -4.10156 -1.54688 -7.84473 -4.08789 -10.6777l-21.4004 -23.8203c-2.92969 -3.2627 -7.18457 -5.30762 -11.9111 -5.30762c-4.10742 0 -7.85449 1.55078 -10.6885 4.09766l-229.32 202.271
c-2.82031 2.48828 -6.53906 3.99902 -10.5928 3.99902c-4.05273 0 -7.75684 -1.51074 -10.5771 -3.99902l-229.32 -202.28c-2.83398 -2.54688 -6.58594 -4.10645 -10.6924 -4.10645c-4.72656 0 -8.97754 2.05371 -11.9072 5.31641l-21.4102 23.8203
c-2.54688 2.83398 -4.10645 6.58594 -4.10645 10.6934c0 4.72559 2.05371 8.97656 5.31641 11.9062l256 226c7.06934 6.3916 16.4707 10.2852 26.7412 10.2852c10.2715 0 19.6396 -3.89355 26.709 -10.2852z" />
    <glyph glyph-name="comment-medical" unicode="&#xf7f5;" 
d="M256 416c141.39 0 256 -93.1201 256 -208s-114.61 -208 -256 -208c-0.161133 0 -0.446289 0.107422 -0.606445 0.107422c-37.5674 0 -73.5547 6.81445 -106.794 19.2725c-24.5996 -19.6299 -74.3398 -51.3799 -140.6 -51.3799
c-4.41113 0.00488281 -7.99023 3.58984 -7.99023 8.00195c0 2.12891 0.833008 4.06445 2.19043 5.49805c0.5 0.5 42.2598 45.4502 54.7998 95.7598c-35.5898 35.7402 -57 81.1807 -57 130.74c0 114.88 114.62 208 256 208zM352 184v48c0 4.41504 -3.58496 8 -8 8h-56v56
c0 4.41504 -3.58496 8 -8 8h-48c-4.41504 0 -8 -3.58496 -8 -8v-56h-56c-4.41504 0 -8 -3.58496 -8 -8v-48c0 -4.41504 3.58496 -8 8 -8h56v-56c0 -4.41504 3.58496 -8 8 -8h48c4.41504 0 8 3.58496 8 8v56h56c4.41504 0 8 3.58496 8 8z" />
    <glyph glyph-name="crutch" unicode="&#xf7f7;" 
d="M507.31 262.29c2.87109 -2.89258 4.64551 -6.87891 4.64551 -11.2725c0 -4.42285 -1.79883 -8.42969 -4.70508 -11.3271l-22.6201 -22.6309c-2.89648 -2.89648 -6.90137 -4.68945 -11.3174 -4.68945s-8.41602 1.79297 -11.3125 4.68945l-181 181
c-2.89648 2.89648 -4.68945 6.90137 -4.68945 11.3174s1.79297 8.41699 4.68945 11.3135l22.6904 22.5996c2.89551 2.89355 6.89844 4.68457 11.3115 4.68457c4.41406 0 8.41211 -1.79102 11.3076 -4.68457zM327.77 195.88l55.1006 55.1201l45.25 -45.2695l-109.68 -109.681
c-12.4922 -12.4961 -28.4805 -21.5479 -46.29 -25.6494l-120.25 -27.75l-102 -102c-2.89648 -2.89746 -6.90137 -4.69043 -11.3174 -4.69043s-8.41699 1.79297 -11.3135 4.69043l-22.6191 22.6191c-2.89746 2.89648 -4.69043 6.90137 -4.69043 11.3174
s1.79297 8.41699 4.69043 11.3135l102 102l27.7393 120.26c4.11816 17.8066 13.1738 33.7939 25.6699 46.29l109.671 109.67l45.25 -45.25l-55.1006 -55.1006zM273.2 141.31l9.30957 9.31055l-67.8896 67.8896l-9.31055 -9.30957
c-4.16113 -4.17676 -7.17969 -9.51074 -8.55957 -15.4502l-18.2998 -79.2998l79.2998 18.3193c5.94238 1.36328 11.2783 4.37695 15.4502 8.54004z" />
    <glyph glyph-name="disease" unicode="&#xf7fa;" 
d="M472.29 252.1c48.54 -16.6191 53.8301 -73.8301 8.99023 -96.79l-62 -31.7393c-17.8301 -9.12988 -29.2803 -25.2002 -30.6299 -43l-4.7002 -61.8604c-3.4502 -44.79 -65.1299 -66.7803 -104.45 -37.2197l-54.3203 40.8301
c-15.6201 11.7295 -36.96 16.1201 -57.0693 11.7295l-70 -15.2803c-50.6504 -11.0596 -94.1104 32.5605 -73.46 73.8008l28.4297 57c8.17969 16.3799 6.43945 35.1699 -4.63965 50.2393l-38.54 52.4209c-27.9307 37.9492 7 86.9092 59 82.8398l71.8994 -5.62012
c20.6602 -1.62012 40.9404 5.59961 54.2002 19.3096l46.0898 47.7207c33.4297 34.5098 98.4199 21.1494 110 -22.6201l16 -60.4502c4.60059 -17.3906 18.8604 -31.71 38.1406 -38.3105zM160 192c17.6611 0 32 14.3389 32 32s-14.3389 32 -32 32s-32 -14.3389 -32 -32
s14.3389 -32 32 -32zM288 96c17.6611 0 32 14.3389 32 32s-14.3389 32 -32 32s-32 -14.3389 -32 -32s14.3389 -32 32 -32zM304 224c8.83105 0 16 7.16895 16 16s-7.16895 16 -16 16s-16 -7.16895 -16 -16s7.16895 -16 16 -16z" />
    <glyph glyph-name="egg" unicode="&#xf7fb;" horiz-adv-x="384" 
d="M192 448c106 0 192 -214 192 -320s-86 -192 -192 -192s-192 86 -192 192s86 320 192 320z" />
    <glyph glyph-name="hamburger" unicode="&#xf805;" 
d="M464 192c26.4922 0 48 -21.5078 48 -48s-21.5078 -48 -48 -48h-416c-26.4922 0 -48 21.5078 -48 48s21.5078 48 48 48h416zM480 64c8.83105 0 16 -7.16895 16 -16v-16c0 -35.3223 -28.6777 -64 -64 -64h-352c-35.3223 0 -64 28.6777 -64 64v16
c0 8.83105 7.16895 16 16 16h448zM58.6396 224c-34.5693 0 -54.6396 43.9102 -34.8193 75.8896c40.1797 64.9102 128.64 116.011 232.18 116.11c103.55 -0.0996094 192 -51.2002 232.18 -116.12c19.8008 -31.9795 -0.25 -75.8799 -34.8193 -75.8799h-394.721zM384 336
c-8.83105 0 -16 -7.16895 -16 -16s7.16895 -16 16 -16s16 7.16895 16 16s-7.16895 16 -16 16zM256 368c-8.83105 0 -16 -7.16895 -16 -16s7.16895 -16 16 -16s16 7.16895 16 16s-7.16895 16 -16 16zM128 336c-8.83105 0 -16 -7.16895 -16 -16s7.16895 -16 16 -16
s16 7.16895 16 16s-7.16895 16 -16 16z" />
    <glyph glyph-name="hand-middle-finger" unicode="&#xf806;" 
d="M479.93 130.88l0.0703125 -82.8799c0 -61.7979 -50.1592 -111.973 -111.95 -112h-215c-30.9053 0.00292969 -58.9189 12.5361 -79.1895 32.8096l-30.9307 30.9307c-6.75488 6.75391 -10.9297 16.0928 -10.9297 26.3896v73.4697
c0 14.6221 8.38574 27.2734 20.6396 33.4004l27.3604 15v-76c0 -4.41504 3.58496 -8 8 -8s8 3.58496 8 8v147.04c0 15.2598 12.8701 28.3799 30.8701 31.3799l30.6797 5.12012c17.8203 2.96973 34.4502 -8.38965 34.4502 -23.54v-32c0 -4.41504 3.58496 -8 8 -8
s8 3.58496 8 8v200c0 0.0078125 -0.0244141 0.015625 -0.0244141 0.0234375c0 26.4912 21.5078 48 48 48c0.50293 0 1.00488 -0.0078125 1.50488 -0.0234375c26.2695 -0.799805 46.5195 -23.7197 46.5195 -50v-198c0 -4.41504 3.58496 -8 8 -8s8 3.58496 8 8v32
c0 15.1396 16.6299 26.5 34.4502 23.5303l38.3994 -6.40039c13.46 -2.25 23.1504 -12.0996 23.1504 -23.54v-49.5898l35.6504 -8.92969c16.2188 -4.05371 28.2676 -18.7256 28.2793 -36.1904z" />
    <glyph glyph-name="hard-hat" unicode="&#xf807;" 
d="M480 160v-64h-448v64c0 80.25 49.2803 148.92 119.19 177.62l40.8096 -81.6201v112c0 8.83105 7.16895 16 16 16h96c8.83105 0 16 -7.16895 16 -16v-112l40.8096 81.6201c69.9102 -28.7002 119.19 -97.3701 119.19 -177.62zM496 64c8.83105 0 16 -7.16895 16 -16v-32
c0 -8.83105 -7.16895 -16 -16 -16h-480c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h480z" />
    <glyph glyph-name="hospital-user" unicode="&#xf80d;" horiz-adv-x="640" 
d="M480 128c-52.9834 0 -96 43.0166 -96 96s43.0166 96 96 96s96 -43.0166 96 -96s-43.0166 -96 -96 -96zM528 96c61.8145 0 112.002 -50.1738 112.002 -111.988c0 -0.210938 -0.000976562 -0.420898 -0.00195312 -0.631836
c-0.139648 -26.2598 -21.7305 -47.3799 -48 -47.3799h-224c-26.2695 0 -47.8604 21.1201 -48 47.3799c-0.000976562 0.210938 0 0.40918 0 0.620117c0 61.8145 50.1855 112 112 112c0.0273438 0 0.0556641 -0.00488281 0.0830078 -0.00488281
c2.42871 0 4.77051 -0.380859 6.9668 -1.08496c12.8193 -4.4541 26.6504 -6.87402 40.9775 -6.87402s28.0938 2.41992 40.9131 6.87402c2.19922 0.704102 4.54395 1.08984 6.97656 1.08984h0.0830078zM329.91 85.5498c-25.9033 -25.8965 -41.915 -61.665 -41.915 -101.15
c0 -0.396484 0.00195312 -0.792969 0.00488281 -1.18945c0.166016 -17.7246 6.24512 -34.1309 16.3096 -47.21h-288.31c-8.83105 0 -16 7.16895 -16 16v368c0 17.6611 14.3389 32 32 32h32v64c0 17.6611 14.3389 32 32 32h160c17.6611 0 32 -14.3389 32 -32v-64h32
c17.6611 0 32 -14.3389 32 -32v-216.62c-7.98633 -5.24609 -15.3037 -11.1562 -22.0898 -17.8301zM144 44v40c0 6.62305 -5.37695 12 -12 12h-40c-6.62305 0 -12 -5.37695 -12 -12v-40c0 -6.62305 5.37695 -12 12 -12h40c6.62305 0 12 5.37695 12 12zM144 172v40
c0 6.62305 -5.37695 12 -12 12h-40c-6.62305 0 -12 -5.37695 -12 -12v-40c0 -6.62305 5.37695 -12 12 -12h40c6.62305 0 12 5.37695 12 12zM192 294v26h26c3.31152 0 6 2.68848 6 6v20c0 3.31152 -2.68848 6 -6 6h-26v26c0 3.31152 -2.68848 6 -6 6h-20
c-3.31152 0 -6 -2.68848 -6 -6v-26h-26c-3.31152 0 -6 -2.68848 -6 -6v-20c0 -3.31152 2.68848 -6 6 -6h26v-26c0 -3.31152 2.68848 -6 6 -6h20c3.31152 0 6 2.68848 6 6zM272 44v40c0 6.62305 -5.37695 12 -12 12h-40c-6.62305 0 -12 -5.37695 -12 -12v-40
c0 -6.62305 5.37695 -12 12 -12h40c6.62305 0 12 5.37695 12 12zM272 172v40c0 6.62305 -5.37695 12 -12 12h-40c-6.62305 0 -12 -5.37695 -12 -12v-40c0 -6.62305 5.37695 -12 12 -12h40c6.62305 0 12 5.37695 12 12z" />
    <glyph glyph-name="hotdog" unicode="&#xf80f;" 
d="M488.56 424.56c14.4766 -14.4795 23.4346 -34.498 23.4346 -56.5703s-8.95801 -42.0693 -23.4346 -56.5488l-352 -352c-14.5518 -15.0674 -34.9814 -24.4199 -57.5615 -24.4199c-44.1523 0 -80 35.8467 -80 80c0 22.5801 9.375 42.9873 24.4424 57.5391l352 352
c14.4795 14.4766 34.498 23.4346 56.5703 23.4346s42.0693 -8.95801 56.5488 -23.4346zM438.63 329.37c2.89648 2.89648 4.68457 6.90137 4.68457 11.3174c0 8.83105 -7.16992 16.002 -16.002 16.002c-4.41602 0 -8.41602 -1.79297 -11.3125 -4.68945
c-12.4102 -12.4102 -21.7598 -14 -34.71 -16.2305c-14.4004 -2.46973 -32.3203 -5.55957 -51.9199 -25.1494c-19.6006 -19.5898 -22.6699 -37.5205 -25.1396 -51.9199c-2.24023 -12.9502 -3.84082 -22.3105 -16.2402 -34.71
c-12.4004 -12.4004 -21.7002 -14.0098 -34.7002 -16.2305c-14.4004 -2.46973 -32.3203 -5.5498 -51.9199 -25.1396c-19.6006 -19.5898 -22.6699 -37.5205 -25.1504 -51.9199c-2.21973 -12.9502 -3.80957 -22.29 -16.2197 -34.7002s-21.71 -14.0098 -34.71 -16.2305
c-14.4004 -2.46973 -32.3203 -5.5498 -51.9199 -25.1396c-2.89648 -2.89648 -4.68457 -6.90137 -4.68457 -11.3174c0 -8.83105 7.16992 -16.002 16.002 -16.002c4.41602 0 8.41602 1.79297 11.3125 4.68945c12.4004 12.4004 21.7598 14 34.7002 16.2305
c14.3994 2.46973 32.3301 5.55957 51.9297 25.1494c19.6006 19.5898 22.6699 37.5205 25.1396 51.9199c2.23047 12.9502 3.83008 22.2998 16.2305 34.7002s21.75 14 34.7002 16.2197c14.3994 2.48047 32.3193 5.56055 51.9199 25.1504
c19.5996 19.5898 22.6699 37.5195 25.1494 51.9199c2.23047 12.9502 3.83008 22.3096 16.2305 34.71s21.7598 14 34.7002 16.2305c14.4102 2.46973 32.3301 5.5498 51.9297 25.1396zM31.4404 125.82l-11.5508 11.5498c-24.9893 24.9902 -26.6592 63.8398 -3.71973 86.7803
l207.68 207.68c22.9404 22.9395 61.79 21.2803 86.79 -3.71973l11.54 -11.5508zM480.56 258.18l11.5508 -11.54c24.9893 -25 26.6592 -63.8496 3.71973 -86.79l-207.68 -207.68c-22.9404 -22.9395 -61.79 -21.2803 -86.79 3.71973l-11.54 11.5508z" />
    <glyph glyph-name="ice-cream" unicode="&#xf810;" horiz-adv-x="448" 
d="M368 288c26.4922 0 48 -21.5078 48 -48s-21.5078 -48 -48 -48h-288c-26.4922 0 -48 21.5078 -48 48s21.5078 48 48 48h0.94043c-0.625 5.43945 -0.93457 10.9707 -0.93457 16.5762c0 79.4756 64.5234 144 144 144c79.4756 0 144 -64.5244 144 -144
c0 -5.60547 -0.321289 -11.1367 -0.946289 -16.5762h0.94043zM195.38 -45.6904l-99.3799 205.69h256l-99.3799 -205.69c-4.99414 -10.8223 -15.9111 -18.3398 -28.6035 -18.3398s-23.6426 7.51758 -28.6367 18.3398z" />
    <glyph glyph-name="laptop-medical" unicode="&#xf812;" horiz-adv-x="640" 
d="M232 224c-4.41504 0 -8 3.58496 -8 8v48c0 4.41504 3.58496 8 8 8h56v56c0 4.41504 3.58496 8 8 8h48c4.41504 0 8 -3.58496 8 -8v-56h56c4.41504 0 8 -3.58496 8 -8v-48c0 -4.41504 -3.58496 -8 -8 -8h-56v-56c0 -4.41504 -3.58496 -8 -8 -8h-48
c-4.41504 0 -8 3.58496 -8 8v56h-56zM576 400v-336h-512v336c0.0771484 26.4561 21.5439 47.9229 48 48h416c26.4561 -0.0771484 47.9229 -21.5439 48 -48zM512 128v256h-384v-256h384zM624 32c8.83105 0 16 -7.16895 16 -16v-16
c-0.104492 -35.2744 -28.7256 -63.8955 -64 -64h-512c-35.2744 0.104492 -63.8955 28.7256 -64 64v16c0 8.83105 7.16895 16 16 16h239.23c-0.230469 -14.5303 14.0791 -32 32.7695 -32h60.7998c18.0303 0 32 12.1904 32.7402 32h242.46z" />
    <glyph glyph-name="pager" unicode="&#xf815;" 
d="M448 384c35.3223 0 64 -28.6777 64 -64v-256c0 -35.3223 -28.6777 -64 -64 -64h-384c-35.3223 0 -64 28.6777 -64 64v256c0 35.3223 28.6777 64 64 64h384zM160 80v48h-80c-8.83105 0 -16 -7.16895 -16 -16v-16c0 -8.83105 7.16895 -16 16 -16h80zM288 96v16
c0 8.83105 -7.16895 16 -16 16h-80v-48h80c8.83105 0 16 7.16895 16 16zM448 224v64c0 17.6611 -14.3389 32 -32 32h-320c-17.6611 0 -32 -14.3389 -32 -32v-64c0 -17.6611 14.3389 -32 32 -32h320c17.6611 0 32 14.3389 32 32z" />
    <glyph glyph-name="pepper-hot" unicode="&#xf816;" 
d="M330.67 184.88h107.46l37.0498 -38.54c-48.5293 -87.4697 -206.54 -210.34 -419.18 -210.34c-30.9072 0 -56 25.0928 -56 56s25.0928 56 56 56c141.58 0 163.44 181.24 221.92 250.82l52.75 -24.2207v-89.7197zM461.76 313.25
c30.8984 -28.1729 50.2402 -68.7275 50.2402 -113.795v-0.145508c0 -13.6797 -2.2998 -26.6895 -5.55957 -39.3096l-54.6807 56.8799h-89.0898v78.2402l-74.6699 34.29c22.3398 14.0498 48.3398 22.5898 76.3398 22.5898
c20.2783 -0.0078125 39.6836 -4.32031 57.1602 -11.96c18.4502 37.2197 8.25977 61.96 1.40039 72.3203c-0.896484 1.29883 -1.42676 2.88184 -1.42676 4.57715c0 2.20117 0.884766 4.19727 2.31641 5.65234l22.9004 23c1.45117 1.47559 3.46777 2.39453 5.69922 2.39453
c2.5166 0 4.76367 -1.16504 6.23047 -2.98438c18.5596 -23.4805 35.2998 -71.9102 3.13965 -131.75z" />
    <glyph glyph-name="pizza-slice" unicode="&#xf818;" 
d="M158.87 447.85c181.91 -17.1699 332.02 -164.93 352.899 -345.71c1.87012 -16.2197 -7.89941 -31.54 -23.6191 -35.8994l-56.9404 -15.7803c-7.94043 186.39 -134.86 311.51 -322.479 317l14.8096 56.2705c4.12988 15.6992 19.1699 25.6396 35.3301 24.1191z
M100.4 335.85c176.069 -1.95996 294.88 -119.25 299.149 -294.14l-379 -105.1c-1.37793 -0.381836 -2.82324 -0.59375 -4.32227 -0.59375c-8.94629 0 -16.21 7.26367 -16.21 16.21c0 1.42871 0.18457 2.81348 0.532227 4.13379zM128 32c17.6611 0 32 14.3389 32 32
s-14.3389 32 -32 32s-32 -14.3389 -32 -32s14.3389 -32 32 -32zM176 184c17.6611 0 32 14.3389 32 32s-14.3389 32 -32 32s-32 -14.3389 -32 -32s14.3389 -32 32 -32zM280 80c17.6611 0 32 14.3389 32 32s-14.3389 32 -32 32s-32 -14.3389 -32 -32s14.3389 -32 32 -32z" />
    <glyph glyph-name="trash-restore" unicode="&#xf829;" horiz-adv-x="448" 
d="M53.2002 -19l-21.2002 339h384l-21.2002 -339c-1.57031 -25.0762 -22.4316 -44.9971 -47.8994 -45h-245.801c-25.4678 0.00292969 -46.3291 19.9238 -47.8994 45zM123.31 156.8c-10.0791 -10.6201 -2.93945 -28.7998 11.3203 -28.7998h57.3701v-112
c0 -8.83105 7.16895 -16 16 -16h32c8.83105 0 16 7.16895 16 16v112h57.3701c14.2598 0 21.3994 18.1797 11.3203 28.7998l-89.3809 94.2598c-2.81543 3.04297 -6.83984 4.94922 -11.3086 4.94922s-8.49512 -1.90625 -11.3105 -4.94922zM432 416
c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-416c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h120l9.40039 18.7002c3.85547 7.88574 11.9434 13.2998 21.3066 13.2998h0.0927734h114.3
c0.00585938 0 -0.00195312 0.0234375 0.00390625 0.0234375c9.41113 0 17.5645 -5.42871 21.4961 -13.3232l9.40039 -18.7002h120z" />
    <glyph glyph-name="trash-restore-alt" unicode="&#xf82a;" horiz-adv-x="448" 
d="M32 -16v336h384v-336c0 -26.4922 -21.5078 -48 -48 -48h-288c-26.4922 0 -48 21.5078 -48 48zM123.31 156.8c-10.0791 -10.6201 -2.93945 -28.7998 11.3203 -28.7998h57.3701v-112c0 -8.83105 7.16895 -16 16 -16h32c8.83105 0 16 7.16895 16 16v112h57.3701
c14.2598 0 21.3994 18.1797 11.3203 28.7998l-89.3809 94.2598c-2.81543 3.04297 -6.83984 4.94922 -11.3086 4.94922s-8.49512 -1.90625 -11.3105 -4.94922zM432 416c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-416
c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h120l9.40039 18.7002c3.85547 7.88574 11.9434 13.2998 21.3066 13.2998h0.0927734h114.3c0.00585938 0 -0.00195312 0.0234375 0.00390625 0.0234375c9.41113 0 17.5645 -5.42871 21.4961 -13.3232
l9.40039 -18.7002h120z" />
    <glyph glyph-name="user-nurse" unicode="&#xf82f;" horiz-adv-x="448" 
d="M319.41 128c71.4902 -3.09961 128.59 -61.5996 128.59 -133.79c0 -32.127 -26.083 -58.21 -58.21 -58.21h-331.58c-32.127 0 -58.21 26.083 -58.21 58.21c0 72.1904 57.0996 130.69 128.59 133.79l95.4102 -95.3896zM224 144c-70.6455 0 -128 57.3545 -128 128v110.18
c0 13.7119 8.62988 25.4092 20.7598 29.96l84.7705 31.79c6.98438 2.61914 14.6035 4.05176 22.498 4.05176s15.457 -1.43262 22.4414 -4.05176l84.7705 -31.75c12.1309 -4.55078 20.7598 -16.248 20.7598 -29.96v-0.0400391v-110.18c0 -70.6455 -57.3545 -128 -128 -128z
M184 376.33v-16.6602c0 -2.75977 2.24023 -5 5 -5h21.6699v-21.6699c0 -2.75977 2.24023 -5 5 -5h16.6602c2.75977 0 5 2.24023 5 5v21.6699h21.6699c2.75977 0 5 2.24023 5 5v16.6602c0 2.75977 -2.24023 5 -5 5h-21.6699v21.6699c0 2.75977 -2.24023 5 -5 5h-16.6602
c-2.75977 0 -5 -2.24023 -5 -5v-21.6699h-21.6699c-2.75977 0 -5 -2.24023 -5 -5zM144 288v-16c0 -44.1533 35.8467 -80 80 -80s80 35.8467 80 80v16h-160z" />
    <glyph glyph-name="wave-square" unicode="&#xf83e;" horiz-adv-x="640" 
d="M476 -32h-152c-19.8691 0 -36 16.1309 -36 36v348h-96v-156c0 -19.8691 -16.1309 -36 -36 -36h-140c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h112v156c0 19.8691 16.1309 36 36 36h152c19.8691 0 36 -16.1309 36 -36v-348h96v156
c0 19.8691 16.1309 36 36 36h140c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-112v-156c0 -19.8691 -16.1309 -36 -36 -36z" />
    <glyph glyph-name="biking" unicode="&#xf84a;" horiz-adv-x="640" 
d="M400 352c-26.4922 0 -48 21.5078 -48 48s21.5078 48 48 48s48 -21.5078 48 -48s-21.5078 -48 -48 -48zM396 231l-41.3604 33.1104l-58.25 -49.9199l41.3604 -27.5703c8.60547 -5.7373 14.248 -15.5117 14.25 -26.6201v-128c0 -17.6611 -14.3389 -32 -32 -32
s-32 14.3389 -32 32v110.88l-81.7305 54.5205c-8.60742 5.7373 -14.2686 15.5068 -14.2686 26.6191c0 9.71777 4.3418 18.4297 11.1895 24.3008l112 96c5.58887 4.80176 12.8965 7.70117 20.8359 7.70117c7.55566 0 14.502 -2.62891 19.9736 -7.02148l71.2197 -57h52.7803
c17.6611 0 32 -14.3389 32 -32s-14.3389 -32 -32 -32h-64c-0.0205078 0 -0.0625 0.0117188 -0.0830078 0.0117188c-7.53125 0 -14.457 2.61621 -19.917 6.98828zM512 192c70.6455 0 128 -57.3545 128 -128s-57.3545 -128 -128 -128s-128 57.3545 -128 128
s57.3545 128 128 128zM512 0c35.3223 0 64 28.6777 64 64s-28.6777 64 -64 64s-64 -28.6777 -64 -64s28.6777 -64 64 -64zM128 192c70.6455 0 128 -57.3545 128 -128s-57.3545 -128 -128 -128s-128 57.3545 -128 128s57.3545 128 128 128zM128 0c35.3223 0 64 28.6777 64 64
s-28.6777 64 -64 64s-64 -28.6777 -64 -64s28.6777 -64 64 -64z" />
    <glyph glyph-name="border-all" unicode="&#xf84c;" horiz-adv-x="448" 
d="M416 416c17.6611 0 32 -14.3389 32 -32v-384c0 -17.6611 -14.3389 -32 -32 -32h-384c-17.6611 0 -32 14.3389 -32 32v384c0 17.6611 14.3389 32 32 32h384zM384 352h-128v-128h128v128zM192 352h-128v-128h128v128zM64 32h128v128h-128v-128zM256 32h128v128h-128v-128z
" />
    <glyph glyph-name="border-none" unicode="&#xf850;" horiz-adv-x="448" 
d="M240 224c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h32zM336 224c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v32
c0 8.83105 7.16895 16 16 16h32zM432 224c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h32zM144 224c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-32
c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h32zM240 32c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h32zM336 32c8.83105 0 16 -7.16895 16 -16v-32
c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h32zM432 32c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h32zM432 128
c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h32zM432 320c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v32
c0 8.83105 7.16895 16 16 16h32zM240 128c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h32zM240 320c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-32
c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h32zM144 32c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h32zM240 416c8.83105 0 16 -7.16895 16 -16v-32
c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h32zM336 416c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h32zM432 416
c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h32zM48 224c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v32
c0 8.83105 7.16895 16 16 16h32zM48 32c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h32zM48 128c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-32
c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h32zM48 320c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h32zM48 416c8.83105 0 16 -7.16895 16 -16v-32
c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h32zM144 416c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h32z" />
    <glyph glyph-name="border-style" unicode="&#xf853;" horiz-adv-x="448" 
d="M240 32c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h32zM144 32c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v32
c0 8.83105 7.16895 16 16 16h32zM336 32c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h32zM432 224c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-32
c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h32zM432 128c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h32zM432 32c8.83105 0 16 -7.16895 16 -16v-32
c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h32zM432 320c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h32zM432 416
c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-368v-368c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v400c0 17.6611 14.3389 32 32 32h400z" />
    <glyph glyph-name="fan" unicode="&#xf863;" 
d="M352.57 320c81.79 0 149.3 -61.6299 159.3 -141.33c1.30957 -10.4795 -7.17969 -19.6396 -17.6201 -18.5898l-123.11 12.4102c8.34082 -22.9707 12.8604 -48.9707 12.8604 -77.0605c0 -81.79 -61.6299 -149.3 -141.33 -159.3
c-10.4795 -1.30957 -19.6396 7.19043 -18.5898 17.6201l12.4102 123.11c-22.9707 -8.34082 -48.9707 -12.8604 -77.0605 -12.8604c-81.79 0 -149.3 61.6299 -159.3 141.33c-1.30957 10.4795 7.17969 19.6699 17.6201 18.5898l123.11 -12.4102
c-8.34082 22.9707 -12.8604 48.9707 -12.8604 77.0605c0 81.79 61.6299 149.3 141.33 159.3c10.4795 1.30957 19.6699 -7.17969 18.5898 -17.6201l-12.4102 -123.11c22.9707 8.34082 48.9707 12.8604 77.0605 12.8604zM256 160c17.6611 0 32 14.3389 32 32
s-14.3389 32 -32 32s-32 -14.3389 -32 -32s14.3389 -32 32 -32z" />
    <glyph glyph-name="icons" unicode="&#xf86d;" 
d="M116.65 228.65l-96.79 99.8301c-28 29.0293 -26.4102 77.0996 5 103.88c27.3896 23.3398 68.1895 19.1396 93.29 -6.80078l9.84961 -10.1396l9.86035 10.1396c25.1396 25.9404 65.8896 30.1406 93.2793 6.80078c31.4102 -26.7803 33.0605 -74.8799 4.91016 -103.88
l-96.75 -99.8301c-2.85449 -2.98242 -6.875 -4.83984 -11.3252 -4.83984s-8.46973 1.85742 -11.3242 4.83984zM260.57 128.16c15.1406 -0.0107422 27.4297 -12.3066 27.4297 -27.4502v-0.00976562v-137.25c0 -15.1436 -12.2891 -27.4395 -27.4297 -27.4502h-233.141
c-15.1396 0.00585938 -27.4297 12.2988 -27.4297 27.4395v0.0107422v137.25v0.00976562c0 15.1504 12.2998 27.4502 27.4502 27.4502h0.00976562h48l7 14.2402c3.89258 10.3887 13.9082 17.7793 25.6484 17.7793h0.0117188h71.71
c0.00390625 0 -0.00195312 0.0126953 0.000976562 0.0126953c11.7412 0 21.7666 -7.40332 25.6592 -17.792l7.08008 -14.2402h48zM144 -20c28.6992 0 52 23.3008 52 52s-23.3008 52 -52 52s-52 -23.3008 -52 -52s23.3008 -52 52 -52zM499.4 95.9004
c9.70996 0 15.75 -8.79004 10.8691 -15.7002l-92.3994 -138.91c-2.42188 -3.19824 -6.24805 -5.25488 -10.5654 -5.25488c-0.118164 0 -0.236328 0.00195312 -0.354492 0.00488281c-8.03027 0 -14.1201 6.25 -12.2305 12.9004l24.2002 83h-62.3096
c-7.62012 0 -13.5 5.58984 -12.5 11.8896l16.7998 106.93c0.839844 5.2002 6.2002 9.10059 12.5 9.10059h75.5898c8.25 0 14.2803 -6.56055 12.1797 -13.21l-22.3594 -50.75h60.5801zM478.08 447.67c17.9199 2.75 33.9199 -12.1895 33.9199 -31.6699v-144.26
c-0.269531 -26.3398 -28.7998 -47.6602 -64 -47.6602c-35.3496 0 -64 21.4795 -64 48c0 26.5195 28.6504 48 64 48c5.49219 -0.0498047 10.8096 -0.633789 16 -1.7002v47.1797l-112 -17.2197v-108.58c-0.269531 -26.3398 -28.7998 -47.6602 -64 -47.6602
c-35.3496 0 -64 21.4805 -64 48c0 26.5205 28.6504 48 64 48c5.49219 -0.0498047 10.8096 -0.632812 16 -1.69922v106.77c0 15.9102 10.8701 29.4102 25.5098 31.6602z" />
    <glyph glyph-name="phone-alt" unicode="&#xf879;" 
d="M497.39 86.2002c8.60059 -3.74121 14.6006 -12.2891 14.6006 -22.2588c0 -1.83496 -0.204102 -3.62305 -0.589844 -5.3418l-24 -104c-2.45801 -10.6416 -12 -18.5996 -23.3848 -18.5996h-0.015625c-256.1 0 -464 207.5 -464 464l0.0136719 0.00390625
c0 11.3848 7.94434 20.9287 18.5859 23.3857l104 24c1.72754 0.392578 3.49805 0.619141 5.34375 0.619141c9.9082 0 18.4307 -5.97656 22.1562 -14.5186l48 -112c1.23828 -2.88965 1.95117 -6.0791 1.95117 -9.41895c0 -7.49512 -3.45215 -14.1904 -8.85059 -18.5811
l-60.6006 -49.6006c36.7334 -77.9072 99.2822 -140.457 177.19 -177.189l49.5996 60.5996c4.40332 5.39258 11.1113 8.81055 18.6084 8.81055c3.33203 0 6.50684 -0.680664 9.3916 -1.91016z" />
    <glyph glyph-name="phone-square-alt" unicode="&#xf87b;" horiz-adv-x="448" 
d="M400 416c26.4922 0 48 -21.5078 48 -48v-352c0 -26.4922 -21.5078 -48 -48 -48h-352c-26.4922 0 -48 21.5078 -48 48v352c0 26.4922 21.5078 48 48 48h352zM383.61 108.63c0.235352 1.09082 0.369141 2.21387 0.389648 3.37012
c-0.301758 6.06445 -3.91992 11.2607 -9.08984 13.79l-70 30c-1.83594 0.71582 -3.83789 1.14355 -5.91016 1.20996c-4.58496 -0.251953 -8.69922 -2.31836 -11.6104 -5.5l-31 -37.8896c-48.7002 22.9775 -87.8018 62.0791 -110.779 110.779l37.8896 31
c3.18164 2.91113 5.24805 7.02539 5.5 11.6104c-0.0673828 2.07129 -0.495117 4.07324 -1.20996 5.91016l-30 70c-2.53223 5.16797 -7.72754 8.78418 -13.79 9.08984c-1.15527 -0.0253906 -2.27734 -0.15918 -3.37012 -0.389648l-65 -15
c-6.52246 -1.74707 -11.3818 -7.59961 -11.6299 -14.6104c0 -160.29 130 -290 290 -290c7.11426 0.00292969 13.0762 4.97852 14.6104 11.6299z" />
    <glyph glyph-name="photo-video" unicode="&#xf87c;" horiz-adv-x="640" 
d="M608 448c17.6611 0 32 -14.3389 32 -32v-320c0 -17.6611 -14.3389 -32 -32 -32h-128v320h-192v-64h-160v96c0 17.6611 14.3389 32 32 32h448zM232 345v30c0 4.9668 -4.0332 9 -9 9h-30c-4.9668 0 -9 -4.0332 -9 -9v-30c0 -4.9668 4.0332 -9 9 -9h30
c4.9668 0 9 4.0332 9 9zM584 137v30c0 4.9668 -4.0332 9 -9 9h-30c-4.9668 0 -9 -4.0332 -9 -9v-30c0 -4.9668 4.0332 -9 9 -9h30c4.9668 0 9 4.0332 9 9zM584 241v30c0 4.9668 -4.0332 9 -9 9h-30c-4.9668 0 -9 -4.0332 -9 -9v-30c0 -4.9668 4.0332 -9 9 -9h30
c4.9668 0 9 4.0332 9 9zM584 345v30c0 4.9668 -4.0332 9 -9 9h-30c-4.9668 0 -9 -4.0332 -9 -9v-30c0 -4.9668 4.0332 -9 9 -9h30c4.9668 0 9 4.0332 9 9zM416 288c17.6611 0 32 -14.3389 32 -32v-288c0 -17.6611 -14.3389 -32 -32 -32h-384c-17.6611 0 -32 14.3389 -32 32
v288c0 17.6611 14.3389 32 32 32h384zM96 224c-17.6611 0 -32 -14.3389 -32 -32s14.3389 -32 32 -32s32 14.3389 32 32s-14.3389 32 -32 32zM384 0v96l-96 96l-128 -128l-32 32l-64 -64v-32h320z" />
    <glyph glyph-name="remove-format" unicode="&#xf87d;" horiz-adv-x="640" 
d="M336 32c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-128c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h32.4902l26.5098 79.5996l67.0898 -51.8301l-9.25977 -27.7695h11.1699zM633.82 -10.0996
c3.76855 -2.92871 6.17676 -7.50977 6.17676 -12.6475c0 -3.69238 -1.25293 -7.09375 -3.35742 -9.80273l-19.6396 -25.2705c-2.92871 -3.76855 -7.50879 -6.17578 -12.6465 -6.17578c-3.69727 0 -7.10254 1.25684 -9.81348 3.36621l-588.36 454.72
c-3.76562 2.92871 -6.1709 7.50781 -6.1709 12.6426c0 3.69434 1.25488 7.09766 3.36133 9.80762l19.6299 25.2695c2.92871 3.76855 7.50879 6.17676 12.6465 6.17676c3.69727 0 7.10254 -1.25684 9.81348 -3.36621l114.54 -88.5205v43.9004c0 8.83105 7.16895 16 16 16h416
c8.83105 0 16 -7.16895 16 -16v-96c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v32h-117.83l-49.1699 -147.59zM309.91 240.24l31.9199 95.7598h-117.83v-29.3604z" />
    <glyph glyph-name="sort-alpha-down-alt" unicode="&#xf881;" horiz-adv-x="448" 
d="M176 96c14.2197 0 21.3496 -17.2598 11.3301 -27.3096l-80 -96c-2.89551 -2.89453 -6.89844 -4.68555 -11.3125 -4.68555c-4.41309 0 -8.41211 1.79102 -11.3076 4.68555l-80 96c-10.0703 10.0693 -2.90039 27.3096 11.29 27.3096h48v304c0 8.83105 7.16895 16 16 16h32
c8.83105 0 16 -7.16895 16 -16v-304h48zM288 224c-8.83105 0 -16 7.16895 -16 16v17.6299c0 9.51074 4.14355 18.0566 10.7402 23.9199l61.2598 70.4502h-56c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h128c8.83105 0 16 -7.16895 16 -16v-17.6299
c0 -9.51074 -4.14355 -18.0566 -10.7402 -23.9199l-61.2598 -70.4502h56c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-128zM447.06 -10.6201c0.600586 -1.67969 0.931641 -3.49512 0.931641 -5.37988c0 -8.82812 -7.16406 -15.9951 -15.9912 -16
h-24.8398c-0.015625 0 -0.0263672 -0.00195312 -0.0419922 -0.00195312c-7.11426 0 -13.1514 4.6543 -15.2285 11.082l-4.40918 12.9199h-71l-4.4209 -12.9199c-2.07617 -6.42773 -8.10938 -11.0801 -15.2246 -11.0801h-0.00488281h-24.8301
c-8.82715 0.00488281 -15.9863 7.17773 -15.9863 16.0049c0 1.88574 0.326172 3.69531 0.926758 5.375l59.2695 160c2.20996 6.19043 8.125 10.6201 15.0703 10.6201h41.4395c6.94531 0 12.8604 -4.42969 15.0703 -10.6201zM335.61 48h32.7793l-16.3896 48z" />
    <glyph glyph-name="sort-alpha-up-alt" unicode="&#xf882;" horiz-adv-x="448" 
d="M16 288c-14.2197 0 -21.3496 17.2598 -11.3096 27.3096l80 96c2.89551 2.89453 6.89844 4.68555 11.3115 4.68555c4.41406 0 8.41211 -1.79102 11.3076 -4.68555l80 -96c10.0703 -10.0693 2.90039 -27.3096 -11.3096 -27.3096h-48v-304c0 -8.83105 -7.16895 -16 -16 -16
h-32c-8.83105 0 -16 7.16895 -16 16v304h-48zM288 224c-8.83105 0 -16 7.16895 -16 16v17.6299c0 9.51074 4.14355 18.0566 10.7402 23.9199l61.2598 70.4502h-56c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h128c8.83105 0 16 -7.16895 16 -16v-17.6299
c0 -9.51074 -4.14355 -18.0566 -10.7402 -23.9199l-61.2598 -70.4502h56c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-128zM447.06 -10.6201c0.600586 -1.67969 0.931641 -3.49512 0.931641 -5.37988c0 -8.82812 -7.16406 -15.9951 -15.9912 -16
h-24.8398c-0.015625 0 -0.0263672 -0.00195312 -0.0419922 -0.00195312c-7.11426 0 -13.1514 4.6543 -15.2285 11.082l-4.40918 12.9199h-71l-4.4209 -12.9199c-2.07617 -6.42773 -8.10938 -11.0801 -15.2246 -11.0801h-0.00488281h-24.8301
c-8.82715 0.00488281 -15.9863 7.17773 -15.9863 16.0049c0 1.88574 0.326172 3.69531 0.926758 5.375l59.2695 160c2.20996 6.19043 8.125 10.6201 15.0703 10.6201h41.4395c6.94531 0 12.8604 -4.42969 15.0703 -10.6201zM335.61 48h32.7793l-16.3896 48z" />
    <glyph glyph-name="sort-amount-down-alt" unicode="&#xf884;" 
d="M240 352c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h64c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-64zM240 224c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h128c8.83105 0 16 -7.16895 16 -16v-32
c0 -8.83105 -7.16895 -16 -16 -16h-128zM496 32c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-256c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h256zM240 96c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h192
c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-192zM176 96c14.2197 0 21.3496 -17.2598 11.3301 -27.3096l-80 -96c-2.89551 -2.89453 -6.89844 -4.68555 -11.3125 -4.68555c-4.41309 0 -8.41211 1.79102 -11.3076 4.68555l-80 96
c-10.0801 10.0693 -2.90039 27.3096 11.29 27.3096h48v304c0 8.83105 7.16895 16 16 16h32c8.83105 0 16 -7.16895 16 -16v-304h48z" />
    <glyph glyph-name="sort-amount-up-alt" unicode="&#xf885;" 
d="M240 352c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h64c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-64zM240 224c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h128c8.83105 0 16 -7.16895 16 -16v-32
c0 -8.83105 -7.16895 -16 -16 -16h-128zM496 32c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-256c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h256zM240 96c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h192
c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-192zM16 288c-14.2197 0 -21.3496 17.2598 -11.3096 27.3096l80 96c2.89551 2.89453 6.89844 4.68555 11.3115 4.68555c4.41406 0 8.41211 -1.79102 11.3076 -4.68555l80 -96
c10.0801 -10.0693 2.90039 -27.3096 -11.3096 -27.3096h-48v-304c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v304h-48z" />
    <glyph glyph-name="sort-numeric-down-alt" unicode="&#xf886;" horiz-adv-x="448" 
d="M176 96c14.2197 0 21.3496 -17.2598 11.3301 -27.3096l-80 -96c-2.89551 -2.89453 -6.89844 -4.68555 -11.3125 -4.68555c-4.41309 0 -8.41211 1.79102 -11.3076 4.68555l-80 96c-10.0703 10.0693 -2.90039 27.3096 11.29 27.3096h48v304c0 8.83105 7.16895 16 16 16h32
c8.83105 0 16 -7.16895 16 -16v-304h48zM400 32c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-96c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h16v64h-16c-8.82422 0.0078125 -15.9775 7.18945 -15.9775 16.0156
c0 2.57129 0.608398 5.00098 1.6875 7.1543l16 32c2.62598 5.23926 8.03613 8.8252 14.29 8.83008h48c8.83105 0 16 -7.16895 16 -16v-112h16zM330.17 413.09c53.4502 14.25 101.83 -25.8799 101.85 -77.0898v-10.7695c0 -70.3906 -28.25 -107.23 -86.25 -132
c-8.36914 -3.58008 -18.0293 1.2793 -20.8994 9.90918l-9.90039 20c-2.62012 7.87012 0.610352 16.9404 8.18066 20.3408c7.59961 3.28516 14.6064 7.64258 20.8496 12.9092c-47.6396 4.76074 -83.0996 51.4805 -68.8301 102.53c7.62891 26.2793 28.5596 46.9287 55 54.1699
zM352 316c11.0381 0 20 8.96191 20 20s-8.96191 20 -20 20s-20 -8.96191 -20 -20s8.96191 -20 20 -20z" />
    <glyph glyph-name="sort-numeric-up-alt" unicode="&#xf887;" horiz-adv-x="448" 
d="M107.31 411.31l80 -96c10.0703 -10.0693 2.90039 -27.3096 -11.3096 -27.3096h-48v-304c0 -8.83105 -7.16895 -16 -16 -16h-32c-8.83105 0 -16 7.16895 -16 16v304h-48c-14.2197 0 -21.3496 17.2598 -11.3096 27.3096l80 96
c2.89551 2.89453 6.89844 4.68555 11.3115 4.68555c4.41406 0 8.41211 -1.79102 11.3076 -4.68555zM400 32c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-96c-8.83105 0 -16 7.16895 -16 16v32c0 8.83105 7.16895 16 16 16h16v64h-16
c-8.82422 0.0078125 -15.9775 7.18945 -15.9775 16.0156c0 2.57129 0.608398 5.00098 1.6875 7.1543l16 32c2.62598 5.23926 8.03613 8.8252 14.29 8.83008h48c8.83105 0 16 -7.16895 16 -16v-112h16zM330.17 413.09c53.4502 14.25 101.83 -25.8799 101.85 -77.0898
v-10.7695c0 -70.3906 -28.25 -107.23 -86.25 -132c-8.36914 -3.58008 -18.0293 1.2793 -20.8994 9.90918l-9.90039 20c-2.62012 7.87012 0.610352 16.9404 8.18066 20.3408c7.59961 3.28516 14.6064 7.64258 20.8496 12.9092
c-47.6396 4.76074 -83.0996 51.4805 -68.8301 102.53c7.62891 26.2793 28.5596 46.9287 55 54.1699zM352 316c11.0381 0 20 8.96191 20 20s-8.96191 20 -20 20s-20 -8.96191 -20 -20s8.96191 -20 20 -20z" />
    <glyph glyph-name="spell-check" unicode="&#xf891;" horiz-adv-x="576" 
d="M272 192c-8.83105 0 -16 7.16895 -16 16v224c0 8.83105 7.16895 16 16 16h75c42.2998 0 80.9004 -30.5703 84.6699 -72.6797c0.225586 -2.44238 0.289062 -4.91895 0.289062 -7.41895c0 -13.5479 -3.38281 -26.3115 -9.34863 -37.4912
c15.6377 -14.5762 25.3984 -35.2832 25.3984 -58.3262c0 -1.59277 -0.046875 -3.1748 -0.138672 -4.74414c-2.50977 -43.1396 -41.3105 -75.3398 -84.5098 -75.3398h-91.3604zM312 392v-48h40c13.2461 0 24 10.7539 24 24s-10.7539 24 -24 24h-40zM312 296v-48h56
c13.2461 0 24 10.7539 24 24s-10.7539 24 -24 24h-56zM155.12 425.75l68.2998 -213.48c0.376953 -1.36035 0.580078 -2.79004 0.580078 -4.26953c0 -8.83105 -7.16895 -16 -16 -16h-24.9297c-7.35059 0 -13.5488 4.97168 -15.4199 11.7305l-11.9404 36.2695h-87.4199
l-11.9404 -36.2695c-1.87109 -6.75879 -8.06934 -11.7305 -15.4199 -11.7305h-24.9297c-8.82617 0.00488281 -15.9883 7.16895 -15.9883 15.9961c0 1.47949 0.201172 2.91309 0.578125 4.27344l68.29 213.48c4.12695 12.9004 16.2168 22.25 30.4805 22.25h25.2793
c14.2637 0 26.3535 -9.34961 30.4805 -22.25zM89.3701 304h45.2598l-22.6299 68.7002zM571.37 171.52c2.8916 -2.89453 4.65918 -6.89648 4.65918 -11.3066c0 -4.40137 -1.78027 -8.38867 -4.65918 -11.2832l-208 -208.21
c-2.88086 -2.91406 -6.88379 -4.7207 -11.3018 -4.7207s-8.41699 1.80664 -11.2988 4.7207l-112 112.21c-2.88477 2.89453 -4.66895 6.8916 -4.66895 11.2979c0 4.40527 1.78418 8.39746 4.66895 11.292l45.3008 45.3008c2.87891 2.91309 6.87988 4.71973 11.2969 4.71973
c4.41602 0 8.41309 -1.80664 11.293 -4.71973l55.4102 -55.5l151.5 151.5c2.87891 2.91309 6.87988 4.71973 11.2969 4.71973c4.41602 0 8.41309 -1.80664 11.293 -4.71973z" />
    <glyph glyph-name="voicemail" unicode="&#xf897;" horiz-adv-x="640" 
d="M496 320c79.4756 0 144 -64.5244 144 -144s-64.5244 -144 -144 -144h-352c-79.4727 0.00390625 -144.079 64.3818 -144.079 143.854c0 79.4766 64.5244 144 144 144c79.4766 0 144 -64.5234 144 -144c0 -29.5293 -8.90723 -56.9961 -24.1807 -79.8545h112.52
c-15.2734 22.8584 -24.2598 50.4697 -24.2598 80c0 79.4756 64.5244 144 144 144zM64 176c0 -44.1533 35.8467 -80 80 -80s80 35.8467 80 80s-35.8467 80 -80 80s-80 -35.8467 -80 -80zM496 96c44.1533 0 80 35.8467 80 80s-35.8467 80 -80 80s-80 -35.8467 -80 -80
s35.8467 -80 80 -80z" />
    <glyph glyph-name="hat-cowboy" unicode="&#xf8c0;" horiz-adv-x="640" 
d="M490 151.1c-38.7695 -12.5898 -93.7305 -23.0996 -170 -23.0996s-131.19 10.5303 -169.99 23.1201c9.50977 57.4102 39.5098 232.88 97.71 232.88c14 0 26.4902 -6 37 -14c9.78516 -7.45996 22.0947 -11.8906 35.3369 -11.8906c13.2432 0 25.458 4.43066 35.2432 11.8906
c10.5098 8.07031 23 14 37 14c58.21 0 88.21 -175.51 97.7002 -232.9zM632.9 188.28c4.27637 -2.87402 7.08008 -7.75195 7.08008 -13.2871c0 -1.94043 -0.34668 -3.80078 -0.980469 -5.52344c-0.730469 -2.01953 -77.3203 -201.47 -319 -201.47s-318.27 199.45 -319 201.47
c-0.625977 1.71289 -0.966797 3.56543 -0.966797 5.49316c0 8.83105 7.16992 16 16 16c4.12012 0 7.87891 -1.56055 10.7168 -4.12305c1.01953 -0.899414 102.42 -90.8398 293.24 -90.8398c191.89 0 292.16 89.8799 293.16 90.7803
c2.84863 2.61816 6.6709 4.20996 10.8428 4.20996c3.2959 0 6.36035 -0.999023 8.90723 -2.70996z" />
    <glyph glyph-name="hat-cowboy-side" unicode="&#xf8c1;" horiz-adv-x="640" 
d="M260.8 156.94l98.0098 -84.4805c78.1904 -67.3896 129.98 -104.46 233.19 -104.46h-546.12c-14.0498 0 -27.1299 7.53027 -35.8799 20.6396c-9 13.4707 -12.1201 30.7002 -8.57031 47.3008c20.04 93.3398 85.5703 156.06 162.971 156.06
c34.3994 0 67.7695 -12.1201 96.3994 -35.0596zM495.45 175.23c114.95 -7.90039 144.55 -101.841 144.55 -127.23c0 -26.4922 -21.5078 -48 -48 -48c-97.0996 0 -141.24 35.46 -212.31 96.7002l-98 84.4795c-35.29 28.2705 -75.5 42.8203 -117.29 42.8203
c-7.09082 0 -13.8906 -1.16992 -20.79 -2l6.88965 65.21c2.96094 27.6465 23.6035 50.1143 50.3496 55.79l191.15 40.5898c4.31055 0.916992 8.73828 1.34277 13.3203 1.34277c31.6191 0 57.9131 -22.9785 63.0801 -53.1328z" />
    <glyph glyph-name="mouse" unicode="&#xf8cc;" horiz-adv-x="384" 
d="M0 96v128h384v-128c0 -88.3066 -71.6934 -160 -160 -160h-64c-88.3066 0 -160 71.6934 -160 160zM176 448v-192h-176v32c0 88.3066 71.6934 160 160 160h16zM224 448c88.3066 0 160 -71.6934 160 -160v-32h-176v192h16z" />
    <glyph glyph-name="record-vinyl" unicode="&#xf8d9;" 
d="M256 296c57.3994 0 104 -46.6006 104 -104s-46.6006 -104 -104 -104s-104 46.6006 -104 104s46.6006 104 104 104zM256 168c13.2461 0 24 10.7539 24 24s-10.7539 24 -24 24s-24 -10.7539 -24 -24s10.7539 -24 24 -24zM256 440c137 0 248 -111 248 -248
s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM256 64c70.6455 0 128 57.3545 128 128s-57.3545 128 -128 128s-128 -57.3545 -128 -128s57.3545 -128 128 -128z" />
    <glyph glyph-name="caravan" unicode="&#xf8ff;" horiz-adv-x="640" 
d="M416 240c8.83105 0 16 -7.16895 16 -16s-7.16895 -16 -16 -16s-16 7.16895 -16 16s7.16895 16 16 16zM624 128c8.83105 0 16 -7.16895 16 -16v-32c0 -8.83105 -7.16895 -16 -16 -16h-336c0 -52.9834 -43.0166 -96 -96 -96s-96 43.0166 -96 96h-32
c-35.3223 0 -64 28.6777 -64 64v256c0 35.3223 28.6777 64 64 64h352c88.3066 0 160 -71.6934 160 -160v-160h48zM192 16c26.4795 0.0273438 47.9727 21.5205 48 48c0 26.4922 -21.5078 48 -48 48s-48 -21.5078 -48 -48s21.5078 -48 48 -48zM256 256v64
c0 17.6611 -14.3389 32 -32 32h-128c-17.6611 0 -32 -14.3389 -32 -32v-64c0 -17.6611 14.3389 -32 32 -32h128c17.6611 0 32 14.3389 32 32zM448 128v192c0 17.6611 -14.3389 32 -32 32h-64c-17.6611 0 -32 -14.3389 -32 -32v-192h128z" />
  </font>
</defs></svg>
assets/lib/font-awesome/webfonts/fa-regular-400.eot000064400000102362151327220410016107 0ustar00�ȃ�LP���6Font Awesome 5 Free RegularRegularL331.523 (Font Awesome version: 5.15.3)6Font Awesome 5 Free Regular
�PFFTM��^���GDEF*���OS/2A�SX`cmapǠ���gasp����glyf�;y�	 m\headɾL�6hhea5�$hmtx�t�Tlocaѡ�H�6maxp��8 name:�>"v|[post�iA�{��K���_<��v{��v{���������������@��LfGLf��PfEd�������.�T:� ���@��@@����@@��@��@@�����`������@���@���������������������@���@�����@����������@��@��@����@�@���������������������������������*����"�$�.�>�D�Y�n�p�s�u�|�����������������������3�D�F�J�N�R�\�e����������������
�I�M�[�]�t�z����������������(�[�������V�g�z������������������"�$�.�>�D�W�n�p�s�u�{�����������������������3�D�F�J�M�P�[�d���������������
�G�M�T�]�q�y���������������(�X�������V�g�y�������������������������������|zwZYB81-(�����������}zpf`USC
�
�
�
�
�
�
�
�
�
�
�
�
�
�
m
H
��g��$
�
�
�
�
�
�
�@|��n��*��^���@� D�
P�F�	>	�	�

h
���^��
�
�*d�^��H���:x� �z���8��8�j�(�Z���&���>�^�  Z � �!*!\!�"~"�#P#�#�$f$�$�$�%�&0&�&�''F'|'�'�(V(�))f)�*L*�++�+�,*,�--|-�.z.�/�00�11p1�2L2�3,3�3�4>4r4�5R5�66R6������$"/.676>64'&'.7�$�,�$+u**u$O##O$��UN��OT$	**	�W"##"W���1�"/&?'&6?627/7j �� j�A	(	Ad�>>�d||&g�	DD
�g&���b~~b�BB����"*2%2#!"&=46322654&#"#"&#"6"&462&"264:7O��O7
344b3#99#3�xTTxThP88P8�O77O�#33#�TxTTx�8P88P����2"&4264&"'&=4;2�Α�Α��uu�uU C	��Α���u�uu�
>��0

���'3?GOW2#!"&5463254#!"3%+"=4;25+"=4;25+"=4;2"&462"&462"&462��`��lj����������`�pT��\TT	uu���(8276#"&#"+"&5&5466325#"&#"63232P,A+=C%gA?		')%g�E;f9-4Lf9p
�( S		� ��   � ����
2'4634#!"7P�� �����0pp��Tv��T�#.2#!"&5463254#!"362"&457676��`��l9""((xX��� �����""�0((xXP��A�*/7%76#!"&5463!2+!547&?62'7'&76� 
�� �`���Z
0+t:�A�+:g �`
 ��r��
Z+10:�A
+:����+2"&4264&"%//&?'&?676�Α�Α��uu�u.>>	>>	>>	>>	��Α���u�uu��>>	>>	>>	>>����2"&4$"264/&?676�Α�ΑK�uu�u<		�	[			;�	��Α��au�uu�
	�		[	=�	����4<2"&4264&"%+"&=4>7>54&#"/&7632"&462�Α�Α��uu�u3.

		%@&?A""��Α���u�uu�� 	
		
	
64�""@�!+2"&54732654'6"&'&47>2267." /AA]A
!-*���**����Ô%%�%%0A]AA.!
aPaaPPaa�MCCMMCC������2E#"'&54?632632#"&'7"'632'67.27#"&'&4767z
��
-AY-Ap/54[�*&%J/54[�*&%��?-r?-�$aP)"!CM��$aP)"!CM����#/;Ggo7#"=4;27+"=4;2+"=4;2+"=4;2+"=4;2+"=4;27#!"&546;54;2354;232!3!2�((`((`((`((`((�((`��0(�(00��T�(((((�(((((��`4444��*�������&2#"'#"&7>7&54264&"6?�Ԗ�j/.AJ
5Vzz�z(
&�z�z.%8FV�^�^^B3*

�2#!"&546;25#"/#��`�
	7��
	7�@� 	7���	7��H�"&%2#!"&546;32%763!54+'#"7!P�p�@��P?�@��P��M�1� @0j�h*@���/DT%"&=46;2+"&=46;2#3"&=46;2#2#!"&546;27"&=46;2#��J�		�0
		=`������0		
P		��0FF����E�#6L%#"'#"&'&'#"&767&54632%3264&"67654&'32?&/
A<@g;B
,zV@hKe�KA__�_x@1gL1R>
'6,'#+7B^6,	Y<71B\BB.# /#$;<Z2 �� �%&?'&6?63 � j�A	>�d?7D	�g&�D~b������#?O&.7>&>6766&&7>>&6&.7>76�*

'>D88(%6*

'>D88(%5
,36<FD 
,36<FD �
	)`

t7�*6%(88D>&
*6%(88D>&
i+
 DF<63+
 DF<63
`)	

7t��@�+72#!"&5463"!54#2=!37+"=4;2+"=4;2� �� �HH������`0**����d((((@�#+%#!"&=4?63!2!'5!$"&462"&4627	� 	i��N�Ni� �M����pp��M���0RZ2++"&++"&=46;2327167>322654&+4654#";2'>'>'4&"2�"11"$5."S
	
@

@
			*2V�,
 L=
	
�61""1
"(3(�$/$v,#$�&= 
&
����0RZ546;&546321;6;2+"'#"+"&'&7&'#"&7;;2675&'&'.#"#""2641"V2*			
@

@
	
S".5$"10[
	
=L 
,���"1$/$�(3("
1"
&
 =&�$#,�����0RZ46326+"&=4754'1&'.5463274&#""&#"3>=4.."264j1""1
"(3(�$/$v,#$�&= 
&
�m"11"$5."S
	
@

@
			*2V�,
 L=
	
�����0RZ"&=#"&54>76716=&=46;2''26=6767=4&'#3263264&"�"1$/$�(3("
1"
&
 =&�$#,�@1"V2*			
@

@
	
S".5$"10[
	
=L 
,������*9B++"&546;546;22=#"&=#"3%2=#"&=#"354/&+�P�P�t`JTX
j�0
~��0@0�>*���`�
X��
0@����+3;#!"&5463!2#3254/+"&=#"362"&4264&"���N��zN
�
*�H44H4G"">��`"P��Nd

h���4H44HL""����2#!"&5463254#!"3���Z�����`�pT��� 22#!"&5463!32>567!5".'&'��`��`#dd#�`�#FF#��� 0)N		N��7

7��`�A2#""&54653+"/&2#4767654&#"#.'&546�		&		8(�	N	PIg,0+ K54L +0,ep		&		(8��++%%�gIB25=1$05KJ60$1=52BGi������#17%#!"&54767>54675462!&5414&"0"&53�	��	H88H��8,B\B�4&�V



C,:V

V:,C;d.BB.d�%����#/Ka}754;2+"3"=4;2#+"=4;2"=4;2#!54;46;546;23232%354;23#+"&=#7#54+"#";;2=32=4�((�(t((L(��@
X
p
X
��p(p@
p
@��((((T(4((|$${	(

(	��CC_

0����+7%++"=#"=4;54;2327#!"&5463!24#!"3!2`X XX X`��`0��T� XX XX���`��T������2"&4264&"�Α�Α��uu�u��Α���u�uu�����/2"&4264&"6"&462"&462>"'&>2�Α�Α��uu�u��/�/!f��Α���u�uu�c\
99
'����02"&4264&"6"&46262"&42&'&".7�Α�Α��uu�u�so~)R��Α���u�uu�c-m1
����+2"&4264&"6"&46262"&42+"&463�Α�Α��uu�u�s(

�

��Α���u�uu�c-}@�'3?KWco{����2#!"&54634#!"3!2%+"=4;2+"=4;2+"=4;2+"=4;2+"=4;2+"=4;2%+"=4;2+"=4;2+"=4;2+"=4;2+"=4;2+"=4;2� �� ���```�����````b����� �� ���n������'2#!"&546;54;2354;225!3���0(�(*�����`4444�p*������%&=46"&462264&"t�4�Α���u�uu��e�Α�Α��uu�u����'7"=4;2#7#!"&5463!24#!"3!2l�l��`0��T�  ��`��T������#2#!"&5463!%/&?676���`��<�	[			;�		���`�p`���		[	=�			��A�1X&='.54767675467'".>7676#!"&546;2+"3!2=42�;1+6(-$50I;"��!0<*&>-.
���VT"(� 6  )K-;(!9 ����h)A')
	�+`	
��	����
%6&?6764&"2"&4264&"\B�B9ZΑ�Α��uu�u>�B�\�Α���u�uu�����
&732/&6%#!"&5463!24#!"3!2}�ccK��`0��T�cc���`��T������
&%#"&?67#!"&5463!24#!"3!2C�ccu��`0��T�cc�`��T������
&7546&#!"&5463!24#!"3!2�cc��`0��T]�cc��`��T������#!"&546;2'!#"&=#r���.L� h
�^���rLL�� 
h����),5%+"=4;22+"=43%#!"&546;2'3#"&=# ������T�Lh
��T����T<L�� 
h�`����+OW%#*#".#+"&=46;>7>3232>'2654&+4654.#+2;2'>4&"2�88-E/@

c
0-3	$$2Kh("m&%@

���!$,3

�
	?:/454"N)
9

G6#�&B"U����.6Z%+#".'.'#+"&=46;232>3:32264&"2654&#6&'6&'6+"#322>54&5�2$$	3-0

@

@	.G-88�]b

@%&m"(�"454/:?	
�
3,$h
)"B&�#6G

9���(8@H%/"/&?'&4?'&6762767'7''77&2"&4264&"�<G(
+(G<<G(,(G5MM[44[MM[44[�V==V=Q.!!.!�+)G<<F)+)G<<G54[MM[44\MM�=V==Vc!.!!.����&"&463276"3267&5467&j��j	%a>!"$h;VzzV0UT�2*@�Ԗ#(
>$?P9-2�z�z)$mU2T����
&/&?67#!"&5463!24#!"3!2cc���`0��T#�ccE��`��T������"264$2"&42"&4S�uu�u��Α�Α�B//B/�u�uu���Α��/B//B����#/;GYe54;2+"3"=4;2#"=4;2#3"=4;2#+"=4;2"=4;2#!54;463!232%354;23%�((�(�(X(t((L(��@
P
��p(p��,((((`((((T(4((|$$�

�HCC�����7=DJQ#!"&546;2'!#"&=##"''&76767&766>77"6467&'6&7r���.L� h
��

6'.
$
3�N-

x^���rLL�� 
h��D
.0*[�"�
#����P#!"&546;2'!#"&=#32+"'&/+"'.'&6;2476;21676r���.L� h
��


	

	
^���rLL�� 
h�	&b		+	H		k	
`b		aa
����B#!"&546;2'!#"&=#2+"'&'+"&?'&6;26763r���.L� h
��#...		^���rLL�� 
h�=N7NN($����5=#!"&546;2'!#"&=#54;2*#+"73264&+r���.L� h
�HE#
	0

^���rLL�� 
h���%
/c����(0#!"&546;2'!#"&=#57676&2"&4r���.L� h
� ((X�((^���rLL�� 
h��@((X��((
����!$1>FJ3#7#53#3#57#!"&546;23#"&=##5#7"&?5332264&"7#5�  @    @ ����Lh
0 P�2 
-@   �      ���&L�� 
h�`�W&'a  ��  ����/=#!"&546;2'!#"&=#/#"&=46;7664'&>.r���.L� h
��$$)
	^���rLL�� 
h��$8$Y

:����7#!"&546;2'!#"&=#6/+"&=46;2r���.L� h
��5hh^���rLL�� 
h�p4%h%����$'0<M7#"/&?67#!"&546;23#"&=#7/&?6&?6/5&?�99!����Lh
��	7		7!99!c66����&L�� 
h�`�	�		�O66����$+"&46227''64&"264''&"67&7gΑ�Α��/p/522�/B//B�5/p/522�58�Α��D5UB//B//p/522�5/p/522�����!6#"/&='.77'76�2<
	p+) r�%%�;�`l���!�|.;T0<�2$��-�	�����&-4#"&'&676326767'7&'7'757/?'#� ^a&'O� ^a&'O�2'G,4%=/@G�<&
G@]+G'%e:@,O+
b� ^Mb� ^��
*/%L=�4J/}45/J��>J%?4I0==	@�+/;GS_2#!"&546;>32=#!7"=4;2#'3554;2+"754;2+"=4;2+"54;2+"(

�!
+@�`=�lPx���hhhhhh�
��
!
���� ��x``P((��<������5;'&?63!"&54767>77"'675462'&5414&"&53z


��


��>��	.	|"&&8H;B4&�


�


��0

='#D�

V:7&/.B�`%����22"&4264&"#"&54632'&#"3276�Α�Α��uu�u3)?=OP<;&!$**$$
��Α���u�uu�)Q<<P#	.""2�3K2#!"&5463254#!"37&546'&76&546'&76��`��l�R@AR@=�R@AR@>��� ����V6/.4"%6/.4"%	���+/37;Ocgo#32+"=!+"=4;#"=4;2!54;2'35!355#!5#'#"=!+32!543'2+"=#"=4;2'355#+�H��HH@H@ �@  � ��@�T���`8L@�HHHH@    ��    @���4�4pp�pL
��@�CGKOSgk���%#32+"=#+"=4;5#+"=4;5#"=4;2354;2+354;2'35355#5#354;5#"=#+325#%5#"=#32+"=#3235435#5#4H�HXHH�HXH�   ��   @��� 8XHX�4   �HHH�HHH�  �       ����  @�XH@    ����%#!"&5463!27#!3546;�T��`�LLP���
hdT`��L��h
���(42+#!"&546;54632=#"&=#"3%254#!"3�0��0��*������0@0�0*���`4������%+132#!"=4;467.5#"=43!2#!2654&"p2//2��2//2h��KjKKjK�?ss??ss?LllL�`LllL���)p6+"&5<&4&/&=46>62654&+"&=4&+"&=4&+"&=4&#"/&=4&354?6�$C	+
�
b'8#I$@:H							a�+q,(rd	!

U"49#,)(
�r

		

		(
)		

t	)

9U
d������W6+"/&676546>654&+"&=4&+"&=4&+"&=4&/&376u.�
w!3 P4			

	s�O)��
�7~!($%)!ф


L		�
�		�
�		�
�	&

�w��� ["&7.7#"&463'.>6#'32?6=4/&#"/&+";2+";2#""(
X++^O8�+1b"wFFw	b
��
	��		

		

 6 
#+<+	88857'�%0�7@;

			��@�@%#5'&+"&546;7#"&=463!254/&#!";2+";2-�d�!4$r�!/!&'v�
��
�r�

c�$|H&!$40/!!!��L�
@'���,_+"/&5476'&5467&546767>3266&&?6&"/././&;267�:
E-k=,\(' 3)+ /+ $
	4
[*k+L	�*8*V R
*'"6"	Rh
��

��iz"$0V#������[k{�6+"/&676546266&;2?6=4&+"&=4&+"&=4&+"&=4&'546;2+"&7546;2+"&754;2+"f!9%�"m!'7'!-��m	�			

	DL		K
(#Tw�7�''J
w

�wT

		

		#

#		�

�	R`		`		`		`		``������ [6+"/&7'&>'462654&+"&=4&+"&=4&+"/.;2?6j 6%�'75888	+<+#0			

;@7�
("Fw"b1+�8O^++X�F

		

		��	
��
b	w����*22"&4264&"+"/#+"&=46;2'254&+�Α�Α��uu�u6+0 'Of(: ��Α���u�uu�#ZT�U3)!@����;C%++"=#"=4;54;2327#!"&546;54;2354;232!3!2PLLLLp��0(�(00��T�LLLL���`4444��*������+37"=4;2#7#!"&546;54;2354;232!3!2|�|��0(�(00��Tx��`4444��*������;C%//&?'&?6767#!"&546;54;2354;232!3!28	66	66	66	66���0(�(00��TI66	66	66	66���`4444��*������'72#!"&546;54;2354;225!3%/&?676���0(�(*���	K			,o		���`4444�p*��Ɏ	K	-n			��@�!&+2#"/#"&54?6327673#0
�



��
�



����������	��5=?	Z5=?:��.��/,�!/�����*2+#"=#"&54634&#!";?326�&&�}`&&�	��		�C
�	�&��&^T& &�� 		��	<2
	����/2"&4264&"%+"&=46;2+"&=46;2�Α�Α��uu�u(	0		0	p	0		0	��Α���u�uu���		�		�		�		����"&462264&"+"&=46;2��Α���u�uu��	�		�	'Α�Α��uu�ux�		�		����"*Kem3#"&5#'#"'&/#+376;2264&"6/&'&6?#"##36???5#'&+"6?6264&"y@
:#;U	
@v0��Q			�l	-	'9>*a!
%		�-=TA7
gn			@�

 	L
0��

		
W	;#>�X

 
$I�><3
S0

		
���3Y#!"&54767>254'&'"."#3!2'".'&'&?622>3676��`(_dQ4/V� 
77
	77	��!K

O���B)
	%F��
-

-
	,

	
,	����'+3H#32+32+#!"&5463!232!6"&462"&=463232632#���@P���4&&4&�	
''
	 @(@(0�0(����`�&4&&4�""��@�0<HT2#!"&5463!6"&462"&=463232632#7"=4;2#'"=4;2#'"=4;2#� � �4&&4&�	
''
	>ppppp���`�p`���&4&&4�""@@@����"42"&4264&"&2"&427&'#"'%654&"6322632�P88P8L((7Α�Α��8.-%%u�u%)@%$%@X8P88PX((ԑΑ���0&

'$4@SuuS@44

����'<2#!"&5463!"&46;2#"&462"&=463232632#P�� ��`		`		4&&4&�	
''
	��`��0��``				�&4&&4�""��@�$0<HP2#!"&5463!3&54632326327"=4;2#'"=4;2#'"=4;2#"&462� � !''9ppppp�4&&4&���`�p ��""P@@`&4&&4���2#!"&54635!3!2��`��`����`�v���� !"&463!2�@

�
 ���&2+#!"&546;54635!%!32�0��0��������0@0�0��`@0��������%/&//+"&=/&4?5/.?&/&?'.?>7'&/&6?'&?6'&6?65'&?6546;276?>76/76�'	H;		:H	'
'"PHHP"''	H:		:H	(
'"PHHP"]"Q*T;.		.<T*Q#	**	"Q*T;.		.<T*Q#	**	����-59E%"=4;2#2+#!"&5#"&=46;76;2'3'&+"!7"=4;2#�		��		R"d"��^��L ��P		��P		99�`P��0����@�$4<G%#!"&546;#"3!2=!"3!2=452#!"&5463"&4627676!���
tZ��t��x""1((hH�� 0�
P��0�_""�((hHP����12#!"&546;462&"2644++"=#"3!2P��P&4&6x*�*���`&&�lT$$������"2"&4264&"74;232/&6;�Α�Α��uu�u�(CddC��Α���u�uu��tdd����"6462"$4&"27+/&?632�Α��/u�uu�-tddtYΑ�Α��uu�u�(CddC����""&462264&"54;546&=#"��Α���u�uu�-tddt'Α�Α��uu�u�(CddC����""&462"264#"=#"&?6+gΑ�Α��uu�u�(CddC8�Α��/u�uu��tddt����C�!$2"'&?63#3%3'#37'377#�d����dM94D��4�4�?D4dxD3aax4����U�0``````�������%5E2"&454+54+"327#";22#!"&54635"&5!#2!46P88P8�@�

��

0%�`%%�%0B\BB\fX
7
��

@
��%%�%%���72#!"&54634#!"3!2'//&?'&?676��`��l�l==			==			==			==		���`�vT���==			==			==			==		�����+>62"&462"&462"&4&2#"'#"&7>7&54264&"6?����Ԗ�j/.AJ
5Vzz�z(
&��z�z.%8FV�^�^^B3*

����'72"&4264&"$"'&>276&"&46262/&"&76�Α�Α��uu�u6/�/!f!�l(%
&	��Α���u�uu�$
99
''A)				���� 3F2"&4264&"62&'&".?"&547'.>6"&5"'&6?6�Α�Α��uu�u�j">'	

P	
�
	
	P
��Α���u�uu�)
q

	

@	


����+GO2"&4264&"6"/"&4?'&4627626"/"&4?'&462762"&4�Α�Α��uu�u���4&&4&��Α���u�uu�kL�&4&&4	����'/7?K2"&4264&"$2"&4264&"62"&4&"&462264&"62"&42+"&463�Α�Α��uu�uB//B/<((&X/B//B5((&�

�

��Α���u�uu��/B//BQ((,B//B/�((,�����-2"&4264&"6"&46:"&42'&"&76�Α�Α��uu�u��N<=
	141	
��Α���u�uu��]"		
����/6=AEIMT[2"&4264&"6"&462"&4622+"&=4635#375#"5#75#5#75#5#326=4&+�Α�Α��uu�u���(		h000p000h(		��Α���u�uu�c#  `	(	((((		����%-2"&4264&"%6"&'&62&"&462"&462�Α�Α��uu�u2MRM)�����Α���u�uu�"
".."

N����
#+97"'&'6762"'&'6762&2"&4264&"%6"&'&62�q�Α�Α��uu�u2MRM)��		""		""		""		""ڑΑ���u�uu�"
".."

����.?2"&4264&"%6"&'&62'&7>2/&"7&7>2/&"�Α�Α��uu�u2MRM)��#&#
	
&
	�#&#
	
&
	��Α���u�uu�"
".."

V))))����*DU"&54762"&'&62766/&"'&7>27"&4632&#"2654'2$"'&7>2/�,..�RM)�)
	
&
	#&#d�Α�gC:2:Suu�u��&
	#&#
	 "EE��."


"|)),%(g��Α" u�uuS!))����
19A%6"&'&62/.7>7>7/&67676&2"&4264&"bMRM)�pF�F�Α�Α��uu�u�
".."

>
FDF��Α���u�uu�����*82"&4264&"%6"&'&62.?'&63'&4?6�Α�Α��uu�u2MRM)��
!!PP�PP	!!
��Α���u�uu�"
".."

/((0000((�����/;JYh76"&4767&67632&#"%67#"'67327>'&76762+&/.?"'&?6367>'&676u/")7Hg<5/6S:.{$9Ig30)-S:1C/"��
	
4

Z4	

4

&.:T&@R"/6D�6I;-�E�9I;0�TR"/s
Z	
4Z	
4p/%T:����6O2"&4264&"%6"&'&62'7'&6?62/&%/&?'&6?62�Α�Α��uu�u2MRM)��#
##
��Α���u�uu�"
".."

G#		#N	##	������%3ARc76"&476"'&'&6"&'6726%&>2&.""&'&62766/&"'&7>2&"'&7>2/u/"M"/Rl#l~l#_r_��'
���
&p�p�RM)�)
	
&
	#&#�&
	#&#
	�R"//"RP 2;;2 1;;�^��_	H``�."


"|))"))����:BJ2"&45'&"/.3267>54&"&=&'&6276&2"&462"&4�Α�Α8%&1;u�u;1)�)����Α��,		+'%_9SuuS9_,


,�����:GT2"&45'&"/.3267>54&"&=&'&6276/&4?&?'&6�Α�Α8%&1;u�u;1)�)!!
	PP�P	
!!��Α��,		+'%_9SuuS9_,


,((0000((����'/Db2/&"&7>2"&4264&"62"&4&2"&45'&"/.3267>54&"&=&'&6276�(%
&
�B//B/<((&�Α�Α8%&1;u�u;1)�)					L/B//BQ((,��Α��,		+'%_9SuuS9_,


,����%-52/&"&76"&4626"&'&622"&4264&"4(%
&
Z�MRM)��Α�Α��uu�u						$T
".."

6�Α���u�uu�����'/7?2"&4#"'&?64/&4?64/&762"&4264&"$2"&4��##))�Α�Α��uu�uq			�Α���u�uu������?O2/&"&7>2"&4264&"%#"'&?64/&4?64/&7662/&"&76�&#
&
	
Α�Α��uu�u##))&#
&
	
()��Α���u�uu�			�)����/7If%#"'&?64/&4?64/&7637&"&7>2'&462"/&67676#"&4632&#&'654&"320##))F&
%(%�ZS
�/4g��gg�
u�uuS-�				D

	�!	S 	1(�Α�g.,
 Suu�u����-2"&464&"6"&462"&4622+"&'&63�Α�ΑKuu�uu���E..E��Α���u�uu�u�S	-<<-	����/=2"&464&"2/&"&76&7>2/&"2+"&'&63�Α�ΑKuu�uu�&#
&
	
�
#&#	
&
�E..E��Α���u�uu�u0)#))M	-<<-	����)72"&464&"/&4?6&?'&62+"&'&63�Α�ΑKuu�uu�!PP�	
!!P�E..E��Α���u�uu�u(00b((0R	-<<-	����'52"&464&"2/&"&76"&4622+"&'&63�Α�ΑKuu�uu�(%
&	Z�E..E��Α���u�uu�u$				$S	-<<-	����2"&4264&"62"&462"&4�Α�Α��uu�uk���Α���u�uu������)1CO2"&4264&"$2"&42654'"&547&"&4622654'"&5472+"&463�Α�Α��uu�u<**<*7"@*<**<F"�

�

��Α���u�uu��*<**<F

/<**<*H

�����!1AI2"&4654&"5462275462&/&"&7>262/&"&762"&4�Α�Α�8u�u8-f-�	&
%(%p(%
&
>.!!.!��Α���:PSuuSP:r

��

2						*				D&4&&4����&.92"&4264&"72&'&#"&46&"&46262"&46"&54�Α�Α��uu�u�<&&
As�$"��Α���u�uu�#.@-P1����0A2"&4264&"%>"'&>2''&7>2/&"62/&"'&76�Α�Α��uu�u/�/!f�	#&#
	
&�&#
	
&
	��Α���u�uu�
99
'�))%)����'2"&4264&"62"&46"&46:"&4�Α�Α��uu�u�4&&4&���Α���u�uu�;&4&&4{����)72"&4264&"$/&4?&?'&62'&"&76�Α�Α��uu�uC
!!
	PP�P	
!!PHC
#r#
��Α���u�uu��((0030((0J6'		'V6��"^&�!
,��1U���	4	6Q	�	D�	6&	Lz	0�	
X:	.�	&		E	6]	&�	�Copyright (c) Font AwesomeCopyright (c) Font AwesomeFont Awesome 5 Free RegularFont Awesome 5 Free RegularRegularRegularFont Awesome 5 Free Regular-5.15.3Font Awesome 5 Free Regular-5.15.3Font Awesome 5 Free RegularFont Awesome 5 Free Regular331.523 (Font Awesome version: 5.15.3)331.523 (Font Awesome version: 5.15.3)FontAwesome5Free-RegularFontAwesome5Free-RegularThe web's most popular icon set and toolkit.The web's most popular icon set and toolkit.https://fontawesome.comhttps://fontawesome.comFont Awesome 5 FreeFont Awesome 5 FreeRegularRegularFont Awesome 5 Free RegularFont Awesome 5 Free RegularFont Awesome 5 FreeFont Awesome 5 FreeRegularRegular���	

 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJ�KLMNOPQRSTUVW�XYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~�����������������������heartstaruserclocklist-altflagbookmarkimageedittimes-circlecheck-circlequestion-circleeye	eye-slashcalendar-altcommentfolderfolder-open	chart-barcomments	star-halflemoncredit-cardhddhand-point-righthand-point-left
hand-point-uphand-point-downcopysavesquareenvelope	lightbulbbellhospitalplus-squarecirclesmilefrownmehkeyboardcalendarplay-circleminus-squarecheck-squareshare-squarecompasscaret-square-downcaret-square-upcaret-square-rightfilefile-alt	thumbs-upthumbs-downsunmooncaret-square-left
dot-circlebuildingfile-pdf	file-word
file-excelfile-powerpoint
file-imagefile-archive
file-audio
file-video	file-code	life-ringpaper-planefutbol	newspaper
bell-slashclosed-captioningobject-groupobject-ungroupsticky-noteclone	hourglass	hand-rock
hand-paper
hand-scissorshand-lizard
hand-spockhand-pointer
hand-peace
calendar-pluscalendar-minuscalendar-timescalendar-checkmapcomment-altpause-circlestop-circle	handshake
envelope-openaddress-bookaddress-carduser-circleid-badgeid-cardwindow-maximizewindow-minimizewindow-restore	snowflake	trash-altimages	clipboardarrow-alt-circle-downarrow-alt-circle-leftarrow-alt-circle-rightarrow-alt-circle-upgemmoney-bill-altwindow-closecomment-dots
smile-winkangrydizzyflushed
frown-opengrimacegringrin-alt	grin-beamgrin-beam-sweatgrin-heartsgrin-squintgrin-squint-tears
grin-stars
grin-tearsgrin-tonguegrin-tongue-squintgrin-tongue-wink	grin-winkkiss	kiss-beamkiss-wink-heartlaugh
laugh-beamlaugh-squint
laugh-wink	meh-blankmeh-rolling-eyessad-crysad-tear
smile-beamsurprisetired�����f��v{��v{�assets/lib/font-awesome/webfonts/fa-solid-900.woff2000064400000230564151327220410016027 0ustar00wOF21t
�1K��?FFTM`�N
��h��B6$�0�4 �+�.[�u��p�(�כUd��{-�n�Pn�ɟ�_=V2�e�vp�~������U��1���=	B��b����mvS�.Ɣ�w�C+�$���(��MMI�iH}��O��4�7s�Y�)**���}�^ڴ��{^���R
z��
�fȌh4dD7�:1*��Cj�l�8M��T��]}�]?Z��v���g�yV�^\?�wM|�����Ws�yf%��PL�����~ˇz�w�S�uQw�����Ŭ��EY�!
����j�O����c‘
�>T|�؂�W���Zk*�9�ͽ����XJ���/I`x�R��c�h��w��?tm�l�LQ
ɠ���hMg��x�
�1�F���cU�b|�3���v�Kr�f�H 9 @��� ���'
j��ɡVq:�Q��+���ߎ_�(���J���~��/��Y<"������GB�:��P�B��7q���Kҭ{��F"
�3��ҧ�6?C,��B��P�V��
���C�C*�ʯ\���+���a���Xz��Tzdn�P�M	li���l2);!�wX��xho�u!��Ф���O�ߢ����Ew�$b7X��8d�H�s���z#d�&��J�G�Q�M����rV?��ʳ&���#ʼ�t]������+���*�*���������v��$X�Pˑƚ������� h�z�{��/F�-Y�!a�1�&�;�^^�U�U�E����!O�����/+~ϻ����*���QН|�n@W
.P�tcl�--˴���]6���ƺ��۫�뺕u��[�SN���i����4-	�"�fC�ן�`�����ϙ��@������l=��g�-�C8��B�X�������g�~��p�1%�x�A�X��Es������f�M!~
e�+M��˷���{0����dRtP����)��y��\�����L�H%J9A�)( 8l��v�6{G�L{����Lt��,���+��V��VR����Z���u��Q�V}���{	�����Et
�>L9������K�4|�_B!��=�3,b��SIMS��e,}�	6S�3u��o��s^0�I
���](�b��/�Jq翚ZWaE��;�}�g��i�����>��é�/
�U|D�~I.E���8���n;~���3�ӫ���x��
����dԒ�Hv�י}u�7���=��Ǚ�Է��s�������9��4��t�ƚ�㵭�1�H�_�P%B��1�.��r�!�F�O��p5��W�V�)j9^���㬶׸�Ec�yo{��	?"����,ê�X�B��I�U��UT�H�A����{Kq4o)Q3O�	'�9�2n�;��v��8s;�ἧ=_ת�4M�U"�,F%����,��`[?J��*�D8�q���YD
)�ڻmj:���a�e!S��
��y߭���������).�����!B���;b[�ڧ8K�Ђ�%�(��c�c���i�Q�NPN��%��k�}c�|��H7p7�\�s�kʵ�I���S��(ma��l�A���Qo����j���'���`7�*m~^�{�>Uc]�
rSp�@�L�f�5x���Pn�彻sZ��]���B�7f^�Y���R��RE��Vr������'��Wհ$)"	ɩ������w�����]XR�aߌ��^��[22�)Uh�V�p�ŗ�F�,�@W��ʃ�J�fo��Ǯ������u��O�2�B������#�)���s�ܞ�hʯ�7���OE��xJFIyMK_�h���MM��������G@LN��ʙ'(8Dt,B:�X��B�""��``j́c�n�(�j��YX�9�>~�,	%�e��5w�FD'$�e����5��w�ֳ1�y%�j�i֪m�PZFVN^AiUm}KO۵={��]�V7�^�G&�V�w�n^����_��?>��u���7���������O���;�>ʋO��?|���g/^y����9u����ߖ��$�?�<:�D����(��,����o��K��.�>z��q�u�\�����#r�>
	�V|hnO1c������@d��v��ə�ӁX�$@�"��W:���/��ۢje��H(�3��]Ӝ�a�U��������ܦ#�.�ySQ�ڴ�i���V	���;J���i=��Jqn7��y;��r^�9�s�����\�y�g�煟����|>�����/��?_�<1���O�?_���ߞ����"��M����6$9�^6���t��B�2�(�L��X�X12%g'����r�����x4l���z�Z.iG��p��u�l2�߮��b>���J>���)W&M�d���B:)U"L�}>}[Y���h���l��),����i�������]/��~�Y�ƣa��n5�"O�(�Y��m�F�)��P�@`��m�"�5�ʰ�[���0�j�T"rYL:�J�
C�Sm-u���e	x��A�W�Ť���l��(�I�01�@n�
r.��k��>�j1�:�R�fҩ�澎=�U�Đ��%�E��Z?�#�Z8�Ƶւ�U�Ïh<�Z�|��;V��P�i{N�w�F��*������ߍ�jj����ͫ��#|��j
~{�I��p�8@��i�l��p���X�.���2p^rq�;�앯w2&�Id{H)�����.�
�c\$���
���~�*�$i:��!��f3�Ҫ�.l%��-����M}�޲�o|�<;P̯��%���*f�Q�ۘ���aX�	�3���{!l�+���8	d��V�����6����x_~�+�]��!#�7�h�U�f$Ҫ���l�*"�^3�"��[¸�r���&L��ALf�&x�
��:�8���%2X��ϑ�ʋ��I�B�ѷ�i��
n�Rڮ�����n���_%WaV�h�43���-_�S�z��]�S̜qؙ�.�/;#������OL�e^����"YV�go�*��l�	#��Q��e
�f$j4�|{
�T��'�_��z>�;8������2ۀ~>�F���ǿ֓;�v�i�}�<$��G�R�rB+n0a
ͷ���F��o�lu�m�NI�b>q9/{8���9�o�8֥�����n���Ĵl����~22��s�m8�V�햸v#�,�����ګgnU��$ku�+M�g-��yݱ�&��&F(���#�BceuM�Ba����]�cg/ϩ9��J��Z�/��]����'Ruu�^�x����d͉w�	���#�z�d��w�P��+N;a�L��օ�� Fd!��	�m�9�=x�<�D�GG�j��VDQꀨ=d0�t�ؕ���_�$ي\Lj�n"��eL�{\�k����i�hk��\�4:�����
`�#y�E�b[�X�y�^����%H�G����]߹�G��|�΂B�9�ߺ���T���zs�k�Q^{�t��5g J�VWk�(\�Os��ʻ��p�o�Ĕ\���<���]KP, �'��B�Z����T�=�kk̰(|����h����&�����f�lD��n���~�ne��l�v����	�(2u��j�⦞�7֦ɬ��s"V�R�cyQU�$��⮿��xP*Z�Lvy͌�|˚��n͑+.�1`��	�Q�Ix�4J=~|e��{��dz���P�W���g�J���5�{պ�p��T���Z+A<p�.|��La�vC$Vk���=��ޅz{+��n�@���!ص?�X�1��O:��:��Z7ͭ�6�)#�}��~A�U�q1�x~����1&j�)bsf��e�c��
uő�f��[��w3ws!,��:c��B��{U��S�H��U���"� �=�R?r����)^�5]2z�i�ڵ65�ܨ\��H�= oŢ줣��>�j��i,U*[Kxɶ�4c�"&���a`�����sUP��߮�a>Oe9��{�^���d���n6�#����j�ѽ�	P����,d 8����@_P'yf��4�j�	�w,�4>�W㱟L|>Kޅ��Zk�B�_ �c�&�x,�5�0��l��;��h4��n��O��-*��h�]-F,D#�y�c��l�Z���(�ʼ�˭��1�߃��<9g�=����T햇j�M72�ZS����Y"w���<Y��z�b#�f���],	���>Nm�)W�ڣ�Q�*�R�'+|�k@��cӚ���v]�W�YK?YR��*�Q+(Ck�[d�8��yF#gmz��
37��q-L��hD+LA�P?'��3Ag�\�YLI��d!>���9E\���1ץ����cjc����K)f-�L[�p �A&31xY�H�`)[��NJ:�nc�B?�[���n��9��xz�yн�e�u����*H|p�L��)s��׌���TUo��T���������U�"ɨj<�q��{U�a�YܠIp�be�{n��ٚ��!gԗ�$���R��~g�:�?j�"n��5�g̽�u�_�q��E�W��.(kz�T�Q����P���s����|A��˸4U����8��f���w�J���>�#��j��٥��-�v;*��!���W,k�wŅLm��y=��YB�(o��2	��
o�9i�S2��TV�;`m��*�l�%4~a0Tf-A��uMV�
�(}�:��Xn��fX+8�ה�b0{��h��l��v�$�3r�ϥ�(�>��H�n��(hG�T�u�1�Q+���覒���3�R�������R}��
��@
��H�g�Y�j��RMJN->��C�U�X̂Œ]��d�Z�tqI�7��ke"����`�8�i��7��$^�������1��F%1Fœ�Ĵ>ƺJ2���3�[Ym^�L�]�rl�	ðW�::LK��L�9��s�0-�_T�#潣\[z�t`
�~d�����(��c���E�7F,��C��K.�Si��䋏�wS[
e|�,�(��Ө����2�̼��9csdO��mk`�L�T�K��M&]|(D�L�p0���Te����b���Ӟ�u��߬.�Ƽet�|�����h���''��
Ԏ�N�Y$��„��ۮ��NO���!Y���f<k���=�o�y)�n�`���m�1�
�@��n .ǒ!.d`a�2�WpiSE�3ݘw���F�l�U&��.O�o��!��:U��k���ޡ�wU�H����)��9�=Zx't�h��h��p!l��q ԛ~��6x�����Q�vp�w� ��f�tX�u_�?;m�4�N�0!��Dٰ��
��rȡSm��z��x�AaÁn��:pD���������̊�ɀA,j	�J�~�'�Y=�8�P���r[O{l�Sǰ
�N%�e�S�A�U��r�;�3I�נ�Ԩv]��@O�@��?O�N���;��̗�|nM5�Ʀ"�զ��K���sH'�~�V.�&Q�t���\�Qu*CNIs��Yƛ! Wű�5$
���x�Ҟ٧�F�����آU3�֎	��[�C�"��Ÿ"g�4��n\ӧ;v��	b�n��q��΢���#4�-;��!��1I^"��vy�-��uM���m��[�vQ�M��d2/�4�VE�s<�m$zN��m$:��d�t�e<�^�W_�Ѳ��ˤs����6���R���H�x��Aga*č�<�T�!�N�V��]�F}�4C����DQ��/7�F6�U�1ʰx	�r�C��ܚ�>����2��imK��!Y�^�����hs<���8������:<���W�%�o����5 t�d`�є1�����vך:c3���?����g�KI�_Ƭ��L^&���8>^Rך����V��b�r��Q��L`N����`=C��dQ� �6�H���u�dz0���L9f,4��-�h� �>6�i@���A+����{X*�~���K�!��G�f
��PH�S��UkY-�{(<�����%�|�=}�������А�7�K���PB�<!NEM�߳�O��_���1�do+Y�����xB]��
�X�����a�^�/��VЌ5`�3�V(n���GŬ	
��2G-f�%���n��݆�~I��
�_��#;��5Cd���5��i]��Iq�}!OsD���D-aU)�(�q�e�ǻE��!)���n/�b-��,��+ ܩ�io�Z�v3A�w���e�X)A�r2��0��p;7^ԓ
��,�i������f���y/��@��BR�n`�8���:��#i��R����[JJөO���~�\��bD^���k���z��Itt�i4��7�`�Fd��A���R`B7`ç ���-�&D>�o1����Z�mu�=���u����҇����x
t�m��E_&b	��D��!MG�Y�)΂%j��e]	Df}ϟ��y�d� �j*}c�=%`�C�v>O�Gm�2�.BZ��aXe;�!_�%�ɷdLup���F@��Qc�F�l�W�M�։;Q�ݤ����d`9!�U����(�2���<�Ka>��E�.y��αD�C%���97��A�q�[\�{E7��2Ki���|�4�#Hx��i=�HU�p��(ӄއ�e)Q�T,Ǫ)�S�y�x)��S�}�)f�x�(/:zT�iK�&Y�F���ֈ�`��C����06S�J"$��>&��1�.��(�]�“�p�%�D%�� �U!�	�6��C�%B�h�z�UFI9
*ެ��*i/����-|q���a%��H`|��c�}U������볒���To����cϝWzf�9�gM�it�����VmT0��#`�3�z&[M�%~��Y���)�
	�Tҁ�(��"G$|��l~$ô��qY�ə,��Nt�.|>%x��,m1���4�9ɾc��#̢�Ic]�.F������v�엒�]g�kȢ�s��{5[1rgf)���[I'�B���6I���UODג��i�?��7d�J��
�AM�t�B_ݳ�f���D:�C]�Ҙ&��z�GM�$�2��R�:��D��9�?��}ZU����f�K�3�<F��6*��i��:�|�ܐ
�����BW|��;'#��oCR=-A��Tu�N���B�
�����12PD���P��!�6�u�'+�I4�Y��8�Yz�����4�l�D��'��+�E&O��S�W3��#$)���\��ƛ�;�(�<�bZ��/�#n�ˌ�I�������s���ɏ<9G��i�8���֤{��tm�C��2����tE�'y��AS�
cuyJ�{�t?���d�߯%J�
MA�D���A���ڝl�z�6�h���j���)ogQ[�Q��ӣ�S���d�4c���l�m�cO�Z��]��/'�y:�z�h�Y�5�������j���+i�R�ax�1b���w�6l�-j+���:+�N�|�X��g�|$��X�}�-�[[����D�1�c
t�PA��#��1w�\t϶�P��3�Bf�\�w�)�d&� �$ߡz2g�c����H4-B�-u�*{�������=�c�}�&&Ĉ�]F�DV�ҡ�:�����^,]%���j���Y:�<Ը���$U�(�R�M��R��y��V&E�<�.�g�v7'��υ)�GػBCҶ��s�����v���ٕ2u��t����K����!Q
��iBߧ�f������Bƻy�)��$��]|\�W|��*�9���Dϥn
������^��ܙϟ^p١���4t_�m�ڹ�x��&RS�
-T���HG÷�n�҃��H[����s�O�|6�ZWӪ�$?�p�L��$��q]ם�>0=�c�BܥYOm�h?|y҅��fC�ڸ�<�$|�ax̳� dF��J̦��5�8��8*X���z�XJ��C�CE7�n��.g�$)N����t�"C��*�HDy2j�xe<��	ٝ٥=j�@���}{�����6f~Ie�ү}$�������S���d]:���~�/�[?yLm�e��6�n���e@Ķ��i�
\� �	�i�~4�
t����2I�k[e�(
�`{�-����Ĩ��L��D�y�PL�$��̨�H��Сb��6Řq��y4*%+j�nt3�BV�D�����Bml�6H�r:<��l9�TU�bd`��r!2;��s5��(���F&U)��J7�\]�I��ӥoYrh�x!�#���1��4���H�.]��n�cn/�Z���g|�Y^�&�`.z)>�.��ݣ�3��-$?���p ���ǒ���}Bd��9��9�'=:��tC0��gvR8��9�
c��\d�+|*��N)Sg�fd�㕭�c�2��G��J}!y�ҵ
3*?B��K��bbF"�yȢT�����<υ��Y��Hʝ�wɼd^����2f�8�����e�}����t��қK�x.T�����Q�c\)�|1��g2}��5'��v^�@�e��\`�)������{�P\�r�ҥp�W�>Ka�Œ�"�D�ߢ�k�͖C�w���~f���
���n5
V��A�i��A3�Z?��1��vg�`�d�2�I�u�*�N�X�����t`_!��%��7L�V|`
;B�B�{3�WV/]
�䧟����dM��˗���քTd����cijb.䐯Q�4�g�
~�C"ì���/�T4E0GX�#���>���Xj���d���ꭠ25!��"��$�T���\t�-rG\�;5
`M��G�Q��%�j�3�Hd6�X�_a�N�������(.��A0u2
5��	=~�o�X�w��k| ������DS\�Cv���(�����������\��Q�xI�����I�ڕd�E\�]᭫h�3[�$3Z�}q!f�`rP�e�k"�2h�䌲���=�m����ƈ��c<�f�L��Dz��G]�\���Fe�泎�cf�A��(��3n��W�AUEqY�4�킒��	��"�w\���f�&	��5C^�p�F<��IRF�Ҵ\��̄I�#Ҵ�'�g�Ќ���I=�3SZMۻ��uO��\r��{<d��ڢuPQC�f����C[��~0�a�Uf�I�Nc'����Y�Z��z��a�3�,�����/4Ā�Q�fPX(:����2�`�r��	����H�VO�ð��y�V�NJAV;�)��ǫ�V��)^*��2�5)���V{>qq���Q&-�߾\*�\4��]����Y���b1ژ?e���ۜՂ1��KW\ێ/�1�4I�v�L�]Ւ�x��	��T��N 8)?��?�Ѐ�Ҙ��ycj|�B�E���l�9}�s��ʗ�L��3�7q1/��8��۶ʸT�%�Ϋ�c*�vX�P�21/.�aQ��E2s[/�/PS�Ϛ��Ȭ^P65o��y$�U��X��=v�D��GX�p�ׂu�L���v9���%��g�=Bګ�3BP��6D�O&|_�~ih�V�W�FkV�E����S@P��d=wyTSs}]c�q���q�w�#�������lO��Nj&���	�"{�i������{d3�	A�b���i<��(?�X�G��Ǿ꾺���#�e�+�?r`��o�8�ZmHF�؆
}��v��`(\�����t?�ו������o%����r�'B˲�\'K��,�a﬌}-yY̳�mQ�X;#<���q����dn;�Id��x�w�҂�x=B�"����n]^~��hs�����?�4�}���6���֭�4"���n��	pIf��N�ؑ3��HB��yZ��p���a<�z�<��>
^<��xF�(JȔh�0�Ѯ��j�e�We�K9�e9'���4��.kᗼI��;(�p��,1��&�#�ry��k/ʁ�*=�Z��M�4Q�T�2xȝ�?C�����]d��c�80�ދ�}Xo`����.�!#?L� Dpy��ԉ��&f�j@���KV�х�t������)C�KJ�B9��n,l�;�A�͗���C[�a�����j�eGTg�̔��^�O�`xz+����LB�H��o�ۑ����3�uiϗ^{=��:���EDyE��-M�!F�+��c_��6,>d���15�`a�Za)�B�[�1ւ����J�0&�
�پ�YZ*��}k��և�buϭ߅i�+T2rY�y|1(Ney� �#2�e!�]R��
�辑���������bq?u�c0qB��Vn|u`��vM}�/<[~f�$��w$:�L~�c~��5�'L��l�gD�e�8�-�������fe�yi���t璡���u6B��z�taLK�=^Hm�`-&���_�*�?�?%px���>XyIW_n��>T�Dy��#嵼�������1奓��auU/	�%�
+���w	1*�u8��
�6�$�B���q�c"%64�^��U��w
z�$\�].Sy�uK�/eɲ���85b���H�����Q�CJE�J$�=~Cj@i��]�|�%�␻�|�l�ՕM������Âg��,ʯ��Y)��/�G
�`U�h��������xh���Ƕ&vaz�����]�h:Wwvz(Ö��n�0IJKtn���p�D5��li@!�܄aE��^�	�#9+�~Ww�>�3�JΓ�/�w�5��k'����X�@�0/l���������VV�7�֫�ř���C�}d�ϗ���+B�c��������ͺ�}���&鋅R�п�ݖBt�*�N<�B�Y�2XA+��gp6��w����,(���\��h`(�cѸ��q���
L�|/��U�c-7\�ҳ���d��0S�3� WI5�Y���0-�J��d��{�,�/D-TkK�T��,����ã��E�7hK3�P��R@ύ�J�����M�V	�=��jx)�h���2#Z�Uz>>NΎ�: �)�g�I:�K~�RX�Ovd�k��v�t��B���MT��r-zv�=�Jj���}�\)v����uկ�c�W=|�BŽBEv��`VF�z��*�1eX���E�`D`������gt���
�5��Iah�	��W_��j]���Y�J�G_��C�]Z�ȒBgmb>3��ͯɃC��~4�̃�Ь�þ�D^���P �eKt0Ϸp^.$,�
���B45��NAru^�30�����lj#�� L*�k�XBk��e�	i�oÉ�{��7ȑ�"�1#
�S�:G	�[���y#V}&�:�$������:�����JPyzB���
�3-"oaG�e�}��.��N<�,hj�ڑ�\1�@��<h
�NjX�U��h~y�&[ӨDb3���%BX���Lp�vH)8�Gat�(��*�jwJ�T��sܦ��(�Z9�,2�l�z]i����[�>?(���3�W�B9��7沈��p,Ӓ��*F�* ��6���n`��͛���z��7;��Pk�W_`�l�|���K�\ą�9v�%��훭'`5e�A���Nm�!+��f��e�P��X�_9�LZM�Nw*)Ⱦr�7D�1��ۉ��7��`�P��4_�ʵBk�'�C���mq-L�A�l�R�`�l>�����Xb8�!&�x�`�l��D��7\��;X��yqдN���益a���r�X27�÷`�#�I�_z������v��Lq��M�<�[�����J���w��W��o1z>|w�=D�Ĩ��{e��~��{;QIkY�)�5�������yNt�NC�j����RQ�ߏ�>ڷXA��Ǎ
�;�UT�?bX�H��ebF.x^�fS��	��m�򙼕�,d	#H��ѯh��㏚m".�g��I��x�3`�o�(�r�R��^h�+b�f΋ztd��+R����J(I1ߋ������aV���]�T�q���ҏ{���䗶\:y*I*2��	 B�ߎ��%\q`�����bI�C�7w�u;zu7~em��.��ڼ��U�ʵ����P�2.B�n/V|TǢ��\,Tt���y�+%�'/Q�͎��&����-އ��\T?����n�1f��y�%g�&�ڀyЋEC��[z҇]l��	�/Y�`�95S'��|�=����u��O	���Nt�^$����}(Hc���M�t�N9�~	�:K4A��C�X���̺�aX�}��8\X���sQ�
�	5�!��oӱ��d��
���-3�d)��{n�y�<�|`.-:-0^���1����m"Bp~�{�蚝3��y�q���׎gQ6Ꭲ��d�'�"r|�6��b4O���%�g͚5B��p��u�2)y#�t�n�i� \9~&'�U��;K(M��K�lw,m/e`d��?�R:�c��;��/�fO��8D*h�Z��az��Uc`j�%��$�g���[�P9�u����<%,��X����6Z�����f_ߤ�cmpR��ΎF�D��i�78Y.
�����`��i�0h�q�8\.�<4�z�� xbz"��Z����<n�>�0	k1��c�8_x4�]�/�A� 
�0�m�9,7x%�!��EG��"jzw �h�z�466}c�h���	�?�Gm��[f�$�Z$��|�	��~�ߡ�0�@lb��Piq�A�r�P��vkb���- ��@v",hل�MBj�wy<��x-�pn�pH+A��cй�]ԧR��ä�H�ґ�;��x��o�g�@(��ޝ1v�����Q78�
��3��,�V�M���?���1��΢>���[<���n^�M�[G�ֿ��[d<r�
C��^�h�OcTsa���4g$9�T�`	���nB\ "/1:�b�P��8�~��Eo���v`8<�f�r����IlK?N�"<;���'�č7�]��E��U��ܯ��
���m����N3oJ��h�sE烠w%"��	��
Q��ύ����y�r�n`�,�NI�j��M\J�w7��*��EBw�խ��� AF�y"ޛ�5�{*rR�m�ӣ�����I|(�%���ޓbAO��;6l�ɘ�|�6Z4�h{Ν_#T����0�+f�N4@��ڤԝ�H
�.�Si����K���n�k�g|����`���Y�䆸-r�P��!Sf��D��YD�Bk�|R���㐾��0x32��>�F�H�Ĝ���@�mG(���q4_WXlA�
B�N��껉ƴs6���O���‰�G�9-J��P��`>�������M��
�G��OaOIO�ߪY�@ȇys/�)x�K
���U}���<ذ(�`�\��L�f���3�\~�4;���Q	�#���!�ڰ����Q}��f�^��1�I����i��v�ED�(�~DlB�~��^�����%��C!ړ2�Ql�C�-�X�K�ʼ���]ka�P�'zTڢ+�3̄W6�]!+�Qx:�/���r���䰐�ϐ����^kܠX���b��\���?��R�ꕮ~M��������LF
�.;y�+�n}.*]-N݉��E4�<���t�{·i�'�L ,.Qń+�5`�����A�,nx�Ѓ���_
�yem0�%�\��n��s����r�˓ʝ�TN)
p�lq����V��sv�Yڤf�dgJtu=�B��E�׍6ݺ�?�"�c��a4�sk�$��"6^8�RL<`�6
�7�S��wm�D��L�	x�]�
1>=��Ω����15�Z'�%[��f�0yt����W@ˇ{��m#�����nI�.<ݷ��c��������n=��^���n�̗v��Ո5�E|>�h����1�;t"p���M�7�?>�<��Tl7���q%���~R�q���
�Y~�}�
d��rhg�HQ��
rL�����kRÇ�a�^���y��(�2�3;U;���N�9`%)!�bM�N����BY;�@��2��7-�hc"4��ݿ�07P6-ݏ����V����m ���=��>�]�������O��ƚ��7��k_�Y���ʗu��Q�t]�&�x��m�$�������KR��`�&IN��b �>�d��F?����,LIJ��pS*dw�LD��6�
�!��+~0���aJ���'�>��6kM�h=�Ǒt�N��>����Βv��J�
�t)R�vJ�2�rVNr��t�DiƦ?B�3�/[b����h�EÐx�p?-��w�M��/�ݗwz�	N�����W�\E��/�%�v~|M��������-�g��o�ZR�@��tis,���r-dX�d��y	�Q�W٪�>Y)�V�+y1��U$����Fz
O��EVM�K�����˗F�y���?4tE<�,_FR�K_��E"�Gw�m�Ng��B��/\��`���ej|tEx��6�����U=� [��0d�g���1��v]%����P���XS�J/���~B�?�6Pv�Pg���%ƕa$��q��(���b�m�y�$�E����M�_�F66c��i]!̏f���A���ȵܱ?3Պ�D�s�U��?��dC$��^����	L7�د
|K��z��b2����@܌���<ӈ���W#$(>��p�oCqF�(pv� ��V�I��L=��O�ZV�-���D���R�`��а}ٞ+?Q?��e��!�@n�^]MKԧ�-C�
&pm���p�_zڳ��_۳��-�3ט��Se�Bua*���bI?��-ҒhZK����	��o��Zf��C�+���l
���<,�N�>�`��A��*צ�O��_�)r��e�A�q�1���kPLm�mfW:+�1݋��dt�����tE��	�U�3��j
��yѠ��;�zU4�6��G=�oN�8Yf�*?(��CQJLe*�AP�G:K��IH��>�G�M�)�%�T�5�`��W�W���!��-ϘL��c�1��ET��\~t?+���]�F�Tu&�n�n�Z$�X�E9�v���s�
	�p�9�U���D��`������G)�R1 ��>�-��o��{:�N#s��bx��8x~KӇA�Z���Z�!�+z�%����v]�2�ӺNCb�	�,)�:%i��T�Z�s2����ع�v+�ҹ�,��bn�Kf�OP!�k��1�(��'�|�:�[}����{b�Jfyf7Ww��څP.Ŝ�f���k�I��)?��1�p��	]����v�й��������ž���G�r��gѸx��z�}_�����nzc���3�{�2���L�,m s�M8�-P+�gn�Z(	0ޟ6Ya��Q�N1�uE{wq.���լ��M�8H�xT�],����������;�ݤO7.S�/��V¥�D5@W�|��}iiu�\���(��M�k$埦��*�)�f����H���l�@Fy_�5{G��B�B�����=����E}��3�����F��'��gw�d�z`�ҷ��eaL� y*�>���%���=���У܆����m��X��	��a����ԳŤ�m��[S��j���u�LQ�(�,������!��Ĩ�1]y�;��z�4�<�(Yg�ŷ]��˖L|�~�ŭ��9��X�c�#���	*�:�&_"���^چL����3fb�����.��
|[�FO2���ù��}@+y2��;�w+�TU��A�-]�#�?'�|�(�4�KZbh�M3f�}9�e��U�������T�OS�;�'���*���R������c�N^Uo�y�$F�W�$�	餝�װ���p�(;��޽�ԨD!}@I���I�z7����ZB8�pQ�I��c�(�J�D3�m�C�V@\�V�R9��j(|^��3����

<��'�D��C�s4T9C� e74��@)^��h��f�kxk�2x-�X�GX6u1���B��PX>��G���q�"ھ��5ڟ;�nn^��%ܧ�Z �GbG����16��bũ����luC9���d?��c�Xk�-���XȲ\�S�zW*�E�g��h��e��1��\Y�E�5|�|{F�����%2�-͡?��"9DI�̬�s�4gm~�O�.K�����a#n0�h��ùSXWD(����1?/Q�x�f��jt��gGC��AX�Z��_��0K���
���,@���N�x�L�V3���r��{�2�
�����U���p�<�=�4_�&���y��2)�4Ε	�sT>4�ꆊd�j��Q�K�U1�T΍��ҽ6ƾW���x����Dƹ.�Юr���?�72��cq���Q��]�g2�^�÷�^c$�,�8'S�$-Nj��f���#��j��ms��K�G
� �s��1P��@�U�Dq���lf�!CI���DI�O��ɐ!�p8-�?G3="H����V*�`��P��ڶ<6v�?(��"H��p���Sx'U�k1�7nJ��{ɨCi]sV{
�VK/��E]XW��N�fIy���t覠��a�����B��rGRkv�]0�0�c}5���V�,�yyÝ!m;��~�E�� �����(_q�!N*G!��`�@?�	o�C�:�}BC��ի�����aL{�-���1�GC}��6�&��o6�Ʌ3��Iwee�at�ǐ��ؘI��M�8
.\�ݲk�+���_�_
�t�G܉��H��X�`:V��d^S�>���}�����p��l���U�����cgzO��sՊ&z!�w���:dZ�a�1e\����#��i���P����ra�Н�_��3
��*���
�C"�����Aur�#+�Tj�Me�1`DYT�v^�o������j��w��r���=��+�Ծ=vZ�H3l��+Ғ��5|$Z�����=�E4�^hg��Ĉa��x�y�/}(v�T���L.u���q���>�<�S2��j�##U�����I���Т��ڮZy`�\���׏�!��;�Ku��S�������ںV�2ԝ�rm�S���&�9䮀�|���a9?I?>+{���y�Ӽ���G��U�����"=�R�ď̀��1AhWl�K� ���GARZk��=@sp��٫�:r�KF>�(���]�(�r̎Q�8B�,Pa��,�4$���;��H��SJ��Zx��K8Q�]XS�;Ҏ���w���8���]��E����Ϛ7�h�=�v�S�8�+��Tʊg_)�^"&_H�챝���j��Qc�:��	$ꂎڼ�]_K�)m���*����A��ß��W����P���+��^!A�~-]r��렺(^�X�G�`\;1[6象x����C���h�"�㼺�rev8����uvN�����o�����
P�_�'r�d���|�H�P9)2��Oţt.`�O ��=�N���zҒ�㑹L�)"������̅�q~\��<$�T�W��p6O����Q
��U��u�U����l�WF����R�ӂ���_��15
�ZN�d?�j��b��<g�e��3��'^d~��7
�����>!d��y�x^�׵��S秠���~'�C�ҕ�u�D��,����)���
	�S�_�<����vY��8a�Q~m.Q=����ڬ�c�Şo7�5,_�
qޜ�83����B������,����r�O��v���͗��ҫ�F���V�N,�s��n��A��\_WZ�ib��]��b��o��>d����N���jY�,T�q.5��K�_l~ACS<2�X4�d4b��2Ut�B�TJ��o�#^fh��^������r��O%��N����i!���p`��?L��cL��;�!�F�BМwޫ���,`�ȴ���~J\��V��-ڐ�ɧޏ�Jd�J%0J�D��ٍ�������G�N�O��֩[h�A`� Y4�ވ�$s�Vį�^��XBll��[�`�����ֹxHg�\3�s�,�/֬f ��r��H�R!Bݴ����0�l�~���d�\�E�=����Fl�'|G�u��Ƣ���g�N[/"�R�h����oh�i�]�L	�t���r�v2���*���R5��'W)��o�_,D�g�8?"��~�ђ˥�)�[a45"Z*�/i
�����t��������������:���թV�Su�9����1y��p_����lX��r���V3O%\Y�YD�����7�dP�KO=r���çOLQII�y���p�q�]ɶiyD�C���_�:��J2�e�F���<�S�F�&����,  ��5p^Nќk�
9�X@�1�l�d�t�s'�|��=%1N��\M.:�3/g^c�fp5�Mz����9�ٍN�J��XwLPqO��6����d�|+I�)h��L·��}"�L��`vQ�*-Dž�W�X�_I+���\I�1n
��1�3��IV�ջ��@*Ws����6;�)��$�)j���^F��mlc��^K��^�c�d� nI>��XL���!��V��X�<Eqа��I���Y���.�U�=��XR�BA*�O�⾔�*�i�'��-mߡ���@q��!)dC��mD���N�
�E��S�������$�*((�Π�r�c���b����ϸ�r�|CC���c��B�E��Z��C���i>�-JԄ�yVq�
4�
(1�\�J�@�Wu��UL�g,�a�A	���U6����Zbq�K��%��<��hP��4S/ؖum�����>8�q�Q)�OIA�M^��F�F�z��;޳2�p:���q��Q'h��K8ˁ{�W��B�x1��\<g}��q峜����H�*�
c�����Sk������F���R�=!�"=!�����u�b�c��,:)�͜ӔM��Y����/;.C����rQ�k€t���Mu��XD�ޱ\������+��0�ٍ��K��ì��]aQĮ�%K[i/�Vm嵤<�ђ�0��L*-U�&|Wm� �f)#D��'m O�>7E�-�a�L{j���5oD]��0Z�ϗ��<�.���#�g�7xW�!L �%����9�e���"�u$�"/���Ib�}b%B����G����q �sm�"��5�+�6E
X%p^&�#�1�.N��\R��:_x
�Q�1����p!{d�v�E���=�����76����x� O��
���(d�_JQ�l��R�h��Rɀ�g2/�݊�:�n|�Ќc��TW���\G�CC�9�)	RdWq�J�V�2��VW��BlѮϫ��Bo耘"��n�`6-I
��=�̠g��2�������G;H��OO�. U���V��j���w%�b�pY�Y�v��79?�^��j	��*��Y=�;�����,�R9M]əW2ʯS����%��F�.0 V�6���.TJ6`���\F�꒹��Xrۑ8
=s@�2�mbڳ�I��d��L1�Mdᔅ�*V]����j^��c�$z���lac��QA!�ۜ"����wFT��S�GBJ��]����3��C6���b�����Ɉ	c4z7@q{��>�HK�U�2E�iV%l�x&U����8������!�!u����R�n�1d�)nh+��UUޗs�8	�H��fƝm�Q^�)�նˠD����|��� uclQ��23"����^�5�XsC�3�m:�d���%�@~�wI��Ȏr��G��v;�oqwD����ұ7j�n5+Ɉ�. 3�[O�x��YdhB�$)�a�^��\�����?�.�#��c������E�7�o�'�l;l���B��[]�f��� #�)��s?@i�hI6�5^�1��x���JK��(��B~B$�
!�|B<:�NcI;۬��&D�̓ wC���:��ʽ6�������3�a�����T���MLA����
���~��rþ+����p7�>�O3 �?R]�)4��h]{*J�I;؄\�:�X#w��E{ƵMw�A3jt�^��ڈ}E㈎TJa��>n���X������>�1u�%tP3V@\]�X���m�{����ȴ�1�=�t,9�~�,�Kn���;9G�,<;%l0J�sϧ3>/g.���gz[s����a�B�^ֲ�R�r2o�k[��������(�9*6�vK|��38 *���Ì�a� ���CIC��j�J֗H
�x��Ni�hZ{�#/F_XEzhKҰ��Y.ƭ��A�G�E����L��M*�u[w�F�r��I'�rDzC�'�1�T'5U�[���\�Ԃ	oQ��:�+)9_s��ӐJ����O�%�c��>�����vT�?r�~9Zx%�;yß|}�+�ʊ��K]�S��Sء�z�^�d�Y�V$����B�^eTd78�8i�J\��g�q�~�����F��d��I�u��K��؁i3�{Q��Վ,�`,��GF�i�J����z:#��?���ޮ�${`�`�R�e��뱺'Z�/��i��;�tK{�-��̝`��&X9.[d��V)�}��ecG2��.Y#xƳMF�������o�0:�-��~�@�}&�1��ydW��Q,��,O4�%
\+��X9(��ͼ�
SWl���o���i8��F_˗���֞;�Jv�[�zv�@h�x���)��-�N`il�Ti�Й��J��W�K�'1��W	@��F�J��O),�9����uu�)dHm���d|�5��;m������=�Y����i�U11pß�Q���5\�.��E��n��6o4�Y'F�V�~�
�=Za���u;�,��2�@�Y�w� x7a��
��3p#�R?�ˀ�I�hC�Z�V�F�����ws�ލ����4���f��G�Jμ���Wj��ȷ���Eǁ�`۲$�4pŷujn�/�Q��w*�ˇn�nւA:��鏡��*��+3]F���2,.́��򸀢�G�,���U$�*<J�aj];��+5��f.���}"%
ф�y�<NqˤYd5�tO<*����Bޙa�������X���-�<�A��h�o��0��x�<�AI.or�O�l���:+��b��o�Rk�X}Z��,�>.�h�~˴%�V�e !#t�c�tX���oH!���#��c�'-�Z�
���$[��b���0w	�7w�;88�uL��`/b:IF��l.��o�Icߌ��>J��Vb+�z˿��T���#���8�f�(�m�w�Þ�si�V����2���vP��u�>�=�Dk-kt���b~�7�Vp�����>�h�{ΤC��uF��(�}�����$�X�WR���2�@^���ꕑ2��˼�rBth$@)�.��w�&Z0Vy��׿��!^�.����锛��BN�dk$���ڼ\��J<�t�U[z l���j9��+J�|oW?#���8�$���b
8�L0�R�R\�/������1�!��7�y��~V�,�ɺh]�+���P���|�h�(������he/~��#Ϻ3�Tm���ns%�#�Ї}�c^��W7 ���pQ(��P.�$h��h<SF��;����Ϋ�)��,1[�}���)���TyN6��ɚ|&�;��p�����Jto&�۞���*a�|�gjC/�8`��Oȫ~�׊Dӊ;�wų֔hڶ�5�*���5�m�.k̙r��]�����rx~RK���0mN}�y�ׁ9��a��g^�l+���4#ȓ�J1^���\;�RR�Y��zᠯ��=����q(vaJ<�4��ɖ4m}'�[Em}�)-�L6kJ��ݴZ	 ʲ\�w)���0SR�����\�7�|���2�O����NĨ�
h�Aj�]Ϣa���y�66Iw8m�L��ɴ�}~�M��r��,�r�)��B�O������w\'[�I+ �h�_SvN�B���Z�8�[�ե�_��jVX�-����J��*%���C\>v��׃J��u�3��J�Z0?%bDW��r*8?�Y�h�N����]�}:�e��0�<i�E���R�z��ؿ�F-��d���Ti�p�Dh��,��}ͫ(��(�y�">T����!�>�K�/�|^̡�L*<���>���k3���Չ� -8a�[7��.���ꉐ�$�#��=?�_��!�3�mϟ��KYC�2d�w�
OA�l玣�4��6lcOHc�JPf�+(�ڎK�};䠖��H�5r����s��o��e
��@�.WM0��~*���>�����c��o�����8C���*'Uٍ��E��c�=
�p+���r�nα�|��Y,Զ�v��W�>k'_�1V.��]#YE���JT��M�w�2^~<�m�.��>C9nG��ͬF
�
;}O��%�
d�&,��̲^������pj^�`IJ����|/R4>�šgUuT"h��p$Bm:H��J�Ajv+�c�*�GӪl��d堙m�6\ƧVz䣁�a}����W�h�͌��A.9sq���ܕ���@�n�2!����_��9���R4���g�^93�\p����1/[%<�p��pA�.��$L�s�
�ز�#�s�-���|�xtn^q��x��� ��kw��Ǖ���'�‰@p??%��O���˅/^�n4���mD�}ʧ�t9uuF����N�����޽D���s�=.Z|����f&Ќ�R2z'��Y��}��'2�P(O#�	�/Wm8�m~�IX��^:�����̴�ēn��l.�����}N�)jNؐ%������ұ‘�l���!.sr�Ȝ�+��M�q���}�T6��8���WZu�k����2i��5+�����m�=���%��\e,��*f;o���QW�RX�&s�~+��)q�LÞ`;Yi�f_�uo���c�܀�7���&�u�W���r=FOB(+�˅eh�������p�Qq����ܐa��F���TR��
_m�jQ�հ���V��j��/'�C\�!�4w۸F@c��=���8�x���C�4�5)vq���b��y&s��Kf�
����	�x�����V� '�v�3j�$�j!���\o<à�\�[��p���"{�H��e�1��Y�!tf�6
��#��\_�&km��vD���t>��%�'�[�Ĥ�E@{�=
Ռ'&y�nI[+BF٨�bE�I!�����V���L���d��h��i��ц��S^�/�*��k��D��}<̂`2Ss��;��$��U�)/_��t(*KL���Í��l��R9����zHڿ�-�Y�~��$UD�����tIe���T�.F�Ymw}L�L�dK���1�����q�?D�Qr���փ���;�u�w��l�}���J��u����%T֡��:��S��)�"��Q�^�du~xٞ�3�N?�S�C�$�I��_���ly�ښ�é^ơl!���Qi�ȉ�~�~�ɼKv$'e�l!eU��i{�AZ���Z`=�f���;�0k�w%G��L
k��E.d��vu8�.t����ũ�Tq��N�4Y<G7��iݮ��:�{?7��a��f&y7M�>L���rO
 ���/<<�D�q[�J�z����b%Om�dk��f���+�4��ݝ��juH�d���)�#:��Kt�w�����G��X�g�׭�)<aJ=�醭�:^�m܉��ՆYd�VN;h#R
+͹g��,�ׂ:�}t��\�"d�4zǥ�V:3�]X(G7,��0K���^�˯9�I�m��U�"�̍���ܜ�K7=�Zzu�0N{xʫ��ds���
S����ߔ��/5��ҩO��(y�~x�0���j�C�y3;/�c�.�+˅�Rhk�.K�g�w'���K�_���h����l�h�U��j"�f6H���9�9��7#�3�f���[��r-�S�ڙ��^ܐ,����E
�qp>>8DfA;��"^xz�"�l=u A��е��;�C~�-���wv�ʲ�ۂ6zq��-��O�:x��$�z�8�)I�����K��j:a
-�G��p��Jwωc}��z#W�ţ'���l{�vϧu,]���
�?_��D%x����g�%ζ)�˹�Q����ٯ8��4�p�5��h��Y�˙L��
I���VT����,3%)5�b\L�H>��ӇVfR���F��gJ�L�'�EÂ������'J����a)��r
�t5��X2P�T�t�u�J&W�1���a�ơ�}C�7
�٩Ų��,�#j�[G�w�P>c��&�ؼ7��>��V���X��oE��j8!�<Z�D�N���u,7�>!e�xrא�r@D���x��R�K��{�J��;p�h�f�xG>����%�2̳朴Y8_�;z����ߜ�h�q��cv+$X:f
>A:�:�'|gK����	,�o�<��|\!v��
KC��H�/�\��Es���g����-�6����q�!o�~5ɳ%����ŽnG�k��A�
02��2��@�к�5��_���Y��u5��a����Mȑ������2vn��}/_��Ő�����=cm��8�r1hp���g�тx��͵4�����S�؍��%��;��R�l�f��=��f,�3�h�癔�*ޤ���ؖ����Ck�ɶ�X���R����lA��S�m�s8���y+|�?U*Y?�##�b���ս�)u�;)�e����RgT�v�Z���^��9lG�ڋ:f��i%���"n�WfK�֊��4n�W�[X�������e�N��E#������%W�7 �e�v񴤱�C�~�zDC�e��=�1m��a��7*�d�����9n�Yd��ڦ/�G��fЯ����\	��`9zO���C�Ǣ�����2E������j��n;g1)2�Y��U�YO�g8�1��hmOs��]��i�~M�DX�z�̂e���p">�r�h��6�^�!�.ۓdx_q�v��ѹ�CY�Ev���s;��<?�s�1:��k���m�G(�Z�s1J4}J9�q�.���(Hx�h*U<ϣ|.8��7�P<#��nO,�����7|������}<����vu���'t� �С鳬��JP�"".�oH��آZ���:�>���0z=��
��X�I�]C.t���̓xР@7��&���t�me�P)Rp�����ԕa�_�<
9U����^����q�Y��!�s�4?&��"A\�Ģ@��%k1���t�?/P��l�*����Z��M`T��!�F��Šr��S��_<����Q]s�#��F9�{�g}�M��D�7��2ά��u��S.14�A4�#�����,���x���1����p?��|����?�Y��]�h��%��D#Z����Q,�<$��ό�$�6�(ɡs,�	#�!���q~�D��\�H���������k_��K��t���-G!<c����7�ǔ��������$z<w� �v?�z�l���0n��Q�����C�,�u��$��e��f���K�>'J����~��D\���숄�5bnN��H-���@��ް�2+�,��#)~�"�aa?�$ ���8 ���U���2a!��岤�w!@\0cU�P5��CPP�K�5�$�q�48b�vї�H���j�Ѱm�Qr<k#�	�f�lq�C�.�����1Y&Ư�I'8lg��q��q�v��Z2�	4nC�s�U�Z~��1�����Ҿ�_��A`�G��LW�F?���O��Ԑ8�i�z�������힢*�8�x�fL܅;!��7otu\c
�u��M	�*��$w��f}ZTta��%��8 ���9���sM�.^f�����xUfm˜�Jm,�n�z�.�+;��S�L��pA�Ch׸�㥣��	�S�+�S=0d`�[� ��/u7EJ0�X���5}��<����hƍ3�a.�p���{���Ź�ɺzB�-���-ʓSm���B���FZ�H�/�Y[�N�<E���J9.��}��?M�B&
2��kVqG��4�E	��R����JEЄ���c�1�<1�6��uW?�G��"�y�_�{{�ΰ�/Q��,=�;�NE���3��IJ��o��r-��zkh�zхt�M�Cٜ/ͯe�Ot5��׫��v����7N_�Sɳͷ�������!�DT G����}K�2�;q7����I'��Vf�jW�n�jq+�Z��2N5�}#�9!$���m���Z���m?��=���e��:�ǎ��c��2F��#\�;���`�h��<=>��M<������Q���!���` O�&� �7��U}�#��4p+��3`��Y���iXbEU�뼏D-�(��YE���Z0��a�Y����җ
 L��|�$����L���]�Ө
�贈���]!DS�>�M!_UW���1�j
oV��7�D2�gœnT�NJ�ӵ0��0�*��)�l��a��(g�V>3�Z�T'���C^&v!�����G>_�6.��[ddtV2�:��)�o��$7;���(x>T��tm?e0e��EtQf�"�nM�ē�\YB1��q�ϒ��֤���Yf ��<�9��Xda�Բi��4+.�*�\�s+���NH�%��bM�v�Y�c>�L���=��Ds#�(��cj��_�^@�0��+�n+�M��i_}-y�=��^_?�z+��WZfv?�E>_}�>���}�x��^��x�p$��ww$w�O[M�Ӂ�����,�}IC>t��sm�΅Ik0�Cʍ-�Q:O���V�(F	�a[�!ڢ�n(7oQ:���H��ߡ�������BG[���X��ԅPc��p�}�����ӗ'ʝ�D��Ej���҃#ed�9v���	�Wd�s^��Eҳ@�tq��`����rH��z3K(~z�Ax2�=�����ЛJ���$͕_w�,m�0)
��B��g?���8�أ����
s���wh��
j��Śu�D)�G�מ6;��VX�6�rAX�� ;f�s�5�r�2��(+�+�>�^����s�_VI�$�-�B�U=�.����4��(h�T"��f}�H��s�x-�ߌg�Z���[3�4V�ڻMp��a�j�^ϗ���HX� ��<�}�O���ʮA=ϥE�I�r`����F�z���pğp>�ZӇE@}�ͅaԁ�ZC��^���)~B�d�Lxr�@�DSU�+����[�")E�Α��s`q��7���=%�
�d�<7� �u�����K�S���a۷�4J��.��e��]����)zT�u�
B2�
��P#)�����u�7��6�h��r��t-�-�	��[���ʌ�B;��]�
E�����J�J��a��y�?�(4d���DN�L�X������+j�S磲ߙ�Y[�/��TG�7��r�;��v���#C��ǂ�q�`��&:�ݙʰ��'
 ����(KҊr�lLuɤ��O�b�]Wfu,\Jm���yO�ʱ�@u�!��l^�z����ي4�F�v����a�عw7}_��ro�Q9�;�pd��y㈖����!!�T6�қ��|�nP�X���%F�m�{ֵb�"tl�ГEI� ,dI^3�ya�8ft�8o�M��).��iJ�}�*��
�d%�eG%��E}�����F0��nE�st�}�g1��P�1��yͳ�y.�����|!/��\�ЏNHO�
_Y�=���VF6x�[�E,���x`���n����J"���߆�:��5�d���>��?��6��C��;�g�Na}C��d�B��dEi�T%]��Tm|=B}NC�<�N%��8eg����{T�5��$�Y����o7���+i�-5X`�zC����
P�<K5͎�΃=Px��9��[w!���ʬ��PI|bf�[G|�Z�è�)_�gRd�����5D�t�e8�-}�;��9\G�H�IΥ��@��[⦓{�0��(M�*�d��@�c����Zke�0�1<N���kT.AB�
<n����񶟟'5�夎�PH��G�	J�O���|�@M(i��{>�|��"��4/���c`�f;b��'k���0�����
8��ѡ�Lظ\3���}N��&B
�a��!Qc�;#���]H�N���v,ܑ:�c�
ݘm�}�\v�>����R|<�9
�4�eP�J�Aq.ۈQ�]�N���n��.`/�����\RX���`�m.�b�Fe��{v��m`����O���kl��(�]Ja��	�Y�|b�@ �EvZp[ѓ�/3������,i*�D�;�<'!�Nz&;�0�Z�9+���;�X�7a��e���n��1}��؟+&�y�]��f�Y�c_Ӽ����R���fw1Ҝ���*�1�{�qre�H%�N�ЯvGr����۠\C���ֺ�`["4O��.F�٢�U|d��(�e��ůn�R@�
��3/��PY1$Q��پ��ie��:%�E &�*AF"�2��<f�������	��#�Е9���?+����Cl�:�Ӥra�sY�x<��m�W���ŔT���m�O�o˜}��ݛn53Vskk����Q3n�!�����Q��],�Qp�l9�;*����Q���r�G���{�����>4!gO�⢌I�����L���c���J$�L;h��.���?<Q�g�N��i^%�!
[��:[�7+�A|�DO.5ܪ�/N�]�İru]�#�0����
��z�Ճ�|���K5������5�6,a�-�=���d�R:a����rv�2z���5���4c
�5������mS�xK'5�ϩ��Kl�8
_0��Z7kk�jI��Y�����DO�q�E�	:%,02�IC];:E�|}�~�;y�}�!
�kԲK�s<)��j�M��RG!wRv��LͶ ��{שa�IF&놅3�	�`�`w%�����;�D+��Ӷ�F�h�z"�x�00�Pu6~��k$���(�b&����p�Wq�9𽎑�2D�^���\�`IY{��^ܬm�B���eb�/d�ꅯ.$��ŏ�)�z�\�+vzX����L���q$�l�E�$^��a�Vsw�ԇS~X��am���cT��w�]k�L񴧌4��~� ��)�h�5<�,��)�^J�-U�
�r����Ɍ�Ы?�;�S�bC���y��B��q=r��O��
�s>
�� �_3�g��c�����/Ne���+��0��r��W���������ﶽ�]�����<���|�'�T	A�aU�"+��}D;a*=f
cX���ٛk�AOb�w,I&�.莥2}G�[.�����w_m�����|�M�yR'GgA�3��K+�?7�6��;_��^�`�L|�NߑT,�(��~�[_4>�G��0�}N���xgt���ZYr�6.���O`"��B9^���z�/���i�+D�gU]�"���{1��ɼ�:ꙍ��)z6�ܿ�T�	�m��}?7\ ��Xj�_f�����C挢�&:��e��l'A.�+]>*�8�{p�^n���c@H�A%��d`�F,9@�qK���j��xT��Ig=(9�@#�2��NW� $�[��k;��ȣ�tu_lnD�fu��V�͕"-E&/iK��qA��/����l��Qr�7���Qg6�${�]q4ō:��S�F�ë�,8+�r��Ԩ�ᠮ�I��8��Re�x|'���C�.��dT�;��z3V8I�<����>�
Nb�OV��@j��
�X��>%��+:�=݈N�,��`04+���PSϚ�����AS�v�
�p�v�h��ܽ�x�$Z�:��a�
E�CQ��G�ƹ��Ѵ)�XҊ��p&EObd��חbW�l�h�{h�,�����)�Rs�������g8Q�b�Dҟ	^�Gx�>1OH��}8G��M�J�"h���7��wy�QA��_Ϋ���
A �l\դ|Ow�^�L���(����&6�4�y��r��<��B���٬,��M��j><dU︳���'��M�yd8���Mv�		.�E��d`�п�JQ��?��9:����b��cL�:�O�<9��3�_�3h1΅A$��B�E��:n�Q8���D㪶���q��o�t�IG�t�����Z]�B�D^�
Iq�8��iK��<���m�7b�V:RZ��H��Q�$x��������U(,#�REc�҉wU(�rtm�1�u���lf�=_�B=��
�O��c���,���A�D�����Mm��w�Z��\np�Ӟ�WF�;/
_�D.X��L�����x��S�W���+1���H]�\�s�D8���t55�in��;Ҟ>5�f�]AT�l0إ�p�o�++�z�[/����K#y$�I�D�'#�]`"N}����<~$A���N�E� �E��H^�{�V�E��"B�nP���}$;Ij.�K����kEJ�]���4�SQ��SmJ����3eg��O�<�w��Vy�z)E`�9
�N���6k��9dV�H�=�v��TY����o!���U�6�D����!�j��M%Q���nON��g�x��J���Υ	[�h��cB���V�Џ���8X<�v�w�$�=�=m�M-߮����ؘ/g�H�!���S΂�R���u�̝{���i��1�4\Ϥ�G\����=��͞/dmiY�uv)�	ę���2P��Ѣ�����x!�}��]��%��a���f_/�yߧ<s�Nu���}*����Еnx����Y�*�{�T����\7eb2'5Ƌ�;|�^�ޒf���*��$6j�Ex��!vк_�ʷ� �f�\�#��Y��
��^$(����L�
��g�
X���!��q���(�������n�$�<!=�Btq��wm����C�1ߑl�)��0�}8���
3�>�v�(�1���f�JZ�	���T�k�f4�:��"�V
��'c�%ha�S��\���J�"���o�-�xJ�<T}5�b=��N�쥷b\b�-G�e�8$�c�;��:cG�b�C�"�ŭ���5a�^�~W�+�<�3��rmq����9����fl��̟k	L!������$��5���e-G[x�W�7�??�m�ݷ�<#::ލ$#P���y�VB����R�Z1�c�=ZV%��Q��P�x��X��(R������V��ɫ
�>25�#��^�
��&�x|О�r?n����Jjh�ǣ0��w�uY�ȃ
�R�rY����XCv���[ۼ�.�ɇ���5�;A�_�@J����L6�'�t)�ŝ��-$n��-��ye	��]T�ZC`�3�8>�>0X���*��<���\���`���+���ڷ��Bw.�{���m��������ģ�#�(ml(�hɊ��>p���TK�Ծ��)��������;[5����W��Q�0��e�<���4�Y��<��Ѷ��>:"J%=�H�|je��3�ZX�l��hnCv?��^M�x�cᩕ���$�jP�&I:yM�].��-5PF)�Q�ʃ��*?��=TF]���Q�C//�<A6 #"��B*›}�9��Ʃt���O~~��Wi����Q���V;��v�,d����}����<���x�-���CҴּ}��

_�z�g�<���[�3�g	~�`��N$|�e�h_|��x4�BF���-z�,ߴ@s����'8�ըk�l�>����A�gA��Ei�B��=?�8w�u1c�	���<e�
����96~���+���{��P
��k�@��kE�В��㓕�Z�_�ŶhE?�]����a7�;���**##*�6J3��"����F���8Q<��Q&��ĝAY���D�;�l#}Ì���(4�,m��-��?���#�Qk�b4�!����N�q)�5�^y�o��C���}f&�_m6�RҜ�v��R��L)�`.��1VJ�Ϟ��G�g�.��Wc�"*�Q�49���aQX鶚��ѭ
my_��ZHi���n��8KW���C����}d�OQ�h%dyMT�F�{�V�]B�F�]8��i�,�3�j������N댨�˔I�F��}�V���KԪ�b����sYXԿIʢň��
��?W#�H���	����}�c���<f��0�)�/\����аo7�vi�ZL:wO�c��ii߇�cw�ҍ�g��'-��̜�*�a��w!y���rq��>}Y�8�X�@�k�pL��9w�-p��k�3���X�m^r2܋Y |�z���u\�^	�t
t&���w��p�g�!�5�䋘x/a'zq�7��5+e��_7;�jG�%��8�6܄hC��	�=��L��^|&�ܪT�R=҄�7H��<�|�f2�V{���w��S`���J�(GR��|2��V9J{NW�J\�x�].�n`@�}�tVxv��V�bא.M�-hG�p�Ų��%˹�nX&Y�3T2s�ȳ�],r���[ǥ3�
�pT\�P�P����I�Cmt����n��l�R��Z�PeD�i��Pd$I����B���*���$Yn�".�,I�����Ə+y?O�@~�O�cp"�0��g�߃E�սq�aa.��M6�w7l��X�ݡ�`f3:�І��j�6\�u��,����h�*�p�	IGz2��k�D���x���g�ǔT�ؙ��/M
I]*wD�(\9�X��*�M�!�R0 �پD�"�!��9sP�s��&)|�yw���e��&�9"L[�M��n��v���	2��O�w��|34n�C>�4��q�9ȣx
E��`���y�����H!�-���2j�ΝI����’�}K��uf�捜[k��n>�o6�l�x!,�<�$�6%Kڰ���,(I
�Φ!�OH��K����eig>"*�Avk�ڡ�T��	����:䷀]��
<?��[��@I�M�x�P�m�����P�!�Pa-�Y���C��Ѷ{e*��#ܜ$�r�pt0���N3FhW61Č���uGQ��|��D�WE~��>_.�ϘԬ\��fs�u�||ֻ�w��Z5�^�V�lJ@Ʒ�p�e�Ţ9�nG���ѥ�J	fVs�}.��AI`
��-��dy��-$=�E���֨��r�z9�pcݘ0.*a�
��1V
�Ai>4{Y���L��
��F.��t�n|:�"S��kc�\ޫA�*���Gn�Ĝ�h�Q����x�)(t�Ʊ9��}m����F�����g
��6���q�3�4��H4`'�mv�6P�,�3S8����996[[���h4�}|Nm�9��OȢs�i]WQ_��M݂�,m֬�JeG?��'��X��`�/_sEZ��<�1v�芛���wI�~z^���q��}������#g�-����%��������D�wټ�w!��Q,�}���4-�G�.`����[L��<��\��� v�T懯�����Y��S	Z��ts6&��S�4�̻sn���4��GٶV>j�K^Vx��%��JG8ϩ{�Le�Np*?w�B�,��P��7�ܹf�q�<���ֶ-��Q���(:ѓ�a
ʊ��u{������lb�J�b:�z.�dމ##Ƒ�
T��#V��lM������+ޛ)���O��,�[�!���8�8�g�.1.�^�D��,��PGQ2 ��D�V�H�b�[�T�XM�
�o��Xːs�NMm�7x�6O��S-���$4�~��Ԇ�L�L.�aX�5G����]�;y;�l�Wp}��:�2�,�Ul���"�6��|�,����G:)CO�&6�P3m%�m\�^QhvP�G"+��E�:��K����M:�v�Kȥ��w�8L��snp����1��@�-ckƕ�5���y�A�2P��T��$mZ��_8�5b'15�MR�v����5��Օd�����C��('"zq/�a^ -����)����R4�BWk�XG���x>۹󙧔���n������� ���6���=3�t�lD���+58u��}�K��Յ.��d��G;�<�YS�B3BZ4TPq����B�벌��'d�����\rh�u������`�3_���v�y�T
Z��O�ge��2^T�[�Mۢu���O�h�4�ʣ��G�����+tQ���|�&{�R��+跀�觼��
����ipz�|����*0��C��݇���{�����D�����m�ܪ~yj���#�(1�G��A�*T�F ��2�L����=��Wm��������:�(Еl�Y��3
Q<S����]�8�XR3�n�I�'�K����w��`tc�6�R-������zg���{1��.������ۉ�(�h?��1BD:�hh���vg4h��5S�R�4
�/.7���=�~p~FY)�^̀�n�7|�>v��3��1��2,4�j�UngUh‹>��~�foF,��㴪_zHeT7S����2W��>Z�0Uu�N3;��󄝄�g���(ΩK�&������+��d���d���5�
���R$���
�XI�����;�b6�)Q�F����ό#DCI�Վ\1���k�4p��re^K2��<+6A��ĘDH��*�w���.�!�f�)�L�:Ɠ椅��HXaz8ZDm^���ѕ���A]�Mp�AFf����uI�o�(X|���c���^؇�=�X�z�o4:�A�kG�צ4@�CΦ�n�o.}$@������
�0�?m.A�E�pk��n�;���Y[&5?���v[@���/�[h����z+^�J��I;�a��w|�>Q<d��O&,�Z�ŒkKua���
�#�����4hI+p���G����>(��(�0���d��+�%�^e���f&�D?��jww��������t�8)�Qă�>���@|�P��LG�u�;Db�1H��>k�?p���g������{���Zq��b�N5��W������~y��_�Y�H8Y��
�c�QYy�����7�o����D�85�i��Մ�u{ln��Ï͡5u>ܯ�`{��-�����B��))��TH�Qy,����Kr�Ӱ���-�˕��G�=�{zl�Q)t�
��(�X�y* 8����
KYH�a!�PE"�#��A�,�DZ���,8Σk������Gl�ێ"+�7��1g�����܉8�Jzn���z��`�R���Ac7��R����v�BM��.�%��$����ي�X���z���+�e��/�<�w���ɝ��߸�>���;�o���}���woP��v��S�&0�k�=�,�$�A�M�[5�Н�CTڝ3�1u��>�%�@�{����yêԍ#��ʠ?N����)jo��M�����ļ_F�Of�j`���K	y?��;u�0���j/�{k\�.H�w�A�s�]}a��}�Nq�k��걹�k]�R~w]|�֎.Le�����6Q�����H�d���'n2�&’��%����oB3�jP�
��a�w*}[
"��Ɩ�KفP�H(�L�&4�i3S�a��e�}�U[;���z~�?��W�#�Q�[�t%{!����c�P��j�3��D(#w�]$�&����A���͆)/S��P���\��h@�4o�1P>sJ�1��� ��Y�F�F�i���ͣ�I�u�s,��������W4ҙ��'�.h�6�>�@@�x��:A��9ޚ�o��s�b���b����-#�B����i���\B�>b�ttbt��(�F�
�~1x��LL|��r�Gu����&ZZ"��~
"��>;�P���W�h�`�C�L�J��8^)�+���T���+�vS吳�'�����d�*$"%%��d��
�PCW���{�l"
8�� f�鍨�O��#���8����1��ٽ��֢ni�w�)�-`�tFg�i��������Y�J��(Y�5�0���J��?�#g�H�?#=I�� �^���w��}rr�W��*B��u#��N�u��ۀ�DS��۔��>84:X>0Xorb8=t��+tBq�ɞ�H��}X4S q�����O��	��<aB�A8��!��k*L��%�~�E�`���8�\���ܼ��%(	)���RȘcT�4�@�X
X�xxKL�7���FCɒ��E6���
�D�j�68)�3�ʛ���9�4�e�K�c.�h�*�&���LM�T)�<
`T��e�>6s���^
��ȡ����mL��
�"��u{2�W?�T_�t��_��T��%�(ڐ��o��Â�O�
h�_oڕ����2n�_��YNNOv�84��� 0�^�up,U�X�I�Q4/&�M��NҪ�ԜsR�U�؏�-
��ߌc���#��64�V�Z��n��E�3HP���8�;�Aq�)�7����r�8I�n��)7#��Ӯ�f�"���on2%u��װv�i���.~�ma���\�p����~�#7e_�Z��.ت���8���T�&�鹰C_T���FV�\e4DZ�f-([�i5�e=N���+'���}%.�l���.�2A3��4K�M�38��zl�T":�Me�Y7պ`>BFp+kk��\������"P��aobtoQ_�����[F�W���J���X�W�.$2� MзV|��L�r%�6L:��Txy�ksZɊH�Ο7��5
�k��e�(�1�|
�,Y3�-oa3�;5�loȤ����go���p�J�ME�߯`����Rxz1�3�[a����*���E���:a�z�������R����j���ӔV���f�8�-`�!��><��C���<���Ѻ�M��L�Z 68L��Y�LQ�^Fۙ���;N�^����\�G�×�+r������ݻiE���'?O/���H5�֩,%�K̶$)7f3�����#	e���/j����j�[�����s�rf������:&0S��^�]t瘝��i�*�Ŵ�>�hN���l���]ێ�	A�O��H�<(Vc�G?6ռ1AlU����D�$*��|_��y�C����7i�LruH��z���p��t	M��5-^ߧ�m�!~2�X5+;�tqٸL�MF@����\n��{"F��h	���y��/>�����g��Hf��$'�ױ
&���@0�&���vv��8U��%�k*-v}���ULBȵ�]$\��Y�ϚN$�᭬�d�w@I����Vk�!'+�+	���l 5�Qk�5�m���r�DS�*Cֲ[@�By[[F�L+���I����F�)����+�7���L�4Xv�P�y�@)�Ⱦ�5Țpc,?>]8ډ��ߴ+{���@��1p �z�X3~�&�V����dޠ�A/��xƏg�nx~Q�
-v��w%i�JaY���\9q
;���c	��{įO��;�&����ztab6�ՐlƁ�#���ˎn��ś4��J�j.����~ً�R��х��H�k�T
;��HT��+��|�X���p�YJZK�$o˨��1I����Y�̝ؔrW�5�gu������/-l+���~8���ˮ�b'Dة���_��DY�Jkט�I�\��;�|
�L}먺a�R{�$�F�a�f'`���~�n���ͤ��ՄX��sG����D�-hhi�X�ӓ�m-�8������|��K�6�*�鴇|UhPh�hoz7/Z��v�����;�/��.�GY!�um���ѩѳ}{���b��R���hh���n]���ݓ&��308j��`�
]v���ô��5'ٍ���_�_]�+wU�s޲������2QHـ�����^@���h��'��5'���ʉ}!~m���(��,'Ob�E�<"��y�3E���Y�P}����D�(����4�7	r�U��-1-��A�]'
u�du~�'K�Y{w�J�ćuSfUcn`��Zb��L�X��F�����P�t������&��ָ�^�.YR]�}W�l.�M1?��=�'W��S4Z��&Ӥhr:����/��@��Wȁ�KQ��������r�
�e]��������A\n<���V* �75�Ta2пh8��9A��¬۸-2
��(U��XP�t6Q��jv�uWȍ%J����0�"�P
>�H�,ILw�X�]e��^����[p��H{pda��]{9b߷�
�H�GXҲ���-�O0��(�@�Qc)$k�q��?���k-��l�N�۹���$�^��s7<�[����X^K��X�*�c�G{���z�ϋ%�u��wͮ��$E�p��CW�ग़�װ��MЎ�i��N�NjK��p�e��$�_k۶e�	HT�JC�r+�:�V4����LkV`m[na�����P���x�e��奀L�P�DZ��v��f�xe�p_/�t6Ѧ�_J牜��V?^�)��A��g?ň�{�`������O�VD	W�F1��^$戮A��'8�X|�9E�q�����q#$��\ ��z�D�(	����y1���1�
���+;���m����o�ٱõU$:]�Y��݇���&Ϝ_�vHZ%
�D�ϋ��yȨat�δ)�`�K��බ\7�[V��UaAM��]�E!���@��ށ뤤�_�Rǝ��_�: �?��%=��D�>�Q
��[��MBp�LM7bN�G��.�A%�gB�(;�cj��+��Ҝy�#qWJb���1P�7�͖�J�:�E@�$��Rݫr�@@x�5�ʳ�ɣq��UŐ�bg��Mb�rݮ$oW�Eޯ@��y�]r��T�Z̊�PH��0�E8�50q�;��l��Q�Q?.��`]v;�Ă��ܮ�|I�o��9��ߡ���0�#���+U��j�Ń}'L��\�E�غh=�k���;K���-C����	�gE���դ�9�w�6�����	<ri�vC,����̭V�z�sEIsG%������1���q9�]���<��=*v��k�/#�L�/��7��&f{��e8t�͏��}Z�6o�Ke�jO�꓆Y�\�6`8Jm
#WI a\	Kֹ��d��d�M5��30����3�C�:�_�㾻��O�(��aכsX\\T�c�q��~X��<���k������
Į�O���E��wA���%k@e���\\�~��.A�ćL�L�i��u儣�hFb�!���LΊ�%�i�c��-�	���&c�$e�i �E�Kl�J��n�kҺ�_'@�F���@u�]ݜ^�ZЁ�>�t���C��o�a3��_�we\<�&9�!k«�y)������=����o$2ĠtB�Eb>#�����(�0=0���3y��n�Ÿ�^(�F��g��4����hX���`YpllԂih��*M��{?=^L��]c`/�x8�LO��Z�ޓ)`�#��~�F	RI�L�p|�8KEN�,}�ㆎ�Q��U��0/�5U�QچY�q`�i,Xl�:��E���C���o�J���1���R~��A�����b��Har���y2� ��6l�`��UZZ�kdad�ږ��E�xk�J�]}�Qi1��uc&��Z�U5ݍO��O��zz�v��z��L��� k���O�r�%��-qo�����o�� �
Ž�<):�-	���i��X��'�L���`ƲU8���-����"_-�H&^U���=O�?z�۝a��`��K�U������9�rF�Y���\��^�87!�0k�z*�*ߐ�p׏���q���iIn^(t����T��˾�%
v�+8H�1.�g�X|��
q��,>C��v&
l�-��TIk�.I�#+"S����;�b�6�2��ݤ�1��D9R�{��_�� �O��!� 	Ejq�xPӢH^x/9�R"���rg�[h��胣N�扣��t��m�^�f�M&=b�#�����?"Q���拓~���G���O��`��ݾ�k���;����4���9h��b��}^Ų��=��=ۇ�����ߝ�0oÕk�w`���_�U%B�6��_#Bk�U���:�U��%�ƙ�cl!�О�W?�@���ݐ��;처������WӇ}����v��ٷj�:��+�y�g��S*���ښrYQ!��� ��Z�%�����j0ZXy��
�3�|9�v*�JIc�����C��-���Kd(�]��}*����I�.����e8v=�R��灛֔|�o�|A$>}N+u{"*t���.�K��U��0bJ�>�J�j�Øî0{W��Tx�b�W��I��ު�5�VSP�V9)5�W�����ߠ��.�ݗ���H�2O�>&'׵/��1��F�q��Y���w��t�i�Ėe�ٌ=�٬>K��LFqn3�P���D�L%�
Vv�6T�V�4�H�	������<���B��d�=2ihS܇��6
�ech9�� p%,]�pM��MJ��M� Ȅs�DDJ�1x�4�S���?��O�S(fɢgWm�b��ðQ۫��7ŠKg2Hr�}�g�T�)󒁢�M#�>�5h�`[�-V;��6�G��9#߃��M����6�,$�|��8E�R�8`���eV�mX��p���s�'�7e���a��c�[�~\��.qb&a�_�s
N�a��n��"f�q�p���:����5f����W*z#P��{r�Y����eb�ElL§����$�M�,�M������6�%��1i@&�(a�
��kYV�̸B��p�gꖎ)��x�J����wo�r�#�0i��|/=_�Nw��0%n��Z�H�-4���$&��F�������lm�m�)��k�L�2BA�`�6����ǿ?��ᯢ�F6F�{��5���.'�J�OiGKT���}M'�q����+e�f��ݛ�r0cp��q��ٶc2�����q�&����K�3��F�V$E��wR��

$W2�����dj@��"�n�^3�¨�--�X��͊�z{�g�J˻��{h�+ǃj])��b��hK���NKN��+��h;�q2
�/��o�,8}4
��v��⤮_ ��m��Z��ǧ9���{�Ag��k����f��c~
���D������Y�,�z�r›�pgx/��7QsA���c�a�z7DS���3*Cx�!�Ʀ�)�'�δǴ}.�HHaʩ lD�l�@�*�#l�=b)0��3�*D�Z��f�����;X�v̉	%� �w ��͐M�4,��k��r���-�6P�v�H@����(d�v������Dl����_IY���?��G%?�.�� Ϫ��ħ}��M%��GAz(�F�bX
�{(5X�1
v����SXX��UT����+{؝��>�{�g�Zv��5b��n����4�0���CmV��9<	��N�3l�ۉ+.H:T����@���BW] ��1I�U�P)3��ِ����T�C&�
�&jI�?�/�M.��[e�c���PJ�`V�.�]@�"�J��A�2:�Wz3L���������moH�������f(i���<0 �F����G��&���Lg
4A�Q`���K��|O��s�~�'��uBf�޳���B�l��ie����rI��T�������*o�>�-8�#{���	|6J�{gR\1�o�I��g$�2e|ЋU��ɒ�҈ӭ?�o�E��u��:�J�Mp�-A�C�)���t�`�D#Ÿ�B��J�us�B�I<*�̌�S���…v{�p��ӝ�ܽ&�n4-m�A#'"۷+��DZ�(8�"'��,��(����e+*c�2����i�!�ӿ/��Ł5�a%��@\{Z
+�L;V,����+I��2x���͎�
6��XS#ୖ�G�qi�m��C���=e�>���:*��>���:�
������۶NB�>b�92D4a��w�f%��r
@vF�\�psת<�g�v'v��;xu�c����ӓ�<��v(�* G�0�a�}b�|�f�0�N��z+d<`�*����2H��"�^�ڰ�
oޯ�ھ�45EʌzFtNb�m�����Ɖ�<� '(�)0"��.����T�&Z��)���L���<�הf��0(�j���"H��FX��C��ein�8�I]��5�4��K�Й���@Bl��hq'��?��P��AV^.p�]�̐�W�n�gz�F�t��^+"<\�>�ݎ�"@��e�Æh~��6z�/����̱ֆ����\����u�$��p�f�*��r�}?�r3�a��l�dj�Kj��zZ���̂@�Qh���j��bMK�����|��*הg��s*��z��6���\ǚ��[_t[q��`n�0S��s^y.ț��O�O��+����<����T������ܿf}v�[*�����g���׿�l6^���ϖ|صVt�~�"���Z4��NP�}�mh.�ȯ�v�+*t0_�����1�ku�Ȕ48\ZJ�	�~�F��1��M29�sJ���Y������Gꪛ�yK�Xv�R �%��.������e]�����|��b��!lU��hC�]�D�C�t0}�%1�� �I�ِ֗v;���*2C��4aD�u3E(�d��O
f?e �l��&zQ4-�:���#��+wZ\ӚD��6X����3�:z�2�����1���$Yn�bf�K�U�g����bUM�Q�<3�+�x�B��M@��z
����2D��D���2�qG�W�%^ϼ6vE�k�f�<F����cW���9��k;���uD�:�Ga��wn�M�Z$�B�An��ˆ��_��]���� �u(iN���p� n�i٨i�#ξ����������%]n��8�/��K]^�c�p6>|N�к�L�qg��-����Yyy�m@����m�ΖI��'��!���\oqNŽb��u�A5��>m��Z���,j~�m5k(Di�VEN���@5S��A[�؋��%%o̽�F<�m�6h>~G��#9i"4	�N�u� ⥜:�rNK�_�0�?Db"<G��'=�W�Q��m�䔇*e�&��7FF,��O��eA{��3��I"�D'��'Є��\܉�̯��˨h���H!���.�����l�Zj&
�=U����#>D
��6�g�N�p�<���8	�Ϙ$]�xN7��;��"5?	P����<2��x����*�ͷ���M_�Øے�{��ؖ���gko�RmX�Kin�#�����]�� �V��S:>V�l�Q��Q�k��0:��l�s���/r�ce��#����INy�א����@l��
�8�W"�3B�����\ZM|�k
PU\JH�;^�%�~�%�-j��
h(0���<Ati�'��U�(m,u�&�ZHH������u=&?�A�>]6[Ubbb�v'�Vұ��l#wi\ 
������O
n	�����?����f
P����-�Յ6�Q]ɡZ�����4�
�f�r?�mE1�I��VH����JNm�.R������f֋l#�����T�!Tc3��Go!�F#5!���"��3?�$�=��f���5�8�;��6��f���	�.�Q�zC��sw�U��v��uo�����e�ʯ��2i�	�B-�w�.�$	A�0Â	\A�#&��O�	x���B�v��	�������p@�f8�k��8A��g�㮫(�����P��i%B��]Kͱ.|-Ӛ���괓���)��!�S&�)1�d���yє����Q6�ԣeH�Q8q6VHnȆ�_���@�=��&j�P�}*���È
��>�::�Y��EBУ���3�I��5Wwr�1#�J�~���y�֤�DfV��ρ�~=�;��[�0��ۉnD�gß��4�A��t�� �W�嶌Ǒ?�]��-�ERC�em�-��O�h�`ݶ���hr���UV�`ku���lkV;Au��	ܩ�?��\�cq6v�Z���S�3븏�*QHJ�3|�b�6�k��Ƞ����mA������k!l0��p���}W=�@|m�2�ўP�5���9��U��6v@���q�
�.#]m"�Hz=�ߔe�R;�>g�v�A��~ħ$�����㝎Ȇ������';lL*2b�k���ǫ[Q�ʒu�L1��Ps^��k^�:fy)E9�qݟ6Y��<ɳ�K��j�=ރv�NI}�EÇ�k��$E��T��KץS{)ǀ]�4)(����E)�N>��snV��/W�l� As�=�@�t���G�7�w
O�_}�nVОb
)
K]�'�J�z!��nd޽$�cX᥻����(.��=��)ܨW/�	�'�~=�7u����9��>��;9�|��<�Z�(
���'���<��~����.Ȩ�18�W�����f�e3���P��7��*@̃�Ͳ���G%F����\�P��.Fv�,�i���+7D�������=�y��t�8Z�ˋy6� *��sA����nd�p��ç_a0DE�"�ʭ�/2���ع=�6[Zc��M�cܑ�cn���#��6z��{����m�I{�"e��SHI�P2G1��*.�
�_�
/3�x7h��~_6u*�*V=�`��0�Å�pῥ�ڥQ��j�1���a��9�v�/Oީ㔯	�޳d����¢Y��_�?������һ��E�t���s�������������[ۋӮ�Z_������3�f��&Qw�!�����h��n�t#��8N��6���+q�eW6�9�����b�RΖ��Qg[W�cms�V��8��lij����>�9�A��Ɗ���w��n�/�������a-�i.�x�^黼�~��G{�b+�v������H��+�ںK*�K�[�u//�(��H+���X��E@	p`@E�J�eد�n����oY������loxw{��Z���ׯ��I5s���F4`�%pK���mNy��g�E���f%�V�{��i�׷�s���=�YE@٠o�~�
�%�X9wG���ʗ�xn�l�����ĻjR������nF-�֣c~8WY�z��vg��JL�(
P��P�*�4b5��Ǩ�ȺG�\�Է/F�ˎ}&�F���=����io����TV�;<1�]̢��E���!�3�8�^�ߐg�$�ϳ�/��c�ȘN�b�Q�p�H�ⱘ�ʪEj�+#~\~I��0��9�b�*�N�$��ZB;������Y�Ī}`7c�2��&�EG���b]�(q��Yɩ��[My���cD+_X���ʃ�L�"�
a>��d��!-W�|٘��}����@S�����ƹ�"��e,n*��ʧ��z��O��^JZ`��b�P�w��ד��Q��(����i�&yB����i�G�@b�־��Q3M��V�ݻ�2mp�P�qq���X�z���9���S�?=�x_��U(���(��+��dL1V�]� G�޳��Y��D�'�0f�k��P�UԜGY�	����D%��_^��P��5�+�5ϵ4%=$�jIJ�,5��Gy��׺��Y�‹��%�����M����ݥ
PM���՘�a�����8�6�2�wW:�#+���q8.g7�,@��ҫ��n�g1��X���� ����Q��_��r��e���E�~�xS����]�񒢦�ѿ��#�U�����8��?�@E��1���=����nʃQ�����es�L�R�yĄ͎���w�̧�g��Jy �s��w�98��f���?��5fyЖ��}����7i�?�{%��}��A�50	$DJ�a�O�o����Z��x(����؍�{}�nY�C��ٚ����� ��H-Q�`��3�����~2 Q+Uu'[ *������ƺ��{2�3W���~���"|�a��d���:��Z;��e(�Ж�6��5�`���g�-h9:��`ؔ���a&x��@ө�{��f�n�x޳w�-j?�r��b�A�1�)�=�&��[2^��,1�Y�>$����y��I �	S�e7�l΍k"�k���Gw�q={=k����M9	�1�P2��S+"2���7D�L���M�/�ޑ��Z���%H�X��H\�X�]�9�5AHd�f�~
��,i�X@s�Ig˜9m��I����%W�
�V����<I�
�W�m��M��N��v:�76���m�v��Nah������̼xQ�����m�X�P�r�hsӠ8��Z]��f�����97X�%$]�v=y66f����d0�k^R�B�)b���C{Br-,7g�
��j�:��qI��NSJC�gEe�u@Q���1D�x���>�?
TnݒF�-���6[~��"Ti'��(n��u��xG�n�P�k��|\���%�A:1v�;�z#�h�`R���Z�?�O��ev��Q>c��sg�T����c�	�^'+S�qf�j�=���e�5���4`�ؐ/���᭬�N�8���g��$��\�'f�qܡSN_�_>�_�*�?�9�BE��7/�&�56�Ms7�&A�l�����M^
G:
FZaľ�D�����&�i�I�����|�7�ʧ�\
	�OPߒ�>	r�9�6��y�$��3�[�p�#7zX��Uo��j:���^�|3~�BJH�IzS��I���9�3��5Ų��ɼ�n�vF�q���-�9�Ҙͧ�.�lM_5�/�I�+ӛ�_for�a(���jQZ�Gb�lѷP%K���S��iw?{�\�dN>�
�����'�E����#�*G��}�l��5�Ӕ5UȰ�**��
6n���?��M9��NR�V!K�ՇM^3g
٣$u�6r�V�:��s�q��AT���S�X�1\�XP��q�HҮs��G�5ե��^��(;�6�S��t5�TB�tG�����s�\���E3gN����,UU�/��[�S܈��7�U�AF��{&�_��j|��ƻ��H�XK�"�W��&���1�G�D��<�ܛ��Zqm2Z&ƺ�*���i0�=�{r�����=)�Q*��p�K�Ě1��=Ĕ��'��:�<��\>�nI�]��M��iv�%~u|
&���n�\�Ƭ_z�G7�]�����#׈�q6Tl>����gC���\%�v���``<��n_���6�M�(�-]JF�F��+-T����DJ�l�r~L�
C��Z���Nf�^��U�̯u܃u�����n�Xe�c��#�c΃|+��m�l;S��}@�
C�aV$�*�i��]�`?z;��?bQ��kkt��6Ŭ:���>`u«czQs�����d=S�L�� 7p�8�=Xȶ����Շ���^�泤$��~%uml�#D�*�o�� ����-�Y.��������C��D]e�.����P�H�
'Re��K���u�79��F�����aLˆ�v��I�k+����Xw�o��ꤑ�>5��(x���/�\ߥ�|�4gc����Iŭu�G
����tv���0j�Pff5�,*�WX9Q>j0�� �y�.�f�EȞFIg^z]��&��h+AO��l��l҄�k��,�t)���E;��G�v���Z�6���k��ZJ�'F��x��Yɗw���?��<��r�!�O�n�P��琄���̀B�:�o�Lg)<�ܱM��b:�\f�x�_z]�k1�
J�ܒ+�@9g�����/�RJ���IjS����1YT���,�P
C��(�ǥu���a�K�S�2Aqѡ�*�Z�cl��I����-P��vmu�`��s���T0����>��Ԋ��]���|掎!d����M
&���Y@͐��eӘ��� �z���ٳ�,�5F�W�Z3���"@�-���g�)�2Å��Oo���*�a�d�CV�>��':��.��-�p<U@HvZծآ����V�
����6U�l����=�yK.�ē�Tm!e�!�Cpw����.�6q~�ZA�>���K:ɭ84<S�ڌ�Y�6͏�m�mm�C�ߚ�&E�z8�Z�v��	t�sJ�/A�,x˩H=���P�3�R��?�;=�J\�j�������=�#=�/9�F��Ռ)һ�<Eb��DR�I��1H0�&;��� 0�A\��4�\��zػ]�y�$wQ��Dw� ��Kr�qb��}���2x�1��Qi�@�_r�����q�s��R�"F~�]5֖s��`z�Z�nD�5��G�=
�H�K]��h�N��N��w�L�s9�J���x|,cA?�[��u�(��.'�Ҷ�H�@E�(��
�=L[��Ÿ;i���=�YvC�<��qh|��2�0{����qO!d�.%׳IWC�\��K����������on͋w��6yr�_����N�Y�7���O�^PN�dlA�0d�~Iwޥj��W�	E�&zt�<���
�_'�Vs�@@��MU
2�r�(���}[Ӌ��{|�R�c���2�x>23�r��r�{c�(ęY��gg�z���c��tBu�3�7�1\��b:hs7���Y$�~z��
�u��0ETXI4-z�r��V7���'�
9��#W���y�,2^�(��Q��M���Ģ6�ðvA��w���„��ll��J-�D�]L5�!Y�㡗ߩ��S��A9ob|+�H��?6��W�<[9�T�k"6�T��r�[�<���0:���m T`�R��-���l%�L禵��#�k1�7�da�M3#9[�u���U�n_�c.�=����O��M�,�+�A���@�x�6�L��:�b;���}j�}9����݀JE��F>P)32��@d5QL,�;�u���U5�j��N��ٮ�{,"��/V<��D���J�?��F�	�����g
�r�H��H��N/���o������+�x\=��1!��y�2�z��r��e�@���P$�T\o��أ:�qN5��h�i	Ղ�ߨ�d
�{;��a��"��ž�}����x��ok"�.E�/�78�%#�jx<]�G/E�F���o��\GQ��T��'�{_�_Ӂ����'I�U~;�x!=%��X� ����������K��*���gPCF:$������r����ˆ��~�WX�ZKF�"b �tq��K�ċԉ��A���~�qX���O�!i�p�bf��H҉�-C�F�/Ԥ�Nˍא�CQqK�TM�z��&����M��P.�Iw+�b�ʫE�ԧ���x0��5��,�у�2/	Oti����X��^u�եtO�E���X����}�Z1�4�Z��z�~[)�1������a2�aI""M�����p�~��Ҧ���x�It�~A�5*�J�� �c��3��*:mm`�U`�XQ�|�q=���9�"��{�e��7u�޼��+�����
�^T��费]&ۢ=JBVެ�x�H���Ƴ�9N�%nww�vE~�nm���G�wޠӮ�@c�;�/�޷��(���%�zU�0�����&�*�Ftu�nm�i��ڽ�O��:j3u���Y����ܫ�����6���ZZ,��;R��,������F/jϕ���E�p��<���]?I]����,�{Iټ������^s�(=�(5����yz����(�Z=m��s�������2u^��T ro�9w��c�
�k>�����t�V]2�+$���}�Mٓ��@��Z���t�"�
:�l�!P1��0����f��?�*�˄#�6�2%�{��#ܪ$J`R���W
�$�z�166<�a�g�|z9��|�CX���͖dY85��_6���ej��›�F�
ۯ�<��٨��rǚty��+)��'{=)9}$��C�P�kT�F��B�3���==G.��y�f�z�4�y��湑�>�E�ċ��	�����ҧQY�X3�h�݌������I]�6ئ�ܝ��7�uy�J��9V#�M!�����ݜ(�.��%��E�CJ8L��#x�_V�E�x��v���z����:ʗ��6J;�y��az5,�Q=�8��C��
�~���)NfTO������Y�k���,�8��k�!%��e�?�-
<�����tI"�R3�8�����Db�f��i��aM�Ѹ������T	��lz�u��7S�*�ZKHciA�1�#�S�e���Zes��mΑ�D����p܁7qB�12�`��+�<$��K�+��d�k��fʃ�����I�|�'‰Seb#�/J*��k��5u�'�V�-��^�=�g4Dw�IAL}������A	.��
�H��᳣d̆�^�q���l�e�<�t���N���~�v�}.�٭�(T�������44{h�u���va�Ęy=�ڒ�`�<}JZ$&�Kb�S��EE�kosn�	�H2�����ă����$��5���<�%�%�9�o���������5쭏��
%��sy�+OA��?$�̎���-�؏#�;����rzm�[�N��AM��˒$aW��nx�\z�Ŵ���J;m�v�ΝJm}�Q��!�GB^z�I��tH�S���>�sV
� `xO��')‰,���3�O�%��9Y4��:�=3�\g~>����	�Q�res2c]�cD4�#�E��:���JLI��_s��z��Y�Y��`��˚��M{���q�@��¬�{`�i\���V����s��w�B*7� ,̜U�ظ��`�,���WF,9��f��[��&,(� �v�bm�5�?o��/Y�����9�R�x���\qݓ�߿$�$�w+�����A�H..n3�W�f���J�{���wGQ��]O�Q��ڐ�i`�\[���@C�j���phV��_��n�Շ-�w��/�-�+=&Pz���$�BT~A-,��R�^F�o��]�CT�$�V/
l��s#���ƠF�*���/]�-�Z�6`,��Dc
�mR�,�ns����X��Y�#L�?��������T�#Ѹ��l.�f�ڀ�ԫ�r��6�\u�a��Ö	K}���czl���bA���B��T�
K���ƨEj~�\��<M����}Z�(
r@���+d#h~�L�ʹ�T��NQ��($�DKL�~�!㵴oYЏ^&��ǁ�cĻ��Z�6��52��������i\�C�C�>��7d
yF����9��܄:�h�[| ev�=��@�KQI�Ѵ��F�^��5��ie�D5�;s���z�D�U�U���8�x�Ç^f���H~��t"�.�{�Fe�+W:� �\��0���={�k<�)iO����aM@F	�=�q!mN�c�˅�U�~�p���Ur�W�z��L��M�N�y���sSO�z��z�d��AGy�v�Ѯ��,m�2(��֩�ع�}�GS���(BI�O��=���-������ig諫#3��Q���NӴ�Ͼ\Bz&�J���u��}��xM����5��z�K�K)�Y։K��=��]���$��ὅ9����^�f�������=���5WD�x�X�v-dbፇ��O��~�/����u���ds����w6�X���1n-�`�o��g��\Tx�Ws�~�E�� ��s|���g�	�a����y�f�J��r����v_��*D(��C�(Mб
r����z�'@�;�}{W��U�T��>��w>�P�-��>��}6�� oa����.�=�`P2�h��h�y�ߙt���3�i����G��O�P��x%�L���`��IbZ�lw/�ʅ!����-����d��+߂:�\-��?te��m
��a�:�A=S+�o���p)��zUFl���{�,���P����i��sV����aaN����B����(���r�6E��^~Q�+��*"��m͢�B�:�Le|s
)|O)�d���b��#�����`���R�\�B�p%-cr�U$&C<�.˓u��Q
�w�64��s�o�\��&\D���r���_Crj�=�ԃC�'�94}�c!�՜K�4#A��O�\4��
��Sж�)Ґ�Y���d�
뽍�5
’�*f�1�4E�#@B��>��r��c[�D	�<j@2��L����I�����bֆE#�j%#����>d�̇�
�"�N�[8�u%)�oR�b�k+W^]ruK�<��]Wn��ѡ�Wnv��D�:��-q[A�������~����V�V�W$){�:$0#$��ʪuA�.g�E;�xC��
�7H�,p����cE�����%������'�V���M�e5>�Iv��R��T �Z3��6͜)���06E�9�飙ru%�hj	�FB�C�e\Kb���:������!���1���9dH�`���m�vo(�.��V�ƕE�^)��+_t62�A���y�E��YW�9Yj���-W�����mt�-��
�n��o¸K�K[�=8-��8YB�k;�&��a��7η�A�3��F��z1��!��G�&�/�)n�4��U5��a�Ր�z<=)��!�(���Y5}HeƆ
		����%��V�񌳜�8�\�IL#]�xM�9�~	���@�|Rߐ����	/�Vя��BiX�F�*�7U�5Ur3N�1c�y��e��u�P9�4�'�&S3�ϊ$�FM'͢b��3����Ǧ}�U�vu��%�siC�+$�5ˍFb��Xm\��e@J�Fa�+3r���[��`��0ocE+FYOY���A��Kg���Zlv��HK�����V��>2�������yA���଻����Ukxf����	�*�ʠc��3����_��j��xJ	msX��U9Ε}�4�y􆗋T�ل}����$&~cx\7����`7��*�%ݛd�ꔷ���y����$�$E�)AʌF�	/�W6�����_�K���c���g�7��kگ?������Cǝ'ڎW�rB$�=7��� rr�`\bE����o��RP8ݓM*�����0����ߧ:e�'��2HBv5���cT�H�M�(��a'4�mƔ�`Ɍ|��Y�;>��Q�޽9TSΫ�O}�s�����;������J�@-�P�4]�����`&mJn��o9��j/�f��N_4xX~���O>��
�X��JῷXT�hq�V��EӸؒ$�?���p���?�R���s'�2>ۓ�δ�����_L�9u��k��=�~[��*�K�Ď�{f�.�Jv8=���l�H�@N*��
�줷 !�j?��r���pLq=�-R
��)���4Fek���K�
�ޫ:k�����h��7�s�"�x�?99��cr�%Q����n'{� 472��3ztşhY�h��}^��R돘�':c(���Lp��^�/i�D*�=��"mF��@,HoJ%Y��#���Ō��DH6�����}���j�ا�7|J'�eqК�R��V�x�HP̔E��H�������yk�"�W]�	t$-�.=����D)fR�%�5)|�lA�т�x�~w�P�aG���Ja��!S��P�&gA$%rA�&b�	jM��פ嬀�CWA��B����A�l�����p��Ԍ�L(�v��n)����͛Rp�.Ne�}�g�s�g��p����DD�A������d)C���V���i�x�&�F����Y��f*�K�Ӱ{nX��c+"��!�t��a��Ⱥ��G�eD���nײ����ҷ�~���o RM�����a�M���B���{���^���G7��LiOL���4g\����N���~j���C�Jܻ��Łݥ�aF���y�1��~��VM����g,y�\\2� !(s�Ī�a���,�^�qI���9�?���
ĔFN-�|6+�ף	W�T��=�?DóԹ=ݳW(��J�U�-��{�wO�{�S9[d��։�T]<0ׇKz�Ҕ&w�n���G�Z�q�0���=%b<X�D��6�UL�p��d��Y�VւU���<ϊ��Rݫ2
��Ϳ-�����1�R��i���3���Q|��x��Ì������|�o�ᚦ�p�j��i"�uߓ�:���z��YH�g�%�À�e���p�j��P3٥�^L�o~OɄ��:m�e2)	�����{F.��>I���sY"6�ʙO+���>Xd]	�!Y6Y<f-��(�)N{�[��f��fGZ�d�s4x�N7֡���11�aM�} �k���͐R�(e��$`����Z|o�:0980��Q`(��IP�-�6���U��N�����e�|�	^3nI�`�o;�+�w�X_�tˣ:��Bo�R2]#ݦ�%�����뜜Ս66bOQ��P(S����gpr�\�N�T�[gzzoT��gĢ�^��&1���ى�!�Gl�Pm�F��#���16�D�yf�3:iU����ber����s/>�8<��n����Iӧ��fHv6r���&;�;���h�pk#yn� ���:Q���$�r$��'=�)瀫�@�=����
�EhR�g���8��f�_����JU�P����<�͚��ncb�Ž���
�
u�Fu�M� �Hq�VԷ���g���j5%)�b�4q�_G��?��zo1�,j���;��	K�y���F�(W�����T�ݝ#8�B>��+Bvr�C}��xH��.���~V�jb�����5o=��e��E�p�i%ɒ7"2��$W4#PG�^/�llC����u["[z!����)X�=����]q,�:�PY/�M��l��Q�ʁ��C������՞<��U�{�7��/T>�?�:��M�f!l���+�ش�K���BG�ɥ�����d�p��ah��W^Vcc�I@��Zju4'xB@��C��"'[YH���Eq�傠04O	���̯�#�Hܨ)��z�U��!%��5��/WJ��w/$R��ɤ�Db�gZ�&J!��˴��\Sپ7��K9�z�J���(���Υ'-G�Bi�

v.僾�����}/9|�#b΋~)ѧ�Υ�F��n
J�ͤ���a�X�z�֔�u��7���J�BCr��;�J�gƓ*r��J���Qm<��Ζ
7ߟV���j2�7�)f��~��@U1�b���I��m���$�n4�'/�6�F)���)���.TX�����t(ȝ�`�)�eRS���쥪EZҚ�?,�c���1�R;�
t�̷ic3~p����Df�Kդ�YUU�
�ƌ������ș=����ϟ�5�ֆ"��-�x���d��0����7id��cE�����`�â�n`�t�(�D_dQm^�������.:�P�;��a�)�'��܅�ZȦ,�{�n0��D��]��n2^�_\��7��Qsd,ء����F&��>Q��tV�c7��3�����8�l���i)����B+Ǘ�ۺ�-)ʮA��GN�~1�dS�1$�� 7�eJ�p��<���7���
[�'��_LsU���>��d����G�����W��_Ї���}��j��\1 _ѡ-8��p>�"�:,T
���P�A�p���$�r��������*�\�"�;q����d|KC�}�o9o�_޷��{�2�,K_�91HЄu�OY�ǓvPG�=�H���~���w�n�ܓ!�(���Z�it3W��$]�^)�?U��:��x�l4ө��Wͺ!�ϟ�1��1�vI�F�6/�;>�C�yILDS{����y��2O�yb�g��d�d3H+��2��$D��wDj�5��+0�wa�R�G�1YT��R�֓(A�^??�ͫ���׊��2�UT�qj�΂ݖl�B�H{l�h��hڸ��ė����6�}~���R�$�:����t���f%� ���D�ڏ��x=O�+m�0d�;�!R8Irç����7;�f�l��tfc$��Ŋ��L��z.�-�iJ�g[��2�)r�7&����{��+�HN�&�-S�� ]��9��ᯂT'���;�9r�#"^��y��P5=?�.|�Q�H
0~WJ�ݞ&I6K�j�2u`�.�����h�TX�F� ���9�r�vy_6Ql�b�UY�G�ַ�!d�ۗ\�2��ȗ`\eNSf/A\���̓������Htr�;�y}�t��D~v�V����VٗC��E�{�`�+S���G���6-h_PZ��z�r�`a�u��K�ܜ�E<OL!�ǫ���L)'�!V"G&�����`�<�gn0��|7{X��vY9
�Z��=imqH�"τ���[�,��>��/)�ge�t(V9s�>�5�e���q�=+��pq1X��`�t;�Ϝڰa=��Ɇ-�!�f2�ړ%EORZ��:��0O��b##�6��kkE(�MLw���V$��l�v�W��z�.-[�l�sn�j�,|����[|��Z]U�W^�
݉z�"-��sN���?�K��?�)疤e���P�o�dK�1�⇹���%a�wܮ]^z\�u���<Qzzc��h�;Umv;��A�A�y�$��rl�=�/Ɨ�z�P��Xr��u��%�-:�j���jzyY�U�q�q����;p�B�&����	ﲙ��9�Z�%5�O�y��k.����H�c�[߬1;IՒ���wt������Nk����8t�?и,z�.��w`�JMZ���=x��şf/}Нu^�Yp���L���5E���b22����Y���J5����{�罗V�ژ�t��
�d���]�r��0���#ى\O�G�X�����ק��K(5�}#�C2���[���x�k�D5�#���EJ]?̹���e���߲�$I�M)�G�X�{F�←2��ft��D�Q�77��Ys(��@��Tx�쇳�t/
�~���	M��'�1�Ҝ%8T|�=����߀��j}��g����єJ<�ۦ��3Y�4�ѮY)��Rכ�C�i�9����*E
��Lŋ�A��+fjO����[�Ko��;$�@.�u��$Y!��7�랣>NtM�N�����p�eFAy�.�#�Hm��d�
�sʇMCub�nb����6���{6����}�X^�#�mﳼ� ��|����`C*w�G���rI*חY�*����G/@/Ry뛒�R�,�Z�q�r���Wa/o/<�&S�[S�a�eB�7d��W�X~g:W��ٶaC�<V��O?m�'Zߛg�lsxw>>�a����G:�����B8�	I����k~��3�f��O,t,v�@W���
�^D�^���T��{��׻��k9����"�"k������0�JeY�}V_9�ZV0) '�D���$V}���Pށ����@��	�ZN����VX)�E}�g&�l�{e+�~�t�8tP�Mx]=�V�����L�8�p�x�/[q��ϺZ����H�|-��+N9Ǿ궖s���Q}��p�t��y����6��Og���Z�0`�`�0��EU�%��$�+�+����y���-�4l�Y�:f�OO�?R�{�%�A�5��L]���F�D��F����T�}�0�9�Y���of�o	���fUg��^Ƨ��kNχD,�.�AcE	!������L��@��R�;�ɚ�s*g��G��k[��n�k)��Re�{�Zʬ}Rg��B="������?co�t�ڐ��Q�&��{\��#2�&�>�[<{=���f�X�7a�4�R�{+H�@�����b.�X���|&-o�fs��9p�Ch*��)����W��6��ff��
��	�eg
�q
B+�`��@Z͜n��[v�D����kޝ�R�{�ʈ�t�3E,��K��i��	�9ʵ�s\�^��o���|'�.��aHoJ__���sȢ���UE�g�c-:��N�?j��ϥ�?��,���w/���[\�d�S0��ґ�f��5�?�7.͞��#�����q�m���Ip:O�3s�V:�0�����U�s��<��%e�qmw��B��=i������,�N��������A9?ۓ͘�HģA>w<{n�8���W��&-a��T%e�V!󎸵�v)]�va��L���o��z����#��g�Cv����Yiw�$Á�'�K0�����	��}����A,k��)�C�[t�����^w�#]����u2S4�wy��Ȧ��{g6�$;G��e��ƀ夂M9�~���D\��q�]_��{�PY����I�XǶ'��:�~�{��l�~Ň�׵�\C̐
�U0���	��n1�ô!&�W�z�I��\e�?�BG>�8ق|)�2�c���z���05{�)��bD�	1�ퟌ��DUL�8�M�*�{��hf�T�����a#L;+Z,�q��g,$���q&f���7L��C�Pp4�t- d��dS�Ӻ=�~����jx{�v-`��YA>�}.d�el=d�ϼ`l�jK��;I�xJ��7-�[��4�}{�뜬e�j�&y�,N�!�@K��0�M4p�/�;�#���ȓiGQ��0�F�bҦp$upY�X���^;[y�S�=���W��*,�|��Ր띬0�HlKt�OD�_MK�f���I��ɡ������w�m�l��w�"Sc�C�*.�T�M��M�����q��LBqJ�����d��Gxn8y`
�S�?��JU�L\�0�����M%|�b�.��RE*aw]�B�W��L2��tv�l"[��˴�H�qV��P�3�tc�y��L�d�N�Y`ύ��c]�Jg�'�}=��A��)ep��x��#�+k�>��-d	��V�������Lwe	q��v��h]�&�R�
yd���P[5�Ld�T�3W�d��Fuc�Ui��?����$���K��H�%���ySS"�3�yH�HQ��d=�R�<I�XTm�C?5W�U?EB��C��>�u,��ʧ���;s����gVV���.� CH&�Pȧ�no3��������#�;��1���P�S�H&�%E"rŏ�f�`-��Gjq��!I�
;��<�!�r ����#&��a��l���(˧�e��)+0>�l#FШ
�"b�LM�)�ɤ��zd���0kطB���i&�˽��Ϣ��'~@Iȼɻ	�?8��d?^�/�������BV��f�c�Δ/�&a͍�̘w'��i.PҘ��8Y�bxq�4�V���|o��Oy�0��S�)�0Z��Y�����������=~|`;:'��)=��!��0�	$�WX�Q���R��z�B��.�G�/m��)��9�sK�4��gh-��t_8A��;�f�jR�N�?m�a|	tmVU$�"A�gŰ��xH)д���
��"�|��G櫴O$�ӡ[$�FZ�*ɽ��?X�鈷 :.�N����K�{5�Jum�)Nj�)����b���c$�`�
ވRl��r.0�{UJf��x�lb�5M<\�Uω�
���!�~фM�?��%*�����5�r��y��S)w�p� �I/7ą���C��Me(µ!*8Z���'��2��=f�'$��$	�w�:	�[��ɍ�~뤷øe#��4I�j�]����
��rg(`8�����4b�0�:�?"`��87�Dd���3Ɨ5�]Q9h�ia�*,�r�>^���Y�g�;m�7�*`�
A��|C]
�4�_���$����Lsm)��(d��C"�54ƻzOʶ��G)ѩǩ��4#3U�d�t������w���}��O�����H\�݋��b�tBE}G�!��6PK�~�DB�T�;�N�	zwx�5n��¬²?waX���iswk�/<��i��=Ԗ�/�T��s%�=��҂��Z��s� MKb��l�l	U��,�QKt�y����G7��ur�S����Vd<JK��U��6o8nvf7�w�^�Tp��%8�z�y'h�܅M(����~Ȼ������?�Y
�,'=d��[�>�.��wl
����O�(/>��E�&H+Xu����!��]�����ls���}��M|�x*]�c��~��5�;�2�}Z����5�S��W��%���XIN�qV�M�p_�?�hZ��[c	���:O���5w�F�m
^|{��V�K�7���������Y��F�����O�
2(��bY�
�����r���q����H��	����I Oʂv~��3�x��Q�Q��͂���vwwe�W�u6��zj{_�;��r�SX<c��*J��AQYH��+a��D����Kc�=��:k毺+'��ﮚ�4�C�y1�|BP�.�]8�OE�̒:_�mdg�(��`���g���,���I���|���}�<ݰ������3D�M�i�w���'��>�c�(ҭ�|������@&�w�!��h�0������s���z��'�4x������2]!dA���5�����܋���)�h����t�6	�M7�C�����ik��~����H�Q��h�lĹ%u����?P�$q)�a��m�\̷9�r�p���򎄈��X�Ƙ���8�%6�U������p�Wm32���i7�HHޔ����'"淋V��^V	y%�{�K���v/qA :�����E,$����Cr��͝��	�%�2l~00.��n���oͧ��&��]&Q�N*Wh��<ˈ$3��p��lj��x>�J�6���9�f�Bza.���~x�D��3B�����۩��k�#bݣu���[����j.0�.�R������Q����$7gg���EgLe���q�H<�TX�!cǂ�x��k\3� +�q��W()�U ^f�Q�mE��VI�9���6i�,�����-{=k�4��\}����P%��3OD��~C"�EG�Q"1�%ř�I�1m+����|�7�Wg�姈�=f��wK�
���2����kb�z]�ɓ��q��9=C���������x�,�l�w���}����>�`<G���͍���f�x%��n.r�9�8IP�I�ʔ�To42K�L�dOg��p���P�o
��D�"�����6 �Mb�x	mIs4d-6��4�05��DC�g�84-�Sj�l�M���
��~�~:�˞ۆ��,:H�	[ަ��3O�� n�T��nXlU��>P��,�cNۖz�"'9����Hj�\��
���ۉ��C�A�+�=>]S��p�;�J��f�_�_}q���%*���P O�
֮ؓ32hGL%K�W]]|uK[����d�dF_C�/���Tń��y�&>ҔE3�M6�1�7��iz	޻|ڪz]MMyN�
:Ď��ށ�i�$���Ԝ�Z�Lڥ?P�ѱE}M�*fH��b+�(z7v��פ"�Dܑ�d	��w}uUR)��Tc(�Q޽�8��FK�����"���:+�&��!�F�a,	�'Ț��Bu0�覆��ũ��"��LQ#�1SRM,�qej(Q�����<����3��aE�N��̕�s��O��ܤ��Ps\j�H:)-�ً�]�֒^����d��r�4�gv���(���¼-Y
\����S�]Lv�aɮ*��ư2���*7S�ܮ�Y�J��瀃1a��K�@�����
o���~��ƿ1��V�;3.4<��y���	"_2��V�~vJ�;s�P;?�e�>��nl�u$%șm/��O�=`M-[�؈�e3���ѕ�\�8�!���P���#5�E���\�^9�d����B�=x@ڒR��!���Ry�<$����[�|9x�ZsLiP�I�T~��z�,��E���uL#9̛�;�4e3j�ȫ@�Cii��bO
��"���XA��p������{ �d{	��ND��]fs���
V�٘y��핕?U��D�Up�����m��T�<ߋ��~�4d�Z�c:�c��pW�u�ȸ�wb�MLSL"��ݵ�5?I��(�I�'�$BD٧�w�r�**RI�gG�o��o^�юEa����<y����Q	��)#2�Q��
��}�{sa�@vA
�缘5�
���#��‰OڔQ}��E��\C�hp��a~=��[On\M������6�l�FaI��&Ĥ�AGF��>�2
^��N�Լ���S�K&F��M}�*UJþ�Q�F����e�
�v7�I�
4�b�͗I�d|��Y��
)�a��s�	�'���d��&e;�MF�C�j*2�U�Y��Nw�.����7�_�5������8łv)�,'B��ɷ�{�ӊ%���Ek��� p�yq!|���̔'��:a]���"�U�/4����ڌ�a����,��]ᘎ�0*�q��f7]TS�K�bf	&�yw�d�Ǟ�`N:#
w�'E����zw�nd��̕�"*�U�@Qyl��.(D)Hf�r˵6؟c�N�[1����j�e�x�f/��]VY�3�}�6�K]��a��jG~����l�I?iaPi�x�mQ�kA�\����^�(+����֝���m��$� � �:,���Ѽ���r6�;�,Қ�(Z��.0����y3�E,�8=`�U���vP!�#%(Սml㤖o3L'|�>St�ýYDb3�8��V����0�R�n��!34�N
� ևY9�]މ��c��h?9���Y�Ǵ�ɦ��2NtO�k2
)�觻Ri�t��ͱO�#�z�x�>�$nC�]��+IВ�kB��'�m��8M��m�{�gq�7��n��8�O߈�m��l�o�ȼK���,/g�O������l�1�t���>�:��m�Z��(
���v��޽�Q���;'��?��jj�O��#y��/(�񙫕Hi�nݻADVJ[#yG<� �Y򥈮iq�Fb��[���f�n_$�F�ӏ�E����D��eؖ��^y�*To֠�ΗjYY��T�Y-"D�l��U��sh�f��+WWK2��3�̮
�v��WW��^���|����5�.�a��F��j+�����A�F���8�����=Q{T���W�v��r&�B��R\�;s�U�����T�#����_[fǗ�#_UC��q"�L���x^��'�#����q��bP�	i`gج�}���)������?���6J[Ɵ�Zl�܉ ���3D�4T3/�5Gd�evg��/�q��İ����u����5����I�64`Ɨq��t(�g>�TkL�G���5�7!�1=�{�a����j?R�ͤ�!����(�v�IA蝪glB1��r�4v�m��)��fs=|����T[�Am�m��c�ӑ��˳߼گ	�����<p�Ő������������~e�VAIDy��K���R��]�������~S�Q�RZM�>��t�_q>|�![Y����˴yoۤ��ڕ��xp:g��;�q07��=Y LM�Wf|��T-��H�e^r�(��g�DZ8P��.�+���E���知�ſ�����Wt�x�P�A��F�
���\��5���v�c��:N�M&�O�N�I��4m?pZq<H(����Tr	�]�<��U��E��7�=f�w��	^�z�
�g0Y)jA)�TTWaԥ��HR$(�!ځ��m8�u��c�%w�8��7+�=��y΍UW�_]�ͧR�R�g�#fe��u����RJ@h�`T�*�2�+������{k	28�p7�uU��#[\L���5�N|��G���t�<�S76�#�?��q�Sܟ�J��Йn��wɈ6�vd��1X�	ە़Y��Y?�,��h�T����x����5��d�=Դ����_:�--�M‹�$}b�E1���c�f^�K�N,�H]���,��n�&��kS�ܨ<k>��Nr%�pdl�N����FV]k���UI�:����y�I�~U5)��R��@ĶZ�â2�kͽ�{���~{$^�a��$���d���ARs��U�4�U!�f�l"q�6��1iwƮ�A�������a�r��2��e��n���E�7/��f�G�/�Ÿ+�t�����,�ĴR�6���Թ�YyF���?��=�_ϰ���.�xULN{eԡ��v
1�^�U\����B��v�^�׺�²\�Rm�gZ��P�V��l��<�s\���f�䂔�J�c�i�.h��#R}R�N��)���9t&��-�5�'췻~����/{<�t.�Oy�>���E^��,��C�޽�u?�\@��<s��1@�ӢM
M��T���n�$�ج�E��v����y����� C����k^xtV�A�8]�����o���s7.���V5��R��[�k{�ʱ�YQ+�o��;o���Gށ�\�X��C�h��7^?�7��G��WU�T�z֞�s�L�O�ۚ1�SOl�?�GH��,����9N�:�5Z<�6�y g��9�F�Svj�:%P�G}/*˽��y�t':03PK�ze�K�����	�a�Eb&x�3���^cz�#8����rL���oI��i����pe�qF)E�Ҕq|	��q\�q�����Y7���M��	�S�_ܠ�� ��y�'&?���8q���W^��"���?�y�V�ݜ�ю�ݵ�+��Q�DY�~)�o���j"w�7
3�ꫴOǔ,g�@͓{Dͺ��P�O�򎛿�M�Tt�pZ��d�1uPH�xK��Q����^\~���b��G��nۃ�7����z�kr���=�����0�ࠂ`�����1vD�o�k�-f(���xCA|�N�+�M�6οB��anXs
k�f�������n��>�Q�ݹ�
@A���"Ҵ���m�8�ﵗt�Q��v9fJ[x�4�ax����V��<z���̲��k�
�b���3a�f8!@i �l{).�iBnI�;��U9xv�Bc��-���}�+��}ig�J�>�i�R�߾��kf8ʖFs��ԙR|���(yH�@�C�h��<iJT�ÈTѐ��X8s)�諨Nhx-�}�z���zNB��?����:��y}g���XgG_�#Y��h��<�xN^�?�l��wu��y��Yz����="�~L�.�~���s���Y�<h���:���Fq��9��*"I'��8\�|~?%(-�|wl�Z�Q��[�^���V�YK�����{��k=3��CM��y#������+��./�5=���[�L5�7�YwօZ�Nk�QY՘�[���IٴMI���JpM�l+���U�"��^߼��8hm��!���,`�z��M�߼Sa���I�a[���	5&g
���Ɲ?��bx����X+�
=̶�.\���"�gt�E}�7��Գ Vn�Z�'�t;^�k���>:��bx�ѐ}8���5��vC.�dS�M������:����RS�*.{�q!
���U����,�۲n���zC������UM�܍wa�k��i�����D�`({�J1�9�h�ut���[�e�7#�`?�0��i�e{p+����G�K���2����b�f�e����j���
_~\�|:[�;޾�[f޵����}Ե8V��u&,5W�&����?<p�3I[��dy�=�V?*����3��?�z|��� >;1��k)]�{�~b������x.�
��Q���_N~�Ni$'��ƉFw-".yF�B���aV<M�a'
��>!}W��iP�s��v���e8���CaO��l�
�t�s����o딮�
�7��8e�k�$W0�+�"�!	!&�0U0��S��K:���a��hj˒� ������Yc����M�ʜ�`��]���^�gRd9����V���@�}�_.|��(��Ѭ�}�֟?��xI�� ��9�ㅹY/�����{>�/��,�m�+�>�I@�����>k_�[n�IC�=�^o���V��l�ZAuRVo�:��+��Ѡc����:��^x��R�BY5���r��녇��YUJ��n���G��\�xH<�Mosrӊj'�ۚ��T&%�m���$��X�t�m��br�/��F��A�c�X��P���' ������3��a3� 9$�{H���v^�Ylv�ς�}2��g��i���DG����� D!%
`�0�h'A���!'��&�&��ǔ4����ɂ�޸�C����3a�����=�t��0!p����-�4K����}wIf�p��`eJ�%�Jj�.�*NnS��X���o2_�+����w��r��o��y|+�����`��|[h���A��@ER"@ĮJ޸�����Q��j��~�b������Kܴ3�f�ȿ��6^��3�*/�݇=�:	G!D�XQ��S[6o9۬��
˒�=�~�f�r�Hu�n$���g�[����ǎ��l� ��B��,��`3��K�(ڔO׍�>h�WA9�����x6�<�^���K�۳� ޮ^����|��Th`�
_HfE����	�����t�Ԧ���7v�64�4��)�K��Of�.����0��V���	tI��K)W��"٨�7eg��z��zlŁ3a���v=�+Pܸ��k�͜�'fT��{��X��6]{�U�Ѕҋ��=�W2��%�^zf���Xj�6=�wN/�
k<����N�gB��vE�I��|ߞi��e닱׍p���S8��~��K��o��4��Ӷ!Ys�궠����s��S��"�f�V�n6�)�{'h�W/��7����}����~���k�cIԤ�`�nM�XBM�Z!�����?�¸:7�4N6[V���;TP�2n�!M0�J��=�u���,�3�>1��4��M%���J�YhZ�|��L�E}I���ChK%W��#/h�ڑQ�)��@���G�mLx;f߬2 
cp�3�>E�C��Ԅ�'���)7�/)����^~Q�'�<d��\��bsnC���Վ���x�c�!_�T%�B<�e��GZ$=�Y	`O0���.�/�mu0�W6��
ڲ�S�I�˻�HܬQ"�̟�)p6�'A泟TM��@��
?T��d�i�BE�˰M�5(���R���;1{�`��S^^t�~nplU�ٳ',��
E��E�j)�h��
V+�n�D�']�R2�1�+J^�5h�
9����p^�4�1OFF�q^�X��Ͱ�83jrx�c�����j��Lj��i(�K}��\�Y�A�|N�.�4l�k�����#:�׆ơ�D�J��d��~�^�h&��#��	`�v�;=��?�(l�G9a >#ݞ�:__�Xz�6m�eeS�[���!��d��J;��dj�k���+��,�H��_8�%'�Ղ�N۶=�,t ��ge���ġ��O����U�BF?(��]i�����7����f
��׉��3�ch9�VD_���JQW�ֈҴ��j�3��f��CI6��e�xE�<GS�ɮ�ޢӌ���I��Eb���#�-'�t�0#�v	����||���%�ȗ>����!~o�<om���D�r��my��j_�B�4ȓ�=�?�-x֧�G�BA��9�oWڥs�ts�l^�KjƜ��[HpL�Ȕ�ę$��	Ԁ�]:ϳ��n]85����@�-Y�ؾ���im����#�6�hSItė�q"�쮱��AX|�[�V��cv,��&����|�/����ث�L_�_���̟���.�aY֠7w�K\G�L�n
ՍøqOS;�����w�9A�z��%�����<}=`�.�D�R�zF@��p��`~��
�J��Meb���\"%lqcâ� ��egS�����]A����vPK�+��n%33х�U(Q%ޭ��5}N�WD��R���l
�z�y����^�\!�5�� �u�2I�tQh
.��ji�����o[���=����N�@�R�D"p�*C��4u�F�%#+p�P�y��{=т��Y~�Α4�u�x�uk���c&��>M�@�čr�r�J��Y�f�s��%ӓ��,�Kx�f�K��Ib�$?�-x�C4
�^�V��@*s<��U{�󽤡�����:D+R~�0�=g�q�Yν�SS��[�'�d���Ġ8�
��*[�{� :�W��h`�I4��C>iU܃��'��=�����r&���P~{�����552��qy�ƍ8(F�y[�oPCmCP<�Kcb�{�7��9�_�(���~���P�F`�D�(mpU�pL��>tr����e���R��9�L/,�N�.
I0��M&�1�F�I�o^����<���H��8+r����JΊtHmp$P;��MC���b�C��q◵�JdF���y�g��d��&7-{��ğc*֜�����R͝se���ǧ����+�'砿:�P�5x<���oѻ�$��K����$�I�"G�T5	,�z@��-;�#�!�K�-��n%R.��D���$8�^�</��\�Vk	%a���InT��N8H��>�g������U�K�:�2�C}.�S�CJ���N�F�,Q��X�xI{XГI�9��+�P `_�]��Hau�h�������è��e�8Lj�T[=��#C�ƛ� �<��K�Ȱ�f��ڹ9�ĬHam�؅9�A����������D�r%Gc�5Z��K�.��f��a�5\{L�?/�`Mh�Kg�W�\0[��'��z�~n�N���X4�ӣrbNޏ�K�|20a�6n��SQ�6�!�nS
�m�@��?5^��و�0�z鴎F��̄���brţ9��"�ӎ�>�+��w�>5����'Ju�
����GV�J�]
y��Q��p5��D`����S��Ke�MZIՉC$���qԔ�\��u�Y�G�wC�ˆ�UV���09��j%�@9EdD*iq�Zע�c�@�����@��d�ЄQ���d�#,ѕf�bc�–���sIC��E��c�ak�V�d�똋WB�$)�Y5/8��U$`x����`��C�#�&[�[԰�mu)G���ی��J����˥��z�;'�چ��A�r�e�N��/$�pT DN$:�h��$ͪ��9���T�����3%k��ijY�o�0K��kA̐E�;��E�G�&E4��1����шr�t��ޫj�IF�W���1j
�h4(
�6��a���vƘ�$�|b^�t[�.�9�
��Dp����
L���Nm�����F"�hq�[G��9�$�(^ڢ�ʝ�\�� �A�Df-c�a�. lqpY��tz�~�ƪ�B�ь���yڂ���d3�3�n]���+^2��kp�J���z�h��8�n(&vx	u?�<��t�q��h�0fF(�2X�$MB�W���B�,��%E�/�%,�X8�|3�=2T��@P����f��[#Ad9F{��u�?��YC!�K��c��fS�j�� "�=���N#qݕ�@�ch���Di�9L�	�
],Ւ���j�$18lio�Iv��6\�j�� ����B��Q/��xZ�;��y�ujd���M*N�:QȝHѮ��0�ՙ"p{r�)jMh���ہ���]SG�~��Y՘[�A��U���'^���A����6>4/���ǔZ�8o���|�~��}�G~����ǀ$�2�<�x[����_�2.��s/[��8NN�o��4�%�X�ŵ���iZ)	�C0�Jnyd�D���L+�4I6
��u���*��c��l\R�H�<�}����Ū��l��L�8w�2ӹV��qQ/���V��?Nf��Ze��FX�A-[�ˇ�U�N�Ok �ʪ�w
��78]Ա���J[!�c~iҮ��	���e#0����5ɢ����%�H��p׼#[�TK��\2X�AĘ}��i7�.5K�w����j��V�?�+�#��zb�I�:�Sdfw�M���ܩ�
�B�rտ�J�ڑ���e�pi��U{I�^A��S�g��y���k�Ƈ¿�1�4��D���E-+��d���j�,�)�}�Bʫg��&�V	c7� �_�!Q����}�ɳb-$���
���+�M}��?�>o|�	����:ٿL�#B<�}xM����hv�yT�d��ˏLy����$ n4/�vNV׬8�g�W߈����A)-}�1���ɟ+;�M�
m�c��W:�:��1��O�Ƽ���<�zN���E�P�n�K�şC�ĺ����+M��hɨ���z)�}�Y�1�^��ʓ���E�7r|�AX����E�7#��*m<�.a�~	v_��r�L6������~��2�46�c�9�S�L�'a#�ګ��d?~��G��O�V~�]���s���i0ʆ<��Xx&���ST����i�5�cX���Gd=�6����x��$Y��J�-Bu��Orx�b��e�"m��$�D�N�f>�"ч�w�+�%ԓ!�>��<kq�h�AQ7�,�H�3P!iNj�dZ��t�|ŮU����Ҧ~��׌)��ʱP����U�t�=����9h�4Τ� �ߛ��!Lc}U�e��/W���[�:�a��rIput�8":5#��R��g=Ȍ}�y�93�(\jdp��A"
�?=D�����
��J���"Z��m'R�;���:�Y�� ?�k��q�B��,p�
���GFC���(Ï70�ѓ��S5�?���)4���ѽ�@z��|����1xP4�&v�����ET[��?��?���7����d�4�FVGq��'�/ϰ}�6���a:m}�\�W?3c�C̙+���̪�����K�E��(d�Xi�O=!�b�v��2T/	#
*��F�8��0x9)�TD��^dE#���F%�P9+���zq�p�M�T���8Wc�6�MPZ\i"y:4��
�\B����h��~���7P��`��`��|�aBDIVTM7L�v\��(N�,/ʪnڮ�i^�m�!P�\�s�(4���$2�J�3�,6����"�D*�+�*�F���&��j�;j��������y��AFP'H�fX�DIVTM7L�v\��(N�,/ʪnڮ�i^�m?��~<o?*q��m
d�[i�a\��	eE�tôl�� ��$����a��e�vô��e�R���I�����ś�?�� „2.�����n����Q��Y^�Uݴ]?�Ӽ��C�08�Bc����	D�B���Q�fs�<�@(K�2�B�Rk�:��h2[�6�����������!P�D�1X�@$�)[�T��d�9\_ ���'��J�Z���
F��b��N�����@�	e\H��j�aZ��z~Fq�fyQVu�v�0N�n��k�k�"K�) !+���e;���0���$+���e;��a'i�eU7m��4/붃�(�@��,O ��*��`��.�/���L���J�����)�����prvqus���@FP'H�fX�DIVTM7L�v\��(N�,/ʪnڮ�i^�m?��~<_�&�q!Ɋ��iَ�A�I��EY�M��8�˺�c�}���,5�I�QTM7L�v\�aBDIVTM7L�v\��(N�,/ʪnڮ�i^�m�!P�D�1X�@$�)T��d�9\_ �%Ґ���O��huz��d�Xmv���������B0�b8AR4�r� J��j�aZ��z~Fq�fyQVu�v�0N�n�q^��z?�0��IVTM7L�v\��(v_Q�3�wUX��gD'-80�K1�}d�B�줿9$��S��T"�b2uc�QWop`�x�7J��~��}SŸ����߉���7l���3��O#��:^04L�%��Y��`*�o�2Qv?3g�Ǟ�A��nj(�iˆ��1CA�}����R:�	3�%����C� ����DSL<1��5��3Fۡ(rdK_� �^��h+�Q�\����ގ6&�
�LUt���<HP�Bi'��M�yڌ����!�&����BY�o�ܸw
�5n�4�^��R��b�f2�w�}8%D�m��XH[k�q�ϝ�����l�5�OŚ�c��[!7Pk
�n=>���"�
vRl��Nwȩ�r�S��Y��Zu�|����/���Bq�ig��2��j��dTuO{���k(���e
ׁ���L������kJ�Mۋ/Xt#noԴ�uf/m�d��QS��Y���i �v�?E�%�G래�T��42͌�gJE��&�Re2=]�U���R�lŢvc��h`�Ƥ���g�5�pq�a���Jm�(��W�E�wu����� ��ҭ�i�:��uaUA�L��l0IBJo'$ս���9uj ��.�5����I����Q$�@�5s"��9�L�A�t
:���I�z{�j���^�
X����Pq�OǸ�eu�z�k֒���Jhb���3}�5�I�$E�8s�m�v�J�5�ZU&�zy��Nzv*]�{>���4x�V�)��6>���;����k����g}��S$q
۬5��\�^��]����l�d�ܙ���m7io��5�����?�vK]�P�$�r����K�F�j=�:��H��“)r�������<
�o�A|�8H2a����|�b
�>x�&:� k�m�׃�5R
��ذ�;�iǣ_�S�Cœ�Q់���n����E�V���]<�Q�6�[��E���9�#t��%RL[��*�"��s��w"s������^_�2�3�+f�B&:��3�{gwJۼ���0��m�Y��OW�����0�i�P����Q��N�׮wp`�߼�5�-1��zǤ����E�q�a��(�>u(^M#U���Z�B��T�&��k��,�;�R�Z�O�v�Vh�s��?L��Hc�«�*�#Pe����Ӥ��E�Yl%m��F�}�}a��K��n��p��=���)�k��bt�ؒ�a�����y����L�D�4����4�s�xNJh�9oH\N���5��a����eL����I͌����Ky��'�1�96�^(�1A+�NJ\�̚w٣�0�qs��k�{'-���aͮ�|d���5���x�j��҄�tTq-?t��݃G{|T��Zs���meRlҋ-�	�;�n�p�k��"��0���Np��O�t3��܅������-�n����a�d�"�M�M��nE�+�h�Y�5\U�5��
����ߤ�
yB$fF[N^��S�`'R��]�^S�g�n��q��2��-;�yիsbCv�%��GY����������g�[�kdI�'�Z�y���ێ0�9z�Q������<Zſթ�	��q�N�"\��K}M����F�0EE8�T��!A��3�^s`�ѱ��mqۧd5J 8�T)�'mĪ�R]!O{��i�r�(�0*���u�1a)�\z+��!��6�&��5�zMU(�I��J$+�-
|*A��1���n�\��}���y:�X�Lf-�?���㶉����1S���"-���kf��^`��PM�����e�r��A�rSߎï%֋ �{���i����a7C�z����vV���}-
���
�C��(��R��Di�B�L�m�A)�=�`+fUm�����QL����I�G��W]t��Ժs�t���޿���4׫��a_e��,'��k�n�N�zX3���ȏ�w[����E2�E�'Xd@i���
^&��;踰0��b^~hmk�T�].���
\"L�D��;�=i���"��8��-+U��@/������d캅�MS�4}��ځ�2u�ត��������B�����t|3�������J��o҆�k�N�G���e/��ɑ��I�4����Z���_��X��
f��s�Y�F�@�Db���.1�m���k�O;SȹF��d��-]�e�,���(���d�CK�<e(����
�\�`m22�)��	��C}�sq/�j���"�^¿w𲕓
2�_ȿb�0lG�s��%���ʄ-��ؚ�y�[�~�!��I�^���.^�L��'�i�œT͞¬c�������.Kl`�B\�R��&���Ϗ*#,��i9٠
�>��i3x�P4~jf�h2	2����zL�)���F��y�mD^J��d��O�G��[��?�ļ��+C7�^��]����%��&�ѬX3Ͻ��(R��LW%��B�s���n�߀��>���e�R
�J/8�d��<}��w>d>�0K5��j�k�>,џ�(���#r3iR��1gK'Y�P3��`�fn;Y�M0���}g�/��L���<OV��N%[ŠDl�;us�JǨS�~� ���B^�
J�a�=ۄ�����X���7�v[B�K�qmՂN���f�x�ו��]g�I�	N[����Fm�$�z:Ir޺օ}�ט��l���Y%L�N=H�
�K����w+���M�<�Q��K�1�r�:}t���>'I*
�ѧk<}�Ѭw�������mުP፮[ʀː�NH��Cb��$��-��*�v��/Bp��W��$�|X�a�+���f5�ߤA����6s_�Pĸ���F�p�������b#U��DiT��q0����S��3��ۡ����׵N�ڱ�4�Ͷ=����W�ƪ�� {?��k$�{ҋ�P�B�����%��I���X��A���'Y?�6�W���<�?q���Z?���\�y	>8�8���L�$r���I�$��Y��H�Yq�&#�������Lz������.n-�8��������Z+Oؔ�I�U݄��2TY���Z��!)i��T�XJ��7�Z�7��;۳�u�E�;�z+.d�@#�� ��7^����������f�B
�ju
[r�:��E|۪!k�WՋ��X�.�XH3�cq�n���s�rwNUP�Re�üwV<֠����—7�n��4Z�x�(���S�~Z\1r���5��Q��:l����g�����q�ߦ�~*�D(�� ��Z�0/H&C�����<m�4n2��]
�ll/z��"�D�ƗMς]��c�F���@���,��m=�J���a��x>�E�@�Z����/K>��@�u|D1ؓ��>f�C��³���ϹI��.|��O���f����P��$qx�/#o���||"Ҽ�0p�u���9 gJ�p�aT:g�&-�j}�>�����L�CpN���f[��;Y�s'�%��
Is����n��O�U}H
$^��[����X��gQi�A~��Q�~jp��8�H]}�.b���,l�PL�6Ɨ"?�|h��߰m����:`*�t�,܏�X"8��oף��b4������ײ�Kt�"ҕǒ��%����{��hq\���U��nq�m(��FT��')X��$���@�lh�]]94���$&M:�E:	��)�`�1)�\(�_�!��?�,�ReT)��٬�oH�LTJ��UQ�������{�G�H��G���l���<0�P$_�?P+d���r��m�T��U"TjE��a1'}����_�74�5��L�Ѡ�ک��cWN3�>����[���9Pw�+n�_�C}&)�T������k���u�ǩ��n+���T�/�.�Nfo��w�$��}G݆@a��JU\۰��I=�=a�/ԂRl�S�#ዹ���Z�&��N�������x7H��iEY��R�9F��ك<p\�E�y���H EK;��{+~Jp�5����R�é�ZQQ~��N�W_H^�AʐX���}G�~d�����Zo��T��0ɠ�`+�Ͽ�h���s����]��Dh|��%S��^9��8�0Q�R�Q�[Ǿ��9����p8�+j][�\�Q�[�f�^�3u^׏l�]�S�c�妿�np��YԾ�l�"�Ŧ����p��g��$�Y�"��=Vժ���;�Ҽ��㸪9�4aI����+��.���M�D��'�`V����1t�mz�^���A��։mЩ�T�����
XU�n����=N�K-0G��j�'W^�l?��K>ZM�x^�op¶(�i`���U
gͼ�	ŵ��?�mH�*-Ԧ�VwzW��d.��X��;M����\F�LJ}[+�����۬�g$�T(�|��F�)S�Z�A�޿ΐ�}O<fp}�⨳�>��F2!�|Ͱ�	��_,pbꮭD&�#�چ�I��n&R���2��ȷ����8�����^P�}T��~gF��p�r�p[S�-�J^o8lƨ����(}������-��g(W��� �6���\�)@q�0�Dj�&��w�H�k��f�#-��q�TFhtk�yp��S3���J�	�ґ�k�/�ɫ\'i�T�pmR��]���.$2�<�&�S���Kc�b)��9�J��n5�<2�B\�G��>h��d���<�c]X<OµU����`�0\0�5��j����Yw�o����>�/������~�I�w�þi[<l�0����wQر�2�Rh�����C�7Oƪ	���N���assets/lib/font-awesome/webfonts/fa-brands-400.woff2000064400000225734151327220410016164 0ustar00wOF2+�
�+�K��?FFTM`�r
��d��6$�0� ��k[ɟqEa�*v���mpG����"��9z��8���>����5�B�v���1�������6��G_RA���P�8�a�2r�g���X�u�d��4;�LNð<� GV��q"""��Θ��
��t��!_��!���4���=j�=b?q�lhg�u�I�E��[d8�KY�h����7N���/ƃ?Y�鋟9�����l��.A��Lɐ$C�%��D�:dJ��ZZgiv7��nLrA��ok[�E��2S�l	
Vp��g��3=���y�e�_��% ۲������k��ϻ�w:�P�h������OoH�#&����D��
!Ӡ��s�}���aB	�4�(�q�I�z�F(	���^;�$�C�L����/؀N.�G�/��O��wQScM�KfP�����FP��s���`�ZX� ֒�%
Hj�ؔ�X�!V���Q�}��o��b[N4�;`"�o�\^�S������D5IMBk�}��v�������v՚9���ī�j��� %�C'�C;�0�̹˙C����*X5k�WDnMԂ��HAB@Q	�1��+���+]f�vJ��p�b�r:m��b��o)�\�'Mn�dQ-9N2h�3 X·��=���A�4��恄g���pZ�6W#�7�|��93���uB^,'�!��Z��P������1���rZu���d�8+Tنd��h���w�����9��pGd���0igw'l�V��]�*!ؕV��A��UDBIH�lI��� �-�
���ov��cgl��!bҝ�8�;�=~��h@�-����4aٙ��G䊾�`���ߐ�����~�8��L4I�1�4N|����=\��t}`ǻX"0|��P������9EFڄ˟����?P�c�g|�*��F��>zD�����ȧ�\Ar�v�k��ah���*#)�4_-�����U�e�������ײ�0�a߆8������Yl�����
���Ė,��u�8dwO?X�{������]�����w��3Y���Χn��9~:\��tUUIr�Ȓ!0�ai�aߦ��97`Z����b�_�n+l�1��$2a���@]_�8�U���uP�Z� j�Rժ%�|��ޏ�G�T_H�_Q~(jNřH�d m��)y��
R�ʺD�|�����2Pg��v	B�.%��J����)���Bl�/c�e�u�󯳬���	R��>uR�NѤ(��=��r�ϲ���!k C�u@�
WվTP}�ɳyOQ
J��	HA;H�d� �]�rM����}�E��â�=u2‚�d[|�xY��@>���"G;ql���cԝo���v��y\�yBh��3��Yu�C7!���� �Q����D�� !Jju
:t�1���~;e���J��G�I��^��7e
���Ҥ��4�sD����0oF)�Y�J�7�.�s��My"������O��.G�޼˗?��_�x��AB��k[���E��=��?ȏw!�@�g�=��3��M�.9��C�ntF�@ßPҩ��x��G��%�aɁ����|���U`���N��ɨi[8p�ʇw}��2�{�	�J��),kҾS�;�.w�G=�m�o�oϾ"�O�8i��Z���l��ݐ�9�+�z�����Ƿ�������/���}F�	��f�FK��n����g���Ժ�t�'�>��Uug�B=|�������L�\�l�>bƎ�y�;>z��b�l���>��GLU����%7o��U�������fێc��l��'��}���1v��ܽ���zp���M��6�p�6���P"��-!�k��>�����G��9�/��r��`gebh��JT�U�*��$�%�O�9ࣣ���-�Ϳ���eE��m��Ȓ��I`(c��sC�Q6E6��!IN�t��&K/�D�uSuJG5�-�MQ�R�x��4c�`F�a\�yx��P����q�o�:�XK��6V��fR��vw�o��\�|�?)�P������g���{�v�׏��@�A(���U1`7�/yXWB�L��#x�UB�"8M��`����1���-5��J�	QS�	��,-�(`�v-��"+�+"a)#�#onE���4�C0&e0[1G�Ƃu\,�l)�8�lؤ���rT�ԟ7+���#�ڀ#��%fBR�u�Ҧ�<}�@CaS����T��b��yw��?���fB��/v��hp��=�%|���",Ä�cK0k�����C�v%��B���tŦo|2ca%h�]*"�{'��#׻��V>�p��]L�e�t����8�|�⍓�����_&�QJJ@'E��K�)��9�>��%��;�3�A��j����9���k��}\�r҃��h��Z������[��N�-a��e��QQ����,��8��2"ؒtop�K=��"k�[��l�_�lrU��	a8v�{"֭i�f��YH�i)��!φ�`h�+`V�V��="?Ѽ�L�N����.JR,2@w��ʘ�$�WI!��D��ͥ�z�x���E��MP�F���+�$��
�C�i��}NLp�iHȐY���'���B��L,B�\��EVF�-����$�UD�N��ӛdzM�W&J�G�a�8��Djo�bo�8�ؑ5q[�(搲�#m�^�9)s�Q���u���kv�D�%�Q�.���Dx�P���H,1QQ�-[��)��0��D&`��Pl����*���P�O�z���<����=��[����7��=)�(��*M�Y�"Qd˗oi6c��-��|Km+=�����ҍn3�s1Mp7F��b*zr��416_:A
��~BG2
����-�QBc��X���OT�]���Jj(X�9�{Pt����Uu]5O*)e��)��0��߿�TU/.-��H��SV���JO��'�%��#���N�:��ˌ9�U|Mc@/N|���w�I��Z���	|7�|&G�l:a��"���N6��@�R=:M%����p��K~�W�-�	�A~Ag�H���e���[j��pų,n��;
l&M?#�QY��u#~��Cd*�;�z-y�1�g�4�m(��%���z��r�FH�)u��4��a�
h�0���ʄ
�W�p�&�i�:+rcl<E��{E�-C�Fo�נ\���|����,T9�~�⤫ �7^�N�Ƭ(�h�_�ǀ$�	��>�M�?��y%;�����˺�<N-��)zn�|����$���qt�u��4E`�n���|Sģ?�yk"cmdU���vJ9���p?`L�46MhU����ʢ�+o�p�O��n�5�A�
H��Vy7�R$����I�=5�~"�q'5"D�J�by-��Z�)����)u�I���0tŚ��M��@V�1{�յ��e����/�/����$�+^5;�t$(�'�a����B�3?���A�-�:��*I�u�x��M{�rɠb�3�������~�,��Ψ(wy�M����S�ֻ�[l�?��Z�Z��۩��U`�ZlY9w4���d��v�l�۳����a2�V�ŦI*V�Yߠ�ʙ�A�iZ��0�A��0	�͓[`�&��b�ߞ^Bv��8�F붱�h�i&Щ��\��M�]���6���6��b�2y��1�Tʹ)߶��>\ƻݵ=��up#/��u(b`�$��N%�^/e�?���i���̘b-ue���&!:F�rN��4���5��Ϳ�Po�h8�Ch����N�B�Ӟ��P����f3�Щ���s�O~;4�V��L(3Ť[N
f���4��$��V�m��@�[J�$b�����z�<YƁ� 9rp��5�}}��~9̆��aH�\���h1'�C�&�Bg�	���Ї
!��V�a3��e40i�����m,��{	L��
R�ꊅq�a�*��r�{.�'ס�w[�Ϝ>c�{P(�׳KMj�Q��Ԕ�f00�'�r�(�� y&��Y`�mcPj�B�16 �2G�dGT��a|?�]{:vI���:�h���fNw����˰�/�Gbme�sE4n��:~ũDn��2��#�”�Vo����r
2��]�Z>�:�1UQ�~S����,����Q�u��V�9�R�E�cJ��=��f�����hP�?��ː�j!�3�1Z��Oh��2�� �UPx��K�bܚ���_��G˚���5V�vӳ�X��5h���7�ҒB����gī���'@R��|�5%��3�Ϡ�7�RXnI9VًV�O��(K�h��5G��sܗ���+����	r��<G��!mX��<�����s=�Y����~*~<`҆Ӗ@5<DpŦ���8���@�R���q-_m8e��ćI�ؿ�.F �e�
��fg|["~�n��3-��Z�RX䉖KOnc]�Sc��NSD6�j*vjGdm�J������;@���h��=��⃏���Zz��[�`eA(��.�Zǖ߰1���A���K�[��s3\E׉�0Z��qZ�i�B����'XYp���C�P
/1-��꺍����R�j�Q�X�{^�f�sg���j�^;:�>��Ne
���{q�a��E��DV ҇���T?&�ς5H ��uXFihs33+��6�ʶ~D�E�N)Q��t�DI�*�!�%
�咻�[m�j��$�MS�XN)N��2��[���:Z*!C�kM'rM��=�=V���lBEa_uvO/�Xp��t�d��߾i�Ûg)<"�|��r�#�g\��D�M��������p��,UH��-��F3D2W�to���[�^��?{I]Y�;QYA�@�$ܐ熈q9�L�5ݦ�s'���|���Q��Z�Y���^t7�1�pN���f�5m ず	��$��A��ب7Ԥ��+�ܘw�E�{�t�1î��%��9)�P%%��Y���;�4/�G	� ^&��1�}���V�r3���,�
��k�:�1�L"��!��S&�ĉv,楐!Ki�7xt�높L�^�����p�2�H�t��I��E���S�JL��|�T��E�6��r��Ж̝L�o�(��4a�U�ӕ՞1��� ����n��{B��Ȕ�>�	(�[��s���9�ut�a����̶���Ѭh�mj��X�Fmc��/*�C��[o��1w3��qr#�l�崯zȹ1�u�������	���������,���~�6�{���
eL�{y��8Y+b��_��+fw5h�BO�'���1	)7ˌQd�X񣏢�b7�z����d���)�υ�x�.��,t���
	ڭ��m�m�sw%ُ�[�x�=��x��O�%_���L.����\��pu�}[hN�a�����92!l�\y�`<Ɩdu�5��3C���#Gk�47��7^���Eh�<���ZǓ�m�/ꑳ11=Z���bR����,ӆ�i���9�-��ƻ
P�W
w�Ď��$`ؑ�DWg{�p,M9�
UjW�^�"2�h;U�ڀ6ez��Ɂ����5G�Q{^[�(�^�ö�f)s��H��p^�%*�c&�E���Wt+Έ{�s�Sw�P�`I&�N�N��>
�u6��.WU2
:��X��W�7v�1-9-�#�I�I��
�T��HI��[Gij��y�H�	�晴Q�6�'�CxwB�g�t}(���x�*�"�ЏE����.����(��9�e���H.�^Ng�ň�m0��yO���\���ќx��Վ斞���[�Hm��ϙ+m����j�w+ʷ�2�
�8���F"�#�SD�/��se�}-�����m����Ya��/+�N��L횁�g�7�V%i��Vo\�˝ɉQ���"�Y�]y.d���!mR
A��(��Z ��%�!�?y:��&�%�SY8����5p��4!1��nT<�7��28� ܹ���d�[-+�_��N^|-fB�� �.ƙ�ٌ�e��³�"��$�:lS�˜��-1�KbU47�k	�"��Q�4��¾u�Z5��t��#���o�ܭ8>�S">�H��ܘ	g?�����&�8�E�"JC�<�UK�m�B��ʶ`����a+j���LTH��H�
�`	{�/lQi�l(�be�P��֯�d�%�^��00&�Qt��a�˱Bw2�m�r��ra��i�������${�=J��ݒ��5@h��{%�V�6,
��OD
`��{߅�7�v�Y�j"�?��t��{�W��F1��\�&�R#������פ�O;��#P�<���q'�9S|5�&Bm�L�u^o�<+b"�ތ�sk7��$��TA�I`����U�~#F�|����G�n�5"�������7�aV�ӧ���[�J=�M���_���0���y~�v��)P�yd1a_E!�痼�x����F�k�Q��*1og<��������\o�W&l�m�
g�s:U�!�^�~��x�.��7�'~�ٟ;
=����]q�w�t��TX�p߭�㶮
�����AB)�\�h�Ӥ���67��~K�'*�9������Is2��,������
[Q��ˎ��P���5�Ln�-�,I��wٹ�����
E��;�b� �,8�`�X�"i��j�u|���~�a��]!4���<��G���Z�7���OX^
3�T12yS�#��F�`ΑtD�W�&���%eh�o�l`�":l%��$MĹf�8�"�7.��TKB3��|l�b��7��P#A��15�p,@`H��k'3�A���0�_��ZM�2.b��D�1�o�7Ǣ�)i����ݡ�m�8�w�J(61x���I��̘��G�
�z�Zқ=�X�C���]Er��7e �2�-�G�Ll\m)��h�{�V
_��"�DY�X��JTO43+����*��3��&�F�3�٤w���!�7�]^��S�~������[uRM�BqV�
+�0(�<��q�I���_Yn���خ`{�Z�s�pQp��]�}�)��{��N����/�`I��`i����N;�k�E�b�$�}{o���%�8�
�_y^���V��a����_x8D��-�P0�+v�����VP�������"��H�MV��"7�m܂���7�
Y��6:lG� ^6��l�iF�Ǹ=Vx���&+��2WK���B7�?R��S��,�<��|Z�
���2��)@�w�G���k�s��W�7�-9��~	T�b�RF&W<�#�,"��:����2	�=zrD��m�ѻ��i����x�$��h�r�)MR��Q(dI*	�;F��i�^@���mä�\�ky,������{r���N��?�x�1g4~v�@����G��
��E�M�F�صx-z3	7G�-:�5�������;#�ƅ[R��Qt6�]/>���Ho�$�w��F���&^���\$�*���a�X����/o�Gp��n�����N��<�A����j���B:�a�>��e[M#� hϪ>�٣���[o�U4��x%�EG,<��k�҃����F�w22
B��ls�;���lC�y�@�q�>SO��O����_R�'Ǿ�G�+���g�� ���IW��E�|'9j�����U��Ө�߰B�E�V��^�-�����Ui!��c��k�f}2�C&��I�J��
P�����ʍ�-:,�FU�E�h���94F��ުv���=�Yc_
X9L8�^��l�}�+�RB4�w �NN(�Xɀ5���k��+{�8k0��wb�J��`�`��.P![|�>�8@�4�#��-��J�T/�?n�:i�T�>a���c��$�]1C4yq_��H�b��Lw󿼁rf��翚��c��u��;�̛R��'�d1�T1���^F�:A�jF3#�����-a��ՙ/$`�o��	�,����Kܳ'{��q9�R�ҍ�z5ѿ�+����ڼY�MTC�׋�K�Rr
�)���׍B���PN�B�7��c�T͕�%� .h�ڶ4z�р���ڴWc�4�~x;,��٭q�%U�ul���GӀ�K��Ro�봝�M�ά��m{��m�Fԉ�͙�`K㛕MV���섞==]���oj:�V��6C����������
���^��ծb��2Lt'�|	.�1���<S�b�w�e�� $O|����a�����G�h{h�A
h ߰�M�Ё�'�|�qa	���&X~��;��O��wm�H��4�thRqݝ�u5%ʼnz0h"�TSi)!;�cj�����a[�D�&�P?!�:M	5��;������Y`�}�v0�h:�68EF/ޱxV�!K�?�(}�9c�����5U ��v�@G�R\��s�I)�S7�^���"]ţrK����C~E��M��N%b�S&�l��
at�~!�Ѡo��zͼ �\X\�_�h4���Wh�ح�W>����Iи��9�yP	�� ��T��I�!܅TF�X�o�)��껑{�C�pp�m���({�n��D;�^1	R6�*�|�S�oq�3T?��a1�z_��8��W&�O�3�&5�D��6X��s�1�
�*q@��(��歒��a�R&È̆�Q0p�A�e����g7��x��3�C+\m�jY]Қ�)��f~�������:�d4�u��Q��7p"l4<�oLY�ZA�1�{6��=�+����|���k�z����T�8�����_�Lb�LA,K�-���^jMh�i\�T�3�$v�k�G������#��U#��\$������g�b
��~u%L�%̎��9�=�u��=3lT%��(-���*M�����1$4�kȊ�}RTlk�9�S�76�B�s-��鈗X����.@��ke����U�MX�����բU�G�J�����U�Bxr�x�ڸ�o��V2��cv����Sl*����[��1-i��h�XCEOW�#'�v[T)��k
�n����/���d��nB���IV���/�Ƣ�&���,�c=3>�Q0�f��<Gt_&�S��A:���NŨg��4��|ؐ��@�Z-�Y����]�SM�	��mC�W�C��'>8��Vp�u����BP�N���(�Hg��[h,��/HXD{\�?z9����{��O��j�Ua{a���c�,�k�;w֏^�ښ�y�n.��|@�u� �_��u���M/ ��#��a��l�����g����~�t�����ZϤ�$���<w�3	E�gQö���	�O&�x��t����}�����+�����7��JЮp&��^�92�0o�ٺ�R&�r���@�<Iֿ��CP{���'�� UGE�`�*K��Of�j���%��S0�����X�;��./�t��t�hwg:'�zMe
5Yޚ;d~X�h�X��º0Y�r�r��S[)�TU�(D�v�>�T�[����|�<R���K[?�)\_����h�^i�C��b~��n�(܄�0]��@TJ��#uP������!��1�Yj{�v 5�k/l�Ę�>��Cq3��,y��#�����B*&�.�w��h���P�
'M�SD$������Gܝ�Z�̨ ��\��X��R�x��D�ڝ�ɚvF1J�c
�#�+�x������BQR�wu)R5c֏�,/1�l������z]��Qͳ��Ȱ#�BXx��b����q`�Ŕ!;��PҚ�&���Pĉ�p0�g�%.n����p��D2����8��y�
d-��͸@��6�Q���&�%�[�;����x1��Z�Ļ,\�1�dz����>~��A�_��m��)�7�Î�ًM\Ù�m�n�up��ۺ�t�r�����o��ԟ��^졈Y���G�d�Z?���+��γ����W�֖W�R/O��k?��ٱ���V{p��X�i(#Ò�
��0�l�P.� �?�T���3���2zr��4�֢<Jm�
Ӊ:���x�}\]!��3��o��g������~�$����_�����و�A��'Dg<<TG���+��z:|�Α\m�lX�Ik9^,���d�J�so�d�Df�GE�+U.y<���c��_�����|�וW�˱�����ɴ��1���aXy��/�x��)G.Tܽ��OK�����wz(��6��(��4	r�sd�?��K��I�(�@���m��
i{���"���}�~�mZ����&u0Џ>}�fk�����rW�[��׶K�����
[a�����u�AW`�K��Ԣ��"߶�I��Nq[#yӦz�����jk���M�<�����#�p���a#0��U8�^lv*���vh����z�1�4���QZ�#�Pp�
*#���R��t�g�����=���Ka����D��Y��&vP��3V:�K*X[����ȥ+�i�'�l���uHU�K𪴟������`XM(��xS�� ��֍
�`��@��ٺ!R��ц�S	\�	U�tLo�6�F$�?�M�+X�,B3a�С��a�U,d�v_#�������;�aq�6��^Z���r���.���(l���,Wm���I�i�ʸ��[���r����'�U��y+����/��'2���ŸՅ��G����x��`"�Ե��㓑�² �5��=��]���Ţ���i�0���E 0bd5�v�S�;o��B}�s��'��U���E�rJ%I[�.���ʲ�F��Z�RI
�2X�s�2h8t��,�0H�����c���?>�~hw��5��fQa��<�� 锊��W~x��YF���D�:1M#�Ȉbul��15r��Q�M�V��K��>\��F'|��F>�WXӉ`���Vzg��o;�J6�F?d0P\B�
HrSj�X��j�3�ϫ04�f�S����V�"�Ty�����G
]��՛�OEo���݀u(�G�v����\���]�3����C=��%)�i��O�Z�f�O %U�Uw�Șv� -���w�S�U<�)�5g�ρPw�OI212WT@��^�w��y��2;��\E����$�k<|�=xYx��aI�����mMb�f'uu�u�}���}*��������s�����ޕ���T��S�*��4=�ˠ�]�R+O�Q�i
��6���+I�� �Us�o��5��+����K5�f-Ұ�"\�Z��>�Q���X�����hh�wޱ<̢���/����S�֨Թw�=t:���V���\�3� �_���ao4���r�x�O>�|�l�| ��ձ�=G�q35ṓ�4.6]�A�,z$�1�g�,	�g�~��;�w{!��*��6�ه��)%H�UI�+�.�݄��l6kݏ8�j�!:��T�:MnRc�Y�|H���CƯ���=�:8���Fk��؄`a�vܓ���ن ͑��ݑ'g,#U]41!��=CW?�"��FX��e��A���I,�*�S��b�g�L�Do�(�x6�C�O���4�@���q���~b�1H��Fn��&ik2�1�]�7�����Jfd����a��gJ�ilt�Z�6�i{��=���r�μWS�
o���s{:
A��㘙>�o�
`���ny�CDG���z�'�q��/���Ocϛ�`�v�c�8[����.���ج�-�(��SJKطBS�9t#26̎UTlࡼ`m����46p-ݭ�|��`j���Ʋ�Zy�e�
��;*G�4�d�'�Ad��%~$��R�x�P��bq��=���s�%���/OO_˛��x��/��m3����T���@��-�Z��ig����o�2��2^9�4®����v���۹o.�޵S����~�c������۔ɋ6
��jP���6kWE���Kk̸c�w���<˰=a�֠�G�uv 9ʸ}��:�ӟ{��d�-��qں�'�`�
�������k� >��N�Y���~X{X&��e�a���q��2	�x;��oT0�����=yfe��}v���_UQ��"�3��fS._"^cu�Y�:�0r:��~�X�Tz�Nq��،(0yM�5�q���>��i�=�Et��^,�C[�b�0�^̖GW{Q���:_�����W�~v,yj&7.h:������!@��6f�vL���o�q�쓹�� �Q���w�];J�[�ɿyY�'��ױ�5� ���KM2;(dicN�D~`B<9e�,a�M�wؔDO�sk7C~Җ"s�PJVg���1^�
K��v.�';v{���y�'�daM��5��)���E
}!�m/�H�#?�^+�C��
���U��tA؀K0��y���̈́��Y��wH��Iۜۜ���Mp����G����₨�i��"a�n
Q�x
t�i�t�Y�*/���pj�KgDt�{��*��י"��Z�ٞ;kO���Z�,�=ӱ���'P[p��ݜ9{�:V�,���'~'�.�t�M��K�5տ*K���3�v��=��"�\�~�-H�8��\��5b��2q��*9����,^��2�4G��H�`��[xe�VlI�q�S<��Y��v�IVئo�x���Gޡ
D^�W�o��H�R�]�!-w���8vLM���Bp�,�tvb!;Q�&�R���7�I%ȷ����X�~\�^�Z�QJ.Ǯ���d�?]��A���2Z�Q$��!.����[�fɽ���<�`�%��Բʕ���fj�a�YU�D{+��b��A�\���-��Ќ�R���B�+�����״�����tRA�P^�,�P��֪�7`Ω �rA�i�zT�O�Y�&�Z�aI��Ts�ˌ�@�R�%�J�_E�k3����"��xJ�
z췚�N���6_|a���7�/�NE���R"mN`���e�+v��]y~+f/>W���ۻ3�{w�k�M��j��x����Iʧ�c�%u��@l�
��.��u��0s�2r}-xҊd��;�����W֒_t	�l�Œ�&,��e��͉�%{�"U�h�PY�JZ_���
���F�X��.~ute��I�G�(#�[k�����ٳ@�|-U⚋��b�����n��w����kz�������0�8�@X���>S��0�dC���g0W�8	�A�8��k�O��.����w�K�r��Y�<(��z�\���*�Ό�yf"3u�]��ٟ�1�+�N�I�D��S���ޠċG����}�<A\�n@�%����™H�O�[5��77�1�{c�h���v�k����c|lq�Py�ӏǾroڲ�92�UP�X�7#�CZ�^��c-�8�0ַ��P���?.�sr��E�μ]�����L�%	z���;u��v֍!���8$S.C�����)`��4}���5Lf���f��h�fg�A ����H91P�U�zJH�E�e�L0��������IO��Q�<ٓS��@cV�US@��H v��'�2���h��}��~kt��x>}���L~�Wx�ؔ���1|��]Y���ԫ�s�ؐ�"@���F��a������T�6�o��J��1�>����b��ǓKG+.�K����躤蔺���c�S%�l�(��9t�F@�_��aO�f��*P�7��J��
�����L�����ь^;udU��H� dX�҂,n0MI-�/ath�A¢�.*�U>�M�̚��@D.��	\�,���Tϒ@<;�8�������!��:f�
�:ތ��[��,�(v9�D&����%1B�����9)�s\R��xj��>��B9�;�τ�c���dC��jƿ�>��{t�8w,�%�Z��H��M��$�S�����4p{8��}�hs�Ԇ��.z�5��২�)ڤA�l�7�-d���)9�p�Vܕ��t� �g��_d���~�~�-w4���1�p�UU8ϩ���,�M@�×� ��u��]��4�}��QAq>���(�-5$ m�P�S�<	�X�zD�u�<�4U�AǧwS����:�R�2��+���k�$.caq�����K�S��.*��g߃���\���%o������oܯ9���v�hn�������ސ�f�^�}�_�)WvZ'gk+ݍoԮ.Lh�������z=��=o�(�8oD�ꦠ�D4�x�M����%+��l�h&��T\��PU�QC\F�Q'�PhzxWU!uo�8�A>J�9^u;����։� 鐰K0HV�}�Sw��IK��O�{�5Gf���Z�{�G�\'Q��++�c�>�y���z�Gں�gU�D2R�eij��6g��J�c���ޕ�4�!6,��;>�}���PY�+4)�I$k]@@��a�Ix�υ���F2&�ɲ,��H%���ΟҺ�$��)��̵L���z��+���'�a	�
��;mɠJ�)���39�"�9�)��R�:��ւ|�,amA<�af��ʜ�����(Ȍ�(��BR��H�2 PD�j�
"(���W0+P!ce5�AI��D@
t�9&mɬ�ʢ�
4��
K1"Q��
;(%�������#0Oݠ����~G���U��=��=��o��ĝ�R�_o��-2�*x�$n��"o��I+%K==��v� /r�������N�00��^�5!Ð��s�o
z�e�\2	��[M�اIjo�j|�O�'áN9Ϊ��&3���ΰ�L��4T/@�wL��fW���"�fO��v�Kj�C�jU���d}oi�B�`����i��s�!#����%~�Ls��a쨶ZÞ�G�G���(��-RXp�����.4QB����j�h6��W��5��4�[SY^�U;����݃I�n~8��w��c޾y�����fo͇��{�"�U�3�sg�]uo��G�������c=˾�w�>��uHK� �%����p���=�Z]݊o����OnP݋���(Z�!mbEDM��l��~�-^�̀ʣ1�S*Ă1�\��� e0�Ƽ������ƚ�V50�&[��E���q�O �aj���d�1�"G��4Y�߄�'abqZ��o���Y���s�0&�}-�:"�i���,��\3�/M2�F<A��;����B�B�R�ߗXy�����]���nK���oD�E_���=���oKm�m�4�*�P�y7�=�7����4��(9?��Or� �7�x�����Þb�҇6B�8��v��3P	x��6�� ���l�\${%�$B �$��aQ�V��Px�V��Li|@P��������^cf&������`�PEP7������F]`f�H�L�lc���ĝI�74�ʕN)�$|;�d���yB�(�I�Ƀ�?\��h�:3�i��;*V��Jo���O�OG[����]�������X�ő"1c�O��,S$k@B��N��u�
73����P#�4�& ���VT��樞"��,P!� HN*,��}|�$u�X����9����bF��!�f��.��ϥuh��-<[a(��g�N�ݪc����)�%n|%O�aN"o�Nb����W�S��g��B=�m+&�ڂL�=��7
U1�U�zI:����FϿt��!U�rM�4�s7T������+��m���M5��U�R�r���<�ý'��=���_sl�|��U���f��\nǁ�K��ԙ]–x��I��]&�)D*7�V�(���9 HE�U(hV$5�*��7�W��z/m���n5'�&Z��ɧAؖū�2�}�ќ����n�B�����t�Mз�(1
D��R6g�c:B䄴g��UH(2PT�MOĪ��0�CQ`d{���F���bV���@uC�3�u7�w���#F��D�k\�G�d����-+�.�%�H+~>�q�Y�/P�(�ҼpF#D#�v��E�r8�'l�!�z.g���LdIhw�{�_�����r�Y�:���<���27�r��a�hW)v%�\������`u+�Y�9�Ϡ?D�˓����MbD�y�x`�%�@�'g�,�*Qfq��
R��L&M,����N�B����5�AJ�cB�9���*�@�z�`�F�"?~�*�޿�~��ڄH�!�@��'�r6������4r���ҙ��X2k��NKT�F��r��4�ͣ�/�j;�{D	�N:3
�dT�w��z�Q�`��K�\�_�Ol���y|��_��e�f��w�ؕ�K'�0F���H'�U-���y��Y#��ݟ>�6&C�[�A���J�((X�aI,�k�𪃎V5K	�wT+���C��D�\.
����7�*����SC�y�)�w�C����#"�p$��NL�\w�_�`Qn{V�ҥk�u�jq���l�����	��'�*��)2�
�E���m8Zm��vg[ȩ�wVJ�56���u�Zp�;v���C��-��azN�[(j��u1^�6I�r@ba2K5+D0Q(�hf,Bղ�A\�!���v���0���M	�����2J�A���z��"E�?��Y0Dj�H�y�/c�8h��VV�I%��Ox@(qx��H�5���f=�r��~�E�$�����z�.�c�*�r��XU��8S}4��HEj����6�����W?,n ��4}
�yN��͉B)n��q���C�)�8,��Rv�^�M�l�="a҄n��Q�q��\Dx

�L;�P�~b^6G��{jk7X��w���}��V��%�<�3?��:������̟c�9���
h�z�o���<a�/�⭓�$�˂�i�Xz|�^���X� �GC6�^�yt2���5���~SR�bޅ�@��_�ceƝ������N6��>y+�3��^�y:-t�|�}�O����B���ˤ�< $2�P@8H����)��?�*q#�!H�9�E
���7
�g����48z�)�N0�������Hn�x�N#����	�鹲����]��_7�r���.��{��R0:�埿�q0�-�[�n>����.\��T�-�])>�mq(`&�!�y�k�u�?iV�Q��7Ep6w
+`����>t�|37���$Y/�%�I�5���j�J���P-Sa�$@>=#�7[-Ch:iq~2ف��Z,�!EQ�j�j�>��-\|]���d�@��pL���< <���hb�������܉�1��?�uE���Ks��Ɵ��~��V.G�V����,C�
$��)?v�,lb�e���[@��G��\��׮�,��«s��٨e���-2b��DOe9�	�؝4l�F�w�+.���K��aa֞SYƛ��Gb�9cr'�J��i�ﻶ��ʨ*�f�8@��}���&Z,*mЧ�۠9*c��,}��YhSW��L�4YQ�Z�j�f�׭��$p>u��5:
wR����>7�[�*�L��5`i�+�	0�'��T����VȸX��`��!�b&����f��!�f�pw~����ً�qS�ϮEkX\�+���c�5�Y�6"?.I�n^sbf�W:�FFt��1A���d C�u�gn_l��.6ͬ���*f=�(UUsL���Y�l��&������q���W�L��a׭����Z������0R{�oy�wI4@"%��<q�:ң&�W1��!�`4
4���@�T5����hm,~Gd-��\%��`�@��E���I'd�lf��$�3AV.�:�֬��L�N��fj�=��
�����Z�U�90S~s���MG8���{��2R�J�Nx�%��P�]��bZ:��k�9�A.���k��
\�c.��i3K#p��U_V�bф��Wv2޻]����>2�+e	������Ok���x/�0������&�cr�f���$9�%��c�<�ϡ����Z��`Gr���"1���l�[�r&&���}�G�?3��I�0^'.i��Q���L��DI�k�)�X��B|���N"�\�t���-�Qp�����](hBS��<*��|nM���z�䟫�Q��P2ͥ��ק�ɢ�LW �:����x���|4�xP���ztE
};~�_���ѽ։�lg�V�Iţ�xx'���B;zt$�jQ}��屫��Ĕ���a
���䇩l������bkD��0�%�T�SM�h,��G�=g��–,�:W@"�ŵ�g�1KI���g�]��5R�H*R�aie7�Fm)!J�'d	9u,��M��6Cx@�[�|�3L��fu�0N޴�F^o���՛:!hn�6�Qn�r8v���p�O�ҷP�#\�6]��u��te�m�����/��{���]5w9���o⽕�J�/V�Oo`�,���N��f�k�E�_�`��hu��Mw�4��Xeԭd��sV��5j~����4g�)�����9z��wշ�}]�%S<��f��v��{��IQ��Iwk�;���˚yE�Bk,���:�x=H�pЦh�~Mk��Jj=4�Z�����vT�I�B���ꏦʴ[�toS�fF'�XYa��gJۑQ�}��f
*�V��/�'�/��n�P4Y����I7�\*����Fs�K����$L^�p�?Խ�<�88���%q����L�_��=���=���+f���*H�3Y���X�8��Cy5�D�EE�ʨ��2Ca��T-��jV%Ɋ����!�Amt�e(ua�róZ?�m��e�Q)�� �i&�J=�"D�"}&�!\\�=�dV�y~[/��e��p'��4�dF��U����۪���6�n����k[��M�/�ָ��]t��n���3�R�*Q�a�ʓ:"b~��O���b�#�"�'�ʶk�9�2Z�`�<G��C��g�BD
�t ���m�?����)�o�O!x���=���A���XD.�f�B�n���1"���lQ��N}��N���8#��)����#�+��y;�x�Ĵ�E�.9v4�o�ɻ����\i�nofm����4w4���v<7~Oh>o�fx�J�[|��|���֓ջ��w���,GP�,�>�>�h��9B��yr1�.��B�#6�:���	�"Q�
���q���_��_�ɓͯ?�D[�څ����)�{�B��k7R���N��k����ཁW��.�X�hd/�W�$��>|wл7��7�J�_Ŭ��c:%�f�؂"�ɟ
����v������Jǀ M���
e���A�
��!���W;��@� -	O�Hl-��m}j���'�g��'MՆi��"�V�I��o3;����c�ɡ�20�	#�!���	��yUe������ZdIƤ�>�ʝ���T�^�ç�S�"��jjSqOq�N���ƀ�����߬V;#¨��7Oδ>�6}�}���ej�r�k�[���U����8B�Hd�X�4�4-J����#����~���]%�gE�������Uz�"�A��Vt��p|i�	�H
���F�Z��K�f���8{��bZ��	pF�'N�/I�|�����a
��`�w��9?GJ��e�A��X�3#Wa���y����c�bf��-R3ɛ'x��^:~����lA�.�?��z�J�:����k����c�d���%0L@q}�n�뷘m�x�)�-�|��d�g��)b��4���):请��묆@ϼ%�Cd?�g��I��"�l\��R��o>Lؘ4�Ȉ}���,-�&ܞ�J�V��Ʀ�Ъ�z�[u뉂gQ�?�s��q�HL�_���p�8˺�5��
)g+)�R4�H��٪�Ա��} v�ڟ;f�$��u�U�}p�I(3V6�/FDj��l_��B�`�=��K���ȑ��H�3�;!g��,*�O2�.,���JN/��6c�^ZQA)2��U��N'��b��}�*���5Tk��"6eS��un��#�_��Nxk8�I�cR�(��x�
mH�!��`�{wkH�!2i,���p]�O�`�9��.$���$�|Ӑ�^�I$H�AՆh*�O�<X�πF�a��G����s��7	��#v[�}!�#���+������BH�KPsFC3d{�D qT��Ƕ��A��.�2��֒J�`2��!T)�ZG�#H����dM�K&�_:�l�Xv�b��IXҜ�y����M���ঝ�t%N�ϻ��: �|��Ć�B�fo�V��:�2�}.s@�.�Nip���)��֐X�)Lr�,s湓d�X��������Z;@*+́���Rt�Le�.�{��T�B���V>��R���ü[Niާª>�����#֟h�v���ѧ�yb�L�����)6�P{��v���McXL&R�4`	P/�Z��#��S��Wd�t�M�
_�KKmW����xk�A�Sci4ƛ,��le�d��Z�@ϑ�W���e�2�U��C�v�sQ��w������@���|VI�أ!M�tH�2rAϺf&&�8�a^LȤ�hI&%�4L�Zg"i���X
���'_�my�EV�~��Q˙v�jM�9�ī���O����i����>%��
�iA���ӧ�XC����(
�]��6lD�ʙ�>��"�����E�^�"L�@� �u��d�Hω�B<o׶��D��ImtM��;�5Za���� �J	٣@ϭ��zY�Т�=i�4$F��D?T�v��C�'��9`;�q��<<5eO|F>!��P�0�v��/?{˥�X++��s�ن7����#uPU�좇���6�ͫ`�Y]<g@h�odgJUc$¾Ɂ02���xfi����[��L��	Ӫ��SZ��̐L�� �w�q��{8�-s{YUv�u��":�o�K��֒.:�tS�L'�|X�E�J�!�/DF�||�p�9N���UK)LC����x�Ͱf@��\m=��3�e�2��0�����P����j��s������Z��HU�VQ˶]��
�Z�&Zy�TU�0aŶ��Z4���}V��kt���2(��w�ƽ-:�O=*K��
���N�c4����c��{((����d
�2���;�L�q&����2�Y`�ۚ��K,�E�-w�#���J�,c�Lvj�C�GZ�-�vI;:A�JY���>z�ƀ�2�k�`��ǯܴ�r8FqV$4�:<T�y/Os�wB��As���V� ���Dn(�e�`��2ɾd�I�D���[�Ɠ#4�~��CKe=���O���Bid+c�pk���֐I����p�����w��GH��.Q&�!�K�2�d� ���	l�J��g�)�h@`+g�ݰ���|l��0"�F�g���H�u�	7M��}e��8p�Cg���Z�;@{�:0
��'̪AQc���i��%��$ص"B��H�C���vBqS&�D�v�W�R��gx|�3�2[�0�L@94\(	7�*�p�K*t�N�N�p��E�B̍۲#�NQ����hq�05���� �h���R#�ɗ�կ#S`#M4�W]V�r�7��(��$#�T����W���|��\�\��Jd)4���,��eLpi�.�z�s.����Nml���r^�Y' �`����m\9��Ʃ��Ź��"�xw35ˆ!�le��Mp��S�X;o��U�d�?��T�o^"�X����R���$ѽ�q��aT��=ۙ3UY��xxm�Ia��,�;��[�4�N�I�8Gt�)K�ݤs �<�ڸ$�>��E(��3 ��_��?�_"�������=�w{�scv���6Y����
�(v�
��sm�E�{��R���5/�V%�}�S^ݩ��M�?�\lO��Djk56��4U$'�R�5���8�1rv�M�&���?��n#K���[�<W�=�x�\���i���سk?l���hi�\Z,y�H����
��P�vl.O�N�Dte���AX�2�N��;�u��oz	/�7��{?�$+=e�݁ië���N/�n�
�ۿ�/��"�ŲN6i�e�@���-	��OM��C,�D�d����2�'�)���?b�r�g�xXq}����P.>O���+V���o�r@�U�•��\�_1�a��S�/U�
u��b���#��l^��(�Q�mf��������|�^up�A!��ejrځ�FI�Z#A���F�W�Jl������M
'j)z<��g��;���M(�����͆0�{���ƍ(�#�ђ�y��@.��Z�a˖��m�|��&+q�<%ֵ����NZ	��٠;��z
��u��Bҥgl69̥��Wt�:nJ��ϘI��UB��E��vO���i�s(�F��%_@�|�z�Z�rOf�#��Acx{d���q�Vv�MTQ
MO@�����I�N�e���#�?���M�	�F���Sέ?�D���yg�斠\~�`�g��~�NΪ�9M9�U�f%>����"'|i�*X�U�ҡf��)#��/f���3}� ���؜��x��.hR��zzS��f۪��/�i��+l,�V�]YbF�Xl���J��8?����"QPkt�X���k��+a"���"5iق��hw^�ӢH�u%�[i<� SW�+E&aU�Y�d��5�{�2���̀]�
X��c��)�>�=����i:A�ʑŲ�a���06�z��8�u����`V,d��^5���<{���>A���Nx!�Pݾ*h�#/w}�3��M�TR$@׏"-�7���W���#���R���8~�2>q�jb���çr�ڱ(1w �=�.mD��d�Y�~䵳�����|��.35-'/]���}K���oq��ax7s��.�L�^�^>tlH觥%�
����ۂ�)����,�3�I�#ͣ�����*��Xl��Ks�#��>�n�
�J{W��gmHڕx�S���-���F�&�{F�<F���–��R��F�l�C*IV�Vϯ�
^l�y��*������{����L~v
���Q��K$�����6FbWҕAcB��eÈC6�^�(B9���@!�v�^T�������*5
-�W��w�X;X��r�?�r�Y�ł
�S�o�9�_���y���,Н�]UX?����dSx手�8����ҵS�gp̥'�(�t� ���Y;
7|�o-��!Qh��d�\�(0�jr�y�a���v�� ��ƙL�.s�#��q�(,���K���p�G��\�r���c�4��>.4@3�S�b�5K��f��B_��s@G��gM}�.��5Z3�����"��&FÈ.����Bq�O,>��8'9�f��X����1 �D�����؈�|!��t�����Y���ئ.Y9<��X��l�v�sB�,i6|��01K�e���6��@���J��
ҏl��Nbw�C��P+��z�Z��Zn�q}m6�m���:��6ud��^��х^�6�g<�IFZk��3IL%�ʮ,X��f���._�v��A�NQ���4�.�`5��[C���%N$�%�6�7BV�2� Րy�t�4��I�
?��P�J�CL8��,%���0q9�����sHi�a��&Hq��|bAY!�&yn�����I���L9��fF�9\��wWN1�0�6@v$�bp�@�X4h`��d�� �N�)RdТA�L��M���(>�2G5DTk�LU�U�a>�5�7�%ϼ��&���Dc.疟{�3������2�ۣp>����J1���ttn81�E�<�'�{�Fb��g��)��Ba��ٽp��#y�����F�c��l�&�p!+��#=�����1���~\w�5�B���'�S��#��x�E��׵��6�1�;')�
���o�����	����%�4�W=O3��2���3(#�qF�Cn�^�LVW��ӊ��u����1��gZ��X���L�0RU����^�~k,��WF߂�9c���D���sA��n���bq���TgB�צh^�gÜ*xg�����O�o!�wy��^���,fd-�՝�B�l�e��bV�ѽy��8`�=�.������Xg�d��}"m�!}�F�PAr��p!�u6�d�!H�ٿ������b�[I�"���޳��pU;˦%�c���\�! S1�"z��y��p��a�CDb���)���3�������aש��d"�"��s����i~�P�q�{�"J��Pa#�=�����:��v�C���|���y�t�J8��m���*�@Lq۩旑�Bw��"-��v2���B|]Nגި���Y�H����$�"-�@}��>�t�Q�L�L��	���J�a�5��T,$K���x/��!�����ↄ,.�����!B˸DC�14w�c��ԕ��)x�D�R�+0��Jf�.t��q\�ϧ���l`(4��M��c�Æ]�&+c�t�:()(Wy���W�M
�ה�"+o���S�WU[�!G��cu��{��҉O�f%������F8���@8Pz��Vf k��V�B��`�!A��8��t�C�v����ڊ_��3z��K��n��y�҈��W#c�?�規�Ӳt.v,ou-k�CCO.;��'3>2W�]6X���� �6��!�M�3�B�6=x��?�"qe�f�7 G�+��<[f���g��F�+z���4u�����,�
!�H�uDI!:7���@�8\{?��	�ǡDD�@?�8���B\������+�1�m�.?���]�<�_|��):���X��Pĭ�P�?��ݟ��t�� �I��)7�u�Sa�C9ۙ"�������x���q�+�t�q��CzLb��'P��V3v��ؑ3�5Β]{�0��ڃ9��{F�R�t���.6�D��ԩ��%}t�rQSjR��)���lM��< �U��/1�7J�'4�M�|�R�#Ή٢���\�B���+R�>u��9�0�\yW�>��Y�>�{
4t�G[��%��FVM���F(3���
ۄnw�$�)��5�j�aF�Sg$XX',>G��3��*�����H#_��DSG6ɕ۳;�ZZ@��:S���2O�E�3�0���Q�C^��U"i
�$���BXt����"��Q�}��dz��q�N{��^7bW�uH��$(#���S ���7g�I�y��yL��`�\̺��ɀ���\���:��o�&l�E4e��Rȱ2�����Vc�G@�����,���y�F�\�� @��㵲��md	D�:M{y�HZ`�gd#���K9��q�ya���ԕ�O���Au�"�:F˷Vtⴍ&���d�Q$D�jJ��T�u��ZK��b���l`���	��؁L�����N���G���B�&���
"���5�({��U��Z �I�"�:\boPN�aP��=˶f�Gu&܊���HW�1A���ج��)k�!"�� `X�H-&bɫ-�+
_e�H8����ć�Y�°��b�Q����&�ӕ{���I���̷�"X@��G��)D�1ԙk����!I�H����M��má�b�%y-��lԂw�X*� eD�N�j@�u�}2��[M����
m��b�:��i8�@��tB���r9Jg&�5
Z��T�w�7	�vQq�����g����FӪR�[ �&T`\�� ��)LT4
sz�ܣ��G�gFF"dwI"�{��lp�f��S\bI����C�l+�\�����sԦg\�f�E-c9i��V]`
�ݨF�9���*aK�
*BeG�E"�;i/�H�{u)�ev�Q�i�5Ƒ֌em�/����c��ZVs��G6�+2�N��ĸD�$����יB��
�����uC�H��s�r�VW�3��@���$��I?SG��B͈��x7Bf
_0rhC�Ncdh��1�`/�%"������Dڛ���9z[A,x��8��b��T�5�����MQ�o�rm7D��HX�9pR�Ǩ@DYT�cJ:§��#�缀)j+�0Sj���1��]���-�d�7q��<��2�cxn�\\<�#�zE~����W�Q&y12Jȃ!O�b8Lbe��Ԅ#�$( �8pf�R^T����(=�ao��q��0iYET�0=i�J	ct("1L#$7���1�%<Ċ�iI�i�B��aP�@~��=�
���q�ǵ����cZ�S�a�#�:�		�k.C�L�lcp?-���x�]e�h��;:s�*L#*�#��fm�����qn�ߩ��t��h_����~����r�1�{��.�oPbu�[�kmJ��yg��_��ٕ�6w�]�P H,�,
 �q�12[��V_��zp(��R�R��2l�L��N慁��1s���ɜ����Eb0
,�z�^�@M夁��f��:=�:��h��+l*���ȍ0'&����
I�l��ⱥP���ëmb&�P�: ��5T"�g�$�
(�T��t�HMLA�\��,-1%g��:Dp[�v�TXg)f�,C'�P?�;�=�cH�0��$XEk�T�-���I�C[&ԝ�s$�Q��ԅ��N,M
3�ٌ{?&D�,��(�^X	0	k�w/uE"ȓ�ެ`�F�s��d�h�2wK6���n��s'�Q�F��<qF��J<�-6�f�X�K�3��K�K|!	Π�F�r�?�콑��,�Q8�({�r�)��z��q팔uǎ2fL�e��M�Z)3��@j497?LnWĹd20�����;�s��Ь�
��e�nJv$U�S�r��_" ��c��2�u��JϓlB�^��/{ww�Z#G'����g��,sU���m���F��"윱�����4�9�����6������F&�qȆ�g��fڮ9_G��2+�)j��Kaǧ�VB�.��������)�z�T�cY�gS�hq���[�����E���^%G,|#������<뗅8�X�/';%��Q�D4��gvT�F�5�Q���ݿ<��*�8�s���nNRi�4tY������T�cn"^v�5(��i��f
��s�_�����n!�ʒ�tv0��p�
�ϝ����ȏҬsX�"�\���nxvxpx(u@�ɡY�@~�����,ܠȏ���a�'F�1�l�͟�������l�&�a�o�Ș��R�csy��D0a#���ф��Q'4�B�[]g+2Ց���c�3����
�g��>��7&Q�b�T�y��ѧ�|ފ)T_��֎�T��9EK�6��?�]�K�4��i��.���@~�s8�\��!�ĺ�3Hq�C�����,�Dg��"�bV��y�z��"�Tn�t["�<6X"{)���SJ��!�1���SRKԺ�r!Kl���-�>
$�=�4pSF�ڏ~�������k�����z��0=���+gik�|�΂Y!(P���>��!��K�ih䔂݂ �k��Օ�L�X�/,�o����𣌇‹�9��=쨄�贆�Z��*+-F�l���8㮠̗%uL�_���6���	�p�AL��r�
���5��&2�K�;ᰵ�-�;�N"�4��+��]����>���(�r,[Z֧�;�	췌�s��!n��gp��P�1�l�l�>�\��R 5�O��-�m��v3)�o�ڙ��x2���-�ޮ���!x�u�|�#=�z���)�n/�wV��N�ͯzէ�
�q�.}��2���6�P.�t3=a�����I7�YAcL��5%�n
Ⱄ�,��R���?�1�H��8�W��;���K����ӭ��P-��q>���;B��
B���e;�t��2����)��p߃]n)���@�a����vt���(9TdBބ����֕�!Q�����&������rhc��#�/l���S-ٸ��y0=;�
�.˧�r]�ӛ���<Ȗ����&�'.�O$M��R�_�Tt�˨l�K����<o�}��H��#E�6J�r�st	V�dV:�ٍ�1��'�F鯐+�գ����6���8#4�N�
<��C�8f��2�KiJX}D+��՗٫�-�>��Q��_%#�=�5�~[Z��+[���V���%o7}�,s�~l��e*��{�j'�X��ۏ�&]㐼tn��+lA��說��=�wݷ}#�
�|p9�i_�7�Y/9��"ҏjM
[���iU�;l1�>�G�=��)��o���zjyĝ/����$��~���;� ��`��Z�B�?M�lKU/����^�ԍ�4�}�]/�K��t�R^�V�vjiZ=Z+ܳ҅M٨m��l��/�@򉜑O17�-8Z	Fj"篐*#��:��P�����W���3�l�7�$�V�CJw".�*���DR9<��Vٽ��PPL�D��T�,���xk�,�GW��I{�R�L��n�#��7��o���am�m_�'\�
�/F��3�p}�m���R:�_ᚻ6=)(F�{���I���4��Ә2�����F��P�Ru�7�t�!$��۫�h�sz~Ŏ�BX�S��r�)�[�cS&ya^��Sa-�7��U# S�9&����Fgz�^R {���(*�<K�%��{wmb�m�v�`	���8gl�:��e�h�j9ێ�(M�_7_�JWk���S�嚃�+���(��y�"zZ�H:��������S��s$�����%�!��Gm��Y��A�â����Y ���V0^}�I�W��|�X��2�=�H�/����H
�:�tna^i��wB0D-�=ݨ���U�����̽�,�J2Wܐ$��߮�p�.���DyR��V��q�Zk懰��~/!�e��ʩ+�$�P������mX$BYd
�<��鐩�Z�v��X���l�z�?�����s�b�q��S`��y�,,-�ش1�(�_�q|���*���	%/��Y�(Z`I�W(����8���PD�T���}����
\ʳ���ZIH����I�!��- V'T#���<9�S��bh���D(������
�	��P��3��N�=�Y�q��Q����}��72��(��\�UQ��	�8��vO�z��5�v9+�|�%S�V�&�D.��&`X{���PVnnz�(�<r��./>s� ѻ�|wX�`>؅q���L�74�S��'��*丫	g�:7������)�i�V�b_�P@��K�[^�7o�~`db؇��,���.hH�R�=�v;��x����VlR��<�}�t��C��n	��=��>т|����g{���NX����v>�D�52�y͗�����ޣ�'��5qEGt�;���E���*A�S����U��ֶ�L�o��PO㈻'ԓ�VΨ�}�%�$�R�f�?�T4Å���Q��씜w���*NlLum;�n/z�8%�uܧܙN�2���v��Xڞ�חTa7ʼu����Ma�(�r�,����F��T�E�j�0+oD'��X6
�bpx-±3}h.��u�m��^E�rK�FN��^<zY���2$���+ݟ;t�wXCI
�܇�8��$��%�rS��ls��:�hDcB�������i�n�yv��/���W�k�{z��R9,"�̶㮲�
�p;�	��yo�2G�Ì|X�]Ɋ"��?7}�P�z�|ƽwƘ��Q<
6@u���՗��O_�C�l�f�������3�`(�' *���.9��4(>��#Y�5b��G�ZH^����p�� �~/��g<��><���22��!dP %�Dp�L���-2 Ӛ�ZW�	@`�T���=���yr'(废��t�|9#aF�56�i$[?e�;���I��d�М��kM��t��8L�3$�l^�Heek��g9�����R?�Љ������������h����t���I��)�2�7sJ�z0����l
�#¡���C��[N7B��#�
��0��P����ɤ�=i���H�55&�^�Lr�RO�Ԍ�d�{>}�rE}��HȬ錇�uܯ��؜<0�k�<yp��x�A�m��Mm��,����=KMј	q�ǯ�$�]��ϯ��Y<� )8���=��햜�9ݩ�K�v:�0�����|�<J�H�H��ʯ&^���_e��[���%��
���6�0Zզ+,�Z��I���QY5�ʹ�֕��T�V��
�:���+@g�u��"�U^p�+P%�ЌC��(Q�	�o1@���M�)�U�rY���y_絔-��G:�^n��?�V嶧l9��I��3��I�W%^���5%f��64`�G�F�FM���z��W�>����νs�p(�J2&��lf=�ʐ��8к����_�a�8L��6nr��$��1P�������!����8kΈ�f�}��!��w�{�O�O|�gc�=N�
}�fܿG�v�ø�2/^B��b����=RC,+�q瓤��@�[�����3�O��e�VKz4�%%y���U˒�Z�uB,�&l���,'�3�\b�����"P�f�ؤ��a�\ȭb�*�d�l�����i�~�c!tK&+sbU^<W�G ���������ލ	�g@�G8�O���ŘHa)�P�$��JŃ�,4ӯ��A�-eFC�w�@�`�����5���:�8��L��X��M�}Ѭ�`_������V�V�mѼ%����g��{N���7������w�������{bY�K$D�8I�'�L�l�m^�Br�����^s��k���5�b=��5��D�TsLL}1p�/�a�����F|s�x��0H+�J��)i��59������?3Z״�D�`-n3v�ِE�p|��6���,ř�W|Q(�.v��_�
F	 *N�WW��&�	AP�{��l,^T��1��6@�Q��XZ�`�-m�T��ο�q��|­g5nE��p�A�|�����U1�c�a1o�B ��1t�}FX������1�	��6]x��=�Հ�������Sƴz�y{�S�	�3(mu��&CD�'���!���s�x�޼B)
�.��|���VO��럍��0<С�>4��„��+W/�2��"�{��贈���s-p�My*Y��|ZJ����;�L��L�#����Np~ޢ}<�9[Z����mg�8g����$�x��7!�ؐ��j�(t�RšDAz2�x[�G��#�I_��V*C�����:u(]By�S8�	$5���m��؞��P�)�>��-�l��W�a��D����(���EF��Y{_`�֓���7�H�sS
(�e|7o�X�6�/���i��_@��n$�%�����)O�P�41�X��I�(�_$��l����5��k��^P/�7B�2/D"
�����nB�*��ꤌ{�����l�l	�n�Nüݖ���y'�+1;3�R���%wsFvK2����\űM!v_ؖkC�ϦJ�}���^�dg3B��m��R����Ȥ�7?W��uq���y�}""#���5BԲ�'Ew%t�p��YT,,%#�KL��B���4�s�g~78�ͣ��ȡ���L�)3��Lގ����v\�*P�>�"���DQ���d~�o-�jP{�k��� ���%j�:�S&���"P�8�����"?�LHӔ��T
Y�*�P��?�2(�+\��]�\�1�F�,s�\!�\:�e_	�[�V�!��:�&�3��}����]�k�s��C���R�[�M��T⿽�%]V+̅��8A��Z8j-G�V:��l��Ğ�ͮ�A�~B��4L~�O���!��}�u�
���J�[A��|���@�Wn"3��K�}�9��/�agu�K��{�R$�R��QDbk�d�JE�@�]"��ő�Ka�K\<�S��M�LՅ�Xu�aR�p���|$CP�X��U��R^�����8�g����	��bCd����_�8\=��|�'�����
KN��$'���`
�ևC�yI�=�KqQLMSpW�cU�+�L��<�����Xg�x��
�&/�3K�3���j.�����l	J���H������e"$���}&s�ͪP&�T�P!����,Ϭ��F�YC��8��L:;�3��}O$9^:K���H�C#^*��0�g~
�O�+=۶�- @7��aݗ�6,��H�tҾeq��"��m£6?�j��R*��쥳��g��P�\�9D����g�"��̰�@*^9
ᡱ�v���*�V%�k>��g�ei|�r�P�����<��~�0�@˶��{v{Rs�H	����V�9KA�&�=up��!ƍFl�R8	��E�-C��$0���o'�d�\�.�s!�\�U��YXf�y�k�sZ�?�o��ƱZ�\��?B�o�#�������2Dk���g�6B��A��� ��L��D��0M���B�x�Y*��F��/}�,e;_��u�3�d7K�FD�o�!�J�~���~��d�!^7hG�U;���H���zB���#�`�İ��qu*K7��N=����{���~�mGL��4�C��u;�!��mY�2��U���w:��G���3?0�134���n6���ˏ�u|n��s�:��I��5��tC��������u��0�#wֽ9D��:����x�V���1��1���h�:k.nOX3�=�0�δu4 ��#�r���w�����0H6x�����FxP/����k�'9��W��d$k�^�l\�^��<~�Q��	*FI�|��P�,���."|Ս&�\�?���;M��<@��w%|t�L�<�'���;�F�e�b�����P�Mp�;�����طi�m�_���2��7��̓���wt�@�տ;|m�D'<��:��N�P;v��$�a�p�X;�(Dp�"�6RHM��c~"�N���˗�n�9��]�u���q��.�idt!�MI���וЃ����V�Ȑé��$���u�����#���4M)�����ٓQ�7�W#~<�M��)}���-����)�؞�`����G�m"�Cc^(�+n�w��F#P-�>�B�8���Č�y�z�d��q�
F�o���;�L���׭E��X�q�Gʞ�u��VgP/�(�����לֶ�[�	V�G��o�Q�Cc���cr���=\|oj쪼Z�ic~IT(
8�	L7�^�`]��Ax�m	X�w��ڷ�9E����;��fk~�s�T�+�u����\�ve��bK^¸��
a�&l�^O�bNt�K�~��"�<1��`�p���N��r��LjnNb�{����{��ӵ��3X�}�o�l��9E�����:�R�h?��'��y�,]Dw��
"r}?�f�XI���>�b���������]�6"	�W�t�#��{>s!�?m3�E�DJ,����$���V7�����N0af�Jm�)a`J��+O4[f�Y�9�?�?��wF��5�(���@����ɐR^�˅�74�c4$�����x�?©����cCsȨ*V�8A���
�"��ȥ���"b���?�)n;�%��R�c�11��.�z��"�"�ʦ��e��U���,�o6x���qx��~ۢm�Ȅ��z�A-�ۅg��cE>NIM����v�DvGF�L��K'2�g6��8���h=��ys�UMN�	�]�%)N�Tf:h���	�t��\K������^|��iN��g�畄�P�g|h����{���+-ڒ���{�yR�Ł�+WJ�K�%��J�b� �GKNK��Kx'-NZTe�ړ�>s1����P��0LJ��Ib_c��q�JŨ_�o�=�G��ۧה�I��Z{�du��p��N�m�
5�F]7�|��.d��+�ƥt���e�0i��p�B1����S������CLu��/k��5b&J8��
���'�õ
�iw(���w�Ҁ࠼��?d����=�ӎO���  Y����1	���D��1@�4�a�o����4yсZ�P��o�vI+��0�e���,�|X
^�/��h�ZQ�g�굿Rq1j�X�.-C+-~
����V��`<�I�9茾�(^s�B!�M��g����j%����~��d����a���z��h��`T���=/��!���hPD>0&��xq�{12��r,H��w��ɝ�J˜6M�:6��=����d��ED˴�o �#s��YI!�!���Gn�VΦ�"�{I��@�~�J�R�R* �G8*V���`?4C�Ի��
����;�[��������{�/|�� !��Y�uZ��Zڜl*����G���oY880��.�u�\-=J3��"�7�j�J`��i48V�66�
�@Z�J�U�۽�ڝ%̲tw�v��mV����ݶJ�3���J�QoU�s"!�h�s�Ya����.DS��i�Z>�juD�E�EH��\pW]����
&^H��8H��,_N�F��1|�)��9�@RZ�6���E��Nf	��%�y5Lt�̣�́�Ū�n)��F1���=� ���,�5�G�:o�n��LO�DɝEd2��VRL5#|(��l�y݀�S�miKP��m�$�
��W��
��̃��_0��1A=AYf��?G3��ok�1�g\�$&}B͗MSvY����mמ��d��)
���O?A`\lWc��j�.������9��=]�g�%�\���P���2�>���% =�u�I�]��P,%;��NM����{	/I60��W
�x�7�k�}`G�f™F�
��‚�Q1��U��I�����ŖpX��?���Orް -�A��2�#�0����i�
Υ��4����Uj�=��Հ���G���SS6�WW��H�E��T��6Uu&Ξ���~�
L��q@:p��UC�PM_^Rf�9*4$268X���WoVq��r��j�b���M���� Z-]X��i�����~��cY������"Q�H�K��zu���KW�:��.��`!1�WM��kQ\�+T�R�叞9�3��h�s��/�5��]Κ�QePP�Jwݬ�*h�;���=&�۷lWT��?��d�6Ufc�Jq�Z�\&��ȠB����<"I{��{�b�X��O�'_ �i�P�=�V��0;���7�D'pl
�P��D���x*��J�<E!�&�����`��'����~G�֒�@D~ގ����=�7++sgir�����|0�0�,�ʨZ`����1:��1	�"����]G��r�vϤ8Ô��0�30!S��6�pq.J4/�(�o�	W��)OY���Tb��8A����q�^��Ç3y����Q8�p�A��&F��c�V��k
=�<��k�'N�*��]�d+�� ��*��qd��,��Jd��m����zbG�mc�՜��y���n�EK[�QQ���V�{���S(���n?��I�ę4���w��1���
��W���iC�’��X孺�u
��?�хS�G8q*x��1z3~]�::�����D�̓+���v�kX�SP�ۄ����Z�t���r6=�m�y��BS!�`g�6��:J�=�h\	!˸˂��qSd̟7��K������{"�nKN^͑Ce7�u�מe+v�XNn�S;ÖM�Jf΁�CJ�!��ֱ��;�`�cv�B�ttξ��f1����޿C�okh�t̞bi[h��q:g���5,B��N
̀z�a�g*m07��ϑ��3ν��;���e?'�/:/�m�HHzc^य़����Z8��Qn� ���rn����~^�#$�9f�{���ٕv��Oכ���n��������E�9mk��N�]�^�6~b�s�+��^z�9v�j9�x���1:k�δ_BI</p�U�G�*�>߷�H_Kei�C�=����K��NI>�!��x�
����f�pX��5L9�ds�>#��!�q�^�)v]�4�Q@c��Ұb�\�k��r���봡�5��5��l_ڹ�5���,��3���w��8�t�^4"���s�I�ņ���DK���=I>����9�`�Qn�i��i,��#ի��~����3��N:H���Rqq�v?�؀�������$�*vҸ�zwn�X�0�D�}�����J|2�D�eGy]����g��P�H~Vq�Q����$��FU���K0)^�X/��Ӗ��s�vս`O��'�V�H���5��㧷�๣FJE��������R'��T+A˔����0*���3��X-5q�kՄ1�`:�<?��yo�7/
3�>d���sl�*m�����`��x���1z8�.�(X.W��)T
��"����������A��<!
	�ǧaH
B	�T�L@��x�ݹ��(;�����M��&�ə�94V�|���X-5/��D48�ͩ�\�ǹ��T\
6���M�h�^7tFCM�"�ǥ�����NJ$����l�9Sa��s	bSu���"��lZS�Y��'
��
�<����t^�g�7��:O�wU�^���\7�~$���E���O`�XI��R���h�����a�@�z��qj�)j�a�SB��N�Md�%¦�1����}��?I��Qݡ
7�x�pu|�K�	��K�[X:�W�vLY���u�c��?oY�<W�2X��U�$����ʭF��`����jɫ��y�e܁��|sE��Zܕ��<�:�!�%+��y��_�z�4��-N==V��`G���ub�MY$\�Vάar�0�2ģ�~^v�&g�Š
B*ǀO�:3�(�U�R0]#'�Y�hfFzV�ͿTm����%V�XP �a*�"2N�<�˔9�{�'�Z�@�x�z@�R�E�%��%	��)�M�}��L��7��/���%�p@�nٚ�xm�������.��|����f��e��5�2�_��۞�pu~�w��OY��Z��F�~U�Q�����c�#Y����@(&
%e�M�|j�"�4[Y��Nd_ć��)����ڸ�%ug�JI]�%ՑbI�R-}��^��kM������ԭ.�֩��D]�߻\�e��}i��]���� HU*��.�/;�(�f����N�{�ᝣ~(]���m�򽎻��J���,��l"�v�%)�����M`�[IK�����8ș��SP+��}z��fM3���]É�dW�-�r����-��Us�	-Gw[,�,4���چW_O6�m5J����-�����3ƺw�;O]:����}���d%���Ez�?�E��0mM�d����̷S
Ž�Z���%۞>� �-xB�`�1ژ�W�<{B�v7i����Eb?���o#��H���0%�f�&p{�%�(ܨjj�����A��w	
�.񢀁��@���T���`~r�jX�cg�w�6��Ҕ.r����v��:\��E7�>G�a�u
Q[�6KQyQ�tD"=!s���I?�'�M�N�_d�gj��S�w�w���&�N9oHW�U���iI�����\ô1)�&����$�!�`�U�7�H�f0j�"Tg�{e�XV/k���ht�jQ�DŽ��I��ǵP�m�1�j��;��DB��ӹ^J��/��Ԣ��6V�v�q}�:�7ͪ�9f=��WЛǘr�|�B�NZ�'%�;����k��տQ���&x�9���{8ѢN�:mΣ�����֑\J_RG4��4=��VY��м���U:S�/��cl9��������ޤ�0�j6�:_���¤��q��Q��H�3̆X-˼���ע�8֎��aBT����l���;`�w6*r�ē�Cb?��wk����S�jǛ���>�����BC>[�n�{zOM�^�BeK{Ի_DR� ӹ<�*<Xɗo���:t6��׽|���MU�߹J�g���1ݕ��þUͧM抖���vN7绎�/YJ���p�a��c��;��7�v��ں���

��N�嗕���H���ZZ�l��
�n��S1�v	X�,��j:���q��aaU���B%㕃pe@�������Z]B}�R{'��4���\�=!m��$
Տ�>%�9�
W�F��t�Ap�.L�3���5�~-]��D�`�X�e[��N����q�	���c$��Y٫M�vo�jFu:+�/n'2>Y0c��k�m��e��ye�K�$����q�(�O�B҆�6'����[�+(q�Ln9G�#�{����<T�C�Ld4�^� ���=��	�]�b޻N�u>VS[7����M̈Wx>n�xu��S�P<�#�������Ο���p�JطMnx��ob~�t>�6z_��Θ5�k���Q���U�Z���UA���6T�}> 9��GʑT�t;�_�̥��kE ��<]�MtҲnb�X�����fvtd��2���skDk։j��Dի�T�VH���T-'��Zt�ȡɒ)���g�%���D������<g�!la�x��T���)��@��Z��k-W�����?��;���u/HC޾
����}j��*Ң��FT��_/�7�J����M����½��(�qӑSmvgr59�X��"�	��F�ȃ��G���}�� j�n,X�.����{�E��
{�v_1NK7K}�5��4�my(w�^���n��Q"�{!>�$�i��ӂH�7`8��)�|����4G%�*ϒ�-��9
�b���wly+�N�ٝ��m!SCXS�h*��N����a\�M$��¬�$�
��kX�GO�8�چ��bGl|(�=>c����4���u���M
�N)H��w��gxL��`�Ӱ,����&vӦY#�)�x�Q�
�
?��7���pb	A�&�Vɮ��v��fjC��C���g�G�gD)��#C��vύ^3*O��"����nf���=$�K�ϘN�q�i��ֲs��L�6H�ʪ���h�_�0)[�O�윒�[��]
͜rz53cnlUe,��I�_Y�9�O5�(��M�
y滶�O�ľ�7�p�YFr9�"��|(��0�`�U��h��Ձ��j??�#�_I�%�K�l��~~�������l���gE}2)t�0��l�#��o��7�4nֶ���@��L�ՂC#q����w\��;�*�W�4fV�3��e�9��+��!��7�r�XH�C\�_��ߩ���Nx3���N��R�Q���Aq�'tX��S�G~�î8wk��B��_��v�ܯ5xʦfA"B</��`]�p�P�~��j�.��*�L����oȯ71��u̸��9�<%\n�4њ�4�C��	k�V�t4+N.�Y�L+T�s���i�wA�*j8/��8(�NI�0�8Wx�V��	���zi�L�-w���7���/W�p�e=J���D��hՂa�1�}e��Ew�9k�e�Lr�t�3��V0����N7�q���	k��*�wH���˻�d2�S��x+���B�z�����&��"��C�zJ'��z{�&�8�Z�lO�KޔcAX9��6��ȑ(
1���x��3*!'1���*��6�X����<��=r�s��zX�qY��e���ֻwq�����5��
k<��vu��\` me�=z��W���m	�s��I���z4��D>&W��
@Oɧ7�������O��M�~���æ�
������Ne*u�͞�cM���-����!ZC�+�+d7�[��Ơw�:��VQ2�:�����f��R'�An@�#����b�zw(1/ij
�^5�Z�T����v��ss5�m���͏��[�9#	-5q��*k���2)��:|{	���T1���׸���8�g����x��o���mϧeC��Y���Ń%E3�ʎZ�ץ&56&%7��ڛ���;�9�h����KڮD�c���}��`�)_��/��c�Z��c�Mm葶�>��a��5�b3 ������I��P�#$���2k`Q�-��֯ľ�^8�G���'�� ���ؒa)o~��t� &��_��ꈉ9��_�^E���C1�������S2��)�&�;�k*k�������T�_c�tj�C����
�_�,j7�>��}�~6�{V��8yc��[V9�v��֗���s��<�[5z~�‡s�X\��F)��dutd!��P�)��Kݧ>��<��^,9��_��4u�6��Ae?!����T�Y5�]ŹwJ�&�$����UU��\{HmFT���+��nf}����:Nz���r`~Cx�ݑ�>��"f��s��,@�Ti6WڟϘ��:$lH��A�
Bp+�1a�h5d�Q�c)P�Y�eD�/��#��b]W���'�����g](���m�wa@Q*�F"p�ϲ9��c�i��n��Q�9��0�,�82�6��m�,�
0|���NDzSj���Emْ�5
>jK',����X�y��n�F���b�͖����i[�D�+�ltJ�24�O�QK^���vD�g@\o�!��$۷���~��jk�����A^�@z~��rb��>��f@=����*ty��	�$����0	��A�! (NG���a9Q��I١�)�����5�.,Ň'�������6�7Y�����8>�x*�p���,��,CS\������T�IǛL�x���<��W�r��&f�9�-�=��K�+�{������w,�6s��V��df�F��~{$�J���M���=Dw����5����h*w�>럱�����K��+W�.<�F���wS�;�M��:�"�S#7���xL_ZI�="�(  �}*�q�������vC�T�88Q�!3N��V�;�[�j�`��#��P��)OMI*h猓۳g"�?E�������ӆ�f��ҿ�տ�(��	���I}p�� a'����;����(�ODD����u���_MM=��_�=�*Xd�1R���`�3��O+
�;��e��}�"wRfY�?S��y�Dt�)�Uzz�jM���=�UcO���9ǪJI��I�Mo�p�F�:�#uaٵ�y
�[i�j��\�/:��t����L�֥rC&D�H�'0�����UZ���5Q��˙(2�̱r;9;�`�hI�*#J�I�O%��p�p���ۊN��_�������||\�~��h���4n|jjJ�A̚9�&���>��ƞ���͢��)�br
�7)V�����D�r���nV�?Dc�1y/"nϵ�EE%�?���Lwѷ�[E�5�$�1�v1��橤:��K���?��]���\�U��hG��g=
�P(�2��(H�7aOv_����D%��A"�A��t���U�Ի�n��,0�}%�>@Ə��%��cn�аTGJ��+T]�$��X�"R���3���{d #8/�]�����ں�M��wЃ��Ⱦ-�N�����oKN�JIn{�s3j����0)S�ۯ?���9W�ح�EFn.�3}�#w�)Tbc�'�Di�"�<V��,4ZwKW�`�kEz����J�˱b���,r*H��/p��� �M��ڑ�P7�ꇦ٫)�_޿��������~)r�-U�_�I��(3�$�Q	�H���2�,럡vi]�]%�:���9�������E�;&��?4���Dԣ���J��dZk����[J�̝C�Wޟ��:M��6��94$2�l�������J�"��5Y,k���.e�Fuj��T3�[�˜�!�J`�|j�D�}+��e�\'YI
\��#�@F�����‰+��߼}�n~�~i����c�un�O�4u{T�̬̌
Q����m��h^��l���u��..VS
�)`�-�+`��SK��D�c�U���.��;�=���tna:��Z���:��B��/˜��!��Qg�$�z�ϊ�IC�<�=n�b]*���X+(�ek�׀�
��^*"�&���Ȩ#G�KC��(yd�K|[�e4Q���Ǣ\��T��ԇ�̓���.^�g\,��F��&3�%Yj������T`C�f��!�{#�s �⩢hM�]�z'���p�f4#XܻT��{=�uDY�g����Z��W�XW�����aT�{��w�0���7���v�|m�q9��N��!�$�O`�[���ZF�B�sx&�W�T�ˮ�,�5L�}�/�lK�?��lf��,Ū�����E��Կ��>xͭ���`�뱌�]αn�
.$`�5@s�\�ޱ�d)ҕ�Ћ��4j��R��Q�Y����U�Rnp�=X�	0h�L�7��Wi�[o
q�s�r#]��ݦe��t
�������?~}x�9
����j�A�~I��[���h�[֍W�7�E2D���҅.o��s��\��}��K���M�iĕ�3廁�q�
�Z~֭�l�#.�mvNv��.n#jvۓ���|�R�7ľ@f��c��B\p�?�G�����c�k9'#��9���8)����>�,�!�~�^�^�^Z�.ҥ=D��N���8�
�eN%�l�ֿ	��]s_�q���'�7��Lg_uz�I��9��r@�l)LD�f����+ѿ�-%պ�'7�O�_Tmi���w��QճgW�ώ[�@Cӊ腛
��'��>_�͈*{b�w�S"�eٯ%�M�0��f�#?7~������u��pG3sY�M�?���ua�1ˤ1��ݰ���<�90����N��=�w��o�4�$�V��"�����̦��I�7�Az�����u������d�������b��6��ŏٳ��=��B��
�f�V�X������^�t\ʦ,&�S���>5c�̓�,`rg��h��3����K�>~�38�i��jg���E�NII@f�宸�&!v�+q��Njp�ws��gQ��/���x��ݏ:�v�a"do�2���S�Q��v�w�q�܌6l�O�6�K̑VG�ҜV�I��#K�S�3g�&�M���#����q�����P�t������T�3h ɭ�����]�^9+��BY�ksʤ2� ����F��5����P��EYc�|ED;Mq�UH���0�(N��h�(!P�̎����|E�`�����c*(bT,�@I�l���4H��ʥ�Ԓ�`�+J����J+�#dT.�Whu���╱>��2���jW�_ �?�@g����X�ݸ��0xyrh���M4�QO����S�����\H��N�""`o(f��&~H�H�kt�.��:>�i\rNTP��_�1Υ�T�%&��@���;)��'�x����mx(�G�Ò �zT��r����eD\k�s��@��,�8M�z��s�/��e�wO�	�\k�?d���u5+
������
b 
��4P�m�*�R@���..��G��m�o���H��-�e�6Խ�<�?|dF�]xu%��{8����˱h�L�7��ZZ֗�,h�	4:��$��/���Y�8���y���j�Z�9���m��GK¾�AHJ
6^"�Gn��N*�n7a|�h�|�Å;���3y�k�e^�ъ��9���
�`�#�7��[�Ӽe�e޳@S���(�<�
�V�X3�'�M�g�ݧ-|�][ލ*ng����,9�{NFgy����^��|�����I��m��8I<#Z4�i�.n��qG�`�Hl>��ΐ=	���*��9��-]��oO�i�}g�;�V}z�bH>�>��5�=�ٛ=��hj����d0i����ٓ�7d�v���{$y0k��0~Pv�0V�Xa�!�c�pZ��q�&��<R�>A-6P�Í\�k�r���Ysg�R�v듮��*D��V����R���
�<L_) �L ŷ�ںԸpZԈU�Sn�.E�ʦ>������1a��r�#�j�@`4y��]�C.��
�+ QS=<�w�]g,����aט,�D����hT* ��;��R��4��(��Hr�;d#��*4b|��"�Z�5�mf��'��\�왐l�;�v�>g����ߙ5�::r�%�d�E3d��"�
�LCӲ�l��fp�������j�zpa¾����^~�Г�Bۀ�v�/�R�7���״��'<<�D��+�
�+啛�sx�K;�e�vZ���!������&��
��O�<�4��1�s
��5�Q/�*RIGDv���KY9�F�/���?�8�>r��e��E˧O��M�8��VN���"�N��&�K#h2<-��s��N��
�+��X$�H��@"G��L�Z7�F���7�c��2�+��=T�Ӎ���Ь�^�6�ye32Q�����
X{�����LW�[������}��VL�:���`��cz"؛�1H_��$��~N�ѿhs(	MCFj��~����w@w��2�(H�%�(�oiV%��)u#-��*3j4E�J�Y�8��i=��GT�t���<>����8�%�
0#���!�H׎�%G/1k�G���(��v�z���:�2J�=z���^�2���6X[�@��� �c-�7�Z����]in|�ֹ�S�En!��8	
��Hdh�f�*,m��K��0�f9L����LI���H0�̚����K��ȯݯ�~X���>HcS��0�C*�@O�Pmc�Ŗ�[rX�E`�nZVV�ʌK2���]h�1Qf���0���1��wl	;)Ov@L�A��D�L���I^rR3�Z�\2W,.q���ˢ��jF�##��Q��ݚ�q�JaK���~�А�$*[֢���KD[��pK�/Wu	���$�⩑�(rs�3�{����*�xJ(/1��_X����P�nkn#T�Y��H5ۼt��Lb9�9;\�,Ӏ�<}���o�(�z���i��ä$xF#�K����k�և-o�Ux���G���l������ȋ\�/{1�W[�)p|�s�hU6�z80��:����d���7�|:[��#.�H�?4�\���/W77���];`J����V�&M��:�e,��PJq}���H��j^�ޙx�\�~��#�I�$ύ }[��A5�A�:�%�6������uD��}zFi�=v(�uM�]�wq�s�8}rkZz��4�p���爞6�
H��efh�_��)��#^}�9�˭��V�y�7��R�x0A<�����L�uVܯ	~��2Y�s�NE��ָ�?bW�ub��_R��M� u
|���Bˌ�i_��<��8=�~U
��Uf�J;�"�*��"'��6��<A��r��<5���9��(��e�b���X%�ʘ�
�J�6)W�H�C03��|P��
�m��U���S���*�PD5�P�K7	� �K��B�s�����
�%��k���T�4�}����Q_�X�?�h)� ����
��6�y�`�@/�+ʥ�>�
������fvE�����$��aP��6d�G��@U,F������&��3���AyD7��k������KG��spsFW��_��z�B0~�uA�18�}�}����ֲ������N�n�;}YN=�_=2<a�
%!
U��d�cG�A�`�qs��P��(���>�t[�˃���g�b�$�O�h���B�k��ھL�����)�x�\6?�M��~����ޢ��l���8�Cc�6����0�w�M3����]�X6��#�K�O{���q@�Ѭ�h��h�k�z>��m���h�>�xz^M<ˇ���Z�#�r��M�7�^ݸf�vkd%d�ւk�sda�Z\��A��1��FWlZ}���m��nDZ�q�з�>�1w�*!4���V�
���A�
��D��If��Hs��K��-w��}/���mb�p௰v�\;g��4DM�x(�c�$�߃'	3��.�C-g6D�I;���.�`�P(*�g���e�D���F�.z�Q����\��L%uj>�i����X���
4�1L���Y�Eß%�,�W5��+�qT�&HT�Oq�t�?�u�B	��kW���1wMj�'s��~�L��z-�[���e#/S�;}V�8YKV�ڊ���)J0�6��c���b�=F�M��{�/�^�\�*��8�c�k�/�@�]��ij#�w&z{�:qN�|dГ�W��$��|��|;��`{��ŧ3�Y>�-�r.���h7b˃�3|t|@+�Y]8�E<]g	�Ȥ�,�k�W+�뢽7�_G��i���%yLZL�`A3H��
����`)F��8�w��F;F>l������t� &�Ld3�$�ܗJ���:���J%:�t�<f�R �q�xhczR�1OQ"i؆����%Q��m�9P����-�a�=�O��W�H����m��ʊ�n�}bl����D/6�U��}Y'��'-sC�':9hc�]q�BJc���W���A��$v:dX7npc��ϒ��R<�&�V�7���O�Nn�{�yv�#0� t��G�a�-ك��\�т�H�!�o�L���8Jn{/sS$�w��],�;��vF�`w��
9�=����ACQQ�`|�C�Y���>�
����@1�p
�&����b�|Ξ�_�ւ��X�Y����v��S���V"�М��4.�J֓�mɌ�?�l`�$^&�7����<�q�ݪ���
��Pv1�6>��)
St���MS]Kڪg��od��͡eN�Y}��K��\&�we^B��BF��g�'B�x�J����oc~��w�Ȱ�a��>Ru�(`+@,jU�>�W�1��9~YP�q\=���rT�|����ܮ7�P��W�r�=���ͪ-�΅��Y����7\���R��QH@3�M���7�������:�yA���*�!j���cZ҉�
k��E4:�qI�$�	�_bxČ�B��в%�)Ȧ ���$������ڍ��x�%!�V*���uVH�f�xp¯2b�o�40��xuw������G~��wav�
<�AC��q"�w����?��O�
l䰊o]��_)%�u
����n�
�n��u|�V�0�u��.�}�I\�b��|ċ��?���1��/9A5�+��ldm�S붴G�Q'�`.iނ#m��u�c�v�_#�lt�G�Kj�pW�E�� U���L
��2�ݨK/ӄ�UB/�����L^H�27TS��kd����8�l+�n�3�?0�5���N?�2�3ә���^$ڃ=��onH'��p�+�Z^P�����2��F�²k�4j�^�6T��;DZ�-��d^2�t�ҕ��1�uj{Z�&:�\�T#~Ì�Ҧ�™��s'����
kxDͱ����k��`�>lր�!i�P}��!���d�,p�_W�4.@�������*�ƌ;���/�������*fY�����$�R.���&�kf� ��x^�^]=���I�AFH�I��1���>���ާݧ��O˓>R�Δ~z3OEȷ��{��.OדWEgS�w���_�Ue��?�	z&pU�0BXUzrR�ʥ@�v��ͷ��E��Dn���lc���0�C�p8[�Q�19;7B[�c�Ђ�Y��P�5eʧ��g�!�LJ�d~���0b������2���]�!�VRF�0ņ�m�dP<G���\�UX���ag�X �r�7���x�V�[R�rޑ����>�Iə���3��TX<��,�4`I�d���1N��Cy+GYҮ<2���XBn�@m��G�,~�{_Q��+ZiB䪵���)�'̠/y��>�P�!�@Ǿ���I�5Z��AZ�g��w��Ar�6�vJ��p��;��O�@�맥9���d`���F2g�H�����,�9T�
 +����40w�����	C^1t2cj�~��E����;H)���ƙ*Kg�Z�7�+q���D͑��wE�!�"h��݃�Ǹk����B��j�����u��Q�Ӹ�0u���mǭ@)��E���x��0�+��*�2z���\�]@ͣ�G^f
FA1�S�N�ԣ~�r�K��<0	]���aB��)�!K��Ή�P>�����Txl$zg�A6D�5#����8��B`7U��HSRH�z$J;��,������@��W�y��H�f)�u�h,� Ȕ�0�H���V��5�vc(�i��m%����$�d��BMN�^�,/�����(wf�''m�|����k&V�)�M�S�쥓�bi�I���\�P|�R�	�h�M�d,at���@�
�HG,�~�#���s�W��+��I�����aTM���,(�u�N1;���_w�QN�bU&��iX��>�u�P��
9z�p!��9;�0q���Djig��X;kut��а�pSܸۙ+�ln^��pTy]G�0L;��=/>xp脋+3o�U��ŠCgGE��e�5$�v
Qܹ|R�vA��x����`r��0�m��w�	������̬�����}򸸸}�v	(���ǫ�Ҁ'���g���B��A��l�>�y,՟���7�N�
;��S�+B@eXR�a��E�9"�q|l���d,��W>�K���BhКˋ�e���=g}���8{��x�h�[�6G��pxN�����ʼnu�ZX���*9l]+�+Vpݙ��3�E�m39m$`�q�>k�u3�Mb�����;�w�k#,�R���(�B����I�-Ow��7���q��(����9Hj�<�r��S
3n3�v/�?ܮP)���!d�,�
�"�V�WC�	���w�Ki:+����l*\o�E;�#<i��=!wu�C�Wq�/c2��w��V.�C��p��U�K�1!%��=�~j�L�L�1�����ۊ�������g�8��z��Y��N�>�ݝY��n�xbϟz�W�����e�IJ�.>�	%��jN,WS��^�0�ѹ�4;�xO�jQ�	-��a�<g�8��Ѩ"�Q,/>��oVU�^@��k/�,��7I��hz�\T������d�E1��M�7�m̏���Ґ�I#��d���D�#Qi�楲Z�ɒi���u���ƟA��?�E�!-���o�5/�ltR�=g�Q����{�բ(���@��pl��YvM�;�?�/��_�ƞ5O�$&& � p%>�"��B�5̥x��Wv� ߭`#0ʎ���"�R����ꄔdZ�PB�L�� 6�Ҋ���!Sp���o�Sj�)'��+~/�yF�cZ ��o#jȈ�H4��m�j���I�[������u4m8��U1�-t��Gc���}���
0�-$����x����
-����h� ���6o�1�R/ ��ѱ!WcE
� p��Ӌ�r����;�x7�ܕ�o
�5&���u�S���9�AIn�L.غ�#Z`��N- ��K�\���ni1�w���Š��K����~[��[@A؁�@S.	�}�~z�p��}�g'���zx�ɭٓ�p��<Ҩ��՝jQM�dD�K<+\��K$`]t�b �����,OY�H��hf�w��
�j�e��i���J�`Ay�����Y[Nc\���i�~Xʳ�ĠIPB���G�up5!�=��ێ�������8�&f�{�@l���E�7�,�(.п]Qw����=�h��)��ma�B�F�Q�p4�ex�����{�S�huߨd�I1���
,�����T�(,�QP8���g|5�
����"j��K>�n�B��9i$C	F����75#�6�>*�Q��hO�E#55z3ZCzn��s���-�׮2��0��=ښdLp�pꄓIG�y:��æ�2��/�JJA?�+{�4��`���9�@an�"�{w+L�;ɮ��lR0C����`��G��g��7��U�B�>8��I��O5�5e��ˏ�B��ߴ��	�¼C��B���<�� #��é��;1O�Y7��_'Q�����C���ʪ�x�>�lV/*���f½ы���e4�d2ݒK�TDB6�w�`����)�fgJ�k��
�5�XrO����N�F�
��k�|�>A"�#�"���]�YD��
zz?�u��;B�X�A{ �25���Ϙ��>��[}��+
l��o���L�?�((��x\�B&��`X�i`0���'��)��bvm��Ӹ�M��G��\���Ӥ9���`�2�h0�2����Vg$�m7���(��\�Щ^��=�-��-���r�,B F!\�i0Y�'2�E���Y��+���+����K�YW�^�g��w�W��h|NUl9峥b=A4ɮ5a�ꒉY�0 ֣E���	F�� �L��l���
jȋ�����at��k�M£��=���w)p�#��<���=Շ�y��[m�~5��L�գF�����e�0��|�p�����XJT�F�Ɨ/�[�7{���h��ۯ�{cr�L�'���⠮	8�6��j�O�����\f�s��lh�9�}.=��ii�6�\�k|_�2�����ZhXU"�t��o���2�&���:&F�?Z��Zo�$����XyQ�	^�~X��C��!��Y�CB{�y3�)�(�"z$�����Y�m �c��_к�0��<ӡ�&x�I}%�<��\�t�^��1^$'�I���>�#@�0�u�xh�C�Ql��������}� ��,h��k�ݯ�x�}@�}�G3�U�3�Q�EB[�9��5#���ffF��P�o��>A�c�jrZ�A>�R�i}�q���[㈽959S��Z��
�XI�	#S}죴�Pb��Ȥ�vX��4�理������r{��6��9�R�_�J}��6�-�ώ�ɉ�W�E�=�D��1̔�2&�s��m��/ĸ�𓶞�#/YBf�ƹ��ku�vz�z�[�qly,��6�%y�y����9uW\-^�@��_���4��zz�&\���'���@�(K�R���<�;�p*5Pt��ׅ@
�ɰ�C0�:y������Ed$����Sf�9�m��:EWE[J�[E?���������W��y��f�wY��o��{r�(���1;���~7�oGq�x2� U`FPA#�(؏��x������Fܥ*(q�=7�͗w�%]��q�vd-��6<�4+K��.�w�
|C��yB��s�_���vt�V&^�4�S���������g��to`ܔ�dl���۽�{�N�ڋ�)Ż�2�.��R�M%�>=��'<�r"*QŖ.���W��rOt|�I�s�9�'c./[���{�c�ìSKJ7����[j�m"��a��{y�{��9{
�̙�_W�}j�q�h�L�%�А>�$y>p���^n�����<&E=̍�9�cj_կG6�x�����`ӆ�4Ĵ�L�.%=]^�л�Ϯ{~�"~#�+� ��=�����
�PZ&9]A1	�]�]��&�����W���
f�`O/L9��+߈$$8�UI�)7�v6��ܒs�Zԅ�l��<�F
���"aĘH�.Z66"lo��x#m�˴"�1/��h7����ٌ"L�Bq2	���
�AC�uqȡ�c���t�å��+�q�Z���Ed޵�'-ϣf`����l�K΅dQi��AT#�e�jt��,m�t�a��%h�=Wc�Mj(5��1�P��1r�\*�0ES�ܝ��iN7+9M�FN��b�s{8�Y\wH�]�_�ոJ�F.�w��a��Ğ琳���˰��5�0�[��\'Z9�A0��K] +����_�:�_vv��X�ٿa�T'�N!���K)��r54�<Z���'ީ�^@-��-� �3�z���&A�K��H1�\�<��;%��O쑚��<�a�X���'�\���
���r�{��s��֑�3�o�Q9x4�K�����i��fA(?3y���)���nVz�:^V�u�:�+�"�E�����\�3?y�J��={z��P�0�X��� �
��h!E�x��J|���|�����.ș�����**bQz~E�e}���o�߂ڶC)vkUid�D'�3�o[�#uBk����ŰD�"����Ī�D����ğ���tZoY�l�%��A��*���0�~c�s�( �L��6wA_� ���_��n�6�q.���{�H2p�g��Mд
9��G��<���
��&��N~(������JZ�V{�.S�H4�*��9N}�o�H�Nk?Q-^3eg���1+zxO�_��)[~�v�h��� �-a.��Pt>��A2�:��W�vAf�|t��/����c�]����/uA,	j�����3(z�3�g��_
sD�u�����Q��_@����<1�Zn�b�
n׏/5��z�Xl����^��`�e��P�M�f]4��K`a��Ѱ����&�k}:G���穮���"�@Nc��?�?Ws�s��M�$0���>a�R^8��u����#i1�Uo�ΤW���˖wtv���Jb��7�	N`_8t𯗒�I҄����I�.'�\8輍D
��%_r_�d���s��|�F�%��Ie��k`�聯1�9
�uIȎ�q)f�Wp[x~nn�ڱ�ҷ���U�=�7SC���a���on-���b��d��>
�:�6�~��ww�>�V�C��!� ��V�������h.6]�1wg	^J����7�
�ڥ���y�?��0NT�l�K�ӊ�ȑ�(��󢨕��q±����^�y��(
��e�38��¤�� �?;�nTtq��N�!�����?kr-��df��Ԋu��g�g-�o��M/`�?���L��]��I�(jE�(O�i���,�o�7�4U�o����"h���	��̀�_Si4�����1�}|�L�j�dǡ�x^'�0��.��d�'�PRm,/��C.��j�}����{��Q�nA:<43��a�7��u{6��)
�D��%�KoJw���c��՝ K���{�R�����8r5@W۳|,d\F[�8�\�K��}Nӷ���,Z����a�|pc�
3\�]�q�A���:9�]���t�p/�p�3Us��4}�&Y�������������ѹ�e�0|��̏�g�q+�ϒ2�~g���(B�O,JrZ�^�h
l���K��E�3OwW���d�"F����p�J������Pc^~�3}3��=�\�x0W]�`���.�
?s����_Y����Kb+����/��� M��w�{�⯰�g6���t~g��_�o�?{��s�������i���G/�}J�vLy-��2>C
��
~��O?n/G�WN��Jd���Wp��N��gO���DW\F%�ɋ�5�X�l��/Kn<Ҙ4o��(3���nMzSd�&-*LZ�F�T�x�1i����KQRvFҿIS�����ٰj}R��S�tW�R%QIU)NY6�oe��Q�Ȝ[��Ru�\�d���n7��<T�R�o/r\�"�9��m�#N�_��
�@N*�-
�)������J@�j(;z^�	��0l��[�1��������IŰAEE�@�	��@!�7�����l�bb��N1=yVu�
�U�H�������ۊX�c��:j1�
�u����1���Mt�b.5j��X�FoZ�*�l{��g!�E�$B:*^ޅc_�Pz���nW�^���`H��W�‚6�Ln}F=�04ջ�h��|�IcŮ_G)��o�Q3�PN���k+r�i��wM<5�+f��j�\0+J�)y�M@vӴ?�~3�Er��̈
ɜ��ʳ�����+���@6�.�͋WH���I���e!��2�,�d���Rk)*
�>�!��o.�7���DE~|�FqH��ћ�;��_#�p1�C<����}e��&x�]\�p4���?:.�Ȏ�����4��^*�.���n,ε��]$D�=�<'��#��NE��ë�a�)�8SilĐMG��Y)`4<j��v3ū�+�'z^aP����N�I��ݛ~�<��!8�H`z�6-#4O�>�n��H)�oB�Z�l�Ё)�
�H��B��^�%�f2��{���x$
#9
ǔ�����($`�%E�P��U�O^\/s��P@O��X^�j�`/�;#Zjx���l�4���9۱m��-?/ڒ>Z��B��ݯ=p�~�8|B�%��!��c~����敫�nc��ZMɶ�s�k��U-���뢊Y��0�v�2I�P�m{�M2�bE<F�g��˖J������הK���J�ū��F�cu�#H�܃�t��� ����k�n�|"G厦�F�'�W���>u���kw~p��߿��& ����L7{���\�?�5�M������z`ĦwZ_���jcW��]��Mt���Ԗ���*W-'�XZ!!>���%�-^M�3��Cn�#<�l�R��j	"vL�ۼ��	|�a@H��$��!���OD�:cT`!F@�A�[�K�NW��z�΢��1�qYV�:p��M�
-�Y�CO�E�a�v�^#?�>�����f��&;�Y��#����l�&�T;!���l�k�7����N͐ݫ��s�8G�\�C����Wz�m����V�x��.9;s8,�[/q�|�������8�t����]L�?��@���'�"�[��}Ko����CS�=u��O����+�3OK�ba�̕L/z�2�D]�O�^a�Iķ<�4w�K�<�qƋ���������hވ�_���M�3J������=���o�)�� skN���K�+�!�6�W�aI�
�� ��$���E�*\C���aŤ��[����f�ٍ�����F�!a�p&<�c��/@�i��п>�{�U������=��,�%�ʸ0:����d�>�-(9ʩT�Me$�q��JG�4iJI�y'm����B��I��I��L��ヮ�鮧�a�3$��I�~���1������	%7U�{�{<�+��L��,c��4zT��Vy웩�%ïR�oW�s�����<�w�Nx�H�7=�<N�d�r϶�><3���ȪY!7@�,�~��K���H��a��bg<�4��b��bz���S�7��}�#���	�QH���F!��!�wJP��!�k����.[?����!(��_���!EaA�qLO:�bN&�_��)h�(�"aTzvK�_��:2�V��/�)�DBd?5AlH�]q�E���*�>{`L�H��k�i^����紵C>oZ0*z�y!��o�����Ǵ9W��%q���;�z�B�R�:bM�{��ECݒ�
4�/S��Ə��G�,QJer��n^�F�NL[9$>�����/��sf��!�(���`]��n���mkh.v+^��x����׌<>z��de1x�4�7�QTjA�ܔ3��:H;Z���W�A����M#ah��ڣ[�xl�}�N#t�-Kvc�� 7�	��XW��(�^'\AJm�ӽ�z�^���^O'�5��	Y�Qm�0T�6��8[W�ÙW��및�`� ^1ע�T���`�z���E����P�ʆ��)��0b(=c�գ+��%�����?tTsPY�1�B�'ˣDr�
��10�`�~�[Hc�y1M�:~��1�~�^0)�
�YQ[�p;��[�D>�Ϊ'�u@����X�q�ʞ�R�؅$qM�߄a�^̈L�ac(�Y���8���t��򛘍����3i�Y2?	���<��<���V��s��W
:{�2O�F@!�ra��`+B.:�iX�R@A��%2U�B�s&G5W�	��h�$�8��;��\R�
����a�:�(t��q�i�fS9���2�*:�5q�1���B����ѐ��2
�w�W��=�y�~\!�l�U��6)�i�pӿ������ Y�X|^]QF����76�h%�r����U�DmcZC�W�*F����?Ƴ�ڎ-1L&gIG3x0$���JU� ����V�В�VGRỉ��S'��|�1y��Q[��Sԝ�Z�Z��\�b��\;�����'�y>y׆vm0�*�+,�,L2�UNJ��x��嫝q{�8R:��Q�H;<�q���_`0����Xl{�I���ӑ�d��gCފj���5��<��69�	���_�7���R�D��I
�l]�(���"���>����u	&x=�(�p��	>g.�/c�f��I砀>�E���W�d�3��)��!�%L��dN���pϐ�_�L�[�2�O�b��+:
}<a����N��R�(p_�b
�c\�As�3����� ~�
�x�J\�`x<Ik*�6]�|��C�vgۤ����Q�}���Ɵ��x	��ia��U�5�tC,/Y�sU�jS��aF(�C(�੾Wv]^fp�Q�'�S��?�G������ɴBN�[[�|'�myĚ���\@;��=����G�4��W��m�8�u.M�����O�-x�g�@��(?k�4�\__��{V�!Q�Ł��w>�'�IN&J�f��-��a?^��4f�#�?�"2B������H�r�aHo��?�e����!����W���P��V�%���5��ɫV̤C�"YCS8Hۙ�)��-�Q7��75 ��pmп���`�NyF�KQB��<�Y+�Z-?�nG�W���)a���|�̐�N�ʁ~
���Tu�����N�dN��ϣ�珧΅�^�]�]ߍ�1���:���꘵{��1l(�0 	떺�i���N[�m';��,�\ba��f�@�LY�ʌ?���M�u.v1�m���&�T�7�?���R��@�O�֊.�6v���j�K�� ��kS�Y|1A�Z	Z;�p*ȳp�� �b\��fJ��O]#4�?��Mu񤖛��	^��>�૥|rv
~��ŁH3!�Aݧ�a�?�N���Ϻ Ѧ}��`��_x������&I:���$=�q\�M.2k�H�M��H� �^�Db"�B���,^~2-��6r�N��Ui��(�Ci��#[�]��c�t��*�}�a�{�TJ������+��ZR��z���nr�wR�+;GÃ9�%�d*�n�[Ȏ��)�lڟ���L�󧭌���S����r��'P�M�*�,fβ>��Ka	�E��g�Elj�x�i�zD[�zea�.ծ�H߼�`V��_��2�*Z��L����[ӳa\�u��6U��2Dՠ����RL2�s���>����F�1��
��/Vi�QQ*�>W�r�
�Opi&r���
��!P*q��„�s�э/z)4�8��4Ư,��x��r�������>3�i�x	Xyx�4-��ji>�q�j��R�*���d6�%���y��{�͗J��d��@t�"3�U�q��m)���#),�[��"�a�4_;P#7�J�΂���kX�A��,ws��<Tf��?f<����`���Z��`�̉���?n1��h��wd����W�?�1�I��:�T�4Z�k%^��R.�=�ϓ����Y3��Mw'P��]y)��`dJ��Z�YpH|AG����
%�c��:?��J��<%&i��`���
�&R"���qx'zv�S6��8��0ĨI�0�/1/3�f(N��� ?y����T�'-[�3��(n�g7���8�*�b���~K�+��\����u��Kw��y��vs���MѧN{�	��7B��l0�h�P
"7j��v{S�j`Ϙ��+|� �����~/�z��նH�1�sD>qpW�~�ɬwl�
#{[|��U�
��=�"�!LX��xr��S�R*5�g���6���o M����U�Z3W����g����%�ϗ�R��z�g[����=1��o����p}�G�
�O����@(�	@)R�fS�ӋfL�aOש̓5s=_�4�����\t��1���Fo�(G��oj�����E<U�.u~܎Z8uG�C8uA�&��Y�g݉�����{7	"�F�5�,�D�m�V�$W
����#{or)�ci؇f\�cQ� �a����������}}V�ۨ��M�W9����a+�2�Z�1���	C��3���S�p$sMd[�L7��`bguX}��T��1֙[֏`�a�tzo��v;��[ܚ�^��[�&N�"��~,dRڜ�f�JY�wNZh�4z�/875$|�M����!#=��9'�6�f2��zሂ���`ՙ�뎴j�e�fA��!!8a(O����Ё����<'K`�C,̊eY������_C�\fv���d��R�����i�(��?��dj�Z�����9��߶�	bMIw��!���L�9�q��A#�Z�6e�!|�
ݐ)9��P��"z�Qa�{�V�ȅo_p]ޏ���h��PU(ƠLW'���ǜ���"?$�:�ϖ�
G�D��
�Ot���
�[��Sx�JMd�8�.s�̞yNW)V�Q����-���N#�������i�a��m���G]�ap���t���i�ֺ�V� V��U�k�,n��2�c�6������S��E�)�`�{���`�yc�C?��^����G����R���|]֞��՟b�����?���!~%��B�"*��[�U����nz��\m� ��5S>�<t�
��9}x}��p2u��[ύ9��y9�E�JʟǴ!M=�{a_��TN�S�n�@� 7�ա��5��j VtxT�
�:�g�1N�wO�}�y���f�+�Өs,Sz��Vz3`\�����eq
*(J	��K���JcT�����-q-�b�R�.��Q(5I%&���
^O�O��?v�͜Y�y�����][d��&��Fb�g�[jE����]@��H�AyDf�G���U�J���Џ���&���o��eGŻ"�K-X��=����۬n�9��"������Y����1�2,3QZ^�,�:�)�����&K���|�T�
Ժj������Eiyl�+�S?zMv�aɁ���zפ2�}x��ǃ0Q>M��]�;<vy�����/0;h)����2�F
3�륔�x�/5G��u����MMvu�b}�^�oˣ/��7���:�l�3k�4WҺg�HA|V����8�����;�;)|s���؋z�n�~�����Z(�ƟN/�����+�ִ5���y���skG�z���S�p�f���9aGa���k=,�UCH�:$´�c�'Hv	����(�����đ��~3�o�/l�t����͐���K�!IL+B�����=�?�N(����]>a��v��$��q��,��
�ְv�(��_
q��5>��$�4�z��h%M��"�>��.JU~>ϙ���L|�h�XM�6���dLl�h1"Ѳ�ɞ$M+r�3A�v�-�ɺ�[�=���ڂn{�tr�Y��/�K>Q���؂;��@oid� }������f�W]�)��NZ�?�	is��v��G9�8te���MC��I<�@����U'�8ߒa�s�_���`���+�QN����������_D�mٜ(�_������V�`l��1�t�����]ݤ�{{D�x��
18wo�N�6V�=�}��'*��be��b��v���y&�3L��Ru����6�4}~gɣL���mx�2B@u�WnR"	?!G��Z���$xQ�Z��3��U
3���tXia>�q��h=���1|4�~&ߏ�Z�8���=�z�8�)8�y�����;�~�<��%��ғ�{x;�E)�:������	��F��� ��}[J����5c�[^�of�������ٮFm��S��r�
��{�.c�Hi�D��S�gb�X�9�N�4,�BbZ(����?�oȬ5��d=(�[��W؉*2I�Z��F�8��iɹ0J��|��&R��ς�HC<6i8�1mEF\*�&gRY<��hn��:���CLj��/ܐ3�,��
�K��e���
k�b�?�Dgdkђ/�\7���(�!Ƣ�w����A�i�<:Ͽ13Nln�r�:#���M��#��%�gyV�� ��n]�tY@ީ��\dt	9Xz;DC�o��f��X�Y�϶����z3Jz�kB�4����H<�=���ͩ�Fe%~
	��˳"2�
+K��'�%Tż�O(#j��`������(����L�3y!���k���h'����!v�U�������r:5/nl�T�����G(17[87c(G"����6�{ۄ6�~���U��v�T0�
B�{�W�o�T�
�PvUq�ѣޛS��f>e�(&�&>��|�P�4sn����&bHpgR0�(h)/$ޤ*�Ċ&N�U7���g�jF��5G�d{�Î����@�M$^�����S���X�
���n���ޕ�s�@;{G;
d��߁��$��/	)�I3�S5_r�����3����a��[��ƣR���.�F~}Ff-{L|3�:fD��]�P�01s�1&s�mSSc�
f�����{�ml��d/���nX�x�x��o^��Y@�����;tN D	��;�{U��H5$�o��'�/-[�Z��{wrb>ɞ���}S�ԟH�����E?0NW!�0۰�1e�+��)���'0�����	���սt���� k�UEV����Rfs���&�p_�;Y �J�*��O�$9]��6�6��S��@�	#QѨ�Q��qԛDQ��w6Q���.���E>y��dW�tv���,wu/�%qTj$�#Yϲ�O��&?��AjA�H�H(&�b!C��c#��N
0m�1+T��)�klP�
�mzX�ƥa%�/��膦���ea���⢀q�S�����R� ��u�*5�W�)K��_%Gm���>w�u�t����������'�y�5�T��dJ1�G1�ԭ�N� �K�~_(7�/��y����W�����O�mh��s���u��z��	sb��NIf	|�ƫtW�w��J|:��DAdܤ����{���o�rx]����.	8�{��?C=#���UGdbsc
 ��qxH������]Y����=h�(�{E@�m����e�ܻK�K����RLVY�S�a����?�q$B1p8�!c5�V
�ߜ����X0U尀r6n~6tϢoV��h��FlAyd����';8��? ߣ�y�m��`�b"�A0�م���-�N��^�7�.ك���#����Q{*���ES+��_m$A�!�aj�,�'�
_��tzQ��	�RGUˊ�BP��X@�LaX���h��˥��
{�*�.)��D��L$�J�"ƀú.�c��iӬ�}c-V��H5Fi�R.�cg�P/�A|@���m{���<wį]�ŽeK����<�P�Uy��N�+��vm��u�C'�w�>�Y�@q*���rh$�<�1hm��—��R�����r�\P(�%�	nɑ4������e��-�P@���'A@�D~Z@���4�@�0��2J�u
����	��@�WZ��1lZ�D��{��{2ۏ���y��-���{�b�}=����,�a8�."X~�=zw��Bg��9�P@�L85��H著6#&�r�ه��ش~w�t�2"@\�ި����/F����#�b.�7s2��^UԊ��YƢ���#�no�t$�6�N~�I��V2J�G6�o���k���Kz�BZO2���8���	�bo�Ł��q��SƗ�4���52V��=h�"�T��֗�u��@s��@��(�h��6�LMM�QQf��z�ٳыh���;O-�XJ�|v�xD���{v�{ε����>4$u�:���h�[d;�adoJ�t�wҾ<3�ɓԝ��"4x����5ª��O�;^A<�8���q�JTr2s�5���9��!R��-�m<�>��>g��ҵKl�õ;6�\���8�y��8�=Q��_�:`*O��4Λ?y���Ę����O$	�o}���թ��U��=Vf����]�K�r~T�lժ4za��:W�# <�;�0!]�h_04����6xE�oR
R�u7��">m|P�b"��=�Or�yz�.���(*~gn��U�5.�5:ƭ��C{_�^�1��
c
�d��9�X�Ϝn��xbk�д�5�{��w�8(=Y�ý�� w��s�Y�?Kߺ�E�j^�H���b�`7E�$L"�qV줣�O�['�o?K{mQzC�
�n��c{�&��c�V>�c��W�g��A���Z	2{v��0R9����ۘ���fV5_�nVxB=�j`�(��=�$�'%YsA�|�d�P���ѯo��MVZ�HC:\���i\���!+�����9�B�H\m�Ӧ^G�� Hk��V�:UhԵ��!��Χ�i�#@z�f��bʇ��%|,���_S0OBSPPw0uߴ~�X�̈́rո!(+�/��i����p|�{ggj��I�1���mY^���Fh���ۜ.F��l����?��Qdܿ��,��)�`F1��u��ԝyRd^���܁c�.s��oh~��:.�1�����a�!|`aOZ9s������1��Eu���紁G �C����v� �	!��!�8��p����FQ��6���
Ō�nH�������-��2&&}`�g��.).rt��Sm���[���8�S�E�I���C�^�Ac*��q�	H��ᔺ���22:�&u�.&�mK0�����c��s�ۮ�P��h�},7��e'x�=�YO���(m9=G�x�[+22�'K/>������,x�v����%���/����K���o������3;�~��%o��+���ٽΡ����ی�U�+��G��Ҋ���8XRiC�S�a�D�����?�
���n}
N��ކnu�Ze��?������"��/����f����-(�8P�Ww�;����H7/��O�P׌��(�J��P����A�7+�D�̲�H�ܥ�3(]�!闎k ��p��
r�V�I���]�{[���m�-瑲m��
��RJ�x����ɩ��9m����U�#Z����P�Q��V��Z�h��r^�8�lso�*\��c�('ݳ�,�к���{����s��,J�Hk�\�4dgBx���+6�]�J��ʤ�Iü�d	�Σ�1�<��8K�1L�C�U;*���R�C��Y��E Ǜ�@�a˜�p��W����hR�j�M('>X�hh>(&�J����ņƆ_
o�HZ��Z�������S�03)<�ikՄ����yn�`Q�}S��rD�:!�(��A�Z��f��@b����,EL�l�pW�`<+��!j�ږ�%�>Ǜ�m��ȷ$Q���?��m���X%�����-�]c��P����������#zC��
5'û����2M����3N�\�]\�p�Y����fk�=��\�پ��Fvan��]0f�0���
�4H{�C-$UXE�R�G'̤�XBtI}�/*��y�z
G�s51cjD˔@F�$Z�a�.�$�L�k3�6x=`/���
���3:p}�>v�Y����M�]{J���|v��xɫM{�oZZ��Bb�C�w3�QP�ɷ����I�޽i������)X�m޼߅Ʌy0�D�G�'���h��<5���]�>�BUA��I�qC�w=�\_k<��P��i'b�S?�sb��G�p
�k��Z�/��U�XR��|�^�pg����p� X���1D �06�O鑌(�1���W�Z��	+�Z{[�߰7����*M��Vm|	}�a����c�\��+�����W)U|�>��j:�Ua� �I��_n�Y��5
}�Tu�m;d�3��~��d��5��/*���#".��cGkI\���9\��/�%$��+����$��W�@���s�q�NK"�Ԑ~��kz�pa���{`�y��)��՝�E�X-@����y�`K7gl=������_pl�N׮^/R�R�`�ƪ��N}�(A���z��Q��>�	!^Ć�
j�I��
���1�����!|�4l�ҝʗ�Y^��MI���N�e�s��3HyG�b���X��K�z���w��=���\��YjdI<h)о�ALw�3P'�Lj���ߋJ_P�<&��o�kޔ�>J���vCjUj���&�3�Ƀfk��j�P�>��4Fi�r���3������?w�YZ�;�1��H���a�H:��s�(��R(��W����>�]

	ޟ>�c��G�ޜ��57����9�
��J�1\sϱ��m�
�
�m�G�C_��zr&7"�1�s��(VGU� ����A(xb��ǤF��R�uV"W�1�S�����������������iߐ������@@Ȫ�Q@�m�`�� "+�Pt_��m�x��g�0�T�ﲥ�����	6������z�@\h�
^�:D9pW�m�w�/bB`F( v�-/[��V�"ԔJ
GO��&-o������:˅ 
P̨��ӐV+�0�A���0z�
 ~�	%TA6OLA�d�i�ͅ#4R�2JqI/r ��1Xt�����<B@x �� �`tD�kc|���A�3��0�A��@x�A1���m����
/���c_:m��a�@@�G d��"g~��8
&B@0hORl0���b1@l�@``�+��v�g�����h����5���$1�G�����'	��e��ÆI��IV��xA�Q��"*U�K�L�	V�:N4�h�:��t̴����Y����Pi��  $�O���r� LEɠ:����K�?W,��R��v���@� ("^
�q��=�8�,]��e��~�8�
"BE_�=��n�*u�X6y�!~��b�3���6�*B�2��e$��$f�I��W�v�P �}�q8�P�~G����\��݆�F�8� �b$���HoVe�6dS��ٍ��WHċ�j�u�(QS���N9y���Yd���xД���2Ϣl��A�=�b���	Ą�AC�(�C�	Љ�ї���fW_V[��חf��̼�u>�ҥ��F��(�>'k���i*�oʪjX"��$u#S�^������*Mg>/b���:G��3"�Ż�it8Nق�����s��ӳz�\%�=�:g��R.7�4hx�F�^���5�|ه���9j���~m�l!�T���F%-�;l�x��F85065?`3w�<)�������Q�{�͝�z�*�7��a�*e�����]�Z��k
P���0:Z�� �E�t�i(�9p����`
�;�>�7��<V��&<8�cL�G��㊒��Q��w�F�p�49#L��z! S���$e?Պ��O�9Ď�t�$U�:��4	?(ĈR'5����[��fH?p)�7&�Bj�2�Ҭg�nѺ�K���0����W��TR54WtH�oO1BGv���C��=x�=}R��N�����+)�C�lId6Tu?�Ly�.exU��|U���3�o�����R3=�g���M?�nr���T�6#�	R��	��YEk
!
���`�Ϗ�Ze��e@̍1��\@]d�À�L2��9#}�@�D�Ч�Y��Z/B.���`���B��1��u�0��@�ċ	��?0�BE@,�X�����Mzs^c�h�qv';���]�T��I��j"���W��,7?zҖF��^x�,-�n�Z{9�e���� �nY�!���A���U��B�e�����u�W$��Z��6�k�~4��~PO"ޙ$w�����
��Aa���'NTJE�J�&♤��g���1�&��R7!�C�DOdc{:	�~�_��PҎ̿/j�G�z
��#3R�񳕡�X�u
��_Zp�K��*�������L̜�Z����<�KsVНv=��y�l�J)J{Ͱ�q���X �:����՞�N�lK?�Ȗ%��.V1ϭ`�2�k&��K��N�eoB-���!���[C��f�X�n��_�|��@ox]�=�����y�3�'��o�x^�l|	�~ì��~r�%
��h�'D���%Ð˔P���4$,�I*%�t�����ɢ�����2�ad)s�K)�$V�9��W�|KF�[v\��y��8�!��
0@1�I�د(�kc��1�&b=Y��+�F��pR�V(+�� ؙi����nb�!�I�l���g��ӕ�"����D�y�kN9Š�U�8���`w��g�c��/���o�SG�gQ���<��A��.,r��$~o%ľ�z���U�c�O�W$�5+�+�_�F�D�ږ
EFcS����C�k��id�7�	����l4��,�2��D��3f�=�k�Fc��r.��BJ�3����J�1P'C�t[A�L�hL�Q�%�%��d?s�j�#bo��?���rl�C�G�"j.jIr�
�����j��)�?�Y#z��qt��l�
!0h҅�
��ac�B�H��a��q ��9��<�E	�������B��~�W�z	��Wp�@t�tN�c�S��~}U
̻�,<�}��<韀�yR���l��W�DE9[v`�f�#A[����M;�b����f���51t��C�QBą{X�)Wf���H�[,k���8ɮª����<��U�� �z[��˻R�X��ݾ~};em	�M�4
��[Gozг`a�����+=���H�y��8�t�B��DO3{�&�\*H����Ff��{����)��]9�C�Q6�T�վaC�x�߮��?�d �Zn`ׄ�}�L�Q�j��+j!ϣ��B�ܮ�k�U��/�YNpZ�E$�P���P��V~�vb�k码Oh��2�-�n(+$ˍ���m����SU�0X�6���	���@����Q���eW��a��?j��,��Ҕ��PF�bghl�_q��
�Y���lʅb��(�@�� ��
���L2p/V$빸�f��I�ʠCbd0�L��n<�!�<	D��Ԗ�^'@��Ma&S=�z��6�pNc�b_�{(7��˗9�~���M\�$7�����U&vŗ��Ǖ΁^��I�0g-:$�;Ջ>�f�kG\/v�z�Ԏ���::�6�>07��>>�"��Rd�[�]S���1�`�_���y1v5�hG9u*���\^����`i2���YQ��oWH%���6K$�?O��I^J�+���!�[�q��W��Oߑ��FT/d/:�>N��z7>L�o����md���6�J?%�h��ߍj��x]#o�x�iޞl�8����$ �X$N:y�~����L����XD|f=�4��"iX��@��bZ#��B���E~��a}wN9B����F(͔q��Sk)�6Q�Hˁ�]�17����Ң���]=�a-��0�IPW�u���8����6oNqg���[�S��.$��"���7�q�(�jU���&�h΃�	���(��9��jd�E�O�����ܶH�lCB�4M�c�kC�ǟF��$M{o�i�%��B�j>5�[���<�d��F.$�=���(��o�m���wT�u��:j]����Ԉ�2�������0p|�eƶ�f{�s%[�,���@܀���h�w@�hmHT\o^n�Y�fX��.t_�y��'Wf���Y�}�ˠ,s���a������~� 9а:T��P,���q�����G����'�H2[yh\G�]�w4�Ë��o��LQy�Gd�|�!�.��_��;�XH��۟�=�y����#
�N��߳��{�	��]'��tg#r�DC�{ ���-�U�2=|<_��K�H�����ݝ�s�j�oW�+���i����˦��Ͳ�?�'=
C�R�Z�Tz\+$T�f�ҏ�{�m^Po}$I�?|;��k��N��J�#m��+�ul�`���c�m�(�4/��%0!#=C��~rpE��<7�{M��8�)؍��qeȚ̎~Ԕ��E�'|x�l=5cA�.1�v�#��))���b�����I����6��!��Z1��ȑ�W/�GS�:=���d;�{vpE�T���T�NHq�c�)���@%�}�"B,���}��K�������
������i�`��^�?�x���hĠ�.�H��q�:����1�_�n�6}��%Q��E}��ɽ�pn�59���]#��KȬ��Z��e�So�V���\*���G65�g�7o:��鹕�7�V���
���V���/2�S�%�!�$�,]e���3nI��%�R�;W�_F�^�O�@�j�����,"�&�wv6��vQ<���m㾊q��8e�S�+]����JTO{LbQ�H;6��F-�۞�OT��
.�H3��iV��;���
�^�@��b&�ztE]���rq���	�z~P}�s��>�:&��I(�`1^�t��vp�
��Kp	Q7�������Ə�@�(�R�"ò{JF�
h��n���8[�����R���֔��m.���4q��g@��j\N��d�2*����Tv]���'�|~�EG�V�?봓E�c��(u�
�t��H�9)h�wNm!o[|���Qt\�A�'�-�ڼA1_�XՑ��N �Δ
C`���9
��]�;͝.�	x��Ȃ����MP̘�X�P��]�����|�����_y�k�u����hRm��U^�3�>�rrw�5$��jd-#�ӕW�[>����=	�a����2(zZ񖻯�ol۪�7�W�OW,GO�O
�4��S0)&Ն�q��9��>�5X���d�n8G�z��Q#J���t��Ek���a�
���yE��󿝫�\���V��0�T���S9`��¾�	t=��vdB�6)dGa���a}!1f�]C���!"�U�������lC	Y�m��j��Q<W��YA�K?t�NO@g��Ԕ���y!����
�0�������0�Q{�h��9�ZO-iO����	OI��z�u�<��:�3�w;œ�.�ya͞� X�����e���+g�����:A�(�P�G��=����U���ΕM =�l���/��E�x��Ҩe8�ܼ��OQ	��!6�3a���,�����sL�D�pM�t��G���l2�����(����)?dU���%~�j���˷�;�B��Unf���w�; ǿb8��������Zfz#-i�Lg���|+��9��5���k���tU�|b��9QR������3\�k�����
�����]B�����P���^ӂ�G]n���3.�I�D�QƸ�}�ľa|\�W�f�9  ���E��G�i	N����9u
�@�2�2�^���@�|q�^���j����6Y�4Y,ݳs�@���~D�M�=��?=@7��{�^��$m����@���}��<Gp6hC@�֯�+�o�1L��m���ȷ�J���h�R�ܲu:�X	�j��� h#~z�mX�Ё����3�Ê<�WP��eNFW��M���ܤ,�.U��2l���U~P>r�r�}Q�~a9��ҫ>W�<��)
��]ʛo	b�Ƿ"��N��t���edx�z+t;���Ғ��V����ѩ����W]xiSٮ?��P�n���������'Yڔ6�to��߭V��C[X���49}��w\��L)��o[�j��c܇s}��04t�其�>��%P���R�R��'���3-{G��%ȼ�U���a��2�;������"�M�%3��ͬ%���n�}�X��v7?�nOӭ��u�� jlȎ�!.�ǚ��Mx�9QC�/��ؐ �W�.�R[�}��!��&�[g�1����]硉g��Il����I��ڞ���i�H��`�V�ѣ=��c�k�vS��_LD�[�_�Oƞ�n�{���|J�iK�|��`�<h̳;Ʋrs��=���B�R�p�id��c=h�Ѝ)��X���E��UO��ط�f�>�o_�Q��n�Pm�s:;�{�E�q�������B�ѣX�c�Q����D�>��||
>�)aE�wT����$�q0��A��00	�=�J$�<k������d!�g�fA~~��;4aߌ��T�ڵ'�r�n�q�ʎb��kG���s����s"l/�؜>Sc%�]�E�4y�
#�v7�^�>�ɰ��a�ΉP����U�B�m�|aT�=�D�Y������Mx&>�-֛���֌�>C�Q�/��O<9$����?�m��8t�?�����{Eq�5�+��)'�2R�Ķ���6U��I
����,�Ϧ饾sv��5�.;_F}A�f7��~V\�p���^��x���9���n>y����
];��ne��{{�X�4[!�/��.:��X�=�F��88D�f0D��mtG_tR�����?\M+#U�F�	o��_wLZ]W�0��h���y+��8 ~
RH���3�6�oJ^f��$/��ӗiO�G�h�'A�1���y�>��_�s9�Gks�e��pw�x)zq�l�)���'�z�r�Y�1OWϮ��nm�i���{>��?����Vȶ1π���:	�lu01g£�v�����Rid�%Pp���o�8\��{��ngw}t��3�+P�8T�ǒU�^�8l��Eg�5&�`VD\u	��c�	L'�2��:�����$�1SHӣS�^[�ra�6P��m��/�/%��Ѐ(�a��vh�,r��AZ�4�P̏��as�+QN�k{���|m"��2���R-�ćf2j#�4��ׁ���_,:���ׯe�a�J�Ԃ�ڗ2�%�cHt��\X6B�i�1��NL$Lֽ��q&�ب��$��x�����]�k��"�XGr�L!��H�1��	�N�F�����!�<l�?1Q]kC�s�i�J�c$�Pr��K�dj�Xa�+0���k֊71��'#�ܮ"���Տҁ��VdgI4�2%l�3.qx��rҁ(�Y<���UW����n5����pǯl�%%�eD�͹9�b&
�˱�e�;�뛖R��Ǹ,�����$�8#��N�]��i;�
�<�:X6�e�Q�k"i��{�⫨Uk37\��C�5�ۃma<S�5k.��Z�k�2
��
�8��hI�"�S����Z$!W1��O{��
����#S�q����~|hW\�+EJԸĔVD<r���E+>�Uk���f�i��Kb�+��Y��V0�/=�
3k[u	�Fjf,]����b=(��0�ݰ\fb&�y�����=35T���z� ɂ^MI����`G5DEҾO�%S�����z���c�!Ȓ��8,��؜S������S�+4���O�	����(3ca�q�˩��!Ly�2�G�&XWs=�1�9�-�Be:���KahE\�����>���\�諸;�%/�Q$mP�*�;��+��^"��i���7�`��2���o��H�������z���}+��*�#�/���6#1�7�*�;E�Z+z�@��CC@�%Mm�ȝ���WR?�P���L��.T-�\3J��WbS	���e<O��S��^���IC�9�Ծ��H�j*��q㚣fak���1����<�2%��	X=�y��t?Z>�0�Sq����9a���i9K+�d5��G�+���*�+#�Y�v&��8�}i@O1F�\��T�0�&��OrqQ�G�c��Bn��Иz������vW��|B��5֎��q��}�C�y��g�ka��'К$�g
6cO�y���U�>�A>dfI0p�\%��p���l���|ai�nm�?�E���HF$��+�WS/�46���Y���H%g��5-��j�I����f$7�ڬ�|������Ȩ��oL浱���9Gk��0.�b��U����c�!��3��p�y�)�ssC�g␤��wR��9	��c�^?G�Yy�f_�S8ē�xV4�A��|d
;�����v����i����w��%a>4W�'J;�mg��_�c
el�b�9M��oN��@h�/�6�ӧ��c�l�'gp���ܝ�v&�޶���P��w��H�G�Nq�b�R)�X�,7�آ�<iZ�3Vg}.�{;w�����l}�n.D���(���Q�U�	3��p�$i>��<nSO
��E������+N���4*5
�r��݃�/�7&��ȗj�Zc��C��C0
b���JjTി*7���2�-�����*�[��	2�b[/|�0��q��/�a�߬�Ǒ�f���<�"�CEaM�%�s�<����m���}���BqCc��
��<���T������.�u� (-�+�ʀp�D�$�
4���<�C4@#��^��&^<D�c��dh.hr�B#>�D}�hcR�����,�?�N���`r�QKNL����If�4�~���>X���hr���3L#�8(0��}ޛA��Y����I�����w��GB*�+�*�F���&�e
������`�p��h��xA�dE�tôl�� ��$����a��e��|������	��>28^%YQ5�0-�q=?�8I��(��i�~0�'��|�\�7���ӿ�ʸ����Q��4ˋ��54m��d�e�o�������~�GNU�E���IVTM7L�v\�aBRic��a'i�eU7m��4/��u?��@ap��`Ï'Id
�Fg0Yl��Eb�T&W(Uj�V�7Mf��fw8����{xzy����I���(Ɋ��iَ�A�I��EY�M���h<����j����I$����+(f��yET�0�67�2���\d��s4����b��91���8	�g6�Ua���_�B�<��r&~�N��+���Q,k�hp6������ѯa��m#u9�R@����17IO��`1Y/fE�_.��H7���u>�5��뜿;�iہ�
����q>��!�4��py������&�혏	]�t.>@��߷��oS�/����ۨL�L����zA�x��m�{��7Z�ϯ�Sw}�1c�!^�E2Q��S�,��oH�؟�K���d.,�N�h<�|>�=��碷U�G���:`1�m���f[l�sV���_���H/	N�/���,a��Ê�-f7^i^񺵣 ��4k��f�O�1W]l"��f����o�d�2O���G�D�
N���P"9�a��
�O�zw��>GΣB	Ų�p�z(����_��Š�S��sd>	�A}t�k�f�WF�X���ʹ`;8c	ᮤX�rF��56���$'d��Y��x�xtb�m�?��cj.K
`W�R������7�l7s��'��d	M����k���,�JC����V���d�61Jѥ2�N�/d���1y�'�=öt��G�ψ]%p=�pv�v^=H݈�<&�^�ɧF�{���l©�i�	p�Z�-HB����z�}&���D�0�a�>��_��L�٬�^���^=0�E*�N���DH0����W0?ʐ�d�?���(`���]\YG�G2�C�!��(
�;lo�D�o29�x)«Q�@fi�_Y��O�6����G�b�K��C4;q�ؕ@��B�Mh+��LX	u~]�5Kx�.k�WK�G��^�B\s�Ki�¯w���6m������3g\��;s�-��$�V:e�-��-�(�q���j���lb����q���NQj�f�̇�#Y�����]�!CK�U�p��I����O\����4�g��M���u�cѳw���|�U>P��C��ܔ�G}5\��op%4��`�I�����E��D5(w�Y�8��蠯B�n��n0V=��L��E�5bk=�QGX羣+=:�]�|	_xl@�2��ʓ7�|��g�U���+��`����J�0X�UQG";j�<�V]�l	ʗ���i��hc�ز���G*������#�{Y֎i��rc��PbO�1)�q���P�N�1?/�@�q���~�Tڼ�_(��ZΙ4[Y��Q����|͐W���̕�+Fz���p]L��� ��9�9Έ�X�"d���(W�<������^��B����H��-'HJ�$I1BLX*jH���]�٪x�`�iuޱ�cW�bk�W�/e
�/hxx��ӣ�0u�۾���/��bl�x�X�]:e�Z���J�g��#��/�WP}LAͨ�5TsԮ9c,vis������\�I�^�a��0�sgpE�dI*N0+%p�ol�w�Qa������5Xن9��[b}0Ǣ���U�L�`-g�֛�'�:*]Nx��݈~m�^�4m�+�թOJ���w.s�ר�,#&����:��S�KJ
ƹ�RF�YУ 8�#�<�A)x�Z�N�R�ހ�Y'j�� �� �5�����~-;�a���-��+���|�I��{�w�E^{l>Ny���~�G.��Q��n��~핮�ȗ�Ϧ9�/j!�ʥ*.�Bmf�.�j[�O2����
���
��c�U��u�6Y
�
OX}>U�gGo�[�� �Tj�nK������!tܑ]�:s9Q;�NuP��Y�bQ�W���T��wl
� %>���zp#���ҏ7���J
|����,��x"����uc�<��Z��?=?} �y�z�D�&�pv�{��d"t���_{��Wp&a'��7ގ�-���ؿ(��RX��Pz;h���8f��f'g(�|�=�O�SX�Ѳ
7.�ާB�1�"��ݑ��8�#"�C	^�>Yy�R���^{�
U�C�>�>{��8!��*$�x�r��C��y9z5�i��?ƒu-�ԛ>�|p�(�~mG�NxeƁ9^t��2�l1s���o��C�8����"�)�/������G��jd>#h������C�$�i�#V�l�/��J��).du#��2^��PƊ�"��H��	/�g�ś�y/���UZw賊Av�IF�M�B����U��7����g�c���	]/ð΃���i�Z��r���X��.��7W�kYPG�>�y���t���������%��m52��H���'��}G�D}x}��G�ndwሇ"�[��+^��m�D�����=+$assets/lib/font-awesome/webfonts/fa-brands-400.ttf000064400000405630151327220410015731 0ustar00
�PFFTM��^�|GDEF*�\OS/21�V:X`cmap�!q���gasp��Tglyf1�x��headɾY�6hhea6�$hmtxqD��0loca�+Z~��maxp5@8 name�����`�postZGjY��kK��M�O\_<��v{��v{���������������='@��LfGLf��PfEd�������.�T:� �@ ��@���@������������������������@��������@���@�	�p��@����������@� �@����@��@
�����@
���@@@@@@���.�@
��@��������@����@@�	@@����������������� @������ ������� ����
�@���
����������������@�������������Lh�����@������������@�����P���� �����������������@ ������@���@���@������������@�������������@�����������@���@�������������������@@������@��������������������E��@�������������@�����������@@������������������	������@����������@@����00�����I�R�W������������6�<�Z�i�n�q�t�~���������������������	���2�7�>�L�^�k�n�p�~�����������������\�u�}�����������������������������������
��!�#�1�M�R�W�Y����������������������������?�B���������1�]�{����������������������=�B��������������I�R�U�w�����������6�;�Z�g�k�p�s�y�����������������������
��1�7�:�K�^�`�m�p�|�����������������\�h�x��������������������������������������#�%�M�R�W�Y������
�����������������������?�B���������0�]�z����������������������4�?����������������������QF���������������������~}qmjiOKI=,+*)
�
�
�
�
k
`
^
]
[
Y
W
V
U
S
R
Q
P
N
L
K
J
G
F
D
C
B
A
>
=
9
6
5
2
1
0
/



���q���������������VT
�
�
�
�
�
�
n
C
'




	�	�	�	�	�	�	�	�	�	�	(	!�����.���,��������\x�	@	�
T
�D�R��
�
�Z������\�� H|@b��Tr���X��$� P��F�8f��.�B��,>�P�  f �!2!T"P"�"�#�$$�%�&0&V&�&�'X'�((v(�) )�+.+�-�.�/�/�0n0�1�1�2�33H3�4585v5�6>6�6�77>9�::�;;\;�;�<<~<�=B=�=�??L@$@`@�A
A�BVBjB�B�C0C�D*DlD�EE�E�F$F|F�F�GGTG�G�H�H�IbI�JlJ�K�K�LrL�M�NNrO*OrPPBP\QZQ�RHR�S`S�S�UUlU�VNW.WZW�X,YTY�Z8[[l[�\]]Z]�^d^�_H_�``Z`�`�a�b\b�b�d�ene�ff�f�f�g:g�hh@i�i�i�j2jfj�l�l�m�m�n>n�n�n�oRrsXs�t<tzt�uFu�x@x�yyvz*zrz�{V{�|H|p}}J}�}�~~:~d~�����������ă�~�څ6����,���$�j�������>����j����4��F�����J��|��Ԓ$�ғ`� ����6�J�𖔖�n��N�v�b���,�*���������Ң���@�V������ �Ч����@�"���ƪ&�����b����`������@�̯�����
���B�n�����>���6���R���F���P�����J¸�(����\Ĉľ���� ɰ�n��z���P��Նը�z؜���6���8ڰ���p܊ܼ�ݒݺ�2�N�������6���2��v����<�x������������.���<�����������#"&=6505656567676767>167#"3>&'6&'&#&'"'&'"'&'&#0&1&#0#"#"#"'454767>79305&'�_�Ze�	


 ,9(%
T
E.8B	Ws�e("
	/

*.?B	!Da($&$	 ��'�'3;GPT2"&4537+5323+532654&+532#5#5#535#535#;'#373'2#!2654&+3#i))	OI�9�__�"m" 7� c>^5 
�y��pvym�K))荍�.D��S�E[

[[[�.@6mt��Ugeee�j	����<%3#0#&'&#"##"&462'654#/&""32?32545'�3&)\����tH
H:;;V!&x�xxTG_DD,E))E����
!7463!1#!>7>7>7>7  F1GE�1YXF1��
3/#
/2/<H1FZ9f��1F&4H7'����%/#'73?37'#7'�5�;��;��m�W��W�.**W�22�32��23ml���&�z�������,$#"&546301%!!%&'&#0#"3273 ����@w8
(��@KN


����#+;T62"&47"'&'&476762264&"6264&"72#!"&546364'.'&"27>�,,�	�		��D00D0�n��O0+\+0+\+0�,,H�		�		�0D00Dd���`��\+0+\+00����%#".?'&>32#"/&4?632s��\\
q��
\t��$}{$��$��${����$-8`f32'6123%>767676761232126'>'676767&4>767.&/7>'.767&'�7~#c��%
/&5		"-
	7	/2	
'%^

X����J4##0
	B?")
�99&
,
-$�!
@z#'%53'3#5353353353353%53!53'53�}}}}}��}}}}��}��}}}�II�H�IIeIIIIIIIIeIIIIeII����%7!67"'.5&736.'#>32��>W\Nb'4Dz�Gq$zc@h�4-6	ib6�9!.+G4];64?�A)GTeqz73#"&'5&547>3032&#"1"32767#$#5##"'&505463254'&#"'6365&#"32'0+#53212654'&+321%3#7'33jc*3

3(  9v


"
S'?	
	''O4%�1!!


;O

	
g		�L�X

	A�@x\
�����9BLYbj���%#0#'#"#'#"/"#"/"#"/""/&##"/&##"/&##"5057&'"#"5457&'#"'&54?4/&54?4/&54?4/&4?65'&54?65'&54?67'&5476;67'45432367'54326?6322?6322?6237632376327232072327267#"&'.5&+32+723232?6324&#"2&4&'#"2'35#&264&#"3254&+6=4;654/&54?.'#"/32&264&+"264&#"�
		

		� 	O0-� %*)$		�			
O5	,	
		�;?�#D(>+�'

�	
�			�	

		
	�

	##6
	##)
		
	

	
	�

x				(
	x	
		($0/
�

	�		
	����"%#"'"&4632&#"265313�C7_�__D,,=,X
,%�'�D__�_Z,=,,]
4����%!533=#5��@�����}}�}}?�`.Q%#!"'&5467&54632>321"13%2+"5057>?27454'&#'&'&?632�	
�U7'(O15S'�Q4J�'32	
	�
'8	(
-9C3"`J4	
��1!67#&'!".'&5���46Y'/7V),2+�++46%3
,!6S?H	"<$V����4D%2#"/041742'054;20+"01+"5417'054;221+"541743���nBoC�CCmBm�����������������1#"/72?6="'&'56?657'&"%62��		w��!���
�w��!�4
 �
_E�8WP���
_	
D�8WP������7%7'3'�3+tv���fgt �9���u�������N%'&'.'&'.'.&'.>1'&76'.5&547>�
/3


		*"3;X�GBFc	@A L




	&9=#
!D>�@%,����!1:%2+5'2+5%2#!"&54634&#!"3!262+51:b:!00!��!00!]%��%%%}:�b�ba0!��!00!!0��%%��%%(b
����"EMU]emu}�7"/#1"/&=4?622#"/&=43254323327676"&4622"&4"&4622"&4"&462"&46262"&42"&4�tdKu�	ee
JJ



_

`



L

�


�DV
s:+E
�	::
+��+,



G



F

2


E
;
����+92"&47'&=7577.#"7'&?6>54/�ƍ�ƍj	g	-��V07_I	(!Y}�	��ƍ����!4Z�%#(3+#���Y h�
-6HL7#'#'3733732"&4254#"#"&5463253#'"3254#5##"&=332=33#�%&-&#$;##;"?�" � 
""	&&luu�ttvv,#;$$;E'(''%>�f('(fLF#AW%����92#!"&54636767&#"&'&''3#"'32>54���/(S5	"$-	.79X)���`�
0!@#$:T-����#2+537#54;5&#"#3#"&5463��:E(+3??�����H/&=2.7H�`����32#!"&546335#6264&"54&#"#5#354632�

��

gC  @!.!@C�
��

�
�������u24�j
h	����TYagnu{�2#!"&5463>54&#"54&5&'&'0'43767.547&7662>&&364#"32&'&6'6&'6'&&6'&'6'"����2=aEE]>2	 	
	+
S
	���`��W7D]]D7W
 		
	)
@	���/#"'327"&'327.=&547&546326767�(ItFXII:#5

	$0/'q@=+.$"(	5iW6/-):%
 81:+>!%
 ����%537#54;5&#"#3.5462�xY:E(+3??Yx�Α�\��H/&=2.7H��\g������bjrz�7#54366'72&2&5<54'>54&'6'&&".&'./"?'.5466'&'6'&6'&'6&�!(Gi�]K	$
"
A%	"

 
+	L^�,	"	3��gS�? (%
			%!(
0�Sh���
!	����D#"'6?32654&#"7>76'&54632#"&7>54&#".5462�g&# 7IXALW=3.:-!GW��'Α(;YA=RX>9
"+A9,2@
$
"
g.~Ng�����N+6?32654&#"74676'&54632#"&7>54'&#"&5463!2�� 7IWAKW=2-:-!
Y`p��$;X@=QW>8!+@8,1?#	
7 
`����)52#!"&54632654'#3#"&46327&#"%5#5##335���t+5^9%$');;���`��6,"%4%;R;Rt�%%#"&4632&#"3267#53##5#5353�fRPppPK54.1FF126mn888778�Sip�p22GdG6C88888��$3#3&"&462#54.#"#33>32d]],  , T]!]Z
. "-	+) ,  ,���*#�+))0!��0HP6"&462#*.'&547&5472632>34&#""'&#";2>&2"&4�##9	) 76-*#1*/*&1"'@(",0+
"(//00/d##�&$$&$;$	(7A0
	.w#00#++V$&$$&
{%#76&+###'!2�a41<a;S<a<-t>$%
�����`--=����!'7#3/#3?#'�#����56/ca���t440�>&L�1����'73?!7!7!7�@�Rt���M�����PP_),,aR5R����+>Q%#5"##5"#723>75."#57536353'262>54.2>54.#6MGB1
1	X

T
1
13<�
	
! �R5,DCCD:�4ONMO%(:T`
	�	


2�!$#"'&'.'547>7>7327'&
'j,,�*'
j,,�*�Ǐ�DBZ+%%CY+�RQ������#70+"&?'&6;2%+"/>76;2�F
AE,A	�[B\H)
B�|	zL	V��	�6H	���� 12#!"&54632767'&+"3%6&+";26/���\0 .1
/fB/B���`��	U7	6W�	�x	w���'7'7757'7�����������������LUTTUTTT��UUT�TTTTUTT��~�%'?'7'?'#553!53#	���z��w w4��(��(�')'.��$T%�����((Px��x������0g2"&4264&"6"&462"'.'&47676762><.'&'.*#*:3:>76�`CC`CT>,,>,�\C=�=C!!=�=C-#)(#
#)'#3C`CC`{,>,,>�6�=CB=�<!"C��#('##)(#
����2#!"&5463264&"264&"���F5%%5%�5%%5%���`��%5%%5%%5%%5����
#$"&462'373�A�9�Α��-��"�"bqΑ�Α����44����!23#!"&'45467#�
D��D	%��
�_
�	�֓���:�)#".=#"=47>76;232+7665!*>
/
*(F
T

T#!	 
.,�
DB%
s
R
�@
����72#!"&54636/&'&&=32=4+54+";32���44,	1&*���`��(
S4H
8+Z��}�&%"&#"#.'&54672326''&7>7?=: ./1E.8@938 %&�?&P26*'?F(n&( (����7#53537#�������b�������"�@@�*$"&462"&462?654#"&#"'&#"!.����0
1:AA:1
0?N@N��S
UU
S"xIIx
	����j}���%?"#&#476#"#"54762"10'&'&#'.'&'&76'&5476767>7&767674.>32&63"6'&""60'&672676&367676'.'&#""6&/&'&6567656767636'6'&'"&#&'&''.'&'&76#%4'.'&'&'"1767>&72132767>2#"'&��

%

+! 

!

�	
0


(

	
$29#%
	
	
	


	

	 �E��
	
.3% "#"(#*%9		)
<
	��5$	
2#1!.2
#) 3$
		 &
#



����!,4:2"&4%6&'.>'7&>7&''7&'67&�Α�Α�:#		IKG'd3+$"7�->
^e$�7b7
lnR.t3
 =Y�M?E��Α��*
JR#9C&(N1A�R</P �%MSK.4ZP����P%#"'#"&547&546326322654'&'.543232654&"#".#"�B.&UxB.&Ux�-C[
*DWA		



G�&.BxU&.BxUr-)9
	()

	
&��t�:2+"'&54636&+"?>;267676&+"&=46;267C0	
S�
�	Y	I	
Z		j
� !�	��J��l	%	
		������!12#!"&54=46354&+";26754&+";26�!!��!!�SS�QQ�!��!!�}(!����{������2"&4>&'&'.�Α�Αk	!&"
q��Α��Q
	
	
 � 4`G0+".'&#"#"&'.54;2326=.546;227>?6;2!)";
(/`$"-;=	]$		;JD3	
 '&!
84.[0


=`	
Wt<	�
&0>JT\6&&676&"&547676766.766&76&&6'.7>'&>&7&76�
&3
�U�LH<,<IB@D4	_@@S_@@E2U&%J7CA 

< c
		
9$

��L=CLH'155+.iS3DS3w
.Z05R��	53	

		
����&5467"'>77.=�RB:vX)?8-??-7BRXvR� EZ\��Q..QX �R��\Z������O%&/#"43267.'>67".'665.674>2/>�21-a90Q%/,&@*	
!$4##&
#*)

&&7�&'
>H;3	-'$,
%

"$$6
*+(
%2)%
����7!+5#"&=!%5!'2!5463�&W�&��d�A&�d&t'ZZ'-UUnUU�((����42#!"&54636'&6&'."6323276���P2B!
	-A@���`�?N		 *f
#!3TR����)2>GS7"&46;462"&5"&4622+"&463462+'"&=4622"&=7"&46;2#^&/''/'/v3&/''/'/v�'/v3&/''/'/v��&/''����/7AIQ.54'76&#'&33'76&#"#>32"#"#"'76546"&4624&"2>e6BeL	"8!/M	#^7S=�A#$�:0A<�Α�Ά�ċ����g>-"4G�		[��,48":�	2/7:b�($Α�Α��ċ�ċ����%.546777'7&'57DWumS7EM:D��%(E3# R85Q
+	8$&:T!���+����3#7'362"&43#�]�^'j`8�0""0"|h]h3��Z��"0""0�����%#"&4632.32>7#53�kg��gaEC YM7Z@#7���j��ΑAA!M2A\#"V����9GQ6"&5462$"&462"&'7264&#"'&&#"32654'>&6"'&7672"&46��Α��

$28=2$	N67MUL
C�

�Α�Α�
NV
(77(t
Y

����
%5^%"'&76276'#"&5463272#"&5467#!"&5463!2"&'7264&#"'&&#"32654'>&RHW[���`d'6;B6&T:;Sf1���`�
U]!	*<<*
!����%72"&42754&""&=#326=405#"&='26�Α�Α�",>,

:,,�:

",>,��Α��!


+*l

-.,+kq.0

/
/+,����.%"&=726='54&"#"&=326=462�B]B"4�B/.BVC[C4�F.BA.FGH:�.AB.FE�-?@-$����%3#!"'&'&'&'&5463!225#5#"3326���	`��	��	|��`����	��	 `	!%)53#55#%3#535#75#53#535'35'3#3#R3�RH��RRRͅ�R�4444L���]]��))]])��)�]]u3�����	#0@#"'56322#"'567#!"&5463!2264&#"#754&#"7532�

G

���`��++-3�+
4!DiD���`�/A/	�
3:B.�
3��9�>B����7'26322/>&67>77367>?&75.#&'<7465&#".'&'#"&54?.>3263263232654.547'6'632763'7>31#��	376I
	
G#


,g�;
#,
	"?!
, �	�	0
5/)



.%�	E<
��		-


\���	PK<			
3		!%, 

4.

"
	
&"H�3^ ����(:R#"&54>767676'&#"&/"6'763276&'&"6&#"#".#">2@	&pNNt&	(
 +
$P&	
	
V
=
"+#3(*	
0M,E'RhmQ%D*#&
��	D66*"$

1����1Ic46326&".'.7.67>>32'64&"#"&'&'7264/7'#"&5467&72767#!6*,
d,3!
�V6"#-,
Z�#"9,d-[(b0'(7!#,,

Yd#*,d,2"6!_U
#!8--
Zl!#,d,[	(0'(#!7,-X@u287+32'3254#254+%#53#32673#"&546323&#"�AH5��q�O/5
:8U���8�!!>\<GI::C�s3 �H34cX3NS+(�/3b�#� "VJ<;MP7����
#'3F7+532'+5322#>7#!"&5463!235#4'654+32674&"327##"534�-.+(�?���`�NN+#>Z]'�$?(' 2"	"d�47--���`}�)

0�+ +*  )/
#����08@#"&'326'7654&"&'>32>&/6'&'6"&462264&"�gU�_&*T(87M7;��bg�

 	(	�3%%3%R'''ΑeO' +<8''66'V
7`���
	(v$4$$4&&����5=E>&/6'&'2#!"&=326'7654&"&'5463"&462264&"�&���Y$'O%53I38u0""0#M%%N&&^��q%(84%$33$Q
0��"0""0$$����.C2"&42654'&327672654'&#"327672654'&#"3276�Α�Α]	
`�

|S Md20
?0$	
R{B4

<�5��Α���	9	2B
-
L
0
��@�3#0#57'#53?3@b[�
,	]]V�+	bc�
�	T	]�	�	T	5�K#-9DN`u�����7#"5'743272#"5'7472#"5'742"5'?2#"5'7462#"5'762"5'?#"5/7547632#"'&5'?47622#"5'72+&=476326%2#"5'74'2#"5'742#"5'7o��	s~!..!�	7O��.�AEEA)iEEi�DD�`####9989DBBDFDDFr�@  ��:B��CC�8/ !.	�	I6<�AA��CC��CC�����+%#'.'367.54632&'654#"�O*+%$
J
;+-%+7/(0

"L�44\
;K~Km�5,>N12A)<:

.:9��� $(+/&=4?67'775'?'7'75�

��

�
_MجM_�7�_M�NNNd�M_�7 �����;g?3ss3?5J%�g?3444�s3?5J%��A�!E{%##"'.'&676'&7606766&'&5.*&'&35236'#"'.'&67>76'.5676676.&76�"		<'#�J$;
'&/(1aT+
0;A(&"#
D��+;'I!
,!%B'
$	"1�D$&1."#C1)>1	(�$X$>&('B<s L
!
		&&H	
%	
/,
����M"&7>721>?64/./76&/7>?>?>./65g�<7			
-,	


	(�8�h<i#36B
	8 
	32
	
 +3
	A911D+m�	����)6CKSb�&#5&'&'&5473.'77'>7"67527'676"&4624&"2'67'654'7&'"'7&'&'7&47'6767'6327' :a

)=�

�:b);

a:=)$b:=)o�Α�΅�Ċ��c

�

4	@@	4


4	@@	4�90	.�	2991	w90	
/-	09.�
	09/�Α�Α��Ċ�ĊW2r1	�CC,,CC,,����
"*J\|7&5472#"&6%#!"&5463!23254#"#.32654&'&#7654'7'"=#37'.541535#"545#23232e
!!#
O��`�1$@!$ 0	
!	U
4He&$
r
|���`YD
 XiK
=
B���&19LVv"'#"547&5467&54>4&'&'6'26&#"527>=4&'733'"&5432#"&=4&"#5>73;#067�%)$

%:5f#)-(453�T?%%�!!$	&9="#"


#&2
,&
�	
	
�$##$d w!� �##�#j%">)a����!!77#.'#3��@�Q#	%P��@�6�-/0"�g��g�-'&67&632'2'&6654&#""'&>H	77 !;k�Eb{Q>jP9%>"
	'M0_�93!!sDbENeRC9P$9G#	(VG-����1%&/"'"'&67.5'"&6767&632�	n##m 	
!QRQR!

7	
7
	0 Q^yx_Q 0
��3�(6AL"#"'7&54632&'"3264&264&#"'#"&46322654&#"32654&#"�E`
1DNrQGq	r

��D6(F``FBc�

r

Z@	";7ME`N;5



0



�=40
SuST!����E\2"&462"&46'&7<5"&#'&7&'&625463!254&#!"636626�3$$3$�3$$3%�#G6"(&	&("6H#g��B)

 *D&!0""0!!0""09*f4!
*)!4g+
����
����#5##5'!#5#5!373�&D'}o�Mat���WDMYnnnng��[[J���@@���!0?O7#"&'&547632&54?6#"#&7&6#"'7&?632%67232/&54+dl	

1
J	+mi"	Zk	>	!��5;

"	h�1  �	Ro	
�"'
�[�
�	�������H7+"&7>3262"&7#*+"&76763:>7676o	
K;H$
*m�$y@
  �7?s	O,Y�BpW�	����	(&'>&2#&'&6373#&&'&'&6;2�507h<�m~r
|JYAUM21c2$0=LvnM	X�¦nfja��JH��@�%)GR%#70>?#!"&5463!27#/&'#37#74'&56367&#"#"/26'#"3673�!m� ��X@+'@$�(�"&$'�  <*4�&+���`��jG���2
!
	#�
���@�	
4BR^d���������
-9F$"4!2#"462#72#"42011"1"1"1"1&1<143403030310030410+353#!"&5463!2327&67&#"64'4#"&#"5#3<>323<>3237#&#"327374&5427&"'63'=35#5##3734#"7'&7&5#3546467&7'7#&737&5#35467#&7373535#45&1&0#"0#111323210606107#'#537374&#"326���xuuJ� ��Q9*#76#*9�555Y	-

(	#


	:


	5"

*Q9*#67#*9Q1	Z��`fsQ-�,�)�))�v%	
	
%	
	%	
	 	
		%	%			|~U:Q-�-Q��@�'3:BPhqu}�%+53272#!"&54633533'654.*#35#535#535+37#&"264'&75&546"'654&'&5467&2654&+35#5!26%+532� �
:-r#$;%%^))! a

,
$l[�3�z�	�*		�
���`�R!!#RTT7:%%/

	



RRR�� i	�6����A�-69@LM^ey|.F^juv���#<.+#532254+2*##'#5377'#3#57254+'#3#3#53#54&+#532254+'#5#'#'##7353733':>7#!"&=3673353>7352335;6733535#&'#&'#"1#"5#.*+.'#.'#5463!2"#"5*5#."&*#&+.'#3673465273<52323267437"+73254&"&54;254&&54;#"6+5'#3##53'63023"'&47'3*;735353#'#'##"543'3#E'
!BC3)$$j?

'&&'77I�
	'�"#��
� 5�B4)(+ (g.(�#		O

:
SR
0'&@$	  
!W	
!	
 
'&&'889""!Lp
EZ	E6
	8	�Ej EP6666EBB//(�Z�						\	

		
&n�]
		
<	
(

(
E^
7BB11E44"#(E��@�	,AXr����7#"54632'2+743!2+7437#!"&5463!24+";2?46:3267#"&#"327;2?47454+"'&+"0;274+";2?>:1267#"&#"327;2?474+";27'2#"546�

	j	 �� ��@"(T
%@
�"(T

,J

�	
	
!
���`�f

@b\'&nf

@!h1	


��@�!=MW[_n�%2#462#"'5672#!"&54634.54325&#"#"'32675#53275&=5&'#3565#752654&#"'#757454&#"3275#"'�
$n


�� JE#e
$
=$$$n $
� �5���`�	"		"Lr
3!}U
b}}��! "	�(	3$%!	1OT7#"&546323254.'&54632&#"	#"&'.#"326?�3>BD@%-)=

D<-^;+
zFE
)&&		Q
FCFM%#'<-'J#	

Q60	(
/3)2	����b2#!"&5463254.1&54327&#"2#"'.	#"326?'#"&54632���L	$:%+	&.		
(+)'
		
+���`��3	/%.
0,*,
  "����;G2+#"&'#"&46;&546324'!"&463!.#"!2#!326%32+"&46h

5�gL|C

5�gL|��

^8Su*

��^8Su���

�
 g�TDg�TD`/9uS/9uk.����%-6B~�%#"&547&54632&54632>32654#"6'&"32654&>&'.#"723201&'"##"&732654&#"32'67&[!iVF_3/%7
P!"/�."=0�
Y!r(
1
	.	C-A6	�0&Xs\99#��3%/^�xeC�Q\�P:(
'!	;A		

?$!)/�����#%#!"&5463!2#37�+V��`A_�_[p)��`��*��[[
��3�GJO\cfknrw�������������%#"'#"'##"&547'&547'&54?4&14?&54632362363225#7575'#075175573'7'37'77&='&'#'#7#"7'"7'737'37#3'#362?#6?#747'74547'67&74	kj	476	8	jj	8��,,-,3483,.,rb@#�PSPY|D"uSb:�9
h3�Kx63)O<<$$kR#[c�i\&\a|sZ#V.#�
_Z		Y_
\
a		`	��L30?\4Z`�H!<KfC��RXT\G�|Xed<=y66G6QS+U?sL&2;V�_Z__S\=lO�����
7+"&=4633'54&+"Gf5&�&55&,�3
�
Xh�U%00%�'7��5{
�
����	'7&54632%&'>7&'677&'>7�\\�gq�!!�p$74(-CyU�#"�g�\�$�a!�rp�!��0>}B-k#�Vh�":�%:#&&#"6326"'&#"&#"+632632&#"&#">32632�8/-:8C,0=*)�$"75>))>57#"*>G@**@G>"/6>))>6/"!18//8#9Q�+)��))]##��&&��	��z�+;K[%#!"&5467&54632>3254&+";26754&+";26754&+";26754&+";26)5I2��2I' 1#[:Ec��				Y				Z				W				�
C+3HH3$<"28HcE�o		o		�		�		�		�		�

�		'����#'+/37;?CGMUtx|����������������?7?7'777?#5##5##53#53#53#5##53#5#57#5#53"&462'6#"'32654&&543237&#"'#553%#5!'%!5!#5#57#553'53'#55353'#53#55#53'#5d����,r�"
"
"�!�"Q"=!�"��Q"$"�L66L5�!	 	ya��*�����z��z�"�!��!Q"u"/"&






B
	


>

g















��""�"�5L55L:
D""�""M!!0�jbb��U�;;�!!+!!��!!+!!xM""�""�"""��!)2#!"&546;235463264&"264&"��>j��7''7'�7''7'���L((��'7''7''7''7�|U%#".#"327>32#"&5463232>.#"#"&54654&#"#"&547632632�D26()!)'5*9
<+C;
	 S(@ZXA!<,,"'%.&		%	!
C2(&@<O.Bw1B#-/,$,>>,*
"R?@U",/,"))	2A	,O;	>����?2#"&'"'&54>7&547632>54&#"#"&546�IkI2(		


%	&	A5<P	+{�\I1W<,

0	Eh	 0
K 214:N<,>0Pd���� P#"'7&546322656'&"77'.1&5476323217676}C�\91v �\\\Ln96�mF+�
	)	
	!
_CZ\�s3<\��imLJ86lL5-D�

	)	
����3#3#'#53'#53'3377#�00DRgYYgRD00@Q^Q�6�p0 0��0 0p����@����(!!5#'#35'&753735'&75&7��@tS;DW Z O	Cv��@V��"�&&s��������!7#/#3��@�N!.-#L��@���[
[�^����B������������#1BPcov�����%'''.567&667&674665"&'&7>762263&'&'45&'&67666667&6767&'6:>5>"23636#6666'6&'.6767&'"#276&67&54&&7&'6756"2654&#7>'"#276464'"#'7>7>7&7.#'&''''&'&'65.'&26'67&'&''&'5767#65&'&'&7&5&'6&3>.>6&5467"&7654'64676&%'.'&6'&'&6=3
��3	
!	
(
!'%
/�T'
	
	N
4	�P
2

�?--?,("5#J*	$a8
KQ/K*

12	$55+7SE/98��717�2
$�B!<4��	
%� 
%0��
%
	
))	"

G	"G%
"$	
	
�	
!
'(!$
	!&'	("�- -- �

# .&

$6 	( O
4*!


�&O6R'	"3%& �
 ��	
	�#

�H	
	+����0$"&462"2"&42>..'�&&�&&Q';('33&XQ:aB9*e�&&&&)#,8%'
 ,)���� 0<LT\2"&4#;2=462;2=4&"54&+";26'+"=4;2+"=&54622"&4264&"��}}�}t		'.'		9P9����		�		�Α�Α�������}�}}�		!!		(99�

����5
		

�Α����������@� 9L\%531"#527#!"&5463!2##"'32>4&7.675&464&'>54&'+326�&

((h� ��v9

"
�73!"651""1�u{� 
#���`� %	!!
2
=
���@�
#12"&45>4&'72#!"&54632654&+"3��gg�g� ((p((�� OywQ[QprOpg�hh���9F8

8F9x��`�`qMTnmUNp����)5A7&#"327#".54632&#"327#".54632'2#"&5462654&#"�!
!!	,
-.�!	!!	+-.yi��df��jQzvUVuw�X'"(%$X'!(%��hk��ge��=sXUvzQSxt7'7'7'7'77''�gg��-��4M���-��4Mg�gf��-��4L���-��4Lg	����2"&47''77'7'7'7'�Α�Α�JM5MM#~�~~JM5NN��Α���KN5MM$~|~~KN5MM@y *2:B1#"''#"&547'36323264&"7467&#"264&"&2"&4$2"&4/U;9)..)8<T./iReeSh�(P99P9�=/4893/=hP99P:�**>**
+?<T&22&U;?+399�:P99P+/MM�:P99P[****��?�&0:%'&'.7617&'.7>26?6%462"&72654&"!9L
9L
#	L; 	140
��LlLLlLB&4&&4&rL
#	9L
M


�6LL65LL5%%%%����C6462"7#!"&5463!2264&".#"&/&?6/67>�  ���`��/D//D%
%
0

0$

/
#
�!!���`SD//C0�	
/

0$
0
����+2#"&=46367>54&#"&'.#"2��]]��")
" 

*"	��]��]��� '!( 	������G#'&1.'.<53>7.'&#53676&#<5:3.#5�'�RJa
0� j
	<;-�		<)&;@z�(��!��%7�80

�r
�

B7.

{	�
����
.6FRZl~�������%7&2"&43237654'&#"'32?654'&#"&"2=32545'&#"264/&;24+654'&#"#32?654/&#"232454#"32754"27654/&#"32>4/&"'7%654/"#"32724+"3mGTΑ�Α�q9S>B `IC>dt�tG	�Gm�Α��S)�Q��)o�t�GH���'7'>32'&462"%'76&'7.547�M#f7C:@!�,J1F11F
!<P@Jp�M*?Zx(�v,0!%B.rF11F1�S�.%�$X!�')}�\J>�����%#"&'4&5&7>767>&67>"06764'&'.0#"0#9>3676;2023030021002210110010101��g\�
-%\*=		$`#a04


�	g�uYC9%,(9"b:1
#!)V$"	


		
����%"327#"#.546;2&&'>4&'>:=`*
&=W5.F_c��g^F-0G*76+GO�Jk~0K?�dg�?�sb~bJ���	�!)/8!673#"'.546767>667&73."7654&#"�&��/?DywJF ">59O5E�Qap�I
%1IY�>R=�C- DI$3 DN&# Q gFOUk+9'�,@*�)66�J&���27#"&546;%2+6''.'.676767&'-
P:
�4>�7#

$6� �/*A|0#>���=g>3E/;73!����I[l�7&6765>32'&62654&6764'&#"#'&=4;2+3>.>#".&6.'&66'47'&63276#"'#"'&g
9((:O2	,-*8'Z &&'77&
��%eU;%9HD<05;D%0C#	�1�oT	M`k�	h
	^%79(1;&&	/ &m'&&	
�
�("Q5*E'
1*
��1&_?<R�

����*3K`<.#*'4632&'.54>576#".'&62>76&7>'&'&>76
JI>.9&?<,%3%T
�$T/0^37&@9J'$	*
&
	(@�
8$/',W)7	
�	))


&
����	%##3#i�m2�u��hV������'#"'&'.#"'>76767676&6�Y[?'		
(	4"!]E&ArwI#-)0%
L�5-l����
!!%'7#��@<@@�@@\��@{�VV�Y����*=L!!274&#"#3235'&74=37#4754>35'"454=#?'#'##77��@�	3#'&�,8DSgPQ		 ��@3	!%%oq%

��l�

!����)5CO%2#"&547.6326?6632#"&5'632654&#"6'&"'&272654&#"�	{XW{	9O	aXP9���ky�&1?YY?

0'(�	!}'inR����@\#"'&547654'&#">320#"&'&767632.%#"'&'&76732767632�  8	!.L/S�YI{�	
Iy)/=*$$ )- c #%#5(fF$!
:-) 6	0#2,#UoC�oNA<:+ ##


1GAQ3:IO
<T
����,%2+#5#"&4632'#"&546327.#"326�
W uKg��gGp#��=+O>WW>H-;]7[��[:b�,a�FQ�ΑIAmnHW>>W?#/5���;����%''7'57#d%��S�}�.*�}���TA�`&�:��:�����Yeq%2#54&"#54;2354;2354;235435&4663232632#"&#"2354;2354;23543%54+";2754+";2��"*"�$$%	

%%$�����``� �    p<&    � @@@@����U$#"'&=#;54;2+"=#".+#"&46322>7>23>32#"&'#"!546�Y�
	Y		Y	'e&**&		  
	6	Y�
5$
<"		Y		,6,*:*
"-!<
#6����$+5326"&4624&+3532FFFȑΑ��3$x2F$�JΑ�Α�H3�J�|4CR%#!"&5467>322654&'&7654&#"'&#"3$#"&764'&>#"&764'&>�!*8'��/B7*X6A`J4%?
**
%	"
	�3"'8C.+?3?X�


4J)!	);)x�8	-l-Ia(	H

����87&54636'7&"76&%#/7327654'&7466*^I"<53%8C)G!G(4RmR=#!@P_"*&�3IP
H'%*#	6EL,IH'0A( ����#'76#".4>327''77%+*|3@-.C97D-,B3�O}J]]J+V��V+��e66f�i89�X��I^\I����'�7''7'75#'7�b�VllV�422�g��V ll VΝ2djd2�����1#7627'&73%'#762i9�8f���^���88�9�����X�ڸ	e���
	�&�������!)-%#"&'*##".67.>2%35#5&''35#�7#77#7!=ZfZ=!��**�-e)&lm��~8//8&TJ;##;JT-:� "j:	���� $(+/36:#!"&5463!24+''#"3!2#5#5?##5#5?##5���j%	o==o	j��IIIT6v���p@v�cu��j��jK22K��%%J&&�,u%%J&&�,��%%����/2#'".'.&56'&'&'.V�P5QF/"35#D
	$GI&

%6(�,>=E10RG	.A9l
,!�	g,����c#"&54676327#!"&5463!24&'&#"'>54#"32321'&54>14&#"3267>7632�	

���`@		
D1;.)"3	! +
,(0
3��`�"??O-(-<
"8$
 ����DZ%#&#"#"&546327674"#"&54>32>32'654.#"3:>76�#2	(5R6(./	
		BI%R667
�		
�7
8Y1'6

*-GB-XA05f
	P	M(,?������0E&'67"'.>32&#">54'654#"'6767&547>.%$
3�3(&Y;!:N?1#1	m;Ob/&KB%
0**JMX�
CJ88*p^B	T:4M	AUM'79�DR;$cI)+
!2����?T2#!"&5463>''3654'5.'.5463267&#"2726&'>7����

1%D'1$%8 c<
)	.���`��H%3+U$"7
1./6(	0 $5
);F#�.>	

����d2"&46'.'#&76763654'&"'6'.#0"1"#"'&03263277632327>76�Α�Α�


.	
,'��Α���	

<
<
�����g%#"&#"''.#"#"'.5&'0547>7056'.'&7>327&47>3023232761�<	("*
	D	$
	
%(	)D

$7					
		
I$*(I

	����l2#!"&54636'.'#&76763654'&"'6'.#0"1"#"'&03263277632327>76���Z


.	
,'���`��	

<
<
 ���� )632654'67"&4632667&#"�o
$&3)/Ih-
;z�zzV6/B��\d%(Ih�JV6?#hIC2
=TVzz�z7���^hIR����GMSYc?27777''''"'7&'7&'7&'7&547'67'67'67'6'7'7'5$"2654
�
-
2=
@DC@=2--3=@DD@=3
-
���������ʼ���bb�bۄD@=3
-	

	-3=AED@=3-
	-3>@D�����uu�vvPm�nn�;bFEccEF����-83#"3#"&=46%3	5>574&'&'37#6734'7[��++)%65C(

		0!
>2��
�1=t)�)5%�%482i@E&(
3.GA1����.
���S[my�����462"##"'"'"'#"&5#"'67&'7&'&54>3267>761>32632632$264&"47327654#"&4&"26574&"26574&"26574&"2657#"&5476326262632>74&#"32>6�
		&N		 	 		
" $6	$G'

-

�� - 47)112MU2FZ%"			 	 		 &3)-")R-_


� O- 
	7!25$" &(Dt�!B6#
�		 	

	 		 	

	 		 	

	 		 	

	�.9iH2>.VN�*?$�)����".2"&426=4'#3#"&46327&#"%35#5##33�Α�Α�5BuF) -- !"13II##$$$$��Α���D5

+.@.! IfIj$##$#����=2#!"&546354#"#"'&#"5654&"32756=6276323276���.(
%"

&*
 ���\��	
�-
����BFJNRVZcgos%#/#/##&1'&'&?&5'&?&/&?2327674?677'///7'75'??'?�
7CTA&{Z"$#;F�e[yj�IP9@
F+:
>NOU\_BX@)J3�H,!6.CENd
�',�# $&9a=/�79�1��=^:�=D<�>F=,DC/DJC("?$A����1%#"'.546323267'654&#"327.#"'632�(;%:tKxNOwJr588338

+!)=	">(dAUpoV_:$:%?PNNPON>�Rk#"'&'467632357>7>'0.76&/.67>/7#"'&547674'&547632aAC
4 
~]

		

#� 4
CA
`?[e@	$Aa1J%���>('4,
#%98#/$#�%J1b@$	@e[?����2"&46&762?7�Α�Αr�
=�s>��Α��]Yh?.
����2"&47#�Α�Α(U�U��Α�ε������.6>�%/&?6''&766'&7.7627&>"&4626&'.>;4'64/676&'&.'&7&'">374'&"417670.#636=4'&'6767-

	N
!	)!��Α��O


		
	2

'	/].('�
		
	
	$7
Α�Α��
%" 
	;

	3		

!5
n*%#����X%&5>56'4.'57#.+"72>73#.'&#;2>7�
��h	
�X	C-Y
d<H�r~		
�
KI�'
	$����"3CQ[2#!"&54635#35#&'#353732326'454'.#"+54.#"5#3732'#52#"&5432���L!�++(
.�
		uU���`�[���<)�UUWW*


c$	
*�
\1T!*

����Ub%11"#"5&1&'&'&'&'&'&'&'454767676767676767670723135"5#35463�
 	
	
	
�II�%			





 C �^����6[2#!"&54636&'.14"&'&'."04&'&7676&"&306/.>1276a'88'��'88'�*$	

/	$|%Q)%/�8'��'88''8��IQ&/)

HQ&
/)
����7&7>7>6&'&6�W?_E*�*W?`E0�4P<;ZP<;Z�W>VFe	W=WFe	�;XO;<WN���#'"&4624&"26%'#'#7'7''7'�Ԗ��v��������W%W�/213DEDm77*Ԗ�Ԗ�\������%W%R^ddk
|D7�����'0<CLl��6&76'&'&76.76$&'&>.6766&'&67'&6&6.''0&'&'.67&67>6.'&6'&'"'&#&'&'&767>7667>763266.6a
�	?�
1�m

-
T		FE&#'f*3T
^(+

	
		)		%,P		���		L�

:	

<	

w!K$
2?#J2$ A5
@`
b

"k
F
0.K	S����-=M2#"&#"##"&=&54622763232672#!"&54634&#!"3!26S
('
#"
&<��j��\�,�


	

���\�r\��	����)1A%&?'>.#"'6?'.?6176&"&46227.547�

)*'1''#.L+3 
D�:j-**�'$ZJ3!(/��
z $>-'<2#' V.

=Q C�**��(#K05*'8.������0Q%01#547>7>?&'.623632&7.#&$#&5&7067672?B.,]rvy3��
::�q�
z	���	;9v
�*)"%txBy+	�/	LD6
J4���@Wy��2#!"&546367676'.6'<.'&67>4&*#"#"&63!22654*#".676766325'&'&7>0&".5&7676��;�';1C#	@=		73	��		�	2!	 )-4	%#	5��E&��|��
'!"'
	�ZG22!.;32H-"�����&>#"&'>76�MU,MU,!�q=l&5V
$7�k4!bj4 ^
r�4-F13!T����!3DL2"&46'&'"?2#!"&546337632=4&+"767676/&"264&"�J44J4�)�##��##-T
BiJJiJ	4J44J$C�#��##J#U-	�JiJJi����3F2"#"'&=#".5<>7>754.#"&'&'&76532�a_@5X"0
�D(V

L�E(�I?��		&	7��k	

��0�NGT\`c����%777'77?'7&7>721?6?77?7?''&76?6&2>77'/???>761?6'7?7''7#''767676'&76767?&'&#7'�###"@/ 
 x

��$!%
'%A$$%%6 	K
:(�	
;	
	��( 9
&	' 
+"%	)&�p
"?��qsvPS�xx$&" (uoV\>
&	@<	&(Mzfh?B)
 +.N--+$'%' *(?BO@		
&����"7?K7>32#"&46;7'&>.?6732+&'.'&67&2"&44&#"326	W?�		4BF�5		2�Α�Α�YZ~YZ~G	�
s$	�"	+"	V%	��Α��gZ~YZ~����2G2#!"&54637&676&+76.'.#"3!264&+&'>/���O�>V		A34+	3���`��!=
�#rJ$X!	V�)>J^j���7254#"#47632#7##"&5462654&#"733>32#"&'##74&#"32673>32#"&'##74&#"326747632#32653#"'&7454&#"733632#454&#"#*
&	%,
''
Z&	'Q

:&

	'Q



5
! L&
#&M]'	#
'�		L0_
	%(
	Fl
O
	%(
	Fl
# 
	
3		.		D��A�.6%#'#7'#7&74767676&'&>67'?If.!�$!e"E*;f!1+2��I:rkrTWZ�`QY�Of!$!�nG
5%"37)*= 
!.S�N�,2.I29�z�5����()%%57.#>2632&#"'>32'.�����@~6�D[j[��#<<#."4�)�MM�)11����6��6ȀG8*22*1110o?II?DAT�����02#!"&7>37/>16./'7'67�"91��"91�_
g	E:4)s�)��))4)��w
qd
0=
@n������.;d���7#*&'#0#&7&6256&"#&47>323226765&#&/&5&1430367636763:'#/'"'&=47>'.'.5&632#.#&#"#"&'&63216766&&7>&7�
&),(V�
2
$!!%4!!�!	
#	
'$
	3�CY�?��~s
	I4&�
	
"

e
��������	"
#h&)?:T0			M����#32#!"&546354&+"#5#353;26'+"&=46;2�

��

@(@@@@
9@(@..�
��

�
��#*('K�#'(H����=Pd"&4626'7'&'7'&/2130"''0&/377676'6".#727".'72��Α��=%	
	

#

"3(9	




	

'Α�Α�*-+,-	3H	-,--	-6<	
Q6����
)5O62'&"..7>7&67>'&6'"&=462746#"&=4632>NG�I?�>i`b
UT

�	
OR^�			GE11E%"!%}CG=:�e�`
	T�
�Q

]�1		H		�

G0++0G

!1! 2
s!)19+73272+72+732+7%2+72+72+7�"&GD~!%F�IF�GFFF(FFyFFKYY�1Y1Y61Y�1Y61Y����<^7>32"'.2"'.7>#"'&'&'&'&547>76 '&'.'&54'&'&'"76767>�
9C)	04��
I!V"2+%v	�
X�	
�� ���.:G S������$4E%"'.'.567>7>3%327654'&#">'.#"?�
#/�";	- '48%(,
��	--
.$�	CB

TM��%$3%-L^
#5
)22	�

����#'+/37;?C3#75#73#75#73#75#3#75#73#75#73#75#3#75#73#75#73#��xp���xp���xp����xp���xp���xp����xp���xp�����ppx�ppx�pp(�ppx�ppx�pp(�ppx�ppx�����#$.>.7>7>76.'6L)5!)58Gs8	K8/fYH+�H5K;+3��5!*5!��P~F@e$>]4m��"C2.
)�u;����'/6"&4767&#"&546326&&2"&4264&">L


$'7L5-'UI�������^^�^&X

8*	6N"q߃�����^�^^���M�$"&462'""&54632654632L1E22E#".0G12"#)5##--?F11F1�-#".."#5)#"21F1��q�(Vfs�7#"&=46;;26=4#67>76#'&77>76/6.'&.1&677&'#"&=46;2'"=4;2#754;2+"+"&=46;2�1/.*75/62
G2$q%;Q�9,
7$>4R60 

&>(D�(

(		}


�				p�(	,5
+Y1+9%">,%)&".#@/	4C3	

93$
�
(

(
(


			T���
-LWo�7+76;26'&++76;2";2#"&7>;#72+"&6;+";2?6+"&?%2#7632+"&576&++"&?3+"&?>;2+76;2?6+"� 	#%�

 (�90#	:	�$�		�IB
/5!�+	_�.(#4  
"c�#(!(	@bJ(

����!'#31/#?#7�#���{p�651cb
os��t44<//.=
&J�2����%#"&4632.#"326XA#_5g��g5_#A
6*>>*6�R#&+�Α+&#R>T>��*�.y�	��&767676.'&'&76'&'&0&'&0&&'&1.'241676727"#00'671327>7213"767676'&'4.501&'&'&76767632767617'"#7&'0'"'"#.76&'.'&'&'4'.'&7030236'45"37>'&'6%&'6&74&5&'&5&76767&'&'&'&7671676'&'6'&272637'67'676&'&67&'67&4>56'&'&"#>767&R	"8		
 
�%	"))




�,H+#	
)%
  � 	!0					


	
��
"	
	

  
		2 		'|
	]
)
;%

$X-.
-			�V


	15+*
!$% 


	
	

!
�



%	
			
�+5EU3#5'.546762654&"'3#5'.546762654&"%!"3!2654&'2#!"&5463~44-.@�44
.-@D��

�

&&��&&8�	&'	:

��	&'	:

�
�


 &�&&&������CH767>54'&'37#73'##".5&#".7547;2254'326&�
	O
	4"�w�ZJ![!&R
T&6
�@$@&
3+��7	

#/�

)$J���"'53'3#%#512>'.'&#4>1#53WJ�>>�Bj<3P-7]<`6[v@8S�__"JJ�=�@v[6`<]7-Q2<jBS��_����S$"&462"2"&4%&'!"&5463!24&/.#'.67'"367./1767267)s(:=��XI
	$

 ,h+.#%(
"S+
!'���5390Z��$KO$


	����
2+4546264&"7�\��\�Z5KKjKR�����[���KjKK5!K����#53+32&+325��0`ӽ�__q ��~�T��d
������-159=%#535#5#5'#53#5'#"'.7!27&6?6%#53#53#5'#5^BBB�BZB�BW
C)�vn8�	%+�B�B�BB�;�==�;;H<<<<d	.ciB!Z':
$;;;;;;H<<����-08G%5!6767>'.#"&76767>357$4&"23676&/&'��YH0!"!H)("M["/��
'sZ&
	#0
162R@]R/!"*4	.>>XA76�


�bD!3$4=B����
!'/?G7>77&'6>7&7&504576&'67&&7#!"&5463!24&"2Z(C�2!@�9' KE$?#DI'-(	2'4/0���`@^�^^��3$,K+%�071	�
4(4
:".d %0���`���^^�^����32+532654&+#�rE> <_:��V_dQk@�F?[*P@&@a?@`7������
!)����>2&&#&676.2"&4&2"&4'3237.670>636"'&5"5&?"1"&6323&''&676767.'547>3>367.>>2'%6.67>4.'&"23267&'&7>9
	�
�
		
�


	N5j!@
	--H


 b9"
$-	6*"(	��#'
G		3	�(#	H�

l							�h

	
]
	(	
.%			�
O
.+		V
.
O����
#2#>%13#67'.5!456WANdE#-�3
TQ `AWGDu�Oq�S�	.%$/	�k"/0ijY_��*�%##5#5354632#"3KdQQB7$

(Y���]F<AO<����#=2'&*#"&5<&4.'&546&"/&#"?62327�ӎ`�L
N�O
:
IO
:
��hT{-
Flh0
;,t<,����####5353533##5353##5!###�@����Z����@����������@���@@Z��������(;J73##576=4+53546324&#"#576=4/73''7'73733r]M;�	&55*/E

	�
!	n
*+
&
&�3�"#
�32.*
 ��"	�	(�9-

-%
&&����S�72+"=4;2+"=437010101010"01"1011"11101010#0**1#*1"#"*#"#0"1*#"#*#0*&*1&#"#*1&#*#&'05&'4.#04'.5.14"5&'014&5&4&4&4&5'"&</0&1&54'4&'45"41&54&<&41&5<&<&504'41'041&5041<545&504145041<'45<547676767676767676320154+"#54+"#54+"#54#563232=4#"#"&#"5654""#54+"#54+"#54+"54667676���.;ed<.*33+
	

(,,(�4444}AOVSOA

��H�1

Z�H	LL	�����	&>.'&7667"&4632&760m5	%#�01}~�~~Z4/	
	M`5m	#%%1U�
	19Y�!4��H�gow5'.54765&'.546765.547.=46723>54&'&765>54'&76"264264&"6�ss�
�bQiE9
4>N>dd>N>4
9EiQb�
��J15t����t51
-1d�
|h�UDr 
g>Eo\
 	��	 
\pE=g
 rCV�h|
�e0-
�
"����"%2#"&54632&"327572&+5DDg]��\[A?&nNN74&%34v�
R�\]�B?'NpN$"q50*Y����J'.7>327#!"&5463!245#"'.#"7670703'&'4+76,*
,"'�!��!!P!v(&4
<4.!#O!C7
5 *-*C��!!P!!�"�(*$:<, 
 
��c�.=732327676564/&'47>32753.'&"67>'.+

5'*27"N\	O;*=
,f%IE�+D"(A"<-0	1'* #[Y% 7@+=���"�EA1QU.8@���%3!!'S�����6Q��!S�Q������������	%'%	&54'77E������<AA���<�ݡ�����
(
"@@���< ��@�*N74654'.54>54'71"&5>54'#".5470>54/p
O,+!(!�C 	D�
8* >105,9)6
CF-4,	 *
P��~�")JQ_��*��������67&'6?#>'&'.'&'4.77&"&576&''.77>2"'&'&637#"'&'&'&6?654&'&'.54746165>'&767674765&'.#'763263&67067>367632"22#66763267&#""67>76%2726767&'&#"&'&#667676;2&'67&76767>54/0&5&'&7676'&'&#"767&'&"'&'&#"45673&?67&'&'"276'&+"767#7>'12'"&/327"'&'&63=.%
		n	
%.	? �	

�
(/((/(	


#	




	(

	
		��	
1		t

	
& T  &	(=5
	f>v�
	F<)�


1

		+		




+			
	4
�

		e
%(--($#
			
			
			

#1	
	+�
30+..+-3


!		!

	
�*+9	0@@<+*�	�

	�������7"&5/267#"527654&654#"0#"76746767476'&#"47>76'&#"#"7676'0#&327717670767464676767676767"./3276732767>54&#"'&7>7632'.7&54632?64'"=32�%4%i��

	


+-*		
	

�ttD0
=9
DF9P		P


�	@					!	_P	

	
 �


1@<)���� 2#!"&54637#.'#3����Q#	%P���`�6�-/0"�g����!.'>72&#&'.=4676&#"#"&#"0+".5&54>16&#"#"&#""3262324'&'.46546;23262�''��')Nn$p$�(��(&s)�k		1Fe
	::	
eF1			+		+	�����$>&''&'&'&67>./�O:
 # &
o"*>$!	
	THN(_-.R&`J7-#AM<g*:1*!<����6>%'#"&462675&5462#"'"'&46327&54264&"�
+�
'/?L6,#2"2e9))9(�s+_=>I06L2"2",8}(9))9����5EM2"&4654""7676547676762+"&=463264&"��ed�e�	r
X	/+<<+�+<<+)�qq�qpe�ee���
�
	
q"	4<+�+<<+�+<�dq�qq�������<%'.7>767>5&540'.7>767676763636~	.*�
&
 �<(,
43&#7Jc<
�	+Sl�����DZj��������!&>HUk�����%!&'45.'&>767656.'&'&'.7>74&5&7>7676>367>7>72>5&626.5&6'6&'&'7676'&'.&6.'.'&'&7>36'&'&6'>7'"76'&'465.'30'&'&'".4173&'"7<5&#>7<5"'&'&7>7&#&'342;&76'4.'.'636>&&>7&721&'&7&726>7>.'.56'.'.#".7&6&7>7&'.'&'&36�
�Z
. 
%g#��4		k*"	6#-6, 


FC�	
	
e
"��*)=�	
9$S

	�	#	�
`
	
$!�
%*!
�8/V%	 %!		
-?%(|0
�"
^4	F
�$'?^2


!%&
		!)
�
 	 
;

/	
	

 
& 	Z
)/
#
		B
'	
		$(
	
���">[.7>3267"1326'6&'&>76767>320676zX/lȯ/6#q?FpG3C		7a�3�	57K�/+&F-)
!�

.�"3?�6ȯ/l�W8>��
6�>u".)KEP&/ 	
6
	"	!����4!!75##"'3262654&/.546327&#"#"'��@�*"-"c'
	
!)"

"��@c��'  

	
" 0

	+����@2#!"&54635##"'3262654&/.546327&#"#"'����*"-"c'
	
!)"

"���`����'  

	
" 0

	+���-CZfst?73'&'2#"&546%016"'&7'676'%&767''&>%2#"'&'&'67&5462.7>3'654&'7@<1N/'1;C3$)z/	
-?��.'.r?1N/'1;C3)�	;H^uHQJ "":';B +#'�17D5		02J*(}1
,;,&18D5	$'<A+'i]uI];6Fw$44#!!0����.!"&5463!24&#"326=7>/76&'&���`�<
!
1(&, `��.�*L
?:


@����7>&/#"&54632�SFK[>p( $''# )NGv 5ks6�L**/%#.*	����RV\qw|���"01*#0&1"1'&54745034625762203175450610610>1762001310%7?5'1&10&10'1&<15/?'575/?'75�]��a`P`a�xQQP".!/\/"�u;P\T-��."/)QQPXQ"/Ln5iooJ77�.i77b.//��\4���C".511[K\�[[V...�.[������%6Rbv%+"/+"=4;254;2#2+"=432+"&=4;272+32+32+"=437#!"&5463!24&"7>76! R-�.�0"��"/0""/>_�`N;
X"�G,*G,*GG<G9<GW��"/0""/0�6NN61J='u	)C3'&5%3"&=4&3#'546323#%53'5767'&=325N,�+<''<*%8��M*#&( 	-Mo�+
'"
M<+MM'�+<.#MM�(6F
	4�q����	''7'7�@��@� ?__? @�$�\\�%��\�$�77$���@�19Aq7>3>32"".''&'&'*.7#"4;2#"4;27&767>54&"&'&'&'.5462v


		

���(XX
KhK
	^�^�. 
A	�  @  �
,1(3HH3(1,	
'
/@[[@/
��$4/5373#576=##576'H-�m_�'&�'l3�3	2	6��%��%&���	>>	��+�,P#"&54632>'&'&'66&'.2632+"+"=4+"=4;2=4;2rnSg��gS�:&.��/
.��7�&"* b1i((0((0���gg���)�;B�^B/	)1-r+&U#* 
o0((0((����3#73#3#73#����������������������!&=4&"&=4&&5�,,*+$)+,,��t������$2"&454&"6754&"6324&"�Α�Α�"!�"�"/��Α������ ��=�����
%3"&'357#&5462#5'`l!q�q!lhh��K
�Α
K��@7AA7�iiP')g��g)'�������6GYe%&'7&"&'>='6267&"6267.'&47>330#'236"'&'.4"'6?7*�*h+&$:FF:$'�

,d,

0��>�>,,>VcU?,,�	#:
�9$	$
�4&&J	
�
�-F%$G-�
 -EEEg:T&&U;g�(5({

����;g"/&7676?6=4/&6=4;2#"/&=4?67#"54;23254.'.54632+"'.#"�	>

/���20����0,b#7)(,(V0).&<%j�jj�
���kk�k�!D@
	@@ %%#53%!#5#5#35337#3537#3533533    ����@  ��@@�@    �@@�  � �``�� ��````
=�C%Dsw����7537#54&"#546253+"&53;26'5#5462#54&#"32653"&%"#"&/73275&'&'&'&'45>32'&53%"&/767&'=>2'275&"5&"2'53#'#53h!4D10E6%&5�5L6'' '6&�
		

)
�F" 	D"!)%%�?�41DD1&55&&55&&&&&b


 qDD5
		*


R

Z�^)����5DLT\dlt|������64>'>7"&.'."'&5476324&"264&"264&"24&"264&"264&"24&"264&"264&"24&"264&"264&"27&'&"62X
	
#9 B�B (B^^B(��XXX(>�>	O��%
!(
2��O5005OBB11B�SStSStSStSSD'  (
����	!-7?R"&463235#737'2#547#'35##5##5##54#"35'5'57'#353#"&7'326�g��g���`o)F9{�DT�E
DEDD$	
8�Α�� �?�.

471M|$0!!�gV

	,��8�
4n%#"'67>454676765&5654&.3276'&#""'4>;>3735467;23232+!".='#"&'�6) �&.^O8		,9�Vb
	��
	�&:/I^,�5
(<[:4%HU		K
	�	

�
���
%#"&46323lLLllLLl�Z�Lll�mm�������"4#"&'&546322>54&#"#".672654'6r<R'(F S{VSS=>/mKPn/?@B-$9%8U�?WSn	+?*mTX~�9Qf(PttP(fQ9,A$5AG������!)>F%#'#//75'73757372.67"'&'&476762564&"C	
				
,�^8�8)8? 8�8��Y~ZZ~Y�	 !	
			E0_87*80?!87�YZ~YY	����DKi������7&'.'&'&"#67>3021'.'&70703'.'&167&'&'57601&'&76"45."&'&74"'50>767>0&'01&"'&167>76'0'27263231'&'.'&'6160&'&'61�"Q

.		K"#8)'4
		R?(&$
�
�D"%#
F
3�*
%=C"'�"


!	"
	(
	)�!		$%\


	�	h744D	"//%	,
&0		
	
��#	�
	
		i

�

�
�����@�&9%57>'&5676'54'&'.7>??;͗

e%'E=�^6L;/=�� 		�a

.PLI66	#8
U�
���
<97*l	#/6#	1������$)&'&67%6'76&7'&67'6/��##i

����a�tS	jZP
�Q
\-!1(7����@��=	�������">F%+3'&=46;26=32"264'"#"&7>;5#54676#&264&"�	�k5656 k(((��(%+$�k 38z�?.)&&f )0���(1l7
)		f �����/2#!"&5463&63265#"265265#"26=&6a'88'��'88'2	8�
��
	�8'��'88''8�	
�
�8	����U2"&46#"#"3232#*#"&7676#*#"&767676&#*#"32327656323276�Α�Α�	|	<	
5

'	
#.[A	��Α��		F5	B?F+E&����!@GQ[#"&=46;2'&#"#'#35>32#"&'365654'&'&'&#"32767&#>33264&#"3264&#"@�5KK5�5KK�	$
	x		S


 #"(3\









 K5�5KK5�5K��Z
F%%"'fx����	$'%'762#"/7/7676/&'&>&5��(Bg��fE:0
�]$#
0"-��{&�9b6'�ff�#P%
"
!)%0
@Sk��>F��?�?V$2"&4&2"&462"&47#"''&5476'&5476'&5476632264&""676?30Z��)Rr$$LO	8	33	8	NM#%rR)�`����5+-�L)..)$6'
;,5AA5,;
'6��X}XX>6*,8
����2"&4'616/&"37#"�Α�Α�eJ�
"
�ZUTK
p��Α���w(�

�cc)����x#'+/37;?'77'7'7'7'777'?'7'?'/7'77?^6JN�."7Z %#	8	8<+!)#+.|G7-+3=5PCBY".',";##B1 
"
&		/
)�@
H96�`�-2W�B����=A57'.546'0'.'&/?>54&'514"�D66&/$:MO�<

	)	&,$-5+?V&
,>҃�s|57"';6[<<Z�X,
&1	:%*>4\@0*
(
<��7!>'#.'6X-~w�x2M
)ps^`	5EE"�9m<Me�>`�L-T?-
Q����
'#"&462264&"��.<Dbb�b �jKLiL�&c�ccF7,LlLLl������AE$&/&/'"&'&6?''"&'&6?'&>7'&>76767'�	-
^4-5-
]-	
.-�^]�/
/ .
0
Z
/
//
/
ZK Z����67&>&7&'&'"'3>56'.54>32@<
��w	C
!,z��'/)7
/
("2 
/8B�w	��<	+)+&$*!	"&

������=%/&?6?6/&/&?67/&6/&?6,�	�-�]TD:�4-�\_92�+�	�*��"�JRA,�V$�H\7'�*�����.8"&462##"&/567>324&#"'.'3264&#"32�$3##3XC/m1!.:aGB//�$&%�, -- (3##3$^CO!,&k'e/B��4%
&&	"�?,,?-����A��%'"'<&'.'.01"'&7<"'&'&'&656&7>4645&>'"'.'&0#"'&'46'.'&54'&7>5&"5.6'.767>67>7>7>23>32307>302

	"				+%
	>59	,

	�N	
	/ 	'*
	
$$+-


,	$*

!

			����2637??7'7''''/'7'?�'8P
C]8Y9}�R�sf�|�1.�+l&
,ND&@'$J
.3D6
{l&Jc&Tz8a	%��E�a?MY`ls����%#"'232654'%.54632&#73254.54632#54#"#"&'73"&=3255#532+53254+5#532+53254+54+532;2=3+"75#532#54+3#;2=3+"7#53##7373#5#'#��e#$e�3.5��3.5�e%"
e�<		
	



v$"'

9'9		%?4';�1DJ5+#1,"10EJ]

	
		
M777H+HH+?=>
		?


	U������/#?6'&'&67%6�Dg2
��f�]��"L0
i�� �����(2#!"&5463>'."354;2+"=#����pGNhN^DD^���|��W84FF4D8����'575'7''7���X��eW"XVY@����-uKK�:55/7����#'+/39=AEIOSW]cko"'3'#4=3#&'7#&'7#57#57#5#5#57#5#5673'5353'53'3#&'!5353&'!'673'53#4=3�v0��gg�bnfggggggggggggg
ibgggggggg�
%ggg��S
t
tVggg  �
F	
#E�#EhE

#��

%JM�gs��
%	R

"��y�,Hk'.'&?6?>76367'432'&5676322'&'&#&56/&'&74>76�$�
4
	�5"�

�	
4�	
�+D!�&�	7"





��%�"		���	}�����
7#&'&761'''''#'&'7&'7&'7&'7&'7&'7&545'767'67'67'67'67'67'6?27777774&"26"&462654'&5'654'&5654'&5&=#+&'#&'#.'1#.547&+'&54704&5232673275#327.#&�,+-"%
$"-+3378:;	7;	16(."".(61	;8	<:883Jg�hh�OYYY|
)

�
	
					

>k

�" %$'&&&&'
#%"	


,'
84
A?GFHHFG?A
48',!�hh�g�~ZZ~Zy

Z
p@$


	


!eB����5K>;2=462+""&5&54.+"&=462;2"'4.5&6327632�	c !"d

e"! c	$11		CC		a3


	

	% 



	 %	

	
��UUvv�����/Vao|�#'"'.5'7#.767>;6&'.'*?>72>'"5&'"&636&'"&63&&54&#"432'.'&'&'./&6762?6�!
"J%	
	
,0d$#4U 
I,-)0)
(D@
�
+(%*//E4:L
?


	

	

�}\&

	4&-,*m0�Nm([)/)#OO
#f 8!,4&	;C
K�"


		
	
����22#!"&54636'&6'&'&6323276���L2C!	%.B@���f�@N		 *h8
/>4VR��`�*U�7"&/.>;2326?>;2#!"&/.>;2326?>;2#'2+"./&#"+"&?>3i7!$$!	8h8!$%!	7�8!%%!
8`pK
K	p
pK
K	p
�pK
K	p
����BRa2#"/7'&546'&'&'&'.'&>76'.'&'"#"07>2#!"&54632654'&"7�m'(N7$2
�			


e���B^0.�]T#E'(56M
0 &7o


	
��`��]A@1.]A+%R����/7''#/'7''7/5?'77'7?377264&"''#/'7''7/5?'77'7?3/3267;?3?'�	

�/""/!�/7'6''
*
$%7&66'5%$*$/>,%:
			B!/!!/2(
#&4(66'2#&)'$4'4.
:&+>/#����
?I2"&427&/7654'&54632&#"23767/"&63376>54'�Α�ΑE9k�&$DC?P@W9c<		R0"%<		D3<��Α��gAl$+��
��	G�J6 #;6/�_		��f=92%+����)@Q%'&'.547>''&'&'&7>7>5476'&'67632%'476"&'".rG;14;3
Y6T�Z!"	
"N

`+#��	?y2
1)�W $	!/_0R�mU-	2G) D	T<"Rx(
@�		


����7#7&546;#5#";�W@`KU@R7&2X���&gMT��8;m��.�533�p8R^4y@�*������<�D5?G_i{'&76701#"&#"#'.7672326732+#73264&#"&54?54#"#>32#5#'26="#532?'3373u

nI$%*#�6& 
"r3$#5	"!
9
##9$B�M%�&a
	J	�ss���@�&BLcu+534?#"7#!"&5463!276'&5&7&'&#"&#3262327>4&+353274&#"363232737##'##"#3267.M�� ��@
	
	
>



�3t&	f$77Z
	
��`�

W	(	.(�/

cQQc��l�$+571#"&767672#&'&'&763276&'6�" �

_3�U*'(%+}"
�
3>Acf5</x1�Xa-��F29H7.^
J'Gyd����;`hl~�����!$"/&7672?6=4/&6=4;2#"/&=4?67#"54;23254'&5432+"5&#"6"&4624"7#&54+#5322&4+3%/&=4/&"&=4?6;2%/&=4?6=4641'"#"357057&=4/&/&=4?6721200#'"=0/&=4?6'3'<::9:::+
7		��%$=>O===%.�$>%===Q�=>==KL!B!!B	BB	B!!B!B	.

�_,		,_$$d�$$G#	^�

##G$$*##F$$6����,U7>76'&'&767654&'&'&'.707676'&7>7676'.zZf�VR
%&-
X+C;0-@(7!5
�cRr�c�
v`Y�!
FE')#+

FF"U	8b:;8 0
*-;:.IX[x
}���;IQYpx���������&'&''.767&'.546767&'&67667>'676&'&&'&'67673276767&'&'&"67&'767&''6&'6767&1.67&'67&'&'76767#"'6'&'767>54&'&'2&"&462�*47-	
;!!?	+52*			@"!;
!"

0�
'	



.
�		
_�"!4%


#*'z""
2
�!#/%/,#

}&&),+B>*		,*	*?C-R'6�
�JF
A

aN3$
��"! 
d	$10." 
"
!! &&����
#'##73'#'%'7>�MxNyT)A���<�
�� QQ���	88	7�I(L~���%+5352654&5475&54654&+532#"'73254'&'&54632&#"23#"=#";#"&54654#5654&546;7#"'73254'&'&54632&#"'2#327#"&5&634#"e
j+""*!	��
+

K�+"!*"	� #_##,-9�
!	
	!
  
"	!*"	
<"6�	
"	 
"
!		"�
;"	
D+!#
,&%.B���������%72'47>&'&'&767&'&''&7676767&'&'5#"&?#"'.7671'.767>7.'&67676'.'&767>'.24767>2630>20127670476767>563206767632266'0"676'&2>65417654'.�)1%#


	

	
	<
ME,!9^Bw
;/%H
-HWhK{:!
'
$�r 	
"�p[
	EW,
$


 	"

( 

		%
>%$&0.75"*)V	Z"">B'+	 


V

	
	:
		
	
�"-&j32

��337#'e[��08ਨ6rr����YY �� ������?''373�&&&� �� R��0n�\\�J��bb��$��BB	X�(	0D��7'##7'3'373537#5#53".46767624.'&"27>"&5475"4753#5##5353#5##535&/3#5##535'"475'"&5475'&5&5'43>?##7#'#077'373'k4>>>']>--�)d�


			
				
	W


P

&	&
	P

Y�AA?>@@�Y��**��c+<�``���ttt%

		%D		
)��)
Q((+��y�y����%./#.='./&/'.?#+'&6?#'.5'"&'&'&'&4?67367672>?>7>;67>2?>0726?67>?6766>?4567>>?>7>3>?>6?67>'&%>'&6&/.>77>/&�
	:	

			
	

0


	

��

	

X
	�	
:	
	


 


"		
 "
6	
	$-5:/'
	
-=(	%1%
m74
,�	

	����.%#"&#"##"&5&54622>3232632�
7%H2B"/"
%P
C	YNw"" ��p�7#3#3#3#5B22e3�3�2~BL�L��L���
��L�)	9A���7573'7$"&546253#57'#'.454547>;654"2'+'.4547&'632&'54#"'&'#5.?>767>36'7&54"2�&&)6�::�:Y	 	 k	 	#A
!	
:	2)@&
 �.�`

x

�nn��w 	Z((
T		 6^1J&

'9((
��y�#'#!3'3��Y>>Y.CoqD-���tt��X	<�D=PWfqu3#267#"&=6&#5375#"'53254.54632&#"#327#"&5463234&#"'2#"'5362654&#"53�""	
�
,&_,��"!SW !(%"X.
	
q$#,'	r,/&&?	
"�*	)g�;$
$^	(
*+		!('#..3+%((2
�{B	!����v�!#"'53254.54632&#"�!090 l\QKTH7 090 iXLBDJ1%;(KO �.#8%KV�$���� 327#".547>772#".546�-E&R$Y;	e8{�%
1r"~i<O~�4$4'X8H]"r,Xn���77632367676"+"#&#&'&'&'4'231'&'1#"#&50=46;230676700137654'&'&723230#"#"'4'"'&'&767621450454&'&5<547676362<=4#"&'"#"76760"&747676'4'&'&"#"1"541456767632'00?465632132'"'&5<:232767>76'&'&5&3232=B  ((TO+9%&)'QA�

		"
+!	�
	,	
#	

	


�##$
	{
!	:I�
)**
(
j		



�

	
"	udZY
	
IH5��@�(8r��870=476'"'&.7676232#%#!"&5463!2#0&#"376767674#0"1"45.'&'&#"#"6761323250=4'&'&'"&+"176760"1&'&'323254=01767656'&'*&1#01054&5&+"&'&'&'&'&230;21676767676&7&'&'&32376213676767674}�	"� ��$
		'~%
	
�				�AH((926D # /$.

�$#


���`,	Y2eT
<j	Y	T�<
�	
0

��8�%'7'8�������]]��\������2#!"&546337#53'#35�##��##�Qo>BvX�`�#��##G#W��tt��r����2#!"&54635#35#75#75#�	

	�l	

	�(�xxxxx�
	�l	

	�	
����((P((P((����27%#!"&5463!24'&'.+";2767>5�__��`*GrGr�66�`�;
,<,����!!5!3535��@f��YZ��@
Y��YZ�x6bu~�+"=4;2+"&=04.#"+"54;2632##"'&=463276/&'&76322'&"'2#"'+"=4>264&"&2"&4�))`


))$�	$!5 &!+:�.?@-!)# $$4$$�"��
#�	{�Q�#"

-

i?[?Y�+	�%3%%3%��i):av�"264$2".466<.*#:>732"#73262#67>'.*##%64.*#:>732""#�������z��VV���VV�
x!G 

	�%			
%
%�x!G 	

	X[z[[zk-M\M--M\Mm	Ge�6,�-	"`?	Gd�6,����##"#"&462&'6&#"3762"&4:
"#e��ˏ	^GB]]B%R::R:

�ˏ�f3.Fk]�]�:R::R��@� ,8DP\h+""'.+"&=46;2>354+";2=4+";2=4+";254+";2=4+";2=4+";2ZI>>IZ�$88$���������������#((#�.##.��@@v@@����&<Ngu��%'&767>;0?'.7>'7>&'&766'&'"6766'&'&7672"67>/07'&76>?'&'67'&767Of9(
)%)RM
`+!0% w %	=eC
!/0'G�22+!)�.�46EF$�&�S4(�
	YK$	
B�	
	
'7(2-"�

 

G2��##
<	
-

	Z
�	
	����G1&7>01'&".54327>3270>7>�"$
&',5+:3'<#5	)bBU!1&A5f7
"2�B
	7 	`	fX1!"4(���� ,%##5#546;2'42"72#"&546"32654&;M
ffEE#i��df��jVuwTQzv�fxxf
9##"��hk��ge�-zQSxsXUv����'@2#"&54632>7'#5"'774'&7">753&654'&�i��df��VxS#>%!	]')""=j@_$" #	0-;;��ik��fe��$Sw%
)&&"
�]+''"
9V:<����.0J2#"&5462>741'#327#"&'#53<5#53'7#7654&#"67632&#"3�i��df��j!<%"
�[8
%-GAxCN�vUl>Q&:"!F��ik��fe��=#82.50		#Sx�<Uv]$	*0
	
����!%82#"&54627'##5#535'#53'7'7654&#"'3733�i��df��jlDR@=@@:	x�7@evU=WQB(+B?&��hk��fe��=c$$88''8 Sx�3-Uv9)$3V
`t����2#"&546"32654&#5#5�i��df��jVuwTQzv	�����hk��ge�-zQSxsXUv�++P**����!52"&4267&'327#".547'703654&#"632&�Α�Α�8_�$!.&'O3X�wS4YJ!D. (0
��Α���:/`,,4##0`L0�Sw2*!4)����'3:2#"&5462654&#"2+5254.+'2+#526&+�i��df��jQzvUVuw�FF56"	^2
"?
��hk��ge��=sXUvzQSx��l'Ol.,�C)����*1592#"&546"32654&".''574575#5'?'5�i��df��jVuwTQzvM;:D	@?;C�qq(%'Y-��hk��ge�-zQSxsXUv�F@F>>f,.-/:5++����:2#"&546"32654&>32#".'332654.#"3'�i��df��jVuwTQzv�$#5C>+'>4$
211��hk��ge�-zQSxsXUv�*++4P.$.(+",11����r2#"&546"32654&2742763276;#&/#"'4'#"'4'"5'#"'0&5'#"/+53767463274>276�i��df��jVuwTQzvQ	
:3	
				
4-
��hk��ge�-zQSxsXUv5l<

P@
	a
,	 \

LH		W_WT

Y9		LbE\Pb
����^r2#"&546"32654&3#&/"/"5'"/"/"/+53767627427627>7427624+54"#";2=�i��df��jVuwTQzv;33+F��hk��ge�-zQSxsXUv�,S@:HQIFN+
I	Z

9PCT^-
E3
]	����08<2#"&546"32654&2+"&=#"&=4732354735##3�i��df��jVuwTQzv�6��)7l�ll��hk��ge�-zQSxsXUv��6�6se(C�����'082#"&546"32654&2".4>"76'&3254�i��df��jVuwTQzvr:*		*:*		G,6%=	
,��hk��ge�-zQSxsXUv<+/6/++/6/+Yd
	.i
Y?�A9AL_d3#7'#&5#"&547#"'#6=3632672354#"#632'3264&"75"326%673#"&54632'.^"c$=) ('  &.
C)!"C0%7��--�/�d)+!+*)*)$+"--�6t
B		
�P($	!!+m00)!$*&&����N_��$2"&47'.7654'"1'&7'&'54>767'.?4763226?6'67'&3&545'7654/&#"32?32?322"&4

�$

.<�,.


	
(

	7�
�R"#	l

�5:0'

&,!K<
!"70$

)]

%�`

t����0['26?'.45454>?62<.'&'.3547635476�
A)fM&
316

.�/KDD/.
H2,
%-7..�4 

 4r
??$r��E�-@F%#'#5.5462532654&#"22>54.*#27&#EXCp(!%cf���-E8� 		
Ft`[��
	
	
�R9rK	>>lGQrr_'A�
#1%#HBCN]�����<_i!!%5"'&'>54&#"'22#23235".4=372><1#3#"=463274.#""'5632��@
<		$


d

%��@r!m.*
�
	
 -E#���#Zh7'&'&7>'&'47>76327'&5<5&'&"#&=76767676'&76760'.>7276�3$#�(f42,E%? 	d(\N;	,:�m	�4
Q!e"(
!!%$,y.	"s7%G.
+'
1+1,i*4
� *%����c2"&4264&"2"&4264&"%'''"'7&'7&'7&'7&47'67'67'67'627777'�Α�Α�ƍ�ƍ��������||�|�J=7$

$6>JMRSNJ=7$

$7=J
NSR��Α����ƍ��?�������|�||�'$7=JNSSNJ>7$

$6>JMRRMJ>6#

��'�'?/?557`$##T))33d#$$T33),,+y�--��::"++,��::��-����CIOU[ag"&462"264'&/'6373#'#5&''7&'#5367'76?#&'%#63&%3'6&'756_Α�Α�������8-%.8.%-D 
;;	RR	;;
 
;;	RR	;;�"��"�"��%.8-�-8.8�Α��N�����r""+R	;;

;;	RR;;
 
;;	4-8.%%.8p.%-88-%L""���1Iqy���3&=4'&'&">7#&#6726&'676&'676727""'&'.232.#"'.'"&'5>326="264&2"&46"2642327367632&#"'5.'"&'6�

&
	

O

	
&)=!(&?
:(!1		1!(:
?&(!=""7,�

* *

�xPPxy!')

)&@@L""
3


++
������r%>7#./.>?.>?677'7'=57&'>&'>&'>4'�

#,F**E-"		

		"????,

	J	(
&#+!''!

'#I7.
5)#		#D4/!60+
!<-'D$0		7..��.7		0 U*1P-1-713D#
&'544J����y����&76567<'45&'&54545&567>767>&#0'&5&'&7674'&'&'&676567>75'&'&/7<5/.54'&'"'&'&?'&'&'414767676367654'45&5&'&'&'&'&'&'&'&/5'7>32674&'&762763676?32?#"367>7676767674676761#"7&54'&54'&5476'.'4'4'&54'&43607&'.66'&'67&�	

	

			I	W
D)!
I&�+%&#%@	
		
		8	'			


	
	
	&-
 	%		
9,:L�8'', %%	������y�WS��<232210##"'"'"&#&#&'&'&'&'&'&'&'&'4&5&45&547<74656167>567676767672636212":372676767676767676767676'4&1&'&'&'&'&'*&#&67"#"'&'&'&'&#4&5&'&'&7676767"'041465<5<5<5456767676767654'&'&'&'0&673676745<5<5<645<5<5<5<5121747676767636323676767>70'&'&'&'3"#"'&'.'&'676767'&'&'&'&'.'230323276366767676746567<5<545<54'&'&'&'&'"'47676767610#4&'<'"#*#"#"#41>12676345"'.#4&#41:36702546721633230"""02220#*#"#1"14=46123#"'&'&'&'&'&'&'.50'&'67<7676%0#&'0&#476767676767676367676747654'&�


(+		
5
+


+	
	
	
(!		
'/
u

		
	�	

	f
	
	


 "
		

	&

		
�			
	t
		





�	'		
2#

,A
&


-<

	
#			2



	



	
	
	



	

:
$�%	
	


	

		
		

	
&
&,


 

	

	

���ek66&67676327676765&'7>767677676'4&567654'&'&'&'5>6767`I\*,(!B.%$6!#
*/1!-
"0!(M;�7< 3	�93
-!" 



 '%!
-*6$#.($/<4-I#"%>,14^0
����"*2'62777''''777&547'6"264&2"&4w[

[wF;FF;Fw[[wF;FF;�gHIfI�H44H4�F;FF;Fw[[wF;FF;Fw[



[HgIIf%4H44H
����+5?IS[iq��2"&4264&"%#3##5#'353#535##3353'7'7'7''7'7'7'7'7'7'7'7'&2"&4#535##3353'"353&2654'#3##5#'?'7'7'�Α�Α�Š�Š��TT0v%��IS���|S�	
�		
x켅���BT�Ɲ(u4T_Fp��?��}1�TT@s,	�
��Α����Š�¿#/��.R\8P��]		


�
R	������!3R2���RARA�U}XM<3?��8 XF	���������������''.'4.'6'777''4&467&7467>'.'.67'77'??'?67.67'''''776'7.'5'7'677&'67'677&'6'4&''&'47'67&'6	
		''
Y:k, !,l:Y
'&
E
	(
!
'�	,' 
((&""!#	%
% "!=2b']<&1xx1&<]'b2=!" %
%	#!""&((
 n,
>'	L
�'
J
'? 
����Ce�7"&46323.>?3:1>'.0#&7"#"&4632#"#7>.'.#"56&546212#"'&5./>7>5<13L 

H-u$=,#	[
'16
0
		G+pH�
 >-$	[(3N>-#		\)3}

	F,wG 	� ?.$		['21��

	H,m����*28W����%&'&76&"&#'476322'"#"'&6"&7662"&31&'46&'&#""&676%2.'"&'4547'&>017626'.'67>?&'&6'6720'&676'&'&'&'&'4'&'&#""#.#'"76767676.&'&7'53>2241&#"15674#"1675#K8	

=
�
	
2
	AONC)7FC
,?"	 	��,& > 
	_#1
+Jq	9,'	

H(
("
�((�			G
	
&1

3'#

GIB#		
:"qT1B2Fa

-
			
	�
����
'?'2"&45'5'5'757757�"!!"EΑ�Α�;<<;!""!�""B!!�Α���W;X<KK<X;WA!!AA!!A��r�#62"&4462"72"&5>264&"�j?Jhi�h-PnMMnN��g�ggJO�!#��MmMMm����!$"&462#.5467552654&'7"'6&&6��SuoPmm<S\�\'!.H�6&&6'=�xSQv&??(Z=A\\A)F;���� :#0#"&4632#&#"1"7#"'&'.5<>32�BQg��g_Gdz7%"Ab@#
"HI1�Α@QJ 4!!
�

/+		
=�����'=O?62"'764&""&46"'&4622?6"&4?622?62&4?62"'&"��R:w)�)���R)��R:w)�)���R)�i�:Rw�(�x��_:Rw�(�p������.5<EK6/.=467*#35326&'>&'*#3533'2+5'2+57"326&2"&����

l u *		C
		
 �!6**�

l	�
m

m	�	\f$$e# f""T!&!(!55#$$,P2#"'#"'.4&54632>32>654&#"#'&"#'&#"32?3327�&1
C==C	
3%-	$
.8,-
:
-,A !'(
" ~/$
 N=+F66E7"# -##s��  ��
�%"uu"%?�B8So0467>3>'.'.'&"+'67>27'#5<>7>7>7'&'&#'7'6767>�

o B	B #)�
�S$*+	
	SS#+,
	<	#�=11>��mm�	��
S{
=

>	{|	?

?	����2"&46&'&"&'.26�Α�Α�
ARA

PfP��Α�Ό'33'
1??����@".4>226'&#4&<74#"#"#6=276&"33:325&53"��,��,#%
P%&PS&�&mm&�&m�b$VB%/i$$ta-0'��2�+"/+"54;276;20Cn33�E�6�l��Ά	�����"2#!"&54635#'#3577#5##R��$=>=>>>=�\>==���.���MM�xMMxlii����
#'#'#735737537#75'3#�_lVb(m{Wa�CH�U4N��4POI 6SPߌHH@�\?��q?�2��35���'�;er�5�F���=�f5+�Q
BKU�3#'#75#37'2#7''67#6;65#>1>3732#%'676''>+#"'&'236=#"&/35"'&'26?#0:62�z1*aIZ=6@B4
X3�
�)�
z


l

�&)
t,+<

,���^	!A"	1L3!
'#(	 !	
:LI
Gd	e����4=2.'>?#535#5##3#3&#"3267#!"&5463&632#"z)d
Xmm3nn\�
Q.:-.0-MKa)��))#-"K7?C�)�$	-

33/#/-$"6))4)��! I������c��!k���#-Qg�%'#"'&54&5&7461/2>36767'767'36&'&5476736'>6762#'&3&476726#&5&#0&'&#327"/67676'&7676'6=&'/7'7*#67654'&'&'&#"'#&?#7"&#572363236767'"'5767"'"'&#"#7?7>4.5#&''.#'".'&'47&''&'367.'''2>7'2&/?&+57''#776.'&'.'77#6'.22077'327''7'3''76767/'#7#"#'67&7'&66'.67'&'&6327'52&#"#5#63'647674>7632.73230765654'&6?#&3'&'&547&'676�
	�]\BA(!-5
#!
				o 	
(	��

)/		
	


	( 
	





8:
$0
@8
'&,�	

)


	/ 6,	 	

	
I,,
!		+&+�
			7'F

	



(	 	
	�\x<=Z-#			&-

	
	
�
	





	 
	 !*


$&
��



<

)
�
!
K,			

+/	 0	H




v	%03


21		
	C
	


��m�p� 1"76743765&54'&'3#6743627>7>46'4&#*#.'&3!#"#23#5232'0&'&32&27>767&'.'""'e��r)
"s

7S0,


t
d�	

(	
k
IH
	

D-<@'�)
<h������W��'H�".2#&'"=4547>7'0.#0>162;2='"#"'&'&#"2*&543:65654'&"#&72012=432720;&'27215"5&'4327&'&'0.'#"#6272'&'4&'"013'&672=674#"#"'67625654#&54632'6:3"=.7>3201&'&6#"'>5454'"572725454'"4732#32"#*#*.'&*32%#&+"#&76'&'4#"#"#160+"72676742325454'"7032"#";276"'67236"54&#&#"7636'05&#&36762#"#"43656.'1"54'&7>56'.7620#"3>76"+"&3656'4'"43:'32#"#"4;265454'"#&63230#:3>7+�"0'&1&541474+'3676&'&"&5653276&/"326&3645.'��	gi��	aa
  .�		0
�()'#Zc4�W
&(*'+_



!	�%$
+.e	+g!"	

&$�(
�YeVj

	U��{}~:<|�t87�87O&	

CFGC=�#'S�AGJBJ7z

H1					
!

"R%&

)/('En
q!:��g
	
&3:�$&�e
Z�&"'Xp|�����$9GQXe����%".5&&7'46?67632766''7&5&'46&'.<.523036'74'6'67&672>32>32&&&2#"'75'654%'4>2&16&#"&'6'3&74'&74.'&7276&5&633#65#6'&67"'6&261&>&'707&#&#'5063632*#75'35'32'22>=4.#":>5#54.*#3#75'3#362".626&"'#75'37'3'&'320637+676=40:>4."&3#.'#75'35'#6'254.*#&63&674'&':	$	'
	
	�!;//��
	
*��
	
		89e<QI4%�+,2#J*,-*I!
#�',')r		�
	
	
31NL! d	

l	 	<	M<9			B&&U	'"O	U,0	L	'*i
		����	#5>6+53%2#!"&546354&+32675#"735#535#57#'#r(��n0/e?		>5  �&! &�	F	h���h��G�j	}&&s�rr����!CGK'36767&'&7>672&1&'&67.'.'1'&'6	37'���7:
 
)"AJ�D!,
!&	5=*���������9

&	&K|D!,%	6
	�����	�x1I\66'6%'#"&/4547'&54>6767667>.#0#"77''77''77'?�(�
Wbo�o	wQV�RO9
� X2$s0�mC=J!q:	.>/.18'8
,-2$3
		�
$!
,s,-
-�,~,'�}%Wah���'<V`~����TY_v���76&654&'&#6'76"10'4?#&'2#4'5654'&'654&#"#./>6'&7'7'>15.'675&'#&'56767.#5675".'565'#34>307&'.'&7"2#04&'5"267&'4.17676767#'4.56461##&563&'5#6376535"'&'474656'.#672<15&750765&7>7#7.767.7&#76&'&&561"&'2157>7202'3>17&6767&'&75."&7#76'&7627&'24767?.3'45'3654&5473.#&7'7'"'0#&7''''7''&'.?'>0327'7'067''&/67'7"'76%63''>'2#54.#"#&'56#"7>'&76567"&�

\9+aWYc.:�	3o�I9E|,r6CIo*
		8

7	
	&



+		
1

	
&HL%CA"	
;_
(
!$$*"

=
%[UCB-K+�m	�AnI3,MsB<27

@		 f		D(P
G,��sR	


)	1G9Si	2&��
�G�		 
	
	-						
P7y

Y%
\*
				/B%=A=+
$	*


;

!^+
XF	D;7%+P		'/#b	(&|2=;
(P@(�
7


��)�
%'73#��� ��7 �F��!�v'a�����_j�k]���A�	0Lck���������
Mh{���-7?'373'7'373'2#"=432+"54"2545432+"=432+32+'+"5'#+"=4;2'54+327+"5'#+"?4;23'+"=#"=4;2+2+"=4;2+32+'2+"=4354"2'+"5'#+"=4;2'2=4+72+3+"=4354+323'7'3?#"&'&'>7'.7.5467&76326&'.&'>%16767632.#"6'&'67#"'32767>.'&'&'67&'.'&#"&'67&#&'6703273&'27327672767&'6753'32+"=4;22=433'7'37'7'?2+"=4;201#"1#;2#"1#73'7'3�:aNP	U�J.

`



��--=8 "b2-(*6&
1A7 "a3+*
+(I3��*+.X&%0-XT$ ( ( 	
4:9:$$ $$	m�6
(
$	<;		;;*265@?((4$$@	!
@3�00/[+HF	?@	 N>$2[+GG	>A	'Q;�
">@�6'T
">@�'!	+--	_4422U?d���
7!!"'%32#7;;�� �)��X=�tGgf G��������7+"&?>762+"'.>�2	�	}b�	�		'		�6�;���J*H3G<I����?%&'&#654676&/76/?6/????�
_
ii0
4
+&(7
:g`
#qg

]
C

 <�PHx
>

<
Z����#+37;CGKOW_573'7#'5#'73?5#'735%53#'%'#57'#'7'57#7'537'#5'53'357'#573"Lv -#78-�88�ZL B8�

���P [Z ZZd- M�!L�NZZ  L/-�!mj87,z P!Z^Mllv88�

��
-78-
M -7-
-N[[.N [[�� LG- MdO Z[[- Mj l/ -�77��* O [�����#F767>'&'./&"&'&'.?>>7076($<?W0732

'"4!
j
($<?W1193

3):"	
j$.r
BF.
r
	A
���*.37;?GN?3%3#73+732%#73#576+732#"7>533613373'3#73'3#7333#"&7�;��VR�D#d)3
F>(>�M[�pu-	�N�;�ZIIM	R�:'�(:8�^
�75<
7N55����.7"1"&5064.'&>1250616232>1000#0&�XVWAG HIgEE�SVY]w<~e�NNf0z?}Z� 48?KR^%#'#5##"&'#73&547##53#3>>32353#3733.26&#"5#535#535#737'#3'7#'#3J6@�"V#*
@511m<732	
�8w>�/&�!
�8878_18228�(.-&(..&�="!%#
M�)L1+E 3,"�(.99,"4233������#)/5;AHMS���������2+"&=64/'&6'&57'67'67'67'67'&5547'&/67'726&+"=46654&'&+"#";2#"&#36=367'67'67'67'67'67''6765'����]��77��#5"1$.'.4178+;@H�

"+	

+>*

!!
.OB		$	6#0$.(26)@���� �\8!6-�	$#$(6

8 -\@I	,	/	=,8/!


>38$#$(5*	A��k� #"&463"&463"&46;2"2"&4U2G22##22##22#�#22FF22F2�#22G22F22G22G22F22F����'/=E2#!"&54632=4"2=4"2=4"2=4"6."'&6754"2�!!��!!�KKJC0�2:�<�!��!!P!R������-���))0�������N2#!"&54634&32>27'#&5676.7#3547#36737676�����&	"	D
 
!M	 ".-	���nr

�45&($O�$] g$
����%?&'&47677'�I��M�&��LLL�J��M�&�|LLL��
�sBP%&'&76'&'&756'&'.676>'&6332>7262654&+"3q0%1+-1(''(1+,1)$
55)"55��"%%!{;0,A@ -/";,-20-VV-02(%%(������mt|��(4<HT`j%+"'&'.'&'.6?467&'&'&7&7&7&7&663666323626;6730764622>6626'6&>.677&'>7&'67"'67&'67'67'467'67*57&&7&461&7&7&5&&2656&'>7&'>&'&'&'&'&'0&'&#'''#&7676'&6&'.&>.26'4&&754&"266&'&67>&'&t
%$$
%

		
			
	
0#+/:%.$
)=D(			

	

$"$�D=)	
	


	7#1.+p	
g

!	-%%.%.~&%(&O#1"#1"R
	&
#
	�
%2$		$2%
 #
	
	
	





	
	
	
# #&%'^/+
/*
!#

	
	l


"!
	
	
&$(%�% )$l*'
�
+.
+�			~  -*.
Y
$)
'���3%254'.'.#"#"&#"7#".54732654&VRB
	$:Y�7+<p@"q�MSF,�/\"J
##)9
	)Y;;(5	����
7#%'3?3#/?/N[���{�[
�=QZ�XZ����$�f+j������	�BX	���vq&0����S����%+"&=.5462>54&"�O>`>Ow�w��()+3+�CjffjCTwwT## %%��}bis��7&'367#".#.#"#.'&676&'&32>36#"&'47>'&'&'&767>6&'0#"72##"&463224"�[&
"0
74
	1	.
;66
*&	


$	0!3	J$D33?I<.$&Y

<		 

/4	E&-		0($#>04"/

����#+7C2"&4$>.264&"7&47'>.767''7>?&'&'&6�Α�Α3
��<
+''+
�
%%.R+/2%.%%2/+R��Α��?

�2(^(2+�

E$4//)a4$)0��|�%8CPh753"&=36'>.5!5&>'>'#7>54.46&'56'4.g!#!_J�[
!,!2 
f'\TY%1,*),1� $/!!
	O;
#7$�{�gh�(,�	
%�+!()�'"3#E_	
	
		 %`2E%'&5>&#&'4>76;27236#>7%!!$7>&'.#.'&�/�
%:'Y447^E'�%f"1���D�Y�
Q�H�
5

,�
	]#��������NV�%'&6?&/'&6?'.67&7.76767>30767"12676326"&462.#6'676&'&&'.7327676767>�90
/

		\�Α��B 	
	

%
/"
g#	

5!	

	'�Α�Α��

/ -"1&

����	0J7676'&>'&'.#"767&'&63270#"'#"&767>32�%#	�
U	
	
j	/&'.,
	))"Bd	;179971;j$&(K.%-$$x2J��%;38,);".C%I�2P>>P2 �%$EU	���=EMU�����%'"'&'&''&7'&'&767&'"6767&667667>'&'7&'7'&'676'&'47.#267&'&&'.67&'67>5#.&6&'&2&27&�*{%' 44#	&W%8!4)+
!		l!%	/�
��1$Dc;8

	
4A0!"
"DA
'.$$H	+$&��4%+H/&;2,
	&.:
>D $1*
j+i�� 5)''
	O_JO ::+'M.&	
(%3�'

����(@%+532'#532"7#!"&5463!24'565<.+:62>76$	QQ2KK		�,��,,*,n1% .	5�Q	
DH���,,*,,�9
(	
������+9%"/&?622?62'"/&?622?62%&?62"'���/��/��/�������CaaCC�bbCC[[[[��'2+53!#54632#52#4&#4&#5�����++%@>X+?,�pPa����+*@@��%�W>,?kPp+�a����t~#*"#7&62326514&'0.'&&'&'&'467:62>7>5454>2#+"&772'.y	
mO"
	
	
6	

		 A	
(H	(<o
��1
$
,+.
(
	
6wA&�����'Dr�632#"&5"&5#"&5"&5#"&=4632327277 '.67672"3>572>&'."&#".''"15>7H �iO1))1�!#C	$
;��<
$	C
#NN#
		G,�	8

8}f|{f")
%

%
)"	

	/)������;^���&B^b7#6236+54626'&=4%''.'.67&>3263264'&562506350'&#"'&1327"11102>32&076=4.74+";257&#"32765'4##"53250<.254'&54323'06150'&#"#"'41"374+47632572'&#";"#"01376767325&#"32767&54+";2=476256750/#"432125656#&327617&#"032765'4##"53250<&2#����e@
&6>A;
#:		8"=%"/ 4#E8"��	 
	 
$

8
%"
		

	P
					6*

	/6
%%�

BT#$(#19:>2 1# 
#?D=	
			"
O2	2
:
4
6
85'(
 ` 77#"&46;2+";2+"&46;26&67326=4&+64'32#�r);;)��r);;)��H+Av�!..!�;R;"(;R;"x3x./!�!/����z2"&4%>'4&*0.'&74676&676/&76#".76&"767>767656&'>36�Α�Α~



	1





	'!	#*
��Α��
#
	
*	


!144	'7'$

#	���#@FL_%#"&'*'#"1.7&'&632>7>32>76.#"#623632&46646&67>76"&�>>
>?%	}IN|t 55P,@n"<2
H �[�$#.( 3�@r-*1
2DY`��6!.S>%M;* -	�!!

!!
)	(%����,R'&6727632#"'"'.767"&'&63:%&5463237632#0#"'&5463033267�*P_
	
_PT
/Wv�OQM
n&'	(!I	�

H!n	

	�
��	��*&	
 ������+%"/&4?276&'576&'6&'762��		��2	

//23(	�		��		�3
{$

	%	z..	24)����
.9=A7+5327!4&'.5432;4&#"#"5#32674&+353267#7#3��@�
 
	"~4!10�0�*��@��
J�/G��������1=GOZgp%3#"&54632#.#"54&#"&5467>#">'32654>&''"67&3>.327.7367&'�|`t��t`|nVjune'$.54-IJ-45.$'Qhd$+$&�
++*r)*"@&YvS[�tt�[SHMujgt1$'4/.4!4./4'$1L�$%"&$D\%$�##3$$�#&D$&

��9�#29E2"&467.54632676&+%'#37377#7##"''2+?232+7�褤��X$- 	%.�M&	 %$rh5\- _.	�������<*,#&�ݸ%%Z##Z�T�R' ,=x9c	0`9!&<FP373#'#'#%2+52>54&/+53:'30>5.#6654&#/*)-
.-,#
 

0/
�		.4
<

 vv�MMPP�'(
��

&�
m����
'2+5&2"&45#6264&"2654&+')+#/`Α�Α��1=95Q,!���Α�������>*)?�����<k#"+"#"&'&'.54=454>7676767>7232;23276'&'656&'&'&'.''&'7367>2�
�



�
F;:
LS,V	
N?P+'BQA$�

�
� (7v"#N$/S<#@c0	>#"����N2"&464'4'&'&5&+11#"+"#"'&'&5476?514/"73>�͑�Α� 	

 =77=��͑��y	
))
	)00V6��$
n&�7
,�	Ms�'	4	:Q	�	H�	:2	L�	4	
XR	.�	*!	c	:{	*�	Copyright (c) Font AwesomeCopyright (c) Font AwesomeFont Awesome 5 Brands RegularFont Awesome 5 Brands RegularRegularRegularFont Awesome 5 Brands Regular-5.15.3Font Awesome 5 Brands Regular-5.15.3Font Awesome 5 Brands RegularFont Awesome 5 Brands Regular331.523 (Font Awesome version: 5.15.3)331.523 (Font Awesome version: 5.15.3)FontAwesome5Brands-RegularFontAwesome5Brands-RegularThe web's most popular icon set and toolkit.The web's most popular icon set and toolkit.https://fontawesome.comhttps://fontawesome.comFont Awesome 5 BrandsFont Awesome 5 BrandsRegularRegularFont Awesome 5 Brands RegularFont Awesome 5 Brands RegularFont Awesome 5 BrandsFont Awesome 5 BrandsRegularRegular���	

 !"#$%&'()*+,-./0123456�789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~��������������������������������������������������������������������������������������������������������������������������������	

 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~�������������������������������������������������������������������������firefox-browserideal	microblogpied-piper-squareunitydailymotioninstagram-squaremixershopifydeezeredge-legacy
google-payrusttiktokunsplash
cloudflareguildedhiveinnosoftinstalodoctopus-deployperbyte	unchartedwatchman-monitoringwodutwitter-squarefacebook-squarelinkedin
github-squaretwitterfacebookgithub	pinterestpinterest-squaregoogle-plus-square
google-plus-glinkedin-in
github-altmaxcdnhtml5css3btcyoutubexingxing-squaredropboxstack-overflow	instagramflickradn	bitbuckettumblr
tumblr-squarewindowsandroidlinuxdribbbleskype
foursquaretrellogratipayvkweiborenren	pagelinesstack-exchangevimeo-squareslack	wordpressopenidyahoogooglereddit
reddit-squarestumbleupon-circlestumbleupon	deliciousdigg
pied-piper-pppied-piper-altdrupaljoomlabehancebehance-squaresteamsteam-squarespotify
deviantart
soundcloudvinecodepenjsfiddlerebelempire
git-squaregithacker-news
tencent-weiboqqweixin
slidesharetwitchyelppaypal
google-walletcc-visa
cc-mastercardcc-discovercc-amex	cc-paypal	cc-stripelastfm
lastfm-squareioxhost	angellist
buyselladsconnectdevelopdashcubeforumbeeleanpubsellsyshirtsinbulksimplybuiltskyatlaspinterest-pwhatsappviacoinmediumy-combinator
optin-monsteropencartexpeditedsslcc-jcbcc-diners-clubcreative-commonsgg	gg-circletripadvisor
odnoklassnikiodnoklassniki-square
get-pocketwikipedia-wsafarichromefirefoxoperainternet-explorercontao500pxamazonhouzzvimeo-v	black-tie	fonticonsreddit-alienedgecodiepiemodxfort-awesomeusbproduct-huntmixcloudscribd	bluetoothbluetooth-bgitlab
wpbeginnerwpformsenviraglideglide-gviadeo
viadeo-squaresnapchatsnapchat-ghostsnapchat-square
pied-piperfirst-orderyoast	themeislegoogle-plusfont-awesomelinodequorafree-code-camptelegrambandcampgravetsyimdbravelrysellcastsuperpowers
wpexplorermeetupfont-awesome-altaccessible-iconaccusoftadversalaffiliatethemealgoliaamilia
angrycreative	app-store
app-store-iosapper
asymmetrikaudibleavianexaws	bimobjectbitcoinbity
blackberryblogger	blogger-bburomobelexperte
centercode
cloudscale
cloudsmithcloudversifycpanelcss3-alt
cuttlefishd-and-d	deploydogdeskpro
digital-oceandiscord	discoursedochubdocker
draft2digitaldribbble-squaredyalog
earlybirdserlang
facebook-ffacebook-messenger
firstdraftfonticons-fifort-awesome-altfreebsd	gitkrakengofore	goodreadsgoodreads-ggoogle-drivegoogle-playgripfiregruntgulphacker-news-square
hire-a-helperhotjarhubspotitunesitunes-notejenkinsjogetjs	js-squarekeycdnkickstarter
kickstarter-klaravellinelyftmagentomedappsmedium-mmedrt	microsoftmixmizunimoneronapsternode-jsnpmns8nutritionixpage4palfedpatreon	periscopephabricatorphoenix-frameworkplaystationpushedpython	red-riverwpressrreplyd	resolving
rocketchatrockrmsschlixsearchenginservicestacksistrix
slack-hashspeakap
staylinkedsteam-symbolsticker-mulestudiovinarisuppletelegram-planeuberuikituniregistryuntappdussunnahvaadinvibervimeovnvwhatsapp-squarewhmcswordpress-simplexboxyandexyandex-international	apple-paycc-apple-payflynodeosireactautoprefixersassvuejsangularaviatoemberfont-awesome-flaggitterhoolistravastripestripe-stypo3
amazon-pay
cc-amazon-payethereumkorvue	elementoryoutube-square	flipboardhipsphp	quinscapereadmejavapied-piper-hatcreative-commons-bycreative-commons-nccreative-commons-nc-eucreative-commons-nc-jpcreative-commons-ndcreative-commons-pdcreative-commons-pd-altcreative-commons-remixcreative-commons-sacreative-commons-samplingcreative-commons-sampling-pluscreative-commons-sharecreative-commons-zeroebaykeybasemastodon	r-projectresearchgate	teamspeakfirst-order-altfulcrumgalactic-republicgalactic-senate
jedi-ordermandalorianold-republicphoenix-squadronsithtrade-federationwolf-pack-battalionhornbill	mailchimpmegaportnimblrrevshopwaresquarespacethemecoweeblywixello
hackerrankkagglemarkdownneoszhihualipaythe-red-yetiacquisitions-incorporated
critical-roled-and-d-beyonddevfantasy-flight-gamespenny-arcadewizards-of-the-coastthink-peaksreacteurope
artstation	atlassiancanadian-maple-leafcentos
confluencedhldiasporafedexfedorafigmaintercominvisionjiramendeleyraspberry-piredhatsketch
sourcetreesuseubuntuupsuspsyarnairbnb
battle-net	bootstrapbuffer
chromecastevernoteitch-io
salesforcespeaker-decksymfonywazeyammergit-alt	stackpath
cotton-bureaubuy-n-largemdborcidswiftumbraco�����f��v{��v{�assets/lib/font-awesome/webfonts/fa-regular-400.woff000064400000037624151327220410016271 0ustar00wOFF?�
��K��FFTM0��^�GDEFL*�OS/2lL`A�Scmap���Ǡ��gasp���glyf�3<m\�;y�head6�36ɾLhhea7$5�hmtx7,�T�tloca7�66ѡ�Hmaxp9 ��name94[:�>"post;HI��iA�x�c```d��7Ү��;e՟��Zs�x�c`a|�8�����ч1����Je�dha``b`ef�
�\S>�|=�x�=�3!@aF���R ���{56x����K�q��>n
ϳ3c��)<HP]:u0�
��ݶ�C�0*��Ƞ�����,a�.i�A!T*�^$,(|��pf��I��Ak��f�/��scL���
�q�)4��Ng���䚕���x	��B^�비�(W�q>ɵ\�|��q7s+?�>��_����\
d���F�*�d���R/W�M�奼�Q��i�QW�h�F���И^��X��S��}���E~ԏ���d[r�6f/��6n�m��}�1β��XOͳ���y֥XKe�D吜��ڝe�Xw�cZ3k�e�ց�u_��ƞ�7l�}��JiJ������Kt���5�M�N
t��Q-Ũ��S�:ZC���S>�����8�#8���؀�1�UX��w���0��L��[x�>$�nA#��#��E"�H��ܻ�z��7�N�S��r�~��P�ɀCN0�샿���~3S��x��}�Gy`W?��{zz^=ݳ��~�{g��>�zX������B��^�	cal�9�Cd�s�!�B�C�Dg8�r�!@ �||\�y|\>.q��f�ꞙ�ٙ�I"�VWWWw��_���*s��O�����\��qJ �C83��P�Q7�Edի���F�
�\��=������Hn�����x.q2���N&r񫂀֓7��=�?;���)cc�V�e��g�qɼ,�(r�s��g��.�eX�>d�x�*�C�B}_/'��4-'
���~���
��큔0t����WF���ܻ�}�z�ad����!K9tH��?�x�R0x�#g�7��8��8h{{�\����/�qd�l:SX@�z�l��V�Z�fp6C�8�g
�z�4
l��*��83�F�d�[�V�V�žDb���|����W/��ή�^>و��m��7�ي�_�F���*��U8����C/�Os��qI�B3�B3�9�H��C�8�����c_�{�=��͒��*$HЧ�O��}�]�oj�{KD���ݜxo�ڀV��"W�qG���ˠ��f8`�_�����J>l���
@m@3x�ܝ+�Fqo��=�q�����sZ���D���6�΅����E�V��mM�h��Tao<�Jm��_�F�Y�4�0����
���Z�n%�e�
B�=Tkՠw�2Z��7�ϛ��)�O�H"��|q4�����J왬.��Sc��H*~�(
AO�p�H@d�KmsϧR��ER|hhP*���HX�;�@+Fls�O���e�f��Eڥ�U��w�RZ�C�lL����c��֨'���=��X�,�<(�g�:T�bR�US���E��R��
g�-~?��̬i�s��@�2%�qHת
{�#���4Hч�b�{��O�j���(�x�h�C��b�x�@)8��d���Iro��O�"~�E5*��ܸO�j��*3n�7す��g����
�3��wο<aӎ2�i�X�>�t��5�eْ��E.r�]��|�_��@��s��!jAb�p�c�yEyZ�oU���{e�i�N�/(�o+ʭ�����
����*7ߧ��cH'
�E�XD6{d]Ҡ����z�b�L"MI$��C>��%JL���¾�C���Lw���J�~K�H�X�M�ހB�D�W?K_�����}�K�1C6�@Q0k�j�.=�o�Ph˦X�7�@l����/zu+M|hR�����ٗ旮�%�MP	j��H�ҽҝ0�W�sž������I��@�oe�dƪ�]�f؀�f���Q��-�v��xP��!EvPb�hB�a�gp�$������2�q'�$�6��9K/'�k�[)�f�
��rÎK�%I���d�����\�!3�I�on��d�-+=��e���q�{-�5���T2Q�\y2 ��p1�9�*��J�Z6�@8W�|eD�F�5m�eӹk1�ܬ�_Ɉ��T�l�54͹��W�}�#w��V����h������#CC\��'0�t��|�Z��L�%�>�O|�'��_Sy�Ej�;��CO?4b���6�ڀ[}*���������K��~�2fƌ�
SF��|�ׇ��S�w�U�$
ղ��en��>���cHEK1��ƕF�-H���t�}���!J��[�T>�X�8*f3��&�?���͋�K�k͕}�0���]z'F�W��8�5Y�������5���[���]I��C�*�mk`sv�i�g+=�֎^��詄�#ɲd��/۹ڹߡºY�|_h����?�+K��N��$%V=�E+�͒,�� �F'��d�:�x%x�mR)l��S�a\ ��Fޢ��M<
	8Y���V�Li�*L#� !R5��Db�|ħ��ij80����c�l3"C���mw$">Q4����:�<s�P��MQ�-��^�I}��1��o��>��|�1#��80��GR�}:���yd~���E�e�� ����{\>���+a����[M7����qH���@+—���B�|��۟�E�G�W�@��m��e��]X�&�$V�
�h���E�P/��Nߘ�b	�?�xE^����ّ�l�w��ԉ@�R�?|(%`����UetMB�(�7d�)�Gfg-<�̋^ώ�W�U�B���z%�}�"imTQy�ܸ� ��>����-��q�)�jnV&�`�e����K�\y0��lO���-P�R�]�Q
~���=�u��%<6��#~����q�3'����F	�5�6��(K�,#�b����ߒ�|C�AQ^�!}Ho��	���n����P�8K���~�B��>�W���)G8N�8?[�;������b�e	0`�)kGn|�1So,
Z�XT�*U�d3:�Q��e5����pն���dff29��M�3�TA�.yC!HA	1�E�ce����U��1R��r$��j��#�'�����d23����TF�Z@��t��s��
a]�	#H�A3'^�$���wѷ�~x�(v6��\Ě1琛C?f�P,4
E�W��M���Z�Q�g��f†�ʢ�D�dN��1T�J ���VOe�S5d���efJa�V頎��Ȳ1�2<�_'�?��ѓ���x��t0��z(�`}Ϩ�LF��/E
�U1g�d kL��X�1�m=�9�b���(��wI��x3�����jTm+��na#A�iU�$S��L�]Ã��G���ۢ�Q�P��>Qz^@na�+�������2T�HP
ƟR���(6� ú����cx��C	��������;��1�qԶ�mu�Ml8`��L�vIt߆jU0B�M�3V%�O����
�*gT�n��͗x0߬�'d,q�e��"��q�x
EW���T^Yrx6��6G�btaj�mk�l��6�t��-��t�*�Õ5C?����O��UU��G�գ�#�G�6�6��3+��1y��9U���1�\��_f&��_�a�9��@��̤�
�-�ɂy_]���R�s�e)6-#�Wʋ|
�t
�Q�L	���\
͵치F����e�kh#{�ң��А>��v�J���R4M�Љؿ>k S��Wè�̥5�)���sP��eXjf�����������V�6g����h2��U��E��̎lI9�Ha��z����x�X����%��'^�.B�B��52�|��$�	ɋ�����5����\�v�z)7�@�U�y5�@`C�/�Yn�yM��c�J�������8��"�pR�0}��V�JPo��A�qtD��Q#���E��ս�ZX?�jt�j*|��{O{��>�9�w�`�'��sh
�?t�O��ôo�;�w'�&�C�j#��A��\�V8M�pMn�Yy�@��o[}�lg�4���U(� u��躭�<����ev�hs	��zFW/�:�|Ck^�..���g���D1�/_uiA��Z�o��4�6B�و�4߁j�AtG�DJ�/��#�ټ�u:�=ut5�`n���n��nkN��hM;���Ϲ�u�ol���k�ڙ+��`u�,LW�g�o��_�匱�Ax�y�]��i;��r��Ε,��)@C���c������4�
���Lc�g��[�+�Qo�y�A��!����}�*
���wq٢�(C�Z�	��Y��7�b��0�7E�� �d�3�1/'�D�/l}|���Y�J)HaX���d0<o��2Vo���1�e�]�k�_�~�{�!����l����;�|HnK}On�dm��ǵ���~��U��֝��]*;���_i��{#h��%�K�k��~��d@�������O��I�ޱ���zE�Gf��\̢c �p_Q��W.���"�M*��i��
':*#�_Ӯj����nr���W]����t�jK���h�k�x�n��M����ӗ�&�7�}�?{s�����(:���<��.�g����<�ҫ�J?�8�U���s�џp1��g�>��@���)�8ޖ�(�3�J�ZV�gi��'j����Ǘu��573.{걑�\�V�~��\��.͏B�2�JNN%�<*�Z@_�d#(�Y��>�J��P*�
��I|žT�l����904�_M��գ�	X$d���&*���lD�����<��p���u�5��C/�=b��|�C�i> y.ۗ=����A���.{���6[�H�`ꌹ�E�ϲQ);+"��.d��/��%�wA��Kl�$�\� ��m�a�e�]E��N��m�r���6�+h�v;ڥ�/#ߖ_���]�]���?�y����Ű�ئ�Oo�ϯ���5�����v0e>i�`�ܷ�L+1Ln�k�T��&���?9<�8z&�U�-�E0���(�=��K��dU__) �1^�j��Ϲ@Z��[05��xC��g��y�9��c��M��튲mt�2���';]DE�j��RO%*aٴ�Pb��
�L4;+����B��l�ԒG��Ó%�+�!�q^d�/�d4�н�������2��t"��������{C�>��w�Z��j&z�7�Ft=���*��쳅$s��9t����'���n�"����=~�ETً�r�mv�C<[/��c���`���Z��B
}C/�rJer8�	��JԠ�X��o��$���,2%�������ɀ�R�p�Gˌ�~]�e>�7�h�jY���^ѳO�3�eèL$s��o�wu��ϐ�g�u�DV
��l�%x4N��������o��Re�n*M�41}|�� ER�
ViX�^k����y]��GF���ȑpB��YY��	��v�x��j�֠s}���������w�qm�H��k�i�����co��_��^�u�~�4��9,������HL�,èP7:��dJ��r���!�( ��'��;b�M%��߹�%wa��C�.�_�T-=�'D1;�s�V4�':YF�z��ќ�ޛ˫���>[0���N��]�˿P���ȿ�v�%�K0�)��N1I�s&��ǁ����&y>�Đ5M�����{%DžYƮ��g1�N鱓�]�S,=3�F+.C���&\f�
�ijv4����A�;�-p���_L2��0���h�0�N`���1 _%��O5H���j`(��5^��^,�IՆ*�!>9z�G���T���A)�C�@��|^N�= ^3�*�||HK�ȭH
�C��
�3�x���	au���>Xy1��Z�����qGQ�Z`���
#�Z14�3��1A��FT�x!�+C*/DE^�**��xU�B���5�*J|< +GE{M+Ꚁ�w��j?<�(�MЀ�Ec{���
���[��Y��q"��Z@���Q	)�@�tU��X�Bc8	�41sر��xԀf_�Z�d�q�%��_��j���j�Ų���=A9�)��"��L}|J��5��?-��|���w��9^�vlWK
3E���r�Fb���`�./�j�?�u�{����z����X@��a�\��6���+�j�^�-����y6�R��Q�����I?��J-�R4���S�J��ǃb���B)S���CK)�J��ؿDF�B~s��/*#w�R��~���T��ߛNO���,�R����Y��"b�=S�ht�\��9�r�o�U�h��&��� �rD����ˉA�a����=r�5G7����m}��)Z�0�=1R���ƒ��~M�==�\�;559��6��x�"P�<w,l�iY�a�ݕ\(��c�,��b5�y� 
�B��8���d��"4x��ix�N��0ù�q�� �8�������+�S��'�-B\oq�oG��A׊��0L��O2ˍ".:vr�
��7i�-�
�":�T�懧/N���1��]�x-��E����2�������ةKu�������#0g��NL��؊�ރ�Z�B�E�Z�>-����T��>��/&F���b��v�7=a�Q�N4��wM�Ę�Z���]���۟���ҾB����s��ჶ���MrUJ���+�Y�@U�"
-I ��YMh�&5Ȑ,A����B��!�Z֤0*��������|A=���ȑ"ʿr�9qry�~J��8K���WǦ�����F�i�MF�fN���Z����^
�8�1�<���w������ ��k���d����qi��u�v-�q������[i]��|K~?�j���_�g�A;�cS�����:�wU����7��O���J5�'�������GY��� K�Y
D������x{���h�IV�g]�bu��fь�)�h�M�lU�HSUU����e�S���*�o�)��L��,��*}N8`T���4}�]�WJl�����졿Ň�zU�0m�h�@s��Tu��>���:5x�͢���P{������N���D>H<�tnl,�K��JU��?z�JV�!�Q̩L�<,"qX$�7��+ܱ��d��`�����e^�r�_�1z����> ���BR�!�v
�Rri1z���Ӣ���SUath,F™�5,���t�8q+t�T@��q'���hQ�ە6��;N�@'�4�"}:W���e��Ɇ��{�}*V��u>@߳�>]qC?�Ο�Zs��A�y��R�	��L�P����#t�*M>}ymV[FKۜ�=W��"M�^,A9��f�&5��,�\�x��FE2ӓ�8���5�A���x
�Kܻ�_���p�W��^�u��V:�!\q����?�=ao�]Q{��N�����ъ��Wm,��g:hw
�(���-��%�)4��Nx~��U��F�Kw�R�S�\�J�M���7Z�Ӫ��i����A�
W�*3��F6�T��2��Wݑ���+͍-���'�q��\F��h�8��M�#LB�;�)z%���
�`S��t2��0��0FW0
,�lG�fwJ��
AAUV��@u�<̮�ɠ��`B��B�4��&�	���7&#�.����"P��5Mt��E���>?ty������;�|�=��5��֬�<�07�]dD�ٱ���y�P��^S���@�1�n*��3����郭�$����(z��Ae\y�
!��g���9sɌ�=�*�e�KD�F�;����z�b�H����2D�%��<|��LuOvB1,K���}~����?^���t�u��]v?QD,ʣ�➄qs �#x�^����~h�e�>b�b�FѠ����{�����u�QUu�@|JJ����OWR�#Y�o����X
UL�I�I���d�Ii4q�2��ѽ�e6�a���9�����_I�]��>�yT��h�s4�y���}]#JA��G�h��Ǹw+�))6�̵h�F��֓v��E�\������d;������
�jq���$�Ǔ���G��c�3g3q�D>|����S�TS��c~S�}PUȧ���>�i1��L��R�������F<��X#T������|_�H
Y�h	�bxN�hXb�����|>�-���Z���3����j0i#��C�E�$
w�'C[�D񒕮���Qz4�B1��q�m~[y�"d����X�%��.=�����G|��UK�i�J���-����
%�Kz�
�RQ��"��q_�&�&�t!���A�:�����L/j�nK�O�^h-��E1]�je�m
5�r�����߫^7��0q�e�F"B1�R�d��4žHX��fL���`Ƅ����Dž���a)�*b����1��8A����`lv촙���M�'>&��S$rf�n
ee(�����x��_�z?�#����/��29IJ�'���g��s��&��_�b%�`J�u�Ò�/r���uE��٫@�4v޷m��~X�[�d�{ٌ/6�i+<�1��b��0�N�C2�Xf�2���H�=�c~ȫ�dWe�F+{���NJ��
RD���N�'e�y~�� :��4��,�ei�h�_��Mk�7���?���c�/z{��B������K�=��T���׊�F�6���zB
�y#[��':�5�8�c!���&7$��h"N�f=�9;3�X|֌�O�NY�!���V�t�K���	��c�@$S��U��=�S�Z*��S��;6�Y,��p��R��D(��TeY<��~o�o
w�)Y��[V�����\1�Ѵ߷��<������ۮ-��-S
Bs.o�������.��ܰzX$�8��`{��>~x0D���_�
J�~#����eė�o�E��e% Ӌ�u�>���w�/��s?�h��bk�����U�c,�f�,�f�p�?y��c�6��`��0�-g�\�+8;?JG�`�$�m���H �P� R�d|	��U������o~b�y�-�`o��
�4?f�5AX؇�ni�6�;���F��&JO7�ێ�b��	3�c-PX�y�
��2�3`L�}0�u�-���$��͡���:��z7��6��V�p;����T���@)��l�(�eU�v���/��b$#
)�6 ���vs��ؠ��I�}�\OL���2z���Ot>��.�t7B}��:Zg�7�^���^���ZS!Rd�`�dic����Ƶk�vuҽj���@#�-�mմ�jY��M��5y��Z>O�Ӓ7�W��Z6J�!kκY	y��P�[k�7ꊢ+�		ߣ'���=H@�c�;����+J"��K�������IC�x<���(�����6�zՔO!�-��Õ����WQ� R^F�O1��Y~q��*zC)��B�~}���cC&W<`A��)Q,���l\�zy�Ju��`�������y���+0�"]�kE�3��i�rX^�+T/B���Q��;PT��QtN�o��a��[�0�>�SK8%�
������>Y��VEC��M�'�Oӗ>ƇU?��O6?�����iJ$	M�E�Lj�*�$QA�Ox�:�	������8J=T-�H���@�3�S݊�%��B�n��n�O������O�{C[in>[-�q���-�Ĩ�cE��RK�!�l>n/3،�y�n��V�/}�#�"Y�DB�����8N��r�����+�]N����ۭf�/��|���/���Nd�d���K�8���{�j
mN�(�Ӟ�i���a�R)_cG�,�U�c+�{e62�Hē�C(��]򹼰�ΰSYΰu�o9̩T�UsեS<pj�ZUU�Z!*3����;� �w���ώ3���ћ;t���MC]G�XК�xG�~fk0.��9T��ꊳ7ن/ܳ�1 �B��bҨ8ڳ�R���] m���J?2Ychv|R�~ڝ����t�w�@=����ӽ��{`�@�Ii��H�dX�ڄ4յW��3�����>C�%H�٠��n57�M�����k�����!fC}�0�_���e2�|�;��my˔4P�jTBRSi
e��TzC]4��]To+�LH��$_s
ڶ��҆�7i�����m�.�t�,�E�'؇�=�a��)�O�!�|���h��`��R�^V=�	/B��ѣ+�Y��D��/a_B�{{���4"
��+D
_����Ʊ�9���
M�Y7�����c7:og-��+
�!�}d����/�^����<���1��P����j�z�H�5�B-A��]a�b?�0M&��=}��W���9���o��s1=�L�� /�.|����j��+�̃�UF��������=+ͫ%�b+���5�5�\�#̦t͇0�����C�v�Z뙾��H;�%���u
�_�ݏoi>ʮl�����34t�,mn�SB���*Z��a�M�\��l��#��Vܾw�>��.�,/�:,���f'|���W�e�Y4�xL{J�+F��
jDX�j�0�r��������NM�Ѷ$�h�9�V��⠌�s�|N��n���5�~���ק��s�W�	Yh��V�&mUf�C��s���ݯ���w���a7dv�
l��N���t�j��x�mmG[���u��c�91�G'��'�?8���n08�l�l�����@OTH�H)����n��W�+R�;�R̒J�XŊ� �,��Eh��}A�߇���j�k��կ�;T=��ʝw��M�
!��Et3!W���wyc�?��h�?S��py�%�I��Y`@�l�%[��*0��f�rh�$�L
�� ]��ӭY�cyYd���?�r�˗��l�>�6�D��U~��,������N��G c��o�X�:����9+ýk���y]��} �|�‚����T���^��	(���:wԇ�:'��]ǹE�?;�dz���t��ۙ��N�}�s��w�_z񃆺�n���gr];<�Bg?#;ñ@��Ш?�����ƿ΀�g$/ V=MMA��I9��Ϣ��!1	ʲ��?I��;�\���;�g�e��}�92�Y��(թ�b�;�3���F�}wg읡���Z����›����V���AIP�����ã�nQ�d�E_Gi]�!R��PK�� +2-�;����6��l܉��5!c�K�ڛ�օ�}1�U��w�H>��q0��M�+;J��l������<��U�őt�-����՝t�c��T�\���A�laas��F,0�|�E��\%,~}��/��72�q��m�}m�U��ܝ��'���
�^��u�N+J����lF��ͤ��*3�ŋ�n/wx�+2Ê&�|�����>{�������qn��м����XD�aV5v,�k��׵Rfe ]�g���"#
�D�r�T*]��#��F���f|B���2Q�<��9�$�A�g<�^�>�g�bX�"�B�]�T&/���kd�m�\u��T935��U�{�z7?�:�0��e��z��1[]w�]�}N
S�g_^�u��?�,�1w���Ǝ���Y�"}Y,��;R��[�K�~� >[���+(ނW��-��y�ML3������5�!n�;��L���q=ȷP�;�p�n��-FX�!&4̐E�T�圻E}}"9%���W[��R4C-$���9�"s��^](�=E��m~�]��R���u�x]l��O6�^�C2�Ӊ��yڱ�X0E;�T:)t�C7&���C�U��i��5"�,�`>{��d��z���ŋ���$Eu��#�? ��t�a�7Ā_��-�G�w���Fq1(�}^M�:~^��[�|q1�ˇ�QPDᛂ�[]��{it���;�R]�����6��-�$�q~�K�i��+��MLh�w0MN���'�](�D"2+��Dl	���,�����u��(��
Jcq�6��z�^AU{z��wE�6�x�<��g��\1�<�:QS�Yd�AZ�?��F��d�q�|�H�S{��q#�s��J����S{g�;������ IU�Wo�*��s_�
�>1d�]MbD
K�H7���i��ɡ�ׯ�bs�o���u�s}83�J��ک�z��_�J��-S�:w��`c%W��
h�蕽q�s}t���hE�>�<��r�=|GA�x�ֳ� D1��dR��h��ݹ�
��#و� ))�)b$+I���K'�7R��������,�r��7qwuӏD��h�NL�uC��@�z�@�*z���;�+�r8���٨it�������l�3t�}w4�ST߳���y.^����3���6;$a�tmt%�+�͕}�����A��o}�
:����`Θ�e�]t�r�.��H�b'ʇ��YvB2-�@%r�	��-�]�7�
z¼��</�=�|t�������-����y�*|­TlO(�ǣ�y<�2-�;���=w�	#��6bLx~8P߰�;Bג��MgrPVI�31�$�~NLA(P��P�y��P�����F����)qθ���cu�β~p۴�h���o�KmأR���ȇ~�~CZ�FƊ\�a�������t�c<����'���o���Gw�R�F�Ov�̧�ܔ��P�d%�cĻ�b����Oη,�6M[a��fm�W�)�]���^h[v�1 ��fG���(�#'G?��cOP?��u����a��@�!���(QY�	��a�
�hML��&�9��2��c��q�w�_��?5A�(?�">�F����i�Β@�q�����t�����s���ܫh��.8U���f);�Uڡ��T�v`2[�,dA��l�v��J�=ܢӼM�/�1B��@�*X�
�DA�'?�᧫�Y�?�X�#�ʔ��GM�n��y�iw\A��ÇT���"l�jt#k�#��d�ʩ`J�C~��|3#���&�'�b����_X�t��l�����'��{�K�|��:rݔ>u�*=�����"�<9??����C��������مd�.w�h�eeT?��n�К-�)�ei2�*:�A��7��p�%;��жv��-�@�����peW�Ŷ��uVr����P�����{_^=�_�����━r]�\/��Ώj�lom?�fK�٩�tqζbCz��`?���G�qW �[�Db�>�K������+ȃ��Kc���.��H��S1`h�H��f������+-��{�Ӏ�~�ݭ�D���Q��+�%�����Gf�Yhp�U��~‡��/��Ev^��ݿ�]�*���(�:4��Zvd����X�r���k�\�������m�>���V�ԭ֨����|x�‘���u��;1�
e�z"��dc���%ב�+�<
D"��N�W����e��E���`]CQ�]E�=6�7�� oa�����v���n�W��!�<��.���o��w�*����k���/v��]�p{
l�X�`�9:�����+�уRI��,Q{}�_t���P��^l������Xx�c`d``�n}|���6_��@�NY�'(���;��O�`i��Cx�c`d``<�S�7@��(�&��	x��Q�
�0t��'�tF�<Lх��D0��I
�H'Ǘ�k�3�9e��g:�E�4)�E�5ޠ9�L/��AD�Z��k<���?�)��;�F�f��X�C��÷�6�HZ�b��-���K�
>h��s��k��������;�Y��i�I݋<[-�K���̾�o���O���[�@|��n��*��^���@� D�
P�F�	>	�	�

h
���^��
�
�*d�^��H���:x� �z���8��8�j�(�Z���&���>�^�  Z � �!*!\!�"~"�#P#�#�$f$�$�$�%�&0&�&�''F'|'�'�(V(�))f)�*L*�++�+�,*,�--|-�.z.�/�00�11p1�2L2�3,3�3�4>4r4�5R5�66R6�x�c`d``��������$��3$��x���On�@���i��R�?j���E�H�!M�EvU!+6T��M��j���i�r�p��%v\�C ��xv>R��
!K3��y���pG=��wMa�"^;��a��+\@Q��AI}��-���;o���|^ƚ[^���TxE���:5_�7��AwU��j'�$cŎ�;X�;a�Q���*	��z%<����;-�Ex�'�e��y�,���W�t_�S�^x���؃A�s$��EetP����0���!R���g��$�.w*�m�V���xv՟4��dB�V��8E��{��v�z?�����W���ظֹ�{u�k�L��:[�M���.g��\��}/"TX�Q���.OY��I�aK�sT.�L����"H9?�:��%�-+t�-�,f8g	�^�*��y'��<sE��g�}C�	5�yp��(<�J���V�&�u�1C��V�#m��D����ZZ�|-5>ǒ0�J��ʭ��V�v�\�8��1���ė}�}?��67��O���x�mTgw�6Ԝ$��d��.��ޙ�{�$W$N A�e9�'w��C�Z~L��l?G�	�Y��b�#����Ή����t���衏%,#@��a�c
��Q��c8�3qN�l��sq����b\�Kq.��W�j\�k�:\�p#n�͸��6܎;p'��ݸ��>܏� ��x��1<�'�$����x��9<��"^��x��5��9�7�&���x��=���#A
�rp��JHT؄��A�-̰�9v�!>����3|�/�%�����;|�S8��#~����7��?�'���Ĕ�i�T�֤����4\��	ӛ���ӂ�i�,��܌/HG	W��Q�S2m�x�&m�,[ܥ9��i�t>J��2e�U_NdQPi�&R����#��a�[^Q�T�.ҡ#�LL��
Y�D	Si7Oӵ��iTI^�H�,7�}	A�����T��^"�yO�-Zқ5SP�E’	���"��$D�K]q�İ����K�f���v�([�[PLiKK0�ݷ}��w�V�rQ�mb��>����bZ�۝�i���@��6`߄��
��:��.bm��ȕ���R���z6H�i�q�E�ˬ�V���3�ҁ�h;!1nf匔on3�3jh�$�[��Y�rل[<%ٔLd�>q{(�a�*+۸��&���K�i��#i��n��)������#���D��u�ڂ��phE�L�Q)
9՗�V���C�
e�0hT���G'\k���#�w��6�te׏�Te�5�XB+�;Ѭ.�W��ڃ^݂U���G�Nm��BVm�Y[�LieW��K#���������f�,�{�<�vK3Z機�xi�l�|������V3RQ�K9��ŔB��i8�K��u�^yc�Z�M�_��;�u�;~(�}�P�����J�ys+ץ����h�}V�z�=�i�Y-�)�ٙ/O��d������)���z�Yn��AL�/�Hψ���F�Ml�d���/���փ&c��6�Yf5m��W������zS���

1���M_�:�~�FM��m󾢽���m��"%��6���5��P�=ݶ��\�kU)��o����"���assets/lib/font-awesome/webfonts/fa-regular-400.woff2000064400000031734151327220410016347 0ustar00wOF23�
��3�K��?FFTM`�Z
��\��"6$�T�6 �[�+�iUG|����E	��e��q��!#aS��(�HG�ܓb�&��S��c,��{Aq>�f8��GDDD�U��D~�=u8�S��B�Hj��=��7���7�޵6�=/�X�h(~HR4�H����M��$$$!���%�$�&JOH��-A�iQ��r���$xrz���zo-X�)���^��L-�}�%���ɠ��I\�2/�����a}�Q$��^3�ekò�����s�K��)�v[A��ؖ(-p	�=��TR����Z�3{lfW����@',�Uȟ� �t�~.�P�0������.���F$)��U]�~���΁��r ȡB�7+��[�YZ���:n`���L_jnRrX������h��q�����_s]ɐ��1x��0���y�A�)zC�i����S�ο:�f�
)kC����-J��%�/��m!'`�I�c�s d�`�y�c�6�D�'d�
)Յ���~�U��R{Eۜ�c��;	�&1��
�n��=%EE@%�j���p��}TLY5�����8��w���&�O��Pp��C��z8��:$���H_�ߌ��G�`�̗�%����G<e.e�!7�1	H��������e��,�B �E�%�I �O���Z�Lml�s���4�x��E�ª|�jL0�4��8�R[\�מ��w}�[7ߥ�2���jZԚ�5�p�}׉�����y}w�1����̵E[�m�۷ډ��%��[��Ѻ�g��+��ٙ����ٱ�&[m�,��vx��]=��OnX�>��}S��������n�|˦�OW.^䞑?�u;6�Paao��������}��c�lV�91fǬ��1"�#�?�[�K�m�-�>�^�Z?mm+�������B�C��}��z��C�S�Te�~�|�<�<�ܦ\A+�@ie��Dɱ���Ӏ�4)�Ԃ�k�`�$�L4�+��f@<�DX$�!$��!���È!A'�`0#"�*�B /�
@6& B��D"R��x[$iɩe(���Q�FӻZB�.��b�8�����1����b'R�{�������3�2�C�0i��"K���XE����M�f�ܕHR
x��S�Ue�j
}��n����M�y������u		���>8���,}�odU�����QP�|�i�肀�d�I#��j}k�=&�T8�6�(H�����)@e�UΏ5���F׌���]��r6�L*�k}��ѫ�����"e�)��KL3�s5���*��j�<�jΘ���J�мB&��J�B�
�q��M�wĜ�d��V���u�@�L܋�(���u�9��K'ޅ���u�T|�x,�\��zΦ�mmkуP����%ٌ0+B"W.k=&O�R�L���[�<�c�z,Ӊ(�:·�V�,�F+�	i{+[avy>qv�刴��1Rj�]��ꧮ:����{	ٯ��8ġ$�#k�-�H0o���[(�xJ"���ƞ��O3����'^ d���f����4����`��4h�1w""���"m6�׆�᷼v:��������Ql����k��@���c3"�[��<�ܘ�qw��<�ZB�'o�ד���\Ac�CZ6�unf�T��,�ynE�9{�~�R�=C��<��{D����Ae��{�6���I>��x#�K���4�W���*h0��m�!�(�=��ob>k��–�]K�Jf��Wyvҵ��yBc�ŝ�	�@a}k1�m�i���h�ϧ~je�b"<����Eq��gV�C�9�hIc8�hW^�h����-)9mo#ѕ�I6��ʩDžu��xMP�u�\�ROe���bO0����G��4���^���=N1�.:j�#���>��U5vʺO���Ŗ0*V���b
�dS���bgE�PY�����L�D#Q���XrńdF�/6J�ZB�9f&3PPV_�v�i���s�G>r�x�,�u��e�zg�d�>v�ԩ�er��1; ��T�֝[�=~�xO��	�޾��թ���0.�s��+�T�I7y|�>���:j��x6���(�(�z����9��寁�0`K=�!�G�����
��
�!ض��J�1`ކh!�9ŢQ̞N�Z���능�Y��|�$�x�}��Y:c�lbo�oh,,䇎���eY�*�$gGLQ2�cg�����>U.�΀%HU���(�&i����>�mpI�
–�&�-��5������j^�f�r���@�zU7�U#��Z⿀:Cq�Lٺ��P
���E��ٻ���aI+yl�1[�m���Pqq#%.�0����O���_�u�,����~5ۂ1pt���_!��
��O`�Z�A��]��R	��'Ξ�/������``��^��l� �)k��nß����h�:�^W-+^��L�����9t?ta�p��Y�G<V��=ȳ/�;OK#�ߒ`�\�ʶ%�Km��)��g�&�vou�{�iʃs<H��y�ϟ��S���!褟��iA!P��\��C,.����V���@۝��	�������e���f��J�e���E��$���d���с,����kf�{���V��Ȣ!�V�ϊ�*�SBj�Z(Oc�1�S��!�a�z���נFa���S]a)N*%3Q�����Ԅ�.�G�>�
�5�O/ ������ز��1|g��G��1Īs��(���~ꂸ|����v��V��X�h[�A�P�jj�&����n��#Z6�vD���?�i3Ŕa
�Bx�(T��$R��C!���
#=d���9
�$���C�p�q�S����4<�#~��IS���i�S��ޭg�S�+\�ri
�\G��צ�	׸w��pC�[gOZ�5
L%�<������l��`��
QFˣ���J�E��sݔ�Ƀ����5��NJ�H���~�Zu��κ����d�p�4{�Q�:.	��p�l9����l�eNs�v�p�q
�6�]�N�J�k�L�1D��^}�;�T���ڊ��}���g��@3�:�`��@�Rܷ�L���͡�CeYe��~}�W�-
�u���
곒�=gʮ�&���5;2��~�a��x��^�Uܧ���0=�u����%ա���ȡO�]�~�ܯۥ4RY�qQY:@Q�����Y\���B��5�@�%?‚*0�m�k�m&�' H-UR:���3�W��l>�d�2a�T��<�L�Y��M��r��c]���Wa'T�S�ګ��\�wi,ξ�����.�uI�C�	���m9��_���ք��`��s����t'��{nqN��}�)�{�S1
]��Ԯ~2CֽO>:H({-[�B�2�؍ڵ}�k�܂�����غ��կ�]�t��.?���߶h-z��}�f�2�6>e���4��\��'�g�ףã���0�ns�xWF�l+����]�@MR��,O�ʑ��3��yh0WH`�ZJ��:搖�+{��fSዠj����=��H�6��R�L������9���y�$�sM^���HH�.�ߡ.pm��]D�B���L�j�g����,�Єn��F0)1��4�B��<�I�HpPt1;)�\%�1�`�o�@�t����Q�B�@�`�$����0�ʋ�c��8��A���)OY�T<}�X���s�mQ�kZ�ܑ�5,���H���T�Nl�:�Zn�T��^��d$xf��\�ޒj�$�V��_��G���ŭ[�x�����L���#P�iS
��f>W5J&�4K����~�!����5m�����R��>M�l��)ʑ4� j��B	0��!2��nb����|�̮�L��JSZ���ݪʣ@G'�ʭ�
��v��\�kbwv�c�A�Rq�q�h�.��r�����%.�`5�xU��W�@��(7dAY�^�n".=��K�l,0�A\Q��gY�Q	�[�A����N��Į)˘�o�{6y�"6,��|pt����
�m �{�r�X��d��âT|��5��9U�)�x�L#�PM<��.V},��Bbjcn<��ۙ��L��Fe"y������w��tE��3袾�����-_�^[�Ѹ\�Z��V!_���i�ݿDڋrҦЎ�0�L(
�LiD����B�_�L��^�ɦ���~K��h�/���U]i<2���Ne�k�ɛ�f����.f�QG���S�'[��s��Ŵ��(.�	�J4��v�4�f�k�q�
��u��j�Ϻ<��i3����ļ�ǰ&K.t�v�e�-C}��'�����2h*��L��bx��ge���RR�.�'�1LY�����YvGX���}����,��-I�gkm�:�{k�����d�$���$M�9�H��a�nP�>{�1wxt/~/#X����
��|��j_�I���]_�u�xP!�՛T���2`-SB��}�X�܇��%s����9��,�˕�BgwP��T����צ�Sz�:�Q�mhs��ԋ?ꯂ��n#s��υo���&�;��{w�W����f�����@ ۮ0C�)1m��LZ
��o�0f`�X�-�IJu?2q�5��2�ߟ�Vt�_V��U:6�y&zeK�9Wٕ �$|�=�����Ӫ\	*�B�(&������E��p�Ǒ��
_y�Р�47sC�Kfd���~C��~^X7�\]TU^�2^��?IVJ�l�-��M����8�;������9�Mc	B�D_����U�����'���	��ji~�e�6��8���?֯�Y�w��eG2�$�[@O�w�{K��~O����BPmq|� G��YM���H�Ş�����D���e@rU[�����S�CLAj�������o���*{�ʳ�HfеKyį���RP�71�
Ƴ�목8ٗ`n)�L��=�L�Q,��O`�{��B�ɐ�f4~��!��z}#)��|>�s�
�o��Hk�>���*�_���||/���+�*c�=$�:�ɦ}���+"rJ�B?^�_�xrH��$<"W�8�è�2�M�e�a���j·,U7R�u0����:�`�EA}��5���@���~j$b5q��lSf�	��J�b�9��C�K'u��G\d߉�a�^�S/�3��N+�x��6kA�UTK���
ʕ��H����Y�Z���M��+���k���q��ۙ�It�sQt|+��*e��"�X�G��%6��	�g�us,;��?r�t �(A#��:@'4�۩�l�����iW�'���tO9�G_�K�-��$s6�م
�˻
�J'��(�L�[�Y�6��n�@��o3�@1��'Bbɖ��dGWĦ�O��:>�����΀�8v�+m��c"sϾ�aYl�o�:����+��]�U��"�J�Ԧ�Q�^�P&t���\'�S�;���F��]t�s����װb�bY��z�W�b�4����Y��J���QYYQ|�(ہx~`�4�V_�×Ie�v�v����z�u�wu��v�2x��P;�_��!��X#�E�6ɧ񪖹~s�X�z�K�u�C������ܙ<=�����;/�ƭ�*���=�����"N�;+�(��%B����;��Ip��6M��^4ͿT�?u�uT�
LG٣�G+����=uĖ���
ƚ�Dq�g���M6b��?�N{6| ½�,7�:��
PgE!��χ4U3�	?;U��!(��e��!D0���Z�5<���:������1>^�v�[��5��J8Y���O�~O��_���]���Q^rr��"9IJ�d���W�/��v:#�XY˷-����g���"��`���4%c�����a�@F`�i�c���y�qi�<���u786����!��~�i�^4�0]����� x�,^;SV{ޓ�[

H��z(��)��cЂ +�Vf��4��]�о��f�'�=�Z��=������j��
�i�#[��K
��r&~sf�4���f��A�]��/b�3���=�~��b6�<Σ��g���#�W��ۂ�a�O<�F�f�부�c�&Zt���Ԙ���ܤ�H��m�
�5Ml�{U��*MJ3��a�)&q@�\V삐�`�(=n඿��k|r��x��V#~$*�av�����4�$/&��M�_ܜ�Y�,�J����ȜL��L�7��8��a�ůVC��9��Dӣ���e��m�N�;��-��2��w:���h7,�v�UϚ�~Ԗu��)b��D��(J��Ϗ����ּ�� 9��;������k�=@P��:]����CP[�ES:�.�(�"�@?
"o���e[U}M�g7�0��Z~fE���D͏��f𥶜��j�^�H�j�|u��Z�(�V��&F_�bRe+����t�C��9ʷ�b	x�=��,���1�W����<��m�K���jc��x&���G�!��C,�:<H&���b	��*��u�@.?��|f���m������/~�&� ���{�,�k�L�;_�#��:Y)�2�b���xK�Qj���U�gy�{o�}�H)��U}��>������l�j��uDoYz-O�_��zWj��J�I^y����Lё̗_�Y~�\@:�@��ʯ�@���~K�$���Q�(��nC ��=^}��Q_8ri!�~!�2NɛGO|o��3'<�bcU�T�ϔ4���D�333K������Ъ�)[NJ?h��=�	�{Ff�b���78�87p�A�������	M�d�������~o%�
�W����|�^V���zCI��$r9�FfKu:S�>z9a�_"tii:mzjd�/�0�|��`|rI���4��m��=̊�N�/�I�R��w��X��{��Д�P����W����Z��Y�.��k͓W[O��9pM���\�n$ߧ�)�W���<�}r#��F�Nce���3����rJ'��Q4/�D�S���
gS-��S:"�Eݱv�k
f�߱r^o|��z�΅�b�U�U�d���Vi�:w�e���z-���� ���>�l��^����ֵ�
E���/NnZp�&�2nU��,��%<ho�&��`Wp���_��6 �_2���-�6�ɔ;UP�Eד׸��_�������C��tT�<����=@-W���;w�#	;��y���§E]5|L�O�*�ĵ��b���<?�v=��U��]��ݱ�:����(J$WE�I9%Y�f��̌kO����M����E���E8�̱��q�msҚ*:$�=��y��Y۾H��_�W]8{���C+�=�0==c�$��&�@tV���;�n�ju!�����jo���A0Y���y��P�����3f0�j�Ii?�w�x��~��A�L�m��YR~Z�{�+���2�|αh��S�nZ҄�������r�@g�m��H�=�×����N.�2,���k@[��I��M���1��Õ�5-�g�b�+�+�}S�9�8?�o���Ժ'hInfj�$��� T0DKҾoL�5=�أ��:Z�P$?n�r �֮Y����0g�`j������h�0g���s.�����G?oӦ�z�x�FKk�L��a�O�Ƹ��c9

{�{�aS���W̷OV[7K]�ʧB�����(w�H�mN�{�����}��w,��CE`�2N1��C��]z�_��7og�=~j4z��w���(��̮�}84W�xɖ�o�! @:��X�p��O4ܒ1$��?ƀ�H�x�<����~1�`&��~^�߼�z���S@��!n��L��8<�H,��[U7���0ox����|9����u��u˂Vi������(�(�OB5�V������U�_�<TUģ^�^��$4�*��`l>�A1j��&��%}��'�Ր��$9�[�y�1���<�̙�b��dw��J�⨠�?LT��:d%��?r�]$�&���s��]�k�����.	_��K�(j%5�e@F�2����Ȟ��	�U�����6����㕪��U�L9�[�(\qV���|pF��I��U�K`�����m�+�W���u0��Έ��"2��,���m�jd�]��nʢ��|(�>�;�q�y��p�f�V��e<Ǩ����XIҥ@�#���'ߤ}�̻����p?��}�MM�`ƒ��?1�AM#/�#p�tC3������hb��7�:Ξ�+7)�
���t�j����2t�y�p� |x[w���:�h*x�;-�j����#�����^���n��ֱzNG���̈́���f�cbL��i
��#����D��T�)����D���B?�cv��;���Ji�d�=R��z�Wi���	�k|�l� �$��U����t�=
�M��S2��	ߔ�9Q��=zش�k��wc�[�QY��rJ�f���mz���˳���G켨<
z���I��9QCj�tG�#�y���xizQ-޿'_`IM3'd�Dw8[�`��ś���{c�����{C��,{��v���B��K$F��f��ϓ��%�[*��*�ʐ�)�}>�=OD�D"p8Fm�ک�� ^J�&ǐ�d[�*ƶmt�óZ>s������yZ0�ZK�H0�8տ�a��S��!��&��]����I�Ch�C涺ݿ���.���2ᴯ�H�WW�~���lEC��n�e�-���~o�
⻘��4��o��0����.L8im�_xY��?�_4����u_��I-��	��=UR�/DUIx�xQ��/SWF�ꞡC�>�o�����(�0��e�m�D	����<�E�w��ma�ŏS��ĕۊr��JtJ�^��j?���|2����ɤ�[�9�M�+�UL'AV�Nބ�<�kz�/›�SWBTx9.vx��T<I����L�4�����dޭ��e|�i}����[�<W��B�j�eP%�ƏQN�N�>+*ӟ2f�:���{F�g�߅�ʅ;�R��*�!~]R��t���/�+tF9�iDW���&�S�\�!��_���ZBD�}�`��2��&�3�O��1��C.��ĝYɳ���dI20c�h0w�/*M�f��$��Ң:��k�{}���x�y�ŪMI:�ڄ�ƺu]Dc�(ujt��C�><��
/�,L�^�c�JI'=�І��|���$��u�?IuD�Ӯ���"�0>r`��hF�H�w��bוU��}?��i�#R.*���vw+�w���i�O� ]~��[���>-�p�#�,�T=M�����ڬ]O�����t1!T,c�S���o�7�}�D���bԿc�l	EmZ�^ �=p3��숉W��·���	Y��Z;�K��Cn/��o=��k�
���E�tr��du�������<���	�d+�ia�����mESq�xH�Б;L�����F�-qEJs�e	�F1L�e�r�E#{���E�E�Y�R��i\�[�W�I�m���r��l�g�?��)�/�3����=�'2��7):���8?����5<�o)�׬�oyK=�F�6���N�C��$�oRy
��1����#_@X�B!q3���(,䱐�+̷��v�c��~���4�J\P�>��r������9�7Zo�_+76�^��?�ͱ��h�v�DV�q���*O%}���2�1��[Ppː8���ߴ�?K>\�߇0�T����R<6<����<;�C��@�GcW
W{
�����gYC�,��\ƙ��,{��mN����b/�G	{ 쁕m��{4��ۖ�6�~���p��r��P^�<�tN���k4��}��y�<�%R��Q8�t\[i鼞��xPE׿�kLhd���d3#�]��nK��y�µB����؜����q3���
�*K�J��ƧK���R��9����V�������b`��Ē��n2?��G�{�
�B�ǝ��x��[��]g&Y�#2'�����"abp�֨.�~��_X^V�|$]`%��3|s}`񱣐�xCR�&CeY���SDg��j
�ԜP�鋮����c���3k=��pU樸Y�p5��a�![�L�S���9�Q�|䏉�g":G�+H��;�tŖ��t��j��X���z�f���m��}�a>��2��c�tٕ��P�6��o�r�"Y��m�8䱽�%�����y�0=�X9ݧ�$-ﰐכ��;�
����)H�}�c�Xn⮗xo��eؙL;�)tCzL���$Cje��e�<ͼg�9��<5m�{p�UyҌ�)�7�7��B�]eΊ9��\\�i��������T<f�����<�"� ^��p}..�`�"��x�|z�%E�ܸ�p��aw�h����NΞM��{�ý8����"��/O��I�@�$�d@����]����(쉟0<A��r���"���k�F8q>�'�#1��*�V�}���DmM��X%��,<*Ld<P�i�cEl"�Y��9�M�~&�Y��o�Y~Id.��/�z��ךb9�׻?�~��_�U^q���a�Ie�,)>?zV��^�+�Fop��҉S5�^��ol.MNqŤ���?Һ�k��u�n�'%ť��h��jt�'��o�̪.'�G�u���Vg>GG�&<��Ǡ������:%��ee?�b��"<��$�f�� Ϧ���
�f�F�ჺ��y�uI���2�M]]��qU�l�ӐM-7��G/�%����DWu�^��<{m󱣒���$Wl\������$5�����1��3��8�����P~_`;�Dϙ*��L] �԰����èG~��!Z�a�~̇�.��a�A\�%�`�E�{��uAg��o�.-n�Ij���W�$_��|]�P�.-�[���䄇s��� _�J�K��T5��O��!�����B�2e����A5��	�8ܠ���4�}y&���G\I	�Z�Q�s諯}�e���f!q �$�
�j�`����*��	?���-��
�%N/��+������\�r��pW.%u2��v1 ��cLC�2�XS��v���Y	Ӕ�2/�,R=��ծ����ҽ�p��1<O2B�=D`O7S��s�J�5<�#��L����+iZ��D���Ǎ�t��#�N&[�"��("K�f~|}I��L簠�8���̴����
n>�<��uH���"I���t
��5*IZ��Xf��1i�l��V��80ļ����V�rs#X�Vi+�F>��򼯅����sZ�n,"��h�*}��c}l��†�������ť��uIH���JYԍ$y�}+�?w�f��5�q4�����Ԏ&8�Or�$�Jw9&��^g�䕈Y iK���'�[8�­�ı�X-�p�Vk����ݤP�̨��U_ʨ+ �*X?�!8�{zv�Ϳ
�1I�!�ݤ�����Sq�u���d��m��H�����dp����u�[��A���͝�ɀ�,����"dd>�wB�#k@q;��qR�*�	(�+�����b��V5��h�D]�EI�cU� 
�4I�$�Y5LS������Xu�L�t���.Ij�C��l���I�Ŋp�*{ʋ������f�H��h��`�)i� s(���� �"�(��F��[~�XUM1��N��M�7�v�ʩ�_}���N�l
�G$�OE&�"��"
�E^�����8�X�V)�u6�5l��㇌Hv¼�B��}$����6���/�]o*���jĊ�`qR�'5�8wiułR�A�����͊�	_W�N�TUZ*���j�V>;k1n�(�q��B��uJ��5�5�VMIg��`J���'��E&��s4C�R7Y#V�p]iU�܊O��U0[:s���aM^7�"\�Y��'e��R9�8��\6��&�*�8��`���zlץb�{��2F3�ܦ;zKi���(�^_/�+�yT�h[�TD��:4P�j��_J
U�B^-�Mٞ��9�>�ӑ=�_��_c~+�WI�"TM7L�v\��aBRic��(N�,/ʪnڮ�i^�m?��~������nk2�r�
�J����*�jmu]CSK[GWO��	
�Fg0Yl�H����������������������������������V�W��\�Evm�5����x��f���:Ȍ(�z�2Ѯ��w�AQO�%p�آ5	 �@z���sK*FL��r��P�Ԓ	�fnR��-��aW)�dk1=c�ݵ2�əL>����֮p�7搒���C�H�S}��`lؽ�@[C�C�J�*!4JI�
�wV�R�l����c�oi�6ci�8M�*��pj�V3�0[�l@��Y�H�A�Q#���w�cK~���xlV�����%N�N�=(�\�I�Y������RMn��4+�g�k���uV-��?�k��D�� �.~��P��wH�j-����I��wzF69@�
?:Qh�8Hߵ3�V�`	:c!��$�����A�ff*�6�.�t����$R���	[�
�D�ad�k�B���b������Pq��3�iP2r�n�7C��-�:?�
M��>:�͞��/jpzlP���4�OX�ߢi�w@�1��)l�1��r�ƪ�L�fܺ0f�wA&G��?#��O��"����r�+�r�,�$�6��,�ǀ��Ӄh�@4�R0`���ޜ��m�%_���f%<�ɇ�@�fh88��:R�'6IU�5�g>�4��Ӗ�"�c8rQ��n�,Vĕ��>���n䀠=�v����,�O�i��9�1��VJs�G�͖v���h��JO�vŔ
0��$�6z���Xa�fT�,�L2#�6�{ojL!�4<�l�;c��XV�	��55p8��e2:assets/lib/font-awesome/webfonts/fa-regular-400.ttf000064400000101710151327220410016111 0ustar00
�PFFTM��^���GDEF*���OS/2A�SX`cmapǠ���gasp����glyf�;y�	 m\headɾL�6hhea5�$hmtx�t�Tlocaѡ�H�6maxp��8 name:�>"v|[post�iA�{��K���_<��v{��v{���������������@��LfGLf��PfEd�������.�T:� ���@��@@����@@��@��@@�����`������@���@���������������������@���@�����@����������@��@��@����@�@���������������������������������*����"�$�.�>�D�Y�n�p�s�u�|�����������������������3�D�F�J�N�R�\�e����������������
�I�M�[�]�t�z����������������(�[�������V�g�z������������������"�$�.�>�D�W�n�p�s�u�{�����������������������3�D�F�J�M�P�[�d���������������
�G�M�T�]�q�y���������������(�X�������V�g�y�������������������������������|zwZYB81-(�����������}zpf`USC
�
�
�
�
�
�
�
�
�
�
�
�
�
�
m
H
��g��$
�
�
�
�
�
�
�@|��n��*��^���@� D�
P�F�	>	�	�

h
���^��
�
�*d�^��H���:x� �z���8��8�j�(�Z���&���>�^�  Z � �!*!\!�"~"�#P#�#�$f$�$�$�%�&0&�&�''F'|'�'�(V(�))f)�*L*�++�+�,*,�--|-�.z.�/�00�11p1�2L2�3,3�3�4>4r4�5R5�66R6������$"/.676>64'&'.7�$�,�$+u**u$O##O$��UN��OT$	**	�W"##"W���1�"/&?'&6?627/7j �� j�A	(	Ad�>>�d||&g�	DD
�g&���b~~b�BB����"*2%2#!"&=46322654&#"#"&#"6"&462&"264:7O��O7
344b3#99#3�xTTxThP88P8�O77O�#33#�TxTTx�8P88P����2"&4264&"'&=4;2�Α�Α��uu�uU C	��Α���u�uu�
>��0

���'3?GOW2#!"&5463254#!"3%+"=4;25+"=4;25+"=4;2"&462"&462"&462��`��lj����������`�pT��\TT	uu���(8276#"&#"+"&5&5466325#"&#"63232P,A+=C%gA?		')%g�E;f9-4Lf9p
�( S		� ��   � ����
2'4634#!"7P�� �����0pp��Tv��T�#.2#!"&5463254#!"362"&457676��`��l9""((xX��� �����""�0((xXP��A�*/7%76#!"&5463!2+!547&?62'7'&76� 
�� �`���Z
0+t:�A�+:g �`
 ��r��
Z+10:�A
+:����+2"&4264&"%//&?'&?676�Α�Α��uu�u.>>	>>	>>	>>	��Α���u�uu��>>	>>	>>	>>����2"&4$"264/&?676�Α�ΑK�uu�u<		�	[			;�	��Α��au�uu�
	�		[	=�	����4<2"&4264&"%+"&=4>7>54&#"/&7632"&462�Α�Α��uu�u3.

		%@&?A""��Α���u�uu�� 	
		
	
64�""@�!+2"&54732654'6"&'&47>2267." /AA]A
!-*���**����Ô%%�%%0A]AA.!
aPaaPPaa�MCCMMCC������2E#"'&54?632632#"&'7"'632'67.27#"&'&4767z
��
-AY-Ap/54[�*&%J/54[�*&%��?-r?-�$aP)"!CM��$aP)"!CM����#/;Ggo7#"=4;27+"=4;2+"=4;2+"=4;2+"=4;2+"=4;27#!"&546;54;2354;232!3!2�((`((`((`((`((�((`��0(�(00��T�(((((�(((((��`4444��*�������&2#"'#"&7>7&54264&"6?�Ԗ�j/.AJ
5Vzz�z(
&�z�z.%8FV�^�^^B3*

�2#!"&546;25#"/#��`�
	7��
	7�@� 	7���	7��H�"&%2#!"&546;32%763!54+'#"7!P�p�@��P?�@��P��M�1� @0j�h*@���/DT%"&=46;2+"&=46;2#3"&=46;2#2#!"&546;27"&=46;2#��J�		�0
		=`������0		
P		��0FF����E�#6L%#"'#"&'&'#"&767&54632%3264&"67654&'32?&/
A<@g;B
,zV@hKe�KA__�_x@1gL1R>
'6,'#+7B^6,	Y<71B\BB.# /#$;<Z2 �� �%&?'&6?63 � j�A	>�d?7D	�g&�D~b������#?O&.7>&>6766&&7>>&6&.7>76�*

'>D88(%6*

'>D88(%5
,36<FD 
,36<FD �
	)`

t7�*6%(88D>&
*6%(88D>&
i+
 DF<63+
 DF<63
`)	

7t��@�+72#!"&5463"!54#2=!37+"=4;2+"=4;2� �� �HH������`0**����d((((@�#+%#!"&=4?63!2!'5!$"&462"&4627	� 	i��N�Ni� �M����pp��M���0RZ2++"&++"&=46;2327167>322654&+4654#";2'>'>'4&"2�"11"$5."S
	
@

@
			*2V�,
 L=
	
�61""1
"(3(�$/$v,#$�&= 
&
����0RZ546;&546321;6;2+"'#"+"&'&7&'#"&7;;2675&'&'.#"#""2641"V2*			
@

@
	
S".5$"10[
	
=L 
,���"1$/$�(3("
1"
&
 =&�$#,�����0RZ46326+"&=4754'1&'.5463274&#""&#"3>=4.."264j1""1
"(3(�$/$v,#$�&= 
&
�m"11"$5."S
	
@

@
			*2V�,
 L=
	
�����0RZ"&=#"&54>76716=&=46;2''26=6767=4&'#3263264&"�"1$/$�(3("
1"
&
 =&�$#,�@1"V2*			
@

@
	
S".5$"10[
	
=L 
,������*9B++"&546;546;22=#"&=#"3%2=#"&=#"354/&+�P�P�t`JTX
j�0
~��0@0�>*���`�
X��
0@����+3;#!"&5463!2#3254/+"&=#"362"&4264&"���N��zN
�
*�H44H4G"">��`"P��Nd

h���4H44HL""����2#!"&5463254#!"3���Z�����`�pT��� 22#!"&5463!32>567!5".'&'��`��`#dd#�`�#FF#��� 0)N		N��7

7��`�A2#""&54653+"/&2#4767654&#"#.'&546�		&		8(�	N	PIg,0+ K54L +0,ep		&		(8��++%%�gIB25=1$05KJ60$1=52BGi������#17%#!"&54767>54675462!&5414&"0"&53�	��	H88H��8,B\B�4&�V



C,:V

V:,C;d.BB.d�%����#/Ka}754;2+"3"=4;2#+"=4;2"=4;2#!54;46;546;23232%354;23#+"&=#7#54+"#";;2=32=4�((�(t((L(��@
X
p
X
��p(p@
p
@��((((T(4((|$${	(

(	��CC_

0����+7%++"=#"=4;54;2327#!"&5463!24#!"3!2`X XX X`��`0��T� XX XX���`��T������2"&4264&"�Α�Α��uu�u��Α���u�uu�����/2"&4264&"6"&462"&462>"'&>2�Α�Α��uu�u��/�/!f��Α���u�uu�c\
99
'����02"&4264&"6"&46262"&42&'&".7�Α�Α��uu�u�so~)R��Α���u�uu�c-m1
����+2"&4264&"6"&46262"&42+"&463�Α�Α��uu�u�s(

�

��Α���u�uu�c-}@�'3?KWco{����2#!"&54634#!"3!2%+"=4;2+"=4;2+"=4;2+"=4;2+"=4;2+"=4;2%+"=4;2+"=4;2+"=4;2+"=4;2+"=4;2+"=4;2� �� ���```�����````b����� �� ���n������'2#!"&546;54;2354;225!3���0(�(*�����`4444�p*������%&=46"&462264&"t�4�Α���u�uu��e�Α�Α��uu�u����'7"=4;2#7#!"&5463!24#!"3!2l�l��`0��T�  ��`��T������#2#!"&5463!%/&?676���`��<�	[			;�		���`�p`���		[	=�			��A�1X&='.54767675467'".>7676#!"&546;2+"3!2=42�;1+6(-$50I;"��!0<*&>-.
���VT"(� 6  )K-;(!9 ����h)A')
	�+`	
��	����
%6&?6764&"2"&4264&"\B�B9ZΑ�Α��uu�u>�B�\�Α���u�uu�����
&732/&6%#!"&5463!24#!"3!2}�ccK��`0��T�cc���`��T������
&%#"&?67#!"&5463!24#!"3!2C�ccu��`0��T�cc�`��T������
&7546&#!"&5463!24#!"3!2�cc��`0��T]�cc��`��T������#!"&546;2'!#"&=#r���.L� h
�^���rLL�� 
h����),5%+"=4;22+"=43%#!"&546;2'3#"&=# ������T�Lh
��T����T<L�� 
h�`����+OW%#*#".#+"&=46;>7>3232>'2654&+4654.#+2;2'>4&"2�88-E/@

c
0-3	$$2Kh("m&%@

���!$,3

�
	?:/454"N)
9

G6#�&B"U����.6Z%+#".'.'#+"&=46;232>3:32264&"2654&#6&'6&'6+"#322>54&5�2$$	3-0

@

@	.G-88�]b

@%&m"(�"454/:?	
�
3,$h
)"B&�#6G

9���(8@H%/"/&?'&4?'&6762767'7''77&2"&4264&"�<G(
+(G<<G(,(G5MM[44[MM[44[�V==V=Q.!!.!�+)G<<F)+)G<<G54[MM[44\MM�=V==Vc!.!!.����&"&463276"3267&5467&j��j	%a>!"$h;VzzV0UT�2*@�Ԗ#(
>$?P9-2�z�z)$mU2T����
&/&?67#!"&5463!24#!"3!2cc���`0��T#�ccE��`��T������"264$2"&42"&4S�uu�u��Α�Α�B//B/�u�uu���Α��/B//B����#/;GYe54;2+"3"=4;2#"=4;2#3"=4;2#+"=4;2"=4;2#!54;463!232%354;23%�((�(�(X(t((L(��@
P
��p(p��,((((`((((T(4((|$$�

�HCC�����7=DJQ#!"&546;2'!#"&=##"''&76767&766>77"6467&'6&7r���.L� h
��

6'.
$
3�N-

x^���rLL�� 
h��D
.0*[�"�
#����P#!"&546;2'!#"&=#32+"'&/+"'.'&6;2476;21676r���.L� h
��


	

	
^���rLL�� 
h�	&b		+	H		k	
`b		aa
����B#!"&546;2'!#"&=#2+"'&'+"&?'&6;26763r���.L� h
��#...		^���rLL�� 
h�=N7NN($����5=#!"&546;2'!#"&=#54;2*#+"73264&+r���.L� h
�HE#
	0

^���rLL�� 
h���%
/c����(0#!"&546;2'!#"&=#57676&2"&4r���.L� h
� ((X�((^���rLL�� 
h��@((X��((
����!$1>FJ3#7#53#3#57#!"&546;23#"&=##5#7"&?5332264&"7#5�  @    @ ����Lh
0 P�2 
-@   �      ���&L�� 
h�`�W&'a  ��  ����/=#!"&546;2'!#"&=#/#"&=46;7664'&>.r���.L� h
��$$)
	^���rLL�� 
h��$8$Y

:����7#!"&546;2'!#"&=#6/+"&=46;2r���.L� h
��5hh^���rLL�� 
h�p4%h%����$'0<M7#"/&?67#!"&546;23#"&=#7/&?6&?6/5&?�99!����Lh
��	7		7!99!c66����&L�� 
h�`�	�		�O66����$+"&46227''64&"264''&"67&7gΑ�Α��/p/522�/B//B�5/p/522�58�Α��D5UB//B//p/522�5/p/522�����!6#"/&='.77'76�2<
	p+) r�%%�;�`l���!�|.;T0<�2$��-�	�����&-4#"&'&676326767'7&'7'757/?'#� ^a&'O� ^a&'O�2'G,4%=/@G�<&
G@]+G'%e:@,O+
b� ^Mb� ^��
*/%L=�4J/}45/J��>J%?4I0==	@�+/;GS_2#!"&546;>32=#!7"=4;2#'3554;2+"754;2+"=4;2+"54;2+"(

�!
+@�`=�lPx���hhhhhh�
��
!
���� ��x``P((��<������5;'&?63!"&54767>77"'675462'&5414&"&53z


��


��>��	.	|"&&8H;B4&�


�


��0

='#D�

V:7&/.B�`%����22"&4264&"#"&54632'&#"3276�Α�Α��uu�u3)?=OP<;&!$**$$
��Α���u�uu�)Q<<P#	.""2�3K2#!"&5463254#!"37&546'&76&546'&76��`��l�R@AR@=�R@AR@>��� ����V6/.4"%6/.4"%	���+/37;Ocgo#32+"=!+"=4;#"=4;2!54;2'35!355#!5#'#"=!+32!543'2+"=#"=4;2'355#+�H��HH@H@ �@  � ��@�T���`8L@�HHHH@    ��    @���4�4pp�pL
��@�CGKOSgk���%#32+"=#+"=4;5#+"=4;5#"=4;2354;2+354;2'35355#5#354;5#"=#+325#%5#"=#32+"=#3235435#5#4H�HXHH�HXH�   ��   @��� 8XHX�4   �HHH�HHH�  �       ����  @�XH@    ����%#!"&5463!27#!3546;�T��`�LLP���
hdT`��L��h
���(42+#!"&546;54632=#"&=#"3%254#!"3�0��0��*������0@0�0*���`4������%+132#!"=4;467.5#"=43!2#!2654&"p2//2��2//2h��KjKKjK�?ss??ss?LllL�`LllL���)p6+"&5<&4&/&=46>62654&+"&=4&+"&=4&+"&=4&#"/&=4&354?6�$C	+
�
b'8#I$@:H							a�+q,(rd	!

U"49#,)(
�r

		

		(
)		

t	)

9U
d������W6+"/&676546>654&+"&=4&+"&=4&+"&=4&/&376u.�
w!3 P4			

	s�O)��
�7~!($%)!ф


L		�
�		�
�		�
�	&

�w��� ["&7.7#"&463'.>6#'32?6=4/&#"/&+";2+";2#""(
X++^O8�+1b"wFFw	b
��
	��		

		

 6 
#+<+	88857'�%0�7@;

			��@�@%#5'&+"&546;7#"&=463!254/&#!";2+";2-�d�!4$r�!/!&'v�
��
�r�

c�$|H&!$40/!!!��L�
@'���,_+"/&5476'&5467&546767>3266&&?6&"/././&;267�:
E-k=,\(' 3)+ /+ $
	4
[*k+L	�*8*V R
*'"6"	Rh
��

��iz"$0V#������[k{�6+"/&676546266&;2?6=4&+"&=4&+"&=4&+"&=4&'546;2+"&7546;2+"&754;2+"f!9%�"m!'7'!-��m	�			

	DL		K
(#Tw�7�''J
w

�wT

		

		#

#		�

�	R`		`		`		`		``������ [6+"/&7'&>'462654&+"&=4&+"&=4&+"/.;2?6j 6%�'75888	+<+#0			

;@7�
("Fw"b1+�8O^++X�F

		

		��	
��
b	w����*22"&4264&"+"/#+"&=46;2'254&+�Α�Α��uu�u6+0 'Of(: ��Α���u�uu�#ZT�U3)!@����;C%++"=#"=4;54;2327#!"&546;54;2354;232!3!2PLLLLp��0(�(00��T�LLLL���`4444��*������+37"=4;2#7#!"&546;54;2354;232!3!2|�|��0(�(00��Tx��`4444��*������;C%//&?'&?6767#!"&546;54;2354;232!3!28	66	66	66	66���0(�(00��TI66	66	66	66���`4444��*������'72#!"&546;54;2354;225!3%/&?676���0(�(*���	K			,o		���`4444�p*��Ɏ	K	-n			��@�!&+2#"/#"&54?6327673#0
�



��
�



����������	��5=?	Z5=?:��.��/,�!/�����*2+#"=#"&54634&#!";?326�&&�}`&&�	��		�C
�	�&��&^T& &�� 		��	<2
	����/2"&4264&"%+"&=46;2+"&=46;2�Α�Α��uu�u(	0		0	p	0		0	��Α���u�uu���		�		�		�		����"&462264&"+"&=46;2��Α���u�uu��	�		�	'Α�Α��uu�ux�		�		����"*Kem3#"&5#'#"'&/#+376;2264&"6/&'&6?#"##36???5#'&+"6?6264&"y@
:#;U	
@v0��Q			�l	-	'9>*a!
%		�-=TA7
gn			@�

 	L
0��

		
W	;#>�X

 
$I�><3
S0

		
���3Y#!"&54767>254'&'"."#3!2'".'&'&?622>3676��`(_dQ4/V� 
77
	77	��!K

O���B)
	%F��
-

-
	,

	
,	����'+3H#32+32+#!"&5463!232!6"&462"&=463232632#���@P���4&&4&�	
''
	 @(@(0�0(����`�&4&&4�""��@�0<HT2#!"&5463!6"&462"&=463232632#7"=4;2#'"=4;2#'"=4;2#� � �4&&4&�	
''
	>ppppp���`�p`���&4&&4�""@@@����"42"&4264&"&2"&427&'#"'%654&"6322632�P88P8L((7Α�Α��8.-%%u�u%)@%$%@X8P88PX((ԑΑ���0&

'$4@SuuS@44

����'<2#!"&5463!"&46;2#"&462"&=463232632#P�� ��`		`		4&&4&�	
''
	��`��0��``				�&4&&4�""��@�$0<HP2#!"&5463!3&54632326327"=4;2#'"=4;2#'"=4;2#"&462� � !''9ppppp�4&&4&���`�p ��""P@@`&4&&4���2#!"&54635!3!2��`��`����`�v���� !"&463!2�@

�
 ���&2+#!"&546;54635!%!32�0��0��������0@0�0��`@0��������%/&//+"&=/&4?5/.?&/&?'.?>7'&/&6?'&?6'&6?65'&?6546;276?>76/76�'	H;		:H	'
'"PHHP"''	H:		:H	(
'"PHHP"]"Q*T;.		.<T*Q#	**	"Q*T;.		.<T*Q#	**	����-59E%"=4;2#2+#!"&5#"&=46;76;2'3'&+"!7"=4;2#�		��		R"d"��^��L ��P		��P		99�`P��0����@�$4<G%#!"&546;#"3!2=!"3!2=452#!"&5463"&4627676!���
tZ��t��x""1((hH�� 0�
P��0�_""�((hHP����12#!"&546;462&"2644++"=#"3!2P��P&4&6x*�*���`&&�lT$$������"2"&4264&"74;232/&6;�Α�Α��uu�u�(CddC��Α���u�uu��tdd����"6462"$4&"27+/&?632�Α��/u�uu�-tddtYΑ�Α��uu�u�(CddC����""&462264&"54;546&=#"��Α���u�uu�-tddt'Α�Α��uu�u�(CddC����""&462"264#"=#"&?6+gΑ�Α��uu�u�(CddC8�Α��/u�uu��tddt����C�!$2"'&?63#3%3'#37'377#�d����dM94D��4�4�?D4dxD3aax4����U�0``````�������%5E2"&454+54+"327#";22#!"&54635"&5!#2!46P88P8�@�

��

0%�`%%�%0B\BB\fX
7
��

@
��%%�%%���72#!"&54634#!"3!2'//&?'&?676��`��l�l==			==			==			==		���`�vT���==			==			==			==		�����+>62"&462"&462"&4&2#"'#"&7>7&54264&"6?����Ԗ�j/.AJ
5Vzz�z(
&��z�z.%8FV�^�^^B3*

����'72"&4264&"$"'&>276&"&46262/&"&76�Α�Α��uu�u6/�/!f!�l(%
&	��Α���u�uu�$
99
''A)				���� 3F2"&4264&"62&'&".?"&547'.>6"&5"'&6?6�Α�Α��uu�u�j">'	

P	
�
	
	P
��Α���u�uu�)
q

	

@	


����+GO2"&4264&"6"/"&4?'&4627626"/"&4?'&462762"&4�Α�Α��uu�u���4&&4&��Α���u�uu�kL�&4&&4	����'/7?K2"&4264&"$2"&4264&"62"&4&"&462264&"62"&42+"&463�Α�Α��uu�uB//B/<((&X/B//B5((&�

�

��Α���u�uu��/B//BQ((,B//B/�((,�����-2"&4264&"6"&46:"&42'&"&76�Α�Α��uu�u��N<=
	141	
��Α���u�uu��]"		
����/6=AEIMT[2"&4264&"6"&462"&4622+"&=4635#375#"5#75#5#75#5#326=4&+�Α�Α��uu�u���(		h000p000h(		��Α���u�uu�c#  `	(	((((		����%-2"&4264&"%6"&'&62&"&462"&462�Α�Α��uu�u2MRM)�����Α���u�uu�"
".."

N����
#+97"'&'6762"'&'6762&2"&4264&"%6"&'&62�q�Α�Α��uu�u2MRM)��		""		""		""		""ڑΑ���u�uu�"
".."

����.?2"&4264&"%6"&'&62'&7>2/&"7&7>2/&"�Α�Α��uu�u2MRM)��#&#
	
&
	�#&#
	
&
	��Α���u�uu�"
".."

V))))����*DU"&54762"&'&62766/&"'&7>27"&4632&#"2654'2$"'&7>2/�,..�RM)�)
	
&
	#&#d�Α�gC:2:Suu�u��&
	#&#
	 "EE��."


"|)),%(g��Α" u�uuS!))����
19A%6"&'&62/.7>7>7/&67676&2"&4264&"bMRM)�pF�F�Α�Α��uu�u�
".."

>
FDF��Α���u�uu�����*82"&4264&"%6"&'&62.?'&63'&4?6�Α�Α��uu�u2MRM)��
!!PP�PP	!!
��Α���u�uu�"
".."

/((0000((�����/;JYh76"&4767&67632&#"%67#"'67327>'&76762+&/.?"'&?6367>'&676u/")7Hg<5/6S:.{$9Ig30)-S:1C/"��
	
4

Z4	

4

&.:T&@R"/6D�6I;-�E�9I;0�TR"/s
Z	
4Z	
4p/%T:����6O2"&4264&"%6"&'&62'7'&6?62/&%/&?'&6?62�Α�Α��uu�u2MRM)��#
##
��Α���u�uu�"
".."

G#		#N	##	������%3ARc76"&476"'&'&6"&'6726%&>2&.""&'&62766/&"'&7>2&"'&7>2/u/"M"/Rl#l~l#_r_��'
���
&p�p�RM)�)
	
&
	#&#�&
	#&#
	�R"//"RP 2;;2 1;;�^��_	H``�."


"|))"))����:BJ2"&45'&"/.3267>54&"&=&'&6276&2"&462"&4�Α�Α8%&1;u�u;1)�)����Α��,		+'%_9SuuS9_,


,�����:GT2"&45'&"/.3267>54&"&=&'&6276/&4?&?'&6�Α�Α8%&1;u�u;1)�)!!
	PP�P	
!!��Α��,		+'%_9SuuS9_,


,((0000((����'/Db2/&"&7>2"&4264&"62"&4&2"&45'&"/.3267>54&"&=&'&6276�(%
&
�B//B/<((&�Α�Α8%&1;u�u;1)�)					L/B//BQ((,��Α��,		+'%_9SuuS9_,


,����%-52/&"&76"&4626"&'&622"&4264&"4(%
&
Z�MRM)��Α�Α��uu�u						$T
".."

6�Α���u�uu�����'/7?2"&4#"'&?64/&4?64/&762"&4264&"$2"&4��##))�Α�Α��uu�uq			�Α���u�uu������?O2/&"&7>2"&4264&"%#"'&?64/&4?64/&7662/&"&76�&#
&
	
Α�Α��uu�u##))&#
&
	
()��Α���u�uu�			�)����/7If%#"'&?64/&4?64/&7637&"&7>2'&462"/&67676#"&4632&#&'654&"320##))F&
%(%�ZS
�/4g��gg�
u�uuS-�				D

	�!	S 	1(�Α�g.,
 Suu�u����-2"&464&"6"&462"&4622+"&'&63�Α�ΑKuu�uu���E..E��Α���u�uu�u�S	-<<-	����/=2"&464&"2/&"&76&7>2/&"2+"&'&63�Α�ΑKuu�uu�&#
&
	
�
#&#	
&
�E..E��Α���u�uu�u0)#))M	-<<-	����)72"&464&"/&4?6&?'&62+"&'&63�Α�ΑKuu�uu�!PP�	
!!P�E..E��Α���u�uu�u(00b((0R	-<<-	����'52"&464&"2/&"&76"&4622+"&'&63�Α�ΑKuu�uu�(%
&	Z�E..E��Α���u�uu�u$				$S	-<<-	����2"&4264&"62"&462"&4�Α�Α��uu�uk���Α���u�uu������)1CO2"&4264&"$2"&42654'"&547&"&4622654'"&5472+"&463�Α�Α��uu�u<**<*7"@*<**<F"�

�

��Α���u�uu��*<**<F

/<**<*H

�����!1AI2"&4654&"5462275462&/&"&7>262/&"&762"&4�Α�Α�8u�u8-f-�	&
%(%p(%
&
>.!!.!��Α���:PSuuSP:r

��

2						*				D&4&&4����&.92"&4264&"72&'&#"&46&"&46262"&46"&54�Α�Α��uu�u�<&&
As�$"��Α���u�uu�#.@-P1����0A2"&4264&"%>"'&>2''&7>2/&"62/&"'&76�Α�Α��uu�u/�/!f�	#&#
	
&�&#
	
&
	��Α���u�uu�
99
'�))%)����'2"&4264&"62"&46"&46:"&4�Α�Α��uu�u�4&&4&���Α���u�uu�;&4&&4{����)72"&4264&"$/&4?&?'&62'&"&76�Α�Α��uu�uC
!!
	PP�P	
!!PHC
#r#
��Α���u�uu��((0030((0J6'		'V6��"^&�!
,��1U���	4	6Q	�	D�	6&	Lz	0�	
X:	.�	&		E	6]	&�	�Copyright (c) Font AwesomeCopyright (c) Font AwesomeFont Awesome 5 Free RegularFont Awesome 5 Free RegularRegularRegularFont Awesome 5 Free Regular-5.15.3Font Awesome 5 Free Regular-5.15.3Font Awesome 5 Free RegularFont Awesome 5 Free Regular331.523 (Font Awesome version: 5.15.3)331.523 (Font Awesome version: 5.15.3)FontAwesome5Free-RegularFontAwesome5Free-RegularThe web's most popular icon set and toolkit.The web's most popular icon set and toolkit.https://fontawesome.comhttps://fontawesome.comFont Awesome 5 FreeFont Awesome 5 FreeRegularRegularFont Awesome 5 Free RegularFont Awesome 5 Free RegularFont Awesome 5 FreeFont Awesome 5 FreeRegularRegular���	

 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJ�KLMNOPQRSTUVW�XYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~�����������������������heartstaruserclocklist-altflagbookmarkimageedittimes-circlecheck-circlequestion-circleeye	eye-slashcalendar-altcommentfolderfolder-open	chart-barcomments	star-halflemoncredit-cardhddhand-point-righthand-point-left
hand-point-uphand-point-downcopysavesquareenvelope	lightbulbbellhospitalplus-squarecirclesmilefrownmehkeyboardcalendarplay-circleminus-squarecheck-squareshare-squarecompasscaret-square-downcaret-square-upcaret-square-rightfilefile-alt	thumbs-upthumbs-downsunmooncaret-square-left
dot-circlebuildingfile-pdf	file-word
file-excelfile-powerpoint
file-imagefile-archive
file-audio
file-video	file-code	life-ringpaper-planefutbol	newspaper
bell-slashclosed-captioningobject-groupobject-ungroupsticky-noteclone	hourglass	hand-rock
hand-paper
hand-scissorshand-lizard
hand-spockhand-pointer
hand-peace
calendar-pluscalendar-minuscalendar-timescalendar-checkmapcomment-altpause-circlestop-circle	handshake
envelope-openaddress-bookaddress-carduser-circleid-badgeid-cardwindow-maximizewindow-minimizewindow-restore	snowflake	trash-altimages	clipboardarrow-alt-circle-downarrow-alt-circle-leftarrow-alt-circle-rightarrow-alt-circle-upgemmoney-bill-altwindow-closecomment-dots
smile-winkangrydizzyflushed
frown-opengrimacegringrin-alt	grin-beamgrin-beam-sweatgrin-heartsgrin-squintgrin-squint-tears
grin-stars
grin-tearsgrin-tonguegrin-tongue-squintgrin-tongue-wink	grin-winkkiss	kiss-beamkiss-wink-heartlaugh
laugh-beamlaugh-squint
laugh-wink	meh-blankmeh-rolling-eyessad-crysad-tear
smile-beamsurprisetired�����f��v{��v{�assets/lib/font-awesome/webfonts/fa-solid-900.ttf000064400000613770151327220410015605 0ustar00
�PFFTM��^��GDEF*��OS/23�V`X`cmap�j�4h�gasp���glyfTɔ�-��lhead׾N�6hheaC-$hmtx��	��locajD8�maxpN]8 name%�1�X+post�Fa�1.K��e{(�_<��v{��v{��������������Z @��LfGLf��PfEd�������.�T:� ���@�@ ������@��@����
����������������@�`�@@��@��@������@@�������@�`@�@����@���@@��������@���@�@��@��������@@���@��@�@������@�@@�����������������������@@��@
@
@
@���@���`�������������@@@@@��@����@����@������@`�������@���������@����@@ ��@��@����������������������������������������������� ���@������� ��@@��@@������� � ��@� �  ����������@@���������@������������ ��@�@���������������@����@��@�������@������
��
��
���@@��@��@�`@������@@�������@��@�����������@�@����@���@@@��@�����������������������@@@@�������@�������������� ������������������������@�������������������@@��������@���������������������@��h��������@�@��������@����@��@���@�@��@�����������������������@ @���������@@�����������������������@������������������ ���������@�����@�������������@���@������@�@��@��������������@��������@�����@���@ ������@�����@@�������������������@��@�����@��@���@�@���@���@��������@������������ ���������@������ ���������@�������������@�@@��� ���� ������������������������������@�������
�
�����A�v����������>�D�N�[�^�n�|��������������������������������"�.�1�5�:�>�D�F�K�N�Y�^�e���������������������������������-�6�9�I�N�]�l�w�z�������������������������������������(�8�[�]�`�b��������������������������"�$�4�6�:�<�?�A�C�E�G�K�N�P�S�X�]�_�b�f�m�r�t�y��������������������������	������������������������������������!�0�7�<�A�D�G�J�O�Q�U�X�^�b�f�k�m�o�t�v�y�|�����������������������������������������������"�)�/�=�@�C�G�M�S�V�[�_�i�k�s�}�������������������������������������������������
�����*�/�>�J�L�P�S�c�m�y�}������������������A�Y����������!�A�H�P�^�`�p���������������������������
���� �$�0�3�7�=�@�F�J�M�P�[�`�����������������������������
���!�3�8�@�M�Q�l�q�y����������������������������������	��(�7�X�]�`�b��������������������������"�$�3�6�9�<�?�A�C�E�G�K�N�P�S�X�\�_�a�f�h�p�t�w�}������������������������������������������������������������!�.�7�;�A�D�G�J�O�Q�S�X�]�b�d�i�m�o�t�v�x�{������������������������������������������������"�(�.�;�@�C�G�M�S�V�Z�^�i�k�r�|�������������������������������������������������
�����)�/�>�J�L�P�S�c�m�y�{��������������������%$#"! 
������������������������������������������vutspgfecaVUSNMGDB40/���������������������jH0/,)&#
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�

~
}
u
q
o
m
k
U
J
I
H
G
E
D
C
B
A
@
?
>
:
8
7
6
5
3
1
.
,






���������������������������������������������}{tsqgfa`ZWRNCA?<720-+"!������������������������������������vmba^]TO'
�
���0�d	��p
|thT���D�X(��pt �!�#�$`%�%�&,&�&�'8'�(�)�*�+�,H,�-`-�.�/X0,0�1D1�2�33�4p5<5�66�6�7@808�9|9�:T:�;;�<<<�=D=�>t?8?�@�AHA�B�C�D�D�EdE�E�FHF�G8G�G�HH|H�IIhI�JJXJ�KKDK�LL�MM�NPN�OOxO�P@P�Q�Q�R(R�S4S�TdT�UPVV�WXX�YY�Y�Z@[[�[�\(]]�^P`�aPa�bb�cxd dxeepe�fxgg�hXii�jtk(k�ll�l�m�nDo`o�pp�q�rxr�s8s�t`uu|u�v<wx�yXzzh{{�|8|l|�|�}}X}�}�~~�,��,����h�������$����(����P�������x������L�����(����`���D�������(������(�(���8������|�H���D���l�D���`����8�������@������`����h��\��� ���d���(����������\���t�������l�P�8� ������|���L��L���x������p����\����4�$���D¬�`�`�`�0Ƹ����Ʉ�(ʴˀ�T���΄���H��Ш��҄� �Ԡ�P��|�X���ڴ� ۴�|���t�X޴�,���(�l��t�8�����<�<�p� ����<�������X�����d���\������L���,�����L��������@�D���p���p����T�x<�,�tD�D�H��	X	�
 
��X
4
�����lT�X`$����<��L� �!�"�"�##�$�&�''�(@))�*8*�+D+�,�-,-�..x.�.�/</�0,0�11X1�22X2�3D3�4<4�5T5�66l6�7888t9D9�:T:�;;�<l<�=L=�>\>�?p@@�A�BxC�D�E0E�F�G0HII�JJ�J�KPLMHM�NLN�O�O�P`P�Q�R�S�T�UDU�VpV�X(X�Y,Y�Z�[[�\ \�]�^�_�``�aa�b\b�d(d�eDe�f\gthh�i,jPj�k�ldl�n<o$o�ptp�q8q�r0r�s�tttt�u�vpwx\x�y�z<z�{t{�|�}}�~������x���������P���\�������0������P����x���X�����D�X���(���D���L�����p�0���d������8���4������8���4���<���x�H���\������X�<���|����T���������������4���h�l�<����|�����p����p���l�P���`�Ø�Ĕ��hƌ������L��˜̄�D������ �������l�`�\�״��P��ۘ�<��(ޠ�L���|�T���x������x������P���|���@���D���`���d�P���P��p���0���@�����d���8�|�(�H����l�L�x���|8�	x	�
��
T�L��P��8���@��4���� t!�#l$t%�&p'D))�+P-<-�.,.�/�00�1�2�3x44�5x6(6�88�9�::�;l<|<�=�>H>�?�@�AXBB�CTE<FXG|HH�J�K<L$L�M�NTOHO�P(QQ�R<SS�TdT�VV�X<X�YxZtZ�[�]]�_`�b<c�dPeXf,gh�iLjj�kll�m�nho�p�qq�r�s,t�u�v�w�x4y|zTz�|$|�|�}�}�$��,���@����`�P� ���@���������4�`�`�����T�����|�����p�������<���������������� ���d�����0���������0�l���L�p���`�\������������x�t���t���D���l�#>%2+"&4&+"&'#"&=46;6757'&=46546;276/`B^
@


=L=]		w"  !�n	 	n��^B
##	`	00`

		

����#-6>FNV%2#!."#"&5463!2%54+"6754+"6254+"54+"354+" 2"&4264&"p		��>T>2			�@qlo���B//B/C�	 	)77)	 		�Ll�YY(�lD����/B//BA�������QY%#1"/1#"/"/#0"##"&54?&'"#"&54?454767'&5463267'&54763267'&54763267'&5463267632376327232#"/264&"6264&"#"/#"/#"/#"/#"##"&54?&'#"&54?&547'&546326767'&547632467676767461'&546326767'&46263023763272312264&"	

			





		



	

�i			�




	





	

			


��	
	
	


				
	


			"M			6
	
			

	

				
	
	
�������"/#"/"#"/"/#*##"'&54?&'#"&54?454767'&5463267'&5463267'&54763267'&5463267632376327632264&"6264&"�

	


! 





		

			 ��((vY

	


	
 
	

	


��((l�����	-%!32;5!#!"&2!546;#"3!264&+7��@�%%n�@
�@
�
�
1		`		� *��@@


��
@	


	@����@�#K"&=46;546;232++"&=#!"&=46;76;2+";7632�		@	@	@		@	@	X�"��		7/ *�
N		xx

@	@		@	@
@

@�
d
`	&
	
X����_s�"/&54?62+"/&546325462;2=462;2=462;2=462#'64/&"2?11"/&54?62k111;&
�}
&x@11111111���
 �

��

��

�H

�&0
P1111 ��!�R���$"&462'7>&#".=4627>32?>32?>0"%2+";2+";2+"'654&'546?63232+"3"&4622"&4((�			
�"<		'/	
,"		"J/<�	
�	
�_	
�!$0%l
/�	
�E��((�((B

0�8!q


2�	
	z�	
	�k
	lQ32


,)@
!

��((����7L%7654&#"#"'&54?63276;76;232+&'%3#"/#"/#"&=46g	!K��u	
TLX	
V
	7p		b�~	
[�		�	��[	EQ	7	�
���
R	�	����$,[3+6"2645#"/#"/%3#"&5:64&"%#"'&54?63276;76;2&/7654&#"H
@7			@	
[�`@
)			��K��u	
TLX	
V
	7�	@8�
@			��
R�
			���[	EQ	7�v
����'/PX$"&4622"&4&2"&42"&462"&4&2"&4'+#";+#5&546;2&264&"rb2�23
 `

`&@�@pP*4Y5��~FZv6;
 & �:UPp/)�%���� (08KS%#"'&54?6326;2'654&#""&462"&462;+#5&547#"2"&4ƴ��'1;*4Y5�
	jN��
`&@�@?
+���!/)�j		
�N& �:U.(������667#5&1!'>;2&264&"";#";+5!ܠC���g>B4Y5�0		�
�		�!��ñ=�7E/)�%�		 		�0���)y$2"&4&2"&4++!5&546;2'264&+"&?64&"&=4&"/&"+";22?626=46264/&63				7			=
 &@�@pPJ4Y5�			

(		(
				

(		(
	�			I			Z
@&@�9VPp/)�		(
				

(		(
				

(��@�+3A%&/#!"&=&/&547%62546;2&"2642654&+"3;
��
e	@	�4&&4&0	8(@(8	��

��

Z4		�&4&&4�	(88(	����3MQ%#"&=#"/&54?62546;2#"54&+"32#!"&=46;546;2#5#�
�

X	 	;�	@		���%�0���
��		N'		`4%		@	�

�

�������9����&"546;2327&54767>32&#"#";6"/&"&=4&"&4?6&+"&46;26/&4626=462?62;2+"&264&"264&"/&'32654/3264&+764&#"54632X		�
 </N!E
)�

(		(
				

(		(
				�			I			,N/< )
E)�		�T	
7.{l
&(	(	'
				

(		(
				

(		(d			I			.7
		(	'&
l��@�#+Gg"&462+"&="&=46;2$"&4622#+"&=764/.5>3"&=#"/&4?6235462z4&&4&@2
@

&@ H�4&&4& &

@
2H H
�
HH
�
@&4&&4�&
0`

�
`&D�&4&&4F&`
�

`0
&
D�
D$$D
D$$����@4547+"&54?#+"&5457#"'&54?632'&546;232+ EB	B
1g+(	 :���%
B	irBB9,�u	�:	l����	�'2'������7N2+"&5457>354&+54&+"#";;26=3267"/##546;232�%&�%$�((((�
+C�
@
C !�&&�!�((((�
+ `

����62+"&5457>32654'&""/##546;232�$&�&$32#4
4
+C�
@
C "�&%�"�"EF 
+ `

����ow2"&4%"'.546?632264&+"&?64&"&=4&"/&"+";22?626=46264/&63"2"&4�			,FH$*M@'�		
n			

(		(
				

(		(
	[						u N�[<C_�GP�		(
				

(		(
				

(			���	P75!#!"&%2#!"&=46;5#"&=46;235467632+"&=4&"3546;2+ �8(�(8�		� 		`@		P
@+"	
(8	 	@
P		@   (88�	 		 	 		
0�$88(		

�0
		 ��� (08D2#!"&=46;#";2654&'6"&462&"&4626"&46232+"&46�(88(��(88(�Y(88(�(8#F4&&4&�((���&&�&&8(�(88(�(8%8P88(2
&4&&4z((�&4&&4&
����)S^g'.7>75#"&=46;2+762#67>54#";27543230;2=4754&#"32&2#"=�"|WVyeI 		�		 8,
�1

88	
R	�879E

3>Wz�ULp"	 		 	"	$
� =<'
k ?j?�tt������,:#"&7#"'&54?632763!2#!3535#!"&53XJ::��#	�	V
��)5�@�@
�
@DD"��-��" )c��2I

���`�
F73!"&=327'#"'.7#"'&54?632763!2#"'#"'532767z�a		+$����"		�	=$-**
�		@�
�Y(m��h(Z!!pP�����;C47#!"&547>5#"'&54?63263!&5462&264&"@<��	
:��6# 28P8+!!�6		&

^�*-e>I'3=PppPEh{%6%%6����?JX7#"&547#"&=46;2$"&462#"'&54?632>32467#!"&5%2+.'63�%�(B
&@�4&&4&k����>+.B' 7-��<,����&
B(�%�:#
 & &4&&4�g�*8B.#8+#I,B��& 
#:�����W_g%2+"#"/&"&=4&#"&54?6&+"&46;26/&546326=462?6323264&"264&"�&GG&&GG&��((v�G&&GG&&G,((T������$Xa767"&=4&00.6?6&+"&463'&?6626=462?62;2+"%4654&#"r
�G		&

��	

]GG	&�	����&G���
	I	&&G~
�����OW���%2+""/&"&=4&"&4?6&+"&46;26/&4626=462?623264&"'""/&"&=4&"&4?6&+"&46;26/&4626=462?62;2#&264&"264&"p			

(		(
				

(		(
	�e55


55


�i			`		(
				

(		(
				

( �5

55



53			����.:F%+57#"'#"&=4?546;232?6;264&"2764/&"�
�J#''#9
�
5
    
�

0

,	0
0��
���)�
�P�

��
0
	0

0����.JRh%+57#"'#"&=4?546;232?6;22?264/764&"'&"264&"%26545.+56&'"#"3�
�J#''#9
�
5
    
��



""/



��
���)�
�P�

�p



�""a


0�����32+"546;5'&63!2��8�8������**���632"&46325"&463247�
8P88(�8P88(�
��%%6%�K�%%6%���!%"/&=#"&46232&264&"�d8HVzz�z,
�jKKjKd
,z�zzVH8KjKKj�����"/&6767>�/+�

�+/)k&&k�(|+�

�+|(#	''	��1�62/&?'&6?	(	A�j �� j���&g�	DD
�g&����$"&4622#!"&=46;27jKKjK&7O��O7#L#�KjKKjkO7**7O	�/;GS_kw��2+54+"!54+"#"&546;;2=!;2=54+";2=4+";2=4+";254+";2=4+";254+";2=4+";2=4+";2�

(��(

(@(��((((((����p((((((�
��

P
��((l((l((�``�``�((l((l((���/?32+"&=46#2+"&=46346;2+"&5"&=46;2#(�

�
F

�


�

�
(

�

�
�

�

�

�
��

�


�

�
	���/?O_o�+"&=46;2+"&=46;2746;2+"&5#+"&=46;22+"&=46346;2+"&5%"&=46;2#"&=46;2#%46;2+"&5�
e

e
�
f

f
 
e

e
 
f

f
�

e


e

e
�

e

e

e

��
f

f
�P

P
�

P

�

P



P

�
P

P
�

P

�
P

P
�
P

P
h

P

���/?O_7+"&=46;246;2+"&52+"&=463"&=463!2#463!2#!"&5"&=463!2#�
e

e
�
e

e
}

e

�



��


��




�P

P
�

P

�
P

P
�@
P

P
�

P

�
P

P
7'&4?62762"��%p�%��	�$p�$����aq#7"/"/&4?'&4?62762�d		
	dd	
		dd		
	dd	
		�d	
		dd		
	dd	
		dd		
	���5=++"=#"=4;54;232"/&=#"&46232&4&"208 88 8�d8HVzz�z,
d�PpPPp 88 88��d
,z�zzVH8d�pPPpP���%-+"=4;2"/&=#"&46232&4&"20���d8HVzz�z,
d�PpPPp  ��d
,z�zzVH8d�pPPpP����$4"&5467632654&'.?>+"&=46;2�08�͒80	 $bFEc$ _
 

 
�"k=g��g=j#	F)EcbG'G	�

�

��h�/?O72+"&=4632+"&=463%2+"&546372+"&546372+"&5463�		0		P		0		0		0		�		0		�		0		�	�		�	`	`		`	�	��		 	`	��		�	`	� 		�	����<D%/'&=&''&'&?&47'&767667547676264&"�	&+"	76
"*	&	**	&	*"	77	"*	&	*�B//B/�
5)1

1)5	$
5)1

1)5
##-/B//B����A�C62+"&=4&+"+"&=%#"/&"#"/&54?62546;2�	p		@		p	����"
Z8,��	
`		`
	�1���JI�����2"&4654/54&+"327�Α�ΑT:	 	C��Α�Ψ*�		�1��E�!/?%+'4&+"#"&76;;265'32;26/&+"265'4&+"3=�	D	��bb�((7		.		-bb@4,,�00���+3;3232"/&6;546#!"&=46;2?324&"264&"2�P
X
	��	

X2
�0

�1*1�
|L�
�	��	�
��p

p
11j@�%#!"&=4?63!23373'8� j��U{ p {U����+�@@����52+"&=46303.#"327632#"&4632'41463��eM-IggIB2"F`g��f8b#��/$*g�g,"@�͒.)R���)S4146;2+"&=463.#"+"&545>322676;2#"&'1+"=46;2#'�/�fM->_
1�Z8b#�=`
1�Z8b#/�fM��/$*L;	Ws.)��L;	Ws.)R�/$*���'3?K!"&5463!2"264"264"264754+";254+";254+";2�`���""""""������� `��h""I""I""�  T  T  ����%2#!"&=46;5462#54&"���Y~YP*<*���H?YY?HH**H���'276#"&#"+"&5&54662^0E;?$h>4

"!Gh] �	)#^

�!

#���/2+"&=46;254&"6;2+"&/&=4�ԖA-

/!q�q!/

-A��j0	-?
�
"OqqO"
�
?-	0j���6/#"&=46;�Yf

fy��Y
�
����#6/#"&=46;.6764'.>�Yf

f�				x��Y
�
)0).��@�%:L6/#"&=46;%.67>4&'.>&'&67>4&'.>.6764'.>�Yf

fB<DD<	1991	(-)		""	
)a				y��Y
�
�'~�~'!hvh!�`S	=F=6)0).	����#'+=3'3573#75#53'35%3#5##5333#'3#��@����@����@  ` @`@  @  ��@@@�@@@�����@@@� `� �   �#'+/37;?13333333333333333333333333333333			$										���������������������������������������������������=46;2"/&6"264���(��((���(���((����)%"/&=46;2264&""'764/32��(���((2�(��1��(����((���J��(����#/8%#!"&5463!2;2=4+";2=4+"&7!"3�		
��(88(H
���������

X4
8(@(8
nF�  ����
463!2' �@��0p���#'082+#!"&=#"&=4635463!25!%5#"&=#264&"�%	0
��
0	%

	.	@�0	�&%p	`

`	p%�
	.	
��``�`	0�H���!)#!"&546;7>;2324&"26"&462�`X~X�FdFFd&4H44H0�� !!�dFFdF�H44H4����+.%2+"&=46;'#32+"&=46;6;2'3'�		�		�		�		�0��^/ 	 		 	@@	 		 	j��������%-%+"&=46;#"&=46;2'3264&#264&+MR6�		  		�9L�W  W�?$4F	0	 	0	T9$a`(��!.!p��@�#+32+"&=46;#"&=46;2@	?P/		�		?P/		�	� 	��	 		 	@	 		��C�-I2+"&=#32+"&=46;#+"&=4632"/&6;5#"&?62+0		 	8(		�		(8	 		 PP00PP0�	`		 ��	 		 	0 		`	��PP�PP�����-I2+"&=#32+"&=46;5#+"&=463&=#/&4?63546�		 	x		�		x	 		[PP�PP��	P		p	 		 	p		P	��PP00PP00����/?7"&=463!2#"&=463!2#2#!"&=4632#!"&=463
���		�`		�		�`		`&&&&@	 		 	�	 		 	����/?2#!"&=4632#!"&=463"&=46;2##"&=46;2�		�`		�		�`		\��� 	 		 	�	 		 	@((�((����/?7"&=463!2#2#!"&=4632#!"&=4632#!"&=463		�				�`		������	 		 	�	 		 	�&&�&&����/?%2#!"&=463%2#!"&=463%2#!"&=463%2#!"&=463�		�`		�		�`		�		�`		�		�`		 	 		 	�	 		 	�	 		 	�	 		 	���/?O_72+"&=4632+"&=4632+"&=4632#!"&=4632#!"&=4632#!"&=463P		@		@		@		@		@		�		��		@		��		@		��		P	@		@	@	@		@	�	@		@	�	 		 	@	 		 	�	 		 	����+;K7'&4?62#!"&=463%2+"&=46372+"&=46372#!"&=463e``D		�`		�����		�`		U``�-	 		 	�&&�&&�	 		 	����+;K7&=462#!"&=463%2+"&=46372+"&=46372#!"&=463`5		�`		�����		�`		U�`�	 		 	�&&�&&�	 		 	@�2#!"&54636/5P���"#n��� &�K��")"&5463!2"264!5'&'&�`���.!!.!h�X�8H ��H!.!!.�pX�8H����.5462"�="
p�p
"=6#X$5"PppP"5$X#
����
6462"7264&#�Α��gLllLYΑ�Α@l�l��`�!"&54>762264&#"&54&"�6,!g�g!-5-		!/		B�4_6I&JhhJ&H8^4�@		/!		.B��@�6&?67/&?624?6#!"&5463!2+!�Z�\


��$Z$ �(��(�@mZ�

\� #Z#��(�`(��@����4;276/+"@0�%%�0���
��
�����54;27676//+"(�%�%%�%�(h��
��
��
��
�����7&4?6'7&4?6'�%%@�%%�

�
��
�

�
��
����%&546���13�6������#"&546;2%+"&546;2�`````��0`����2#!"&5463������`���%&546&546��%%@�%%�

�
@
�

�
@
���+"=&=&54654654;2(�%�%%�%�(t����
��
@
��
��@����+"=&54654;2�0�%%�0��X��
�
��������%#!"&=463!2%"&?62#�
��

�
�p�*�@@

@
39��9��%�?62"/&4#�����������%�%"/.?'&6?62�������������#2"&454+54+"#";;2=32�Α�Α�\8\\8\��Α�΃8\\8\\����2"&4!2=4#!"�Α�Αt����Α�Ώ88����#2"&4'76/&'&??6�Α�ΑrBB(	AA	(BB(	AA	(��Α�ΨAA	(BB(	AA	(BB(����"&46276/&'&��Α�΄��Fh'Α�Α����Fh����*2"&462"7>32;2=4>54&"264��Α��`J+	#	8H &&'Α�ΑR@		

	&*<�&&����'2"&4$"26454+54+";#";2�Α�Α	""@X��Α��#""�d@���'OW%2++"=.'#"=4;>754;2>7#"=4;.'+"=32+54;24"&462�eF(FeeF(Fe�,?
))
?,(,?
))
?,(�(FeeF(FeeF�
?,(,?
))
?,(,?
)y����
2"&4.67�Α�Α�`�4&��`�4��&��Α��`&��4`&4������%"/&4?62!2#!��x

��x��s
 
s����762"/&6?!"&=463!'.���x��

x}��s
 
s����7'&4?62&/+"&5#��s
 
s���x��

x����%"/&4?646;27>���s
 
s���x

��x���&='.54>7546��1D2
#02LP4�

X*@+U,,B)	P
����!2C546;2++"%4;2+"=#"52+"=4;543+"&=4;232
|T( |
(T�
|T�|
(T|
(T�
|T�|
(T�
|T����!2C#"&=4;232%+"=4;54;2+"=#"=4;2+"=46;2+�|
(T��
|T((T|
�(
|T
|T(
(T�XT(
||
(����#%2++"&=#"&=46;546;2�

�
 
�

�
 
�
 
�

�
 
�

����%2#!"&=463�

��

�
 

 
����5%/+"&?&/&6?'.?>'&6;276�	�&�	��	�&�	�r	"	T��T	"	NN	"	T��T	"	N����"&462"264';2574&+"��Α��T&&Z0@'Α�Α��&&������
.7A353#"&53#2#!"&=46;&54632>32!3.#"3264&#" ��
�
 
	� 	
,
4$..$4
��V#!� ����
@
P		P
$4 $$ 4$5""$%����@�'&'.7>3264&#"&546;26762"�u8[5	 @Q}G		�upPP/O�BN��	.%,.
/>0"		TPp/)����!"&547632654.676�#11#q�q7%&
"�2,2M/OqqON9U&% "*=%
@�+%"&'&47>22654&"72"&54732654'6=*���**����<TTxTT<(88O9	�PaaPPaa�T<<TTxT�8O99'
	����/E%27#"&'&4767#"'&54?632632'654&#"654'6320@

4)%[�*iRs���EN[�*3IT<4'I	

'80)
aPQ8M:�c&aP;+9<T!98'����H�!%#!"&762"264';2574&+":
� 
�8&&Z0@00���&&�������@�(2++"&?#+"&?'&6;23'&6;2�BBri	B	1g+(	  	(+g1	B	i'2'�
�:ll:�
�����	!-9EQo!#!"&%;2=4+";2=4+"';2=4+";2=4+"';2=4+";2=4+"2!546;546;23546;2���@((((�((((�((((P�@0	 	�	 	���((�((t((�((t((�((@000		00		0���;%&=#"/73546%"=4;2'!#+"=4;76;546&5�P;F55 �coF55  �oT�;PPYP(K:9(g8K:9�8�(PP�����2#"'#"&>7&54�Ԗ�j83AL9�z�z3
19JV���>#"&=46;2%+"=46;232".54546;226=46��hW�h��Nt{tO�2<2,PPP|,	Ht;;tG14-44-4;�E/&/&4?62�����=����;�E7'&4?>76"�����C������}�!C%"/&4?625#"/&6;2762+"&="/&4?62"/32vee(�	�
(���
(ee(�	hdd+�
�+
�+dd+���B�.%#!!2"&547#"&547#"&=46;2!2��
 !.!�!.!FF

g
	�� #!!!! W

-�2#!"&546;��`�@@� @D�
%#!"&?63!2%"46;32=I%�pI%��T,
E�@��| | 8v@0�/?T%"&=46;2#3"&=46;2#!"&=46;2#3"&=46;2#2#!"&546;2M&:&��&:&�		�0
	 	�����FF��@	 	
P		�����-5=M!2#!"&546";2=4#2=4&+"#"3264&"62"&4265463264&#"0��`	t@	���dFFdFTH44H4!	
		&���` 	
`J	-$��FdFFd�4H44H4	
		&���!)#"'+++"&=4?&54632264&"gI%
(
p
�	gIIg�((Ig(
(

N
�Igg((������;C����'&'&?&'#"'&76;67'&767667632+/'>'&/'.=&''&'&?&7'&7676675467676>.6'&'&?&'#"'&76;67'&767667632+/'>'&







&	
&	g"	!
&&	
 
!!
 	&&
 
"{#0#0	







&	
&			
			
	

	>##�
(
""
'
 
'

"	

	"&
50#0#�		

				

		>##����B�)#"'#"&767&5462#"'#"&'32654'�zV<3+.&z��.+3<@hc�9HB�^
")3B^��"
6,qO	Q13�� �
&?'&6?6 � j�A	��HD	�g&�����+%+"/&=#"&546?#"&=463!2+*&0
�
�
0&*



*�;%
h00h
$<v
0

0
��@�3;C232#!"=46;5.'&'&=46;5463!2&'#%5#676(
>0>"

0%��%0$>0>
h

��@�@#�
88-"$HH
&"-88
(

(�
)--)
���/7?%#"&=#"&?62+7#!"&=46;;26=324&"264&"2(P
X
	��	

X�
�0

�!P!�
|L@
�	��	�
p

p
!!j�����#5&.7>&>676>.2327>�"		
'BF:;-+
+"		
'BF:;-+
�4j
^�"+
+-;:FB'
		"+
+-;:FB'
	c
j4,^�����#"/&?6>7'&?6���p1;[<0����h0<\:2p����.2#!"&54632654/"#"'&#"���.x�A
%#KF	���`���x	FK#%
A����&%2#!"&=46;5462+"&=4&#"���Y}Z
 
+*���f@ZY?

*+g��@�	!+=!#!"&7;2=4+";2=4+"!5463!2@� ����HH�����X((((00����06"&462+"&5.'"&=463+"&5.'"&=463�%5&&5�	0	wT	
t��	0	ː	
s�t;5&&5%o
	Tw	0	�t
	��	0	u�@�#+%#!"&=463!2'!"763!2&"264&"264@� �0� aa3s�``<��`��@�,4$#"/&++"'&547#"&=46;2?632#2@ 	UBUK"%%�UBU	@!TkkT�J�
D5+"#5:%`%5D
��C`C�����;%//&/&?'.?'&6?'&67>7676�.

?>	--	>?

..

?>	--
>?

�-
>?
..
?>
--
>?
//

?>
�&6>%+#*#"&'.=47>763232+"&=46;24&"2d

'(#GE
	��`
0

0
�
+%#$$
	�

-+
�

�
��&6>3&'&632#*#"&7.7.7#"&54632+"&=46264&"-�	
EG#('

d�0

0
$
+-

�	
$$#%+

�

�
�������&6>2666+"'.'&54654632+"&=46"264�
+%#$$
	�

-+
�

�
��d

'(#GE
	��`
0

0
������&6>5&547>76;2'''#"&546;2+"&64&"2\
+-

�	
$$#%+

�

�
��	
EG#('

d�0

0
����%"&462'326=4&+764/&"2?64gΑ�Α�L�

�L��8�Α��H

H������%2"&47#";2?64/&"�Α�Α�L�

�L����Α��H

H������%6462"'7;26=2?64/&"2�Α��H

H��YΑ�Α�L�

�L������%"&46254&+"'&"2?64/&"��Α��H

H��'Α�Α�L�

�L��	����
"+17=#>2473#%#&'%#>#64'#&4733"&673%3.P�0:0���Bl#5S��$lSk		r�r		r(�0:0�$lS��l#5S DTT�@  @ �\2K[2\3K�    !>!@"!>!!DTTJ2\3K~\2K�����$'"&4?&67>76264&"�	P&�5%�
J$JDK
�<S$I
�%5�%Q	
KDJ�������+3CSc"/&4?62762"/&4?627622"&4%2#!"&=4632#!"&=4632#!"&=463�I
/
@
H
/
@
\((�		��		 		��		 		��		�	H0
?�
H/	?�((	 		 	@	 		 	�	 		 	�����2/&='&63��P
�����
8��'+%53#!"&=3;2672!546;546;2#5#@��`�	`	��P�@�p0��0		�PP00  �����;%"/&6;5#/&4?635#"&?62+3546&=#32`OO3eOOe3
OO3eOOe3
OOe3OO
3eOOe3OO
3e����%9G6"&462"&4622+.'63*&4622#!"&=46;27'#"&=46;2z4&&4&�4&&4& &
B(�\BB\B#0C��C0	!F!�(B
&@�&4&&4&&4&&4F& 
#:B\BB\bC00C
:#
 &�����%K"&4?62?64'&'&5&?66&'&'&?>'&"&'&4?6G,,D,~Y,&	
<C	jY,&	
<C	
,,D,-~,D,Y~,&
	;C<
�Y~,&
	;C<
	-~,D,����%#!"&5467454632632,:K5��<T6*^B,J(8�	F.5KT</JB^,$8(����%%#!"&?5#"&=46;2+3'&=#�(*��*(u

�

��0@,#II#��



�iN
��
����'/7%"/"&46327'#"&462762264&"264&"�		Ft8P88(!!(88P8tF		����	s(88P8!!8P88(s	F������#,!#!"&546;3;#!"&546;#532@
��

H!�
h
��

�y`
(

p
��!X
��

p
I
`������2&6?62&'&6?6?64'&"2?6"++,�"^!!!�@��		�(�3H��-~--�"""_!�?��		�*�K5��-����(#!"&5463!2264&"4/&+";25����6%%6%���>��`��%6%%6h����2#!"&5463������`����/"&=463!2#"&=463!2#"&=463!2#		�		�`		�		�`		�		<	(		(	�	(		(	�	(		(	���'7G2"&42"&42"&4%2#!"&=4632#!"&=4632#!"&=463((((((�		��		@		��		@		��		�((�((�((	 		 	@	 		 	�	 		 	�����*:JZt�7#"'&?63254+"/&?67#"=4;20%2#!"&=463%2#!"&=4632#!"&=463'"=4;5#"54?6;232#"=4>54#"/&763232#>	9�		��		@		��		@		��		�D		
'/		
		�	 		 	�	 		 	��	 		 	�@X����/M%2#!"&=46;&'&546;2#"'&+"3+"&/&54?632;2654�		� 		fH4D%=	+
BW^H4D%=	+
B�	 		 	3I' 
`3I' 
����/?"&=46;2+26=#"&=46;2+"&=2#!"&=463 		�		 /B/ 		�		 ^�^p		�`		�	 		 	�!//!�	 		 	�B^^B���	 		 	���2#!"&54635#75#5#75#��`�����������`��``�``�``�``���'+/?/?/?"/&47627'�    �5555E5555b		��	
U		l	
;W3V`   `555�555�
	��		U
	l		�V3W����'/7<%2+"&5#"&5#"&5463!232264&"264&"75'#p		08P8�8P8@,d�,((\((�d,`	 	(88((88(@0dlp((((�dp��!&+2#!"&546334&#5265#264&"5"75#`

��

@%%@�B//B/`%@@%�
��

@
��%�%�8P88Ph@%�@%W9!2"/&6
	��	
	��	`9	%!"&?62!��
	��	
`	��	'�Y/&4?6�	��	A��
	��	
'�Y546&	��	?
	��	
���2#!"&5463#!#��`�������`����
��3�732"/&6%+"&?62)�ww�w�wwiw
��3�732"/&6)�ww�ww
�4�%#"&?62�ww�ww�86#!"&=462>76".#&'&=463!2"��`!yv�z4	�	1}��X	

Ue	Y(&[	����+7#"&=4;2>3#"'&?63264&#"32��0#a6g��g_G
	"	2BIggI+Jb��N'+�͑@		",g�g'!0���7%"/&4?'"/&4?627'"/&4?62762�|(Q		s		.		s		Q(}q�}(Q		s		.		s		Q(|q����D�2#"&?#"&?>;2(�.w 	�* ����	�����5EU72+"&=4637#546;5#"&=46;2+32#5##52+"&=463!2+"&=463�

`

H0�(

�

(�0�0H

`

P

`

`
`

`
P0:@
`

`
@:000P
`

`

`

`
����B�-C%'."'0.#""'.&7>75462632#"&'&>3265@57	(74�\\���/!*	�

#+
'"+$
cz



zx�!/
		����/8#"&546;6232#"6"2643+"&546;7#532�h

QJQ
�!*�h
�

�r`
B�
P
  
H!y��

0
h
&`B��`�
 053+"/&46320#41&'&7264&#"26546`�
>	`dKJg,%�%,�		.B		/&&
 GigIB2+00+2�		B.		!/����U$"&462462"7#!"&=4672654&'527267?6/546?6=4&'jKKjK��6J��@0!.!:$00 
$�KjKKj��N5--1KQ!!R

.,, 
*,���?G2#"&'.=46?6326='.?>326=&7>264&"�& gIGg7I?
	9('8

?I7A-.B!$			P%%qEc_DY9�	
	
{(8:'z
	

	�9X):=+q&%P			���	
!46;235+32#"&546;�����00�`00 ��p�  P�`��������)"&537#!"&54767>54675462�4&��	��	H88H@%q



C,:V

V:,C������'7"&=463!2+##3264&!"'&763!2�(8
�5KK5 8(�  &&�!	
H@8(�
KjK(8 �&4&�� 	����'3;GSo!54;46;546;23232#";2=432=4+"#"3547#";2=44+";25'3;2=32=4+54+"#"��@
X
p
X
�((�((t(@4((�((
,h
H

H
�� ((@((�TT`(((�����'/KSX%2+"&5#"&5#"&5463!232264&"754+54+"#";;2=32264&"75'#p		08P8�8P8@,d�,((�808808�((�d,`	 	(88((88(@0dlp((�088088�((�dp���
%I3546;2335+32#"&546;4&+54&+"#";;26=3265` � ��@ 	0	 	0		0	 	0	 `00���  P�`���	0		0	 	0		0	����/%#32+535##'53535'575#5#57335#532+3 ``�0u(s0C"0@@0"C0s(u0���PE*EP������".:2#!"&5463!254&+7626=4&"26=4&"p!/Q
��


@	07	�			W			`/!�'
$*

�

(с	�E	�		�		�		�����3#!"&5463!2#"#54&+";26=3;26=4&���`p 	�	 		 	�	 		p��`D	PP		�		PP		�	����+2#!"&546354+54+"#";;2=32���@\8\\8\���`�8\\8\\�a)?62"/&4&4?62"'�``���``ш``��``�a)7"/&4?'&4?627"/&4?'&4?62�``���``��``��``����A�)7"/"/&4?62'62"/"/&47��``��``��``���``����A�)7'&4?62762""/&4?62762��``��``��``���``�a?62"/&4 �``�ш``��a7"/&4?'&4?62�``���``���XA("/"/&4?62��``� �``���X@(7'&4?62762"��``�`�``���@�#2+32#!"&46;7#"&5463!�H

��

H��@���00@�� ������!%%2#!"&=46;;267!463!2!p	&�&	�
=��@�� 	&&	p��P�������2#!"&5463264&"������`�� ��@�2+"&5463264&"�c��`�� ���9%2+"&=46;2+"#2+"&=46;2+"��^B

&��^B

&���B^
0
&@��B^
0
&@���92+"&=46;26=#"&=463#2+"&=46;26=#"&=463�^B

&P�^B

&P��B^
0
&@��B^
0
&@����'/7"&4622"&462"&4 "&4622"&4$2"&42"&40(((((�((��((((B((��((�((�`((�((((�((((B((����2"&4�Α�Α��Α������%2"&4"264&"2646."'&2�Α�ΑU��#n#-���Α���**6����%2"&4"264&"264>'&"762�Α�ΑU��-�-#n��Α���66*����2"&4"26424+"36264&"�Α�Α������Α���  ��`+3;2#"'##"&46354+54+"#";;2=32264&"6264&"�B^^BC/\/CB^^BX4444�""W""`^�^00^�^�4444@""I""
@�'3?KWco{���)"&5463!254+";2754+";2754+";2754+";2754+";254+";2754+";2754+";2754+";254+";2%54+";2754+";2� ��\((`((`((`((`((��((`((`((`((��(( ��`(( ��((((((((((T((((((((T((((((���-3W.'76#"&#"+"&5&546623256%5'5&'&56765767556�	2	2�;?$i>4

"!Gh0�"(#M'##&>&#7.(!?&#%% *D��	)"^

�!
#�HF
�GH	DDGFFDDHFG������$%"/&4?'&4?62#!"&=463!2����w
��

0
������

 

������+'&76'/&?6/&?'&?6=�=�}	�

�	+		[[			+		[[		+	�

@��*t	�		�	.	PP	/	.	PP	.	�		����@�.76&76&'/&4&4?61'��3N>!0#9T�x�mm�

S)F/,UZR
T
��

^^
����	�6&=#"&67�/�-%�
�/�`
�%-���7%2++"&53#"&5#"&=46;546;27#5376�

(
0
�s�
(

(
0
�s�;;`
0
(

�`

0
(

��`;;�����4<DL"&54675.546267>767.5462$"264264&""264�
- 2
/B//B/9 /B/��						�			0**	)!//!*�*!//!*�	
*!///			��			7			�����/?%"&4?62?6/&?62/&?64&""'&4?620		-,~Y,-	(-*<-(		-,~Y,-	(-*<-��G�*	-,Y~,-		(-<*-�(	-,Y~,-		(-<*-����G��z�(02+"&=4>7>54&#"/.762"&4�Bn%%
H

,"+?F:((:(�Z@ 1


"![��)9))9����&735#"&=46;232+"&=462"&4p�6<**<*�0�00�*<**<����6"&46246;2+"&5�/B//Bh
^

B
1B//B/G

��


�S2+"&=46;5#"&54?6;2'2+32+"/+"&=46;7'#"&=46;2763�		`			
0	�		!NN!		CPPC		!NN!		CPP 	 		 	`	 		�`	0	pp	0	ss	0	pp	0	ss���S!2+"&=46;5#"&54?6;22+32+"/+"&=46;7'#"&=46;2763�		`			
0	�		!NN!		CPPC		!NN!		CPP	 		 	`	 		��	0	pp	0	ss	0	pp	0	ss�����%32#!"/&4762%37���`(���|PrD��(`(�(1}PC��@�E%2#"&#"".54654&#"&/054&54632>?032614-.$#$%54@p '#$(::)	2�&#$##
0	M
2	20Ek��`�<6"&=4627232+"&=46;5.=46;26=463�P88P8@	WA8		�		8AW		B19T	`8(�(88(�(h	0Bc	"				"	iD(		*3NM80	������#C'&?654626=46;22+"&=46;5.=7z	
��	
�8P8		L		�		8AW4
<)2


	�

	�-(88(�0		0*&�				"	iD)(9'"����
+!2#!"&54%#!"=46;54;2354;232�����X0(�(0��,$4444������6>6/&5#+"&=4675*.767&632347264&"��
()
�
)
	<!":
�			�t4!�

�!5

		L1-			���*2#"&=&/&6?#"&54?>;>32264&"�D<b
	3	h
1h'dH3 
�""�!2Hd'h
1
h	3
	
c
=C�""����"&462%2?64/764/&"gΑ�Α���ee�8�Α��V�ff�����2"&4'&"2?64�Α�Αj�ee���Α��V�ff�����6462"2?2?64/&"�Α��V�ff�YΑ�Αj�ee�����"&462764/&"'&"2��Α��V�ff�'Α�Α���ee�����B�BJ7"&?6+5#"=4;5.54632+>7#"&?6+"&'"264
DD#R044$9((7$440R#DD ���`DD'1�(
2(98'2
(�1'DDIWWI ����&2%2#!"&=46;5462+"&=4&#"54&"26���Y}Z
 
+*p""���f@ZY?

*+g�00����2"&4264&"62"&4264&"�Α�Α��ll�l�jKKjKf4&&4&��Α���l�ll��KjKKju&4&&4x�$"&46:"&4$2"&4H*<**<t<**<*��<**<*�<**<**<**<**<**<����2"&<62"462"B<**<**<**<**<**<*<**<t<**<*��<**<*����);2#!"&5463264&"265.'"3;265.'"33���,((�uS<U��~f����`��((Su#U<}�#�f����2"&464/&7�Α�Αl���Α��k�����2#!"&5463!2=4#!"���,�����`��88����!"&5463!2'76/&'&���`��Fh `��b��Fh����)!"&5463!2?6/&7'&"?64���`��	9�7g7 `��.�9	�8	7��A�@&="'.54>3546463276#!"&546;2+!8�-?0	+-FJ/��
��y	3@�H
';(
O)*>&	H��Y`������>2"&2"&46&?67�GΑ�Αv�B���Α��B�B����#!"&5463!2?6&+"���`��||�p��`�||����5463!2#!"&%'&;26`��d||�`���||����!2#!"&54676/&0`���||���`��||���B�B%#"&'#"&=4;&7#"&=4;>32'&#"32+32+32767	Mp!oH(>�
��
rA*",VF@P	,(#	
		'/��@�1%2#!"=4;5#"=4;54632'&"32+354634��$O=7/		7"TT{`h(�(B7G#
$!@(3����*�A7+"&="'.?6;2654/.'&6;546;22'&+"�,-:$	 	0&"

B
g".A1	 	0&"

B
	�
T-!'0		0"	


4"1G0		0"	

	��@�4#32++"/&=46;267#"=4;&+"&=43!24I	;5L9�S�T'��)U(`(8F��5 (-(��n�:232+32++"=#"=4;5'#"=4;'&6;236?63_P:Xll8llX:PA77�� % \\ % �qH%#q����)27#32++"=#"=4;5#"=46;54;2'32654&#�\��;4444�@QQ�M$((#� (44( -�O�Qۖ)#"(��@�ENRZdh#32++"/#+"/#"=4;'#"=4;'&6;2376;2376;2327#32>?#;'&'#7#136?#4?FU*
9	+7*
9	)TF>0*
m	,
n
.0�x&Q��'Q (�		��		�( (Q		VV		VV		Q(�66/�  	66�  ����;#!"&546;#532�
�
��

Ƞ�
b8
��

�
z�b����)5>;#!"&546;54+";2=4+";254+";257#532�
�
��

�@������`�
b8
��

�
��LTz�b������5OR72"/&6;46;2%232+"&=4?#"&=4637+"/#+"&54?6;23'�PP0	 	 	=8		�	=8		�	G	;*4 ```0		��@	
F	 		
F	 	U	

	�e0������5OR"&?62++"&5232+"&=4?#"&=4637+"/#+"&54?6;23'PP0	 	`	=8		�	=8		�	G	;*4  ``��		0�	
F	 		
F	 	U	

	�e0�����%5EU%2+"&=463'2"/&6;46;2%2+"&=4632+"&=4632#!"&=4630		@		@PP0	 	0		�		�		�				�		 	 		 	@``0		��	 		 	�	 		 		 		 	�����%5EU%2+"&=463"&?62++"&5!2+"&=4632+"&=4632#!"&=4630		@		�PP0	 	p		�		�		�				�		 	 		 	``��		0	 		 	�	 		 		 		 	������4<R"&54?6;232+"&=46;56&/&767.7>264&"2"/&6;46;20	
0			`		
(>*,


	$+
"�PP0	 	`	 		p	 		 	@�1'3>=&\``0		��������<R%6&/&767.7>264&"'"&54?6;232+"&=46;5'++"&5#"&?62J(>*,


	$+
"	
0			`		�P0	 	0P�1'3>=&\�	 		p	 		 	@;`��		0`���D72+"&=463264&"32#+"'&#"&=47>767632h

P

X e#


*!0H#5�
�

�
�y?#.) �M,:$���D46;2+"&56264&""'&'.'&=463276;23+
P

P
(5#H0!*


#e �

�

2��:,M� ).#?$����"2"&4++"&=#"&?6;732e6%%6%�8
 
80%%�%6%%6��h

h�����$2"&42++"&=#"&=46;7E6%%6%p

@

%%�%6%%6k�
�

�
������/72"&4/"/&?'&4?'&67627664&"�P88P8V

^!
d0/d
!^

^!d//d
!cKKjKK 8P88P/d
!^

^!d//d
!^

^!
d�KjKKjK����"&463276j��j/7�]$h@�Ԗ^6^y-2���	%3!#!"&7;2=4+"%2#!"&=463 �
��
�hh 
	� 	
 ��
��
0		0
�����?E%+"/#54+""'"&4?&=#"&546;5'&4623762322#4
7=	
6(33(6
	=7

8/	
6�6
	/8
��\B�
 <
	7 �� 7	
< 
;.
	77	
.;B..����!"&5463!26=4&���`�|| `��d||�����2"&44&"2�Α�ΑH/B//B��Α�ΈB//B/���*@%&/#"&'&54632+3276'#"&54673267�A>� (# �		y�	9%�W5Ig=2B.*?>
!	��&$%!	 	 {7/:gI7Y'3.B7)����:%2+"=&=4?5&=4?54;27676265463t{eP1		71		78�		��		�Fb�dp�)
)
E3)
)
�MH����3<%#!3#5#"&="=435"=435463352#!226&#"Q//4E��	�(B+*7"    "7*+B(�	E5�4
#$#��%@((@%��#$#
p((@����%=2#!"&546322>36754&#!"".'&'3!265����
J(
��
(I	I

���`�5 

 	5		5�

����%9+#!"=#"=4?622#!"=4637335335332!54;��x��
�0
8@@@@@$�`$@XX��

�����#./+"&?&54767'&47%67"&57n���	8	0
�p�p�!'"U<

ss
	"U�,q%%q,
 �`DNd7#?%2#!54+54+"#";&'&767?6'&'6732%463!!"&57;2?3;26/&+"�&�

��@@r			





 ��
��
;		<		9	 	�&&!�
��
@x
	


		



##l
��
8
		
����%5EU^n2#!"&546;254&+";26=4&+";2654&+";26=4&+";26=#"&=#'2+"&5463�

��

�
	.	�	 		 		 		 	�	 		 		 		 	0	��

 

 
��

�
	.	
�� 		 		� 		 		y 		 		� 		 		w@	0�@
��

@
����)5=IUa2!54;463!2;2=4+";2=4+"2=4+"354+"754+";2=4+";2=4+";2��@
P
��((((4(t(�(((((( �

�8�((l((�((�TT�((l((l((����)462"6+"&=#+"&5'&462376x*<**<�	_



_	
VfV
Z<**<*P
^��

pp

^
	WW	�����"*262#"&#"#"&546&.>.>.6.>�L\>&"LM"&>,*,�/-/-�,*,E/-/�C_&&_j4-
4-
&A7&A
-4
-47A&7A���6/&=46?7575����������N�
hh
�HNN��P�B���!'+/37%//&=4?54?65'75'57'57'�dhhdad

d"UwfffUUfffVUUfff�	n
2442
n	$l	&&	lI$E�))&��K'O�''*FK'O�''*�����8T7/;2+".?'&6?67&"/&?6276/.?+/&?6326/&?6�	(3
44$6	3)	n|	$	"
j*(	n	(�	6$`PP`

"
�

Q!(0A"QI

--B
n�"A00PP0!,

���5?N]2++"&=!+"&=&=47#"/&6;7>;2%!'.+":>54&"!264&":�	
 
�
 
	<9"�"9���9
"N"
		06

  

60		* && *22
�!!���19BJ%+"&=!+"&=&=46?>;546;232264&"7!'.+"264&"� 
 
�
 
 +
�
+��5
�
�#0$)

  

)%0#U" 

 "�]C�������-%++"&?5#"&?#"&?#"'&?62++z
�		`		�
P	O
nn
O	F11Z[
uu
[����"&=462"&= "&= ����������G2G���G2w.++.++�g++g1og++g1����$@IM7.4326673#!"&546;&'6'.32767326'&7#532'6�3
O
��
��

�&$>$

O�
%+�(6V
��

�
�
�$/
76 &
>"	�
�������;D;#!"&546;"&'&+"&'&+";27673;2?6&#7#532�
�
��

�9
	

%
%		&
&O�
b8
��

�
�
es		s_
	�		cX		�	��b����4=;#!"&546;6&+"4'&+";2767;26/7#532�
�
��

�<#%%#<<#"#<��
b8
��

�
�ED
]^=!$^��b����";72+57#532;#!"&546;4&+";26=:>�

��
7
�
��

�5(!Q�=�
��
��

�
��!,�9����"-#5323#!"&546;"2645'&'&��
b��
��

�j''�(	g((F�b0��

�
�
((�p(h((0����&*K#5322"&47;#!"&546;3533526/&+535#535#535##3#3#y�
��
�
��

h @� 2
           W
����
��

�
     ��&W
            a����!/=F;#!"&546;54&#";67764'&7&7647#532�
�
��

�@$$!
		O
	
)@�
b8
��

�
�l�$8$8	;n
N	*u��b����4#532;#!"&546;4&54&+";26=65��
b�
�
��

�`7
p

p
7F�b
��

�
��7&

p

&7����3G`#5323#!"&546;7654/7654/&#"32032?454/0#"764/&#"327��
b��
��

�s((AA5>>�A((F�b0��

�
�
�$$==1��g=$$����
!'2"&4%&'264&"'677&'67'�Α�Α�?�P88P8 @m?�@��Α��@�8P88P�?�@m?����"46#"&'46762654&'&5 Qi�fg�iQ:Ll�lL:��Vg��gV�b?LllL?b�����6/&=6&'.7�
H
}@
 ���j
��P4M
Q%�,����%7#"'.?>3264&#"+"&=46632/546;2��gXD2@LllLI53�	2Hcg$A

)'͒7(l�l23	�2E��3�

h ����K32+"&=46;5#32+"&=46;#"&=46;2+35#"&=46;2#� 		�		 � 		�		  		�		 � 		�		`��	 		 	��	 		 	@	 		 	��	 		 	 ����!++"&5#+"&=#"&46;2�	0	 	 	 	 B^^B�	� 	��		p��		p^�^	���#Gk%2#!+"&=#"&=46;546;2%2++"&=!"&=463!546;272++"&=#"&=46;546;2�		��	 	P		P	 	P		P	 	��		P	 	P		�	 	�		�	 	@	 				 			�	 				 			�	 				 			����%%2"&547'#"&46327&5462#"'6`(88P8f"(88("f8P88("ff�8P88(
@8P8@
(88P8@

@����5#!"&5463!2"'64'73264&"&#"327264&���`�DD!!.!D!!D!.!!p��`�))!.!!)!.!)!!.!���'/7?O"&4632762?2+"43&2"=&?6'&6/&6463264&#"26�4z�zzV-)4M0.	U	;	��&		(8		h4)-Vzz�z4<+					�&		8(		����%*"&462'7&''77'77'?6'7��Α��a?"'>KK>'#?&U%>>%U&�NN'Α�Α�:T6**6T:B4"MM"4\88\
���!-9EQ]iu�����>#"/&5057&0#"/&54+"=4;2+"=4;2+"=4;2+"=4;2+"=4;2+"=4;2+"=4;2+"=4;2+"=4;2+"=4;2+"=4;2+"=4;2D��D
+W``W+`((`((`((`((`((��((`((`((`((��(( ��`((XD11D

E#
<##<
#E�(((((((((�(((((((�(((((���	1;?#546;246;#+"&=>%+"&=#532%2#546353�`	@	��
` 
`
�
`
 `
��	`	p@�00		w
��

,,G)99)G,,

��s	00	�������#+#54622+#5.=#"&=4637#5462@@0		I7@7I		p@�``
�	 	 9YccY9 	 	�``
@�&2>JV2#!"&546;54632=#72=4+"3!2=4+"3'2=4+"3!2=4+"372=4#!"3(
�(!
(
(��h�8�h�����
��!

����``((������,'& /&47>2"&4%'&"/&4762{"n��n"W��6%%6%"?�?"W�%"dd"Q99��%6%%6y"

66

"L����/?O_o2#!"&546354&+";26=4&+";2654&+";26=4&+";2654&+";2654&#!"3!26���P&&&&�&&&&�&&��&��`��M&&�&&{&&�&&{��ff������#.4'&?66754621%#"&547>"&53z	
��	
�%=8H	�~��	�4&�


	�

	p1


V:,C
��

2�%����!2#!"&=46;76;2!+"&�		�`		x	r	�����	 		 	

�MS������12"&4654/.#"&546326?654'.#"32>�Α�Αm"#'("$5>RQ? 8��Α���"
0 !+#R=>S����:F2#".'#"&546326;2>54&#"3276#"&462654&#"j�JL
*,4Q9*- jNLllL6-
	=Jg��Q%$�|d?T91BVy
2JVl�l	(�Α��)) ���#?+'754"/&4?62763~�~-8  �8M
)�)
Ms~�~  8-`8PM
)�)
M�����+70#"&532762#"/&54>76�XF:@@j UP.
@	'%?�J8@XC


D:�a5	#8����#4?JU%"&""&#"#"&"#546;5335335332!526226226323"&546523"&546523"&54652�'/''(
'/'@@@@@�@''/''/'
'��
 
r
 
r
 
@      P�������`      @
%&
%&
%&�%2#!"54;2%6!57>��(5Z��W
U@(h����h�r����!�#%2/7+5463&'&676
=��	�
Y���<K`�wZ�S:
�A
�	���+�`\�	�2%2#!"&546;22/"//&?627'&63�		�0
	 	�	 `

I.D

II @	 	
P		�� 	v `		J.E		JJ @�2+"&463264&"264&+�PppP�PppP�KjKKj�5KK5111�p�pp�p�jKKjK�KjK7�7@�2+"&463264&"�PppP�PppP�jKKjK�p�pp�p��KjKKj������7;JPf2'.547'+#"&546327#"&546;23'#"&=46;263&267#"&?&#"?#654&#"&/5KK54K)V
4E,5KL41
W	r3		@
N��+J(	Q-	!//�J�$�"2/!

-

-,M55JK48&�*6K64K0

			}J&vI/B/`x( 0`0"!/H
	G,���4<LT2+++"&=#+"&="&=#"&=46;5462264&"7!26=4&#!"264&"�


 
�
 



�����0

�
@
P
� 

  

 
�
P
0".."0��]
�

�
p�'?2#!"&5463&546?6'.676/&&546?6'.676/&��`�=@RA?S�>@RA@R��� �%"4./6%"4./6����94&++"&546;2+"&52+"&546;23265463�!p	0	
�8P	0	�	P8�
	0	p!	!��		�
P8�		0	��8P
		�!(	��B�0T%!!2#"&'&7#'.'&7#"&=46;2!2'#54&+"#";;26=326=4&���
 ! �#FF

g
	�/t0		0		0		0		� #! !"W

-��(		(		(		(		��B�0C%!!2#"&'&7#'.'&7#"&=46;2!2'#54+"#"?6&���
 ! �#FF

g
	�/y++DD� #! !"W

-��<<DD����;C%32#"'+"&'#"&=463267'&6?546;546;232%7625�=,

X70�07X

,>
F*
@
�
@
*��v
vK")

;!!;

)"F
#�
(

(
�#
�X&&X����26:V%#!"&=467'&6;&5&54767>?6327/77475#"'0326762676�#��%
:@F

F@;
� 2�*2J,42.	�=#--$><!

1"		"1

!�x( �� (�������GVl2'"&547'+#"&7>767&+"&546;23'#"&=46;276;2+6267#"&?&#"%6&#"&/7>4KL64K-

TE,6KH2 8

8E�B		P&-

R ��(	Q)!//�0"1

22"+K46LK4;'B$
*6M63H

( 		&*
 
7�K/B/L"2Q
R "0+���#?%"&54672654&'56&"&462"&=46;2732#+"&5pAO�ԖOA3=z�z=3M6%%6%�
&

@
v.(88(.	!!�%6%%6�
``
`

�����
)%3"/3727#'&"'&"#&6?62762@m��^9�$!w1:$f!$&n''n&�,��H		
%i(7		b�	
V(i%((''�� �!)32++"=#"=4;5.5462264&" ?1$$($$1?TxT�/B//B3N4($$(4N3<TTB//B/�� 2/"&46327'&63264&"tQTxTT<*#P�B//B/�OP#*<TTxTQ��/B//B�� �;C%32++"=#"=4;5.547&'&'&6;227676;2264&" ?1$$($$1?3&(
F
(&3�/B//B�3N4($$(4N3C+ /

/ +"B//B/����192/32++"=#"=4;5.546327'&63264&"tQ?1$$($$1?T<*#P�B//B/�OP#*3N((N3<TQ��/B//B����OW2/32++"=#"=4;5.547'/&?'&=4;276627'&63264&"�Q?1$$($$1?			O	#T#P�B//B/�OP#*3N((N3*#	O	Q��/B//B���!)W32++"=#"=4;5.5462264&"32++"=#"=4;5&'673264&#"&'632 ?1$$($$1?TxT�/B//B!$$($$"!//!"'2<T?3N4($$(4N3<TTB//B/�4($$(4/B/ T<3N���!K2"/"&46327'&63264&"%2"/#"&'67264&#0"1677'&63T
1TxTT<*#0�B//B/�
1T<8Q!/B//!!0�O0#*<TTxT1��/B//BQO0#*<TJ7!//B/!1��@�&HP2"/#"'673264&#"&'6327'&63232++"=#"=4;5.54264&"4
1T<2'"!//!"'2*#0�oxT?1$$($$1?oB//B/�O0#*<T /B/1@T<3N4($$(4N3<�/B//B��*22//"&546327'&?67'&63264&"t			TxTT<*#	�B//B/�O			#*<TT<<T			��/B//B��!�,47"&47675#"&=46;5#"&?6+32+64&"�*TxT*(88('//B//�*xTTx*	(88(	�/B//B/0�P(0%&=#+"=#"&462354;2354664&"�		8(	*xTTx*	(�//B//�8(*TxT*(�/B//B/�� �+"=.5462264&" ?1(1?TxT�B//B/3N��N3<TT�/B//B0 P"264&2"&4�B//B/�xTTxT/B//BoTxTTx	���/7?OW_!"&=463!2&"264&"264!"&=463!2&"264&"264!"&=463!2&"264&"264�@

�
3NX�@

�
3NX�@

�
3N 
@

@
X�
@

@
X�
@

@
X����#+?%2++"&=#"&=46;546;2"&4622#!"&=46;27p		@	 	@		@	 	��jKKjK&7O��O7#L#�	 	@		@	 	@		@0KjKKjkO7**7O����#7%//&?'&?676"&4622#!"&=46;27N-..--..��jKKjK&7O��O7#L#�.--..-->KjKKjkO7**7O��+6"&462%2+"&=!+"&546;235463�B//B/.B	 	�	 		 	�	�/B//BQB.�		00		`		А	����'/##!"&?"&546;254&#!"3!26"264�N4?��?4NO1�2N0
��

0
�.!!.!`�'9229''99�p

p
6!.!!.����'7?G##!"&?"&546;254&+";26754&+";26"264$"264�N4?��?4NO1�2N�
h

h
�
h

h
((��((`�'9229''99�p

p

p

p
.(((( �`!%!!535#7232+#!"&=463!5 � �  

��` �@@�
�
�`�� �`!%!!535#7232+#!"&=463!5 � �  

�p�� �@@�
�
�`�� �`!%!!535#7232+#!"&=463#5 � �  

�� �@@�
�
�`�� �`!%!!535#7232+#!"&=463#5 � �  

��� �@@�
�
�`�� �`!!!535#7232+#!"&=463 � �  

� �@@�
�
���D�%#&/&546.j81
5W	w��Y	
�	�����E#"32+72#".'#"&=4632=#"=4;54"&=4632>32T$$T-.T$$T-.�0p(p1((0p(p1(���,8G32+"=!+"=4;#"=4;2!54;2+;2=4+"54++;2�(��((�(����@T
H�@��((@((���H
4��@�+]7+"=4;5#"=4;2!54;2+32+"=732+"=!+"=4;53;26=4&+5354;2+@44 44�4��4�
@

h4�4�44�4@�44H

@
H4����%"!"&5463!2+538
��

�
b
��
�
�

��7b�
���!2#!"&54633#!"&546;������0/��� �`0 �!/������.1]%"&5054676762'3"&5054676762'3'2#!"&=46;&'#"&=46;6232+KjK

<

�H��KjK

<

ȐH		�`		�&�		�N�		�&p!//!<4&(59	��!//!<4&(59	���	 		 	')	 	  	 	)������)/2#2#!"&=463467.5"&=4634&"h

D55D

��

D55D

=V=�

CkkC



CkkC

�@;UU;����)/52#2#!"&=463467.5"&=463."65#h

D55D

��

D55D


2<2
���

CkkC



CkkC

��$,,$""����)/2#!"&=463467.5"&=463!2265#hD55D

��

D55D

P
�V=��CkkC



CkkC



�U;;����)2#!"&=463467.5"&=463!2hD55D

��

D55D

P
�CkkC



CkkC



���=2+"&=4/&=463254632354632354632346�0
�
p p�t

d+B0�0/ ������22+"/&>546323546323546323546��}
!	 @�q�!
,���ױ�W���+4635#"&46;5#"&46;5'.>7>+"�  �в$�	
p�P	""(E$%K@� ��@�$54/&+"&=46;2?6&+"&=463!2�p�
%|

�!
N� =G
%3	!
��t���H+"/&546324/&5463232545'&5463232?>32132?>32�D	8%6'l
=*
&38&"/��#-%f9)(�
}�
���{������-159%+"/&>46235462354623462#37#37#3� ��
!	 """"�XX�`��!
,�((a`````������+$2+"/&6?'&>354623546234�" �@K%$E("�P�p
	�$���   �`F2++"&=#"&=43+"/5#+"/#+"&76;236?6;2U6Ut
6		2		6A	+	+	A`+��+��
�6"UU6�(5 ����*%+5326"&462&'654+";26=3;26ۑΑ��+&jG		
,�8'Α�Α��O2Y
�

HS
����#'2+32#!"&=46;5#"&5463!P�		�`		������ 	 		 	 @�� ������+G!"=46;54;2354;232!2#!"&544+54+"#";;2=325��X0(�(0�L���H<(<<(< $4444$ ���<<(<<����+7!"=46;54;2354;232!2#!"&542=4+"3��X0(�(0�L���<� $4444$ ���((����+G!"=46;54;2354;232!2#!"&5476/&'&??6'��X0(�(0�L���
0			00			00			00			 $4444$ ���0			00			00			00			����+;!"=46;54;2354;232!2#!"&54'&'&?6��X0(�(0�L���Y	j.			R	�	 $4444$ ��`	j/	T�	���6#!"&546;276�
�0

p
���

�

�XD�� �	727"/2"&4724#"2546pxTTxT�&6(��!!�TxTTx6&(�����$9#!"&=46;546;23253+"&2#!"/&?6;53�+	�

�	 	�	�@	 	�

�	++	�@k,	
P
			�9pp		
P
	,,	  ��@�4?&576������J8��?
0�@���
��8����2+&=#"&5463�&&�}
`&&�&��&^T& &����'2"&454&+";26754&+";26�Α�Α�	0		0	p	0		0	��Α�η�		�		�		�		����2"&454&+";26�Α�ΑX	�		�	��Α�η�		�		����!)3#!"&535462#354&"264&"264&"``/!��!/`KjK��&4&�� ��!//! 5KK5  &&���@�)5AM%+#!"&/#"&=46;7>3'&>3254&"26754&"26'54&"26@
��

CkP�PkC
��p��
��

�mm��p

p

p

p

p

p
������CG+32++"&?#+"&?#"&?6;7#"&?6;76;2376;2327#�
OK
P
(b
)K
OK
P
(b
)K�c

�	(
V
	RV
	R	(
�	(
V
	RV
	R	���������-6"&462&"2642"&4264&"32+"&76�\BB\B\((�\BB\B\((h ��"	p�B\BB\^((�B\BB\^((��0
�
����G"264$2"&462"&46"264>."'&67673>'.56V�zz�z��Α�Α��pp�p�RHLH5	




	�z�zz���Α��Yp�pp�DM

/A.!!.A/����B#"/67'&/"&462&/&#".?5#"&=76;2|}~�?$$$ofB6

= ?��Ú
X<$$��'l�	
��P
_O		�4C7#76772+57#!"&5463!2'&+";2?3;2674&+";26�		�/��`���9	$9	4	�5.99.5�

1b_�� ��
		
V-3�4����!3CS.676#"#'7232#"/&764'&?67/&764'&?6/&764'&?6a@-.?
@	 8  8 @�		_--
	%%	
&

;@��@
(
QZZQ
(�"V6�6
	-t-	7#X#
	B	��'/7?GOW_6"&4622"&42"&42"&42"&42"&42"&42"&42"&42"&42"&42"&4�%6%%6(6%%6%�6%%6%6%%6%��6%%6%�s%6%%6��s%6%%6��s%6%%6��S���7?G\`7"&5462"&54&"&2#"&4632654>54&""&542"&42"&4%"&54=.'.>'7�/B/1�g?-FdFSmQ@
Qf��"P"�!//!
�gI!2-?%&2FF2I�m�Do
�V�"P"������1?q&2#2#'&/&?6766766&#"32763&%.6767&'&6767'.7>7"'&63"&7>376"#32654&# !=+^C,:)
F
"(-+
%

p:)
F
"(	-+
	 !=+\C�

3

	!Y	!JZ9


A4!JZ9



3

	!G�����7CP7"&5462"&54&"&2#"&4632654>54&""&54%/&?6"/&?6�/B/1�g?-FdF�		W	W	��		�
		��!//!
�gI!2-?%&2FF2I�	W	W		��	�	�	������2?k46;5#"&546;5#"&546;5#"&746;'.>+"&7'&6767054/&'&6767'&6767'&676'&>[
>~��}�
	|PkI%		

�
={4	
N^
	_M
	g$Z
��.

#

0ZC	
cy
	zb
	�&����@�-B%&'#"/&'&767'&6?6632654&#"6"26591W+
��)w
}q<1W+
5(*Y��"P8*&$�T+:
e	
��:��(fT+:
H
W�'38P	
$=���� (/7W2&/76'&"&'&4757633#"&5:64&"3#&"264///#576;?�
	7�

P
"


b	
�`@
)			��`
				�
		
 	5[7	
TR;�	7�vI
!Z@�
			)�
@			

	&
R�7	K<���E#!"&547670>321&0#".1&'&2>767654'�`)||)B#GG#	$FF$ Z		Z B3		32


2����'/C#32+32+#!"&5463!232&"26454&+"'#";26���@�4&&4&0'*'
	�	
 @(@(0�0( &4&&4�""��@�+7CO2#!"&5463"26454&+"'#";26754+";2=4+";2=4+";2� �4&&4&0'*'
	�	
����������``&4&&4�""=HH����2"&4$"26427.#""'&#"�Α�ΑH44H4��94 ( 4��Α��14H44H��D!!����#72#!"&5463";264&#"26454&+"'#";26P��`		`		4&&4&0'*'
	�	
��`� 				�&4&&4�""��@�	+7?Q2!5463!#!"&%;2=4+";2=4+";2=4+"&"264;26'.+"'#"��0@� `�������4&&4&�
�
"*"��p0���HH�&4&&4�
�����2B#0#"&54754622654.'54&"37"&5475462� K55J 8P8`!/(/ A%6%  `�%05KL50$�(88�h/!			��
		 0P%%%�

������"B7"&54754627#0#"&54754624.'54&";26�%6%    K55J 8P8(/ !/@%%%�

�0%05KL50$�(88(��			��
		 0/�����"B7"&54754627#0#"&54754624.'54&";26�%6%    K55J 8P8(/ !/@%%%i

i0%05KL50$�(88(��			��
		 0/�����"B7"&54754627#0#"&54754624.'54&";26�%6%    K55J 8P8(/ !/@%%%)

)0%05KL50$�(88(��			��
		 0/�����:6"&4627#0#"&54754624.'54&";26�%6%%6E K55J 8P8(/ !/[6%%6%%05KL50$�(88(��			��
		 0/���'/7?GOW_gow�$2"&462"&4"&462"&462&2"&46"&462462"&2"&42"&462"&42"&42"&42"&42"&462"&47"/&4?&547'&#"#+"&5462632762)			)			7			)			7			�			@			 			i			)			7						7						I			&� 
	 	Ie#
. �			i			7			)			7			)			 			@						)			7						7						I			�� .
$��		/4M$
 ���I75!+"&=!+"&=&%2#!"&=46;5462662"/&47&7'&" � 	 	�	 	 �		� 		)9-#
i
@00+)				)�				�)
i
#,	�����+NV"'.542''&546'&'&7654&2&767>54&#"'.542"&4J�u.W=9R0;)%5��F8%,hHIg*$9E�6%%6%)U,,U�
+>=UQ9A,
()95%+�]BlN.IggH-NlB]%6%%6���2#!"&546354#!"��`������`�TT��`%2#!"&=463��``  ���!)+54&+5463!2#!"&5463!24+"30/!� ��� D������!/0��� 04	���/?O_o�+"&546;2++53232++53232++53232++53232%3#"=#"=4;5473#"=#"=4;5473#"=#"=4;5473#"=#"=4;54���`********�********��`�N0f0f0f00`0`0`0�������%/&/"/+"&="/&4?5/.?/&?'.?>7'&/&6?'&?6'&6?65'&4?6546;2762?>76/76�!?5

 	
6?!"F@@F"!?6	 	6?!
"F@@Fg

G$N5
(		(
6N$G

%%

G$N5
(		(
5N$G

%%����	�'"/&4?&67>�(0$X%�	3	�
$1��*�1$
�	3	�%X$0����);+"&?.5476227>56227562.>32+"&7�% 

@

 %,,,y,"*9

8�_"&7�

�7&"_�G;����#VLB&
�0

����$2#"'&?632676&+"&=466f��g_G
	(0?FaeEB0*�
$G��Α@	(*bEGc,*
�$E����	!-E!#!"&26=4&"26=4&"26=4&"%2#!"&=46;76;2 ���				`				`				@		�`		x	r	P���		�		�		�		�		�		�	 		 	

����9&#"+"&7>3276+"&73232676;2#"'&=46s1B:[
9�ZcH$
��׆*1B:[
9�ZcH$;-G8		WsE$�
y*-G8		WsE$�
����"0%"&54675#"=4;2+7654&+";2�z�zeKx8,			"�((�VzzVMu"(("	$			3b������1%&=#"&=46;546+"&=46;2+";2��

����T(88(TT

T��`
`
`��8(�(8(
�
���1!#"=4;26=4&+"=4;2'&=#"&=46;546�TT

TT(88W��

�(
�
(8(�(8��`
`
`����$276+"&?&'&3276#"&46dG$
�*0BEeaF?0(	
G_g���E$�
*,cGEb*(	@�Α���08DL%#!"&5467&546;&546;2654'6323232$"2646&+"26&264&"�#*��*#*&!/	(8&*����<8<%O(**(#*&/!8(&*#[x  `��@�!)4%#!"&546;3%#!"&5463!24&"2!5'&'&���/!������((D`X�( �!/PD((`0pX�(�����
!(/&?62'6&?6?6&5#75�.	o		.(<�	o		��z\
�

�$$ @2.		o	.<(		o	��z 
�

�h0@ $�����&?'762#���r
�9�9(c���
r)(9�9�����	'762&76?'/&?62�9�9(�US�Qr
Q�fw!v(9�9(TS�Q
rQ�fv
����732"/&6;4;2�.VV.8fVV.��M�37/&4?6!2#�VV.�.VV.8M�3%546&=!"=43:VV���.VV.8
����#"&?62++"5X.VV.8VV��������;%+"&?'+"&=467'&=46;27'&6;2/76�
p$kk$p
$kk$
p$kk$p
$kk$hp
$kk$
p$kk$p
$kk$
p$kk$����)#!"&546;46232&"26454+";2���P&4&P�H��P��`&&4d��M346&=#/&4?63zVV�VV�VV..VV.
����72"/&6;5#"&?62+�VV..VV.FVV�VV�����"&462#"?6&+54+"��Α�ΓGssG@'Α�Α�tsst����"&462'#54&6=32=4gΑ�Α�tsst8�Α�ΓGssG@����2"&43?6/&#"�Α�Α�tsst��Α�ΓGssG@����6462"75326/&;;2�Α�ΓGssG@YΑ�Α�tsst���4%2#!"&546;2+!54632/"/&4?'&63�	���		�@	X
$��$�	�`	 	��p	@
�$��$����##!"&5463!2#"?6=4&���`Xp �			� p��`$ �			� p
���+5463!546&=!"&2#!/&4?6
hPP��
�

��PP
0PP0�

0PP0����0%#!"&54674546326326&+54&+"#"7,:K5��<T6*^B,J(8�A	0	Aj�	F.5KT</JB^,$8(ip		pj����0%#!"&546745463263226/&;;26=,:K5��<T6*^B,J(8�jjA	0	�	F.5KT</JB^,$8(Njjp		p��@�#'#!7#3#3'!"'?3&�ZeE0E��E�PEee{G�C{e������� ����B������E�%"/&6;#"/&6;232:hh
@T8�
@8pp8
������E�++"&?6;#"&?62:
@
�8T@
hH��
8p��@�&2+"&=4&#"32#!"&=46;54i}Z
 
+*0����Y?P

P*+G��F@����.5462"&264&"�="
p�p
"=B//B/6#X$5"PppP"5$X#
�/B//B��`�0R232+"&=46;5.=46;26=463"&=462#";#";#";P	WA8		�		8AW		B19T	hP88P8UUUUUU	0Bc	"				"	iD(		*3NM80	�8(�(88(  (��@�#2+"&5463264&"74+";2�c�����`�� Y8����-27?DI%2+"=4;5#"/&54?6;2%2#!"&546334&#5265#264&"5"75#`@

��

@%%@�P88P8p%@@%�7
X�
��

@
��%�%�B\BB\b@%�@%������
(%67#"/&?6'&?667'&?6Py�p�
��	

a<0heC>Wh0�

�

	��$%2p������+2#!"&5463"26454&+"'#";26P���4&&4&0'*'
	�	
��`��&4&&4�""�����76&764.'/&4�4PL20#
2D1��

P	)B,,U+@*X
�����'.546?62>7'�,FH$*M@'�Kc�lN�[<C_�GP�F%�lJ����#2#!"&5463264&"74#!"3!2�������H��`�� Y8����@�
#+<FN2#!"'&54%"32?461.264&"6264&"%6.3654'73264&#"264&"��'	�D	' 

			�C	=#	n	L


.��wNCCNwi
���5
		�%�@�/!!$3#!"&=264&#5463!2"'4&#!"3!265�@���� �L
��

P
 �t(``(``8

�

���$"&4622#!"&=46;27<xTTxT5K�`K57#L#�TxTTxtK55K���+2#!"&5463'76/&'&??6��`LCC		(		BB		(		CC		(		BB		(	���`��BB		(		CC		(		BB		(		CC		(	������'?'&6;2//&+"&=4676c!p
c�c!p
cc
p!cbc
p!c����'7+"&=4676?'&6;2//&�]!p
]]!p
]�]
p!]k]
p!]���� &,%#"'67'&477&'6267&'%6'77&7p!HddH 66 H�H 67���T'FF'!D�D!&FF&!D�D"MM
CC�MM
BD����
 &+'6'676'7&'%'67%&'667�*N5i.9S?��N7M
<.�4b�.8S?^N7M
��.�4b�*N5�M7N,�.Fb4"N*E�.�?S,.Fb4"N*E�.�?S�M7N,����2"&4264&"6264&"264&"�Α�Αk`��Α��'Z����;Ss{�7'&546;5#"=4;54;232+3232+#65#"&=463+"&=4?546;27'&=4;2354;2354;2#7354&"+"&=4?546;2J"	99	"
		�		�		�			�	t6~/ 		w		�			�	�Z	  	Z		A??A		�
		
		�
;;
RP  		�
		
		��@�#37467.546;22?#5&2#!"&=463G*
@
&!ld8�8(		��		�5�"

=le<+C,,]	 		 	 ���#'+/37;?CGKOSW[_cgkosw{#53#7#53#'3##53#5#5#535#5353#5353#53353%3##53533#753'533#%3##5353'#5373#3#'#553%#53#@�@@�@�@@�@@�@�@��@�@@@@�@@@@��@�@�@��@@@@@@@�@@�@@@@@@�@@�@@�@�@@�@@�@@@@@��@@@@�@@@@�@@�@�@@@@@�@@�@@@�@@@@��@@@@@@�@@�@@�@�@@�@@�@@@@@��@@�@@@�@�@@@@@�@@�@����5!2#!"&=4632!'&546;5#"=4;54;232+�		��		p
J��J
�((0((	 		 	 
��
00((00������%-=7&=4?'&54;2!546?6=#"'4"2642#!"&=463	�Oq��9
	(		��		��
	pP�&

2���	 		 	��@�#37.546232+#6=#"&=4632#!"&=463i=V=		�		�		��		�/+==+/	 	P++P	 	�	 		 	�����G"&4622#!"&=463!'&54?6323>546;22676;23276.!!.!x		��		�f��f
'"'
P!.!!.��	 		 	��	



����#+;2!65'546;23546;23546354&"2#!"&=463p	@
��
@	8	0	P	0	X�		��		�	� VJJV �		00		00	��@

@�	 		 	����/S2+"&=#"=4;54632++"&546;2'2+"&=#+"&546;235463h

0

@
0

0
�

0
�
0

0
�
`
��

h0h
�0h



h�
�p

��

�

��
����
Q'&'&'&'>7'&'&'&??6/7?6/7?6/76/&�
�63�4
�63�g��gf�45��[45��o��o�T����!+5?73+"+"=4&+"&%#.54622654''4''32674''326`�

(

@5-�-5z�z�H@ 


�7]]7Vzz�/M�<62"'67"&5�Ԗ�Ԗ7��7�Ԗ�P88P8((n(88(����1%/6?6&67>32"&4'7>76W
�65_<Q�C..C.�
�";V"�
�m($*
 pJ�/B//Bp
�+m7+�	���!!�@����	�
'%&'762&/"/&4?'.72"&4�0q"�8?�?/�)$Y5g#	>P88P8� /�8??/��$g5Y#Q"�8P88P������	%-:7&'>7'&67&'&'667&'67#"'6#"16&�5K$`D$>_GE#�70Z0344�LS)(F�>!3v�E[F;
�I\,-'�!c=#.Gr 2Oc?Q�&��]2�U(
1)+,GR;$/�PE�������:BJRZbjr2+"/&>5462;2=462;2=462;2=4264&"6264&"264&"6264&"264&"264&"6264&"��}
!	�							I							I			)			)			P
�q�!
!�

��

��

�H
��			W			�			W			)			I			w			 �`	'/746;#"&52+!&"264"264&"264"264&``&@&&`��Fn &��&&�&@��@���RnR���0#532'#617>3!#!"&5����3c�`�!������@�)>%2+"&=46;75%"&=46;7532#2+"&=46;750		�		P  ��		P  P		�		�		P  �	�		�	``@	�	``	�	@	�		�	``���92#!"&546;546;2'3554+54+"#";;2=32��`P��� 808808@�� 00   �088088����
"&5462654'�Ukk�kj,T6``�M�:^vv^:���5*8ii8*��G�%/%#"/&'"&=46326763254&"7'&#"+'$<"�B\BB.-@
$<"��(#RA�']1�
�.BB.�.B>,!1�pp-:]	)����-2#!"&546;462&"2646/&'&7P��P&4&6a			j.			R	���`&&�	j/	T����%-5AMY2#!"&546;462264&"6264&"6264&"6"26454+";2=4+";2=4+";2P��P&4&��h���������`&&��RR���hh����3;CK[$"&462&"&462'&67676563267'&'#5&$"264&"264&"&4622#!"&=463�			�H44H4��7VJ<E /

27�81
7n�			�		��		�			G4H44H�	
 #
	[[n			�	 		 	������<AGM>7.'&6;2!676;23&'67+"'&'!+"&67#7!36!&'# B--B 
 8 

*M1,"
 *9
 �� 
�$����	��
�./DIID/

(?9@$Z8		h����B�2:%'&6?7'76&'.'&7#"&=46;276264&"&5>!=!=<���D-+,\Y		pd-���((��cc�5)G,8,7#	 	��$G�((����B7"&546;7532#2+"&547#"&547#"&5#"&=46;2�		�00�		 		S(�(S	0		`	�		�  �	�	@	 				p	 		������6#532;#!"&546;4+54+"#";;2=325y�
7
�
��

�@808808W
��
��

�
��88088����/8;#!"&=32?3264&+'&"'&+"=4;546;#532 
�
��
F#
9Z		F#
9�8
ș�
8
��

�Fr,		Fr(�
i
���@�	
)346;#"&5!%;;2=32=4+54+"#"%2+00�@�808808P0p�@0��@�088088������@�%1=Ieq}2#!"&546;546;254+";2=4+";254+";2=4+";2754+54+"#";;2=3254+";2=4+";2 
	��	
�
�
�((((�((((�((((`
��		p
@

@��((�((t((�((���((�((���#2"&454+"#54+";2=3;2�Ԗ�Ԗp0`00`0��Ԗ����XX�XX��@�-72#!"&546;35"26426'.+"'#"3#546;2� ��F4&&4&
"*"
��
@
���```�&4&&4�

�``
����9E2#!"&546;462&"26454+54+"#";;2=32=4+";2P��P&4&6H808808�����`&&��088088�����8<@7"&=46;7532##32#!"&=46;5#"&=463!25#!5#�		p@@p		�00		��		00		`		������	�	�  �	�	�@	 		 	@	 		 	@@@@@��D�'2"&=454&"7.7>/&76B\BB\B�(��/vT"�S	#�/�B.�.BB.�.�pp�#	Sv/7Tv/�"����!15!#!"&=32=4+532=4+532=4#72#!"&=463 @
�
xxxxx�

��

@��

@@@�
0

0
����52#!"&=463!#!"&7;;2=32=4+54+"#"h

��

@
�
@808808�
0

0
� `��
�088088����#?G%2+"&=!+"&546;235463'"=4;276232+'"/"&462.B	 	�	 		 	�	��2f		z2L4&&4&�B.�		00		`		�	�(c		7		,c		7�&4&&4����IQY^%2+"&5#"&=32=4+"=4;2=4+"=4;2=4#!"=4;5463!232264&"264&"75'#p		08P8�8P8�������8,d�,((\((�d,`	 	(88((88(�00dlp((((�dp����#37NZ%2+"=43+"=4&'&=4;22#!"&=4635#+"=4'&=4;22+"=43x0).0$0p		��`�0$<0X0`��	W1&B%>>��	�	@p@@B9!,*AB>,��������>7//&?'&??6/7?6'7//&?67'&?6�@��&@BC87-8�-I"�"9-A��CB@&87.8�-J"�"8-������!+2#!"&562"&'463/&76.76dx[	��	/	[x[	T	#�/F�/vT	#M::c:MM:kTv/�#F�#	Tv/�����(#"&4?57?6/7?6/7?6/7>�#�dYY-22-22-23.M�!R�YYe.32.32.32.������/#"'&6?'&?67'�"�+/�"FO�"�$ R�"�EO�����';?"=4;2+"&=3352#!"&=463"=4;2+"&=335H�/B/0@�		��		X�/B/0@�00�!//!�``��	 		 	�00�!//!�``����#A%2#!"=432#!"=43%2#!"5743%+"=4&#!"+"547%62���p��p���P��P`00`00�00� ���

�W q���!22#!"&546;2654'"&462'"2654'76.�&&��&&q�qd�^^�^�""�&��&&@&-3OqqO3-�^�^^�:O����3}62"&4"&4622#!"&=4632#!"&=46;!'54+532=4+54+"#";#";#";#"26=3264&+532=4+532�			�			�		��		`		��		0`�hhhh��hh@(@(@hh�@						�	 		 	�@	 		 	`���    ((  ������"-%2?/.=32?7/76!6/.7��
��
�@@��\����\��'�66�'kkp8� 

 �8�����"*2#"'#"&>7&54264&"264&"264&"�Ԗ�j83AL9s���z�z3
19JVv������$747#"'#"&767&'&?6632@	E&(83AL,9:
��	

iI`j�9��
3
4+9�

�

	R5zVH:��974&+463!2#"!%2+"&=!+"&=&546;2!5463�& 8(@(8 &���& 	@	��	@	 & 
�
�&(88(&@`&$y				y$&
``
���Eg$"&462'+"&;26=>54&/&546;2?6&'&'54&+"2#!"&=46;#"3!2=4+67V�zz�z�"?
&
	
">
'


�

�@

 +?

l

@, z�zz��$!




$!




��
`

`
''�����	)1&'67673+#&'&6?&'&54762546264&" N5 
,pp ^BMA
k.�U}N/			;1%
E8K@�B^8H$Qh=7	
EX<!/`			��A�%%#!"&=46;76;2+";2?625���		7/ *�N		v]	x
	y	`	&		J��A�8%'&6767>"#!"&=46;76;2+";2?62m=<m���		7/ *�N		v]	�rHHrH
	y	`	&		J��A�Cl.'&67546;2'&+"+"&=&'&5474?6;254'#!"&=46;76;2+";2?62 

	$	6 

	$	����		7/ *�
N		v]	0%			%			�

y	`	&
		J��A�1$"&54762#!"&=46;76;2+";2?62HP8SS����		7/ *�N		v]	�7',pp,'
	y	`	&		J����"E7+"'&/&=4622?6/&>$2+"&=4?>2?54�9	�i
Z
&�
i�	9&

Z�M"+p		�
�

�l
	3�
�
�		p+"M
3	
l�
������%@2+++&/&6?54?26=%54&+"&=4?6;76�


&�gPPA*<*,P!�"!gg
0
@
&<�.0$'z**8%.!X~	
<�����3++"&=47'#"&7>7#6;5#462#327#4'
	�
�
�	
X?>t0pQ^Qp0t>?X
��

��
6TDl��RnnR��lDT������dm"&462"&462#"/?#"#.?6?'#&/&/"#"&/&?676546;2?676.7�((d((N)
C



+3�3+



C$
	�	
#��)`((((�pE.d L]\1G
!!
G1\]L P 
'"
`		`
"'
 �.E
����@�@HW%2++"&=#+"&=.5#"&7>32+";>;26;264&"'"4&54621&#0		1
	@	�	@	"("!	+X:�, 
i			�8P8�	�	
Q		00		QC&&7I"L@			�(88(������)?/.%'.4>?6762'67&"uO[D	�	E
�
,
"k
,"O4!Z!�Xf#	II@&W;���&.;C%2#!673264&+"&46;&5462#"3"2642.54264&"�(88(���

`(88(--8P80`

m�xP80 5S�8P8!8P8@ (88(P�8(P&V(H���2+"&="&5%3&'>@]�	 	]��@tU+h`�]�		��]@V�	=/4?���#'2#!+"&5#"&=46;546;25!�		��	 	0		0	 	 @�	 	��		p	 	0		0��������,<62"4&"276'."?62&276&"�Α��7�
%(%
&�-�-

#nYΑ�Α					o66*����!2"&42#!"&462&264&"�4&&4&�		�p]����C�P88P8&4&&4�	 	����]^B@8P88P������&.7'&6?7'76&!#"&'/&7%46264&"21M>M2�LB.-A�w
Z�((H�\]�:~�p.B?-l.^D
�@((����)19?G%+"&547##"'#"&5463!232264&"264&"%3'&#264&"m	/B/�/!((!/
�
&��0\+�V	!//!!/  /!P

`��0+�������&/'&?632576%5#!"&z

���%	

N� n"��n
��

	�!

	=��K�
���
����%�2+"546;5.?46;2��(4@	�	@4uW7��7Wu������ '&?6>323!"&=46z
��	

�M2<T)!�0���O


�

	i/=T<(B3�
7O����+3OW_7"&=46;>232+"&'7;26=4&+"/?+54&+"#"&=46722"&4&2#54@		P`P		P`P8(0(8�H$$$$�3EP
�
PE30p			W	 �	`	+55+	`	+55+X(88(Y$$$�L3
@

@
3L`					00����+$"&4622#!"&=46;27%/&?676jKKjK&7O��O7#L#T	�	Q			-i	�KjKKjkO7**7O��	R			-h	����+3$2"&454+54+";2'!"&=46;2732&"&462�xTTxT�
&


<
�(#��O7#L#
+jKKjK�TxTTxB
6

L
,L*7O&HKjKKj����;CKv%/'&=&''&'&?&7'&767667547676264&"&"&462#!"&=46;2732332?b
!!

!!
�((�jKKjKI��O7#L#


	K    0((tKjKKj��
*7O

'����$/$"&4622!"&=46;277&7%'?62jKKjK&;)N��O7#L#>�G�=*H%�KjKKjk.M=
*7O��G��*H&����#76"&4622#!"&=46;27$"&4622+46=4'6;27�\BB\B#0C��C0	!F!P88P80.B�(*�B\BB\bC00C 8P88PXB.'9+����9%#!"&=467&4?6"&547'+"&?&5475?6K��K6_���`KjKB*M6

6M_P..5KK55
>		>
;����4<D$"&462!"&=46;32730%2+"&=46;5462264&"754&"jKKjK 	��O7#&&# 

�

 /B/]@�KjKKj��*7O
�

�
P!//!P�}P

P����+%2+"&=463"&4622#!"&=46;27p		�		�jKKjK&7O��O7#L#�	 		 	0KjKKjkO7**7O����#+%#!"&=467'47&52>32#"&'7"34&#E4G��G4e�++1>%5KK5,Cg
�
�L4**4Lf�33(!'KjK5)`

����6%'.54?6>7'&"&462#!"&=46;273230n++5Ps!;`�jKKjK 7,	
��O7#L#�,M3"sN-�N:&KjKKjsDm#*7O������'&?6>32467!"&5z
��	

�I25K0&��@/��


�

	r1DK5)B
�1J	�����!6%"/&=46;2264&"&"&462#!"&=46;2732w	
\		[Of�jKKjK:��O7#L#S		]		[O
EJKjKKj�(:*7O����$"&462#!"&=4677'3jKKjK 5K��K50  `  �KjKKjlN5**5N��88�����;CKb��%/'&=&''&'&?&7'&767667547676264&"$"&462"&5462"'&#""#"&=46;3:630#327'#"&=46;2b
!!

!!
�((��4&&4&�.BA]B	

h�D/	!##
�(B
&@k    0((t&4&&4FB..BB."�


0C '	�:#
 &������*@CY\!2+"&5&'&/&6?&5463276%"&5054676762'3'1"&50546767623'		�	�
�/!.v
�  KjK

<

ȐH��
KjK

<f�H	 		W0+!/(',!�ِ!//!<4&(59	�j(59	!//!<4&��������*@CY\46;&/.?>632/+"&5'0546767621"&73'0546767621"&73'`	� �
v.!/�
�	�	`

<

KjK8�H

<

KjK8�H	'!,'(/!+0��		�	96(&4<!//1���	95(&4<!//1����;?%2#!"&=463264&"";#";#";!'#"&=463!3'#�%
��
%sH���ri�	g��QQF@% 

 %`�@@@`�@����@�!6#&5476'&'"&546
�OM{O�
����'	l	//	��	'R	����$7Ieh"'&476;2#'+"'&476;2%+"&7>&'&6;22+"&764'&63&/#/.7&54623'�"		_		#
#		#				#y"		R�1�1�&4&p`06
,
�4]+	9|9	9|9		)[6@6
,
d��
vv
:%%�t����)%/6?6&67>3%'7>76W
�65_<Q�	�";V"�
�m)$*
 pJ�
	�+m6+�	����
!#463!2#2#!"&=463!53`@�@P		��		����x��`��	 		 	@@������472+"&54632276&"&4622+&'3533!&#5463�/A�A/(P88P8P�	L�@��!`B//B 8P88P��&@@ 2.����-6?%#54&"#54?5#"&=46;546;232+4?#"&5%+5�`%6%`p0		0	 	0		0��mp	m	p�	�`%%`�	D3	 	0		0	 	3�/�	�d	����	$,45 7"&5"&462267"&5%567$2"&4&'67==q�q��qq�q�hthq�q�?!4���pp�p�0n37++++&&@&4&&4�4&&)?+�/B//B	"%+����2"&44635"264&"62"&4�Α�ΑX^BOq�P88P8S��Α��gB^ qO`8P88PH����(02/*+/#&54754632264&" (8`M=),'&,ayt/!'J�%PAepxhx=	%!/ H����;!2#!"&=4632#"'!'#"&4626?&5462?&54		�`		�(H��H(HR(RH	 		 	@(��(

+��+

����(08@HP2+"&=7>'264&"'"/&4?62264&"264&"6264&"6264&"264&"P��	
�(��(����.�1��(��(���rr�����'/72#!"&5463264&"6264&"264&"264&"6264&"�%%��%%3ss�%��%%@%���ss�����'/2#!"&5463264&"6264&"264&"6264&"�%%��%%3��%��%%@%���������2#!"&5463264&"�%%��%%��%��%%@%�����'/7?2#!"&5463264&"6264&"6264&"264&"6264&"6264&"�%%��%%3��%��%%@%��MM�MM����'2#!"&5463264&"264&"264&"�%%��%%3ss�%��%%@%�ss����2#!"&5463264&"264&"�%%��%%3��%��%%@%������62"&46"&4622#!"&=463�6%%6%[6%%6%�

��

`%6%%6�%6%%6U
 

 
����!!2#!"&=46;463!2&264&"p		��		p m	 		 	��s�����"*!2+#5326!"&=46;467264&"p		�`p���		P
�	 	�@����!	 	m�0�P%2#!"&=463%2#!"&=463�

��

�

��

�
 

 
�
 

 
���"33&'"&476&&67>7>�'
!�b'�bGE:B�)!.,_Q�'g9,'1B�5t*"-,!����@�5=32+'6.'&"?632#!"&5467>2264&"�:)�b6
	Zw	F#
 #& #O
	��&�z,:,S_#"Vi
	~,
	B0
	%}�%%C���@D!2#!"&=463'.=4&+!46;23226=.='&4?625#P		��		�/!%��&�&$4&��	 		 	U� +,p`&&�4$ 

�>&�����@�CP]%+"&/#+"&=4?>/&6323632'&'&&/&6?67&#";26%5&#";26>C0%.B$B.%0C-
C$'));7J7;))'$C
��##%$%6$%##%�F/C=,'',=C/F�&%
	��	
%&��)

%%

)������%&/&6?'.?>n��	��
	�"	�	ff
	����&.?>&/&6?2#!"&=4637


.��

��

�p

Txx
D�
0

0
������&+=%"/&6;235#"&=463!2+2#'3.#!"&=463!260
V� 	(+а		�		�]�
�}
D�!#��		F
@
s@l:@	 		 	@�]
�|/D�	 	 �`#2#"'#"&4632627&#"!264&#"�FccFQFFQFccFQFF�////++L++///`^�^OO^�^OO�@@&4&&4&@@����@�4<@%"#"/#"+"&=#"'+"&=.54>76;2264&"5@
JLL				,4$0	TFCP
.Ewh��1	;		16		JY4)D&
0.=K�c	����%'%&=47%6m
	��3	�Z
	�"	�	f����&7&=47%6'2#!"&=4637.


��

D

�p

�xDD
B
0

0
��!E!5>4&'5463!25#35#35#5!#54&"#54&"#54&"#54&"���
@
�`@�@�@�`�@		�		�		�		=cc#

��������``







������5U'&?65462#";#";#36=46;22+"&=46;5.=7z	
��	
�8P8UUUUU),		L		�		8AW4
<)2


	�

	�-(88(   0		0*&�				"	iD)(9'"����#)17=#"'&#"#"'&5463232632267&.#6264&"575&'m
+1>�>?5
+1>�>?��#$"%�B//B/` ���
>=
>d=��$8P88PT:�1
#����%#"'&#"#"'&5463232632264&"m
+1>�>?5
+1>�>?��B//B/���
>=
>��8P88P����	%1=G1!#!"&%;26=4&+";2=4+"%3!2=4#!";2=4+"2!5463�
��
�	`		`	pp��0����0	��	@��
� 		 		Xh@	00	����IUam2#!"&5463>54&/&546;2?6'&'54+"+"'&;25754+";2754+";2=4#!"3!2`

��

�-	-	�pp�PP���
��

�
��



 h����3%#32+/&?#"&=46;7#"&=463!7632�bK�

�S	

37

�K�

R


4
�`
 
j		
C
 
`
 
j		
C
 
�����%-56+".7>264&"6264&"6264&"264&"�P�U&P&(/hP)
n/3���=N&@";*P}CJm��m-S����"*2#!"&5463264&+";26=72+5����(88(`		 	0

0���`��8P8	�		0�@����"&462"&467"/&4762�%6%%6%�%%6%%F

��





%%%6%%�%6%%6%�

��





����$4%2+"&=4633#"'#"&=46;2%2+"&=463�

�

@��@$I`

�
�

�

�
�

�
  @0p �
�

�

�
����%1=I6/"/"/&54676276254+";2=4+";2=4+";2f&6
66
6&&6
66
6�������	
� 
	------	
�
	-----��hh������	!)-19=G73#"&=46%#!"&546;5462324&"2#37#364&"2#37+532   

&��&/!pp!/��""@@`@@h""@@�
  
�
�
0��&&!/@

@/�""X   �""X ��
�������7&/&6??6/7?6/7?6/7?6/7?6/76|�PE<
<87<<77<
;E���'ef/0ff/0ff'���#G7&546;2#";#";#"32#!"'73;2=3;2=3;2=��
`
88888x

�@�)@@�)��

 @@@
`
�888888@@@72#!"&=46;;2=3;2=3;2=3;2=3;2= 

�

0@@@@@
�

�
XXXXXXXXXX���/73+"&546;2#";#";#";#"�X
�

�
XXXXXXX @

�

@@@@����	/7A546;#"&52+"=4;27#54&+"#4?62264&"%2+
@P	h0��	`	��3B//B/p
	P�
��	@@(@
���		�u
k�/B//B
��	@���	#.'7562"/&47�@`>SS�>+u5�@�SS>�+>u5����!3"&46;46;#"%2'&/52>76#"'.#57676�%% �%  ,IfHM-4#-:+0�MHfI80+:-#3 %6%���6%��2.&B

�	 B&.2 	�
���'/72+54+"#54+"#"&?6'.54264&"264&"�Ԗ2,		N@N		,2�4&&4&�4&&4&��]4Z B8888B Z4]�&4&&4&&4&&4���	/G7546;#"&2"&427735654&#"32+'2+"'.#"&'46;2`	`v	6Ԗ�Ԗ=2��$q| 3$qO=2|�		#,#$�@	`	7�Ԗ���$2=Oq�  o2=Oq$|	@	���t�2#"'"'"'#"'.?63!22767#!"&=327!5Z&/,XX-/&A	�				
�@
			
�I(Z!!!!!!Z(h���

�dd������
%%53#!"&53%#!"&?63!23+"&@@
�
@�
��U	�	%@	 	@��

��""����		���/"&=463!2#2#!"&=4632#!"&=463		�		@		�`		`		�`		@	@		@	P	@		@	�	@		@	�����7'7'772"&464/76/&'7?6/76/&'&'76/&'&'76/&'&?'&?'&??6/7??6/7??6/76/&'77'7�---�-------jԖ�Ԗ�.""--"!-.""--"!-�---�---D---�---q�Ԗ�Ԓ-"!-.""--"!-.""-3---���+/M%#54&+"#54&+"#54?6;546;232'5#53#!"&=3;26=3;26�	�	 	�	 	�	.	
3�3
	����
�@
�	 	�	 	�	
S				S
	.	PP		@@�`

`				������%/&#!"&=4&&/&6?267w9
9
�
99�?L?`
r		�

�		r
`��C�:I"&462/&/&/&/&?.?67>327"&4?6�((.		-
<"	#8	�(	;
	2
`((�E2Y


JB"<	 	*"�4
,"	<	
2	���$2#!"&5463!2#!"3264&"��s%%p	��		C@�%@%			�����-D2"&42654':1276&/&>'&"7627>.3232654'�Α�Α�P
�b FbP
��Α��W



	�&&�


	��@�"2!2+"&=4&"+"&=46;!2#!"&=4630		�	8P8	�				��			 		�(88(�		 	`���	 		 		����	!8@H%6?#&''#>#6&'37.'#!"&5463!2"2645!"3>-''-V."'--'L�

��)77)F�jKKjK ��
�1) )**)1�1))**�	4
	7)@)7&KjKKj��@������(qy7327/"&?#'&/327>767'&"&'.'&'.'&764'&7>767>76276&264&"a4%4	
.
	
	4%4
J
		
		
	
�7N77NU
�&p
W&�



	
		
	�P88P8����-2#!"/&4?63'76/&'&??6@%%���		�>>>>>>>>�%�%�

��>>>>>>>>����%5K[2+"&=463#>7##"&46322+"&=4632#"&'##&'6=3>2+"&=463p

`

@629*P %% %

`

%% P*926U 

`

�
`

`
8H'?0O%6%�
`

`
%6%O0?'H��
`

`
����1;#"'&54675#"&=46;2+7'&?6/'!&/5#.�&4,		�		'	4	+�%%`@!,34Y�	 
	 
�'	4	+.53,!�''
������	#2!54635!+"&=#"&"264`
��
 �%@%6%@%��
��
��  %@%%@%M���4@HR\d2+++"&=#+"&="&=#"&=46;5462%;2=4+"264&"75#";26=4&+264&"�


 
�
 



�������=�p

�p

ps@
P
� 

  

 
�
P
0".."08��]�
`

`
�������Y%#"##"'&'+"=#"'&767"#"'&4767.'4546320454>762>7632�		<I		%((%		I<		 ,+	"S!!!!S"+-X	@@		!V#

)5p(

(p5)
	#V!	�����'"/&4?62762'&?62762"����(o���p-
7�
-����(p��p-7�-�����@�-2+"546;5'&63!22#"'73264&#"#>(�8�n��<TT<(#$(88(,
4J}��}�TxT$	8P8+5�)!4675#"&=46;2+2#!"&=463 Rn�@nR		`		�		� 		=~TT~				��	 		 	���'/7%/&/&/&54?6?6264&"6264&"264&"�$&E'*M*7$&E'*M*7��3��*'E&$7+L
 E&$7+������&.6%/&/&/&54?6?63264&"6264&"264&"�#&E'*M*7$&E&*J5J��3��*&E&$7+L
 E&$4J5Jq�����1%2++"&5#5323#"&5#"&=46;546;2�

(
0
��
���
(

(
0
`
0
(

H`
�H��`

0
(
 �`'3?K[g2#!"&546354+";2';2=4+";2=4+";2=4+";2=4+"754&+";2654+";2`

��

���@@@(	�		�	��`
�


�H00		0		y����'?2"&4>/76.'&7264&"7'76.'&?>�Α�Α�c4&&4&���Α��>�&4&&4����=E%/67#"'&/7&'&6?67&5462'0"0"132676&"264�767,R(�J42G6G!	D8P84#03C#"9d
�h`:_~>H{:|"

v(88(Y$
Xt7/

����3J54&"54&"&'54&"&=4>3276322654&'#"/&54?&#"�QH4<<4H0>R-97n		���z.(v		IVzF9�. f

wh

hw

f .�-

G
	�%	M
/&5��@�(32"&=46/627."75&"26>54&'���8DF;<<"*"} @ &4&/:GD8�K5�5KK5�5S,
&&
�

&&m
&&
,��� 33#"&476&67>	-jQ�e:K>@9�2D[OV,�}n5119�."3W8.����)T];#!"&546;;2=4+";2=4+""'.'&"+";26?212?62;264&##532�
�
��

ȠPPPP�	+"		
/		I�
8
��

�
HH�	)6		2
			
�����'0;#!"&546;6&+54&+"#"27#532�
�
��

�LA	 	A`��
8
��

�
��P		P`R
���G�3#532&=#53546;#!"&546;;#"��
b�`@@��	�
��

�
��	F�b�`A@A|	�

�
�
�	���	373#"&=46%#532;#!"&=3?6/&#46;pp		��
7
�
��
�``�
Ƞ@	 	�
��
��

�A``A
����*6BR%#5%#532;#!"&546;;2=4+";2=4+"54+";254&+";265 ��
7
�
��

ȠPPPPPP	�		�	�@@�
��
��

�
HH���		`		����&2l#532;#!"&546;;2=4+";2=4+">54&/&546;2?6'&'54+"+"'&;25y�
7
�
��

ȠPPPP�-	-	W
��
��

�
HX��



����;CL;#!"&546;&'654&+";26=3??6/76/#5327#532�
�
��

�E!!%P			;�00		ɀ
b8
��

�
��!&%	�		0;7 		��b��A�6?DN73#!"&546;;&'.'&"+";26??62#5327#%'762��
��

�
��	+"		��
b`�D�ED(

�
�
/R	)6		2

(�b�D��D����'0;#!"&546;26/&";;26=7#532�
�
��

�A``A	 	��
8
��

�
��``P		P�
����&%"/&4?'&?67627'"/�		�Pu_VVR		[1�;;		;Q�		�uP_VVR		��0�;;		;R
��@�
"1%"&546?"/&4?'&?67627'"/@%6% 		�Pu_VVR		[1�;;		;Q�]#%%@		�uP_VVR		��0�;;		;R
�����
-A\k�62#"&76'47'.76'4&'".76'&6&'.76'&767'.76'.'".676#"&54'&>'&'.'&#0#"&=&76�+>		";I		
(�Lm

Q9		

&]4X<9


GKl?q�
rn	ik
`<*MK	
GH  ML	
FI)<
#.><	
79?1:kJ
65
897O
z,
	'
Q	*1<9R	
fHJ<�� @` 2#"&'&?'&6>264&"G0a@((@a0>p&X	
W&p�`)7337)<*B
nn
B*<�����'/$2"&4&2"&462"&4264&"24+"36264&"N�Α�ΑP*<**<���<**<*�ΑΑ��)<**<*�  h*<**<����%2"&4264&"6'."7626264&"�Α�Α��	
=<=
	14)��Α��*�	"!	������32+"546;5'&63!2!!��8�8��J��0����**0����j2"&446;.'+";2;2/&+";232?676?6?6=4&+"/&6?63232?65�Α�Α�	Y;		Z
	/
 	
	
	��Α��G	:R				 	
	
����_n2"&4654/&+.#"/&54?632;26/&54?6;2?6/&?6//2?676767654'�Α�ΑJ		
C	
	
G 	
	
_
��Α���
			


		G&
	
			 
	
/d/*����8m2"&4762;2=4/&4?&#"32?6;26=4/&?63254/&=4+"+"/&+";237632;2?6�Α�Α�	3Su>
		�'

	��Α��_N
	&
uS-			f



	
����!%)-15=DK2"&45#375#"6264&"5#75#5#75#5#75#6264&"5#326=4&+�Α�Α�(

 5000p000p000`(

��Α��(
8(
��((8((8((8((8((8((h�(%
(����%2"&4"264&"2642676&"'&�Α�ΑU�`Y
	/�/	
��Α���6'		'����#12"&4%2767&'&"2767&'&"2676&"'&�Α�Α8�+`Y
	/�/	
��Α��!"		!"		!"		!"	��6'		'����'52"&4$"?626'."?626'&2676&"'&�Α�Α[&#
&
	
�&#
&
	
`Y
	/�/	
��Α��)))�6'		'����-=K"&5476227"&4632&"?626'."?626'&2676&"'&�(**0	�Α�gJ>/L&#
&
	
�&#
&
	
`Y
	/�/	
@77<03g��Α)!.)))�6'		'����'92"&4?6&'&'&2676&"'&%>'.'.7�Α�ΑZFi`Y
	/�/	
��Α��F

��6'		'�
F����!/2"&46/76&?64/&2676&"'&�Α�ΑP!!�!!PPX`Y
	/�/	
��Α��-0((((00��6'		'�����/<IY"&767622"&47667'676&&>'?6&/.?6&>'&26�*��)!)y�G!)y�G�	Z

4]
Z

4�"k,<@PH)��H)
G�y) G�y) ([
4
�

Z
`"a$,k���� .G2"&4?6/76&/&"2676&"'&%6&/&"?6/�Α�Α_#
F`Y
	/�/	
'#
#��Α��	##	  ��6'		'�	  	##������5EUc72"&476"'&'&61"&'067676&>2&'&&"?626'."?626'&2676&"'&f)S)
Hr s�s 
���

K&#
&
	
�&#
&
	
`Y
	/�/	
�H))GR9DD9R]]b)))�6'		'����%-D26=676&"'&.54264&"264&"#"&=6362?>�ΑYH	*
	/�/	
*	HY��&%��gO~.$		$.~OgW�@%'?	����4AN%#"&=6362?>26=676&"'&.5464/&?'76&6%&%�ΑYH	*
	/�/	
*	HY�P!!�!!
	PPI@%'?	j�gO~.$		$.~OgA0((((00����%5=T2"&4&26=676&"'&.546'."?62264&"#"&=6362?>N�ΑYH	*
	/�/	
*	HY�%(%
&�4&&4&
&%��gO~.$		$.~OgP					0&4&&4�@%'?	����-<62"4&"276'."?62&2676&"�Α��7�%(%
&�	
Y`Y
	/�YΑ�Α					a	'66'	 �`/?O_72+"&=46;2+"&=46;2+"&=463%2+"&=46;2+"&=46;2+"&=463`

@

�

@

�

@

�

@

�

@

�

@

�
@

@

@

@

@

@
�
@

@

@

@

@

@
��@�/?O_2+"&=4632+"&=4632+"&=4632+"&=4632+"&=4632+"&=463`

@

@

@

@

@



@

@

@

@

@

�
@

@
�
@

@
�
@

@
@
@

@
�
@

@
�
@

@
���;72+"&=46;2+"&=4632+"&=4&"+"&=6�

%%�%%

�Ҕ		z�z		�
�
&@&&@&
�
�ip		pVzzVp		pi���F7+"&=46;2#"&=46;22+"&46;23265454&"+"&=6�
%%
�

%%�Ҕ5%� fz�z		�p
%0%�
p
%0%`�i�%5(�VzzV		i��!�77/'7'&54%'76DC#)�#+3`3
����+ FC##�*
3`3+�+ǩ����';GS_ks&'&'&6;2+"'&'&'&6;2+"2#!"&=46;254+";2754+";2754+";2754+";2"&462�+
+
n+
+
�
%��%%+o�```��6%%6%($>($>($>($>@
�%%�%
S�pppppppp@%6%%6��@�-=M]ms��#32+54&+"#"&=46;#"&=463!2;26=4&+";26=4&+"';26=4&+"26=4&+"334&"%54&+";26=4&+";260		�	 	�				 		��&&&&�&&3&3�8P8&&&&���	 	P		P	 	�	 		 	-&&e&&[&&�&&�(88e&&e&&����6?K&=4;2+"=46#"'6+"=4&'&=4;22#"/2!2+"/�<0(0��$qY��Z�).0$0�vYuV

v*AB>,9!,��P8!W1&B%>>����
p
�����,42"&4264&"4'654&'&7>264&"�Α�Α��##))��Α��W�
			�����4D2"&465."?624'654&'&7>765."?62�Α�Α�#&#	
&
h##))A#&#	
&
��Α��K))�
			�))����%-JZ%/&67676#"&462&#.&264&"4'654&'&7>?626'."�S
�/4g��ΑT��##))
'	%(%.!	S 	T�Α�g.,%#�
			�						����%2"&4"264&"2642676&#!"3�Α�ΑU�87Q
��
Q7��Α���H66H����'52"&4?626'."?626'."6&#!";26�Α�Α

&
	
#&#�

&
	
#&#
��
Q77Q��Α��6))))�6HH����!/2"&46/76&?64/&6&#!";26�Α�ΑP!!�!!PP
��
Q77Q��Α��0((((00�6HH����-2"&4?626'."&"2646&#!";26�Α�Α
&	%(%Z�
��
Q77Q��Α��5						6HH����	ALP7"&=46;%+5322+"&547#"&547#"&5#"&=46;2#46;25#�

 @
  
0		S(�(S	0		`	`�`0`�
�
� 
�
�	 		p	 		�� �000��@� )2"'&547&=42767'5%6�hJrr�w�
,!�!/��J4>��>4�0�?
��(%�@�%(�
�8 ��@�(12"'&54264&"7&=42767'5%6�hJrrm""�w�
,!�!/��J4>��>4^""I0�?
��(%�@�%(�
�8 �����	?&76'7'/&?6276^K�KQr
�5��bWi!%�K�KQ
rs5K��bWh$�����	4'&6;2%2&'7632"&46&/&"?6/�?/o	
o
U
	o/?E
ʒgg�g
44&	//	=
+��+
s�g�gg�6
//
%4		4����2"&4264&"264&"�Α�Α����Α��W����!32"&42654'"&54724+"362654'"&547�Α�ΑX&4&""���4&""��Α��G&&&

�  p&&

&����*!2#!"&=463!6?654&+";26p		��		�MM0FF	 		 	[��;LL�&&���	+#76322++"&767.5#"&=463�d��				C6
�
6C		�c�$�	 	<a  a<	 	���0#!"&=463!22+2+"&=463546;265�
��

`
 %8(�

@

%�
@

`

 %@(8 
�

�
 %
	����	,8@E673&.'3'>76732#!"&5463264&+"36264&"7#&�-''-V.'j

��%%		�		;jKKjK�-'1) )**h**f)1
�@
%�%�`				`KjKKj�1)���?'73264&"'766'OTc!�]
];1#]$�b�!cT;]
]�'T(�b���!7'73264&"'6%'762���+	 ���
(�]�9�9(5+��!]�(
� J(9�9�����$67'&4?622?'762'&?%"/7?md		Z		">>,�.q.(-�q��k�		Z		d�,>>�d		Z		">>,.q.-(q��k		Z		e�,>>����.!2#!"&=4637&=46'46'%&'p		��		

'f0
A	db+
(&+��	 		 	�
e		C�	�1N
������1!2#!"&=4637'&6?627'&6?63276+"p		��		AM(Hh�A�c++.,���	 		 	kS$4b!R21'$�����*2%//&?'#+"&546;276%3264&#-NNNN�	 		�(80$TN��`

`NNNN�P			8($6TN�@����+3D254&""'54&".546'."?62264&"76'."?62�ΑA7		.d.		7A�
%(%
&9((�%(%
&	��gBq!�		��		�!qBgG					�&4&&4�						����#.2"&4"2642654'&"6264&">'&#"32�Α�ΑU�(**3�-F7��Α���77��6 ����!)-59%+"&5#"&5#"&5463!235#264&"75#264&"'3'#u
 8P8�8P8 

��R``L((�`�((0�PB�
o
(88((88(
 
�`��((�``�((�`����:2##"'&7#"&?6&&/&?6>76327>o
	4:C#+M�

b:

7:&
*KJ	6
E=	 	"8=�	�'
	%#3hG6!'����#32"&4?626'."6&"'&276'."?62�Α�Αp

&
	
#&#�

#n#

-�3
#&#	
&
��Α��F))�**6�))����%)-159=!2+"&=46;53#!"&54>3!23'7#?#3'#73'3'#�		�		0��7��7���
�
�j�
`����
gFrj	 
	 
  ���

B1``�pp�``�p�``�p����A�,2"'.543267>&'&'6768'S�S''?D++D?'��!FG"%;?QQ?;%$'88'$oo==o����"%/&&?6/&6?6�%">H6 F&3
&)'H!.L	�C>"(	4949/!=	���	!)19AIQ#546;22"&42#!"&=463264&""&4622"&4&2"&462"&42"&4�
@
��(8
�
8(B//B/��Mss�``
m
8(�

�(8�/B//B3s����*5!2#!"&=46;26=4'&5463 �@(8
�@
8(C	D-+@@@8( 

 (8(2,:+ *$
�����'#"/#"&?'&6?627//�
j��j
�A	(	ARr3f&g�DD�g&���Qg��6r����#/;I2++"&=#+"&=#"&=46354+";2=4+";2'#546;2#5P	 	�	 	�����0`0 �				��h�PPPP����2"&4264&"264&"6264&"�Α�Α�C4&&4&���Α��*�&4&&4����
%-1573622#!>?"&546;2264&"75#75#�		�K		�

����8P8
�
j8@@@		�L		�
�
� ��(88(�
�[�@@�@@ �hT\7&'76?6/&"'&+""2+"'"'"'+"&=46;276;2276;2276;23$"&462�	DP(1d"dq
0

0�		:&&t&&t&&:		%JJ%�1B//B/�b9
"&
P			 	 	      	 	`/B//B����4j%2+"'"'"'+"&=46;276;2276;2276;23%"'&'5462+"&=4&"35462+"&=4&"#5#p		:&&t&&t&&:		%JJ%��
8P8	 	�8P8	 	
� 	 	      	 	 	
�(88(		

``(88(		

�
	`������ '&?66762%47#"&z	
��	
�(-6,!��2BIg


	�

	�>@4_6I&(&�-h����!/2"&46/76&?64/&"7626'&�Α�ΑP!!�!!PP�RM)�)��Α��-0((((00�>-


-������1"&/.""&/&'&'&7>76676/676�%
""
%2" #d
	

0)"2`>1(CS9"

�

�


"9SC(2="3	@#3����	1.7>>327/6'&2#!"&=46;7s-�G'I!`+
.#:?f		��		�I<A78;Z=L_�[�,�H	%]J��	 		 	�����/37;?W#2+"&5#+"&=4635"&=46;2346;235!355#!5#=#"&=#+3235463


`
�
`



`
�
`
` ��  �  
�
  
�
@
�
`



`
�
`



     ��    `�
  
�
  
�����!%#!"&7>;&546232&264&"��`I<8P8<�))$(88(����%�!2+"546;5.?46;23'��(4@	�	@4r�uW7��7Wu�PP���!5I]q2#!"&=463264&"#546;2"/&4?62'&4?62"'"/&4?62'"/&4?62�(8
�
8(B//B/��
@
�@ 8(�

�(8�/B//BQ``
!�.������"5#"'&"#"'&'&767676676'#'&7676763_'$+A
 
A+$'*$$*?#/++G0:

:0G++/#

%
$
	����%07>FNY62"&47'"''&7&766267&'&'767"&#">"6727&'6264&"6''6'&#"#��77W$|$W77W$|$W��%,� 2 B//B/�%�s5KK54
VV
45KK54
VV
��	
#�
#
�%��%K/B//B?
#
	�#
	 �`M%#"&'4.#!"#"&=46764'.=46323!2>5>32W,'
��	',,'
	',�
$,
,$

$,
,$���)"&462'&'.=46%6&=476`8P88P>
F|�<|E
D�P88P8��#��"�)��@�%K2#"&'#"&547.547&5467&5463021>#"'#"&546320212�&*&*(&"�*&*&"&(�&��**	(.(	&��(	**x%&	(��)3BQ%+"&=!+"&=&=46?>;2%!'.+":>54&"!264&":�
 
�
 
9"�"9���9
"N"
�!06

  

60!2 && 222
�!!�#/K2#!"&546;546;23546;254+";2%54+54+"#";;2=32�

�@

 	`	�	`	�pp((((@
�


0		00		0�((((������*fu��7&?6/.?6/&6?>?6/.?'/&'&?&'&?676?676767676$&>767'&'&/&#"&>�#
NA	2M
+= %�




	�
	
 {
��
�	{ �l)
�.M
+=
NA	28+$�/4
C

4.+!	5`6!+.O
����#+/3;2+"&5#"&5#"&=46?>;2264&"75#;'#264&" (8	08P8�8P80	0!�m�|((xM&��MY�((8(P	(88((88(	p"z��((�```��((��@�Qh!2#!"&=46332'.=4&+!46;2327>=.=46;5462354626&+76&+";327P		��			2"'��%�%$4

			 		��:D;	 		 	@	 *x!..p`%%�4$
v* 	0		00		`3	kS���'%"/&4?626/&#";2=37�		�

�		�

{U
p
 `
�

�		�

�		�N6
P@6����'9AIQYa%2#"'##"&5475&546323632#0#23'"1"&463037#264&"64&"2$"264264&"264&"�%%%�%%  %%�%%%''���&%%&��			w			��			 			@			`%6%  %%�%%  %6%A A	@%6%@b			�			 			��			 			����7AE%'&?67&?'&?6'2#!"&=46;;267!463!2!�::$$U$$::	&�&	�
=��@���;;$$$$;;�	&&	p��P��������0&4?62'%/&4?2?/&4?2?������;��:��:��,jjjjjII�jjII����X%/.=32?654/32?&54767>3276=46;254632|N/<(V	��	V(</N!E
)!		!)
E:.7
1X:
pp
:X1
7.zm
&<�		�<&
m���!;G7"&=463546;22++"&=2#!"&5463!264&#52%"=4;2#�

	@	

	(	$	� 	5KK5Oq1����
�
		
�
		�		KjK@qOI7  �`15@6#!"&='.=463235#"&=46;2+325'46?"&v�	
��
F
�88		�		892��0�
+$ �

/_
0				0A?>]
+>���0%#!"&5467&546;&546;2654'6323232�#*��*#*%!/
(8%*O(**(#*%/!8(%*#���#62"&4%+"&?622+"&=463KjKKjK��k*P

�

�KjKKj�%%���
�

�
������5%/+"&=&/&6?'.?>546;276� 
�	@	�
 �� 
�	@	�
 �r
8O�		�O8
NN
8O�		�O8
N	����+9GUcq2#!"&546354&+"26=4&";2654&+"26=4&";2654&+"26=4&";2654&+"26=4&";26 (88(�@(88(@	@	((	@	�	P	!.!!.!	P	�	P	!.!!.!	P	�	@	((	@	�8(��(88(@(8��@		@�@@		q8		8!!�X!!X		q8		8!!�X!!X		y@		@�@@		
����+9GWes��2#!"&=46354&";26754&";26754&";26754&";262#!"&=46354&+"26754&+"26754&+"26754&+"26 (8%�%8(@(	@	�!.!	P	�!.!	P	�(	@	%8(�@(8%`	@	(�	P	!.!�	P	!.!�	@	(�8(@%%@(8�  		8!!8		8!!8		  		�% (88( %P 		 		!!		!! 		 ������&2COWc7&6#"./&67632*#"&'&567%.?>766676.67&'7676.6�  TF&
#YJ gu$$ dY� ,
� SaAO6 ��,
 SF
.�"� ,�+**2# $D&�'
91+	
&�)H!A`)��	�,'*(O	����)19A3"&'.535.535.53546;23264&"6264&"6264&"�$@%	F\F	%@$@$@
�
@$�((((((1
& 2	,99,	2 &
1&
1 

 1
&�((d((d((����.2����%2+."#."#"&=46;546;546;232%3'#2+/+"&=&'/&?&'#"&=46;67'&?667546;276264&"'2+/+"&=&'/&?&'#"&=46;67'&?667546;276264&"p		CLCBCLC			�
qSJ
���3Q0		
	 	
		
	 	
((�		
	 	
		
	 	
((�	 	""""	 	P	`
h
@`@��	 	
		
	 	
		
P((4	 	
		
	 	
		
P((����6:BJ%2+"&547#"&547#"&=46;546;546;232%3'264&"264&"p		2B\BDB\B2		
�
qm0
���M�((<((�	 	.BB..BB.	 	@
�
�
@�``��((((�
0H?62"&472#!"&546326/&+";2?33754&+"&#"327;26����`�	66	F�		**
	�55��� ��
��
�		$*<*	��@�#.%2++"&=#"&=46;&5462&">54(

`
 
`

-%JlJ%E,�
 
�

�
 
;5AOOA5;�"99����:B%#!"&5463!2;;26=326=4&+54&+"#"5!"3�

��)77)F��	0	 	0		0	 	0	��
Z	4
	7)@)7v 	p		p	 	0		0	��@����/3B$2"&454+54+";2'"!546;546;232&'5#!"&=33�xTTxT�
&


<
@7.�uP�P	������	�TxTTxB
6

L
� P001`  �*&�0	����-9EQ]iu�����2#!"&546;546;23546;23546;254+";2=4+";2=4+";254+";2=4+";2=4+";254+";2=4+";2=4+";254+";2=4+";2h

��

(		@		@
�
��((((((�((((((�((((((�((((
��

h
P		PP		PH

��((l((l((�((l((l((T((l((l((��((l((���S2#"'#"547>7&54>'./&54;2?6&'&'54&+"+"'&;265�Ԗ�j83AL92	 		2	 		�z�z329JV�%			%			��B�Ld#"'#"54767&5462;2=>54&/&546;2?6'&'54+"+"'&#"'#"&'32654'�zV<3+.&z�f-	-	Z.+3<@hc�9HB�^)3B^�



�
6,qO

P23����#2++"&=#"&=46;546;2`

`
@
`

`
@
@
@
�

�
@
`

`
���W]ciou}���%2#'"/+"&57&'"/&4?&'"&=46367'&4?6267'46;2762'7&'67#677&'7&'6264&"67'367'?&'�

$
/;		;/
$

$
/;		;/
$�
+Y%+
l@	L1	C
+2:%+
l@	@1	�		;/
$

$
/;		;/
$

$
/;@	11	%
L%+
�@	1w�1	%
H%+
���-T7"&=46;2#546;2+"&2?#!"&=%5!'54767546;>3232�		�		�	�		�	F4��`�`��`NN�				P				r��՗�
F��F

,		,�!2#!"&546;54&+";26��`�@`	�		�	@� @�				�52#!"&546;54&+54&+"#";;26=326��`�@X
@
	@		@	
@
@� @�	@		@		@		@	������V/&='&63!22"&4>54&/&546;2?6'&'54+"+"'&;25�?R;#P��y�^^�^�-	-	gCQ9	<��''�^�^^��



���eoy%2+5#5#5#33#54&+"#53535####"&=46;546;546;54623546235462354623232'354&+"54&+"�		P     P	@	P     P						@		@		@				�0		8	 	`	�	��``��P		P��``��	�	p	P	p								p	P	p�00		�@		@���1?G%"/&5476;5462;2=462;2=4623226?."62"&4�	f8�8f	@ 

 

 @��00200=�
	n<<n	
��

��

�Ѐ $ <�����2D%/#"/#"&57"#"&?'&6?'&676276'7'7''77'�
bK	
lDDl
Kb
n*^""^*/$/5--5/$4!!�5S
qYYq
S5h
<k

k<
h}(2332(6**6��0��%#"#.'3'&'45473'676327#"'&54?'&4?'&543243127632#"/>7654'&547654'&54763231!�QM(;/)V
:)9+****%5):
	V)/;`HXWE;	
)f<G+%7-D	A!		! ��!		!A5%
7%+G=f);�����%#!"&5463!2!"3!0#"/267#"'&54?<14'#"54?&''312545'764/7454#"#'4"'"#"32?.547&547#"/�
��)77)FC��
�%	=N=	%

		
F	4
	7)@)7�� &11&  #	
po	! ��A�-;IW%&54?626"/.=54&?6754&?66=4/&'6=4/&*����� ,�

��PP�``�PP�``l1PP1OmR�66�"-$���jrz/612#"&/"&5475#"&46307'/&'&6765'&?.5467'&?7>54'&54764'6'76/�82
5P/

	
))
	

/P8
/<		&!M,;;,L"&	U

�~s?'$=
*!		

		!*
AE� 	

(/(F6$	33	55	33	$6F(/(	t &&""&&���'7#!"&=4?62335335332!546;2#!"&=463�
	� 	
��@`@`@	�@	�		� 		d%		%Z������	00	`	 		 	��@�'9=L:767#!"&=72"#".'.'5463%2+5.+54635#%#5463!2#"�*+ @
�
@ �
,)"	),


�$`
 @��`
@
�& 0�

�0�
!	"
`
�
�! 
�@@` �

`&����	'2=HS^it�2#546;2#546;2#546;2#54636"&546?"&546?"&546?"&546?"&546?"&546?"&546?546;2+32#!"&=46;5#"&=46;2;546;2326�	@	�	@	�	@	�	@	} s s s s s s 	 	8(��		�`		��(8	 	
�	 	�
@	��		��		��		��	 
 .

 .

 .

 .

 .

 .

 .
Ӑ		�(8@	 		 	@8(�		�
�		�����	CP3+"&%!&5476?2+54&"#54&/#54&"#"&=463#5467�
@
C��XE++EX

 @@ 

��  @��
�C8+5

5+8C<
�
@

@H$
&H@

@
�
@!  0
�����g�'&4?6"2#".5'546326=4&"+#".5463264&+&/&6;264&#"/&47632?6#".'&66iR;;%'
#/
)K5*A$!1 &&!			 

(8!1	/
q1$)&'5��;)d$4
&+	d
!5K01&4& (&
. '$
�	
$

���������$&#"'.'&'32#".'"'#"&463267&'#"'&.>6767&'#".'&#"&463232>7'.5462627&5462327>32#"#"'7>"264$"264g!	 

(

(

 	!


*#%6%:%6%#*


�			��			h
#8-%%-8#

!4"%%%%%%%%"4!

'							����2"&44&'657677�Α�Α�WA��Y&s3&�AW���Α��gCg�g)�rG"ir	"?gC/)g����,%+54?#"&5%#54&"#54?54?6m	p�mp	�`%6%`0	LL	Qd	�L/�	�	�`%%`�	s	KK	s����/?2#!"&546354&+";26754&+";26754&+";26���p	 		 	`	 		 	`	 		 	���`���		�		�		�		@		@		����/?%#!"&5463!2326=4&+"326=4&+"326=4&+"���`���		�		�		�		@		@		`p	 		 	`	 		 	`	 		 	����("&462'+"&46;'.?67676&6%%6%_#n�\- 1&(':!
X!@%6%%6�An1"#G!\!./
!H
������(Q2#"&=4?54?03>26=4#"/.=46226=4/&67621/&�Zu
M		z�&/		M
u
�'?
/`Q��M		P
�`/
?'�

P		M�
�Q����1NV%#!"&5463!2"3237232/76&#/&"'"327654#0"#"&463:1324#&5!"3�

��)77)F�;/DD/'88'u��
Z	4
	7)@)7xCC`C8N8��@���![%"/&=#"&46232264&"7+"=&'&?6;2654/.546754;2'&+"�d8HVzz�z,
��xTTxT�	-	d
,z�zzVH8	TxTTxE


���!-5%"/&=#"&46232264&"62"'&54264&"�d8HVzz�z,
��xTTxTq>+CC@d
,z�zzVH8	TxTTx�+$OO$5�����%47#"&'&6?535#546;272#546353#"&'&67�( .
W��
��
�
 �3s -
�^)!HA���  

  
���@&W!H��G�;%//&?'&?67672+#"/#"&=46;2>3;........

�b X,

Q
:U�........�
0
���
0
jC
���92#"&4632#0&#"3267#"/#"&?'&6?62T	+.j��j.,
W||W�7
DD
7L""	�Ԗ
|�|�6L$$L6EE������ &),/25%+"/#"&?'&6;76232#'#3373'7#73'�5k8*8k55k8*8kB( 5p55p8.�((�.�(�Y$^^$YY$^^$!7XXX&8!!�!&8!����	'E762#547!#762'#54&#4?6'76&+'&"#";2?326F&�r�&�`-`�H''''�+���

�+�f
��`'&]z
f�((((����EQTW]%'37'$2"&54737!;32?327654/7654&+'&#1"#"$2"&54#''73@$Q��((�|�����	<<	<<s((�$,B!!B!!R��
�@

�
�����`11
1

111
1

1�
�@

�
o8888���59=27+32++"&=!+"&=#"&=46;5#"&=3355#xH@
 0		0	 	�	 	0		0 
@H`�`� `
@	 	�		��		�	 	@
` `@@@@@������@DH%+"&=#+"&=#+"&='&'&?5'&4?5'&6?%35!5!y7	 	�	 	�	 	7Y7		w��w		7����@��/
0		00		00		0
1@2@VV@2@�@@�@���-6/#"&=46;//&?'&?676�Yf

fP-..--..y��Y
�
`.--..--����%2"&4264&"&264&#"3"&462"&4�Α�Α�P88(PppP(8S��Α���m8P8p�p8P�����@�4DL";#";#";!!&'.7>/762#!"&=463264&"����ri����p'
FF'--[%
��
%��@@@`@��
M�N	
?JJp% 

 %`����0LT\"&462#!"&5463!2";26=654??6/76/&'&5!"3"&462			�

��)77)F�B/ 	@	 �GGbbFFbb���
w			8			�	4
	7)@)7& 
		
 �++**�@8			���� #!2#!"&=46;'&?676%3p		��		�5	

))


	5��t�	 		 	JJ
		
88
		
J�������+5=E327+"&=32+"&54&"&4632>?"&=264&"264&"#	F.	 	� 
	�&
(833�@8P8@			Y			,:�		�`
	&
8(V'`@�(88(�@P							������7#546;2#54'#5##5#+"&=!+"&="&?63!2p0K5@5K0(000(N	 	�	 	
j@��5KK5��.������p		pp		p ��B�<%+"&54674&5463263276&'654&#"&'&54632W*/!�(8$8(,
&�5T%8(
qO#)m_.!/8(1
(8&'A$(8
Pp
F)F[����CP%#!"&54674&54632632%&?'&4?'&676276&'&"74632.?$8(��(84%B."6&�R	L	
SS
	X))X	

	!\B1#)
;
'z
1(88(&6.B$
&
	X))X	
SS
	Y
!B\.#1$D/
������ '09BHL7'"&?&=46&63''&4?6#76276/&62&=7#'3'kl�MA�rQ�	=m__}LP	��uj�ddd�8�.�BY1b	����z�	b��WBߜŰ�����#'&4?66&='46/&5����  � ���� R
ww
e��&]

�mt�

]& �� �3;%+"&=#+"&=.54623%+'54632324&"2*�	@	�	@	$
�& �5@	p			�6�		pp		�
1
p &$.�
				������AG7&?>#"&?#!"&547>7.='&4?'&6;2+"/#77		u*x�[ #H0�

GU�Z-3<<>�
K		@�uW+*)EB<#/@
_6m
2

c	
	%����(&#"+"'&7'&4632?54762�3HV(	#2"#(?2��3I	X!
)#"1$	(VO?2���/?O_o����7+"&767>%+"/&67622+"&=4632+"&=463/.7676"'&'&?6#''&'&?>2+"&=4632+"&=463'62+"5'67+"5+"5�
a
%*%@�		`		`		`		�		S*
�
S
*S		$
*I		`		`		`		�

@��


.+�
hh
��	@		@	�	@		@		3$�

3+.
�3	Z�	@		@	�	@		@	�����������-Ohq;#!"&546;54+";2=4+"&=46;22654/&54;2=4+"+"374+"276=4+"&57#532�
�
��

�`		,`$$y�
8
��

�
�� 	 	`x7''7�
�����BN^n#"546;2!5'&=;27;2732?>72=4+"&546;2'&+546;2"&=46;2#3"&=46;2#0	 	�$�%  '
#	p&  	 	��		 		@		 		 �		�X($@@%5N	(		(	%?p		�	�		�		�		�	����&.6/&/&"/&&546264&"264&"�Rt
+))+
l��qQ��	0..0	Pv�����G�'%/&?'/&='6276"&47%;Z$1Z/�/-	��1�4%��Z	1-//-$1�%4�����'/mx��������32#54#32#54;2#54;2#54#54;2!32#54!2+32#!"&=46;5#"&=46;2;546;2326=4636"&546?"&546?$"&546?"&546?"&546?"&546?"&546?"&546?"&546?� 8 � H ` �H 	8(��		�`		��(8	 	
�	 	�
	���22�22 xxxxxxxxxxxx	p(8@	 		 	@8(p		p
�		�
p	 

'

' 

'@

'

'

'

'

'

'���#+!2#!"&=4637#76?#?/7?/�		� 		��o$�8V�@@  @�    	 		 	@ �&k�


�   @@ �   ������
HP7#"'.7/.?>2+"&=#"/1"&='&54?>3235463&"&462Q#4

@:!�			0
/W	 /#	\((�5e
�b"+	��		�	P/S

SV

k/	@((����<D2#+"&=#+"&="'+"&=4632546;2632>264&"E"
	 	�	@	3z3	@	pPI7

0�			`*\
 		 �		GG		�B^)1

!	P			��A�IQ&/0+"&='+"/&54?&5465+"&=4636;46;2264&"@! 	@	�	B		4$+�K5x	G			sM
	&f-!�		�@idD)
8		8$4!5K	 			����G�43+'7'#"&=265%/&/&7%62546;2 �	�(h�<h%�	���
e	@	M��	7@�w@I	�H�

��

Z4		�����Y%#32+;2?6+"&'&7#"&=46;7#"&=46;7654&+"&/&6?6;232pd"�		�	T	%O2*		d"�		�	T	%O2*		� 	 				
.0	 	 	 				
.0	 	����!+2#"/&"#"&7676276'&"276'&"A�J2??&'&@OarJO^!		!^!		1^!		!^!		�mIWH
8&&8�P`,�)))))))����#!"'&5476273{	��	 
"
f&@U		�L�&@����KOSW%+32+"&=46;5!32+"&=46;5#"&=463!5#"&=46;2+!2%35#5#!5#�	h8

�

8��8

�

8h		H

�

H	����@`�`�	(
�

�
((
�

�
(		(
�

�
(	x@��@@@@������>FN2+32+'32+";2+"&'&76=46;76;2"264267#7`
8(\7
	PK�@
	�		p

l0(pP8�
9			Mwf�
 (82n
	�P
			%*&.PpX
			W;7�2"&=4$"6265427&"�ړ�ԖP�pI�I��9�9:��R>b;SS;b>/!

**

!Z����B"&462+"&46;%2+"/#"'.?'.?'&.6?6$((�

 M

C

6
 >U
%
(
'%,G*`((��)N$	f
W2
.W
(5����
&2#"&=4&54'!2!!2#!265(P	-P(8�� P	B.��(8�P	@�&'p8(� 	.B8(������#7?G/&/&6?'.?>76'.5462+"&76"264&"264�
��
��
��
�� &TxT& ~
��
ZZ
EE
ZZ
E�:"5KK5":

�������&?6S��	
M	
=�

	�9

����G�o�'&54?>#/#+"&='"&547+"&=4?#/&?6;'&/&?637>23?632/&6?6#'&'��	

	0/=		J7R7J		=/0	

	4
NE
5	

	2=$
$
$=2	

	5
EN
s6NH(�		
Ha	N		Iw
(==(wI		N	aH
		O	P		
L44L
		P	�HN6	����@�!)19AI!#!"&7>=46264&"264&"264&"264&"62"&4264&"� 	��

8			I			I			I			�P88P8S�e>�1
	&

�Pp�															�p�pp��%6%%6����ksx$2"&4264&"2&#"#+"/+"&=&'"/&4?&'#"&=46;67'&4?6546;2354762264&"73'#�H44H4Nh
	3;$Q
	
	,	
	

	� 
8f	
�oB//B/fn)kp4H44H<
3
	30	
	

	
	,	

��(.$

(�/B//B�``����
 (<#>32#7"&547367#'547"&%2+'72+654&+'327ZR@(\gB6jK���b�P0
*q7OP/!F*#L#�D$,P2�K5

5w�0*=)�D(`�O7*!/`��#+2+"&/&"+"&5463264&"264&"`

� 
:
 �

e6%%6%e6%%6%�
��
==
@
�%6%%6%%6%%6��
�?Y72#"&'&6;2326'.+"&=4635"&=463!2676&#"+"&7>#2&'&6;23264&+&'�%9:+#5
 �				N 
C)(	:-06D
/+H
"
t�/$,A,"
	 	 	 	
'-(.G T7.
+'
(&���'"/&4?>7&?67'�M�5Z�N#L��zZzwL#N�Z5�M�^zZz���-W62"&4$2"&4'#"'"'#"'&7&47&66266+&'&#&""#"&5467&54632632:12((�((G2$2#�8(+	<	+(8%B. 5%!/(`((((2

2#$�P8
	
8(2

.B!/!	��B�5BO\i%#!"&5467<146326326#"&"'.'&'>32#"'&?>#"'&?>#"'&?>#"'&?>^%/!�!/%8(1,�+E&+T:

R�$	%
[$	%
[$	%
[$	%
�,!//!,(8(%5/
+:P
55D�@@@@@@@@���+9G2#!"&5467&54632632:62"&546762"&546762"&546�(88(��(8%B. 5%!/��"("�"("�"("@8P88(2

.B!/!	�232323�����
)7Ec6#"'.?>#"'.?6&#"'.?6$#"'.?6&#"'.?672#!"&5467&54632632:�@	@m@	@�@	@�@	@S@	@;(88(��(8%B. 5%!/Q
p
p
p
p
p
p
p
p
p
p�8P88(2

.B!/!	����@�DO\iv�%#!"&5467<146326321&?'&4?'&6762760"1"&7&54632#"'&?>#"'&?>#"'&?>#"'&?>�%/!�!/$8(1,��;GGK##K	% Ib&D$	%
[$	%
[$	%
[$	%
�,!//!,(8(%?K##KGGP&
�@@@@@@@@������0Ib{�%'.'!'+"/&?67&'.7676326&#/&""?65'76&#/&""?65'76&#/&""?65'5!+"&=#+"&}	

	
��6&

	K	+*
Q�&C��
�
�
��`	@	�	@	�
		
Nl#	c#
	+**Q$ 





퐐		PP		���
1S[cks2+"&54327.5>7327&'.5>7&'327&'.5>676.264&"6264&"264&"6264&"	 	,>&3=1S?AW3+O-%>&3=+O-%&.T,+O-.	5!6H+O-%&.T,:W52H/ &;3�							I							�
�0		�
��$
E	V>		
=	t!E		
�		'			/	


9	


/	


���%-7?"&4726767632676324&"2'"&462"&462� LB9�r9D�[a	�KjKKj5 			�a[�D9r�9BL 
��jKKjK�

I			��@�	19NUb53+"&2+"/"&='0&5"&=46;2&"&462753"&5#"&'#"&?'46;#%2+"&5�@	 	 

:)&-Y((��

�
 @`
	 	0��		Q=
8

8+e

�`&-`((D �`


��
��
�0		�����L%2#"&?#"&?6;27+76'&+76&+"#"&5467&546;2654'632324X;
D|+/!


D0!/+
&!/	(8&p�	ax
	Ao.!/"x/!.&/!8(&��@�<Y6+"&=4&'&+"&=466+"&=4&'&+"&=466+"&=4&"+"&=46S�S	 	oSf�	 	�lW�	 	B19T	 	_N-F	 		 	+�K�Q�		�V�
�e�		�t�ZtV�		�3NM8�		�JrW	:-�		�

�		�#9����	";T!546;26&/&"?6/76&/&"?6/76&/&"?6/2'.=#+"&=#+"&=!26=463 ��^B�B^��

�

�

�	5#) 	`	�	`	 			@@B^^,





�	@#01 +p		PP		�p		@	����/G%2#!"&=4632+"&=463!2#!"&=463'"&4632632632+"'p		��		@		�		 		��		P<TT<=++=(D.BB.<%^%P				`								�TxT--*"B\B  ���/A2"&4264&""&54754622654'54&"7"&54675462xP88P8S� TxT B\B�B/ ( `(		�8P88PH�(2<TT<1)�.BB��/!(��(!N�		���/A2"&4264&""&54754622654'54&"7"&54675462xP88P8S� TxT B\B�B/ ( `(		�8P88PH�(2<TT<1)�.BB��/!(��(!N		����)9%2#!"&=46;#"3!2=4+5!463!2?6/&'&`

��

@

�

 ��
@
��J�_)�
`

`
@@@@

�K^)��@�*U�%#&'"'"'"&=46767>7>7627#&'"'"'"&=46767>7>7627#&'"'"'"&=46767>7>7622
+$)l+)l+#,
!
X

Y
!
+$)l+)l+#,
!
X

Y
!
+$)l+)l+#,
!
X

Y
@	 		 				�	 		 				�	 		 				������%="&462#"/&4?7#"'.?'6#5&/.>2?6�B//B/�


0	.=u.	0


�)�) )'b') /B//B��'
!
@9339@
!
' � 

 		���19A!46762+"&547"'"&5467&5!5463264&" 4&"2�o�0+!h		0<"/B/!F!/B/"<�&��`��6`"
\	 	@K8+!//!
		
!//!+8K@&������B�
 em"&'62&.'632767632&7'&'&'&''&4767>.&76767&54762654'&6264&" 	'V'	�%,5�4,$k6+`2+=66>+2`+6
)FdF)
�((P

��P/C**C/P� =	Xb	  bX= ?13HH30@�((���3G7&=46;22654&'&=467+"&5.'.=46+"&5.'"&=46�:D
	<)Ej
0
(0z�	 	�a	
Sv	 	S9	
�d=)<	WD�

�2��z
	a�	 	`vS
:R
 
����	7!#!"&7;26=4&+"%2!546;546;23546;2���@	`		`	P�@0	 	�	 	���`		`		�000		00		0����	7!#!"&73!26=4&#!"%2!546;546;23546;2���@	 		��	P�@0	 	�	 	���@		@		�000		00		0�����")-15;C#"/&67%>'&#"#"/&6?63267'7'?'?'77&'67'�)6��
 a				!%,.O��=�<�<Q	-
$=d9w!�6�718>=��'''�.
	�	�����*'&&'&7276/>76/&67*."'f91��3
7S�DX!"&#b.&291B		
28 &"!XD
�����)9IY]m}���%#!"&=4?>;5#"&=463!2+32;26=4&+"";26=4&#'#";26=4&'35#26=4&+"3;26=4&+"54+";2754&+";26754&+";26�
�@
U`				`��				 				0				���(				 				���				0				E[

[�@	`		`	@				G				P				� �				@				�x				W				���+@V72/"/&4?'&637"&=46762#/&=46;26+"&?'&4?62�
c
c!�
c
c!cc
p��
p!c
c�
p!c
c@
p!c
c�c
c!p
p
c
c����B�C#'32%#73#5"&?6;2++"&=!+"&='#"&=46;'!0ac	��~�~��	c�			 	��	 			 �`������`�@	 	�				�	 	  ������	%?N^#53##7/32210'&/&"&?6;#+"&='#"&=46;'%"&54676>'&'&'32�=d�~!c
�'	c�51�	 			%4^�^D4('?3&X���H
>``� K7H6		�	 	 !`A]]A&m/$(�?/S!('1�32+5##5##5##5##"&=46;546;546;232�		P @ @ @ P		0	0	�	0		�	��������	�	0	0		0	0����5<Ccmw7#"&546;'&?6'&6?67>763253#"&53#2#5+#546;&54632632#3&#"7654&#"36�	�


			  
		)��
�

��
( 7!!7 (�5	�	5�#�
`
	


	66

��`��`
 
`��`
,KK,
0		0������9=A%'&6?'#"&/#"'/&7>7.?>76767'7'�
'(??('
�'%WrrW%'��_$�p$_C	h.'KK'.h	C	fW(�
00
�(Wf	G'@..@'�����2#!"&'&63!!�8$��$8���9���e@�����dt�2"&44&#"#"#;2=732;2?6;2;2=4?6=46;2+";2;6$;2?6=4&">7#"/&+'&+";2�Α�Α�uS(	

	% 

		 ��
	}5W
	
+ +	��Α��gSu	

	
		
			!�
	��8-
%

` %2#!"&=463%2#!"&=463�		� 		�		� 		�	 		 	�	 		 	 ����+"&546;2+"&546;2`	 		 	�	 		 	0		�		� 		�		�����+3.767>7676?6?62264&"�		/$L
#
#kS#&"7L/		��((�		/L7"&"Sk##
L%/		��((�����"/&6?>'7'6�$!��!$"b&`�0`"&a"v%i(��(i%#W@��@h#������?i"&4622462"&"&462&54'&6767>'&'&636762'&'.7676&'"'6'&5<546�((@(((((@	72		94�	27	
	49	((((`((�=3


:2
	�
1:
+3	

���.6%+"/#"&'.+"&=4>?6264&"�.	
3
./	7")�
%B0�
0 2zt(	
@
 &R
Q?bU;K
6*8�����"'"/"/"'&63!2�WB.".,$W���,l����}��@�'08!>32#47%#534'3+#."#553#"&62#54@��'~J�`Bp?��B��
� 2:F:2���
�P8��~;E��C=�_��=C@`
 �##��``�8(``(������%2#!"&=463$!'&>76p		��		e(H��0@te
 	@		@	�"5W�:e@:����'9A&'&'&6;2+"7&'&'&6;2+"2++"&=463264&+#

n#

�.BB.8(�(8
p.#1,#1, B\B(88(�
�(`������"/%4'7>#"'.?2&"&462%"&5>76H&Q,6	�Q7|7Q-((��	6,Q&�,� `8
D�

� ((
8` �,����%-5=%4'7>#27"'.7'"&7676"&462"264"&4628*4
�$*"H"C
4*�Α�Α��ll�l��#C*B
6

C

y
B*C#��Α��l�ll�l ����)9U"&462"&462++"&=#"&?6727%2+"&5463++"&=#"&=4672�4&&4&Z4&&4&?7
0
7.8��		 		|

P

8@&4&&4&&4&&4��h

h��	� 		�	��
�

�
������;?C%"//"&46327'&676327'&4?6;2762%7''�a		P
k
l*0)&
Q		a	

	P0

/

0Q	��IEI2EID�a		Q
&)0*l
k	Q		a		Q0

/

0P	hIEJ�EIE�����1I.7>7&5462#"'%1+"&5.'.=463210+"&5.'"&=4632119�bu
C	 
�a		z�Z	 	S9		Sv b�9t
+		a�	 	�z	:R	 	v����
2#!"&575#35#35#@&&�&� 0�0�0�&��&&@��``````����
#*.546;#!"&575#354&+326=#35#;5'!5%35#"&��&�&�@�
  
�@�
 @�@ 
�&���&&�@@ 
@�@
 @@ 
@`@@@ @������(2O2"&42+"&46;264!6"/&627"&4?"&46;2"1"&='&6?|(()	`		`	��'DD
=\		0

�R=N�((�\				DD�	\	
�1S=Y

SN8�����$C"&462#"'%.>7'&776'&76776/&//'�((%�x			�.Kk(

1���#>R04	: s/`((���fEK5(#JFa 3		
9��@�.BN"&4622#!"&46;0&5&6?63232647'.?'&3737#"/d((�*� 

+6
(%,G*,
F
�U
%
'4>+�!
 =`((��
*
(5
�"Q2
.W
���

[�)N$	L����>%#!"&=463!2654/&?6%5"&46;2;26=32###5##5.e,��			



��

1T,T1&`

8(@�@*6a&'		


w�4X4&@`(80004E�����4Uw2#"'#"&>7&542654/&54;2=4+"+"3754&+"'&+";2=2?;232654/&54;2=4+"+"3�Ԗ�j83AL9��	

	
0�z�z3
19JV�h		##		hD88D�����EQ"&462'76#"'%&'&>&'&6?54?'&/&>#"'&7�((TB4Z		��!&
J#*		?o
�<U�`((�?'f"�!			
5(:4S

--=

�����QYaiq|�+"'.547&507'.?>546;2167&5462704=46;276$264&"264&"6264&"6264&"7654&"6264&"��!	#%c
!&,�		8	
8P8
	8		
��			)																(7
"-.QC(?,
7		.!(88(".		*			��			7			7			O			2			����Z_k62"&462"&462"&462"&4"/&=##!"&5467546;546;2354?623'264&#!"3n^^^$
%)+B.�.B#� O@)%
$��@zD:�H#%
$*:.BB.!6[p�
3:*$
% f S`@���((����2++"=#"=43%2#!"=43t�8�h�� 8��8�88����%19#+"&?.5475#"&=463!2;2=4+"264&"p /(�(/ 		`		��006tRRtR��2TGGT2�				������/9A%"/.7'#'76'"'&7>76'&"&4?264&"�5
uk>`@�k04
R*I%JDK
	�|5%�u45u0k�@`>k6R=+	KDJ$JR {%5�������)-15="&462232#!"&=46;5"#"'&67%65#%35+3"&462-��

��

�����``�``c�
<\
�

�
S;���`````` ����"&54676>'&'&'32D4H���_I9*
$:\(!K8+�0�+_��_6�D5: ��Y'	Cu088E����A�(Q6'&67670767>767632%"#"/67>7>767� !5#$	
$7E $C)

	%.&%
5	
$7E %C(

	%.&%
	 !5#�!	!#
J6&0

	%
%&�
J6'/

	%
&&!!	!����2:%#!"&5463!2;;2=32=4+54+"#"5!"3�

��)77)F��808808��
Z	4
	7)@)7�088088��@��@�2##!"&5"&54���#��#�k>�

>���	5!#!"&5!%630
�@
,Y{���

��Z�����@�,H3#!"&=26554+54+"#";;2=327#"/&"#"/&547%62 �	�`	;808808���M��		�D088088����

���22#"1"'#"547>7&5454+54+"#";;2=32�Ԗ�j73AL9`808808�z�z31:IVn088088�����%."/&4?627"/&4?6?7'76�
�7-nxf
fn-7
D
P	�
�7-nf
fxn-7{
D
	P����"*2:%/&&?6/&6?6264&"264&"6264&"�%">H7 F&3
&)'H!.L	���)			�C>")	4949/!=Ssm			����2"&546�b]2p�p2�u�7PppP7����'/7?%2#!"&4632#!"&=4637"&7>2#&"264&"264"264��`�	&��&	~�~>			�			�			�((�	&&	�42BB24p			)						 ����7%+"/&=4?2=46?62=463212=46�B.�.!

'

$�S.B!J
L� �� 
2	�#%!5467546;272#!"&=463�@B5)	`	)5B		� 		�@@;aRp		pRa�	 		 	����>JVr~�$"&46220+"&50546322760!"&546;546;23254+";2=4+";27532=4+54+"#";;254+";2=4+";2P88P80.B�B.*�*��	
 
�
 
�((((0P((((�8P88PXB..B
*<	p
@

@
�4((�((��((�((�����
7AK#"&547664&"2767>7>7>7>76'.?6&/�/��"!/`(	
 ' ' 	
 ' ' �|�3��3�/B��/!"`w
' ' 
' ' �3��3� ����2#!"&46;&5462'!"p��TxT�cc	( ((	;UU;	��������%)A7"=4;54;232++"=%!463!2!2#!"&=46;;267�80880 ��@���	&�&	�
=�088088���P���`	&&	�#32#!"&54635#"3754&+326754&#!"3!26�&&��&&`P		�	PP	�
��

@
�&�&&&��0			0	�@

@
���.%3#"&4632>77'#5'6326'&54?632Kk%Kj�L!!(?)!5�26YK$(
�'"G@)!.!&>@E&.D9N"+
$7���
!)1.'7>#"&5476264&"6264&"264&"���
9��/����
rC{�
ň��9q��i
L�{����	7!+"&7;;26=326/&"72#!"&=46;76;25��E9	 	9Z�		�`		x	r	S���p		p^�	 		 	

����	7!#!"&7;;26=326/&"72#!"&=46;76;2 ���[9	 	9Z�		�`		x	r	P���p		p^�	 		 	

����:B%#!"&54676"&=4?62';;2=32=4+54+"#"26=?6K"��"K6_5jKU

U�(/B/�N6""6N_oK5n  n5�]!//!����-#"&5#+"&=46;546;23546;2+ܘ`�		p�`�		p \�	 	����	 	�����'/7?G"&462'"&='&54?63232+"2"&4264&"$2"&4264&"�((4);*Rp		G5

@6jKKjKf4&&4&��jKKjKf4&&4&`((�!2
�

o6
	`9 KjKKju&4&&4�KjKKju&4&&4����2#!"&5463#3'#335#35#�

��

`������������
��

�
@�����������/?O_o��������/?O72+"&=46;2+"&=46;2+"&=463!2+"&=4632+"&=46;2+"&=46;2+"&=46372+"&=46372+"&=4632+"&=46372+"&=4632+"&=4632+"&=46;2+"&=46;2+"&=4632+"&=4632+"&=46372+"&=46372+"&=46372+"&=46;2+"&=463�		 		�		 		�		 		�		 		�		 		�		 		�		 		 		 		 		 		�		 		 		 		@		 		�		 		�		 		�		 		��		 		 		 		 		 		 		 		 		 		�		 		�	 		 		 		 		 		 		 		 	�	 		 		 		 		 		 	`	 		 	�	 		 	�	 		 	�	 		 	��	 		 	�	 		 		 		 		 		 	�	 		 	�	 		 	`	 		 	�	 		 	`	 		 		 		 	����/?O_o�72+"&=463#2+"&=46;2+"&=46372+"&=4632+"&=4632+"&=4632+"&=46372#!+"&5463�		 		@		 		�		 		�		 		 		 		 		 		 		 		 		��	 	
 	 		 		 		 		 		 	�	 		 	`	 		 	`	 		 	 	 		 	`	 	��		�
�����#+2/&?#"&'&6&546766264&"a=Z{
Q<#*=Z{
Q<#D@Q<#*=Z{
Q<#*=Z{
������*2Hf7'&6767>"2+"&=46;76;2264&"%2"&?#"&?6;26"&46325"&46325467ua5

5a��0H[,,�\
>L'&5%%p&5%%�c>>c`���,,V�Sk	3`�(0l(k���%#"54?6327632����h0	<8y1Vh�p1y8<	����.2#!"&5463454/&#"&'7654/&#"#327���P	FK#&
A�x���`��
&#KF	x�����(4@PX_2+##546354+";254+";2=4+";2=4+";22#!"&5463"2645''`

���
H				`												�

��

M`� @�
��
@@`
g			�			q			q			0
��

 
@�``� @ ����;?%2+"&=46;7#"'&54?6325463!2+"&=#'7#P		�		 C	5��s	�		 	v1C v 	 		 	P4*�Y,		`		 �4`������5OR72"/&6;46;27"&=4?#"&=46;232#+"/#+"&54?6;23'�PP0	 	�	=8		�	=8			G	;*4 ```0		�Ѐ	
F	 		
F	 	�	

	�e0������5OR"&?62++"&5"&=4?#"&=46;232#+"/#+"&54?6;23'PP0	 	�	=8		�	=8			G	;*4  ``��		0@	
F	 		
F	 	�	

	�e0�����/?U"&=46;2#"&=46;2#2#!"&=4635"&=46;2#!2"/&6;46;2�		@		@		�		�		�				�		�PP0	 	`	 		 	�	 		 	�	 		 	@	 		 	``0		�������/?U"&=46;2#"&=46;2#2#!"&=4635"&=46;2#%"&?62++"&5�		@		@		�		�		�				�		�`PP0	 	`	 		 	�	 		 	�	 		 	@	 		 	�``��		0������5JR72"/&6;46;22+"&=46;5#"&54?6;26&/&767.7>264&"�PP0	 			`			
0	6(>*,


	$+
"```0		��@	 		 	@	 		p}1'3>=&\������5JR++"&5#"&?622+"&=46;5#"&54?6;26&/&767.7>264&"kP0	 	0P)		`			
0	6(>*,


	$+
"�`��		0`��	 		 	@	 		p}1'3>=&\��A�&@CX%"&=46;2#'3264&#3264&#'+"/#+"&54?6;23'"/&4?62762		K 2	2!3(

(8

�D	X	D;.��p-
7�
�	�	*# +�0`0��	$$	��E�
�p
-8��� �@#2#!"&4623&54264&"264&"�xTT<��<TTxTp��/B//B`B//B/@TxTTwUU;,$$,<B//B/�/B//B����
2%"'63227632".'&5463232>7632�G�G';(;�4Bt�tB4		8?e56d?7���	D5++5D	 
������
*%3!"'&7>32#"./&#"7>?632bB_H��Z:5)=#84% b6@�#�U9/FV ,$T+A)����	=!+"&#546;2#5�^B@B^��^B@B^�`��B^^�� B^^B �����2"&4264&"2"&4264&"�V==V=^OΑ�Α�jKKjK(=V==VC�Α���KjKKj����"*:D$2"&42#!"&5#"&5463!2264&"754&+";2654&+"�			�		��8P8 &&`B^�l((p
�

�
�
@
�			g	 	(88(&&^B�p((�@

@
s�

�V6�� �H&�
,v�3m��	4	2Q	
�	@�	2	Lb	,�	
X	.�	&�	
'	29	&�	
�Copyright (c) Font AwesomeCopyright (c) Font AwesomeFont Awesome 5 Free SolidFont Awesome 5 Free SolidSolidSolidFont Awesome 5 Free Solid-5.15.3Font Awesome 5 Free Solid-5.15.3Font Awesome 5 Free SolidFont Awesome 5 Free Solid331.523 (Font Awesome version: 5.15.3)331.523 (Font Awesome version: 5.15.3)FontAwesome5Free-SolidFontAwesome5Free-SolidThe web's most popular icon set and toolkit.The web's most popular icon set and toolkit.https://fontawesome.comhttps://fontawesome.comFont Awesome 5 FreeFont Awesome 5 FreeSolidSolidFont Awesome 5 Free SolidFont Awesome 5 Free SolidFont Awesome 5 FreeFont Awesome 5 FreeSolidSolid���	

 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvw�
xyz{|}~���������������������������������������������������������������������������������������������������������������������"�����������	

 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJK�LMNOPQRSTUVWX�#YZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~����������������������������������������������������������������������������������������������������������������������������������	

 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefg�hijklmnopq�rstuvwxyz{|}~��������������������������������������������������������������������������������������������������������������������������������	

 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcd�efghijklmnopqrstuvwxyz{|}~���������������������������������������������������������������������������������������������faucettrailerbacteria	bacterium
box-tissuehand-holding-medical
hand-sparkles
hands-washhandshake-alt-slashhandshake-slashhead-side-coughhead-side-cough-slashhead-side-maskhead-side-virus
house-userlaptop-houselungs-virus
people-arrowsplane-slashpump-medical	pump-soapshield-virussinksoapstopwatch-20store-alt-slashstore-slashtoilet-paper-slashusers-slashvirusvirus-slashvirusesvestvest-patches
glass-martinimusicsearchheartstaruserfilmth-largethth-listchecktimessearch-plussearch-minus	power-offsignalcoghomeclockroaddownloadinboxredosynclist-altlockflag
headphones
volume-offvolume-down	volume-upqrcodebarcodetagtagsbookbookmarkprintcamerafontbolditalictext-height
text-width
align-leftalign-centeralign-right
align-justifylistoutdentindentvideoimage
map-markeradjusttintedit
step-backward
fast-backwardbackwardplaypausestopforwardfast-forwardstep-forwardejectchevron-left
chevron-rightplus-circleminus-circletimes-circlecheck-circlequestion-circleinfo-circle
crosshairsban
arrow-leftarrow-rightarrow-up
arrow-downshareexpandcompressexclamation-circlegiftleaffireeye	eye-slashexclamation-triangleplanecalendar-altrandomcommentmagnet
chevron-upchevron-downretweet
shopping-cartfolderfolder-open	chart-barcamera-retrokeycogscomments	star-half	thumbtacktrophyuploadlemonphonephone-squareunlockcredit-cardrsshddbullhorncertificatehand-point-righthand-point-left
hand-point-uphand-point-downarrow-circle-leftarrow-circle-rightarrow-circle-uparrow-circle-downglobewrenchtasksfilter	briefcase
arrows-altuserslinkcloudflaskcutcopy	paperclipsavesquarebarslist-ullist-ol
strikethrough	underlinetablemagictruck
money-bill
caret-downcaret-up
caret-leftcaret-rightcolumnssort	sort-downsort-upenvelopeundogavelboltsitemapumbrellapaste	lightbulbuser-mdstethoscopesuitcasebellcoffeehospital	ambulancemedkitfighter-jetbeerh-squareplus-squareangle-double-leftangle-double-rightangle-double-upangle-double-down
angle-leftangle-rightangle-up
angle-downdesktoplaptoptabletmobile
quote-leftquote-rightspinnercirclesmilefrownmehgamepadkeyboardflag-checkeredterminalcode	reply-alllocation-arrowcropcode-branchunlinkinfoexclamationsuperscript	subscripteraserpuzzle-piece
microphonemicrophone-slashcalendarfire-extinguisherrocketchevron-circle-leftchevron-circle-rightchevron-circle-upchevron-circle-downanchor
unlock-altbullseye
ellipsis-h
ellipsis-v
rss-squareplay-circleminus-squarecheck-square
pen-squareshare-squarecompasscaret-square-downcaret-square-upcaret-square-right	euro-sign
pound-signdollar-sign
rupee-signyen-sign
ruble-signwon-signfilefile-altsort-alpha-down
sort-alpha-upsort-amount-downsort-amount-upsort-numeric-downsort-numeric-up	thumbs-upthumbs-downfemalemalesunmoonarchivebugcaret-square-left
dot-circle
wheelchair	lira-sign
space-shuttleenvelope-square
universitygraduation-caplanguagefaxbuildingchildpawcubecubesrecyclecartaxitreedatabasefile-pdf	file-word
file-excelfile-powerpoint
file-imagefile-archive
file-audio
file-video	file-code	life-ringcircle-notchpaper-planehistoryheading	sliders-h	share-altshare-alt-squarebombfutboltty
binocularsplug	newspaperwifi
calculator
bell-slashtrasheye-dropperpaint-brush
birthday-cake
chart-area	chart-pie
chart-line
toggle-off	toggle-onbicyclebusclosed-captioningshekel-sign	cart-pluscart-arrow-downshipuser-secret
motorcyclestreet-view	heartbeatvenusmarsmercurytransgendertransgender-altvenus-doublemars-double
venus-marsmars-stroke
mars-stroke-v
mars-stroke-hneuter
genderlessserver	user-plus
user-timesbedtrainsubwaybattery-fullbattery-three-quartersbattery-halfbattery-quarter
battery-empty
mouse-pointeri-cursorobject-groupobject-ungroupsticky-noteclone
balance-scalehourglass-starthourglass-half
hourglass-end	hourglass	hand-rock
hand-paper
hand-scissorshand-lizard
hand-spockhand-pointer
hand-peacetv
calendar-pluscalendar-minuscalendar-timescalendar-checkindustrymap-pin	map-signsmapcomment-altpause-circlestop-circleshopping-bagshopping-baskethashtaguniversal-accessblindaudio-descriptionphone-volumebrailleassistive-listening-systems#american-sign-language-interpretingdeaf
sign-language
low-vision	handshake
envelope-openaddress-bookaddress-carduser-circleid-badgeid-cardthermometer-fullthermometer-three-quartersthermometer-halfthermometer-quarterthermometer-emptyshowerbathpodcastwindow-maximizewindow-minimizewindow-restore	microchip	snowflake
utensil-spoonutensilsundo-alt	trash-altsync-alt	stopwatchsign-out-altsign-in-altredo-altpooimages
pencil-altpenpen-altlong-arrow-alt-downlong-arrow-alt-leftlong-arrow-alt-rightlong-arrow-alt-upexpand-arrows-alt	clipboardarrows-alt-harrows-alt-varrow-alt-circle-downarrow-alt-circle-leftarrow-alt-circle-rightarrow-alt-circle-upexternal-link-altexternal-link-square-altexchange-altcloud-download-altcloud-upload-altgemlevel-down-altlevel-up-alt	lock-openmap-marker-altmicrophone-alt
mobile-altmoney-bill-altphone-slashportraitreply
shield-alt
tablet-alttachometer-alt
ticket-altuser-altwindow-closecompress-alt
expand-alt
baseball-ballbasketball-ballbowling-ballchesschess-bishopchess-board
chess-kingchess-knight
chess-pawnchess-queen
chess-rookdumbbell
football-ball	golf-ballhockey-puck	quidditchsquare-fulltable-tennisvolleyball-ball	allergiesband-aidboxboxesbriefcase-medicalburncapsulesclipboard-checkclipboard-list	diagnosesdnadolly
dolly-flatbedfile-medicalfile-medical-alt	first-aidhospital-althospital-symbolid-card-alt
notes-medicalpalletpillsprescription-bottleprescription-bottle-alt
procedures
shipping-fastsmokingsyringetabletsthermometervialvials	warehouseweightx-raybox-opencomment-dots
comment-slashcouchdonatedovehand-holdinghand-holding-hearthand-holding-usdhand-holding-waterhands
hands-helping
parachute-boxpeople-carry
piggy-bankribbonrouteseedlingsign
smile-winktape
truck-loadingtruck-movingvideo-slash
wine-glassuser-alt-slashuser-astronaut
user-check
user-clockuser-cog	user-edituser-friends
user-graduate	user-lock
user-minus
user-ninjauser-shield
user-slashuser-taguser-tie	users-cogbalance-scale-leftbalance-scale-rightblender	book-openbroadcast-towerbroom
chalkboardchalkboard-teacherchurchcoinscompact-disccrowcrowndice	dice-five	dice-fourdice-onedice-six
dice-threedice-twodoor-closed	door-openequalsfeatherfroggas-pumpglassesgreater-thangreater-than-equal
helicopter	kiwi-bird	less-thanless-than-equalmemorymicrophone-alt-slashmoney-bill-wavemoney-bill-wave-altmoney-checkmoney-check-alt	not-equalpaletteparking
percentageproject-diagramreceiptrobotrulerruler-combinedruler-horizontalruler-verticalschoolscrewdrivershoe-printsskullsmoking-banstore	store-altstreamstroopwafeltoolboxtshirtwalkingwalletangryarchwayatlasaward	backspacebezier-curvebongbrushbus-altcannabischeck-doublecocktailconcierge-bellcookiecookie-bitecrop-altdigital-tachographdizzydrafting-compassdrum
drum-steelpanfeather-alt
file-contract
file-downloadfile-exportfile-importfile-invoicefile-invoice-dollarfile-prescriptionfile-signaturefile-uploadfill	fill-dripfingerprintfishflushed
frown-openglass-martini-altglobe-africaglobe-americas
globe-asiagrimacegringrin-alt	grin-beamgrin-beam-sweatgrin-heartsgrin-squintgrin-squint-tears
grin-stars
grin-tearsgrin-tonguegrin-tongue-squintgrin-tongue-wink	grin-winkgrip-horizontal
grip-verticalheadphones-altheadsethighlighterhot-tubhoteljointkiss	kiss-beamkiss-wink-heartlaugh
laugh-beamlaugh-squint
laugh-winkluggage-cart
map-markedmap-marked-altmarkermedal	meh-blankmeh-rolling-eyesmonument
mortar-pestlepaint-rollerpassport	pen-fancypen-nibpencil-ruler
plane-arrivalplane-departureprescriptionsad-crysad-tearshuttle-van	signature
smile-beamsolar-panelspasplotch	spray-canstamp
star-half-altsuitcase-rollingsurprise
swatchbookswimmer
swimming-pool
tint-slashtiredtoothumbrella-beach
vector-squareweight-hangingwine-glass-alt
air-freshener	apple-altatombonebook-readerbraincar-altcar-battery	car-crashcar-sidecharging-station
directionsdraw-polygonlaptop-codelayer-grouplungs
microscopeoil-canpoopshapesstar-of-lifeteeth
teeth-open
theater-masks
traffic-light
truck-monstertruck-pickupadankhbible
business-timecitycomment-dollarcomments-dollarcrossdharmachakraenvelope-open-textfolder-minusfolder-plus
funnel-dollargopuramhamsabahaijedijournal-whillskaabakhandalandmark	mail-bulkmenorahmosqueompastafarianismpeaceplace-of-worshippollpoll-hpray
praying-handsquran
search-dollarsearch-locationsockssquare-root-altstar-and-crescent
star-of-david	synagoguetorah
torii-gateviharavolume-muteyin-yang
blender-phone	book-dead
campgroundcatchair
cloud-moon	cloud-sundice-d20dice-d6dogdragondrumstick-bitedungeonfile-csvfist-raisedghosthammerhanukiah
hat-wizardhikinghippohorsehouse-damagehryvniamaskmountain
network-wiredotterrunningscrollskull-crossbonesspidertoilet-papertractoruser-injuredvr-cardboardwindwine-bottlecloud-meatballcloud-moon-rain
cloud-raincloud-showers-heavycloud-sun-raindemocratflag-usameteorperson-booth	poo-stormrainbow
republicansmogtemperature-hightemperature-lowvote-yeawaterbaby
baby-carriage	biohazardblogcalendar-day
calendar-week
candy-canecarrot
cash-registercompress-arrows-altdumpster
dumpster-fireethernetgiftsglass-cheers
glass-whiskeyglobe-europe
grip-linesgrip-lines-verticalguitarheart-brokenholly-berry
horse-headiciclesigloomittenmug-hot	radiation
radiation-altrestroom	satellitesatellite-dishsd-cardsim-cardskatingskiing
skiing-nordicsleighsmssnowboardingsnowmansnowplowtengetoilettoolstramfire-altbaconbook-medicalbread-slicecheeseclinic-medicalcomment-medicalcrutchdiseaseegg	hamburgerhand-middle-fingerhard-hat
hospital-userhotdog	ice-creamlaptop-medicalpager
pepper-hotpizza-slice
trash-restoretrash-restore-alt
user-nursewave-squarebiking
border-allborder-noneborder-stylefanicons	phone-altphone-square-altphoto-video
remove-formatsort-alpha-down-altsort-alpha-up-altsort-amount-down-altsort-amount-up-altsort-numeric-down-altsort-numeric-up-altspell-check	voicemail
hat-cowboyhat-cowboy-sidemouserecord-vinylcaravan�����f��v{��v{�assets/lib/font-awesome/webfonts/fa-solid-900.woff000064400000306424151327220410015744 0ustar00wOFF�
�K��FFTM0��^�GDEFL*�OS/2lL`3�V`cmap����j�4gaspt��glyf|W��lTɔ�head`856׾Nhhea`p $C-hmtx`�����	locadx
-�jDmaxpn� N]namen�
+%�1postp�91.�Fax�c```d��7Ү��;e�_��Zu�x�c`a�������Ø�����2H2�0001�23`i�)
X�g<�����0#H�ъq)�R``�sex���{X����/�8��|��RAn˭�f���$M�I6f���lͱ4��)^���K����u�I*C!�Dh:����=�s������'�m�o{��s.�������r�6��-����0����������j�X f&���X/֛���,�ų	,����e�Y[�V�Ul
[�2����a��4�a��"��$k焛����y�����|(��?��x�4O���|)_���u�M������<��_����z��o"D�S��{�@�xLċD�;�H+ş���Yb��D���T��*�h��f!��E�l�n�m�'؉�D{���~�>l���cv�}ڮ�k�O�f��n�;dgi�(�G�/�r�&c���)��r�L��e�|VN�Sd�|YΔ��<�@.���5��\'3�.�W��d�,���B���E�g���y������w�"�S�;g�J�ʹ�|�\r�+�U�M)KuS�T��T�*F
Q�*N�T���I5N�WIj�����d����f��j����ej�ڠ��mj�ڥ>P���W��:�*�?�YuNը��^5�f%T�jՆm�0�C��(�W����z����������/�z�Nѩz�^�W�7�Z�Qg�V��w�}P��|]���q]��t����I_�B;Z���]���vw{�?r��C����ܱn������vS��w���=�tϹ��s�t�bf� �,�i��H�F���Ӊl��t���j��F����e�����ֱƘ�
���==�w�><��1�a>�s:���c�>�/�*�Ӎ<�s�����紊��O=��0D�=�m"R��p1F<�9�.f����s�Id�mb���Q,����r�ڷ�����NS=���������<��<����<����*yNW���Z��2O�{NK<�gd���-N�����d9u�:9�A�S�8e~�5_s�z��~�Ӈnp��9M�Z����?�9��T��s�^e�����i���9mR���C��~�w�~���>��|N_�s�|�P�yNW��n��f�z�ާxN{N�1}����5�-n��zN�<�}���9n����4��N#�#�F�Ȱ�o���H�N+ܺú��eu�¬nVW��eZ`�Z!V���
������U�L/�F�@/�ZZM��yZI?�����e�-�'�	z��i-�G�6��f�Mt#�@ߤ+h:]N��:�΢�Йt�F_�S���9:�>E��O�Б4�>B�Ѵ?���7��v���n�
��h 
0������f�Yo^2?6/���9�Ya��ls��n.3���5G��f�����.�����j�6lE��X��O�q<��!a!�|<�y������p7��l܁[���-���1��r\��8��)�
NǗ0��8���(��b��G0��0��q��@|�}���&�` �נ	�.A�@5TA%��
(�28�p��?���
 ��{��a;d�&�o�zx
V�
H���`!��|H�90f�tx��$��/��# �����@4�?�(��ۡt(t�`0H;i#���\'6���J�I�LI�'u�����2RJJ�	R@���I.9@���$��%�d9YB�Y$�L&�HI$� O��;H�Ц/�7��w�΁�_��
0��@㛻i���NW���s2ذd��x���	�Gu0��W�==�=�s��;�޳;;;�{��V����m�v�B�V@���f
�#F�	�����3D$�p����!�������!0�^Uu��̮|����NuUuu��W��x��Z��v�+�$�<�
�����Y)�����4�l4�x«�4b5H�Lb5�q�)���8f�tӴ����5����^!��'��:~��sX}�޽vdR���bq@��Xu�� �wiʠ�!#K>�~0UU8��~ꛆOpsP�=܅�e���$*��݈����$�Ԙ�6
�&���%O��f��O��͖�˟ �hT�~p�<C�<��vK���M��qp�/g~�Z��Z�ڙ&-[��i6GT�r�ۧ�?�(+F氢F�>���<L~S����%'A;��|�[��N���ah�\�.LA1�����"D��Gj�b�P�2���\��;ۘm�5+��!�m���{�Q'���j�޸��
���gs�S�I]H*��y�hx��:�+��,	���s�}If爷^�o��LPad�.��$YE^�4ET	�*閬�S<�HH���+��#^�
����"J�,)�#�X�U	�=�����1�>6���ƒf�d,���RKU-}�g�)/,oMֻy�ϧm����|�V�{��"odY�/J���D-U�h�j馎y^7���-A+	Q4`��^������*���K���p馦ߚP)�sUI�����UA4
t!\��.��
P�u�+Z_���6*@|��{�(��r
��#��?��Pg���^d*��j����B�(�S��?�7\��{��1Lq�r}K�EQ;b*��-7�(oiYB²�%�ò4I��LS�\�g�G��B�9;"
�� Q6��&���5%Y��I�+�AY�-�	OUy>V-�i�}o5��f_�Z�k�Â�$AJr�����Y��Ì�0ۡtY�h� i��X�tẑ�@�,;'AQ��(�J��f��`V��fIJ*����(j�m`�M1K#����OYR���'�=돯�9��p��P�� �ȓ���t�����+B�&`��#�e���Z�镬R�e��9f6Ct�t��"d@�ĵ�(�ʹWZd�D�c���NK5a��-�-Ӻ��.E��9�F��w�l�C���
1�Kk��6iR���PWU�Y%Uh�V[]/:��o�ڿO��S��U�<r�I��[u�&���5���Uxg\�j2���vL�7"ВC
i�H��
Z��܋����A[0�}�Ls`3O*�<҆)�fx��A�IS�͟Eq�#BQv�Penr.Dx�H��.��+��8���iQ�<hK���d�vŋ�FV<��}�)�H�x���/��`�A�n^���?]_������nF�h���t?��	8��~x�<O���#T� �����b�!�����A�\�;�s	���Vq��&�
nnG� "3�\,�I�1�u��ա���-4�j��<��=2*s��rFs
6�z(i=�W���.^����q���"��� [��������"�SBDQM4�Ȩ���Om����UEy=���b�y"? gk�����ԗ����V�~/-��1i6dj�X�a��o�LK���
��*��!���C�[!$ݨ���}q==�+�����q)=�2��bR��l������q�^�����$=X���B����±G�P"�+�:�+�X<:��T,K�<: ��H�/���2���OR��L�I��k�X;��;T=fj1gȋ^���ER�XS�g�;)%�K��ʸ�۽XQ�*^�5/����I���*���%m�\��q�J���=:��`�5�P�K�(�7#�������)�wN.IҤ�U%BMAw/��o��\"��ҾQk�A��w�;����Y��4����G%�U�w�&r>-��"���*����U�_�Qžs}�F�ŋ�3����h�5�
��^C���M]+S3�L@�r9�:�:�4:{x�j<F�)������}u稻EƦ����r�c�/]:15⾧�cQ�9��\�����E0Ͻ��5h���+���� O���M�X����?�?���-�52��;fDE7�V_H����q��5����m�c:�'M���
�j:�]��R74{���
C+8��/(^Aƚ���9 ���d6O�+�Q�Pyl,�?�to�1������� qt�Bh`jd���6�XA8�q6R,�_��6@�����q� L��D7�V�hΟ�#�k`��1ɟc�ɇ'W��?���Ba	��60�i�J�2��.ٚ)��;�'����ꈮ#��Y���F@�N,��}3i���#�����B�jD�L@�#v�x��O��Q�
2Q[�r�c�.#�4~���u�FhA_�qu�<��	O�&cJ>
�
`3	��Z��	�R��!��tYL~��JB�e��Epc)�g�S���g�0Z0櫭꼊�	�FJ��o��
K@HLJ2�~�iW̒��T����:?_%:�?�Ku��b��Ȫ\d�\��l����+Lƴ.ܘuXk�Q�#���@�e)&J��2�!�)�"��[21�@�_�S���b)Y*E�2�����|�D�ퟪ��ry���J�D�R��ʒK�b�$�����:�1��I�.��Ľ���{�%��ʤ�O��&+J_5�+tC-�"S�r+��M�Y!�/t��� e<$�:8k��\�9�($C�`�'B|�p*P�S��3c�@�!	��i]�6V�i����N](�w#��E]�M<0bD�lD1�l�5�g���z}/]��غ/�ښ#�v�8cd�P��R��`L�k�`�Ոٜ�D^{���Q$���(٪���ZZd4Ί�G_�.���"��&�4ʺn����ɖyIР���Y���1n/w����z��
�1�]a�;4��y']��I�؎�5�,2b�NJ��ƻ�.ؖ5Cy��@��a-���7�tbɻ�ZD"&�-.
^�����]�_,�5�m�"YN�1  v�������f���5�l�W�ěEM�%`ixX�®p�Ms@�:�! �4���b�m47D�*�A�R�;9�^��YC�G�$�M��ܿ?��4yA�^������Mh���땊�y���2y�r�n|�x��Õ�
�hxDx�`�B�gC�'8h}al<
�:���o�4a�’k����iB�g�'K|��^˔�p꽊TU䴬T%%�}�$%$S۹Bpg�A�|� ��� �I�?���o�������U�3�(!Ic�r:���0�a�����(����ީaZ�t�Ի>S�4ayԴ��5-e����Y�����=�ʭ���E�~O�54Ľ�{5� g(�İx��+�B@��at����.��{�W��U��5ȗ�JÕ,c��W��r�VK�;_������$���Ր�����i���Si�^Z�B#L(׏�~�No�;{.��rhm�z��Σ'(@��t�]$h��jm�h@[��Dw�\.���4�:9��8f���2?_�I�Mf�Z�t�˜W���v�v����Rd�2`�e�9�?%�� Z%�J{��+����bvh�����M�����j#� 5��:_��/�opF�&(p����"E�Bc�l^�g?�>m����W�L"Xq��A�=LX�d�w#|��1[,0VU�1K���]����IiHT�)��X؆�݅�]~�kx��}��Wh�Ϗ'a�y���ⴐ�4m~^I)�PD5�DyMF��o�f盛v�M����oCh���O�����(z�S��nα�۶��<݊��L%���)	%}�@n�
;un�����s�7�ܔ�b�0���D�lMr�F�p1���^�.5<*7��x��~'��ׁ���Fѻ��e@��i���1�r0;Ѯ]��o��?c[֊]ȍ\�����>2
����0v&��j�{t�%<��U��0��|V�_ʗ'?�A��k�o����W1������ӏ
{oʢ'e�IS��{
*4e%�nK
O�x4�5��X���8�g��W=�n3�ڑȱ�2���K�����n'ٍ������v��aK�!�U�)7�L��l!�U�a���XE�)(<�~/�KQ6��������B\$������^-)�Վ�`tb��*�mK'N,�>f��4W*�q\/�'�
p;�����d�M�"�n��:8ֆ�l;�WP�@@�uF)X���2W����)�o�J�J�U��o����> o�\��ى�������3n�lA�:�������\�(|
)��h�_?:�0Y�7Ƥ���s|�=]N�L���f�9��#XK�s/&P�"�#�>��?�#/|Ny��3Y�D]�#+�?Ѩ�(d"J�ЕHf����BH7�('�+A�:��n��z4�?k���S�{�璐��O�oF_�a^\
3c�L�pg�p-.O��nwԑ�`f@�ڈ�	�Kr��¥Y����h���I����hJ��Cu5�הd�E	EE�&%�j�@l(�w���u��EHA1���#�ї4#m��Ծn�J��$]ֽC3~h��:����!'���7�N�փ���T��Nj��-��o�c�P8t�@�5d#&nÈ
� �&l�4��6���Q�����y�򯆼�(�p���_�}���L���🛄�v�!1��h�S����Y	rD�#�Ǭ�ϛ"œV�>����X�7�����
fXN�s�tJ��~	�k�A�T��5�	���;��$�q̯:���b��@q�5K��Z�������]�{�-� �=��7Y�*�	U"�cc�0H�ʕ#��ϣ��HDڶ��C~��yMi�$dji���pb]F������Ɛ SK�a2Έ�U2�����F�L�пk>�)O+^t�[v�C����M�Z��־e��Ҽ:8� �>eLr �R���6ѷ$�t(l�g9ߓ@������ݺ$~����II���@�Oqy2�>�	cG6(�a`�?X��?1�b_��/��n�5�����Yo4{^�v��<��+�'�<{��\v�R���0o�)y�-�=2&O��Xv�������״��^W-�׭������a�M����I^^hL,�n���+���w�kX7��\�o���
��ދ>�ݕ����{OݵKK:���|����s��y
�p`��8mq�yQ�m��ً����5��/j���h�"�&��y�)����b�F���Ƚ��OdD	ۂ���/�F����� �V��_:G�y|���,KS���^G	B�E�V��C���;�A�Kk��,�0\�4��
��B��-Ʋ�q�}�[�@�rn�t�b/�<W�
օ0I=+��yET]#
%Ξ��%�'8�ډE���J<=N��N(ٍ�c�W׋`�_ν����V�gB���f_��}�q_+q_�R_+q_�ԗ��,�zRsp>ii/!^pr��\7�k~mo����u�_�~�N.q~xXoQ_�s����F��]���Y��\����{���I_.�I�������{깐��N|�ΜL����x��5�4	=�mh���;I�Ʋ��C��M�1Iv��00@ݏ��%WN<������p+$No�)t;�E���&�yy�ր����r��&��z�ujZK���^;G|�q$�e��
*A�N�}nC��2KN�`숤��7ڪHU�>n�jƼ������u[�u���KK'Jf̷�ݿ�]�ݯ��K�:�\�ȓ�#�z^uzЀ�g�����s���3P�an���\�esX��]gL�ID�|p�@�j�|����lQĹ�k��v8�Eі�/���W࠷n�v�{�n��(KjV�I�=#���foeoR�)YUz�$}��B�K�r��]�\�V��K�>��x7�#�$A���RLJj��
|�T^�:�T6�:k*n��_�h|�r��
P:CQy�>�z}��J8��%��Dܹ� ���rА2i&��CT>�9�%�X:yz��/t�U!Z���LAm�i�̨*���:*��:J�4��Y�G�K�#XLyƴ��M^J�#
UJE��)�ZJ�{���bq�
�3y�3�y/�.�.��~�p)`��#�;:FIQV�	���wE!%J����DYL	�/��y��%LN���T��E�T��4��$�Q�T���GO�}����x(g�5�0�k��	���vϭ)��|����k�������L#;EY�����/��"E��1�\N8�_P�n����(�Ë�zO�YM�'���
`�>qL�gHD�;��i�6�>��xV�Ǣ1�vŹF��A�]�(�Ve��Y�M�ʪ<	?O�אc�kl�r<�C�sf��!�8>��yY�:���S)�-�a�}��ߦg�]�*�J1H"���'aG9dj�-߯j�!��U#�����hd�>�z�a�}>uњ�=���<T��	���Hdں���8��҂�u�]
�؄ߕ��$\���z��W�ιY�+����楯͝Ƚ�ү�;	�}g�x<>��j�0�	�}�G���D����$;�'�_
���%�^ev�0�~J&���A�'/��w�辅Q�Ă �Y>zϽ/���(��5?ٔ���ѣ� �$-��#� 	w�]9�܁C������*�9���PO���B5+�;M?�A�*�}ja��y	Tz��-X����
���-� �iX�M��jj��r���.�yr��G��%}�8X}]��I��a��� �U�!�����l��9��2k�V��Jʇ��	S!�/��7�BC�h�}!��t�=r�4 i	����1Ċ
v�N�g���;/�n=�u�H����X\\$�R��+d^2
+:����F�Nd�����vG�-;�����Z�
8c!	[���{�Z�b?��#E���H���E�?`c3E!$�ATn<�<�)=1�`f��w�,��	��&��7��L��[1���j.���^��覛.�4�c�n톀��ġ��(@�9::ҫ[з��A�0��kt�n��
��������ѝ���F_CWݩI�)1�����O�⊫Jj<��n���1Fj#�$Gɘ4$'*���_���Pf��L�uח[ꖻQk;a�b��P����ZA��u׮������MӪ��Չ�(�
��������릷W���,ٮ�?��cyɵ�G�_��%Eudg۞m�F%95�Q{)�
s���a�i#�=��
�"�6T�W�F�/6��W��KnY�z��/V෶�ZY�M��-�Z˭\�ΐ�Vk
~�Wr�k��\.���H���?V�)�'M��`�����1U���j&�Qɿt,#��X�D��J{�W���|�K����_-��κ_q�oZ�W�*<�'0�}��B�
��x"|�A��H/�������X�Vb4��A	��Gi1���h:�gӤ
�
tI��R">�ٟy�T������"��<�`��ui��K�KN����.ZSAT�arx�SX��)w�~)� ������0ҵ��2W�]yu�r9§g<R*K�G���T�ְ�BOP ];��q$2��CC�`E�"'���8.4��(ƃ#8��)i��5��2��S�T[g�R���L%�+e	f�׀gJ����o./����ꢯ�ԁׄc�����B8�L��k��4�A#�~wȐ��;"I�8�fO�nϞ�ʳ�����F�?Y��h��g�E��y/y;��)|��dg��n�"���9t
:�z��6���n'�QI���:2���-�Z]?�!�h��ԝt�ǠwQ����kqxϊ��4��SI�b�� ����(]2�u�3�K�Η�����ҹ\��o�w��d!���M�W/��o��O�O�=�jA�����
�����X���˰��:��BM���g��P���[-Fו-�Yuԃ������3Z8G�)�K_H�|NW�%��E�����ƹ��*�r>��>��%IZ��o���=d�v�׵����[�e*}�J_�M)(��dg6%o�k��쯊K�O9��n�O�>���_�>_����Wn����^/~X���LC2q�?���j�nF�]��"��kpW�C��,�oT���Nw��h����5���O�8(�q�PKU���\���7����݊�*����f�3�J�W�J��φz}����>W�������R�Ӱw���}���^_Xz�>�����l� �[kS��Z����V׿��^=��j=��`��8��V���}�[����}�_��e�hW�d��^���/]�0fMW&B�֝ha��hO`�#��_�=h�6��hk�B��[/�=]�O����gw����(��P��مb�eh��KY��g97�xÏ}���
7�6�;�|�R&b��N��d��ch吢��W�EV+-���>�h�/P���8oR�e�,��?�ܖ.�pb��`��$N�
7�T�H�ES�Dc�PQ��a�7�+�5)F�P����?�0e_���<�Q,�G��m:(����|snF���`��}՞���h~�a�	�G~J�������+�?vlyq��l�M���$��B�Γ�5��^.��})�)*�5�	�& ����}W`���4i����Cİ�3��R$�AE����O�t�:�BC�v�w�m�"��h�?���,+�_�F���^���:��`<>��a<�섨�(z>�2j�c�R)�x\�a���s�+n��lL��M�����ѓQ��Q5��"�=�3�����8�5��o$λ
�Ǡy�d�4P"�V�~�0�H�-��ڠ�d��s�a�z�$4!�d�z0�l�z�����'�L����>����y1�RJ�u�.� �I��0c��E������Vx�[�V;>�����Z�C~�Ӿ�[�OP+�A4�7�@GQ�)���͎Z��D�[?����!��v��w΅��&\˕�C�l�g��:r��gA����C�y��J]���֘� ��O�⧭Q�t<5DMNP;M�Mޚm�y��xd�����`��/0�S��G����pxT����� ��Ð�?�=�$�T䆝��
2���2ýb��p|;0�{�s�3�	�I�*c~��?�yc(ʸ�7����'��]Ț�wR�<��v|�U��|��!��64���A��{�‚�T���Tx(=��i�w~��\���Bo�	��쮇
#a��ڣ��8��
�G�7�uO'��q� ��(7��h;��k��0n��C9`�E.���"�X^,:�Ƣ.tYz(��+g2�_�KQKcՉ:�nj�1�#՘]N�n}&C���)B��AOw�tg�
����j!�*�,��ȿC�HS����u����I#l�g
�"R���C~�,��'Qŗ3 � lD��)���U�})h��ߧR
���0��z}0��m�0F�����g6��|b�oX�5T���?���'Fs� j"��/��E�ܾ��e����z�}v6�f�<�YX�k���uH~0ґ���=���"���[�u���	l�c�Len������^F�p����u�ae}���������n�2$��
{�@X6�m/S�#]@��Α�Be'�޲i����~��˰�}u�Y"��(���A?}�G�<h�6���R����]h�$􌢜6�ӻf<S������K�Y�P��9���hk̰�ԥ��#)-EL-�=��r��D�q�/�S��Y�`N��2}�:v}��։[��� �Vs��4<�w~�;Q��^v��QO�u�	5*��D�g�G��X�q�g��=��Ai�3�:�0��d���M�d?�`لq�b���a�uX0]	
��~�1s�s��}�?�y���)�hO�kǁ��p�u�\r���vN^"h���j��81Yd��CD�w��n�2F@F}O�$Gr��	��˺���).�H��w���+$G-��|�t���,AБ.����@w��}��]��d"�Fu��GW(�{)XjI8��E�����~R�8��)�]�9�5���z�N�$H�u�ς��N��M��w$(	�Cn�����h�3q"��f�'3���Y������=��F4�ZYu�U/�k.��Ňgs�ù�a�md؉7.1���Q{b_���@�/��(�5���\�t��_9e��H��.���ŷ�%��+�KKS%%}r��7~Z�'K㓆�����Z�Ã�L,j(�3��(�vHPv����&E"��dqz�x�njꃥt��9��
����S���M��4S.e��t�0����>��1��/-��I`*�Fz��v9(�]��	����=~���[�Z���h�h�nV5�
�x�꫗��_n�i���*��f]�{mg�����1����1�$�j���H3����֌L�1��2�ّҕ����R�ts�������>�����>^5�ʼTF4Z����l��V��L_n�40��`~�$AK�+(ᄳ�@[a��P�:�����%~��ɶsٌ��5oy�KJI�jI�
�'�:��UJ��}�R<��z�Ag���W�TR�gF�r�`����i^U�-�Uf*+&~h�l(Ǐ+���!l*w�0��J��<7�m����{99!�Di�'��2ص�ׅ�k�J+,�r��~�[Y�b���n?
��4���~D���	C2����P����ҡ��3����W�7E�k*y6B4���J
���n��=�FnPo_k/�����a�ǖA}�&<�̒n�U��MU�Џ�@�?��c�D-�i86o,���+��-o盰���w���y�K"�f�Mh���ns��O'6��׿��>pc�X@v�N9J=�Sqr��=@���
��Y��p<r,��r,�oP?�D��[^{�E'᙭3�ci)�G�$l���K���-[�ܲW�&g!���'a�/r[_�M�i��df�.EN�m=錶m@bs�y1ܖ��l����_��k�Y�)��;����~��Q����h�?K>ΰ
�>���r�c�q���b�P�T���q�� �M{�:"�c�Ķ>hi�#o�D8���|����Fl,�=ʑL�T��B�c�3��E�����˹�d>��(��=T5�b�*z�a	�9�����|�K�v�<sQt9�ҕ�����o:�s:�8l�/�@�g�-�r;<��/�ߚ>�E�dґ�R�/�	=]�틕�',�������d�罯�%
�ͧ��q�Ap�ߜ��R�N�}�s����H(t� �H�;��g6��;z�@mN�S�7��7�G��8�;�L�1E��O��d�]�`��{Y��f��(�"��{"�W|;����8�wk��>�ʷ�2j�*����U����hEނڑ��˽�Ϝ�5"̲,�Ǫ0!��g���[��Ƭ��/,���!["L2��E�1��9��`��4/����X/YZ�
���S���w�4�A���BF��#�B
�^&���Q�Jq�|��g?Ͽ}�Z) Zk�5�l�݉�r����H�we�a~z	RM���D�+����셄�S!�KCb�=R��\�W�~;��Ds�@}xN����H�&�:E�۲A+�I�m?��t����;Z�b5oF���R.��Pr j�4��r>�h9#6���rY1 {W�_�Z�����!�Kl`�2"z��"FD���� DTQ6e�4'�G�b�7�j	�-����Q�IW#Z4�)�,��ǣZ��q�hn�g*͎k�$�M����n���~���R��꫇i�ؐ;� o̠��?N�X�Q2�>CK�`80�A�o^�Bb3�lk}lR�x�|�C?��Q��omKƬkmZDwI�4�-�����*���J͍�7]�������9E9jw�Cю�)?�r]���T��^ܥz�=G���+�='���
$4��T;�{�h�b����h�\���(�k|�ԬZ���&���?�m)i�1���b��Y���ث,���ר.X�����0M
�G�/����>L�d�tX�*Rƒ�wK���a%�"�׶[M�eJF�I�����0�Ԏ��?�x:)���S$
�����xq0Mش�E^+'qab~އ;�;Med�<{bD1ӽ�S@�����1	I:�r�G�!d�k�N��Sj�Z��p2�-y���:
�^�%�hP�f���4������"��E�Q��Z’�D�����]N@R�El�	o�>C؁OTU�1�U�l�21fF���|ZƂ�go �!jG�g
cslb��=
+��.�Z^7a��0�u�?B�kf��1���Gq:jjc;j:�q�O�9bRrN���+3[-\S����~�9�(5lm�\�yF���I!�A��N�?�s���B����!�����{�����6�C�&"�T<0$aA�Тw�l�|�V�A��ЁbIF��ƣ�|���������9���~�Ɏ
�G#�yI��;�
�G��v��<�d�&���|5C4#���U��SoY3N�b,��s��b�����P���kB�e��ߣG���z��iP_��1�*>h!:��R�\n�
��_}PV5|��f��<E�7?v����r���W��%~�<��,(����d���ug��|���:�J�

������ّ����Ց:=ݸ��*�Io���驉ӹρ�q�9����k�X��-tQfcga���Ƿr����.\�Ӱgp�_ȔJ�5�Su�n��x�폽GK�]
�+��hc�m�2˙RcNh�y��;�w|:��P�l@�t(>��tT���|��u��/'5��]k�-dՉ	5+��-W��0m����	�]-Lc+H��&z�NM���h]9�;aM�ћ��|JȘ��;/
e���5^[
�R��u�y.��D1Ͱ�Jh��ޘbd�v���j��[�L{���e)�}&�6�"��R�xh�4'����a�c-��0����N�(h�g��i�i�zs�?�#K}"��D��-UҠv��{���"ԻZ�-C�!�X&�~7�����@æ�p&Ls�!�����R�E��t4�v�F�I�׵u�֩3��\£�,b&��$�d9=r�ќ�_ga�|=��;c�A���D7�T�mJ��W,D��,;=��\����y��w�^0���)߇��U]�)��(=A���"�}�|�{���=��s�Hy������7(;c]���l��+�ݲ����E��ϻ�@Ƭ��`J^oy�|�Y3=��5Z߷�i�׵']��WR�js�B�Ûs�J�GOC�=�Nq؃�s$v��)�i�a���b(���!�0�qqn��]�CQ��:9e���,��$BK�����G���g���H������U���K��Y���Iߴ�Oӡܮ��zP�W������~�}9��ߞo
�Ϳ��'�w���/�?��0��Ȋ���
f�����/T73�T��Qr�ƌ
d�cAگ�: ��L�E��1�o�R�V�⁌��t`��_�wwl��P>�%���K��{w�ϥ��L��q̾��u��!M��� 싈�8%Rk�^K�Ĩ .��]E��������^[T�E[j�H���!~0
^�rTExQ���y���x�Dσ8zJe��dgAOن�鴱�}Z':у���?��ʼb|�����1ޔ�t�J쀑vA�_��
�����ڀ�^v֨:�)g��
8KΪ3�Z9Q�����������rL�������
t1�J��U=��u9��E��.��կ0.�"c�mG':^C�)�7EOt`�e������M�^�[���v�|�����֚*=(��n��]s���W-,\�P��db�;kj~O��]+�g���o�q�|u���AJj;m��Ir�uL��D��}�8�kƏ��K�����m���@J�<�`/�h���;�����*`3�����$ad$��
�R#�#<q<�	-�&�Xm�' �ָ$�J̈k��g��,|9:n���L��5g��rfȒO�o>�h��zpn����xr�:�w��Ɓ�[��G$a���=_�A���P{0��i����^\�0
"�>�����6ZM��گz����C5�%���+~��t��λ_z����j
[��Ϡ��o x:]%8ѵ�֬����&P��(�!UM�Iޒ����y�\ư4�S��Um��K�8kR�T��T4FӠ|��bQ�L)�v�п�N׎ щ��hM�p����C�H��G�4�,�M-�,�)φ|
���)/���^
L[��}���`ph�G��Ǥ?�`��Q6��T(r��,������G��D%�a�SĐ�"��F���z��>4qGl��.
/��GD-��z�����g��H$�́F��a$t��?�k�_��gϽ��<�w�H9��Z;h�?�:õ�C,ܖVEAhOh��O��վ���E�)�c��+�?TG~
���p�����4�ΥR����*V醶������*��v��D����t��CO?�~:E��r��>-����ώr�����-�;9�� S���*]�`����""ϩ�����f��銡1y���������[V2�UY�t�X��HH���)�&]Bx�^ZU[Q��KI��e�Ҫ,�����f��(ʔ�1㪦ʂB8�
�eH�4��aO�uW�@Җ��P�C�]��@DRDE�Xq\�,�}�Vfw�
8p��&����W��\Z<���|��Uz�ã��]�m6�rc���B,�.O�F�BZ��Y���y�@J6�<1�l�⽀�D�.�t��@L``��Č�OZjs(7�0
��:Z�!-���T>44�G�,��7���>K
빱��{���D�^]]E+���./�\`�8�_�c��3�vYA쉥�Ϭ�<�I�ܬ�3v.g�o5�hd�v��k`�|���.UUt�[.�_��iZ�^�I2�O����$�z)<!���e��C�S��|kH����Q��L@�n<��J1���`[^��M���f�]�:�=� %I�+׍/ӑ �
ȏ�̺5H�?~7�#6	d�(�P��K��ˤ'׍X}�\l�(v�j�r��s<5-��5�ڭR&Sj�+5����*�f��1Q�tڧ3��R�i�d,��gZ����]�6�����@�z��)�򝪆�x���m-q��Ju��]�����G˽ߐ����r�]�c-H��쟣�7Ⱦa
6�>��c��bk`}oF��<�z�=��9�8b��,]���gP��u�Bf�J��,���WA�j�@����� < v��̫��)byrDdz'�p.�iz���u��a���B��|н~�ں��A@R�3ۅ�.L�E����)����]����
�Y�bp�W}C��mVeZ����(cy��e�+���"
|�SMY6�(�?\ņC�:._Wugz�';#m�$���� aAv�j&y�����6jF�깣��=G_�WS�:�@�u��O]#a|K�ƅ�1t�W�i��^?z��JK5���|[��P|?,�_�����QY'�D)"�:��r�bYUoV3�${�W%*ˏogrW�M$���c"�/�O2�>��D&��u~
�$��D�|��3	,�tP�� T�,|[�%L�Z�PY�)��\�h?aČGm�i�p�7t�P8��n����M�¡
H�z��(6����}avMqk^��Uz�q�_�x���b�=Z�x����,�6G�V7��"�k��R7��pLf��MP6�!�8�IL��XD�^����D�ƙ�����E�|J��L�LnEѭHL���!����@�w\��U�h�M$j�S�Ԩ")Ou�� `Y�8�C2tCS�J�a+�5��۴�uL��V�zC~j i&U��U��Cnՠ6w�xGa��ܹa�ޱ"�������
5�{ql�b�:��G)7p��o��
B�-`�<��3�r�@|
e��qJ֨��2��88{��C6�9{�����U"�2�H-^���mvD��(��բۣjLZ�����j�4~�� md�\֔�e���Rb�o��Pml�^��<ɴ��0MLp�KC��Ճ(��q��(W0�3P7�F�'&$	��U��@ŷ���/��O;��vҭZ��O�1C�ne��!��S�9ԓ3���<�/iϿ���1������bi�!�΀t	/hB�����Nn+��ɥR�Y�Wl�0o��K�sN=
��^��G��1�S<"���춮.�<�h4Y�E��)���{�o�ӕ����m�V�4�y[ۡ��y�y��]v��R)S�ݴ����o���
�̆���V�7Wn��C[Ցɛ��l:d�l�6vS��.-�7$t�z�0�<"��uD�x��Q-b�k}�˯��1��2�G��|Z�Z���rn-g۟��
�>_n
=�E"2E	Ȯ�6�U�]�4�
q���|���n5f�W����H�]���?��F#<A�n���

	����͗�q��mߙ���Hr
��D��

�O�N�5r�T�
�A�5b�l8���W�a�r9���t��/FD)���Oi̴�<ʭ�g��\#o@�G���N2�N#�G�r@�<�&Q��>�-���v�=_����]�F��Qޥ߄{�Z�El���4��Ax&���@��5���Ҳ+�e�=�]�@�)����K�
$�4�}�	��1}p�W�@�+>�©��h,'^ ���+5����>z⻡ϔ����E�4a��>����	�s�,�/Sl,���˝!�϶��m�M�j�j3���C�m�n�2O���^.�[�bxO��P�z���x��C�Y� �A�{u��-/�Ԓ����7۵�]��Z5E/��7���W&kg≸m��0X�wۂ2��n}��x��3$'���@�;��=|E�dwPƛs2;Df��C~t"?��_p]��\Z�T?E����.O��LV�a&�w���}�N�>�w���k��٫z��8R/L�������hΖ=F�����:�M�ݥ⥥N%:ޞ�l@�>����է��C���W���z]
�H`�"�]$� �,�r�$C˗��z�I�i���~�����<��Ф=��uh�7��p�=$���O��y���g�y@�:���?7S	+g��͏=��מGM�ա��R���2~�\�):φܺl6��|6����PѻA�T��>}�����u��!��k��ݠ#��gՕ��V�����Wjr2�P4�)t_���"���1z�ݢB5�[5�S�ϵ���Qܮ�W�?�v�$�R&l��t�K�U����͊�G�c:��Q�Mn���ǣ�P�����w�&̷�l�	�څ`�ٵ�kg�����o,�V_~��	:�Ѿ��<�>[v!^y�۴���N���g{�xY+n����']^�F�Y��#T��n���ZWl��]__��KR�n�K�m_��Z�_C<�ଶ��L:;� ��D5�,U)��c��hT�quXܿ��,�LS��}Jb��u��܋B2P�4���b4�Yb�	Ʉ�}���$�DM��{X>�ҙ�'�������"�I���"��p�qT����h+s�+����<H��e��:���A�_����lP�P�1(s��n}ί+�Lض�l�_���>�˭��#�w�e�����MZ�
�{�{�Gg�a�Ω��v�!c�H��|���_ή�[>rבZ
��B)��V�<��쑗��_�]��k�7s�q�_o�.|�W���_!}�ix�+��m_�(��gy�O?��@�=EN��s|�o�|��0?{����޿���C^|U��6�X����s%�ʕF�/��f|΋'�F<M�i�D������Ԓ�KS=�����{,]��B��.��ec{��4'�ռ��\,�r���Qa����/$����Q��E!��|�ި�(��xw�.�E�=Qq��YpQL�q�b �Dh*b�k8���n�^��8�e�ۿ�P�G1z5�O�
�}}޿F��
D��&�Eߦ%'U��(
rE�P��{K,\��0��I� �x���ҴS�2��W^	�I����Z1�@�2x�G�[T�ͪ�fE�T��%E��&��?���4�_q�$��-�x�\���p *��K�˩�<md�n�׊z\�n:�5N+�R<��8�N���;/�#{��/M)�q�%���ݏ�I���N�C���?�U��EOm�`��bsM���}�t:��<�Yc
6$OˤN�&��5�/�3�>{3�(�3&r�ݙx�	4s��~��X��}7?�h���B��ma��Ld(s��ҍi���-�8ٖ�t����,�A�|��J��x��¡;���s�u���sM?*0����d+�I7'r�[������P*5D�M�� �Q�����MIl������ZzTMێ�K���#)rΞŏ�ь�=�˼��fR�QS�i�~}�fpɫ@��=�^poPG�?1Q(Ϸ����.wudbD�х�̼��D�o�����n�O(�]�(����{��D@�*����H�����o�[�(��L����p)=�u��Q�Zq�B��v���`GrD�e��`����ҥR��2�'�Oe
	�Q�Aޱgs����֮h�3n\���B��#�H"�!UR_�~�Ȧ��MϭѻP�䴴�D�O�!��뺊a('�>�gn������)C���o�OpЃ����k�;M�L��U��#��t�^�u��0��͚f��{�H�H&�����Y/��n7��vT����6iʷ�¾ w�-�W�3�*.b!�ۢV�*'�_x!5�S���$e�qaS��*��EY��]'N0u��o����
k[�9�&��޶�ZF$j��ilod��i�721�|G��l�%hE�߻OF����lY���֪���^��wK`��[��}ig�L�njK�]O�E2P ���=�29t Rb�<]�K@d�?U#gh��T�r}f�Ǚ���;�Ɛ(���dz����. nN�u"Wɦ���͛]7ꌨ3�/g2��T�h��b�h-��Ć<�u�(��M�Qg�4ɸ�bJ+�o��&v��R�l2\t8��c���v"XV����'��|���7O�؈3��0�X]��tF~��J�ޫ�c0>ת��:������h�BQ�`�F����y���"9���
��4?�7�Nd��$ե�^Ӄ���
vm��'Pe)���燫=�m��L��43e��K���	Z�v�i��-��6�T7�Ud��W�T�*?�W�B۾���}��80÷6�F��eݚ�R�(�h����1n�n�%�GM��3sZ.���eE��]1Ύ��i6FyKbF��e��W�mv.5�cr'݃Zuh�^O42$�I9�MU��"n��ق�Y���B�t�,og��<�8��|C����*�QϏd�'26�7[{�=oԚ)�~'\y�Ȍ��|DD$��6/ѩ��][m�	����V�*R�c�%LKi�X��zN;�H���g��3SҴ`i�<HY�2j��d�Z�޶��	���S��WV�hY���|u���{�V��'R�>�k�]�f~�K�7c�?��m�@�*�B�nX��O5?��}1��mH]L9W.��U�	ٷ��%�櫄mP@`�o}�u�2�x�����2Lf�Z��d)��(��Yqj��9�7Yڥ(�$Y)Z�����T�6���ԼS���M�����6�(�b9¢#�i��(%mf��	���Ќ&�k2>/OW�T�.�|��5�:�3�[�=�ߍT���'�I�gQt��F���x7X�	�n������P��i�Y��q��+T@�TÆ��V�'�_7�f�f����)�v���_���Q7�G�K�}�{�S��[yV]ޟ���"e}\� 7��6�-��@��=��O%�{bz��y��D,��Eַ^*�o����K��~!E�z�ҋ^)a����nձt����/��e[�K�Ύ���q�H&3ʯ�Y|#��',��x�l U���Ӟ��vo���m��;����J���S�s��Y���i��4��@��ӆ���	�*�<)��`��)��'e�J�N�bS::H'�=�{����M��dH6/��@��RS�T����������`�![��������[�W�^��ϟ�&v���Ccى=���S��"�0d-�ר�2�:j��Iݰ5���j�8y���rB]�
���a?F"�懃&ǤH�]�@��8n;bS�Q�p�\�h�ʩ�SuW���0�=yz���g����;+m�P�v�$�kD�d^��f�W`|Yx\$˄!�`��0`�r/��~~X��l��w��TuW��.�y�~ow��ԩ�S'��|��M�I��26�n���m�!mc�o ��H��Ӗ�I�v����rm	���k�����ת�k����#�^�`�[��� :$v6�H�4�
ݔC�h_«�]�9ž�c���������yXH�\�4��tf��Y�s�BX�x���';^4��
��x#�p1��3F�8=��w�I�%���n	�������of�W���0j��]��1�"e�ּD�Ĩ���EM�ӣ�&g�ʄ�w�8)�.�:#eq��B4���fF\mPk�.���R�5c��ó�	M�S�l�p�4��F����ۚ���>���|����/�ސaJ/nE+ A��ղ��q
�����_�S������c!s��T)˼\�`t[ ;Uŭ���[����ѱ|�T��,��f�p .g�������ZH��xz/�Y��YϰL�� ;Le����齚��4�ҁ
�-����!���H�5ͷ�C�h��A�,ô�fv�o��»�.)�4�I+���3�<���e�k��fȧ�<x`����|
�k�ZE�7��I��7��5N�I��8/(�VUh�y3�T�lʏ�9����ș�=<&��+������!��ڨY�fG��Oѿy�Sz��?_�>�|�B���(%g~�u��{�@���w�� ������yx��*9�f�h'w�������;
��9PXC��[+��CjM�٫]�Y����/:�p�(+N��d�I�Ϣ�O�)t�;6��4~���Ctd�R��f5B�?���Wؼ6�����ӡ���{Ͳ!B��zD~}�x�4+� �g�#
��Ojړ��
4�H�v�8�IGh�c�Ƅ�x0���4h4����\Υ[��R��ڦzZ��AYo���k�K��\���j?��s�u��D�\�=7�>��u�IY�r�'������u��2�0W�-����#�:4��(L/���u F�w��
Э�zl�趖\&D/Ӥ
�tm����9J�r��ǐDҟ1�씥N�DS�� �E#I��$Æ8�-�����2�̖�D,}��8���M,04E�
��*��ז1��(FH�JCk˸�R�Hr^!��Ф���
)A][��g%���Z�-{q_{k�V]�w��xs�-�{ /���Zuu������$��$_T9�u[w���K(��\|��$����>������(��}��p��2/Fx3�ʢ|
�ʺMEtyա.[�2<*x]
���.���=��p�_�sd��1Y1j[��,�AIR�ٲ�w� �������6�ae-]�,�_R���]4��"�ʬW�-���/�����&_{C�=�2��d�Xk�Աn����L�xăc3�U�uv�G��y8dv���1Y�UȺ)��p�O��)��>ۮ�,ò�X2x�5��f(B�K�)t��������X�)ҷ%!v0�(�u���ƪ7\��-Baɦ�V�2W��WcS)Jx��0����4���M�pqOU��cY䀨�h1y#��1@u�1��o?�q4<h��P���H��i��Y���%�A	�0��
�(7+t��*�'���MJ�߈ O
�9����b�(���HVb��%3��q:b�D��O���Bǿ�Ž�ě;�K�v��C��ҭ�nel�!�+�flZꇘ=����	�}�\��u8'L�Tvu8]P�i��)d¼�*Q1A9���䅠~CU�K7�!1
D�A�	ɋ�8d�I
t�%�dQ!���#�l?�#�)m�,ڍq��[���k�OH����%ᨂ2�|�ժ*
�n=���D>$��i\s_��cS~;Z��,q\��=��l�!�9�[�M�i��ܟ�6h �!RL�1��	D]��s(c�f�P�r�%�
,>�%� #݌"u��rt��y�4�Y-���53a�z*��Z̀
�L�c��L �~�m����r}�!����i�<ׄ�6��B���4�w0n|S�D�����'��*�%S�?�G"w1.�
O-���s5�\��G����Pݑ����0��$�h��4�>��Scݷ�Xn7���5�s� �[͔��3����"!���zh��7�چ�l~:;Q�{jvJ����Ƈ��-9 �e�|s���.2�L��<N��k���iNl<��y@K�Ƿ5�<���l�	�R�>t]9�~P�|.;�t���E����8oNʚ���x>HϿ��]�)Ҋ"ݰh~���鼙�;M����٬x�=�����޳�8�󥘧ˌ%�m,r`+^gG��X�>����O)S�2��G&&�w����}sp��p��3���C���ȶ�o��.��4͠�\|:��e�8P�/-�ҭ�`"D�tii)NcUY_T[j/���Xx���]즶Эy6�y��%Y��¸P��8�Í����zV�zP
ӥ�i��D|/	i� �O�ƙqK/?���H�z.	�l2���Ĕ5Q�d���ocZb����s4��q�W�1�n�]*T�XךP��o
��6򜚀]nB��%"yVJ�ڮ��>ӂf{� ��
�bjH�Or�o�)]&T����gڶ�0~���+"�1z]�z���P�!�*�b�ZSӉ�G"�p�/G���"�:�j$e�H���q�G���E��<�����n�=��TLS�SE�T,����W�+G��� 4G��
)�p���?�s$^�Z;��卬�) ��Nܑ�H�T�
ߠ�s	&�0�&�B�H���p��Q6T�<�
_��lQ��e���b��h�Ѩ�.��F$�!�9�0_8K{H���nm���m3��|�-�	�*��%ֻH�������nh�(*4M�u�P+`�M\/o���ں����k��U���:{�k��׌��c�K��k��w�b���8��Gwl��6�D��Υ{�����
VQ�&Fhb4�@�w;��z't�:q����Rˏ����Sf����^N��7�:k��$��4�i�y�?L>e2cP0<o��+�N��>��_�$A��y'�݆�e��2��?�gǎ,u	�G��D\�"�;�cGg�K^܋��?�j�F�@4��k�8~�q�\��yzyM�A�..b��p���\��^H�C\��	��Иra��]���r,��L�cV���o\��\H�F&�-ɐ=:L�71��ﻣvh��vNؑ1�;���r*�LfS�ko���g��6�/��M�џi6���cۏ�р�
>9��8�Wd��J�iօf]��p��N���ϥ���t	�AO��!9�a6p�0N�?&����!����7o��9�G����<"M�U�8�o)�`}g"y��֕X>^h�YQ�=�p�B�ӧC�l���
��
N��=7�tS��1z$���-y{\�R��iU���'��ےZY��Z�6�w`�o��!Rn?��r�w*��]�t<q᳼H�&�̀Ϝ&��=���[��D����n
��$(R)�Ԋ]�M�XA�|D��(��Z�6�	��t�|�6�Ed��+��-��A-"$yC����?�h��[�7�y�^�F��'��r�H(�@[GRR���({��>]��z��ض��oW>)Ĥ�{
[��;7ܮ�C���u�)�����%��Js�+	0pP�����=�QM�U�OJ
�s�yS��o\_~y�S��Ya#!?�����N|8<��&ȴ�7��
���3�>XKIk�Jn��!+B!C��CV$�)P�ې�>�Z����4p*Ź�IT��ZBֆs�rn825�?NxA��M$�EY���D��2A�������t��f�N�~ܭ��$�f<��5��Ǖ���x)FzDi�
S�$&��mS ���Xt�ѡn��"��S����g!�%�^�]R�Oz�%�k�y�&ڟ�)���%S�"̸0<�>�!��f�ᬨi�&f��|���eY�]���uY���`�.#��T�Au2�6�L/�ƫ%��F�z�уki�U�i>٧\��xΉy!����v����D�ώ�d��S:5y�{����/s&��h/ �5�)m>e+@5�F�⣵�D~�$b�1(<3�<z�����fT�4>��,[1�8,��a��]���Y�$��l9����ZɁ-၌���
�ridEqƒ�T��Ǎ�`L"����!�Xd`"l�N)��U�[l!ZЂ�StyIi�W	o��$��������ȱ2�5$a@�FCJ�F��]���
:��^���Dy=I)���4!A���Η�X=�����ߘ	ީiw��kuM~BӮ7��������	R�e����:$��i/�l6f�,�V��fQQ��P*	�����,f]1ԿȦ�������ଚ��k��J~��
�k�&�H¤P��emS��"�(~1`�g�g4�y��n�_R�m:���~"��~���=R�g��5xz/�doU�C�`Ĺ������^qqbd���C��}K%���-�کAU$��J�=}7��J�Z�����~y�J�Li"DKvk�S*i��1��)��:?�_���?E&�a~0���K�j<�k-�S�b���DN���d(
ſ�O|��TN��}��^��^�d��3�ܮ��,�wAo��M4��f��v������Ed�A	�!�`^��6Rt�uXO�Z:m�	c�����TY0g�Y�1R��dt��Do��)s(c�$m�����g���L�{�z�8H�l�h	�^�Y��b!k4M#�DO�U�Yv��r��
�z�U�vs���J�;ؑy=S�Ǫ5:�MCt���0�Ԏ�"�0����	?8��P2a+�o��C��d����gX�?���i���
��!���ϒI�8R�t
�H�tE��tM#E����X�<A��8���i���C����˄Cvu.e�™W`�O0���x�>�O�w�=�p!/|���S  ��-0����>�r��"摛��ԣ��#F4��m��v`c��˴�؛��z�̩�o�	��H����vہ��BR��!\�#Z��;�r�;m��.�M�@�����׵��OUl�����*�`{�0��#|��$ExaT�z>,�J���gɵ0/\����q}
�z��~�C�Ǟ�=ur�JTC�*S-�^:i�ƣ�f+S{�?5 ��V4Ry�T����i���TM�5�QCU�v��V�����[��=>̗���ZS�p���[
�W$+��aC�^?�,�Q��������Gr._2�h=�`1��l���s`�����(F{ ��΋׼��'�(�y�V���Z�P��V�KRZ�3�<Ӽ������Ŭ27�:|�6ݑ��3�0x�d��,E|���ل"m�p7\�.�=�ڣ'Ef��>�, =S��+��M<��C�F.ᅡ�b4k�>Mq�#���GTP*t�k�a�=G���\�Ht&��;Bq'�ϻ"�e�G��C��ᆣ��R�M/��1�
\f��vg��Ta�V��}�.e2�փL�bv�
���ퟚN+J8r�����PX����A�L�f5�W#ZX
����›�s���4��XƜ������i2������Db3$��"�
�cZ�$}�+�2}w,�����0���Si�=
�d�IOtɣ�\�Y��5�T\�����…�k�~kK��K��c��-��1��|�С�k��||�Q���6���ۦ��mG�i񪙙���ֿD����~5w3�j�A�ܻ�q����o�)X U�Ͳ�T]�p�w��!�|b/5,�
�_�]iǓO�������� '��F�K�!�
�����z`�J�b�l.7��X$�NIR�z)��4�"�9?���q�t/3�h,6�IHZ;s������HI�x��"�x-F�P���
,����N�<H��M�:G���hs�EΠ�{��e�c�����߿ah��(\//G�d��/p��>ZUa^Y^��~��Ɓ�_G��}��Z�Teҡ��Vs/N��I�
�oe�φ+��7���%����æ�(��l�q�ב3@e�S�dn���y_�r��f�Ƣ�X�$9���80��i>n��4�f��
W R����; �S)m}V}�y�Dy<�[�p����>H>�|�QϛM��C-��Ľ�ZɽUpo5���HR�0no�v�(H҉��*do�=1��%%т�n�K<�aC�QC�>Ћ�FC��
����a~���,���j���Q)��t�D{4=λ��{K�4��7p$4L\O}��E��;ϼ�z�zq��t��F={�qػ�XĮ�8E��%��-<�F�}�4�A=%i��_���,3����R����d���&� @����/�ӽ�m����ۼ�M����2AډyH�WS��
��Y��L�_���
��� ����T�W�b�o���g�0E~}�2γ5���}�+>)��`���`a %B��p�o�eG�r3aw��'�(
������#	��� ��e_6���D�G�c#p�k>�W<
�W'\�;�͌��Q)�꘎�	w���O���=:}d�p��c��'�L�n9��Ƙ��YQ��w��G��J��3`��^{��Q"�p|���q3l�a��q�+���b� �`��Ƈr�X�&���r��^1%%���*>OR���_���fr9��L�`��k��y?;f����X�,���6�E�}�òa4]Q䝪kV_�
h�*P�H;lQ���r����j�`H4��%���͏�fK#�jە�\6�}
?�:��躾�l�ģ�\�Gm�
�N��?���!`*�6G�|Н-P���dFݯ��>ަ�4�����:t�ںA�bV&*�J�44df�*2 �*�ǻ��QI��z���W��Z�[5Oij����-�(Ҋ�L�T��>s����Uu,x��
�O��0_G����B�)u��l/��1�ը�g�EA���G%"�
�K~q�s|����B�)1Ӷ	�D�)�/�@K	W)�M{}�):1g
��)�u劥���#y�3�pϕ��l(�oԍ�۪��M^z�{��8B��W��$��+��ʦ����r
�]M��,����^�`G7�Y#�����hz��{s�j��������!�>�i���@q'
�ˡ�@�w-���>�&?Z>[�#��4��8��%T�_=99I����[PC�Gͷ7�����I��a�M����f`�D��J,�=�&��繛�o��	#�L!�9��� ��!)���6L�C���)*0��IM騮�N�𤾟����C��J`��9Z������e'�U���C�3�q_bP;bYꘪ�'&��o)1 �P���� �9 �ل��`���&>=SN��n�oL�W���[�.L l��:u_9~w*�4���&��U�j!?��	i4�݉�����'�8?Rc��E��V:�]�X�繎ؐ�(	ґ"l�j�2�W��2�����7���J8X�/����^��?ls]"%Η1�Z/T��1�뺁�>�:sC��u�d�4�Ɓ�o����~Y>�?���b���m��<%
����-�~I��k]���`�m����i�T�%D9+Iaz|�!eD1-K���,��1>ݝU�h�^�'�m`Y��;J�ҟ����S�6?���q�BN��xg����/��;3�QhA�t��y����B�)����|U4�D������I�J��Hި��o���$`X���'�9B".&b�����=��5�i	�]UF�\�E�d���s�d8�h��X!BN {�P�"ƹ������zt�W���r��m��K,�}#f���7���,m6��h��o��MX��gGQ,T�Z��m��	6�H��ך�;.ŐU'?�fG!�'�F5���͓p9�%��T���@�VZ��pX5��-���C��M�|>��1��E�z$exn�#�T|�d���'=��
�"]
�=��6t=g��b��:I ���l�@i2�/nN�IO��:�:V��c������D����}F)�uuc���J+q=cY=���]��&U��%�~cx*�O��'��R�ٖy�W��Hd��<il�lV��| j&�$Y�bI�V�M�|���#��WVr��C�
:�UA�e9�d&��g�i�oc�X\�0n�Ŵp9CC�Yf�jh�V[]՝1��Ի����h�o�+��~r�.5c�L!A�(]�t��3��������w�ې�l)�b�A�e�X����I
]��O�Z����F��B��O7�umS%�lЃÍ�����vV��E�<��5FS9��%��.p
S�) �4�˜\���#� �miJ��y�_=��O+��������Y�z��o=vx���f���5� �
肓��p9l���hw��ϠW�qS%�p(�8�3�2��h��!���Qt��0�y�����_ɩ!aWk��(u�J���ܛ�E�CZ�W|ZJ��&�A��?�dh`r�nʋB�v��^��ѧe��=h	�nlj�u����7����L_�ұȡ�c�a!^Ĉڅ>�h>���0�JM�ir��G�3�P�1�ƃ��q����Ѵg
�h>��\z�K�x�-gʥ'�2�R�H�~�����|X��O3��%�0�&���a��{�Ə��`{����s�9��ek��cC芧��`[(/uM���u^;����냲B��(�X}<��:��BnBR�hж�Q]�&r"?R`U���d�׾��d�\��V�ԪJ\�T"�i�nMO�p��)�P�ÀU���48Re����H�Ncuο�n��![S3���<A����>�U���B
C�J��td�0|+�b�P���]���/e�Hyt�;�[z���.1��T�p
Zp�Xej�ѹK���o(v�?A#�d��͵C=�&�|����Ӿ�q���#@5��+.+V�0�m�QSх�7r�Pۏ�������6���Y(j^
�>|
�OR�p�ٓ�(�B�(R�޾�$|���<�]߰��;�U���F`Y�~YO��8�i�p��*��▴}ǽGW5����)@2�mҟ��B��eִ�#��G��Û�PN�i��d���U�����4-��V�k�H��O���a�чa�Yl��tR�X��1���֒<�27
ަ�/�hv�u?���,�(��0��pv�51;A?΄dYM���
dl���4��i),K�cV/S�3�j�U%O�~,"�
.kXYqŐq���2l8^~�5mF
&`�����D�J?ü|�ˠiڃY/��rf�;��u�m�Y�e��5���M�'X+���	�^O�ʖ�ec�x^��Kfo?Y>JB����»��7��R&>�]Ks�Cۆ��;H���}r���F�54�=�Ǔ/1P�=�d?����ݝ/��w:���Я�P�ՒJ>0W[������,�r�0S+8��[�V��u���0����C�n^ݥu�hMٵR�`��ڪ\2���L�1��q�pLs���rzn�Gݫ-�d���S�'��p(��@�*�����_��|�9|�yMasΑm�р�Y��$��E��q;�]��?�^*`�1e��S1%+���DAn��qn���ɕ�CU?���A��,\�*���6T
o���Gh5@�c������zK�D��r��k/��������u�k� �k��y�T޻�q�_�'���C��`�]�=x
1�-6x��s�9�˅�VY��_q�۞�[i��2vY�ך����7���^��{�K|/t�R���|Ϲ��.]�s|Ϸ^ė.^�u���z^�#;(������;�)z��AV&��P?���P�㞇K�����n��jjj�{�ð�	؁�ĕ=>z�Y�ck��

MK�K�M+^\�8[x��	�HG��:
4���DƳq�K���"]�'	�B$��\7ޛ��:�Ͱ��f�����v���7�g��ub
f]�<�)��QMm�QEZ�QK߃!f��>��?�j6�>d�ѭ��%b���-U����9�uKӌ�[��߯*�w^n�Ӳ�J��Dr��
��1�!DǠ��4^.�'|c��܍ك����/�X��U�	��� �������P�t�~>s{�~�y��w��A�#�V����^eoW���s^�:�j�1��1��Е0ʴ=��87	�RBҾ
,-�a�Q���Ԥ�o�*�ի~���zޛ�o�J��PNϦ���;է/�9C��ڙ=����ٲ�hg�����z��� �:��˩�`}C\#�gBk#Cg���s+�!���4��B����
�=�V�}L�o�	�9	�y;�؄g�W$4{|�� ;z���ȭ�1�����t�ئ^��K�%�f���z�v.�')0�y*�q�x9[ \�P�vuW�u�˳�hs�&�69}�<p��Ϟ#K���۴���e�x�/��_�m�ݿC_	�^�����9w�k�T��
L7�_D3*@3<G���\�M/W�b��&;rW$*@��uC��6;�gW����_��D�tY$^pu����CA��p�p�<�yWȑ�B:�D�u���k9'N��C���ǜ�+C1�cV>*F�)�H�?�]8~�p<{"���r�@���G�~{�\G��L�҇Nf���s����9��'#��@�sI�/�h���Di>�ա?J,Z;ՁRH��oJJ�t���B�x�[k�D�F0]À)K��Nٗ�E�z�n�ү��qA�ʆ�P�@07k)��R�KvM��!����]��9ڐ��W�X���+X-�MM}�^�_�u!l�Iۻ����m��@�r[�	��Ys�w�P&�Z#N؊�3���e!n�r0(��a�L�X+�d�Î�ah�$��P�u�Jȗ%)L�U}ʊ�R:�!�ʯ�/����>����~c��Q���k�Ug8I�X��h:9��s���v'����NUO�߹I|�
�βNEl�_��`�px����m!��o
���
؛b.�f��z��=�-E2��+�Ҁ�v,��g��<f�^�i��E���'YOd�2��Dr�o/��)�uv�5�,Ջnמ��z����(�  %�"5$Pj��H�a�JVЦ4�?Bx�^6d�$��UFBDSGm�A�T���U�S4��oj�c�r��M�	�K
��z.��j���AW��>����h��@�ߋ2�1%}�����Z�)߲[5G�R�������͘�ׂ��|b�
KGu�=��_n\���_Q�W�C���Ɋ.4���C�}b�P��<��s=^Y�{�>�kv#��㴬�.B� ��"�.�<�N>��H�@�9�s3��9�H��ɀ��*y����Uyn��<��/�G����Kgm�S����^a�L'��yT5-�j�*�=W���zo�Wܚ�lz����i!.]�+�'oG��e�����BFSo�Pinգ��6���q��V��]D0�=3Ii���Zy��$ղ\7���I��[~�_j���5�S�ʉ;��SӨfK���b8���� ��i���7���%)O�y�j�Q6M��s���G�
�
��m]�k��t
`���cwK�tq�G��4G4����	�ﲴ�3��6���En5�Q
u�\;���E�#�Q��˹u�Vx?�r&���s$��&]�Xр���o����GU�~�싫3�9AW�d��^"�����i,Y���.Sw�C�dgN[w�g^' @Vʩ��T�QQ���\��ʦ��[����_Ϳc��ϢS��]��'�;f��ף�����LK�~��쾽&ݮ��
�$���k�̖f�]GL�ߑS,,L����t���T�.?���O����s���@4G+��v?�]ti��#��V@�(a�h���.��	XCAR�HJ���4}�/̷�������I)�
l�UM�Eu���U1�Ro��~��Ev:�N�R�Ɉ�D����;1�2^�
#�wXO��#�\���t.؎�0���x���&�N��!mv���~���
�C^?��T�}>����BD���~zP~�O;�;Dח4iP?�k�ex��5Q��ܗ}��Ǻ\|O����H|q��i��U۶]��*d ��>��,���b,��o��� ��˾0�`ʤ3f�$�tNꡍ ?��=�H�3��OÓGm!�ՠ$F�'`4�H�R��q�� �?�����yu��<�ec�Ɋ`({�QA��}���"�.F��%��3`d����@�u�w���(|8�+�7ʼn�фbI��Y�,%�:!�,�A:
�5$44l4A��HMt`D��"z� �����	�gYOr�ky^�_�J�F~:'��4 �R�;d^Ul�&‹���H�R#�W�
]�9"~SP�ї��n3��I�9/~I�e�ꃼȓ�m��4�D��a�n\{�N,RGW�,.�M��M�)J�O@�ډJ�����5{g�h)��'��	�{���
�6�
xE��uZ�>Yy�>��F����ʺ�J&&����w��	U}BֵlVӏ���	I�f{���~� �
�k4��s�3=���h�";�)�xpc�q}��B4����PV]��56>�|N4	���f1�Q[��>�i�A��H��~b\;6�꒦�J�&��tZ�eڄ������~KW%]��W��AХA��/TI���*!��,��G�&���]c�*k���"�V�Զ���tm0]��2����V���ۍ��[�,�{���^$�b�/��� *�K�z�Lו�C�k�����a�
^�;1��������;>�d���%:JY�\�MW�b�S��Sa���lD��m}z_g��Wj��w������T��
%@�O�t��|��xڙ3C!3�u��]7�w.���<G#ȑ��+1��M����|�3�,�p��ç�槒Icl�>��'K�rrj׮)���MX�W���!�'d�q1���#Dž�Fdc��/|�3y�����J���pqXD#�b��Ss<?Y��R�t��4*�R��ۚ�Z���&�f�ئ	:�M�h@��_k$��GDZ�����&��E�Kc$u�v�F���!}��x�
�e�'66�+�+������U�jvϳ�?��U���
&B��Y$�'��EI�"��]��.q%u$����b��l�ł�H�Cj�s��ԛ�n��}���-�c��N���X�wP�x�Ջ�{�3�v��T�����NwR�uN�K�u���d`ouB� ���Hwg��:��@/|�4��w�Ձ&\6���	��h�(�_m���x��5�;c/������w�Ό����~]��k��9
�j���A�j @��f#��Ŧi��(��kTA��Z� �S���Ȁ�æ�#��8%�J=�V3�G��O����Q�U���j8n^���)�~�p��P�G��c�7��0�L����9Jg��m�\\hO�"�J:��kp����N�3xj8����WQ&O�H��t�/���"�x|�P�u��vo������
�3�Dt�I&�����2��lTmI�ϑ�@�������OޔHto��O�Q�63�e6}5I�&ݹ��'Ir9n�$�C�P0�Pc:3�t�N��P3�������y��;D���u �Y/K�)���(�=e�R@�t=p���B+B��/�,D� �A����֥��oF�u�e��8zY���M4�%��EI�;a�����a�
r���ELb�p������0i�b��PL_v���7���tG��w�I��5E�
R�,?	�J��w��d�!1�������
�1Z*2�ڌ娪ce^;�&*����"j�0���[N̎9V��5 �(�'J��]�C�]���d1]c���([</
�)>�d9����� 򼟿��v�T�ѻ�z��S��ܿ�g��^J��4"�H���؎��h��Fg��JF�G�L%�}J��[�!�hI�#ʡЯFU-$��a��kE4�s��2�%r�b��Y���<�߽^�ϫg�U��k2?(��ߑ[�?��A��+⧚�t��;'p��<��̞��=ӟ��k:'����(�-��09
w��ߑ�E!���/�i���̃/B�	G�T��w��o.�u�vſCȱ!��N�"~kW����زs�WN�K5��q�t�i����બж/ЌU�kb���1����O�t�Y���Xj���ERm���kZ����J�T�IUM⚹B�M����?W��P��=���\
�f�����>p����yYP�
Jd*
�<?��J�f��#Z���W�tpf�}z"/��!k�F~-�B'6��%W��R�@1�"���s�+@�W祹�1au��W�庙��u��h�||��H�_�������������?�b�����*t����y��|�;_D&_�[��K��ry���^�ww�a���p��~np�:�+7޻�j��X�k���{�釼@3B:�-��B��A#3F۰csM����Ȕ�o^�&��eQ��h��(�9K'D1އR��7�Tz<'ӻK���xl2�hM8�˄��gMx/�M��"��E�?�N�aa�i��'��̀��$����z>�>����iM:Rݩ�&zq��2GV� ��g�D�k�h44����)�iH��씱m9b��Ց�>�"���$�(3d�vF���kx*�ڴ�Q���Ŵ��=�$a
��ƭ�°��6�r����e4���8`M�:���%1�}�b-Y��dK���.#|UK��6
��</=��]3�LDR=�g����ea��?��7�8�c��s�㒨Uyd��1�?�a먬uQ�����p���Ҽ(��ġ�N�;��hR��mۮ�Á��Gu���R��Y�-����ꥬЙ�O��-���j�S�T26Rr9�۵�
��0�)3��%\�S�ȋ��Չ�9ƺ��a��9��@ʾ��䬚�g���.�q��~��GW`��\�zmʧn���K�X�g95�|��P��=�e9"������%o�Z7R0sȔe�*�7]�lҟᅋ�\�w:��B��Cho��Oۙ�u`�:��������f�a�ہ1�;oO��ѷ[��+�mz�L��y�L*;;[�g
�,!��˼,e�D��8[��.�	Ȧ!S�sQޠ�e��-%�Z��"�"1�]��.� "/+����&ՠӪa�8��l��)R�eHI	���)! ����
|��8Tgs_�!3DY&�v�
}ݔS�HԨ�U�h��oi
JT
���i��&���h
�J�cؾ��5�u�9��W:MY�I����'K+���T�;�����dy��Ɂ@�;�Z�u�tr�jwu5���2Z
Q�^;��Z�����Ts_o���4'L���s�R.@�zK�@��Gy��D �� ?z�h!:�]���'���?уA�'f�\�6z��7�PH}3Ͽ-�~�x���2�R�8ׁ������q�Y�I���eE^AL����kw�ڠ�V�v���wn�f�ͺ�5v�n�����u;w_O�谑��7�Lc`g�^���0:i��م1k�YT�U.^�2��m9���ئp��DZkA�Bd�}���>��(9|��W^�x.���D�M�-d8�,BBI/��M��p�^�A�ܶ�e�o�~���x���׻O6���4�ĝ;�ʿ/k������4��
h'�A'���a~��ۼ�F	�����oܟ1�{M333�F]�>R8���y��?�j��ԕ
�@}�Zq�㢪�������7�V����2:��w�~��2��C#?}��2��Y�	��5�(�n����'h�,}A�h�=��5gWgh����@�����3
��{��a2�&��v��We�!��ObN(�/g��
��]��ތ1�r�;��:�Tʀ?�t��<}�ݰ��-���v�H��w�UUuP�w_{�ѷ���ax���w�nX����~��*7���xHH���X�.�p����;z�#�CFȕ��6�Tq8�>�.����V��
�'��<8#˩r����/�_-I<+JD�<���1��4]��A1^�G�R�|2����T_t8[|
��E��rLd'v�;��f�&=f�R/��Z*���lB!�鼱dDh"O�z��+����,�TՇ褗c�Q	�y/��w���Bu�}����>�>G��3(�]���]�&f�]�'��E���ɿ�k��6n
Z��a���>~���[���3�"S�v�J���
f0��81�Ϲϝ��r���N~Zcqؗ�Ш����W�! oY�6Я��i\���W��� FZ��`�w�Z1
tqS��niɿx�ѱ��~����Mbw��'w{i���{G��d�a�m˜	\�;�g����۬�zņ��q:4���v��qsƼ)K/�U���&���A����}�k����#���?�:1�����/���Py�F6z	���4�]���p���}�F���윎����o��?QΥY����}@a�bެQ�]�����q0���q�e�[o��c�og/�E<����������:�%}\�����6_�.�q�i���#J�t����@�/3��]7زl�kk�7k�$I�MU�i��߫ޟw$�o������
�i7�ݰ�Ӡ�o_4�]k?ګ��.�G�u��\}h5��UY�SU�eu��2]��7�� V
�e��+��zV���th���rjM3�~iu��H0���!�J��Z��+M�ei6\W�Μ�1"dѫ�&p�:����eqmX��ɖ�0��=H����@{�T�<>'Nb��mQGQ~c`IS��.���W�?��/����B����
���Aq�ł_Q���x+8	�,�%M�W�/��;(��=�_�{8:]��g�.�J��Dž��	�4V�|>,������1�(�tz\�d�q/�$B�U�9��%��_�ZoC�ʞ��t��H�����>�q��ݻ���=�O�n�_o��|�1|Ͷ�}�D���[�؊�[
U��0~����?�yb_P�]3:��ܬ؈۰h�#/1/==�5�X7/��rpK'K����rs����@{�A�fY�b���ŚR�Հ%'��P�#5:��_y����?�\��y㍯!�M�l͍ߣW�%sy9�^��/�_\����p��d'b%�E؉Ғ���U[=����QI(�/�V+d�,���GB���>7���PO>�u����awnt�FH�ҿ0�t�&��W�������E���[/_�@+���Le�kmW��ͯ���F�}�ծOi:ޮ�UF}>;<�ݝ�Q�L�Z޾��V��s�eW�ƒIƥr?��M�����(�Bj6��l��hO��d�l��B�>p��?��t�����e+Se�tЙ��l�7j_�1�f����[g:��3[O y�䆣�r}.3�cޏp��n�^+t�����K��3�xfp�YjH͹?+����<Gg�UΈ=��f��ø�{h�z��Ϙ_3�_�H��C�
2c�t��=ݐ>n��B	��ޗ:��Z�|w0�.�Ӌ�_�ݦf�^ޤzA�ѭ�'��R�/��ʋAY�T�]���8�*�ӥֳX�d�[�eE�M"�&�.�'���ϦK˥�u���)�o�KH;f���t_@+��h:,�zA�@�!
�	�!b��VTLHQ���J�؁�����7[JU���޸]1�����X�)e��+����@i�/F��]^굁f�/I�/���/�ׯ'����tm�]��(�'���+�r��53����բ�ԎɌyV%��z 8O��ж��cI�2GZ�I���Ǖ8�@>C���#Es��+re\�O#�#l�43�K+4�k�@$2|�U	Y+tb�쿞?Kn��C�l�����׾~w0!͋b{W�����N�������2�wx���6؄�e���@��n3��;���&�]������6&lj�����DNr�vj���¦y���G*Z��#�U"6k�&��bn�3`gGТa6Y�nלz��qvs�#��n?t���R�����o�zDִ��R2���A��o{p�C\@�����L�p��!*Tz!�K��^!g26�ɀ�uJ��}�3HCt�[���ݙT� *b��H��%���f��
��&�_o��D�u���M���]�3�`?}1ӽyց��5mPӶm�S�U������=�^������i�+��a�U�L������&��z�H�䋫cb�{{���I��u�c8?]��o����WWw�v�a�cuě��~#n]�ә�Qjc4*�&X����/C:Q�gC��J�QQ�JS�7�d1��s�
{rv_8�hdB}�ܞ���E�B�F3n_H&��M&����J��]�+���_w��r�^��|.��������60T;�9���9��%*+��x����%:�!�g�D���,/���o�@.�k��P�N6��޴x�c�3��s��j���Gɧ6�������¡a~�o��������c�,��s�μ��b�y�L��V�*G��g[�
F]�Qg;:�Rg,n�.���^ý���JGAؕ2�棞�!rtH-�)6<�BJW��9��R��Uf��j��t��.���є
	UMPN�v��3I��?��$��JrJN�
�K�FR��	�n��>��ZR��E˹iE�)�p%�o[��b��G�9]4m���nmb�:��d�������<�Ҫ-����e���
�,��ҥ֛X���9����6,䳌r�6�7y��!=�2C��l�le��!l��a������C&�߸yd{xt4|�ϡc���l��s�C�B?ڳ��ա�^"��6o?w����˸k��Sܭ����C{�0�+�z���s��Ы+��Yr���il��	�a^U@�
^��4���<^�*��o��@��.=;�>��-��d��+��������-�rc�F�u�k��V��4�6��I�>���+�`�o�����^aAL����OZa��"���_zDr�,�d_��H4�N�ժ
'pP��ҷ�-I�hսKOUWg��%������;��&W�3�D��@�4>�!��{4�ho���+�+	{C:��AS��g�4)�=��Y5�0�Q4�W�$Q��)C2�AY���J��nH;ci�K.*(#,�����Uy�9��=>��'qt&�&B�$F等����Hz���J�##���͌��c6�h_�(����6�+
�mq'g�Mq��!B&��k�(�M�s7�J��[	�DS�T1x!]H�Q��xX�n�y�Rl����UI�g�M
���dmI�C�xHW�H�@{��߷,#
���U+��o�+]#��PMp�W�2YT�V���@�n���)�x<	���`˴#���w<w�P	�y�A���ŋ�<:t������}�O+�Q�:�񽐙����G�D�*�g�$X:��SՍ|�=/u�h�,P
�	N�qEXb'����zm��x��aa�Z/�/hШ�;�H�'��r,�D�t]}�����Ug�����w�l{��#��O}��n��Ȓ)I}NF�
Y��$<�tɻ���%��~;�G�M�h�}��$�lJr�7���]O�a�y��3۬aS��V}ѝ��eZq�
���h �rd<�V}�c��?v���h\��=xt�h��
$�ͫ3������Q�Q�>%>�N�A���O�p��LϽ��r�o=F��_�z���G�5���,!�۟E�@�T߱--n(�$�CS�� �u�
�O������P�M���\+���d_�H����������Q�t<)�b�ـ�?_!��0�;�EQ!�}N�~���/�O�H&1_є�8�I��8Q@7pR>��6-s�w��A�g�R֠�˕ʔ�fND��S��Iӳt%�U_Y����'�&�"C}W�a�.+��}Z�l��z<gO�g�&|8�KI��S
}&,_Q�;R� �7�8��(��,b��pU�H{XN�0�W 4>�+4��;��dC�7q�͒X��hx�Q������XxaGl`˵���ſlV�+����7�|h���z��|���|ٮM���jt�ȕo䯟-��~Un�p���#g�ߐӯ�ڒ��rl�}r(��}��i`��-��<���
���d�
6r۸}�eܕ�u�-ܫ<��Z44�f6�fV�/r�:��#�ESK��R��wPH��.��~
i2
���]�Oa�=��O��)U}ܽ�h�L����|Z��c<�UCJ��-�ž�zW>HL^q�U��\�Re��Ѕ�y���rX���r�^)�WN����"��g��ex����mUiZ�Aϻ%m�0ƕ�'>!m��o
%��3�I���Q��H0��<��G)���
q[|��G%�t�%����W�{��v#��i�s���wk����-�:!�z�v�@}�s�Z��jMw	(Ǿt��o3������RN��k/��㉴��(¨�r��}��3>\H�	�^q"����k�ح�~��[F�6��m�����[��37�<3��&�i���3<��I�jSs��|:��F�7oo��Uދ��vj�J%�ZK�����7��MϾ�,��6c{��+=�1�p3�m�	�!	i$6�`��5�Y��N��{�d�!�=�;URI�36���fZ��*��9u�w����HJn8*�����`�*��F��K�����[�ɐ�;JǓ��O���#��[��F��o]��[�p<��V�.:
��}
�s�g�CC�����s�
C����Ɓ���߁�#m(W�Ү�����Kլ�t��n��)�݊���/�;
ۓ��iZ�q�lfۧa�|�/N��n�c���z�2d��K����˱$��X�Bdž�KsM&��t�
տ�T����	�!����0u-�S�r��v13n�C�a�P�j�f&����ڇ��D�`����	����Kj$ޗ���|�0ɫMj������NKb���I�ůu������y�;)�Qt����BٖW���PG���9��$=�u�B�j-�ecN��g���ě���х��#gL���٘�"NM��=`��Ь��_uo����ԟ4����/ Q6���EǷ���ݽm<�5SVU��px`�l=��9��f&A�H:i��⑞���P��\�j��sȍG�		R�t�Vjy��y�ܛ�	�;`
�<��
'I��M�M��͑�w;M���m�wX�G^r5X�|b4�MrK��=��r�1rc��1�skk�ΑYI��(
o%�&��Iny�E�ocF ��������pK�ǎ�|���,g'&κA�Gx�0�˰=�f&l`�{(@v�9����3P��{��^h���8�p|U*=�B*{S�ZM�/��*�]�kh��_�w-&WQ�k�:դ�u"�=G���_I�O�3����J��e�
�M^ֲ��*:^�Q�U�yN�fc����'��<�T�w���
uzb� �5B����D5o�z|>�
dT+�9$�7q��>*�ꯂ';[d
%+�2�_tu��	�D�Ӄ�f�s�u=o�my�J����M�݁�N^s9�]��;�(�]�{���eh���{�2�_0wl���?	I	)"QE0�����m4�z*:��h~.�	����?�)���R��f��c-�hIZȄM�D��A>��B��</�ǎ�2�y���]PD��ub�I��+���hm,��v4�#\���`���Ж8U��ePgw����
س�10�e��@+
�	��������܌}�w9��q9�:G������A� ��� �h�Y��@O�2�N~}�X?��X�G��j�^�e�1cK5;�hLF�����
L:#���^������m�6����>��j��>�q7�t�G��
!��
���=*�/Q�"~^��hXT�ycP��c1��w׎�
��r~l�,�~ؕl�j���c��u�=���I�O��s?ϵ�ҩb� y7�g����݈���[�VlM�2���׳��^���ߣ�Ԁ�=�)���-}�u���.���]�2K�b�8�g���D��C��f��L	!u-�?�`�[�
4�G�<�ˤ'���F�����@��8D8��|��!�F�7)Y廎�ٶn�E8�"�I�J)eI�&fg��戌�tl�$�g01O���䇡-.�i@_P��,3�$�"�W#�/�r�|T?���=c��y��\��]U�!O���l[F#|�h�S����~����w�op��z�z�
�h<��D�^�#�cp������U�iYN"va^���?�e4�GR�ʠ��l��1ڲ@n�9�j����?�	�K�>�m�k�L�ա�.���[,	~X��r����Ǔ�(��b!��Mqm��/0��n��@������L���-},%�p�B��L΀j�6{�w��yt�H�'��t?3���L.Y�$m�h�)�ssNU�DŠ�d���;	��v)a��}�*H������ZR �\�Q���$�x�"9E��xI�7�H>��1�
� ��;�0�S76a�C��B���o3��Q�{�y���O5O\�#&�zt
zaʷ��-�%��d�.\����ece踩5���u.�w�C�Q���]�c��itc;��V��"�V���񾤔�g
��߁$ɽԟ9��'R��(�|��w�|���������;��\A8�nz�.q�.��4c��v�K$:濰�#��=�h4}Ʀ�k~:��_�wN3��,N�W^��cʢ�S�u���)�t�@=xE(�O�O����e�l�6mr�F!9�g���*۽Q�4���_ѥ���*�����9K���$7�s�[J�VQ�:�a��\��D�ԻN%N<x�u^�b9N��r���<Z&�����(���:u�<z1p�uCO�f�%2���ʔ��F�XcC]��'k�*~����[��X�k���M�=h=>��ڃ8)���
����|��wȎ��pJ�$!�u�D��m=�SM�E��2`���OQ#rԶҼ��4zy9��+)2
p}4>~r�5щ�b��Vu��>�Tc��ޏ��M��зT�a	��z�</H�u�%���?�_�Dҿ,K�*WzZ��� TyK{��9���,a����3HUQ�qM��L���1��0��s4C؍|����\��N۽��ȭ3�-�D[)i�npNz�o�V��vY�����+��B,e>Lm�� ��M�D�j��f�}��+h{q�=��f�
ο��n���s������������Õ��ܵ!��m��&�x��Hp���q�!��DZ�Y)&23�>0���(f\'cfvr��K�q.Q�|I1Qo����`'���E۠S'�&���m�c	���4T�tźkcz�x���X*����\Y1&i4L�j���q<�co�U\TCRH�kX%��y]�JP��G�tI�%_,i&=����U�>��X�?�J6O5q�k*o"�*]�B�HO�_#�R�1n���j^���*�A*i �d�@�N��^Y܊����3a�lH��E�+�mNYZ�\�����6&J�٘uEB�
��O0Uj<�q� K������fdaq�!���M5E�~L�ˎ7\K��n	,����]��4ܝ��C��Nq鏅c�ߣc�6�Z	����{��s��V^e����pL=Hg��tU��a��*�P=�2Y�_T%�}��'�MQM��9I���D��ؗ�����1]���خ���]��j�������IWQ�)E
t�Eډ`}
5��Maz���c/����E�q!��Z�D��'x>Wq�vH�8[RD�_��K]8�u5ް;ێ&ĸ�S�´(�)���$��1
^�ړ�T[}d<��vitd�����h�/�E�Z�9"��#{ᗷZ+�,I��H�ˏ/JsT_Sk�w��n�1H4Fu�Uf��!��~�Fc�
$�#Y���lB��<�oQ�*p�`��*e>�@oI��-������1�\P
�����0�t]y�a}���w�.����i‚߷��X��e�4�ۯ�\eM1D�w��w�̕����Q&�Bj�HC��\�
��@:=��� �?�6B���7k	�(am�o�����Y瓄�
fC��e]!�����F-!�M�ۥ�i��L�����1�n�6�DUz�O�X��^�%�~ko�f:$�&E�����SN-?]J#B+U�<���2�+XE����=M,�������7���q�[�}��I���z4������;�<�̝�}[�h@t�������4+7[���Z۳�n�bA�"|�)�����#O��IjN�9҈q���� @YpK���L�?���KRLNr�*�mU���x#�T���d�%mE��a��a�WQ���ԭ1l�to���B`
iF>�N�?�bO\Qçh.�q��l��Nd��!.b�$��������5����`�%f����3�CFK9�x��R4������uM��d���l�]ݷ�U�Ѽ|�h�>�{.����H�՞S,ߘ�%-)���=Y�3G�I#��Gҹ�x��1IB��qAmX;�a�zG2v����V�4�8���@�6��G�b[��x4%E$M֭�n.�/�f��'(�err�>���>�i�;�rW˖�?����k�r\�Yϋ9,���fx�£OaN�6��бȍHj�>U�p4wpZ�^�N�)���@�cRJ!;�O&~�.�b��;Uw�Wm���>��U�Xti�S��Zs�:,?`Y<�@�({���t�k3���?MF\=%�7��|��o�%Z��@쩂+�GȾ��_�YL�(����@/^�3����8��lS�^�	����π�r�L�=W���'Q��qP?�=s�~岲i|z��6��Bc�a+|qmFx���2s�,<��}�HD.g�k:���\=wnm|D�0��®�A�j��aNW6\4�B8L9��A|X%o�/x�T����7��q5'��GI��"�J��'���Br��G�!�_*i�m�is�l0`/��ˠQua
���9�̙�ϲ�H�;}�M���n���x�	a�:��5ve��@E�+�D�S,�b��NMrX�����7Eŷ����������J�38]c?dk�3Ԁ����(����6p���4��y�vN����6�n֙�Xl��g]}��vbW<��U���ބ(D˥b�#I�6e��ƹ�r�ف����m �U���/%���WbE��G��>�ϢE�b��$���a��:2e�FK�.j���rӣ�X3\�0Ɗ��H��� G��H*sg(g����4,jcRA�TA�Ȓ�R��{ޫY��#�B������|�y�K���A͛=�:p�߲�9ٱ��"��$%$֧C�%˖�
����X��ӵ��W���q �򱛹����㲊n�<�
�������Չ_5OGR����MG���j*�����`O�	��Ei��)�b�{Ԭ����9�!|"��p��~�k�W)N�}����bc1l�33���Hj��OӘ����=Y�f1��^�X
��u��d�O;\�����%\���u]�i_Y���}�4��O�sQ�`�k����<_>�ї_���Foݻ�ֽ��Af|<X���訬�YV�3��-�����v�����B˲Ln9,+IE=)+>&���rk��gG�Z�H��׊�%yG����ZTuU�S����*fiFxj|5t������Ⱦ�^\qT֭�i�?��Q�R�gZ.���R����y���"�F%?`�(&�G-�z�D���[2���i-$�:�Ř�,�ݐ��#�+"e�R�J���rR\��#�	�J\zT$&�G�N�)4v7���o�"t�T]FH�UAO閪��� /e�4qZ���R�AN�g$>�^����{��ϫ"���DH�A�q�ԧ�ﮑ�s�u*�O=ۣ�!��x�N͡k|z��K��n��a$4�n���o�5���8���7�_�6��[��~x�#i� 7��<�V�8�����L^v�R���s0<�'�2��	%�#�XE'�R���d��9�5`�D/��[C�,���")�n�f��g���b �����Tsx^�vTkY+Q��6:% m��սl��^�
�l$�Y�l����]r�0$��u��WUZ1����-�	~LƄ8�zif��T�B���EE�e�;��t`.�����o�b��	GZ�캏K-�)3�/>�4����b1o�2�Z?*:����N>�ݿq�
z������f�.��gam}
���-�v#��je�2#��w����֣���Z���4ч/�H��o�4]+V��yf:���T�IQ
x��O�d��9��������|�����z�f�^��?�M��M�o�J���<�-��T�
�r�A�-�
���Z!�( '�)��G�p$�%���;É�ᨦU�wk���(4���^mDQ}	�}�G��s� D�>ƣ����������I�:���K�	X$&R�R��va�Te�D����8�k��c|<F��m�C�?�ܣ� ��`y6�O<dp�7���S5_w�8�+�%dͻ66&�7�?�ۡWR���S��r�q�ܚ<H��v������@j���aʑ�fZ�評�أ���G*�L#�aS�v�@�
���s��<��&t���7~�Fc��X��:�lW��E�w.�#��L���T-�8�����f�>���e��{V��_ +���	'���Զq%��x	4�;ʫt��B��������P��v,�Q�����(������lm@"�%ΐ�T�?ڐ'rي�K[F_��-]xI+��	��60up�ڸ��`�E�b�
�F��%�Mv^��照b�-DSy	/���s�{���A2��t�6�H�W���]�?�����r�"��&8I�#_���@����Əd���B:Zٙ�.&�٘�Bgoe�K�g��x]g_@�1��@�i\�kpk�lK�����_+�Х.4h��� �x�ӥ{���8Zv��"a覆�JFH?؉4m���](��&:�H�����52H$�40���a�+}�lB�O�
���lu �(N�92m����9��f+��~�]��������8ߵϖZ�~X,��h%Y`�G�$����w��$����[���f��y�j:����@g������st�7 >�����8�����d
̶3q�(H����&�;1.mF,�M� ��pP>�&Ê��D+(l6�L�%A���0>.(�wȊP��::l���ҶϺ���p|��$��ǘ!�� �|	R�2�{���P�E'@�&z�4Eh��mP�1Ì��-ZW.=����9Y�d�S�����W�dB��
)O�!&uzI{Uח��E)-�䣓�N�D��FH�Rc�D5�rt$*OƦ��Ae�ճJP��2xmՑ�u�m'�_&���D��{%�����0���ȋ�T4h�EG��Ǖu@�A_��A���,�*q"D~�c:^l+���n_�l�m�������&����+�>j�h>�:�m�@���_v����srb

<O
��ы%
&Q��Q_���E�2.�с(���oJz�r��җME�v*e�/�u��H�6��%Me��c�޶-��k��%��^+��yʯU�j9ۈ"5Q������B�B��-�T���sž�p���Z���y������ʶr�����<������XYm�\]���^2�Fh/Vb7��(x��*p�)Dj'盐��ԻN�����5��Lӂ�����{!�3�=}��rm��c�?��~#�LƧi��f�g�J�B���#�����ې�L���������n����}���ܼp]���C������(&%-����F�a����bC��r��4�o��.�P��_��`���ϖ�{X�J!Z���&Ȃv�I�ۄ-+��B4;��Ţ?9�ܳq-�G���!�C*gkg�e&���c���_Q�!^��\�%��8$�Ғ��09
��.��zD���G�h���ko
���ߪa<��7V�
�@΀�i�g�����Բ�(U�}�Y�y�-�P����N��懂�����-k"�X	
�8�c�'c��Kl��~
eo��]�-+a���!����N/�)�\�۲�a�n��v=���P=Y S�6��۷����ש狮���W��;jԉ��NΠ�:O}�:ϸp��.6�p;/��j���_����ϯ)�lS��_�y�񳶆��Y��5���G�=������_�Y���g��0[��<)����|U,g�4aۀ�S?���m�հ}4,i�5����YҘ>��K,ΛK}$���t:ڼ{���Ϡ:>�Zl�pV�9�%�?��x���R$��`�	�5���z�D��p�7�0��	5���-��?g�Yv�
k2e���
���l��V}=���w�Bg��I��xJ�	Iy�_=_R�gn�Ko�!�s���uG��h�zqvl�C��gG��d�O��9�x=�=]�gHʍ�dm��]t�+M�9ei�#c�J�1�6Y
�%+���E}n�`:���4�Wr��$w��:id������B�D�O�F6�ak���X(�����6��ڞ[�Fj\�'��Br������[(l]��$kܶuP�X@��<Y���gz��|��n��M%��=�MKn�+&VE����GRE�f�W|��
;��d�y~�7e9K�AY���uz7��/��QL�9ލ�|r�o�\s�4��b���Q�n4��)�M��<v�9�F�C��P���i�*R�湭��������VnT��"��H$3	�����=����%!�D�9I
�oU���|�?-DҨ�_������'dy��M#��Ȧ��;d�cłA����to�SO$�wZ
��M��B��O��Q��&��a��^f;�p�z:�����V�0��pН�p��z\4%E��wE2Ÿ�s9��(o%E�z\��&R�K.���sd�~��f��@�ψ���M�j�!�b�@c��|�L��x���P�أ�u]�;!�'�z�����G�Q�?յ�V%�Y��8_d���݁�dx�9U���H�m�l�H�!�ʕR�Y~�)��l�����k�m�l��\�a8Zݸ�~��K�a�g���_=��)�B�Œkl.�X,�'�΅�XZ2ڪx�/�
e=�\�;n�qǡ��?N�����>�I�cԸ���͹:4�Tj�]��g`�C�6N������5MS{�+h��8	su��Ta����g9�ir==p02��H(Gwl]TǶ���FXΏ���hRS6����t�'~���bJ�쉱M{��ɍ����t��.�C��
�4tw�C���p���z�;"��9P׌�Z�yhkƧ�1��O��jnkϟ�G��#n�&�t�.t�M�-?�(��d!:פ���le�F���{Q�Vv?b%�I���e36/��68��`��
n���-�>h�O��o�],P��o��HJ�*%�n[�T�R	\A��:*���;e"�U=��Y]|���2���e�5������	
FXd__gf�U��� 6�Ba�&�+�{dԏ!�1C��S
�;���������<_�s������<����:
L"�_Nw�+NA����֊|�Cy��+&±Z�H�C�����_�o���/��ɋ��t����I}N"�2�9����C���Ħt�k�T����G7�I�����[Ϭ���w��;�~���*�^M��.���gˀ��!�&���;�U���������v���P�Ѫ���ld�Bn.�hB��Ϲ�����Ȩ*��=B�<�
�|�34�
���0~Y����dt����v�vg��,�\�΀` `�z��|>#�ND�f�~���?���Q�),I��e�"^��<�yQ�4r����Y��P"�
^e�4,j�����_��Ci�/��_&�8�uCY[��Zk�u���w���~���G#n�d�''��~��Vi�t9;��VBc+�-�wv��!��_�p�v5�ZJ���_
 ɓV�j�W���+��?�8h�騼6��S�MH��F-�f�;�
B����n90�d�5c�u�m%7؄j,���_�Ĭ��i�Mt���#Sх�X�>t�'�[F��d�0sHsL���^Jiʍ/��Y�.�v�j��jB��*
�=*@�w�=CJ�er5A/��
���G-_>Z��N�|�7�71�
6�s���[��;v�ۓ�L�>��qK��;��!���x�_��Kp1`c�����pX.VEU�¦�uNC�;��g$EmfTE�y�!%蜿���uбٵ!R}5�98
��@_!�1�]�
���܃<�F>U�9L*�g2T.��:�]"h);���s�\�^o��'�c*E��ϭBWO4σV;�g�}��}�1�ou�V�����_������߶�KEk�j�9ܫ%�5�ZBZ�$}���
,�ͤ�(<U#�d?WK������(N6��o�A���˰@���a?�w���^s^"�>ܴ��*�nLm���\��=���ʻ8��`����8�}�ɕ�?�8D�o���s��L��7u���]-m������s�0i���~(pԈl�1�����gA�z�#������d�ıK�~���Z���(?Bu�[��粷�Ňר���/ku*�ۘN�I�XA'"$��\f�\��ˌQZ�
��sd�]�l]F�<PW��Y\z���&��������_
���c�T�`�0�H�j�1��#�����+��V�4R�|D�#�
ϓRR��Z>T_�5 KWo�^D9�2�*���F�U���cȎ�U���c:��9��$���v��ΏnH
�o��u��	;8��0�/�U`6D6�Sc�K8#��)zŭ���TFW��	��5!�ֆ�4�nb)���k�8��W������U��F�^b�Y,�����d4{k�d��e��>�&0��,�vB*��ügd�.�5��tPs��Za��]��9�%�
(y��
��b��0�������ՙr���MS�>C�J~�'/B#.���"oI��l+
�����~�Mm:xj5�y9��V�zxI҂��o�J�siO�X�XIb�u�!‰:�T
���Z0�&"�Ƹk���Ho�X����Jx��آ��;�
���“�a���=p����I������,����	'N�qp�פn��y�z+�֊V�ȈW=��Ǡ����C
�V�v�b�G-���0���@�P`�C�\h�4�i�S�����|X��N5Q�[Ѝ#j+��>[c�w\w/��b��a�?�X�	;�T�4�j�p��:��S�?~y;mOw�K����F�V����R#�����w������)��u��r�X�`g�ܨt��F�m��yw�E��?�k��j��|�������Y�6^��̋��2��o��\$���*�?��Z�ӅS�n��NkUn������\O��b��?�l(/�.������H���:b�/��zQQ��Bl�}��nlC�����]��1���1�WJ?��d�?(�J:)�/7��D
ސ�D>%(J�ER�H

�M$�����|U7P	���%�j�EΚ������em^"4�L�MNC�g�j�<8�tE�뎣�֨&�x#��aA�s�`B���#KR('D���&�����#�)*Մ�L�nd쇥8�S���)-t��H��'�/�ss���}��1�:'q<���:�ӕ9�N�S�/�1�2�wJ�YϮD#/[X�_gv@0l.�ܲ�e dn��z*r1I1�g*�Ƶ�}V��������l@��?�t����66O�]XJS	�H�c0
 Hi�9�<D��!��$-bM�pZ}B
KR�
	[8��I�ur��G�W]痫�8�$
k\'�*O���b[<�����\!�E��j*�8���5��ź�c�W�.�ʮ��bq�d}�։�p�u�V��֧|�7T��BVZ~�9�d
Ϻ�&������K�R�0&�4z��K��'<��A�fzP�v��4/��\���W� }9r*���%n
bR�K��Ԡ�|f�VD;,�'�$�n�<?���F�x(��z'�N��0)x4(*Ӻ��t�|�>XKY��_�é0�ɹp��z��n p*�*��Q���0]�)��/RH� ��)�J�1T,��E��S�Gv�n�+�̰�� �"]eJE��|i,��	�U�VT~L7xI8�ǫ�tA��i+��I|���)]�Q����ü��$IZMhtP��XT	Z���YA%�}�Wy̋���ځ+���KEΔ�T�[��J6�"�>��(F���%	��@A.�ɉ*!+S�y@,�E1�E���;Q5�BJ�!<#� ~
�˜
���Ӂx�z%���d�������<f'Pz~^�c�6?����q��i>�d�~TM�����qϺ�@��w�(��CF8y�y
z�2BI��I^\J�N�b�.m���k�ſ!��T���١E�a��\h]�n��Ь6eU�+�]��T�����2��扃�p��B��OڗPJ�'6�tsW8�<߾��N|}>0I��D��OWk���5]ƜV�V4I8K�R!.Ec�+��#�M�h��躦�ӰU����
4��ӨgG��W��I����杺E�'7���V��G�b�R���;q@�Q���|��8�x�^>WDZ�$�C���:�2����$���9���Y�!V/�w���4мÁ�Nt㋬��>�#��m+�<�0�d���<E�'�A�����!1lJO�ts�Y6����,l�\����.��kA�|¶��������h��,��q�h"#��a%郫!�Jo�%et���L���:��3���Wb�ŝ4�L�CJ�I4�� �!���O�ۭ(��cs|���
<G�xQW��s��I
k��9��d�1Yr,�=��_ӆS��D[�Y
����r=�!+V��\���y��$�;?��Qei���X��(1�rH�-e����3'@�E���jk����#�t�tR�пc���'0 ����"���%]
���`�����@��"�Nrc�܉��c��%]��c�8���1�-�5^��4S�6����;"��ʓVr[ Uh�r��c�<����ҵ'W������'F���7�5O���k�sG�;��C"6\��O�Sw�W8�.�X�
�9|g�~��k=#��*���M�k�}�f�
�M_� ���$���'D`� l�R#J䯅U�mlAMl�����C�
�1����/���Jۋ�;X��j��}��I�>c����MV_��i���^���(Gb���E��G�T�8��T�4�����C�KTv�|��ڪ��~=�Ѫ��6�Ch��b�0
5�+����ہva�P�v5�Єv5?٠Z���ev}R�����fXo^'OpG|��F�q\�t�D�o�m�($����O�!���n@�0��ƻ5�PHGA�)������sS�ͫ�.��D=j=����yD�T>)�2EDf�J��}��K�.��bKĩ��^�X�7����ؕ]�;��ǂ�A�T���p�џu�(m��&�?�Uk�s*1Ѻ�p�h@d��B/��Dn"7�!I\�z�y�}����������LO�RNzg��y���fd�N�>��(s��|n�D�l�$�0CN66�2�\o�v~���^�7�:�#�yH6��{c;"vu�q��6n�`|�7W���dt�aY,"�u����a�2��y/(l�,����rQNV�C�h����Q��]�G��ڝ��
�����c���"*ޝ��~��wve,s�V�rg~����oʌ��Gc���A~C|��%���L�dq�+V�~u���1�TC߁(O�p�,p�D���Z�^�SUHc�ؓ?��}]&f������rC9�5�z���
;��$���V�VVi(�j�HorD-Ɯ���x<�f��D�x�ZtbEu$���ːޖ\Y�c�\d�*�(��2Coن��ٶo,'�Sۮ=x�Z}͝�xlrRƳ-�؏���W͌��E/�!��%��Q�i�IO����fm����q���Egjp����.ɶ�>�?���B�'"ݰi	9��:�����kHd���8-�ݕY�f;�ąm/�0�3eUe�TBfߔ���$�PG,��8��-Bu&�k�]-v`��_m���em,�[4Yn����u��|����b7Df�a6��@3�ã���P �QW(��#�:F�u�!Eu��e���t��#�:�~��Z5$�}���7�/��h�봶���C^
���;�DJ Ymۖ�2�05&Ld=R���JG�R�,��C-�� `f�Ot�y�ѭ%�U/�����N���2�d�Y�׭���Q�Z#+(���kS�tY`{W�#��z����x���u9x�����
*�I�ŵ��_w�Z/�PGS���������u��(����P��;[��Z��)�c;�."ռY�1���Z:�-$]��ޘֈ<���d�ѝ�қ|�ͷ��,�%.&��qbc�y"\�=�z�f|��M�Qi���s��Lr-^��RƧ:e{͡��<C̡��w�IJ�
,K� �1Jf�d�j�Ѷ�l�@:�m)�{4�#�Fb7��Ԡ��Y��{��ѿ�Q�2~q�v��p��Y��Z��6Z4�;�����
���Z��\�cyL���N�k%�P6t��`*�� ��zE*u���G��0����pR�x���#%?H�{�M�e#7)Ϳ��7%���Æ�^{�ȁ�!�����*��*'Ce�����<���=��J`#B����[/	�x"����(֪��������%�E��c`���T�4!�#l	bwPI9�zEc��������-Q(�1�����A�������ƥ9gx�H0E�4�s�i�,[�L�6�r7Hᲊ��|x�HB��D�F�f�!�5��%SUIgi�U��PDL�>67��`R
�s��O����ug8��r��@sC��Rp.����dP&���	!u���a���9��P��<)o@��Q�jE&5�3���H�Ԉʼn��FT3����CrD㕡I��f�%�Foڵ��1�Q"/։���!u,49�q�d7���s����K'旊ǔ�s���қ�`�6Qc�VN�k�sCXS�S�����'}���Xh���±�^t��!�ߝ)��Dʭ���j|�f�CsCCs�
��C���p�W����AV�ɜ����f��u���mhM2c��
Yv�	�@⦹M"2���A����-�+�\6��|�!�"���@E3��hy=U�:Y�o�xz�o�,}ڱ�4�@=��\e���o����	&[ym�Շ�I��}�P3����Π��Z�]v�Q��Ƒ��-��?�\��NA�+8l^�Q��(�+�I$�U�h�)0P8��e�8ū�����g�
�e��V��xA�yQ�ۙ;����di���Vȯ*�·8KZ4�4���{m+�GB�WbD�|#"	��u����J������%��CP'O�Tv{��0qjI��0�b`f��-�i�TEY���ԟ��9G�-nG�1�*glbR�԰��s�9/�D�����	$I��i���{vf⊬���)�A��EzN��墆$؂��
c�y���^E�LZ߇8B!8�#NSA��Y4t�b�R쌡h}j�H�&�rP�x1-�RR�������5W>#���6T.�F!1��E�Y�����i�@6�Wʵ�[ _c��3�]N�eB!�r_ߑW��X�y�sU"�C�$Q��S��	O��8$q"=_��"=�yM6D)��|��N^����)|Q}ő�E~	�`�e�|St"kD��Y
q��s�(!����<7|}e��{���K#G������'|JٵcT=DJk��ѹ��=/{�(띳�!ˆ��S���Xr?�1 S��6���t�~�w�򹁁�ο�L�)�r�\���#T�D��KE�z���
���q5&�n��qBJ�[#����j�� !��nL�h O��������d�Yx�z�
JQ����q6�^�B�l.�(k���:j�#�Tiױ�,' ��!�./��^=�-�9�W������y[��h0�yъ�,�����WV���
}>�A��MtL|�T�q�6����o���'sC����{���}�I��)۩�|ͱ��ʹO�fvLn5K���g�x�q'�d�7�(N���b���R���e�n0��j�\#��2���#p�L��Yo3d�b�Ĝ�c�,!�yS�/�œ�#��xː9�h����oRAS8ٰ8>$���Бq��+ȢDfu8��Һ�>!I����Yl��E(9��8%nB�rP�v�5�w�6>��!���|琞%��bZ�*Yc��g���yΡlV�ս8Α�)�jb}u0����ͫ蝄�j!s�״��ŎӦ��F^��N,rq�w�V����"�G��Tv��\�Âs�Y"�su�(��Bfz���7[�H��'^�g�>�w<p���� qZ�Γ����K�1�GnsȺLu��L`��"�� 39�^���q���]#�-�:�f/�z���b_� #)��b>H���[j]ȷ�!b���D)|<O�?��$!�$f!�W���W*v�
����H�8����W�w/�&�X�*��3�$�aO�D�`e���Q����;�ME���.�q���;��P��7��I�
��jk4X��q�a��۶͒�>L����d����'�0�q��ඵ�����o!��\�w�&���kMѨ}�:�ޥI�6HCʮ�Ϸ��|��L�H��39�G�(���k���X�߫dr,I����W�V�w"��,���I�˚�іX`���6b��q�m��(�;�K@��C���~xݖ~���
�t����z�Vo�$d��Ϲs�\�Q�m��rM�L��xo�Y��\�C�6u�3���X%�u^�b�g/��EeL�o^�ew�]'?EW1�p�NP��=�rW{�#C��]���ITe���2hl�4`s� ��wG�_���D��g�g-��#fξ��w����/��ۨފ�p���)�yw�^��e*Ō����k�40��wx��v���|�eBv��wY�pbTCT�y4���k�x���?p?��� �EذH�c�d�ҕ��%;��s�/��FvV������M~Q��JWUW݊�:>�����ǩ�~&��Ɋ��|~�"�N$�؆w����Dž
�ŭ�r���{���Y����j��5{ُK5���4%��mk>>��|(6\n�
����Jh8�ٱ5�B�Y� ׆E)�R��'�On���V�ؐwg����.*�ff��e]>��—�׿Ա���%&�1Rq��ZGw�S�ڇM��Z/wh7��5?!�����cm��+�3�|��:o�}V��M����;H��8�(o��ֺӇ��Ip��ӡ�ԝ���ֲS�����H�y�M�h�v�^�Q����d�(�]��a�U^^��A�ݏ�]�Uf�q��p���_�:��u��33/[�f�׃Ť24{�]@�l�$�b����T�%�����q��0�Чi��Hc��{N]���5�2��7r�ս�W t%5LYi�^��)�S^�ߕ���ʮ��<�H�S]R��#��7`��t�/2
6����q���<סgl���`��KV4j�"ݒ��AͯgL�b�%2x���`�8�$d��6\�O;pۺ��x�X��!\����y��*��:��_1���+���&�{;��?�\c>�q�;�������~O�/*U��ܤU"E}����;��{����N�I���V���;bĶR/�����E���ѣ��/�q�Ӧ��!U+i
�]m,�c�r$��9;�pbP;ʴ�7���.�z������5��_@��I㞨��:zř�!J���L�8��o
����X�pu���u���͎s�U	J��z�H{[B$9��:'�]�P�[��%5v���cU�_��[�K��HZ�v�%��?[�n�.Տ���^�t&�+\o�+�V�"+$�	R�f�*�A��al	�Ⱦ��\т�mq˝I��Q��.��F�.�A�b /��+
��#<�/��gݠ�a��H#��h,Cޘs��J�L�2�ݨ#+۷��(s�|鑉�	����A��AWgBfe��4F1u�� �T�9�*C��䞻DS��-���#䍫#�lb5�E�D:|Z�3=�zIz���[&b��̫�cY�_�?^�8��3(�W�';k��Q��ݑ��s�B��.N���� � �I*�f,�&�A�`�,%���\�wyt2y�g+�-�`_�k��ݢe�B4�.z�@!�.twe/��J��O�z4	�r���Xdw�& v�@c��].K-��ڼs��_.)���*�BU���oޮ���m7����!�x��L��i,�E����#mR��P�B!K��a������U�@�8��2�fa���8f��vP@4�^�c��Y����č�NEw�hk:I>�~Gy�}ڱ"y4���r���ֹg��W1,q,(4��Lf����h�	}2���wjgm7�w1�D�&��.���_�L�A�B��a�^�|m��}��O���id�lLS[�u�{�&�*7�Cm���_F�8��_)��-2d��V#"!��
#խ��̍����e�{i4����3��K���_|B0�YhrE�f������"٘e������ _H�PY�I�)$�3�6�S�f�X��R����)�W�z%ǜ�3�Je�Ö�yUje��]����A	m�OwǾ�Y�k����
Q� c�vP�F~}��ǢPg��I�zS��$B,R�|�|M7�a���N��1�+�2��P�b��NAP��Go̊���a��q}\�(���X�Wnx_�ƣAr~��x:���"��>:��Ϣt́<T*�b׳�j�e��ǖ��L�'�GU
p��G��5�i�.Ϛ&�/?�ՎA���QOf�Do0��y�4��U���pa7k9���|�� p"j9ĵ@'�8�(�(I%7/I���G�c��ȣF�/�j��mZ����='�02P�u��^��o��[�Ka�%�4��ͅ��tv��^?2H�����4�l7�Px�J�>�s�B����5�$�&y�Ÿ�a8�k���L�M�Y3^�(�͕���+k��+�I�7=�i��~k�*�0�&ש�R��d^j�ө�Ԗ�"/����H��E$�7��ĝ�����`�n���B��o�a!��b<?Yꏽ�~�6z����/�I#���o�2�\M1��earh�x8���=d�3�GYi�Y���~c�v���@U<ʊ��Y�:��[�m�Gr^�իw3��n��$[jd&��#�ږ�w%I�$�/caJ��d�T�������t��쩅�wv�N�(���>]�"�����Ҩ۱�R��"�a�����B���S��]�:a�����P�×�-�;���9Ӂ���b�U dkq"�<϶-�G,W�^t-�F�z�T.�Whd�Y��I�!R�?f67��;�k��'޶��3�z�a�h!�!w����6�Ot�_7��;���~&����F3	B�,��]{1���� �q�iDXQ�ทc�Q��7h[��N\�zհC�
8nn�>,�Ԇ�m�����P��n߄w��sb:����%m�Œ�%����R��|����*Y(�����K�5��|O�%9m�P�fҡ�X�"�Rw��v�Me��SE��C��]��{�l��0]���|Dm�$�P؁��"�Q;܂���e!D\.�<ތ��!c�F6<��Tk��X�Z�6/|��k\XG����ϨoR���j�V�C���z���.��v{&����t<ZЃ��F�b`ii��XY:�^|�9nz/YyG��`9&s�1�2]�JsN̩��y�*���7�nF����#?9�[
Jr��y[j�q�S�6�����lb�,��q�������7o,e1؟,�̔��A��N�~�&�7��N��8�׋K��?�9	@C.��8td2�*s7�A��Oq"�+]�gvˡ�.FK��ѱ�>%���S����s	g��Ae�o6�3�;�K\l<�nJj��ja�e���[���@�)�N#w�ueme���ҥ�r��e`����a6���>��P�f��_'�G��m՘����!.�}I?؟����g�B8|��;�l�_c����E�u��ie)773�U�e�h�$��^��Q`f�E��X:���#dq�7��Wuˋ!�%���Xv��iJ7#D�m�Lm�6�[}�ͣ��5�GL�9��(��o
�۷(ʖ���Z9v�-�W4o~[0&l�&Ăo��,�����PHpnn~Q����C���66jW̱B��'�K �����,�X�
:�>5��()���QP�-�E �x�|X��uwV���V�i�Y�e}V�GZ:�6ք
ZDF�� �jeJv��B������%��}DQ�ߋ�����D������ͭ`���C����ϣ�>E�f�ѧP�I
��ۼL��ח�<pn��I�Gi^���<��h�Td] /���5�@�|����u��^Z��be�Z�<a��}K�SIG�P㽡޸:������X��6��Y��V�
�{����$���xCH��UcB�bH0���8���ᓁp6)�=�4`�����>�J9�J�v�U���-��B%��ߠ��=�(�
�;�j��eۛQ�t,����<��h(����2:p�!ah��Fpa�&R��	��)�B�J��H5�m#kja�����=_�Ŧ���.J�5P|~��M��#�K�t�>�_D<=�5$��o��j���(��w��F%&�dtM�A�\�L�E�L� 9�OiI6dΊ���K��ʇ�Gʤ4Yϧr��	�*F��&sS�1?9���lN3��F8l�Q5-7{d�Ԧ\YV���L�v^��^��i�%�o�5��h�!�D�lS�F>4b��ݽb�nL��w�v'���aC�I�7l�L���,�!�~�{n��!if#�\�I�w�`��ڿ9�KV���=��m�﫱�;h�8�Ck���*��}(��V���eO�-�ն\�e̒�����&
��2�hpP	������!���[θ�<l�ꗸ���Ģ��d�/ѝ�.�^>-o�Fԍ�e�W�F1��i6zz�n���$2��9��K
��~���
Z�����g��������{�:��S{WWUW��o���gzz�FKk�X�didɒl�<^1^`�a���.��1��	!H�?�|�  �l�˅<���B����T/3c�'�㓦�N��O��w���^Df�u�;Z0h,�H��7�Fؗ��~�:ߕ,^��%u��AEZ���G�,���O�ե�a|�0�n�a�s/��z�\½
�<ϧJ�<�X�+�r�DŽ����A~e�)��ug�dZ�E^O��+��{I�w�Y {)�w�r�9}���Ɠ�G/��]r�V?��i�'���ru�T�Dn��K�G��xY!;U������'#Y/N�(|��{���/V�Nc��d��-'��C@�`*df��.�oSeY�V�ljj&S@�FL�Zɀ0�C�!��9��p��j�{����8����O���G���Ԉ�D0�o�	s�@�E�c��G�}�9������*-�N�˅��t��N�,>\<��@%��4o�d+�<�Y;��ͱ�]ㇸ^㥒�!����v����b^=qB����Ӂg+j�q��QP+A�`���� �	�p��D����2�Cg�6+�"n�&��`Js���@�Ȍ`�nZĂ�N��s�ς?���M������}��(W��i�ٰ��vI�����I�I�E]����Nˑ��<�G�.�~�(��q���X�r����P�Ix�,	�Nh��k![?��vH{x�l����	��(��b���M�$���M-P^�яdqb�D�Y�vܤ,|�$�)�]4�s�;�Y0�q��,!��㝔��q䝏�'�~!)=	�DUN�|9�Ix,�ɴ�P�OO�㘕��e�O�U�V��Ϥ'�)�X�۱��P�I���"��d<�(%"�8��qv�d#�Q.�n��H���&�Y�a�v�]<�#�`	�p��������(���6>f��\�!�m�շ�{�����.�\)f���VހDB>i��0��y��[�ڭ�\ˎ��J�e���\|n�����P�Ƨ'�\H�������%�N� ��Ҹ�W"�!;�2́,m}4�O�����)���@w��A1��B��X��I����,��o����~�<�V�@3Bay�
�ȏ�I��7��?Ht���
�-��v� a�<��pG��S}~� �b��`�	��!��Dp/��"Q��M�����!^=i���D�T�8��O���-��"�&/n�|�e�72<�M��$]N)����Br(�~!lFLC@��P�M	�&�c��$ <��x�Q��~���xY�%�7=�O5�I]�런��)}&���<�,I}#��<�#�K���uD��f\�r�bF"�fZ��e�'#"x��hZ-�"R�w�jG�)B������8�g��V7��-��T]LG���	#�-��PLP�(�q�ID�(�|=����j����������,a������C�=3�/��C\�?�n����6������gi/�3�0�R"�>�V��-�jω��H&6�OUh^�Rb5Q�����S!��)"�M�WثL��bBC�xJk��O��j�PK�h�Lb�\�/&�0χ�Wɓ�a�t�s"i
IV��1I��x�M*�*�bd��3J�Epx���W/��/@x�������U�oF{��_ <,�R�1�d�ےD��w\�%��n�?�H
�|�,3�K��ӣH
�s�?'y~����q��F��n�3�+�	�ᰩ�n�+/��a��Y�����|�hE��:G��e��z�tt�� edǯ�*�eC�9DQC��7����B��_8�nB��F����.1;�@�(32_���`�.q��6�.S,�����$T��,/+���ô�g�\��n���Ⴆ-���Y��4��ݸ��ܭ�H8V��Ұ����H���/�1�kL�n�eлho��N��O���
]�Yҥ�+M�.��X�
=��o�`s��&��Ix;��NV����W�K)�\�.7�&{�6�#/�m�SV����K'����&�{��)S��ψHs'6�������3�3�x� |�Pp�?Q�l�9,���DM����!ꛏr)d�:Q�u�o[(Tk�<�9�
�\r��r
C�Nefe�h�B����m1$���=I�0��%o{��K��w�]c�9�]?�}1�h���\�
���I���0ߎ[� 4�)�
�bU�`��1��=����_�G#^��k�أ���M��`��#����0o�(�*��vi0�.��!?�vc��K�JD�08�Ɉ���)F�_g�rAxS�3�E�5d�����<U��c ��C[��:ƌ����b��j�v�w�T������rJ��u�}�e~fPZ�g�|��h&K�xa2�?��,�S�i�+%��LH��%�LO����d:Q�Bz�I%J3�X�'��R"�L�#\ >���C�2d��Q���(!��r���E��;�Im�)�Nt�v�d̶��T�An�>�_��߻9�:3�WhCn�̈Um�~
BV0�ڵ�@o	�̙ͫ�
��'�#�N�ǯ��N�Z�?G=���Maf+$B�n�Mr��9��������_���B�j�K�,�ed��xVA����r��/��m<���̃_�����W��%�w����s������sԽz�s�7W7iϓ�-ܽ�븷]����7�߷���"�\gԊ��EZ���sć�;l�a�[r��G�G)�<h�a��v'��pϫ�sY�5hI���4��R�~�l����IFI)J��BýT7x�Y,K���D��pGp��D�)Tn!�'�T5�B
D8�%�I��!7�SD�r�k�=6T���:L๯E5a5�X��L�D6����,gm�=.�/q$��fE�~��b����n��u��M�6�^����
���PVLE�s�ՓC�����d��kOiJs����9��Ž�ߏTԭP�(Ef���	Kx���Z�<=q ��^���HZ��������Jҟ�!��c�]�8f?X�9*4\�1�'j�f�9Z�r�`�"S���n)��n��.u�E�G��u��_�cr�p�YK���֭�
�����1�3�w�x��rd�$�^�_�Q�M��r���QǑ[�C�n�q��)�)�^cY�����(�gk����6��Yb�a����u��.��9��[��0��t�1��8Ǯ ���8
��#	P��٢��45ؖD�x�~����\���|>M~�0�eÉ����n�‹��%,�2��q��"/D���[�6n�`5������"���.���s��u��^���U�-望o��_cce;��٥��bM�k�$�pz�9���\����H�yۉΌ��Use���P�~iJ�!Ýj��i0�P�i"�ө�I��p�f�]&�/�
߂�x�xE낼_�OQ�Q�	�2$�q�ٴN>�u�Ȓ\����z�lh��f�~X'�OB8��]�Q�o~,a���E���fț˦�U�eR�R���+J���i�N��'H�����}����¹|:��u�FӁ_���$}�+m�������
BC�1�����6�%�WP�eK�ʌA�_��D2]{I.�W�,�z������D#yQ|���c:Q��G��z]*Y�i�5�^=(n��<~����ղ���v�ۮ��O9K)g�I-9)�c�_BN��Ԛ�.'/�jKU�kY���RN=�̂�l�B4:YN9g�����Yjw�{)�r�~�Y��{�[��0���z��ʍ�'�<�1f�e0�*]�4ճeU���z�VmrԺ*���c��Ʒc1�ly���~�u����Kj�_R���7��'�.w,�(�L��"�䉰'Q�(���3�2uV	F�I�v)��C٣�4��1����}H�P
nQ?%���T�`*�0,Ѵi�����;��Cy�iȂ bYo�'��K�pL
$�">R���ϵc���������=�ػ2�vN`��@��<�CGmN�T�܌����TM�=���Gn}.��K+�������Tc{���m����X|��X����h,�&�%�MP��ͫߜ�E5kM�wQU{i�1��_�ͼ�6d�H��%}��]0{��Α�E�i'1�	ӀWb*������B3\��4OX.?��h�+P���@~j��7pq��Aخ@M��Il��]�
�C�Ƞ�Ƈ4��?@���rѐ�䉦��,�qW\��$S�D�(���Q�s�'bȘJ_SJO�;#�+(�`dV��9j��6�W���9�v�A��k�F �g��oz���h���}v��H��@$�C�9>q|+�WU��S42��'����T�آ��si�%%��
5V�5^쟏|��_)3A˶e&�����˲o&q�4�;�_-
�=�w~��_{�̨���دFMC�v�@EӔ.$�im,��4������ΏX��.���ad�X4��(�z�>�����8+��6�n���)vUH���w�j��>�p�������.��N�'"�̧�`��;p��~���uՂ\������p!��
�O������^���VKѶ��}1T���t�\��/����1��-��z��l�H��R����Ry`��l��pQ�4�k��<�†,Q0��9("���hݱ�z���LY�5q��!e����[e�+��*����2�-W(���9jS��c�3��"��CRf���;<�%�ƜH�k<qbL��<��[;�ܪr��FUW.������u]
ϱK[���۷�B1t�[Ѩ����.Y���>F��{Y�2�"]n��c��H\U)�g��;rjo�Q~���p��,h��6�p�*>��s]��~�A�4�5Y�{�BY��;y^W�7��I��O�Ÿ�?����Lq��n��-ns�8��r���lS�B�nYC�\�4��hD=ք	`�f��;��(l��jL�K5�99V�[��-����{��{=�ߊx�Hh)���4*�J����a����<š,�.HI8�ٹ�38)�LV�<�L>Q�5i��hMun����C�h]�H�� 03� i��nCpb���y��K�N] 6�j�u�t#���2?�6�"�'�� -,8%�ܷ�Tԉ[�H�!�lJ��Tjo٫��%r
�AJ��eYY�_�l�Anj�F͒n�K����QA�D��u"�/����`>Y�H�a1/'ԉ�1�� p���f�iN'�Љ��S#ܫ<���f�M��㏇�$���#���$��!HDó(8,������?X/\�aB$H=[d�7+;�P���_[(IA����Q�V��
D�[�����L�@&52�Ĭ���<f-#�
�i�鐆eP`��E���gg����Y|I�#�ųᐝvž�
�	��E�M]�W�ۋ�J�
�Č녝�
g��=��?M���� �!'Y��RI�|�G-_bv�|`�l�4�d
�E�pc[>5���jl������gf�i��������=(.A�;�eH~����,\��w"v	��Y���D�oka���-!�};o���E�߂W|�m��yHb�#�b�]t+�Kd��?�4��s�p�H�v0';�����
���h�~
Q)S�Pڷ2�
0e
K�ܤ�=�挴ɔ��="]���'^��v�,5Ӕ��ԌDP�	��B*��Ԓ&w"jlf��'�X9w�4�x&�����s,����>�/��:!L�R�i�xm��]��N�9`���$ӊMd[I'�$h͹�P������PU�3�^�-"%jdҍ���f)Z���4Baݖ�&����n�\֝|����;6��<,� ��H�:f��o�\vl�ch���l��oI���]�IKƒ�� ��͢V"��&^��Z%�����X�Ki��B�q�6�Gz�bcJO���Q�I*5�D��p���I��
���f�i��o�S��]3�OO�y�]01�#�k�K�b��h�v���s��x9��#{�{���@;����da��Z�岆��v���X�l�~�9�^�c�i,��}4�
�ڼ�h
2Ì%�����:A&��衲�.�ө��R�O�./��_���,g�}�+�E�v�k���TX�֪A���R��9[Ag�Ұ�
ˬc�Y]��1�s���l��u�n��j
�>�9g/¾g��CP�"�F�I���#4�n�a�F`-P���Yi�!�E����U���w�Ծ)Y��w�e-�;�(f����֦� {a3�Y����̞�TSU�S�=��4��an��,�����ݺ@�#9;�M�Ձ����s�˸�L���你��k|��:�w�,�4�,��?-4�uX`���<�����y��H���@���B��!�dt��B)QqT�	�-I��ԄglN�.�5����Ϧ�"Z��Pm�P�8���ܬ��gB*�Hm�7g��D�C<t4�Ģx=��^	������ *CA�
)7�0uOer̓���%ȋn$c���@�ʡd5�!�!XV�Z�RTc�ƌ\Q�a���&�aY�C��۷Oc�ָ��>D��E.X���cDe��{7#	0� �z�*tq�v��G$Z�M=�kc����P����0�(&���Df�i\}p/�H1��;>����̑��x����"P�d�:2��՘)�!���O*���K
�#!M�d<�F��`�V�(�"�V\�M��?�
�VIs���K\3�c�X���NJQ�U:�,�ͷPǼ����m�e�HR,2��:x�Ln)98�-I�Y�|h��1I���S��$�P<eJB�2�>�
��|8ϗb�!��J�\�R���|x>1Lb�!�� ��8
I�,�
��	��"L�Ɯvj<�O��[���v���J"�NΝ�:�ה�m�ߵ���� ��e{^�}�e��sY��(y�K{ٞ������^��g��
DS��.fY�dhh;��,!�9�.,C��q�\���!M;��#7c�{("�`R��>u\]�����5������{�<�`�L�������g�h�,WFTyy�"X
��d�\���0t�,6��:�NjH������l������nC<�(���h�H6�!�0uТ>�>��?���>Zx����~��-Yמ���he����)=@�~9��ά���e��r���ͨB,�P��0y�$>�c�q�Gҩꍝ�����RR0m��،�$"����,@�wfʿ/���]k�PLձ�M�.��<���/���o�W"��1�����.ڲ��GS�s�Q\{ԏ_I�E�ې��E����B��ʸ����碩��&�r����9,�!>O!�s��?ט�q������[X��I�fq�|���F�wh1��j�#r�h��4 .���;q$�)L�S�$�{�sYS�D��D]ca^=~Ϟ�=��`�p���fW��	w��q��`��17�'�fRS����
�ٗx�2���LY�Z�N�4�'%��nF�'z�#M[*�_���v̖-L�e�c�%%�l٬R�WH"|՚��x�āR�ev�
�q��$���(K�`l^�p�w�B����[�`#����{���Q��R��~�_���‘b����D�g��g��J��m� nbe#�<,�5!�>l%�p�x$"��T=/��j�N�\%��<��X��Z�^�k���鉰�s���V/��&޴X�S��s��l����(N����}95�U���B&�$� 4��k2�V��Rc[��?w#�Z��4�8�ۮ�m��l}�T��c�M��÷�=�1|n��l���\�d�H:��=��|.p�c9{�v���^���@�ɇ>ɣ�D��6ya�^�0ڢ��]��
�D��>nI��݇�O�.�ᣊE�C-Q�>�Z/���N㔳\���s����7(5�k��t���
��P�mԨ��B�Q�75/rGG��:wD<��~s��f�+��Jǯ}�u�U�-~�l�]��)����E�a	�ڧN�f��˝�=�W#��Ϩ�[!�¸S�s�s�	�@�D���L@3C�Q�A84�m��TLQh,��E],��q����-i?������B% �U�_���4��[$|�[����Oݪ���-�*�X��<Ro�����R��?,q�P��1�\��p�V\�Ti�Q��x:#8m�R8C��B��f��d��Y��o:~>�!P�-����ţ���zA���<�����!�te{
�:Lm���
p/sZ��ӎ���ΎRo�d�0�kF��2��`��<I�fg%(��:�I�|j�GR�t����ϋ M��vd\�0fD�mbN�%�A�H<���;�* �L�����e��]���3l��t�X�.wɿ1���%�b%��7���*t.kRa�I	,e`"�V)�G�r��j�M�:�l��kڊ�@
�cCL<�(���E�H�3�*��x�%[���J�][tŹ�-��	��s���^��?F���G�q_�B7i�#��s�_�7$M�5��y+Xڢ�F����u[�՚n��Y�v
u�Y��`�g�`
f�2�	=C�b���/y�ө.��,U;�ơ��C
\wu�:+�+���pj)��żg���"9ʨU6�s��qW�!�M�Q�;��'��*��T~F����,�o��嗇�@/�_��
f2���Vѥ��oI$��x	AG%થD�lDRIt?����@Q(�W~�0f]��إ�+$����]8QZ�S�!4W��G��|��9
){54�c"�`�.�9ɉ^F~�~ڃ�>WW70�O-�d������.��gA��F���í��8��%@���߹�M��Y� ��p����B:-`Y^����`krR�@���:c�����D�.g���������4#f�*^)���I�W\a(�bt:tuE�VW����*7E3B�և��(�9�
ʌ}�U;�B�@��îUP�׈V� s���s�2���v�F#��.���m�kXsr��Ŀ���eǰH�M�w:���).w#��u�ƕ3c�bf�D����'pa��s6��hWDP"W����z�^�W�aɱ�	��BU�������j��ϟ���i(�<9�2�z#�q��^��U�	��0��F=�ET��	�i��B�+AXi�����L�䞩v�)Щ&�
;/
"�y<\�5N���G�6���]��Ln�S�̪X��v�]��+X�--�D�Ҋ��?��%��pSLû>l�Ò�C����쀼���9$���]�b��ǯ1_��|˴�x�
EB�!�R�d�XJ0�S�-M��U鰡������؄� �F��:�!���k�Ŵ����Yrȉ�;{x�kx����j�ل_܋%��Fp�i�ę��d1W�3�"�C1�m��?`��ʭ�vT����<����(���9J�w�6�Q��*w�y��@��r����{��;%E�q��y�
/Bp�Z�<O����ci�|��o��Oy����xP��EQ�5�@�o�]����/<�x��7�"�
�'yI\�毉���s��w�cLs�Ds����{�H��4ܴ��?�SQ�@6��(g���gd�O,��,��W���[\��$�i�y����$��*��)3}]��,�ML�i~�߄+	���^��ET�ϧ�0�8%֫,��H	X�t��EΦI�
�Z;�_�}�Ҕ�l�\�=��rB�MŤ��~���T�McPI''*�t��!�a��%��� �rs��Ir
D�I�d۶�(��'�C��7}	x$[���!��eW��-��}� J�b��R���$�	S05GZÜ�&�����pѾEk{a���\��1!}}���9Q5nRT%m�/�����8���Ӽ>C�h�B4=)	�"R�Omd��ȅD��;6�r����A:�E�Ր"�l_�{v!�k^��k��୍��J,}*�N����
���}{�(*��#�憾ჼb��o����ƽ�{�a���(���	|�F:����'��C�'�6�I�gn�e�*Th�V������z,��)PV��f�������x���L�
%K�bI�(ӥ���ߑ4EV�c$;�$4�3x Ix���*��x�"N^��5VU]%����e����Yd��E�)(�gxަi�A��I��@��AR�����h�bT���M�0��jH�Mh�
��C�k�$D���E����gm��mY	�~�����ńo?��F�����_����7�hI|�X+S��Ţ�i��S�=�b*��Q�٦S>�L������ˣ4%��eyڎ��鲬K$�YQ2�"^[֫Q�tT��qr
p��k�4Q>���}���#\1V|P�#�$U�\��㙧�
{h�m4<��Ns� ���ڈO�F$�$y�H��قN�����=h��
u,e��68�66l�.���%��DI���Q��D$�`�(�x%#�/g�!�?0�AG`^Y�T(=UM��D�yX��y\��
/��̋J5�ˤ��R�WO�`��x�O�6��#�$Zh(���B��(��J���U��(��S�6��愦M�z�w"*����,k��G��`"l+Z]�k�T���ز�y�U��.WOsE3�_���2oZꃎ��E<�h�V�#z�k��NK�ε3o��WR���?����]��>�D��Iw����)]��YQ����k,&���V0%��{�{=�VLE��=�!�y�<n��e~��j���~�m����#�R�1
qT,n��|E<���#���Lp���[/ďBAq��!�>�Q�6[�#[ͭ[�}�J���c{�$(�$`8�s�1�v��`BU+�f
K���&{_h�[��� ]���p�����.0�'�6�Rb���g�u����';"<q��v��n/��,�{��-G������nv�aeiލOS�r1�Cc)�o��U�h%��9CS ��ϴ�]Q��2a����]��eHg9�ߏ�cBXEðy
u!qy[!�;�C~�P��?C�I$��
�tUF�ԼE3���i
ݘ�˼�H�(�>;~�h+��P
Q�Í�g��}�9��N���u~3Vc)T$->T0�������$;�h5�ze��Z���:��{LZ^��_g8�����_F����,��L��c6r)��i!��eP�<�G�1���e���hH@�c�"���; �h�]7�E����(�E�"/�B���_f���Z=�|P��h#�\�^��+=ِ��n[r%/��}���7#Y��&x	%(΃\� 
��ف�'�>��u�#ݫA_��&�ޔ�a�b@�ٲ]"�{�; <�����J���[�t-���ִo�*fn���[u�g�	���o|�{��>���յ/��i�[�z�<y�3���H�� ��B%P�������sHw�JL���F�m���
�Vn�?F��)�+���r/�ґ䜙�'��r�y6�'pQ�
��]�F��SX?�n*G��_=�K�I�
�L���@y��lE7��a	�+�2�]�̮r\��r��
��GN�%G`vT��u��i�S�˝3K����c��n�������5m���g�����8Ϯ9
�Y5�&n-w�Ɋ��a�W`-:��rw�'� �t����z��p�mR7Ln�	��(5�!�-�1E��3ĵ��Ϗm�F�����I@�j�^��֖?���(�Uu�L�����(���~�	P]G���NeL7iO��An
z���˅Y���L�z���I2=/��.Y_&NǸ3]�P����yW(삸cl���
Ť+0o%i�����+����]��R��r�_Z9%�ZJ!N��B�=�GIt�7i0��/,�|�漄e�r���ǿ�8XZ]�.���Z��[�ܺ��@瞧7.;�p�N{&g������c��UʣEH��c�#
��J)h%��M�\:=PC4ª�LoX�.�i�/��*�+I��)�ę6��NS�2(*I�.$����R�Ыj��Ji��I7���dFR�yz���8\Tҡ[=^�'猚wRԴ,Dr:�i^�9�c�F��A{�K^	^!�5��s&���K�Dri?��K�N�B��.���2D¢�#Ѳ(UR`%�u�9LTj��j��|�Ʃ�Y��4@h��i��4�h��nC.V�1(
�`H�G��"|�[/�yG�|����,�5����
���C��y�q��$����my�$�o��PH}�:���
0�1a�(X�O�5������v0���d5����r�J�s΀Mʰ��
��
���-M��$N�SrT�DD���)̥y�v
��B>�rX,`�/Tʕw&�uhA�G]��oV�T�3;$J^���W��+hY�1SWL�P����}*j*�i(s;�*�B�b2�x��c��6���pX�7�C|u��!'Zk!$I��%|�U�c*�b�AV�q�i��cG�L=@�(���>�<bFEe�}ȝ��
��wѽK�5?r�M�w=,B�ZJB�_�|�c��pN�X�] ��S"Do�X�q��`7�d2Ks��YCD<���]~��.90��n���l<��R�c��~di�˜�d��oVVWVVϲ��c����2%�c��gb�ts-D�Dcl��r����r�����r���f���Ȍ�Jn�eը"�{�����C���K,�b�XB�dC�ʴb�L	�(!ރp�b���/f�έi1$y�l�_I�o}��+���۩���a(
���b������&S��֊P��jثP�_Y^b�S{&��Ž%�U���ͪPh{l6H4B�e$j:�/SBe�>�N4�D"�^�V׽l1ֺ� �S���i��[��I��1yw�&��Ln�$**������"q�)��|	�X��1��܋i�r�H{�Mz��̲e
q�{x^L0��d3Ƭ�`�Poh<����U'+'�mFB�:�1���`�`�s�	�H�v�#,�����k�;����2��c>�=�p�ANZ����e| ���1h��pIN��%"s�|�_���Vn�*4!��Y]D~��yW+���:��<�|$�YL�ў�D*۶�[{
4��:`
��WE3I��>-�6S��=�G���C��{��*[dXM�.�o�kP��Ȇ��<���|� y�~*����U�M�
�A]���B�'��s��<�<\8D�H��>t�C�Z>T8�������u%Kjx���L�����4�¸P�{H�.��|��@����q�cǍ�
#�ȑ�m�s��'�
�����%Y��붌+�Q�+��S��J$َ
��vJ)~��m��Rn���<�&�
���f��z�RGW#��bt��9USk��dj&G�A��.㚘G;�]ǽ|���Dxi��	m�2���7ȎB
��c�5*��
p:U��]�r3�D�:�����7%Q��'�0�rҚ�o3��♫�i�EIES.	�K^��?Jө��L.5-�&�T�R�b�Ԍ:�l[�ʇ���ޏ�fW��
���u}f���Q�0tݷ�H�0P��X�h�k�|��y��y���ؤ����##s�H*���(S|::���1�ț���>�J�g�w��Vy�V�g�k�̖��.]��p#w���m���-�u���m-<G��\�y̙�@�E��u�%<�E�7{�Q�*ƒ>�ȑ<�?�͢�r��g�����(�<c�?S��`L�_/ d��]��e1��,��X8����M^Oޘ�#�m���������K
���b<���cN2^V�?}��O�>ҿ>��1�y#�Q��5X��*(�ݑ�G�hs�$�Dh���a?p�wYw����f�e'��H��
H�$���*�F�QB�vH�����&������D����<�'�%J��
��{Q�/��1g�O�����S,�����Iۺ	�����1<:Z̆x(D�y�D^UyQ�Q�/,"��uq,7)�%4�<>��^��	�i��Ї��ژ���6w�Mk�鰦\�x��j�qJ�4�P=7�#$A#��kzg��Þ=�k���ԑ-%�I����i����4s���m'�sf���B#�c��ce��Y:��	����ň��ۇ�zŠ����ށ����̾A�qűaT	;�p�_z��PUc+]�2�sX��Mc������,�@Y�9��Y>h�� 'hd�\LeC��Z��ݳK�{�.��ė�Ha��M&�p���%x�&�oߋ��z���`��	V6T(�XԫԻ�1.8��a|�B�����x�r~��g�
���?��&s���i`�h7̇z��f��X�Bi���1�u��昑	�$�4I�^&��\C٨sk�q
��3�Q�v	�sH>GL��e6#GwU<v���2��񲳅�d{�� ������{�i8k�.�L���Qt���|���3ځ�QrUO�1�r,r0��x
�{�I���e����L.-�� �{{��`�s3S�'8�
$8�����
�A��
�J�@gz���=�A~&���V8^"�����\���R�5�ey$p���O��������������n}��s��Giaqv�qZ���$�t=���(%RgN��f<v-?v��^��w����8,�+;���+�9�ŜA�c�қ[�����K���w�b�Gr��,3<�(L@��DA#�^Du�C��7���I���|���/,��x1a	�\	@1!���w<��f!3��	��%O�?\��x��4�Ę �D�x7!��a�p_d=�n�B]g�S+�	�[	|+F�vo�3u�;o�+��gi�շ�9O���W��Ql&u��-�9y,m?~|����սv4N�k��N��FPlˣ�hq�Ƿl����-f�C��@�$o��FP��/�1TB�x:���]�?��D�����zY|�,��//�d1%�.�6^�4~r�&;@	���y�ى��?:��F׈����K�)�b�_�����;�م�}:������2WP_�s&j��0������v�YjY�z�
���^��c��_#t��^'�1Y�~BF� &�[a�1�]@cj�$�������|zB�̸x���q�xV�
���By�P
��1�N�$y\�%��sPV�Tq��)�W�F�sQ-��N�T��&�%�X�?�h(�;ы��H�+@�^�/���?�(J[�x=���v`�4`/"+0-�o�f�ށ��EuR(Rh�t�4̄��ղ�bJ��p����v�_S���
IM���H感Y���d͉ʍ�	d�������Se��%����V��Z��3*�%�j2�e2Z8�f���J$Rʘ.�s�\|�ϑ��
3O���~茄	2q5��l�+��+/r�)=�U��=���'��D��Ƿ�^9�B_Xx��r^��1ߘ�8�$"�n(���Rr
vv��Yz=��r���/��W���n��"�=$
��,�@%H���&@�6����2�a�Bh�]ڝk��]�i�(.��t�ܢ\��edcIW���(n�WKӂ��&l¿��!]ӄ�}G�t�M-�ŧB.B;Z1׍�vB	M�疧B���V4�N���~��	5���[R�X8��'K3��g2��#	3K	�ew@$YJ<q�Ƹ"b�Fφb�PV�EI��x*���;�&L%v�J�v����[�w)��n:�%O��נ~�TI�rP��H;�+l�v�6��㯫cT�#���}���Z|���z
�/�tTTt�UlS:�o��v��yr#Ώ��9��f2o�o���U�0q@ۮ�T���êS��j��s�m{��0J#��M0��ݑ1�~��&��׈����~ȯ]��Pw��{�\DO�o������<O6Đ���Ņ�i��	,%�L��I��Q�V�����Pr31O�(�/�+�di$�6C�;��	�5>��_�m5��n�!RlEN�x�CHK��kG~]�"��~8�#��̇�﨩lQ�"v���>���h��8�+�,1,��ZY�l����C�b��/aW���f�P�eZx��G�����!��,��x\8�%z��E��+��`����ʭ[5M�f�mQ{
ѐt��8����h�TN΋�
ލ5,�n��gE�(*@s��i��c��TY�˹S��^?s1� \��Xz)�b���Ƚ����e��Fr+��^�}N}��W� 
�P���J�Y���4������?/��E�bA��t������x���y߷��U���ѱߐ��/:��kT�'I/!|�K$iU�
�nHO
/}���Dv�;�u�2\O>9QL��O�ᦸ.����3`h�%��s��eȡ��i��*#�5P�S���i-s�dH1I�)��օKj��$)��7e����X���J9�z��m|l�Ҫ3�N/�Bn�Aix�`�e��2�s�_�>*�ԃ�H���M)�E�!�Y*ޑy��C|���M�J���7��YQQ�)>M>�c��<sGv���yNٞ�,�=�O���S٬�#��xk*NQ?���N.�9�]4��h�
�F��4C]f��l��t����;�l��ޢ4&�`Q�'���Yj�j́�L�v����A7��G�� ��W/�?��_Y���4�
���W3�MA��^���b��ԝ�2&�q�����lh�{�Tn9���/�]�k�X���ޕ@h昔�:�Y�i�t5�|�h���o��/�Zs����x��]�����^�oP=ޯ��9�,�w��~u��P��RĽѻ��M{�3�`"��g�Oa
�B��N	A\k`%	�_��7'��� v��a$�|�P�T󠊙�y��и.uՑx=
Qy�N�ʄ��j8ֈ�n-@�\��m�r�lU�i3�uE�����HS�K�B8��?,�y�a�����&��8�7���d����?��s�>d�\�#%]ON<8�ԌzH�dA�5%T�9�q̿��ea���A��*�%'ns�u��`{�#��� ���}���W�Au��ڮ*�+^Ȁ��>$���UJ�w��=�h><鹥�g���q�/~a�x���=��@�6P�<�����	�jY:Tn���>��b�.���Փ�[�(p�U��Z�B�n2ny����^�AX0ŕr~\9|G(F�?���{�oʀ�`�3��f2Qp��u������}��ס��ux��M?ԉR��`�c*��o��A%\=������*�����=�����)�c�:�Fh������@b�""<_Ō�� OU^Ȭ3��J"BbV"&$�"+]Q�"r��g�
���4O�Y�Ù��Y]��l�r]<VԸc�{�HB�0!�<0x�ʮ�bH�ɒ�
I�$�"I���*YH���91��*������)��47�Q�k*�x�˘�d�f������paT^U����$V���8h7ba^Ά��M�S�x;V����\�#��a�RM�?H�qjR!d���d�b
���?�?��I��(��Q0]�b�p�1�-�Q��m7rH�%��I����I�E�v>ŨY��cw�"pL�,�y������?Ĥ:���xܼ��R�7�i��J��]�E1�U����B��rj�l}9_�!^Uzy��$��//	�<�=��ޖ@���$�1e�T���@27@���B�!Q�+��q�M�J<����L�Q˕|�U)7�� �6.��i����*+�� c6K������5�?��:/[��d�s��6^+�55`��k��[h�8vUrQf���
d	��G������搎�DW��ȀQy��f�iLJ�@OwE�u�$,B�2�J�J���
�4�`Q�T�|'"IG'\<v�7�dzj�Ȭ)F�Rk^45�E�E!��OȎ�=ñJ��/��Y��iQ����PU1�F6&�.I�2��Ҏqt׍W/�E������R���Ҹ�5.�7����,(�Œ�x�`���|�,��xqRt,�r�����;?�/~�O�F��������V1��^�R��:ס��)�"
��t�E�|�Y��H����g{��
+@����k�}y9
Wv=�[L���w�^v.�m���\�b�p~��YO�va�joώwů_����5m:�R�B�w�[��e�w:��e�t�GXv��"~��4�z��*�����D���-U)|����ٽ�#	gG����7ݓ�ݒ�n���>BN�=�sʕ�?�S�7��b̢!1���#�]�@Ea��+�b���S�թ�U;�CY!z�bNaif��L�պ-�|'.4k��J����!x+��\���m5_	�
]*A�u���
D	�㝌�p�|T0�tKTЧ�
l?܆�p��"�A�.��Z����צ�=(���R���A�a�ӳt�*�,gE������}
�/%��c�|�]ys���+,Ć>�<��q:�I!�n�߳��$~�<~�=��0$L����y��;����T��Vp�@^�\D$A��QZ�h�W�hqs{��d2wҳ��Łx}@w��������y��C�G��י�qA��F�-|������Z��%��6U�_��h'���0��a'F w�%��Ɯht��T���n�F�y��'<���C�3�Y>�Q�3�3��I��_��X����,s���+��P׮�o�i����n	s�fl��߀g�%5�!��	���о�ߓ���zTQnP`(Ku5�Ψj�����]�]��M7(�Q�<Q��l��6䱸��W�C
	~X9��M����̤Z_R�]���|y�_�x�#9K|�%���gp�4�*������Y<�#u���Bm=s�����I�:&�0�S�J5���z�ڑ�o{UH�Ĭs㙭���%�������2�g�O=�+���in_5�[���\��z��6Akk?�%h��x������V��{�t{���_�4�f�onϓM����?�z�^���Oc��mh�u%�k6,ܕ�k=v��UO�J]�]�x�g��ȃ�uIE�G��X� �e��w~2�ڊrUn�;2�g�sA~�2�ϵ�m�r[��ӦLy�+�c�_���2�0%p��t������Ѭ�{u_�+; J_���N�Կ�G���a�Ov��#��S����7Ti�{5_�+~\���N\�+|¬s��^C#u���d}:W$�m�e{��Rbv+<��A��	XÕ^��>Mc������
��Z���%7�P����i�/�Q5u�L�E�w�E�
Zd�U�:
��ӷ�e�q�AV��L��/��
�[��3ͪ^0�د���"�)��d��׈�XT�)���hX̭]�n5�"1z� ��}�^n��!dTW@��y��!�A?k��p,
�L��IלL����M�xYP�,�l�p�~�^ljV�p>�S���/�r$ mGH��o�~SMO�d���0��1<����?���v�m��~w���G�x<��DRzX�ŧ,Kfh9v,/Q�B�6/nV��p��Y��ɜ���^���+�m]�ШiӤ�y��.X�
C�m�̀��9�;>D��b���w�����}~>^���?&���[s2�89��l5�,DC�1�1�%���S#�Y�K-B��]��`b���~A��/cT�������O�nƲ�u]����㕓Vv(G��~E�D��j�'p�\�R6����Z�P(){H���1%4�=�ů���7�l���\�49Ӣ|{h�x�[x$���qa���[�}|(�P��M��в��\���'��1�g�@O���*awi:���C��X�ڢ�L�}��o�� jw�z�$��y�ƚ%"��ꩃL���`A��$�$="�(C�he�Nk57J�����!�r��u�ө/�^Գh�S����!	rt@��0Vx�P^�ҏ��k�u��w
��Ӻ0Er	>��dΨC� j?P�MA�Pb���L)pH�i۶�0��8��qs�X$���˜DZ�#̓�3�W��p$�=�D��t{?T��e;�)L��V��7�l��Rۈ���QG�
m�Ol��k�#���B��S����S!-���%l��T!���i��r-�a�:�4�� �c���8W�h�h^P�*�<�F�M�=�J��ɀ�V���89�������l>Su�)�3�ɝ�%�j�.K�'�aƅT�9Y]�)ǘ̙v��VKhu�c�#1�]��ԯI=ǾL��3(�<K����@�05��PSט�Fz�,���I�.XˠcG-�U���X��FR��%w�v��aXXJU����H������_F����P��j�hJ
�s	N�A�fPY�dM����W*f�>T*�W��j
�T��/�em�HESMm��<�q����X
�:�Y�������f���Õ\	$�����>��Ng�҆��T��Ty�����_
3�c{�XL�;<c^j{͢�Wv�j%<��!xɀ�Tg��ѱ��U-��"Vu4N����zA�nXˑ�<��*JٗP�%��B��:.K�z�ޑ9�_Y\�+��#qET�4��s�K��a�����3�zs�"+��������Ee?����!�HL$/������Cp�\�]�|����=M�̛�5�L�b�gYWO�F�r���5<P�8`�]�U9V��`�	�f��<�Ò׫���
��kơ9UPA���@Ef����1�~l��^)��+�X�w�/��cv|�7j��w�b>�T��S�<q�ҥ����V�ޜ��>'j��=.��B!�L1#Rk^[�xq��f��ܑ!'��y���T��$�
��Q�F��8�������ə�)#���|�(�29�=q$fv�{Od�ު���B8��"�	��z��-�>� g�!��dM#d|��pn�}x K��M�<~'�z�ٱ%�ipN�+:��ԉ�ْ��*�P��I�bK���8I����x2�A�$���},��_�_I����n�����h��,L"�����H�bHb
�מT�R,���۟����KRWI�*X�O{Gd\(��`&1~�� C����.�d潧j���pM(�j�2c��2�
�`��U�
�M(��{P��a�G��c�E�!�2�]��
����hB+��m~w��]�s{�u�ADGP%�<�A��i����w�q�l׃y��C���m�B���zI�u��t�x��?��_@h!���n;k�?MdzӃ�qv[U�-��X���N� :��o|�8x����A|�|��l�4��g׾�r����i+ 
+��`�G�u�<"����Oad!�Bn�Pu y{��k��9�ۗ2��1a��sT0���;���#�Ș!�r)1���f9��L����r��Q@pG�i�+�˶��O=𡙕Օ�~�J�W���hZ�Z7M�f2nF"��� ���i�r݋Y�b�t2Tc��l�^�eeq0�O}橄�-�r�vǜ���v�������L�1-Q��12���&QY7P[��'6��Ad�	�.w2�Y��
�
�6SߟJ%s0�'4IT <0��OUM5�Q}���Hҧ�+�������q0��$%�YM����369qF�͐̇j�����6�z�<F� c�F���W�ϝ��8q#'?��{D�Ȟ&�wi����̣�S�'f�ՖPO���
4(G��myX�ݱ���ag�����9X[\�J$��0� ��)����7�8��a���f��P�7b�‚�X�<�"1�4���`�D��w���d������K��d�[��	?�8�`� Y�
FC5�6f	�_�� ?Y��S��7�T�6�ԛ*�&�F�8�
�aڲW�#��(hF�A�J�>���}��O*�,���X�nDѽ�S#�^�P�A�rI+�΍>��R1��,���F�ǯ�UԆL��9�n	Q�\
I��IbSNyp��a�ǧsJ�ꁈK�ܑ#s�d��w���K�,=cXV�bmW50Y��2A7��Ck�W�t��M�j@�f���P���稣apG�Ӱ6��
�k�Y��p�h�~[D��~F1�:~^����j��~mNx�c�1�4B+odwj��}��{�$H�*M�Y��48�Z]��Wi�_�D�]�u��)���Q2S�<���ja�B̥�$��B!~(���d���|ꀕJY�]c�)�|qF�ܻ4���a��0�O�*7��>��Je�{B���b02{爥N�hG�i�U/G�#4݆1�����Y�^[贗^�;N��ܷ@Sg���:�~��,�
>�(�v���F{�9������*�G�W.�@�:{�zϒ�W)peׯ!�.���Kq���is��Q�Ѱ&V{�X�*�e�L7�ˈ�%e��$C��?���yY��Q�_4b��K&�M�8���q�T��k�D���%A�6�n��`�^C��k��N~7�S�d��V�c@&֌p�:Z��d�]��������R�D�#K�_�w�|�_,��E~�1�b�DGF��;�/��F�$�'����Kg�ȇ8Y"@�I��6T9I�\;d�cD3��pr��}A7��~���k+i��?�M�r�i����b���JL{{����DCt��0MlWfX/�����q��8�WVdU���I��TH��i�k�?ٱ�/53����/��MI����$S��P�~�:m�.ףA���{>�61�RQ����Vۊ=h�Z�$��1ܞ���ҝ-\��M��ml���?a^g���!�S���L��./������h�7��z�m��{��[�x������}��ح>kט�n������W���.���}���^�~��;g�_�;��n�o�o�o�~7p���g6��b�k���
��קS���j��7Yozf��Ψ��鷺�m�w�M���t�c�x�I2�����8�b	@1�":�xۓ��$�H��wJ*P��=ۋT~�oq��^u���a�`B�氏9��,14��o
�9��;sD��(XB/V�Qq$
,-��Hp�Ν4٨Y6|>�lFY�$ᅩQ��gQ4��t�����0��$���F	�r@��H�Ζ3�AIZq���ީ�B8
E1`(�9����h���W��-�*�P��DxF�`4YC���8[}���QC,��p,*�JsMi�7��=��ŀ��A�7���X. Xyg���%�G��>d����G���CE���N�u��n;��<
���԰l�RfI513W;)���|;lj0���B0�Xp���y��b�6`}�0���R�w��s��TW�o~�8�gJL�Yf�A��L�h�b��
���;�Ş�E�sH~1i.wk���aM�I��ӫm�Wh}g��d�� E���6&��E�t��$b�8��4�o7���n<Y�DC�Q���[r�-f�{������M���wˠ,paT���Yyu� ����=�K�qt8�r���θRj�\���c2e�?$}��<� �`�U��u�Y��k�JS�²�e��ܚ"I�H�_�$��?��V�kN�����{y^@]��)%Ͱ؄�)�������+����[�	F�Q4M�E�]U���g�N��EMo<�~��6�o�V��n��/�o��$��ꎳGH)��QĞ�^k^��x�o-x�-�^�l��0�[�������1"v�L�~�2f�ք�-���ʸ��]�
��UR_�o�ao�RN��$:����IW+UB��k��#x=��އ^}%�0>)h�j�<:��F�P75�zW	y.��W�o(�sJq����:�?�
ݯ�[lQV��T�٤�JYϴY��c�RV�O��m�����m�G����n4*2�v��Hh�6� �3	�kZt��-{��M^(�#�s)9���L���n��w��C�=��EъYsS�;��Z��6����׉H<��p�J�\r��?�o��o~�eEYUe�e�y~Ϸ�eW!\A�m�^�Љf�h\��q#�ҸLj��(W�8�cks]R�K��i�����ѕ��A�4@�`q�:&Z�ȑ����ɝ�d�*9��_�b4�+�#9��82����a��%����o��ͅ=���/����?�x���^NA�v=X���j����e��_U���e$4
/�'&ʋ�HeIMF
#��x��#��y=�8fE��P�)p��֪�)��e"�I3�-h���"~?ԏ�(����?N�J���:�x�uA������N�f�A.99����p<~x���L�c`��Q��df1L;ᷛS��7��kkt�l�Ǐ�?\O�E#���I����p㘣M\�l�w�����QAw�`��+���#�)l5Kق��DZ�n86+��܁�h\˓׷_a���n�M���m�"��e�^�-גĨ�l�?JY+mވub�~���>L=a�$&���b��G�������].�x�c`d``�n}�Z�S;���+7�)������TƳ@.P���x�c`d``<�S�7@r*P0��Svx��WKn�0���Y�@6:
��e���t�S�=�/P�(�6�r���P���7�G��w��1�K����rk�=,8�(��vc.�������$������Q�#}_���7����S���u�|����k��E���d�{�u����/�KA�m�a.oh�
��&��t<T��'ݓ�]b���w�b>��:H_�O������<e?_��<�I�܂�#yN��|�T��u-.���y�s�vSf���;�Pk5Fª�Ts���2�]
���f��ޡ	�K>��g�CD�V�ʒ�I��C�
e�%���8�D�\l�b���x%�	� 5_��k�s�{�B�@���<HnP�W9�
��l90���ڤ��*k�'lo�p���)p��.�Z#�öwr}5A�ǁ?��g��}����[�<N���p͚���`��d�(�Q�t�B�l~Ṑ�[�G���Ml���ΔK�7��ަ��:弴���"'��O�7���_���u�4Vyߠ��E��ڿS;	����+���s5��pZ�	X�Q>Ȼ�q�{�V��}���Vz�������vd���s�[?�N2p͝k���E냤��t
����;�����9�;PZ��G~��wަ��Xcsq$���o�=dv��y�.��k夿ϑ}����s�<��.���
w�+~v�?��<(ϋ��u�99nx�!��S�����.�U~ɼ�%�'��2�NW��pg��Ⱦ�I�c�{�������/�O_�z޸S?���q�w���w�sg��Bc}���B�����y�]�����/#1K=�s;�$�G�g��T|�òFu��2qo��ϓ�G�_�{�I	=��\ݤ7��I򖘯m��W�~q�w{�{*緝�����ZS���ȇ�W0�L<���g�A�R��>B6���
WW��j�;�8~��� �������1��͑�J��a�&x�e�y�W�𵷨!��+
�G�:�h8̓t��F�N�N��Is*�A�hN��BB�.��K)M(�����,{��^�]�u~����omD2;��r��yy�F��qɌ�|�".͉�,;����D\�*���X�� �)$�_�$�`���&F\�&�煊�=7.��	��p
O�����q��3�h)�gѽ�2���"J���\DIQ*Kl�(���2j��UNm���/6�.q�����3�~U�	�U�VD�<�Jc�]�h�v<�:���T��5���"�Ŀ&n5���6>���Kܽ=���:�����דS�dD}u��6~��Y#�o�����4ĿQ.�o#��k‡�ͅ�fΛ
<kNOs�-�k�CK޷4�{*	�j�S+�U�N�qף�Y�ѣ-�ښK[\�j�]{޷W�VG���>��x�ٵ��]��"�<����v�{7}��vw�{�֓ƞ���eo���\��g���C�"����]я�~��5���ˁ�͖3� ^��#�(>�a=����v(>C���.����Ûa·���a<�n��7�>
�u���r�o$���y�ǣ6E�."���X:Ʃ�I�<)o���:�	f6��$X�^L����vf
�Sh���Tڧ�2�|������t����L�O�|�E�,~�����ط9�υ3�.̣w����>�����P�BZ����99�q\�~��%t?��i����A�y�9/�e��Zf��Yg9�+�X�f�Y%V��\��}���8���z6��Ȼ��^���4�,�>y�M]�l��f��ʫWa��~mq�����yM��8n��o����I��<|��m�m�w�kn���=������O�N�;����C�>��_?r������>��S�w�[��h���i�c���»/�~)�K׽���+�쓳��~{���p8�����7���A��-�/^�����aڏ�;��t|��Q�G�����(�'�?�u��'�8a^'�ٞ�³�t��wʻSfw�ק�:��s<co�:���_���oz�nW�����r�O��	��y�D!1.���8I:8�2ŦHr�"�0;�����vͽ$�<YB}�C��m#�]\X�����svi%���\.���c�\�'��]��5��I�"bw$��>�X�
�¥������p_�-#��T�߭ŌH��Rtg$�h*�Z�V$%򈵑ܞ!ԕĿ$m�ԗ���H��)Cw�exPVϲ#"�J��Sާ�<���T�%�W��"��j*ɯDse�*o��
>Uh��'�;�̀��ê���ەT�I�bT$�r3OFR��<���P[�_$�`�¥6mw�x��:���ף���,��k@�oS�׆�5��q�H��W�M�h�ڌ�ͼo���ڂ�-]�ѷ/��^\[����j���v��ק�t0��u�N���d�x��μ�BS}���j��ws}�yw��]=�¹����*�=��v�/���������$gG��o���:�#�?j~���1چ�b�C�
uͱ[�h�mI|W��A�oI2��#ጂ;jY$���:�1j��˷q0��{<.�q�`�1Q�D�'y�k���g�H��
I�y��H|?���Lw6]�����LyO�1�,����3�f�ݘ��\>�u>���|Z���Y5��~$��~$��^d���c�}X̣%�/q]
k�w�pY.o9>+r"Yi~+ծ�����q�"��:_g���^�
|ۀ�F�6��K="y�^�k�w�`o��Y����&$[`l����٣��o��V�o��7a��6y���m޿
���.��y�w�i��o;q����~����c�O�~j�w��o������|�����_����g&�F�_�����k^|
�>~�� n�;�<��ɷ8��;��ه����9}�w����?��#N?��Ww���?��3�~1��x���䟆sZ�34�Us����oz���93>��>�g�H#O���H�ΧL�4W�H/, �Gz��Hs�D�'Cx�+'��H/�w��H/m�er.�s��H��U�ŮH���ju����m��]�H��s���*	�7n��&97ϋ�pv�����O�E���h�H�Չ�N%Ԗ�_:S,��L)�,>����{���"���T����*���H3�e�Z�j���eҙ����H��g#�y,�Z"��&һB��n���_�Y}5Y�f͎�!�F��7��Tn3X�<7׿�[��R�=��m����5^��k�]<��܎����������I~y�+?��� /�{�c\�=ͣ�^��ۛ�>�"}�_���/����^�>Pm6���#��`�y��!4Yi]9�r`
��0��;�_��NG�}�|G�i$�':E:
�х�c�#g��H�6�~��zL�7QL���E:E�)�O�}������N�����f�?��3��Yvo6��q|�gs���~���|~=[N8[ �/��"gK��<n/�n�^K�\�����0��W:[��ꅑ��f�֌���u��vu��H7���x�c`d``~�Š�L@��`>'5�x����n�@����?4(��Y�Gj%�+�U���
�u��g,{����,X���`���`�p�\��
�ؒ盹���;3��װ�|��H�B
o�m��A؁�O�j��2��'�
T�p�\xO�o�[�uv��Qv<�ԜXx�9���Jw��â��-��Jئ�;a��Y����X����Px�w�
��›p��[��?��Qq�;�9τ�Pwn����h$�F���pך��q�جX9�!2�c�8��u]L�j�Zj�gF/�Lnj���_H��|v�)M�厀�� 
Cu��Cw�d�ی��_����v}�[w�.�}��W��s~SΣ"�_8ޖޢ��u����+��0�"=�e��V
��ŷ�,^����T~��W�KѠ����מ7�"E�F��b<,2��
�s�K�v��I�ᰑ�XgF%:����Fz��Ш`6VF��ed��_JC����{.�+���}�tc���霳�`ٕ;���ߎr=��K���~��wx�mZ�������ᙅ�3�p��q��8�̬�zF��Zڹ�p�$������0338�̌��n������[MUKj���^��֚\���p턵��~��X�B
J�D[tDW�D_�P�ĺ��bK���q�8V'�'��I�"��b�����dq��������������������ĕ�Uĩ��4q5quq
q�����������������8C�P�)n$n,n"n*n&n.n!n)n%n-n#n+n'n/� �(�$�,�"�*�&�.�!�)�%�-�#�+�'�/ |1��1���A1�HE&rQ�C�FT��b����۵�8,�x�x�x�x�x�x�x�x�x�8K<J<Z<F�-+���������œ����)��i�����Y���9��y����E���%��e�����U���5��u��
��M���-��m�����N�.�n��^�>�~��A�!�a��Q�1�q�	�I�)�i��Y�9�y��E�%�e��U�5�u�
�Mq��������������������������������������������������������/��o�����_���?⿒�@J�J�d[vdW�d_�P��ܐ�rK��y�<V'��'��I�"��b�����dy����������������������U���4y5yuy
y�����������������<C�P�)o$o,o"o*o&o.o!o)o%o�v���������������������������ڹk��{�{�{�����H_�e C��DNe$cyP�d"S��\�,����嶜��r!����ˇȇʇɇ�G�Gʳ���c����y�<O>N>^>A>Q>I�/�,�"��v��9�i�����Y���9��y����E���%k]�R�2�r�
�J�*�j��Z�:�z��F�&�f��V�6�vy�|�|�|�|�|�|�|�|������������������������������������������������������P~K~[~G~W~O~_�@�P�H�X�D�T�L�\�B�R�J�Z�F�V�N�^�A�Q�I�Y�E�U�M�]�C�S�K�[�G���H�$"E-jS��ԣ>
hH#Z�
ڤ-�G��C��qt<�@'�It�(]�.N��K��t
]�.M�������t�"]�<�2]�N���it5�:]�N�kҵ��t�.]��O7�3�t&݈nL7������t�%݊nM������t�#݉�Lw������t�'݋�M�������iL��iBӵ(��ҌJ)��
:�v>�d����iN�iAG�� z0=�J���#�t=�M����t�K������z"=�Χ'�S��4z:=��IϢg�s��<z>��^H/��K��2z9��^I��W�k��:z=���Ho�7�[��6z;]@�wһ���z/���O�҇����(}�>N��Oҧ����,}�>O_�/җ����*}��Nߠo҅�-�6}��Kߣ����#�1��~J?���/��+�5��~K������'�3���J���?��/�7����֔PR�R��ڪ�����j��j��Ն�T[j�گ�cԱ�8u�:A��NRQUSW�P�T'�Sԥԥ�e�e������Օ������NUWU������k���5յԵ�u�u���
���Lu#ucuuSu3usuuKu+ukuu[u;u{uuGu'uguuWu7uwuuOu/uouu_u?u�嫱
T��m��DM��H�ꠚ�D�*S�*�!U*�*U�m5W��BQTRVQUSW�P�Tg�G�G�Ǩ��c�9�\u�z�z�z�z�z�:_=Y=E=U=M=]=C=S=K=[=G=W=O=_�@�P�H�X�D�T�L�\�B�R�J�Z�F�V�N�^�A�Q�I�Y�E�U�M�]]�ޡީޥޭޣޫާޯ>�>�>�>�>�>�>�>�>�>�>�>�>�>�>�>���������������������.T�jO�:�U�*�8�ew��.c��u�燽*6��"?�(O�8�z��OF��~9K��f��o��V�������L���ݶF�>n�C�y=��9JwW�ﶦ���ܴ�5���F{�/��_Ty�ٖARgS�:/�IY�s3(?k^aX�i�L�*&����b���ne�l�\3���Uy����\��V�W���+�B��i~C���w`���cemԶ6Ր���f4�y���U�ŭ�6q�6�/����(+e*�Tܻ��Iڭ"/�˩�U�a96U�V��ܽ^��f��i�զW�s�l>��M<���|��<խ Ƀ�*s?�<K ����J��,������P��I�O��RE�g0��<�S͝�;�5r]��A��ط�T�S���y>��0ke�U�Ou�I�U8����8T�p�E:�FU���8��>�M3/ѓj��@g��SJ�|�䃵���B�X:y]���g��%uފS���_��t�C�Iam*+�F�҅���2M|��R�.\�
��ؤ:����|�؞���b���
f�T���^�A��v=��]��b
�Q6հ�=8}g����A��j\�Y�z�}���]'�Es�״��J�և8{7�Ӣ���Ӈ��O��ǩi<��h�-5����Á��+@R6Mt�:�����/���%���<'����d��/��.v��߭S�j�5)ʋ�a,��'�!؃���Bg���+���<�Y�4��0��y����E~2�UQ��+�pWѢ]�Q��Y���=s��)�3v�AP���TCQC��$��lh���T�M�EKs����`
bE��ճ<�-�Dn�����.�4��ޛ��N�|���Rg�
�lڀ�So\�z�F;k0�>-�zp�l�(R�- ��QPW��bѳ$q�����nj&�t,�ԉ��xV�t�z5ܲD�/1�m`��U�u0�c���I�Ǵj7]'�X�`�ىv�!�Q��˪�g3V���ζu�Pxrޚ�mF��c�J�X�R'�dž��9��xi����
ƭ���+�+5�-���u'Ʋ���F?t�iW�	w�^j@�F��+r~��-�%x�z��ī-��6���<�kq�n��٭���܁�	����.��R�s̽����ljn�1�,t:�j�׶&���Ru�p���6���K<\���4�Dq�蕺H��d����Z����#��ݍ�8��`]������z=vR>ό����X�X���;e��^u����X�!�]��Dg	/��%�x���l�XG��3��1�e߁��
�â���Ƌv��>�e�f���X�N4�)}���bz�0���͖��h�icOK]�ۣ��t]��~��L!�nS��ˡ��]��6�M�6�]s���}�:���o�d���Ŧ�R<��j\���Hn${Z���4h$��=�ԙJ�<�0���5����)��y���H�$��@��a�@�5��
z�9�%�3�\p����&�|��܄&�aXBlY:x*|�C=�� <��r�X�cU���Ї���ݜ�g�y^�}+�gt���2S��ŝ��h�Í޵�u�N���ui�6�'l�t�u���a�q��̨����g�
��9b�7w$o9�tܞ����j��YK����^���>D�W
>����z�|���H/��x/��cp�h4��*
ك���S����4+�F�N�*�2Z�{K1�c��n��F�������1Ӊ��^`��o�9K����6�����0�/"
��¤�y�&	c��j�:�����b��ff�9�n��<�C{y|W#��	nq�xZ>ӣ��ޣE�L�����A
S”{v<���,Y��y
�
@����دp�›�]*`@
^v�f�&cK�9;Z�:-��(�)�5`����T���I�7�(�I$���8�-�Jm:�iti#�g�7�s�.ScFX���>�]3���z��q��;�Ɩ�����Sl�$>�P�o�m\?ܥw�W�h@���G;��u}G�H��ک�U-�w�� ���q��8��_6DC�
��aӗe�Y�2���?�XQ�`'�g!��l��O<?`�1�%ܲ��U�(h(�K;c.T$�$L�=��V��xf)5���}&�%.zv���p`V!��ў�~�<��S���/'C?9��8�Q��;7t���!�Nu'���
$ E��
��Ն�F��Z6���
�U[�m֠ۘe 2h3r�"A,��9�cJ��i|D��qf��F� �nѳ��]�L���0|�lf�-.Ϻ�f�L��z'-���mک���"���U��^�5��m�0�5<ȶ����~8ڴ�<�xƽ��,�:����]R��'=�<,��6zѪ�}�n+��[�E���V�*���پ�<�Ä%p��miX�B/lrj�}6��u]��7�Nu��hخ���Ժ�ö��mz}���'�Wx-Ծ#���NNet�� Kp̪e�x����.��#3���gb&�����+6i�pY9�W/.�F�Q��LJ
�*;�p���6I�U/c���g$4
�x��3�A���ґS@����C��Y�\r=*d�0����{�<�Xi1�_x��ޡ:���4+�0�3���l�d;;�_��X���;i�n�_���4{Y�T���05"�ƎI;H_��+{a�O3L��0�[̼#{����	��qMߛ��5�7\���2[�|G1��kЀ�]2�f�I���U��d��/��¤�����A|�a��#�>6�p��cҜW�cL(u�Y���ڎ���ӛcl��=����a��]�t[�_9Pu3Z*�y�L2�3��*̷�p�(�oO����=M�	�^��e�ƛ���G:၍
���r1��M�3Z.�E<���l�.��8�Z`(���C6~es&�V{sNy+�����x�l�NK�m曖���q��,7Y_�eS�w*3�̯+G׬�5"c��� �:^Dž���&0Z�U��E���>ׅ%(NDD?�7��‰kvx㘢?m��ud�����2���6��8�L�ǡܮ�Ƙ��8��ciz�2�Of�{��p[�
W0����X����1��	��0o�!S�z��7ai$�����N0��,#pm�<Gn��Þ��m�P����>���O�S�U�E�.�6�)��1�lߪ�����8�����y�,��s{�Ǝ�.o�:E:v`o�hvrV�������m�pm�d6Vd�*����A��wxK	���� ,a`99CX駜�j��(�*�~�=�R$~:�tj����$�m.�2%��F�Ò))���o4����
��˵Y��is�姜p�L|&:�T�Nۮ`�eՙ�lpw{�pq��d$6-���|.���̦�ñ>�(j�H�h���̳�t�FL���GDk�5.-�p�
�x=�A�@��������5T�
Z2�S��6:cR���G�,6�ҟT�B�=*,�t�$8 �g��,�7�}"4ڒ���ӄAS/`��8��a�W���\�a%���=U!����P�p\�S�]G���M�E:��J����=[k�����O8�Xo�O�~����LK��@+�f]>X#�2�tcG���4��
�ɠx���A��ClK�#�VwOC�����us��߽	K�&Ŋ����4���:���]
"`d�*Ν�Y��~u�:�	��!5���J�47�V��Өo������6�|�0��S�͸�����R�ڎ��@ ���jt
@�m�T�P�J�d	�Rs�F~_�L�������H�ٖ�z�bL6�����A,B��1�m��'N5@��n�j����.��r
�ꝷ�g�[m�آE��N��N�1�`Ğ)J[Vb���b����j]͖�r�]S�}tm3.�e3�AXʑ��A���y{rYۊK����"�7;�VA4��"�8���ȑlj�Y�%������Ge~Q8���*O��V�ch�)֠�=;�t�׷0y��^�m�M.�MmF_�&�"��%3,�1�d1ͳA���D��,�hٝW���-�ˊYU���2�ڹ�'"[@�*�ۣE�p�FK��;��Ix�'FK�ˆIHg�B�`�Qk�G�kL�8�*��.�d��Xn#6z��CL�%�g��oO	��m�a�Qi��rגK=�I�e6���:Ӽ�&A/S��~��� (�A�N3�s����~{���:r��KI�q��:xü�v��2���u���'>o��&m���&|��̄K���1�>|�"ņ=�e��t[��r٨����F[n�B��Xn �f�~���1��
�ᗋ��=��i0����8Ʊ7ł��c̭��!eڌW�0�Q�	=���0�~Wd��B�k�lž�Rn.���h�̑��S;N8��|چ��X�9t�"����6���U���x�	7�kM�MUm�[�;}~V�b#�����)E����\"_v���>�S:Q���b_��v�6�o�i�r�Nrv�N	�av8�lZ��Y3d'6mdu![��,���1{u�[8�.m�g	��L~`��o��t��lھ;{<䬙M�7�iZ��ۋ����tCQ`Fյ;���ۜ��x#�����c�����*�~�%�
*P��f�S�a��㐷�ڐ���6oZ.�߲y���ň6	���y��q�Ow?Ma�;�\��(-��6ߝW8o��+���z�N���-�w��Y��_P��[P�蛯���f�
��=�B�m��=	�Wܥ�S���n�
"[kN;��񂄝8�d����4�%e���g�U�]l�w�#5e?K�Ӟ�d"�Uz}G�)�W3�8�B����,��x@����J8@�I��Y>��g�PR?��/���Wk;�N�v���Q�γ�u��H1��+3�3k؄A��K��)ke���Mz:�E��^��?��0�,��)��$\z�S9awjc=Ə�3��&�5�i��I�J�t
�u߽���c�����VP\j]c6+k>D[4�1���c�N���F6�"��Ŭ��13��ps���em��ݎߨ��ns‹�V�?j�֡��V-�8z��f*{�l��ٶ�5㣶n]����=�-�l����j�����-i��!h��d��ًF�ѥIassets/lib/font-awesome/webfonts/fa-brands-400.svg000064400002664031151327220410015737 0ustar00<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1">
<metadata>
Created by FontForge 20201107 at Tue Mar 16 10:15:04 2021
 By Robert Madole
Copyright (c) Font Awesome
</metadata>
<!-- Font Awesome Free 5.15.3 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) --><defs>
<font id="FontAwesome5Brands-Regular" horiz-adv-x="448" >
  <font-face 
    font-family="Font Awesome 5 Brands Regular"
    font-weight="400"
    font-stretch="normal"
    units-per-em="512"
    panose-1="2 0 5 3 0 0 0 0 0 0"
    ascent="448"
    descent="-64"
    bbox="-0.200195 -66.9505 641.5 448.3"
    underline-thickness="25"
    underline-position="-50"
    unicode-range="U+0020-F8E8"
  />
    <missing-glyph />
    <glyph glyph-name="firefox-browser" unicode="&#xe007;" horiz-adv-x="512" 
d="M130.63 324.51c0.160156 -0.00976562 0.0800781 -0.00976562 0 0zM482.05 279.16c15.2803 -36.7598 20.6709 -80.748 15.8213 -122.578c-0.370117 -3.15039 -0.700195 -6.29004 -1.11035 -9.41016c-19.6094 -115.04 -119.79 -202.62 -240.43 -202.62
c-134.71 0 -243.92 109.19 -243.92 243.891v1.23926c0.149414 2.70996 0.30957 5.41016 0.490234 8.12012c0.0498047 0.240234 0.0498047 0.480469 0.0498047 0.719727c0.439453 6.29004 0.870117 10.3105 1.43945 14c0.240234 1.91309 0.5 3.82617 0.780273 5.73926
c1.66992 12.2705 3.94043 22.21 4 22.4805c5.99219 26.8799 17.3516 52.1084 32.7305 73.8994v0c6.86816 9.79785 14.3965 18.8301 22.7695 27.3301c7.36719 7.53418 15.2451 14.2881 23.8398 20.4307c0.930664 0.629883 8.03027 4.83984 8.15039 4.30957
c-0.570312 -8.42969 -1.24023 -48.8301 8.42969 -61.0801h0.120117c14.1602 15.9199 33.6504 33.96 58.71 45.3701c-2.38477 -9.13379 -3.64844 -18.6562 -3.64844 -28.5332c0 -10.7832 1.51367 -21.2158 4.33887 -31.0967
c2.20508 -1.47852 4.29199 -3.05566 6.30957 -4.77051c3.71973 -3.14941 7.91992 -7.34961 16.7705 -16.0596c16.5498 -16.3096 59 -33.1797 59.0898 -35.1797c-0.400391 -6.08008 -21.8301 -27 -29.3301 -27c-69.3701 0 -80.6201 -41.9502 -80.6201 -41.9502
c3.07031 -35.3301 27.6699 -64.4102 57.5098 -79.75c1.36035 -0.730469 2.74023 -1.37012 4.12012 -2c2.36035 -1.04004 4.74023 -2.02051 7.16016 -2.92969c9.95996 -3.52539 20.6885 -5.66895 31.7402 -6.12012c121.569 -5.7002 145.13 145.34 57.3896 189.199
c22.4697 3.91016 45.8203 -5.12988 58.8203 -14.2793c-10.374 18.1104 -24.9414 33.167 -42.6602 44.1299c-0.993164 0.620117 -1.99316 1.21973 -3 1.7998c-1.55957 0.913086 -3.13965 1.79004 -4.74023 2.62988c-0.75 0.390625 -1.5 0.759766 -2.25 1.12988
c-1.65332 0.813477 -3.32031 1.59668 -5.00098 2.34961c-1.07031 0.469727 -2.16016 0.910156 -3.25 1.34961c-1.33984 0.580078 -2.68945 1.08008 -4.0498 1.58008c-1.86035 0.669922 -3.73047 1.2998 -5.62012 1.87012c-0.679688 0.209961 -1.33008 0.429688 -2 0.629883
c-10.8193 3.12793 -22.2139 4.82422 -34.0352 4.82422c-0.338867 0 -0.676758 -0.00195312 -1.01465 -0.00390625c-2 -0.0205078 -4 -0.100586 -6 -0.220703l-1.41992 -0.0996094c-14.8984 -1.04102 -29.2461 -4.92383 -42.1104 -11l-0.519531 -0.209961
c-0.625977 -0.21582 -1.29688 -0.335938 -1.99609 -0.335938c-2.68164 0 -4.96289 1.72559 -5.79395 4.12598c-0.246094 0.669922 -0.388672 1.39258 -0.388672 2.14746c0 2.4541 1.41797 4.58008 3.47852 5.60254c14.7295 6.98535 31.1982 11.3564 48.3301 12.3301
c5.7793 35.3994 28.2695 91.0098 82.5 122.78l-0.100586 -0.140625l0.180664 0.100586l0.120117 0.0693359c0.0732422 0.0195312 0.149414 0.0302734 0.229492 0.0302734c0.0791016 0 0.15625 -0.0107422 0.230469 -0.0302734
c0.30957 -0.0390625 0.550781 -0.303711 0.550781 -0.624023c0 -0.0117188 -0.000976562 -0.0244141 -0.000976562 -0.0361328c0.84375 -3.34961 2.08887 -6.61523 3.63965 -9.61914c0.830078 -1.70996 1.69043 -3.40039 2.69043 -5.05078
c1.87988 -3.21973 3.80957 -6.2793 5.73926 -9.33008c38.2002 -60.3594 84.9707 -88.0791 112.551 -156.829c-0.0507812 0.269531 -0.0507812 0.40918 -0.0507812 0.40918c-3.0293 20.1201 -10.9795 47.1104 -24.6992 74
c16.8594 -8.72949 38.3301 -36.2295 48.9395 -61.7295z" />
    <glyph glyph-name="ideal" unicode="&#xe013;" horiz-adv-x="576" 
d="M125.61 282.52c27.0713 -0.0107422 49.0488 -21.9873 49.0596 -49.0596v-0.00976562c0 -27.083 -21.9873 -49.0703 -49.0703 -49.0703c-27.082 0 -49.0693 21.9873 -49.0693 49.0703c0 27.082 21.9873 49.0693 49.0693 49.0693h0.0107422zM86.1504 22.1602v140.52
h78.9395v-140.52h-78.9395zM237.61 233.76c0 -20.4502 -8.99023 -23.2598 -18.7402 -23.2598h-14.0498v45.79h14.0498c8.74023 0 18.7402 -2.53027 18.7402 -22.5303zM439.3 187.76h57.0898c-1.7793 -98.4795 -52.1094 -165.64 -196.72 -165.64h-94.8301v165.62h14
c25.9805 0 41.5 17.1895 41.5 46c0 27.9102 -15.8994 45.2598 -41.5 45.2598h-14v82.8096h94.8301c88.9404 0 186.83 -26.8896 196.07 -151.31h-33.6904v68.5703h-22.75v-91.3105zM329.55 187.76l-0.0400391 22.7402h-33.5098v12.5h30v22.6904h-30v10.5791h31.7305v22.7305
h-54.4307v-91.2402h56.25zM404.21 187.76l23.6699 -0.0195312l-27.5303 91.3398h-32.3496l-27.5303 -91.3203h23.6602l5.17969 17.6699h29.7402zM299.65 416c218.35 0 250.97 -140 251 -223.48c0 -144.789 -89.1504 -224.52 -251 -224.52h-267.65v448h267.65z
M299.65 -10.9199c148.899 0 229.899 69.3496 229.899 203.439c0 137.801 -87.7998 202.41 -229.899 202.41h-246.58v-405.85h246.58zM383.51 253.93h1.37012l7.52051 -25.8096h-16.4004z" />
    <glyph glyph-name="microblog" unicode="&#xe01a;" 
d="M399.36 85.7695l0.149414 0.0605469c-13.5439 -15.3408 -21.7432 -35.5967 -21.7432 -57.6494c0 -19.957 6.73438 -38.3545 18.0537 -53.041c0.589844 -0.745117 0.944336 -1.68652 0.944336 -2.71094c0 -0.311523 -0.0322266 -0.615234 -0.0947266 -0.90918
c-0.416992 -2.00684 -2.19434 -3.52051 -4.32422 -3.52051c-0.306641 0 -0.606445 0.03125 -0.895508 0.0908203c-32.2803 7.17969 -61.3105 24.8301 -79.8906 49.9199c-1.30566 1.78906 -3.41699 2.94434 -5.7998 2.94434
c-0.811523 0 -1.5918 -0.135742 -2.31934 -0.383789c-24.7363 -8.66016 -51.3818 -13.4404 -79.0586 -13.4404h-0.381836c-122.86 0 -222.46 91.4805 -222.46 204.43c0 112.95 99.5996 204.44 222.46 204.44s222.46 -91.4902 222.46 -204.44
c0 -47.4492 -17.6104 -91.0996 -47.0996 -125.79zM329.52 235.6c1.56738 1.18652 2.57324 3.03516 2.57324 5.15039c0 3.57227 -2.88672 6.47461 -6.45312 6.5l-71.8799 1.50977l-23.6602 67.9199c-0.882812 2.54199 -3.29688 4.36914 -6.1377 4.36914
s-5.25879 -1.82715 -6.1416 -4.36914l-23.6602 -67.9199l-71.8799 -1.50977c-3.5293 -0.0673828 -6.38086 -2.95117 -6.38086 -6.49609c0 -2.11523 1.01367 -3.99707 2.58105 -5.18359l57.2998 -43.4902l-20.79 -68.8604
c-0.178711 -0.59375 -0.269531 -1.21875 -0.269531 -1.87109c0 -3.59277 2.91699 -6.50977 6.50977 -6.50977c1.37793 0 2.65723 0.429688 3.70996 1.16113l59.0596 41.0801l59.0596 -41.0498c1.05371 -0.735352 2.33984 -1.1709 3.71973 -1.1709
c3.58789 0 6.5 2.91211 6.5 6.5c0 0.657227 -0.0976562 1.29199 -0.279297 1.89062l-20.7803 68.8604z" />
    <glyph glyph-name="pied-piper-square" unicode="&#xe01e;" 
d="M32 29l-32 -60.2002l0.799805 328c0 65.9004 53.2002 119.2 119.2 119.2h327.2c-93 -28.9004 -189.9 -94.2002 -253.9 -168.6c-70.5996 -81.4004 -110.7 -137.4 -161.3 -218.4zM448 416c0 0 0 -328.8 0.0996094 -328.8c0 -65.9004 -53.2998 -119.2 -119.3 -119.2
h-328.399c18.5 25.5 61.6992 54 84.8994 66c35.5 18.0996 76.4004 28.5 105.3 56.2998c42.1006 40.5 47.8008 105 71 158.601c43.6006 100.3 186.4 167.1 186.4 167.1z" />
    <glyph glyph-name="unity" unicode="&#xe049;" horiz-adv-x="576" 
d="M498.11 241.6l-30 -49.5996l30 -49.6299l-52.8008 -191.62l-197.079 51.3604l-29.2402 50l-59.1699 -0.430664l-144.28 140.32l144.26 140.29l59.2002 -0.429688l29.2002 50.0596l197.109 51.3604zM223.77 323.8l-108.899 -108.13h173.13l86.5498 145.82zM223.77 60.1699
l150.78 -37.6895l-86.5498 145.81h-173.13zM416.77 46.1699l41.79 145.83l-41.8096 145.84l-86.5801 -145.84z" />
    <glyph glyph-name="dailymotion" unicode="&#xe052;" 
d="M298.93 181c7.14062 -4 12.9844 -9.85254 16.9727 -17c3.86426 -6.83691 6.10059 -14.7783 6.10059 -23.1865c0 -0.0947266 0 -0.188477 -0.000976562 -0.283203c-0.0332031 -13.6602 -4.58691 -25.084 -13.6602 -34.2705s-20.4434 -13.7793 -34.1104 -13.7793
c-13.4336 0 -24.5771 4.47949 -33.4307 13.4395s-13.2803 20.4932 -13.2803 34.5996c0 13.4336 4.53711 24.5742 13.6104 33.4209s20.2197 13.2695 33.4395 13.2695c0.214844 0.00292969 0.469727 -0.0263672 0.685547 -0.0263672
c8.59668 0 16.6738 -2.24609 23.6738 -6.18359zM0.00195312 416h448v-448h-448v448zM374.712 42.7402l-0.0302734 264.349l-55.79 -12.0898v-77.9199c-7.81348 7.86035 -16.1465 13.5273 -25 17.001c-8.87695 3.35352 -18.5127 5.21875 -28.5576 5.21875
c-0.394531 0 -0.789062 -0.00292969 -1.18164 -0.00878906c-17.6934 -0.00683594 -33.6006 -4.37305 -47.7207 -13.0996c-14.0625 -8.68066 -25.4102 -20.9805 -32.9297 -35.7803c-7.83984 -15.1064 -11.7598 -31.8467 -11.7598 -50.2197
c-0.00683594 -18.8066 3.85645 -35.7705 11.5898 -50.8906c7.45215 -14.8447 18.8232 -27.1611 32.9395 -35.7695c14.2197 -8.7334 30.5166 -13.1006 48.8906 -13.1006c26.6602 0 45.2539 8.7334 55.7803 26.2002h0.669922v-23.8896h53.0996z" />
    <glyph glyph-name="instagram-square" unicode="&#xe055;" 
d="M224 245.34c29.4385 -0.0107422 53.3379 -23.9043 53.3604 -53.3398c0 -29.4395 -23.9004 -53.3398 -53.3398 -53.3398s-53.3398 23.9004 -53.3398 53.3398c0 29.4326 23.8896 53.3291 53.3193 53.3398zM348.71 286.34
c8.34961 -21.0703 6.46973 -71.0596 6.46973 -94.3398s1.91992 -73.3301 -6.42969 -94.3301c-5.4834 -13.8955 -16.5146 -24.9268 -30.4102 -30.4102c-21.0596 -8.35938 -70.9902 -6.42969 -94.2998 -6.42969s-73.3096 -1.86035 -94.3096 6.42969
c-13.8955 5.4834 -24.9277 16.5146 -30.4102 30.4102c-8.32031 21.0703 -6.4707 71.0605 -6.4707 94.3398c0 23.2803 -1.84961 73.3301 6.43066 94.3301c5.48242 13.8955 16.5146 24.9268 30.4102 30.4102c21.0596 8.36035 71.0098 6.42969 94.3096 6.42969
s73.2998 1.86035 94.2998 -6.42969c13.8955 -5.4834 24.9268 -16.5146 30.4102 -30.4102zM224 110c0.0341797 0 0.0664062 -0.00195312 0.0996094 -0.00195312c45.2021 0 81.9004 36.6982 81.9004 81.9004v0.101562c0 45.2568 -36.7432 82 -82 82s-82 -36.7432 -82 -82
s36.7432 -82 82 -82zM309.38 258.3c10.5371 0.00585938 19.1299 8.52051 19.1299 19.0586v0.0820312c0 10.5635 -8.57617 19.1396 -19.1396 19.1396c-10.5645 0 -19.1406 -8.57617 -19.1406 -19.1396c0 -10.5645 8.57617 -19.1406 19.1406 -19.1406h0.00976562zM400 416
c26.4922 0 48 -21.5078 48 -48v-352c0 -26.4922 -21.5078 -48 -48 -48h-352c-26.4922 0 -48 21.5078 -48 48v352c0 26.4922 21.5078 48 48 48h352zM382.88 126c1.49023 26.4404 1.49023 105.56 0 131.88c-1.21973 25.6299 -7.17969 48.3506 -25.8496 67.0498
c-18.6699 18.7002 -41.3701 24.5605 -67 25.8506c-26.4102 1.48926 -105.59 1.48926 -132 0c-25.5303 -1.2207 -48.2207 -7.12012 -67 -25.7803c-18.7803 -18.6602 -24.5605 -41.3701 -25.8506 -67c-1.48926 -26.3896 -1.48926 -105.58 0 -132
c1.2207 -25.5801 7.11035 -48.2998 25.8506 -67c18.7393 -18.7002 41.3701 -24.5596 67 -25.8496c26.4102 -1.49023 105.59 -1.49023 132 0c25.5996 1.21973 48.29 7.18945 67 25.8496s24.5596 41.3701 25.8496 67z" />
    <glyph glyph-name="mixer" unicode="&#xe056;" horiz-adv-x="512" 
d="M114.57 371.93l128.319 -172.399c1.44531 -1.99805 2.29785 -4.47461 2.29785 -7.12598c0 -2.65234 -0.852539 -5.10645 -2.29785 -7.10449l-128.89 -173.24c-8.33594 -11.1826 -21.6582 -18.3877 -36.666 -18.3877c-11.877 0 -22.7031 4.54004 -30.834 11.9785
c-17.8496 16.1797 -18.9697 43.5195 -4.74023 62.7695l92.3301 124.15l-91.7803 123c-14.25 19.25 -12.8291 46.5898 4.75 62.7695c8.13281 7.44141 18.9551 12.0264 30.8359 12.0264c15.0088 0 28.3389 -7.25 36.6748 -18.4365zM470.24 68.4199
c14.2295 -19.25 13.1094 -46.5898 -4.73047 -62.7695c-8.13184 -7.44141 -18.9551 -12.0264 -30.835 -12.0264c-15.0098 0 -28.3389 7.25 -36.6748 18.4355l-128.57 173.5c-1.44434 1.99805 -2.29688 4.47461 -2.29688 7.12598c0 2.65234 0.852539 5.10645 2.29688 7.10449
l128 172.12c8.33594 11.1855 21.6602 18.3926 36.6699 18.3926c11.8809 0 22.708 -4.54199 30.8408 -11.9824c17.5791 -16.1807 18.9697 -43.5205 4.75 -62.7705l-91.7803 -123z" />
    <glyph glyph-name="shopify" unicode="&#xe057;" 
d="M388.32 343.9c0.399414 -2.40039 54.4395 -367.9 54.4395 -367.9l-125.689 -31.2002v432.73c8.00977 -8.01074 29.6201 -28.8301 29.6201 -28.8301s35.2295 -0.799805 37.2295 -0.799805c2.25 -0.103516 4.08887 -1.81055 4.40039 -4zM288.65 377.53
c9.20996 2.7998 13.3604 4.18945 14.8096 4.39941c1.4502 0.209961 2.90625 0.34375 4.40039 0.400391v-438.33l-302.58 52.4805s36.7998 281.819 38 291.819c1.58984 13.2002 2 13.6006 16 18c0.399414 0.400391 19.6094 6.41016 47.2295 14.8105
c2.82031 21.2197 13.21 48.4395 26.8203 70.0596c19.25 30.8301 43.25 48.0303 67.25 48.8301c12.4199 0.370117 22.8203 -3.62988 30.8203 -12.4004c0.399414 -0.799805 1.19922 -1.19922 1.59961 -2c1.11914 0.267578 2.27051 0.40918 3.4707 0.40918
c0.176758 0 0.353516 -0.00292969 0.529297 -0.00878906c18.4199 0 34 -10.8496 44.4404 -30.8604c2.84082 -5.58887 5.28809 -11.5479 7.20996 -17.6094zM233.41 360.31c0.399414 13.21 -1.2002 32.8301 -8.00977 47.2002
c-6.80078 -3.2002 -12.8105 -8.41016 -17.21 -12.8096c-11.21 -12.3701 -20.8203 -31.1807 -25.6201 -50c17.21 5.20996 34.8398 10.8096 50.8398 15.6094zM200.58 423.56c-36.8301 -0.799805 -69.25 -58.8398 -78.0098 -97.2295c13.1699 4 27.5801 8.40039 42 12.8096
c4.7998 24.4502 16.4102 50.0303 31.6201 66.4502c6 6 12.4092 11.21 18.8096 14.4102c-3.99414 2.26367 -8.625 3.57422 -13.54 3.57422c-0.293945 0 -0.587891 -0.00488281 -0.879883 -0.0146484zM154.15 203.39c-0.400391 4.81055 0 23.6104 29.6191 25.6201
c20.4209 1.60059 37.6309 -6.39941 37.6309 -6.39941l15.21 57.5996s-13.2305 6.41016 -39.2305 4.80957c-67.25 -4.40918 -97.6699 -51.2393 -94.4697 -97.6797c3.59961 -55.2402 58.8398 -53.2402 60.8398 -86.8594
c0.410156 -8.01074 -4.80957 -19.6201 -18.8096 -20.4209c-21.6201 -1.59961 -48.4404 18.8203 -48.4404 18.8203l-10.4004 -44s26.8203 -28.8203 75.6504 -25.6201c40.4297 2.41016 68.4502 34.8301 65.6504 82.4707c-4 60.4395 -71.6504 66.0498 -73.25 91.6592z
M249.42 365.12c8.80664 2.7998 16.8135 5.2002 24.0205 7.2002c-4.01074 12.4297 -12.8105 32.8301 -31.2305 36.4297c5.61035 -14.4102 7.20996 -31.6299 7.20996 -43.6299z" />
    <glyph glyph-name="deezer" unicode="&#xe077;" horiz-adv-x="576" 
d="M451.46 203.29v72.71h124.54v-72.71h-124.54zM451.46 377.18h124.54v-72.6699h-124.54v72.6699zM451.46 102.12v72.6797h124.54v-72.6797h-124.54zM0 0.910156v72.6699h124.54v-72.6699h-124.54zM150.47 0.910156v72.6699h124.53v-72.6699h-124.53zM300.99 0.910156
l0.00976562 72.6699h124.53v-72.6699h-124.54zM451.46 0.910156v72.6699h124.54v-72.6699h-124.54zM301 102.12v72.6797h124.53v-72.6797h-124.53zM150.48 102.12l-0.0107422 72.6797h124.53v-72.6797h-124.52zM150.48 203.29l-0.0107422 72.71h124.53v-72.71h-124.52z" />
    <glyph glyph-name="edge-legacy" unicode="&#xe078;" horiz-adv-x="512" 
d="M25.71 219.84l0.349609 0.480469c0 -0.160156 0 -0.320312 -0.0693359 -0.480469h-0.280273zM486.29 204.33v-52.0703h-314.08c1.38965 -128.49 191.39 -124.06 272.26 -67.5693v-104.431c-47.3594 -28.5293 -156.779 -53.1699 -240.13 -21.3301
c-70.6201 27.1602 -119.92 100.551 -120.75 172c-1.09961 92.2207 45.7002 153.42 120.75 188.32c-15.79 -19.9297 -27.9697 -41.54 -34.3398 -78.9297h175.85c10.25 105 -99.4199 105 -99.4199 105c-103.3 -3.62012 -177.949 -63.6904 -220.37 -125
c14.5605 114.47 92.9404 219.96 232.83 219.68c85.0205 0 157.61 -39.8799 198.591 -113.27c21.0498 -37.9404 28.8096 -78.4004 28.8096 -122.4z" />
    <glyph glyph-name="google-pay" unicode="&#xe079;" horiz-adv-x="640" 
d="M105.72 233h99.6602c1.1543 -7.06152 1.75 -14.1768 1.75 -21.5635v-0.216797c0 -32.7598 -11.4102 -60.2998 -31.4102 -78.9102c-17.4502 -16.3799 -41.5293 -25.9092 -70 -25.9092c-41.4531 0.103516 -77.2598 24.0869 -94.3799 59v0.149414
c-7.21582 14.4512 -11.2773 30.957 -11.2773 48.1943c0 17.2383 4.06152 33.5352 11.2773 47.9863c17.1172 34.9355 52.9199 58.9502 94.3799 59.1094c0.344727 0.00390625 0.699219 0.00585938 1.04492 0.00585938c27 0 51.5469 -10.5928 69.7051 -27.8457
l-30.2793 -30.6201c-10.1777 9.95508 -24.0938 16.0898 -39.4404 16.0898c-0.357422 0 -0.713867 -0.00292969 -1.07031 -0.00976562c-27.5996 0 -50.9297 -18.9102 -59.2998 -44.3701v0c-2.12109 -6.44824 -3.26855 -13.3545 -3.26855 -20.5088
s1.14746 -14.043 3.26855 -20.4912c8.37012 -25.3096 31.7002 -44.2197 59.2998 -44.2197c14.2803 0 26.46 3.72949 36 10.2803c10.9629 7.39648 18.7705 19.0664 21.1406 32.5996h-57.1006v41.25zM495.13 237c10.1299 -9.33984 15.1201 -22.4502 15.0498 -39v-78.7002
h-22.6094v17.7197h-1c-9.79004 -14.5898 -22.71 -21.8896 -39 -21.8896c-13.79 0 -25.54 4.16992 -34.79 12.5098c-8.55078 7.29199 -13.9541 18.1143 -13.9541 30.2207c0 0.350586 0.00488281 0.701172 0.0136719 1.0498c0 13.25 4.98047 23.6699 14.8203 31.5596
c9.83984 7.89062 23.0498 11.7705 39.4902 11.7705c14.0898 0 25.54 -2.68066 34.6396 -7.75v5.50977c-0.00488281 8.47461 -3.75098 16.0723 -9.69043 21.2305c-6.02051 5.44141 -14.0078 8.76855 -22.75 8.78906c-13.2061 0 -23.626 -5.66699 -31.2598 -17
l-20.8496 13.2607c11.1602 16.5195 28.04 24.8594 50.5 24.8594c17.46 0 31.2598 -4.75977 41.3896 -14.1396zM475.9 147.7c7.7793 7.4502 11.7393 16.2295 11.7393 26.3594c-7.33984 5.94043 -17.6396 8.94043 -30.7998 8.78027c-9.54004 0 -17.75 -2.38965 -24.0703 -7
c-6.31934 -4.60938 -9.53906 -10.4199 -9.53906 -17.4199c-0.000976562 -0.0332031 -0.0166016 -0.0546875 -0.0166016 -0.0878906c0 -6.35449 3.05957 -12 7.78613 -15.542c4.8916 -3.90625 11.1035 -6.25391 17.8447 -6.25391
c0.162109 0 0.324219 0.000976562 0.485352 0.00390625c10.3965 0.0126953 19.8076 4.2793 26.5703 11.1602zM382.25 289.7c10.4268 -9.92188 16.9102 -23.9102 16.9102 -39.4248c0 -14.166 -5.4209 -27.0752 -14.2998 -36.7656
c-0.890625 -0.889648 -1.77051 -1.79004 -2.65039 -2.67969c-11.0098 -10.5703 -24.5098 -15.9297 -40.5098 -15.9297h-39v-75.6406h-23.6299v186.74h62.6699c0.379883 0.0078125 0.749023 0.0185547 1.13086 0.0185547c15.3701 0 29.2949 -6.23828 39.3789 -16.3184z
M365.67 227.47c5.5957 5.94141 9.03223 13.9971 9.03223 22.7939c0 9.18164 -3.7373 17.4961 -9.77246 23.5059c-5.78027 5.70801 -13.7236 9.23047 -22.4814 9.23047h-0.118164h-39.6299v-65.21h39.6299c0.328125 -0.0107422 0.640625 -0.0253906 0.970703 -0.0253906
c8.82031 0 16.7754 3.7334 22.3691 9.70508zM614.31 247h25.6904l-79 -183.87h-24.3496l29.3496 64.3203l-51.79 119.55h25.6904l37.4199 -91.7002h0.449219z" />
    <glyph glyph-name="rust" unicode="&#xe07a;" horiz-adv-x="512" 
d="M508.52 198.25c2.09375 -1.2959 3.44043 -3.60449 3.44043 -6.24512c0 -2.6416 -1.39648 -4.95898 -3.49023 -6.25488l-21.8193 -13.5098c-0.169922 -1.95996 -0.34082 -3.91992 -0.550781 -5.87012l18.7207 -17.5c1.43457 -1.3418 2.33203 -3.24805 2.33203 -5.36523
c0 -3.15039 -1.98535 -5.83984 -4.77246 -6.88477l-24 -9c-0.540039 -1.88965 -1.08008 -3.78027 -1.66992 -5.65039l15 -20.8301c0.865234 -1.20508 1.37207 -2.68945 1.37207 -4.28516c0 -3.65234 -2.66992 -6.68555 -6.16211 -7.25488l-25.4199 -4.14941
c-0.900391 -1.71973 -1.79004 -3.4502 -2.73047 -5.15039l10.6807 -23.4199c0.420898 -0.925781 0.655273 -1.96875 0.655273 -3.05176c0 -1.50781 -0.455078 -2.91113 -1.23535 -4.07812c-1.29199 -1.97168 -3.51172 -3.26758 -6.04297 -3.26758
c-0.109375 0 -0.21875 0.00292969 -0.327148 0.0078125l-25.8203 0.910156c-1.18652 -1.4873 -2.38965 -2.9541 -3.60938 -4.40039l5.92969 -25.1602c0.125977 -0.538086 0.196289 -1.0957 0.196289 -1.67188c0 -4.0625 -3.29785 -7.36035 -7.35938 -7.36035
c-0.577148 0 -1.13867 0.0664062 -1.67676 0.192383l-25.1504 5.92969c-1.45312 -1.21289 -2.91992 -2.41602 -4.39941 -3.60938l0.90918 -25.8203c0.00390625 -0.0878906 -0.000976562 -0.167969 -0.000976562 -0.256836c0 -4.05664 -3.29395 -7.34961 -7.34961 -7.34961
c-1.08398 0 -2.1123 0.235352 -3.03906 0.65625l-23.4199 10.6807c-1.7002 -0.94043 -3.42969 -1.83008 -5.15039 -2.73047l-4.14941 -25.4199c-0.56543 -3.49121 -3.60254 -6.16309 -7.25293 -6.16309c-1.59961 0 -3.08105 0.512695 -4.28711 1.38281l-20.8203 15
c-1.87012 -0.599609 -3.75977 -1.12988 -5.64941 -1.67969l-9 -24c-1.05078 -2.7832 -3.7373 -4.7627 -6.88574 -4.7627c-2.11426 0 -4.02148 0.892578 -5.36426 2.32227l-17.5 18.7305c-1.9502 -0.219727 -3.88086 -0.390625 -5.88086 -0.560547l-13.5098 -21.8193
c-1.2959 -2.09375 -3.60352 -3.49023 -6.24512 -3.49023s-4.95898 1.39648 -6.25488 3.49023l-13.5098 21.8193c-1.95996 0.169922 -3.92969 0.34082 -5.87988 0.550781l-17.5 -18.7207c-1.34277 -1.42969 -3.24707 -2.32422 -5.36133 -2.32422
c-3.14844 0 -5.83789 1.98145 -6.88867 4.76465l-9 24c-1.88965 0.549805 -3.79004 1.08008 -5.65039 1.67969l-20.8301 -15c-1.20605 -0.870117 -2.69434 -1.37988 -4.29395 -1.37988c-3.64941 0 -6.68066 2.66895 -7.24609 6.16016l-4.14941 25.4199
c-1.71973 0.900391 -3.4502 1.79004 -5.14062 2.73047l-23.4297 -10.6807c-0.925781 -0.420898 -1.96094 -0.664062 -3.04492 -0.664062c-4.05664 0 -7.34961 3.29297 -7.34961 7.34961c0 0.0888672 0.00195312 0.176758 0.00488281 0.264648l0.919922 25.8203
c-1.4873 1.18652 -2.95703 2.38965 -4.41016 3.60938l-25.1602 -5.92969c-0.538086 -0.125977 -1.0957 -0.196289 -1.67188 -0.196289c-4.0625 0 -7.36035 3.29785 -7.36035 7.35938c0 0.577148 0.0664062 1.13867 0.192383 1.67676l5.92969 25.1602
c-1.21973 1.45312 -2.41992 2.91992 -3.59961 4.40039l-25.8301 -0.910156c-0.125977 -0.00683594 -0.243164 -0.0175781 -0.371094 -0.0175781c-2.5166 0 -4.72949 1.30664 -5.99902 3.27734c-0.776367 1.16504 -1.23047 2.57812 -1.23047 4.08301
c0 1.08691 0.236328 2.11816 0.660156 3.04688l10.6309 23.4297c-0.94043 1.69043 -1.83008 3.4209 -2.73047 5.14062l-25.4199 4.14941c-3.49219 0.569336 -6.16504 3.60938 -6.16504 7.26172c0 1.5957 0.509766 3.07324 1.375 4.27832l15 20.8301
c-0.599609 1.87012 -1.12988 3.76074 -1.67969 5.65039l-24 9c-2.78711 1.04492 -4.77148 3.73145 -4.77148 6.88184c0 2.11719 0.896484 4.02637 2.33105 5.36816l18.7197 17.5c-0.209961 1.9502 -0.379883 3.87012 -0.549805 5.87012l-21.8193 13.5098
c-2.09473 1.2959 -3.49023 3.60449 -3.49023 6.24512c0 2.6416 1.39551 4.95898 3.49023 6.25488l21.8594 13.5c0.169922 1.96973 0.339844 3.92969 0.549805 5.87988l-18.7197 17.5c-1.43457 1.3418 -2.33203 3.24805 -2.33203 5.36523
c0 3.15039 1.98535 5.83984 4.77246 6.88477l24 9c0.549805 1.88965 1.08984 3.79004 1.67969 5.66016l-15 20.8203c-0.865234 1.20508 -1.37207 2.68945 -1.37207 4.28516c0 3.65234 2.66992 6.68555 6.16211 7.25488l25.4102 4.13965
c0.899414 1.72949 1.79004 3.45996 2.72949 5.16016l-10.6602 23.4102c-0.423828 0.927734 -0.65918 1.97363 -0.65918 3.06055c0 1.50391 0.453125 2.90332 1.22949 4.06934c1.33398 1.97266 3.58398 3.26367 6.14258 3.26367
c0.0761719 0 0.152344 -0.00195312 0.227539 -0.00390625l25.8096 -0.910156c1.19043 1.48047 2.39062 2.95996 3.62012 4.41016l-5.92969 25.1602c-0.125977 0.538086 -0.196289 1.0957 -0.196289 1.67188c0 4.0625 3.29785 7.36035 7.35938 7.36035
c0.577148 0 1.13867 -0.0664062 1.67676 -0.192383l25.1504 -5.96973c1.41992 1.21973 2.92969 2.41992 4.41992 3.60938l-0.919922 25.8105c-0.00488281 0.104492 -0.000976562 0.201172 -0.000976562 0.307617c0 4.05566 3.29395 7.34961 7.35059 7.34961
c1.08398 0 2.11328 -0.235352 3.04004 -0.657227l23.4004 -10.6299c1.70996 0.939453 3.42969 1.83008 5.16016 2.72949l4.14941 25.4102c0.569336 3.49219 3.60938 6.16504 7.26172 6.16504c1.5957 0 3.07324 -0.509766 4.27832 -1.375l20.8203 -15
c1.87012 0.599609 3.76953 1.12988 5.66016 1.67969l9 24c1.04492 2.78711 3.73145 4.77148 6.88184 4.77148c2.11719 0 4.02637 -0.896484 5.36816 -2.33105l17.5 -18.7197c1.94922 0.209961 3.87988 0.379883 5.87988 0.549805l13.5098 21.8193
c1.2959 2.09473 3.60449 3.49023 6.24512 3.49023c2.6416 0 4.95898 -1.39551 6.25488 -3.49023l13.4805 -21.8398c1.96973 -0.169922 3.92969 -0.339844 5.87988 -0.549805l17.5 18.7197c1.3418 1.43457 3.24805 2.33301 5.36523 2.33301
c3.14941 0 5.83984 -1.98535 6.88477 -4.77246l9 -24c1.88965 -0.540039 3.7793 -1.08008 5.63965 -1.66992l20.8604 14.9697c1.20508 0.865234 2.68945 1.37207 4.28516 1.37207c3.65234 0 6.68555 -2.66992 7.25488 -6.16211l4.14941 -25.4199
c1.71973 -0.889648 3.4502 -1.79004 5.15039 -2.73047l23.4199 10.7305c0.926758 0.421875 1.96289 0.666016 3.04688 0.666016c4.05664 0 7.34961 -3.29395 7.34961 -7.35059c0 -0.105469 -0.00195312 -0.210938 -0.00683594 -0.31543l-0.910156 -25.8203
c1.4873 -1.18652 2.9541 -2.38965 4.40039 -3.60938l25.1602 5.92969c0.538086 0.125977 1.0957 0.196289 1.67188 0.196289c4.0625 0 7.36035 -3.29785 7.36035 -7.35938c0 -0.577148 -0.0664062 -1.13867 -0.192383 -1.67676l-5.87988 -25.1602
c1.21387 -1.45312 2.41699 -2.91992 3.61035 -4.40039l25.8193 0.910156c0.0878906 0.00292969 0.167969 -0.000976562 0.256836 -0.000976562c4.05664 0 7.34961 -3.29395 7.34961 -7.35059c0 -1.08301 -0.234375 -2.1123 -0.65625 -3.03809l-10.6797 -23.4199
c0.939453 -1.7002 1.83008 -3.41992 2.72949 -5.15039l25.4199 -4.14941c3.49219 -0.569336 6.16504 -3.60938 6.16504 -7.26172c0 -1.5957 -0.509766 -3.07324 -1.375 -4.27832l-15 -20.8301c0.589844 -1.86035 1.12988 -3.76074 1.66992 -5.64062l24 -9
c2.78711 -1.04492 4.77148 -3.73145 4.77148 -6.88184c0 -2.11719 -0.896484 -4.02637 -2.33105 -5.36816l-18.7197 -17.5c0.209961 -1.94922 0.379883 -3.87988 0.549805 -5.87988zM357.52 69.1699l32.1406 -6.87988c6.28125 6.3125 12.0029 12.9395 17.3398 20.0898
h-79.0498c-12.5 0 -24.21 17.6396 -27.1006 26.46c-2.88965 7.86035 -7.14941 32.4502 -9.05957 40c-6.12988 24.5898 -25.3799 25.8701 -29.79 25.8701h-48.4805l-0.0498047 -34.3496h44.8301c1.71973 0 2.89062 -0.34082 2.89062 -1.91016v-54.1904
c0 -1.62012 -1.1709 -1.91016 -2.89062 -1.91016h-153.17c5.01953 -6.80957 10.3848 -13.1465 16.2598 -19.21l31.5107 6.76074c0.935547 0.199219 1.89746 0.294922 2.89258 0.294922c6.66211 0 12.2344 -4.70801 13.5674 -10.9756l7.63965 -35.6602
c23.9688 -11.1318 50.9941 -17.3506 79.1416 -17.3506c27.5205 0 53.665 5.94141 77.2188 16.6113l7.63965 35.6699c1.34668 6.27246 6.91797 10.9893 13.5908 10.9893c1.00488 0 1.98438 -0.106445 2.92871 -0.30957zM383.29 34.6797
c0 0.00585938 -0.0576172 0.0107422 -0.0576172 0.0166016c0 8.25977 -6.58887 14.9922 -14.792 15.2236h-0.44043c-8.3877 -0.0273438 -15.1904 -6.8457 -15.1904 -15.2402c0 -8.41113 6.8291 -15.2393 15.2402 -15.2393s15.2402 6.82812 15.2402 15.2393zM157.67 35.3604
c0 0.00195312 -0.0576172 0.00488281 -0.0576172 0.0078125c0 8.24707 -6.56055 14.9736 -14.7422 15.2422h-0.450195c-8.40625 -0.00585938 -15.2295 -6.83203 -15.2295 -15.2402c0 -8.41113 6.82812 -15.2402 15.2393 -15.2402c8.4082 0 15.2344 6.82324 15.2402 15.2305z
M69.5703 213.85c-0.725586 -6.69922 -1.0625 -13.2754 -1.0625 -20.167c0 -17.8242 2.49023 -35.0713 7.14258 -51.4131h53.5996v119.73h-26.5596l6.76953 -15.2197c0.765625 -1.7207 1.20801 -3.62988 1.20801 -5.63281c0 -5.66406 -3.39941 -10.54 -8.26758 -12.6973z
M58.3096 249.91c0.00292969 -8.4082 6.84375 -15.2236 15.2529 -15.2236c8.41113 0 15.2402 6.82812 15.2402 15.2393c0 8.26562 -6.59375 15.0029 -14.8027 15.2344h-0.459961c-8.40625 -0.00585938 -15.2305 -6.83203 -15.2305 -15.2402v-0.00976562zM213.47 225.42
h58.7002c12.4902 0 27.6797 4.41016 27.6797 16.7002c0 14.8496 -19.79 18.6201 -23.0693 18.6201h-63.2607zM399 141.29c10.3096 1.12988 22 5.70996 22.0195 26.46v8.82031c0 1.85938 0.780273 3.12988 2.69043 3.12988h19.2803
c0.349609 4.6709 0.529297 9.02832 0.529297 13.7891c0 6.32812 -0.314453 12.583 -0.929688 18.751l-34.5898 15.3301c-4.86621 2.19434 -8.23828 7.0918 -8.23828 12.7725c0 1.97363 0.410156 3.85352 1.14844 5.55762l18 40.5693
c-26.8047 47.0127 -73.3965 81.1328 -128.37 91.4307l-26.2598 -25c-2.48535 -2.39062 -5.86523 -3.86523 -9.58203 -3.86523c-3.94141 0 -7.5 1.6543 -10.0186 4.30469l-23.4697 24.6006c-41.29 -7.80371 -77.9434 -29.083 -104.89 -59.1904h198.899
c4.99023 0 23.5107 -2.23047 40.2705 -13.2305c11.9102 -7.88965 29.3994 -23.96 29.3994 -49.4795c0 -23.6201 -19.5996 -41.3096 -38.46 -53.2598c15.1807 -12 24.79 -18.9102 30.5703 -51.4004c1.37012 -5.96973 12.2002 -11.2197 22 -10.0898zM240 387.79
c0 -0.0078125 -0.00683594 -0.015625 -0.00683594 -0.0244141c0 -8.41113 6.82812 -15.2393 15.2402 -15.2393c8.41113 0 15.2393 6.82812 15.2393 15.2393c0 8.26855 -6.59863 15.0078 -14.8125 15.2344h-0.450195c-8.38672 -0.0166016 -15.1934 -6.82324 -15.21 -15.21z
M436.84 234c0.0742188 -0.000976562 0.141602 -0.00195312 0.21582 -0.00195312c8.41211 0 15.2422 6.83008 15.2422 15.2422c0 8.33691 -6.70898 15.1201 -15.0176 15.2402h-0.44043c-8.41113 0 -15.2402 -6.8291 -15.2402 -15.2402s6.8291 -15.2402 15.2402 -15.2402z" />
    <glyph glyph-name="tiktok" unicode="&#xe07b;" 
d="M448 238.09h-0.512695c-45.5098 0 -87.8428 14.6162 -122.257 39.25v-178.72c-0.0332031 -89.6855 -72.8574 -162.489 -162.551 -162.489c-89.7139 0 -162.55 72.8359 -162.55 162.55s72.8359 162.55 162.55 162.55c7.62891 0 14.9697 -0.521484 22.3203 -1.54004
v-89.8906c-7.06836 2.22363 -14.5889 3.42285 -22.3877 3.42285c-41.1836 0 -74.6201 -33.4365 -74.6201 -74.6201c0 -41.1846 33.4365 -74.6201 74.6201 -74.6201c41.1846 0 74.6182 33.4541 74.6182 74.6377v349.38h88
c-0.00292969 -0.337891 -0.00488281 -0.676758 -0.00488281 -1.01562c0 -7.25977 0.638672 -14.2441 1.86426 -21.1543v0c6.28613 -33.5771 26.1982 -62.3613 53.9102 -80.2197c19.1787 -12.6816 42.1592 -20.0674 66.8506 -20.0674
c0.00878906 0 0.140625 -0.0732422 0.149414 -0.0732422v-87.3799z" />
    <glyph glyph-name="unsplash" unicode="&#xe07c;" 
d="M448 217.83v-249.83h-448v249.83h141.13v-124.92h165.74v124.92h141.13zM306.87 416v-124.91h-165.74v124.91h165.74z" />
    <glyph glyph-name="cloudflare" unicode="&#xe07d;" horiz-adv-x="640" 
d="M407.906 128.087c12.1836 -0.574219 22.2178 -5.50977 28.2334 -13.9023c6.54883 -9.09961 8 -21.5 4.10059 -34.8994l-3.27344 -11.2656c-0.681641 -2.28125 -2.7793 -3.95508 -5.27051 -4c-0.0419922 -0.000976562 -0.0791016 -0.0195312 -0.12207 -0.0195312
l-426.101 0.0507812c-2.26172 0.00878906 -4.13379 1.69238 -4.44434 3.87109c-0.676758 4.58691 -1.02637 9.18457 -1.0293 13.958c0 52.3926 41.9238 95.0137 94.2002 96.5303c-1.37402 5.39062 -2.05469 10.9785 -2.05469 16.7939
c0 37.5967 30.5234 68.1201 68.1201 68.1201c15.3838 0 29.583 -5.11035 40.9912 -13.7246c20.542 59.582 77.085 102.308 143.607 102.308c72.1562 0 132.629 -50.417 148.085 -117.914c0.107422 -0.513672 0.164062 -1.03906 0.164062 -1.58398v-0.046875
c0 -0.0332031 -0.00292969 -0.0683594 -0.00292969 -0.101562c0 -0.998047 -0.18457 -1.9541 -0.521484 -2.83496l-13.2861 -34.542c-10.4756 -27.21 -40.3906 -49.5234 -68.0215 -50.7842l-232.94 -2.93555c-2.48145 -0.173828 -4.5625 -1.82227 -5.36035 -4.07617
c-0.178711 -0.493164 -0.275391 -1.03223 -0.275391 -1.58691c0 -0.945312 0.283203 -1.8252 0.768555 -2.55957c0.8125 -1.14258 2.13379 -1.89355 3.63281 -1.92676zM513.856 226.9c69.668 0 126.144 -56.2002 126.147 -125.533
c0 -0.0458984 -0.0175781 -0.0644531 -0.0175781 -0.110352c0 -11.7441 -1.62598 -23.1123 -4.66406 -33.8896c-0.571289 -1.94629 -2.37012 -3.37012 -4.5 -3.37012h-0.0390625h-175.91c-0.0478516 0 -0.0898438 0.0166016 -0.135742 0.0166016
c-1.44727 0.0595703 -2.60449 1.25391 -2.60449 2.71484c0 0.339844 0.0634766 0.666016 0.176758 0.96582l3.69531 9.60547c10.4766 27.21 40.3916 49.5146 68.1455 50.7842l51.125 2.93945c2.47559 0.179688 4.55078 1.82617 5.35059 4.07422
c0.177734 0.492188 0.274414 1.03027 0.274414 1.58301c0 0.957031 -0.291016 1.84766 -0.788086 2.58594c-0.785156 1.11035 -2.06152 1.84375 -3.51074 1.89453l-49.1992 2.93848c-12.1846 0.577148 -22.2188 5.5 -28.2383 13.9004
c-6.54883 9.10352 -8 21.4902 -4.09961 34.8896l9.07617 31.1934c0.447266 1.45508 1.75391 2.53613 3.32422 2.65332c2.12012 0.101562 4.25 0.164062 6.3916 0.164062z" />
    <glyph glyph-name="guilded" unicode="&#xe07e;" 
d="M443.427 384c0.00195312 -0.518555 0.0253906 -0.367188 0.0253906 -0.885742c0 -29.1934 -2.00293 -57.9229 -5.87891 -86.0576h-336.147s0.366211 -52.0498 27.0918 -105.883c27.458 -51.8174 65.3164 -85.1025 96.5488 -98.3623
c32.2695 15.082 63.4434 41.2695 80.4561 69.4824h-88.5898c-22.9229 18.998 -40.96 50.5146 -45.0996 86.9443h259.889c-12.8154 -58.5713 -40.0088 -111.838 -65.916 -145.762c-35.8154 -46.7773 -84.2695 -82.8105 -140.55 -103.477
c-1.25586 0 -113.21 33.8652 -177.267 161.642c-21.2266 42.2988 -43.418 119.099 -43.418 222.358h438.855z" />
    <glyph glyph-name="hive" unicode="&#xe07f;" horiz-adv-x="512" 
d="M260.353 193.122c0.191406 -0.329102 0.300781 -0.716797 0.300781 -1.12402c0 -0.404297 -0.107422 -0.783203 -0.294922 -1.11133l-127.412 -221.777c-0.380859 -0.666992 -1.09473 -1.11621 -1.91602 -1.11621c-0.818359 0 -1.53223 0.445312 -1.91406 1.10645
l-128.816 221.778c-0.189453 0.328125 -0.297852 0.713867 -0.297852 1.12012s0.108398 0.787109 0.297852 1.11523l127.409 221.777c0.380859 0.666016 1.09473 1.11523 1.91602 1.11523c0.817383 0 1.53125 -0.445312 1.91309 -1.10547zM299.431 218.835l-110.624 193.824
c-0.189453 0.327148 -0.298828 0.709961 -0.298828 1.11523c0 1.21973 0.983398 2.21094 2.19922 2.22559h66.5078c0.81543 -0.00195312 1.52539 -0.447266 1.90039 -1.11133l110.625 -193.823c0.189453 -0.328125 0.298828 -0.709961 0.298828 -1.11523
c0 -1.21973 -0.983398 -2.21191 -2.19922 -2.22656h-66.5088c-0.81543 0.00292969 -1.52441 0.448242 -1.90039 1.11133zM511.7 193.114c0.1875 -0.328125 0.294922 -0.711914 0.294922 -1.11621c0 -0.405273 -0.107422 -0.78418 -0.294922 -1.1123l-126.808 -221.773
c-0.376953 -0.664062 -1.08887 -1.11035 -1.90527 -1.1123h-66.6006c-1.21875 0.0117188 -2.20312 1.00684 -2.20312 2.22852c0 0.404297 0.108398 0.78418 0.297852 1.11133l126.171 220.66l-126.168 220.66c-0.189453 0.327148 -0.298828 0.708984 -0.298828 1.11426
c0 1.2207 0.985352 2.21387 2.2041 2.22559h66.6006c0.818359 -0.000976562 1.53125 -0.447266 1.91016 -1.1123zM366.016 163.083c1.2168 -0.0136719 2.19922 -1.00879 2.19922 -2.22852c0 -0.405273 -0.108398 -0.785156 -0.297852 -1.1123l-108.8 -190.631
c-0.375 -0.664062 -1.08496 -1.10938 -1.90039 -1.11133h-66.5088c-1.21582 0.0146484 -2.19824 1.00879 -2.19824 2.22852c0 0.405273 0.108398 0.785156 0.297852 1.1123l108.801 190.631c0.374023 0.664062 1.08398 1.10938 1.89941 1.11133h66.5078z" />
    <glyph glyph-name="innosoft" unicode="&#xe080;" 
d="M422.559 288.29l0.00292969 -190.955c0.0253906 -12.4102 -5.87793 -22.8965 -16.623 -29.5283l-164.527 -94.9951c-5.08008 -3.04102 -11.0938 -4.79004 -17.4404 -4.79004c-6.11523 0 -11.8545 1.62402 -16.8096 4.46387l-118.794 68.583l247.049 142.627v-56
l-150.051 -86.627l32.7227 -18.9004c1.74805 -0.97168 3.78613 -1.52441 5.92676 -1.52441c2.18457 0 4.23633 0.576172 6.01074 1.58691l138.111 79.7441c3.54883 2.08008 5.91992 5.92578 5.91992 10.332v0.0361328v138.281l-308.407 -178.066
c-3.94629 -2.25293 -8.57129 -3.54102 -13.4365 -3.54102c-4.83301 0 -9.37207 1.27051 -13.2998 3.49609c-8.39453 4.75586 -13.3037 13.293 -13.4736 23.4287v191.5c0.518555 12.7334 6.65527 23.0039 17.2891 29.124l164.601 95.0254
c11.5 5.98535 22.8076 5.85938 33.7998 -0.269531l118.513 -68.4072l-247.061 -142.637v56l150.062 86.6367l-32.6553 18.8525c-1.76367 0.998047 -3.82715 1.56738 -5.99609 1.56738c-2.15137 0 -4.17285 -0.55957 -5.92578 -1.54199l-138.076 -79.7129
c-3.60352 -2.04785 -6.02734 -5.90723 -6.04688 -10.3398v-138.387l308.539 178.142c3.88281 2.24414 8.44531 3.5293 13.25 3.5293c4.70801 0 9.13086 -1.23438 12.9609 -3.39648c8.16406 -4.63184 13.6914 -13.3291 13.8652 -23.3369z" />
    <glyph glyph-name="instalod" unicode="&#xe081;" horiz-adv-x="512" 
d="M153.384 -32l50.8447 146.789l298.325 57.4463l-115.44 -204.235h-233.729zM504.726 207.922l-144.495 -27.8223l-204.562 235.9h231.444zM124.386 399.191l101.241 -116.752l-102.391 -295.594l-115.962 205.154z" />
    <glyph glyph-name="octopus-deploy" unicode="&#xe082;" horiz-adv-x="512" 
d="M455.6 98.7998c12.4395 -10.5996 42.6348 -26.4775 42.5244 -45.2666c-0.15332 -24.6084 -48.4248 5.24121 -53.8184 9.51953c6.13965 -10.7275 66.998 -74.1787 28.2627 -78.6943c-35.6562 -4.1582 -67.1406 45.6416 -88.5615 67.0225
c-36 35.9082 -29.7373 -43.5332 -29.8994 -59.9443c-0.257812 -25.9082 -18.5586 -78.4209 -51.4121 -44.2207c-27.1387 28.2314 -16.873 73.2607 -35.7383 104.622c-20.6641 34.3535 -55.0361 -34.3535 -63.627 -46.9258
c-9.59668 -14.042 -57.6094 -82.041 -76.709 -45.8125c-15.499 29.4004 9.2793 75.5127 21.4629 102.103c-4.44336 -9.65723 -35.9297 -23.9414 -45.1299 -28.5879c-20.7871 -10.4971 -41.8867 -16.7256 -65.2646 -15.0449
c-27.8916 2.00098 -38.3789 11.6572 8.42773 41.8574c38.5615 24.8389 83.8613 67.4209 66.6621 117.582c-9.37305 27.3301 -22.3574 50.7568 -24.0898 80.2998c-0.209961 3.56152 -0.25 7.08008 -0.25 10.6924c0 22.0957 3.9707 43.2715 11.2373 62.8516
c34.5752 92.8066 137.363 136.747 230.253 108.848c86.0371 -25.8398 145.23 -125.74 109.575 -212.79c-20.5752 -50.2334 -29.7959 -89.0205 16.0947 -128.11z" />
    <glyph glyph-name="perbyte" unicode="&#xe083;" 
d="M305.314 163.422c15.9307 0.000976562 28.5732 -4.5 37.9277 -13.5059s14.0322 -20.7842 14.0322 -35.335c0 -14.8936 -4.58984 -26.9307 -13.7705 -36.1113c-9.17969 -9.17969 -21.9111 -13.7695 -38.1934 -13.7695h-58.7109v98.7217h58.7148zM149.435 319.301
c15.9346 0.00488281 28.5791 -4.49609 37.9316 -13.5039s14.0283 -20.7871 14.0283 -35.3379c0 -14.8896 -4.58984 -26.9258 -13.7695 -36.1084c-9.17969 -9.18164 -21.9102 -13.7725 -38.1904 -13.7725h-58.7109v98.7227h58.7109zM366.648 416.002
c22.4385 -0.0253906 41.5996 -7.98145 57.4854 -23.8672s23.8418 -35.0479 23.8672 -57.4854v-285.296c-0.0253906 -22.4375 -7.98145 -41.5996 -23.8672 -57.4854s-35.0479 -23.8418 -57.4854 -23.8672h-285.295c-22.4385 0.0253906 -41.6006 7.98145 -57.4863 23.8672
s-23.8418 35.0479 -23.8672 57.4863v285.296c0.0253906 22.4375 7.98145 41.5996 23.8672 57.4854s35.0479 23.8408 57.4863 23.8662h285.295zM430.282 49.3535l-0.000976562 285.296c-0.0195312 17.5518 -6.24219 32.54 -18.668 44.9658s-27.4141 18.6484 -44.9648 18.668
h-285.295c-17.5508 -0.0195312 -32.5391 -6.24219 -44.9648 -18.668s-18.6484 -27.4141 -18.668 -44.9658v-285.296c0.0195312 -17.5508 6.24219 -32.5391 18.668 -44.9648s27.4141 -18.6484 44.9648 -18.668h285.295c17.5518 0.0195312 32.54 6.24219 44.9658 18.668
s18.6484 27.4141 18.668 44.9648zM305.313 319.301c15.9307 0.00488281 28.5732 -4.49609 37.9277 -13.5039s14.0322 -20.7871 14.0322 -35.3379c0 -14.8896 -4.58984 -26.9258 -13.7705 -36.1084c-9.17969 -9.18164 -21.9111 -13.7725 -38.1934 -13.7725h-58.7109v98.7227
h58.7148z" />
    <glyph glyph-name="uncharted" unicode="&#xe084;" 
d="M171.73 215.187c-0.0605469 -0.00195312 -0.12207 -0.000976562 -0.183594 -0.000976562c-0.673828 0 -1.3125 0.148438 -1.88672 0.414062l-115.933 67.9004v-85.2891c-0.0830078 -2.71289 -1.16895 -5.18555 -2.89941 -7.03906
c-1.6748 -1.54297 -3.91113 -2.4873 -6.36621 -2.4873c-0.0859375 0 -0.172852 0.000976562 -0.258789 0.00390625c-0.146484 -0.0078125 -0.296875 -0.00585938 -0.444336 -0.00585938c-1.65332 0 -3.2002 0.455078 -4.52344 1.24707l-22.3584 12.835
c-2.9541 1.50684 -4.9707 4.57031 -4.9707 8.1123c0 0.0566406 0.000976562 0.112305 0.00195312 0.168945v115.107c0.118164 3.54102 2.08105 6.61523 4.96875 8.28027l100.2 57.9668c1.40625 0.787109 3.04688 1.23535 4.77148 1.23535s3.3457 -0.448242 4.75098 -1.23535
l22.3584 -12.8389c2.9541 -1.50586 4.96973 -4.56934 4.96973 -8.11035c0 -0.0566406 -0.000976562 -0.113281 -0.00195312 -0.169922c-0.117188 -3.54199 -2.08008 -6.61523 -4.96777 -8.28125l-74.5293 -43.4727l116.757 -68.3184
c1.16016 -0.680664 1.96191 -1.89941 2.07129 -3.31152c0 -1.65723 -0.414062 -3.31348 -1.65723 -4.1416c-7.34473 -6.5459 -12.6475 -15.3301 -14.8994 -25.2559c-0.810547 -1.94629 -2.72949 -3.31348 -4.96777 -3.31348h-0.00195312zM323.272 70.2695
c4.96777 0 9.52734 -4.55469 10.3506 -9.1084v-26.085c-0.117188 -3.54199 -2.08105 -6.61523 -4.96777 -8.28125l-100.2 -57.5527c-1.48633 -0.772461 -3.18359 -1.22363 -4.96875 -1.24219c-0.146484 -0.00683594 -0.296875 -0.00488281 -0.444336 -0.00488281
c-1.65332 0 -3.2002 0.455078 -4.52441 1.24707l-100.199 57.5527c-2.95508 1.50586 -4.9707 4.56934 -4.9707 8.11035c0 0.0576172 0 0.114258 0.000976562 0.170898v26.085c0.0585938 5.22852 4.29492 9.46484 9.52344 9.52246
c0.146484 0.0078125 0.296875 0.00585938 0.444336 0.00585938c1.65332 0 3.20117 -0.456055 4.52441 -1.24707l74.5293 -43.0615v133.323c0.0615234 2.62891 2.21387 4.74609 4.85742 4.74609c0.469727 0 0.922852 -0.0673828 1.35254 -0.191406
c4.39453 -1.18066 8.99414 -1.80664 13.7588 -1.80664c5.29102 0 10.4023 0.776367 15.2256 2.2207c3.31055 1.24512 6.21094 -1.65527 6.21094 -4.55469v-134.152l74.5273 43.0625c1.50684 0.730469 3.2002 1.17383 4.96973 1.24121zM286.007 370
c-12.6943 0 -23 10.3057 -23 23s10.3057 23 23 23s23 -10.3057 23 -23s-10.3057 -23 -23 -23zM349.634 380.086c12.6943 0 23 -10.3057 23 -23s-10.3057 -23 -23 -23c-12.6934 0 -23 10.3057 -23 23s10.3066 23 23 23zM412.816 296.4c-12.6943 0 -23 10.3057 -23 23
c0 12.6934 10.3057 23 23 23c12.6934 0 23 -10.3066 23 -23c0 -12.6943 -10.3066 -23 -23 -23zM349.634 305.6c12.6943 0 23 -10.3057 23 -23c0 -12.6934 -10.3057 -23 -23 -23c-12.6934 0 -23 10.3066 -23 23c0 12.6943 10.3066 23 23 23zM286.007 222.356
c-12.6943 0 -23 10.3018 -23 22.9951v0.00488281c0 12.6934 10.3057 23 23 23s23 -10.3066 23 -23c0 -12.6943 -10.3057 -23 -23 -23zM223.933 185.998c-12.6934 0 -23 10.3018 -23 22.9961v0.00390625c0 12.6943 10.3066 23 23 23c12.6943 0 23 -10.3057 23 -23
s-10.3057 -23 -23 -23zM412.816 268.356c12.6924 0 22.9971 -10.3086 23 -23c0 -12.6943 -10.3066 -23 -23 -23c-12.6943 0 -23 10.3057 -23 23c0 12.6934 10.3057 23 23 23zM412.816 196.084c12.6924 0 22.9971 -10.3076 23 -23c0 -12.6943 -10.3066 -23 -23 -23
c-12.6943 0 -23 10.3057 -23 23s10.3057 23 23 23z" />
    <glyph glyph-name="watchman-monitoring" unicode="&#xe087;" horiz-adv-x="512" 
d="M256 432c132.548 0 240 -107.452 240 -240s-107.452 -240 -240 -240s-240 107.452 -240 240s107.452 240 240 240zM121.69 18.8779l27.6846 204.861l-9.46777 7.39941c-2.98242 2.34082 -4.89062 5.9668 -4.89062 10.0479
c0 0.100586 0.000976562 0.201172 0.00292969 0.301758c0 7.04883 0.144531 19.5488 0.144531 19.5488l13.9434 2.0127l0.120117 10.9668l-102.899 -17.8945c-6.20508 -20.251 -9.58691 -41.7412 -9.58691 -64.0137v-0.108398c0 -70.3223 33.3145 -132.972 84.9492 -173.122
zM227.382 302.148l0.0400391 -3.61816l193.512 37.7002c-40.1152 46.0273 -99.1426 75.0244 -164.934 75.0244c-74.4863 0 -140.374 -37.3623 -180.018 -94.2998l73.5068 -19.1758l0.0478516 4.36914l-8.48145 7.61719s-6.93359 5.38086 0.144531 9.34473
c7.18652 4.02539 39.5283 34.5 39.5283 34.5c7.20312 7.34668 10.1123 5.47656 15.4609 0c0 0 32.3418 -30.4766 39.5293 -34.5c7.07715 -3.96387 0.143555 -9.34473 0.143555 -9.34473zM261.445 -27.1211c118.386 2.90918 213.813 100.047 213.813 219.121
c-0.0107422 17.2881 -2.04297 33.9951 -5.85059 50.1299l-241.711 31.3916l0.116211 -10.4746l13.9424 -2.0127s0.144531 -12.5049 0.144531 -19.5488c0.00195312 -0.100586 0.0126953 -0.19043 0.0126953 -0.290039c0 -4.08203 -1.91797 -7.71973 -4.90137 -10.0596
l-9.4668 -7.39941z" />
    <glyph glyph-name="wodu" unicode="&#xe088;" horiz-adv-x="640" 
d="M178.414 108.294h-37.3145l-28.9336 116.231h-0.477539l-28.4609 -116.231h-38.0273l-45.2002 170.76h37.5479l27.0264 -116.23h0.477539l29.6553 116.23h35.1572l29.1777 -117.667h0.479492l27.9785 117.667h36.8311zM271.4 235.287
c38.9834 0 64.0996 -25.8281 64.0996 -65.291c0 -39.2217 -25.1113 -65.0498 -64.0996 -65.0498c-38.7432 0 -63.8555 25.8281 -63.8555 65.0498c0.00195312 39.4629 25.1143 65.291 63.8555 65.291zM271.4 130.534c23.1992 0 30.1328 19.8516 30.1328 39.4619
c0 19.8516 -6.93457 39.7002 -30.1328 39.7002c-27.7002 0 -29.8945 -19.8506 -29.8945 -39.7002c0.00195312 -19.6104 6.9375 -39.4619 29.8945 -39.4619zM435.084 124.078h-0.477539c-7.89355 -13.3926 -21.7656 -19.1318 -37.5488 -19.1318
c-37.3096 0 -55.4844 32.0449 -55.4844 66.2461c0 33.2422 18.415 64.0947 54.7666 64.0947c14.5889 0 28.9385 -6.21777 36.8311 -18.416h0.240234v62.1826h33.96v-170.76h-32.2871v15.7842zM405.428 209.7c-22.2393 0 -29.8936 -19.1338 -29.8936 -39.4629
c0 -19.3711 8.84766 -39.7002 29.8936 -39.7002c22.4824 0 29.1787 19.6133 29.1787 39.9395c0 20.0879 -7.1748 39.2236 -29.1787 39.2236zM592.96 108.294h-32.2871v17.2188h-0.717773c-8.60938 -13.8701 -23.4365 -20.5664 -37.7861 -20.5664
c-36.1133 0 -45.2002 20.3281 -45.2002 50.9404v76.0527h33.959v-69.8398c0 -20.3281 5.97949 -30.3721 21.7656 -30.3721c18.415 0 26.3057 10.2832 26.3057 35.3936v64.8184h33.9609v-123.646zM602.453 145.124h37.5469v-36.8301h-37.5469v36.8301z" />
    <glyph glyph-name="twitter-square" unicode="&#xf081;" 
d="M400 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h352zM351.1 257.2c12.8008 9.2998 24 20.8994 32.9004 34c-11.7998 -5.10059 -24.5996 -8.7998 -37.7998 -10.2002
c13.5996 8.09961 23.8994 20.9004 28.7998 36.0996c-12.5996 -7.5 -26.7998 -13 -41.5996 -15.7998c-12 12.7998 -29 20.7002 -47.9004 20.7002c-40 0 -73.2998 -36.0996 -64 -80.5996c-54.4004 2.7998 -102.9 28.7998 -135.2 68.5996
c-5.7002 -9.7002 -8.89941 -20.9004 -8.89941 -33.0996c0 -0.0371094 -0.0664062 -0.0322266 -0.0664062 -0.0683594c0 -22.749 11.6309 -42.8018 29.2656 -54.5322c-10.6992 0.400391 -20.8994 3.40039 -29.5996 8.2998v-0.799805c0 -31.8994 22.5 -58.2998 52.5 -64.3994
c-10.4004 -2.7002 -19.5 -2.7002 -29.5996 -1.2002c8.2998 -26 32.5 -44.9004 61.2998 -45.5c-22.5 -17.6006 -50.7002 -28 -81.4004 -28c-5.39941 0 -10.5 0.200195 -15.7998 0.799805c29 -18.5996 63.5 -29.4004 100.7 -29.4004c120.6 0 186.6 99.9004 186.6 186.601
c0 2.7998 0 5.7002 -0.200195 8.5z" />
    <glyph glyph-name="facebook-square" unicode="&#xf082;" 
d="M400 416c26.4922 0 48 -21.5078 48 -48v-352c0 -26.4922 -21.5078 -48 -48 -48h-137.25v152.31h57.7803l11 71.6904h-68.7803v46.5498c0 19.6104 9.61035 38.7305 40.4199 38.7305h31.2705v61s-28.3809 4.83984 -55.5205 4.83984
c-56.6699 0 -93.6699 -34.3301 -93.6699 -96.4805v-54.6396h-63v-71.6904h63v-152.31h-137.25c-26.4922 0 -48 21.5078 -48 48v352c0 26.4922 21.5078 48 48 48h352z" />
    <glyph glyph-name="linkedin" unicode="&#xf08c;" 
d="M416 416c17.5996 0 32 -14.5 32 -32.2998v-383.4c0 -17.7998 -14.4004 -32.2998 -32 -32.2998h-384.1c-17.6006 0 -31.9004 14.5 -31.9004 32.2998v383.4c0 17.7998 14.2998 32.2998 31.9004 32.2998h384.1zM135.4 32h0.0996094v213.8h-66.5v-213.8h66.4004zM102.2 275
c21.2998 0 38.5 17.2002 38.5 38.5c0 21.2002 -17.2998 38.5 -38.5 38.5c-21.2998 0 -38.5 -17.2998 -38.5 -38.5s17.2002 -38.5 38.5 -38.5zM384.3 32v117.2c0 57.5996 -12.5 101.899 -79.7002 101.899c-32.2998 0 -54 -17.6992 -62.8994 -34.5h-0.900391v29.2002h-63.7002
v-213.8h66.4004v105.8c0 27.9004 5.2998 54.9004 39.9004 54.9004c34 0 34.5 -31.9004 34.5 -56.7002v-104h66.3994z" />
    <glyph glyph-name="github-square" unicode="&#xf092;" 
d="M400 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h352zM277.3 32.2998c66 22 110.8 84.9004 110.7 158.3c0 91.8008 -74.4004 161.5 -166.2 161.5s-162 -69.6992 -162 -161.5
c0 -73.3994 46.2002 -136.199 112.2 -158.3c8.5 -1.5 11.5 3.7002 11.5 8c0 4.10059 -0.200195 26.7002 -0.200195 40.6006c0 0 -46.3994 -10 -56.0996 19.6992c0 0 -7.60059 19.2002 -18.4004 24.2002c0 0 -15.0996 10.4004 1.10059 10.2002
c0 0 16.3994 -1.2998 25.5 -17.0996c14.5 -25.6006 38.7998 -18.2002 48.2998 -13.9004c1.5 10.5996 5.7998 18 10.5996 22.2998c-37 4.10059 -74.2998 9.5 -74.2998 73.1006c0 18.1992 5 27.2998 15.5996 39c-1.7998 4.39941 -7.39941 22.0996 1.7002 45
c13.9004 4.2998 45.7002 -17.9004 45.7002 -17.9004c13.2002 3.7002 27.5 5.59961 41.5996 5.59961c14.1006 0 28.4004 -1.89941 41.6006 -5.59961c0 0 31.7998 22.2002 45.7002 17.9004c9.09961 -23 3.39941 -40.7002 1.69922 -45
c10.6006 -11.7002 17.1006 -20.8008 17.1006 -39c0 -63.9004 -39 -69 -76 -73.1006c6.09961 -5.2002 11.2998 -15.0996 11.2998 -30.7002c0 -22.2998 -0.200195 -49.8994 -0.200195 -55.2998c0 -4.2998 3.10059 -9.5 11.5 -8zM179.2 93.4004
c-1.90039 -0.400391 -3.7002 0.399414 -3.90039 1.69922c-0.200195 1.5 1.10059 2.80078 3 3.2002c1.90039 0.200195 3.7002 -0.599609 3.90039 -1.89941c0.299805 -1.30078 -1 -2.60059 -3 -3zM169.7 94.2998c0 1.5 -1.7998 2.60059 -3.7002 2.40039
c-2 0 -3.5 -1.10059 -3.5 -2.40039c0 -1.5 1.5 -2.59961 3.7002 -2.39941c2 0 3.5 1.09961 3.5 2.39941zM156 95.4004c-0.400391 -1.30078 -2.40039 -1.90039 -4.09961 -1.30078c-1.90039 0.400391 -3.2002 1.90039 -2.80078 3.2002
c0.400391 1.2998 2.40039 1.90039 4.10059 1.5c2 -0.599609 3.2998 -2.09961 2.7998 -3.39941zM143.7 100.8c0.899414 0.799805 0.399414 2.7998 -0.900391 4.10059c-1.5 1.5 -3.39941 1.69922 -4.2998 0.599609c-1 -0.900391 -0.599609 -2.7998 0.900391 -4.09961
c1.5 -1.5 3.39941 -1.7002 4.2998 -0.600586zM134.6 109.9c1.10059 0.799805 1.10059 2.59961 0 4.09961c-0.899414 1.5 -2.59961 2.2002 -3.69922 1.2998c-1.10059 -0.700195 -1.10059 -2.39941 0 -3.89941c1.09961 -1.5 2.7998 -2.10059 3.69922 -1.5zM128.1 119.6
c0.900391 0.700195 0.700195 2.2002 -0.399414 3.5c-1.10059 1 -2.60059 1.5 -3.5 0.600586c-0.900391 -0.700195 -0.700195 -2.2002 0.399414 -3.5c1.10059 -1 2.60059 -1.5 3.5 -0.600586zM121.4 127c0.399414 0.799805 -0.200195 1.90039 -1.5 2.59961
c-1.30078 0.5 -2.40039 0.200195 -2.80078 -0.399414c-0.399414 -0.900391 0.200195 -2 1.5 -2.60059c1.10059 -0.699219 2.40039 -0.5 2.80078 0.400391z" />
    <glyph glyph-name="twitter" unicode="&#xf099;" horiz-adv-x="512" 
d="M459.37 296.284c0.325195 -4.54785 0.325195 -9.09766 0.325195 -13.6455c0 -138.72 -105.583 -298.558 -298.559 -298.558c-59.4521 0 -114.68 17.2188 -161.137 47.1055c8.44727 -0.973633 16.5684 -1.29883 25.3398 -1.29883
c49.0547 0 94.2129 16.5684 130.274 44.832c-46.1318 0.975586 -84.792 31.1885 -98.1123 72.7725c6.49805 -0.974609 12.9951 -1.62402 19.8184 -1.62402c9.4209 0 18.8428 1.2998 27.6133 3.57324c-48.0811 9.74707 -84.1426 51.9795 -84.1426 102.984v1.29883
c13.9688 -7.79688 30.2139 -12.6699 47.4307 -13.3184c-28.2637 18.8428 -46.7803 51.0049 -46.7803 87.3906c0 19.4922 5.19629 37.3604 14.2939 52.9541c51.6543 -63.6748 129.3 -105.258 216.364 -109.807c-1.62402 7.79688 -2.59863 15.918 -2.59863 24.04
c0 57.8271 46.7822 104.934 104.934 104.934c30.2139 0 57.502 -12.6699 76.6709 -33.1367c23.7148 4.54785 46.4551 13.3193 66.5986 25.3398c-7.79785 -24.3662 -24.3662 -44.833 -46.1318 -57.8271c21.1172 2.27344 41.584 8.12207 60.4258 16.2432
c-14.292 -20.791 -32.1611 -39.3086 -52.6279 -54.2529z" />
    <glyph glyph-name="facebook" unicode="&#xf09a;" horiz-adv-x="512" 
d="M504 192c0 -123.78 -90.6904 -226.38 -209.25 -245v173.31h57.7803l11 71.6904h-68.7803v46.5498c0 19.6104 9.61035 38.7305 40.4102 38.7305h31.2803v61s-28.3809 4.83984 -55.5205 4.83984c-56.6699 0 -93.6699 -34.3301 -93.6699 -96.4805v-54.6396h-63v-71.6904h63
v-173.31c-118.56 18.6201 -209.25 121.22 -209.25 245c0 137 111 248 248 248s248 -111 248 -248z" />
    <glyph glyph-name="github" unicode="&#xf09b;" horiz-adv-x="496" 
d="M165.9 50.5996c0 -2 -2.30078 -3.59961 -5.2002 -3.59961c-3.2998 -0.299805 -5.60059 1.2998 -5.60059 3.59961c0 2 2.30078 3.60059 5.2002 3.60059c3 0.299805 5.60059 -1.2998 5.60059 -3.60059zM134.8 55.0996c0.700195 2 3.60059 3 6.2002 2.30078
c3 -0.900391 4.90039 -3.2002 4.2998 -5.2002c-0.599609 -2 -3.59961 -3 -6.2002 -2c-3 0.599609 -5 2.89941 -4.2998 4.89941zM179 56.7998c2.90039 0.299805 5.59961 -1 5.90039 -2.89941c0.299805 -2 -1.7002 -3.90039 -4.60059 -4.60059
c-3 -0.700195 -5.59961 0.600586 -5.89941 2.60059c-0.300781 2.2998 1.69922 4.19922 4.59961 4.89941zM244.8 440c138.7 0 251.2 -105.3 251.2 -244c0 -110.9 -67.7998 -205.8 -167.8 -239c-12.7002 -2.2998 -17.2998 5.59961 -17.2998 12.0996
c0 8.2002 0.299805 49.9004 0.299805 83.6006c0 23.5 -7.7998 38.5 -17 46.3994c55.8994 6.30078 114.8 14 114.8 110.5c0 27.4004 -9.7998 41.2002 -25.7998 58.9004c2.59961 6.5 11.0996 33.2002 -2.60059 67.9004c-20.8994 6.59961 -69 -27 -69 -27
c-20 5.59961 -41.5 8.5 -62.7998 8.5s-42.7998 -2.90039 -62.7998 -8.5c0 0 -48.0996 33.5 -69 27c-13.7002 -34.6006 -5.2002 -61.4004 -2.59961 -67.9004c-16 -17.5996 -23.6006 -31.4004 -23.6006 -58.9004c0 -96.1992 56.4004 -104.3 112.3 -110.5
c-7.19922 -6.59961 -13.6992 -17.6992 -16 -33.6992c-14.2998 -6.60059 -51 -17.7002 -72.8994 20.8994c-13.7002 23.7998 -38.6006 25.7998 -38.6006 25.7998c-24.5 0.300781 -1.59961 -15.3994 -1.59961 -15.3994c16.4004 -7.5 27.7998 -36.6006 27.7998 -36.6006
c14.7002 -44.7998 84.7002 -29.7998 84.7002 -29.7998c0 -21 0.299805 -55.2002 0.299805 -61.3994c0 -6.5 -4.5 -14.4004 -17.2998 -12.1006c-99.7002 33.4004 -169.5 128.3 -169.5 239.2c0 138.7 106.1 244 244.8 244zM97.2002 95.0996
c1.2998 1.30078 3.59961 0.600586 5.2002 -1c1.69922 -1.89941 2 -4.19922 0.699219 -5.19922c-1.2998 -1.30078 -3.59961 -0.600586 -5.19922 1c-1.7002 1.89941 -2 4.19922 -0.700195 5.19922zM86.4004 103.2c0.699219 1 2.2998 1.2998 4.2998 0.700195
c2 -1 3 -2.60059 2.2998 -3.90039c-0.700195 -1.40039 -2.7002 -1.7002 -4.2998 -0.700195c-2 1 -3 2.60059 -2.2998 3.90039zM118.8 67.5996c1.2998 1.60059 4.2998 1.30078 6.5 -1c2 -1.89941 2.60059 -4.89941 1.2998 -6.19922
c-1.2998 -1.60059 -4.19922 -1.30078 -6.5 1c-2.2998 1.89941 -2.89941 4.89941 -1.2998 6.19922zM107.4 82.2998c1.59961 1.2998 4.19922 0.299805 5.59961 -2c1.59961 -2.2998 1.59961 -4.89941 0 -6.2002c-1.2998 -1 -4 0 -5.59961 2.30078
c-1.60059 2.2998 -1.60059 4.89941 0 5.89941z" />
    <glyph glyph-name="pinterest" unicode="&#xf0d2;" horiz-adv-x="496" 
d="M496 192c0 -137 -111 -248 -248 -248c-25.5996 0 -50.2002 3.90039 -73.4004 11.0996c10.1006 16.5 25.2002 43.5 30.8008 65c3 11.6006 15.3994 59 15.3994 59c8.10059 -15.3994 31.7002 -28.5 56.7998 -28.5c74.8008 0 128.7 68.8008 128.7 154.301
c0 81.8994 -66.8994 143.199 -152.899 143.199c-107 0 -163.9 -71.7998 -163.9 -150.1c0 -36.4004 19.4004 -81.7002 50.2998 -96.0996c4.7002 -2.2002 7.2002 -1.2002 8.2998 3.2998c0.800781 3.39941 5 20.2998 6.90039 28.0996
c0.599609 2.5 0.299805 4.7002 -1.7002 7.10059c-10.0996 12.5 -18.2998 35.2998 -18.2998 56.5996c0 54.7002 41.4004 107.6 112 107.6c60.9004 0 103.6 -41.5 103.6 -100.899c0 -67.1006 -33.8994 -113.601 -78 -113.601c-24.2998 0 -42.5996 20.1006 -36.6992 44.8008
c7 29.5 20.5 61.2998 20.5 82.5996c0 19 -10.2002 34.9004 -31.4004 34.9004c-24.9004 0 -44.9004 -25.7002 -44.9004 -60.2002c0 -22 7.40039 -36.7998 7.40039 -36.7998s-24.5 -103.801 -29 -123.2c-5 -21.4004 -3 -51.6006 -0.900391 -71.2002
c-92.1992 36.0996 -157.6 125.9 -157.6 231c0 137 111 248 248 248s248 -111 248 -248z" />
    <glyph glyph-name="pinterest-square" unicode="&#xf0d3;" 
d="M448 368v-352c0 -26.5 -21.5 -48 -48 -48h-245.6c9.7998 16.4004 22.3994 40 27.3994 59.2998c3 11.5 15.2998 58.4004 15.2998 58.4004c8 -15.2998 31.4004 -28.2002 56.3008 -28.2002c74.0996 0 127.399 68.0996 127.399 152.7
c0 81.0996 -66.2002 141.8 -151.399 141.8c-106 0 -162.2 -71.0996 -162.2 -148.6c0 -36 19.2002 -80.8008 49.7998 -95.1006c4.7002 -2.2002 7.09961 -1.2002 8.2002 3.2998c0.799805 3.40039 5 20.1006 6.7998 27.8008c0.599609 2.5 0.299805 4.59961 -1.7002 7
c-10.0996 12.2998 -18.2998 34.8994 -18.2998 56c0 54.1992 41 106.6 110.9 106.6c60.2998 0 102.6 -41.0996 102.6 -99.9004c0 -66.3994 -33.5 -112.399 -77.2002 -112.399c-24.0996 0 -42.0996 19.8994 -36.3994 44.3994c6.89941 29.2002 20.2998 60.7002 20.2998 81.8008
c0 53 -75.5 45.6992 -75.5 -25c0 -21.7002 7.2998 -36.5 7.2998 -36.5c-31.4004 -132.801 -36.0996 -134.5 -29.5996 -192.601l2.19922 -0.799805h-88.5996c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h352c26.5 0 48 -21.5 48 -48z" />
    <glyph glyph-name="google-plus-square" unicode="&#xf0d4;" 
d="M400 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h352zM164 92c57.7002 0 96 40.5 96 97.5996c0 6.5 -0.599609 11.6006 -1.59961 16.6006h-94.4004v-34.4004h56.9004
c-2.40039 -14.5996 -17.2002 -43.0996 -56.8008 -43.0996c-34.0996 0 -61.8994 28.2998 -61.8994 63.2002c0 35 27.7998 63.1992 61.8994 63.1992c19.5 0 32.4004 -8.2998 39.8008 -15.3994l27.0996 26.0996c-17.5 16.4004 -40 26.2002 -67 26.2002
c-55.2998 0 -100 -44.7002 -100 -100s44.7002 -100 100 -100zM384 173.8v29.2002h-29v29h-29.2002v-29h-29v-29.2002h29v-29h29.2002v29h29z" />
    <glyph glyph-name="google-plus-g" unicode="&#xf0d5;" horiz-adv-x="640" 
d="M386.061 219.504c1.83398 -9.69238 3.14355 -19.3838 3.14355 -31.9561c0 -109.753 -73.6055 -187.548 -184.404 -187.548c-106.084 0 -192 85.915 -192 192s85.916 192 192 192c51.8643 0 95.083 -18.8594 128.611 -50.292l-52.126 -50.0303
c-14.1455 13.6211 -39.0283 29.5996 -76.4854 29.5996c-65.4834 0 -118.92 -54.2217 -118.92 -121.277s53.4365 -121.277 118.92 -121.277c75.9609 0 104.514 54.7451 108.965 82.7734h-108.965v66.0088h181.261v-0.000976562zM571.467 213.067h55.7334v-56.001h-55.7334
v-55.7334h-56.001v55.7334h-55.7324v56.001h55.7324v55.7324h56.001v-55.7324z" />
    <glyph glyph-name="linkedin-in" unicode="&#xf0e1;" 
d="M100.28 0h-92.8799v299.1h92.8799v-299.1zM53.79 339.9c-29.7002 0 -53.79 24.5996 -53.79 54.2998c0 29.6875 24.1025 53.79 53.79 53.79s53.79 -24.1025 53.79 -53.79c0 -29.7002 -24.0996 -54.2998 -53.79 -54.2998zM447.9 0h-92.6807v145.6
c0 34.7002 -0.700195 79.2002 -48.29 79.2002c-48.29 0 -55.6895 -37.7002 -55.6895 -76.7002v-148.1h-92.7803v299.1h89.0801v-40.7998h1.2998c12.4004 23.5 42.6904 48.2998 87.8799 48.2998c94 0 111.28 -61.8994 111.28 -142.3v-164.3h-0.0996094z" />
    <glyph glyph-name="github-alt" unicode="&#xf113;" horiz-adv-x="480" 
d="M186.1 119.3c0 -20.8994 -10.8994 -55.0996 -36.6992 -55.0996c-25.8008 0 -36.7002 34.2002 -36.7002 55.0996c0 20.9004 10.8994 55.1006 36.7002 55.1006c25.7998 0 36.6992 -34.2002 36.6992 -55.1006zM480 169.8c0 -31.8994 -3.2002 -65.7002 -17.5 -95
c-37.9004 -76.5996 -142.1 -74.7998 -216.7 -74.7998c-75.7998 0 -186.2 -2.7002 -225.6 74.7998c-14.6006 29 -20.2002 63.1006 -20.2002 95c0 41.9004 13.9004 81.5 41.5 113.601c-5.2002 15.7998 -7.7002 32.3994 -7.7002 48.7998
c0 21.5 4.90039 32.2998 14.6006 51.7998c45.2998 0 74.2998 -9 108.8 -36c29 6.90039 58.7998 10 88.7002 10c27 0 54.1992 -2.90039 80.3994 -9.2002c34 26.7002 63 35.2002 107.8 35.2002c9.80078 -19.5 14.6006 -30.2998 14.6006 -51.7998
c0 -16.4004 -2.60059 -32.7002 -7.7002 -48.2002c27.5 -32.4004 39 -72.2998 39 -114.2zM415.7 119.3c0 43.9004 -26.7002 82.6006 -73.5 82.6006c-18.9004 0 -37 -3.40039 -56 -6c-14.9004 -2.30078 -29.7998 -3.2002 -45.1006 -3.2002
c-15.1992 0 -30.0996 0.899414 -45.0996 3.2002c-18.7002 2.59961 -37 6 -56 6c-46.7998 0 -73.5 -38.7002 -73.5 -82.6006c0 -87.7998 80.4004 -101.3 150.4 -101.3h48.1992c70.3008 0 150.601 13.4004 150.601 101.3zM333.1 174.4
c25.8008 0 36.7002 -34.2002 36.7002 -55.1006c0 -20.8994 -10.8994 -55.0996 -36.7002 -55.0996c-25.7998 0 -36.6992 34.2002 -36.6992 55.0996c0 20.9004 10.8994 55.1006 36.6992 55.1006z" />
    <glyph glyph-name="maxcdn" unicode="&#xf136;" horiz-adv-x="512" 
d="M461.1 5.2998h-97.3994l51.8994 242.7c2.30078 10.2002 0.900391 19.5 -4.39941 25.7002c-5 6.09961 -13.7002 9.59961 -24.2002 9.59961h-49.2998l-59.5 -278h-97.4004l59.5 278h-83.3994l-59.5 -278h-97.4004l59.5 278l-44.5996 95.4004h372.1
c39.4004 0 75.2998 -16.2998 98.2998 -44.9004c23.2998 -28.5996 31.7998 -67.3994 23.6006 -105.899z" />
    <glyph glyph-name="html5" unicode="&#xf13b;" horiz-adv-x="384" 
d="M0 416h384l-34.9004 -395.8l-157.6 -52.2002l-156.6 52.2002zM308.2 288.1l4.39941 47.7002h-241.1l12.7998 -145.6h166.9l-6 -62.2002l-53.7002 -14.5l-53.5 14.5l-3.5 38.0996h-47.7002l6 -75.7998l98.7002 -27.2998h1.09961v0.299805l97.9004 27l13.5996 148.4h-175.6
l-4.09961 49.3994h183.8z" />
    <glyph glyph-name="css3" unicode="&#xf13c;" horiz-adv-x="512" 
d="M480 416l-64 -368l-223.3 -80l-192.7 80l19.5996 94.7998h82l-8 -40.5996l116.4 -44.4004l134.1 44.4004l18.8008 97.0996h-333.4l16 82h333.7l10.5 52.7002h-333.4l16.2998 82h407.4z" />
    <glyph glyph-name="btc" unicode="&#xf15a;" horiz-adv-x="384" 
d="M310.204 205.362c46.0059 -11.0283 74.9971 -38.4443 69.3262 -99.8906c-7.24805 -76.5723 -61.5967 -97.0547 -142.896 -101.467v-68.0049h-48.5273v66.7451c-12.29 0 -25.21 0 -38.4443 0.314453v-67.0596h-48.5283v68.0049s-8.88867 0.31543 -97.3701 0.31543
l9.76758 57.666c34.7305 -0.614258 50.3301 -3.4209 53.2549 16.0703v217.43c-4.60645 24.5664 -24.709 22.1045 -63.0234 21.4268v51.6777c58.748 -0.275391 79.5283 -0.539062 97.3701 0v79.4092h48.5283v-77.833c12.9189 0.31543 25.8389 0.629883 38.4443 0.629883
v77.2031h48.5273v-79.4092c62.3926 -5.35547 109.492 -24.5781 114.851 -81.9287c4.09668 -41.9102 -13.5508 -67.1201 -41.2803 -81.2998zM150.608 313.447v-96.7402c27.416 0 113.126 -6.30273 113.126 48.2119c0 57.0352 -85.7109 48.5283 -113.126 48.5283z
M150.608 61.6709c32.7715 0 133.126 -6.93262 133.127 53.2529c0 62.3936 -100.355 53.2549 -133.127 53.2549v-106.508z" />
    <glyph glyph-name="youtube" unicode="&#xf167;" horiz-adv-x="576" 
d="M549.655 323.917c11.4121 -42.8672 11.4121 -132.305 11.4121 -132.305s0 -89.4385 -11.4121 -132.306c-6.28125 -23.6494 -24.7871 -41.5 -48.2842 -47.8203c-42.5908 -11.4863 -213.371 -11.4863 -213.371 -11.4863s-170.78 0 -213.371 11.4863
c-23.4971 6.32031 -42.0029 24.1709 -48.2842 47.8203c-11.4121 42.8672 -11.4121 132.306 -11.4121 132.306s0 89.4375 11.4121 132.305c6.28125 23.6504 24.7871 42.2754 48.2842 48.5967c42.5908 11.4863 213.371 11.4863 213.371 11.4863s170.781 0 213.371 -11.4863
c23.4971 -6.32031 42.0029 -24.9463 48.2842 -48.5967zM232.145 110.409l142.739 81.2012l-142.739 81.2051v-162.406z" />
    <glyph glyph-name="xing" unicode="&#xf168;" horiz-adv-x="384" 
d="M162.7 238c-1.7998 -3.2998 -25.2002 -44.4004 -70.1006 -123.5c-4.89941 -8.2998 -10.7998 -12.5 -17.6992 -12.5h-65.1006c-7.7002 0 -12.0996 7.5 -8.5 14.4004l69 121.3c0.200195 0 0.200195 0.0996094 0 0.299805l-43.8994 75.5996
c-4.30078 7.80078 0.299805 14.1006 8.5 14.1006h65.0996c7.2998 0 13.2998 -4.10059 18 -12.2002zM382.6 401.9l-144 -253v-0.300781l91.6006 -166.6c3.89941 -7.09961 0.200195 -14.0996 -8.5 -14.0996h-65.2002c-7.59961 0 -13.5996 4 -18 12.1992l-92.4004 168.5
c3.30078 5.80078 51.5 90.8008 144.801 255.2c4.59961 8.10059 10.3994 12.2002 17.5 12.2002h65.6992c8 0 12.3008 -6.7002 8.5 -14.0996z" />
    <glyph glyph-name="xing-square" unicode="&#xf169;" 
d="M400 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h352zM140.4 127.8c4.89941 0 9.09961 2.90039 12.5996 9.10059c32.0996 56.5 48.7998 85.8994 50.0996 88.1992l-31.8994 55.3008
c-3.40039 5.7998 -7.7002 8.69922 -12.9004 8.69922h-46.5996c-5.7998 0 -9 -4.5 -6 -10.0996l31.3994 -54c0.100586 -0.0996094 0.100586 -0.200195 0 -0.200195l-49.2998 -86.7002c-2.7002 -5 0.5 -10.2998 6 -10.2998h46.6006zM360.1 341.9
c2.80078 5.2998 -0.299805 10.0996 -6 10h-46.8994c-5.10059 0 -9.2002 -2.90039 -12.5 -8.7002c-66.6006 -117.4 -101.101 -178.2 -103.4 -182.3l66 -120.301c3.2002 -5.7998 7.40039 -8.69922 12.9004 -8.69922h46.5996c6.10059 0 8.7998 5 6 10.0996l-65.5 119v0.200195z
" />
    <glyph glyph-name="dropbox" unicode="&#xf16b;" horiz-adv-x="528" 
d="M264.4 331.7l-132 -84.2998l132 -84.3008l-132 -84.2998l-132.4 85.1006l132.3 84.2998l-132.3 83.5l132.3 84.2998zM131.6 52.2998l132 84.2998l132 -84.2998l-132 -84.2998zM264.4 163.9l132 84.2998l-132 83.5996l131.3 84.2002l132.3 -84.2998l-132.3 -84.2998
l132.3 -84.2002l-132.3 -84.2998z" />
    <glyph glyph-name="stack-overflow" unicode="&#xf16c;" horiz-adv-x="384" 
d="M290.7 137l-8.2002 -39l-195.7 41l8.2002 39.2998zM341.7 224l-25.5 -30.7998l-153.5 128.3l25.5 30.7998zM310.5 184.3l-16.7998 -36.2998l-181.2 84.5l16.7002 36.5zM262 416l119.3 -160.3l-32 -24l-119.3 160.3zM282.5 88v-39.7002h-200v39.7002h200zM322.2 8v120h40
v-160h-359.5v160h40v-120h279.5z" />
    <glyph glyph-name="instagram" unicode="&#xf16d;" 
d="M224.1 307c63.6006 0 114.9 -51.2998 114.9 -114.9c0 -63.5996 -51.2998 -114.899 -114.9 -114.899c-63.5996 0 -114.899 51.2998 -114.899 114.899c0 63.6006 51.2998 114.9 114.899 114.9zM224.1 117.4c41.1006 0 74.7002 33.5 74.7002 74.6992
c0 41.2002 -33.5 74.7002 -74.7002 74.7002c-41.1992 0 -74.6992 -33.5 -74.6992 -74.7002c0 -41.1992 33.5996 -74.6992 74.6992 -74.6992zM370.5 311.7c0 -14.9004 -12 -26.7998 -26.7998 -26.7998c-14.9004 0 -26.7998 12 -26.7998 26.7998s12 26.7998 26.7998 26.7998
s26.7998 -12 26.7998 -26.7998zM446.6 284.5c2.10059 -37 2.10059 -147.8 0 -184.8c-1.7998 -35.9004 -10 -67.7002 -36.1992 -93.9004c-26.2002 -26.2998 -58 -34.5 -93.9004 -36.2002c-37 -2.09961 -147.9 -2.09961 -184.9 0
c-35.8994 1.80078 -67.5996 10 -93.8994 36.2002s-34.5 58 -36.2002 93.9004c-2.09961 37 -2.09961 147.899 0 184.899c1.7998 35.9004 9.90039 67.7002 36.2002 93.9004s58.0996 34.4004 93.8994 36.0996c37 2.10059 147.9 2.10059 184.9 0
c35.9004 -1.7998 67.7002 -10 93.9004 -36.1992c26.2998 -26.2002 34.5 -58 36.1992 -93.9004zM398.8 60c11.7002 29.4004 9 99.5 9 132.1c0 32.6006 2.7002 102.601 -9 132.101c-7.89941 19.7002 -23 34.7998 -42.5996 42.5996c-29.4004 11.6006 -99.5 9 -132.101 9
c-32.5996 0 -102.6 2.7002 -132.1 -9c-19.7002 -7.89941 -34.7998 -23 -42.5996 -42.5996c-11.6006 -29.4004 -9 -99.5 -9 -132.101c0 -32.5996 -2.7002 -102.6 9 -132.1c7.89941 -19.7002 23 -34.7998 42.5996 -42.5996c29.4004 -11.6006 99.5 -9 132.1 -9
c32.6006 0 102.601 -2.7002 132.101 9c19.7002 7.89941 34.7998 23 42.5996 42.5996z" />
    <glyph glyph-name="flickr" unicode="&#xf16e;" 
d="M400 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h352zM144.5 129c35.0996 0 63.5 28.4004 63.5 63.5s-28.4004 63.5 -63.5 63.5s-63.5 -28.4004 -63.5 -63.5s28.4004 -63.5 63.5 -63.5z
M303.5 129c35.0996 0 63.5 28.4004 63.5 63.5s-28.4004 63.5 -63.5 63.5s-63.5 -28.4004 -63.5 -63.5s28.4004 -63.5 63.5 -63.5z" />
    <glyph glyph-name="adn" unicode="&#xf170;" horiz-adv-x="496" 
d="M248 280.5l64.9004 -98.7998h-129.801zM496 192c0 -136.9 -111.1 -248 -248 -248s-248 111.1 -248 248s111.1 248 248 248s248 -111.1 248 -248zM396.2 109.3l-148.2 223.2l-148.2 -223.2h30.4004l33.5996 51.7002h168.601l33.5996 -51.7002h30.2002z" />
    <glyph glyph-name="bitbucket" unicode="&#xf171;" horiz-adv-x="512" 
d="M22.2002 416l466.8 -0.200195c0.954102 -0.0136719 1.875 -0.0800781 2.7998 -0.200195c7.58789 -1.25 13.3994 -7.83203 13.3994 -15.7715c0 -0.860352 -0.0683594 -1.7041 -0.199219 -2.52832l-67.9004 -416.8c-1.24902 -7.58887 -7.84277 -13.4014 -15.7832 -13.4014
c-0.0722656 0 -0.144531 0 -0.216797 0.000976562h-325.699c-10.7129 0.0869141 -19.5967 7.94727 -21.3008 18.2002l-67.8994 412.101c-0.116211 0.924805 -0.182617 1.84668 -0.200195 2.7998c0.108398 8.7373 7.23242 15.8008 15.9951 15.8008
c0.0683594 0 0.136719 0 0.205078 -0.000976562zM308.1 118.2l25.2002 147h-157.3l28.0996 -147h104z" />
    <glyph glyph-name="tumblr" unicode="&#xf173;" horiz-adv-x="320" 
d="M309.8 -32.2998c-13.5996 -14.5 -50 -31.7002 -97.3994 -31.7002c-120.801 0 -147 88.7998 -147 140.6v144h-47.5c-5.5 0 -10 4.5 -10 10v68c0 7.2002 4.5 13.6006 11.2998 16c62 21.8008 81.5 76 84.2998 117.101c0.799805 11 6.5 16.2998 16.0996 16.2998h70.9004
c5.5 0 10 -4.5 10 -10v-115.2h83c5.5 0 10 -4.39941 10 -9.89941v-81.7002c0 -5.5 -4.5 -10 -10 -10h-83.4004v-133.2c0 -34.2002 23.7002 -53.5996 68 -35.7998c4.80078 1.89941 9 3.2002 12.7002 2.2002c3.5 -0.900391 5.7998 -3.40039 7.40039 -7.90039l22 -64.2998
c1.7998 -5 3.2998 -10.6006 -0.400391 -14.5z" />
    <glyph glyph-name="tumblr-square" unicode="&#xf174;" 
d="M400 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h352zM317.7 51.7998c2.2998 2.40039 1.2998 5.90039 0.299805 9.10059l-13.7998 40.1992c-1 2.80078 -2.40039 4.40039 -4.60059 4.90039
c-2.39941 0.599609 -5 -0.200195 -8 -1.40039c-27.6992 -11.0996 -42.5 1 -42.5 22.4004v83.2998h52.1006c3.39941 0 6.2002 2.7998 6.2002 6.2002v51.0996c0 3.40039 -2.80078 6.2002 -6.2002 6.2002h-51.9004v72c0 3.40039 -2.7998 6.2002 -6.2002 6.2002h-44.2998
c-5.89941 0 -9.5 -3.2998 -10 -10.2002c-1.7998 -25.7002 -13.8994 -59.5 -52.7002 -73.2002c-4.2998 -1.5 -7.09961 -5.5 -7.09961 -10v-42.5c0 -3.39941 2.7998 -6.19922 6.2002 -6.19922h29.7002v-90c0 -32.4004 16.3994 -87.9004 91.8994 -87.9004
c29.7002 0 52.4004 10.7002 60.9004 19.7998z" />
    <glyph glyph-name="apple" unicode="&#xf179;" horiz-adv-x="384" 
d="M318.7 179.3c0 -1.89941 -3.5 -61.2002 61.7002 -91.8994c-12.2002 -36.8008 -54 -118.601 -102.601 -119.301c-28.0996 0 -44.5996 17.9004 -76.3994 17.9004c-32.8008 0 -50.6006 -17.2998 -75.8008 -17.9004c-48.1992 -1.5 -94.3994 88.5 -107.199 125.2
c-9.60059 27.9336 -14.4004 55 -14.4004 81.2002c0 88.7002 59.2998 132.3 115.1 133.2c27 0 61.4004 -19.7002 76.4004 -19.7002c14.2002 0 53 23.5 88.5 20.7002c37.5 -2.90039 65.9004 -17.7002 84.7002 -44.6006c-33.6006 -20.3994 -50.2002 -48.0996 -50 -84.7998z
M262.1 343.5c-19.5996 -22.9004 -43.3994 -36.2998 -69.5 -34.2998c-2.19922 27.5996 8.10059 52.0996 25.6006 71.8994c15.8994 18.5 43.7998 33.5 67.8994 34.9004c0.800781 -10.5996 3.30078 -40.0996 -24 -72.5z" />
    <glyph glyph-name="windows" unicode="&#xf17a;" 
d="M0 354.3l183.6 25.2998v-177.399h-183.6v152.1zM0 29.7002v149.899h183.6v-175.199zM203.8 1.7002v177.899h244.2v-211.6zM203.8 382.3l244.2 33.7002v-213.8h-244.2v180.1z" />
    <glyph glyph-name="android" unicode="&#xf17b;" horiz-adv-x="576" 
d="M420.55 146.07c-13.2461 0 -24 10.7539 -24 24s10.7539 24 24 24s24 -10.7539 24 -24s-10.7539 -24 -24 -24zM155.45 146.07c-13.2461 0 -24 10.7539 -24 24s10.7539 24 24 24s24 -10.7539 24 -24s-10.7539 -24 -24 -24zM429.15 290.55l47.9395 83
c1.06738 1.59082 1.69043 3.50391 1.69043 5.5625c0 5.51855 -4.48047 10 -10 10c-3.93359 0 -7.32812 -2.25684 -8.95996 -5.5625v0l-48.54 -84.0693c-37.5742 16.8516 -79.2197 26.2266 -123.037 26.2266c-43.8164 0 -85.9492 -9.375 -123.523 -26.2266l-48.54 84.0693
c-1.63184 3.30566 -5.03809 5.58203 -8.97168 5.58203c-5.51953 0 -10 -4.48145 -10 -10c0 -2.05859 0.634766 -3.99121 1.70215 -5.58203v0l47.9395 -83c-82.3193 -44.7695 -138.609 -128.1 -146.85 -226.55h576c-8.24023 98.4502 -64.54 181.78 -146.85 226.55z" />
    <glyph glyph-name="linux" unicode="&#xf17c;" 
d="M220.8 324.7c-1.09961 0.599609 -3.09961 0.399414 -3.39941 1.7002c-0.200195 0.399414 0.199219 0.899414 0.599609 1.09961c1.59961 0.900391 3.7998 0.599609 5.5 -0.0996094c1.2998 -0.600586 3.40039 -1.5 3.2002 -2.90039
c-0.100586 -1.09961 -1.7998 -1.5 -2.90039 -1.5c-1.2002 0 -2 1.2002 -3 1.7002zM198.9 323c-1 -0.0996094 -2.7002 0.400391 -2.80078 1.40039c-0.199219 1.39941 1.90039 2.2998 3.2002 2.89941c1.7002 0.700195 3.90039 1 5.5 0.100586
c0.400391 -0.200195 0.799805 -0.700195 0.600586 -1.10059c-0.400391 -1.2002 -2.40039 -1 -3.5 -1.59961c-1 -0.5 -1.80078 -1.7002 -3 -1.7002zM420 44.2002c11.0996 -12.4004 15.9004 -21.5 15.5 -29.7002c-0.5 -8.2002 -6.5 -13.7998 -13.9004 -18.2998
c-14.8994 -9 -37.2998 -15.7998 -50.8994 -32.2002c-14.2002 -16.9004 -31.7002 -26.5996 -48.2998 -27.9004c-16.5 -1.2998 -32 6.30078 -40.3008 23v0.100586c-1.09961 2.09961 -1.89941 4.39941 -2.5 6.7002c-21.5 -1.2002 -40.1992 5.2998 -55.0996 4.09961
c-22 -1.2002 -35.7998 -6.5 -48.2998 -6.59961c-4.7998 -10.6006 -14.2998 -17.6006 -25.9004 -20.2002c-16 -3.7002 -36.0996 0 -55.8994 10.3994c-18.5 9.80078 -42 8.90039 -59.3008 12.5c-8.69922 1.80078 -16.2998 5 -20.0996 12.3008
c-3.7002 7.2998 -3 17.2998 2.2002 31.6992c1.7002 5.10059 0.399414 12.7002 -0.799805 20.8008c-0.600586 3.89941 -1.2002 7.89941 -1.2002 11.7998c0 4.2998 0.700195 8.5 2.7998 12.3994c4.5 8.5 11.7998 12.1006 18.5 14.5c6.7002 2.40039 12.7998 4 17 8.30078
c5.2002 5.5 10.0996 14.3994 16.5996 20.1992c-2.59961 17.2002 0.200195 35.4004 6.2002 53.3008c12.6006 37.8994 39.2002 74.1992 58.1006 96.6992c16.0996 22.9004 20.7998 41.3008 22.5 64.7002c1.09961 31.7998 -24.5 135.4 77.8994 135.2
c80.9004 -0.0996094 76.2998 -85.4004 75.7998 -131.3c-0.299805 -30.1006 16.3008 -50.5 33.4004 -72c15.2002 -18 35.0996 -44.2998 46.5 -74.4004c9.2998 -24.5996 12.9004 -51.7998 3.7002 -79.0996c1.39941 -0.5 2.7998 -1.2002 4.09961 -2
c1.40039 -0.799805 2.7002 -1.7998 4 -2.90039c6.60059 -5.59961 8.7002 -14.2998 10.5 -22.3994c1.90039 -8.10059 3.60059 -15.7002 7.2002 -19.7002zM223.7 360.7c-3.2002 -7.2002 -3.90039 -14.9004 -2.90039 -21.7998c3.60059 -0.900391 8.90039 -2.40039 13 -4.40039
c-2.09961 12.2002 4.5 23.5 11.7998 23c8.90039 -0.299805 13.9004 -15.5 9.10059 -27.2998c-0.799805 -1.90039 -2.7998 -3.40039 -3.90039 -4.60059c6.7002 -2.2998 11 -4.09961 12.6006 -4.89941c7.89941 9.5 10.7998 26.2002 4.2998 40.3994
c-9.7998 21.4004 -34.2002 21.8008 -44 -0.399414zM183 372.2c-18.9004 0 -24 -37.5 -8.40039 -52.1006c7.80078 5.7002 6.90039 4.7002 5.90039 5.5c-8 6.90039 -6.59961 27.4004 1.7998 28.1006c6.2998 0.5 10.7998 -10.7002 9.60059 -19.6006
c3.09961 2.10059 6.69922 3.60059 10.1992 4.60059c1.7002 19.2998 -9 33.5 -19.0996 33.5zM169.4 311.5c-4.2002 -3.2998 -5.60059 -7.40039 -4.2002 -12.2998c1.5 -4.90039 6.09961 -10.5 14.7002 -15.2998c7.7998 -4.60059 12 -11.5 20 -15
c2.59961 -1.10059 5.69922 -1.90039 9.59961 -2.10059c18.4004 -1.09961 27.0996 11.2998 38.2002 14.9004c11.7002 3.7002 20.0996 11 22.7002 18.0996c3.19922 8.5 -2.10059 14.7002 -10.5 18.2002c-11.3008 4.90039 -16.3008 5.2002 -22.6006 9.2998
c-10.2998 6.60059 -18.7998 8.90039 -25.8994 8.90039c-14.4004 0 -23.2002 -9.7998 -27.9004 -14.2002c-0.5 -0.5 -7.90039 -5.90039 -14.0996 -10.5zM172.7 -22.5c2.09961 20.5 -31.5 49 -41 68.9004l-19.6006 35.5996c-6.7998 9.2002 -13.7998 14.7998 -21.8994 16
c-7.7002 1.2002 -12.6006 -1.40039 -17.7002 -6.90039c-4.7998 -5.09961 -8.7998 -12.2998 -14.2998 -18c-7.7998 -6.5 -9.2998 -6.19922 -19.6006 -9.89941c-6.2998 -2.2002 -11.2998 -4.60059 -14.7998 -11.2998c-2.7002 -5 -2.09961 -12.2002 -0.899414 -20
c1.19922 -7.90039 3 -16.3008 0.599609 -23.9004v-0.200195c-5 -13.7002 -5 -21.7002 -2.59961 -26.3994c7.89941 -15.4004 46.5996 -6.10059 76.5 -21.9004c31.3994 -16.4004 72.5996 -17.0996 75.2998 18zM171.3 3.40039c37.6006 -25.7002 82.2002 -15.7002 114.3 7.19922
c3.2002 11 6.30078 21.3008 6.80078 29c0.799805 15.2002 1.59961 28.7002 4.39941 39.9004c3.10059 12.5996 9.2998 23.0996 21.4004 27.2998c2.2998 21.1006 18.7002 21.1006 38.2998 12.5c18.9004 -8.5 26 -16 22.7998 -26.0996c1 0 2 0.0996094 4.2002 0
c5.2002 16.8994 -14.2998 28 -30.7002 34.7998c2.90039 12 2.40039 24.0996 -0.399414 35.7002c-6 25.2998 -22.6006 47.7998 -35.2002 59c-2.2998 0.0996094 -2.10059 -1.90039 2.59961 -6.5c11.6006 -10.7002 37.1006 -49.2002 23.2998 -84.9004
c-3.89941 1 -7.59961 1.5 -10.8994 1.40039c-5.2998 29.0996 -17.5 53.2002 -23.6006 64.5996c-11.5 21.4004 -29.5 65.2998 -37.1992 95.7002c-4.5 -6.40039 -12.4004 -11.9004 -22.3008 -15c-4.69922 -1.5 -9.69922 -5.5 -15.8994 -9
c-13.9004 -8 -30 -8.7998 -42.4004 1.2002c-4.5 3.59961 -8 7.59961 -12.5996 10.2998c-1.60059 0.900391 -5.10059 3.2998 -6.2002 4.09961c-2 -37.7998 -27.2998 -85.2998 -39.2998 -112.699c-8.2998 -19.7002 -13.2002 -40.8008 -13.7998 -61.5
c-21.8008 29.0996 -5.90039 66.2998 2.59961 82.3994c9.5 17.6006 11 22.5 8.7002 20.7998c-8.60059 -14 -22 -36.2998 -27.2002 -59.1992c-2.7002 -11.9004 -3.2002 -24 0.299805 -35.2002s11.1006 -21.5 24.6006 -29.9004c0 0 24.7998 -14.2998 38.2998 -32.5
c7.39941 -10 9.7002 -18.7002 7.39941 -24.8994c-2.5 -6.7002 -9.59961 -8.90039 -16.6992 -8.90039c4.7998 -6 10.2998 -13 14.3994 -19.5996zM428.7 14.9004c0.299805 5.09961 -3.10059 13 -13.7002 24.5996c-10 11.2998 -7.2002 33.0996 -17.0996 41.5996
c-6.90039 6 -13.6006 5.40039 -22.6006 5.10059c-7.7002 -8.7998 -25.7998 -19.6006 -38.3994 -16.2998c-11.5 2.89941 -18 16.2998 -18.8008 29.5c-0.299805 -0.200195 -0.699219 -0.300781 -1 -0.5c-7.09961 -3.90039 -11.0996 -10.8008 -13.6992 -21.1006
c-2.5 -10.2002 -3.40039 -23.5 -4.2002 -38.7002c-0.700195 -11.7998 -6.2002 -26.3994 -9.90039 -40.5996c-3.5 -13.2002 -5.7998 -25.2002 -1.09961 -36.2998c7.2002 -14.5 19.5 -20.4004 33.7002 -19.2998c14.1992 1.09961 30.3994 9.7998 43.5996 25.5
c22 26.5996 62.2998 29.6992 63.2002 46.5zM173.3 299.3c-3.5 2.7998 -3.09961 6.60059 -1.7002 6.5c2.40039 -0.299805 2.80078 -3.5 4.30078 -4.89941c2 -1.90039 4.59961 -4.40039 7.69922 -6.90039c6.2002 -4.90039 14.5 -9.7002 24.9004 -9.7002
s22.5 6 29.9004 10.2002c4.19922 2.40039 9.5 6.59961 13.8994 9.7998c3.40039 2.5 3.2002 5.40039 6 5.10059c2.7998 -0.300781 0.799805 -3.2002 -3.09961 -6.60059c-3.90039 -3.39941 -9.90039 -7.7998 -14.7998 -10.3994
c-9.30078 -4.90039 -20.2002 -10.8008 -31.8008 -10.8008c-11.5 0 -20.6992 5.40039 -27.2998 10.6006c-3.2998 2.59961 -6 5.2002 -8 7.09961z" />
    <glyph glyph-name="dribbble" unicode="&#xf17d;" horiz-adv-x="512" 
d="M256 440c136.748 0 248 -111.252 248 -248s-111.252 -248 -248 -248s-248 111.252 -248 248s111.252 248 248 248zM419.97 325.634c-4.46582 -6.04102 -39.9629 -51.5459 -118.284 -83.5225c7.43652 -15.2217 12.8652 -27.5732 18.6172 -41.6143
c70.4844 8.86426 140.519 -5.34082 147.502 -6.81836c-0.46582 49.998 -18.332 95.9092 -47.835 131.955zM396.421 350.13c-52.0947 46.2188 -122.885 63.6816 -190.061 47.4893c5.85449 -7.83984 44.3281 -60.2324 79.04 -124.008
c75.3232 28.2324 107.211 71.0918 111.021 76.5186zM165.941 383.38c-59.2637 -27.9531 -103.562 -82.585 -117.298 -148.318c9.47461 -0.125 96.7471 -0.503906 195.834 25.8096c-35.0986 62.3926 -72.9512 114.85 -78.5361 122.509zM44.1699 191.677
c0 -54.4072 20.624 -104.082 54.457 -141.636c34.3369 58.7793 103.932 120.731 180.531 142.306c-5.31738 12.0342 -11.1104 24.0811 -17.1738 35.9492c-105.786 -31.6592 -208.438 -30.3359 -217.706 -30.1455c-0.0654297 -2.15137 -0.108398 -4.30762 -0.108398 -6.47363
zM125.977 24.5645c62.7539 -48.9355 144.656 -56.8955 212.769 -27.8828c-3.15039 18.585 -15.4492 83.3555 -45.1895 160.639c-85.4004 -29.1348 -145.452 -87.5234 -167.579 -132.756zM374.357 16.0752c47.5215 32.1338 81.3525 83.0371 90.7949 141.978
c-7.24707 2.28711 -65.5674 19.6816 -131.947 9.05566c27.7061 -76.1367 38.9805 -138.147 41.1523 -151.033z" />
    <glyph glyph-name="skype" unicode="&#xf17e;" 
d="M424.7 148.2c14.5996 -18.9004 23.2998 -42.5 23.2002 -68.1006c0 -61.7998 -50.2002 -112 -112 -112c-25.6006 0 -49.2002 8.7002 -68.2002 23.3008c-14.1006 -3 -28.9004 -4.7002 -43.7998 -4.7002c-113.4 0 -205.301 91.7998 -205.301 205.3
c0 14.9004 1.80078 29.7998 4.7002 43.7998c-14.5996 18.9004 -23.2998 42.5 -23.2998 68.2002c0 61.7998 50.2002 112 112 112c25.7002 0 49.2998 -8.7002 68.2998 -23.4004c14.1006 3 28.9004 4.7002 43.7998 4.7002c113.4 0 205.301 -91.7998 205.301 -205.3
c0 -14.9004 -1.80078 -29.7998 -4.7002 -43.7998zM230.1 56.7002c54.9004 0 112 27.3994 112 86.5c0 50.7998 -49.2998 68.2998 -90.6992 77.5996c-48.3008 11.2002 -69.1006 13.2002 -69.1006 33c0 15.5 16.2998 22.5 42 22.5c45.7998 0 46.7002 -33.5 75 -33.5
c18.9004 0 30.2998 14.9004 30.2998 31.7998c0 33.5 -55.6992 55.4004 -110.8 55.4004c-50.5 0 -109.1 -21.9004 -109.1 -81.0996c0 -65.2002 55.2998 -71.8008 117.8 -87.2002c26 -6.40039 42 -9.2998 42 -28c0 -14.9004 -16.5996 -26.2998 -42.2998 -26.2998
c-54 0 -56.9004 44.8994 -88.1006 44.8994c-20.5 0 -29.5 -14.5996 -29.5 -30.5996c0 -35.7998 54.9004 -65 120.5 -65z" />
    <glyph glyph-name="foursquare" unicode="&#xf180;" horiz-adv-x="368" 
d="M323.1 445c40 0 50.7002 -22.7998 42.2002 -65.2002l-48.5996 -243c-3.7002 -14.5 -9.2002 -39.7002 -44.2998 -39.7002h-83.4004c-3.40039 0 -3.7002 0.300781 -6.7998 -3.09961c0 0 -2.2002 -2.5 -131.101 -151.9
c-10.0996 -11.6992 -26.6992 -9.59961 -32.8994 -7.09961c-6.10059 2.40039 -18.2002 9.7998 -18.2002 30.0996v433.801c0 17.7998 12.4004 46.0996 49.9004 46.0996h273.199zM306.8 371.2c2.10059 9.7998 -5.2998 17.5 -13.5 17.5h-219
c-9.7998 0 -16.5996 -8.90039 -16.5996 -16.6006v-338.8c0 -0.899414 0.899414 -1.2002 1.7998 -0.299805c80.5996 96.9004 89.5 108.3 89.5 108.3c9.2998 10.7998 13 12.6006 26.5 12.6006h73.5c10.0996 0 16 8.59961 16.9004 13.5
c0.899414 5 9.59961 49.8994 11.3994 58.7998c1.7998 9 -6.5 18.2002 -14.7998 18.2002h-90.4004c-12 0 -20.5996 8.59961 -20.5996 20.5996v13c0 12 8.59961 20.2998 20.5996 20.2998h106.4c7.40039 0 15.7002 6.7002 16.9004 13.2002z" />
    <glyph glyph-name="trello" unicode="&#xf181;" 
d="M392.3 416c30.7998 -0.200195 55.7002 -25.2002 55.6006 -56v-336c0 -30.7998 -24.9004 -55.7998 -55.7002 -56h-336.2c-30.9004 0 -56 25.0996 -56 56c0 340 -0.0996094 336 0 336c0 30.9004 25.0996 56 56.0996 56h336.2zM197 76.7002h0.0996094v254.2
c0 14.8994 -12.0996 26.8994 -26.8994 26.8994h-82.9004c-14.8994 0 -26.8994 -12.0996 -26.8994 -26.8994v-254.2c0.0996094 -14.7998 12.1992 -26.7002 27 -26.6006h82.6992c14.8008 0 26.7002 11.9004 26.9004 26.6006zM390.1 188.7v142.1
c0 14.9004 -12.0996 26.9004 -26.8994 26.9004h-81.1006c-14.7998 0 -26.7998 -12.1006 -26.7998 -26.9004v-142.1c0 -14.9004 12.1006 -26.9004 26.9004 -26.9004h81c14.8994 0 26.8994 12.1006 26.8994 26.9004z" />
    <glyph glyph-name="gratipay" unicode="&#xf184;" horiz-adv-x="496" 
d="M248 440c136.9 0 248 -111.1 248 -248s-111.1 -248 -248 -248s-248 111.1 -248 248s111.1 248 248 248zM362.6 213.6c8.80078 12 19.1006 50.4004 -13.7998 72c-27.7002 18.1006 -54.2002 4.2002 -68.0996 -11.8994c-15.1006 -16.9004 -45.7998 -17.9004 -61.7002 0
c-13.9004 16.0996 -40.4004 30 -68.5 11.8994c-32.7002 -21.5996 -22.2998 -60.0996 -13.5996 -72l112.699 -152.699z" />
    <glyph glyph-name="vk" unicode="&#xf189;" horiz-adv-x="576" 
d="M545 330.3c-7.40039 -34.2998 -79.2998 -135.5 -79.4004 -135.6c-6.19922 -10 -8.69922 -15 0 -26.2002c3.40039 -4.7998 79.1006 -76.5996 90.3008 -111.5c4.89941 -16.5996 -3.60059 -25 -20.4004 -25h-58.9004c-22.3994 0 -29 17.9004 -69 57.9004
c-35 33.6992 -50 38.0996 -58.6992 38.0996c-18.8008 0 -15.4004 -6.2998 -15.4004 -73.0996c0 -14.5 -4.59961 -22.9004 -42.0996 -22.9004c-62.4004 0 -131 37.9004 -179.7 107.8c-73.1006 102.4 -93.1006 179.9 -93.1006 195.5c0 8.7998 3.40039 16.7002 20.2002 16.7002
h58.9004c15.0996 0 20.7998 -6.59961 26.5996 -22.9004c28.7998 -84 77.4004 -157.399 97.4004 -157.399c7.5 0 10.8994 3.5 10.8994 22.5v86.7998c-2.19922 40 -23.3994 43.2998 -23.3994 57.5c0 6.5 5.59961 13.5 15 13.5h92.5996
c12.4004 0 16.6006 -6.7002 16.6006 -21.7002v-116.7c0 -12.5 5.69922 -16.8994 9.39941 -16.8994c7.5 0 13.7998 4.39941 27.5 18.0996c42.4004 47.4004 72.4004 120.5 72.4004 120.5c3.7002 8.7998 10.5996 16.7002 25.5996 16.7002h58.9004
c17.7998 0 21.5 -9.2002 17.7998 -21.7002z" />
    <glyph glyph-name="weibo" unicode="&#xf18a;" horiz-adv-x="512" 
d="M407 270.4c7.59961 24 -13.4004 46.7998 -37.4004 41.6992c-22 -4.7998 -28.7998 28.1006 -7.09961 32.8008c50.0996 10.8994 92.2998 -37.1006 76.5 -84.8008c-6.7998 -21.1992 -38.7998 -10.7998 -32 10.3008zM214.8 1.2998c-106.3 0 -214.8 51.4004 -214.8 136.3
c0 44.3008 28 95.4004 76.2998 143.7c99.7002 99.7002 203.2 100.9 173.601 5.7002c-4 -13.0996 12.2998 -5.7002 12.2998 -6c79.5 33.5996 140.5 16.7998 114 -51.4004c-3.7002 -9.39941 1.09961 -10.8994 8.2998 -13.0996c135.7 -42.2998 34.7998 -215.2 -169.7 -215.2z
M358.5 147.6c-5.40039 55.7002 -78.5 94 -163.4 85.7002c-84.7998 -8.59961 -148.8 -60.2998 -143.399 -116c5.39941 -55.7002 78.5 -94 163.399 -85.7002c84.8008 8.60059 148.801 60.3008 143.4 116zM347.9 412.9c102.3 21.5996 189.3 -74.5 157.399 -174.301
c-8.2998 -25 -44.7998 -12.1992 -37.3994 12c23.0996 71.2002 -39.4004 139.2 -111.7 124c-25.1006 -5.39941 -34.2002 32.7002 -8.2998 38.3008zM269.4 101.9c-17.1006 -38.8008 -66.8008 -60 -109.101 -46.3008c-40.7998 13.1006 -58 53.4004 -40.2998 89.7002
c17.7002 35.4004 63.0996 55.4004 103.4 45.1006c42 -10.8008 63.0996 -50.2002 46 -88.5zM183.1 131.9c-12.8994 5.39941 -30 -0.300781 -38 -12.9004c-8.2998 -12.9004 -4.2998 -28 8.60059 -34c13.0996 -6 30.7998 -0.299805 39.0996 12.9004
c8 13.0996 3.7002 28.2998 -9.7002 34zM215.7 145.3c-5.10059 1.7002 -11.4004 -0.599609 -14.2998 -5.39941c-2.90039 -5.10059 -1.40039 -10.6006 3.69922 -12.9004c5.10059 -2 11.7002 0.299805 14.6006 5.40039c2.7998 5.19922 1.09961 10.8994 -4 12.8994z" />
    <glyph glyph-name="renren" unicode="&#xf18b;" horiz-adv-x="512" 
d="M214 278.9c0 -110.4 -61 -205.4 -147.6 -247.4c-36.4004 43.2998 -58.4004 98.7998 -58.4004 159.9c0 122.699 89.0996 224.399 206 244.1v-156.6zM255 -56c-42.9004 0 -83.2998 11 -118.5 30.4004c57.2002 36.0996 103.4 90.6992 118.5 154.6
c15.5 -63.9004 61.7002 -118.5 118.8 -154.7c-35.0996 -19.2998 -75.5 -30.2998 -118.8 -30.2998zM445.6 31.5c-86.5996 42 -147.6 136.9 -147.6 247.4v156.6c116.9 -19.7002 206 -121.4 206 -244.1c0 -61.1006 -22 -116.601 -58.4004 -159.9z" />
    <glyph glyph-name="pagelines" unicode="&#xf18c;" horiz-adv-x="384" 
d="M384 135.3c-55.0996 -136.7 -187.1 -54 -187.1 -54c-40.5 -81.7998 -107.4 -134.399 -184.601 -134.7c-16.0996 0 -16.5996 24.4004 0 24.4004c64.4004 0.299805 120.5 42.7002 157.2 110.1c-41.0996 -15.8994 -118.6 -27.8994 -161.6 82.2002
c109 44.9004 159.1 -11.2002 178.3 -45.5c9.89941 24.4004 17 50.9004 21.5996 79.7002c0 0 -139.7 -21.9004 -149.5 98.0996c119.101 47.9004 152.601 -76.6992 152.601 -76.6992c1.59961 16.6992 3.2998 52.5996 3.2998 53.3994c0 0 -106.3 73.7002 -38.1006 165.2
c124.601 -43 61.4004 -162.4 61.4004 -162.4c0.5 -1.59961 0.5 -23.7998 0 -33.3994c0 0 45.2002 89 136.4 57.5c-4.2002 -134 -141.9 -106.4 -141.9 -106.4c-4.40039 -27.3994 -11.2002 -53.3994 -20 -77.5c0 0 83 91.7998 172 20z" />
    <glyph glyph-name="stack-exchange" unicode="&#xf18d;" 
d="M17.7002 115.7h412.7v-22c0 -37.7002 -29.3008 -68 -65.3008 -68h-19l-86.7998 -89.7002v89.7002h-176.3c-36 0 -65.2998 30.2998 -65.2998 68v22zM17.7002 139.3v85h412.7v-85h-412.7zM17.7002 248.7v85h412.7v-85h-412.7zM365 448
c36 0 65.2998 -30.2998 65.4004 -67.7002v-22.2998h-412.7v22.2998c0 37.4004 29.2998 67.7002 65.2998 67.7002h282z" />
    <glyph glyph-name="vimeo-square" unicode="&#xf194;" 
d="M400 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h352zM383.8 266.4c1.90039 41.5996 -13.5996 63 -46.5 64c-44.2998 1.39941 -74.3994 -23.6006 -90.0996 -75.1006
c19.5996 8.40039 48.5996 10.6006 45.2002 -22.2002c-0.900391 -11.0996 -8.10059 -27.0996 -21.5 -48.2998c-37.2002 -58.7002 -46.3008 -39.0996 -66.8008 90.5c-5.7998 36.5 -21.0996 53.5 -46 51.1006c-22 -2 -57.1992 -38 -94.0996 -70.4004l15 -19.4004
c14.2998 10.1006 22.7002 15.1006 25.0996 15.1006c20.8008 0 31.5 -54.1006 56.7002 -146.4c12.9004 -34.3994 28.6006 -51.5996 47.2998 -51.5996c30.1006 0 66.9004 28.2998 110.4 84.7998c42.0996 54.0996 63.9004 96.7998 65.2998 127.9z" />
    <glyph glyph-name="slack" unicode="&#xf198;" 
d="M94.1201 132.9c0 -25.9004 -21.1602 -47.0605 -47.0605 -47.0605c-25.8994 0 -47.0596 21.1602 -47.0596 47.0605c0 25.8994 21.1602 47.0596 47.0596 47.0596h47.0605v-47.0596zM117.84 132.9c0 25.8994 21.1602 47.0596 47.0605 47.0596
c25.8994 0 47.0596 -21.1602 47.0596 -47.0596v-117.841c0 -25.8994 -21.1602 -47.0596 -47.0596 -47.0596c-25.9004 0 -47.0605 21.1602 -47.0605 47.0596v117.841zM164.9 321.88c-25.9004 0 -47.0605 21.1602 -47.0605 47.0605c0 25.8994 21.1602 47.0596 47.0605 47.0596
c25.8994 0 47.0596 -21.1602 47.0596 -47.0596v-47.0605h-47.0596zM164.9 298.16c25.8994 0 47.0596 -21.1602 47.0596 -47.0605c0 -25.8994 -21.1602 -47.0596 -47.0596 -47.0596h-117.841c-25.8994 0 -47.0596 21.1602 -47.0596 47.0596
c0 25.9004 21.1602 47.0605 47.0596 47.0605h117.841zM353.88 251.1c0 25.9004 21.1602 47.0605 47.0605 47.0605c25.8994 0 47.0596 -21.1602 47.0596 -47.0605c0 -25.8994 -21.1602 -47.0596 -47.0596 -47.0596h-47.0605v47.0596zM330.16 251.1
c0 -25.8994 -21.1602 -47.0596 -47.0605 -47.0596c-25.8994 0 -47.0596 21.1602 -47.0596 47.0596v117.841c0 25.8994 21.1602 47.0596 47.0596 47.0596c25.9004 0 47.0605 -21.1602 47.0605 -47.0596v-117.841zM283.1 62.1201c25.9004 0 47.0605 -21.1602 47.0605 -47.0605
c0 -25.8994 -21.1602 -47.0596 -47.0605 -47.0596c-25.8994 0 -47.0596 21.1602 -47.0596 47.0596v47.0605h47.0596zM283.1 85.8398c-25.8994 0 -47.0596 21.1602 -47.0596 47.0605c0 25.8994 21.1602 47.0596 47.0596 47.0596h117.841
c25.8994 0 47.0596 -21.1602 47.0596 -47.0596c0 -25.9004 -21.1602 -47.0605 -47.0596 -47.0605h-117.841z" />
    <glyph glyph-name="wordpress" unicode="&#xf19a;" horiz-adv-x="512" 
d="M61.7002 278.6l101.5 -278c-71 34.4004 -119.9 107.2 -119.9 191.4c0 30.9004 6.60059 60.0996 18.4004 86.5996zM399.6 202.7c0 -18.2002 -7 -39.2998 -16 -68.7002l-21.1992 -70.9004l-76.9004 228.7c12.7998 0.700195 24.2998 2 24.2998 2
c11.4004 1.2998 10.1006 18.2002 -1.39941 17.5c0 0 -34.5 -2.7002 -56.7002 -2.7002c-20.9004 0 -56 2.7002 -56 2.7002c-11.4004 0.700195 -12.7998 -16.7998 -1.2998 -17.5c0 0 10.7998 -1.2998 22.2998 -2l33.0996 -90.7998l-46.5996 -139.6l-77.5 230.399
c12.7998 0.700195 24.2998 2 24.2998 2c11.4004 1.2998 10.0996 18.2002 -1.40039 17.5c0 0 -34.5 -2.7002 -56.6992 -2.7002c-4 0 -8.7002 0.100586 -13.7002 0.300781c38.0996 57.7998 103.5 95.8994 177.8 95.8994c55.4004 0 105.8 -21.2002 143.7 -55.8994
c-1 0.0996094 -1.90039 0.199219 -2.7998 0.199219c-20.9004 0 -35.7002 -18.1992 -35.7002 -37.7998c0 -17.5 10.0996 -32.3994 20.8994 -49.8994c8.10059 -14.2002 17.5 -32.4004 17.5 -58.7002zM259.7 173.4l65.3994 -179.2c0.400391 -1 0.900391 -2 1.5 -2.90039
c-22.0996 -7.7998 -45.7998 -12.0996 -70.5996 -12.0996c-20.9004 0 -41 3.09961 -60.0996 8.7002zM442.7 294.1c16.5996 -30.2998 26 -65.0996 26 -102.1c0 -78.5 -42.5 -147 -105.8 -183.9l65 187.9c12.1992 30.4004 16.1992 54.5996 16.1992 76.2002
c0 7.89941 -0.5 15.0996 -1.39941 21.8994zM504 192c0 -136.8 -111.3 -248 -248 -248c-136.8 0 -248 111.3 -248 248c0 136.8 111.2 248 248 248c136.7 0 248 -111.2 248 -248zM492.6 192c0 130.5 -106.199 236.6 -236.6 236.6c-130.5 0 -236.6 -106.1 -236.6 -236.6
s106.199 -236.6 236.6 -236.6c130.5 0 236.6 106.1 236.6 236.6z" />
    <glyph glyph-name="openid" unicode="&#xf19b;" 
d="M271.5 16l-68 -32c-115 10.2998 -203.5 71.5 -203.5 145.8c0 71.5 82.5 131 191.7 144.3v-43c-71.5 -12.5 -124 -53 -124 -101.3c0 -51 58.5 -93.2998 135.7 -103v340l68 33.2002v-384h0.0996094zM448 157l-131.3 28.5l36.7998 20.7002c-19.5 11.5 -43.5 20 -70 24.7998
v43c46.2002 -5.5 87.7002 -19.5 120.3 -39.2998l35 19.7998z" />
    <glyph glyph-name="yahoo" unicode="&#xf19e;" horiz-adv-x="512" 
d="M223.69 306.94h93.5791l-140.909 -338.94h-94.1699l38.5693 89.8096l-105.83 249.131h96.0703l56 -143.171zM329.09 171.15c32.1328 0 58.2197 -26.0879 58.2197 -58.2207c0 -32.1318 -26.0869 -58.2197 -58.2197 -58.2197s-58.2197 26.0879 -58.2197 58.2197
c0 32.1328 26.0869 58.2207 58.2197 58.2207zM394.65 416h104.42l-92.6299 -223.47h-104.79z" />
    <glyph glyph-name="google" unicode="&#xf1a0;" horiz-adv-x="488" 
d="M488 186.2c0 -141.5 -96.9004 -242.2 -240 -242.2c-137.2 0 -248 110.8 -248 248s110.8 248 248 248c66.7998 0 123 -24.5 166.3 -64.9004l-67.5 -64.8994c-88.2998 85.2002 -252.5 21.2002 -252.5 -118.2c0 -86.5 69.1006 -156.6 153.7 -156.6
c98.2002 0 135 70.3994 140.8 106.899h-140.8v85.2998h236.1c2.30078 -12.6992 3.90039 -24.8994 3.90039 -41.3994z" />
    <glyph glyph-name="reddit" unicode="&#xf1a1;" horiz-adv-x="512" 
d="M201.5 142.5c-13.7998 0 -24.9004 11.0996 -24.9004 24.5996c0 13.8008 11.1006 24.9004 24.9004 24.9004c13.5996 0 24.5996 -11.0996 24.5996 -24.9004c0 -13.5996 -11.0996 -24.5996 -24.5996 -24.5996zM504 192c0 -137 -111 -248 -248 -248s-248 111 -248 248
s111 248 248 248s248 -111 248 -248zM371.7 233.2c-9.40039 0 -17.7002 -3.90039 -23.7998 -10c-22.4004 15.5 -52.6006 25.5 -86.1006 26.5996l17.4004 78.2998l55.3994 -12.5c0 -13.5996 11.1006 -24.5996 24.6006 -24.5996c13.7998 0 24.8994 11.2998 24.8994 24.9004
c0 13.5996 -11.0996 24.8994 -24.8994 24.8994c-9.7002 0 -18 -5.7998 -22.1006 -13.7998l-61.1992 13.5996c-3 0.800781 -6.10059 -1.39941 -6.90039 -4.39941l-19.0996 -86.4004c-33.2002 -1.39941 -63.1006 -11.2998 -85.5 -26.7998
c-6.10059 6.40039 -14.7002 10.2002 -24.1006 10.2002c-34.8994 0 -46.2998 -46.9004 -14.3994 -62.7998c-1.10059 -5 -1.7002 -10.2002 -1.7002 -15.5c0 -52.6006 59.2002 -95.2002 132 -95.2002c73.0996 0 132.3 42.5996 132.3 95.2002
c0 5.2998 -0.599609 10.7998 -1.90039 15.7998c31.3008 16 19.8008 62.5 -14.8994 62.5zM302.8 117c2.2002 2.2002 6.10059 2.2002 8.2998 0c2.5 -2.5 2.5 -6.40039 0 -8.59961c-22.8994 -22.8008 -87.3994 -22.8008 -110.199 0c-2.5 2.19922 -2.5 6.09961 0 8.59961
c2.19922 2.2002 6.09961 2.2002 8.2998 0c17.5 -17.9004 75.3994 -18.2002 93.5996 0zM310.5 192c13.9004 0 24.9004 -11.0996 24.9004 -24.9004c0 -13.5 -11.1006 -24.5996 -24.9004 -24.5996c-13.5 0 -24.5996 11 -24.5996 24.5996c0 13.8008 11 24.9004 24.5996 24.9004z
" />
    <glyph glyph-name="reddit-square" unicode="&#xf1a2;" 
d="M283.2 102.5c2.7002 -2.7002 2.7002 -6.7998 0 -9.2002c-24.5 -24.5 -93.7998 -24.5996 -118.4 0c-2.7002 2.40039 -2.7002 6.5 0 9.2002c2.40039 2.40039 6.5 2.40039 8.90039 0c18.7002 -19.2002 81 -19.5996 100.5 0c2.39941 2.2998 6.59961 2.2998 9 0zM191.9 156.3
c0 -14.5996 -11.9004 -26.5 -26.5 -26.5c-14.9004 0 -26.8008 11.9004 -26.8008 26.5c0 14.9004 11.9004 26.7998 26.8008 26.7998c14.5996 0 26.5 -11.8994 26.5 -26.7998zM282.6 183.1c14.9004 0 26.8008 -11.8994 26.8008 -26.7998
c0 -14.5996 -11.9004 -26.5 -26.8008 -26.5c-14.5996 0 -26.5 11.9004 -26.5 26.5c0 14.9004 11.9004 26.7998 26.5 26.7998zM448 368v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h352c26.5 0 48 -21.5 48 -48zM348.3 227.4
c-10.0996 0 -19 -4.2002 -25.5996 -10.7002c-24.1006 16.7002 -56.5 27.3994 -92.5 28.5996l18.7002 84.2002l59.5 -13.4004c0 -14.5996 11.8994 -26.5 26.5 -26.5c14.8994 0 26.7998 12.2002 26.7998 26.8008c0 14.5996 -11.9004 26.7998 -26.7998 26.7998
c-10.4004 0 -19.3008 -6.2002 -23.8008 -14.9004l-65.6992 14.6006c-3.30078 0.899414 -6.5 -1.5 -7.40039 -4.80078l-20.5 -92.7998c-35.7002 -1.5 -67.7998 -12.2002 -91.9004 -28.8994c-6.5 6.7998 -15.7998 11 -25.8994 11c-37.5 0 -49.7998 -50.4004 -15.5 -67.5
c-1.2002 -5.40039 -1.7998 -11 -1.7998 -16.7002c0 -56.5 63.6992 -102.3 141.899 -102.3c78.5 0 142.2 45.7998 142.2 102.3c0 5.7002 -0.599609 11.5996 -2.09961 17c33.5996 17.2002 21.1992 67.2002 -16.1006 67.2002z" />
    <glyph glyph-name="stumbleupon-circle" unicode="&#xf1a3;" horiz-adv-x="496" 
d="M256 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM256 262.5c9.7998 0 17.7998 -8 17.7002 -17.5996v-20.6006l22.8994 -10.7002l34.1006 10.1006v23.7002c0 40.2998 -34 72.5996 -74.7002 72.5996
c-40.5 0 -74.7002 -32.0996 -74.7002 -72.0996v-108.4c0 -9.90039 -8 -17.7998 -17.7998 -17.7998s-17.7998 7.7998 -17.7998 17.7998v45.7998h-57.2998v-46.5c0 -41.3994 33.5 -74.8994 74.8994 -74.8994c41 0 74.9004 33 74.9004 73.8994v106.9
c0 9.7998 8 17.7998 17.7998 17.7998zM423.6 138.9c0 0 0 0.5 0.100586 46.3994h-57.2998v-48c0 -9.7002 -8 -17.5996 -17.8008 -17.5996c-9.7998 0 -17.7998 7.7998 -17.7998 17.5996v47.1006l-34.0996 -10.1006l-22.9004 10.7002v-46.7998
c0 -41 33.7002 -74.2002 74.9004 -74.2002c41.3994 0 74.8994 33.5 74.8994 74.9004z" />
    <glyph glyph-name="stumbleupon" unicode="&#xf1a4;" horiz-adv-x="512" 
d="M502.9 182v-69.7002c0 -62.0996 -50.3008 -112.399 -112.4 -112.399c-61.7998 0 -112.4 49.7998 -112.4 111.3v70.2002l34.3008 -16l51.0996 15.1992v-70.5996c0 -14.7002 12 -26.5 26.7002 -26.5s26.7998 11.7998 26.7998 26.5v72h85.9004zM278.2 240.2v30.8994
c0 14.7002 -12 26.7002 -26.7002 26.7002s-26.7002 -12 -26.7002 -26.7002v-160.3c0 -61.2998 -50.7998 -110.8 -112.399 -110.8c-62.1006 0 -112.4 50.2998 -112.4 112.3v69.7002h86v-68.5996c0 -14.9004 12 -26.7002 26.7002 -26.7002s26.7002 11.7998 26.7002 26.7002
v162.399c0 60 51.2998 108.2 112.1 108.2c61 0 112.1 -48.5 112.1 -109v-35.5996l-51.0996 -15.2002z" />
    <glyph glyph-name="delicious" unicode="&#xf1a5;" 
d="M446.5 380c1 -3.7998 1.5 -7.90039 1.59961 -12v-352.1c0 -26.5 -21.5 -48 -48 -48h-352c-4.09961 0 -8.19922 0.5 -12 1.5c-7.69922 2 -14.5996 5.7998 -20.2998 11c-1.2002 1.09961 -2.2998 2.19922 -3.2998 3.2998c-5.2002 5.7002 -9 12.5996 -11 20.2998
c-1 3.7998 -1.5 7.90039 -1.5 12v352c0 26.5 21.5 48 48 47.9004h352c4.09961 0 8.2002 -0.5 12 -1.5c1.90039 -0.400391 3.7002 -1 5.40039 -1.7002c1.89941 -0.700195 3.69922 -1.5 5.5 -2.5c1.39941 -0.700195 2.69922 -1.5 4 -2.40039
c1.09961 -0.799805 2.19922 -1.59961 3.2998 -2.5c2.5 -2 4.7998 -4.2998 6.89941 -6.7998c1.7002 -2.09961 3.30078 -4.5 4.7002 -6.90039c1.2998 -2.2998 2.40039 -4.59961 3.2998 -7.09961c0.5 -1.5 1 -3 1.40039 -4.5zM416 16v176h-192v192h-176
c-8.7998 0 -16 -7.2002 -16 -16v-176h192v-192h176c8.7998 0 16 7.2002 16 16z" />
    <glyph glyph-name="digg" unicode="&#xf1a6;" horiz-adv-x="512" 
d="M81.7002 275.7v76.2998h51v-250.7h-132.7v174.4h81.7002zM81.7002 142.3v92.2998h-30.7998v-92.2998h30.7998zM378.9 275.7h133.1v-243.7h-133.1v40.7998h81.7998v28.5h-81.7998v174.4zM460.7 142.3v92.2998h-30.7998v-92.2998h30.7998zM225.1 101.3v174.4h133.301
v-243.7h-133.301v40.7998h82.1006v28.5h-82.1006zM276.3 234.6v-92.2998h30.7998v92.2998h-30.7998zM153.3 352h51.2998v-51h-51.2998v51zM153.3 275.7h51.2998v-174.4h-51.2998v174.4z" />
    <glyph glyph-name="pied-piper-pp" unicode="&#xf1a7;" 
d="M205.3 273.4c0 -21.1006 -14.2002 -38.1006 -31.7002 -38.1006c-7.09961 0 -12.7998 1.2002 -17.1992 3.7002v68c4.39941 2.7002 10.0996 4.2002 17.1992 4.2002c17.5 0 31.7002 -16.9004 31.7002 -37.7998zM257.9 206.4c17.3994 0 31.6992 -17 31.6992 -38.1006
c0 -20.8994 -14.2998 -37.7998 -31.6992 -37.7998c-7.10059 0 -12.8008 1.2002 -17.2002 3.7002v68c4.39941 2.7002 10.0996 4.2002 17.2002 4.2002zM448 368v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h352
c26.5 0 48 -21.5 48 -48zM185 192.9c41 0 74.2002 35.5996 74.2002 79.5996s-33.2002 79.5996 -74.2002 79.5996c-12 0 -24.0996 -3.19922 -34.5996 -8.7998h-45.7002v-206.3l51.7998 10.0996v50.6006c8.59961 -3.10059 18.0996 -4.7998 28.5 -4.7998zM343.4 167.6
c0 44 -33.2002 79.6006 -73.9004 79.6006c-3.2002 0 -6.40039 -0.200195 -9.59961 -0.700195c-3.7002 -12.5 -10.1006 -23.7998 -19.2002 -33.4004c-13.7998 -15 -32.2002 -23.7998 -51.7998 -24.7998v-156.3l51.7998 10.0996v50.6006
c8.59961 -3.2002 18.2002 -4.7002 28.7002 -4.7002c40.7998 0 74 35.5996 74 79.5996z" />
    <glyph glyph-name="pied-piper-alt" unicode="&#xf1a8;" horiz-adv-x="576" 
d="M244 202l-27.7002 -5.7002l-1.7002 4.90039c6.7002 0.5 12.7002 3.7002 19.3008 3.7002c3.7998 0 6.89941 -0.900391 10.0996 -2.90039zM379.9 4.09961c9.5 0 28.1992 -45.0996 33 -55.0996c-35.9004 -13.4004 -70.3008 -15.9004 -106 -9.7998l-6.90039 45.0996
c15.7998 10.2998 60.9004 19.7998 79.9004 19.7998zM340.8 271c-7.59961 3.5 -63.8994 6.40039 -98.7998 -10c6.2998 11.7998 13.2002 17 25.9004 21.7998c27.2998 10.2998 40.1992 30.5 58.8994 51.1006c11.9004 -8.40039 12 -24.6006 31.6006 -23v-21.8008
l6.2998 -0.299805c37.3994 14.4004 74.7002 30.2002 106.6 54.6006c48.2998 36.7998 52.9004 50 81.2998 100l2 2.59961c-0.599609 -14.0996 -6.2998 -27.2998 -12.3994 -39.9004c-30.5 -63.7998 -78.7002 -100.3 -146.8 -116.699
c-12.4004 -2.90039 -26.4004 -3.2002 -37.6006 -8.90039c1.40039 -9.7998 13.2002 -18.0996 13.2002 -23c0 -3.40039 -5.5 -7.2002 -7.5 -8.59961c-11.2002 12.8994 -16.0996 19.2998 -22.7002 22.0996zM555.5 448l-0.299805 -1.40039l-0.600586 -0.599609
l0.300781 0.900391zM496.3 65.9004c20.1006 -34.2002 43.7002 -54.3008 72.7002 -79.9004c-31 -19.2998 -70.4004 -32.2002 -103.5 -47.2002c-55.2002 46.2998 -23 229.9 -111.5 229.9c-3.5 -0.700195 -2.40039 -0.299805 -4.59961 -1.7002
c1.09961 -1.40039 2.59961 -2.90039 3.69922 -4c23.9004 -20.0996 33.4004 -24.4004 34.8008 -58.5996l0.299805 -9.5c0.799805 -21.6006 -5.5 -42.5 -9.7998 -63.5c-25.9004 0.699219 -51.2002 -11 -77.9004 -2.90039c-0.700195 5.90039 -1.09961 30.9004 0.299805 41.0996
c1.40039 9.5 33.6006 29.9004 33 43.7002c-5.5 0.600586 -9.2002 -2.59961 -12.3994 -6.89941c-13.3008 -19.5 -47.2002 -41.9004 -71.3008 -41.9004c-16.5996 0 -56.2998 71.5 -76.3994 85.9004c-3.2002 2.2998 -5.2002 5.39941 -7.7998 8.59961
c-16.1006 -3.7998 -139.4 -32.2002 -147.4 -32.2002c-6 0 -11.5 4.90039 -11.5 10.9004c0 5.5 3.40039 10.7002 8.90039 11.7998l139.6 30.4004c-9.5 17.1992 12.2998 17.5 21.5 20.0996c3.2002 0.799805 6.2998 4 9.5 4c6.2998 0 11.7998 -8.90039 13.7998 -14.0996
c6.2998 1.39941 45.7002 10.5996 49.4004 10.5996c15.2002 0 15.8994 -20.0996 2.89941 -22.7002l-52.2998 -11.5l-0.299805 -4.59961c-0.299805 -10.1006 45.4004 -60.1006 53.4004 -60.1006c18.0996 0 54.8994 41.7002 54.8994 60.1006
c0 30.7002 -42.7998 12.5996 -42.7998 33.5996c0 3.5 1.2002 6.60059 2.90039 9.7998l-19.5 5.5c13.0996 13.6006 13.7998 31.7002 10.8994 50.3008c14.7002 2.89941 26.7002 4.59961 41.4004 4.59961c56.8994 0 45.7002 -8.59961 65.5 -54.2998l14.3994 7.2002
c-2.2998 -34.2002 -36.1992 -17.5 -35.0996 -31l0.299805 -6c74.7002 2.89941 116.101 -58.6006 150 -115.5zM300.1 19.7998h8.90039l2.90039 -23.7998l-11.8008 -3.40039v27.2002zM231.4 170.2l13.7998 3.5l31.2998 -50.9004l-21 -13.7998zM315.8 15.2998
c22.6006 2.5 32.7002 6.2998 59.5 6.2998c0.299805 -1.39941 0.900391 -3.19922 0.900391 -4.59961c0 -7.5 -49.4004 -12.5996 -58.4004 -14.0996z" />
    <glyph glyph-name="drupal" unicode="&#xf1a9;" 
d="M319.5 333.3c13.5 -8.2998 96.5 -67 96.5 -179.3c0 -112 -88.5 -186 -190.2 -186c-102 0 -193.8 80.2998 -193.8 189.5c0 109 85 167.5 100.8 175.8c18.7002 10.1006 32.2002 15.2998 53.5 32.2998c10.5 8.30078 19.2998 20.2002 22 49.5
c15.2002 -18.2998 33.5 -39.5 46.5 -48.2998c21.2002 -14 42.5 -19.5 64.7002 -33.5zM322 7.7002c4.2002 4.2002 1.90039 13.0996 -4.2002 8.5c-8.5 -6.2998 -27.5 -14 -54.5 -14c-34.5 0 -51.5 13.2998 -51.5 13.2998c-6.2002 0 -11.2998 -7.2002 -6.5 -12
c26.6006 -24.5 96.6006 -15.9004 116.7 4.2002zM267.5 60.2998c-6.5 -2.7002 -28.4004 -16.7998 -22.4004 -25c2.40039 -3.2998 5.2002 -1.2998 12.2002 4.7002c7.2002 5.7998 12 11 26.7002 11c25.2998 0 18.0996 -19.9004 26.5 -15.7002
c9.90039 4.90039 -2.09961 20.9004 -6.2002 23.7002c-7.7998 5.09961 -28.0996 4.90039 -36.7998 1.2998zM360 43c39.0996 -3.2998 64.5 106 15.7998 106c-20 0 -60.5 -41.5 -81.7998 -41.7998c-24.7002 -0.5 -59 49 -108.5 48.5
c-66.4004 -0.400391 -90.5996 -78.6006 -51.7998 -105.2c57.2002 -38.7002 130.399 42.9004 161.3 42c19.5 -0.700195 49.7998 -48.5 65 -49.5z" />
    <glyph glyph-name="joomla" unicode="&#xf1aa;" 
d="M0.599609 355.9c0 33.2998 26.8008 60.0996 59.8008 60.0996c30 0 54.5 -21.9004 59.1992 -50.2002c32.6006 7.60059 67.1006 -0.599609 96.5 -30l-44.2998 -44.2998c-20.5 20.5 -42.5996 16.2998 -55.3994 3.5c-14.3008 -14.2998 -14.3008 -37.9004 0 -52.2002
l99.5 -99.5l-44 -44.2998c-87.7002 87.2002 -49.7002 49.7002 -99.8008 99.7002c-26.7998 26.5 -35 64.7998 -24.7998 98.8994c-26.8994 5.80078 -46.7002 29.7002 -46.7002 58.3008zM130.1 239.5c28.5 28.4004 81.3008 80.7998 99.6006 99.9004
c26.5996 26.5996 64.5 35 98.2998 25.0996c4.09961 29.0996 29.2002 51.5996 59.5 51.5996c33 0 59.7998 -26.8994 59.7998 -60.0996c0 -30.2998 -22.7002 -55.4004 -51.8994 -59.5c9.59961 -33.5996 2.2998 -70 -28.9004 -101.2l-44 44.2998
c20.5 20.4004 16.2998 42.6006 3.5 55.4004c-14.2998 14.2998 -37.5996 14.2998 -51.9004 0c-10 -10.0996 -89.6992 -89.7998 -99.6992 -99.7998zM396.4 87.2998c29.0996 -4.09961 51.5996 -28.8994 51.5996 -59.0996c0 -33.2998 -26.7998 -60.1006 -59.7998 -60.1006
c-29.2002 0 -53.4004 20.7002 -58.9004 48.1006c-34.7002 -10.7998 -75.0996 -2.2002 -102.7 28l44 44.2998c20.4004 -20.5 42.6006 -16.2998 55.4004 -3.5c14.2998 14.2998 14.2998 37.5996 0 51.9004l-99.7002 99.6992l44.2998 44.3008
c104.5 -104.4 87.7002 -87.5 99.5 -99.7002c25.4004 -25.4004 34.5 -61.2002 26.3008 -93.9004zM312.1 140.4c-87.2998 -87.3008 -67.3994 -67.7002 -99.5 -99.7002c-25.6992 -25.4004 -61.5 -34.2002 -94.1992 -26c-6.10059 -26.9004 -30 -46.7002 -58.6006 -46.7002
c-33 0 -59.7998 26.7998 -59.7998 60.0996c0 28.3008 19.5 52.2002 46.2002 58.2002c-8.5 33.1006 -0.700195 68.1006 29.5 98.2998l44 -44.2998c-20.1006 -20.0996 -16.2998 -42 -3.2002 -55.3994c14.2998 -14.3008 37.5996 -14.3008 51.9004 0
c49.2998 49.3994 12.6992 13.3994 99.6992 99.7998z" />
    <glyph glyph-name="behance" unicode="&#xf1b4;" horiz-adv-x="576" 
d="M232 210.8c43.5996 -12.2998 64.7002 -45.2002 64.7002 -89.7002c0 -72 -60.5 -102.899 -124.9 -102.899h-171.8v354.399h167.1c60.7002 0 113.301 -17.1992 113.301 -87.7998c0 -35.7998 -16.6006 -58.7998 -48.4004 -74zM77.9004 312.1v-82.6992h79
c27.7998 0 47.5 12.0996 47.5 42.1992c0 32.6006 -25.3008 40.5 -53.4004 40.5h-73.0996zM161.2 78.4004c31.7002 0 57.5996 11.1992 57.5996 47c0 36.2998 -21.7002 50.5996 -56 50.5996h-84.8994v-97.5996h83.2998zM519.7 319.1h-143.7v34.9004h143.7v-34.9004zM576 142.8
c0 -4.5 -0.299805 -9 -0.599609 -13.2002h-185.101c0 -41.0996 21.7002 -65.2998 63 -65.2998c21.4004 0 49 11.6006 55.7002 33.5h62.2002c-19.1006 -58.7002 -58.7998 -86.2998 -120.101 -86.2998c-81 0 -131.3 54.7998 -131.3 134.7c0 77 53.1006 135.8 131.3 135.8
c80.5 0 124.9 -63.2998 124.9 -139.2zM390.4 174h114.699c-3 34 -20.7998 54.7998 -56.1992 54.7998c-33.8008 0 -56.2002 -21.0996 -58.5 -54.7998z" />
    <glyph glyph-name="behance-square" unicode="&#xf1b5;" 
d="M186.5 155c0 -19.2998 -14 -25.4004 -31.2002 -25.4004h-45.0996v52.9004h46c18.5996 -0.0996094 30.2998 -7.7998 30.2998 -27.5zM178.8 237.3c0 -16.2998 -10.7002 -22.8994 -25.7998 -22.8994h-42.7002v44.7998h39.6006c15.1992 0 28.8994 -4.2002 28.8994 -21.9004z
M311.1 214.1c19.2002 0 28.8008 -11.1992 30.5 -29.6992h-62.1992c1.19922 18.2998 13.3994 29.6992 31.6992 29.6992zM448 368v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h352c26.5 0 48 -21.5 48 -48zM271.7 263h77.7998
v18.9004h-77.7998v-18.9004zM228.7 152.7c0 24.0996 -11.4004 44.8994 -35 51.5996c17.2002 8.2002 26.2002 17.7002 26.2002 37c0 38.2002 -28.5 47.5 -61.4004 47.5h-90.5v-192h93.0996c34.9004 0.200195 67.6006 16.9004 67.6006 55.9004zM380 167.5
c0 41.0996 -24.0996 75.4004 -67.5996 75.4004c-42.4004 0 -71.1006 -31.8008 -71.1006 -73.6006c0 -43.2998 27.2998 -73 71.1006 -73c33.1992 0 54.6992 14.9004 65.0996 46.7998h-33.7002c-3.7002 -11.8994 -18.5996 -18.0996 -30.2002 -18.0996
c-22.3994 0 -34.0996 13.0996 -34.0996 35.2998h100.2c0.0996094 2.2998 0.299805 4.7998 0.299805 7.2002z" />
    <glyph glyph-name="steam" unicode="&#xf1b6;" horiz-adv-x="496" 
d="M496 192c0 -137 -111.2 -248 -248.4 -248c-113.8 0 -209.6 76.2998 -239 180.4l95.2002 -39.3008c6.40039 -32.0996 34.9004 -56.3994 68.9004 -56.3994c39.2002 0 71.8994 32.3994 70.2002 73.5l84.5 60.2002c52.0996 -1.30078 95.7998 40.8994 95.7998 93.5
c0 51.5996 -42 93.5 -93.7002 93.5s-93.7002 -42 -93.7002 -93.5v-1.2002l-59.2002 -85.7002c-15.5 0.900391 -30.6992 -3.40039 -43.5 -12.0996l-133.1 55c10.2002 127.699 117.1 228.1 247.6 228.1c137.2 0 248.4 -111 248.4 -248zM155.7 63.7002
c19.7998 -8.2002 42.5 1.09961 50.7998 21c8.2998 19.7998 -1.09961 42.5 -20.9004 50.7002l-31.5 13c12.2002 4.59961 26 4.7998 38.9004 -0.600586c13 -5.39941 23.0996 -15.5996 28.5 -28.5996s5.2998 -27.2998 -0.0996094 -40.2998
c-11.2002 -26.8008 -42.1006 -39.6006 -69 -28.4004c-11.9453 4.99414 -21.6055 14.1826 -27.2002 25.7998zM329.5 193.6c-34.4004 0 -62.4004 28 -62.4004 62.3008c0 34.2998 28 62.2998 62.4004 62.2998s62.4004 -28 62.4004 -62.2998
c0 -34.3008 -27.9004 -62.3008 -62.4004 -62.3008zM329.6 209.2c25.9004 0 46.9004 21 46.9004 46.7998c0 25.9004 -21 46.7998 -46.9004 46.7998c-25.8994 0 -46.8994 -21 -46.8994 -46.7998c0.0996094 -25.7998 21.0996 -46.7998 46.8994 -46.7998z" />
    <glyph glyph-name="steam-square" unicode="&#xf1b7;" 
d="M185.2 91.5c7.7002 18.5 -1 39.7002 -19.6006 47.4004l-29.5 12.1992c11.4004 4.30078 24.3008 4.5 36.4004 -0.5c12.2002 -5.09961 21.5996 -14.5996 26.7002 -26.6992c5 -12.2002 5 -25.6006 -0.100586 -37.7002c-10.5 -25.1006 -39.3994 -37 -64.5996 -26.5
c-11.5996 4.7998 -20.4004 13.5996 -25.4004 24.2002l28.5 -11.8008c18.6006 -7.7998 39.9004 0.900391 47.6006 19.4004zM400 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v112.8l89.0996 -36.8994
c6 -30 32.7002 -52.7002 64.5 -52.7002c36.6006 0 67.3008 30.2998 65.7002 68.7998l79 56.2998c48.7002 -1.2002 89.6006 38.2998 89.6006 87.5c0 48.2002 -39.3008 87.5 -87.6006 87.5s-87.5996 -39.2998 -87.5996 -87.5v-1.09961l-55.4004 -80.2002
c-14.5 0.799805 -28.7002 -3.09961 -40.7002 -11.2998l-116.6 48.0996v160.7c0 26.5 21.5 48 48 48h352zM300.3 193.5c-32.2002 0 -58.3994 26.0996 -58.3994 58.2998s26.1992 58.2998 58.3994 58.2998s58.4004 -26.1992 58.4004 -58.2998
c0 -32.0996 -26.2002 -58.2998 -58.4004 -58.2998zM300.4 208.1c24.1992 0 43.8994 19.6006 43.8994 43.8008c0 24.1992 -19.5996 43.7998 -43.8994 43.7998c-24.2002 0 -43.9004 -19.6006 -43.9004 -43.7998c0 -24.2002 19.7002 -43.8008 43.9004 -43.8008z" />
    <glyph glyph-name="spotify" unicode="&#xf1bc;" horiz-adv-x="496" 
d="M248 440c136.9 0 248 -111.1 248 -248s-111.1 -248 -248 -248s-248 111.1 -248 248s111.1 248 248 248zM348.7 75.0996c8.09961 0 15.2002 6.30078 15.2002 15.4004s-3.60059 12.5996 -9.7002 16.5c-71.4004 42.7002 -155.101 44.2998 -237 26.2002
c-7.5 -1.60059 -13.6006 -6.5 -13.6006 -16.7998c0 -8.10059 6.10059 -15.8008 15.8008 -15.8008c2.89941 0 8 1.60059 11.8994 2.60059c71.7002 14.7002 144.3 13.0996 206.7 -24.5c3.90039 -2.2998 6.5 -3.60059 10.7002 -3.60059zM375.6 140.7
c10.9004 0 19.3008 8.7002 19.4004 19.5c0 8.7002 -3.2002 14.8994 -11.2998 19.7002c-49.4004 29.3994 -112.101 45.5 -177 45.5c-41.6006 0 -70 -5.80078 -97.7998 -13.6006c-10.3008 -2.89941 -15.5 -10 -15.5 -20.7002c0 -10.6992 8.69922 -19.3994 19.3994 -19.3994
c4.5 0 7.10059 1.2998 11.9004 2.59961c82.8994 22.5 176.1 7.60059 238.6 -29.3994c3.60059 -1.90039 7.10059 -4.2002 12.2998 -4.2002zM406.6 216.9c12.2002 0 23.2002 9.69922 23.2002 23.2998c0 11.8994 -5.09961 18.0996 -12.8994 22.5996
c-55.9004 32.6006 -132.4 47.7998 -205.4 47.7998c-42.9004 0 -82.2998 -4.89941 -117.5 -15.1992c-9 -2.60059 -17.4004 -10.3008 -17.4004 -23.9004c0 -13.2998 10.1006 -23.5996 23.3008 -23.5996c4.7998 0 9.2998 1.59961 12.8994 2.59961
c82.4004 23 209.7 12.7998 280.9 -29.7002c4.5 -2.59961 7.7002 -3.89941 12.8994 -3.89941z" />
    <glyph glyph-name="deviantart" unicode="&#xf1bd;" horiz-adv-x="320" 
d="M320 354.8l-98.2002 -179.1l7.40039 -9.5h90.7998v-127.7h-160.9l-13.5 -9.2002l-43.6992 -84c-0.300781 0 -8.60059 -8.59961 -9.2002 -9.2002h-92.7002v93.2002l93.2002 179.4l-7.40039 9.2002h-85.7998v127.6h156l13.5 9.2002l43.7002 84
c0.299805 0 8.59961 8.59961 9.2002 9.2002h97.5996v-93.1006z" />
    <glyph glyph-name="soundcloud" unicode="&#xf1be;" horiz-adv-x="640" 
d="M111.4 191.7l5.7998 -65l-5.7998 -68.2998c-0.300781 -2.5 -2.2002 -4.40039 -4.40039 -4.40039s-4.2002 1.90039 -4.2002 4.40039l-5.59961 68.2998l5.59961 65c0 2.2002 1.90039 4.2002 4.2002 4.2002c2.2002 0 4.09961 -2 4.40039 -4.2002zM132.8 237.3
c2.5 0 4.7002 -2.2002 4.7002 -5l5.7998 -105.6l-5.7998 -68.2998c0 -2.80078 -2.2002 -5 -4.7002 -5c-2.7998 0 -4.7002 2.19922 -5 5l-5 68.2998l5 105.6c0.299805 2.7998 2.2002 5 5 5zM158.3 261.4c2.7998 0 5.2998 -2.2002 5.2998 -5.30078l5.30078 -130
l-5.30078 -67.7998c0 -3.09961 -2.5 -5.2998 -5.2998 -5.2998c-3.09961 0 -5.2998 2.2002 -5.59961 5.2998l-4.40039 67.7998l4.40039 130c0.299805 3.10059 2.5 5.30078 5.59961 5.30078zM7.2002 164.8c1.39941 0 2.2002 -1.09961 2.5 -2.5l5.59961 -35.5996l-5.59961 -35
c-0.299805 -1.40039 -1.10059 -2.5 -2.5 -2.5c-1.40039 0 -2.2002 1.09961 -2.5 2.5l-4.7002 35l4.7002 35.5996c0.299805 1.40039 1.09961 2.5 2.5 2.5zM30.7998 186.7c1.40039 0 2.5 -1.10059 2.7998 -2.5l7.2002 -57.5l-7.2002 -56.4004
c-0.299805 -1.39941 -1.39941 -2.5 -2.7998 -2.5c-1.39941 0 -2.5 1.10059 -2.5 2.7998l-6.39941 56.1006l6.39941 57.5c0 1.39941 1.10059 2.5 2.5 2.5zM56.0996 198.1c1.7002 0 3.10059 -1.39941 3.10059 -3.2998l6.89941 -68.0996l-6.89941 -65.7998
c0 -1.7002 -1.40039 -3.10059 -3.10059 -3.10059c-1.59961 0 -3 1.40039 -3.2998 3.10059l-5.7998 65.7998l5.7998 68.0996c0.200195 1.90039 1.60059 3.2998 3.2998 3.2998zM81.4004 200.3c1.89941 0 3.59961 -1.39941 3.89941 -3.59961l6.40039 -70l-6.40039 -67.7998
c-0.299805 -2.2002 -2 -3.60059 -3.89941 -3.60059c-1.90039 0 -3.60059 1.40039 -3.60059 3.60059l-5.7998 67.7998l5.7998 70c0 2.2002 1.7002 3.59961 3.60059 3.59961zM322.8 311.2c2.5 -1.40039 4.10059 -4.2002 4.5 -7.2002l3.90039 -177.5l-3.90039 -64.2002
c0 -4.7002 -3.89941 -8.59961 -8.59961 -8.59961s-8.60059 3.89941 -8.90039 8.59961l-1.7002 31.7002l-1.69922 32.5l3.2998 176.7v0.799805c0.200195 2.5 1.39941 5 3.2998 6.7002c1.40039 1.09961 3.40039 1.89941 5.59961 1.89941
c1.40039 0 3.10059 -0.599609 4.2002 -1.39941zM296.1 295.9c2.2002 -1.40039 3.60059 -3.90039 3.90039 -6.7002l3.2998 -162.8l-3.09961 -58.6006l-0.299805 -6.7002c0 -2.2998 -0.800781 -4.19922 -2.5 -5.59961c-1.40039 -1.40039 -3.40039 -2.5 -5.60059 -2.5
c-2.5 0 -4.7002 1.2002 -6.39941 3.09961c-1.10059 1.40039 -1.7002 3 -1.7002 4.7002v0.299805c-3.10059 65.3008 -3.10059 65.6006 -3.10059 65.6006l2.80078 160.8l0.299805 1.7002c0 2.7998 1.39941 5.2998 3.59961 6.7002
c1.2998 0.799805 2.7998 1.39941 4.40039 1.39941c1.59961 0 3 -0.599609 4.39941 -1.39941zM184.7 273.4c3.39941 0 5.89941 -2.80078 6.09961 -6.10059l5 -140.6l-5 -67.2002c-0.299805 -3.2998 -2.7998 -5.7998 -6.09961 -5.7998c-3 0 -5.5 2.5 -5.7998 5.7998
l-4.40039 67.2002l4.40039 140.6c0 3.2998 2.69922 6.10059 5.7998 6.10059zM561.4 210.6c43.2998 0 78.5996 -35.2998 78.5 -78.8994c0 -43.2998 -35.3008 -78.2998 -78.6006 -78.2998h-218.3c-4.7002 0.599609 -8.59961 4.19922 -8.59961 9.19922v249.7
c0 4.7998 1.69922 7 7.7998 9.2002c15.2998 6.09961 32.5 9.40039 50.2998 9.40039c72.5 0 131.9 -55.6006 138.3 -126.4c9.5 3.90039 19.7998 6.09961 30.6006 6.09961zM264.7 270.9c4.2002 0 7.2002 -3.30078 7.5 -7.80078l3.89941 -136.699l-3.89941 -65.6006
c0 -4.2002 -3.2998 -7.5 -7.5 -7.5s-7.5 3.2998 -7.7998 7.5l-3.30078 65.6006l3.30078 136.699c0.299805 4.5 3.59961 7.80078 7.7998 7.80078zM211.1 278.7c3.60059 0 6.40039 -3.10059 6.7002 -6.7002l4.40039 -145.3l-4.40039 -66.9004
c-0.299805 -3.59961 -3.09961 -6.39941 -6.7002 -6.39941c-3.2998 0 -6.09961 2.7998 -6.39941 6.39941l-3.90039 66.9004l3.90039 145.3c0 3.59961 3.09961 6.7002 6.39941 6.7002zM237.8 275.3c3.90039 0 6.90039 -3 6.90039 -6.89941l4.2002 -141.7l-4.2002 -66.4004
c0 -3.7998 -3.10059 -6.89941 -6.90039 -6.89941s-6.59961 3 -6.89941 6.89941l-3.90039 66.4004l3.90039 141.7c0 3.7998 3 6.89941 6.89941 6.89941z" />
    <glyph glyph-name="vine" unicode="&#xf1ca;" horiz-adv-x="384" 
d="M384 193.3v-52.0996c-18.4004 -4.2002 -36.9004 -6.10059 -52.0996 -6.10059c-36.9004 -77.3994 -103 -143.8 -125.101 -156.199c-14 -7.90039 -27.0996 -8.40039 -42.7002 0.799805c-27.0996 16.2998 -129.899 100.6 -164.1 365.6h74.5
c18.7002 -159.1 64.5 -240.7 114.8 -301.8c27.9004 27.9004 54.7998 65.0996 75.6006 106.9c-49.8008 25.2998 -80.1006 80.8994 -80.1006 145.6c0 65.5996 37.7002 115.1 102.2 115.1c114.9 0 106.2 -127.899 81.5996 -181.5c0 0 -46.3994 -9.19922 -63.5 20.5
c3.40039 11.3008 8.2002 30.8008 8.2002 48.5c0 31.3008 -11.2998 46.6006 -28.3994 46.6006c-18.2002 0 -30.8008 -17.1006 -30.8008 -50c0.100586 -79.2002 59.4004 -118.7 129.9 -101.9z" />
    <glyph glyph-name="codepen" unicode="&#xf1cb;" horiz-adv-x="512" 
d="M502.285 288.296c6.00098 -3.99902 9.71484 -11.1426 9.71582 -18.2852v-155.999c0 -7.14258 -3.71484 -14.2871 -9.71484 -18.2861l-234 -156.021c-8.06055 -4.95996 -16.584 -4.91504 -24.5713 0l-234 156.021c-6.00098 4 -9.71484 11.1436 -9.71484 18.2861v155.999
c0 7.14258 3.71387 14.2861 9.71387 18.2852l234 156c8.06055 4.95996 16.584 4.91504 24.5713 0zM278 384.869v-102.572l95.4287 -63.7148l76.8574 51.4287zM234 384.869l-172.286 -114.858l76.8574 -51.4287l95.4287 63.7148v102.572zM44 228.868v-73.7139
l55.1426 36.8564zM234 -0.84668v102.571l-95.4287 63.7158l-76.8574 -51.4297zM256 140.011l77.7148 52l-77.7148 52l-77.7148 -52zM278 -0.84668l172.286 114.857l-76.8574 51.4297l-95.4287 -63.7158v-102.571zM468 155.154v73.7139l-55.1426 -36.8574z" />
    <glyph glyph-name="jsfiddle" unicode="&#xf1cc;" horiz-adv-x="576" 
d="M510.634 210.538c45.6885 -25.334 68.3721 -74.5605 56.832 -122.634c-12.1035 -50.4199 -55.5479 -86.6592 -108.212 -87.293c-84.0303 -1.01172 -168.079 -0.458984 -252.12 -0.480469c-30.3223 -0.00683594 -60.668 -0.492188 -90.959 0.539062
c-48.0938 1.63672 -91.7764 35.8643 -105.607 81.4326c-14.1289 46.5508 2.18945 94.623 41.9014 124.615c2.54688 1.92383 4.86914 6.52051 4.51465 9.54492c-3.74609 31.8604 7.14453 57.6709 32.6758 76.4082c26.2822 19.2881 55.2285 21.5879 85.3311 9.16699
c2.36621 -0.975586 4.63965 -2.17773 7.82422 -3.68555c16.5215 27.5332 38.1221 48.6523 65.4922 63.9023c92.8594 51.7402 210.954 8.31152 246.85 -91.6455c5.55762 -15.4766 6.74512 -32.6074 9.09668 -49.0947c0.716797 -5.02832 1.6543 -8.15527 6.38086 -10.7764z
M531.741 53.6582c39.3135 48.375 22.418 117.668 -35.1426 144.497c-7.43555 3.46582 -9.72559 7.74414 -9.84766 15.8936c-1.87012 125.129 -132.78 187.063 -230.24 132.697c-26.1133 -14.5674 -46.4492 -34.8955 -60.6709 -61.2939
c-7.59082 -14.0908 -11.9287 -7.97754 -22.1982 -2.52734c-24.6113 13.0635 -49.0469 12.6406 -72.0332 -3.08301c-21.9678 -15.0244 -31.9102 -36.6201 -26.4199 -62.9805c2.4082 -11.5703 -0.914062 -17.0635 -10.0967 -23.1367
c-38.1895 -25.2578 -53.0879 -74.8604 -34.1855 -116.105c18.4355 -40.2295 51.3135 -59.6631 95.1748 -59.9951c0.700195 -0.00488281 163.728 -0.545898 163.728 0.154297c56.8857 0 113.778 -0.551758 170.652 0.229492
c28.9375 0.397461 53.0498 13.2178 71.2803 35.6504zM443.952 134.157c-5.84863 -31.1572 -34.6221 -55.0967 -66.666 -55.0957c-16.9531 0.00195312 -32.0586 6.5459 -44.0791 17.7051c-27.6973 25.7139 -71.1406 74.9805 -95.9375 93.3877
c-20.0557 14.8877 -41.9893 12.333 -60.2715 -3.78223c-49.9961 -44.0713 15.8594 -121.775 67.0625 -77.1885c4.54883 3.95996 7.84082 9.54297 12.7441 12.8447c8.18457 5.50879 20.7666 0.883789 13.168 -10.6221c-17.3574 -26.2842 -49.3301 -38.1973 -78.8623 -29.3008
c-28.8975 8.70312 -48.8408 35.9678 -48.626 70.1787c1.22461 22.4844 12.3633 43.0596 35.4141 55.9648c22.5742 12.6377 46.3682 13.1455 66.9902 -2.47363c50.791 -38.4756 75.5781 -81.7451 107.296 -101.245c24.5586 -15.0996 54.2549 -7.36328 68.8232 17.5059
c28.8301 49.209 -34.5918 105.016 -78.8682 63.46c-3.98828 -3.74414 -6.91699 -8.93164 -11.4092 -11.7197c-10.9756 -6.81152 -17.333 4.1123 -12.8096 10.3525c20.7031 28.5537 50.4639 40.4404 83.2715 28.2139c31.4287 -11.7139 49.1074 -44.3662 42.7598 -78.1855z
" />
    <glyph glyph-name="rebel" unicode="&#xf1d0;" horiz-adv-x="512" 
d="M256.5 -56c-139.3 0 -247.5 116.2 -243.3 254.1c2.7998 79.2002 43.2002 152.2 116.5 200.4c0.299805 0 1.89941 0.599609 1.09961 -0.799805c-5.7998 -5.5 -111.3 -129.8 -14.0996 -226.4c49.7998 -49.5 90 -2.5 90 -2.5c38.5 50.1006 -0.600586 125.9 -0.600586 125.9
c-10 24.8994 -45.6992 40.0996 -45.6992 40.0996l28.7998 31.7998c24.3994 -10.5 43.2002 -38.6992 43.2002 -38.6992c0.799805 29.5996 -21.9004 61.3994 -21.9004 61.3994l44.5996 50.7002l44.3008 -50.0996c-20.5 -28.8008 -21.9004 -62.6006 -21.9004 -62.6006
c13.7998 23 43.5 39.2998 43.5 39.2998l28.5 -31.7998c-27.4004 -8.89941 -45.4004 -39.8994 -45.4004 -39.8994c-15.7998 -28.5 -27.0996 -89.4004 0.600586 -127.301c32.3994 -44.5996 87.7002 2.80078 87.7002 2.80078c102.699 91.8994 -10.5 225 -10.5 225
c-6.10059 5.5 0.799805 2.7998 0.799805 2.7998c50.0996 -36.5 114.6 -84.4004 116.2 -204.8c2 -145.601 -99.9004 -249.4 -242.4 -249.4z" />
    <glyph glyph-name="empire" unicode="&#xf1d1;" horiz-adv-x="496" 
d="M287.6 393.8c-10.7998 2.2002 -22.0996 3.2998 -33.5 3.60059v18.1992c78.1006 -2.19922 146.101 -44 184.601 -106.6l-15.7998 -9.09961c-6.10059 9.69922 -12.7002 18.7998 -20.2002 27.0996l-18 -15.5c-26 29.5996 -61.4004 50.7002 -101.9 58.4004zM53.4004 125.6
c3.89941 -10.7998 8.2998 -21.0996 13.5996 -31.0996l-15.7998 -9.09961c-17.1006 31.5996 -27.1006 68.0996 -27.1006 106.6s9.90039 75 27.1006 106.5l15.7998 -9.09961c-5.2998 -9.7002 -10 -20.2002 -13.5996 -31l22.6992 -7.7002
c-6.39941 -18.2998 -9.69922 -38.2002 -9.69922 -58.7002s3.59961 -40.4004 10 -58.7002zM213.1 14l-4.69922 -23.7998c10.7998 -1.90039 22.1992 -3.2998 33.5 -3.60059v-18.2998c-78.1006 2.2998 -146.4 44.2998 -184.9 106.601l16 9.39941
c5.7998 -9.7002 12.7002 -18.7998 20.2002 -27.3994l18 15.7998c26.0996 -29.6006 61.5 -50.7002 101.899 -58.7002zM93.2998 327.1c-7.5 -8.2998 -14.0996 -17.5 -20.0996 -27.1992l-15.7998 9.09961c38.5 62.5996 106.5 104.4 184.6 106.6v-18.1992
c-11.4004 -0.300781 -22.7002 -1.40039 -33.5 -3.60059l4.7002 -23.7998c-40.5 -7.7002 -75.9004 -28.7998 -101.9 -58.4004zM402.7 56.9004c7.5 8.59961 14.3994 17.6992 20.0996 27.3994l16.1006 -9.39941c-38.5 -62.3008 -106.801 -104.4 -184.9 -106.601v18.2998
c11.4004 0.300781 22.7002 1.7002 33.5 3.60059l-4.7002 23.7998c40.5 8 75.9004 29.0996 101.9 58.7002zM496 192c0 -137 -111 -248 -248 -248s-248 111 -248 248s111 248 248 248s248 -111 248 -248zM483.8 192c0 130.1 -105.7 235.8 -235.8 235.8
s-235.8 -105.7 -235.8 -235.8s105.7 -235.8 235.8 -235.8s235.8 105.7 235.8 235.8zM444.8 298.6c17.2002 -31.5996 27.1006 -68.0996 27.1006 -106.6s-9.90039 -75 -27.1006 -106.4l-15.7998 9.10059c5.2998 10 9.7002 20.2002 13.5996 31l-23 7.7002
c6.40039 18.2998 10 38.1992 10 58.6992s-3.2998 40.4004 -9.69922 58.7002l22.6992 7.7002c-3.59961 10.7998 -8.2998 21.2998 -13.5996 31zM261.8 120.9l13.2998 -66.7002c-8.59961 -1.7002 -17.6992 -2.7998 -27.0996 -2.7998s-18.5 1.09961 -27.0996 2.7998
l13.2998 66.7002c-16.2998 3.2998 -30.5 11.5996 -40.7002 23.5l-51.2002 -44.8008c-11.8994 13.6006 -21.2998 29.4004 -27.0996 46.8008l64.2002 22.0996c-2.5 7.40039 -3.90039 15.2002 -3.90039 23.5s1.40039 16 3.90039 23.5l-64.5 22.0996
c6.09961 17.5 15.5 33.2002 27.3994 46.8008l51.2002 -44.8008c10.2998 11.9004 24.4004 20.5 40.7002 23.8008l-13.2998 66.3994c8.59961 2 17.6992 2.7998 27.0996 2.7998s18.5 -0.899414 27.0996 -2.7998l-13.2998 -66.3994
c16.2998 -3.30078 30.5 -11.9004 40.7002 -23.8008l51.2002 44.8008c11.8994 -13.6006 21.2998 -29.4004 27.3994 -46.8008l-64.5 -22.0996c2.5 -7.40039 3.90039 -15.2002 3.90039 -23.5s-1.40039 -16 -3.90039 -23.5l64.2002 -22.0996
c-5.7998 -17.5 -15.2002 -33.2002 -27.0996 -46.8008l-51.2002 44.8008c-10.2998 -11.9004 -24.4004 -20.2002 -40.7002 -23.5z" />
    <glyph glyph-name="git-square" unicode="&#xf1d2;" 
d="M100.59 113.76c48.5703 -3.30957 58.9502 -2.10938 58.9502 -11.9395c0 -20 -65.5498 -20.0605 -65.5498 -1.52051c0.00976562 5.08984 3.29004 9.40039 6.59961 13.46zM128.54 230.4c30.96 0 31.7598 -44.4707 -0.75 -44.4707c-33 0 -31.54 44.4707 0.75 44.4707z
M448 368v-352c0 -26.4922 -21.5078 -48 -48 -48h-352c-26.4922 0 -48 21.5078 -48 48v352c0 26.4922 21.5078 48 48 48h352c26.4922 0 48 -21.5078 48 -48zM221 298.69c0 -14.4902 8.37988 -22.8809 22.8604 -22.8809c14.7393 0 23.1299 8.39062 23.1299 22.8809
c0 14.4893 -8.37012 22.3096 -23.1104 22.3096c-14.4795 0 -22.8799 -7.83984 -22.8799 -22.3096zM199.18 253h-49.5498c-25 6.5498 -81.5596 4.84961 -81.5596 -46.75c0 -18.7998 9.39941 -32 21.8496 -38.1104c-15.6895 -14.3701 -23.1201 -21.1396 -23.1201 -30.7393
c0 -6.87012 2.79004 -13.2207 11.1807 -16.7607c-8.90039 -8.39941 -14 -14.4795 -14 -25.9199c0.0195312 -20.0693 17.5498 -31.7197 63.5391 -31.7197c44.2207 0 69.8701 16.5098 69.8701 45.7305c0 36.6699 -28.2295 35.3193 -94.7695 39.3799l8.37988 13.4297
c17 -4.74023 74.1904 -6.23047 74.1904 42.4297c0 11.6904 -4.83008 19.8203 -9.40039 25.6699l23.3799 1.78027zM283.52 143.16l-13 1.78027c-3.81934 0.509766 -4.06934 1 -4.06934 5.08984v105.45h-52.6006l-2.79004 -20.5703c15.75 -5.5498 17 -4.86035 17 -10.1699
v-74.7402c0 -5.62012 -0.30957 -4.58008 -17 -6.87012v-20.0596h72.4209zM384 133l-6.87012 22.3701c-40.9297 -15.3701 -37.8496 12.4102 -37.8496 16.7295v60.7207h37.8496v25.4102h-35.8203c-2.86914 0 -2 -2.52051 -2 38.6299h-24.1797
c-2.79004 -27.7002 -11.6797 -38.8799 -34 -41.4199v-22.6201c20.4697 0 19.8203 0.849609 19.8203 -2.54004v-66.5703c0 -28.7197 11.4297 -40.9102 41.6699 -40.9102c14.4502 0 30.4502 4.83008 41.3799 10.2002z" />
    <glyph glyph-name="git" unicode="&#xf1d3;" horiz-adv-x="512" 
d="M216.29 289.61l0.0400391 -34.5508l-37.4102 -2.83984c7.27051 -9.35938 15 -22.3701 15 -41.0693c0 -77.8906 -91.4297 -75.4707 -118.7 -67.8906l-13.4297 -21.5498c106.47 -6.5 151.63 -4.33984 151.63 -63c0 -46.7598 -41.04 -73.1797 -111.79 -73.1797
c-73.5801 0 -101.63 18.71 -101.63 50.8193c0 18.3008 8.12988 28.04 22.4004 41.4502c-13.4199 5.66992 -17.8906 15.8105 -17.8906 26.8105c0 15.3594 11.9004 26.21 37 49.21c-20 9.76953 -35 30.9102 -35 61c0 82.5498 90.4902 85.2793 130.49 74.79h79.29z
M152.87 47.71c0 15.7402 -16.6104 13.8096 -94.3203 19.1104c-5.2998 -6.54004 -10.5693 -13.4004 -10.5693 -21.54c0 -29.6699 104.89 -29.6299 104.89 2.42969zM102.06 182.29c52.0205 0 50.7402 71.1602 1.2002 71.1602c-51.6602 0 -54 -71.1602 -1.2002 -71.1602z
M235.36 81.7803v32.0996c26.75 3.66016 27.2393 2 27.2393 11v119.51c0 8.5 -2.0498 7.37988 -27.2393 16.2607l4.46973 32.9199h84.1699v-168.71c0 -6.51074 0.400391 -7.32031 6.50977 -8.14062l20.7305 -2.83984v-32.0996h-115.88zM287.81 326.09
c-23.1699 0 -36.5898 13.4297 -36.5898 36.6104c0 23.1797 13.4199 35.7695 36.5898 35.7695c23.5801 0 37 -12.6201 37 -35.7695c0 -23.1504 -13.4199 -36.6104 -37 -36.6104zM512 97.54c-17.4902 -8.53027 -43.0996 -16.2598 -66.2803 -16.2598
c-48.3799 0 -66.6699 19.5 -66.6699 65.46v106.51c0 5.41992 1.0498 4.05957 -31.71 4.05957v36.1904c35.7803 4.07031 50 22 54.4697 66.2695h38.6309c0 -65.8291 -1.34082 -61.8096 3.25977 -61.8096h57.2998v-40.6504h-60.5596v-97.1494
c0 -6.91992 -4.9209 -51.4102 60.5693 -26.8398z" />
    <glyph glyph-name="hacker-news" unicode="&#xf1d4;" 
d="M0 416h448v-448h-448v448zM21.2002 218.8h-0.200195c0.0996094 0.100586 0.200195 0.299805 0.299805 0.400391c0 -0.100586 0 -0.299805 -0.0996094 -0.400391zM239.2 164.9l80.7998 155.1h-34.7998c-54.7998 -101.2 -48.2998 -98.5996 -60.6006 -125.6
c-10.0996 24.3994 -6.7998 27.2998 -59.2998 125.6h-37.2998l79.7998 -153.3v-102.7h31.4004v100.9z" />
    <glyph glyph-name="tencent-weibo" unicode="&#xf1d5;" horiz-adv-x="384" 
d="M72.2998 -47.7998c1.40039 -19.9004 -27.5996 -22.2002 -29.7002 -2.90039c-11.5996 129.9 31.1006 239.5 101.4 313.2c-15.5996 34 9.2002 77.0996 50.5996 77.0996c30.3008 0 55.1006 -24.5996 55.1006 -55.0996c0 -44 -49.5 -70.7998 -86.9004 -45.0996
c-65.7002 -71.3008 -101.399 -169.801 -90.5 -287.2zM192 447.9c92 0 166.6 -74.6006 166.6 -166.5c0 -102.301 -93.2998 -185.5 -204 -162.301c-19 4.7002 -12.5 33.2002 6.60059 29.1006c80.7998 -20.7998 167.7 42.2998 167.7 133.1c0 75.5 -61.5 136.9 -136.9 136.9
c-101 0 -168.3 -106.601 -122 -199.2c9 -17.9004 -17.5996 -30.7998 -26.2998 -13.4004c-56 108.101 22.3994 242.301 148.3 242.301z" />
    <glyph glyph-name="qq" unicode="&#xf1d6;" 
d="M433.754 27.5547c-11.5264 -1.39258 -44.8604 52.7412 -44.8604 52.7412c0 -31.3447 -16.1357 -72.2471 -51.0508 -101.786c16.8418 -5.19141 54.8428 -19.167 45.8037 -34.4209c-7.31641 -12.3428 -125.511 -7.88086 -159.633 -4.03711
c-34.1221 -3.84375 -152.315 -8.30566 -159.632 4.03711c-9.04492 15.25 28.918 29.2139 45.7832 34.415c-34.9199 29.5391 -51.0586 70.4453 -51.0586 101.792c0 0 -33.334 -54.1338 -44.8594 -52.7412c-5.37012 0.650391 -12.4238 29.6445 9.34668 99.7041
c10.2617 33.0244 21.9951 60.4785 40.1445 105.779c-3.05566 116.898 45.2441 214.956 160.262 214.962c113.737 -0.00585938 163.156 -96.1328 160.264 -214.963c18.1182 -45.2227 29.9121 -72.8506 40.1445 -105.778c21.7676 -70.0596 14.7158 -99.0527 9.3457 -99.7041z
" />
    <glyph glyph-name="weixin" unicode="&#xf1d7;" horiz-adv-x="576" 
d="M385.2 280.4c-92.4004 0 -165.4 -69.1006 -165.3 -154c0 -14.2002 2.19922 -27.9004 6.19922 -40.8008c-6.19922 -0.5 -12.0996 -0.799805 -18.2998 -0.799805c-24.3994 0 -43.7998 4.90039 -68.2002 9.7002l-68 -34.0996l19.3008 58.5996
c-48.6006 34.0996 -77.9004 78.2002 -77.9004 131.6c0 92.6006 87.5 165.4 194.7 165.4c95.5996 0 179.7 -58.2998 196.3 -136.7c-6.2002 0.799805 -12.4004 1.10059 -18.7998 1.10059zM280.7 333.3c-14.7002 0 -29.2002 -9.7002 -29.2998 -24.3994
c0 -14.5 14.5 -24.2002 29.2998 -24.2002c14.5 0 24.2002 9.7002 24.2002 24.2002c0 14.6992 -9.7002 24.3994 -24.2002 24.3994zM144.3 284.7c14.7998 0 24.4004 9.59961 24.4004 24.2002c0 14.6992 -9.60059 24.3994 -24.4004 24.3994
c-14.5 0 -29.2998 -9.59961 -29.2998 -24.3994c0 -14.5 14.7998 -24.2002 29.2998 -24.2002zM563 128.6c0 -43.7998 -29 -82.6992 -68.2002 -112.1l14.7998 -48.5996l-53.3994 29.2998c-19.7002 -4.7998 -39.2998 -9.90039 -58.6006 -9.90039
c-92.5996 0 -165.399 63.4004 -165.399 141.3c0 77.9004 72.7002 141.301 165.399 141.301c87.5 0 165.4 -63.4004 165.4 -141.301zM343.9 153.1c14.6992 0 24.3994 9.60059 24.3994 19.6006c0 9.59961 -9.59961 19.2998 -24.3994 19.2998
c-9.60059 0 -19.3008 -9.59961 -19.3008 -19.2998c0 -9.90039 9.60059 -19.6006 19.3008 -19.6006zM451 153.1c14.5 0 24.5 9.60059 24.4004 19.6006c0 9.59961 -9.90039 19.2998 -24.4004 19.2998c-9.59961 0 -19.2998 -9.59961 -19.2998 -19.2998
c0 -9.90039 9.59961 -19.6006 19.2998 -19.6006z" />
    <glyph glyph-name="slideshare" unicode="&#xf1e7;" horiz-adv-x="512" 
d="M187.7 294.3c34 0 61.7002 -25.7002 61.7002 -57.7002c0 -31.6992 -27.7002 -57.6992 -61.7002 -57.6992s-61.7002 26 -61.7002 57.6992c0 32 27.7002 57.7002 61.7002 57.7002zM331.1 294.3c34.3008 0 61.8008 -25.7002 61.7002 -57.7002
c0 -31.6992 -27.3994 -57.6992 -61.7002 -57.6992c-34 0 -61.6992 26 -61.6992 57.6992c0 32 27.6992 57.7002 61.6992 57.7002zM487.7 204.3c15.2002 10.5 25.2002 -4 16.0996 -17.7998c-18.2998 -22.5996 -53.2002 -50.2998 -106.3 -72
c56.2998 -191.7 -137.4 -222.3 -134.3 -124c0 0.700195 -0.299805 53.7998 -0.299805 93.5c-4.30078 0.799805 -8.60059 2 -13.7002 3.09961c0 -40 -0.299805 -95.8994 -0.299805 -96.5996c3.09961 -98.2002 -190.601 -67.5996 -134.301 124.1
c-53.1992 21.7002 -88 49.4004 -106.3 72c-9.09961 13.7002 0.900391 28.3008 16 17.7002c2 -1.39941 4.2998 -2.89941 6.2998 -4.2998v198.3c0 27.4004 20.6006 49.7002 46 49.7002h359.101c25.3994 0 46 -22.2998 46 -49.7002v-198.3zM457.2 185.1h0.0996094v190.601
c0 32.7998 -10.5996 45.7002 -40.8994 45.7002h-317.7c-31.7002 0 -40.6006 -10.8008 -40.6006 -45.7002v-192.4c67.7002 -35.3994 125.7 -29.0996 157.4 -28c13.4004 0.299805 22 -2.2998 27.0996 -7.7002c1.7002 -1.59961 10 -9.39941 20.3008 -17.0996
c1.09961 15.7998 10 25.7998 33.6992 24.9004c32.3008 -1.40039 91.7002 -7.7002 160.601 29.6992z" />
    <glyph glyph-name="twitch" unicode="&#xf1e8;" horiz-adv-x="512" 
d="M391.17 344.53v-109.7h-38.6299v109.7h38.6299zM285 345v-109.75h-38.6299v109.75h38.6299zM120.83 448h366.86v-256l-173.771 -164.58h-77.25l-96.5303 -91.4199v91.4199h-115.83v329.16zM449.07 210.25v201.17h-308.931v-274.29h86.8701v-64l67.6006 64h77.2393z" />
    <glyph glyph-name="yelp" unicode="&#xf1e9;" horiz-adv-x="384" 
d="M42.9004 207.68l99.6191 -48.6094c19.2002 -9.40039 16.2002 -37.5107 -4.5 -42.71l-107.52 -26.8105c-1.78223 -0.448242 -3.64746 -0.685547 -5.56738 -0.685547c-11.7246 0 -21.3848 8.89453 -22.6426 20.2861c-0.853516 7.44141 -1.29297 15.0078 -1.29297 22.6768
c0 21.9561 3.65723 42.9111 10.293 62.6426c3.03906 9.02148 11.5723 15.5264 21.6133 15.5264c3.5791 0 6.98145 -0.84375 9.99707 -2.31641zM86.9004 -31.5703c-6.01172 4.1123 -9.9248 11.0195 -9.9248 18.8457c0 5.85742 2.21191 11.2021 5.84473 15.2441l74.21 82.4004
c14.3096 15.8105 40.5098 5.2002 39.8096 -16.0996l-3.89941 -110.82c-0.414062 -12.21 -10.4365 -22.0088 -22.7461 -22.0088c-1.32129 0 -2.61523 0.112305 -3.87402 0.329102c-28.9365 4.90039 -56.1416 16.1621 -79.4199 32.1094zM232.24 78.3496
c-11.2998 18.1104 6.2002 40.4102 26.5098 33.9102l105.42 -34.2598c9.14453 -3.04102 15.7305 -11.6855 15.7305 -21.8447c0 -3.46289 -0.767578 -6.74805 -2.14062 -9.69531c-12.5361 -26.3281 -30.4697 -49.2246 -52.71 -67.6104
c-3.96191 -3.26465 -9.03809 -5.25781 -14.5674 -5.25781c-8.18555 0 -15.375 4.29785 -19.4326 10.7578zM380.57 210.58c1.21289 -2.79883 1.93359 -5.89941 1.93359 -9.1416c0 -10.4385 -6.96875 -19.2627 -16.5039 -22.0684l-106.64 -30.5098
c-20.5 -5.90039 -37.1006 17.0098 -25.2002 34.71l62 91.9199c4.10742 6.08398 11.0635 10.0615 18.9502 10.0615c5.76172 0 11.0283 -2.1377 15.0498 -5.66211c21.5781 -19.0479 38.7783 -42.5518 50.4102 -69.3096zM62.1104 417.82
c34.3301 16.3438 72.6104 26.9434 112.33 30.0996c0.610352 0.0498047 1.20703 0.078125 1.83008 0.078125c12.5127 0 22.6709 -10.1582 22.6709 -22.6699c0 -0.0693359 -0.000976562 -0.138672 -0.000976562 -0.208008v-208.34
c0 -23.2998 -30.9102 -31.6006 -42.6104 -11.4004l-104.12 180.44c-1.92871 3.35059 -3.06738 7.24805 -3.06738 11.3887c0 9.07422 5.29883 16.9199 12.9678 20.6113z" />
    <glyph glyph-name="paypal" unicode="&#xf1ed;" horiz-adv-x="384" 
d="M111.4 152.1c-3.5 -19.1992 -17.4004 -108.699 -21.5 -134c-0.300781 -1.7998 -1 -2.5 -3 -2.5h-74.6006c-7.59961 0 -13.0996 6.60059 -12.0996 13.9004l58.5996 371.9c1.5 9.59961 10.1006 16.8994 20 16.8994c152.3 0 165.101 3.7002 204 -11.3994
c60.1006 -23.3008 65.6006 -79.5 44 -140.301c-21.5 -62.5996 -72.5 -89.5 -140.1 -90.2998c-43.4004 -0.700195 -69.5 7 -75.2998 -24.2002zM357.1 296c28.4004 -21.2002 30.3008 -57.7998 23.8008 -92.5996c-16.5 -83.5 -71.9004 -112.301 -142.9 -112.301
c-15 0 -24.7002 2.30078 -29.2998 -19.6992c-15.5 -97.4004 -13.7002 -85.9004 -14.4004 -91.3008c-1.7002 -8.59961 -8.7998 -14.8994 -17.3994 -14.8994h-63.5c-7.10059 0 -11.6006 5.7998 -10.6006 12.8994c0 0 4.5 29.3008 27.1006 169.7
c0.799805 6.10059 4.7998 9.40039 10.8994 9.40039c54 0 164.601 -9.90039 204.5 103.899c3.7002 11.1006 6.7998 22.2002 8.7998 33.6006c0.5 3.09961 1.2002 2.59961 3 1.2998z" />
    <glyph glyph-name="google-wallet" unicode="&#xf1ee;" 
d="M156.8 321.2c37.6006 -60.6006 64.2002 -113.101 84.2998 -162.5c-8.2998 -33.7998 -18.7998 -66.5 -31.2998 -98.2998c-13.2002 52.2998 -26.5 101.3 -56 148.5c6.5 36.3994 2.2998 73.5996 3 112.3zM109.3 248c5 0 10 -2.5 13 -6.5
c43.7998 -59.7998 66.2998 -123.8 82.5 -193.5h-103.5c-20 69.5 -49.5 133 -91.7002 187.3c-4 5.2002 0 12.7002 6.5 12.7002h93.2002zM157.1 336h108.7c74.7998 -103 131.2 -230 143.2 -368h-113.7c-8.2002 133.5 -69.7002 260 -138.2 368zM408.9 404.5
c19 -67.5 31.0996 -139 31.0996 -212.6c0 -69.5 -9.5 -142.5 -25.2998 -203c-10.9004 92.5 -42.4004 184.6 -90.6006 270.8c-4.19922 50.5 -13.2998 99.5 -26.5 146c-1.19922 5.2998 2.5 10.2998 7.80078 10.2998h88.2998c7 0 13.3994 -4.7002 15.2002 -11.5z" />
    <glyph glyph-name="cc-visa" unicode="&#xf1f0;" horiz-adv-x="576" 
d="M470.1 216.7c0 0 7.60059 -37.2002 9.30078 -45h-33.4004c3.2998 8.89941 16 43.5 16 43.5c-0.200195 -0.299805 3.2998 9.09961 5.2998 14.8994zM576 368v-352c0 -26.5 -21.5 -48 -48 -48h-480c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h480
c26.5 0 48 -21.5 48 -48zM152.5 116.8l63.2002 155.2h-42.5l-39.2998 -106l-4.30078 21.5l-14 71.4004c-2.2998 9.89941 -9.39941 12.6992 -18.1992 13.0996h-64.7002l-0.700195 -3.09961c15.7998 -4 29.9004 -9.80078 42.2002 -17.1006l35.7998 -135h42.5zM246.9 116.6
l25.1992 155.4h-40.1992l-25.1006 -155.4h40.1006zM386.8 167.4c0.200195 17.6992 -10.5996 31.1992 -33.7002 42.2998c-14.0996 7.09961 -22.6992 11.8994 -22.6992 19.2002c0.199219 6.59961 7.2998 13.3994 23.0996 13.3994
c13.0996 0.299805 22.7002 -2.7998 29.9004 -5.89941l3.59961 -1.7002l5.5 33.5996c-7.90039 3.10059 -20.5 6.60059 -36 6.60059c-39.7002 0 -67.5996 -21.2002 -67.7998 -51.4004c-0.299805 -22.2998 20 -34.7002 35.2002 -42.2002
c15.5 -7.59961 20.7998 -12.5996 20.7998 -19.2998c-0.200195 -10.4004 -12.6006 -15.2002 -24.1006 -15.2002c-16 0 -24.5996 2.5 -37.6992 8.2998l-5.30078 2.5l-5.59961 -34.8994c9.40039 -4.2998 26.7998 -8.10059 44.7998 -8.2998
c42.2002 -0.100586 69.7002 20.7998 70 53zM528 116.6l-32.4004 155.4h-31.0996c-9.59961 0 -16.9004 -2.7998 -21 -12.9004l-59.7002 -142.5h42.2002s6.90039 19.2002 8.40039 23.3008h51.5996c1.2002 -5.5 4.7998 -23.3008 4.7998 -23.3008h37.2002z" />
    <glyph glyph-name="cc-mastercard" unicode="&#xf1f1;" horiz-adv-x="576" 
d="M482.9 37.7002c0 -6.7998 -4.60059 -11.7002 -11.2002 -11.7002c-6.7998 0 -11.2002 5.2002 -11.2002 11.7002s4.40039 11.7002 11.2002 11.7002c6.59961 0 11.2002 -5.2002 11.2002 -11.7002zM172.1 49.4004c6.5 0 10.8008 -5.2002 10.9004 -11.7002
c0 -6.7998 -4.40039 -11.7002 -10.9004 -11.7002c-7.09961 0 -11.1992 5.2002 -11.1992 11.7002s4.09961 11.7002 11.1992 11.7002zM289.6 49.7002c5.2002 0 8.7002 -3 9.60059 -8.7002h-19.1006c0.800781 5.2002 4.10059 8.7002 9.5 8.7002zM397.4 49.4004
c6.7998 0 11.1992 -5.2002 11.1992 -11.7002c0 -6.7998 -4.39941 -11.7002 -11.1992 -11.7002c-6.80078 0 -10.9004 5.2002 -10.9004 11.7002s4.09961 11.7002 10.9004 11.7002zM503.3 23.2998c0 -0.299805 0.299805 -0.5 0.299805 -1.09961
c0 -0.299805 -0.299805 -0.5 -0.299805 -1.10059c-0.299805 -0.299805 -0.299805 -0.5 -0.5 -0.799805c-0.299805 -0.299805 -0.5 -0.5 -1.09961 -0.5c-0.299805 -0.299805 -0.5 -0.299805 -1.10059 -0.299805c-0.299805 0 -0.5 0 -1.09961 0.299805
c-0.299805 0 -0.5 0.299805 -0.799805 0.5c-0.299805 0.299805 -0.5 0.5 -0.5 0.799805c-0.299805 0.5 -0.299805 0.800781 -0.299805 1.10059c0 0.5 0 0.799805 0.299805 1.09961c0 0.5 0.299805 0.799805 0.5 1.10059c0.299805 0.299805 0.5 0.299805 0.799805 0.5
c0.5 0.299805 0.799805 0.299805 1.09961 0.299805c0.5 0 0.800781 0 1.10059 -0.299805c0.5 -0.300781 0.799805 -0.300781 1.09961 -0.5c0.299805 -0.200195 0.200195 -0.600586 0.5 -1.10059zM501.1 21.9004c0.5 0 0.5 0.299805 0.800781 0.299805
c0.299805 0.299805 0.299805 0.5 0.299805 0.799805s0 0.5 -0.299805 0.799805c-0.300781 0 -0.5 0.299805 -1.10059 0.299805h-1.59961v-3.5h0.799805v1.40039h0.299805l1.10059 -1.40039h0.799805zM576 367v-352c0 -26.5 -21.5 -48 -48 -48h-480c-26.5 0 -48 21.5 -48 48
v352c0 26.5 21.5 48 48 48h480c26.5 0 48 -21.5 48 -48zM64 227.4c0 -76.5 62.0996 -138.5 138.5 -138.5c27.2002 0 53.9004 8.19922 76.5 23.0996c-72.9004 59.2998 -72.4004 171.2 0 230.5c-22.5996 15 -49.2998 23.0996 -76.5 23.0996
c-76.4004 0.100586 -138.5 -62 -138.5 -138.199zM288 118.6c70.5 55 70.2002 162.2 0 217.5c-70.2002 -55.2998 -70.5 -162.6 0 -217.5zM145.7 42.2998c0 8.7002 -5.7002 14.4004 -14.7002 14.7002c-4.59961 0 -9.5 -1.40039 -12.7998 -6.5
c-2.40039 4.09961 -6.5 6.5 -12.2002 6.5c-3.7998 0 -7.59961 -1.40039 -10.5996 -5.40039v4.40039h-8.2002v-36.7002h8.2002c0 18.9004 -2.5 30.2002 9 30.2002c10.1992 0 8.19922 -10.2002 8.19922 -30.2002h7.90039c0 18.2998 -2.5 30.2002 9 30.2002
c10.2002 0 8.2002 -10 8.2002 -30.2002h8.2002v23h-0.200195zM190.6 56h-7.89941v-4.40039c-2.7002 3.30078 -6.5 5.40039 -11.7002 5.40039c-10.2998 0 -18.2002 -8.2002 -18.2002 -19.2998c0 -11.2002 7.90039 -19.2998 18.2002 -19.2998
c5.2002 0 9 1.89941 11.7002 5.39941v-4.59961h7.89941v36.7998zM231.1 30.4004c0 15 -22.8994 8.19922 -22.8994 15.1992c0 5.7002 11.8994 4.80078 18.5 1.10059l3.2998 6.5c-9.40039 6.09961 -30.2002 6 -30.2002 -8.2002c0 -14.2998 22.9004 -8.2998 22.9004 -15
c0 -6.2998 -13.5 -5.7998 -20.7002 -0.799805l-3.5 -6.2998c11.2002 -7.60059 32.5996 -6 32.5996 7.5zM266.5 21.0996l-2.2002 6.80078c-3.7998 -2.10059 -12.2002 -4.40039 -12.2002 4.09961v16.5996h13.1006v7.40039h-13.1006v11.2002h-8.19922v-11.2002h-7.60059
v-7.2998h7.60059v-16.7002c0 -17.5996 17.2998 -14.4004 22.5996 -10.9004zM279.8 34.5h27.5c0 16.2002 -7.39941 22.5996 -17.3994 22.5996c-10.6006 0 -18.2002 -7.89941 -18.2002 -19.2998c0 -20.5 22.5996 -23.8994 33.7998 -14.2002l-3.7998 6
c-7.7998 -6.39941 -19.6006 -5.7998 -21.9004 4.90039zM338.9 56c-4.60059 2 -11.6006 1.7998 -15.2002 -4.40039v4.40039h-8.2002v-36.7002h8.2002v20.7002c0 11.5996 9.5 10.0996 12.7998 8.40039zM349.5 37.7002c0 11.3994 11.5996 15.0996 20.7002 8.39941l3.7998 6.5
c-11.5996 9.10059 -32.7002 4.10059 -32.7002 -15c0 -19.7998 22.4004 -23.7998 32.7002 -15l-3.7998 6.5c-9.2002 -6.5 -20.7002 -2.59961 -20.7002 8.60059zM416.2 56h-8.2002v-4.40039c-8.2998 11 -29.9004 4.80078 -29.9004 -13.8994
c0 -19.2002 22.4004 -24.7002 29.9004 -13.9004v-4.59961h8.2002v36.7998zM449.9 56c-2.40039 1.2002 -11 2.90039 -15.2002 -4.40039v4.40039h-7.90039v-36.7002h7.90039v20.7002c0 11 9 10.2998 12.7998 8.40039zM490.2 70.9004h-7.90039v-19.3008
c-8.2002 10.9004 -29.8994 5.10059 -29.8994 -13.8994c0 -19.4004 22.5 -24.6006 29.8994 -13.9004v-4.59961h7.90039v51.7002zM497.8 146v-4.59961h0.799805v4.59961h1.90039v0.799805h-4.59961v-0.799805h1.89941zM504.4 22.2002c0 0.5 0 1.09961 -0.300781 1.59961
c-0.299805 0.299805 -0.5 0.799805 -0.799805 1.10059c-0.299805 0.299805 -0.799805 0.5 -1.09961 0.799805c-0.5 0 -1.10059 0.299805 -1.60059 0.299805c-0.299805 0 -0.799805 -0.299805 -1.39941 -0.299805c-0.5 -0.299805 -0.799805 -0.5 -1.10059 -0.799805
c-0.5 -0.300781 -0.799805 -0.800781 -0.799805 -1.10059c-0.299805 -0.5 -0.299805 -1.09961 -0.299805 -1.59961c0 -0.299805 0 -0.799805 0.299805 -1.40039c0 -0.299805 0.299805 -0.799805 0.799805 -1.09961c0.300781 -0.299805 0.5 -0.5 1.10059 -0.799805
c0.5 -0.300781 1.09961 -0.300781 1.39941 -0.300781c0.5 0 1.10059 0 1.60059 0.300781c0.299805 0.299805 0.799805 0.5 1.09961 0.799805s0.5 0.799805 0.799805 1.09961c0.300781 0.600586 0.300781 1.10059 0.300781 1.40039zM507.6 146.9h-1.39941l-1.60059 -3.5
l-1.59961 3.5h-1.40039v-5.40039h0.800781v4.09961l1.59961 -3.5h1.09961l1.40039 3.5v-4.09961h1.09961v5.40039zM512 227.4c0 76.1992 -62.0996 138.3 -138.5 138.3c-27.2002 0 -53.9004 -8.2002 -76.5 -23.1006c72.0996 -59.2998 73.2002 -171.5 0 -230.5
c22.5996 -15 49.5 -23.0996 76.5 -23.0996c76.4004 -0.0996094 138.5 61.9004 138.5 138.4z" />
    <glyph glyph-name="cc-discover" unicode="&#xf1f2;" horiz-adv-x="576" 
d="M520.4 251.9c0 -8.40039 -5.5 -12.8008 -15.8008 -12.8008h-4.69922v24.9004h4.89941c10.1006 0 15.6006 -4.2002 15.6006 -12.0996zM528 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-480c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h480z
M483.9 277.1v-82h16v32.8008h2.19922l22.2002 -32.8008h19.6006l-25.8008 34.4004c12.1006 2.5 18.7002 10.5996 18.7002 23.2002c0 28.5 -30.2998 24.3994 -52.8994 24.3994zM428 277v-82h45.2998v13.7998h-29.2998v22.2002h28.2998v13.7998h-28.2998v18.2002h29.2998v14
h-45.2998zM359.3 277h-17.5l35 -84.2002h8.60059l35.5 84.2002h-17.5l-22.2002 -55.2002zM303.4 280c-24.6006 0 -44.6006 -19.9004 -44.6006 -44.5996c0 -24.6006 19.9004 -44.6006 44.6006 -44.6006c24.5996 0 44.5996 19.9004 44.5996 44.6006
c0 24.5996 -19.9004 44.5996 -44.5996 44.5996zM254.1 273.9c-30.1992 15 -63.2998 -6.80078 -63.2998 -38c0 -32.5 33.6006 -52.5 63.2998 -38.2002v19c-19.2998 -19.2998 -46.7998 -5.7998 -46.7998 19.2002c0 23.6992 26.7002 39.0996 46.7998 19v19zM156.9 207.6
c-7.60059 0 -13.8008 3.7002 -17.5 10.8008l-10.3008 -9.90039c17.8008 -26.0996 56.6006 -18.2002 56.6006 11.2998c0 13.1006 -5.40039 19 -23.6006 25.6006c-9.59961 3.39941 -12.2998 5.89941 -12.2998 10.2998c0 8.7002 14.5 14.0996 24.9004 2.5l8.39941 10.7998
c-19.0996 17.0996 -49.6992 8.90039 -49.6992 -14.2998c0 -11.2998 5.19922 -17.2002 20.1992 -22.7002c25.7002 -9.09961 14.7002 -24.4004 3.30078 -24.4004zM55.4004 195c30.8994 0 44.0996 22.4004 44.0996 40.9004c0 24.0996 -18 41.0996 -44.0996 41.0996h-23.4004
v-82h23.4004zM122.9 195v82h-16v-82h16zM544 15v145c-33.2998 -20.7998 -226.4 -124.4 -416 -160h401c8.2002 0 15 6.7998 15 15zM74.0996 256.4c5.7002 -5 8.90039 -12.6006 8.90039 -20.5c0 -7.90039 -3.2002 -15.5 -8.90039 -20.7002
c-4.89941 -4.40039 -11.5996 -6.40039 -21.8994 -6.40039h-4.2002v54.2002h4.2002c10.2998 0 16.7002 -1.7002 21.8994 -6.59961z" />
    <glyph glyph-name="cc-amex" unicode="&#xf1f3;" horiz-adv-x="576" 
d="M325.1 280.2c0.100586 -8 -4.2998 -15.7002 -11.6992 -18.7002c9.5 -3.2998 11 -9.2002 11 -18.4004v-13.5h-16.6006c-0.299805 14.8008 3.60059 25.1006 -14.7998 25.1006h-18v-25.1006h-16.4004v69.3008l39.1006 -0.300781c13.2998 0 27.3994 -2 27.3994 -18.3994z
M295.7 268.9c5.7002 0 11 1.2998 11 7.89941c0 6.40039 -5.60059 7.40039 -10.7002 7.40039h-21v-15.2998h20.7002zM279 179.4c15.5996 0 27.9004 -5.40039 27.9004 -22.7002c0 -27.9004 -30.4004 -23.2998 -49.3008 -23.2998l-0.0996094 -23.3008h-32.2002l-20.3994 23
l-21.3008 -23h-65.3994l0.0996094 69.3008h66.5l20.5 -22.8008l21 22.8008h52.7002zM175.2 124.7l19 20.2002l-17.9004 20.1992h-41.7002v-12.5h36.3008v-14.0996h-36.3008v-13.7998h40.6006zM241 116.5v55.5l-25.2998 -27.4004zM278.8 147.5
c5.90039 0 10.5 2.7998 10.5 9.2002c0 6.09961 -4.59961 8.39941 -10.2002 8.39941h-21.5v-17.5996h21.2002zM247.2 284.2h-38.9004v-12.5h37.7998v-14.1006h-37.7998v-13.7998h38.9004v-14.2998h-55.5v69.2998h55.5v-14.5996zM576 192.6h-0.200195h0.200195zM381.4 160.7
c-0.100586 -7.60059 -4.2002 -15.2998 -11.9004 -18.4004c9.2002 -3.2998 11 -9.5 11 -18.3994l-0.0996094 -13.8008h-16.6006l0.100586 11.5c0 11.8008 -3.80078 13.8008 -14.8008 13.8008h-17.5996l-0.0996094 -25.3008h-16.6006l0.100586 69.3008h39.3994
c13 0 27.1006 -2.30078 27.1006 -18.7002zM352.2 149.5c5.59961 0 11 1.2998 11 8.2002c0 6.39941 -5.60059 7.39941 -10.7002 7.39941h-21v-15.5996h20.7002zM179.4 229.5h-16.8008v54.2002l-24 -54.2002h-14.5996l-24 54.2002v-54.2002h-33.7998l-6.40039 15.2998h-34.5
l-6.39941 -15.2998h-17.9004l29.7002 69.2998h24.5l28.0996 -65.7002v65.7002h27.1006l21.6992 -47l19.7002 47h27.6006v-69.2998zM31.2002 259.2h22.7002l-11.5 27.5996zM508.6 100.3c34.8008 0 54.8008 -2.2002 67.5 6.10059v-90.4004c0 -26.5 -21.5 -48 -48 -48h-480.1
c-26.5 0 -48 21.5 -48 48v203.7h26.5996c4.2002 10.0996 2.2002 5.2998 6.40039 15.2998h19.2002c4.2002 -10 2.2002 -5.2002 6.39941 -15.2998h52.9004v11.3994c2.2002 -5 1.09961 -2.5 5.09961 -11.3994h29.5c2.40039 5.5 2.60059 5.7998 5.10059 11.3994v-11.3994h135.5
v25.0996c6.39941 0 8 0.100586 9.7998 -0.200195c0 0 -0.200195 -10.8994 0.0996094 -24.7998h66.5v8.90039c7.40039 -5.90039 17.4004 -8.90039 29.7002 -8.90039h26.7998c4.2002 10.1006 2.2002 5.2998 6.40039 15.2998h19c6.5 -15 0.200195 -0.5 6.59961 -15.2998
h52.8008v21.9004c11.7998 -19.7002 7.7998 -12.9004 13.1992 -21.9004h41.6006v92h-39.9004v-18.3994c-12.2002 20.1992 -6.2998 10.3994 -11.2002 18.3994h-43.2998v-20.5996c-6.2002 14.5996 -4.59961 10.7998 -8.7998 20.5996h-32.4004
c-0.399414 0 -2.2998 -0.200195 -2.2998 0.299805h-27.5996c-12.7998 0 -23.1006 -3.19922 -30.7002 -9.2998v9.2998h-39.9004v-5.2998c-10.7998 6.10059 -20.6992 5.10059 -64.3994 5.2998c-0.100586 0 -11.6006 0.100586 -11.6006 0h-103
c-2.5 -6.09961 -6.7998 -16.3994 -12.5996 -30c-2.7998 6 -11 23.8008 -13.9004 30h-46v-21.0996c-7.39941 17.4004 -4.69922 11 -9 21.0996h-39.6992c-3.40039 -7.89941 -13.7002 -32 -23.1006 -53.8994v109.8c0 26.5 21.5 48 48 48h480c26.5 0 48 -21.5 48 -48v-175.4
c-37.7002 0.200195 -44 0.900391 -54.2998 -5v5c-45.2998 0 -53.5 1.7002 -64.9004 -5.19922v5.19922h-78.1992v-5.09961c-11.4004 6.5 -21.4004 5.09961 -75.7002 5.09961v-5.59961c-6.2998 3.7002 -14.5 5.59961 -24.2998 5.59961h-58
c-3.5 -3.7998 -12.5 -13.6992 -15.7002 -17.1992c-12.7002 14.0996 -10.5 11.5996 -15.5 17.1992h-83.1006v-92.2998h82c3.30078 3.5 12.9004 13.9004 16.1006 17.4004c12.7002 -14.2998 10.2998 -11.7002 15.3994 -17.4004h48.9004
c0 14.7002 0.0996094 8.2998 0.0996094 23c11.5 -0.200195 24.3008 0.200195 34.3008 6.2002c0 -13.9004 -0.100586 -17.0996 -0.100586 -29.2002h39.6006c0 18.5 0.0996094 7.40039 0.0996094 25.2998c6.2002 0 7.7002 0 9.40039 -0.0996094
c0.0996094 -1.2998 0 0 0 -25.2002c152.8 0 145.899 -1.09961 156.699 4.5v-4.5zM544.9 164.8c-4.60059 0 -9.2002 -0.700195 -9.2002 -6.5c0 -12.2002 28.7998 0.299805 39.2998 -13.5v-25.7998c-4.90039 -7.09961 -14.0996 -8.90039 -22.5 -8.90039h-32l0.0996094 14.8008
h32c4.10059 0 8.40039 1.2998 8.40039 6.39941c0 14.6006 -42.7002 -5.59961 -42.7002 27.4004c0 14.0996 11 20.7002 23.7998 20.7002h32.9004v-14.6006h-30.0996zM487.9 125c4.09961 0 8.69922 1 8.7998 6.40039c0 14.8994 -42.7002 -5.60059 -42.7002 27.3994
c0 14.1006 10.7002 20.7002 23.5 20.7002h33.2002v-14.5996h-30.4004c-4.2998 0 -9.2002 -0.800781 -9.2002 -6.40039c0 -15.0996 42.9004 6.90039 42.9004 -26.2998c0 -16.4004 -11.4004 -22 -26.2002 -22h-32.2002l0.100586 14.7998h32.2002zM445.7 165.1h-38.5v-12.5
h37.7998v-14.0996h-37.9004v-13.7998l38.6006 -0.299805l-0.100586 -14.3008h-55.1992l0.0996094 69.3008h55.2002v-14.3008zM389.4 273.2c0.299805 0.299805 1.69922 1 7.2998 1c1 0 2 -0.100586 3.09961 -0.100586l-7.2998 -16.8994
c-2.2998 0 -3.2002 0.399414 -3.40039 0.5c-0.199219 0.200195 -1.09961 1.89941 -1.09961 7.89941c0 5.40039 1.09961 7.40039 1.40039 7.60059zM409.8 283.7h-0.0996094h0.0996094zM393.6 298.9h16.1006v-15.2002c-17.4004 0.299805 -33.1006 4.09961 -33.1006 -19.7002
c0 -11.7998 2.80078 -19.9004 16.1006 -19.9004h7.39941l23.5 54.5h24.8008l27.8994 -65.3994v65.3994h25.2998l29.1006 -48.0996v48.0996h16.8994v-69h-23.5996l-31.2002 51.9004v-51.9004h-33.7002l-6.59961 15.3008h-34.2998l-6.40039 -15.3008h-19.2002
c-22.7998 0 -33 11.8008 -33 34c0 23.3008 10.5 35.3008 34 35.3008zM435.7 286.8l-11.6006 -27.5996h22.8008zM334.6 298.8h16.9004v-69.2998h-16.9004v69.2998z" />
    <glyph glyph-name="cc-paypal" unicode="&#xf1f4;" horiz-adv-x="576" 
d="M186.3 189.8c0 -12.2002 -9.7002 -21.5 -22 -21.5c-9.2002 0 -16 5.2002 -16 15c0 12.2002 9.5 22 21.7002 22c9.2998 0 16.2998 -5.7002 16.2998 -15.5zM80.5 238.3c11.2998 0 19.7998 -1.5 17.5 -14.8994c-2 -12.7002 -10.5 -14.2002 -21.5 -14.2002l-8.2002 -0.299805
l4.2998 26.6992c0.200195 1.7002 1.7002 2.7002 3.2002 2.7002h4.7002zM364.5 238.3c8.5 0 18 -0.5 18.0996 -11.0996c0 -15 -9 -18 -22 -18l-8 -0.299805l4.2002 26.6992c0.200195 1.7002 1.40039 2.7002 3.2002 2.7002h4.5zM576 368v-352c0 -26.5 -21.5 -48 -48 -48h-480
c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h480c26.5 0 48 -21.5 48 -48zM128.3 232.6c0 21 -16.2002 28 -34.7002 28h-40c-2.5 0 -5 -2 -5.19922 -4.69922l-16.4004 -102.101c-0.299805 -2 1.2002 -4 3.2002 -4h19c2.7002 0 5.2002 2.90039 5.5 5.7002l4.5 26.5996
c1 7.2002 13.2002 4.7002 18 4.7002c28.5996 0 46.0996 17 46.0996 45.7998zM212.5 223.8h-19c-3.7998 0 -4 -5.5 -4.2002 -8.2002c-5.7998 8.5 -14.2002 10 -23.7002 10c-24.5 0 -43.1992 -21.5 -43.1992 -45.1992c0 -19.5 12.1992 -32.2002 31.6992 -32.2002
c9 0 20.2002 4.89941 26.5 11.8994c-0.5 -1.5 -1 -4.69922 -1 -6.19922c0 -2.30078 1 -4 3.2002 -4h17.2002c2.7002 0 5 2.89941 5.5 5.69922l10.2002 64.3008c0.299805 1.89941 -1.2002 3.89941 -3.2002 3.89941zM253 125.9l63.7002 92.5996c0.5 0.5 0.5 1 0.5 1.7002
c0 1.7002 -1.5 3.5 -3.2002 3.5h-19.2002c-1.7002 0 -3.5 -1 -4.5 -2.5l-26.5 -39l-11 37.5c-0.799805 2.2002 -3 4 -5.5 4h-18.7002c-1.69922 0 -3.19922 -1.7998 -3.19922 -3.5c0 -1.2002 19.5 -56.7998 21.1992 -62.1006c-2.69922 -3.7998 -20.5 -28.5996 -20.5 -31.5996
c0 -1.7998 1.5 -3.2002 3.2002 -3.2002h19.2002c1.7998 0.100586 3.5 1.10059 4.5 2.60059zM412.3 232.6c0 21 -16.2002 28 -34.7002 28h-39.6992c-2.7002 0 -5.2002 -2 -5.5 -4.69922l-16.2002 -102c-0.200195 -2 1.2998 -4 3.2002 -4h20.5c2 0 3.5 1.5 4 3.19922l4.5 29
c1 7.2002 13.1992 4.7002 18 4.7002c28.3994 0 45.8994 17 45.8994 45.7998zM496.5 223.8h-19c-3.7998 0 -4 -5.5 -4.2998 -8.2002c-5.5 8.5 -14 10 -23.7002 10c-24.5 0 -43.2002 -21.5 -43.2002 -45.1992c0 -19.5 12.2002 -32.2002 31.7002 -32.2002
c9.2998 0 20.5 4.89941 26.5 11.8994c-0.299805 -1.5 -1 -4.69922 -1 -6.19922c0 -2.30078 1 -4 3.2002 -4h17.2998c2.7002 0 5 2.89941 5.5 5.69922l10.2002 64.3008c0.299805 1.89941 -1.2002 3.89941 -3.2002 3.89941zM544 257.1c0 2 -1.5 3.5 -3.2002 3.5h-18.5
c-1.5 0 -3 -1.19922 -3.2002 -2.69922l-16.1992 -104l-0.300781 -0.5c0 -1.80078 1.5 -3.5 3.5 -3.5h16.5c2.5 0 5 2.89941 5.2002 5.69922l16.2002 101.2v0.299805zM454 205.3c9.2998 0 16.2998 -5.7002 16.2002 -15.5c0 -12.2998 -9.7002 -21.5 -21.7002 -21.5
c-9.2002 0 -16.2002 5.2998 -16.2002 15c0 12.2998 9.5 22 21.7002 22z" />
    <glyph glyph-name="cc-stripe" unicode="&#xf1f5;" horiz-adv-x="576" 
d="M492.4 227.2c8.69922 0 18 -6.7002 18 -22.7002h-36.7002c0 16 9.7998 22.7002 18.7002 22.7002zM375 224.6c12.9004 0.100586 21.9004 -14.5 21.9004 -33.0996c0 -19.0996 -8.80078 -33.4004 -21.9004 -33.4004c-8.2998 0 -13.2998 3 -16.7998 6.7002l-0.200195 52.7998
c3.7002 4.10059 8.7998 7 17 7zM528 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-480c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h480zM122.2 166.9c0 42.2998 -54.2998 34.6992 -54.2998 50.6992c0 5.5 4.59961 7.7002 12.0996 7.7002
c10.7998 0 24.5 -3.2998 35.2998 -9.09961v33.3994c-11.7998 4.7002 -23.5 6.5 -35.2998 6.5c-28.7998 0 -48 -15 -48 -40.1992c0 -39.3008 54 -32.9004 54 -49.9004c0 -6.59961 -5.7002 -8.7002 -13.5996 -8.7002c-11.8008 0 -26.9004 4.90039 -38.9004 11.2998v-33.8994
c13.2002 -5.7002 26.5996 -8.10059 38.7998 -8.10059c29.6006 0.200195 49.9004 14.7002 49.9004 40.3008zM191 223.5v30.2998h-26.9004v30.7998l-34.6992 -7.39941l-0.200195 -113.9c0 -21 15.7998 -36.5 36.8994 -36.5c11.6006 0 20.2002 2.10059 24.9004 4.7002v28.9004
c-4.5 -1.80078 -27 -8.30078 -27 12.5996v50.5h27zM265 221.1v32.7002h-0.0996094c-4.7002 1.7002 -21.3008 4.7998 -29.6006 -10.5l-2.2002 10.5h-30.6992v-124.5h35.5v84.4004c8.39941 11 22.5996 8.89941 27.0996 7.39941zM309.1 129.3v124.5h-35.6992v-124.5h35.6992z
M309.1 272.2v28.8994l-35.6992 -7.59961v-28.9004zM383.2 126.7c25.3994 0.0996094 48.5996 20.5 48.5996 65.5996c0 41.2998 -23.5 63.7998 -48.3994 63.7998c-13.9004 0 -22.9004 -6.59961 -27.8008 -11.0996l-1.7998 8.7998h-31.2998v-165.8l35.5 7.5l0.0996094 40.2002
c5.10059 -3.7002 12.7002 -9 25.1006 -9zM543.6 178.2c0.100586 2 0.400391 9.39941 0.400391 12.8994c0 36.4004 -17.5996 65.1006 -51.2998 65.1006c-33.7998 0 -54.2998 -28.7002 -54.2998 -64.9004c0 -42.7998 24.1992 -64.5 58.7998 -64.5
c17 0 29.7002 3.90039 39.3994 9.2002v28.5996c-9.69922 -4.89941 -20.7998 -7.89941 -34.8994 -7.89941c-13.7998 0 -26 4.89941 -27.6006 21.5h69.5z" />
    <glyph glyph-name="lastfm" unicode="&#xf202;" horiz-adv-x="512" 
d="M225.8 80.9004c0 0 -31.7002 -31.1006 -97.8994 -31.1006c-82.2002 0 -127.9 48.1006 -127.9 137.2c0 92.7002 45.7002 147.2 131.8 147.2c117.7 0 129.3 -66.2002 161.3 -163c14 -42.7998 38.7002 -73.9004 97.9004 -73.9004c39.9004 0 61 8.7998 61 30.5
c0 31.9004 -34.9004 35.1006 -79.7998 45.7002c-48.6006 11.7002 -68 36.9004 -68 76.7998c0 64 51.5996 83.9004 104.399 83.9004c59.8008 0 96.2002 -21.7002 100.9 -74.5l-58.5996 -7c-2.30078 25.2002 -17.5 35.7998 -45.7002 35.7998
c-25.7998 0 -41.6006 -11.7998 -41.6006 -31.7002c0 -17.5996 7.60059 -28.0996 33.4004 -34c52.2998 -11.5 115 -19.2002 115 -92.0996c0 -58.6006 -49.2998 -80.9004 -122 -80.9004c-101.4 0 -136.6 45.7002 -155.4 102.601
c-26.0996 81.5996 -34.3994 134.899 -100.899 134.899c-35.7002 0 -72.1006 -25.7998 -72.1006 -97.8994c0 -56.3008 28.7002 -91.5 69.2002 -91.5c45.7002 0 76.2002 34 76.2002 34z" />
    <glyph glyph-name="lastfm-square" unicode="&#xf203;" 
d="M400 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h352zM307.8 103.1c45.4004 0 76.2002 13.9004 76.1006 50.6006c0 45.5 -39.1006 50.3994 -71.8008 57.5
c-16.0996 3.7002 -20.8994 10.2998 -20.8994 21.2998c0 12.5 9.89941 19.7998 26 19.7998c17.5996 0 27.0996 -6.59961 28.5996 -22.3994l36.7002 4.39941c-2.90039 33 -25.5996 46.6006 -63 46.6006c-32.9004 0 -65.2002 -12.4004 -65.2002 -52.4004
c0 -24.9004 12.1006 -40.7002 42.5 -48c28.1006 -6.59961 49.9004 -8.7002 49.9004 -28.5996c0 -13.6006 -13.2002 -19.1006 -38.1006 -19.1006c-37 0 -52.3994 19.4004 -61.1992 46.2002c-20 60.5 -27.3008 101.9 -100.801 101.9c-53.8994 0 -82.5 -34.1006 -82.5 -92
c0 -55.7002 28.6006 -85.8008 79.9004 -85.8008c41.4004 0 61.2002 19.4004 61.2002 19.4004l-11.7002 31.9004s-19 -21.3008 -47.5996 -21.3008c-25.3008 0 -43.3008 22 -43.3008 57.2002c0 45.1006 22.7002 61.2002 45.1006 61.2002c41.5 0 46.7002 -33.2998 63 -84.2998
c11.7002 -35.5 33.7002 -64.1006 97.0996 -64.1006z" />
    <glyph glyph-name="ioxhost" unicode="&#xf208;" horiz-adv-x="640" 
d="M616 288c13.2998 0 24 -10.7002 24 -24c0 -13.2002 -10.7002 -24 -24 -24h-52.7002c3.10059 -15.5 4.7002 -31.5996 4.7002 -48c0 -137 -111 -248 -248 -248c-102.9 0 -191.2 62.7002 -228.7 152h-67.2998c-13.2998 0 -24 10.7002 -24 24c0 13.2002 10.7002 24 24 24
h52.7002c-3.10059 15.5 -4.7002 31.5996 -4.7002 48c0 137 111 248 248 248c102.9 0 191.2 -62.7002 228.7 -152h67.2998zM520 192c0 16.5996 -2 32.5996 -5.7998 48h-298.2c-13.2998 0 -24 10.7002 -24 24c0 13.2002 10.7002 24 24 24h279.5
c-33.9004 62 -99.7998 104 -175.5 104c-110.5 0 -200 -89.5 -200 -200c0 -16.5996 2 -32.5996 5.7998 -48h298.2c13.2998 0 24 -10.7002 24 -24c0 -13.2002 -10.7002 -24 -24 -24h-279.5c33.9004 -62 99.7998 -104 175.5 -104c110.5 0 200 89.5 200 200zM216 216h208
c13.2998 0 24 -10.7002 24 -24c0 -13.2002 -10.7002 -24 -24 -24h-208c-13.2998 0 -24 10.7002 -24 24c0 13.2002 10.7002 24 24 24z" />
    <glyph glyph-name="angellist" unicode="&#xf209;" 
d="M347.1 232.6c48 -11.6992 54.9004 -50.5996 54.9004 -93.6992c0 -114.301 -73.4004 -202.9 -191.4 -202.9c-96.1992 0 -164.6 76.4004 -164.5 148.6c0 37.1006 14.2002 61.7002 51.1006 71.7002c-3.10059 8.2998 -8 20.7998 -8 29.7002
c0 23.5 24.8994 52.5996 48.2998 52.5996c6.90039 0 13.7002 -2 20 -4.2998c-12.4004 35.2002 -46.5996 126.7 -46.5996 162c0 28.7998 14.5996 51.7002 45.6992 51.7002c40 0 85.4004 -144 95.1006 -172.5c12.5 31.4004 52.5 163.1 97.0996 163.1
c28 0 43.7002 -22.2998 43.7002 -48.8994c0 -30.2002 -33.7002 -124.5 -45.4004 -157.101zM311.7 340l-33.1006 -93.7002l34 -6c8.5 23.4004 47.1006 128.9 47.1006 148c0 7.10059 -2.2998 16 -10.9004 16c-16 0 -33.0996 -52 -37.0996 -64.2998zM142.3 399.7
c0 -29.1006 34.6006 -120 45.5 -148.8c7.7002 4.39941 19.7998 2.69922 35.4004 1.39941l-34.6006 100.3c-31.7998 92.8008 -46.2998 59 -46.2998 47.1006zM140 204c-7.7002 0 -20.2998 -13.4004 -20.4004 -21.0996c0 -20.8008 56 -97.7002 76.9004 -97.7002
c5.7002 0 10.5996 6.2998 10.5996 11.3994c0 12.8008 -37.7998 107.4 -67.0996 107.4zM324.3 17.7002c55.2998 61.5 49.1006 158.6 31 174.7c-24 21.0996 -106 29.0996 -138.3 29.0996c-17.2998 0 -17.4004 -6.40039 -17.4004 -13.0996
c0 -43.7002 92.9004 -39.7002 120.601 -39.7002c11.2002 0 15.7998 -9.90039 16.8994 -21.1006c-7.39941 -7.39941 -17.6992 -11.6992 -27.3994 -15.3994c-9.40039 -3.40039 -19.1006 -7.10059 -27.1006 -13.1006c-22 -16 -43.6992 -43.3994 -43.6992 -71.6992
c0 -17.7002 10.5996 -32.9004 10.5996 -50.3008c0 -0.299805 -2 -6.5 -2 -7.39941c-32.5996 2.2998 -40.5996 34.5996 -41.7002 61.7002c-3.39941 -0.900391 -8 -0.600586 -11.7002 -0.600586c5.10059 -17.7998 -11.8994 -42 -38 -42
c-37.7998 0 -88 57.2002 -58.2998 86.9004c28.7002 -35.9004 35 -51.4004 51.1006 -51.4004c4 0 11.6992 3.40039 11.6992 8.2998c0 12.8008 -42.8994 73.1006 -54.2998 73.1006c-16.7998 0 -37.7002 -24.9004 -20.5996 -68.2998
c22.5996 -55.7002 69.5 -88.3008 128.899 -88.3008c43.4004 0 80.6006 16.6006 109.7 48.6006zM225.7 143.7c3.2002 -8.2998 6.59961 -16.6006 9.39941 -25.1006c6.30078 7.10059 12.9004 13.7002 20.3008 19.1006c-10 2 -20 2.89941 -29.7002 6z" />
    <glyph glyph-name="buysellads" unicode="&#xf20d;" 
d="M224 297.3l42.9004 -160.7h-85.8008zM448 368v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h352c26.5 0 48 -21.5 48 -48zM382.7 42.7002l-94.5 298.7h-128.4l-94.5 -298.7h90.7002l111.7 91.5996l24.2002 -91.5996h90.7998z
" />
    <glyph glyph-name="connectdevelop" unicode="&#xf20e;" horiz-adv-x="576" 
d="M550.5 207c6.69629 -1.33887 11.7861 -7.5 11.7881 -14.7324c0 -7.5 -5.3584 -13.6602 -12.3223 -15l-54.9111 -95.3574c0.536133 -1.60742 0.804688 -3.21387 0.804688 -4.82129c0 -7.23145 -5.09082 -13.3926 -12.0547 -14.7314l-51.6963 -90.2686
c0.535156 -1.33887 0.802734 -2.67773 0.802734 -4.28516c0 -8.30371 -6.69727 -15.2676 -15.2686 -15.2676c-4.28516 0 -8.30371 1.875 -10.9814 4.82129h-107.144c-2.67871 -3.21484 -6.96484 -5.35742 -11.5176 -5.35742s-8.83887 2.14258 -11.5166 5.35645h-106.875
c-2.67969 -3.21484 -6.69727 -5.35742 -11.5186 -5.35742c-8.30371 0 -15.2676 6.69727 -15.2676 15.2676c0 1.875 0.535156 3.75 1.07031 5.35742l-51.6963 89.7324c-6.96484 1.33887 -12.0547 7.5 -12.0547 14.7314c0 1.875 0.268555 3.21387 0.804688 4.82129
l-55.1797 95.3574c-6.96484 1.60742 -12.0537 7.76855 -12.0537 15c0 7.5 5.3584 13.6611 12.5898 15l53.3047 92.1436c0 0.536133 -0.268555 1.07227 -0.268555 1.60645c0 6.16113 3.75098 11.251 9.10742 13.6611l55.9824 97.2334
c-0.536133 1.33887 -1.07129 3.21387 -1.07129 4.82129c0 8.57129 6.96484 15.2676 15.2676 15.2676c4.82227 0 8.83887 -2.14258 11.7861 -5.625h106.071c2.67871 3.48242 6.69629 5.625 11.5176 5.625s8.83887 -2.14258 11.5176 -5.62402h106.606
c2.94727 3.48242 6.96484 5.625 11.7861 5.625c8.30371 0 15.2676 -6.69727 15.2676 -15.2676c0 -1.60742 -0.535156 -3.21484 -1.07031 -4.82129l55.4463 -95.8936c8.03613 -0.267578 14.7324 -6.96484 14.7324 -15.001c0 -2.67871 -0.803711 -5.08984 -1.875 -7.23145z
M153.535 -2.73242v75.8037h-43.6602zM153.535 81.1074v50.624l-44.999 -47.4102c0.535156 -1.07227 1.07129 -2.14355 1.33887 -3.21387h43.6602zM153.535 143.518l0.000976562 92.9463l-50.0889 51.9648c-2.41113 -1.60645 -5.08887 -2.41113 -7.76855 -2.67871
l-51.9648 -90c0.268555 -1.07227 0.268555 -2.14258 0.268555 -3.48242c0 -1.33887 0 -2.67871 -0.535156 -4.01758l55.7129 -96.4287c1.33887 -0.267578 2.67871 -1.07129 4.01758 -1.60742zM153.535 245.84v72.0527l-43.9277 -15.8037
c0 -0.267578 0.267578 -0.803711 0.267578 -1.07227c0 -2.94531 -0.803711 -5.62402 -2.14258 -7.7666zM153.535 326.465v59.7324l-43.6602 -75.5361zM480.054 287.357l-0.267578 0.267578l-98.0361 -101.518l63.75 -67.2324l35.3584 167.143zM291.75 92.8926
l-11.25 -11.7852h22.7676zM291.482 104.143l79.2852 82.2324l-83.0352 87.5889l-79.5537 -84.375zM296.839 98.25l16.875 -17.1426h124.02l5.8916 28.125l-67.5 71.25zM410.411 403.607l-117.053 -124.019l83.0342 -87.5889l97.5 101.25
c-1.33984 2.14258 -2.14258 4.82129 -2.14258 7.7666v0.536133l-57.8574 100.714c-1.33984 0.268555 -2.41016 0.804688 -3.48145 1.34082zM401.304 405.75h-4.28711l-166.339 -60l57.0547 -60.2676zM277.821 405.75h-103.929l50.8936 -53.5713l148.393 53.5713h-75
c-2.67871 -2.67773 -6.16016 -4.28516 -10.1787 -4.28516s-7.50098 1.60742 -10.1787 4.28516zM161.572 400.125v-70.7148l54.9111 19.8213l-51.1611 53.8398c-0.870117 -0.300781 -1.77832 -0.574219 -2.67969 -0.804688zM161.572 320.839v-83.3037l40.9814 -42.0527
l79.5537 84.1064l-59.7324 63.2139zM161.572 228.161v-76.0723l36.4277 38.3037zM161.572 140.303v-59.1953h107.678l17.1426 17.6777l-82.7676 85.9814zM168.536 -21.75h1.33887l91.6074 94.8213h-99.9102v-89.7324l1.07031 -1.60645
c2.41113 -0.804688 4.28613 -1.875 5.89355 -3.48242zM298.447 -21.75h104.194l-91.6064 94.8213h-38.3037l-91.6074 -94.8213h96.4287c2.68066 2.41016 6.42871 4.28516 10.4473 4.28516s7.76758 -1.875 10.4473 -4.28516zM418.447 -9.96387l17.4121 83.0361h-114.376
l89.1953 -91.875c1.07227 0.536133 2.14355 1.07031 3.48242 1.33887zM431.303 12.2676l34.8223 60.8037h-21.9639zM466.125 81.1074c0.267578 1.07129 0.803711 2.14258 1.33887 2.94531l-17.1426 18.2139l-4.55371 -21.1592h20.3574zM532.286 188.518
c-0.268555 1.33984 -0.536133 2.41113 -0.536133 3.75c0 1.60742 0.536133 2.94629 0.802734 4.28516l-45.8027 79.2861l-34.5537 -163.928l20.625 -21.9639c1.33887 0.802734 2.67871 1.33887 4.01758 1.87402z" />
    <glyph glyph-name="dashcube" unicode="&#xf210;" 
d="M326.6 344l102.2 104v-427c0 -50.5 -40.0996 -85 -91.2002 -85h-227.199c-51.1006 0 -91.2002 34.5 -91.2002 85v229.5c0 50.2002 40.0996 93.5 91.2002 93.5h216.199zM153.9 31.5v-0.0996094h223.8l-51.1006 52.2998v123.5c0 17.7002 -14.2998 32.5 -32 32.5h-140.699
c-17.7002 0 -32.4004 -14.7998 -32.4004 -32.5v-142.9c0 -17.7002 14.7002 -32.7998 32.4004 -32.7998z" />
    <glyph glyph-name="forumbee" unicode="&#xf211;" 
d="M5.7998 138.3c-3.7998 17 -5.7998 34.2002 -5.7998 51.4004c0 123.3 99.7998 223.3 223.1 223.3c16.6006 0 33.3008 -2 49.3008 -5.5c-123.4 -47 -220.5 -145.5 -266.601 -269.2zM398.7 327.5c-151.101 -44 -269.2 -164.4 -312.3 -315.7
c-17.2002 13.4004 -32.7002 30.9004 -45.2002 49c43.3994 149.9 160.1 267.7 309.7 312c18.0996 -12.5996 34.0996 -27.7998 47.7998 -45.2998zM414.5 74.7998c13.0996 -35.2998 24.2002 -73.2998 33.5 -109.8c-36.0996 9.2998 -72 20.5 -107 33.5996
c-25.7002 -16 -54.5996 -26.8994 -84.5996 -31.2998c42.5996 79.7002 108.199 147.4 187.6 190.3c-4.09961 -29.0996 -14.2998 -57.6992 -29.5 -82.7998zM444.2 220.3c-113.7 -46.7002 -204.2 -139.399 -250.5 -253.5c-19.6006 2.7002 -38.5 7.60059 -56.6006 15.2002
c44.9004 138.5 153.4 249.3 291.301 295.1c7.89941 -18.0996 13.1992 -37.2998 15.7998 -56.7998z" />
    <glyph glyph-name="leanpub" unicode="&#xf212;" horiz-adv-x="576" 
d="M386.539 336.515l15.0957 -248.955l-10.9785 0.275391c-36.2324 0.824219 -71.6406 -8.7832 -102.657 -27.9971c-31.0156 19.2139 -66.4238 27.9971 -102.657 27.9971c-45.5635 0 -82.0693 -10.7051 -123.516 -27.7227l31.291 258.288
c28.5459 11.8027 61.4834 18.1143 92.2256 18.1143c41.1729 0 73.8359 -13.1748 102.657 -42.5439c27.7227 28.2715 59.0127 41.7217 98.5391 42.5439zM569.07 0c-25.5264 0 -47.4854 5.21484 -70.542 15.6445c-34.3105 15.6455 -69.9932 24.9785 -107.871 24.9785
c-38.9775 0 -74.9346 -12.9014 -102.657 -40.623c-27.7227 27.7227 -63.6797 40.623 -102.657 40.623c-37.8779 0 -73.5605 -9.33301 -107.871 -24.9785c-22.2324 -9.88086 -44.7402 -15.6445 -69.1689 -15.6445h-1.37305l42.5449 349.141
c39.251 22.2334 87.0117 34.8594 132.301 34.8594c37.0547 0 75.209 -7.68457 106.225 -29.0947c31.0156 21.4102 69.1699 29.0947 106.225 29.0947c45.2891 0 93.0498 -12.626 132.301 -34.8594zM525.702 44.7412l-34.0361 280.246
c-30.7422 13.999 -67.248 21.4102 -101.009 21.4102c-38.4287 0 -74.3848 -12.0771 -102.657 -38.7021c-28.2725 26.625 -64.2275 38.7021 -102.657 38.7021c-33.7607 0 -70.2666 -7.41113 -101.009 -21.4102l-34.0361 -280.246
c47.2109 19.4863 82.8945 33.4854 135.045 33.4854c37.6045 0 70.8174 -9.60547 102.657 -29.6436c31.8398 20.0381 65.0518 29.6436 102.657 29.6436c52.1504 0 87.834 -13.999 135.045 -33.4854z" />
    <glyph glyph-name="sellsy" unicode="&#xf213;" horiz-adv-x="640" 
d="M539.71 210.692c55.1572 -13.4834 94.0742 -63.124 94.0732 -119.509c0 -68.0264 -55.4639 -123.184 -123.185 -123.184h-381.197c-67.7217 0 -123.186 55.1572 -123.185 123.185c0 47.4961 27.8848 91.0098 70.7852 111.234
c-2.14453 7.35449 -3.06543 15.0146 -3.06543 22.3691c0 46.2705 37.6914 83.9609 83.9629 83.9609c20.2227 0 39.835 -7.35449 55.1562 -20.5303c18.3867 74.7695 85.8008 127.781 163.021 127.781c92.542 0 167.924 -75.3818 167.924 -167.924
c0 -12.5635 -1.22559 -25.127 -4.29004 -37.3838zM199.88 46.4463v110.928c0 8.27344 -7.04688 15.3213 -15.3213 15.3213h-30.9482c-8.27344 0 -15.3213 -7.04785 -15.3213 -15.3213v-110.928c0 -8.27344 7.04688 -15.3213 15.3213 -15.3213h30.9482
c8.27344 0 15.3213 7.04688 15.3213 15.3213zM289.357 46.4463v131.458c0 8.27246 -7.04883 15.3203 -15.3223 15.3203h-30.9492c-8.27246 0 -15.3213 -7.04688 -15.3213 -15.3203v-131.458c0 -8.27344 7.04688 -15.3213 15.3213 -15.3213h30.9492
c8.27344 0 15.3223 7.04688 15.3223 15.3213zM378.834 46.4463v162.714c0 8.27246 -7.04688 15.3213 -15.3213 15.3213h-30.9482c-8.27441 0 -15.3223 -7.04785 -15.3223 -15.3213v-162.714c0 -8.27344 7.04785 -15.3213 15.3223 -15.3213h30.9482
c8.27441 0 15.3213 7.04688 15.3213 15.3213zM465.861 46.4463v224.612c0 8.58008 -7.04785 15.6279 -15.3223 15.6279h-28.4971c-8.27441 0 -15.3213 -7.04883 -15.3213 -15.6279v-224.612c0 -8.27344 7.04688 -15.3213 15.3213 -15.3213h28.4971
c8.27441 0 15.3223 7.04688 15.3223 15.3213z" />
    <glyph glyph-name="shirtsinbulk" unicode="&#xf214;" 
d="M100 37.7002l4.40039 9.89941l30.5996 -13.3994l-4.40039 -9.90039zM139.4 20.2002l4.39941 9.89941l30.6006 -13.3994l-4.40039 -9.90039zM311.5 34.2002l30.5996 13.3994l4.40039 -9.89941l-30.5996 -13.4004zM179.1 3l4.40039 9.59961l30.2998 -13.3994
l-4.39941 -9.90039zM60.4004 55.2002l4.39941 9.89941l30.6006 -13.6992l-4.40039 -9.60059zM271.8 16.7002l30.6006 13.3994l4.39941 -9.89941l-30.5996 -13.4004zM232.5 -0.799805l30.5996 13.3994l4.40039 -9.59961l-30.5996 -13.7002zM350.9 51.4004l30.5996 13.6992
l4.40039 -9.89941l-30.6006 -13.4004zM170 401.4v-10.5h-33.5v10.5h33.5zM122.8 401.4l-0.0996094 -10.5h-33.5v10.5h33.5996zM75.5 401.4l0.0996094 -10.5h-33.2998v10.5h33.2002zM217 401.4v-10.5h-33.2002v10.5h33.2002zM311.5 401.4v-10.5h-33.5v10.5h33.5zM358.8 401.4
v-10.5h-33.5v10.5h33.5zM264.2 401.4v-10.5h-33.2002v10.5h33.2002zM405.7 401.4v-10.5h-33.2998v10.5h33.2998zM52.7998 96.9004v-33.5h-10.7998v33.5h10.7998zM122.8 312.8l-0.0996094 -10.5h-33.5v10.5h33.5996zM52.7998 302.2v-23h-10.7998v33.5h33.5996v-10.5h-22.7998
zM221.7 73.5996c-50.2002 0 -91.2998 40.8008 -91.2998 91.3008c0 50.1992 41.0996 91.2998 91.2998 91.2998c50.5 0 91.2998 -41.1006 91.2998 -91.2998c0 -50.5 -40.7998 -91.3008 -91.2998 -91.3008zM173.5 184.7c0 -44.2998 77.5996 -11.9004 77.5996 -38
c0 -13.1006 -24 -14.2998 -32.6992 -14.2998c-12.3008 0 -29.8008 2.69922 -35.9004 14.8994h-0.900391l-9 -18.3994c14.8008 -9.30078 29.1006 -12.2002 47.2002 -12.2002c19.5 0 51 5.7998 51 31.2002c0 48.0996 -78.5 16.2998 -78.5 37.8994
c0 13.1006 20.7998 14.9004 29.7998 14.9004c10.8008 0 29.2002 -3.2002 35.6006 -13.1006h0.899414l8.80078 16.9004c-15.1006 6.2002 -27.4004 12 -44.3008 12c-20.0996 0 -49.5996 -6.40039 -49.5996 -31.7998zM52.7998 269.6v-33.5996h-10.7998v33.5996h10.7998z
M395.2 63.4004v33.5h10.7998v-33.5h-10.7998zM52.7998 140.1v-33.5h-10.7998v33.5h10.7998zM0 444.3h448v-406l-226.3 -98.5996l-221.7 98.5996v406zM418.8 57.2002h0.100586v270.1h-389.7v-270.1l192.8 -85.7002zM418.8 356.5h0.100586v58.5996h-389.7v-58.5996h389.6z
M52.7998 226.4v-33.5h-10.7998v33.5h10.7998zM52.7998 183.2v-33.5h-10.7998v33.5h10.7998zM170 312.8v-10.5h-33.5v10.5h33.5zM395.2 149.7v33.5h10.7998v-33.5h-10.7998zM395.2 192.9v33.5h10.7998v-33.5h-10.7998zM217 312.8v-10.5h-33.2002v10.5h33.2002zM395.2 236
v33.5h10.7998v-33.5h-10.7998zM395.2 106.5v33.5h10.7998v-33.5h-10.7998zM264.2 312.8v-10.5h-33.2002v10.5h33.2002zM311.5 312.8v-10.5h-33.5v10.5h33.5zM395.2 279.2l0.0996094 23h-22.7998v10.5h33.5v-33.5h-10.7998zM358.8 312.8v-10.5h-33.5v10.5h33.5z" />
    <glyph glyph-name="simplybuilt" unicode="&#xf215;" horiz-adv-x="512" 
d="M481.2 384c14.7002 0 26.5 -11.7998 26.7002 -26.2998v-331.4c0 -14.5 -11.8008 -26.2998 -26.6006 -26.2998h-450.399c-14.8008 0 -26.6006 11.7998 -26.6006 26.2998v331.4c0 14.5 11.7998 26.2998 26.4004 26.2998h106c14.5996 0 26.5996 -11.7998 26.5996 -26.2998
v-39.6006h185.3v39.6006c0 14.5 12.1006 26.2998 26.6006 26.2998h106zM149.8 92.2002c36.9004 0 66.6006 29.7002 66.6006 66.3994c0 36.9004 -29.7002 66.6006 -66.6006 66.6006c-36.7002 0 -66.3994 -29.7002 -66.3994 -66.6006
c0 -36.6992 29.7998 -66.3994 66.3994 -66.3994zM362.2 92.2002c36.5996 0 66.3994 29.7002 66.3994 66.5996c0 36.7002 -29.7998 66.4004 -66.3994 66.4004c-36.9004 0 -66.6006 -29.7998 -66.6006 -66.4004c0 -36.8994 29.7002 -66.5996 66.6006 -66.5996z" />
    <glyph glyph-name="skyatlas" unicode="&#xf216;" horiz-adv-x="640" 
d="M640 118.7c0 -65.9004 -52.5 -114.4 -117.5 -114.4c-165.9 0 -196.6 249.7 -359.7 249.7c-146.899 0 -147.1 -212.2 5.60059 -212.2c42.5 0 90.8994 17.7998 125.3 42.5c5.59961 4.10059 16.8994 16.2998 22.7998 16.2998s10.9004 -5 10.9004 -10.8994
c0 -7.7998 -13.1006 -19.1006 -18.7002 -24.1006c-40.9004 -35.5996 -100.3 -61.1992 -154.7 -61.1992c-83.4004 -0.100586 -154 59 -154 144.899c0 85.9004 67.5 149.101 152.8 149.101c185.3 0 222.5 -245.9 361.9 -245.9c99.8994 0 94.7998 139.7 3.39941 139.7
c-17.5 0 -35 -11.6006 -46.8994 -11.6006c-8.40039 0 -15.9004 7.2002 -15.9004 15.6006c0 11.5996 5.2998 23.7002 5.2998 36.2998c0 66.5996 -50.8994 114.7 -116.899 114.7c-53.1006 0 -80 -36.9004 -88.7998 -36.9004c-6.2002 0 -11.2002 5 -11.2002 11.2002
c0 5.59961 4.09961 10.2998 7.7998 14.4004c25.2998 28.7998 64.7002 43.6992 102.8 43.6992c79.4004 0 139.101 -58.3994 139.101 -137.8c0 -6.89941 -0.300781 -13.7002 -1.2002 -20.5996c11.8994 3.09961 24.0996 4.7002 35.8994 4.7002
c60.7002 0 111.9 -45.3008 111.9 -107.2z" />
    <glyph glyph-name="pinterest-p" unicode="&#xf231;" horiz-adv-x="384" 
d="M204 441.5c94.2002 0 180 -64.7998 180 -164.1c0 -93.3008 -47.7002 -196.801 -153.9 -196.801c-25.1992 0 -57 12.6006 -69.2998 36c-22.7998 -90.2998 -21 -103.8 -71.3994 -172.8c-5.2002 -1.89941 -3.5 -2.2998 -6.90039 1.5c-1.7998 18.9004 -4.5 37.5 -4.5 56.4004
c0 61.2002 28.2002 149.7 42 209.1c-7.5 15.2998 -9.59961 33.9004 -9.59961 50.7002c0 80 93.8994 92 93.8994 25.7998c0 -39 -26.3994 -75.5996 -26.3994 -113.399c0 -25.8008 21.2998 -43.8008 46.1992 -43.8008c69 0 90.3008 99.6006 90.3008 152.7
c0 71.1006 -50.4004 109.8 -118.5 109.8c-79.2002 0 -140.4 -57 -140.4 -137.399c0 -38.7002 23.7002 -58.5 23.7002 -67.7998c0 -7.80078 -5.7002 -35.4004 -15.6006 -35.4004c-24 0 -63.5996 40 -63.5996 110.4c0 110.699 101.4 179.1 204 179.1z" />
    <glyph glyph-name="whatsapp" unicode="&#xf232;" 
d="M380.9 350.9c41.8994 -42 67.0996 -97.7002 67.0996 -157c0 -122.4 -101.8 -222 -224.1 -222h-0.100586c-37.2002 0 -73.7002 9.2998 -106.1 27l-117.7 -30.9004l31.5 115c-19.4004 33.7002 -29.5996 71.9004 -29.5996 111c0 122.4 99.5996 222 222 222
c59.2998 0 115.1 -23.0996 157 -65.0996zM223.9 9.2998c101.699 0 186.6 82.7998 186.6 184.601c0.0996094 49.2998 -21.2998 95.5996 -56.0996 130.5c-34.8008 34.8994 -81.1006 54.0996 -130.4 54.0996c-101.8 0 -184.6 -82.7998 -184.6 -184.5
c0 -34.9004 9.69922 -68.7998 28.1992 -98.2002l4.40039 -7l-18.5996 -68.0996l69.7998 18.2998l6.7002 -4c28.2998 -16.7998 60.7998 -25.7002 94 -25.7002zM325.1 147.5c5.5 -2.7002 9.2002 -4.09961 10.5 -6.59961c1.40039 -2.30078 1.40039 -13.4004 -3.19922 -26.4004
c-4.60059 -13 -26.7002 -24.7998 -37.4004 -26.4004c-17.5996 -2.59961 -31.4004 -1.2998 -66.5996 13.9004c-55.7002 24.0996 -92 80.0996 -94.8008 83.7998c-2.69922 3.7002 -22.5996 30.1006 -22.5996 57.4004s14.2998 40.7002 19.4004 46.2998
c5.09961 5.5 11.0996 6.90039 14.7998 6.90039s7.39941 0 10.5996 -0.200195c3.40039 -0.200195 8 1.2998 12.5 -9.5c4.60059 -11.1006 15.7002 -38.4004 17.1006 -41.2002c1.39941 -2.7998 2.2998 -6 0.5 -9.7002c-10.6006 -21.2002 -22 -20.5 -16.3008 -30.2998
c21.5 -36.9004 42.9004 -49.7002 75.5 -66c5.5 -2.7998 8.80078 -2.2998 12 1.40039c3.30078 3.7998 13.9004 16.1992 17.6006 21.7998c3.7002 5.59961 7.39941 4.7002 12.5 2.7998c5.09961 -1.7998 32.3994 -15.2002 37.8994 -18z" />
    <glyph glyph-name="viacoin" unicode="&#xf237;" horiz-adv-x="384" 
d="M384 416l-48 -112h48v-48h-68.5l-13.7998 -32h82.2998v-48h-102.8l-89.2002 -208l-89.2002 208h-102.8v48h82.2998l-13.7998 32h-68.5v48h48l-48 112h64l80.7998 -192h94.5l80.7002 192h64zM192 112l27 64h-54z" />
    <glyph glyph-name="medium" unicode="&#xf23a;" 
d="M0 416h448v-448h-448v448zM372.2 309.9v5h-83.2002l-59.2998 -147.9l-67.4004 148h-87.2998v-5.09961l28.0996 -33.9004c2.80078 -2.5 4.2002 -6.09961 3.80078 -9.7998v-133c0.799805 -4.7998 -0.700195 -9.7002 -4.10059 -13.2002l-31.5996 -38.2998v-5.10059h89.7998
v5.10059l-31.5996 38.2998c-3.40039 3.5 -5.10059 8.40039 -4.40039 13.2002v115l78.7002 -171.601h9.09961l67.6006 171.601v-136.9c0 -3.59961 0 -4.2998 -2.40039 -6.7002l-24.2998 -23.5996v-4.90039h118v5.10059l-23.5 23
c-2.10059 1.5 -3.10059 4.09961 -2.7002 6.7002v169.3c-0.400391 2.5 0.599609 5.09961 2.7002 6.7002z" />
    <glyph glyph-name="y-combinator" unicode="&#xf23b;" 
d="M448 416v-448h-448v448h448zM236 160.5l77.5 145.5h-32.7002l-45.7998 -91c-4.7002 -9.2998 -9 -18.2998 -12.7998 -26.7998l-12.2002 26.7998l-45.2002 91h-35l76.7002 -143.8v-94.5h29.5v92.7998z" />
    <glyph glyph-name="optin-monster" unicode="&#xf23c;" horiz-adv-x="576" 
d="M572.6 26.5996c1 -3.5 1.90039 -7 1.7002 -10.6992c0.799805 -31.6006 -44.2998 -64 -73.5 -65.1006c-17.2998 -0.799805 -34.5996 8.40039 -42.7002 23.5c-113.5 -4.09961 -227 -4.89941 -340.199 0c-8.40039 -15.0996 -25.7002 -24 -43 -23.5
c-28.9004 1.10059 -74 33.5 -73.5 65.1006c0.299805 3.7998 0.799805 7.2998 1.89941 10.7998c-5.59961 9.39941 -4.7998 15.2998 5.40039 11.5996c3.2998 5.2002 7 9.5 11.0996 13.7998c-2.5 10.9004 1.2998 14.1006 11.1006 9.2002c4.5 3.2998 10 6.5 15.8994 9.2002
c0 15.7998 11.7998 11.2002 17.2998 5.7002c12.5 1.7998 20.2002 -0.700195 26.8008 -5.7002v19.7002c-12.9004 0 -40.6006 11.3994 -45.9004 36.2002c-5 20.7998 2.59961 38.0996 25.0996 47.5996c0.800781 5.90039 8.10059 14 14.9004 15.9004
c7.59961 1.89941 12.5 -4.60059 14.0996 -10.3008c7.40039 0 17.8008 -1.5 21.1006 -8.09961c5.39941 0.5 11.0996 1.40039 16.5 1.90039c-2.40039 1.89941 -5.10059 3.5 -8.10059 4.59961c-5.09961 8.90039 -13.7998 11.0996 -24.5996 11.5996
c0 0.800781 0 1.60059 0.299805 2.7002c-19.7998 0.5 -44.0996 5.60059 -54.8994 17.7998c-21.3008 23.6006 -15.9004 83.6006 12.1992 103.5c8.40039 5.7002 21.6006 0.800781 22.7002 -9.69922c2.40039 -20.6006 0.400391 -26.8008 26.2002 -25.9004
c8.09961 7.7998 16.7998 14.5996 26.5 20c-14.9004 1.2998 -28.9004 -1.59961 -43.7998 -3.7998c12.7002 12.5 23.8994 25.3994 56.7002 42.3994c23.5 11.9004 50 20.8008 76.1992 23.2002c-18.5996 7.90039 -40 11.9004 -59.6992 16.5
c76.5 16.2002 174.6 22.1006 244.199 -37.5996c18.1006 -15.4004 32.4004 -36.2002 42.7002 -60c39.7998 -4.90039 36.4004 5.5 38.6006 25.0996c1.09961 10.2998 14.2998 15.4004 22.6992 9.5c14.9004 -10.5 22.2002 -30.7998 24.6006 -48.0996
c2.2002 -17.7998 0.299805 -41.2998 -12.4004 -55.1006c-10.7998 -12.1992 -34.2998 -17.5996 -53.7998 -18.0996v-2.7998c-11.0996 -0.200195 -20.2998 -2.40039 -25.7002 -11.6006c-3 -1.09961 -5.7002 -2.69922 -8.39941 -4.59961
c5.69922 -0.5 11.3994 -1.40039 16.7998 -1.90039c1.89941 5.60059 12.5996 8.40039 21.0996 8.40039c1.7002 5.40039 6.7998 11.9004 14.1006 10.2998c7.2998 -1.59961 14.0996 -10 14.8994 -15.8994c10.7998 -4.40039 22.1006 -12.2002 25.1006 -25.7002
c1.89941 -8.10059 1.69922 -15.1006 0.299805 -21.9004c-5.7002 -25.2002 -33.2998 -36.2002 -45.9004 -36.2002c0 -6.69922 0 -13.1992 -0.299805 -19.6992c8.09961 6 16.4004 7.19922 26.7998 5.69922c6 5.90039 17.6006 9.40039 17.6006 -5.69922
c5.59961 -2.7002 11.2998 -6 15.8994 -9.2002c10.1006 5 13.7002 0.5 10.7998 -9.2002c4.10059 -4.2998 8.10059 -8.90039 11.1006 -13.7998c10.0996 3.59961 11 -2.10059 5.39941 -11.6006zM498.8 280.6c17.2998 -6.69922 26.2002 -22.0996 30.2998 -35.6992
c1.10059 10.5996 -2.69922 39.5 -13.7998 51.0996c-7.2998 7.2998 -14.0996 5.09961 -14.0996 -0.799805c0 -6.2002 -1.2998 -11.6006 -2.40039 -14.6006zM494.2 273.9c-3.2002 -3.30078 -9.2002 -4.90039 -14.1006 -5.7002c13 -15.7002 17 -41.7002 12.7002 -63
c10.7998 2.2002 20.5 6.2998 26.2002 12.2002c1.90039 2.19922 3.7998 4.89941 4.90039 7.59961c-1.10059 21.2998 -10.2002 42.7002 -29.7002 48.9004zM470.1 267.1c-3.69922 0 -8.09961 0 -11.7998 0.300781c7.5 -20.6006 12.4004 -42.7002 14.2998 -64.6006
c3.5 0 7.5 0.299805 11.6006 0.799805c5.89941 24.3008 -0.299805 51.6006 -14.1006 63.5zM47.5 245c4.09961 13.5 13 28.9004 30.2998 35.7002c-1 3 -2.39941 8.39941 -2.39941 14.5996c0 5.90039 -7.10059 8.10059 -14.1006 0.799805
c-11.3994 -11.5996 -14.8994 -40.5996 -13.7998 -51.0996zM57.2002 217.4c5.7002 -6.2002 15.3994 -10 26.2002 -12.2002c-4.30078 21.3994 -0.300781 47.2998 12.6992 63c-4.89941 0.799805 -10.8994 2.5 -14.0996 5.7002
c-19.4004 -6.2002 -28.2998 -27.6006 -29.7002 -48.9004c1.40039 -2.7002 3 -5.40039 4.90039 -7.59961zM105.1 202.8c2.40039 22.2002 9.10059 43.7998 19.8008 63.5c-5.2002 -1.09961 -10 -3 -14.9004 -4.89941l-12.2002 -5.10059v0.299805
c-7.2998 -14.0996 -10 -34.3994 -5.39941 -53c4.59961 -0.5 8.59961 -0.799805 12.6992 -0.799805zM289.1 365.5c-41.8994 0 -76.1992 -34.0996 -76.1992 -75.9004c0 -42.1992 34.2998 -76.1992 76.1992 -76.1992c41.9004 0 76.2002 34 76.2002 76.1992
c0 41.9004 -34.2998 75.9004 -76.2002 75.9004zM404.7 191.2c-12.9004 0.799805 -26.2002 0.799805 -39.5 1.09961c10 -50.5996 3.2998 -64.7002 16.5 -58.0996c16 8.09961 22.7002 39.2002 23 57zM350.7 192.8c-18.9004 0.299805 -38.1006 0.299805 -57 0v0.299805
c-0.299805 -5.19922 0.200195 -38.0996 4.2998 -41.0996c11.0996 -5.40039 39.5 -4.59961 51.0996 -1.09961c5.40039 1.59961 2.40039 37 1.60059 41.8994zM278.3 139c4.60059 2.5 2.40039 45.4004 1.2998 53.7002v0.299805
c-19.3994 -0.299805 -38.5996 -0.299805 -57.7998 -0.799805c-1.89941 -9.2002 -4.59961 -48.9004 1.90039 -51.6006c13 -5.69922 41.5996 -5.09961 54.5996 -1.59961zM171.8 190.1c-5.39941 -19.6992 0.299805 -45.0996 22.2002 -54.8994
c5.40039 -2.5 8.59961 -2.5 9.7002 4.2998c1.89941 8.7002 2.5 36.7998 4.89941 52.2002c-12.1992 -0.200195 -24.5996 -0.799805 -36.7998 -1.60059zM136.4 158.8c2.39941 -3.7002 1.59961 -9.09961 -8 -12.5c43.7998 -47 92.6992 -85.7002 155.899 -106.5
c67.5 19.2002 115.601 60 163.2 107c-11.0996 4.2998 -7.7002 10.2998 -7.2998 11.6006c-8.90039 0.799805 -17.9004 1.89941 -26.5 2.69922c-9.5 -33 -36 -52.8994 -46.7998 -31.5996c-2.7002 5.2002 -3.5 11.7002 -4.60059 16.7998
c-3.7998 -8.39941 -13.2998 -8.09961 -24.5996 -8.89941c-13.2002 -1.10059 -31.6006 -1.30078 -44 3c-3 -12.9004 -11.1006 -12.9004 -26.7998 -14.3008c-14.1006 -1.39941 -48.7002 -4.09961 -54.9004 10.8008c-1.09961 -28.7002 -35.0996 -10 -45.0996 7
c-3.2002 5.69922 -5.40039 11.3994 -7 17.5996c-7.80078 -0.799805 -15.7002 -1.59961 -23.5 -2.7002zM114.8 -13.7002c0.5 2.5 0.799805 5.2002 0.799805 8.2002c-5.69922 23.2002 -18.5996 49.7002 -33.5 54c-22.3994 6.7002 -68.8994 -23.5 -66.1992 -54.5996
c12.6992 -19.5 40 -35.7002 59.1992 -36.5c17.8008 -0.800781 35.9004 11.0996 39.7002 28.8994zM106.1 52.2998c9 -16 15.5 -33.2998 16.7002 -51.8994c33.5 19.3994 69.1006 35.6992 105.9 47c-38.7002 20.5 -68.1006 47.7998 -97.2998 77
c-2.10059 -1.30078 -5.10059 -2.40039 -7.80078 -3.5c-1.59961 -4.90039 8.7002 -5.30078 5.40039 -12.4004c-2.09961 -4.09961 -8.59961 -7.59961 -15.0996 -9.2002c-2.10059 -2.7002 -5.10059 -4.89941 -7.80078 -6.5h-0.299805
c-0.200195 -13.5 -0.200195 -27 0.299805 -40.5zM443.7 -12.2998c-36.7998 21.2998 -74.1006 41.2998 -115.601 53c-13.7998 -6.2002 -27.8994 -11.2998 -42.1992 -15.4004c-2.10059 -0.799805 -2.10059 -0.799805 -4.30078 0
c-11.8994 3.7002 -23.2998 8.10059 -34.8994 13.2002c-40.2002 -11.5996 -77.2998 -29.2002 -112.4 -50.7998h-0.299805v-0.299805c0.299805 0 0.299805 0 0.299805 0.299805c103.2 -4.10059 206.4 -3.5 309.4 0zM454.2 0.0996094c1 14.7002 7.2002 35.8008 16.5 51.7002
l-0.299805 -0.299805c0.5 13.7002 0.799805 27.5 0.799805 41.2998c-3 1.7002 -5.7002 4.10059 -8.10059 6.7998c-6.5 1.30078 -12.8994 5.10059 -15.0996 8.90039c-1.90039 4.09961 1.2998 7.59961 5.90039 10.2998c-0.200195 0.5 -0.5 1.60059 -0.5 2.40039
c-3 0.799805 -5.40039 1.7998 -7.60059 3.2002c-31.5996 -29.4004 -65.3994 -56.7002 -103.5 -76.7002c38.9004 -11.7002 76 -28.1006 111.9 -47.6006zM560.1 -6.09961c3 31.0996 -43.5 61.3994 -66.1992 54.5c-14.6006 -4.30078 -27.8008 -30.8008 -33.5 -54
c0 -23.8008 21.1992 -37.9004 40.5 -37c19.1992 0.799805 46.5 17 59.1992 36.5zM372.9 372.8c-35.7002 39.2002 -81.4004 47.7998 -126 23.5c25.1992 56.2002 122.199 48.6006 126 -23.5zM74.7998 40.9004c14.9004 1.89941 24.6006 -19.2002 18.6006 -30.8008
c-4.80078 -9.69922 -23.7002 -24.0996 -35.9004 -27.2998c-16.5 -4.59961 -32.2002 3.2998 -32.2002 14.9004c0 17.7998 33.7998 41.5996 49.5 43.2002zM290.7 217.1c-30.9004 0 -57.6006 25.7002 -50.2998 59.8008c13.1992 -20.7002 46.5 -12 46.5 11.2998
c0 10 -7 18.5996 -16.5 21.5996c31.6992 13.7998 72.1992 -8.2002 72.1992 -44.2998c0 -26.7998 -23.2998 -48.4004 -51.8994 -48.4004zM68 -26.0996c-0.5 8.39941 20.2998 23.5 29.2002 25.0996c8.59961 1.59961 12.7002 -11.4004 9.7002 -18.4004
c-2.7002 -5.69922 -10.5 -13.5 -17.3008 -16.1992c-9.39941 -3.2002 -21.0996 3 -21.5996 9.5zM501.2 40.9004c15.7002 -1.60059 49.5 -25.4004 49.5 -43.2002c0 -11.7002 -15.7002 -19.5 -32.2002 -14.9004c-12.0996 3.2002 -31.2998 17.6006 -36.2002 27.2998
c-5.7002 11.6006 4 32.7002 18.9004 30.8008zM478.8 -1c8.90039 -1.59961 30 -16.7002 29.1006 -25.0996c-0.200195 -6.5 -12.1006 -12.7002 -21.3008 -9.5c-7 2.69922 -14.8994 10.5 -17.2998 16.1992c-2.89941 7.10059 1.10059 20 9.5 18.4004z" />
    <glyph glyph-name="opencart" unicode="&#xf23d;" horiz-adv-x="640" 
d="M423.3 7.2998c0 -25.2998 -20.2998 -45.5996 -45.5996 -45.5996s-45.7998 20.2998 -45.7998 45.5996s20.5996 45.7998 45.7998 45.7998c25.3994 0 45.5996 -20.5 45.5996 -45.7998zM169.4 53.0996c25.2998 0 45.7998 -20.5 45.7998 -45.7998
s-20.5 -45.5996 -45.7998 -45.5996c-25.3008 0 -45.6006 20.3994 -45.6006 45.5996s20.2998 45.7998 45.6006 45.7998zM461.1 323.1c302.2 0 169.5 -67.1992 -17.1992 -233.899c59.1992 102.8 262.5 193.899 -70.8008 188.899c-319.8 -4.69922 -338.699 92.5 -373.1 144.2
c81.9004 -86.3994 158.9 -99.2002 461.1 -99.2002z" />
    <glyph glyph-name="expeditedssl" unicode="&#xf23e;" horiz-adv-x="496" 
d="M248 404.6c117.4 0 212.6 -95.1992 212.6 -212.6s-95.1992 -212.6 -212.6 -212.6s-212.6 95.1992 -212.6 212.6s95.1992 212.6 212.6 212.6zM150.6 271.7h-0.199219v-26.6006c0 -5 3.89941 -8.89941 8.89941 -8.89941h17.7002c5 0 8.90039 3.89941 8.90039 8.89941
v26.6006c0 82.0996 124 82.0996 124 0v-26.6006c0 -5 3.89941 -8.89941 8.89941 -8.89941h17.7002c5 0 8.90039 3.89941 8.90039 8.89941v26.6006c0 53.7002 -43.7002 97.3994 -97.4004 97.3994s-97.4004 -43.6992 -97.4004 -97.3994zM389.7 68v141.7
c0 9.7002 -8 17.7002 -17.7002 17.7002h-248c-9.7002 0 -17.7002 -8 -17.7002 -17.7002v-141.7c0 -9.7002 8 -17.7002 17.7002 -17.7002h248c9.7002 0 17.7002 8 17.7002 17.7002zM141.7 205.3v-132.899c0 -2.5 -1.90039 -4.40039 -4.40039 -4.40039h-8.89941
c-2.5 0 -4.40039 1.90039 -4.40039 4.40039v132.899c0 2.5 1.90039 4.40039 4.40039 4.40039h8.89941c2.5 0 4.40039 -1.90039 4.40039 -4.40039zM283.4 156.6c0 -13 -7.2002 -24.3994 -17.7002 -30.3994v-31.6006c0 -5 -3.90039 -8.89941 -8.90039 -8.89941h-17.7002
c-5 0 -8.89941 3.89941 -8.89941 8.89941v31.6006c-10.5 6.09961 -17.7002 17.3994 -17.7002 30.3994c0 19.7002 15.7998 35.4004 35.4004 35.4004c19.5996 0 35.5 -15.7998 35.5 -35.4004zM248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248
s111 248 248 248zM248 -38.2998c127 0 230.3 103.3 230.3 230.3s-103.3 230.3 -230.3 230.3s-230.3 -103.3 -230.3 -230.3s103.3 -230.3 230.3 -230.3z" />
    <glyph glyph-name="cc-jcb" unicode="&#xf24b;" horiz-adv-x="576" 
d="M431.5 203.7v32.2998c41.2002 0 38.5 -0.200195 38.5 -0.200195c7.2998 -1.2998 13.2998 -7.2998 13.2998 -16c0 -8.7998 -6 -14.5 -13.2998 -15.7998c-1.2002 -0.400391 -3.2998 -0.299805 -38.5 -0.299805zM474.3 183.5c7.5 -1.5 13.5 -8.2998 13.5 -17
c0 -9 -6 -15.5 -13.5 -17c-2.7998 -0.700195 -3.2002 -0.5 -42.7998 -0.5v35c39.5 0 40 0.200195 42.7998 -0.5zM576 368v-352c0 -26.5 -21.5 -48 -48 -48h-480c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h480c26.5 0 48 -21.5 48 -48zM182 255.7h-57
c0 -67.1006 10.7002 -109.7 -35.7998 -109.7c-19.5 0 -38.7998 5.7002 -57.2002 14.7998v-28c30 -8.2998 68 -8.2998 68 -8.2998c97.9004 0 82 47.7002 82 131.2zM360.5 251.2c-63.4004 16 -165 14.8994 -165 -59.2998c0 -77.1006 108.2 -73.6006 165 -59.2002v28.2998
c-47.5996 -24.7002 -107.5 -22 -107.5 31s59.7998 55.5996 107.5 31.2002v28zM544 161.5c0 18.5 -16.5 30.5 -38 32v0.799805c19.5 2.7002 30.2998 15.5 30.2998 30.2002c0 19 -15.7002 30 -37 31c0 0 6.2998 0.299805 -120.3 0.299805v-127.5h122.7
c24.2998 -0.0996094 42.2998 12.9004 42.2998 33.2002z" />
    <glyph glyph-name="cc-diners-club" unicode="&#xf24c;" horiz-adv-x="576" 
d="M239.7 368.1c97.2002 0 175.8 -78.5996 175.8 -175.8c0 -96.8994 -78.5996 -175.8 -175.8 -175.8c-96.9004 0 -175.8 78.9004 -175.8 175.8c0 97.2002 78.8994 175.8 175.8 175.8zM199.8 88.5v207.9c-41.7002 -16.2002 -71.3994 -56.7002 -71.3994 -104.101
c0 -47.3994 29.6992 -87.8994 71.3994 -103.8zM279.6 88.2002c41.7002 16.2002 71.4004 56.7002 71.4004 104.1c0 47.4004 -29.7002 87.9004 -71.4004 104.101v-208.2zM528 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-480c-26.5 0 -48 21.5 -48 48v352
c0 26.5 21.5 48 48 48h480zM329.7 0c105 0 200.7 85.5 200.7 190.2c0 114.6 -95.7002 193.8 -200.7 193.8h-90.2998c-106.2 0 -193.801 -79.2002 -193.801 -193.8c0 -104.7 87.6006 -190.2 193.801 -190.2h90.2998z" />
    <glyph glyph-name="creative-commons" unicode="&#xf25e;" horiz-adv-x="496" 
d="M245.83 233.13l-33.2197 -17.2803c-9.43066 19.5801 -25.2402 19.9307 -27.46 19.9307c-22.1309 0 -33.2207 -14.6104 -33.2207 -43.8398c0 -23.5703 9.20996 -43.8408 33.2207 -43.8408c14.4697 0 24.6494 7.09082 30.5693 21.2607l30.5498 -15.5
c-6.16992 -11.5107 -25.6895 -38.9805 -65.0996 -38.9805c-22.5996 0 -73.96 10.3203 -73.96 77.0498c0 58.6904 43 77.0605 72.6299 77.0605c30.7197 0.00976562 52.7002 -11.9502 65.9902 -35.8604zM388.88 233.13l-32.7803 -17.2803
c-9.5 19.7705 -25.7197 19.9307 -27.8994 19.9307c-22.1406 0 -33.2197 -14.6104 -33.2197 -43.8398c0 -23.5508 9.22949 -43.8408 33.2197 -43.8408c14.4502 0 24.6494 7.09082 30.54 21.2607l31 -15.5c-2.10059 -3.75 -21.3906 -38.9805 -65.0898 -38.9805
c-22.6904 0 -73.96 9.87012 -73.96 77.0498c0 58.6699 42.9697 77.0605 72.6299 77.0605c30.71 0.00976562 52.5801 -11.9502 65.5596 -35.8604zM247.56 439.95c141.82 0 248.44 -110.13 248.44 -248c0 -147.13 -118.51 -248 -248.44 -248
c-133.96 0 -247.56 109.51 -247.56 248c0 132.939 104.74 248 247.56 248zM248.43 -10.8604c103.16 0 202.83 81.1299 202.84 202.82c0 113.8 -90.2891 203.26 -202.819 203.26c-118.29 0 -203.72 -97.8496 -203.72 -203.27c0 -109.771 91.1592 -202.811 203.699 -202.811z
" />
    <glyph glyph-name="gg" unicode="&#xf260;" horiz-adv-x="512" 
d="M179.2 217.6l102.399 -102.399l-102.399 -102.4l-179.2 179.2l179.2 179.2l44.7998 -44.7998l-25.5996 -25.6006l-19.2002 19.2002l-128 -128l128 -128l51.5 51.5l-77.1006 76.5zM332.8 371.2l179.2 -179.2l-179.2 -179.2l-44.7998 44.7998l25.5996 25.6006
l19.2002 -19.2002l128 128l-128 128l-51.5 -51.5l77.1006 -76.5l-25.6006 -25.5996l-102.399 102.399z" />
    <glyph glyph-name="gg-circle" unicode="&#xf261;" horiz-adv-x="512" 
d="M257 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM207.5 65.2002l75 75.2002l-77.2002 77.1992l-24.3994 -24.3994l53.0996 -52.9004l-26.5996 -26.5996l-77.2002 77.2002l77.2002 77.1992l11.0996 -11.0996l24.2002 24.2002
l-35.2002 35.3994l-125.7 -125.699zM306.5 67.4004l125.7 125.6l-125.7 125.7l-75 -75l77.2002 -77.2002l24.3994 24.4004l-53.0996 52.8994l26.5 26.5l77.2002 -77.2002l-77.2002 -77.1992l-11.0996 11.0996l-24.1006 -24.4004z" />
    <glyph glyph-name="tripadvisor" unicode="&#xf262;" horiz-adv-x="576" 
d="M528.91 269.18c28.8652 -26.2666 46.9404 -64.1113 46.9404 -106.176c0 -0.0615234 -0.000976562 -0.12207 -0.000976562 -0.183594h0.0302734c-0.00195312 -79.4414 -64.5479 -143.928 -143.989 -143.928c-37.7363 0 -72.0996 14.5527 -97.7803 38.3477
l-46.1104 -50.1699l-46.1396 50.1992c-25.6064 -23.4443 -59.8145 -37.7793 -97.2334 -37.7793c-79.4268 0 -143.911 64.4844 -143.911 143.911c0 41.8076 17.8662 79.4756 46.374 105.778l-47.0898 51.2402h104.66c52.2266 35.5498 115.938 56.3369 183.822 56.3369
s130.95 -20.7871 183.178 -56.3369h104.34zM144.06 65.4297c53.751 0 97.3906 43.6396 97.3906 97.3906s-43.6396 97.3896 -97.3906 97.3896s-97.3896 -43.6387 -97.3896 -97.3896s43.6387 -97.3906 97.3896 -97.3906zM288 165.63c0 64.0801 46.6104 119.07 108.08 142.59
c-33.2285 13.8467 -70.0527 21.4941 -108.272 21.4941c-38.2207 0 -74.6689 -7.64746 -107.897 -21.4941c61.4697 -23.5098 108.09 -78.5 108.09 -142.59zM431.88 65.4297c53.7568 0.00292969 97.4004 43.6475 97.4004 97.4053c0 53.7598 -43.6455 97.4053 -97.4053 97.4053
c-53.7588 0 -97.4053 -43.6455 -97.4053 -97.4053c0 -53.7578 43.6436 -97.4023 97.4004 -97.4053h0.00976562zM144.06 213.88c0.0175781 0 0.0332031 -0.000976562 0.0507812 -0.000976562c28.1299 0 50.9717 -22.8242 51 -50.9492v-0.109375
c0 -28.1807 -22.8799 -51.0605 -51.0605 -51.0605s-51.0596 22.8799 -51.0596 51.0605s22.8789 51.0596 51.0596 51.0596h0.00976562zM431.88 213.88c28.1807 0 51.0605 -22.8789 51.0605 -51.0596s-22.8799 -51.0605 -51.0605 -51.0605s-51.0596 22.8799 -51.0596 51.0605
s22.8789 51.0596 51.0596 51.0596z" />
    <glyph glyph-name="odnoklassniki" unicode="&#xf263;" horiz-adv-x="320" 
d="M275.1 114c-27.3994 -17.4004 -65.0996 -24.2998 -90 -26.9004l20.9004 -20.5996l76.2998 -76.2998c27.9004 -28.6006 -17.5 -73.2998 -45.7002 -45.7002c-19.0996 19.4004 -47.0996 47.4004 -76.2998 76.5996l-76.2998 -76.5
c-28.2002 -27.5 -73.5996 17.6006 -45.4004 45.7002c19.4004 19.4004 47.1006 47.4004 76.3008 76.2998l20.5996 20.6006c-24.5996 2.59961 -62.9004 9.09961 -90.5996 26.8994c-32.6006 21 -46.9004 33.3008 -34.3008 59c7.40039 14.6006 27.7002 26.9004 54.6006 5.7002
c0 0 36.2998 -28.8994 94.8994 -28.8994c58.6006 0 94.9004 28.8994 94.9004 28.8994c26.9004 21.1006 47.0996 8.90039 54.5996 -5.7002c12.4004 -25.6992 -1.89941 -38 -34.5 -59.0996zM30.2998 318.3c0 71.7002 58.2998 129.7 129.7 129.7s129.7 -58 129.7 -129.7
c0 -71.3994 -58.2998 -129.399 -129.7 -129.399s-129.7 58 -129.7 129.399zM96.2998 318.3c0 -35.0996 28.6006 -63.7002 63.7002 -63.7002s63.7002 28.6006 63.7002 63.7002c0 35.4004 -28.6006 64 -63.7002 64s-63.7002 -28.5996 -63.7002 -64z" />
    <glyph glyph-name="odnoklassniki-square" unicode="&#xf264;" 
d="M184.2 270.9c0 22.0996 17.8994 40 39.7998 40s39.7998 -17.9004 39.7998 -40c0 -22 -17.8994 -39.8008 -39.7998 -39.8008s-39.7998 17.9004 -39.7998 39.8008zM448 368v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h352
c26.5 0 48 -21.5 48 -48zM142.9 270.9c0 -44.6006 36.3994 -80.9004 81.0996 -80.9004s81.0996 36.2002 81.0996 80.9004c0 44.7998 -36.3994 81.0996 -81.0996 81.0996s-81.0996 -36.2002 -81.0996 -81.0996zM317.4 180.2
c-4.60059 9.09961 -17.3008 16.7998 -34.1006 3.59961c0 0 -22.7002 -18 -59.2998 -18s-59.2998 18 -59.2998 18c-16.7998 13.2002 -29.5 5.5 -34.1006 -3.59961c-7.89941 -16.1006 1.10059 -23.7002 21.4004 -37c17.2998 -11.1006 41.2002 -15.2002 56.5996 -16.7998
l-12.8994 -12.9004c-18.2002 -18 -35.5 -35.5 -47.7002 -47.7002c-17.5996 -17.5996 10.7002 -45.7998 28.4004 -28.5996l47.6992 47.8994c18.2002 -18.1992 35.7002 -35.6992 47.7002 -47.8994c17.6006 -17.2002 46 10.7002 28.6006 28.5996l-47.7002 47.7002l-13 12.9004
c15.5 1.59961 39.0996 5.89941 56.2002 16.7998c20.3994 13.2998 29.2998 21 21.5 37z" />
    <glyph glyph-name="get-pocket" unicode="&#xf265;" 
d="M407.6 384c22.7002 0 40.4004 -18.2002 40.4004 -40.5996v-135.2c0 -124.7 -99.7998 -224.2 -223.8 -224.2c-124.5 0 -224.2 99.5 -224.2 224.2v135.2c0 22.0996 18.5 40.5996 40.5996 40.5996h367zM245.6 115.5c111.9 107.5 114.801 105.4 114.801 123.2
c0 16.8994 -13.8008 30.7002 -30.7002 30.7002c-16.9004 0 -14.9004 -2.40039 -105.5 -89.3008c-89.1006 85.5 -88.2002 89.3008 -105.2 89.3008c-16.9004 0 -30.7002 -13.8008 -30.7002 -30.7002c0 -18.1006 1.2002 -14.2998 114.9 -123.2
c11 -11.0996 30 -11.7998 42.3994 0z" />
    <glyph glyph-name="wikipedia-w" unicode="&#xf266;" horiz-adv-x="640" 
d="M640 396.8l-0.299805 -12.2002c-28.1006 -0.799805 -45 -15.7998 -55.7998 -40.2998c-25 -57.7998 -103.301 -240 -155.301 -358.6h-13.5996l-81.9004 193.1c-32.5 -63.5996 -68.2998 -130 -99.1992 -193.1c-0.300781 -0.299805 -15 0 -15 0.299805
c-46.9004 109.7 -96.1006 218.6 -143.101 328.6c-11.3994 26.7002 -49.3994 70 -75.5996 69.7002c0 3.10059 -0.299805 10 -0.299805 14.2002h161.899v-13.9004c-19.2002 -1.09961 -52.7998 -13.2998 -43.2998 -34.1992c21.9004 -49.7002 103.6 -240.301 125.6 -288.601
c15 29.7002 57.8008 109.2 75.3008 142.8c-13.9004 28.3008 -58.6006 133.9 -72.8008 160c-9.69922 17.8008 -36.0996 19.4004 -55.7998 19.7002v13.9004l142.5 -0.299805v-13.1006c-19.3994 -0.599609 -38.0996 -7.7998 -29.3994 -26.0996
c18.8994 -40 30.5996 -68.1006 48.0996 -104.7c5.59961 10.7998 34.7002 69.4004 48.0996 100.8c8.90039 20.6006 -3.89941 28.6006 -38.5996 29.4004c0.299805 3.59961 0 10.2998 0.299805 13.5996c44.4004 0.299805 111.101 0.299805 123.101 0.600586v-13.6006
c-22.5 -0.799805 -45.8008 -12.7998 -58.1006 -31.7002l-59.2002 -122.8c6.40039 -16.0996 63.3008 -142.8 69.2002 -156.7l122.4 282.601c-8.60059 23.0996 -36.4004 28.0996 -47.2002 28.2998v13.9004l127.8 -1.10059z" />
    <glyph glyph-name="safari" unicode="&#xf267;" horiz-adv-x="512" 
d="M274.69 173.31l-108.69 -71.3096l71.3096 108.69zM256 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM411.85 265.21c-2.88672 -1.20801 -4.9082 -4.0625 -4.9082 -7.38574c0 -1.08496 0.21582 -2.12012 0.608398 -3.06445v0
c1.20215 -2.90039 4.06348 -4.93457 7.39648 -4.93457c1.08105 0 2.1123 0.214844 3.05371 0.604492l14.75 6.11035c2.90234 1.20117 4.93848 4.06348 4.93848 7.39746c0 1.08496 -0.216797 2.11914 -0.608398 3.0625v0c-1.2002 2.90527 -4.06348 4.94336 -7.39941 4.94336
c-1.08008 0 -2.11035 -0.214844 -3.05078 -0.603516zM314.43 354c-0.396484 -0.949219 -0.625 -1.99219 -0.625 -3.08496c0 -3.33398 2.04395 -6.19336 4.94531 -7.39551v0c0.941406 -0.388672 1.97461 -0.613281 3.05566 -0.613281
c3.33301 0 6.19238 2.04297 7.39453 4.94336l6.12988 14.7803c0.389648 0.941406 0.613281 1.97461 0.613281 3.05566c0 3.33301 -2.04297 6.19238 -4.94336 7.39453v0c-0.944336 0.392578 -1.98047 0.618164 -3.06641 0.618164
c-3.32324 0 -6.17578 -2.03125 -7.38379 -4.91797zM256 388c-4.41504 0 -8 -3.58496 -8 -8v-16c0 -4.41504 3.58496 -8 8 -8v0c4.41504 0 8 3.58496 8 8v16c0 4.41504 -3.58496 8 -8 8v0zM181 373.08c-2.89941 -1.20215 -4.93262 -4.0625 -4.93262 -7.39551
c0 -1.06934 0.210938 -2.09082 0.592773 -3.02441l6.12988 -14.7803c1.16504 -2.97754 4.05762 -5.07812 7.44531 -5.07812c4.41602 0 8 3.58496 8 8c0 1.13672 -0.237305 2.21875 -0.665039 3.19824l-6.11035 14.75c-1.20117 2.90234 -4.06348 4.93848 -7.39746 4.93848
c-1.08496 0 -2.11914 -0.216797 -3.0625 -0.608398zM117.42 330.59c-1.44727 -1.44824 -2.35254 -3.44922 -2.35254 -5.65625c0 -2.19141 0.883789 -4.17773 2.3125 -5.62402l11.3105 -11.3096c1.44727 -1.44727 3.44922 -2.34277 5.65527 -2.34277
c2.20703 0 4.20605 0.895508 5.6543 2.34277v0c1.43848 1.44629 2.32715 3.44238 2.32715 5.6416c0 2.19824 -0.888672 4.19141 -2.32715 5.63867l-11.2695 11.3096c-1.44824 1.44727 -3.4502 2.34277 -5.65625 2.34277c-2.20703 0 -4.20605 -0.895508 -5.6543 -2.34277v0z
M60 192c0 -4.41504 3.58496 -8 8 -8h16c4.41504 0 8 3.58496 8 8v0c0 4.41504 -3.58496 8 -8 8h-16c-4.41504 0 -8 -3.58496 -8 -8v0zM100.15 118.79c2.88672 1.20801 4.9082 4.0625 4.9082 7.38574c0 1.08496 -0.21582 2.12012 -0.608398 3.06445v0
c-1.20215 2.90039 -4.06348 4.93457 -7.39648 4.93457c-1.08105 0 -2.1123 -0.214844 -3.05371 -0.604492l-14.75 -6.11035c-2.90234 -1.20117 -4.93848 -4.06348 -4.93848 -7.39746c0 -1.08496 0.216797 -2.11914 0.608398 -3.0625v0
c1.2002 -2.90527 4.06348 -4.94336 7.39941 -4.94336c1.08008 0 2.11035 0.214844 3.05078 0.603516zM104.48 254.79c0.386719 0.939453 0.609375 1.93945 0.609375 3.0166c0 3.33203 -2.04102 6.19043 -4.93945 7.39355l-14.7803 6.12988
c-0.941406 0.389648 -1.97461 0.613281 -3.05566 0.613281c-3.33301 0 -6.19238 -2.04297 -7.39453 -4.94336v0c-0.392578 -0.944336 -0.618164 -1.98047 -0.618164 -3.06641c0 -3.32324 2.03125 -6.17578 4.91797 -7.38379l14.7803 -6.12012
c0.945312 -0.393555 1.9834 -0.619141 3.07129 -0.619141c3.34668 0 6.21582 2.05957 7.40918 4.97949v0zM197.57 30c0.427734 0.979492 0.672852 2.07129 0.672852 3.20801c0 4.41602 -3.58496 8 -8 8c-3.38867 0 -6.28809 -2.11035 -7.45312 -5.08789l-6.12988 -14.7803
c-0.389648 -0.941406 -0.611328 -1.9834 -0.611328 -3.06543c0 -4.41699 3.58594 -8.00293 8.00293 -8.00293c3.33496 0 6.19727 2.04492 7.39844 4.94824zM264 4v16c0 4.41504 -3.58496 8 -8 8v0c-4.41504 0 -8 -3.58496 -8 -8v-16c0 -4.41504 3.58496 -8 8 -8v0
c4.41504 0 8 3.58496 8 8zM331 10.9199c2.89941 1.20215 4.93262 4.0625 4.93262 7.39551c0 1.06934 -0.210938 2.09082 -0.592773 3.02441l-6.12988 14.7803c-1.20215 2.90039 -4.06348 4.93457 -7.39648 4.93457c-1.08105 0 -2.1123 -0.214844 -3.05371 -0.604492v0
c-2.90039 -1.20215 -4.93457 -4.06348 -4.93457 -7.39648c0 -1.08105 0.214844 -2.1123 0.604492 -3.05371l6.11035 -14.75c1.20117 -2.90234 4.06348 -4.93848 7.39746 -4.93848c1.08496 0 2.11914 0.216797 3.0625 0.608398v0zM394.58 53.4102
c1.44727 1.44824 2.35254 3.44922 2.35254 5.65625c0 2.19141 -0.883789 4.17773 -2.3125 5.62402l-11.3105 11.3096c-1.44727 1.44727 -3.44922 2.34277 -5.65527 2.34277c-2.20703 0 -4.20605 -0.895508 -5.6543 -2.34277v0
c-1.43848 -1.44629 -2.32715 -3.44238 -2.32715 -5.6416c0 -2.19824 0.888672 -4.19141 2.32715 -5.63867l11.2695 -11.3096c1.44824 -1.44727 3.4502 -2.34277 5.65625 -2.34277c2.20703 0 4.20605 0.895508 5.6543 2.34277v0zM286.25 161.75l115.41 175.91
l-175.91 -115.41l-115.41 -175.91zM437.08 117c0.392578 0.944336 0.618164 1.98047 0.618164 3.06641c0 3.32324 -2.03125 6.17578 -4.91797 7.38379l-14.7803 6.12012c-0.949219 0.396484 -1.99219 0.625 -3.08496 0.625c-3.33398 0 -6.19336 -2.04395 -7.39551 -4.94531
v0c-0.388672 -0.941406 -0.613281 -1.97461 -0.613281 -3.05566c0 -3.33301 2.04297 -6.19238 4.94336 -7.39453l14.7803 -6.12988c0.941406 -0.389648 1.97461 -0.613281 3.05566 -0.613281c3.33301 0 6.19238 2.04297 7.39453 4.94336v0zM444 184c4.41504 0 8 3.58496 8 8
v0c0 4.41504 -3.58496 8 -8 8h-16c-4.41504 0 -8 -3.58496 -8 -8v0c0 -4.41504 3.58496 -8 8 -8h16z" />
    <glyph glyph-name="chrome" unicode="&#xf268;" horiz-adv-x="496" 
d="M131.5 230.5l-76.4004 117.4c47.6006 59.1992 119 91.7998 192 92.0996c42.3008 0.299805 85.5 -10.5 124.801 -33.2002c43.3994 -25.2002 76.3994 -61.3994 97.3994 -103l-205.3 10.7998c-58.0996 3.40039 -113.4 -29.2998 -132.5 -84.0996zM164.4 192
c0 46.2998 37.3994 83.5996 83.5996 83.5996s83.5996 -37.3994 83.5996 -83.5996s-37.3994 -83.5996 -83.5996 -83.5996s-83.5996 37.3994 -83.5996 83.5996zM479.3 281.2c43.5 -111.9 0 -241.9 -107.399 -303.9c-43.4004 -25.2002 -91.3008 -35.3994 -137.801 -32.8994
l112.101 172.399c31.8994 49 31.2998 112.9 -6.60059 157.2zM133.7 144.4c26.2998 -51.7002 81.8994 -83.3008 139.5 -72.5l-63.7002 -124.801c-118.7 18.2002 -209.5 120.9 -209.5 244.9c0 50.0996 14.9004 96.9004 40.4004 135.9z" />
    <glyph glyph-name="firefox" unicode="&#xf269;" horiz-adv-x="512" 
d="M503.52 206.52c0.240234 -4.43945 0.360352 -9 0.480469 -13.5195c0 -137.19 -111.23 -248.42 -248.32 -248.42c-122.779 0 -224.859 89.2695 -244.779 206.38c-0.360352 3.24023 -0.720703 6.36035 -1.08008 9.59961c-4.91992 42.6006 0.479492 87.3604 16.0801 124.79
c10.7998 25.8809 32.6396 54 49.7998 62.8809c-16.2002 -31.8008 -24.1201 -63 -25.7998 -83.8809c11.2793 37.2002 32.6299 68.3604 62.5098 90.3604c51.2402 37.6699 120.229 39.3604 147.71 15.3604c-51 -17.5107 -106.55 -87.96 -94.3105 -170.511
c2.00586 -13.791 6.21289 -27.1582 12.1201 -39.2393c-9.51953 25.0801 -10.3594 60.3594 5 83.2793c17.1602 25.5508 41.6299 30.9502 54.71 28.1904c-5.15918 1.08008 -16.5596 -20.75 -18.2393 -24.5898c-3.99609 -9.09863 -6.25098 -19.1865 -6.25098 -29.7539
c0 -0.416016 0.00390625 -0.832031 0.0107422 -1.24609c0.392578 -23.1182 10.1045 -44.0088 25.5596 -59c47.6504 -46.4307 124.561 -28.1602 159 24.8398c23.6406 36.4795 26.5205 98.3896 -3.83984 147.59c-7.62891 12.0801 -16.5693 22.9639 -26.8799 32.7598
c-47.6602 45.4707 -116.06 64.6699 -180.24 52.9902c-0.240234 0 -0.599609 -0.120117 -0.839844 -0.120117c-1.7998 -0.359375 -3.47949 -0.719727 -5.16016 -1.08008c-0.359375 -0.120117 -0.839844 -0.120117 -1.2002 -0.239258l-5.87988 -1.44043
c-14.5195 -3.55957 -34.7998 -10.7998 -49.4395 -19.5596c-0.09375 -0.0136719 -0.176758 -0.0566406 -0.240234 -0.120117l0.120117 0.120117c0 -0.0664062 -0.0537109 -0.120117 -0.120117 -0.120117l-0.120117 -0.120117l0.120117 0.120117h-0.129883l0.479492 0.479492
c0.480469 0.480469 1.32031 1.16016 2.40039 2.16016c19.6797 17.7598 49.3203 31.9199 82.9102 39c14.7383 3.09766 29.8691 4.81543 45.4795 5h10.6299c12.9863 -0.311523 25.6123 -1.67188 38 -4c0.960938 -0.120117 1.76074 -0.360352 2.76074 -0.479492h0.120117
c1.7998 -0.360352 3.71973 -0.84082 5.63965 -1.2002c19.2676 -4.375 38.0977 -11.0762 55.4297 -19.5605c2.40039 -1.2002 4.7998 -2.39941 7.2002 -3.71973c8.6748 -4.32129 16.8906 -9.37891 24.5996 -15.1201c4.32031 -3.12012 8.48047 -6.36035 12.4805 -9.83984
c6.50781 -5.19434 12.5332 -10.6973 18.29 -16.7002c8.51074 -8.35645 16.2646 -17.1406 23.5098 -26.6396c0.959961 -1.2002 1.75977 -2.40039 2.75977 -3.71973c0.400391 -0.480469 0.640625 -0.84082 1 -1.32031l1.80078 -2.52051
c0.359375 -0.479492 0.719727 -1.08008 1.08008 -1.55957c0.479492 -0.719727 1.0791 -1.56055 1.55957 -2.28027c0.441406 -0.571289 0.839844 -1.16992 1.2002 -1.7998l1.43945 -2.12988c0.441406 -0.571289 0.84082 -1.16992 1.2002 -1.7998
c0.480469 -0.720703 0.959961 -1.56055 1.32031 -2.16016c0.359375 -0.600586 0.839844 -1.24023 1.2002 -1.91992c0.359375 -0.680664 0.839844 -1.32031 1.19922 -2c0.360352 -0.680664 0.84082 -1.28027 1.2002 -2c0.441406 -0.638672 0.842773 -1.30566 1.2002 -2
c0.360352 -0.720703 0.839844 -1.56055 1.2002 -2.16016c0.359375 -0.599609 0.719727 -1.32031 1.08008 -1.91992c0.359375 -0.839844 0.799805 -1.67969 1.2002 -2.28027c0.399414 -0.599609 0.639648 -1.2002 1 -1.7998
c0.359375 -0.839844 0.839844 -1.56055 1.19922 -2.40039c0.240234 -0.479492 0.480469 -1.08008 0.720703 -1.55957c0.479492 -0.839844 0.839844 -1.63965 1.31934 -2.63965l0.360352 -0.720703c1.75977 -3.71973 3.44043 -7.55957 5 -11.3994
c0 -0.120117 0.120117 -0.240234 0.120117 -0.360352c0.439453 -1.2002 0.959961 -2.28027 1.43945 -3.48047c0.120117 -0.239258 0.240234 -0.599609 0.360352 -0.839844c0.480469 -1.08008 0.839844 -2.2793 1.32031 -3.35938
c0.138672 -0.321289 0.261719 -0.660156 0.359375 -1c0.360352 -1.08008 0.84082 -2.28027 1.2002 -3.36035l0.360352 -1.08008c0.479492 -1.2002 0.839844 -2.28027 1.2002 -3.47949c0.119141 -0.400391 0.239258 -0.640625 0.359375 -1
c0.360352 -1.08008 0.720703 -2.28027 1.08008 -3.48047c0.120117 -0.240234 0.120117 -0.599609 0.240234 -0.839844c0.360352 -1.2002 0.719727 -2.52051 1.08008 -3.71973c0.120117 -0.120117 0.120117 -0.360352 0.240234 -0.600586l1.08008 -4
c0.119141 -0.120117 0.119141 -0.120117 0.119141 -0.240234c3.54297 -13.2549 6.04102 -27.1152 7.32031 -41.1494v-0.120117l0.360352 -4.67969v-0.120117c0 -1.56055 0.120117 -3.12012 0.239258 -4.68066z" />
    <glyph glyph-name="opera" unicode="&#xf26a;" horiz-adv-x="496" 
d="M313.9 415.3c-170.2 0 -252.601 -223.8 -147.5 -355.1c36.5 -45.4004 88.5996 -75.6006 147.5 -75.6006c36.2998 0 70.2998 11.1006 99.3994 30.4004c-43.7998 -39.2002 -101.899 -63 -165.3 -63c-3.90039 0 -8 0 -11.9004 0.299805
c-131.5 6.10059 -236.1 114.601 -236.1 247.7c0 137 111 248 248 248h0.799805c63.1006 -0.299805 120.7 -24.0996 164.4 -63.0996c-29 19.3994 -63.1006 30.3994 -99.2998 30.3994zM415.7 17.5996c-40.9004 -24.6992 -90.7002 -23.5996 -132 5.80078
c56.2002 20.5 97.7002 91.5996 97.7002 176.6c0 84.7002 -41.2002 155.8 -97.4004 176.6c41.7998 29.2002 91.2002 30.3008 132.9 5c105.899 -98.6992 105.5 -265.699 -1.2002 -364z" />
    <glyph glyph-name="internet-explorer" unicode="&#xf26b;" horiz-adv-x="512" 
d="M483.049 288.294c25.1963 -45.4473 33.2578 -97.5811 26.8516 -141.162h-328.792c0 -100.432 144.31 -136.029 196.818 -47.4355h120.833c-32.5645 -91.7285 -119.689 -146.022 -216.813 -146.022c-35.1367 0 -70.2725 0.143555 -101.695 15.5732
c-87.3975 -44.4941 -180.251 -56.5693 -180.251 42.0059c0 45.8066 23.2461 107.096 43.9922 145.022c35.1357 63.7227 81.4121 124.875 135.687 173.168c-43.7061 -18.8604 -91.125 -66.2959 -121.977 -101.158c25.877 112.787 129.466 193.638 237.098 186.457
c130.032 59.7939 209.673 34.1445 209.673 -38.5771c0 -27.4326 -10.5684 -63.2959 -21.4238 -87.8711zM64.5586 101.123c-73.001 -152.4 11.5254 -172.244 100.267 -123.304c-46.5635 27.4326 -82.5557 72.1533 -100.267 123.304zM180.536 209.996h207.961
c-2 55.1514 -50.5635 94.8711 -103.981 94.8711c-53.7041 0 -101.979 -39.7197 -103.979 -94.8711zM365.072 397.596c46.2764 -18.002 85.9824 -57.2939 112.263 -99.5859c7.1416 18.8604 14.5693 47.8643 14.5693 67.8672c0 32.0049 -22.8525 53.7217 -54.2744 53.7217
c-23.9951 0 -51.1328 -11.7158 -72.5576 -22.0029z" />
    <glyph glyph-name="contao" unicode="&#xf26d;" horiz-adv-x="512" 
d="M45.4004 143c14.3994 -67.0996 26.3994 -129 68.1992 -175h-79.5996c-18.7002 0 -34 15.2002 -34 34v380c0 18.7002 15.2002 34 34 34h57.7002c-13.7998 -12.5996 -26.1006 -27.2002 -36.9004 -43.5996c-45.3994 -70 -27 -146.801 -9.39941 -229.4zM478 416
c18.7998 0 34 -15.2002 34 -34v-380.1c0 -18.8008 -15.2998 -34 -34 -34h-52.0996c38.6992 38.3994 60.5996 92.0996 57.3994 163.6l-137.399 -29.5996c-1.7002 -32.5 -12.9004 -63.8008 -57.4004 -73.2002c-24.9004 -5.2998 -45.4004 0.599609 -58.2998 11.7002
c-15.7998 13.5 -28.4004 31 -49.5 131.199c-21.4004 100.5 -17 121.601 -8.2002 140.301c7.2998 15.2998 23.7002 29.2998 48.2998 34.5996c44.7998 9.40039 67.7002 -14.9004 82.6006 -43.9004l137.1 29.3008c-13.5 34.5996 -31.2998 62.6992 -52.7002 84.0996h90.2002z
" />
    <glyph glyph-name="500px" unicode="&#xf26e;" 
d="M103.3 103.7c-6.5 14.2002 -6.89941 18.2998 7.40039 23.0996c25.5996 8 8 -9.2002 43.2002 -49.2002h0.299805v93.9004c1.2002 50.2002 44 92.2002 97.7002 92.2002c53.8994 0 97.6992 -43.5 97.6992 -96.7998c0 -63.4004 -60.7998 -113.2 -128.5 -93.3008
c-10.5 4.2002 -2.09961 31.7002 8.5 28.6006c53 0 89.4004 10.0996 89.4004 64.3994c0 61 -77.0996 89.6006 -116.9 44.6006c-23.5 -26.4004 -17.5996 -42.1006 -17.5996 -157.601c50.7002 -31 118.3 -22 160.4 20.1006c24.7998 24.7998 38.5 58 38.5 93
c0 35.2002 -13.8008 68.2002 -38.8008 93.2998c-24.7998 24.7998 -57.7998 38.5 -93.2998 38.5s-68.7998 -13.7998 -93.5 -38.5c-0.299805 -0.299805 -16 -16.5 -21.2002 -23.9004l-0.5 -0.599609c-3.2998 -4.7002 -6.2998 -9.09961 -20.0996 -6.09961
c-6.90039 1.69922 -14.2998 5.7998 -14.2998 11.7998v186.8c0 5 3.89941 10.5 10.5 10.5h241.3c8.2998 0 8.2998 -11.5996 8.2998 -15.0996c0 -3.90039 0 -15.1006 -8.2998 -15.1006h-223.2v-132.899h0.299805c104.2 109.8 282.801 36 282.801 -108.9
c0 -178.1 -244.801 -220.3 -310.101 -62.7998zM166.6 364.5c3.80078 18.7998 145.101 50.7998 238.301 -38.2002c8.5 -7.5 -9.5 -22.7998 -14.3008 -22.7998c-6.59961 0 -84.5996 87.9004 -209.399 40.4004c-10 -3.90039 -15.1006 16.3994 -14.6006 20.5996zM393 33.2998
c8.09961 8 27.5996 -12.5996 20.7002 -20.3994c-135.601 -135.601 -357.601 -52.1006 -381.601 121.3c-1.5 10.7002 28.9004 15.5 28.9004 3.2998c33 -165 222 -214.1 332 -104.2zM213.6 141.4c0 3.39941 2.30078 4.69922 20.4004 22.5996l-18.2002 18.2002
c-5.59961 5.59961 7.40039 17.2998 12.4004 17.2998c3.09961 0 2.89941 -0.700195 21.5 -19.5l17.8994 17.9004c6.10059 6.09961 22.5 -8.90039 16.2002 -15.7002l-18.2002 -18.2002l17.3008 -17.2998c7.7998 -7.7998 -5.30078 -18.2002 -10.7002 -18.2002
c-3.2002 0 -2.7002 0.200195 -22.2998 19.5c-19.7002 -19.7002 -18.5 -19.5 -22.3008 -19.5c-2.39941 0 -5.5 1.40039 -8.5 4.40039c-1.19922 1.19922 -5.5 4.5 -5.5 8.5z" />
    <glyph glyph-name="amazon" unicode="&#xf270;" 
d="M257.2 285.3c0 39.2998 5.2002 69.2002 -35.5 69.1006c0 0 -37.9004 0 -54.2002 -49.5l-73.5 6.7998c0 49.2998 46.7002 104.3 134.7 104.3c87.7998 0 112.3 -57 112.3 -82.2998v-147.101c0 -27.5 32.2998 -52.7998 32.2998 -52.7998l-56.7998 -56
c-9.90039 9.2998 -38.7998 36.6006 -45.2998 46.7998c-45.2002 -70.7998 -183.5 -66.2998 -183.5 43.2002c0 102 120.8 115.7 169.5 117.5zM257.2 198.5v40.5996c-33.7002 -1.09961 -84.2002 -10.5996 -84.2002 -57.7998c0 -50.7998 84.2002 -62.7998 84.2002 17.2002z
M393.2 35c-7.7002 -10 -70 -67 -174.5 -67s-184.5 71.5 -209 101c-6.7998 7.7002 1 11.2998 5.5 8.2998c73.2998 -44.5 187.8 -117.8 372.5 -30.2998c7.5 3.7002 13.2998 -2 5.5 -12zM433 32.7998c-6.5 -15.7998 -16 -26.7998 -21.2002 -31
c-5.5 -4.5 -9.5 -2.7002 -6.5 3.7998s19.2998 46.5 12.7002 55c-6.5 8.30078 -37 4.30078 -48 3.2002c-10.7998 -1 -13 -2 -14 0.299805c-2.2998 5.7002 21.7002 15.5 37.5 17.5c15.7002 1.80078 41 0.800781 46 -5.69922c3.7002 -5.10059 0 -27.1006 -6.5 -43.1006z" />
    <glyph glyph-name="houzz" unicode="&#xf27c;" 
d="M275.9 117.3h-104.601v-149.3h-154.3v448h109.5v-104.5l305.1 -85.5996v-257.9h-155.699v149.3z" />
    <glyph glyph-name="vimeo-v" unicode="&#xf27d;" 
d="M447.8 294.4c-2 -43.6006 -32.3994 -103.301 -91.3994 -179.101c-60.9004 -79.2002 -112.4 -118.8 -154.601 -118.8c-26.0996 0 -48.2002 24.0996 -66.2998 72.2998c-35.2002 129.2 -50.2002 204.9 -79.2998 204.9c-3.40039 0 -15.1006 -7.10059 -35.2002 -21.1006
l-21 27.2002c51.5996 45.2998 100.9 95.7002 131.8 98.5c34.9004 3.40039 56.2998 -20.5 64.4004 -71.5c28.7002 -181.5 41.3994 -208.899 93.5996 -126.7c18.7002 29.6006 28.7998 52.1006 30.2002 67.6006c4.7998 45.8994 -35.7998 42.7998 -63.2998 31
c22 72.0996 64.0996 107.1 126.2 105.1c45.7998 -1.2002 67.5 -31.0996 64.8994 -89.3994z" />
    <glyph glyph-name="black-tie" unicode="&#xf27e;" 
d="M0 416h448v-448h-448v448zM316.5 90.7998l-64.5 184l64.4004 86.6006h-184.9l64.5 -86.6006l-64.5 -184l92.5 -88.7002z" />
    <glyph glyph-name="fonticons" unicode="&#xf280;" 
d="M0 416h448v-448h-448v448zM187 275.1c11.9004 0 16.5996 -4.2998 16.2998 -23l50.7002 6.10059c0 44.5996 -30.5996 52.7998 -64.7002 52.7998c-50.7998 0 -77.2998 -20.4004 -77.2998 -70v-21h-28v-37.4004h22.2002c2.89941 0 5.7998 0 5.7998 -2.2998v-111.399
c0 -5.60059 -1.5 -7.30078 -6.7002 -7.90039l-21.2998 -2v-25.7002h130.7v25.1006l-43.5 4.09961c-5.2002 0.599609 -3.2002 1.5 -3.2002 7.2998v112.9h55.7002l11.0996 37.2998h-67.3994c-2.90039 0 0.599609 2 0.599609 4.40039v23.2998
c0 17.5 0.599609 27.3994 19 27.3994zM261.3 33.2998h102.601v25.1006l-15.7002 2.59961c-5.5 0.900391 -2.90039 1.5 -2.90039 7.2998v151.7h-80.2002l-6.69922 -29.5l24.1992 -6.40039c3.80078 -1.19922 6.7002 -3.7998 6.7002 -7.89941v-107.9
c0 -5.59961 -2.39941 -6.7002 -7.59961 -7.2998l-20.4004 -2.59961v-25.1006zM342.1 288.8l21.9004 24.2002l-3.5 9.59961h-27.7002l-15.5 28h-9.2998l-15.5 -28h-27.7002l-3.5 -9.59961l21.7998 -24.2002l-9 -33.2002l7.30078 -7.2998l31.1992 16.6006l31.2002 -16.6006
l7.2998 7.2998z" />
    <glyph glyph-name="reddit-alien" unicode="&#xf281;" horiz-adv-x="512" 
d="M440.3 244.5c55.2998 0 73.7002 -74.0996 23.7998 -99.7002c2.2002 -7.89941 3.10059 -16.7002 3.10059 -25.0996c0 -83.7998 -94.4004 -151.7 -210.8 -151.7c-115.9 0 -210.301 67.9004 -210.301 151.7c0 8.39941 0.800781 16.7998 2.60059 24.7002
c-50.9004 25.5 -32.7002 100.1 22.8994 100.1c15 0 28.7002 -6.2002 38.4004 -16.2998c35.7998 24.7002 83.4004 40.5996 136.3 42.7998l30.4004 137.6c1.2998 4.90039 6.09961 8.40039 11 7.10059l97.3994 -21.6006c6.60059 12.7002 19.9004 22 35.3008 22
c22.0996 0 39.6992 -18.0996 39.6992 -39.6992c0 -21.6006 -17.6992 -39.7002 -39.6992 -39.7002c-21.6006 0 -39.2002 17.5996 -39.2002 39.2002l-88.2002 19.7998l-27.7002 -124.8c53.2998 -1.7002 101.4 -17.6006 137.101 -42.3008
c9.69922 9.7002 22.8994 15.9004 37.8994 15.9004zM129.4 139.1c0 -21.5996 17.6992 -39.2998 39.6992 -39.1992c21.6006 0 39.2002 17.5996 39.2002 39.1992c0 22.1006 -17.5996 39.7002 -39.2002 39.7002c-22.0996 0 -39.6992 -17.7002 -39.6992 -39.7002zM343.7 45.5996
c4 3.5 4 9.7002 -0.100586 13.7002c-3.5 3.5 -9.69922 3.5 -13.1992 0c-29 -29 -121.2 -28.5 -149 0c-3.5 3.5 -9.7002 3.5 -13.2002 0c-4 -4 -4 -10.2002 0 -13.7002c36.3994 -36.3994 139.1 -36.3994 175.5 0zM342.9 99.7998c22 0 39.5996 17.7002 39.6992 39.2002
c0 22.0996 -17.6992 39.7002 -39.6992 39.7002c-21.6006 0 -39.2002 -17.7002 -39.2002 -39.7002c0 -21.5996 17.5996 -39.2002 39.2002 -39.2002z" />
    <glyph glyph-name="edge" unicode="&#xf282;" horiz-adv-x="512" 
d="M481.92 313.52c6.46973 -12.7793 22.4697 -41.6494 21.9697 -85.0791c-0.0917969 -43.7148 -23.6953 -81.8525 -58.9492 -102.44c-17.1387 -10.1797 -37.2617 -16.1211 -58.6104 -16.1797c-0.139648 0 -52.6504 -2.56055 -80.5098 16.8096
c-5.85059 4.08008 -9.14062 8.94043 -9.14062 14c0 6.16016 4.82031 9 6.39062 11c9.7998 12.75 15.1094 28.1699 15.1094 38.5703c0 32.71 -11 59.2998 -33 83.0996c-1.16016 1.25 -42.9795 50.1807 -122.25 50.1807c-63.2393 0 -123.46 -32.6504 -149.46 -79.1406
c24.04 111.98 123.58 195.66 242.44 195.66c96.3496 0 184.96 -46.1797 226.01 -126.48zM212.77 -27.6699c1.28027 -0.570312 29.0107 -20.5898 67.1309 -27.21c-7.89551 -0.759766 -15.5156 -1.3584 -23.6084 -1.3584c-99.3408 0 -185.118 58.5361 -224.692 142.969
c-25.75 55.4697 -24.0801 105.96 -23 118.27c4.16992 34.2803 27.0801 59.7002 46.8408 74.7998c29.6299 22.6904 68.8193 35.6904 107.529 35.6904c7.0498 0 43.9199 -0.900391 77.6406 -18.5898c32.5596 -17.1006 47.3193 -37.5801 56.5596 -53.5107
c1.84961 -3.23242 3.49902 -6.64551 4.88965 -10.1396c-4.21973 4.65039 -40.0596 44.2002 -99.0596 -1c-26.6719 -19.334 -46.8008 -46.8369 -56.9697 -78.9199c-14.1406 -40.4004 -12.8398 -88.5801 20.0996 -136c12.2471 -18.1914 27.9951 -33.3955 46.6396 -45z
M463.49 70.6602c2.1748 -1.37305 3.60742 -3.80176 3.60742 -6.56152c0 -1.53418 -0.447266 -2.96484 -1.21777 -4.16895c-47.5703 -75.4297 -127.86 -108.87 -163 -108.87c-22.7002 0 -48.1299 6.95996 -71.7002 19.6104c-33 17.6699 -49.4893 38.7598 -56 47.6699
c-46.3301 63.5303 -28.25 122.29 -13.3301 151.66c9.73145 19.1172 22.8193 35.9404 38.7607 50c-4.04688 -8.04102 -6.40625 -17.168 -6.52051 -26.75c0 -80.9404 79.8506 -144 171.521 -144c0.116211 0 0.310547 0.0693359 0.426758 0.0693359
c24.3125 0 47.6045 4.40137 69.123 12.4502c6.98145 2.61816 13.8652 5.69824 20.4102 9.12012c1.11328 0.618164 2.41113 0.970703 3.77441 0.970703c1.52344 0 2.94531 -0.44043 4.14551 -1.2002z" />
    <glyph glyph-name="codiepie" unicode="&#xf284;" horiz-adv-x="472" 
d="M422.5 245.1c30.7002 0 33.5 -53.0996 -0.299805 -53.0996h-10.7998v-44.2998h-26.6006v97.3994h37.7002zM472 95.4004c-42.0996 -91.9004 -121.6 -151.4 -224 -151.4c-137 0 -248 111 -248 248s111 248 248 248c97.4004 0 172.8 -53.7002 218.2 -138.4l-186 -108.8z
M433.5 82.9004l-60.2998 30.6992c-27.1006 -44.2998 -70.4004 -71.3994 -122.4 -71.3994c-82.5 0 -149.2 66.7002 -149.2 148.899c0 82.5 66.7002 149.2 149.2 149.2c48.4004 0 88.9004 -23.5 116.9 -63.3994l59.5 34.5996c-40.7002 62.5996 -104.7 100 -179.2 100
c-121.2 0 -219.5 -98.2998 -219.5 -219.5s98.2998 -219.5 219.5 -219.5c78.5996 0 146.5 42.0996 185.5 110.4z" />
    <glyph glyph-name="modx" unicode="&#xf285;" 
d="M356 206.2l36.7002 -23.7002v-214.5l-133 83.7998zM440 373l-83.2002 -134.3l-153.5 96.5l23 37.7998h213.7zM351 230.2l-249.8 -57.7002l-46 29v214.5zM97 153.8l249.7 57.7002l-125 -200.5h-213.7z" />
    <glyph glyph-name="fort-awesome" unicode="&#xf286;" horiz-adv-x="512" 
d="M489.2 160.1c2.59961 0 4.59961 -2 4.5 -4.59961v-219.5h-182.9v96c0 72.5996 -109.7 72.5996 -109.7 0v-96h-182.899v219.5c0 2.59961 2 4.59961 4.59961 4.59961h27.4004c2.59961 0 4.59961 -2 4.59961 -4.59961v-32h36.6006v178.3
c0 2.60059 2 4.60059 4.59961 4.60059h27.4004c2.59961 0 4.59961 -2 4.59961 -4.60059v-32h36.2998v32c0 2.60059 2 4.60059 4.60059 4.60059h27.3994c2.60059 0 4.60059 -2 4.60059 -4.60059v-32h36.5996v32c0 6 8 4.60059 11.7002 4.60059v111.699
c-5.40039 2.60059 -9.10059 8.30078 -9.10059 14.3008c0 20.7998 31.4004 20.6992 31.4004 0c0 -6 -3.7002 -11.7002 -9.09961 -14.3008v-4.89941c7.69922 1.7998 15.6992 2.89941 23.6992 2.89941c11.7002 0 22.9004 -4.2998 32.6006 -4.2998
c8.89941 0 18.8994 4.2998 24 4.2998c2.59961 0 4.59961 -2 4.59961 -4.59961v-60c0 -6.90039 -23.0996 -8 -27.7002 -8c-10.5 0 -20.5 4.2998 -31.3994 4.2998c-8.60059 0 -17.4004 -1.39941 -25.7002 -3.39941v-38c3.7002 0 11.7002 1.39941 11.7002 -4.60059v-32h36.5996
v32c0 2.60059 2 4.60059 4.60059 4.60059h27.3994c2.60059 0 4.60059 -2 4.60059 -4.60059v-32h36.5996v32c0 2.60059 2 4.60059 4.59961 4.60059h27.4004c2.59961 0 4.59961 -2 4.59961 -4.60059v-178.3h36.6006v32c0 2.59961 2 4.59961 4.59961 4.59961h27.4004z
M201.1 164.6v64c0 2.60059 -2 4.60059 -4.59961 4.60059h-27.4004c-2.59961 0 -4.59961 -2 -4.59961 -4.60059v-64c0 -2.59961 2 -4.59961 4.59961 -4.59961h27.4004c2.59961 0 4.59961 2 4.59961 4.59961zM347.5 164.6v64c0 2.60059 -2 4.60059 -4.59961 4.60059h-27.4004
c-2.59961 0 -4.59961 -2 -4.59961 -4.60059v-64c0 -2.59961 2 -4.59961 4.59961 -4.59961h27.4004c2.59961 0 4.59961 2 4.59961 4.59961z" />
    <glyph glyph-name="usb" unicode="&#xf287;" horiz-adv-x="640" 
d="M641.5 192c0 -3.09961 -1.7002 -6.09961 -4.5 -7.5l-89.0996 -53.5c-1.40039 -0.799805 -2.80078 -1.40039 -4.5 -1.40039c-1.40039 0 -3.10059 0.300781 -4.5 1.10059c-2.80078 1.7002 -4.5 4.5 -4.5 7.7998v35.5996h-238.7
c25.2998 -39.5996 40.5 -106.899 69.5996 -106.899h26.7002v26.7998c0 5 3.90039 8.90039 8.90039 8.90039h89.0996c5 0 8.90039 -3.90039 8.90039 -8.90039v-89.0996c0 -5 -3.90039 -8.90039 -8.90039 -8.90039h-89.0996c-5 0 -8.90039 3.90039 -8.90039 8.90039v26.6992
h-26.7002c-75.3994 0 -81.0996 142.5 -124.7 142.5h-100.3c-8.09961 -30.5996 -35.8994 -53.5 -69 -53.5c-39.2998 0.100586 -71.2998 32.1006 -71.2998 71.4004s32 71.2998 71.2998 71.2998c33.1006 0 61 -22.7998 69 -53.5c39.1006 0 43.9004 -9.5 74.6006 60.4004
c40.0996 89.0996 58.0996 82.0996 108.899 82.0996c7.5 20.9004 27 35.6006 50.4004 35.6006c29.5 0 53.5 -23.9004 53.5 -53.5c0 -29.6006 -23.9004 -53.5 -53.5 -53.5c-23.4004 0 -42.9004 14.7998 -50.4004 35.5996h-29.7998
c-29.0996 0 -44.2998 -67.4004 -69.5996 -106.9h310.1v35.6006c0 3.2998 1.7002 6.09961 4.5 7.7998s6.40039 1.40039 8.90039 -0.299805l89.0996 -53.5c2.7998 -1.10059 4.5 -4.10059 4.5 -7.2002z" />
    <glyph glyph-name="product-hunt" unicode="&#xf288;" horiz-adv-x="512" 
d="M326.3 229.2c0 -20.5 -16.7002 -37.2002 -37.2002 -37.2002h-70.2998v74.4004h70.2998c20.5 0 37.2002 -16.7002 37.2002 -37.2002zM504 192c0 -137 -111 -248 -248 -248s-248 111 -248 248s111 248 248 248s248 -111 248 -248zM375.9 229.2
c0 47.8994 -38.9004 86.7998 -86.8008 86.7998h-119.899v-248h49.5996v74.4004h70.2998c47.9004 0 86.8008 38.8994 86.8008 86.7998z" />
    <glyph glyph-name="mixcloud" unicode="&#xf289;" horiz-adv-x="640" 
d="M424.43 228.271c42.3623 -9.1377 74.4805 -47.0693 74.4805 -92.2002c0 -52.3311 -42.6406 -94.6934 -94.9688 -94.6934h-289.614c-62.5752 0 -113.243 50.668 -113.243 112.966c0 56.7598 42.085 103.554 96.6299 111.582
c22.9814 67.5586 86.9395 114.074 159.205 114.074c87.2158 0 159.205 -66.7266 167.511 -151.729zM403.941 83.7412c29.0713 0 52.6064 23.5352 52.6064 52.3301c0 22.1494 -14.1211 40.9766 -33.502 48.4531c-1.38477 -8.58301 -3.59961 -17.166 -6.36914 -25.4727
c-8.01367 -25.6484 -49.0898 -14.2266 -40.1465 13.29c4.15332 12.7373 6.36914 26.0264 6.36914 39.5938c0 69.2197 -56.4834 125.702 -125.979 125.702c-49.8379 0 -94.6934 -29.626 -114.628 -73.9258c19.3809 -4.98438 37.3779 -14.9512 52.0527 -29.3486
c19.9531 -19.9531 -10.2168 -50.1436 -30.1797 -30.1807c-13.29 13.291 -31.0107 20.7666 -49.8379 20.7666c-39.04 0 -70.8809 -31.5645 -70.8809 -70.6045s31.8408 -70.6035 70.8809 -70.6035h289.614zM639.01 136.071c0 -44.0244 -12.7363 -86.3867 -37.1016 -122.657
c-4.15332 -6.0918 -10.7979 -9.41406 -17.7197 -9.41406c-16.3174 0 -27.1279 18.8262 -17.4434 32.9492c19.3809 29.3486 29.9033 63.6816 29.9033 99.1221c0 35.4395 -10.5215 69.7725 -29.9033 98.8447c-15.6553 22.8311 19.3613 47.2402 35.1631 23.5342
c24.3662 -35.9932 37.1016 -78.3564 37.1016 -122.379zM568.13 136.071c0 -31.5654 -9.13672 -62.0215 -26.8564 -88.3252c-4.15332 -6.09082 -10.7988 -9.13574 -17.7207 -9.13574c-17.2012 0 -27.0215 18.9785 -17.4424 32.9473
c13.0127 19.1045 19.6572 41.2559 19.6572 64.5137c0 22.9805 -6.64453 45.4072 -19.6572 64.5117c-15.7617 22.9863 19.0078 47.0947 35.1631 23.5352c17.7188 -26.0264 26.8564 -56.4834 26.8564 -88.0469z" />
    <glyph glyph-name="scribd" unicode="&#xf28a;" horiz-adv-x="384" 
d="M42.2998 195.3c-16.0996 19 -24.7002 45.9004 -24.7998 79.9004c0 100.399 75.2002 153.1 167.2 153.1c98.5996 1.60059 156.8 -49 184.3 -70.5996l-50.5 -72.1006l-37.2998 24.6006l26.8994 38.5996c-36.5 24 -79.3994 36.5 -123 35.7998
c-50.6992 0.800781 -111.699 -27.1992 -111.699 -76.1992c0 -18.7002 11.1992 -20.7002 28.5996 -15.6006c23.2998 5.2998 41.9004 -0.599609 55.7998 -14c26.4004 -24.2998 23.2002 -67.5996 -0.700195 -91.8994c-29.1992 -29.5 -85.1992 -27.3008 -114.8 8.39941z
M360 189.4c33.9004 -40.4004 36.7998 -138.2 -20.2998 -189.601c-39.2002 -33.5996 -82.2002 -44.0996 -133.601 -44.0996c-70.2998 -0.299805 -138.199 25.3994 -190.699 72.2002l-15.4004 13.7998l60.7998 71.7998l35.6006 -27.4004l-33.7002 -39.3994
c41.7002 -30.9004 92.2002 -47.5 144.1 -47.2998c61.9004 0 104.7 23.5 121.4 64.3994c0.899414 4.2002 1.39941 8.40039 1.39941 12.7002c0 18.7002 -11.1992 20.7002 -28.5996 15.5996c-23.2998 -5.2998 -42.2002 0.5 -56.2998 14.4004
c-12.4004 11.2998 -19.1006 27.5 -18.4004 44.2998c-0.599609 39.2002 32.4004 69.2002 70.5 67.2002c24.2998 0.799805 47.7002 -9.7998 63.2002 -28.5996z" />
    <glyph glyph-name="bluetooth" unicode="&#xf293;" 
d="M292.6 276.9l-42.8994 -42.9004l-0.299805 86zM249.4 57.0996l0.199219 86l42.9004 -42.8994zM416 188.6c0 -205.6 -71.9004 -252.6 -185.1 -252.6c-113.2 0 -198.9 47 -198.9 252.6c0 205.601 83.4004 259.4 196.6 259.4c113.2 0 187.4 -53.9004 187.4 -259.4z
M257.5 188.6l79.4004 88.6006l-125.101 134.3v-176.9l-73.7998 73.8008l-27 -26.9004l92.7002 -93l-92.7002 -93l26.9004 -26.9004l73.7998 73.8008l2.2998 -170l127.4 127.5z" />
    <glyph glyph-name="bluetooth-b" unicode="&#xf294;" horiz-adv-x="320" 
d="M196.48 187.977l97.9111 -103.333l-148.552 -148.644l-2.71484 198.284l-86.1113 -86.1113l-31.4053 31.4053l108.061 108.398l-108.061 108.399l31.4053 31.4053l86.1113 -86.1113v206.33l145.981 -156.69zM237.34 290.973l-50.3145 50.3174l0.337891 -100.295z
M187.363 134.96l-0.337891 -100.294l50.3145 50.3164z" />
    <glyph glyph-name="gitlab" unicode="&#xf296;" horiz-adv-x="512" 
d="M105.2 423.1c0 0 56.5 -174.8 56.5996 -174.8h-132l56.5 174.8c3.2002 8.90039 15.7998 8.90039 18.9004 0zM0.900391 160.3l28.7998 88l226.2 -294l-247.9 184c-6.7998 5.10059 -9.7002 14 -7.09961 22zM161.7 248.3h188.6l-94.2998 -294zM511.1 160.3
c2.5 -8 -0.299805 -16.8994 -7.19922 -22l-247.9 -184l226.3 294zM425.7 423.1l56.5 -174.8h-132l56.5996 174.8c3.2002 8.90039 15.7998 8.90039 18.9004 0z" />
    <glyph glyph-name="wpbeginner" unicode="&#xf297;" horiz-adv-x="512" 
d="M462.799 125.626c56.2109 -64.3076 4.16211 -157.626 -91.8545 -157.626c-39.6025 0 -78.8242 17.6865 -100.143 50.04c-6.88672 -0.356445 -22.7021 -0.356445 -29.5898 0c-21.3643 -32.4209 -60.624 -50.04 -100.143 -50.04
c-95.4902 0 -148.349 92.9961 -91.8555 157.626c-79.1387 131.851 31.2646 290.374 206.792 290.374c175.632 0 285.87 -158.626 206.793 -290.374zM123.152 208.598h41.5283v58.0752h-41.5283v-58.0752zM340.332 122.526v23.8389
c-60.5059 -20.915 -132.355 -9.19824 -187.589 33.9707l0.246094 -24.8965c51.1006 -46.3672 131.746 -57.875 187.343 -32.9131zM189.579 208.598h166.058v58.0752h-166.058v-58.0752z" />
    <glyph glyph-name="wpforms" unicode="&#xf298;" 
d="M448 372.8v-361.7c0 -24.2998 -19 -43.1992 -43.2002 -43.1992h-361.6c-23.9004 0.0996094 -43.2002 18.6992 -43.2002 43.2998v361.6c0 24.1006 18.7998 43.2002 43.2002 43.2002h361.7c24 0 43.0996 -18.7998 43.0996 -43.2002zM410.7 11.2002v361.6
c0 3 -2.60059 5.7998 -5.7998 5.7998h-9.30078l-110.3 -74.5996l-61.2998 49.9004l-61.2002 -49.9004l-110.3 74.7002h-9.2998c-3.2002 0 -5.7998 -2.7998 -5.7998 -5.7998v-361.7c0 -3 2.59961 -5.7998 5.7998 -5.7998h361.7
c3.19922 -0.100586 5.7998 2.69922 5.7998 5.7998zM150.2 262v-37h-73.5v37h73.5zM150.2 187.6v-37.2998h-73.5v37.2998h73.5zM161.3 334.9l54 43.6992h-118.5zM371.3 262v-37h-196v37h196zM371.3 187.6v-37.2998h-196v37.2998h196zM286.7 334.9l64.5 43.6992h-118.4z
M371.3 113v-37.2998h-99.3994v37.2998h99.3994z" />
    <glyph glyph-name="envira" unicode="&#xf299;" 
d="M0 416c477.6 0 366.6 -317.3 367.1 -366.3l80.9004 -81.7002h-26l-70.4004 71.2002c-39 -4.2002 -124.399 -34.5 -214.399 37c-90.2002 71.5 -85.2002 157.1 -137.2 339.8zM79.7002 370c-49.7002 23.5 -5.2002 -9.2002 -5.2002 -9.2002
c45.2002 -31.2002 66 -73.7002 90.2002 -119.899c31.5 -60.2002 79 -139.7 144.2 -167.7c65 -28 34.1992 -12.5 6 8.5c-28.2002 21.2002 -68.2002 87 -91 130.2c-31.7002 60 -61 118.6 -144.2 158.1z" />
    <glyph glyph-name="glide" unicode="&#xf2a5;" 
d="M252.8 299.4c0 -8.80078 -1.59961 -17.7002 -3.39941 -26.4004c-5.80078 -27.7998 -11.6006 -55.7998 -17.3008 -83.5996c-1.39941 -6.30078 -8.2998 -4.90039 -13.6992 -4.90039c-23.8008 0 -30.5 26 -30.5 45.5c0 29.2998 11.1992 68.0996 38.5 83.0996
c4.2998 2.5 9.19922 4.2002 14.0996 4.2002c11.4004 0 12.2998 -8.2998 12.2998 -17.8994zM448 368v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h352c26.5 0 48 -21.5 48 -48zM384 181c0 5.09961 -20.7998 37.7002 -25.5 39.5
c-2.2002 0.900391 -7.2002 2.2998 -9.59961 2.2998c-23.1006 0 -38.7002 -10.5 -58.2002 -21.5l-0.5 0.5c4.2998 29.4004 14.5996 57.2002 14.5996 87.4004c0 44.5996 -23.7998 62.7002 -67.5 62.7002c-71.7002 0 -108 -70.8008 -108 -123.5c0 -54.7002 32 -85 86.2998 -85
c7.5 0 6.90039 0.599609 6.90039 -2.30078c-10.5 -80.2998 -56.5 -82.8994 -56.5 -58.8994c0 24.3994 28 36.5 28.2998 38c-0.200195 7.59961 -29.2998 17.2002 -36.7002 17.2002c-21.0996 0 -32.6992 -33 -32.6992 -50.6006c0 -32.2998 20.3994 -54.7002 53.2998 -54.7002
c48.2002 0 83.3994 49.7002 94.2998 91.7002c9.40039 37.7002 7 39.4004 12.2998 42.1006c20 10.0996 35.7998 16.7998 58.4004 16.7998c11.0996 0 19 -2.2998 36.7002 -5.2002c1.7998 -0.0996094 4.09961 1.7002 4.09961 3.5z" />
    <glyph glyph-name="glide-g" unicode="&#xf2a6;" 
d="M407.1 236.8c7.5 -2.89941 40.9004 -55.3994 40.9004 -63.3994c0 -2.90039 -3.7998 -5.80078 -6.7002 -5.80078c-28.3994 4.7002 -41.0996 8.40039 -58.8994 8.40039c-36.3008 0 -61.6006 -10.7998 -93.8008 -27c-8.5 -4.2998 -4.59961 -7.09961 -19.6992 -67.5996
c-17.4004 -67.6006 -74 -145.4 -151.4 -145.4c-52.7002 0 -85.5 36 -85.5 87.9004c0 28.0996 18.5 79.1992 52.4004 79.2998c11.8994 0 58.5996 -15.4004 58.8994 -27.6006c-0.5 -2.39941 -45.5 -21.7998 -45.5 -61c0 -38.5 73.9004 -34.2998 90.7998 94.6006
c0 4.7998 1 3.7998 -11 3.7998c-87.2998 0 -138.6 48.7002 -138.6 136.6c0 84.7002 58.2998 198.4 173.4 198.4c70.1992 0 108.399 -29.0996 108.399 -100.6c0 -48.5 -16.5 -93.1006 -23.5 -140.4l0.900391 -0.900391c31.2998 17.7002 56.3994 34.5 93.5 34.5
c3.7998 0 11.8994 -2.39941 15.3994 -3.7998zM231.8 321.2c2.90039 13.8994 5.5 28.0996 5.60059 42.3994c0 15.4004 -1.40039 28.7002 -20 28.7002c-7.80078 0 -15.6006 -2.59961 -22.6006 -6.7002c-43.7998 -24.0996 -61.7998 -86.3994 -61.7998 -133.399
c0 -31.2998 10.7002 -73.1006 49 -73.1006c8.7002 0 19.7002 -2.39941 22 7.80078c9.2002 44.6992 18.5 89.5996 27.7998 134.3z" />
    <glyph glyph-name="viadeo" unicode="&#xf2a9;" 
d="M276.2 297.5v-0.700195c-17.9004 52.6006 -42.6006 103.4 -70.7998 151.2c43.2998 -29.2002 67 -100 70.7998 -150.5zM308.9 175.8c15.0996 3.10059 29.5 9 42.1992 17c24.5 -58.5996 20.2002 -139.7 -36.3994 -201c-67.7998 -73.8994 -191.9 -74.5996 -259.8 0
c-108.801 117.8 -31.6006 313.7 129.899 313.7c21.2998 0 42.6006 -3.5 62.5 -10.7002c-6.89941 -13.3994 -11.7002 -28.2002 -13.3994 -43.2998c-15.4004 6.5 -32.3008 9.59961 -49.1006 9.59961c-78 0 -135.399 -66.6992 -135.399 -142.3
c0 -68.7998 45.5996 -126 111.3 -137.399c98.5 38.3994 116.6 188.199 116.6 280c0 11.6992 0 23.6992 -1 35.3994c12.4004 -36.0996 18.9004 -73.8994 18.9004 -112c0 -86.5 -35.1006 -158.399 -109.3 -205.1l-3.80078 -0.299805
c80 -1.60059 137.801 61.6992 137.801 139.399c0 19.5 -3.40039 38.7998 -11 57zM418.1 436.3c52 -74 20.9004 -208.6 -58.0996 -208.6c-21.2998 0 -40.2002 11.3994 -55 25.7998c35.0996 19.2998 79.4004 49.2002 99.7002 84.9004
c2.39941 4.7998 6.5 13.6992 7.2002 19.1992c-19.9004 -44.6992 -70.8008 -79.6992 -118.2 -90.6992c-7.5 11.6992 -12 24.6992 -12 38.7998c0 16.5 8.2002 38.5 20.5996 50.5c34.5 32.8994 84.7998 13.5996 115.8 80.0996z" />
    <glyph glyph-name="viadeo-square" unicode="&#xf2aa;" 
d="M400 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h352zM280.7 66.7998c35.3994 38.2998 38.0996 89 22.7998 125.601c-7.90039 -4.90039 -16.9004 -8.60059 -26.4004 -10.5
c4.80078 -11.4004 6.90039 -23.5 6.90039 -35.7002c0 -48.6006 -36.2002 -88.2002 -86.2002 -87.2002l2.40039 0.200195c46.3994 29.2002 68.2998 74.0996 68.2998 128.2c0 23.7998 -4.09961 47.5 -11.7998 70v0.399414c-2.2998 31.6006 -17.1006 75.7998 -44.2002 94.1006
c17.5996 -29.9004 33 -61.6006 44.2002 -94.5c0.599609 -7.30078 0.599609 -14.8008 0.599609 -22.1006c0 -57.3994 -11.3994 -151 -72.8994 -175c-41 7.2002 -69.5 42.9004 -69.5 85.9004c0 47.2002 35.7998 88.8994 84.5996 88.8994c10.5 0 21 -1.89941 30.7002 -6
c1.09961 9.5 4.09961 18.7002 8.39941 27.1006c-12.5 4.59961 -25.7998 6.7002 -39.0996 6.7002c-101 0 -149.2 -122.5 -81.2002 -196.101c42.4004 -46.5996 120 -46.2002 162.4 0zM309 214.3c49.4004 0 68.7998 84.1006 36.2998 130.3
c-19.3994 -41.5 -50.7998 -29.5 -72.3994 -50c-7.7002 -7.5 -12.9004 -21.2998 -12.9004 -31.5996c0 -8.7998 2.7998 -17 7.5 -24.2998c29.7002 6.89941 61.4004 28.7998 73.9004 56.7002c-0.400391 -3.40039 -3 -9 -4.5 -12c-12.7002 -22.3008 -40.4004 -41 -62.3008 -53
c9.30078 -9 21.1006 -16.1006 34.4004 -16.1006z" />
    <glyph glyph-name="snapchat" unicode="&#xf2ab;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM417.5 101.1c2.2002 5.30078 -0.900391 9.80078 -4.90039 10.8008c-46.2998 7.59961 -67.0996 55.0996 -68 57.0996
c-0.0996094 0.0996094 -0.0996094 0.200195 -0.199219 0.299805c-2.40039 5 -3 9.2002 -1.60059 12.5c2.60059 6.2998 12.5 9.40039 19 11.5c1.7998 0.600586 3.5 1.10059 4.90039 1.7002c11.5 4.5 17.2998 10.0996 17.2002 16.5996
c-0.100586 5.10059 -4.10059 9.60059 -10.4004 11.9004c-4 1.59961 -9.59961 1.90039 -13.5996 0c-5.5 -2.59961 -10.4004 -4 -14.7002 -4.2002c-2.7998 0.100586 -4.60059 0.799805 -5.7002 1.40039c1.40039 24 4.7002 58 -3.7998 77.0996
c-16.2998 36.5 -49.6006 54.2998 -84.2998 54.2998c-0.600586 0 -6.10059 -0.0996094 -6.7002 -0.0996094c-14 0 -61.6006 -4 -84.1006 -54.2998c-8.5 -19.1006 -5.19922 -53.2002 -3.7998 -77.1006c-1.09961 -0.599609 -3.2998 -1.39941 -6.59961 -1.39941
c-4.5 0 -9.7998 1.39941 -15.7002 4.2002c-7.5 3.5 -20.2998 -1.80078 -21.9004 -10.3008c-1 -4.89941 1.2002 -12.0996 17 -18.2998c6.10059 -2.5 20.6006 -5.2998 24 -13.2002c1.40039 -3.2998 0.900391 -7.5 -1.59961 -12.5
c-0.0996094 -0.0996094 -0.200195 -0.199219 -0.200195 -0.299805c-0.899414 -2 -21.7002 -49.5 -68 -57.0996c-3.59961 -0.600586 -6.09961 -3.7998 -5.89941 -7.40039c0.699219 -13.8994 31.6992 -19.2998 45.5 -21.3994c1.39941 -1.90039 2.5 -9.90039 4.2998 -16
c0.799805 -2.7002 2.89941 -6 8.2998 -6s13.2998 3.09961 25.7998 3.09961c17.6006 0 23.6006 -4 37.4004 -13.7002c9.89941 -7 27.5 -19.7998 48.5 -18.2002c20.7998 -0.899414 34.7002 7.90039 49.2002 18.2002c13.6992 9.7002 19.7998 13.7002 37.3994 13.7002
c13 0 19.6006 -2.90039 25.7998 -2.90039h0.200195c4.40039 0 7 2.2002 8.10059 5.90039c1.7998 6.09961 2.89941 14 4.2998 15.9004c26.7002 4.19922 41.2998 10.0996 44.7998 18.1992z" />
    <glyph glyph-name="snapchat-ghost" unicode="&#xf2ac;" horiz-adv-x="512" 
d="M510.846 55.3271c-5.21094 -12.1572 -27.2383 -21.0889 -67.3594 -27.3184c-2.06445 -2.78613 -3.77539 -14.6855 -6.50781 -23.9561c-1.625 -5.56543 -5.62207 -8.86914 -12.1279 -8.86914l-0.296875 0.00585938c-9.39453 0 -19.2031 4.32227 -38.8516 4.32227
c-26.5215 0 -35.6621 -6.04297 -56.2539 -20.5879c-21.832 -15.4375 -42.7715 -28.7637 -74.0273 -27.3984c-31.6455 -2.33398 -58.0244 16.9072 -72.8711 27.4033c-20.7139 14.6436 -29.8281 20.582 -56.2412 20.582c-18.8633 0 -30.7354 -4.71973 -38.8516 -4.71973
c-8.07324 0 -11.2129 4.92188 -12.4219 9.04004c-2.70312 9.18848 -4.4043 21.2627 -6.52344 24.1299c-20.6787 3.20898 -67.3096 11.3438 -68.498 32.1504c-0.0107422 0.196289 -0.015625 0.393555 -0.015625 0.591797c0 5.27148 3.85645 9.64355 8.89258 10.4766
c69.583 11.4551 100.925 82.9014 102.228 85.9346c0.0742188 0.175781 0.155273 0.34375 0.237305 0.514648c3.71289 7.53711 4.54395 13.8486 2.46289 18.7529c-5.05078 11.8965 -26.8721 16.1641 -36.0537 19.7959c-23.7148 9.36621 -27.0146 20.1279 -25.6113 27.5039
c2.43652 12.8359 21.7246 20.7354 33.002 15.4531c8.91895 -4.18066 16.8428 -6.29688 23.5469 -6.29688c5.02148 0 8.21191 1.2041 9.95996 2.1709c-2.04297 35.9365 -7.10156 87.29 5.68652 115.969c33.7734 75.7188 105.356 81.6025 126.478 81.6025
c0.943359 0 9.14062 0.0888672 10.1094 0.0888672c52.1484 0 102.255 -26.7803 126.724 -81.6426c12.7764 -28.6504 7.74902 -79.792 5.69434 -116.01c1.58203 -0.87207 4.35742 -1.94141 8.59961 -2.13867c6.39648 0.286133 13.8145 2.38867 22.0693 6.25684
c6.08496 2.84668 14.4053 2.46094 20.4795 -0.0576172l0.0292969 -0.00976562c9.47559 -3.38574 15.4385 -10.2158 15.5889 -17.8701c0.183594 -9.74707 -8.52246 -18.165 -25.8779 -25.0186c-2.11816 -0.834961 -4.69434 -1.6543 -7.43457 -2.52441
c-9.79688 -3.10645 -24.5996 -7.80566 -28.6152 -17.2715c-2.0791 -4.9043 -1.25684 -11.2109 2.45996 -18.748c0.0869141 -0.167969 0.166016 -0.341797 0.238281 -0.514648c1.30176 -3.03027 32.6152 -74.46 102.23 -85.9346
c6.42676 -1.05762 11.1631 -7.87695 7.72461 -15.8584z" />
    <glyph glyph-name="snapchat-square" unicode="&#xf2ad;" 
d="M400 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h352zM393.5 101.1c2.2002 5.30078 -0.900391 9.80078 -4.90039 10.8008c-46.2998 7.59961 -67.0996 55.0996 -68 57.0996
c-0.0996094 0.0996094 -0.0996094 0.200195 -0.199219 0.299805c-2.40039 5 -3 9.2002 -1.60059 12.5c2.60059 6.2998 12.5 9.40039 19 11.5c1.7998 0.600586 3.5 1.10059 4.90039 1.7002c11.5 4.5 17.2998 10.0996 17.2002 16.5996
c-0.100586 5.10059 -4.10059 9.60059 -10.4004 11.9004c-4 1.59961 -9.59961 1.90039 -13.5996 0c-5.5 -2.59961 -10.4004 -4 -14.7002 -4.2002c-2.7998 0.100586 -4.60059 0.799805 -5.7002 1.40039c1.40039 24 4.7002 58 -3.7998 77.0996
c-16.2998 36.5 -49.6006 54.2998 -84.2998 54.2998c-0.600586 0 -6.10059 -0.0996094 -6.7002 -0.0996094c-14 0 -61.6006 -4 -84.1006 -54.2998c-8.5 -19.1006 -5.19922 -53.2002 -3.7998 -77.1006c-1.09961 -0.599609 -3.2998 -1.39941 -6.59961 -1.39941
c-4.5 0 -9.7998 1.39941 -15.7002 4.2002c-7.5 3.5 -20.2998 -1.80078 -21.9004 -10.3008c-1 -4.89941 1.2002 -12.0996 17 -18.2998c6.10059 -2.5 20.6006 -5.2998 24 -13.2002c1.40039 -3.2998 0.900391 -7.5 -1.59961 -12.5
c-0.0996094 -0.0996094 -0.200195 -0.199219 -0.200195 -0.299805c-0.899414 -2 -21.7002 -49.5 -68 -57.0996c-3.59961 -0.600586 -6.09961 -3.7998 -5.89941 -7.40039c0.699219 -13.8994 31.6992 -19.2998 45.5 -21.3994c1.39941 -1.90039 2.5 -9.90039 4.2998 -16
c0.799805 -2.7002 2.89941 -6 8.2998 -6s13.2998 3.09961 25.7998 3.09961c17.6006 0 23.6006 -4 37.4004 -13.7002c9.89941 -7 27.5 -19.7998 48.5 -18.2002c20.7998 -0.899414 34.7002 7.90039 49.2002 18.2002c13.6992 9.7002 19.7998 13.7002 37.3994 13.7002
c13 0 19.6006 -2.90039 25.7998 -2.90039h0.200195c4.40039 0 7 2.2002 8.10059 5.90039c1.7998 6.09961 2.89941 14 4.2998 15.9004c26.7002 4.19922 41.2998 10.0996 44.7998 18.1992z" />
    <glyph glyph-name="pied-piper" unicode="&#xf2ae;" horiz-adv-x="480" 
d="M455.93 424.8c9.41992 2.40039 15.0703 -10.25 6.99023 -15.6797c-98.2295 -65.9199 -120.439 -127.561 -126.229 -160.18c-33.5205 -188.881 -101.37 -119.32 -184.311 -226.65c25.7607 -14.8125 55.8076 -23.3984 87.6299 -23.4004
c97.6504 0 177.09 79.4502 177.09 177.11c-0.00488281 45.0508 -16.9824 86.25 -44.8496 117.41c4.72754 9.75293 10.4238 18.9131 17 27.3994c36.3574 -37.3457 58.75 -88.3779 58.75 -144.564v-0.245117c0 -114.87 -93.1299 -208 -208 -208s-208 93.1201 -208 208
s93.1299 208 208 208c36.7422 -0.000976562 71.4697 -9.77246 101.35 -26.6602c46.4404 38.9697 87.8809 60.6602 114.58 67.46zM125 41.5996c64.7695 140.881 125.64 231.641 191.63 293.75c-23.0674 11.3037 -49.1611 17.75 -76.5615 17.75h-0.0683594
c-97.6504 0 -177.1 -79.4395 -177.1 -177.1c0.0234375 -53.8203 24.0684 -102.002 62.0996 -134.4z" />
    <glyph glyph-name="first-order" unicode="&#xf2b0;" 
d="M12.9004 218.8c0.0996094 0.100586 0.199219 0.299805 0.299805 0.400391c0 -0.100586 0 -0.299805 -0.100586 -0.400391h-0.199219zM224 351.4c7.40039 0 14.5996 -0.5 21.7002 -1.7002l-4 -67.7002l22.2998 64.2998c14.2998 -3.7998 27.7002 -9.5 40 -16.8994
l-29.4004 -61.1006l45.1006 50.9004c11.5 -8.90039 21.7002 -19.2002 30.5996 -30.9004l-50.5996 -45.3994l60.8994 29.6992c7.5 -12.2998 12.9004 -26 16.6006 -40.2998l-64 -22.2998l67.7002 4c1.09961 -7.09961 1.39941 -14.5996 1.39941 -22
s-0.299805 -14.5996 -1.39941 -21.7002l-67.4004 4l64 -22.2998c-3.7002 -14.5996 -9.5 -28 -16.5996 -40.2998l-61.1006 29.3994l50.6006 -45.0996c-8.60059 -11.7998 -18.9004 -22 -30.6006 -30.9004l-44.8994 50.9004l29.3994 -61.2998
c-12.2998 -7.5 -25.7002 -12.9004 -40 -16.9004l-22.5996 65.1006l4 -68.6006c-7.10059 -1.09961 -14.2998 -1.7002 -21.7002 -1.7002c-7.09961 0 -14.5996 0.600586 -21.7002 1.7002l4 68l-22.2998 -64.5996c-14.2998 3.7998 -27.7002 9.5 -40 16.8994l29.5 61.4004
l-44.9004 -50.9004c-11.7998 8.60059 -22 19.2002 -30.8994 30.9004l50.8994 45.0996l-61.0996 -29.6992c-7.2002 12.5996 -12.9004 26 -16.5996 40.2998l64 22.5996l-67.7002 -4c-0.799805 7.10059 -1.40039 14.2998 -1.40039 21.7002s0.5 14.9004 1.40039 22l68 -4
l-64.2998 22.5996c3.69922 14.3008 9.5 27.7002 16.5996 40l61.0996 -29.6992l-50.5996 45.3994c8.90039 11.7998 19.2002 22 30.5996 30.9004l45.1006 -50.9004l-29.4004 61.4004c12.2998 7.2002 25.7002 12.8994 40 16.5996l22 -64l-3.7002 67.4004
c6.80078 1.09961 14.3008 1.7002 21.4004 1.7002zM443.4 320v-256l-219.4 -128l-219.4 128v256l219.4 128zM426.3 309.7l-202.3 117.399l-202.3 -117.399v-235.101l202.3 -117.699l202.3 117.699v235.101zM224 410.9l187.7 -109.4v-218.9l-187.7 -109.5l-187.7 109.5
v218.801zM224 360c-92.2998 0 -166.9 -75.0996 -166.9 -168c0 -92.5996 74.6006 -167.7 166.9 -167.7c92 0 166.9 75.1006 166.9 167.7c0 92.9004 -74.9004 168 -166.9 168z" />
    <glyph glyph-name="yoast" unicode="&#xf2b1;" 
d="M91.2998 372h186l-7 -18.9004h-179c-39.7002 0 -71.8994 -31.5996 -71.8994 -70.2998v-205.399c0 -35.4004 24.8994 -70.3008 84 -70.3008v-19.0996h-12.1006c-50.0996 0 -91.2998 40.2002 -91.2998 89.5v205.3c0 49.2998 40.7002 89.2002 91.2998 89.2002zM320.4 428
h66.5c-143.801 -378.1 -145.7 -398.9 -184.7 -439.3c-20.7998 -21.6006 -49.2998 -31.7002 -78.2998 -32.7002v51.0996c49.1992 7.7002 64.5996 49.9004 64.5996 75.3008c0 20.0996 0.599609 12.5996 -82.0996 223.199h61.3994l50.4004 -156.6zM448 286.5v-298.5h-214
c6.59961 9.59961 10.7002 16.2998 12.0996 19.4004h182.5v279.1c0 32.5 -17.0996 51.9004 -48.1992 62.9004l6.69922 17.5996c41.7002 -13.5996 60.9004 -43.0996 60.9004 -80.5z" />
    <glyph glyph-name="themeisle" unicode="&#xf2b2;" horiz-adv-x="512" 
d="M208 359.714c0 10 6.28613 21.7139 17.7148 21.7139c11.1426 0 17.7139 -11.7139 17.7139 -21.7139c0 -10.2852 -6.57129 -21.7139 -17.7139 -21.7139c-11.4287 0 -17.7148 11.4287 -17.7148 21.7139zM512 199.714c0 -36.001 -11.4287 -102.286 -36.2861 -129.714
c-22.8574 -24.8584 -87.4277 -61.1426 -120.856 -70.5723l-1.14355 -0.286133v-32.5703c0 -16.2861 -12.5723 -30.5713 -29.1426 -30.5713c-10 0 -19.4297 5.71387 -24.5723 14.2861c-5.42676 -8.57227 -14.8564 -14.2861 -24.8564 -14.2861
s-19.4287 5.71387 -24.8574 14.2861c-5.14258 -8.57227 -14.5713 -14.2861 -24.5703 -14.2861c-10.2861 0 -19.4287 5.71387 -24.8574 14.2861c-5.14355 -8.57227 -14.5713 -14.2861 -24.5713 -14.2861c-18.8574 0 -29.4287 15.7139 -29.4287 32.8574
c-16.2861 -12.2852 -35.7158 -19.4287 -56.5713 -19.4287c-22 0 -43.4287 8.28516 -60.2861 22.8574c10.2852 0.286133 20.5713 2.28613 30.2852 5.71387c-20.8574 5.71387 -39.4277 18.8574 -52 36.2861c21.3701 -4.64551 46.209 -1.67285 67.1426 11.1426
c-22 22 -56.5703 58.8574 -68.5713 87.4287c-5.71387 13.4287 -6.85645 31.4287 -6.85645 45.7139c0 49.7139 20.2861 160 86.2861 160c10.5713 0 18.8564 -4.8584 23.1426 -14.8574c3.7041 5.41992 7.6709 10.5186 12 15.4277c2 2.57227 5.71387 5.42969 7.14355 8.28613
c7.99902 12.5713 11.7139 21.1426 21.7139 34c32.2852 41.1445 81.7139 69.4297 134.856 69.4297c6 0 12 -0.285156 17.7148 -1.14355c10.8564 11.7148 26 18.2861 41.7148 18.2861c14.5703 0 29.7139 -6 40 -16.2861c0.856445 -0.857422 1.42773 -2.28613 1.42773 -3.42773
c0 -3.71387 -10.2852 -13.4287 -12.8574 -16.2861c4.28613 -1.42871 15.7148 -6.8584 15.7148 -12c0 -2.85742 -2.85742 -5.14258 -4.57129 -7.14258c31.4287 -27.7148 49.4287 -67.1436 56.2861 -108c4.28613 5.14258 10.2852 8.57129 17.1426 8.57129
c10.5713 0 20.8574 -7.14355 28.5713 -14.001c20.8564 -18.5703 25.7139 -53.1416 25.7139 -79.7139zM188 358.572c0 -18.2861 12.5713 -37.1436 32.2861 -37.1436c19.7139 0 32.2852 18.8574 32.2852 37.1436c0 18 -12.5713 36.8564 -32.2852 36.8564
c-19.7148 0 -32.2861 -18.8574 -32.2861 -36.8564zM237.714 254c0 19.7139 3.71387 39.1426 8.57129 58.2861c-52.0391 -79.5342 -13.5312 -184.571 68.8574 -184.571c21.4287 0 42.5713 7.71387 60 20c2 7.42871 3.71484 14.8574 3.71484 22.5723
c0 14.2861 -6.28613 21.4277 -20.5723 21.4277c-4.57129 0 -9.14355 -0.856445 -13.4287 -1.71387c-63.3438 -12.668 -107.143 -3.66895 -107.143 63.999zM196.572 -0.858398c0 11.1436 -8.8584 20.8574 -20.2861 20.8574c-11.4287 0 -20 -9.71484 -20 -20.8574v-32.5703
c0 -11.1436 8.57129 -21.1426 20 -21.1426c11.4277 0 20.2861 9.71484 20.2861 21.1426v32.5703zM245.715 -0.858398c0 11.1436 -8.57227 20.8574 -20 20.8574c-11.4287 0 -20.2861 -9.71484 -20.2861 -20.8574v-32.5703c0 -11.1436 8.85742 -21.1426 20.2861 -21.1426
c11.4277 0 20 10 20 21.1426v32.5703zM295.428 -0.858398c0 11.1436 -8.85645 20.8574 -20.2852 20.8574s-20.2852 -9.71484 -20.2852 -20.8574v-32.5703c0 -11.1436 8.85645 -21.1426 20.2852 -21.1426s20.2852 9.71484 20.2852 21.1426v32.5703zM345.143 -0.858398
c0 11.1436 -8.85645 20.8574 -20.2852 20.8574s-20.2861 -9.71484 -20.2861 -20.8574v-32.5703c0 -11.1436 8.85742 -21.1426 20.2861 -21.1426s20.2852 10 20.2852 21.1426v32.5703zM421.714 162c-30.8564 -59.1416 -90.2852 -102.572 -158.571 -102.572
c-96.5703 0 -160.57 84.5723 -160.57 176.572c0 16.8574 2 33.4287 6 49.7139c-20 -33.7148 -29.7139 -72.5723 -29.7139 -111.429c0 -60.2861 24.8564 -121.715 71.4287 -160.857c5.14258 9.71387 14.8564 16.2861 26 16.2861c10 0 19.4277 -5.71387 24.5713 -14.2861
c5.42871 8.57129 14.5703 14.2861 24.8574 14.2861c10 0 19.4277 -5.71387 24.5713 -14.2861c5.42871 8.57129 14.8564 14.2861 24.8574 14.2861c10 0 19.4287 -5.71387 24.8574 -14.2861c5.14258 8.57129 14.5713 14.2861 24.5723 14.2861
c10.8564 0 20.8564 -6.57227 25.7139 -16c43.4268 36.2861 68.5693 92 71.4258 148.286zM432.286 261.714c0 53.7139 -34.5713 105.714 -92.5723 105.714c-30.2852 0 -58.5713 -15.1426 -78.8564 -36.8564c-19.9951 -66.3828 -27.4473 -136.571 41.4287 -136.571
c28.8047 0 97.3564 28.5381 84.2861 -36.8574c28.8564 26 45.7139 65.7148 45.7139 104.571z" />
    <glyph glyph-name="google-plus" unicode="&#xf2b3;" horiz-adv-x="512" 
d="M256 440c136.9 0 248 -111.1 248 -248s-111.1 -248 -248 -248s-248 111.1 -248 248s111.1 248 248 248zM185.3 68c71.2998 0 118.8 50.4004 118.8 121.2c0.000976562 0.140625 0.00195312 0.182617 0.00195312 0.323242c0 6.96289 -0.65332 13.7744 -1.90137 20.377
h-116.9v-42.6006h70.1006c-5.2002 -34.2002 -37.5 -53.2998 -70.1006 -53.2998c-43 0 -77.2002 35.5 -77.2002 78.0996c0 42.6006 34.3008 78.1006 77.2002 78.1006c18.1006 0 36.2002 -6.2002 49.4004 -19.1006l33.5996 32.6006
c-22.8994 21.2998 -51.7002 32.2998 -83 32.2998c-68.4375 0 -124 -55.5625 -124 -124s55.5625 -124 124 -124zM415.5 174.2h35.2002v35.5h-35.2002v35.5h-35.5v-35.5h-35.5v-35.5h35.5v-35.5h35.5v35.5z" />
    <glyph glyph-name="font-awesome" unicode="&#xf2b4;" 
d="M397.8 416c27.5 0 50.2002 -22.7002 50.2002 -50.2002v-347.6c0 -27.5 -22.7002 -50.2002 -50.2002 -50.2002h-347.6c-27.5 0 -50.2002 22.7002 -50.2002 50.2002v347.6c0 27.5 22.7002 50.2002 50.2002 50.2002h347.6zM352.4 131.7h0.0996094v140.3
c0 4.2002 -4.2002 7.7998 -9 7.7998c-6 0 -31.0996 -16.0996 -53.7998 -16.0996c-4.7002 0 -8.90039 0.599609 -13.1006 2.39941c-20.2998 7.7002 -38.1992 13.7002 -60.8994 13.7002c-20.9004 0 -43 -6.5 -61.5 -14.2998
c-1.7998 -1.2002 -3.60059 -1.7998 -5.40039 -2.40039v18.5c8.2998 6 13.1006 15.5 13.1006 26.3008c0 18.5996 -15 33.5 -33.5 33.5c-18.6006 0 -33.5 -15 -33.5 -33.5c0 -10.8008 5.2998 -20.3008 13.0996 -26.3008v-218.6c0 -11.2998 9 -20.2998 20.2998 -20.2998
c8.90039 0 16.7002 5.89941 19.1006 14.2998v1.2002c0.599609 1.2002 0.599609 3 0.599609 4.7998v45.4004c1.2002 0.599609 2.40039 0.599609 3.59961 1.19922c19.7002 8.90039 44.2002 17.3008 67.5 17.3008c32.3008 0 44.8008 -16.7002 71.7002 -16.7002
c19.2002 0 37.1006 6.5 53.7998 13.7002c4.2002 1.7998 7.80078 3.59961 7.80078 7.7998z" />
    <glyph glyph-name="linode" unicode="&#xf2b8;" 
d="M437.4 221.7c0.599609 -2 -8.80078 -66.2998 -9.7002 -72.7998c0 -0.900391 -0.5 -1.7002 -1.10059 -2l-54.5996 -43.7002c-1.09961 -0.900391 -2.59961 -0.900391 -3.7002 0l-20.2998 14l-2.2998 -33.4004c0 -0.899414 -0.200195 -1.7002 -1.10059 -2.2998
l-66.8994 -53.4004c-1.10059 -0.899414 -2.90039 -0.899414 -4 0l-28 23.7002l2 -46c0 -0.899414 -0.200195 -1.7002 -1.10059 -2.2998l-83.6992 -66.9004c-0.600586 -0.299805 -1.10059 -0.599609 -1.7002 -0.599609c-0.900391 0.299805 -1.7002 0.299805 -2.2998 0.900391
l-65.1006 69.0996c-1.5 1.40039 -15.5 72 -16.8994 79.0996c-0.300781 1.10059 0.5 2.5 1.39941 3.10059l17.4004 10.5996c-3.40039 3.2002 -26.5 23.4004 -27.1006 26.2998l-20.5996 100.301c-0.299805 1.09961 0.299805 2.5 1.7002 3.39941l26.8994 12.9004
c-4.59961 3.5 -37.6992 27.5 -38.5996 30.8994l-27.4004 133.101c-0.299805 1.7002 0.600586 3.09961 2 3.7002l123.7 38.5996c0.600586 0 1.40039 0 2.2998 -0.299805l90.6006 -43.7002c0.799805 -0.599609 1.7002 -1.7002 1.7002 -2.59961l5.69922 -132.301
c0 -1.19922 -0.599609 -2.2998 -1.69922 -2.89941l-33.7002 -17.4004l36 -24.2998c0.799805 -0.299805 1.39941 -1.40039 1.39941 -2.2998l1.40039 -35.1006l34.5996 21.2002c0.800781 0.600586 2.2002 0.600586 3.10059 0l24 -16l0.899414 31.4004
c0 0.899414 0.5 2 1.40039 2.59961l58.9004 36c1.09961 0.600586 2.19922 0.600586 3.09961 0l70 -38.5996c0.5 -0.600586 1.09961 -1.10059 1.40039 -2zM232.6 216.9l-100.6 -57.2002l14 -96.6006l90.5996 61.2002zM224.9 396.9l-120.9 -46.6006l19.7002 -134.8
l106.6 55.4004zM44 274.9l73.0996 -57.2002l-19.3994 132.899l-79.7002 49.4004zM74.5996 127.1l64.8008 -60.7998l-13.7002 93.4004l-70 58.2998zM98.9004 9.40039l57.6992 -61.2002l-9.69922 67.3994l-61.7002 60.9004zM163.4 -55.0996l78.1992 62.2998l-3.09961 70
l-85.7002 -61.4004zM245.4 60l27.0996 -22.9004l-0.599609 68.3008l-29.4004 22.5996c0 -2.2998 1.2002 -6.2998 -1.09961 -8l-22.3008 -14.9004l24.3008 -20c2.89941 -2.19922 2 -21.6992 2 -25.0996zM339.7 85.4004l4.2002 66.8994l-65.7002 -46.8994l0.599609 -68.6006z
M367.4 111.1l5.7998 66.6006l-64.6006 40.5996l-0.599609 -30l41.2002 -27.2002c0.799805 -0.599609 1.39941 -1.69922 1.09961 -2.59961l-2 -34zM422 150.9l8.5 63.3994l-51.0996 -36.5996l-5.7002 -65.1006z" />
    <glyph glyph-name="quora" unicode="&#xf2c4;" 
d="M440.5 61.2998c1.7998 -18 -7.2002 -93.2998 -89 -93.2998c-49.5 0 -75.5 28.7002 -95.2002 62.2998c-117.7 -32.5996 -249 54.9004 -249 189c0 117 98 196.7 197.7 196.7c101.8 0 198.5 -79.2002 198.4 -196.7c0 -65.5 -30.5 -118.8 -74.7002 -153
c14.2002 -21.5996 29 -35.7998 49.5 -35.7998c22.5 0 31.5 17.2998 33 30.7998h29.2998zM297 118.8c11.2998 24.9004 16.7998 58.7002 16.7002 100.5c0 104.2 -32.5 157.7 -108.7 157.7c-75 0 -107.5 -53.5 -107.5 -157.9c0 -103.699 32.5 -156.699 107.5 -156.699
c12 0 22.7002 1.19922 32.7002 4.19922c-15.5 30.5 -33.7002 61.3008 -69.2002 61.3008c-6.7998 0 -13.5996 -1 -19.7998 -4l-12.2002 24.2998c14.7002 12.7998 38.5 22.7998 69 22.7998c47.7998 0 72 -23 91.5 -52.2002z" />
    <glyph glyph-name="free-code-camp" unicode="&#xf2c5;" horiz-adv-x="576" 
d="M97.2197 351.79c-43.2197 -41.6201 -64.9697 -92.5898 -64.8193 -154.021c0.15918 -68 23.0293 -122.67 67.4795 -165c9.33984 -8.34961 13.2002 -14.9199 13.2002 -20.5498c0 -2.75 -1.90039 -5.62012 -3.81055 -8.37988
c-2.19141 -2.1543 -5.12598 -3.56836 -8.36914 -3.83984c-10.2803 0 -24.6807 12.1396 -43.4707 35.79c-36.5898 44.8701 -53.1992 94.3398 -54.0596 161.87s20.3096 113.34 61.79 160.6c14.9199 16.9004 27.3594 25.6904 35.8398 25.6904
c3.12402 -0.0712891 6.03027 -1.11914 8.38965 -2.83984c1.91016 -1.91016 3.83008 -4.66016 3.83008 -7.41992c0 -4.78027 -5.63965 -11.25 -16 -21.9004zM239.47 27.9297c0.580078 -0.370117 0.910156 -0.549805 0.910156 -0.549805zM333.26 27.3799l0.169922 0.129883
c-0.189453 -0.129883 -0.259766 -0.179688 -0.169922 -0.129883zM336.39 185.56c16.2305 -4.14941 24.04 24.04 30.0303 30.0508c84.71 -110.101 -27.5098 -184.45 -33 -188.101c3.86035 3.04004 44.3301 49.7705 21.5801 76.5498
c-1 1.03027 -67.2998 -20.0596 -54.8398 53.54c8.30957 48.6807 -7.60059 71.1309 -7.60059 71.1309c-17.9697 -37.29 -32.5 -53.8604 -43.5 -72.1602c-56.9492 -92.9404 -16.2793 -124.29 -9.5498 -128.641c-10.54 6.5 -108.27 70.8799 -34 175.23
c78.3701 110.189 62.8301 159.57 62.8301 159.57c118.46 -94.2803 51.8105 -173.021 68.0498 -177.171zM510.88 358.31c41.4404 -47.3096 62.6699 -93.1592 61.75 -160.649s-17.4697 -117.021 -54.0596 -161.87c-18.79 -23.6602 -33.1904 -35.79 -43.4707 -35.79
c-3.24219 0.279297 -6.17676 1.69629 -8.36914 3.84961c-1.91016 2.76074 -3.81055 5.63086 -3.81055 8.38086c0.0205078 5.62988 3.86035 12.1992 13.2002 20.5498c44.4795 42.3701 67.3203 97 67.4795 165c0.180664 61.4697 -21.5898 112.45 -64.8193 154.06
c-10.4004 10.6406 -16 17.1201 -16 21.9004c0 2.75977 1.91992 5.50977 3.83008 7.41992c2.35938 1.7207 5.26562 2.76855 8.38965 2.83984c8.51953 0 21 -8.79004 35.8799 -25.6904z" />
    <glyph glyph-name="telegram" unicode="&#xf2c6;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM369.8 270.1c3.60059 16.8008 -6.09961 23.5 -17.2002 19.5l-239.1 -92.1992c-16.4004 -6.40039 -16.0996 -15.5 -2.7998 -19.7002l61.2002 -19.1006l142 89.4004
c6.59961 4.40039 12.6992 1.90039 7.69922 -2.5l-114.899 -103.8l-4.40039 -63.1006c6.40039 0 9.2002 2.80078 12.5 6.10059l29.9004 28.7998l62 -45.7002c11.2998 -6.39941 19.3994 -3.09961 22.3994 10.5z" />
    <glyph glyph-name="bandcamp" unicode="&#xf2d5;" horiz-adv-x="512" 
d="M256 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM304.2 113.9l84.7002 156.1h-181l-84.7002 -156.1h181z" />
    <glyph glyph-name="grav" unicode="&#xf2d6;" horiz-adv-x="512" 
d="M301.1 236c4.40039 -4.40039 4.40039 -11.9004 0 -16.2998l-9.69922 -9.7002c-4.40039 -4.7002 -11.9004 -4.7002 -16.6006 0l-10.5 10.5c-4.39941 4.7002 -4.39941 11.9004 0 16.5996l9.7002 9.7002c4.40039 4.40039 11.9004 4.40039 16.5996 0zM270.9 255.7
c-2.7002 -2.7998 -7.40039 -2.7998 -10.5 0c-2.80078 3 -2.80078 7.7002 0 10.5c3 3 7.69922 3 10.5 0c3 -2.7002 3 -7.5 0 -10.5zM244.9 250.4c2.7998 3 7.5 3 10.5 0c2.7998 -2.7002 2.7998 -7.40039 0 -10.2002c-3 -3 -7.7002 -3 -10.5 0c-3 2.7002 -3 7.39941 0 10.2002
zM317.4 263.7c-19.9004 14.3994 -33.8008 43.2002 -11.9004 68.0996c21.5996 24.9004 40.7002 17.2002 59.7998 -0.799805c11.9004 -11.2998 29.2998 -24.9004 17.2002 -48.2002c-12.5 -23.5 -45.0996 -33.2002 -65.0996 -19.0996zM365.1 308.2
c-8.89941 10 -23.2998 -6.90039 -15.5 -16.1006c7.40039 -9 32.1006 -2.39941 15.5 16.1006zM504 192c0 -137 -111 -248 -248 -248s-248 111 -248 248s111 248 248 248s248 -111 248 -248zM437.8 149.4c2.5 16.0996 -20.2002 16.5996 -25.2002 25.6992
c-13.5996 24.1006 -27.6992 36.8008 -54.5 30.4004c11.6006 8 23.5 6.09961 23.5 6.09961c0.300781 6.40039 0 13 -9.39941 24.9004c3.89941 12.5 0.299805 22.4004 0.299805 22.4004c15.5 8.59961 26.7998 24.3994 29.0996 43.1992
c3.60059 31 -18.7998 59.2002 -49.7998 62.8008c-22.0996 2.5 -43.7002 -7.7002 -54.2998 -25.7002c-23.2002 -40.1006 1.40039 -70.9004 22.4004 -81.4004c-14.4004 1.40039 -34.3008 11.9004 -40.1006 34.2998c-6.59961 25.7002 2.7998 49.8008 8.90039 61.4004
c0 0 -4.40039 5.7998 -8 8.90039c0 0 -13.7998 0 -24.6006 -5.30078c11.9004 15.2002 25.2002 14.4004 25.2002 14.4004c0 6.40039 -0.599609 14.9004 -3.59961 21.5996c-5.40039 11 -23.7998 12.9004 -31.7002 -2.7998c0.0996094 0.200195 0.299805 0.400391 0.400391 0.5
c-5 -11.8994 -1.10059 -55.8994 16.8994 -87.2002c-2.5 -1.39941 -9.09961 -6.09961 -13 -10c-21.5996 -9.69922 -56.2002 -60.2998 -56.2002 -60.2998c-28.1992 -10.7998 -77.1992 -50.8994 -70.5996 -79.7002c0.299805 -3 1.40039 -5.5 3 -7.5
c-2.7998 -2.19922 -5.5 -5 -8.2998 -8.2998c-11.9004 -13.7998 -5.2998 -35.2002 17.7002 -24.3994c15.7998 7.19922 29.5996 20.1992 36.2998 30.3994c0 0 -5.5 5 -16.2998 4.40039c27.6992 6.59961 34.2998 9.39941 46.1992 9.09961c8 -3.89941 8 34.2998 8 34.2998
c0 14.7002 -2.19922 31 -11.0996 41.5c12.5 -12.1992 29.0996 -32.6992 28 -60.5996c-0.799805 -18.2998 -15.2002 -23 -15.2002 -23c-9.09961 -16.5996 -43.2002 -65.9004 -30.3994 -106c0 0 -9.7002 14.9004 -10.2002 22.0996
c-17.4004 -19.3994 -46.5 -52.2998 -24.6006 -64.5c26.6006 -14.6992 108.801 88.6006 126.2 142.301c34.6006 20.7998 55.4004 47.2998 63.9004 65c22 -43.5 95.2998 -94.5 101.1 -59z" />
    <glyph glyph-name="etsy" unicode="&#xf2d7;" horiz-adv-x="384" 
d="M384 100c-1.75 -10.75 -13.75 -110 -15.5 -132c-117.879 4.29883 -219.895 4.74316 -368.5 0v25.5c45.457 8.94824 60.627 8.01855 61 35.25c1.79297 72.3223 3.52441 244.143 0 322c-1.0293 28.46 -12.1299 26.7646 -61 36v25.5
c73.8857 -2.3584 255.933 -8.55078 362.999 3.75c-3.5 -38.25 -7.75 -126.5 -7.75 -126.5h-23.249c-11.0527 42.835 -18.7588 90.5 -54.75 90.5h-137c-10.25 0 -10.75 -3.5 -10.75 -9.75v-163.75c58 -0.5 88.5 2.5 88.5 2.5c29.7695 0.951172 27.5596 8.50195 40.75 65.251
h25.75c-4.40723 -101.351 -3.91016 -61.8291 -1.75 -160.25h-25.75c-9.15527 40.0859 -9.06543 61.0449 -39.501 61.5c0 0 -21.5 2 -88 2v-139c0 -26 14.25 -38.25 44.25 -38.25h89.251c63.6357 0 66.5645 24.9961 98.751 99.75h22.249v-0.000976562z" />
    <glyph glyph-name="imdb" unicode="&#xf2d8;" 
d="M400 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h352zM21.2998 218.8h-0.299805c0.0996094 0.100586 0.200195 0.299805 0.299805 0.400391v-0.400391zM97 128.2v127.8h-33v-127.8h33z
M210.2 128.2v127.8h-43l-7.60059 -59.9004c-2.69922 20 -5.39941 40.1006 -8.69922 59.9004h-42.8008v-127.8h29v84.5l12.2002 -84.5h20.6006l11.5996 86.3994v-86.3994h28.7002zM221.6 128.2c86.1006 -0.100586 75 -6 75 82.5c0 8.09961 0.300781 16.7998 -1.39941 24.3994
c-4.2998 22.5 -31.4004 20.9004 -49 20.9004h-24.6006v-127.8zM382.5 157.4v36c0 17.2998 -0.799805 30.0996 -22.2002 30.0996c-8.89941 0 -14.8994 -2.7002 -20.8994 -9.2002v41.7002h-31.7002v-127.8h29.7998l1.90039 8.09961
c5.69922 -6.7998 11.8994 -9.7998 20.8994 -9.7998c19.7998 0 22.2002 15.2002 22.2002 30.9004zM265 218.1v-49.2998c0 -9.7002 1.90039 -18.7002 -10.2998 -18.3994v83.6992c11.8994 0 10.2998 -6.2998 10.2998 -16zM350.5 192v-32.7002
c0 -5.39941 1.59961 -14.3994 -6.2002 -14.3994c-1.59961 0 -3 0.799805 -3.7998 2.39941c-2.2002 5.10059 -1.09961 44.1006 -1.09961 44.7002c0 3.7998 -1.10059 12.7002 4.89941 12.7002c7.2998 0 6.2002 -7.2998 6.2002 -12.7002z" />
    <glyph glyph-name="ravelry" unicode="&#xf2d9;" horiz-adv-x="512" 
d="M498.252 213.777c0.129883 -0.613281 0.322266 -1.21777 0.561523 -1.78223v-37.0557c-0.194336 -0.300781 -0.516602 -0.583008 -0.552734 -0.900391c-0.619141 -5.36426 -0.837891 -10.8076 -1.87012 -16.0869c-2.06934 -10.6074 -4.15723 -21.2393 -7.0166 -31.6523
c-4.94531 -18.0205 -12.7578 -34.8809 -22.2998 -50.9258c-8.94336 -15.126 -19.4043 -28.9668 -31.4268 -41.6387c-3.74609 -3.92188 -7.54688 -7.80078 -11.5107 -11.5c-5.31152 -4.95703 -10.5146 -10.1094 -16.2998 -14.457
c-9.3418 -7.02344 -18.9883 -13.6533 -28.7373 -20.1006c-15.083 -9.81543 -31.6211 -17.9053 -48.9512 -23.8174c-15.3828 -5.38281 -31.1533 -9.38574 -47.4893 -10.7178c-2.52734 -0.206055 -5.02051 -0.753906 -7.52734 -1.14258h-32.2891
c-0.358398 0.245117 -0.762695 0.436523 -1.18945 0.55957c-6.1377 0.620117 -12.3418 0.863281 -18.4121 1.87305c-13.8301 2.22949 -27.5977 5.58398 -40.6416 9.83496c-19.5498 6.43359 -38.4463 15.0176 -55.8994 25.2773
c-15.0488 8.79004 -28.9365 18.9688 -41.7871 30.5859c-9.6875 8.70605 -18.3936 18.0898 -26.3584 28.416c-9.38184 12.1963 -17.4385 25.4316 -24 39.5283c-7.5918 16.6592 -13.3467 34.7812 -16.7295 53.2998c-2.35547 13.1611 -3.85059 26.5459 -4.4248 40.2402
c-0.136719 3.0332 -0.209961 5.74121 -0.209961 8.80859c0 9.05566 0.599609 17.9717 1.76172 26.7119c1.52637 11.874 4.15625 23.6367 7.69043 34.7588c5.05762 15.7021 12.0283 30.7871 20.4941 44.6006c9.58203 15.9961 20.7793 30.6025 33.6484 43.9502
c9.55469 9.83496 19.7539 19.0605 29.9268 28.2676c5.70605 5.1582 11.8066 9.9082 17.9736 14.5186c12.0029 9.04004 24.6963 17.1025 38.0801 24.1572c12.5137 6.63281 25.9795 12.1963 39.7686 16.3555c10.9453 3.41016 22.5254 5.84375 34.2559 7.09961
c2.42773 0.225586 4.82617 0.761719 7.23633 1.15039c10.7627 -0.00195312 21.5254 0 32.2881 0.00585938c0.299805 -0.195312 0.583984 -0.516602 0.899414 -0.552734c6.87793 -0.81543 13.8467 -1.16797 20.627 -2.48242
c11.2432 -2.18359 22.4971 -4.51465 33.5156 -7.61523c19.999 -5.78125 39.2266 -14.2031 56.7227 -24.668c17.2832 -10.0947 32.9639 -22.1357 47.1133 -36.1152c6.71973 -6.90527 12.9209 -14.0508 18.8174 -21.6895c13.4639 -16.959 24.0283 -36.4561 30.874 -57.5
c3.88867 -11.8086 7.16211 -24.2148 9.62207 -36.5996c2.0459 -10.1748 2.53809 -20.6602 3.74609 -31zM337.135 214.927l0.00488281 67.2695c-35.2686 0 -53.1152 -9.36719 -62.04 -36.1895v31.9316h-73.5176v-190.738h73.5127v93.667
c0 22.1396 6.37012 37.04 33.5703 37.04c11.8984 0 28.4697 -2.98047 28.4697 -2.98047z" />
    <glyph glyph-name="sellcast" unicode="&#xf2da;" 
d="M353.4 416c52.0996 0 94.6992 -42.5996 94.6992 -94.5996v-258.801c0 -52 -42.5996 -94.5996 -94.6992 -94.5996h-258.7c-52.1006 0 -94.7002 42.5996 -94.7002 94.7002v258.7c0 52 42.5996 94.5996 94.7002 94.5996h258.7zM303.4 99.5996
c27.8994 48.2002 11.1992 110.5 -37.2002 138.5c-18.6006 10.8008 0.0996094 -0.0996094 -18.5 10.7002c-25 14.4004 -46.2002 -23.2998 -21.6006 -37.5c18 -10.2002 0.800781 -0.399414 18.6006 -10.5996c27.5996 -16 37.2002 -51.7998 21.2998 -79.4004
c-16 -27.5996 -51.7998 -37.2002 -79.4004 -21.2998c-18.5996 10.7998 0.100586 -0.0996094 -18.5 10.7002c-10.2998 6 -23.5996 2.39941 -29.5 -7.90039l-15.6992 -27.2002c-12.6006 -21.7998 19.3994 -53 42.2998 -13.1992c48.2998 -27.7002 110.3 -11 138.2 37.1992z
M325.2 308.4c14.2998 24.7998 -23.4004 46.3994 -37.7002 21.5l-4.7998 -8.40039c-48.2998 27.7002 -110.3 11 -138.2 -37.2002c-27.7998 -48.2998 -11.0996 -110.6 37.0996 -138.399c18.6006 -10.8008 -0.0996094 0.0996094 18.5 -10.7002
c25 -14.4004 46.2002 23.2998 21.6006 37.5c-0.100586 0 -18.6006 10.5996 -18.6006 10.5996c-27.5996 16 -37.2998 51.7998 -21.2998 79.4004c16 27.5996 51.7998 37.2002 79.4004 21.2998c18.5996 -10.7998 -0.100586 0.0996094 18.5 -10.7002
c10.2002 -5.09961 20 -2.89941 26.5 3.60059c2.7002 2.69922 2 2 19 31.5z" />
    <glyph glyph-name="superpowers" unicode="&#xf2dd;" 
d="M448 416l-87.2002 -87c39.7002 -38.7002 61.2002 -92.7002 57.7002 -148.2c-5.40039 -93 -76.9004 -167.3 -168.7 -179.8c-83.2998 -11 -166.5 -22 -249.8 -33l86.7998 86.7998c-39.7998 38.7002 -61.0996 92.7002 -57.7998 148.2c5.7002 93.2998 77 167.5 169 180
c83.2002 11 166.7 22 250 33zM368.3 183.7c4.40039 80 -56.7998 146.3 -136.1 151c-78.7002 4.7998 -148.5 -55.2998 -153 -134.5c-4.40039 -80 56.7998 -146.3 136.3 -151c78.7998 -4.7002 148.6 55 152.8 134.5z" />
    <glyph glyph-name="wpexplorer" unicode="&#xf2de;" horiz-adv-x="512" 
d="M512 192c0 -141.2 -114.7 -256 -256 -256c-141.2 0 -256 114.7 -256 256s114.7 256 256 256s256 -114.7 256 -256zM480 192c0 123.2 -100.3 224 -224 224c-123.5 0 -224 -100.5 -224 -224s100.5 -224 224 -224s224 100.5 224 224zM160.9 323.4l86.8994 -37.1006
l-37.0996 -86.8994l-86.9004 37.0996zM270.9 154.3l46.5996 -94h-14.5996l-50 100l-48.9004 -100h-14l51.0996 106.9l-22.2998 9.39941l6 14l68.6006 -29.0996l-6 -14.2998zM259.1 270.6l68.6006 -29.3994l-29.4004 -68.2998l-68.2998 29.0996zM339.4 227.7
l54.5996 -23.1006l-23.4004 -54.2998l-54.2998 23.1006z" />
    <glyph glyph-name="meetup" unicode="&#xf2e0;" horiz-adv-x="512" 
d="M99 33.7002c1.09961 -5.7002 -2.2998 -11.1006 -8 -12.2998c-5.40039 -1.10059 -10.9004 2.2998 -12 8c-1.09961 5.39941 2.2998 11.0996 7.7002 12.2998c5.39941 1.2002 11.0996 -2.2998 12.2998 -8zM242.1 -37.7002c6.60059 4.60059 15.5 2.7998 19.7002 -3.7002
c4.60059 -6.59961 2.90039 -15.3994 -3.39941 -20c-6.60059 -4.59961 -15.4004 -2.89941 -20 3.7002c-4.30078 6.60059 -2.60059 15.4004 3.69922 20zM156.1 424.6c-6.2998 -1.5 -12.5 2.5 -13.8994 9.10059c-1.2002 6.2998 2.7998 12.5996 9.09961 14
c6.2998 1.5 12.6006 -2.5 13.7002 -9.10059c1.40039 -6.2998 -2.59961 -12.5996 -8.90039 -14zM34.4004 221.7c10 -7.10059 12.5996 -20.7998 5.69922 -31.2002c-6.89941 -10.2998 -20.5996 -12.7998 -30.5996 -5.7002c-10 6.90039 -12.5996 20.9004 -5.7002 30.9004
c6.90039 10.2998 20.6006 12.8994 30.6006 6zM306.4 392.6c-10.3008 -6.2998 -23.7002 -2.89941 -29.7002 7.40039c-6.2998 10.5996 -2.90039 24.2998 7.39941 30.5996c10.3008 6.30078 23.7002 2.90039 30 -7.69922c6 -10.3008 2.90039 -24 -7.69922 -30.3008zM115.3 334.6
c-7.5 -5.19922 -18 -3.5 -23.0996 4.30078c-5.10059 7.69922 -3.40039 18.2998 4.2998 23.6992c7.40039 5.10059 18 3.40039 23.0996 -4.2998c5.10059 -7.7002 3.40039 -18.2998 -4.2998 -23.7002zM487.6 178.6c7.40039 1.40039 14.8008 -3.5 16.3008 -10.8994
c1.69922 -7.7002 -3.2002 -15.2002 -10.6006 -16.6006c-7.39941 -1.69922 -14.8994 3.2002 -16.2998 10.6006c-1.7002 7.7998 3.2002 15.2002 10.5996 16.8994zM527.3 235.4c1.40039 -5.7002 -2.2998 -11.1006 -7.7002 -12.6006
c-5.69922 -1.09961 -11.1992 2.60059 -12.2998 8c-1.09961 5.7002 2.2998 11.5 8 12.6006c5.40039 1.09961 10.9004 -2.30078 12 -8zM447 309.1c8.2998 6 20 3.80078 25.7002 -4.89941c5.7002 -8.60059 3.7002 -20.2998 -4.60059 -26.2998
c-8.59961 -5.7002 -20.2998 -3.7002 -26 4.89941c-5.69922 8.60059 -3.69922 20.2998 4.90039 26.2998zM440.7 169.7c26.2998 -43.1006 15.0996 -100 -26.2998 -129.101c-17.4004 -12.2998 -37.1006 -17.6992 -56.9004 -17.0996
c-12 -47.0996 -69.4004 -64.5996 -105.1 -32.5996c-1.10059 -0.900391 -2.60059 -1.7002 -3.7002 -2.90039c-39.1006 -27.0996 -92.2998 -17.4004 -119.4 22.2998c-9.7002 14.2998 -14.5996 30.6006 -15.0996 46.9004c-65.4004 10.8994 -90 94 -41.1006 139.7
c-28.2998 46.8994 0.600586 107.399 53.4004 114.899c25.0996 66.2002 107.6 97.6006 163.6 54.2002c67.4004 22.2998 136.301 -29.4004 130.9 -101.1c41.0996 -12.6006 52.7998 -66.9004 19.7002 -95.2002zM370.7 95.4004
c-3.10059 20.5996 -40.9004 4.59961 -43.1006 27.0996c-3.09961 32 43.7002 101.1 40 128c-3.39941 24 -19.3994 29.0996 -33.3994 29.4004c-13.4004 0.299805 -16.9004 -2 -21.4004 -4.60059c-2.89941 -1.7002 -6.59961 -4.89941 -11.7002 0.299805
c-6.2998 6 -11.0996 11.7002 -19.3994 12.9004c-12.2998 2 -17.7002 -2 -26.6006 -9.7002c-3.39941 -2.89941 -12 -12.8994 -20 -9.09961c-3.39941 1.7002 -15.3994 7.7002 -24 11.3994c-16.2998 7.10059 -40 -4.59961 -48.5996 -20
c-12.9004 -22.8994 -38 -113.1 -41.7002 -125.1c-8.59961 -26.5996 10.9004 -48.5996 36.9004 -47.0996c11.0996 0.599609 18.2998 4.59961 25.3994 17.3994c4 7.40039 41.7002 107.7 44.6006 112.601c2 3.39941 8.89941 8 14.5996 5.09961
c5.7002 -3.09961 6.90039 -9.40039 6 -15.0996c-1.09961 -9.7002 -28 -70.9004 -28.8994 -77.7002c-3.40039 -22.9004 26.8994 -26.6006 38.5996 -4c3.7002 7.09961 45.7002 92.5996 49.4004 98.2998c4.2998 6.2998 7.39941 8.2998 11.6992 8
c3.10059 0 8.30078 -0.900391 7.10059 -10.9004c-1.40039 -9.39941 -35.1006 -72.2998 -38.9004 -87.6992c-4.59961 -20.6006 6.60059 -41.4004 24.9004 -50.6006c11.3994 -5.7002 62.5 -15.7002 58.5 11.1006zM376.4 3.09961c10.5996 7.5 24.8994 4.60059 32.2998 -6
c7.09961 -10.5996 4.59961 -25.1992 -6 -32.5996c-10.6006 -7.09961 -24.9004 -4.59961 -32 6c-7.2002 10.5996 -4.60059 25.2002 5.7002 32.5996z" />
    <glyph glyph-name="font-awesome-alt" unicode="&#xf35c;" 
d="M339.3 276.8c5.40039 0 9.5 -3 7.7002 -7.09961v-134.4c0 -4.2002 -3 -6 -7.2002 -7.7998c-15.5996 -7.09961 -33.5 -13.7002 -52 -13.7002c-26.2998 0 -38.2002 16.1006 -69.2998 16.1006c-22.7002 0 -46 -8.30078 -65.7002 -16.7002
c-0.599609 -0.600586 -1.7998 -1.2002 -3 -1.2002v-44.2002c0 -1.7998 0 -3 -0.599609 -4.7998v-1.2998c-2.40039 -7.7002 -9.5 -13.7002 -18.5 -13.7002c-10.7002 0 -19.7002 8.90039 -19.7002 19.7002v212.1c-7.7002 6 -12.5 15.5 -12.5 25.7002
c0 18 14.2998 32.2998 32.2998 32.2998s32.2998 -14.3994 32.2998 -32.2998c0 -10.7998 -4.69922 -19.7002 -12.5 -25.7002v-17.8994c1.2002 0.599609 3 1.19922 4.80078 1.7998c17.8994 7.09961 39.3994 13.7002 59.6992 13.7002
c22.1006 0 39.4004 -5.90039 59.1006 -13.7002c4.09961 -1.7998 8.2998 -2.40039 12.5 -2.40039c22.7002 0 46.5996 15.5 52.5996 15.5zM397.8 416c27.5 0 50.2002 -22.7002 50.2002 -50.2002v-347.6c0 -27.5 -22.7002 -50.2002 -50.2002 -50.2002h-347.6
c-27.5 0 -50.2002 22.7002 -50.2002 50.2002v347.6c0 27.5 22.7002 50.2002 50.2002 50.2002h347.6zM412.1 18.2998v347.601c0 7.69922 -6.5 14.2998 -14.2998 14.2998v-0.100586h-347.6c-7.7002 0 -14.2998 -6.5 -14.2998 -14.2998v-347.5
c0 -7.7002 6.5 -14.2998 14.2998 -14.2998h347.6c7.7002 0 14.2998 6.5 14.2998 14.2998z" />
    <glyph glyph-name="accessible-icon" unicode="&#xf368;" 
d="M423.9 192.2l-12.9004 -157.3c-3.2998 -40.7002 -63.9004 -35.1006 -60.5996 4.89941l10 122.5l-41.1006 -2.2998c10.1006 -20.7002 15.7998 -43.9004 15.7998 -68.5c0 -41.2002 -16.0996 -78.7002 -42.2998 -106.5l-39.2998 39.2998
c57.9004 63.7002 13.0996 167.2 -74 167.2c-25.9004 0 -49.5 -9.90039 -67.2002 -26l-39.2998 39.2998c22 20.7002 50.0996 35.1006 81.4004 40.2002l75.2998 85.7002l-42.6006 24.7998l-51.5996 -46c-30 -26.7998 -70.5996 18.5 -40.5 45.4004l68 60.6992
c9.7998 8.80078 24.0996 10.2002 35.5 3.60059c0 0 139.3 -80.9004 139.5 -81.1006c16.2002 -10.0996 20.7002 -36 6.09961 -52.5996l-58.3994 -66.5l106.1 5.90039c18.5 1.09961 33.6006 -14.4004 32.1006 -32.7002zM359 346.2
c-28.0996 0 -50.9004 22.7998 -50.9004 50.8994c0 28.1006 22.8008 50.9004 50.9004 50.9004s50.9004 -22.7998 50.9004 -50.9004c0 -28.0996 -22.8008 -50.8994 -50.9004 -50.8994zM179.6 -8.5c20.8008 0 40.1006 6.40039 56.1006 17.2998l39.7002 -39.7002
c-100.7 -78.8994 -251.4 -8.19922 -251.4 122.5c0 36.1006 12.4004 69.4004 33.2002 95.7002l39.7002 -39.7002c-44.7002 -65.5 2.09961 -156.1 82.6992 -156.1z" />
    <glyph glyph-name="accusoft" unicode="&#xf369;" horiz-adv-x="640" 
d="M322.1 196c-1.69922 -1.59961 -89.5996 -82.5 -90.1992 -83.2998l-92.6006 -33.7998c-4.7998 -2 -7.59961 -3.7002 -7 -8.90039c0.200195 -1.5 0.600586 -22.5996 1 -27.7002c-0.700195 -0.5 -0.0996094 0 -0.599609 -0.599609c0 0 -113.7 -36.6006 -114.5 -36.6006
c-14.1006 -5.09961 -22.7002 -8.2998 -15.7002 1.7002c1.2998 1.7998 234.4 231.601 243.4 240.9c13 13.5 25 15.0996 25 15.0996l51.1992 -65.7998v-1zM482.2 75.9004c-5.7002 6.89941 -232.2 297.1 -239.9 306.6c-13.7002 17.2002 0 16.7998 19.2002 16.9004
c9.7002 0.0996094 106.3 0.599609 116.5 0.599609c24.0996 0.0996094 28.7002 -0.599609 38.4004 -12.7998c2.09961 -2.7002 205.1 -245.8 207.199 -248.3c5.5 -6.7002 15.2002 -19.1006 7.2002 -23.4004c-2.39941 -1.2998 -114.6 -47.7002 -117.8 -48.9004
c-10.0996 -4 -17.5 -6.7998 -30.7998 9.30078zM634.9 74.2998c6 -1.39941 7.09961 -4.2002 1.69922 -8.2002c-2 -1.39941 -123.699 -76.5996 -125.8 -77.7998c-15.0996 -8.7998 -38 -1.59961 -53.5996 1.7002c-7.10059 1.5 -305.3 68.2998 -308 69.0996
c-2.60059 0.900391 -4.40039 1 -4.60059 3.5c-0.299805 4 6 5.60059 11.1006 7.60059c5 1.89941 145.3 52.5996 150.2 54.7002c4.7998 2.09961 11.2998 2.69922 14.3994 2.89941c4.90039 0.299805 59.9004 -8.39941 65.2998 -9.2998l57.1006 -74
c9.7998 -11.4004 20.7002 -21.9004 36.7002 -14.5996c2.5 1.19922 117.5 51.5996 117.5 51.5996c13.3994 -2.5 35.6992 -6.90039 38 -7.2002z" />
    <glyph glyph-name="adversal" unicode="&#xf36a;" horiz-adv-x="512" 
d="M482.1 416c24.5 0 29.9004 -5.59961 29.9004 -30.2002v-388.1c0 -24.5 -5.5 -29.7002 -29.9004 -29.7002h-453.399c-22.9004 0 -28.7002 5.59961 -28.7002 28.9004v390.199c0 23 5.7998 28.9004 28.7002 28.9004h453.399zM178.4 227.7
c9.39941 -7.2002 12.3994 -17.1006 11.2998 -27.2998c-1.7998 -19.1006 -75.7998 -11.4004 -114 -30.9004c-27.2002 -13.9004 -42.7002 -41.7002 -39.6006 -71c6.7002 -64.7002 89.6006 -79.7002 147 -43.2998c4.60059 3.2002 8.30078 4.89941 11.9004 1
c2.09961 -2.60059 2 -4 3.90039 -6.2002c7.2998 -9.59961 38.1992 -14.0996 46.5996 -7.40039c3.09961 2.80078 4.59961 6.30078 2.7002 10.7002c-13.6006 30.5 -6.60059 63 -9.2998 88.7998c0 69.3008 6.39941 111.7 -34.5 128.5
c-41.9004 17.4004 -84.2002 16.6006 -125.301 -4.7998c-16.2998 -9 -53.6992 -52.8994 -24.8994 -64.2998c5.2998 -2.2998 12.7998 -4 22.5 -5.5c8.2002 -1.2002 13.2002 -2.7998 17.5 8.2998c12.0996 32.1006 56.7002 43.6006 84.2002 23.4004zM465.1 5.7002
c0 14.2998 -9.7998 9.89941 -16.5996 9.89941c-132.3 0.400391 -264.5 0.400391 -396.8 0c-6.60059 0 -16.7002 4.80078 -17.1006 -9.09961c-0.399414 -15.5 10.4004 -10.7002 17.8008 -10.7002h394.899c6.7002 0 17.7998 -5.2002 17.7998 9.90039zM468.9 346.2
c0 0.200195 0 0.299805 0.0996094 0.5c0 9.89941 -3.5 15.0996 -13.5996 14.2998c-3.10059 -0.400391 -6.60059 0 -9.7002 0c-26.1006 0 -26 0 -26 -26.2002v-71c-79.2002 45.6006 -124.3 -6.59961 -136.101 -30.5c-16.3994 -32.8994 -21.7998 -66.5996 -15.6992 -100
c16.2998 -92.2998 91 -114.899 144.399 -85.2002c4.60059 2.80078 6.60059 7.5 12.4004 -1.19922c8.59961 -12.7002 23.7002 -5.2002 36.0996 -5.60059c7.40039 0 8.10059 8.2002 8.10059 13.9004v291zM417.4 113.9c-19.5 -47.6006 -72.9004 -43.3008 -90 -5.2002
c-15.1006 33.2998 -15.5 68.2002 0.399414 101.5c16.2998 34.0996 59.7002 35.7002 81.5 4.7998c20.6006 -28.7998 14.9004 -84.5996 8.10059 -101.1zM122.6 78.5996c-7.5 1.30078 -33 3.30078 -33.6992 27.8008c-0.400391 13.8994 7.7998 23 19.7998 25.7998
c24.3994 5.89941 49.2998 9.89941 73.7002 14.7002c8.89941 2 7.39941 -4.40039 7.7998 -9.5c1.39941 -33 -26.1006 -59.2002 -67.6006 -58.8008z" />
    <glyph glyph-name="affiliatetheme" unicode="&#xf36b;" horiz-adv-x="512" 
d="M159.7 210.6c-51.2998 -70.8994 -116.601 -110.8 -145.7 -89.1992c-29.2002 21.6992 -11.2002 96.5996 40.2002 167.5c51.2998 70.8994 116.6 110.8 145.7 89.1992c29.0996 -21.5996 11.0996 -96.5996 -40.2002 -167.5zM510.9 267.9
c0.699219 -8.2002 1.09961 -16.5 1 -25c0 -151.801 -121.601 -274.9 -271.601 -274.9c-82.8994 0 -157.2 37.5996 -207 96.9004c71.2998 19.3994 130.5 68.3994 164.101 133.199c7.69922 -32.5996 24 -58.5996 49 -73.7998c72.5996 -44.0996 190.699 20.2002 264.5 143.601z
" />
    <glyph glyph-name="algolia" unicode="&#xf36c;" 
d="M229.3 265.4c49.2002 0 89.2002 -39.9004 89.2002 -89.2002s-39.9004 -89.2002 -89.2002 -89.2002s-89.2002 39.9004 -89.2002 89.2002s39.9004 89.2002 89.2002 89.2002zM292 208.8c1.2998 0.700195 1.7998 2.40039 1.09961 3.7002
c-12.1992 21.4004 -34.8994 36.0996 -61.0996 37.0996c-1.40039 0.100586 -2.7002 -1.09961 -2.7002 -2.59961v-66.5c0 -1.90039 2 -3.2002 3.7998 -2.2998zM389.1 416c32.5 0 58.9004 -26.4004 58.8008 -58.9004v-330.199c0 -32.5 -26.3008 -58.9004 -58.9004 -58.9004
h-330.1c-32.5 0 -58.9004 26.4004 -58.9004 59v330.1c0 32.5 26.4004 58.9004 58.9004 58.9004h330.199zM186.5 331.3h0.0996094v-15.7998c0 -1.7002 1.7002 -3 3.40039 -2.5c12.7002 3.7002 25.9004 5.5 39.4004 5.5c13 0 25.7998 -1.7002 38.0996 -5.09961
c1.59961 -0.5 3.2998 0.699219 3.2998 2.5v15.3994c0 10.7998 -8.7002 19.5 -19.5 19.5h-45.2998c-10.7998 0 -19.5 -8.7002 -19.5 -19.5zM102.1 294.3c-7.59961 -7.59961 -7.59961 -19.8994 0 -27.3994l7.7002 -7.7002c1.10059 -1.2002 3 -1 4 0.299805
c4.40039 6.09961 9.40039 12 14.7998 17.4004c5.5 5.5 11.4004 10.3994 17.6006 14.8994c1.2998 1 1.39941 2.90039 0.299805 4l-7.7002 7.7002c-7.59961 7.59961 -19.8994 7.59961 -27.5 0zM229.3 49.5c69.9004 0 126.601 56.7998 126.601 126.6
c0 70 -56.6006 126.601 -126.601 126.601c-69.8994 0 -126.6 -56.7002 -126.6 -126.601c0 -69.8994 56.5996 -126.6 126.6 -126.6z" />
    <glyph glyph-name="amilia" unicode="&#xf36d;" 
d="M240.1 416c134.101 0 191.9 -55.7002 192 -136v-296.6c0 -3 -1 -8.10059 -5.09961 -9.10059c-4 -1 -57.2998 -0.700195 -66.5 -0.700195s-56.7998 1 -59.9004 2c-4 0.900391 -6.09961 6.10059 -6.09961 9.10059v25.3994
c-39.5996 -21.3994 -105.5 -42.0996 -153.3 -42.0996c-109.7 0 -124.9 85.7002 -124.9 104s-5.09961 95.5 30.4004 111.8c31.5 13.2002 156.3 36.5 243.7 47.7998v38.5c0 44.7002 -1 73.1006 -58.9004 73.1006c-55.7998 0 -119.8 -25.4004 -152.3 -47.7002
c-6.10059 -4.09961 -16.2002 -4.09961 -20.2998 6.09961c-5.10059 12.2002 -9.10059 34.5 -10.2002 39.6006c-1.90039 10.2002 2.09961 16.2998 7.2002 19.3994c52.6992 38.5 122.3 55.4004 184.199 55.4004zM290.3 68v106.7c-44.7002 -4.10059 -95.5 -20.2998 -119.8 -33.5
c-21.2998 -10.2002 -18.2998 -40.7002 -18.2998 -52.9004c0.0996094 -11.2002 6.2002 -44.7002 59 -44.7002c30.3994 0 57.7002 11.2002 79.0996 24.4004z" />
    <glyph glyph-name="angrycreative" unicode="&#xf36e;" horiz-adv-x="640" 
d="M640 209.8l-3.2002 -28.2002l-34.5 -2.2998l-2 -18.0996l34.5 2.2998l-3.2002 -28.2002l-34.3994 -2.2002l-2.2998 -20.0996l34.3994 2.2002l-3 -26.1006l-64.7002 -4.09961l12.7002 113.2l-47.2998 -115.4l-31.9004 -2l-23.7998 117.8l30.2998 2l13.6006 -79.3994
l31.7002 82.3994zM426.8 76.5l12.7998 120l28.4004 1.90039l-12.9004 -120.101zM162 59.9004l-19.4004 36l-3.5 -37.4004l-28.1992 -1.7002l2.69922 29.1006c-11 -18 -32 -34.3008 -56.8994 -35.8008c-32.7998 -2 -59.7002 20.9004 -56.4004 58.2002
c2.60059 29.2998 26.7002 62.7998 67.5 65.4004c37.7002 2.39941 47.6006 -23.2002 51.2998 -28.7998l2.80078 30.7998l38.8994 2.5c20.1006 1.2998 38.7002 -3.7002 42.5 -23.7002l2.60059 26.5996l64.7998 4.2002l-2.7002 -27.8994l-36.4004 -2.40039l-1.69922 -17.9004
l36.3994 2.30078l-2.7002 -27.9004l-36.3994 -2.2998l-1.90039 -19.9004l36.2998 2.2998l-2.09961 -20.7998l55 117.2l23.7998 1.59961l32.1006 -110.6l8.89941 85.5996l-22.2998 -1.39941l2.90039 27.8994l75 4.90039l-3 -28l-24.3008 -1.59961l-9.69922 -91.9004
l-58 -3.7002l-4.30078 15.6006l-39.3994 -2.5l-8 -16.3008zM117.7 130.1l-26.4004 -1.69922c-6.7002 12.3994 -14.3994 16.5996 -26.2998 15.7998c-19 -1.2002 -33.2998 -17.5 -34.5996 -33.2998c-1.40039 -16 7.2998 -32.5 28.6992 -31.2002
c12.8008 0.799805 21.3008 8.59961 28.9004 18.8994l27 1.7002zM173.8 137.8c1.2002 12.9004 -7.59961 13.6006 -26.0996 12.4004l-2.7002 -28.5c14.2002 0.899414 27.5 2.09961 28.7998 16.0996zM194.9 67l5.7998 60c-5 -13.5 -14.7002 -21.0996 -27.9004 -26.5996z
M330.3 112l-7.89941 37.7998l-15.8008 -39.2998zM160.2 186.6l-4.2998 17.5l-39.6006 -2.59961l-8.09961 -18.2002l-31.9004 -2.09961l57 121.899l23.9004 1.60059l30.7002 -102l9.89941 104.7l27 1.7998l37.7998 -63.6006l6.5 66.6006l28.5 1.89941l-4 -41.1992
c7.40039 13.5 22.9004 44.6992 63.6006 47.5c40.5 2.7998 52.3994 -29.3008 53.3994 -30.3008l3.30078 32l39.2998 2.7002c12.7002 0.900391 27.7998 -0.299805 36.2998 -9.7002l-4.40039 11.9004l32.2002 2.2002l12.9004 -43.2002l23 45.7002l31 2.2002l-43.6006 -78.4004
l-4.7998 -44.2998l-28.3994 -1.90039l4.7998 44.2998l-15.7998 43c1 -22.2998 -9.2002 -40.0996 -32 -49.5996l25.1992 -38.7998l-36.3994 -2.40039l-19.2002 36.7998l-4 -38.2998l-28.4004 -1.89941l3.30078 31.5c-6.7002 -9.30078 -19.7002 -35.4004 -59.6006 -38
c-26.2002 -1.7002 -45.5996 10.2998 -55.3994 39.1992l-4 -40.2998l-25 -1.59961l-37.6006 63.2998l-6.2998 -66.2002zM436.8 268.7c10.2002 0.700195 17.5 2.09961 21.6006 4.2998c4.5 2.40039 7 6.40039 7.59961 12.0996
c0.599609 5.30078 -0.599609 8.80078 -3.40039 10.4004c-3.59961 2.09961 -10.5996 2.7998 -22.8994 2zM327.7 234c5.59961 -5.90039 12.7002 -8.5 21.2998 -7.90039c4.7002 0.300781 9.09961 1.80078 13.2998 4.10059c5.5 3 10.6006 8 15.1006 14.2998l-34.2002 -2.2998
l2.39941 23.8994l63.1006 4.30078l1.2002 12l-31.2002 -2.10059c-4.10059 3.7002 -7.7998 6.60059 -11.1006 8.10059c-4 1.69922 -8.09961 2.7998 -12.1992 2.5c-8 -0.5 -15.3008 -3.60059 -22 -9.2002c-7.7002 -6.40039 -12 -14.5 -12.9004 -24.4004
c-1.09961 -9.59961 1.40039 -17.2998 7.2002 -23.2998zM126.4 225.8l23.7998 1.60059l-8.2998 37.5996z" />
    <glyph glyph-name="app-store" unicode="&#xf36f;" horiz-adv-x="512" 
d="M255.9 327.1l9.09961 15.7002c5.59961 9.7998 18.0996 13.1006 27.9004 7.5c9.7998 -5.59961 13.0996 -18.0996 7.5 -27.8994l-87.5 -151.5h63.2998c20.5 0 32 -24.1006 23.0996 -40.8008h-185.5c-11.2998 0 -20.3994 9.10059 -20.3994 20.4004
s9.09961 20.4004 20.3994 20.4004h52l66.6006 115.399l-20.8008 36.1006c-5.59961 9.7998 -2.2998 22.1992 7.5 27.8994c9.80078 5.60059 22.2002 2.2998 27.9004 -7.5zM177.2 109.1l-19.6006 -34c-5.59961 -9.7998 -18.0996 -13.0996 -27.8994 -7.5
c-9.7998 5.60059 -13.1006 18.1006 -7.5 27.9004l14.5996 25.2002c16.4004 5.09961 29.7998 1.2002 40.4004 -11.6006zM346.1 170.8h53.1006c11.2998 0 20.3994 -9.09961 20.3994 -20.3994c0 -11.3008 -9.09961 -20.4004 -20.3994 -20.4004h-29.5l19.8994 -34.5
c5.60059 -9.7998 2.30078 -22.2002 -7.5 -27.9004c-9.7998 -5.59961 -22.1992 -2.2998 -27.8994 7.5c-33.5 58.1006 -58.7002 101.601 -75.4004 130.601c-17.0996 29.5 -4.89941 59.0996 7.2002 69.0996c13.4004 -23 33.4004 -57.7002 60.0996 -104zM256 440
c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM472 192c0 119.9 -97.2998 216 -216 216c-119.9 0 -216 -97.2998 -216 -216c0 -119.9 97.2998 -216 216 -216c119.9 0 216 97.2998 216 216z" />
    <glyph glyph-name="app-store-ios" unicode="&#xf370;" 
d="M400 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h352zM127 63.5l19.2998 33.2998c-10.2998 12.5 -23.5 16.2998 -39.5996 11.4004l-14.2998 -24.7002
c-5.5 -9.5 -2.30078 -21.7998 7.2998 -27.2998c9.5 -5.5 21.7998 -2.2998 27.2998 7.2998zM265.9 117.4c8.7998 16.2998 -2.5 40 -22.7002 40h-62.1006l85.8008 148.6c5.5 9.5 2.2998 21.7998 -7.30078 27.2998c-9.5 5.5 -21.7998 2.2998 -27.2998 -7.2998
l-8.89941 -15.4004l-8.90039 15.4004c-5.5 9.5 -17.7002 12.7998 -27.2998 7.2998c-9.5 -5.5 -12.7998 -17.7002 -7.2998 -27.2998l20.5 -35.4004l-65.4004 -113.199h-51c-11 0 -20 -9 -20 -20s9 -20 20 -20h181.9zM364 117.4c11 0 20 8.89941 20 20c0 11 -9 20 -20 20h-52
c-26.2002 45.2998 -45.7998 79.2998 -58.9004 102c-11.8994 -9.80078 -23.7998 -38.8008 -7.09961 -67.8008c16.5 -28.3994 41.0996 -71.1992 74 -128.1c5.5 -9.5 17.7002 -12.7998 27.2998 -7.2998c9.5 5.5 12.7998 17.7002 7.2998 27.2998l-19.5996 33.9004h29z" />
    <glyph glyph-name="apper" unicode="&#xf371;" horiz-adv-x="640" 
d="M42.0996 208.9c22.2002 0 29 -2.80078 33.5 -14.6006h0.800781v22.9004c0 11.2998 -4.80078 15.3994 -17.9004 15.3994c-11.2998 0 -14.4004 -2.5 -15.0996 -12.7998h-38.6006c0.299805 13.9004 1.5 19.1006 5.7998 24.4004
c7.30078 8.7998 18.9004 11.7998 46.1006 11.7998c33 0 47.0996 -5 53.8994 -18.9004c2 -4.2998 4 -15.5996 4 -23.6992v-76.3008h-38.2998l1.2998 19.1006h-1c-5.2998 -15.6006 -13.5996 -20.4004 -35.5 -20.4004c-30.2998 0 -41.0996 10.1006 -41.0996 37.2998
c0 25.2002 12.2998 35.8008 42.0996 35.8008zM59.2002 160.8c13.0996 0 16.8994 3 16.8994 13.4004c0 9.09961 -4.2998 11.5996 -19.5996 11.5996c-13.0996 0 -17.9004 -3 -17.9004 -12.0996c-0.0996094 -10.4004 3.7002 -12.9004 20.6006 -12.9004zM137 255.7h38.2998
l-1.5 -20.6006h0.799805c9.10059 17.1006 15.9004 20.9004 37.5 20.9004c14.4004 0 24.7002 -3 31.5 -9.09961c9.80078 -8.60059 12.8008 -20.4004 12.8008 -48.1006c0 -30 -3 -43.0996 -12.1006 -52.8994c-6.7998 -7.30078 -16.3994 -10.1006 -33.2002 -10.1006
c-20.3994 0 -29.1992 5.5 -33.7998 21.2002h-0.799805v-70.2998h-39.5v169zM217.9 195c0 27.5 -3.30078 32.5 -20.7002 32.5c-16.9004 0 -20.7002 -5 -20.7002 -28.7002c0 -28 3.5 -33.5 21.2002 -33.5c16.3994 0 20.2002 5.60059 20.2002 29.7002zM275.8 255.7h38.2998
l-1.5 -20.6006h0.800781c9.09961 17.1006 15.8994 20.9004 37.5 20.9004c14.3994 0 24.6992 -3 31.5 -9.09961c9.7998 -8.60059 12.7998 -20.4004 12.7998 -48.1006c0 -30 -3 -43.0996 -12.1006 -52.8994c-6.7998 -7.30078 -16.3994 -10.1006 -33.2998 -10.1006
c-20.3994 0 -29.2002 5.5 -33.7998 21.2002h-0.799805v-70.2998h-39.5v169h0.0996094zM356.7 195c0 27.5 -3.2998 32.5 -20.7002 32.5c-16.9004 0 -20.7002 -5 -20.7002 -28.7002c0 -28 3.5 -33.5 21.2002 -33.5c16.4004 0 20.2002 5.60059 20.2002 29.7002zM410.5 198.8
c0 25.4004 3.2998 37.7998 12.2998 45.7998c8.7998 8.10059 22.2002 11.3008 45.1006 11.3008c42.7998 0 55.6992 -12.8008 55.6992 -55.7002v-11.1006h-75.2998c-0.299805 -2 -0.299805 -4 -0.299805 -4.7998c0 -16.8994 4.5 -21.8994 20.0996 -21.8994
c13.9004 0 17.9004 3 17.9004 13.8994h37.5v-2.2998c0 -9.7998 -2.5 -18.9004 -6.7998 -24.7002c-7.2998 -9.7998 -19.6006 -13.5996 -44.2998 -13.5996c-27.5 0 -41.6006 3.2998 -50.6006 12.2998c-8.5 8.5 -11.2998 21.2998 -11.2998 50.7998zM486.9 210.4
c-0.300781 1.7998 -0.300781 3.2998 -0.300781 3.7998c0 12.2998 -3.2998 14.5996 -19.5996 14.5996c-14.4004 0 -17.0996 -3 -18.0996 -15.0996l-0.300781 -3.2998h38.3008zM542.5 255.7h38.2998l-1.7998 -19.9004h0.700195
c6.7998 14.9004 14.3994 20.2002 29.7002 20.2002c10.7998 0 19.0996 -3.2998 23.3994 -9.2998c5.2998 -7.2998 6.7998 -14.4004 6.7998 -34c0 -1.5 0 -5 0.200195 -9.2998h-35c0.299805 1.7998 0.299805 3.2998 0.299805 4c0 15.3994 -2 19.3994 -10.2998 19.3994
c-6.2998 0 -10.7998 -3.2998 -13.0996 -9.2998c-1 -3 -1 -4.2998 -1 -12.2998v-68h-38.2998v118.5h0.0996094z" />
    <glyph glyph-name="asymmetrik" unicode="&#xf372;" horiz-adv-x="576" 
d="M517.5 138.8c-13.9004 -14.2998 -30.4004 -27.7002 -48.9004 -39.7998l73.4004 -110.4h-101.6l-45.9004 71.8008c-17.5996 -7.2002 -35.9004 -13.4004 -54.5 -18.7002l32.5996 -53.1006h-135.5l22.8008 37.1006c-23.3008 -2.7002 -46.4004 -3.7002 -68.6006 -2.7002
l-22 -34.4004h-101.6l34.5 51.7002c-45 17.9004 -68.9004 47.9004 -68.4004 83c0.299805 25.7998 14 54.2998 41.7002 82.9004c38.9004 40 96.5 72.5996 161.6 92.8994c-22.2998 -8.09961 -42 -18.5 -62 -30.6992c-31.1992 -16.2002 -58.6992 -35.9004 -79.5 -58.1006
c-57.3994 -61 -46.5 -121.8 19.1006 -151.2l190.2 285.5l150.899 -226.399c13 9.5 24.7998 19.7998 35 30.5996c98 104.2 53.7002 207.9 -98.7998 231.7c-68.2998 10.5996 -146.8 5.7002 -221.3 -14.7998c-60.1006 -10 -118.7 -31.7002 -170.7 -58.2002
c118.1 66.9004 277.9 102.1 406.6 82.4004c110 -16.8008 170.2 -69.5 169.4 -135c-0.400391 -36.1006 -19.7002 -76.1006 -58.5 -116.101zM329.9 58.2998c18.3994 5.2998 36.5 11.7998 53.6992 19.2002l-78.6992 123l-101.9 -159.3
c22.5 -0.700195 45.7998 0.899414 69.2002 4.39941l32.7002 53.3008z" />
    <glyph glyph-name="audible" unicode="&#xf373;" horiz-adv-x="640" 
d="M640 248.1v-54l-320 -200l-320 199.9v54l320 -200zM445.5 176.1c-70.7998 94.4004 -200.5 110.7 -290.2 36.3008c-2.59961 -2.2002 -5.2002 -4.40039 -7.7002 -6.7002h-0.299805c37.1006 55.7002 100.601 92.3994 172.601 92.3994s135.5 -36.7998 172.699 -92.5996z
M225.4 157.3c21 29.6006 55.5 49 94.3994 49c39.2002 0 73.9004 -19.5996 94.7998 -49.5l-45.3994 -28.3994c-21.2002 29.1992 -52 47.5996 -86.4004 47.5996c-20.8994 0 -40.5 -6.7998 -57.3994 -18.7002zM103.6 286.9c-11.5 -9.10059 -24.2998 -22.1006 -34.1992 -32.6006
c53.8994 82.1006 147 135.601 250.5 135.601c104.899 0 197.199 -54 250.699 -135.7l-48.7998 -30.4004l-0.700195 1c-99.2998 138.5 -285.699 166.4 -417.5 62.1006zM570.6 254.2z" />
    <glyph glyph-name="avianex" unicode="&#xf374;" horiz-adv-x="512" 
d="M453.1 416c39 0 64.8008 -31.2002 57.8008 -69.7998l-56.7002 -308.5c-7.10059 -38.5 -44.4004 -69.7002 -83.2998 -69.7002h-312c-39 0 -64.8008 31.2002 -57.7002 69.7002l56.5996 308.6c7.10059 38.5 44.4004 69.7002 83.2998 69.7002h312zM394.9 68.7002
l6.2998 7.89941l-94.9004 119.4l-4.5 7.2998c19.7998 14.2002 33.5 24.2998 35.2998 25.6006c7.90039 6.59961 6.30078 20.7998 -2.69922 31.2998c-9.2002 10.7998 -23 14.3994 -30.7002 7.89941c0 0 -14.4004 -13.5996 -33.7998 -32.3994l-4.90039 4.5l-103.1 112.399
l-8.90039 -4.7998l-18.7998 -28.8994l68.7998 -99.8008l20.5 -29.5996c-12 -12.2998 -23.5 -24.4004 -32.7998 -34.9004l-58 31.1006l-15.7002 -15.4004l52.4004 -48.0996l40.5996 -61l17.9004 12.7002l-22.1006 64.1992c12.5 7.60059 27 17.1006 41.7002 27.1006
l115.4 -110z" />
    <glyph glyph-name="aws" unicode="&#xf375;" horiz-adv-x="640" 
d="M180.41 244.99c-0.719727 -22.6504 10.5996 -32.6807 10.8799 -39.0498c-0.276367 -2.69141 -1.85352 -4.99902 -4.09961 -6.27051l-12.8008 -8.95996c-1.60352 -1.12402 -3.54785 -1.82422 -5.62988 -1.91992c-0.429688 0.0195312 -8.18945 -1.83008 -20.4795 25.6104
c-14.4111 -17.9883 -36.5596 -29.5156 -61.3789 -29.5156c-0.427734 0 -0.804688 0.0585938 -1.23145 0.0654297c-16.2803 -0.890625 -60.4004 9.24023 -58.1299 56.21c-1.58984 38.2803 34.0596 62.0596 70.9297 60.0498
c7.10059 -0.0195312 21.6006 -0.370117 46.9902 -6.26953v15.6191c2.69043 26.46 -14.7002 46.9902 -44.8096 43.9102c-2.40039 -0.00976562 -19.4004 0.5 -45.8408 -10.1094c-7.35938 -3.37988 -8.2998 -2.82031 -10.75 -2.82031
c-7.40918 0 -4.35938 21.4795 -2.93945 24.2002c5.20996 6.39941 35.8604 18.3496 65.9395 18.1797c2.25586 0.199219 4.53906 0.301758 6.84668 0.301758c18.5547 0 35.5566 -6.61719 48.8438 -17.582c11.1152 -12.4326 17.877 -28.8398 17.877 -46.8135
c0 -1.87891 -0.0615234 -3.70508 -0.207031 -5.5459zM93.9902 212.6c32.4297 0.470703 46.1602 19.9707 49.29 30.4707c2.45996 10.0498 2.0498 16.4102 2.0498 27.3994c-9.66992 2.32031 -23.5898 4.85059 -39.5605 4.87012
c-15.1494 1.14062 -42.8193 -5.62988 -41.7393 -32.2598c-1.24023 -16.79 11.1201 -31.4004 29.96 -30.4805zM264.91 189.55c-7.86035 -0.719727 -11.5205 4.86035 -12.6797 10.3701l-49.8008 164.65c-0.969727 2.7793 -1.60938 5.64941 -1.91992 8.58008
c-0.0341797 0.227539 -0.0527344 0.459961 -0.0527344 0.697266c0 2.30566 1.70117 4.21387 3.91309 4.55273c0.240234 0.0400391 -2.12988 0 22.25 0c8.78027 0.879883 11.6396 -6.03027 12.5498 -10.3701l35.7197 -140.83l33.1602 140.83
c0.530273 3.21973 2.94043 11.0693 12.7998 10.2393h17.1602c2.16992 0.180664 11.1104 0.5 12.6807 -10.3691l33.4199 -142.631l36.8701 142.631c0.479492 2.17969 2.71973 11.3691 12.6797 10.3691h19.7197c0.850586 0.130859 6.15039 0.810547 5.25 -8.5791
c-0.429688 -1.85059 3.41016 10.6592 -52.75 -169.9c-1.14941 -5.50977 -4.82031 -11.0898 -12.6797 -10.3701h-18.6904c-10.9395 -1.15039 -12.5098 9.66016 -12.6797 10.75l-33.1602 137.13l-32.7803 -136.99c-0.15918 -1.08984 -1.72949 -11.8994 -12.6797 -10.75
h-18.2998v-0.00976562zM538.39 183.92c-5.87988 -0.00976562 -33.9199 0.299805 -57.3594 12.29c-4.59375 1.94531 -7.81934 6.49609 -7.81934 11.7949c0 0.0410156 0.00878906 0.0742188 0.00878906 0.115234v10.75c0 8.4502 6.2002 6.89941 8.83008 5.88965
c10.04 -4.05957 16.4805 -7.13965 28.8105 -9.59961c36.6494 -7.53027 52.7695 2.2998 56.7197 4.47949c13.1504 7.81055 14.1895 25.6807 5.25 34.9502c-10.4805 8.79004 -15.4805 9.12012 -53.1299 21c-4.64062 1.29004 -43.7002 13.6104 -43.79 52.3604
c-0.610352 28.2402 25.0498 56.1797 69.5195 55.9502c12.6699 0.00976562 46.4307 -4.13086 55.5703 -15.6201c1.34961 -2.08984 2.01953 -4.5498 1.91992 -7.04004v-10.1104c0 -4.43945 -1.62012 -6.66016 -4.87012 -6.66016
c-7.70996 0.860352 -21.3896 11.1699 -49.1602 10.75c-6.88965 0.360352 -39.8896 -0.910156 -38.4092 -24.9697c-0.430664 -18.96 26.6094 -26.0703 29.6992 -26.8896c36.46 -10.9707 48.6504 -12.79 63.1201 -29.5801c17.1406 -22.25 7.90039 -48.2998 4.35059 -55.4404
c-19.0801 -37.4902 -68.4199 -34.4395 -69.2607 -34.4199zM578.59 79.0596c-70.0303 -51.7197 -171.689 -79.25 -258.49 -79.25c-1.0498 -0.00683594 -2.10059 -0.00976562 -3.15234 -0.00976562c-120.699 0 -230.949 45.7383 -314.117 120.74
c-6.53027 5.88965 -0.770508 13.96 7.16992 9.46973c93.1143 -53.2637 200.925 -83.7148 315.791 -83.7148c0.138672 0 0.950195 -0.405273 1.08887 -0.405273c85.4404 0.458984 167.381 18.2432 241.59 49.5508c11.7803 5 21.7705 -7.80078 10.1201 -16.3809z
M607.78 112.35c-8.95996 11.5205 -59.2803 5.38086 -81.8105 2.69043c-6.79004 -0.770508 -7.93945 5.12012 -1.79004 9.46973c40.0703 28.1699 105.88 20.1006 113.44 10.6299c7.5498 -9.46973 -2.0498 -75.4092 -39.5605 -106.909
c-5.75977 -4.87012 -11.2695 -2.30078 -8.70996 4.09961c8.44043 21.25 27.3906 68.4902 18.4307 80.0195z" />
    <glyph glyph-name="bimobject" unicode="&#xf378;" 
d="M416 416c17.5996 0 32 -14.4004 32 -32v-384c0 -17.5996 -14.4004 -32 -32 -32h-384c-17.5996 0 -32 14.4004 -32 32v384c0 17.5996 14.4004 32 32 32h384zM352 158.6h-0.0996094v35c0 49.4004 -11.4004 82.5 -103.801 82.5h-17.2998
c-30 0 -65.0996 -8.2998 -69.7002 -38.7998h-1.09961v74.7002h-64v-232h64v34.7998h0.900391c8 -23.8994 26.2998 -38.7998 70.3994 -38.7998h16.9004c92.3994 0 103.8 33.2002 103.8 82.5996zM288 187.5v-22.9004c0 -21.6992 -3.40039 -33.7998 -38.4004 -33.7998h-45.2998
c-28.8994 0 -44.0996 6.5 -44.0996 35.7002v19c0 29.2998 15.2002 35.7002 44.0996 35.7002h45.2998c35 0.200195 38.4004 -12 38.4004 -33.7002z" />
    <glyph glyph-name="bitcoin" unicode="&#xf379;" horiz-adv-x="512" 
d="M504 192c0 -136.967 -111.033 -248 -248 -248s-248 111.033 -248 248s111.033 248 248 248s248 -111.033 248 -248zM362.349 227.33c4.9375 32.999 -20.1904 50.7393 -54.5498 62.5732l11.1465 44.7021l-27.2129 6.78027l-10.8516 -43.5234
c-7.1543 1.78223 -14.502 3.46387 -21.8027 5.12988l10.9287 43.8096l-27.1982 6.78125l-11.1523 -44.6855c-5.92188 1.34863 -11.7354 2.68164 -17.377 4.08398l0.0302734 0.139648l-37.5293 9.37012l-7.23926 -29.0625s20.1914 -4.62695 19.7646 -4.91309
c11.0225 -2.75098 13.0146 -10.0439 12.6807 -15.8242l-12.6963 -50.9258c0.759766 -0.193359 1.74414 -0.472656 2.8291 -0.90625c-0.907227 0.224609 -1.87598 0.472656 -2.87598 0.712891l-17.7959 -71.3379c-1.34961 -3.34863 -4.76758 -8.37012 -12.4717 -6.46484
c0.271484 -0.394531 -19.7793 4.9375 -19.7793 4.9375l-13.5107 -31.1475l35.4141 -8.82617c6.58887 -1.65137 13.0449 -3.37988 19.4004 -5.00684l-11.2617 -45.2129l27.1816 -6.78027l11.1533 44.7324c7.14062 -1.93457 14.4863 -3.84082 21.6865 -5.62695
l-11.1152 -44.5225l27.2139 -6.78125l11.2617 45.1279c46.4043 -8.78125 81.2988 -5.23926 95.9863 36.7266c11.8359 33.79 -0.589844 53.2812 -25.0049 65.9912c17.7803 4.09766 31.1748 15.792 34.7471 39.9492zM300.172 140.151
c-8.41016 -33.79 -65.3076 -15.5234 -83.7549 -10.9434l14.9443 59.8994c18.4453 -4.60352 77.5996 -13.7178 68.8105 -48.9561zM308.589 227.818c-7.67285 -30.7363 -55.0312 -15.1201 -70.3926 -11.292l13.5479 54.3262
c15.3633 -3.82715 64.8359 -10.9727 56.8447 -43.0342z" />
    <glyph glyph-name="bity" unicode="&#xf37a;" horiz-adv-x="496" 
d="M78.4004 380.8c95.3994 89.2002 246.1 91.2002 343.1 -3.7998c14.2998 -14.0996 -6.40039 -37.0996 -22.4004 -21.5c-84.7998 82.4004 -215.8 80.2998 -298.899 3.2002c-16.2998 -15.1006 -36.5 8.2998 -21.7998 22.0996zM177.3 -37.7998
c-128.7 38.2998 -201.899 170.7 -169.8 298.1c5.2998 21 35.2002 12.5 30.2002 -7.09961c-28.2998 -111.3 35.2998 -227.101 147.5 -261c21.3994 -6.40039 11.3994 -35.7002 -7.90039 -30zM325.4 -35.7998c-19.2002 -6.2998 -30 22.7002 -8.80078 29.7002
c106.101 35.5 167.4 145.699 143.2 253.399c-4.89941 21.7002 25.5 27.6006 30 7.90039c28.5 -124.101 -42.5 -250.8 -164.399 -291zM262.5 43.2002c0 -8.2002 -6.59961 -14.7998 -14.7998 -14.7998s-14.7998 6.59961 -14.7998 14.7998l0.199219 71.7998
c0 8.09961 6.60059 14.7998 14.8008 14.7998c8.19922 0 14.7998 -6.59961 14.7998 -14.7998zM333.5 312.2c0 21.7998 32.5 19.5996 32.5 0v-71.6006c0 -69.2998 -60.7002 -90.8994 -118 -90.0996c-57.2998 -0.799805 -118 20.7998 -118 90.0996v71.6006
c0 19.5996 32.5 21.7998 32.5 0c-1.40039 -88.2002 -7 -131.8 85.5 -132.5c90.2002 0.599609 87.5996 41.5996 85.5 132.5z" />
    <glyph glyph-name="blackberry" unicode="&#xf37b;" horiz-adv-x="512" 
d="M166 331.1c0 -23.3994 -16.4004 -49.0996 -72.5 -49.0996h-70.0996l21 88.7998h67.7998c42.0996 0 53.7998 -23.2998 53.7998 -39.7002zM292.2 370.8c42.0996 0 53.7998 -23.2998 53.7002 -39.7002c0 -23.3994 -16.3008 -49.0996 -70.1006 -49.0996h-70.0996
l18.7002 88.7998h67.7998zM88.7998 239.9c42.1006 0 53.7998 -23.4004 53.7998 -39.7002c0 -25.7002 -16.3994 -49.1006 -72.5 -49.1006h-70.0996l21 88.8008h67.7998zM268.9 239.9c42 0 53.6992 -23.4004 53.6992 -39.7002c0 -25.7002 -16.2998 -49.1006 -70.0996 -49.1006
h-70.0996l18.6992 88.8008h67.8008zM458.2 293.7c42.0996 0 53.7998 -23.4004 53.7002 -39.7002c0 -25.7002 -16.3008 -49.0996 -70.1006 -49.0996h-70.0996l18.7002 88.7998h67.7998zM430.2 155.8c42.0996 0 53.7002 -23.3994 53.7002 -39.7002
c0 -25.6992 -14 -49.0996 -70.1006 -49.0996h-70.0996l18.7002 88.7998h67.7998zM240.8 102c42.1006 0 53.7998 -23.4004 53.7002 -39.7002c0 -23.3994 -14 -49.0996 -70.0996 -49.0996h-70.1006l18.7002 88.7998h67.7998z" />
    <glyph glyph-name="blogger" unicode="&#xf37c;" 
d="M162.4 252c4.7998 4.90039 6.19922 5.09961 36.3994 5.09961c27.2002 0 28.1006 -0.0996094 32.1006 -2.09961c5.7998 -2.90039 8.2998 -7 8.2998 -13.5996c0 -5.90039 -2.40039 -10 -7.60059 -13.4004c-2.7998 -1.7998 -4.5 -1.90039 -31.0996 -2.09961
c-16.4004 -0.100586 -29.5 0.199219 -31.5 0.799805c-10.2998 2.89941 -14.0996 17.7002 -6.59961 25.2998zM223.8 157.5c55.4004 0 55.1006 0 60.4004 -4.7002c7.39941 -7 5.89941 -19.2998 -3.10059 -24.3994l-9.19922 -1.5l-47.9004 -0.600586
c-42.2002 -0.5 -54.0996 0.200195 -56.2998 1.2002c-4.40039 1.90039 -8.5 7.2998 -9.2002 12c-0.599609 4.5 1.59961 10.7998 5.09961 13.9004c4.40039 3.89941 6.30078 4.09961 60.2002 4.09961zM447.2 27.4004c-3.5 -28.4004 -23 -50.4004 -51.1006 -57.5
c-7.19922 -1.80078 -9.69922 -1.90039 -172.899 -1.80078c-157.8 0 -165.9 0.100586 -172 1.80078c-8.40039 2.19922 -15.6006 5.5 -22.2998 10c-5.60059 3.7998 -13.9004 11.7998 -17 16.3994c-3.80078 5.60059 -8.2002 15.2998 -10 22
c-1.80078 6.7002 -1.90039 9.40039 -1.90039 173.4c0 163.1 0 166.6 1.7998 173.7c6.2998 24.6992 25.9004 43.5996 51.2002 49.1992c7.2998 1.60059 332.1 1.90039 340 0.300781c21.2002 -4.30078 37.9004 -17.1006 47.5996 -36.4004c7.7002 -15.2998 7 1.5 7.30078 -180.6
c0.199219 -115.801 0 -164.5 -0.700195 -170.5zM361.8 212.6c-1.09961 5 -4.2002 9.60059 -7.7002 11.5c-1.09961 0.600586 -8 1.30078 -15.5 1.7002c-12.3994 0.600586 -13.7998 0.799805 -17.7998 3.10059c-6.2002 3.59961 -7.89941 7.59961 -8 18.2998
c0 20.3994 -8.5 39.3994 -25.2998 56.5c-12 12.2002 -25.2998 20.5 -40.5996 25.0996c-3.60059 1.10059 -11.8008 1.5 -39.2002 1.7998c-42.9004 0.5 -52.5 -0.399414 -67.1006 -6.19922c-27 -10.7002 -46.2998 -33.4004 -53.3994 -62.4004
c-1.2998 -5.40039 -1.60059 -14.2002 -1.90039 -64.2998c-0.399414 -62.7998 0 -72.1006 4 -84.5c9.7002 -30.7002 37.1006 -53.4004 64.6006 -58.4004c9.19922 -1.7002 122.199 -2.09961 133.699 -0.5c20.1006 2.7002 35.9004 10.7998 50.7002 25.9004
c10.7002 10.8994 17.4004 22.7998 21.7998 38.5c3.2002 10.8994 2.90039 88.3994 1.7002 93.8994z" />
    <glyph glyph-name="blogger-b" unicode="&#xf37d;" 
d="M446.6 225.3c2 -8.89941 2.40039 -134.1 -2.5 -151.7c-7.09961 -25.2998 -17.8994 -44.3994 -35.1992 -62.0996c-23.9004 -24.4004 -49.4004 -37.5 -81.9004 -41.9004c-18.7002 -2.5 -201.2 -1.89941 -216 0.800781c-44.5 8 -88.7998 44.6992 -104.4 94.2998
c-6.2998 20.0996 -7 35 -6.39941 136.5c0.5 81 1 95.0996 3.09961 103.899c11.4004 46.8008 42.6006 83.4004 86.1006 100.601c23.5996 9.39941 39 10.7998 108.399 10c44.2002 -0.5 57.4004 -1.10059 63.2998 -2.90039c24.6006 -7.5 46.2002 -20.7998 65.5 -40.5
c27.1006 -27.5996 40.8008 -58.2998 40.9004 -91.2998c0.0996094 -17.2002 2.7998 -23.5996 12.9004 -29.5c6.39941 -3.7002 8.59961 -4.09961 28.6992 -5c12 -0.5 23.2002 -1.7002 25 -2.7002c5.7002 -3.09961 10.7002 -10.5 12.5 -18.5zM124.5 288.9
c-12.2002 -12.3008 -6 -36.1006 10.5996 -40.8008c3.10059 -0.799805 24.3008 -1.39941 50.8008 -1.19922c43 0.199219 45.6992 0.399414 50.2998 3.2998c8.5 5.39941 12.2998 12.0996 12.2998 21.5996c0 10.6006 -4.09961 17.2002 -13.4004 21.9004
c-6.39941 3.2998 -7.89941 3.39941 -51.7998 3.39941c-48.7998 0 -51 -0.299805 -58.7998 -8.19922zM316.3 89.0996c14.4004 8.2002 17 28.1006 4.90039 39.4004c-8.5 7.90039 -8 7.90039 -97.6006 7.7998c-87.0996 -0.0996094 -90.1992 -0.299805 -97.2998 -6.7002
c-5.59961 -5.09961 -9.2998 -15.0996 -8.2002 -22.3994c1.10059 -7.7002 7.80078 -16.2998 14.9004 -19.4004c3.59961 -1.59961 22.7998 -2.7998 90.9004 -2l77.5 0.900391z" />
    <glyph glyph-name="buromobelexperte" unicode="&#xf37f;" 
d="M0 416h128v-128h-128v128zM120 296v112h-112v-112h112zM160 416h128v-128h-128v128zM280 296v112h-112v-112h112zM320 416h128v-128h-128v128zM440 296v112h-112v-112h112zM0 256h128v-128h-128v128zM120 136v112h-112v-112h112zM160 256h128v-128h-128v128zM280 136v112
h-112v-112h112zM320 256h128v-128h-128v128zM440 136v112h-112v-112h112zM0 96h128v-128h-128v128zM120 -24v112h-112v-112h112zM160 96h128v-128h-128v128zM280 -24v112h-112v-112h112zM320 96h128v-128h-128v128z" />
    <glyph glyph-name="centercode" unicode="&#xf380;" horiz-adv-x="512" 
d="M329.2 179.4c-3.7998 -35.2002 -35.4004 -60.6006 -70.6006 -56.8008c-35.1992 3.80078 -60.5996 35.4004 -56.7998 70.6006s35.4004 60.5996 70.6006 56.7998c35.0996 -3.7998 60.5996 -35.4004 56.7998 -70.5996zM243.4 -55.7002
c-146.7 7.7002 -251.601 138.2 -233.301 279.4c11.2002 86.5996 65.8008 156.899 139.101 192c161 77.0996 349.7 -37.4004 354.7 -216.601c4.09961 -147 -118.4 -262.199 -260.5 -254.8zM423.3 124.3c27.9004 118 -160.5 205.9 -237.2 234.2
c-57.5 -56.2998 -69.0996 -188.6 -33.7998 -344.4c68.7998 -15.7998 169.101 26.4004 271 110.2z" />
    <glyph glyph-name="cloudscale" unicode="&#xf383;" 
d="M318.1 294c6.2002 6.2998 15.8008 -3.09961 9.5 -9.59961l-75.1992 -88.8008c0.899414 -8.19922 -1.80078 -16.7998 -8.10059 -23.0996c-11.0996 -11 -28.8994 -11 -40 0c-11.0996 11.0996 -11.0996 29 0 40c6.2998 6.2998 14.7998 9 23.1006 8.09961l25.1992 20.4004
c-16.3994 15.2998 -38.3994 24.7002 -62.5996 24.7002c-50.7998 0 -94.5996 -41.4004 -92.5996 -97.4004c-1 6.2998 -1.40039 12.7998 -1.40039 19.4004c0 71.5 57.7998 132.3 129.4 132.3c31.7998 0 60.7998 -14.2998 83.2998 -33.5996zM234.3 182.5
c5.60059 5.5 5.60059 14.5996 0 20.2002c-5.59961 5.59961 -14.5996 5.59961 -20.2002 0c-5.59961 -5.60059 -5.59961 -14.6006 0 -20.2002c5.60059 -5.5 14.6006 -5.5 20.2002 0zM224 416c123.5 0 224 -100.5 224 -224s-100.5 -224 -224 -224s-224 100.5 -224 224
s100.5 224 224 224zM224 32c88.2002 0 160 71.7998 160 160s-71.7998 160 -160 160s-160 -71.7998 -160 -160s71.7998 -160 160 -160z" />
    <glyph glyph-name="cloudsmith" unicode="&#xf384;" horiz-adv-x="332" 
d="M332.5 28.0996c0 -46.3994 -37.5996 -84.0996 -84 -84.0996s-84 37.7002 -84 84.0996c0 46.4004 37.5996 84 84 84s84 -37.5996 84 -84zM248.5 272c-46.4004 0 -80 -33.5996 -80 -80s-37.5996 -80 -84 -80s-84 33.5996 -84 80s37.5996 88 84 88s76 29.5996 76 76
s41.5996 84 88 84s80 -37.5996 80 -84s-33.5996 -84 -80 -84z" />
    <glyph glyph-name="cloudversify" unicode="&#xf385;" horiz-adv-x="616" 
d="M148.6 144v-0.0996094h-48.8994c-6.40039 0 -11.7002 5.39941 -11.7002 11.7998v40.3994c0 7.60059 7 11.9004 10.7998 11.9004h46.7998v-6.59961c0 -10.7002 8.80078 -16.7002 19.5 -16.7002h20.2002c10.7998 0 19.5 8.7998 19.5 19.5v20.3994
c0 10.6006 -3.5 19.5 -15.2002 19.5c18.5 15.2002 37.2002 21.4004 45 24.1006c15 56.5 42 92.3994 99.3008 109.7c55.0996 16.5 153.5 3.09961 186.5 -85c73.8994 -22.6006 106.899 -92.6006 92.0996 -155.101c-13 -54.8994 -62.2998 -100.6 -131.5 -99.5
c-49.5996 -51.3994 -135.2 -48.8994 -186.4 -5.59961c-78.5996 -4.2002 -137.8 42.7998 -146 111.3zM376 136c8.7002 -54.0996 59.7002 -65.5 91.7998 -59.2002c39.1006 7.7002 70.5 37.5 79.7002 76.5c5.7998 24.4004 2.40039 50 -9.40039 72l-10.5 19.6006
c1.2002 -22.5 -12.5 -60.6006 -47.5 -76.9004c65.5 67.7002 2.10059 141.2 -67.6992 150.5c-49.8008 6.59961 -83.3008 -13 -114.2 -43.7002c48 -4.7002 87.7002 -26.7998 101.8 -74.7998c-30.0996 49.2998 -103 56.5996 -133.6 40.7998
c-35.5 -18.2002 -60 -54 -57 -93.8994c3.59961 -47.4004 39.5 -67.4004 57.3994 -79.8008c-4.5 21.7002 -4 71.3008 29.2002 92.9004c-36.2998 -60 28.0996 -144.6 135.3 -110.8c-33.5996 14.3994 -66 40.5 -55.2998 86.7998zM128 240h-39.7998
c-8.90039 0 -16.2002 7.2998 -16.2002 16.2002v39.5996c0 8.90039 7.2998 16.2002 16.2002 16.2002h39.7998c8.90039 0 16.2002 -7.2998 16.2002 -16.2002v-39.5996c0 -8.90039 -7.2998 -16.2002 -16.2002 -16.2002zM10.0996 280c-5.59961 0 -10.0996 4.5 -10.0996 10.0996
v27.8008c0 5.59961 4.5 10.0996 10.0996 10.0996h27.7002c5.5 0 10.1006 -4.5 10.1006 -10.0996v-27.8008c0 -5.59961 -4.5 -10.0996 -10.1006 -10.0996h-27.7002zM168 305.3v21.4004c0 5.09961 4.2002 9.2998 9.2998 9.2998h21.4004
c5.09961 0 9.2998 -4.2002 9.2998 -9.2998v-21.4004c0 -5.09961 -4.2002 -9.2998 -9.2998 -9.2998h-21.4004c-5.09961 0 -9.2998 4.2002 -9.2998 9.2998zM56 212.5v-25c0 -6.2998 -5.09961 -11.5 -11.4004 -11.5h-25.1992c-6.30078 0 -11.4004 5.2002 -11.4004 11.5v25
c0 6.2998 5.09961 11.5 11.4004 11.5h25.0996c6.40039 0 11.5 -5.2002 11.5 -11.5z" />
    <glyph glyph-name="cpanel" unicode="&#xf388;" horiz-adv-x="640" 
d="M210.3 227.8c6.60059 -29.0996 -14.5 -65.2998 -51.7002 -65.2998h-32l6.40039 23.7998c1.7998 6.2002 7.2998 10.7998 14.2998 10.7998h10.2998c12.4004 0 20.8008 11.7002 18.3008 22.6006c-2.10059 9.2002 -9.90039 14.7998 -18.3008 14.7998h-19.7998
l-25.7998 -95.7002c-1.90039 -6.2002 -7.40039 -10.7002 -14.2002 -10.7002l-24.7002 -0.0996094l34.9004 130.1c1.7998 6.40039 7.2002 10.9004 14.2998 10.9004h37c24.1006 0 45.4004 -16.4004 51 -41.2002zM53.7998 199.8c-24.8994 0 -24.7002 -37.3994 0 -37.3994
h11.2998c4.2002 0 7.60059 -3.90039 6.40039 -8.30078l-7.09961 -26.0996h-12.4004c-33.5 0 -59 31.4004 -50.2998 65.2002c7.2998 27 28.2998 41.0996 51.2002 41.0996h40l-6.2002 -23.5996c-1.90039 -6.5 -7.40039 -10.9004 -14.2998 -10.9004h-18.6006zM301.3 234.6
c18.7998 0 33.2998 -17.5996 28.5 -36.7998l-14 -51.7998c-2.7998 -10.5996 -12.2002 -17.7998 -23.3994 -17.7998l-57.5 0.200195c-42.9004 0 -38.5 63.7998 0.699219 63.7998h48.4004l-3.5 -13.2002c-1.90039 -6.2002 -7.40039 -10.7998 -14.2002 -10.7998h-21.5996
c-5.2998 0 -5.2998 -7.90039 0 -7.90039h34.8994c4.60059 0 5.10059 3.90039 5.5 5.2998l8.60059 31.8008c0.299805 1 1.89941 5.2998 -2.10059 5.2998h-57.5c-9.69922 0 -16.5996 8.89941 -14.1992 18.5l3.5 13.3994h77.8994zM633.1 269c4.5 0 7.7002 -4 6.5 -8.2998
l-26.5 -98.2002c-5.09961 -20.7002 -24.1992 -34.5 -44.8994 -34.5l35.5996 133.1c1.2002 4.7002 5.5 7.90039 10.4004 7.90039h18.8994zM396.8 234.3c34.4004 0 59.2998 -32.2998 50.2998 -65.3994l-8.7998 -33.1006c-1.2002 -4.89941 -5.7002 -7.7998 -10.2998 -7.7998
h-19.0996c-4.5 0 -7.60059 4 -6.40039 8.2998l10.5996 40c3.30078 11.6006 -5.59961 23.4004 -18.0996 23.4004h-19.7998l-17.2002 -64c-1.2002 -4.7998 -5.59961 -7.7998 -10.4004 -7.7998h-18.8994c-4.2002 0 -7.60059 3.89941 -6.40039 8.2998l26.2002 98h48.2998
v0.0996094zM495.1 159.7h73.3008l-5.7002 -21c-1.90039 -6.2002 -7.40039 -10.7002 -14.2002 -10.7002h-66.7002c-20 0 -33.2998 19 -28.2998 36.7002l10.7998 40c4.7998 17.5996 20.7002 29.5996 38.6006 29.5996h47.2998c19 0 33.2002 -17.7002 28.2998 -36.7998
l-3.2002 -12c-2.89941 -11 -12.7002 -17.5996 -23.2002 -17.5996h-53.3994l3.5 13c1.59961 6.19922 7.2002 10.7998 14.2002 10.7998h21.5996c2 0 3.2998 1 3.90039 3l0.699219 2.59961c0.700195 2.7002 -1.2998 5.10059 -3.89941 5.10059h-32.9004
c-4.09961 0 -6.89941 -2.10059 -7.7998 -6l-8 -30c-0.900391 -3.30078 1.5 -6.7002 5.09961 -6.7002z" />
    <glyph glyph-name="css3-alt" unicode="&#xf38b;" horiz-adv-x="384" 
d="M0 416h384l-34.9004 -395.8l-157.1 -52.2002l-157.1 52.2002zM313.1 336h-242.199l5.7998 -47.2998h122.899l-6.5 -2.7002l-112.1 -46.7002l3.59961 -46.2998l0.200195 0.0996094v-0.0996094l166.3 -0.5l-3.69922 -61.5996l-54.7002 -15.4004l-52.6006 13.2998
l-3.19922 38.2998h-48.9004l6.40039 -73.8994l98.7998 -29.2002l98.2002 28.7002l12.7998 146.6h-111.5l0.299805 0.100586l115.3 49.2998z" />
    <glyph glyph-name="cuttlefish" unicode="&#xf38c;" horiz-adv-x="440" 
d="M344 142.5c13.7002 -50.9004 41.7002 -93.2998 87 -117.8c-45.2998 -49.6006 -110.5 -80.7002 -183 -80.7002c-137 0 -248 111 -248 248s111 248 248 248c72.5 0 137.7 -31.0996 183 -80.7002c-45.2998 -24.5 -73.2998 -66.8994 -87 -117.8
c-17.5 31.5996 -57.4004 54.5 -96 54.5c-56.5996 0 -104 -47.4004 -104 -104s47.4004 -104 104 -104c38.5996 0 78.5 22.9004 96 54.5z" />
    <glyph glyph-name="d-and-d" unicode="&#xf38d;" horiz-adv-x="576" 
d="M82.5 349.1c-0.599609 17.2002 2 33.8008 12.7002 48.2002c0.299805 -7.39941 1.2002 -14.5 4.2002 -21.5996c5.89941 27.5 19.6992 49.2998 42.2998 65.5c-1.90039 -5.90039 -3.5 -11.7998 -3 -17.7002c8.7002 7.40039 18.7998 17.7998 44.3994 22.7002
c14.7002 2.7998 29.7002 2 42.1006 -1c38.5 -9.2998 61 -34.2998 69.7002 -72.2998c5.2998 -23.1006 0.699219 -45 -8.30078 -66.4004c-5.19922 -12.4004 -12 -24.4004 -20.6992 -35.0996c-2 1.89941 -3.90039 3.7998 -5.80078 5.59961
c-42.7998 40.7998 -26.7998 25.2002 -37.3994 37.4004c-1.10059 1.19922 -1 2.19922 -0.100586 3.59961c8.30078 13.5 11.8008 28.2002 10 44c-1.09961 9.7998 -4.2998 18.9004 -11.2998 26.2002c-14.5 15.2998 -39.2002 15 -53.5 -0.600586
c-11.3994 -12.5 -14.0996 -27.3994 -10.8994 -43.5996c0.199219 -1.2998 0.399414 -2.7002 0 -3.90039c-3.40039 -13.6992 -4.60059 -27.5996 -2.5 -41.5996c0.0996094 -0.5 0.0996094 -1.09961 0.0996094 -1.59961c0 -0.300781 -0.0996094 -0.5 -0.200195 -1.10059
c-21.7998 11 -36 28.2998 -43.2002 52.2002c-8.2998 -17.7998 -11.0996 -35.5 -6.59961 -54.0996c-15.5996 15.1992 -21.2998 34.2998 -22 55.1992zM552.1 225.9c0.5 -0.600586 1.2002 -1 1.7002 -1.40039v-0.5c-15 3.59961 -29.7998 1.7998 -44.5 -1.2998
c-9.2998 -2 -18.2998 -4.7002 -26.7002 -9c-2.89941 -1.5 -5.69922 -3.2998 -8 -4.7002c-5.7998 2.40039 -11.2998 5.5 -17.1992 6.7998c-24.5 5.2998 -45.8008 -1.2002 -62.5 -20c-19.7002 -22.2002 -34.5 -47.5996 -46.7002 -74.5l-1.2002 -2.7002
c-0.0996094 -0.199219 -0.200195 -0.299805 -0.400391 -0.399414c-12.0996 8.2998 -21.5996 20.2998 -36.0996 25.5996c0.299805 0.400391 0.400391 0.900391 0.700195 1.2998c20.5996 28.2002 44.8994 52.5 75.0996 70.4004c16 9.5 33 16.0996 51.5 18.5
c1.7998 0.200195 3.5 0.400391 5.2998 1.09961c-4.39941 0 -8.7998 0.300781 -13.0996 -0.0996094c-21.2002 -1.90039 -40.5 -9.59961 -58.7002 -20.2002c-13.7998 -8 -26.2002 -17.7002 -36.5996 -29.7998c-0.400391 -0.5 -0.600586 -1.09961 -0.900391 -1.7002
c-0.299805 0.299805 -0.700195 0.600586 -1 0.900391c11 30.8994 30.7002 55 57.7002 73.2998c0.200195 -0.200195 0.5 -0.299805 0.700195 -0.5c-1.2002 -1.7002 -2.5 -3.2998 -3.5 -5.09961c-1.7998 -3.30078 -3.7002 -6.5 -5.10059 -10
c-1.7998 -4.30078 1.60059 -8.60059 12 -0.5c18.2002 14.0996 29.6006 26.2998 48.9004 29.5996c0.700195 0.0996094 1.2998 0.299805 1.90039 0.299805h2.5c-1 -0.700195 -1.60059 -1.09961 -2.2002 -1.5c-11.6006 -7.7998 -11.7998 -7.39941 -15 -12
c-2.60059 -3.7002 -0.200195 -8 4.7002 -6.7998c2.59961 0.599609 5.19922 1.2998 7.69922 2.2002c9.40039 3.2998 19 5.7998 29 6.39941c13.9004 0.800781 27.1006 -1.89941 39.9004 -7.09961c15.0996 -6.2002 28.5 -15 40.0996 -26.5996zM316.7 50.4004
c1.5 -1.30078 1.89941 -2.40039 0.899414 -4.2002c-25.2998 -50.2002 -61.0996 -89.1006 -116 -98.7998c-26.7998 -4.7002 -52.8994 -2.7002 -77.8994 8.59961c-18.5 8.2002 -34.6006 19.5996 -47.2002 35.5996c-2 2.60059 -3.7002 5.40039 -5.90039 8.60059
c-0.699219 -7.7998 0.100586 -14.9004 1.5 -21.9004c-0.199219 -0.200195 -0.399414 -0.299805 -0.599609 -0.5c-3.2002 3.40039 -6.59961 6.60059 -9.5 10.2998c-12.2002 15.5 -19.5 33.3008 -24.0996 52.3008c-11.8008 48.2998 -0.5 78.7998 7.7998 101.1
c-8.7002 -4.7998 -16.2002 -10.2998 -23.6006 -16.2002c11.6006 32.7998 31.9004 59.9004 56.1006 84.6006c2.39941 -2.10059 3.2998 -4.7002 3 -7.40039c-0.200195 -1 -5.90039 -38.9004 -5.60059 -44.7002c18.9004 18.9004 40.5 33.2998 64.8008 43.9004
c-7.5 -11.1006 -11 -23.4004 -11.8008 -37.2998c13.4004 12.1992 27.7002 20.0996 46.4004 13.8994c-8.5 -9.09961 -30.7998 -30.5 -38.5996 -64.2998c-5.10059 -21.9004 -3.80078 -43.0996 8.19922 -62.5996c11.2002 -18.3008 27.8008 -27.8008 49.4004 -27.8008
c12.5996 0 23.7998 5 34.0996 11.8008c18.5 12.2998 32.8008 28.5 44 47.5996c1.90039 3.2002 1.10059 2.09961 1.90039 3c19.9004 -16.0996 3.2998 -2.59961 42.7002 -35.5996zM488.7 96.7998c20.2002 -6.59961 35.5 -18.7998 43.7998 -38.8994
c9.2002 -23.1006 2.09961 -49.4004 -17.4004 -66c-16.3994 -14 -35.6992 -19.2002 -57 -17.4004c-0.599609 0 -1.19922 0 -1.89941 -0.299805c15.0996 -10.7002 31.5996 -15.2002 50.8994 -10.6006c-2.19922 -2.39941 -3.89941 -4.69922 -5.89941 -6.5
c-12.2998 -10.8994 -26.9004 -16.8994 -42.9004 -19.7998c-39.5996 -7.2998 -75.5996 12.7998 -85 56.9004c-0.5 2.09961 -0.599609 4.2002 -0.899414 6.39941c-10.8008 -8.19922 -16.4004 -34.0996 -0.700195 -52.2998c-1.60059 0.5 -2.60059 0.700195 -3.60059 1.10059
c-21.2998 8.2998 -34.3994 28.2998 -33.5 51.1992c0.900391 23.2002 4.90039 41 -13 56c-16.5 13.8008 -33 27.4004 -49.5 41.1006c-8.09961 6.7002 -14.7998 14.5 -17 25.0996c-1 4.60059 -1.39941 9.40039 -1.7998 14.1006c-0.5 6.09961 -3.2998 11 -7.89941 14.7998
c-4.5 3.89941 -9.30078 7.39941 -13.8008 11.2002c-8.89941 7.5 -12.2998 18.8994 -7.2998 29.8994c2.7998 -12.8994 9.60059 -18.8994 22.6006 -20.2998c4.39941 -0.5 8.89941 -0.799805 13.2998 -1.5c8.09961 -1.2002 12.7998 -6.09961 14.2998 -14.2002
c0.700195 -3.39941 1.2998 -6.7998 2.2002 -10.2002c1.59961 -5.59961 4.5 -8 10.3994 -8.39941c4.60059 -0.299805 9.30078 -0.5 13.9004 -0.900391c7.59961 -0.599609 14.2002 -3.7998 20.0996 -8.7002c19.4004 -16.1992 39 -32.1992 58.5 -48.2998
c5.7002 -4.7002 12 -8.2002 19.6006 -8.5c16.7002 -0.599609 29 15.2002 24.7998 31.7998c-0.200195 0.700195 -0.400391 1.5 -0.0996094 2.80078c2.39941 -2 4.89941 -3.80078 7 -5.90039c14.0996 -14 18.0996 -39.2998 8.69922 -56.0996
c-2.09961 -3.80078 -5.2998 -7.10059 -8.09961 -10.8008c0.700195 -0.199219 1.7998 -0.5 3 -0.599609c14 -1.40039 27.2002 1 38.9004 9.09961c15.7998 10.9004 18 31.2002 5.39941 45.6006c-4.7002 5.39941 -8.89941 8 -18.7998 12
c6.5 1.2998 19.2002 0.200195 28.7002 -2.90039zM99.4004 268.7c-5.30078 9.2002 -13.2002 15.5996 -22.1006 21.2998c13.7002 0.5 26.6006 -0.200195 39.6006 -3.7002c-7 12.2002 -8.5 24.7002 -5 38.7002c5.2998 -11.9004 13.6992 -20.0996 23.5996 -26.7998
c19.7002 -13.2002 35.7002 -19.6006 46.7002 -30.2002c3.39941 -3.2998 6.2998 -7.09961 9.59961 -10.9004c-0.799805 2.10059 -1.39941 4.10059 -2.2002 6c-5 10.6006 -13 18.6006 -22.5996 25c-1.7998 1.2002 -2.7998 2.5 -3.40039 4.5
c-3.2998 12.5 -3 25.1006 -0.699219 37.6006c1 5.5 2.7998 10.8994 4.5 16.2998c0.799805 2.40039 2.2998 4.59961 4 6.59961c0.599609 -6.89941 0 -25.5 19.5996 -46c10.7998 -11.2998 22.4004 -21.8994 33.9004 -32.6992c9 -8.5 18.2998 -16.7002 25.5 -26.8008
c1.09961 -1.59961 2.19922 -3.2998 3.7998 -4.69922c-5 13 -14.2002 24.0996 -24.2002 33.7998c-9.59961 9.2998 -19.4004 18.3994 -29.2002 27.3994c-3.2998 3 -4.59961 6.7002 -5.09961 10.9004c-1.2002 10.4004 0 20.5996 4.2998 30.2002c0.5 1 1.09961 2 1.90039 3.2998
c0.5 -4.2002 0.599609 -7.90039 1.39941 -11.5996c4.7998 -23.1006 20.4004 -36.3008 49.2998 -63.5c10 -9.40039 19.3008 -19.2002 25.6006 -31.6006c4.7998 -9.2998 7.2998 -19 5.7002 -29.5996c-0.100586 -0.600586 0.5 -1.7002 1.09961 -2
c6.2002 -2.60059 10 -6.90039 9.7002 -14.2998c7.7002 2.59961 12.5 8 16.3994 14.5c4.2002 -20.2002 -9.09961 -50.3008 -27.1992 -58.7002c0.399414 4.5 5 23.3994 -16.5 27.7002c-6.80078 1.2998 -12.8008 1.2998 -22.9004 2.09961c4.7002 9 10.4004 20.5996 0.5 22.4004
c-24.9004 4.59961 -52.7998 -1.90039 -57.7998 -4.60059c8.2002 -0.399414 16.2998 -1 23.5 -3.2998c-2 -6.5 -4 -12.7002 -5.7998 -18.9004c-1.90039 -6.5 2.09961 -14.5996 9.2998 -9.59961c1.2002 0.900391 2.2998 1.90039 3.2998 2.7002
c-3.09961 -17.9004 -2.90039 -15.9004 -2.7998 -18.2998c0.299805 -10.2002 9.5 -7.80078 15.7002 -7.30078c-2.5 -11.7998 -29.5 -27.2998 -45.4004 -25.7998c7 4.7002 12.7002 10.2998 15.9004 17.9004c-6.5 -0.799805 -12.9004 -1.60059 -19.2002 -2.40039
l-0.299805 0.900391c4.69922 3.39941 8 7.7998 10.1992 13.0996c8.7002 21.1006 -3.59961 38 -25 39.9004c-9.09961 0.799805 -17.7998 -0.799805 -25.8994 -5.5c6.2002 15.5996 17.2002 26.5996 32.5996 34.5c-15.2002 4.2998 -8.89941 2.7002 -24.5996 6.2998
c14.5996 9.2998 30.2002 13.2002 46.5 14.5996c-5.2002 3.2002 -48.1006 3.60059 -70.2002 -20.8994c7.90039 -1.40039 15.5 -2.7998 23.2002 -4.2002c-23.7998 -7 -44 -19.7002 -62.4004 -35.5996c1.10059 4.7998 2.7002 9.5 3.2998 14.2998
c0.600586 4.5 0.800781 9.2002 0.100586 13.5996c-1.5 9.40039 -8.90039 15.1006 -19.7002 16.2998c-7.90039 0.900391 -15.5996 -0.0996094 -23.2998 -1.2998c-0.900391 -0.0996094 -1.7002 -0.299805 -2.90039 0c15.7998 14.7998 36 21.7002 53.1006 33.5
c6 4.5 6.7998 8.2002 3 14.9004zM227.8 241.9c3.2998 -16 12.6006 -25.5 23.7998 -24.3008c-4.59961 11.3008 -12.0996 19.5 -23.7998 24.3008z" />
    <glyph glyph-name="deploydog" unicode="&#xf38e;" horiz-adv-x="512" 
d="M382.2 312h51.7002v-239.6h-51.7002v20.6992c-19.7998 -24.7998 -52.7998 -24.0996 -73.7998 -14.6992c-26.2002 11.6992 -44.3008 38.0996 -44.3008 71.7998c0 29.7998 14.8008 57.8994 43.3008 70.7998c20.1992 9.09961 52.6992 10.5996 74.7998 -12.9004v103.9z
M317.5 150.2c0 -18.2002 13.5996 -33.5 33.2002 -33.5c19.7998 0 33.2002 16.3994 33.2002 32.8994c0 17.1006 -13.7002 33.2002 -33.2002 33.2002c-19.6006 0 -33.2002 -16.3994 -33.2002 -32.5996zM188.5 312h51.7002v-239.6h-51.7002v20.6992
c-19.7998 -24.7998 -52.7998 -24.0996 -73.7998 -14.6992c-26.2002 11.6992 -44.2998 38.0996 -44.2998 71.7998c0 29.7998 14.7998 57.8994 43.2998 70.7998c20.2002 9.09961 52.7002 10.5996 74.7998 -12.9004v103.9zM123.8 150.2c0 -18.2002 13.6006 -33.5 33.2002 -33.5
c19.7998 0 33.2002 16.3994 33.2002 32.8994c0 17.1006 -13.7002 33.2002 -33.2002 33.2002c-19.7002 0 -33.2002 -16.3994 -33.2002 -32.5996zM448 352h-384c-17.5996 0 -32 -14.5 -32 -32v-256c0 -17.5996 14.5 -32 32 -32h384c17.5996 0 32 14.5 32 32v256
c0 17.5996 -14.5 32 -32 32zM448 384c35.2002 0 64 -28.7998 64 -64v-256c0 -35.2002 -28.7998 -64 -64 -64h-384c-35.2002 0 -64 28.7998 -64 64v256c0 35.2002 28.7998 64 64 64h384z" />
    <glyph glyph-name="deskpro" unicode="&#xf38f;" horiz-adv-x="480" 
d="M205.9 -64l31.0996 38.4004c12.2998 0.199219 25.5996 1.39941 36.5 6.59961c38.9004 18.5996 38.4004 61.9004 38.2998 63.7998c-0.0996094 5 -0.799805 4.40039 -28.8994 37.4004h79.0996c-0.200195 -50.1006 -7.2998 -68.5 -10.2002 -75.7002
c-9.39941 -23.7002 -43.8994 -62.7998 -95.2002 -69.4004c-8.69922 -1.09961 -32.7998 -1.19922 -50.6992 -1.09961zM406.3 103.7l-119.2 -0.100586l17.4004 31.3008l175.5 -0.300781c-15.2002 -17.2998 -35.0996 -30.8994 -73.7002 -30.8994zM362.7 327.6v-168.3h-73.5
l-32.7002 -55.5h-6.5c-52.2998 0 -58.0996 56.5 -58.2998 58.9004c-1.2002 13.2002 -21.2998 11.5996 -20.1006 -1.7998c1.40039 -15.8008 8.80078 -40 26.4004 -57.1006h-91c-25.5 0 -110.8 26.7998 -107 114v213.3c0 16 9.7002 16.6006 15 16.8008h82
c0.200195 0 0.299805 -0.100586 0.5 -0.100586c4.2998 0.400391 50.0996 2.10059 50.0996 -43.7002c0 -13.2998 20.2002 -13.3994 20.2002 0c0 18.2002 -5.5 32.8008 -15.7998 43.7002h84.2002c108.7 0.400391 126.5 -79.3994 126.5 -120.2zM230.2 271.6l64 -29.2998
c13.2998 45.5 -42.2002 71.7002 -64 29.2998z" />
    <glyph glyph-name="digital-ocean" unicode="&#xf391;" horiz-adv-x="512" 
d="M87 -33.7998v73.5996h73.7002v-73.5996h-73.7002zM25.4004 101.4h61.5996v-61.6006h-61.5996v61.6006zM491.6 271.1c53.2002 -170.3 -73 -327.1 -235.6 -327.1v95.7998h0.299805v0.299805c101.7 0.200195 180.5 101 141.4 208
c-14.2998 39.6006 -46.1006 71.4004 -85.7998 85.7002c-107.101 38.7998 -208.101 -39.8994 -208.101 -141.7h-95.7998c0 162.2 156.9 288.7 327 235.601c74.2002 -23.2998 133.6 -82.4004 156.6 -156.601zM256.3 40.0996h-0.299805v-0.299805h-95.2998v95.6006h95.5996
v-95.3008z" />
    <glyph glyph-name="discord" unicode="&#xf392;" 
d="M297.216 204.8c0 -15.6162 -11.5195 -28.416 -26.1123 -28.416c-14.3359 0 -26.1113 12.7998 -26.1113 28.416s11.5195 28.416 26.1113 28.416c14.5928 0 26.1123 -12.7998 26.1123 -28.416zM177.664 233.216c14.5918 0 26.3682 -12.7998 26.1123 -28.416
c0 -15.6162 -11.5205 -28.416 -26.1123 -28.416c-14.3359 0 -26.1123 12.7998 -26.1123 28.416s11.5205 28.416 26.1123 28.416zM448 395.264v-459.264c-64.4941 56.9941 -43.8682 38.1279 -118.784 107.776l13.5684 -47.3604h-290.304
c-28.9287 0 -52.4805 23.5518 -52.4805 52.7363v346.111c0 29.1846 23.5518 52.7363 52.4805 52.7363h343.039c28.9287 0 52.4805 -23.5518 52.4805 -52.7363zM375.04 152.576c0 82.4316 -36.8643 149.248 -36.8643 149.248
c-36.8643 27.6475 -71.9355 26.8799 -71.9355 26.8799l-3.58398 -4.0957c43.5195 -13.3125 63.7441 -32.5127 63.7441 -32.5127c-60.8115 33.3291 -132.244 33.335 -191.232 7.42383c-9.47168 -4.35156 -15.1035 -7.42383 -15.1035 -7.42383
s21.2471 20.2246 67.3271 33.5361l-2.55957 3.07227s-35.0723 0.767578 -71.9355 -26.8799c0 0 -36.8643 -66.8164 -36.8643 -149.248c0 0 21.5039 -37.1201 78.0801 -38.9121c0 0 9.47168 11.5195 17.1514 21.248c-32.5117 9.72754 -44.7998 30.208 -44.7998 30.208
c3.7666 -2.63574 9.97656 -6.05273 10.4961 -6.40039c43.21 -24.1973 104.588 -32.126 159.744 -8.95996c8.95996 3.32812 18.9443 8.19238 29.4395 15.1045c0 0 -12.7998 -20.9922 -46.3359 -30.4639c7.68066 -9.72852 16.8965 -20.7363 16.8965 -20.7363
c56.5762 1.79199 78.3359 38.9121 78.3359 38.9121z" />
    <glyph glyph-name="discourse" unicode="&#xf393;" 
d="M225.9 416c122.699 0 222.1 -102.3 222.1 -223.9c0 -121.6 -99.4004 -223.899 -222.1 -223.899l-225.801 -0.200195s-0.0996094 224 -0.0996094 227.9c0 121.6 103.3 220.1 225.9 220.1zM224 64c70.7002 0 128 57.2998 128 128s-57.2998 128 -128 128
s-128 -57.2998 -128 -128c0 -22.0996 5.59961 -42.9004 15.4004 -61l-22.9004 -75l81.0996 20.0996c16.5 -7.7998 35 -12.0996 54.4004 -12.0996z" />
    <glyph glyph-name="dochub" unicode="&#xf394;" horiz-adv-x="416" 
d="M397.9 288h-141.9v140.4zM304 256h96v-126.1c0 -129.301 -70.2998 -193.9 -210.8 -193.9h-189.2v512h189.2c12.2002 0 23.7002 -1.09961 34.5996 -3.2998v-84c-10 1.7002 -21.0996 2.5 -33.0996 2.5h-94.7002v-337.3h94.7002c76.7998 0 113.3 33.2998 113.3 100.1v130z
" />
    <glyph glyph-name="docker" unicode="&#xf395;" horiz-adv-x="640" 
d="M349.9 211.7h-66.1006v59.3994h66.1006v-59.3994zM349.9 416v-60.7002h-66.1006v60.7002h66.1006zM428.1 271.2v-59.4004h-66.0996v59.4004h66.0996zM271.8 343.3v-60.0996h-66.0996v60.0996h66.0996zM349.9 343.3v-60.0996h-66.1006v60.0996h66.1006zM626.7 243.3
l13.2998 -8.89941c-1.90039 -3.90039 -7 -14.6006 -8.5 -17.1006c-23.7002 -45.2998 -69.9004 -45.5996 -91.2998 -45.2002c-54.5 -131.699 -171 -204.199 -328.4 -204.199c-72.7002 0 -128.3 22.2998 -165.399 66.1992c-38.2002 45.3008 -52.7002 111.301 -44 162.101
h434.699c22.6006 -0.400391 39.7002 6 48.4004 10.7002c-19.7002 30.1992 -14.7002 76 3.7002 103.8l9.2998 14l14 -9.2998c24.4004 -18.8008 37.7998 -39.7002 41.0996 -63.7002c25.5 4.7998 58.7002 1.2998 73.1006 -8.40039zM115.6 271.2h0.100586v-59.4004h-66.1006
v59.4004h66zM193.7 271.2v-59.4004h-66.1006v59.4004h66.1006zM271.8 271.2v-59.4004h-66.0996v59.4004h66.0996zM193.7 343.3v-60.0996h-66.1006v60.0996h66.1006z" />
    <glyph glyph-name="draft2digital" unicode="&#xf396;" horiz-adv-x="480" 
d="M480 49.9004l-144 -81.9004v64.2002l-336 -0.100586c18.2998 19.1006 84.5 87.8008 161.1 174.801c32.6006 37.1992 78 83.2998 69.7002 127.6c-5.2998 28.2998 -42.2002 50.7998 -83.2998 33.5c-8.59961 -3.59961 -24.5 -17.4004 -26.2998 -24.7002
c28.2998 -4.7002 48 -29.7002 48 -56.7998c0 -31.7002 -25.6006 -57.4004 -57.2998 -57.4004c-37.3008 0 -62.2002 34.1006 -56.7002 67.1006c1.2002 7.89941 5.09961 26.7998 18.2002 47.7002c14.8994 23.8994 45.1992 54.8994 104.3 67.2998
c103.8 21.7002 161.6 -36.6006 166 -41.2002c28.8994 -29.9004 48 -90.7002 12.7998 -153.3c-30 -53.4004 -81 -114.3 -111.8 -149.3h91.2998v64.6992zM369.9 77v-54.4004l47.0996 27.2002zM134.2 286.6c0 12.3008 -10 22.4004 -22.4004 22.4004
c-12.3994 0 -22.3994 -10 -22.3994 -22.4004c0 -12.3994 10 -22.3994 22.3994 -22.3994c12.4004 0 22.4004 10 22.4004 22.3994zM82.5 67.5h114.4c17.5996 19.2002 91.5 100.8 128.5 166.7c36.5996 65.0996 -5.80078 113.3 -5.80078 113.3
c-14.1992 14.9004 -36.8994 36.2002 -82.1992 38.2998c6.7998 -5.5 16.8994 -16.8994 24.2998 -35.7002c11.8994 -30.2998 6.7002 -69.5996 -28.4004 -112.699c-53.0996 -65.2002 -125.2 -142.5 -150.8 -169.9z" />
    <glyph glyph-name="dribbble-square" unicode="&#xf397;" 
d="M90.2002 219.8c8.89941 42.4004 37.3994 77.7002 75.7002 95.7002c3.59961 -4.90039 28 -38.7998 50.6992 -79c-64 -17 -120.3 -16.7998 -126.399 -16.7002zM314.6 294c-2.5 -3.5 -23 -31.0996 -71.5996 -49.4004c-22.4004 41.1006 -47.2002 74.9004 -51 80
c43.2998 10.5 89 -0.799805 122.6 -30.5996zM140.1 84c14.3008 29.2002 53 66.7998 108.101 85.5996c19.2002 -49.7998 27.2002 -91.5996 29.2002 -103.6c-44 -18.7002 -96.8008 -13.5996 -137.301 18zM238.9 192.2c-49.4004 -13.9004 -94.3008 -53.9004 -116.5 -91.7998
c-21.8008 24.2998 -35.1006 56.2998 -35.1006 91.3994c0 1.40039 0.100586 2.7998 0.100586 4.2002c6 -0.200195 72.1992 -1 140.399 19.4004c3.90039 -7.7002 7.7002 -15.4004 11.1006 -23.2002zM273.8 175.9c42.7998 6.89941 80.5 -4.30078 85.1006 -5.80078
c-6.10059 -38 -27.9004 -70.8994 -58.6006 -91.5996c-1.39941 8.2998 -8.59961 48.2998 -26.5 97.4004zM253.5 224.3c50.5 20.7002 73.4004 50 76.2998 53.9004c19.1006 -23.2002 30.6006 -52.7998 30.9004 -85.1006c-4.5 1 -49.7002 10.1006 -95.2002 4.40039
c-3.7002 9 -7.2002 17 -12 26.7998zM448 368v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h352c26.5 0 48 -21.5 48 -48zM384 192c0 88.2002 -71.7998 160 -160 160s-160 -71.7998 -160 -160s71.7998 -160 160 -160
s160 71.7998 160 160z" />
    <glyph glyph-name="dyalog" unicode="&#xf399;" horiz-adv-x="416" 
d="M0 416h171.2c74.5 0 137.7 -24 182.5 -69.5996c40.2002 -40.9004 62.2998 -95.6006 62.2998 -154.301c0 -111.399 -84.0996 -224.1 -244.8 -224.1h-171.2v64h171.2c122.2 0 180.8 84 180.8 160.1c0 79.7002 -67.4004 159.9 -180.8 159.9h-107.2v-55.2002h-64v119.2z" />
    <glyph glyph-name="earlybirds" unicode="&#xf39a;" horiz-adv-x="480" 
d="M313.2 400.5c1.2002 13 21.2998 14 36.5996 8.7002c0.900391 -0.299805 26.2002 -9.7002 19 -15.2002c-27.8994 7.40039 -56.3994 -18.2002 -55.5996 6.5zM112.2 393.6c-7.7998 6.2002 19.8994 16.4004 20.8994 16.7002c16.8008 5.7002 38.9004 4.60059 40.2002 -9.59961
c0.900391 -27.1006 -30.3994 1 -61.0996 -7.10059zM319.4 288c8.7998 0 16 -7.2002 16 -16s-7.2002 -16 -16 -16c-8.80078 0 -16 7.2002 -16 16s7.19922 16 16 16zM159.7 288c8.7998 0 16 -7.2002 16 -16s-7.2002 -16 -16 -16s-16 7.2002 -16 16s7.2002 16 16 16z
M478.2 124.8c-9.90039 -24 -40.7002 -11 -63.9004 1.2002c-13.5 -69.0996 -58.0996 -111.4 -126.3 -124.2c0.299805 -0.899414 -2 0.100586 24 -1c33.5996 -1.39941 63.7998 3.10059 97.4004 8c-19.8008 13.7998 -11.4004 37.1006 -9.80078 38.1006
c1.40039 0.899414 14.7002 -1.7002 21.6006 -11.5c8.59961 12.5 28.3994 14.7998 30.2002 13.5996c1.59961 -1.09961 6.59961 -20.9004 -6.90039 -34.5996c4.7002 0.899414 8.2002 1.59961 9.7998 2.09961c2.60059 0.799805 17.7002 -11.2998 3.10059 -13.2998
c-14.3008 -2.2998 -22.6006 -5.10059 -47.1006 -10.7998c-45.8994 -10.7002 -85.8994 -11.8008 -117.7 -12.8008l1 -11.5996c3.80078 -18.0996 -23.3994 -24.2998 -27.5996 -6.2002c0.799805 -17.8994 -27.0996 -21.7998 -28.4004 1l-0.5 -5.2998
c-0.699219 -18.4004 -28.3994 -17.9004 -28.2998 0.599609c-7.5 -13.5 -28.0996 -6.7998 -26.3994 8.5l1.19922 12.4004c-36.6992 -0.900391 -59.6992 -3.09961 -61.7998 -3.09961c-20.8994 0 -20.8994 31.5996 0 31.5996c2.40039 0 27.7002 -1.2998 63.2002 -2.7998
c-61.0996 15.5 -103.7 55 -114.9 118.2c-25 -12.8008 -57.5 -26.8008 -68.1992 -0.800781c-10.5 25.4004 21.5 42.6006 66.7998 73.4004c0.700195 6.59961 1.59961 13.2998 2.7002 19.7998c-14.4004 19.6006 -11.6006 36.2998 -16.1006 60.4004
c-16.7998 -2.40039 -23.2002 9.09961 -23.5996 23.0996c0.299805 7.2998 2.09961 14.9004 2.39941 15.4004c1.10059 1.7998 10.1006 2 12.7002 2.59961c6 31.7002 50.6006 33.2002 90.9004 34.5c19.7002 21.7998 45.2002 41.5 80.8994 48.2998
c-15.2998 19.4004 -3.39941 39.9004 -2.39941 40.4004c1.7002 0.799805 21.2002 -4.2998 26.2998 -23.2002c5.2002 8.7998 18.2998 11.4004 19.5996 10.7002c1.10059 -0.599609 6.40039 -15 -4.89941 -25.9004c40.2998 -3.5 72.2002 -24.6992 96 -50.6992
c36.0996 -1.5 71.7998 -5.90039 77.0996 -34c2.7002 -0.600586 11.6006 -0.800781 12.7002 -2.60059c0.299805 -0.5 2.09961 -8.09961 2.40039 -15.3994c-0.5 -13.9004 -6.80078 -25.4004 -23.6006 -23.1006c-3.2002 -17.2998 -2.7002 -32.8994 -8.7002 -47.7002
c2.40039 -11.6992 4 -23.7998 4.80078 -36.3994c37 -25.4004 70.2998 -42.5 60.2998 -66.9004zM207.4 288.1c0.899414 44 -37.9004 42.2002 -78.6006 40.3008c-21.7002 -1 -38.8994 -1.90039 -45.5 -13.9004c-11.3994 -20.9004 5.90039 -92.9004 23.2002 -101.2
c9.7998 -4.7002 73.4004 -7.89941 86.2998 7.10059c8.2002 9.39941 15 49.3994 14.6006 67.6992zM259.4 229.8c-4.30078 12.4004 -6 30.1006 -15.3008 32.7002c-2 0.5 -9 0.5 -11 0c-10 -2.7998 -10.7998 -22.0996 -17 -37.2002c15.4004 0 19.3008 -9.7002 23.7002 -9.7002
c4.2998 0 6.2998 11.3008 19.6006 14.2002zM395.1 314.5c-6.59961 12.0996 -24.7998 12.9004 -46.5 13.9004c-40.1992 1.89941 -78.1992 3.7998 -77.2998 -40.3008c-0.5 -18.2998 5 -58.2998 13.2002 -67.7998c13 -14.8994 76.5996 -11.7998 86.2998 -7.09961
c15.7998 7.59961 36.5 78.8994 24.2998 101.3z" />
    <glyph glyph-name="erlang" unicode="&#xf39d;" horiz-adv-x="640" 
d="M87.2002 394.5c-41.5 -50.2002 -65.6006 -116.2 -65.5 -192.9c-0.100586 -86.7998 29 -159.5 78.7002 -212.1h-100.4v405h87.2002zM325.4 384.8c46.1992 -0.0996094 79.5996 -33.5 80.6992 -83.2002h-169.899c4.09961 49.7002 43.2998 83.1006 89.2002 83.2002z
M556.1 394.4h0.300781l-0.100586 0.0996094zM556.4 394.4h83.5996v-405h-80.7998c21.3994 23 40.5 49.8994 57.8994 80.7998l-96.3994 48.2002c-33.9004 -55.1006 -83.4004 -105.801 -151.9 -106.101c-99.7002 0.400391 -138.8 85.6006 -138.6 195.3h372.399
c0.5 12.4004 0.5 18.1006 0 24.1006c2.5 65.2002 -14.7998 120 -46.1992 162.7z" />
    <glyph glyph-name="facebook-f" unicode="&#xf39e;" horiz-adv-x="320" 
d="M279.14 160h-74.6895v-224h-100.17v224h-81.3906v92.6602h81.3906v70.6201c0 80.3398 47.8594 124.72 121.08 124.72c35.0693 0 71.75 -6.25977 71.75 -6.25977v-78.8906h-40.4199c-39.8203 0 -52.2402 -24.71 -52.2402 -50.0596v-60.1299h88.9102z" />
    <glyph glyph-name="facebook-messenger" unicode="&#xf39f;" horiz-adv-x="512" 
d="M256.55 440c140.04 0 247.45 -102.34 247.45 -240.57c0 -175.13 -166.15 -273.229 -319.44 -231.04c-8.96973 2.44043 -9.64941 0.600586 -62.5596 -22.6992c-2.4375 -1.06445 -5.14355 -1.6543 -7.97168 -1.6543c-10.7617 0 -19.541 8.55176 -19.9082 19.2236
c-1.41992 46.3701 0.299805 50.7207 -8.0498 58.2305c-48.3604 43.1602 -78.0703 105.64 -78.0703 177.939c0 138.23 108.52 240.57 248.55 240.57zM405.79 254.87c7.0498 11.0801 -6.65039 23.5996 -17.0898 15.6201l-78.4102 -59.3799
c-2.50586 -1.87988 -5.64258 -2.99316 -9.0127 -2.99316s-6.48145 1.11328 -8.9873 2.99316l-58.0596 43.46c-6.23047 4.65234 -13.9668 7.46582 -22.333 7.46582c-13.2803 0 -24.9512 -6.94434 -31.5771 -17.3965l-73 -115.569
c-7.05078 -11.0703 6.64941 -23.6006 17.1094 -15.6699l78.3701 59.4395c2.50586 1.87891 5.64258 2.99316 9.0127 2.99316s6.48242 -1.11426 8.9873 -2.99316l58.0801 -43.4697c6.23047 -4.65039 13.9658 -7.46191 22.3301 -7.46191
c13.2803 0 24.9512 6.94141 31.5801 17.3916z" />
    <glyph glyph-name="firstdraft" unicode="&#xf3a1;" horiz-adv-x="384" 
d="M384 256h-64v-128h-128v-128h-192v25.5996h166.4v128h128v128h89.5996v-25.5996zM358.4 217.6h25.5996v-153.6h-128v-128h-192v25.5996h166.4v128h128v128zM384 25.5996v-25.5996h-64v-64h-25.5996v89.5996h89.5996zM0 448h384v-128h-128v-128h-128v-128h-128v384z" />
    <glyph glyph-name="fonticons-fi" unicode="&#xf3a2;" horiz-adv-x="384" 
d="M114.4 224h92.3994l-15.2002 -51.2002h-76.3994v-157.8c0 -8 -2.7998 -9.2002 4.39941 -10l59.6006 -5.59961v-34.4004h-179.2v35.2002l29.2002 2.7998c7.2002 0.799805 9.2002 3.2002 9.2002 10.7998v155.8c0 3.2002 -4 3.2002 -8 3.2002h-30.4004v51.2002h38.4004
v28.7998c0 68 36.3994 96 106 96c46.7998 0 88.7998 -11.2002 88.7998 -72.3994l-69.6006 -8.40039c0.400391 25.5996 -6 31.5996 -22.3994 31.5996c-25.2002 0 -26 -13.5996 -26 -37.5996v-32c0 -3.2002 -4.7998 -6 -0.799805 -6zM384 -35h-140.8v34.4004l28 3.59961
c7.2002 0.799805 10.3994 2.40039 10.3994 10v148c0 5.59961 -4 9.2002 -9.19922 10.7998l-33.2002 8.7998l9.2002 40.4004h110v-208c0 -8 -3.60059 -8.7998 4 -10l21.5996 -3.59961v-34.4004zM354 312.2l12.4004 -45.6006l-10 -10l-42.8008 22.8008l-42.7998 -22.8008
l-10 10l12.4004 45.6006l-30 36.3994l4.7998 10h38l21.2002 38.4004h12.7998l21.2002 -38.4004h38l4.7998 -13.1992z" />
    <glyph glyph-name="fort-awesome-alt" unicode="&#xf3a3;" horiz-adv-x="512" 
d="M208 210.6c2.09961 0 3.7002 -1.59961 3.7002 -3.69922v-51.7002c0 -2.10059 -1.60059 -3.7002 -3.7002 -3.7002h-22.2002c-2.09961 0 -3.7002 1.59961 -3.7002 3.7002v51.7002c0 2.09961 1.60059 3.69922 3.7002 3.69922h22.2002zM326.2 210.6
c2 0 3.59961 -1.59961 3.7002 -3.69922v-51.7002c0 -2.10059 -1.60059 -3.7002 -3.7002 -3.7002h-22.2002c-2.09961 0 -3.7002 1.59961 -3.7002 3.7002v51.7002c0 2.09961 1.60059 3.69922 3.7002 3.69922h22.2002zM458.2 335.7
c28.8994 -40.7002 45.7998 -90.2002 45.7998 -143.7c0 -2 0 -4 -0.0996094 -6c0 -0.700195 0 -1.2998 -0.100586 -2c0 -1.2998 -0.0996094 -2.7002 -0.200195 -4c0 -0.799805 -0.0996094 -1.5 -0.0996094 -2.2998
c-0.0996094 -1.2002 -0.0996094 -2.40039 -0.200195 -0.700195c-0.0996094 -0.799805 -0.0996094 -1.59961 -0.200195 -2.40039c-0.0996094 -1.19922 -0.199219 -2.39941 -0.299805 -3.5c-0.0996094 -0.799805 -0.200195 -1.59961 -0.200195 -2.39941
c-0.0996094 -1.2002 -0.299805 -2.40039 -0.399414 -3.60059c-0.100586 -0.799805 -0.200195 -1.5 -0.299805 -2.2998c-0.200195 -1.2998 -0.400391 -2.59961 -0.5 -3.89941c-0.100586 -0.600586 -0.200195 -1.30078 -0.300781 -1.90039l-0.899414 -5.7002
c-0.100586 -0.599609 -0.200195 -1.09961 -0.299805 -1.7002c-0.200195 -1.2998 -0.5 -2.69922 -0.800781 -4c-0.199219 -0.799805 -0.299805 -1.59961 -0.5 -2.39941c-0.199219 -1.10059 -0.5 -2.2002 -0.699219 -3.2002
c-0.200195 -0.900391 -0.400391 -1.7002 -0.600586 -2.59961c-0.200195 -1 -0.5 -2 -0.700195 -3c-0.199219 -0.900391 -0.5 -1.80078 -0.699219 -2.7002c-0.300781 -1 -0.5 -1.90039 -0.800781 -2.90039c-0.199219 -0.899414 -0.5 -1.7998 -0.799805 -2.7002
c-0.299805 -0.899414 -0.599609 -1.89941 -0.799805 -2.7998c-0.299805 -0.899414 -0.5 -1.7998 -0.799805 -2.7002c-0.299805 -0.899414 -0.600586 -1.7998 -0.900391 -2.7998c-0.5 -1.59961 -1.09961 -3.2998 -1.7002 -4.89941
c-0.299805 -0.900391 -0.599609 -1.80078 -1 -2.80078c-0.399414 -1 -0.699219 -2 -1.09961 -3c-0.299805 -0.799805 -0.599609 -1.5 -0.900391 -2.2998l-1.19922 -3c-0.300781 -0.700195 -0.600586 -1.5 -0.900391 -2.2002c-0.400391 -1 -0.799805 -2 -1.2998 -3
l-0.900391 -2.09961c-0.399414 -1 -0.899414 -2 -1.39941 -3c-0.300781 -0.700195 -0.600586 -1.2998 -0.900391 -2c-0.5 -1 -1 -2.09961 -1.5 -3.09961c-0.299805 -0.600586 -0.599609 -1.10059 -0.799805 -1.7002c-0.600586 -1.10059 -1.10059 -2.2002 -1.7002 -3.2998
c-0.0996094 -0.200195 -0.200195 -0.300781 -0.299805 -0.5c-2.2002 -4.10059 -4.40039 -8.2002 -6.7998 -12.2002c-0.200195 -0.400391 -0.5 -0.799805 -0.700195 -1.2002c-0.700195 -1.09961 -1.2998 -2.2002 -2 -3.2998
c-0.299805 -0.5 -0.600586 -0.900391 -0.900391 -1.40039c-0.700195 -1.09961 -1.39941 -2.09961 -2 -3.2002c-0.299805 -0.5 -0.599609 -0.899414 -0.899414 -1.39941c-0.700195 -1.10059 -1.40039 -2.10059 -2.10059 -3.2002
c-0.299805 -0.400391 -0.599609 -0.799805 -0.799805 -1.2002c-0.799805 -1.09961 -1.5 -2.2002 -2.2998 -3.2998c-0.200195 -0.200195 -0.299805 -0.5 -0.5 -0.700195c-37.6006 -54.7002 -94.5 -91.3994 -160.101 -102.399
c-0.899414 -0.100586 -1.69922 -0.300781 -2.59961 -0.400391c-1 -0.200195 -2.09961 -0.299805 -3.09961 -0.5c-0.900391 -0.0996094 -1.80078 -0.299805 -2.80078 -0.400391c-1 -0.0996094 -2 -0.299805 -3 -0.399414c-1 -0.100586 -2 -0.200195 -2.89941 -0.299805
c-1 -0.100586 -1.90039 -0.200195 -2.90039 -0.300781c-1 -0.0996094 -2.09961 -0.199219 -3.09961 -0.299805c-0.900391 -0.0996094 -1.7998 -0.200195 -2.7002 -0.200195c-1.09961 -0.0996094 -2.2998 -0.0996094 -3.40039 -0.199219
c-0.799805 0 -1.69922 -0.100586 -2.5 -0.100586c-1.2998 -0.0996094 -2.59961 -0.0996094 -3.89941 -0.0996094c-0.700195 0 -1.40039 -0.100586 -2.10059 -0.100586c-2 0 -4 -0.0996094 -6 -0.0996094s-4 0 -6 0.0996094c-0.699219 0 -1.39941 0 -2.09961 0.100586
c-1.2998 0 -2.59961 0.0996094 -3.90039 0.0996094c-0.799805 0 -1.69922 0.100586 -2.5 0.100586c-1.09961 0.0996094 -2.2998 0.0996094 -3.39941 0.199219c-0.900391 0.100586 -1.7998 0.100586 -2.7002 0.200195c-1 0.100586 -2.09961 0.200195 -3.09961 0.299805
c-1 0.100586 -1.90039 0.200195 -2.90039 0.300781c-1 0.0996094 -2 0.199219 -2.90039 0.299805c-1 0.0996094 -2 0.200195 -3 0.399414c-0.899414 0.100586 -1.7998 0.300781 -2.7998 0.400391s-2.09961 0.299805 -3.09961 0.5
c-0.900391 0.0996094 -1.7002 0.299805 -2.60059 0.400391c-65.5996 10.8994 -122.5 47.6992 -160 99.3994c-0.199219 0.200195 -0.299805 0.5 -0.5 0.700195c-0.799805 1.09961 -1.59961 2.2002 -2.2998 3.2998c-0.299805 0.400391 -0.599609 0.799805 -0.799805 1.2002
c-0.700195 1.09961 -1.40039 2.09961 -2.09961 3.2002c-0.300781 0.5 -0.600586 0.899414 -0.900391 1.39941c-0.700195 1.10059 -1.40039 2.10059 -2 3.2002c-0.299805 0.5 -0.599609 0.900391 -0.900391 1.40039c-0.699219 1.09961 -1.2998 2.2002 -2 3.2998
c-0.199219 0.400391 -0.5 0.799805 -0.699219 1.2002c-2.40039 4 -4.60059 8.09961 -6.80078 12.2002c-0.0996094 0.199219 -0.199219 0.299805 -0.299805 0.5c-0.599609 1.09961 -1.09961 2.19922 -1.7002 3.2998c-0.299805 0.599609 -0.599609 1.09961 -0.799805 1.7002
c-0.5 1 -1 2.09961 -1.5 3.09961c-0.299805 0.700195 -0.599609 1.2998 -0.899414 2c-0.5 1 -0.900391 2 -1.40039 3l-0.900391 2.09961c-0.399414 1 -0.899414 2 -1.2998 3c-0.299805 0.700195 -0.599609 1.5 -0.899414 2.2002l-1.2002 3
c-0.299805 0.799805 -0.600586 1.5 -0.900391 2.2998c-0.399414 1 -0.799805 2 -1.09961 3c-0.299805 0.900391 -0.600586 1.80078 -1 2.80078c-0.600586 1.59961 -1.10059 3.2998 -1.7002 4.89941c-0.299805 0.900391 -0.599609 1.7998 -0.900391 2.7998
c-0.299805 0.900391 -0.5 1.80078 -0.799805 2.7002c-0.299805 0.900391 -0.599609 1.90039 -0.799805 2.7998c-0.299805 0.900391 -0.5 1.80078 -0.799805 2.7002c-0.299805 1 -0.5 1.90039 -0.799805 2.90039c-0.200195 0.899414 -0.5 1.7998 -0.700195 2.7002
c-0.299805 1 -0.5 2 -0.700195 3c-0.200195 0.899414 -0.400391 1.69922 -0.599609 2.59961c-0.200195 1.09961 -0.5 2.2002 -0.700195 3.2002c-0.200195 0.799805 -0.299805 1.59961 -0.5 2.39941c-0.299805 1.30078 -0.5 2.7002 -0.799805 4
c-0.100586 0.600586 -0.200195 1.10059 -0.300781 1.7002l-0.899414 5.7002c-0.100586 0.599609 -0.200195 1.2998 -0.299805 1.90039c-0.200195 1.2998 -0.400391 2.59961 -0.5 3.89941c-0.100586 0.799805 -0.200195 1.5 -0.300781 2.2998
c-0.0996094 1.2002 -0.299805 2.40039 -0.399414 3.60059c-0.100586 0.799805 -0.200195 1.59961 -0.200195 2.39941c-0.0996094 1.2002 -0.200195 2.40039 -0.299805 3.5c-0.100586 0.800781 -0.100586 1.60059 -0.200195 2.40039
c-0.0996094 1.2002 -0.200195 2.40039 -0.200195 3.7002c0 0.799805 -0.0996094 1.5 -0.0996094 2.2998c-0.100586 1.2998 -0.100586 2.7002 -0.200195 4c0 0.700195 0 1.2998 -0.0996094 2c0 2 -0.100586 4 -0.100586 6c0 53.5 16.9004 103 45.7998 143.6
c2.30078 3.2002 4.7002 6.40039 7.10059 9.5c4.89941 6.2002 10.0996 12.3008 15.5996 18c2.7002 2.90039 5.5 5.7002 8.40039 8.40039c2.89941 2.7002 5.7998 5.40039 8.7998 8c4.5 3.90039 9.09961 7.59961 13.9004 11.2002c1.59961 1.2002 3.19922 2.39941 4.7998 3.5
c27.2998 19.5996 59 33.7002 93.2998 40.7998c16.0996 3.2998 32.9004 5 50 5s33.7998 -1.7002 50 -5c34.2998 -7 66 -21.0996 93.5996 -40.7002c1.60059 -1.2002 3.2002 -2.2998 4.80078 -3.5c4.7998 -3.59961 9.39941 -7.2998 13.8994 -11.2002
c12 -10.3994 23 -21.8994 32.7998 -34.3994c2.5 -3.10059 4.80078 -6.2998 7.10059 -9.5zM448 76.5v71.2998c0 2.10059 -1.59961 3.7002 -3.7002 3.7002h-22.2002c-2.09961 0 -3.69922 -1.59961 -3.69922 -3.7002v-25.7998h-29.5v144
c0 2.09961 -1.60059 3.7002 -3.7002 3.7002h-22.1006c-2.09961 0 -3.69922 -1.60059 -3.69922 -3.7002v-25.9004h-29.5v25.9004c0 2.09961 -1.60059 3.7002 -3.7002 3.7002h-22.2002c-2.09961 0 -3.7002 -1.60059 -3.7002 -3.7002v-25.9004h-29.5v25.9004
c0 4.7998 -6.5 3.7002 -9.5 3.7002v30.7002c6.7002 1.59961 13.7998 2.7998 20.7998 2.7998c8.80078 0 16.8008 -3.5 25.4004 -3.5c3.7002 0 22.4004 0.899414 22.4004 6.5v48.3994c0 2.10059 -1.60059 3.7002 -3.7002 3.7002c-4.2002 0 -12.2002 -3.5 -19.4004 -3.5
c-7.89941 0 -16.8994 3.5 -26.2998 3.5c-6.5 0 -12.9004 -0.899414 -19.2002 -2.2998v3.90039c4.40039 2.09961 7.40039 6.69922 7.40039 11.5c0 16.7998 -25.4004 16.7998 -25.4004 0c0 -4.80078 3 -9.5 7.40039 -11.5v-90.2002c-3 0 -9.5 1.09961 -9.5 -3.7002v-25.9004
h-29.5v25.9004c0 2.09961 -1.60059 3.7002 -3.7002 3.7002h-22.2002c-2.09961 0 -3.7002 -1.60059 -3.7002 -3.7002v-25.9004h-29.5v25.9004c0 2.09961 -1.59961 3.7002 -3.69922 3.7002h-22.1006c-2.09961 0 -3.7002 -1.60059 -3.7002 -3.7002v-144h-29.5996v25.7998
c0 2.10059 -1.59961 3.7002 -3.7002 3.7002h-22.0996c-2.10059 0 -3.7002 -1.59961 -3.7002 -3.7002v-71.2998c9.40039 -15.5 20.5996 -29.9004 33.5996 -42.9004c20.6006 -20.5996 44.5 -36.6992 71.2002 -48c13.9004 -5.89941 28.2002 -10.2998 42.9004 -13.1992v75.7998
c0 58.5996 88.5996 58.5996 88.5996 0v-75.7998c14.7002 2.89941 29 7.39941 42.9004 13.1992c26.7002 11.3008 50.5996 27.4004 71.2002 48c13 13 24.1992 27.4004 33.5996 42.9004z" />
    <glyph glyph-name="freebsd" unicode="&#xf3a4;" 
d="M303.7 351.8c11.0996 11.1006 115.5 77 139.2 53.2002c23.6992 -23.7002 -42.1006 -128.1 -53.2002 -139.2c-11.1006 -11.0996 -39.4004 -0.899414 -63.1006 22.9004c-23.7998 23.7002 -34.0996 52 -22.8994 63.0996zM109.9 379.9
c-31.6006 -19.4004 -57.9004 -46.5 -76.4004 -78.7002c-20.7998 36.2998 -44.5 89.0996 -27.9004 105.7c16.4004 16.5 68 -6.40039 104.301 -27zM406.7 274c3.2998 5.5 7 11.7998 10.8994 18.7998c17.6006 -31.2998 27.7002 -67.3994 27.7002 -105.8
c0 -119.1 -96.5 -215.6 -215.6 -215.6c-119.101 0 -215.601 96.5996 -215.601 215.6c0 119.1 96.5 215.6 215.601 215.6c35.8994 0 69.7002 -8.7998 99.5 -24.2998c-7.2998 -4 -13.9004 -8 -19.6006 -11.5996c-26 4.7002 -32.8994 -16.4004 -14.8994 -48.7002
c21.7998 -43.0996 89 -90.4004 109.3 -70.0996c5.40039 5.39941 6 14.7998 2.7002 26.0996z" />
    <glyph glyph-name="gitkraken" unicode="&#xf3a6;" horiz-adv-x="592" 
d="M565.7 329.9c11.7998 -31.6006 18.2998 -65.7002 18.2998 -101.4c0 -155.1 -122.6 -281.6 -276.3 -287.7v145.8c-8.40039 -0.5 -16.6006 -0.399414 -23.4004 0v-145.899c-153.7 6.2002 -276.3 132.7 -276.3 287.8c0 35.7002 6.5 69.7998 18.2998 101.3
c2.2998 6.2002 9.2998 9.2002 15.2998 6.60059c5.7002 -2.40039 8.5 -8.80078 6.30078 -14.6006c-10.9004 -29 -16.9004 -60.5 -16.9004 -93.2998c0 -134.6 100.4 -245.7 230.2 -262.7v123.7c-7.90039 1.59961 -15.4004 3.7002 -23 6.2002v-104
c-106.7 26 -185.9 122.1 -185.9 236.8c0 91.7998 50.7998 171.8 125.8 213.3c5.80078 3.2002 13 0.900391 15.9004 -5c2.7002 -5.5 0.700195 -12.0996 -4.7002 -15.0996c-67.8994 -37.7002 -113.899 -110.101 -113.899 -193.2c0 -93.4004 57.8994 -173.2 139.8 -205.4
v92.2002c-14.2002 4.5 -24.7998 17.7002 -24.7998 33.5c0 13.1006 6.69922 24.4004 17.2998 30.5c-8.2002 79.6006 -44.5 58.6006 -44.5 83.9004v14.7998c0 38 87.8994 161.7 129.1 164.7c2.60059 0.200195 5.10059 0.200195 7.60059 0
c41.0996 -2.90039 129 -126.7 129 -164.7v-14.7002c0 -25.2998 -36.2002 -4.39941 -44.5 -83.8994c10.5 -6.10059 17.2998 -17.4004 17.2998 -30.5c0 -15.8008 -10.7002 -29 -24.9004 -33.5v-92.2002c81.9004 32.2998 139.8 112.1 139.8 205.399
c0 83.2002 -46 155.601 -113.899 193.2c-5.2998 2.90039 -7.40039 9.60059 -4.7002 15.1006c2.90039 5.89941 10.2002 8.19922 15.9004 5c75 -41.5 125.8 -121.5 125.8 -213.301c0 -114.699 -79.2002 -210.899 -185.9 -236.8v104
c-7.5 -2.59961 -15.0996 -4.7002 -23 -6.2002v-123.699c129.9 17 230.2 128.1 230.2 262.699c0 32.8008 -6 64.3008 -16.9004 93.3008c-2.19922 5.69922 0.600586 12.1992 6.30078 14.5996c6 2.59961 13 -0.5 15.2998 -6.59961zM365.9 172.5
c-13.1006 0 -23.7002 -10.5996 -23.7002 -23.7002c0 -13.2002 10.7002 -23.7002 23.7002 -23.7002c13.0996 0 23.6992 10.6006 23.6992 23.7002c0 13.2002 -10.6992 23.7002 -23.6992 23.7002zM226.1 125.2c13.2002 0 23.7002 10.7002 23.7002 23.7002
c0 13.0996 -10.5996 23.6992 -23.7002 23.6992c-13.1992 0 -23.6992 -10.6992 -23.6992 -23.6992s10.5 -23.7002 23.6992 -23.7002z" />
    <glyph glyph-name="gofore" unicode="&#xf3a7;" horiz-adv-x="400" 
d="M324 128.2c54.2998 0 65.7002 -50.1006 67.7002 -77.7002c-46.5 -56.2998 -107.8 -82.5 -171 -82.5c-123.7 0 -220.7 101.5 -220.7 224c0 123.4 98 224 220.7 224c59 0 114.3 -23.2998 156.1 -65.5996l-62.2998 -63.3008c-25 25.4004 -58.2998 39.4004 -93.5996 39.4004
c-73.2002 0 -132.4 -60.2998 -132.4 -134.4c0 -74.1992 59.2002 -134.399 132.4 -134.399c33.5996 0 65.3994 12.7002 89.8994 35.7998v34.7002h13.2002zM311.9 240.7c47.6992 0 88.0996 -35 88.0996 -100.2v-30.5996c-15.5 26.6992 -42.5 41.7998 -76 41.7998h-118.4v89
h106.301z" />
    <glyph glyph-name="goodreads" unicode="&#xf3a8;" 
d="M299.9 256.8c5.09961 -37.2998 -4.7002 -79 -35.9004 -100.7c-22.2998 -15.5 -52.7998 -14.0996 -70.7998 -5.69922c-37.1006 17.2998 -49.5 58.5996 -46.7998 97.1992c4.2998 60.9004 40.8994 87.9004 75.2998 87.5c46.8994 0.200195 71.7998 -31.7998 78.2002 -78.2998
zM448 360v-336c0 -30.9004 -25.0996 -56 -56 -56h-336c-30.9004 0 -56 25.0996 -56 56v336c0 30.9004 25.0996 56 56 56h336c30.9004 0 56 -25.0996 56 -56zM330 134.8c0 0 -0.0996094 34 -0.0996094 217.3h-29v-40.2998c-0.800781 -0.299805 -1.2002 0.5 -1.60059 1.2002
c-9.59961 20.7002 -35.8994 46.2998 -76 46c-51.8994 -0.400391 -87.2002 -31.2002 -100.6 -77.7998c-4.2998 -14.9004 -5.7998 -30.1006 -5.5 -45.6006c1.7002 -77.8994 45.0996 -117.8 112.399 -115.199c28.9004 1.09961 54.5 17 69 45.1992
c0.5 1 1.10059 1.90039 1.7002 2.90039c0.200195 -0.0996094 0.400391 -0.0996094 0.600586 -0.200195c0.299805 -3.7998 0.199219 -30.7002 0.0996094 -34.5c-0.200195 -14.7998 -2 -29.5 -7.2002 -43.5c-7.7998 -21 -22.2998 -34.7002 -44.5 -39.5
c-17.7998 -3.89941 -35.5996 -3.7998 -53.2002 1.2002c-21.5 6.09961 -36.5 19 -41.0996 41.7998c-0.299805 1.60059 -1.2998 1.2998 -2.2998 1.2998h-26.7998c0.799805 -10.5996 3.19922 -20.2998 8.5 -29.1992c24.1992 -40.5 82.6992 -48.5 128.199 -37.4004
c49.9004 12.2998 67.3008 54.9004 67.4004 106.3z" />
    <glyph glyph-name="goodreads-g" unicode="&#xf3a9;" horiz-adv-x="384" 
d="M42.5996 44.7002h2.80078c12.6992 0 25.5 0 38.1992 -0.100586c1.60059 0 3.10059 0.400391 3.60059 -2.09961c7.09961 -34.9004 30 -54.5996 62.8994 -63.9004c26.9004 -7.59961 54.1006 -7.7998 81.3008 -1.7998c33.7998 7.40039 56 28.2998 68 60.4004
c8 21.5 10.6992 43.7998 11 66.5c0.0996094 5.7998 0.299805 47 -0.200195 52.7998l-0.900391 0.299805c-0.799805 -1.5 -1.7002 -2.89941 -2.5 -4.39941c-22.0996 -43.1006 -61.2998 -67.4004 -105.399 -69.1006c-103 -4 -169.4 57 -172 176.2
c-0.5 23.7002 1.7998 46.9004 8.2998 69.7002c20.5996 71.0996 74.5996 118.2 153.899 118.8c61.3008 0.400391 101.5 -38.7002 116.2 -70.2998c0.5 -1.10059 1.2998 -2.2998 2.40039 -1.90039v61.6006h44.2998c0 -280.301 0.0996094 -332.2 0.0996094 -332.2
c-0.0996094 -78.5 -26.6992 -143.7 -103 -162.2c-69.5 -16.9004 -159 -4.7998 -196 57.2002c-8 13.5 -11.7998 28.2998 -13 44.5zM188.9 411.5c-52.5 0.5 -108.5 -40.7002 -115 -133.8c-4.10059 -59 14.7998 -122.2 71.5 -148.601
c27.5996 -12.8994 74.2998 -15 108.3 8.7002c47.5996 33.2002 62.7002 97 54.7998 154c-9.7002 71.1006 -47.7998 120 -119.6 119.7z" />
    <glyph glyph-name="google-drive" unicode="&#xf3aa;" horiz-adv-x="512" 
d="M339 133.1l-163.6 282.9h161.199l163.601 -282.9h-161.2zM201.5 109.5h310.5l-80.5996 -141.5h-310.5zM154.1 380.6l82.9004 -141.399l-156.4 -271.2l-80.5996 141.5z" />
    <glyph glyph-name="google-play" unicode="&#xf3ab;" horiz-adv-x="512" 
d="M325.3 213.7l-220.7 221.3l280.801 -161.2zM47 448l256.6 -255.9l-256.6 -256c-13 6.80078 -21.7002 19.2002 -21.7002 35.3008v441.3c0 16.0996 8.7002 28.5 21.7002 35.2998zM472.2 222.4c19.2002 -14.3008 19.2002 -46.5 1.2002 -60.8008l-60.1006 -34.0996
l-65.7002 64.5l65.7002 64.5zM104.6 -51l220.7 221.3l60.1006 -60.0996z" />
    <glyph glyph-name="gripfire" unicode="&#xf3ac;" horiz-adv-x="384" 
d="M112.5 146.6c0 -26.8994 16.5996 -47.1992 32.5996 -69.5c22.5 -30.1992 44.2002 -56.8994 44.2002 -86.5c-0.0996094 -14.5 -4.39941 -29.6992 -17.5 -46.3994c0 5.2998 4.7998 12.2002 4.7998 22.2998c0 15.2002 -13 39.9004 -78.0996 86.5996
c-34.2998 29.1006 -66.5 58.5 -66.5 108.301c0 114.699 147.1 176.5 147.1 268.6c0 3.2998 -0.199219 6.7002 -0.599609 10c5.09961 -2.40039 39.0996 -43.2998 39.0996 -90.4004c0 -80.5 -105.1 -129.199 -105.1 -203zM317.8 185.6
c1.5 -8.39941 2.2002 -16.5996 2.2002 -24.5996c0 -51.7998 -29.4004 -97.5 -67.2998 -136.8c-1 -1 -2.2002 -2.40039 -3.2002 -2.40039c-3.59961 0 -35.5 41.6006 -35.5 53.2002c0 0 41.7998 55.7002 41.7998 96.9004c0 10.7998 -2.7002 21.6992 -9.09961 33.3994
c-1.5 -32.2998 -55.7002 -87.7002 -58.1006 -87.7002c-2.69922 0 -17.8994 22 -17.8994 42.1006c0 5.2998 1 10.7002 3.2002 15.7998c2.39941 5.5 56.5996 72 56.5996 116.7c0 6.2002 -1 12 -3.40039 17.0996l-4 7.2002c16.7002 -6.5 82.6006 -64.0996 94.7002 -130.9z" />
    <glyph glyph-name="grunt" unicode="&#xf3ad;" horiz-adv-x="384" 
d="M61.2998 258.7c0.5 4.89941 2.7998 10 7 12h0.100586c-4.60059 1.7002 -9.2002 3.09961 -13.5 4.09961c42.1992 10.2002 73.3994 -20.5996 83.0996 -31.7998c16.5996 -19.2002 35.5 -8.7998 35.5 -8.7998c0.299805 -11.1006 -10.2998 -19 -21.0996 -19.5
c1.19922 -15.4004 -13.9004 -32.5 -13.9004 -32.5s5.59961 15 2.7002 25.2998c-0.900391 3.2002 -2 6.09961 -3 8.5c-19.2998 -17.2002 -48 -1.5 -54.9004 6.09961c-9.59961 10.6006 -12.3994 23.8008 -12.7998 34.1006c-1.7998 -3.7998 -3.2998 -9.10059 -4 -16.6006
c0 0 -6.2998 9.10059 -5.2002 19.1006zM89.5996 260.5c-2.89941 -9.09961 -3.39941 -27.7002 6.90039 -35.2998c16.2998 -12.1006 32.2998 -5 38 -1.7002c-7.5 11.2998 -25.4004 26 -44.9004 37zM231.7 214.7c-10.7998 0.399414 -21.4004 8.39941 -21.2002 19.2998
c0 0 18.7998 -10.4004 35.5 8.7998c9.7002 11.2002 40.7998 42 83.0996 31.7998c-4.2998 -0.899414 -8.89941 -2.2998 -13.5 -4.09961h0.100586c4.09961 -1.7998 6.39941 -6.7998 7 -11.7998c1.2002 -10 -5.2002 -19.1006 -5.2002 -19.1006
c-0.599609 7.5 -2.2002 12.8008 -4 16.6006c-0.5 -10.2998 -3.2002 -23.5 -12.7998 -34.1006c-6.7998 -7.59961 -35.5 -23.3994 -54.7998 -6.09961c-1 -2.5 -2.10059 -5.2998 -3 -8.5c-2.90039 -10.2998 2.69922 -25.2998 2.69922 -25.2998s-15.0996 17 -13.8994 32.5z
M294.4 260.5c-19.5 -11 -37.4004 -25.5996 -44.9004 -37c5.7002 -3.40039 21.5996 -10.5 37.9004 1.59961c10.3994 7.7002 10 26.3008 7 35.4004zM160 29.5c4.09961 0 7 -0.900391 8.7998 -2.7002c2.2002 -2.2998 1.5 -5.2998 0.900391 -6.7998
c-1.10059 -2.7002 -5.5 -11.5996 -13 -19.7998c-2.7002 -2.90039 -6.60059 -4.60059 -11 -4.60059c-4.2998 0 -8.7002 1.60059 -11.7998 4.30078c-2.30078 2.09961 -10.2002 9.5 -13.7002 18.5996c-1.2998 3.40039 -1 6.09961 0.899414 8.09961
c1.30078 1.30078 4 2.90039 9.5 2.90039h29.4004zM349.2 130.7c0 0 29.2998 -22.5 21.0996 -70.9004c-5.2998 -29.5 -23.2002 -46 -47 -54.7002c-8.7998 -19.0996 -29.3994 -45.6992 -67.2998 -49.5996c-14.5 -11.7998 -34.5 -19.5 -63.5996 -19.5h-0.200195
c-29.2002 0 -49.2002 7.7002 -63.6006 19.5c-37.8994 3.90039 -58.5 30.5 -67.2998 49.5996c-23.7998 8.60059 -41.7998 25.2002 -47 54.7002c-8.59961 48.2002 20.6006 70.7998 20.6006 70.7998c2.39941 -17.8994 13 -33.8994 24.5996 -43.7998
c3.09961 22.7002 3.7002 55.5 3.7002 62.4004c0 14.7002 -9.5 24.5 -12.2002 26.0996c-2.5 1.5 -5.2998 3 -8.2998 4.60059c-18 9.59961 -40.4004 21.5996 -40.4004 43.6992c0 16.1006 9.2998 23.2002 15.4004 27.8008c0.799805 0.599609 1.5 1.19922 2.2002 1.69922
c2.09961 1.7002 3.69922 3 4.2998 4.40039c4.39941 9.7998 3.59961 34.2002 1.7002 37.5996c-0.600586 0.700195 -16.8008 21 -11.8008 39.2002c2 7.40039 6.90039 13.2998 14.1006 17c5.2998 2.7002 11.7998 4.2002 19.5 4.5c0.0996094 2 0.5 4 0.899414 5.90039
c0.5 2.59961 1.10059 5.2998 0.900391 8.09961c-0.400391 4.7002 -0.799805 9.10059 -2.2002 11.2998c-8.39941 13.3008 -28.7998 17.6006 -29 17.6006l-12.2998 2.39941l8.09961 9.40039c0.200195 0.200195 17.3008 17.5 46.3008 17.5c7.89941 0 16 -1.2998 23.8994 -3.5
c24.2998 -7.7998 42.9004 -30.5 49.4004 -39.2998c2 0.599609 3.89941 1.2002 5.89941 1.7002c-1 26.3994 20.7002 47.3994 28.2002 48.2998c0.5 -4.5 -0.399414 -22.2002 7.2002 -27.6006c2.2002 14.4004 9.59961 30.3008 39.0996 40.7002
c-6.2998 -16.7002 -0.799805 -30.7002 1.80078 -37.2002c20.0996 18.2002 33.6992 15.2002 33.6992 15.2002s-13.1992 -22.7002 -9 -38.5c3.30078 -0.799805 6.5 -1.7002 9.60059 -2.7002c6.5 8.80078 25.2002 31.5 49.3994 39.3008
c8.10059 2.59961 16.2002 3.89941 24.1006 3.89941c29 0 46.2002 -17.2998 46.2998 -17.5l8.09961 -9.5l-12.2998 -2.39941c-0.200195 0 -20.5996 -4.30078 -29 -17.6006c-1.39941 -2.2998 -1.7998 -6.59961 -2.2002 -11.2998
c-0.199219 -2.7998 0.300781 -5.5 0.900391 -8.09961c0.400391 -2 0.799805 -3.90039 0.900391 -5.90039c7.59961 -0.299805 14.1992 -1.7998 19.5 -4.5c7.19922 -3.7002 12.0996 -9.59961 14.0996 -17c4.90039 -18.2998 -11.2002 -38.5996 -11.7998 -39.2002
c-1.90039 -3.39941 -2.7002 -27.7998 1.7002 -37.5996c0.599609 -1.40039 2.19922 -2.7002 4.2998 -4.40039c0.700195 -0.599609 1.39941 -1.09961 2.2002 -1.7002c6.09961 -4.59961 15.3994 -11.5996 15.3994 -27.7998c0 -22.0996 -22.3994 -34.0996 -40.3994 -43.7002
c-2.90039 -1.59961 -5.80078 -3.09961 -8.30078 -4.59961c-2.69922 -1.59961 -12.1992 -11.4004 -12.1992 -26.0996c0 -6.90039 0.599609 -39.7002 3.69922 -62.4004c11.6006 9.90039 22.2002 25.7998 24.6006 43.7002zM305.7 410.3
c-17.7998 -5.7002 -31.6006 -23.0996 -37.7002 -32.2002c1.59961 -0.699219 3.09961 -1.39941 4.7002 -2.19922c2.59961 -1.2002 4.89941 -2.40039 7.09961 -3.7002c2.7002 5.5 8.40039 13.7002 20.7002 22.3994c8.2002 5.80078 18.2002 8.90039 28.7002 8.90039
c3.59961 0 6.7998 -0.400391 9.2002 -0.799805c3.2998 2.09961 6.59961 3.89941 9.69922 5.2998c-4.7998 2 -13.6992 5 -24.6992 5c-6.10059 0 -12.1006 -0.900391 -17.7002 -2.7002zM326.7 392.1c-7.40039 -0.299805 -14 -2.69922 -19.6006 -7
c-8 -6.39941 -12.0996 -17.6992 -13.5 -22.5c4.90039 -4.19922 8.2002 -8.09961 10.5 -11.1992c3.40039 1 7.30078 1.89941 11.5 2.69922c3.30078 4.5 3.90039 10.6006 4.40039 17c0.5 6.2002 1.09961 12.6006 4.40039 17.8008c0.699219 1.09961 1.5 2.19922 2.2998 3.19922
zM45.5996 402.7c2.40039 0.399414 5.60059 0.799805 9 0.899414c10.6006 0 20.5 -3.09961 28.8008 -8.89941c12.3994 -8.7002 18.0996 -17 20.6992 -22.4004c2.2002 1.2002 4.60059 2.5 7.10059 3.7002c1.59961 0.799805 3.2002 1.5 4.7998 2.2002
c-6.09961 8.89941 -19.9004 26.2998 -37.7002 32.0996c-5.7002 1.7998 -11.5996 2.7002 -17.7002 2.7002c-11 0 -19.8994 -3 -24.6992 -5c3.09961 -1.2998 6.39941 -3.09961 9.69922 -5.2998zM90.2998 362.6c-1.39941 4.80078 -5.5 16.1006 -13.5 22.4004
c-5.5 4.40039 -12.0996 6.7002 -19.5 7c0.799805 -1 1.60059 -2.09961 2.2998 -3.2002c3.30078 -5.2002 3.90039 -11.5996 4.40039 -17.7998c0.5 -6.40039 1 -12.5 4.2998 -16.9004c4.2002 -0.799805 8.10059 -1.7998 11.5 -2.69922c2.2002 3.19922 5.60059 7 10.5 11.1992z
M58.0996 188.1c8.7002 -5 18.1006 -16.7998 19 -34.1992c0.900391 -14.7002 -0.899414 -49.9004 -3.39941 -75.9004c12.5 -4.7998 26.7002 -6.40039 39.7002 -6.7998c2 4.09961 3.89941 8.5 5.5 13.0996c0.699219 1.90039 19.5996 51 26.3994 62.2002
c-5.39941 -39 -17.5 -73.7002 -23.5 -89.5996c3.40039 0.399414 7.2998 0.699219 11.7002 0.699219h117c4.40039 0 8.2002 -0.199219 11.7002 -0.699219c-6 15.8994 -18 50.5996 -23.5 89.5996c6.7998 -11.0996 25.7002 -60.2002 26.3994 -62.2002
c1.60059 -4.59961 3.5 -9 5.5 -13.0996c13 0.399414 27.3008 2 39.7002 6.7998c-2.5 26 -4.2998 61.2998 -3.39941 75.9004c1.09961 17.5 10.3994 29.1992 19.0996 34.1992c2.7002 1.5 5.5 3.10059 8.40039 4.60059c14.7998 8 30.1992 16.2998 30.1992 30.5
c0 11.0996 -4.2998 14.5 -8.89941 18.2002l-0.5 0.399414c-0.700195 0.600586 -1.5 1.2002 -2.2002 1.7998c0.900391 -7.19922 1.90039 -13.2998 2.7002 -14.8994c0 0 -12.1006 15 -15.7002 44.2998c-1.40039 11.5 1.09961 34.2002 5.09961 43
c-0.199219 -4.90039 0 -9.7998 0.300781 -14.4004c0.399414 0.900391 0.799805 1.60059 1.2998 2.2002c3.2998 4 11.8994 17.5 9.39941 26.6006c-1 3.39941 -3.19922 6 -6.69922 7.7998c-3.80078 1.89941 -8.80078 2.89941 -15.1006 2.89941
c-12.2998 0 -25.8994 -3.7998 -32.8994 -6c-25.1006 -7.89941 -55.4004 -30.8994 -64.1006 -37.6992c-0.200195 -0.200195 -0.399414 -0.300781 -0.399414 -0.300781l-5.60059 -3.89941l3.5 5.7998c0.200195 0.299805 19.1006 31.4004 53.1006 46.5
c-2 2.90039 -7.40039 8.2002 -21.6006 15.0996c-21.3994 10.5 -46.3994 15.8008 -74.2998 15.8008c-27.7998 0 -52.9004 -5.30078 -74.2998 -15.8008c-14.2002 -7 -19.6006 -12.1992 -21.6006 -15.0996c34.1006 -15.0996 53 -46.2002 53.2002 -46.5l3.5 -5.7998
l-5.59961 3.89941s-0.200195 0.100586 -0.400391 0.300781c-8.7002 6.7998 -39 29.6992 -64.0996 37.6992c-7 2.30078 -20.6006 6 -32.9004 6c-6.2998 0 -11.2998 -1 -15.0996 -2.89941c-3.60059 -1.7998 -5.7998 -4.2998 -6.7002 -7.7998
c-2.40039 -9.10059 6.2002 -22.6006 9.40039 -26.6006c0.5 -0.599609 0.899414 -1.39941 1.2998 -2.2002c0.299805 4.60059 0.5 9.5 0.299805 14.4004c4 -8.7002 6.5 -31.5 5.09961 -43c-3.59961 -29.2998 -15.6992 -44.2998 -15.6992 -44.2998
c0.799805 1.59961 1.7998 7.7002 2.69922 14.8994c-0.799805 -0.599609 -1.5 -1.19922 -2.19922 -1.7998l-0.5 -0.399414c-4.60059 -3.60059 -8.90039 -7.10059 -8.90039 -18.2002c0 -14.2002 15.2998 -22.5 30.2002 -30.5c2.7998 -1.5 5.7002 -3 8.39941 -4.60059z
M34.7998 43.4004c11.9004 -19.7002 35.5 -29.4004 58.2002 -29.5c-4.5 13.2998 -3.09961 24 4.09961 31.7998l1.40039 1.39941c1.7998 2.40039 4.2998 5.80078 7 10c-27.2002 1.10059 -63.5 11 -74.4004 45.4004c-5 -5 -8.39941 -39.0996 3.7002 -59.0996zM80.5 -0.0996094
c6.5 -9.5 16.5 -19.6006 30.9004 -25.5c-4.90039 7.19922 -8.80078 15.0996 -12.3008 23.0996c-6.39941 0.5 -12.5996 1.2998 -18.5996 2.40039zM192 -50.2002c60.5996 0.100586 78.2998 45.9004 84.9004 64.7002c3.59961 10.5 3.2998 18.2998 -0.900391 23.0996
c-2.7998 3.30078 -9.5 7.2002 -24.5996 7.2002h-118.801c-15.0996 0 -21.6992 -3.89941 -24.5996 -7.2002c-4.2998 -4.89941 -4.59961 -12.5996 -0.900391 -23.0996c6.60059 -18.9004 24.3008 -64.5996 84.9004 -64.7002zM272.6 -25.5996
c14.4004 5.89941 24.4004 16 30.9004 25.5c-6 -1.10059 -12.2002 -1.90039 -18.5996 -2.40039c-3.5 -8 -7.40039 -15.9004 -12.3008 -23.0996zM349.2 43.4004c12.2002 19.8994 8.7998 54 3.7998 59c-10.9004 -34.4004 -47.2002 -44.2002 -74.4004 -45.4004
c2.7002 -4.2002 5.2002 -7.59961 7 -10c0.5 -0.5 1 -1 1.40039 -1.5c7.2002 -7.7002 8.59961 -18.5 4.09961 -31.7998c22.5 0.399414 46.1006 10 58.1006 29.7002zM191.9 260.3c-12.7002 0.200195 -27.2002 17.7998 -27.2002 17.7998
c9.89941 -6 18.7998 -8.09961 27.2998 -8.2998c8.5 0.200195 17.4004 2.2998 27.2998 8.2998c0 0 -14.5 -17.6992 -27.2002 -17.7998h-0.199219zM253.6 29.5996c5.40039 -0.0996094 8.10059 -1.69922 9.40039 -3c1.90039 -1.89941 2.2002 -4.59961 0.900391 -7.89941
c-3.5 -8.90039 -11.4004 -16.1006 -13.7002 -18.1006c-3.10059 -2.59961 -7.40039 -4.19922 -11.7998 -4.19922c-4.40039 0 -8.30078 1.59961 -11 4.5c-7.5 8 -12 16.6992 -13 19.2998c-0.600586 1.5 -1.30078 4.39941 0.899414 6.7002
c1.7002 1.7998 4.7002 2.69922 8.90039 2.69922h29.3994z" />
    <glyph glyph-name="gulp" unicode="&#xf3ae;" horiz-adv-x="256" 
d="M209.8 56.9004l-14.0996 -24.6006l-4.60059 -80.2002c0 -8.89941 -28.2998 -16.0996 -63.0996 -16.0996s-63.0996 7.2002 -63.0996 16.0996l-5.80078 79.4004l-14.8994 25.4004c41.2002 -17.3008 126 -16.7002 165.6 0zM13.7998 310.2
c30.7002 -17 197.8 -16.9004 228.3 0.200195l-14.7998 -136.801c-4.7998 -4.19922 -11.5996 -10.1992 -16.5996 -14.0996c-1.60059 -1.2002 -6 -4.7002 -8 -4.7002c-1.2998 0 -2.2002 0.5 -2.2002 1.7998c0.0996094 1 3.40039 4.5 5 6.40039
c4.90039 5.7002 13.7998 16 13.7998 23.4004c0 7 -10.7002 14.0996 -25.7002 0.199219c-1.59961 -1.5 -3.09961 -3 -4.5 -4.5c0.400391 1.10059 1.10059 5.10059 1.10059 6.2002c0 2.7998 -1.40039 4 -4.2002 4c-1 0 -1.90039 -0.599609 -2.7002 -1.59961
c-2.59961 -3.10059 -3.89941 -7.5 -5.2998 -11.2998c-0.5 -1.80078 -1.09961 -3.60059 -1.7002 -5.5c-0.399414 -0.200195 -0.700195 -0.300781 -0.899414 -0.600586c-3.80078 -3.89941 -17.7002 -17 -23.1006 -17c-2.2998 0 -1.59961 3.60059 -1 5.7998
c1 3.40039 6.7998 17.7002 8.7002 22.3008c4.59961 11.0996 8 19.7998 13.2002 31.8994c3.89941 9.2002 3.7998 8.60059 4.5 10.5c0.700195 2.10059 0.700195 4.90039 -1 6.2002c-1 0.700195 -2 1.09961 -3.2002 1.09961c-2.40039 0 -4.7998 -1.39941 -6.09961 -4.69922
c-25.5 -64.4004 -25.2002 -63.3008 -26.4004 -68.2002c-2 -1.7002 -4.40039 -3.40039 -6.7998 -4.5c-3.10059 -1.40039 -6.7998 -2.2002 -6.7998 1.2002c0 3.69922 1.39941 8.19922 2.69922 11.6992c2.2002 6.10059 4.90039 11.1006 6.90039 16.7002
c0.900391 2.40039 1.2998 4.7002 -0.400391 6.90039c-0.799805 1 -1.89941 1.5 -3.19922 1.5c-2.60059 0 -4.10059 -2.60059 -5.2002 -5.10059c-0.700195 -1.5 -1.2998 -3.09961 -1.7998 -4.7998c-1.2002 -4 -3.60059 -8.7002 -5.60059 -12.2998
c-2.7998 -5 -6.5 -10.0996 -11.0996 -13.5c-2.2002 -1.59961 -4.5 -2.40039 -6.90039 -2.40039c-3.5 0 -2.39941 5.7002 -1.5 9c2.2002 7.80078 5.5 13.3008 9.2998 20.8008c1.30078 2.69922 2.30078 5.39941 -0.299805 7.19922c-0.5 0.300781 -1 0.5 -1.59961 0.700195
c-3.40039 0.900391 -6 -1.09961 -7.60059 -4.5c-3.09961 -6.2998 -5.39941 -11.7002 -7.09961 -16.2002c-3.2998 -8.89941 -6.90039 -18.2998 -4.59961 -23.7998c1.5 -3.7002 4.5 -5.09961 8.59961 -5.09961c9.7998 0 17.7998 6.7002 22.4004 14.8994
c-4.30078 -19.7998 8.19922 -17.2998 20 -8.09961c0.0996094 -0.400391 0.0996094 -0.799805 0.199219 -1.2002c1.5 -6.7002 8.7002 -6.7002 14.5 -4.09961c3.5 1.59961 8.2002 4.5 14.4004 10.5c0.200195 0.299805 0.799805 1.39941 -0.799805 -2.2998
c-7.2002 -16.2002 -13.5 -28.2002 -15 -34.3008c-0.200195 -0.899414 -0.299805 -1.7998 -0.299805 -2.69922c0 -1.80078 0.399414 -3.10059 1.2998 -3.7002c1.59961 -1.2002 4.2002 -1.2998 6.09961 -0.299805c1.7998 1 3.10059 2.59961 4 4.5
c1 2.19922 0.200195 0.699219 5.2002 14c5 13.3994 2.90039 7.7998 9.09961 22c1.90039 4.2998 4.2002 9.5 8.5 15.5c2.5 3.39941 5.5 7 8.7002 9.69922c5.7002 4.7002 11.7002 5.40039 11.7002 2.5c0 -2.19922 -3.2998 -6.39941 -4.7002 -8.09961
c-5.2998 -6.7002 -14.3994 -16.2998 -14.3994 -21.5c0 -9.5 12 -8 17.3994 -5.7002c7.2998 3.2002 13.9004 9.60059 19.6006 14.7998l-10.9004 -94.5996c-1.90039 -4.90039 -39.0996 -17.0996 -88.2002 -17.0996c-49 0 -86.2002 12.0996 -88.2002 17.0996l-7.59961 79.5996
c2.09961 -1.5 4.2998 -2.39941 7.7002 -2.39941c7.39941 0 16.0996 6.7002 21.5 11.7998c2.2998 2.2002 4.39941 4.40039 6.39941 6.59961c-1 -3 -7.09961 -22 -7.2998 -25.1992c-0.0996094 -1 -0.200195 -4.90039 0.799805 -6.30078
c0.5 -0.799805 1.40039 -1.19922 2.60059 -1.19922c2.89941 0 5.59961 4.69922 6.2998 7.5c0 0 1.7998 6.2998 7.59961 25.7998c6.30078 21.0996 10 24.5 10 34.7002c0 5.59961 -7.2998 6.7998 -9.89941 0l-5.2002 -15.5c-2.2002 -4.5 -8 -11.5 -12.5 -16
c-3.5 -3.5 -10.7998 -10.1006 -15.7998 -10.1006c-2.40039 0 -3.90039 1.40039 -4.90039 3.60059c-2.2998 5.2998 -0.899414 14.2998 0.600586 19.8994c2.59961 9.7002 6.89941 19.4004 12 28.2002c4.19922 7.2998 10.1992 15.7002 17.0996 20.7002
c6.59961 4.7998 12.7998 4.5 16.9004 -2.7998c1.5 -2.7002 3.7998 -7.30078 6.7998 -7.30078c2.5 0 5.7002 2.60059 4.5 9.10059c-0.5 2.5 -4.90039 8.7998 -10.1006 11.7998c-6 3.59961 -12.3994 3.59961 -18.6992 0.900391
c-19.2002 -8.2002 -34.1006 -35.2002 -40 -55.2002zM243.5 318.7c0 -21 -231.2 -21 -231.2 0c0 8.7998 51.7998 15.8994 115.601 15.8994c9 0 17.7998 -0.0996094 26.2998 -0.399414l12.5996 48.7002l61.2998 64.5c1.40039 1.39941 5.80078 0.199219 9.90039 -3.5
c4.09961 -3.7002 6.59961 -7.90039 5.2998 -9.30078l-0.0996094 -0.0996094l-57.2998 -60.5l-10 -40.7002c39.8994 -2.59961 67.5996 -8.09961 67.5996 -14.5996zM174.1 314.1c0 0.800781 -0.899414 1.5 -2.5 2.10059l-0.199219 -0.799805
c0 -1.30078 -5 -2.40039 -11.1006 -2.40039c-6.09961 0 -11.0996 1.09961 -11.0996 2.40039c0 0.0996094 0 0.199219 0.0996094 0.299805l0.200195 0.700195c-1.7998 -0.600586 -3 -1.40039 -3 -2.30078c0 -2.09961 6.2002 -3.69922 13.7002 -3.69922
c7.7002 -0.100586 13.8994 1.59961 13.8994 3.69922z" />
    <glyph glyph-name="hacker-news-square" unicode="&#xf3af;" 
d="M400 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h352zM21.2002 218.8h-0.200195c0.0996094 0.100586 0.200195 0.299805 0.299805 0.400391c0 -0.100586 0 -0.299805 -0.0996094 -0.400391z
M239.2 164.9l80.7998 155.1h-34.7998c-54.7998 -101.2 -48.2998 -98.5996 -60.6006 -125.6c-10.0996 24.3994 -6.7998 27.2998 -59.2998 125.6h-37.2998l79.7998 -153.3v-102.7h31.4004v100.9z" />
    <glyph glyph-name="hire-a-helper" unicode="&#xf3b0;" horiz-adv-x="512" 
d="M443.1 448c3.90039 -36.4004 32.5 -65.7998 68.9004 -71.7002v-370.5c-35.4004 -4 -64.9004 -33.3994 -67.9004 -69.7998h-372.199c-5.90039 36.4004 -34.5 63.9004 -71.9004 68.7998v371.5c37.4004 3.90039 67.9004 34.4004 71.9004 71.7002h371.199zM406.1 43.0996
c7.80078 0 5.80078 10.8008 0 10.8008c-10.2998 3.39941 -13.5 3.59961 -21.6992 13.7998c-7.80078 12.8994 -7.90039 44.3994 -7.90039 127.8v101.2c0 22.0996 12.2002 28.2998 28.5996 32.3994c8.90039 2.2002 3.90039 11.8008 -1 11.8008
c-36.5 0 -20.5996 -2 -57.0996 -2c-32.7002 0 -16.5 2 -49.2002 2c-3.2998 0 -8.5 -8.30078 -1 -10.8008c4.90039 -1.59961 27.6006 -3.69922 27.6006 -39.2998c0 -45.5996 0.199219 -55.7998 -1 -68.7998c0 -1.2998 -2.30078 -12.7998 -12.8008 -12.7998h-109.199
c-10.5 0 -12.8008 11.5 -12.8008 12.7998c-1.19922 13 -1 23.2002 -1 68.7998c0 35.6006 22.7002 37.7002 27.6006 39.2998c7.5 2.5 2.2998 10.8008 -1 10.8008c-32.7002 0 -16.5 -2 -49.2002 -2c-36.5 0 -20.5996 2 -57.0996 2c-5 0 -9.80078 -9.60059 -1 -11.8008
c16.3994 -4.09961 28.5996 -10.1992 28.5996 -32.3994v-101.2c0 -83.4004 -0.200195 -114.9 -7.90039 -127.8c-8.19922 -10.2998 -11.5 -10.4004 -21.6992 -13.7998c-5.80078 0 -7.90039 -10.8008 0 -10.8008c36.2998 0 18.7998 2 55.0996 2c35.7998 0 21 -2 56.0996 -2
c6 0 4.90039 8.2002 0 9.80078c-22.7998 7.59961 -22.8994 10.2998 -24.5996 12.7998c-10.4004 15.5996 -5.90039 83 -5.90039 113c0 5.2998 6.40039 12.7998 13.8008 12.7998h111.199c7.40039 0 13.8008 -7.5 13.8008 -12.7998c0 -30 4.5 -97.4004 -5.90039 -113
c-1.7002 -2.60059 -1.7998 -5.2002 -24.5996 -12.7998c-4.90039 -1.60059 -5.90039 -9.80078 0 -9.80078c35.0996 0 20.2998 2 56.0996 2c36.2998 0 18.7998 -2 55.0996 -2z" />
    <glyph glyph-name="hotjar" unicode="&#xf3b1;" 
d="M414.9 286.5c30 -53 41.7998 -121.6 26.2998 -180.9c-14.7002 -56.6992 -68.2998 -120.3 -148.8 -145.6c54.5 76.9004 43.8994 200.1 -27.1006 215.5c54.2002 -93.9004 -53.7002 -180.3 -110.8 -93.9004c-2.5 -7.19922 -25.0996 -74.5 4.09961 -129.6
c-61.0996 9.09961 -117.8 33.5 -144.6 93.4004c-35 78.1992 -2.7002 149.8 79 204.899c129.2 87.2998 28.0996 197.7 28.0996 197.7s219.101 -29 293.801 -161.5z" />
    <glyph glyph-name="hubspot" unicode="&#xf3b2;" horiz-adv-x="512" 
d="M267.4 236.4l-163.2 114.699c-7.90039 -4.69922 -17 -7.59961 -26.7998 -7.59961c-28.8008 0 -52.2002 23.4004 -52.2002 52.2998c0 28.7998 23.3994 52.2002 52.2002 52.2002c28.8994 0 52.3994 -23.4004 52.3994 -52.2002c0 -4.7998 -0.799805 -9.39941 -2 -13.7998
c51.4004 -39.0996 141.3 -103.9 168.9 -124.8c13.0996 6.89941 27.5 11.5 42.7002 13.5996v61.2002c-17.5 7.40039 -28.2002 23.7998 -28.2002 42.9004c0 26.0996 20.5996 47.8994 46.7002 47.8994c26.0996 0 47 -21.7998 47 -47.8994
c0 -19.1006 -10.7002 -35.5 -28.2002 -42.9004v-61.5996c62.5 -9.5 110.2 -63.5 110.2 -128.7c0 -71.9004 -58.1006 -130.2 -130 -130.2c-29.9004 0 -57.3008 10 -79.3008 26.9004l-50 -50.2002c1.30078 -3.90039 1.90039 -7.90039 1.90039 -12.1006
c0 -10.6992 -4.2002 -20.8994 -11.7998 -28.5c-7.7002 -7.69922 -17.7998 -11.5996 -28.6006 -11.5996c-10.6992 0 -20.8994 4 -28.5 11.5996c-7.59961 7.60059 -11.7998 17.7002 -11.7998 28.5c0 10.8008 4.2002 21 11.7998 28.6006
c7.60059 7.59961 17.7002 11.7998 28.5 11.7998c4.90039 0 9.60059 -0.900391 14 -2.5l49.5 49.7998c-16.2998 21.7002 -26 48.7002 -26 78c0 37.2998 15.7002 70.9004 40.8008 94.6006zM356.9 72.7998c38.0996 0 69 30.9004 69 69c0 38.1006 -30.9004 69 -69 69
c-38.1006 0 -69 -30.8994 -69 -69c0 -38.0996 30.8994 -69 69 -69z" />
    <glyph glyph-name="itunes" unicode="&#xf3b4;" 
d="M223.6 367.7c94.5 0 171.2 -76.7002 171.2 -171.3c0 -94.5 -76.5996 -171.2 -171.2 -171.2c-94.5996 0 -171.1 76.7998 -171.1 171.3s76.5 171.2 171.1 171.2zM303 127.7c1.40039 6.2002 0.900391 -3 1 167.6c0 5.7002 -3.2998 9.10059 -9 8.7002
c-1.7998 0 -14.0996 -2.40039 -115.1 -21.4004c-0.900391 0 -4.60059 -1 -6.7002 -2.69922c-2 -1.60059 -3.10059 -3.80078 -3.5 -6.40039c-1.7002 -6.7002 2.39941 -128 -2.60059 -133.7c-2.09961 -2.5 -4.69922 -3.2002 -7.69922 -3.7002
c-17.7002 -3.19922 -29.6006 -4.7998 -38 -12.7998c-14.5 -14.2002 -7 -38.8994 14.3994 -42.8994c8 -1.40039 23.1006 0.599609 31.4004 5.19922c7.2998 3.80078 12.7998 10.6006 14.8994 19.6006c1.7002 7.7002 1.2002 2.39941 1.2002 118.5
c0 5.7002 1.7002 7.2002 6.7002 8.2998c0 0 87.9004 16.4004 91.9004 17.0996c5.69922 1 8.39941 -0.5 8.39941 -6.09961c0 -78.7998 1 -77.2002 -2.2002 -80.7998c-2.09961 -2.5 -4.69922 -3.2002 -7.69922 -3.7002c-17.7002 -3.2002 -29.6006 -4.7998 -38 -12.7998
c-10.6006 -10.4004 -10.4004 -26.7998 1.39941 -36.7998c9.7002 -7.80078 19.7998 -7.2002 31.9004 -5c13.7998 2.59961 24.0996 10.1992 27.2998 23.7998zM345.2 416c56.8994 0 102.8 -45.9004 102.8 -102.8v-242.4c0 -56.8994 -45.7998 -102.8 -102.8 -102.8h-242.4
c-56.8994 0 -102.8 45.9004 -102.8 102.8v242.4c0 56.8994 45.9004 102.8 102.8 102.8h242.4zM223.6 4c106.301 0 192.5 86.2002 192.5 192.5s-86.1992 192.5 -192.5 192.5c-106.3 0 -192.5 -86.2002 -192.5 -192.5s86.2002 -192.5 192.5 -192.5z" />
    <glyph glyph-name="itunes-note" unicode="&#xf3b5;" horiz-adv-x="384" 
d="M381.9 59.7998c-6.40039 -27.3994 -27.2002 -42.7998 -55.1006 -48c-24.5 -4.5 -44.8994 -5.59961 -64.5 10.2002c-23.8994 20.0996 -24.2002 53.4004 -2.7002 74.4004c17 16.1992 40.9004 19.5 76.8008 25.7998c6 1.09961 11.1992 2.5 15.5996 7.39941
c6.40039 7.2002 4.40039 4.10059 4.40039 163.2c0 11.2002 -5.5 14.2998 -17 12.2998c-8.2002 -1.39941 -185.7 -34.5996 -185.7 -34.5996c-10.2002 -2.2002 -13.4004 -5.2002 -13.4004 -16.7002c0 -234.7 1.10059 -223.899 -2.5 -239.5
c-4.2002 -18.2002 -15.3994 -31.8994 -30.2002 -39.5c-16.7998 -9.2998 -47.1992 -13.3994 -63.3994 -10.3994c-43.2002 8.09961 -58.4004 58 -29.1006 86.5996c17 16.2002 40.9004 19.5 76.8008 25.7998c6 1.10059 11.1992 2.5 15.5996 7.40039
c10.0996 11.5 1.7998 256.6 5.2002 270.2c0.799805 5.19922 3 9.59961 7.09961 12.8994c4.2002 3.5 11.7998 5.5 13.4004 5.5c204 38.2002 228.899 43.1006 232.399 43.1006c11.5 0.799805 18.1006 -6 18.1006 -17.6006c0.200195 -344.5 1.09961 -326 -1.7998 -338.5z" />
    <glyph glyph-name="jenkins" unicode="&#xf3b6;" horiz-adv-x="512" 
d="M487.1 23c1.5 -11.9004 -5.2998 -28.2998 -8.69922 -39.7002c-4.90039 -16.2998 -9.7002 -31.8994 -14.6006 -47.2002h-422c-0.700195 1.90039 -1.39941 4 -2.09961 6c-4.60059 14.2002 -12.6006 31.7002 -14.7002 45.8008
c-3.09961 20.8994 16.5996 22.0996 29.2002 31.0996c19.5 14 34.7998 21.7998 55.8994 34.2998c6.30078 3.7998 25.1006 13.2002 27.3008 17.6006c4.2998 8.69922 -7.30078 20.8994 -10.4004 27.6992c-4.90039 10.7002 -7.5 19.8008 -8.2002 30.4004
c-17.7002 2.7998 -31.0996 13.2998 -39.2002 25.2002c-13.3994 19.7002 -22.6992 56 -11.0996 83.7002c0.900391 2.19922 5.40039 6.5 6.09961 9.7998c1.40039 6.59961 -2.5 15.3994 -2.69922 22.3994c-1.2002 36 6.09961 67 30.2998 77.8008
c9.7998 39.0996 45 52.1992 78.0996 71.5996c12.2998 7.2998 26 11.9004 40.1006 17.0996c50.5 18.7002 128.1 15.1006 170.1 -16.5996c17.7998 -13.5 46.2002 -41.9004 56.4004 -62.5c26.8994 -54.2998 25 -145.1 6.19922 -211.2
c-2.5 -8.89941 -6.19922 -21.8994 -11.2998 -32.5996c-3.59961 -7.40039 -14.7002 -22.2998 -13.2998 -28.9004c1.40039 -6.7998 25.2998 -24.8994 30.4004 -29.8994c9.19922 -8.80078 26.7998 -20.7002 28.1992 -31.9004zM205.9 414.3
c-33.2002 -9.39941 -75.7002 -33.5 -89.3008 -63.3994c10.6006 1.5 17.9004 6.7998 28.3008 7.5c3.89941 0.299805 9.09961 -1.60059 13.5996 -0.5c9 2.2998 16.5996 22.5 23.4004 30c6.59961 7.39941 14.5996 10.5 20 17.1992c3.5 1.7002 8.69922 1.60059 8.89941 6.80078
c-1.5 1.69922 -3.09961 2.89941 -4.89941 2.39941zM101.1 320.7c-14.6992 -16.1006 -11.5996 -46.2998 -9.7998 -67.7998c26.5 16.6992 61.6006 -1.30078 61.2998 -29.6006c12.6006 0.299805 4.7002 15.7998 2.40039 25.7002c-7.5 32.5996 12.5996 67.9004 0.900391 97.5996
c-22.7002 -1.7998 -41.3008 -11 -54.8008 -25.8994zM137.8 120.5c4.90039 -20 15.7002 -46 26.2998 -61.4004c13.6006 -19.3994 40.1006 -22.2998 68.7002 -24.1992c5.10059 11 23.9004 10.0996 36.2002 7.19922c-14.7002 5.80078 -28.4004 19.9004 -39.7002 32.4004
c-13 14.2998 -26.0996 29.7002 -26.7998 48.4004c24.5 -34 44.7998 -63.8008 89.5 -78.8008c33.7998 -11.2998 73.2002 5.2002 99.2002 23.4004c10.7998 7.59961 17.2002 19.5996 24.8994 30.5996c28.7002 41.2002 42 100.101 39.1006 157.101
c-1.2002 23.5 -1.10059 47 -9 62.7998c-8.2998 16.5996 -36.2002 31.2998 -52.5 16.4004c-3 16.0996 13.5996 26.0996 33.0996 20.2998c-13.8994 18 -28.5996 39.5996 -48.2998 50.7002c-34.4004 19.5 -92.7002 34.0996 -129.3 15.7998
c-29.6006 -14.7002 -69.5 -39.1006 -83.1006 -70c12.7002 -29.7998 -3.7998 -57.1006 -4.7998 -87.4004c-0.599609 -16.0996 7.60059 -30.2002 8.2002 -47.7002c-4.40039 -7.19922 -17.7002 -8.09961 -26.9004 -7.59961c-3.09961 15.5 -8.5 32.9004 -24.5 34.7002
c-22.5 2.39941 -39.0996 -16.2998 -40.0996 -35.7998c-1.2002 -23 17.7002 -61 44.4004 -58.4004c10.2998 1.09961 12.7998 11.4004 24.0996 11.2998c6.09961 -12.2002 -9.40039 -16 -11 -24.7002c-0.400391 -2.19922 1.2998 -11 2.2998 -15.0996zM359.8 -3.59961
c-1.59961 -4.40039 0.299805 -10.4004 -0.599609 -16.5c14.8994 -4.2002 31.8994 -6.40039 50.7002 -7c3.69922 4.7998 4.89941 13.7998 4.5 22.7998c-0.600586 10.7998 -3.40039 33.0996 -10.1006 37c-14.0996 8.2002 -39 -16.5 -49.5996 -20.2998
c1.2002 -3.40039 3.09961 -6 3.2002 -10.2002c6.2998 1.5 13.8994 0.5 19.2998 -2.2002c-6.2998 -0.700195 -13.2998 -0.599609 -17.4004 -3.59961zM342.6 16.4004c7.60059 5.5 14.3008 12 22.2002 17.0996c-18.2002 -1.59961 -41 -12.9004 -59 -4.90039
c-0.0996094 -0.899414 -1.2998 -0.599609 -1.5 -1.39941c12.2998 -9.60059 21.5 -11.6006 38.2998 -10.7998zM330.5 -16.7998c26.9004 -8.40039 22.2002 36.7998 -2.7998 20.2002c-0.700195 -8.2002 1.2002 -10.8008 2.7998 -20.2002zM226 9.40039
c0 6.19922 3.59961 12 2.7998 16.3994c-13.7998 2.40039 -31.8994 0.799805 -41.2998 7.2998c-9.59961 -9.69922 26.9004 -23 38.5 -23.6992zM57.7002 -49.0996v-0.100586h180.7c-0.800781 2.5 -1.5 4.90039 -2.2002 7.2002c-4.7998 15.2998 -7.5 26.7002 -8.7002 35.5
c-19.2002 9.2002 -39.7002 18.5 -56.2002 30.2002c-3 2.2002 -23.3994 28.7002 -26.2002 27.5996c-36.8994 -14.5996 -71.3994 -39.7002 -102.199 -63.5c5.59961 -11.7998 10.5 -24.2002 14.7998 -36.8994zM298.3 -54.7998h-0.799805
c0.299805 0.200195 0.5 0.399414 0.799805 0.5v-0.5zM305.8 -49.0996h9.60059c-1 1.5 -2.10059 2.89941 -3.2002 4.2998c-2.10059 -1.5 -4.2998 -2.90039 -6.40039 -4.2998zM320.9 -24.4004c0.0996094 3.60059 0.299805 7.2002 0.399414 10.6006
c-6.5 3.2002 -14 5.5 -23.5 5.89941c6.5 3.30078 15.9004 3.2002 21.7998 7.10059c0.100586 1.5 0.100586 2.89941 0.200195 4.2998c-10.7998 0.900391 -14.7998 5.59961 -21.8994 9.5c-11.6006 6.40039 -29 13.2002 -43.9004 16.0996
c-18.5 3.60059 -16.7998 -25.1992 -16 -42.3994c0.700195 -13.6006 7.7002 -28 10.7998 -37c1.5 -4.2002 1.7998 -8.7002 5.40039 -9.5c6.39941 -1.5 27.3994 6.89941 33.3994 10.2002c12.7002 6.89941 22.5 17.8994 33.3008 25.1992zM374.3 -49.0996l0.600586 12.5996
c-11.2002 -0.700195 -17.5 10.2002 -25.4004 11c-6.90039 0.700195 -12.7002 -7.90039 -21.7002 -4.2002c-2 -2.2002 -3.89941 -4.7002 -6 -6.89941c3.2002 -3.90039 6.10059 -8.10059 8.90039 -12.5h17.3994c0.200195 3.19922 2.80078 5.7998 6.10059 5.7998
s6 -2.60059 6.09961 -5.7998h14zM383 -49.0996h36.2998c-6.7002 10.1992 -20.0996 18.7998 -35.7002 11.5c-0.199219 -3.7002 -0.399414 -7.5 -0.599609 -11.5zM466.4 -12.0996c1.19922 6.19922 4.59961 19.5996 3.7998 25.0996
c-1.40039 9.7998 -14.6006 17.0996 -21.4004 23.0996c-12.3994 11.1006 -20.2002 21 -33.2002 31.4004c-5.19922 -7.7998 -16.5 -13 -20.7998 -19.2998c30.7002 14.8994 36.2998 -55.7998 24.2002 -78.5c1.90039 -6.7998 8.2998 -9.40039 10.9004 -15.5
c-0.700195 -1.10059 -1.30078 -2.2002 -1.90039 -3.2998h27.9004c0.199219 0 0.399414 0 0.599609 -0.100586c4.09961 13.1006 7.59961 25.9004 9.90039 37.1006zM222.2 317.5c5.39941 14.9004 27.2002 34.7002 45 32c7.7002 -1.2002 18 -8.2002 12.2002 -17.7002
c-30.2002 7 -45.2002 -12.5996 -54.4004 -33.0996c-8.09961 2 -4.90039 13.0996 -2.7998 18.7998zM406.3 254.4c8.2002 3.59961 22.4004 0.699219 29.6006 5.2998c-4.2002 11.5 -10.3008 21.3994 -9.30078 37.7002c0.5 0 1 0 1.40039 -0.100586
c6.7998 -14.2002 12.7002 -29.2002 21.4004 -41.7002c-5.7002 -13.5 -43.6006 -25.3994 -43.1006 -1.19922zM309.5 251.7c-6.7998 10.8994 -19 32.5 -14.5 45.2998c6.5 -11.9004 8.59961 -24.4004 17.7998 -33.2998c4.10059 -4 12.2002 -9 8.2002 -20.2002
c-0.900391 -2.7002 -7.7998 -8.59961 -11.7002 -9.7002c-14.3994 -4.2998 -47.8994 -0.899414 -36.5996 17.1006c11.8994 -0.700195 27.8994 -7.80078 36.7998 0.799805zM336.8 181.7c3.7998 -6.60059 1.40039 -18.7002 12.1006 -20.6006
c20.1992 -3.39941 43.5996 12.3008 58.0996 17.8008c9 15.1992 -0.799805 20.6992 -8.90039 30.5c-16.5996 20 -38.7998 44.7998 -38 74.6992c6.7002 4.90039 7.30078 -7.39941 8.2002 -9.69922c8.7002 -20.3008 30.4004 -46.2002 46.2998 -63.5
c3.90039 -4.30078 10.3008 -8.40039 11 -11.2002c2.10059 -8.2002 -5.39941 -18 -4.5 -23.5c-21.6992 -13.9004 -45.7998 -29.1006 -81.3994 -25.6006c-7.40039 6.7002 -10.2998 21.4004 -2.90039 31.1006zM135.5 190.9c-6.7998 3.89941 -8.40039 21 -16.4004 21.3994
c-11.3994 0.700195 -9.2998 -22.2002 -9.2998 -35.5c-7.7998 7.10059 -9.2002 29.1006 -3.5 40.2998c-6.59961 3.2002 -9.5 -3.59961 -13.0996 -5.89941c4.7002 34.0996 49.7998 15.7998 42.2998 -20.2998zM435.1 162.1c-10.0996 -19.1992 -24.3994 -40.3994 -54 -41
c-0.599609 6.2002 -1.09961 15.6006 0 19.4004c22.7002 2.2002 36.6006 13.7002 54 21.5996zM293.2 149.7c18.8994 -9.90039 53.5996 -11 79.2998 -10.2002c1.40039 -5.59961 1.2998 -12.5996 1.40039 -19.4004c-33 -1.7998 -72 6.40039 -80.7002 29.6006zM385.4 103
c-1.7002 -4.2998 -5.30078 -9.2998 -9.80078 -11.0996c-12.0996 -4.90039 -45.5996 -8.7002 -62.3994 0.299805c-10.7002 5.7002 -17.5 18.5 -23.4004 26c-2.7998 3.59961 -16.8994 12.8994 -0.200195 12.8994c13.1006 -32.6992 58 -29 95.8008 -28.0996z" />
    <glyph glyph-name="joget" unicode="&#xf3b7;" horiz-adv-x="496" 
d="M378.1 403c116.601 -71.7998 152.9 -224.6 81 -341.2c-71.8994 -116.5 -224.6 -152.8 -341.199 -80.8994c-116.601 71.8994 -152.9 224.6 -81 341.199c46.8994 76 128.1 117.9 211.3 117.9c44.3994 0 89.3994 -11.9004 129.899 -37zM429.9 79.7998
c5.2998 8.7002 9.89941 17.6006 13.8994 26.6006c-32.0996 -1.10059 -157.1 1.5 -208.8 -17.6006c-58.4004 -21.5 -36.9004 -53.3994 -31.2002 -67.0996c3.7998 -9.10059 14.7002 -28.7998 23.7002 -42.4004c6.7998 -0.599609 13.5996 -1 20.4004 -1
c71.5996 0 141.6 36 182 101.5zM229.1 166.1c51 -1.2998 205.4 -4.39941 230.301 -4.89941c11.8994 81.7998 -24.5 166.6 -99.3008 212.7c-100.5 61.8994 -232.1 30.6992 -294 -69.8008c-28.5996 -46.3994 -37.2998 -99.3994 -28.5 -149.1
c11 40.9004 49.7002 131.5 178.301 140.2c50.8994 4 41.5 -19.2002 23.5996 -29.7002c-17.7998 -10.5 -45.7002 -23.7998 -68.9004 -51.2002c-23.1992 -27.3994 3 -46.7998 58.5 -48.2002zM412.9 220.9c22.6992 -6 19.0996 -15.5 19.0996 -15.5l-46.5 -23.4004
l-169.5 -1.59961s33.7998 10.7998 65.2998 31.2998c26 16.8994 49.7002 35.5996 67.5 35.5996c3.7002 0 7.2002 -0.899414 10.4004 -2.7002c18.5 -10.5996 -2.90039 -18.1992 -13.4004 -24.5996s-50.7002 -34.5 -50.7002 -34.5s1.40039 -7.59961 31.1006 8.2002
c29.7002 15.8994 64 33.2002 86.7002 27.2002z" />
    <glyph glyph-name="js" unicode="&#xf3b8;" 
d="M0 416h448v-448h-448v448zM243.8 66.5996v143.7h-42.0996v-143.1c0 -21.1006 -8.7998 -26.5 -22.6006 -26.5c-14.5 0 -20.5 9.89941 -27.0996 21.5996l-34.2998 -20.7002c10 -21.0996 29.5 -38.5 63.2002 -38.5c37.2998 0 62.8994 19.9004 62.8994 63.5zM343.4 3.09961
c39.8994 0 69.6992 20.8008 69.6992 58.6006c0 35.2002 -20.0996 50.8994 -55.8994 66.2002l-10.5 4.5c-18.1006 7.89941 -25.9004 13 -25.9004 25.5996c0 10.2002 7.7998 18 20.1006 18c12.0996 0 19.8994 -5.09961 27.0996 -18l32.7998 21
c-13.7998 24.4004 -33 33.7002 -59.7998 33.7002c-37.5 0 -61.5996 -24 -61.5996 -55.6006c0 -34.2998 20.0996 -50.5996 50.5 -63.5l10.5 -4.5c19.2998 -8.5 30.6992 -13.5996 30.6992 -28c0 -12.0996 -11.1992 -20.7998 -28.5996 -20.7998
c-20.7002 0 -32.5 10.9004 -41.5 25.6006l-34.2998 -19.8008c12.2998 -24.3994 37.5996 -43 76.7002 -43z" />
    <glyph glyph-name="js-square" unicode="&#xf3b9;" 
d="M400 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h352zM243.8 66.5996v143.7h-42.0996v-143.1c0 -21.1006 -8.7998 -26.5 -22.6006 -26.5c-14.5 0 -20.5 9.89941 -27.0996 21.5996
l-34.2998 -20.7002c10 -21.0996 29.5 -38.5 63.2002 -38.5c37.2998 0 62.8994 19.9004 62.8994 63.5zM343.4 3.09961c39.8994 0 69.6992 20.8008 69.6992 58.6006c0 35.2002 -20.0996 50.8994 -55.8994 66.2002l-10.5 4.5c-18.1006 7.89941 -25.9004 13 -25.9004 25.5996
c0 10.2002 7.7998 18 20.1006 18c12.0996 0 19.8994 -5.09961 27.0996 -18l32.7998 21c-13.7998 24.4004 -33 33.7002 -59.7998 33.7002c-37.5 0 -61.5996 -24 -61.5996 -55.6006c0 -34.2998 20.0996 -50.5996 50.5 -63.5l10.5 -4.5
c19.2998 -8.5 30.6992 -13.5996 30.6992 -28c0 -12.0996 -11.1992 -20.7998 -28.5996 -20.7998c-20.7002 0 -32.5 10.9004 -41.5 25.6006l-34.2998 -19.8008c12.2998 -24.3994 37.5996 -43 76.7002 -43z" />
    <glyph glyph-name="keycdn" unicode="&#xf3ba;" horiz-adv-x="512" 
d="M63.7998 38.7002l60.5 59c32.1006 -42.7998 71.1006 -66 126.601 -67.4004c30.5 -0.700195 60.2998 7 86.3994 22.4004c5.10059 -5.2998 18.5 -19.5 20.9004 -22c-32.2002 -20.7002 -69.6006 -31.1006 -108.101 -30.2002
c-43.2998 1.09961 -84.5996 16.7002 -117.699 44.4004c0.299805 0.599609 -38.2002 -37.5 -38.6006 -37.9004c9.5 -29.7998 -13.0996 -62.4004 -46.2998 -62.4004c-26.7998 0.100586 -47.5 21.7002 -47.5 48.5c0 34.3008 33.0996 56.6006 63.7998 45.6006zM418.7 291.1
c19.0996 -31.2998 29.5996 -67.3994 28.7002 -104c-1.10059 -44.7998 -19 -87.5 -48.6006 -121c0.299805 -0.299805 23.7998 -25.1992 24.1006 -25.5c9.59961 1.30078 19.1992 -2 25.8994 -9.09961c11.2998 -12 10.9004 -30.9004 -1.09961 -42.4004
c-12 -11.2998 -30.9004 -10.8994 -42.4004 1.10059c-6.7002 7 -9.39941 16.7998 -7.59961 26.2998c-24.9004 26.5996 -44.4004 47.2002 -44.4004 47.2002c42.7002 34.0996 63.2998 79.5996 64.4004 124.2c0.700195 28.8994 -7.2002 57.1992 -21.1006 82.1992zM104 394.9
c6.7002 -7 9.40039 -16.8008 7.59961 -26.3008l45.9004 -48.0996c-4.7002 -3.7998 -13.2998 -10.4004 -22.7998 -21.2998c-25.4004 -28.5 -39.6006 -64.7998 -40.7002 -102.9c-0.700195 -28.8994 6.09961 -57.2002 20 -82.3994l-22 -21.5
c-19.2998 31.5996 -28.9004 67.6992 -27.7998 104.699c1 44.6006 18.2998 87.6006 47.5 121.101l-25.2998 26.3994c-9.60059 -1.2998 -19.2002 2 -25.9004 9.10059c-11.2998 12 -10.9004 30.8994 1.09961 42.3994c11.9004 11.2002 30.6006 10.9004 42.4004 -1.19922z
M464.9 440c26 0 47.0996 -22.4004 47.0996 -48.2998c0 -25.9004 -21.0996 -47.7002 -47.0996 -47.7002c-6.30078 -0.0996094 -14 1.09961 -15.9004 1.7998l-62.9004 -59.7002c-32.6992 43.6006 -76.6992 65.9004 -126.899 67.2002
c-30.5 0.700195 -60.2998 -6.7998 -86.2002 -22.3994l-21.0996 22c32.1992 20.7998 69.5996 31.0996 108.1 30.1992c43.2998 -1.09961 84.5996 -16.6992 117.7 -44.5996l41.0996 38.5996c-1.5 4.7002 -2.2002 9.60059 -2.2002 14.5
c-0.0996094 26.7002 22.3008 48.4004 48.3008 48.4004zM256.7 334.6c5.5 0 10.8994 -0.399414 16.3994 -1.09961c78.1006 -9.7998 133.4 -81.0996 123.801 -159.1c-9.80078 -78.1006 -81.1006 -133.4 -159.101 -123.801c-78.0996 9.80078 -133.399 81.1006 -123.8 159.2
c9.2998 72.4004 70.0996 124.601 142.7 124.8zM197.7 215.2c0.599609 -22.7002 12.2002 -41.7998 32.3994 -52.2002l-11 -51.7002h73.7002l-11 51.7002c20.1006 10.9004 32.1006 29 32.4004 52.2002c-0.400391 32.7998 -25.7998 57.5 -58.2998 58.2998
c-32.1006 -0.799805 -57.3008 -24.7998 -58.2002 -58.2998zM256 288z" />
    <glyph glyph-name="kickstarter" unicode="&#xf3bb;" 
d="M400 -32h-352c-26.4004 0 -48 21.5996 -48 48v352c0 26.4004 21.5996 48 48 48h352c26.4004 0 48 -21.5996 48 -48v-352c0 -26.4004 -21.5996 -48 -48 -48zM199.6 269.5c0 30.7002 -17.5996 45.0996 -39.6992 45.0996c-25.8008 0 -40 -19.7998 -40 -44.5v-154.8
c0 -25.7998 13.6992 -45.5996 40.5 -45.5996c21.5 0 39.1992 14 39.1992 45.5996v41.7998l60.6006 -75.6992c12.2998 -14.9004 39 -16.8008 55.7998 0c14.5996 15.0996 14.7998 36.7998 4 50.3994l-49.0996 62.7998l40.5 58.7002c9.39941 13.5 9.5 34.5 -5.60059 49.1006
c-16.3994 15.8994 -44.5996 17.2998 -61.3994 -7l-44.8008 -64.7002v38.7998z" />
    <glyph glyph-name="kickstarter-k" unicode="&#xf3bc;" horiz-adv-x="384" 
d="M147.3 333.6v-70.5996l82.7998 118.2c31.2002 44.3994 83.3008 41.7998 113.601 12.7998c27.8994 -26.7002 27.7998 -65.0996 10.3994 -89.7998l-74.8994 -107.4l90.7998 -114.8c19.9004 -24.7998 19.5996 -64.5996 -7.40039 -92.2002
c-31.0996 -30.7002 -80.5 -27.2002 -103.199 0l-112.101 138.3v-76.5c0 -57.7998 -32.5996 -83.3994 -72.3994 -83.3994c-49.6006 0 -74.9004 36.0996 -74.9004 83.3994v283c0 45.2002 26.2002 81.4004 73.9004 81.4004c40.8994 0 73.3994 -26.2002 73.3994 -82.4004z" />
    <glyph glyph-name="laravel" unicode="&#xf3bd;" horiz-adv-x="512" 
d="M504.4 332.17c0.15625 -0.650391 0.240234 -1.32324 0.240234 -2.02051c0 -0.0234375 0 -0.046875 -0.000976562 -0.0693359v-109.85c0.000976562 -0.0244141 0.00878906 -0.0429688 0.00878906 -0.0673828c0 -2.96191 -1.61328 -5.5498 -4.00879 -6.93262
l-92.2393 -53.1104v-105.26c0 -0.0078125 0.0078125 -0.00976562 0.0078125 -0.0166016c0 -2.96289 -1.61328 -5.55078 -4.00781 -6.93359l-192.561 -110.84c-0.442383 -0.231445 -0.916016 -0.428711 -1.39941 -0.580078
c-0.180664 -0.0605469 -0.350586 -0.169922 -0.550781 -0.220703c-0.654297 -0.174805 -1.33789 -0.268555 -2.04688 -0.268555c-0.709961 0 -1.39844 0.09375 -2.05273 0.268555c-0.219727 0.0605469 -0.419922 0.180664 -0.629883 0.260742
c-0.458008 0.143555 -0.908203 0.327148 -1.33008 0.540039l-192.5 110.84c-2.39551 1.38281 -4 3.96582 -4 6.92773v0.0224609v329.699c0.00195312 0.727539 0.0996094 1.42969 0.280273 2.10059c0.0839844 0.228516 0.181641 0.454102 0.290039 0.669922
c0.133789 0.427734 0.307617 0.84668 0.509766 1.24023c0.149414 0.259766 0.370117 0.469727 0.549805 0.719727c0.21582 0.329102 0.450195 0.636719 0.709961 0.929688c0.250977 0.217773 0.512695 0.416016 0.790039 0.600586
c0.274414 0.254883 0.56543 0.483398 0.879883 0.689453v0l96.2705 55.4199c1.1748 0.678711 2.55469 1.06738 4.00781 1.06738s2.81641 -0.388672 3.99219 -1.06738l96.29 -55.4199v0c0.307617 -0.210938 0.598633 -0.435547 0.879883 -0.679688
c0.271484 -0.1875 0.529297 -0.385742 0.779297 -0.599609c0.260742 -0.298828 0.499023 -0.610352 0.720703 -0.94043c0.169922 -0.25 0.399414 -0.459961 0.540039 -0.719727c0.203125 -0.393555 0.379883 -0.813477 0.519531 -1.24023
c0.0800781 -0.230469 0.219727 -0.44043 0.280273 -0.679688c0.181641 -0.661133 0.280273 -1.35352 0.280273 -2.07129v-0.0195312v-205.93l80.2197 46.1904v105.239c0.00292969 0.720703 0.100586 1.41602 0.280273 2.08008
c0.0693359 0.240234 0.199219 0.450195 0.279297 0.680664c0.144531 0.427734 0.320312 0.850586 0.520508 1.25c0.149414 0.259766 0.370117 0.469727 0.540039 0.709961c0.21875 0.329102 0.457031 0.636719 0.719727 0.929688
c0.248047 0.216797 0.505859 0.416016 0.780273 0.599609c0.277344 0.250977 0.568359 0.479492 0.879883 0.69043v0l96.2803 55.4502c1.1748 0.677734 2.55469 1.06641 4.00781 1.06641s2.81641 -0.388672 3.99219 -1.06641l96.2598 -55.4199
c0.316406 -0.208984 0.613281 -0.433594 0.899414 -0.680664c0.25 -0.199219 0.540039 -0.379883 0.770508 -0.599609c0.260742 -0.298828 0.499023 -0.609375 0.719727 -0.94043c0.198242 -0.223633 0.376953 -0.458008 0.540039 -0.709961
c0.207031 -0.396484 0.386719 -0.819336 0.530273 -1.25c0.106445 -0.217773 0.201172 -0.447266 0.280273 -0.679688zM111.6 430.72l-80.1895 -46.1602l80.1797 -46.1699l80.2002 46.1807l-80.1904 46.1494v0zM199.85 370.72l-33.6895 -19.4297l-46.5303 -26.79v-201.29
l33.6904 19.4004l46.5293 26.79v201.319zM199.85 -42.0596l-0.109375 92.3594l-92.1904 52.1807v0v0c-0.301758 0.203125 -0.585938 0.421875 -0.859375 0.65918c-0.25 0.200195 -0.540039 0.360352 -0.770508 0.580078v0
c-0.240234 0.265625 -0.458008 0.542969 -0.660156 0.839844c-0.21582 0.25 -0.414062 0.507812 -0.599609 0.780273v0c-0.166016 0.316406 -0.308594 0.655273 -0.419922 1c-0.149414 0.285156 -0.27832 0.589844 -0.379883 0.900391v0
c-0.0820312 0.383789 -0.135742 0.77832 -0.160156 1.17969c-0.0595703 0.293945 -0.0996094 0.594727 -0.120117 0.900391v215.18l-46.5205 26.7998l-33.6895 19.3799v-311.18zM207.85 64.1104l117.62 67.1494l58.7998 33.5605l-80.1299 46.1299l-92.2598 -53.1104
l-84.0898 -48.4102zM392.37 59.54v91.4102l-45.7705 -26.1504l-130.72 -74.5996v-92.3105zM392.37 178.67v91.3301l-46.5303 26.8096l-33.6895 19.4004v-91.4199l46.5293 -26.79zM400.37 283.95l80.1797 46.1797l-80.1797 46.1504l-80.2002 -46.1602zM408.37 178.67
l80.3096 46.1504v0v91.3896l-33.6797 -19.4004l-46.6299 -26.8096v-91.3301z" />
    <glyph glyph-name="line" unicode="&#xf3c0;" 
d="M272.1 243.8v-71.0996c0 -1.7998 -1.39941 -3.2002 -3.19922 -3.2002h-11.4004c-1.09961 0 -2.09961 0.599609 -2.59961 1.2998l-32.6006 44v-42.2002c0 -1.7998 -1.39941 -3.19922 -3.2002 -3.19922h-11.3994c-1.7998 0 -3.2002 1.39941 -3.2002 3.19922v71.1006
c0 1.7998 1.40039 3.2002 3.2002 3.2002h11.2998c1 0 2.09961 -0.5 2.59961 -1.40039l32.6006 -44v42.2002c0 1.7998 1.39941 3.2002 3.2002 3.2002h11.3994c1.7998 0.0996094 3.2998 -1.40039 3.2998 -3.10059zM190.1 247c1.80078 0 3.2002 -1.5 3.2002 -3.2002v-71.0996
c0 -1.7998 -1.39941 -3.2002 -3.2002 -3.2002h-11.3994c-1.7998 0 -3.2002 1.40039 -3.2002 3.2002v71.0996c0 1.7998 1.40039 3.2002 3.2002 3.2002h11.3994zM162.6 187.4c1.7002 0 3.10059 -1.5 3.10059 -3.2002v-11.4004c0 -1.7998 -1.40039 -3.2002 -3.2002 -3.2002
h-45.7002c-0.899414 0 -1.59961 0.400391 -2.2002 0.900391c-0.599609 0.599609 -0.899414 1.2998 -0.899414 2.2002v71.0996c0 1.7998 1.39941 3.2002 3.2002 3.2002h11.3994c1.7998 0 3.2002 -1.40039 3.2002 -3.2002v-56.3994h31.0996zM332.1 247
c1.7002 0 3.10059 -1.5 3.2002 -3.2002v-11.3994c0 -1.80078 -1.39941 -3.2002 -3.2002 -3.2002h-31.0996v-12h31.0996c1.80078 0 3.2002 -1.40039 3.2002 -3.2002v-11.5c0 -1.7998 -1.39941 -3.2002 -3.2002 -3.2002h-31.0996v-12h31.0996
c1.80078 0 3.2002 -1.39941 3.2002 -3.2002v-11.3994c0 -1.7998 -1.39941 -3.2002 -3.2002 -3.2002h-45.6992c-1.80078 0 -3.2002 1.5 -3.2002 3.2002v71.0996c0 1.7998 1.5 3.2002 3.2002 3.2002h45.6992zM448 334.3v-285.3
c-0.0996094 -44.7998 -36.7998 -81.0996 -81.7002 -81h-285.3c-44.7998 0.0996094 -81.0996 36.9004 -81 81.7002v285.3c0.0996094 44.7998 36.9004 81.0996 81.7002 81h285.3c44.7998 -0.0996094 81.0996 -36.7998 81 -81.7002zM386.4 211.7
c0 73 -73.2002 132.399 -163.101 132.399c-89.8994 0 -163.1 -59.3994 -163.1 -132.399c0 -65.4004 58 -120.2 136.399 -130.601c19.1006 -4.09961 16.9004 -11.0996 12.6006 -36.7998c-0.700195 -4.09961 -3.2998 -16.0996 14.0996 -8.7998
c17.4004 7.2998 93.9004 55.2998 128.2 94.7002c23.5996 26 34.9004 52.2998 34.9004 81.5z" />
    <glyph glyph-name="lyft" unicode="&#xf3c3;" horiz-adv-x="512" 
d="M0 366.9h77.7998v-208.7c0 -33.1006 15 -52.7998 27.2002 -61c-12.7002 -11.1006 -51.2002 -20.9004 -80.2002 2.7998c-17 14 -24.7998 37.2998 -24.7998 59v207.9zM485.9 193.4c0 -14.2002 11.5996 -25.9004 26.0996 -25.9004v-76.5
c-56.7002 0 -102.7 46.0996 -102.7 102.7v77.0996c0 34.6006 -52.2002 34.6006 -52.2002 0v-23.2998h38.8008v-76.7998h-38.8008v-6.7002c0 -21.7998 -7.69922 -45 -24.7998 -59c-16.2998 -13.7002 -35.7002 -16.2998 -51.7002 -14v179.2
c0 56.7002 46.1006 102.7 102.7 102.7c49.1006 0 90.2002 -34.4004 100.3 -80.7002h26.1006v-76.7998h-23.7998v-22zM191.6 292.4v0.5h77.1006v-178.2c0 -52.4004 -29.7002 -91.7002 -76.7998 -100.8c-26.1006 -5.10059 -52.5 -2.80078 -77.6006 4.69922v70.3008
c9.7998 -4.2002 29.5 -9.40039 45 -7.80078c20.4004 2 32.7998 11.9004 34.9004 25.3008c0 0 -21.2002 -20.4004 -58.2002 -10.6006c-37 9.90039 -45 40.1006 -45 63.9004v132.7h76.7998v-113c0 -15.4004 23.7998 -15.4004 23.7998 0v113z" />
    <glyph glyph-name="magento" unicode="&#xf3c4;" 
d="M445.7 320.1v-256.1l-63.4004 -36.5v255.8l-158.5 91.6006l-158.6 -91.6006l0.399414 -255.899l-63.2998 36.5996v255.9l221.9 128.1zM255.6 27.5v255.9l63.4004 -36.6006v-256l-95.0996 -54.8994l-94.9004 54.8994l-0.0996094 255.9l63.2998 36.5996v-256
l31.7998 -18.2002z" />
    <glyph glyph-name="medapps" unicode="&#xf3c6;" horiz-adv-x="320" 
d="M118.3 209.6c3.5 12.5 6.90039 33.6006 13.2002 33.6006c8.2998 -1.7998 9.59961 -23.4004 18.5996 -36.6006c4.60059 23.5 5.30078 85.1006 14.1006 86.7002c9 0.700195 19.7002 -66.5 22 -77.5c9.89941 -4.09961 48.8994 -6.59961 48.8994 -6.59961
c1.90039 -7.2998 -24 -7.60059 -40 -7.7998c-4.59961 -14.8008 -5.39941 -27.7002 -11.3994 -28c-4.7002 -0.200195 -8.2002 28.7998 -17.5 49.5996l-9.40039 -65.5c-4.39941 -13 -15.5 22.5 -21.8994 39.2998c-3.30078 0.100586 -62.4004 1.60059 -47.6006 7.7998zM228 0
h-136c-21.2002 0 -21.2002 32 0 32h136c21.2002 0 21.2002 -32 0 -32zM204 -64h-88c-21.2002 0 -21.2002 32 0 32h88c21.2002 0 21.2002 -32 0 -32zM238.2 77.5c-3.60059 -21.2998 -36 -15.5 -32.6006 5.09961c3.60059 21.2002 5.60059 40.6006 15.3008 58.6006
c32.5996 60.2998 66.0996 95.5 66.0996 151.6c0 67.9004 -57 123.2 -127 123.2s-127 -55.2998 -127 -123.2c0 -56.0996 33.5 -91.2998 66.0996 -151.7c9.7002 -17.8994 11.7002 -36.8994 15.3008 -58.5996c3.5 -20.7998 -29.1006 -26.0996 -32.6006 -5.09961
c-3.2002 19.0996 -5.2002 36.3994 -11.8994 48.8994c-8 14.7002 -16.1006 28.1006 -24 41c-24.6006 40.4004 -45.9004 75.2998 -45.9004 125.5c0 85.6006 71.7998 155.2 160 155.2s160 -69.5996 160 -155.2c0 -50.2998 -21.2998 -85.0996 -45.9004 -125.5
c-7.89941 -12.8994 -16.0996 -26.2998 -24 -41c-6.69922 -12.3994 -8.69922 -29.8994 -11.8994 -48.7998z" />
    <glyph glyph-name="medium-m" unicode="&#xf3c7;" horiz-adv-x="512" 
d="M71.5 305.7c0.599609 5.89941 -1.7002 11.7998 -6.09961 15.7998l-45.1006 54.4004v8.09961h140.2l108.4 -237.7l95.2998 237.7h133.7v-8.09961l-38.6006 -37c-3.2998 -2.5 -5 -6.7002 -4.2998 -10.8008v-272c-0.700195 -4.09961 1 -8.2998 4.2998 -10.7998l37.7002 -37
v-8.09961h-189.7v8.09961l39.1006 37.9004c3.7998 3.7998 3.7998 5 3.7998 10.7998v219.8l-108.7 -275.899h-14.7002l-126.399 275.899v-184.899c-1.10059 -7.80078 1.5 -15.6006 7 -21.2002l50.7998 -61.6006v-8.09961h-144v8l50.7998 61.7002
c5.40039 5.59961 7.90039 13.5 6.5 21.2002v213.8z" />
    <glyph glyph-name="medrt" unicode="&#xf3c8;" horiz-adv-x="544" 
d="M113.7 192c0 -121.8 83.8994 -222.8 193.5 -241.1c-18.7002 -4.5 -38.2002 -6.90039 -58.2002 -6.90039c-137.6 0 -249 111 -249 248s111.4 248 248.9 248c20.0996 0 39.5996 -2.40039 58.1992 -6.90039c-109.6 -18.2998 -193.399 -119.3 -193.399 -241.1zM411.1 91.7002
c77.7002 55.3994 104.4 155.1 67 233.899c11.2002 -9.89941 21.5 -21.2998 30.5 -34.1992c61.6006 -88.3008 40.8008 -210.301 -46.5 -272.601c-87.2998 -62.2998 -208.1 -41.2002 -269.699 47c-9 12.7998 -16.2002 26.4004 -21.7002 40.5
c60.7998 -62.0996 162.7 -70 240.399 -14.5996zM192.3 335.7c72.5 54.5996 171.601 45.7002 221.601 -19.7998c45.2998 -59.7002 34.3994 -145.601 -22.3008 -201.801c18.5 51.4004 11.3008 111 -24.3994 158c-43 56.5 -114.601 78.3008 -178.9 60.5
c1.2998 1 2.60059 2.10059 4 3.10059zM296 224h40c4.40039 0 8 -3.59961 8 -8v-48c0 -4.40039 -3.59961 -8 -8 -8h-40c-4.40039 0 -8 -3.59961 -8 -8v-40c0 -4.40039 -3.59961 -8 -8 -8h-48c-4.40039 0 -8 3.59961 -8 8v40c0 4.40039 -3.59961 8 -8 8h-40
c-4.40039 0 -8 3.59961 -8 8v48c0 4.40039 3.59961 8 8 8h40c4.40039 0 8 3.59961 8 8v40c0 4.40039 3.59961 8 8 8h48c4.40039 0 8 -3.59961 8 -8v-40c0 -4.40039 3.59961 -8 8 -8z" />
    <glyph glyph-name="microsoft" unicode="&#xf3ca;" 
d="M0 416h214.6v-214.6h-214.6v214.6zM233.4 416h214.6v-214.6h-214.6v214.6zM0 182.6h214.6v-214.6h-214.6v214.6zM233.4 182.6h214.6v-214.6h-214.6v214.6z" />
    <glyph glyph-name="mix" unicode="&#xf3cb;" 
d="M0 384h448v-204.1c0 -56.6006 -88 -59.9004 -88 0v23.7998c0 56.7998 -82.7002 59 -88 4.2998v-116.1c0 -58 -96 -57.9004 -96 0v175.3c0 56.8994 -80.0996 59.3994 -88 6.5v-238.601c0 -58.0996 -88 -56.1992 -88 0v348.9z" />
    <glyph glyph-name="mizuni" unicode="&#xf3cc;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111.1 248 -248c0 -137 -111 -248 -248 -248s-248 111 -248 248c0 136.9 111 248 248 248zM168 88.0996v223.9c0 22.0996 -17.9004 40 -40 40s-40 -17.9004 -40 -40v-272.1c21.2002 20.8994 48.5996 37.5996 80 48.1992zM288 98v214
c0 22.0996 -17.9004 40 -40 40s-40 -17.9004 -40 -40v-214c13 2 26.4004 3.09961 40.2002 3.09961c13.5996 0 26.8994 -1.09961 39.7998 -3.09961zM408 40.2998v271.7c0 22.0996 -17.9004 40 -40 40s-40 -17.9004 -40 -40v-223.7c31.4004 -10.5996 58.7998 -27.2002 80 -48z
" />
    <glyph glyph-name="monero" unicode="&#xf3d0;" horiz-adv-x="496" 
d="M352 64h108.4c-43.4004 -71.9004 -122.301 -120 -212.4 -120s-169 48.0996 -212.4 120h108.4v127.8l104 -104.8l104 105v-128zM88 112h-74.7998c-8.60059 25.0996 -13.2002 52 -13.2002 80c0 137 111 248 248 248s248 -111 248 -248c0 -28 -4.7002 -54.9004 -13.2002 -80
h-74.7998v208l-160.6 -159.4l-159.4 159.4v-208z" />
    <glyph glyph-name="napster" unicode="&#xf3d2;" horiz-adv-x="496" 
d="M298.3 74.4004c-14.2002 -13.6006 -31.2998 -24.1006 -50.3994 -30.5c-19 6.39941 -36.2002 16.8994 -50.3008 30.5h100.7zM342.3 274c-56.3994 39.7998 -132.1 39.9004 -188.899 -0.0996094c-19.9004 16.7998 -43.6006 29.5 -69.5 36.3994v-161.6
c0 -217.3 328 -219.101 328 0.299805v161.2c-26 -7 -49.6006 -19.2998 -69.6006 -36.2002zM133.5 332.5c6.5 -3.2002 14.0996 -7.40039 20.4004 -11.4004c58.6992 30.5 129.199 30.6006 187.899 0.100586c6.7002 4.2002 13.5 8 20.6006 11.5
c-64.6006 59.8994 -164.5 59.7998 -228.9 -0.200195zM43.7998 354.8c17.5 -0.5 34.2998 -3.09961 50.6006 -7.5c82 91.6006 225.5 91.6006 307.5 0.100586c16.0996 4.39941 32.7998 6.89941 50.0996 7.39941v-69.2002c58.7002 -36.5 58.5 -121.899 -0.200195 -158.199
l-0.299805 -1.7002c-25.9004 -238.8 -381.2 -243.601 -407.6 1.5c-58.5 37.2002 -58.5 121.8 -0.100586 158.3v69.2998zM259.2 96c13.0996 59.2998 33.5 56 113 55.4004c-0.799805 -8.2002 0.0996094 -32.3008 -26.2002 -47.4004c-4.40039 -2.5 -15.2998 -6 -25.5 -6.5
c-25.2998 -1.2002 -61.2998 -1.5 -61.2998 -1.5zM123.7 151.3c79.2998 0.700195 99.7998 4 113 -55.3994c0 0 -36 0.399414 -61.2998 1.5c-10.3008 0.5 -21.1006 4 -25.5 6.5c-26.3008 15.0996 -25.4004 39.1992 -26.2002 47.3994zM292.8 27.9004
c3 -4.90039 3.2002 -8.80078 3.2998 -8.90039c-29.0996 -17.5996 -67.0996 -17.5996 -96.1992 0c0 0 0.899414 5.5 3.69922 9.59961c3.5 5.10059 6.40039 6.60059 6.40039 6.60059c23.7002 -6.90039 51.0996 -7.2998 75.9004 0c0 0 3.69922 -2 6.89941 -7.2998z" />
    <glyph glyph-name="node-js" unicode="&#xf3d3;" 
d="M224 -60c-6.7002 0 -13.5 1.7998 -19.4004 5.2002l-61.6992 36.5c-9.2002 5.2002 -4.7002 7 -1.7002 8c12.2998 4.2998 14.7998 5.2002 27.8994 12.7002c1.40039 0.799805 3.2002 0.5 4.60059 -0.400391l47.3994 -28.0996c1.7002 -1 4.10059 -1 5.7002 0l184.7 106.6
c1.7002 1 2.7998 3 2.7998 5v213.2c0 2.09961 -1.09961 4 -2.89941 5.09961l-184.601 106.5c-1.7002 1 -4 1 -5.7002 0l-184.5 -106.6c-1.7998 -1 -2.89941 -3 -2.89941 -5.10059v-213.1c0 -2 1.09961 -4 2.89941 -4.90039l50.6006 -29.1992
c27.5 -13.7002 44.2998 2.39941 44.2998 18.6992v210.4c0 3 2.40039 5.2998 5.40039 5.2998h23.3994c2.90039 0 5.40039 -2.2998 5.40039 -5.2998v-210.5c0 -36.5996 -20 -57.5996 -54.7002 -57.5996c-10.7002 0 -19.0996 0 -42.5 11.5996l-48.4004 27.9004
c-12 6.89941 -19.3994 19.7998 -19.3994 33.6992v213.101c0 13.7998 7.39941 26.7998 19.3994 33.7002l184.5 106.6c11.7002 6.59961 27.2002 6.59961 38.8008 0l184.699 -106.7c12 -6.89941 19.4004 -19.7998 19.4004 -33.7002v-213.1
c0 -13.7998 -7.40039 -26.7002 -19.4004 -33.7002l-184.699 -106.6c-5.90039 -3.40039 -12.6006 -5.2002 -19.4004 -5.2002zM373.1 150.1c0 -40.1992 -33.5996 -63.2998 -92 -63.3994c-80.8994 0 -97.7998 37.0996 -97.7998 68.2002c0 2.89941 2.2998 5.2998 5.2998 5.2998
h23.9004c2.7002 0 4.90039 -1.90039 5.2998 -4.5c3.60059 -24.2998 14.2998 -36.6006 63.2002 -36.6006c38.9004 0 55.5 8.80078 55.5 29.4004c0 11.9004 -4.7002 20.7998 -65.2002 26.7002c-50.5 5 -81.7998 16.2002 -81.7998 56.5996c0 37.2998 31.4004 59.5 84.0996 59.5
c59.2002 0 88.5 -20.5 92.2002 -64.5996c0.100586 -1.5 -0.399414 -3 -1.39941 -4.10059c-1 -1.09961 -2.40039 -1.69922 -3.90039 -1.69922h-24c-2.5 0 -4.7002 1.7998 -5.2002 4.19922c-5.7998 25.6006 -19.7998 33.8008 -57.7002 33.8008
c-42.5 0 -47.3994 -14.8008 -47.3994 -25.9004c0 -13.4004 5.7998 -17.2998 63.2002 -24.9004c56.6992 -7.5 83.6992 -18.0996 83.6992 -58z" />
    <glyph glyph-name="npm" unicode="&#xf3d4;" horiz-adv-x="576" 
d="M288 160h-32v64h32v-64zM576 288v-192h-288v-32h-128v32h-160v192h576zM160 256h-128v-128h64v96h32v-96h32v128zM320 256h-128v-160h64v32h64v128zM544 256h-192v-128h64v96h32v-96h32v96h32v-96h32v128z" />
    <glyph glyph-name="ns8" unicode="&#xf3d5;" horiz-adv-x="640" 
d="M104.324 178.828v26.1777h26.0664v-26.1777h-26.0664zM156.79 205.006h-26.3428v26.1777c-0.124023 7.05762 -5.8916 12.748 -12.9785 12.748c-7.08594 0 -12.8535 -5.69043 -12.9775 -12.748v-0.166016h-26.4004v0.166016
c-0.000976562 0.119141 -0.000976562 0.220703 -0.000976562 0.339844c0 21.7041 17.6211 39.3242 39.3242 39.3242c21.5039 0 38.999 -17.2959 39.3213 -38.7227v-0.941406zM209.146 179.16v26.0117h26.3438v-26.0117
c0 -0.0371094 -0.000976562 -0.0722656 -0.000976562 -0.109375c0 -64.7373 -52.5439 -117.3 -117.274 -117.331h-0.774414c-0.0380859 0 -0.0732422 0.000976562 -0.110352 0.000976562c-64.7373 0 -117.299 52.543 -117.33 117.273v0.166016h26.3369
c0 -50.2793 40.8203 -91.1006 91.0996 -91.1006h0.609375c50.2793 0 91.1006 40.8213 91.1006 91.1006zM51.9131 179.16v25.96h-26.291v25.3994c0 50.6445 41.1162 91.7617 91.7607 91.7617s91.7607 -41.1172 91.7607 -91.7617v-25.293h-26.3438v25.293v0.200195
c0 36.1055 -29.3135 65.4199 -65.4199 65.4199c-35.7656 0 -64.8672 -28.7646 -65.4121 -64.4023v-26.6201h26.2891v-25.957c0.356445 -21.2305 17.7031 -38.3564 39.0176 -38.3564s38.6611 17.126 39.0176 38.3564h26.3438
c-0.140625 -35.9551 -29.374 -65.1016 -65.3613 -65.1016s-65.2207 29.1465 -65.3613 65.1016zM470.313 250.333c-11.3467 0 -20.8633 -4.75977 -24.2402 -12.1172v-8.41211c2.21875 -4.53809 6.30859 -7.69238 12.6191 -9.62988
c4.75879 -1.37891 9.76562 -2.3623 14.832 -2.87793c6.36426 -0.827148 13.0068 -1.71484 20.6992 -4.42676c13.7256 -4.59375 24.0742 -13.2275 28.9443 -24.2412l0.166016 -0.664062l-0.166016 -25.8994c-7.69238 -17.0479 -28.668 -28.4473 -52.2998 -28.4473
c-25.6797 0 -47.374 12.6182 -55.2891 32.0439l-0.552734 1.43848l23.0205 11.5078l0.719727 -1.49414c5.97754 -12.1211 17.5996 -19.0391 31.9336 -19.0391c12.0098 0 22.083 4.81445 25.791 12.3418v9.85059c-2.37988 4.59473 -6.47656 7.75098 -12.8398 9.85156
c-5.20312 1.71582 -10.3506 2.37988 -15.8291 3.09961c-6.78809 0.675781 -13.4814 2.04199 -19.8135 3.98438c-14.1123 4.87109 -23.9678 13.2275 -28.668 24.2412c-0.158203 0.949219 -0.123047 -2.02637 0 24.8496c7.36133 17.0469 27.8379 28.4473 50.9727 28.4473
c24.9062 0 45.3818 -12.0098 53.4062 -31.2705l0.609375 -1.43848l-23.2451 -11.5117l-0.71875 1.5498c-5.47949 11.6221 -16.3818 18.2637 -30.0518 18.2637zM287.568 136.656v68.3994h26.0664v-68.3994h-26.0664zM639.834 189.956l0.166016 -0.722656l-0.166016 -28.8906
c-7.52734 -15.9941 -27.8916 -26.7305 -50.584 -26.7305s-43.0029 10.7363 -50.585 26.7305l-0.166016 0.720703l0.166016 28.8887c2.93262 6.25391 8.24121 12.0137 15.4414 16.7139c-5.57422 3.90332 -10.0391 9.14453 -13.0068 15.3311l-0.166016 0.664062
l0.166016 25.3467c7.36133 15.9922 26.7334 26.7324 48.1504 26.7324s40.7881 -10.7402 48.1504 -26.7295l0.166016 -0.664062l-0.166016 -25.3467c-2.90137 -6.22852 -7.38379 -11.4873 -13.0078 -15.3301c7.1416 -4.7041 12.5088 -10.46 15.4414 -16.7139z
M566.614 240.762v-13.7246c3.48535 -6.19922 12.5068 -10.3486 22.5801 -10.3486c10.0723 0 19.0938 4.14844 22.6357 10.3486v13.7246c-3.59766 6.31055 -12.6191 10.5166 -22.6357 10.5166c-10.0176 0 -18.9805 -4.20605 -22.5801 -10.5166zM613.933 168.593v16.1572
c-3.76367 6.36523 -13.3379 10.5146 -24.6826 10.5146c-11.1836 0 -20.9756 -4.20605 -24.6836 -10.5146v-16.1572c3.70801 -6.52734 13.5586 -10.8994 24.6836 -10.8994c11.3447 0 20.9189 4.25879 24.6826 10.8994zM376.4 182.038v89.7129h25.8994v-135.095h-25.6777
l-62.5391 94.085v0.386719h-26.5098v40.623h29z" />
    <glyph glyph-name="nutritionix" unicode="&#xf3d6;" horiz-adv-x="400" 
d="M88 439.9c0 0 133.4 8.19922 121 -104.4c0 0 19.0996 74.9004 103 40.5996c0 0 -17.7002 -74 -88 -56c0 0 14.5996 54.6006 66.0996 56.6006c0 0 -39.8994 10.2998 -82.0996 -48.7998c0 0 -19.7998 94.5 -93.5996 99.6992c0 0 75.1992 -19.3994 77.5996 -107.5
c0 -0.0996094 -106.4 -7 -104 119.801zM400 124.3c0 -48.5 -9.7002 -95.2998 -32 -132.3c-42.2002 -30.9004 -105 -48 -168 -48c-62.9004 0 -125.8 17.0996 -168 48c-22.2998 37 -32 83.7998 -32 132.3c0 48.4004 17.7002 94.7002 40 131.7
c42.2002 30.9004 97.0996 48.5996 160 48.5996c63 0 117.8 -17.5996 160 -48.5996c22.2998 -37 40 -83.2998 40 -131.7zM120 20c0 15.5 -12.5 28 -28 28s-28 -12.5 -28 -28s12.5 -28 28 -28s28 12.5 28 28zM120 86.2002c0 15.5 -12.5 28 -28 28s-28 -12.5 -28 -28
s12.5 -28 28 -28s28 12.5 28 28zM120 152.4c0 15.5 -12.5 28 -28 28s-28 -12.5 -28 -28s12.5 -28 28 -28s28 12.5 28 28zM192 20c0 15.5 -12.5 28 -28 28s-28 -12.5 -28 -28s12.5 -28 28 -28s28 12.5 28 28zM192 86.2002c0 15.5 -12.5 28 -28 28s-28 -12.5 -28 -28
s12.5 -28 28 -28s28 12.5 28 28zM192 152.4c0 15.5 -12.5 28 -28 28s-28 -12.5 -28 -28s12.5 -28 28 -28s28 12.5 28 28zM264 20c0 15.5 -12.5 28 -28 28s-28 -12.5 -28 -28s12.5 -28 28 -28s28 12.5 28 28zM264 86.2002c0 15.5 -12.5 28 -28 28s-28 -12.5 -28 -28
s12.5 -28 28 -28s28 12.5 28 28zM264 152.4c0 15.5 -12.5 28 -28 28s-28 -12.5 -28 -28s12.5 -28 28 -28s28 12.5 28 28zM336 20c0 15.5 -12.5 28 -28 28s-28 -12.5 -28 -28s12.5 -28 28 -28s28 12.5 28 28zM336 86.2002c0 15.5 -12.5 28 -28 28s-28 -12.5 -28 -28
s12.5 -28 28 -28s28 12.5 28 28zM336 152.4c0 15.5 -12.5 28 -28 28s-28 -12.5 -28 -28s12.5 -28 28 -28s28 12.5 28 28zM360 192c-4.7998 22.2998 -7.40039 36.9004 -16 56c-38.7998 19.9004 -90.5 32 -144 32s-105.2 -12.0996 -144 -32
c-8.7998 -19.5 -11.2002 -33.9004 -16 -56c42.2002 7.90039 98.7002 14.7998 160 14.7998s117.8 -6.89941 160 -14.7998z" />
    <glyph glyph-name="page4" unicode="&#xf3d7;" horiz-adv-x="496" 
d="M248 -56c-137 0 -248 111 -248 248s111 248 248 248c20.9004 0 41.2998 -2.59961 60.7002 -7.5l-266.4 -376.5h205.7v-112zM248 87.5996h-149.4l149.4 213.601v-213.601zM344 56h111.4c-26.9004 -41 -65.7002 -73.5 -111.4 -92.7002v92.7002zM401.4 194.2v-16.7002
l-21.2002 8.2998zM381.1 139.7c5.90039 0 8.2002 -4.7002 8.2002 -10.6006v-10h-16.2002v7.7002c0 6.60059 1.30078 12.9004 8 12.9004zM496 192c0 -37.2998 -8.2002 -72.7002 -23 -104.4h-129v333.101c89.2998 -37.5 152 -125.8 152 -228.7zM360.4 304.4h68.1992v47.5996
h-13.8994v-32.5996h-13.9004v29.5996h-13.8994v-29.5996h-12.7002v32.5996h-13.9004v-47.5996h0.100586zM428.5 119.1h-26.5v11c0 15.4004 -5.59961 25.2002 -20.9004 25.2002c-15.3994 0 -20.6992 -10.5996 -20.6992 -25.8994v-25.3008h68.1992v15h-0.0996094zM428.5 222.1
l-68.2002 -29.6992v-12.4004l68.2002 -29.5v16.5996l-14.4004 5.7002v26.5l14.4004 5.90039v16.8994zM423.7 290.6h-35.6006v-26.5996h13.9004v12.2002h11c8.59961 -15.7998 1.2998 -35.2998 -18.5996 -35.2998c-22.5 0 -28.3008 25.2998 -15.5 37.6992l-11.6006 10.6006
c-16.2002 -17.5 -12.2002 -63.9004 27.1006 -63.9004c34 0 44.6992 35.9004 29.2998 65.2998z" />
    <glyph glyph-name="palfed" unicode="&#xf3d8;" horiz-adv-x="576" 
d="M384.9 254.1c0.0996094 -53.3994 -46.5 -96.1992 -83.3008 -96.1992c-12.5 0 -14.3994 3.39941 -15.0996 6.19922c0.5 39.1006 1.7002 80.4004 3 119.801c40.2002 14.3994 95.4004 17.5996 95.4004 -29.8008zM190.4 181.9
c-0.200195 0.599609 -0.400391 2.09961 -0.600586 4.59961c0 25.5996 37 60.9004 58.5 75.9004c-1.2002 -36.4004 -5.5 -198.101 -1.39941 -242.5c3 -32.3008 26.7998 -32.9004 36.3994 -22.3008c5.90039 6.60059 5.5 15.7002 5.2998 19.1006v0.200195
c-1.7998 25.5996 -2.7998 60.5996 -2.69922 100c60.7998 -14.4004 140.1 60.2998 140.1 138.199c0 71 -63 94.2002 -135.2 72c-2.89941 14.6006 -18.2998 20.1006 -29.5 11.1006c-7.5 -6.2002 -9.5 -15.7998 -10.5 -28.2002c-57.7998 -30.9004 -100.7 -84.5 -100.7 -126.5
c0 -24.9004 15.6006 -43 37.1006 -43c35.0996 0 41 44.0996 14.3994 44.0996c-4.69922 0 -11 -2.69922 -11.1992 -2.69922zM8 266.9c0 38.5996 38.4004 37.3994 38.4004 37.3994h29c15.5 70.1006 120.5 74.2998 120.5 74.2998h28.0996v19.1006
c0 18.3994 21.0996 18.3994 21.0996 18.3994h85.8008c18.3994 0 21.0996 -18.3994 21.0996 -18.3994v-19.1006h28c89.2002 0 112.1 -48.6992 119.4 -74.2998h30.0996c38.5 0 38.4004 -37.3994 38.4004 -37.3994c0 -38.6006 -38.4004 -37.4004 -38.4004 -37.4004h-30
l-22.4004 -217.2c0 -43.8994 -44.6992 -44.2998 -44.6992 -44.2998h-288.9c-44.7002 0 -44.7002 44.2998 -44.7002 44.2998l-22.3994 217.2h-30c-38.5 0 -38.4004 37.4004 -38.4004 37.4004z" />
    <glyph glyph-name="patreon" unicode="&#xf3d9;" horiz-adv-x="512" 
d="M512 253.2c0 -101.3 -82.4004 -183.8 -183.8 -183.8c-101.7 0 -184.4 82.3994 -184.4 183.8c0 101.6 82.7002 184.3 184.4 184.3c101.399 0 183.8 -82.7002 183.8 -184.3zM0 -53.5v491h90v-491h-90z" />
    <glyph glyph-name="periscope" unicode="&#xf3da;" 
d="M370 384.4c38.4004 -40.7002 59.5 -94.3008 59.5 -150.801c0 -74.2998 -57.4004 -159.5 -82 -192.6c-8 -10.7998 -79.2998 -105 -120.9 -105c-34 0 -88.7998 56.5 -125.399 104.9c-24.9004 32.8994 -82.7002 117.6 -82.7002 192.699c0 118.2 93.4004 214.4 208.1 214.4
c53.9004 0 104.801 -22.5996 143.4 -63.5996zM226.6 -45.9004c37.3008 0 184.801 167.301 184.7 279.4c0 107.3 -83.8994 196.3 -184.7 196.3c-106.1 0 -190 -88.8994 -190 -196.3c0 -112.1 147.5 -279.4 190 -279.4zM338 241.2c0 -59.1006 -51.0996 -109.7 -110.8 -109.7
c-100.601 0 -150.7 108.2 -92.9004 181.8v-0.399414c0 -24.5 20.1006 -44.4004 44.7998 -44.4004c24.7002 0 44.8008 19.9004 44.8008 44.4004c0 18.1992 -11.1006 33.7998 -26.9004 40.6992c76.5996 19.2002 141 -39.2998 141 -112.399z" />
    <glyph glyph-name="phabricator" unicode="&#xf3db;" horiz-adv-x="496" 
d="M323 185.9c0 0 21.5996 -19.6006 20.9004 -20.7002l-8.10059 -19.7998c-0.5 -1.40039 -29.7002 -0.5 -29.7002 -0.5l-9.09961 -9.10059s1.59961 -31.5 0.200195 -32.0996l-20 -7.5c-1.2998 -0.5 -21.7998 23.2998 -21.7998 23.2998l-13.1006 0.200195
s-19.2998 -24.1006 -20.7002 -23.5l-20.0996 8.2998c-1.40039 0.5 -1.2002 32.2998 -1.2002 32.2998l-9.39941 9.2998s-28.9004 -0.899414 -29.5 0.5l-9.5 20c-0.600586 1.40039 21.0996 21.2002 21.0996 21.2002l-0.0996094 12.9004s-21.6006 19.5996 -21 21
l8.09961 19.7998c0.5 1.2998 29.7002 0.400391 29.7002 0.400391l9.09961 9.09961s-1.59961 28.4004 -0.200195 28.9004l20 8.2998c1.40039 0.599609 21.9004 -20.7998 21.9004 -20.7998l13.0996 -0.200195s19.3008 21.5996 20.7002 21l20.1006 -9.2002
c1.39941 -0.599609 1.19922 -29.0996 1.19922 -29.0996l9.40039 -9.30078s28.9004 0.900391 29.5 -0.5l9.5 -20c0.599609 -1.39941 -21.0996 -21.1992 -21.0996 -21.1992zM278.1 194.6c-0.699219 17 -15.5 30.3008 -32.7998 29.5
c-17.2998 -0.699219 -30.7998 -15.1992 -30.0996 -32.2998c0.700195 -17.0996 15.5 -30.3994 32.7998 -29.5996s30.7998 15.2998 30.0996 32.3994zM479.3 232.5c22.2998 -22.2998 22.2998 -58.7002 0 -81c-67.3994 -67.4004 -44.2998 -44.4004 -95.2998 -95.2998
c-74.4004 -74.5 -194.7 -74.9004 -269.8 -1.60059l-0.100586 -0.0996094c-51 51 -27.5 27.5996 -97.3994 97c-22.2998 22.2998 -22.2998 58.7002 0 81c67.8994 67.4004 44.7998 44.2998 95.7002 95.2998c74.3994 74.4004 194.699 74.9004 269.8 1.60059l0.0996094 0.0996094
zM140.4 84.2002c59.5996 -59.5 156 -59.6006 215.6 -0.100586c59.5996 59.6006 59.5 156.101 0 215.601c-59.5996 59.5 -156.1 59.5996 -215.6 0c-59.6006 -59.5 -59.6006 -156 0 -215.5z" />
    <glyph glyph-name="phoenix-framework" unicode="&#xf3dc;" horiz-adv-x="640" 
d="M212.9 103.7c-36.7002 -1.2002 -108.7 29.2998 -127.7 106.399c-8.7002 35.3008 -2.7002 51.8008 -8 86.1006c-8.2002 53.3994 -32.1006 72.2002 -55.9004 76.5c-6.2002 1.09961 -12.3994 1.2998 -18.7002 0.299805
c-0.799805 -0.0996094 -1.59961 -0.200195 -2.39941 -0.200195c-0.100586 0.200195 -0.100586 0.299805 -0.200195 0.5c0.700195 0.600586 1.40039 1.2002 2.2002 1.7998c36.8994 26.9004 92 38.4004 136.3 35c123.6 -9.5 141.3 -156.6 252.5 -173.1
c6.09961 -0.900391 12.2998 -1.09961 18.5 -1.7002c0.700195 -0.0996094 1.40039 -0.0996094 2.5 -0.200195c-2.09961 -2.19922 -21.5996 -11.7998 -36.5 -14.5c-18.4004 -3.39941 -35.7002 -0.0996094 -51.2998 10.3008c-14.5 9.7998 -24.5 23.5 -38.9004 27.3994
c-13 3.60059 -34.0996 1.7002 -35.8994 -19.5996c-1.30078 -15.9004 14.1992 -51.7998 51.7998 -74.6006c40.3994 -24.5 101.399 -26.8994 134.7 -14.7998c0.299805 0.100586 0.699219 0.200195 1.09961 0.299805c0.200195 0.100586 0.400391 0 1 -0.0996094
c-23.5996 -28.4004 -71.2002 -49.9004 -108.2 -45.4004c-50.3994 6.2002 -77.7002 75.9004 -113.7 97.5c-19.0996 11.5 -49.0996 7 -52 -18.5c-1.09961 -10 2.10059 -19 6.40039 -27.5996c24.4004 -48.5996 65.5996 -47 68 -49.5996
c-2.7998 -0.800781 -21.7998 -2.10059 -25.5996 -2.2002zM75.2998 383.1c13.1006 -14.5 34.2002 -7.89941 35.2998 6.80078c-12.3994 -0.700195 -24.5 -2.2002 -36.5996 -4.80078c0.400391 -0.799805 0.400391 -1 1.2998 -2zM272.2 32.5996
c-42.7998 -1.19922 -92 26.7002 -123.5 61.4004c-4.60059 5 -16.7998 20.2002 -18.6006 23.4004l0.400391 0.399414c6.59961 -4.09961 25.7002 -18.5996 54.7998 -27c24.2002 -7 48.1006 -6.2998 71.6006 3.2998c22.6992 9.30078 41 0.5 43.0996 -2.89941
c-18.5 -3.7998 -20.0996 -4.40039 -24 -7.90039c-5.09961 -4.39941 -4.59961 -11.7002 7 -17.2002c26.2002 -12.3994 63 2.80078 97.2002 -25.3994c2.39941 -2 8.09961 -7.7998 10.0996 -10.7002c-0.0996094 -0.200195 -0.299805 -0.299805 -0.399414 -0.5
c-4.80078 1.5 -16.4004 7.5 -40.2002 9.2998c-24.7002 2 -46.2998 -5.2998 -77.5 -6.2002zM447 284.6c16.4004 5.2002 41.2998 13.4004 66.5 3.30078c16.0996 -6.5 26.2002 -18.7002 32.0996 -34.6006c3.5 -9.39941 5.10059 -19.7002 5.10059 -28.7002
c-0.200195 0 -0.400391 0 -0.600586 -0.0996094c-0.199219 0.400391 -0.399414 0.900391 -0.5 1.2998c-5 22 -29.8994 43.7998 -67.5996 29.9004c-50.2002 -18.6006 -130.4 -9.7002 -176.9 48c-0.699219 0.899414 -2.39941 1.7002 -1.2998 3.2002
c0.100586 0.199219 2.10059 -0.600586 3 -1.30078c18.1006 -13.3994 38.2998 -21.8994 60.2998 -26.1992c30.5 -6.10059 54.6006 -2.90039 79.9004 5.19922zM549.7 167.1c-32.4004 -0.199219 -33.7998 -50.0996 -103.601 -64.3994
c-18.1992 -3.7002 -38.6992 -4.60059 -44.8994 -4.2002v0.400391c2.7998 1.5 14.7002 2.59961 29.7002 16.5996c7.89941 7.2998 15.2998 15.0996 22.7998 22.9004c19.5 20.1992 41.3994 42.1992 81.8994 39c23.1006 -1.80078 29.3008 -8.2002 36.1006 -12.7002
c0.299805 -0.200195 0.399414 -0.5 0.700195 -0.900391c-0.5 0 -0.700195 -0.0996094 -0.900391 0c-7 2.7002 -14.2998 3.2998 -21.7998 3.2998zM537.4 191.2c-0.100586 -0.200195 -0.100586 -0.400391 -0.200195 -0.600586c-28.9004 4.40039 -48 7.90039 -68.5 -4
c-17 -9.89941 -31.4004 -20.5 -62 -24.3994c-27.1006 -3.40039 -45.1006 -2.40039 -66.1006 8c-0.299805 0.200195 -0.599609 0.399414 -1 0.599609c0 0.200195 0.100586 0.299805 0.100586 0.5c24.8994 -3.7998 36.3994 -5.09961 55.5 5.7998
c22.2998 12.9004 40.0996 26.6006 71.2998 31c29.5996 4.10059 51.2998 -2.5 70.9004 -16.8994zM268.6 350.7c-0.599609 0.599609 -1.09961 1.2002 -2.09961 2.2998c7.59961 0 29.7002 1.2002 53.4004 -8.40039c19.6992 -8 32.1992 -21 50.1992 -32.8994
c11.1006 -7.2998 23.4004 -9.2998 36.4004 -8.10059c4.2998 0.400391 8.5 1.2002 12.7998 1.7002c0.400391 0.100586 0.900391 0 1.5 -0.299805c-0.599609 -0.400391 -1.2002 -0.900391 -1.7998 -1.2002c-8.09961 -4 -16.7002 -6.2998 -25.5996 -7.09961
c-26.1006 -2.60059 -50.3008 3.7002 -73.4004 15.3994c-19.2998 9.90039 -36.4004 22.9004 -51.4004 38.6006zM640 112.3c-3.5 -3.09961 -22.7002 -11.5996 -42.7002 -5.2998c-12.2998 3.90039 -19.5 14.9004 -31.5996 24.0996
c-10 7.60059 -20.9004 7.90039 -28.1006 8.40039c0.600586 0.799805 0.900391 1.2002 1.2002 1.40039c14.7998 9.19922 30.5 12.1992 47.2998 6.5c12.5 -4.2002 19.2002 -13.5 30.4004 -24.2002c10.7998 -10.4004 21 -9.90039 23.0996 -10.5
c0.100586 0.0996094 0.200195 0 0.400391 -0.400391zM427.5 -24.7002c2.2002 -1.2002 1.59961 -1.5 1.5 -2c-18.5 1.40039 -33.9004 7.60059 -46.7998 22.2002c-21.7998 24.7002 -41.7002 27.9004 -48.6006 29.7002c0.5 0.200195 0.800781 0.399414 1.10059 0.399414
c13.0996 -0.0996094 26.0996 -0.699219 38.8994 -3.89941c25.3008 -6.40039 35 -25.4004 41.6006 -35.2998c3.2002 -4.80078 7.2998 -8.30078 12.2998 -11.1006z" />
    <glyph glyph-name="playstation" unicode="&#xf3df;" horiz-adv-x="576" 
d="M570.9 75.7002c-11.3008 -14.2002 -38.8008 -24.2998 -38.8008 -24.2998l-205.1 -73.6006v54.2998l150.9 53.8008c17.0996 6.09961 19.7998 14.7998 5.7998 19.3994c-13.9004 4.60059 -39.1006 3.2998 -56.2002 -2.89941l-100.5 -35.5v56.3994
c23.2002 7.7998 47.0996 13.6006 75.7002 16.7998c40.8994 4.5 90.8994 -0.599609 130.2 -15.5c44.1992 -14 49.1992 -34.6992 38 -48.8994zM346.5 168.2v139c0 16.2998 -3 31.2998 -18.2998 35.5996c-11.7002 3.7998 -19 -7.09961 -19 -23.3994v-347.9l-93.7998 29.7998
v414.7c39.8994 -7.40039 98 -24.9004 129.199 -35.4004c79.5 -27.2998 106.4 -61.2998 106.4 -137.8c0 -74.5 -46 -102.8 -104.5 -74.5996zM43.2002 37.7998c-45.4004 12.7998 -53 39.5 -32.2998 54.7998c19.0996 14.2002 51.6992 24.9004 51.6992 24.9004l134.5 47.7998
v-54.5l-96.7998 -34.5996c-17.0996 -6.10059 -19.7002 -14.7998 -5.7998 -19.4004c13.9004 -4.59961 39.0996 -3.2998 56.2002 2.90039l46.3994 16.8994v-48.7998c-51.5996 -9.2998 -101.399 -7.2998 -153.899 10z" />
    <glyph glyph-name="pushed" unicode="&#xf3e1;" horiz-adv-x="432" 
d="M407 336.1c21.7002 -1.89941 33.7998 -28 17.4004 -44.7998l-235.2 -231.3l-35.2998 -80.7998c-11 -17.2002 -41.2002 -14.2998 -47.7002 7l-105.101 348.3c-4.59961 18.2998 6.30078 33.9004 21.4004 36.5996l271.3 44.4004c17.9004 3.40039 39.1006 -13.5 28.7002 -37
l-14 -33.4004zM297.6 394.4l-189 -31l177.4 -16.3008l16.7998 39.9004c2.2998 4.90039 -0.0996094 8.09961 -5.2002 7.40039zM22.7002 340.1l157.899 -244.3l96.9004 230.7l-248.7 22.7002c-5.09961 0.899414 -9.2002 -4 -6.09961 -9.10059zM136 -8.40039
c0 0 28.2002 64.1006 35.2002 79.1006l-127.7 197.6l83.0996 -275.5c1.5 -4.2998 6.80078 -5.2002 9.40039 -1.2002zM408.8 306.1c3.10059 3.30078 1.40039 7.5 -2.59961 8.60059l-106.4 9.7002l-89.7002 -213.7z" />
    <glyph glyph-name="python" unicode="&#xf3e2;" 
d="M439.8 247.5c10.7002 -42.9004 11.2002 -75.0996 0 -108.6c-10.7998 -32.5 -22.2998 -54.2002 -53.3994 -54.2002h-160.2v-13.6006h106.7v-40.6992c0 -30.8008 -26.5 -46.5 -53.4004 -54.3008c-40.5 -11.6992 -73 -9.89941 -106.8 0
c-28.2002 8.30078 -53.4004 25.3008 -53.4004 54.3008v101.8c0 29.2998 24.2002 54.2998 53.4004 54.2998h106.8c35.5996 0 66.7998 31 66.7998 67.7998v47.4004h40.1006c31.0996 0 45.6992 -23.2998 53.3994 -54.2002zM286.2 44c-11 0 -20 -9 -20.1006 -20.2998
c0 -11.2002 9.10059 -20.4004 20.1006 -20.4004c11.0996 0 20.0996 9.10059 20.0996 20.4004c0 11.2002 -9 20.2998 -20.0996 20.2998zM167.8 199.9c-36.2998 0 -66.7998 -31.1006 -66.7998 -66.4004v-48.7998h-36.7002c-31.0996 0 -49.2002 22.5996 -56.7998 54.2002
c-10.2002 42.5 -9.7998 67.8994 0 108.6c8.5 35.5 35.7002 54.2002 66.7998 54.2002h147v13.5996h-106.899v40.7002c0 30.9004 8.19922 47.5996 53.3994 55.5996c32.1006 5.7002 71 6 106.8 0.100586c29 -4.90039 53.4004 -26.6006 53.4004 -55.6006v-101.899
c0 -29.7998 -23.7002 -54.2998 -53.4004 -54.2998h-106.8zM161.1 342.5c11.1006 0 20.1006 9.09961 20.1006 20.2998s-9.10059 20.4004 -20.1006 20.4004c-11.0996 0 -20 -9.10059 -20.0996 -20.4004c0 -11.2002 9 -20.2998 20.0996 -20.2998z" />
    <glyph glyph-name="red-river" unicode="&#xf3e3;" 
d="M353.2 416c52.3994 0 94.7998 -42.4004 94.7998 -94.7998v-258.4c0 -52.3994 -42.4004 -94.7998 -94.7998 -94.7998h-258.4c-52.3994 0 -94.7998 42.4004 -94.7998 94.7998v258.4c0 52.3994 42.4004 94.7998 94.7998 94.7998h258.4zM144.9 247.1
c-0.600586 12.4004 11.6992 24.6006 24 24h56.2998c27 0 48.8994 21.9004 48.8994 48.9004h-154.199c-13.2002 0 -23.9004 -10.7002 -23.9004 -23.9004v-154.199c27 0 48.9004 21.8994 48.9004 48.8994v56.2998zM321.2 175.1c27 0 48.8994 21.9004 48.8994 48.9004h-154.199
c-13.2002 0 -23.9004 -10.7002 -23.9004 -23.9004v-154.199c27 0 48.9004 21.8994 48.9004 48.8994v56.2998c-0.600586 12.4004 11.6992 24.6006 24 24h56.2998z" />
    <glyph glyph-name="wpressr" unicode="&#xf3e4;" horiz-adv-x="496" 
d="M248 440c136.97 0 248 -111.03 248 -248s-111.03 -248 -248 -248s-248 111.03 -248 248s111.03 248 248 248zM419.33 281.4c2.41016 5.47949 0.459961 8.2793 -5.62012 8.26953c-104.8 0.00976562 -107.69 -0.0302734 -130.78 0.0302734
c-4.31934 0.00976562 -7.10938 -1.82031 -8.83984 -5.78027c-5.70996 -13.0996 -11.5195 -26.1504 -17.2998 -39.21c-2.57031 -5.7998 -1 -8.26953 5.26953 -8.26953c25.2607 0 50.5205 -0.0107422 75.7803 0.0195312
c10.0303 0.00976562 8.54004 -13.6602 -3.89941 -13.6396c-26.4307 0.0498047 -52.8604 0 -79.29 0.0498047c-4.91016 0.00976562 -8.33008 -1.88965 -10.3506 -6.5c-4.2998 -9.83008 -32.1494 -73.0801 -32.1895 -73.1602
c-3.2002 -7.16016 -16.2607 -6.09961 -11.2803 5.33008c8.26953 18.9902 16.6504 37.9297 24.9795 56.8896c2.25 5.11035 -0.0996094 8.74023 -5.65918 8.75c-15.21 0.0205078 -30.4307 -0.0400391 -45.6406 0.0400391
c-3.35938 0.0107422 -5.41016 -1.29004 -6.76953 -4.38965c-31.4307 -71.8701 -29.7803 -67.3203 -30.0098 -67.6904c-3.87012 -6.37012 -14.8604 -3.34961 -10.9502 5.60059c5.66992 13.0098 11.3701 26.0098 17.0898 39c13.5703 30.7793 27.1396 61.5596 40.7402 92.3301
c2.54004 5.75 -0.419922 10.5801 -6.66016 10.5898c-14.2402 0.0302734 -28.4805 -0.0498047 -42.7197 0.0498047c-4.26074 0.0302734 -6.84082 -1.76953 -8.54004 -5.65039c-12.8604 -29.3896 -25.8203 -58.7295 -38.75 -88.0791
c-8.62012 -19.5605 -17.2305 -39.1201 -25.8906 -58.6602c-1.58008 -3.55078 -1.47949 -6.78027 1.20996 -9.73047c11.2207 -12.3096 22.4707 -24.6094 33.6807 -36.9395c2.08984 -2.30078 4.58984 -3.4502 7.71973 -3.4502c45.9395 0.0195312 91.8701 0.00976562 137.81 0
c3.86035 0 6.37988 1.78027 7.91992 5.29004c10.3203 23.5 20.7607 46.9395 30.9502 70.5c2.08984 4.83008 5.21973 6.75 10.3398 6.71973c23.0205 -0.110352 46.0303 -0.0400391 69.0508 -0.0498047c6.0791 0 10.5293 2.72949 12.9697 8.24023
c15.2598 34.4795 30.4502 68.9893 45.6299 103.5z" />
    <glyph glyph-name="replyd" unicode="&#xf3e6;" 
d="M320 -32h-192c-70.4004 0 -128 57.5996 -128 128v192c0 70.4004 57.5996 128 128 128h192c70.4004 0 128 -57.5996 128 -128v-192c0 -70.4004 -57.5996 -128 -128 -128zM193.4 174.8c-6.10059 2 -11.6006 3.10059 -16.4004 3.10059
c-7.2002 0 -13.5 -1.90039 -18.9004 -5.60059c-5.39941 -3.7002 -9.59961 -9 -12.7998 -15.7998h-1.09961l-4.2002 18.2998h-28v-138.899h36.0996v89.6992c1.5 5.40039 4.40039 9.80078 8.7002 13.2002c4.2998 3.40039 9.7998 5.10059 16.2002 5.10059
c4.59961 0 9.7998 -1 15.5996 -3.10059zM308.6 71.4004c-3.19922 -2.40039 -7.69922 -4.80078 -13.6992 -7.10059s-12.8008 -3.5 -20.4004 -3.5c-12.2002 0 -21.0996 3 -26.5 8.90039c-5.5 5.89941 -8.5 14.7002 -9 26.3994h83.2998
c0.900391 4.80078 1.60059 9.40039 2.10059 13.9004c0.5 4.40039 0.699219 8.59961 0.699219 12.5c0 10.7002 -1.59961 19.7002 -4.69922 26.9004c-3.2002 7.19922 -7.30078 13 -12.5 17.1992c-5.2002 4.30078 -11.1006 7.30078 -17.8008 9.2002
c-6.69922 1.7998 -13.5 2.7998 -20.5996 2.7998c-21.0996 0 -37.5 -6.09961 -49.2002 -18.2998s-17.5 -30.5 -17.5 -55c0 -22.7998 5.2002 -40.7002 15.6006 -53.7002c10.3994 -13.0996 26.7998 -19.5996 49.1992 -19.5996c10.7002 0 20.9004 1.5 30.4004 4.59961
c9.5 3.10059 17.0996 6.80078 22.5996 11.2002zM286.8 141.7c3.7998 -5.40039 5.2998 -13.1006 4.60059 -23.1006h-51.7002c0.899414 9.40039 3.7002 17 8.2002 22.6006c4.5 5.59961 11.5 8.5 21 8.5c8.19922 0.0996094 14.0996 -2.60059 17.8994 -8zM366.7 139.2
c4.09961 -3.90039 9.39941 -5.7998 16.0996 -5.7998c7 0 12.6006 1.89941 16.7002 5.7998c4.09961 3.89941 6.09961 9.09961 6.09961 15.5996s-2 11.6006 -6.09961 15.4004s-9.59961 5.7002 -16.7002 5.7002c-6.7002 0 -12 -1.90039 -16.0996 -5.7002
c-4.10059 -3.7998 -6.10059 -8.90039 -6.10059 -15.4004s2 -11.7002 6.10059 -15.5996zM366.7 38.7002c4.09961 -3.90039 9.39941 -5.7998 16.0996 -5.7998c7 0 12.6006 1.89941 16.7002 5.7998c4.09961 3.89941 6.09961 9.09961 6.09961 15.5996
s-2 11.6006 -6.09961 15.4004s-9.59961 5.7002 -16.7002 5.7002c-6.7002 0 -12 -1.90039 -16.0996 -5.7002c-4.10059 -3.7998 -6.10059 -8.90039 -6.10059 -15.4004c0 -6.59961 2 -11.7002 6.10059 -15.5996z" />
    <glyph glyph-name="resolving" unicode="&#xf3e7;" horiz-adv-x="496" 
d="M281.2 169.8l-197.9 -57.2002l-28.5996 98.6006l188.2 54.0996c52.6992 15.2998 65 8.10059 71.0996 -12.7998l11.2002 -39.2998c5.59961 -19.9004 2 -30.1006 -44 -43.4004zM248.5 440c137 0 248.5 -111.4 247.5 -247.7c0 -136.899 -111.5 -248.3 -248.5 -248.3
c-46 0 -89.5 12.7002 -126.3 34.7002l-23 80.2002l286.8 -37.3008l48.0996 13.3008l-9.69922 34.1992l-220.4 27.1006l92.5996 26.5996c30.2002 8.7002 42 15.7998 61.4004 33.2002c24.5 23 31.7002 45.5 23.5 73.5996l-10.7002 37.8008
c-8.7002 30.1992 -25.0996 49.0996 -61.3994 55.1992c-25.1006 3.5 -44.5 2 -79.3008 -8.19922l-221.899 -63.9004c26 108.8 124.2 189.5 241.3 189.5zM38.2998 59.4004c-24 38.3994 -38.2998 83.2998 -38.2998 131.8z" />
    <glyph glyph-name="rocketchat" unicode="&#xf3e8;" horiz-adv-x="576" 
d="M284.046 223.2c0.0341797 0 0.0664062 -0.00195312 0.100586 -0.00195312c18.8496 0 34.1592 -15.2754 34.2168 -34.1113c0 -18.8281 -15.2822 -34.1143 -34.1104 -34.1143s-34.1143 15.2861 -34.1143 34.1143c0 18.7588 15.1748 34.002 33.9072 34.1133zM173.596 223.2
c0.0332031 0 0.0673828 -0.00195312 0.100586 -0.00195312c18.8496 0 34.1592 -15.2754 34.2168 -34.1113c0 -18.8281 -15.2822 -34.1143 -34.1104 -34.1143s-34.1143 15.2861 -34.1143 34.1143c0 18.7588 15.1748 34.002 33.9072 34.1133zM394.519 223.2
c0.0351562 0 0.0683594 -0.00195312 0.102539 -0.00195312c18.8496 0 34.1592 -15.2754 34.2148 -34.1113c0 -18.8281 -15.2822 -34.1143 -34.1104 -34.1143s-34.1133 15.2861 -34.1133 34.1143c0 18.7588 15.1738 34.002 33.9062 34.1133zM548.326 278.519
c17.3076 -26.9443 26.0674 -55.9189 26.0898 -86.9395c0 -30.209 -8.76074 -59.2021 -26.0703 -86.125c-15.5342 -24.1934 -37.3076 -45.5703 -64.6787 -63.6191c-52.8672 -34.8164 -122.354 -53.9746 -195.667 -53.9746
c-0.150391 -0.000976562 0.0664062 -0.00585938 -0.0830078 -0.00585938c-24.5488 0 -48.5908 2.18359 -71.9443 6.36621c-14.8564 -14.2842 -31.3604 -26.5059 -49.5098 -36.5889c-66.7744 -33.3467 -125.6 -20.9092 -155.324 -10.2002
c-5.54492 1.96289 -9.51758 7.25488 -9.51758 13.4697c0 3.82715 1.50879 7.30469 3.96289 9.87109c20.9619 21.6748 55.6416 64.5342 47.1162 103.49c-33.1426 33.9004 -51.1123 74.7764 -51.1123 118.148c0 42.5605 17.9697 83.4365 51.1123 117.337
c8.52148 38.9521 -26.1582 81.7939 -47.1201 103.47c-2.45996 2.56738 -3.97656 6.0498 -3.97656 9.88281c0 6.21973 3.98047 11.5156 9.53125 13.4785c29.7246 10.71 88.5488 23.1211 155.302 -10.2109c18.1504 -10.0811 34.6553 -22.3027 49.5107 -36.5879
c23.3457 4.18066 47.0137 6.35742 71.5547 6.35742c0.15918 0 0.318359 -0.000976562 0.476562 -0.000976562c73.293 0 142.78 -19.1826 195.666 -54c27.3711 -18.0479 49.1465 -39.4453 64.6816 -63.6182zM284.987 38.0996c128.612 0 232.866 67.376 232.866 150.487
c0 83.0957 -104.274 150.469 -232.866 150.469c-128.593 0 -232.847 -67.3691 -232.847 -150.469c0 -36.2002 19.7861 -69.4375 52.7783 -95.4004c9.28809 -29.5986 3.84668 -62.958 -16.3252 -100.078c-0.960938 -1.79297 -1.8584 -3.58496 -2.8418 -5.35645
c18.6367 1.63574 36.5557 6.875 52.5225 14.8701c13.5889 7.65625 25.9609 16.8633 37.1377 27.585l20.1289 19.3926c28.2617 -7.47852 57.8037 -11.501 88.4033 -11.501c0.347656 0 0.695312 0 1.04297 0.000976562z" />
    <glyph glyph-name="rockrms" unicode="&#xf3e9;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM405.4 20.5l-101.5 118.9s73.5996 0.199219 74.1992 0.199219c29.6006 -1.09961 46.6006 33.3008 27.6006 56.1006l-157.7 185.1c-13.2002 17.2998 -40.0996 18.4004 -54.5 0
l-147.1 -172.5h90l84.2998 98.9004l84.5996 -99.2998h-75.2998c-30.5 0 -44.5 -35.7002 -26.5996 -56.1006l112 -131.3h90z" />
    <glyph glyph-name="schlix" unicode="&#xf3ea;" 
d="M350.5 290.3l-54.2002 46.1006l73.4004 39l78.2998 -44.2002zM192 325.9l45.7002 28.1992l34.7002 -34.5996l-55.4004 -29zM126.9 319.3l31.8994 22.1006l17.2002 -28.4004l-36.7002 -22.5zM103.6 231.1l-8.7998 34.8008l29.6006 18.2998l13.0996 -35.2998z
M82.4004 314.8l23.8994 18.1006l8.90039 -24l-26.7002 -18.3008zM59 241.5l-3.59961 28.4004l22.2998 15.5l6.09961 -28.7002zM28.4004 224.9l20.7998 12.7998l3.2998 -33.4004l-22.9004 -12zM1.40039 180l19.1992 10.2002l0.400391 -38.2002l-21 -8.7998zM60.5 120.7
l-28.2998 -8.2998l-1.60059 46.7998l25.1006 10.7002zM99 184.8l-31.0996 -13l-5.2002 40.7998l27.3994 14.4004zM123.2 71l-41.6006 -5.90039l-8.09961 63.5l35.2002 10.8008zM151.7 210.9l21.2002 -57.1006l-46.2002 -13.5996l-13.7002 54.0996zM237.4 -19.5996
l-70.9004 3.2998l-24.2998 95.7998l55.2002 8.59961zM152.5 260.1l42.2002 22.4004l28 -45.9004l-50.7998 -21.2998zM193.5 165.2l61.2998 18.7002l52.7998 -86.6006l-79.7998 -11.2998zM244.9 250.8l67.2998 28.7998l65.5 -65.3994l-88.6006 -26.2002z" />
    <glyph glyph-name="searchengin" unicode="&#xf3eb;" horiz-adv-x="460" 
d="M220.6 317.7l-67.1992 -209.3v130.3l-54.7002 -24.2002l54.7002 190.3v-115.3zM137.4 414.4l-1.30078 -4.7002l-15.1992 -52.9004c-40.3008 -15.5 -68.9004 -54.5996 -68.9004 -100.3c0 -52.2998 34.2998 -95.9004 83.4004 -105.5v-53.5996
c-77.9004 10.5 -135.4 78.1992 -135.4 159c0 80.5 59.7998 147.199 137.4 158zM448.8 -32.7998c-11.2002 -11.2002 -23.0996 -12.2998 -28.5996 -10.5c-5.40039 1.7998 -27.1006 19.8994 -60.4004 44.3994c-33.2998 24.6006 -33.5996 35.7002 -43 56.7002
c-9.39941 20.9004 -30.3994 42.6006 -57.5 52.4004l-9.7002 14.7002c-24.6992 -16.9004 -53 -26.9004 -81.2998 -28.7002l2.10059 6.59961l15.8994 49.5c46.5 11.9004 80.9004 54 80.9004 104.2c0 54.5 -38.4004 102.1 -96 107.1v52.1006
c83.2002 -5.10059 148.8 -74.5 148.8 -159.3c0 -33.6006 -11.2002 -64.7002 -29 -90.4004l14.5996 -9.59961c9.80078 -27.1006 31.5 -48 52.4004 -57.4004s32.2002 -9.7002 56.7998 -43c24.6006 -33.2002 42.7002 -54.9004 44.5 -60.2998
c1.7998 -5.40039 0.700195 -17.2998 -10.5 -28.5zM438.9 -14.9004c0 4.40039 -3.60059 8 -8 8c-4.40039 0 -8 -3.59961 -8 -8c0 -4.39941 3.59961 -8 8 -8c4.39941 0 8 3.60059 8 8z" />
    <glyph glyph-name="servicestack" unicode="&#xf3ec;" horiz-adv-x="496" 
d="M88 232c81.7002 -10.2002 273.7 -102.3 304 -232h-392c99.5 8.09961 184.5 137 88 232zM120 384c102.8 -15.5 335.3 -167.9 376 -384h-96c-26.2998 126.7 -150.7 216.7 -233.6 250.4c1.2998 49.6992 -14.1006 98 -46.4004 133.6z" />
    <glyph glyph-name="sistrix" unicode="&#xf3ee;" 
d="M448 -1l-30.5 -31l-146 148.1c-28.7002 -23.6992 -65.2002 -37.8994 -105 -37.8994c-91.7998 0 -166.5 75.7998 -166.5 168.899c0 93.1006 74.7002 168.9 166.6 168.801c91.8008 0 166.5 -75.8008 166.5 -168.9c0 -37 -11.8994 -71.2998 -31.8994 -99.2002zM166.5 117.2
c70.7002 0 128.1 58.2998 128.1 129.899c0 71.6006 -57.5 129.9 -128.1 129.9s-128.1 -58.2998 -128.1 -129.9c0 -71.5996 57.5 -129.899 128.1 -129.899z" />
    <glyph glyph-name="slack-hash" unicode="&#xf3ef;" 
d="M446.2 177.6c6.2002 -19 -3.90039 -39.6992 -22.9004 -45.6992l-45.3994 -15.1006l15.6992 -47c6.10059 -19.0996 -3.89941 -39.7002 -23 -45.8994c-21.2998 -6.10059 -40.0996 6 -46 22.8994l-15.6992 47l-93.6006 -31.2998l15.7002 -47
c6.09961 -19.0996 -3.90039 -39.7002 -23 -45.9004c-21.2998 -6.09961 -40.0996 6 -46 22.9004l-15.7002 47c-45.7002 -15.2002 -50.8994 -17.7998 -57.7002 -16.7998c-14.5 0.599609 -28.5996 10.0996 -33.5996 24.5996c-6.09961 19 4 39.7002 23 45.9004l45.4004 15.0996
l-30.3008 90c-45.6992 -15.2002 -50.8994 -17.7998 -57.6992 -16.7998c-14.5 0.599609 -28.6006 10.0996 -33.6006 24.5996c-6.09961 19.1006 3.90039 39.7002 23 45.9004l45.2998 15l-15.6992 47c-6.10059 19.0996 3.89941 39.7002 23 45.9004
c19.0996 6.19922 39.7998 -3.90039 46 -22.9004l15.6992 -47l93.4004 31.2002l-15.7002 47c-6.09961 19.0996 3.90039 39.7002 23 45.8994c19.1006 6.2002 39.7998 -3.89941 46 -22.8994l15.7002 -47l45.4004 15.0996c19.0996 6.2002 39.7998 -3.89941 46 -22.8994
c6.09961 -19.1006 -3.90039 -39.7002 -23 -45.9004l-45.4004 -15.0996l30.2998 -90l45.4004 15.0996c19.0996 6.2002 39.7998 -3.90039 46 -22.9004zM192.1 130.4l93.5 31.2998l-30.2998 90.2002l-93.5 -31.3008z" />
    <glyph glyph-name="speakap" unicode="&#xf3f3;" 
d="M64 56.2197c-79.4102 88.1904 -72 224.36 16.6396 304.141c88.6406 79.7793 224.801 73 304.21 -15.2402c79.4102 -88.2402 72 -224.36 -16.6396 -304.14c-18.7402 -16.8701 64 -43.0908 42 -52.2607c-82.0596 -34.21 -253.91 -35 -346.229 67.5h0.0195312z
M277.31 267.82l38.5 40.8594c-9.60938 8.89062 -32 26.8301 -76.1699 27.6006c-52.3301 0.910156 -95.8594 -28.2998 -96.7695 -80c-0.200195 -11.3301 0.290039 -36.7207 29.4199 -54.8301c34.46 -21.4199 86.5195 -21.5098 86 -52.2598
c-0.370117 -21.2803 -26.4199 -25.8105 -38.5898 -25.6006c-3 0.0498047 -30.2305 0.459961 -47.6104 24.6201l-40 -42.6104c28.1602 -27 59 -32.6191 83.4902 -33.0498c10.2295 -0.179688 96.4199 -0.330078 97.8398 81
c0.280273 15.8105 -2.07031 39.7197 -28.8604 56.5898c-34.3594 21.6406 -85 19.4502 -84.4297 49.75c0.410156 23.25 31 25.3701 37.5303 25.2607c0.429688 0 26.6201 -0.260742 39.6201 -17.3701z" />
    <glyph glyph-name="staylinked" unicode="&#xf3f5;" horiz-adv-x="440" 
d="M382.7 155.5l44.2998 -41.2998c3.7002 -3.5 3.2998 -9 -0.700195 -12.2002l-198 -163.9c-9.89941 -7.59961 -17.2998 -0.799805 -17.2998 -0.799805l-208.7 196.101c-3.5 3.5 -3 9 1.2002 12.1992l45.7998 34.9004c4.2002 3.2002 10.4004 3 13.9004 -0.5l151.899 -147.5
c3.7002 -3.5 10 -3.7002 14.2002 -0.400391l93.2002 74c4.09961 3.2002 4.5 8.7002 0.900391 12.2002l-84 81.2998c-3.60059 3.5 -9.90039 3.7002 -14 0.5l-0.100586 -0.0996094c-4.09961 -3.2002 -10.3994 -3 -14 0.5l-68.0996 64.2998
c-3.5 3.5 -3.10059 9 1.09961 12.2002l57.2998 43.5996c4.10059 3.2002 10.3008 3 13.8008 -0.5l170 -167.3zM437.2 238.9c3.7002 -3.5 3.39941 -9 -0.700195 -12.2002l-45.7998 -35.7998c-4.10059 -3.2002 -10.4004 -3 -14.1006 0.5l-160.399 159
c-3.60059 3.5 -9.7998 3.69922 -13.9004 0.5l-92.2002 -71.5c-4.19922 -3.30078 -4.69922 -8.7002 -1.09961 -12.2002l94.5996 -91.7998c3.7002 -3.5 10 -3.60059 14.2002 -0.400391l0.100586 0.0996094c4.19922 3.2002 10.5996 3 14.1992 -0.5l57.1006 -54.3994
c3.7002 -3.5 3.2998 -9 -0.900391 -12.2002l-7.7002 -6l0.300781 -0.299805l-50.2002 -38.7998c-4.2002 -3.30078 -10.6006 -3.10059 -14.2998 0.399414l-171.7 165.101l-42.2998 41.6992c-3.60059 3.5 -3 9 1.19922 12.2002l206.801 162.101
c8.2998 6.59961 14.7998 2.2998 16.2998 1.09961z" />
    <glyph glyph-name="steam-symbol" unicode="&#xf3f6;" 
d="M395.5 270.5c0 -33.7998 -27.5 -61 -61 -61c-33.7998 0 -61 27.2998 -61 61s27.2998 61 61 61c33.5 0 61 -27.2002 61 -61zM448 270.3c0 -63 -51 -113.8 -113.7 -113.8l-109.3 -79.7998c-4 -43 -40.5 -76.7998 -84.5 -76.7998c-40.5 0 -74.7002 28.7998 -83 67
l-57.5 23.0996v107.3l97.2002 -39.2998c15.0996 9.2002 32.2002 13.2998 52 11.5l71 101.7c0.5 62.2998 51.5 112.8 114 112.8c62.7998 0 113.8 -51 113.8 -113.7zM203 85c0 34.7002 -27.7998 62.5 -62.5 62.5c-4.5 0 -9 -0.5 -13.5 -1.5l26 -10.5
c25.5 -10.2002 38 -39 27.7002 -64.5c-10.2002 -25.5 -39.2002 -38 -64.7002 -27.5c-10.2002 4 -20.5 8.2998 -30.7002 12.2002c10.5 -19.7002 31.2002 -33.2002 55.2002 -33.2002c34.7002 0 62.5 27.7998 62.5 62.5zM410.5 270.3c0 42 -34.2998 76.2002 -76.2002 76.2002
c-42.2998 0 -76.5 -34.2002 -76.5 -76.2002c0 -42.2002 34.2998 -76.2002 76.5 -76.2002c41.9004 -0.0996094 76.2002 33.9004 76.2002 76.2002z" />
    <glyph glyph-name="sticker-mule" unicode="&#xf3f7;" horiz-adv-x="576" 
d="M561.7 248.4c-1.2998 -0.300781 0.299805 0 0 0zM555.5 325.8c20.2002 -50.0996 20.5996 -45.2002 20.5996 -52.8994c0 -7.5 -4.09961 -11 -7.19922 -16.5c-1.5 -3 -4.60059 -7.5 -7.2002 -8c-0.400391 0 -3 -0.5 -13.4004 -2.5c-7.2002 -1 -13.3994 4.5 -14.8994 9.5
c-1.60059 4.69922 2.7998 10.0996 -11.8008 22.8994c-10.2998 10 -21.0996 11.2998 -31.8994 17c-9.7998 5.7002 -11.9004 -1 -18 -8c-18 -22.8994 -34 -46.8994 -52 -69.7998c-11.7998 -15 -24.2002 -30.4004 -33.5 -47.4004
c-3.90039 -6.7998 -9.5 -28.0996 -10.2998 -29.8994c-6.2002 -17.7002 -5.5 -25.7998 -16.5 -68.2998c-3.10059 -10 -5.7002 -21.4004 -8.7002 -32.4004c-2.2002 -6.7998 -7.40039 -49.2998 -0.5 -59.4004c2.09961 -3.5 8.7002 -4.5 11.2998 -8
c0.0996094 -0.0996094 9.59961 -18.1992 9.2998 -20c0 -6.09961 -9.39941 -5.59961 -11.2998 -6.5c-4.7998 -2.89941 -3.7998 -5.89941 -6.40039 -7.39941c-5.89941 -2.90039 -32.0996 -3.2002 -36.5 0.5c-4.09961 3 -2.19922 11.8994 -1.5 15
c2.2002 15 -2.5 7.89941 -9.7998 11.5c-3.09961 1.5 -4.09961 5.5 -4.59961 10c-0.5 1.5 -1 2.5 -1.5 3.5c-1.7002 10.7002 6.7998 33.5996 8.2002 43.3994c4.89941 23.7002 -0.700195 37.2002 1.5 46.9004c3.69922 16.2002 4.09961 3.5 4.09961 29.9004
c-1.40039 25.8994 3.2998 36.8994 0.5 38.8994c-14.7998 0 -64.2998 -10.7002 -112.2 -2c-46.0996 8.90039 -59.3994 29 -65.3994 30.9004c-10.3008 4.5 -23.2002 -0.5 -27.3008 -7c-0.0996094 -0.100586 -35 -70.6006 -39.5996 -87.7998
c-6.2002 -20.5 -0.5 -47.4004 4.09961 -66.8008c0 -0.0996094 4.5 -14.5996 10.3008 -19.5c2.09961 -1.5 5.09961 -2.5 7.19922 -4.5c2.80078 -2.69922 9.40039 -15.1992 9.80078 -16c2.59961 -4.5 3.59961 -8 -1.5 -10.5c-3.60059 -2 -9.30078 -2.5 -14.4004 -2.5
c-2.59961 -0.5 -1.5 -3.5 -3.09961 -5c-2.90039 -2.7998 -20.7002 -6.09961 -29.9004 -2.5c-2.59961 1 -5.7002 3 -6.2002 5c-1.5 4 2.10059 9 -1 12.5c-4.5 2.90039 -13.0996 2 -17 12c-2.2002 5.40039 -2.59961 7.60059 -2.59961 49.4004
c0 9.7002 -5.90039 38.7002 -8.2002 46.9004c-1.5 5.5 -1.5 11.5 0 16c0.299805 0.899414 4.09961 4.59961 4.09961 13c-1 1.5 -4.59961 0.5 -5.09961 1.5c-10.4004 80.5996 -5.90039 79 -7.7002 98.2998c-1.5 16 -10.8994 43.8994 -6.7002 64.2998
c0.5 2.40039 3.40039 21 24.2002 38.9004c31 26.6992 48.4004 38.2998 159 11.5c1.10059 -0.400391 66.2998 -21.1006 110.7 9c15.5 11.2998 28.7998 11.2998 35.5 16c0.0996094 0.0996094 61.7002 52.0996 87 65.2998c47.2002 29.3994 69.9004 16.7002 75.0996 18
c4.7002 1 13.4004 25.7998 17 25.7998c5.5 0 1.60059 -20.2002 3.60059 -25.9004c0.5 -2 3.59961 -5 6.2002 -5c2.2998 0 1.69922 0.800781 10.2998 5c8.39941 5.40039 14.8994 17.6006 20.5996 17c11.7002 -1.59961 -19 -41.5996 -19 -46.8994
c0 -2 0.200195 -0.799805 4.60059 -9.5c2.59961 -5.5 4.59961 -13.5 6.19922 -20c8.30078 -29.7002 5.7002 -14.6006 13.4004 -36.9004z" />
    <glyph glyph-name="studiovinari" unicode="&#xf3f8;" horiz-adv-x="512" 
d="M480.3 260.3l4.2002 -28v-28l-25.0996 -44.0996l-39.8008 -78.4004l-56.0996 -67.5l-79.0996 -37.7998l-17.7002 -24.5l-7.7002 -12l-9.59961 -4s17.2998 63.5996 19.3994 63.5996c2.10059 0 20.2998 -0.699219 20.2998 -0.699219l66.7002 38.5996l-92.5 -26.0996
l-55.8994 -36.8008l-22.8008 -28l-6.59961 -1.39941l20.7998 73.5996l6.90039 5.5l20.7002 -12.8994l88.2998 45.1992l56.7998 51.5l14.7998 68.4004l-125.399 -23.2998l15.1992 18.2002l-173.399 53.2998l81.8994 10.5l-166 122.899l114.9 -18.0996l-101.3 108
l252.899 -126.6l-31.5 38l124.4 -74.4004l-143.3 99l18.7002 -38.4004l-49.6006 18.1006l-45.5 84.2998l194.601 -122l-42.9004 55.7998l108 -96.3994l12 8.89941l-21 16.4004l4.2002 37.7998l37.7998 10.4004l29.2002 -24.7002l11.5 -4.2002l-7 -6.2002l8.5 -12
l-13.1006 -7.39941l-10.2998 -20.2002z" />
    <glyph glyph-name="supple" unicode="&#xf3f9;" horiz-adv-x="640" 
d="M640 185.5c0 -64.0996 -109 -116.1 -243.5 -116.1c-24.7998 0 -48.5996 1.7998 -71.0996 5c7.69922 -0.400391 15.5 -0.600586 23.3994 -0.600586c134.5 0 243.5 56.9004 243.5 127.101c0 29.3994 -19.0996 56.3994 -51.2002 78
c60 -21.1006 98.9004 -55.1006 98.9004 -93.4004zM47.7002 220.1c0.0996094 -29.3994 19.2998 -56.5 51.5996 -78c-60.2002 21 -99.2002 55 -99.2998 93.3008c-0.0996094 64.0996 108.8 116.3 243.3 116.699c24.7002 0 48.5 -1.69922 71 -4.89941
c-7.7002 0.299805 -15.3994 0.5 -23.2998 0.5c-134.5 -0.299805 -243.4 -57.4004 -243.3 -127.601zM107.9 180.2l8.7998 10.8994s8.7998 -10.0996 20.7002 -10.0996c6.5 0 12.2998 3.5 12.2998 10.0996c0 14.5 -40.2002 13.3008 -40.2002 39.9004
c0 13.9004 12 24.0996 28.5 24.0996c10 0 25.4004 -4.69922 25.4004 -16.7998v-7.89941h-14.2002v3.89941c0 4 -5.60059 6.60059 -11.2998 6.60059c-7.2002 0 -12.5 -3.7002 -12.5 -9.10059c0 -14.5996 40.1992 -11.7002 40.1992 -39.7002
c0 -13.5996 -10.5 -25.0996 -28.3994 -25.0996c-18.7998 0 -29.2998 13.2002 -29.2998 13.2002zM228.7 253.8h15.7002v-55c0 -18.8994 -13.3008 -31.8994 -33.4004 -31.8994c-20.2998 0 -33.7002 13 -33.7002 31.8994v55h15.7998v-54.5
c0 -11.2002 7.10059 -17.7002 17.8008 -17.7002c10.6992 0 17.7998 6.5 17.7998 17.8008v54.3994zM263.1 168.4v72h-7.7998v13.3994h39.1006c16 0 27.1992 -11.2002 27.1992 -27.7998s-11.1992 -28.0996 -27.1992 -28.0996h-15.5v-29.5h-15.8008zM278.9 211.4h12.5996
c8.90039 0 14 5.7998 14 14.6992c0 8.7002 -5 14.4004 -13.7002 14.4004h-12.8994v-29.0996zM335.9 168.4v72h-7.80078v13.3994h39.1006c16 0 27.2002 -11.2002 27.2002 -27.7998s-11.2002 -28.0996 -27.2002 -28.0996h-15.5v-29.5h-15.7998zM351.6 211.4h12.6006
c9 0 14 5.7998 14 14.6992c0 8.7002 -5 14.4004 -13.7002 14.4004h-12.9004v-29.0996zM408.7 176.6h0.0996094v61.2002c0 1.60059 -0.899414 2.60059 -2.59961 2.60059h-5.2002v13.3994h15.4004c5.7998 0 8.19922 -2.5 8.19922 -8.2002v-61.1992
c0 -1.60059 0.900391 -2.60059 2.60059 -2.60059h18.5996c1.60059 0 2.60059 0.900391 2.60059 2.60059v5.19922h14.2998v-13c0 -5.7998 -2.40039 -8.19922 -8.2002 -8.19922h-37.5996c-5.80078 0 -8.2002 2.39941 -8.2002 8.19922zM472.1 176.6h-0.0996094v63.9004h-7.7998
v13.4004h51.5996c5.7002 0 8.2002 -2.5 8.2002 -8.2002v-13h-14.2002v5.2002c0 1.59961 -0.899414 2.59961 -2.59961 2.59961h-19.2002v-22.4004h27.7002v-13.3994h-27.7002v-20.2998c0 -1.60059 0.900391 -2.60059 2.59961 -2.60059h19.7002
c1.60059 0 2.60059 0.900391 2.60059 2.60059v5.19922h14.2998v-13c0 -5.7998 -2.5 -8.19922 -8.2002 -8.19922h-38.7002c-5.7998 0 -8.2002 2.39941 -8.2002 8.19922zM531 252.6h-2.7002v1.2002h7v-1.2002h-2.7002v-5.89941h-1.59961v5.89941zM536.7 253.8h2.39941
l2.10059 -5.09961l2.09961 5.09961h2.2998v-7.09961h-1.5v5.7002l-2.2998 -5.7002h-1.2998l-2.2998 5.7002v-5.7002h-1.5v7.09961z" />
    <glyph glyph-name="telegram-plane" unicode="&#xf3fe;" 
d="M446.7 349.4l-67.6006 -318.801c-5.09961 -22.5 -18.3994 -28.0996 -37.2998 -17.5l-103 75.9004l-49.7002 -47.7998c-5.5 -5.5 -10.0996 -10.1006 -20.6992 -10.1006l7.39941 104.9l190.9 172.5c8.2998 7.40039 -1.7998 11.5 -12.9004 4.09961l-236 -148.6
l-101.6 31.7998c-22.1006 6.90039 -22.5 22.1006 4.59961 32.7002l397.4 153.1c18.3994 6.90039 34.5 -4.09961 28.5 -32.1992z" />
    <glyph glyph-name="uber" unicode="&#xf402;" 
d="M414.1 416c18.7002 0 33.9004 -15.2002 33.8008 -33.9004v-380.199c0 -18.7002 -15.2002 -33.9004 -33.9004 -33.9004h-380.1c-18.7002 0 -33.9004 15.2002 -33.9004 34v380.1c0 18.7002 15.2002 33.9004 33.9004 33.9004h380.199zM237.6 56.9004
c74.6006 7.5 129 74.0996 121.5 148.6c-7 69.4004 -65.3994 122.2 -135.1 122.2s-128.1 -52.7998 -135.1 -122.2h94.3994v20.4004c0 3.7998 3.10059 6.7998 6.7998 6.7998h67.9004c3.7998 0 6.7998 -3.10059 6.7998 -6.7998v-67.9004
c0 -3.7998 -3.09961 -6.7998 -6.7998 -6.7998h-67.9004c-3.7998 0 -6.7998 3.09961 -6.7998 6.7998v20.4004h-94.3994c7.5 -74.6006 74.0996 -129 148.699 -121.5z" />
    <glyph glyph-name="uikit" unicode="&#xf403;" 
d="M443.9 320v-256l-225.9 -128l-218 128v214.3l87.5996 -45.0996v-117l133.5 -75.5l135.801 75.5v151l-101.101 57.5996l87.6006 53.1006zM308.6 398.9l-87.3994 -53l-86 47.2998l88.5996 54.7998z" />
    <glyph glyph-name="uniregistry" unicode="&#xf404;" horiz-adv-x="384" 
d="M192 -32c-39.5 0 -76.2002 11.7998 -106.7 32.2002h213.5c-30.5996 -20.4004 -67.2998 -32.2002 -106.8 -32.2002zM102.9 161.1c0 -2.5 0.0996094 -5 0.299805 -7.39941h-103.101c-0.0996094 2.39941 -0.0996094 4.89941 -0.0996094 7.39941v12.4004h102.9v-12.4004z
M123.4 104.1c8.89941 -10.5996 20.0996 -19.0996 33 -24.7998h-138.301c-3.7998 8 -7 16.2998 -9.59961 24.7998h114.9zM105.7 138.8c2 -7.89941 5.2002 -15.3994 9.2002 -22.2998h-109.7c-1.7002 7.2998 -3 14.7002 -3.90039 22.2998h104.4zM102.9 208.1v-17.2998h-102.9
v17.2998h102.9zM102.9 381.3v-4.89941h-102.9v4.89941h102.9zM102.9 416v-2.5h-102.9v2.5h102.9zM102.9 346.7v-7.40039h-102.9v7.40039h102.9zM102.9 242.7v-14.7998h-102.9v14.7998h102.9zM102.9 312v-9.90039h-102.9v9.90039h102.9zM102.9 277.4v-12.4004h-102.9v12.4004
h102.9zM269.1 116.5c4 6.90039 7.10059 14.4004 9.2002 22.2998h104.4c-0.799805 -7.59961 -2.10059 -15 -3.90039 -22.2998h-109.7zM281.1 302.2v9.7998h102.9v-9.7998h-102.9zM281.1 265v12.4004h102.9v-12.4004h-102.9zM281.1 339.3v7.40039h102.9v-7.40039h-102.9z
M281.1 416h102.9v-2.5h-102.9v2.5zM78.0996 5.09961c-11.7998 8.7002 -23.5996 18.7002 -33.1992 29.7002h293.1c-9.5 -11.0996 -20.4004 -21 -32.2002 -29.7002h-227.7zM281.1 376.4v4.89941h102.9v-4.89941h-102.9zM281.1 227.9v14.7998h102.9v-14.7998h-102.9z
M38.7998 42.2998c-6.59961 8.5 -10.5996 17.6006 -15.7998 27.2002h338.9c-5.2002 -9.59961 -11.1006 -18.7002 -17.8008 -27.2002h-305.3zM227.6 79.4004c12.8008 5.59961 24.1006 14.0996 32.9004 24.7998h115c-2.7002 -8.60059 -4.7998 -16.7998 -8.5 -24.7998h-139.4z
M281.1 161.1v12.4004h102.9v-12.4004c0 -2.5 -0.0996094 -4.89941 -0.200195 -7.39941h-103.1c0.299805 2.39941 0.399414 4.89941 0.399414 7.39941zM281.1 190.8v17.2998h102.9v-17.2998h-102.9z" />
    <glyph glyph-name="untappd" unicode="&#xf405;" horiz-adv-x="640" 
d="M401.3 398.1c-79.7998 -160.1 -84.5996 -152.5 -87.8994 -173.199l-5.2002 -32.8008c-1.90039 -12 -6.60059 -23.5 -13.7002 -33.3994l-148.9 -207.8c-7.59961 -10.6006 -20.3994 -16.2002 -33.3994 -14.6006c-40.2998 5 -77.7998 32.2002 -95.2998 68.5
c-5.7002 11.7998 -4.5 25.7998 3.09961 36.4004l148.9 207.899c7.09961 9.90039 16.3994 18 27.1992 23.7002l29.3008 15.5c18.5 9.7998 9.69922 11.9004 135.6 138.9c1 4.7998 1 7.2998 3.59961 8c3 0.700195 6.60059 1 6.30078 4.59961l-0.400391 4.60059
c-0.200195 1.89941 1.2998 3.59961 3.2002 3.59961c4.5 0.0996094 13.2002 -1.2002 25.5996 -10c12.2998 -8.90039 16.4004 -16.7998 17.7002 -21.0996c0.599609 -1.80078 -0.599609 -3.7002 -2.40039 -4.2002l-4.5 -1.10059
c-3.39941 -0.899414 -2.5 -4.39941 -2.2998 -7.39941c0.100586 -2.7998 -2.2998 -3.60059 -6.5 -6.10059zM230.1 411.6c-3.19922 0.800781 -8.19922 1.2002 -6.7998 5.40039c1.2998 4.2998 5.40039 12.2002 17.7002 21.0996c12.4004 8.90039 21.0996 10.1006 25.5996 10
c4.2002 -0.0996094 3.10059 -4.89941 2.80078 -8.19922c-0.300781 -3.60059 3.2998 -3.80078 6.2998 -4.60059c2.59961 -0.700195 2.59961 -3.2998 3.59961 -8c9.10059 -9.2002 17.6006 -17.8994 25.6006 -26.0996c1.2998 -1.40039 1.19922 -3.5 -0.100586 -4.90039
c-15.8994 -16.3994 -29.2998 -30.5996 -40.5 -42.5996c-1 -1 -2.59961 -0.799805 -3.2998 0.5c-6.90039 13.5 -14.2998 28.0996 -22.2002 44c-4.2998 2.5 -6.59961 3.2998 -6.39941 6c0.199219 3 1.09961 6.5 -2.30078 7.39941zM620 41.2998
c7.7002 -10.7002 8.7998 -24.7002 3.40039 -36.5996c-17.7002 -36.6006 -55.4004 -63.7002 -95.7002 -68.6006c-12.9004 -1.5 -25.5 4.10059 -33.1006 14.7002l-148.899 207.9c-7.10059 9.89941 -11.7998 21.3994 -13.7002 33.3994
c-1.59961 9.80078 -2 19.1006 -0.299805 29.8008c1.89941 12 2.7002 6 49 94.7998c0.700195 1.39941 2.59961 1.59961 3.59961 0.5c16.2998 -18 19.2998 -23 30.5 -28.9004c29.7998 -15.7002 43.2002 -20.5996 56.4004 -39.0996z" />
    <glyph glyph-name="ussunnah" unicode="&#xf407;" horiz-adv-x="512" 
d="M156.8 162.9l5.7002 -14.4004h-8.2002c-1.2998 3.2002 -3.09961 7.7002 -3.7998 9.5c-2.5 6.2998 -1.09961 8.40039 0 10c1.90039 2.7002 3.2002 4.40039 3.59961 5.2002c0 -2.2002 0.800781 -5.7002 2.7002 -10.2998zM454.1 144.1
c-2.09961 -13.7998 -5.69922 -27.0996 -10.5 -39.6992l43 -23.4004l-44.7998 18.7998c-5.2998 -13.2002 -12 -25.5996 -19.8994 -37.2002l34.1992 -30.1992l-36.7998 26.3994c-8.39941 -11.7998 -18 -22.5996 -28.7002 -32.2998l24.9004 -34.7002l-28.0996 31.7998
c-11 -9.59961 -23.1006 -18 -36.1006 -25.0996l15.7002 -37.2002l-19.2998 35.2998c-13.1006 -6.7998 -27 -12.0996 -41.6006 -15.8994l6.7002 -38.4004l-10.5 37.4004c-14.2998 -3.40039 -29.2002 -5.2998 -44.5 -5.40039l-1.7998 -38.2998l-1.90039 38.4004
c-15.2998 0.0996094 -30.1992 2 -44.5 5.2998l-10.5996 -37.2998l6.7002 38.1992c-14.6006 3.7002 -28.6006 9.10059 -41.7002 15.8008l-19.2002 -35.1006l15.6006 37c-13 7 -25.2002 15.4004 -36.2002 25.1006l-27.9004 -31.6006l24.7002 34.4004
c-10.7002 9.7002 -20.4004 20.5 -28.7998 32.2998l-36.5 -26.2002l33.8994 29.9004c-7.89941 11.5996 -14.5996 24.0996 -20 37.2998l-44.3994 -18.7002l42.5996 23.2002c-4.7998 12.7002 -8.39941 26.0996 -10.5 39.9004l-51 -9l50.2998 14.1992
c-1.09961 8.5 -1.69922 17.1006 -1.69922 25.9004c0 4.7002 0.199219 9.40039 0.5 14.0996l-55.4004 2.90039l56 2.7998c1.2998 13.1006 3.7998 25.7998 7.5 38.1006l-57.0996 16.0996l58.8994 -10.4004c4 12 9.10059 23.5 15.2002 34.4004l-55.0996 30l58.2998 -24.5996
c6.2998 10.5996 13.5 20.3994 21.5996 29.5996l-49.5 43.5996l53.9004 -38.6992c8.09961 8.59961 17 16.5 26.5996 23.5996l-40 55.5996l45.6006 -51.5996c9.5 6.59961 19.6992 12.2998 30.2998 17.2002l-27.2998 64.8994l33.7998 -62.0996
c10.5 4.40039 21.3994 7.90039 32.7002 10.4004l-12.4004 70.6992l19.5 -69.1992c11 2.09961 22.2998 3.19922 33.7998 3.39941l3.7002 72.2002l3.59961 -72.2002c11.5 -0.200195 22.8008 -1.39941 33.8008 -3.5l19.5996 69.2998l-12.4004 -70.6992
c11.3008 -2.60059 22.2002 -6.10059 32.6006 -10.5l33.8994 62.1992l-27.3994 -65.0996c10.5996 -4.90039 20.7002 -10.7002 30.2002 -17.2002l45.7998 51.7998l-40.1006 -55.8994c9.5 -7.10059 18.4004 -15 26.5 -23.6006l54.2002 38.9004l-49.7002 -43.9004
c8 -9.09961 15.2002 -18.8994 21.5 -29.3994l58.7002 24.7002l-55.5 -30.2002c6.10059 -10.9004 11.1006 -22.2998 15.1006 -34.2998l59.2998 10.3994l-57.5 -16.2002c3.7002 -12.1992 6.2002 -24.8994 7.5 -37.8994l56.2998 -2.7002l-56 -2.7998
c0.299805 -4.60059 0.5 -9.2998 0.5 -14.1006c0 -8.69922 -0.599609 -17.2998 -1.59961 -25.7998l50.6992 -14.2998zM432.3 175.1c0 97.5 -79 176.5 -176.5 176.5s-176.5 -79 -176.5 -176.5s79 -176.5 176.5 -176.5s176.5 79 176.5 176.5zM408.3 175.1
c0 -84.2998 -68.2998 -152.6 -152.6 -152.6s-152.601 68.2998 -152.601 152.6c0 84.3008 68.3008 152.601 152.601 152.601s152.6 -68.2998 152.6 -152.601zM195 207c0 -2.09961 1.2998 -3.7998 3.59961 -5.09961c3.30078 -1.90039 6.2002 -4.60059 8.2002 -8.2002
c2.7998 5.7002 4.2998 9.5 4.2998 11.2002c0 2.19922 -1.09961 4.39941 -3.19922 7c-2.10059 2.5 -3.2002 5.19922 -3.30078 7.69922c-6.5 -6.7998 -9.59961 -10.8994 -9.59961 -12.5996zM154.3 226c0 -2.09961 1.2998 -3.7998 3.60059 -5.09961
c3.5 -1.90039 6.19922 -4.60059 8.19922 -8.2002c2.80078 5.7002 4.30078 9.5 4.30078 11.2002c0 2.19922 -1.10059 4.39941 -3.2002 7c-2.10059 2.5 -3.2002 5.19922 -3.2998 7.69922c-6.5 -6.7998 -9.60059 -10.8994 -9.60059 -12.5996zM135.3 226
c0 -2.09961 1.2998 -3.7998 3.60059 -5.09961c3.2998 -1.90039 6.19922 -4.60059 8.19922 -8.2002c2.80078 5.7002 4.30078 9.5 4.30078 11.2002c0 2.19922 -1.10059 4.39941 -3.2002 7c-2.10059 2.5 -3.2002 5.19922 -3.2998 7.69922
c-6.40039 -6.7998 -9.60059 -10.8994 -9.60059 -12.5996zM340.2 138.1c-8.40039 3 -8.7002 6.80078 -8.7002 15.6006v112.3c-8.2002 -12.5 -14.2002 -18.5996 -18 -18.5996c6.2998 -14.4004 9.5 -23.9004 9.5 -28.3008v-64.2998c0 -2.2002 -2.2002 -6.5 -4.7002 -6.5h-18
c-2.7998 7.5 -10.2002 26.9004 -15.2998 40.2998c-2 -2.5 -7.2002 -9.19922 -10.7002 -13.6992c2.40039 -1.60059 4.10059 -3.60059 5.2002 -6.30078c2.59961 -6.69922 6.40039 -16.5 7.90039 -20.1992h-9.2002c-3.90039 10.3994 -9.60059 25.3994 -11.7998 31.0996
c-2 -2.5 -7.2002 -9.2002 -10.7002 -13.7002c2.39941 -1.59961 4.09961 -3.59961 5.2002 -6.2998c0.799805 -2 2.7998 -7.2998 4.2998 -10.9004h-9.2002c-1.5 4.10059 -5.59961 14.6006 -8.40039 22c-2 -2.5 -7.19922 -9.19922 -10.6992 -13.6992
c2.5 -1.60059 4.2998 -3.60059 5.19922 -6.30078c0.200195 -0.599609 0.5 -1.39941 0.600586 -1.69922h-17.7002c-4.59961 13.8994 -11.4004 27.6992 -11.4004 34.0996c0 2.2002 0.300781 5.09961 1.10059 8.2002c-8.7998 -10.7998 -14 -15.9004 -14 -25
c0 -7.5 10.3994 -28.2998 10.3994 -33.2998c0 -1.7002 -0.5 -3.30078 -1.39941 -4.90039c-9.60059 12.7002 -15.5 20.7002 -18.7998 20.7002h-12l-11.2002 28c-3.7998 9.59961 -5.7002 16 -5.7002 18.7998c0 3.7998 0.5 7.7002 1.7002 12.2002
c-1 -1.2998 -3.7002 -4.7002 -5.5 -7.10059c-0.799805 2.10059 -3.10059 7.7002 -4.60059 11.5c-2.09961 -2.5 -7.5 -9.09961 -11.1992 -13.5996c0.899414 -2.2998 3.2998 -8.09961 4.89941 -12.2002c-2.5 -3.2998 -9.09961 -11.7998 -13.5996 -17.7002
c-4 -5.2998 -5.7998 -13.2998 -2.7002 -21.7998c2.5 -6.7002 2 -7.89941 -1.7002 -14.0996h61.7002c5.5 0 14.2998 -14 15.5 -22c13.2002 16 15.4004 19.5996 16.7998 21.5996h107c3.90039 0 7.2002 1.90039 9.90039 5.7998zM360.3 164.7v101.6
c-9 -12.5 -15.8994 -18.5996 -20.7002 -18.5996c7.10059 -14.4004 10.7002 -23.9004 10.7002 -28.2998v-66.3008c0 -17.5 8.60059 -20.3994 24 -20.3994c8.10059 0 12.5 0.799805 13.7002 2.7002c-4.2998 1.59961 -7.59961 2.5 -9.90039 3.2998
c-8.09961 3.2002 -17.7998 7.39941 -17.7998 26z" />
    <glyph glyph-name="vaadin" unicode="&#xf408;" 
d="M224.5 307.3c1.5 17.6006 4.90039 52.7002 49.7998 52.7002h98.6006c20.6992 0 32.0996 7.7998 32.0996 21.5996v12.3008c0 12.1992 9.2998 22.0996 21.5 22.0996s21.5 -9.90039 21.5 -22.0996v-36.5c0 -42.9004 -21.5 -62 -66.7998 -62h-100.5
c-30.1006 0 -33 -14.7002 -33 -27.1006c0 -1.2998 -0.100586 -2.5 -0.200195 -3.7002c-0.700195 -12.2998 -10.9004 -22.1992 -23.4004 -22.1992s-22.6992 9.7998 -23.3994 22.1992c-0.100586 1.2002 -0.200195 2.40039 -0.200195 3.7002c0 12.2998 -3 27.1006 -33 27.1006
h-100.7c-45.2998 0 -66.7998 19.0996 -66.7998 62v36.5c0 12.1992 9.40039 22.0996 21.5996 22.0996c12.2002 0 21.5 -9.90039 21.5 -22.0996v-12.3008c0 -13.7998 11.4004 -21.5996 32.1006 -21.5996h98.5996c44.7998 0 48.2998 -35.0996 49.7998 -52.7002h0.900391z
M224 -8c-11.5 0 -21.4004 7 -25.7002 16.2998c-1.09961 1.7998 -97.0996 169.5 -98.2002 171.4c-11.8994 19.7002 3.2002 44.2998 27.2002 44.2998c13.9004 0 23.4004 -6.40039 29.7998 -20.2998l66.9004 -117.7l66.9004 117.7c6.5 13.8994 15.8994 20.2998 29.7998 20.2998
c24 0 39.0996 -24.7002 27.2002 -44.2998c-1.10059 -1.7998 -97.1006 -169.601 -98.2002 -171.4c-4.2998 -9.2998 -14.2002 -16.2998 -25.7002 -16.2998z" />
    <glyph glyph-name="viber" unicode="&#xf409;" horiz-adv-x="512" 
d="M444 398.1c42.2002 -36.6992 65.5996 -117.899 49.7998 -246.5c-15.2002 -124.6 -109.1 -136.6 -125.7 -142c-7.19922 -2.2998 -70.2998 -18.0996 -152.5 -11.1992c-9.09961 -10.5 -21.0996 -24.3008 -29.7998 -33.7002
c-15.8994 -17.1006 -25.7002 -33 -42.2998 -27.7998c-13.7998 4.19922 -13 25.0996 -13 25.0996l0.0996094 51.5996h-0.0996094c-120.1 33.8008 -118.4 158.4 -117 224.9s14.2998 120.2 50.9004 156.8c65.7998 60.4004 200.899 52.2998 200.899 52.2998
c114.601 -0.5 166 -37.7998 178.7 -49.5zM457.9 161c13.2998 107.3 -4.90039 180.5 -40.6006 211.1c-10.7998 9.80078 -57.2002 39 -154.1 39.4004c0 0 -114.7 7.5 -170.4 -43c-31 -30.5996 -41.5 -76.0996 -42.5996 -131.6
c-1.10059 -55.5 -7.10059 -161.601 94.7002 -189.801c-0.100586 0 -0.100586 0 0 0c0 0 -0.400391 -78.7998 -0.400391 -85.6992c-0.0996094 -10.5 5.7002 -11 11 -5.7002c16.2002 16.2998 68.2002 79 68.2002 79c69.7002 -4.5 125.2 9.2998 131.2 11.2002
c14 4.5 90.0996 11.0996 103 115.1zM318.9 241.8c0.399414 -8.59961 -12.5 -9.2002 -12.9004 -0.599609c-1.09961 22 -11.4004 32.7002 -32.5996 33.8994c-8.60059 0.5 -7.80078 13.4004 0.699219 12.9004c27.9004 -1.5 43.4004 -17.5 44.8008 -46.2002zM339.2 230.5
c1 42.4004 -25.5 75.5996 -75.7998 79.2998c-8.5 0.600586 -7.60059 13.5 0.899414 12.9004c58 -4.2002 88.9004 -44.1006 87.7998 -92.5c-0.0996094 -8.60059 -13.0996 -8.2002 -12.8994 0.299805zM386.2 217.1c0.0996094 -8.59961 -12.9004 -8.69922 -12.9004 -0.0996094
c-0.599609 81.5 -54.8994 125.9 -120.8 126.4c-8.5 0.0996094 -8.5 12.8994 0 12.8994c73.7002 -0.5 133 -51.3994 133.7 -139.2zM374.9 119v-0.200195c-10.8008 -19 -31 -40 -51.8008 -33.2998l-0.199219 0.299805c-21.1006 5.90039 -70.8008 31.5 -102.2 56.5
c-16.2002 12.7998 -31 27.9004 -42.4004 42.4004c-10.2998 12.8994 -20.7002 28.2002 -30.7998 46.5996c-21.2998 38.5 -26 55.7002 -26 55.7002c-6.7002 20.7998 14.2002 41 33.2998 51.7998h0.200195c9.2002 4.7998 18 3.2002 23.9004 -3.89941
c0 0 12.3994 -14.8008 17.6992 -22.1006c5 -6.7998 11.7002 -17.7002 15.2002 -23.7998c6.10059 -10.9004 2.2998 -22 -3.7002 -26.5996l-12 -9.60059c-6.09961 -4.89941 -5.2998 -14 -5.2998 -14s17.7998 -67.2998 84.2998 -84.2998c0 0 9.10059 -0.799805 14 5.2998
l9.60059 12c4.59961 6 15.7002 9.7998 26.5996 3.7002c14.7002 -8.2998 33.4004 -21.2002 45.7998 -32.9004c7 -5.69922 8.60059 -14.3994 3.80078 -23.5996z" />
    <glyph glyph-name="vimeo" unicode="&#xf40a;" 
d="M403.2 416c24.7002 0 44.7998 -20.0996 44.7998 -44.7998v-358.4c0 -24.7002 -20.0996 -44.7998 -44.7998 -44.7998h-358.4c-24.7002 0 -44.7998 20.0996 -44.7998 44.7998v358.4c0 24.7002 20.0996 44.7998 44.7998 44.7998h358.4zM377 267.2
c1.90039 42.2002 -13.7998 63.7998 -47.0996 64.7002c-44.9004 1.39941 -75.3008 -23.9004 -91.2002 -76c19.8994 8.5 49.2998 10.7998 45.7998 -22.4004c-1 -11.2002 -8.2998 -27.5 -21.7998 -48.9004c-37.7002 -59.3994 -46.9004 -39.5996 -67.6006 91.6006
c-5.7998 36.8994 -21.2998 54.0996 -46.5 51.7002c-22.2998 -2 -57.8994 -38.4004 -95.1992 -71.2002l15.1992 -19.6006c14.5 10.1006 23 15.2002 25.4004 15.2002c21 0 31.9004 -54.7002 57.4004 -148c13.0996 -34.8994 29 -52.2998 47.8994 -52.2998
c30.4004 0 67.7002 28.5996 111.7 85.7998c42.5996 54.7002 64.5996 97.9004 66 129.4z" />
    <glyph glyph-name="vnv" unicode="&#xf40b;" horiz-adv-x="640" 
d="M104.9 96c-34.1006 0 -46.4004 30.4004 -46.4004 30.4004l-55.9004 111.5s-10.3994 18.0996 10.4004 18.0996h32.7998c10.4004 0 13.2002 -8.7002 18.7998 -18.0996l36.7002 -74.5s5.2002 -13.1006 21.1006 -13.1006c15.8994 0 21.0996 13.1006 21.0996 13.1006
l36.7002 74.5c5.59961 9.5 8.39941 18.0996 18.7998 18.0996h32.7998c20.7998 0 10.4004 -18.0996 10.4004 -18.0996l-55.7998 -111.5s-12.2002 -30.4004 -46.4004 -30.4004h-35.0996zM499.9 96c-34.1006 0 -46.4004 30.4004 -46.4004 30.4004l-55.9004 111.5
s-10.3994 18.0996 10.4004 18.0996h32.7998c10.4004 0 13.2002 -8.7002 18.7998 -18.0996l36.7002 -74.5s5.2002 -13.1006 21.1006 -13.1006c15.8994 0 21.0996 13.1006 21.0996 13.1006l36.7998 74.5c5.60059 9.5 8.40039 18.0996 18.7998 18.0996h32.9004
c20.7998 0 10.4004 -18.0996 10.4004 -18.0996l-55.9004 -111.5s-12.2002 -30.4004 -46.4004 -30.4004h-35.1992zM337.6 256c34.1006 0 46.4004 -30.4004 46.4004 -30.4004l55.9004 -111.5s10.3994 -18.0996 -10.4004 -18.0996h-32.7998
c-10.4004 0 -13.2002 8.7002 -18.7998 18.0996l-36.7002 74.5s-5.2002 13.1006 -21.1006 13.1006c-15.8994 0 -21.0996 -13.1006 -21.0996 -13.1006l-36.7002 -74.5c-5.59961 -9.39941 -8.39941 -18.0996 -18.7998 -18.0996h-32.9004
c-20.7998 0 -10.3994 18.0996 -10.3994 18.0996l55.8994 111.5s12.2002 30.4004 46.4004 30.4004h35.0996z" />
    <glyph glyph-name="whatsapp-square" unicode="&#xf40c;" 
d="M224 325.2c35.2002 0 68.2002 -13.7002 93.2002 -38.7002c24.8994 -24.9004 40.0996 -58 40.0996 -93.2002c0 -72.7002 -60.7002 -131.8 -133.3 -131.8h-0.0996094c-23.7002 0 -46.9004 6.40039 -67.1006 18.4004l-4.7998 2.89941l-49.9004 -13.0996l13.3008 48.5996
l-3.10059 5c-13.2002 20.9004 -20.2002 45.2002 -20.2002 70.1006c0.100586 72.6992 59.2002 131.8 131.9 131.8zM301.5 136.8c3.2998 9.2002 3.2998 17.2002 2.40039 19.1006c-1 1.59961 -3.60059 2.59961 -7.60059 4.59961s-23.5 11.5996 -27.0996 12.9004
c-3.60059 1.2998 -6.2998 2 -8.90039 -2c-2.59961 -3.90039 -10.2002 -12.9004 -12.5 -15.5c-2.2998 -2.7002 -4.59961 -3 -8.59961 -1c-23.2998 11.6992 -38.6006 20.7998 -53.9004 47.0996c-4.09961 7 4 6.40039 11.6006 21.5996
c1.39941 2.60059 0.699219 4.90039 -0.300781 6.90039s-8.89941 21.5 -12.1992 29.4004c-3.2002 7.69922 -6.5 6.69922 -8.90039 6.7998c-2.2998 0.0996094 -5 0.0996094 -7.59961 0.0996094c-2.7002 0 -7 -1 -10.6006 -5c-3.7002 -4 -13.8994 -13.5996 -13.8994 -33.0996
s14.1992 -38.4004 16.1992 -41c2 -2.60059 28 -42.6006 67.7002 -59.7998c25.1006 -10.8008 34.9004 -11.8008 47.5 -9.90039c7.60059 1.09961 23.4004 9.5 26.7002 18.7998zM400 416c26.5 0 48 -21.5 48 -48v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48
v352c0 26.5 21.5 48 48 48h352zM223.9 34.7998c87.3994 0 160.1 71.1006 160.1 158.5c0 42.4004 -18 82.2002 -47.9004 112.2c-30 30 -69.7998 46.5 -112.199 46.5c-87.4004 0 -158.5 -71.0996 -158.601 -158.5c0 -28 7.2998 -55.2998 21.2002 -79.2998l-22.5 -82.2002
l84.0996 22.0996c23.1006 -12.5996 49.2002 -19.2998 75.8008 -19.2998z" />
    <glyph glyph-name="whmcs" unicode="&#xf40d;" 
d="M448 287l-29.0996 -7l-2.2002 -12.0996l20.8994 -18.8008l-10.2998 -20.0996l-28.7998 8.7998l-7.7998 -8.09961l8.7998 -28l-20.4004 -12.1006l-20.6992 21.6006l-11.6006 -3.5l-6.7002 -28.7998l-22.5996 0.299805l-6.7002 28.5l-11.5996 2.89941l-19.4004 -20.3994
l-19.8994 11.5996l8.09961 26.9004l-7.2002 8.59961l-29.5996 -7.5l-10.4004 18.5l20.1006 19.9004l-2.40039 12.0996l-28.7998 7.5l0.299805 21.7002l28.5 7.7998l2.90039 10.4004l-20.7002 21l11 19.0996l28.5 -7.5l8.09961 8.40039l-8.09961 27.7002l19.3994 11
l19.7002 -21l12.1006 3.19922l6.19922 26.4004h22.6006l7 -26.4004l10.7002 -3.19922l21.2998 21l19.0996 -11.6006l-7.5 -28.2002l7.2002 -7.5l29 7.5l10.4004 -19.3994l-20.1006 -20.7002l2.2002 -10.4004l28.5 -8.7998v-21.2998zM328.8 241.8
c31.4004 0 56.7998 25.2998 56.7998 56.7998c0 31.4004 -25.3994 56.8008 -56.7998 56.8008c-31.3994 0 -56.7998 -25.4004 -56.7998 -56.8008c0 -31.3994 25.5 -56.7998 56.7998 -56.7998zM401.1 225.4l46.9004 -14.5v-39.9004l-55.0996 -13.4004l-4.10059 -22.6992
l38.9004 -35.3008l-19.2002 -37.8994l-54 16.7002l-14.5996 -15.2002l16.6992 -52.5l-38.2998 -22.7002l-38.8994 40.5l-21.7002 -6.59961l-12.6006 -54l-42.3994 0.5l-12.6006 53.5996l-21.6992 5.59961l-36.4004 -38.3994l-37.4004 21.7002l15.2002 50.5l-13.7002 16.0996
l-55.5 -14.0996l-19.6992 34.7998l37.8994 37.3994l-4.7998 22.8008l-54 14.0996l0.5 40.9004l53.5 14.6992l5.7002 19.7002l-38.9004 39.4004l20.7002 35.7998l53.5996 -14.0996l15.2002 15.6992l-15.2002 52l36.4004 20.7002l36.7998 -39.3994l22.7002 6.09961l11.5996 52
h42.4004l11.5996 -45.9004l-22.5996 5.90039l-6.2998 1.7002l-3.2998 -5.7002l-11 -19.0996l-3.30078 -5.60059l4.60059 -4.59961l17.2002 -17.4004l-0.300781 -1l-23.7998 -6.5l-6.2002 -1.7002l-0.0996094 -6.39941l-0.200195 -12.9004
c-47.5 -10.3994 -83.2998 -52.7998 -83.2998 -103.5c0 -58.2998 47.2998 -105.7 105.7 -105.7c50.5 0 92.7002 35.4004 103.2 82.8008l13.1992 -0.200195l6.90039 -0.100586l1.59961 6.7002l5.60059 24l1.89941 0.600586l17.1006 -17.8008l4.7002 -4.89941l5.7998 3.39941
l20.3994 12.1006l5.80078 3.5l-2 6.5z" />
    <glyph glyph-name="wordpress-simple" unicode="&#xf411;" horiz-adv-x="512" 
d="M256 440c136.7 0 248 -111.2 248 -248c0 -136.7 -111.3 -248 -248 -248s-248 111.3 -248 248c0 136.8 111.3 248 248 248zM33 192c0 -88.2002 51.2998 -164.5 125.7 -200.7l-106.4 291.4c-12.3994 -27.7002 -19.2998 -58.4004 -19.2998 -90.7002zM256 -31
c26 0 50.9004 4.5 74 12.5996c-0.599609 1 -1.09961 2 -1.59961 3.10059l-68.5 187.8l-66.9004 -194.4c20 -5.89941 41.0996 -9.09961 63 -9.09961zM286.7 296.5l80.7002 -239.6l22.1992 74.2998c9.7002 30.8994 17 53 17 72.0996c0 27.6006 -9.89941 46.7002 -18.3994 61.5
c-11.2998 18.4004 -21.9004 33.9004 -21.9004 52.2998c0 20.5 15.5 39.6006 37.4004 39.6006c1 0 1.89941 -0.100586 2.89941 -0.200195c-39.6992 36.2998 -92.5996 58.5 -150.6 58.5c-77.9004 0 -146.4 -40 -186.3 -100.5
c5.2998 -0.200195 10.2002 -0.299805 14.3994 -0.299805c23.3008 0 59.4004 2.7998 59.4004 2.7998c12 0.700195 13.4004 -17 1.40039 -18.4004c0 0 -12.1006 -1.39941 -25.5 -2.09961l81.1992 -241.5l48.8008 146.3l-34.7002 95.2002
c-12 0.700195 -23.4004 2.09961 -23.4004 2.09961c-12 0.700195 -10.5996 19.1006 1.40039 18.4004c0 0 36.7998 -2.7998 58.7002 -2.7998c23.2998 0 59.3994 2.7998 59.3994 2.7998c12 0.700195 13.4004 -17 1.40039 -18.4004c0 0 -12.1006 -1.39941 -25.5 -2.09961z
M368.1 -0.700195c66.3008 38.6006 110.9 110.4 110.9 192.7c0 38.7998 -9.90039 75.2002 -27.2998 107c1 -7.09961 1.5 -14.7002 1.5 -22.9004c0 -22.6992 -4.2998 -48.0996 -17 -79.8994z" />
    <glyph glyph-name="xbox" unicode="&#xf412;" horiz-adv-x="512" 
d="M369.9 129.8c44.2998 -54.2998 64.6992 -98.7998 54.3994 -118.7c-7.89941 -15.0996 -56.7002 -44.5996 -92.5996 -55.8994c-29.6006 -9.2998 -68.4004 -13.2998 -100.4 -10.2002c-38.2002 3.7002 -76.8994 17.4004 -110.1 39
c-27.9004 18.2002 -34.2002 25.7002 -34.2002 40.5996c0 29.9004 32.9004 82.3008 89.2002 142.101c32 33.8994 76.5 73.7002 81.3994 72.5996c9.40039 -2.09961 84.3008 -75.0996 112.301 -109.5zM188.6 304.2c-66.3994 -81.5 -106 -155.4 -120.3 -194.4
c-9.7998 -26.5 -13.7002 -53 -9.5 -64c2.7998 -7.39941 0.200195 -4.7002 -9.2998 9.90039c-23.2002 35.5 -34.9004 70.3994 -40.5 120.899c-1.90039 16.7002 -1.2002 26.3008 4.2002 60.5c6.7998 42.7002 31.0996 92 60.2998 122.4
c12.4004 12.9004 13.5 13.2002 28.7002 8.09961c28.2998 -9.5 56.7002 -36.5 86.3994 -63.3994zM500.2 240.7c4.7002 -22.6006 5.09961 -70.9004 0.799805 -93.4004c-3.59961 -18.5 -11.2002 -42.5 -18.5996 -58.7002c-5.5 -12.1992 -19.3008 -35.7998 -25.4004 -43.5
c-3.09961 -3.89941 -3.09961 -3.89941 -1.40039 4.60059c2.30078 11.2002 -0.599609 31.5996 -7.39941 52.2998c-20.7002 62.9004 -80.5 149 -122.9 202.3c23.2998 21.4004 41 38.2998 64.2998 52.7998c11.8008 7.40039 28.7002 13.9004 36 13.9004
c7.10059 0 57.7002 -50.2998 74.6006 -130.3zM141.3 405c-14.5996 -0.700195 -14 0.0996094 9.40039 11.2002c81.2002 38.2998 170 27.5996 233.899 -11.7002c-13.3994 0.599609 -43.5 5.90039 -107.399 -25.2002c-11.2002 -5.5 -20.9004 -9.7998 -21.6006 -9.7002
c-4.59961 0.900391 -66.5996 37.9004 -114.3 35.4004z" />
    <glyph glyph-name="yandex" unicode="&#xf413;" horiz-adv-x="256" 
d="M153.1 132.2l-87.3994 -196.2h-63.7002l96 209.8c-45.0996 22.9004 -75.2002 64.4004 -75.2002 141.101c-0.0996094 107.399 68 161.1 148.9 161.1h82.2998v-512h-55.0996v196.2h-45.8008zM198.9 401.5h-29.4004c-44.4004 0 -87.4004 -29.4004 -87.4004 -114.6
c0 -82.3008 39.4004 -108.801 87.4004 -108.801h29.4004v223.4z" />
    <glyph glyph-name="yandex-international" unicode="&#xf414;" horiz-adv-x="320" 
d="M129.5 -64v166.1l-111 297.9h55.7998l81.7998 -229.7l94.1006 277.7h51.2998l-120.7 -347.8v-164.2h-51.2998z" />
    <glyph glyph-name="apple-pay" unicode="&#xf415;" horiz-adv-x="640" 
d="M116.9 289.5c-7.5 -8.90039 -19.5 -15.9004 -31.5 -14.9004c-1.5 12 4.39941 24.8008 11.2998 32.6006c7.5 9.09961 20.5996 15.5996 31.2998 16.0996c1.2002 -12.3994 -3.7002 -24.7002 -11.0996 -33.7998zM127.8 272.3c6.7998 -0.5 26.2998 -2.5 38.7998 -21.0996
c-1 -0.799805 -23.1992 -13.5 -22.8994 -40.2998c0.299805 -32 28 -42.6006 28.2998 -42.9004c-0.200195 -0.799805 -4.40039 -15.0996 -14.5 -29.9004c-8.90039 -13 -18 -25.6992 -32.5 -26c-14 -0.199219 -18.7002 8.40039 -34.7998 8.40039
c-16 0 -21.2002 -8.09961 -34.5 -8.59961c-14 -0.5 -24.6006 13.7998 -33.5 26.7998c-18.2002 26.2998 -32.1006 74 -13.2998 106.3c9.09961 16.0996 25.6992 26.2002 43.5996 26.5c13.7998 0.299805 26.4004 -9.09961 34.7998 -9.09961
c8.2002 0 23.1006 10.8994 40.5 9.89941zM228.2 308.5h73.2002c37.6992 0 64.0996 -26 64.0996 -64s-26.7998 -64.2998 -65.0996 -64.2998h-41.9004v-66.6006h-30.2998v194.9zM258.5 283v-77.4004h34.7998c26.4004 0 41.4004 14.2002 41.4004 38.8008
c0 24.5996 -15 38.5996 -41.2998 38.5996h-34.9004zM420.7 112.1c-28.1006 0 -47.7002 16.8008 -47.7998 42c0 25 19 39.4004 54.0996 41.5l37.7998 2.30078v10.7998c0 15.8994 -10.3994 24.5 -28.8994 24.5c-15.2002 0 -26.3008 -7.90039 -28.6006 -19.9004h-27.2998
c0.900391 25.2002 24.7002 43.6006 56.7998 43.6006c34.6006 0 57.1006 -18.2002 57.1006 -46.3008v-97h-28v23.4004h-0.600586c-8 -15.2998 -25.5996 -24.9004 -44.5996 -24.9004zM428.9 135.2c20.5 0 36 13 36 31.2002v11l-33.6006 -2.10059
c-18.8994 -1.09961 -28.7998 -8.2002 -28.7998 -20.5c0 -11.7998 10.2998 -19.5996 26.4004 -19.5996zM531.4 60.5996c-2.30078 0 -9.80078 0.300781 -11.6006 0.700195v23.4004c1.90039 -0.200195 6.5 -0.5 8.90039 -0.5c13.3994 0 20.8994 5.7002 25.5 20.2998
l2.7998 8.59961l-51.2002 141.9h31.6006l35.5996 -115.1h0.599609l35.6006 115.1h30.7998l-53.0996 -149c-12.1006 -34.0996 -26 -45.4004 -55.5 -45.4004z" />
    <glyph glyph-name="cc-apple-pay" unicode="&#xf416;" horiz-adv-x="576" 
d="M302.2 229.6c0 -17.1992 -10.5 -27.0996 -29 -27.0996h-24.2998v54.2002h24.3994c18.4004 0 28.9004 -9.7998 28.9004 -27.1006zM349.7 167c0 8.59961 6.89941 13.5 20.2002 14.4004l23.5 1.5v-7.7002c0 -12.7998 -10.8008 -21.9004 -25.2002 -21.9004
c-11.2998 0 -18.5 5.40039 -18.5 13.7002zM576 369v-352c0 -26.5 -21.5 -48 -48 -48h-480c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h480c26.5 0 48 -21.5 48 -48zM127.8 250.8c8.40039 -0.700195 16.7998 4.2002 22.1006 10.4004
c5.19922 6.39941 8.59961 15 7.69922 23.7002c-7.39941 -0.300781 -16.5996 -4.90039 -21.8994 -11.3008c-4.7998 -5.5 -8.90039 -14.3994 -7.90039 -22.7998zM188.4 176.3c-0.200195 0.200195 -19.6006 7.60059 -19.8008 30c-0.199219 18.7002 15.3008 27.7002 16 28.2002
c-8.7998 13 -22.3994 14.4004 -27.0996 14.7002c-12.2002 0.700195 -22.5996 -6.90039 -28.4004 -6.90039c-5.89941 0 -14.6992 6.60059 -24.2998 6.40039c-12.5 -0.200195 -24.2002 -7.2998 -30.5 -18.6006c-13.0996 -22.5996 -3.39941 -56 9.2998 -74.3994
c6.2002 -9.10059 13.7002 -19.1006 23.5 -18.7002c9.30078 0.400391 13 6 24.2002 6c11.2998 0 14.5 -6 24.2998 -5.90039c10.2002 0.200195 16.5 9.10059 22.8008 18.2002c6.89941 10.4004 9.7998 20.4004 10 21zM323.8 229.7c0 26.5996 -18.5 44.7998 -44.8994 44.7998
h-51.2002v-136.4h21.2002v46.6006h29.2998c26.7998 0 45.5996 18.3994 45.5996 45zM413.8 206c0 19.7002 -15.7998 32.4004 -40 32.4004c-22.5 0 -39.0996 -12.9004 -39.7002 -30.5h19.1006c1.59961 8.39941 9.39941 13.8994 20 13.8994c13 0 20.2002 -6 20.2002 -17.2002
v-7.5l-26.4004 -1.59961c-24.5996 -1.5 -37.9004 -11.5996 -37.9004 -29.0996c0 -17.7002 13.7002 -29.4004 33.4004 -29.4004c13.2998 0 25.5996 6.7002 31.2002 17.4004h0.399414v-16.4004h19.6006v68h0.0996094zM516 237.1h-21.5l-24.9004 -80.5996h-0.399414
l-24.9004 80.5996h-22.2998l35.9004 -99.2998l-1.90039 -6c-3.2002 -10.2002 -8.5 -14.2002 -17.9004 -14.2002c-1.69922 0 -4.89941 0.200195 -6.19922 0.300781v-16.4004c1.19922 -0.400391 6.5 -0.5 8.09961 -0.5c20.7002 0 30.4004 7.90039 38.9004 31.7998z" />
    <glyph glyph-name="fly" unicode="&#xf417;" horiz-adv-x="384" 
d="M197.8 20.2002c12.9004 -11.7002 33.7002 -33.2998 33.2002 -50.7002c0 -0.799805 -0.0996094 -1.59961 -0.0996094 -2.5c-1.80078 -19.7998 -18.8008 -31.0996 -39.1006 -31c-25 0.0996094 -39.8994 16.7998 -38.7002 35.7998c1 16.2002 20.5 36.7002 32.4004 47.6006
c2.2998 2.09961 2.7002 2.69922 5.59961 3.59961c3.40039 0 3.90039 -0.299805 6.7002 -2.7998zM331.9 380.7c23.8994 -40 27.7998 -73.2998 20.7998 -112.5c-15.2002 -69.9004 -103.601 -166.5 -155.9 -215.7c-1.7002 -1.59961 -1.39941 -1.40039 -3.5 -2.09961
l-3.2998 0.0996094c-1.7002 0.599609 -4.5 3.5 -6.2002 5.09961c-58.7998 57.8008 -148.7 151.601 -155.8 233.801c-1.5 71.3994 29.2998 113.399 82.9004 141.3c9.89941 4.09961 37 17.2998 81.0996 17.2998c22 0.200195 51.0996 -4.5 76.5996 -15.2002
c24.7002 -11.5 47 -26.3994 63.3008 -52.0996zM186.8 96.0996v325.7c-57.8994 -5.5 -72.7002 -89.2002 -69.2998 -136.7c4.09961 -58.2998 41.2998 -137.899 69.2998 -189zM328.7 268c15.7998 54.9004 -10.9004 134.7 -99.7002 153
c38.2002 -25.5996 49.5996 -85.5 48 -131.4c-2 -58.5996 -39.4004 -140 -67.2002 -191.899c41.6006 42.2998 102.5 113.5 118.9 170.3z" />
    <glyph glyph-name="node" unicode="&#xf419;" horiz-adv-x="640" 
d="M316.3 -4c-2.09961 0 -4.2002 0.599609 -6.09961 1.59961l-19.2002 11.4004c-2.90039 1.59961 -1.5 2.2002 -0.5 2.5c3.7998 1.2998 4.59961 1.59961 8.7002 4c0.399414 0.200195 1 0.0996094 1.39941 -0.0996094l14.8008 -8.80078
c0.5 -0.299805 1.2998 -0.299805 1.7998 0l57.7998 33.4004c0.5 0.299805 0.900391 0.900391 0.900391 1.59961v66.7002c0 0.700195 -0.300781 1.2998 -0.900391 1.60059l-57.7998 33.2998c-0.5 0.299805 -1.2002 0.299805 -1.7998 0l-57.8008 -33.2998
c-0.599609 -0.300781 -0.899414 -1 -0.899414 -1.60059v-66.7002c0 -0.599609 0.399414 -1.19922 0.899414 -1.5l15.8008 -9.09961c8.59961 -4.2998 13.8994 0.799805 13.8994 5.7998v65.9004c0 0.899414 0.700195 1.7002 1.7002 1.7002h7.2998
c0.900391 0 1.7002 -0.700195 1.7002 -1.7002v-65.9004c0 -11.5 -6.2002 -18 -17.0996 -18c-3.30078 0 -6 0 -13.3008 3.60059l-15.1992 8.69922c-3.7002 2.2002 -6.10059 6.2002 -6.10059 10.5v66.7002c0 4.2998 2.2998 8.40039 6.10059 10.5l57.7998 33.4004
c3.7002 2.09961 8.5 2.09961 12.0996 0l57.7998 -33.4004c3.7002 -2.2002 6.10059 -6.2002 6.10059 -10.5v-66.7002c0 -4.2998 -2.2998 -8.39941 -6.10059 -10.5l-57.7998 -33.3994c-1.7002 -1.10059 -3.7998 -1.7002 -6 -1.7002zM363 61.7998
c0 -12.5996 -10.5 -19.7998 -29 -19.7998c-25.2998 0 -30.5996 11.5996 -30.5996 21.2998c0 1 0.799805 1.7002 1.69922 1.7002h7.5c0.900391 0 1.60059 -0.599609 1.7002 -1.40039c1.10059 -7.59961 4.5 -11.3994 19.7998 -11.3994
c12.2002 0 17.4004 2.7002 17.4004 9.2002c0 3.69922 -1.5 6.39941 -20.4004 8.2998c-15.7998 1.59961 -25.5996 5 -25.5996 17.7002c0 11.5996 9.7998 18.5996 26.2998 18.5996c18.5 0 27.6006 -6.40039 28.7998 -20.2002
c0.100586 -0.5 -0.0996094 -0.899414 -0.399414 -1.2998c-0.299805 -0.299805 -0.700195 -0.5 -1.2002 -0.5h-7.5c-0.799805 0 -1.40039 0.5 -1.59961 1.2998c-1.80078 8 -6.2002 10.6006 -18.1006 10.6006c-13.2998 0 -14.7998 -4.60059 -14.7998 -8.10059
c0 -4.2002 1.7998 -5.39941 19.7998 -7.7998c17.7998 -2.40039 26.2002 -5.7002 26.2002 -18.2002zM417.5 111.9c0 -6.10059 -5 -11.1006 -11.0996 -11.1006c-6.10059 0 -11.1006 5 -11.1006 11.1006c0 6.2998 5.2002 11.0996 11.1006 11.0996
c6 0.0996094 11.0996 -4.7998 11.0996 -11.0996zM415.7 111.9c0 5.19922 -4.2002 9.2998 -9.40039 9.2998c-5.09961 0 -9.2998 -4.10059 -9.2998 -9.2998c0 -5.2002 4.2002 -9.40039 9.2998 -9.40039c5.2002 0.0996094 9.40039 4.2998 9.40039 9.40039zM411.2 105.7
h-2.60059c-0.0996094 0.599609 -0.5 3.7998 -0.5 3.89941c-0.199219 0.700195 -0.399414 1.10059 -1.2998 1.10059h-2.2002v-5h-2.39941v12.5h4.2998c1.5 0 4.40039 0 4.40039 -3.2998c0 -2.30078 -1.5 -2.80078 -2.40039 -3.10059
c1.7002 -0.0996094 1.7998 -1.2002 2.09961 -2.7998c0.100586 -1 0.300781 -2.7002 0.600586 -3.2998zM408.4 114.5c0 1.7002 -1.2002 1.7002 -1.80078 1.7002h-2v-3.5h1.90039c1.59961 0 1.90039 1.09961 1.90039 1.7998zM137.3 257l-0.200195 -95
c0 -1.2998 -0.699219 -2.59961 -1.7998 -3.2002c-1.09961 -0.700195 -2.59961 -0.700195 -3.7002 0l-36.3994 20.9004c-2.2998 1.2998 -3.7002 3.7998 -3.7002 6.39941v44.4004c0 2.59961 -1.40039 5.09961 -3.7002 6.40039l-15.5 8.89941
c-1.09961 0.700195 -2.39941 1 -3.7002 1c-1.2998 0 -2.5 -0.299805 -3.69922 -1l-15.5 -8.89941c-2.30078 -1.30078 -3.7002 -3.80078 -3.7002 -6.40039v-44.4004c0 -2.59961 -1.40039 -5 -3.7002 -6.39941l-36.4004 -20.9004
c-1.19922 -0.700195 -2.59961 -0.700195 -3.69922 0c-1.10059 0.700195 -1.80078 1.90039 -1.80078 3.2002l-0.0996094 95c0 2.59961 1.40039 5.09961 3.7002 6.40039l61.2002 35.2998c1.09961 0.599609 2.19922 1 3.39941 1h0.600586
c1.19922 -0.100586 2.39941 -0.400391 3.39941 -1l61.2998 -35.2998c2.30078 -1.30078 3.7002 -3.7002 3.7002 -6.40039zM472.5 360.7v-176.4c0 -2.59961 -1.40039 -5.09961 -3.7002 -6.39941l-61.2998 -35.4004c-2.2998 -1.2998 -5.09961 -1.2998 -7.40039 0
l-61.2998 35.4004c-2.2998 1.2998 -3.7002 3.7998 -3.7002 6.39941v70.7998c0 2.60059 1.40039 5.10059 3.7002 6.40039l61.2998 35.4004c2.30078 1.2998 5.10059 1.2998 7.40039 0l15.2998 -8.80078c1.7002 -1 3.90039 0.300781 3.90039 2.2002v94
c0 2.7998 3 4.60059 5.5 3.2002l36.5 -20.4004c2.2998 -1.19922 3.7998 -3.69922 3.7998 -6.39941zM426.5 231.8c0 0.700195 -0.400391 1.2998 -0.900391 1.60059l-21 12.1992c-0.599609 0.300781 -1.2998 0.300781 -1.89941 0l-21 -12.1992
c-0.600586 -0.300781 -0.900391 -0.900391 -0.900391 -1.60059v-24.2998c0 -0.700195 0.400391 -1.2998 0.900391 -1.59961l21 -12.1006c0.599609 -0.299805 1.2998 -0.299805 1.7998 0l21 12.1006c0.599609 0.299805 0.900391 0.899414 0.900391 1.59961v24.2998h0.0996094
zM636.3 232.5l-36.7002 -21.2998c-2.5 -1.40039 -5.59961 0.399414 -5.59961 3.2002v17.3994c0 1.2998 -0.799805 2.5 -1.90039 3.2002l-19.1992 11.0996c-1.10059 0.700195 -2.60059 0.700195 -3.7002 0l-19.2002 -11.0996
c-1.2002 -0.700195 -1.90039 -1.90039 -1.90039 -3.2002v-22.2002c0 -1.2998 0.700195 -2.5 1.90039 -3.19922l61.7002 -35.4004c2.5 -1.40039 2.5 -5 0 -6.40039l-36.7998 -20.5c-2.30078 -1.2998 -5.10059 -1.2998 -7.30078 0l-60.8994 34.7002
c-2.2998 1.2998 -3.7002 3.7002 -3.7002 6.40039v70.7998c0 2.59961 1.40039 5.09961 3.7002 6.40039l61.2998 35.3994c2.2998 1.2998 5.09961 1.2998 7.40039 0l60.8994 -35.3994c2.2998 -1.30078 3.7002 -3.80078 3.7002 -6.40039v-17.0996
c0 -2.60059 -1.40039 -5.10059 -3.7002 -6.40039zM559 229l11.7998 6.7998c0.400391 0.299805 1 0.299805 1.40039 0l11.7998 -6.7998c0.400391 -0.200195 0.700195 -0.700195 0.700195 -1.2002v-13.5996c0 -0.5 -0.299805 -0.900391 -0.700195 -1.2002l-11.7998 -6.7998
c-0.400391 -0.299805 -1 -0.299805 -1.40039 0l-11.7998 6.7998c-0.400391 0.200195 -0.700195 0.700195 -0.700195 1.2002v13.5996c0 0.5 0.299805 0.900391 0.700195 1.2002zM304.8 185.5c0 -0.599609 -0.0996094 -1.2002 -0.200195 -1.7002
c-0.5 -2 -1.7998 -3.7002 -3.59961 -4.7002l-61 -35.1992c-2.2002 -1.30078 -5 -1.40039 -7.40039 0l-61.1992 35.1992c-2.10059 1.2002 -4 3.60059 -4 6.40039v70.4004c0 2.69922 1.59961 5.09961 3.89941 6.39941l61.1006 35.2002
c2.39941 1.40039 5.2998 1.2002 7.39941 0l61.1006 -35.2002c2.2998 -1.2998 3.89941 -3.7998 3.89941 -6.39941v-70.4004zM230.5 310.4l-0.799805 -0.5h1.09961zM306.7 180.2l-0.400391 0.700195v-0.900391z" />
    <glyph glyph-name="osi" unicode="&#xf41a;" horiz-adv-x="512" 
d="M8 181.56c2.2998 135.801 97.3994 232.441 213.799 248.102c138.8 18.5996 255.601 -75.7998 278 -201.101c21.2998 -118.8 -44 -230 -151.6 -274c-9.2998 -3.7998 -14.4004 -1.69922 -18 7.7002c-17.7998 46.2998 -35.5996 92.6328 -53.3994 138.999
c-3.09961 8.10059 -1 13.2002 7 16.7998c24.2002 11 39.2998 29.4004 43.2998 55.8008c0.561523 3.60547 0.852539 7.2998 0.852539 11.0615c0 37.3613 -28.7998 67.9971 -65.3525 71.1377c-39 3.40039 -71.7998 -23.6992 -77.5 -59.6992
c-5.19922 -33 11.1006 -63.7002 41.9004 -77.7002c9.59961 -4.40039 11.5 -8.60059 7.7998 -18.4004c-17.8994 -46.5996 -35.7998 -93.2324 -53.7002 -139.899c-2.59961 -6.90039 -8.2998 -9.30078 -15.5 -6.5c-52.5996 20.2998 -101.399 61 -130.8 119
c-24.8994 49.1992 -25.2002 87.6992 -26.7998 108.699zM28.8994 183.461c0.399414 -6.59961 0.599609 -14.3008 1.2998 -22.1006c6.2998 -71.9004 49.5996 -143.5 131 -183.101c3.2002 -1.5 4.39941 -0.799805 5.59961 2.2998c14.9004 39.1006 29.9004 78.2012 45 117.302
c1.2998 3.2998 0.600586 4.7998 -2.39941 6.69922c-31.6006 19.9004 -47.3008 48.5 -45.6006 86c1 21.6006 9.2998 40.5 23.7998 56.3008c30 32.6992 77 39.7998 115.5 17.5996c27.4619 -15.834 45.9629 -45.4971 45.9629 -79.4463
c0 -3.75879 -0.321289 -7.3125 -0.762695 -10.9541c-3.59961 -30.5996 -19.2998 -53.8994 -45.7002 -69.7998c-2.69922 -1.59961 -3.5 -2.89941 -2.2998 -6c15.2002 -39.2002 30.2666 -78.4336 45.2002 -117.7c1.2002 -3.09961 2.40039 -3.7998 5.59961 -2.2998
c35.5 16.6006 65.2002 40.2998 88.1006 72c34.7998 48.2002 49.0996 101.9 42.2998 161c-13.7002 117.5 -119.4 214.8 -255.5 198c-106.1 -13 -195.3 -102.5 -197.1 -225.8z" />
    <glyph glyph-name="react" unicode="&#xf41b;" horiz-adv-x="512" 
d="M418.2 270.8c54.3994 -18.7002 93.7998 -48.0996 93.7998 -78.3994c0 -31.7002 -41.7998 -62.6006 -99.5 -81.7002c-3.09961 -1 -6.2002 -2 -9.40039 -2.90039c1.10059 -4.59961 2.10059 -9.09961 3 -13.5c11.4004 -57.5996 2.60059 -104.899 -24.3994 -120.5
c-26.1006 -15.0996 -68.4004 -0.200195 -111.2 36.6006c-4.59961 4 -9.2002 8.09961 -13.5996 12.3994c-3.5 -3.39941 -7 -6.59961 -10.5 -9.7002c-44.2002 -38.6992 -89.6006 -54.6992 -116.601 -39.0996c-26.2002 15.0996 -34.3994 59.0996 -23.8994 114.6
c1.19922 6.10059 2.5 12 4 18c-4.60059 1.30078 -9.10059 2.80078 -13.6006 4.30078c-55.5 19 -96.2998 50.2998 -96.2998 81.5c0 30.1992 38.2998 59.3994 91.7002 77.8994c5.89941 2.10059 12.2002 4.10059 18.5996 5.90039
c-1.39941 5.59961 -2.59961 11.0996 -3.7002 16.7002c-11 56.3994 -3.19922 101.5 23 116.699c27.3008 15.9004 72.9004 -1.09961 118.4 -41.5c2.7998 -2.5 5.59961 -5.09961 8.2998 -7.69922c4 3.89941 8.2002 7.7998 12.5 11.5
c43.4004 37.7998 86.2998 53.5 112.601 38.3994c27.2998 -15.7998 35.3994 -63.7002 23.0996 -123.3c-0.799805 -3.7002 -1.59961 -7.40039 -2.5 -11.0996c5.40039 -1.60059 10.7998 -3.30078 16.2002 -5.10059zM282.9 355.7c-4 -3.5 -7.80078 -7 -11.7002 -10.7002
c15.3994 -16.7002 29.5996 -34.5 42.5996 -53.0996c22.6006 -2 45.1006 -5.60059 67.2998 -10.6006c0.900391 3.2998 1.60059 6.60059 2.30078 10c10.5996 51.5 4.09961 90.7002 -12.8008 100.4c-15.7998 9.09961 -50.5 -3.60059 -87.6992 -36zM167.2 140.5
c-5 8.59961 -9.7002 17.2998 -14.2998 26.0996c-6.40039 -15.1992 -11.9004 -30.0996 -16.3008 -44.5c15.3008 -3.2998 30.8008 -5.7998 46.4004 -7.5c-5.5 8.5 -10.7002 17.2002 -15.7998 25.9004zM136.9 260.8c4.39941 -14.0996 9.69922 -28.7002 16 -43.5996
c4.5 8.7998 9.2998 17.5 14.1992 26c4.90039 8.59961 10.1006 17.0996 15.4004 25.3994c-15.9004 -2 -31.2002 -4.59961 -45.5996 -7.7998zM164.3 191.9c6.7002 -13.8008 13.7998 -27.3008 21.5 -40.6006s15.9004 -26.2998 24.6006 -39
c14.6992 -0.899414 29.8994 -1.39941 45.5996 -1.39941s31.2002 0.5 46.0996 1.59961c8.5 12.7998 16.6006 25.7002 24.2002 39c7.7002 13.4004 14.9004 27 21.6006 40.7998c-6.80078 13.7002 -14 27.2002 -21.7002 40.4004s-15.7998 26.0996 -24.2998 38.7002
c-14.9004 1.09961 -30.3008 1.69922 -45.9004 1.69922s-30.9004 -0.599609 -45.9004 -1.69922c-8.59961 -12.7002 -16.7998 -25.6006 -24.3994 -38.9004c-7.60059 -13.2998 -14.7998 -26.7998 -21.4004 -40.5996zM344.9 140.7c-5 -8.60059 -10.1006 -17.2002 -15.5 -25.6006
c15.7998 1.80078 31.5 4.5 47 8c-4.90039 15.1006 -10.5 29.8008 -16.9004 44.3008c-4.7002 -9 -9.5 -17.9004 -14.5996 -26.7002zM359.3 217.2c6.10059 14.2002 11.5 28.5996 16.1006 43.3994c-14.4004 3.30078 -29.8008 6 -45.9004 8
c5.2998 -8.2998 10.4004 -16.6992 15.2998 -25.1992c5 -8.60059 9.7998 -17.4004 14.5 -26.2002zM256.2 329.7c-10 -10.9004 -20.1006 -22.9004 -29.9004 -35.7998c19.7998 0.899414 39.7002 0.899414 59.5 0c-9.2002 12.3994 -19.0996 24.3994 -29.5996 35.7998zM140.2 391
c-15.7998 -9.09961 -22 -45.5996 -12.6006 -94c1.10059 -5.2002 2.2002 -10.4004 3.5 -15.5c22.2002 4.90039 44.6006 8.40039 67.2002 10.4004c13.1006 18.5996 27.4004 36.3994 42.9004 53.0996c-2.60059 2.40039 -5.10059 4.7998 -7.60059 7
c-39.2998 34.7998 -76.5996 48.7998 -93.3994 39zM115.7 127.4c6.89941 22 15.2002 43.5996 24.7998 64.5c-9.5 20.5996 -17.7002 41.8994 -24.5 63.5996c-5.7998 -1.7002 -11.5996 -3.5 -17.2998 -5.5c-45.6006 -15.9004 -77.2002 -39.2998 -77.2002 -57.5996
c1.90039 -12.1006 8.7002 -22.9004 18.7998 -29.9004c17.5 -13.9004 41.7002 -24.5 63 -31.2002c4.10059 -1.39941 8.2002 -2.7002 12.4004 -3.89941zM232.3 29.4004c3.2002 2.7998 6.40039 5.7998 9.60059 8.89941c-15.5 16.7998 -30 34.7002 -43.2002 53.4004
c-22.9004 1.7002 -45.5 5 -67.9004 9.7998c-1.39941 -5.5 -2.59961 -11.0996 -3.7002 -16.7002c-9 -47.5 -2.39941 -82.7998 13.5 -92c11.4004 -4.5 24.2002 -4 35.3008 1.2998c20.7998 8.2002 39.8994 20.2002 56.3994 35.3008zM256.8 53.7002
c10.5 11.5996 20.4004 23.7002 29.6006 36.3994c-10 -0.5 -20.1006 -0.699219 -30.4004 -0.699219c-10 0 -19.9004 0.199219 -29.5 0.599609c9.90039 -13.0996 20.0996 -25.2998 30.2998 -36.2998zM387.5 23.7002c3.2002 22.2002 2.40039 44.7002 -2.5 66.2998
c-0.799805 4 -1.7002 8.09961 -2.7002 12.2002c-22.5 -5.10059 -45.2998 -8.60059 -68.2002 -10.5c-12.7998 -18.7998 -26.8994 -36.7002 -42.1992 -53.6006c4.2998 -4 8.5 -7.89941 12.6992 -11.5c36.6006 -31.3994 70.5 -43.3994 86.4004 -34.1992
c9.59961 7.69922 15.5996 19.0996 16.5 31.2998zM405.7 131.2c49.8994 16.5 84.7998 41.7998 84.7998 61.3994c0 18.2002 -32.7002 42 -79.2998 58c-4.7998 1.60059 -9.7998 3.2002 -15 4.7002c-6.7998 -21.5 -14.9004 -42.5 -24.5 -62.8994
c9.89941 -20.7002 18.5 -42 25.5 -63.8008c2.89941 0.800781 5.7002 1.7002 8.5 2.60059zM256 146.2c-25.2998 0 -45.7998 20.5 -45.7998 45.7998s20.5 45.7998 45.7998 45.7998s45.7998 -20.5 45.7998 -45.7998s-20.5 -45.7998 -45.7998 -45.7998z" />
    <glyph glyph-name="autoprefixer" unicode="&#xf41c;" horiz-adv-x="640" 
d="M318.4 432l164.1 -480h-77.5l-25.2002 81.4004h-119.5l-25.3994 -81.4004h-77.5zM278.1 90.0996h83.6006l-40.9004 130.4h-1.5zM640 43l-158.5 -9.5l-19.4004 56.5l167.9 -15.5996zM177.9 90l-19.4004 -56.4004l-158.5 9.40039l10 31.2998z" />
    <glyph glyph-name="less" unicode="&#xf41d;" horiz-adv-x="640" 
d="M612.7 229c0 -11 6.7998 -22.5996 27.2998 -23.2998v-27.2998c-20.5 -1 -27.2998 -12.6006 -27.2998 -23.6006c0 -20.3994 3.2002 -32 3.2002 -54.5996c0 -34.2002 -12.7002 -45.2002 -40.5 -45.2002h-20.5v25.2002h6.2998v0.5c13.5996 0 17.2998 4.7002 17.2998 22.5996
c0 17.2998 -1.59961 32.6006 -1.59961 51.5c0 24.2002 7.7998 33.6006 23.5996 37.2998v1.60059c-15.7002 3.7002 -23.5996 13.0996 -23.5996 37.2998c0 18.9004 1.59961 35.2002 1.59961 51.5c0 17.4004 -3.09961 22.0996 -17.2998 22.0996h-6.2998v24.2002h20.5
c27.8994 0 40.5 -11 40.5 -45.2002c0 -22 -3.2002 -34.0996 -3.2002 -54.5996zM507.1 197c20.5 -6.7998 43 -18.9004 43 -47.7998c0 -28.9004 -22.5996 -51 -64.5996 -51c-20 0 -44.0996 9 -59.9004 22.0996l21 30.5c14.2002 -11 27.4004 -16.2998 40.5 -16.2998
c14.2002 0 20.5 5.2002 20.5 13.0996c0 10.5 -15.7998 15.8008 -32.0996 22.1006c-18.9004 7.2998 -41.5 20.5 -41.5 46.2002c0 28.8994 24.2002 49.3994 59.9004 49.3994c24.1992 0 42.0996 -10.5 55.1992 -20.5l-21 -27.7998c-11.5 8.40039 -22 13.0996 -33.5996 13.0996
s-17.9004 -4.69922 -17.9004 -12.5996c0 -10.5 14.7002 -14.2002 30.5 -20.5zM148.2 137.6c1.59961 0 3.09961 0 6.2002 0.800781l5.2998 -34.2002c-5.7002 -2.10059 -13.6006 -3.7002 -23.6006 -3.7002c-32.0996 0 -43.0996 21 -43.0996 53.0996v150.801h-14.0996
c-13.6006 0 -17.3008 -4.80078 -17.3008 -22.1006s1.60059 -32.5996 1.60059 -51.5c0 -24.2002 -7.7998 -33.5996 -23.6006 -37.2998v-1.59961c15.7002 -3.7002 23.6006 -13.1006 23.6006 -37.3008c0 -19.3994 -1.60059 -34.1992 -1.60059 -51.5
c0 -17.2998 4.2002 -22.5996 17.3008 -22.5996h6.2998v-24.2002h-20.5c-27.9004 0 -40.5 11 -40.5 45.2002c0 22.5996 3.2002 34.2002 3.2002 53.5996c0 11 -6.80078 22.6006 -27.3008 23.1006v27.2998c20.5 1 27.3008 12.5996 27.3008 23.5996
c0 19.4004 -3.2002 32 -3.2002 54.6006c0 34.2002 12.5996 45.2002 41 45.2002h74.5996v-178.2c0 -9.90039 4.7002 -13.1006 8.40039 -13.1006zM379.9 197c20.5 -6.7998 43.0996 -18.9004 43 -47.7998c0 -28.9004 -22.6006 -51 -64.6006 -51
c-20 0 -44.0996 9 -59.8994 22.0996l20.5 30.5c14.1992 -11 27.3994 -16.2998 40.5 -16.2998c14.1992 0 20.5 5.2002 20.5 13.0996c0 10.5 -15.8008 15.8008 -32.1006 22.1006c-18.8994 7.2998 -41.5 20.5 -41.5 46.2002c0 28.8994 24.2002 49.3994 59.9004 49.3994
c24.2002 0 42.0996 -10.5 55.2002 -20.5l-21 -27.7998c-11.5 8.40039 -22 13.0996 -33.6006 13.0996c-11.5996 0 -17.8994 -4.69922 -17.8994 -12.5996c0 -10.5 14.6992 -14.2002 31 -20.5zM224.9 265.8c44.0996 0 67.2998 -33.0996 66.6992 -75.7002
c0 -8.39941 -1.09961 -15.6992 -1.59961 -19.3994h-95.2002c4.2002 -24.2002 20.5 -34.2002 41.5 -34.2002c11.6006 0 22.6006 3.2002 34.2002 10l15.7998 -27.7998c-16.2998 -11.1006 -37.2998 -17.9004 -56.2002 -17.9004c-45.0996 0 -79.2998 30.5 -79.2998 82.5
c-1 50.4004 35.7002 82.5 74.1006 82.5zM194.9 199.6h56.7998c0 17.9004 -7.40039 31 -26.2998 31c-14.7002 0 -27.3008 -10 -30.5 -31z" />
    <glyph glyph-name="sass" unicode="&#xf41e;" horiz-adv-x="640" 
d="M301.84 69.0801c-0.299805 -0.599609 -0.599609 -1.08008 0 0zM550.97 156.08c57.9092 0.300781 90.5703 -37.0801 88.9707 -71.0801c-1.10059 -26.9004 -25.6904 -37.9004 -30.29 -38.7002c-3.30078 -0.599609 -5.10059 -0.700195 -5.60059 1.90039
c-0.299805 1.7998 0.900391 2.7002 4.7998 5.09961c3.90039 2.40039 15.6006 10.5 17.7002 25c2.10059 14.5 -8.7998 49.2998 -64.4795 55.7998c-26 3 -46.3906 -0.599609 -62.0898 -7.19922c2.89941 -7.60059 5.09961 -15.5 5.39941 -23.4004
c0.799805 -17.5 -11.29 -30.4004 -23.79 -39.5996c-6.50391 -4.72559 -13.8096 -8.50879 -21.5898 -11.1006c-5.2002 -2.2002 -12.2002 -4.5 -17.0996 -3.5c-10.9004 2.2002 -16.7002 11.7998 -9.30078 33.1006c4 11.5 15.5 29 34.0908 44.0996
c-4.30078 8.7002 -8.99023 17.5996 -11.3906 25.7002c-2.58984 8.31934 -4.7002 17.0566 -6.2002 25.7998c0 0 -15.2998 -31.7197 -35.0898 -60.6201c-1.09961 -1.7002 -2.2998 -3.39941 -3.39941 -5c3.7998 -9 6.89941 -18.5996 7.2998 -28.2002
c0.700195 -17.3994 -6.90039 -30.5996 -19.4004 -39.7998c-6.1377 -4.40625 -12.9531 -8.00488 -20.1895 -10.5996c-3.90039 -1.7998 -12 -4.60059 -23.5 -5.40039c-6.29004 -0.5 -12.29 -0.0996094 -15.6904 2.5c-4.59961 3.40039 -5.2002 7.7998 -2.7998 13.7002
c2 5 17.21 22.4004 30 37.5996c3.5 4.2002 6.90039 8.5 9.90039 12.5c-0.0556641 0.0507812 -0.0927734 0.121094 -0.100586 0.200195c0 0 2.2998 3 6.10059 8.2002c-4.7002 10.0996 -10.6006 20.5 -13.4004 30c-2.58984 8.32031 -4.7002 17.0576 -6.2002 25.7998
c0 0 -15.4902 -39.7002 -31.6895 -71.5c-12.4902 -24.5996 -20.79 -39.5 -24.5908 -46v-0.299805s-0.5 -0.900391 -1.5 -2.40039c-0.5 -0.799805 -0.699219 -1.19922 -0.699219 -1.19922v0.0996094c-4.20996 -6.2002 -13.6104 -18.2998 -23 -18.2998
c-25.7002 0 -16.3008 52.2002 -16.3008 52.2002s-7.5 -19.3008 -16 -35.9004c-6.88965 -13.5996 -13.0898 -25 -26.8896 -25c-3.90039 0 -10.1904 0.0996094 -15.3896 5c-11.8008 11.2002 -20.9004 39.7002 -19.1006 61.7002c1.5 18.7998 4.40039 31.7998 8.40039 42.5996
c-7.10059 -3.89941 -15.2002 -8.39941 -23.4902 -13.2998c-4.2998 -2.5 -8.59961 -5 -12.7998 -7.5c0.0996094 -0.299805 0.299805 -0.5 0.400391 -0.799805c10.5996 -20.4004 13.3896 -65.2002 -9.60059 -99.5s-65.7803 -55.2002 -107.57 -43.6006
c-13.3896 3.80078 -33.79 31.6006 -16.29 70.4004c15.4902 34.2002 77.3809 66.5996 93.6709 74.7002c1.39941 0.799805 2.89941 1.59961 4.5 2.5c-32.4902 28.3994 -113.671 66.7998 -125.061 125.7c-3.2002 16.5996 4.58984 56.2998 53.2803 101.899
c40.9902 38.2998 97.9697 67.7002 150.66 86.4004c88.4297 31.3994 181.949 12.8994 196.31 -43.5c14.1006 -55.5 -33.9902 -121.8 -95.7695 -145.601c-54.9902 -21.2998 -100.471 -17.8994 -119.17 -11.7998c-21.29 7 -33.79 21 -36.79 28.9004
c-1.2002 3.09961 -3.30078 8.2998 0 10.0996c2 1.10059 2.7998 0.799805 8.09961 -5.09961c5.09961 -5.60059 25.4902 -20.6006 64.2803 -16.2998c101.77 11.3994 163.06 90.5 143.66 133c-13.4902 29.7998 -91.8408 43.1992 -189.841 -5.60059
c-119.569 -59.5996 -126.069 -108.7 -127.069 -127.399c-2.7998 -51.3008 63.2793 -78.3008 99.0693 -116.5c0.5 -0.5 0.900391 -1 1.40039 -1.5c6.7002 3.69922 13.7998 7.59961 20.7002 11.3994c18 9.90039 35.0996 19.2002 43 23.5
c12.5801 18.2998 38.1797 38.5 56.5801 38.5c29.4893 0 19.3896 -42.3994 19.3896 -42.3994s0.599609 2 1.40039 2c0.799805 0 4.09961 5.5 13.1992 2.19922c9.40039 -3.5 7.2002 -10 7.30078 -10.6992c0.0996094 -1.30078 -11 -38.9004 -15.7002 -63.1006
c-2.2002 -11.5 -0.900391 -19.8994 -0.299805 -19.8994c0.899414 0 2.7998 2.89941 4.5 6.09961v0.0996094s1.2998 2.40039 3.5 6.7002c0 0.200195 -0.200195 -0.299805 -0.5 -0.799805c0.199219 0.400391 0.5 0.900391 0.899414 1.7002
c2.60059 5 6.2002 12.3994 10.4004 21.5996c8.18945 18.1006 39.4795 87.7002 42.0801 95.4004c2.59961 7.7002 4 15.7002 5.2998 19.0996c1.2998 3.40039 12.4102 6 25.2998 5.90039c12.8906 -0.100586 14.1904 -5.60059 14.29 -6.7002
c0.100586 -1.09961 -6.2002 -16.4004 -7.59961 -27.2002c-1.40039 -10.7998 -0.100586 -16.2002 1.09961 -25.2998c0.799805 -6 4.5 -13.5 8.90039 -22c13.2998 21.7998 36.79 63.5996 39.0898 75.2998c1.25195 6.51465 3.06152 12.9941 5.2998 19.1006
c1.29004 3.39941 12.3896 6 25.29 5.89941c12.9004 -0.0996094 14.2002 -5.59961 14.2998 -6.7002c0.100586 -1.09961 -6.2002 -16.3994 -7.59961 -27.1992c-1.40039 -10.8008 -0.100586 -16.2002 1.09961 -25.3008c1 -7.7998 7.10059 -18.1992 13 -30.0996
c17.4492 8.59473 37.2061 13.5 57.957 13.5h0.0429688zM121.79 11.3799c19.4004 21.0996 27.3896 47.9199 19.0996 78.3203c-1 -0.600586 -2 -1.10059 -2.89941 -1.7002c0 0 -0.400391 -0.200195 -1.2002 -0.700195c-4.7998 -2.89941 -8.7002 -5.2998 -11.4004 -6.89941
c-11.7998 -7.40039 -29.5898 -19.4004 -43.3896 -32.4004c-22.6904 -21.4199 -27.3896 -51 -15.4902 -57.9199c11.0898 -6.40039 36.8906 1.2002 55.2803 21.2998zM256.15 102.78c4 9.7998 19.6992 53.2998 16.1992 59.2002c-2.59961 4.5 -13.6992 0.899414 -23.79 -10.4004
c-6.2998 -7 -16.8994 -25 -21.8994 -40.0996c-9.90039 -30 -5.60059 -60.5 1.39941 -62.3008c8.2002 -2.09961 21.6904 37.9004 28.0908 53.6006zM367.15 49.7803c7.7998 4.7998 24.96 16.8994 25.0898 34.7998c0 0.599609 -0.100586 1.09961 -0.100586 1.59961
c-3.98926 -5.19922 -7.68945 -9.89941 -10.8896 -13.8994c-5.5 -6.7998 -19.4004 -21.7002 -19.4004 -21.7002s-2 -1.90039 -1.09961 -2.40039c1.2002 -0.699219 3.7002 0.200195 6.40039 1.60059zM452.73 69.2803c9.68945 3.5 25.7998 11.8994 25.8994 34.3994
c-0.0830078 3.7627 -0.750977 7.4043 -1.89941 10.8008c-10.4102 -9.2002 -16.4004 -18.8008 -19 -24.5c-6.7002 -14.6006 -7 -19.3008 -5 -20.7002z" />
    <glyph glyph-name="vuejs" unicode="&#xf41f;" 
d="M356.9 383.7h91.0996l-224 -383.7l-224 383.7h176l48 -88.6006l56 88.6006h76.9004zM55.7002 351.7l168.3 -288.2l168.2 288.2h-53.7998l-114.4 -198.2l-114.5 198.2h-53.7998z" />
    <glyph glyph-name="angular" unicode="&#xf420;" 
d="M185.7 179.9l38.0996 91.5996l38.1006 -91.5996h-76.2002zM223.8 416l207.8 -74.4004l-31.7998 -275.699l-176 -97.9004l-176 97.9004l-31.7998 275.699zM354 74.2002l-130.2 292.3l-130.1 -292.3h48.7002l26.1992 65.3994h110.601l26.2002 -65.3994h48.5996z" />
    <glyph glyph-name="aviato" unicode="&#xf421;" horiz-adv-x="640" 
d="M107.2 164.5l-19 41.7998h-52.1006l-19 -41.7998h-17.0996l62.2002 131.4l62.2002 -131.4h-17.2002zM62.2002 262.6l-19.6006 -42.5h39.2002zM174.9 160.2l-62.2002 131.399h17.0996l45.1006 -96l45.0996 96h17zM255.5 164.5v127.1h15.5v-127.1h-15.5zM464.6 280.1
v-115.6h-17.2998v115.6h-41.2002v11.5h99.6006v-11.5h-41.1006zM640 229.2c0 -9.2002 -1.7002 -17.7998 -5.09961 -25.7998c-3.40039 -8 -8.2002 -15.1006 -14.2002 -21.1006s-13.1006 -10.7998 -21.1006 -14.2002c-8 -3.39941 -16.5996 -5.09961 -25.7998 -5.09961
s-17.7998 1.7002 -25.7998 5.09961c-8 3.40039 -15.0996 8.2002 -21.0996 14.2002s-10.8008 13 -14.2002 21.1006c-3.40039 8 -5.10059 16.5996 -5.10059 25.7998s1.7002 17.7998 5.10059 25.7998c3.39941 8 8.2002 15.0996 14.2002 21.0996s13 8.40039 21.0996 11.9004
c8 3.40039 16.5996 5.09961 25.7998 5.09961s17.7998 -1.69922 25.7998 -5.09961s15.1006 -5.7998 21.1006 -11.9004c6 -6 10.7002 -13.0996 14.2002 -21.0996c3.39941 -8 5.09961 -16.5996 5.09961 -25.7998zM624.5 229.2c0 7.2998 -1.2998 14 -3.90039 20.2998
c-2.59961 6.2998 -6.19922 11.7002 -10.7998 16.2998c-4.59961 4.60059 -10 8.2002 -16.2002 10.9004c-6.19922 2.7002 -12.7998 4 -19.7998 4s-13.5996 -1.2998 -19.7998 -4s-11.5996 -6.2998 -16.2002 -10.9004c-4.59961 -4.59961 -8.2002 -10 -10.7998 -16.2998
s-3.90039 -13.0996 -3.90039 -20.2998c0 -7.2998 1.30078 -14 3.90039 -20.2998c2.59961 -6.30078 6.2002 -11.7002 10.7998 -16.3008c4.60059 -4.59961 10 -8.19922 16.2002 -10.8994s12.7998 -4 19.7998 -4s13.6006 1.2998 19.7998 4
c6.2002 2.7002 11.6006 6.2998 16.2002 10.8994c4.60059 4.60059 8.2002 10 10.7998 16.3008c2.60059 6.2998 3.90039 13.0996 3.90039 20.2998zM529.7 132.5c6 -0.900391 10.5 -6 10.7002 -12.2998c0 -6.7998 -5.60059 -12.4004 -12.4004 -12.4004
s-12.4004 5.60059 -12.4004 12.4004c0 6.2002 4.60059 11.2998 10.5 12.2002v5.7998l-80.2998 -9v-5.40039c5.60059 -1.09961 9.90039 -6.09961 9.90039 -12.0996c0 -6.7998 -5.60059 -10.2002 -12.4004 -10.2002s-12.3994 3.40039 -12.3994 10.2002
c0 5.89941 4.19922 11 9.89941 12.0996v4.90039l-28.3994 -3.2002v-23.7002h5.89941v-13.7998h-5.89941v6.59961h-5v-6.59961h-5.90039v13.7998h5.90039v23.2002l-38.3008 -4.2998c-8.09961 -11.5 -19 -13.6006 -19 -13.6006l0.100586 -6.69922l5.09961 -0.200195
l0.100586 -12.1006h-4.10059l-0.0996094 5h-5.2002l-0.0996094 -5h-4.10059l0.100586 12.1006l5.09961 0.200195l0.0996094 6.69922s-10.8994 2.2002 -19 13.6006l-38.2998 4.2998v-23.2002h5.90039v-13.7998h-5.90039v6.59961h-5v-6.59961h-5.89941v13.9004h5.89941
v23.6992l-28.3994 3.2002v-4.89941c5.59961 -1.10059 9.89941 -6.10059 9.89941 -12.1006c0 -6.7998 -5.59961 -10.2002 -12.3994 -10.2002c-6.80078 0 -12.4004 3.40039 -12.4004 10.2002c0 5.90039 4.2002 11 9.90039 12.1006v5.39941l-80.3008 9v-5.7998
c5.90039 -0.900391 10.5 -6 10.5 -12.2002c0 -6.7998 -5.59961 -12.3994 -12.3994 -12.3994s-12.4004 5.59961 -12.4004 12.3994c0 6.2002 4.60059 11.2998 10.5 12.2002v6.2998l-88.8994 10l242.899 -13.5c-0.599609 2.2002 -1.09961 4.60059 -1.39941 7.2002
c-0.300781 2.09961 -0.5 4.2002 -0.600586 6.5l-64.7998 8.09961l64.9004 -1.89941c0 0.399414 0 0.799805 0.0996094 1.09961c2.7998 17.2002 25.5 23.7002 25.5 23.7002l1.09961 26.4004h-23.5996l-19 -41.8008h-17.0996l62.1992 131.4l62.2002 -131.4h-17.0996
l-19 41.8008h-23.7998l1.09961 -26.3008s22.7002 -6.5 25.5 -23.6992c0 -0.400391 0.0996094 -0.700195 0.0996094 -1.10059l64.9004 1.90039l-64.7998 -8.10059c-0.100586 -2.2998 -0.299805 -4.5 -0.600586 -6.5c-0.299805 -2.59961 -0.799805 -5 -1.39941 -7.19922
l242.899 13.3994l-88.8994 -10v-6.2998zM328.9 220.1h17.8994l1.7002 40.3008l1.7002 -40.3008h17.8994l-19.5996 42.5z" />
    <glyph glyph-name="ember" unicode="&#xf423;" horiz-adv-x="640" 
d="M639.9 193.4c1.09961 -10.8008 -5.30078 -14.3008 -5.30078 -14.3008s-26.5996 -19.5996 -47 -13.6992c-20.3994 5.89941 -21.5 43.1992 -21.5 43.1992h-1.89941l-20.7002 -57.1992s-8.2998 -27.9004 -20.7002 -22.8008
c-12.3994 5.10059 -12.0996 18.6006 -12.0996 18.6006s-19.2998 -21.2998 -54.7998 -18.6006c-31.1006 2.30078 -41.1006 26.7002 -41.1006 26.7002s-20.7998 -14.3994 -79.0996 -25.8994c-26.1006 -2.90039 -44.6006 12.8994 -44.6006 12.8994
c-2.39941 -2.39941 -18 -10.2002 -18 -10.2002s-22.2998 -10.2998 -30.8994 5.30078c-8.60059 15.5996 -3 63.6992 -3 63.6992h-1.60059s-12.8994 -26.2998 -19.5996 -49.8994c-6.7002 -23.6006 -15 -21.2002 -15 -21.2002s-15.2998 -1.40039 -18.7998 11.4004
c-3.5 12.8994 5.59961 59.6992 5.59961 59.6992l-1.2998 -0.299805s-0.799805 1.40039 -12.5996 -23.5996c-20.1006 -48.9004 -24.9004 -50 -36.5 -47.9004c-11.6006 2.10059 -12.1006 16.7002 -12.1006 16.7002l-15.8994 -8.7998s-38.6006 -16.6006 -58.8008 -1.2998
c-13.3994 10.1992 -18 22.1992 -19.5996 29.6992c0 0 -17 1.80078 -28.0996 6.10059c-11.1006 4.2998 0.0996094 18.2998 0.0996094 18.2998s3.5 5.2998 10 0s18.7998 -2.90039 18.7998 -2.90039c1 8.5 2.5 19.7002 7.7998 31.5c11 24.7002 27.6006 33 41.3008 33.3008
c13.6992 0.199219 23.3994 -3.5 31.6992 -15.3008c18.6006 -45.8994 -49.3994 -69.1992 -49.3994 -69.1992s-1.7998 -12.1006 16.7002 -11.8008c18.5996 0.200195 46.7998 20.4004 46.7998 20.4004c1.2998 15.4004 12.0996 63.5 15 70.7002
c2.89941 7.2002 14.2002 5.89941 14.2002 5.89941s8.89941 1.90039 10.5 -7.5c1.69922 -9.39941 -6.40039 -47.5996 -6.40039 -47.5996l1.2998 -1.59961c0.799805 3.69922 20.4004 36.5 20.4004 36.5s11.2998 19.5996 28.5 18.7998s-0.799805 -53.5 -0.799805 -53.5
l1.2998 -1.60059l1.2998 2.40039c2.2002 5.90039 27.7002 44.5996 27.7002 44.5996s9.59961 11.3008 18.5 8.60059c8.7998 -2.60059 9.39941 -6.7002 9.89941 -14.2002s-7 -52.0996 -7 -52.0996s-4.2998 -29.2002 5.40039 -28.7002s20.2002 10.7002 20.2002 10.7002
s7.5 57.5996 12.5996 105.1c5.10059 47.5 27.1006 79.5 27.1006 79.5s6.5 10 23.5 16.7002c11.1992 4 23.3994 1.2998 29.1992 -23.1006c9.5 -41 -23.2998 -87.8994 -36.8994 -105.199c5.89941 5.7998 15.7998 12.0996 27.2002 5.2998
c40.2998 -25.2998 7.2998 -80.9004 7.2998 -80.9004c11.7998 3.7998 33 18 33 18s0.5 6.10059 0.700195 7.5c7.19922 41.2998 32 56.2002 36.5996 59.7002c4.7998 3.59961 47.0996 19.7998 49 -24s-52.9004 -59.0996 -52.9004 -59.0996s4.80078 -12.6006 25 -9.40039
c20.2002 3.2002 43.3008 22.7998 43.3008 22.7998c0.799805 18 12.5996 61 15 67.2002c2.39941 6.2002 17.1992 6.5 18.7998 3c2.2002 -7 0.299805 -37.5996 0.299805 -37.5996l1.59961 0.5c5.90039 17.5 18.3008 31.1992 18.3008 31.1992s9.89941 9.7002 18 7.30078
c8.09961 -2.30078 5.09961 -30.4004 5.09961 -30.4004s-4.2998 -30.7002 9.40039 -32c13.6992 -1.40039 29.2998 10.7002 29.2998 10.7002s9.59961 3.89941 10.7002 -6.7998zM61.9004 188.1c0 0 6.19922 -1.89941 19.8994 7.60059
c13.7002 9.39941 16.4004 24.3994 9.10059 31.3994c-7.2002 6.90039 -28.2002 -7 -29 -39zM334.7 311.9c0 0 -15.9004 -54.5 -16.4004 -70.7002c0 0 44.5 72 40 96.2002c-4.5 24.1992 -23.5996 -25.5 -23.5996 -25.5zM357.5 173.5
c12.5996 33.0996 -3.59961 45.5 -3.59961 45.5s-23.4004 12.9004 -33.3008 -20.2002c-9.89941 -33.0996 -6.39941 -44.8994 -6.39941 -44.8994s30.7002 -13.4004 43.2998 19.5996zM442.1 188.1c0 0 15.7002 -1.09961 26.4004 14.2002s1.2998 25.5 1.2998 25.5
s-8.59961 11.1006 -19.5996 -9.09961c-11.1006 -20.1006 -8.10059 -30.6006 -8.10059 -30.6006z" />
    <glyph glyph-name="font-awesome-flag" unicode="&#xf425;" 
d="M444.373 88.5762c0 -7.16797 -6.14453 -10.2402 -13.3125 -13.3125c-28.6719 -12.2881 -59.3916 -23.5518 -92.1592 -23.5518c-46.0801 0 -67.584 28.6719 -122.88 28.6719c-39.9365 0 -81.9209 -14.3359 -115.713 -29.6953
c-2.04785 -1.02441 -4.0957 -1.02441 -6.14355 -2.04883v-77.8232c0 -21.4053 -16.1221 -34.8164 -33.792 -34.8164c-19.4561 0 -34.8164 15.3604 -34.8164 34.8164v374.783c-13.3115 10.2402 -22.5273 26.624 -22.5273 45.0566c0 31.7441 25.5996 57.3438 57.3438 57.3438
s57.3438 -25.5996 57.3438 -57.3438c0 -18.4326 -8.19141 -34.8164 -22.5273 -45.0566v-31.7432c4.12402 1.37402 58.7676 28.6719 114.688 28.6719c65.2705 0 97.6758 -27.6484 126.976 -27.6484c38.9121 0 81.9209 27.6484 92.1602 27.6484
c8.19238 0 15.3604 -6.14453 15.3604 -13.3125v-240.64z" />
    <glyph glyph-name="gitter" unicode="&#xf426;" horiz-adv-x="384" 
d="M66.4004 125.5h-50.4004v322.5h50.4004v-322.5zM166.9 371.9v-435.9h-50.4004v435.9h50.4004zM267.5 371.9v-435.9h-50.4004v435.9h50.4004zM368 372v-247h-50.4004v247h50.4004z" />
    <glyph glyph-name="hooli" unicode="&#xf427;" horiz-adv-x="640" 
d="M144.5 96v16c12.2998 -6.59961 25.0996 -12.2002 38.2998 -16.7998zM202.2 101.3c29.5 -10.7002 55.3994 -13.5 75.2998 -13.2998c-24.7998 -7 -58.2002 -5.2998 -94.7002 7.2002l19.4004 0.799805v5.2998zM611.1 216.5c-16 0 -28.8994 13 -28.8994 28.9004
c0 15.8994 13 24.5 28.8994 24.5c16 0 28.9004 -8.5 28.9004 -24.5s-13 -28.9004 -28.9004 -28.9004zM582.1 96v110.5h57.9004v-110.5h-57.9004zM508.4 96v168l57.8994 27.2998v-195.3h-57.8994zM477.4 215.4c18.0996 -18.1006 16.6992 -33.8008 16.7998 -52.6006
c0 -18.7002 1.39941 -34.2998 -16.7998 -52.5c-18.1006 -18.2002 -50.4004 -17.0996 -50.4004 -17.0996s-32.2002 -1.10059 -50.4004 17.0996c-18.1992 18.2002 -16.7998 33.7998 -16.7998 52.5s-1.39941 34.4004 16.7998 52.6006
c18.1006 18.1992 50.4004 17.0996 50.4004 17.0996s32.2002 1.09961 50.4004 -17.0996zM437.6 143.5v40.4004c0 8.7998 -7.2998 10.8994 -10.6992 10.8994c-3.40039 0 -10.7002 -2.2002 -10.7002 -10.8994v-40.4004c0 -3.59961 1.7998 -12.5 10.7002 -12.5
c8.89941 0 10.6992 8.90039 10.6992 12.5zM331.4 215.4c18.1992 -18.1006 16.6992 -33.8008 16.6992 -52.3008c0 -18.6992 1.5 -34.2998 -16.6992 -52.5c-18.1006 -18.1992 -50.4004 -17.0996 -50.4004 -17.0996s-32.2002 -1.09961 -50.4004 17.0996
c-18.1992 18.2002 -16.7998 33.8008 -16.7998 52.5c0 15.6006 -0.899414 29.1006 9.2998 43.7002c-16 11.7998 -58 37.4004 -99.8994 58.2998v-54.2998c8 13.7002 22.7002 22 38.5 21.9004c27.2002 0 40.5996 -18.7002 40.5996 -37.4004v-93.8994
c-20.3994 7.5 -39.7002 17.3994 -57.7002 29.5996v48.7002c0 8.09961 -1.5 15 -10.5996 15s-10.7998 -11.2998 -10.7998 -18.2002v-29.7998l-4.5 3.59961c-22.9004 18.9004 -40.2998 35.6006 -53.4004 50.2998v-31c11 -9.7998 23.6006 -20.1992 38.4004 -31.3994
c6.39941 -4.90039 12.8994 -9.40039 19.3994 -13.6006v-28.5996h-57.8994v73.7002c-86.7002 78 -61.7998 110.8 -61.7998 110.8c8.2998 18.2998 42.8994 22.2002 97.2998 0.0996094l22.5 10.6006v-20.7002c29.5996 -14.5996 63.8994 -31.5 102.1 -61.0996
c1.60059 2.09961 3.40039 4.09961 5.2998 6c18.2002 18.1992 50.4004 17.0996 50.4004 17.0996s32.2002 1.09961 50.4004 -17.0996zM65.2002 264l29.2002 13.7002c-26.9004 10.0996 -50.9004 13.5 -64.4004 2.09961c-3.7002 -3.09961 -13.5 -24.5996 35.2002 -79.0996
v63.2998zM291.7 143.5v40.4004c0 8.7998 -7.2998 10.8994 -10.7002 10.8994s-10.7002 -2.2002 -10.7002 -10.8994v-40.4004c0 -3.59961 1.7998 -12.5 10.7002 -12.5s10.7002 8.90039 10.7002 12.5z" />
    <glyph glyph-name="strava" unicode="&#xf428;" horiz-adv-x="384" 
d="M158.4 448l150.199 -292h-88.5l-61.6992 116.1l-62.2002 -116.1h-89.2002zM308.6 156h67.6006l-111.5 -220l-112.2 220h67.5996l44.6006 -88.2002z" />
    <glyph glyph-name="stripe" unicode="&#xf429;" horiz-adv-x="640" 
d="M165 303.3l0.0996094 -38.5h33.7002v-37.7998h-33.7002v-63.2002c0 -26.2002 28 -18 33.7002 -15.7002v-33.7998c-5.89941 -3.2002 -16.5996 -5.89941 -31.2002 -5.89941c-26.2998 0 -46.0996 17 -46.0996 43.2998l0.200195 142.399zM254.1 251.7
c10.4004 19.0996 31.1006 15.2002 37.1006 13.0996v-40.7998c-5.7002 1.7998 -23.4004 4.5 -33.9004 -9.2998v-103.101h-44.2998v153.2h38.4004zM346.4 324v-36.2002l-44.6006 -9.5v36.2002zM44.9004 219.7c0 -20 67.8994 -10.5 67.8994 -63.4004
c0 -32 -25.3994 -47.7998 -62.2998 -47.7998c-15.2998 0 -32 3 -48.5 10.0996v40c14.9004 -8.09961 33.9004 -14.1992 48.5996 -14.1992c9.90039 0 17 2.69922 17 10.8994c0 21.2002 -67.5 13.2002 -67.5 62.4004c0 31.3994 24 50.2002 60 50.2002
c14.7002 0 29.4004 -2.30078 44.1006 -8.10059v-41.7998c-13.5 7.2998 -30.7002 11.4004 -44.2002 11.4004c-9.2998 -0.100586 -15.0996 -2.80078 -15.0996 -9.7002zM640 186.4c0 -4.30078 -0.400391 -13.6006 -0.599609 -15.9004h-86.9004
c2 -20.7998 17.2002 -26.9004 34.5 -26.9004c17.5996 0 31.5 3.7002 43.5996 9.80078v-33.4004c-12.0996 -6.7002 -28 -11.5 -49.1992 -11.5c-43.2002 0 -73.5 24.7002 -73.5 78.2002c0 45.2002 25.6992 81.0996 67.8994 81.0996s64.2002 -35.8994 64.2002 -81.3994z
M552.1 203.2h45.9004c0 20 -11.5996 28.3994 -22.5 28.3994c-11.0996 0 -23.4004 -8.39941 -23.4004 -28.3994zM439.2 267.8c31.2002 0 60.5996 -28.0996 60.5 -79.7002c0 -56.3994 -29 -79.5996 -60.7998 -79.5996c-15.5 0 -25 6.5 -31.4004 11.2002l-0.0996094 -50.2002
l-44.4004 -9.40039v204.801h39.0996l2.30078 -11c6.19922 5.69922 17.3994 13.8994 34.7998 13.8994zM428.6 145.3c16.5 0 27.5 17.9004 27.4004 41.7998c0 23.2002 -11.2002 41.4004 -27.4004 41.4004c-10.1992 0 -16.5996 -3.7002 -21.1992 -8.7998l0.299805 -66
c4.2998 -4.60059 10.5 -8.40039 20.8994 -8.40039zM301.9 111.6v153.2h44.5996v-153.2h-44.5996z" />
    <glyph glyph-name="stripe-s" unicode="&#xf42a;" horiz-adv-x="384" 
d="M155.3 293.4c0 -64.2002 218 -33.7002 218 -203.9c0 -102.6 -81.7002 -153.6 -200.3 -153.6c-55.2773 0.125 -108.22 11.7861 -156 32.3994v128.5c47.9004 -26 108.9 -45.5 156.1 -45.5c31.8008 0 54.7002 8.5 54.7002 34.9004c0 68.0996 -216.8 42.5 -216.8 200.399
c0 101 77.0996 161.4 192.8 161.4c47.2998 0 94.5 -7.2002 141.8 -26.0996v-134.301c-43.3994 23.4004 -98.5 36.7002 -141.899 36.7002c-29.7998 0 -48.4004 -8.59961 -48.4004 -30.8994z" />
    <glyph glyph-name="typo3" unicode="&#xf42b;" 
d="M178.7 369.6c0 -66.3994 83.3994 -264.899 140.6 -264.899c6.90039 0 11.5 0 18.5 2.2998c-49.3994 -79.5 -110.399 -139 -146.7 -139c-77.2998 0 -184.1 234 -184.1 337.5c0 16.2998 3.90039 29.4004 9.2998 37.0996c27 32.4004 106.8 57.9004 176.3 66.4004
c-8.5 -7 -13.8994 -14.7002 -13.8994 -39.4004zM301.5 416c71.7998 0 138.8 -11.5996 138.8 -52.5c0 -82.5996 -52.5 -182.3 -78.7998 -182.3c-47.9004 0 -101.7 132.1 -101.7 198.5c0 30.8994 11.6006 36.2998 41.7002 36.2998z" />
    <glyph glyph-name="amazon-pay" unicode="&#xf42c;" horiz-adv-x="640" 
d="M14 122.7c2.2998 4.2002 5.2002 4.89941 9.7002 2.5c10.3994 -5.60059 20.5996 -11.4004 31.2002 -16.7002c39.8447 -19.8691 83.1084 -35.7148 127.399 -46.2998c20.5771 -4.96484 41.8789 -8.95996 63.2002 -11.7998
c26.4932 -3.56152 53.5293 -5.40039 80.9922 -5.40039c4.97266 0 9.06348 0.0800781 14.0078 0.200195c17.4004 0.399414 34.7998 1.7998 52.0996 3.7998c56.8682 6.62891 112.369 21.4697 163.301 42.7998c2.89941 1.2002 5.89941 2 9.09961 1.2002
c6.7002 -1.7998 9 -9 4.09961 -13.9004c-2.98828 -2.74707 -6.16797 -5.2002 -9.59961 -7.39941c-30.7002 -21.1006 -64.2002 -36.4004 -99.5996 -47.9004c-24.0801 -7.76074 -49.5137 -13.7686 -75.1006 -17.5996c-17.4854 -2.67871 -35.0918 -4.29395 -53.2002 -4.7998
c-0.847656 -0.0517578 -1.68066 -0.152344 -2.5 -0.300781h-21.0996c-0.818359 0.148438 -1.65234 0.249023 -2.5 0.300781c-3.59961 0.199219 -7.2002 0.299805 -10.7002 0.399414c-17.1182 0.776367 -33.8633 2.55957 -50.3994 5.2998
c-27.5244 4.48633 -54.7959 11.6387 -80.4004 20.9004c-54.1943 19.5449 -103.535 49.2734 -145.6 87c-1.80078 1.59961 -3 3.7998 -4.40039 5.7002v2zM172 382.9c2.7998 0 5.5 0 8.2998 -0.100586c3.2998 -0.5 6.60059 -0.799805 9.7998 -1.5
c21.3008 -4.39941 35.4004 -17.2998 43.9004 -36.8994c6.90039 -15.9004 8.59961 -32.7002 8.09961 -49.8008c-0.399414 -15.3994 -3.2998 -30.1992 -10.2998 -44.0996c-9.2002 -18.4004 -23.3994 -30.9004 -43.7998 -34.9004c-22.5 -4.39941 -43.0996 0.5 -61 15.4004
c-0.5 0.5 -1.09961 1 -2.2002 1.90039v-72.4004c0 -1 0 -2 -0.0996094 -3c-0.299805 -3 -2.10059 -5 -5 -5c-7 -0.0996094 -14.1006 -0.0996094 -21.1006 0c-2.89941 0.0996094 -4.69922 2 -4.89941 5c-0.100586 1 -0.100586 2 -0.100586 3v209.3
c0 6.90039 1.30078 8.2002 8.2002 8.2002h11.5c4.60059 0 6.90039 -2 7.60059 -6.59961c0.5 -2.7002 0.899414 -5.5 1.2998 -8.2002c0.0537109 -0.494141 0.193359 -0.970703 0.399414 -1.40039c2.5 1.90039 4.7002 3.7002 7.10059 5.40039
c10.8691 7.98535 23.957 13.3662 38 15.0996zM124.6 341c0.100586 -14.0996 0 -28 0 -42.0996c0 -14.1006 0.100586 -28.1006 0 -42.2002c-0.00585938 -0.0849609 -0.0126953 -0.165039 -0.0126953 -0.250977c0 -1.29102 0.686523 -2.42188 1.71289 -3.04883
c11.2002 -7.90039 23.4004 -13.3008 37.4004 -13.9004c20.2002 -0.900391 35.7998 7.2002 42.5996 28.5c3.2002 10 4 20.2002 4 30.5996c0 11.2002 -1 22.3008 -4.89941 33c-6.40039 17.5 -18.6006 24.8008 -33.5 25.9004
c-16.8008 1.2998 -31.9004 -3.7002 -45.6006 -13.2002c-1.02734 -0.605469 -1.71289 -1.7168 -1.71289 -2.99414c0 -0.103516 0.00390625 -0.205078 0.0126953 -0.305664zM330.3 382.9c4 0 8 0 11.9004 0.0996094c3.59961 -0.5 7.2002 -0.799805 10.7998 -1.2998
c7.7002 -1.10059 15.0996 -3.10059 21.7998 -7.10059c11.6006 -6.89941 17.1006 -17.5 19 -30.3994c0.597656 -3.93945 0.905273 -7.87793 0.905273 -11.9834c0 -0.305664 -0.00195312 -0.611328 -0.00488281 -0.916992v-106
c0.00292969 -0.157227 0.00488281 -0.282227 0.00488281 -0.44043c0 -0.794922 -0.0351562 -1.58203 -0.105469 -2.35938c-0.0742188 -2.59277 -2.19336 -4.67969 -4.7998 -4.7002c-5.39941 -0.0996094 -10.8994 -0.0996094 -16.2998 0
c-2.90039 0.100586 -4.7998 2.10059 -5.40039 5.2002c-0.699219 3.59961 -1.19922 7.2002 -1.7998 11c-0.583984 -0.296875 -1.11816 -0.665039 -1.59961 -1.09961c-11.7998 -9.7002 -25.2002 -16.1006 -40.2998 -18.4004c-13.1006 -2 -26 -1.2002 -37.9004 5.40039
c-12.4004 6.89941 -19.4004 17.6992 -21.4004 31.6992c-1.5 10.5 -0.799805 20.9004 3.90039 30.7002c6.09961 12.6006 16.5 20.4004 29.4004 24.9004c10.7998 3.7998 22 4.5 33.2998 3.89941c10.9355 -0.680664 21.6748 -2.35449 32 -4.89941
c0.399414 -0.100586 0.799805 0 1.2998 -0.100586c0.107422 0.453125 0.174805 0.921875 0.200195 1.40039c-0.100586 8.2998 0 16.5996 -0.299805 24.9004c-0.200195 5.89941 -1.60059 11.5996 -5.30078 16.3994c-4.19922 5.5 -10.2998 7.40039 -16.7998 8.40039
c-12.5 1.89941 -24.8994 0.899414 -37.2002 -1.40039c-7.89941 -1.5 -15.6992 -3.7002 -23.5 -5.7002c-4.69922 -1.19922 -6.69922 0.100586 -6.7998 4.90039c-0.0996094 3.2998 0.100586 6.59961 0 9.90039c-0.0996094 3.89941 1.7002 6.5 5.2998 7.69922
c5.90039 2 11.8008 4.2002 17.9004 5.80078c9.3125 2.27539 18.9932 3.68164 28.9004 4.09961c0.899414 0.0996094 1.89941 0.299805 2.89941 0.400391zM365.3 255.2c-0.0996094 4.7002 0.100586 9.2998 0.100586 14.0996s-0.100586 9.5 0 14.2998
c0 1.60059 -0.5 2.40039 -2.10059 2.60059c-8.39941 1.09961 -16.5996 2.7002 -25 3.39941c-2.34766 0.273438 -4.66895 0.400391 -7.08984 0.400391c-6.15625 0 -12.1016 -0.90918 -17.71 -2.59961c-8 -2.60059 -13.9004 -7.30078 -16.4004 -15.6006
c-0.914062 -3.01953 -1.40527 -6.22168 -1.40527 -9.53906c0 -3.43457 0.527344 -6.74707 1.50586 -9.86035c1.77637 -6.16602 6.41895 -11.1133 12.3994 -13.3008c5.40039 -2.19922 11.1006 -2.39941 16.8008 -1.7998c13.8994 1.40039 26.1992 6.7998 37.3994 14.9004
c0.90918 0.594727 1.50684 1.61719 1.50684 2.7832c0 0.0732422 -0.00195312 0.145508 -0.00683594 0.216797zM625.2 125.8v-17.2998c-0.700195 -3.59961 -1.2998 -7.2998 -2.10059 -10.9004c-4.39941 -20.2998 -11.8994 -39.1992 -24.6992 -55.5996
c-3.97559 -4.76562 -8.1582 -9.17773 -12.7002 -13.4004c-1.33008 -1.21289 -2.98242 -2.09082 -4.7998 -2.5c-2.90039 -0.699219 -4.60059 1.2002 -4.10059 4.10059c0.243164 1.03027 0.584961 2.04785 1 3c5.7998 14.7998 11.7002 29.7002 15.7998 45.0996
c2.10059 7.60059 3.90039 15.2998 3.5 23.2998c-0.199219 5.2002 -2.5 9 -7.59961 10.4004c-4.60352 1.3623 -9.46191 2.29004 -14.4004 2.7002c-11.3994 0.899414 -22.8994 0.200195 -34.2998 -0.900391c-7.7998 -0.799805 -15.5 -1.7002 -23.2998 -2.5
c-0.607422 -0.0693359 -1.20215 -0.104492 -1.82715 -0.104492c-0.125 0 -0.249023 0.00195312 -0.373047 0.00488281c-1.5 -0.100586 -3.2002 0.299805 -3.59961 1.7998c-0.129883 0.450195 -0.197266 0.930664 -0.197266 1.42285
c0 0.939453 0.253906 1.82031 0.697266 2.57715c1.00879 1.39258 2.25 2.56836 3.7002 3.5c12.0996 8.2998 25.6992 12.9004 40 15.5996c8.68945 1.59961 17.376 2.43945 26.5254 2.43945c4.26953 0 8.49707 -0.182617 12.6738 -0.539062
c7.24512 -0.454102 14.3311 -1.80273 21 -3.90039c4.30078 -1.39941 8.10059 -3.2998 9.10059 -8.2998zM493.1 249c0.300781 -0.700195 0.501953 -1.2998 0.902344 -2.40039c2.59961 7.7002 5.2002 15 7.7002 22.2002l34.7998 100
c0.5 1.40039 1.09961 2.7002 1.59961 4.10059c0.980469 3.02734 3.81543 5.21777 7.16699 5.21777c0.179688 0 0.357422 -0.00585938 0.533203 -0.0185547c6.60059 0 13.2998 0.100586 19.9004 0c2.7998 0 4.09961 -1.59961 3.7002 -4.39941
c-0.335938 -1.89648 -0.884766 -3.76465 -1.60059 -5.5c-23.3662 -59.9336 -46.8994 -119.801 -70.5996 -179.601c-2.58691 -6.37598 -5.6875 -12.5654 -9.2002 -18.3994c-8.7998 -14.9004 -22.4004 -21.7998 -39.5 -21.4004c-5.7666 0.225586 -11.3984 0.905273 -16.9004 2
c-5.39941 0.900391 -7.2998 3.40039 -7.39941 8.90039c-0.100586 3.2666 -0.100586 6.56641 0 9.89941c0.0996094 3.5 1.7998 5 5.2002 4.80078c2.5 -0.200195 5 -0.800781 7.5 -1c1.57227 -0.178711 3.11328 -0.264648 4.7334 -0.264648
c3.68457 0 7.25879 0.473633 10.666 1.36426c7.2002 1.90039 12.2002 6.7998 15.2002 13.2998c3.40039 7.2998 6 15 9.2998 22.2998c1.90039 4.2002 1.5 7.7002 -0.200195 11.8008c-19.7998 48.5 -39.5 97 -59.1006 145.5
c-0.770508 1.95117 -1.41797 4.02051 -1.90039 6.09961c-0.5 2.5 0.700195 4.5 3.2002 4.5c7.7002 0.0996094 15.2998 0 22.9004 -0.0996094c3.2002 0 5.2998 -1.90039 6.39941 -4.80078c2.10059 -5.59961 4.30078 -11.1992 6.30078 -16.8994
c12.8994 -35.7666 25.7988 -71.5 38.6982 -107.2z" />
    <glyph glyph-name="cc-amazon-pay" unicode="&#xf42d;" horiz-adv-x="576" 
d="M124.7 246.2c0.0996094 11.7998 0 23.5 0 35.2998v35.2998c0 1.2998 0.399414 2 1.39941 2.7002c11.5 8 24.1006 12.0996 38.2002 11.0996c12.5 -0.899414 22.7002 -7 28.1006 -21.6992c3.2998 -8.90039 4.09961 -18.2002 4.09961 -27.7002
c0 -8.7002 -0.700195 -17.2998 -3.40039 -25.6006c-5.69922 -17.7998 -18.6992 -24.6992 -35.6992 -23.8994c-11.7002 0.5 -21.9004 5 -31.4004 11.7002c-0.900391 0.799805 -1.40039 1.59961 -1.2998 2.7998zM279.6 231.6c-5.19922 2 -8.7998 5.7002 -10.3994 11.2002
c-1.7002 5.40039 -1.7002 10.7998 -0.100586 16.2002c2 6.90039 7 10.9004 13.7002 13.0996c6.7998 2.2002 13.7998 2.5 20.7998 1.90039c7 -0.700195 13.9004 -2 20.9004 -2.90039c1.40039 -0.199219 1.7998 -0.799805 1.7998 -2.19922c-0.0996094 -4 0 -8 0 -12
c0 -3.90039 -0.0996094 -7.90039 0 -11.8008c0 -1.19922 -0.399414 -1.89941 -1.2998 -2.5c-9.40039 -6.7998 -19.7002 -11.2998 -31.2998 -12.5c-4.7998 -0.5 -9.5 -0.299805 -14.1006 1.5zM576 368v-352c0 -26.5 -21.5 -48 -48 -48h-480c-26.5 0 -48 21.5 -48 48v352
c0 26.5 21.5 48 48 48h480c26.5 0 48 -21.5 48 -48zM368.5 344.1c0.400391 -1.69922 0.900391 -3.39941 1.59961 -5.09961c16.5 -40.5996 32.9004 -81.2998 49.5 -121.9c1.40039 -3.5 1.7002 -6.39941 0.200195 -9.89941
c-2.7998 -6.2002 -4.89941 -12.6006 -7.7998 -18.7002c-2.59961 -5.5 -6.7002 -9.5 -12.7002 -11.2002c-4.2002 -1.09961 -8.5 -1.2998 -12.8994 -0.899414c-2.10059 0.199219 -4.2002 0.699219 -6.30078 0.799805c-2.7998 0.200195 -4.19922 -1.10059 -4.2998 -4
c-0.0996094 -2.7998 -0.0996094 -5.60059 0 -8.2998c0.100586 -4.60059 1.60059 -6.7002 6.2002 -7.5c4.7002 -0.800781 9.40039 -1.60059 14.2002 -1.7002c14.2998 -0.299805 25.7002 5.39941 33.0996 17.8994c2.90039 4.90039 5.60059 10.1006 7.7002 15.4004
c19.7998 50.0996 39.5 100.3 59.2002 150.5c0.599609 1.5 1.09961 3 1.2998 4.59961c0.400391 2.40039 -0.700195 3.60059 -3.09961 3.7002c-5.60059 0.100586 -11.1006 0 -16.7002 0c-3.10059 0 -5.2998 -1.39941 -6.40039 -4.2998
c-0.399414 -1.09961 -0.899414 -2.2998 -1.2998 -3.40039l-29.0996 -83.6992c-2.10059 -6.10059 -4.2002 -12.1006 -6.5 -18.6006c-0.400391 0.900391 -0.600586 1.40039 -0.800781 1.90039c-10.7998 29.8994 -21.5996 59.8994 -32.3994 89.7998
c-1.7002 4.7002 -3.5 9.5 -5.2998 14.2002c-0.900391 2.5 -2.7002 4 -5.40039 4c-6.40039 0.0996094 -12.7998 0.200195 -19.2002 0.0996094c-2.2002 0 -3.2998 -1.59961 -2.7998 -3.7002zM242.4 242c1.69922 -11.7002 7.59961 -20.7998 18 -26.5996
c9.89941 -5.5 20.6992 -6.2002 31.6992 -4.60059c12.7002 1.90039 23.9004 7.2998 33.8008 15.5c0.399414 0.299805 0.799805 0.600586 1.39941 1c0.5 -3.2002 0.900391 -6.2002 1.5 -9.2002c0.5 -2.59961 2.10059 -4.2998 4.5 -4.39941
c4.60059 -0.100586 9.10059 -0.100586 13.7002 0c2.2998 0.0996094 3.7998 1.59961 4 3.89941c0.0996094 0.800781 0.0996094 1.60059 0.0996094 2.30078v88.7998c0 3.59961 -0.199219 7.2002 -0.699219 10.7998c-1.60059 10.7998 -6.2002 19.7002 -15.9004 25.4004
c-5.59961 3.2998 -11.7998 5 -18.2002 5.89941c-3 0.400391 -6 0.700195 -9.09961 1.10059h-10c-0.799805 -0.100586 -1.60059 -0.300781 -2.5 -0.300781c-8.2002 -0.399414 -16.2998 -1.39941 -24.2002 -3.5c-5.09961 -1.2998 -10 -3.19922 -15 -4.89941
c-3 -1 -4.5 -3.2002 -4.40039 -6.5c0.100586 -2.7998 -0.0996094 -5.60059 0 -8.2998c0.100586 -4.10059 1.80078 -5.2002 5.7002 -4.10059c6.5 1.7002 13.1006 3.5 19.7002 4.7998c10.2998 1.90039 20.7002 2.7002 31.0996 1.2002
c5.40039 -0.799805 10.5 -2.39941 14.1006 -7c3.09961 -4 4.2002 -8.7998 4.39941 -13.7002c0.300781 -6.89941 0.200195 -13.8994 0.300781 -20.7998c0 -0.399414 -0.100586 -0.700195 -0.200195 -1.2002c-0.400391 0 -0.799805 0 -1.10059 0.100586
c-8.7998 2.09961 -17.6992 3.59961 -26.7998 4.09961c-9.5 0.5 -18.8994 -0.0996094 -27.8994 -3.2002c-10.8008 -3.7998 -19.5 -10.2998 -24.6006 -20.7998c-4.09961 -8.2998 -4.59961 -17 -3.39941 -25.7998zM98.7002 341.1v-175.3c0 -0.799805 0 -1.7002 0.0996094 -2.5
c0.200195 -2.5 1.7002 -4.09961 4.10059 -4.2002c5.89941 -0.0996094 11.7998 -0.0996094 17.6992 0c2.5 0 4 1.7002 4.10059 4.10059c0.0996094 0.799805 0.0996094 1.7002 0.0996094 2.5v60.7002c0.900391 -0.700195 1.40039 -1.2002 1.90039 -1.60059
c15 -12.5 32.2002 -16.5996 51.0996 -12.8994c17.1006 3.39941 28.9004 13.8994 36.7002 29.1992c5.7998 11.6006 8.2998 24.1006 8.7002 37c0.5 14.3008 -1 28.4004 -6.7998 41.7002c-7.10059 16.4004 -18.9004 27.2998 -36.7002 30.9004
c-2.7002 0.599609 -5.5 0.799805 -8.2002 1.2002h-7c-1.2002 -0.200195 -2.40039 -0.300781 -3.59961 -0.5c-11.7002 -1.40039 -22.3008 -5.80078 -31.8008 -12.7002c-2 -1.40039 -3.89941 -3 -5.89941 -4.5c-0.100586 0.5 -0.299805 0.799805 -0.400391 1.2002
c-0.399414 2.2998 -0.700195 4.59961 -1.09961 6.89941c-0.600586 3.90039 -2.5 5.5 -6.40039 5.60059h-9.7002c-5.89941 0.0996094 -6.89941 -1 -6.89941 -6.80078zM493.6 109c-2.69922 0.700195 -5.09961 0 -7.59961 -1c-43.9004 -18.4004 -89.5 -30.2002 -136.8 -35.7998
c-14.5 -1.7002 -29.1006 -2.7998 -43.7002 -3.2002c-26.5996 -0.700195 -53.2002 0.799805 -79.5996 4.2998c-17.8008 2.40039 -35.5 5.7002 -53 9.90039c-37 8.89941 -72.7002 21.7002 -106.7 38.7998c-8.7998 4.40039 -17.4004 9.2998 -26.1006 14
c-3.7998 2.09961 -6.19922 1.5 -8.19922 -2.09961v-1.7002c1.19922 -1.60059 2.19922 -3.40039 3.69922 -4.7998c36 -32.2002 76.6006 -56.5 122 -72.9004c21.9004 -7.90039 44.4004 -13.7002 67.3008 -17.5c14 -2.2998 28 -3.7998 42.1992 -4.5
c3 -0.0996094 6 -0.200195 9 -0.400391c0.700195 0 1.40039 -0.199219 2.10059 -0.299805h17.7002c0.699219 0.100586 1.39941 0.299805 2.09961 0.299805c14.9004 0.400391 29.7998 1.80078 44.5996 4c21.4004 3.2002 42.4004 8.10059 62.9004 14.7002
c29.5996 9.60059 57.7002 22.4004 83.4004 40.1006c2.7998 1.89941 5.69922 3.7998 8 6.19922c4.2998 4.40039 2.2998 10.4004 -3.30078 11.9004zM544 136.7c-0.799805 4.2002 -4 5.7998 -7.59961 7c-5.7002 1.89941 -11.6006 2.7998 -17.6006 3.2998
c-11 0.900391 -22 0.400391 -32.7998 -1.59961c-12 -2.2002 -23.4004 -6.10059 -33.5 -13.1006c-1.2002 -0.799805 -2.40039 -1.7998 -3.09961 -3c-0.600586 -0.899414 -0.700195 -2.2998 -0.5 -3.39941c0.299805 -1.30078 1.69922 -1.60059 3 -1.5
c0.599609 0 1.19922 0 1.7998 0.0996094l19.5 2.09961c9.59961 0.900391 19.2002 1.5 28.7998 0.800781c4.09961 -0.300781 8.09961 -1.2002 12 -2.2002c4.2998 -1.10059 6.2002 -4.40039 6.40039 -8.7002c0.299805 -6.7002 -1.2002 -13.0996 -2.90039 -19.5
c-3.5 -12.9004 -8.2998 -25.4004 -13.2998 -37.7998c-0.299805 -0.799805 -0.700195 -1.7002 -0.799805 -2.5c-0.400391 -2.5 1 -4 3.39941 -3.5c1.40039 0.299805 3 1.09961 4 2.09961c3.7002 3.60059 7.5 7.2002 10.6006 11.2002
c10.6992 13.7998 17 29.5996 20.6992 46.5996c0.700195 3 1.2002 6.10059 1.7002 9.10059c0.200195 4.7002 0.200195 9.59961 0.200195 14.5z" />
    <glyph glyph-name="ethereum" unicode="&#xf42e;" horiz-adv-x="320" 
d="M311.9 187.2l-151.9 -92.7998l-152 92.7998l152 260.8zM160 64.5996l152 92.8008l-152 -221.4l-152 221.4z" />
    <glyph glyph-name="korvue" unicode="&#xf42f;" horiz-adv-x="446" 
d="M386.5 414c32.7002 0 59.5 -26.7998 59.5996 -59.5v-327c0 -32.7002 -26.5 -59.5 -59.5 -59.5h-327.1c-32.7002 0 -59.5 26.7998 -59.5 59.4004v327.1c0 32.7002 26.7998 59.5 59.5 59.5h327zM87.0996 327.2v-132h187.5l81.2002 132h-110.899l-61.8008 -116v116h-96z
M248.9 55.0996h118.399l-88.5996 130.801h-191.5v-130.801h96v113.601z" />
    <glyph glyph-name="elementor" unicode="&#xf430;" 
d="M425.6 416c12.4004 0 22.4004 -10 22.4004 -22.4004v-403.199c0 -12.4004 -10 -22.4004 -22.4004 -22.4004h-403.199c-12.4004 0 -22.4004 10 -22.4004 22.4004v403.199c0 12.4004 10 22.4004 22.4004 22.4004h403.199zM164.3 92.5v199h-39.7998v-199h39.7998z
M323.6 92.5v39.7998h-119.5v-39.7998h119.5zM323.6 172.1v39.8008h-119.5v-39.8008h119.5zM323.6 251.8v39.7998h-119.5v-39.7998h119.5z" />
    <glyph glyph-name="youtube-square" unicode="&#xf431;" 
d="M186.8 245.9l95.2002 -54.1006l-95.2002 -54.0996v108.2zM448 368v-352c0 -26.5 -21.5 -48 -48 -48h-352c-26.5 0 -48 21.5 -48 48v352c0 26.5 21.5 48 48 48h352c26.5 0 48 -21.5 48 -48zM406 191.7c0 0 0 59.5996 -7.59961 88.2002
c-4.2002 15.7998 -16.5 28.1992 -32.2002 32.3994c-28.2998 7.7002 -142.2 7.7002 -142.2 7.7002s-113.9 0 -142.2 -7.7002c-15.7002 -4.2002 -28 -16.5996 -32.2002 -32.3994c-7.59961 -28.5 -7.59961 -88.2002 -7.59961 -88.2002s0 -59.6006 7.59961 -88.2002
c4.2002 -15.7998 16.5 -27.7002 32.2002 -31.9004c28.2998 -7.59961 142.2 -7.59961 142.2 -7.59961s113.9 0 142.2 7.7002c15.7002 4.2002 28 16.0996 32.2002 31.8994c7.59961 28.5 7.59961 88.1006 7.59961 88.1006z" />
    <glyph glyph-name="flipboard" unicode="&#xf44d;" 
d="M0 416h448v-448h-448v448zM358.4 236.8v89.6006h-268.801v-268.801h89.6006v89.6006h89.5996v89.5996h89.6006z" />
    <glyph glyph-name="hips" unicode="&#xf452;" horiz-adv-x="640" 
d="M251.6 290.4v-201.801c0 -1.89941 -0.899414 -2.7998 -2.7998 -2.7998h-40.8994c-1.60059 0 -2.7002 1.40039 -2.7002 2.7998v201.801c0 1.39941 1.09961 2.7998 2.7002 2.7998h40.8994c1.90039 0 2.7998 -0.900391 2.7998 -2.7998zM156.5 280
c18.7002 -13.5 28 -31.9004 28 -55.2998v-136.101c0 -1.89941 -0.900391 -2.7998 -2.7002 -2.7998h-27.2998c-9.09961 0 -16.4004 7.2998 -16.4004 16.2998v122.601c0 0.899414 2.7002 27 -45.7998 27c-48.5996 0 -45.7998 -26.2002 -45.7998 -27v-136.101
c0 -1.89941 -0.900391 -2.7998 -2.7998 -2.7998h-41c-1.7998 0 -2.7002 0.900391 -2.7002 2.7998v279.2c0 1.7998 0.900391 2.7002 2.7002 2.7002h40.8994c1.90039 0 2.80078 -0.900391 2.80078 -2.7002v-81.2002c15.1992 7.7002 31.6992 11.5 49.7998 11.4004
c24 -0.0996094 44.2002 -6.2002 60.2998 -18zM634.9 169.9c5.5 -12.6006 6.59961 -25.6006 3.09961 -39.1006c-9.59961 -36.8994 -44.9004 -45.5 -45.5996 -45.7998c-10.5 -3.09961 -23.6006 -4.2998 -36.3008 -4.2998c-16.5996 0 -32.5996 2.7002 -48.1992 8.2002
c-9.7002 3.39941 -14.6006 10.2998 -14.6006 20.6992v34.4004c0 2.09961 2.2998 3.7002 4.40039 2.2998c13.7002 -10.2002 34.0996 -19.0996 58.3994 -19.0996c23.3008 0 32.8008 4.5 36.5 13.5996c3 7.90039 -0.599609 16.1006 -12.1992 21.2002l-53.6006 23.5
c-21.3994 9.40039 -33.7998 24 -37.2002 43.5996c-5.69922 33.7002 22.2002 53.3008 22.7002 53.7002c13.2002 9.60059 32 15.4004 58.5 15.4004c19 0 37.4004 -3.2998 55.1006 -9.90039c1.2998 -0.5 1.89941 -1.2998 1.89941 -2.59961v-44.7002
c0 -2.09961 -2.2998 -3.40039 -4 -2.40039c-39.7002 20.7002 -76.5996 12.3008 -84 6.80078c-6.59961 -4.90039 -6 -12.5 2.60059 -16.1006l57.5996 -25.2998c16.5 -7.09961 28.0996 -18.4004 34.9004 -34.0996zM376.2 298.2c60.3994 0 108.7 -48.2998 108.6 -108.601
c0 -60.1992 -48.2002 -108.699 -108.7 -108.699c-21.8994 0 -41.1992 6.39941 -57.6992 19.0996v-88.7998c0 -1.7998 -0.900391 -2.7002 -2.80078 -2.7002h-40.8994c-2.10059 0 -2.7002 1.90039 -2.7002 2.7002v183.5c0 83.3994 72.5 103.5 104.2 103.5zM376.2 127.3
c34.8994 0 62.2998 27.9004 62.2002 62.2002c0 34.5996 -27.7002 62.2002 -62.2002 62.2002c-34.6006 0 -62.2002 -27.7002 -62.2002 -62.2002c0 -17.2002 6 -31.7998 18.2002 -44c12.0996 -12.0996 26.7998 -18.2002 44 -18.2002zM228.3 375.5
c15.9004 0 28.9004 -12.7002 28.9004 -28.9004c0 -15.7998 -12.7002 -28.8994 -28.9004 -28.8994s-28.8994 13.2998 -28.8994 28.8994c0.0996094 16 13 28.9004 28.8994 28.9004z" />
    <glyph glyph-name="php" unicode="&#xf457;" horiz-adv-x="640" 
d="M320 343.5c-171.3 0 -303.2 -72.2002 -303.2 -151.5s131.8 -151.5 303.2 -151.5c171.3 0 303.2 72.2002 303.2 151.5s-131.8 151.5 -303.2 151.5zM320 360.3c176.7 0 320 -75.2998 320 -168.3s-143.3 -168.3 -320 -168.3s-320 75.2998 -320 168.3s143.3 168.3 320 168.3z
M218.2 205.5c7.39941 38.4004 -18.4004 34.2998 -56.4004 34.2998l-13.7002 -70.5996c34.3008 0 62.2002 -4.2002 70.1006 36.2998zM97.4004 97.7002l32.6992 168.7h70.7002c21.2002 0 36.7998 -5.5 46.5 -16.7002c18.6006 -21.4004 11.7998 -64.1006 -14.2998 -88.1006
c-23.5996 -22.0996 -49.0996 -19.0996 -90.2002 -19.0996l-8.7002 -44.7998h-36.6992zM283.1 311.3h36.5l-8.69922 -44.7998c31.5 0 60.6992 2.2998 74.7998 -10.7002c14.7998 -13.5996 7.7002 -31 -8.2998 -113.1h-37c15.3994 79.3994 18.2998 86 12.6992 92
c-5.39941 5.7998 -17.6992 4.59961 -47.3994 4.59961l-18.7998 -96.5996h-36.5zM505 205.5c7.40039 38.4004 -18.2002 34.2998 -56.4004 34.2998l-13.6992 -70.5996c33.3994 0 62.0996 -4.7998 70.0996 36.2998zM384.2 97.7002l32.7998 168.7h70.7002
c21.2002 0 36.7998 -5.5 46.5 -16.7002c18.5996 -21.4004 11.7998 -64.1006 -14.2998 -88.1006c-23.1006 -21.5996 -47 -19.0996 -90.2002 -19.0996l-8.7002 -44.7998h-36.7998z" />
    <glyph glyph-name="quinscape" unicode="&#xf459;" horiz-adv-x="512" 
d="M313.6 -26.5996c4.40039 -4.40039 8.10059 -9 13.3008 -12.5c-21.7051 -6.54492 -44.666 -10.1084 -68.4922 -10.1084c-0.636719 0 -1.27246 0.00292969 -1.9082 0.0078125c-135 0 -244.5 109.5 -244.5 244.601c0 135.1 109.4 244.6 244.5 244.6
s244.6 -109.5 244.6 -244.6c0 -35.3008 -6.89941 -67.4004 -20.2998 -97.7002c-3 5.7002 -7.2002 10.2002 -11.2002 15.2998c11.2002 93.5 -62.0996 176.6 -157 176.6c-87.2578 0 -158.1 -70.8418 -158.1 -158.1s70.8418 -158.1 158.1 -158.1h1zM313.5 -26.5
l0.400391 -0.0996094zM391.9 142.4c54.7393 0 99.1992 -44.4414 99.1992 -99.1797v-0.0205078c0 -54.75 -44.4492 -99.2002 -99.1992 -99.2002s-99.2002 44.4502 -99.2002 99.2002s44.4502 99.2002 99.2002 99.2002z" />
    <glyph glyph-name="readme" unicode="&#xf4d5;" horiz-adv-x="576" 
d="M528.3 401.5c26.4004 -0.200195 47.7002 -21.7002 47.7002 -48.0996v-245.7c0 -26.5 -21.5 -48 -48 -48h-89.7002c-102.1 0 -132.6 -24.4004 -147.3 -75c-0.799805 -2.7998 -5.2998 -2.7998 -6 0c-14.5996 50.5996 -45.0996 75 -147.3 75h-89.7002
c-26.5 0 -48 21.5 -48 48v245.8c0 26.5 21.5 48 48 48h139.7c48.0996 0 89.7998 -33.2998 100.399 -80.2998c10.5 47 52.3008 80.2998 100.4 80.2998h139.8zM242 136.1h0.0996094v22.9004c0 2 -1.59961 3.5 -3.5 3.5h-160.399c-2 0 -3.5 -1.59961 -3.5 -3.5v-22.9004
c0 -2 1.59961 -3.5 3.5 -3.5h160.3c2 0 3.5 1.60059 3.5 3.5zM242 197h0.0996094v22.9004c0 2 -1.59961 3.5 -3.5 3.5h-160.399c-2 0 -3.5 -1.60059 -3.5 -3.5v-22.9004c0 -2 1.59961 -3.5 3.5 -3.5h160.3c2 0 3.5 1.59961 3.5 3.5zM242 257.9h0.0996094v22.8994
c0 2 -1.59961 3.5 -3.5 3.5h-160.399c-2 0 -3.5 -1.59961 -3.5 -3.5v-22.8994c0 -2 1.59961 -3.5 3.5 -3.5h160.3c2 0 3.5 1.59961 3.5 3.5zM501.3 136.2h0.100586v22.8994c0 2 -1.60059 3.5 -3.5 3.5h-160.4c-2 0 -3.5 -1.59961 -3.5 -3.5v-22.8994
c0 -2 1.59961 -3.5 3.5 -3.5h160.3c2 0 3.5 1.59961 3.5 3.5zM501.3 197.1h0.100586v22.9004c0 2 -1.60059 3.5 -3.5 3.5h-160.4c-2 0 -3.5 -1.59961 -3.5 -3.5v-22.9004c0 -2 1.59961 -3.5 3.5 -3.5h160.3c2 0 3.5 1.60059 3.5 3.5zM501.3 258h0.100586v22.7998
c0 2 -1.60059 3.5 -3.5 3.5h-160.4c-2 0 -3.5 -1.59961 -3.5 -3.5v-22.7998c0 -2 1.59961 -3.5 3.5 -3.5h160.3c2 0 3.5 1.59961 3.5 3.5z" />
    <glyph glyph-name="java" unicode="&#xf4e4;" horiz-adv-x="384" 
d="M277.74 135.1c-94.5 -24.8994 -277 -13.2998 -224.5 12.1006c44.5 21.3994 80.5996 19 80.5996 19s-93.0996 -22.1006 -33 -30.1006c25.4004 -3.39941 76 -2.59961 123.101 1.30078c38.5 3.19922 77.1992 10.1992 77.1992 10.1992s-13.5996 -5.7998 -23.3994 -12.5z
M192.34 167.2c-48.5 43.7998 -84.0996 82.2998 -60.2002 118.2c35.1006 52.5 132.2 78.0996 110.7 162.6c0 0 53.1602 -53.2002 -50.5 -135c-83.0996 -65.5996 -19 -103.1 0 -145.8zM306.94 343.4c-111.601 -64.7002 -91 -83.5 -64.1006 -121.301
c28.7998 -40.5 -33.8994 -72.8994 -33.8994 -72.8994s31.1992 25.5996 6.5 54c-83.7002 96.3994 91.5996 140.2 91.5 140.2zM300.84 72.9004c96.1006 49.8994 51.6006 97.8994 20.6006 91.3994c-3.75195 -0.703125 -7.4834 -1.72656 -11 -3
c2.01367 2.86523 4.85742 5.07227 8.19922 6.2998c61.3008 21.6006 108.5 -63.5996 -19.7998 -97.2998c0.78125 0.773438 1.44922 1.63965 2 2.60059zM348 10.5996c53 -23.8994 -115.16 -72 -319.4 -38.7998c-74.8994 12.1006 36.1006 54.5 56.4004 40.2002
c0 0 -6.5 0.400391 -17.7002 -2c-10.7998 -2.2998 -45.0996 -13.4004 -26.7998 -21.2998c50.7998 -22.1006 233.7 -16.7998 291.6 0.700195c30.4004 9.2998 15.9004 21.1992 15.9004 21.1992zM124.44 52c0 0 -19.6006 -11.4004 13.8994 -15.2002
c40.6006 -4.59961 61.2998 -4 106 4.5c8.91016 -5.33594 18.4062 -9.99512 28.2002 -13.7998c-100.2 -42.9004 -226.8 2.5 -148.1 24.5zM304.24 -45.2002c69.7998 13.2002 76.2002 29.7002 76.2002 29.7002c-3.30078 -43.5996 -144.9 -52.7998 -237.101 -46.9004
c-60.5996 3.90039 -72.3994 13.7002 -72.3994 13.6006c57.5 -9.5 154.6 -11.2002 233.3 3.59961zM260.64 95c6.01562 -5.61719 13.1807 -10.0039 21.1006 -12.7998c-121.3 -35.5 -256.3 -2.90039 -169.5 25.8994c0 0 -21.9004 -16.1992 11.5996 -19.6992
c43.2998 -4.5 77.6006 -4.80078 136.8 6.59961z" />
    <glyph glyph-name="pied-piper-hat" unicode="&#xf4e5;" horiz-adv-x="640" 
d="M640 423.1c-80.7998 -53.5996 -89.4004 -92.5 -96.4004 -104.399c-6.69922 -12.2002 -11.6992 -60.2998 -23.2998 -83.6006c-11.7002 -23.5996 -54.2002 -42.1992 -66.0996 -50c-11.7002 -7.7998 -28.2998 -38.0996 -41.9004 -64.1992
c-108.1 4.39941 -167.399 -38.8008 -259.2 -93.6006c29.4004 9.7002 43.3008 16.7002 43.3008 16.7002c94.1992 36 139.3 68.2998 281.1 49.2002c1.09961 0 1.90039 -0.600586 2.7998 -0.799805c3.90039 -2.2002 5.2998 -6.90039 3.10059 -10.8008l-53.9004 -95.7998
c-2.5 -4.7002 -7.7998 -7.2002 -13.0996 -6.09961c-126.801 23.7998 -226.9 -17.2998 -318.9 -18.6006c-73.4004 -1.09961 -97.5 33.5 -97.5 35.1006c0 1.09961 0.599609 1.7002 1.7002 1.7002c0 0 38.2998 0 103.1 15.2998c73.6006 140.3 139.2 189.399 210.601 189.399
c0 0 71.6992 0 90.5996 -61.8994c22.7998 39.7002 28.2998 49.2002 28.2998 49.2002c5.2998 9.39941 35 77.1992 86.4004 141.399c51.5 64 90.3994 79.9004 119.3 91.7998z" />
    <glyph glyph-name="creative-commons-by" unicode="&#xf4e7;" horiz-adv-x="496" 
d="M314.9 253.6v-101.399h-28.3008v-120.5h-77.0996v120.399h-28.2998v101.5c0 4.40039 1.59961 8.2002 4.59961 11.3008c3.10059 3.09961 6.90039 4.69922 11.2998 4.69922h101.9c4.09961 0 7.7998 -1.59961 11.0996 -4.69922
c3.10059 -3.2002 4.80078 -6.90039 4.80078 -11.3008zM213.4 317.3c0 23.2998 11.5 35 34.5 35s34.5 -11.7002 34.5 -35c0 -23 -11.5 -34.5 -34.5 -34.5s-34.5 11.5 -34.5 34.5zM247.6 440c141.801 0 248.4 -110.1 248.4 -248c0 -147.1 -118.5 -248 -248.4 -248
c-134 0 -247.6 109.5 -247.6 248c0 132.9 104.7 248 247.6 248zM248.4 395.3c-118.2 0 -203.7 -97.8994 -203.7 -203.3c0 -109.8 91.2002 -202.8 203.7 -202.8c103.199 0 202.8 81.0996 202.8 202.8c0.0996094 113.8 -90.2002 203.3 -202.8 203.3z" />
    <glyph glyph-name="creative-commons-nc" unicode="&#xf4e8;" horiz-adv-x="496" 
d="M247.6 440c139.801 0 248.4 -107.9 248.4 -248c0 -147.2 -118.5 -248 -248.4 -248c-134.5 0 -247.6 110.8 -247.6 248c0 132.9 104.7 248 247.6 248zM55.7998 258.9c-7.39941 -20.4004 -11.0996 -42.7002 -11.0996 -66.9004c0 -110.9 92.0996 -202.4 203.7 -202.4
c122.399 0 177.199 101.801 178.5 104.101l-93.4004 41.5996c-7.7002 -37.0996 -41.2002 -53 -68.2002 -55.3994v-38.1006h-28.7998v38.2002c-27.5 0.299805 -52.5996 10.2002 -75.2998 29.7002l34.0996 34.5c31.7002 -29.4004 86.4004 -31.7998 86.4004 2.2002
c0 6.19922 -2.2002 11.1992 -6.60059 15.0996c-14.1992 6 -1.7998 0.0996094 -219.3 97.4004zM248.4 395.7c-38.4004 0 -112.4 -8.7002 -170.5 -93l94.7998 -42.5c10 31.2998 40.3994 42.8994 63.7998 44.2998v38.0996h28.7998v-38.0996
c22.7002 -1.2002 43.4004 -8.90039 62 -23l-32.2998 -33.2002c-42.7002 29.9004 -83.5 8 -70 -11.0996c53.4004 -24.1006 43.7998 -19.7998 93 -41.6006l127.1 -56.6992c4.10059 17.3994 6.2002 35.0996 6.2002 53.0996c0 57 -19.7998 105 -59.2998 143.9
c-39.2998 39.8994 -87.2002 59.7998 -143.6 59.7998z" />
    <glyph glyph-name="creative-commons-nc-eu" unicode="&#xf4e9;" horiz-adv-x="496" 
d="M247.7 440c140.7 0 248.3 -109 248.3 -248c0 -147.1 -118.1 -248 -248.3 -248c-136 0 -247.7 111.7 -247.7 248c0 131.2 103.6 248 247.7 248zM248.3 -10.7002c122.601 0 177.3 102.2 178.8 104.3l-128.3 56.8008h-90.2998
c9.2002 -39.3008 39.0996 -50.2002 67.2998 -50.2002c19.1006 0 38.6006 6.2002 47.2998 10.7998l10 -46.0996c-14.1992 -7.90039 -38.1992 -15.8008 -64.7998 -15.8008c-57.3994 0 -113.2 34.3008 -124.6 101.301h-27v29.5h22.7998
c0 16.2998 0.400391 13.2998 0.400391 19.5h-23.3008v29.5h4.7002l-65.7002 29.0996c-7.19922 -20.7998 -10.8994 -42.7998 -10.8994 -66c0 -110.2 91.5996 -202.7 203.6 -202.7zM231.6 179.9l-0.5 0.399414l0.900391 -0.399414h-0.400391zM308.8 199.4l136.101 -60.5
c4.19922 16.5996 6.2998 34.1992 6.2998 52.8994c0 113.2 -90 203.4 -203 203.4c-13 0 -106.101 3.2002 -170.7 -93.6006l81.5996 -36.0996c4.10059 7.2002 8.60059 14 13.9004 20.0996c23.7002 26.5 56.9004 42.3008 95.9004 42.3008
c25.2998 0 47.2998 -5.80078 62.2998 -12.4004l-11.6006 -47.2998c-10.7998 4.59961 -27.7998 10 -46.0996 10c-20 0 -38.2002 -6.60059 -51.0996 -22.4004c-3.40039 -3.7998 -6.30078 -8.7998 -8.80078 -14.2998l28.6006 -12.5996h70.2998v-29.5h-3.7002z" />
    <glyph glyph-name="creative-commons-nc-jp" unicode="&#xf4ea;" horiz-adv-x="496" 
d="M247.7 440c140.8 0 248.3 -109.2 248.3 -248c0 -147.2 -118.1 -248 -248.3 -248c-135.9 0 -247.7 111.6 -247.7 248c0 131.2 103.6 248 247.7 248zM248.3 -10.7002c118.101 0 173.7 96.1006 175.2 98.2998l-81 36.1006v-35.7002h-64.2002v-56h-61.7002v56h-63.7998
v38.7002h63.7998v18.7002l-5.69922 11.7998h-58.1006v38.5996h27.9004l-127 56.5c-6 -19.0996 -9 -39.2002 -9 -60.2998c0 -110.2 91.5996 -202.7 203.6 -202.7zM335.9 126.6l-54.7002 24.3008l-2.90039 -5.60059v-18.7002h57.6006zM342.4 178l101 -45.0996
c5.19922 18.3994 7.89941 38 7.89941 59c0 113.399 -90.2002 203.399 -203 203.399c-91.0996 0 -145.899 -54 -173.7 -98.0996l81.9004 -36.5l-27.2998 51h65.7998l39.5996 -85.7002l23 -10.2002l43.4004 96h65.7998l-63 -116h38.6006v-17.7998z" />
    <glyph glyph-name="creative-commons-nd" unicode="&#xf4eb;" horiz-adv-x="496" 
d="M247.6 440c141.801 0 248.4 -110.1 248.4 -248c0 -147.1 -118.5 -248 -248.4 -248c-134 0 -247.6 109.5 -247.6 248c0 132.9 104.7 248 247.6 248zM248.4 395.3c-118.2 0 -203.7 -97.8994 -203.7 -203.3c0 -109.8 91.2002 -202.8 203.7 -202.8
c103.199 0 202.8 81.0996 202.8 202.8c0.0996094 113.8 -90.2002 203.3 -202.8 203.3zM342.4 251v-42.5h-180.301v42.5h180.301zM342.4 171.2v-42.5h-180.301v42.5h180.301z" />
    <glyph glyph-name="creative-commons-pd" unicode="&#xf4ec;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111.1 248 -248c0 -137 -111 -248 -248 -248s-248 111 -248 248c0 136.9 111 248 248 248zM248 -9.5c76.0996 0 142.4 42.4004 176.7 104.8c-1.40039 0.299805 12.5 -5.7998 -217.9 96.7998c0.200195 -32 16.1006 -71.8994 53.9004 -71.8994
c18.7002 0 30.7998 10.3994 36.2998 16.7002l36.0996 -43.9004c-25.8994 -22.7998 -56.5 -29.5 -79.3994 -29.5c-46.5 0 -120.4 27.9004 -120.4 126.9c0 11.3994 1.2002 22.3994 3.2998 32.8994l-78.7998 35.1006c-45.5996 -129.9 51 -267.9 190.2 -267.9zM442.2 140.5
c0.200195 -0.200195 0.299805 -0.299805 0.599609 -0.400391c4.40039 16.6006 6.7998 34 6.7998 52c0 111.101 -90.3994 201.5 -201.5 201.5c-70.3994 0 -132.399 -36.2998 -168.5 -91.1992l74.9004 -33.4004c19.7998 31.0996 53.2998 51.5996 100.7 51.5996
c20.0996 0 51 -4.19922 78.0996 -27.5l-40.3994 -41.5996c-19.8008 19.7002 -55.9004 23 -74.7002 -11z" />
    <glyph glyph-name="creative-commons-pd-alt" unicode="&#xf4ed;" horiz-adv-x="496" 
d="M247.6 440c141.801 0 248.4 -110.1 248.4 -248c0 -147.1 -118.5 -248 -248.4 -248c-134 0 -247.6 109.5 -247.6 248c0 132.9 104.7 248 247.6 248zM248.4 -10.7998c103.199 0 202.8 81.0996 202.8 202.8c0.0996094 113.8 -90.2002 203.3 -202.8 203.3
c-118.2 0 -203.7 -97.8994 -203.7 -203.3c0 -109.8 91.2002 -202.8 203.7 -202.8zM316.7 262c21.3994 0 70 -5.2002 70 -68.5996c0 -63.5 -48.6006 -68.6006 -70 -68.6006h-53.2002v137.2h53.2002zM317.5 153.5c24 0 34.5 15.2998 34.5 39.9004
c0 42 -31.2002 39.8994 -35 39.8994l-19.4004 -0.0996094v-79.7002h19.9004zM203.7 262c33.7002 0 50.5 -15.5 50.5 -46.5c0 -9 -3 -46.5 -57.1006 -46.5h-27v-44.2998h-34.5996v137.3h68.2002zM198.8 194.7c27.9004 0 30 41.5996 -0.899414 41.5996h-28.3008v-41.5996
h29.2002z" />
    <glyph glyph-name="creative-commons-remix" unicode="&#xf4ee;" horiz-adv-x="496" 
d="M247.6 440c141.801 0 248.4 -110.1 248.4 -248c0 -147.1 -118.5 -248 -248.4 -248c-134 0 -247.6 109.5 -247.6 248c0 132.9 104.7 248 247.6 248zM248.4 395.3c-118.2 0 -203.7 -97.8994 -203.7 -203.3c0 -109.8 91.2002 -202.8 203.7 -202.8
c103.199 0 202.8 81.0996 202.8 202.8c0.0996094 113.8 -90.2002 203.3 -202.8 203.3zM410.1 187.6l4.90039 -2.19922v-70c-7.2002 -3.60059 -63.4004 -27.5 -67.2998 -28.8008c-6.5 1.80078 -113.7 46.8008 -137.3 56.2002l-64.2002 -26.5996l-63.2998 27.5v63.7998
l59.2998 24.7998c-0.700195 0.700195 -0.400391 -5 -0.400391 70.4004l67.2998 29.7002l151.9 -62.9004v-61.5996zM339.7 106.1v43.8008h-0.400391v1.7998l-113.8 46.5v-45.2002l113.8 -46.9004v0.400391zM347.2 163.7l39.8994 16.3994l-36.7998 15.5l-39 -16.3994z
M399.5 125.6v43l-44.2998 -18.5996v-43.4004z" />
    <glyph glyph-name="creative-commons-sa" unicode="&#xf4ef;" horiz-adv-x="496" 
d="M247.6 440c141.801 0 248.4 -110.1 248.4 -248c0 -147.1 -118.5 -248 -248.4 -248c-134 0 -247.6 109.5 -247.6 248c0 132.9 104.7 248 247.6 248zM248.4 395.3c-118.2 0 -203.7 -97.8994 -203.7 -203.3c0 -109.8 91.2002 -202.8 203.7 -202.8
c103.199 0 202.8 81.0996 202.8 202.8c0.0996094 113.8 -90.2002 203.3 -202.8 203.3zM137.7 227c13 83.9004 80.5 95.7002 108.899 95.7002c99.8008 0 127.5 -82.5 127.5 -134.2c0 -63.5996 -41 -132.9 -128.899 -132.9c-38.9004 0 -99.1006 20 -109.4 97h62.5
c1.5 -30.0996 19.6006 -45.1992 54.5 -45.1992c23.2998 0 58 18.1992 58 82.7998c0 82.5 -49.0996 80.5996 -56.7002 80.5996c-33.0996 0 -51.6992 -14.5996 -55.7998 -43.7998h18.2002l-49.2002 -49.2002l-49 49.2002h19.4004z" />
    <glyph glyph-name="creative-commons-sampling" unicode="&#xf4f0;" horiz-adv-x="496" 
d="M247.6 440c141.801 0 248.4 -110.1 248.4 -248c0 -147.1 -118.5 -248 -248.4 -248c-134 0 -247.6 109.5 -247.6 248c0 132.9 104.7 248 247.6 248zM248.4 395.3c-118.2 0 -203.7 -97.8994 -203.7 -203.3c0 -109.8 91.2002 -202.8 203.7 -202.8
c103.199 0 202.8 81.0996 202.8 202.8c0.0996094 113.8 -90.2002 203.3 -202.8 203.3zM252 342.1c2.7998 0.300781 11.5 -1 11.5 -11.5l6.59961 -107.199l4.90039 59.2998c0 6 4.7002 10.5996 10.5996 10.5996c5.90039 0 10.6006 -4.7002 10.6006 -10.5996
c0 -2.5 -0.5 5.7002 5.7002 -81.5l5.7998 64.2002c0.299805 2.89941 2.89941 9.2998 10.2002 9.2998c3.7998 0 9.89941 -2.2998 10.5996 -8.90039l11.5 -96.5l5.2998 12.7998c1.7998 4.40039 5.2002 6.60059 10.2002 6.60059h58v-21.2998h-50.9004l-18.1992 -44.3008
c-3.90039 -9.89941 -19.5 -9.09961 -20.8008 3.10059l-4 31.8994l-7.5 -92.5996c-0.299805 -3 -3 -9.2998 -10.1992 -9.2998c-3 0 -9.80078 2.09961 -10.6006 9.2998c0 1.90039 0.600586 -5.7998 -6.2002 77.9004l-5.2998 -72.2002
c-1.09961 -4.7998 -4.7998 -9.2998 -10.5996 -9.2998c-2.90039 0 -9.7998 2 -10.6006 9.2998c0 1.89941 0.5 -6.7002 -5.7998 87.7002l-5.7998 -94.8008c0 -6.2998 -3.59961 -12.3994 -10.5996 -12.3994c-5.2002 0 -10.6006 4.09961 -10.6006 12l-5.7998 87.7002
c-5.7998 -92.5 -5.2998 -84 -5.2998 -85.9004c-1.10059 -4.7998 -4.7998 -9.2998 -10.6006 -9.2998c-3 0 -9.7998 2.09961 -10.5996 9.2998c0 0.700195 -0.400391 1.09961 -0.400391 2.59961l-6.19922 88.6006l-4.90039 -56.7002
c-0.700195 -6.5 -6.7002 -9.2998 -10.5996 -9.2998c-5.80078 0 -9.60059 4.09961 -10.6006 8.89941l-11.0996 76.4004c-2 -4 -3.5 -8.40039 -11.1006 -8.40039h-51.3994v21.3008h44.7998l13.7002 27.8994c4.39941 9.90039 18.2002 7.2002 19.8994 -2.7002l3.10059 -20.3994
l8.39941 97.8994c0 6 4.80078 10.6006 10.6006 10.6006c0.5 0 10.5996 0.200195 10.5996 -12.4004l4.90039 -69.0996l6.59961 92.5996c0 10.1006 9.5 10.6006 10.2002 10.6006c0.599609 0 10.5996 -0.700195 10.5996 -10.6006l5.30078 -80.5996l6.19922 97.8994
c0.100586 1.10059 -0.599609 10.3008 9.90039 11.5z" />
    <glyph glyph-name="creative-commons-sampling-plus" unicode="&#xf4f1;" horiz-adv-x="496" 
d="M247.6 440c141.801 0 248.4 -110.1 248.4 -248c0 -147.1 -118.5 -248 -248.4 -248c-134 0 -247.6 109.5 -247.6 248c0 132.9 104.7 248 247.6 248zM248.4 395.3c-118.2 0 -203.7 -97.8994 -203.7 -203.3c0 -109.8 91.2002 -202.8 203.7 -202.8
c103.199 0 202.8 81.0996 202.8 202.8c0.0996094 113.8 -90.2002 203.3 -202.8 203.3zM355.4 189.7l58.3994 0.299805v-23.2002h-50.5l-18 -43.3994c-4.59961 -11 -20.8994 -8.7002 -22.2998 3.09961l-2.7002 22.2998l-6.7998 -83
c-1.09961 -14.0996 -22 -14.2002 -23.0996 0.100586l-4.90039 64.3994l-4.59961 -58.5996c-1.10059 -14.2998 -22.3008 -14.1006 -23.2002 0.200195l-4.5 71.7998l-4.90039 -80.5c-0.899414 -14.5 -22.2998 -14.5 -23.2002 -0.100586l-4.7998 73.3008l-4.59961 -70.4004
c-0.900391 -14.2998 -22.1006 -14.5 -23.2002 -0.0996094l-5.7002 78.2998l-3.7998 -43.6006c-1.2002 -13.6992 -21.0996 -14.1992 -23.0996 -0.699219l-10.7002 73.0996c-2 -3.90039 -6 -6.40039 -10.4004 -6.40039h-51.2998v23.2002h43.9004l13.1992 27.7002
c4.90039 10.2998 20.3008 8.09961 22 -3.2998l1.80078 -12.2002l7.69922 89.7998c1.2002 14.1006 22.1006 14.1006 23.2002 -0.200195l4.10059 -57l5.2998 80.2002c1 14.4004 22.2998 14.4004 23.2002 0l4.2998 -66.2998l5.09961 83.7002
c0.900391 14.3994 22.2998 14.5 23.2002 0l5.90039 -94.2998l3.5 44.8994c1.09961 14.2002 22.0996 14.2998 23.1992 0l5.2002 -68.7998l4.2998 51.4004c1.10059 13.7998 21.4004 14.2998 23.1006 0.399414l11 -92.7998l4 9.5c1.7002 4.40039 6 7.2002 10.7002 7.2002z
M277.4 184.5c4.09961 0 7.5 3.40039 7.5 7.5c0 4.2002 -3.40039 7.5 -7.5 7.5h-21.9004v21.9004c0 4.19922 -3.40039 7.5 -7.5 7.5s-7.5 -3.40039 -7.5 -7.5v-21.9004h-21.9004c-4.09961 0 -7.5 -3.40039 -7.5 -7.5c0 -4.2002 3.40039 -7.5 7.5 -7.5h21.9004v-21.9004
c0 -4.19922 3.40039 -7.5 7.5 -7.5c4.2002 0 7.5 3.40039 7.5 7.5v21.9004h21.9004z" />
    <glyph glyph-name="creative-commons-share" unicode="&#xf4f2;" horiz-adv-x="496" 
d="M247.6 440c141.801 0 248.4 -110.1 248.4 -248c0 -147.1 -118.5 -248 -248.4 -248c-134 0 -247.6 109.5 -247.6 248c0 132.9 104.7 248 247.6 248zM248.4 395.3c-118.2 0 -203.7 -97.8994 -203.7 -203.3c0 -109.8 91.2002 -202.8 203.7 -202.8
c103.199 0 202.8 81.0996 202.8 202.8c0.0996094 113.8 -90.2002 203.3 -202.8 203.3zM349.4 262.9c7.7998 0 13.6992 -6.10059 13.6992 -13.7002v-182.5c0 -7.7002 -6.09961 -13.7002 -13.6992 -13.7002h-135.101c-7.7002 0 -13.7002 6 -13.7002 13.7002v54h-54
c-7.7998 0 -13.6992 6 -13.6992 13.7002v182.5c0 8.19922 6.59961 12.6992 12.3994 13.6992h136.4c7.7002 0 13.7002 -6 13.7002 -13.6992v-54h54zM159.9 147.7h40.6992v101.399c0 7.40039 5.80078 12.6006 12 13.7002h55.8008v40.2998h-108.5v-155.399zM336.1 235.8h-108.5
v-155.399h108.5v155.399z" />
    <glyph glyph-name="creative-commons-zero" unicode="&#xf4f3;" horiz-adv-x="496" 
d="M247.6 440c141.801 0 248.4 -110.1 248.4 -248c0 -147.1 -118.5 -248 -248.4 -248c-134 0 -247.6 109.5 -247.6 248c0 132.9 104.7 248 247.6 248zM248.4 395.3c-118.2 0 -203.7 -97.8994 -203.7 -203.3c0 -109.8 91.2002 -202.8 203.7 -202.8
c103.199 0 202.8 81.0996 202.8 202.8c0.0996094 113.8 -90.2002 203.3 -202.8 203.3zM248 334.8c81.9004 0 102.5 -77.2998 102.5 -142.8s-20.5996 -142.8 -102.5 -142.8s-102.5 77.2998 -102.5 142.8s20.5996 142.8 102.5 142.8zM248 280.9
c-42.0996 0 -44.0996 -60.1006 -44.0996 -88.9004c0 -9.2998 0.199219 -21.7002 1.89941 -34.4004l54.5 100.2c5.7002 9.7998 2.7998 16.7998 -3.09961 21.9004c-2.7998 0.700195 -5.90039 1.2002 -9.2002 1.2002zM288.8 234.7l-60.8994 -105.2
c-12.5 -18.7002 6.59961 -26.4004 20.0996 -26.4004c42.0996 0 44.0996 60 44.0996 88.9004c0 11.2998 -0.399414 27.2998 -3.2998 42.7002z" />
    <glyph glyph-name="ebay" unicode="&#xf4f4;" horiz-adv-x="640" 
d="M606 258.5h34l-99.2002 -194.8h-35.8994l28.5 54.0996l-61.5 116.101c3.09961 -6.60059 4.7998 -14.5 4.7998 -23.8008v-65.5996c0 -9.2998 0.299805 -18.5996 1 -26.7998h-29.7998c-0.800781 6.89941 -1.10059 13.5996 -1.10059 20.2002
c-16.0996 -19.8008 -35.2998 -25.5 -61.8994 -25.5c-39.5 0 -60.6006 20.8994 -60.6006 45c0 3.19922 0.200195 6.19922 0.700195 9c-8.40039 -32.3008 -36.4004 -54.2002 -73.2998 -54.2002c-23.2998 0 -45.1006 8.2998 -58.7002 24.8994
c0 -6.59961 -0.400391 -13.1992 -1.09961 -19.5h-31.5c0.5 10.2002 1.09961 22.8008 1.09961 33.1006v169.5h32.0996v-80.6006c15.7002 18.7002 37.4004 24.2002 58.7002 24.2002c35.7002 0 75.4004 -24.0996 75.4004 -76.2002c0 -5.59961 -0.5 -11 -1.5 -16.1992
c7.09961 24.3994 34.2998 33.5 76.7002 34.3994c13.6992 0.299805 29 0.400391 41.6992 0.400391v3.39941c0 23.4004 -15 33 -41 33c-19.2998 0 -33.5996 -8 -35 -21.7998h-33.6992c3.59961 34.4004 39.6992 43.1006 71.5 43.1006c27.3994 0 51.7998 -7 63.2998 -26
l-10.9004 20.5996h37.5l54.9004 -109.9zM243.7 134.2c29.7998 0 50.2002 21.5 50.2002 53.7998c0 32.4004 -20.4004 53.7998 -50.2002 53.7998c-29.6006 0 -50.2002 -21.3994 -50.2002 -53.7998c0 -32.2998 20.5996 -53.7998 50.2002 -53.7998zM444.6 181.5v3.2998
c-11.7998 0 -26.2998 -0.0996094 -39.3994 -0.599609c-29.1006 -0.900391 -47.2002 -6.2002 -47.2002 -25.2998c0 -12.4004 9.90039 -25.8008 35 -25.8008c33.7002 0 51.5996 18.4004 51.5996 48.4004zM32.7002 179.9c3.5 -58.3008 79.2002 -57.4004 91.2002 -21.6006
h33.0996c-6.40039 -34.3994 -43 -46.0996 -74.4004 -46.0996c-57.1992 0 -82.5 31.5 -82.5 74c0 46.7998 26.2002 77.5996 83 77.5996c45.3008 0 78.4004 -23.7002 78.4004 -75.3994v-8.5h-128.8zM127.7 201.3c-2.2998 54.7002 -87.5 56.6006 -94.4004 0h94.4004z" />
    <glyph glyph-name="keybase" unicode="&#xf4f5;" 
d="M286.17 29c9.93457 0 18 -8.06543 18 -18s-8.06543 -18 -18 -18s-18 8.06543 -18 18s8.06543 18 18 18zM398.09 176.6c22.9102 -33.46 35.9102 -72.3398 35.9102 -110.92c0 -31.6797 -5 -60.6797 -14.5996 -86.2295
c-3.04004 -8.0498 -10.9502 -12.7197 -18.3701 -11.1504c-6.83984 1.24023 -11.1201 9.28027 -8.60059 15.7402c11.1904 28.71 14.8799 58.3398 14.8799 81.6396c-0.0634766 9.75 -1.02246 19.1807 -2.7998 28.4307c-0.649414 -1.06055 -1.12988 -2.2207 -1.84961 -3.2207
c-17.29 -24.5293 -50.54 -33.8896 -84.7402 -23.8398c-78.8701 23.1699 -178.02 3.81055 -236.25 -38.5898l24.6602 74.1104l-46.8203 -59.8301c2.4834 -18.6582 7.96191 -36.7539 15.7598 -53.1299c6.25 -13.1904 0.460938 -18.2402 -3.75 -20.1104
c-4.76953 -2.12012 -13.8594 -2.7998 -19.6396 7.33008c-6.41504 11.584 -11.4131 24.3486 -14.5596 37.5596l-23.3203 -29.7998v33.6406c0 55.7695 0 125.109 62.6504 188.409c13.7461 13.917 29.1787 25.7891 46.29 35.54l-8.93066 0.540039
c-27.8799 1.64062 -49.2402 24.8506 -47.6299 51.8506l2.36035 36.6797c0 -6.24023 0.139648 45.8799 50.75 45.8799c2.05957 0 -0.470703 0.120117 41.0596 -2.33008c2.82715 -0.19043 5.60742 -0.616211 8.29004 -1.25c7.41992 11.3398 15.6504 22.8301 24.3398 34.8906
l5.48047 7.55957l22.8994 -13.5195c-11.29 -24 -10 -33 -9.39941 -35c9.08008 0.229492 20 -1.6709 32.4102 -5.77051c31.2002 -10.3584 53.6846 -39.8262 53.6846 -74.4844c0 -10.4883 -2.0625 -20.498 -5.80469 -29.6455
c6.18652 -2.13965 12.3135 -4.56348 18.3799 -7.27051c47.8896 -21.2598 77.7598 -59.0898 87.2598 -73.71zM142.37 319.42c1.87695 6.54492 4.25684 13.041 7 19.1699l-29.1104 1.73047c0.610352 -0.0507812 -12.2598 0.849609 -13.2598 -11.3203l-2.41016 -36.6602
c-0.00683594 -0.174805 -0.00292969 -0.34375 -0.00292969 -0.520508c0 -6.60449 5.22461 -11.998 11.7627 -12.2695l22.3809 -1.33984c-0.457031 3.73438 -0.692383 7.34863 -0.692383 11.2061c0 2.81836 0.125977 5.6084 0.37207 8.36426l-13.1299 0.779297l1.38965 21.79
zM290.79 147.24c2.27441 1.75195 3.72949 4.50586 3.72949 7.59668c0 2.19922 -0.742188 4.22559 -1.98926 5.84277l-81.0898 96.3203c-1.9043 2.21094 -4.72949 3.60156 -7.87305 3.60156c-2.42578 0 -4.65918 -0.833984 -6.42773 -2.23145
c-2.27344 -1.74805 -3.72754 -4.49902 -3.72754 -7.58594c0 -2.19531 0.741211 -4.21973 1.98828 -5.83398c0.0898438 -0.140625 18.5996 -22.1406 18.5996 -22.1406l-16.9102 -13.29c-1.75879 -1.34863 -2.88477 -3.47461 -2.88477 -5.86133
c0 -1.68359 0.564453 -3.23633 1.51465 -4.47852c0.0800781 -0.109375 2.37988 -2.91113 3.7998 -4.5293c1.4209 -1.61914 3.50977 -2.63477 5.83105 -2.63477c1.79395 0 3.44531 0.610352 4.75977 1.63477l17.0898 13.4492l14.1396 -16.7393l-34.5703 -27.1807
c-1.74805 -1.34961 -2.86621 -3.46875 -2.86621 -5.84668c0 -1.69043 0.569336 -3.24805 1.52637 -4.49316l15.7803 -18.6396c1.48438 -1.72363 3.68555 -2.80762 6.13574 -2.80762c1.88379 0 3.61816 0.645508 4.99414 1.72754l34.4199 27l9.68066 -11.4902
c1.92676 -2.2041 4.76465 -3.58789 7.91992 -3.58789c2.4209 0 4.65234 0.820312 6.42969 2.19824zM187.44 29c9.93359 0 18 -8.06543 18 -18s-8.06641 -18 -18 -18c-9.93457 0 -18 8.06543 -18 18s8.06543 18 18 18z" />
    <glyph glyph-name="mastodon" unicode="&#xf4f6;" 
d="M433 268.89c0 0 0.799805 -71.6992 -9 -121.5c-6.23047 -31.5996 -55.1104 -66.1992 -111.23 -72.8994c-20.0996 -2.40039 -93.1191 -14.2002 -178.75 6.7002c0 -0.116211 -0.00390625 -0.119141 -0.00390625 -0.235352c0 -4.63281 0.307617 -9.19434 0.904297 -13.665
c6.62988 -49.5996 49.2197 -52.5996 89.6299 -54c40.8105 -1.2998 77.1201 10.0996 77.1201 10.0996l1.7002 -36.8994s-28.5098 -15.2998 -79.3203 -18.1006c-28.0098 -1.59961 -62.8193 0.700195 -103.33 11.4004c-112.229 29.7002 -105.63 173.4 -105.63 289.1
c0 97.2002 63.7197 125.7 63.7197 125.7c61.9209 28.4004 227.96 28.7002 290.48 0c0 0 63.71 -28.5 63.71 -125.7zM357.88 143.69c0 122 5.29004 147.71 -18.4199 175.01c-25.71 28.7002 -79.7197 31 -103.83 -6.10059l-11.5996 -19.5l-11.6006 19.5
c-24.0098 36.9004 -77.9297 35 -103.83 6.10059c-23.6094 -27.1006 -18.4092 -52.9004 -18.4092 -175h46.7295v114.2c0 49.6992 64 51.5996 64 -6.90039v-62.5098h46.3301v62.5c0 58.5 64 56.5996 64 6.89941v-114.199h46.6299z" />
    <glyph glyph-name="r-project" unicode="&#xf4f7;" horiz-adv-x="581" 
d="M581 221.4c0 -54.8008 -33.9004 -104.301 -88.4004 -139.7l67.4004 -113.7h-112l-40.0996 75.4004c-21.8008 -6.5 -45.1006 -11.2002 -69.4004 -13.9004v-61.5h-99.0996v61.9004c-136.101 16.0996 -239.4 95.6992 -239.4 191.5c0 107.5 130.1 194.6 290.5 194.6
s290.5 -87.0996 290.5 -194.6zM114.2 206.9c0 -52.8008 51.0996 -98.4004 125.2 -119.9v208.3h199s90.5996 -1.59961 90.5996 -87.8994c0 -86.3008 -86.5996 -92.7002 -86.5996 -92.7002s17.5996 -5.2998 27.7998 -10.5c1.7002 -0.799805 4 -2.10059 6.39941 -3.7002
c43.8008 21.4004 70.3008 56.2998 70.3008 106.4c0 92.2998 -90 133 -211.9 133s-220.8 -59.5 -220.8 -133zM339.3 168.6c49.6006 0 87.7998 -8.19922 87.7998 28.3008c0 34.0996 -30 27.2998 -87.7998 27.2998v-55.6006zM338.4 96.0996v-22.0996
c17.5996 0.0996094 34.5 1 50.5996 2.90039c-5.09961 7.5 -13.2002 19.1992 -24 19.1992h-26.5996z" />
    <glyph glyph-name="researchgate" unicode="&#xf4f8;" 
d="M0 416h448v-448h-448v448zM262.2 81.5996v7.30078c-10 0 -20 6.89941 -27.2002 14.6992c-12.2002 13.3008 -28.5996 34.7002 -42.2002 58.9004c22.5 5.2998 39.2002 26.4004 39.2002 47.5c0 31.2002 -24.2002 45.5996 -55.9004 45.5996
c-17.7998 0 -45.0996 -1.59961 -70.8994 -0.599609v-8.09961c15.5996 -2.90039 22 -1.30078 22 -23.9004v-109.4c0 -22.5996 -6.5 -21 -22 -23.8994v-8.10059c7.5 0.200195 20.5 0.800781 33.5996 0.800781c12.5 0 28.7002 -0.5 35.6006 -0.800781v8.10059
c-19.8008 2.7002 -25.8008 0.399414 -25.8008 23.8994v46.4004c6.7002 -0.599609 12.5 -0.599609 21.4004 -0.599609c16.9004 -30.3008 33 -53 42.2002 -63.6006c16.7998 -20.2002 43.3994 -17.2002 50 -14.2002zM285.1 216.6c38.7002 0 34 29.4004 34 49.9004h-30.3994
v-10.7002h17.8994c0 -15.8994 -7.39941 -26.7998 -21.5 -26.7998c-11.2998 0 -17.8994 9.90039 -17.8994 23.2998v26.7998c0 12.4004 11.7998 19.7002 19.7002 19.7002c14.1992 0 19.6992 -12.5 19.6992 -12.5l10.7002 7.2002s-5.2002 17.9004 -30.3994 17.9004
c-25.2002 0 -34 -18.2002 -34 -30.4004v-32.2002c0 -16.5 8.89941 -32.2002 32.1992 -32.2002zM168.6 171.9c-9.39941 0 -13.5996 0.299805 -20 0.799805v69.7002c6.40039 0.599609 15 0.599609 22.5 0.599609c23.3008 0 37.2002 -12.2002 37.2002 -34.5
c0 -21.9004 -15 -36.5996 -39.7002 -36.5996z" />
    <glyph glyph-name="teamspeak" unicode="&#xf4f9;" horiz-adv-x="512" 
d="M244.2 101.21c-2.40039 -12.5 -10.6006 -20 -22.5 -24.2998c-9.2002 -3.2002 -50.1006 -1.60059 -61.7002 -1c-18 1.2998 -33.2002 8.5 -43.4004 24c-14.5 22.5 -19.5 47.7002 -14.5 73.8994c4.60059 24.5 24.6006 34.7002 46.3008 22.7002
c15.1992 -7.5 42.5 -27.3994 63.3994 -46.5996c20.4004 -18.7002 34.7998 -36.4004 32.4004 -48.7002zM449.2 80.4102c6.7002 -5.41016 11.2002 -22 11.5996 -32.1006c1 -50.3994 -23.8994 -68 -46.5996 -85.3994c-65.1006 -50 -295.101 -16.9004 -145.4 -6.40039
c127.4 9 164.101 96.1006 172.101 121.5c0.679688 2.0918 2.64941 3.60352 4.9668 3.60352c1.2666 0 2.42871 -0.452148 3.33301 -1.20312zM511.2 202.81c0 -17.1992 1.89941 -34.5996 -1 -51.6992c-4 -24.7002 -29.1006 -41.7002 -53.2002 -36.7002
c-7.2002 1.7002 -9.40039 7.2002 -9.40039 14.2002c0 28.0996 0.800781 56.3994 0 84.5996c-1.89941 75.79 -36.1992 132.79 -102.3 169.4c-111 60.3896 -253.2 -7 -277.8 -131.5c-6.09961 -30.4004 -1.7002 -48.3008 -3.7002 -125.801
c-0.299805 -7.19922 -4.2998 -11.1992 -12 -11.5c-30.7998 -1.39941 -51.7998 18.2002 -51.7998 49v20.9004l0.799805 26.4902c2.40039 15.5 10.7002 27 24.9004 34c3.5 1.7998 5.7002 3.5 6.39941 7.7998c6.10059 33.4102 19.5 64 39.3008 91.71
c2.2998 3.09961 4 5.2998 1 9.2998c-3.7002 5.40039 -1 10.2002 3 14.5c28.0996 31.7998 61.8994 55.1006 102 67.4004c96 29.4668 180.1 9.29688 252.3 -60.5098c6.7002 -6.40039 15.5 -12.9004 7 -24.4004c-1.2998 -1.7998 1.09961 -3.5 2.2002 -5
c20.0586 -27.0264 34.2529 -59.1357 40.3994 -93.5898c0.900391 -3.7002 3 -5.10059 5.90039 -6.40039c17.3994 -8.7998 25.7002 -23.2998 26 -42.2002zM351.6 71.3096l-51.5996 7.7002c-22.7998 5.90039 -51 32.7002 22.2002 60.7998
c21.5996 8.5 85.7002 37.2002 87.7998 -8c0.900391 -32 -21.9004 -63.2998 -58.4004 -60.5z" />
    <glyph glyph-name="first-order-alt" unicode="&#xf50a;" horiz-adv-x="496" 
d="M248 440c136.97 0 248 -111.03 248 -248s-111.03 -248 -248 -248s-248 111.03 -248 248s111.03 248 248 248zM248 -48.21c132.66 0 240.21 107.55 240.21 240.21s-107.55 240.21 -240.21 240.21s-240.21 -107.55 -240.21 -240.21s107.55 -240.21 240.21 -240.21z
M248 411.71c121.34 0 219.71 -98.3701 219.71 -219.71s-98.3701 -219.71 -219.71 -219.71s-219.71 98.3701 -219.71 219.71s98.3701 219.71 219.71 219.71zM248 -19.5098c116.81 0 211.51 94.7002 211.51 211.51s-94.7002 211.51 -211.51 211.51
s-211.51 -94.6895 -211.51 -211.51s94.7002 -211.51 211.51 -211.51zM434.23 143.47c-4.46582 -17.1914 -11.3633 -33.7256 -20.1309 -48.6895l-74.1299 35.8799l61.4805 -54.8203c-10.709 -14.1553 -23.0713 -26.5469 -37.2002 -37.29l-54.7998 61.5703l35.8799 -74.2705
c-14.9385 -8.80469 -31.4502 -15.7354 -48.6299 -20.2295l-27.29 78.4697l4.79004 -82.9297c-8.61035 -1.17969 -17.4004 -1.7998 -26.3301 -1.7998s-17.7197 0.620117 -26.3301 1.7998l4.75977 82.46l-27.1494 -78.0303
c-17.1836 4.48828 -33.7021 11.4092 -48.6504 20.2002l35.9297 74.3398l-54.8701 -61.6396c-14.1318 10.7412 -26.5 23.1299 -37.2197 37.2793l61.5898 54.9004l-74.2598 -35.9297c-8.77051 14.9639 -15.6709 31.4971 -20.1396 48.6895l77.8398 27.1104l-82.2305 -4.75977
c-1.15918 8.56934 -1.7793 17.3193 -1.7793 26.21c0 9 0.629883 17.8398 1.81934 26.5098l82.3799 -4.76953l-77.9395 27.1592c4.5 17.1895 11.4307 33.7148 20.2295 48.6699l74.2207 -35.9199l-61.5205 54.8604c10.7412 14.1328 23.1299 26.501 37.2803 37.2197
l54.7598 -61.5293l-35.8301 74.1699c14.9521 8.76465 31.4717 15.6621 48.6504 20.1299l26.8701 -77.25l-4.70996 81.6094c8.60938 1.18066 17.3896 1.80078 26.3193 1.80078c8.93066 0 17.71 -0.620117 26.3203 -1.80078l-4.74023 -82.1592l27.0498 77.7598
c17.2705 -4.5 33.6006 -11.3506 48.6309 -20.1699l-35.8203 -74.1201l54.7197 61.4697c14.1426 -10.7178 26.5186 -23.0908 37.2402 -37.2295l-61.4502 -54.7705l74.1201 35.8604c8.78906 -14.9492 15.71 -31.4678 20.2002 -48.6504l-77.8105 -27.0996l82.2402 4.75
c1.19043 -8.66016 1.82031 -17.5 1.82031 -26.4902c0 -8.87988 -0.610352 -17.6299 -1.78027 -26.1904l-82.1201 4.75z" />
    <glyph glyph-name="fulcrum" unicode="&#xf50b;" horiz-adv-x="320" 
d="M95.75 283.86l-35.3799 -43.5508l-35.3701 43.5508l35.3799 43.5498zM144.23 448v-211.11l-41.0801 -44.8896l41.0801 -44.8896v-211.11l-20.5107 198.18l-51 57.8203l50.9707 57.8203zM223.9 283.86l35.3799 43.5498l35.3799 -43.5498l-35.3799 -43.5508zM175.42 236.86
v211.14l20.5801 -198.18l51 -57.8203l-51 -57.8203l-20.5801 -198.18v211.11l41.0801 44.8896z" />
    <glyph glyph-name="galactic-republic" unicode="&#xf50c;" horiz-adv-x="496" 
d="M248 -56c-136.75 0 -248 111.25 -248 248s111.25 248 248 248s248 -111.25 248 -248s-111.25 -248 -248 -248zM248 423.47c-127.63 0 -231.47 -103.84 -231.47 -231.47s103.84 -231.47 231.47 -231.47s231.47 103.84 231.47 231.47s-103.84 231.47 -231.47 231.47z
M275.62 401.66c37.6602 -4.91016 72.21 -19.7402 100.96 -41.7998l-17.3896 -17.3604c-23.9795 17.7627 -52.7207 29.9941 -83.5703 34.54v24.6201zM220.25 401.59v-24.54c-30.9697 -4.60938 -59.4502 -16.8301 -83.5195 -34.6699h-0.0800781l-17.2803 17.3604
c28.7197 22.0498 63.2402 36.9102 100.88 41.8496zM232.5 351.42h31v-82.8604c10.0498 -2.0293 19.3701 -6.00977 27.6201 -11.5l58.6699 58.6709l21.9297 -21.9307l-58.6699 -58.6699c5.46973 -8.24023 9.48047 -17.5996 11.5 -27.6201h82.8701v-31h-82.8701
c-2.03027 -10.0195 -6.04004 -19.3096 -11.5 -27.54l58.6699 -58.6895l-21.9297 -21.9307l-58.6699 58.6904c-8.25 -5.49023 -17.5703 -9.52051 -27.6201 -11.5498v-82.9004h-31v82.9004c-10.0039 2.02148 -19.4531 6.00977 -27.6699 11.4697l-58.6201 -58.6201
l-21.9297 21.9297l58.6699 58.6904c-5.45996 8.23047 -9.4502 17.5205 -11.4697 27.54h-82.9004v31h82.9004c2.01953 10.0303 6 19.3896 11.4697 27.6201l-58.6699 58.6699l21.9297 21.9297l58.6201 -58.5898c8.25 5.48047 17.6299 9.38965 27.6699 11.4199v82.8701z
M415.74 320.7c22.0996 -28.7402 36.9795 -63.3398 41.9297 -101.03h-24.6201c-4.58496 30.8906 -16.8604 59.665 -34.6699 83.6699zM80.1904 320.57l17.3896 -17.3906c-17.8301 -24.0693 -29.9902 -52.5596 -34.5898 -83.5195h-24.6504
c4.94043 37.6494 19.79 72.1895 41.8506 100.91zM38.3398 164.33l24.6504 0.00976562c4.58984 -30.9502 16.7002 -59.4502 34.5098 -83.5195l-17.3604 -17.3906c-22.0498 28.7207 -36.8799 63.2607 -41.7998 100.9zM433.04 164.33h24.6201
c-4.9502 -37.6699 -19.8506 -72.2197 -41.9297 -100.96l-17.3604 17.3604c17.8701 24.0996 30.0596 52.6094 34.6699 83.5996zM136.66 41.6201c24.0703 -17.8604 52.6094 -30.0205 83.5996 -34.6504v-24.6396c-37.6602 4.9502 -72.2295 19.8398 -100.96 41.9297z
M359.19 41.5703h0.0791016l17.3105 -17.3906c-28.75 -22.0596 -63.29 -36.9297 -100.96 -41.8496v24.5703c30.9902 4.58984 59.4795 16.8301 83.5703 34.6699z" />
    <glyph glyph-name="galactic-senate" unicode="&#xf50d;" horiz-adv-x="512" 
d="M249.86 414.52h12.2793v-26.0693c13.5801 -20.6201 23.8604 -108.59 24.4902 -215.351c-11.7402 15.6201 -19.1299 33.3301 -19.1299 48.2402v16.8799c0.0302734 5.32031 -0.75 10.5303 -2.19043 15.6504c-0.649414 2.13965 -1.38965 4.07031 -2.61914 5.82031
c-1.23047 1.73926 -3.44043 3.79004 -6.68066 3.79004c-3.25 0 -5.4502 -2.04004 -6.67969 -3.79004c-1.23047 -1.74023 -1.96973 -3.68066 -2.62012 -5.82031c-1.44043 -5.12012 -2.21973 -10.3301 -2.19043 -15.6504v-16.8799
c0 -14.9102 -7.38965 -32.6201 -19.1299 -48.2402c0.610352 106.761 10.8906 194.73 24.4707 215.351v26.0693zM223.52 266.75c-1.59961 -22.4004 -2.75 -46.5195 -3.47949 -72.0703c-23.2998 -11.2793 -40.7705 -33.1602 -46.3203 -59.5098
c-7.71973 -2.25977 -22.71 -3.91992 -40.4893 -4.21973c-7.51074 3.66016 -16.5 5.85938 -26.1807 6.04004c1.90039 14.9102 5.87012 29.1699 11.6504 42.4199c15.4395 -8.10059 30.9297 -8.66016 35.4697 -0.959961c4.57031 7.74023 -3.58984 21.04 -18.3203 30.6602
c8.68066 11.7695 18.9805 22.2998 30.5605 31.0898c9.50977 -15.5898 23.3594 -24.4404 31.3594 -19.8203c8.05078 4.65039 7.19043 21.1699 -1.70996 37.29c8.76074 3.88965 17.9404 6.92969 27.46 9.08008zM288.48 266.75
c9.45508 -2.12695 18.7754 -5.23145 27.4492 -9.08008c-8.89941 -16.1299 -9.75977 -32.6396 -1.70996 -37.29c8 -4.62012 21.8506 4.23047 31.3604 19.8203c11.5801 -8.79004 21.8799 -19.3203 30.5596 -31.0898c-14.7197 -9.61035 -22.8896 -22.9199 -18.3193 -30.6602
c4.54004 -7.7002 20.0293 -7.14062 35.4697 0.959961c5.79004 -13.25 9.75 -27.5098 11.6504 -42.4199c-9.68066 -0.19043 -18.6709 -2.37988 -26.1807 -6.04004c-17.7793 0.299805 -32.7695 1.95996 -40.4902 4.21973c-5.5498 26.3496 -23.0293 48.2305 -46.3193 59.5098
c-0.719727 25.5508 -1.87988 49.6699 -3.46973 72.0703zM256 258.15c3.23047 0 5.86035 -8.81055 6.08984 -19.9307h0.0498047v-16.8799c0 -41.4199 49.0107 -95.04 93.4902 -95.04c52 0 122.76 1.4502 156.37 -29.1699v-2.50977
c-9.41992 -17.1104 -20.5801 -33.1699 -33.1797 -47.9697c-12.5303 21.0898 -51.5898 40.96 -108.021 41.3496c-45.6797 -1.01953 -79.0195 -20.3301 -90.7598 -40.8701c-0.00976562 -0.00976562 0.00976562 -0.0400391 0 -0.0498047
c-7.66992 -2.13965 -15.8496 -3.23047 -24.04 -3.20996c-8.19043 -0.0205078 -16.3701 1.07031 -24.04 3.20996c-0.00976562 0.00976562 0.00976562 0.0400391 0 0.0498047c-11.7295 20.54 -45.0801 39.8506 -90.7598 40.8701
c-56.4307 -0.400391 -95.5 -20.2598 -108.021 -41.3496c-12.5996 14.7998 -23.7598 30.8496 -33.1797 47.9697v2.50977c33.6201 30.6201 104.37 29.1699 156.37 29.1699c44.4795 0 93.4902 53.6201 93.4902 95.04v16.8799h0.0498047
c0.229492 11.1201 2.85938 19.9307 6.08984 19.9307zM256 161.56c-22.4199 0 -40.5996 -18.1797 -40.5996 -40.5996s18.1797 -40.6504 40.5996 -40.6504s40.5996 18.2305 40.5996 40.6504s-18.1797 40.5996 -40.5996 40.5996zM256 153.92
c18.1904 0 32.96 -14.7695 32.96 -32.96s-14.7695 -32.96 -32.96 -32.96s-32.96 14.7695 -32.96 32.96s14.7695 32.96 32.96 32.96zM256 147.78c-14.8096 0 -26.8203 -12.0107 -26.8203 -26.8203s12.0107 -26.8203 26.8203 -26.8203s26.8203 12.0107 26.8203 26.8203
s-12.0107 26.8203 -26.8203 26.8203zM141.2 81.1104c18.75 -0.419922 35.1895 -4.18066 48.6094 -9.66992c12.5508 -16.0303 29.1602 -30.04 49.5801 -33.0703c0.100586 -0.00976562 0.169922 -0.0302734 0.270508 -0.0498047
c0.0498047 -0.0107422 0.109375 -0.0400391 0.160156 -0.0507812c5.23926 -1.06934 10.6396 -1.59961 16.1895 -1.59961c5.56055 0 10.9502 0.530273 16.1904 1.59961c0.0498047 0.0107422 0.109375 0.0400391 0.160156 0.0507812
c0.0996094 0.00976562 0.179688 0.0292969 0.269531 0.0498047c20.4199 3.04004 37.04 17.04 49.5801 33.0703c13.4199 5.5 29.8496 9.25 48.6104 9.66992c10.1797 -0.0800781 21.5996 -0.360352 30.5 -1.66016c-0.430664 -4.41992 -1.51074 -18.6299 -7.11035 -29.7598
c-9.11035 2.55957 -18.3604 3.89941 -27.6201 3.89941c-41.2803 -0.939453 -71.4795 -34.3496 -78.2598 -74.4697l-0.110352 -4.7002c-10.3994 -1.91992 -21.1797 -2.93945 -32.21 -2.93945c-11.0195 0 -21.8096 1.0293 -32.21 2.93945l-0.109375 4.7002
c-6.78027 40.1201 -36.9805 73.5303 -78.2607 74.4697c-9.25977 0 -18.5098 -1.33984 -27.6201 -3.89941c-5.59961 11.1299 -6.67969 25.3398 -7.10938 29.7598c8.89941 1.2998 20.3096 1.58984 30.5 1.66016z" />
    <glyph glyph-name="jedi-order" unicode="&#xf50e;" 
d="M398.5 74.4004c0 0 26.2998 16.1992 49.9004 77.6992c0 0 -17 -183.3 -222 -185.699h-4.10059c-205.1 2.39941 -222 185.699 -222 185.699c23.2002 -61.5996 49.4004 -77.6992 49.4004 -77.6992c-95.9004 122.1 -17.2002 233.1 -17.2002 233.1
c-45.4004 -85.7002 41.4004 -170.5 41.4004 -170.5c-105 171.6 60.5 271.5 60.5 271.5c-96.9004 -72.5996 10.0996 -190.7 10.0996 -190.7c-85.7998 -158.399 68.5996 -230.1 68.5996 -230.1s0.400391 16.8994 2.2002 85.7002l-34.5 -36.2002l24.2002 47.3994
l-62.5996 9.10059l62.5996 9.09961l-20.2002 55.5l31.4004 -45.8994c2.2998 87.8994 7.89941 305.899 7.89941 306.899v2.40039v-1v1v-2.40039c0.100586 -1.7998 5.7002 -219.2 7.90039 -306.899l31.4004 45.8994l-20.2002 -55.5l62.5996 -9.09961l-62.5996 -9.10059
l24.2002 -47.3994s-30.2002 31.7002 -34.5 36.2002c1.7998 -68.8008 2.19922 -85.7002 2.19922 -85.7002s154.4 71.7002 68.6006 230.1c0 0 107 118 10.0996 190.7c0 0 165.5 -100 60.5 -271.5c0 0 86.7998 84.7002 41.4004 170.5c0 0 78.7002 -111 -17.2002 -233.1z" />
    <glyph glyph-name="mandalorian" unicode="&#xf50f;" 
d="M232.27 -63.8896c-1 3.25977 -1.68945 15.8301 -1.38965 24.5801c0.549805 15.8896 1 24.7197 1.40039 28.7598c0.639648 6.2002 2.87012 20.7197 3.2793 21.3799c0.600586 1 0.400391 27.8701 -0.239258 33.1299c-0.310547 2.58008 -0.629883 11.9004 -0.69043 20.7305
c-0.129883 16.4697 -0.530273 20.1191 -2.72949 24.7598c-1.10059 2.31934 -1.23047 3.83984 -1 11.4297c0.0546875 1.30957 0.0830078 2.62695 0.0830078 3.9502c0 3.00586 -0.142578 5.82715 -0.423828 8.75977c-2 13 -3.45996 27.7002 -3.25 33.9004
s0.430664 7.14941 2.06055 9.66992c3.0498 4.70996 6.50977 14 8.62012 23.2695c2.25977 9.86035 3.87988 17.1807 4.58984 20.7402c1.1123 5.11914 2.61816 10.2246 4.41992 15.0498c2.26953 6.25 2.49023 15.3906 0.370117 15.3906
c-0.299805 0 -1.37988 -1.2207 -2.41016 -2.70996c-1.03027 -1.49023 -4.75977 -4.80078 -8.29004 -7.36035c-8.37012 -6.08008 -11.7002 -9.38965 -12.6602 -12.5801s-1 -7.22949 -0.160156 -7.75977c0.34082 -0.209961 1.29004 -2.40039 2.11035 -4.87988
c0.926758 -2.82617 1.42773 -5.84375 1.42773 -8.97754c0 -2.19824 -0.241211 -4.3252 -0.708008 -6.38281c-0.389648 -1.76953 -1 -5.46973 -1.45996 -8.22949c-0.459961 -2.76074 -1 -6.46094 -1.25 -8.2207c-0.181641 -1.55176 -0.731445 -3.01367 -1.5498 -4.25977
c-1 -1 -1.13965 -0.910156 -2.0498 0.530273c-0.724609 1.4541 -1.22656 3.07324 -1.44043 4.75c-0.25 1.73926 -1.62988 7.10938 -3.08008 11.9297c-3.2793 10.9004 -3.51953 16.1504 -1 21c0.800781 1.39648 1.38086 2.96875 1.66992 4.61035
c0 2.38965 -2.19922 5.31934 -7.40918 9.88965c-7 6.17969 -8.62988 7.91992 -10.2305 11.2998c-1.70996 3.60059 -3.05957 4.06055 -4.54004 1.54004c-1.78027 -3 -2.59961 -9.10938 -3 -22l-0.339844 -12.1895l2 -2.25c3.20996 -3.7002 12.0703 -16.4502 13.7803 -19.8301
c3.41016 -6.74023 4.33984 -11.6904 4.41016 -23.5605c0.0693359 -11.8701 0.949219 -22.75 2 -24.71c0.359375 -0.660156 0.509766 -1.34961 0.339844 -1.51953s0.410156 -2.08984 1.29004 -4.27051c1.02539 -2.84082 1.73633 -5.8916 2.05957 -9
c0.37207 -3.50684 0.950195 -6.99219 1.70996 -10.3701c2.23047 -9.55957 2.77051 -14.0801 2.39062 -20.1396c-0.200195 -3.26953 -0.530273 -11.0703 -0.730469 -17.3203c-1.30957 -41.7598 -1.84961 -58 -2 -61.21c-0.120117 -2 -0.389648 -11.5098 -0.599609 -21.0693
c-0.360352 -16.3008 -1.30078 -27.3701 -2.41992 -28.6504c-0.640625 -0.729492 -8.07031 4.91016 -12.5205 9.49023c-3.75 3.87012 -4 4.79004 -2.83008 9.9502c0.700195 3 2.25977 18.29 3.33008 32.6191c0.360352 4.78027 0.80957 10.5 1 12.7109
c0.830078 9.36914 1.66016 20.3496 2.61035 34.7793c0.55957 8.45996 1.33008 16.4404 1.71973 17.7305s0.889648 9.88965 1.12988 19.1094l0.429688 16.7705l-2.25977 4.2998c-1.71973 3.28027 -4.87012 6.94043 -13.2197 15.3398
c-6 6.07031 -11.8398 12.2998 -12.9102 13.8506l-1.9502 2.80957l0.75 10.9004c1.08984 15.71 1.10059 48.5693 0 59.0596l-0.889648 8.7002l-3.28027 4.51953c-5.85938 8.08008 -5.7998 7.75 -6.21973 33.2705c-0.100586 6.07031 -0.379883 11.5 -0.629883 12.0596
c-0.830078 1.87012 -3.0498 2.66016 -8.54004 3.05078c-8.86035 0.619141 -11 1.89941 -23.8506 14.5498c-6.14941 6 -12.3398 12 -13.75 13.1895c-2.80957 2.41992 -2.79004 2 -0.55957 9.62988l1.34961 4.65039l-1.68945 3
c-0.764648 1.42578 -1.62793 2.78223 -2.58984 4.07031c-1.33008 1.50977 -5.5 10.8896 -6 13.4893c-0.100586 0.362305 -0.154297 0.743164 -0.154297 1.13672c0 1.05469 0.385742 2.02148 1.02441 2.76367c2.22949 2.86035 3.39941 5.67969 4.44922 10.7305
c2.33008 11.1895 7.74023 26.0898 10.6006 29.2197c3.17969 3.46973 7.7002 1 9.41016 -5c1.33984 -4.79004 1.36914 -9.79004 0.0996094 -18.5498c-0.53418 -3.65918 -0.869141 -7.33594 -1 -11.1104c0 -4 0.19043 -4.69043 2.25 -7.38965
c3.33008 -4.37012 7.72949 -7.41016 15.2002 -10.5205c1.71777 -0.71582 3.30566 -1.67969 4.71973 -2.84961c11.1699 -10.7207 18.6201 -16.1807 22.9502 -16.8506c5.17969 -0.799805 8 -4.54004 10 -13.3896c1.30957 -5.65039 4 -11.1396 5.45996 -11.1396
c1.2041 0.246094 2.3418 0.729492 3.33008 1.38965c2 1.21973 2.25 1.73047 2.25 4.17969c-0.267578 6.07031 -0.943359 12.0078 -2 17.8398c-0.370117 1.66016 -0.780273 4.06055 -0.930664 5.35059c-0.149414 1.29004 -0.609375 3.84961 -1 5.68945
c-2.5498 11.1602 -3.64941 15.46 -4.09961 16c-1.5498 2 -4.08008 10.2002 -4.92969 15.9209c-1.64062 11.1094 -4 14.2295 -12.9102 17.3896c-4.92969 1.81641 -9.44238 4.50195 -13.3398 7.87988c-1.15039 1 -4 3.21973 -6.35059 5.05957
c-2.34961 1.84082 -4.40918 3.53027 -4.59961 3.76074c-0.848633 0.733398 -1.73926 1.39648 -2.69043 2c-6.23926 4.21973 -8.83984 7 -11.2598 12l-2.43945 5l-0.220703 13l-0.219727 13l6.91016 6.5498c3.9502 3.75 8.47949 7.34961 10.5898 8.42969
c3.30957 1.69043 4.4502 1.89062 11.3701 2c8.53027 0.19043 10.1201 0 11.6602 -1.55957c1.54004 -1.56055 1.35938 -6.40039 -0.290039 -8.5c-0.592773 -0.666992 -1.05273 -1.45508 -1.33984 -2.32031c0 -0.580078 -2.61035 -4.91016 -5.41992 -9
c-1.03906 -2.12988 -1.85156 -4.44727 -2.37012 -6.82031c20.4395 -13.3896 21.5498 -3.76953 14.0693 -29l11.3604 -2.51953c3.11035 8.66016 6.46973 17.2598 8.61035 26.2197c0.290039 7.62988 -12 4.19043 -15.4004 8.68066
c-2.33008 5.92969 3.12988 14.1797 6.05957 19.1992c1.60059 2.33984 6.62012 4.7002 8.82031 4.15039c0.879883 -0.219727 4.16016 0.349609 7.37012 1.28027c2.41992 0.759766 4.97461 1.33398 7.5498 1.67969c2.05957 0.222656 4.08984 0.666016 6 1.29004
c3.65039 1.11035 4.5 1.16992 6.35059 0.400391c1.85156 -0.636719 3.82324 -1.10352 5.81934 -1.36035c2.12598 -0.287109 4.17285 -0.953125 6 -1.91016c1.55078 -0.908203 3.24414 -1.64746 5 -2.16992c2.51074 -0.679688 3 -0.570312 7.05078 1.66992l4.34961 2.40039
l10.7402 0.389648c10.4395 0.400391 10.8096 0.469727 15.2598 2.67969l4.58008 2.32031l2.45996 -1.42969c1.75977 -1 3.13965 -2.73047 4.84961 -6c2.36035 -4.51074 2.37988 -4.58008 1.37012 -7.37012c-0.879883 -2.44043 -0.889648 -3.2998 -0.0996094 -6.39062
c0.526367 -2.03027 1.24219 -4.03516 2.09961 -5.90918c0.62793 -1.22852 1.08203 -2.5918 1.31055 -4c0.30957 -4.33008 0 -5.30078 -2.41016 -6.91992c-2.16992 -1.4707 -7 -7.91016 -7 -9.34082c-0.249023 -1.03906 -0.614258 -2.05762 -1.07031 -3
c-5 -11.5098 -6.75977 -13.5596 -14.2598 -17c-9.2002 -4.19922 -12.2998 -5.18945 -16.21 -5.18945c-3.10059 0 -4 -0.25 -4.54004 -1.25977c-1.17383 -1.44238 -2.53613 -2.67969 -4.08984 -3.70996c-1.82715 -1.21973 -3.32031 -2.84668 -4.37988 -4.78027
c-0.486328 -1.22852 -1.36426 -2.24707 -2.49023 -2.91016c-0.941406 -0.387695 -1.77246 -0.97168 -2.4502 -1.70996c-2.22168 -1.9502 -4.53613 -3.73047 -7 -5.37988c-3.33008 -2.33984 -6.87012 -5 -7.87012 -6c-0.666992 -0.71875 -1.47168 -1.29688 -2.37988 -1.7002
c-0.837891 -0.376953 -1.5625 -0.941406 -2.12988 -1.65039c-1.31055 -1.38965 -1.49023 -2.10938 -1.13965 -4.59961c0.310547 -2.00488 0.795898 -3.99707 1.41992 -5.87988c1.31934 -3.7998 1.30957 -7.86035 0 -10.5703
c-1.31055 -2.70996 -0.890625 -6.64941 1.34961 -9.58984c2 -2.62988 2.16016 -4.55957 0.709961 -8.83984c-0.692383 -2.67969 -1.06152 -5.48926 -1.06152 -8.38379c0 -0.183594 -0.000976562 -0.34375 0.00195312 -0.526367
c0 -4.87988 0.219727 -6.28027 1.45996 -8.37988c1.23926 -2.09961 1.81934 -2.48047 3.23926 -2.32031c2 0.230469 2.30078 1.0498 4.70996 12.1201c2.18066 10 3.70996 11.9199 13.7607 17.0801c2.93945 1.50977 7.45996 4 10 5.44043
c2.54004 1.43945 6.79004 3.68945 9.37012 4.90918c5.99512 2.625 11.1807 6.62598 15.2197 11.6709c7.10938 8.78906 10 16.2197 12.8496 33.2998c0.362305 2.81152 1.37402 5.46387 2.86035 7.72949c1.39648 2.17676 2.40332 4.6748 2.88965 7.31055
c1 5.2998 2.85059 9.08008 5.58008 11.5098c4.7002 4.17969 6 1.08984 4.58984 -10.8701c-0.459961 -3.86035 -1.09961 -10.3301 -1.43945 -14.3799l-0.610352 -7.36035l4.4502 -4.08984l4.4502 -4.08984l0.109375 -8.41992
c0.0605469 -4.62988 0.470703 -9.53027 0.919922 -10.8896l0.820312 -2.4707l-6.42969 -6.2793c-8.54004 -8.33008 -12.8799 -13.9307 -16.7598 -21.6104c-1.77051 -3.49023 -3.74023 -7.11035 -4.38086 -8c-2.17969 -3.11035 -6.45996 -13 -8.75977 -20.2598
l-2.29004 -7.2207l-7 -6.48926c-3.83008 -3.57031 -8 -7.25 -9.16992 -8.16992c-3.0498 -2.32031 -4.25977 -5.15039 -4.25977 -10c-0.00878906 -0.204102 -0.0126953 -0.40918 -0.0126953 -0.614258c0 -2.39062 0.583984 -4.65332 1.60254 -6.64648
c0.789062 -1.54785 1.49512 -3.17871 2.08984 -4.83008c0.350586 -1.05859 0.887695 -2.03809 1.57031 -2.88965c1.40039 -1.58984 1.91992 -16.1201 0.830078 -23.2197c-0.679688 -4.48047 -3.62988 -12 -4.7002 -12c-1.79004 0 -4.05957 -9.27051 -5.07031 -20.7402
c-0.179688 -2 -0.620117 -5.94043 -1 -8.7002s-1 -10 -1.34961 -16.0498c-0.770508 -12.2197 -0.19043 -18.7705 2 -23.1504c3.41016 -6.68945 0.519531 -12.6895 -11 -22.8398l-4 -3.49023l0.0703125 -5.18945c0.0546875 -3.05273 0.448242 -6.01562 1.13965 -8.87012
c4.61035 -16 4.73047 -16.9199 4.37988 -37.1299c-0.459961 -26.4004 -0.259766 -40.2705 0.629883 -44.1504c0.489258 -2.28223 0.853516 -4.63086 1.08008 -7c0.169922 -2 0.660156 -5.33008 1.08008 -7.35938c0.469727 -2.26074 0.780273 -11 0.790039 -22.7402v-19.0605
l-1.80957 -2.62988c-2.70996 -3.91016 -15.1104 -13.54 -15.4902 -12.29zM261.8 -18.7803c-0.179688 0.299805 -0.330078 6.87012 -0.330078 14.5898c0 14.0605 -0.889648 27.54 -2.25977 34.4502c-0.400391 2 -0.80957 9.7002 -0.900391 17.0605
c-0.149414 11.9297 -1.39941 24.3701 -2.63965 26.3799c-0.660156 1.06934 -3 17.6602 -3 21.2998c0 4.23047 1 6 5.28027 9.12988s4.85938 3.13965 5.47949 0.719727c0.280273 -1.09961 1.4502 -5.61914 2.60059 -10c3.92969 -15.1191 4.13965 -16.2695 4.0498 -21.7393
c-0.0996094 -5.78027 -0.129883 -6.12988 -1.74023 -17.7305c-1 -7.07031 -1.16992 -12.3896 -1 -28.4297c0.169922 -19.4004 -0.639648 -35.7305 -2 -41.2705c-0.709961 -2.7793 -2.7998 -5.47949 -3.42969 -4.42969zM190.8 18.7998
c-0.761719 3.52051 -1.3457 7.14453 -1.72949 10.79c-0.382812 3.64648 -0.967773 7.27051 -1.73047 10.79c-0.513672 2.0957 -0.854492 4.27344 -1 6.49023c-0.30957 3.18945 -0.910156 7.45996 -1.33008 9.47949c-1 4.79004 -3.34961 19.3506 -3.41992 21.0703
c0 0.740234 -0.339844 4.0498 -0.700195 7.36035c-0.669922 6.20996 -0.839844 27.6699 -0.219727 28.29c1 1 6.62988 -2.76074 11.3301 -7.43066l5.28027 -5.25l-0.450195 -6.46973c-0.25 -3.55957 -0.599609 -10.2295 -0.780273 -14.8301
c-0.179688 -4.59961 -0.490234 -9.87012 -0.669922 -11.71s-0.610352 -9.36035 -0.939453 -16.7197c-0.790039 -17.4102 -1.94043 -31.29 -2.65039 -32c-0.113281 -0.119141 -0.273438 -0.194336 -0.450195 -0.194336c-0.239258 0 -0.446289 0.135742 -0.549805 0.333984
h0.00976562zM103.62 285.39c21.0703 -12.79 17.8398 -14.1494 28.4902 -17.6592c13 -4.29004 18.8701 -7.13086 23.1494 -16.8701c-43.6602 -36.1406 -69.0098 -57.8604 -76.71 -70.8604c-31 -52 -6 -101.59 62.75 -87.21c-14.1797 -29.2305 -78 -28.6299 -98.6797 4.90039
c-24.6797 39.9492 -22.0898 118.3 61 187.659v0.0400391zM314.41 106.39c56.6602 -6.87988 82.3203 37.7402 46.54 89.2305c0 0 -26.8701 29.3398 -64.2803 68c3 15.4502 9.49023 32.1201 30.5703 53.8203c89.2002 -63.5107 92 -141.61 92.46 -149.36
c4.2998 -70.6396 -78.7002 -91.1797 -105.29 -61.71v0.0195312z" />
    <glyph glyph-name="old-republic" unicode="&#xf510;" horiz-adv-x="496" 
d="M235.76 437.77c7.5 0.310547 15 0.280273 22.5 0.0908203c3.61035 -0.140625 7.2002 -0.400391 10.79 -0.730469c4.91992 -0.269531 9.79004 -1.03027 14.6699 -1.62012c2.93066 -0.429688 5.83008 -0.979492 8.75 -1.45996
c7.90039 -1.33008 15.6699 -3.28027 23.3906 -5.39941c12.2393 -3.4707 24.1895 -7.91992 35.7598 -13.21c26.5596 -12.2402 50.9395 -29.21 71.6299 -49.8809c20.0303 -20.0898 36.7197 -43.5498 48.8896 -69.1895c1.12988 -2.58984 2.44043 -5.10059 3.4707 -7.74023
c2.80957 -6.42969 5.38965 -12.9697 7.58008 -19.6299c4.13965 -12.3301 7.33984 -24.9902 9.41992 -37.8301c0.569336 -3.13965 1.04004 -6.2998 1.39941 -9.46973c0.549805 -3.83008 0.94043 -7.69043 1.18066 -11.5605
c0.829102 -8.33984 0.839844 -16.7295 0.769531 -25.0996c-0.0703125 -4.96973 -0.259766 -9.94043 -0.75 -14.8896c-0.240234 -3.38086 -0.509766 -6.76074 -0.979492 -10.1201c-0.390625 -2.7207 -0.630859 -5.45996 -1.11035 -8.16992
c-0.900391 -5.15039 -1.7002 -10.3105 -2.87012 -15.4102c-4.09961 -18.5 -10.2998 -36.5498 -18.5098 -53.6299c-15.7705 -32.8301 -38.8301 -62.1699 -67.1201 -85.1201c-17.2012 -14.0635 -36.3066 -25.8115 -56.9102 -34.8604
c-6.20996 -2.67969 -12.46 -5.25 -18.8701 -7.41016c-3.50977 -1.16016 -7.00977 -2.37988 -10.5703 -3.38965c-6.61914 -1.87988 -13.2891 -3.63965 -20.0391 -5c-4.66016 -0.910156 -9.34082 -1.73047 -14.0303 -2.48047c-5.25 -0.65918 -10.5 -1.43945 -15.79 -1.73926
c-6.69043 -0.660156 -13.4102 -0.839844 -20.1201 -0.810547c-6.82031 -0.0292969 -13.6504 0.120117 -20.4502 0.790039c-3.29004 0.230469 -6.57031 0.5 -9.83008 0.950195c-2.71973 0.389648 -5.45996 0.629883 -8.16992 1.11035
c-4.12012 0.719727 -8.25 1.37012 -12.3496 2.21973c-4.25 0.939453 -8.49023 1.88965 -12.6904 3.01953c-8.62988 2.16992 -17.0801 5.01074 -25.4102 8.13086c-10.4893 4.11914 -20.79 8.75 -30.6396 14.25c-2.13965 1.14941 -4.28027 2.28906 -6.34961 3.56934
c-11.2207 6.58008 -21.8604 14.1006 -31.9199 22.3398c-34.6807 28.4102 -61.4102 66.4307 -76.3506 108.7c-3.08984 8.74023 -5.70996 17.6504 -7.7998 26.6797c-1.48047 6.16016 -2.52051 12.4209 -3.58008 18.6602
c-0.400391 2.35059 -0.610352 4.73047 -0.950195 7.08984c-0.599609 3.96094 -0.75 7.96094 -1.16992 11.9404c-0.799805 9.46973 -0.709961 18.9902 -0.509766 28.4902c0.139648 3.50977 0.339844 7.00977 0.700195 10.5098
c0.30957 3.16992 0.459961 6.37012 0.919922 9.52051c0.410156 2.80957 0.649414 5.64941 1.16016 8.43945c0.699219 3.94043 1.2998 7.90039 2.11914 11.8203c3.43066 16.5195 8.4707 32.7295 15.2607 48.1797c1.14941 2.91992 2.58984 5.71973 3.85938 8.58984
c8.05078 16.71 17.9004 32.5605 29.4902 47.0605c20 25.3799 45.1006 46.6797 73.2705 62.4697c7.5 4.15039 15.1592 8.0498 23.0693 11.3701c15.8203 6.87988 32.4102 11.9502 49.3105 15.3799c3.50977 0.669922 7.04004 1.24023 10.5596 1.84961
c2.62012 0.470703 5.28027 0.700195 7.91016 1.08008c3.53027 0.530273 7.09961 0.680664 10.6504 1.04004c2.45996 0.240234 4.90918 0.360352 7.35938 0.509766zM244.4 413.36c-9.23047 -0.100586 -18.4307 -0.990234 -27.5703 -2.23047
c-7.2998 -1.08008 -14.5303 -2.59961 -21.71 -4.2998c-13.9102 -3.5 -27.4805 -8.33984 -40.46 -14.4199c-10.46 -4.99023 -20.5898 -10.7002 -30.1797 -17.2197c-4.18066 -2.9209 -8.40039 -5.80078 -12.3408 -9.03027
c-5.08008 -3.96973 -9.97949 -8.16992 -14.6797 -12.5898c-2.50977 -2.24023 -4.80957 -4.7002 -7.21973 -7.06055c-28.2207 -28.79 -48.4404 -65.3896 -57.5 -104.689c-2.04004 -8.44043 -3.54004 -17.0205 -4.44043 -25.6504
c-1.09961 -8.88965 -1.43945 -17.8496 -1.41016 -26.7998c0.110352 -7.13965 0.379883 -14.2803 1.2207 -21.3701c0.620117 -7.12012 1.87012 -14.1602 3.19922 -21.1797c1.07031 -4.65039 2.03027 -9.32031 3.33008 -13.9102
c6.29004 -23.3799 16.5 -45.7002 30.0703 -65.75c8.63965 -12.9805 18.7803 -24.9297 29.9805 -35.7705c16.2793 -15.8193 35.0498 -29.04 55.3398 -39.2197c7.2793 -3.51953 14.6602 -6.87012 22.2695 -9.62988c5.04004 -1.75977 10.0605 -3.57031 15.2197 -4.98047
c11.2607 -3.22949 22.7705 -5.59961 34.3906 -7.05957c2.91016 -0.290039 5.80957 -0.610352 8.71973 -0.900391c13.8203 -1.08008 27.7402 -1 41.54 0.430664c4.4502 0.599609 8.91992 0.989258 13.3496 1.7793c3.63086 0.670898 7.28027 1.25 10.8701 2.10059
c4.12988 0.979492 8.28027 1.91016 12.3604 3.07031c26.5 7.33984 51.5801 19.71 73.5801 36.1992c15.7803 11.8203 29.96 25.7607 42.1201 41.2803c3.25977 4.02051 6.16992 8.30957 9.12988 12.5498c3.38965 5.06055 6.58008 10.25 9.59961 15.54
c2.40039 4.44043 4.74023 8.91016 6.9502 13.4502c5.69043 12.0498 10.2803 24.6201 13.75 37.4902c2.58984 10.0098 4.75 20.1602 5.90039 30.4502c1.76953 13.4697 1.93945 27.0996 1.29004 40.6494c-0.290039 3.89062 -0.669922 7.77051 -1 11.6602
c-2.23047 19.0801 -6.79004 37.9102 -13.8203 55.7998c-5.9502 15.1299 -13.5303 29.6299 -22.6104 43.1299c-12.6895 18.8008 -28.2393 35.6807 -45.9697 49.8301c-25.0498 20 -54.4697 34.5498 -85.6504 42.0801c-7.7793 1.92969 -15.6895 3.33984 -23.6299 4.4502
c-3.90918 0.589844 -7.84961 0.820312 -11.7695 1.24023c-7.38965 0.569336 -14.8105 0.719727 -22.2197 0.580078zM139.26 364.47c13.2998 8.89062 28.0801 15.3799 43.2998 20.1807c-3.16992 -1.77051 -6.43945 -3.38086 -9.5293 -5.29004
c-11.21 -6.68066 -21.5205 -14.9004 -30.3799 -24.4902c-6.80078 -7.42969 -12.7607 -15.7305 -17.0107 -24.8896c-3.29004 -6.86035 -5.63965 -14.1904 -6.85938 -21.7109c-0.930664 -4.84961 -1.2998 -9.80957 -1.16992 -14.75
c0.129883 -13.6592 4.43945 -27.0791 11.29 -38.8193c5.91992 -10.2197 13.6299 -19.3301 22.3594 -27.2598c4.85059 -4.36035 10.2402 -8.09082 14.9502 -12.6006c2.25977 -2.18945 4.49023 -4.41992 6.42969 -6.91016c2.62012 -3.30957 4.89062 -6.98926 5.99023 -11.0996
c0.900391 -3.02051 0.660156 -6.2002 0.69043 -9.31055c0.0195312 -4.09961 -0.0400391 -8.19922 0.0292969 -12.2998c0.140625 -3.54004 -0.0195312 -7.08984 0.110352 -10.6299c0.0800781 -2.37988 0.0205078 -4.75977 0.0498047 -7.13965
c0.160156 -5.77051 0.0605469 -11.5303 0.150391 -17.2998c0.109375 -2.91016 0.0195312 -5.82031 0.129883 -8.74023c0.0302734 -1.62988 0.129883 -3.28027 -0.0302734 -4.91016c-0.910156 -0.120117 -1.81934 -0.179688 -2.72949 -0.160156
c-10.9902 0 -21.8799 2.62988 -31.9502 6.92969c-6 2.7002 -11.8105 5.89062 -17.0898 9.83008c-5.75 4.19043 -11.0898 8.95996 -15.79 14.3105c-6.53027 7.24023 -11.9805 15.3896 -16.6201 23.9502c-1.07031 2.0293 -2.24023 4.01953 -3.17969 6.12012
c-1.16016 2.63965 -2.62012 5.13965 -3.66992 7.81934c-4.05078 9.68066 -6.57031 19.9404 -8.08008 30.3105c-0.490234 4.43945 -1.09082 8.87988 -1.2002 13.3496c-0.700195 15.7305 0.839844 31.5498 4.66992 46.8203c2.12012 8.14941 4.76953 16.1797 8.30957 23.8301
c6.32031 14.1992 15.3398 27.1797 26.3008 38.1895c6.2793 6.2002 13.1299 11.8398 20.5293 16.6699zM314.63 384.59c2.74023 -0.740234 5.41016 -1.74023 8.08984 -2.67969c6.36035 -2.33008 12.6807 -4.83984 18.71 -7.95996
c13.1104 -6.44043 25.3105 -14.8105 35.8203 -24.9697c10.2002 -9.9502 18.7402 -21.6006 25.1396 -34.3408c1.28027 -2.75 2.64062 -5.45996 3.81055 -8.25977c6.30957 -15.0996 10 -31.2598 11.2295 -47.5703c0.410156 -4.54004 0.44043 -9.08984 0.450195 -13.6396
c0.0703125 -11.6396 -1.49023 -23.25 -4.2998 -34.5303c-1.96973 -7.26953 -4.34961 -14.4893 -7.86035 -21.1797c-3.17969 -6.63965 -6.67969 -13.1602 -10.8398 -19.2402c-6.93945 -10.4697 -15.5996 -19.8701 -25.8203 -27.2197
c-10.4795 -7.63965 -22.6396 -13.0195 -35.3994 -15.3799c-3.50977 -0.69043 -7.08008 -1.08008 -10.6602 -1.20996c-1.84961 -0.0605469 -3.71973 -0.160156 -5.55957 0.0996094c-0.280273 2.15039 0 4.31055 -0.0107422 6.45996
c-0.0292969 3.73047 0.140625 7.4502 0.100586 11.1699c0.189453 7.02051 0.0195312 14.0508 0.209961 21.0703c0.0292969 2.37988 -0.0302734 4.75977 0.0292969 7.13965c0.170898 5.07031 -0.0390625 10.1406 0.140625 15.21
c0.0996094 2.99023 -0.240234 6.04004 0.509766 8.95996c0.660156 2.5 1.78027 4.86035 3.08984 7.08008c4.45996 7.31055 11.0605 12.96 17.6807 18.2607c5.37988 4.17969 10.4697 8.76953 15.0195 13.8398c7.67969 8.37012 14.1699 17.8799 18.7803 28.2695
c2.5 5.93066 4.51953 12.1006 5.5498 18.46c0.860352 4.37012 1.05957 8.83008 1.00977 13.2705c-0.0195312 7.84961 -1.39941 15.6494 -3.63965 23.1699c-1.75 5.72949 -4.27051 11.1797 -7.08984 16.4502c-3.87012 6.92969 -8.65039 13.3096 -13.96 19.1992
c-9.94043 10.8506 -21.75 19.9404 -34.6006 27.1006c-1.84961 1.01953 -3.83984 1.82031 -5.62988 2.96973zM213.83 326.14c0.979492 1.18066 1.99023 2.33008 3.12012 3.37988c-0.610352 -0.929688 -1.27051 -1.80957 -1.9502 -2.67969
c-3.09961 -3.87988 -5.54004 -8.30957 -7.03027 -13.0596c-0.870117 -3.27051 -1.67969 -6.60059 -1.72949 -10c-0.0703125 -2.52051 -0.0800781 -5.07031 0.319336 -7.57031c1.13086 -7.62988 4.33008 -14.8496 8.77051 -21.1201c2 -2.7002 4.25 -5.26953 6.91992 -7.33008
c1.62012 -1.26953 3.53027 -2.08984 5.33984 -3.0498c3.11035 -1.67969 6.32031 -3.22949 9.07031 -5.47949c2.66992 -2.09082 4.5498 -5.33008 4.39941 -8.79004c-0.00976562 -73.6709 0 -147.341 -0.00976562 -221.021c0 -1.34961 -0.0800781 -2.7002 0.0400391 -4.04004
c0.129883 -1.47949 0.820312 -2.83008 1.46973 -4.14941c0.860352 -1.66016 1.78027 -3.34082 3.18066 -4.62012c0.849609 -0.770508 1.96973 -1.40039 3.14941 -1.24023c1.5 0.200195 2.66016 1.34961 3.4502 2.57031c0.959961 1.50977 1.67969 3.15918 2.28027 4.84961
c0.759766 2.12988 0.439453 4.41992 0.540039 6.62988c0.139648 4.03027 -0.0205078 8.06055 0.139648 12.0898c0.0302734 5.89062 0.0302734 11.7705 0.0605469 17.6602c0.139648 3.62012 0.0292969 7.24023 0.109375 10.8604
c0.150391 4.0293 -0.0195312 8.05957 0.140625 12.0898c0.0292969 5.99023 0.0292969 11.9795 0.0693359 17.9697c0.140625 3.62012 0.0205078 7.24023 0.110352 10.8604c0.139648 3.92969 -0.0205078 7.85938 0.139648 11.7803
c0.0302734 5.98926 0.0302734 11.9795 0.0605469 17.9697c0.160156 3.93945 -0.00976562 7.87988 0.189453 11.8193c0.290039 -1.43945 0.129883 -2.91992 0.220703 -4.37988c0.189453 -3.60938 0.419922 -7.22949 0.759766 -10.8398
c0.320312 -3.43945 0.439453 -6.88965 0.859375 -10.3193c0.370117 -3.10059 0.510742 -6.2207 0.950195 -9.31055c0.570312 -4.08984 0.870117 -8.20996 1.54004 -12.29c1.45996 -9.04004 2.83008 -18.1104 5.08984 -26.9902c1.13086 -4.81934 2.40039 -9.60938 4 -14.2998
c2.54004 -7.89941 5.7207 -15.6699 10.3105 -22.6201c1.72949 -2.63965 3.87012 -4.97949 6.09961 -7.20996c0.270508 -0.25 0.549805 -0.509766 0.879883 -0.709961c0.600586 -0.25 1.31055 0.0703125 1.7002 0.570312c0.709961 0.879883 1.16992 1.93945 1.7002 2.92969
c4.0498 7.7998 8.17969 15.5605 12.3398 23.3105c0.700195 1.30957 1.44043 2.62012 2.56055 3.60938c1.75 1.57031 3.83984 2.69043 5.97949 3.62988c2.87988 1.2207 5.90039 2.19043 9.03027 2.41992c6.58008 0.620117 13.1094 -0.75 19.5596 -1.84961
c3.69043 -0.580078 7.40039 -1.16992 11.1299 -1.41016c3.74023 -0.0996094 7.48047 -0.0498047 11.21 0.280273c8.55078 0.919922 16.9902 2.95996 24.9404 6.25c5.2998 2.24023 10.46 4.83008 15.3096 7.92969c11.46 7.20996 21.46 16.5703 30.04 27.0107
c1.16992 1.41992 2.25 2.89941 3.45996 4.2793c-1.19922 -3.24023 -2.66992 -6.37012 -4.15918 -9.47949c-1.25 -2.90039 -2.84082 -5.61035 -4.27051 -8.41992c-5.16016 -9.62988 -11.0195 -18.9102 -17.75 -27.5205
c-4.03027 -5.20996 -8.53027 -10.0498 -13.3301 -14.5703c-6.63965 -6.0498 -14.0703 -11.3691 -22.4297 -14.7598c-8.20996 -3.37012 -17.3105 -4.62988 -26.0898 -3.29004c-3.56055 0.580078 -7.01074 1.69043 -10.4102 2.87988
c-2.79004 0.970703 -5.39062 2.38086 -8.03027 3.69043c-3.42969 1.70996 -6.63965 3.80957 -9.70996 6.08008c2.70996 -3.06055 5.69043 -5.86035 8.7002 -8.61035c4.26953 -3.75977 8.74023 -7.30957 13.6299 -10.2295c3.98047 -2.4502 8.29004 -4.40039 12.8398 -5.51074
c1.45996 -0.369141 2.95996 -0.459961 4.4502 -0.599609c-1.25 -1.09961 -2.62988 -2.04004 -3.99023 -2.97949c-9.60938 -6.54004 -20.0098 -11.8604 -30.6895 -16.4307c-20.8604 -8.7002 -43.1699 -13.9697 -65.7402 -15.3398
c-4.66016 -0.240234 -9.32031 -0.360352 -13.9805 -0.360352c-4.97949 0.110352 -9.96973 0.130859 -14.9199 0.650391c-11.2002 0.759766 -22.29 2.73047 -33.1699 5.42969c-10.3496 2.70996 -20.5498 6.12012 -30.2998 10.5508
c-8.70996 3.85938 -17.1201 8.41992 -24.9902 13.79c-1.83008 1.30957 -3.74023 2.5293 -5.37012 4.0791c6.60059 1.19043 13.0303 3.39062 18.9902 6.48047c5.74023 2.86035 10.9902 6.66016 15.6299 11.0703c2.24023 2.18945 4.29004 4.58984 6.19043 7.08984
c-3.43066 -2.12988 -6.93066 -4.15039 -10.6201 -5.78027c-4.41016 -2.16016 -9.07031 -3.76953 -13.8105 -5.01953c-5.72949 -1.52051 -11.7393 -1.73047 -17.6094 -1.14062c-8.12988 0.950195 -15.8604 4.27051 -22.5098 8.98047
c-4.32031 2.93945 -8.2207 6.42969 -11.96 10.0596c-9.93066 10.1602 -18.2002 21.8105 -25.6602 33.8604c-3.94043 6.26953 -7.53027 12.75 -11.1201 19.2197c-1.0498 2.04004 -2.15039 4.0498 -3.17969 6.10059c2.84961 -2.9209 5.56934 -5.9707 8.42969 -8.88086
c8.99023 -8.96973 18.5596 -17.4395 29.1602 -24.4795c7.5498 -4.90039 15.6699 -9.23047 24.5596 -11.0303c3.11035 -0.729492 6.32031 -0.469727 9.46973 -0.80957c2.77051 -0.280273 5.56055 -0.200195 8.34082 -0.299805
c5.0498 -0.0605469 10.1094 -0.0400391 15.1592 0.15918c3.65039 0.160156 7.27051 0.660156 10.8906 1.09082c2.06934 0.25 4.10938 0.709961 6.13965 1.19922c3.87988 0.950195 8.11035 0.959961 11.8301 -0.609375c4.75977 -1.85059 8.44043 -5.64062 11.3799 -9.70996
c2.16016 -3.02051 4.06055 -6.2207 5.66016 -9.58008c1.16016 -2.43066 2.45996 -4.79004 3.5498 -7.26074c1 -2.23926 2.15039 -4.41992 3.41992 -6.51953c0.669922 -1.01953 1.40039 -2.15039 2.62012 -2.5498c1.06055 0.75 1.70996 1.91016 2.28027 3.03027
c2.09961 4.15918 3.41992 8.64941 4.88965 13.0498c2.02051 6.58984 3.78027 13.2695 5.19043 20.0195c2.20996 9.25 3.25 18.7197 4.54004 28.1299c0.55957 3.98047 0.830078 7.99023 1.30957 11.9707c0.870117 10.6396 1.90039 21.2695 2.24023 31.9395
c0.0800781 1.86035 0.240234 3.70996 0.25 5.57031c0.00976562 4.34961 0.25 8.68945 0.219727 13.0303c-0.00976562 2.37988 -0.00976562 4.75977 0 7.12988c0.0498047 5.06934 -0.200195 10.1396 -0.219727 15.21c-0.200195 6.60938 -0.709961 13.2002 -1.29004 19.7793
c-0.730469 5.88086 -1.5498 11.7803 -3.12012 17.5107c-2.0498 7.75 -5.58984 15.0293 -9.7998 21.8193c-3.16016 5.07031 -6.79004 9.87988 -11.0898 14.0303c-3.87988 3.86035 -8.58008 7.08008 -13.9404 8.4502c-1.5 0.410156 -3.05957 0.450195 -4.58984 0.639648
c0.0703125 2.99023 0.700195 5.93066 1.25977 8.85059c1.58984 7.70996 3.7998 15.2998 6.76074 22.5996c1.51953 4.03027 3.40918 7.90039 5.38965 11.7197c3.4502 6.56055 7.62012 12.79 12.46 18.46zM245.1 324.44
c0.350586 0.0595703 0.709961 0.119141 1.07031 0.189453c0.19043 -1.79004 0.0898438 -3.58008 0.0996094 -5.37012v-38.1299c-0.00976562 -1.74023 0.130859 -3.49023 -0.149414 -5.21973c-0.360352 0.0302734 -0.709961 0.0498047 -1.06055 0.0498047
c-0.949219 3.75 -1.71973 7.5498 -2.61914 11.3096c-0.380859 1.53027 -0.580078 3.09082 -1.07031 4.59082c-1.7002 0.239258 -3.42969 0.169922 -5.15039 0.199219c-5.05957 0.0107422 -10.1299 0 -15.1895 0.0107422
c-1.66016 0.00976562 -3.32031 -0.0898438 -4.98047 0.0292969c-0.0302734 0.390625 -0.259766 0.910156 0.160156 1.18066c1.28027 0.649414 2.71973 0.879883 4.05957 1.34961c3.43066 1.13965 6.88086 2.16016 10.3105 3.31055
c1.38965 0.479492 2.90039 0.719727 4.16016 1.54004c0.0400391 0.55957 0.0195312 1.12988 -0.0498047 1.67969c-1.23047 0.549805 -2.53027 0.870117 -3.81055 1.28027c-3.12988 1.0293 -6.29004 1.95996 -9.41016 3.01953c-1.79004 0.620117 -3.66992 1 -5.41016 1.79004
c-0.0292969 0.370117 -0.0693359 0.730469 -0.109375 1.08984c5.08984 0.19043 10.2002 -0.0595703 15.2998 0.120117c3.36035 0.129883 6.73047 -0.0800781 10.0898 0.0703125c0.120117 0.389648 0.259766 0.769531 0.370117 1.16016
c1.08008 4.93945 2.33008 9.8291 3.38965 14.75zM251.07 324.64c0.359375 -0.0498047 0.719727 -0.120117 1.08008 -0.199219c0.979492 -3.85059 1.72949 -7.76074 2.70996 -11.6104c0.359375 -1.41992 0.55957 -2.87988 1.0293 -4.27051
c2.53027 -0.179688 5.07031 0.0107422 7.61035 -0.0498047c5.16016 -0.120117 10.3301 -0.120117 15.4902 -0.0693359c0.759766 0.00976562 1.51953 -0.0302734 2.2793 -0.0800781c-0.0390625 -0.360352 -0.0693359 -0.720703 -0.0996094 -1.08008
c-1.82031 -0.830078 -3.78027 -1.25 -5.66992 -1.89062c-3.73047 -1.22949 -7.48047 -2.38965 -11.2197 -3.56934c-0.570312 -0.169922 -1.12012 -0.419922 -1.66992 -0.640625c-0.150391 -0.549805 -0.180664 -1.12012 -0.120117 -1.68945
c0.870117 -0.480469 1.81934 -0.810547 2.76953 -1.08984c4.87988 -1.52051 9.73047 -3.14062 14.6299 -4.60059c0.379883 -0.129883 0.780273 -0.269531 1.12988 -0.490234c0.400391 -0.269531 0.230469 -0.790039 0.150391 -1.17969
c-1.66016 -0.129883 -3.30957 -0.0302734 -4.96973 -0.0400391c-5.16992 -0.00976562 -10.3301 0.00976562 -15.5 -0.00976562c-1.61035 -0.0302734 -3.21973 0.0195312 -4.82031 -0.209961c-0.519531 -1.66992 -0.719727 -3.41992 -1.16992 -5.11035
c-0.94043 -3.56934 -1.51953 -7.24023 -2.54004 -10.7793c-0.360352 -0.0107422 -0.709961 -0.0205078 -1.05957 -0.0605469c-0.290039 1.73047 -0.150391 3.48047 -0.150391 5.21973v38.1299c0.0205078 1.78027 -0.0800781 3.58008 0.110352 5.37012zM65.0498 279.67
c1.12012 2.15039 2.08008 4.40039 3.37012 6.45996c-1.82031 -7.55957 -2.91016 -15.2695 -3.62012 -23c-0.799805 -7.70996 -0.849609 -15.4902 -0.540039 -23.2295c1.0498 -19.9404 5.54004 -39.8301 14.2305 -57.8809c2.99023 -5.98926 6.34961 -11.8291 10.5 -17.1094
c6.12012 -7.46973 12.5293 -14.7598 19.8398 -21.0898c4.7998 -4.10059 9.99023 -7.78027 15.54 -10.8008c3.26953 -1.64941 6.50977 -3.38965 9.93945 -4.67969c5.01074 -2.03027 10.1904 -3.60938 15.4209 -4.93945c3.8291 -0.959961 7.7793 -1.41016 11.5195 -2.70996
c5 -1.57031 9.46973 -4.61035 13.0303 -8.43066c4.92969 -5.22949 8.08984 -11.8701 10.2002 -18.6699c0.989258 -2.89941 1.58984 -5.91016 2.16992 -8.91992c0.149414 -0.75 0.219727 -1.51953 0.15918 -2.29004c-6.5 -2.78027 -13.2598 -5.05957 -20.2598 -6.17969
c-4.10938 -0.780273 -8.29004 -0.990234 -12.46 -1.08008c-10.25 -0.240234 -20.4697 1.75977 -30.1201 5.12012c-3.73926 1.41992 -7.48926 2.84961 -11.0293 4.71973c-8.06055 3.83984 -15.6406 8.7002 -22.46 14.46c-2.9209 2.5498 -5.83008 5.12988 -8.40039 8.03027
c-9.16016 9.83008 -16.2998 21.4102 -21.79 33.6494c-2.38965 5.55078 -4.61035 11.1807 -6.37012 16.96c-1.16992 3.94043 -2.36035 7.89062 -3.25977 11.9102c-0.75 2.94043 -1.21973 5.9502 -1.87012 8.91992c-0.459961 2.14062 -0.69043 4.32031 -1.03027 6.48047
c-0.849609 5.42969 -1.2793 10.9297 -1.33008 16.4297c0.110352 6.18066 0.25 12.3701 1.07031 18.5c0.400391 2.86035 0.669922 5.74023 1.15039 8.60059c0.979492 5.69922 2.13965 11.3691 3.70996 16.9297c3.08984 11.6504 7.47949 22.9502 12.6895 33.8398z
M428.78 286.11c1.09961 -1.66016 1.91016 -3.48047 2.7793 -5.26074c2.10059 -4.44922 4.24023 -8.89941 6.02051 -13.4893c7.61035 -18.7607 12.2998 -38.79 13.04 -59.0508c0.0195312 -1.75977 0.0703125 -3.51953 0.110352 -5.29004
c0.129883 -9.56934 -1.27051 -19.0898 -3.18066 -28.4492c-0.729492 -3.58984 -1.54004 -7.16992 -2.58008 -10.6904c-4.04004 -14.7197 -10 -29 -18.4102 -41.7803c-8.20996 -12.5693 -19.0098 -23.5498 -31.8398 -31.4092
c-5.72949 -3.59082 -11.79 -6.64062 -18.0498 -9.19043c-5.78027 -2.19043 -11.71 -4.03027 -17.7998 -5.11035c-6.40039 -1.0498 -12.9102 -1.51953 -19.4004 -1.22949c-7.91992 0.479492 -15.7793 2.07031 -23.21 4.84961
c-1.93945 0.799805 -3.93945 1.45996 -5.83984 2.33008c-0.209961 1.50977 0.25 2.99023 0.530273 4.45996c1.16016 5.74023 3.03027 11.3604 5.7002 16.5801c2.36914 4.50977 5.51953 8.65039 9.45996 11.9004c2.42969 2.0498 5.23926 3.60938 8.15918 4.83008
c3.58008 1.5 7.4707 1.96973 11.2402 2.83008c7.23047 1.70996 14.3701 3.92969 21.1504 7c10.3496 4.64941 19.71 11.3799 27.6494 19.46c1.59082 1.60938 3.23047 3.17969 4.74023 4.86914c3.37012 3.76074 6.70996 7.57031 9.85059 11.5303
c7.47949 10.0703 12.8193 21.5898 16.71 33.4805c1.58008 5.2998 3.20996 10.5996 4.20996 16.0498c0.629883 2.87012 1.04004 5.78027 1.51953 8.67969c0.870117 6.08984 1.58984 12.2207 1.67969 18.3799c0.120117 6.65039 0.140625 13.3203 -0.529297 19.9404
c-0.730469 7.99023 -1.87012 15.96 -3.70996 23.7803z" />
    <glyph glyph-name="phoenix-squadron" unicode="&#xf511;" horiz-adv-x="512" 
d="M96 384.62c46.4902 36.1299 105.55 56.0703 164.51 54.5703c29.5801 0.379883 59.1104 -5.37012 86.9102 -15.3301c-24.1299 4.62988 -49 6.33984 -73.3799 2.44922c-42.8701 -5.30957 -83.04 -27.1494 -111.83 -59.1797c5.66992 1 10.7803 3.66992 16 5.86035
c18.1396 7.87012 37.4902 13.2598 57.2305 14.8301c19.7393 2.12988 39.6396 0.429688 59.2793 -1.91992c-14.4199 -2.79004 -29.1201 -4.57031 -43 -9.59082c-34.4297 -11.0693 -65.2695 -33.1592 -86.2998 -62.6299c-13.7998 -19.71 -23.6299 -42.8594 -24.6699 -67.1299
c-0.349609 -16.4902 5.21973 -34.8096 19.8301 -44c8.0293 -4.85254 17.4395 -7.64648 27.498 -7.64648c3.4209 0 6.7793 0.289062 10.0215 0.90625c15.4502 2.45996 30.0703 8.64062 43.6006 16.3301c11.5195 6.82031 22.6699 14.5508 32 24.25
c3.79004 3.2207 2.53027 8.4502 2.62012 12.79c-2.12012 0.339844 -4.37988 1.11035 -6.30078 -0.299805c-11.2676 -6.17773 -23.3838 -11.3975 -35.8193 -15.3701c-20 -6.16992 -42.1602 -8.45996 -62.1006 -0.779297c12.79 -1.73047 26.0605 -0.310547 37.7402 5.43945
c20.2305 9.71973 36.8105 25.2002 54.4404 38.7705c27.625 21.2686 57.3311 39.7881 88.8994 55.3096c25.71 12 52.9404 22.7803 81.5703 24.1201c-15.6299 -13.7197 -32.1504 -26.5205 -46.7803 -41.3799c-14.5098 -14 -27.46 -29.5 -40.1094 -45.1807
c-3.52051 -4.59961 -8.9502 -6.93945 -13.5801 -10.1592c-22.333 -15.0176 -40.1992 -35.627 -51.8906 -60.1006c-9.33008 -19.6797 -14.5 -41.8496 -11.7695 -63.6494c1.93945 -13.6904 8.70996 -27.5908 20.8994 -34.9102c12.9004 -8 29.0508 -8.07031 43.4805 -5.10059
c32.7998 7.4502 61.4297 28.8906 81 55.8408c20.4404 27.5195 30.5195 62.1992 29.1602 96.3496c-0.520508 7.5 -1.57031 15 -1.66016 22.4902c8 -19.4805 14.8203 -39.71 16.6504 -60.8301c2 -14.2803 0.75 -28.7598 -1.62012 -42.9004
c-1.91016 -11 -5.66992 -21.5098 -7.78027 -32.4297c19.9287 22.3428 33.9023 50.3545 39.3398 81.0703c1.48438 9.39258 2.25488 19.0225 2.25488 28.8301c0 27.0342 -5.95508 52.6875 -16.4648 75.8096c20.7803 -32 32.3398 -69.5801 35.71 -107.48
c0.490234 -12.7295 0.490234 -25.5098 0 -38.2295c-2.89453 -35.0469 -13.3936 -68.4854 -29.5898 -97.75c-26.1201 -47.3398 -68 -85.6299 -117.19 -108c-78.29 -36.2305 -174.68 -31.3203 -248 14.6797c-39.0088 23.8643 -70.5215 57.7861 -91.4492 98.6602
c-14.2646 28.0879 -23.2725 59.8086 -25.3604 92.9199v31.3398c3.92969 69.7402 40.8701 135.92 96 178.36zM318 304.29c5.50781 0.932617 10.9404 2.46973 16 4.47949c5 1.77051 9.24023 5.94043 10.3203 11.2207c-8.95996 -4.99023 -17.9805 -9.91992 -26.3203 -15.7002z
" />
    <glyph glyph-name="sith" unicode="&#xf512;" 
d="M0 416l118.75 -69.71l-11.5195 58.9004l91.0596 -69.8701c8.5 1.50977 17.0996 2.29004 25.71 2.29004s17.21 -0.770508 25.71 -2.29004l91.0596 69.8701l-11.5195 -58.9004l118.75 69.71l-69.71 -118.75l58.8604 11.5195l-69.8408 -91.0293
c3.04004 -17.0098 3.03027 -34.4404 0 -51.4502l69.8408 -91.0303l-58.8604 11.5205l69.71 -118.78l-118.75 69.71l11.5195 -58.8604l-91.0293 69.8408c-17.0098 -3.04004 -34.46 -3.04004 -51.4805 0l-91.0293 -69.8408l11.5195 58.8604l-118.75 -69.71l69.71 118.78
l-58.8604 -11.5205l69.8408 91.0303c-1.49512 8.39453 -2.27539 16.7734 -2.27539 25.5947s0.780273 17.4609 2.27539 25.8555l-69.8408 91.0293l58.8604 -11.5195zM224 316.22c-31.7998 0 -63.6104 -12.0898 -87.8496 -36.3398c-48.4902 -48.4902 -48.5 -127.2 0 -175.7
c48.5 -48.4893 127.21 -48.5195 175.699 -0.0292969c48.4902 48.4893 48.5 127.199 0 175.699c-24.25 24.25 -56.0498 36.3701 -87.8496 36.3701zM224 279.56c22.4199 0 44.8301 -8.51953 61.9199 -25.6094c34.1904 -34.1904 34.1797 -89.6904 0 -123.87
c-34.1895 -34.1797 -89.6504 -34.1904 -123.84 0c-34.1904 34.1895 -34.1797 89.6895 0 123.87c17.0898 17.0898 39.5 25.6094 61.9199 25.6094z" />
    <glyph glyph-name="trade-federation" unicode="&#xf513;" horiz-adv-x="496" 
d="M248 439.2c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM248 -43.5996c129.7 0 234.8 105.1 234.8 234.8s-105.1 234.8 -234.8 234.8s-234.8 -105.1 -234.8 -234.8s105.1 -234.8 234.8 -234.8zM403.1 284.9v-0.100586h-145.699
v-34.7998h83.2998v-47h-83.2998v-195.8h-48.8008v196.8h-117.699l-36.7002 46h155.1v81.7002h193.8v-46.7998zM329.8 239.8h-82.8994v56.2002h145v24.4004h-171.801v-80.6006h-143.899l20.0996 -23.8994h123.8v-197.4h26.8008v197.4h82.8994v23.8994zM168.5 308.8l22 9.2998
l-15.7998 -18.0996l15.7002 -18.0996l-22.2002 9.5l-12.2998 -20.5l2.09961 24l-23.2998 5.39941l23.5 5.40039l-2.10059 23.7998zM138.9 328.5l9.5 -10.2002l-13.8008 5.2998l-6.7998 -12.1992l0.799805 14.6992l-13.6992 2.7002l14.2998 3.7998l-1.7002 13.9004
l8 -12.4004l12.7002 5.90039zM304.3 183.3l-9.2998 -10.7998l9.40039 -10.7002l-13.1006 5.5l-7.2998 -12.2002l1.2002 14.2002l-13.9004 3.2002l13.9004 3.2002l-1.2998 14.2002l7.2998 -12.2002zM411.2 260.5l-15 -17.5996l15.0996 -17l-21.2002 8.7998l-11.5 -19.6006
l1.80078 22.9004l-22.2002 4.90039l22.2998 5.39941l-2.2002 22.7002l12 -19.5996zM248 418.1c125.3 0 226.9 -101.6 226.9 -226.899s-101.601 -226.9 -226.9 -226.9s-226.9 101.601 -226.9 226.9s101.601 226.899 226.9 226.899zM342.6 252h-83.1992v30.9004h145.699
v50.6992h-197.8v-81.5996h-157.399l40 -49.9004h116.699v-196.8h52.7002v195.7h83.2998v51zM248 404.8c-94.5996 0 -174.9 -61.5996 -202.9 -146.8h157.4v81.5996h199.1c-38.7998 40.2002 -93.2998 65.2002 -153.6 65.2002zM248 -22.2998c117.9 0 213.5 95.5996 213.4 213.5
c0 51.8994 -18.5 99.5 -49.3008 136.5v-50.7998h-145.6v-19.2002h83.2002v-62.7002h-83.2998v-195.8h-64.6006v196.8h-114.7l-43.7998 56.2998c-5.7998 -19.2998 -8.89941 -39.8994 -8.89941 -61.0996c0 -117.9 95.6992 -213.5 213.6 -213.5zM178.8 173l22.7002 9.2998
l-16.9004 -17.0996l15.8008 -18.7998l-21.5 10.7998l-13 -20.9004l3.69922 23.7998l-23.7998 5.90039l23.7002 3.90039l-1.7002 24.5z" />
    <glyph glyph-name="wolf-pack-battalion" unicode="&#xf514;" horiz-adv-x="512" 
d="M267.73 -23.5303l-11.4404 -21.1396l-11.4404 21.1104l-10.5596 -15.8408l-5.28027 12.3203l-5.2793 -7v-29.8301c-21.0605 7.91992 -21.1104 66.8604 -25.5107 97.21c-4.62012 31.8799 0.879883 92.8105 -81.3701 149.11c8.88086 23.5996 12 49.4297 2.64062 80.0498
c-27.8701 -3.33008 -53.9404 -10.5801 -63.3398 -54.0996l30.3496 -8.36035c-11.2002 -23.04 -17.0195 -46.7598 -13.2002 -72.1396l27.2705 7l6.16016 -33.4307l18.4697 7l8.7998 -33.4297l19.3496 7l-26.4297 -21.0596l-8.7998 28.1494l-24.6299 -5.28027l-7 35.6309
l-26.3906 -14.5205c-0.25 20.0205 -6.95996 58.0605 8.80078 84.4502l-26.3906 -5.28027c-3.99023 22.0703 2.37988 39.21 7.91992 56.7402l-22.4297 -9.67969c0.44043 25.0693 29.9404 56.79 61.5898 58.5098c20.2197 1.08984 56.7305 25.1602 54.1006 51.8994
c-1.95996 19.8701 -17.4502 42.6201 -43.1104 49.7002c43.9795 -36.5098 9.71973 -67.2998 -5.28027 -73.46c-4.39941 11.4404 -17.54 69.0801 0 130.2c40.4697 -22.8701 89.7002 -65.0996 93.21 -147.86l58.0605 -38.71l3.51953 -93.25l-107.33 59.8203l-7 -7
l17.5801 -3.50977l44 -38.71l15.8398 5.2793l28.1504 -49.2598l3.51953 -119.64l-21.1094 -15.8398l32.5498 -15.8398l32.5498 15.8398l-21.1094 15.8398l3.51953 119.64l28.0996 49.25l15.8408 -5.28027l44 38.7109l17.5898 3.51953l-7 7l-107.3 -59.7695l3.51953 93.25
l58 38.71c3.5498 82.6895 52.8096 124.92 93.2002 147.79c17.54 -61.1201 4.39941 -118.761 0 -130.2c-14.96 6.16016 -49.2803 36.9502 -5.28027 73.46c-25.6602 -7.08008 -41.1104 -29.8301 -43.1104 -49.7002c-2.63965 -26.7305 33.8809 -50.8096 54.1006 -51.9004
c31.6396 -1.70996 61.1396 -33.4297 61.5801 -58.5l-22.4307 9.68066c5.54004 -17.5303 11.9209 -34.6699 7.9209 -56.7402l-26.3906 5.28027c15.7998 -26.3906 9.0498 -64.4502 8.7998 -84.4502l-26.3896 14.5195l-7 -35.6299l-24.5898 5.24023l-8.7998 -28.1504
l-26.3906 21.1104l19.3506 -7l8.7998 33.3896l18.4697 -7l6.16016 33.4307l27.2803 -7.05078c3.7998 25.3809 -2.0498 49.1406 -13.2002 72.1406l30.3496 8.35938c-9.42969 43.5205 -35.4297 50.7305 -63.3398 54.1006
c-9.35938 -30.6201 -6.24023 -56.4404 2.64062 -80.0498c-82.25 -56.3008 -76.75 -117.221 -81.3701 -149.11c-4.40039 -30.3496 -4.4502 -89.29 -25.5107 -97.21v29.9502l-5.2793 7l-5.28027 -12.3203zM346.9 71.4697l-15.8408 10.5303
c7.4707 4.36035 13.7607 8.41992 19.3506 12.3203c-0.600586 -7.2207 -0.270508 -13.8398 -3.50977 -22.8398v-0.0107422zM375.05 120.73c-0.399414 -10.9404 -0.899414 -21.6602 -1.75977 -31.6709c-7.84961 1.86035 -15.5703 3.80078 -21.1104 7
c8.24023 7.94043 15.5508 16.3203 22.8701 24.6807v-0.00976562zM399.68 115.45l-23.75 6.16016c6.78906 8.64844 12.9297 17.708 18.4707 27.2695c3.22949 -9.21973 5.2793 -20 5.2793 -33.4297zM403.2 196.39c19.4395 -12.8096 27.7998 -33.6592 29.9102 -56.2998
c-12.3203 4.53027 -24.6299 9.31055 -36.9502 10.5605c5.05957 12 6.64941 28.1396 7 45.7393h0.0400391zM401.44 242.13c18.5596 -2.62988 35.1494 -9.18945 45.7598 -28.1494c-14.2197 -4.36035 -24.7803 -5.9707 -44 -14.0801
c0.0800781 13.4092 -0.950195 27.9297 -1.75977 42.2295zM165.68 71.4805c-3.23926 9 -2.91016 15.5791 -3.50977 22.8398c5.58984 -3.90039 11.8799 -7.95996 19.3496 -12.3203zM137.53 120.74c7.31934 -8.36035 14.6299 -16.7402 22.8701 -24.6699
c-5.54004 -3.2002 -13.2607 -5.14062 -21.1104 -7c-0.860352 10.0098 -1.36035 20.7295 -1.75977 31.6699zM112.89 115.46c0 13.4297 2 24.21 5.28027 33.4297c5.54102 -9.56152 11.6816 -18.6211 18.4697 -27.2695zM109.37 196.4h0.0898438
c0.349609 -17.6006 2 -33.7402 7 -45.7402c-12.3701 -1.25 -24.6797 -6.03027 -37 -10.5605c2.11035 22.6406 10.4697 43.4902 29.9102 56.3008zM111.13 242.14c-0.80957 -14.2998 -1.83984 -28.8193 -1.75977 -42.2295c-19.2197 8.10938 -29.7803 9.71973 -44 14.0801
c10.6299 18.9502 27.2295 25.5195 45.7598 28.1494z" />
    <glyph glyph-name="hornbill" unicode="&#xf592;" horiz-adv-x="512" 
d="M76.3799 77.7002c0.219727 -1.64648 0.333008 -3.32617 0.333008 -5.03125c0 -20.8623 -16.9375 -37.7998 -37.8008 -37.7998c-20.8623 0 -37.7998 16.9375 -37.7998 37.7998s16.9375 37.7998 37.7998 37.7998c1.84668 0 3.62207 -0.0927734 5.39746 -0.348633
c-78.2793 111.35 52 190.53 52 190.53c-5.85938 -43 -8.23926 -91.1602 -8.23926 -91.1602c-67.3105 -41.4902 0.929688 -64.0605 39.8096 -72.8701c19.7207 -53.6396 71.2256 -91.8984 131.66 -91.9404c1.91992 0 3.76953 0.209961 5.66992 0.280273l0.110352 -18.8604
c-99.2207 -1.38965 -158.7 29.1406 -188.94 51.6006zM184.38 405.4c109.75 73.9395 187.601 -54.0605 187.601 -54.0605c-43.04 5.86035 -91.1807 8.24023 -91.1807 8.24023c-43.0996 70.0098 -65.7998 -6.58008 -73.7998 -44.29
c-51.5254 -20.7842 -87.8506 -71.208 -87.8896 -130.13c0 -0.910156 0.139648 -1.78027 0.139648 -2.67969l-21.8398 -0.150391c-1.41016 100.43 29.8701 160.09 52.4199 190c-1.02051 -0.0820312 -2.03711 -0.0888672 -3.07812 -0.0888672
c-20.9453 0 -37.9492 17.0049 -37.9492 37.9502s17.0039 37.9502 37.9492 37.9502c15.0898 0 28.1338 -8.8252 34.248 -21.5918c2.35742 -4.91211 3.70117 -10.4102 3.70117 -16.2188c0 -1.67188 -0.109375 -3.31738 -0.321289 -4.93066zM488.57 271.23
c-4.87012 -2.31934 -10.2754 -3.63965 -16.0244 -3.63965c-1.09375 0 -2.17578 0.046875 -3.24609 0.139648c84.4502 -113.45 -49 -194.61 -49 -194.61c5.87012 43.0303 8.20996 91.1602 8.20996 91.1602c66.6006 40.96 0.640625 63.54 -38.46 72.54
c-20.5566 51.9932 -71.2275 88.7393 -130.49 88.7598c-2.75 0 -5.43945 -0.259766 -8.13965 -0.410156l-0.139648 22.5c93.6094 1.33008 151.72 -25.7998 183.45 -47.7402c-0.270508 1.82617 -0.375 3.67676 -0.375 5.57715c0 20.9395 17 37.9395 37.9395 37.9395
c20.9404 0 37.9404 -17 37.9404 -37.9395c0 -15.1162 -8.85938 -28.1797 -21.665 -34.2764zM374.06 11.7598v-0.0595703c0.112305 0.000976562 0.239258 -0.0332031 0.351562 -0.0332031c20.9336 0 37.9297 -16.9961 37.9297 -37.9297
c0 -20.9346 -16.9961 -37.9307 -37.9297 -37.9307c-15.0908 0 -28.1348 8.83203 -34.2412 21.6035c-2.0498 4.26074 -3.33984 9.0332 -3.63965 14c-111.98 -80.3398 -191.9 51 -191.9 51c43.0703 -5.87988 91.1904 -8.21973 91.1904 -8.21973
c41.3301 -67.1709 63.9199 0.540039 72.7695 39.4893c53.3574 19.8584 91.3574 71.2188 91.3906 131.45c0 2.08008 -0.220703 4.08984 -0.300781 6.15039l19.5205 0.139648c1.28027 -89.9697 -23.71 -147.2 -45.1406 -179.66z" />
    <glyph glyph-name="mailchimp" unicode="&#xf59e;" 
d="M330.61 204.48c-2.50977 3.17969 -4.70996 8.31934 -5.9707 14.3193c-2.22949 10.6807 -1.98926 18.4102 4.24023 19.4199c6.23047 1.01074 9.25 -5.45996 11.4805 -16.1299c1.5 -7.17969 1.20996 -13.7803 -0.450195 -17.6094
c-1.53418 0.198242 -3.02441 0.300781 -4.61328 0.300781c-1.58789 0 -3.15234 -0.102539 -4.68652 -0.300781zM277.05 196c-4.45996 1.95996 -10.2598 4.13965 -17.2598 3.7002c-12.5996 -0.770508 -21.75 -7.21973 -22.5996 -3.48047
c-0.400391 1.83984 2.40918 4.87988 5.40918 7.06055c5.20117 3.80859 11.6621 6.06055 18.5967 6.06055c4.25391 0 8.31152 -0.84668 12.0137 -2.38086c8.63965 -3.7002 14.0098 -11.1504 12.1201 -13.0898c-1.08008 -1.12988 -3.81055 0.129883 -8.28027 2.12988z
M268.05 190.87c9.68066 1.14941 16.8604 -4.62988 15.4004 -6.85059c-0.629883 -1.00977 -2.02051 -0.829102 -4.94043 -0.489258c-1.85449 0.286133 -3.73438 0.420898 -5.66895 0.420898c-4.59277 0 -8.99121 -0.838867 -13.0508 -2.37109
c-4.04004 -1.62012 -4.30957 -1.15039 -5.20996 -0.810547c-1.53027 3.57031 4.40039 8.68066 13.4697 10.1006zM322.22 173.77c-3.40039 -6.91016 -17.7002 0.0703125 -14.2998 7c3.40039 6.93066 17.6797 -0.129883 14.2998 -7zM337.88 194.24
c7.69922 -0.149414 7.42969 -16.0605 -0.259766 -15.9307c-7.69043 0.130859 -7.40039 16.0605 0.259766 15.9307zM119.09 115.34c4.0293 0.910156 3.40039 -1.25 3.37012 -0.359375c0.291016 -0.358398 0.464844 -0.818359 0.464844 -1.31445
c0 -0.369141 -0.0966797 -0.71582 -0.264648 -1.01562c-3.16016 -7.37012 -20.1904 -7.68066 -21.5801 9c-0.910156 10.8594 9.30957 21.0293 -2.28027 28.6191c-2.02734 1.34277 -4.46289 2.14648 -7.0752 2.14648c-4.51465 0 -8.4873 -2.33691 -10.7744 -5.86621
c-3.2998 -5.16016 -3.11035 -12.2002 -7.37988 -11.6299c-3.7207 0.540039 -3.70996 14.4805 5 24.0801c7.22949 8 25.9492 11.9297 35.0498 -5.54004c8.11035 -15.3896 -8.2002 -27.7695 -3 -35.7695c2.46973 -3.80078 7.14941 -2.66016 8.46973 -2.35059zM418.81 132.41
c6.44043 0 16.5605 -7.5 16.5605 -25.2705c0 -17.7695 -7.37012 -37.9092 -9.11035 -42.3799c-54.3896 -130.279 -264.56 -130.06 -322.29 3c-31.5293 -0.0400391 -64.1699 26.9805 -67.5293 60.3799c-0.308594 2.71191 -0.438477 5.42383 -0.438477 8.2168
c0 8.89062 1.60352 17.4102 4.53809 25.2832l-14.7598 12.5107c-67.5498 57.04 143.72 291.85 211.27 232.93c0.339844 -0.299805 22.9902 -22.5205 23.0498 -22.5703l12.5508 5.33008c59.2695 24.5303 107.359 12.6904 107.42 -26.4697
c0.0292969 -20.3604 -12.9404 -44.1006 -33.7305 -65.6504c26.1699 -24.2998 20.0205 -71.6094 21.5205 -83c7.19922 -2 30.6992 -7.62012 41.0996 -18.54c18.3604 -19.25 5.52051 -39.5801 3.07031 -43.25c4.20996 -11.2998 3.42969 -8.79004 6.7793 -20.5195z
M102.81 84.25c29.4502 -0.680664 38.6309 28.2002 34.0908 57.8398c-9.74023 62.9404 -90.1699 48.9805 -84 -12.3301c2.44922 -24.3594 27.0898 -44.8994 49.9092 -45.5098zM84.2998 198.45c19.3105 51.8096 51.54 99.5498 94.2002 132.399
c31.6504 26.4102 65.7998 45.3506 65.7998 45.3506s-18.3896 21.3193 -23.9395 22.8896c-34.1699 9.23047 -107.94 -41.6494 -155.051 -108.88c-19.0596 -27.21 -46.3096 -75.3604 -33.2998 -100.21c1.58984 -3 10.71 -10.9297 15.5898 -15
c8.18066 11.9102 21.54 20.5 36.7002 23.4502zM323.18 97.2998c2.58984 0.259766 0.560547 -2.53027 0.560547 -2.53027s-27.4004 -12.75 -71 0.740234c1.20996 -10.2295 11.1699 -14.8193 15.9395 -16.6699c31.4004 -12.21 86.6904 -2.58008 128.46 26
c0.850586 0.589844 1.41992 0 0.730469 -1c-28.9697 -41.3496 -128.73 -54.7598 -151.37 -21.3496c-12.0801 17.8301 -0.599609 43.8594 19.5498 41.1494c6.7998 -0.769531 53.7705 -8 100.48 13.6807c27.4893 12.7598 37.8701 26.79 36.3096 38.1602
c-0.537109 3.60742 -2.25 6.85156 -4.74023 9.28906c-5 4.83008 -12.79 8.60059 -26 12.3105c-4.35938 1.22949 -7.31934 2.00977 -10.5098 3.05957c-5.67969 1.83008 -8.47949 3.33008 -9.10938 14c-0.280273 4.62988 -1.09082 20.9102 -1.38086 27.6299
c-0.519531 11.7607 -1.91992 27.8506 -11.9199 34.4902c-2.71094 1.73535 -5.94238 2.75098 -9.39746 2.75098c-1.44824 0 -2.85645 -0.177734 -4.20215 -0.510742c-5.69043 -0.969727 -9.06055 -4.00977 -13.2598 -7.50977
c-12.4404 -10.3701 -22.9502 -12.0605 -34.6406 -11.5605c-6.98926 0.290039 -14.3994 1.37988 -22.8799 1.87988l-5 0.290039c-19.5801 1 -40.5693 -15.9092 -44.0693 -39.9092c-4.86035 -33.4307 19.3291 -50.7002 26.3291 -60.8301
c1.04785 -1.25391 1.74121 -2.82812 1.9209 -4.54004c0 -1.94043 -1.25 -3.48047 -2.48047 -4.79004c-19.9805 -20.54 -26.3701 -53.1699 -18.8398 -80.3701c0.927734 -3.33594 2.13574 -6.6377 3.5498 -9.74023c17.7002 -41.2598 72.4902 -60.4795 126 -43
c7.01562 2.29199 13.8936 5.20215 20.3398 8.58008c11.8203 5.84668 22.2969 13.7168 31.1504 23.3096c14.2002 14.8408 22.6396 30.9707 25.9297 50.8408c2.81055 18.6191 -7.78027 18.7598 -11.4395 18.0996c-1.37598 8.42188 -3.82812 16.6758 -7.12012 24.2803
c-15.6299 -12.3506 -35.71 -20.9707 -51 -25.3506c-69.4004 -19.9102 -90.1904 6.35059 -96.4004 -13.8096c33.7705 -12.3701 69.5098 -7.07031 69.5098 -7.07031zM171.31 290.5l0.0605469 0.00976562c-0.107422 -0.130859 -0.170898 -0.297852 -0.170898 -0.480469
c0 -0.419922 0.34082 -0.759766 0.759766 -0.759766c0.151367 0 0.292969 0.0439453 0.411133 0.120117c11.4199 8.30078 64.9502 42.7705 134.5 26.8301c0.860352 -0.189453 1.39941 1.29004 0.639648 1.7207c-11.3398 6.33984 -28.6895 10.6494 -41 10.7393
c-0.405273 0.00976562 -0.732422 0.342773 -0.732422 0.750977c0 0.164062 0.0527344 0.31543 0.142578 0.439453c2.23535 2.92383 4.79492 5.49414 7.70996 7.74023c0.18457 0.140625 0.303711 0.362305 0.303711 0.611328
c0 0.424805 -0.345703 0.770508 -0.770508 0.770508c-0.0175781 0 -0.0351562 -0.000976562 -0.0527344 -0.00195312c-17.5205 -1.08008 -37.5107 -9.4707 -49 -17.2998c-0.12207 -0.0859375 -0.271484 -0.136719 -0.431641 -0.136719
c-0.414062 0 -0.75 0.335938 -0.75 0.75c0 0.0605469 0.0078125 0.120117 0.0214844 0.176758c0.899414 4.30957 3.72949 9.98926 5.18945 12.6494c0.0644531 0.108398 0.101562 0.236328 0.101562 0.371094c0 0.40332 -0.327148 0.730469 -0.730469 0.730469
c-0.134766 0 -0.261719 -0.0371094 -0.371094 -0.101562c-18.4697 -9.4502 -39.0898 -26.2803 -55.8301 -45.6299z" />
    <glyph glyph-name="megaport" unicode="&#xf5a3;" horiz-adv-x="496" 
d="M214.5 238.4l33.4004 33.3994l33.3994 -33.3994v-66.4004l-33.2998 -33.2998l-33.5 33.5v66.2002zM248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM393.1 25.5996h0.100586v87.1006l-59.7002 59.7002v87.5996l-59.5 59.5
v75.5996l-26.0996 19.2002l-26.1006 -19.2002v-75.5996l-59.5 -59.5v-87.9004l-59.5 -59.5v-87l26.1006 -19.1992l26.0996 19.1992v65.5l33.5 33.4004l33.4004 -33.4004v-65.5l26.0996 -19.1992l26.2002 19.1992v65.5l33.3994 33.4004l33.4004 -33.4004v-65.5l26 -19.1992z
" />
    <glyph glyph-name="nimblr" unicode="&#xf5a8;" horiz-adv-x="384" 
d="M246.6 148.71c15.5703 0 27.1504 -11.46 27.1504 -27s-11.6201 -27 -27.1504 -27c-15.6992 0 -27.1494 11.5703 -27.1494 27s11.5498 27 27.1494 27zM113 121.75c0 15.6104 11.6797 27 27.1504 27c15.4697 0 27.1494 -11.46 27.1494 -27s-11.4697 -27 -27.1494 -27
c-15.4404 0 -27.1504 11.3096 -27.1504 27zM191.76 289c98.3701 0 177.76 -78.9102 177.76 -176.48c0 -97.5693 -79.6094 -176.52 -177.76 -176.52c-98.1494 0 -177.76 78.8701 -177.76 176.52v335.48l45.25 -227c30.2002 48.2305 97.75 68 132.51 68zM191.76 -19.1201
c73.2402 0 132.51 58.96 132.51 131.64c0 72.6807 -59.2393 131.54 -132.51 131.54c-73.2695 0 -132.51 -58.8994 -132.51 -131.59c0 -72.6895 59.2402 -131.59 132.51 -131.59z" />
    <glyph glyph-name="rev" unicode="&#xf5b2;" 
d="M289.67 173.11c0 -36.1895 -29.3809 -65.5703 -65.5703 -65.5703c-36.1885 0 -65.5693 29.3809 -65.5693 65.5703c0 36.1885 29.3906 65.5596 65.5801 65.5596c36.1631 -0.0439453 65.5156 -29.3965 65.5596 -65.5596zM429.22 178.16v-210.16h-210.16v0.110352
c-110.939 2.70996 -200.06 93.4092 -200.06 205c0 108.569 84.2998 197.319 191 204.569v38.3203l108.77 -62.7803l-108.77 -62.79v39.1201c-80 -7.16016 -143 -74.5498 -143 -156.43c0 -86.6201 70.4902 -157.12 157.11 -157.12s157.09 70.5 157.09 157.12
c-0.0263672 55.3057 -28.5371 103.871 -71.8105 131.84l45.3799 26.2002c44.3125 -36.582 72.8613 -91.4561 74.3203 -153h0.129883z" />
    <glyph glyph-name="shopware" unicode="&#xf5b5;" horiz-adv-x="512" 
d="M403.5 -7.41016c-40.9688 -30.4482 -91.7109 -48.4707 -146.63 -48.4707c-0.223633 0 -0.646484 -0.120117 -0.870117 -0.119141c-137.19 0 -248 111 -248 248c0 137.19 111 248 248 248h0.21582c63.5576 0 121.648 -24.0508 165.484 -63.5
c0.716797 -0.65332 1.16699 -1.59375 1.16699 -2.63965c0 -1.9707 -1.59961 -3.57031 -3.57031 -3.57031c-0.155273 0 -0.306641 0.0107422 -0.457031 0.0302734c-18.2656 2.43848 -36.9023 3.69727 -55.8301 3.69727c-0.445312 0 -0.43457 -0.0166016 -0.879883 -0.0175781
c-129.36 0 -222.399 -53.4697 -222.399 -155.35c0 -109 92.1299 -145.881 176.829 -178.73c33.6406 -13 65.4004 -25.3604 87 -41.5898c0.868164 -0.65332 1.42969 -1.69238 1.42969 -2.86133c0 -1.16992 -0.561523 -2.20508 -1.42969 -2.8584zM503 214.91
c0.698242 -7.59375 0.950195 -15.1699 0.950195 -22.9443c0 -31.8691 -5.99902 -62.3467 -16.9307 -90.3662c-0.526367 -1.31445 -1.81543 -2.24023 -3.31738 -2.24023c-0.608398 0 -1.18066 0.152344 -1.68262 0.420898
c-29.4893 16.3594 -61.6094 28.3398 -92.6797 39.9297c-60.2803 22.4902 -112.34 41.8896 -112.34 84.4902c0 1.45996 -3.87988 53.6299 80.25 53.6299c50.8604 0 92.7197 -17.4805 144.48 -60.4805c0.706055 -0.598633 1.17871 -1.46484 1.26953 -2.43945z" />
    <glyph glyph-name="squarespace" unicode="&#xf5be;" horiz-adv-x="512" 
d="M186.12 104.66l157.22 157.2c38.5703 38.5898 101.13 38.5898 139.72 0c38.5908 -38.5801 38.5908 -101.13 0 -139.721l-119.25 -119.239l-0.0400391 -0.0400391c-19.2891 -19.2705 -50.5498 -19.25 -69.8193 0.0400391l154.149 154.14
c19.29 19.29 19.29 50.5703 0 69.8604s-50.5693 19.29 -69.8594 0l-157.181 -157.181c-9.64941 -9.64941 -25.29 -9.64941 -34.9395 0c-9.65039 9.65039 -9.65039 25.29 0 34.9404zM430.65 209.46c9.63965 -9.63965 9.63965 -25.2803 -0.0107422 -34.9297l-157.199 -157.2
c-38.5801 -38.5703 -101.141 -38.5703 -139.721 0l-0.0195312 0.0195312c-9.64062 9.65039 -9.62988 25.29 0.0195312 34.9307l0.0107422 0.00976562c9.64941 9.63965 25.2793 9.62988 34.9199 -0.00976562l0.0498047 -0.0498047
c19.29 -19.2607 50.5498 -19.2402 69.8193 0.0498047l157.2 157.18c9.64062 9.65039 25.2803 9.65039 34.9307 0zM168.66 122.13c-38.6006 -38.5801 -101.13 -38.5801 -139.73 0.00976562c-38.5801 38.5801 -38.5801 101.13 0 139.721l119.23 119.25l0.0195312 0.0195312
c19.3008 19.2803 50.5703 19.2705 69.8506 -0.0195312l-154.17 -154.17l-0.0302734 -0.0302734c-19.2803 -19.2998 -19.2598 -50.5605 0.0302734 -69.8398l0.00976562 -0.0107422c19.29 -19.29 50.5703 -19.2793 69.8496 0.0107422l157.21 157.18
c9.64062 9.63965 25.2705 9.63965 34.9102 0c9.64062 -9.65039 9.64062 -25.29 0 -34.9404zM81.3301 174.53c-9.64062 9.64941 -9.65039 25.29 0 34.9297l157.189 157.19c38.5908 38.5898 101.131 38.5898 139.721 0c9.64941 -9.64062 9.64941 -25.2803 0 -34.9307
c-9.64062 -9.64941 -25.2803 -9.64941 -34.9307 0l-0.0195312 0.0205078c-19.29 19.2793 -50.5596 19.2695 -69.8398 -0.0205078l-157.21 -157.189c-9.64062 -9.64062 -25.2705 -9.64062 -34.9102 0z" />
    <glyph glyph-name="themeco" unicode="&#xf5c6;" 
d="M202.9 439.57c9.89941 5.72949 26 5.81934 35.9492 0.209961l191.15 -107.63c10 -5.60059 18 -19.4404 18 -30.8604v-217.29c0 -11.4404 -8.05957 -25.29 -18 -31l-191.19 -108.74c-9.92969 -5.66016 -26 -5.56934 -35.8496 0.209961l-185.1 108.41
c-9.86035 5.78027 -17.8604 19.7402 -17.8604 31.1201v217.29c0 11.4404 8 25.3604 17.9102 31.0801zM125.5 239.74c-15.9404 0 -31.8896 -0.140625 -47.8301 -0.140625v-101.449h19.1299v29.8496h28.7002c49.71 0 49.5596 71.7402 0 71.7402zM265.64 139.45
l-30.7295 34.6396c37 7.50977 34.7998 65.2305 -10.8701 65.5098c-16.0898 0 -32.1699 0.140625 -48.2598 0.140625v-101.59h19.1299v33.9092h18.4102l29.5596 -33.9092h22.7598v1.2998zM224.05 221.77c23.3398 0 23.2598 -32.46 0 -32.46h-29.1299v32.46h29.1299z
M128.49 223.37c21.1797 0 21.1094 -38.8506 0 -38.8506h-32.3105v38.8408zM321.14 241.62c-68.46 0 -71 -105.8 0 -105.8c69.4805 0.00976562 69.4102 105.8 0 105.8zM321.14 224.23c44.1201 0 44.8008 -70.8604 0 -70.8604c-44.7998 0 -44.4297 70.8604 0 70.8604z" />
    <glyph glyph-name="weebly" unicode="&#xf5cc;" horiz-adv-x="512" 
d="M425.09 382.17c50.9102 0 87.5498 -35.1504 86.9199 -83.4697c0 -21.6201 -0.950195 -18.5498 -77.5 -227.2c-22.3799 -60.5703 -67.7695 -69.6699 -92.7402 -69.6699c-39.2393 0 -70.0391 19.46 -85.9297 54.29c-15.8896 -34.5205 -46.7002 -53.9805 -85.9297 -53.9805
c-24.9697 0 -70.3701 8.78027 -92.7402 69.3506c-72.9902 200.21 -77.1699 204.52 -77.1699 233.479c0 43.3105 38.5898 77.2002 87.54 77.2002c40.21 0 73.2803 -25.7295 83.6602 -64.3301c18.4795 58.0498 65.5 64.3301 85.2803 64.3301
c19.4492 0 66.7891 -6.26953 84.9492 -64.3301c10.3799 38.6006 43.7803 64.3301 83.6602 64.3301zM451.43 267.36c3.49023 11.1992 7.29004 19.3701 7.61035 27.2393c0 22.3906 -16.1602 35.71 -38.3301 35.71c-18.6904 0 -31.9902 -11.7998 -36.1104 -29.0498
l-44.0293 -139.819h-0.950195l-44.6602 136.79c-6.01953 19.9697 -16.4697 32.0791 -38.96 32.0791s-32.9404 -12.4092 -38.96 -32.0791l-44.6602 -136.79h-0.950195l-44.0293 139.819c-4.12012 17.25 -17.4199 29.0498 -36.1104 29.0498
c-22.4902 0 -38.3301 -13.0195 -38.3301 -29.3594c0 -10.5898 2.54004 -19.6699 7.91992 -34.5l64.9404 -175.23c7.91016 -21.4795 21.2197 -37.2197 46.2393 -37.2197c23.1201 0 37.0605 12.0996 44.0205 33.5996l39.2803 117.42h0.949219l39.2803 -117.42
c6.65039 -21.4893 20.5898 -33.8994 44.0303 -33.8994c25.0195 0 38.3203 15.7295 46.2402 37.2197z" />
    <glyph glyph-name="wix" unicode="&#xf5cf;" horiz-adv-x="640" 
d="M393.38 316.31c0 -13.0293 2.08008 -32.6895 -28.6797 -43.8291c-9.52051 -3.4502 -15.9502 -9.66016 -15.9502 -9.66016c0 31 4.71973 42.2197 17.4004 48.8594c9.75 5.11035 27.2295 4.62988 27.2295 4.62988zM277.58 280.77
c5.47949 26.3408 30.8799 38.3408 55.2998 35.2705l-65.5703 -247.93s-21.6396 -1.56055 -32.46 3.95996c-14.2197 7.25 -20.9893 12.8398 -29.5898 46.5693c-7.66992 30.0703 -29.1494 118.4 -31.1201 124.7c-4.30957 13.8105 -10.6396 14.9404 -15.3994 0
c-2.00977 -6.29004 -23.4502 -94.6299 -31.1201 -124.7c-8.61035 -33.7295 -15.3701 -39.3193 -29.5898 -46.5693c-10.8301 -5.52051 -32.46 -3.95996 -32.46 -3.95996l-65.5703 247.93c23.8604 3 49.7305 -8.5498 55.2803 -35.2705l34.2393 -132.659l28.4805 108.569
c7.76953 32.3506 21.0596 48.5303 48.4297 48.5303c27.6201 0 40.7402 -16.54 48.4307 -48.5303l28.4795 -108.569zM393.36 275.56v-8.97949l0.0195312 0.00976562v-150.27c-0.129883 -30.8301 -3.33008 -37.6807 -17.2598 -44.7803
c-10.8203 -5.52051 -27.3701 -3.42969 -27.3701 -3.42969v152.069c0 21.25 -1.95996 27.9404 13.1797 35.2002c6.19043 2.96973 11.96 5.25 17.9707 8.61035c9.35938 5.22949 13.46 11.5693 13.46 11.5693zM556.8 191.48l82.9902 -123.36s-35.9297 -4.62012 -53.3203 11.21
c-13.9102 12.6602 -23.7393 28.3398 -53.1396 70.7197c-0.5 0.770508 -6.25977 10.5205 -13.0703 0c-34.9297 -50.3496 -41.0195 -60.2598 -52.5098 -70.7197c-17.3799 -15.8301 -53.9502 -11.21 -53.9502 -11.21l82.9697 123.36l-83.1992 123.739
s35.1094 5.98047 52.5 -9.84961c13.3799 -12.1797 24.8896 -30.2402 54.1797 -72.4697c6.82031 -10.54 12.5996 -0.730469 13.0703 0c29.7695 42.9199 40.8799 60.3691 54.1797 72.4697c17.3896 15.8301 52.5 9.84961 52.5 9.84961z" />
    <glyph glyph-name="ello" unicode="&#xf5f1;" horiz-adv-x="496" 
d="M248 440c136.97 0 248 -111.03 248 -248s-111.03 -248 -248 -248s-248 111.03 -248 248s111.03 248 248 248zM391.84 154.8c2.48047 7.44043 -2.47949 15.71 -9.91992 17.3604c-7.43945 2.47949 -15.71 -2.48047 -17.3604 -9.91992
c-14.0498 -52.9102 -62 -90.1104 -116.56 -90.1104s-102.51 37.2002 -116.56 90.1104c-1.65039 7.43945 -9.9209 11.5693 -17.3604 9.91992c-7.44043 -1.65039 -11.5703 -9.91992 -9.91992 -17.3604c16.5303 -65.3096 76.0498 -111.6 143.84 -111.6
s127.31 46.29 143.84 111.6z" />
    <glyph glyph-name="hackerrank" unicode="&#xf5f7;" horiz-adv-x="512" 
d="M477.5 320c14.5 -25 14.4805 -230.92 -0.00976562 -256s-192.391 -128 -221.33 -128c-28.9404 0 -206.83 102.8 -221.32 128s-14.4102 230.79 0 256s192.351 128 221.32 128s206.84 -103.05 221.34 -128zM316.13 33.7803c3.95996 0 40.4404 35.7793 37.5605 38.6895
c-0.870117 0.839844 -8.82031 1.49023 -17.6904 1.83984c0 32.4004 -3 19.0508 0.679688 210.341c0.0703125 3.65918 -1.04004 5.37988 -4.5 5.37988c-11.0801 0.0693359 -22.1602 0.0195312 -33.2295 -0.0605469c-3.25977 -0.0292969 -4.31055 -1.80957 -4.20996 -5.2002
c1.58984 -48.8994 1.2002 -79.0898 1.2002 -83.6396h-80.2607c0.629883 25.7998 0.209961 79.6396 2.62988 105.39v3.16016c8.87012 0.350586 15.9004 0.970703 16.7705 1.83984c2.90039 2.91016 -34.3203 38.6904 -38.2705 38.6904
c-3.94922 0 -41.4092 -35.7695 -38.4893 -38.6904c0.879883 -0.839844 7.58984 -1.48926 17.2598 -1.83984v-3.16992c3.15039 -128.67 1.07031 -179.229 0.150391 -212.67c-0.130859 -4.58008 1.63965 -6.10938 5.73926 -6.10938
c10.1406 0.0292969 20.2803 -0.0800781 30.4102 -0.0800781c4.16016 -0.0605469 5.96973 1.39941 5.74023 5.93945c-1.83008 36.6797 -1.37012 65.7803 -1.37012 72.8799h79.9297c0 -2.41992 0.44043 -3.84961 0.44043 -5.84961
c-0.350586 -17.7305 -0.94043 -60.0898 -0.94043 -86.3203c-11.29 -0.349609 -16.6797 -0.959961 -17.5498 -1.83008c-2.91016 -2.91992 34 -38.6895 38 -38.6895z" />
    <glyph glyph-name="kaggle" unicode="&#xf5fa;" horiz-adv-x="320" 
d="M304.2 -53.5l1.39941 -7.59961c-0.5 -2 -2.5 -3 -6 -3h-66.8994c-4 0 -7.5 1.7998 -10.5 5.2998l-110.5 140.6l-30.7998 -29.2998v-109c0 -5 -2.5 -7.5 -7.5 -7.5h-51.9004c-5 0 -7.5 2.5 -7.5 7.5v497c0 5 2.5 7.5 7.5 7.5h51.9004c5 0 7.5 -2.5 7.5 -7.5v-306
l132.3 133.7c3.5 3.5 7 5.2998 10.5 5.2998h69.2002c7 0 7.89941 -7.7998 5.2998 -10.5l-139.8 -135.3z" />
    <glyph glyph-name="markdown" unicode="&#xf60f;" horiz-adv-x="640" 
d="M593.8 388.9c25.5 0 46.2002 -20.7002 46.2002 -46.1006v-301.6c0.0996094 -25.4004 -20.5996 -46.1006 -46.0996 -46.1006h-547.7c-25.5 0 -46.2002 20.7002 -46.2002 46.2002v301.5c0 25.4004 20.7002 46.1006 46.2002 46.1006h547.6zM338.5 87.4004h-0.200195v209.199
h-61.5l-61.5 -76.8994l-61.5 76.8994h-61.5v-209.199h61.7002v120l61.5 -76.9004l61.5 76.9004v-120h61.5zM473.8 84.2998l92.2002 107.7h-61.5v104.6h-61.5v-104.6h-61.5z" />
    <glyph glyph-name="neos" unicode="&#xf612;" horiz-adv-x="512" 
d="M415.44 -64h-95.1104l-108.21 154.54v-91.0996l-86.4297 -63.4404h-97.6904v482.18l40.4697 29.8203h108.05l123.74 -176.13v112.68l86.4307 63.4502h97.6895v-461.5zM38.7695 412.73v-460.73l72 52.8799v249.12l215.5 -307.64h84.79l52.3506 38.1699h-78.2705
l-316.14 450.47zM121.31 -53.8799l80 58.7803v101l-79.7598 114.399v-220.939l-72.5498 -53.25h72.3398zM80.6299 437.23l310.601 -442.57h82.3691v442.57h-79.75v-317.561l-222.939 317.561h-90.2803zM311 256.35l72 -102.81v278.53l-72 -53v-122.721z" />
    <glyph glyph-name="zhihu" unicode="&#xf63f;" horiz-adv-x="640" 
d="M170.54 299.87h122.68v-217.55h-49.5293l-42.0107 -26.3701l-7.70996 26.3701l-23.4297 0.00976562v217.54zM268.29 105.94v170.31h-72.8203v-170.31l11.9004 -0.0400391l5.08008 -17.4707l27.8994 17.5107h27.9404zM149.83 200.33
c7.5 0 7.58984 -23.6104 7.58984 -23.6104h-61.6504c-0.879883 -13.1201 -3.50977 -26.6895 -7.86914 -40.6699l14.6191 11.6201c8.73047 -8.75 29.2109 -32.8896 36.79 -41.8096c9.15039 -13.1006 1.24023 -39.9902 1.24023 -39.9902l-53.96 64.9395
c-12.6094 -48.3496 -35.5898 -69.25 -35.5898 -69.25c-10.0898 -8.96973 -30.5098 -15.75 -51 -9.89941c42.8301 33.2197 66.4502 75.2402 70.8496 125.1h-65.5801s3.82031 23.6201 15.5605 23.6201h52.2695c0.480469 6.56055 1.68066 62.9404 1.68066 73.4404h-28.8701
c-2.62988 -7.87012 -3.03027 -8.64062 -5.14062 -14.5303c-11.4697 -21.0303 -30.9492 -21.5703 -36.8398 -22.21c17.4902 34.9795 27.3105 69.2197 30.7002 78.1201c8.2002 21.5693 32.2705 21.5693 32.2705 21.5693c-5.25 -14.0098 -9.63086 -27.5498 -13.1201 -40.6699
h88.5c10.5498 0.25 8.58008 -22.3096 8.58008 -22.3096h-51.1602c0 -21.8701 -0.459961 -46.3604 -2.2002 -73.46h52.3301zM561.85 201.93l-19.2295 14.4307s30.8301 40.0498 36.8301 48.1992c8.72949 10.7402 27.3799 -4.05957 27.3799 -4.05957
s-24.1504 -32.9297 -44.9805 -58.5703zM411.76 261.02l0.00976562 0.0107422c8.99023 -8.25 34.6602 -45.8604 34.6602 -45.8604l-19.46 -13.7295c-1.59961 2.40918 -41.1201 57.4492 -41.1201 57.4492s16.9004 10.3799 25.9102 2.12988zM640 189.65
c0 0 0.950195 -23.79 -8.73047 -23.79h-122.359v-73.3203c0.780273 -28.0303 -15.3301 -45.3096 -44.8906 -45.3096c-9.84961 0 -16.1396 1.75977 -26.0195 6.56934c-12.9805 7.4502 -17.3203 17.8701 -19.3096 21.8398c15.6094 -0.65918 27.6094 -1.91992 41.6895 -1.80957
c13.29 -0.870117 24.4805 7.15039 24.4805 21.1201v70.9199h-107.94c-22.6895 0.540039 -25.5098 22.8496 -25.5098 22.8496h133.47v99.8105c-12.8301 0 -31.6797 -0.830078 -56.5098 -2.43066c-26.46 -0.80957 -35.8398 -2.58984 -49.1504 0.890625
c-8.16016 2.46973 -14.1797 10.7295 -15.7793 19.5498c67.1396 1.55957 232.359 18.0498 232.359 18.0498s20.1006 5.75977 23.1699 4.58008c12.8105 -6.25 0.589844 -33.4395 0.589844 -33.4395c-17.6396 -0.810547 -46.8896 -2.40039 -87.7695 -4.81055
c-10.4297 -0.799805 -18.04 -1.2002 -22.8496 -1.2002v-101c0.149414 0 111.279 0.930664 131.06 0.930664z" />
    <glyph glyph-name="alipay" unicode="&#xf642;" 
d="M377.74 416c38.6895 0 70.0898 -31.5703 69.9297 -70.2598v-234.41c-48.6104 16.7002 -99.6895 36.04 -148.62 52.7402c23.1406 44.2998 38.3506 90.9199 38.3506 90.9199h-88.7705v31.2402h109.45v19.0098h-109.44v50.4199h-50.9199v-50.4199h-109.439v-19.0098h109.439
v-31.2402h-92.0801v-16.7002h178.2s-9.91992 -30.25 -26.4502 -60.3398c-47.7793 14.71 -91.75 24.96 -127.13 24.96c-84.6396 0 -103.49 -42.4902 -99.5195 -81.5c3.30957 -31.0703 26.4502 -76.3701 97.04 -76.3701c64.4795 0 116.55 37.0303 148.62 81
c61.0098 -28.0996 125.64 -62.8203 171.6 -88.4404c-0.5 -38.5195 -31.7402 -69.5996 -70.2598 -69.5996h-307.48c-38.8496 0 -70.2598 31.4102 -70.2598 70.2598v307.48c0 38.8496 31.4102 70.2598 70.2598 70.2598h307.48zM47.2803 125.05
c-0.990234 17.5205 10.9102 50.5801 78.3594 50.5801c24.96 0 64.8105 -12.7295 109.44 -31.4102c-25.29 -33.2197 -65.7998 -72.8994 -117.87 -72.8994c-59.6797 0 -68.9404 33.5596 -69.9297 53.7295z" />
    <glyph glyph-name="the-red-yeti" unicode="&#xf69d;" horiz-adv-x="512" 
d="M488.23 206.3c2.95508 -3.9668 5.25098 -8.47559 6.76953 -13.2998c3.99121 -10.8701 7.04004 -22.4727 8.90039 -34.2002l-2.5 -0.5l-13 14.2998c-17.9004 -28.0996 -9.90039 -15.3994 -16.7002 -25.0996c0 -124.2 -101.3 -211.5 -223 -211.5
c-61.5 0 -113.9 20.2002 -157.5 60.2002c-64.5 60.8994 -64.9004 125 -64.9004 150.5c-0.5 1.7998 -0.700195 3.5 -1.2002 5.2002l-20.1992 -22.4004c-6.80078 43 25.6992 74.2998 33 80.7002c0.5 1 0.699219 2.2002 1.19922 3.2002l-28.7998 1l-3 3.39941
c8.5 3.5 25.2998 13.2998 40.2998 14.2998c7.63672 14.623 16.9365 28.0742 27.8008 40.3008c1.2998 6.39941 3.2998 14.1992 6.59961 25.7998l-7.59961 -4.7002l-1.7002 1.7002l1.7002 8.39941c10.6934 25.7754 26.6318 48.6221 46.6992 67.4004l-33 14.2998h3.7002
c20.9004 4.90039 33.2002 3.2998 49.2002 0c-2.5 4.10059 -5.40039 10.5 -8.40039 18.9004c-1.36035 3.74219 -2.09961 7.81445 -2.09961 12.0244c0 4.69629 0.923828 9.17871 2.59961 13.2754c8.90039 -7.40039 14.3008 -24.5996 15.2002 -27
c0.700195 3.59961 2.10059 21.2998 33.7002 45.5l1.83008 -0.5l-12 -44.2002c30 17.7002 63 21.9004 97.9004 11.7998c-12.7002 -12.1992 -24.3008 -28.8994 -42.5 -33c7.39941 -2.2998 28.6992 -9.69922 34.1992 -15.1992l-24.7998 7.09961
c6.5 -6 19.6006 -16.4004 25.1006 -25.0996c23.7891 -1.09473 46.9111 -5.74414 68.3994 -13.3008l-0.5 0.5c29.4004 14.7002 37.7002 27.3008 74.7998 3c0 -30.1992 -2.2998 -23.3994 3 -29.7998c7.69336 6.50391 16.1553 12.0381 25.3008 16.5
c13 6.40039 23.0996 4.7002 30.6992 -5.89941c11.8008 0 17.8008 -15.7002 18.4004 -27c14.7998 -2.90039 2.7002 -30.7002 2.5 -30.7002l-7.09961 -18.2002c7.7998 -7.7998 22.0996 -20.9004 31.6992 -44.7998zM398 336.8c-13.0996 8.90039 -22.7002 11.9004 -28.2998 8.5
c8.09961 -7.2002 13 -14.2998 13.5 -20.7002c1.2002 -7.59961 -2.2002 -14.7998 -10.6006 -21.8994l-4.19922 -3.40039c4.2002 -6.89355 7.1416 -14.793 8.39941 -23.0996h2.5c-2.09961 13.8994 -2.5 11 0.700195 14.7998c11 -6.40039 14.9004 -14.5 16 -19.9004
c21.7998 10.1006 29.5 12.7002 54.7998 20.9004l-18.2002 -16c11.4004 0 25.6006 0.299805 46.5 -8.40039c7 24.3008 7.10059 20.7002 2.5 20.7002l-4.69922 -11.2998c-1.7002 10.5 -2.90039 18.9004 -3.40039 25.2998c-0.5 6.7002 -3.90039 9.60059 -9.2998 10.1006
c-0.0117188 -0.470703 -0.0126953 -0.894531 -0.0126953 -1.36816c0 -4.77148 0.594727 -9.40527 1.71289 -13.832l-1.7002 -5.90039c-2.90039 10.6006 -5.90039 20.2002 -9.2998 27.7998c-9.7002 17.7002 -30.2002 -9.19922 -43 -11.2998
c4.53027 -0.25293 8.71777 -0.380859 13.3115 -0.380859c4.59277 0 9.15723 0.12793 13.6885 0.380859l-22.4004 -5.39941l3.40039 -4.7002c-5.5 0 -16.9004 -0.900391 -22.4004 17.2002zM358.4 346.9l-20.3008 -11.8008
c11.3008 -7.59961 20.2002 -18.1992 27.8008 -31.1992c6.39941 2.89941 10.0996 5.09961 11.7998 7.59961c2.5 2.7998 2.5 4.7002 3 7.09961c0.599609 1.30078 0.799805 2.7002 -3.40039 11.1006c-7.5 11.7998 -16.2002 15.2998 -18.8994 17.2002zM91 304.9
c-7.7998 -24.1006 -11.7002 -49.4004 -13.2002 -74.6006l13.2002 -5l1.2002 27c9.5 -16.3994 11.2002 -23.2998 12.2998 -28.7998c2.7998 2.09961 7.7002 7 22.5996 11.2998l1.2002 -1.7002l-7.59961 -10.5996c10.0996 3.5 19.5 3.5 28.2998 0.5l-10.5996 -8.40039
c22.7998 -8.39941 26.5996 -7.59961 38.3994 -26.0996l-11.7998 1.2002c34.9297 -20.5 66 -47.9004 141.2 -63.2002c15.5996 24.0996 14 21.0996 14 22.9004l0.200195 0.199219l-0.200195 0.200195c-0.700195 1.90039 -14.1006 16.6006 -18.2002 20.7002
c7.2998 -1.7998 6 -0.900391 10.7998 -3.7002c1.7002 -0.899414 -5.39941 5.40039 -21.8994 20.2002c16.5 -6.7002 27.5996 -15.5 33 -27.7998l1.69922 30.7002l-22.3994 17.6992l6.39941 5.90039c-7.2998 0 -31 3.7002 -49.1992 -16l-2.5 0.5
c6.9668 14.3867 12.4512 30.0156 16 46c1.9209 9.16797 2.95508 18.5742 3 28.2998c0 19.5 -4.7002 38.4004 -13.5 56.6006c-6.40039 13.5 -16.5 25.2998 -30 35.3994c-6.5957 4.94238 -13.4805 9.43652 -20.7002 13.5c3 0.700195 1 1.2002 -5.40039 1.2002
c-6.39941 0.200195 -13 0.700195 -19.3994 1.2002v-3c-10.2949 -1.63086 -19.2871 -7.22266 -25.3008 -15.2002h-1.19922l-5.40039 -3.40039c-1.2002 2.90039 0 6.30078 4.2002 9.30078l10.5996 11.2998l-3.39941 -0.5l2 3.39941
c-2.30078 0.200195 -4.2002 0.5 -6.2002 0.700195l-0.5 1.2002l2.5 1.7002c2.2002 -0.200195 4.59961 -0.5 7.09961 -0.700195c2.9043 1.54785 6.22559 2.4375 9.74414 2.4375c1.45898 0 2.88184 -0.150391 4.25586 -0.4375l2.5 -1.2002l0.200195 -0.5
c7.93457 0.514648 15.7422 1.49121 23.4004 2.90039c20.6992 2.89941 36.6992 11.2998 48.5 24.7998l-21.1006 0.5c-25.7998 0.5 -49.3994 -5.40039 -71.2998 -18.9004l-2.5 2.5l0.5 4.7002l1.7002 7.10059c1.66211 8.54199 3.83691 17.1143 6.39941 25.2998
c-1.69922 -0.700195 -4.59961 -4.90039 -9.2998 -11.2998c-4.7002 -6.40039 -8.39941 -13 -10.0996 -19.4004c-1.0957 -5.14258 -3.14062 -10.0195 -5.90039 -14.2998l-13.5 29l8.40039 -35.7998l-0.5 -1.7002c-0.00585938 0 -0.0146484 0.0117188 -0.0195312 0.0117188
c-5.57227 0 -10.9424 0.87207 -15.9805 2.48828c-3.40039 0.700195 -10.6006 1.2002 -20.9004 1.2002c0.5 0 -0.700195 0 -3.2002 -0.5c5.40039 -1.30078 13.5 -4.2002 24.8008 -8.40039l6.39941 1.2002c-4.2002 -3.40039 -10.8994 -10.1006 -20.2002 -19.4004
c-9.39941 -8.89941 -20.1992 -26.0996 -32.5 -50.2002l4.2002 1.2002l10.1006 9.2998l-5.40039 -4.69922l13 12.2998l-2.5 -3.40039c-5.09961 -7.59961 -8.09961 -12.2998 -9.2998 -15.2002zM367.5 -25.0996c8.2998 40.2998 3.59961 55.1992 -0.700195 89.5
c-35.5 -11.8008 -20.2998 -6 -32 -10.8008l10.5 -14.1992l-1.2002 -1.2002c-20.1992 6 -23.1992 10.7998 -27.7998 15c6 -22.2002 13.9004 -26.4004 29.5 -31.7002c-9.5 -9.59961 -25.3994 4 -34.3994 13l2.5 -23.5996l-4.2002 -3c-5 22.0996 -22 39.0996 -25.2998 39.0996
c-44 -13 -79.1006 -5.7998 -113.9 10.5996c-1.59961 -0.399414 -70.5996 -18 -120.5 37.1006c13.7002 -35 32.2998 -63.7002 71.2998 -82.6006c-4.98047 10.3184 -12.0117 19.3135 -20.7002 26.6006c0 0 0.700195 3.7002 1.2002 10.0996
c19.4004 -19.3994 50.7002 -39.5 93.2002 -60.2002c-59.5996 24.5 -59.9004 24.8008 -69.0996 29l16 -20.6992c-3 -1.30078 -6.7002 -0.5 -10.1006 1.19922c-12.5371 7.32422 -24.2949 15.5693 -35.3994 24.8008c1.89941 -2.2002 80.0996 -98.5 200.899 -74.3008
c-43.0996 21.8008 -52.3994 52.4004 -66.5996 73.5l17.7002 -7.59961l-11.8008 23.0996c20.1006 -27.7998 28.6006 -35 38.4004 -44.2998l-30 16.5c12.5996 -27.0996 33.7002 -47 63.5 -58.7998c2.90039 1.5 9.09961 -1.09961 59 23.9004zM482.8 189.3l8.93066 -12.7998
l-12.3008 32.5c10.9004 0 10 -0.0996094 21.2002 -3.40039c-8.16406 11.4756 -17.0879 22.0469 -27 32l-26.5996 23.1006l1.2002 3l23.5996 2.5c-10.6865 2.35742 -21.708 3.79199 -33 4.2002l-17.7002 -0.5l-0.5 2.89941l14.7998 13l-41.7998 -20.2002l-12.2998 18.9004
l3.40039 -16l-2.5 -1.2002l-5.90039 4.2002h-10.0996l5.39941 -4.2002v-2l-13.5 -27.7998c-10.0996 -31.2002 -21.8994 -67.9004 -35.3994 -109.7l1.19922 16l-1.19922 -3v-0.5c-6.40039 -16 -13.6006 -29.5 -21.2002 -39.5996l9.2998 21.8994l-46.7002 -20.1992
c11.7998 13.5 23.6006 19.3994 34.9004 18.8994c-71.2002 11.4004 -106.2 41 -110.4 46c3.60059 -6.2002 13.2002 -17.7998 16 -40.0996l-1.7002 -1.2002c-4.2998 15.5996 -16.3994 46.5996 -55.7998 69.5996l23.6006 -2.5c-10.5 12.6006 -36.3008 17.8008 -40.8008 16
l-2.5 2.5l8.40039 8.40039l-22.2998 -5.7998l5.39941 13.5c-8.09961 -4.40039 -4.2998 -2.40039 -17 -8.90039l-1.69922 0.5c0.599609 0.600586 0.899414 -0.700195 -3 9.2998c-0.600586 -11 -0.400391 -8.59961 -1 -11.7998
c-1.29785 -0.430664 -2.54785 -1.00781 -3.7002 -1.7002c-40 20.6006 -57.2002 11 -73 5.2002c36.7998 -6 29.2998 -4 38.3994 -9.2998c-25.7998 -12.2002 -31.8994 -12.5996 -51.3994 -70.0996l22.2695 22.2998l2.5 -16.4004c13.4004 -58 68.7002 -92.5 126.4 -83.3994
l-26.1006 22.3994l44.8008 -22.3994l-1.2002 -3c4.59961 -1.7002 9.2998 -3 13.5 -4.2002c19.3359 -5.72266 39.5713 -8.83887 60.752 -8.83887c11.0293 0 21.8643 0.832031 32.4482 2.43848l-32.5 21.2002c35.7998 -7 50.6992 -31.4004 56.7998 -39.5996l-7.60059 29
l1.2002 2.5l19 -27.9004l-9.2998 26.5996l21.9004 -13.5h1.19922l-3.39941 4.2002l7.09961 -4.7002l-14.2998 16l1.2002 3l7.59961 -7.09961c4.2998 1.2002 41.4004 10.5 80.9004 40.2998c47.8994 35.4004 68.0996 73.7998 71.5996 79.7002l-3 9.2998zM476.7 260.6
l-18.2002 -1.19922l14.2998 -11.8008zM221.9 253.5c2.69922 -5.09961 5.69922 -12.4004 18.3994 -18.7998c-7.5 -10.9004 -8.2998 -10.5 -20.2002 -16c-7.59961 -7.7002 -13.5 -13.1006 -17.6992 -14.7998l7.09961 13c-5.38281 -1.97266 -11.167 -3.06836 -17.2295 -3.06836
c-2.57324 0 -5.10156 0.194336 -7.57031 0.568359l-0.5 1.19922c19 2.10059 37.2002 9.40039 46.5 16c-4.10059 4.2002 -7.10059 11.3008 -8.7998 21.9004zM225.6 355.8c5.87793 -3.32715 10.7842 -8.04688 14.3008 -13.7998
c14.6992 -24.0996 19.1992 -40.0996 11.2998 -47.7002c-7.90039 -7.59961 -16.7998 -7.09961 -26.1006 3c-9.2998 10.1006 -13.5 23.7002 -11.7998 39.6006c1.7002 15.8994 5.90039 22.2998 12.2998 18.8994zM220.9 309.5
c7.09961 -21.2998 33.3994 -23.0996 26.8994 4.90039c-3.89941 16.5 -8.7998 27.0996 -15.2002 32.5c-6.59961 5.39941 -10.0996 6.69922 -11.2998 4.19922c-2.5 -2.89941 -3.5 -11.2998 -3 -24.7998c7.5 12.7998 11.6006 5.90039 12.5 4.7002l-0.5 -0.5
c-0.799805 -1.7002 -2.59961 -3.09961 1.7002 -6.2002l1.2002 0.5v-4.7002c-1.7998 -12.5 -6.90039 -12.7998 -12.2998 -10.5996zM175.9 315c-2.41016 0.448242 -4.38965 2.04102 -5.40039 4.2002c-3.5 8.5 0 21.2002 8.09961 21.2002
c2 -0.5 3.7002 -1.7002 5.40039 -4.7002c-1.5 -0.400391 -4.7002 -4.7998 0.700195 -5.90039h0.5c0 -13.7002 -7.7002 -15.0996 -9.2998 -14.7998zM216 365.1l-3.7002 2.40039l-0.5 2.5c18.2998 0 25.7998 -8.7998 28.2998 -14.2998
c-6.94727 3.78809 -14.9268 5.97363 -23.3916 5.97363c-0.90918 0 -1.81152 -0.0244141 -2.70801 -0.0742188l-0.5 3zM144.2 315.7c1.59961 -1.60059 0.599609 -0.299805 4.89941 -6.60059c-25.3994 -4.69922 -23.1992 -12.2998 -30 -12.2998
c0.300781 0.600586 7.10059 16 23.6006 16l-7.10059 7.60059c9.40039 0.5 15.2002 2.09961 19.9004 -5.90039c0.0214844 8.14648 1.03027 16.0225 2.90039 23.5996c2 7.60059 3.69922 11.8008 5.39941 13.5c1 1.5 16.2998 15.7002 29 22.4004
c2.33496 1.68262 5.22168 2.67676 8.31641 2.67676c1.8291 0 3.57715 -0.34668 5.18359 -0.976562c0.321289 -0.390625 0.515625 -0.889648 0.515625 -1.43457c0 -0.0898438 -0.00488281 -0.178711 -0.015625 -0.265625l-13 -7.59961
c7.60059 -11.8008 10.5 -25.3008 8.7998 -41.3008c-1.11328 -11.292 -6.61426 -21.3291 -14.7998 -28.2998l2.90039 -4.7002c-30 2.2002 -24.7998 6.80078 -46.5 23.6006zM162.9 334.4c-1.80078 -7.2002 -2.30078 -16 -3.10059 -26l5.40039 -6.40039l7.09961 -3.40039
c2.39648 -0.458008 4.79688 -0.699219 7.3252 -0.699219c1.3418 0 2.66797 0.0673828 3.97461 0.199219c1 1.7002 3.5 4.2002 6.40039 7.60059c5 5.89941 7.90039 13.7998 8.40039 23.0996c0.0849609 1.43848 0.113281 2.82617 0.113281 4.28613
c0 7.30859 -1.08887 14.3643 -3.11328 21.0137c-3 8.10059 -5.90039 11 -10.1006 9.30078c-5.39941 -1.7002 -10.5996 -5.40039 -16 -11.8008c-3 -4.19922 -5.2002 -9.59961 -6.39941 -17.1992zM204.9 278.3l-3.10059 -6.5c7.10059 4.2002 13.5 7.2002 19.4004 8.40039
l7.09961 0.5l11.7998 -7.60059h-2.5c-8.7998 3.7002 -19.3994 1.2002 -30.6992 -7.59961c-0.5 -4.7002 1.69922 -14.7002 5.89941 -29.5l9.2002 0.5c-21.9004 -6.59961 -37.5996 -8.40039 -48.9004 -5.40039c-24.8994 6.7002 -27.3994 23.6006 -27.5 24.1006
c-1.74121 6.70996 -2.67871 13.6348 -2.67871 20.8867c0 4.35645 0.333984 8.63574 0.979492 12.8135c-6.40039 -0.5 -11 -4.2002 -15.2002 -10.6006c-2.90039 5.90039 -5.40039 8.7998 -5.90039 9.2998c1.5 0.700195 12.2998 7.5 32.5 4.90039l0.5 -2.5l-5.89941 -1.2002
c-0.100586 -0.399414 -1.90039 -29.5 18.8994 -24.7998c1.40039 0.299805 1.2998 -0.0996094 36.1006 14.2998z" />
    <glyph glyph-name="acquisitions-incorporated" unicode="&#xf6af;" horiz-adv-x="384" 
d="M357.45 -20.2002c2.2002 -14.2998 4.09961 -28.7002 6.59961 -43.7002c-367.8 0 -153.899 -0.599609 -337.1 0c-4 0 -6.10059 0.700195 -5.2998 5.7002c2.09961 12.9004 3.5 25.9004 5 38.7998c0.5 4.80078 2.2998 6.80078 7.59961 6.80078
c118.1 -1 114.9 -0.300781 121.4 2.39941c9.39941 4 14.8994 12.9004 14.8994 23.1006c-0.0996094 42.8994 -0.299805 85.8994 -0.200195 128.8c0 3.7998 -1.19922 5.89941 -4.59961 6.7998c-15.7002 3.90039 -31.2998 7.7002 -47.5996 11.7002
c-5.30078 -12.2998 -10.4004 -24.4004 -15.7002 -36.7002c1.7998 -3.2998 28.3994 -2.90039 35.2998 -2.90039v-27.5996h-114.3c1 8.59961 1.7002 16.7998 3.2002 24.9004c0.299805 1.39941 3.59961 3.09961 5.5 3.19922
c8.39941 0.400391 16.8994 0.300781 25.3994 0.100586c4 0 5.90039 1.09961 7.60059 5.2002c16.5996 40.6992 13.5 31.1992 67.2998 161c31.5 76.0996 33 76 32.5996 87.3994c-0.700195 18.6006 -25.3994 22.2998 -37.7002 22.1006c-30 -0.400391 -38.3994 0.5 -101.8 0.5
c-7.2002 44.5 -4.2002 32.0996 -6.39941 45.2998c-0.700195 4.2002 1 5.2998 4.59961 5.2998l339.1 -0.200195c-0.799805 -5.39941 -1.59961 -10.7998 -2.39941 -16.0996c-1.2998 -9.7002 -2.7998 -19.4004 -4 -29.2002c-0.299805 -2.90039 -1.2002 -4.2998 -4.2998 -4.2998
c-20.6006 -0.100586 -41.2002 -0.100586 -61.8008 -0.5c-18.6992 -0.400391 -37.5996 -0.299805 -56.1992 -2c-13.4004 -1.2002 -23.3008 -12.6006 -18.9004 -26.6006c8.59961 -27.0996 27.7002 -69.0996 36.5 -89.1992c65.7002 -154.2 61.4004 -157 84 -158.601
c6.59961 -0.5 13.4004 -0.0996094 20.4004 -0.0996094c1.2998 -9.40039 2.59961 -18 4 -27.5h-116v27c10.3994 0 20.3994 0.0996094 30.3994 -0.100586c3.5 0 5 0.700195 3.40039 4.40039c-4.40039 10.2998 -8.7002 20.5996 -13.2002 30.9004
c-1.59961 3.69922 -4.09961 4.7998 -8.40039 3.5c-12.3994 -3.60059 -24.7998 -6.7002 -37.2998 -9.7002c-4.2998 -1.10059 -6 -2.7998 -5.89941 -7.5c0.799805 -57.5 0.899414 -127.5 1 -129.101c0.399414 -12.5996 8.69922 -21.3994 21 -23.0996
c0.899414 -0.200195 12.8994 -2.7998 112.699 -2.59961c8.30078 0 8.40039 0.0996094 9.60059 -7.60059zM182.55 185.5c2.87695 -1.01465 5.98633 -1.56641 9.20801 -1.56641s6.31543 0.551758 9.19238 1.56641c13 4.2002 26.2998 7.7998 39.3994 11.7002
c1.34473 0.620117 2.65234 1.32422 3.90039 2.09961c-6.7002 17.4004 -13.0996 34.2002 -19.7002 50.9004c-8.89941 22.7002 -17.7002 60.2998 -27 82.7998c-1.5 0.799805 -1.89941 -2.40039 -9.39941 0c-17.1006 -44 -34.1006 -87.7998 -51.3008 -132.1
c1.8457 -1.09766 3.7959 -2.07422 5.80078 -2.90039c13.2998 -4.2998 26.5996 -8.2998 39.8994 -12.5z" />
    <glyph glyph-name="critical-role" unicode="&#xf6c9;" 
d="M225.82 448c0.259766 -0.150391 216.569 -124.51 217.12 -124.72c3 -1.18066 3.69922 -3.45996 3.69922 -6.56055c-0.0732422 -83.4463 -0.0732422 -166.899 0 -250.359c0.0117188 -0.150391 0.0175781 -0.302734 0.0175781 -0.456055
c0 -2.36035 -1.38867 -4.38867 -3.39746 -5.32422c-21.3701 -12 -207.859 -118.29 -218.93 -124.58h-3c-79.3301 45.6602 -218.25 125.44 -218.4 125.52c-1.11816 0.526367 -1.89355 1.66309 -1.89355 2.97949c0 0.0898438 0.00683594 0.173828 0.0136719 0.260742
c0 0.870117 0 225.94 -0.0498047 253.101c-0.00976562 0.124023 -0.0136719 0.25 -0.0136719 0.376953c0 2.02832 1.20605 3.76855 2.94336 4.55273c23.2607 13.0996 209.271 119.21 220.141 125.21h1.75zM215.4 427.58l-0.219727 0.158203
c-64.7471 -36.8604 -129.474 -73.7305 -194.18 -110.61c0 -0.120117 0.0800781 -0.229492 0.129883 -0.349609l30.8604 -11.6406c-7.70996 -6 -8.32031 -6 -10.6504 -5.12988c-0.0996094 0 -24.1699 9.28027 -26.7998 10v-230.43
c0.879883 1.41016 64.0703 110.91 64.1299 111c1.62012 2.82031 3 1.91992 9.12012 1.51953c1.40039 -0.0898438 1.47949 -0.219727 0.780273 -1.41992c-41.1904 -71.3301 -36.4004 -63 -67.4805 -116.939c-0.80957 -1.40039 -0.609375 -1.12988 1.25 -1.12988h186.5
c1.44043 0 1.69043 0.229492 1.7002 1.63965v8.87988c0 1.33984 2.36035 0.810547 -18.3701 1c-7.45996 0.0703125 -14.1396 3.21973 -21.3799 12.7002c-7.37988 9.66016 -14.6201 19.4297 -21.8496 29.21c-2.28027 3.08008 -3.4502 2.37988 -16.7607 2.37988
c-1.75 0 -1.7793 0 -1.75977 -1.82031c0.290039 -26.21 0.150391 -25.2695 1 -32.6592c0.520508 -4.37012 2.16016 -4.2002 9.69043 -4.81055c3.13965 -0.259766 3.87988 -4.08008 0.519531 -4.91992c-1.57031 -0.389648 -31.5996 -0.509766 -33.6699 0.0996094
c-1.02539 0.28125 -1.7793 1.2207 -1.7793 2.33496c0 1.21973 0.905273 2.22949 2.0791 2.39551c3.29004 0.759766 6.16016 -0.80957 6.66016 4.44043c1.2998 13.6592 1.16992 9 1.09961 79.4199c0 10.8193 -0.349609 12.5801 -5.35938 13.5498
c-1.21973 0.240234 -3.54004 0.160156 -4.69043 0.549805c-2.87988 1 -2 4.83984 1.77051 4.84961c33.6699 0 46.0801 1.07031 56.0596 -4.85938c7.74023 -4.61035 12 -11.4805 12.5098 -20.4004c0.880859 -14.5898 -6.50977 -22.3496 -15 -32.5898
c-0.313477 -0.267578 -0.511719 -0.666016 -0.511719 -1.11035s0.198242 -0.841797 0.511719 -1.10938c2.60059 -3.25 5 -6.62988 7.70996 -9.83008c27.5605 -33.2305 24.1104 -30.54 41.2803 -33.0605c0.890625 -0.129883 1 0.419922 1 1.15039v11
c0 1 0.320312 1.42969 1.41016 1.25977c3.57227 -0.542969 7.23047 -0.825195 10.9531 -0.825195c4.35449 0 8.4834 0.386719 12.627 1.125c1.08008 0.150391 1.5 -0.199219 1.47949 -1.33008c0 -0.109375 0.880859 -26.6895 0.870117 -26.7998
c-0.0498047 -1.51953 0.669922 -1.62012 1.89062 -1.62012h186.71c-27.1533 47.0342 -54.2334 93.9746 -81.2402 140.821c2.25977 0.660156 -0.400391 0 6.69043 1.38965c2 0.390625 2.0498 0.410156 3.10938 -1.43945c7.31055 -12.6396 77.3105 -134 77.3701 -134.061
v230.44c-1.71973 -0.5 -103.3 -38.7197 -105.76 -39.6797c-1.08008 -0.419922 -1.5498 -0.200195 -1.91016 0.879883c-0.629883 1.89941 -1.33984 3.75977 -2.08984 5.62012c-0.320312 0.790039 -0.0898438 1.12988 0.649414 1.38965
c0.100586 0 95.5303 35.8496 103 38.7705c-65.4199 37.5693 -130.56 75 -196 112.6l86.8203 -150.39l-0.280273 -0.330078c-9.56934 0.899414 -10.46 1.59961 -11.7998 3.93945c-1 1.69043 -73.5 127.71 -82 142.16c-9.09961 -14.6699 -83.5596 -146.21 -85.3701 -146.32
c-2.92969 -0.169922 -5.87988 -0.0800781 -9.25 -0.0800781c28.833 49.8271 57.5596 99.4941 86.1797 149.001zM267.331 297.658c1.88379 0.146484 3.74316 0.435547 5.54004 0.849609c1.68945 0.299805 2.53027 -0.200195 2.59961 -1.91992
c0 -0.109375 0.0703125 -19.0596 -0.859375 -20.4502c-0.930664 -1.38965 -1.87988 -1.21973 -2.60059 0.19043c-5 9.68945 6.2207 9.66016 -39.1201 12c-0.699219 0 -1 -0.230469 -1 -0.929688c0 -0.130859 3.7207 -122 3.73047 -122.11
c0 -0.889648 0.519531 -1.2002 1.20996 -1.50977c2.97363 -1.18262 5.9043 -2.54883 8.7002 -4.0498c7.30957 -4.33008 11.3799 -10.8408 12.4102 -19.3105c1.43945 -11.7998 -2.77051 -35.7695 -32.21 -37.1396c-2.75 -0.129883 -28.2607 -1.08008 -34.1406 23.25
c-4.66016 19.2598 8.25977 32.7002 19.8906 36.3994c1.14258 0.208008 2.00977 1.20898 2.00977 2.41113c0 0.0849609 -0.00195312 0.166016 -0.00976562 0.249023c0.0996094 5.62988 3 107.101 3.70996 121.351c0.0498047 1.0791 -0.620117 1.15918 -1.35059 1.14941
c-32.3496 -0.519531 -36.75 0.339844 -40.2197 -8.51953c-2.41992 -6.18066 -4.13965 -1.32031 -3.9502 -0.230469c1.05957 6 2.16309 12 3.31055 18c0.399414 2.11035 1.42969 2.61035 3.42969 1.86035c5.58984 -2.11035 6.71973 -1.7002 37.25 -1.91992
c1.72949 0 1.78027 0.0800781 1.82031 1.84961c0.679688 27.4902 0.579102 22.5898 1 29.5498c0.0117188 0.106445 0.0185547 0.213867 0.0185547 0.322266c0 1.11719 -0.679688 2.07129 -1.64941 2.47852c-5.59961 2.90918 -8.75 7.5498 -8.89941 13.8691
c-0.350586 14.8105 17.7197 21.6699 27.3799 11.5107c6.83984 -7.19043 5.7998 -18.9102 -2.4502 -24.1504c-1.34473 -0.740234 -2.25684 -2.1709 -2.25684 -3.81348c0 -0.180664 0.015625 -0.351562 0.0371094 -0.526367c0 -0.589844 -0.110352 4.30957 1 -30.0498
c0 -0.900391 0.429688 -1.12012 1.24023 -1.11035c0.0996094 0 23 0.0898438 34.4697 0.370117zM68.2705 306.298c19.8408 4.50977 32.6807 0.560547 52.4902 -1.68945c2.75977 -0.310547 3.74023 -1.2207 3.62012 -4c-0.209961 -5 -1.16016 -22.3301 -1.24023 -23.1504
c-0.0419922 -1.05566 -0.702148 -1.9541 -1.62988 -2.33984c-4.05957 -1.7002 -3.60938 4.4502 -4 7.29004c-3.12988 22.4297 -73.8701 32.7002 -74.6299 -25.4004c-0.30957 -23.9199 17 -53.6299 54.0801 -50.8799c27.2402 2 19 20.1904 24.8398 20.4697
c0.120117 0.0166016 0.241211 0.0244141 0.365234 0.0244141c1.50098 0 2.71973 -1.21875 2.71973 -2.71973c0 -0.229492 -0.03125 -0.451172 -0.0849609 -0.664062c-1.83008 -10.8506 -3.41992 -18.9502 -3.4502 -19.1504
c-1.54004 -9.16992 -86.6992 -22.0898 -93.3496 42.0605c-2.70996 25.8496 10.4404 53.3691 40.2695 60.1494zM148.271 218.628h-19.4893c-0.0703125 -0.00585938 -0.140625 -0.00878906 -0.210938 -0.00878906c-1.15039 0 -2.12109 0.756836 -2.44922 1.79883
c2.37988 3.75 5.88965 -0.919922 5.86035 6.13965c-0.0800781 25.75 0.209961 38 0.229492 40.1006c0 3.41992 -0.530273 4.64941 -3.32031 4.93945c-7 0.720703 -3.10938 3.37012 -1.10938 3.38086c11.8398 0.0996094 22.6201 0.179688 30.0498 -0.720703
c8.76953 -1.06934 16.71 -12.6299 7.92969 -22.6201c-2 -2.25 -4 -4.41992 -6.13965 -6.72949c0.950195 -1.15039 6.89941 -8.82031 17.2803 -19.6797c2.65918 -2.78027 6.14941 -3.51074 9.87988 -3.13086h0.0214844c1.18945 0 2.16016 0.943359 2.20801 2.12012
c0.299805 3.41992 0.259766 -4.72949 0.450195 40.5801c0 5.65039 -0.339844 6.58008 -3.22949 6.83008c-3.9502 0.350586 -4 2.25977 -0.69043 3.37012l19.0898 0.0898438c0.320312 0 4.49023 -0.530273 1 -3.37988c0 -0.0498047 -0.160156 0 -0.240234 0
c-3.60938 -0.259766 -3.93945 -1 -4 -4.62012c-0.269531 -43.9297 0.0703125 -40.2295 0.410156 -42.8203c0.110352 -0.839844 0.270508 -2.22949 5.10059 -2.13965c2.48926 0 3.85938 -3.37012 0 -3.39941c-10.3701 -0.0800781 -20.7402 0 -31.1104 -0.0703125
c-10.6699 0 -13.4697 6.2002 -24.21 20.8203c-1.59961 2.17969 -8.31055 2.35938 -8.2002 0.369141c0.879883 -16.4697 0 -17.7793 4 -17.6699c4.75 0.100586 4.73047 -3.56934 0.830078 -3.5498h0.0595703zM423.271 228.778
c-1.20996 -7.12988 0.170898 -10.3799 -5.2998 -10.3398c-61.5498 0.419922 -47.8193 0.219727 -50.7197 0.30957c-1.24414 0.12207 -2.4707 0.37207 -3.62988 0.730469c-2.53027 0.599609 1.47949 1.22949 -0.379883 5.59961
c-1.43066 3.37012 -2.78027 6.78027 -4.11035 10.1895c-0.219727 0.831055 -0.976562 1.44336 -1.87598 1.44336c-0.0419922 0 -0.0820312 0 -0.124023 -0.00292969c-2.22852 0.107422 -4.4707 0.161133 -6.72559 0.161133
c-2.70605 0 -5.18652 -0.0771484 -7.85449 -0.231445c-0.6875 -0.0898438 -1.27734 -0.491211 -1.62012 -1.05957c-1.58008 -3.62012 -3.06934 -7.29004 -4.50977 -11c-1.26953 -3.23047 7.86035 -1.32031 12.1904 -2.16016c3 -0.570312 4.5293 -3.71973 0.65918 -3.72949
h-26.3691c-2.91992 0 -3.09082 3.14941 -0.740234 3.20996c0.0966797 -0.00488281 0.194336 -0.00683594 0.291992 -0.00683594c2.46484 0 4.59277 1.41211 5.62793 3.47656c1.5 3 2.7998 6 4.11035 9.08984c18.1797 42.1396 17.0596 40.1699 18.4199 41.6104
c0.330078 0.473633 0.879883 0.783203 1.50098 0.783203s1.16797 -0.30957 1.49902 -0.783203c2.92969 -3.33984 18.3994 -44.71 23.6201 -51.9199c2 -2.7002 5.73926 -2 6.35938 -2c3.61035 -0.130859 4 1.10938 4.12988 4.29004
c0.0898438 1.86914 0.0800781 -1.1709 0.0703125 41.2393c0 4.45996 -2.36035 3.74023 -5.5498 4.27051c-0.259766 0 -2.56055 0.629883 -0.0800781 3.05957c0.209961 0.200195 -0.890625 0.240234 21.7002 0.150391c2.31934 0 5.31934 -2.75 -1.20996 -3.4502
c-0.0390625 0.00195312 -0.078125 0.00292969 -0.116211 0.00292969c-1.41309 0 -2.56055 -1.14746 -2.56055 -2.56055c0 -0.0927734 0.00683594 -0.181641 0.0166016 -0.272461c-0.0703125 -1.62988 -0.19043 -38.8896 0.290039 -41.21
c0.288086 -1.39062 1.52051 -2.43652 2.99609 -2.43652c0.0791016 0 0.155273 0.000976562 0.233398 0.00683594c13.25 -0.430664 14.9199 -0.44043 16 3.41016c1.66992 5.7793 4.12988 2.51953 3.73047 0.189453zM318.551 164.408
c-4.24023 0 -4.41992 3.38965 -0.609375 3.41016c35.9092 0.160156 28.1094 -0.379883 37.1895 0.649414c1.67969 0.19043 2.37988 -0.239258 2.25 -1.88965c-0.259766 -3.38965 -0.639648 -6.78027 -1 -10.1602c-0.25 -2.16016 -3.2002 -2.61035 -3.39941 0.150391
c-0.380859 5.30957 -2.15039 4.44922 -15.6309 5.08008c-1.58008 0.0693359 -1.63965 0 -1.63965 -1.52051v-16.1299c0 -1.65039 0 -1.59961 1.62012 -1.46973c3.12012 0.25 10.3096 -0.339844 15.6895 1.51953c0.470703 0.160156 3.30078 1.79004 3.07031 -1.75977
c0 -0.209961 -0.759766 -10.3496 -1.17969 -11.3896c-0.530273 -1.29004 -1.87988 -1.51074 -2.58008 -0.320312c-1.16992 2 0 5.08008 -3.70996 5.2998c-15.4199 0.900391 -12.9102 2.5498 -12.9102 -6c0 -12.25 -0.759766 -16.1104 3.88965 -16.2402
c16.6406 -0.479492 14.4004 0 16.4307 5.70996c0.839844 2.37012 3.5 1.77051 3.17969 -0.580078c-0.44043 -3.20996 -0.849609 -6.42969 -1.22949 -9.63965c0 -0.360352 -0.160156 -2.39941 -4.66016 -2.38965c-37.1602 0.0800781 -34.54 0.189453 -35.21 0.30957
c-2.7207 0.509766 -2.2002 3 0.219727 3.4502c1.09961 0.19043 4 -0.540039 4.16016 2.55957c2.43945 56.2207 -0.0703125 51.3408 -3.91016 51.3301zM318.141 273.928c2.45996 -0.609375 3.12988 -1.75977 2.9502 -4.64941
c-0.330078 -5.2998 -0.339844 -9 -0.549805 -9.69043c-0.660156 -2.22949 -3.15039 -2.12012 -3.33984 0.270508c-0.379883 4.80957 -3.0498 7.81934 -7.57031 9.14941c-26.2803 7.73047 -32.8096 -15.46 -27.1699 -30.2197c5.87988 -15.4102 22 -15.9199 28.8604 -13.7803
c5.91992 1.85059 5.87988 6.5 6.91016 7.58008c1.22949 1.2998 2.25 1.83984 3.11914 -1.09961c0 -0.100586 0.570312 -11.8906 -6 -12.75c-1.59961 -0.209961 -19.3799 -3.69043 -32.6797 3.38965c-21 11.1904 -16.7402 35.4697 -6.87988 45.3301
c14 14.0596 39.9102 7.05957 42.3203 6.46973h0.0292969zM289.801 167.858c3.28027 0 3.66016 -3 0.160156 -3.43066c-2.61035 -0.319336 -5 0.419922 -5 -5.45996c0 -2 -0.19043 -29.0498 0.400391 -41.4502c0.109375 -2.28906 1.14941 -3.51953 3.43945 -3.64941
c22 -1.20996 14.9502 1.64941 18.79 6.33984c1.83008 2.24023 2.75977 -0.839844 2.75977 -1.08008c0.350586 -13.6201 -4 -12.3896 -5.18945 -12.3994l-38.1602 0.189453c-1.92969 0.230469 -2.05957 3 -0.419922 3.37988c2 0.480469 4.93945 -0.399414 5.12988 2.7998
c1 15.8701 0.570312 44.6504 0.339844 47.8105c-0.269531 3.76953 -2.7998 3.26953 -5.67969 3.70996c-2.46973 0.379883 -2 3.21973 0.339844 3.21973c1.4502 0.0205078 17.9697 0.0302734 23.0898 0.0205078zM258.171 225.648
c0.0703125 -4.08008 2.86035 -3.45996 6 -3.58008c2.61035 -0.100586 2.53027 -3.41016 -0.0703125 -3.43066c-6.47949 0 -13.6992 0 -21.6094 0.0605469c-3.83984 0 -3.37988 3.34961 0 3.37012c4.49023 0 3.24023 -1.61035 3.41016 45.54
c0 5.08008 -3.27051 3.54004 -4.7207 4.22949c-2.58008 1.23047 -1.35938 3.08984 0.410156 3.15039c1.29004 0 20.1904 0.410156 21.1699 -0.209961c0.980469 -0.620117 1.87012 -1.65039 -0.419922 -2.86035c-1 -0.519531 -3.85938 0.280273 -4.14941 -2.46973
c0 -0.209961 -0.820312 -1.62988 -0.0703125 -43.7998h0.0498047zM221.261 -48.6221c0.46582 -0.311523 1.02539 -0.493164 1.62695 -0.493164c0.602539 0 1.16797 0.181641 1.63281 0.493164c17 9.79004 182 103.57 197.421 112.51
c-0.140625 0.430664 11.2598 0.180664 -181.521 0.270508c-1.21973 0 -1.57031 -0.370117 -1.53027 -1.56055c0 -0.0996094 1.25 -44.5098 1.2207 -50.3799c-0.0966797 -2.67383 -0.571289 -5.27344 -1.36035 -7.70996c-0.549805 -1.83008 0.379883 0.5 -13.5 -32.2295
c-0.730469 -1.7207 -1 -2.20996 -2 0.0800781c-4.19043 10.3398 -8.28027 20.7197 -12.5703 31c-1.29785 2.92285 -2.01953 6.15723 -2.01953 9.55957c0 0.412109 -0.000976562 0.823242 0.0195312 1.23047c0.160156 2.45996 0.800781 16.1191 1.51074 48
c0 1.94922 0 2 -2 2h-183c2.5791 -1.63086 178.319 -102.57 196 -112.761zM130.361 140.128c0 -2.39941 0.359375 -2.79004 2.75977 -3c11.54 -1.16992 21 -3.74023 25.6396 7.32031c6 14.46 2.66016 34.4102 -12.4795 38.8398c-2 0.589844 -16 2.75977 -15.9404 -1.50977
c0.0498047 -8.04004 0.00976562 -11.6104 0.0205078 -41.6504zM236.111 155.178c0 -2.12988 1.06934 -38.6797 1.08984 -39.1299c0.339844 -9.93945 -25.5801 -5.76953 -25.2305 2.58984c0.0800781 2 1.37012 37.4199 1.10059 39.4307
c-14.1006 -7.44043 -14.4199 -40.21 6.43945 -48.8008c2.18066 -0.946289 4.58594 -1.4707 7.11328 -1.4707c6.46094 0 12.1299 3.40332 15.2773 8.54102c4.90918 7.75977 6.83984 29.4697 -5.43066 39c-0.114258 -0.0478516 -0.237305 -0.0888672 -0.359375 -0.120117
v-0.0400391zM223.831 353.178c-9.83008 0 -9.73047 -14.75 -0.0703125 -14.8701c9.66016 -0.119141 10.1006 14.8809 0.0703125 14.9102v-0.0400391zM143.681 249.348c0 -1.7998 0.410156 -2.39941 2.16992 -2.58008c13.6201 -1.38965 12.5107 11 12.1602 13.3604
c-1.68945 11.2197 -14.3799 10.2002 -14.3496 7.81055c0.0498047 -4.5 -0.0302734 -13.6807 0.0195312 -18.5908zM356.001 242.948l-6.09961 15.8398c-2.16016 -5.48047 -4.16016 -10.5703 -6.23047 -15.8398h12.3301z" />
    <glyph glyph-name="d-and-d-beyond" unicode="&#xf6ca;" horiz-adv-x="640" 
d="M313.8 206.5c-9.89941 0 -16 7 -15.7002 7.09961c-4.2998 5.7002 -3 -0.299805 -2.39941 -1.89941c-10.9004 10.2998 -5.2998 25.3994 -5.10059 26c0.700195 1.89941 0 2.2002 -0.599609 1.89941c-1 -0.299805 -2.09961 -1.89941 -2.09961 -1.89941
c0.799805 9.09961 9.2998 14.7002 9.2998 14.7002l0.200195 -0.200195c1 -1.5 -0.400391 -3.2002 -0.600586 -9c1.60059 2.2998 7.90039 6.59961 11.4004 7.89941c-1.10059 -1.5 -2.10059 -3.59961 -2.10059 -6.59961c3.7002 4.2002 7.5 2.59961 8 2.40039
c-12.1992 -11.9004 -7 -26.6006 3.2002 -26.6006c5.7002 0 11.5 6.40039 13.9004 10.7002c2.39941 -2.40039 6.39941 -5.5 7.39941 -6.59961c-3.7998 -7.80078 -11 -17.9004 -24.7998 -17.9004zM366.2 227.6c0 -2.89941 -2.90039 -4.09961 -5.40039 -4.5
c0.700195 1.5 1.7998 5.10059 -0.200195 9c0.700195 -0.0996094 5.60059 -0.5 5.60059 -4.5zM376.5 222.4c-0.400391 -6.5 -6.90039 -11.6006 -14.5996 -10.6006c2 -1.7002 6.59961 -3 9 -1.89941c-3.90039 -6.90039 -23.1006 -7.5 -23.1006 6.39941
c-2.89941 -2.89941 -2.09961 -7.39941 0 -9.2998c-2.2002 0.700195 -5.7998 3.09961 -6.39941 7.40039c-1.30078 10.0996 4.39941 6.5 -10.4004 18.0996c-4.7998 3.7002 -3 6.59961 -4 8.5c-1.09961 2.2002 -7 4.09961 -4.5 8.5
c-0.0996094 -1.59961 1 -2.90039 2.59961 -3.5c1.80078 -0.700195 3.2002 -0.200195 4.80078 -1c1.69922 -1.2002 0.899414 -3.90039 2.19922 -5c1.10059 -0.799805 4.2002 0.299805 6.60059 -1.7998c2.59961 -2 8.2002 -6.7002 10.5996 -8.60059
c4.40039 -3.59961 8.7998 0.400391 7.40039 4.60059c4.5 -2.60059 5 -9.90039 1.2998 -12.5c10.5996 -2.40039 13 10.0996 5 11.3994c7.2998 0.700195 13.5 -4.2998 13.5 -10.6992zM337.1 240.8c4.30078 6.10059 13.3008 15.2998 23.8008 15.7998
c-5.90039 0.800781 -15.1006 -3.19922 -19.7002 -9c0.899414 3.90039 5.09961 10.1006 10.2002 13c0 0 -2.5 -3.19922 -1.40039 -3.69922c1.59961 -0.800781 5.7998 5.69922 11.2002 5.89941c0 0 -4 -2 -3.2002 -3.39941c0.599609 -0.900391 3.2998 1.2998 8 1.2998
c5.7998 0 10.9004 -3.5 13.2998 -6.2002c-4 1.09961 -11.5996 -0.799805 -13.7998 -2.7002c-0.299805 0.200195 -11.7998 9 -22 -15.5c-4.7998 3.7998 -4.40039 3.7002 -6.40039 4.5zM579.6 188.9c37.2002 0 60.4004 -19.6006 60.4004 -48.9004
c0 -28.2002 -17 -48.9004 -59.0996 -48.9004c-20.7002 0 -41.2002 1.30078 -51.6006 2.10059l7.40039 8.2002v77.1992l-7.40039 8.2002c10.2998 0.799805 29.6006 2.10059 50.2998 2.10059zM564.5 113.3c25.4004 -3.2002 46.7998 1.40039 46.7998 27
c0 22.5 -16.7002 29.6006 -46.7998 26.2998v-53.2998zM301.6 267c0.100586 -0.299805 -2.7998 2.2998 -3.2998 7.5c-0.200195 2.2998 0 19.7998 20 18.9004c11.2002 -0.600586 16.7002 -8.30078 16.7002 -16.5c0 -4.30078 -2.2998 -10.1006 -5.5 -13.8008
c-2.2002 2.2002 -5.59961 4.60059 -7.7002 7.80078c3.7998 5.59961 2.2002 14.3994 -4.7002 14.3994c-4.2998 0 -7.7998 -4.5 -6.39941 -9.89941c-0.700195 -2.40039 -1 -5.60059 -0.5 -8c-4.90039 2.59961 -6.5 6 -7.5 9c-1.2998 -2.5 -2.10059 -6 -1.10059 -9.40039z
M301.2 261c0.299805 1.7002 -3.10059 4.59961 -4.7998 5.2002c4.7998 0.200195 7 -0.600586 7 -0.600586c-1.30078 1.7002 -1.60059 4.5 -1 6.7002c2.5 -6.09961 11.6992 -7.09961 13.8994 -12.2002c-0.299805 2.30078 -2.39941 4.7002 -4.7998 6.10059
c-1.2998 3.2002 -0.299805 9.39941 1.2998 11c-0.5 -8.7998 12 -13.7998 14.6006 -20.2002c-1.40039 5.5 -7.40039 9 -10.1006 12.2002c-1 2.09961 -0.200195 5.7998 0.799805 7.09961c-0.5 -9.7002 15.8008 -14.2998 14.1006 -23.8994
c0.899414 -0.400391 2.09961 -1.2002 1.89941 -2.60059c1.30078 0.299805 2.60059 1.7002 2.90039 2.7002c0.700195 -4.5 -1.90039 -9 -4.7998 -10.4004c1.59961 4 -2.7002 5.60059 -6.7002 5.10059c0 0 1.59961 2.2998 1 3.39941
c-0.799805 1.5 -8 0.800781 -11.2002 -0.299805c1.10059 0.100586 3.60059 -0.200195 4.60059 -0.5c-2.10059 -2.89941 -1 -7.09961 1.2998 -4.2002c0 0 -1.10059 -3.5 -0.299805 -4.2998c0.799805 -0.799805 2.59961 -0.200195 2.59961 -0.200195
c-1.2002 -2.69922 -5.2998 -4.59961 -8.2002 -4.59961c1.10059 0.400391 2.7002 2.2998 3 3.40039c-0.799805 -0.5 -2.7002 -0.700195 -3.5 -0.5c6.10059 3 0 13.1992 -7 8.19922c1 2.7002 3.7002 5.30078 5.7998 6.10059c-1.2998 0.5 -2.69922 0.799805 -4.2998 1.09961
c1.7998 1.5 6.2998 2.7998 8.5 2.60059c-3.5 0.799805 -9.89941 -0.300781 -12.7998 -3.7002c0.900391 0 3.2998 -0.5 4.2998 -0.799805c-4 -0.700195 -9.39941 -4.40039 -11 -6.2002c0.299805 2.2002 1 4.2002 0.5 5.59961c-0.799805 2 -3 2.7998 -7.7998 1.7998
c3.2002 3.2002 9.7002 5.10059 10.2002 6.90039zM327.1 253.6c0 0 -0.899414 3 -4.19922 4.30078c0.699219 -2.2002 1.5 -4.30078 4.19922 -4.30078zM366 249.9l0.700195 0.699219c0.5 0.400391 1.59961 0.900391 2.7002 1.40039v-18.4004
c-1.7002 0.800781 -3.5 1.10059 -5.60059 1.10059c-2.39941 0 -5 -0.5 -5 -0.5c-0.5 0.5 -3.59961 2.89941 -5.09961 3.2002c4.09961 -4.30078 0.5 -9.80078 -3 -7.2002v15.7002c0.700195 0.799805 1.2998 1.7998 2.09961 2.59961
c1.7002 2.09961 4.60059 3.40039 7.5 3.40039c1.7998 0 3.60059 -0.400391 4.7002 -1.40039zM79.9004 142.1c22 -6.39941 19.3994 -20.0996 19.3994 -25.1992c0 -7.80078 -3.2002 -13.6006 -9.89941 -17.6006c-12.6006 -7.39941 -24.7002 -5.89941 -86.4004 -5.89941
l8.40039 8.59961v32.2998l-11.4004 14.6006h11.2998v29.5l-8.2998 8.59961h56.0996c12.9004 0 37 -4.40039 37 -25c0 -1.90039 1 -15.2998 -16.1992 -19.9004zM38.5996 169.6v-20.8994c10.6006 0 29.6006 -3.2998 29.6006 8.7998v3
c0 9.90039 -9.60059 9.09961 -29.6006 9.09961zM38.5996 110.4c20.4004 0 32.9004 -1.90039 32.9004 9.2998h-0.200195v4.5c0 11.0996 -20.5 8.7998 -32.7002 8.7998v-22.5996zM139.8 129.7v-15.4004l60.1006 0.200195l-14.1006 -21.2002h-81.2002l7.40039 8.2002v77.0996
l-7.40039 8.2002l73.5 0.200195v-0.200195l14.1006 -21h-52.4004v-14.8994h37.2002l-14.0996 -21.2002v-0.200195zM354.5 189.8c73.7998 0 77.5996 -99.2998 -0.299805 -99.2998c-77.2002 0 -73.6006 99.2998 0.299805 99.2998zM354.2 112.3
c39 0 37 55.2002 0.200195 55.2998c-37.1006 0 -37.6006 -55.2998 -0.200195 -55.2998zM262.9 120.6l0.199219 -19l7.2002 -8.19922h-42.5996l7.7002 8.19922l-0.200195 19.4004l-44.1006 65.7998h44.9004l-6.40039 -7.2002l21 -37.1992h0.300781l20.5 37.1992
l-6.10059 7.2002h41.7002zM234.5 271.9c-9.09961 6.69922 -9.5 14.0996 -9.59961 14.8994c7.2998 -4.2998 9 -4 39.8994 -4c-5.7998 0 24 3.10059 32.2002 -22.8994c-0.400391 0 -8.40039 -4.80078 -10.4004 -7.90039c5.30078 1.90039 8.90039 1.09961 9 1.09961
c-8 -5.09961 -9.59961 -14.7998 -9.59961 -20.5c0.900391 2.10059 2.7002 3.7002 2.7002 3.5c-0.600586 -2.5 -1.40039 -7 -0.799805 -12c-8.60059 -7.09961 -16 -8.59961 -26 -8.59961h-35.1006c0.400391 0.0996094 7.7998 4.5 7.90039 4.59961
c1.89941 1.10059 2.7002 2.2002 2.7002 6.40039v38.7998c0 4.2002 -1.30078 5.2998 -2.90039 6.60059zM256 266.4v-34.6006c4.7002 0 23.0996 -3.39941 23.0996 17.2998c0 20.6006 -18.5 17.3008 -23.0996 17.3008zM484.9 186.8l39.1992 -0.0996094l-7.39941 -8.2998
v-85.2002h-21.2998c-4 12.7002 -44.8008 45 -48.5 55.5996h-0.300781v-47.3994l7.40039 -8.2002h-39l7.2002 8.2998v76.9004l-7.40039 8.5h31.6006c2.89941 -9.40039 39.7998 -36.5 45.1992 -50.9004h0.300781v42.5zM378.2 282.9
c32.7002 -1.60059 33.7998 -29.8008 33.7998 -33.6006c0 -6.7002 -3.2998 -34 -36.7002 -34h-0.299805c3.59961 4.2998 3.5 11.9004 -2.2002 16.2998c1.2002 0 19.7002 -3.19922 19.7002 17.3008c0 20.6992 -18.4004 17.2998 -23.0996 17.2998v-4.2998
c-5.40039 0.799805 -7.40039 -0.300781 -7.5 -0.300781c2.09961 1.80078 4.5 2.60059 6.09961 2.90039c-7.09961 1.59961 -13.5996 -2.40039 -14.5996 -3.5c0.799805 1.7998 2.39941 3.40039 3.5 4.5c-2.30078 -0.799805 -4.30078 -1.90039 -6.10059 -3
c0 5.2002 0.200195 7.5 -2.89941 9.5c-9.10059 6.59961 -9.5 14.2002 -9.60059 14.9004c7.10059 -4.2002 7.7002 -4 39.9004 -4z" />
    <glyph glyph-name="dev" unicode="&#xf6cc;" 
d="M120.12 239.71c3.87012 -2.90039 5.82031 -7.25977 5.83008 -13.0596v-69.6504c0 -5.80957 -1.94043 -10.1602 -5.82031 -13.0596c-3.87988 -2.90039 -7.76953 -4.35059 -11.6494 -4.35059h-17.4502v104.47h17.4395c3.87988 0 7.77051 -1.44922 11.6504 -4.34961z
M404.1 416c24.2002 0 43.8408 -19.5898 43.9004 -43.7998v-360.4c-0.0595703 -24.21 -19.6904 -43.7998 -43.9004 -43.7998h-360.199c-24.2002 0 -43.8408 19.5898 -43.9004 43.7998v360.4c0.0595703 24.21 19.7002 43.7998 43.9004 43.7998h360.199zM154.2 156.81
l-0.00976562 70.9307c-0.0107422 18.8193 -11.9307 47.2793 -47.3701 47.2793h-47.3799v-165.46h46.3994c36.75 -0.0595703 48.3604 28.4404 48.3604 47.25zM254.88 245.47l0.00976562 29.5205h-63.1895c-11.1504 -0.280273 -19.9805 -9.54004 -19.71 -20.6904v-125.109
c0.279297 -11.1602 9.55957 -19.9805 20.7197 -19.6904h62.1797v29.5703h-53.29v38.4102h32.5703v29.5693h-32.5703v38.4199h53.2803zM358.52 130.18l38.4609 144.801h-32.5801l-29.5703 -113.721l-29.71 113.721h-32.5703l38.5303 -144.801
c10.5898 -24.6299 34.2402 -30.75 47.4395 0z" />
    <glyph glyph-name="fantasy-flight-games" unicode="&#xf6dc;" horiz-adv-x="512" 
d="M256 415.14l223.14 -223.14l-223.14 -223.14l-223.14 223.14zM88.3398 192.17c13.8027 -13.6836 27.3086 -27.0547 41.1299 -40.7197c20.1602 19.8799 40.46 39.8994 61.8506 60.9902c12.0596 -12.5801 24.5195 -25.5703 36.54 -38.1104
c12.0293 11.6895 23.7393 23.0596 35.6895 34.6602c-6.99023 7.4502 -32.1494 32.8301 -35.0898 35.7793c-1.91016 1.9209 -2.29004 3.2207 -0.120117 5.35059c15.5801 15.2295 39.21 17.79 56.9805 5.09961c7.98926 -5.70996 14.2998 -11.6396 48.5098 -43.9502
c10.8203 11.1504 22.2295 22.8506 33.5 34.6904c0.490234 0.520508 0.0996094 2.63965 -0.580078 3.37988c-0.0898438 0.100586 -37.5195 40.6006 -62.1504 59c-33.5801 25.0801 -78.3193 23.0605 -119.77 -18.6895c-84.5703 -85.1807 -94.5303 -95.4805 -96.4902 -97.4805z
M323.16 90.5703c18.8203 18.79 80.3301 80.6396 100.5 101.5c-13.7305 13.4492 -27.1797 26.6299 -40.8604 40.0293c-20.0098 -19.7393 -40.2402 -39.6895 -61.25 -60.4199c-12.3301 12.8301 -24.8799 25.8799 -37.25 38.75
c-1.25977 -0.689453 -1.64941 -0.80957 -1.91016 -1.06934c-10.7295 -10.7705 -21.4199 -21.5801 -32.21 -32.29c-2.22949 -2.20996 -0.519531 -3.35059 0.800781 -4.69043c10.5791 -10.7402 21.1797 -21.4502 31.7695 -32.1797
c3.5498 -3.60059 3.54004 -3.85059 -0.139648 -7.24023c-16.8008 -15.4697 -40.8408 -16.54 -59.3203 -1.7998c-7.62012 6.08008 -11.6602 10.1797 -44.6797 42.0898c-11.5801 -11.8896 -23.3203 -23.9404 -35.3701 -36.3096
c33.5498 -34.7607 50.8496 -53.3408 72.9297 -66.8408c28.9004 -17.6699 71.5 -14.96 106.99 20.4707zM256 448l256 -256l-256 -256l-256 256zM16 192l240 -240l240 240l-240 240z" />
    <glyph glyph-name="penny-arcade" unicode="&#xf704;" horiz-adv-x="640" 
d="M421.91 283.73c7.33984 -16.2705 2.29004 -5.07031 24.6299 -54.6807l-39.7305 -10.6094c13.7002 59.2295 10.6104 45.8398 15.1006 65.29zM215.82 232.62c32.5 8.99023 41.9492 -37.6396 -0.350586 -47.4297c-14.2002 -3.77051 -6.64941 -1.75 -34.8193 -9.34082
l-4.45996 46.1904c28.3193 7.5498 19.4395 5.17969 39.6299 10.5801zM541.98 258.81c75.7998 -37.9092 98 -76.3193 97.9893 -104.47c2.10059 -78.8496 -183.3 -130.33 -399.89 -84.8301c0.540039 -13 -8.00977 -24.6494 -20.5801 -28.0195
c-125.54 -33.54 -117.35 -31.75 -122.53 -31.7598c-14.3701 -0.0107422 -26.4102 10.8896 -27.7998 25.1992l-4.2998 44.4805c-0.0830078 0.875 -0.138672 1.72461 -0.138672 2.62109c0 11.877 7.43945 22.0293 17.9082 26.0488l-1.73926 17.8799
c-50.2305 28.2598 -80.9004 61.8701 -80.9004 95.3701c0 72.9199 144.26 113.4 309.41 98.3701c3.02734 8.49316 10.0977 15.0625 18.8896 17.4102c96.8701 25.9092 65.3203 17.4795 135.59 36.2295c13.1602 3.50977 26.9307 -2.95996 32.6201 -15.3301zM255.14 149.7
c20.7529 4.80176 38.666 16.9805 50.75 33.7197c21.6006 32.5898 14.1104 105.561 -42.5498 104.43c-16.04 -0.229492 -8.07031 0.890625 -186.22 -46.6494l4.34961 -44.5l20.1201 5.38965l11.1104 -114.64l-20.0205 -5.35059l4.30078 -44.5195l115.31 30.7803
l-4.50977 44.5098l-20.5303 -5.50977l-2.45996 23.5498l48.4404 12.9102zM454.32 133.08l108.55 28.96l-4.2998 44.4795l-20.79 -5.55957l-66.6699 145.47c-70.5801 -18.8301 -42.2305 -11.25 -135.591 -36.2393l4.2002 -44.4805l17.1504 4.55957l-33.0801 -126.47
l-20.9902 -5.58984l4.45996 -44.4297l112.851 30.0693l-4.05078 39.54l-19.1992 -5.12012l4.09961 17.54l57.7598 15.4209l6.61035 -14.6807l-14.9004 -3.97949z" />
    <glyph glyph-name="wizards-of-the-coast" unicode="&#xf730;" horiz-adv-x="640" 
d="M219.19 102.31c7.44922 5.80078 16.2598 0.680664 21.7295 -7.0791c7.08984 -10.1201 6.24023 -18.1602 -0.259766 -23.04c-7.62012 -6.24023 -17.0898 0.129883 -21.7305 6.5498c-10.8096 15.1299 -1.63965 22.1895 0.260742 23.5693zM555.94 26.3701
c1.30957 4.4502 3.92969 10.21 3.93945 20.1699c0 34.04 -41.6299 64.4102 -100.03 68.0801c-53.1592 3.39941 -120.46 -15.4502 -184.35 -73.8506l-0.790039 0.260742c1.58008 10.4697 -0.780273 16.2295 -3.40039 21.21l0.260742 1.56934
c64.4199 51.3203 134.069 66.5107 188.8 60.4902c61.0098 -6.54004 104.479 -39.54 101.34 -78.0303c-0.790039 -9.68945 -2.88965 -15.71 -4.97949 -19.8994c-1.34082 -1.66992 -1.13086 -1.7002 -0.790039 0zM392.28 207.58
c-0.530273 7.07031 3.13965 11.7803 6.7998 15.46c3.66992 3.91992 14.9297 10.4697 14.9297 10.4697s-1.2998 -26.4502 -2.08984 -29.8496c-1.04004 -3.92969 -4.96973 -6.81055 -10.4697 -6.5498c-4.98047 0.259766 -8.37988 3.39941 -9.16992 10.4697zM342.26 358.68
c147.17 0 275.48 -86.6797 291.21 -196.939c0 0 -3.66992 -1.31055 -9.68945 -4.4502c0 -0.259766 1.0498 -10.7402 0.259766 -16.5c-0.259766 -1.83008 -1.0498 -1.0498 -1.0498 0c-0.270508 5.24023 -1.57031 11.5303 -2.36035 14.9297
c-4.70996 -2.60938 -10.21 -6.54004 -15.9697 -11.7793c0 0 4.70996 -10.21 4.70996 -25.9209c0 -21.21 -8.37988 -32.9893 -16.5 -37.9697l-0.259766 0.520508c9.16992 9.16992 12.5693 21.4795 12.5693 31.9492c0 13.8701 -6.80957 33.25 -14.3994 41.3701
c0 0 4.4502 -8.12012 6.80957 -17.8096c0 0 -21.21 -21.4697 -26.9697 -62.3203c0 0 -3.66992 9.16992 -10.7402 16.2402c0 0 12.0498 -15.4502 12.0498 -38.2305c0 -19.3799 -12.8398 -37.4395 -27.5 -48.1797c-0.989258 0 -0.790039 -0.169922 -0.790039 0.790039
c15.71 12.8301 22.2607 28.0205 22.2607 46.3506c0 38.2295 -49.2305 80.3896 -130.15 80.3896c-96.1104 0 -181.74 -58.1299 -236.99 -128.05l-1.0498 0.259766c-40.3203 120.979 -135.64 185.66 -196.13 202.16c-2.09961 0.519531 -1.83984 0.790039 -0.790039 1.30957
c12.3096 14.4004 136.96 151.88 341.47 151.88zM243.02 69.0596c16.8408 14.5908 4.99023 30.7705 4.71094 31.1602c-4.08008 5.99023 -16.3105 16.8506 -31.1602 5.5c-10.9502 -8.37988 -11.6406 -22.8896 -4.19043 -32.4697
c6.44043 -8.26953 19.5801 -13.1797 30.6396 -4.19043zM245.11 205.49l1.83008 -8.11035l-3.6709 4.4502l-14.1396 -26.71l24.6201 -28.7998l12.5703 6.01953l-11.7803 70.96zM263.7 87.9102c3.41016 2.35938 7.33984 4.97949 9.67969 6.57031l-0.259766 0.259766
c-1.56055 -0.780273 -3.11035 -1.0498 -12.5703 15.9697v0.259766c6.87012 5.16016 8.45996 4.89062 11.5205 5.5l0.259766 0.260742c-1.31055 3.66992 -1.31055 3.66992 -1.83008 5.5h-0.259766c-3.95996 -3.31055 -1.4707 -1.58008 -11.5205 -7.86035h-0.259766
c-1.83008 3.13965 -4.19043 7.33008 -5.75977 9.68945v1.31055c4.4502 3.91992 10.2197 6.7998 12.3096 7.58984c2.87988 1.0498 4.19043 0.520508 5.24023 0.259766l0.259766 0.520508c-1.30957 1.83008 -2.08984 2.87988 -3.39941 4.70996l-0.520508 0.259766
c-9.9502 -5.5 -17.54 -9.9502 -25.3994 -15.71l0.259766 -0.519531c1.30957 0.259766 3.13965 -0.260742 4.4502 -2.62012c15.04 -25.0801 19.5898 -27.5908 17.54 -31.6904zM318.96 120.38v0.25c-1.99023 0 -2.34961 -1.37012 -14.6602 30.6396v0.260742
c4.95996 1.85938 8.78027 4.37988 12.3105 2.62012l0.259766 0.519531l-3.13965 4.98047l-0.520508 0.259766c-2.22949 -0.929688 -20.4697 -8.00977 -27.7598 -12.5703l-0.259766 -0.519531l1.0498 -5.76074h0.519531c1.0498 3.68066 9.7998 7.33008 9.9502 7.33008
l0.259766 -0.259766c12.9404 -29.7598 13.0703 -29.8799 11.7803 -32.4697l0.259766 -0.259766c3.93066 2.09961 6.81055 3.40918 9.9502 4.97949zM363.73 136.88c-0.780273 0.520508 -2.09082 1.31055 -2.63086 3.92969c-1.56934 6.02051 -4.70996 20.1709 -6.2793 26.4502
c-0.530273 1.57031 -0.530273 3.14062 0.519531 4.4502l-0.259766 0.259766c-3.41016 -0.529297 -6.29004 -1.30957 -10.7402 -2.35938v-0.260742c1.57031 -0.529297 2.10059 -2.09961 2.62012 -3.92969l2.62012 -9.42969l-0.259766 -0.259766
c-3.40039 -1.05078 -8.90039 -2.62012 -12.8301 -3.93066h-0.259766c-0.780273 2.10059 -1.83008 5.75977 -3.14062 9.69043l0.259766 4.70996l-0.259766 0.259766c-4.71973 -1.30957 -7.59961 -2.34961 -10.7402 -3.40039v-0.519531
c1.05078 0 2.10059 -1.30957 2.62012 -3.13965c1.0498 -3.40039 8.12012 -24.0908 9.16992 -27.2305c0.790039 -2.09961 0.790039 -3.66992 -0.259766 -4.97949l0.259766 -0.260742c3.14062 1.31055 6.54004 2.87988 10.21 3.93066v0.519531
c-1.0498 0.259766 -2.08984 0.780273 -2.87988 3.13965c-1.0498 3.93066 -3.39941 11.2607 -4.18945 13.8809l0.259766 0.259766c3.92969 1.30957 9.42969 3.13965 12.8301 3.92969l0.259766 -0.259766c0.530273 -2.09961 2.62012 -10.2197 3.66992 -13.6201
l-0.519531 -4.4502l0.259766 -0.259766c4.4502 1.57031 5.5 1.83008 9.69043 2.87988zM395.94 143.69c0.529297 1.8291 1.0498 3.65918 1.5791 6.04004h-0.259766c-2.0293 -4.06055 -15.0898 -5.09082 -16.2402 -4.71094l-0.259766 0.260742
c-0.519531 3.13965 -1.83008 10.4795 -2.08984 12.5693l0.259766 0.260742c8.06055 0.899414 5.40039 1.0293 10.21 0h0.260742c0 3.40918 0.259766 3.66992 0.259766 5.23926h-0.259766c-5.98047 -2.2998 -1.2207 -0.679688 -10.7402 -2.35938l-0.259766 0.259766
c-0.520508 3.40039 -1.31055 8.37988 -1.57031 9.9502l0.259766 0.259766c12.9004 2.41016 15.1006 0.349609 16.2402 -0.790039l0.259766 0.259766c-0.780273 2.36035 -1.0498 3.14062 -1.57031 5.5l-0.259766 0.260742
c-4.71973 -0.260742 -15.71 -1.05078 -24.8799 -2.62012l-0.790039 -0.520508c1.83008 -0.790039 2.36035 -1.83984 2.62012 -3.66992c1.58008 -7.59961 3.41016 -18.3301 4.98047 -26.1895l-0.790039 -4.19043l0.259766 -0.259766
c8.37988 1.83008 17.8096 3.66992 22.5195 4.18945zM406.68 188.2c3.14062 1.56934 7.33008 5.5 7.33008 5.50977c1.95996 -4.58008 0.970703 -2.70996 4.19043 -7.86035c10.1494 -0.459961 8.60938 0.0205078 20.4297 -1.0498l0.790039 4.70996
s-4.18945 0 -5.75977 1.83008c-1.0498 1.31055 -1.31055 3.14062 -1.57031 5.5c0 2.36035 0.270508 16.5 0.790039 20.6904c0.259766 4.18945 2.08984 20.4199 2.08984 23.04c0.260742 2.62012 1.0498 8.91016 0.260742 12.0498
c-4.82031 19.2803 -24.4307 17.8096 -50.0205 16.2402l-5.24023 -16.2402l2.62012 -2.87988c16.5498 16.5498 37.6201 4.56934 29.5898 -5.75977c-5.18945 -6.9209 -19.7393 -8.90039 -28.54 -17.0205c-6.47949 -6.49023 -12.2393 -20.9004 -5.5 -31.6904
c6.12988 -11.0391 17.29 -9.96973 17.54 -9.94922c2.87988 0 6.55078 0.519531 11 2.87988zM443.86 166.99c0 1.83984 0.269531 4.18945 0.269531 5.25l-0.259766 0.519531c-14.3604 8.98047 -26.8604 0.919922 -28.7998 -9.9502
c-2.83984 -16.0898 15.3594 -25.46 25.6602 -18.5898l0.519531 0.520508c0 0.259766 1.30957 4.4502 1.83008 6.2793l-0.259766 0.260742c-6.39062 -9.58008 -23.3203 -6.87012 -20.6904 10.21c1.91016 12.6602 15.3799 16.0801 21.7305 5.5zM449.63 254.72
c0 0 4.96973 -0.790039 4.99023 -3.66016c0 -2.08984 -4.98047 -55.25 -4.98047 -55.25c-0.109375 -1.48926 -0.339844 -6.80957 -7.58984 -6.80957l-0.790039 -4.70996c18.3906 -2.83008 19.3701 -3.04004 36.9199 -7.33008l0.520508 4.70996
c-13.0498 3.91992 -9.74023 7.37012 -4.4502 46.0898c1.09961 0.870117 8.62012 7.14062 20.6904 0.790039l11.2598 11.2598s-9.69043 8.90039 -14.9307 7.33008c-5.23926 -1.30957 -15.4492 -10.7393 -15.4492 -10.7393l1.56934 17.54
c-8.10938 4.0498 -27.0693 7.3291 -27.7598 7.3291v-6.5498zM460.62 140.28c9.42969 -2.35059 16.2402 2.62012 18.8496 11.5195c2.08984 7.60059 -1.56934 16.7598 -10.7393 19.3799c-6.54004 2.10059 -15.7109 -0.779297 -18.8506 -10.21
c-3.39941 -9.68945 2.62012 -18.5996 10.7402 -20.6895zM502.78 130.59c-0.780273 1.31055 -1.04004 2.10059 -0.799805 3.91016c1.22949 27.0098 1.5293 24.6602 1.0498 25.1396c-2.08984 0.790039 -5.5 2.09082 -7.58984 2.87988l-0.520508 -0.259766v-2.08984
c-3.92969 -6.01953 -10.4795 -15.4502 -13.8799 -20.1602l-2.62012 -1.83008v-0.259766c2.08984 -0.259766 4.70996 -1.30957 6.02051 -1.57031v0.260742l0.790039 3.39941c0.789062 1.0498 2.35938 3.66992 3.66992 5.5c0.40918 0 2.25 -0.549805 7.06934 -2.35938
c0.330078 -0.320312 0.330078 0.649414 -0.259766 -7.59082l-1.57031 -1.8291v-0.260742c1.57031 -0.519531 6.28027 -2.35938 8.64062 -2.87988zM498.07 220.41c-13.2207 -21.1504 -9.39062 -51.6006 9.66992 -52.9004c5.75977 -0.259766 9.42969 3.93066 9.68945 3.66992
l-2.08984 -6.80957c8.91016 -4.21973 11.4404 -5.29004 17.8105 -8.63965l1.83008 4.44922c-6.14062 3.51074 -1.29004 11.25 24.6191 84.3203c-6.13965 6.45996 -10.2998 10.0596 -22.5195 20.4297l-1.83008 -3.66992c1.62988 -1.35938 6.79004 -5.00977 4.4502 -11.2598
l-7.58984 -26.1904c-3.28027 12.79 -22.79 14.8701 -34.04 -3.39941zM527.4 141.07l2.35938 3.39941v0.520508c-3.41016 6.83008 -11.9395 7.41992 -14.6602 2.35938c-1.83984 -3.40918 0.260742 -7.06934 1.83008 -9.68945
c1.57031 -2.87988 3.14062 -6.29004 2.08984 -8.37988c-2.31934 -4.62988 -8.94922 -0.680664 -8.37988 4.97949l-0.790039 -0.259766c-2.09961 -4.7998 -1.83008 -4.00977 -1.83008 -4.70996c3.05078 -6.09961 12.8105 -7.12988 15.4502 -0.790039
c1.57031 3.15039 0.520508 6.80957 -1.0498 9.42969c-1.83008 3.40039 -4.18945 6.29004 -2.87988 8.37988c1.51953 2.65039 7.86035 0.470703 7.86035 -5.23926zM548.61 127.71l1.30957 3.91016l-0.259766 0.259766c-2.36035 2.08984 -8.64062 6.54004 -12.3105 8.90039
h-0.259766l-3.13965 -3.40039v-0.259766c4.7998 -0.320312 3.37988 0.149414 6.01953 -1.83008v-0.259766c-2.62012 -4.9707 -6.0293 -11.2607 -9.16992 -17.0205l-2.08984 -1.30957l-0.259766 -0.259766l5.75977 -4.4502l0.259766 0.259766
c-0.259766 0.530273 -0.519531 1.57031 0.790039 3.92969c2.87988 5.77051 6.28027 12.0508 8.64062 16.2402h0.259766c3.54004 -2.57031 2.49023 -1.43945 4.4502 -4.70996zM575.84 171.97l7.85059 10.46s-9.4209 18.8604 -23.04 16.5
c-20.8408 -4.0293 -3.15039 -34.21 -2.09082 -38.2295c4.33008 -15.1299 -16.3193 -12.5605 -13.3496 5.24023l-2.87988 2.08984l-4.98047 -14.4004s11.7803 -11.2598 20.1602 -10.4697c8.12012 0.790039 13.8799 6.29004 13.8799 16.5
c0 8.37988 -7.85938 22.7803 -7.85938 27.7598c0 6.86035 12.2695 4.75977 11.5195 -4.97949c-0.259766 -2.61035 -1.2998 -5.23047 -2.08984 -7.59082zM611.46 182.18c0.780273 -2.35938 1.57031 -1.83008 0.790039 0.270508
c-32.4697 98.9795 -132.76 138.78 -199.8 139.83c-50.54 0.779297 -89.5605 -11.79 -131.98 -35.8799l20.6904 61.0098l-33.7803 -65.7305l-8.89941 20.9502c3.13965 1.04004 6.2793 2.08984 6.2793 2.08984l-2.62012 8.64062s-3.13965 -0.780273 -7.33008 -2.09082
l-12.0498 28.2803l13.6201 -61.0098c-5.12012 2.55957 -19.0996 6.83008 -6.5498 19.3799l-2.62012 11c-6.97949 -2.21973 -13.2295 -3.62012 -32.21 -9.68945l-23.0801 11.5l59.1797 -42.6807l-4.70996 -2.08984l-17.2793 13.8799
c2.23926 -5.13965 3.2998 -12.1699 4.70996 -19.6396l-28.54 -13.0898l-30.1104 36.1396l-17.2803 -9.16992l13.6201 -42.4199l-11.2598 -4.98047l94.2695 29.3301l-3.66992 -10.4697l-0.519531 3.13965l-13.0898 -3.39941l4.97949 -24.6201l-4.4502 -12.3105
l-25.6592 30.6406l-39.8008 -10.21l18.8506 -58.9199c-60.1299 62.3994 -67.7002 66.3994 -61.7998 75.6797c2.09961 2.87988 7.85938 7.07031 7.85938 7.07031l-4.18945 7.06934c-26.7803 -18.3496 -27.8398 -19.1494 -58.4004 -42.6797l4.98047 -6.01953
s8.12012 5.75977 13.6201 5.5c7.81934 -0.350586 1.76953 2.93945 113.659 -98.7305l11.7803 8.37988l-27.7598 93.4805l35.8799 -42.1602l-4.70996 -13.8799l41.9004 88.5098c34.6699 -80.5098 29.1494 -66.9502 32.9893 -78.8203l-33.5195 67.2998l-2.36035 -4.44922
c1.2998 -1.30078 -0.919922 3.05957 22.7803 -59.4404c3.22949 -8.88965 -1.10059 -9.88965 -5.5 -12.8301l2.36035 -4.70996c15.3594 6.79004 22.9395 9.54004 39.0195 14.4004l-1.0498 4.97949c-8.89062 -1.33008 -10.1006 0.169922 -12.0498 4.4502
c-1.05078 2.09961 -14.1504 40.0703 -20.4307 58.6602l-10.21 4.97949l-2.35938 8.12012l61.54 -36.6602l-13.0908 -43.21c12.1904 3.26074 27.0303 6.74023 49.4902 9.9502l-0.259766 26.71l-4.98047 -1.0498c-0.669922 -13.7998 -6.0293 -22.0801 -19.6396 -22.7803
l22.2598 80.3906c-27.6201 -0.450195 -59.2695 -7.19043 -66.7695 -8.90039l3.92969 -16.5l-25.1396 19.6396l91.3896 20.6904l-85.6299 -9.16992c38.4902 22.5195 79.3398 39.0195 132.76 37.9697c131.46 -2.08984 180.95 -99.2402 191.95 -129.62zM203.48 295.57
l2.35938 -8.64062c7.82031 2.61035 10.8604 2.36035 11.2598 2.36035l-9.42969 7.58984c-2.36035 -0.790039 -4.18945 -1.30957 -4.18945 -1.30957zM347.24 257.07l-11.5303 -37.71l-21.7295 17.0195c6.7998 25.5 31.6895 21.29 33.2598 20.6904zM318.43 380.93
c224.94 0 321.83 -143.76 321.57 -227.55c0 -11 -0.269531 -17.5498 -0.790039 -19.6396c-0.259766 -2.10059 -1.0498 -0.790039 -1.0498 0.519531v9.9502c0 106.58 -121.51 223.37 -301.67 223.37c-61.2705 0 -103.69 -12.0498 -110.24 -13.8799l-1.57031 0.259766
c-6.80957 7.58984 -12.8301 9.69043 -21.21 11.7803v0.790039c8.91016 2.34961 56.5605 14.3994 114.96 14.3994zM529.49 211.25c-8.61035 -34.4502 -13.6504 -35.3496 -18.3301 -35.3604c-7.33008 0 -6.81055 9.43066 -6.02051 14.9307
c0.879883 9.72949 7.40039 34.6494 17.0205 33.5195c7.33008 -0.780273 8.63965 -7.33008 7.33008 -13.0898zM467.96 168.3c3.40039 -0.780273 7.84961 -4.4502 5.23047 -14.3896c-2.88086 -11.2598 -8.11035 -11.79 -11.7803 -10.7402
c-5.5 1.31055 -7.85059 7.84961 -6.02051 14.6602c3.14062 11.2598 9.9502 11.2598 12.5703 10.4697zM491 147.35v0.270508c1.0498 1.83008 5.5 8.63965 6.5498 9.9502c-0.269531 -3.66992 -0.790039 -10.2207 -0.790039 -12.0508
c-2.62012 0.780273 -3.92969 1.31055 -5.75977 1.83008z" />
    <glyph glyph-name="think-peaks" unicode="&#xf731;" horiz-adv-x="576" 
d="M465.4 38.5996l-206.2 353.801l-204.2 -352.101l-32 0.299805l236.2 407.4l206.2 -353.9l55.0996 95l32 -0.299805zM110.1 82.7002l149.601 257.899l235.8 -404.6l-32.5 0.0996094l-203.4 349.101l-117.399 -202.5h-32.1006z" />
    <glyph glyph-name="reacteurope" unicode="&#xf75d;" horiz-adv-x="576" 
d="M250.6 236.26l2 6.7998l-5.69922 4.30078l7.19922 0.0996094l2.30078 6.7998l2.2998 -6.7998l7.09961 -0.0996094l-5.7002 -4.30078l2.10059 -6.7998l-5.7998 4.10059zM314.3 236.26l1.90039 6.7998l-5.7002 4.30078l7.2002 0.0996094l2.2998 6.7998l2.2998 -6.7998
l7.2002 -0.0996094l-5.7002 -4.30078l2.10059 -6.7998l-5.80078 4.10059zM223 185.76c4.90039 0 3.7998 -3.89941 3.7998 -13.7598c0 -10.2998 -6.7002 -14.0996 -16.7998 -14.0996h-0.200195c-10.0996 0 -16.7998 3.69922 -16.7998 14.0996v40.0596
c0 9.90039 6.7002 14.1006 16.7998 14.1006h0.200195c10.0996 0 16.7998 -4.2002 16.7998 -14.1006c0 -8.39941 0.900391 -12.1992 -3.7998 -12.2998h-3.40039c-4.5 0 -3.7998 3.2998 -3.7998 10.5c0 4.7002 -2.2998 6.10059 -5.7998 6.10059
s-5.7998 -1.40039 -5.7998 -6.10059v-36.5996c0 -4.7002 2.2998 -6.10059 5.7998 -6.10059s5.7998 1.40039 5.7998 6.10059c0 8.09961 -1 12.0996 3.7998 12.0996h3.40039zM142.3 168.36c2.5 0 3.7998 -1.30078 3.7998 -3.80078v-2.09961
c0 -2.5 -1.2998 -3.7998 -3.7998 -3.7998h-21.8994c-2.5 0 -3.80078 1.2998 -3.80078 3.7998v59.0996c0 2.5 1.30078 3.90039 3.7002 3.80078h21.7002c2.5 0 3.7998 -1.30078 3.7998 -3.80078v-2.09961c0 -2.5 -1.2998 -3.7998 -3.7998 -3.7998h-14.4004v-18.2998h11.4004
c2.5 0 3.7998 -1.30078 3.7998 -3.80078v-2.09961c0 -2.5 -1.2998 -3.7998 -3.7998 -3.7998h-11.4004v-19.2998h14.7002zM100.3 186.86l8.10059 -23.9004c0.799805 -2.59961 -0.400391 -4.40039 -3.2002 -4.40039h-3.2998
c-0.0996094 -0.00683594 -0.196289 -0.0078125 -0.297852 -0.0078125c-1.95703 0 -3.59473 1.37402 -4.00293 3.20801l-7.39941 23.5h-5.60059v-22.8994c0 -2.5 -1.2998 -3.80078 -3.7998 -3.80078h-3.39941c-2.5 0 -3.80078 1.30078 -3.80078 3.80078v59.0996
c0 2.5 1.30078 3.7998 3.80078 3.7998h13.3994c10.1006 0 16.7998 -4 16.7998 -14.0996v-11.9004c0 -6.39941 -2.69922 -10.3994 -7.2998 -12.3994zM96.5 200.86v8.69922c0 4.80078 -2.5 6.10059 -6.09961 6.10059h-5.80078v-20.9004h5.80078
c3.59961 0 6.09961 1.2998 6.09961 6.10059zM176 222l11.2002 -59.2002c0.5 -2.7002 -0.799805 -4.09961 -3.40039 -4.09961h-3.5c-0.12207 -0.0117188 -0.241211 -0.015625 -0.366211 -0.015625c-1.98926 0 -3.61719 1.55566 -3.7334 3.51562l-1.7998 11.2998h-12.2002
l-1.7998 -11.2998c-0.117188 -1.95996 -1.74121 -3.51855 -3.73047 -3.51855c-0.125 0 -0.248047 0.00683594 -0.370117 0.0185547h-3c-2.5 0 -3.89941 1.39941 -3.39941 4.09961l11 59.2002c0.137695 1.90625 1.72559 3.41504 3.66602 3.41504
c0.112305 0 0.223633 -0.00488281 0.333984 -0.0146484h6.89941c0.132812 0.0136719 0.264648 0.0166016 0.401367 0.0166016c1.97168 0 3.59766 -1.49805 3.79883 -3.41699zM163.7 182.7h9.39941l-4.69922 29.7002zM253 162.5c0 -2.45996 -1.2998 -3.83984 -3.7998 -3.7998
h-3.40039c-2.5 0 -3.7998 1.2998 -3.7998 3.7998v53.2002h-7.2998c-2.5 0 -3.7998 1.2998 -3.7998 3.7998v2.09961c0 2.5 1.2998 3.80078 3.7998 3.80078h25.7998c2.5 0 3.7998 -1.30078 3.7998 -3.80078v-2.09961c0 -2.5 -1.2998 -3.7998 -3.7998 -3.7998h-7.5v-53.2002z
M501 163.3c0.0546875 0.00488281 0.108398 -0.03125 0.164062 -0.03125c1.01562 0 1.84082 -0.824219 1.84082 -1.83984c0 -0.0429688 -0.00195312 -0.0859375 -0.00488281 -0.128906v-0.799805c0.00195312 -0.0332031 0.00488281 -0.0664062 0.00488281 -0.100586
c0 -0.999023 -0.811523 -1.80957 -1.81055 -1.80957c-0.0654297 0 -0.130859 0.00292969 -0.194336 0.00976562h-22.5c-0.0634766 -0.00683594 -0.126953 -0.0117188 -0.192383 -0.0117188c-0.999023 0 -1.81055 0.811523 -1.81055 1.81055
c0 0.0341797 0.000976562 0.0683594 0.00292969 0.101562v63c-0.0107422 0.0751953 -0.0166016 0.150391 -0.0166016 0.229492c0 0.893555 0.725586 1.61914 1.61914 1.61914c0.137695 0 0.270508 -0.0166016 0.397461 -0.0488281h22.2002
c0.0771484 0.0107422 0.155273 0.0175781 0.236328 0.0175781c0.976562 0 1.76953 -0.792969 1.76953 -1.76953c0 -0.0498047 -0.00195312 -0.0996094 -0.00585938 -0.147461v-0.800781c0.00195312 -0.0380859 0.00488281 -0.0742188 0.00488281 -0.113281
c0 -1.04297 -0.84668 -1.88965 -1.88965 -1.88965c-0.0390625 0 -0.0771484 0.000976562 -0.115234 0.00292969h-19.1006v-25.7998h16.1006c0.0380859 0.00292969 0.0742188 0.00488281 0.113281 0.00488281c1.04297 0 1.88965 -0.84668 1.88965 -1.88965
c0 -0.0390625 -0.000976562 -0.0771484 -0.00292969 -0.115234v-0.799805c0.00195312 -0.0380859 0.00488281 -0.0751953 0.00488281 -0.113281c0 -1.04297 -0.84668 -1.89062 -1.88965 -1.89062c-0.0390625 0 -0.0771484 0.00195312 -0.115234 0.00390625h-16.1006
v-26.7002h19.4004zM407.9 226.2c10.0996 0 15.2998 -4.74023 15.2998 -14.1006v-40.0996c0 -9.2998 -5.2002 -14.0996 -15.2998 -14.0996h-0.800781c-10.0996 0 -15.2998 4.7998 -15.2998 14.0996v40.0996c0 9.40039 5.2002 14.1006 15.2998 14.1006h0.800781zM418.1 173.8
v36.6006c0 7.89941 -3 11.0996 -10.5 11.0996s-10.5 -3.2002 -10.5 -11.0996v-36.6006c0 -8 3 -11.0996 10.5 -11.0996s10.4004 3.09961 10.5 11.0996zM371.6 188.3l10.6006 -27.2998c0.5 -1.2998 -0.100586 -2.2998 -1.5 -2.2998h-1.5
c-0.0429688 -0.00292969 -0.0839844 -0.00488281 -0.12793 -0.00488281c-0.993164 0 -1.8418 0.625977 -2.17188 1.50488l-10.4004 27.2002h-11.5996v-26.9004c0.00488281 -0.0556641 0.00976562 -0.111328 0.00976562 -0.167969
c0 -0.960938 -0.780273 -1.74023 -1.74023 -1.74023c-0.0576172 0 -0.114258 0.00292969 -0.169922 0.0078125h-1.2002c-0.0634766 -0.00683594 -0.126953 -0.0117188 -0.192383 -0.0117188c-0.999023 0 -1.81055 0.811523 -1.81055 1.81055
c0 0.0341797 0.000976562 0.0683594 0.00292969 0.101562v63c-0.00195312 0.0332031 -0.00488281 0.0664062 -0.00488281 0.100586c0 0.999023 0.811523 1.80957 1.81055 1.80957c0.0654297 0 0.130859 -0.00292969 0.194336 -0.00976562h13.7002
c10.0996 0 15.2998 -4.7002 15.2998 -14.1006v-9.7002c0 -7.19922 -3.09961 -11.6992 -9.2002 -13.2998zM365.2 192.2c7.5 0 10.5 3.16016 10.5 11v6.39941c0 8 -3 11.1006 -10.5 11.1006h-10.2002v-28.5h10.2002zM451.1 225.3c10.1006 0 15.3008 -4.7002 15.3008 -14.0996
v-10.5c0 -9.2998 -5.2002 -14.1006 -15.3008 -14.1006h-10.5996v-26.0996c0.00585938 -0.0556641 0.00976562 -0.111328 0.00976562 -0.167969c0 -0.960938 -0.779297 -1.74023 -1.74023 -1.74023c-0.0566406 0 -0.113281 0.00292969 -0.169922 0.0078125h-1.19922
c-0.0644531 -0.00683594 -0.12793 -0.0117188 -0.193359 -0.0117188c-0.999023 0 -1.80957 0.811523 -1.80957 1.81055c0 0.0341797 0.000976562 0.0683594 0.00292969 0.101562v63c-0.0107422 0.0751953 -0.0175781 0.150391 -0.0175781 0.229492
c0 0.893555 0.726562 1.61914 1.62012 1.61914c0.136719 0 0.270508 -0.0166016 0.397461 -0.0488281h13.6992zM461.3 202.5v7.09961c0 7.90039 -3 11.1006 -10.5 11h-10.2002v-29.1992h10.2002c7.5 0 10.5 3.19922 10.5 11.0996zM259.5 140l7.09961 -0.0996094
l-5.69922 -4.30078l2.09961 -6.7998l-5.7998 4.10059l-5.7998 -4.10059l2.09961 6.7998l-5.7002 4.30078l7.10059 0.0996094l2.2998 6.7998zM487.1 276.1c122.301 -46.0996 118.401 -132.54 -33.8984 -176.34c13.3994 -49.7002 18.0996 -101.899 0.0996094 -133.8
c-3.7998 -6.7002 -16.7998 -27.7002 -47.5996 -27.7002c-41.5 0 -110.2 41.6006 -182.101 142c-42.7998 3.5 -72.1992 10.1006 -84.5996 13c-20.5 -82.2998 -6.7998 -125.3 15.5 -137.899c1.2002 -0.700195 38.4004 -27.2002 120.9 52.7998
c3.39941 -3.5 6.79883 -6.90039 10.1982 -10.2002c-63.0996 -61.2002 -110.199 -71 -138.199 -55.2002c-32.4004 18.2998 -42.8008 72 -22.3008 153.9c-18.8994 5 -121.6 33.2002 -122.1 92.7998c-0.400391 40.9004 49.7998 74.7002 120.3 95
c-13.3994 49.5996 -18.2002 101.8 -0.0996094 133.8c3.7998 6.74023 16.7998 27.7402 47.5996 27.7402c41.6006 0 110.3 -41.6396 182.2 -142.14c28.7607 -2.29492 57.1504 -6.70801 84.5996 -13c20.5 82 6.90039 125.1 -15.5 137.8
c-1.2998 0.700195 -38.3994 27.2002 -120.899 -52.7998c-3.40039 3.5 -6.80078 6.89941 -10.2002 10.1992c52.2998 50.9404 103.7 74.6006 138.2 55.2402c33.8994 -19.2002 41.8994 -75.8994 22.2998 -153.899c12.0234 -3.14844 24.0938 -6.9873 35.5996 -11.3008z
M135.901 411.16c-23.1006 -40.7998 1 -121.562 1.19922 -122.961c27.2979 6.86914 55.7041 11.835 84.4004 14.5996c15.5215 22.6875 32.2832 43.9033 50.7002 64.2002c3.39941 -3.33301 6.7998 -6.74609 10.2002 -10.2393
c-15.1953 -16.6592 -29.1309 -33.958 -42.2002 -52.3994c17.9678 1.35645 34.9062 2.04102 53.2197 2.04102c13.6523 0 27.2158 -0.383789 40.6797 -1.1416c-64.5 86.6006 -126.5 126.2 -163.3 126.2c-23 0 -32 -15.2002 -34.8994 -20.2998zM440.701 -27.1406
c3.2998 6 21.5 38.5996 -1.2002 123c-4.09961 -1.10059 -37.0996 -9.90039 -84.4004 -14.6006c-15.4961 -22.7061 -32.2598 -43.9238 -50.6992 -64.2002c-3.40039 3.2998 -6.80078 6.7002 -10.2002 10.2002c15.1943 16.6602 29.1299 33.958 42.2002 52.4004
c-17.9014 -1.38379 -34.792 -2.08301 -53.0459 -2.08301c-13.7139 0 -27.3359 0.398438 -40.8545 1.18262c64.5996 -86.7998 126.6 -126.2 163.3 -126.2c23.1006 0 32 15.2002 34.9004 20.3008zM449.801 111.459c25.6006 7.2998 85.9004 27.4004 105.7 62.5
c1.40039 2.5 33.5 50.5 -72.5996 90.4004c-11.1553 4.18555 -22.8525 7.92188 -34.5 11c-3.60059 -12.9004 -7.90039 -26.1006 -12.8008 -39.5c-3.71387 -0.506836 -6.9248 -2.60645 -8.89941 -5.60059l-0.100586 0.100586c-1.94824 1.84863 -4.25 3.31445 -6.7998 4.2998
c5.7002 15 10.6006 29.7998 14.6006 44.2002c-7.2002 1.69922 -31.8008 7.59961 -72.2002 11.6992c16.7002 -24.5 27.8994 -44.0996 34.2998 -55.5c-4.18457 -1.36719 -7.79199 -3.96777 -10.4004 -7.39941c-13.5996 16.3994 -11 19.8994 -42.5 64.5
c-16.6885 1.17285 -32.207 1.77344 -49.1914 1.77344c-21.2998 0 -42.3818 -0.9375 -63.208 -2.77344c-16.9004 -25 -28.2998 -45.2002 -34.7998 -56.9004c-4.16797 -1.77637 -7.68652 -4.69238 -10.2002 -8.39941c-1.07422 3.39844 -3.37402 6.23633 -6.40039 8
c6.10059 11.3994 16.9004 31 32.7998 55.2998c-39.5996 -4.60059 -65 -11.2002 -72 -13c4.30078 -14.1006 9.40039 -28.6006 15.2002 -43.2998c-0.866211 -0.632812 -1.63086 -1.36328 -2.2998 -2.2002c-1.5 1.89941 -4 5.2998 -14.4004 5.2998
c-4.69922 12.2998 -8.7998 24.5 -12.3994 36.4004c-138.8 -40.3604 -158.4 -121.36 1.5 -164c3.59961 12.8994 7.7998 26 12.7002 39.3994c0.328125 -0.0185547 0.651367 -0.0214844 0.984375 -0.0214844c2.0752 0 4.06641 0.360352 5.91504 1.02148
c3 -1.2002 5.2002 -1 8.40039 -1c-5.5 -14.5996 -10.2002 -28.8994 -14.1006 -42.8994c23.4512 -5.42578 47.71 -9.39258 72.2002 -11.7002c-16.2998 23.8994 -27.5 43.3994 -33.7998 54.5996c8.7002 0 10.7002 1.60059 12.5996 3.2002
c0.950195 -0.574219 1.95996 -1.08008 3 -1.5c15.3008 -26.7002 28.9004 -46.5996 36.8008 -57.7998c16.6875 -1.17285 32.2051 -1.77344 49.1895 -1.77344c21.2998 0 42.3838 0.9375 63.21 2.77344c16.5 24.2998 27.7002 44 33.9004 55.2002
c7.2998 0 9.7998 3 10.8994 4.19922c1.82324 -1.3252 3.84766 -2.41113 6 -3.19922c-15 -28 -28.6992 -48.9004 -32.1992 -54.2002c24.4219 2.70312 48.6768 7.11816 72 13c-4.10059 13.7998 -9 27.8994 -14.7002 42.2002c2.00391 0.898438 3.81934 2.11523 5.39941 3.59961
l0.100586 0.0996094c2.2666 -3.44043 6.1543 -5.7002 10.5781 -5.7002c0.0410156 0 0.0810547 0 0.12207 0.000976562c4.69922 -12.3008 8.7998 -24.5 12.3994 -36.4004zM335.401 225.459c0.0664062 0.00683594 0.132812 0.00878906 0.201172 0.00878906
c1.07422 0 1.95117 -0.84668 1.99805 -1.90918v-51.5c0 -9.5 -5 -14.0996 -15.0996 -14.0996h-0.400391c-10.0996 0 -15.0996 4.5 -15.0996 14.0996v51.5c-0.00195312 0.0341797 -0.00488281 0.0664062 -0.00488281 0.100586c0 0.999023 0.811523 1.81055 1.81055 1.81055
c0.0654297 0 0.130859 -0.00390625 0.194336 -0.0107422h1.2002c0.0742188 0.00976562 0.148438 0.0166016 0.224609 0.0166016c0.932617 0 1.69043 -0.756836 1.69043 -1.68945c0 -0.0771484 -0.00488281 -0.15332 -0.015625 -0.227539v-49.7998
c0 -8 2.60059 -11.0996 10.1006 -11.0996s10.0996 3.2002 10.0996 11.0996v49.7998c-0.00488281 0.0566406 -0.00976562 0.111328 -0.00976562 0.168945c0 0.959961 0.779297 1.73926 1.74023 1.73926c0.0576172 0 0.114258 -0.00195312 0.169922 -0.0078125h1.2002z
M321.701 139.999l7.09961 -0.0996094l-5.7002 -4.30078l2.10059 -6.7998l-5.7998 4.10059l-5.80078 -4.10059l2.10059 6.7998l-5.7002 4.30078l7.09961 0.0996094l2.30078 6.7998zM290.601 132.599l7.10059 -0.0996094l-5.7002 -4.2998l2.09961 -6.7998l-5.7998 4.09961
l-5.7998 -4.09961l2.09961 6.7998l-5.69922 4.2998l7.09961 0.0996094l2.2998 6.80078zM295.701 163.399c0.0615234 0.00585938 0.12207 -0.0292969 0.185547 -0.0292969c1.00977 0 1.83008 -0.819336 1.83008 -1.83008
c0 -0.0810547 -0.00585938 -0.162109 -0.015625 -0.241211v-0.799805c0.00390625 -0.0488281 0.0078125 -0.0966797 0.0078125 -0.145508c0 -0.977539 -0.792969 -1.77051 -1.77051 -1.77051c-0.0800781 0 -0.160156 0.00585938 -0.237305 0.015625h-22.5
c-0.0644531 -0.00683594 -0.126953 -0.0117188 -0.193359 -0.0117188c-0.999023 0 -1.80957 0.811523 -1.80957 1.81055c0 0.0341797 0.000976562 0.0683594 0.00292969 0.101562v63c-0.00195312 0.0332031 -0.00488281 0.0664062 -0.00488281 0.100586
c0 0.999023 0.811523 1.80957 1.80957 1.80957c0.0664062 0 0.130859 -0.00292969 0.195312 -0.00976562h22.2002c0.0771484 0.00976562 0.155273 0.0175781 0.235352 0.0175781c0.977539 0 1.77051 -0.793945 1.77051 -1.77051
c0 -0.0498047 -0.00195312 -0.0986328 -0.00585938 -0.147461v-0.799805c0.00195312 -0.0380859 0.00488281 -0.0751953 0.00488281 -0.113281c0 -1.04395 -0.847656 -1.89062 -1.89062 -1.89062c-0.0380859 0 -0.0761719 0.000976562 -0.114258 0.00390625h-19.1006
v-25.7998h16.1006c0.0380859 0.00195312 0.0742188 0.00488281 0.113281 0.00488281c1.04297 0 1.88965 -0.847656 1.88965 -1.89062c0 -0.0380859 -0.000976562 -0.0761719 -0.00292969 -0.114258v-0.800781
c0.00195312 -0.0380859 0.00488281 -0.0742188 0.00488281 -0.113281c0 -1.04297 -0.847656 -1.88965 -1.89062 -1.88965c-0.0380859 0 -0.0761719 0.000976562 -0.114258 0.00292969h-16.1006v-26.6992h19.4004zM288.301 262.799l2.2998 -6.7998l7.10059 -0.0996094
l-5.7002 -4.30078l2.09961 -6.7998l-5.7998 4.10059l-5.7998 -4.10059l2.09961 6.7998l-5.69922 4.30078l7.09961 0.0996094z" />
    <glyph glyph-name="artstation" unicode="&#xf77a;" horiz-adv-x="512" 
d="M2 70.5996h315.1l59.2002 -102.6h-285.399c-0.00488281 0 0.0205078 -0.0498047 0.015625 -0.0498047c-20.0742 0 -37.4736 11.5439 -45.916 28.3496zM501.8 98c19 -29.4004 -0.0996094 -55.9004 -2 -59.0996l-40.7002 -70.5l-257.3 447.6h88.4004
c0.00390625 0 -0.0234375 0.0527344 -0.0195312 0.0527344c19.6797 0 36.79 -11.0879 45.4189 -27.3525zM275 143.5h-231l115.5 200z" />
    <glyph glyph-name="atlassian" unicode="&#xf77b;" horiz-adv-x="512" 
d="M152.2 211.6c66.2998 -70.7998 89.0996 -189.3 51.2002 -267.1c-2.40039 -5.2002 -7.60059 -8.5 -13.4004 -8.40039h-175c-11 0 -18.4004 11.7002 -13.4004 21.7002l125.801 251c5.09961 10.5 17.0996 11 24.7998 2.7998zM244.4 439.9
c6.7998 10.8994 20.2998 10.6992 25.5996 0.0996094c5.90039 -11.7002 240.4 -482.3 240.4 -482.3c5 -9.90039 -2.2002 -21.7002 -13.4004 -21.7002h-174.2c-5.7002 0 -10.8994 3.2998 -13.3994 8.40039c-73.5 146.899 -187.301 302.1 -65 495.5z" />
    <glyph glyph-name="canadian-maple-leaf" unicode="&#xf785;" horiz-adv-x="512" 
d="M383.8 96.2998c-5 -5 -10 -7.5 -5 -22.5s10 -35.0996 10 -35.0996s-95.2002 20.0996 -105.2 22.5996c-8.89941 0.900391 -18.3994 -2.39941 -18.3994 -12.5c0 -10.0996 5.7998 -112.8 5.7998 -112.8h-30s5.7998 102.8 5.7998 112.8s-9.59961 13.4004 -18.2998 12.5
c-10.0996 -2.5 -105.3 -22.5996 -105.3 -22.5996s5 20.0996 10.0996 35.0996c4.90039 15 0 17.5 -5.09961 22.5c-2.60059 2.5 -105.2 92.4004 -105.2 92.4004l17.5 7.59961c10 4.90039 7.40039 11.4004 5 17.4004c-2.5 7.59961 -20.0996 67.2998 -20.0996 67.2998
s47.5996 -10 57.6992 -12.5c7.5 -2.40039 10 2.5 12.5 7.5s15 32.2998 15 32.2998s52.6006 -59.7998 55.1006 -62.2998c10.0996 -7.5 20.0996 0 17.5996 10c0 10 -27.5996 129.6 -27.5996 129.6s30.0996 -17.3994 40.0996 -22.3994c7.60059 -5 12.6006 -5 17.6006 5
c5 7.5 42.5 79.7998 42.5 79.7998s37.5996 -72.2998 42.6992 -79.7998c5 -10 10.1006 -10 17.6006 -5c10 5 40.0996 22.3994 40.0996 22.3994s-27.5996 -119.6 -27.5996 -129.6c-2.5 -10 7.59961 -17.5 17.5996 -10c2.5 2.40039 55.1006 62.2998 55.1006 62.2998
s12.5 -27.3994 15 -32.3994s5 -9.90039 12.5 -7.5c10 2.5 57.6992 12.5 57.6992 12.5s-17.6992 -59.7002 -20.0996 -67.3008c-2.40039 -5.89941 -5 -12.5 5 -17.3994l17.5 -7.5s-102.7 -89.9004 -105.2 -92.4004z" />
    <glyph glyph-name="centos" unicode="&#xf789;" 
d="M289.6 350.5l31.6006 -31.7002l-76.2998 -76.5v108.2h44.6992zM127.2 318.8l31.5996 31.7002h44.7002v-108.2zM168.7 360.4l55.5 55.5996l55.5 -55.5996h-44.7002v-127.9l-10.7998 -10.7998l-10.7998 10.7998v127.9h-44.7002zM194.9 192.3l-10.8008 -10.7998h-128.6
v-44.7998l-55.5 55.5996l55.5 55.6006v-44.8008h128.6zM274.2 213l76.2998 76.5l31.5996 -31.7002v-44.7998h-107.899zM447.5 192.3l-55.5 -55.5996v44.7998h-127.7l-10.7998 10.7998l10.7998 10.7998h127.7v44.8008zM65.4004 271.8v78.7002h79.3994l-31.5996 -31.7002
l90.2998 -90.5v-15.2998h-15.2998l-90.2998 90.5zM382.1 350.5v-78.7002l-31.5996 31.7002l-90.2998 -90.5h-15.2998v15.2998l90.2998 90.5l-31.6006 31.7002h78.5zM203.5 34.0996v-0.0996094h-44.7002l-31.5996 31.7002l76.2998 76.5v-108.101zM65.4004 213v44.7998
l32.5 31.7002l76.2998 -76.5h-108.8zM382.1 112.8v-78.7002h-78.5l31.6006 31.7002l-90.2998 90.5v15.2998h15.2998l90.2998 -90.5zM382.1 171.6v-44.7998l-31.5996 -31.7002l-76.2998 76.5h107.899zM321.2 65.7998l-31.6006 -31.5996h-44.6992v108.1zM97.9004 95.0996
l-32.5 31.7002v44.7998h108.8zM279.7 24.2002l-55.5 -55.6006l-55.5 55.6006h44.7002v127.899l10.7998 10.8008l10.7998 -10.8008v-127.899h44.7002zM113.2 65.7998l31.5996 -31.7002h-79.3994v78.7002l32.5 -31.7002l90.2998 90.5h15.2998v-15.2998z" />
    <glyph glyph-name="confluence" unicode="&#xf78d;" horiz-adv-x="512" 
d="M2.2998 35.7998c42.2998 66.9004 125.2 233.2 373.101 112.601c39.6992 -19.1006 83.6992 -39.9004 105.899 -50.3008c8 -3.69922 11.7002 -13.1992 8.10059 -21.2998l-50.4004 -114.1c-0.0996094 -0.100586 -0.0996094 -0.299805 -0.200195 -0.400391
c-3.89941 -8.09961 -13.5996 -11.5996 -21.7002 -7.7002c-200.399 95.2002 -213.8 111.5 -280.899 -0.699219c0 0 -0.100586 -0.100586 -0.100586 -0.200195c-4.69922 -7.7002 -14.6992 -10 -22.3994 -5.2998l-105.9 65.1992c-7.59961 4.7002 -10 14.6006 -5.5 22.2002z
M509.7 347.9c-42.6006 -67.5 -125.4 -232.9 -373.4 -112.9c-39.7002 19.2002 -83.7998 40 -106 50.4004c-8 3.69922 -11.7002 13.1992 -8.09961 21.2998l50.5 114.1c0.0996094 0.100586 0.0996094 0.299805 0.200195 0.400391
c3.89941 8.09961 13.5996 11.5996 21.6992 7.7002c199.5 -94.7002 213.301 -111.7 280.601 0.899414c0.200195 0.400391 0.399414 0.700195 0.599609 1c5 7.5 15.1006 9.40039 22.6006 4.40039l105.8 -65.1006c7.59961 -4.69922 10 -14.5996 5.5 -22.1992z" />
    <glyph glyph-name="dhl" unicode="&#xf790;" horiz-adv-x="640" 
d="M238 146.8l22.2998 30.2002h58.7002l-22.2998 -30.2002h-58.7002zM0 165.1h86.5l-4.7002 -6.39941h-81.7998v6.39941zM172.9 177h68.1992c-5.69922 -7.7998 -24.0996 -30.2998 -57.1992 -30.2998h-100.101l41.1006 55.7998h51c5.59961 0 5.59961 -2.2002 2.7998 -5.90039
c-2.7998 -3.69922 -7.60059 -10.2998 -10.4004 -14.0996c-1.39941 -1.90039 -4.09961 -5.5 4.60059 -5.5zM490.4 183.9h-62.2002l39.2998 53.3994h62.2002zM95.2998 177l-4.7002 -6.40039h-90.5996v6.40039h95.2998zM206.3 203.6
c2.7998 3.7002 2.90039 5.90039 -2.7002 5.90039h-111.399l20.3994 27.7998h117.9c29.9004 0 37.5996 -23.5996 29.2002 -35c-6.2002 -8.39941 -13.5 -18.3994 -13.5 -18.3994h-45.6006c-8.69922 0 -6 3.5 -4.59961 5.5c2.7998 3.7998 7.5 10.3994 10.2998 14.1992zM0 146.8
v6.40039h77.7998l-4.7002 -6.40039h-73.0996zM323 146.8c0 0 22.2002 30.2002 22.2998 30.2002h58.7002l-22.2998 -30.2002h-58.7002zM545 146.7l4.7002 6.39941h90.2998v-6.39941h-95zM567.3 177h72.7002v-6.40039h-77.4004zM553.8 158.7l4.7002 6.39941h81.5v-6.39941
h-86.2002zM389.6 237.3h58.7002l-39.2998 -53.3994h-143.6l39.2998 53.3994h58.7002l-22.5 -30.5996h26.1992zM423.1 177h133.4l-22.2998 -30.2998h-94.2998c-24.1006 0 -30.6006 11.5996 -23.2002 21.5996c2.09961 2.7998 6.39941 8.7002 6.39941 8.7002z" />
    <glyph glyph-name="diaspora" unicode="&#xf791;" horiz-adv-x="512" 
d="M251.64 93.4502c-1.39941 0 -88 -119.9 -88.6992 -119.9c-0.700195 0 -86.6006 60.4502 -86.9404 61.2002s86.5996 125.7 86.5996 127.4c0 2.19922 -129.6 44 -137.6 47.0996c-1.2998 0.5 31.4004 101.8 31.7002 102.1c0.599609 0.700195 144.399 -47 145.5 -47
c0.399414 0 0.899414 0.600586 1 1.30078c0.399414 2 1 148.6 1.7002 149.6c0.799805 1.2002 104.5 0.700195 105.1 0.299805c1.5 -1 3.5 -156.1 6.09961 -156.1c1.40039 0 138.7 47 139.301 46.2998c0.799805 -0.900391 31.8994 -102.2 31.5 -102.6
c-0.900391 -0.900391 -140.2 -47.1006 -140.601 -48.8008c-0.299805 -1.39941 82.7998 -122.1 82.5 -122.899s-85.5 -63.5 -86.2998 -63.5c-1 0.200195 -89 125.5 -90.9004 125.5h0.0400391z" />
    <glyph glyph-name="fedex" unicode="&#xf797;" horiz-adv-x="640" 
d="M586 163.5l54 -60.5h-64.4004l-22.2998 25l-22.0996 -25h-212.2v11.9004h-0.5c-7.90039 -11.7002 -20.7998 -18.6006 -34.9004 -18.6006c-32.6992 0 -56.3994 26.4004 -60.0996 56.9004h-85.5c0 -23.5 31.0996 -35.5 45.7998 -14.6006h42
c-27.5996 -67.6992 -130.2 -49.3994 -130.2 23.7002c0 6.40039 0.800781 12.5 2.30078 18.2002h-48.9004v-77.5h-49v184.4h109v-41.1006h-60v-26.2002h54.7998v-24.1992c24.5 43.5996 103.9 45.3994 121.9 -14c7.5 25.5 28.8994 44.8994 57.2998 44.8994
c13.9004 0 25.7998 -3.7998 35.4004 -14.7998h0.5v75.5h151.199v-48.0996h-56.0996v-16h118.7l22.5 -24.8008l21.7002 24.8008h62.3994zM139.3 180.1h46.5c-4.7998 25.6006 -40.3994 26.3008 -46.5 0zM292.7 131.2c34.5 0 32.5996 62.7998 0 62.7998
c-34 0 -34.6006 -62.7998 0 -62.7998zM460.5 112.1v29.6006h-56.0996v44.7002h56.0996v28.0996h-55.5v33.9004h56.0996v30.1992h-95v-166.5h94.4004zM414.6 151.9h56.1006v-45.6006l50.7002 57l-50.7002 57v-44h-56.1006v-24.3994zM553.2 141.6l26.2998 -29.5h40.5
l-46 51.4004l45.4004 51h-38.5l-25.6006 -29.2998l-26.5996 29.2998h-39.7002l45.5996 -51.2002l-45.5996 -51.2002h38.0996z" />
    <glyph glyph-name="fedora" unicode="&#xf798;" 
d="M225 416c123.7 -0.299805 223.7 -100.9 223.4 -224.6c-0.300781 -123.7 -100.9 -223.7 -224.601 -223.4l-170.2 0.400391c-29.582 0 -53.6006 24.0117 -53.6006 53.5938c0 0.102539 0 0.204102 0.000976562 0.305664l0.400391 170.3
c0.399414 123.7 100.899 223.7 224.6 223.4zM394.8 258.8c-0.0947266 7.71387 -1.06445 15.1934 -2.7998 22.4004l-55.2002 56.0996v-1.59961c0 -5.10059 -1.5 -9.60059 -3.7998 -14.2998zM331 353.7c1.94141 -2.71777 3.39453 -5.85449 4.2002 -9.2002l54.2998 -54.5996
c-9.56543 28.6953 -30.9629 51.8848 -58.5 63.7998zM118.1 200.8c-5.54395 -0.450195 -11.0029 -1.44336 -16.1992 -2.89941l8.5 -8.5c2.04004 4.16895 4.62598 7.98535 7.69922 11.3994zM97 196.6c-4.72363 -1.31543 -9.36719 -3.08691 -13.7002 -5.19922l27 -27.2002
c-1.51855 3.87012 -2.37598 8.09961 -2.39941 12.5l0.899414 8zM78.7998 189.2c-3.89551 -2.1748 -7.62207 -4.57227 -11.2002 -7.2002l35.3008 -35.9004c4.36133 2.17188 9.16016 3.79395 14.0996 4.7002zM63.5996 179.4
c-3.7207 -2.78223 -7.0625 -5.89355 -10.0996 -9.40039l34.9004 -34.5996c3.2168 3.18945 6.69531 6.00781 10.5 8.5zM50.2998 167.1c-2.89941 -3.2998 -5.7998 -6.69922 -8.59961 -10.5l35.7998 -35.8994c2.11035 4.12598 4.6875 7.93262 7.7002 11.3994zM39.2998 152.8
c-2.49414 -3.82227 -4.73926 -7.83984 -6.7002 -12l39.5 -39.7998c0.374023 5.3252 1.63574 10.4883 3.60059 15.2002zM30.5 136.5c-1.7998 -4.90039 -3.2998 -9.59961 -4.7002 -14.5l52.7002 -53.5c-3.96484 7.90234 -6.36621 16.8438 -6.7002 26.2002zM22.5996 93.5
c0.046875 -7.56934 1.05859 -14.8945 2.90039 -21.9004l55.4004 -55.6992v1.09961c0.0429688 5.14551 1.35156 10.0322 3.59961 14.2998zM27.9004 62.7998c9.59375 -28.6787 30.9805 -51.8564 58.5 -63.7998c-1.90527 2.74219 -3.35254 5.87402 -4.2002 9.2002z
M22.5996 99.7998l64.4004 -64.2002c2.76953 3.4707 6.08594 6.38965 9.90039 8.7002l-72.2002 72.5c-1.2793 -5.48047 -2.00293 -11.1543 -2.10059 -17zM275.9 151.6c32.5996 -0.0996094 32.6992 49.2002 0.199219 49.4004l-33.5996 0.0996094
c-4.91504 0.0224609 -8.90039 4.01855 -8.90039 8.93945v0.0605469l0.100586 47c0.0996094 40.5 38.5996 60.8008 66 54.9004c15.3994 -3.90039 30.2998 8.40039 30.2998 23.9004c0 12.0996 -8.7002 22.1992 -19.9004 24c-6.37305 1.50098 -12.9639 2.30078 -19.793 2.30078
c-0.135742 0 -0.271484 -0.000976562 -0.40625 -0.000976562c-0.143555 0 -0.277344 -0.00292969 -0.420898 -0.00292969c-57.9893 0 -105.081 -47.0303 -105.18 -104.997l-0.0996094 -56l-42.6006 0.0996094c-32.5996 0.100586 -32.6992 -49.2002 -0.0996094 -49.2998
l33.5996 -0.0996094c4.40039 0 8.90039 -4.5 8.90039 -9l-0.0996094 -47c-0.00585938 -30.8535 -25.0527 -55.9004 -55.9062 -55.9004h-0.194336c-9.39941 0 -9.39941 1.59961 -15.7002 1.59961c-13.458 -0.209961 -24.3447 -11.1289 -24.5 -24.5996
c0 -15.5 14.2002 -24.2002 19.9004 -24.2002c61.2998 -12.8994 125.5 33.6006 125.7 102.9l0.0996094 56zM299.4 151.9c5.48145 0.538086 10.9062 1.52637 16.0996 2.89941l-8.5 8.5c-1.78711 -4.29492 -4.37207 -8.14844 -7.59961 -11.3994zM320.4 156.1
c4.74121 1.31738 9.38574 3.12305 13.6992 5.30078l-27 27.1992c1.51855 -3.86914 2.37598 -8.09961 2.40039 -12.5l-0.900391 -8.09961zM338.4 163.5c4 2.2002 8.09961 4.7002 11.8994 7.2002l-36.2002 35.8994c-4.09961 -2.2998 -8.7998 -3.59961 -13.6992 -4.69922z
M353.9 173.3c3.55273 2.83594 6.87891 5.7998 10.0996 9l-34.9004 35c-3.18457 -3.22266 -6.66797 -6.04492 -10.5 -8.5zM367.1 185.6c3.0625 3.36523 5.89941 6.82812 8.60059 10.5l-35.7998 35.9004c-2.1582 -4.0957 -4.73145 -7.89746 -7.7002 -11.4004zM378.1 199.9
c2.53027 3.79688 4.77832 7.81738 6.7002 12l-39.5 39.7998c-0.374023 -5.3252 -1.63574 -10.4893 -3.59961 -15.2002zM391.6 230.8l-53.0996 53.4004c4.25977 -7.79688 6.82422 -16.7627 7.09961 -26.2002l41.3008 -41.5c1.7959 4.61523 3.39258 9.46387 4.69922 14.2998z
M392.6 236.4c1.25586 5.3623 2.04199 10.9189 2.30078 16.5996l-64.3008 64.7002c-2.61426 -3.74805 -5.95898 -6.85938 -9.89941 -9.2002z" />
    <glyph glyph-name="figma" unicode="&#xf799;" horiz-adv-x="384" 
d="M277 277.3h-85.4004v-256c-0.0273438 -47.082 -38.2617 -85.2998 -85.3506 -85.2998c-47.1055 0 -85.3496 38.2441 -85.3496 85.3496c0 47.1064 38.2441 85.3506 85.3496 85.3506h0.0507812c-47.1055 0 -85.3496 38.2441 -85.3496 85.3496
c0 47.1064 38.2441 85.3506 85.3496 85.3506c-47.0781 0 -85.2998 38.2217 -85.2998 85.2998s38.2217 85.2998 85.2998 85.2998h170.7c47.1055 0 85.3496 -38.2441 85.3496 -85.3496c0 -47.1064 -38.2441 -85.3506 -85.3496 -85.3506zM277 277.3
c47.0762 -0.00488281 85.2949 -38.2236 85.2998 -85.2998c0 -47.0781 -38.2217 -85.2998 -85.2998 -85.2998s-85.2998 38.2217 -85.2998 85.2998s38.2217 85.2998 85.2998 85.2998z" />
    <glyph glyph-name="intercom" unicode="&#xf7af;" 
d="M392 416c30.9004 0 56 -25.0996 56 -56v-336c0 -30.9004 -25.0996 -56 -56 -56h-336c-30.9004 0 -56 25.0996 -56 56v336c0 30.9004 25.0996 56 56 56h336zM283.7 333.9v-199.5c0 -19.8008 29.8994 -19.8008 29.8994 0v199.5c0 19.7998 -29.8994 19.7998 -29.8994 0z
M209.1 341.4v-216.5c0 -19.8008 29.9004 -19.8008 29.9004 0v216.5c0 19.7998 -29.9004 19.7998 -29.9004 0zM134.4 333.9v-199.5c0 -19.8008 29.8994 -19.8008 29.8994 0v199.5c0 19.7998 -29.8994 19.7998 -29.8994 0zM59.7002 304v-134.3
c0 -19.7998 29.8994 -19.7998 29.8994 0v134.3c0 19.7998 -29.8994 19.7998 -29.8994 0zM383.1 76.2002c14.9004 12.8994 -4.5 35.5996 -19.3994 22.7002c-63.2002 -53.9004 -213.4 -55.3008 -279.3 0c-15 12.7998 -34.4004 -9.90039 -19.4004 -22.7002
c76.4004 -65.4004 245.3 -63 318.1 0zM388.3 169.7v134.3c0 19.7998 -29.8994 19.7998 -29.8994 0v-134.3c0 -19.7998 29.8994 -19.7998 29.8994 0z" />
    <glyph glyph-name="invision" unicode="&#xf7b0;" 
d="M407.4 416c22.3994 0 40.5996 -18.2002 40.5996 -40.5996v-366.801c0 -22.3994 -18.2002 -40.5996 -40.5996 -40.5996h-366.801c-22.3994 0 -40.5996 18.2002 -40.5996 40.5996v366.801c0 22.3994 18.2002 40.5996 40.5996 40.5996h366.801zM176.1 302.4
c-0.599609 35.0996 -53.5996 34.7998 -53.6992 -0.400391c0 -15 12.1992 -27 27.0996 -27c4.2002 0.0996094 27 4 26.5996 27.4004zM332.8 71c23.7998 0 42.7002 15.2998 53.2002 52l-17.9004 6.7002c-14.2998 -39.5 -31.7998 -32.4004 -31.7998 -16.9004
c0.299805 8.10059 0.700195 7.7002 14.9004 58.7998c26.0996 85.8008 -61.2998 113.5 -101.8 38l8.89941 40.5h-68.7998l-9.7002 -35.5996h32.2998l-19.7998 -79.4004c-16.5 -36.6992 -57.3994 -44.0996 -57.3994 -23.1992c0.299805 11.2998 -0.700195 4.5 32.8994 138.199
h-76.3994l-9.7002 -35.5996h31.7998c-22.0996 -90.0996 -22.9004 -89.7998 -23 -104.1c0 -48.7002 63.0996 -56.1006 94.5996 -4.30078l-8.09961 -32.5h45.0996l25.8008 103.301c14.6992 59.6992 74 47.0996 59.8994 0.699219c-9.09961 -32.5996 -40.5996 -106.6 25 -106.6z
" />
    <glyph glyph-name="jira" unicode="&#xf7b1;" horiz-adv-x="496" 
d="M490 206.3c8 -7.89941 8 -20.7002 0 -28.5996c-225.8 -225 137.9 136.3 -241.5 -241.7c-180.7 180.1 -109.7 109.3 -242.5 241.6c-7.90039 8 -7.90039 20.8008 0 28.7002c0 0 77 76.7998 242.5 241.7c72.0996 -71.7998 168.6 -169 241.5 -241.7zM248.5 116.3l76 75.7002
l-76 75.7002l-76 -75.7002z" />
    <glyph glyph-name="mendeley" unicode="&#xf7b3;" horiz-adv-x="640" 
d="M624.6 122.8c23.1006 -22.7002 17.8008 -73.5 0 -88.2998c-36.1992 -38.9004 -100 -18.2002 -104.899 35.2002c-1 11.7002 1.09961 23 5.7002 33c47.2998 103.7 -185.9 106.1 -146.5 8.2002c0.0996094 -0.100586 0.199219 -0.200195 0.299805 -0.400391
c26.5996 -42.5996 -6.7002 -97.2998 -58.7998 -95.2002c-52 -2.2002 -85.6006 52.4004 -58.8008 95.2002c0.100586 0.200195 0.200195 0.299805 0.300781 0.400391c39.3994 97.8994 -193.801 95.5 -146.5 -8.2002c20.3994 -44.9004 -14.1006 -93.7002 -61.2002 -87.7998
c-61.9004 7.7998 -62.5 82.8994 -42.6006 102.6c16 16 31.8008 24.7998 53 22.5c43.3008 1 49.7002 34.9004 37.5 98.7998c-22.6992 57.5 14.5 131.601 87.4004 130.8c76.9004 -0.699219 82.7998 -82 130.9 -82c49.1992 0 53.5 81.3008 130.899 82
c72.5 0.700195 110.2 -73.2998 87.4004 -130.8c-12.2002 -63.8994 -5.7998 -97.7998 37.5 -98.7998c18.7002 2 36.0996 -4.7998 48.3994 -17.2002zM320.7 141.9c43.5996 0 62.7998 37.7998 62.7998 62.7998c0 34.7002 -28.0996 62.7998 -62.7998 62.7998h-0.600586
c-34.5996 0 -62.7998 -28.0996 -62.7998 -62.7998c0 -25.2998 19.4004 -62.7998 62.7998 -62.7998h0.600586z" />
    <glyph glyph-name="raspberry-pi" unicode="&#xf7bb;" horiz-adv-x="407" 
d="M372 215.5c28.7002 -17.2002 54.5996 -72.5996 14 -117.7c-2.59961 -14.0996 -7.09961 -24.2002 -11 -35.3994c-5.90039 -45.2002 -44.4004 -66.3008 -54.5996 -68.8008c-14.9004 -11.1992 -30.7002 -21.7998 -52.2002 -29.1992
c-20.2002 -20.6006 -42.1006 -28.4004 -64.2002 -28.4004h-1c-22 0 -44 7.7998 -64.2998 28.4004c-21.4004 7.39941 -37.2998 18 -52.2002 29.1992c-10.0996 2.5 -48.7002 23.6006 -54.5996 68.8008c-3.90039 11.1992 -8.40039 21.2998 -11 35.3994
c-40.5 45 -14.6006 100.5 14.1992 117.7l3.7002 6.5c-0.0996094 46.4004 21.4004 65.2998 46.5 79.7002c-7.59961 2 -15.3994 3.7002 -17.5996 13.2002c-13.1006 3.39941 -15.7998 9.39941 -17.1006 15.7998c-3.39941 2.2998 -14.7998 8.7002 -13.5996 19.7002
c-6.2998 4.39941 -9.90039 10.0996 -8.09961 18.0996c-6.90039 7.5 -8.7002 13.7002 -5.80078 19.4004c-8.2998 10.1992 -4.59961 15.5 -1.09961 20.8994c-6.2002 11.2002 -0.799805 23.2002 16.5 21.2002c6.90039 10.0996 21.9004 7.7998 24.2002 7.7998
c2.5 3.2998 6 6 16.5 4.7002c6.7998 6.09961 14.3994 5.09961 22.2998 2.09961c3.2002 2.5 6.09961 3.40039 8.7002 3.5c5 0.100586 9.2998 -2.89941 13.8994 -4.2998c11.3008 3.60059 13.8008 -1.39941 19.4004 -3.39941c12.2998 2.59961 16.0996 -3 22 -8.90039
l6.90039 0.0996094c18.5996 -10.7998 27.7998 -32.7998 31.0996 -44.0996c3.2998 11.2998 12.5 33.2998 31.0996 44.0996l6.90039 -0.0996094c5.90039 5.90039 9.7002 11.5 22 8.90039c5.5 2.09961 8.09961 7 19.4004 3.39941
c7.09961 2.2002 13.2998 8.10059 22.5996 0.799805c7.90039 2.90039 15.5 4 22.2998 -2.09961c10.5 1.2998 13.9004 -1.5 16.5 -4.7002c2.2998 0 17.2998 2.2998 24.2002 -7.7998c17.2998 2 22.7998 -10 16.5996 -21.2002c3.5 -5.2998 7.2002 -10.5996 -1.09961 -20.8994
c2.90039 -5.7002 1.09961 -11.9004 -5.7998 -19.4004c1.89941 -8 -1.7002 -13.7002 -8.10059 -18.0996c1.2002 -11 -10.1992 -17.4004 -13.5996 -19.7002c-1.2998 -6.40039 -4 -12.5 -17.0996 -15.7998c-2.2002 -9.60059 -10 -11.2002 -17.6006 -13.2002
c25.1006 -14.4004 46.6006 -33.2998 46.5 -79.7002zM349.8 223.5c1.5 48.7002 -36.3994 75.4004 -82.0996 67.9004c-16.7998 -2.80078 80.5996 -86.6006 82.0996 -67.9004zM306.8 130.4c24.5 15.7998 28.9004 51.5996 9.90039 80
c-19 28.3994 -54.2998 38.5996 -78.7998 22.7998s-28.9004 -51.6006 -9.90039 -80c19 -28.4004 54.2998 -38.6006 78.7998 -22.7998zM238.9 418.7c-16.6006 -15.9004 -40.1006 -55.9004 -5.80078 -71.7998c29 23.5 63.6006 40.6992 102 53.5
c-49.2998 -25.1006 -78 -45.3008 -93.6992 -62.6006c8.09961 -31.7002 50 -33.2002 65.3994 -32.2998c-3.09961 1.40039 -5.7998 3.09961 -6.7002 5.7998c3.80078 2.7002 17.5 0.299805 27 5.60059c-3.69922 0.699219 -5.39941 1.39941 -7.09961 4.09961
c9 2.90039 18.7002 5.2998 24.4004 10c-3.10059 0 -6 -0.599609 -10 2.09961c8.09961 4.30078 16.6992 7.7002 23.3994 14.2002c-4.2002 0.100586 -8.7002 0.100586 -10 1.60059c7.40039 4.5 13.6006 9.5 18.7998 15c-5.7998 -0.700195 -8.2998 -0.100586 -9.69922 0.899414
c5.59961 5.60059 12.5996 10.4004 16 17.2998c-4.40039 -1.5 -8.30078 -2.09961 -11.2002 0.100586c1.89941 4.2998 10 6.7002 14.7002 16.5996c-4.60059 -0.399414 -9.40039 -1 -10.4004 0c2.09961 8.5 5.7002 13.2002 9.2998 18.2002
c-9.7998 0.200195 -24.5996 0 -23.8994 0.799805l6 6.10059c-9.5 2.5 -19.3008 -0.400391 -26.4004 -2.60059c-3.2002 2.5 0 5.60059 3.90039 8.7998c-8.10059 -1 -15.5 -2.89941 -22.1006 -5.39941c-3.59961 3.09961 2.2998 6.2998 5.10059 9.39941
c-12.5 -2.2998 -17.8008 -5.59961 -23.1006 -8.89941c-3.7998 3.59961 -0.200195 6.7002 2.40039 9.7998c-9.40039 -3.5 -14.2998 -7.90039 -19.4004 -12.2998c-1.7998 2.2998 -4.39941 4 -1.2002 9.59961c-6.69922 -3.7998 -11.7998 -8.2998 -15.5 -13.2998
c-4.19922 2.59961 -2.5 6.09961 -2.5 9.40039c-7 -5.60059 -11.3994 -11.5 -16.7998 -17.3008c-1.09961 0.800781 -2.09961 3.40039 -2.89941 7.60059zM204.5 304.1c-27.2002 0.700195 -53.4004 -19.8994 -53.4004 -31.7998
c-0.0996094 -14.5996 21.5 -29.3994 53.6006 -29.7998c32.7998 -0.200195 53.7002 11.9004 53.7998 26.9004c0.0996094 16.8994 -29.7998 35 -54 34.6992zM81.5 316.9c9.59961 -5.2002 23.2002 -2.80078 27.2002 -5.60059
c-0.900391 -2.59961 -3.60059 -4.39941 -6.7002 -5.7998c15.4004 -0.900391 57.4004 0.5 65.4004 32.2998c-15.7002 17.2998 -44.4004 37.6006 -93.7002 62.6006c38.3994 -12.8008 73 -30 102 -53.5c34.0996 15.8994 10.5996 55.8994 -6 71.7998
c-0.900391 -4.2002 -1.7998 -6.7998 -2.90039 -7.60059c-5.39941 5.80078 -9.7998 11.7002 -16.7998 17.3008c0 -3.2002 1.59961 -6.80078 -2.5 -9.40039c-3.7002 5 -8.7998 9.5 -15.5 13.2998c3.2002 -5.59961 0.5 -7.2998 -1.2002 -9.59961
c-5.09961 4.39941 -10 8.89941 -19.3994 12.2998c2.59961 -3.09961 6.19922 -6.2002 2.39941 -9.7998c-5.2998 3.2998 -10.5996 6.59961 -23.0996 8.89941c2.7998 -3.09961 8.59961 -6.2998 5.09961 -9.39941c-6.7002 2.5 -14 4.2998 -22.0996 5.39941
c3.7998 -3.19922 7.09961 -6.2998 3.89941 -8.7998c-7.09961 2.2002 -16.8994 5.10059 -26.3994 2.60059l6 -6.10059c0.700195 -0.799805 -14.1006 -0.700195 -23.9004 -0.799805c3.5 -4.90039 7.2002 -9.7002 9.2998 -18.2002c-1 -1 -5.7998 -0.399414 -10.3994 0
c4.7002 -9.89941 12.7998 -12.3994 14.7002 -16.5996c-2.90039 -2.10059 -6.90039 -1.60059 -11.2002 -0.100586c3.2998 -6.89941 10.3994 -11.6992 16 -17.2998c-1.40039 -1 -3.90039 -1.59961 -9.7002 -0.899414c5.2002 -5.5 11.4004 -10.5 18.7998 -15
c-1.2998 -1.60059 -5.7998 -1.5 -10 -1.60059c6.7002 -6.5 15.2998 -9.89941 23.4004 -14.2002c-4 -2.7998 -6.90039 -2.09961 -10 -2.09961c5.7002 -4.7002 15.3994 -7.2002 24.3994 -10c-1.69922 -2.59961 -3.39941 -3.40039 -7.09961 -4.09961zM141.6 292.8
c-45.5996 7.60059 -83.5996 -19.2002 -82.0996 -67.8994c1.5 -18.6006 98.9004 65.0996 82.0996 67.8994zM38.2002 106c21.5996 -9.5 39.0996 105.3 12.5996 98.2998c-43.8994 -24.5996 -36.2998 -79.5 -12.5996 -98.2998zM129.2 7.7998
c14.0996 10.4004 6.39941 45.7002 -10.5 65.7002c-19.4004 22.2002 -44.6006 35.4004 -60.9004 25.5996c-10.8994 -8.19922 -12.8994 -36 2.60059 -63.3994c23 -32.6006 55.5 -35.7998 68.7998 -27.9004zM102.8 127.5c24.4004 -15.7998 59.7002 -5.59961 78.7998 22.7998
c19 28.4004 14.6006 64.2002 -9.89941 80s-59.7998 5.60059 -78.7998 -22.7998s-14.6006 -64.2002 9.89941 -80zM205 -48c28.4004 -0.5 57.7002 24.4004 57.2002 35.4004c-0.100586 11.3994 -32 19.8994 -55.7002 18.8994c-23.5 0.600586 -59.7002 -9.2998 -59.2998 -22
c-0.400391 -8.59961 28.3994 -33.5 57.7998 -32.2998zM263.9 76.9004v0.599609c-0.200195 29.5996 -26.8008 53.5996 -59.4004 53.4004c-32.5996 -0.200195 -59 -24.3008 -58.7998 -54v-0.600586c0.200195 -29.5996 26.7998 -53.5996 59.3994 -53.3994
c32.6006 0.199219 59 24.2998 58.8008 54zM346.1 34.2002c18.4004 23.2002 12.2002 62 1.7002 72.2998c-15.5996 11.9004 -38 -3.2998 -58.8994 -26.5996c-18.3008 -21.1006 -28.4004 -59.6006 -15.1006 -72c12.7002 -9.60059 47 -8.30078 72.2998 26.2998zM369 107.4
c23.7002 18.6992 31.2998 73.5996 -12.5996 98.2998c-26.4004 7 -8.90039 -107.7 12.5996 -98.2998z" />
    <glyph glyph-name="redhat" unicode="&#xf7bc;" horiz-adv-x="512" 
d="M341.52 162.59v-0.149414c33.6504 0 82.3408 6.93945 82.3408 47c0.219727 6.73926 0.859375 1.81934 -20.8799 96.2393c-4.62012 19.1504 -8.68066 27.8398 -42.3105 44.6504c-26.0898 13.3398 -82.9199 35.3701 -99.7295 35.3701
c-15.6602 0 -20.2002 -20.1699 -38.8701 -20.1699c-18 0 -31.3105 15.0596 -48.1201 15.0596c-16.1406 0 -26.6602 -11 -34.7803 -33.6201c-27.5 -77.5498 -26.2803 -74.2695 -26.1201 -78.2695c0 -24.7998 97.6406 -106.11 228.47 -106.11zM429.07 193.19
l-0.0703125 -0.0302734c4.65039 -22 4.65039 -24.3506 4.65039 -27.25c0 -37.6602 -42.3301 -58.5605 -98 -58.5605c-125.74 -0.0800781 -235.91 73.6504 -235.91 122.33v0.078125c0 6.96289 1.46289 13.6279 4.05957 19.6426
c-45.2402 -2.26074 -103.8 -10.3301 -103.8 -62.0303c0 -84.6699 200.63 -189 359.49 -189c121.79 0 152.51 55.0801 152.51 98.5801c0 34.21 -29.5898 73.0498 -82.9297 96.2402z" />
    <glyph glyph-name="sketch" unicode="&#xf7c6;" horiz-adv-x="512" 
d="M27.5 285.8l78.9004 105.8l-6.90039 -130.699h-90.5zM396.3 402.3l7.10059 -133.5l-135.7 147.2zM112.2 229.7l122.6 -239.7l-224.899 261.7h91.0996zM114.2 260.9l142.1 154.1l60.4004 -65.5996l81.5 -88.5h-284zM411.5 251.8v-0.0996094h90.9004l-224.801 -261.7z
M415.4 379l87.8994 -118.1h-90.2998l-6.09961 113.399l-0.900391 17.2998zM113.5 354.5l2.59961 47.7998l128.601 13.7002l-135.8 -147.1zM401.2 251.8l-144.9 -283.8l-102.7 200.9l-42.3994 82.8994h290z" />
    <glyph glyph-name="sourcetree" unicode="&#xf7d3;" 
d="M427.2 245c-0.104492 -90.2461 -59.1543 -166.747 -140.7 -193.1v-101.601c0 -7.89258 -6.40723 -14.2998 -14.2998 -14.2998h-96.4004c-7.89258 0 -14.2998 6.40723 -14.2998 14.2998v101.7c-81.501 26.3281 -140.5 102.814 -140.5 193.03v0.370117
c0.200195 112 91.0996 202.8 203.2 202.6c112.1 0 203 -90.9004 203 -203zM155.6 245c0 -91 137.2 -89.9004 137.301 0c0 90.7998 -137.301 90.7998 -137.301 0z" />
    <glyph glyph-name="suse" unicode="&#xf7d6;" horiz-adv-x="640" 
d="M471.08 345.34c0 1 1.01953 0.759766 0.919922 0.660156c4.2002 -0.599609 92.2002 -13.7002 129.2 -35.2998c12.0996 -6.90039 20.7002 -21.5 34.5 -69.6006c0.700195 -2.7998 -2.7998 -5.09961 -3.60059 -5.69922
c-26.8994 -18.8008 -56.7998 -36.6006 -145.199 21.6992c11.0996 -26.6992 10.6992 -25.0996 11 -25.5c5.39941 -2.7998 56.2998 -28.6992 81.5996 -28.1992c20.4004 0.399414 42.2002 10.3994 50.9004 15.5996c0 0 4.5 2.7002 3.19922 -2.40039
c-0.5 -1.89941 -3.2998 -14.5996 -7 -17.6992c-1 -1 -36.5996 -28.4004 -103.1 -28c-42.7002 1 -76.7998 16.3994 -82.4004 -17.4004c-2.7998 -17.0996 6.10059 -37.5 18.9004 -55.7998h-48.5996c-15.9004 28.3994 -23.1006 68.2998 -79.8008 68.2998
c-51.5996 0 -48.3994 -50.7002 -42.6992 -68.2998h-45.9004c-18.7998 68.7998 -69.2002 98.5996 -102.4 104.3c-74.2998 12.7998 -113 -49.2002 -87 -98.4004c23.1006 -43.5996 81.4004 -44.0996 99.7002 -20.3994c19.2002 25 3.7998 62.8994 -28.5 65.7002
c-12.2998 1.09961 -25.2998 -4.60059 -25.5 -16.9004v-0.0595703c0 -10.9004 10 -13.8008 12 -14c7.2998 0.399414 8.90039 1.89941 11.7998 2.39941c5.2002 0.900391 16.8008 -1.7998 16.8008 -13.8994c0 -8.40039 -6.80078 -13.1006 -13.3008 -14.9004
c-4.94922 -1.71484 -10.2754 -2.67285 -15.7998 -2.7002c-17.2002 0 -41.2002 14.7998 -41.5 42.6006c-0.200195 15.6992 7.7002 30 21.6006 39.1992c15.8994 10.5 43.5996 14.1006 69.1992 -1.59961c31.5 -19.2998 39.7002 -57.0996 31.5 -82.9004
c-11.8994 -37.2998 -45.5996 -57.1992 -90 -53.2998c-31.5 2.7998 -60.6992 19.4004 -78.0996 44.4004c-7.45117 10.6377 -13.1357 22.7852 -16.5 35.7002c-7.12012 28.0596 0 58.0596 5.48047 71.3994c25.6992 63.6006 80.1992 97.2998 99.5996 109.7
c100.2 61.5996 171.1 59.0996 223 57.2998c61.2998 -2.2002 126.6 -23.2998 135.7 -26.2998c0 2 0.299805 20.2998 0.299805 20.2998zM531.48 272.54c-1.10059 -33.5 39.0996 -51.5996 63.2998 -28.9004c24.3994 22.9004 9 64 -24.4004 65.2002
c-0.464844 0.0175781 -0.910156 0.00585938 -1.37988 0.00585938c-20.3057 0 -36.8682 -16.1572 -37.5195 -36.3057zM570.08 297.84c14.0928 -0.414062 25.4199 -11.9697 25.4199 -26.1631c0 -0.34668 -0.00683594 -0.692383 -0.0195312 -1.03711
c-0.505859 -14.0547 -12.0898 -25.3252 -26.2676 -25.3252c-14.499 0 -26.2695 11.7705 -26.2695 26.2695s11.7705 26.2705 26.2695 26.2705c0.290039 0 0.579102 -0.00488281 0.867188 -0.0146484zM574.38 269.04c15.4004 0 15.4004 15.5996 0 15.5996
c-15.3994 0 -15.3994 -15.5996 0 -15.5996z" />
    <glyph glyph-name="ubuntu" unicode="&#xf7df;" horiz-adv-x="496" 
d="M248 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM300.7 347c-8.7998 -15.2002 -3.60059 -34.7002 11.7002 -43.5996c15.1992 -8.80078 34.6992 -3.5 43.5 11.6992c8.7998 15.3008 3.59961 34.8008 -11.7002 43.6006
c-15.2002 8.7998 -34.7002 3.5 -43.5 -11.7002zM87.4004 160.1c17.5996 0 31.8994 14.3008 31.8994 31.9004s-14.2998 31.9004 -31.8994 31.9004c-17.6006 0 -31.9004 -14.3008 -31.9004 -31.9004s14.2998 -31.9004 31.9004 -31.9004zM115.5 157
c8.7002 -32.7002 29.0996 -60.7002 56.5 -79l23.7002 39.5996c-51.5 36.3008 -51.5 112.5 0 148.801l-23.7002 39.5996c-27.4004 -18.4004 -47.9004 -46.2998 -56.5 -79.0996c22.4004 -18 22.2998 -52 0 -69.9004zM344.2 25.2998
c15.2998 8.7998 20.5 28.2998 11.7002 43.6006c-8.80078 15.2998 -28.3008 20.5 -43.5 11.6992c-15.3008 -8.7998 -20.5 -28.2998 -11.7002 -43.5996s28.2002 -20.5 43.5 -11.7002zM344.5 94.7998c23 22.9004 38 53.9004 40.2998 88.4004l-46.0996 0.700195
c-5.5 -62.7002 -71.9004 -100.9 -128.9 -74.4004l-22.5 -40.2998c47.7998 -23.7002 91.5 -10.7998 96.7002 -9.40039c4.40039 28.4004 33.7998 45.2998 60.5 35zM338.6 200.1l46 0.600586c-2.19922 34.5996 -17.0996 65.5996 -40.1992 88.5
c-26.7002 -10.2998 -56.1006 6.7002 -60.5 35c-5.2002 1.39941 -48.8008 14.2998 -96.7002 -9.40039l22.5 -40.2998c57.5996 26.7998 123.5 -12.4004 128.899 -74.4004z" />
    <glyph glyph-name="ups" unicode="&#xf7e0;" horiz-adv-x="384" 
d="M103.2 145v123h32.5996v-141.6c-17.7002 -12.1006 -97.8994 -35.9004 -97.8994 39v102.6h32.6992v-104c0 -32.0996 27.4004 -22.5996 32.6006 -19zM4 373.18c93.5996 49.6006 259.1 61.6006 375.4 0v-220.899c0 -103.9 -75.3008 -135.2 -187.7 -184.101
c-112.8 48.9004 -187.7 80.4004 -187.7 184.101v220.899zM362.1 152.28v216.2c-109.3 10.1992 -238.6 4 -340.899 -89.8008v-126.399c0 -86.6006 53 -113.5 170.5 -165.3c117.2 51.6992 170.399 78.6992 170.399 165.3zM152.5 259.68
c23.7002 15.3203 104.4 31.8008 104.4 -65.5996c0 -75.9004 -47.3008 -85.7998 -71.7002 -78.5v-68.7002h-32.7002v212.8zM185.2 142.38c2 -0.799805 38.3994 -16.8994 38.3994 51c0 62 -30 53.5 -38.3994 49.2998v-100.3zM264.3 228.78
c-0.200195 41.0996 51.2002 53.8994 79.7002 31.8994v-28.3994c-17.9004 18.2998 -47.9004 18.0996 -48.5 -2.2002c-0.700195 -26.5996 55.0996 -21.7002 53.4004 -73.2002c-1.30078 -41.5996 -47 -55 -83.2002 -33.5v30.1006
c20.3994 -18.1006 51.3994 -18.6006 50.7998 4.89941c-0.599609 27.9004 -52.0996 23.1006 -52.2002 70.4004z" />
    <glyph glyph-name="usps" unicode="&#xf7e1;" horiz-adv-x="576" 
d="M460.3 206.3c-1.39941 -2.2002 -4.2998 -4.39941 -3.7998 0.100586c2.90039 11.5996 13.9004 30.5 4.40039 32c-17.8008 3.09961 -88.1006 -4.5 -88.1006 0c0 2.39941 26.7002 3.09961 37.9004 8.69922c9.39941 9.40039 10.7998 8 10.8994 8h27
c26.9004 0 37.5 -7.5 11.7002 -48.7998zM348.2 183.7c-62.2998 -21.2002 -124.8 -54.2002 -321.2 -151.5l52.4004 245.5c185 0 335.199 5.59961 337.899 -22.6006h-196.6l30.7002 -93.2998c35 16.7998 120.899 51.7002 172.6 53.9004
c21.7998 0.799805 30.5996 -2.90039 26.2002 -5.7998c-4.7002 -2.30078 -38 -4.90039 -102 -26.2002zM94.7002 352h454.3l-67.7002 -319.7h-423.1s402 157.3 406.399 160.2c0 0 35.7002 48 14.6006 67.7002c-6.5 6.59961 -16 6.59961 -52.4004 6.59961
c-2.09961 19.5 -78.7998 31.5 -332.1 85.2002z" />
    <glyph glyph-name="yarn" unicode="&#xf7e3;" horiz-adv-x="496" 
d="M393.9 102.8c-39 -9.2998 -48.4004 -32.0996 -104 -47.3994c0 0 -2.7002 -4 -10.4004 -5.80078c-13.4004 -3.2998 -63.9004 -6 -68.5 -6.09961c-12.4004 -0.0996094 -19.9004 3.2002 -22 8.2002c-6.40039 15.2998 9.2002 22 9.2002 22
c-8.10059 5 -9 9.89941 -9.7998 8.09961c-2.40039 -5.7998 -3.60059 -20.0996 -10.1006 -26.5c-8.7998 -8.89941 -25.5 -5.89941 -35.2998 -0.799805c-10.7998 5.7002 0.799805 19.2002 0.799805 19.2002s-5.7998 -3.40039 -10.5 3.59961
c-6 9.2998 -17.0996 37.2998 11.5 62c-1.2998 10.1006 -4.59961 53.7002 40.6006 85.6006c0 0 -20.6006 22.7998 -12.9004 43.2998c5 13.3994 7 13.2998 8.59961 13.8994c5.7002 2.2002 11.3008 4.60059 15.4004 9.10059c20.5996 22.2002 46.7998 18 46.7998 18
s12.4004 37.7998 23.9004 30.3994c3.5 -2.2998 16.2998 -30.5996 16.2998 -30.5996s13.5996 7.90039 15.0996 5c8.2002 -16 9.2002 -46.5 5.60059 -65.0996c-6.10059 -30.6006 -21.4004 -47.1006 -27.6006 -57.5c-1.39941 -2.40039 16.5 -10 27.8008 -41.3008
c10.3994 -28.5996 1.09961 -52.6992 2.7998 -55.2998c0.799805 -1.39941 13.7002 -0.799805 36.3994 13.2002c12.8008 7.90039 28.1006 16.9004 45.4004 17c16.7002 0.5 17.5996 -19.2002 4.90039 -22.2002zM496 192c0 -136.9 -111.1 -248 -248 -248s-248 111.1 -248 248
s111.1 248 248 248s248 -111.1 248 -248zM416.7 116.8c-1.7002 13.6006 -13.2002 23 -28 22.7998c-22 -0.299805 -40.5 -11.6992 -52.7998 -19.1992c-4.80078 -3 -8.90039 -5.2002 -12.4004 -6.80078c3.09961 44.5 -22.5 73.1006 -28.7002 79.4004
c7.7998 11.2998 18.4004 27.7998 23.4004 53.2002c4.2998 21.7002 3 55.5 -6.90039 74.5c-1.59961 3.09961 -7.39941 11.2002 -21 7.39941c-9.7002 20 -13 22.1006 -15.5996 23.8008c-1.10059 0.699219 -23.6006 16.3994 -41.4004 -28
c-12.2002 -0.900391 -31.2998 -5.30078 -47.5 -22.8008c-2 -2.19922 -5.89941 -3.7998 -10.0996 -5.39941h0.0996094c-8.39941 -3 -12.2998 -9.90039 -16.8994 -22.2998c-6.5 -17.4004 0.199219 -34.6006 6.7998 -45.7002c-17.7998 -15.9004 -37 -39.7998 -35.7002 -82.5
c-34 -36 -11.7998 -73 -5.59961 -79.6006c-1.60059 -11.0996 3.69922 -19.3994 12 -23.7998c12.5996 -6.7002 30.2998 -9.59961 43.8994 -2.7998c4.90039 -5.2002 13.7998 -10.0996 30 -10.0996c6.7998 0 58 2.89941 72.6006 6.5c6.7998 1.59961 11.5 4.5 14.5996 7.09961
c9.7998 3.09961 36.7998 12.2998 62.2002 28.7002c18 11.7002 24.2002 14.2002 37.5996 17.3994c12.9004 3.2002 21 15.1006 19.4004 28.2002z" />
    <glyph glyph-name="airbnb" unicode="&#xf834;" 
d="M224 74.8799h0.0595703c24.71 31.1797 39.5508 58.9297 45 83.1797c22.5508 88 -112.609 88 -90.0596 0c4.91992 -23.75 19.7598 -51.5098 45 -83.1797zM362.15 1.65039c35.6396 15.3496 50.1797 53.5693 37.0098 86.6396
c-25.4902 61.6104 -78.8398 168.47 -114.84 239.09c-16.9707 33.9297 -28.0303 59.8701 -60.3701 59.8701c-33.8203 0 -43.6299 -27.3301 -59.3799 -57.4004c-4.15039 -10.3799 -100.771 -202.399 -115.87 -241.56c-17.8105 -50.0303 21.2998 -98.5205 71.2998 -91.0898
c24.5996 2.22949 52.6201 18.8701 85.1504 54.9199c-29.2002 37.1104 -47.5 70.3096 -54.4307 99.5c-11.8799 53.9902 18.3604 100.5 73.2803 100.5c64.96 0 122.75 -69.9297 18.8496 -200c35.6309 -39.5898 77.2402 -68.7803 119.301 -50.4697zM409.15 137.77
c0 -0.679688 16.8496 -35.6895 16.8301 -39.5791c25.2393 -69.3301 -26.7207 -130.24 -89.6104 -130.19c-11.1104 0 -53.6904 -1.37988 -112.37 62.4004c-51.7598 -56.3408 -90.6602 -62.4004 -112.37 -62.4004c-62.8896 0 -114.85 60.8604 -89.6299 130.19
c0.889648 2.61914 11.1797 32.71 117.34 245.02c19.79 41.1201 39.1406 72.79 84.6602 72.79c49.1299 0 56.2695 -3.92969 185.15 -278.23z" />
    <glyph glyph-name="battle-net" unicode="&#xf835;" horiz-adv-x="512" 
d="M448.61 222.38c60.75 -36.25 71.9893 -73.8096 57.3193 -93.6895c-4.70996 -6.88086 -25.1797 -36.2402 -148 -31.6406c-21.8193 -30.3994 -45.25 -53.2695 -67.4697 -69.2695c28.54 -53.7803 54.2998 -85.0303 62.54 -91.7803c0 0 -3.44043 0.160156 -8.58008 3.37012
c-3.2627 1.95117 -6.17871 4.31836 -8.75 7.08984c-15.6299 16.1797 -35.5195 41.9404 -55.7002 74.1201c-43.9502 -28.1104 -81.1299 -29.0996 -88.4395 -9.4502c-4.83984 10.8301 1.5293 26.5 9.05957 39.3398c-31.3203 -17.5098 -61.7002 -26.8496 -86.7002 -21.1396
c-6.79004 1.54004 -17.6299 5.50977 -23.1992 18.2598c-4.52051 9.53027 -6.02051 24.2598 -0.150391 47.1406c9.07031 35.3398 37.5801 82.2998 47.3096 97.6992c3.75 -8.62988 -20.7793 40.1904 -26 93.1904c-89.1592 0 -110.56 -8.83984 -111.56 -9.21973
c1.54004 2.44922 7.86035 7.26953 17.7598 9.71973c22 5.47949 54.6406 9.84961 93 11.2295c-2.38965 52.0703 15.3398 84.7705 36 81.29h0.180664c11.3291 -1.2998 21.2598 -13.5801 28.5 -25.9297c0.669922 35.2002 7.7998 65.54 25 84.0703
c4.72949 5.14941 13.5693 12.5498 27.3994 11h0.0498047c10.5205 -0.850586 24 -6.91992 40.8398 -23.4707c25.6006 -25.0693 51.54 -71.9893 60.4805 -88.9297c37.25 -3.7002 68.7695 -12.5801 93.7695 -23.7998c32.3506 51.5898 46.4805 89.5303 48.2002 100.05
c0.640625 -1.25 2.93066 -8.41992 -0.450195 -20.25c-6.22949 -21.6201 -18.5791 -51.7197 -36.3398 -85.2998c45.79 -23.7305 65.3203 -55.0098 52.8506 -71.3301c-3.35059 -4.94043 -12.0498 -12.5498 -38.9199 -12.3701zM370.76 116.16
c70.4102 4.37988 79.6504 20.5703 78.5098 33.5c-1.87988 21.25 -21.1992 41.2598 -49.0596 58.8301c0.889648 -24.5605 -5.63965 -54.6201 -29.4502 -92.3301zM216.9 60.3096c-19.04 -30.46 9.19922 -39.5596 49.7998 -17.6992
c-7 12.0898 -13.9199 24.8594 -20.6006 38.1895c-9.66992 -7.37012 -19.4395 -14.2598 -29.1992 -20.4902zM431.9 231.66c36.2598 -1.23047 29.4199 27.8496 -9.64062 51.9502c-7.22559 -12.5537 -14.7959 -24.8359 -22.7402 -36.9004
c11.2207 -4.70996 22.0908 -9.70996 32.3809 -15.0498zM279.18 50c28.3799 18.2002 60.1689 48.1201 84.7695 85.4297c18.46 27.96 26.1494 56.0205 25.4102 79.5703c-30.5801 17.3203 -89.3604 42.7197 -167.23 57.21c0.350586 18.4805 2.08984 19.8799 2.16016 20.3301
c13.2168 -1.61523 26.4307 -3.64844 39.3896 -6.0498c39.375 -7.36328 78.5059 -18.1924 115.34 -31.71c-15.6191 33.1494 -41.4092 47.2197 -41.5195 47.2197c1.59961 0.160156 28.1299 -6 48.8604 -43.7197c8.42676 11.2061 16.2031 22.0293 23.3301 32.4697
c-29.96 15.46 -71.75 28.04 -116.32 30.71c-33.4502 1.99023 -61.6299 -5.38965 -81.6299 -17.8096c0.240234 -35.2607 7.66992 -98.96 34 -173.431c-16.8301 -9.12988 -17.7402 -7.87012 -18.6699 -8.25c-20.2715 48.0654 -35.623 99.999 -44.6699 152.84
c-21.0908 -30.3994 -20.1406 -59.5 -20.1406 -59.5693c-0.919922 1.22949 -8.81934 27.4297 13.4707 64.2295c-13.5801 1.70996 -26.5508 2.9707 -38.8506 3.87988c1.57031 -33.6797 11.5703 -76.1494 31.5703 -116.069c14.8701 -29.71 35.1201 -50.3105 55.71 -61.4902
c30.4102 17.9199 81.0498 55.6504 132.75 115.92c14.9697 -9 16.1494 -11.71 16.5098 -12c-7.91309 -10.5332 -16.2227 -20.9033 -24.9287 -31.1104c-26.1514 -30.5225 -54.2061 -58.2285 -85.0605 -84c37.5303 -3.38965 62.5303 12.1807 62.5303 12.25
c-0.860352 -1.67969 -20.0303 -21.6797 -63.2803 -20.4092c5.5 -12.9404 10.9902 -25.0908 16.5 -36.4404zM306.579 337c-1.58008 2.4502 -39.5801 58.8496 -56.4805 54.6104c-16.8994 1.09961 -36.21 -22.9805 -38.21 -75.2803
c21.1104 13.2402 50.1299 22.3301 94.6904 20.6699zM175.929 333.9c-3.7998 6.68945 -8.66992 12.4795 -14.4297 13.5693h-0.0898438c-24.79 1.41016 -24.75 -52.8301 -24.6699 -49.5898c13.6602 -0.00976562 27.8496 -0.410156 42.3994 -1.25977
c-1.62012 12.6602 -2.72949 25.1699 -3.20996 37.2803zM147.869 171.9c-30.7998 -61.5098 -19.8701 -76.6104 -19.6699 -76.8203c7.38965 -15.4902 38.1299 -20.25 84.9199 4.50977c-21.9502 11.7402 -44.4902 32.6104 -65.25 72.3105zM357.929 97.0996z" />
    <glyph glyph-name="bootstrap" unicode="&#xf836;" 
d="M292.3 136.07c0 -42.4102 -39.7197 -41.4307 -43.9199 -41.4307h-80.8896v81.6904h80.8896c42.5605 0 43.9199 -31.9004 43.9199 -40.2598zM242.15 209.2h-74.6602v72.1797h74.6602c34.9297 0 38.4395 -20.3496 38.4395 -35.8701
c0 -37.3096 -37.7695 -36.3096 -38.4395 -36.3096zM448 341.33v-298.66c-0.121094 -41.1553 -33.5146 -74.5488 -74.6699 -74.6699h-298.66c-41.1553 0.121094 -74.5488 33.5146 -74.6699 74.6699v298.66c0.121094 41.1553 33.5146 74.5488 74.6699 74.6699h298.66
c41.1553 -0.121094 74.5488 -33.5146 74.6699 -74.6699zM338.05 130.14c0 21.5703 -6.64941 58.29 -49.0498 67.3506v0.729492c22.9102 9.78027 37.3398 28.25 37.3398 55.6406c0 7 2 64.7793 -77.5996 64.7793h-127v-261.33c128.229 0 139.87 -1.67969 163.6 5.70996
c14.21 4.4209 52.71 17.9805 52.71 67.1201z" />
    <glyph glyph-name="buffer" unicode="&#xf837;" 
d="M427.84 67.3301l-196.5 -97.8203c-2.24707 -0.963867 -4.72266 -1.49805 -7.32129 -1.49805s-5.10156 0.53418 -7.34863 1.49805l-196.51 97.8203c-4 2 -4 5.28027 0 7.29004l47.0596 23.3799c2.25098 0.964844 4.72949 1.49805 7.33203 1.49805
c2.60156 0 5.10742 -0.533203 7.3584 -1.49805l134.76 -67c2.24609 -0.969727 4.72168 -1.50684 7.32129 -1.50684s5.10254 0.537109 7.34863 1.50684l134.76 67c2.24902 0.964844 4.72656 1.49902 7.32715 1.49902s5.10449 -0.53418 7.35352 -1.49902l47.0596 -23.4297
c4.0498 -1.95996 4.0498 -5.24023 0 -7.24023zM427.84 203.86c4.0498 -2.01074 4.0498 -5.29004 0 -7.31055l-196.5 -97.7998c-2.24707 -0.964844 -4.74902 -1.49902 -7.34863 -1.49902c-2.59863 0 -5.07422 0.53418 -7.32129 1.49902l-196.51 97.7998
c-4 2.02051 -4 5.31055 0 7.31055l47.0596 23.4297c2.25098 0.964844 4.75684 1.49805 7.3584 1.49805c2.60254 0 5.08105 -0.533203 7.33203 -1.49805l134.76 -67.0801c2.24902 -0.959961 4.75 -1.49121 7.34863 -1.49121c2.59766 0 5.07227 0.53125 7.32129 1.49121
l134.76 67.0801c2.24902 0.964844 4.75293 1.49902 7.35352 1.49902s5.07812 -0.53418 7.32715 -1.49902zM20.1602 317.58c-4.0498 1.86035 -4.0498 4.88965 0 6.74023l196.5 90.2793c2.2666 0.900391 4.76074 1.39551 7.3457 1.39551
c2.58594 0 5.05762 -0.495117 7.32422 -1.39551l196.51 -90.2793c4 -1.85059 4 -4.87988 0 -6.74023l-196.51 -90.29c-2.26953 -0.890625 -4.76172 -1.37988 -7.3457 -1.37988s-5.05469 0.489258 -7.32422 1.37988z" />
    <glyph glyph-name="chromecast" unicode="&#xf838;" horiz-adv-x="512" 
d="M447.8 384c23.6006 0 42.9004 -19.0996 42.9004 -42.7002v-298.6c0 -23.6006 -19.1006 -42.7002 -42.7002 -42.7002h-149.4v42.7002h149.2v298.6h-383.8v-63.8994h-42.7002v63.8994c0 23.6006 19.1006 42.7002 42.7002 42.7002h383.8zM21.2998 64.4004
c35.2998 0 63.9004 -28.6006 63.9004 -63.9004h-63.9004v63.9004v0zM21.2998 149.4c82.4004 -0.100586 149.4 -67 149.3 -149.4h-42.6992c0 58.9004 -47.7002 107 -106.601 107v42.4004zM213.4 0c-0.100586 106 -86.1006 192.4 -192.101 192.2v42.3994
c129.5 -0.299805 234.3 -105.1 234.8 -234.6h-42.6992z" />
    <glyph glyph-name="evernote" unicode="&#xf839;" horiz-adv-x="384" 
d="M120.82 315.79c1.59961 -22.3096 -17.5508 -21.5898 -21.6104 -21.5898c-68.9297 0 -73.6396 1 -83.5801 -3.33984c-0.55957 -0.220703 -0.740234 0 -0.370117 0.370117l108.53 110.319c0.379883 0.370117 0.599609 0.219727 0.379883 -0.370117
c-4.34961 -9.98926 -3.34961 -15.0898 -3.34961 -85.3896zM199.82 7.79004c-14.6807 37.0801 13 76.9297 52.5195 76.6201c17.4902 0 22.6006 -23.21 7.9502 -31.4199c-6.19043 -3.2998 -24.9502 -1.74023 -25.1396 -19.2002
c-0.0507812 -17.0898 19.6699 -25 31.1992 -24.8896h0.0107422c25.1895 0 45.6396 20.4502 45.6396 45.6396v0.00976562v0.0800781c0 11.6299 -7.79004 47.2197 -47.54 55.3398c-7.71973 1.54004 -65 6.35059 -68.3496 50.5205
c-3.74023 -16.9307 -17.4004 -63.4902 -43.1104 -69.0898c-8.74023 -1.94043 -69.6797 -7.64062 -112.92 36.7695c0 0 -18.5703 15.2305 -28.2305 57.9502c-3.37988 15.75 -9.2793 39.7002 -11.1396 62c0 18 11.1396 30.4502 25.0703 32.2002c81 0 90 -2.32031 101 7.7998
c9.81934 9.24023 7.7998 15.5 7.7998 102.78c1 8.2998 7.79004 30.8096 53.4102 24.1396c6 -0.860352 31.9102 -4.17969 37.4795 -30.6396l64.2607 -11.1504c20.4297 -3.70996 70.9395 -7 80.5996 -57.9404c22.6602 -121.09 8.91016 -238.46 7.7998 -238.46
c-15.9795 -114.38 -111.07 -108.85 -111.07 -108.85c-18.9492 0.230469 -54.25 9.40039 -67.2695 39.8301zM280.76 212.63c-1 -1.91992 -2.2002 -6 0.850586 -7c14.0898 -4.92969 39.75 -6.83984 45.8799 -5.53027c3.10938 0.25 3.0498 4.43066 2.47949 6.65039
c-3.5293 21.8496 -40.8301 26.5 -49.2393 5.91992z" />
    <glyph glyph-name="itch-io" unicode="&#xf83a;" horiz-adv-x="512" 
d="M71.9199 413.23c19.2197 1.66992 114.32 2.76953 184.08 2.76953s116.56 -0.400391 184 -2.73047c21.7197 -12.9297 64.5195 -62.0996 64.9199 -75v-21.3398c0 -27.0596 -25.25 -50.8398 -48.25 -50.8398c-27.54 0 -50.54 22.8799 -50.54 50
c0 -27.1494 -22.2295 -50 -49.7598 -50s-49 22.8799 -49 50c0 -27.1494 -23.5898 -50 -51.1602 -50h-0.5c-27.5703 0 -51.1602 22.8799 -51.1602 50c0 -27.1494 -21.4199 -50 -49 -50s-49.7598 22.8799 -49.7598 50c0 -27.1494 -22.9697 -50 -50.54 -50
c-22.96 0 -48.25 23.7803 -48.25 50.8398v21.3398c0.400391 12.8906 43.2002 62.0605 64.9199 74.9609zM204.24 278.84c9.91797 -17.3369 28.5586 -28.9785 49.9453 -28.9785c0.614258 0 1.22559 0.00976562 1.83398 0.0283203c28.7109 0 44.6602 16.4502 51.7607 28.9404
c22 -38.3398 77.8496 -38.7598 99.8496 -0.240234c13.1201 -23.0596 43.0801 -32.0996 56 -27.6602c3.57031 -37.1494 13.9004 -236.88 -17.75 -269.149c-77.6797 -18.1201 -299.76 -18.6699 -379.76 0c-31.4004 32.0195 -21.6006 229 -17.7305 269.149
c12.8301 -4.41016 42.8301 4.52051 56 27.6602c21.9502 -38.46 77.8506 -38.1494 99.8506 0.25zM162.66 225.07l-0.0205078 -0.0703125c-52.3193 0 -65.21 -77.4502 -83.8799 -144.45c-17.2598 -62.1494 5.52051 -63.6699 33.9404 -63.7295
c42.1494 1.56934 65.4902 32.1797 65.4902 62.79c53.6191 -8.79004 116.3 -6.43066 155.55 0c0 -30.6104 23.3398 -61.2207 65.4902 -62.79c28.4297 0.0595703 51.21 1.58008 33.9492 63.7295c-18.6494 66.9199 -31.54 144.45 -83.8701 144.45
c-16.46 0 -31.0898 0 -49.25 -19.71c-14.6436 1.48535 -28.6113 2.24609 -43.6445 2.24609c-15.0342 0 -29.8906 -0.760742 -44.5352 -2.24609c-18.1299 19.7803 -32.75 19.7803 -49.2197 19.7803zM256 177.21l-0.0595703 -0.00976562s44.3496 -40.7598 52.3496 -55.2402
l-29 1.16992v-25.2803c0 -1.15918 -11.6602 -0.699219 -23.3096 -0.15918c-1.99023 0 -23.3301 -1.39062 -23.3301 0.15918v25.3203l-29 -1.16992c7.96973 14.4404 52.3496 55.21 52.3496 55.21z" />
    <glyph glyph-name="salesforce" unicode="&#xf83b;" horiz-adv-x="640" 
d="M248.89 202.36h-26.3496c0.69043 5.15918 3.32031 14.1201 13.6396 14.1201c6.75 0 11.9707 -3.82031 12.71 -14.1201zM385.55 216.24c0.450195 0 14.1104 1.75977 14.1104 -20c0 -6.45996 -1.11035 -20 -14.1104 -20c-0.479492 0 -14.1094 -1.77051 -14.1094 20
c0 21.7695 13.6396 20 14.1094 20zM142.33 192.48c4.2002 3.60938 15.6104 2.71973 20.9297 1.64941v-16.9395c-5.85938 -1.1709 -16.2295 -2.75 -20.9297 0.949219c-1.20996 1 -3.29004 2.27051 -3.29004 7.05078
c-0.00976562 0.166992 -0.0205078 0.325195 -0.0205078 0.495117c0 2.75684 1.29492 5.21387 3.31055 6.79492zM640 216c0 -87.5801 -80 -154.39 -165.36 -136.43c-18.3701 -33 -70.7295 -70.75 -132.199 -41.6299c-41.1602 -96.0508 -177.891 -92.1807 -213.811 5.16992
c-119.72 -23.8906 -178.82 138.37 -75.2695 199.279c-34.75 79.4307 22.6396 173.61 114.31 173.61c40.1748 -0.0253906 75.8613 -19.0605 98.5605 -48.7002c20.6992 21.4004 49.3994 34.8105 81.1494 34.8105c42.3398 0 79 -23.5205 98.7998 -58.5703
c92.8203 40.6797 193.82 -28.2305 193.82 -127.54zM120.45 184.2c0 11.7598 -11.6904 15.1699 -17.8701 17.1699c-5.27051 2.11035 -13.4102 3.50977 -13.4102 8.93945c0 9.45996 17 6.66016 25.1699 2.12012c0 0 1.16992 -0.709961 1.64062 0.470703
c0.239258 0.699219 2.35938 6.58008 2.58984 7.29004c0.0341797 0.108398 0.0527344 0.223633 0.0527344 0.34375c0 0.492188 -0.313477 0.911133 -0.75293 1.06543c-12.3301 7.63086 -40.7002 8.51074 -40.7002 -12.6992c0 -12.46 11.4902 -15.4404 17.8799 -17.1699
c4.71973 -1.58008 13.1699 -3 13.1699 -8.7002c0 -4 -3.5293 -7.06055 -9.16992 -7.06055c-7.11328 0.0126953 -13.709 2.38281 -19 6.35059c-0.469727 0.229492 -1.41992 0.709961 -1.64941 -0.709961l-2.40039 -7.4707
c-0.469727 -0.939453 0.230469 -1.17969 0.230469 -1.40918c1.75 -1.40039 10.2998 -6.59082 22.8193 -6.59082c13.1699 0 21.4004 7.06055 21.4004 18.1104v-0.0498047zM152.45 226.78c-10.1299 0 -18.6602 -3.16992 -21.4004 -5.18066
c-0.260742 -0.179688 -0.431641 -0.481445 -0.431641 -0.822266c0 -0.219727 0.0722656 -0.422852 0.191406 -0.586914l2.59082 -7.06055c0.119141 -0.417969 0.504883 -0.723633 0.960938 -0.723633c0.0751953 0 0.148438 0.0078125 0.21875 0.0234375
c0.650391 0 6.7998 4 16.9297 4c4 0 7.06055 -0.709961 9.18066 -2.35938c3.59961 -2.80078 3.05957 -8.29004 3.05957 -10.5801c-4.79004 0.299805 -19.1104 3.43945 -29.4102 -3.75977c-4.44727 -3.05078 -7.36621 -8.16895 -7.36621 -13.9639
c0 -0.199219 0.0195312 -0.378906 0.0263672 -0.576172c0 -5.90039 1.50977 -10.4004 6.58984 -14.3506c12.2402 -8.16016 36.2803 -2 38.1006 -1.41016c1.5791 0.320312 3.5293 0.660156 3.5293 1.87988v33.8809c0.0400391 4.60938 0.320312 21.6396 -22.7793 21.6396z
M199 247.76c0.00195312 0.0244141 0.00195312 0.0488281 0.00195312 0.0732422c0 0.613281 -0.49707 1.11035 -1.10938 1.11035c-0.0244141 0 -0.0488281 -0.00195312 -0.0722656 -0.00292969h-9.82031
c-0.0205078 0.000976562 -0.0419922 0.000976562 -0.0634766 0.000976562c-0.612305 0 -1.10938 -0.49707 -1.10938 -1.10938c0 -0.0244141 0.000976562 -0.0478516 0.00292969 -0.0722656v-79c-0.00195312 -0.0234375 -0.00195312 -0.0478516 -0.00195312 -0.0722656
c0 -0.613281 0.49707 -1.11035 1.10938 -1.11035c0.0214844 0 0.0419922 0.00195312 0.0625 0.00292969h9.87988c0.0244141 -0.00195312 0.0488281 -0.00292969 0.0732422 -0.00292969c0.613281 0 1.11035 0.498047 1.11035 1.11035
c0 0.0244141 -0.00195312 0.0478516 -0.00390625 0.0722656zM254.75 218.83c-2.09961 2.30957 -6.79004 7.53027 -17.6504 7.53027c-3.50977 0 -14.1592 -0.230469 -20.6992 -8.94043c-6.35059 -7.62988 -6.58008 -18.1104 -6.58008 -21.4102
c0 -3.12012 0.149414 -14.2598 7.05957 -21.1699c2.63965 -2.91016 9.06055 -8.22949 22.8105 -8.22949c10.8193 0 16.4697 2.34961 18.5791 3.75977c0.470703 0.240234 0.710938 0.709961 0.240234 1.87988l-2.34961 6.83008
c-0.200195 0.430664 -0.637695 0.729492 -1.14355 0.729492c-0.0917969 0 -0.179688 -0.0107422 -0.266602 -0.0292969c-2.58984 -0.94043 -6.34961 -2.82031 -15.29 -2.82031c-17.4199 0 -16.8496 14.7402 -16.9404 16.7002h37.1709
c0.567383 0.0117188 1.04102 0.40918 1.16992 0.939453c-0.290039 0 2.06934 14.7002 -6.09082 24.2305h-0.0195312zM291.44 166.14c13.1699 0 21.4092 7.06055 21.4092 18.1104c0 11.7598 -11.6992 15.1699 -17.8799 17.1699
c-4.13965 1.66016 -13.4102 3.37988 -13.4102 8.94043c0 3.75977 3.29004 6.34961 8.4707 6.34961c5.98828 -0.120117 11.6924 -1.64844 16.7002 -4.22949c5.00684 -2.58203 1.17969 -0.710938 1.64941 0.469727c0.230469 0.700195 2.35059 6.58008 2.58008 7.29004
c0.0351562 0.108398 0.0537109 0.223633 0.0537109 0.34375c0 0.492188 -0.314453 0.911133 -0.753906 1.06641c-7.91016 4.89941 -16.7402 4.93945 -20.2295 4.93945c-12 0 -20.46 -7.29004 -20.46 -17.6396c0 -12.46 11.4795 -15.4404 17.8701 -17.1699
c6.10938 -2 13.1699 -3.26074 13.1699 -8.7002c0 -4 -3.52051 -7.06055 -9.16992 -7.06055c-7.1123 0.015625 -13.708 2.38574 -19 6.35059c-0.175781 0.150391 -0.402344 0.241211 -0.651367 0.241211c-0.535156 0 -0.973633 -0.422852 -0.999023 -0.951172
l-2.34961 -7.52051c-0.470703 -0.939453 0.229492 -1.17969 0.229492 -1.40918c1.71973 -1.40039 10.3301 -6.59082 22.79 -6.59082h-0.0195312zM357.09 224c0 0.709961 -0.240234 1.17969 -1.17969 1.17969h-11.7598c0 0.140625 0.939453 8.94043 4.46973 12.4707
c4.16016 4.14941 11.7598 1.63965 12 1.63965c1.16992 -0.469727 1.41016 0 1.63965 0.469727l2.83008 7.77051c0.700195 0.939453 0 1.16992 -0.240234 1.41016c-5.08984 2 -17.3496 2.86914 -24.46 -4.24023c-5.47949 -5.48047 -7 -13.9199 -8 -19.5205h-8.46973
c-0.624023 -0.0517578 -1.12305 -0.553711 -1.16992 -1.17969l-1.41992 -7.75977c0 -0.700195 0.240234 -1.16992 1.17969 -1.16992h8.23047c-8.50977 -47.9004 -8.75 -50.21 -10.3506 -55.5205c-1.08008 -3.62012 -3.29004 -6.89941 -5.87988 -7.75977
c-0.0898438 0 -3.87988 -1.67969 -9.63965 0.240234c0 0 -0.94043 0.469727 -1.41016 -0.709961c-0.240234 -0.709961 -2.58984 -6.82031 -2.83008 -7.53027s0 -1.41016 0.469727 -1.41016c5.11035 -2 13 -1.76953 17.8809 0
c6.2793 2.28027 9.71973 7.88965 11.5293 12.9404c2.75 7.70996 2.81055 9.79004 11.7598 59.7393h12.2305c0.626953 0.0517578 1.12891 0.553711 1.17969 1.18066zM410.48 208c-0.560547 1.67969 -5.10059 18.1104 -25.1709 18.1104c-15.25 0 -23 -10 -25.1592 -18.1104
c-1 -3 -3.18066 -14 0 -23.5195c0.0898438 -0.300781 4.40918 -18.1201 25.1592 -18.1201c14.9502 0 22.9004 9.60938 25.1709 18.1201c3.20996 9.60938 1.00977 20.5195 0 23.5195zM455.88 224.7c-5 1.64941 -16.6201 1.89941 -22.1104 -5.41016v4.46973
c0.00195312 0.0214844 0.00195312 0.0419922 0.00195312 0.0634766c0 0.612305 -0.49707 1.11035 -1.10938 1.11035c-0.0244141 0 -0.0478516 -0.00195312 -0.0722656 -0.00390625h-9.39941c-0.0244141 0.00195312 -0.0488281 0.00292969 -0.0732422 0.00292969
c-0.612305 0 -1.11035 -0.498047 -1.11035 -1.11035c0 -0.0214844 0.00195312 -0.0410156 0.00292969 -0.0625v-55.2793c-0.000976562 -0.0214844 -0.00195312 -0.0419922 -0.00195312 -0.0634766c0 -0.618164 0.501953 -1.11914 1.12012 -1.11914
c0.0214844 0 0.0410156 0.000976562 0.0625 0.00195312h9.63965c0.0205078 -0.000976562 0.0410156 -0.00195312 0.0625 -0.00195312c0.618164 0 1.12012 0.501953 1.12012 1.12012c0 0.0214844 -0.00195312 0.0410156 -0.00292969 0.0625v27.7695
c0 2.91016 0.0498047 11.3701 4.45996 15.0498c4.90039 4.90039 12 3.36035 13.4102 3.06055c0.630859 0.0107422 1.1709 0.393555 1.41016 0.939453c1.15918 2.57324 2.19629 5.28125 3.05957 8c0.0517578 0.130859 0.0800781 0.273438 0.0800781 0.422852
c0 0.416992 -0.21875 0.783203 -0.549805 0.987305v-0.00976562zM502.69 170.6l-2.12012 7.29004c-0.470703 1.18066 -1.41016 0.709961 -1.41016 0.709961c-4.23047 -1.81934 -10.1504 -1.88965 -11.29 -1.88965c-4.63965 0 -17.1699 1.12988 -17.1699 19.7598
c0 6.23047 1.84961 19.7607 16.4697 19.7607c0.299805 0.00683594 0.601562 0.0107422 0.90332 0.0107422c3.70605 0 7.26562 -0.587891 10.6172 -1.66113c3.35059 -1.07324 0.939453 -0.469727 1.17969 0.709961c0.939453 2.58984 1.63965 4.46973 2.58984 7.53027
c0.230469 0.939453 -0.469727 1.16992 -0.709961 1.16992c-11.5898 3.87012 -22.3398 2.5293 -27.7598 0c-1.58984 -0.740234 -16.2305 -6.49023 -16.2305 -27.5205c0 -2.89941 -0.580078 -30.1094 28.9404 -30.1094c5.45117 0.0107422 10.6943 1.02051 15.5195 2.83008
c0.319336 0.236328 0.527344 0.616211 0.527344 1.04395c0 0.130859 -0.0214844 0.256836 -0.0566406 0.375977v-0.0107422zM556.56 210.12c-0.799805 3 -5.36914 16.2295 -22.3496 16.2295c-16 0 -23.5195 -10.1094 -25.6396 -18.5898
c-1.07129 -3.53906 -1.64746 -7.29199 -1.64746 -11.1787c0 -0.198242 -0.00585938 -0.383789 -0.00292969 -0.581055c0 -25.8701 18.8398 -29.4004 29.8799 -29.4004c10.8203 0 16.46 2.35059 18.5801 3.76074c0.469727 0.239258 0.709961 0.709961 0.240234 1.87988
l-2.36035 6.83008c-0.200195 0.430664 -0.636719 0.729492 -1.14258 0.729492c-0.0927734 0 -0.180664 -0.0107422 -0.267578 -0.0302734c-2.58984 -0.939453 -6.34961 -2.81934 -15.29 -2.81934c-17.4199 0 -16.8496 14.7402 -16.9297 16.7002h37.1602
c0.569336 0.0136719 1.04395 0.40918 1.17969 0.939453c-0.239258 0.00976562 0.94043 7.07031 -1.41016 15.54v-0.00976562zM533.27 216.47c5.11035 0 11.8506 -2.2002 12.7305 -14.1201h-26.3701c0.639648 5.12012 3.31055 14.1201 13.6396 14.1201z" />
    <glyph glyph-name="speaker-deck" unicode="&#xf83c;" horiz-adv-x="512" 
d="M213.86 152h-113.86c-55.1914 0 -100 44.8086 -100 100s44.8086 100 100 100h132.84c22.0771 0 40 -17.9238 40 -40s-17.9229 -40 -40 -40h-134.84c-26.4697 0 -26.4502 -40 0 -40h113.82c55.1914 0 100 -44.8086 100 -100s-44.8086 -100 -100 -100h-171.82
c-22.0762 0 -40 17.9238 -40 40s17.9238 40 40 40h173.86c26.4795 0 26.46 40 0 40zM298 32c26.7314 18.1455 45.667 46.8174 51.1104 80h64.5498c10.8652 0.0927734 19.6572 8.94238 19.6572 19.8291c0 0.0585938 0.00292969 0.113281 0.00292969 0.170898v120v0.173828
c0 10.8867 -8.79492 19.7334 -19.6602 19.8262h-117.24c9.34473 10.6875 15.0088 24.6729 15.0088 39.9697c0 15.2979 -5.66406 29.3428 -15.0088 40.0303h136.93c43.4404 0 78.6504 -35.8203 78.6504 -80v-160c0 -44.1797 -35.21 -80 -78.6504 -80h-135.35z" />
    <glyph glyph-name="symfony" unicode="&#xf83d;" horiz-adv-x="512" 
d="M256 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM389.74 296.46c15.3496 0.540039 19.7695 15.4404 19.5195 23.1299c-0.639648 18.0605 -19.6699 29.46 -44.8301 28.6504
c-1.89941 -0.0703125 -65.2598 3.46973 -102.43 -105.53c-10.0596 8.29004 -57.7695 65.1602 -110.58 25.8096c-18.9502 -14.1797 -31.4199 -47.9199 -2.9502 -79.6699c16.9502 -18.1396 26.7207 -25.3301 22.25 -39.8496c-9.14941 -29.79 -55.5596 -16.1602 -51 -1.38965
c1.36035 4.38965 3.49023 4.46973 6.28027 13.0693c7.74023 25.3203 -27.1104 37.75 -34.6201 13.6006c-4.32031 -14.0605 2.37988 -39.5107 38.3799 -50.6201c42.1602 -12.96 77.8203 10.0098 82.8799 39.9395c3.2002 18.75 -5.29004 32.6904 -20.7998 50.6201l-12.6299 14
c-7.66016 7.7002 -10.29 20.7002 -2.37012 30.7002c6.69043 8.45996 16.2002 12.0605 31.8105 7.83008c22.7695 -6.16992 32.9199 -21.9697 49.8496 -34.7197c-1.23047 -4 -10.04 -32.3398 -18.2305 -82c-12.1094 -63.4902 -21.3496 -98.3506 -45.3496 -118.351
c-4.83984 -3.48926 -11.7598 -8.63965 -22.1797 -9c-1.94043 -0.0595703 -14.1406 2.83984 -2.0498 12.5508c15.2393 8.3291 7.00977 34.75 -14.8809 34c-9.85938 -0.330078 -24.8691 -9.59082 -24.3096 -26.5908c0.580078 -17.5293 16.9297 -30.6895 41.5801 -29.8398
c13.1797 0.44043 42.5801 5.7998 71.5801 40.2598c39.8496 46.7207 47.4395 102.2 58.2002 161.721c51.6797 -6.11035 77.2393 17.8398 77.5996 35.7002c0.549805 24.2998 -28 23.46 -32 5.2998c-1.91992 -8.83984 13.4199 -16.8105 1.41992 -24.5605
c-8.49023 -5.5 -23.71 -9.37012 -45.1396 -6.21973c10.2998 56.8496 19.1094 112.56 58.8896 113.85c2.70996 0.150391 12.6396 -0.119141 12.8701 -6.66992c0.150391 -5.41016 -6.7998 -9.66992 -6.53027 -18.8496c0.370117 -10.4199 8.2998 -17.2803 19.7705 -16.8701z
" />
    <glyph glyph-name="waze" unicode="&#xf83f;" horiz-adv-x="512" 
d="M502.17 246.33c14.5205 -85.8604 -30.9395 -167.92 -113.17 -208.13c13 -34.1006 -12.4004 -70.2002 -48.3203 -70.2002c-27.5918 0.0214844 -50.1543 21.752 -51.5693 49c-6.44043 -0.19043 -64.2002 0 -76.3301 0.639648
c-1.11328 -27.5479 -23.8281 -49.5713 -51.6475 -49.5713c-0.725586 0 -1.41504 -0.0175781 -2.13281 0.0117188c-33.8604 1.36035 -57.9502 34.8398 -47 67.9199c-37.21 13.1104 -72.54 34.8701 -99.6201 70.7998c-13 17.2803 -0.479492 41.7998 20.8398 41.7998
c46.3105 0 32.2207 54.1699 43.1504 110.261c18.4297 93.9395 116.75 157.14 211.72 157.14c102.48 0 197.15 -70.6699 214.08 -169.67zM373.51 59.7197c42 19.1807 81.3301 56.71 96.29 102.141c40.4805 123.09 -64.1494 228 -181.71 228
c-83.4502 0 -170.32 -55.4199 -186.07 -136c-9.5293 -48.9102 5 -131.351 -68.75 -131.351c24.9404 -33.1094 58.3301 -52.6201 93.7305 -64.0498c24.6602 21.7998 63.8701 15.4697 79.8301 -14.3398c14.2197 -1 79.1895 -1.17969 87.9004 -0.820312
c8.5625 16.7266 25.9746 28.1865 46.041 28.1865c12.418 0 23.8223 -4.45703 32.7383 -11.7666zM205.12 260.87c0 34.7402 50.8398 34.75 50.8398 0s-50.8398 -34.7402 -50.8398 0zM321.69 260.87c0 34.7402 50.8594 34.75 50.8594 0s-50.8594 -34.75 -50.8594 0z
M199.08 190.18c-3.44043 16.9404 22.1797 22.1807 25.6201 5.20996l0.0595703 -0.279297c4.14062 -21.4199 29.8506 -44 64.1201 -43.0703c35.6797 0.94043 59.25 22.21 64.1104 42.7695c4.45996 16.0508 28.5996 10.3604 25.4697 -6
c-5.22949 -22.1797 -31.21 -62 -91.46 -62.8994c-42.5498 0 -80.8799 27.8398 -87.9004 64.25z" />
    <glyph glyph-name="yammer" unicode="&#xf840;" horiz-adv-x="512" 
d="M421.78 295.83c-48.1602 -26.3896 -118.561 -58.1504 -130.2 -50s91.4395 80.3701 106.689 88.7695c0.920898 0.5 1.80078 0.970703 2.63086 1.40039c2.07227 0.612305 4.28125 0.954102 6.55176 0.954102c12.7275 0 23.0605 -10.332 23.0605 -23.0596
c0 -7.31445 -3.41309 -13.8389 -8.73242 -18.0645zM421.78 78.6602c5.27539 -4.22949 8.64258 -10.7148 8.64258 -17.9961c0 -12.7334 -10.3369 -23.0703 -23.0693 -23.0703c-2.24023 0 -4.40527 0.320312 -6.45312 0.916016
c-0.830078 0.410156 -1.70996 0.900391 -2.63086 1.41016c-15.2695 8.38965 -118.25 80.6396 -106.689 88.7402c11.5596 8.09961 82.04 -23.6201 130.2 -50zM464.21 211c10.4287 -2.18359 18.2344 -11.4395 18.2344 -22.5127
c0 -11.4219 -8.34375 -20.9102 -19.2646 -22.6973c-54.9102 0.0195312 -131.93 6.00977 -138.21 18.7598c-6.2793 12.75 118.84 26.5098 136.24 26.5098c1.0498 0 2.0498 -0.0595703 3 -0.0595703zM31 351.35c-0.817383 2.46387 -1.26074 5.09766 -1.26074 7.83496
c0 13.7314 11.1484 24.8799 24.8799 24.8799c9.96582 0 18.5498 -5.8457 22.5205 -14.3145l81 -205.06h1.20996l77 203.529c3.42188 8.7627 11.9502 14.9775 21.9189 14.9775c12.9805 0 23.5195 -10.5391 23.5195 -23.5195
c0 -2.33398 -0.353516 -4.59863 -0.988281 -6.72754l-109.6 -273.391c-18.5498 -47.2197 -37.1201 -79.5596 -93.29 -79.5596c-0.185547 -0.000976562 -0.371094 -0.000976562 -0.556641 -0.000976562c-7.9707 0 -15.6465 0.666016 -23.2539 1.95117
c-8.90723 2.55371 -15.4336 10.7646 -15.4336 20.4883c0 11.7607 9.54883 21.3096 21.3105 21.3096c0.349609 0 0.677734 -0.0117188 1.02344 -0.0283203c0.660156 -0.0595703 10.9102 -0.660156 13.8604 -0.660156c30.4697 0 43.7393 18.9404 58.0693 59.4102z" />
    <glyph glyph-name="git-alt" unicode="&#xf841;" 
d="M439.55 211.95c5.22266 -5.22363 8.45508 -12.4463 8.45508 -20.4092s-3.23242 -15.1768 -8.45508 -20.4014l-194.689 -194.689c-5.22363 -5.21973 -12.4443 -8.4502 -20.4043 -8.4502c-7.96094 0 -15.1729 3.23047 -20.3965 8.4502l-195.609 195.6
c-5.22266 5.22363 -8.45508 12.4463 -8.45508 20.4092s3.23242 15.1768 8.45508 20.4014l134.12 134.14l50.79 -50.8496c-5.95996 -14.2607 -2.16016 -36.4902 18.6396 -45v-123c-22.3203 -9.09082 -28.8203 -38.4004 -11.25 -56
c6.21582 -6.21191 14.8066 -10.0557 24.2803 -10.0557c9.47266 0 18.0547 3.84375 24.2695 10.0557c13.1807 13.1494 16.2197 42.46 -9.08008 55v121.85l46.3506 -46.29c-14.21 -34.4697 29.5098 -63.8301 56 -37.3398c25.71 25.6895 -1.24023 68.4902 -35.4707 56.6895
l-49.6592 49.6602c9.29004 26.9102 -16.3301 52.8203 -43.3906 43.6807l-51.5195 51.5195l40.6602 40.6299c5.22461 5.2207 12.4463 8.45117 20.4082 8.45117c7.96289 0 15.1768 -3.23047 20.4014 -8.45117z" />
    <glyph glyph-name="stackpath" unicode="&#xf842;" 
d="M244.6 215.6c0 -8.5 -4.25977 -20.4893 -21.3398 -20.4893h-19.6094v41.4697h19.6094c17.1299 0 21.3398 -12.3604 21.3398 -20.9805zM448 416v-448h-448v448h448zM151.3 160.16c0 21.2402 -12.1201 34.54 -46.7197 44.8496c-20.5703 7.41016 -26 10.9102 -26 18.6299
c0 7.7207 7 14.6104 20.4102 14.6104c14.0898 0 20.79 -8.4502 20.79 -18.3496h30.7002l0.189453 0.569336c0.5 19.5703 -15.0596 41.6504 -51.1201 41.6504c-23.3701 0 -52.5498 -10.75 -52.5498 -38.29c0 -19.4004 9.25 -31.29 50.7402 -44.3701
c17.2598 -6.15039 21.9102 -10.4004 21.9102 -19.4795c0 -15.2002 -19.1309 -14.2305 -19.4707 -14.2305c-20.3994 0 -25.6494 9.09961 -25.6494 21.9004h-30.7998l-0.180664 -0.560547c-0.679688 -31.3203 28.3799 -45.2197 56.6299 -45.2197
c29.9805 0 51.1201 13.5498 51.1201 38.29zM276.68 215.79c0 25.2998 -18.4297 45.46 -53.4199 45.46h-51.7793v-138.18h32.1699v47.3594h19.6094c30.25 0 53.4199 15.9502 53.4199 45.3604zM297.94 123l49.0596 138.22h-31.0898l-47.9102 -138.22h29.9404zM404.46 261.22
h-31.0898l-47.9102 -138.22h29.9404z" />
    <glyph glyph-name="cotton-bureau" unicode="&#xf89e;" horiz-adv-x="512" 
d="M474.31 117.59h25.1807c-25.7998 -109.78 -111.4 -173.59 -239.67 -173.59c-154.63 -0.339844 -247.82 92.8604 -247.82 248.18c0 154.63 93 247.82 247.82 247.82c128.399 0 214.06 -63.5098 240.18 -173.61h-25.2598
c-24.8506 95.6104 -99.9199 148.811 -214.69 148.811c-141.85 0 -223.2 -81.3799 -223.2 -223.2c0 -137.93 76.6699 -218 211.101 -223v49.2002c0 48.1602 -26.5498 74.3896 -74.5498 74.3896c-62.1309 0 -99.4004 37.2803 -99.4004 99.4102
c0 61.3701 36.5195 98.2803 97.3799 99.0596c30.7402 64.6504 144.24 69.3203 177.24 0c60.8496 -0.779297 97.3799 -37.6895 97.3799 -99.0596c0 -62.0098 -37.2002 -99.21 -99.2002 -99.21c-47.9795 0 -74.3896 -26.3896 -74.3896 -74.3896v-49.1602
c107.67 3.75977 178.24 56.5 201.899 148.35zM357 265.67c3.7998 -21.0801 11.2695 -104.2 -71.79 -120.75c12.2598 -17.7402 32.9805 -27.3301 61.5898 -27.3301c47.9697 0 74.4004 26.4102 74.4004 74.4102c0 44.6699 -22.8301 70.2197 -64.2002 73.6699zM275.32 168.31
c72.7803 9.89062 58.5 86.9102 56.2295 97c-72.5596 -10 -58.6895 -86.6592 -56.2295 -97zM260 316l-0.179688 -0.259766c-28.3008 0 -49.1602 -9.66016 -61.5703 -27.3506c28.3701 -5.44922 49.3701 -20.5898 61.5996 -43.4492
c12.2305 22.8594 33.2305 37.9697 61.5908 43.4492c-12.4404 17.9404 -32.8301 27.6104 -61.4404 27.6104zM188.48 265.28h0.239258c-2.75 -10.0498 -16.1602 -87.1602 56.25 -97c2.41992 10.1895 16.6807 86.4297 -56.4893 97zM173.2 117.59l0.330078 0.0302734
c28.2998 0 49 9.66992 61.1396 27.2998c-73.0303 14.2197 -78.4004 83.5498 -71.6504 120.75c-41.3594 -3.66992 -64.2197 -29.3096 -64.2197 -73.6699c0 -48.0098 26.4004 -74.4102 74.4004 -74.4102zM226.41 105.2h0.269531
c14.4902 -7.60059 25.5605 -19.3301 33.5605 -33.8301c7.52734 14.4502 19.1924 26.1982 33.5801 33.8301c-14.4902 8.00977 -26.0508 19.0596 -33.8203 33.5498c-7.60156 -14.3262 -19.2539 -25.9658 -33.5898 -33.5498z" />
    <glyph glyph-name="buy-n-large" unicode="&#xf8a6;" horiz-adv-x="576" 
d="M288 416c154.73 0 280.21 -100.32 280.21 -224s-125.479 -224 -280.21 -224s-280.21 100.32 -280.21 224s125.479 224 280.21 224zM202.61 58.8096c61.5498 0.600586 99.4697 24.3604 117.71 61.5205c-35.79 6.4502 -62.9307 37.3096 -62.9307 74.4502
c0 41.7695 34.3408 75.6494 76.6904 75.6494c0.0117188 0 -0.0234375 -0.00292969 -0.0117188 -0.00292969c5.91797 0 11.6826 -0.666016 17.2217 -1.92676c0.623047 2.21875 1.13281 4.53516 1.5 6.84961c6.92969 44.1904 -14.8496 72.8408 -78 72.8408h-133.44
l-77.25 -290.74zM358 240.89l-9.4502 -36.75l-15 36.75h-31.3398l-26.6299 -90.3096h37.8301l7.83008 35.6299l11.1895 -35.6299h35.4102l22.1602 90.3096h-32zM503.86 58.8096l21.1992 84.0605h-103.869l53.0498 205.36h-92.5l-21.3301 -82.3506
c29.3799 -10.5996 50.3799 -38.4102 50.3799 -71.0596c0 -41.7803 -34.3496 -75.6504 -76.6904 -75.6504c-0.0205078 0 0.0380859 -0.00292969 0.0166016 -0.00292969c-3.90137 0 -7.73633 0.28418 -11.4863 0.833008l-15.8398 -61.1904h197.07zM211.7 178.61
c16.1494 0 29.7002 -7.51074 24.1396 -29.8203c-5.83008 -23.4697 -21.7998 -26.6504 -37.9395 -26.6504h-24.7002l13.7998 56.4707h24.7002zM233 278c18.0703 0 32.2305 1.29004 27.5801 -17.5703c-3.83008 -15.5 -21.21 -30.1396 -39.21 -30.1396h-21.3701l11.6602 47.71
h21.3398z" />
    <glyph glyph-name="mdb" unicode="&#xf8ca;" horiz-adv-x="576" 
d="M17.3701 287.59h46.2998l42.3301 -117.33l40.7002 117.33h45.5098l12.79 -191.59h-45.5303l-4.79004 77.4297l-25.54 -77.4297h-44.71l-27.9297 79.8301l-5.58984 -79.8301h-43.9102zM298.37 287.59c0 0 93.4199 -1.58984 94.2002 -95.7998
c0.799805 -96.5898 -94.2002 -95.79 -94.2002 -95.79h-47.9004v191.59h47.9004zM297.17 141.13c0 0 47.5996 5.21973 46.7998 51.5205c-0.799805 46.2998 -46.7998 50.5693 -46.7998 50.5693v-102.09zM535.46 215.37c0 0 33.54 -11.96 33.54 -55.1006
c0 -68.6396 -87 -63.8496 -87 -63.8496h-45.5195v191.58h51.8994s49.7402 1.44043 55.0801 -34.3203c0.416992 -2.75586 0.595703 -5.58203 0.595703 -8.45312c0 -10.9678 -3.15039 -21.2061 -8.5957 -29.8564zM483.56 247.31v-21.5898h12s5.43066 5.33984 4 12
c-2.42969 11.1807 -16 9.58984 -16 9.58984zM483.46 137.85c0 0 41.04 -4.92969 41.3701 20.7207c0.389648 27.1602 -41.1904 22.4297 -41.1904 22.4297h-0.0800781v-18.2305z" />
    <glyph glyph-name="orcid" unicode="&#xf8d2;" horiz-adv-x="512" 
d="M294.75 259.81c58.1299 0 84.6699 -35.2598 84.6699 -76.8994c0 -25.5703 -15.5 -76.9102 -83.1201 -76.9102h-47.4697v153.81h45.9199zM256 440c137 0 248 -111 248 -248s-111 -248 -248 -248s-248 111 -248 248s111 248 248 248zM175.21 79.2402v207.5h-29.8398v-207.5
h29.8398zM160.29 310.38c10.7832 0.0380859 19.5312 8.78711 19.5703 19.5703c0 10.8008 -8.76953 19.5693 -19.5703 19.5693s-19.5703 -8.76855 -19.5703 -19.5693s8.76953 -19.5703 19.5703 -19.5703zM300 79c68.3799 0 110 50.6104 110.04 103.89
c0 49.0205 -33.71 103.851 -110.44 103.851h-80.5996v-207.74h81z" />
    <glyph glyph-name="swift" unicode="&#xf8e1;" 
d="M448 291.91c0 -5.35059 -0.000976562 -10.7002 0.00878906 -16.0498v-183.771c-0.0292969 -4.50977 -0.0800781 -9.00977 -0.200195 -13.5098c-0.119141 -10.0547 -0.998047 -19.7852 -2.58984 -29.4199c-1.67969 -9.83789 -4.86914 -19.373 -9.21973 -28
c-9.04004 -17.748 -23.3896 -32.1074 -41.1299 -41.1602c-8.62891 -4.34375 -18.1641 -7.5293 -28 -9.20996c-9.64355 -1.58594 -19.3809 -2.46387 -29.4404 -2.58984c-4.51953 -0.120117 -9.00977 -0.200195 -13.5195 -0.200195h-199.79
c-4.52051 0.0302734 -9.02051 0.0800781 -13.5205 0.200195c-10.0576 0.120117 -19.792 0.999023 -29.4297 2.58984c-9.83691 1.67871 -19.3711 4.86523 -28 9.20996c-17.7354 9.05566 -32.083 23.4102 -41.1299 41.1504c-4.35059 8.62598 -7.54004 18.1611 -9.21973 28
c-1.58398 9.63574 -2.45898 19.3662 -2.58008 29.4199c-0.129883 4.50977 -0.209961 9 -0.209961 13.5098v199.83c0.0292969 4.51953 0.0800781 9.00977 0.209961 13.5195c0.109375 10.0479 0.97168 19.7676 2.54004 29.4004c1.68164 9.83691 4.87109 19.3721 9.21973 28
c4.52637 8.88477 10.3564 16.875 17.3496 23.8496c1.74023 1.7207 3.55078 3.39062 5.43066 5c5.61426 4.80176 11.7549 8.92383 18.3896 12.3203c2.2334 1.11328 4.50391 2.15332 6.81152 3.12012c6.69531 2.73145 13.8994 4.82422 21.21 6.09961
c7.22656 1.23633 14.5557 2.01855 22.0596 2.32031c2.45996 0.120117 4.91992 0.200195 7.37012 0.269531c4.51953 0.120117 9.00977 0.200195 13.5195 0.200195h199.75c4.52051 -0.0292969 9.01074 -0.0800781 13.5205 -0.200195
c10.0576 -0.120117 19.792 -0.998047 29.4297 -2.58984c9.83887 -1.67773 19.374 -4.86719 28 -9.21973c17.7559 -9.03711 32.1191 -23.3965 41.1602 -41.1504c4.34668 -8.62891 7.53516 -18.1631 9.21973 -28c1.58301 -9.63672 2.45801 -19.3662 2.58008 -29.4199
c0.120117 -4.51953 0.200195 -9.00977 0.200195 -13.5195zM378.119 50.9102c4.91016 -9.58008 15.3604 41.1797 -23.1602 88.5801c0.490234 1.68945 1 3.35938 1.44043 5.08984c18.5996 74.0801 -26.79 161.67 -103.58 207.75
c33.6494 -45.6201 48.5293 -100.87 35.3096 -149.2c-1.16797 -4.21484 -2.58105 -8.44238 -4.16016 -12.4697c-1.72949 1.14941 -3.84961 2.41992 -6.72949 4c0 0 -76.3906 47.1699 -159.181 130.59c-2.16992 2.2002 44.1504 -66.25 96.7207 -121.74
c-24.7803 13.9004 -93.7803 64.1201 -137.48 104.12c5.58301 -9.18652 11.8184 -17.7773 18.7803 -25.8994c36.4902 -46.2207 84.0898 -103.37 141.09 -147.221c-40 -24.4902 -96.6396 -26.3994 -153 0c-13.8662 6.50977 -26.9756 14.3477 -39.1699 23.3701
c25.1133 -39.9365 61.6025 -71.4268 105.29 -90.3701c53.3203 -22.9199 106.35 -21.3799 145.85 -0.379883l0.419922 0.25c1.77051 1 3.53027 2 5.25 3c19.0801 9.7998 56.3105 19.46 76.3105 -19.4697z" />
    <glyph glyph-name="umbraco" unicode="&#xf8e8;" horiz-adv-x="510" 
d="M255.35 440c136.99 -0.169922 247.83 -111.31 247.65 -248.28c-0.179688 -136.97 -111.15 -247.67 -248 -247.67c-137 0.0703125 -248.07 111.271 -248 248.271c0.139648 136.96 111.36 247.85 248.35 247.68zM400.35 174
c0.360352 5.24023 0.524414 10.1309 0.524414 15.4619c0 5.12988 -0.169922 10.2197 -0.503906 15.2656c-0.43457 14.9102 -1.64258 29.4004 -3.61035 43.8799c-1.87012 13.2197 -3.56934 22.3799 -5.38965 32c-1.02051 4.87988 -1.28027 6.39941 -1.83008 8.44922
c-0.506836 2.22461 -2.49805 3.89062 -4.875 3.89062h-0.0253906h-0.819336l-32 -5c-2.37793 -0.385742 -4.20117 -2.44922 -4.20117 -4.93457c0 -0.0224609 0.000976562 -0.0439453 0.000976562 -0.0654297
c-0.00976562 -0.128906 -0.0146484 -0.249023 -0.0146484 -0.380859c0 -0.130859 0.00488281 -0.260742 0.0146484 -0.389648l1.68945 -8.7793c1.60645 -8.86719 3.23633 -20.0938 4.88965 -33.6807c1.62695 -13.9551 2.49707 -27.7852 2.59961 -42.1494
c0.266602 -26.9072 -2.44336 -46.834 -8.12988 -59.7803c-5.62891 -12.7627 -17.1777 -22.3076 -31.1504 -25.2305c-16.2686 -3.44336 -32.8506 -5.2627 -50.1387 -5.2627c-2.38477 0 -4.76172 0.0341797 -7.13086 0.103516h-10.25
c-2.40625 -0.0712891 -4.53223 -0.0996094 -6.95605 -0.0996094c-17.2725 0 -34.127 1.80566 -50.3838 5.23926c-14.0283 2.86719 -25.6377 12.4033 -31.3105 25.1797c-5.60645 12.9336 -8.31641 32.877 -8.12988 59.8301
c0.101562 14.3672 0.986328 28.2021 2.64062 42.1504c1.62012 13.6201 3.2334 24.8467 4.83984 33.6797l1.7002 8.78027c0.00976562 0.128906 0.0146484 0.249023 0.0146484 0.379883c0 0.131836 -0.00488281 0.261719 -0.0146484 0.389648
c0 0.00488281 -0.00488281 0.00878906 -0.00488281 0.0126953c0 2.48633 -1.79297 4.55664 -4.15527 4.9873l-32 5h-0.69043c-2.37402 -0.0214844 -4.3623 -1.6748 -4.89941 -3.88965c-0.540039 -2.03027 -0.820312 -3.57031 -1.82031 -8.4502
c-1.83008 -9.41992 -3.52051 -18.6094 -5.40039 -32c-1.95898 -14.4814 -3.16406 -28.9697 -3.59961 -43.8799c-0.351562 -5.13867 -0.530273 -9.93066 -0.530273 -15.1582s0.178711 -10.4131 0.530273 -15.5518c0.766602 -27.0928 5.43359 -48.7598 14 -65
c8.57324 -16.2061 23.0801 -27.873 43.5195 -35c20.4404 -7.12695 48.9209 -10.6172 85.4414 -10.4697h4.59961c36.5605 -0.15332 65.0439 3.33691 85.4502 10.4707c20.4336 7.12012 34.9365 18.7871 43.5098 35.001s13.2402 37.8809 14 65.001z" />
  </font>
</defs></svg>
assets/lib/font-awesome/webfonts/fa-brands-400.eot000064400000406312151327220410015721 0ustar00���LP�M:Font Awesome 5 Brands RegularRegularL331.523 (Font Awesome version: 5.15.3):Font Awesome 5 Brands Regular
�PFFTM��^�|GDEF*�\OS/21�V:X`cmap�!q���gasp��Tglyf1�x��headɾY�6hhea6�$hmtxqD��0loca�+Z~��maxp5@8 name�����`�postZGjY��kK��M�_<��v{��v{���������������='@��LfGLf��PfEd�������.�T:� �@ ��@���@������������������������@��������@���@�	�p��@����������@� �@����@��@
�����@
���@@@@@@���.�@
��@��������@����@@�	@@����������������� @������ ������� ����
�@���
����������������@�������������Lh�����@������������@�����P���� �����������������@ ������@���@���@������������@�������������@�����������@���@�������������������@@������@��������������������E��@�������������@�����������@@������������������	������@����������@@����00�����I�R�W������������6�<�Z�i�n�q�t�~���������������������	���2�7�>�L�^�k�n�p�~�����������������\�u�}�����������������������������������
��!�#�1�M�R�W�Y����������������������������?�B���������1�]�{����������������������=�B��������������I�R�U�w�����������6�;�Z�g�k�p�s�y�����������������������
��1�7�:�K�^�`�m�p�|�����������������\�h�x��������������������������������������#�%�M�R�W�Y������
�����������������������?�B���������0�]�z����������������������4�?����������������������QF���������������������~}qmjiOKI=,+*)
�
�
�
�
k
`
^
]
[
Y
W
V
U
S
R
Q
P
N
L
K
J
G
F
D
C
B
A
>
=
9
6
5
2
1
0
/



���q���������������VT
�
�
�
�
�
�
n
C
'




	�	�	�	�	�	�	�	�	�	�	(	!�����.���,��������\x�	@	�
T
�D�R��
�
�Z������\�� H|@b��Tr���X��$� P��F�8f��.�B��,>�P�  f �!2!T"P"�"�#�$$�%�&0&V&�&�'X'�((v(�) )�+.+�-�.�/�/�0n0�1�1�2�33H3�4585v5�6>6�6�77>9�::�;;\;�;�<<~<�=B=�=�??L@$@`@�A
A�BVBjB�B�C0C�D*DlD�EE�E�F$F|F�F�GGTG�G�H�H�IbI�JlJ�K�K�LrL�M�NNrO*OrPPBP\QZQ�RHR�S`S�S�UUlU�VNW.WZW�X,YTY�Z8[[l[�\]]Z]�^d^�_H_�``Z`�`�a�b\b�b�d�ene�ff�f�f�g:g�hh@i�i�i�j2jfj�l�l�m�m�n>n�n�n�oRrsXs�t<tzt�uFu�x@x�yyvz*zrz�{V{�|H|p}}J}�}�~~:~d~�����������ă�~�څ6����,���$�j�������>����j����4��F�����J��|��Ԓ$�ғ`� ����6�J�𖔖�n��N�v�b���,�*���������Ң���@�V������ �Ч����@�"���ƪ&�����b����`������@�̯�����
���B�n�����>���6���R���F���P�����J¸�(����\Ĉľ���� ɰ�n��z���P��Նը�z؜���6���8ڰ���p܊ܼ�ݒݺ�2�N�������6���2��v����<�x������������.���<�����������#"&=6505656567676767>167#"3>&'6&'&#&'"'&'"'&'&#0&1&#0#"#"#"'454767>79305&'�_�Ze�	


 ,9(%
T
E.8B	Ws�e("
	/

*.?B	!Da($&$	 ��'�'3;GPT2"&4537+5323+532654&+532#5#5#535#535#;'#373'2#!2654&+3#i))	OI�9�__�"m" 7� c>^5 
�y��pvym�K))荍�.D��S�E[

[[[�.@6mt��Ugeee�j	����<%3#0#&'&#"##"&462'654#/&""32?32545'�3&)\����tH
H:;;V!&x�xxTG_DD,E))E����
!7463!1#!>7>7>7>7  F1GE�1YXF1��
3/#
/2/<H1FZ9f��1F&4H7'����%/#'73?37'#7'�5�;��;��m�W��W�.**W�22�32��23ml���&�z�������,$#"&546301%!!%&'&#0#"3273 ����@w8
(��@KN


����#+;T62"&47"'&'&476762264&"6264&"72#!"&546364'.'&"27>�,,�	�		��D00D0�n��O0+\+0+\+0�,,H�		�		�0D00Dd���`��\+0+\+00����%#".?'&>32#"/&4?632s��\\
q��
\t��$}{$��$��${����$-8`f32'6123%>767676761232126'>'676767&4>767.&/7>'.767&'�7~#c��%
/&5		"-
	7	/2	
'%^

X����J4##0
	B?")
�99&
,
-$�!
@z#'%53'3#5353353353353%53!53'53�}}}}}��}}}}��}��}}}�II�H�IIeIIIIIIIIeIIIIeII����%7!67"'.5&736.'#>32��>W\Nb'4Dz�Gq$zc@h�4-6	ib6�9!.+G4];64?�A)GTeqz73#"&'5&547>3032&#"1"32767#$#5##"'&505463254'&#"'6365&#"32'0+#53212654'&+321%3#7'33jc*3

3(  9v


"
S'?	
	''O4%�1!!


;O

	
g		�L�X

	A�@x\
�����9BLYbj���%#0#'#"#'#"/"#"/"#"/""/&##"/&##"/&##"5057&'"#"5457&'#"'&54?4/&54?4/&54?4/&4?65'&54?65'&54?67'&5476;67'45432367'54326?6322?6322?6237632376327232072327267#"&'.5&+32+723232?6324&#"2&4&'#"2'35#&264&#"3254&+6=4;654/&54?.'#"/32&264&+"264&#"�
		

		� 	O0-� %*)$		�			
O5	,	
		�;?�#D(>+�'

�	
�			�	

		
	�

	##6
	##)
		
	

	
	�

x				(
	x	
		($0/
�

	�		
	����"%#"'"&4632&#"265313�C7_�__D,,=,X
,%�'�D__�_Z,=,,]
4����%!533=#5��@�����}}�}}?�`.Q%#!"'&5467&54632>321"13%2+"5057>?27454'&#'&'&?632�	
�U7'(O15S'�Q4J�'32	
	�
'8	(
-9C3"`J4	
��1!67#&'!".'&5���46Y'/7V),2+�++46%3
,!6S?H	"<$V����4D%2#"/041742'054;20+"01+"5417'054;221+"541743���nBoC�CCmBm�����������������1#"/72?6="'&'56?657'&"%62��		w��!���
�w��!�4
 �
_E�8WP���
_	
D�8WP������7%7'3'�3+tv���fgt �9���u�������N%'&'.'&'.'.&'.>1'&76'.5&547>�
/3


		*"3;X�GBFc	@A L




	&9=#
!D>�@%,����!1:%2+5'2+5%2#!"&54634&#!"3!262+51:b:!00!��!00!]%��%%%}:�b�ba0!��!00!!0��%%��%%(b
����"EMU]emu}�7"/#1"/&=4?622#"/&=43254323327676"&4622"&4"&4622"&4"&462"&46262"&42"&4�tdKu�	ee
JJ



_

`



L

�


�DV
s:+E
�	::
+��+,



G



F

2


E
;
����+92"&47'&=7577.#"7'&?6>54/�ƍ�ƍj	g	-��V07_I	(!Y}�	��ƍ����!4Z�%#(3+#���Y h�
-6HL7#'#'3733732"&4254#"#"&5463253#'"3254#5##"&=332=33#�%&-&#$;##;"?�" � 
""	&&luu�ttvv,#;$$;E'(''%>�f('(fLF#AW%����92#!"&54636767&#"&'&''3#"'32>54���/(S5	"$-	.79X)���`�
0!@#$:T-����#2+537#54;5&#"#3#"&5463��:E(+3??�����H/&=2.7H�`����32#!"&546335#6264&"54&#"#5#354632�

��

gC  @!.!@C�
��

�
�������u24�j
h	����TYagnu{�2#!"&5463>54&#"54&5&'&'0'43767.547&7662>&&364#"32&'&6'6&'6'&&6'&'6'"����2=aEE]>2	 	
	+
S
	���`��W7D]]D7W
 		
	)
@	���/#"'327"&'327.=&547&546326767�(ItFXII:#5

	$0/'q@=+.$"(	5iW6/-):%
 81:+>!%
 ����%537#54;5&#"#3.5462�xY:E(+3??Yx�Α�\��H/&=2.7H��\g������bjrz�7#54366'72&2&5<54'>54&'6'&&".&'./"?'.5466'&'6'&6'&'6&�!(Gi�]K	$
"
A%	"

 
+	L^�,	"	3��gS�? (%
			%!(
0�Sh���
!	����D#"'6?32654&#"7>76'&54632#"&7>54&#".5462�g&# 7IXALW=3.:-!GW��'Α(;YA=RX>9
"+A9,2@
$
"
g.~Ng�����N+6?32654&#"74676'&54632#"&7>54'&#"&5463!2�� 7IWAKW=2-:-!
Y`p��$;X@=QW>8!+@8,1?#	
7 
`����)52#!"&54632654'#3#"&46327&#"%5#5##335���t+5^9%$');;���`��6,"%4%;R;Rt�%%#"&4632&#"3267#53##5#5353�fRPppPK54.1FF126mn888778�Sip�p22GdG6C88888��$3#3&"&462#54.#"#33>32d]],  , T]!]Z
. "-	+) ,  ,���*#�+))0!��0HP6"&462#*.'&547&5472632>34&#""'&#";2>&2"&4�##9	) 76-*#1*/*&1"'@(",0+
"(//00/d##�&$$&$;$	(7A0
	.w#00#++V$&$$&
{%#76&+###'!2�a41<a;S<a<-t>$%
�����`--=����!'7#3/#3?#'�#����56/ca���t440�>&L�1����'73?!7!7!7�@�Rt���M�����PP_),,aR5R����+>Q%#5"##5"#723>75."#57536353'262>54.2>54.#6MGB1
1	X

T
1
13<�
	
! �R5,DCCD:�4ONMO%(:T`
	�	


2�!$#"'&'.'547>7>7327'&
'j,,�*'
j,,�*�Ǐ�DBZ+%%CY+�RQ������#70+"&?'&6;2%+"/>76;2�F
AE,A	�[B\H)
B�|	zL	V��	�6H	���� 12#!"&54632767'&+"3%6&+";26/���\0 .1
/fB/B���`��	U7	6W�	�x	w���'7'7757'7�����������������LUTTUTTT��UUT�TTTTUTT��~�%'?'7'?'#553!53#	���z��w w4��(��(�')'.��$T%�����((Px��x������0g2"&4264&"6"&462"'.'&47676762><.'&'.*#*:3:>76�`CC`CT>,,>,�\C=�=C!!=�=C-#)(#
#)'#3C`CC`{,>,,>�6�=CB=�<!"C��#('##)(#
����2#!"&5463264&"264&"���F5%%5%�5%%5%���`��%5%%5%%5%%5����
#$"&462'373�A�9�Α��-��"�"bqΑ�Α����44����!23#!"&'45467#�
D��D	%��
�_
�	�֓���:�)#".=#"=47>76;232+7665!*>
/
*(F
T

T#!	 
.,�
DB%
s
R
�@
����72#!"&54636/&'&&=32=4+54+";32���44,	1&*���`��(
S4H
8+Z��}�&%"&#"#.'&54672326''&7>7?=: ./1E.8@938 %&�?&P26*'?F(n&( (����7#53537#�������b�������"�@@�*$"&462"&462?654#"&#"'&#"!.����0
1:AA:1
0?N@N��S
UU
S"xIIx
	����j}���%?"#&#476#"#"54762"10'&'&#'.'&'&76'&5476767>7&767674.>32&63"6'&""60'&672676&367676'.'&#""6&/&'&6567656767636'6'&'"&#&'&''.'&'&76#%4'.'&'&'"1767>&72132767>2#"'&��

%

+! 

!

�	
0


(

	
$29#%
	
	
	


	

	 �E��
	
.3% "#"(#*%9		)
<
	��5$	
2#1!.2
#) 3$
		 &
#



����!,4:2"&4%6&'.>'7&>7&''7&'67&�Α�Α�:#		IKG'd3+$"7�->
^e$�7b7
lnR.t3
 =Y�M?E��Α��*
JR#9C&(N1A�R</P �%MSK.4ZP����P%#"'#"&547&546326322654'&'.543232654&"#".#"�B.&UxB.&Ux�-C[
*DWA		



G�&.BxU&.BxUr-)9
	()

	
&��t�:2+"'&54636&+"?>;267676&+"&=46;267C0	
S�
�	Y	I	
Z		j
� !�	��J��l	%	
		������!12#!"&54=46354&+";26754&+";26�!!��!!�SS�QQ�!��!!�}(!����{������2"&4>&'&'.�Α�Αk	!&"
q��Α��Q
	
	
 � 4`G0+".'&#"#"&'.54;2326=.546;227>?6;2!)";
(/`$"-;=	]$		;JD3	
 '&!
84.[0


=`	
Wt<	�
&0>JT\6&&676&"&547676766.766&76&&6'.7>'&>&7&76�
&3
�U�LH<,<IB@D4	_@@S_@@E2U&%J7CA 

< c
		
9$

��L=CLH'155+.iS3DS3w
.Z05R��	53	

		
����&5467"'>77.=�RB:vX)?8-??-7BRXvR� EZ\��Q..QX �R��\Z������O%&/#"43267.'>67".'665.674>2/>�21-a90Q%/,&@*	
!$4##&
#*)

&&7�&'
>H;3	-'$,
%

"$$6
*+(
%2)%
����7!+5#"&=!%5!'2!5463�&W�&��d�A&�d&t'ZZ'-UUnUU�((����42#!"&54636'&6&'."6323276���P2B!
	-A@���`�?N		 *f
#!3TR����)2>GS7"&46;462"&5"&4622+"&463462+'"&=4622"&=7"&46;2#^&/''/'/v3&/''/'/v�'/v3&/''/'/v��&/''����/7AIQ.54'76&#'&33'76&#"#>32"#"#"'76546"&4624&"2>e6BeL	"8!/M	#^7S=�A#$�:0A<�Α�Ά�ċ����g>-"4G�		[��,48":�	2/7:b�($Α�Α��ċ�ċ����%.546777'7&'57DWumS7EM:D��%(E3# R85Q
+	8$&:T!���+����3#7'362"&43#�]�^'j`8�0""0"|h]h3��Z��"0""0�����%#"&4632.32>7#53�kg��gaEC YM7Z@#7���j��ΑAA!M2A\#"V����9GQ6"&5462$"&462"&'7264&#"'&&#"32654'>&6"'&7672"&46��Α��

$28=2$	N67MUL
C�

�Α�Α�
NV
(77(t
Y

����
%5^%"'&76276'#"&5463272#"&5467#!"&5463!2"&'7264&#"'&&#"32654'>&RHW[���`d'6;B6&T:;Sf1���`�
U]!	*<<*
!����%72"&42754&""&=#326=405#"&='26�Α�Α�",>,

:,,�:

",>,��Α��!


+*l

-.,+kq.0

/
/+,����.%"&=726='54&"#"&=326=462�B]B"4�B/.BVC[C4�F.BA.FGH:�.AB.FE�-?@-$����%3#!"'&'&'&'&5463!225#5#"3326���	`��	��	|��`����	��	 `	!%)53#55#%3#535#75#53#535'35'3#3#R3�RH��RRRͅ�R�4444L���]]��))]])��)�]]u3�����	#0@#"'56322#"'567#!"&5463!2264&#"#754&#"7532�

G

���`��++-3�+
4!DiD���`�/A/	�
3:B.�
3��9�>B����7'26322/>&67>77367>?&75.#&'<7465&#".'&'#"&54?.>3263263232654.547'6'632763'7>31#��	376I
	
G#


,g�;
#,
	"?!
, �	�	0
5/)



.%�	E<
��		-


\���	PK<			
3		!%, 

4.

"
	
&"H�3^ ����(:R#"&54>767676'&#"&/"6'763276&'&"6&#"#".#">2@	&pNNt&	(
 +
$P&	
	
V
=
"+#3(*	
0M,E'RhmQ%D*#&
��	D66*"$

1����1Ic46326&".'.7.67>>32'64&"#"&'&'7264/7'#"&5467&72767#!6*,
d,3!
�V6"#-,
Z�#"9,d-[(b0'(7!#,,

Yd#*,d,2"6!_U
#!8--
Zl!#,d,[	(0'(#!7,-X@u287+32'3254#254+%#53#32673#"&546323&#"�AH5��q�O/5
:8U���8�!!>\<GI::C�s3 �H34cX3NS+(�/3b�#� "VJ<;MP7����
#'3F7+532'+5322#>7#!"&5463!235#4'654+32674&"327##"534�-.+(�?���`�NN+#>Z]'�$?(' 2"	"d�47--���`}�)

0�+ +*  )/
#����08@#"&'326'7654&"&'>32>&/6'&'6"&462264&"�gU�_&*T(87M7;��bg�

 	(	�3%%3%R'''ΑeO' +<8''66'V
7`���
	(v$4$$4&&����5=E>&/6'&'2#!"&=326'7654&"&'5463"&462264&"�&���Y$'O%53I38u0""0#M%%N&&^��q%(84%$33$Q
0��"0""0$$����.C2"&42654'&327672654'&#"327672654'&#"3276�Α�Α]	
`�

|S Md20
?0$	
R{B4

<�5��Α���	9	2B
-
L
0
��@�3#0#57'#53?3@b[�
,	]]V�+	bc�
�	T	]�	�	T	5�K#-9DN`u�����7#"5'743272#"5'7472#"5'742"5'?2#"5'7462#"5'762"5'?#"5/7547632#"'&5'?47622#"5'72+&=476326%2#"5'74'2#"5'742#"5'7o��	s~!..!�	7O��.�AEEA)iEEi�DD�`####9989DBBDFDDFr�@  ��:B��CC�8/ !.	�	I6<�AA��CC��CC�����+%#'.'367.54632&'654#"�O*+%$
J
;+-%+7/(0

"L�44\
;K~Km�5,>N12A)<:

.:9��� $(+/&=4?67'775'?'7'75�

��

�
_MجM_�7�_M�NNNd�M_�7 �����;g?3ss3?5J%�g?3444�s3?5J%��A�!E{%##"'.'&676'&7606766&'&5.*&'&35236'#"'.'&67>76'.5676676.&76�"		<'#�J$;
'&/(1aT+
0;A(&"#
D��+;'I!
,!%B'
$	"1�D$&1."#C1)>1	(�$X$>&('B<s L
!
		&&H	
%	
/,
����M"&7>721>?64/./76&/7>?>?>./65g�<7			
-,	


	(�8�h<i#36B
	8 
	32
	
 +3
	A911D+m�	����)6CKSb�&#5&'&'&5473.'77'>7"67527'676"&4624&"2'67'654'7&'"'7&'&'7&47'6767'6327' :a

)=�

�:b);

a:=)$b:=)o�Α�΅�Ċ��c

�

4	@@	4


4	@@	4�90	.�	2991	w90	
/-	09.�
	09/�Α�Α��Ċ�ĊW2r1	�CC,,CC,,����
"*J\|7&5472#"&6%#!"&5463!23254#"#.32654&'&#7654'7'"=#37'.541535#"545#23232e
!!#
O��`�1$@!$ 0	
!	U
4He&$
r
|���`YD
 XiK
=
B���&19LVv"'#"547&5467&54>4&'&'6'26&#"527>=4&'733'"&5432#"&=4&"#5>73;#067�%)$

%:5f#)-(453�T?%%�!!$	&9="#"


#&2
,&
�	
	
�$##$d w!� �##�#j%">)a����!!77#.'#3��@�Q#	%P��@�6�-/0"�g��g�-'&67&632'2'&6654&#""'&>H	77 !;k�Eb{Q>jP9%>"
	'M0_�93!!sDbENeRC9P$9G#	(VG-����1%&/"'"'&67.5'"&6767&632�	n##m 	
!QRQR!

7	
7
	0 Q^yx_Q 0
��3�(6AL"#"'7&54632&'"3264&264&#"'#"&46322654&#"32654&#"�E`
1DNrQGq	r

��D6(F``FBc�

r

Z@	";7ME`N;5



0



�=40
SuST!����E\2"&462"&46'&7<5"&#'&7&'&625463!254&#!"636626�3$$3$�3$$3%�#G6"(&	&("6H#g��B)

 *D&!0""0!!0""09*f4!
*)!4g+
����
����#5##5'!#5#5!373�&D'}o�Mat���WDMYnnnng��[[J���@@���!0?O7#"&'&547632&54?6#"#&7&6#"'7&?632%67232/&54+dl	

1
J	+mi"	Zk	>	!��5;

"	h�1  �	Ro	
�"'
�[�
�	�������H7+"&7>3262"&7#*+"&76763:>7676o	
K;H$
*m�$y@
  �7?s	O,Y�BpW�	����	(&'>&2#&'&6373#&&'&'&6;2�507h<�m~r
|JYAUM21c2$0=LvnM	X�¦nfja��JH��@�%)GR%#70>?#!"&5463!27#/&'#37#74'&56367&#"#"/26'#"3673�!m� ��X@+'@$�(�"&$'�  <*4�&+���`��jG���2
!
	#�
���@�	
4BR^d���������
-9F$"4!2#"462#72#"42011"1"1"1"1&1<143403030310030410+353#!"&5463!2327&67&#"64'4#"&#"5#3<>323<>3237#&#"327374&5427&"'63'=35#5##3734#"7'&7&5#3546467&7'7#&737&5#35467#&7373535#45&1&0#"0#111323210606107#'#537374&#"326���xuuJ� ��Q9*#76#*9�555Y	-

(	#


	:


	5"

*Q9*#67#*9Q1	Z��`fsQ-�,�)�))�v%	
	
%	
	%	
	 	
		%	%			|~U:Q-�-Q��@�'3:BPhqu}�%+53272#!"&54633533'654.*#35#535#535+37#&"264'&75&546"'654&'&5467&2654&+35#5!26%+532� �
:-r#$;%%^))! a

,
$l[�3�z�	�*		�
���`�R!!#RTT7:%%/

	



RRR�� i	�6����A�-69@LM^ey|.F^juv���#<.+#532254+2*##'#5377'#3#57254+'#3#3#53#54&+#532254+'#5#'#'##7353733':>7#!"&=3673353>7352335;6733535#&'#&'#"1#"5#.*+.'#.'#5463!2"#"5*5#."&*#&+.'#3673465273<52323267437"+73254&"&54;254&&54;#"6+5'#3##53'63023"'&47'3*;735353#'#'##"543'3#E'
!BC3)$$j?

'&&'77I�
	'�"#��
� 5�B4)(+ (g.(�#		O

:
SR
0'&@$	  
!W	
!	
 
'&&'889""!Lp
EZ	E6
	8	�Ej EP6666EBB//(�Z�						\	

		
&n�]
		
<	
(

(
E^
7BB11E44"#(E��@�	,AXr����7#"54632'2+743!2+7437#!"&5463!24+";2?46:3267#"&#"327;2?47454+"'&+"0;274+";2?>:1267#"&#"327;2?474+";27'2#"546�

	j	 �� ��@"(T
%@
�"(T

,J

�	
	
!
���`�f

@b\'&nf

@!h1	


��@�!=MW[_n�%2#462#"'5672#!"&54634.54325&#"#"'32675#53275&=5&'#3565#752654&#"'#757454&#"3275#"'�
$n


�� JE#e
$
=$$$n $
� �5���`�	"		"Lr
3!}U
b}}��! "	�(	3$%!	1OT7#"&546323254.'&54632&#"	#"&'.#"326?�3>BD@%-)=

D<-^;+
zFE
)&&		Q
FCFM%#'<-'J#	

Q60	(
/3)2	����b2#!"&5463254.1&54327&#"2#"'.	#"326?'#"&54632���L	$:%+	&.		
(+)'
		
+���`��3	/%.
0,*,
  "����;G2+#"&'#"&46;&546324'!"&463!.#"!2#!326%32+"&46h

5�gL|C

5�gL|��

^8Su*

��^8Su���

�
 g�TDg�TD`/9uS/9uk.����%-6B~�%#"&547&54632&54632>32654#"6'&"32654&>&'.#"723201&'"##"&732654&#"32'67&[!iVF_3/%7
P!"/�."=0�
Y!r(
1
	.	C-A6	�0&Xs\99#��3%/^�xeC�Q\�P:(
'!	;A		

?$!)/�����#%#!"&5463!2#37�+V��`A_�_[p)��`��*��[[
��3�GJO\cfknrw�������������%#"'#"'##"&547'&547'&54?4&14?&54632362363225#7575'#075175573'7'37'77&='&'#'#7#"7'"7'737'37#3'#362?#6?#747'74547'67&74	kj	476	8	jj	8��,,-,3483,.,rb@#�PSPY|D"uSb:�9
h3�Kx63)O<<$$kR#[c�i\&\a|sZ#V.#�
_Z		Y_
\
a		`	��L30?\4Z`�H!<KfC��RXT\G�|Xed<=y66G6QS+U?sL&2;V�_Z__S\=lO�����
7+"&=4633'54&+"Gf5&�&55&,�3
�
Xh�U%00%�'7��5{
�
����	'7&54632%&'>7&'677&'>7�\\�gq�!!�p$74(-CyU�#"�g�\�$�a!�rp�!��0>}B-k#�Vh�":�%:#&&#"6326"'&#"&#"+632632&#"&#">32632�8/-:8C,0=*)�$"75>))>57#"*>G@**@G>"/6>))>6/"!18//8#9Q�+)��))]##��&&��	��z�+;K[%#!"&5467&54632>3254&+";26754&+";26754&+";26754&+";26)5I2��2I' 1#[:Ec��				Y				Z				W				�
C+3HH3$<"28HcE�o		o		�		�		�		�		�

�		'����#'+/37;?CGMUtx|����������������?7?7'777?#5##5##53#53#53#5##53#5#57#5#53"&462'6#"'32654&&543237&#"'#553%#5!'%!5!#5#57#553'53'#55353'#53#55#53'#5d����,r�"
"
"�!�"Q"=!�"��Q"$"�L66L5�!	 	ya��*�����z��z�"�!��!Q"u"/"&






B
	


>

g















��""�"�5L55L:
D""�""M!!0�jbb��U�;;�!!+!!��!!+!!xM""�""�"""��!)2#!"&546;235463264&"264&"��>j��7''7'�7''7'���L((��'7''7''7''7�|U%#".#"327>32#"&5463232>.#"#"&54654&#"#"&547632632�D26()!)'5*9
<+C;
	 S(@ZXA!<,,"'%.&		%	!
C2(&@<O.Bw1B#-/,$,>>,*
"R?@U",/,"))	2A	,O;	>����?2#"&'"'&54>7&547632>54&#"#"&546�IkI2(		


%	&	A5<P	+{�\I1W<,

0	Eh	 0
K 214:N<,>0Pd���� P#"'7&546322656'&"77'.1&5476323217676}C�\91v �\\\Ln96�mF+�
	)	
	!
_CZ\�s3<\��imLJ86lL5-D�

	)	
����3#3#'#53'#53'3377#�00DRgYYgRD00@Q^Q�6�p0 0��0 0p����@����(!!5#'#35'&753735'&75&7��@tS;DW Z O	Cv��@V��"�&&s��������!7#/#3��@�N!.-#L��@���[
[�^����B������������#1BPcov�����%'''.567&667&674665"&'&7>762263&'&'45&'&67666667&6767&'6:>5>"23636#6666'6&'.6767&'"#276&67&54&&7&'6756"2654&#7>'"#276464'"#'7>7>7&7.#'&''''&'&'65.'&26'67&'&''&'5767#65&'&'&7&5&'6&3>.>6&5467"&7654'64676&%'.'&6'&'&6=3
��3	
!	
(
!'%
/�T'
	
	N
4	�P
2

�?--?,("5#J*	$a8
KQ/K*

12	$55+7SE/98��717�2
$�B!<4��	
%� 
%0��
%
	
))	"

G	"G%
"$	
	
�	
!
'(!$
	!&'	("�- -- �

# .&

$6 	( O
4*!


�&O6R'	"3%& �
 ��	
	�#

�H	
	+����0$"&462"2"&42>..'�&&�&&Q';('33&XQ:aB9*e�&&&&)#,8%'
 ,)���� 0<LT\2"&4#;2=462;2=4&"54&+";26'+"=4;2+"=&54622"&4264&"��}}�}t		'.'		9P9����		�		�Α�Α�������}�}}�		!!		(99�

����5
		

�Α����������@� 9L\%531"#527#!"&5463!2##"'32>4&7.675&464&'>54&'+326�&

((h� ��v9

"
�73!"651""1�u{� 
#���`� %	!!
2
=
���@�
#12"&45>4&'72#!"&54632654&+"3��gg�g� ((p((�� OywQ[QprOpg�hh���9F8

8F9x��`�`qMTnmUNp����)5A7&#"327#".54632&#"327#".54632'2#"&5462654&#"�!
!!	,
-.�!	!!	+-.yi��df��jQzvUVuw�X'"(%$X'!(%��hk��ge��=sXUvzQSxt7'7'7'7'77''�gg��-��4M���-��4Mg�gf��-��4L���-��4Lg	����2"&47''77'7'7'7'�Α�Α�JM5MM#~�~~JM5NN��Α���KN5MM$~|~~KN5MM@y *2:B1#"''#"&547'36323264&"7467&#"264&"&2"&4$2"&4/U;9)..)8<T./iReeSh�(P99P9�=/4893/=hP99P:�**>**
+?<T&22&U;?+399�:P99P+/MM�:P99P[****��?�&0:%'&'.7617&'.7>26?6%462"&72654&"!9L
9L
#	L; 	140
��LlLLlLB&4&&4&rL
#	9L
M


�6LL65LL5%%%%����C6462"7#!"&5463!2264&".#"&/&?6/67>�  ���`��/D//D%
%
0

0$

/
#
�!!���`SD//C0�	
/

0$
0
����+2#"&=46367>54&#"&'.#"2��]]��")
" 

*"	��]��]��� '!( 	������G#'&1.'.<53>7.'&#53676&#<5:3.#5�'�RJa
0� j
	<;-�		<)&;@z�(��!��%7�80

�r
�

B7.

{	�
����
.6FRZl~�������%7&2"&43237654'&#"'32?654'&#"&"2=32545'&#"264/&;24+654'&#"#32?654/&#"232454#"32754"27654/&#"32>4/&"'7%654/"#"32724+"3mGTΑ�Α�q9S>B `IC>dt�tG	�Gm�Α��S)�Q��)o�t�GH���'7'>32'&462"%'76&'7.547�M#f7C:@!�,J1F11F
!<P@Jp�M*?Zx(�v,0!%B.rF11F1�S�.%�$X!�')}�\J>�����%#"&'4&5&7>767>&67>"06764'&'.0#"0#9>3676;2023030021002210110010101��g\�
-%\*=		$`#a04


�	g�uYC9%,(9"b:1
#!)V$"	


		
����%"327#"#.546;2&&'>4&'>:=`*
&=W5.F_c��g^F-0G*76+GO�Jk~0K?�dg�?�sb~bJ���	�!)/8!673#"'.546767>667&73."7654&#"�&��/?DywJF ">59O5E�Qap�I
%1IY�>R=�C- DI$3 DN&# Q gFOUk+9'�,@*�)66�J&���27#"&546;%2+6''.'.676767&'-
P:
�4>�7#

$6� �/*A|0#>���=g>3E/;73!����I[l�7&6765>32'&62654&6764'&#"#'&=4;2+3>.>#".&6.'&66'47'&63276#"'#"'&g
9((:O2	,-*8'Z &&'77&
��%eU;%9HD<05;D%0C#	�1�oT	M`k�	h
	^%79(1;&&	/ &m'&&	
�
�("Q5*E'
1*
��1&_?<R�

����*3K`<.#*'4632&'.54>576#".'&62>76&7>'&'&>76
JI>.9&?<,%3%T
�$T/0^37&@9J'$	*
&
	(@�
8$/',W)7	
�	))


&
����	%##3#i�m2�u��hV������'#"'&'.#"'>76767676&6�Y[?'		
(	4"!]E&ArwI#-)0%
L�5-l����
!!%'7#��@<@@�@@\��@{�VV�Y����*=L!!274&#"#3235'&74=37#4754>35'"454=#?'#'##77��@�	3#'&�,8DSgPQ		 ��@3	!%%oq%

��l�

!����)5CO%2#"&547.6326?6632#"&5'632654&#"6'&"'&272654&#"�	{XW{	9O	aXP9���ky�&1?YY?

0'(�	!}'inR����@\#"'&547654'&#">320#"&'&767632.%#"'&'&76732767632�  8	!.L/S�YI{�	
Iy)/=*$$ )- c #%#5(fF$!
:-) 6	0#2,#UoC�oNA<:+ ##


1GAQ3:IO
<T
����,%2+#5#"&4632'#"&546327.#"326�
W uKg��gGp#��=+O>WW>H-;]7[��[:b�,a�FQ�ΑIAmnHW>>W?#/5���;����%''7'57#d%��S�}�.*�}���TA�`&�:��:�����Yeq%2#54&"#54;2354;2354;235435&4663232632#"&#"2354;2354;23543%54+";2754+";2��"*"�$$%	

%%$�����``� �    p<&    � @@@@����U$#"'&=#;54;2+"=#".+#"&46322>7>23>32#"&'#"!546�Y�
	Y		Y	'e&**&		  
	6	Y�
5$
<"		Y		,6,*:*
"-!<
#6����$+5326"&4624&+3532FFFȑΑ��3$x2F$�JΑ�Α�H3�J�|4CR%#!"&5467>322654&'&7654&#"'&#"3$#"&764'&>#"&764'&>�!*8'��/B7*X6A`J4%?
**
%	"
	�3"'8C.+?3?X�


4J)!	);)x�8	-l-Ia(	H

����87&54636'7&"76&%#/7327654'&7466*^I"<53%8C)G!G(4RmR=#!@P_"*&�3IP
H'%*#	6EL,IH'0A( ����#'76#".4>327''77%+*|3@-.C97D-,B3�O}J]]J+V��V+��e66f�i89�X��I^\I����'�7''7'75#'7�b�VllV�422�g��V ll VΝ2djd2�����1#7627'&73%'#762i9�8f���^���88�9�����X�ڸ	e���
	�&�������!)-%#"&'*##".67.>2%35#5&''35#�7#77#7!=ZfZ=!��**�-e)&lm��~8//8&TJ;##;JT-:� "j:	���� $(+/36:#!"&5463!24+''#"3!2#5#5?##5#5?##5���j%	o==o	j��IIIT6v���p@v�cu��j��jK22K��%%J&&�,u%%J&&�,��%%����/2#'".'.&56'&'&'.V�P5QF/"35#D
	$GI&

%6(�,>=E10RG	.A9l
,!�	g,����c#"&54676327#!"&5463!24&'&#"'>54#"32321'&54>14&#"3267>7632�	

���`@		
D1;.)"3	! +
,(0
3��`�"??O-(-<
"8$
 ����DZ%#&#"#"&546327674"#"&54>32>32'654.#"3:>76�#2	(5R6(./	
		BI%R667
�		
�7
8Y1'6

*-GB-XA05f
	P	M(,?������0E&'67"'.>32&#">54'654#"'6767&547>.%$
3�3(&Y;!:N?1#1	m;Ob/&KB%
0**JMX�
CJ88*p^B	T:4M	AUM'79�DR;$cI)+
!2����?T2#!"&5463>''3654'5.'.5463267&#"2726&'>7����

1%D'1$%8 c<
)	.���`��H%3+U$"7
1./6(	0 $5
);F#�.>	

����d2"&46'.'#&76763654'&"'6'.#0"1"#"'&03263277632327>76�Α�Α�


.	
,'��Α���	

<
<
�����g%#"&#"''.#"#"'.5&'0547>7056'.'&7>327&47>3023232761�<	("*
	D	$
	
%(	)D

$7					
		
I$*(I

	����l2#!"&54636'.'#&76763654'&"'6'.#0"1"#"'&03263277632327>76���Z


.	
,'���`��	

<
<
 ���� )632654'67"&4632667&#"�o
$&3)/Ih-
;z�zzV6/B��\d%(Ih�JV6?#hIC2
=TVzz�z7���^hIR����GMSYc?27777''''"'7&'7&'7&'7&547'67'67'67'6'7'7'5$"2654
�
-
2=
@DC@=2--3=@DD@=3
-
���������ʼ���bb�bۄD@=3
-	

	-3=AED@=3-
	-3>@D�����uu�vvPm�nn�;bFEccEF����-83#"3#"&=46%3	5>574&'&'37#6734'7[��++)%65C(

		0!
>2��
�1=t)�)5%�%482i@E&(
3.GA1����.
���S[my�����462"##"'"'"'#"&5#"'67&'7&'&54>3267>761>32632632$264&"47327654#"&4&"26574&"26574&"26574&"2657#"&5476326262632>74&#"32>6�
		&N		 	 		
" $6	$G'

-

�� - 47)112MU2FZ%"			 	 		 &3)-")R-_


� O- 
	7!25$" &(Dt�!B6#
�		 	

	 		 	

	 		 	

	 		 	

	�.9iH2>.VN�*?$�)����".2"&426=4'#3#"&46327&#"%35#5##33�Α�Α�5BuF) -- !"13II##$$$$��Α���D5

+.@.! IfIj$##$#����=2#!"&546354#"#"'&#"5654&"32756=6276323276���.(
%"

&*
 ���\��	
�-
����BFJNRVZcgos%#/#/##&1'&'&?&5'&?&/&?2327674?677'///7'75'??'?�
7CTA&{Z"$#;F�e[yj�IP9@
F+:
>NOU\_BX@)J3�H,!6.CENd
�',�# $&9a=/�79�1��=^:�=D<�>F=,DC/DJC("?$A����1%#"'.546323267'654&#"327.#"'632�(;%:tKxNOwJr588338

+!)=	">(dAUpoV_:$:%?PNNPON>�Rk#"'&'467632357>7>'0.76&/.67>/7#"'&547674'&547632aAC
4 
~]

		

#� 4
CA
`?[e@	$Aa1J%���>('4,
#%98#/$#�%J1b@$	@e[?����2"&46&762?7�Α�Αr�
=�s>��Α��]Yh?.
����2"&47#�Α�Α(U�U��Α�ε������.6>�%/&?6''&766'&7.7627&>"&4626&'.>;4'64/676&'&.'&7&'">374'&"417670.#636=4'&'6767-

	N
!	)!��Α��O


		
	2

'	/].('�
		
	
	$7
Α�Α��
%" 
	;

	3		

!5
n*%#����X%&5>56'4.'57#.+"72>73#.'&#;2>7�
��h	
�X	C-Y
d<H�r~		
�
KI�'
	$����"3CQ[2#!"&54635#35#&'#353732326'454'.#"+54.#"5#3732'#52#"&5432���L!�++(
.�
		uU���`�[���<)�UUWW*


c$	
*�
\1T!*

����Ub%11"#"5&1&'&'&'&'&'&'&'454767676767676767670723135"5#35463�
 	
	
	
�II�%			





 C �^����6[2#!"&54636&'.14"&'&'."04&'&7676&"&306/.>1276a'88'��'88'�*$	

/	$|%Q)%/�8'��'88''8��IQ&/)

HQ&
/)
����7&7>7>6&'&6�W?_E*�*W?`E0�4P<;ZP<;Z�W>VFe	W=WFe	�;XO;<WN���#'"&4624&"26%'#'#7'7''7'�Ԗ��v��������W%W�/213DEDm77*Ԗ�Ԗ�\������%W%R^ddk
|D7�����'0<CLl��6&76'&'&76.76$&'&>.6766&'&67'&6&6.''0&'&'.67&67>6.'&6'&'"'&#&'&'&767>7667>763266.6a
�	?�
1�m

-
T		FE&#'f*3T
^(+

	
		)		%,P		���		L�

:	

<	

w!K$
2?#J2$ A5
@`
b

"k
F
0.K	S����-=M2#"&#"##"&=&54622763232672#!"&54634&#!"3!26S
('
#"
&<��j��\�,�


	

���\�r\��	����)1A%&?'>.#"'6?'.?6176&"&46227.547�

)*'1''#.L+3 
D�:j-**�'$ZJ3!(/��
z $>-'<2#' V.

=Q C�**��(#K05*'8.������0Q%01#547>7>?&'.623632&7.#&$#&5&7067672?B.,]rvy3��
::�q�
z	���	;9v
�*)"%txBy+	�/	LD6
J4���@Wy��2#!"&546367676'.6'<.'&67>4&*#"#"&63!22654*#".676766325'&'&7>0&".5&7676��;�';1C#	@=		73	��		�	2!	 )-4	%#	5��E&��|��
'!"'
	�ZG22!.;32H-"�����&>#"&'>76�MU,MU,!�q=l&5V
$7�k4!bj4 ^
r�4-F13!T����!3DL2"&46'&'"?2#!"&546337632=4&+"767676/&"264&"�J44J4�)�##��##-T
BiJJiJ	4J44J$C�#��##J#U-	�JiJJi����3F2"#"'&=#".5<>7>754.#"&'&'&76532�a_@5X"0
�D(V

L�E(�I?��		&	7��k	

��0�NGT\`c����%777'77?'7&7>721?6?77?7?''&76?6&2>77'/???>761?6'7?7''7#''767676'&76767?&'&#7'�###"@/ 
 x

��$!%
'%A$$%%6 	K
:(�	
;	
	��( 9
&	' 
+"%	)&�p
"?��qsvPS�xx$&" (uoV\>
&	@<	&(Mzfh?B)
 +.N--+$'%' *(?BO@		
&����"7?K7>32#"&46;7'&>.?6732+&'.'&67&2"&44&#"326	W?�		4BF�5		2�Α�Α�YZ~YZ~G	�
s$	�"	+"	V%	��Α��gZ~YZ~����2G2#!"&54637&676&+76.'.#"3!264&+&'>/���O�>V		A34+	3���`��!=
�#rJ$X!	V�)>J^j���7254#"#47632#7##"&5462654&#"733>32#"&'##74&#"32673>32#"&'##74&#"326747632#32653#"'&7454&#"733632#454&#"#*
&	%,
''
Z&	'Q

:&

	'Q



5
! L&
#&M]'	#
'�		L0_
	%(
	Fl
O
	%(
	Fl
# 
	
3		.		D��A�.6%#'#7'#7&74767676&'&>67'?If.!�$!e"E*;f!1+2��I:rkrTWZ�`QY�Of!$!�nG
5%"37)*= 
!.S�N�,2.I29�z�5����()%%57.#>2632&#"'>32'.�����@~6�D[j[��#<<#."4�)�MM�)11����6��6ȀG8*22*1110o?II?DAT�����02#!"&7>37/>16./'7'67�"91��"91�_
g	E:4)s�)��))4)��w
qd
0=
@n������.;d���7#*&'#0#&7&6256&"#&47>323226765&#&/&5&1430367636763:'#/'"'&=47>'.'.5&632#.#&#"#"&'&63216766&&7>&7�
&),(V�
2
$!!%4!!�!	
#	
'$
	3�CY�?��~s
	I4&�
	
"

e
��������	"
#h&)?:T0			M����#32#!"&546354&+"#5#353;26'+"&=46;2�

��

@(@@@@
9@(@..�
��

�
��#*('K�#'(H����=Pd"&4626'7'&'7'&/2130"''0&/377676'6".#727".'72��Α��=%	
	

#

"3(9	




	

'Α�Α�*-+,-	3H	-,--	-6<	
Q6����
)5O62'&"..7>7&67>'&6'"&=462746#"&=4632>NG�I?�>i`b
UT

�	
OR^�			GE11E%"!%}CG=:�e�`
	T�
�Q

]�1		H		�

G0++0G

!1! 2
s!)19+73272+72+732+7%2+72+72+7�"&GD~!%F�IF�GFFF(FFyFFKYY�1Y1Y61Y�1Y61Y����<^7>32"'.2"'.7>#"'&'&'&'&547>76 '&'.'&54'&'&'"76767>�
9C)	04��
I!V"2+%v	�
X�	
�� ���.:G S������$4E%"'.'.567>7>3%327654'&#">'.#"?�
#/�";	- '48%(,
��	--
.$�	CB

TM��%$3%-L^
#5
)22	�

����#'+/37;?C3#75#73#75#73#75#3#75#73#75#73#75#3#75#73#75#73#��xp���xp���xp����xp���xp���xp����xp���xp�����ppx�ppx�pp(�ppx�ppx�pp(�ppx�ppx�����#$.>.7>7>76.'6L)5!)58Gs8	K8/fYH+�H5K;+3��5!*5!��P~F@e$>]4m��"C2.
)�u;����'/6"&4767&#"&546326&&2"&4264&">L


$'7L5-'UI�������^^�^&X

8*	6N"q߃�����^�^^���M�$"&462'""&54632654632L1E22E#".0G12"#)5##--?F11F1�-#".."#5)#"21F1��q�(Vfs�7#"&=46;;26=4#67>76#'&77>76/6.'&.1&677&'#"&=46;2'"=4;2#754;2+"+"&=46;2�1/.*75/62
G2$q%;Q�9,
7$>4R60 

&>(D�(

(		}


�				p�(	,5
+Y1+9%">,%)&".#@/	4C3	

93$
�
(

(
(


			T���
-LWo�7+76;26'&++76;2";2#"&7>;#72+"&6;+";2?6+"&?%2#7632+"&576&++"&?3+"&?>;2+76;2?6+"� 	#%�

 (�90#	:	�$�		�IB
/5!�+	_�.(#4  
"c�#(!(	@bJ(

����!'#31/#?#7�#���{p�651cb
os��t44<//.=
&J�2����%#"&4632.#"326XA#_5g��g5_#A
6*>>*6�R#&+�Α+&#R>T>��*�.y�	��&767676.'&'&76'&'&0&'&0&&'&1.'241676727"#00'671327>7213"767676'&'4.501&'&'&76767632767617'"#7&'0'"'"#.76&'.'&'&'4'.'&7030236'45"37>'&'6%&'6&74&5&'&5&76767&'&'&'&7671676'&'6'&272637'67'676&'&67&'67&4>56'&'&"#>767&R	"8		
 
�%	"))




�,H+#	
)%
  � 	!0					


	
��
"	
	

  
		2 		'|
	]
)
;%

$X-.
-			�V


	15+*
!$% 


	
	

!
�



%	
			
�+5EU3#5'.546762654&"'3#5'.546762654&"%!"3!2654&'2#!"&5463~44-.@�44
.-@D��

�

&&��&&8�	&'	:

��	&'	:

�
�


 &�&&&������CH767>54'&'37#73'##".5&#".7547;2254'326&�
	O
	4"�w�ZJ![!&R
T&6
�@$@&
3+��7	

#/�

)$J���"'53'3#%#512>'.'&#4>1#53WJ�>>�Bj<3P-7]<`6[v@8S�__"JJ�=�@v[6`<]7-Q2<jBS��_����S$"&462"2"&4%&'!"&5463!24&/.#'.67'"367./1767267)s(:=��XI
	$

 ,h+.#%(
"S+
!'���5390Z��$KO$


	����
2+4546264&"7�\��\�Z5KKjKR�����[���KjKK5!K����#53+32&+325��0`ӽ�__q ��~�T��d
������-159=%#535#5#5'#53#5'#"'.7!27&6?6%#53#53#5'#5^BBB�BZB�BW
C)�vn8�	%+�B�B�BB�;�==�;;H<<<<d	.ciB!Z':
$;;;;;;H<<����-08G%5!6767>'.#"&76767>357$4&"23676&/&'��YH0!"!H)("M["/��
'sZ&
	#0
162R@]R/!"*4	.>>XA76�


�bD!3$4=B����
!'/?G7>77&'6>7&7&504576&'67&&7#!"&5463!24&"2Z(C�2!@�9' KE$?#DI'-(	2'4/0���`@^�^^��3$,K+%�071	�
4(4
:".d %0���`���^^�^����32+532654&+#�rE> <_:��V_dQk@�F?[*P@&@a?@`7������
!)����>2&&#&676.2"&4&2"&4'3237.670>636"'&5"5&?"1"&6323&''&676767.'547>3>367.>>2'%6.67>4.'&"23267&'&7>9
	�
�
		
�


	N5j!@
	--H


 b9"
$-	6*"(	��#'
G		3	�(#	H�

l							�h

	
]
	(	
.%			�
O
.+		V
.
O����
#2#>%13#67'.5!456WANdE#-�3
TQ `AWGDu�Oq�S�	.%$/	�k"/0ijY_��*�%##5#5354632#"3KdQQB7$

(Y���]F<AO<����#=2'&*#"&5<&4.'&546&"/&#"?62327�ӎ`�L
N�O
:
IO
:
��hT{-
Flh0
;,t<,����####5353533##5353##5!###�@����Z����@����������@���@@Z��������(;J73##576=4+53546324&#"#576=4/73''7'73733r]M;�	&55*/E

	�
!	n
*+
&
&�3�"#
�32.*
 ��"	�	(�9-

-%
&&����S�72+"=4;2+"=437010101010"01"1011"11101010#0**1#*1"#"*#"#0"1*#"#*#0*&*1&#"#*1&#*#&'05&'4.#04'.5.14"5&'014&5&4&4&4&5'"&</0&1&54'4&'45"41&54&<&41&5<&<&504'41'041&5041<545&504145041<'45<547676767676767676320154+"#54+"#54+"#54#563232=4#"#"&#"5654""#54+"#54+"#54+"54667676���.;ed<.*33+
	

(,,(�4444}AOVSOA

��H�1

Z�H	LL	�����	&>.'&7667"&4632&760m5	%#�01}~�~~Z4/	
	M`5m	#%%1U�
	19Y�!4��H�gow5'.54765&'.546765.547.=46723>54&'&765>54'&76"264264&"6�ss�
�bQiE9
4>N>dd>N>4
9EiQb�
��J15t����t51
-1d�
|h�UDr 
g>Eo\
 	��	 
\pE=g
 rCV�h|
�e0-
�
"����"%2#"&54632&"327572&+5DDg]��\[A?&nNN74&%34v�
R�\]�B?'NpN$"q50*Y����J'.7>327#!"&5463!245#"'.#"7670703'&'4+76,*
,"'�!��!!P!v(&4
<4.!#O!C7
5 *-*C��!!P!!�"�(*$:<, 
 
��c�.=732327676564/&'47>32753.'&"67>'.+

5'*27"N\	O;*=
,f%IE�+D"(A"<-0	1'* #[Y% 7@+=���"�EA1QU.8@���%3!!'S�����6Q��!S�Q������������	%'%	&54'77E������<AA���<�ݡ�����
(
"@@���< ��@�*N74654'.54>54'71"&5>54'#".5470>54/p
O,+!(!�C 	D�
8* >105,9)6
CF-4,	 *
P��~�")JQ_��*��������67&'6?#>'&'.'&'4.77&"&576&''.77>2"'&'&637#"'&'&'&6?654&'&'.54746165>'&767674765&'.#'763263&67067>367632"22#66763267&#""67>76%2726767&'&#"&'&#667676;2&'67&76767>54/0&5&'&7676'&'&#"767&'&"'&'&#"45673&?67&'&'"276'&+"767#7>'12'"&/327"'&'&63=.%
		n	
%.	? �	

�
(/((/(	


#	




	(

	
		��	
1		t

	
& T  &	(=5
	f>v�
	F<)�


1

		+		




+			
	4
�

		e
%(--($#
			
			
			

#1	
	+�
30+..+-3


!		!

	
�*+9	0@@<+*�	�

	�������7"&5/267#"527654&654#"0#"76746767476'&#"47>76'&#"#"7676'0#&327717670767464676767676767"./3276732767>54&#"'&7>7632'.7&54632?64'"=32�%4%i��

	


+-*		
	

�ttD0
=9
DF9P		P


�	@					!	_P	

	
 �


1@<)���� 2#!"&54637#.'#3����Q#	%P���`�6�-/0"�g����!.'>72&#&'.=4676&#"#"&#"0+".5&54>16&#"#"&#""3262324'&'.46546;23262�''��')Nn$p$�(��(&s)�k		1Fe
	::	
eF1			+		+	�����$>&''&'&'&67>./�O:
 # &
o"*>$!	
	THN(_-.R&`J7-#AM<g*:1*!<����6>%'#"&462675&5462#"'"'&46327&54264&"�
+�
'/?L6,#2"2e9))9(�s+_=>I06L2"2",8}(9))9����5EM2"&4654""7676547676762+"&=463264&"��ed�e�	r
X	/+<<+�+<<+)�qq�qpe�ee���
�
	
q"	4<+�+<<+�+<�dq�qq�������<%'.7>767>5&540'.7>767676763636~	.*�
&
 �<(,
43&#7Jc<
�	+Sl�����DZj��������!&>HUk�����%!&'45.'&>767656.'&'&'.7>74&5&7>7676>367>7>72>5&626.5&6'6&'&'7676'&'.&6.'.'&'&7>36'&'&6'>7'"76'&'465.'30'&'&'".4173&'"7<5&#>7<5"'&'&7>7&#&'342;&76'4.'.'636>&&>7&721&'&7&726>7>.'.56'.'.#".7&6&7>7&'.'&'&36�
�Z
. 
%g#��4		k*"	6#-6, 


FC�	
	
e
"��*)=�	
9$S

	�	#	�
`
	
$!�
%*!
�8/V%	 %!		
-?%(|0
�"
^4	F
�$'?^2


!%&
		!)
�
 	 
;

/	
	

 
& 	Z
)/
#
		B
'	
		$(
	
���">[.7>3267"1326'6&'&>76767>320676zX/lȯ/6#q?FpG3C		7a�3�	57K�/+&F-)
!�

.�"3?�6ȯ/l�W8>��
6�>u".)KEP&/ 	
6
	"	!����4!!75##"'3262654&/.546327&#"#"'��@�*"-"c'
	
!)"

"��@c��'  

	
" 0

	+����@2#!"&54635##"'3262654&/.546327&#"#"'����*"-"c'
	
!)"

"���`����'  

	
" 0

	+���-CZfst?73'&'2#"&546%016"'&7'676'%&767''&>%2#"'&'&'67&5462.7>3'654&'7@<1N/'1;C3$)z/	
-?��.'.r?1N/'1;C3)�	;H^uHQJ "":';B +#'�17D5		02J*(}1
,;,&18D5	$'<A+'i]uI];6Fw$44#!!0����.!"&5463!24&#"326=7>/76&'&���`�<
!
1(&, `��.�*L
?:


@����7>&/#"&54632�SFK[>p( $''# )NGv 5ks6�L**/%#.*	����RV\qw|���"01*#0&1"1'&54745034625762203175450610610>1762001310%7?5'1&10&10'1&<15/?'575/?'75�]��a`P`a�xQQP".!/\/"�u;P\T-��."/)QQPXQ"/Ln5iooJ77�.i77b.//��\4���C".511[K\�[[V...�.[������%6Rbv%+"/+"=4;254;2#2+"=432+"&=4;272+32+32+"=437#!"&5463!24&"7>76! R-�.�0"��"/0""/>_�`N;
X"�G,*G,*GG<G9<GW��"/0""/0�6NN61J='u	)C3'&5%3"&=4&3#'546323#%53'5767'&=325N,�+<''<*%8��M*#&( 	-Mo�+
'"
M<+MM'�+<.#MM�(6F
	4�q����	''7'7�@��@� ?__? @�$�\\�%��\�$�77$���@�19Aq7>3>32"".''&'&'*.7#"4;2#"4;27&767>54&"&'&'&'.5462v


		

���(XX
KhK
	^�^�. 
A	�  @  �
,1(3HH3(1,	
'
/@[[@/
��$4/5373#576=##576'H-�m_�'&�'l3�3	2	6��%��%&���	>>	��+�,P#"&54632>'&'&'66&'.2632+"+"=4+"=4;2=4;2rnSg��gS�:&.��/
.��7�&"* b1i((0((0���gg���)�;B�^B/	)1-r+&U#* 
o0((0((����3#73#3#73#����������������������!&=4&"&=4&&5�,,*+$)+,,��t������$2"&454&"6754&"6324&"�Α�Α�"!�"�"/��Α������ ��=�����
%3"&'357#&5462#5'`l!q�q!lhh��K
�Α
K��@7AA7�iiP')g��g)'�������6GYe%&'7&"&'>='6267&"6267.'&47>330#'236"'&'.4"'6?7*�*h+&$:FF:$'�

,d,

0��>�>,,>VcU?,,�	#:
�9$	$
�4&&J	
�
�-F%$G-�
 -EEEg:T&&U;g�(5({

����;g"/&7676?6=4/&6=4;2#"/&=4?67#"54;23254.'.54632+"'.#"�	>

/���20����0,b#7)(,(V0).&<%j�jj�
���kk�k�!D@
	@@ %%#53%!#5#5#35337#3537#3533533    ����@  ��@@�@    �@@�  � �``�� ��````
=�C%Dsw����7537#54&"#546253+"&53;26'5#5462#54&#"32653"&%"#"&/73275&'&'&'&'45>32'&53%"&/767&'=>2'275&"5&"2'53#'#53h!4D10E6%&5�5L6'' '6&�
		

)
�F" 	D"!)%%�?�41DD1&55&&55&&&&&b


 qDD5
		*


R

Z�^)����5DLT\dlt|������64>'>7"&.'."'&5476324&"264&"264&"24&"264&"264&"24&"264&"264&"24&"264&"264&"27&'&"62X
	
#9 B�B (B^^B(��XXX(>�>	O��%
!(
2��O5005OBB11B�SStSStSStSSD'  (
����	!-7?R"&463235#737'2#547#'35##5##5##54#"35'5'57'#353#"&7'326�g��g���`o)F9{�DT�E
DEDD$	
8�Α�� �?�.

471M|$0!!�gV

	,��8�
4n%#"'67>454676765&5654&.3276'&#""'4>;>3735467;23232+!".='#"&'�6) �&.^O8		,9�Vb
	��
	�&:/I^,�5
(<[:4%HU		K
	�	

�
���
%#"&46323lLLllLLl�Z�Lll�mm�������"4#"&'&546322>54&#"#".672654'6r<R'(F S{VSS=>/mKPn/?@B-$9%8U�?WSn	+?*mTX~�9Qf(PttP(fQ9,A$5AG������!)>F%#'#//75'73757372.67"'&'&476762564&"C	
				
,�^8�8)8? 8�8��Y~ZZ~Y�	 !	
			E0_87*80?!87�YZ~YY	����DKi������7&'.'&'&"#67>3021'.'&70703'.'&167&'&'57601&'&76"45."&'&74"'50>767>0&'01&"'&167>76'0'27263231'&'.'&'6160&'&'61�"Q

.		K"#8)'4
		R?(&$
�
�D"%#
F
3�*
%=C"'�"


!	"
	(
	)�!		$%\


	�	h744D	"//%	,
&0		
	
��#	�
	
		i

�

�
�����@�&9%57>'&5676'54'&'.7>??;͗

e%'E=�^6L;/=�� 		�a

.PLI66	#8
U�
���
<97*l	#/6#	1������$)&'&67%6'76&7'&67'6/��##i

����a�tS	jZP
�Q
\-!1(7����@��=	�������">F%+3'&=46;26=32"264'"#"&7>;5#54676#&264&"�	�k5656 k(((��(%+$�k 38z�?.)&&f )0���(1l7
)		f �����/2#!"&5463&63265#"265265#"26=&6a'88'��'88'2	8�
��
	�8'��'88''8�	
�
�8	����U2"&46#"#"3232#*#"&7676#*#"&767676&#*#"32327656323276�Α�Α�	|	<	
5

'	
#.[A	��Α��		F5	B?F+E&����!@GQ[#"&=46;2'&#"#'#35>32#"&'365654'&'&'&#"32767&#>33264&#"3264&#"@�5KK5�5KK�	$
	x		S


 #"(3\









 K5�5KK5�5K��Z
F%%"'fx����	$'%'762#"/7/7676/&'&>&5��(Bg��fE:0
�]$#
0"-��{&�9b6'�ff�#P%
"
!)%0
@Sk��>F��?�?V$2"&4&2"&462"&47#"''&5476'&5476'&5476632264&""676?30Z��)Rr$$LO	8	33	8	NM#%rR)�`����5+-�L)..)$6'
;,5AA5,;
'6��X}XX>6*,8
����2"&4'616/&"37#"�Α�Α�eJ�
"
�ZUTK
p��Α���w(�

�cc)����x#'+/37;?'77'7'7'7'777'?'7'?'/7'77?^6JN�."7Z %#	8	8<+!)#+.|G7-+3=5PCBY".',";##B1 
"
&		/
)�@
H96�`�-2W�B����=A57'.546'0'.'&/?>54&'514"�D66&/$:MO�<

	)	&,$-5+?V&
,>҃�s|57"';6[<<Z�X,
&1	:%*>4\@0*
(
<��7!>'#.'6X-~w�x2M
)ps^`	5EE"�9m<Me�>`�L-T?-
Q����
'#"&462264&"��.<Dbb�b �jKLiL�&c�ccF7,LlLLl������AE$&/&/'"&'&6?''"&'&6?'&>7'&>76767'�	-
^4-5-
]-	
.-�^]�/
/ .
0
Z
/
//
/
ZK Z����67&>&7&'&'"'3>56'.54>32@<
��w	C
!,z��'/)7
/
("2 
/8B�w	��<	+)+&$*!	"&

������=%/&?6?6/&/&?67/&6/&?6,�	�-�]TD:�4-�\_92�+�	�*��"�JRA,�V$�H\7'�*�����.8"&462##"&/567>324&#"'.'3264&#"32�$3##3XC/m1!.:aGB//�$&%�, -- (3##3$^CO!,&k'e/B��4%
&&	"�?,,?-����A��%'"'<&'.'.01"'&7<"'&'&'&656&7>4645&>'"'.'&0#"'&'46'.'&54'&7>5&"5.6'.767>67>7>7>23>32307>302

	"				+%
	>59	,

	�N	
	/ 	'*
	
$$+-


,	$*

!

			����2637??7'7''''/'7'?�'8P
C]8Y9}�R�sf�|�1.�+l&
,ND&@'$J
.3D6
{l&Jc&Tz8a	%��E�a?MY`ls����%#"'232654'%.54632&#73254.54632#54#"#"&'73"&=3255#532+53254+5#532+53254+54+532;2=3+"75#532#54+3#;2=3+"7#53##7373#5#'#��e#$e�3.5��3.5�e%"
e�<		
	



v$"'

9'9		%?4';�1DJ5+#1,"10EJ]

	
		
M777H+HH+?=>
		?


	U������/#?6'&'&67%6�Dg2
��f�]��"L0
i�� �����(2#!"&5463>'."354;2+"=#����pGNhN^DD^���|��W84FF4D8����'575'7''7���X��eW"XVY@����-uKK�:55/7����#'+/39=AEIOSW]cko"'3'#4=3#&'7#&'7#57#57#5#5#57#5#5673'5353'53'3#&'!5353&'!'673'53#4=3�v0��gg�bnfggggggggggggg
ibgggggggg�
%ggg��S
t
tVggg  �
F	
#E�#EhE

#��

%JM�gs��
%	R

"��y�,Hk'.'&?6?>76367'432'&5676322'&'&#&56/&'&74>76�$�
4
	�5"�

�	
4�	
�+D!�&�	7"





��%�"		���	}�����
7#&'&761'''''#'&'7&'7&'7&'7&'7&'7&545'767'67'67'67'67'67'6?27777774&"26"&462654'&5'654'&5654'&5&=#+&'#&'#.'1#.547&+'&54704&5232673275#327.#&�,+-"%
$"-+3378:;	7;	16(."".(61	;8	<:883Jg�hh�OYYY|
)

�
	
					

>k

�" %$'&&&&'
#%"	


,'
84
A?GFHHFG?A
48',!�hh�g�~ZZ~Zy

Z
p@$


	


!eB����5K>;2=462+""&5&54.+"&=462;2"'4.5&6327632�	c !"d

e"! c	$11		CC		a3


	

	% 



	 %	

	
��UUvv�����/Vao|�#'"'.5'7#.767>;6&'.'*?>72>'"5&'"&636&'"&63&&54&#"432'.'&'&'./&6762?6�!
"J%	
	
,0d$#4U 
I,-)0)
(D@
�
+(%*//E4:L
?


	

	

�}\&

	4&-,*m0�Nm([)/)#OO
#f 8!,4&	;C
K�"


		
	
����22#!"&54636'&6'&'&6323276���L2C!	%.B@���f�@N		 *h8
/>4VR��`�*U�7"&/.>;2326?>;2#!"&/.>;2326?>;2#'2+"./&#"+"&?>3i7!$$!	8h8!$%!	7�8!%%!
8`pK
K	p
pK
K	p
�pK
K	p
����BRa2#"/7'&546'&'&'&'.'&>76'.'&'"#"07>2#!"&54632654'&"7�m'(N7$2
�			


e���B^0.�]T#E'(56M
0 &7o


	
��`��]A@1.]A+%R����/7''#/'7''7/5?'77'7?377264&"''#/'7''7/5?'77'7?3/3267;?3?'�	

�/""/!�/7'6''
*
$%7&66'5%$*$/>,%:
			B!/!!/2(
#&4(66'2#&)'$4'4.
:&+>/#����
?I2"&427&/7654'&54632&#"23767/"&63376>54'�Α�ΑE9k�&$DC?P@W9c<		R0"%<		D3<��Α��gAl$+��
��	G�J6 #;6/�_		��f=92%+����)@Q%'&'.547>''&'&'&7>7>5476'&'67632%'476"&'".rG;14;3
Y6T�Z!"	
"N

`+#��	?y2
1)�W $	!/_0R�mU-	2G) D	T<"Rx(
@�		


����7#7&546;#5#";�W@`KU@R7&2X���&gMT��8;m��.�533�p8R^4y@�*������<�D5?G_i{'&76701#"&#"#'.7672326732+#73264&#"&54?54#"#>32#5#'26="#532?'3373u

nI$%*#�6& 
"r3$#5	"!
9
##9$B�M%�&a
	J	�ss���@�&BLcu+534?#"7#!"&5463!276'&5&7&'&#"&#3262327>4&+353274&#"363232737##'##"#3267.M�� ��@
	
	
>



�3t&	f$77Z
	
��`�

W	(	.(�/

cQQc��l�$+571#"&767672#&'&'&763276&'6�" �

_3�U*'(%+}"
�
3>Acf5</x1�Xa-��F29H7.^
J'Gyd����;`hl~�����!$"/&7672?6=4/&6=4;2#"/&=4?67#"54;23254'&5432+"5&#"6"&4624"7#&54+#5322&4+3%/&=4/&"&=4?6;2%/&=4?6=4641'"#"357057&=4/&/&=4?6721200#'"=0/&=4?6'3'<::9:::+
7		��%$=>O===%.�$>%===Q�=>==KL!B!!B	BB	B!!B!B	.

�_,		,_$$d�$$G#	^�

##G$$*##F$$6����,U7>76'&'&767654&'&'&'.707676'&7>7676'.zZf�VR
%&-
X+C;0-@(7!5
�cRr�c�
v`Y�!
FE')#+

FF"U	8b:;8 0
*-;:.IX[x
}���;IQYpx���������&'&''.767&'.546767&'&67667>'676&'&&'&'67673276767&'&'&"67&'767&''6&'6767&1.67&'67&'&'76767#"'6'&'767>54&'&'2&"&462�*47-	
;!!?	+52*			@"!;
!"

0�
'	



.
�		
_�"!4%


#*'z""
2
�!#/%/,#

}&&),+B>*		,*	*?C-R'6�
�JF
A

aN3$
��"! 
d	$10." 
"
!! &&����
#'##73'#'%'7>�MxNyT)A���<�
�� QQ���	88	7�I(L~���%+5352654&5475&54654&+532#"'73254'&'&54632&#"23#"=#";#"&54654#5654&546;7#"'73254'&'&54632&#"'2#327#"&5&634#"e
j+""*!	��
+

K�+"!*"	� #_##,-9�
!	
	!
  
"	!*"	
<"6�	
"	 
"
!		"�
;"	
D+!#
,&%.B���������%72'47>&'&'&767&'&''&7676767&'&'5#"&?#"'.7671'.767>7.'&67676'.'&767>'.24767>2630>20127670476767>563206767632266'0"676'&2>65417654'.�)1%#


	

	
	<
ME,!9^Bw
;/%H
-HWhK{:!
'
$�r 	
"�p[
	EW,
$


 	"

( 

		%
>%$&0.75"*)V	Z"">B'+	 


V

	
	:
		
	
�"-&j32

��337#'e[��08ਨ6rr����YY �� ������?''373�&&&� �� R��0n�\\�J��bb��$��BB	X�(	0D��7'##7'3'373537#5#53".46767624.'&"27>"&5475"4753#5##5353#5##535&/3#5##535'"475'"&5475'&5&5'43>?##7#'#077'373'k4>>>']>--�)d�


			
				
	W


P

&	&
	P

Y�AA?>@@�Y��**��c+<�``���ttt%

		%D		
)��)
Q((+��y�y����%./#.='./&/'.?#+'&6?#'.5'"&'&'&'&4?67367672>?>7>;67>2?>0726?67>?6766>?4567>>?>7>3>?>6?67>'&%>'&6&/.>77>/&�
	:	

			
	

0


	

��

	

X
	�	
:	
	


 


"		
 "
6	
	$-5:/'
	
-=(	%1%
m74
,�	

	����.%#"&#"##"&5&54622>3232632�
7%H2B"/"
%P
C	YNw"" ��p�7#3#3#3#5B22e3�3�2~BL�L��L���
��L�)	9A���7573'7$"&546253#57'#'.454547>;654"2'+'.4547&'632&'54#"'&'#5.?>767>36'7&54"2�&&)6�::�:Y	 	 k	 	#A
!	
:	2)@&
 �.�`

x

�nn��w 	Z((
T		 6^1J&

'9((
��y�#'#!3'3��Y>>Y.CoqD-���tt��X	<�D=PWfqu3#267#"&=6&#5375#"'53254.54632&#"#327#"&5463234&#"'2#"'5362654&#"53�""	
�
,&_,��"!SW !(%"X.
	
q$#,'	r,/&&?	
"�*	)g�;$
$^	(
*+		!('#..3+%((2
�{B	!����v�!#"'53254.54632&#"�!090 l\QKTH7 090 iXLBDJ1%;(KO �.#8%KV�$���� 327#".547>772#".546�-E&R$Y;	e8{�%
1r"~i<O~�4$4'X8H]"r,Xn���77632367676"+"#&#&'&'&'4'231'&'1#"#&50=46;230676700137654'&'&723230#"#"'4'"'&'&767621450454&'&5<547676362<=4#"&'"#"76760"&747676'4'&'&"#"1"541456767632'00?465632132'"'&5<:232767>76'&'&5&3232=B  ((TO+9%&)'QA�

		"
+!	�
	,	
#	

	


�##$
	{
!	:I�
)**
(
j		



�

	
"	udZY
	
IH5��@�(8r��870=476'"'&.7676232#%#!"&5463!2#0&#"376767674#0"1"45.'&'&#"#"6761323250=4'&'&'"&+"176760"1&'&'323254=01767656'&'*&1#01054&5&+"&'&'&'&'&230;21676767676&7&'&'&32376213676767674}�	"� ��$
		'~%
	
�				�AH((926D # /$.

�$#


���`,	Y2eT
<j	Y	T�<
�	
0

��8�%'7'8�������]]��\������2#!"&546337#53'#35�##��##�Qo>BvX�`�#��##G#W��tt��r����2#!"&54635#35#75#75#�	

	�l	

	�(�xxxxx�
	�l	

	�	
����((P((P((����27%#!"&5463!24'&'.+";2767>5�__��`*GrGr�66�`�;
,<,����!!5!3535��@f��YZ��@
Y��YZ�x6bu~�+"=4;2+"&=04.#"+"54;2632##"'&=463276/&'&76322'&"'2#"'+"=4>264&"&2"&4�))`


))$�	$!5 &!+:�.?@-!)# $$4$$�"��
#�	{�Q�#"

-

i?[?Y�+	�%3%%3%��i):av�"264$2".466<.*#:>732"#73262#67>'.*##%64.*#:>732""#�������z��VV���VV�
x!G 

	�%			
%
%�x!G 	

	X[z[[zk-M\M--M\Mm	Ge�6,�-	"`?	Gd�6,����##"#"&462&'6&#"3762"&4:
"#e��ˏ	^GB]]B%R::R:

�ˏ�f3.Fk]�]�:R::R��@� ,8DP\h+""'.+"&=46;2>354+";2=4+";2=4+";254+";2=4+";2=4+";2ZI>>IZ�$88$���������������#((#�.##.��@@v@@����&<Ngu��%'&767>;0?'.7>'7>&'&766'&'"6766'&'&7672"67>/07'&76>?'&'67'&767Of9(
)%)RM
`+!0% w %	=eC
!/0'G�22+!)�.�46EF$�&�S4(�
	YK$	
B�	
	
'7(2-"�

 

G2��##
<	
-

	Z
�	
	����G1&7>01'&".54327>3270>7>�"$
&',5+:3'<#5	)bBU!1&A5f7
"2�B
	7 	`	fX1!"4(���� ,%##5#546;2'42"72#"&546"32654&;M
ffEE#i��df��jVuwTQzv�fxxf
9##"��hk��ge�-zQSxsXUv����'@2#"&54632>7'#5"'774'&7">753&654'&�i��df��VxS#>%!	]')""=j@_$" #	0-;;��ik��fe��$Sw%
)&&"
�]+''"
9V:<����.0J2#"&5462>741'#327#"&'#53<5#53'7#7654&#"67632&#"3�i��df��j!<%"
�[8
%-GAxCN�vUl>Q&:"!F��ik��fe��=#82.50		#Sx�<Uv]$	*0
	
����!%82#"&54627'##5#535'#53'7'7654&#"'3733�i��df��jlDR@=@@:	x�7@evU=WQB(+B?&��hk��fe��=c$$88''8 Sx�3-Uv9)$3V
`t����2#"&546"32654&#5#5�i��df��jVuwTQzv	�����hk��ge�-zQSxsXUv�++P**����!52"&4267&'327#".547'703654&#"632&�Α�Α�8_�$!.&'O3X�wS4YJ!D. (0
��Α���:/`,,4##0`L0�Sw2*!4)����'3:2#"&5462654&#"2+5254.+'2+#526&+�i��df��jQzvUVuw�FF56"	^2
"?
��hk��ge��=sXUvzQSx��l'Ol.,�C)����*1592#"&546"32654&".''574575#5'?'5�i��df��jVuwTQzvM;:D	@?;C�qq(%'Y-��hk��ge�-zQSxsXUv�F@F>>f,.-/:5++����:2#"&546"32654&>32#".'332654.#"3'�i��df��jVuwTQzv�$#5C>+'>4$
211��hk��ge�-zQSxsXUv�*++4P.$.(+",11����r2#"&546"32654&2742763276;#&/#"'4'#"'4'"5'#"'0&5'#"/+53767463274>276�i��df��jVuwTQzvQ	
:3	
				
4-
��hk��ge�-zQSxsXUv5l<

P@
	a
,	 \

LH		W_WT

Y9		LbE\Pb
����^r2#"&546"32654&3#&/"/"5'"/"/"/+53767627427627>7427624+54"#";2=�i��df��jVuwTQzv;33+F��hk��ge�-zQSxsXUv�,S@:HQIFN+
I	Z

9PCT^-
E3
]	����08<2#"&546"32654&2+"&=#"&=4732354735##3�i��df��jVuwTQzv�6��)7l�ll��hk��ge�-zQSxsXUv��6�6se(C�����'082#"&546"32654&2".4>"76'&3254�i��df��jVuwTQzvr:*		*:*		G,6%=	
,��hk��ge�-zQSxsXUv<+/6/++/6/+Yd
	.i
Y?�A9AL_d3#7'#&5#"&547#"'#6=3632672354#"#632'3264&"75"326%673#"&54632'.^"c$=) ('  &.
C)!"C0%7��--�/�d)+!+*)*)$+"--�6t
B		
�P($	!!+m00)!$*&&����N_��$2"&47'.7654'"1'&7'&'54>767'.?4763226?6'67'&3&545'7654/&#"32?32?322"&4

�$

.<�,.


	
(

	7�
�R"#	l

�5:0'

&,!K<
!"70$

)]

%�`

t����0['26?'.45454>?62<.'&'.3547635476�
A)fM&
316

.�/KDD/.
H2,
%-7..�4 

 4r
??$r��E�-@F%#'#5.5462532654&#"22>54.*#27&#EXCp(!%cf���-E8� 		
Ft`[��
	
	
�R9rK	>>lGQrr_'A�
#1%#HBCN]�����<_i!!%5"'&'>54&#"'22#23235".4=372><1#3#"=463274.#""'5632��@
<		$


d

%��@r!m.*
�
	
 -E#���#Zh7'&'&7>'&'47>76327'&5<5&'&"#&=76767676'&76760'.>7276�3$#�(f42,E%? 	d(\N;	,:�m	�4
Q!e"(
!!%$,y.	"s7%G.
+'
1+1,i*4
� *%����c2"&4264&"2"&4264&"%'''"'7&'7&'7&'7&47'67'67'67'627777'�Α�Α�ƍ�ƍ��������||�|�J=7$

$6>JMRSNJ=7$

$7=J
NSR��Α����ƍ��?�������|�||�'$7=JNSSNJ>7$

$6>JMRRMJ>6#

��'�'?/?557`$##T))33d#$$T33),,+y�--��::"++,��::��-����CIOU[ag"&462"264'&/'6373#'#5&''7&'#5367'76?#&'%#63&%3'6&'756_Α�Α�������8-%.8.%-D 
;;	RR	;;
 
;;	RR	;;�"��"�"��%.8-�-8.8�Α��N�����r""+R	;;

;;	RR;;
 
;;	4-8.%%.8p.%-88-%L""���1Iqy���3&=4'&'&">7#&#6726&'676&'676727""'&'.232.#"'.'"&'5>326="264&2"&46"2642327367632&#"'5.'"&'6�

&
	

O

	
&)=!(&?
:(!1		1!(:
?&(!=""7,�

* *

�xPPxy!')

)&@@L""
3


++
������r%>7#./.>?.>?677'7'=57&'>&'>&'>4'�

#,F**E-"		

		"????,

	J	(
&#+!''!

'#I7.
5)#		#D4/!60+
!<-'D$0		7..��.7		0 U*1P-1-713D#
&'544J����y����&76567<'45&'&54545&567>767>&#0'&5&'&7674'&'&'&676567>75'&'&/7<5/.54'&'"'&'&?'&'&'414767676367654'45&5&'&'&'&'&'&'&'&/5'7>32674&'&762763676?32?#"367>7676767674676761#"7&54'&54'&5476'.'4'4'&54'&43607&'.66'&'67&�	

	

			I	W
D)!
I&�+%&#%@	
		
		8	'			


	
	
	&-
 	%		
9,:L�8'', %%	������y�WS��<232210##"'"'"&#&#&'&'&'&'&'&'&'&'4&5&45&547<74656167>567676767672636212":372676767676767676767676'4&1&'&'&'&'&'*&#&67"#"'&'&'&'&#4&5&'&'&7676767"'041465<5<5<5456767676767654'&'&'&'0&673676745<5<5<645<5<5<5<5121747676767636323676767>70'&'&'&'3"#"'&'.'&'676767'&'&'&'&'.'230323276366767676746567<5<545<54'&'&'&'&'"'47676767610#4&'<'"#*#"#"#41>12676345"'.#4&#41:36702546721633230"""02220#*#"#1"14=46123#"'&'&'&'&'&'&'.50'&'67<7676%0#&'0&#476767676767676367676747654'&�


(+		
5
+


+	
	
	
(!		
'/
u

		
	�	

	f
	
	


 "
		

	&

		
�			
	t
		





�	'		
2#

,A
&


-<

	
#			2



	



	
	
	



	

:
$�%	
	


	

		
		

	
&
&,


 

	

	

���ek66&67676327676765&'7>767677676'4&567654'&'&'&'5>6767`I\*,(!B.%$6!#
*/1!-
"0!(M;�7< 3	�93
-!" 



 '%!
-*6$#.($/<4-I#"%>,14^0
����"*2'62777''''777&547'6"264&2"&4w[

[wF;FF;Fw[[wF;FF;�gHIfI�H44H4�F;FF;Fw[[wF;FF;Fw[



[HgIIf%4H44H
����+5?IS[iq��2"&4264&"%#3##5#'353#535##3353'7'7'7''7'7'7'7'7'7'7'7'&2"&4#535##3353'"353&2654'#3##5#'?'7'7'�Α�Α�Š�Š��TT0v%��IS���|S�	
�		
x켅���BT�Ɲ(u4T_Fp��?��}1�TT@s,	�
��Α����Š�¿#/��.R\8P��]		


�
R	������!3R2���RARA�U}XM<3?��8 XF	���������������''.'4.'6'777''4&467&7467>'.'.67'77'??'?67.67'''''776'7.'5'7'677&'67'677&'6'4&''&'47'67&'6	
		''
Y:k, !,l:Y
'&
E
	(
!
'�	,' 
((&""!#	%
% "!=2b']<&1xx1&<]'b2=!" %
%	#!""&((
 n,
>'	L
�'
J
'? 
����Ce�7"&46323.>?3:1>'.0#&7"#"&4632#"#7>.'.#"56&546212#"'&5./>7>5<13L 

H-u$=,#	[
'16
0
		G+pH�
 >-$	[(3N>-#		\)3}

	F,wG 	� ?.$		['21��

	H,m����*28W����%&'&76&"&#'476322'"#"'&6"&7662"&31&'46&'&#""&676%2.'"&'4547'&>017626'.'67>?&'&6'6720'&676'&'&'&'&'4'&'&#""#.#'"76767676.&'&7'53>2241&#"15674#"1675#K8	

=
�
	
2
	AONC)7FC
,?"	 	��,& > 
	_#1
+Jq	9,'	

H(
("
�((�			G
	
&1

3'#

GIB#		
:"qT1B2Fa

-
			
	�
����
'?'2"&45'5'5'757757�"!!"EΑ�Α�;<<;!""!�""B!!�Α���W;X<KK<X;WA!!AA!!A��r�#62"&4462"72"&5>264&"�j?Jhi�h-PnMMnN��g�ggJO�!#��MmMMm����!$"&462#.5467552654&'7"'6&&6��SuoPmm<S\�\'!.H�6&&6'=�xSQv&??(Z=A\\A)F;���� :#0#"&4632#&#"1"7#"'&'.5<>32�BQg��g_Gdz7%"Ab@#
"HI1�Α@QJ 4!!
�

/+		
=�����'=O?62"'764&""&46"'&4622?6"&4?622?62&4?62"'&"��R:w)�)���R)��R:w)�)���R)�i�:Rw�(�x��_:Rw�(�p������.5<EK6/.=467*#35326&'>&'*#3533'2+5'2+57"326&2"&����

l u *		C
		
 �!6**�

l	�
m

m	�	\f$$e# f""T!&!(!55#$$,P2#"'#"'.4&54632>32>654&#"#'&"#'&#"32?3327�&1
C==C	
3%-	$
.8,-
:
-,A !'(
" ~/$
 N=+F66E7"# -##s��  ��
�%"uu"%?�B8So0467>3>'.'.'&"+'67>27'#5<>7>7>7'&'&#'7'6767>�

o B	B #)�
�S$*+	
	SS#+,
	<	#�=11>��mm�	��
S{
=

>	{|	?

?	����2"&46&'&"&'.26�Α�Α�
ARA

PfP��Α�Ό'33'
1??����@".4>226'&#4&<74#"#"#6=276&"33:325&53"��,��,#%
P%&PS&�&mm&�&m�b$VB%/i$$ta-0'��2�+"/+"54;276;20Cn33�E�6�l��Ά	�����"2#!"&54635#'#3577#5##R��$=>=>>>=�\>==���.���MM�xMMxlii����
#'#'#735737537#75'3#�_lVb(m{Wa�CH�U4N��4POI 6SPߌHH@�\?��q?�2��35���'�;er�5�F���=�f5+�Q
BKU�3#'#75#37'2#7''67#6;65#>1>3732#%'676''>+#"'&'236=#"&/35"'&'26?#0:62�z1*aIZ=6@B4
X3�
�)�
z


l

�&)
t,+<

,���^	!A"	1L3!
'#(	 !	
:LI
Gd	e����4=2.'>?#535#5##3#3&#"3267#!"&5463&632#"z)d
Xmm3nn\�
Q.:-.0-MKa)��))#-"K7?C�)�$	-

33/#/-$"6))4)��! I������c��!k���#-Qg�%'#"'&54&5&7461/2>36767'767'36&'&5476736'>6762#'&3&476726#&5&#0&'&#327"/67676'&7676'6=&'/7'7*#67654'&'&'&#"'#&?#7"&#572363236767'"'5767"'"'&#"#7?7>4.5#&''.#'".'&'47&''&'367.'''2>7'2&/?&+57''#776.'&'.'77#6'.22077'327''7'3''76767/'#7#"#'67&7'&66'.67'&'&6327'52&#"#5#63'647674>7632.73230765654'&6?#&3'&'&547&'676�
	�]\BA(!-5
#!
				o 	
(	��

)/		
	


	( 
	





8:
$0
@8
'&,�	

)


	/ 6,	 	

	
I,,
!		+&+�
			7'F

	



(	 	
	�\x<=Z-#			&-

	
	
�
	





	 
	 !*


$&
��



<

)
�
!
K,			

+/	 0	H




v	%03


21		
	C
	


��m�p� 1"76743765&54'&'3#6743627>7>46'4&#*#.'&3!#"#23#5232'0&'&32&27>767&'.'""'e��r)
"s

7S0,


t
d�	

(	
k
IH
	

D-<@'�)
<h������W��'H�".2#&'"=4547>7'0.#0>162;2='"#"'&'&#"2*&543:65654'&"#&72012=432720;&'27215"5&'4327&'&'0.'#"#6272'&'4&'"013'&672=674#"#"'67625654#&54632'6:3"=.7>3201&'&6#"'>5454'"572725454'"4732#32"#*#*.'&*32%#&+"#&76'&'4#"#"#160+"72676742325454'"7032"#";276"'67236"54&#&#"7636'05&#&36762#"#"43656.'1"54'&7>56'.7620#"3>76"+"&3656'4'"43:'32#"#"4;265454'"#&63230#:3>7+�"0'&1&541474+'3676&'&"&5653276&/"326&3645.'��	gi��	aa
  .�		0
�()'#Zc4�W
&(*'+_



!	�%$
+.e	+g!"	

&$�(
�YeVj

	U��{}~:<|�t87�87O&	

CFGC=�#'S�AGJBJ7z

H1					
!

"R%&

)/('En
q!:��g
	
&3:�$&�e
Z�&"'Xp|�����$9GQXe����%".5&&7'46?67632766''7&5&'46&'.<.523036'74'6'67&672>32>32&&&2#"'75'654%'4>2&16&#"&'6'3&74'&74.'&7276&5&633#65#6'&67"'6&261&>&'707&#&#'5063632*#75'35'32'22>=4.#":>5#54.*#3#75'3#362".626&"'#75'37'3'&'320637+676=40:>4."&3#.'#75'35'#6'254.*#&63&674'&':	$	'
	
	�!;//��
	
*��
	
		89e<QI4%�+,2#J*,-*I!
#�',')r		�
	
	
31NL! d	

l	 	<	M<9			B&&U	'"O	U,0	L	'*i
		����	#5>6+53%2#!"&546354&+32675#"735#535#57#'#r(��n0/e?		>5  �&! &�	F	h���h��G�j	}&&s�rr����!CGK'36767&'&7>672&1&'&67.'.'1'&'6	37'���7:
 
)"AJ�D!,
!&	5=*���������9

&	&K|D!,%	6
	�����	�x1I\66'6%'#"&/4547'&54>6767667>.#0#"77''77''77'?�(�
Wbo�o	wQV�RO9
� X2$s0�mC=J!q:	.>/.18'8
,-2$3
		�
$!
,s,-
-�,~,'�}%Wah���'<V`~����TY_v���76&654&'&#6'76"10'4?#&'2#4'5654'&'654&#"#./>6'&7'7'>15.'675&'#&'56767.#5675".'565'#34>307&'.'&7"2#04&'5"267&'4.17676767#'4.56461##&563&'5#6376535"'&'474656'.#672<15&750765&7>7#7.767.7&#76&'&&561"&'2157>7202'3>17&6767&'&75."&7#76'&7627&'24767?.3'45'3654&5473.#&7'7'"'0#&7''''7''&'.?'>0327'7'067''&/67'7"'76%63''>'2#54.#"#&'56#"7>'&76567"&�

\9+aWYc.:�	3o�I9E|,r6CIo*
		8

7	
	&



+		
1

	
&HL%CA"	
;_
(
!$$*"

=
%[UCB-K+�m	�AnI3,MsB<27

@		 f		D(P
G,��sR	


)	1G9Si	2&��
�G�		 
	
	-						
P7y

Y%
\*
				/B%=A=+
$	*


;

!^+
XF	D;7%+P		'/#b	(&|2=;
(P@(�
7


��)�
%'73#��� ��7 �F��!�v'a�����_j�k]���A�	0Lck���������
Mh{���-7?'373'7'373'2#"=432+"54"2545432+"=432+32+'+"5'#+"=4;2'54+327+"5'#+"?4;23'+"=#"=4;2+2+"=4;2+32+'2+"=4354"2'+"5'#+"=4;2'2=4+72+3+"=4354+323'7'3?#"&'&'>7'.7.5467&76326&'.&'>%16767632.#"6'&'67#"'32767>.'&'&'67&'.'&#"&'67&#&'6703273&'27327672767&'6753'32+"=4;22=433'7'37'7'?2+"=4;201#"1#;2#"1#73'7'3�:aNP	U�J.

`



��--=8 "b2-(*6&
1A7 "a3+*
+(I3��*+.X&%0-XT$ ( ( 	
4:9:$$ $$	m�6
(
$	<;		;;*265@?((4$$@	!
@3�00/[+HF	?@	 N>$2[+GG	>A	'Q;�
">@�6'T
">@�'!	+--	_4422U?d���
7!!"'%32#7;;�� �)��X=�tGgf G��������7+"&?>762+"'.>�2	�	}b�	�		'		�6�;���J*H3G<I����?%&'&#654676&/76/?6/????�
_
ii0
4
+&(7
:g`
#qg

]
C

 <�PHx
>

<
Z����#+37;CGKOW_573'7#'5#'73?5#'735%53#'%'#57'#'7'57#7'537'#5'53'357'#573"Lv -#78-�88�ZL B8�

���P [Z ZZd- M�!L�NZZ  L/-�!mj87,z P!Z^Mllv88�

��
-78-
M -7-
-N[[.N [[�� LG- MdO Z[[- Mj l/ -�77��* O [�����#F767>'&'./&"&'&'.?>>7076($<?W0732

'"4!
j
($<?W1193

3):"	
j$.r
BF.
r
	A
���*.37;?GN?3%3#73+732%#73#576+732#"7>533613373'3#73'3#7333#"&7�;��VR�D#d)3
F>(>�M[�pu-	�N�;�ZIIM	R�:'�(:8�^
�75<
7N55����.7"1"&5064.'&>1250616232>1000#0&�XVWAG HIgEE�SVY]w<~e�NNf0z?}Z� 48?KR^%#'#5##"&'#73&547##53#3>>32353#3733.26&#"5#535#535#737'#3'7#'#3J6@�"V#*
@511m<732	
�8w>�/&�!
�8878_18228�(.-&(..&�="!%#
M�)L1+E 3,"�(.99,"4233������#)/5;AHMS���������2+"&=64/'&6'&57'67'67'67'67'&5547'&/67'726&+"=46654&'&+"#";2#"&#36=367'67'67'67'67'67''6765'����]��77��#5"1$.'.4178+;@H�

"+	

+>*

!!
.OB		$	6#0$.(26)@���� �\8!6-�	$#$(6

8 -\@I	,	/	=,8/!


>38$#$(5*	A��k� #"&463"&463"&46;2"2"&4U2G22##22##22#�#22FF22F2�#22G22F22G22G22F22F����'/=E2#!"&54632=4"2=4"2=4"2=4"6."'&6754"2�!!��!!�KKJC0�2:�<�!��!!P!R������-���))0�������N2#!"&54634&32>27'#&5676.7#3547#36737676�����&	"	D
 
!M	 ".-	���nr

�45&($O�$] g$
����%?&'&47677'�I��M�&��LLL�J��M�&�|LLL��
�sBP%&'&76'&'&756'&'.676>'&6332>7262654&+"3q0%1+-1(''(1+,1)$
55)"55��"%%!{;0,A@ -/";,-20-VV-02(%%(������mt|��(4<HT`j%+"'&'.'&'.6?467&'&'&7&7&7&7&663666323626;6730764622>6626'6&>.677&'>7&'67"'67&'67'67'467'67*57&&7&461&7&7&5&&2656&'>7&'>&'&'&'&'&'0&'&#'''#&7676'&6&'.&>.26'4&&754&"266&'&67>&'&t
%$$
%

		
			
	
0#+/:%.$
)=D(			

	

$"$�D=)	
	


	7#1.+p	
g

!	-%%.%.~&%(&O#1"#1"R
	&
#
	�
%2$		$2%
 #
	
	
	





	
	
	
# #&%'^/+
/*
!#

	
	l


"!
	
	
&$(%�% )$l*'
�
+.
+�			~  -*.
Y
$)
'���3%254'.'.#"#"&#"7#".54732654&VRB
	$:Y�7+<p@"q�MSF,�/\"J
##)9
	)Y;;(5	����
7#%'3?3#/?/N[���{�[
�=QZ�XZ����$�f+j������	�BX	���vq&0����S����%+"&=.5462>54&"�O>`>Ow�w��()+3+�CjffjCTwwT## %%��}bis��7&'367#".#.#"#.'&676&'&32>36#"&'47>'&'&'&767>6&'0#"72##"&463224"�[&
"0
74
	1	.
;66
*&	


$	0!3	J$D33?I<.$&Y

<		 

/4	E&-		0($#>04"/

����#+7C2"&4$>.264&"7&47'>.767''7>?&'&'&6�Α�Α3
��<
+''+
�
%%.R+/2%.%%2/+R��Α��?

�2(^(2+�

E$4//)a4$)0��|�%8CPh753"&=36'>.5!5&>'>'#7>54.46&'56'4.g!#!_J�[
!,!2 
f'\TY%1,*),1� $/!!
	O;
#7$�{�gh�(,�	
%�+!()�'"3#E_	
	
		 %`2E%'&5>&#&'4>76;27236#>7%!!$7>&'.#.'&�/�
%:'Y447^E'�%f"1���D�Y�
Q�H�
5

,�
	]#��������NV�%'&6?&/'&6?'.67&7.76767>30767"12676326"&462.#6'676&'&&'.7327676767>�90
/

		\�Α��B 	
	

%
/"
g#	

5!	

	'�Α�Α��

/ -"1&

����	0J7676'&>'&'.#"767&'&63270#"'#"&767>32�%#	�
U	
	
j	/&'.,
	))"Bd	;179971;j$&(K.%-$$x2J��%;38,);".C%I�2P>>P2 �%$EU	���=EMU�����%'"'&'&''&7'&'&767&'"6767&667667>'&'7&'7'&'676'&'47.#267&'&&'.67&'67>5#.&6&'&2&27&�*{%' 44#	&W%8!4)+
!		l!%	/�
��1$Dc;8

	
4A0!"
"DA
'.$$H	+$&��4%+H/&;2,
	&.:
>D $1*
j+i�� 5)''
	O_JO ::+'M.&	
(%3�'

����(@%+532'#532"7#!"&5463!24'565<.+:62>76$	QQ2KK		�,��,,*,n1% .	5�Q	
DH���,,*,,�9
(	
������+9%"/&?622?62'"/&?622?62%&?62"'���/��/��/�������CaaCC�bbCC[[[[��'2+53!#54632#52#4&#4&#5�����++%@>X+?,�pPa����+*@@��%�W>,?kPp+�a����t~#*"#7&62326514&'0.'&&'&'&'467:62>7>5454>2#+"&772'.y	
mO"
	
	
6	

		 A	
(H	(<o
��1
$
,+.
(
	
6wA&�����'Dr�632#"&5"&5#"&5"&5#"&=4632327277 '.67672"3>572>&'."&#".''"15>7H �iO1))1�!#C	$
;��<
$	C
#NN#
		G,�	8

8}f|{f")
%

%
)"	

	/)������;^���&B^b7#6236+54626'&=4%''.'.67&>3263264'&562506350'&#"'&1327"11102>32&076=4.74+";257&#"32765'4##"53250<.254'&54323'06150'&#"#"'41"374+47632572'&#";"#"01376767325&#"32767&54+";2=476256750/#"432125656#&327617&#"032765'4##"53250<&2#����e@
&6>A;
#:		8"=%"/ 4#E8"��	 
	 
$

8
%"
		

	P
					6*

	/6
%%�

BT#$(#19:>2 1# 
#?D=	
			"
O2	2
:
4
6
85'(
 ` 77#"&46;2+";2+"&46;26&67326=4&+64'32#�r);;)��r);;)��H+Av�!..!�;R;"(;R;"x3x./!�!/����z2"&4%>'4&*0.'&74676&676/&76#".76&"767>767656&'>36�Α�Α~



	1





	'!	#*
��Α��
#
	
*	


!144	'7'$

#	���#@FL_%#"&'*'#"1.7&'&632>7>32>76.#"#623632&46646&67>76"&�>>
>?%	}IN|t 55P,@n"<2
H �[�$#.( 3�@r-*1
2DY`��6!.S>%M;* -	�!!

!!
)	(%����,R'&6727632#"'"'.767"&'&63:%&5463237632#0#"'&5463033267�*P_
	
_PT
/Wv�OQM
n&'	(!I	�

H!n	

	�
��	��*&	
 ������+%"/&4?276&'576&'6&'762��		��2	

//23(	�		��		�3
{$

	%	z..	24)����
.9=A7+5327!4&'.5432;4&#"#"5#32674&+353267#7#3��@�
 
	"~4!10�0�*��@��
J�/G��������1=GOZgp%3#"&54632#.#"54&#"&5467>#">'32654>&''"67&3>.327.7367&'�|`t��t`|nVjune'$.54-IJ-45.$'Qhd$+$&�
++*r)*"@&YvS[�tt�[SHMujgt1$'4/.4!4./4'$1L�$%"&$D\%$�##3$$�#&D$&

��9�#29E2"&467.54632676&+%'#37377#7##"''2+?232+7�褤��X$- 	%.�M&	 %$rh5\- _.	�������<*,#&�ݸ%%Z##Z�T�R' ,=x9c	0`9!&<FP373#'#'#%2+52>54&/+53:'30>5.#6654&#/*)-
.-,#
 

0/
�		.4
<

 vv�MMPP�'(
��

&�
m����
'2+5&2"&45#6264&"2654&+')+#/`Α�Α��1=95Q,!���Α�������>*)?�����<k#"+"#"&'&'.54=454>7676767>7232;23276'&'656&'&'&'.''&'7367>2�
�



�
F;:
LS,V	
N?P+'BQA$�

�
� (7v"#N$/S<#@c0	>#"����N2"&464'4'&'&5&+11#"+"#"'&'&5476?514/"73>�͑�Α� 	

 =77=��͑��y	
))
	)00V6��$
n&�7
,�	Ms�'	4	:Q	�	H�	:2	L�	4	
XR	.�	*!	c	:{	*�	Copyright (c) Font AwesomeCopyright (c) Font AwesomeFont Awesome 5 Brands RegularFont Awesome 5 Brands RegularRegularRegularFont Awesome 5 Brands Regular-5.15.3Font Awesome 5 Brands Regular-5.15.3Font Awesome 5 Brands RegularFont Awesome 5 Brands Regular331.523 (Font Awesome version: 5.15.3)331.523 (Font Awesome version: 5.15.3)FontAwesome5Brands-RegularFontAwesome5Brands-RegularThe web's most popular icon set and toolkit.The web's most popular icon set and toolkit.https://fontawesome.comhttps://fontawesome.comFont Awesome 5 BrandsFont Awesome 5 BrandsRegularRegularFont Awesome 5 Brands RegularFont Awesome 5 Brands RegularFont Awesome 5 BrandsFont Awesome 5 BrandsRegularRegular���	

 !"#$%&'()*+,-./0123456�789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~��������������������������������������������������������������������������������������������������������������������������������	

 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~�������������������������������������������������������������������������firefox-browserideal	microblogpied-piper-squareunitydailymotioninstagram-squaremixershopifydeezeredge-legacy
google-payrusttiktokunsplash
cloudflareguildedhiveinnosoftinstalodoctopus-deployperbyte	unchartedwatchman-monitoringwodutwitter-squarefacebook-squarelinkedin
github-squaretwitterfacebookgithub	pinterestpinterest-squaregoogle-plus-square
google-plus-glinkedin-in
github-altmaxcdnhtml5css3btcyoutubexingxing-squaredropboxstack-overflow	instagramflickradn	bitbuckettumblr
tumblr-squarewindowsandroidlinuxdribbbleskype
foursquaretrellogratipayvkweiborenren	pagelinesstack-exchangevimeo-squareslack	wordpressopenidyahoogooglereddit
reddit-squarestumbleupon-circlestumbleupon	deliciousdigg
pied-piper-pppied-piper-altdrupaljoomlabehancebehance-squaresteamsteam-squarespotify
deviantart
soundcloudvinecodepenjsfiddlerebelempire
git-squaregithacker-news
tencent-weiboqqweixin
slidesharetwitchyelppaypal
google-walletcc-visa
cc-mastercardcc-discovercc-amex	cc-paypal	cc-stripelastfm
lastfm-squareioxhost	angellist
buyselladsconnectdevelopdashcubeforumbeeleanpubsellsyshirtsinbulksimplybuiltskyatlaspinterest-pwhatsappviacoinmediumy-combinator
optin-monsteropencartexpeditedsslcc-jcbcc-diners-clubcreative-commonsgg	gg-circletripadvisor
odnoklassnikiodnoklassniki-square
get-pocketwikipedia-wsafarichromefirefoxoperainternet-explorercontao500pxamazonhouzzvimeo-v	black-tie	fonticonsreddit-alienedgecodiepiemodxfort-awesomeusbproduct-huntmixcloudscribd	bluetoothbluetooth-bgitlab
wpbeginnerwpformsenviraglideglide-gviadeo
viadeo-squaresnapchatsnapchat-ghostsnapchat-square
pied-piperfirst-orderyoast	themeislegoogle-plusfont-awesomelinodequorafree-code-camptelegrambandcampgravetsyimdbravelrysellcastsuperpowers
wpexplorermeetupfont-awesome-altaccessible-iconaccusoftadversalaffiliatethemealgoliaamilia
angrycreative	app-store
app-store-iosapper
asymmetrikaudibleavianexaws	bimobjectbitcoinbity
blackberryblogger	blogger-bburomobelexperte
centercode
cloudscale
cloudsmithcloudversifycpanelcss3-alt
cuttlefishd-and-d	deploydogdeskpro
digital-oceandiscord	discoursedochubdocker
draft2digitaldribbble-squaredyalog
earlybirdserlang
facebook-ffacebook-messenger
firstdraftfonticons-fifort-awesome-altfreebsd	gitkrakengofore	goodreadsgoodreads-ggoogle-drivegoogle-playgripfiregruntgulphacker-news-square
hire-a-helperhotjarhubspotitunesitunes-notejenkinsjogetjs	js-squarekeycdnkickstarter
kickstarter-klaravellinelyftmagentomedappsmedium-mmedrt	microsoftmixmizunimoneronapsternode-jsnpmns8nutritionixpage4palfedpatreon	periscopephabricatorphoenix-frameworkplaystationpushedpython	red-riverwpressrreplyd	resolving
rocketchatrockrmsschlixsearchenginservicestacksistrix
slack-hashspeakap
staylinkedsteam-symbolsticker-mulestudiovinarisuppletelegram-planeuberuikituniregistryuntappdussunnahvaadinvibervimeovnvwhatsapp-squarewhmcswordpress-simplexboxyandexyandex-international	apple-paycc-apple-payflynodeosireactautoprefixersassvuejsangularaviatoemberfont-awesome-flaggitterhoolistravastripestripe-stypo3
amazon-pay
cc-amazon-payethereumkorvue	elementoryoutube-square	flipboardhipsphp	quinscapereadmejavapied-piper-hatcreative-commons-bycreative-commons-nccreative-commons-nc-eucreative-commons-nc-jpcreative-commons-ndcreative-commons-pdcreative-commons-pd-altcreative-commons-remixcreative-commons-sacreative-commons-samplingcreative-commons-sampling-pluscreative-commons-sharecreative-commons-zeroebaykeybasemastodon	r-projectresearchgate	teamspeakfirst-order-altfulcrumgalactic-republicgalactic-senate
jedi-ordermandalorianold-republicphoenix-squadronsithtrade-federationwolf-pack-battalionhornbill	mailchimpmegaportnimblrrevshopwaresquarespacethemecoweeblywixello
hackerrankkagglemarkdownneoszhihualipaythe-red-yetiacquisitions-incorporated
critical-roled-and-d-beyonddevfantasy-flight-gamespenny-arcadewizards-of-the-coastthink-peaksreacteurope
artstation	atlassiancanadian-maple-leafcentos
confluencedhldiasporafedexfedorafigmaintercominvisionjiramendeleyraspberry-piredhatsketch
sourcetreesuseubuntuupsuspsyarnairbnb
battle-net	bootstrapbuffer
chromecastevernoteitch-io
salesforcespeaker-decksymfonywazeyammergit-alt	stackpath
cotton-bureaubuy-n-largemdborcidswiftumbraco�����f��v{��v{�assets/lib/font-awesome/webfonts/fa-brands-400.woff000064400000257714151327220410016105 0ustar00wOFF_�
�K��FFTM0��^�GDEFL*�OS/2lL`1�V:cmap�L�!q�gasp��glyfD���1�headI�36ɾYhheaI�!$6�hmtxJ�0qD�locaL����+Z~maxpP, 5@namePL�����postR\
pkZGjYx�c```d��7Ү��;e՟��Zs�x�c`a|�8�����ч1����Je�dha``b`ef�
�\S��x�x�=�3!@aF���R ���}/Kx���[lTU�3C�s�l�vB����x)�b0PD)B�
�M���Q�ږ!��XZ�
EEB�V%��F�M#M�h�3�R& �Zk��p�4F|�}�O�J�d?�|ɶ,k�ua�X����F{N΀e
Mɵ
�\/ϻ�+��xe^��֧�ү��-�t��h:�M�
��*z����bTO�h�P+�O����GJ�I�yی<����<���2��J^��\�/�&�s��N��	��aO��e���ZY/��fi�m�t���#���ˀ�a9,'䔈��sj�u����QE�~U���5����~�������c��O���>�|��D2�dffJ2[3홾L���Ez�~A��t�ި�C����	��ޯ��P�8[�mͶe����d���u��"�o]�vT,��ˈ=F�����ƈmk6boR'uQ
��Jir��'r���K��r^i�^��q������!>8*��<+/�#��l��l���M:��^IH�4bI9*'��oĂ*WMRW�k�$vX�����vL�Ј=?&֠7�v#�٘ذ�5;�b���(E�G�E���D;��G�"-��H}d]dAdv�R<��������؍]�;�w�.܉oc+6a�b5��*\�O�
|Kq��xވ7`^�S0�0�p<AC
F�(T�rXK�X��B(�� ̇yP
s�>�
��,(�{`�0n�iP�p��D�nׅk�U�rS�7���w�s�v�t{�mn��ō�u�b�!猓r�}N�w*�Y�uN�s�s�3ٙd����}���C�v�^c_oO
��P*t��o�?�$�	�l��Y��>����;T����x���	�Gu/ާz�޻gz�}��Ν;[��WWW�mI�j-�,Y^dl�l�
f�1  �IL;<6��%	6 	ޟ|�l�_�OB��僄���\�O�̕e���s������]U����J��_��g8�{��ѧ�gBXk.�����_<�[�Y)Ē�>��Hr�I,(A��w�ehF��5�fT��[3l7gq�B*Q�֢^���A���� �7��Ned��x���!JF54(�ʂ��IK>�S�5�"�=5g��傝�<��!<OR)�y\��ANk����l�1
���eM�#w��&,d��6V3
Ma�,��e��v��@dC�섎_i��٢�O�	$����iP]�Ax"H�cPo�:63�p�ϑ��(�qi.�������t�w�Z��^�NB��	�Rr�{�aF�i?�w���QH�q7�xϕ�j
F7���������+�t~����c���Vn��J����B��K7,_ׯ��b�Ǡ���W��
�
�"+��=�Ǚ��Of|/s��ۯ��@
����Է˭�A�ᙍ�go�馍�@�q��߇/`=��"�5�	�xR#�Z(!���s#��p�5��<���ngɪ����4�)tؙ�9~⡇>���Dڕ2�$2�I�,,"y�d��Ao��}��C;O^"낰N$�Lm�`|w��������*W帘:�A�j���e͉t�L�|\���Yع������ٍ�2��6�'�3����fw���nk�fw����:z��+U����qg]�&�3|{��.�����0��+`A7�(��?�J��+.��m����>�x��К�8�O����7��ӽ���7��|�+���s�.&R���K�H���c�ڳ�j��HQ/�a
��h8w;q׃���=7�w7���*�|�n��|O�5���c6|^�u�����_o�^��WE��B!�
3�am*%��LB�y.�&�‘�#�}��:��:�/u�fMr�c���b͏ߞ�A/jA�L>�J.c~��L��S�K��ۏ۾��x�z���[�m��Pp7�`{��j{�=�Nf2�b��/eVή�_i�rn԰��9�6��<NJ�d&/��C�*]�)�%�{��|5�]�Z��UX�n|�=��{+0�vJ��w�#�A3H�v�Jr�^��|*0$��sD=wH���3u�W������.�^�?��^��^D��y�,�}���p���9�b�
f;�T#�T=��ؒ�ՙ�N�����2DH���M�c��e�[�����5�9��C���|x]��RH�L�l��U��R���X��>(���r-���vNTE��i*�(�Drq���HW��U^��R�@��3Uգpt�me�XJ�ƕ=ȹ"f����/:�█�+5Qϩ��]Q֙4 sL,�s�t^w4�U�x�2]w�V�	|Up���[�W�H��g�+#
G8N�+G]/��(�ֽdcת�:n���?�y �@������?`�^q�Gv��+F��F�!�d/|���c4�^�D1J�~�K�;h�(Įa��6_�
,9Q��=���+s�ӼS*k�Η�WްzK��voz�8���g�g����J��dg��k��x�V�9�ʍ�$:��Ľ�{%~C�3e�#�#���Q�P�޳�� D�1�ú_Kxk�D܀��{���h�
}L%�	��٦(�<�_HvҀ݉�x���0��A��H�0Q��ft�0V,�x���yVJ��{X�4�Y��pt/U�uݱYV�)��3Qň�V3���ՙb/׀�Ӵ�R��?�
r�B��:YU�
٫Ӿ���
dɐ���=�Y��!?x���,�����a����gV�;��.\x޳���n8g�6x����L�����g���Ct�<��,�3PK���_�49}��� El�⒥�~@���;.?2��^�x��1,"<Ϻ�.K�D	�*C�#�n��^<1����Q���#^f�v7���a1Ҟ�����IV��e~���w��f4LE���$��Č�'`H
K�[��m�eư�p�t�gJ�v��$ԂaX4�'/x�1��X��*2.�*(��@DD~�QApGRH�LLL!�E��'Ar?�"	v�	�|V²3"q��y���x�ۀO�F���m��o�Q�Ͽ�"_-�<�4h�4ϿG�+@4"7&��2�!/SIQ�?Q$��q5�~N"ʔb(�D߾PH�+��y �!��Q2˓_u�R�"��݊!��oKJR�W~ޗ
0�-\�2���	�u����_�,���N��e�'/��i.��^���"�f���jZBȅd@T�ja:j��V��2�ዪ���g�"tlYe,�*������ؼ��c�����>c��bF�][�؆��| �zq�3\
�j/�O��z��1觺���yx��N�Z��W��Z�:JԩR������p�Ǽ�2�M�!��Ŀό���H����>�����_y��^��i���g|-�{�&�Q��������7�]k?��N��p�1~��X��)��`2��ݎ�J<�Q��#2V�ճ���)G�߱����+E����aE:�)��90LOJ�- +�1czn[�ig5�<>���"(�v�g��ylo��o�9��G�jZM4SdUͨʠQ��c]����G!���H�����`|����s09�4�jv�:8������5o���.|��Y����m�q��#j�f�����`��=���a��ѵ�"S}>��e�k�n���;��K�6���l#�y
&��oX#��g���v_�">�[O|�����6�����)�
nO<w$�b�"���Z1A�}&Pg�aB�
����oȊ"��'������ujJ�R���/fB/ɬ|�QO���n9�,fO�8���W=�����2�+����~�4;�i\7hL����{�0y����?���ݕw�}���Hݳ��@��.|�
���Ŗ/T=�"�X5QP�	L�h�)PS`�iY�Ş��� j�B�@��kP0fDdݲQHgŒؖ!��j2%�bY�)H`
���rw�G,
z��;�v�tټ\[�Q�UV���P�*i1+V��mPAR-� ���*�HfZ����<ߜ[�a��ji}�s\-6P�G:�9�K�F;��3*á���f�q�~�B)XE��r�n�3�7o��L!��?����Ս�d{8��m�e���A)�x ��ky/ȟy<�3�_��Tmo�g7�����v��I�������N"�����{�٣b��"�2���}<��؉JrBiD����T���x@�f�C���K�si�|t�Lo�!��y^�/�7���U��y�N�MՋ�D�'ȕe�2�䳮a�F��\�S�a8��$]N�w'9�'9F���~
�����<!:���vƚT�?��D~`�H9�L���@^?	0e�����IiB�ߑ�;����Յd�x�}�[�CxG������V'���}f�c/n����4N�3�0���20l�1�j�����c_y춼"�g���_,_ӎO����1*W)�({��G&
�c7o��H�.���j���Xw�dQe�,��%�e���$P�l���gpWB�v���v#���uQ_�Qe@me�z�Xp�ol�>:̠F5���PW��v��	^�x�XlN7��zz!j+�rZ{V�劅\V�UJE�,�r�l֭����l���{>x���;.��ۣ1ω���d��1;��nN{����p���6'&s-�p�X�챍��� �&�~?�"Ը����`o�IJ1㘎�ɮ��c�`_)�f)0m��էڊ玎���0~�teb�൫⪕]�<�:'7[���i1� �o
/~)�C�!�E�b������I�ozӼ�}�\�OvWVޔ�o��w�i.��V���Ï���pQ�v�Mf��4a��{)v#*߬K���8��9�?�R� ���ZmU
���@��U?�y�~��w���A9��zO����ܖ-����2��>�]��c��Y��N��^�s�py�Y��|L�M@\��^3PMn�(<��1E�2A��l�$�/ �kJ��"�2�l��Ѡ�<Ώ�&$̋j,�Ҿ����۷�\�� �%�jT��T��i7���Ev']A�J���snZ;H����#CAt�l田����Z��1�T�q.u$^?yr=>�"*T%+�#R�eQ"�%�O�Y���#T%/�%S$�g���
"�s�H"3�3K:�K�A@���M�\�C�?D��6nO�����#;�`	�F&���F�h���w�8z�f^1�UU1�z���X��V��d�\/�Rɇ1A��zd0��e��AT������u}r�J�
O0*���1�g�"�UW�?g(�R�D	��}�.��;���Ϝx���!�a��gϟg�D`s��ȗ?����Qp�����{%� r97�P�
��*Q�}�I4&����hY@�ct�ҰY�-�$��X��2:l��������e�F�g��B��&9/8o>)J0x�u�v�;o}�ɫd%�gꎩ�Z3��֒�n(���Z�3xի���D�R���t
y�u�M1�n
nHZB�0x$��O�
H �(X�S��=v��k�U���e��X��X�o �T���l�0�#�� �)
q�%���Z<�� �$�ڃ��y�����DHߌ�]H��e�޾���s��#D���5�dx3�� R�?4�����
e`�dH���g�aF���_qt��#�&�">��m�OW_ �d[N?"�cf��߄�統�nۺt��rqN�% 	j�[�:���Zϫ�S˩iA<�f[�W�={~T�!�B�	�yu@���Ձ����M�^Ez~��/YR%_qd�UIE���i�G��lޒ�iEC�L��m�
x)�!��ttui�������=����-S�+��敒 ,�Uʋ݊��P�6}C�<�f��p&�̄�Ce��g�
�n�R�y�d�\7ǣ�o�s;_��@,��e��S�\�
�^���,H�*2����n���~��h�~:|?6?�
�Y���yׅ����{�K�]��Z�;v�v��pǖ-[�x�_������v:ŝ7���-열֛�x�~��
S���r��V�����x�df�R�����D�R���qP[��t���x�]�x��S^ޜ߉9n�oW�l�w=���\Q�>�����c['�%$�C���?20��SFm��'!�A�u�4G8�sN�8!̥��x%�
� 3�)��l��ى��fv�f���XM���ޤQ��̔ڥ�L�F���H�^oօ�����fg�xk;�
���*�U�A��a[�y��']J��k���X�Dc��fc��I�C'�-�2�|�o۳��/\�~q�^�7�mg��g�����;�t) F�RU�F�A�B����a���R��@��n��ͧxb��^�ۗM��;�����~.�s���K�����[�������;��a�����}�N�OM]�)����id�[ZkPP��Z���s���Z�cD���`�����)-A�YJR!�Pi��l֘U��<M:�AQ�,���K�G�LG�$%��[9�@�ھiP�s�v��>Пַm[G�F��Ԧ��z/�Zl��:�Ă��
�q����j����`HlV&�:H�UF�,!Q�~����DMg��K �i����ȹmj�����\zx��m|��o�ug-�lh��p��c��8���3�~auև�_l���ĕQk2�ހ�f4�Y�,fQ��CV�J"�>�K�V���kyQZ��	(���$��"�r�����S���f��\��*�-�g�]��J�(p�
F��O��z�4����&Qn!�/ϲ�w3T�����Jݵ�X�s�a>V$apD��#H�'�������{d;��4@B��T0��
��.���Ç�C�<|�З1�Θ�`]_}Ѯ�oy��V����;�7�� T�$�$���+�O�~y�彯�pl�=co�ƣV���o�5��D才o����'�c�-^�0��P|G�|���Z���q��A`L���{C�)#*~�,
,/j�	'����|�$A1%2�y°�ӧ�m;��������w-߶�H�ۖ�嗶�X�ju��F0N^/���'d��rY��a.%���Ɗ}�+�WY���b�kX^a�Zc0k��_��]Z��/���+�,ͥGm��V�R؎~��o|9�_FJ����&�6�g���r)�)�fG%U��߶>s���s���,�~��3/c��7>���z�����߱/�X
��a��㓏���Ɔ}�6c����uXW��}_��
 ������w��D&P���;ǑX�h�%�/A�Uب.��e�L%����@�W'�Kƌ�M��`�P�ꡰ�"��ZS���u]0��z�z@}8���yU��.�l���&Cg�p��A=�7�(��`��y�Q�$H��=�'I=iJa�J%�i�'.�w:&��%��x�.Iݒ��t�,�m<���mE��4�ɽ��z(�A�qf�`�Rl)V���J�f4�(��[��_��
�-��Pԛi�+��>H��Y���TOP�(����*�c��6����~x�xL�3�q�?8�����4���/׾3�1n���등>�q�NFG�E��&�n�I֭����Y?p,�1��MT���ߺu~��T�^�+�Ui��M���ڃ�W���af<X��+�cvN����YĈ9�����=�}(4`9O-l�=FE�\c�ؠ#��l[r|���X�#���(dif�NL҉�vM�L�
��P�F��a���K�o�%�7��`���(��N�O'�d[]?�r	��V�����t�
��٭�(A���1M��(@����"��g�3�%$�&�~cكe�'�����:��i��%Vˠ�fR��I�2,2��1?����������
��%�d˲��,Q�,
D4L4AP�I�G
Ӫf��!ca��W���, T����$I‡�R�b۔t	U7ԉA�@�Y� ꡒ�#��X�%��n�
c�UuU&
/��3���g�z�S���S�͇Q��(�j8�$��A-�_�I���/��2y]��HN��x�PA2E*R[
�ٶ*�Z�q��wA`U�u]O�ى)���i�=i/�Y;����4�BM�9T;y��r�-H)��h�h�)���3�V��+�Z`;Űf��'�P1eÜ�1���n*��qM����tEY�D���%"��M�/ԑC)��EQ����YDɒ;)����I[7]+���fH���"�L�yhy�ɰr����q�n�-U��+�IT#BV�����@K�
�B��Df�IU�;�����L
Gj���z���
�X�WD�~�LX��7���l���`�dN�&�ߓ�*x\r�CE��*��؝�����^V�����q�LL��q�uwר,��=��"|&�yeԅL�W�+�Y}n��tƼ������3��t�B���0�=ݫZ�㮶�1�y���t�hh
�t��~�h��0�ɦ� Q�(�e&�$�9�@��j�|��}���W��]+j~ژp��f�֏l�9�dղ�ҍ��.�jZ;�Yj����^p1u��])��o��f�<6��MU�(OA�5E�̔�2���z}���|�+(-0���6��	F���0cM,���Il+��M%eDb}�p��,ұL��*�U�+(
JJTz\�4�6I��J��٦<��L�x�x%�4i�Ä�X�Gn�+��)"�;	�d2k�{�4�O�:I�
S���Ǘ���j5�x�������잵��,�;xb���`��Uoa)����F�����,�x�&S�9�� �^_$��Tu���D��E��)���hj%��ax)�UHNs;��{7h3逵a������ӊ�ر�$F�P��$(���*?^Iʗ��/Ȗ���];?s�^�6�M�%�*_�N�Nک+
M/d�Jk���*������4���k[z�k�jJ5�N+Ƒ�$H�w*�-�Nj�c��or�6��Wr���ɤ"J�ӟ�|m$q��byR"Ũ4H�������9>iݡϘ56
el��9�p�R6�����c���v�Z��A��+"Hk���SN���q��s�iK
)ue���6}k��b���A�%It��$*L�5�Y/���*ol���m�w	|d���/΢@r���֭�TZg;x��:�vt�@�S��׋M���9Y� +��ʮ��eE@��a�!��$'#���(�tj2D�Rb�ga��9�6���-�+��2�f��{!8�pe���Xn�����_(�<|�}�#'�s�c��|����I�00�c�4��v-C�a���H�\�Ĉ~,@=��,t�g�_˼���i�������Ә����YŢ�Z�Ws��BOy�,Z�6Q节aer���qӤo4���Qe��+�Х�2���Y�)��YC*�
���Z�>��c�YJ��e˴�����Z��.���GQ��9�s�����N��MI�^�_���_�*��ix��w�<�o��7��[�͍����bt�xT�>|��Ç�:V���ezE��}
*N[
qZ�8�F������Zƪ���3�8��YEjyUuE��S�޺�B��]+��U��W&J7�DN9ɱ�P͚�CF���7��EԼ:8wr��#Q	 `����!|/e܌�wV��'"vc�XU~�� ��N��
�B����B!�ϸyL�8�u/�A������7����α�3Dn5����B�O���Z%�#D~�w�.��$結s��(��2U库x���6m�v�|�`
n�������Y���̞�B�З��u�%��߼ ��J?�ͷ�ڋ	���_~��/C���ӵTo�_H1��(��7�mr2��Xv�4�	 ���x�L���6�ӟde<�)��}��]q
�0���8G���~��~����̯쵍��nhW�[���IeK�9O�Pu��cE7M'岃��D��qb�bv#���I,�f<�ӥ�s'�.���GڵZ�v�-'o��Ƈ����r �����B�߻h�oA���2��>��<����ϟ�~��ʱ=���0.���A��mo�jo�Z֪{:[O�[^�cOo���c|){|��'�nZ=�mFq�֊���8����!�����N��q&V�{����'�g�j��ڂ�f�%�8��bَd���x �;,��ڝB�-�<�=m��RU�rI���,٫k��Z�	�5$�f�2���x1}9s7!�R+�
�FqHl<�G��]�ؠG��#W�.NM���ĥ̩���m�@u�i��h�2�#��Y�����ӗ�M-8��8ɖ�D������M�/$6�n�tMS��ao���*�_��alc˷-���$�媲�L,.N�T�林��5�u�y{#2� NP���-A8�2����a&e! ��P�������)�R��̕��c�`��UU�jP��(�XVUy�U��,����զ�JgTm�<95��'p����?�/��eK̒>��̀�${�{�'k'�j=���V`�ʹ֮�}k۵�z���Z���a�;Ys�/3<�Dk�Zk�v��k�+��u+y��]���}l�&f�`#"�l�2�'�}U��f��%�c%IS�	a��J��4h�9|J�<M���"e<�(���}`�#"��񎧟Q(n�LB\�!�9y��r���9�܅��Kt�a�i��Dn����>|��~����o�\�����}�ɓ���xa�����O��f?�ب/��Y��ti&��%R��/-�h��^�/���f^�}$�o�
�R���"`4�~����''���t��dI$�/�t��r �����W/��/�l�Q��v��8f@�4k7z�d񌄸p�[�>�}��,�6�.�$��"f
�M���#f��.���<gV#�i3�^�G(�->�P�.�E�iS�!�
��Q�����E�3ئ�k�&�`�G
"n� 6I5�D����?�|�c�]�"Q��Td�+9��e�9�d�3�
�����<}�`�"�4�����K�f8��=�V�9I�)��@�+2T��N�h�"�M�@�7#-��xR�6шڟ��q�6�c�A:�6xU0!m�[��^�n��E�uPmˆ?@�������Q�e4�G�ϛr��~>OU�BJ��Μ��y�"��~�ލ��e+��)��w�"��G
\TI1P����W)�V�1%Z�D��"��KtA�Pm�"b�k"j�y��*���n�ve��	]�:��,v�a�
�H�n��̏�o��;�?6�$�	sgP5����qOE��%f��WD�����*�f��{�ޝk�1��+�6i�᝺Ŝz"��kʎ��:���'~}�'OuISk�^&4��t�&�
{Dj{t��7�'��̰�Rw㓢ĤH|ZZ�m��qd	 ڼ�`"���ꪩ��h�~?�{q�
�K	�P[h���S�X<�xz��|1w��m����L.�@�Qf�����$ ?Pg�6�0T���T��7Nu��k�n�kLg��kA&,����4����R��jBvΝ��v���ؙv���B�ˆ9ל�2U�����lX��)�q�S��AN��:l�X9��-�Ӭ����j�
�l����Uƀlz9|eU���VMӎ�yiY�{���Y�n�ahr��1BNˢ=Y��$x
d��K�a�E�yxA��D~�uW�CO������[����-��j)]�'w^1?��sw��l���]��p��������t�(��(Wji��+��+ĥ��`ģ%D9N2K���`K2U;M���ՠ̠=6�9��6��f7�o�������ӭ�M�_W�W ���r��s��O�_���E��]��J��f{q0=]2�_��U?�<8���3����D�2>#�!�^mCe�1[��ᆤ5�� y
F�6iĈ�g�g�!���~p1�z����_������2���[Μ��U4��:�"�Ƽ��7�F��8�ΔgAO7]e*��E�E�A׀�~��%�T�U�;����^���jռ,���-q�9n�%H>2���%���c�"\V�O �-�ӎm7��\4�mS>&�Q������-~�li���F6����$�R�ٴd��%�n��^�Jc�-�kԻ�:�'F��n�{����\��~�H�-n�%v��͖���!�0Q?���#�IIQO?fȔ���*���Ӷu��+�i�u�^��K*�.�f_�ʿP$M�+󦤐\GX�d�N�-k�N�݆j�m[L�&I�ea3��XE,�&���,hӰG8XWHV��k�oL)'O�k7'�3p�'�s�!��'v�X��'��*���iԟֹ��i����W�r��QP�M�����٥i�Â$0�Ij�;x��a2��e"oe6�n����X�x�v���G�&��!���%�.y��|�K$I��|<�W���I�)�xKT?r(E�-IY�R�)�$�_��
���dQ��g����p��g%����V��9��������@e�oI �^�3٤)Axf�vAؾUo�.��o3�C뢸��x�C�,?7G�-s�Ư��ں��`�+츓�_��J�c�@D��yʳxK~�,�8#�y�$m{�J��O)�\1������7�&y~���S�>���h�{�<�M2�D
M������sY\����٫'|-?٨�W����d<3�V%��,���g{R�DƐ2W�����O-;{g;[��} ���[����.�ۨA|9��Y��U�:"�I���Z�����)e�8�B�8�Gt�ID�>�Uտ��O��=�=�~7~é=_ܻw��	T$�q]z\��L,�]��uWw�e�YL�Pmxvx���m�עF��{���w8�$�����T�����R��'�&��	h`���;�A6��%H�ʉݛ�
�
��7Y
 �qc\��e1
���T}AՂ�RԜ��c��J	"�ޤ
���˜����Ь�2o3���dO.Q&��WX��)Y���T�Ec��|�QʭYN��r���ȊP��d��כ�W[�p[ ����#�qyV��~���rӑlL��p�Ld��Zy����J��V��^�;`��TqR�6�ʹ��]uX�w
UqƑ���LE��/ȗ���VK�:�&Ϡj�@(Ƃ�ck���1��إ�͆dux�rrߠ���/w��<Y�Ap�Z�`|l�����5�E�I����r��%QV%CɢH�}M�li�x�wݲxk(d�����
� �x��
bEtdj�����9�X\Y�'�)CQ�m��5M����ó�!i��$��;ȝ���h��c"n��??`�Ĝ��e��,El�Ht�#���I��;��ŗ�,�E��ͬ�x-9"�m2�-f3��+�.+2��b��/٪�_�J�|ޖ�@U�$:���-���U�K�ϧmqi�l��[��$�o?��G��
�O���a�L#k���*ϯ*鞝1t�4��}I<�;d��ؚ�������ܬbٴP._�^4L{�5[i�����w��3��4��<G:w�*&���r����61=�e}=��Yo*-�l�%xTE�\�&�+��15�a�.Cw���p�M�t��-H�N
��?Q�s�#AT[��i�B��Ƒ��g���@����:�N�0�q5�f���[7��KA�_��g�z�4s�Z��$�jY	b��;s�MԴ)4�$C�� �N����TI�eY����#�`�cX�:�\&�y�.�z%�:�c� b��(ou���_�����<�$����z�	���h���5QW��vs�p����%�v��H�$&��ȯ'�kzI�J�A�-�}��\bWbfD�^Ĵ��H�D�%�k�P\��/�zm�5���a��![�\�J������iY��k�~7�8����lS�CDtW�N��Q�Z/�B��I��HZ6
��w�|M�$�C6#lv<���㦦�M��IyC15��aX���H/G����+?v�a�v��T9��7|��<~=���"��8B�ˢ�S�8@���r�0�l���g�Q;�Qh�4��ቍ��wz� �~�]{���w�]�]8�8�F��!�d2�9��I�0lҔ?��`b_3c�2م��ı^)�Յ‹޸�̫�[�\�m�\c�Fӂj#����-b�z�\�[
�e�.X?�}�M)��������eS�f�47��|�ge���C�g�m����vq��N���1#���@VrY�J˼uG�nK7�BeE���UZ����bR(c@��K�.ʈ��4‹,��+8�Jv�u����l��0�5.|Q��q��V6S6�C"��A3�J@���
���4��z�ts��Ȁ6Z)��q�9����;��|��ܩ�Ӻf��LS��i�Ⱥ5K�8}z��
�4��wj���2�W]��B�g���7|����Ǘz�z𞃇����[��4~.`�3�v�O_2s7����1�L�ԯ5Â�
O��8��!�C��?��\dP���Yv}��z�[�$�7�\�i��4��5�W4�j��ꈭq�Y'�M_ʤ�k�#�*�8�Ь2]����dK�(�ܫj��=3�vd^v�iu�qM���'Qq��+^��}�B�ur��(�eU�b
}�ԣ~���82lV~2��US�-	���T׋���z���#{��>��G���;�w���^W��7�qu5�1^�e��6���1�dFus\��v�H����� �%�:.�H�x���p��o�.��6Y�e�F��_Lx�@�-ΪҕZQ0Qm��]v�[m�Ԑ��q�z��(�ɺ����oԔ[�o�Ҋ�]��J�'�N�Ő_ofŚ�Ũ �%b�$��k5��TV4�o��S�d%q�.|�_���.�%�Ra^��a&�A'Y����4I��'xS��M8�Y ��/�-�r�(�hraW�n��	7]�].k)���(�P'�Y���P��U�R:k�XL��xEf���6�AH]=u5
A{C~��	�pD�d��f�T��|*m�	-H�W?��\.���s|A��3�}�����)'Y)��R��}���d�ȭ۲n)/���Nݩ�_Φ��\�	�����
��^�v�{�A9��/>	�7�v�#_�K�F뼑��g�I�";���o���^�1 )�#
ق@]<A���ǡW�d��'%+�fXp]gD,,�;��|G�����vD�D�?�6��NF��*N�Mٱ�'k�)��[lB��|G�R�r�X�b��z�6�(�K�Ə�{��SGD������R�l�*-�ٴ���e(��k��g�<v~Ǣ�X�z��:�F�1��G�g�op�5�C�?�Q0
s����n�W���\�a����זf����9���n��e�l��7�fV�~�u.kS!1�0QւA/�\6��yG)���3O���.�e~��Co���x��a�f�1������݋�\?���8�X��h�u��6|/�r��t/�%�f���0;���vXk��,V�sgݮ�V�kڃ�6�FzX���a]JL��ூ��4M�/�=������p�+_@"���0�A81��~��RP�RA��P����BxyZ)�ʂ<�"O��%��,;�|JV�� Y�(�*1
�׳�@����Hr-��'�,�)�2��'{˂��G�y	s�gE���5a����K��ӏMe~2����7�kQ*

^%�'����
A�R�$j���$	�,�Y�(E��i4��@�-YA>Td���<� ��E�P/�YJ��������1�5l.�/�׫Y�ϳ���<)�"o�8?�������½,Y��
,�"1�_�ԣȈ$�2��O�	�W;�����ͩ'ѐ�L�4!�D[�o%C\t�*+��,��3h��RD�z"[�hɉUwH6�����^�ў�.
�;S�\O��\������jź^�TcJ5��,�uO���A�
���S�~%����	E�� X��Ⱦ�R�����$�$8`�f�<t(�ϱ�Z6��jl�A�2gT�Q|UE��f�)�
�ld�tp�O���(?�9Y0�౸S�۝yL�Js�*"�=ȝn�^�ݏ���n�{�^x7��.e+�-B����C�
2'�L:������8J��^Ч��QF�鰨���%%Ea���:+�K���L��6���A���2��;]���C�K�����a[mv��Z�?I$�9�́��q^��3AP�;I�9A��I�ô�uf�����L���d'q�t��axH/q����PAc5kJ�4�6�#Db$��@�=�A���"i2�E�ï�=w�-�,J2lT l̀�f�6 ��(_�4��A����
�����oˮ���EM�'c��K�jKJ
�ϸ�3V�M�I�2l��;�-ef
C:���>EƑވ�jMsX&/�H��Di��*|���2H*j���"%�P/#�8䱂*�/�x�j"�T2TWV�yb!��I�߆@�d�m����T*�a���Ŵ���x�UTV�-[�D����6�x�}���L!WLe�l�Sݭ/M� c�3����n/��:�KLwEκ���[��%�+rꍺi��o���`��,f��}�Y��������'��@���(�F�B���L��(�tʟpՓ
d�	��|��P]�z���G�$��͚ J(qNR
�<Y�T��Y`���E��)�$Us�1	�^�<���P5�����:H�B�[��Tt㵵���e�B�0�4�.�]7R�P�;�݉����r�J�)�!V��BH�=_�&��	&a���/�U{�y��aO��ȩ$1rf��[rw2�k����b<�޷�d��B��B�[=:|,�L+���m(�m,�Ǖ�i*i�e������ژ6�/
"��Ci��ΥM[>%���;<�iD@�_�ޟ<�{<�K�Ǥ��MY��<5��٘�+m�)���bTE��-�']"��[o��3���3��N/�
gN ࣦ ˤ��w����%��g�}U��q�,��Ru�&�E9ʴ�%��G�k�S�lm��W��Q���L��V�$V0Z���R����*vA��*�{��,�)�k�H�g�q�g}�|����d��ݡ꺊�ן��W��z:e;~.�7S^�
���g�d>s���r]]���wx��k�R7>��dK�|���_i��cZ��/\*:�
�D�
'����dow�,�iyb��._�i��ƙxk��VJ5MyRS��X�7
�R��d�,��j�:u���FJb0���D��l�kPRX6��l��
��`v��k�A#�6EȥO�/�Vs���ut��t|�!1���!
�ܱ��
������f�m*�~AM�ضcՂT�Ϙr�%MFt'{q:����e�l��O�0u�����eՑ���x'%+��|��9sIY����9\�R�D�h)��,�EQ�����Ppa7OAl��ryR拍I^G�+	<i�lP�*�fZ���eI�܂��9��N�D��l�W���`�Y��q�0�-44��d�wZ|A
Ĕ��|{jbJ��W�UJ��SGΉ��Ź��\�N�B2/e�9%�o��h/�&6�j��6F5���&a���A���4վx����.I���S���r�	&������o}���TL��g�Z��8��`zf��
���o]x�Ϡ~����j�u��o3VjsB����B��Y$NQ��J7�m�b�l3XNbS��6��+�4@TG�Q-L�qI�h�K�D䳙mpmտ����r9-�3AЈQN�� g���jmF��В�����d.Y����'���**Fw
�"���NV#c��B�f=ɦ*y��X���6�u�XC)���n���ܜ���P|���t3��Wv��J�B�>��i�H��%��˂u�s�}�*�8�[Ɉ\��P�`�����("ԕzu|森�S�k-�=���I4�n<7y
h����S�N]���?�������\{-��q�H>��x%w5w�����{r�;��s�O��s��ރr�7�s��>�}�����=6w��ۆ}m�Px6gq?���m�)~A��J}��8���@�v�9l�S<�}�t�8��8�x�"!b� 
Q��jԋ#�䉗ۋ�e�$�.�_((��`�B¸������RϤ��1�=P$*�H4��&*��!�([ؒ��m/l�d�����4Lu���;EZSp���w�@�wp߱��z힃g�<�“s�-�w^%�
�z��W/.��/J���ݭ'�'���w'�
}R�5�
=�:�':�"��� �9���u���V��y�&����6��n��&�r�G��5�O��w!���We��mO=��:�*�|�7!x��ťW"�t�����=�$��;��߫�C���ꞎ��{r��Fe!	$d	�@��er0�6B$�����`l��1���Ŷ��=��Qπ����z�����?��?G/ݶ�ޚs�|���p�\"H�l��np���'D���ȁ��0;mωRI����;��;���ڞ�Z��ȱk��kSS��i�ϑ��L�77<�g�=���`x1�<�k�$5P�Ш�=.`�j�s�D����אӷ���J�9Su�����E��B����������k/+}�V/�K^�o�M?%ݻi��ʃGx�w�3��A+��y&a���ϨRg�,���z�H�m�{����Fֶ2c�%X����ͅ�������{����� O2��}yddy�")Ovqkw��+5�3��3�Y��P�	�F����S��)�\\��*��I2�׃��u%�������k�y.v6[�Υ�/�"��D}�g�4;�Yi��o�4�\�RH�m�zE��X�E*��qXD�&'^�zTs�&�P7��w�hW�-M/���Wl��&,xy�����&%�*L�PG�~	���e����d���XJli����'�J���C�G�%�9�6�s�J�/��G�Y���3�һD�H��Ez��^���q����}���v����k#��q�k��1�i3�x�9�`Ε�QsJN�uJL�����i�<�]�xY���#B^x,�N^(��­���+�)�//�>V�?��/W��S���]�W's�RVV��WL�R��B������eZ�7�������ϳ_�ߓ�4�L�p0�|�0}���|GT�,�US�UC͘���&�TR�jȰ�h�9�^���\�s8DT�~�������\�-��M�6)'Y���[�寗˻K%2տ���=b�z������T-��״w���4mw�|?�F�r��˚��7�k��q��0��T��y9�=�3�"�qz�f=mi��k@_�6%g,���VBv�thH���`��O���|9��8�kBD��RXl�Қ�4b]dXeX0��)ǿ�+��-�\wh�4���Ff
s~t�Q*�n����cK�cc�Fm"�|_K+%AT�ͭ�P���^��^��V�'Ǫ�����Q����l�����<69Vs��9LC�[]O��jl����W��4��g�0�L;L��.���A �9e�\���\_Xi�C�W�H����72�7�]%��uO�ؙ�)b0�2��ɕ��y��nj��-�M)���(^q�6B�vz^��j����GcD�,N�2����j_��~|����%�+Q/
_tp�|�w���2ϴ8.�ܻ�����;���O�<��%d���s��M}�J8�K)�aűL]�@��,s
�p��)5���J�d�g
���O�߿��]�3�vuƥ-.�~�@�@vt�SA�-�S����bP1�6y��D�{����BD�D����˾�_�*��������O0�LM-�?��L�K��y�8���0���g��/���q8�����PM��`�K�Ө���n��c��n?8��h9=�'�٫l��;�������7
e^|H�P��>��Gx����?ȯ�����P�0��$Y��=�	I��+���ϜM<q�id.zݩD"y����&��^�xK�7�����%�$��O�3I�
i�Md���D�$��ב����O�(�	�%ֻ���w��\3�Ũ��m���ԙKd�G
tl��1�F���wc��S'!�]�,:М�v��p�`.��_�9ć�)j��u���u�^���.��H�XX���(�W�\�G���`�i�;��c2�q@9�'	��sH�X�{1�N���������
c�!��A[L��a��p��Kd4?  	7�ɆBҍC3��(K��bR�1F�ǘ'�=��:�]O�.�mGy�3o7sQ�d^�-I1x[��\"�����%wȲe�tg�8|e�Z)�kԌ��<��eM8�$O��I<��AK �Y^�l�P�#s2��D�9	N�����2�s�((�}r�ɢ�u%_�3��mA�
I�����ؐXft9��i��BN���*G�
	���	�%#��3#;�O�Q�q��@U�E5�)��)
�����U����tF{D$2�A{<�u��H���㟠�x^�Fx��콛�\�R�Y�dfSI����\�~�o�EA�9�����}�T�$�|¨���I�D�VF�á"&AO�DA�8Ir@jD�߷�&�b�C������-2@#D�Ou�Y����=�a��RI�r�s�P�*:%�>Ms<x�T$/��EN�%��d4��H�/�-��[52�
D�Ku�o$)�	N9�YwRY���Bq|�X����&	�ȉW*R�rb]%jU�I�.J��ɤ({3��/Z�XǷ����*�(�N��V@콙T���ٟ@rsс�� U�l�	�L*�)<A���N9��.rE��I@�^�*�� �"��W=��J�VGP�� ��D�S�*� y]Qy�JJ4J\x���O�6}����7M��@��Tx7�V�g$Z��2�	�����z&S������P^]��̴�z��G�o�l�l!�{��U�L�Ӭ<L�0�EGK��g��™Z#2����;Eal�.�O�ZJ�i>�+�E9���¬�k!��e跣�Kh��3�"_���tp�5b�'?~���v��Jc��8��ٟh�8z
�d ^��n�D���/<��&o�w�3��ɕJ9����1{~�x�!��E)���`޿�O=�G8߯ņ�F�ϓ,�[a_)!�J��K�%?���r�y;j-��(�Ѫ���H?���Ө?�@u�E>^7"�&���;gщ�T3y���n��EJ>��K�n'J6��f�1m߹�{����"g���r�T�Zg�zP+:��	V��{�zƩ�UJ�4D1k��U�Ƃ���L��q�� �� 
�ۚ�s���b�3B��_�.w/��8}��ӿV��04Txa�P{z��/���o�Kn>��k�y�'��g���̶Y����—޲��Kn<���86�Y���F�+$���aՋ&��5��x������R��15L��ىw���Q-L�㙉��}��W^��c�����G�x��:���j�f9�U�VJɡڇ_w��}����_����;���fJ�4AngqL����bD�e4�I�O�>��O���3g�w��R��wN_
k)\��sK���m��6�!_�w0>p�܉����������Z�r����{�h�A�׏w�Iu��s�z�����Z�)A��;���1�h1�D��¯Q�5��ɯ%��fnJR~M�[c���ԙ<<7;<11<3hb��W]u�оYh���09=3۞\�W7|c$�ɓ�xf�.���Z��sK���ٳ����n7��odk�YY�A����,Y"�0�'̑#J�3�d����ט�(�`��X�S���b��A��l����?�˨(��`���1�vszJՂ�$��u�.�l�O��sk XZÝ`�ݠ���kH&�ڦ,���FOww��vv��`�L��>�Qbܬ����Bq���h���
��`1\�P��$�(����d���5��On����
�6Ú��D��E��kƔ�5��:L'�J�R2Y�Y'ož��~K�eW��i�f�:�4r������m~��"p�k
�xq�l��8�a$-�V'z��H:�,[�����e��j��H9�$ə����<p��N�����p5��Ki��`As����x����!��q�$�TAL�כ,[�'�v��8�oƊyn��U���F�
[<��=�p^k��U׊.��)�]nQ��3�yQ�����lOT�JΓ��3?,�9n��#�u�Z��?[z�|�FH�;3��e�4�9�ܪ�[�iC�7y�	��i�e��<I[��p�q� �n61��&�%$N$nH����c6���#Oo�
����Z�hÏ�0���ZF��"1�|����Fp�E��Eӣl���z��u��$���A�}:f_e�&=���傈���
,>>l�,Rc%�kG��h<%�{�ݸ�P�F䉤Ċg���w�lֶbf?A�E���I�e�.���G�-�٥2&+���~8� W�����Rd<�G��7L�����s��b0��H�eB-aXT��!�޿~���ݒ�.�"B����yG���|;�e�Hv0�@�-_]�3��;`��ܐ�j gjL�F���z�ĩ����ս��K4��6�5�ۈZ�߷�zs��~��=�t⮡�96U�m��ĭX��������+����5_}ru1������A��
Fl�AA��`F���l�C�2�Ccdl�D��Sh�����V��٧Z�F/�O�S�!�l��liᚏ��� ]�#m�����\3a�	�A�ML~��ן>��E䤜3"����FNA�Ղ�HR�K3n�[�˦0������ti�G	Or��(�����Z���o������8NE�y֯�cC��䙗o<��8�@r�J����T]��U�L|9�%�A/�y{rk.��AN��ܠ�~�b�X����d����/�0��Y8�9��cT�DĽ��&.1�G;�.��+y�irj�Ta{~��-l/�%��z�}S;�K��W�~�R�����]n���mV_�j�0k�$rC�P*1���"��.�i��x�qdk�מ|�����k�OO.m��N�tu[���)��ٽ���#�/����n��Y9�u�x`�ӛǭB�!�-+ն�,n�c9W��Oo��^M�6�nl��������7�W�d>�;��9-h_yU֬��z�'��$[��5e]PL��d\S��>��
�m�2H�µ�E��W��T%N0���#~��ɑ�h	~��{)����;��?h������s����^�]��L
g�%�&�N�$.���a�C�;kL$,����X��`���PE�$r��!9z{�q?�t�x���Aq�y̨��Ea����c�l-�Њ6Tϧ
ʋa�١�
{[�"����x�?�8Qd�uK$�i�?����U��j�;��O�BgnKZ�y֦6WD�E_h��C
�,}��׿�wy��0�y�4����p� \�*<'��S���Ps��\����PT,=NzI�X��Q�[����g�CC^ygdk�0�dD�1�'p�����E_l��,	�z�dSo�ଦ�
��:��Ua��Y�#�vbg�R���t��� �jc-������E��BA/&�P[Q�g��>�v��DL?�Fr� �ЍX�ů�,&��k��%{i~,]k��Cٜ���T=49u�ms l�a��<���Ī���sh�8�L۞\�)�/>mQ�8Q�Mih�ͦ�7iI��j�<�ȍ%-��0��)j�z��){�@L#�j��"I��s�VG�I�U>}����̯1Q���Fp*Ŀ�m7�֯��&��5G�}6��e��^dP���E��l�q$��B�w���FFTtݱ!�CA>T����f�,�A�*]���7���2><���&U"�z�mu��o@^��vq5����.��Y�痗�Z^>���=u��S��q�p��0^��Z�Ģ�b-�6�0~f���:l)O#�pE�bJ�%�`^�>e6��*2iW�zz��1��h[*<ms��l���>T�bAb&��b���Tj�M������(M����2M���E*� �&�lVM�dǑ�BNƟ�w1-}3cqm��ϩ��� >�N�cN�z�j�º�Èq@�c��Vo��N���$��cG_ƥ�|&�g��r�9Q��ѱ�Y����mG�m'�y3���KR�d?����5s��%C3����B�0*�>��\ú��������-�{���}�gˌ38���a_���-rSy!���XXY�ᐘ�6��ָ[�$�aX�d�3IE�J�&����W^�+�-����� O.�T�>G9��ΰ��Hȓ��
��ΐ����V-i*b�
��Ům;h��Jk�r����(z����8�a�Xq�� �����onߘُ�B�|7��7�!��ZN�?g<�Ab,~�,� :����E��(N4�^7y�e趖>Z�c'�kn�����F�.=��c|�pq�W��
��S:3vٛ��,���Ɨv]\<�T���w_9�N�ǝ�Q����[:^O��+k����E����ȿ���%�u�l|ե��7���
���}��=�R�x��-xqXk��Ú
U_8ow���K�'㠃Y�DR���Qc~ӱ鴷n������H��BF��5M�A���P�g�O�,��g�+�9���x�$���s�����O·Ⱦ7#郏4�<?/�|}���E^X�e!�8X~A�'�y5N�=|�y
n"��b�>Jֽ�V�(�oj�d��%�/z�p�񄿗ӡ�Q�+�ɤ~ڼJ��r##�T]A�Y� �/f��X���7´B��p�+*�(��1_��Q��Xw,ʏl�G��e̽[�8b���o��
�C��y9-���M[k�� v�߶�ڶ�z�)pN�zWk[��
�j�)������*�<2�3p� �\�
ĞE��`�5��4�tZq[�2��:V ���W�J#3��_Nn�8Ǻ/5ÂgQ�O:��:][��*Z�çH
��ץ|^�C��5C� ��#�]n�l�]�KǞχvF4��
ߟ^.ɡ�r0<7|��3J���0�T[�lV�;rjHT��}�<D>�of���\�y�2��\�Ebr�3͂�q�v$yj�<�q�v-3�yx{�y���!G2�n<`-TJ�.I�\��\�K���>btkG�Q##��"^׋�ߺ+9FV����FQL�r�frC��܃�ۂ�Bc�J���.�.:A�Y
"�Ac���2��T{y|b�l.��2>�����{W3_�Y�� ���>2���\�
���o�v&���䱇?��>u2��3P�Rp��WK���Y�Y¬�U9���o�n��p��V�s����#�n(��;ZW^we����?��фȎ�1?հY�u[\σG��j��F����}p�3����;�8�k/�pf�Yj���cR����yJ������S��1؆����w,�jV��$#��m"�"�D3�v����
X&_��t���Y�/X�|���H(-����BI�id���W
�o��}�/93YH'����L�~h�.����v���{݆�����K�c�e>�X=9$(>�J�(�B^\K�"���I��3)��f7�r�un�&*7-,ܤ��{�����ʡ���|��^A�x�h�� ���j��o(]����o�c0�s�<�f�up���L�ࣺX 1�:�� P�<��؟��O�۝t��4�["�*a�r��ԉaH����RC��������p`�B��&6����,Yc��#�E3��X�p��M��O�p�}�Yd�/eS�ؠ�Zd@���8����B@‰�Hmbئ�ɢ���x$�x����971L�RK9�2DYs����B����RJ(�Q��njJ�����ߐ��ߋV9������C��k�I�d`F�l��3UX�����r�hnI���
�Ԧ��]��X��M�cz�5J�hQj�X�*���l��E�H-e��*S��t�&r�>�l�^6�E�lZ��v{!�hG��?O�'PEѴB!J�hb�Oړ9HP�P�9�l���LD��5����8�}���S��Հ�^�J��E�Eg�Pn����$�"�<ܯ��B�D�̄��221k�x.�e�����Mzy����N��c�?5Q�UC��R��;�Cv��\)��(�a�R�Ҍ�����<E'���ΔH�M5�7�F�Y��{o6��ffFn>�IB�І�݊����FR��>���syR�^��5�RK����������܍X�h���wL��둄��勮�cQ���2�5�G�س>��oS�n�R�F�h4��l�,��F�j�N�_�Ij������t^6�hX��	�� �wgv�%�km2z�Z&�ќ���dwH��Վh��ܶt�w'#�R$�34���r&}aN�+�qCv�!���H	^��L��e�%�F���腒��݆,�WL���n�<#{�g�8�H�z�Q���Qe['�Qv2)I�9^R�p�)S�ѭ���Jԑ\/�ϕm*����h��)���+q2�u$UFGB�t�S��3OyN5I8A�$�4(�L	�9�#�39����x�QJ>�yk���EbNc̭s��SX����	�9�1�e�r�@�h3&=�'�7�<㾓�1���'5�w����4��h��x��ȁ�6I��4r��d�6��2�ŕ9l֪f����9(�UOz�Bd�WE�Q.�����B� Hk<��!q<�mE�E�\��UK�V��#
S#DV%��Z:8ra\�
�*���s^�؉��j���+�kS�O���)�0��Zfop׃���Z�%�;�#�I�x��f��v8<�r͸����[��s�;����WֆV�!�&�z���s*�蚕�-�X8t�(����S�5+��}��@v'�O�A�K�@��V$!
ދ_��
d�{�[n�>��/��!�ދ��a�!Q��В���o�*^n�1Z��y�-�tw<�D!��ȏ;f{A���eA_h�x�BN��w���?`����y�������+��a�P'��h�ƭk�ѽ���=#���iQ�3�&Μ!�3��q���N�����%ߙ�|��+�غ-��	���@G���NI�`0�\k�
���cnkG=����F/��i�S���a���m�7�L[��*���*��M{��K��nJ�vo8��ܰש�Qmz�u���P�X�ma"I����w<��)�h�q�D��>C���`�č��%^�xGⳉ?�>w�8�� �[�A<w�F�c�q�m����I_b)���k�to��
�ui���|���O<������0_zP��ϫ��ؤ�9Ξ4q@p)EE.�6�N�i�*��Bה�9" q���
UvR�`R�%հ�ϹY�=���| �ӽa�����4�i-����ím'�|��8xZY��:r��������|��8��1�x���s�����3��JF�z%;�:UK�����:qmʛ8 ;�E6��sQ�_�*�6u+ �B�����:��w�?\����;R���đ�c�?;����#|o�|{E3v��ai9~u��|�q��Ot6�;�q�i���r���BҕJ�=�_o�UM�&�'�Rq����r~��+��%Tʃ��ZF�h5��m�u]�����L�dȐ�Z2[���g=C�-LJK�9g��y�\�~����@����…a��we�$���8&:�
r�w�mmJlK�&�$$�ڿ��M�ۘ7�_��I2�E8�ԛ��a8%�N����[$j��DҪ����z:WE�ăo��a0�1�4�x�D0w{C�B��[��QI�R�)�Rrnq#�u3�2u�!��(9AEZ�RR!4I�%��^e^���_��ov��6�A]ܳ�?|2�'a�^�o"��e2L	]���_��M�D��&'�fB��=�h)r%�F�>DIc��)qR�b	�R���eę|U��}���©
��e���mcіH"�����Cy�Mʙ��F�WJP7�fy�1D�JC m&�PGlt�	`�I���"�=���m�}�]{��t5J�6����̴�3��ZY��ʌ���L9Z����x�曎\����jK���ٷw��F>��2�È�2��\O:���=��W�5&����^���B���hS��s=��5��y`0��"7I��C�`������6���	Vn�拑!p�}�bN�T��̂-�iS�LӼ���ME�%'k�A�WyJ���?Q������Fi�K�.�jv���˚��4�<���wRݥ�š��K�(΢�ɂ,;餐�2�Jm6W���E1��V�#�����UP5}����lw�~�[�_ԑø�-�Z°���p+��D[xL��M�����IJ׸�y�����5KbnB�Y}yQ�i��ӫH��C���� ��뿞8/O��2ģ�b�CX�b:nh��A�Y�X��:�bDH^4�'�WG��E���@	3������� _c��؁8����tsOI1�s�FX�<0(��� �"¯�e�)�D�eY�eML��B��^�).�U+]bE<cS�K����d������z���*��4Os���t̴�#p�&@��P�]����Z�@Ű#�pC�y-GcY�Es^NF����5��NQT�Q���.
�
�<���"�$L
#q��M������SM�[pv]5�3sQ���C��V�X[��!+:��^���=��-�4�8��5�%Y�e�㺲)wt�%#�Z%��q,�1����ɠ�MOȍߓ*r�t�k-ʽ��G�	x������#gT��_�+�8dȧ�ɶ@�kd��9�JST��;����H���4��ˊl?�{�)��]9�C���P�����G�GR�~�+�bH������Cvŝ��ȠF�����SCH*ULC�.���A�����~�,����"ƲW�ꌷ�1�!mUc��$X��`�m#�,A�u�wE���a׫i�]�'F%���>$�Ʒ�:G�O$�-䉢�w@���a�g-���}�3g��{g>z�qTWTUrEU�u䌬�lv>��͔La�`��8�<�_����YR��Cz@Q:���tY�f���z�}��T����;|�R�,�Q��OY
q�]Q�y݉ҩ�HE⁎��<K��PQ2L_�j
�}`��J>	�|&�J:�;3Yie��EH�؁�J��+N�C(h��E�di�A:�<��I_�D�T5�S�ZxٶMK]�f7�~�\�YV'���&�L�5�q`�eq'���<�
2�2f�s��4�m��c�,tfm�|�A.k��4�}�~v$��������I�҆�Ӆ^��r���j<�%�@��m�ɵ�ژ�����Z�iuM��aCg�p�
!�hU=�d?��bI�ł�FϷ�;�G������A�e8�$y���_�u�}#G��ҭS���ϝ�9��'�.�v�"��х�� F?�;�s{�������a��c�1WN��E+�"�Q Ȗ��|�i���|�y�O?���GkG�0i��f;��٭�-7� �z������jGkN]y���^�ߒKG�c��>M]�l�O�,[j�E�lN�Jܐ�X�3�D7�h�Q�B��u���X�aD6��|��D`�������.3O�C�Ӕ�l����b�s8j`�������|�����HB���$�n�kQ�bH��:.�}^}�.˺�HKG5A&�Z��Z ,H�ry��A��f� rL��(��rD6�T
0�!�R8Q�eη���-���Y�|2�4��Gڇ��q�:J��!CӇ�m����D���o+t�vi�/�d�Qh�r�)�����
���c�}��AϦ�o�t�_���Z����G^F?xY�%S���>J$A\������+�aC�a���3pI5HB+0rAZh-��U�U-:;�򥪨9�9hft��x���l9��>\��_OU�ׄm�E���Na�l�$�A����ϳ��3^1�)��6Lu�NS
b_�8L�[1VF����|ڰ1l�Z]r䆔�!'�@oQS�
/�鄫�R ����:��:Y��IQ&�=�s��1h�.�����R���W��ފ�����g?O>mut����n"(d�F��jdP�,��<@9h#�g��̵9B	��A9��#
_��F�Q��5ڶ����^�چ�Lo���8�nTO��KC6MN>��p�{h��8ވ�[�t�(IMF�\0��rQ�,�5,2��ʉ��S��Frf"��	}��>��v��Ԓ&K��Gd�0,wz�6l�-F����{���^�����-�]�H��McK�V�Rr�ݼ��\�I�o��ܰ��%狖Lo�$�u�L�fa�.�߄*���in�s�<��#�eW�N�xQ"d���^	���A?m��d�%���J|ꈺ�ӄ�1x	��-'�2������;D�,B�^��)��4�)���9�/a�>o�	Zr��Z ��δ4B�Mc�$�R/><�N�����T�<!t�y�����u�?�j��&��9+(�ܜ�6�"	���ռ�+�J(��-ʜ�#m�S�W�J�I^!��De�$���V�R�X�	����<��*J��;�I��9�C�5h,[��ɓp%/�4�%�r�ϩ |dIk���Ѕ��lk�Ӗ�0����邐Έ�U9)i�Ot�����@N@����6��Z�U��0��DJ͹ȶ�v+M#o�8���<<`$�����=�8��q�����"�W����cI����[n�w���j��D�~�t�u��S�~�oN��ۚ�t(1�ɱ��|����<gc�P��K�TS�膂��SQG�X0I�1�DZ#yfuzzu�� ��9�ד�J���8}�z�.��!Q�)���� ��kWW�]%�4���J��<���}�j�r؊3zY���P(�Ȳ��?��*Ɔ����$笓ʱ���:�t��N��1�8�j2�r>�����.��(��S)c=DU
���%��#�@B=u�;[}L���D�yre��gpUDN9)7]%b���W�Jt%��$L�����QQ-T#�a���v��S���rfmg�—&�`,_L��/���Cz��<�I �����b�Q)/4Q./��$�����TCb-�(�#Z�6a�^C���P�}$��Iء@+0'2An�CůSJ�5AZ�H�_�U�^���*��2��O��x��5���,T�%Jk9�@�[�k�n#W�w_��n����N.�n��e��	�,�����@�F_�w����l��f�b���+[��1荴&��0*����5<-�oY3�a�O�ſ�P��s�lH�,�9�$h���٤�'Y��rԧi����t�3wѻ�j��ʔ3�!����X�\&�g�K3��wЛ�Ь��'9�ڋ��8!.�+<�Riy�U��n�z�+\}
]�D�u#@�rx||���NG'�q:>Z5�֠E"�rkd��i'�P��1	���$�SP(��Z�C�q�'�p/��؉h8�`1o��c/�C�K�6"�������ֹ����;� ]�,�3h��������<�F���g:�9���iɚ�����8~�>���$(�����;�mU�V鿗ٶ�4
��lS�Ք�i���x�W\��2�h
X+�f�a�s�ف�u'�v�	f��b�J�Q��q���z�~�g%-��qɲ���ټ�����6�&�$q:m��]*m~x��!�'K���m�_02o�`C�"�rk<�]���},)�F�Ŗ����D��bb5q*q��'ޗH�Xjg�8�҈ǩP���雥"��qT��6*A����-�ǿ�N9dt����k��5�[)����o���w�1x0j]Tjc*�Xk9��7TI��DP��?T���_�`7ԉ���b[��/��z���jH6�R�ݰ,�����^T���Jd��+�b��t��=gJ@�E.	Y�jC����nt�
}��V4-Y�(���ي�kmJPn�	�ݒ�@)�2��eM��H�Ĭ�hq�*
��D�q�,{LX���VS�[�t*]ʀ1�dW��H�J�UK�U�dd��\���[_x�g�l���[=�K�'�2��W���W��K��r�Ɠr;�Y(�A�4q0$����=��8s�5a�+����=�A�N�[�P�^Kˏ2��#�ZG�a,�TY�v	k��k>t
Оz��L��|_��[Jr]wQ����|e�<]x�?�{�C�M�|��
/t�{��ܙ�OGZ��f����I�VV��d�F�`��X����,�ui�}��M�E��Y�>ɂ�,J��ɲݑ���¬���[[/�ёM��+X�pZ�����vC'uyr8�C�
#ӹ�{�J�*
�k�Hs�[�ܕ��(�SƲf�0��;{�W�;�K\�xg��K��8�OSE���
&�@R�N�.�z�>2$&�‚а�P�����ޜnO��.�hm���8d�@'`�	�LG1�QcB`^9����󨲠_]�3�#x���j"��a�a`�����T�:�)�i.)xT
8>��H���Y�4;�Q��J�%�9-ը�ax�4�\X�������xj%Tw�*z�d��Q0�h�7]��<���o�Z���	=��%A����6z���t]��/�2R��
5�I�e*�~�S)�@�w��]�i�'�5ܐh��AW �k_`\{�q
�tB�G�nS�eM�d
X,����9�e�byUB����x"�*T��/m�e���M;R���((������&�U�����
���ר^Α�"�yU�����egY$��Ęu`�LNDAM$M��B0ퟭ�5v��JchG�Y���b;�Ƌ��m�ؿ��D��V+O�!���T��nC����F�q_W29��D�=�؀E����fNZ�2�l�Dkh��I�u�	�Q���etU�I��YC�Y"*����
�U]U�$2�MR���%CB���:������Ac*^o�C��ۂB�qi�r��b���+�,�/7�#
��_�p4
wqQ���p�'g���gF"���������1V���߈��%�01�>˘�'�Mwד1@�E�b���܊(���G%�����S�1hx����VtN�{��L���:��+�m{k��ն	5k��r�����A��U��\�B�;�4���\����Ϋ���;p�U���S��S�q��,9v�5�(JpϷ%d��1�$�kLx~��#�
23�Q~���k�y4�K�	��+׷[r��r�Rm��p6��-x!�޾
�o.�m�;Ħwg�dl��玧R)f���q�vq�([J���1��>y��f�4�'�{���-�E��c�!v\\�@C��b��lĘ��b�+��k&fv}�FY^��YN�7[�H%ejZ��9D��@~�{%����RȀ�YK�@���r��r�e�-��Tr�-R��oYZ!B�c�lt�����	�����'yi�)�y�'dt���B�}E�'�
�Ͱ�#�|hG�Af犟O51��Ɍi@�&�\̮?�a7��8�|-�.�n�0�K-�E8���L�_��s^�2^t�3R-7-r�S��(�.���!NT��5N��7�E�RC:����W��y*�k��Sj�cH���0TT�[J�'�lZ�,�&�d(˫��)4�~:�b<�3�܄���.����9s��o=7�?���'��7�|׹�п�����G~N>�l;�D�j������B_P����Kv�Ý|g��6��;g&�>��ޯ��s�Q'�~�k��0����o��U���.^<}�[>S�ܚȨ�Oߡϭӑ��50��tQy���J0�-�uqM�;�%�"�9�j�3�F��]���a�cV��;<u�S��Q�?f���*�S3#���S��}�
��),x�{����s[uqIЍ}`|��jnm��V�Sۛ�re�S���/1R�'�a�D����[�>�y������I\��-��c ;*k=,�F��J<�'341T��1nI�qAs���a4��Gy�	�{��DX�Q�7\m��օ�I��oj
��Oz��[nF��{�I������-����gs�1IvU�J�^uq��ov��L�"Q�7=4��Ж�1�D�C��ܫ�YP|�WB>7K|Sԧ��I��������!��h�9����2�8Vˊ�p�^��	��<�+���(ME��Slh����fخZF�7�\섢:�fU�Ϫ)v�CI8�|�g�x}%1@+O�JMܔx�*c��e��]���RYDh��O	Hq�K�s�α��8�M7-1�|c��J�Jv���\"Q{m	9(���D,��"�ڠ�HRKU8��eߪ���q������u�DN���L���-Ǜ�9-�
���$���&�)�J�o��E�8^�tPHa`h�
+�m�^�s��u8N1y�P��L�&5S1/��ע	���P�"���n�hh�X5�,����\J�d�R�e�]�h�9dء����d͋�tỹ�8�A*Q�"Q3��$��<Jr��w���ˤ��������ܸ	4�����d~��� �Q_��h1ߒ��ǘ�	�X��e��b炔��+�t0>�sIechts#��#��c*�Q@u��ʁ��xh��m7<�Y:B���݉��}-����{�6�Ɣ�]Ƭ��ة��M�P����TT�b
,�[�Gb��t������Z9%M�+zSD�
]�^��f�``��0�Vt��@ک؉�Q�/xAR7bgs�d�˸K��|��S(��
�vA}����7g�?Oal;�!%@(�%Xcx�ѭ!�n�%'����Ө�c+�5w��-�8P N�*\)��yhnu�, =����(~{u����EG�I�
��X?��S�<	@�1%K�A��*�ꔪZA�AU*jtߤn��@K��T�'4���p:�Q�d��=��7�Eΐ@�`^l���S}������-��$��k�dj*���$;NsVQ񏋚�X�!Ɍ@�t~J"JL�j�pM�}y{dP!m��4�bBe���K
3,NRE��lP���_-ڑ�
�#�E8�d�6��K�#�=�#��;p�#��W�)Q���h��~Q�ވ�z��TG�Q�lKS"]�2b��b�E�9
 ~�!�/��"���!'5��Aɝ��<w�V٪N47͑Ї{�f�1������͏c68�L�,�\�p(��2@~	"`I�C]x�DQ�%�C��cU]!A����N(Y�C�T�f2���e���S�db	B�(I�H�Ϋ���	7	���NG:\����2�
3SK�
�P�h�H߯�Dp[��W�*-0�/h<�u�+��5��l��B�sL)UN�jb����8���Gm83U\8�"%m7�<�S^���f(F������ N�P`�3	;���\}0�-`B,�)����O�u������6�-?�愵��</��?=mL�~*
�e��=��E=�3�z��d�G��z*j(�`o�4%�l��7�3�&�q`Z���&�A`��Y��@�A�oƜ��D<S��>A�Uzm� �a5�6���vzЫ�i෠82�Hɯ"S�A�1q��L��'_�|<sb�$Z�.��]���)b �᛾}��M�-K��r���c�2�mUj��Q�|�P��{��+�J�J�''jC��mU�8���j>,�9���A���e�=�4����u��bzO�e��ED�\��i]���E� ��������{�_ڽ��噃߹������u�΋���_�ˏkNvk��M��=��K�i�8Y�E
�ef�SoD룰���UVA��,X��դA��1t|t�&STE)ju{d�
-+�
'ڰ`��
9V\U����yEQ�f�
&h���ՆR�dF<�|p�2���jH�N:NҶq��~�=;Uɉ�P�P��y���e�����\FN���T���QOr5P}��x9DZ�xDi:���5H��'��_u��s�u;��@�<����+�O–��Rv����E�:�=�C;�tp`z�8��`RR�w�c�M]����u,��Kn!���}�G�!�ڻԳ??�}z�<]r<ф�=��5L�;�t_KQ"`�`�2�i�0c4�nGݰ�.�
�&�6m��M'�K�rj���|�L&ɧ�����	�h_��_�I��͹�/,�~nn�<�]	�~�\q�҉����j������Ƹ~:�xb*1�c\5�Sb�
�]�v���l`��s,��(��zՁ����~��`��u����A�s�TA�H�)%3e�7K;2�C�H�,�wʻ/*O��{��m'�6U�ʔ���n���8)��t�H�l��?���$Wy/Z�T�9�CW���'�tO���ٙ�(i�����V��
(�Dh�+aB�`�$rp���0�F�_cc��{�`d��k.��a_3���T��J�g��ߛ鮮��U�|�|�_���l.�\��e��ZZ�l�xT������kw��;E��`�����2ɖ"�&|�5��c���hōb�.��R�.�Gh
w4Z���J|:��G�t)���x))���nmiGZu����Lc�y��0�/� [&�]�����g����35��d��n��{��:cP��Ή����;���f�dλΦ3�g�K�f���B���CS䔔n��ѻ��VW��я^r���oY'O�]�b����5k���p���g��i�Si��7�g�?���ӯ��nˡ�F����'��bi��&%�$b=*�́m�Gk��4���>d�;�ҫ�C��[X$��
w�v�H�_�������Ʉ����q���e6Gb(�M���f���K�@"�o��d-���c�/�!�� �-������a�:9d�Qͩ�kL��!+R�pa��ta�\B��"���*y
%nս��b�l�)<���F�W���NjZT�����l}Z&\�$V1_��-���IQ�t���3��T��0+tG�tԈ5U?�Yy�PTY|xe�ETT譺�o��Y(�6���������0b�r��k�T��E	ƇsW��n>�`j��r�`�7i:�N�ZhR���r�V��J]"[`~7u?P��<��{>��w�h���l��n]��A�v���B��ҟ��X&
_�|�f����mtІ��pt�Cד=���O��W��w\z�n����;_{!yL�4���[�ݛ	y��v5�t�,�8ů��¹� }4+�>I�_���1��b��'�{+;dJ�/E+g��4P�gR��vk�:j
�BZ�z��:�.@ta&^#��&�����o;@ѴTUCs��hV�:�<�:���o���T��^ �|見^���
��Ը�a+���[o�j6�&��ܿGs؊�;c;��7�TX;X�����'�O��Eb+9�~��<���G~=��
r�(�=�?yr��0]ϯ%����&߂�y�4-m�����c�l�*��c(�&Uh|��V$�͋d���yț�<�q?�'w]�$l��K�Vn
���{����\4��~;ܒ�l�s�UV[�����O�!�]r��ԩ�j��GU�U�)���c��Oz
�@nY0��Xh��#�5�eJ	���6fHlBm�
�5�cɷ��=oQށ,]��H�z�e�^����(!�".%�7�@^���!	{���f~��nu�wg)��=֘�{u��"��[��Y��Β֬�C��Y�aDС��0�P* �B��������-dwj���>��6�h��]���]\�pS�bn�.�a��� h!}1� O`����1L+S1�Z�dBc	kke~�!�3�WŘ���/+J�(o�wvȿ������H?S��	Ю��U@��	(�d�t�|��Y����B��:�m�ݗs����\�?�h,��.���oY��X���dT���Q:k'�LG�|MW�?S�<P��w�/.@j�W*c,�n�<}��e�	t�u�]�
O�/�Ӌ�/���P4r���	Fq�|��8!�\S�pL'�
9��PA<FI��X�����?��(�G��,��,c����G77(����$���z��$���WD�Ω��+�_ȯH:��-a�`P�CA����>AV11�G��m填7���b/
ɫ�Zx��_󚣃E�u�?�j�;,���N��,�.��wzo�����r*�����Һ�g� ���e��CpE��(Asze4q�E��X'v���/���:�QJe�����:\�&~l2�BG�'ﶬ��̨�n�\kZ�o޳o�`�Ъ�dd׵�/)J�z�u�c�ꁡ��=7��k��|Zp#����}��=T%�Q�{&X"���n�K���.�}W���Z�quϋsW*+4
UM����)}}م�j���re�=�o,��ɪw���&��k��Dw�܇m���`e>S{�ؿ��(5�XM�@Z�V+�8~����#�o���k��b�Z�C�ƃi�������}�+�z�ε��;M��v˳������>|n8p�����>6���h$<���Ǥ����(��6�dbo��'T�/���%O%�ZB.Hj/-�M[���A'Ac�V�7-�_�EHy왔������3G�~R��i�)�NE٭+��S%��*|�Q%�U
�_�����J�e�Ql��;�\P6�v��&�a?�H�VP?cy�o��y[6��٥�)��+��>��v���	��y��|dn�"ק��z���뚺�+��� ��6�|����x}� ����P��l�C{v���'w��O㨉�����r?Pk�$r�\����w�kdtx�k����Ia㯓��/?��Q�#�wE@�<�ޥf[m�������1'd�7Iv���8��9�Yٱc㏾��o=�k��S��%��~ݘ6���_�֊���Y�aV:��[���<Xbf�@ z�*�
���� �)r4��...��s��jԤ��X�z~����se�d2����]�RU�D'H��ir���~�j�Uo#���	�V.��ZY��f��j�;́ې�G�-3#׶v���s�KV�kZ�:����>g$
��5�N���KWKߓ6�	2h��<y��M�)�ɟ�oc�� �+�5L\��KVqtB4�`���^+���x���a��㤂(�B:����p)N�0�?.�4a3%c�*ɳ%n�x0ꍆ8�!l���
�������r
����N�	τ#8*XZI	X`��3�w���"n$����,AW7���4��K����b�1g�<�����o���D\�������a4J�0�����*ds�H�cQ/8S����ќ:R#�E�����)@� �\j#M��H�G7o�vQ�����8Ҡ�����U��\��	��u;��Y��R�LVO-�jkU+�p�!���U[��oȆ���p1;=�,F�\1�:�eJ�mף�c嫲)�$*���LѲ
	X:�FdYi0M���o�*I����
�6K3e�E�l�3�k�1â�ȧ����HT�Z�n���0EED,���Y.Ì?�t�R{��Yh,ɰK.C��f���g����t��u�C�pb����S�p��j8A��^E��U}�)��D�/�h2�Rs]e��ITy�����aL�a5Q^Xj�m�l�FTgEF8��71�mDZ��^ŀ[�+���	�����or�0]EQt��v�"�eU��L����
��<�U
�e��r��X��}�)���u���f4�.(a�,����L�a8���eL��v�J4D)�"J���E��L�D����z�	�h����:��Afi�Ni	�G�3�+�c4
��ض,��2U#�]��Dͩ�&�)�y&�t����`����wיϠ3�/0NX?�5�n�����n)�a��\��dZYa5�鮫3�Ɣ2���ãb���ubp����)��B��9;K�d4��{w������3Gg���
��?��w0C�7�>�*>�����׾$���}�%.i,�9�dP����+���(t(qJ��ܔ���kg�';���F�o�:�x�(@�EX�)��hpڑKBa�b��C�8��Vc�[:'��QMr����$�<��L��<��A���M���W�9h2�r��O$.趪�,.�0ya�!
�7́�ed�11�*T� J�mF�n�)�&;�'-��TPP���UTE1���
�M�-���Uݒl	�o(*Q݀�.+���p~hk�����`��ۡ��[��{)��Rܒ�i�/��İ���	-�y���S��	��gJ�&z:��:&��>7��ȥ 7���ː+iW]#�)5�6!��v�
	��o�\����ƹF/�U"�|��CN�?�\7dn;%"A�ª�0�	�:�����o��r����g�a��)��ـ�8��&&���*/@����b���߭��Faۧ����Z�P�>����C["K��^
oh�ڌ �
(jPo`I!��;{�8	�_a�!e+B�Ld!�����N>-��6�x��.gdr����T�u��d���{���#4�r;6�@\F��
��~qeU�2�Tj*Ġ��ޡ
�)�M�´��<](�r�<Sܸ�Tu���<oj���(=5�o5	Ct6s+�4U�F��{boO�U�� ��Jq�ai�+VT�������/�߇�;%�.v�U��	BS,�3T!�'�i���`W�J�U��+�/��fW�j��
�|ѹ�Hy��ΑL�>m��`J�,��yWn��m��Z����h{�
|7b���i�7<9a�
ϔ�Oơ�|���	�6<�Jh��v�Je�BK�a\,�sZ\;0�o,Q˪�V�s��?�eff�����JtD|5�ۭ
6�������Te��T�_~�4�|~.���]�:�:tD�ϛN������k�4�o3y��I���7��������.YМ����'_�e
hxX��>��Ź�����������;�'�|�ěNy�A",9x
K�(˘l���ă^���t�sl���0ٸ�N<
�����y-y��"����p��G�
�(����[G4�*��O��G^�wf��Z��!:���`Y�eW�X+�j�"�w�]���λ����r���x�u&)X�J� 8U.�Ұ5���[ߨaZ��H	���%�
�I�>+�����߁�{��5�"��\r1�������o�/�9�k���U�:�iX�ݏS�3E��y�\PDa�5V,��������hi$�g�"�9�*L�J�\Q�F	V��bA�L�:X,R��`�Ah�1,h��&a�6�Ga=u���-aż�MS�ӓ&�޸K��*̲�Oaƃ�N
}�1�J!dY���`)�F�c�qY�U3�h�#9-'k�VJ~����<tN`��,����x$��D2\�
0&ش,rh�Fި;�H��@�8��bn���G���-L����d�����Q���C��(�Ԝ�SÄ!�Ve#4ˊYj�Xv<��L����ӌ����@W2 1���d�A�@��Q�YY�d��=�wG��e���ˆg�U�yՖ#��jqoe��E&�g0	��QUq�_@��Kpy:"Y6t7���z�GeS���e01����Y��P�ٮ�?�e`��
��K�c1o!4�����[ɔ�U�m���ј���ѵ"��Z��w7��J����C���0��lW49cUP��QNFǍ�t5��$0'S�}V��
�<`K�	�f�!F&~c�L����C�t�2���W�	��#t��c��S^�Ͱ��*��N]s͌�yp��%fә����1��P�$�k���;ӕ���c�
c��:u���sS�Pq8˗�lX�n[ɯ[�˰l�:*�v�x��-C����{��b�ك½*XO�I�+�,�bbUU�"F�z+%���A/

�&ޢ�ǖ	v���[
�l��2ڔJ����) ��V�eE3�3Ւ�V5Pt�'G��e���)
�^qHA0f*|3�T8�N���j��Ј�TŤ$���2է��Q5��*bU��a&\�Elj��
�pc��#NY�'��G��2\y8N}��'�e�W���E�Fcěv,��3mJ���Uy<JQ�Al�l�0�~F�F�t1�A^y��_���Q�ε�wh���ߕ1]mxT������?��eq�U��ޅL��]���0H�#������ࣛ�"h�y��{�.]^�E�A�V1���3�#�7e�%���=���*�b:��FF28	5#���ʌ���S�מ�� ��;H����#�܄�z�l��O@^�Hb�\A¯ς�R�,���Uڅ�ᚦ��`�X����<;�Akbc����%��j�R�A> �_&�W�%CE��ʇs/��/J�?�:���u�e�?������/=�������]�����D�F�T��
�~	��$�/�s7�
��b�Q�&)<܌ۂP/n��Fm���Ƅn���EcL�3�9�������+�C�m�'�m��dJ�lT�!�,S��uM-��ha
|���n�WkS��F;y�J��+(S]��Dx�Z�׷��{ɹ�VH��gV��l}k{�N�rP%t�!'�b�/��7�=�QS���v���N��t{�1�m���w�1�!S�v���$�GG��\J7���^�m��eS�`�7r �k���w$I=kh���9�-d;I�cI
�	��#ge}3�(
2�Q�X�M#�j˚�Nv
�t�$�R�K��&�̲���(6ͬO�M��3;���M!͠qN��|���1��W�r�]��1]�j��r蜗V�$fn�;3
����b��Y�5�`���-|�t��2�^�~�
���xM���:�� y�ի�����oc8��nQ�ƽ���.��U���I�����m"#�r�D�v�Ճv�s�����_�m��C�>��(�2�	Q�R����.ޑk@�Ǚpr�������>|�V����Ջ��_��+/"�����g`�e���!�+��f������&��c�ܹ9��1�bݵ��E',|1�ٕ��N_/�_Tv�;�^��+�uE!��pI����AA��l��&�nG�k��bU?fA�s<�QIi�geH��|k3ub�J��*��L�)�ՈZ+%C-S$��&O%X�M�a���@����*_��J%}wd�=��_��uR�/�^���چ�;Z沤��sd2?�(�C���
��P�ݲ�N�M�p��t�5:th�ۧ�n.�ʷ�۩��ȹ�@�����	f	
�y/�A��"�wc�4#&�<b��@�F�؇]��}�`�gs�;�9��Ϸ۹��2�\��ٍo�m���QU�z�[8�%/�ӹ�!{a�n�W�z��%y;�(�[�4$�qn�5�SUg��;MS�z�s�Џt#>��<h��O�	��|v�ݏ��?��]}�Z������SW^yJj��ƕҩ�S�xL$��Lr���|X
�Y��Dg@�{��&�$���55.lϢ�Nu�b�'�cA�6��3��j�zI���&�4�����	>EQ�`Mp�бd��Đ��p#o�o~���/�˼ɸ�kZٵ�ߴ�v��fWu�s�cs]��ԯPS�beT�S�� N)0��3��z��R��^�>l� ��W�����=ϝ�M�h~�P\̮_q�zv�XȻ���L�9�q�`�H��d܏@��gҪ�|:ɪ}._x�mW���Y��϶�[�����S����kM�o��+MMk)���#�Ӗ��i�����=�H%i^�@�2袞ZgH���>�^$���)~3X�]�t�>-N�M�u����>zc�x᧷�J��)��݋��y���k[ugֱ
�k{��<�i�ꊩ�!�O<���x�[������y��ǏwѢN�3Vo᮹�ō٪M_|�q���^'ܔ���|����<�=o��~ǝ�
hBGM;2�&��lkH�������S�9e~����B��$��%I��l��A�fz�'��wꬸR���xBy���Og���CI=�}&a�	>' ��R�n�����|M�N�;���̛H��Uv}�~�v������[c����;��v�M7m�d�
���?���xǎ�ɛo��=��w3�/?�8h�S��H~�A�"�����)���V��aW�v�Ї��8,*�"��td��8*���Ȩl/��u	a�%`��8&�q�=2{�\�5�u�ޭS�����}���'W���y�z�u�����덭Hg��S��U��)}
z�*§��`�
b"�VK��F��r9o<����S�,<iTU�$�-$����ɞ�E���i]�
f?;�����K�7
���K��_����f���}���Iې)�Q�
	(�4
G������.�6�b�x L�1��a5��i�&�"�(B-����jh�M�EY~�ʟ��eՄ��A�O�+���;-K�
�5Ƭ\�������rV!J�؍g:���P�H�@_D���0���U��5�
c_)T���|56o1�51o�R��[UB��!J�T��˲�yCg,��A�:]'UI��he�J�fTɺ��7��c�9�,�T�UR�x��O�1��瞁�]_�Z}�z��OTO����)ߋ���$������Lz����'���jzv�$J�n5�`!���a�-e�M�A�!���f�G�E����I7EN��l�>q�Z�M�O���	�$UDD��xX=�7�v���"m�97�nr�Oj1�w�HwO~�$��/�F�v!�Γ��ڣyO�����kU�eF�'�uPLF���?c'D��<ً���ESSY�Z�Y�ܭ��Ͱ&c���sk�����j�J��.!�۽��[�|:-�Z�Bދc段R�?��$o��K�ٷ�t�摬�U�I2w��=$%�q,R28�I�r]��t��:��G<�����tlFB2��)i(�(��z�V�.���$=&�Kz��k�G2*+|���	�#��p�Ji��$��$fNДMP�|�?��L�-]�d�Ȕ)7���S�;��K�i����E��lD��}c]֖��?�Y��y�����zXnu���5�$W߷���C>��ҋ�1Q]�b2'�gz\U����Ǖx�]�ǔ(^<�#�H�6�{�����sg����&�����5��~��M���)�]�d����T�"�IJ&	��?l��>�㨝���c�i~ʎ5�w���ud�Fҭa{8n�J��	G��C�	*�Jy����o?�♽["�y�J^����8�f�;E{��ݎ�L9&7]O7,����*S�x���X+���uLC��9X�w�[+�kk��9�ƲU�Y�]R���hz97/�����eЩ�4�nG4��f
����Md�į!rC�����K�Q�z{�J��U�?��{,��j�G����9"h2j��fD�h�׎J%r<S�|+d*q]�ɝc�/�@�����2�}��'4<�<��V4U��$�xmT��
~M���svFW�2��hme��irp�șy�w��K��W�+�����ɹ� 
�/6]�����#��]U��C�}#���۶�|#c�z����/gr�R��}*�z��ސ���~��6^K���1?��5�S2Rc~D����L�SyI�44R�#��c�SZ���䮕#<jO;ٽ�_uɅ:�Wo���k��\�ڒW�B3_X���\�����\qm���.{�Ff���/���o8��T�wL
w2�B��9��?��^+�V����������X'1�?�Х(�M����0��ZhYA[YJ�
l@�CvEZYc;�J��b�E#�'a�'A���,�{yf�ת0�񗗿����\��(ԫZ6��tB�ȆŒEzI'a��2p�O�x]�j�<&��0�V��/^N�����_��e�������wJ�%���K?
�Rh% ���c���CoRf+�h1�v2X�Q���c�J3��P��q,���	���>D�h0�Oz,P����v�*z��+%��LE��i�
�ʹ���",�'t����ը7J�tR�����+fQ��a[q�Iy)
�����ؔҜ^J�n�r1W:�%$�V��[�3�*|0Y�m�h�߯��:j=j6�"�b��ހ���g6*Q��m߅�z�3���|`؜{�__χu�8��;|:O���dtpmg�/�"��a�	��3�,�+��W,C�,��T�U��R&(����`*Ȫz�[�|�Y�/.6U&"̣	T��|� qA�[]]72�넺J)I�6�$�������*H_t
�S�_�_lC�N��^*�8M��^�M�<GqLV�F4��S���+2(�=D5�p�#`�~]Va�%sJ�0� o���1��xEU5YC6J��?��+�S�O��gM��t(5\���װ��ྵ�*��"�Fc1�"F��p�_�[6r����Q���fض�}�U���k`�|�s��>���H�d�j,ۊ����UTٱ7�_"��he�x�V�a2KVG
���so�OO�9�-�^ɗ���f����������QKM�p��h�ʄ�	'��[��5��z�l��sb�1~�7|�l��w_�O�zO��w!�̀�/:J. �oۊG�t"�@�֫xӊ2��w�6�Xw�ʄl�� ��%_ �}^��8Le����mB�?�_���&�&��0�Ž�Rk3?䓮�'��G�Q5�%?==�:�����ts�఩��n���e���Wz��Y?Y���L�s]�uC\�)t76�ᇦ�[ǹ�=��1]W*l~Xlz����@�oald4�|&g��v6������N�	KOM>a��i\>�{�:�;K�7�\�U/�&��l�0�������WT,�����"K��G��+&�����s��^E��^�Q�O��fmM.c%Y�ImY�%"���m�i(�j��1s\V;W0Z�5e�����f~�	�+#�<ԕ��T���J
g��s�����{(�Zgaһ�%ץsR�&���Zi�cC�y�yU��S�&0~gH�	�����h�ڄsd���C����Mt����
��\�u+�\�k�aT���ڴI��q��ö
����'�ɟ�L5��;��^Y�3>H3�&��f�ކ�p��:�jY�i�ܲ�m�`#�]<��M�������x�"x���c�H�(�V����?3�WM��y����lMH�k|�\�2�n}���7����-׎LQ��G4�z�`$��fWS�o�x���+���u�F�T`U$`�_"IS/(M>�Bg�R���i2�K�OC= ��ï!�(q�aX���K8�t>���kj*.8_W��~__V�C�q�yב��g:eB�ȋ�����z��tf�
#��b0e�pǎ�6�J��FlT���^}�e���e�P��\��~W8��j~�p�>ƵY�Lz��O�C��F�x����3��>��?_Fȴ��m��u�͸q�t�{��_��bJ믎������9�����Hki��q�Ro\A���:%u��U���K�rV/���-Gr\
��"��U�BmFk�E��s�ㅹb?�>��ߵ�rR���b�\��ɶF��3���n�jס��X_4]{�y[7��⌾��~%^���K��v�'��/�/C�V�PڎL2�[�f��IZ)'10��o-B�Ft6������$q�
��v�Fq+�ũ��'�-;+���c���y�M-��.)�NK�U���GV�����WZ�z{iW��ݸ���s�V}��y�����Ue�\�ޝ5�}�ĵ����4��䤤�� ��^���6����]��9/_:��;�>�ׇ{���wٖ�V��'�����Ek���v�BR��ɓ�%~�򣝕��^�е�O�h�����c���t�u{����� ?=�-�y�v ����l���֮�U6�3s8�^�@�#�t�j@��)�q<�v����Tn��
@�)0�Pœ����
�w��:ł�-8�v:����*W=��E8Ru��j�-��v7Cfݣ>f,Tw�)��X�=��Uᔪ{�U�W�V�X�r��w���;}�BL��V3�Z�x��R��1o"^���+�@쯯�����]F-&�+�H��83&�l/Hή��%�U�)ً�����;?�2�����!"��Qf�̵��z������z��h��v>��O}�|�<�1d���!���|��kM�5�O�6a�ab�WP윐���N�2mAc��U���|7�[9�Ȁ��'�v%gW3�m�_�G�Ǻ��Y�4��<^c�1���#�b;�W�/al���9;��+a��1�f�p�{�*��)1N¥��A�o��o�I$t���dD��&[^;>[Ւ7M���e�o�{�r�m�&)�Cv..~l��x>��V�D,�,��|���P��i<b�=���|����v�ŝ�4���Z�FtZ�ok��kp�O���!8�s��J(����I�gE�g$H���ס���!�!���Y�6�M:
������)��xX�ƨ�D�#�]D�.��V}�J�4�6q�U��.ł{!�b�.¥Ĉ�bN�KLA|jĤ�MEK–e,�"z]��˧1�e\�.
Cʙ�>�=C��nVw+s�RXr����)Ǻ�Yi��zC���Rq�i�i��
�I�/r�CV��YJ��W�lВiE�
� G
+U�2n�'�����NJ�	/1e>�*5ͪ'C���!�Rm�N���]p�Z��Qʦ�S��B�kf��H��a��Ԝ/pC���BP�bb�\}6�t�f�75�Yj�wb�3႙b3��\�px΄��R��~���S-����-�B���+#
�8n'�"�ɸ�Da�0yNɵ�/_8C�]W-�<���[�W��z�w���ʽo��:���Պ�V��S��,����Z�:i��t�jw�����xU��Z��ke.z��5��4s�l
�
OI{�Ir��]�J�Kǥ[�����J�.}f3��$���e��͑�V�;��R����4�16��B�1*��VI���!�$�?c�@��-18,`��c���!Igo8Y8L��!�Q��|ˉƔe�x����)�<|�Y����i��g!�m��gk��R7S���ֶ<�r�\n̻����YuuPWojk�@s�X�����6,"b���n>�ۭ��5���{�bw�JȾ�L�`�c���Һʙe����L��}�r��e���{znm;u�U8���k�f�4�#�x1��v��~�ԩ�ZDD
�h׷SW�|n�V�q�0�ρ��w�OC�f7C����w�k�+��շWՐ�S���76�3�ME�w1��?i���N:��;�aꡛ��n�c�<�����o�.]��;q+�'��3���I�����$J0��0�3���^��K�]r9���<������[��pq����X�8n�+{x���H�I�KJ�JWI�I�H/Ƒ�v���2жwq:�L��;��7��Ѹ�8���x]{��'��5���ZU,�O�9�������go�1t�72�Z��N�
7��Gl&�L�k7��Kh�������\���=�^k��'��n�
�4�=����ڠt����{�aYOb=˧�iY�4� ݸ�#�ܭ�����ĵ���Gl��r�1�O�}�]i^:�ډ��h�QWhe``+X�1nDQ5�"I�k��&K@]��Ӏ�$�A��x�G�x����FS�����cvTغ�v�+��
� �q��A�Q�,�#�a(1<J�Tg�:K��E}B��1A�
S%�,U���s����j��>UZ������2�㺆�
�a�
:j�����_�Ø�l��Í����T(��$�W�,��w��s±4�]ӥWK���,�Cz���k��ck�G�Pe<i��w��-���K�MO~�T�R2���z��A�&a�Ï{�5���Y�g�O@��F,�{+-�� ��a�C&�������!o�	^�q���p	�E������`�azV�tH��˪�U!�2�[Ьz��r%/�0�f�!�M���ŜgO�-maN��}:^�l�6����Vod9��+�A���(>x�[/�ngڱF=K߶�����./�����GϿ���/��^�Decf�L>��XW3`
�
eD�*J2ѱPAW�P&�oB<�2�R
� �u���i�����
˲0�?�^����\&A�W
�^u�攩���j!��h�N��r&�0�lY��r�s�۶�<0�k\9g�L�=W�{���vh�`ٴ��+��Y�t[
�?������8
�C��Κ��̛Ge�� ��\���,�J`c$�g�˸��g����@'FE�C<d�5�e���c�V;���N��\��]3D&�`UN��F���E���g�Y/'6`�L] h#� ���Af�sD�c���X��� >��Cd�>Q����u^������L��ڥG��N�!}�����7�e�"�r`�z����Vl�Ƨ=r��`e�/}iXv�G���5�o�g����%�5�Y�><���
�h��u��}U��ې�!E�E����z��EA����E�Δq�����i���n��Y;�3O��1�$����|�V4eۋ���	��k��0]�v�H���G��-_?�\\�I��ϛW����;��O���쮬�����Xڴ����4GY���"�{�m=`E�_����n.Q#�1,�I�gl��axE���^}e�*Ķ�	�\Iل��f�ԁVi-��z�uy�x�,��<p����,�4��9���Eچ�4n�
?�.�@�`�;te8��l�e���j��Q�/2�)�t��N1eT��X�e�o� �~�_�F*V�Nk<��I6�1�L����;qJ�K��nM&a��|�ɽ�-�D�2>��bg�:y���7���zH�c�:�7-+D��<��՜3��Ȅ�X:N��8+],�=.6�PASP���h��*���:/��ޡ�Wh�^9�R�Ɛ�4td��@���MUd�3VC7-�r��)�@r
��	˺�&�WY���&���t�1�}?ݕ���i���Tݣfl���;e�����6x���&c��r�l���'���_��I;�#�å���Aup�/����w/��̂.Qn?u��+v��u�÷����*�-�_Q�&���2S8��f#�~���q�0lVΰ̉3�<O�<��<pU_� {�����lw�jk�b��+6Pq�0�"��	#D����6�%�������U;�G�`R��mqo��t�c�)�kc��h�/�ᚠ�,�}�i��B6c��G�L�^V�m&�`N�8�m�gJ42K\�"0��/��[h5-,XmF�%\���z}���ű�G��nG��O5]g��ш����6�k�J�bʪ�edjqu��U�9U����QR��ҵ�ɥ�Y�gB̲����!<]$.!4����Zmqə�����A2���%�m�bg�
�S�7�l�a�L�����������l)�y��\D���9�A��̂�1t� I��6}z��c!���Bͤˁ��C+�b�"�g�-��[S���UY� �8�]�t�ue���D��#�zVUT֌���J�l�ݸ��"����M�O'�`�(S�6|/K��e�����G��u]_+߰}˒i5�D�c�>O��|F
�i]����Py��+)�
�儬B�'e��	0��#J�	�S�=���zK�jt(���m+���}yv��8Z�8�F�4��X�L��C��l�
a��ű�O��+���W
	�UfjN��j�k-^��r��.^�*�K�3�݉6Vֹ�_��c�m�~��ӶS^?	ݼ�W�
�e�Ҥ.�i|
1���)+������;.]?���#�Rk���~�u�6�g�����1��CC�z��}9����#��X����7�>�EZ�'�n�u���WK7K�BTޔ���Ea����S��h�q����i��4��X_�5"j"z��8��S��zc�Bg�'�q��K�u���<�w(��!�-�2����Л������,o?�4�,͖ˍ0�ÓQa�*��f�"�7��ܻ4�)���)Ҩ�,���w]���������X4�xyM#�x��hl���a3�h�jf� ���IrI�e��,	����@`��]'OBOE�h��u�K0&�����$/�yR���4"� ��Eb\�fD��a>��E��Rz?afJ�Xw���'C:�l�`�8f�/A�W�d$��e�`���
��`߫��q�6�rT��ޔ�Q)�'�1	d?̷'���,��STq@Us�[r<>
����zV5��i�p/�#�t�E�$L�c�3�}p1r}�v|�������9����s�V��=iJphH��{�D�_
R���1l�;y�T0���^&&�
>�Cø�O�1�^<۞nν�P7���v5��㺰����0\Y|yC�o���
7>O��K[
�;��̾�9�@z�?<�/Ї^/m��K7I�J���>$���g�?�V����=�_�wr�F�?���HDfQ�of�[�I���~<��c��N	�d;���&�����5K�?�>Q�7
����XQ{`�p���'�p��9k���XX��K=����@��.#���"�투��+S�F�U���`^���K�5}ѹR�j��o����R��c��ι��(�G	"j7�lKY�Z�dZ��]~���|y;,��.HS�D��W�ؑ�\��*�M%���-�D��S����������GOv�i:��f�3�	�ɕ�/���v�bƻ�bj"��13X�	)F��<r5���*�*El(��+4"�^��=N��3`�S�En਍r�~D_Ol�d)^;��L���)mv�
<jr��0�&���������p�ҿ�3�<� ���	�U�'��6�2m�:u���$U�h)c�����$X�CL��<z��w�[-�U��H�PZP�$�żlNM8<2u�6��	Q�2YX/E9�N+�%T׆���uG��uY�K�_��5f��c�~[e�*7��9V�5��z�M�y_]��Dխ���\��5�S�B�*۶�4�9�+^n�u	ߠ�ȁ�r�\�Cz9�go���+}L���E��ҷE�@T~�	����LAv�d<�L�*r��;n�Ƣ�3��!����LN{���i�K���bb%��F�1�X?���u�,�@C;�bI�?p4���&�t�u;A#W�Ԛ������LƄ�0�V�T���B��)U����,���V����ڶ0��vcIX������[�f�8~��4�e�	*%I��c 0�w���γ	�`Q�k�j�)��,�U���*
���o�R/��T�lP��[�m?SY�l�s]�m
'��M-,Zn�\�o�Iא_�*Z�3I2�`f��N����Rd�������#˚>�f�q~�Z
Ms�W��劲���H��,7��x0�-P��8���0��dMD{=CV���Ǫl��5"��O*��9��6~X�Tj�lU�����zE�)8tS=�5���v�U�q�b^���[��u׮Y���Պ_�_��{:�)�������	�=����	&���̽<w��P����6V�w䩍���o��7�e�[�E.�+c8�y�4�@���#���&Q4f�@`V��.P���PP3�����DߵO#=��HU]�c��v���!|a�V��
lyqzA�9�w��NK!��寭Q���(�L\��$!�d�����|Q���Z�X@t8�$T�_G�p��h�x�8���+���q�|)e�Q�����5|�˗�daK!��1)�بY�0�I�U��U��=�ڬS�Kq�wt��^9.�E���tV����u[��p�u�6�aެ�	�T��I?fo�7N�{�ƭ�Q�̷����s=��SH�'O���N���_��&^:h�����$|"�'kGgm�a�7}
iRiʚ�Y�H�����U0�2Oj6áM�����&�?�v��]���~���P<F���3\�&�=Ʉ� ZB^����eu�mh\
=�D-ȻU�Mz̥�p���O3`2"E���f����aA�1�<�2��`�
SwLdd�)T��(�\���ij��@C3T�"�;���篔m���]��̫rR�rl��Lc�b�\�
0�B
ν�3o�*�T��
}x���R1裉�
��@a�zb���M!�A��%Va㮊�D�h��Z�m�
f���3���;@	�D�"Om��t��)רL)
xq�#�`)�~g��Q<+�2��T]FV ئ�e� oہ��\՚^��*{5[�iJ�<�B;��������\�
��d�,R�\_���5n.X��Q{Y���j��F;�Pl�t��qw�o����ZG�C�x���Z/��cм�S��2K��8�d�9U5�4��'޺D�&�'c^ 
�&'�x���}�C���"'7N���_^�x�T��D<�;�y�<��Zk�/"�6��
�S�V��է���#���-ܞ��+��޾��]{-	7~L�6��sg:)]�v�AY��+햞�>B��e��$9�3�
��M�+o�*�OwUW�LO�1�f�	���$h@��HIK�;9���(q)���ER�Ҭ���HQ+�̝����J�a�ދ����~��uuWgeeFFFF�3��9<�$h׈����I�'N"dt�9׫Z�M�żJH����4��d�l�Q��Ӹ��HqP_�Y^.}ʦgd�R24s�}m�!�zh�b��DF��l8I���Zlmm���[��Rz�/���X����ih�]�}��,���0\]w
#6
�fS��Y6�B���s��F���a�u�d��t8���r� =!H�X��
�Iف��͙�.�����SO�da�;�|�'}�Q��:�i�dh
�aؽ$t9��aR�7� �5��04ETc%Wb=
s����$�y��J,?����g�uו�7�i�"�:j��5���](h�=Wx}��
l�o������?��
QW�M���p�F>��M�B]���s�(��N#��2C5o�L�1�5\�B̭Z��})*��A
_a�\�1Lj[!���NJ
?��r��ݠl��ڦx̾x��g�uIOH�G�Ed��j.Oc<}�(V�>�O�7˘��F�[��F�w#��u;Z11�#�����(�]&��`{�X�\�n5��>��Ă�a�:���$��p��\`Cf9�
�6�� �֊�9<R0^e���"踄:�z<Z���kJ0�+<���}N�P)��$��:`�I�Q�"��H��i��Ȃl ��op09�е�0��jp�����Pqn��l9v�dZ�֫�S�xh���r�]D6<� /tZċ;pӠcR�1.�dt�	�X�bK_�;&�%�@[��I2�0��\�tu{�s�.H/e�����j�}U�%{����l�&A�F�SS�pT����+kf����G���^�ՖYy�0fE��r\{�Y���Yd��ESo%BPwi�.q����d�n��:�^r�>8�/fI;{:)��4�;��fz�
�.�Z��k���ǃZ��u�����j5y�}��+��F&�`��0!�~`����ɡkv�!�Ŀ��{�1�\�����\c��G����0%��d�s�&T�I�5��G�:
zf��hM��a|��zk�s��W���~�GàW����pP��XY�l��X�|O��w����ύC�ӥ (���O����zY7Zŋ[q��/�_S�H���t*aܨZo��:l�i�8����@fkױ8k}��\d���q���R8V�\l�ql�����o>.l������2��t��:kY��
�̜Ȗ-(|�}
��'��"���uV-5}_��UI�\��#�7�Іx��J�T� ����U�5�HR����W������:C����+�ȳ;�|��o~󖩬��B�mNn.�+<�^�0@&PO��fJ�iܗ(I'�i��l�4in���͵��_��I�P9��a�'y肞�";��ӝ�a�0���Sv9v�w,�<W�N��V����R�=Mnf-ج�g{�F�e�0݇�3݊�Ō��*]���ɞ~�0����1'�{l��9�"iȴ���Yϒ�iU��Y1�l�]^]�.�fg�5�}
��T?d���p�[�}�<m�F~�M/o~�=~���o����믾�ؤ���r͡+�Z%=7qK���W_�zr�뗼R}o��*o�Qk/t�_�,D�s��FE��t�i"&��;ƿ�teŖ�Sՙ3��螽�k�^�9�j�H�w^ݸ�YK�tFZŵ얽�n�$��Gt��'o(,n)<T�D�+��	��)�C����yf��,�N�ߝ�d�`�2��ZUY����?Z�FI
W��+�*�T
skE�`O8
���+0���@{�e�XA�y"�t�ҽ)_�Za�M�6�q���m��o)�]��\�x������T�vF�F�R��$[IW���>�"�pzg�ұA�u���$ϑ2�ct"�=q����C����K��å#�c�z�j%5�Jy.�� ���f�A��W�T���25��,
��m�kz����������h:&a}����	�}b�A��R�$���paCwШ2�1��E�,�P�
�K�4,���8RX��&�w��	��9���� }5�P�FL7�,z��m I\�
��Y�(ژ��֭�<G4�z9�k2!�8����$lp�й�y�#�6�0tK�Y���f�2����I���J5�A%D�fQY`��$��XZfpq��:�@�̓�5<��w3��)����4���s�n=c	���fq����c� =:���ⱋ������/�Tz/����8�(�3������RY��Z�|�y��|9ItW`�vGI�V�-vd$b8��Q���I�be՘ˉ�1�Ϊ�1&���$��x%��bGPj�3�6�J��z�b��vW�aj��>,��G�_�9�"��`��}�bҎ��"BE��V��$�Q2�=r�u���r���O@g
��.<(��I��e�߁�?c��lf��I@S�2���(�3.b��ܖ�0z����QW�DM�Z�ք�]4:���@�g0mM�%� �U�~����ަ,'�CL;x,�gg��}Z�|
�+Z�8��$m5���u��>7?BF�Eበ�,!:�!7C��
<�B-�0_}:"��E���ls�Q�LIC�E�*AH��=���ݠCW�6<��
)@�F�M
����)�((T	i���n��.$ZɏK�
r'�$��/	�"o�ƅ[&����-t�3��ʜ2����A����g{)�:���Ƅ��
t�W�N�S�0�����_��v��<y�[ߺ�=�9�!�b�B�ķ��Q8T����n����^�~���oz�g�$�w>�ߐ����O=��;�yӛ�+,�%��nT��7F
���|��;�;g�|�Gv��6���~�˳�'��e1�f����<#�.��	��U���}��v�D�5���}�Q?_�Ο�����?���|a}z���{��l/���b�b�&�v�Iz�M����3�"Y4q���O]�O�pƸ�b�__xj���Xer�yuemd���p�ju䪆�BW��A%!_.��(�q	Z-a@y6eZ޽�S:����fs~�њ01��;��Щ��Vg���1Cܤ�z���M��G`8��~�Jy{��X/���vNK�-�23�63�0-J�6c�͜��6f��P�e.,J�C����aԵ������%��L=�.�%.����}۷m�g�t}!1>����Ĕ����n~l!�h�pW���`bf����@��7�2�']�N�49A-z���¶���岛'Md�+���ڲ6=�_<�w�F����'��;�����t���)��u�s)�@o���і��a=f�H��E�50�A968�X�iR�i�t@����s��ni��>!�Œ���E�2��r۫o���/�8{b	���8�"=���9�5����%����a�3B�
&s�����q�;[����)Y��~����ȧ�<K��HG/�7���4.t���u�u����w}�]5�=t��H������IM��s�ef���7�N�G��)���ὠ�/��p�]g/Uk�� t켄>Gl,�S��.���~�����p��-d����ߊ�1�W�μ��$cᗿ|�y�;y/�E�3�ug)��֢�������ߥ���w�X�9n�����ϒ��U��Q��p/�!Oރ̝J�G��
.�o�<!����A'.�Y1�#S�E���b���٪"���#1ʓ��ɋ���'p0���}�N�A��$ם�lj�Z�\�7w�s�B۷Vz��e�V=���<��Te�@O�9���T�æH0ҕk�(*�p�jv�m��B�ܶ��T��ڲ��?�h�6v�+��P�ff��^�f�v���30K��5�Co�
�°(��lR�gk�:�k��4�4����Q�8��-�$ܶ����n7BuW�v)�%ٰ��`��ad0�S�lI�����tǸ]�T0S'�7xœ��#hY#�0�W�?a����Q��b�)(�}W�	2�"��[��d�B*��#L5:٢�Y:s�V�q�Q�����H,���a�ѥ��4c�Ňn��W}�?8:7af5)i���)��
�Y�^�r�(2&0�x�$[<�J&[��N��B�%�޹[��*�j���4f��e\�n!Rc��S�yj.0���L��ti�S��_���uS���9w����w�{�;_v�+��W?�s�…s�Դ}�n��~�ϼ��{޷���O_x���7���B����.4��m1�D�K'�4�õ;S���I*�
BR��ߝ��&����V�m��EV��u:�M�1ف;�LT��Zݚo�,�A��O>�������y߿oΜ~<��1W��~��IH��ܾ��$�H�){�G�*՛�7
���UX.�`���� �ʯ�f����>ty���J�ם��~���9]N:�w��e�^�Ԟ���[��Zo�^MS~кp�\�6�؍l]/e�S�JI;�v��-�l�宧��k��4�4�����7ʵ�}�2��3���iz�#�d��1eo"���m`@b͇rx��\q��b�����'�=�c7n�\��zh6]8��'�ƾ�W�%33{�fE;�[k���(�j��773�ɼ����q����B�܍$��:���O~2���:�N����/%����;�jy��<U�]&`Z^^l��1
���|w��J�ʹ��~V�ׅ��I����T�j_�ܚuW�]������Y[�vu��ݕ;�Y��J����Zm��%��^�u;CГ^�ƻ܉I8@�k�|�$��uF,�Hij^l h���~�ȑѸcxB_4`f9�v��vk�Zmg���O?�@���ea�ŧ���TW����Uh�}���j"�C�I��&k�IK�k�4��H�/|�'4m?c�W���@L~X��eg�~������R�WkJ�H}k��"]^ڳ�h!\(�`>J_آ��Tn1��s70Tw��^f0x�2{a-�WgjnwT�o%���֒�sm ���?��?W�/���B�v�[�Y�]�N'���/�����?��*0�#*g���܋�����2~X���=DA���d-?}m���͓�o�zPo5tV�
��0d>��,m
�����|&�NAX[r�f��Z�l�H$��M1���IO0���,�Dk��1(��;l��|$g��5z\�T�^̅}�Y�x�i'_l
/�7^�慘6SG����.}|^�`�he��j�t�Q�k�i���O������"MD`�R�$��������Jt��E~���4-�V�Gt=�c|�M��tQgzzڲ�[ֱ�-�˺v�2���ɰo5�}'-��
���%�XW-�vCy���|��md�ƿ�r��Z̙�&jm)&C$��/l_�x����n?��o��'����zJ�ƒǺ�+t��#��t��)L}�ꙩ����0x���-�v��)���|aϯ�'����.ұni�M�w@%7*{�{*��ڙȽ�1��}�{��׳�
��A��xM��݈X��I�m�v����j�#��tE&�D��?�!(f�aʧ��ɨ3U��=��*��.u��߾��ڦ��׹z���j�mE��25Ksm��W|�7��R��T�������;w����������YZ�~~����,êTB��e�L���,��z��v�P��+��J�R��J\-�A�εg�}=�$q5~�s�$���}^���{/q��u
~6B�U4[@��l�?ZS�1�"g�}��s83�k��}���<��e�M�TQ�����]�6��]�7�Lӳ�8�i`�lg����b	�]i:��Rja�	#��9	��\�E�07L�4&�x�Fs"%�)NO1�9�À)����a���9@]�n���~x���9��Z�uYh� m_�Q+�\8Űޮw&+)�Q҈g�i'�[��X��x.��q��{�D{���4��Db�G���T1s�h�⏪K���}�[�~F歛�
#����Ƈ$���&�A��r�)*&O!]V��0�D������s'��iT��
W�Q3�LA�0r��{����T�x2�^Q W��J6_��'αAiQ�C	�b"��y��Q[jN�u[T��!�qL�����h-m9Ef�jUh"���Jע�MM�-g{{��>?�I�WB�
K`�Q膴�	�M�2� �x��a:�$�tPY���蠳Jte<����[�b��{ɹ�?�W�Y�r�oq�7_�F�d�ȣw������09�4���X'�Ա�uj��
��e?p�������C̠��C�
Y�=v��-�.t��򉄅��Ų��̔߳���* 9�V�P_�"�l���0�t���M�+�
�gd���j�Aч�/T�3��p�_�K���A�,�
׬�Zu���Ԡ�e^xih�Tt[j�QL��&�&� ��6M�T���+�y�OJy(�?�	�U�M]�+5����k D�jZU��u����r�K�J����~����-܊��n�����D�ǵ	�a R<b�
��%:9�t'���]��ܮ�,�#3���ۋ�e�5�����6��=��,^��~�1�ZE��={������:a�F��rq��"}2kD�|xM:���*\OI��@¨N:�EGw��^Jg\��q%�5.ղ(&��F�n?2IzG���Bf�jWJ&�V4.����}Ķ�_��I���5_�=O��ܣ��K.�K���_��'d�^��S�\�[��0W_�7�8��"��Տ|�g��̏|��'?��S�����k�;�{զOf�rMs*�Vҙq�o]��(=}���j�tf��W9��ӄ��5�>��N����w��k��l�XW\{zZ�V�/_��	<�O�ݤ�_��b�%�Z�T�B��e�!�4�ȨI�mr�L�{��\4�ݝ��!�9R[\\x��.-����;�7��K��qٳ��:>�8�n��.�|ç�!�с���ȝ��;e�J�M`T����c�GX$�����!��XK�������|�ٷ��ٷ~e�R���w�W\���:���;u���/�a{���eY�|�&�:n;�Me�S��|JY�Nqi��^�|ȵo���/eY��[n��-��ϻ���+�
��^��5x�N���.L׷���`�/<\xU���Ӆ�	�� A�ڥ��.`H���~w<���g�����$���)"p�k�S�@q�0m椆`Nv0�h���@�Kv����N?K�j��a�9�s�����qL�4�G�tI�-��D�5+��u�f�̰biYN�m"��<G���e��2�k��O���l�sCs}��j�%�XmϮ���m�gۛ)��,MjaX�O�wb�-��:��I52��:�y�|1�t\����U���J�:G���z�TN^�^���90t"IJ�ؖLl���i������~9
���R(�D�F%HI	J��K4�kJX/?�z9>�kh�1O\ݤ���B���@��)���� ?��a�Ĭ�]�L��Lrg�t��n�;k���7I<��p�'�g)z��		F�;�̬����G��K$βJ�����K��n$��ˆ^-��i�WS�Z���5u�mo��>Y,�w�fPev��H?�Vٵ���*j�”��.4B�v��M��	�=>Y���h�k�+���B��+���X�*!�3+�1Y&�peb�w�'����72k~���.M"�W���+�́�Z����@T���������'�'�W(�}�TL6H�6R1?��r��ts�R��:��#3u��1I�8������%�p��Q��Fx��~=�‹�#�o;'�Y[�#N��r��)�K�Gb/抚�� �����
�*1��S���d:P�l�<c�6QfC�(��18��U�~����W���yU�[U�I�n0nB��q~�G���k�
`+U��?�7�4�4��I?SΙ���*�3��e��ֆc��PѐYa��'�
��s����39 ��K��*
C�	��.0�M3�=���&��2e9�1G��A�B�Rݤ��T��	�I��@�TP�ᠦ.�B##���:r�*�&A�%�
��>s�B���=0-
mu,a��l#�$ևq�W�*XG�B�	�!�<jF�	�T�yY��y���:j��
,�PiC9��P�dhy؛�	F^ȯ�]:�6�{.��B�R�i�r?}����������Pc�OKM���;(�2�0�Q���Ba���0A��/��4/�I��
ٺ��
V��3�v�`^�s�o�-�,;�
.�f'�������]�ؔ��L�S�I��
���ᶃ칢����W�s�Z���b�E���"g�%9 M=aC(RA|t�8<��ݐ���D*��v	�7�ԖK;;@G��&t�	Lwo�Cvu!(Gb�͎1�y Y�/���y|������n�s�o�z�2xOî#���Q%���.�&*�\��b�s��0��r�~���Y=����Vϖ��
Ș/��"����A�LO�g���ʧ��
��;%�L
�BppF�y�G�o��^����K/D��t���ᜫy���)f����|�x�5{^>3N_�d��$��K�^��<L�}9��!�i>Y巃h<�Mv7���ӓ�k��wZt2=1�
/�p���Lj���.����%����Q~�����b)�|�Mw��a���$����d��{��FX���n�5�/�jws�/gƙ�W^���f$Õ<��0#G���A	��7��Fqw�v�U;�W�Q3���\^k�[d��pm�V�ѿ�
�w�LV�>@-7JV�(WbPZ��-�N
��RUi:�dgu
Tb9F�e|y���5�Q.��AA>����Pb�7��{ΠQ�C�=��M|-�i� *���l�Yd�v'a�*MK7�e��:h���@>X^�h�G���t&��I�]l,8&(�&rN�Ե=ӎ�չ.�˦1�FlKM�HA㈘̀��v��&L!FN��,É*��Ab�2,IA�Vh&��*�4��$�c����5*@3o��	���@%W�c'Y�B�"~�*Y�B��C��rњK)p"�*a�'L#\	�:�!G	4M�����
�I�,�T��A�#�� �Z�"ҔKݴ-M��/q2ר��D7$�A��0P|.����#��V!HL�s݀S�咕��!�Paf�Ѩ��7"@�+���`H�w�-��%�mh+C�2"
�S3T��tח �4�����OEym�Б����pg�pP�c���1k�̫H>Er��Ql63�ZFB�
�G� 6����Q<(tWGB�(F��A�6��ub�wJ�v%
��˒�J]()ĩ4A/m8��ن�ش����Z��yϷ�ŔcOE�Ŕ�J�㦅u8:�8�\h��(������m��m�l�hG\	M�T�n`�R�Xq`��6B�$e��o�8��
��LGD�)��֦[6�y6]GeO �$�L��뉙�1�gS(Z
��m�>�)u�?����u]��R���0u�<7���ocU�h
��*|��i�fc�b�K�IT�F�5\A�<i���5�� �1t��]�MlV��b*p0��s|����;��6��T���+�Ђ���Ea:�Ӫ�ҕXm`�©:$<l�k̍L�#U��
[ �[�%�my�����K��8��9�%t�s{IƤZ��-�HGab��}�p2Q��t��st�7��|��d<�A�r��qǀ@Ord.���@N�ȏ���N������en�kioF��)X���iq���n5�o|~�j{����t��l������bH� M��
��gO��d��06$ȰH���}����Ds0�&�ڝ�
Աm
���Y�_������$�~��i��,������$�f��2��/{��̞�0Z[:ޭ����js�E+�x����k�����ߞH|%2�P 2�m5d�~���q�6���f?~d�M�7�Q��;��k�;~�G���[#���ݓ�����{����_p�~�u�_XW,_�gx�p[��Å7����^W�uG�l8J���T��&pO���=�7/n�ޜ�����O?g|�:��m�ݓs��?������-�ᆕ�z?����o���z�I</�i��p$q]��Ƙn��[$I����}�?�fr�~郳�\��#��?���_��׭B�Y4ޓ^��L�������x��u�|�˧��-�,}�K�Ţ�4Q��p<�Ķ� �f�˸k�
#J5-�~��x�vsxj��/|��Swn|�-'6�����޺��V\�T�
��%B�-�H��)�t��O>U�l�7
�U���B�x�gk�7F�\*��᥾Y�'����Q�D#��M��&�`2L���5�{@�h�8K$�6�������S�`�r���ݕc�Dh)lf�=X����M\3�n��1��eiF���f���Sn�FQ���V����&S�V��AFiZ��A�3�:�_�~�ǭv�j�bQ>���B3�Q�Dh����M�Y֫���Vl�f�����&(�u�Z��M�T�>[�*�lK�v2�cH���k>)k�U��kT��R{�lP?Mj�5�耳�,n�}Еe[�5��Z�bhQόz��B����������������>�\X!7n�^<�m�uv|��-B{�ً4�R�1���b(.��1��u����`��<ڐ�C��bds��t�z[AfP�^���C""@���s��1��I��I��>G�#�Qh��f�s�3X�1������YK���zRV�Dq�?�Ls���!�	�=dP�}�9����lu�����p�rL��ar
IZI�3�h����%�\/zǖ�Lss���YE�6�V2&S��LNV@٣%�6�m#-������I����XkkiJ�c��aH�eX@3in-u
�[	,>���b��7|WsK��Y���P����Yk{y���Y6 )Y��K����p�X�D@U�R*�ޱE�!?�U�}�|��,�x%!�nV��G
�%i��S�0�O�T}d6ϱ

*䠁�����A0#'c�@�–&Xe��HEɁ�ә���\�)$	2R`~1A�[�$��!�U��	'm��o��2�$r�8Eȓ�L�
VT�*R��/9��<L�ԅ'��:R��˒tJZ�^�D�|gP0��Fq4ܢ`b��B�#��yu<u��S���Qm��k�>�Y1��k�#�oRL���E�~4B�s��U����0
��u�JsL��`r�pl[��v٘ZF��ߊ�-�m�֖�2��(��]��뀾Q[ ^zU�$���[̠|��	H,V�d!���Uq�+�ZH�c���1蔠�iq#�
m�u�w���I���O*)�|ֿ*�"h��%����9�R#Gw��
�	��D��Q�@�`ۨUvv�$�^b���a�_u�a�-s��ă��5]���aF���)5�F�X}��Ud�H�<48��Vxu\K�^L�~��Tn���̲�*h�=�i`Ƕ�2��K��5��7�#бUR�����5}j�؂��XG
t�Lq��2��X�Q�/�+�lܻ��nw���=>��R��_��;�J�]��Ρv�عH����߲qu^�q����`�}p��0�.��� �Q?R2�Q0b�Os���S
�/R�O������W��t)>�>t��C��ڙ����}߽�^E���vw�'<q�<>0����](�L�DӸ�3�R9R<�
ȖM�������q��/?���Ͼ�l�^>�eܛm~�^8}�c���=+n�<x��#qe��C�y�[�t��z岉���O%^ǵ�$�X���܌��iB~�������;�b�,r������9���
�����
��ǎ�
m~��_�Zk�}��ٷLg�(�%�@s�Z�؛D�`�[(����f�:|���A��4nA���T+%�y3��)�D]:?
�|>�L����O�������s�e�'?T;U׽Hwq��}G��"��!�}��~
��~ܛ���S/x��P��G��Ž;��=������~��"��ˠ�o�TY:��<4JѴ"��t�t�f��6��3��`T�&W��%�R,~NZ������������z��l�0�O�F:o�U?l���������x>��i�|��ߏ�M�A�2������=]ު�s��
~�&a�۳�Ѩ؝�Q�\��c�d]�~�f�̖����b�1�E��)DG?W@�)o��O���YO����ry�pňmG��N��ƒn�T3��B_ޫ�A].�%s�\"���'�A�ն22kvZ.y���u��‘��*�/QlY��ZK�z�)�]���GJ���x��z���v�_�u^��NOa���P��}�\��P�\J��-���H8NJʎ,�`E�2�?[!��;�``N+=u1]�t�!@˞�4&O�5irW{9o��b˶�l�2"�DŽmc�Ca�wk"�KD�G��9�A�%�X��>=S��\0�i�>�
�)-Y��*p�n�|A�t�"�.�DP�7Wq�nu�* ��K��,�i��'��'��>@M�+dhM1����p��4�-L���
��6�m�@��˷~ym�x`n�����n.�Q!�I,0�,b"��9y�����"�}6f�`���m5Ǧ0���*����L�I�9���!p�}�q#w0��/Nd��p0ꏆQ���q�닟M��.vE����D��ĭ����"y}����t���|�v^<�J�z�!M���3��=z��%�+`���3���Zԯ�`�RXqLT��G�
%�a�=�ԇ:�>&���;ƒi�4�u�]��[�Aߪd�?�'ɛ���|�7u�
/O' ^�=V����dfskskkk�g�67ɛ���7�尺�o�8�'N\`�wb�v�Z���Ƌ�
Z7�e7@R��0 �d']"]�	�6�&	$������_s�];���7�]�󅵓�o����~DZc~��6���/>��3 ���a���N��������9B>��d�ߟ#�H�q/�}_[N�̶7�Q��]t���X��ΐ
-�!-@�BK�GHd!����!�9�~${����E�HfHŶ@�$���s�H3��GJ{�0��b0+�+��x��W����]�m�v+�Txz
הǢ(D�8 q{��	�*�c2_
]�E�CJ~'l�&�>�)�9��F�W�R���GX�&��o	�s���..�Ȁ��K�	�(
��_*���>V,���(�����<�@uCc��42;d~�nZ��XB˺ԝ50Q��S�t�AI��t<)I	���Q[w��}�kj�.�{�e1�k��W�����
���ACD8u�AV�$�����B@u;�����e3�>���_2��ח8[^Y:Q������W�ss��t�:WO�����B�1�%�i��a���n}��Lg������η���q�ϼ�}�{Ї_Rx_�C�M����1��%z=���
3f _&�Ծ1'�����2����J.7Dht����P�S����$"s�Ɠ�!�
bJ��m_�|SI:��'�A:����]��6}=U��2ʼnb�p��1	�:!�+ɆH1-6tH����	�}�� �����"���P:<�I��a�	�
�X�I�x���<��qG1�@Q�y�H�Ƒ-���D�7%�T.Ӯ��̛��hMy�096�x�̲4w!ae�
R2`��j��Q�bJ(>�P�q
��Y���l���%b�h�d�q��&h�f�u��z���A�œ�xK��[9��~�b���O���Q��"�601*���0dU—�H"�;��Wd�k[$�Y����̠�J�� �	�\��%���:9Or�g�0��ɟkT00��o?{� ��,�3R��#N��M��`е:��F��mY��u�<����nha����G�
�4�k .M[�J�f31@�qf�.��ɔ�,�xe�e�O-��Z6Hg�b6�|8Z�K�T\謈e��`�j�aj�ҘkĦɘp|T��k8ǡ5ж��x���n�1�9���$*���n�M͡:%��$����-�L�w���ꌛ�H�����E�W+뵬�z���*F�p� p�I�1mǭ���9�3a
W+��`{�bk3�d�Œlpf$����-Á�\�!��	5�/V�X�����)5�<�Ј)G&���B���'i!l���tM���H�c�.��[L��a�8�7'U����'²)9B��ӿ�8J�͑?��ke��٘Nr�^���u>�@��)��3ZA	�$4p���`_2��Zg/ll�
N�����j���_w��6�I������S]��]M\@�
�Z�)
/0�����<y��c�ۖ���&�RM���D�e�1&+��l��j`INA�
��I�Y�*�َ��]l.�%%׭���6�&����r3�IH5�؉���H��'�fC���]��*7=��ꮕ��͠�&�7Rx��LEL��28�i�E��R9
�p
�[N�^���NT�/W�W>#%L�%/�d���]���#0��5A]Vk���G@P����n.c�Vu9���k��4�#L�8�:��f�,��W��n:e��ؖ ��晄I� 3u[�3|	�n�H�j���zP
,
Qw��#��2m��0L�D�\�	��T�0k@gC�s=���ڢ�\�Z��̧���+@���N�N"�\åBĔ 8f�F�)#�BE�3T0 Н��h0d+Sb�8��\	�}��(�N��
Y�|EvJ�Fv~A ��y݃�9f2�y���I���U��eǛ45+8�K�|�]���e�)V���=�k
�� ��s�`�l�f1f>ӊʲ�faލx�fz��O4BMQ�)�X��1+r\P�T�6+�`R�o�o�W4�6"�*/��O�d$�z�6�
�H�Lk�&��Rh}�M|��s�������%�WF��b:��[f�s�J��1}F��̊(�D��L@�"��xp�VѨdS����$�	�Y'S���'��l%ZU�)��(;�WL��.BWGBb�M$����+fH:��1@ثB�e8q5�ADS�/:έ3�1�F�tU�'V1�d���J
Owj���!^�]��K(�S�/}����d�Іf� ߇A���2(T*�<Y�Y� 2u��6�1�r���u�<.J��e�+���@چӲ'+H��&vdEy%;�y*_|�AWHya#�=�<P�B��!��ҁ�4�2����Aunx4Nw�'A��+�l!��Ae,$����H9��3�{ʋ�
��vQ���"lY�'�㩑�Fs�V�_�#��dm�4h��O�IDȁ)���47
(s�H���0����1�G��qn�{e�f|�+¸뮦�l��ZD'�	���h��]���:m�
�@ m��yi�����9Pr˺��
����w�l�,��Liw�6cVa��L�nX�1�D�f��F�6b�#��������*0	���Z�6�?�`���JItC� �@�k8+X�+6�Ro#�A_�S��1��wt��
�3���	��D�3���bg�
���/�E��:d�n�ƒEO�E��?[1��|y̔
Mh_a�G�5A��+$Y��/#(O��Y��z�X"�Wș{nb��4�r}��d1���Z�
�g7R!`���}
4��^�r}������GY�wbÄ����	4�A�rU�U��a[-.�*열�R��
!G�BC�S��͟5N����G����U՘J�%���s�ʤ۱UL �
Ca��j�e��������3�3�ͨ�A�2>�i"xZ�;���[���q��xO�O��Q��F�7Ӡ�T!�J���=���pcv�Ydk�s3�g��)�^W���
��ŵ
�Bl�UAo���!�)"�4���'Rj�Л�}$s[G@�̀p�Z�Z[�]��ak�/i����#���ۤ��i��S2\����ح+^	�'�aZ_��R_�ty�_I�"���01��[��_���-�����d��?,���?���>r�\On}�	�n��_���Qڟd��l�$�p�V!2	L��Gr��ԗ%�r��E�e���)�c$^iP�1c^2YS�M�6=:�*�/ᕢ����<Z��	P�WU[�W�8���Ȗ%��'2��D��r�bE��ʦ<��X��j_nQ��j�2��`�w������OA�S���]��~�j*nx�)����u�őKj��ai�$p r@��a.�k5��T}���!¦�|0�x(�@'��&�u�E��H���u��s�GҲ�ɝ
���ֆ9uτ�k���Tq��a�ՙF� �����HӔ�Ht� yto��XSM�3˱�:�uM�C��j{���U}Ϟ��`V���N�jD :Ђ>�Q�'��Q
1a"(�b�4L�
9�W��E�%c�E?���`Eh�!];5t����>�I0�t�3�LQ��.)���gý^���Z��B]��b]�A�z]ϻJ���%��?��.K8Y�j��uaJ	5�D��I&�He&e�α�^@yѓF�F�
�T(�B�ʯs$(&���;��E��8.Z0�e�GL�BNk`](�%R#�����.H���#�2<3M/�a5Y���:�F�[�ݒ�B�qS g%��+ϩ�Di�8�&B�@,)�ruB�����
�����&E��A[����l%s��W7,���~<�׆�>)W8l?6N�o�z�j�c������Q<�
03�V��2�wБ�r�\g�(A�1�1x���G|[������0�Z
��F�}�X�¨�U(��T-�a�_�,�D]��ݢ�����U��md�X�w>�����=��mò��Q���~��h�����C��=���X��Ѡ���5l�u�����#�9�=!��,-���v�p�(��b��!:.a���Uyh>h�*�}fc���m� 5�D�����xɘ�����o{G�\���J햣ϕ1IJV>ظ�h˪�m	»������vEߨ��xs�������|�|J��}P��"�¨�Lѯ�Gz���^�Uɡ��F�eqfK�ձ��
X)@Y9?�A�H.x�S��g�i#���]��r�����QA��A<#���F�+�`ĭ�|r*�7Fr�w܁c��J�3<�u�#I�4KZJn~1y�/��2�Ox�^�3�4��}fQ��V�s�����?�c��y|x�*�c�0�:f�1���=ZYX^�ս�^+1}�t�EJBY\�C���c��;��̴Ӓc.j�h��%Qr���x�-�׋�F�=;t���I�(�
��ͅ�
/-�������0�`��D�$�'�'�D~��	����w����i����_���g�D'�.�gu%[�&y������bJ1��#G/�VQ�L	ߺ[��l����J3l�t��e�N���A���B��:B��h���Q�A�Cx�`c�+���A�`|,�u���/$*�$H�Uxژ*�zz�����x����!���{�Nƈ�*��5D���L�9F}-�&�:RyB'#tK��;��Z|�(;r��<2�w�t�}č�%W;��N����r<���|���\�"T��>H����Й�O�ӟ�}� 9w���P#�r�'�*��K��n�I����h�O��x�1w�Z�HW����<�D�g��dA8@�A+<���0��t#�`���Cq8e�?�y2å���!�����
�YG�֣���5C�$O���P3��/�2M+!g����nF%��K��ї�S�TF
}��Z��
V�o�`<j\ڵ�+_�Hj��D/>��v�`ߢ�-ۖ��S�4q�]Dkc�c/.�#�5Ea�8B+&�@�"s]�V��<
�5Z}eJa8�_�'�Ů�۝ė�I�</�Ǝ�\Gj4#$��`�ȏ�L���\�$,���6:�5d��X`���WI����Q=�\��.�m.��-]H���b���qʕf�͌a$	��J(Q��X]GrX�nb�&�T�w$h`�zǮ�>w0�������Z�~-���\�h2P�fC;�`�@�	%a��ݞ�ٵm��:4����1��&�t�*j6I��˷�x�����΃��򇬄V��CLJ)!�'9�1 �;!�*�)�����-������+\Y�e�eң��X��O�Ҫ2I~�S`n!�Z�~�$vT�u3�3��֢��\=���}.5ʃ~c�<?tpm��Sתuq�BG�t$���m?F���6����{*��DU�6(I��c;��D�$Tml�Gn	E�c����"�8�T�y�y}�9|IiL1�JQ�:�k�g�]е��#��6�I�&RC=�]���+�W1OXT�$�1�akҩC��g��
?�kڍ��F��U�����k�2���H��g�u:
6�eh�p#.v5d"F�A-�����:i}�ru�t_ߙ1浺�x�i���b�R�%��b6�e�E�-G�+���Ku�&�D�{�WiLN~!�=�C
f��m��6���>3gO�u�!��}�%�E�qJ���m�8:��X�ɪd2Ԫ�=�?}��������s�G�����2r��Gy�·�x�;���CA�b����A��1c�J��K
��(����'��\�v��
�%b���5��o�`�.�	b�T�A���n���c���B?$��9�>���|;��!Ң��22~$�WIؑ�u���hg;��I<?�{��^�
�ϻʥ��nj���9�x<٭�e��0kn��u}	�$W�^�̗���:�������>z�gzf4#�\:�f��J��
�EB:A�H��h�� 0ao` �`��P,+o�w	C����r�_UKbWweeeeef����Au������Ŝ4p�1����*`P^�	��]5h"U$.*��}�S�Ɍ�by&!p%0���$^|��F
nZ0-vg��]f	hd�~D�3Ns=�G/\���w������l9����k;��C���>aѬ���dS����|���o���p���R�Y��TލR���E���3à')�@�Sj��%Њ"Ux���2x�1��
���}j��Ո�EiB)�� ��5��mb�z�8k���*�lt�M��G��<����1���:ۻ�$v����z��}A���X�*���7m�4����N�~�jj ��n,I��c��
NԢ]��EI��b!zז�F�A\���/�`��4��@���$&��R�j�s�Q�B�R�\���u�(�%�I��t�n��Ŭy��p�Fq�$_�x��v
Yq����1�+�%��Kk
o��ϧ`C��2�6��uF5��X���r�x���`�[D���S1k�Z���rX��馸Z��l4Ey���A��}xԎ5iFCO�)�s$Q֙^�Y��7Ċ����w0�;g��#�Qu�~�Z1��rlߓ[�5�td��Su�v5ߡ��.ߤ��]�ҘN�$%%�l�ߞ��Ҥ��,ߦ2t�Ψ`�f��P$V�b��$��T
�%׷���N�
-�A'�Eح�SN`�C�ލdbYBF�>"W/�E+D��v���/�:�,���!
�Fۿ�y�x@��Vo71WѪ3077���j�o����k+���s��ҭ��ar��ӯ�~
r^$_���=G	��8k�l��s\o��-��QZ��VT�6j�Vv�O��|F��vX1T5���o*��K�|OQ�SX����s��9��f��d�
�ЅqF��!@���[�ȢW����/�2��ynڍ�/���FI�v|��K�@S${ƌPL5]�$Y�a��MARv{�����$Q3��m���y&�^�$� �Zu���{��#���h�����&�{�)�3����:�ts��<���k��Fݘ���yHY��S�d����>����9qf�f�gc�1x:��0��q<��ɦ߰�K!�1�l�!�W��[]������76Ο9^�d㼦�����Y�)U��g*��WO��v���xW��W֟��qnc���o����q�
��W*�߻���'�:U;Q]�뚾�?Y9k�희²������p�[NU�8g��ڹ������~~�z
N�m�����A&_��}����ɂ�G-���E8[�@��cr])�S���%��4��{�`>�m$�����f�]S��YXnz|��p�sc�'?^��C���9�A���K�$��!ߍv���N@�CK�D!�-vJ�8_�#�
g��|�Q�R&�z@��vU�I�|��|,X�Vs���c�$ZAc���n"�lF�4x'a?�&�W�C�`�gCX�h�lU���ecЗ`>�mF�u
��Ӈ�얕1���˶:[�'��oJ��͡ìu�幓�/`�OHg�=��+~������ht�k���ԓ�t.Kb�=�\����I�>��4�'��N�4�޿���'?YӃ^���zk:��	4U�#x7���mm�aJ2D�9�~E�%׼��a�T�J���g]z)���\y
��5��!�9B��I>/|���'�1�u@�J��m�̈́s8��$�m����@���	:�̴0oa�ɱyv)� �Y��b�1ҸG��T��O΂5��B��E$���c��q�mbD��pM������pxǞ�1�rF&���}Q��m�i둚	�������ƍÍ�h�b���*:�^뙽Ib���3����4���W
���-��0|ri�R�k�z�;�]����dT.��xE/B��_�y0�0�z%��Ma��ɝ�]�{,��ܓ��>�{&���gs��֒ug&M���܎@�b�(�q�2"�ۖ�)��v���}·�9�@}�o��!��˘��H��xZ4�Lb�5��\&f"��l
[������|2��83���틊�`�1X�,e�MeZ��$6D��6{�0���\ܰ�"��O�#¯mӴ�J7�}]�4��ZuLө�r-���w�UQEG��X�����$)�����=*v�ь��W���G��p5��]� L�Qy���N�w[���&�(��2mp���Y��1�
po��>���/�Gյ|���I�
�"�޵�|"���&K�,mk�A�8������$�̝�+�԰VCU�t��stn�VI�.�~_Z`o���»�����(˖�O����9"���9��\�\��~��C��6�ɽ�K�w���*a�(�pa����F��j�gq��4}�?��� �6|n����[��ُ��kW|ݲ�n+/�v��������]IZY�|���oz%��
~���r�֒�<H����z`���TG���<+h"|��d��@>�����|�X{Z7��e{����BZ7�CZ50^�Z�I�g+�5	�E%�y��#�;�ݮi��#Zߝ���4iy`Mt�R*Z�C���q�$��T4C,X��(�%/��.΋7�6a��9���o�f��d�(�ϖ�#�'�����?�Mّ���l�/a
�>[�v�i�C�ws�`
X3��m�)���Hn˭�t�>·=�W���q*r�Q�!��+Q�`Sor�4�����!A���ް�6��(�D=)U͛N���l[�z~:�t���?(כRh���M�+�D��-^9D�����Rߔĵu�*
֯!I%q���Y����ąf�wr��mh������#wO��Wsϓ�_�L�r�\En"�sA^r����������o#.G�Z6�0b�Ix�>1V?�P��N�x�q����f�me��H$Z�����܃����̟��ʪ0��X��'����9�1'{�g��~�c�>�C��,r��9���XeH9�+��#�1n!Iٌ�r�/��}Ɉ�֊�glO�g�ZLS�f�3ÑE��c��FP�*&�i���٤��Ц����F��W
٧�bc�L��t��F�1��ȈBej)���t?�YM�	?F��� 3���M��k�%P����PA� ��A�r@U�+
�T
A%l&�.�$�MM�T���,�����i>_&��J80z\�C{Wl�VA�3���f�2�&�����/�2b�LщJ}�����P ��]*�e���v��@ǁ��7�����Z��֩lX��+LA
[��)Q��*�b�/h�Q���
1TK%5����\�L�RCS13G�t��H�2�����	WGx;�[�����pU3�fV��,4�7���﯒����d���a<�I�p�_!��pU�E�R��Jd�C�@4��I��qt320\�c��A���
�3	�����<���h
��l�(��	T�հ:��Ѡ	���Ҹ]Yu\�Im?6���^��]AEKU�IT�F��u�Yuz��Ɗ!��v����B�<�K�?�5��t«F�bBC�U��<Z2!K�rzt��v�!���C	5���F����G�yw�]�i��7��+/[��K�ۮ�'�]?F�,+��T���J4�HF�\���),��U�y?�>���r��_��s�5q�S7�N�g}"�#L��tR>Kf�������{/�μ��k��d��
�x'i���.I�=��G���O�u?zɵ�/ȣ���k
����|�Jh������7�ȷ ��d�y�q!%���.�O��R�de��}r�ߗ:+��Ӄ�[�5�������B�(Y��l�(襲�6���s��{y\	�mbZ4Gn{���Q��(Z�1�R����թ�N���e�<'
@1��?X Zn��U�D!���e��
hy4���"g[�KM�>�hd^Lb���Vv\U��P0T'��cA虛�lj�-��#K�"ڟa*�] ��"GV�qѐT�p�qh<v���kx	���n[�1���\G�H�#P��A�'e�#^� ��Wi�t�R��'�zi+�d�_�ʡ��.�E1�[!�5A�Ҏ�7��ATdp����J��hD���);�&|%w�F湃/W�6d���a���R��(X*��nC��X@� �x
Ѳ>xl�8�X�����=f7�n绦�YI��f���ݸ?�v�6��8����}Q�`>�|��ʝ�
�Nydu?d��ѥ�	���
��ɤ�D����G)�;�	w
����%�ɴ� ������l��<�M�1��.lQ�DŽ�0�#,�/��TNN��L������fIͲn<�����5w-(�J��jj���W]״������0���W�~R����)L5=��qCƜ� ���ߗ�B�7X���]��j�	�@5,3q��f�L�n��N�y^T)�<*�R�>ΔKo�D����8�f��l[5��[	��\�V#������$7A���@����Z�π�Et>2k�ƳT�3$�
B�&�sX�-�F�_,`#��R������B���}]eR��o��M��6o�	��H����ȓ�4���/��;�M��1�I��P��e�*�5n�����������;>օD��-9�����;P�`���%��lA�;=a	!;�<����꼒B�"�͖� ~���Y{!��rJhOF��������ޮ���yw8#��H��9c��d}A�%��T�ә�����^`���	��=C���!��U@�W=<�l�`�h�)�|Aјb7�MI���
��W�o�2�y��4��C
Yd)cNI��5� X*(�X	��R��:�"�e�+����|�K�I|*��n�`a�P�
!�_���i��L
�*�p-н�?��ɗxng�\��r��-n��Y���`0E�A���F	��QJ_l*F��#�}�h�ժ�:�uLۇ�S�>tMSWV�z(��KnQos8ߵk>���s^�b[��꼪�\w��o4ޢ��c�Z(6���%�ܔ�xcmeө�6�~���魭ӣ�_6�_��j�E�G�AO�D���S�?�=��t�3��!�V����|�7�y��l9�Gܙ�u�K��A�ΣE��-�_��	�h'Y�<qJ�ho/��$A�O�V��	ț9C?�a�3��h4o��˫E#���l�1��X�N(s&�j]mE��	��B�X6���j��.�jeU����/|��ܢ���(bE��'���p�uBln��$��WM}r`P�KV�
W#��RT?t@�t��s+61*�ҠNY�b�8”PC�l�-.w���d�4�n�Hc��{�J�
��Jks���=*�z�w����[�w�ʬ��]5�s�a(�r��Q����q<��/U�+��`�v�J��:EQN�(��N�+�UuD�{w�k���c�Z0>��j>��DH�K��_�
��KN�E<���s��hrjP���
K��_䨁4�����|��nq6B1M��J�_nL��U��������w*kk�ZY�s�T�j�v�
[Q��/��UG;t$�u��G^�{��҈ӑ��6�49����/�?�k�Z�W�[��S!�xm#��?�7w�r� ���DE�c}���8��<~����_�,7SrP�G��ZAx�Hc�6�ų�,���!X�����QY��D����Z���c6eS\LZY�)�r�K��>�M�n����w���	r>��%]����l_h?�ꭵ}�s��.y��K��w�O��~O�A���Ve0?X6e�C%�o�0KX�#'X����p?.�f����C�Mx�)��T���6����@���U�0�Ԁ�wH�Sz�l��%�����������Tf��j�؂A����nIX�����(ໃ�q�8te���Z�r�ك��S�$��M#�JiHl�0��Ր0��i�����sLoQ�$��ؖup��a$��6��@܊&��S��9���?¸k���ΝGt&��#�(�����E��GX�q6�*W�H
4��%�в�c)[�{�ddC����[�0hׇS�:R��O9Ê��r._���n���u�jC�fmn�r�����P݃v�ٚ!�-����ɓY��E�l��l/4<5���^S�q\�CQT7�0��A���Y	Bm�mex8-����oM���w�ފ��M𖛉i&M�̼��xu�GfXL���E�rI_`k�����״@"m�nȽ=��ܟ�Er� -r	����<����Kd�XĠ����El[B�$�rOUÑ�x�؎2�̰Zt0#�<g�%5H9DK�΂a0����Dhk#�F��Ozk1�V�t�t��0��@jNXރ�˘���Jq{0�9���a=d�8�Cr`�)�>X֜�M�$`y(�9�����I��7-6}�z�nu����� �ÍY�sAށ��!�֪�g��eo�[�8���?aY�R��˶-�䧯߯�fk���%Px�F}o�ޯN��ҍ���Z�E��V=�<Q;�Z���'ˑ��D$z����
�[&�Xf�(��y��TG��Pu�������k[�:APTA@�w�
UU�
�!�d?�/�!��6[��J��IN\�d�
��L�B*��+`n�4��q>
<U-/�.�^Z��*�/�v� ��%�]��tkTfՂ�e��,"
8w&[��۠��W�UD�T%L���0
A$2b*�,,ρ�D����F?����(�8�n�`^.Ah
x��x:���Q<�0�Y�H���,N��L�ڼ|	����$ǃf(�p\��ˁ/V?�~`�/�-��Z{F�2���&��rF�;w�ln�<ꀷ�x�7Ϻq�~��#]�V'�k��z�o^�����%�R�[���ӵ�+p
Y�/G�`�OZl�X�
z"	H%Nř�x�:��@J��v��Ǭ.��QC�+��5�E�%��&t�G�5�$� �)��6�h:�/�"��a�'�P�%鐊y�6�Ps<�;�s
M@� �Q{���V	��IN��
Cf	��e�F�b:�)N���f��5W8�3��,�I�#fʴB>*Y6�B����p2CT��2�u�%���
P�y�,�ɒF#+��(�!)*֛_���t.㬦�H�gh"�Zł��>쑥��M�iM>�w�d��+��X��_�֌��⾼���"?ӷ��J1E���4
ee_S��l��=��=թn��k��4�{3�a}�72�#�U�>ZH��I������$Q�u���;M��p��j
�r���C�ݴ�+{V�]��<����Ug=pՈ�>]���i��
���[m��u�+_�H����Q9���l6�v���B�E$�]�ќ�kX�7�n�\ V�xgw��%9m������ɿZ=�(7�X�Y*�y�D�oT��W)���_M��O��d���	��,r��j�cQ��N\���<ج��t�~D�jw
HA4�2�.�m=�綥Rq�����$���E�7�]�q�y���
�+6k��1��-��ImL�"�W�����UEy|$�6��%�����ra��`�O�۰�W����X+��8�jS}k�P�:
R6YQ��X�%q�7w�Q�=��[s�	g���M2Y(U�Zju��2o�Eeb�λ�4��Ϸ�(L-�!X#3LM5H*�ǥK�I�ϧ�2xge��������Ŝ* R,�M|��q�Ȋ�?
�����'�ʸ���Y5�+>�;�;��-w��+�1v��`^B���8s�/��Y[��3�-@���bc��O��Rx,^6����{y䞛��kν��׷��d�>z�Y�L{���o��R�(��>��AaJ������ߍe��+d�/�
J���#�aD�n�{��G�瑳W9��s��C����ߛ�J!_�?i7���Vͺ\l5]O��PK��=%%˔Ҙō"U�F�}E���,�P�e�q��a�zH[�Ea��z���K_���Ώ�%�&���&kC��c��g��˖l��gV��Κr���?z�=�k���z-
��{�i�v��T�Ftw���Q\Z�ʒsc��Jb�����jc+4���ᇿ�7d��Z��	T�Z��|�y&��|��P�������u����)w�����\+�d�i���c����Q*��o3�1��TNU�� P ��p<gF����nue����zIZ#5�I@�RI�}�9��׍S���ҽ��<����SD*x�;�z�N�8}���{�B��i��S���fP��˭�!_��ޘ�a��D� �n:�P���j
��(��x�����Cw�l'����I{���,߿�k�?N�w��?>ܻkz9�k5=_p>�g\C���?4���Z]��Ce��,!��*X̭gn�-���s��"V��G�8<��(�yk9�ͳ�[mf��9
��G��[�Lm&]���,ZL���Rp7�E镟\&�_������k�p�ʵR^SQ�������k_r�"

t	i���_>�o����S�n�K�j�#�{��IL��W��
���e�n�@��JYnl���d�__��y�x����:���Я-�s	I7�G��I�,�D���>��~눰��T��QT�()�T)�.���A��Jxuwa����|�O>�{��D��1,H�D5�0\�^�i评a`rTw��];��(+���h���^O�x�c`d``�n}�A&���+7�)�����=S+� ��,
��Ox�c`d``<�S�w�?2�2E����6x��T��1��ew��C����O�3lCG�cP�~:Zj*ʫ�<@���en(��}�e�7C��hdɲ,����Ld�f�����@�ǬeM��|�n�Mi߉.��@W����Oa/5f$�M�������'�aa����M9{�+MG�؈׷����Y|G�TG��IV_�za~6���I�;���M�;�IߢX^Ƙ���5t��9|�5z�R�K��^��:��W�.�W�]�rZ⼗�~ȭ��\����b�m�/��ӈ'db���X�bh����\��z��8�S�0�ň[!�R1���Y�ٞ�9�����\��N}�?%n8�I��wz��s�������9�:n$�3�?�C�d>i�a�s�>�3u�H8�ٷ�Rw�G�u+3Ca�B}���I���z���D��lg>k:�g����d?�#�^�Y�-�?�c���g�2ߢ�-�Wօ�6��҈/N��f��f]�$oB𮓳M�&i�"�ρ)��K��J�T��Q���|=�D���܃�8��+Zǂž��A�h^�t=��z�-匓\W�iF\�� �B��EL1'�]�8���h�����<�ܽ�ڦ��l�{��̈���_�/�[ �rd��u��:rX�K��\��܇J$���˕-~�.���,��������\x�	@	�
T
�D�R��
�
�Z������\�� H|@b��Tr���X��$� P��F�8f��.�B��,>�P�  f �!2!T"P"�"�#�$$�%�&0&V&�&�'X'�((v(�) )�+.+�-�.�/�/�0n0�1�1�2�33H3�4585v5�6>6�6�77>9�::�;;\;�;�<<~<�=B=�=�??L@$@`@�A
A�BVBjB�B�C0C�D*DlD�EE�E�F$F|F�F�GGTG�G�H�H�IbI�JlJ�K�K�LrL�M�NNrO*OrPPBP\QZQ�RHR�S`S�S�UUlU�VNW.WZW�X,YTY�Z8[[l[�\]]Z]�^d^�_H_�``Z`�`�a�b\b�b�d�ene�ff�f�f�g:g�hh@i�i�i�j2jfj�l�l�m�m�n>n�n�n�oRrsXs�t<tzt�uFu�x@x�yyvz*zrz�{V{�|H|p}}J}�}�~~:~d~�����������ă�~�څ6����,���$�j�������>����j����4��F�����J��|��Ԓ$�ғ`� ����6�J�𖔖�n��N�v�b���,�*���������Ң���@�V������ �Ч����@�"���ƪ&�����b����`������@�̯�����
���B�n�����>���6���R���F���P�����J¸�(����\Ĉľ���� ɰ�n��z���P��Նը�z؜���6���8ڰ���p܊ܼ�ݒݺ�2�N�������6���2��v����<�x������������.���<������x�c`d``<�lˠ�L@��`>!�zx����j�@�����$�$'j�B��R�؎Z�-	��CM(�:�b�XZ��Ą�B�$齇�=�O��z��%!�`-����?�v<�!0�v�Y��+f|ev�T<b�P�������q^1���y
��
�:j�[�
T\ͼ�������'��P��.����NJ��A��.^���P��F|b^Ʈ#�W�0��w~0���yU7b�D�~d�Q�w�-T�m@!�%
$a�&"��}H�̮�a���)�q���"��lF-y�2#���V)��H"�{���?�u���p�	����d ��av�� �O��+�f��۔�k���ہ�
��"
�it��=�r�׺�gA��f�V��J����~�����E\�De���i�ڙ挴�2�%������#:Ee�e�c4�H���>r{�~��d��m�LT+�Q�!W8�r7�L�62Wy)(�HeR�FR�(59Ke�Gِ���ӡq�>�s>}+�R�1�;�Sr6�9�#���v߽��8������x�uW��ȕ��ٖ��?�L~`&�J&Ʉ��JRY���ү*�V������w7KY�,33S��lw:����K���1>����N;�}�?�11u�K=
�O҈�4�)��.��q:A'��G��t%:MW���U�jt!]DW�k�5�Ztm�]��Gק�
�Ftc
�&tS��nF�Хt]N7?��]A��[ѭ�6t[�ݞ�@w�;ѝ�.tW�ݝ�A��{ѽ�>t_�ݟ@�у�!�Pz=�A��Gѣ�1�Xz=��@�"�)!I3J)#E�4��
*ISEgȐ%G5-hI+j耞HO�'�S��4z:=��IϢg�s��<z>��^H/��K��2z9��^I��W�k��:z=���Ho�7�[��6z;���I�w�{��>z?}�>H��G��1�8}�>I��O�g��9�<}��H_�/�W��5�:}��Iߢo�w��=�)�i��>�,��<��"��~�~�~�~�~�~�~�~�~H�E�M�C�K�G�O@HDLBJFNAIEMCKGO�@�H�D�L�B�J�F�N�A�I�E�M�C?b�w���y�C�'<���=>�'�$���|���ħ��|�*_�/��|
�&_�������|�!߈o�!߄o�����/���|��oɷ�[�m��|;�=߁��w�;�]��|7�;߃���{�������@~?������H~?�Ï����	,8��<�3V��sι�5W|�
[v\󂗼����$~2?���O��3���,~6?����������"~1��_�/��+���*~5��_˯������&~3����o��;���.~7����������!�0�?���'���)�4�?˟������%�2���_��7���-�6����۝)#gzFF/�4=�H��:=^)�����	�Z٫K�q"T��)]��:�Ql_)�J���t�fM�Hy �X&�s����Z��+�tMm]����.m����\��,�X��Vy"�n�r��R[=s�v�\';:v��m��*�M�'�ug�8��\
g�(�Bc�ڨ2�.uR︥r�p[�3�H�=�U9��*��rYm�����׃���J�����6���n6�2�]ӣ]�x;U���f6����8){�+�˻���v"�]�:��62������H�v�x�4�\/����r�MG$�0R.��D��"��t]l�Z�2��Ġ*�a��j�EQ.{v�Tr4ӵY�8#�\0�S8S^�{K�"Y�X�Tbi7��+�N���BRoQcs�6\j�T�
t%KLވL�`1�$�M��6��]��+]��2q.�G��	掕�m7Qi:=���9��1OL]�<�׺�E?�Xf,w6��B�Ť}n#f+�¬%r�D����u��@�.��~��QY��L%	�hd$�@RП�f������J��S'1w��6�|�L�
~ds$���*��ȼ
p��bK����8\(+�(���X�d�V�l����\
Q�G�5�B 'ݬ���햕^eں�?�<W֍�������ĺ,e���j� �c�v0�#e?����(��fb3e�UeT��UE�7�
�5�0��iU
��pVTU���*��S�&�u�R ϧ�r��z�݁��&rU�e0��y�-���N�R�y��F��G��s��t-� �~���s�Ζj�N�Dk�Q*�b�sm�D��\����0*�3��߰p�4�x���a��6���w��W�@�@�t}p�_g�b��	����U��N6Y"r%ˮ��0�$ �-t���0��RZ,�S�hRc�¬.�$ޢ7�1?��tZ�l|X#O��F�*�)�@ZV���,ʈ^�Q�o�a����bK����l+aꑵ{�܄�ǹ:F��P$����e���‎���c���읩�;3#�cU�(����&�� �.Z��t��"��h��4��m��Tz	�`��GUH��j��ĞYvE��H)�3@�n�X�"���ʕp��J_�F��{�H3�l�9����pzX��=��	��P�}Q'~ξ�$W��`�BG�H�>t��Oe3j!Ic����T�����P5���u�)	4�����"�V�ؤ���yW�=x��ŵs��)�����Z����js@q
�VP�P� �~�T��#�D��J_�+��3w��ݭXm�$
�B:�€Y�I�O�#��Cݟ�8�8)	Z3�g�ȓü
gj�h�
�=�"�1�܈�,�XxI������a-L'�b��#�
4TU�
z�Av�:�N���]b�0�s�v����C�r5�v�.�R;�ߗ�N����G�o��ۡ��l`3�s���<R�}�0���W�n��\����N�A����7,z��v��pHP�X�D*��#�=�}&���SVE��W��p�nR�z�.\�g2�W�*�}�����DdT�I�x�i��U8C�JX���Gk�C0��L��qF�>ޞ���0pЙ?X�C�ӑi��sN�W=��8��jl��8(T9�O^(d��2}��H�F�{	3̀sQ��B��v[�����P�u.�@�j����R�rgKF�9���j��#�D�)�>��'��ں,E,����ʿ�
CgQ.v�j��/ˬ��ޡ�
[����y�\�Z�Z��X��6o&�+l�Y�t�iv�U�4"vQÔC�5�k!��E-�����	<9ݓp�O0%<�5�B��*"X;���m�5��t��B��i�_����P#�"�k���h�!kv6�y�!L1\3�.��TY5<S#SbQy�)�Bv����F�<�=B5g�����e}���#$g�U����,t��F"�Š���������z��=�n�tWF��a"a�;O��LA�^�`Q։�B��>G���="�kv����x*�e����~����1F�����c\�����Mt�~��%
\pʮ�^�g�$P�4-�O.u>��Ցp��
2m�H�!�g��_**�AP*������Q�Qf1
��^�c
�.���,ժ�M�5�Q΃�H����VvK	M?�TV�ߧ	=�5ҩ�"VmK��
y�B�d{2�"�F�O6F��eҁ+?5�� �T��p�>��lB�"qj��6Գ�O{�5v�,�gd�m�K�\���v�"�'cQ����[x����6h;����"q��$Y>�[�/��ÿ
�l*-�@�}F�
L7f���W"젨\6�O[ׂ��Cdg`[�W0�Iٵ5C�3�N]�nm�h�)�LTF#�X$l��yک������.ݻ�.4�UT����I��A�>.@l"�.4���.Ł��~ںq7l�–Mc�(�J�z�TX�`�Tv�9{`�T�\\�.;�Ǯfassets/lib/font-awesome/migration/mapping.js000064400000120131151327220410015175 0ustar00{
  "fa fa-500px": {
    "value": "fab fa-500px",
    "library": "fa-brands"
  },
  "fa fa-address-book-o": {
    "value": "far fa-address-book",
    "library": "fa-regular"
  },
  "fa fa-address-card-o": {
    "value": "far fa-address-card",
    "library": "fa-regular"
  },
  "fa fa-adn": {
    "value": "fab fa-adn",
    "library": "fa-brands"
  },
  "fa fa-amazon": {
    "value": "fab fa-amazon",
    "library": "fa-brands"
  },
  "fa fa-android": {
    "value": "fab fa-android",
    "library": "fa-brands"
  },
  "fa fa-angellist": {
    "value": "fab fa-angellist",
    "library": "fa-brands"
  },
  "fa fa-apple": {
    "value": "fab fa-apple",
    "library": "fa-brands"
  },
  "fa fa-area-chart": {
    "value": "fas fa-chart-area",
    "library": "fa-solid"
  },
  "fa fa-arrow-circle-o-down": {
    "value": "far fa-arrow-alt-circle-down",
    "library": "fa-regular"
  },
  "fa fa-arrow-circle-o-left": {
    "value": "far fa-arrow-alt-circle-left",
    "library": "fa-regular"
  },
  "fa fa-arrow-circle-o-right": {
    "value": "far fa-arrow-alt-circle-right",
    "library": "fa-regular"
  },
  "fa fa-arrow-circle-o-up": {
    "value": "far fa-arrow-alt-circle-up",
    "library": "fa-regular"
  },
  "fa fa-arrows": {
    "value": "fas fa-arrows-alt",
    "library": "fa-solid"
  },
  "fa fa-arrows-alt": {
    "value": "fas fa-expand-arrows-alt",
    "library": "fa-solid"
  },
  "fa fa-arrows-h": {
    "value": "fas fa-arrows-alt-h",
    "library": "fa-solid"
  },
  "fa fa-arrows-v": {
    "value": "fas fa-arrows-alt-v",
    "library": "fa-solid"
  },
  "fa fa-asl-interpreting": {
    "value": "fas fa-american-sign-language-interpreting",
    "library": "fa-solid"
  },
  "fa fa-automobile": {
    "value": "fas fa-car",
    "library": "fa-solid"
  },
  "fa fa-bandcamp": {
    "value": "fab fa-bandcamp",
    "library": "fa-brands"
  },
  "fa fa-bank": {
    "value": "fas fa-university",
    "library": "fa-solid"
  },
  "fa fa-bar-chart": {
    "value": "far fa-chart-bar",
    "library": "fa-regular"
  },
  "fa fa-bar-chart-o": {
    "value": "far fa-chart-bar",
    "library": "fa-regular"
  },
  "fa fa-bathtub": {
    "value": "fas fa-bath",
    "library": "fa-solid"
  },
  "fa fa-battery": {
    "value": "fas fa-battery-full",
    "library": "fa-solid"
  },
  "fa fa-battery-0": {
    "value": "fas fa-battery-empty",
    "library": "fa-solid"
  },
  "fa fa-battery-1": {
    "value": "fas fa-battery-quarter",
    "library": "fa-solid"
  },
  "fa fa-battery-2": {
    "value": "fas fa-battery-half",
    "library": "fa-solid"
  },
  "fa fa-battery-3": {
    "value": "fas fa-battery-three-quarters",
    "library": "fa-solid"
  },
  "fa fa-battery-4": {
    "value": "fas fa-battery-full",
    "library": "fa-solid"
  },
  "fa fa-behance": {
    "value": "fab fa-behance",
    "library": "fa-brands"
  },
  "fa fa-behance-square": {
    "value": "fab fa-behance-square",
    "library": "fa-brands"
  },
  "fa fa-bell-o": {
    "value": "far fa-bell",
    "library": "fa-regular"
  },
  "fa fa-bell-slash-o": {
    "value": "far fa-bell-slash",
    "library": "fa-regular"
  },
  "fa fa-bitbucket": {
    "value": "fab fa-bitbucket",
    "library": "fa-brands"
  },
  "fa fa-bitbucket-square": {
    "value": "fab fa-bitbucket",
    "library": "fa-brands"
  },
  "fa fa-bitcoin": {
    "value": "fab fa-btc",
    "library": "fa-brands"
  },
  "fa fa-black-tie": {
    "value": "fab fa-black-tie",
    "library": "fa-brands"
  },
  "fa fa-bluetooth": {
    "value": "fab fa-bluetooth",
    "library": "fa-brands"
  },
  "fa fa-bluetooth-b": {
    "value": "fab fa-bluetooth-b",
    "library": "fa-brands"
  },
  "fa fa-bookmark-o": {
    "value": "far fa-bookmark",
    "library": "fa-regular"
  },
  "fa fa-btc": {
    "value": "fab fa-btc",
    "library": "fa-brands"
  },
  "fa fa-building-o": {
    "value": "far fa-building",
    "library": "fa-regular"
  },
  "fa fa-buysellads": {
    "value": "fab fa-buysellads",
    "library": "fa-brands"
  },
  "fa fa-cab": {
    "value": "fas fa-taxi",
    "library": "fa-solid"
  },
  "fa fa-calendar": {
    "value": "fas fa-calendar-alt",
    "library": "fa-solid"
  },
  "fa fa-calendar-check-o": {
    "value": "far fa-calendar-check",
    "library": "fa-regular"
  },
  "fa fa-calendar-minus-o": {
    "value": "far fa-calendar-minus",
    "library": "fa-regular"
  },
  "fa fa-calendar-o": {
    "value": "far fa-calendar",
    "library": "fa-regular"
  },
  "fa fa-calendar-plus-o": {
    "value": "far fa-calendar-plus",
    "library": "fa-regular"
  },
  "fa fa-calendar-times-o": {
    "value": "far fa-calendar-times",
    "library": "fa-regular"
  },
  "fa fa-caret-square-o-down": {
    "value": "far fa-caret-square-down",
    "library": "fa-regular"
  },
  "fa fa-caret-square-o-left": {
    "value": "far fa-caret-square-left",
    "library": "fa-regular"
  },
  "fa fa-caret-square-o-right": {
    "value": "far fa-caret-square-right",
    "library": "fa-regular"
  },
  "fa fa-caret-square-o-up": {
    "value": "far fa-caret-square-up",
    "library": "fa-regular"
  },
  "fa fa-cc": {
    "value": "far fa-closed-captioning",
    "library": "fa-regular"
  },
  "fa fa-cc-amex": {
    "value": "fab fa-cc-amex",
    "library": "fa-brands"
  },
  "fa fa-cc-diners-club": {
    "value": "fab fa-cc-diners-club",
    "library": "fa-brands"
  },
  "fa fa-cc-discover": {
    "value": "fab fa-cc-discover",
    "library": "fa-brands"
  },
  "fa fa-cc-jcb": {
    "value": "fab fa-cc-jcb",
    "library": "fa-brands"
  },
  "fa fa-cc-mastercard": {
    "value": "fab fa-cc-mastercard",
    "library": "fa-brands"
  },
  "fa fa-cc-paypal": {
    "value": "fab fa-cc-paypal",
    "library": "fa-brands"
  },
  "fa fa-cc-stripe": {
    "value": "fab fa-cc-stripe",
    "library": "fa-brands"
  },
  "fa fa-cc-visa": {
    "value": "fab fa-cc-visa",
    "library": "fa-brands"
  },
  "fa fa-chain": {
    "value": "fas fa-link",
    "library": "fa-solid"
  },
  "fa fa-chain-broken": {
    "value": "fas fa-unlink",
    "library": "fa-solid"
  },
  "fa fa-check-circle-o": {
    "value": "far fa-check-circle",
    "library": "fa-regular"
  },
  "fa fa-check-square-o": {
    "value": "far fa-check-square",
    "library": "fa-regular"
  },
  "fa fa-chrome": {
    "value": "fab fa-chrome",
    "library": "fa-brands"
  },
  "fa fa-circle-o": {
    "value": "far fa-circle",
    "library": "fa-regular"
  },
  "fa fa-circle-o-notch": {
    "value": "fas fa-circle-notch",
    "library": "fa-solid"
  },
  "fa fa-circle-thin": {
    "value": "far fa-circle",
    "library": "fa-regular"
  },
  "fa fa-clipboard": {
    "value": "far fa-clipboard",
    "library": "fa-regular"
  },
  "fa fa-clock-o": {
    "value": "far fa-clock",
    "library": "fa-regular"
  },
  "fa fa-clone": {
    "value": "far fa-clone",
    "library": "fa-regular"
  },
  "fa fa-close": {
    "value": "fas fa-times",
    "library": "fa-solid"
  },
  "fa fa-cloud-download": {
    "value": "fas fa-cloud-download-alt",
    "library": "fa-solid"
  },
  "fa fa-cloud-upload": {
    "value": "fas fa-cloud-upload-alt",
    "library": "fa-solid"
  },
  "fa fa-cny": {
    "value": "fas fa-yen-sign",
    "library": "fa-solid"
  },
  "fa fa-code-fork": {
    "value": "fas fa-code-branch",
    "library": "fa-solid"
  },
  "fa fa-codepen": {
    "value": "fab fa-codepen",
    "library": "fa-brands"
  },
  "fa fa-codiepie": {
    "value": "fab fa-codiepie",
    "library": "fa-brands"
  },
  "fa fa-comment-o": {
    "value": "far fa-comment",
    "library": "fa-regular"
  },
  "fa fa-commenting": {
    "value": "fas fa-comment-dots",
    "library": "fa-solid"
  },
  "fa fa-commenting-o": {
    "value": "far fa-comment-dots",
    "library": "fa-regular"
  },
  "fa fa-comments-o": {
    "value": "far fa-comments",
    "library": "fa-regular"
  },
  "fa fa-compass": {
    "value": "far fa-compass",
    "library": "fa-regular"
  },
  "fa fa-connectdevelop": {
    "value": "fab fa-connectdevelop",
    "library": "fa-brands"
  },
  "fa fa-contao": {
    "value": "fab fa-contao",
    "library": "fa-brands"
  },
  "fa fa-copyright": {
    "value": "far fa-copyright",
    "library": "fa-regular"
  },
  "fa fa-creative-commons": {
    "value": "fab fa-creative-commons",
    "library": "fa-brands"
  },
  "fa fa-credit-card": {
    "value": "far fa-credit-card",
    "library": "fa-regular"
  },
  "fa fa-credit-card-alt": {
    "value": "fas fa-credit-card",
    "library": "fa-solid"
  },
  "fa fa-css3": {
    "value": "fab fa-css3",
    "library": "fa-brands"
  },
  "fa fa-cutlery": {
    "value": "fas fa-utensils",
    "library": "fa-solid"
  },
  "fa fa-dashboard": {
    "value": "fas fa-tachometer-alt",
    "library": "fa-solid"
  },
  "fa fa-dashcube": {
    "value": "fab fa-dashcube",
    "library": "fa-brands"
  },
  "fa fa-deafness": {
    "value": "fas fa-deaf",
    "library": "fa-solid"
  },
  "fa fa-dedent": {
    "value": "fas fa-outdent",
    "library": "fa-solid"
  },
  "fa fa-delicious": {
    "value": "fab fa-delicious",
    "library": "fa-brands"
  },
  "fa fa-deviantart": {
    "value": "fab fa-deviantart",
    "library": "fa-brands"
  },
  "fa fa-diamond": {
    "value": "far fa-gem",
    "library": "fa-regular"
  },
  "fa fa-digg": {
    "value": "fab fa-digg",
    "library": "fa-brands"
  },
  "fa fa-dollar": {
    "value": "fas fa-dollar-sign",
    "library": "fa-solid"
  },
  "fa fa-dot-circle-o": {
    "value": "far fa-dot-circle",
    "library": "fa-regular"
  },
  "fa fa-dribbble": {
    "value": "fab fa-dribbble",
    "library": "fa-brands"
  },
  "fa fa-drivers-license": {
    "value": "fas fa-id-card",
    "library": "fa-solid"
  },
  "fa fa-drivers-license-o": {
    "value": "far fa-id-card",
    "library": "fa-regular"
  },
  "fa fa-dropbox": {
    "value": "fab fa-dropbox",
    "library": "fa-brands"
  },
  "fa fa-drupal": {
    "value": "fab fa-drupal",
    "library": "fa-brands"
  },
  "fa fa-edge": {
    "value": "fab fa-edge",
    "library": "fa-brands"
  },
  "fa fa-eercast": {
    "value": "fab fa-sellcast",
    "library": "fa-brands"
  },
  "fa fa-empire": {
    "value": "fab fa-empire",
    "library": "fa-brands"
  },
  "fa fa-envelope-o": {
    "value": "far fa-envelope",
    "library": "fa-regular"
  },
  "fa fa-envelope-open-o": {
    "value": "far fa-envelope-open",
    "library": "fa-regular"
  },
  "fa fa-envira": {
    "value": "fab fa-envira",
    "library": "fa-brands"
  },
  "fa fa-etsy": {
    "value": "fab fa-etsy",
    "library": "fa-brands"
  },
  "fa fa-eur": {
    "value": "fas fa-euro-sign",
    "library": "fa-solid"
  },
  "fa fa-euro": {
    "value": "fas fa-euro-sign",
    "library": "fa-solid"
  },
  "fa fa-exchange": {
    "value": "fas fa-exchange-alt",
    "library": "fa-solid"
  },
  "fa fa-expeditedssl": {
    "value": "fab fa-expeditedssl",
    "library": "fa-brands"
  },
  "fa fa-external-link": {
    "value": "fas fa-external-link-alt",
    "library": "fa-solid"
  },
  "fa fa-external-link-square": {
    "value": "fas fa-external-link-square-alt",
    "library": "fa-solid"
  },
  "fa fa-eye": {
    "value": "far fa-eye",
    "library": "fa-regular"
  },
  "fa fa-eye-slash": {
    "value": "far fa-eye-slash",
    "library": "fa-regular"
  },
  "fa fa-eyedropper": {
    "value": "fas fa-eye-dropper",
    "library": "fa-solid"
  },
  "fa fa-fa": {
    "value": "fab fa-font-awesome",
    "library": "fa-brands"
  },
  "fa fa-facebook": {
    "value": "fab fa-facebook-f",
    "library": "fa-brands"
  },
  "fa fa-facebook-f": {
    "value": "fab fa-facebook-f",
    "library": "fa-brands"
  },
  "fa fa-facebook-official": {
    "value": "fab fa-facebook",
    "library": "fa-brands"
  },
  "fa fa-facebook-square": {
    "value": "fab fa-facebook-square",
    "library": "fa-brands"
  },
  "fa fa-feed": {
    "value": "fas fa-rss",
    "library": "fa-solid"
  },
  "fa fa-file-archive-o": {
    "value": "far fa-file-archive",
    "library": "fa-regular"
  },
  "fa fa-file-audio-o": {
    "value": "far fa-file-audio",
    "library": "fa-regular"
  },
  "fa fa-file-code-o": {
    "value": "far fa-file-code",
    "library": "fa-regular"
  },
  "fa fa-file-excel-o": {
    "value": "far fa-file-excel",
    "library": "fa-regular"
  },
  "fa fa-file-image-o": {
    "value": "far fa-file-image",
    "library": "fa-regular"
  },
  "fa fa-file-movie-o": {
    "value": "far fa-file-video",
    "library": "fa-regular"
  },
  "fa fa-file-o": {
    "value": "far fa-file",
    "library": "fa-regular"
  },
  "fa fa-file-pdf-o": {
    "value": "far fa-file-pdf",
    "library": "fa-regular"
  },
  "fa fa-file-photo-o": {
    "value": "far fa-file-image",
    "library": "fa-regular"
  },
  "fa fa-file-picture-o": {
    "value": "far fa-file-image",
    "library": "fa-regular"
  },
  "fa fa-file-powerpoint-o": {
    "value": "far fa-file-powerpoint",
    "library": "fa-regular"
  },
  "fa fa-file-sound-o": {
    "value": "far fa-file-audio",
    "library": "fa-regular"
  },
  "fa fa-file-text": {
    "value": "fas fa-file-alt",
    "library": "fa-solid"
  },
  "fa fa-file-text-o": {
    "value": "far fa-file-alt",
    "library": "fa-regular"
  },
  "fa fa-file-video-o": {
    "value": "far fa-file-video",
    "library": "fa-regular"
  },
  "fa fa-file-word-o": {
    "value": "far fa-file-word",
    "library": "fa-regular"
  },
  "fa fa-file-zip-o": {
    "value": "far fa-file-archive",
    "library": "fa-regular"
  },
  "fa fa-files-o": {
    "value": "far fa-copy",
    "library": "fa-regular"
  },
  "fa fa-firefox": {
    "value": "fab fa-firefox",
    "library": "fa-brands"
  },
  "fa fa-first-order": {
    "value": "fab fa-first-order",
    "library": "fa-brands"
  },
  "fa fa-flag-o": {
    "value": "far fa-flag",
    "library": "fa-regular"
  },
  "fa fa-flash": {
    "value": "fas fa-bolt",
    "library": "fa-solid"
  },
  "fa fa-flickr": {
    "value": "fab fa-flickr",
    "library": "fa-brands"
  },
  "fa fa-floppy-o": {
    "value": "far fa-save",
    "library": "fa-regular"
  },
  "fa fa-folder-o": {
    "value": "far fa-folder",
    "library": "fa-regular"
  },
  "fa fa-folder-open-o": {
    "value": "far fa-folder-open",
    "library": "fa-regular"
  },
  "fa fa-font-awesome": {
    "value": "fab fa-font-awesome",
    "library": "fa-brands"
  },
  "fa fa-fonticons": {
    "value": "fab fa-fonticons",
    "library": "fa-brands"
  },
  "fa fa-fort-awesome": {
    "value": "fab fa-fort-awesome",
    "library": "fa-brands"
  },
  "fa fa-forumbee": {
    "value": "fab fa-forumbee",
    "library": "fa-brands"
  },
  "fa fa-foursquare": {
    "value": "fab fa-foursquare",
    "library": "fa-brands"
  },
  "fa fa-free-code-camp": {
    "value": "fab fa-free-code-camp",
    "library": "fa-brands"
  },
  "fa fa-frown-o": {
    "value": "far fa-frown",
    "library": "fa-regular"
  },
  "fa fa-futbol-o": {
    "value": "far fa-futbol",
    "library": "fa-regular"
  },
  "fa fa-gbp": {
    "value": "fas fa-pound-sign",
    "library": "fa-solid"
  },
  "fa fa-ge": {
    "value": "fab fa-empire",
    "library": "fa-brands"
  },
  "fa fa-gear": {
    "value": "fas fa-cog",
    "library": "fa-solid"
  },
  "fa fa-gears": {
    "value": "fas fa-cogs",
    "library": "fa-solid"
  },
  "fa fa-get-pocket": {
    "value": "fab fa-get-pocket",
    "library": "fa-brands"
  },
  "fa fa-gg": {
    "value": "fab fa-gg",
    "library": "fa-brands"
  },
  "fa fa-gg-circle": {
    "value": "fab fa-gg-circle",
    "library": "fa-brands"
  },
  "fa fa-git": {
    "value": "fab fa-git",
    "library": "fa-brands"
  },
  "fa fa-git-square": {
    "value": "fab fa-git-square",
    "library": "fa-brands"
  },
  "fa fa-github": {
    "value": "fab fa-github",
    "library": "fa-brands"
  },
  "fa fa-github-alt": {
    "value": "fab fa-github-alt",
    "library": "fa-brands"
  },
  "fa fa-github-square": {
    "value": "fab fa-github-square",
    "library": "fa-brands"
  },
  "fa fa-gitlab": {
    "value": "fab fa-gitlab",
    "library": "fa-brands"
  },
  "fa fa-gittip": {
    "value": "fab fa-gratipay",
    "library": "fa-brands"
  },
  "fa fa-glass": {
    "value": "fas fa-glass-martini",
    "library": "fa-solid"
  },
  "fa fa-glide": {
    "value": "fab fa-glide",
    "library": "fa-brands"
  },
  "fa fa-glide-g": {
    "value": "fab fa-glide-g",
    "library": "fa-brands"
  },
  "fa fa-google": {
    "value": "fab fa-google",
    "library": "fa-brands"
  },
  "fa fa-google-plus": {
    "value": "fab fa-google-plus-g",
    "library": "fa-brands"
  },
  "fa fa-google-plus-circle": {
    "value": "fab fa-google-plus",
    "library": "fa-brands"
  },
  "fa fa-google-plus-official": {
    "value": "fab fa-google-plus",
    "library": "fa-brands"
  },
  "fa fa-google-plus-square": {
    "value": "fab fa-google-plus-square",
    "library": "fa-brands"
  },
  "fa fa-google-wallet": {
    "value": "fab fa-google-wallet",
    "library": "fa-brands"
  },
  "fa fa-gratipay": {
    "value": "fab fa-gratipay",
    "library": "fa-brands"
  },
  "fa fa-grav": {
    "value": "fab fa-grav",
    "library": "fa-brands"
  },
  "fa fa-group": {
    "value": "fas fa-users",
    "library": "fa-solid"
  },
  "fa fa-hacker-news": {
    "value": "fab fa-hacker-news",
    "library": "fa-brands"
  },
  "fa fa-hand-grab-o": {
    "value": "far fa-hand-rock",
    "library": "fa-regular"
  },
  "fa fa-hand-lizard-o": {
    "value": "far fa-hand-lizard",
    "library": "fa-regular"
  },
  "fa fa-hand-o-down": {
    "value": "far fa-hand-point-down",
    "library": "fa-regular"
  },
  "fa fa-hand-o-left": {
    "value": "far fa-hand-point-left",
    "library": "fa-regular"
  },
  "fa fa-hand-o-right": {
    "value": "far fa-hand-point-right",
    "library": "fa-regular"
  },
  "fa fa-hand-o-up": {
    "value": "far fa-hand-point-up",
    "library": "fa-regular"
  },
  "fa fa-hand-paper-o": {
    "value": "far fa-hand-paper",
    "library": "fa-regular"
  },
  "fa fa-hand-peace-o": {
    "value": "far fa-hand-peace",
    "library": "fa-regular"
  },
  "fa fa-hand-pointer-o": {
    "value": "far fa-hand-pointer",
    "library": "fa-regular"
  },
  "fa fa-hand-rock-o": {
    "value": "far fa-hand-rock",
    "library": "fa-regular"
  },
  "fa fa-hand-scissors-o": {
    "value": "far fa-hand-scissors",
    "library": "fa-regular"
  },
  "fa fa-hand-spock-o": {
    "value": "far fa-hand-spock",
    "library": "fa-regular"
  },
  "fa fa-hand-stop-o": {
    "value": "far fa-hand-paper",
    "library": "fa-regular"
  },
  "fa fa-handshake-o": {
    "value": "far fa-handshake",
    "library": "fa-regular"
  },
  "fa fa-hard-of-hearing": {
    "value": "fas fa-deaf",
    "library": "fa-solid"
  },
  "fa fa-hdd-o": {
    "value": "far fa-hdd",
    "library": "fa-regular"
  },
  "fa fa-header": {
    "value": "fas fa-heading",
    "library": "fa-solid"
  },
  "fa fa-heart-o": {
    "value": "far fa-heart",
    "library": "fa-regular"
  },
  "fa fa-hospital-o": {
    "value": "far fa-hospital",
    "library": "fa-regular"
  },
  "fa fa-hotel": {
    "value": "fas fa-bed",
    "library": "fa-solid"
  },
  "fa fa-hourglass-1": {
    "value": "fas fa-hourglass-start",
    "library": "fa-solid"
  },
  "fa fa-hourglass-2": {
    "value": "fas fa-hourglass-half",
    "library": "fa-solid"
  },
  "fa fa-hourglass-3": {
    "value": "fas fa-hourglass-end",
    "library": "fa-solid"
  },
  "fa fa-hourglass-o": {
    "value": "far fa-hourglass",
    "library": "fa-regular"
  },
  "fa fa-houzz": {
    "value": "fab fa-houzz",
    "library": "fa-brands"
  },
  "fa fa-html5": {
    "value": "fab fa-html5",
    "library": "fa-brands"
  },
  "fa fa-id-badge": {
    "value": "far fa-id-badge",
    "library": "fa-regular"
  },
  "fa fa-id-card-o": {
    "value": "far fa-id-card",
    "library": "fa-regular"
  },
  "fa fa-ils": {
    "value": "fas fa-shekel-sign",
    "library": "fa-solid"
  },
  "fa fa-image": {
    "value": "far fa-image",
    "library": "fa-regular"
  },
  "fa fa-imdb": {
    "value": "fab fa-imdb",
    "library": "fa-brands"
  },
  "fa fa-inr": {
    "value": "fas fa-rupee-sign",
    "library": "fa-solid"
  },
  "fa fa-instagram": {
    "value": "fab fa-instagram",
    "library": "fa-brands"
  },
  "fa fa-institution": {
    "value": "fas fa-university",
    "library": "fa-solid"
  },
  "fa fa-internet-explorer": {
    "value": "fab fa-internet-explorer",
    "library": "fa-brands"
  },
  "fa fa-intersex": {
    "value": "fas fa-transgender",
    "library": "fa-solid"
  },
  "fa fa-ioxhost": {
    "value": "fab fa-ioxhost",
    "library": "fa-brands"
  },
  "fa fa-joomla": {
    "value": "fab fa-joomla",
    "library": "fa-brands"
  },
  "fa fa-jpy": {
    "value": "fas fa-yen-sign",
    "library": "fa-solid"
  },
  "fa fa-jsfiddle": {
    "value": "fab fa-jsfiddle",
    "library": "fa-brands"
  },
  "fa fa-keyboard-o": {
    "value": "far fa-keyboard",
    "library": "fa-regular"
  },
  "fa fa-krw": {
    "value": "fas fa-won-sign",
    "library": "fa-solid"
  },
  "fa fa-lastfm": {
    "value": "fab fa-lastfm",
    "library": "fa-brands"
  },
  "fa fa-lastfm-square": {
    "value": "fab fa-lastfm-square",
    "library": "fa-brands"
  },
  "fa fa-leanpub": {
    "value": "fab fa-leanpub",
    "library": "fa-brands"
  },
  "fa fa-legal": {
    "value": "fas fa-gavel",
    "library": "fa-solid"
  },
  "fa fa-lemon-o": {
    "value": "far fa-lemon",
    "library": "fa-regular"
  },
  "fa fa-level-down": {
    "value": "fas fa-level-down-alt",
    "library": "fa-solid"
  },
  "fa fa-level-up": {
    "value": "fas fa-level-up-alt",
    "library": "fa-solid"
  },
  "fa fa-life-bouy": {
    "value": "far fa-life-ring",
    "library": "fa-regular"
  },
  "fa fa-life-buoy": {
    "value": "far fa-life-ring",
    "library": "fa-regular"
  },
  "fa fa-life-ring": {
    "value": "far fa-life-ring",
    "library": "fa-regular"
  },
  "fa fa-life-saver": {
    "value": "far fa-life-ring",
    "library": "fa-regular"
  },
  "fa fa-lightbulb-o": {
    "value": "far fa-lightbulb",
    "library": "fa-regular"
  },
  "fa fa-line-chart": {
    "value": "fas fa-chart-line",
    "library": "fa-solid"
  },
  "fa fa-linkedin": {
    "value": "fab fa-linkedin-in",
    "library": "fa-brands"
  },
  "fa fa-linkedin-square": {
    "value": "fab fa-linkedin",
    "library": "fa-brands"
  },
  "fa fa-linode": {
    "value": "fab fa-linode",
    "library": "fa-brands"
  },
  "fa fa-linux": {
    "value": "fab fa-linux",
    "library": "fa-brands"
  },
  "fa fa-list-alt": {
    "value": "far fa-list-alt",
    "library": "fa-regular"
  },
  "fa fa-long-arrow-down": {
    "value": "fas fa-long-arrow-alt-down",
    "library": "fa-solid"
  },
  "fa fa-long-arrow-left": {
    "value": "fas fa-long-arrow-alt-left",
    "library": "fa-solid"
  },
  "fa fa-long-arrow-right": {
    "value": "fas fa-long-arrow-alt-right",
    "library": "fa-solid"
  },
  "fa fa-long-arrow-up": {
    "value": "fas fa-long-arrow-alt-up",
    "library": "fa-solid"
  },
  "fa fa-mail-forward": {
    "value": "fas fa-share",
    "library": "fa-solid"
  },
  "fa fa-mail-reply": {
    "value": "fas fa-reply",
    "library": "fa-solid"
  },
  "fa fa-mail-reply-all": {
    "value": "fas fa-reply-all",
    "library": "fa-solid"
  },
  "fa fa-map-marker": {
    "value": "fas fa-map-marker-alt",
    "library": "fa-solid"
  },
  "fa fa-map-o": {
    "value": "far fa-map",
    "library": "fa-regular"
  },
  "fa fa-maxcdn": {
    "value": "fab fa-maxcdn",
    "library": "fa-brands"
  },
  "fa fa-meanpath": {
    "value": "fab fa-font-awesome",
    "library": "fa-brands"
  },
  "fa fa-medium": {
    "value": "fab fa-medium",
    "library": "fa-brands"
  },
  "fa fa-meetup": {
    "value": "fab fa-meetup",
    "library": "fa-brands"
  },
  "fa fa-meh-o": {
    "value": "far fa-meh",
    "library": "fa-regular"
  },
  "fa fa-minus-square-o": {
    "value": "far fa-minus-square",
    "library": "fa-regular"
  },
  "fa fa-mixcloud": {
    "value": "fab fa-mixcloud",
    "library": "fa-brands"
  },
  "fa fa-mobile": {
    "value": "fas fa-mobile-alt",
    "library": "fa-solid"
  },
  "fa fa-mobile-phone": {
    "value": "fas fa-mobile-alt",
    "library": "fa-solid"
  },
  "fa fa-modx": {
    "value": "fab fa-modx",
    "library": "fa-brands"
  },
  "fa fa-money": {
    "value": "far fa-money-bill-alt",
    "library": "fa-regular"
  },
  "fa fa-moon-o": {
    "value": "far fa-moon",
    "library": "fa-regular"
  },
  "fa fa-mortar-board": {
    "value": "fas fa-graduation-cap",
    "library": "fa-solid"
  },
  "fa fa-navicon": {
    "value": "fas fa-bars",
    "library": "fa-solid"
  },
  "fa fa-newspaper-o": {
    "value": "far fa-newspaper",
    "library": "fa-regular"
  },
  "fa fa-object-group": {
    "value": "far fa-object-group",
    "library": "fa-regular"
  },
  "fa fa-object-ungroup": {
    "value": "far fa-object-ungroup",
    "library": "fa-regular"
  },
  "fa fa-odnoklassniki": {
    "value": "fab fa-odnoklassniki",
    "library": "fa-brands"
  },
  "fa fa-odnoklassniki-square": {
    "value": "fab fa-odnoklassniki-square",
    "library": "fa-brands"
  },
  "fa fa-opencart": {
    "value": "fab fa-opencart",
    "library": "fa-brands"
  },
  "fa fa-openid": {
    "value": "fab fa-openid",
    "library": "fa-brands"
  },
  "fa fa-opera": {
    "value": "fab fa-opera",
    "library": "fa-brands"
  },
  "fa fa-optin-monster": {
    "value": "fab fa-optin-monster",
    "library": "fa-brands"
  },
  "fa fa-pagelines": {
    "value": "fab fa-pagelines",
    "library": "fa-brands"
  },
  "fa fa-paper-plane-o": {
    "value": "far fa-paper-plane",
    "library": "fa-regular"
  },
  "fa fa-paste": {
    "value": "far fa-clipboard",
    "library": "fa-regular"
  },
  "fa fa-pause-circle-o": {
    "value": "far fa-pause-circle",
    "library": "fa-regular"
  },
  "fa fa-paypal": {
    "value": "fab fa-paypal",
    "library": "fa-brands"
  },
  "fa fa-pencil": {
    "value": "fas fa-pencil-alt",
    "library": "fa-solid"
  },
  "fa fa-pencil-square": {
    "value": "fas fa-pen-square",
    "library": "fa-solid"
  },
  "fa fa-pencil-square-o": {
    "value": "far fa-edit",
    "library": "fa-regular"
  },
  "fa fa-photo": {
    "value": "far fa-image",
    "library": "fa-regular"
  },
  "fa fa-picture-o": {
    "value": "far fa-image",
    "library": "fa-regular"
  },
  "fa fa-pie-chart": {
    "value": "fas fa-chart-pie",
    "library": "fa-solid"
  },
  "fa fa-pied-piper": {
    "value": "fab fa-pied-piper",
    "library": "fa-brands"
  },
  "fa fa-pied-piper-alt": {
    "value": "fab fa-pied-piper-alt",
    "library": "fa-brands"
  },
  "fa fa-pied-piper-pp": {
    "value": "fab fa-pied-piper-pp",
    "library": "fa-brands"
  },
  "fa fa-pinterest": {
    "value": "fab fa-pinterest",
    "library": "fa-brands"
  },
  "fa fa-pinterest-p": {
    "value": "fab fa-pinterest-p",
    "library": "fa-brands"
  },
  "fa fa-pinterest-square": {
    "value": "fab fa-pinterest-square",
    "library": "fa-brands"
  },
  "fa fa-play-circle-o": {
    "value": "far fa-play-circle",
    "library": "fa-regular"
  },
  "fa fa-plus-square-o": {
    "value": "far fa-plus-square",
    "library": "fa-regular"
  },
  "fa fa-product-hunt": {
    "value": "fab fa-product-hunt",
    "library": "fa-brands"
  },
  "fa fa-qq": {
    "value": "fab fa-qq",
    "library": "fa-brands"
  },
  "fa fa-question-circle-o": {
    "value": "far fa-question-circle",
    "library": "fa-regular"
  },
  "fa fa-quora": {
    "value": "fab fa-quora",
    "library": "fa-brands"
  },
  "fa fa-ra": {
    "value": "fab fa-rebel",
    "library": "fa-brands"
  },
  "fa fa-ravelry": {
    "value": "fab fa-ravelry",
    "library": "fa-brands"
  },
  "fa fa-rebel": {
    "value": "fab fa-rebel",
    "library": "fa-brands"
  },
  "fa fa-reddit": {
    "value": "fab fa-reddit",
    "library": "fa-brands"
  },
  "fa fa-reddit-alien": {
    "value": "fab fa-reddit-alien",
    "library": "fa-brands"
  },
  "fa fa-reddit-square": {
    "value": "fab fa-reddit-square",
    "library": "fa-brands"
  },
  "fa fa-refresh": {
    "value": "fas fa-sync",
    "library": "fa-solid"
  },
  "fa fa-registered": {
    "value": "far fa-registered",
    "library": "fa-regular"
  },
  "fa fa-remove": {
    "value": "fas fa-times",
    "library": "fa-solid"
  },
  "fa fa-renren": {
    "value": "fab fa-renren",
    "library": "fa-brands"
  },
  "fa fa-reorder": {
    "value": "fas fa-bars",
    "library": "fa-solid"
  },
  "fa fa-repeat": {
    "value": "fas fa-redo",
    "library": "fa-solid"
  },
  "fa fa-resistance": {
    "value": "fab fa-rebel",
    "library": "fa-brands"
  },
  "fa fa-rmb": {
    "value": "fas fa-yen-sign",
    "library": "fa-solid"
  },
  "fa fa-rotate-left": {
    "value": "fas fa-undo",
    "library": "fa-solid"
  },
  "fa fa-rotate-right": {
    "value": "fas fa-redo",
    "library": "fa-solid"
  },
  "fa fa-rouble": {
    "value": "fas fa-ruble-sign",
    "library": "fa-solid"
  },
  "fa fa-rub": {
    "value": "fas fa-ruble-sign",
    "library": "fa-solid"
  },
  "fa fa-ruble": {
    "value": "fas fa-ruble-sign",
    "library": "fa-solid"
  },
  "fa fa-rupee": {
    "value": "fas fa-rupee-sign",
    "library": "fa-solid"
  },
  "fa fa-s15": {
    "value": "fas fa-bath",
    "library": "fa-solid"
  },
  "fa fa-safari": {
    "value": "fab fa-safari",
    "library": "fa-brands"
  },
  "fa fa-scissors": {
    "value": "fas fa-cut",
    "library": "fa-solid"
  },
  "fa fa-scribd": {
    "value": "fab fa-scribd",
    "library": "fa-brands"
  },
  "fa fa-sellsy": {
    "value": "fab fa-sellsy",
    "library": "fa-brands"
  },
  "fa fa-send": {
    "value": "fas fa-paper-plane",
    "library": "fa-solid"
  },
  "fa fa-send-o": {
    "value": "far fa-paper-plane",
    "library": "fa-regular"
  },
  "fa fa-share-square-o": {
    "value": "far fa-share-square",
    "library": "fa-regular"
  },
  "fa fa-shekel": {
    "value": "fas fa-shekel-sign",
    "library": "fa-solid"
  },
  "fa fa-sheqel": {
    "value": "fas fa-shekel-sign",
    "library": "fa-solid"
  },
  "fa fa-shield": {
    "value": "fas fa-shield-alt",
    "library": "fa-solid"
  },
  "fa fa-shirtsinbulk": {
    "value": "fab fa-shirtsinbulk",
    "library": "fa-brands"
  },
  "fa fa-sign-in": {
    "value": "fas fa-sign-in-alt",
    "library": "fa-solid"
  },
  "fa fa-sign-out": {
    "value": "fas fa-sign-out-alt",
    "library": "fa-solid"
  },
  "fa fa-signing": {
    "value": "fas fa-sign-language",
    "library": "fa-solid"
  },
  "fa fa-simplybuilt": {
    "value": "fab fa-simplybuilt",
    "library": "fa-brands"
  },
  "fa fa-skyatlas": {
    "value": "fab fa-skyatlas",
    "library": "fa-brands"
  },
  "fa fa-skype": {
    "value": "fab fa-skype",
    "library": "fa-brands"
  },
  "fa fa-slack": {
    "value": "fab fa-slack",
    "library": "fa-brands"
  },
  "fa fa-sliders": {
    "value": "fas fa-sliders-h",
    "library": "fa-solid"
  },
  "fa fa-slideshare": {
    "value": "fab fa-slideshare",
    "library": "fa-brands"
  },
  "fa fa-smile-o": {
    "value": "far fa-smile",
    "library": "fa-regular"
  },
  "fa fa-snapchat": {
    "value": "fab fa-snapchat",
    "library": "fa-brands"
  },
  "fa fa-snapchat-ghost": {
    "value": "fab fa-snapchat-ghost",
    "library": "fa-brands"
  },
  "fa fa-snapchat-square": {
    "value": "fab fa-snapchat-square",
    "library": "fa-brands"
  },
  "fa fa-snowflake-o": {
    "value": "far fa-snowflake",
    "library": "fa-regular"
  },
  "fa fa-soccer-ball-o": {
    "value": "far fa-futbol",
    "library": "fa-regular"
  },
  "fa fa-sort-alpha-asc": {
    "value": "fas fa-sort-alpha-down",
    "library": "fa-solid"
  },
  "fa fa-sort-alpha-desc": {
    "value": "fas fa-sort-alpha-up",
    "library": "fa-solid"
  },
  "fa fa-sort-amount-asc": {
    "value": "fas fa-sort-amount-down",
    "library": "fa-solid"
  },
  "fa fa-sort-amount-desc": {
    "value": "fas fa-sort-amount-up",
    "library": "fa-solid"
  },
  "fa fa-sort-asc": {
    "value": "fas fa-sort-up",
    "library": "fa-solid"
  },
  "fa fa-sort-desc": {
    "value": "fas fa-sort-down",
    "library": "fa-solid"
  },
  "fa fa-sort-numeric-asc": {
    "value": "fas fa-sort-numeric-down",
    "library": "fa-solid"
  },
  "fa fa-sort-numeric-desc": {
    "value": "fas fa-sort-numeric-up",
    "library": "fa-solid"
  },
  "fa fa-soundcloud": {
    "value": "fab fa-soundcloud",
    "library": "fa-brands"
  },
  "fa fa-spoon": {
    "value": "fas fa-utensil-spoon",
    "library": "fa-solid"
  },
  "fa fa-spotify": {
    "value": "fab fa-spotify",
    "library": "fa-brands"
  },
  "fa fa-square-o": {
    "value": "far fa-square",
    "library": "fa-regular"
  },
  "fa fa-stack-exchange": {
    "value": "fab fa-stack-exchange",
    "library": "fa-brands"
  },
  "fa fa-stack-overflow": {
    "value": "fab fa-stack-overflow",
    "library": "fa-brands"
  },
  "fa fa-star-half-empty": {
    "value": "far fa-star-half",
    "library": "fa-regular"
  },
  "fa fa-star-half-full": {
    "value": "far fa-star-half",
    "library": "fa-regular"
  },
  "fa fa-star-half-o": {
    "value": "far fa-star-half",
    "library": "fa-regular"
  },
  "fa fa-star-o": {
    "value": "far fa-star",
    "library": "fa-regular"
  },
  "fa fa-steam": {
    "value": "fab fa-steam",
    "library": "fa-brands"
  },
  "fa fa-steam-square": {
    "value": "fab fa-steam-square",
    "library": "fa-brands"
  },
  "fa fa-sticky-note-o": {
    "value": "far fa-sticky-note",
    "library": "fa-regular"
  },
  "fa fa-stop-circle-o": {
    "value": "far fa-stop-circle",
    "library": "fa-regular"
  },
  "fa fa-stumbleupon": {
    "value": "fab fa-stumbleupon",
    "library": "fa-brands"
  },
  "fa fa-stumbleupon-circle": {
    "value": "fab fa-stumbleupon-circle",
    "library": "fa-brands"
  },
  "fa fa-sun-o": {
    "value": "far fa-sun",
    "library": "fa-regular"
  },
  "fa fa-superpowers": {
    "value": "fab fa-superpowers",
    "library": "fa-brands"
  },
  "fa fa-support": {
    "value": "far fa-life-ring",
    "library": "fa-regular"
  },
  "fa fa-tablet": {
    "value": "fas fa-tablet-alt",
    "library": "fa-solid"
  },
  "fa fa-tachometer": {
    "value": "fas fa-tachometer-alt",
    "library": "fa-solid"
  },
  "fa fa-telegram": {
    "value": "fab fa-telegram",
    "library": "fa-brands"
  },
  "fa fa-television": {
    "value": "fas fa-tv",
    "library": "fa-solid"
  },
  "fa fa-tencent-weibo": {
    "value": "fab fa-tencent-weibo",
    "library": "fa-brands"
  },
  "fa fa-themeisle": {
    "value": "fab fa-themeisle",
    "library": "fa-brands"
  },
  "fa fa-thermometer": {
    "value": "fas fa-thermometer-full",
    "library": "fa-solid"
  },
  "fa fa-thermometer-0": {
    "value": "fas fa-thermometer-empty",
    "library": "fa-solid"
  },
  "fa fa-thermometer-1": {
    "value": "fas fa-thermometer-quarter",
    "library": "fa-solid"
  },
  "fa fa-thermometer-2": {
    "value": "fas fa-thermometer-half",
    "library": "fa-solid"
  },
  "fa fa-thermometer-3": {
    "value": "fas fa-thermometer-three-quarters",
    "library": "fa-solid"
  },
  "fa fa-thermometer-4": {
    "value": "fas fa-thermometer-full",
    "library": "fa-solid"
  },
  "fa fa-thumb-tack": {
    "value": "fas fa-thumbtack",
    "library": "fa-solid"
  },
  "fa fa-thumbs-o-down": {
    "value": "far fa-thumbs-down",
    "library": "fa-regular"
  },
  "fa fa-thumbs-o-up": {
    "value": "far fa-thumbs-up",
    "library": "fa-regular"
  },
  "fa fa-ticket": {
    "value": "fas fa-ticket-alt",
    "library": "fa-solid"
  },
  "fa fa-times-circle-o": {
    "value": "far fa-times-circle",
    "library": "fa-regular"
  },
  "fa fa-times-rectangle": {
    "value": "fas fa-window-close",
    "library": "fa-solid"
  },
  "fa fa-times-rectangle-o": {
    "value": "far fa-window-close",
    "library": "fa-regular"
  },
  "fa fa-toggle-down": {
    "value": "far fa-caret-square-down",
    "library": "fa-regular"
  },
  "fa fa-toggle-left": {
    "value": "far fa-caret-square-left",
    "library": "fa-regular"
  },
  "fa fa-toggle-right": {
    "value": "far fa-caret-square-right",
    "library": "fa-regular"
  },
  "fa fa-toggle-up": {
    "value": "far fa-caret-square-up",
    "library": "fa-regular"
  },
  "fa fa-trash": {
    "value": "fas fa-trash-alt",
    "library": "fa-solid"
  },
  "fa fa-trash-o": {
    "value": "far fa-trash-alt",
    "library": "fa-regular"
  },
  "fa fa-trello": {
    "value": "fab fa-trello",
    "library": "fa-brands"
  },
  "fa fa-tripadvisor": {
    "value": "fab fa-tripadvisor",
    "library": "fa-brands"
  },
  "fa fa-try": {
    "value": "fas fa-lira-sign",
    "library": "fa-solid"
  },
  "fa fa-tumblr": {
    "value": "fab fa-tumblr",
    "library": "fa-brands"
  },
  "fa fa-tumblr-square": {
    "value": "fab fa-tumblr-square",
    "library": "fa-brands"
  },
  "fa fa-turkish-lira": {
    "value": "fas fa-lira-sign",
    "library": "fa-solid"
  },
  "fa fa-twitch": {
    "value": "fab fa-twitch",
    "library": "fa-brands"
  },
  "fa fa-twitter": {
    "value": "fab fa-twitter",
    "library": "fa-brands"
  },
  "fa fa-twitter-square": {
    "value": "fab fa-twitter-square",
    "library": "fa-brands"
  },
  "fa fa-unsorted": {
    "value": "fas fa-sort",
    "library": "fa-solid"
  },
  "fa fa-usb": {
    "value": "fab fa-usb",
    "library": "fa-brands"
  },
  "fa fa-usd": {
    "value": "fas fa-dollar-sign",
    "library": "fa-solid"
  },
  "fa fa-user-circle-o": {
    "value": "far fa-user-circle",
    "library": "fa-regular"
  },
  "fa fa-user-o": {
    "value": "far fa-user",
    "library": "fa-regular"
  },
  "fa fa-vcard": {
    "value": "fas fa-address-card",
    "library": "fa-solid"
  },
  "fa fa-vcard-o": {
    "value": "far fa-address-card",
    "library": "fa-regular"
  },
  "fa fa-viacoin": {
    "value": "fab fa-viacoin",
    "library": "fa-brands"
  },
  "fa fa-viadeo": {
    "value": "fab fa-viadeo",
    "library": "fa-brands"
  },
  "fa fa-viadeo-square": {
    "value": "fab fa-viadeo-square",
    "library": "fa-brands"
  },
  "fa fa-video-camera": {
    "value": "fas fa-video",
    "library": "fa-solid"
  },
  "fa fa-vimeo": {
    "value": "fab fa-vimeo-v",
    "library": "fa-brands"
  },
  "fa fa-vimeo-square": {
    "value": "fab fa-vimeo-square",
    "library": "fa-brands"
  },
  "fa fa-vine": {
    "value": "fab fa-vine",
    "library": "fa-brands"
  },
  "fa fa-vk": {
    "value": "fab fa-vk",
    "library": "fa-brands"
  },
  "fa fa-volume-control-phone": {
    "value": "fas fa-phone-volume",
    "library": "fa-solid"
  },
  "fa fa-warning": {
    "value": "fas fa-exclamation-triangle",
    "library": "fa-solid"
  },
  "fa fa-wechat": {
    "value": "fab fa-weixin",
    "library": "fa-brands"
  },
  "fa fa-weibo": {
    "value": "fab fa-weibo",
    "library": "fa-brands"
  },
  "fa fa-weixin": {
    "value": "fab fa-weixin",
    "library": "fa-brands"
  },
  "fa fa-whatsapp": {
    "value": "fab fa-whatsapp",
    "library": "fa-brands"
  },
  "fa fa-wheelchair-alt": {
    "value": "fab fa-accessible-icon",
    "library": "fa-brands"
  },
  "fa fa-wikipedia-w": {
    "value": "fab fa-wikipedia-w",
    "library": "fa-brands"
  },
  "fa fa-window-close-o": {
    "value": "far fa-window-close",
    "library": "fa-regular"
  },
  "fa fa-window-maximize": {
    "value": "far fa-window-maximize",
    "library": "fa-regular"
  },
  "fa fa-window-restore": {
    "value": "far fa-window-restore",
    "library": "fa-regular"
  },
  "fa fa-windows": {
    "value": "fab fa-windows",
    "library": "fa-brands"
  },
  "fa fa-won": {
    "value": "fas fa-won-sign",
    "library": "fa-solid"
  },
  "fa fa-wordpress": {
    "value": "fab fa-wordpress",
    "library": "fa-brands"
  },
  "fa fa-wpbeginner": {
    "value": "fab fa-wpbeginner",
    "library": "fa-brands"
  },
  "fa fa-wpexplorer": {
    "value": "fab fa-wpexplorer",
    "library": "fa-brands"
  },
  "fa fa-wpforms": {
    "value": "fab fa-wpforms",
    "library": "fa-brands"
  },
  "fa fa-xing": {
    "value": "fab fa-xing",
    "library": "fa-brands"
  },
  "fa fa-xing-square": {
    "value": "fab fa-xing-square",
    "library": "fa-brands"
  },
  "fa fa-y-combinator": {
    "value": "fab fa-y-combinator",
    "library": "fa-brands"
  },
  "fa fa-y-combinator-square": {
    "value": "fab fa-hacker-news",
    "library": "fa-brands"
  },
  "fa fa-yahoo": {
    "value": "fab fa-yahoo",
    "library": "fa-brands"
  },
  "fa fa-yc": {
    "value": "fab fa-y-combinator",
    "library": "fa-brands"
  },
  "fa fa-yc-square": {
    "value": "fab fa-hacker-news",
    "library": "fa-brands"
  },
  "fa fa-yelp": {
    "value": "fab fa-yelp",
    "library": "fa-brands"
  },
  "fa fa-yen": {
    "value": "fas fa-yen-sign",
    "library": "fa-solid"
  },
  "fa fa-yoast": {
    "value": "fab fa-yoast",
    "library": "fa-brands"
  },
  "fa fa-youtube": {
    "value": "fab fa-youtube",
    "library": "fa-brands"
  },
  "fa fa-youtube-play": {
    "value": "fab fa-youtube",
    "library": "fa-brands"
  },
  "fa fa-youtube-square": {
    "value": "fab fa-youtube-square",
    "library": "fa-brands"
  }
}assets/lib/font-awesome/fonts/fontawesome-webfont.ttf000064400000503254151327220410017067 0ustar00
�PFFTMk�G���GDEF��p OS/2�2z@X`cmap
�:��gasp���hglyf���M�L�head��-�6hhea
�$hmtxEy��
�loca��\�maxp,8 name㗋�gh�post����k�uː�xY_<��3�2�3�2���	�	����	��'@i��3��3s�pyrs@ �� �pU�]�����y�n�����2��@������
��������z���Z@�5�5
���z���ZZ����@���������,_���@������s���@	��@��(������@�����@��@-
�M�M�-�
�M�M�����@�����@@�
�-����`��b����
���$����6�4�8�"�"""""���@�D@���,,@� ���������	m��)@�@	 	' D9>dY*	'						�	��	��T										�@	f�	%RE	 		$!k(D�'	��	�%��	�%	��	��0%�/�&��p@0 �����!"""`���>�N�^�n�~��������������.�>�N�^�n�~��������������>�N�^�n�~������������ �����!"""`���!�@�P�`�p�������������� �0�@�P�`�p��������������!�@�P�`�p�������������\�X�S�B�1����ݬ

	����������������������������������
�
	,,,,,,,,,,,,,��t�L�T$�l	x	�
T(��
d����l,����4d�pH�$d,t( � �!�"0# $,$�&D'�(�)T**�,,�-�.@.�/`/�00�1�2�3d444�5 5�5�6 6\6�7H7�88`8�9L9�:h:�;�<p=p><>�?h?�@H@�A0A�BXB�CdC�DLD�E�F�G0G�H�I�J8K�L�MdN,N�N�O�P`P�Q4Q�RRlS,S�T`U0W�X�Z[@[�\<\�]�^(^�_�`pb,b�dd�ePe�f�g`g�iLi�jDkk�l�m@n,oLp�q�r�sxtt�uD{`||�}}�~��������H��������l�@����������l�H� ���T��H�������`����@�����$�\�X��D�������T�X�����D�P�,���8���d�\����������������H���x��� �t���X���p��d��������x�t�������������@������Œ�\� ļ�ŸƔ�0���d��ʨˀ����͔�x��ϰЌ�,ш�҈�ӌ���8�,՜�`���l�Hش�`���Tڸ�۔�@���l��ބ�߬��l�p� ������������������������������4�����X���$�l���(����`����������	d

��
,�,��8��(�X���x|T�@��| �!�"x##l$$�'h(�*L,T.L1t1�2�303�4�5t6T7$89H::�;�<�<�?X@A�B�C�D�EHFHGpHHIxJ J�K�L�MN@P@Q�R�SDT ULV`V�WXX4X�ZZ�[d[�\|]�^�`�aHa�b�cXd�etfhg�h�i\jxn�p@s�vw�x�y�z�{h|�}}�\���l�t���4���������t���8�8���L���T�������������|�������|�������4�x�����L����������X�(� ������� ������@�����l���t����$����x�L�L��� �H������Ġ�T�(����ʈˠ��ϔ�l�d���P�Մ�x�p���ڬ�T�T���ވ�L�����<�H��$���l������4����������� �P�l����,���x���p�,�x�t��d����4���4,h�P	4
��
�4�<,,408$�8�T� |!h"�$L%0&H'�(�)�*0*�+�,�.$.�0�1�2@2�3�4t5$6�9 :�:�;;�<(<�=4?�@�A�C�D�F�H`H�I�L�L�L�L�L�L�L�L�L�L�L�L�L�L�L�L�p7!!!���@p�p �p�]���!2#!"&463!&54>3!2�+��@&&��&&@��+$(�($F#+���&4&&4&x+#��+".4>32".4>32467632DhgZghDDhg-iW�DhgZghDDhg-iW&@(8 ��2N++NdN+'�;2N++NdN+'�3
8���!  #"'#"$&6$ �������rL46$���܏���oo��o|W%r��������4L&V|o��oo����ܳ��%��=M%+".'&%&'3!26<.#!";2>767>7#!"&5463!2� %��3@m00m@3���% 
�
�@
���:"7..7":�6]�^B�@B^^B�B^ $΄+0110+��$�
(	

�t��1%%1��+�`��B^^B@B^^���"'.54632>32�4��
#L</��>�oP$$Po�>���Z$_d�C�+I@$$@I+��������"#"'%#"&547&547%62���V�?�?V��8��<��8y���
���b%	I�))�9I	����	+	%%#"'%#"&547&547%62q2�Z���Z2Izy���V)�?�?V��8��<��8)>~��>��[��
���
2���b%	I�))�9I	���%#!"&54>3 72 &6 }X��X}.GuL�l�LuG.�����>�m��mU��mE��Em�������>����/?O_o���54&+";2654&+";2654&+";264&#!"3!2654&+";2654&+";264&#!"3!2654&+";2654&+";2654&+";267#!"&5463!2�&�&&�&&�&&�&&�&&�&&�&&&�&�&&�&�&�&&�&��&�&&&�&�&&�&&�&&�&&�&&�&�^B��B^^B@B^@�&&�&&��&&�&&��&&�&&�&&�&&��&&�&&���&&�&&&&�&&���&&�&&��&&�&&��&&�&&���B^^B@B^^��/?#!"&5463!2#!"&5463!2#!"&5463!2#!"&5463!2L4�4LL44LL4�4LL44L�L4�4LL44LL4�4LL44L��4LL4�4LL��4LL4�4LL���4LL4�4LL��4LL4�4LL	�/?O_o�#!"&=463!2#!"&=463!2#!"&=463!2#!"&=463!2#!"&=463!2#!"&=463!2#!"&=463!2#!"&=463!2#!"&=463!28(��(88(@(88(��(88(@(8�8(��(88(@(8��8(��(88(@(8�8(��(88(@(8�8(��(88(@(8��8(��(88(@(8�8(��(88(@(88(��(88(@(8 �(88(�(88�(88(�(88��(88(�(88�(88(�(88��(88(�(88��(88(�(88�(88(�(88��(88(�(88�(88(�(88�/?O_#!"&=463!2#!"&=463!2#!"&=463!2#!"&=463!2#!"&=463!2#!"&=463!28(��(88(@(88(��(88(@(88(�@(88(�(8�8(��(88(@(88(�@(88(�(88(�@(88(�(8 �(88(�(88�(88(�(88��(88(�(88�(88(�(88��(88(�(88�(88(�(88y��"/&4?62	62��,�P����P&�P��P�,��jP�����n���#$"'	"/&47	&4?62	62	�P���P�&���P&&P���&�P�&���P&&P���&�P������#+D++"&=#"&=46;546;232  #"'#"$&6$ 
�
@
�

�
@
�
�������rK56$���܏���oo��o|W�@
�

�
@
�

��r��������jK&V|o��oo����ܳ�����0#!"&=463!2  #"'#"$&6$ 
��

@
�������rK56$���܏���oo��o|W�@

@
�r��������jK&V|o��oo����ܳ����)5 $&54762>54&'.7>"&5462z�����z��+i *bkQ��н�Qkb* j*����LhLLhL�����zz���Bm +*i J�yh��QQ��hy�J i*+ m��J��4LL4�4LL���/?O%+"&=46;2%+"&546;2%+"&546;2+"&546;2+"&546;2��������������`��r��@�@r�@��@����n4&"2#"/+"&/&'#"'&'&547>7&/.=46?67&'&547>3267676;27632�Ԗ����#H
	��,/
�1)�
~'H�
�(C
	�

�,/
�1)�	
�$H�
Ԗ�Ԗm�6%2X
%�	l�2
�k	r6

[21
�..9Q

$�
k�2
�k	
w3[20����/;Cg+"&546;2+"&546;2+"&546;2!3!2>!'&'!+#!"&5#"&=463!7>3!2!2@@@@@@���@�`�0
��
o`^B��B^`5FN(@(NF5 ��@��@��@���L%%Ju		�@�LSyuS�@�%44%�f5#!!!"&5465	7#"'	'&/&6762546;2�&�����&??�>

�L�L
>
� X ���
 � &���&��&AJ	A��	J
W���h��##!"&5463!2!&'&!"&5!�(8(��(88(�(`�x
��c�`(8��`(��(88(@(8(D��9�8(����� ,#!"&=46;46;2.  6 $$ ����@��������(�r���^����a�a�@@`��(��������_�^����a�a��2NC5.+";26#!26'.#!"3!"547>3!";26/.#!2W
�
��.�@

��

�@.�$S

�

S$�@

���9I


�
I6>
��
��>�%=$4&"2$4&"2#!"&5463!2?!2"'&763!463!2!2&4&&4&&4&&4�8(�@(88(ч:�:��(8���@6�@*&&*�4&&4&&4&&4& ��(88(@(8�88�8)�@�)'�&&�@���$0"'&76;46;232  >& $$ `
������������(���r���^����a�a`��		@`��2�������(���^����a�a�����$0++"&5#"&54762  >& $$ ^���
?@�����(���r���^����a�a���`?		����������(���^����a�a��
#!.'!!!%#!"&547>3!2�<�<�<_@`&��&�
5@5
�@����&&�>=(""��=���'#"'&5476.  6 $$ � ��  ! ��������(�r���^����a�a�J��	%�%���(��������_�^����a�a�����3#!"'&?&#"3267672#"$&6$3276&�@*���h��QQ��hw�I
�	m�ʬ����zz���k�)'�@&('��Q��н�Qh_
	�
��z�8�zoe����$G!"$'"&5463!23267676;2#!"&4?&#"+"&=!2762�@�h���k�4&&�&�G�a��F*�
&�@&��Ɇ�F*�
A��k�4&���nf�&�&&4�BH�rd�@&&4���rd
Moe�&�/?O_o+"&=46;25+"&=46;25+"&=46;2#!"&=463!25#!"&=463!25#!"&=463!24&#!"3!26#!"&5463!2�
@

@

@

@

@

@
�
�@

�

�@

�

�@

�
�
�@

�
�^B�@B^^B�B^`@

@
�@

@
�@

@
��@

@
�@

@
�@

@
�3@

��
M��B^^B@B^^��!54&"#!"&546;54 32@�Ԗ@8(�@(88( p (8�j��j��(88(@(8������8@���7+"&5&5462#".#"#"&5476763232>32@@
@
@KjK�ך=}\�I���&:�k�~&26]S
&H&�

�&H5KKu�t,4,�	&� x:;*4*&��K#+"&546;227654$ >3546;2+"&="&/&546$ �<��X@@Gv"D�����װD"vG@@X��<��4L4����1!Sk @ G<_b������b_<G �� kS!1����zz�� �"'!"&5463!62&4����&&M4&���&M&�&M& ��-"'!"&5463!62#"&54>4.54632&4����&&M4&�UF
&""""&
F���&M&�&M&���%/B/%���G-Ik"'!"&5463!62#"&54>4.54632#"&54767>4&'&'&54632#"&547>7676'&'.'&54632&4����&&M4&�UF
&""""&
FU��
&'8JSSJ8'&

����

&'.${��{$.'&

����&M&�&M&���%/B/%7���;&'6���6'&;��4�[&$
[2[
$&[��#/37#5#5!#5!!!!!!!#5!#5!5##!35!!!����������������������������������������������������������������������������#'+/37;?3#3#3#3#3#3#3#3#3#3#3#3#3#3#3#3#3????  ^��>>~??�??�??~??~??^??�^^?  ^??������������������������������������4&"2#"'.5463!2�KjKKjv%�'45%�5&5L4�5�&�%jKKjK�@5%�%%�%�5�4L5&�6'��k�54&"2#"'.5463!2#"&'654'.#32�KjKKjv%�'45%�5&5L4�5�&�%�%�'4$.�%%�5&�5�5�&�%jKKjK�@5%�%%�%�5�4L5&�6'45%�%�%54'�&55&�6'
��y�Tdt#!"&'&74676&7>7>76&7>7>76&7>7>76&7>7>63!2#!"3!2676'3!26?6&#!"3!26?6&#!"g(��sA�eM�,*$/
!'&
�JP��$G]��
x�6,&��`
��
h`
��
"9H�v@WkNC<.
&k&
("$p"	.
#u&#	%!'	pJ�vwEF�#

@

��

@

���2#"'	#"'.546763�!''!0#�G�G$/!''!�	
8"��"8
 ��X!	
8"	"8
	����<)!!#"&=!4&"27+#!"&=#"&546;463!232������(8���&4&&4�
�8(�@(8�
qO@8(�(`�(@Oq��8(��&4&&4&@�`
�(88(�
�Oq (8(�`(�q���!)2"&42#!"&546;7>3!2  I��j��j��j��j�3e55e3�gr������`��I�j��j��j�j��1GG1���r��������P2327&7>7;"&#"4?2>54.'%3"&#"#ժ!�9&W��B03&�K5�!�)V�?�@L��'�	
>R�>e;&L:�:%P�>��vO
'h�� N��_"�:-&+#
��:��	'	����+a%3 4'.#"32>54.#"7>7><5'./6$3232#"&#"+JBx)EB_I:I*CRzb3:dtB2P���$$5.3b�ZF�|\8!-T>5��Fu��\,�,j�n OrB,<!
5�4wJ]�?tTFi;
2�3j.�p^%/2�+
	S:T}K4W9: #ƕd�fE���:7>7676'5.'732>7"#"&#&#"OA
zj=N!�}:0e��%	y�
+t�D3�~U#B4#
g		'2
%/!:
���T	bRU,7����}%2"/&6;#"&?62+326323!2>?23&'.'.#"&"$#"#&=>764=464.'&#"&'�!~:~!PP!~:~!P��6�,�,$�$%*'
c2N 	
(�$"L��A2�3Yl�!x!*�%��%%��%��
p�P,T	NE	Q7^���oH!+(
3	 *Ue�eu
wg��a�32632$?23&'.5&'&#"&"5$#"#&=>7>4&54&54>.'&#"&'2#".465!#".'&47>32!4&4>Q6�,�,Faw!*'
=~Pl*	
(�$"L��A2�3Yl	�)�!*<7@@7<
�
<7@@7<
 p�P,T	MF
Q7�47ƢHoH!+(
3	 t���JHQ6wh��',686,'$##$',686,'$##$�/?%#!"&=463!2#!"&=463!2#!"&=463!2#!"&=463!2&��&&�&��&�&&&&�&&&��&��&&�&��&&�&&f�&&�&&f�&&�&&f�&&�&&�/?%#!"&=463!2#!"&=463!2#!"&=463!2#!"&=463!2&��&&�&��&��&&�&&��&&�&��&��&&�&��&&�&&f�&&�&&f�&&�&&f�&&�&&�/?%#!"&=463!2#!"&=463!2#!"&=463!2#!"&=463!2&��&&�&&�&&&&�&&&&��&&�&��&&�&&f�&&�&&f�&&�&&f�&&�&&�/?%#!"&=463!2#!"&=463!2#!"&=463!2#!"&=463!2&��&&�&&��&&�&&��&&�&&��&&�&��&&�&&f�&&�&&f�&&�&&f�&&�&&�/?O_o%+"&=46;2+"&=46;2+"&=46;2#!"&=463!2+"&=46;2#!"&=463!2#!"&=463!2#!"&=463!2
�

�

�

�

�

�

��

@
�
�

�

��

@

��

@

��

@
�

�
s�

�
s�

�
��

�
s�

�
��

�
s�

�
s�

�
�/?O#"'&47632#!"&=463!2#!"&=463!2#!"&=463!2#!"&=463!2�
	��		 	
�
�@

�

��

@

��

@

�@

�
�
	 		 	��

�
s�

�
s�

�
s�

�
�/?O#"&54632	#!"&=463!2#!"&=463!2#!"&=463!2#!"&=463!2`	��	

	 �
�@

�

��

@

��

@

�@

�
�	��	
@
	��	�

�
s�

�
s�

�
s�

�
#"'#!"&5463!2632'
�m�w�@w��w�w��
'���*��w��w�w��w������."&462!5	!"3!2654&#!"&5463!2�p�pp�p��@���

@
�^B��B^^B@B^�pp�p���@�@� 
�@

�
 �@B^^B�B^^���k%!7'34#"3276'	!7632k[�[�v
��
6����`�%��`�$65&�%[�[k����
�`����5%���&&�'���4&"2"&'&54 �Ԗ���!��?H?��!,�,Ԗ�ԖmF��!&&!Fm�,�����%" $$ ���������^����a�a`@������^����a�a���-4'.'&"26% 547>7>2"KjK��X��QqYn	243nYqQ�$!+!77!+!$5KK���,ԑ�	���]""]ً�	��9>H7'3&7#!"&5463!2'&#!"3!26=4?6	!762xt�t` �� ^Q�w��w��w@?61��B^^B@B^	@(` �`��\\��\P�`t�t8`� �� ^�Ͼw��w@w�1^B��B^^B~
	@��` \ \�P�+Z#!"&5463!12+"3!26=47676#"'&=# #"'.54>;547632��w��w��w�
M8
pB^^B@B^�
'���sw-

9*##;No��j�'
�#��w��w@w�
"^B��B^^B�

	��*�����
"g`�81T`PSA:'�*��4�/D#!"&5463!2#"'&#!"3!26=4?632"'&4?62	62��w��w��w@?61

��B^^B@B^	@

��B�RnB�Bn^��w��w@w�1
^B��B^^B�
	@
���Bn���nB�C"&=!32"'&46;!"'&4762!#"&4762+!5462�4&���&�4�&���&4�4&��&4&��&4�4�&���&4�4&��&4&��&4�4&���&����6'&'+"&546;267��:	&�&&�&	s�@�	
�Z&&�&&�Z
	���+6'&''&'+"&546;267667��:	�:	&�&&�&	�	s�@�	
�:�	
�Z&&�&&�Z
	��:
	z����6'&''&47667S�:	�:�	s�@�	
�:�4��:
	�|�	&546h��!!0a�
�
�
$���#!"&5463!2#!"&5463!2&�&&&��&�&&&@��&&�&&��&&�&&���#!"&5463!2&��&&�&@��&&�&&���&54646&5-�	��:	s��:	
��:4�:�
	���+&5464646;2+"&5&5-�	�	&�&&�&	�:	s��:	
��:	
�&&��&&�
	�:�
	���&54646;2+"&5-�	&�&&�&	s��:	
�&&��&&�
	62#!"&!"&5463!2�4��@��&&�&&-��:��&&&�&�����	"'&4762����4��4����4��4��4Z��f�	"/&47	&4?62S�4����4����44��4���#/54&#!4&+"!"3!;265!26 $$ �&�&�&�&&&�&&@���^����a�a@�&&&�&�&�&&&+�^����a�a�����54&#!"3!26 $$ �&�&&&@���^����a�a@�&&�&&+�^����a�a�����+74/7654/&#"'&#"32?32?6 $$ }��Z��Z��Z��Z����^����a�a���Z��Z��Z��Z�^����a�a�����#4/&"'&"327> $$ [4�h�4[j����^����a�a"Z�i�Z��J�^����a�a�����:F%54&+";264.#"32767632;265467>$ $$ ���o�W��	5!"40K(0?i�+! ":����^����a�a����X�R�dD4!&.uC$=1/J=�^����a�a�����.:%54&+4&#!";#"3!2654&+";26 $$ `��``��������^����a�a�����������^����a�a�����/_#"&=46;.'+"&=32+546;2>++"&=.'#"&=46;>7546;232�m&&m �l&�&l� m&&m �l&�&l�s&�%�&�&��%�&&�%�&�&��%�&&�&l� m&&m �l&�&l� m&&m �,�&��%�&&�%�&�&��%�&&�%�&���#/;"/"/&4?'&4?627626.  6 $$ I�

��

�

��

�

��

�

��
͒������(�r���^����a�aɒ

��

�

��

�

��

�

��
(��������_�^����a�a����� ,	"'&4?6262.  6 $$ ��Z4��f4�4fz�������(�r���^����a�a�Z&4f�f4�(��������_�^����a�a�����	"4'32>&#" $&6$  W���oɒV�󇥔�� z�����zz�8�����YW�˼�[����?����zz�:�zz�@�5K #!#"'&547632!2A4�@%&&K%54'�u%%�&54&K&&���4A��5K��$l$L%%�%54'�&&J&j&��K�5�K #"/&47!"&=463!&4?632�%�u'43'K&&%�@4AA4���&&K&45&�%@6%�u%%K&j&%K5�5K&$l$K&&�u#5��K@!#"'+"&5"/&547632K%K&56$��K5�5K��$l$K&&�#76%�%53'K&&%�@4AA4���&&K&45&�%%�u'5��K�"#"'&54?63246;2632K%�u'45%�u&&J'45%&L4�4L&%54'K%�5%�t%%�$65&K%%���4LL4�@&%%K'���,"&5#"#"'.'547!3462�4&�b��qb>#5���&4�4�&6Uu�e7D#		"�dž�&����/#!"&546262"/"/&47'&463!2�
���&�@&&4�L

r&4���

r

L�&�&�
���4&&�&�L

rI�@&���

r

L�4&&
���s/"/"/&47'&463!2#!"&546262&4���

r

L�&�&�
���&�@&&4�L

r@�@&���

r

L�4&&�
���4&&�&�L

r��##!+"&5!"&=463!46;2!2�8(�`8(�(8�`(88(�8(�(8�(8 �(8�`(88(�8(�(8�(88(�`8��#!"&=463!2�8(�@(88(�(8 �(88(�(88z���5'%+"&5&/&67-.?>46;2%6�.@g.��L4�4L��.g@.
��.@g.
L4�4L
.g@.���g.n.���4LL43�.n.g��g.n.�34LL4�͙.n.g����-  $54&+";264'&+";26/�a����^�����
�

�


�

�����^����a�a��
�
fm��
@
J%55!;263'&#"$4&#"32+#!"&5#"&5463!"&46327632#!2���$�$�8�~+(88�8(+}�(�`8(��(8`�]��]k=��=k]��]��8���,8e�8P88P8�����`(88(�@���M��M����N4&#"327>76$32#"'.#"#"&'.54>54&'&54>7>7>32&����z&^��&.������/+>+)>J>	W��m7����'
'"''? &4&c��&^|h_b��ml/J@L@#*
#M6:D
35sҟw$	'%
'	\�t��3#!"&=463!2'.54>54''�
��

@
�1O``O1CZ��Z71O``O1BZ��Z7�@

@
N�]SHH[3`�)Tt��bN�]SHH[3^�)Tt���!1&' 547 $4&#"2654632 '&476 ���=������=嘅�����}�(zVl��'��'���ٌ@�uhy����yhu����9(�}Vz��D#���#D#�������	=CU%7.5474&#"2654632%#"'&547.'&476!27632#76$7&'7+NWb=嘧�}�(zV�j�\i1
z,��X��
Y[6
$!%���'F��u�J�iys�?_�9ɍ?�kyhu�n(�}Vz����YF
KA؉L�a
�0��2�-�F"@Q���sp@�_���!3%54&+";264'&+";26#!"&'&7>2
�

�


�
�
#%;"�";%#<F<������7


���??""??�$$ll2#"'&'	+&/&'&?632	&'&?67>`,@L�����5
`		��
`	�����L�`4�L��H`
����`	��
a	5�
��L@��#37;?Os!!!!%!!!!%!!!!!!!!%!!4&+";26!!%!!!!74&+";26%#!"&546;546;2!546;232� ��`@���� ��`@���� ���@����@�� ��@����
@

@
� ��@��� �� 
@

@
�L4��4LL4�^B@B^�^B@B^�4L� �� @@��@@ � � � @@  

��
��@@ �� � 

��
M�4LL44L`B^^B``B^^B`L���7q.+"&=46;2#"&=".'673!54632#"&=!"+"&=46;2>767>3!54632�<M33K,��	��	
 j8Z4L2B4:;M33K,?		��	
�0N<* .)C=W]xD��0N<* .)C=W]xD?\�-7H)��	��	
�".=']�-7H)�
��w	��	
�<?.>mBZxPV3!�<?.>mBZxPV3!�
���&#"'&'5&6&>7>7&54>$32�d�FK��1A
0)����L���.���٫�C58.H(Y���e����#3C $=463!22>=463!2#!"&5463!2#!"&5463!2���H���&�&/<R.*.R</&�&�&��&&�&&��&&�&������Bɀ&&�4L&&L4�&&f��&&�&&��&&�&&Z� %"'	"/&4762��4���4��4�ͥ���5��5Z����	"'&4?62	62��4��44���5����5��%K%#!".<=#"&54762+!2"'&546;!"/&5463!232
�@�&@<@&�@	����:��&���	�
��& 

��&���&���
����&��	

��`&���:$"&462"&462!2#!"&54>7#"&463!2!2�LhLLh�LhLLh�!��
�&&�&��&&�&4hLLhLLhLLhL��%z<
0&4&&)17&4&
&&��#!"&5463!2!2��\�@\��\@\��\���@\��\�\��\ �W�*#!"&547>3!2!"4&5463!2!2W��+�B��"5P+�B@"5����^�=���\@\� \�H#�t3G#�3G:�_H�t�\��\ �@��+32"'&46;#"&4762�&��&�4�&��&4�4&�&4�4&&4�@�"&=!"'&4762!5462�4&�&4�4&&4�4�&��&4&��&����
!!!3!!��������������������������0@67&#".'&'#"'#"'32>54'6#!"&5463!28ADAE=\W{��O[/5dI
kDt���pČe1?*�w�@w��w�w��	(M&
B{Wta28r=Ku?RZ^Gw��T	-�@w��w�w�����$2+37#546375&#"#3!"&5463�w��w���/Dz?s�����w��w��w�@w�S�88�	�����w�w����#'.>4&#"26546326"&462!5!&  !5!!=!!%#!"&5463!2�B^8(�Ԗ���������>��������@�|�K5�5KK55K�^B(8Ԗ�Ԗ�€>�������v����5KK55KK�H��G4&"&#"2654'32#".'#"'#"&54$327.54632@p�p)*Ppp�p)*P�b	'"+`�N*(�a���;2��̓c`." b
PTY9��ppP*)p�ppP*)�b ".`�(*N��ͣ�2�ͣ����`+"'	b
MRZB�����4&"24&"264&"26#"/+"&/&'#"'&547>7&/.=46?67&'&547>3267676;27632#"&'"'#"'&547&'&=4767&547>32626?2#"&'"'#"'&547&'&=4767&547>32626?2��Ԗ���LhLKjKLhLKjK��	�"8w
s%(�")v

�
>�
	�"8x
s"+�")v
�<�
��3zLLz3��
3>8L3)x3
��3zLLz3��
3>8L3)x3
�Ԗ�Ԗ�4LL45KK54LL45KK���
#)0C	wZl/
�
Y�	
N,&�
#)0C	vZl.
�
Y�L0"��qG^^Gq�q$ ]G)Fq�qG^^Gq�q$ ]G)Fq��%O#"'#"&'&4>7>7.546$ '&'&'# '32$7>54'�����VZ|�$2$
|��E~E<�|
$2$�|ZV���:�(t}�������X(	
&%(H�w�쉉��x�H(%&	(X�ZT\�MKG���<m$4&"24&#!4654&#+32;254'>4'654&'>7+"&'&#!"&5463!6767>763232&4&&4�N2��`@`%)7&,$)'  
%/0Ӄy�#5 +�1	&<��$]`�{t��5KK5$e:1&+'3T�F0�h��4&&4&�3M:�;b^v�+D2 5#$��I�IJ 2E=\$YJ!$MCeM��-+(K5�5K�K5y�*%A�u]c���>q4&"24&'>54'654&'654&+"+322654&5!267+#"'.'&'&'!"&5463!27>;2&4&&4�+ 5#bW���0/%
  ')$,&7)%`@``2N��h�0##�T3'"(0;e$��5KK5 t��ip��<&	1&4&&4&�#\=E2&%IURI��$#5 2D+�v^b;�:M2g�c]vDEA%!bSV2M�K5�5K(,,��MeCM$!I��@�#"&547&547%6@�?V��8������b%	I�)���94.""'."	67"'.54632>32�+C`\hxeH>Hexh\`C+�ED���4��
#L</��>�oP$$Po�>��Q|I.3MCCM3.I|Q����/����Z$_d�C�+I@$$@I+� (@%#!"&5463!2#!"3!:"&5!"&5463!462�
��w��w@

��B^^B 
���4&�@&&�&4 ` 
�w�w�
 
^B�@B^24��& &�& &�����%573#7.";2634&#"35#347>32#!"&5463!2���FtIG9;HI�x�I��<,tԩw�@w��w�w�z��4DD43EE�����ueB���&#1�s�@w��w�w�����.4&"26#!+"'!"&5463"&463!2#2��&�S3L�l&�c4LL4�4LL4c����@��&��&{�LhLLhL��'?#!"&5463!2#!"3!26546;2"/"/&47'&463!2��w��w��w��@B^^B@B^@�&4��t

r

��&&`��w��w@w�@^B��B^^B@R�&��t

r

��4&&@"&5!"&5463!462	#!"&54&>3!2654&#!*.54&>3!2���4&�@&&�&4 s�w��

@B^^B��

@w��4��& &�& &��3�@w�
 
^B�B^ 
�����
I&5!%5!>732#!"&=4632654&'&'.=463!5463!2!2�J���J���S��q*5&=CKu��uKC=&5*q͍S8( ^B@B^ (8���`N��`Ѣ�΀G�tO6)"M36J[E@@E[J63M")6Ot�G�(8`B^^B`8	���',2��6'&'&76'6'&6&'&6'&4#"7&64 654'.'&'.63226767.547&7662>76#!"&5463!2		/[		.
=���X��Ě4,+"*+, 1JH'5G:�:#L5+@=&#���w�@w��w�w�P.1GE�,��ԧ��44+	;/5cFO:>JJ>:O9W5$@(b4��@w��w�w������'?$4&"2$4&"2#!"&5463!3!267!2#!#!"&5!"'&762&4&&4&&4&&4�8(�@(88(�c==c�(8��*�&�&�*�6�&4&&4&&4&&4& ��(88(@(88HH88`(�@&&�('��@����1c4&'.54654'&#"#"&#"32632327>7#"&#"#"&54654&54>76763232632


	N<�;+gC8�A`1a9�9�g��w����|�9�8aIe$I�VN��z<�:LQJ
�,�-[%	061I��(�)W,$-������7,oIX(�)o�ζA;=N0
eTZ
	 (���O#".'&'&'&'.54767>3232>32�e^\4?P	bM��O0#382W#& 9C9
Lĉ"	82<*9FF(W283#0OMb	P?4\^eFF9*<28	"��L
9C9 &#��!"3!2654&#!"&5463!2`��B^^B@B^^ީw��w��w@w�^B��B^^B@B^���w��w@w�����#!72#"'	#"'.546763���YY�!''!0#�G�G$/!''!�&�UU�jZ	
8"��"8
 ��X!	
8"	"8
	���GW4.'.#"#".'.'.54>54.'.#"32676#!"&5463!2 1.-
+$)
c�8
)1)

05.D
<9�0)$9��w�@w��w�w�W

)1)
7�c
)$+
-.1 �9$)0���<
D.59�@w��w�w��,T1# '327.'327.=.547&54632676TC_L��Ҭ���#+�i�!+*p�DNBN,y[����`m`%i]hbE����m��}a�u&,�SXK��
&$��f9s?
_���#"!#!#!54632��V<%'����Э��HH���	�(ں����T\dksz�� &54654'>54'6'&&"."&'./"?'&546'&6'&6'&6'&6'&74"727&6/�a���49[aA)O%-j'&]�]5r-%O)@a[9'
0BA;+


>HC���U


	#	
	
$				2	
AC: �����oM�=a-6O�UwW[q	( -	q[WwU�P6$C

+) (	
8&/
&eM���a�	
&
$	

��%+"&54&"32#!"&5463!54 �&@&�Ԗ`(88(�@(88(�r��&&j��j�8(��(88(@(8��������#'+2#!"&5463"!54&#265!375!35!�B^^B��B^^B
�

��
`���^B�@B^^B�B^�
��
�
`��
�������!="&462+"&'&'.=476;+"&'&$'.=476;�p�pp�p�$���!�$qr�
�%���}�#ߺ���pp�p��!�E$�
�rq�ܢ#���
%�
ֻ��!)?"&462"&4624&#!"3!26!.#!"#!"&547>3!2/B//B//B//B�
�@

�
�2�����^B�@B^�\77\�aB//B//B//B/�@

��
��

�~��B^^B@2^5BB5��2���.42##%&'.67#"&=463! 2�5KK5L4�_�u:B&1/&��.-
zB^^B���4L��v��y�KjK��4L[!^k'!A3;):2*�<vTq6^B�B^�L4�$���)��*@��A4#"&54"3!4."#!"&5!"&5>547&5462�;U gI�v��0Z���Z0�L4�@�Ԗ�@4L2RX='�8P8��'=XR� U;Ig0,3lb??bl3���4Lj��jL4*\���(88(�����\���}I/#"/'&/'&?'&'&?'&76?'&7676767676`�
(�5)�0
)��*)
0�)5�(
��
(�5)�0
))��))
0�)5�(
��*)
0�)5�(��
)�5)�0
)*��*)
0�)5�)
��
)�5)�0
)*���5h$4&"24&#!4>54&#"+323254'>4'654&'!267+#"'&#!"&5463!2>767>32!2&4&&4�N2��$YGB
(HGEG  H��Q�#5K4L��i�!<�����;��5KK5 
A#
("/?&}�vh��4&&4&�3M95S+C=�,@QQ9��@@�IJ 2E=L5i�>9eM��E;K5�5K	J7R>@#�zD<����5=q%3#".'&'&'&'.#"!"3!32>$4&"2#!"#"&?&547&'#"&5463!&546323!2`  #A<(H(GY$��2NL4K5#aWTƾh&4&&4�K5��;����=!�i��hv�}&?/"(
#A
 5K��2*!	Q@.'!&=C+S59M34L=E2 JI UR@@&4&&4&���5K;E��Lf9>�ig�<Dz�#@>R7J	K�5h4&"24#"."&#"4&#"".#"!54>7#!"&54.'&'.5463246326326&4&&4��IJ 2E=L43M95S+C=�,@QQ9�@@�E;K5��5K	J7R>@#�zD<�gi�>9eM��Z4&&4&<�#5K4LN2��$YGB
(HGEG  H��V���;��5KK5 
A#
("/?&}�vh��i�!<��4<p4.=!32>332653272673264&"2/#"'#"&5#"&54>767>5463!2�@@��2*!	Q@.'!&=C+S59M34L.9E2 JI UR�&4&&4&��Lf6A�ig�6Jy�#@>R7J	K5�5K;E@TƾH  #A<(H(GY$��2NL4K#5#a=4&&4&�D��=�i��hv�}&?/"(
#A
 5KK5��;�����+54&#!764/&"2?64/!26 $$ &�
�[6��[[j6[��&���^����a�a@�&�4[��[6[��[6�&+�^����a�a�����+4/&"!"3!277$ $$ [��6[��
&&��[6j[
���^����a�ae6[j[6�&�&�4[j[��^����a�a�����+4''&"2?;2652?$ $$ ��[6[��[6�&�&�4[���^����a�af6j[[��6[��
&&��[��^����a�a�����+4/&"4&+"'&"2? $$ [6�&�&�4[j[6[j���^����a�ad6[��&&�
�[6��[[j��^����a�a������  $2>767676&67>?&'4&'.'.'."#&6'&6&'3.'.&'&'&&'&6'&>567>#7>7636''&'&&'.'"6&'6'..'/"&'&76.'7>767&.'"76.7"7"#76'&'.'2#22676767765'4.6326&'.'&'"'>7>&&'.54>'>7>67&'&#674&7767>&/45'.67>76'27".#6'>776'>7647>?6#76'6&'676'&67.'&'6.'.#&'.&6'&.5/�a����^����D&"	


	4
	$!	#
	
		
	



 
.0"�Y
	+


!	
	

$	
	"
+


		
	�Α	
		
����^����a�a��

	

			
	

	

		
	
		P� '-(	#	*	$

"
!				
*
!	

(				

	
��$�
		
2
�~�/$4&"2	#"/&547#"32>32�&4&&4��V%54'j&&�'��/덹���:,���{	&4&&4&�V%%l$65&�b��'C��r!"��k[G�+;%!5!!5!!5!#!"&5463!2#!"&5463!2#!"&5463!2����������&��&&�&&��&&�&&��&&�&�������@�&&&&�&&&&�&&&&��{#"'&5&763!2{�'
��**�)��*��)'/!5!#!"&5!3!26=#!5!463!5463!2!2���^B�@B^�&@&`��^B`8(@(8`B^��� B^^B�&&�����B^�(88(�^���G	76#!"'&?	#!"&5476	#"'&5463!2	'&763!2#"'��c�)'&�@*������*�@&('�c���(&�*�cc�*�&'
����*�@&('�c���'(&�*�cc�*�&('���c�'(&�@*��19AS[#"&532327#!"&54>322>32"&462 &6 +&'654'32>32"&462Q�g�Rp|Kx;CB��y��y� 6Fe=
BP���PB
=eF6 ��Ԗ��V����>!pR�g�QBC;xK|��Ԗ���{QNa*+%��x��x5eud_C(+5++5+(C_due2Ԗ�Ԗ�����>�NQ{u�%+*jԖ�Ԗ��p�!Ci4/&#"#".'32?64/&#"327.546326#"/&547'#"/&4?632632��(* 8(!�)(��A�('��)* 8(!U�SxyS�SXXVzxT�TU�SxyS�SXXVzxT�@(� (8 *(���(��'(�(8 ���S�SU�Sx{VXXT�T�S�SU�Sx{VXXT���#!"5467&5432632�������t,Ԟ;F`j�)��������6�,��>�jK?�s��
�!%#!"&7#"&463!2+!'5#�8Ej��jE8�@&&&&@������XYY�&4&&4&�qD�S�%��q%��N\jx��2"&4#"'#"'&7>76326?'&'#"'.'&676326326&'&#"32>'&#"3254?''7�4&&4&l��
�NnbS���VZbR��SD	
zz
	DS��Rb)+U���Sbn�
��\.2Q\dJ'.2Q\dJ.Q2.'Jd\Q2.'Jd`!O�`��	`�����&4&&4�r$#@�B10M�5TNT{L�5T
	II	
T5�L;l'OT4�M01B�@#$�*�3;$*�3;�;3�*$;3�*$�:$/� @@�Qq`��@���"%3<2#!"&5!"&5467>3!263!	!!#!!46!#!�(88(�@(8��(8(�`(�(8D<���+����+�<��8(�`(��8(�`�8(�@(88( 8(�(`�(8(��(������<��`(8��(`����`(8����||?%#"'&54632#"'&#"32654'&#"#"'&54632|�u�d��qܟ�s]
=
��Ofj�L?R@T?��"&�
>
�f?rRX=Ed�u�ds���q��
=
_M�jiL��?T@R?E& �f
>
�=XRr?��b���!1E)!34&'.##!"&5#3463!24&+";26#!"&5463!2����
��
08(��(8��8(@(8��
�

�
�8(��(88(�(`(����1

�`(88(���(88(@

��
�`(88(@(8(��`���#!"&5463!2�w�@w��w�w�`�@w��w�w��/%#!"&=463!2#!"&=463!2#!"&=463!2&��&&�&&��&&�&&��&&�&��&&�&&�&&�&&�&&�&&��@'7G$"&462"&462#!"&=463!2"&462#!"&=463!2#!"&=463!2�p�pp�pp�pp��
�@

�
��p�pp��
�@

�

�@

�
Рpp�p��pp�p���

�
�pp�p���

�
�

�
��<L\l|#"'732654'>75"##5!!&54>54&#"'>3235#!"&=463!2!5346=#'73#!"&=463!2#!"&=463!2}mQjB919+i1$AjM_3<��/BB/.#U_:IdDRE�
�@
�
����k*G�j�
�@
�

�@

�
TP\BX-@8
C)5�XsJ@�$3T4+,:;39SG2S.7<���

�vcc)�)%L�l�}�

��

�
���5e2#!"&=463%&'&5476!2/&'&#"!#"/&'&=4'&?5732767654'&��@�0��2uBo
T25XzrDCBB�Eh:%��)0%HPIP{rQ�9f#-+>;I@KM-/Q"�@@@#-bZ��$&P{<�8[;:XICC>.�'5oe80#.0(
l0&%,"J&9%$<=DTI���cs&/6323276727#"327676767654./&'&'737#"'&'&'&54'&54&#!"3!260%
<4�"VRt8<@<
-#=XYhW8+0$"+dT�Lx-'I&JKkm��uw<=V�@�!X@		v
'��|N;!/!$8:I�Ob�V;C#V

&
(���mL.A:9 !./KLwP�M�$��@@
��/?O_o��%54&#!"3!2654&#!"3!2654&#!"3!2654&#!"3!2654&#!"3!2654&#!"3!2654&#!"3!2654&#!"3!2654&#!"3!26#!"&5463!2��@��@��@���@��@��@���@��@��@�^B��B^^B@B^�����������������������������N��B^^B@B^^���#+3	'$"/&4762%/?/?/?/?�%k��*��6�6��bbbb|��<<��<�bbbb��bbbb�%k���6���6Ƒbbb��<<��<<�^bbbbbb@��M$4&"2!#"4&"2&#"&5!"&5#".54634&>?>;5463!2�LhLLh����
	�	LhLLhL!'�Ԗ���Ԗ@'!&	
�?�&&LhLLhL�	�	
��hLLhL��	j��jj��j	&@6/"
��&&���J#"'676732>54.#"7>76'&54632#"&7>54&#"&54$ ���ok;	-j=y�hw�i�[+PM3ѩ���k=J%62>Vc��a�aQ�^��� ]G"�'9��r�~:`}�Ch�  0=Z�٤���W=#uY2BrUI1�^Fk[|��a�����L2#!67673254.#"67676'&54632#"&7>54&#"#"&5463�w��w�+U	,i<��F{�jh�}Z+OM

2ϧ���j<J%51=Ub�w��w��w�@w�zX"�'8'�T�yI9`{�Bf� 
,>X�բ���W<"uW1AqSH1�bd��w�w����'74'!3#"&46327&#"326%35#5##33#!"&5463!2����0U6c��c\=hl���ࠥ�Ymmnnnn�w�@w��w�w�w&�46#�Ȏ;ed����wnnnnn��@w��w�w����	]#/#"$&6$3 &#"32>7!5!%##5#5353����Е���tt����u�{�zz�{S�ZC�`�c�����o���t�*�t��q|��|.EXN#�??�������,<!5##673#$".4>2"&5!#2!46#!"&5463!2��r�M*
�*M~�~M**M~�~M*j����jj����&�&&&�`��P%��挐|NN|���|NN|�*�jj���jj�@��&&�&&@�
"'&463!2�@4�@&�Z4�@�4&@
#!"&4762&��&�4�Z4&&4��@@���
"'&4762�&4�@�4&@��&�4�&�@�
"&5462@�@4&&4��4�@&�&�@����
3!!%!!26#!"&5463!2�`��m��`
�^B��B^^B@B^���
 `���@B^^B�B^^��@
"'&463!2#!"&4762�@4�@&�&&��&�4��4�@�4&Z4&&4��@��
"'&463!2�@4�@&��4�@�4&@
#!"&4762&��&�4�Z4&&4��@��:#!"&5;2>76%6+".'&$'.5463!2^B�@B^,9j�9Gv33vG9�H9+bI��\
A+=66=+A
[��">nSM�A_:��B^^B1&�c*/11/*{�'VO�3��@/$$/@�*�?Nh^��l+!+"&5462!4&#"!/!#>32]��_gTRdg�d���QV?U��I*Gg?����!�2IbbIJaa���iwE33����00� 08����4#"$'&6?6332>4.#"#!"&54766$32z�䜬��m�
I�wh��QQ��hb�F�*�@&('�k�������z��
�	
_hQ��н�QGB�'(&�*�eoz�(���q!#"'&547"'#"'&54>7632&4762.547>32#".'632�%k'45%��&+�~(
(�h		&

\(
(�		&

~+54'k%5%l%%l$65+~

&		�(
(\

&		�h(
(~�+%��'��!)19K4&"24&"26.676&$4&"24&"24&"2#!"'&46$ �KjKKjKjKKj�e2.e<^P��,bKjKKj��KjKKjKjKKj��#��#���LlL�KjKKjKjKKjK��~-��M<M�(PM<rjKKjK�jKKjKujKKjK�������L���< 6?32$6&#"'#"&'5&6&>7>7&54$ L�h��я�W.�{+9E=�c��Q�d�FK��1A
0)���������p�J2`[Q?l&������٫�C58.H(Y��'����:d 6?32$64&$ #"'#"&'&4>7>7.546'&'&'# '32$7>54'Y����j`a#",5NK�
����~E�����VZ|�$2$
|��:
$2$�|ZV���:�(t}�����h�fR�88T
h�̲����X(	
&%(H�w��(%&	(X�ZT\�MKG�{x��|�!#"'.7#"'&7>3!2%632u��

�j
�H����{(e9
�1b���U#!"&546;5!32#!"&546;5!32#!"&546;5463!5#"&5463!2+!2328(��(88(`�`(88(��(88(`�`(88(��(88(`L4`(88(@(88(`4L`(8 ��(88(@(8��8(��(88(@(8��8(��(88(@(8�4L�8(@(88(��(8�L4�8����OY"&546226562#"'.#"#"'.'."#"'.'.#"#"&5476$32&"5462��И&4&NdN!>!
1X:Dx++w�w++xD:X1
-�U��
�!�*,*&4&��h��h&&2NN2D&

..J<
$$
<JJ<
$$
<J..

��P���bb&&�7!!"&5!54&#!"3!26!	#!"&=!"&5463!2��`(8��
�@

�
+��8(�@(8��(88(@(8�(��8(� @

@
�m+�U�`(88(�8(@(88(��
�h`���(\"&54&#"&46324."367>767#"&'"&547&547&547.'&54>2�l4

2cK�Eo���oED
)
�
�
�
)
D�g-;</-
?.P^P.?
-/<;-gY�����Y�

.2 L4H|O--O|HeO,����,Oe�q1Ls26%%4.2,44,2.4%%62sL1q�c�qAAq����4#!#"'&547632!2#"&=!"&=463!54632
��
��		@	
`
	��	
��

`?`�
�

@	
	@	
�!	��	
�
�
�
����54&+4&+"#"276#!"5467&5432632�
�
�
	`		_
�������v,Ԝ;G_j�)��``

��
	��		_ԟ����7
�,��>�jL>���54'&";;265326#!"5467&5432632	��		��
�
�
�
�������v,Ԝ;G_j�)���	`		����

`������7
�,��>�jL>�����X`$"&462#!"&54>72654&'547 7"2654'54622654'54&'46.' &6 �&4&&4&�y��y�%:hD:Fp�pG9�F�j� 8P8 LhL 8P8 E;
Dh:%������>�4&&4&}y��yD~�s[4D�d=PppP=d�>hh>@�jY*(88(*Y4LL4Y*(88(*YDw"
A4*[s�~����>�����M4&"27 $=.54632>32#"' 65#"&4632632 65.5462&4&&4�G9��������&
<#5KK5!��!5KK5#<
&ܤ��9Gp�p&4&&4&@>b�u��ោؐ&$KjK�nj��j�KjK$&����j��j�b>Ppp���
%!5!#"&5463!!35463!2+32����@\��\���8(@(8�\@@\������\@\���(88(��\��@��34#"&54"3#!"&5!"&5>547&5462�;U gI@L4�@�Ԗ�@4L2RX='�8P8��'=XR� U;Ig04Lj��jL4*\���(88(�����\��@"4&+32!#!"&+#!"&5463!2�pP@@P���j�j�@�@�\�@\�&��0�p����j��	��� \��\�&��-B+"&5.5462265462265462+"&5#"&5463!2�G9L4�4L9G&4&&4&&4&&4&&4&L4�4L�
��&���=d��4LL4d=�&&�`&&�&&�`&&�&&��4LL4
 ��&�#3CS#!"&5463!2!&'&!"&5!463!2#!"&52#!"&=4632#!"&=463�(8(��(88(�(`�x
��c�`(8���@��@��@�`(��(88(@(8(D��9�8(��`@�@@�@@��/?O_o��������-=%+"&=46;25+"&=46;2+"&=46;2%+"&=46;2+"&=46;2%+"&=46;2%+"&=46;2%+"&=46;2+"&=46;2%+"&=46;2%+"&=46;2%+"&=46;2+"&=46;2%+"&=46;2%+"&=46;2+"&=46;2%+"&=46;2+"&=46;2!!!5463!2#!"&5463!2�
@

@

@

@

@

@
�
@

@

@

@
�
@

@
�
@

@
�
@

@

@

@
�
@

@
�
@

@
�
@

@

@

@
�
@

@
�
@

@

@

@
�
@

@

@

@
�����
@
&�&&&�@

@
�@

@

@

@
�@

@
��@

@
�@

@
�@

@
�@

@
��@

@
�@

@
�@

@
�@

@
��@

@
�@

@
�@

@
��@

@
�@

@

@

@
����

`��&&�&&
��/?O_o�����%+"&=46;25+"&=46;2+"&=46;2%+"&=46;2+"&=46;2%+"&=46;2%+"&=46;2+"&=46;2%+"&=46;2+"&=46;2!!#!"&=!!5463!24&+"#54&+";26=3;26%#!"&5463!463!2!2�
@

@

@

@

@

@
�
@

@

@

@
�
@

@
�
@

@

@

@
�
@

@

@

@
���8(�@(8��
@

@
�
@

@
�
@
&�&&@8(�(8@&�@

@
�@

@

@

@
�@

@
��@

@
�@

@
�@

@
��@

@
�@

@

@

@
��� (88( ���

�@

``

��

``
-�&&& (88(��&@����<c$4&"2!#4&"254&+54&+"#";;26=326+"&5!"&5#"&46346?>;463!2�KjKKj�����KjKKj�������&��Ԗ���Ԗ�&&�@�&�&KjKKjK��
��jKKjK ������.��&j��jj��j&4&�@�@&&���#'1?I54&+54&+"#";;26=326!5!#"&5463!!35463!2+32����������� \��\����8(@(8�\  \����������\@\���(88(��\����:
#32+53##'53535'575#5#5733#5;2+3����@��E&&`�@@��`  ����  `��@@�`&&E%@�`��@ @ @��		 �� � � � �� 		��@ 0
@��!3!57#"&5'7!7!��K5�������@ � � @���5K�@����@@��� �����#3%4&+"!4&+";265!;26#!"&5463!2&�&�&�&&�&&�&�w�@w��w�w���&&��@&&��&&@��&&��@w��w�w�����#354&#!4&+"!"3!;265!26#!"&5463!2&��&�&��&&@&�&@&�w�@w��w�w�@�&@&&��&�&��&&@&:�@w��w�w��-M�3)$"'&4762	"'&4762	s
2

�.

�

2

�w��
2

�.

�

2

�w��
2

�

�

2

�w�w

2

�

�

2

�w�w
M�3)"/&47	&4?62"/&47	&4?62S
�.

2

��w

2

��
�.

2

��w

2

�M
�.

2

��

2

�.

�.

2

��

2

�.M�3S)$"'	"/&4762"'	"/&47623
2

�w�w

2

�

�

2

�w�w

2

�

��
2

��w

2

�

�.v
2

��w

2

�

�.M�3s)"'&4?62	62"'&4?62	623
�.

�.

2

��

2

�.

�.

2

��

2�
�.

�

2

�w�

2v
�.

�

2

�w�

2-Ms3	"'&4762s
�w�

2

�.

�

2�
�w�w

2

�

�

2
MS3"/&47	&4?62S
�.

2

��w

2

�M
�.

2

��

2

�.M
3S"'	"/&47623
2

�w�w

2

�

�m
2

��w

2

�

�.M-3s"'&4?62	623
�.

�.

2

��

2-
�.

�

2

�w�

2���/4&#!"3!26#!#!"&54>5!"&5463!2
��

@
�^B��  &�&  ��B^^B@B^ @

��
M��B^%Q=
&&<P&^B@B^^�+3"&5463!2#3!2654&#!"3#!"&=324+"3�B^^B@B^^B��
@

��
`�^B��B^�p�^B�B^^B�@B^`�@

�
�S`(88(``  ��'$4&"2%4&#!"3!26#!"&5463!2�&4&&4�
��

@
�^B��B^^B@B^f4&&4&��

�@
��B^^B@B^^/$4&"2%4&#!"3!264+";%#!"&5463!2�/B//B�
�


���0L4�4LL44L_B//B/��

�@
M   �4LL44LL���  >& $$ ������(���r���^����a�a��������(���^����a�a����!C#!"&54>;2+";2#!"&54>;2+";2pP��PpQ��h@&&@j�8(�Pp�pP��PpQ��h@&&@j�8(�Pp@��PppP�h��Q&�&�j (8pP��PppP�h��Q&�&�j (8p��!C+"&=46;26=4&+"&5463!2+"&=46;26=4&+"&5463!2Q��h@&&@j�8(�PppP�Pp�Q��h@&&@j�8(�PppP�Pp��@h��Q&�&�j (8pP�PppP�@h��Q&�&�j (8pP�Ppp@�@�	#+3;G$#"&5462"&462"&462#"&462"&462"&462"&462#"&54632K54LKj=KjKKj��KjKKj�L45KKjK�<^�^^��KjKKj��p�pp���\]��]\��jKL45K��jKKjKujKKjK��4LKjKK�^^�^��jKKjK��pp�p�r]��]\����� $$ ���^����a�aQ�^����a�a�����,#"&5465654.+"'&47623 #>bq��b�&4�4&�ɢ5����"		#D7e�uU6�&4&��m����1X".4>2".4>24&#""'&#";2>#".'&547&5472632>3�=T==T=�=T==T=��v)�G�G�+v�@b��R�R��b@�=&����\N����j!>�3l�k����i�k3�hPTDDTPTDDTPTDDTPTDD|x��xX�K--K��|Mp<#	)>dA{��RXtfOT# RNftWQ���,%4&#!"&=4&#!"3!26#!"&5463!2!28(�@(88(��(88(�(8��\�@\��\@\��\���(88(@(88(�@(88�@\��\�\��\ �u�'E4#!"3!2676%!54&#!"&=4&#!">#!"&5463!2!232�5��([��5@(\&��8(��(88(��(8,�9.��+�C��\��\@\� \��6Z]#+��#,k��(88(@(88(��;5E�>:��5E�\�\��\ �\�1. ���$4@"&'&676267>"&462"&462.  > $$ n%��%/���02�
KjKKjKKjKKjKf���ff�������^����a�a�y��y/PccP/�jKKjKKjKKjK���ff���ff�@�^����a�a�����$4@&'."'.7>2"&462"&462.  > $$ n20���/%��7KjKKjKKjKKjKf���ff�������^����a�a3/PccP/y��	jKKjKKjKKjK���ff���ff�@�^����a�a�����+7#!"&463!2"&462"&462.  > $$ �&��&&��&KjKKjKKjKKjKf���ff�������^����a�a�4&&4&�jKKjKKjKKjK���ff���ff�@�^����a�a���#+3C54&+54&+"#";;26=3264&"24&"2$#"'##"3!2@������@KjKKjKKjKKjK����ܒ���,����������gjKKjKKjKKjK�X�Ԁ�,�,��#/;GS_kw�����+"=4;27+"=4;2'+"=4;2#!"=43!2%+"=4;2'+"=4;2+"=4;2'+"=4;2+"=4;2+"=4;2+"=4;2+"=4;2+"=4;54;2!#!"&5463!2�``����``��`��``�``�``�``�``�``�````�p`���K5��5KK5�5Kp``�``�``��``�``�``��``�``��``��``�````��`��������5KK5�5KK@���*V#"'.#"63232+"&5.5462#"/.#"#"'&547>32327676���R?d�^��7ac77,9x�m#@#KjK�#
ڗXF@Fp:f��_ #W��Ip�p&3z�	�h[ 17��q%q#:��:#5KKu�'t#!X:	%�#+=&>7p@���*2Fr56565'5&'.	#"32325#"'+"&5.5462#"/.#"#"'&547>32327676@��ͳ�����8
2.,#,f�k*1x���-!���#@#KjK�#
ڗXF@Fp:f��_ #W��Ip�p&3z�	�e�`��v�o�8�t-�	�:5	��[�*�#:��:#5KKu�'t#!X:	%�#+=&>7p
�3$	"/&47	&4?62#!"&=463!2I�.

2

��w

2

�
-�@�)�.

2

��

2

�.
�-@@-��S�$9%"'&4762		/.7>	"/&47	&4?62i2

�.

�

2

�w�
E��>

u>

��.

2

��w

2

�
�2

�

�

2

�w�w
!��




�h�.

2

��

2

�.
���;#"'&476#"'&7'.'#"'&476�'
�)'�s
"+5+�@ա'
�)'����F*4*E�r4�M:�}}8��GO
�*4*������~�
(-/'	#"'%#"&7&67%632���B�;><���V�?�?V�� -����-C�4
<B�=�cB5���!%��%!�b 7I�))�9I7���	#"'.5!".67632y��(
��#

��##@,(
�)���8!	!++"&=!"&5#"&=46;546;2!76232-S��S����������S�

		��S��S�`���`���		

������K$4&"24&"24&"27"&5467.546267>5.5462 8P88P88P88P�8P88P�4,�C��S,4p�p4,,4p�p4,6d7AL*',4p�pP88P8�P88P8HP88P8`4Y��&+(>EY4PppP4Y4Y4PppP4Y�%*<O4Y4Ppp���
%@\ht�	"'&4762"&5462&#!"&463!2#"'&'7?654'7&#"&'&54?632#!"&463!2"&5462"'&4762��		

	����@U�SxyS���R���#PT����('�#��TU�SxySN���@����		

		�		

		
3��@��xS�SUO#���'(���V^�'(���PVvxS�SU��i��@��		

		
`�<+"&=46;2+"&=467>54&#"#"/.7!2���<'G,')7��N;2]=A+#H

�
�0P��R��H6^;<T%-S�#:/*@Z}


>h���.%#!"&=46;#"&=463!232#!"&=463!2�&�&&@@&&�&@&�&�&&&��&&�&�&�&&��&f�&&�&&b�#!"&=463!2#!"&'&63!2&�&&&'�'%@% �&&�&&�&&&&�k%J%#/&'#!53#5!36?!#!'&54>54&#"'6763235���
����Ź���}���4NZN4;)3.i%Sin�1KXL7觧�*		��#��&		*������@jC?.>!&1'\%Awc8^;:+<!P��%I%#/&'#!53#5!36?!#!'&54>54&#"'6763235���
����Ź���}���4NZN4;)3.i%Pln�EcdJ觧�*		��#��&		*������-@jC?.>!&1'\%AwcBiC:D'P%!	#!"&'&6763!2�P������&:�&?�&:&?����5"K�,)""K,)���h#".#""#"&54>54&#"#"'./"'"5327654.54632326732>32�YO)I-D%n "h.=T#)#lQTv%.%P_�	%	
%�_P%.%vUPl#)#T=@�/#,-91P+R[�Ql#)#|'�'
59%D-I)OY[R+P19-,##,-91P+R[YO)I-D%95%�_P%.%v���'3!2#!"&463!5&=462 =462 &546 ����&&��&&��&4&r&4&�������@����&4&&4&�G݀&&������&&f��������
��sCK&=462	#"'32=462!2#!"&463!5&'"/&4762%4632e*&4&i����76`al�&4&���&&��&&}n�

R

�

R
�z����f�Oego�&&�5�����`3��&&����&4&&4&�
D�

R

�

R
z����v���"!676"'.5463!2@�@w^�Cc�t~55~t�cC&�&@���?J���V��|RIIR|��V&&��#G!!%4&+";26%4&+";26%#!"&546;546;2!546;232�����@@@@�L4��4LL4�^B@B^�^B@B^�4L�� �� ��N�4LL44L`B^^B``B^^B`L����L4&"2%#"'%.5!#!"&54675#"#"'.7>7&5462!467%632&4&&4��@�o�&�&}c ;pG=(
8Ai8^�^.�&4&&4&`��	`f�s��&& j�o/;J!#2
 KAE*,B^^B!`	$� ��-4&"2#"/&7#"/&767%676$!2�8P88P��Qr��	@
U���	@�
{`P�TP88P8�����P`��
�	@U	@�rQ���!6'&+!!!!2Ѥ���
8�������̙�e�;<*��@8 !�G��G�GQII���� %764'	64/&"2 $$ �f��3f4�:�4����^����a�a�f4334f�:4�:�^����a�a����� %64'&"	2 $$ ���:4f3��f4F���^����a�a��4�f4���4f�^����a�a����� 764'&"27	2 $$ �f�:4�:f4334����^����a�a�f4��:4f3���^����a�a����� %64/&"	&"2 $$ -�f4���4f�4����^����a�a��4f��3f4�:w�^����a�a���@��7!!/#35%!'!%j��/d��
�jg2�|�8�����������55���dc ��b���@��!	!%!!7!���FG)��D�H:�&�H����d���S)��U4&"2#"/ $'#"'&5463!2#"&=46;5.546232+>7'&763!2�&4&&4f]w�q�4�qw]	`dC���&&�:F�ԖF:�&&���Cd`�4&&4&����	]����]	`d[}�&�&�"uFj��jFu"�&�&�y}[d�#2#!"&546;4 +"&54&" (88(�@(88( r&@&�Ԗ8(��(88(@(8@����&&j��j�����'3"&462&    .  > $$ �Ԗ������>a��X��,��f���ff�������^����a�a�Ԗ�Ԗ�a>����T�X��,�,�~�ff���ff�@�^����a�a����/+"&=46;2+"&=46;2+"&=46;2�8(�(88(�(88(�(88(�(88(�(88(�(8 �(88(�(88(�(88(�(88(�(88(�(88��/+"&=46;2+"&=46;2+"&=46;2�8(�(88(�(88(�(88(�(88(�(88(�(8 �(88(�(88�(88(�(88�(88(�(88���5E$4&"2%&'&;26%&.$'&;276#!"&5463!2KjKKj�
���
��
�
f���	

�\�
�
�w�@w��w�w��jKKjK"�G

�
ܚ

��f


�
���

	�@w��w�w�����  $64'&327/�a����^�����  ��!  ����^����a�a��J@%��%	6�5��/	64'&"2	"/64&"'&476227<���ij��6��j6��u%k%~8p�8}%%�%k%}8p�8~%<���<�ij4j��4����t%%~8�p8~%k%�%%}8�p8}%k���54&#!"3!26#!"&5463!2&��&&�&�w�@w��w�w�@�&&�&&:�@w��w�w����/#!"&=463!24&#!"3!26#!"&5463!2���@�^B��B^^B@B^��w��w��w@w��@@�2@B^^B��B^^���w��w@w���+#!"'&?63!#"'&762�(��@�	@�(@>@�%����%%��� ���!232"'&76;!"/&76 �
�($��>��(����
		��J ���&%�����$%64/&"'&"2#!"&5463!2�ff4�-�4ff4f�w�@w��w�w��f4f�-�f4����@w��w�w�����/#5#5'&76	764/&"%#!"&5463!2��48`���
#�� ����\�P\��w�@w��w�w���4`8�
��
#�@  ���`\P�\`�@w��w�w�����)4&#!"273276#!"&5463!2&� *���f4�
'�w�@w��w�w�`�&')���4f�*�@w��w�w�����%5	64'&"3276'7>332#!"&5463!2�`��'(wƒa8!
�,j.��(&�w�@w��w�w��`4`*�'?_`ze<��	bw4/�*��@w��w�w�����-.  6 $$ ���� �������(�r���^����a�a���O����(��������_�^����a�a�����
-"'&763!24&#!"3!26#!"&5463!2y��B��(�(�
�@

�
�w�@w��w�w�]#�@�##� �

�@
�@w��w�w�����
-#!"'&7624&#!"3!26#!"&5463!2y(��(@B@u
�@

�
�w�@w��w�w��###��@���

�@
�@w��w�w�����
-'&54764&#!"3!26#!"&5463!2@�@####���@��w�@w��w�w��B��(�(������@�@w��w�w����`%#"'#"&=46;&7#"&=46;632/.#"!2#!!2#!32>?6�#
!"'�?_

BCbCa�f\	+
~�2�	
��
	�}0�$

��
q
90r�
�

�pr%Dpu���?#!"&=46;#"&=46;54632'.#"!2#!!546;2��D
a__����	g	

*`-Uh1

��������

�߫�}
	$^L��
���
4��b+"&=.'&?676032654.'.5467546;2'.#"�ǟ�
B{PDg	q�%%Q{%P46'-N/B).ĝ
�9kC<Q
7>W*_x*%K./58`7E%_���
�	,-3�
cVO2")#,)9;J)���
�"!*�
#VD,'#/&>AX��>++"''&=46;267!"&=463!&+"&=463!2+32��Ԫ�$
�	��	
p���U�9ӑ
@�/�*f�����o�	

VRfq
�f=S��E!#"&5!"&=463!5!"&=46;&76;2>76;232#!!2#![�
��

 ��

��
�
�%
)��
	���

��"

��Jg
Uh
B�W&WX���
hU
g��
�84&#!!2#!!2#!+"&=#"&=46;5#"&=46;463!2�j��@jo�����
������g�|�@��~�v����v�
u�n#467!!3'##467!++"'#+"&'#"&=46;'#"&=46;&76;2!6;2!6;232+32Q�Kt#�� ��#F�N�Qo!��"�դ��ѧ����!�mY

�Zga~bm]�

[o�"�U+��������,����� @��h��
h@�@X
��h��h
��@�8���3H\#5"'#"&+73273&#&+5275363534."#22>4.#2>��ut
3NtR�P*�H�o2

Lo�@!�R(�Ozh=�,G<X2O:&D1A.1G$<2I+A;"B,;&$��L��GlF/�����3�D�����;a��$8$��".�!3!
��.�3!#!"&5463!���8( 8(��(88( ��h (8��(88(@(8�(8H!!#!"&5463!54&#!"3!2654&#!"3!2654&#!"3!26��(D 8(��(88( 8��@��@��@�$����(88(@(8��(8� @@@@@@"�}
$BR3/&5##"'&76;46;232!56?5"#+#5!76;5!53'#3!533��H��
��

�����D��q		�x7��	���K/�/K��F��h�/"���		@`����Z		s�Y��w�jj��jj��j"�}
$4R%3/&5##"'&76;46;232!53'#3!533!56?5"#+#5!76;5��H��
��

��������K/�/K��F����q		�x7��	�h�/"���		@`����jj��jj��j�Z		s�Y��
w"�)9IY%#"'&76;46;232#!"&=463!2#!"&=463!2#!"&=463!2#!"&=463!2�
��

����� ��@������@���`��		@`�����������"�)9IY#!"&=463!2%#"'&76;46;232#!"&=463!2#!"&=463!2#!"&=463!2��� 
��

�������@��������@ ��r��		@`��r������"��
$CV%4&#"326#"'&76;46;232%#"'&'73267##"&54632!5346=#'73BX;4>ID2F��
��

������8PuE>.'%&TeQ,j��m{��+�>R�{�?jJrL6V��		@`��7>wmR1q
uW�ei��/rr�
:V��r"��
$7V4&#"326#"'&76;46;232!5346=#'73#"'&'73267##"&54632BX;4>ID2F��
��

������+�>R�{�8PuE>.'%&TeQ,j��m{��?jJrL6����		@`���rr�
:V��r3>wmR1q
uW�ei����@�\%4&#"326#!"&5463!2+".'&'.5467>767>7>7632!2&%%&�&��&& &�7.'	:@�$LB�WM{#&$h1D!		.I/!	Nr�&&%%��&&�&&V?, L=8=9%pEL+%�%r@W!<%*',<2(<&L,"r�@\#"&546324&#!"3!26%#!#"'.'.'&'.'.546767>;&%%&�&��&& &i7qN��	!/I.		!D1h$&#{MW�BL$�@:	'.�&&%%���&&��&&�=XNr%(M&<(2<,'*%<!W@r%�%+LEp%9=8=L ���	+=\d����%54#"327354"%###5#5#"'&53327#"'#3632#"'&=4762#3274645"=424'.'&!  7>76#'#3%54'&#"32763##"'&5#327#!"&5463!2��BB��PJN�C'%!	B?)#!CC $)�54f�"��@@
B+����,A

A+�&�+A
�
ZK35N #J!1331�CCC $)��w�@w��w�w��2��"33�F�Y�F~��(-%"��o�4*)$�(*�	(&;�;&&9LA38�33�4��S,;;,W��T+<<+T;(��\g7�x�:&&:�:&&<r����%-�@w��w�w����	+=[c}���#"'632#542%35!33!3##"'&5#327%54'&#"5#353276%5##"=354'&#"32767654"2 '.'&547>76 3#&'&'3#"'&=47632%#5#"'&53327�''RZZ�:k��id YYY.06�	62+YY-06	R[!.�'CD''EH$��VV�X:���:Y
X;��:Y
�fyd/%jG�&DC&&CD&O[52.
[$�C-D..D�^^���* l�y1%=^�I86�i077S
3
$EWgO%33%O�O%35	��EE�F�W�t;PP;p��t;PP;p�q��J�gT��F�Q%33&P�P%33%R�
7>%3���!+}��{�'+"&72'&76;2+"'66;2U
�&�
��	�(���P

�*��'�e�J."�-d�Z��-n �-���'74'&+";27&+";276'56#!"&5463!2�~�}�		�7��e �	���۩w�@w��w�w��"���
$Q#�'�!#
����@w��w�w��
�I-22#!&$/.'.'.'=&7>?>36����9II ! '	$ !�����01$$%A'	$ ! ����g	
\7@�)(���7Y
	
 \7@�)(���7Y
@����	'5557	���,���VW�QV���.R���W��=���?��l��%l`��������~����0��!#!#%777	5!	������R!!�XC�C��fff�݀�#�� `��,��������{��{{�`��������Og4&"2 &6 $"&462$"&62>7>7>&46.'.'. '.'&7>76 �Ԗ�� ���HR6L66L�G�HyU2LL2UyH��HyU2LL2UyHn
��X�6X��

��X�X��
Ԗ�Ԗ�����H�6L66L6�L2UyH��HyU2LL2UyH��HyU2L�n�6X��

��X�X��

�����2#!"&54634&"2$4&"2�w��w�@w��w�|�||��|�||���w�@w��w�w����||�||�||�|���	!3	37! $$ �n6^�5�5^h
����^����a�a������M�1�^����a�a���P��
*Cg'.676.7>.'$7>&'.'&'? 7%&'.'.'>767$/u5'&$I7o�b?K�\[z�H,1���+.@\7<��?5\V
,$V��g.GR@ �7��U,+!�����
	#	"8$}�{)�<�?L RR;kr,yE[��z#	/1
"#	#�eCI0/"5#`�	��"8���4~&p)4	2�{�H-.%W.L>���':Yi4&67&'&676'.'>7646&' '7>6'&'&7>7#!"&5463!2PR$++'TJX�j7-F��C',��,&C
."��!$28��h�/���"�	+p��^&+3$
i��0(�w�@w��w�w��+.i6=Bn\C1XR:#"�'jj�8Q.cAj�57!?"0D��$4"P[
&2�@w��w�w��D��"%.5#5>7>;!!76�P�Yh�pN!�HrD0�M��
 C0N��#>8\xx: �W]oW-�X���45���/%'#.5!5!#"37>#!"&5463!2p>,;$4
��5eD�+W�cE���w�@w��w�w�K�()��F
,VhV��^9tjA0/�@w��w�w���@�#"'&76;46;23�
��


��
	���&��

��� ���++"&5#"&7632�	���
^


c
� �&�

��@�#!'&5476!2� &��

����
^


b	���'&=!"&=463!546�
��� �&�
�
��	���
��
��q&8#"'&#"#"5476323276326767q'T��1[VA=QQ3���qq�Hih"-bfGw^44O#A���?66%CKJ�A}}�  !"�䒐""A$@C3^q|�z=KK?6�lk)���%!%!��V��V��u��u�u^-�m5�w��}�n�����~7M[264&"264&"2"&546+"&=##"&5'#"&5!467'&766276#"&54632�  �  ��*<;V<<O@-K<V<�<+*<J.@�k��c�lG
H_�_H
�<+*<<*+<    �<*�R+<<+�*<�f.@�+<<+��+<<+�@.��7�uu�7�
�**�
���R+<<+�+;;	��"%3I�#5472&6&67><&4'>&4.'.'.'.'.'&6&'.'.6767645.'#.'6&'&7676"&'&627>76'&7>'&'&'&'&766'.7>7676>76&6763>6&'&232.'.6'4."7674.'&#>7626'.'&#"'.'.'&676.67>7>5'&7>.'&'&'&7>7>767&'&67636'.'&67>7>.'.67�	\
��
	U7	
J#!W!'	

"';%

k	)"	
	'


/7* 		I	,6
*&"!

O6*
O $.(�	*.'

.x�,	$CN��	
�		*	�
6
		
7%&&_f&
",VL,G$3�@@$+
"


V5 3"	
""�#dA++
y0D-%&n4P'A5j$9E#"c7Y
6"	&
8Z(;=I50' !!e
�R
��
"+0n?�t(-z.'<>R$A"24B@(	~	9B9,	*$		
		<>	?0D�9f?Ae �	.(;1.D	4H&.Ct iY% *	�
7��


��
J	 <
W0%$	
""I!
*D	 ,4A'�4J"	.0f6D�4p�Z{+*�D_wqi;�W1G("%%T7F}AG!1#% JG3��� '.2>Vb%&#'32&'!>?>'&' &>"6&#">&'>26 $$ *b6�~�#��= ���XP2��{&%gx|�� .���W)o���O��LO�sEzG<��	CK}E	$MFD<5+
z���^����a�a$�MW�M��1>]|�YY�^D
�եA��<��K�m����E6<�"�@9I5*�^����a�a�����>^4./.543232654.#"#".#"32>#"'#"$&547&54632632�':XM1h*�+D($,/9p�`D�oC&JV<�Z PA3Q1*223�I�oBkែhMI����oPែhMI��oP�2S6,M!"@-7Y.?oI=[<%$('3 -- <-\�%Fu���Po��IMh���Po����IMh,���#?D76&#!"7>;267676&#!"&=463!267
#!"'&5463!26�%�8#!�
��&&Z"�M>2!��
	�^I7LRx_@�>MN�""��`�=&&*%�I�}��,
	�	L�7_jj��9����/%4&#!"3!264&#!"3!26#!"&5463!2�� ��� ��&��&&�&��������&&�&&��19#"'#++"&5#"&5475##"&54763!2"&4628(3�-�	&�B.�.B�&	�-�3(8Ig�gI�`������(8+U��e&��.BB.&����+8(�kk��`�������%-"&5#"&5#"&5#"&5463!2"&4628P8@B\B@B\B@8P8pP�Pp�����@�`(88(`�p.BB.�0.BB.���(88(�Pppͺ�������!%>&'&#"'.$ $$ ^/(V=$<;$=V).X���^����a�a��J`"(("`J��^����a�a��,���I4."2>%'%"/'&5%&'&?'&767%476762%6�[���՛[[���՛o��
�ܴ
 
���
��	��	$
$�	"	�$
$	��	�՛[[���՛[[�5`��

^�

�^

2`��
`2

^��^

��`
�����1%#"$54732$%#"$&546$763276�68��ʴh�f�킐&^�����zs��,!V[���vn)�	�6���<��ׂ�f{���z����}))N�s���3(@����+4&#!"3!2#!"&5463!2#!"&5463!2@&�&&f&��&&�&@&�&&&�4&&4&�@&&�&&��&&&& ��`�BH+"/##"./#"'.?&5#"&46;'&462!76232!46 `&�C�6�@Bb0�3eI;��:�&&�&4�L�4&���F���
�Z4&�w�4�) ���''
�5�r�&4&&�4&��&4��������}G�#&/.#./.'&4?63%27>'./&'&7676>767>?>%6}�)(."�2*&�@P9A
#sG�q]
#lh�<*46+(
	
<
5�R5"*>%</
 '2�@� 53*9*,�Z&VE/#E+)AC
(���	2k<X1$:hI(B
"	!:4Y&>"/	+[>hy
	���K
!/Ui%6&'&676&'&6'.7>%.$76$% $.5476$6?62'.76&&'&676%.76&'..676�#"NDQt	
�-�okQ//�jo_	������	���%&J�������Ղ���YJA-��.--
9\DtT+X?*<UW3'	26$>>�W0{�"F!"E �

^f`$"�_]\�<`�F�`�F�D��h>Cw�ls���J@�;=?s
:i_^{8+?`
)
O`�s2R�DE58/K��r	#"'>7&4$&5m��ī��"#���̵�$5���$�"^^W����=���ac��E�*���c������zk./"&4636$7.'>67.'>65.67>&/>z X^hc^O<q����+f$H^XbVS!rȇr?5GD_RV@-FbV=3!G84&3Im<$/6X_�D'=NUTL;2KPwt��Pt= 

�&ռ
,J~S/#NL,��8JsF);??1zIEJpq�DIPZXSF6\?5:NR=��;.&1��+!"&=!!%!5463!2�sQ9����Qs�*�*�*sQNQsBUw��
wUBF��H���CCTww���%1#"&=!"&=463!54632.  6 $$ �	��	
��

`?��������(�r���^����a�a�	��	
�
�
�
���(��������_�^����a�a�����%1#!#"'&47632!2.  6 $$ �
����		@	
`
��������(�r���^����a�a�
�
?		@	
���(��������_�^����a�a�����/#"'&476324&#!"3!26#!"&5463!2&�@�&
�@

�
�w�@w��w�w����&@B@&���

�@
�@w��w�w�����"&462  >& $$ �Ԗ��*�����(���r���^����a�a�Ԗ�Ԗ �������(���^����a�a���]�6#"$54732>%#"'!"&'&7>32'!!!2�f:�л����Ѫz��~�u:�
(�(%`V6B^hD%��i�(�]̳ޛ	��*>�6߅�����r�#�!3?^BEa�߀�#�9���#36'&632#"'&'&63232#!"&5463!2
��Q,&U�#+'
 �;il4L92<D`����w�@w��w�w�����`9ܩ6ɽ]`C4�7�7�&�@w��w�w����D+"&5#"'&=4?5#"'&=4?546;2%6%66546;2�������
	
��
	
��w�ww�w�������cB
�G]B
�G��t�y]t�y�
���#3C#!+"&5!"&=463!46;2!24&#!"3!26#!"&5463!2���@��`@`�^B��B^^B@B^��w��w��w@w��@��`@`���2@B^^B��B^^���w��w@w�����'/?P+5#"&547.467&546;532!764'!"+32#323!&ln��@
:MM:
@��nY*�Yz--zY�*55QDD�U���9p��Y-`]��]`.X /2I$�	t�@@/!!/@@3,$,3�$p$0�0��&*0��&���&��
!P@���RV2#"&/#"&/#"&546?#"&546?'&54632%'&54632763276%�>S]�8T;/M7��7T</L7�=Q7,�i�<R7,�5T</L666U;/M5�<U<,�i���6i���Q=a!;�;V6-�j�;V6-�5	P=/L596Q</L5�<U6-�i�;V7,�7O;-I6��8��i;k���)I2#!"&5463#9"'.'.'3!264&#!"2>7%>�w��w�@w��w�!"�5bBBb/�/*
8(@(87)��(8=%/�'#?��w�@w��w�w����#~$EE y &�L(88e):8(%O r		

		�O�?GQaq47&67>&&'&67>&"&#6$32#"#"'654  $&6 $6&$ Co��L��.*�KPx���.*� 
iSƓi
7J?��~�pi{_Я�;��lL�������UZ=刈�����刈�����_t'<Z
�:!
	���@!
��j`Q7$k�y, R����f��k*4�������LlL��=Z=刈��������&$&546$7%7&'5>�����]���5��%��w�����������&��P�?�zrSF�!|��&0	##!"&5#5!3!3!3!32!546;2!5463���)�
)����;)��);;)��)���&&������&@@&�&��&��	�
6 $&727"'%+"'&7&54767%&4762������֬>4P���t+8?::
	�	
::AW��``���EvEEvE<�.���"�e$IE&�O�&EI&�{h.`��m���"&#"&'327>73271[
>+)@
(���]:2,C?��*%�Zx/658:@#N
�C�=�E�(�o��E=��W'c:������#!#"$&6$3 &#"32>7!����ڝ���yy��,��{��ۀ�ہW�^F!�L�C=���y�:�y��w���߂0H\R%�"N^ '&76232762$"&5462"&46274&"&'264&#"'&&#"32$54'>$ $&6$ G>��>0yx1��4J55J�5J44J5�Fd$��?�4J55%6�E��#42F%��$f�������LlL�q>>11�J44%&4Z%44J54R1F$Z-%45J521��Z%F1#:��ʎ 9�������LlL�����#Qa"'&7622762%"&5462"&546274&#"&'73264&#"'&&#"32654'>#!"&5463!2�

5�5

*�*��.>.-@-R.>.-@-�<+*q�6�- -- 0�<�o,+< ��3�w�@w��w�w��

55

**�.. -- .. --G*<N�' ,-@-+*��M <*2
z��z
1�@w��w�w�����0<754&""&=#326546325##"&='26 $$ bZt�t&�sRQs��Z<t�sQ���^����a�a�>OpoO��xzRrqP6�z~{{Prr��^����a�a�����]054&"#"&5!2654632!#"&57265&<T<����H<T<������H������<T<8v*<<*������
��+;;+l���:�������=:��*;;*���
%!!"!!26#!"&5463!2��@� ]���]�@�w�@w��w�w�����]� �@��@w��w�w���	
%)3!!#335!!5!5!%#!!5!5!%#H��H{����R��H��H{���G��G{�)���q���G����R�R�q���R�R�q�����	#0@#"'632#"'632&#"7532&#"#7532#!"&5463!2L5+*5��L5+*5~�}7W|�3B}��}JC��7=}�w�@w��w�w�D�ZQ�[�1�N:_��)�i�$��)���@w��w�w��
)�	�����������6.#&#"'&547>'&#".'&'#"&5467%&4>7>3263232654.547'654'63277.'.*#">7?67>?>32#"'7'>3'>3235?�K�cgA+![<E0y�$,<'.cI
	,#� '!;7$�=ep���	��/�/7/
D+R>,7*
2(-#=
	/~[(D?G  �|,)"#+)O��8,+�'�6	y{=@��0mI�#938OA�E`
-�
)y_/FwaH8j7=7?%����a	%%!?)L
J
9=5]~�pj

 %(��1$",I 
$@((�
+!.S		-L__$'-9L	5V��+	
	6�T+6.8-$�0��+
t�|S1��6]�&#"'&#"67>76'&'&#"67>32764.#"#.32>67>7 $&54>7>7>7�rJ�@"kb2)W+,5/1		#

Z
-!��$IOXp7s�LCF9�vz NAG#/ 5|����Հ';RKR/J#=$,�9,�+$UCS7'2"1
 !�/
,

/--ST(::(�ep4AM@=I>".)x��ls��Y�|qK@
%(YQ�&N
EHv~����<Zx'#"&5467&6?2?'&"/.7.546326#"&'&/7264/7'764&"'?>>32.��A�UpIUxYE.A�%%%h%����%hJ%�����D,FZxULsT�gxUJrV�D�%hJ%�����@/LefL.C�%Jh%�����C�VsNUxϠ�@.FZyUHpV�A�%h&%%���%Ji%�����C�WpIUybJ/��Uy^G,D�%Jh%�����@�UsMtU�C�%hJ%�����C-Kfy�EX[_gj��&/&'.''67>7>7&'&'&'>76763>7>#&'&'767672'%'7'+"&'&546323267>7%#"'4'6767672,32�,+DCCQL�Df'
%:/d
B	4@}
�&!0$�?�����J�f�d�f-�.=���6(��:!TO�?
!I�G_�U%
����.
k*.=;�	5gN_X��	"
##
292Q41�
��*����6���nA;�|�
�BSN.	%1$����
6	$��nk�^�'7GWgw�����2+"&5463#!"&5463!254&+";2654&+";2654&+";2654&+";2654&+";2654&+";2654&+";2654&+";2654&+";26#"&=! B^^B�B^^B�:F�j��B^8(�(`�(� ������������������`�(8���^B��B^^B@B^�"vE�j�^B(8(�`(�����������������������8(����/?O_o��������/?2#!"&5463;26=4&+";26=4&+";26=4&+";26=4&+"54&+";2654&+";2654&+";2654&+";2654&+";2654&#!"3!2654&+";2654&+";2654&+";2654&+";2654&+";2654&+";2654&+";2654&+";2654&+";26@&&�&&�@@@@@@@@�@@@@@@@@@@��@@@@@@@@@@@@@@@@@@@&��&&�&��@@��@@��@@��@@��@@@@@@@@@@���@@@@@@@@�@@@@@@@@@@@��`'	"&5#"&5&4762!762$"&462���B\B@B\B��O�p�P����������.BB.���.BB.8$P��O広�������3CQ#".54>32#".546322#"&#"#"54>%".54>32%2#"&54>&X=L|<&X=M{<��TML�FTML�F�v�"?B+D�?B�J�p��H=X&<{M=X&<|dMTF�LMTF�(<kNs�I<kNs���Pvo�JPwo�/��s.=ZY�VӮv�Nk<J�sNk<I�shwPJ�ovPJ�o@��+"&7.54>2�r_-$�$-_rU���U��%��&&5%ő������'-
"'.546762����@��F�F�$�@B�@$.&�,�&.]]|�q����#<���<#(B�B��B%'-%'-'%'-"'%&'"'%.5467%467%62����@��l�l����@��l�l,���@��G�G�&!�@@�@�@@�@!&+#�+#�6�#+�$*`�:�p������:�p���x�
�p����=�`$>����>$�&@��&@�

�@&�p�@��	&.A!!"!&2673!"5432!%!254#!5!2654#!%!2#!8���Zp��?v�d���Ί�e�ns�6(���N[�����RW�u?�rt1Sr�F���|��iZ��@7�����މoy2���IM��C~[�R �yK{T:���%,AGK2#!"&5463!!2654'654.#532#532"&5!654&#"327#2#>!!�w��w�@w��w��~u��k'JTM��wa��|
DH��������>�I1q�Fj?����w�@w��w�w�����sq�*4p9O*�¸Z^���qh LE
�������"(nz8B
M���'?"&4624&#"'.'324&#"3267##"&/632632.�ʏ����hhMA�LR vGhг~��~������K„y���O^
��ʏ�ʏ��В*�LM@!<I�~��~����������t\��0�������CM4&"2#"&'676&/632#!"&=3267%2654&#"&#"%463!2"&4632�r�qq��tR8^4.<x3=RR��w�@w���_h�
Y��Ӗ���	K>�שw�w���ȍ�de�)�qrOPq�Ȧs:03=<x!m�@w��w�E\x�g�ӕ��є��%w�w����d��Ȏ��V��
-<K\%.'.>7'.?67'67%'>&%'7%7./6D�\$>	"N,��?a0�#O���1G�����9�'/���P(1#00��
($=!F"�9|��]�"RE<�6'o��9%8J$\:��\H�iTe<?}V��#�oj��?���d,6���%N#"
Hl��S��VY�]C

=�@�C4&"2!.#!"4&"2+"&=!"&=#"&546;>3!232�^�^^���Y	�	^�^^��`p�p�p�p`�]i�bb�i]�~�^^�^�e��^^�^���PppP��PppP��]��^^�]��3;EM2+"&=!"&=#"&546;>;5463!232264&"!.#!"264&" ]�`p�p�p�p`�]i�b���b�i���^^�^d�Y	�	!�^^�^��]��@PppP@@PppP@�]��^��^�]� ^�^^��e��^�^^� ��3$#!#!"&5467!"&47#"&47#"&4762++�&�2
$��$
�2&��&��&�4�&��&��Z4&�&##&�&4�&4�&4���4&�m4&�m���+DP4'&#"32763232674'&!"32763 3264'&$#"32763232> $$ g����* �o�`#�ə�0#z��#l(~���̠)���-g+����^����a�aF s"	+g�(�*
3#!|
#/IK/%*%D=)[�^����a�a����	!!!'!!77!���,���/���,�-���a��/G��	t%/;<HTbcq������%7.#"32%74'&"32765"/7627#"5'7432#"/7632#"5'7432#"&5'74632	#"/6327#"/6327#"/46329"&/462"&/>21"&/567632#!.547632632
	
	*


			��X		�

^

`		���

^b
	��c�
	f�u��
U`�59u���

���

4�J���
	
l�~		~�	F��	
��	�2�����

�
�	��	�m����|O�,��� ����	

���
��������

ru|	��u�
�
"�����
)9 $7 $&= $7 $&= $7 $&=  $&=46��w���`���w���w���`���w���w���`���w��b����`����VT�EvEEvE�T��VT�EvEEvE�T*VT�EvEEvE�T*EvE�EvEEvE�Ev�#^ct�#!"&5463!2!&'&!"&5!632#"&'#"/&'&7>766767.76;267674767&5&5&'67.'&'&#3274�(8(��(88(�(`�x
��c�`(8��!3;:�A0�?ݫ�Y

	^U	47D$

	7�4U3I�
|��L38wtL0�`(��(88(@(8(D��9�8(��Q1&(!;��
(g-	Up�~R�2(/{E���(Xz*Z%(�i6CmVo8�#T#!"&5463!2!&'&!"&5!3367653335!3#4.5.'##'&'35�(8(��(88(�(`�x
��c�`(8�iF������F��Zc�r�cZ�`(��(88(@(8(D��9�8(���k�k�"	��kk�J	 	!��	�k�#S#!"&5463!2!&'&!"&5!%!5#7>;#!5#35!3#&'&/35!3�(8(��(88(�(`�x
��c�`(8�-Kg
kL#D��C��JgjL��D���`(��(88(@(8(D��9�8(���jj�	�jjkk��kk����#8C#!"&5463!2!&'&!"&5!%!5#5327>54&'&#!3#32�(8(��(88(�(`�x
��c�`(8� G]�L*COJ?0R��\wx48>�`(��(88(@(8(D��9�8(���jj��RQxk��!RY�#*2#!"&5463!2!&'&!"&5!!57"&462�(8(��(88(�(`�x
��c�`(8�������P�pp�p�`(��(88(@(8(D��9�8(����������p�pp�	�#*7JR5#5#5#5##!"&5463!2!&'&!"&5##5!"&54765332264&"�����<(8(��(88(�(`�x
��c�`(8����k�ޑc�O"�jKKjK�������������`(��(88(@(8(D��9�8(������SmmS?M���&4&&4�#9L^#!"&5463!2!&'&!"&5!#"/#"&=46;76276'.'2764'.�(8(��(88(�(`�x
��c�`(8���������6dd�WW6&44�`(��(88(@(8(D��9�8(��.��	����G���5{��{5�]�]$59�95�#3C#!"&5463!2!&'&!"&5!2#!"&5463#"'5632�(8(��(88(�(`�x
��c�`(8��4LL4��4LL4l	��		�`(��(88(@(8(D��9�8(���L4��4LL4�4L��	
Z
	�#7K[#!"&5463!2!&'&!"&5!>&'&7!/.?'&6?6.7>'�(8(��(88(�(`�x
��c�`(8�`3��3��3��3�v
�
?
�
�`(��(88(@(8(D��9�8(���&��&-��&��&�
?


��
'���6#'.
'!67&54632".'654&#"32�eaAɢ/PRAids`WXyzO�v��д��:C;A:25@Ң>�����-05r��n������`��H(�����' gQWZc[���
-%7'	%'-'%	%"'&54762�[������3[��M���N�����
��3"��,��""3,3"o�ng�$������߆���]�g�n��$����+��)��

")")"

��x#W#"&#!+.5467&546326$32327.'#"&5463232654&#"632#".#"o���G��n\�u_MK'����̨|�g?CM7MM5,QAAIQqAy��{�b]BL4PJ9+OABIRo?z��.�z��
�n�6'+s�:�������z�cIAC65D*DRRD*�wy�al@B39E*DRRD*��'/7  $&6$ 6277&47' 7'"' 6& 6'�lL������������R�R����ZB|��R�R��>����d�ZZ��������LlL�Z����R�R«����Z��&�>���«|��R� � ��! $&54$7 >54'5��������P���f���f����P�����牉�@��s��-����ff���`-����c6721>?>././76&/7>?>?>./&31#"$&��(@8!IH2hM>'

)-*
h'N'��!'Og,R"/!YQG<I *1)

(-O1D+0�n�������z�3fw���G2'3�rd1!sF0o ��.q"!%GsH8��@-!5|w|pgS=
"B2PJfh�G���d�R	�(P]ly��&$'77&7567'676'"'7&'&'7&47'6767'627''6$'67'654'7&'7'&'&'7&'5&$  $6 $&6$ j��j:,A��A��S9bb9R#:j���8AܔA,z��C�9Z04\40Z9�C��!B�;X0,l,0X;�B�*A8ܔA&#9j`b9S$#R99#&A��8A�`
������䇇�<Z<䳎������LlL�fBϬ"129�,V<4!���!88dpm��"��BV,�92[P*V*P\M�C�

�C�M\P*V*P]L�D�

�D�L&BV*�8*8!����f�!4<gmpd88!&!8*8�*VB�Z<䇇�����䇇��������LlL�����9Eis�%#"5432#"543275#&#"3254&'.547>54'63&547#5#"=3235#47##6323#324&"26%#!"&5463!2F]kbf$JMM$&�N92<Vv;,&)q(DL+�`N11MZ
%G���&54	#	i�<$8&@��0H12F1d�w�@w��w�w��B?@�UTZ3%}rV2hD5%f-C#�C@,nO	�a7�.0�x2	yR�uR/u�%6;&�$76%$56S�@w��w�w��D��<Hlw%4#"324&#"32!".5475&5475.546322#654'3%#".535"&#"5354'33"&+32#"&54632S����;<;||w
$+�|('-GVVG-��EznA�C?H_��`Rb���]Gg>Z2&`��9UW=��N9:PO;:dhe\=R����
+)�&')-S9��9kJ�<)Um�Q��/��-Ya^"![��Y��'(<`X;_�L6#)|����tWW:;X���	#'#3#!"&5463!2)
p�*�xeשw�@w��w�w���0,\8�����@w��w�w��9��I#"'#"&'&>767&5462#"'.7>32>4."&'&54>32JrO<3>5�-&FD(=Gq���@C$39a��LL��²�L4

&)
@]��v�
�q#CO���!~󿵂<ZK#*Pq.���%
L��²�LL��arh({�w؜\���i&5467&6747632#".'&##".'&'.'#".5467>72765'./"#"&'&5
�}����1R<2"7MW'$	;IS7@�5sQ@@)�R#DvTA;
0x
I)�!:>�+<B76:NFcP:SC4r�l+r �E%.*a-(6%('�>)C	6.�>�
!-I[4&#"324&#"3264&#"324&#"326&#"#".'7$4$32'#"$&6$32D2)+BB+)3(--(3�1)+BB+)�4'--'4��'���#!0>R	�H���MŰ9�o�u7ǖD��䣣���
R23('3�_,--,�R23('3�_,--,�����NJ
������?u�W�m%������#"'%#"'.5	%&'&7632�!�
�;�
	`��u%"��(����!]#�c�)(�	��� #"'%#"'.5%&'&76	�!�
���	�(%#�#���fP_�"�(���!�)'��+�ʼn�����4I#"$'&6?6332>4.#"#!"&54766$32#!"&=46;46;2z�䜬��m�
I�wh��QQ��hb�F�*�@&('�k�������@����z��
�	
_hQ��н�QGB�'(&�*�eozΘ�@@`���  >. $$ ����ff���ff�����^����a�af���ff�����^����a�a��>�����"&#"#"&54>7654'&#!"#"&#"#"&54>765'46.'."&54632326323!27654'.5463232632�,�-,�,",:!
%�]&
%@2(/�.+�*)6!	<.$.�.*�*"+8#
�
#Q3,�,+�+#-:#"</$�)

w�

���
,*

x9-.2"'
,,
���@�&,,
��Qw
,����,#"+"&5#+"&5&'&'&547676)2�%2$l$�#l#�b~B@XXyo2�$CI@5��$$�>$$�/:yu��xv)%$	��/?CG%!5%2#!"&5463!5#5!52#!"&54632#!"&5463#5!5`���&&�&&������ �&&�&&�&&�&&@������&�&&&���������&�&&&�&�&&&��������%2 &547%#"&632%&546 #"'6���������\~����~\h�
���~\��h\�������V�
�V�������V��V���%5$4&#"'64'73264&"&#"3272#!"&5463!2}XT=��=TX}}�~�>SX}}XS>�~�}�w�@w��w�w���~:xx:~�}}Xx9}�}9xX}�@w��w�w���/>LXds.327>76 $&6$32762#"/&4762"/&47626+"&46;2'"&=462#"'&4?62E0l�,

*"�T�.�D@Yo������oo����@5D�

[		

Z
�Z

		[	 ``��[



Z

	�2
,�l0
(T�"�.�D5@������oo��oY@D,

Z

		[	�		[		

Z
��``EZ

		[		
�5%!  $&66='&'%77'727'%am��lL�������m�f�?���5���5>�f�F�tu�ut�F������������LlL�H�Y�C�L|��|L����Y�˄(��E''E*(�/?IYiy����%+"&=46;2+"&=46;2+"&=46;2+"&=46;2%"&=!#+"&=46;2+"&=46;2+"&=46;2+"&=46;2!54!54>$ +"&=46;2#!"&=������@�������&&������@��������������3P��
>��P3��&��&��r���r��r���&��&���r���r��r���
he

4LKM:%%:MKL4�W��T�&&��%/9##!"&563!!#!"&5"&5!2!5463!2!5463!2�&&�&��&�&&���� ��� ��&��&&i�@����&&@&7�����'#5&?6262�%%�o����;����j|/����&jJ%�p��&j;&i&�p���/|���j�ţ���%Jk%�o��%��	:g"&5462#"&546324&#!"263662>7'&75.''&'&&'&6463!276i���~ZYYZ~�@O��S;+[G[3YUD#o?D&G3I=J�y�TkBuhNV!WOhuAiS�y*'^C�C^'*SwwSTvvTSwwSTvv���WID\�_"[�g��q# /3qF��r2/ $r�g�%4
�HffH�J4d���#!#7!!7!#5!������VF��N����rmN�N��N����������N���!Y���+?Ne%&'&'&7>727>'#&'&'&>2'&'&676'&76$7&'&767>76'6�#
<�;1�1x��#*#
�G,T9�3%�/#0v�N�Z;:8��)M:(	&���C.J}2	%0����
 	^*
J�F	
&�7'X"2L�DM"	+��6�
M2+'BQfXV#+]
#���'
L/(e�B�9
�#,8!!!5!!5!5!5!5#26%!!26#!"&5!5���������������&4&���&�pP��Pp������������������@��@&&@��!&�@PppP@�*
��	9Q$"&54627"."#"&547>2"'.#"#"&5476$ "'&$ #"&5476$ (�}R}hL�K�
N���N
����U�d:�
�x�x�
�����8���
��
�
� ,, |2222�
MXXM

�ic,>>,�
����
�	����	�
��̺

�
��'/7?KSck{4&"2$4&"24&"24&"24&"24&"24&"24&"24&"264&"24&#!"3!264&"2#!"&5463!2�KjKKj�KjKKj��KjKKjKKjKKj��KjKKj��KjKKjKKjKKj��KjKKjKLhLLhL��KjKKj�&�&&&KjKKj�L4��4LL4�4L5jKKjKKjKKjK�jKKjK��jKKjK�jKKjK�jKKjK��jKKjK�jKKjK���4LL4��4LL�jKKjK�&&�&&��jKKjK�4LL44LL	��'E!#"+"&7>76;7676767>'#'"#!"&7>3!2�W�",&7'�	#$	&��g�pf5O�.P�q�ZZdS���-V"0kqzTx�D!��!8�p�8%'i_�F?;�k��R(`��
!�&)�'�
(2!&6367!	&63!2�!
`�B��1LO�(���+#�=)�heC��Qg#s`���f�4#����6�������q�'���X�|0-�g��	�>IY#6?>7&#!%'.'33#&#"#"/3674'.54636%#"3733#!"&5463!2��4��:@��7�vH��%�h��EP{��0&<'VFJo���1,1.F6��A��#���L4�4LL44L"%�	
 
7x'6
O\�JYFw���~�v^fH$ !�"xdjD"!�6��`J�4LL44LL��	�+3@GXcgqz�����-<JX{�&#"327&76'32>54.#"35#3;5#'#3537+5;3'23764/"+353$4632#"$2#462#"6462""'"&5&5474761256321##%354&'"&#"5#35432354323=#&#"32?4/&54327&#"#"'326'#"=35#5##3327"327'#"'354&3"5#354327&327''"&46327&#"3=#&#"32?"5#354327&3=#&"32?"#3274?67654'&'4/"&#!"&5463!2_��g��QQ��h���^_�~\[[\]�_^���h��QQ��g�e��<F�$�$$��� !!�&&�/!/

!!�

00/e&'!"e$�
		'!!�''�
	8''NgL4�4LL44L�UQ��gh��QUk=<Sc���cc,-{k���jUQ��hg��Q��



�9

,&W &$U�K$$KK$$KDC(>("
!
=))=2�( '! '�L#(>(
&�DC(>(z�L#�DzG)<)�4LL44LL��	�
BWbjq}��+532%+5324&+32763#4&'.546327&#"#"'3265#"&546325&#"32!264&"2%#'#735#535#535#3'654&+353#!"&5463!29$<=$�@?�SdO__J-<AA@)7")9,<$.%0*,G3@%)1??.+&((JgfJ*�A�������!&��j�jj��GZYG�иwssw��PiL>8aA	!M7�7MM7�7M�3!�
4erJ]��&3YM�(,
,%7(#)
,(@=)M%A20C&Me�e��(X���0&Ėjj�jV��	8Z8J9���N/4���$�8NN8�8NN��	�#&:O[���	$?b3'7'#3#%54+32%4+324+323'%#5#'#'##337"&##'!!732%#3#3##!"&53733537!572!56373353#'#'#"5#&#!'#'#463!2#"5#"5!&+&+'!!7353273532!2732%#54&+#32#46.+#2#3#3##+53254&".546;#"67+53254&.546;#"#'#'##"54;"&;7335wY-AJF���=c�(TS)!*RQ+��*RQ+�Y,�B^9^��Ft`njUM�')	~PS�PR�m���٘���M7�7Mo7�q

@)U	8�"����E(�1��++��NM7�7Mx3�7��8�D�62��W74�;�9�<�-A"EA�0:��AF@�1:�ؗ����B�f~~""12"4(�w$#11#�@}}!%+%5(�v$:O�\z��K��?*$\amcrVl��OO176Nn�<!E(=�<&l/������<<������
[ZZYY�89176���7OO7�==..//cV==::z,,,,aa,,��7OO7�Z::��;;Y
fcW�(		"6-!c�(		!5	#
b�t88176����tV:
&$'*9	%e#:
%'*9B����<<��;
&(�����	�#:Sn�����#"&54632%#76;2#"&54632%4&+";2?>23266&+"&#"3267;24&+"'&+";27%4&+";2?>23266&+"&#"3267;254+";27#76;2#!"&5463!2�3%#2%%,, _3$$2%%��M>�ALVb5)LDHeE:<
E�Mj,K'-R
M�~M>�ARVb5)LEHeE:<
E�
JAB�I*'!($rL4�4LL44Lv%1 %3!x*k�$2 %3!�;5�h
n
a�
!(lI;F	
	
��	r�p
p8;5�h

t
a�
!(lI;F��`	#k�4LL44LL
��	�
2HW[lt��#"'5632#6324&'.54327&#"#"&'32767#533275#"=5&#"'#36323#4'&#"'#7532764&"24'&#"327'#"'&'36#!"&5463!2=!9�n23��BD$ &:BCRM.0AC'0RH`Q03'`�.>,&I / *�
 /

��8/��n-(G@5��$ S3=�,.B..B�02^`o?7je;9G+��L4�4LL44LyE%#	�Vb�;A
!p &'F:Aq)%)#o�rg�T$v2�� 8�)2����z948/�{�8A�B..B/��q?@�r�<7(g/��4LL44LL��?#!"&'24#"&54"&/&6?&5>547&54626=�L4�@�ԕ;U g3
��
T
�2RX='�8P8|�5�
����4Lj��j� U;Ig@
	��
`
� "*\���(88(�]k
��&N4#"&54"3	.#"#!"&'7!&7&/&6?&5>547&54626;U gI��m*��]�Z0�L4�@�ԕ���=o=CT
��
T
�2RX='�8P8|�5�
� U;Ig��Xu?bl3���@4Lj��j��a���`
	��
`
� "*\���(88(�]k����/7[%4&+";26%4&+";26%4&+";26!'&'!+#!"&5#"&=463!7>3!2!2@@@@@@���0
��
o`^B��B^`5FN(@(NF5���@��@��@�u		�@�LSyuS�@�%44%����,<H#"5432+"=4&#"326=46;2  >. $$ ~Isy9���"SgR8v�H����D�	w
����ff���ff�����^����a�a�m2N+��	)H-mF+1����0*F		+f���ff�����^����a�a�����b4&#"32>"#"'&'#"&54632?>;23>5!"3276#"$&6$3 �k^?zb=ka`�U4J{�K_/4�^����W�&	vx :XB0���܂�ff���)
f������zz��X��lz=l�apz��o�b35!2BX���
�G@8��'	'=vN$\f���f�	1
	SZz�8�z�X�#("/+'547'&4?6276	'D�^�h

�

i��%5�@�%[i

�

h�]��@������]�h

�

i��%�@�5%[i

�

h�^�@@������)2#"&5476#".5327>OFi-���ay~�\~;��'�S���{�s:D8>)AJfh]F?X��{[��TC6��LlG��]��v2'"%B];$�-o��%!2>7>3232>7>322>7>32".'.#"#"&'.#"#"&'.#"#546;!!!!!32#"&54>52#"&54>52#"&54>52�-P&+#($P.-P$'#+&PZP&+#"+&P-($P-.P$(#+$P.-P$'#+&P-.P$+#pP@@Pp�H85K"&ZH85K"&ZH85K"&Z����@��Pp��@��@��@pMSK5, :&�LMSK5, :&�LMSK5, :&����!!3	!	�����@�����@@�����	#"$$3!!2"j������aѻxl���a����lx�a�a����j������!!3/"/'62'&63!2��'y��

�`�I

��y�����My��

�`�I

��y'W`#".'.#"32767!"&54>3232654.'&546#&'5&#"

4$%Eӕ;iNL291 ;XxR`�f՝�Q8T������W��iW�gW:;*:`�Qs&?RWXJ8�oNU0�J1F@#)
[�%6_PO�QiX(o�`��_?5�"$���iʗ\&>bd�s�6�aP*< -;iFn�*-c1B���Wg4'.'4.54632#7&'.#"#"'.#"32767'#"&54632326#!"&5463!2��#$(	1$6]'
!E3P|ad(2S;aF9'EO�Se�j]�m�]<*rYs��hpt.#)$78L*k�h�w�@w��w�w��B

%
$/$G6
sP`X):F�/�fwH1p�dl�qnmPH�ui�kw_:[9D'��@w��w�w��34."2>$4.#!!2>#!".>3!2�Q��н�QQ��н�QQ��h�~w��w�h���f����ff����н�QQ��н�QQ��н�QZ����ZQ�����ff���ff�#>3!2#!".2>4."f����ff�����н�QQ��н�QQ���ff���ff��Q��н�QQ��н�	,\!"&?&#"326'3&'!&#"#"'  5467'+#"327#"&463!!'#"&463!2632���(#�AH����s���9q � ci��<=�
#�]�<������OFA��!�������re��&&��U�&&![e��F �������U?���g�����4_���������a�?b�+��r7�&4&��&4&�p,�+K4&"2$4&"2.#!"3!264&#!"3!2#"&=!"&=#47>$ �KjKKjKKjKKjH#�j#H&&&������KjK�KjK�g	�V�	ijKKjKKjKKjK���..n((�[���5KK5��5KK5�[po�Nv<<vN�:f���.R#!"&463!24'!"&5463!&$#"!2#!32>+#"'#"&546;&546$3232�2$�B$22$�$�*$22$�X�ڭ��ӯ�$22$�tX'���hs2$���ϧ��kc�$22$���1���c�$2�F33F3VVT2#$2����ԱVT2#$2��g���#2UU���݃
�2$#2UU�1݃���2��,u�54#"67.632&#"32654'.#"32764.'&$#"7232&'##"&54732654&#"467&5463254632>32#"'&�ru�&9��%"*#�͟ <yK0Og�" 
&9B3�;��㛘8��s%+DWXRD= @Y%�	!Q6R�!4M8�+6rU^z=)�RN��.)C>O%GR�=O&^���op������C8�pP*�b�Y
_�#��$��N Pb@6��)?����+0L15"4$.�Es
�5I�Q"!@h"�Y7e|J>z�iPe��n�eHbIl�F>^]@����n*9
���6[_3#"&54632#.#"32%3#"&54632#.#"326%4&'.'&! ! 7>7>!���������
�=39?
6'_����������
�>29?
5'17m-V����U--,�bW.�������뮠@Fyu0HC$������뮠@Fyu0HC$L���=??
<����=! A	<��`�;+"&54&#!+"&5463!2#!"&546;2!26546;2���p���Ї����0�p�����p���@��I�������pp���>Sc+"&=46;254&+"&+";2=46;2;2=46;2;2%54&#!";2=;26#!"&5463!2���A5�DD�5A7^6a7MB5��5B7?�5B~�`��`��`0`��rr��5A44A5�����v�5AA5�f�*A���`��`0`�����	!!!!	#!"&5463!2��ړ�7���H��7j�v�@v��v�v��'���:��@v��v�v���MUahmrx���������������#"'!"'!#"&547.547.54674&547&54632!62!632!#!627'!%!"67'#77!63!!7357/7'%#	%'3/&=&'	5#?&5476��!�p4�q"���"�"�6�"� ��'������h*�[���
��|�*��,�@���?wA�UM�pV���@�˝�����)��Ϳw����7(�{��*U%���K6������=0�(���M���		��"!O		dX$k
!!��!
����b��	
���[�����TDOi
��@��6��b��xBA�ݽ�5
�
�ɝ:����J���+���3����,��p
x�1���������Fi
(��R��
463!#!"&5%'4&#!"3���`����а@.�.@A-X��f�B����$��.BB.�.C��}
)&54$32&'%&&'67���"w�`�Rd]G�{��o]>p6��sc(��@wg����mJ�PAjy���YW�a͊AZq���{HZ�:�<dv\gx�>��2AT�Kn������+;"'&#"&#"+6!263 2&#"&#">3267&#">326e��~�└�Ȁ|��隚���Ν|����ū|iy�Zʬ��7Ӕ�ް�r|�uѥ��x�9[��[9�jj��9A�N��N�+,#ll"���B�S32fk��[/?\%4&+";26%4&+";26%4&+";26%4&+";26%#!"&5467&546326$32�]]��ee��ee��ee��$��~i
�qfN-*���������#����Sj������t�2"'q�C���B8!�'�>	
!%)-159=AEIMQUY]agkosw{��������!	%!	5!#5#5#5#5#57777????#5!#5!#5!#5!#5!#5!#5!#5#537#5!#5!#5!#5!#5!#55#535353535353%"&546326#"'#32>54.&54>3237.#"����������Q%%%%%%%%%?iiihOiixiiyiixii�Arssrrssr��%s�ssrrss�Ns%%%%%%%%%%�����������'<D<'paC_78#7PO7)("I$	75!����RA��b��(���ss�ss�ss�ss�ss�"/!".""."
!."".!/^.".^.".]/".�$$$$$$$$$$$$$$$$��Os$$$$$$$$$$$$$$sO$s�ss�ss�ss�ss�ss#��������}$)	13?*
,./:
-�s�*4&"2$4&"2#!"&5463!2!5463!2_��������?-��-??-�,@�@,�-?����pq�8��,??,D,??,��,??(�Z2#".#"3267>32#".543232654&#"#"&54654&#"#"&547>326���ڞU�zrhgrx�S��Пd�U <e�����x՞����Zf��_gן:k=2;�^��9��Œ��7\x��x\7����K=5Xltֆ�W����W{e_�%N��%,%CI��%���#+W4&+54&"#";26=32"&462"&462!2#!"&54>7#"&463!2!2�&�&4&�&&�&4&���KjKKj�KjKKj� ���&&�&%��&&�&&4&�&&�&4&�&&��5jKKjKKjKKjK��%z
0&4&&3D7&4&
%&���'S4&"4&"'&"27"&462"&462!2#!"&54>7#"&463!2!2&4�&4&�4&4��KjKKj�KjKKj� ���&&�&%��&&�&&4&�%&&�ے&4��"jKKjKKjKKjK��%z
0&4&&3D7&4&
%&��	&	!'!	!%!!!!%"'.763!2�o���]�F������o�������oZ��Y��@:�@�!�!�g���������������f�/�/��I��62'"/"/"/"/"/"/"/7762762762762762762%"/77627&6?35!5!!3762762'"/"/"/"/"/"/%5#5!4�ZSS6SS4SS4SS4SS4SS4SS4�ZSS4SS4SS4SS4SS4SS4S�-4�ZSS4S@������4SS4�ZSS6SS4SS4SS4SS4SS4S@�����ZSSSSSSSSSSSSSS�ZSSSSSSSSSSSSSy�ZRRR@%:=
:+������:
=���RR�ZSSSSSSSSSSSSS���������Cv!/&'&#""'&#"	32>;232>7>76#!"&54>7'3&547&547>763226323@``����`
VFaaFV


$.


.$

��y��y�	.Q5Z���E$ ,l<l, $E���R?Y*��@���@�2	!#""#!	��y��y=r�na�@@(89*>�*%>>%*�>*98(QO�!���L\p'.'&67'#!##"327&+"&46;2!3'#"&7>;276;2+6267!"'&7&#"(6&#"#"'�D��g��OOG`n%�E������LL{�@&&�N�c,sU�&&�!Fre&&�s�����s���#�/,�������<=�
#�]�g��L�o�GkP�'��r-n&4&2�-ir&�&�?���o 
��������4_�����5OW! .54>762>7.'.7>+#!"&5#"&5463!2"&462�{�����{BtxG,:`9(0b��Կ�b0(9`:,GxtB��&@&�&@&K5�5K`�����?e==e?1O6#,
#$
,#6OO��&��&&�&�5KK���������?!"'&'!2673267!'.."!&54632>321
��4��q#F�""�8'g��o#-��#,"t�Yg��>�oP$$Po�>�	��Z�e�p#����)�R��0���+I@$$@I+����+332++"&=#"&=46;.7>76$  ������@����ᅪ*��r���������@��@�����������r���'/2+"&5".4>32!"&=463  �&@��~[���՛[[��u˜~���gr�������&�`����u՛[[���՛[~~@��r������=E32++"&=#"&=46;5&547&'&6;22676;2  >�����``@``�ٱ��?E,��,=?��r�������H�����@``@�GݧH`�j��j���r������BJ463!2+"&=32++"&=#"&=46;5.7676%#"&5   &@�~���``@``�� �v�X����r�������&���������@``@����+BF��`r������ks463!2+"&=32++"&=#"&=46;5&547'/.?'+"&5463!2+7>6 %#"&5   &@�~���``@``��~4e	
0
	io@& �jV	
0
	Z9�������r�������&���������@``@�G�ɞ5o
,
sp� &@k^
,
c8~~��`r�������8>KR_32++"&=!+"&=#"&=46;.767666'27&547&#"&'2#"�����@�@���'�Ϋ���'������sg��gs�����ww�@����sg��g����@����@���-ss��ʃl������9���9��������OO���r9���9��FP^l463!2+"&=$'.7>76%#"&=463!2+"&=%#"&54'>%&547.#"254&' &@�L?����CuГP	��v�Y�� &@�;"����������ޥ�5݇�����ޥ���5�`&����_��ڿg��w��BF�@&����J_	s���&��&�����?%x���������%x��JP\h463!2+"&='32++"&=#"&=46;5.7676632%#"&56'327&7&#"2#"� &@�L? ���ߺu�``@``��}
�ຒ�ɞ���������ue��eu�9����ue��e�&����_��"|N�@``@��"��"|a~���l����o����9���9��r9��@�9���;C2+"&5"/".4>327'&4?627!"&=463  �&@Ռ		.	
�N~[���՛[[��u˜N�		.	
����gr�������&�`֌
	.		�O��u՛[[���՛[~N�
	.		��@��r������9A'.'&675#"&=46;5"/&4?62"/32+  ��'��֪�����\
	.		�4�		.	
\���r������|��ݧ���憛��@�\		.	
��
	.		\�@��r�����~9A"/&4?!+"&=##"$7>763546;2!'&4?62  m��		-

���@���ݧ���憛��@&�

-		�@r������m4��

-		����ٮ*�������		-

��r������+"&5&54>2  ����@��[���՛[�r�����������dG�u՛[[���r������  ".4>2������r�[���՛[[���՛�r������5�՛[[���՛[[����$2#!37#546375&#"#3!"&5463�#22#�y��/Dz?s����!#22#�2#��#2S�88�	����2#V#2��L4>32#"&''&5467&5463232>54&#"#"'.K���g��&Rv�gD�
$*2%	+Z hP=DXZ@7^?1
۰��3O+�l��h4���`���M@8'�+c+RI2
�\�ZAhS�Q>B�>?S2Vhui/�����,R0+	ZRkm�z�+>Q2#"'.'&756763232322>4."7 #"'&546��n/9�b�LHG2E"D8_
p�dd���dxO�"2�xx��ê�_�lx�2X	
!+'5>-�pkW[C
�I
I@50�Od���dd��˥�Mhfx�����x^���ә�	�#'+/7!5!!5!4&"2!5!4&"24&"2!!!��� 8P88P�� 8P88P88P88P����������P88P8 ���P88P88P88P8� ������������+N &6 !2#!+"&5!"&=463!46;23!#!"&54>32267632#"_����>�@`

��
�
��

`
�
� L4Dg��y� 6Fe=O���O�U�4L��>����
�
��

`
�
`

��4L�2�y5eud_C(====`L4����3V &6 #"/#"/&54?'&54?6327632#!"&54>32 7632_����>���		�	
	��	
	�		��		�	
	��	
	�		��%%S��y� 6Fe=�J�%��>����	
	�		��		�	
	��	
	�		��		�	
	��%65%S�y5eud_C(zz.!6%$!2!!!46;24&"2!54&#!"�&���&�&@�Ԗ��V�@&&�@��&&�Ԗ�Ԗ@��&���3!!!	!5!'!53!!	#����7I�e�����eI7��CzC�l��@�����@������@�#2#!"&?.54$3264&"!@������մ���pp�p���������((��������p�pp����#+/2#!"&?.54$3264&"!264&"!@������մ���^^�^@����^^�^@���������((��������^�^^�����^�^^�����v(#"'%.54632	"'%	632U�/�@��k0�G��,�zD#[�k#�
/t�g��
F��
����Gz�����	#'#3!)
p�*�xe���0,\8�����T���#/DM�%2<GQ^lw�����
&'&676676&'&7654&'&&546763"#"'3264&7.>&'%'.767&7667&766747665"'.'&767>3>7&'&'47.'.7676767&76767.'$73>?>67673>#6766666&'&6767.'"'276&67&54&&671&'6757>7&"2654&57>&>&'5#%67>76$7&74>=.''&'&'#'#''&'&'&'65.'&6767.'#%&''&'#2%676765&'&'&7&5&'6.7>�&5R4&5S9
W"-J�0(/�r
V"-J�0(.�)#"6&4pOPpp�c�|o}vQ�[�60X�Q��W1V�	
#5X		N"&
.
)
D>q J:102(z/=f��*4!>S5b<U$:I o<G*	,
&"O	X5
#!

��	R N#
C
83J*��R	!(D
#%37	�;$-.�
(,��覦�6ij
�	���"���)9
E�%����!B83
	j9�6/,	:QD')yX#�63V
��b�a	,
Ue��LPA@���*	̳�`Xx*&E
V36��%	B3%	B3XA	
#!.mU"A	
#!.mUB-#2+Jii�i�m-C<I(m��8qF/*)0�S
		
I
E5&+>!%
(!$p8~5..:5I

~��T�
4~9p# !
)& ?()5F	1	
	
� d%{v*�:
 @e
s|D�1d {�:�*dAA|oYk'&��<��tu��ut�&vHC�XXTR�;w��
��71™
Z*&'
1	9?	.

$��Gv5k65P<�?8q=4�a	
SC"��1#<�/6B&!ML	�^;�6k5wF1<P�C	�;$"&462"&46232>.$.�`�aa��sa�``��Z9k����'9؋ӗa-*Gl|M�e_]`F&O������ܽ�sDD!/+�``�aa�``�a1<YK3(
 /8HQelA�Z3t_fQP<343J;T7Q�+?Kgw  $6&$  $&62+"5432+"&=.54  $;26=462;26=4& 4&#!"3!26)����߄��4R4߄��mlL�������r {jK#@#Q�a����^�����@���@���`&��&&�&�������߄��4R4�Ď������LlL�N� �@K5#:rr:#5K���^����a�a��``]��]``����&&�&&	/!3#4&#!"3!265##!"&5463!22�������@K5^B��B^^B@B^5K���� �@���5K�B^^B�B^^B�K	/!2##!"&5463!2#4&#!"3!265�5KK5^B��B^^B@B^���@��K5��5K�B^^B�B^^B�`� �@ 	/!2##!"&5463!2#4&#!"3!265�5KK5^B��B^^B@B^���@��K5��5K�B^^B�B^^B�`� �@ 	/!2##!"&5463!2#4&#!"3!265�5KK5^B��B^^B@B^���@��K5��5K�B^^B�B^^B�`� �@ 	+2##!"&5463!2#4&#!"3!265�5KK5^B��B^^B@B^���@�K5��5K�B^^B�B^^B�`� �@ �{#!&'#"'&547632m*���
�0���((�'(�$0K
��*�*��% 3#!3# '!#53 5#534!#53 6!3@����@@@��pp��@@@����@@pp@��`������� �����	�+/7;A#3!5!!3#!!5!35!355#%53#5!#35#!!!!!!!!����������������������������������������������������������������������
�	#'+/3?CGW#3!5!!35!!3#!!5!#!5!3535!355#%#3%!53#5!#35#!5##5!3!5!3!5	����������������������������������������������������������������������������������������������������������������!"&5463!2!"!�`(88(@(8�`(8�}2�2R �`8(@(88(�`8HR2�2���##6?6%!!!46#!"&5463!2x���� ��8�(�`(�(88(@(8�
���� (8��(`�(8(@(88��	�'ATd+5326+5323##"' %5&465./&76%4&'5>54&'"&#!!26#!"&5463!2�
��

���i�LCly5�)*H�celzzlec0h�b,,b�eIVB9@RB�9�J_�L4�4LL44L44%��2"��4��:I;p!q4b�b3p(P`t`P(�6EC.7B�I6�4LL44LL��	�.>$4&'6#".54$ 4.#!"3!2>#!"&5463!2Zj��b�jj[���wٝ]�>o��Ӱ�ٯ�*�-���oXL4�4LL44L'�)�꽽�)�J)���]��w����L���`��ֺ��۪e���4LL44LL�;4&#!"3!26#!"&5463!2#54&#!";#"&5463!2�
��

@
�^B��B^^B@B^���
��

��B^^B@B^`@

��
M��B^^B@B^^>��

��
�^B@B^^��5=Um	!	!!2#!"&=463!.'!"&=463!>2!2#264&"".54>762".54>762��������?(`��`(?��b|b��?B//B/�]�����]FrdhLhdrF�]�����]FrdhLhdrF@�@��@�(?��@@?(@9GG9@/B//B�aItB!!BtI�Ѷ�!!��ьItB!!BtI�Ѷ�!!��ь�-M32#!"&=46;7&#"&=463!2#>5!!4.'.46�ՠ��`�@`ՠ��`���M�sF�Fs�MM�sFFs�M����ojj�o��@@�jj�@@�<���!(!���!(!�-3?32#!"&=46;7&#"&=463!2+!!64.'#�ՠ��`�@`ՠ��`��	�	Dq�L�L�qD����ojj�o��@@�jj�@@B>=�C�����-3;32#!"&=46;7&#"&=463!2+!!6.'#�ՠ��`�@`ՠ��`��UVU96�g�g�6����ojj�o��@@�jj�@@β����**ɍ�-G32#!"&=46;7&#"&=463!2#>5!!&'.46�ՠ��`�@`ՠ��`���M�sF�Fs�M�k�k�����ojj�o��@@�jj�@@�<���!(!3��3!(!�9I2#!"&=4637>7.'!2#!"&=463��@b":1P4Y,++,Y4P1:"�":1P4Y,++,Y4P1:"b�@@��@7hVX@K-AA-K@XVh77hVX@K-AA-K@XVh7����Aj"#54&#"'54&#"3!26=476=4&#"#54&'&#"#54&'&'2632632#!"&5&=4632>3265K @0.B @0.B#6'&�&
l
@0.B 2'	.B A2TA9B;h" d�
mpP��Tl��L�c�_4.H�K5�]0CB.�S�0CB.�/#��'?&&)$�$)�0CB. }(AB.�z3M�2"61�d�39�L/PpuT(If�c�_�E�`1X"#4&"'&#"3!267654&"#4&"#4&26326#!"&'&5463246326�\B B\B�&@5K�&@�"6LB\B B\B ��sc�i�L}Q�P<m$��3�jN2�c�B.�p.BB.���3K5+"�3,"� �.BB.��.BB.���.�G=�c�i�(+�lOh7/DVj�"�c�=���&5Jb�#"'&=.547!"&46;'.54632!2327%.54&#"327%>%&#"!"3!754?27%>54&#!26=31��?>I��j��jq,J[�j.-t�j�lV��\���$B.R1?@B.��+?2`$�v5K-%��5KK5�.olRIS+6K5�̈$B\B 94E.&�ʀ�15uE&
�Ԗ�Pj��j�dX�U�GJ7!.B
�
P2�.B
�
%2@	�7�K5(B�@KjKj�?+f�UE,�5K~!1��.>F.��F,Q5*H��$b2#!"&=%!"&=463!7!"&'&=4634'&#!">3!!"3!32#!"3!23!26=n$<vpP��Pp���Pp�w�*�Rd�ApP�]��'@�A&
3@��&H-�[(8@
2�EB^&1
=&�&81����PppP��pP w���cOg Pp��c�
4& #.& &,,:8(�%^B &�
.�&&��2t"&'&54'&5467>32>32>32#"#.#"#.#"3!27654&#"547654&#"#654&�Mye
t|]�WS�Sg�SY�\x{
70"1i�92�DU1&=	��	=&0@�c	>&/Btd4!�*"�8K4+"��@H@/'=	t�?�_K�93-�]�
UlgQ���QgsW
�]#�+�i>p&��3�0&�VZ&0B/
���%3B.�"t�o ){+C4I��(
/D0&�p0D��3[_cg"'&#"3!2676=4&"#54&#"#54&#"#4&'2632632632#!"&'&5463246#!#!#�5K�)B4J�&@�#\8P8 @0.B J65K J6k�
cJ/4qG^�\hB�2<m$��3�iG;��     �K5����6L4+"�3p`b�)<8(=0CB.@Z7OK5`:7O��k�EW�^�tm��@Q7/DVi�##j�������������%4Ia�2#!"&5&546325462632"32654&"3267654&76;74&"#.#"2676=#"&'+53264&#!"3</�U�X�dj���jP��ԖEu�!7JG72P
�
B�%
�
B.!7�	@�A�f+?�jKjK@�B(5K,EU�H*5Q,F��.F>.��1!~K5y?��^\��Vl�j�t-.j�[J,qj��j��I7$��?1R.B�+��.B$`2?g�vEo.�5KK5��%-K��6+SIR[��&.E49 B\B$���5K�G#!+"&5!"&=463!2+"&'+"'+"'&5>;2>76;2Y
��
�
��

M	

�.�x	�-�
	N�	�


�	�
�u
��
,
u
�?

L�W���

���#	�	*:J4'&+326+"'#+"&5463!2  $6& $&6$ <!T{�BH4�	�›�&�>UbUI-����uu�,�uu�ڎ������LlL�AX!��J��m����f\�$
6u�����uu�,�K������LlL���-[k{276/&'&#"&5463276?6'.#"!276/&'&#"&5463276?6'.#"  $6&  $&6]�h-%Lb`J%E5
,5R-����h
-%Lb`J%E5
,5R-���'����uu�,�uu��lL�������/hR

dMLcN����hR
dMLcN����1u�����uu�,��������LlL�@��� 	'	7	'7	�����`��`H� �����`�`H� �!`��������`H� � ���`�`�`H���`��'%		7'	7'7	' $&6$ ���X�`��(W�:,�:��X�`��(WL�������LlL�X�`(W��:�B����X�`���(X�������LlL��
��	$%/9ES[�#"&54632$"&4624&"26$4&#"2%#"&462$#"&4632#"32&! 24>  !#"&'.'#"$547.'!6$32�7&'77'&7�7N77N�'q�qq�q�qPOrq��E�st�����ts��st���}�||�}�������uԙ[W��Q���~,>	n������P/RU P酛���n	>,m�����'77'&77N77N6^Orq�qq�qq�q�t��棣棣�(~|��|on[��usј^�~���33������pc8{y%cq����33dqpf��	L 54 "2654"'&'"/&477&'.67>326?><����
x
�������,

(-'s�IVC��VH�r'-(

$0@!BHp9[�%&!@0$u
��
������]\��\]��-$)!IH��V
D��
VHI!)$-#3���6>N"&462."&/.2?2?64/67>&  #!"&5463!2�]�]]�3
$;
&|�v;$
(CS�3�1	=�rM=	�4�TC(G���z�w�@w��w�w���]]�]��($-;,54�0=	�sL	=�45,;�����@w��w�w������(2#"$&546327654&#"	&#"AZ�������\@�/#�%E1/#����#.1E$�!�[A�����懇�@�@\��!�#21E!��6!E13"�|!��	gL&5&'.#4&5!67&'&'5676&'6452>3.'5����A5R��V[t,G'Q4}-��&�<C!l n?D_@Փ>r!�
��G;��>��!g�1�����2sV&2:#;��d=�*'�5E2/..F�D֕71$1>2�F!���&12,��@K�
r��#"&5462>%.#"'&#"#"'>54#".'7654&&5473254&/>7326/632327?&$  $6 $&6$ �!&"2&^	u��_��x��^�h
;J݃HJǭ
q�E
Dm!
M�
G?̯'%o�8
9U�������(F(�ߎ������LlL��&!&!SEm|�[��n{�[<ɪ
"p� C
Di%
(K�HCέp�C
B
m8	
@Kނ
H�F(���������������LlL���"*6%&6$	7&$5%%6'$2"&4}���x����3��n��QH������:dΏ���Xe�8�����z��'	������l�i���=!��7�����S�o�?v�������M '&7>>7'7>''>76.'6'���El:F�gr
*�t6�K3UZ8�3P)3^I%=9	)<�}J���k+C-Wd��	&U���-��TE+]��Qr-�<Q#0
�C+M8	3':$
_Q=+If5[ˮ&&SG�ZoM�k���ܬc�#7&#"327#"'&$&546$;#"'654'632ե›��fKYYKf�¥y�ͩ���䆎�L��1���hv�v��ƚw�wk��n�]��*��]�nlx��D��L�w�����~?T8b��b9SA}����+5?F!3267!#"'#"4767%!2$324&#"6327.'!.#"��۔c�2�8�Ψ����-\���?���@hU0KeFjTl�y�E3��aVs�z�.b��؏��W80��]T��Sts�<�h�O��_u7bBt���SbF/�o��|V]SHކ�J�������34&#!"3!26#!!2#!"&=463!5!"&5463!2
��

@
�^B� `��`� B^^B@B^ �

�@
�@B^�@@�^B�B^^����>3!"&546)2+6'.'.67>76%&��F8$.39_��0DD�40DD0���+*M7{L *="#
U<-M93#�D�@U8v�k�_Y	�[�hD00DD0��0D�ce-JF1BD����N&)@
/1 d��y%F��#"'&'&'&'&763276?6#"/#"/&54?'&763276"&'&'&5#&763567632#"'&7632654'&#"32>54'&#"'.5463!2#!3>7632#"'&'&#"'&767632yq������oq>*432fb������a
$�B?
	>B
BB
AA�.-QP���PR+	42
%<ci���ђ:6&h�HGhkG@n�`��I���Ȍ5
!m��(|.mzy�PQ-.	
	je����	
�����q>@@?pp�gVZE|fb6887a
%RB?
=B
ABBAJvniQP\\PRh!cDS�`gΒ��23�geFGPHX�cCI��_ƍ��5"	
�n�*T.\PQip�
[*81
/
9@:��>t�%6#".'.>%6%&7>'.#*.'&676./&'.54>754'&#"%4>327676=
>���vwd"

�l����"3	/!,+	j2.|��%&
�(N&w���h>8X}x�c2"W<4<��,Z~�fd�aA�`FBIT;hmA<7QC1>[u])		u1�V(�k1S)
-�	0�B2*�%M;W(0S�[T�]I)	A 5%R7<vlR12I]O"��V/,b-8�/_��#3CGk2#!"&546;546;2!546;2%;2654&+";2654&+"!32++"&=#"&=46;546;24LL4��4LL4�^B@B^�^B@B^�@@�@@�����@��@L4�4LL44L`B^^B``B^^B``�� �� ��@@��@���#3W#!"&=463!2!!%4&+";26%4&+";26%#!"&546;546;2!546;232���@�����@@@@�L4��4LL4�^B@B^�^B@B^�4L�@@��� �� ��N�4LL44L`B^^B``B^^B`L��#'7Gk%"/"/&4?'&4?62762!!%4&+";26%4&+";26%#!"&546;546;2!546;232W.	
��
	.		��		.	
��
	.		��	� ����@@@@�L4��4LL4�^B@B^�^B@B^�4L�.		��		.	
��
	.		��		.	
��
��� �� ��N�4LL44L`B^^B``B^^B`L��(8\	"'&4?6262!!%4&+";26%4&+";26%#!"&546;546;2!546;232�

��		.	
��
	.	�`����@@@@�L4��4LL4�^B@B^�^B@B^�4L<�		 
	.		��		.	�:� �� ��N�4LL44L`B^^B``B^^B`L�2632632#!"&5463�&&&&��&&&���&���&��&&�&�#27+"&5  %264&#"26546��>&�&T�,��X�������q&&�1��X��,�LΒw�%��%;#!"&5463!546;2!2!+"&52#!"/&4?63!5!�

�(��&&@&�&(��&�&@&&��(�

�(�

�&&@&&@��&&�&�&�

�����#''%#"'&54676%6%%�������
�hh �@�` ���!�� ���!� ��
��
��
�
������
�#52#"&5476!2#"&5476!2#"'&546
� 
��
� 
���
�
�@�
�
�@�
��
�@

�
� 84&"2$4&"2$4&"2#"'&'&7>7.54$ �KjKKj�KjKKj�KjKKj��d�ne���4"%!������KjKKjKKjKKjKKjKKjK.���٫�8
!%00C'Z���'���.W"&462"&462"&462 6?32$6&#"'#"&'5&6&>7>7&54>$ �KjKKj�KjKKj�KjKKj�h��я�W.�{+9E=�c��Q�d�FK��1A
0)����LlL��jKKjKKjKKjKKjKKjK���p�J2`[Q?l&�����٫�C58.H(Y���ee���	�

			���Y'����w��(�����O��'��R���@$#"&#"'>7676327676#"�
�����b,XHUmM�.�U_t,7A3ge
z9@xS���a�Q�BLb�(�	����V���U�����
!!!�=�����=���w)��������AU!!77'7'#'#274.#"#32!5'.>537#"76=4>5'.465!��KkkK_5 5�� �#BH1��`L

I���&�v6��SF���!Sr99rS!``� /7K%s}H���XV
��P��V	e��		V�d/9Q[ $547.546326%>>32"&5%632264&#"64'&""&'&"2>&2654&#";2���P���3>tSU<�)tqH+>XX|W��h,�:USt��W|XX>=X*
)���)
+�^X^�|WX=>X�:_.2������//a:Ru?�
	
Q%-W|XW>J�(	�=u��>XX|WX�`

*((*


+2		2�X>=XW|E��03>$32!>7'&'&7!6./EU����noh��i����I\�������0<{ >ORD��ƚ�~�˕V�ƻ��o�R C3��7J6I`��Tb<�^M~M8O����	�	
5!#!"&!5!!52!5463	^B�@B^���`B^�^B `��B^^"�����^B��B^��0;%'#".54>327&$#"32$	!"$&6$3 ##320�J�����U��n��L�n��ʡ���~~�&��q�@�t�K�����L��}�'`� -
-�ox����nǑUyl}��~������~�F����ڎ�LlL��t�`(88( ��	7!'	!���\W�������\���d;����tZ�`_��O��;���}54+";2%54+";2!4&"!4;234;2354;2354>3&546263232632#"&#"26354;2354;2354;2�````��p�p��`�`�`� !,! -&M<FI(2�`�`�`�����@PppP���pppppp�#  #
�
�pppp��p	�j#"'&=!;5463!2#!"&=#".'.#!#"&463232>7>;>32#"&'#"!546���	��%. `@��` :,.',-���Xj��jX�h-,'.,: kb>PppP>bk .%Z �&�
�:k%$> $`��`6&L')59I"Tl�ԖlT"I95)'L&69Gp�pG9$ >$%k:��!+32&#!332 $&6$ ~O8��8���O�����������LlL�>pN
�����
i������LlL����	'':Ma4&'#"'.7654.#""'&#"3!267#!"&54676$32#"'.76'&>$#"'.7654'&676mD5)
z�{��6lP,@Kij��jOo�Ɏ���ȕ>>��[t��a)GG4?a�)
ll
>�;_-/
9GH{�z�yN@,K�ԕoN��繁������y��!
?hh>$
�D��"
>��â?$��	n"&5462'#".54>22654.'&'.54>32#"#*.5./"�~��~�s�!��m�{b6#	-SjR,l'(s�-6^]It�g))[��zxȁZ&+6,4$.X%%Dc*
&D~WL}]I0"

YYZ��vJ@N*CVTR3/A3$#/;'"/fR-,&2-"
7Zr�^N��a94Rji3.I+

&6W6>N%&60;96@7F6I3���+4&#!"3!26%4&#!"3!26 $$ ��������^����a�a`@��@����^����a�a�����'7  $ >. %"&546;2#!"&546;2#/�a����^�����(�����������������^����a�a����(������N@��@�����4&#!"3!26 $$ @��@����^����a�a`@����^����a�a�����'  $ >. 7"&5463!2#/�a����^�����(��������n@����^����a�a����(������N@���%=%#!"'&7!>3!26=!26=!2%"&54&""&546 �#��#]V�TV$KjK�KjK$��&4&�Ԗ&4&�>��9G��!�5KK5��5KK5�!��&&j��j�&&����#/;Im2+#!"&'#"&463>'.3%4&"26%4&"26%6.326#>;463!232#.+#!"&5#"�5KK5sH.�.Hs5KK5e# )4# %�&4&&4&�&4&&4&` #4) #%�~]�e�Z�&�&�Z�e�]E-�&��&�-EKjK�j.<<.�KjK��)�#)�`"@�&&�`&&�&&�`&&�)#�`)"�d�Xo&&oX�G�,8&&8!����O##!!2#!+"'&7#+"'&7!"'&?63!!"'&?63!6;236;2!2�@�@�8��@7

8��Q�
	N�Q�
	N��
	8G@��

8GQ�
	N�Q�
	N7
	�������8��8��H��H��k��%		".>2I�������2�0�]@��]��@o�����o@@o�����o㔕����a�22���]����]�p�^���|11|�9�9�|11|�(��%7'7'	'	7T���� d���lt��l)q��n�������luul�������)1$4&"24&"2 &6 +"&5476;2 &6 LhLLh�LLhLLhL����>�
�� �&
  �&�`����>�hLLhLLhLLhL�����>����&�&�����>��G��
	.7)1!62	1!62h��e�������2�20e���2�2>�	v
+4�	[��d����+
���d� �135#5&'72!5!#"&'"'#"$547&54$ ���Eh���`X����(����cY���z�:L:�z���Yc��������\$_K`Pa}��f��iXXiޝf���a���	���(+.>#5#5!5!5!54&+'#"3!267!7!#!"&5463!2����U�`��`' ����� �����j��j�V>�(>VV>�>Vq����������������(^����(>VV>�>VV�=&'&'&'&76'&'&.' #.�h8��"$Y
''>eX5,	,Pts�K�25M�RLqS;:.K'�5�R

Ch���h�����R�t(+e�^TT���u B"$:2�~<�����2�Hp����wTT�� V�/7GWg. %&32?673327>/.'676$4&"2 $&6$   $6& $&6$ d-����-�m	
	,6*6,	
	m���KjKKj�o������oo���K����zz�8�zz�Ȏ������LlL�U4>>4-.��YG0
)�xx�)
0GYޞ.�jKKjKq���oo��oo�lz�����zz�8�0������LlL��D��/7H#"'.7'654&#"'67'.6?>%"&46227#".547|D,=),9#�7��[͑�f�x���!X: �D�$+�s)�hh�i��jZ������t�<��F/��*8C,�q؜�e���\�r,W�BX���/C2��h�hh���=�t������Xm�����>NZ+"&=46;2+"&=4>7>54&#"#"/.7632  >. $$ p��=+& �35,W48'3	l
z����ff���ff�����^����a�aP���2P: D#;$#
$*;?R
��Cf���ff�����^����a�a��'�Y	>O`"&5462&'.'.76.5632.'#&'.'&6?65��\\�[�<C��z�C
25�U#
.�ZK ��m+[$/#>(	|�	r���[A@[[@A�#2#�
����7�*
<Y���$
+}"(��
�q�87] F 	_��1)
��	�	#1Ke34&+326+"&=!#!"&763!2#!"&5463!2#>?4.'3#>?4.'3#>?4.'3��Xe`64[l�����7
��
,	L;�����=+3&98&+)>�>+3&98&+)>�=+3&88&+)>	�Wj�|r�>Q$��~���d$kaw+-wi[[\�;/xgY$kaw+-wi[[\�;/xgY$kaw+-wi[[\�;/xgY���J\m�4.'.'&#"#"'.'&47>7632327>7>54&'&#"327>"&47654'&462"'&476'&462"'&47>&'&462i$		$^"

%%

"^$		$W "@9O?1&&18?t@" W�&%%&4KK�6pp&4���6ZaaZ&4mttm�^x	-���-	x^=/U7Ck���kz'[$=�&5%54'4&K�K�4r<r4&��X��4[��[4&m����m��'/7?GOW_gow����"264$"264"264"264$"264"264$"264"264"&462"&462"&462"&462"&462"&462"&462"&462"&462"&462"&462"&462�^^�^��^^�^^�^^�^��^^�^��^^�^���^^�^��^^�^^�^^�^� p�pp�pp�pp��pp�pp�pp�pp��pp�pp�pp�pp��pp�pp�pp�pp��pp�pp�pp�pp��pp�pp�pp�pp�`^�^^�^^�^^�^^�^^��^^�^^�^^�^^�^^�^^�^^�^^�^^�^^���pp�pp�pp�p��pp�pp�pp�p��pp�p���pp�p��pp�p���pp�p��pp�pp�pp�p��pp�pp�pp�p	��LTi{�"&4626"&462$"&462#"&4632654>7>54 "&54>2"&462%"&54&#""&546 %#"&'&'.7>#"'&'.7>�&4&&4�&4&&4SZ��&4&&4�4$#&�&&j�3$"('$������&4&[���՛[��&4&&4F&4&�]\�&4&�$��
	!D�4�%	,\�4�4&&4&�4&&4&-�Z�4&&4&;cX/)#&>B)��&4&�j9aU0'.4a7����&&u՛[[���4&&4&@&&]��]&&��Ώ0
�u4��0
)�4���#g�&'.#"32676%4/&#"326'&#"2632#2+&'%#"'&6?676676632%#"'&6767#"&'&6767#"'.7>327"#"&'&6763"'.7>;7632;>%5K$
"0%>s$
"0%>;;>%5K�VL#>H30
\�($$(�\���(�є�yO2F/{�(?0(TK.5sg$��є�y#-F/{�$70(TK.5sg$L#>H30
\�($$(�\#�(@5"'K58!'"5�8!'"55"'K#dS$K		K$Sdx#@1
w�d>N;ET0((?
-
2K|��1
w�����d#N;ET0$(?
-
2K$#dS$K		K$Sdx�DN\2654& 265462"2654 #"32654>7>54."/&47&'?62 &4&���&4&���h�՛[&4&r$'("$3�j&&��&#$4[����"�@��GB�[�
"�&&��Β&&]���[��u&&����7a4.'0Ua9j�&4&�)B>&#)/Xc;u՛����"�"
�G�i[����Xh#"&54676324&'&#"'>54#"32#"54>54'.#"32>7>767632326#!"&5463!2b
)
:4FD�N

[�1�,^�J��K-*E#9gWR�Yvm0O	��w�@w��w�w��C2�2c@X�&!�9{M�A���_��"S4b// DR"Xlj�PY<	�@w��w�w��%���e4.#"32>7676#'.#"#"&54>3232>754&*#"&54>763 >32�
''il$E/
@�P@��
^��`��'W6&�!.. ! -P5+


�E{�n46vLe�Vz�:���,SN/
M5M[��
	]$�[��^��5�iC'2H&!(?]v`*	��l�	��b��$9>
���=R�2
#"&5467%!"&7>3-.7>;%.7>322326/.76/.'&6766/&/&#"&676	&676&6766/&672? �=1�(H/ ��	'96&�@)9<'���)29%
�&06#���#��$� J� �07j)�5@�"*3%�"!M
��%#K�"%N�e8)'8_�(9�.<�c +8 8(%6 <)'4@@)#-<^
?%$-`%.
}Q!&�}%&N�-l���IJ�;6>/�=*�%8!Q ���#P"�\Q#N&�a��)<9�bR]mp%"'.'&54>76%&54763263 #"/7#"'#"&/%$%322654&#"%'OV�9
�nt
|\d
ϓ[��nt
|@�D:)��	
;9�8'+|�j�," �41����CH^�nVz(�~R	�9�\'	�r�

@����L��@�
	@�w4�6�HI(+�C
,��55,��
f[op@�\j�;(zV~����i/5O#"'&54>32&#" 654'67'"'>54''&'"'6767&546767>7���蒓��`V BM���R� B9)̟�!SH-77I�Xm�SM�H*�k#".o;^J q�ן���ד��>@�����YM
$bK���d ��ү[E"����;���Kx%^�6;%T,U:i�m=Mk���).DT4'"&5463267&#" 6;64'.'4'>732676%#!"&5463!2),�蛜s5-<A���4ϲ
2W9
�&P:\�3)SEPJ��D4:3NI�w�@w��w�w��NE	2@u��us�+,�����/?x�sa�tmP�'�)fHVEA(%dA4w&4J5*�@w��w�w�����O[4'.'&54>54&#"#"'654'.#"#"&#"3263232>3232>76 $$ �Cf'/'%($�U�L
(
#'/'@��3#@,G)+H+@#3
����^����a�a�X@_O#NW�#O_�.*	##(��^����a�a����q�[632632#"&#"#".'&#"#".'&54767>7654.54632327&547>P��9	B6?K?%�O4�T% >6>Z64Y=6>%S�4N�$?L?4B	@���{:y/�$ ,'R�!F!8%
#)(()#%:!F �Q'+%�0z:�z���O_4'.'&54>54&#"#"'654'.#"#"&#"3263232>3232>76#!"&5463!2Cf'.'%($�V�M
)
#'.'@��
3
#A,G)+H+A#
4
��w�@w��w�w��XA?4N$NW�&M&L�/*
##	+�@w��w�w����	O$>?>762'&#"./454327327>7>	EpB5
3FAP/h����\�/NG�S�L�	� ���R�P*��m�95F84f&3Ga4B|wB.\FI*/�.?&,��5~K %
&��Y."7n<	"-I.�M`{�ARwJ!�FX^dj''''"'7&'7&'7&'7&547'67'67'67'63277774$#"32$			*��'ֱ,?�g=OO&L&NJBg�;1��'����'ֱ.=�gCIM
$'&&NJBg�=.��%�����w؝\\��w�
�I�o�o��<�<���-NIDg�=/��%����(ײ+A�hEHO*"#*OICh�=/��'����(ֲ/=�h>ON.��]��xwڝ]��������7��e��[���@�����)6!!"3#"&546%3567654'3!67!4&'7S��gn�y]K-�����#75LSl>�9���V��%�cPe}&H�n��_�HȌ����=UoLQ1!��4564���7U�C"�
�!-9[nx��"&46254&"326754&"326754&"26754&"26#".547632632626326'4#"#"54732764&"264.#"327632>#"'"'#"'#"&5#"'67&'327&'&54>3267>7>7>32632632T"8""8�)<())�(<)))�)<))<)�)<))<)T�د{ՐRh�x=8 78 n 81
p��H_6�S��oc
�F@b@?d?uK�bM�70[f5Y$35KUC<:��[;+8 n 87 8/8Zlv]64qE 'YK�0-AlB;
W��#;WS9
&�(#-7Z�://:/�Tr++r,,r++r,,r++r,,r++r,,ʠ�g��xXV�ע��e9222222^�K�Vv���F0�2OO23OO��`�lF;�mhj84D�ro��B@�r+@222222C0DP`.�r8h9��~T4.&o�@9��1P���%14'!3#"&46327&#"326%35#5##33 $$ ����}Pc��c]<hl���ࠥ�Ymmnnnn���^����a�aw!�LY�Ə;ed����wnnnnnv�^����a�a��%�'#"$#"#.5462632327>321��I��U�Π?L���L?��cc�4MX�&��04;0��XpD[��[DpD,)&&�Q	9V\�26&".'&'&6?.#"#26327677>'32>&3#'&+"?626&"#!'.'!"&5463!>;26;2!2�P  P 	
92#.}S�P9:�:%L\B�� )spN/9oJ5 
!+D�`]�Bg�Y9�+�,�9%
Pk4P  P &�NnF!_7*}B<�{o0��&&�B;*<@$ucRRc�#@16#37c&�@@@
J"@*4�^`E�D�B�����o/8927
*@O�LC�!T!32�3X$�BJ@@@��&AS
0C59"'D/&�&D488$5A&�%O#!"&547>7>2$7>/.".'&'&2>^B�@B^>FFz�n_0P:P2\n�zFF>��R&�p^1P:P1^��&R
P2NMJMQ0Rr�.B^^B�	7:5]yPH!%%"FPy]5:7	���=4�QH!%%!H�t4=�<"-/ ?�1Pp+".'.'.?>;2>7$76&'&%.+"3!26#!"&54767>;2�'
+�~'*OJ%%JN,&x�'%^�M,EE,M7�ZE[��P*FF*P��:5
�
�^B�@B^){�$.MK%%KM.$+��X)o3"�a  22!]�4	I�>"">�,�&�S8J�B##B��12�`
��`B^^B�8&ra#11#$��R&��"&.2v%/%''%/%7%7'%7'/#&5'&&?&'&?&'&7%27674?6J�"�����0�<=���_gNU�?D��f���u�Y����G�b���7=^H^�`	�=v~yT������3����G���D��P�O	4F��ѭ����q������i_w\ހ�!1u�S���%V_-d�
���1=U{J8n~�r����'U4.#".'"3!264&"26+#!"&5463!232+32+32�0P373/./373P0T=@=T��֙�֙|`^B�@B^^B�B^`````*9deG-!

!-Ged9Iaa�l��lk���O��B^^B�B^^B�������	+Yi"&54622#!"&54>;2>+32+32+#!"&5463!2324&#!"3!26�֙�֙0.I/ OB��BO	-Q52-)&)-2�
``

``

`^B�@B^^B�B^`
�
�@

�
|k��kl����"=IYL)CggC0[jM4				
�
�
�
�
�B^^B�B^^B�
�@�

�@
���!1AQu4.#".'"3!24&"254&#!"3!2654&#!"3!2654&#!"3!26#!54&+"!54&+"!"&5463!2)P90,***,09P)J66S�����"��@��8��@^B��@�@��B^^B�B^U�kc9		9ck�U?�������@@88@@N�@B^````^B�B^^���!1AQu�#!"&4>32>72"&462#!"&=463!25#!"&=463!25#!"&=463!24&#!"3!546;2!546;2!26#!"&5463!2J6�6J)P90,***,09P)������"��@��8��@�
�@

`@@`
�^B�@B^^B�B^ՀUU�kc9		9c�������`@@�88�@@�2�

�@
````�@B^^B�B^^�(%.'"&' $&  #"$&6$ ��wC�ιCw�jJ~J�����>��������LlL�ś�JSSJ͛����>����6������LlL���$,  $&6654&$ 3 72&&  �lL������m�z�����z�B�l������>�������KlL�G���zz���G���>�����'7#!"&54>7&54>2  62654' '3�/U]B,ȍ����,B]U/OQ��н�Q������>�+X}��������}X�0b�Ӄ��ۚ�Ӆb0}�h��QQ��h�����>��f����f��#=#!"&4>3272"&462!3!26#!"&5463!;26=!2J6�6J)Q8P�P8Q)��������
�
�^B�@B^^B`�`B^V�VV�ld9KK9d��������`��
�@B^^B�B^``^���+;K[eu4.#"'"3!264&"254&#!"3!2654&#!"3!26%54&+";2654&#!"3!26!54&#!"!#!"&5463!2�"D/@�@/D"?,�,?�p�pp�p�@�����@����@����@�^B�@B^^B�B^D6]W2@@2W]67MM��pp�p��@@@@@@@@n`�@B^^B�B^^���+;K[eu#!"&54>3272"&462#!"&=463!2%#!"&=463!2+"&=46;25#!"&=463!2!3!26#!"&5463!2�?,�V,?"D/@�@/D"�p�pp�p�@�����@����@���
�
�^B�@B^^B�B^D7MM76]W2@@2W]֠pp�p��@@�@@@@�@@��`��
�@B^^B�B^^��A#"327.#"'63263#".'#"$&546$32326�������J9"65I).!1i���CC�u
+I�\Gw\B!al���݇���y�ǙV��/]:=B�>9�����+<F+a[le���Pn[A&JR7t�)��+�tH�������kFIK�e	� .��#"'&'>32%#!"&5463!2#"&54>54'&#"#"54654'.#"#"'.54>54'&'&543232654&432#"&54>764&'&'.54632� ?c��'p& ?b1w{2V	?#��&#9&�CY'&.&#+B

: &65&*2w�1GF1)2<)<'

(
BH=ӊ:NT :O	�)4:i F~b`e!}�U3i?fR����UX|'&'&I�c&Q
	*2U.L6*/
L:90%>..>%b>++�z7ymlw45)0	33J@0!!TFL����� P]=GS�-��kwm	!����*�(%6&692? $&6$ ��	' ����al�@l�������LlL���,&��EC
���h�$�������LlL���
/37;%"&546734&'4&" 67 54746 #5#5#5�p�pF:�:F�D<p�p<D�
����������
���������PppP<d��ud<M�-PppP�-�M����������Dž����9���������
/37;%"&546734&'4&" 67 54746 #5#5#5�p�pF:�:F�D<p�p<D�
����������
���������PppP<d��ud<M�-PppP�-�M����������Dž����9���������
/37;%"&546734&'4&" 67 54746 #5#5#5�p�pF:�:F�D<p�p<D�
����������
���������PppP<d��ud<M�-PppP�-�M����������Dž����9���������
/37;%"&5467534&'4&" 67 54746 #5#5#5�p�pF:�:F�D<p�p<D�
����������
���������PppP<d��d<M�-PppP�-�M����������Dž����9���������	+/37%"&54624&'4&" 67 54746 #5#5#5�p�pp�p�D<p�p<D�
����������
���������PppPOqqOM�-PppP�-�M����������Dž����9����������&.6>FNV^fnv~����"/&4?.7&#"!4>3267622"&4"&46262"&42"&4462"$2"&42"&4"&46262"&4"&46262"&42"&4$2"&42"&42"&4�

��

R

,H8Jfj��Q��hj�G^�R,

!4&&4&Z4&&4&�4&&4&��4&&4&&4&&44&&4&��4&&4&Z4&&4&�4&&4&��4&&4&�4&&4&��4&&4&&4&&4&Z4&&4&Z4&&4&

��

R

,[�cG�j�h��QRJ'A,

��&4&&4Z&4&&4Z&4&&4Z&4&&444&&4&�&4&&4Z&4&&4Z&4&&4Z&4&&4�&4&&4Z&4&&4Z&4&&4&&4&&4Z&4&&4Z&4&&4�%-5=EM}���������+"&=#!"'+"&=&="&4626"&462&"&462"&462&"&462&"&462#!"&=46;4632676/&?.7&#"!2"&462&"&462&"&462"&462&"&462&"&462"&462&"&462"&462��@?A�A?
@
�@R.�..R�@`�jlL.h)*��*$	%35K���..�..�.����u�vn�u���....��@@�j�N *��*.t2#K5���..R..R.��
@Hq '&'&54 &7676767654$'.766$76"&462&'&'&7>54.'.7>76�����������ȵ|�_ğ��yv���/ۃ�⃺����k]
:Bu�q��
CA
_k�ނ���XVo�bZZb�nW��|V	0 	Q2��-�
l��}���O		/	:�1���z	
q��%������z�G
4(

6�Ro�aą\�<

)4	J�}�������%!!#!"&5463!2�^B�@B^^B�B^�`�@B^^B�B^^���%#!"&=463!2^B�@B^^B�B^�B^^B�B^^�&))!32#!#!"&5463!463!2��`B^^B��^B�@B^^B`^B�B^�^B�@B^��B^^B�B^`B^^���#3%764/764/&"'&"2?2#!"&5463!2��

��

�

��

�

��

�

��
s^B�@B^^B�B^ג

��

�

��

�

��

�

��
�@B^^B�B^^���#'7"/"/&4?'&4?62762!!%#!"&5463!2�

��

�

��

�

��

�

��
�
�^B�@B^^B�B^��

��

�

��

�

��

�

��
��`�@B^^B�B^^�	! $&6$ .2�r��`�������LlL�f4��������LlL���#.C��&>"'&4762"/&4?62'"'&4762%'.>6.'.>6'>/>76&'&.'&7&'">?4'.677>7.>37654'&'67>776 $&6$ (4�Z�##
&##
&y�"�6&.JM@&� "(XE*$+8
jT<l$3-V<
2'.


-1
%#e"!Z�
+*)H	 8
(j

	#*
-ƷVv/kh?'��������MlM�$($�R#

&
"
#'#vZ@+&MbV$
�
G7
--)

R2T�
313dJ6@8lr2_�5m/."�G:=	)%5f0gt*2)?;CB66&, �	`48]USy������LlL���G6?>?3#'.'&!3!2>?3.'#!57>7'./5!27#'.#!"g�%%D-!gg<6W��WZe#1=/2*]Y3��-,����C1/Dx���] VF��I�q-H�����D2��NK'>*�%�R=f
07���=.
fD�]\|yu���,0>Seu#2#"'&5<>323#3#&'#334'."#"+236'&54.#"5#37326#!"&5463!2�		<	��zz�j��k-L+� )[$�8=".un/2 �^B�@B^^B�B^�5cy	
�
��(�ݔI�(8��?C�(3�>�� #"��($=�@B^^B�B^^0�K�S�&'.'&'./674&$#">&>?>'76'# "&#./.'7676767>76$w
.~ku�BR�]� T%z+",�|�ޟ���j<���)(!(	~ˣzF8"{���%%#5����)��}''�x��JF��0"H[$%��EJ#%
.Gk29(B13"?�@S)�5" �#9����dm�W"��;L�65R�A0@T.���$�}i`:f3A%%
BM<$q�:)BD	aa%`�]A&c|	�M��s!
Z
2}i[F&���**
< ��ʣsc"J<&Ns�F%���0@Wm6&'.6$.7>7$76".4>2.,&>6'"'&7>=GV:�e#:$?+%

q4����g
&3h�T`Zt�Q��м�QQ��м�pA������P1L������K!:<��}҈`d��l��b�,�9'


%%($!
���a3���)W)x
�������
о�QQ��о�QQ���cQ����ǡ-�җe)U�s2����XD\���ϼ�Yd����/?O_o���#"=#"=4;543#"=#"=4;543#"=#"=4;543#"=#"=4;543#"=#"=4;543%#!"&5463!2++532325++532325++532325++532325++53232�p00pp00pp00pp00pp00�8(��(88(@(80pp00pp00pp00pp00pp0� � � � � ��@(88(�(88� �� �� �� �� �/�Q�/&'%&/"&=.6?&?&'&6?'.>-#".6?'.>'&6'.>54627>%>76#"'%
%6��

2�7
2G
f���!)p&4&p)!��f
G2
7�2

��	*6���	"��
4�7
2G
f�!)p&4&p)!�f
G2
7�2

��"	���6*	�!k
3

j�&3
%,����*��&&ր*�9���%
3&�j

3
k!./!>��>$,*!k
3.j�&3
%�Ԝ9�*��&&ր*�ǜ,%
3&�j

3
k!*,$>��>!/.�&6.'&$	&76$76$�P��utۥiP��u��G��xy
��Զ�[xy
�-���_v١eN��uv١e	��=��u�ʦ�����[t7��8�X�
&6##'7-'%'&$  $6 $&6$ ��3��1�N��E0�����g��R�=|�����||�">"��������LlL����^��v!1f2i��Ђwg�fZQ�Q^>"�||�����||�w������LlL��&�Z�Xblw��������.'&>'&'&".'.'&&'&'&7>767>67>7626&'&>&'&>'.7>.676'&'&'&'.67.>7>6&'&676&'&676.676&'&>&'&676'.>6/4-LJg-$	6)j2%+QF)�b3FSP21DK2�AW")")�$??8A&A�E5lZm��=g�G2Sw*&>$5jD ���GH�yX/4F �r	1
	1�"�"!�l=6>��	6
,5./��'e



.*�|�Ed!
u&�&%&��	&��5d	
���))66@�C&8B@q��L?P^7	G-hI[q��:<�rS	U~97A_�IR`gp1	1	�;"("j?>"�T�6
,6 
&/`���LwQ'�	
��A	^	�	�	"�		$&	_	��	y		�	*�	<Copyright Dave Gandy 2016. All rights reserved.Copyright Dave Gandy 2016. All rights reserved.FontAwesomeFontAwesomeRegularRegularFONTLAB:OTFEXPORTFONTLAB:OTFEXPORTFontAwesomeFontAwesomeVersion 4.7.0 2016Version 4.7.0 2016FontAwesomeFontAwesomePlease refer to the Copyright section for the font trademark attribution notices.Please refer to the Copyright section for the font trademark attribution notices.Fort AwesomeFort AwesomeDave GandyDave Gandyhttp://fontawesome.iohttp://fontawesome.iohttp://fontawesome.io/license/http://fontawesome.io/license/����������	

 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`ab�
cdefghijklmnopqrstuvwxyz{|}~��������������������������������������������������������������������������������������������������������������������������������"	

 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRS�TUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~��������������������������������������������������������������������������������������������������������������������������������	

 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~���������������������������������������������������glassmusicsearchenvelopeheartstar
star_emptyuserfilmth_largethth_listokremovezoom_inzoom_outoffsignalcogtrashhomefile_alttimeroaddownload_altdownloaduploadinboxplay_circlerepeatrefreshlist_altlockflag
headphones
volume_offvolume_down	volume_upqrcodebarcodetagtagsbookbookmarkprintcamerafontbolditalictext_height
text_width
align_leftalign_centeralign_right
align_justifylistindent_leftindent_rightfacetime_videopicturepencil
map_markeradjusttinteditsharecheckmove
step_backward
fast_backwardbackwardplaypausestopforwardfast_forwardstep_forwardejectchevron_left
chevron_right	plus_sign
minus_signremove_signok_sign
question_sign	info_sign
screenshot
remove_circle	ok_circle
ban_circle
arrow_leftarrow_rightarrow_up
arrow_down	share_altresize_fullresize_smallexclamation_signgiftleaffireeye_open	eye_closewarning_signplanecalendarrandomcommentmagnet
chevron_upchevron_downretweet
shopping_cartfolder_closefolder_openresize_verticalresize_horizontal	bar_charttwitter_sign
facebook_signcamera_retrokeycogscomments
thumbs_up_altthumbs_down_alt	star_halfheart_emptysignout
linkedin_signpushpin
external_linksignintrophygithub_sign
upload_altlemonphonecheck_emptybookmark_empty
phone_signtwitterfacebookgithubunlockcredit_cardrsshddbullhornbellcertificate
hand_right	hand_lefthand_up	hand_downcircle_arrow_leftcircle_arrow_rightcircle_arrow_upcircle_arrow_downglobewrenchtasksfilter	briefcase
fullscreengrouplinkcloudbeakercutcopy
paper_clipsave
sign_blankreorderulol
strikethrough	underlinetablemagictruck	pinterestpinterest_signgoogle_plus_signgoogle_plusmoney
caret_downcaret_up
caret_leftcaret_rightcolumnssort	sort_downsort_upenvelope_altlinkedinundolegal	dashboardcomment_altcomments_altboltsitemapumbrellapaste
light_bulbexchangecloud_downloadcloud_uploaduser_mdstethoscopesuitcasebell_altcoffeefood
file_text_altbuildinghospital	ambulancemedkitfighter_jetbeerh_signf0fedouble_angle_leftdouble_angle_rightdouble_angle_updouble_angle_down
angle_leftangle_rightangle_up
angle_downdesktoplaptoptabletmobile_phonecircle_blank
quote_leftquote_rightspinnercirclereply
github_altfolder_close_altfolder_open_alt
expand_altcollapse_altsmilefrownmehgamepadkeyboardflag_altflag_checkeredterminalcode	reply_allstar_half_emptylocation_arrowcrop	code_forkunlink_279exclamationsuperscript	subscript_283puzzle_piece
microphonemicrophone_offshieldcalendar_emptyfire_extinguisherrocketmaxcdnchevron_sign_leftchevron_sign_rightchevron_sign_upchevron_sign_downhtml5css3anchor
unlock_altbullseyeellipsis_horizontalellipsis_vertical_303	play_signticketminus_sign_altcheck_minuslevel_up
level_down
check_sign	edit_sign_312
share_signcompasscollapsecollapse_top_317eurgbpusdinrjpyrubkrwbtcfile	file_textsort_by_alphabet_329sort_by_attributessort_by_attributes_alt
sort_by_ordersort_by_order_alt_334_335youtube_signyoutubexing	xing_signyoutube_playdropbox
stackexchange	instagramflickradnf171bitbucket_signtumblrtumblr_signlong_arrow_down
long_arrow_uplong_arrow_leftlong_arrow_rightwindowsandroidlinuxdribbleskype
foursquaretrellofemalemalegittipsun_366archivebugvkweiborenren_372stack_exchange_374arrow_circle_alt_left_376dot_circle_alt_378vimeo_square_380
plus_square_o_382_383_384_385_386_387_388_389uniF1A0f1a1_392_393f1a4_395_396_397_398_399_400f1ab_402_403_404uniF1B1_406_407_408_409_410_411_412_413_414_415_416_417_418_419uniF1C0uniF1C1_422_423_424_425_426_427_428_429_430_431_432_433_434uniF1D0uniF1D1uniF1D2_438_439uniF1D5uniF1D6uniF1D7_443_444_445_446_447_448_449uniF1E0_451_452_453_454_455_456_457_458_459_460_461_462_463_464uniF1F0_466_467f1f3_469_470_471_472_473_474_475_476f1fc_478_479_480_481_482_483_484_485_486_487_488_489_490_491_492_493_494f210_496f212_498_499_500_501_502_503_504_505_506_507_508_509venus_511_512_513_514_515_516_517_518_519_520_521_522_523_524_525_526_527_528_529_530_531_532_533_534_535_536_537_538_539_540_541_542_543_544_545_546_547_548_549_550_551_552_553_554_555_556_557_558_559_560_561_562_563_564_565_566_567_568_569f260f261_572f263_574_575_576_577_578_579_580_581_582_583_584_585_586_587_588_589_590_591_592_593_594_595_596_597_598f27euniF280uniF281_602_603_604uniF285uniF286_607_608_609_610_611_612_613_614_615_616_617_618_619_620_621_622_623_624_625_626_627_628_629uniF2A0uniF2A1uniF2A2uniF2A3uniF2A4uniF2A5uniF2A6uniF2A7uniF2A8uniF2A9uniF2AAuniF2ABuniF2ACuniF2ADuniF2AEuniF2B0uniF2B1uniF2B2uniF2B3uniF2B4uniF2B5uniF2B6uniF2B7uniF2B8uniF2B9uniF2BAuniF2BBuniF2BCuniF2BDuniF2BEuniF2C0uniF2C1uniF2C2uniF2C3uniF2C4uniF2C5uniF2C6uniF2C7uniF2C8uniF2C9uniF2CAuniF2CBuniF2CCuniF2CDuniF2CEuniF2D0uniF2D1uniF2D2uniF2D3uniF2D4uniF2D5uniF2D6uniF2D7uniF2D8uniF2D9uniF2DAuniF2DBuniF2DCuniF2DDuniF2DEuniF2E0uniF2E1uniF2E2uniF2E3uniF2E4uniF2E5uniF2E6uniF2E7_698uniF2E9uniF2EAuniF2EBuniF2ECuniF2EDuniF2EE����=���O<0�1h�assets/lib/font-awesome/fonts/FontAwesome.otf000064400000407230151327220410015315 0ustar00OTTO
� CFF 9s�7���EPAR(�l0OS/2�2z^��`cmapǢT��head���6hhea
��P$hmtxJ+��t
�maxp�P
`name>$#
h
postx FontAwesomeC�������������	�U�6����U�6���2�2���
�",04<>EGMT\_ehmqy}�����������������#)4>HT_lp{������������������
'4=GRYfoy��������������
&,39COVcoz������������"/5;FPUZes}���������������&+16<EOW_hmqv|����������������)04=DPX\aju����������������(,26GYhy���������������%16;>EMUckox��������������				$	5	G	V	g	l	p	v	�	�	�	�	�	�	�	�	�	�	�	�	�




&
*
-
0
3
6
9
<
?
B
F
O
_
c
u
�
�
�
�
�
�
�
�
�
�
�
�
�&5BQafmty�������������������!%)-159=AHLPTX\`dhlptx|������������������������������






%
,
3
7
;
?
C
G
K
O
V
Z
^
b
f
j
n
r
v
z
~
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�	
!%)-159=AEJNRVZ^bfjnrvz~��������������������������������
"&*.26:>BFJNRVZ^bfjnrvz~�����������������������������
"&*.29@GNU\cjqx������������������ '.5<CJQX_fmt{������������������ '.5<kvglassmusicsearchenvelopeheartstarstar_emptyuserfilmth_largethth_listokremovezoom_inzoom_outoffsignalcogtrashhomefile_alttimeroaddownload_altdownloaduploadinboxplay_circlerepeatrefreshlist_altlockflagheadphonesvolume_offvolume_downvolume_upqrcodebarcodetagtagsbookbookmarkprintcamerafontbolditalictext_heighttext_widthalign_leftalign_centeralign_rightalign_justifylistindent_leftindent_rightfacetime_videopicturepencilmap_markeradjusttinteditsharecheckmovestep_backwardfast_backwardbackwardplaypausestopforwardfast_forwardstep_forwardejectchevron_leftchevron_rightplus_signminus_signremove_signok_signquestion_signinfo_signscreenshotremove_circleok_circleban_circlearrow_leftarrow_rightarrow_uparrow_downshare_altresize_fullresize_smallexclamation_signgiftleaffireeye_openeye_closewarning_signplanecalendarrandomcommentmagnetchevron_upchevron_downretweetshopping_cartfolder_closefolder_openresize_verticalresize_horizontalbar_charttwitter_signfacebook_signcamera_retrokeycogscommentsthumbs_up_altthumbs_down_altstar_halfheart_emptysignoutlinkedin_signpushpinexternal_linksignintrophygithub_signupload_altlemonphonecheck_emptybookmark_emptyphone_signtwitterfacebookgithubunlockcredit_cardrsshddbullhornbellcertificatehand_righthand_lefthand_uphand_downcircle_arrow_leftcircle_arrow_rightcircle_arrow_upcircle_arrow_downglobewrenchtasksfilterbriefcasefullscreennotequalinfinitylessequalgrouplinkcloudbeakercutcopypaper_clipsavesign_blankreorderulolstrikethroughunderlinetablemagictruckpinterestpinterest_signgoogle_plus_signgoogle_plusmoneycaret_downcaret_upcaret_leftcaret_rightcolumnssortsort_downsort_upenvelope_altlinkedinundolegaldashboardcomment_altcomments_altboltsitemapumbrellapastelight_bulbexchangecloud_downloadcloud_uploaduser_mdstethoscopesuitcasebell_altcoffeefoodfile_text_altbuildinghospitalambulancemedkitfighter_jetbeerh_signf0fedouble_angle_leftdouble_angle_rightdouble_angle_updouble_angle_downangle_leftangle_rightangle_upangle_downdesktoplaptoptabletmobile_phonecircle_blankquote_leftquote_rightspinnercirclereplygithub_altfolder_close_altfolder_open_altexpand_altcollapse_altsmilefrownmehgamepadkeyboardflag_altflag_checkeredterminalcodereply_allstar_half_emptylocation_arrowcropcode_forkunlink_279exclamationsuperscriptsubscript_283puzzle_piecemicrophonemicrophone_offshieldcalendar_emptyfire_extinguisherrocketmaxcdnchevron_sign_leftchevron_sign_rightchevron_sign_upchevron_sign_downhtml5css3anchorunlock_altbullseyeellipsis_horizontalellipsis_vertical_303play_signticketminus_sign_altcheck_minuslevel_uplevel_downcheck_signedit_sign_312share_signcompasscollapsecollapse_top_317eurgbpusdinrjpyrubkrwbtcfilefile_textsort_by_alphabet_329sort_by_attributessort_by_attributes_altsort_by_ordersort_by_order_alt_334_335youtube_signyoutubexingxing_signyoutube_playdropboxstackexchangeinstagramflickradnf171bitbucket_signtumblrtumblr_signlong_arrow_downlong_arrow_uplong_arrow_leftlong_arrow_rightapplewindowsandroidlinuxdribbleskypefoursquaretrellofemalemalegittipsun_366archivebugvkweiborenren_372stack_exchange_374arrow_circle_alt_left_376dot_circle_alt_378vimeo_square_380plus_square_o_382_383_384_385_386_387_388_389uniF1A0f1a1_392_393f1a4_395_396_397_398_399_400f1ab_402_403_404uniF1B1_406_407_408_409_410_411_412_413_414_415_416_417_418_419uniF1C0uniF1C1_422_423_424_425_426_427_428_429_430_431_432_433_434uniF1D0uniF1D1uniF1D2_438_439uniF1D5uniF1D6uniF1D7_443_444_445_446_447_448_449uniF1E0_451_452_453_454_455_456_457_458_459_460_461_462_463_464uniF1F0_466_467f1f3_469_470_471_472_473_474_475_476f1fc_478_479_480_481_482_483_484_485_486_487_488_489_490_491_492_493_494f210_496f212_498_499_500_501_502_503_504_505_506_507_508_509venus_511_512_513_514_515_516_517_518_519_520_521_522_523_524_525_526_527_528_529_530_531_532_533_534_535_536_537_538_539_540_541_542_543_544_545_546_547_548_549_550_551_552_553_554_555_556_557_558_559_560_561_562_563_564_565_566_567_568_569f260f261_572f263_574_575_576_577_578_579_580_581_582_583_584_585_586_587_588_589_590_591_592_593_594_595_596_597_598f27euniF280uniF281_602_603_604uniF285uniF286_607_608_609_610_611_612_613_614_615_616_617_618_619_620_621_622_623_624_625_626_627_628_629uniF2A0uniF2A1uniF2A2uniF2A3uniF2A4uniF2A5uniF2A6uniF2A7uniF2A8uniF2A9uniF2AAuniF2ABuniF2ACuniF2ADuniF2AEuniF2B0uniF2B1uniF2B2uniF2B3uniF2B4uniF2B5uniF2B6uniF2B7uniF2B8uniF2B9uniF2BAuniF2BBuniF2BCuniF2BDuniF2BEuniF2C0uniF2C1uniF2C2uniF2C3uniF2C4uniF2C5uniF2C6uniF2C7uniF2C8uniF2C9uniF2CAuniF2CBuniF2CCuniF2CDuniF2CEuniF2D0uniF2D1uniF2D2uniF2D3uniF2D4uniF2D5uniF2D6uniF2D7uniF2D8uniF2D9uniF2DAuniF2DBuniF2DCuniF2DDuniF2DEuniF2E0uniF2E1uniF2E2uniF2E3uniF2E4uniF2E5uniF2E6uniF2E7_698uniF2E9uniF2EAuniF2EBuniF2ECuniF2EDuniF2EECopyright Dave Gandy 2016. All rights reserved.FontAwesome�[_�������"+/37;TX_dhn���������������#'Prz�����������.26:@DHM����%*.48@ENUZ^}������/3�������������PW^cgl������8<FJ�������������CUajov{�������			@	J	Z	�	�	�	�	�	�	�	�	�	�	�


&
*
.
:
A
T
m
r
}
�
�
�
�
�
�
�
�
�;BFLTX_cinsz���������� .38@FKPp|�������������

&
E
d
m
z
�
�
�
�
�
�
�
�
�
�
�
�
�
%1=BGNU[e���������
#)-7=CJO]kr����������������):PUblqv|����������",5:BJOTgz���������������$6HZ]hs{�������������
 &,6@JTX`hnt|�����������������
)8@OSX\bhp~�����������������"/4;?FLSW\hmt����������������
',2=HS^elw�����*
�A
�T&������fA�V��
��T���l�f��P��������������z�z����
�P
���4�!
��t������
���
�����q
��q
�bt�&
y}}y�3���3%�3���3�
`z���T~����~���������������4���]
�Tg@Z
�4��
���
������R
��,�T[@��
��<���<4
,
^�2
���%�%�����%�%�����%�%��3�
�T<
�n�h@;�TN
���TI���TN
���C
KFKk�6
?����������J
��������
�
:
K,:
��y}���Tj
5
�/W
K$'�T$����V
L
v
��
�
L
6
f
y}}y�y}����������}y�lz||z%
��1
��
��������K�T���T�Y�=��|�zKz||zKz�|����������N
�
!�5�
�!��
�
�f�f�(
������������G
���
Q
3|�T|�T|��T�
�T�
�T��|zs�
R��������3��&'
'
<
@A
��������G
������������^
���[�=������
�T� /
3
c�-�`�V�}�h�n"����B�v
�����g
�O����G���
�`�E��}n\>l�g
����,�������������������h����h�@�@�h��E�Q��P
�|�z�@z||z�Tz�|���������|�z��z||z�Tz�|�����7
�F
���x�
����3�C�DRRDD��uy
;
�;
���5�!Jb���
h
����
�����5
�/������
�T���T �+
-tzux��u�[��Br�lmy�z�~���5�������q�s�������U��hnnh�hn����������nh���
��t��t��t�T
y}}yKy}���?
j3CC��
��
������5�;��(�=��Z�XW�G/�9�;���/�_M�knm��n9��:Y�I�Ƒ���P�`�q���������������~���d�_�i�r�c�rr�i��i�i����������y��
@�H���-�R
�'
�����
���T� �����1��<t0
��l�n�l||��}_zob^��^�b�z�����������M�<�M�<v��������������	�o�_��}|�|r
���
/�0
���]�}
���]�
���
�E�Q���y�
v�(�
��W���
��T/�T����
���
�j��i�h��{�t���*
�<���<�<���
��<+���B�����������
�����A�S� ����i�^wv�h�������v�i�^����S� �A��E�]�#���'
K(
��D
F�m���3�'!�����%�Ơ���#xM'�nq��w������d����������������o�^�]���
t
x
�1�!���!���������EQQE5������i��������'�Ty�}���������
�tV`�����
��
K��
�T�����
��
��
����t��
kb
K<����z�
X
�@3CC3�@���#P
����n�hQ
�h����������/�:�n�h��
��
���:�
���
���;x��t������u�l�TK�
1���
�0
���8�i8_dd_�~~�x�z�������������������ƅ����y���"�9��O��9�%������9�)��o�'�0�q�i�?�@�h�h�?�@�i�r�����C
�TFKk�Tr
P
��;���;�Y�S<��!��y�o�t�s�{tq�T/�T��g���5��[��
�F
��
��s
��*
�41
���������������������Z�Zr�w�h�)��S
�
-
v�v����z�z�����:
�t�t���t�t���t�t�
1
����7
�Ԏ���8�
����J����n�������������������+����t����m�y�;�
[�8�����
�����������
������hn�>�����~�w�~����~�w�~����������K�
=+�tX
�@]
�@g�Z
�t�V``V��;
��;��`���L����<��� �xra��������
Y�W�
@3�&��
~~�w�~@���������5!�����������}y�vKy�x}z��y����n
������T7rr�c�r����~�g
��hnnh����
���YYG
����P
�����~�����*���*�*���*�*���*�*���*=
�4�����
�4����������)
.@�����(�����[
�h
������������������P
����v��T�~z��$�j�
+�[
��<���<�5�!I
��4���*
�A
C
�7
�r
C
��7
@r
b
�!�6��g������T����E ��
��ˋ�������h�3�/�����{�V=��������������n���������������\�n���]������������9�
��v���������x�{�zz{��X
�����CZ�7)������D
�T���}�y�T8�TC
�T7
�Tr
���]�]��[
1��
��
����������
����7��������U������f�
�@��m���
����� �
��<
�Z�Z�������Z�Z�������{�B
����r�r�����z�{���
+
�T
<�Z��������:�������w��B��������D�$�$�D�����(�=`��h��Z����������TA
�
/��0
�����nh����&�&�����&�&�����&�&�����{��V��v�7�+�4��2�y�qpV``VV`��������J
���Y
M�Y��
}�
���>
��|z��nhyy�rrr�r�ypttp&pt��1��5
t�v�������'
K(
����
�����������;���;�����g
���
$�4��������y���������~�M���Q��������������s����Q�Dnt��y���������������������y���t��
��F�t��e�11e�BB������T�������������2
������
����������r��������I
�F
y����������'�&��K�
��w�_�_�c����������4��4�����4��4�����������p�]��R����
���G�T��TX
��������������x�����]�]��
 83��
���w�rrh�������h�@���;�f�v�eK\xcik�v�ss]tRat�7�+�4���4��7�&&����
7����
�V��(����-
hn�����D�$�$�D�
�,
�}�t��P
��`=��d��b��9�7�B��x����������������������t���3
�������?�L���g�__gg__�g��������������a��
������`�V������������������C3~�w��]������}
���y���6�%�6-��������������	�_�$��cX��~
�TR�V�2�2�V�V�2�2�V������P@��z�y�z����z�
������s�/A����v����������zz{���������������b
�������z����-
�
�����f�t����&
���3�
������
���]�]�EG�xZ�n�yt�P
P
�������������+�+P�,������������ʲ�������,�������
����
_h�m��x�����2
�
������������
����ˋ��
�
�
�d�4����������4
�T[�`�M���`�My}}y�T,�V���;���;�0
���&�&���T��
��3
��
����������t'.
%���@p
�)qt{t��s�o�y�����s�%�$����������33�3v�K�����
�4��4\~�v����
}jii�C�@�@�����x�~�C
��Kw5 !4���wk�z|��|,$P��+�+�
����������-
�������
�
���
�g�s��}���}y������������f����
����#�E���T�@��)W��b�it���
��S
���4X��wmx�yj�h�����o�fZedZdW
f�r
r�syy�'�&� �������������h�@�v� }�������������59������������2I�8��8��!����~			I	�
M
�
�?y���
*
�BP�|88;�l�]5��m����+\��<���b-�G_y����'>U��>c� R �!0!�","^"�#0#�$$q$�$�%%~&5&�'A'�))�*J++�,,m,�,�-�..1.�.�.�/P/�00�192�2�45q5�5�6<6�717x7�8h9�:S;x<<T<�==�=�?�?�@!@�AjA�B�C�D�E�F�G�HJH�IITNN�N�O"OxPPPPP�R-RvR�T�UGVV�V�V�WX1YXZ�[+[�\C]]�]�^�_+_9_G_o_�_�_�_�_�`�aaGb6b�b�cPc�d'd�eNfGf�f�g>g�h�h�i-i�i�j j�kwl%l�m7m�m�m�n$n;nOncn�n�n�n�o"o�o�pp&p>pXqq
q}rIr�s8s:s<s�s�s�t�u�v<wIwhw�xGx�y y�z&{6{u{�||�|�}�~~�~�~���C������M�����9��C�|�����2���8�V�����P���	�c����S�������O����I�������#�|����L���������`������m�
����P�o�������1�����*�x���������4�f�.��H����U�\���1����������'�C�w�����[���W��������(������b�������;������J�{���.�ŝ�Qƭ�fǮ�*����ʛ˗̉͌����|�`ϫ�Zҝ�(���Jտ���׻����p�9����D��9���������g�����t���g��,������q���?�����o�]��1�a�JC���0��g����	$

�N��
F.yq��4����+M�<�� �!>!�";"h"�##�$b%g&D&�''�'�'�'�'�((�)�*"*�+�+�,?,p,�-F-U4>4�5~5�66636>6�7	8"9�9�:-;F;�<9<�='=\=�=�>?Y@RA�B�DEAF�G�H(H�IImKGLL�M^NZO�PxQ@RS%SlS�V�W�X:XRX�X�YY]Y�Z�Z�[+[n[�\d\�]g^Y^�_2_�`5`�a�a�cBdd;dWdvd�e!ff�gog�hNh�ikj@j�k�l�m�n�o�p�qhr�t�ukvYwfx�zV{r|�}/~~�������U�����u�����[�������
�t����J�����~������������������3�J���#���������c�������$���;������������������������������������T��t� �T��T���4P
�4��� c�
��z���.���.Ȯ��h�K�h�<�Nh���-���
��
�����-N�<vhNK�hN�<�h���.���.Nhv<�N��N�vȮ���-���
�����-�hڠ�����v�N����v���4�4���T�
�4�4V``V�T<
�4�4��TA
�4�4M
����0������T���y�u��uyyu��u�y�����������y���?�j�`�,4�G��y�u�~�8������������գ����������YSKkj>h3c�#�
^u�i�����������ƭ��R��������������@2�A
��4
�����F�M�f��fM�Zn�n�w�������
�������������v��
�x
P
 �`�V��������c~ofa�[�!
�Y�������!
 �����
����
�T@
����������b����@�
���s�u�w�#��$���L��>�����������$��#�����������69�JX�"�!�!`V+/E��E+�V������1�R�F
����_r���
�Z���o�
���p�]����������t��
�k�s����u�[��z�tv�U������������Z
�tq���9�
�[��[�9����:�Q��Q��:M�q��k�s����u�[��z�tv�U������������Z
�Z�����J�����
��J����&��	���	��&���a�
�)���|
�����s
�Kw�����
����t�������
��w��4X
��]
��g@�
 �v��
������
�����
�������Y�T3
���Y���`�V��V``V�TV�`���������Գ
���
�T3
������Y�T3
����TV``V�T�;
��Y����TV``V�T�;
�T\�TV``V�T�;
����
��^���y����
�$�%�����
���I�������V��������h�h��������v���j���y�����������������y����
���������
���I���������I���V��������������V������������ ���V��
V��������
�t�tC
KF�t�tFKk�t�t�
�r
�t�t>
��@
�
 ���V��
������
��FKk��r
��@
�
���������
pP
�����t�W�&S�:�aR`S�:�a�)�)�6����z�
�6�)��õ��`�a�;�R`�W�&��t�����P����Q�EEQQE�E�Q��������������Y
���8
��&��8
��&�T�8
�T�&��8
�@�
e
���{
�����z��K���}�z�����������������a�E�V������������" n�m�l�o�L��{�y�ry}{�{O�J�Nl�l~n|�������i��&js�����������^�^�[{m~m�k�No|�y|�rz�{���Kp�i�j�ki\f_i]�����������Q�M�[�����������!��|�����Lz��~��r������Ǒ̒Ȫ���������������'������������f�g�i��������M��������m����������������������������([po����p���H��H�4���
�wO�V��VOcZwE�;����L��1�������H�u
 �v�
��t���������n��n�����t/��
������s������~��o�J�,z�W���`a�G�ah�c��~��v�~�A�������������H���H��������������������
���
���w
!�4��t�4����t��t����4�t��t��
��to
�T
�4�#
�)�v��TV���{�||��||���������N���������g���|��5����p�p����Ty�~}y�:y~�����T����ppur��5��|g�ccn�_��Tz}���������������y�}}z�T���� ���
����T�
�d��gf[wXX[��f���e�6
�
��t�q���T�K�T�����T�T�
�T�T������x�4���4�t8����
��z��T~����~���������������f���9x�4���4�t8��(���������������������������&
��T���
��T�������9�v��T�
����,�T��,�T���������h���X�h���������Ym���}������}c�h��hcqj}����}i�Vg�v��
�����w�����x�r�w�wvt��L��������������#
������P
���
����!�S�Y��
�y�l�D�&�������������������)�'C�3�$
��Y4����K
�Ti
������t�}�y�T|��}�zcesd�,.�9/�F����-���
1�T5
�T��
����"�Q>�W�����������������
����"�S�X�������5����z�|��[������������,�9�F��Z3����
�Ti
�������9
�����"��!
��!
�
�T�����������@�
���
��G�����
���v��T�i
���T����T�
�T��+�3
k�T���^�^�����^�^���Tk��c�����v
]�b�t�k�r
�������Kg
_�=��1ln��o����1�"�-SK�q~n}s{x}zs�z.�������;�3�n� �L��������� �v��T��T��V��T���/���W�W���/��!�(�Z�Mj���:�kD
��L
k+8V=_G�xɁ��������������H�KxMG�_8�+��������M������������r�������r����N�-������hnog?���
�
��?g�o���������� Gw���_
r����N�-������hnog?���
�
��?g�o�������������_��Q�P��o�x��}��y�C���Q�(Csyrp}t{xo^�������P��Q�_����K�����
��n�{�}�������|�z�x�8�
�S�`�`*�S�8�
qxozo||�{�}�s}|{n.��������
�K���������������
�������������
��
���
�x
��
�����������
����
���������
��
���� ����0m�� 8����
����������������v�v�ʪ�ʪ����ꪫ����������ʪ��骫������k��i�hvv�v�i��j�i����ʌ�����������
�����1�
����
w�������
����ʓ
����ʓ
������1�Y�������1�����������������������Q�
kl�l�������ʙ
�����F?������i��j�ivv�v�i��i�j����z
�)z
����_�^�X*�D�t��cX��_�^�s�jii}jtt�j�jh��s����������W
 m���
����g��|�v�t��y�w�x���og�`vf�/TF��w�����������������.��������q��ra�\��zz��z������aM{tsw�x�y�z�z�Vc,sj|wu��t�{�t�v�\h2p]�yx}�x�z�u�x�Wi:mY{pvz�s��~�{�s�w�w}e�_�^#��:��/�����������r�����8����"������ �����
�����
�������������4<
�4���K��4�"K���m�e��,�,�eB�V�4�
��K"44"�4k�t�4�:�4�t>
�)����T���3���3�3���3�3���3�3���3�T�4�tX��r=�E��E=UIrX��t����
tK��

�T��/
 ��,�Q�����i�ep�%�/��,�xx�x((��(���#�Ɏ���������	w�����������R��'������V��b���gfV�p��o�q�qq�������{����������\�/�j�}�}���Y�h�^��?�DF�G@�E�a�t������V@���h����a�%�-n�<����5���s��c���������sŔ�O��������5���*��V�JM���(0�x[[��_}�~􊢋��������%����������;�AH�W�{�'Q�bgf��g���
��F�I��G���������f�=��R��!��G������v�^]�^����z����8����'��n�\��PuH�#hPMqJ�K{�-�!ߜv���`�������Њ�����xġ���������M�M�N�������[�����������Đơ�ϦԖУ�������!!�!�����x$ǁΓ�m`r�;�n�i~G�h�ftnOlF�Kw�z6���������-�������������;�������p��6p�_�ph��6hp�o���;_}oh���6�h������6���}�_�����
�Ǐ��\����������|��}�Cy�	�^��^�^L���uZ�
����������������������q�����m����ept�c��CD�C��m����������
ǐ��]����������|��z��b|�|}3��mrS�
�6��6��7W��,��������
�"�����������������m����~yv}u�������������]� y�����]h��vp|�zww�z�v�����{����y{ ��������������|��p��hm
��R�<�0
���R�<P
0
��R��<�
i
m
��R�<�0
�������R�<�i
m
��1�<�0
��1�<P
0
��1��<�
i
m
��H
��H
��H
��������t�#���#����@�������w
��t\
�
�����������������������>
t�Tdw
��T���i���������F��y
�������������td��v�0��{�t������z{�~�'�&�9*
�T��T�3���3�T&�:�'�'~����
�)��T�T�������Tn����4�4�����4�4����Tt����|z�@���
���4kX
���S
�@g@�
m���� �
�����D����������������~��������������������~U�T����4�4�����������~�sj�iij}st�:�9�4�4�:�:�W
��
�
��
���{
����
�
N�L�T���_��p����������’��x���J
������ 
�����v�����P����P���������Ϡ������������H�G�w�w�srP��
�m�X�X�j��:���b�kkcv`~:���j��X;`Y;l-&P���y�y���Q
�����4����������S�+����,�,������|�������|�������������������������~���KK�������X����������������������������fc�c��Q+�4�4�4�����4�4�0�0����f��,�,f�M�ff//������ ���
��g���t�������}���{|y~w������j�X������������������|�z����h
"��Q�����2��{�z�����t�{tq�T�4� 7����\�3�u������������������l�z��*���� ��p�4�Tq�t��������������
 ���
�Jw���
���t����������������KK�������3CC��
��
���������������������G
���������������fc�c��Q�{������k���k�Y�kk������k�Y�kk��kk�Y�k�B�B�k��������������
����C
��
�
�����
�����
���-
�4����=�����
1���
��
�����
�������gs���v���������Z�v��Z� ���S���Z�v�Z�Z��Z�Z�r����Z�����h������l���vl�r|h��h�|��e
P
@g
���
��@��g
���
��i
e
P
@� �����
�Z�w�Z�Z�2�Z�Zr�w�h�Z�
���P
����
�Z�w�
�Z�
����������
�@�w�}����rr�w�������r�Z�Z����
�
���
�%L�.�����2�:�:��z�z��z�z�r�����:�:�2���������%L���'�2�z�z��:�:�����������:�:�
�z�z�������������
����p��������h
��H���� 
Z�������
��hn�����
���� 
e
}�2z�z11z���I�I�I�I{�zzz��1�����������I�I�I�I�����������������
���I�I�I�I��������1��zzz�{�I�I�I�I��{z��v 
�P
�����������z�z{z�����������������M
�v�v�,�+�M
�1��zz���6��
����T���
��4y}}y�Ty}���T��
�T���4�,#Q?`\pnZt�������ҫȧ����P�Kgjzx}wy\O������������~������#��7�@�T��K��T 
��t��t��t�4�
���4:
�T��
��+y}���4j
�����4��y}}y�Ty}���4��
�4��4 
��
����`�$���$`����$���`�$���
���$���$�����$`����$�<���Tg
�#Z�k�=�=�k��#��#�kZ�=�=Z�k�#<�#��k�=�=�kZ�#��#�k��=�=��k�#i
���]�������&�&�
�����
�&�&�������&�&�������&�&�k�K#
���g�2%�������'�'�%%������
�:�:�!8#
��t��
 ���������%��5�����6�&��{��S�j�����������jQ��h�[�=���<�<���=�>���
��>Kw��P
��^�C�T����������}�s�@��sk�iij}ss��t�v
j�t�� ��
��������}�s������TӸ��Kw������~�s����sj�iik}ss@@st��j�t�����TC^OG�G�O��T����s�v
j�s�@t���E��������� @w�K�������sj�iij~st��s�v
k�s�@s���������TC�^���Ǹ��T����s����������� @��K�T��@��sj�iij}tt�����T�
��
�T�����tj�iij}tsA@s�v
j�t�� t������ �W
��@��j{�����������t��,Q��a!���� �K��t�k�v��������������������q���C�t���
�����
e
���t�����
�������ԛ
��������4���
���*
�<���<�<���
��<+��!y}|z��
|���R�����T��|y��.}�|�y�Mx|��z������������p����������������
��������4�Hhnzh�Thn����h�T��T�hS�\��V`��f��y~���5���V``V�V��5�������`V���R�L����'�HMoZd��9��9�dM�H�''��e
�L(
��$�4���A
�4�u
��v��߈���
���/J�7�I[^_[Z_~}�yhn����������{�x�(���H���Z�f���7p\XT���H�aG��-���w��h�h�i�w�V�Q�Z:#v���z]��l���`���L{�l��{��,�+������\�^���˒�����1
��t�4C
��FKk@r
�������C��������N�.E���Ti����C�������k�h����T�������$�T�$������?���L������L���?�'���0�cGv=<���
v�c��0;���'�d�quuq�--��]
��������L��a������a��Lv�trr�t�v��L��a������`��L�������v���$�T�$���]�D�'�#�5�'���0�cGv=<�#��7���quuq�-.��]
���S������v-�y����U*�PN�O���_��Z~w�rsr�s�w��H�7�*�V3�ziU{������Q��������g�
�e��g�
�������S����������A��:�N�T����~�=�����L��=�&��0�����E��rA�������u�X��������������������5y}|y��
}���R����|y�R��
~�|�y�Mx|��z�]�����������p����������k�o�u`�\\`qbu����ud�[�dd��s�P
���������u����z``K�4K++�4�4�-�3���������������������������V�������
+*���������������Q�Q���������������듔����V�V�������������������������땓�����4�L�5�5���4K� �
�������4��
�˫��4�4��˫����
�����
�4�������������4����T�t��
�T�t��
�T�t���4�������4��K�
���
�G���t��������4���
������t�K�
���
�G�������q
��q
�bt��������.���"&��F�t8�t�+�
�
��������������+K�
�
Qc-b.T5���M�K����Tz�|������������sRrQnS�SL0��t8�t��������ĤŨ��������Ty�}���v�0����%�������%�����_��I�b�	\�;COLD|yz|�r�����s�{���������A��0����������%����e
P
�T�%�K�i�``�i��K��%�,����Q�Q����,����g
��
�/�����g
��
�/������
�a����r��z�y��z�yrr�b�r�:�9�r�������������
�:�9�k��
�l����r��:�9�����������:�9rr�b�r�z�y�
�z�y�)��
�����������4�T��������T@��������y�xxy�}�����||�g
�T�4�4r�d��Tr
��4g
�T�4�4���f�TF������4�T��������TB
|�|����}���������������� ��
��
�����p��Q�EEQQEE�Q����Q�EEQQEE�Q������g
�O����H���
�`�E��{l^@l�g
����,�������������h����� �v��
��4�
�4�
��&���Q�)�WW���X�g��3�
UGQ�� {y|ss^������
����� ��������
���
�������� ��/�����
�����T�����
�
�����
����1�4����=�����
1����i
�������
����
����
�����
��m����}
����������������������t����������������������������2o`gfbn��������h������.���������/�>�p�����������+�>�������|����R�i���������/8�C�����������rb�������{Zja_q���������V �O���m�|������
�P�C�������������4��4�T%V``V��
����L
�t�e�����P
����
���������T������
�����
�h���P
�
���T��T��T��T����
no��q�q�on��
�������������T�����f������t//tq�:�v++��������n�+�*�m�����m�*�+�n������3�3�V����y��p�p��v��-�����)m�v�v����
����
��>��{
����ERQDEQ��c
��ERQDEQ������QE��9���}��,����~��������������
�q������������
2s�r�q�t�-��}�}�N}�}�~Z�T�Yp�r�r~�������n��
pw�����������e�f�c~r�r�q�/s~��|~�M}�~���,s�o�p�pndmfne�����n�
 �s�����������
�������-}�����N����������������1��������������������k�m�o��������/�����������
`
��
>�a�����
B`
���
�aN����t������y���������6��$�7m��F��
�����d��I�.�3�W�W��-
��hn����
��fo1\��s�\ko��{�y�xx�<^��
�
�����U/�Sk��W���?Ÿ��������j�-����@�	�
+6�	����OG��o���
�	��D�ɝ��·�l��Z'�#ik}ts')��2OKebh`i_��mdG1dq��h�����W���m��]��a�"W����Y����������������
V��F�� �����e��
�G�.�3�O�׈����-
7�hn����
��GNOH���	�6�
�	t@�K̬�-*�o�s�r��^��?<kO����篞������
�O���Y�	O�x�x�y�t�R]׈s�sv�k�c\k}\vsO����1f��O��z�k������O��~�r�������v�d�����O����J��.�eY�$�n:mo��O�h������q�1�d�_�`�c�Jl�2�)t��}�����Ǐ���y�m��D׈��
�	���83�������v���b��@�K�M�>����������M�>�K���R�4�)�<�5M��n����ɿ�<�5�)�4�RP����
���p�]����������o �u���d�r����
�T�������~ϧ\
�ԕ�T�3���3���~ϧ�4���
����J�������{��{���{������J�{�J�� IYU:��=Y��Ͽ��ڼWG��� ��j�8Ke`bz�|�vw��{���	�̋�{&������,�(�i�"���z ���
�����4�t�4��
�T,
L
�T�4���8��0�����Q�E�EQQEE�Q������0�8.�(�y{���������������w�Ai
����
��
t���
��X�Ti�TQ��g
��B
�4�D�D� � G
��U� � �D�D��
�����t����
���*
��^�Gof��������Tp
��^�Go�
��& ���
�������8�^�!�Y������1���/���)���Yb���1��+���3
���X
��]
+��V``V��R�z�f��|�X�m�}�[�YKKkK+++K+>��7��+�++k��˙����������̚�z�f�R����[�
�/��`����������������������������������o��������������������������b���������������������������t��������������������������@��������������������������������������������������������������������������v�'�T�_Gq���������z�y������Y�w�j�����o�`�)I��b`�__`�b�)�`~oD�W�~jgw^S�X�_�~|~~t�jn~@t^�o�Y��Y�k��|�P��/�"���`�c}�{q��_�'�T�v�Q
���y�y�����t  ���
�����
�?ApDU8��8D��p�?�6
�\����x��T�T�z�{{z�~�T�T�K
���T���T���������������
�1� ��!���8�� 2 �Z���Z���.n8��2����Y\uZQ m{���������r�������^�-Ʒ֫Ϧ����� ��[�����������@�{�wx^�^]U�p�[�c��\��ˀ�t�� ���������b�de�e�	����@�$fb%� <l6fGW���G4���� 9�<:]ua\Q ,�2�������n��������{����
t���������Z�w�R�Q�S��qk�lN2�IUph��s�J��&�J}�r����I���m�{�j�l�kā�u�v������gE{|jZvkSr^kPxOH.�7�6�N�P�T�>�a�a�>"�i�p�ul��e��Ǟ����ë�����ѯ�����
��
�������X�����4*
���(�����3��&���
�����
���&�;�*2�26�;�*���������qX�sIm�[FHN��M�o����;�ot�p��л�ͩ�������������&�o�x�tt_�Jdw�r�y��0�A���y������u���{�&A�y���������  �v�(T��QrLyJ�γ�ʣ�MfEpB}�P7�.�G�$�%�Fr�r�s�������3�Xo[{TO��(�QV�Y�`������1���(m�pn�nvw��w���.�"�4��X�+pr��q/�#�>V�K�����?�����ʹ�ķ�����������S��p.���v�/����n�������������������Q���11��'�A������<������*
�<���<x��p����%�����������j]^��h�Y��E�֊�ׅ�B�
�����������?��G��ߩϼ���qٵ�˟�'(���͔��͂z���'��w�!q=�w�U�G7���HJ�?x�s�]C$�8rw�s�����p�����+�q���������������������������i�������������������������^�������������������������a�������������������������r������������������������ʆ������������������ŕ������������������������ �v��T���T���T��T�$�T�4���\+�T�
��/�i
�)����������*
��l
@Z
�����@�G�t���t��
���
������ ��������V��
��Tn���z�i.�]�,�+�+�,�]�i�����{{���}�zy�j�p����n�������j��r����������������y��'�����������'������{{�~�{y�#j�o����i�c�c���i��q��#���������������4���
�����4�4��������������4��@�
���
��G���2�t�1�v���������~z��1�v�F�4������Y���tH�A��AHZEt�Y���r�tp��g��
���
�2
����
�4�T��t��t]
�Tg�E�u�F�F�6����!�1��=۴�����n���_�F�(���
�R�D������\�����������������\����D����
��V���T����$�4�[
�
�.���G�^������S������S�����G�^�J�(��@�t�w�T�3�f������V``V}�~���d�3�f�T�w�@�t�(�E�Q��T�!���
�T�e
`�����������w�r��P���N����x�y�p�r��NV[�P��w�r�q�q�yx����y�p�r�r�ww�r[�P�N�r�p�yxxy�p�r��N�P[r�ww�r�r�p�y����xy�p�r�r�w���P[V�N�r�p�y�x�����N���P�r�w������������}�����������������P�NV������������V�N�P�����������x��,���4���.����o����U
w�t��FPPF���s�\k�{o��y�xx�>\��V�?��Ck������������������������w���k+�+JL����OG����
�	��
������=��3��`�?.Qm\ibgbjnG5[��ho��������fu�e�l��Y�������=� ��	� �,���.�G�c��4���n8`��X�C�>��[�B��
n������a�tĹ�����o8i�x���������FP��������v8�+��֫ঽ�t��t�t�u�V�]�]B��1�����������
o8��[G�ng�i�m��Q`�?��3�4�=_�`�b�
��
�	�� ��	� �=�a�c�fn��}�|}K�K�Y�X���S��#�L���n8�������
�
���4���.����B
�`�K����P�V��?�Ck���1�B�]�]�V�v�u�u�t����������+��������`��PF���`�������xi�������P��ta�������
�?����M���Q��YK�K}|��}�Pf�c�a��=� �	�� ��	�
��
�b`�_�=4��3��?`�Q�m�i�g�`�n�G[����
��
��ʰ�����
���.�G�c��4���B
��t���ZB�
��xx��yatRt]ss��vikcx\j_��q����FPPFGO����LJ+�+k����������������������ϰ�k�p�C��>�[���������H�������k�f�u�f������
���h��[5Gjnbgbi\m.Q�?`��3��<������
��	�
�� �	�� �p�=������ϰ������ˠ�������S���L���������H���
���Q�Q���{zH��
00��
����0������,
��{zz�{�Q�Q�����
� 
���
����X���00�����{�zXz{��0�����������Q�Q�������Q�Q���N�����0��{z��� 
�����������00{���Q�Q��p���Q�Q��
�������,
������{z�����
���������P�������00��
�������M
�Q�Q��q���Q�Q�,
��{z�����
�����%�������������Q�4�.���������&����E��݂���������v����'�����*
�<���<�<���
��<+�'����������������~��'���������������|iyz���r|���������x|��~t��}�uz��������������������������~�}����t���yzr����j����hv�������������~|�����'����{���|����������������~�oz|������������'���������r}s�pw�h����������������������jh�y�~�|��������������������}}��|x}�o���w������u����x�����������z�����p���}�o�~�v���q�y���v�}��}�{�o�����������y�~�t�����c�����u����������������y�u�u~�������x�����������r���}�������|�~���g���w������������ɛ����������|����������������c���������x|�����������������������|����������������������������������v���������������'݀���������������t���|�������$���|����~����������������d����������+������|������~��������v���r����y��������s~�݇�����uw�}�{�~|�G�����|��}}x�z���ut�����������������l��������݇�������|���������~���|�r�������������������������k��������|��������������������'�����|}�����y����������������������~���������z�{�������|������}�{����x����|�����sv��~�v�z�y�z�z����������y���������'���7�����������������������������������������������������������}�r~�����������w�������������������������w������������/*�G�s �k�i��n
��8��"�W��=�=s�v
j�t����
�>�>��G��ww�|�&xj�U��t���=�����������N,�B[
��Q�?��F������������������
��������������
�������������������t��{���t�q��������z�4��~����
�z������������v��
�x
��
�����������4�4B
���
�4�4�t�
���t�������X
����S
�{e
�w�$�$����
�Tx
�Tqt{s��t�o�y�$�$���������$�$��������t�q�T5
�T�p
�$�$����������
y�o�t�s�{tq�T/�T���
���������$�$�K
�T0
�T�
�$�$��������)�
����W�n�������|`_�]�#�v����:��[���������vV��i���\�\��i��V��v�6�*�4���4��6���e�T�a�
��u܎���v#6�]_��`�u�uu0n1W@��^�;������e ��U�U`�4�U�5�T���T��T�T`�4�S�2�SB�����zyr�rrr��y�b�cy���������j��d�M
�d�j���������y��d�d�y�sq�S�Umtvw�jo�XV``VX�o�jvwt�nrr��yB�d�d�k������y��b�c�y�rr��U�n�T��d�d�UA�?<AkST3��«���n�U��b�c,��UB�>�?BnUU�'�&UVlA?>�C�T�d�dU��m��ի���3STk@<�?�B�U�b�cT��m�,��Ԩ���'�&������)�����J��,�>��������
KQtd_�O>�K��j�
}�|�}�,D!�/�G����
 ���
�������#�����
�#�����@�*�!�
�!��@���i����#��#f�l���A�\���4�v��4����4��4��3�T�3���o@�T�M��K���"��������~�x��������������F��͇�������������F���6)�-1?pWSRWn?�=�%�(�EU��m�þ����������B��B�������_X�S-(mU6�EF(�%�=�?�VX��p�O�������򎬇������������F������������˞���������y��\�&sqb]�NE��N��e����������wd��G�&NS6�}dNDwO�]b��qNñ����џ���s��Se&�G�F�������������������\}�w~vt���:�4+q����������������4�����C�K�t������ې������E����,��
����� ��aV�����4dYztd���P\�4VAlff�,�,fflAV�4<
�����:�\���i�������?��������fflAV������4M
�4��4������4�0M
�4������������������|�+�f�L�����dU�S�55�T�T�d�.�.�������Ġ���
�.�.|�����������|�����e�WT6LL6UV��e����[�o���!���"��m\�������������
����B)�%�h�;�=�h&�)�C����M��e��0���0���������
�����������4\���
�4����4<
��A
�4��{}������~�bx����4��T�
���
�T�G���k�m�e������eB�V�4V``V��Te
P
�� ��
�&
�P
�T��������
�w�Vn���5�!Jt�4C
��
7
�F
����nt�4C
��
7
�F
�T�
��
7
�F
�����'��)�����������h��	�$�J��7�_�H����,�� �� �����`djXg]�S��ˈScfzheb��pR3� ^��v������" O���m��(�;�.?GdFj�P�������yi7�vo�My�y�y����4�
�������(!���?�������:�:: @(��t���
�T�
�@��
�Tz�|���>
�������$����@1
�i���{p�k�g�G�R�[��"�.�_�_�u��š�����ȟ���mN��g�G�&��߅���������Ȃ�������A�P�_��AT�e�A�a6226^%�O�L�J�n�p�s�����o�s�x�Z�WS]{`lcmcbnXzyY\�a\^��cb�h�n�n�p�s���z�f�%�_w�h�Y�+�W�~������������ cv�͉��Β���������������������И���������������1�5��h���v�9��U�!݉�}�t�{�D���$�<�T�;�J�Y�Y�b�ll��|����ԡǩ������������������+�}������������������������������������y�L�J�G��a�7�5�����t�|�m�`�P���v���G#�?}Z�hzdqcwuvltlsj{h�xPK�GQP��Ob�k�t�l�{·�}����y����ُ���������������ˌ��|n�a`�Z�U���TS�R{S��-�de�h}~��~�3U��������:
�@�4
u
�R
 ���`
�����
���4������y}}y��y}���T��������}y�T����
�����
�5���X
��]
��g@�
 &e�e��O ������ �.�����Z�Z�{�zz{������{zz�{��Z�Z�����
�����������R�%
���O�XO�X�XO�XO�X�X�X��r�6�%
�v�2�%
�������	
��>
�
����������W�W������2�����
����g
��5
�T�4g[wrr��Z�ZTT�<D��Aٕ���!���
��!���
�ف����1�;�������)�)�����P��P
�+�<���<��Q��������̙������r��ԋ����ѭVLE^"t*9x�I��&�O�q�=���b�}�%�B�VH�\�f�z���w�}�i�~�w{�z� �Y�
��n�L������U�i�w��<�u��8=��q^�E�i�{PjPn]v�Ӏ��
���)�9��
�(�(�����N����K�‚��������s��Ӌ����ЬWMF_#t+:x�I��$�M�o�;���`�z�$�?�TH�]�f�{���x�}�i�~�x{�z�!�Y���l�J�������S�f�u���:�s��9>��p_�C�i�v9U:j\�i�C���eM�#&�nY�A� �������,�Ó�m�����x�wr��� ��.������f�f�������F�f���������H����4 z��e�����`�c�����`�c���#�NW��[�S���9�Z��)���)�)���)�;�����7����e�e�f�e�e�f�e�e�f�e�e�)���4������
������
�������{r|�sv>��(���T�+����J��~�f�f��~�J�J��~�f�f��~�J�����������K�
�
�����g
�5
��/{i
����W�Ԃ
�����W��~
�����������
�T�T�{z�4�T�T��
�������������T�T���
�T�T�
 m�
������F8�4�
����������
�����X
��l
@�
�@w�W�T�
�~
�K��W�T�
�@w�W��~
��t�0��mjingr�;��<��7�
M7#?����#��7�7��<��:�f�i�m����
���B�4�@ V7)0��[�/��1��/�^�/�������/��1��0������6���;�$�����p��#��s�����E��AA*,�?���������m��6�"�mp�F=(G`���$����.�����������ƣ�����0�����������п�����
����D�&�l&�y�P�������������sj�iel{pp�������������m��o��������������y��,�,�yr�rUg[giyx�tq]�u�m���~~���������~~����mu�]qt�yxgi[gUr�r�y�,�,�V�����������o�m���������������pp{lei�j�t���t�������W
�m�
�b��
G�T�TG�@�u�^�9v:p%"M$�%�M�����ڑ�����������h�i���G��G�T�TG��T�����&�&���@��;�$y����z������%��:�@������b���
���%��������%�����
��v�������
�T������D�d�d���D��WX��YV�_lw}v~v��*���A���d���D����������y����o�6��$�7���������	�^���~������ )�?�c������w�r���vy~x��]�͈}�|�������������*�Y���v�v�������������������������T�����
p{���3
+�T�
���T�A
��\���
��<
�T���
�T+�
��\+�T���T+�
��\+�T���T+�
 m �4���
��X�vv�uuv��v��HNNHHN��)
��	�	���	�	�����������1��j��
��j�/������
������������������������������eU������>
���k�)���������$��1
��
�����������
����
��4<
�4�����T�
��
�T�GK���4�������i��m�e��,�,���~���\��-���4�:����4� �#��x�:�4����t�T���.F�
��pF�
F
�4KqHaZxuuvwtD6O'���x��O�D�w�u�x�a�q���\�_��I�I�_��\������D�������D��$�2�?��?� � nzykjs�t�z{z�tsj�m�y�}�z{�J�l�Q��e��űťž�̛������������{�������y�n�������׭������
�0���|�z���T�|�����������������������T`>
�t���7
`�Tz�|��)��t������������������������������������t��F
�T�G��t����t�
�)�������4z}|y�t����T�
��ty}��������������������������������
������b
������t�T�4���T����N�[c�����G�=B�^�60�A�Q�EEQQE�AK����u��I7#e  #��7up�jj�_�p�B:��
ܾ�ئ�_�������Wc��[�|��a�
��m��
��w�����������������7�E�p��{
��m��;�4�U��3������ua�[�
�RҢ�����&�{
�&������
�R�D[apdu������-
���U�;�4�mp��h�]�@��@�h���֦������
���t��
�t�����������K�}��������������
K��Q��$�4�[
�
����(��@�t�w�T�3�f�����V``V}�~���d�3�f�T�w�@�t�(�E�Q��T�!���
�T��)���T��T��T���
K����5!�����
�K���h���h��5
�t��
�T�Q���
���
��_
����4��n�hhnnh�4��n�hhnnh�:�B�p����
��צ������g
���U
��k�t��E�Q������9��
���w
!�4���4>�Ti�T(
�t�t�T1
�Ti���T1
�Ti�����9����9
�������t"��!
���N
���T�|�zKz||zKz�|����������I���T�|�zKz||zKz�|�����������|�zKz||zKz�|����������6F
����^P
�
��@g
�5
��/�i
���������
��� �����U��t"��!
���6D>
�����^�
��k<
�TA
���������K�
�+�K�
���
�G+���

T�G���E���g
���p�\�T�
�����/�i
�)����������������������>
G�����������W�W���������2�����G��4��
�t�t���T������1��5
��4hZwrr���Z�ZrrwZh�4�
��!���"�"��
��
�"��
�Ti
���������
�4��
��4�����4����
�t�t�����T����t�������k�}�����4��4�����
k���Q�)���T��k��k����������������t�K�����
+�4Kk�4�4�T�t+kk�T�k���Ts��Ts��kk�T�k���T�t�4�4Kk��4�
F������t����ˋ�� �v���
�����|g�>DR������������T��T��˫k�T�Tk��tk��K���h�@�@�h������T�T�����Tp�����p�q�����q����4 ����
���p��������h
�����
�� ��z��Z��4�
�����
���k
��
�����
���k
��z��Z����
��
���!�Z���tL�L���A�Z���4K
�K
���z�����t���k
�
�����
���z�������
YY�������������
�����������Y�
���������L���������K
�)�d
��{�����
����|z�����X
��]
��g��4KGf�g
��0
�K�����
�)��+�TK���x
����
�^�4����Z
�T���]
�Tgk��F
��G�T��Ԁ
`�t���4+V�`�@�Ӷ����+�r
������S
��
�>
n
��4��Ԁ
�T�
��q��]
��g���
����4���������d�_gg_��
�d�4����
�T�
���G�T�T���[
�r
�������
��E�Q��������9 �v�
�
����ԫ��� �����
�������T���T��Y��������w����N�������T��t���"�R�DEQRDE�Q��������bB�T�TB����Q�EhE�Q���X�x�C�3p
3�C�Bc
���B��T��
���
���b�&��'&��e
p����e
P
� 
��@*�j{�4���a����,���t���
�����{z�4�����
���t�C��8�qb�b�b�{�y{x�{��������������K�  ����t�4��
�4�t����_��_�4���\���<�������-��7����������������ʗ��7��-�t�D�&c�+�������z�i��0&H.��0,�-##�s&�&�2iGz@@R�Q�T+�c��&����&����t������������
� ��������x
P
�tV``V��
V`���T�^
�T��
�T��T�
�4�
��&���Q�)�����������F������|�~������aiEjV��ul�������������Ѭ������o���70 XDQ������^
���
�4���7������mG�G�T�4�}
���
��&���������������������
�T�n�a��x�j�i�gx�i j(C��(�j��g�j�i�xh�i�5��'��=�=�'��5����G8
m�T�i
�n���5Y�'��=�=�'��5Y�i�h��������������C ��i�x������������8
�����
�Tg
��
�0
���T8
�)��TK���4�T��T������T:
�T�Tx�
�T�T4
��[�T�T��T�T�����KG����xP�
��
���x��
���
���y�y����
����p<�
Z��Q
�)����
��������������������I
����t�+�����t�
�������I
���4��!���+�������
�������I
��������r@I
��������0��I
��������I
���p%I
���0�0
����+�����t�
��$��������
��h������
�������q��������^��jM�P�di��oo�� '��.��<WN�����2���XV�u������
������^v
~\�b�u�D
���
��
^�z�xvu�z~�L������^�?
ޠ����������˜�0���������������$]�U�M��'����T�6���"W�
N�Q��(���Y��cjM�P�im��p�P~�~�~�����+�����r������+�UQ��������t�b�3���L�?0X�3>���X�������
�Q����v
\�b�u�D
�J�
���
�zxvu�z�L����J����?
����� ���s����
��]R�T1
�T�*�)�\�&���������Y��
�f�f��f�f���������z�M�{�y��z�	���z�y���z�������	�%��
��@��tJ�j��Z�!�!�3�!�"��
�
��$y�f�+�/���Y������
���kz�X�,���Hn���|�}���������������1��d�t���Z\�I����<P��W�3�֩Ó��W�W���}�O�����u�[�}z�y�yy}p~�u�[��BO�}a�`���5��_��q�������U���U������������5���������t��y�����w��{�z�������q~}m�nn��w����m�r�������������� ��
������������������4R�t�����������~�w�~������tT
�t�t?�t����t��t�t6
��������T���T����
�
�
��V``V�V`�����
`V���
D�M�j��e!_�NPZ|UzXr���Ĭ����D�M�j���RjdMD!�5�
�d�R��쿣�3��>���ێ��Ĭ��� ��TPv�4�T��T��T���T��T{��K����=b����u�t���5����m�U����z�x�w�y�������y�sq�ggK�g�������y�w�x�z{����T��m��Ө���'�&�������h�~�z�����UB�>>CnUU�'�&TUmC>>�C�T���z�~�{���������k������y���������
7�5��������u�+�=������
�T������Tg
K���%.�Khnnh��<��K�T/��i
���v�P�����K�t/�
�����o�h��honh����h��n���
���������;�m�g�<��&S�3������r�<��
����;�|��#����&�%6Nkj�k
�����hW�
x�}�p�������;�F�&���<U�3������r�<��
�Y�;�|��$����&�%6Nli�k
�����hW�
y�|�p���)������
�������9�I�v]�Y��fh{os���je�V�]]��n���������������w� �v�v���K�u�Kp��J�Q��T*Fhl��tn����ݖݘ����Ǝ������q�DA�������5�%!*Q���TFhulstnl_�a99��:��P���p���������������~�݀������������*�������P���k�9�o������������k��թ������������m��
p�
����[
�S����D
�
�����D��
�D�U
���D�$�$�D����m����8������������?�C�I������9��
�.�.��9�~���������`�n��
���[
AE��N����������������^�
��U
�������T��T����%�� 7;L9\Xpq�T��T��g
��5
���9�������������$�����9 �
���
�
#���
�������4�����@n
������������������T+}��~|��������C�3p
k�n�r�]J'�V��{k�e�{��������������o�h���c-��#���<���/���&��|�~���T+���������������� �t`�`����
�t���{�y��S;����RQPIOD�w�������t���{���K���������������6��������K��������t�������������������q����v�M�����������n�;��<����-��������=��v��v�k�h�F�����8����������
�!�!�f
�Z�Z�3�Z�Z�g�%�E
������E
���! 
��������
�a�!�f
%��3������3��g�Z�Z�E
�� 
Z��������!�f
������f
%�3�Z�Z�g�Z�Z�E
���! 
Z�����������f
�Z�Z�3���g������g�%�E
��X 
�����F�I�C�������?�6��I�Y����(�����u���C�� �XV�Y���x��\���������b��6��6�������S�������*
P���e�S�GQ���G��z�5�:�5��'��D���N��������5���T�T��(���TK��K�T���(�Tn
��4R��~����~���'1�
�A3�Zp��T4��
�T�7׷���
b
,�9�_�7�T5
��2
�T��Z��A�1�
�����������~���'��~�������������Q�1���
������
�Q�1�.�����
ꗐ������v@�T�i
���T�����t���2
�@�$��k���\�����9
��
���e�
���
�
���y�y���Q
�a
�U�)
����������_
���T_
���T_
�������_
�T_
�T_
��s������s����
G��-�������
���|�a�9�9�a�z�~���������z����������������
���|�3���3�z�}���������z�9�9������S e
���*
�<���<�<���
��<+�����������������w���������������������vttvw���_������������������������������+������3���������s�����E
�������Z���@@��@�@֋������Y�9�ZYh��YY�9�Z������@�@��@@���Z݋���� Z���������
������
�� ���t
���
��
�tR��1
���
�~���������*
��Q������
���9����{���s�Y�sn��{x�p�ut��}��T���������4�T���~�������T7��T������������
���������}���4�T��������Tru|u��t�p�x���n��������������u�r�T���}�yZ�n��n�A���f
�����3���g�g�g�g�g�g�%�E
���� �������������(�@WWS�+���������}����������}���������������������F�������������������簰ɋ�f�,�,�f�Mff���� ����z������z�����q{tt������z{����
�����f
%�3������
x�����������t�
�t���� ��4��4�����4���G{�z�����s�{���4�O!mFNB9x�*����}�}~��������������5�W�]������4����������x����E
�G�� x���������t��T�������c��������
���##
�y����u�s�su~u��v�q�x��Tz�����������T��������QO�y�7����}���T�x�vvx�z��T}x�q�vu��~����������O������z��T��x�q�v�u�~us�s�u���������T��������T�t:
�T,�T[�T��}ys���x���E�F���v��d�y�������������Ds4�>�$�0K��������������������_�������|�������������������h�)�!�<��z���������3��������������5�#�����N��2)(
�$��h�e�kI��
�z�|�������P���諌����������j�j�n��W��{����2�v|���#R�6�'�I�2|���6
�S��k�����G�������������������������\���L�9�x�s,'�$�*��
�*$�P�*��
���[��f�����d�L��"�������*�
 ���������������&�����������_��DS�z|}y�H�ec�$�,�L���t1�HD�U�
\+�!W)�E� ���������������$���z����� �~j�Cy�}��7�C�h��&�5�`���v�8�:�$�:�����R�?��v�k��}7�S��(
�z�|��%� �e@��1(
%$�?�n�P�D���
�������Q�]�(�E�5�U������W������������+�M�3�T�)�3�w��'���T�<�*�|�v���;�<�#����������6
�S���7��}�y�k��א�����������S���S�8x_uaz`{�{�s��k�=�����V��������������j��
#$��6�
$$������@��v�t�T�
�i�T�i���{�������_�,1�!��T����!�1������N�H�����'�	���)$�t�
�t(
�$�t�T���;7�T��6
�S���
�����N�H����v�����������������@���3���uk����1��������@����������:���6���zi����
�4R�G���%i��쎔����������|~�}�.���)�����|�}~�}�*����1����~�|���������������1
�"���C1
�d�4��}�����3������;���e�:��}�����3������8���i�*���O�J�K��.��J�?�7�����1�.��.K��z�J�1�Z����.S��cb��b���.K���jj�l��h�M�8�����ʟgk�������������&w�l`�����l�KK�\��������.���������K�.������H̢����W/�&�����~��k���S�ڡ#���ڨ�ZD�p�A���4�����I���
�����l�������,�,���}��������V``V��T����V`�������������,�,���}��l�l�������p�8V`������V``V��T����t�
�T�
�T�
 ����������$�����+�����)���f������}�����]�|�
��z
�@�\
 ����$�����������+��)���f�1���z
�\
2����}�����]�@�|�
�+
�t�)�f���R��8����8����T8�T����8���*�+
�kR��8��7�t��)�f�4�R�T8�T7�T�TR�8�7�T�TR��8��*���
����iw�q
�s�j
�)�f��Оm�a�
����"�
�q
�j
��)�f�d���
��� ���4�gnohgo�������H�4�R��5
�/��0
���3�#�������������؋�G�t�
`aM�PQ�Oddlli`g]_Q+�f�j�ooj�h�o�����v�uf��\�#�������ͥ�����ȅ֤�������������������������� ������T�n�hgoogh�n���4��-
���
���
���
����)�������|�m���������x�r���z�e�`�I�3��}�y?z�#�\f�LuOvh�i�moh�j�o������Q�]�`�l�d�O�Q�P�M�a��t��G��m�q��������������v�i���� ���Ǿ������n�4���^��ːΆ—̀Ə����n�԰�+�}j�{x������t�������zj�1�"��L��������zii����|E�;�;��]SH��v|~�}������������I��q�z��x���������c������������y�pst}qv�5H��ίp��}��������������Gq�|�z���{t��������}��yp�jip~rx}x�od�d�n�yr��~������������������W�����vu�yi�0i�z���������x�`6�0w7~Q[`R�|���������R�[�~�wߋ�������ƻ�ő��������|�ą�`�P�8�05�����]A�]��|�s�|�z�|����W��W��[�
d�m}yrxq~jiq��y}�����������������~r��x�nd��I��mpr|rv|������������{������������������H�� ���X�?�����A���܅w��l�D���z�ك��{�ц����Ԩ�_���~�q||�||��|����������f�|�mm|t^]��Z����'��X��"��-�I���bgiwknv����������v����}�������������(]�j�vg�rxhkl��m[2�+�*�m�������xf��w�j]�Y��n�w���w�y�{hsfy\\h��qx�����A������������zi��r�eV$�G4]�t������������~��%]~smn}���f������t]�f�c�����q�y�J�>���L�N��M�M�N�w�K=�KQx<r�����������<�Q؃v�L�N��M�M�N���Lؓ�Ş�������z�G��D��!�M�L�M�.�E�Z����
�#�������x��rh�]^hzirxr�dV�CV�d�qi��z��������������0�nwx}y����������0�g�s�|r��������T�����v��������7���y�g��}������}�~�5����������T�~�~�����������������K����������}��g|ut~���$zm������v��s�����������������������:�������/
�s��s�A����~�T��z�}xp�M������������X��������l������������L��y{���q�������������-�g�������p������������Ln}������t�������"�V������O������w�( ����[�,���x���x���M����
��y�h�>�GC�TU{�x�%��%�����%��%���T��D即���#}�f���
������؋����›���%��%�����%x�%{�T��G�>�h������
��
˳�&�����~��������'+�����������'���}���������~������~�����������������}���}����������3���3	+�t�4��b��4�t�D�����8��0���9�m�i���%�i����f��������������+�q����U�����3���������@�������
��
��n�D�D�n�n�D�D�n�n�D�D�n�n�D�D�n��.�b�XXbbXX�b��������p����c��}�z�p�p�q�h�&��������c&}hzqppppqzh}c&���������&h�q�p�p�z�}�c��������������������������
�����o�1�1����!�"�!!"�!$���o1111o����!�"�!�!�"!%�����1�1�o������$��������������Z���<� �<��ps
�����7
���7
e
���&�]���&�8�t#�4��#�4-�_�G�_�G��� 
���C���3��u����X���r� ���9�*�Hb=g���h�`�̀�����,�����������ް��5-��"����MM/�8��(x�,��(�9�0�KDz�іɕ�O��T��Om̀ց�Q������\����Y�5����Yy��{�)�)�+�)�j�x�Yh�m��G���{����I�U����s�V�7�=��o�{��vu!� z'f@o&d1��c��a��a�P�E�b�4�"f�|�au�n��O鿦ɯ�˱�n��n��o��I����7�J�!�I������5����.�OB\W�Q���Ħ���dRۛ~��-aOpbK�I�2�C������@�l�U�[������s^�Y�oc�`̄ƃ�~����ƒΑ����~vD�,@a�D�1��"�@�3�b�yЀ�ѐ����l�"����k�"��rbs��Ir�3p�1o�1�]_qew�G�1��(�'�$�:�e�����r�)n�'y�*��ԧ��ӥؘؒ�6��;��2]�z�t�[�u�n�s��� ����P�D�cl|P~_���q��������<����������}�N�x��0�k�<���N�������������/
p�ti"d-����"�`�#�6��9�VѺ�D�����������M����V���"T�A�������K�$�� ��T��h��������~�t�T
� �t~������~�����������h
������������������h�������������������h
����������~������t� ��t���������{�tR� �t������~�������������������򕃘���������t�6
���������������~�����~�t� ?�t~����������������������
qq��P�V�]�]�t��סж�������i�h�h��MD�;ZQuItI[�nt]��F�EQ�Z�-[+@@*e��-�8��;�@�@��4��������������u�vǹ��������ߤ��������������p7ZYCYCq5�(����������������������� �v��
�>����>���>-r�>-��>�j7��)������1����
�;��a�u�a��b�t�a����vz��������yvvzyu�:uz��������yvvzyv���LR]]S�BR�]�ĸ���B�]�S��x�*�.N�Z����wR�]�Ĺ���w��wR�]�Ĺ���w�Ǽ���|���������������C��NG�CCG|pNC���������������!C,��3�1�3,�� ��q�|�]�RS]^R�BR�]�Ĺ�����_���w���η�����}�����|���w����$��䔻k���i��ᦿ���ů��I�7�����J��+��k��t���������}����n~����x����?�����z�}}���}�������������b����;u{�{~(0YP��
�K��S{T�Sm���������������������{qiTAsF�G�K�i���wz�������w0�o�_ew��k�j��	"�˒��l�s���h�z�t���u�|Ц������y(0u"�5��������@B���'��\��ϊ؊����s�q��ٱ������0@��.&7�e�}�|�_��g͗��������������������������|qD|u�n�l�a�K���]�~���������������������d� i��q�qq��u���zw��|�wʎ����ó����^�=~Ş�v�}M�,������7���Qu�p�z�������T�S��(�����p���zKY�N��G����J������ ��b/ѓ��������c�c�t�u���p�4�K�6�gp1���zy�������@���������������������y�r�7�Y�}�{�w�\�������w������x�F�i���������������������s��}��t���x��y������������������������������o�G���qt��
�s�p�^�)X)iz�=J<I�
����ԑ�yʂ����������X�j�eˈP𫐠���{�y�M�9<��I�b�q�u�ҏБ�Z�=�Z�>�F�df�|o�L{1�$�+���#~[G0`SQRn�e*wXjs�I�x�[��Ͽ���^��d�7�,vX�9�<�D�B�c�r�������������~�������������������������}�\{zeugwT�qtmq�F�X�ec_�d���d��y�q�]ʼn���������������m]�n�r╠�����Ĩ�@԰�=�������{������ ����j<5x0�3�%��������������������\�Q�M�������������G���#�K�.�<(�������؃���f�f�f �h�8����z��_��=�K��
�8��^�@��m�K#�2�'(��h�U5���h��KQ�����y�����������%��.�"��/��b��7�������$�:�,M%��s�y���s��vnX������}�|�|�����,����#��/�� 
K���=�{���@��������m�_�X-�P�u�P�ª�����.�M�IJ��T�2��&��&���<�_�]�A�Q�S@�QdXJ*���13SsVQ�~�y�s�"k�=O�B���m�m�Y����������XX��[�J:�3�3�:�J�[�XX���������Y��m���
��)�M���C���K��K�|��|��v�pus�r���dopdad�o��������mn��no�&�{{�xoj�p��h_�hm�nf����������������A�����rk��R���h�������g/Q��Q��I�s���������7�z����������6����ݺ�����Ͱ�H�f�H��́b������������48�T�T:
�t,��[�tR
���4�:
�t,�[�tR
��4������������t���������cM�A�AM[Pc����|�xxW
������w�������/�����g
�T��M�Y��4��
���T@��������/���w��p��{�M
�4��|
�������T�t�t�T�����
��
�4�
���$�D�d�d�D�$��
����|
e
���~��mp�k������`�Yy��u��������ݶ�S�Hk�pf�1H 
��������x�
����������������������������������������H���H��������������������������������-�H���o�{�H����遏�������������+�������������H���H����������������+�����������������H�������������H����-����������������p������m�t������}�%��I3�U�����[���R�����H!f��������������_�����x�x�o�r�iB?z<���������.�"����������t�o��2|���3�������C�������T˳��T-
��hn��4���
��Tg
��5
�T/t0
��g
��
P
i
 �v������@`��g
�t�����A�A�2��A�A���A�A���A�AI�'��t�
�t��2�F�^�wtp�c�s�����������K�c����I��
��>����Z�Y�
�2�d�e�Ҧ��t0
�t���E�
�E�E�#���)�v�����o��}���}�4����u�{���z��u\�
O#���nWv�Z�����h��,�l�t�:�$�4�Zsj{rg�������l��b�1���Xl�dvG�'�b�Q�^���{���y�q�����a|x��|{�j�j���������s�}�����������������.Ӣ�ѡ�?�I��Y–�����K����k�.�#�4�)�s�V���
�1��|��5���G�c�%�1��A���� �X��R�f�
����7��n]Mw]�^�}�����ǟ�x�w�Vo]�
�yt�y�y��������������w�y�B �A��'��!��3EM�M��!�#]��([�B����4��W�t�I��m�@��n���x�Wx�W�t�I�����������W�ȇ���$�r�z����ӎ�l�Q�3��J>�Rq�����_�(�%�v�v��=�=)�G�/����H��{����uA�R�6�=z@k�wl�k�k�w��������l�l�ae��l�j����������{�R��I�7�
��A��5i�f�sg�f�f�s�����h�.�/��g���g�e���������0l�F�
����
mi�E��#�=[�Z\�Z�#�=�E�O��i����������N�����Q�@������Q���������������y��Q��������@�Q�������p������z�E�������������&��}���9�ً���܉���{�H�[�1�����������N����[�G�C��J��ۋz"q*g2E��K�a�"�8�1�&����*����a�/��rwxrr�w�������T�(����v��]����������������*I��0���������������
��
��3����30�H��5
����7
��Tz�|��4#
�5
��
��T�|������������������6
�T��>
�4�#
����T3~~����T��z�wwv�x��T�������4���4O����e����9 �1
�����������d�p���S�F�4�7�z��w8�,�l�����������r�7����R��Z(�x�[��t�s�[{��+��;f�������C�3DK^Fx���u���k��r��l���qv��}�������������T����K�����?�(�&�P�X�+�)#JU�^m�m�m��jg�e�nyiYW�»������ë���P�����7�i���S����պ�ԤÎ�˒r�Spp�o��G��.����B��%���r ����u�`v���t�T�tp��
�TR�4%���Z�d��z�{�	
�	
�IS�4(
���
�k�.�
p�k����T�������t
�t
��
�tR���M���o
����
���6
��~���������*
��Q�)��ۛ��S�%������4��՘Ζ���T��˫�K�T�]�H�A����F-�"�K�
g_�y�z�}>�Q~{{�~؉؇}�zy_�g��K��飳���ܩ�n�_ZZp_bn:�������v�k����bA*t%n�d�ʋ��̫�����4�4���������m�����4��tb�����m�����+�+�4�4k��kL�J�J�l.�d ��
��|{��|�8S"��1�Þ����H�=|}��}�6TV�5�wS�L<JI<{�{�|��4��"U�4�wT�L;KI<{�{�|��3�1VPwcSM;�Nۛ�����0���0VPwcSM:�Oܜ�����-��7O��d����ٛ����T�8���9O��d����ڛ����S�;�@�Ǡ����L�9����"������t��������s
���V``V��V`���H�z�u�|�K�R�Kj��g���
�ů�������ɣ������YPOdq2P2R2QreL]]]L��e3�0�3�a�S�f��ó^U�����hv������n�2�o�����E��������`+s!���j�m�d�f������������J�\������e������܌���
����<������b�d�a��ʵ���֊��ی���
�������������!�z�2v�Ԁ�����������<���r�qo=w5d���:�y��.�����h�O��6���?���)�k��k�k��
�k�k���k�k���k�����������
�������ɲ�~�=�`�U�f�6����@�IV������������`b�����1�N� <��:�M��@�x�i�]�'8��������T���
��}
�T��
�T�mh�n��������������PelnhK���l�eP�����������������������;�T�
elnh����l�e��Z	�P��I�{{�{{{��{��Iy���!�����������
�������~�������������$���~��}}�����#M4m���	eupb[^�d�tQ�E������������T�����������Q�E������r�e�����ĸ� �b���������$�����������0�Y����	�`�	�_��_�	�����fd�egg��h����1���(���'���,��� ���ge�ffg��h�a��C��N��~�W�����������������������������H�y��n�����j�m�����j�m���)�KT��e�]���B�c�=���=�=���=�O����J������i�����!�G�)�e���G�l�G����}���ff>TT=��g��}������}��R����������������I�c�ZYccYZ�c�������c�YZccYZ�c��������\pcdw�y�wx�R�j�.�����j�.�R�����c�o����ͭ�}t���������������qZ�������bZZcbYZc���\�L���
��g�S������VI��m�
0�ܰ�
�.��G�.�����k�.�L�.�k���?�+�����llH�\\H��l����������Z�釧�鏼����������0��
����
�k�cthjz�{�{z�7�L��v�v�K��7�����i�s��ù�Ĩ�w�л�����������Qa�������haahhaai����?�U����l�[�����Ĺ]S��Z Z��+�)�*�*�����MO���v�rqvvq�� 25 �3�����
�+�q�v������������6!M���r�34��2���o��q�v�������*�
����� 
�).����`��`��`�������N�W���{�W�M�}�|�X�L�y�R]^SS]��������������T�T����V�Q�~��ù��ù]S������S]^SS]�����WQ������U�R�����T�T���������t���t���4�''��t�T�T�t����t�T�T�t�T ����7�8��8����a��`��a��a�`��a�^�������M���kl�`���
���8�a�M�a�k�aW�`�a��9�M��9��7���B�a����
���8�M��9��7���B�a����
������H����g��g�[�o�������\���@�\���C�G��%�:`d��h�b�gb�ۏ֯�Ȱ�����������:��%�G��?�G��%�;ad��h�b�gb��N������;��%�G���H ���v���/��}��������7����������
Q��Yr�3F���ZXa��X�x�wx_blk�x�����B�)� K��%Lo�3�B�����J�������w�u~�k�u��x�u�����*�k�?��O�z!x�yxv�z���A��������Y�����
�Ϲ�������[�D�j�m�hl|�{�{������̡���ԡԈ֊���j�8ч�������������5�T������&�9�E��
�Z�$�j����������b������������<���r��������(�B{]�<��6�T�Y�u���Z�|�i�JC^E,g_zsyub��Ֆ�Ӫ������u�^�q�-��1������ݛ���zJ�1jI�1jgT����iԻ���E�Y��}M�F{M��`���@��������]�����~tv��t�z����,�������������������������J�����~����Y�������=U/�0���A����������������q��t��ת��ԛ�����d��z��}��������PPxvtnos�������������������������~���}�m�z����Vz-cObPru[�N��
�S=��)�i�d�<&l��i�X�sŒՍ����0��Z���Z���6�:���3W��4�U��_U�2�6�6�W�B�N����	h[aj6GUv@cLj��^�H�I���,�+�����T��j���k�(�j���j��c�+�,�5�4�+�,mmZZ;�Z�Z��۽����+�,33m���0vH9*��/������o���⩩�+�,�4�4��>4�
��q�{7�$�//�)�9�wh�	���0�m��+�,�5�4�+�,�4�4�,�,n�Z��ܼ���ۋ�Z��,�,�����>�'���l�4�n��,�,�4�4�,�,�4�4�,�,�m�Z�;ZZZZ;�Z���+�,��/�o���-��D��������/�#5>'}���n00nm�,�,�5�4��,�,�4�4�,�,����ۋ�Z�Z�;ZZ�+�,����j���������+��
����J��Ѳ�"�^����������z�}�i�{��ѧ������錐��������z�s�s�^my�z�Svn�n�U{u�u�w���z������~����������������������˜����ڦ���L�vewe��:rnwt]R{���������ϝ��ȹ̯�����\�����j�����t���a�z�������m�|�}�l�~�~�n������h�~�u����������������������N�?�M�a�m�����J�}�����f��g�^�%��l���l�I�%��u��X������Blznxj|Z�6{�&���1�~\�����������N�UL���������ܿ�I��4�����'��6�������k����Z�6nNw���������������������������a���������������t�T�T�T�t��
��
���T��������]
��g�Z
��`�7�7�l�f��,�,�fA�V�4�
�g��K���W�?��t�qE���E���E������4��4�
��������
�
��
��@��
�5
��/�0
�x
���AA�K�
�TV
1�CK�
�TAK�
�TA_�K�
���y}}yKy}����������}y�T9
����;��9
>0����y}}yKy}����������}y�T9
���P��t�t��p����f�e�O�ef�x�x��x�xe�O�effe�O�e������D���D��������8|
 Z������ *�`�7�Q��� �`�6�����w�%�	�Y�4�W%*�%�	�X�4������������j��%����1�������������g�6�`� �Q���7*�`� ����D��4�	�Y�%*�&��4�	�X�%�W���
��T�����#���E�E�#�����\��[^��h��n��T�����^������\������z��.����}��T���N���N���N�����i�Y��T���}|�|||��}�T��Yyi[U��\�`�u�T������������T���������v����
��
�+�
�@��
������8���T�j�M�Q�M�Q�M�Q��W�m�[��F�N�$�l�\��T�T�{z�zzz��{�T�T\vl]X�$�F�N\vl]X�4[�^�v�T�t��
�������������T�t��
���������P�8�j�J�2��R��Q��k����V���o�����8��������>��A�
��,��������'>�&�&��������2�u�����Q�e�����G�W���n�!�e��q=s)b?�ɽV����W��X��/c���������@���o� E`(�������y�k����2@�	�/������@���O�l��m�C����L�����A������A���l�s
�����	e�1<fXEi�o�B(�4�G�#������ɷ���R�M�7�L�M���ģ��[�?�Q�m��k�ȥ����a3N���H��
�F�?���A�G�!�<������/0�U����@Y\@���քd�= @�6��>�������U�*���*j�*�.�N�������������������z����+8��a��{�z�{�a�����Y�%�#������������y�=���<�=���=�<���=�<���<�*����`�`�����`�^������+���LPzlX��1�A�z/�-����6�D�&��@��I�����`�_����4��|�����4���B������
 4���4!�����3�}|��~�j�k�/k;j:/d;�j�k�j�L��`�������*
�`�h��������������u���Y��5�4�Y�\�5�5�\�Z�5�6�\���~� � ���
q�@��-�3���3�T&���k������������������v�vXw��p���D�>��m2W��.�_�Z���8n��������E�� 5<�hL��hL�Q�R�����S�u���'/�����>0����A�g���z���8�(�Ғ��ӑ���P�����0K�C�'�Z�L{o_�u�����O�n�	�ɋ�#��x���W�{��D����ߥ���p������B�dȋ�e�E��)�p��3�����+5�7w�p�	����n�t�T�y
���@
����y
�4��'���
���
��
��
�
��u
����n ���
��t'
�T��
��
K�
��K�
�V
��'�� �t��X�t�@
�X�t��v������&�'�y���&�'�Y����
�
���
�Y�&�'�
�y�&�'�
�b�K�HJj�p�������̃Έ��bi
����������a����ouwr~�������'89�{=�{��mx������������<�*e>����o�kjqpi{������A��R*7}xE�|��}jp�����������]�VY0�-�|�xp���aime{���}��l��d""�p*��}�|bl�������������v��\&�A�}�xf�a�) 
����W������po��"��_m���3���m������������"�������3��s������ٝϞ���¿���������8~���~����}������������~�������h�s�������������������������������׌���������������$���������������������z����������������c������������t�c��^�����������_�������P����������v����������������������������v������������������~���������w�~������������������������������������y������������������f������������{�h�������������������������{�������������������
�����
��Z�~���}}��}}�����}�����������������||{������|������������Z}���������������������������	��z��}���������{���1���0df�}i��t�j�\��KMuTu���z�y�~��������0���0�����&
����
���
��
�
�<���!��!����
�
��!���<�
��jv�����t�
��Ǒ�m����l�����!��4���CP�W�h�Ќnj��������������������������|�vw||r�yI����s7h3^1c:gJlX������������JU>�]�w�������������������D����&���_��n�����������������������r6�Hgd��al�o�r�@���/������K&``m}�"�,���� �����y������������@��}�z�~�|�{@��Ë�����)�������ҧ̞ȭB�O�`������)y)o3h������������m^��Z��x���
���
�:���w
!�4�i��� 1�J�{�z�~�v����������$����$���{�z�~���������������J1��� E�8�)�3��y���������������{�|�|��y�3�8�)E�
���
���1��V�!�4�g����V���Q��G��� ?��3�������������������3A��� H�W���T���!����� �5���������������|x$�5�!���
�~�;������
����~�V��!�4�t���/�����|��h�7��S.1l~gd�`��;�!������������������w�g��vp�h����
�i
�?v��
�x
V�!�4�������m�T�T�T���������
�
���x
�������-
��V���P
����P
����P
�������P������fA�V��
��T���l�f��P��������������z�z�! ���
�P
�����4��4�����r�n<��B@(��vM��z�zy��:�(�(�������! �u�6��B@�!�eDR���Ĩ���nhhRnD�
�����
�x
K����!�4B���f�~����:�;�8��:�;�����
������������5�E}}��o������ۮ���h�J�t����������o�%����]�8%{~y�x�g�(|{��~r�����������x�j�r����������q�O�>99l>SO~~z�z�
���
�x
K����!�4����
�E�Q��y��
����������
����1���������
������������
�%v��
���w
!�4�4��v�����{���v���}�������������J���J������}�X�}�w��}�����v����w�}�Xe}��w�}�J���J���}�w���e�������v����������aʁ��������ӎ���y�L�z�z��y��ӈz�z���|�c���y���u���Y�aa�f�f�6�&������̶Q�HyA~`��D���ޟ������(�����#�P������g�Q+<�3%�!!!�S�|�B��D�����������M�h����ߺ����� ���ђ���O
�.�-�.�-�.p�l����H��s���-�����U���7����s���H�<����J���J���J�?����H��&������U�����r��s����&�l�~�v�����~|�|||��~���v}~rr��r�r�}�������������������������|�"�����������������d� �^)�[O�K�0���-n�p�q�
D:��)�r�J�?�t~���������r�I�F�o�9$�"�%�����9��/����i�ü��I�IR^rdcl�m�k���ԧ��2�*�:�8�)�0��\��pFN[BA�\�Ÿ����g�h�gGDDl)�3��=�
���
0�
���jR��V�V�VT�PQS�yV�V�V�����:��R�j�������V�VyV�TPQ�S�V�x�������V�Vy�Á��•���V�VR��j���h���h�
��@��x�m�����Ł�y��V�V�����j�R���t�t��t��t��F����4��x��P�p�����������������[��p������x�4M����F�q���q�q���q�Iw�w��v���|���yx���*��|��8�����������G�}�A�I��r��w��-�u�����\�?�	�5'���p�����x$�� PY8������4�I�5�K��� �G�3�#���T�1��!����I��%�>�H�G����U����������B�&�����������v\w�ͷ�����- �-������%b�b�d����&���-�JRp�r�v��Qi��u���,������t�~��՗Ӣ�9�������R�M�g������Ĭx�{�}�ާ�EvhrjplJ�- �?�&n	�5d�b�b�I������,��u�e��u�i�`��M�6�f�X�P�����lj�iij��l���PXlf`�M�6`ZiRuL�};�p�omm�o�p�|;�L�R�Z�M�6�`�m�[�������
���[��Ɨ�����M�6���Ġ��|������������}�����������+��v�j�������S��&�z���������z�g�M�Rj�h�e�d9o�I�CAA~CtI�o}d{fxg�j������;��v���+���I������z5�&o�?� ���m�j�hĬ�7�;�j���j�j���j�j���j��j���j��
�0��K����B��H���
��\�O�+�:�������x�O�a_U�TS˄�B����g�f�t�XRweWW�k�!�����:�{�z�{��z�zy"J<%wl�y}jh�w���|�m'�!+\�!�
��ո�ϡ�n���������M�b��������x��������7�������������t�tt�p�o�p��yje�f�{��m������~���	Ǻ������ �i�ii�	yz�yW�uf�^�������
���V]g`[[f��������_\��� ����A���^���N�?�I�`�U�j��f�#�b�'�^��j�T�m���4=yBF$�������3P��:kS43g��߫��ޯG@����pFAw@�UM�M�M�%��O&��i�Wt�LXU�_�o��gBF��b�WR�?�d�/�y����(#�-������:���=�������������;�������������r�a�``��^�_�^�r��ruke�dA~����������R�?��‰“��w�n�mm"�?+��R���������������U`�B��=�j�ȕ����w�S�<;QE>?�F�` �����
� ���R���X�����X�4�! 55 p�q�sa_^U^H��K��ʲ�Jp��w�����������m�����7���ų���u��~�������������������/�/�:�q��������~�i�y�����k�k�����k�k�����k�k��gf��ho�py�p�o�o���������������
�����n�0�
+�(�\f�m�j������ő�¡���������C�B�{������������g�tzl�dg{S������)���������i��k��-���������z�/�R��ɮ٫ސ������q��,�Þ���2=�5�����������q�n���Y�V�L���9+�3��zZ$�;;�#�}�Mwz�V�qzvy^oy�z�z���v�!������UggTUT���¯�¯gT�{��fggTgg������¯gg����UggUTU������gT���ffgUgg��������gg���!��M��m���#�����[��8�I�C�n���y��y������|����������죢����������������������������Ԟ���[�T�I�&���%�7�O
�����~�~��������Tvt�s�r�v����6���1����p�s�����������������Y�M�	�O
���w�p�v~���Tv~t�s�r�v���l�U�Xq�s������������������k�	���%���]�r���������������Kw�x
���ܿ����
���D�&�l&�y�P�����
����>�T
�/
��������Ua
�������
�
���������3�����������^�������bX�k���>��C������_��}�g55�533�3g}cm6ﳽm�v�%f���������~~��O�~~��~�����^���������a��}�g76�7/.�/h~bn1���l�p��.[���Rh�5kuZi/�4o�e������������
^W�f����������������7������������h�7jvWi'�2n�f�������������z�#�z�C�p�i�s�L�2r@;pEVP<Q<m+�,�4�>�;�O�d�l�w�����
�#�>��
��������������������ƭ��
��t��t���������4��������t��t ��t��t�T��������t��t�����e
���7>jVR���H�����������%���HV��j��E�#�#�E�E�
�E�E�#��������H�R>�7�E�#��E�#�#�E�ج�����H�����E�#�#�E�E�#�#�E�E�
�E��?�>�?�
��������	++�	�
+�	��������heXuS�	+�
�
��	þuh����������	��
�	�+�	�
++�	SX��e��������������%���������	�+�
���� ��o�9�˫�4��9��/�ː�/��4��G�j{fj}�^11^�r�t|q�����j�|����$���$�J���|�j�B������G�r�b�rrKK�&�	���������������j�	S��ˤ���r�eG����e�����~�1�~�w�~~�w�~�1��������G
�z�z�����0��v�~���0B��������KR+%+
�~
�T��+u�+������~�w�~10����������G
���4
�v���2
���d���������d��0�
����m���c����Fr@:}77:��@�����ڳm�-�T�0�>�����2���tM�����2�V����3���3V��2Y�&���L����t�������>T�0-����������V�-���
K��K��K��K��K��K��K��K�����T�tY
�T��Y
��TY
�"�6
������������g�n�~��Y
��T��Y
��TY
�"�@6
����
��������H~���������Hf����T
�T��������g�n��p(���������������p�T��<}~�}��������<���4������T�����T������~�}�<��2
���<����p�4�t�p�
��Y�:�YY�%�$�~�~�$�%����Y�Y�:�YZ�$�%�*�*�4�4�o�ol��8�������I�I�������8��o�o�4�4�*�*�%�$����Z������u������*���
������+���
����u�H����d���8�lh�Tw�w�v�������y�m�\����_u����5��������^��/�7���h�Vf�������J�C�2�2C=+�J������V�hX�[�<�*�N?�Y�3�: ������]�#�������"��S����:��Y�3�N���������%��%�I�%���%���%����%�F�%�"�F�%�F�%���"�m�m�m�������%�@�5����z�"�m�m�m�m���F�F�
�V���m��y�j�j�g�wrPE����]�����}��������~���S�u8ӗ������������������)����x�m�6�����
���|u�w�}un]~�'�)�k�p�{�u�~������������������������y���������
����n�k�upto�g�o�>�4���y���}����Ϧ�)�Q���4���
g������y�r�=���7TRyy�t�v��z����3�����������*��������WJ�t�t�x~����8�tA&���ys�j�m�m�}���������������՗����������������
��:
V�x
�������
����������������������������������������d�T���T�-
�5�������P
����������x`�������
����������� � ����ee�pZp� � �������%�$����
� �B�(�(�BP! ������(�'�'�������$�$����
�G�G�������(�G�G�����s�$�$���z�h���l�?��9�����������%�$����
�������������������������_�{����������_�{�������
V��|
��m
%
�G���G�G�G���G�G����EQQE�EQ��������QE����G���-
��
����
��
����%
������
�E�Q�t������
�
���l�T�������^_|_j-Z7BG:?)_�s:y8�C��Xc�cs{~s�y�y�y�y�z�y�o��t��������������������o�����֎�~���@���,=��"��H(�`��dine��|�An��q��������������˗����NJ����ܨ�,����+P�מ���
���M���	q{mv��=�m�
�����RJ������C���w�w���7�c��l�!�w��/|�)q�%�
�Q�X��e�������Y�G���D��������W[���r�����0�I����d��?����q�o��v|wv���N��X��^�U��������������Z���������l�-ƒs|e��W�"}f��ڋ��\�G�Q�+�L�������~b����G���D����C����d�5�.�2�6�J����:#��:���t�|�m�c�U�Jmopm�v�n�]�TB���4�B�@D��d��$��r���������v�J�L�8�������8˿}~��=����.|Ն��s�=�x��zo<�B��������������d
��������l�8�l���	�\�������ʨʩ��ܧ��x�x��Ӫѩ��̉�Ш�ܧ��̩ۨ�~��������+U������n��/���nT8)m'����x�x�����x�x����+U��mT��s���_�����^���^�����_���������x�x������x�x��((��8���m��0���n�y�fz�������z��~���|����~���w�L����������������������������@���������������%������"���s�x�@�����{�s�@q|xs@�m��w~x� ���~�x ��_s�x������{�rr|xs@��s�x��@�����z�s (r{xs �2C���������������������������%���������������������$����������������������%����������������������w� x}s@n����ww~s@m� (�{��������|���������vk�6��~�}�xen�������������H�G�)�qtyduw��{���������������z�~�l�{������������s��{�y{��������������s�i�����|�h���o����b�p[N�@~���� ������r�@���na����&s���� ������u}{x�w� cn�������3�������o������w�~u?m���{�������D����@�����}s����~�szzqq�z��������s�}}�w��_o����G��~�}�xem��������������HG����������o�����x�~u?n��{������� ��~�}�wfm��������������G�������������(�����������������%���������������������$����������������������%������������������d
�����;�z�u�1�t&�A����"Ω̵�i�����&��L�̔��+��@�����~�t��vq�az�p�������@��������u�bw&�����8@�SJZu\ek pkf�Y8@,�����F)��:�������J\^GZg��m��n��|���������~���~�r�N�v�����Ư�r�i_��z{�wow{vy���}�p�sV��1}ns�o(>�������}�>�pt�lN[XKH�[ͨ����>��-
���"�?���4�����'::'�':��������:'�,�Ah�"����t�t������LR�A�S�1�S�c1���J����ֶgLXpjZ�@� ��=�P�B�BPOA�A�O�����������gŬ�\�]�W»�[�Z��3�)��S�����f�f�@�_±�R���D�=��̹���|��ͻ�M�V˹�$���Q�G̟�^ͫ�w�_�B��G�.����O�`�I�Τwϓ�RϺ�T�EDjX������������3��"����"��7�<�"�ߊ��m�Q�1@@ry�t��8�����s���pv�u:@�����r���fqv�u:���d@���r�_F�������/D@�>�L6�L!�� @���+���������O��h�h��h�h������[�N@�c@92;�����@�����1 ���y������,����(�(��,�m���m<��}ni�k�<�ytg�n��������(�B�nl�mva2�gW�TP �����Q���~a���w���e���z�����!uP�������!�Eu�������:�P�B�BPNB��G�=�_!!@1�@��Z�*������y����@u@��������_@��M��_��H�EQ�Ji�Q�wr�SrNG2��Jt��A��������(���@w\�EQx�]�nr�TrN��:B�N���������c�T�X�.���E��!���]^����g���������g�T�W�-�������|cQ�� ����f�
P����������+���(�(��+�l���l�>�vI����I���<5�������YaqT��;�Qvy�{�Q�ŷ�����`b��Z������
�Y`qT��;�Rwz�{�Q�������9�RI�P��P(�����*/�inW�����|ϊ�L/b\04�]������O��_��_@�P������(��	���e�,�l�,���|�}�
��v��������)��e�iy�����z ��������)��v��������?��������?����4��
F���������or^{g=Z�������i���
�*��������������>������薚��=�v�������������*��0��������������������9H����3��
�F���������os^{f=Z��P�����i���
�E�(J�-�����I�������4��������������i�^x�����z �������x��d
����6��2��3�������~�����*�*��)��(��!���=�
�x�e�t�pqR�t����������������J�͉y�iiylH����Xzdipsl_~UGJ��h��s��x������y�W�9�Y������������ӿw�y��k]�]s}�zw�~�{��m�h7���k>�Yi�{�������
�zt�dYg��rn�|���oM�򹓝�������������gp�tx��*�k��S���������������k�*�k�l��1wGb_]aT�fvs��t�+�*r����\�������zh��e�N;�h��_hg_@_h��������h_�����i�����l�u�~��~����������$rfP|KEU��f�a�v���,��ɼua��a�P@��d
�����Xv�v����T��@���A�!����!�K�Ty�	�����
��~@7뀙v�~��6����
������������D����
����
���T���4�[
*<�씒�������<�Jڔ������o�C��j�����S���R�'"��p�G�	�*��J�,�����)��!����!K�Ty�p��v�~��6���
����������������9������4:�T[��R
�T��:��T?
�T��:�T?
�T���t�
߼wO�V��VOcZwE�;��(
�K�&
�L��1��������H�u
m�4�"�9�!�4� �D�7���*��*�����~�b���������EL�pC�Q��'�]�V���O�
nLE�������
�
��3���(���`�`�����b�e���!�u��!��3�U��a
�������
���
m�O����%��*� �&�-�~�&��ހ���`���b� �z�]�A�)߀���F�9�:��5�$����
�_���_��
�E�A��������������b���w�}.��$X�'�����[�����[ހ���������poG�b{����������������������
������S�x�Y-��	���q����|���k������j�o�uh��yə����R��r�	�����T�i
�����_����s�u#�
�f�f��"���ss~ki�_����K����_���������"��f�f�#�u�s����_���^���T�T���T�T�O
�O��
Z]ukh���PUj=;�<��$�=�ӭ�������}�(������7�0�!���u��c6�rt�v}ra��f��'�����Z�X������,�W������a
p{��Y��
�XXuxmihaX_)(X��b�hu�X��
�{�T�K�T���T���T���T���T���TK�
�T���������������������������_h�m��x������������
��������T���Գ���
��������
�i�V�!����������!��V�iK�������
�`R�Go|iv��
�
�d�d�}�}�
���T�T�4�4�}�}��
�
�
�
�v������8���7��8�W�9��7����̩��u���x�t�o��v�w�p��E�V�3��'����(�������I�6���/H#�@��_��6s�2�r�����������v����)���	���������7�,u`melh�@K(w,�k�/�T�c�W�B�R�Z�s��Z��������V�:� �[�X�2�;�@�L�p������Z�"
���x�#�&��|C���@H�#SQ�4� ����+�� �2�й����y�z{�6C'r �v�'�Q�j���a��N�S�c������I��=��λۊ���6�O���F�u����������ɷ�a���y�r�v.D����x���yl�u\eh[��x���O�~�|�i�K�!� ���u���F�
���$
���z�z�������0�	�N�e�e%�N�0�	����z�z�������������������������������
��������������������
������������������t���$
���z�z����
�������-
����F׀����
�D��
�D�����w��P��ak�O����N���(瀰b�X�S���9}�^�H���t��T�U
�D��
�D׀�������7׀����]�]��FJ{oQ���$�w�v���
�r��G���
�t��K�KB�=׀[
��v�N�;�m��Y��������i�)09Q��瀷���]��
��T���
�4���������������G��%
]� c�mgc���cm����������*��um���v��pvvp��qu���������vp�$�i݆�y�"�Z�4x������+�4x$�Zy;�N9�������������@��?�@�?��@�]�?�?��T�e�[�R[ed\\�d��R�����j����������b��O�� �����e�[�j|ƒ�����������~�b��O�� [ee[\�e��j�T�SP����e�[�P������Z���[���ZQ�R�T�[ee\[�e��Q������Z���Z���ZŅĀ���������������4�
P����:�����
l�����9�4��t�M����J���lrH��m9�	��M��������qxttur��������������Je��
���sp�szy��}e�
���<��������cH��u�Rtyzuw@B�X�����2�����ʳ�8�g^zp}UY̲nx�v�w�ww~zm��#����Ԓ����������,���������f�����������������������~��t���x*��}�-�������������oA��c�2S�3_�(���%�Q�,�d�F��W<~����4���g�E�W�RC�tp��|��1����$�+s��<����
��
@�T�)�0��a�_�i�3��� 4��X;&��
���us�s9&%9l�_�n�hY5�����]��\�a�\�<�R��V��k���_�k���`�1�T����<�kOF�w���2���ϵZ6��_�"
�
��g���<�jOF�x���2���ζZ6��`�"
���g��-���~�	L9wu�z~\L��y����Ǟ�My�v�}�N�}�������	����������ǜ����z]�����z�7�����T������t�T�t��t�4�t�4�t�4�t�t�$���r�r���d(
����
���*���*�����TR�4(
��*���*����'
�4(
�T$�d���r�r�����n���Z�\������J�x�k�^kwwk�k�w��^�����~�|��}T|����z�x�k*kw��U|����z�w�k-jx��T}�����һ�����xj�������Һ\D�����E[[D�S^m��x�H|��|T}����.һ����һ\D�.����#����##�����#���������
�'�V�'���'�����8�����������L����t�t�2���2�T�2���2�T�2���2�T�2���2�����������������O���
)�$������x�r��O��������r�m��c��������q�ly|�~��"��|�yy|�~��@� ��|�ylqrk������e��w�}xt�����[��p�wtop�t���b�������p�t���U�������k�r�������#�����
����$�����������������U�������������a��ᰥ�����m����}�||}���€�����#������V�䕌�����O�V���@�P�[�������d�������������������������������\�R�\���D?���G������!�cL���������m����������?J���9_����������	��l��q�1�:���KI���������<�E�Q�8���8����?�E���������d�V��w�s������-�1���a��������S�]�aA�����<�U�i�u��t�,����������e���#���z���_6�������������������I�c�������l�����������T��7P�7���o���7������w�>��������>�����?�������������
�D�����B��(�D���D��(�B����z�D��)�A����NZ����ȼ���xȼXN�=�v�
�:j�TR�R�;���;P�P�Q�2�<���;�5������,�$�(�)���M�U�]�(���)�+���+\�T�M��q���q�z΂�3�����4��y�p�m�1��
�.�o��Qk�e�^�
�����'�u�v�&������^�e�k����7|��e��pex�#�B��9��o=������9�B]:�#��/���ݠ��p�����"�\&�����"��iR��e��x�p�����
hB���
���R�XD�@���������� �_*����� ��pX�����@���Rp��c����h�E�����:�dM�+��A�����*�[ �����$���0�b�w�q�f�]�]�]�U���9pttp.pt���q�������to���q�J���N
�����J�A�N
���A�J���N
��l�L��6�H���������������p�A��O�YK�I�+���+s�r�s� I0�"�/�r�I�H�q��q�I�H�r�v���;�(h�q�j�u�q�i�F�����
����ﷰg�����(����7�]F���$������g�����)XP
��������p'���7���)���28���]8�����j*�%��j��j��j���A�o�]��"��
-�]��"��-�]��"��
.�\��#��<]�i�|����i�|����i�|����j�|�������6���6����6���F��ٯ��������6��UaZ�g����<��xg��w��������������������;�A� � �A�@� �!�A�@�!�!�@�A�!� �@�9����ŵwv�mQ��uL�flD�^A����94�wHMZ��X���a�ǂ��ݏ����,���!���|�����)�
�
�*�)�
�
�)�*�
�
�)�*�
�
�*���*�
�
�)�*�
�
�*�)�
�
�*�)�
�
�)����[�O�CPZ[P�5���5�Z�P�CO[[P��P�[�(ǻ��������.�S��"�0���@��:��M���������`ed��e��������S�O����[/:~~|yw�{���
�>�g�7�.�iczdfp�t���+��&4��R���������l�^�����v�Q���B�R��������{�xxgd~y<��/R��c�4��j�c�'��^������d�<�/�g�Z�8�%�V�������d�
�
X������'nh��`����z�{����{�������@����X�'�&������'�&����H�`�������h�������-�Q ���N����������k�g���-�����`����`��%�`�������a�z�x�w��wx�z���xs�h�t�T��~����������T������x��������'e�'������'����
����
���������x"�888ށ888ށ888ށ888ށ888ށ888ށ��888�11�
�r�����J��8�
�����8��m��D�ڱ��8�
���8��m�898݁xy���f�΢�{�c��E����H�����
������$��D����EQc}{[�h�f����KK8݁��898�11�
�D�r�����'m�$�������H��D�
����m���������>
K��4�T+�T����������������DqT1���aa���1��q��������������������ӌ��������������$�����ӊ���������4��Fl���G��u�j���������/���>�c�v�Y�X��wr�lO[MOO[�Olr}twXPY�v@c��>kPS�/k�������_�`�b�j�p�N1k���I�|�������
��� ��F��k����u�U�)�4�S�'�-{:d��@�G��
&zz�����E��w�v��lmul�c��h��r�������]��t��
���bF�s^�[X�V[
��v�N�;�m�Ћ�������D�1��� g�%/O���,k���j�F�?�j}����y�y��k�����D��
�D��������'���w�s�xx������
t�D��
�D�������7�U
�1
��t��_�>�h�jt�h�h�j���bg�S��g��T.�
�
�T譁����b���������j�h��>n�_K��D�;����D����
�h�/�����4+��|
�Z���su���S��&�yp�rxo�h
nr����R�/E��o�qwn��������������������썍�����c�@�
��"�;�;��d�������xp��X�B��B���������}�t��q��۽���������w
�
�T������d��m�l�su��r��|����j���to
�t�t�
�t�tD�t�����E
[
�S����)�����\�<�����D
�4x
���/
�m�
���
8���������{�uNv����Q�*�3�3��Q����~Fu{uv����+�N�R-��X�v�D
^
���v��X�R����X/
m�
��
����
������*��6x��l�l�sv��r��}����jX�m�
�9
��������)�����[=)R����~�[�~�w�~5-!��i��5
��D
���"�~�v���_��������V=)[���D
X����w����a����u���q�u���� ��f!D!��� }��q�q�uu��r��|����j���to
�t�t�
�t���tD
�t�tD�t���ì�|��r������6�Z�<:���S�
�vg����$gJAv<��������ֽ�Y�i��<A��J�������Z�)����
����������
�����P
���0����u�l�c������
�
����*��5x��l�m�xy��v�������{����?�������Z�S����!��
���4���t�9�M�kj������t�9�M�k��x�xw�����
�J�1��1���Z�`���w�w�x�n��=�O�v�T���J�1��1E����`���������nm�=�O�v[
��m�������� V������
�������)����
�gN/��#��-t��e�Z�\i��\�������h^
����ֽ��?�#f�,�����W�S�����CZ�7)������
����6�Z�<:������
�vg����$gK@v<�S���T<@��K������Z��i�i���#
�@�@==�)�����\�<��� �!�������� � �i�j��D
�4x
���/
��
�
����w
����4D�4�9�/��������^�]��^�]�����9�4o
�4���j�|����ѡ���l�s��m��d���������t�����K��/
�������
m������v�~^^���M�M���t�M�t�j����|��r��u�s�lm����d�����������t�����t�
�t���M�M���^�~���������2���/
�����
p�
�T��
�D
��D
�����T/
��������[
���]�]��E
������������O���m�|����*
��\ee\��\�e��s�
�����V�e�\���9���7��M��|�?���S�#`���������<����`�R���w�<����ED��z8D������^�7�E�&S�M�X]�Z-���`L�M�L�����<�z����=��a����3������l����x�-��v����x�m��qY*m�����S�Z�]�e�a�u�������ж��X�������p~�v{�}|[^s\�I��F�F�S���#Jw��a���â�������������7�z��_����
��%��>�}=�a������������������f�4���4����	��)x�5��M��k��4���4�4���4���+�����
 ������
������
���T�
��T��
���T�
���
������{���{���{��������t���T��
a�T���
�TF���7
����
�Tr
����J
��t�T���s�R@�6{���@),\��,��)�@�ə������EQ����Z��T��
a��������������������������������������������������������������������������������������������������������������������������I�Is�~��������xx�x{���?+)]��)��+�@�����8�s�~����������v���
����������T��@����P
��Tx
����{
��������T���
��T�i
�
P
��
������������T�T�T�T�����T�/��������/�T������T�T�������l�v��T��
��T�
�T�����!5���
��������
��s�^v���t��
��4�����~�������4���������������4���������
��������������}}�{ptr��m�g�}�e�}������������������������M�p�������������������������vw�y����������ۏ�
�
��P
�������X�t�j\���b��'�d�j�����гg�[���L����״�(�
����¯����#��w��m��ݿ��������b���t��G�(�r���|�k�j�>S�l�s�t�������� =���������S�l�s_ti�q�n�����v���„Ņ�3I`QnN�^�D�y��a��g�T�Q��3I`�nȜ������n����;((5;!!6����r��y��������q�h��������n}�����.�d�9�=k��%���)���}���|�|���������|�{�z�v�v��������u�yyv�v�x�}�������������̖ҹ�֐�������a�c���r�p�p�xs�w����z�n�}{������w�v�v�����������������Ӎ⟳�����͂�p�T�l�Zx�e�y�R{��0o|W�b�e�V�H���q��u��O� �z�|�n*�)j4_SnNe]_\]“��†gwkrmn�n�n�y�{��ʼn���Z�lvTdp@�J�I�4�X�^�xԉ�@����������j������w�v�w�������@~�n�y� ������y�o�r�pm�ue{`nY��n�p�r�@�^������r�ss�~�~�x�v�v�y�v�����}y�@u�wzD8{�{������|�z|{}{x}�~������y�z�~�~�}��	�;���$ˉˬ��7y�8��8��S�iˎ���;���	D8������h���������L����p�`� �d|�j�K������='��������t�<�<������vug|c��`��|�[���hf�@�_�&u1�||�~��y�o��������9����������ut�w��KrjR|Y�% �������ڬ�Ӣ�
2�H��������[Q|+�<c�g�v��EU||��zzЕ֦����������dBr;�9�Wd�������Ir�Pmu������͆�~������/���/�0���/�/���0�/���/�x��y��w�`~"�b�|������ьҋъ���[[~!�[�s���'��ҍҋӌ��l��3z���Q��������R�#�k�r�w�:�v�����������������t�v�v ��L�F���T����Ő�����{ό���������x�s�x�<�ծ���������������������
�|����D�B�F�+��D�~�I�#�6�B������7�}IH_I�D�&�\Ӂ��@��r�{�)�5��
�������?���}�����������������������z���������
������ T����&�#?�a�O�C�����:������������)��x�{�}�������������.`�A�<�~���������$��!��	������������z�~�|�}�}��������X�X�X��}s�r�uj~^�a�t\C&OD�I�H�}���������ߤ�@������J�6�	�r�B�00AA00�B��������A�00BA00�B����������N������p��i���4�r��������������������t�����������T�������_�	�	�_�_�	�	�_�_�	�	�_�_�	�	�_�0�
�$��k��t������
�t�
�$Kh\�b�u�D
��������
���<���<�<���
��<+��t��+�
��'��''�+�
��-
��
����
��
�����i
��T�� ���������������i
�R
��,��T[@R
���������
�4���]
�T�3�C�@Z
�4�
�����������K*�����������K*�������������K*����T*��
��
m�������{�z�����s�{tq� �p
���S�X�k�{���E֫���}��]�p����
���FV��*
�K�H�W-C�C���HK���h�@�)�4��
���)�@�hK���H����-�W�H�K�h��)����
�4�)��h���
�������������� ������������-
���@P�����@��h���!����(��@@���P���
! ���@@�� �!������@�@���! m�iP�t��
�����m������P
�����������������������������
�����
�����m��a������� ����������������a����R@	�������@�P(���" ��Z���D��

��$�����@��@D������
%����D�B���" �
@ �@��� �$"���� �@D�� @�$���

(���
��>
���jm������P
���P
�Z-m���m����
���
me
����f�4�4�����-�4����������L�L������m�������x���z�z���M�M��z�z��������V``V��������4�3
���-���ժ���L�L�������\�U�I� �����(�f�c���}����s�m�������-� �-����������y�i�s�n��������������������K�8�A*����,����g��t������x���^�L p&����{'��%�%���{��p�V�J�9��$�5E���E�$�ݑͥ��}��r��:CW*����[������_?P`X=��}��[A�����bo���/
���k�������k�������(��2�2����I�����2(��U�J�U��2�k����������������������������������������������������������d
�
�+��Ԁ
���
��G�����X
��]
��g��Z
��X
��]
��g�4��4�
���
��G�4����
�t����
�����������������T����T��T�����i��pE�77EV@p�1
��U�_�x����o
�H
6
�f
���������I{��
_gg_����n
���7���b��n
���7���b$
���Xr�zspp�s���^?�`�������`���^��
$
�_�`�b���������������Z���[��z�[;�Z����$
��&j�W���W�j��&�[�@�"�U�����z�U���U$
���Xr�zspp�s���k�G�+�P������
���T�v@�T�
�K�
����x���I�L��L����I��������I�L��L����Ix��^�
m����K�+��� �t�������t�����t�t���������΄�PH����t��
��������ZV����t��
˻WL��q�q�r��H�r�qqr-
�hn�����n����u�~���t��
�t˻WL�@�m�A��
˻WL.���t�
�JMs^\�t�lj�i�!)���������tI�K�^�����0���������t��H��������!��ww��x�t�^B�<``uf�t�`W�U�4
�x
��������t��t��t��t������*
ɽYM�$�����
ɽYM�������
ɽYM��w�w�x?�)^�cj]�Dce��s��
���ҳ�xk��.�a������
ɽYM����$��
�18X:b��}}�}��F�hX�a�"���!��
�D�����(�������� �	��������}}��}���b8�1�m��o�9�����t�������t�����������ʓ���������
�0�

�%����nl�lb
!�+�f�z���x�!�����p��|/�7�c�h�h�k+��^���[TH�P�}��.�}{�{MY�ɷ�����7��o��_qccy��4��{�H]���ȣǦ��������ɽYM�|����%npzdc�Z�}!��DR��߼�
�����\Z�j�����ћ�����|���0��!�����߼�X�E���������dk�dNYTMNX��������������
�0PcXR}��6~YV�W��������t���
���
��
�S�
kI�J�X���%��Ba��8�k�������#�E�����
���b�>�����[=�:����-
��
�Y�v�k���2��������
������O������T�����\0�OU�ƀ�������ԫ��afob~h������S��wk�����9�&&�����F�D�[� �����_���J�������ͽ���� ���"QQO;���������2���x)��+?�q$�@8���q+��*;�u�~-%�x�x�x��q�u�utg�f�h�%�'��E���̹VL������*����v�����˺VM������`�����w��z�������TE`ubiq���zup�p�J_e���'�%|ŕ�}���r�����ɾ�ɿ�dZ��,����������ɻ�˾�gY��%����8�>������4
�x
��[�;������k�t��t�T��t��T���l��*
��MC���
��MC1����
˻WLN͜�f´[V�mJ�J{K/�o�qwn�bce��s՜��
����ѵ�vj��+�^����
������d^�]� ��� ��
�b������l�Ք���m�)�xy��x�^H�Cii�}l�\N�J������p�"���#���k�����k՜��͜���k�眫�
������t�������t���:
���o�V�t�t�
���c7�/{{��{���b
�z��f+�!b
l�l�n����%�
�0�
������Ǔ���E�t�^�+��jf�f�l�l�ɽYM{�{�}�.���}P�HT�/�7������q�ͻ]H�{���4��cycq_MY�ɛ�������Ǧ����s�������jZ��\����
�
��!�}�Z��cdznp%������������� �0DR�������������ɹXNMTYN�dk��d�����E��X�ÿ����!��0W�V~Y6����R}XcP�^�v��H��Z��t�|�z��(
�	z]�����������������������}�z�!~�����q���{�y�z�������p������~�"{}~{�=�U�������������������P�?�����������Q�=���{��~�����G
����������4��I���H�t����Z���]��4����1YW3�6�������u�bQ�������������E����d]�"��(
�T$�7��/�V�������,������������'����t�
�0����4�����4����
�'�%�Y�T�8�l
�������9���|����2'�8�
�
�(�%�X�U�7�l
�������9���|����3'�9����40�
��k@���t�t++�����U�U�t�t�t�t�C��<�<�4�4�4�4��
�T�T��������U�U�t�t�t�tC�++�<�<�4�4�
�a�J�Z�Z�Z�Z��44c�����������T�S������������c��������++�T�S�33����������Z�Z����
0��g�Qv����O���y#������D��O��R����K��P��K�������a�XWaaXW�a��������a�WWabWW�a�������� 45! 5����4!�� 5���4!����-���.�.���-�.���.�.���.���.���.�-���.�.���-�.���.���X����c�c��@����c�c�����c�c�����c�c���0���ɂ���������ь�8�`��a�@�a�NdC�9�s�����b�c�����c�c����@���c�c�����b�c���������X�������9��X��E�-�JF,b���������H�5����@�Y�&�n��Ë��49�H�������b�F�8s��̷�������p�z�S�z�N�{�R�{<��	���`�_�����`�_�����`�_�����`�_���9��'��''��'�������pq�D�-A��&�a�a��-�D`qX_1�`�A�M�t�CC%&*)GGbb�I�c�~�c͋�������%�)�G�c͋��������c�����B������ս�_�m�����
�3�P�D�33DD33�D������j���Kgl:VF_-zM��W�S�R�n�\nn��nn\�n�Z�E�C�S�Snn\�n���n����������Ӿ�N�+�F�:�g��˝����V��C�&�&�Ӌ��l�gZ���G�%�%�G�G�%�%�G�G�%�%�G�G�%�%�G�P�8 X�P
�����������*
�6DD6���s���r�p���s���G�4�T��mm��v�)�t�~����̩�v������������VJk}ltu�(�vumm��4�[��	`��$�����O�?���$�d����`���`�z�w~���y�8�M��v��a�\t�i�N��߶܎�`�����4���s�~���nkA�[�"�gwdL�a�G�$l�Υэ����`v�~{ҊꅮK�-�5��%L�
�.��U <�B���B<�Gi�
�Џ����|�r�`��0�+�=� �E��=��������w����	�y���K����w��"w����o����I��l�khslji�s������Q�x�K�)]`������J�'�����������R~����������×b�B!�-�(��pW}��������������^^��_�I����������|�Dc�/ %�)���p}�����[���D�e��\�]�]Ϛ����������F|��E��/�+'���Ǚ�����eT��G��f������{������������H�B��-��*�\��������m��������N�����N�N�����N�N�����N�N�����N��
0�
���
������
�@�j���<�Z�\�
�f�zd?�*���1�"�0��-���)/�!U�=�I�T���AI�z�W�dd�]�,�O��+2�=��q��4��{��E�)��<��A��1���t�1�j�1�(��w�;���;�;���;�;���;�;���;������
�	��u��p�������R�@���@�g�����L�)�w�te�C�#��B��3�B3�C��V���j�>|���肙�����i�5�4�_:�v�x���H|�Q���̋����y�P���B����CĻ�*��O8Q�z� �}y����������2����!��v�����
�w�
���2�!�d�x��������%�%���u���ou������y�f�"�2E"�c��i�P��8�+�H�>��V������V�>��8��P��i��cE����0����}�D�8�F?�:/5mV?�_@�)������*���_AU��m��֡���F�8��~������4�p�w����:�{���h�I������K��6��AOR��||�|�����7���:�:�-�R�=�6�j��snVK�
{Qr2w..�4�$�<��1��U��n����k���;�H�K��T�C�$�[�����E�Eq;rI/�(���6�������F����+������G��-�7+`=(c2�F����]�U��=��P�O�>��U��l�������x
�x
{�����
�T����@�q��]
�Tg�t���1
��i���t�
�c�����*
KWWK��K�W����#�1b�nZ�yO��L���/���õ������B�+��
�h'X�=�-k7yS[rWmK|C����O�]�e�w�,������i����@�R���F˿���W�K����Jv�f��|��������)���}������xy�����k��~�������������JJ?X7gf3.x,+.��46�?�J�G�X�j�kځLJ��������v�l�~�d��o��J�L�N�*�4�A�@�P�ba�u�����������������l����~��x�y���JJJ���������ww�}���IIJ������������������������Ð��N������������~���L����kR�{�m�m�a�U�U�L�E��C>�<;;{mDRs*MSP��w���������m�s}wy�<u�|�������������ƌ���
����Y1��0����Y�
11��22�X�48��C�1£dz���ʧ���r]��^�NJ����qZ��o�e�~|Z����~�����W�4�3�X�V�3�2�X+1fIHJLh6�7�����:�g�f�s˂�u�n��c�o���r�~�E�M�U�U�a�ml��|��ؚ��ѩʵ�����ɩ��ӛ��l��G�@�/��' ��"�vg9���������~�{�~�i��������ye��n�a�M�����������x����x�����,���w����M��������������w��^�����Fy�l}�l�
����6�6���x����t�m|�c�w�&�L�L�+d�t������������j�iJ�4qq����ߠ�������˚�|���O���)�x���O�p�Y��p�Z�,���,��p��W��wT�,�J��y�I���������E�7�w�t����4v�Q�^����6���_�4
�T��T�4��
�������P
����q
��q
�bty��
����%�
��������%�
���
�@����t��T�t�L
�t�to
�t�t�
�t�tD�4
�T��T�
�
�4� 
���t#�4
���
��+������P�P�P�P�����]��w�~�P�P�P�P�#
�Q�P�Q�P���P�Q�P�Q���k��#�4
���
�������]��w�~�P�P�p�p�#
��������������i�P#�
�T��
��
��/�0
���
���
�x
�`���t�����T_`��b�#��#�b`�_���
���y�y���Q
��
�t�3���3��
�V�2�2�VL
'�
�������!�!�yr�r���1�1K��-
��/�H
������!�!��e�+�������T��T���T��rr�yy�!�!��!�!�V@�;���v�����������y�u�w���������{�{�{����s�{sq��v�w�������������������������������t���z������z�
��z�����m�
���m{�`���m����m�
����
�
��
��F���������������>
�����������������v���
���m
�m
�m
���%�������%�����W��B�S�	q�g@\LP���{��|�����������@��)���҅����%����������V�����`
���B�B�B�����
���%��������%�����
������������������������������������������������������������������@w�\�����h<��;��v��-�;�������ݯ].��Sg9G��FXVi_d�:f�t�l�\m�M>�U�:\!-<F<C;D�)�Ե���4�C���5��5��4�C��3��.�N�$���r�j����m��2��	�O�
���W�������q��q����q����t��*�Q���t������
��4�������������+��j@8ߪ�rr � Rr���@����L�iO;����{e��S�w�����)}5�T��Ԓ����������?����>��B�	�o�-�Bvˌ{�b������є���������~�8�������w��������0�R�8�#�0�F�2�SXteg��J�]��l��A9�H������H�8QXi[s��y�x�y����\��HN�-�fX�R�22�<�G�j�m�kk������K�L�����Ь����̬������[������H98HH89H������,,�K�UU�K��,|����������}N�v����������}�|�u||��a8H��������H98HH9��������v�[�����y�-�r���n�
��� �f�����������=�q�����F����)�����?��
��`�9{��d���P�3o�&?����(���$��������W�2����
����3�C��Z
���������������`���@]
�t	�t�����T������0�����!���,���J�����J�J�����J������v�'�k��$&�8�C�����������������P�B�4��n����!�4���8���V�����%�%�����%�%�����k��,�H�����T�����4�Tw���������/�+�,��{�{�a�{��������������L��{�{����������
���=��=������

�

k�
�����F
�o�~��������|��܏��f�
yh|lid�boo��p�������r�mmrrmv�w���~o�v�F
�����I
�����������v���	�o��T��~�������������ƣ�������@��V���5�!7EV@p �-F�1�M \Z�G#�n'���x�!������ϼ� ����1�-�+���T
��S��(
++EZ��[s�p�k�������������������T���������������~���O�@�������������G�A� � �B������H��E��B� � �B�c��
0���-���/���-��-�-�-�-m�J#66"���!���!�!���!��p[��m��������m�V�J�E��4�6��H���`�`��Z�[|]~c�`�}�����������������p�G;�-�7���-���m���������{�<��8�Yn�,�=�a�u�K�K�v���Q�.�-�Q���j�K�s�[�hshs�\�h�F�:87s;\Fsh�[�t�����������������3]�-3�s�\�hsht�[�h�"����e�E!sh�\�s��������������-�3����������~�+��**���*�����}���Mz�]�c�.���p�����%��$��f���M������5�5�2��7�7�<�������&�������U���A�+��+�K�������q�5�P�Pm�;XY����;����v����2�
��,�c�T��T��:
��,��[��R
���T:
��,��[��R
����� 
x�t������t��t�
��
e
���:
��,��[��R
���T�� 
��t��t��t�ԙ���t��~S��(
��$�t�����
��Fh�͉y�y�}~����������������������p�j���P���P���jprk�5����j�T�h������c���
���c�����t���������t��������
�R����*N��^����Ȗ��*��
�R�D�e������jo���k�4���������p�h��4�hplh��/�X
��4�X
��9j�oqj����h�p�����4���������l�h�\��ƙ����;2
���;ǾbP��0�&�M�	q$��;1��
�;�$9�	q&�M���t���������s���������T���������������
���
��|~�}�S�t�������������K����|�}�S�t�������=�������u���������=�������t���������������t�����������������������t�����*��w�����)�)�)�������(�(����������.��������������d�d����������Z���N�����N�Z�Z���N������N�Z��
�Q�+������A�@�A������A�@�!�����������[��������	���	�������[�������P
��������������P
��������B����
�����
����a�
��+��1�4wx�{���������~}�g
�4�������t������4��a�
��Mr�����&�Ȃo�l�y���
���������������_��l�Z����b�����������
������&���Z����_��l�Z���b��>�������T�t�4�t�9��lF9y4�d��;����1�?;�U��Ғ�/����t��t����<�%�����%��<����"SKj<5�e�Z�>���:�$�����������$��$=�:���Z�>�e�j�S����m��������$�������5���������������������������4��4��4��4��q�����(��������������f�?�f�?����������(����q�*�*���*�M�*�*��w�I�9�(9II9�(9�I����������*�'
�w�����d�A�4���6�7�M�������R����*�M8�=�I���F��[-��2�	�~�����������
�0����������X��P����d�ow�����4
�4�����b^��hvii�!r(u)����-���v�jzfj~�����qs�����o�q�z�az�qHoC�wq�s|q�����j�z����������)�(�!�i�v���������i�#�o������#���v�i��%G�������������������T���;���;�;���;�;���;�P����
�0���V�v���i�W�P�V��gu�m�l��w�a�|��������|�q�����{��c�Y�il���i`d�H�_�_·���I�5�)4�����y)Y>B����ݮ��U�1�1�V1h8SM������$�w�h��#�h�A�Q�WƇ�����¹�Ð�������v��Z�]�����;�();;)(�<���&�U�1�1�Uԡϱ���B.`������������	�����eSGtCm�$�t��]�$������t��t������R��4'�4����$�B�L��8��,�L�9�}�x���9�����������������������`Q^fxOoDk3d�G�������Դ��"��T�Ua
�������
�
���v����s�X����Q����������F�55EE65�E��������������������<����xi�UNg�s{�����f������<ϖ�Җ~�h�r�8��4�W��{��m�X�x�|������������c���������������q��J�_�s��'�*0����󍂎������i�ZӵԵY�n��5�U+������"�C��������������~��?��i�h����y�v����x�n��n���n�6������������������>��������#A0�W����9���
�|�x�����������uz�l������������Mx�|��l���������T�(����x||x���x�|�������T�*���0������(�=��`��h��Z�������6��,��
�L�8��6��-��
�I�8��6��,��
��������_
���-i1Yn��||�|jj��k�8�d�J�!E�+z�$�9�9��$�+�!��8��������������YisV�>�c�r�bxy~v�z\\�\}v��{~�^�ws8~644�6�8�w�^�~��������������y�b�r�c��>s�3�%�����������p�[��rr�c�r�r�kii~kssqr�b�r��I�I���������V�*����B�+$$c+CB�~�����I�I������%�%�U�a�a;�U�%�%����
�5�?�?H�5��
�~�����)���ԫ���
���
���
�T����t
������������t
���`�
�����5�!J�����
�J����n�����
�J�����
��������������w���N��k����+���m��T��T�T���11��������W���
�E
�
VNMDH>>3�5b
d�-
�E.�
���������:��������V�2�2�V�V�2�2�Vd�������'��c���U�/���o�c�uovo�c�v�?�%��	q��|����������~��f�F�F�
�0�.�*o�c�vnvo�c�v�&��0q��|��������������K�T�i
K�T��T��d����h�jw{i^u_oYln��u��s����
��o^��i�w����hY_��u{�j�h���������������w����u�ji�>�q��w�[��GA�?�ij��k����Œ��������[�V�(1g=V����������i�j�N�bi�6�%�Qt�b�(���e�nz�f�l�4��u��~������d������p��������������"������v�[��~�}�����d����t��V��l���������d���v��tş���W�4��t�t�����������}�}�}���������"��C�Vt[�R�t�����}~��[tvR�[���C������lj�h\^��a\�Qwt\s[�R�sj��z������\oUwQ�V�f[�VT[��g������d���k\c`^ebi�O�bt���������6��Q��b�(��T�e�����|�������T����T�&��&'������d�q���������:=2G<LCYR��hn��@K�5�������
�$������������c���{{�q�{�<�<�{����������{�q�z{�c�c00�E�3�'�ҥ��}�}����{���P��RH�L�������byz��{*Tb�#E�.ᕖ�������������������z�<����������_d�_:@sgD�������_�^�_�*d��J�A�	B�ɴ�׵�to��������'W4p�w�ο�š������������v���W���X�M��u�Y�������1�A�3�g,{ ����հ���������	y�L�� �����Z�=�x��s���a��v�^�������|�Z�Z�[k�.k�/k�.h�e�m�f�$��6�k�+������ː]V���$���Iq��o�~��QN�ڈ���7�.�;�������gh��h��V�N����D�<��������{B���3^w����/ۍ�ֵ��5�b�	L�Q*��G���J���W���}��ϗѝ�ڏ�����������y�������� k�T��U���nn~ryj_�M�l�N�y�|bm�����m��T������]bj[��X�]�~��-�u�����[_k[��T�Z����K�N�W]dW�T��]��T��kY�acYU�a�������ö������1����r��&�>k�f�b��r�(�yw�vE�^n�w����������������"�'h�R�cl`j�O�b�����������e���nf�Q����a�WT�`]�T��t�i\~{�&�X�U�3t�O�Zq]s~Q�[������8q�Q�]sZq{N�\���[����k�P�`m]l�M�_�����������|��r�(�n�h�d�&�>�l�e�c����������o��������v�D�d��$��H������6��}���z�~��������t�1��Y���b��������Su��������\�������������������q�����������P�����y��������������,�:|��`�B�/��O��������~���T��a��KJ�~L��y�����y1V�w����y�:�p�I>�/���2ndgaWr�s�w��	��	=������������!�Y�	2��R?�2�"��?��=�.� �O?��U�����<���<quuqqu���u�d��dV�Tqu���������"����w���+�������B�~�o�ftaz_��V�SR�t�9�K�x�x�:�K�t�p�;�V�w���x��������QM�M���t�����#���"��Y�(�)�������#�`�Q�x�g��i�hi��V�K�����������l��f��T����'F�b����(��-���]�������ݸ�u�W�h@JM;uT|NwbdghsK[b�e�i���(���{q�}P#�4%Sa��j�����_≖�����������`�/�7�b�b�/�6�a�a�.�;�c���}�}p�m�m�lj�i�0���+�.���1�0���.���{��������\�YY�F���C�?>�AD�$�(-�}}��}�[ׯ���M������g�Y�S��T�*�*���l�SmMrWJB`e��n�ū�)���c1&E,u|�����Ѱڡš�����X�MN��9*
�T�(�T�3���3�T&����V���
��]!zl�t��ahqr�p!s,��o�"pr�rg����l�!�������������������|���������������������N#��l�[he�e�e�����������zpK��^������7�L�w����}���� 
 c�b��*
�[��)F3�RtZ�>UK�L�L�����dl�lh]rd.�^�7|�}�}\".% _q�q�o�y��~yG�Ao��k�zAï��������w����P�W�����������~��|Ԫ����A�����y�o�q�q���0�[�������]y��Z�igmpg������ː�����t�@�6�)�H�����W�����������\!zk�t��aiqq�q s,��o�!qr�qh����k�!�������������������{�����������������
����N#��k�[ie�d�e�����������zpK��^������7�K�x����}���p ����
		��
#`� R�N�{��M�{ ��xi�wi9�#G�s���������E�����}T������������l�+������{��X�|���������V������}������2��h��8p�ihE[��&�Yr!h�g���R��o��q���������-ε�ߝ�A������ ���U���Ǿ�����Ծ�*��������}�t�~�x�q��i#�E�3l�g�c��2�F�j`�\�Y�=�u���r�r�qrq�s$���>�tY~\w`r�k�2�Fclgglb�E�3�j�r`w\~Y�u<����r�q�q�q�rr%����t<�Y�\�_�j�F�2�b�f�m�1�F$�k�q�w�~�v}�����������$}���x������$�k�1�F�������E�2�j$��������t��}���������������������������������%��%����%��%��%�L�X�0���X�/�X�/�������T���T����T���T ���������&�O�,�-�O���O�,�-�O��jj��k��1�����'��
�'�-���4�n����O���x���q�i�ggg�h~ie$DN�y�W��������v�w���#1���rH�e�%����:qzt{s����������[����s�,�w���������!���w����"��"��0������t�dcubhg�c������8��cliccm�������������id��@dmh�o
�id�0�B�cli�o
�id���Bdlhccl���������id����@��Y3�W�,��zh�ehjwmy�xj�hhj�
gk�
ditiy�7�4�k�g����
}R�QP��t�����d�,�c��*�p�q�q`NAp@�`��J�Q���zH~GF�+�/�2������������rY�N�'K_IFF_��ʷ��зIL�	���P�&0������h�Fyz��y�\\�[� V��������_�
�J�P����m�z�
B��pg�fsvy|s�#L���������c�|������������gV�XTVtbe�wv�v�N�A(�$�h^~mo_��~���|z}y~x�|n�f�{D��BY�L�\�'�
��>mZR{Qss��t�N�]�wig�g�X��n��Ϥ��O�Tͮ����m��w������m��w������m��w�ŷ������	��v�����|����iI�#&�bS�S�!�����������m����v�vu�� 
�
�D�4P
��3i-k�b�US�T34��5�II�I��yq��߬����
)�
�
))�
1�9�j���4��������:�P�*�������������C�3���������+�������K��}�������T���
��-�M��u����jmatvhj_|[�t>4a@�kk[|^4<��N�����hc�_���/���2�2��ģ��֖k��E�b=0���/���Y������� �-�"�$�3Q��t�l�Z�[�Y�f�b�e���7�]X�U�nPI"�R�g��ɰ��e��������;��o[��1�Hw���T��
�T��g
����<��R���;JLwgV�VL�J�	�B;����95
�4w�2
��������
�N:�9�����՛ͻ����ů��F��4�O
�cb�c{������"犖����M��88�']L�����"/������f�
��UA�������=�0���;�}��������������Q�<�0�^�'�����0����ř����}�W�}�w}�;O�<�0��4
����
�b���w�}�GU)@�'�eY(.E�������"E(�Y�"�+�G�}�v��|fW�}�x���?�r�?��Q��<����������ŕ��z�E�٘������+�0��@�
�4��|��c��������������"��-d��c��|��.�4��4�|�q��\�N���E���E*�#�������"#*;QE�"�	���9�a�Rqs|ig�4���v��������ߟ�	��ތ[��l�i����f�����k�����8I����`�����Z���\�����u���ρ�6�ٿ�������<�������0�J���A�e���c�i�>����z�8���qF�l�;�7��M�t��H����������$��v�"�?-�=���x�G��n��������S�-���������u�������������������b��������7È������
A���������
������w�c�������-������E��������f��7��-^���������D���Nf�������r������x����������������~�������5�8�������~�O�������	 �������K������������(JD;��;J��E��Y�Fk��T���«��F��Y�E�A���#�	��#�#�	��#�$�	��#�#�	��$���R+��7�TS+��V
�T�}�y����� �
���`
���������$�	��#�#�	��$�#�	��#�#�	��#[�pdIH[<<H��I��Nm�}�!7�5������'m�w�S�@���T�|�z��J
+���J
+��r
������@�
��
��G����������������
�x
����)4RMD��DR��/��@�2o��[��ͻ���2��@�/�1��$�%&��%������%��1��:
�ԩ
��R
K��w{{w��w{�����������{wS��::
��,�u
��R
K����X
�@l
���A+���?
+��c
����������V���w
���)�/e�@�2oZI[BBI��Z�2e�@�/4�M��������1���%��%%���&�����1�Q� 
���{�w��w{{wSw�{���������'
��1
���
�����M+���L
+���
��
��G�@��X
�@l
��
�4
�������Y�X��y������y��X���O�:�>�+�N� � �����>t�:��O���O
�����
���%�%�����%�&�����$�'�����b���
���%�%�����$�'�����#�(���
�����Gg4�(�K��
�K4�(�Gg.�S�1�>�P�;���;�>S�1.���
���F���
��
����ڨ�����z�z���'�.�<�!b�V��[�b�-�;�P���P�-�;�b�[�V��!��E�$��@��h���h�
�?����	+�����Y�Z�<�	[���	����Z���Y���+��	��
�d
��������0d�A�1]ZInBBI��Z�1d�A�05�K��������.���$��$%���&���������T�
`������X
��+����S
�@g�T�
�����T�����������
���B[PP�>P[����,�c��s��£�����,���P��
����t�
K���:
��y}���j
K�y}}y�Ty}����
K���
K�����[�R
+��X
�@l
��
����9������t��������k�,�ccTsNNT��c�k�,�B�P��>ƻ����Pn���4R�T1
�T7����}�y��1
�T
��8
K�
��'
�T1
�T��
����@�
��{����X
�@l
��
�����o�0�v��@��0��<��;u�^'\�	=*�S<�,cXP�*�������"����c`�[����h�3\�5��j�����j�5<��U�gF19P��R��E���i���j���+�#���h�d���$�є�������Z�ۯ��ӄ��h��w���*�K���	�(���Y&�Z�v�V�^�e�1�.j�4�E�9��"�"�о���������q�rQ)�`j�#�KE�[�|���z�0�Y�`�7�~����������?�g
��drlf.�������k���g�*��{W�r����r�Z^mwvl[�s� n���jb�gn�z��������h�y�l�qf�S���B�[�<�	��.S���������������h�t�v�i�����K���k��������Tp��x��vn�mn`�j������|��������k���f�Z_��Fn������������ʬ��Ҟ���gn�����|�rR�M��H�h,�Irqprg�^�s�A�M�/�)���8�[P�D��0nf�	�iv�q���Xѵ�+��D�D�
��y�Znb��t�9�#��t��x��
�3���u�s{����q�[���Ƣ��᳚�s~N�\���
0H���"
H���"
H���"
H���"
��1
��
��V��K�T����T�6�  64"�
��E�#��E�
�E����������P�/"�@���Z�<��[�@�E�
�E�E�#��[<:Z�������
���T���T��T��@�T��T�x �T�)�������
������9�
__��&��X�.��$��
����K��p_�A���;�__��9�~�������2��M���@�n�h�
���M*��
�TK�����MT��
���@�n�h�
���M(���@�n�h�
���M P��
��M@ ��
�@��
����i
����������@ ��T��T��&�D�Nu�y�e���  �}������������
���
�V�ҽ� �T��}��
�l�j�l�l���R� ��
��~u�fH�7�Nuu�������a���������������a�������uuT�A�Mr�\J�C���+1
�7����}�yy}}yy�}�����K��}�yy}}y���+
,
@�j�
����������v��������j�I�I�J�#� �%B��z��Ϝԝ����̒�����<�L����Ro�s���x�z��c������������������������������e�%�k�������������������$�l�d!�������|�{�{�t�u�v���������\�������|
��k�����~��}���l�r�����>�+�+������������������6�Y�����F�$�&�E��{��Y�I�v�['?E�������l�j�o�~�����
��(�9���
��������������������0�tX
�@]
�T��������������
��
�����
����������������+����������X
�T]
����S
�Tg�TZ
���c
��������k~~w�~��}�}�}�}~~w�~��&�&~������}�}�}�}~������&�&�����~�}�}�}�}�����~�&�&�~�w~~�}�}�}�}�~�w~~�k������������=��=�=�=�=��&�&�
�=�=�=�=�
�&�&��=�=�=�=��&�&��=�=�=�=��&�&�}������������
����"����"�4���
0����_�}�2�/���b�����w�������_�1*���S����@���H2sp�o��ȫg� �����������z������z���������9A����{�e�z�p�{{hh{z�q�z��@�e�z���������������@���z������z���������'���L�`�F�F�=1<1�#�W�X�
����]�vv����L;�3lK@+�@L�V���	+�<������q�U�]�%��F���������O�^��e�PV���n�`�r�'s���y�sfX\Rq8dsض��������������s�F�%����Kٮ������J�}�3����������х�b�s�lt�[�`T��������v�uai4�.�:�e��?�2��%��ٰۂ�~�%~��GbRSl��g}^�`�s�t�`�an좾]�4�jމ�Q@���.���&�%�����&�%�����&�%�����&�%�����	�Y��J�	������I�������8�/����������-�p����R��%�s�z�w�8�����&����%����Bpq2z�r%�����!�����!��2.�l�?A�����R������჋Ί�t�,�����ә��$j�"u/}s-����|�Z�H����8�����	��	��
�H�.�w���_�������������pu�j}���$�x�������������l��l����`��?^���� �l�2�B�A�A��q�3�l����۴����l���8��o�km��YQ�SBjt��v�m��l�	�.�����ڎ\K��H�qX
�@l
��
�)����u��A��p�6������w�Y������l4����~�y������U������������������ѯ������W�?Q���Y�m}�ptjh���������F��E������Px3|�����(���/�ŏ�4��5��&ϻ��ą���f�am����J�?�j�ԋ�<�#�>��n����,�����i�I�Ι������J�\�D��Hհ���4����.���4��g��"]vzuyia=sA|M5#M�o�`Ba,����l���#��:��P�hC�t���"���]у��������H���������������ą�����������3��B��̖ڒ���������/���q��u�=��hU��U�v��@i�����/��
:�:��hU��������yr�w�>�g���g��j�k>��p���D���L���U���x�z�����x�z�����x�z�����x�z��������[�a�����������7���������M��z���R��?�ݙo����b�����4�~�{z����+�4�+�4�+�4�+�4�+���
����T���@ �
� �
 �
( �
 �

 �
 �
��
`�
@��{���������3
���
�@<
��A
��������P�������
 ��������
��������
�P�������
��P���� �
�x
�7ޜr�8{��M���1���1��M�����ז��@�;��N�����y�y�d�my�N!�4���p<%�����0���d����*�TK���j��j��T�*6�L�d�������0%��p�b�;�4�N�m�d�ylym�c�z�N �;j|@�������������1���1���8�r��z�;j�N mz�c�m�m�����N�T�4o;�b�����0���d��SL�6�����j�c�j���K��S��d�������0�<��o�T�4�N!�y��������m��N��
��]��]���z������Ϟ�Ҟ������ԝ�������x��x����y����5��_��_��_�Y����t�	~�r�l�3�/����������������r5�l�3�/������� ��� ��H���r�����vZ�j�G�
��?��C������-��������T%����%��\:�R�R:�R��_�D���D�D���D�D���D�D���D����?�)���|�8��oC��A��
�/��-���$��"�,�B�5��|6���-�G�c�K�dԛӘ��
�p����y��|���|u~w�'��~rb<!��ێ��j������w�w�s{��z���}qr^r}d�0�Gة蘵�и۩�޴�r�~�v���~�������������w�v�y�������������y�7�-�8�����<�ÖC�K�l��w�x�x�w�x�w�������������|�l�t{u{�l�t�t��������{���������h�h�[�sgsh�Z�s�r�����|
�9�q�Y�fqgq�X�f�|�f��������r�!����|��b�R�$�������I��=�X�,���3�|�Mq&�h�8 �?�4��ye�R�R�Y��Ni�ꏏ�������]ȵ�9ЉОȶ�%�[/�+���(y�f�qypx�f�p�p��������y��|�3����u�u�u�}u�u�t�}����������H��q�q�q�zq�p�q�z���������,�N\u�\�gugu[�f�g�������v��~�$��x�x�w�w�w�x�~���������S��w�b�nvmv�b�m�m��������w���������������p�@��
�����
���
��#'+/2<@EJOcgkoz�����������BFJNRY^ly����������������.9��������&.9=AFMQZbfmsw{����9BJNRY^u������-z������������<MU[agos�������"29@EN^px~��			 	V	Z	_	�	�	�	�	�	�	�

	



/
>
F
o
�
�
�
�
�
�
�
�
�&,@es{������������� -:KUcglu|������


/
O
V
Z
`
j
o
u
{
�
�
�
�
�
&Dbs~����������������-18>EKOTm�������������� ).7<DQYns��������������%:@Ui{���������������"',1CUZl~�������������$(-2BHP`gku{������������������$,2APWZ_drw}���������������+8EOU[binty~��������������	$).38CNY_doz���������
�<���<C
KFKk�r
=oYB;�
��E�#��E�
�E����������P�/"� �@�Z�<��[� �E�
�E�E�#��[<:Z���@���
���T���T��T�� �T��T�x��T���������B�t)
�
P
�����t�*
�i�@���E���X��X��E���+y}}yK��
�.
+��E���X��X��E���P�
�
+
.
' 
�3���3y]����hnnh�}�y���]�]�����]�]���s4�
.\��2��A
y}�B
,
F�TkB��B��a
�U�)
y}}yKy}����������}y�TN%�
��=hnnh�hn���q�F
A[
���]�]��E
�����}�t�����	�� �"�������������"� ��	���M
-
\
�
��
���������������1��<�0
�0
+������
������������
����������f�f�
��}yf_��"-
.hnnh�Cp
�}�y�T(
���-�V�`��C�3�}�y�Ty}}y�T�
c
���|�zS
�+o
�+�
��D+\�T2�TA
���������� ʆ��iimdod���������$��@�~� K������z�&�w{�y�yw��}|� |�}���x�z�{�wa&z��������K������������$|��'��������������[�����[�!���!������oZ�S1���
0
[��R
��Y�W�f�fG
�f�fU���
]
�@gw
�TH
U
�
3CC3X
K]
+>
��T�Y
�����[�R�Dh���1�
��T��T�T��G�������_�^�X*�D�4�
�4D�*�Y�_�`t��������W
����!�
�'��''��e
������
�
�T�T�
�
�T�T�
�i
��h���h�
���
�
O
g
�B
�4�T�T��=�T�T�
y�}��7�!�x�!hD�:
�,�����
�J�����J�4��
����������F��/�B��������
NPuc]�T<�O��d�
}�}�|�1B&�2�B����
:����5
��/���%�%���
YY�������������
�(
�f�f�����������9�>�!����
�
�>��9��U��G�
��@���V``V}�~���d�3�f�T�w�@�t�(�s�u�w�N�5~��w�}�+�}����PV�
������{z�g
�����:
�T�
�TR
�]�Ky}��Hg
�TB
�4�$�$���G
��U���$�$�
V``VV`�����
`V����!�_��I�b�	\�;COLD|yz|�r����u��{������������A��0����������%�����{[�k������@�hhn��z|������r������4��~������~�4`_��`R�`e9C/R&a���žҦ�4��A�'�"�)����~�4���U�f�f�
,u
!55!=
�=
����������T-
�/�T���
�����
�{�z���G�C���C�8�=<�<�8��C���G�C��������� �VV�����z�|�Y���Y�.�:�t��:���}
���&&��T�O
�'��Lf��eN�z�y�z����#� u��"������������=�1�?�u՗����f�f�
YY����
��Y��f�f����
������&��������/����]�]������1����a}�.
�M�M���Y����;���/����������������������a�3����:��������t�������@y
������t����������
g�Z
!�5�
��\�|�\�?�Z���E�ԅ���c��*y^H�(�ym�|�[��n
��U
��t�3
�������Z�Z�r���EQQEEQ��c
'>�
�0
�4Z
V``V�
���������~����
�����������������������z�z����3�'�)������������
�����{z�4���
�+�<���<�<���<�{�������.�=�=
C
�9�"��T�M�5���������{��~~�D�;��i�
�f�fW4��x
�!�x�!�Q�E�
���8�
���8�
���8�
����x
�
���i����
��������	����������������	�tkR��E�;V``V��<
��A
5
��/�
R��T�&
�
��
+
,
3�
��� ���O�>
��������z�r��^�`�������`���^?*<�씒������<�Jڔ���>��������@(
���
�St
���}��
�����
���
X
�@]
���-
���
����
������}y�yr�rrr�yy�
��(
���y�y��~�w�~~����������
��������������������[
�
���t����������t���|�z�@(
�Tz�|���}D}��}������������������RD��,�l"�7o�''��$�{��������������������������1���D
�
�������
����!K��
��z{�����8���T���(�A�(�A�(�A��m����t��������K��x�x�t�w�����~��̍�����������t|~�}�:����@�w�{�t�s�o�yx~����������R��1
��7�OI�I��gX�!�!�gX���g��!�fz���\�J�$�9������:�l�A~�w�]]�w�~���z��
�
m�m))m�m�)������{G
�YU3-
t������a
�h����N�0����������K�m��
+��
�)vP
�\��
��t�4���4�
�
�
��<
�A
���	,,�	�	,�	�	��	�	�,�	T
���
�b
�<
�TA
����F
���}t����.�+ݭ�����������������{����`�T�3���3�����V��@�
���t����k�r�crr������@�
>
��xy�o�ts��{�SK(
����
���������tp�
�����y�y����:
�������7�D�$�$�D��������������nh&�T*
�����5������������������@��$����$@!��quuqqu���;���;��uqf���
K<
�����p�������
� ������QEt�����'�rrc�r�2
������TSTdJ,]��շ����49��arwwvyr�/��������(DB%$�A���Ό������%
����`���u�ttu~w�c��cl��������q�t��������=�h�F��� B�4������4�����
��
����V
s���V�������E�z�*�6�z�*E!�!�$��D�D�$�
����7�T���-
R
����
�5
���y�y��C
�.
���@�h����������<���<�<���<����o7��������T�T�_���L��d��h�aahi`a�h���������
�/ti
�V���H������
��ԫ���ԫ��
��
��]�������������T�t���.�;���;��<:�Z�����:����3}|������A���P
3C��ɽ������Nb�a�]����
0�$�7o"�7�l�����
������������
��
@���
�����������������<�<��y}|z��i
�z�{�R�D3���$�$D�R����i�p���������w��������
����
E�Q��y��
���
���1�
0
��
fM�@�
jm��q�����������,�4[�
���@XtxmihbW_)�RK(
t����:���z�{���������z}R��%���7��tC
(
�t�
���z�x
����x
�
!5������x
����&�%y}��������_g��������g_��
����
��*1���0���˒�����������h�����
��`V������m�����������[
ˋˋˋˋˋ�7���ߋ�7�������
K��������[���L����z����������-
�-��������������������Ty�������!�5�����z��+���&m���/�%��t��~���-���������\�$�"�W�T�*��������n�h�t��t��t���v��������������#�#��
��	��h��3��3s�pyrs@ ��  ""
	���x@8 �����!"""`���>�N�^�f�i�n�~��������������'�(�.�>�N�^�n�~��������������>�N�^�n�~������������ �����!"""`���!�@�P�`�g�j�p�������������� �(�)�0�@�P�`�p��������������!�@�P�`�p��������������\�Q�A�0��ޕ�R

	��������������������������������������v^��%|�_<��O<0�1h�����	�	����	��p��v�_�]�����y�n�����2��@����������������z�����Z@�5�5
���ZZ����@���������,_���@��������f���@	��@��(������@�����@��@-
�M�M�-�
�M�M�����@�����@@�
�-������b����
��� ����5�-�8�����@�D@���,*@� ���������	m��)@�@	 	' D9��>dU*#						�	��	����R										�@	e�	
%RE	 		$�� k(��D�'	��	�%��	�%	��	��0$�.�$P�//:/K/Q]�	
���	^�	U	k	"y	U	$�	U	��	a		y	*�	<�Copyright Dave Gandy 2016. All rights reserved.FontAwesomeFONTLAB:OTFEXPORTVersion 4.7.0 2016Please refer to the Copyright section for the font trademark attribution notices.Fort AwesomeDave Gandyhttp://fontawesome.iohttp://fontawesome.io/license/Copyright Dave Gandy 2016. All rights reserved.FontAwesomeRegularFONTLAB:OTFEXPORTVersion 4.7.0 2016Please refer to the Copyright section for the font trademark attribution notices.Fort AwesomeDave Gandyhttp://fontawesome.iohttp://fontawesome.io/license/assets/lib/font-awesome/fonts/fontawesome-webfont.woff000064400000277350151327220410017240 0ustar00wOFF~�
��FFTM0k�G�GDEFL �OS/2l>`�2z@cmap�i�
�:gasp��glyf _yL����Mheadb�36��-hheab�$
�hmtxb��
�Ey�locae���\maxpl� ,namemD�㗋�posto`�u�����=���O<0�1h�x�c`d``�b	`b`d`d:$Y�<��x�c`f�d�������b��������ʢb��l��|6F�0#�F��nx�͒�J�q��gje�>�"�D���>�{�E�O >�����,"�u�^�[[[���j�os���_�M��%:0g80������B�.L�s�zðפ 1Y��lKWv�es�t��)Mk^�Zֵ֪�m���׉Θb�k̳�2����6���>'�Y�Җ����jukZۺ�g�m2� ����(�4�-iEk�Жv��}�X�B��Y`���`����c��9�Z�JV��5�e�Y߆6�G΂�`3�|6����[uI�p�n�-�����[pL��0�Lp�;��׸�%���8�o��>F8�	��G8�`�W�ί�����"�E^�_�=(K,F�K�+�y�b�����x���	�TՕ0��o�}{�uuuwUWի�n�njmz-��nv�E�EAAJ!*�(��hD�2c�%F�ʦ�Ebb6���$&�����7�߹�UUW7
��t�w���{�9���8�m�8b�I�	ڃ�����݌7�S�E�G�!�3�����j�㔐=w;�P�^I�A;RR�n��k��LS�.��)�o8G�([��)�9O,,�At�S�
��h
y�u�jZupPGx�N�o��n��{��ho2�A�D�-r��]��u��5��e��^��dM�X�8=���r5ͻ^Q\�~��2��V�0 �o�0kC� qA跍����G<�
�9���v�`�|N�X�W�I�:"�'�a��W޺O=}��k�#�"�7�e	��%Vs�~-�y$ŵ������X��w&'q��.n.�E��K�#��JD�ڝn봽7����=�|�w�L:Ӎ2vmrRv:=0P�@D�ۓ��V�Z7eO��d��7�HM�SY�|�[o��f'B��L}��Ʒҗ�V����^�+�{W�=���uҤ֦='j��,�|;�v�A���o=��0�q8"�I³��8���yZ�6Ǵo9��q<i3���k������1%�&��
���u���k�����{H}��@΁W�—^q�Է��4;gg7���N�y��/��
q���P���OЌL�4��q�,���ԇ�"�Sv�=jL�/U�jC�-w�o���ȍn���j�̮�{�j\��
��vE��k

���z�>p�n=�^=�ajID(����෠���qu��F;э�5֮�s7;QC7�U��[����׈���yZIۘ�ػ�*�!$	�dⵄ��Ŗ�-ˇ?��{��m������f6��po��~�mԽw��o���G6M��oz�a�--�m#]?]?V��k�z��ܥܵ�.�>�)�9NH%�&T/� ��_���I�Ax���O��B��]8(���.v��)�G=���H�P�S�U��P���>f�F�E�-G�G�s|���'?~z�I*���R�|��[`���-V�'ݙG�P3b�'\R��I̞#n�;W��ٟD�T��ѹb8�0�^s6,rȥ��i��������sm15kk��,}��q��Wȝ;�t�s��e�Yq�qC/���0�q��|>��
3������W�/�ը��s�F�"���s��I�oAHI� 8��C�„���w���~�@
����_�(�]h=������r�9���p!�;�H���-[If��w;%=�d��꯵���bmH)��k=o��\���h�E�i�7i:-!mn:`[�G�]���GE,�;��s�yH6�2�ƈs�՗:��I��@�^\�w���OV�õ������<�g?]�Y{?qK�g�H�[��X��&�td�n�[�,�Z�!H�6#�=nݳ����;O��W�U����G4]]�6�ٰp��7��[�aM�5P���B�]?����4�����P呂����7o\�!׺ߜ����ؤ������
��2>8�/p�2�h@�k~ھ��B~�a�[�r��=Pr8�S�e�sc�F�
ӗ�� �S�#P��|0z��'�z��S��)��8aFB�FE	��V�r�J��(E���fDp���U�\���'h4P�� 	�j��<t�$>d3}Cv�f���M�}Zlf���,.��p��j1��t�Y�j�2�lƗ,U������<:�z��t[�%�Y!1v��M�frc:_n�"��7z�w�v��m�
z�ui��dt���O��.3K��<y��d0��3l�Ll؞�Y�ĭ~�bg�#8H7��J�C*gY��_��YKi�n��0�AQ���PiMg-c�����)<�9ܹ��JH�X-��o��w��aX�;�����<z�̳�@)��*��rw��|u�`���l�c����߸m1�:���H2yΡ�ؕ�d��Yנ�E�+�G�Z��Q
k��P*��.�6�O����W�=���n���u��B��d�u��8�<�7�4~c�8�(bK]4�x�~�*x�=��¿���1T��2��Gߡ}S�}����J�X��ùP��@z${P�™��"h^���b�ؙJr����`R_3���@|8~� v:G�E8�c�i�]5&4�t��َS��צ��	#�������5���jQ ��0즰���N`��v�!
�Ry�S(v
]wB}J]�>u��=�.#Cjn(,THu��_Z���	6�q���hh�P�4#J�H�%jt�3�M�)�#��z���z���dt��1Dn~�9�/��ȋ������B��@NV?�p'r��f:�;�b�B�QHb�$h�3�CG|��#v2�y�d�m)�e��sv��w�~٬�fp�~��DG�	�r�0��^Xzˣ����Շ��c���l&
 \�`\�8HHa��IC?������6���:5�H;�l��ވ�4C����&�\�F����jԬ,�|MC�ݔ��/f8��ܮ2���	�.��ҍl
_/��A���kT�V�Νg�~T��΂<`2����Q�&;�X�A�W@��@g��j{��j,�	�s�uuE
����֟���:�A��
8,&���ռ
}|��b0��lFQ$px=��4ddm7��nru"�N:O�u^��x@񝂍��C�G����*�%F�>Tm��?��2.�o��p������ˮ�1�r�\T��١K+L�؜c���n��:8����q�y�N��\Dv�j���[��ܦDy/�*=H	�[0�l�8=���`�D��d&�<����qR�}~��|m?9[�Y
{�H�I��FP��H�p;@���Y�����[D��]j��}�*ÞhJԆ�'v^��6XD��L���V�a@XF�k�<������N����.���pV�e�u���p����+O�;����FG�\E��нb�kfy
z��s��

	X����k��M֊P����Y�_g��#�f��}{���Lh.tMV((���/���4u�X�4u�<�k%�Ņ��s=x�f�Ȍ�ݐ��P��(�.(��q\��+����i}��J�/[��O��k<Ew{W%��҂p�RJ�
˙��$["�H�6#] �F���C�֫C�_c����|=�F�2[�#�\��eyÃ�.�a��nơz�K�9řeN��Ԟe����Uտx��Uw�Ϋ�m>����76�t�O�d�٧�,崅v���2+�׷� TU[�NHN8�W|���fG{�ܘlT�_��Z1 ���8j
�`A����r��㼌��`h�*�b��
���#����ռ��B����j���0s$n�^�7��w�$�Gɡ;�N
.�A>3;M��y��?��zpͥ�Ι��4�aqp҃GF��w�|]��֯�!��ؾ�bv�q8�e�+�)��h.,U~�4]�h.�P4s��)��+k�q�D2�u����ϸu��E3V�⭯�ҟ�f�S��8��/D�]5���ޖ*xWG�j���}�l&k�lnçi��Pv'�6#�������(%��)>q��E��o6U+�6�ŋ�8ۢ��lޏ>���`����M���n'���'��zB-t�/ꬱ����3ik�3
���55��Z	1ao�|+�
őm��
��0$Yə�Oa��1ag�9��up�9Gת+����b��=H߀��Q1h�T��]�Ғ�Q���^��?������s9��ػ��� ��l��B�|4�TN���YBL�,�
g�#�5��A�㉐=!�7~=�/X]W��uw�ZW����避[��Ꞟ�W�d==B��m®�ҏ΋v�?$���
E#
�L�!7���ط��!����T��RR�I4��)���H#��l*�:#��H.���)����pӇ�
źR�M�B���=�ƅ��(ǂ�͵���˥�>A��,�_��2�%�5�p�yn�6/���Mb�t,�L֮���l+�9�Q�Gb]*�D;�
����{PZ!�*��U1���|���s��{�"�3�\�g�������Gχy��G:�-nQg7��`ԏ3�x���Ax�%ÏU���XMZ�&HX9�>o��s�Ga��
��'��!�lü��|�EW-��e�b��bxs��Y0��6E��>�)�V��H��߰}��V=��G~�Yk�h��/;��ۇ��0�{4.c��\h`�5���
F�A��5��Tg�[4��#���S�o3��yuy��=����<'j{�	h�N�k�6�	�@1c/��5-T:��`Y�X]��g~���i��l�p�!��e>�1x06�?�e�oA�s�b���̪fy�b3�@B�߂�Yq�?;�m)�h4s�k�P�����UfW��62��c�>8F�(�t*G�C	ym
s��r�p�?��I��C�Y:ϻ&͜9��9T�Y�-k���%�)�@�|FF�h�9*��(Rt���K��ǻ�T��XM-IP.%�C"���?�,+ˆ�=��	��>�t�����U�gQ���W��w#�Υ7݋���[��P�	��ޮ���'j7��7̗�9Z���I
�S����O4YkDE�͂�B~�`�Ig;�m�����u�֢z�Sg)����r��E܉�=m�K��9�ZD�]�4����~7߉R6Hۂ(��j��i!�BldpӜ^���zz拾�g�F:�qꢝk�Wl�/С��uX2�r��TsB�נ�����ͫڂ�t�}}ƶ��_5�	��k�4���	�A;oH�L�Ϲ�)�z�.�qu���A�z��yx�j�k5�F�-��@�lҙ��c�ڗ�җ\6�=�
���O]9�/�5ڔ�볝�\tO���C�T3�f(i
]�w�P��iQ���w�γ�=J�ߌv�Gޮy���[�[���,��Et&Q��o�c�Â��yb66k���MK|�֋$Y��z%���P��(���^�87D�rK��`��%�5�.�:��	�Ďx=m��n�ً���m]�Ю�&�2G�(-@�Q7xu3%@�p���~н��t���S�]���=�)AG�����A��Vg;��*=�$mz
�-|_E�Z�ˢk�<�5U5�fF�I�j����`�=H}���)0��~�F�,"���N�6�k��"��}�Ṓk���T�"$��mZPc�',�ϛ�tz���Յ��];+�j��+�NG�>K#�h-zp�6\��;y��b�~�9�.m�	�\�=�qrqü�=fS
6�u(����؍��3���#����0����
:�Nz{S�M�]"��`R������.C���r`-��U{낍�z�n�q��	t�x��
�ic+Ԛ:3Y��㳙N��*�a�V��P��
�`�1�Q�b���@fc^X�9�̼���ܶ����jtҜYӂ��hھ����3�	i�js��+\�8Tv��i|�Q<
v��߹c�8�1���-��t�������\1����6���G���I��n�J�:̇�h�X��G��r�+��<�O�|a��l�yxuco���7狿P�'�j{���G�w��s��ʥ���s�����
?��?kL5>4��Hj��v4���l���!���,��c�C�5�4{�ٱ�4d��R��~��p�*;9n����C%d��}�d�A4Q8�i��O�i	���T����gd��ul�U�S���A�q�$.j6U;�MǶ�ۏێ�ۏ���j�9J�D�vAF��b�m�LOI=`�j�f:��>Iǁ�J!�
�6T�xư�qn���̓��S9�ĀM|�!ґ8X)��h�ͅ��ͳ�(����,�ӌ���2����+l�D���3Qɕp�$`�Pt�[��� ���DV��2�op��o%x�Z)�����n�:p4�N)�F Նt�T7M�u`8��P*r
>�(��O^����tX�i(��M4!
t(�>h��cU��<�@��ܦç��$�M'���(��J�׳��Q�܃�<8�Vj��j7P�?Ͼ;�������_��!Q����.h|:B��)Ӓ��xܘs��_���d9��aN=�.WO.�\|�_O&t�k.�".D�p53�͓	6�`8���I�u�����Kj��k/�����wi�U��S��us��U�lr
̥;��ѠMe`�T���B�&��n¦\�	g2pd���[0��O�v�z����I�'m%�4���1}�@�€:įZ���/r
@1m8_.���W�R���lv(F5A�ս���~]*@Qؿ
V�����g��M܊�����:M��ʞQZ�㖵��.
H��f��J�wK�IA��\������f7�z��l��}5�V��z����G����Ɛ�
u̻vߋ�a��ɰ��Z(�S6W�z���7e��k���[j�����#6[���6i���Sڣn��@�d��`�[��}�i�]<{b�N&k��G�[�Q������`E�������k�$|'������GO���R��4:	y��X��1d��hz3T�ʷL-�3��D�G%�Z
��b锥�3�I��陌R�^cy,�3��P!�@�ieNq좀FS'}@4�шÏ~�����*�T(�P���Y+�=�!?�}>�Ю�+�����w*�3�U�����sƽ ��i[�9�a���\��u�We�Y5���	���+����,��iK�\��ʚe�<����z��K�C�&�Hd�bktݩ7<��Gh���
�f�O��fp�+d<�8�Y��X��(�ϴ�s�>!;B�TR@J	vK��U�8�bU�H^Q;O�k�b%�[Q�H���O�9谉����0r�0��}����U��>�ʔV5^����ܵ�����}ecF���mۈr���qLEl��	"�I5��ڦ�fU���2c��W+�O,
���MJ񝁧6���y�?*�0&N�ݚ�xq?�)��>�e�(�	@��qT�Vx��>sjA�i�2W@�W�<K������P
+
�i
���4�(ا����	�
����xA��̓��	1Jz'O����?�<L0,;V|'[�9;j:[��B��خRk�nC�.и�iޱ�T���ݝ&[h��5V�,�R��I��N�{oF|Tn�_|Q�W��>��U����{L�Г�K^A'�96&�E[h8�����J*�X�>�w��yW��+��V���c�*��Y���P����!���3�
��^������%�"��`�ɒ�R������cD@�2�ܵG��5g��L6}*X�l틵�\�"������*����p9������B4M�z�A����65L��.���2�k,0���^�>�G@���@H�ty����Z4iepWt��A�h,8�<{9Ƚ��ǷƶwZ��OY�E�<���Z�)��t#�/�崐�\F7ʔ�B>(���&��6�ld�i��t��/���=�n�>?&s��]@Ν�0Z.3Ĥ�9M�G�6�XI�J�H�Xa�:��C�}��3����6��~>�D��3��U�O>[vZ_�}ס�qN!ʃ�
��-�W� �������
S���Ha)Y���'l�g8=�`z��(bwv�����i:2E�!��`�;x�,����Y ������ߩ����
=��Іj^ǻ��Q�^��_�Yy`���Q����[&aY��Q
u�s0{&m胑*����j)���T�C��$YQ�>*�P����}H��������˥��_�7��!n?Vا(s����O�GRB�X���bG/*󨴉b����E��(��"�lrʔ$Ϋ����dJ�wGp6���
P�/�#j��mtC�R0�}B�j̣R��X�v��I�>(�j=���:E�C�t�V�:O[h[5�"u�E�3W�.
f�[eܫ8�P)�e
�0Rԁ��d.ُ:~}����t<)��/Q
c��O�B��GGp�<��"-G�-b΢�y3�b�#����5�RPCk{d˚� ح6�d��]������L�d�Lu鋶
��LCz�Ӯ��IYs�;�A��@*n�yڢ�����Kˏɩ���E���W���eM����â��x�[�*u����-z��җ�rizH>�������2$�����=�_�����j7�{�!�h7Ύ�|p�fs%9LA�Q,��2��WH�(EEug��&�/�
$̃cm$0^(K_�C]D����i����+�/�TR�hOJ?��N���ޛ j�;�쁳�#��ISm0Q�4W�����Տ��5_��fd���"0�ԏ� ��~D}��R'��k ��GK1(���_/�T��F�Ȥ8��>��Q8����m�.m���s��t�Á��-��`wZ�a���x��x�";ͯ��2�o2�:�h*4X���-hW�3sn���P,ɞ
��"ޗ`7�Nw8ɐ�D\���	�(,f鄝�	��I�M�|؟��ն���k��ÿl�5�n�v�xL/L��M}��ݻ/�Е�um�.�u��m�d>�Nh���&k�Ե-h���#�
+���q����s�}v.��L��8�c|�P=/2�,��T�,��\f��x���P!:*���}��uL�v�yj{C��[��	���^�܋�����lV�͛C���Z��k������9�~�_��+�2_�ʗ����7��%�\~�N�V�w�|�:$^�fH����-œl6��[D���n��i�D�>�=�}4b��=�U{��x�C��u���:����6ݨ�18�=�Z��%�ܓ��&��?i*�V�߻"��z��,K���=�,�5keb �PÒ��}aM)d��Ő".Aǝ�2�An�K%
���%7;��QΤx9:�J'���s�������9��:�(��w��̿s��lt�W�����N�~�+lA�ڏ��m[w�7���7n\����W<9��-N�߹t���i�?��"�;�i�w�[��;L�vP�2�z����r�g�k�cl;#��E�*��b��8�*�<~h!������:�Q�@�qӼek�/��#�@w��ꪫ'���	���r���*2_�2mp�pm��"Oގ�:�wFgR��ۜ����������{z�h?U_3�������m3�ؾ)��[�_�.��/��d��
j�����G�̨�.��+{����7g�|�6w6؟>d��5��;{O"�-��<���+�jaW2�2�����p�����W�a��g��y6&�Bh��I2%��1���S������*�[Ϥ��F��۷�%nwT��	Q��Ķ!=����00!�dP��$O����j!%��l�6bd������[6�,6��`^H�fɖ3V߶[��8|\��M��Q
���lƜYxj�?KO�3��ٲ�%)���)JrGƼQ��̼)���2c�"����^�–�;��@Y5��u�!���'�h��VGTi M9��#�(ן<�4�s�{��������@�e�fQ`�Gy�
�8�L��"KB3�+��fOx����_�c`=C@�d�-T�Oj�+�Jw�]��f1���򉠦J��� ��-�L��[,�Əv�u�&}��z�)Aԫyz�X߶"��M�Ww�P-蒺Mr�k����
4�4L�ZvɎiZcK���U/N��j�a,�a����!"Y<��]�K�����-��������{S��&�,�-��l�5�V�(��DSJZ�������U����+�6��U�Ԥ)�j�ȀMXju5xk�O�x�kC��f���>���v;o�Ău)O[���H<t��_X���4�i�+*�d��Ԓx7)�l��O=��R�|O��h�\��ؼ��E�RD*c R?ʇ�﫯��"��bL�+n�wSB��IZ���^��ģ|��r#R�e���A�>����%��rJ���r�ZN���C�Q�n�?|��x�����_B��*k��gY�n��3:B��4Wͤu�Q�������.�R�M�F�2���>��8�G�3J<ZŠ�r���Vŗ�Y�~P�9��w�;�<
+�iչ+�5�D��D�hp,;ʹ�j���fƼ=䵫9�� �3�Ƒ,�@�('h:���Ƌ&m��TkP�q�8�󨴱�!�ä.���#��Q�{�=����=4��V���#��m���x	�_�)If�C�#y��F��N�������
u����Q�R��PQ��y��Q
�u�:�]�g�*O<�j,0?��g`O�N\Z��\�F�k�rIݝJ%QM	$%G�/-�S_hz��t�>U����֧�c��'��P���fՅԭ���ں�o�>x�,u�����P^��"���������yXdc�i+�Y�_'�z�����6~(+q$��U�;{S<�^x�Gn}���ou�vXt%�&3`�.:gA����'�%��O�0j�@E�w���:���м�jd���q�g��e��<TCB=�nҗ��Cq�+���d������)Ӫ�L�Z��&��ίYْ�bv���sm��������k'm�xl�0�k"���ȓU��\��{ӲY�zY��.T���Yt|�"�������cK����:6�.4L�S��z�D&D��LJa|��+Q����h��_�}�e�Ξ��z�_���
b"	P8^����Џ��>�����4c�&ū��Y3�]��*��tI�*�
r6% ���&A�R�^3��$�p��,a2GÇ�}O>W4�7�6Ո�n7[�Y��Nq����O�e�cu/=�cm:&�4���C�o��<���}��i�A�O6�ă�N�Y�����m�:�̲f3�J�"M��K:�Ek���:e-O��7�
�6��;k�h}x�?�1�/\���g^��y}7�|�4����q���'�7o^�� o.�Uξ&�d�5���v��� ���3�_P� Mp���Ĺ�V�jl�U�	��a^vqǹ�܈\��?虽쪰��:���Oo���b2AL2���9�zXv��Q� VUq��^�k%@���$Ǡ��#�o}��Ts�cFW}�$y��F����$y^2:�����l4�/�m�a���Խ�&�o�L�3Ѥ�N��Iq�!�#��ĺ~������N>�0=�ٞ��bD�A�w�	���O��h��C���Tѡ�
�����֩F�I��.��M[�V�#�Œ�3�z�e�{��EvceR]�
�
�ecsER����n��`{ah��Z]���'3W�0v��Ix�V[mQ�8��f6�4�Sc%�Wr��F.aR�6�a��Lv0�n���=,L	�Z�BU\���]�a�JX��L���7�e銛
ljQƀ�c��H�j\���}MG����ޛ
�[X@"�W�dNS<���+�������#(���;<�"w�~o�myL�'�D���pEb�Y?�~�{{����,o,�RD��(J�bC�>�ܶ�_�dՇw��f�f�s�ܦk3�ގ&��~�L	�=�$&���Cyd�"�le��؄� ��tQRʉ�@*����΋����7����JՄpC��#5-�V�g�o��!G�i
4�&��N�pO���o޴խ�9�k�'y=JS4���/�;�٬����v�Y��3M�iB<�
���(Yuv<�9_�m��@|zU��
_<'�;��^;��#�b})�K�yw���n����o�%���6��,i7�-+v�(�k6i�c"Ym���=t#WRT�����m���R[����na��<���j
X�)G�VX�,��gB���&blц�*�ϸ"^(���^�Bk(tǒD�>f�ʭk��l�W�޼����(�I��d�r�U��U5=^�Df�j}-���:�$r�p(��<M����zM���Ư:|�%7L�>%\�x�+>w�W�؄	O��u���
gq�/�,��W:˺/Ɏ��+�����y+�&��Lo)�	���@�[�@e�x���b�i�u;���:��Ykw�[50��x:��r���s�S&_Xx��f[b�T���:7ak�}���Yx���<5����r'���(>q�-��p�r���o��ɴ2��H��U&�I-K������m�h�ɠ\���YF���Y`��|fM0]63���B�w5�%#�'iH(�8�[*�k�.�Etc&a���Nm�V�JQ�K�T�M��b�X4�?��#4c�왓Q�,<��v�5���?J��	[��J�s'�ڛ�iӒ��Ӈ�C�>�䶵���h��Mz__�m2�7��b�2�HC'���
 j
,J�N؋����
��Luq�M�Z�W7��'./�^L^�DL���%S�	������n��4:O�W���^�o�f߷Rпl�q�{��\�PȖ叙y4*x�Ba�v���� k��x@͗qY’.3�HQ�F����|�:r�Ɣ���9`P_�SRL���
6b�|jAn~<D��N��"�u���0��Q����\�� W��u�ާ��fn6�oH�玤�N	N'�S;���)̓vG�vejO��XJUP��s�p�����s<���׷4�����}��a��m}S�j�T���Y�Cheubm���20�~�t��'r3��:_H7��M�笜�Y���rN:1��!-��z��\�M�a��P}���l��&pq�6�*_U�Y�IG�~O����_KU8��FT{��t��(���av"CBf���_F��;Q��n�qӳ�B$MU*r��g,�^��GD�,I�H:7FD�	�Jl���k6��c'�]�u��;��&��Fb���F��iB�"�&͙Myk�U�����P�\�M���]J��~q��Z JP�$5K���?��1/,#	K:I�)�D�o�Y��:Mg�!'�S��$���M� }��Ê�N��~�$��Ū��3�w��m6�]r׊s���O^�
��ll
6�H�{R�vB����o���Lg(�i��Z�hVd��˂��]�w!��r�<3��H�/����7Cy�Y�N9���Y����@��Lc���eY�֖�Y���$�rz�2�d��k`����8v1�gI1�"0��k�~��,��c�$����ty��h2�^/�sv���骩m{��T���UM~{�W���Ï��ɿm���k�U�ٹ������?��΅s�4a��:���Z�D�g�;�@�V�ם�4����`�gلw]x�/���g�o��L���v�w�'v��ڟ��ڔ��y���K<+<f�>�Ǟ�����~NF�=ΐ7�.'�h��ٖ�}�t�)v�SK4�Yԉ����s]kW��N��-Я��K�`~k��R�-^���"9BF%`%5��S'$��^\o��;��NKM#_5y�<C$(V��*ޖ��Zj�����/��IV�Z��et�M��k,��x�C_m��{�ۏ\�ʶ�k@1�R�+ې�.����臬������t�и�����l���=C;�x�|^c&�a=w���9�9��p�t袋�Š��7���1��R���1@e��a�����<�3�w6��Lj�(
~���n0K��M.��
�E�aR��I��W�1[S���,9p'��Y���P�M>�r��֖
�j����K�g�M�dn7Y
n� Nl��ݮ��m�G��Y��N�̂0�9E&W�K��b�K�|�ĸ������JﱵWr{�ݷ���kQ�cZ\2�R�؛�O����ۡ��_��h]��Ը��y��&܈V��;~��M��/�׭�n�߮>�_���[.��/m�2������A	�q�J���{�>��L���M���8�A��f��]��'�v�HTUO��μ�Ń���̚u\�eA���b�~�u��:�y���nw��������ݥIٸ��$j[Q�����V*b�聇nE�C�*�ZɭE�o?҃�&k=�t��#��=�K��T�rf�W�Q�jJN^yٔ������Q�W/����O��o�^�rr��j��;�N�M4I���`0wϚ� _���ߜ����!Io���uz�#�3�tz�i
��k�j��m��f�L�'��k�
^9�u�Dћ������Vn�Ǽ^����߲r��n_����CSC ���"�6�Gi1#�W���0=p�'��]�@8z}�Q/
F�"�̒��&=�lF�w�d�F3v1��F�uDFY�V�'F���`.bN�u�䡁��V�l�|I׀��ɷ�*�~���)���Z�*�!+��u��Qv���C�M/��vԂ.q��c���Ys��,������wD������iN6� Y���r�L����U߲�[cr�c�q5)V��!�c0�31;�B0ތeG͝Ua�V��NU�e�	�(��;�;��|d���;��_T��A"�?/}�M�i	���;]��w�t7W�Y㰛�n�����Ng��h7���E��B��7_R�E=S�x�V�5P�s���m�`�ržYa�������z�Ra�t��	�k�����_�F�=���dVٿgC��j��߇%��T�}�[��n.�Z$��Uq�:�ۛ*<gg�n�Gh�(U?.b�=Ђ� z��3ek�
4��	v^�QVJR�T����+N�1�E�y���D���;Y�C�+�dN�A݇n$9�M���Ay��hpJ����=^�蹭�%[ҫ{���\r8L^Rڠ����g8�ޥ~�a�d8U=�gP��'�1�.#l�
��=ΑѬzR6��np�~[�E��fn��G�+y��|:���f���E˻�~E׶�M�ʟ�]�����f�}jE�3�qMOϚ���{��d?]u���U?���#�/;��s�~���򹃫ؚǀK��-�6�B��'闘̵�L��gc��g&�=��G��'�
���}�S�唩���VC�I�s�y�����RCM�)�r�d��7&UC͝w�4�N�sc�a7�fl���]t��Tw�ݵFè4�o��u��֍�2�B�>#o7(���J~j�E(�EM���-P<��n}�en�pt^���
�^<���5�fͬ�>3���/rQQ@��Wヌ�����(�Q��Um��)!s���G��7����ꜜZ�4���	��…U��l���ڟ��p�d��:�Cc�e���'s2�E���;�u�*�'����$�]"���c4��}�
v�zyDz�ɨ�n4��bTF�.b4R#�P*��~6��t�jt���ŋd�ۥ�y1W!�ןD}g��lْW_A�4R�/�u|��]���P	�Ǯ~��:t���[�����94{-�.�ǀ���y�A��0�� �x��6-NMv�M$�c50g���hQ6����1���B��n����W_u�s��;B��E���g��}\���"\�a���Q=�#���ͧ���վv����1�ŊS�Y(R.i�[��9��Jd��QӜ<0@B�Nya�)�j0Vh�2쬄�s��O�eP5>I��~���1!���-�A8ag�j�Nq^7�6��e��/�쾇ݳRuԢ�Z&�U�EJ��l�p�Yo�<2�"_���:��97�9f���阎���.�!
hI��4
Rk��Cj�G�Bu+b���tQ�P�u�/А1��TZ5�����V:+�zp��8��j����y\ST��!�zr��u8Y۸$��Յ�F�uFY���Tj
+[k�j`�GŦ��+�yl�֦Y닍�4R����,�+��h"�)=��U�>���yV�˕!��V]�Z�8G_
jW��p��H�� ֬Q6P��8=w�Q9�]W���80��9���{��z$�5��p�+��҃D%ꔒ�-��R`5CbJi��h�EI@����x�Q@��-�J����h�n��א!7���#ם��Y
ѣX�����2��M��n��Ɣ���i&�#i�x2n�B��~��#��}2n)Ͱ�.w��o��B��(��Y�k�"��5n��G
PTF����;�N�Q@�(�奣$���%l7Q?��lR��P�fB!w�ҤJƝa�îG�ٍ�J� �vK�g�WOӬ��L_�$��t���a��[!i&�M�>J�LBf�R����%�ۣ6!�o����"$�,J�{�l2"Qo����#BQ'!"#����H�:�.	o	��<�9*a$
<1ʔ/-
᪠(J&���$�
f^o�ћ�<o���n�!����A���E
fl��5
��H�<�o!ͭ�(�p�N��tH¼բ��.�a.�&3�!"I�:L�fsZ�0A�:�A� RE�E�b"`��\�`qbѦӻEA��lr�Zg0��_
�X0JX�	�Щ��9�1��"BN,�b�q�H/b�I����2&0�6�IM�U��%U��	l�I:D�Y%�Y�K�xí�AЛt�PG$Lx7��0lĤ'vluۏ�x���!"Io#�E�NF.�`�E�b�Uo���˘'�\�y�
����~ّ��$�(�d�Fnd3Haz���I��+F��#�&�z��h$�Yg�u.����X���l��b%��N���[/���*W8����BV���0f�^�@�`^y'/T�z��:h��M�#�$��<E�H,0���A��o�a�,0�(�i"!1”_E�63�;�x���Mr��X�v�uaQ2���C_�yY��#"/輘�X�Hp#9x���1@1@�
6�	Z ����m��݆�Q���D/��.T;O|�`1�e7J:�^G�	:^��&#�a�A��$è
:d�z+
a�(�~�d�D[��i��F�XVX��DX�F�'�
:Cqs�����jӎp�q��2��E5!K(����K�Wk̙�g�ط(����h���P+���R���^Q���-O˻�h�@�&�l�o�%<x��j/ޅ��G6R-V|l��ht��iL�`���xlhY9��U~�S�㨆ӵ(�`*�J�|�u���(��xn\T�"K��L?�
gKl/j����P�[�&�cr�n�l�*�oEŅ��u�̬۝�dU���F�W
5�\�1�v��C@��4P�b�|�M��e�^I�]%�S!W�}�`��*�_��U�<���(�cnu/�Xxh�w���
���)��k�0T�$׻Z3
^�^v����1e�F��g'P��JAR�#F��,+E��Y�@�'��C�K�_}B}�~:@ŏݏ.��g2��K�.�L�KZy��,��ߍ��6:&5Fs��n���-Ț\%��۹I�dn
��[ɸ��@�i��5�]�i��v�$��t��W3�L\�	C^\L�>}��6�,����+�7���
�g��2�.��;����H\Ұf��,-Jǒ��Ew\��B�wjǎ>�fM�.��.kl�Dj�.Xv�}����mW\:5֔j����K�ضV�3�B������S��$l��&�ijD�YdIO�~q��!�rW��)\�3�
H��.iT2�R
˔D��'�i���>-�(*�Q�����o�c��$`������g�#A��ꆘ���0�����ߨn������7.>�x��;w,yc�?�Ơ��3����6I6��1�q���	���($�����,��Njwܴt�r(y��h�2�l{s\p�@5�H?��]�J�Hʽ���<l��n�h��'�1��P�mϣ�So���7i��$��½݇�����a͙�~}�Z}gP��$���6M��h������M_:�~z�{�dZK�e���:s�/޵�bR��+ʤm��.F_�����-m�AE�L��ǭ��s;�;��\�激��q9��:��L0��hֳoȰ�h�mS!��S�b���f�D"N��� (����(�YqG�"�Č��;Ck%�mD��D�͙mvKa�5:p�5��<p��Fi͢=Oӛw�4�->�g�Ihh�h�{�� ���e��f��
�zUs|�+�D�W��xst����-�}�"��<;�p>�#��?���X;$}�u�pȖ�ow/�&�ν'�dޒ���M-�3�g�֛떤������$y���I��E�uR�
;�5�It��Б��f<�n;u->b��{g���-:��6ާ���>�k�0ڹQ��s.A�,1��xB��U\�tBBA=
��)~�3�.{�ҍPa�~�OBP��:s��QS�=��:Uf�s1�K�ɗM
�@����P����s�y���gQ'�)�_�@\l`�|N�1�6f�p�p3��,Y��,w�Z�1��~ט���On���oy�'�Ǘ�lfC��W�?�Ot=��Kz
����(U�QC��dP��n��.<����=y�]��S����d�2�K�Zu���{�d���^�&P�^	q��h��E�AakF�Q���7>�<�~̈^�=Qby��A�s�X� Gr9�A���ժ���`�	����Ε�Mʆ�돱��,����,)���4K���ݑ�Y���Z���?0J�d\;|���h��~��ki��?�e��v��宰�����K��v��2�)i�9J��cj��~�Uivo��	V޴�ʍX�~�eC�k�ˆ���Ɔ�K�ڰZ�n�߹ZX�ko�n�퀭���:�h7Τ�����G�+Ș��}I��]Sfn"u�!�`*��ئ(E3	��M�N�4���j�nRX�M��Gs/Mtb������RS���{i��+�-��v	��a�J���u�3�Z/�WS9ZK��]>�Ɵյ�68N^~�i�>v$�$�&x���;�ό/n�Tu�������
�_�p��d���R7���#ƌ��]��Kqk�^:J�1�)Ǥ5���$�2
;�ʗ$X��[���Z(ޜ�h�J���7*�%2E叙#����z�g��{��hLK,����M�������#�ǤOkdւ�n�n��V����Z��Ħ��پ�[���ȷ����kV���%��ʂ�:�@S>Զ��}��S���~�.��vm[k������l&�ż��V�L��s��H��uvM[2���/z9ն���.�S<#y\�6 n�G����fmȬ@���xʃEӻe���iwX��D��v
[#:b��L�_�hkm[-�Nٌ�E��Z~�emM����%Y��뛮��%���Zbt�h%:���9}6xn��.��^%,uXF>�.1^�x��o��U��Q��O7��������}����\�1�B�,53V̒ׄ���'Ō�z�w6�7Oi�6��o_���rU���qp��,�1���qOi#*�n�;6������F(�Ny�'�+ܣcT��q�<e����LA�"qe���޲Sq�x�LPQ�W��Q�W�y�h�Bf��M���(��[�vL#���ۛ�Q�}�;��Ε��˒-�$�glY�o+�s8q�N�er:��@B���p��&�*АB�y	�����RZhMKy-Gۗ����̮!��>������3��3�3��~x�h�4[� �A�=,O�c⋢�rx{�+=�.z���f�G�A=��SM�ϒk߉�kѥ1|���u�g�<D�k~>�\==j��=$��rR3�,��xٰ�U`B�!��"LQ�� �Jc@(��{˯��F�/�����4��3�i��bM6A�
>A� �0Z��������(�	��zc��d�I
Q&������Z+8L�T�W���&�� ��a�Q<a���"�*F�S)1�^T�}uМ�5`��-q'6nh���־�ڻ�O׬��%��3<h��%r�ܿ�e��	:b��
VY���z�l�N�]6��p�/oyiOc������5x����r�M��{�>_�ؾ��v��5������>9�X�ru�ʓ�3�r0�rd���e��t�|��¶����L�d_���*�5�hct,g�}��W��i��\�<�c�s���p=�i�v6��l��۽�N��8��E�߹�����ٿ}aq̈́�s���+Wߚ
D�ٶ�D^�؉>[DP�jq\j3t��h �d[�)��7r��h����UW]�jiK�97���
X|����/����>g],p�K�4�Y�W_�ځ��/&���-�.S���0����+���0:��A��H4bc���7o��|~۶�F�y�W��ub����^yV{1���
�o�8�����S8#(�緥~���w�޹�jҢ����6��ĉ�"�h0P�T�	u)�� �$�`]+�E:�E��q؎�W7jD����-7�(3�uŲ{�Q�l`Y��$����OC�oɊ���= ��;h�>���E3g^tP��e����N�B*���ʘ��!x�%�	�֙�Y}IK %�ep��H�	�ZR�́�H�+!)�ʵ	*	1B�1ˬ�B`�>� &�)ç��	&��
���)��,~�)|H}��ؚ"����od�A��[�aO:)�禓�G����wLr��(y����ļ��C��g�Q���#[U�N��84��~��c�!yz��ݰ��ҔZ�3�;z�ss��.�F������M�ؾ�1F�SI`A	��4Q�ByE軼a�"�Oi���P��S�b�nByḰ��XK���G�����`SVЍC/|WM�߫ʪkj��v�!�:�|uQ�(�U�Ϝe׷��]N�#h<;�����v�U{�}���f��j�H�%X&?	V�u����~���V~j����6���A'��MY�v�M��!�GP۹re紳�� ����D��k�����/�s�)�k�q8vI8��#x�
���G,�c�?��;_�?��!��sy�ٯ3��ηw�>w`����||����t���u�P~I�����hh�nE/�&�j��y+���ٸ�uT��S6�o�o�O�oh-N�p8ޗU��2$�u�]������v$0$��
c���߂��S��T�6��h�Bڭw�.ci��[����ҙ-:g������<F�=�*ǫT���9� ���r��%@+�2�u!t�ޮՒ�2#��ލn�A7�A���YQ��Ⱥ�U���ax(�Ę�[6��b��œ�8���{`.�92q��+vK��$	2�+���p��*~M�r����Vs\IΤ_!���j)p��j�f�]_^ș�P�G>��*�K���h�q��{F�A��
�lW��?}�'�M��R~<3.(�[v<�QHPC����c
}I�br`\~`8��{�;N\�w��Yu��I-��U'N��y]��9
��Kp;�+��I^����^�V۳dv�9!Ns�߁��_倻l�1p�~�G��� p�F#�:��:ԅ�[���	H��˯�����쀿�":s�-@w��;1n��3�+���U�&���97��ϳJ�:���W���ja�3�,���)���a>�� ��'Tgx4J�A�]ԧ?21:��yA�c4�Qd�8�`��b���4�D�lu�*�l��.]�&'� ��N�Y	�?�_EJ�OG�#�y�n�	^��TA��/UB
{d��Ȏ��U�}xX�1r_i}~8b*��=�^]W*s->��K��d��fgQ�U�(��s,�Ze��M\�����]2�)�1
��$l!?OnG'o~��P]h�꙾V�'���E���6Fo���/�q��+Z����jz�*�S`�O�Ɓ�| M�U�a�����{o���0�3g��}�(骪�5�J8��+�5O�OWU�$#��+�����Z	�J,�2Y��i�n���>Ŗ��X���p�'E!��4�l񺻜��i��	S�(�߁T��R_ʠ�̈́�$^����ŊM����O�wޯ,�cӊф惞�\I�`�T)���&IX��3��W��
Sv$F�ݸ{�e�1�fH�ț�aw�(Q �\�9u�\����O�x���7N�Ѝ�%��hۑ\W���TT۪��˻�Um�ʂ�j���r����S�-���kU-����n�E�*+g]4u�,}���뮻mf��msM����X���9�U�uu�UNGQ>+���U���UG7O���(��Y�A!��9ې�#I�%�y���\��gf<�/
��Z-H��L�HP&O���E�Z�:�3.&0B�}�H������`n�(�.�Y�2�,L�~�]��Da��x�Q�`2�:��6_u>�6��)+���{?�D�C�<���Uk��mb��~�c|T��`�ᾮ����&��
>E�7�"B����1�����;��/��� ʤ�A�$v�Bf�������Ytج�G_))P@	p�7�:�z3hfa2
������:v(�^&��m胍���ɛ�7Mi(�&�+�;��v�v��&����1��S���	{��\ر���%���W��[�7m�nYm}������5q�oqQ��ˊc���^��nBq]�dZ������CG6�\i�9I/�����`��b��}��ޥ7���5!���pa�r�H�ٰ�)
|��\����n���@s�؇Ӂf��s�޿j��Z�V��+m�#~xd���	���Iq�|Y�;$���`k�G^i[ي�F�T�X�
*�Ql�N��+����xD�Ց������-M��L���[J�� ��ϧ����},��i.F,2"B�G�щ�����0��~�Ie�O��Ö��[咛���o���}�T�a>��ľ��/���o���z>�E}ʋ�`v�z%5Q��l��ҥH��+�+��l6g���S�Ô|�B��h�8��ڱ�t}C_Ꮐ֣*�=��d�[™��M{�W�J���fw.a4��4���D�o��*��V��VA�8�sP-��Ҟ�}��A���"�
�@�"Ȥ�����t0���+|�|E�4N��Ł�ݓ1	�9��)*���Y��Ѷ����QoP��@�	�J�2��::b��?2�H���ϴ����3�Y_�n�x[��b¼�Y1-��M�ҧ���i��.�#?<���e���n��g���_�+�w,��1���?�Q�`���tt@��܁�
�w|3OQ�������ozi�/#����@ :�ۨDl���#����w��w
k�h�i��Sy�I����M�@�$�I��g�QC�3I/���Iү�RО��c����}>�\!��Б��c�k3Fʷ�׌8'�חe�d($lٷYS �hC�:Sl��i�,�ɯ�䝂�<d)r�$�S����Ib��T�^K���p�+Vu	i����A�>F�i��$��柌��t���n�_=���Pp��T
�;�(�3V�{I�D{��iEZL�I
��sҢ�c����"3�[*8#��^NG#�c�`4�cCf4q���&������E�:��r�@B��$�=��D���M�RI��'���04	�'yP^�?R���xS^�3�Ԡ��j�"�����!���p��sm�h��g8�����G41$�G>Lx���Ny8���.'R�ԇG@"�L��C�8S1�I�.u�ߣB�G�?>�����sj��6�خ0FƆ�{�1�7qD����X�SJ�Rʳ�R%F�L!sM(�~l^0�������a�v$.��X�V]�Υ��t:�J��t����1�"GЏ�e��C7�aR.#*�f�E�|[r���X�\�p���M�[�\c�3�����`�Z�*�؇q�fPW3f��!�u������6�����1SJ���rm�o��XQ�N[�1�c�_.ʁ6�a<������K�#�QGRs�7�gc7�P߀s���ޝ�to��s02z�r�����{V�{n͕�{6>]y��T�Њ�X����(�|�'��׵�h����%"� ���׫��{�i���`./Md�!����]Ђ�[�x��C9w�<�X�c�pKC�a��bP�#lm�Пur�8�/�^�W`���Mfs��(=TA��{r���\�X݃f��?8��:4�g����d��<�Pm#�4Vo-Y@PV��p	�׆9�1JȺ�C�F?��!i�&0���I��SH��H�o
7A?�U'S��C]�
7�4���O��z�C$���=*E�L��@1NfY�oȒ�:4�����#�}n,�uN���\}Za�gi���~��@S���d�&l�'�Y��p}�@�&:y�0�o�)�@���}H�U��q����Ss��G��|����@S�
��$q�Os�I�#KH�OsY�d�Y/�R�����&5�@�ѩ�Ff����k.�`����G뺦��Ÿ~%�0iB�7}�y����1_��w�lᆬ��q�_�M��R�uŐ���p�t�����{��JH��E�2#�f�,��t��D%Q}�:�0�Z`�1��
b������W6K�+���b�d�
f��e�+7�r�JLZ+S�!�}w�P�3�wi-V�6�u���o�+6�]�
�`W��d�d)���P��L �#,{yi��*�+��ӕђ�����	g,cʺ9^V'��0Y�2����[��g�?��)M�������~0�9?8�21�����^:3y��+�|�W�#�ܻ�oط��
���{^GǼ�?]�M��=p��K�W
B��K�捋fljh9i\��	���ȜE��Κ�Ι�v���ÿ+~긇���}�$���9�3&�E�4ɹDR�u$���c���<�a!�;���Ă��Ȃ!ŕ�1/嗋X�v��`�t�K��e�K@H���2؅�Ѐ�8�6T��jLeˍ4�T�,�	.��7:́�b���x�*GASt�=����I��,�"���G^H�Pu�e��PCn��A�	�G���W�fD#��OR~^�e����*��\�����NY���LW|i��=��<��ѵh�ώ~<�h��o��Btt��U��]Ns5x�O��|�2�lm�6h��ݎ]7;��S���.���i����ZU��\W9�?�[��ڜ���Uj��u��rl��!�.������D߄I����D1
�'�G�W�<�Qf���BŒ��*1S8�)�Z:!
)QH
��I„Zu#��v���Ro�o������ 5��\G��zx��dT�f17e�E�X����\9�ZAm�vP����{�Lj�	
��t8/��Ҩ���9��ӥ��%���}�����	�{��_�<`F��=�2!���1��������ʔ��ۢ�n�|�����o	v&F��H�/�~�_�:$���n��Q��$�ǟ%�~��:���٩2j��2�A���l0�l�Z3�q�єɢGĉ�k&b
����i[���cu<~��x����sE��U@}�Mt��nZ4�01yS�Z��&�l�^}o�_l
Ev�k�����`�oM���M��`�7-�����҈����lXd�m��)\Ԩ�HA�q�j+o	�ƥM�,Zq�O��,�eT-5�ڂ�C���$���(*��9l�R�:��j���j:��+�=����ҟ��F���k�*WE���pIk�� Y�j.8��J�
����
:S�5��G^М��F���m���.䜼����CcT��@��%������kKH.!�%
��ud�)�kAA�T��1��x�7�*�\�y��p���g�
*����5�U�ftL���1���ń��Zm�I���j42`���W�Y��c�D1��_��-����D�w���|㟥lS�2�4�B���a"
�OR��z#2���(Klq�h\X�*I��_-�4V�.��7&޹kxp�����1��*{cG�I�	0��ݻ�
�q���M�e�O>Y��c��
O���*Eu�DmO[,���	�f<�a�#$�K�0w �>�s�	�6�W�X�����6�����b%���֢Bۇ�ߕ"l?Y�k�Z��&��|�l�
��!��\I�8�����
�|��`�&��1���1�P�/��IK)����){@'ZY�hv�&��g�
@6`�	wE�&yI���IJ9D�I=A���b̚�|�/����H���u<��R	禓���̘*���Y.�F�E���vP�ߡ��<�ݓg�Z�E��=tL�T�"&ǣ2=��"��ǾG
GL `D݋g�9��X�F��Me������
8�~ErnE�F�*�Mlu|BWY�Bv���i��J~{��^*/m��*X\�wt��˥e���R,k��T��$�ӈ�� �t�R��6j����<ڭ�'������E6���ZhP��q;��q>D���@&� ��찇��NQz�^�~y�
��@^,,�Q��`q�q__X(.l�{^��/�/T8 �c�#*b�i����&�O���a�S�	�l"y�$�&̲D�s7P�u��
=j\.Qܑ?�҆���|r���z�4�ʻ�}��ǃ��u�fůs���fB�Q���B���Ev^M9�4�$?��8<�"<.��L��3�j��L(L5��FV��w߽wpf.p©��M�n�c^��8(Uν>�n�.K�e���y�@��{SF׆�{�`�|���73���7K��ݒ�pȕHd��Q"�p�(@dY��T
c�T�YKKJ�+�V�O�wd�C$Zѧ�tH��ο����n� ���w��?�&i��G,���
蛙�������|шD�>y��A�-@K��#��L����җ|sĩ�i@3@g�M��/<�X��6t��\��_���e���y�̺�q�*�������+j�/������2�����<y?�1!�Ak(���+����݅b�������	��K�Ev��_��X���V�!���{Q�:�_���׍��u�{Zf��u�>�+&�Z=�9s��{�]	F�l�Ǝp7�@��Ŭ�7G��/Ð"�^9M��4%?�}e�%C�i*�fFi�i�&8{L�?�p���G[m�����Xګ`d�l�'k��&���cb5n����cd`A0g�	-������X
R��Y�<��z�ŽU-���̞w�'�
v�8�
j�BX���V�����>�ג�k5`Y�TT�j���,O�Ƨ.
�f�ء�6;*;��Z�dNywM���"��0ԈKՒ4D=#���eL�p�E�H�6_�-�8��(�u��wʫ���%S���$��#0��z�ޓ���d%NQ��o�c�[:��@~ƹOq���S>P����䬕�}Ǐ�{�"�f+�wm�3;�a�8Z�x����
9�a>�n
���
f�|��}�X���<C�;�>�ϓѸ?G�c�"[yg�����g�Y�Q�@z䛒��K=�"�aU5v�:t��o�p
��I+<I~��}���*���2�E�$�Ď�K��ڿmO�l(4��{��_ծ8��L^�6�i��4��K/���Œm��9]��e`T�%*��������~�?"bH�)Ԣhr9�>���'���	/N����AO٠#HzK/� �]^z� 1Q�8��0�)�]��h"� ��+�_Ta�U8�i�cm<����ǥe�}�d���@ų���Ac`h9�NQ�S&�ݫ�M���XK���X�~�����JЃ͠�X��)��=Pԯu<�u�LU���A���i>M�7�:u��&�e�V�b�{��u+9���de�n���W���jdS���X	6>�A8ozt�+�$�5�Fv��_��iN�&,�����>�V�2��
���7>��#_f�
0Z�Ҭ�`>�&$+H
кe���H�!oڇ����և�h���N�+?����]����¿�0Ck~��\�,���������?0evg�φ����
�cuH��`�s$%��C_�V���@D��b��Q���R���Uͫ�YA��$|E���{Z|u���a�ޡU���_C�Sn�n"�k� ���ǥ�ES��ʇ�8��A<��vQ �#��\�W)WI0���#F`�w�i~m�!F���Q�R^�ȥ��H#�|ap�m� �#���gaH���F�A�>�
2}桫��j����>��M_d���d2���/��?�(�J�t5X�O�wN���n�
���r>-�|<��+��> ��z?=y
W~>����<����W䯀������\0�gj[�y��c~޷��CՀC��C��<�9O�E2VnK+�g�j�2*��j�~�y�\'oޱL+0+1{��iu�W7*�v���o�ܨ��U�j�Fc=��|LƦ�~�߮��e����˴P9i�̫���ˉ�~��d�
9y��r }�u���f�**�?��8��?'a"U�[/�͑zyU�@��ʙ�p��y=�K��.��۳�H+9�ې�3۽��R�NgQ l�]�}g+D�d���3E�
d�٠�C|=����"�猖���D�$����1���K��/%���c�io&5�O���p�F��r���r��re�+��9�Sn*���Y�L�I�D�#�#�@	fq �패����a�#���'��b��}=�I�\̮��'�
Z�h|,=��:=(��T"����)F`E�E��V��j��,���Q��|�FQ��_�/���a��|2�r�K�bIx�X��^��b����I�&��$J�t2(i��]�NE�Wؗ�,�ޥ���x�V��c�m�pF&+a�)
�����z؇d�=�>���>1F_9�=�!��~S��`�����;{�L��|c���pn|U�^;�-�.�߄�m���"��;�aX�(��Ȑ�1|Y�Yz�_-�^U��{����3�u��!��C+Hn9��d>�)Ȯ�˵�U�I�ͧ@E�$*}���*�~�� V���9�_��X��AW6��Я5�D�T��@BlE��M��+��Ք��d0X�v������mRf�Fu%�T��c^�*-q�)tS9岠G�)A�o�jYJ����}A�8�I}J�J�e��<Y�s�����\�����X&Z��?�kUY�Q2�*�?���q�C#�M}�;�x�~Z�T2#�h�n���o	��Q���E�^y =@'��\�]��ce}�溞z�F|�`ė��з)���芛����/�����%�g��@Y@�k�K��ӟ*
�E����{R"��p>�r(��Z`Y~Ir��Ximf�)~�U�(�0�$���(���@z)��p�_\zv�Ow�^�9;]�W��U����5�c(?	z���?ܶ�g��'�h��N�rG]u����a���!z�"�!�`4y��p
�A72E{�\G9 �T2	f��t�B��IQ�
W���sxn�R��P>�#G����\(:�4Q�S�R
��7�~�F��9�����r����@ ��:b�Q&e�P�3��R�N�ZD�%&J ��~�2�{�@1H��r�X��/�SV�18c����Y�Ϸ����w�5��m��4�����y�� �/T�4"9�	|�O��"u(�M�(�֍�nb.e1�"���r%��	�ӆ���ڠg��t� }*�ݶ7�DH��B�lg�]��rt9m72��Z�.��T�6ku��u�N������^�=���Œ�B��a�F�_�l���cY����@2n6J
�Ea� �(z��6���i��d0[\����Ioھ�fЅ�<����j���W��}�q�G��9�aM�\WWr�!���(�^�k���=s��F��-멜�jH ��NQ���k��p�è�],/�?��nM��b=�Z��dy׻�p�Q�/{B5T�)�~�+�������0�c�ы�[�p��kM��[��J%����~uD.7Jwuw��:�l���{��ٻ<��X�rf��qU���bÆ�f��fkL��v�[����R�^U��O
���[>p=�[�amEeĉ�u�B=\��,�UX�簙ŀ�b\CӴq��<�a��23'Z����@�cA��"�H��Qj��H}g{�;k�����*Sp�
g���Y&���3����֚������J��K�V~c}l�w�]�O���h���p�h�}Rm9������x�q��fQ4���j��sD��,/�yQ�e�H@
���ʋ�u_@�WaJ��M9j1�2R_%�F�j$��l�g��P� 1���l#�L�щ��t�JA�8�g��,:�F�ջ����-�
�&
��|Q�5Jp��l兡��Ep�d,��$c� Η��Q~�(�����QOtu��1WJ~ɲ�1��dSʨ�H{�pTWؘ~I~|K,y�x�D��[C�K�.��.y��?ґ
��}� ��i(�v
�h{�R@�[u1)�s�"�>�� 倢#Ҥ��Za����͍�t��a[;Ogxl����Ll��{�]W&�#3�l�����w��G��O܏�z���a�5xs�bV�3�w�g�ug��=N~%8w��o���%q���1c>(G�3��J&�i�J��t�X2�E�4}��	{ѯ���D�VV��"���o�N��`4���~[�b���1BM%�CvL|"0�-��m�}Fq$Y"��;(:j�ш-��P=4]W�	im+�w�ԀvZ9�Z���ی|d涋���]v�8Uz�xc����]�N�n�Sz묝�-'<S����hC5�j<Ҕ������	<��X�*��]����r��j;sjQ��Sp��{�~5�7���������A�ǀf
f��
|�:�54=hGq���A�%�xIl�w�J�`ޔ�Pv�,��K�7�E��oA��������瑽o)�n��6u�,T~x���.��{�>{=��.t������(F������~>WZ�Y��fu3 �����i7�Q�K���T��
�h2
SF}R&�U���*�0����,	6�1*a��p������2Հ���:��:�A/��J\���`�����`�A�I��_/�q�ZΤ��oޒ�W��z������]����aГ�2KV�@o��/��,h�Z�[��8��F�CwЗ�<�����O~��p���z���7Q3�;��{��a��N�
�j�i�Z�C��1�j��v���WqӰ^�@ub��w���+#!δƮ2��_Y��~�t�$ّI�)�s�";�g�Z�A���Ie���ߔ���Z��=F���a�V�;vk��u��v�f��e��[���ϳ��}�{���X�O��V���`^B5�	�����5յvv�NN�y�J���>���)�M�`h�3�ͮ��sw�����׈�sR����7mKWl�Xu���8wN�Y�o����k׬?��޲<�;Y��(6.x&��U�8����ǹՓ��9�G��̯�/��!��?��C#��F�l�ndB]�]�y����u?��y;��x��m/1HB�
D_���A//Q!�;t�B�!�Ll���
1�q]e������e%]���/��+�
�8{k:|�K��V�U�Y�3i�$���a�m�b�A���l�]�V��j�oin���ݮr�.xIA�-��>�9X�h�J����f�3�U��Va�����1s�8�ٗ7R��mD��C�1�/Th��&���Dc5��[O���`�L�o�F�E�
�&_ug�K��y��%�:jz�%!W`׌��O�t�\�hԆMKMgZ"��
H{<ܲh���䂥3BNOsim�M�6W�˂͢oab��x�+@��]�&m
6����b��Z��ؑʩ�������;�G�_^��W�"Z-�F��E�/�.�[X�Ge��#^e�Y3,1h@$N�E `���u�:�i��4jA���y	:�
~�%���|8@�0mLtJ<����,�a �Z��Z�Qx7Y�fK��'�_�6��=�i��V;h�
���vo�8?i�;ZWd��u�.�;9 _�H@���X~��w��+*&�V݄�0����Ƴ�G�3y�&��|�����fsGj�lO��8�vN����_��Z�?��dy1������BK��:��87����+��UZf{R[$��Ґ��&w(T��5!�����=��.M�dnEk2�M�=2�������M��t,u�������E��F�q7�-�_���	���h��᢯��!���ZE�S�Q=��w�"���6�x���o�גyyQ�;�����aZ@dԋ�c�?ڭ%�<�%]C��^�%=Dhtw��2}O�g�����+a����9g�5ԸA~i�j�]���i�Xc�Ǵ�Xm��ŕ�c-��
kU�����¢�HQ���.aQ��i�Ӎ��.�nz
~L�C������}S������Paa��#Tf-��V5K-�=��?����QU�qx������l��#_X��,��U{/�~|<�k��J&-\7+�gC��ۭ��֤IoMN/�t[S7g�q�M�>�i�j�Q����?�iځu��o'?<]�~��d�l���p@����`��K�ys�MI8�p��j���
�2�2 �A8_��;�ͪKp�A�u|Q�_���_�n�Ng���)!(��N��iU~�[�^��T	V�mCg��-V���祯�̌���$e�E�z� �h΁���v@�ba��p�(��[�Ӣ���~^�՘�)��8oy�#�k��m�>-��<n�~�"5
>��
�����`,�g�0�}�`���O��1k(O1�F�N��/�2���+l�ESs����_��*3	��- D��[�H�
|$>�h��^���zN
�R �%� x�N!�+ސ�_SR���C�Ap��4X�e��tf��+XO\7��뮋/F�ä�hZ�,����:o��EJ���R�b[���hX`l�� �@��6�)��?��l�lG���z��0=,�E��l�#;��B�cY�[�7�?�6��s��>��9=����1���,�	���?䟃"z��s��`<�h\������Ȥ��?,�/gyLI��h�k��������h��6�ҋ��;��^׮}|���GioH'a��n��C���ҧvѻ���KN�u�����u9/�m��Br��h��S�����ڱ��t���b9���y�97�e�4��O�1�
�ĺb�.y�p����vY�&�k�[�j��_8��ӟ�籺��\$�����%i�2NC;q��*O��<$����~J>o�Iz�wm"8#�e"���L�
�:R�4p�E�\t�#����)_�����/�9�^�\�-��}�\��_���r9*G��B��pH~}>���jƊO�f/a�A���l�}ع0�3��wW��r�KDoSB﹄E�;N#iQ"�H���������܅ :��3�3#^�b��Z�=.*�t�7
/�l�N3�/]��#�Ԋ�����Yo�������d�/���2'a-�r�a|�ƙ�p�g+�}C��2ٌ,��KK��K<���]`�m�f�k��Z�̱��&ˆ-�NZ��hn�;������]�-_T���Dך�N�jڢ��������n����NO]�eOȽ�P4�]��}i�CS]��I_%VuY[	��4d�oD:9a�*�X����P}	�3��FU�.
����!n��S`9^ik��3XWG	��sJ�Ayx�4͢}}4�WN��Ik{��+B�6c����[���z=k�K���L�w|���c�\k)��[�����#��^�
'�?�'����xP:̚wky�ݺ^t�Z&�gX�^��Z<4�\k�r|�Ur�H�`��4͇��>�pk�lw�*iB�U����
~�u��㪗K�:�_�m-\b��l@jG�C��1`�Y�����*IbQԟ ��X=��G��,�=�i�[:�[Y�3�
fȏ���g��Y����\���.۸����EC铞���|;�� FS[�Z|Q�Ё>	��Y�`�-tSkESI]��S�q
`�k:��/�mդ���7�);p��s�k~&�*�.(�O^ް�o���P�T�Q�1j�}l�~e6�w댂N�è�ZU�@����N�fIb��b0�SB�4��T�V���q5H������`9�;Xed$i�8p3!3@7��f�%�St��3�����w(�<�K0�Pp`�3V
��2���zO�.==��pF�
^���NA�_�@Y�ͨ=C$�QU簰��0�J�Xf'��
2ܪ
ѝ�jg7��]��Y�`B��ّ�o�~��S��+W���cy]ݬ���E��X,�NO����3a���^�����A���P�h�,�|ы�Ζ���b����
�h3�����\�(`	Z����?J/�\rh;v�bz�rX	�+}.��w}��H�7�1��u+���2�"Itҁ(�6F�'Fݲ�,�tnʒT�`u�,.���Zb�z��Z��p�8O��è������{�v�ch���iAs33+Q9�yA���f0�*�!9�*y��`䧮x{�T�h�a|�����)r�(��h.��77���5K�U�?�?+��*x+�1���/�/5�a_Y�>��7f�*ojB�(���%�&�4H��� x*L�T��B<��q����J7����;x��Ē��B1u9�hԏ���0��P7����@š!O��v���)��c?���p��Y"��h��#^��ކV�!ю��@JI�+��h��
X�jȏ3n�A�V�p���Z�C�/��LU�:4�q�aE�aa. `�M���1�8�@���
�a�)�p#`�DIq�hފ�����ո>I��P���!`6���N$Or[�F�Y��-�a�Mz-�J�RƤsjh�6��4��2@ =?��4
y��i�o�O.6��&�@��ƪ��8
g/��"�*,v�h��_�.�@k�u��-X�+v�&��N����8,s{Y����k���UCӂ�����v#���tᬘ�Vf����(:fi �46/9�����-e�h�t�GS&T�#h����*zD��l�B��J@���]���BZG�z���ղ��2Q�\g�9��Fc��6i�,
�2�F���V;䝎�+�	�(��
���S�@�VL)�ݛ�%�NV�
�:a���E���(B�?M�����'8��iѪ�p|G��A����5A{�z�```]wxB���a��U��&$n�unw�/�E��!�l�t�g�6�tF���^���`r��� ΀vM����s��²=j_��/ʷ�NS��\������ֶ���B�rgU��X4��9��m�_C{������3	�Sj�Қ=&�@�
h(6UCZ�E���J�`p��j&=�`�Z��JBsŌ� 	�aLfɤe��e����2�[��4_�6���{�A\�qڊ�
%�	k^�q��TUJ��j����Z��l��pU�Hݖ�ym��ĠWO�Y\jY`��B����x�q�z�0`�4?������1F��Q���K���n�EF��6�Ȏz2zK�����g,z�B�y|�Dk`t���鳲��T�9
v��C�h�
�h��nB��Ӻi~��l/�t�kc�k�6�x֮r(r��X�c�7�L)��D���ElP���{��W(@�*��M1G<n�I��Dz�@y�]E�R���U�l��ct(��,�P��X�
/�� �|���;�a�P_EF�VP�a�ae+!4�n�sE���Zl^���a������BAF\w�ER^PE��֯��x��?Фg=�M׬K�N�9���}h���wO*��%3&w4G�=��#�|%g�������e�pч�߶�C0�7��7�7}�\����B��u�J?z�5)�l��}

���2։����4��~��r�T��s'Gj=��{���!��-�[���;J+T��8�4���a�(�	E�=��n\4���SX&��w��T��6=�ӑ�������Yvo���욲ڢ��?���������y�<��Fs��X�ޫ��p�<o6�,3�>�3Q_\Uܶ��eIsP(���p�[Y�m�\zip�G>�6o|��v��ݫ�ȃx���Hwx�IJ�Q$�*c�|�ZBSʳr����_�	��t���B[��Q́����F��&��F��D�Ǧ���ݵ>�F�F^n�4Ļ���H��dZg03�����LE��-6tmYQ�y��[���n��[uZ�]�k�]������O-�\J�XwP4�Q��g�8�vi"3��b����N��~S��Q��K.���B.S(W�����b�
��d'~L��Y��R4@�lm$�����/����kmȕ�X�_51�
i���sQ�����u ��Pf���������`�>y�It��/�&N��K4���G��K�� �a��t�=��K��2��A≫
���l�6��Q����K'�?���
�ݛ�R:!+<y=C�HIޔ��-}P&��{�&�Z��{�aV� ꒡p(�j��쎒�,7[��K�8K��J�-�UY�̢̧�=���b�WJK��U�3�~�cD�/�fO�~ԉW�aj[A
+8�-$1�,q��'�3�A�#��	�<��a�#��Φ��Χ�ܶDـ��Y~�h��yu���&����a��?�e3(A'A��Z��qP�N��$��n�6Q�#�n������,�t:3��aM�7���,�U��Y�ut�l���������Q��x\��GF�HmI�cԡN��IC|`�a"�3��꟔_~��ק��l�A4_��˗
܎)f���[*,�o��C'o8��q��	�M���}�����ѵ�~�ʿv�
o�8^��q�g������"b�P�`�q)զ]�z0s�o���ؖD�\���3'��`�P������‚�p8���T?�æ����"���n%�����W���bPI��%���b���zB���7%I��/���ĕ㓑5�M��)k�S�h�ˍ
��1)T'���Iu!�؀K��N>t�³�BGw���$Iz�5��08�;6
o��b��-��b!�B�6�� uٳϢ��)
�)�e�g���K�Y@��\͍4�VB���}��f�$��9�z��x+C�#�…{
�i������<�A���ǜ�J=żT�g�յ4�k�B�(g�j�t7Lp�:�d<È��So^�,��齺��S
v�5k�u&sQ����9Q�c��s�F�l��ǜ��-�	�EЈ���`s5�Dr�Yu����o{���wi�g�����a��m��j
`��I���hf܄v�SWzM?�6�YNB�&C�m�
����@S���Y:�h�k�]һ 0��b_c�␾�_]����|Ik�:�dMZ��#�kv:�##^55�ZO]��ƬN�gc�D��#���5XJx��b<VDz/ql��v�:�Nk�(�>[�ZBPCcH�TT� 9F�Xe�*:��~g��b��m�Q(�-��D�6n�]]}�o�
�#�˧�Q������A������?�����W&��M�d8��qW�������а�cۼIS�@�.js�1����/����1����������
��9�l\>�$��6��e��b��/_�S�f��'�{n�,8>;�l�����O��0�0-q�`@�6��m5
zԡ���wգ��2���ӝ�X㬞�V�K�u�y�cRT��9��|�b��$�O�m���k��Ǥ�%�̣��bgD�ܣ/<�/��_ʷ�_}�~P�D�x5�(�߿|��o��m��C�٫��g��ߤ�俾�
�F~VY�C��N$�m�k/4U9�'(h, 6�q�p��i�ĢU,�i8hx�k#��9�dwz-�]�|V�ٲY>��rI�@�ڒ���\0׷�˷�D]�}JNJ9���W.h���,cи���	�H��%,g5<R���آ�t�p���,G-�޽c�5�'��Z���)��>���Px� j��̭�fvU\�hH[��m�\h��5��՘�;;9�i�6_�Q��}֢��c&���;ڢ���1��9-}>�W��Ab�
�.c)�In%�UD���>��,�/h�021�:�AJ1{+��������[�{��q��`�)���~�jo��cG����j��1iL�	�b�*�i�dS!2}���5c�����a2�Z��l��d��iˊ9KqsT��ɴ�;;��afT��U>���%�+k��b���GY���jQ��,VC�j)�[eP�����G<����\�x�՞[�]�jt=�~'}�����6*�#A�8����ϭT�2�
�X���bK��p��D�Z�(�����׷���e�!�?�����x�2�K-_ȥ� �5‚���Ap���~Uj�,{��?���?�Z/���g�o�~�ڒ�����[
"m�'N:����L�a:����h�x�>�,j�Q����
�8�;Ѡ;�_�+B��U�����۴�}���K�Pkj6u���O{�{�i�I=
�?��s~����^�X����@����,h*�*#���Q԰��Q��3aXHp)Brk�$,1J=�$�����_ߥ9���$�t�0��us0�(L�L>��(�U�3'�)˲��X�|bk�{.�$�#��{��b�*��M
3R*���V��.+��r?Q~{���3F���O��]��j\��x�	�_�b}�*JpPh���=�->"�WT������>��#��БZ: a�^�a"�/�9��$����3yɘH�y����❕�;�/)��������a��Pp-��YVt�E�z�����k;K�KC�m�?���9��i�N_u"��iS���"b��Pɦ��˿	��w:�W(x�7��(c�غ��D��d��b
Q�"!�2��4�:��n�H��%Ux;�R<�4�~�:w�C��������r\3��������2;^q���]��9�;�ʉ��4�q���6{��;���������-g����*����{���t�G�w�GUe��{�{�7�f��'3���N���zh�w	 ahb��(Qv,(�Y�ZP��ς����� s���L�t?��?0���}��s�9�eq�r��>��rt<�gn)�Ȼ=!^�?TG/�J�鹠b��{5ق&�:"@�vd_Ү�C���i�I��M��@%����})6��~Z�s��yi��
�&��zåU���C�C��-F����
���uMΜ�|�:��AY���A)j!�ff���íYKl���dD��x��y8��%
�,�̓��Tj1E�xB!�D?A���Ax'�?���ą�h≩}�7��5[���X	����� ^n�T�?��A��M�����JY��δ��
rx5Ͽ9l�R'�5�����Ӹ,�\0���b�<��0J���$�0�6tϥ�Ly���+��@��۷���!�A'���+>A/����;w��S��@ʇ*���]N���r J=�R��ҵ�Ԟg�u�H(-�]�R���R�$l^����}��{���n�"<̩'��T]���Gh=�:6�'cğ0J��1�HC1��T��O�k��0�q�)�}F?H}wÊہ�
�4i؟�q�O�m�'���ێj��%#��=k3:��)%���ї�¾�袺�s�ql&�{��d��ܑ�xMJf�W8�O�
	��
%E��T
��O�'%�_�I�h�N��$t�Ϛ"������58>��s�dO2~�$��3џ�~�烌V�JLL��L�dR��Jj�ˡ\����䰼�N1=f21]8��GЋ���A���R�yã�[f��
��j�S�G����Z3GZ ]����&�D��� �g`6Ko��$XL��	����ZU�}xRy$��f��s�w�,��J���6�ؐ�R(���K |�F��K�dU����X�:4��r��i�8���Je�~Y�h���O!y�΢��R>�z�Vt��UG��V���w�<�����0v��&���7TG����8����Vl����Ƣ!;�^�8O�W/�&H#LD90((ѓ���?
�a��)A�m�!�L<|ئ���%\��ÌL4⏕`n�?`�������V�Wk���h��b�+i�Ś��b�%8t�i���5���@�/th��$�pK�套��s�����G�X����h%��bɻ�b�/u�5K:����`��Ěc�bֈ^�:Mžr�ݹ��׶gY5e�\pA:K#xs"��N�t;�f
d����B�C	3�v���Dk��/���U��1��ղ9GsX-B�����C<��27ǽ�� �M�.E�guL�͋\y��Y6��{�Zbu��y���E�5%���.wA�P3}�S�nc�e����z�5�2�QYͫx`�բ*'/Η���C�i�~��E�'`ciE�*������&9��ҞKA��#��
�\���:+/�c)q!�r�^=�{�p�n7�\ݱdq;������z������kڗ,\�Ր9�N.�N�[�EZ4��w^/<4�z29愘�+GU�=��0R=��9��#}�^�)t�r�����grt:��".����^Q~;���3�ʪr�mNEE�@~��}P�f\t�z���Mբ�I�`/81iS���N��M�PV�v�<_aO�6)��h��N�v�9dy�X�O�JA�1�`S�N�F�0d
���7�����`z�$�
8g0:�a�ї
���Z\f0<\o�����qg�~1�?8`|�l�"�[��nb�1 �Mys���B�'F~���Zb�vGN���u_f�͉�k�E�/���˚�>����6��D٘����HN �T1P>G��O��6g��\��=������WNe��qo�t#u�z�:J�O���'�)�%��A]4Q�WC���MR�&
�$%�j��¢
�7�Hl�%�Gm�P�P�F� ���@9sBM�\���+�,u�`4c�NZ#�,�U̥����.a�L��Q<4I&ũ1��@��aWN�]��P9�h�^^�=T0}�\��$y����'�Ѿ�Y!�aE�D��*��n�Ĉ\n�E���*���e����S���4Op����D��1���K��r�2B��}���qj���1�Ʀ/T���
7�8K�YY&�駵��l�W�S�J9�=�4OG�:�ٝf+\����*Z8�N�ʢ�g^�@��$�|%�-ϦWH�M��VLR:/Q�J�h{8�s*dX�J�5`��j�[p��k��&UY��b���d`l�&��L�S�Tr��@���t�ڞ�)�{i�E���ڲ��Z�w�:��0Th���	&�!̀\��V`)��;^��L1�C�|]ߢ����r.-��8��e�u�J�|�W>R���N��r �8x�A���#��b�+�<���SfL�M�6�e-��
!��d#_��Ԛ�Q&��q����qPB�k����A��(#Zq�Ɨ!���Jp��l"�1ײ�kI�ZV��p@�?-�=6�S��s���,��e:3���eZ5���R9+7�N�9��In�ۇםX��gCSٮ嫳lmu�
��,�3��m�9z��O�PEǰ�B^��r�������F&B^m�c� �r�4�s�ͅj�\�g1H9T1rFBC�Z��0JPh��w����an��]b�յ�P5��ނ�G���n��W��g��k�uʥC��?■�ͮ��|��@�-^%;��x>�@5e�yA�U�9��54mƄ�Wbp�\!,�G��hD"��	3!�
鄛HT\�6H8�`9L�E5t�V�\�)���{`��{����
ꔻ�@`N�����{��9�瞞ݷ�v5�ٛ:W�nY�u?={���%�1�4*ve\{z�?gm��e&��b+hP��9B��{�
O�Q,m��ճ�U[`l�\5zH�ṽu�=���`��zr�������X
~�UӚ
�gv�^5y�#�Q(2'}CW��Ks륊�O6��7�Րo6k��C��D��&PS���<�J�N��,\ՅDe�PZC1$ӡ� *r���1ѽ�c�ȅOQe�4}�TB��%"�9:���v̀��OHn! ˆ�"B]b���	��PIH'h�$tl$gup;0y�\#��0�¸iI�q�Z����!����-z9$Ey�(�WȬi�����*/c�[4��\6����P��u𹚫��H53�g=>㯳�X�N�o�Q�5���\�8<��O�n�����}�թN��h
f ft+x��2�����mS4���8�vו2�
)ѻ����$:(��Z�1��F������bpB�2k��Yc�ÐQ+Ꮏ�n�#�4w��ݩ�/��+�kO�T=�#�ʶN��=;��3��3�Q�
@&.֯ɗ/�oD�{����L��=a���M�M=I�����;�eχ,'���d<�FO�c�J��wy^��@��L�{��i׼���ɥa��r�q�SY��<�.��'\�J2���+��]>(E��5�^B�K�1��g��Հ�bAt������p��7o�C/�Ҳ�j8�Q��Q��ޢ>”�Y�nPj.����$Qlw�����[�Dž@>����|���rF�R�=�v�?$k�sH
�L�k꿿��
�N	�\|D g������C ]<xF�L��_�=�	�g�L/ۅGI��^�TGd�e!�ɐ�2e���Ӻu�}��9�qt�t�;�GT�{����Z�DIA���I�ɓ��'�n���L�S���h��|�	_D_1 ���FO,*������4&0�4�	�aDr
�g�ส����غ��7��eS�pW-���5���_�ԧ���m0�j\�rM+9�3ZG5mj!&\9�m�ޡ�xK�X��E{��W,�����҂*��s��1�\~�m~e�-K�q�ޥsV�7�]�����E��,�/p���ț������g��K��C����S���u߮���׿�{]��^�>�ݭ�~wS$cw��T<б�|�"QDRMc����jI�d*Y�N5����~w��Q�Hպ�A�k�3��`�$0	��t1B�(_�%�Z��U�h*\��Tz�R׋Py��Rя�9�h����`A����s�d�Ӭb ��ဟRX|�
N�j��hZ��; �'���h0{*�A��Z+�ehȦ��`�<����r�����^P����Hm˄V���}��T��WkO��' �#gm��k�O���W.���Q���ZQ����{�p������=4A6
Ҙ‹B�3?��#9���Db%>O�Cxu�'@<�����>W�8���-{�j��>���9أW�9�.Yz&�o����m�C}�s�1��e5�\Z<rI�)u+�Z�ǹ�/���M�7��/o���Թ���}蹡���Ѱn��YV
[3�ܖ����L�����\�����[ 
�/�)UC���2�x���&�#fz�QJŽ�m`ݲ�k燚G�>|犩��]�C�-`���.��*����
�4�5��K��}_.]|[NIw��z�������d��6?rp����%�K끼5�kq��Ag�Z �3�g!B��E	��R�Ǖ�>C�l)I���]{�k�m;���sZ���=-�C��s�[����֯{l���|~󪧭�[�OV�ƀ�#@��I�k�<��I�{wKk�[�V�?Z�����E?��oxtϥ��A�� E?P��R�>
Tk	�l�R"7(�/��C��m�Ue�@$��8��} ��,�	a�[ҳxq�^�Q:�ZRP��j�Vu�t��%n�2�f9��ر]7�~,�U�����n�6c�6:�g���ѫ����+-.?�M�&��fv߱����s#zV�wq:꙱m۫۷��c$_�g)��O&�&�\@�b�d�3�4�n�'B�X̡�<i �!�h%�D�ĩY.�St A��8��Mt���x�+8�����P3��M3�� '�
�F�<�,�o���w���R����dž����Wd)����+L����Ӥ����>����1�R�;�q�"��LN�,`/m�O䔰m�8���F0�V���\6&�������yhM&��t�3J0��`���g�����@���5��zzX�—#�Ն1�o�ԠRڮ�T�}�V*�y���p-����"D$ן2�pԓ1 �8��G����0��7O��y#��xh��(���������>
��M�s�wL��iw��:&m�H����)�yi�*F)�I�$q�����K��wN^�~2��I�����6JU`>�u���<����I{�2��Yp���)\֤M}��$/p��3�7��`r�$����k�㹗8AȬ�UP��L`��}�QLda��~��TW�l�i	�f�Gџ0Q"�쉠
E��oE�V���-ȃ�Ǘ�1I`�|�؁����%Aݶ�����8���C���D�À��H�R��.L4I���f��N�H�Ry����K3�{>0P5m��h��9v��y����ռ��%��M��|Vεz0�cQ[}��У��cvg��-�����3���盲��^Y��)��Vؿ�娢V�ԳV��B��a�\��Α���.ї-�&<���_6��0�¡��0z�̈���B�@�}
��0�g�I=�FS]�+(��]`��\x�����\J��
K<�WRC�Q�4j:�s�ۨ�ۨ�T/�.�Ez����Gq3���h�9�< Fv��Ķ7a&�8�P����3���(���e�ӊ;8�sd���g$�"ٔ�0&FD��2@�l��D�i�az��s�B�x�_�o�:�@	B
Z�IH�\�V��Jf9
�J����\!��2ٙ/��:T��٠Tf6ˤ�v�jUȡ���f3T��F������ �����(��KZN>��R�q�bN3�8��ʔ�ʗ5
f	�j�A3]�֚�@�Z��Oj�M$%��RN
�Y���[�w��z�t��e�r�Z������l�JYV�����9��q*� �N&[��5���L��[2<2?��K����l�*�}*�g?je܏�Id���?r
��`�^1�}/U�߃wyE�|k4~N�T��~��Wr�Z�@
�څ_(�Z���V���T�%��ZZ#�X�>u㲻�^Eo2˽�T����'��v�����	<Ր�*`��c�N-FK�+���P���
��W�A�v4?JScF�'�c�7���3 ���SR��Ӏ�\��Q>j2;�ⱳ�I�ܯ3s:�,([.�edW��=s
~��=; �!F�Kl*`D��ǯ���P 1�I����𿐁�I����
�Ș,a�8���p�c3X)W�W�`:�5KQy��7��j$uE��|p�M�5*`�l�h��$��J�6�R/#�������4*�8B��ݺ�ؖ���WX.m)R3�fa�-�v4�+�JP�<�g(b�v��#l.�؄�+�a���攀��³�eGw_���HXc,�@�u���-���ѫs:�f��p{����(nX8fQ����:����h�o�6���֏E��:�~�D|%�5V'���8��jK�mڿ/�ѐ�K'��oB�vNg!d��K�uK��,`�靿�����|��Zh�����Q��f$�v�,�>��%F������v��ځ���'�C7�8-6��F�
�@���6��a�Y9�_��,G�o���Чͳ%�{#Q�kA6>��oh���ͻ�㥌��d�����͟���_G����蓌���/t�k`�R�Ӎ)
��|:2r	�⯿s<�ʖ����5E躉�]���]Z�m/x�Ɯ�����O�	X�R����\�r��o�yt�X�Q]��$��^����Ӎi���ܠ���*�nR� gf�5�/C�7A5(�1���������G��u@����|,J�$�4
�DI������ID�m��x��8=9��="�zc�����q2���wНv�ȅGZ�5�5��!��_�u��*�Zm�ߴN3^#�7$��Q��LZu%!^AI1)��91�C|G�D�M��߰A7Y݌:֨�n;VB�������NRS�q%y��o|�&5ز��g��t1��cL���0�o�1Cٍe��^w�>����½!6�jf4��K��	Gzi��d�ߴ���L]���/y �r�E��F�~ӛU�Q@�߉��`��1q��Uwb���\L(�bY�����%�)�
Z��Rlҿ��˪��0-Wi�UФ�I�S��+�_!���y���]����+���r�=`�'tv7{�������}��1���{\ǃ��$
��c�ϜZ��;
�;usg,�kv۸U��߻|�oz�r��PQ�w�Gb�����
���"]lɵ\��{h7���{�‡{8ֻo=`����#�vN���_�2}N��$�sSz̙Z	6t6��@f��n:6�i�!�T��$"�W8=�����(}�mZ�x}}5hK�ż�{�8P�޾7�yƾ7�^:�8,B����7l�{�8���O<�Ĥ��lt	�j��C`�)7�a�9��J��l��6C/��?4g�Z�+q�+�Ia���Ʌ��������q&�g����w���.���yE�Z�EW~q7������K&*�/��:�;,w��oܳ����eCk��5�7��n��u��g͵�&շ��7����ڱ�f�}����?��u���P��;�o>r;��N�}�z�t�Pu]C<֘���јs�Uۧ.����
��o bo���?�7�g�W�� ,I�$Z*�!N�|˲f<s&|헪��m�����:�?������^K���g<���CB]DSX�I*᪤�hs�9!?+K��_���_�%9����@�s
Nz��O|��j������ĕ�D�������A���i���������$���ڇ��~�>��z��Qtc���+���k����x>�7n�鸧��H1���L"�b�N65�|#.h��d
�`/�0�뉚�]R�>�[�K�����R;tHdNk�Vrh�*�<;?G��j3� d4���	ьi��1;����^C�g���&c�P��S��V�9y8xqcn���蒳�ѡϷ�]�j<B��Y+��<08Һu��%3\Nk��&�,�5��E���O>^���	�閪�8�����w<:ml튵ݳGV�t*�魏�7Ϛ�q0J����g�!�=B_Sb>7L�S���*�J�&�o#�'����q��&���]+F.O��	s��!����qLCDk�tK���||<Q����~J����%�� U�Z�+P�a�8�<5xz���y�μ���ե�6�d/�6���w�Xi�<t�ۥu��o��[��Z�/w��΢��%E�e��R�?���W�� �h\��z�SWJ�}e�@��Vf7��:xW���$7)�{t�֓�Et�xr�֓�t�ʓ�]d�̪��u�[)�'o���%�C��C��Rnj��_ރoI�rL�=e8�=gLN���;�������h�($Mj��Q��\�������19���z����:�)�t�^�=�QZ�	zpƽ9c����ɶ|Z��b��dY��T� j.��h7DJ���)��2j�F��O^��d8�P��
����7lLč���1I#n��5�peZ�����.PaӤ��f��[[��me��1�+�ًÍ-�'����ŭ���+!���]x���ds�k�J?���{ӻK���բ!ő�b8c�H�d}M-�9zTg4p�ӹdLd���5�,t`V~�O{��Vͺ-yR�%�-�jO�MfsZ��2v|�u,��e4�����O��X|����CGl�����ZA�z��ĿMV$ #C�. ��F��+�&��K����#Z��(Q�T��.�
����D��U�ΐ��?8���X�vP�s�;ֆC��nj��vZ}I�
5C�<wMW�4�ć�!'
�]�qJ!g��]��K�ה�G��J}�VV�>���4c�LzbU�[���)���3K�!w����Y�޶��o������X�q��¾���é���	�[�?�b(\�5�La�乖�/{�s�a��t���q�/�Rˀ�Ɠ���/�=����V�!疕��	�r�R�|��B�DP�xt���|߳eg)����V��A"#�^A����qF��$ڻ"��d���b&B��%�+�ձ�����a�6��U���{�����n�m0�Y�o��M}4�Ғ|�y|*������I{���6�b=�}
��6d1y�ݰ��=���s�/�}q���U�|gF���OS��1�
j~��;q/^��u� 5�eZ�XnK�Dk��c`LSU���xM��֔v)#(���&:�!��PU����Ԥ:��ˮ>�eKqGe��6(ABO3�cC~�QgTh&�*�F&��ak�[:�V#U�J���5.Ugp+*�¢�*���f����=�c(ך��W����1^��4���٠.Q�K�� w�ƐetC��<�(�a,��z�B��0�������V<[M��>CwUc:�y'܃i���9�}��^<� C��08C\�OPE��^1��sZ�R5��Hvn}}n6m����p�b1,	��P	��������؊����������A�1���e�Wv5�wǽ����#
��h�#/����_]�ps3:��������u�8��i�fٟ�>�0��[�v۶�D��Y�4���a�g
�"DR�9K�v���H�R�]�S�Pŷz�Jƛ�3�в
����?X§)�V�F���1�I��o���0O����%�eœh�yw����	x������A�;�2ބ���I�>��g�vz
�_�a�p����^�i5��ҕp}��ϛwJ�9���ˉ�lԔV�4��W5q��H�>.{�C[�|_B�>�N�=�^[��r����9�^5b�U�Ιv��J��ڂ�k�|�߰8��Ng��NJh��J����,�J��A��9���*��r��D��x��0s��{P�6_WF����j��pm8Ϛl#�)k��u?���!K�́�Г��
V�{=��ӓi�3a��3�	`�F�`v�i�n`�n7�<2n���7�un�h�C�"�$T/^B��dG�#�y�Yl޼r�U 5)� ����������嘭���C�/Y�Z��,�[,�r�ͱZ����h��XqE�~D�jŗ�=�k����q�W[Y�$9.��v1r�q�j�3�܈�m7�%���q\���b�r��2:�.�G�!�D�8��<��%r�ըר�i��^��`:�X����+�r:]�<c�r6� ��yi���䜂��?D��E;�x6��@K��Ih�u���϶��aں��q�V-���6u��U;����V�3���V��Z��������G�>E
�;B4�����1zb�_h
{b��#g�¼��p9�t�(��J��8!�RY'�%��saX{�D_�!"8�d����r50�.&ʷӾ�6��ې������9�p:��X�	�q�w�3Ϡ��h��u8�e�D0�7D{ s&B�yf��th�sȤ��'�7VT����
l�L������.�/!�”��.7����5��^����FV�=.H*�^W�R�֮,_�0.�iW�]��ee+�ܸ���&��w��o]M�P��{�(a�W���80�=���p���\�����qZkք�΁���w��3�V]��"�K��f��E����J���ne��*����k��T�7�*��>q{-��ȕ*��Ln�w��WX�r��.� �ҫ�.��z���=���b6���9b��X`-���Q�
�@�w�����?qm��Ep_���|#�KW�W�%eB�3µ{ҷ��e(�K@ږ��˃K{�[@ Ǹys0df		��Q�9��)��8��{!�����p笯k.�U}�>�}�kk�׳v�@�՗.�q٥W�&���o����E�3C^?C�?�G[��۷��={b<}��a��A�� ���ui���������p�(u����iW����2JM�_+��X	���^]��"�~ǡ@�)��<��MN=�B�ó�M-�L!�mL!]�}�c@���ж���\��%��:����%K��o�`���*�*�|3�*]I˰��@��uXK	{��(|I|�~�_� hq���%� A_&A%D̠ڍ��ޠ-hCxB>�Y����3�=��8�:Y�7bzS8?%,���S���/�ҋ^$(3H�ݝ��H�
��$��#�BL�*��f@��p��O ���UF����ٳ\��@ݟ����� ��e
�
E��H����q��uA�o=���S��g���DQ.����b�&.�{���f�׋�w	Z���%��0���.7�s�?��?���~���u�?s�Ȋ�	�'D�;F�F�����El��188:����UgFͯ_6�m�0c��YV7w�U֜��'70�6L6�rh��+F�Z�|T��~����815��5ipM��V���OKZ�۲s6���ž���b����D
��K�읁;���!�f
I5k�%��f�poZNK�$p�܉���7&�x8"~����}���3c@�qL4����GK2m�
<J~))��g�y�8s_�����#���g{�œ`.��ڨ�d����"J�ϐD��1��x1"".@�P��9�~����O����QO�mUP���h��P��O����
*4�V�}]�}���JV����7�l�˸{����B5���寷I�N���].�g����[h���`����/����]�����,�lr�ƨT˛k�2y�dB��H�㍰թ��rё��
j�[�c����	��eЍ�c|��I�O����!��E#�� )����Kx���2��_��$ϳ}�S>L��5��	T�N�y���#4��I���� <1�BD��,5X
a���y���$y�R��c����T��P��YL�єP�����Z�Wfj��z�A�3��*S��Us(�go����.K�Z�!���Jڊ&A� 0���%Έ��-B:�)NゝKg��u\6��߸~��-o��_��wSg�+��g��g�C�.�f�$����]H�x�G�h�c
�n���@d���V�`����2���]z��uܸV�J�h�s��UW���+�w��,W�D���}�n���O���Ӥ т�f�}́R�j5��Nͧ��y�O8�<lH�.�6�N;@{ ��È^x]8!�D�h"=�eN��2�3�x,>
I����$�,>�扵��pB��]41����+�R���KH���)'!G��,�~%!�z��}���< A���
 ��&�d!�t2�B�	��&Jd4�1Q���4y�A�I@6d=c��2��/c����~�{V̢4�������Wwv��Ñ@������|'�]_41�z�J������qKOtT����)��j$4�+���ӎ0�K��Q�1��sm|�~2���k����<L�*3�{ �̟��t<��$E�4�ou�ఇ�.T��k��@�/n�H�9��� ׇ���̙ـ޷�`x-�m�K�.�]g�àD�C���<��'�Ap-:���bxJ��qh-,�
��Z�̀f���h7��,��8�z�	b��ҸorL@p�G�}�`)B����0g�������w�f��h"j2G/��ܓW�KhFI+Oo,WԢ�!H�:��![l�pϠ�5{�Q��i2��m�^S�W\�׀�d���}ﲚ��-%?�I����.�g�+A(�>5�oZ�DnH�����g
1���,��:/X9c^��k4y�UzK<u���L?F�+�MK�k�\*J�bN�	fS����^�)���P+n�J�Ɓ5�j��q΁�� �'$Po��aȤ������@4�3F�0F|K�1s4AsA���H4/)�\�E�%�B}��cĹ�����
y��4O�ő���Zl6�������IQ"��r��c|Ւh�	���%PL6��;I�9!�
��%�6y��d�y�H;c�E�B�N�sw�W1�3C�I�p�oz^�tf&��Ȗ�
0��	�'�p5"���ϔ�M���bĈ+�̹)�i�;�M��~����6N��)yӜ#$���7������+����a���	(���gL&^o2�ypW%���0}��O��f�+љ$�Ȟ;`�P	��G\Nk�F�h\.���qp:u6�hġy�Pm��
J���*TY�V���qz6JU*����pg:�!�Ǥ���L�&���rʥ2�>�q�j�No6�y����u�4vg(�t����N')&]�tjJC!�S�F4�!�H!C3�Ą'$O={�b���j6i���A�9C�N��@������<Rb�l\��8M�*�A�R�2H�Y@ZA��-V=o��V��������C�n�3���,�v�0��56h
���@F�QX���uj�΢�r�*{v��*�=��
�&�G��[|�����-J���̥Vg��n\=ؐ]�m��#-�� �CA�0��
D���\ dz����RӨyx&�����Y�rHa��!�Cx]�9<��!��
)�Q��q-�*A��V�eЩ���s�B@�D�'��K�@Tм"���Bj��J����|]�jN��1|ʔ�JW]��N8�v����.˫����Td����@vqMMAn0n�=�9���nz݋I<�`��v͛���w����V,]��)��}nKu��:�&~�&Z[�ωV�S�c{��V��\�<	=����
��z��h�$¾l�J�4�y�ڪ��@]��!�j��cf�I�	�۱ᚢ |��t��9q�'+�,m.C�]�m+,A�m��3�Ҷ�R�{|$举��AL��1��xs�é	�Q�oxg��A
�FQ|4d2��Z�3���7O@<��q��BF_��x��E�	`P3� �C&��	\���E�����txa4s=&����L��g���TH�^!��B�y��s�'� Ẹ���B�IO��6H8pb�t
�(AD'���h!�Lv�<&Ap;0A�+Q��D�o��@�(��IyD:�h]�9����
��"!�Nl�|X��t��j���Q#��'�cD.������L���&o�n�6]�uɼѭp�B簄,ٲu�#�R�i�xk!���=7�Ⱦ+��Eք�=~�:�r`6�f��YK��>q�z�|jP���8uMn�˦{��n�2�z$aF/�K�17~��;��D�1c��A����2�=��|�ɪ��x��\T�>�m�:��V�����b̗����o�}Y��n��[�7��}_Yj/��c
�������7N\��v�u؆-5\�ƭ�I�~�ĩ�/��,H]>|xq"�v��JϠ��
|�.(D߼��*+��੧R�\���N�?��h�p��;�$�O�UU��Ӂz�Y��������&�7uj^�c`+)��4�������U��3ұ�sX&�:��t�q�{,8�q�d>�I�M�L]��Z��
�E�M��1�V���C9eV�H꙾r�J	XE�E
�֣o_��r�Uxv��|0�'�5�#G�T�O�|x\��.��P������ި�D�K�8�ć���GK��g�d,�Xo�3.A	�5 $@���k3�7_� ��c%ByN�;I�p�M����h��Z��UT�M6��;�$��=��=<�RI��R�5�c��X6IQ��!3�;*��j����
n^��JC��C���Y���z�A�H����El��E�z@.�Y!��ᩡl�I����%�����Y�@Գ2��+���^�����D*��ԿV"���h��2-0�e򽻴2.��tKUr�]�����U��т�@�@]��������b��ҿk�5���ԥ���-�:�TB�����
�nz��҈܄�
�n"������(E�.VX��䫋\I^X�+�PM2q��2$��E��)�2����(O\"�DO}Q���
���:Z��B�"g�[?�kDQ3[]����Ь�,e�R��*��7�jw킗��Ƥ�w��FF�P^A}AA=�pQdrע�ļ�ڲ��3�3<�KZ5(�p���iE�UeR�<�Y�PSy�Emֺ���فl�[�ոD:�F�]��\�%��t��e��=���겒����nEix�ܹ}���v�de"<���j��y��Ԙ'�VB	� +�ͤ��~p���c��2�D`J[����f����^��D�^b������zw'�V[1:k6������Q8�4�W��9ii{�t�s1p΁��WKZ���9�Z��ْZ�]v�>)�w��gys&�p߷W���7�z��0	��D{�s�a�tD�����]3jA��%<A:�'���b��*CS?�s�2��"�7�;��U��Q����_|��fڂ(J�Z��7<�S�^枮���l�_Ε �C�w�0��D��_�	�f�
�ė���q����.�40�:z�89zA�ы��.с� p�&M[Ԇ�4M ��@A�����0��e2e;q��e�e#駄��()	ܭ�e�'h:]9D��.��PNު��R��O:(̺�KW�����׽#gw�j�k7
��'�7^#����~MG]i����ׁVf���P�m�-~r�r�8���5-��rx5��*���l�Y�l�g��֯^@��=q�Mx�$eq��R��d�$p���r�~c���Ӫ�O��
K��\3L�sS
lɾɷ?��o[�^�
 c��R�d�Y��q�Eh?z?�	��M�-P>���������SVW-80�{��Wt�N�B�D���[�����|�D�`��-��
�BU��0�?1�D�ɠ�X�T�Fv�K�R�8�������|dO�2i�M�A�<�xaC<��2FI��ϑ�(����
�^?K�&p�\1m�G��^����^	u�4�98�r�l�P�DŽ�Bڜ�'�����Ȑ ��N����^;��L��h�]�D5#�47�2uպ�'�u}O�����/k�[Z�5�Vk��ֺ�Ys$Ԥ��q���L8�>9
6��ز�4�O�Iw��������I~�y��~4=�:"`h��0*� �6���4`��F��)b�r���#��!�f��"G#jS1�s2�_F8���t�r}������]Fs���u9��b�W�������&S���e!��n�%~����g�!��a�����?F�D��[�&����N��תM8�!�
!P�+�:lb�mV������̯�ֶ�s�Y���[�cD󂼊%t��H�@`������u*	za-�N2T_⾗���+��Z�R���>�Y-�{���=MA�<�ɭ���;�����S�;xށ��>\�23��[�'��4�'��͝y6�d��F�[Ha��,��rTH�*��OQW/J��UZ�<�֋�p�uB�L!�LH����Q�X��P���u�%!�]��D��kա�m["��)���\0$��R.w��`б�s�Z"e�bEVŸ�]�ӭ��(���8�&t���{�+s�^7{lyEN����K�5c�5�*���.J���`s�����Z�ϙmW�'|�������/w��;.��Ѯ�����x�`�m����i3._�#�����,�9�bn�Vw�~�6�(���b#0֟��d�D�0T�پ�0)�H�-^�L��*K��l�D?t�0̹�Ep�|��e,��u��O
�=���k�v�g8b#+�6��B��'G�|b�Lzp�ӓ�ʜ%���?����ϔ�O�����3�<?'����R@�F��;
K�9m�8�T�ȶ��M�bHq�S3��'_b�,l�ಹ��_a�R>��1d�~r������Q�|ϻ~���!*L�G�Z<�C-�%<
2ɴ�x��X�n��W��<{�;dmKQ�U�&!h9W!s�Dߣ7��#�w_@�'��|�Ļ����_�������o����P����F����>�K��*��5D"ђ��b2x8��@������
Yx
�">�!���~�S�&�����J��Z4O���>ˑ�!��ټ��;�֗�� eM�kd�#�+���M�O��#@
*�)���T���=/���9�N��W
�� 	����1ń��A�)����_���$7��"���>s�Z�̔����JS���rm��X�ē��`����;o�]5'�\��G] O�3`T�D����.ķҕ�'13��0#�n�CX��o���a�.&�
��aH%
�&
� )���!i�-{�`D6��P	�f�ӌ���xI��;RRw%cÆŒ�N�^^n[^Y��
��օ+p��[�����0-�XE=J0#�,��!�1@Q����8T���� <��OF��z$����ܗC��5��{<��=d��L�.Bl���9`iĿI��}���?��ӟ%��q���9��?���6Enj�#���z��Lx�C߀;���w��>���#~!�?؄~<!v���C���q�_&`��f}󆂭t~5��d&{ZpNM�Wd]��i�V\WB�Q��F��ID�$��#N�$���5L����]q�PXT�M�jV�DI�h��>�d�]�2t��x�9>��>]��rհ"�0|�f�ڜ�
��;
�۬�n��-{�w*EXP*sǎ�pj9�V�8��j�h�J��G�;�H[K�·���%�';VW9���h��J
���w�TO��oϢ��1�����Ҿ�vi�r�e/g���}}?�\cS[ڲڧ��ѭ�5���^s�Z��1��8x��<�w�L��+����J(?
9ul��^O�r�N�p|b�Z[��z���>3��N�]�3�L�5i�'O�݅���$����#럍�8��\�|�Տ,t�����'
z�������"`�Հ�4,�{K}��;?}͍��^g��e5r[<4�����L�Lu���B�	�Н/�8�ԭ�kG�V�$��ʗ�͒<��p�X֢c\�?SP{��z����mZ��hH���Z�x��*�Rkj�JZ��;o�R%U�YOV�V�*_�_?M��̺�v�vqR��c =8���0���j�Y�3��}B�-�Ӎ��a{��- ���VTD�8h�{�}�
e���9�$!��[N��;��#�g�V�[�eɲ$W�Ȓl�e٘bl��f�馛N���$@BO�@�R)��0�KB
�A�8�4�\��Kli���J�l��}����������̛7o�<Pف��*aOiaZ6�$H4x��ڱ��U���Q\�֭���NEr/��ރ�IKIz'�bA�h��m��X��*
ĺOH��FK�$���*��B���S���[�:�7m���4m��[�s���,.���_㸯;�K�*+}p���Lv%}���-��i45c-B{
����
wÏv_�
_���u|i$���L����u��q�(��?�����q5��D5Ss���r�
�@�A�Q�QG�����ԓ����k�i�]�!�Ll�.�?��1���t�8J�mv?�	�:�����b��k
h�"�MN�'���@@g~΋V8&#c�x�F�2i��&�9�� ��n
�{�I�O�^ø����:�W�NL~1e֟e���{R��h�5p��lJgO듙s���[ �}6�dւmj�ܥ�wo��/�#n������X@�W��BM?W�Fg�oչ�
i���T��+�0Hi�H��E�dW�{���GX ~̺d}�{���Y������gft��u��a��K����(�ǖ��=�<�vG�5���>�D�NO�Ŧt�^��'��`���H�T.M�ҀF���-'�
�=I$��ݨP�Wش�Y0V3V"�ར�����4h=sF�1\�U�	��l�?|�U��'EX^*��Փb�h�V�
|�(��S1�6�mZ�y|�^�v��'�`K�€�,,,�/�_>�_G�_��?���)e�gΌ������1�(�;��	�xϯ��Mϯ��}���Bh�*�����
���!��(�0�zO�ެG��vJJ<{cyK1�qA|��^t��@K9�#����72����e����|�:�?\}c��`�G�0%S	��в��O?���\0�=C}%7�6�
O�uL:{g���p�1`]��L��K��X��c���r��,��w�'c�AL�� �����/?d�$��{mX����3x���9O�C��&~���Ϝ�bϞ/N�	�����W
�{�C�{�m߾�7[5�Ƽs��O�?�ӧ�,\������x�]�!.�g��R�ښY�:*�d���oarrs�3[�{VE�y����>����v�[���ˡo��XM@Z!��
�+V�x���V�4Fx��an�wud<�����,�>8d��7�[���1���j�:pBZ�����<��p	�"�}��C�}���7���~��?��*�LamI�FP$��~��S���jˣ
)UJ�S�T_��塈2���#�<��MͧQ˨��BoDz;��{���1�"X��$G�݀��L=���.������	��[��q���Xi�����ԧ"���o4y^��ȵ�������>�~f�3��B5S��~VrnV
�����n��#��~0,���/�x��聞�?^ԙ�3�e�/�]����wuow�$3��gbj�����4�ר7�!�*�Fyj�gQ�;����9�?�2�~~�hў�������tO:�)��t�=�'݃���=�=��Cu�Y4$�[����:���,	t�BoE�Ԙ����LoHMe@��-5��,B�o;�{���q^̍,f4&��v�p��h�Ȼv)��"<��
�'�*�|�0Nز�0[�JnEE.W����
:��LD�.��D��8�ߵ?O���DP�I1����We�s��烏�8�ba���v���zig��������k6~���[~��΍�����q�D��>M���f��U��^OM8�R����u���6.x~���j��T�A��k����Mg�z�և�:j崉a�U�����3�iP�R��t��LU�xY���`�(��@|R��*���EDzgcg�@�
��'uA`�2+���,vЋ�ć/	D�t�U�wm���Kb��I"��et�'��&�d���{��b���D�r�RINf��$U`�>��[�2ThӌN�Յk��-��z�*�FO<����(��:s��X��v7b2u����Tt�\k�.��7�ǻt(���?���GC�߱7N9�5C�t����%��igC��̉g�S`/�@χ�U0>��`;lc�(��������|0��v0���:Җi#!5�a��
�*:���0,����O <R�|M���YJ���)llj*������S��nE�뇀`�O��Do�k��ͨC�b
��+��z%089�fx���1Æi��a�P��p�_�?�=/!U���z2,l�OZ��t�9���@`������~��m�nC�N�NPf.���l/�I���M���l��LX��\ܗKj)E�u�%u*bN �c� 7��kg1( �;�p{1��-�g1�@�\����2t��	7D�	P4-�oo�'�)%z�2���9�L�5)2<:�B&�)�:O�¤������T�]�E�ݶK����~�M�[�uN�9�\[F_���)6T��V��p�H��tK�u4�ӬV��<k��z^βɎ���tG2��y=���<�H"Go������1o��J($�g��fwd;�Ag��`viI��!����;�oE��q�-��EIc�
�(!"PG����in�Mv/���^;��1�b�Mx�	q���"���3��&�8*�^���|��ҿi�3�շS^W���Yb�iJn*M-��ű���]�o�.e��_����k=e�o:�Z���
��…����2w�����/�����/ץ���y�ԥ��yV��2s����:Q�b���9?͖�VtX�JOq{̿���;τv���yhOÈ�l�,oe�'t�ALAV��qҩ��1��ʳ?��Ϯ�Z���9����eM��*�L^w�©u���,m*3�ql�����U0�2�'�z�>��6_W����ʧU�;�(+��4%ɤfei�^o�H���$S���;�C�!;��竭�>��N�5)D{ʎ!�K�}� �rљ��y�V��Ќ�w�1�H�d�����e�;����N
\��D�FC�hW��vπw�;ty���9rӹ�p��\;�>#�~��`�)��a��h��Z�b��iz�Y�jq�;~���\l��ЛS����+�rjB���k���oPl���
�)^��NA]'ޮ�h�}��f�"�c����.�!��ok岭�o<���PB��{?L�'�Eԗ�
�D��	�=���]*�.�g�����J�Ŷ��}Bo�t��&�&��
e��\��E^׭{��/�NK޽��DX9#^4x�C_
jK"���w���C��j�M{��.��(,����ր���+M�sQD�Q��c�T�P^/4�y5���@^+/��'w��4}
����Zsũ���"�`W%��
�y��GIpC���0��:E?kݺY��Ɏ+	U"���5U�@��Sx�W�����.�0p���Ka����X}����:���]z����I��nN�6����C�̦�߾uQ'�|䘔U��V�є���N���=�?��v7�	9l�&m�O�N�b��{#p���G^]<Mb�H�d�|r!��q��؍1�����a+�n�a�|)�S��Z6�>/��	�SJV������N\�*��T-�@vf���V��O��!h�4Rh�t��LaH\d�,�Ӏ"F�'aKDP��o�(�z�
p�=��c��wd7b]Z�8p`�"2����X��:�"�ŋ��׃�'��H�����-2����s֯�{�/�Ǿh{�ThrĐ��!CT0b����/��b�
����	Ԝ[�9�>�(^��0a�tv�av؀ńQ1�So4�V�x��E
�Nl�n=��˜z�x�ϒ��Œ;�ؼ��Ѥ�$���.	)����_$��1(�}�5$ӊE��P۔��&�~F̩��8���ޫ�`(1���E(ѻ��&�G"�T��¹|���b,i��(��(��1��8��W����0w#BS��GX��K�{_g�S�.�ф6��g?{i�֛��뷛��⥶�v=�vlTRa���dځӖ�Ȕ
��\v��힁���U�U7V͋ ����*5}�$2��uC0w�҇A�å�ήC�v��E���L�SY��>{�4&��<zq�D�ADh������B����>�~�MjF	%ۇt�_��O\�'�,}�%�l)��h�z�%ۺZ���y�I�F��]݂�Շ_�'��7~�U�)�<2N(�;h-��P�q�]�aV%�?y�y�N���M��	��َ��y[�{[�h�1r�#�}B+:>̮�ׅ���N �"
��	ܖ���7A�q0������t�#I�$O*}~�����T��w���D�E�	7^� ���ٝ�#D�(�%�M�*�6X>$�@p^ ���
��")	zA��G���%b�>�>�T�^}��;�
�O��ǘQ��;c-/
^��#7w�Vt	s&��G'*�-#�צ�����Q%��^M'p�c��"��-�W��+*m9z�LԎ�p�������힒�{ɑ]�}}��(�b��0}��;ax]����t�[)��Q��@��]�g�Д����vÉ7g�㮆�'fToJ�fȬ��"�R���ۚ�˫DŽ*
S?u�=95�j�U�!9F�9��j.��4�p|�P�{wΔ���"Nz(m�W`���yخ����`Ű���Kf�?~F��m(ȑX�0���s�r���6��D#�P2	�='����H���BL"�-0j�0d�NG����̏r�F=/�t��u�?�"J�u*���/�^]2Q.U�����ԩ�\��|�O�Y�w�/^���p�9�ߡ�%�Ԟ��v��%���(�-��FʋkB��e�Nk�=vuP37g���,��	�}��Q�įKL����Z��>��:M���N�⏆���/�"[I}II}{R…�w�u
�R�_����Kn��x�RFmX`HS]��}G�ŝ�-g(�K�qA��M�"�����qpn��8o|�5R�g����1:?M
�N���
<�/@����U=��x���oZ�N?䞧���m�Yq���o~Z�7�Z\�Cѝ���-�:�O����4��u����y��	��=Q��W\A�F[%2|���	�BbE�6RM�|u������B)�~]�T� ��u:�L�*|<��YR-fgg}����L�b�u�}�aLW�W�ЈR<v�3A/VK�	�"�������g�Ԥ���7�vDȉ��o�n��GC�#��&����}��?G�p�.�cF���x
v�n�Kp_w�}^������
�8
D�������P�X�@j�%C���H+�O�5�����8}ރ���,�ψ�!��Bp�����=��z����x�Zm�h3����@|ُĉ���7F��^��Qef���^XDŽ7���J|6��ީo.��9�4����O�˲|!�,
E�(�4
a+�[Kp�
^�Ŋ&^�j�Dth)�b!�72A��yc!��$��y��� D�#��4j�oH��Vp�	����ٖ�O'Go���Z�P��T��1;�!�*�7����
��9�t��/��W���ȩ��
Ze���n�ꪞ��vMOL�v��:{\�~K�����n���jj"�)���|o����x\W���a�4�I3rXڍ=1�]�	�f"!
V@��7����cۙ�.��⃴#❍B���8����xq;�[�/6��P���.���]�ĞC�>��1a�%O0�<�;�,�A[w��*�
X�'����!(�=��i��}��&?��#�^$	^�2)�m4��sD��E|g�P�b�2�Dq>�����n.*�?�W̸x��(Ļ8�s�D���SD<\��"�5�3PsA90�7�@�R���F�q1x�od�YХ&���]�b�nʁ�db��zy�a(r�j�~���}@��8��
��	>���>4��J�.]���R��RŨ�2��*F
A�6�r���]��eH}KK۔��J��ҡ�ObƆ�������L�
G�hN'%+Sx�̒jU�,�V/�}�2�D5�NwY8�G���,�Je���A�h*c�幔‚�����wޡ�.���0��{D�x��Sf�Ѣ��2�w�$�F�-�:W�Y\���D,o�Iy�ך��nN�I��	�,i��)�m�#Y�Ǫ��j�U�-3���Y$v�%%3�Z��p��V򒲗.#�cNf.�5��d�$��C}���,�KSצIX�$fX�͊D��M�^uV�J�0R���s0=t�@k�T�o��RZ$��b�X��*e�V�E�W��ϕ�5��T0��T��nk��ޑ
��7&�$2�iy�ThF7�����u�bqe�y�#l�R�*[)I����M��k\���a�#��u[�N^��3Vq�אnL��(v�\���f�T�GQ�I7p��=3?��קw�(sn�Y�IS��M�g''g��aFm�L*1��J�J�2U,��O����}}���]�&k9-��D�����i-%�}jS*0������XX���W��b%��c��R�LR)��$M�����NK�,N����c�إ�Udf��I��$�D�Ģ�*$R�� f�LM�Mu�LձK�7�)lJeh�Z%�V1՛
�ڒS��.u��4e��l�J=�RS�j>��r�l��ڮ��b���4����%ǎ-Y]�#�,E�J����؈�]?��S�gz-K���=��:�b�����+4�A|h��FCR�(��"���F'ch�)���=
Ejj�����R��7�﫧��W*J�o��J����L2�lX����B��a��a��r��:���Z�cůM��?�'�-�V���<C	�^%�y/�ϻ����v�YYL�� �A���iˤI[��&mij�S:{��=ܠ���?�3)���?gՠ��N���%r�|^���E�����$��$����Zo�I�IM���C�ͩ<4ƻx���ij�V[��{
���r�T�Zj��Bu�T���4�+��v4�{Y�X�;�	X����ڸͳ� ��	 ׈�_�l��X�l|��ن
��b��q(:�f��j�M�+g�:R�?�1T�l��J@�׿����+�&�9��s�>��x��n����]m�P��Q�Y��5eS��0� ��Ư_?^�:w.rMP	ToܞL"�ʛ_��b^��GS�7e�ZUd����<Z�i�׈<Ol�k}���VM�PŇ�&�jY
��V�����j��dI|���Q���2��=�`H7��E���R�("*E��z!�Խ���Q-m�*�8���Н�1�QK�OJ"��R0���,�cW"�a!(�赺��L����nb���ޖ�N&�N�3:�\��)��h��Vw&�@ѵ�6���i���l
��,��>
l�X�������>�ͧAGM1	������0�B�ǖ�c(B�0lEguKP��pl
G��»v��h[!A�9�v
qo9����b\����#�}v�@�0�4>���
B4ZQ)�?ݘ�:>�u��X� vn�(��z�HE�~���Jń�s�(�7Pz�Xx��@�?n;����E)҃�4�E�J��ACuJ�yc>,Fu�U��i���Z:^�����{��P?��cY�ոOB�k����3Xt�5�P��T�Er�ׁn�*~)pD�����M�0��;bMA�폨p�[인�ւ��	4��]�Lv�ky��4a.�YB\��UE/5lbK2#M%P��J����vW�θ��n�p�����k����'`�@��ɴ�`iʌP�W��8Ġl�%�t�	%ʌ�SQ~V����pj*���$�w��^#G���1i��6��}��"vw�"��b��<nc?��ͦN��i&�t�~�ؤ���֭��:f~Y�g�m�-Y�`�ΔisV��3mJA�Ų�ɹ���_3��YUj�B�$,8�;DQq�����ܓE�,X�6P�+��բR`_P̋'�4Y�{[�*�e�7-n���w��r���'PŠuw
��?�u��:0S*�{����?E<�y��N�!7�Pղ��A�&��1�6l�'o�5�=���C��oJ�2�����x
^~�	���[���Acb-��~6��?���������u������!X��燚�������G�cD�q��n��-���&�h��ˀ�Hp�����:EG+�n�!�.<����zMh���9�l��b�젮�@�ȑ��p,.��U�i7�e�Q��j.��`)Ƒ�t�;��h��yAP��IظLK�q!���"���zF�Z�c
J�g��4�����F7eV(���`1L^5��B�+�������ڽa�]�-���j�l�ԅ�:�[Ų!�}!b�(����8z)	���_J�|�}dR��*��jq�l�Ͻ���KϽ�Mv��Dg5�Z5��q��.\jm�Ek6��md|v4�MVlq�dvԵ���_<r��&��M�ל`Oy���E�~�vҙL:|�Ư�0��g͂�aG:v��p	(M�S�<�ӆ
?=�&��g���<2��j��z��N�n�߿�V[��0?H�l���nۂ��&U��>�zrMZښ�]�].����?+;�z�����#��#J���z�����~:��vv��ۻ������$���3�1�~e�����ݹ�+t��J�G;�I	���mW�y�ؤ�q�k�*�dƜ^VX_<:7''wtq}aY��a#����TH��3:��#C�y�V��Z�Wj��U֕�?��;A�Y|�.d�7�R]���&�ODh<*z@��	i݉Aw�N�A�%L
@�v�I0�c���*�T����.3����9R[�VJЩ���,��՜�b��M1W�R
�߫�>EƉ�N,�`õ��>U8�z����/{��2�3Y��h�확b��^�āpQ����{�/�RX��_߲d8Ȭ��6e;���зk��	}�B
r�fq� � �Hˠf�ŬD	�ζ��%�,�Ĭ��m
?sx\��j\�W�W�UqC�S�~����m�lY��3M�>�q����s3`ػo���SL�4.\剶�jl��u�[��I��77쵥������������S4�m3�23��ȧ�ꑳ�����lg��@��͢��؏1��W��%`T�;�����ω�
�ExC�t�#�8*g��3�0Gx{�!w>滢x�i$�pl�ɣ�`
;f��7kA��fy���h�3>>��G�U�4V��O-����H�M֌o�K����<'���)m��?����%�{[2p������;��>κ��K���>�e}��}����ڸ�0�D���2`�TIH�nP(�A!6�Ƣ��2�h��k}�U�3��Y��ެș�t#d}s�|����'��s�|�\�P_��ξGփ�$��į8;���Bh�Q�",Ƙ��{5�k'Z�Uָߚ8��~�)��A�^�R�-��-�.fG��W�ԋZ�G�E*�.F��zӘP��������.$-J�}�&��\�V��T�Tnv�������?a�/'�n��-{4�yʐ����`ʡ5���e�9<�4��e�U斕d�T���	U6��?��AX&�튨Řf�5?M��A����6�eb�$�d�`�t��%Q��p3�`��s�b3�N����n�MSp��U�5�G
[�6C�n���q��Ҁ� �0y��"�U�(t�K\�SR�*1�S$AW~��g�S��v���t�QR[������
��%������Z��ԛg��X�o���3c(|�:c�(����s�V�l��`�n����Hz���*_��~�uz�<J9L�,���,3X�ӧ����X �
�,����t�RYP�����%$S׭)]��d��K���nB�d&�n&|���)�ò�{���
����K*�/���~4Y���k�N�_��J�u�q��h�@����kߟm���84@
����"�b-M�/g�.�,��@hL`H���.	�}��k�o�py�\�#4T �3�qЎY��cvh�/a_�I��N��O+�U�i��
S�V1���O�!�D�t%C��ԯP4`��@|��&��8CP_�º�OV*��^��w�v������Y����7�~�E�U������zD���4:
f�b��ʃ��HB��k�s*�DT�6tFY��e-�}e#t�5�}CŹ�Ο��z�B��Zs�����	���#��C��8�3k�؁�0!�\M �z�`E!hЛ=U����~��VФ�U�Ƥ�Ҿ�=Wi���0�t�ն�ş��4���<}�K񬗱���ā�a)*��[k�9��'�n�JG'�������Pٔ�	�0�u
��V�Y��T�J&Y�c���D��$�ϫb�r��<��oVH%��.��T�(�O$��
-ӶD��\ �jK�Z�4R��I5r����cѧ��Tɜ�kt�kI)�CB�u������P�T�`���8�M����.o� �0��$T�	�0a����W>P5���X"�ݫ�~P��]���#jDy���%K�j��$��-v!��F�~3�2ܪQ�5`.|�ap���>nw���/y��#?X�##J�w�5��(
�����Nx�4슩q�V��^�����=~�R�'Ҫe,�ҧX����M�}�j�J-�)T�:�א��w�3r�T�'�����x�}scF�y��7k�
�V0�\���S�M�(�2@��u�:-YzǮS8���W���[4;0���q��Ʒr6�SBIX��qL���t&t�&��#M�
�����G�#�&t
ڠ�4�7�0݆���I���p�X2���M Lu��w��Do2�`
�%\��7߳��g�
^mlm�W�)s�X��7a�o`B���f�b�nQ��1J�)�?F�T�7ѣ���;��C6���XV}EBq��:��ٗ�zh��W���*S/�'��W
I��~F,��앀��Ud�
�A:�ɫ�+�z:�b��4'�Ŵ���؉�szk��ܮ�.08q/8���k�Y��H���E��>��Qv��ŋ����g�O�~aժ��b��x.��쨽���'��T�Y�&7(�w^;�����[�Ս��$�\0w/��6p'�"�>@�'�w.XHZɋ��(���j����X�yc\X��{'Dy�>z-�z�x�y�>xm˔���ۜS��^��O]Ђ���{��E�&`��`�w)�+��ySL��>c���u�a=$+�h)V,��7�R�H�֯a=�U���<��35@f���F��9N��i@6�݅�L�D�Q�s��-�cr�졂z	���
��W^׏�~���чS�2���5�$��Z}�݊#q~��d{VF^�ުԚY��l�&'��Jk~O�� �V���{��W��|šG&�$��d�]���8��/�v�Dj��&���7��x��Ҥ�U떦���ʐ3���{W��(1�O-����T��}2�����k@N�H�:e �i|�}�,N���j��$}^�\�����X��,_+V�r{-���s�v�7d/�zk�ux�C4�9�9/���%���V���<��S���[ƅ����ٷ��_��:<�}3�^;[��l�z��A�)���d���}���-��U�������}�����sQ������H���:�z��3
\D��_�+B��3F�	xh�&��>����ϕ����4�]����j3�=/�#���T�Q��c�ϱͫH��Bw��_��Ee�^f�[�џ�3���76N3�w���\�"�R���1��v�/}}�"�O{<��Z���@!�g�(��E��=
5�uW� ���n��&�iK�$j!�jw%P<��T�<�N=���Q��Z�UA�nŀ82�+�^Ra>?�1	�E>��9�|�.�mV�
�
40
����l�<kO6�ҋP�$K6m�����
�&�w63�dV�k�'�Ո!���o=�t
4H���Je\�r.mOa�z���
*Z�ҩ�W���[.s�ߟV"����k>���K�҇k�|2A?���g��`�f.�}�W<wպ���+�����~�8�U)��-�l}P�ժ����*R3���7�9~�>�F�\���[XQ:�J1�D��~�NN�*(|C^�&�@���G���j��1:�;kN�\�	0�ƅf�Ө��p?���$��0����o�G�G�߽�0���Cは/�������z�����F�4X�~�d�IE���[��.����9љw�I���`� 샧�'�a��b��$~�+�/�m��`��.-�� Q�b��'͛�"+6�XJ̓n+�fA0�����H+�l�_��sʴ��!�-Td�ؿ�O����dɜiL�j�����N�q��J��ɘe���O�;;%G�'o����;"),=�K��
�][��� g<�F�h�.��~�[�?�
u��}r�����f�2h^�3���s�j��ƾ���5��q0f� 8���u�Ĕ�,'���5�D�k��)@?\��a��^�=M��Z_1�&����c���M�Ͳ�k���׏��>��|���M�o<�<
���4/�c遷�<�l�ٛ��,�v�߾={{��5���Y�{~�'��=	,�\k����^&�'0�tX���Dl}�F��G*��QT?���.�ZۂK�
�u-Z���Rhu���0��!$7@d~X��ɢŎ���xx��+x����4����V^�Vu��P��i�f
���w�z��9i�{V<��ї�Kw�#=��`������~ёޏ��_���ф3,1&W->�xj��~����ܱj�a>�t�x�k���la^�3�qn��i�i�З�1M��Ɏ�H�͌�و������
KQ�j�1$a�g2g#��K|�!�y�eD��Q�Lx�X��{i�4�{{V�����N��l�	��Ѩr��|�_I�G�$iu,�N�?TW�߂bt*x�����A��u���t�A�Տ�7���Ѐ�\84�d��ه&��I~�Xsu��l����0eZ�~�rsUJ�kG����
)�2S~�m��Vy��n#�~�c�hV��A+�c%�YY�� Z!���W1������t���A�1y51�+A�E��8��ICo.��V�3��['��1�;��S�v2Q��:p�ؽ{�/f��b/�����vܽ1<I$U�
�PUa�hTRI����ԴV\U��j"��RkMoy���Ӈ�
9* ).�:{f��=�Ͽ���oQ��j�%k�1���y���T�}�[g���h��n4�4�\�5rd���]qۇ�C�<i�̬�𳦅�l\��E�O����C&Z�*ZZv�i�-��w�����*1��t)����S�*%/��R�j��J�5e��y3�֏W��l�S4j˔j0���4�ܮ��ղ"��aDwϘ֯��F8�Oͦ�&��}�6_:-�HŜIE?�2̓���u�q�Cg���b�Za��f�J�j�4T��L�
J�c���X����h:p�{�[`���:�N�6�84�����J&�n�F�ٗ�,-P2d��_
'1@�2�'��r�dD*�Q�����e?<slj��I\��x
�+��ӽ�Đ��vs�.��b	'���YE�UpC�ӥT�)s�N'S��mٱ�9X�x��mS��D��Ž���1�ON������hS����Ve�湕�E�T�:0�Oap��Y���§Ff~��]8,K)���7��BTpK��/��Ue�dm�Az���kT��`��c�o_�e��k*m>��l��^:����f���������y%����6?a2Gy������8�r�mng�ô��0.�ׂ~�X�nj����cpD1�N70%��p{����UWܥ�҄�oS�(آ�	�v-6=�C=s"�n�"^�D�͐8'��ݿ��
�ڊE�BTPAE��U!�DwU�I�O�e��p$�F���Zo��|놪��'܈s!}��q�"T��P��d����(le��+�����
V���W^�Dl�Y��s��:�a����h�I�`�X��k�����Uq&HI�R�&�
����5�R	�	
�r#�F����<oj��25�O	�	�jv�IS��2_'z�"�e�l�+]f(�:�xt䊬��!^G��@��<~�$;%�"#?xmC��}��\x6�4�+��֢}����+��B�6��ԡ{�v�d�d�N�?&s����T����ca��x���i����R�vKf;�7�C�U*�i��U�व�fZ���4j[���o�`@H��2�,W����i�Pr���U���)����L	{�<��\\c�@���sN�D�:�_Z��h8))zo�^�R�A�4����f[G�h�ml[���Yoo�m�
J&��N��s��KŁ���/��e���(���i�lX�J��7x���$*��1�p<�p�iJ��@/F'�Ƴ�v��xD,�)�N!At!f�=��ΣCs�^p�gs��������߯��x�c��b{xT���N��S�@�`%	��I�S���O?©�7�q�^�.�3l�T�Uf�����>�-���M����>/?�}�D��Le��J�����{L��'����:�y��!��=l��g�w��K�sC�8��3�j�wV˩}.�����'v
c���U����Q)I�{W�-Ly�}0W�_훰���S%�����YIV١g�D�7�;���;Z�X�4vh��H��;��n}5���>J1�3��U!�P�3�xd��}�?1mډ��w����E��R`*�A �36��?M~h����Ix�Y=	2��8L��q,�6�h=΅��P�t����{k0f���7?��rF��R�����8`�vG<����ؔkTzgL+V����aL�wp
�#�
��&�ɼS,Y�~>�o~3b��!w�cE.�� k����,��)���O��>�������e �1z<���g�T%5"�<O0��;���J7�Քc� ���vZub�o���9�� 
|DIϧ���\,.�M^��<{vrZ�|���l��	GՀ���RE
h�+�hN���,#O���y��ߛ����~��l�}��������MMGm��@�S��a1\���q���r`}X$b�SRRe�ߎDK!F.��ӌ�ޥ�В�Bݧ��{�b/�Xϐl��b�01�v�.LQ-�c��dX����B��G��������AWZ�S����Xw^�y������Z�$)�퀜`c�Q��f��qوa�����1X�� �^j�e9r$Kf��d9�Lh�p�qը��`#�t��dO�Axm�~ >���<��aIŽRZ�P3C�y(�Q��0SrO��
yI#l�YeRivff�T*M��I$E���F�"}��
Z�2j�,}2x
k:ح����~�(����a��
�/P��{���7w3��߮��l�g������J�-8���h�|���W��yw��?���W�m���x��@�_�~�>���	�V*1���'�_�n��F�BQ���X
�!�I'��P��!q`3�Q���ltS���tb‚�����	���/��<�;ɖ��?��&%�yD,eOp8jb�>��
�@T����ᄊc�η歿Z��y�w~?��z���E���g�Z��sq	�s��n��ݴŖ'��2��;�����͹�����G�z�,>���#Q�Q��?_���bN��Ɇ���Ӎ��i���v��njj��~���w`�GS�^`�=�O3c��M#�!�ȧt�xۄ��~����.k:��D!�,茮�?�:�A���t�$6p9�*�> bi(�[�nϠ�A#�鰺I��h*~��[��Dqt珓�j`���my.� ��7���e5/����6u�_T
BXa
��?��-t:������U��fr�4R�J��J��o��E-���-j��#髳,��*v����>�&�$Q?㰗.;Q��<a�U (�b���t%�ա��G1*l�%�:�ӣ֤��l�&ĩ���d��,�cqku&Kn^��xg#V�i��؜��k1�n�'��6�09�+�l����|4j��cS��]�V��j�e��A[��)��V٤O���Y�Қ��s�]�7gxzM�/�]���K���ҿT�af8g���zYw��b;�I����6@^�ԲzHI4Z����!�D�ћo��l��}!
0��'��\F�ō��2j5�� v��MxK�UM�ܻ�-~���C�g&�
<~L�vU��3
�� �[���|V�\�f��V|�r��9��ܐ�v&��q��o����G<�7���kZ��}�)+Ig�k���ʋ+���ɔeҙ�9s�
�9���h��O�0�Rk�+�_��6�`S(�X������:��G�i|�K��o�_���v�����fs0Ca��&����������<�7(�
ه���H2��*�2b6��4����OR֍��}q��rdK,��WS+c���+��Y���W��:������Ē7lVCn��d���\�O��0�ƢZ|׌�����Z����1.k�?WC�t���E�jt:��dK]իG��>�� ]'��׬=f͚S�'�
��3rx�W�˯�f8�{���)VLo0�床��|`��;&ޱ~Riqì�^OMN�T�u�G��:���I.A���R(��_�M����o�=p��Nt�M�j�7���#�~��s��&#�K(�=<kw�r��M�X�wZ�S� P{����D_i����5��ݦ��v��K�~�eh�*9p=��Į�Χw+zB���=�Ԓ�\��s���V7�ӣ}�i�m5�Uk����	z�G9�r�k�A3�W��'Z܂|�Ȉ�C�'<�FB�o3�>q0:]�p�N�8D�G^>��HY4���׻�]�F�#��
÷,F��h�L��u�O�'zܴ��%���*����cvv�d E��lg���:�1h�r3�5kg��Fa�t�u~��ˆ�����m�>џ�z�9q�L�I)U��<�g�x�
_�ifm����љ�`��.���l��8�s��dg����鶍yX�Wx�6ݴ
�e}�ư_("�/�[0:�ӻ��އ��6:���l�6%��P�,4���
P8�u�,:��N/6�Ƿ�7���.A�ߎ��gd
6{�r0x���؋LF"\b�6(����%D��"`�F��v�p�g!b`	�_��J*eK83|q(�Ԧ�J���>W����R��!&)A��|r�*�2�H�8���%ݠ�Je[|MojP?�C[�8����ra�9�3{c��bqo�5&��0�
4���%�e��ٳw��<<�`��� [�S7�߇�?�����C��Ӟ�̶�{"��yP�����n����)�hAc���W�z���Z*����y�b.u��rܚ�[�%Xq��Ꮳ605����n���'N�y'ND����~^���%s�%��藂]ML��c��B��uJ�D�O��_D~��_�8��;U�\W��#'��s�o���MgC=P���9���NWǐ�u0-�ת׶�Nn�k9tz9M�F̍��(�"���QIS�?�E�@!&O�"��>H@!�����}Z%?
�����?�	��q�x�6r�D.�L0"��*r�8"���GO5E7�9���?Е)A�ֆ��u)�~Q}@l��� Lrz�\�'��I���,�\z�ӷy���M��ڞ�0�`�����V�+����έxFGO�_�C?ҭm��2h0���~����|l��C��l�q槇�L?���d�n��O�u���D��`�mp�t����GD������Vf�롷G3�H��	>F`��h㖋mp��M6�\.f/�ђ�E8��	:|12ؑ92�^
����ԍ5k F?��p�A��
��Иwd�<�	����w=6���J��@l�^�������}SCG�mr�������f��%[ϧg����i��\	�[�x����,�ރ
u��*�Ժ�0:
|W�l�rJ��i���6��}�w
�,�i2�ִ�i&׈��y|�[��I�0�������C�^ym�r򑯎�i���&�"H����m$��ۖOv���y�x��t)�^��F�(  
�buroQ ���i7��c#���R�s��M��a�v���)����)f�DjL�(s�b�&[��s��d�Tb1��s_7�牀��:�U������_��UX�/ϭXqX@	��Й[�F���AQJq��#?����)��ߺ|�V}+-H6���a�Gt��S�x�Yq~�ㅰ�Vjh��W#��r���#1�!���w�48Q{�n/��������i=(
�U�-�z�FnU5�˖g���R�qw`�c���4�����g�e���j+�6C��9e�in�33�Ѭ1[w���c�⭽�ҿ�ˏ^�.L�\�x��K��1m��s��\�rG���U5�^4�Z��!�Oѷz�h3Φ���w��ye��ƹ;�R=}�&��z���(��6�It���}	|����ZieݲNˇdK��ۊ�8�'�slj��	9I�!��R �j�p�%�p�%�H�Z�޶�(���h���ʎ�Ҿ�~ߗX;;�������<���<�4�kA`��6KTV2�^4���"��?K/�A��nyܵE!��JbG��*/����J�Z�X���?��3ҹO�;��OCBp�`����D8o�r[Lf����5��~���V;������>Qq�����J������D>�C\K7���]�A-�a�oy�@]
"
;�v�sHH��'����&����!�zX��X5���g�ԞNpCM�N���14�^4���x��F���~Fe2��1����)�^p?�#fJZRԙ���1]�����顕j3�R�%��i5��!���̐�?�����B{��WJ-�sv���a����{>�Zi�9O?��W�������'+�Ӽ�Q�J0]z�L�BVQ=>�J�}FS*)ƉFZ5�˨Vj�	�p4����]��!n
s��Ds4���3�Q:�pӞ#�
���'��N%;g_��=� �.�2I_Y-,V��H���>{L�Bg6��ep�;k��J���W��"u.#|
��]H�������(Pڰ��������F����t�oQ���,�V�XST�fA�ápuN�\[;o�����l��BME��hZ���ة>g�6	%�ؑY�$h�0g��gyX$�^�T���D�V��Å� �b��$R�rIh���;�,J�>`���i9�� P�*N����J���}�׌���.G��Be���i:㳙���CB0�1�Z[-O�L��|9���uG�̘1G�\~��;�]k�L�C�S�Y��bz�	ɪ�:���Q��R�����n��NH_�X�>�����҇B�B�)�,l}�U�1ƙ[	jV�]Ҥ]/��?�ϝ8i	��~%���I7モ���l�4U��b��5��˨5��Q7Sߣ�;{��ȅ0N��|�v4�-�]�����$����e�q�����2\Ni�%b�d�.�3�]��@�8m@�n�|7��\9+�إ2�9�e�9���?�G-���n@�@��R�H���T�lI[���RV
w=b�C�����A9MVꐗ#�bPƝ����&�b��f.A���@�c5I����ؚ�=����>,�/�eM|ဌ����b7dI~Ќ��Ӧ^���@�5p��|��n��`LZ�A�Ŧ���*�C���}d��.y��<5P��U=kR,��5D��«2+g�/
G�3�2�
�S�}r��.q���nƬ�(^��*p���ٍ���9=\�<����,�Q?"�|��p�)�+F�kr�x���o>.�����|4߅�A��d
)S:�ƦI|*���Έ� q�Gs�6;^O�~+r.�uD� �뻐�%WC���A�QTیu��ր�W�3��e�gչ+��H��D)����)0:&��p�L�N��t��~�N��m���yF�yOs�[
���`\k���y;�h_���e��0�@�.ӿx�9�?f`�/�Z^���}�W�BHR��o7z�`��@�Q�4��Άб�����L��w�l_7�^=t�=�SU���Z7HGq���g�E�G�J}9�R��c�jB<�T��M��B�>=)Ĝl
#=�v�~�����x�q�vwo������D��k(���k��.�	�@���@ºk!��}��!��HZ;wg_8�}V��ܯ�pt��>���׵>x4G�;r�>�p<8"���d4\:~F�B���/�P�Gb�fU�ޓ��J�i8�ۆݹ��uM�5|35��.a��xn�o��X�0f�1K�����4?��szRG|���{G�gjC��B��*���:����m�6H�}�W�u{ˁ�6���֒B��-�yC=�Jۼ�;&[8��ի���4�|r�q^��9������pH�/U�`mP<=�c�x�O����A����X^�kC��]M�I��h'����P?�Lq�A�C�`�S6ħR�_�h fA
��tL2�jX�BZ����`�͘�p��iDl��JA�Lx�f�ˮ����Ѻ�������ԘUА1����3�CO�9�Ka��|�{۾��T���z�%��E"˫T*��7C�xvi2V�d�9'�a=�z�ˣ�VI���x��F���:��x-�
�i
!p����;�m/�Y���p|x(��~���B%��W��~�FA)�1S�~�����?E4���=K�R���0j*^F�R0*9GH�g�PR�
�Ar��X㲁�xkҽ��쯎����[��q���-E%�C!P�L�4"�z��ڲ��\̛���_�L�#e"�ք���D�WT�SҁP)ǥ���
`�Uo~گ�9,O�`g
��^O��&����W��K5�0��<�0�Ħ��������]o�G���p�
���+���
*��H��EL��� �b�5�pd�L�_Rӥ�J`wD��c�C�l��<�lV�s'`a�bpH���������؃���Y��"⺽�~p��.��|�T0�?�(�CҌ��Y��d�T�c���ؙ�kMC�ba�2x�GM�x��ؚ��6�HF"�"���v G�h��]~l�K���$n(L�bn$E�-��ѐ�po��aT��3�'�f��r�I�a�l���4�;�%�Ն���WE��Qj�+i�"\�6�u�2O�����,�G�>n�%-u�'�w8_iJ�qX�����l0kD��>��%����K�>��g���g^Қ�(a
��󬬔���H���΂�l#�*�~������)���e�,�3L]�,�.p��`v:�W62|���]�����ţ��^J+���q�XrJ�Ű�/�a��b�
��`�ݰZ�<��TVb�;o�ßv�����	^���Ї�@�IoCe�W���\�c7
/����-��dǶ�.���}���.GK�w����������e����O?}pr�60�����l�zo���v��>|�t�y�ֵ��B׭�Tup���m_��%�m�z�c���NE�(�O�D}�˹�8%ٛ�	�/V���a�M�r��8NJ
�,�3R,���w_V^�Xk���� ��a���'VZ,��CL{�TpU"2vh{^�scS�*1�b#�O�QCm�xf���.{@(*��Fz孷A6/V����f��p���'�wG��`�)gI�	%[�?�hN�}��Do.�ۇ�̡c��ܴ�m}��J'cy� �
��*2u��=/6�u��X8h��kll��eT��ŏ���P�7h:�xX�hxQƯKh
:����a׈�~RF���%
6�.����x��0����F�s�u.V��l��t���Oa.`Epv�:��V�v����q�dE&�;HpYs�`P�k��3��$7�L�X�ʎ&�x9ݾ��J�R�35�\���zMp�hg�>�0[��Ġ�[����JN�M�y��F�Y�������ԏ�O��
f�N�ȼ��믨Z��w��b!��;;��kԜ�9_]Բ�?R�pD�,�V��]�Z�n�6yA;S�k����Wi`���� ��@]�!t�e�Km&N��̈� tpT�ڄ�?D��!~mR��+�u���&
�Z�9"�O�
 "��FB�M&�A�J&�PD��zP_�N"��ce��`��:P��K�'�`.
c Y�D��D��g��:1�Jj��rQ�U	��yH�"6_zH���7c��aO��2�i�s+�����sz�Dm���^��uK~�
���I�\J��lذ����S�G�8ӧQW}���{��J����ޠ��9Q-r�y�!pF}F�KA
P�}%#��2m�W�2�cMK~??X͈g�f�63F�{��/��C�xU��~hx���_�D���0	D/�(�g�[��~���=�jG�օF�t�Z��.;�NX8�)˞9�3Dk��k��pHα�6���A���#}�w�{{�N��ޚ�@�gDvYv��,[��a�%���ģ5�	�;�nP��s�;sZ(x�pѐ���+�u�G4�߇s�����>=%�s8V�o~��Q:Ot?����5'��f=tg�t�%���_���4�-�9���\��G�p�Oϒ�E��7�s�0H��u�L�c�W��@B�T�]��n�����yK���fm-���1�����V�|���u+�f�Ï��'�����7��6g#�w����v��7��
/������F�)ˇ/��N����w�'�gH��\��Ǩ^_�9]>3�O�P�h4\J��n��x���I���A4�]:2�p97�i4T�z��YS��FMa,�qXK����AJ��9%��+dDF��������ر��DBF�t(LF_2��d���u"�ၝ���E9���*���D\���5����A�5�Ќ���o��a��Zwm�ۛF��^w��L��ꛆ��S��c�X6K+5gff�g��U�ߛ�vK��sn��1Qδ��ƚ*�L'S]�+ �~��)�WOK%W��'�-�3�Y�P-
Vh�U�<�į����V�-"��aO��_����*��}3n���Ƚ�]\�g���=tr�	?|���[s*������Z9��	�7ݶ�wͥ�p|��xb�h�d�}����-��P�*�vsӋ+�I�4d��ʢ�|ciS;<�|��ʊ����}帤�F�9}4d^v
��dy֨��A�����2��
-�d8ߒ�S���80De�D���o�[�Ā=��9i�o4�g�pìi5�߾�����L^�d)�L�X�&�s���7�ts���X��5KI�Ճ�<7s�e���ajE�o��9'��F^1#��L9�����>�k��G��Y�ܝ�f�^L�MR_g����S��du��v�mySgOOg�r[S�FL���������8��J�FQ�x
u6ʆe��z��>z�7Ʊ����1ɰ]5��Cքя�ҡLؤMf)7�&\
Cʓ'ky�D�=X!.�M�Xuutpsر��^o��S�*�qT�8�l{%�zT�
�TOmػ��j:�D.[>*V���Rn�BU~Q����{ڞ�y�&W���(�Z��
ɮ�v�k�:	(R,P���(�����
5�\��T:%�E���5��k2�U�::f�g�R���޳�!Г�d8m�/S�����t=��Z
`���I��;�B��������VUaft��e�������	�0)/p�������!cU����JƧ7ŀ=d���!]�3iu�+*4ƀ��3��s$\�(��R�g��E��������m�p���X7��y���LC�ZQgin^�Rvzi{U{|*����͖:�:�+�w�iEHaW�q9�U���u�O�Q�Q����=>���mLi��\�@���W�icU��u���`��̶��V^eL���?�U��IT�ch|58��rTVRmS�TQ�+Ř�~��cՎ%p����������"�覫!V��S�`D/��\d������߄[�Vy!��UE��d…�[�[F�ص�¨�A�C��V<4����m,�i���)C;�w��f��\�N����r������+�K\ �֊�lm��N�����}W͠�޸��0Ӯr��a�#2u��SǼT���!z�؊�?����n���+�k�s��~�����W�V���_��W�w>ҁɅRS���I?�;�|Tɢqj5"#kU+�+A�14�r�F�t�y+IN�y�����0�MYcX����p���dW>��q++Zb�m�bilˊ]m`A�Z^�L���ޒ�|X�b"ku�~p�t8Bf�x>[�&�cf��0{
����]�����3�̟y~&�H�3P���|m][`7T�GY�rfn��,������k��f�x�/oK�_���
��*{���t����@�����2��#g��=��/���{��Lg�5S?�(�lK?òc��!_0��3�	�γ%��
�
�ɰRO׎��-S������m�r��;�<����ɪ)��1X��ɫ��l�̊%�"a ���	ΘG՞��v'b�X����Z���ȝ�܉�������l� fm�"&�}GPX9{ΰ&ߐ�R��asfW��1�^|���q�4���t��؍�Dӻ'w��'�wTRE�dj���i����}�GU7�c.�.}�!.zs�Em��j��1��ݐ=�0Z�,S��qK�+��J,q����&ʹ�V�
�)A{���0�7�Ы.B�,=�1yd�q޼��΅mIƣ�*�?����	2�|��*�0����V�B'G!�$�h�B��Va{�(�H���e��Rz�q�#.O��b��{�o�2E�+�RGqaaa����l��ZR�J���-[~����[�ٗ��V�-T��l"���C"�,zw0�gѬJƩ7+�f������g<�Džo�����*p��RG�oҟ&���%c^�~[�$��[⑩.wػ�<�G�wą�u	���a���D�Z.n��&E�uF���C~����L_��3��ϐ��v�5䙾��/�\�!���̫zB��kh�y�8!�� ��G��JR�^ό�*�_���4>��S�k6�A��\��6��n�Lz��#��UC�ر-�Ww���a
�HI�I?�� ���2P���j�&����%v�sh1[M	ћ��r����%݈$wH���d��~A���7�ś? Wa�º�G~�*|�M���^��nY�R���o^�zz�j=��#[ۀC^�W��b�H�Ro�0�
sd�y46~ZC��7�{�Ɨ�����sݳǟ�n�8d]�I��U��֝{6N���Jgnys�]���7��,�m�9�F7��	���|s�湟3�i/�峹7���fe6ʏ�z��&1>�+a��K;��i�
c*��k�پ�m۞Ρѕ���s��0���HzBτ	=�gW��V�OR>���#9��~��Vs#�y��nIUM�R��<��}H$���ո��6����K��.^�P�����}M�̓�X�O__,��!�0�r��I���]��^�H@���L�d���\LӤ����)5mb<��O��J����D�F:ya�������/,%�׿���v�#�!�oS���� 
؋��Kn�biBq}���c�׈丣���&�v龖�V�^p���%�Bڹ�L�YL��LH|��F��N�
��F�	;9d��3Y�	o�#A����b玲I$^9J ^�o����Z*E_�|D$�_��k56�����2�Ʃ��Lmȟ�x����m��n_�ɱ;'�.6���~�ģJ�%�E�g�/�E5�E.Ì��sn��8ڗv	�t���Dx�r������礟/j��;�QR�nʋ$�;��O�6�^G ��Ez��Y���g��&��UuB�����W����Y{o���3A����c5�Y�Y"q�.��SF�/��Meg�H����4��N�^��3��\�m:���������.��z��69lP�P�i}���Vi�D����Ty��7`�k�(�\fs9�H�&Rv�Pi�*��@�h^߼N�5�kpW�V>IV-��ZP+�B�3�5p�%��oN�����ਟ�q��o��D�
6q�+���uVh�Y�ᔅ��ё�BVӊ���*��b�K��h�.8���̲�6���_�^�d�dy�ԠԘ]B"ђ)��,��i��37�ܿM:�_�i��~�X�@����,�-�Ѭ��,}�pa���<2����8����<�|{����ޝʰ��~�Ő�;,j^-�@��d.��=���4�cj��
u
V%]��8���})��Ϸ���$'*��K��	�X1��l8HH̛J����41��E!gy��,�U=U�=M5账��z�GV��!�=G�?l�^3�B_n�evM����IY�dkۖg����5�:�ñl�fp�l\Cl���;�>��m���J������_����$�\������?�7��wj=zŊ�q�
}Lx�	{�o�FQ�.j.��ZM]Im�n�vQ{e���W`�el�|cΑJJ�b�L�sI���R���0)���-����
�;U��M*��C�*.T��]��<���
�z��]ʗu��@V��ޗSޕ5����3J'�Grd�)��,���ꁪaWw�iְ]�"Fs�-aאb�J:D�r�1I���'.J	]��-[�|����:�j�6"y�F�vju/��c�Y��x��|�P�/���A�ޡ\(��.�]V��H���!��O6q���r�����q�Gv�X?$K
���q3̘�&����丣߹|d:dnI&�.���B�Zz�b@�&�[1�㹞��~�_��OG�>����բ��h��^��Q�|��w4]���`��]��w`増�s��^toǿL��ψu)VB�l�N��u�x$�V��6����}y�q�c�<$^�G�VM�)$��U�e_y�[��ń�$�`xK)J�_Sn@�6z�D霘�1���-��=F]` P�{����7�>0����!Mz�m��)��?�������7?�y����i
��XyUUê�Vl9�U5Q�y,4(�/��5\}�?o�&,{w�)3�]:�~@}.m�@k��&�^I��'%���ŏ�q���i�%O�(5L��A١���z�j�q� ~������q
U�@�J��X����g[��_�RE�J�rb����r�ֿ�|��v���� �e4L�E�Cލ��f?��_^r9�-R��7~��'�rfna����@S4�S`�@4z��9���Me�`(x$������[vrQ���
�p������
AW�_v����.L��1@!��Cd/;)̡�X��?x��{;T��?V�v�a�vՠ8������m�rqF�ߦt����>��_�A��?���P5(~N{�'\:o_\z���ʬ�c<�%�}[��J�5��<<���_����yR6$��k�j�~F���Lt���ɦq�N���DrÄ{��� ����x!E��:��0���r ��D�8���ҡ��hWaY[�p���q.�p�Qr�Fv:
�:&!=Q�Ί�PXǠ&e":�آ}0���hԺ�A����
oU�{��6���:��+D�޷3�2-m�y���,ͿH[�>�`�P�P���tQ�Z8�f�����	:g�AQ�V�*)�Bȃ��&���1�^o)*���k�V�y,Z��/X��V˸E���J?m��N+���g�jGl����ч|}���kC_��s&`4��l�-�B!�W;�ZmH��5��ƿ�+qJ�(�l�9��@gQY�9O2�]:�jXڠUPRb��Ty�q[T|�,1�%�g2�WZ�B�����bh����u�aI,�{b�A�1٪D�P놜�z�|$X>�t��B�����wʞ�N���j�a��Nn��6~,
��Kڠ��uX�h�}y=HЂ�h$�����A�T��g��wLa엪�͏�1a�x�r�
�J���t�<��&5Q���)`���6/4M��%���go��oj,
Z
cM��Z���p���Lh�֩gGdW��a����75Ł"�֨VFm���:jYh�ڴ�i��6�͛�q4e�Mݰn�1�Bt\�T1U�x�;$��1��H�kh�b�Ą�Џ��H�����1�S�[.�s���Kګ�d:�I����J����,
�~�~=8�p�Ӭٻ�ddx��
&�%b�(�Ns�
�ZF�sE=����X�x�-9��FTx
ʡ�6��u���sJ�n����Ԭ�xO*��(��^��F��fа4JH�۷���}wI�@-m��R�硢��'��,����(1&^�D
+1��/������������J_�i�^F"�����5<�M�ҍ�œ�KѾ���0�5J�@��c�����"f
�j�W.Z�1�mҴ�m^�d�����
oJ��)�m�[_s��E
��}�/�of��+�~��`P��]�q)��H����׾x�Ego��륾ᝁ F�i���� <���]4d+�>�P0�c#ۜ�z�w/��]�=�s@+ܳ�<4���-���#�H�w�4�f�EEi�xk��!���+T�-
m5�_Vq��&[�A)�f�����ӆ�5��,�(���>�,_mW�`
Ђ���v��9t�͛�Eo�s84*O��{����l�ӧo�	��LjF�/x^ý����^��&�S�P8��>��A&���::�ف V�7C3�!D6d���!X�|y:E��_%7���gk]�&Tm�c��VO�#P_�3k�*�"��_�/�o>|�����������1�r�'���X>�ҧ�/��%�H���yӳ�>����Z�j4һ�T@h��n�u����/~�L�y�C�a��aU�4�Wi���@~�d���y��G������Z�qi�$ݥ9p�C�@����&�sr��<>K1�ѿK�;J����D���,~�t���&�<��g��OvL���;^��I�C��J=��^FmB}d�C�,~�P�xG�2�?���XVD~��h"^�?�]n(5����2?�(8w�L�3�1��[H����E��l�7�?���+�G(���6}�[0�)��ư4
�A�k߄b�؝��k�Ŋ��uX��U�#�)V����7Ń��D��e��t�[���ٙ�>�@����84�� �-9����Z�.n}:���Ε�z���#��dh�!��
ǥ����k�O[�:���!�]Y�)�
�t��dO��r�����rv��P2�+�2�*T���EڄUj�PB�wK�Θ
=�����|�Ǥ<��3��n魠*ڿ�fMh�s�X>W�gO����N'$�u7��tAұ�A�����q��h�͌̇��D0��'�*��&4�0<BXFF�V�}�o�q|���߻�Gg�^��ä�kש�G������NrJ��w��s`Ϗ���U�L��:��J���^��	��c�k@�� }ߓ��M�$�?��t�^"�Y���S�N[yļ�+��]p}�L���FY>�HCA���qp��y��M?�x��	MzA���
�>Dm�7�r)y��蒾V�͍������l�1ύ�"wm�_\s	�ɬ�?�=OM�fR��5�U�C��ԫ�{�G�����eHa[�y����
�=sD� R�U�W%Rd1�'�=�uR�(/_� �9�ַܺI��
�"�%����;�0��ݎ����b�+M���G`�p�\�{��?sX΁R�K����V7��M3��y��>��
��s���h�)wd���c���yt�\��̌m��7�x���5~ng��l4mp‰�Ѩ�!k	ԣI�dBG�4CB�s�5C�OYb�jo��۰8=vMa�.��/l�n�����M�q�f���J��,�i��a��s2�`0:�{�Y�),fs~v�A�t��T��1��2?�+E1�V��h���cO=��B@����U�
X��y$c9��h���
����h�ׂU
��ׇL_�CAkHq�>�������yJ-��-?��I'��<��TJ#�2v��$d��1��h0�Y!}=��n�b�J0�d��N݊�T�l_9V9��Jk����m���{\n.ӡ�&GTA�B0��f�s�f�X
|,c�:��k;�u>Cv����F�ގ�sZL��W�T�x�c`d```a<=�|Ed<��Wnv�b|�F�������
��``b�d#�x�c`d``c������8�"Ȁi+{
�x��VKkA�y�<��,�5VIL�,���E����"�E"�'sj�����J��U3U=ߴ��K>�����Փ��g�_��(�ET��u���=O�'{?<c|u�>�Law��]+t�w���^��nD.�}k�zՇ��쯍U}ɩ�o9�:�΋���;��FШ����O��;��XS�B�[x���e#2U�o�ا�C��������??✼	9�Xz{w�>�	O3��E��*��De�[�=픖wE�:s�e�I5o�ÞR݇�G����=SB�P�s�|W�+�Ⱥ�	��}[0��l�]�1V����~�ٴ�F�o���M���r�����;�'�����O^gL���y�h�o����l7��/���ӌr�q3}=vC����C��HF=�ǡv���@�i�lr�.�r�4�C���үV����ldV¬�L�[�e��N���0WԿ�o�ϓ�iosW�wz:�z���Q��Y��Y��3���R�y��K �>?��+#�B����|�J���zj�����6�]@�UD-�P�v�>n໌u�;���W����O���MeFY�г���\�l@���*�!����u?�'�m������
�'�18��>�w��C�Ú\f�M��c}��~5���l���mo,.�}��Y��r�[�K����f\�y���B�G�y���o����C[�����
����|�E�E@
����\}�d<�z��/�
|�x���{T�g����N.��i�B�d�b!���3�i�M��e�$׹4��M�=�'4r���i�!�e������������}Nҿ�1��H6dH��A�T8T*�
�H�GJ%��K�^�
������2	RY����HY��Ryr*УB�Tq"(�*ѯ��T���D�S�Tu�T-�I����z
�jp�E/�N��:�R]ɕW����gKn�l7w��S�G�G�{�o�x���D��J�=é	=���Ż7����,5�w�0@N386C�����&�9^5��;�J-�H~�i	>��j�^+z���O��P�u/�/��w�R+�����=q� �v@G�S�LLgr���<��IR�B��]�<�1���ug���fO|�E���_�P;�ap�K\?��G�������ǁ�\���Ti5��s܇�}8�A�p	�O�?������Ͽ���R� �Kr�Q'�s�?�YO�w���1��IN���0��EQ
�S�9�?�'���0��i�O��do91�1��ٜ�X�Ų�X�b9�s�?��84�Q+����q>�_��:K�ຈ��L����zK�[�w˘Y<����r4/G�
f��+��*�$p�V�{"��r
�kr���Z��u�1	nI��x���c�7�l��Fzmd���f��L�-�ڂ[9�[�L�6�i{�[�G
�w�o:wSo3܇��j?�R镊���:�g&
>��u�:��s�GXK�˟���Qt�����8�;��<O��$�'�|
ON������2�Ltg��k��uo����\�G���|�؋輄���]書竬_×�h�ιȆ�
�o2�[�ݢw� ��q���L�g��<D�#r�=��'�|J~>��S�g�9�^г�o��/��/�
ͯX{]\Fe�l�)�H�X�L��eJ�dJ9�8+eJ{Ȕ�*.-��o�x���2|@6�t�L%7@l�^�@���(��ce�E�T�q>%S��IN-��bυ����!�.�ꎔqeϕ��ʸ�ȸ�xP�!�Fލ��4�I2^	2ެ7%���w�i$��<���_�L+8�;�гu�L�X�-��@��2A<;���@c'8��3�tAC�.3���=P&��p�(ۓ��1�����o���������O��)2�	ye�e0ڇd�eN��d��gF�{u�B��p��o����q�D��>�*3��	�s3������=��6��(���T~G�7�����7��L4���Y�C�ٜ�9��񜋮��z���]�����%�q	���ϖ1�T���e�W�e}�(�=��dr��w���s�oWs�e
\����迎�$�H�}nEc2�pϘ��o�����K�S
}w�o����Z{�/��o?9��w*z�� ��%
އ�a�a/�G�|���<�lO0��!�������r���Q&�<�/P3\�w��D��p����ˆ�
�n��܂�-��?�3u�>w�y��wᘋ��ɀ��u}�є��<��m�󐼇����O�~�p���)>���k�y�g���{ü�,��Ǜ��u���β�<d�-rJ�X�l	�K���l�<ٲN��Xs̖��'[��J���lOY'٪��բe���&ٚ� ]�%R�6��$ʺ˾C|� �ĺ=�m0C֝5�,�w�d=x6�V�\YO�(J��?(�m�,�!��~Sr��������~n S�%�Z�@6m�e�ю��p@~����e��tx�c`d``:�$ɠ�L@��`>(Mx����jAƿݤMk�`�R��AD��ݴ��7�?�Mhb�W�6;I�&�av��k_@��+@���U�o'c�BMH�7g�����<�������d�E	�,p?-QvZ^��S��J��r	/�g��p�}oyw�/��x���G��Y��:w�LƜl�e��>[.�1�[.b�q-��	u�y��זK�輵��mwfy����x�~������b�b�Ї��1BL I���vQ����K^��I��k��&���LŽ���D��0�fb����`0�(JfRMdD��I/��DK1�Z��`*�t�M��Ƭ d.�do<U��ڨ�U�ڴ��Mr�;�g�zpXm�k'�F�}���FUF��]�=j;௲��K��i"���bD�.x�B$�d��y�&��_j����Q�>��º\ՒO���-�9"Z��mW���j��\DI�滎��Sid�IΩ+�Щ�})��dG�»�2']�Z����J�Z��rl�$��;2��V���z���n�M�"�L4�R�+�_�
���e�k=��~^^8����D�9�yW�y�1�E&���ϋ�x�}Wt�ȲuU�b'X��̔ؖ�,O`����ݶ5�-� 0����̏��1�}�̰�����L�s~N�$ݾ�}oW))L��?����nJ]��.uc�ԭ�R��n�4d 9����0����
X	�ư	l
���l	[�ְ
�	���`{�v��`g�v��`w����`o���1����P�	���`8���`8V�L��¡pG��p
��p'��p����p�g��p�
�P��zj4�Fj�-hClX
]p�}p��5�C!D0���·�B�.�K�R�.�+�J�
��k�Z����F�	n�[�V�
n�;�N��{�^���Ax�G�Qx�'�Ix
��g�Yx���Ex	^�W�Ux3��
o���;��.x7������!�0��������	�$|
>
���������"�_�/�W��5�:|�	߂o�w��=�>�~?��O��3�9�~	��_�o���~�?Ÿ����+�
���¿����/��0��b�pX�a�Q\��q�čpc�7��ps��ĭpk�߄��v�=�;�N�3�n�;�{�^�7���c	�XAM��N�~�?��Ax0��p
�qg�P<�#�H<
��c�X<���D<)�:����x��g�x����X����:6��
[��ڸ��`�袇k��C�p�qq-���x^���x^�W�x^���x^�7�xތ��xގw�xލ��xޏ�>���>�O�>���>�/�����f|�߆o�w�;�]�n|�߇����C�a|
?�ŏ����I�~?��������E|��_Ư�W�k�u�~������w�{�}���?Ɵ�O�g�s�������o�
�����?��/�W��������?�_JQ�2���i�
T�a�QZF�i���hcڄ6��hsڂ���hkچ�D��v�=�@;�N�3�B��n�;�A{�^�7�C���S��T!�L��M�~�?@�At0B�h��i�f�P:��#�H:���c�X:����D:�N�S�T:�N�3�L:�Φs�\��ydQ��$E-jS�lZM]r�G}rɣ5�S@!E4G�@���Χ�B��.�K�R��.�+�J����k�Z�����F��n�[�V��n�;�N���{�^����Az��G�Qz��'�Iz���g�Yz����Ez�^�W�����cA�v#(�ot�?��S���tZ~A���y�b:
��n�N/vj������� D���UϝS���۫�|\�QHn��
�v�r��3�o�t��<Ϧj��C��Ҿk5���|����l�I���uw��9�b�a�
G1���0竖��N^�O踍n��X�o��uܾ

s��T��S�M!���ˮ�nS��V\Sh������Kѳ�n���~�mX=�[������ڡ�؍b��ZG��NX���v3��Y�_sT+N�
��_L:��>��WGAh�Ӳ���o�{	N��wG[VCɩ���rs��#_e=�o�N�gy5Y��VS&��u��f���L����D�� T^�n5���iY|��^~�Hˡg<�M��p�\�e|8~}Љgҝ�Z��0��n��A'��DAM�Q��}�,&&��9��#k"�G�8�
�������T?�ሆ%�b`�*ԭ��i��;���4�U�v���#�#�r{���"���g9�r��p���nY��b�)��w�Wy��Fc5���p�@
���~;~=���W���~���o��\��X�l�j�UX�W�;GY�=�W*�{�L��;�b*?!+�,a�^���C�W�~��l_�b���$��C�er�b2�}�N_crߥ�ZL�m�z�H؉z���*�L�d���I�rZ�8�$1%'�r�q�~�͙e΋�ok�o��9l��qB�~�ɽ�b�m3C=�A�&��p�c�'D��˛t�	��p~��l2s6�K)����7��4�R����r�bC����B�e��\܊�dDdE���zG��`$�`�C��!H����Uv��;�ɄV�
�Qy3Cu�V����87�'���F^Z�2���ٺ�8BP#
YJ�O��b��^:��TAΧVg�v�q��~��A����]vx�vg(����PwT��k78�G�������;�����y7�b@q�@�5T�>s�;�'M��I#��I3>+�7�A:p}��=�[|y�-N*��y�.��orJ���qQ�Y�X;�(�C�k�8����>koqD�Wpd5�E=�q�un���k�6�t��$��z�"cÎ��|١(�S	c���J)�0.Geɔq:�-�#�����$�Y=f��
��f��-Y��V�t�y�����XK�h�Q]�ԗ����H�
���e_����`~�(�5�TA��Fֱ<�b���=�.��o�w�š�
��I3љw���f�w3���ł|0˗��8-	��/�Ona�.�%�e�/$��է�����<���0�"/���h܈C����3��e9i�b�į9���;�8�$�"���G�!�H��J�aW�k��dqIf)�H���Ƕ��I�_�({�ڵrv�j(N�2���f-�����i�M����j�&�Pd>Q����ij�hr���&|���`D��C�����	{��nA9���YH��61G&Ύ��m/��%	iź�A�J��c��O��� �wt��C�����ŗ^l�4b�&��ψ8��W�V/��g��|�%�%Y����]%�Ԯ{M��>��ɏ���6�3Y
�����8Tcx��7�V.M�\7r8�G�
6��C����p�WlЋcS�\�Ha/r6��z#��^`����ޑ��5�,�Q�!����������^��ߴ]��&����h�����#���*Z�L�>K�,�G�ҧ��K�����\w>��5�]���-�2�䖠��qRs#?X�b�9�Vq�-ˎJK!	<�=
"��4s�ύ=���q���Wv�����/TK���k���Xe�dI���$9G��M7\�@�&��S��J�5����H��⁚+C%)�R�V��U)&���E}���Uc|��8�L
h�,]M
hR@����d�V�ui��(KQIf���)EU�	)4>&�<и��+RRb\��k�ӵ�J�+	�$���J�+	�$��0���,�� ʂ(����	g�u�!в��1tm�Z&��a�kEX+��V4tV�
!6dZC@��2dȐ���0a
����zh�L@f�ϻ?PUTTPUT��*4US^nHKh���Ą ��EE|Q_T��EE|Q�Ĥ &!��L
b��n�b�܊BLa�)���$EY����U)&����)��K2�!�0��X�Kb	C,a�IIHJ�3bC�`�1�!f0����3bC�`�	_FYeA�!0ʂ��"�� DzC�7DzC�7DzC�7*�0!���!���!���!���!���!���!�� LA��)S,z��.��sK"�!�UAT!�"�!�"�!�"�!�"�!�"�!�"�!�"�!�"�1)��DC"����JU۴41�kƙ"�)қ:�&]�2X�bB
�3�K��o����o����o����o����o����o����o����o����o��f)���Uz���u]�uY�z���RW����zB׃�V�zJ�Ӻ��lROi�)�;�y�4��ҼS�wJ�Ni�)�;�y�4��ҼS�W�Ҵ�ּӚwZ�Nk�i�;�y�5��ּӚwZ�Nk�iͫckI��Ҍ�Ѽ3�WGؒ����;�yg4��Ѽ3�wF��h�Y�;�yg5��ռ��wV�ΊS&5�&�դ��tV��j����	�assets/lib/font-awesome/fonts/fontawesome-webfont.woff2000064400000226550151327220410017316 0ustar00wOF2-h
��-�?FFTM `�r
��(��X6$�p� ��u[R	rGa���*�
�'�=�:�&��=r�*
��]t�E�n�������1F��@���|��f�m�`�$ؑ�@d[BQ$([U<+(��@P�5�`���>�P;�(��1��l�hԨ��)��Yy��Ji�����|%ہ�^�G��3�n���ڕ�
�͐D��p\Yr �L�P���t�)����6R�^"SL~�YR�CXR	�4���F�y\[��7n��|s໌q�M��%K�.ۺ,����L�t�'���M,c��+b��ׇ�O�s�^�$���z.�mŠ�h&gb���v���'�6�:����s�m�b�1بm0"ǂ��*V����c�$,0ATPT�1��<�;���`�'�H?�sΩ:�ND����I�$�T�[��b4�����,�μ�」bl6��IL�i}ی&�4�m,'���#�ץ�Rw�bu��,K����v��m_-���\H����HH������?���m�9P���)9�J��$ƽ����8������~�;�r�n�=$��Nddn!'����;��8��'�N��!-Jʶ�.����X�=,��"`:��		 {�����K!'��-FH��	�#$~�Z_����N5VU8Fȯ��%P�ݫ���Cp$Q�����r��ʽ��k�k��3ٷ�:R%��2{�ީ��h%�)8����
ILK�6v�#��,;Ц6��N�2�hv�����OO��t#��xT��Bf���q^#����?{�5b�I��%-WZ��b�A�^�1��n5���צNQ�Y'�������S��!t" `b3�%���35��fv;����lά�9�:jgf?gr��p�x� �|� $ e��Z(�$w(ZrS��v+�Z���q�M������ݙm?&s[��t�S�Sj��9���?�|��
���>G�,bDշ^��^���:l�3��NA�`�5�26�L�pS�	Aߧ/U�
�֘����'9\��Նt���!������l� PMR���9n�
�`(�@� Hy)M�dM�
�5�ԤH'ґ��mS<���q&k�)\�{;�1��m��8�{��X�1�-3ǚ��)�B(��,�%���������w�o~��t��HW8l��Z	r��=e���1+�/Ɏ1W?ְr�89PL��>uo9 �1 tØ��uc�����@��]KR�bN���v������(�"��y뽻{c�����scz�&�p5���,j�n �kN�!�.�n^��Uu@|�?v�>�����rUa�HR ����Ց��I
D��ˋQ��~p�
�܍;;�n���L$�t�	:	hFCY���TO�FNN~}�1"`�����a��(�?H ����\���u�0LԵ��'���͔PbnmO������Jl�?��s���0,8�x�B�B��F��_�RiZ����~e#j��w�hOc*&F6�Yq��{�}?��>�u��.�4�h%g�`�&�� ��)��R5�H�}���ˤ�kܩ��'J��O�I����_��qOb'�HǟBYEM�6�v��5�NJ
�O�NFNx(1�:\�߫C�k�c�b8Q�	d�[L(el+2u-��a֘d��5;�N$�"�H���SF�o�2i�"��\�h7I���<SCO���ȐH��Ew!.��!BSC�gĝ�c���s*էs�(5m�=q�ʊe���Y�$�\>fN8�q��x�#v
�6um�	���`�NM-J\�F��r�D��Z�0�#'ꥈn��GjL�چXʌ�A���gYs�*�Y���^ٵ�;"�$hb=�ϛ�0�vH<�Vv�c�_\Y���w;dB��N��3!$������I|P� ~&�d�.�԰�-a�a	++��9�.mR��4�cy���#�U��FW�u�
�	i/𜯔f~�4��l��XS�9Ä�1E��3@���k��@'#���c���n� ���S_;�%��I��+��.�L�Cx�����ꆱw	��Vۂ������Exf~H`��0�!d��@Q{Oh1��H��Fë�zs�7�݉��Ɯtrv���k���heS3�ۇv�9�q|�O��K)�U\�A�%����o{l<��K����͎���i���H�G�I�z�=6�WWo0��|�%A�jdD)!
��pw���_���;���c�D#�ˁM���Nz���p�^�CDx��xj)�5O�9�
�`��EDX�x� ݒGU��˯ę����ډ�.%
���Έ�~��=�Co�)
F�7���$Z��(�g��oB��
�Ɯ�@��&���e�{��厣�l��f�_�Rx�N[�]��8`-3�s����{Pj��Wuc9���[>�-�.D�܎Y����d������+^{���C��m����,��@N<������.��V��M��S�+�\D�+��R�|�6��'q\T�����9�D�X<$�p���"�酦��$�ҷ�,�p�s��T����b���NkI�_�`��
F��W��V��%��w�~���DԐ����*�xi��y[rZ���[S%�G��s`F<ㅣ��� ��V�+��!+������؍�9y�k�fb�82�s�}l;[)e$��T���k����)�v���9����{�u�u�t��޳@E��>|C��<\4%�Rv���������@׺C�8\��~)#k|��.a�o����00G�q0%����hp���
L���"�+>���%�^Mˊ�N�s��q��=�����䦆�K4r�-*��%��h#�%;pP馔h�C=����
��&)�ba��KL�@����t�!�~2�S]rYl�Z6�3ўJ�o��O�V�;�h&gO5�RT�/}����{���AZ�&�S���t����ͯ�P��C���0��D,�pbpз�z)� ]�I�>Q\Bl�"��^3R>r�*��C>����xPU�z�}Y=�̕�}�ж��
�
6-`/"H
o�&�D�I0�E2Xa��-�{5���<
,}��``6����ji���im<UujY�Z�jB\@�g�3Ejfp����:����W�Ǯ���߳����p�ij3ao���1�da�� ��ݫ����J�ײ? j�q7��M���ff�Y�f��s�$��	��H���l��������(%.�r��w?�m=~�y�cY�bg)<�W� /Vx�k���$��B�r~����9�6�0�&��_vMY�%��ҝ{�E�6<������%�%�4���ߠO�@��N����"Z��OD{u3S��W�M��R��3s<���س
����\I0��.��-2ݭ��ㄭ;�	�0��}N�/b���N{�I��|b_r�e��_pSi���>'�w�5��RF,ч�%SY����Wh�6L_i샣=���i1�3�YI7N�Cp�I��Ĕ��(�r���0��{j����r�K����Тo)l���3na�T1\��IE(�m����߃���D�l��e����$Å�wX���U��(@����M�a"n�,�*vG���̨x���>�G�S����g�̉"�Q�v�b0*z��PE�y�ɉ�?7�$����%��G����p�dY�&f�!��a6��|�)�;u7#�3�4�mJij�
o���O�p�ȁ�v8j��x(K�/Z�d���x�Ń�m7V�_\�f�L�7p�X�z�H7�-���,(1KHb�e��,r-��p�L����3=�T��2�t�2ټX�k:����Z�5��s�p��SsT����:.]��D"�@��-�E�̑!�A��2�ɶ-�F}�˒�2Bǃ��Q���)t�ç|�#4�|�\�㨀��`�fc,��#�g��1:�-����ty �]�����2�Z~��.)�����nj�����%R�K����(y�`�8��C��֍���z���K-N����`^+����n���3��ϴ����T��3�tQ�أ�4<>:J0È%�ݑZab`��vͬ��a�T/Z��aޝ�ГIi	�W1���_��>)���H"�����p���|7mF�^Z��~f�0J��^�I��3V�!���{�<e�/=�p`���q��8^����K8��O�9�w0��Z��|��v?�n�	�3��f�!��߷�~��T� ������ Jӛ����5��p���V	��3�˫����.=����-}��[�g�R�5���n�B8���3.��8	Yg�#0�&���S�/.fg\
E�f�}��,k����g��$�?XY�*������1��p��E(����RS��Q��t��6,�Q�j\��</]N�s���;�'HX]�E�29��d�kY�
�j���R6���Q!���� V���
%"^�`�N3O�����[�v:�ʄ:��^ڜr׿�@���
�F�_���Nc�B���8p�\i����7��g�*���,�C����[�6�T�?����%�z��@jApBN5�"4T����"�}0uJ􇏞�Ȝ~3���{}uW����M�j�9�-�]����'lS� /�R><�+�O����eB#�Bc���jL\��-�Zh�[�I<����q�v�~�k]�G���TD�?S����/�-��%ݒ����7��w�i|C�I��q�wc��W�x�� �/7�x��HO/���o]���G]�y�߃��#��7��b��$�t��R�$ ���]�a7�F�Ѯ���,n!r��I|2���8�x�6�gS�h�	��R^^�D.�x�M�MS?漞'G�#�~�+�����v4�d!FyT�9�-�fVa7h�B��4�����,�2�Ɖ�&vTHMqp�4?R\�����Xa<��4�@Mi�H�D_��	�Eg��R�y�M���lT�ؠJݮ
��yc��"�HJ�, 6�u�/ڴ��������y��V���nJn۟H\P�R�Bd|�4�_�$k����.��w��™I�pS��$��|}j���9������m�|�1�ߘ����n�93�9���5qS�|���xW�9�����B��VZ!����m�K/�Ln;i��u��$�*�t3�Ͷ��@}���B{�Y���ԑ�z�2J�u@�a�\M���R7o��dz����e��7�/$4]^���2k�h$�=%��1�I�B�؃ ��H|�N.[�M\L���b����1Mg��:�NV._0�,�+�,��h�t7�l8�s~IV^
N�˼M���ؑj��ك-�	oܮůQ�o[m��j�=r��m>�~z4$M��}z �s�h""���u7�V{Rûݦ�O-��D9V�٥g�IʎK�Lg۶B�T��P�'�K��̦�
qW�֒�3e����p�&���ے��L�hp����N�aS��w��
&���;e(�,-7v�x�-��w$W��nX�U��������t8�����Y���?KM�ct�Y؃�p*Շ�����-���БfL�|�[nL��
}4�{5�頠�3᧌�n���$$,+�DNԄ-H�V>��H����Os\���-�;�W6N��M��8��Fi���;���7k�2�6%֒�a],:!�ʲڽE,��{U��naw����Ng��.��I9r:j������<IE�1�`$`Lbrǒ��ם��]�x�9=Rv&*Q5�0z��y<���`M|�ԙ�dO�٥iZ���$���+#KH�F
��������	������)-	�:M$�yc��E�%Ai��2]���l嶨����8�I�y��ZGJ����\�2֙Xb�L���I�A-�GrR!�0���L+�Qh�S�Y����S�5�_�(�poF��T���#kN۾�l|r�n�d�H���yۊ����&ۆx�p�����[�8G���dt�����z찃٦	8��B��KP"@2e�e��y�x��j����JKˆh�XŬB�}��6�â��`?�i�*�[9e+b�VL�aL͙����dBYp.�ψ
�n\4�糅Ƥ���d�<w��W"��? �'�O%�a2N�9��,�ߟ���!���.�y�Z��%�4�U�^��u�φ�g�)M%��C��V����M!z�&�����|D�,�i�~R,%��|O"�����h\3+��a����������i8��\$!1�L��a6s�
z+M�R�b��_
k�v�j���U��裒-��jX�Gt������b�~�˚��ꖺwt���͝�SkP�2���(=cvt�"�[3��&��h�DN�=�򈎋Pɛ�A�G���'_�R#��M:.���3�	���tJ~��3zwx ���;�7��O�8��Y)
�DSE����/����7�i��!wy�6��$��8E0�Taތ�|@�
g����.;m���9�9�s�HrL7&�����3Bs�|[o&ou�Sg�խ�+{�AE���kZ�	�"N�d�5��:��IV��ڊ�>�F�b�K��Ψf)*c��G5<��C����.g�]��k��
��� A0�-��٣��v�T �d4K(��Yq`���(u��{,�:0*$|2����/I��,�`E�����xP��#q�����`��/�:�����';�ىV�D)˴�r��89�w�}[��F����ޜη���+��šh�KH�\�ǚU���䬂J�V$pUj�|c0���{���L��A��?�V�=�4���S�Ŵt`���d���o��d�bUP���J�x�g��JR�r�O���s	�����4Mw���
�""�42����`M��D�/N!��v�3չ���.�f+�@xO�V�q�j^�Cߪ�Km���,�8H9�Z��<&�o��(�@��k����M5����]�M��U2=vpB6DXj`�r��<�w��1�Y�:� �o�<�9�;����F���$;2֜�j���޺�x,�ʁ�C�Rĉt��$�VJf�f��9�)�a�9P��&���6Oo��l�<������ds=#3�s��P-�bD��"��[:�wɺ^j��Ӂ��Qej`���Tq�=����H&�o��kĉLD�W�O������*J3s[�6�j1�@��nr<�ξۇ�#���@	�0��c	���?ﵝ<2�D�Ӧ	��}��Ts��S��"�R�
���.}�oZ���Fo*���ݗ������:�������7��H��䍚�x��]���a6v5�R��̾e1��$XL����
J�aa�݆,��섐�"3-�G�!˥8���8
|�T:S�P������pMR�Y�b��{�+�O�eۛ2���g���u��V=�U>-�kb6U���ЩpZ�M��O�`���$W�D�y���A߻�[�4��a��J?�fD?=�d��(KD䴱:�D�/[�#��$A�#KH.:��x?%��V�r�@[B$�}�c�o��S6`LPfM&ɔ��A<:��v��Ú
Q�~P�w���[��+�������`+j� V��+��R*���u�l!���|�+'�KY�6�6��_�ud�}_���[�yuۘ�j����o$��Y=�yjR�i)��b�ԋLaD(�X�U�wI�ڻZ�$�7ڻ�9��&��4Z���'��DF���[N]�~�dD?V�Q�W��Ͳ�}vS>�Nm���+S�q�H��a���U!�Β����Wb_+�����U�O]�^���l59	@��1�'���A�^��m����o�:��9�ף�s�-�N:���tD-�zkS��j�a4�rc�zF�ۻ ޿�x��v��7[�äC8�#7�p5�+��� �~*�bJJY�zֳw+�����-��p�/L�L[cg���n�lc��a�P����H�F����$}�9`������\
��83�Ym�1b>�~ƽJ��؂�Ϗ�yBs="�����f�(zK��M�"�H`��w�c�Ed��:b8�6(9��<��c�l�ݘ/���k��g�G���������^ESE)5�G�_^��k߇�v���̚�}T3�;6� WvTCP_���k���._e��єNJ�L{T�!��6�j>h��0��#���[��㗚����K��z�,�!�3���2����:6d>�himE�\�=�H��Z+{6��@W�ʯ&lC'�,��rX !8�(\�̭2�-�P8h��@�C4��<~����Z7j%)e����eF�pZ�'15��^6B���3�nc�o#~���²q��R�@!ա�� z�^�Ks]T�@�TN�T �,S*@7��C���ī�Ʌ����L��iQ�N�,��	#:��RѪ���j��9��1�-�Y��P�N¿�\&�yL8�ӹ��&0�c��v�Ɖ\�����J�A��;��Q;�]���I�M8	�s���Mf�?԰�I��r�r!�K�9я8p�}Q�콍��g�-�*sm�~�X�P0d�M^��?D�dI�m<��p;�y�,"ۦ�6��v�pT\^�n���3m�>8�eC���N}����cà�٭$s7ۼ��#յ<SF-A����z��≱�
�B�	*{�6cg���Tz�GX2+�����a��0����;� �EEaG�d�Θ׿�[�M���
�i���g��:B�[�	U���3�J9�
0��I�2'	o����\e�%4^5}����5��� �0=�
��J�}m�y�&����"��.cւ	V��}e�J���:42q`G�O�-���-B���J�F��Y�۾�3|��|)��������IG��a����+�*��ttPb��A�Do?C��g�t��;��I�]G��2RE<^�mK3����+��;�
�[���3���[1����y�v���
#��p�<j�iC�af�~\�G�C�4���dubt B�K��бQm�=�a���Tq<��^z�ء�(�޹�G~QۼZoO��c��r>R�{b��4���vM�q���l)<�V�{ě晐�2P��T�'D�
Vt�������oP�aU���6`���"�Qe�]ka-�^<xj�<�G.���~��������5۹�ۯ]�V��`8Ϧ����%���r�y�v����;��pc���������`�٘�uҙ��9q��q�E���ҹ���B�����6�Ǒa�e��E�ثO�Y���Ǒ#:y�p���/!/��5s���U'! ��"|���B㡪�
�t\�T#���ҝM�$+2n_��� ���b���^�&��������e��i��c�I�=��u%E���ȭ�֓
���fj�aظ֐����E�ӝ��_�e���(r}�mo9��UP6zH$g�4�ٺ6�P�@@�X
(1�Θ��x_	Jy�{�3���',����M�1n���>v�O��ճ����j���ְr�1�f4cs�_%v%l��K�ZNi�+V��3�'�����~��N�M�G@H��B�b+���v�VFq@�ݱuKZ�h�p@��E0�����ua����SXd��U���K}ԯ�8G�X�KiI���%���uR)�E��I-�ږ8��|1��G�Ξ��f6�Ȁ�=!K�F6�Qf[X���~��_��j�\^�͋^k����`����D��s�G]~�㤛yo�}��;+i%�N}�Q��0��ԥ�U��u)M��[�Z`"�7
��?/[C�{�l�)�$Mr����|^��	a�����:���"�֊��a	�l�>�h��y��a��{�2>��CP����L� �j?�ntg���]��S����{�UӇ�('��b�'f��g0Ӄ����LPA�Mtd�)�2ú�Y!�v�&`o���2P[�aޔ��5��S�|#+��7J��
#ȸ�_��dU��6#VD����B"K���|�����)o���tk�l���,��l���U�)ݹe�5�<A��\0��_�7���^~{�$
qR�ΰf���P
a!f���XU���hX�l۽^��:(�m�?��@=bhg��O͖{-�i�:�'�A�8?g��zHFz0�[D#�A�.��%'��w�=23�ɸ��Z'�Hx�����&I��4�1I�Ji����e�z����͏��o�ٴ��{�����i�ß8	0[�K�/�n*�a5���ᰉ�,c������+��A��BDrlDo���"$Th�T����9�$�岣�'���0V�'|�"������
���S�AJ!�Տߑ�6�F6R\�6\��9�-�_=��Q�"9IW.\.zmkz�F͵U�x<9��ɑ�$�7i�FS����ʧb߂@�ۨ�}��u��o���Ͼ��Ѫj�4=���oeUK�xd�W�뻸1nD�X���y�"���5倘�ʂ����K�����-�o7B"��ě)��uW��E�h9��b)P�%.�$�G��(@(��u��R��fLT ϪJ6
���)H*y����=���Q/����uI.��<���,��r#�y|�l�<`��Q��=���F$��A�t阍2��d6c��Wǥ䇣4~�%�vb�a�Е_Cծ�Y�l�̨�vq��s$m:�G���\�W[����C	�l��}�R�^�2J�I6�X�l9��=��`t�ӑ�/���P��jes"��_�
L��w�m��~��X���N�M�1x���ٛ#��NmzS�%b��,���Ž�~�B��	`�9�Vu6U�}ֺG��u�n�wO�����fsC�\������g�������V��Φ��@����:�_`c+}�L�<�[��#U��*|�歺[��[姙�ԧo��ɼ��\=GR�K,![<��H�?��;�9���:��Iͣ+��a���!���*��?#�'G��=���Q6�,�g�m&;���������X故0��
�������;qW�q�'�4��I�C�g���΃Y�`�~`6ix0OG�g`���[~��?NC�Q@�Ȅ6�N΁���A}j��Ba�3�ť)���˴:q�I���gZ�2�vlf,�У��Y��Ѯ��bԩ����Xo�Iė˜�X���_'���5��]J���2P�92��C͉���@�C�����6E�e�B@���A�9�߇���Ǵ�y]�H�	�-� �b��9
��O�0uw��I���7J�x�ū2��\�Vf=nV�V����"#9���v8x
��mpAh���y�3��pQ	%��t^��� |�‚]�YB8jC׬n�#&�ɇ��ʴv�˒P�>�O�������y�UAt2�_�������n53e*��1���v����(K_H�vV�ʉ3},��A�C�Uƍ؂�Cu���t��i�-]�`�����7�]R�
!zs�N��t���&��̉̄k)��SL����̹�y7��$��ϥDJ�N�d��"��9�
�31 I��Z(^(
lw6
/�@�Y�B�^���}�OT~9c�c��]���{�)��}�D8�${����yc�,ʤ�{�tA�W3zHI��m��D�4ܤU��T3d�I���D�)
��I۬�.d�~�[-�K�^2�Zc��
�8��u�,Y�^\�_��ԁ�_�+�cJ��$�\2:ZW��b�B��w=��[1'N�YVz4�;��(�fzN���U��f(p֙�!x�#����L�=#ŋT�hn�b��a˳"��,�T�\o�!��@@sN%��|
���t��Xj�	j��	�Qo5��������o�eF)o�� �9˷�:�h*'cJ�孏��[��{ȄNf�nz�]8F�/�|��1�v��g@�J:�Y��նNu�:�d��hH���o
����t�M��`��R̍�R�i�:|N�_P"����B@���� m`a����:M���	c2�Ũ<���ؓ��U�O�S�\��%a\A�p���ꄯ�e�\��A�����.̰{���w�ǿ~<dXIh��RN�gkv��o�{n�Ԝ�}���H|e�iV�W����?��#�(K:��m`�&�L�x^F��+'�����؜Z慉��ŏ1?^�E�(�ݝ�D��u��6��T˜��LS��6O�am��d�ʙy�2���|�^�S�K�}*�2L/Ř)�h~����\1�� 
D�̅���$��1�G/Εo��0^����_|q,��|��`�ܷ*z�|���'�usv�j(q�R��zL>��6������	�;s2�ŋ`���W�`�TyP�g�ee0����00�}/ǔ��;h[tG�D�5�^E��#�h�ȍ:f?	�u3z0�ڎ�$�T���^T�Ahz�	�x
�I{��5�������'�r��K
��z�o l֢<���Nl���f��M*�~�Uʏ�W��_�?�v;(A���ͺ�R�^� 3�=6�6=2�n�~}c���O7�X���d��J�|��LP�ޝ~ͅ���8�+QD���\���ҭíS�\�=�U�v�
M䅚c"a��K;�A�=ԨĚ����k�J�N�p��M%AR`�و;�(���5�W���=���Y �g-�^v4��X�ى��J�@��=�c�3���}�*)u���b�T�F�'�|�N3����E����9��ڪ)1��!G���k8��6�D�
~H���Gp�%�Fz3�2��M�J�aZ��?�c��n0�)?�h�N��u�����m3H�~����1rD�'����1������Kr�t�sJ�Js������ָU�����2��r^�+hNzg��l0'\/e��tXԐ�v�l �j�cm}!Q�ϼ��t#��z��#]����ϕ��O��ׇjE�:�#	�6�n:<�N���u�i�����{�z���1ʞ����UV��l�+�a�N��W���h��)O�2ymEl٤�A��7���YQp���fB��<8����;����'gKR5n�����T@	�n�*��!=a5��������Z~CW��P^DX-Xf�j�N�ű�q4�O�I@��S����}�Xh/�>�,b����89����-:G|W��)��b��A��5G��<*ٕ��:ğ�!]gj~�O�&��U�N뢹8�� ����g�]-WW(W�NI�3��N��gr�3|��m
�m��'=[n�힬M,?�$��HD��D�-��O?5uX�]˓��3�7�>�*�w�g?���*!��JyT�@U�g��z��I��_��7�&�\t��H.Y�Z�(4Y'�d��T�
�F��s�-�qy�a�7�
[��67K&�J�/$�c/��x���[���ᶏ;�Ī�z1Fv��]G�'ڏ�Q�BSO�������І$�y�(��TS��-;�hűz��T��%D��ts��"��=�gwU�uD?b�$Zr�9�G���<��&�Ña<�v5��0�]f%S��an*���؊���oмb���8pJ9����⠚�'�-s�@�r��넅��T���AX��I�\8m]{�Of�`#��X�T^f�5��''������W�2Ϸ v�sE�\��Qs��(�ː@A�jR*Z���a��̳�Slі�R�[�ܜd�*)�ɩ���P�¢ĽHt�o��5��8��.��]�h�\s�І؋����?�Vs���h-U�'�#E�g�m]��2NjWl�rm�Z������#2�BE75^^��a4��wU��K�'g?ge���213����Ǹ�o`��lKzP6^� �$�$9N���Wvg2�HϏ���CR�ߜa7F�/��3�\8���F�\�/zP��/?������{x��Ӽ�]�������/�^9�@7c�ޥG<Ho~�F��!�6�:�j�*��Nb�lNy����C�cG��d2[d7�W4]�
�5�4i�2���*��h��p�*�9���mYmط��kh"ɋŊ�W�!��A�an��J�|�V�N�c|�u���j+�'���7������('tcnV��d�Uc���)�I╵��8()�K�Ζ9�U'���պ�j��?Vפ@B�O�E�G
,�cC�"Q[b�$�9td҆�=��X� �dL���M���͋��h��~���l�c�.��ж�t�q�?Y'{'ވ�A�cS�V�M�%�kD�
�{Ʀ�X�=�:��*|�ͼe"������~��Ov	;�G_RϞ��\���G�$4<��ie�f3���Ph�H��b0��6ĎU����s����LӨ���Q�|_P�����3�0����D���C��H���,A1^'�M4������]%�EJ53�蕂
+ͪBP�^$R��R
DB+�M-�	�s��b�R�VFeP�;7����I��o��m��^��M����k��++_�����[9K����W��R�vۧ�?f�q2�s��}�X�@y�f��������H�/=�����֯�A~ ��0�̜�xra� GD�v�l�Q���Z\\�D,h�i�J�]&(A/�"Fb��a�ƚ�
��m2�l]��x$��E5x�Ð1x��{�����A�1>^2���_���Be�;b��~�փ)�Ό2�j��� �r�8]'�7��
���� b�C�h�T��d���)�+���mD)���.5�1�-���|Yy���*��o�ڤ�L ���4A她=
��T���@|�X$�in.K�I|�R���@�P����@���P��*���a����k@�۟�������=I��	�=�l����[���ג"�h�X0�QҜf��˒��펖�c�<#9`|cO}$o>e�X<�`,�o���_��K�3�����p�{Y����An[�9�M�
�T(!"��?Z�]�iE�m�Ğ�>�'����{G�t�� ��*~���y���`�'�A�?٘#��)�o�($��ȉەL���vYO1o���_<�/ǐ�M�(���W�藑Q�'^�#0�M|�3}x7t��<��a��@�̻�H�l�1�>���& .�m�v��!*��)$�z��mr��t���(�:���G�G�beV�w�i$C�O1� ���c�Z�Z�<Gc<z��@�:�J-����_`�8���~�چ��M�	���)
uE����sY1�B��7�4w�0�G��5��z��A0�|Р��[��@��V��ܟ�Q�q^@W�r-���U��O���$9'��IBjf`5
�"ѦYx�Z�� �U�O/&83��,�8�k�2�&�� '�?�eEv�$��L`�B�%�=�T��ftF5対8�.���<1=>�0�G� 7z@Jy��~��p)g�,g��YL.$�,�� ��-�<�k��{�y�c*0�2�/q1��������g������K���M&�R<���7xC�y[M�ʛ
#ͺ����Dya���3\��wf�wr�F<G�W>�ĸ��M�]\��N���s�Wݍd�<ӡ���W����064�t�ȴ��v�Ȼ0>ԯ����; ��)f�#�*	�2<�h�� �~'B�w���m�H/��������wqM����o�gC)̵67�#�B�S��>_-[��L|R�R����lQ�}�\T�H)
�9Fa��"^�b�A:�ݳQ4��' �=�sO	���'�@.���Y&8z
�,i7����3y�;���U}p/�I��xV�x��il�F�Z��f���hX�c����.b��B*�|&��|g��e/�k�u��v\_H����b���d�p�G��/�A�}�㬬'�xȜ�Ջ�;�E����
�!W�����j��{���ZI$�z�{O�p�;�x��=׺�q�{�����5�l2�3O��=�@�j�j#�GY�T�n�>�&ެ��#��CBϩ�zLuy���lS�a�a���0�LTv��3��,�2
�sdTr�U}E����l1�z�`Xa*h{�qiuU�\��"L��д@�T��X�RU��Fg�]s���E���5�V0��X��/��u��k�z��B��'ك�J�x����	�Iz����7�������Y��Ε�1t���y���Κ_}��|�xm�[�xJ}z�l��D��V���r��csdsq�v�[��&��`�oU���l�?<j�C�!	OeqB��=�J�\�`��Lr�孈�d1Mh�o�w�ѹKi�ģ�d��*;^ҋ��$��xH���U��U`]G�kC�ꆂ�����O��QS�C��w�o�g~�yG8P�{{H��.$���6�!}d4,q>�`�ll�UMBR��Pe�2�A�1R���H�q��lB�Q���$�W�%��b�hB���ÚV@(?��F��A�Q}<GD�2�:�e@�f�$"�8�ȍF����f��5`��{���K�uv�\��X�+���vj��^4=��03O��(���0-I��fK�R���o���O���i�2�)؆�G�Ǟ
X<�ǘe�l��m��S�\��P��!!�ox�$�+��>dl���+��b���NIM�dT"+�ƌ��o0��`�89����\|5 ޣ�ئ(������y�j�q�m(����<\G�	�2���dT��P��0���$���n��@�
Ē!�X�㺕�����N��kճ�xiki����ݝͨћ"0?�^2�XF�,{s��r_e@V�����y�g����N�_�i����wq�;X��ED��\��b1G��(����Rs���T����<\ډQ���2tT	�;��`���[�,��Ak��K��bDl#�b8�,]�i\����|kC����xLq~r�
�Ά>|�ž�B����a��b�?a��ag3�0����(	j��"F�A*�{ߣ�d�]ř+XH�z�s����Z�S��L�u:��˅�)�Ҳ��n�J�EBnS����>Ħ�����	m�h,�R����T�~}�9,	�/������.��H�~�!���`��E���x��O�ۖ �mwI�l꧴ёUz�z�k*�*|m��*.?���~�
��c��hp��?e�Y�]�*H|̛1���e?�V;	ا	2�PQV���lW6m5O�3'�^���x�,�ҹ�a)T��eU��s10����ft9�����T��{�!��L���@�OL���tǽ!���^�L!t��i ���^��:C��R��	����K��
?2T��Yx�۩Fq#0���
<��hѭ����)���kes�a�T�l��
x����9���d��%+��b8X�Z� ��;g�v8n7�ϻ��a��&�^���o�b{w	OO��7�jϯ�زΞ��,�~��WY��ػqÎz����Voλ�g�'5�(��"ե�
�A�Ӄ[�:��P��|�Ӓ+>��#�2?$Mnd�u�e�S�J%����e؞~��U�q����
�޳�҈z�Rn�п,7��˱������>`�
�/�uFg��Og)P�J�\)X�k VF"��\t����r�#��wE]�s�:Y�#n��8��Lm"6D��
�Vġ�H`Q ௢��ү�QkG�]�<2�N�?����U
��&��|�a���_G܏�}�di�!�:`Ⱦ�����[�\,Y��]J����Ϲߐ���ì~���O���A%>���]��2P�l5p��O��ѐ��[ʀ4O@�¡,�Ҭ���-�,�4��X7�-#?�3��{���M·�C��1�8�a��Y)�M�"k��a�_=4�JqM��?��nh6�k�ɜ��P� 	�2�;�3�g�4ՍZЦө�GZ�k(m�p�v��riZF�}���i:�/��czP��uV�Q9E��&'�/���v��<�2���ۊ����YQ)�j.�HN����11�s��ʗ���؋�{�
��'|�k��lT�%�1�ꪋC���g�QUJ[�'��U�ؔ�̝�ֶ{�81� ��r�n���ҹ��}��
:,�й�6X7����f��e�'
NM�2p|�4��p6��Vn듁p&S=�[- ߞ��~�Nj�I���Y�/c`YAq6�-��Y�30#V~hs��EPT;�u��b6��WD#�N1o>��)Θ��Cx4�$�/jl1�
y�.�/���,���Rr���[YE*GЕ�Km/�|7�����SI��SƗ�q�F��㍹���6��:c�Vs�@��w��+�k�1��c��aí�����w0:Y5�Q�"
���+g"%*�2�t��`�G��ݴ�
�f:hN3�3�^�~<PM��Z�*w�����Ґ�I0�p!"`�PS�L�6
6�O��{&���`(�ۅ���Mq�aP����=P��Z_]��pv�W�{m�h:
�Uu,
A�j9�^��*��7#�C�f��]��gr�{NY��� 5���$�O�e�
Gn��s��$��\�i�`�D�����?�߾;���w���5U�xj~�̦�ܵ����֝�>�yө��)�o)l*��H�-�;���+�|��+[��-��ZG�X�f~<F���_��̝����r�f^R��
߂�4/)+��1La1PEv~�:+L>�M�e�b75���[	�Ho}pi8�;`�$�7��~�Yw�4��RypJ�s�������}�!*Yf�~����W��]�TKV�0Fy��l��$"��\��A��E?���W
,�[b�0q���.�|��x�Z�/�ˁ���]���P*4�$*(����R7��L�&����`goTܑ.�$�V̇�h�U�L�Hn�e��i_�"���o߁��e*mb��D2���u{��ݹш
߶\����ؿ����Z�D�ܚ��
v�z�1Ul��Rl-wk2V�x�Ց;�؀4�00�=ԑx�~޽ګ��o2R�mԔ��=��_��r���Z&�ן/߸�����(��[��C{�%b[f�.��<Nc0G2�ڼj��~H��iDP��ce�|:P�7i�/q���-ڏ���\�b�7R�>�\l$}�V����چU���*B3�l�RPf�	�d�'���<j�E����x���}�6f�s�(İS���e~4�U���)�C1�i�s%C��r�H"�3���؃)	��L[��ө)�mj��U��ٜ"����I��R��6�W3��nP���H����ߛ5Q7s\�@��Sw���RhƄ�eq�܍G0?޽~�ؑZ>���GL������c[�d�N
�%C9�X�<�Q��^i����p,U ȑTÉ�~��U�2('w|�/��B3�����J,�t
���WgLN$� [�V�|޾�v�h0X�X�����<�j�h���j0��{rLNm���[[L�3S�$Y����ʈ~
߇���K������!�QE(؋�����P:&��{�ƼӬ4sœ��WL3A�6�R
iv-7S:�L�3��e���=^�����Ŧ4˳�4�OC��R~ܐ��NK0+c$&3�M����u<:�"Z���,���n2N����EG���%Wթ!`�4ى‡��_��`��}�.�Kq���~�J�k��t��k�S�y*�
��)�I��k$Q��r�q3�T��)A
Rs��=[D�
j9q���v�C�no�KR2�v�)���1d�c}D�2k<9?�];�8����BR)x�ˣ;H�i�}{�74���4Ϗ[��:g�V-}@� ݡ_׀JPz�������X;�)aDJ�?���\#X���r��w�m���A�Ў2\�
�=�69j�R�Lm���.I�eG��R�'��v�$�	P�>5h_
��c�ҠW�?��+��������`ރχ�#C�����B��W'B��~����c�b
���5~}`��A�E((r�{2me5�
t>`v���d,p*=�ϕƼ'�� o�$ݥ�;f�`�̢�t��ɟJ�$��H��Z�K��Ԋ���k�+Lm����R2��1�,�q������F���p�̹-��J%b�����=g�V���^�y���~��׼�0~-P��ת{�ƛB���2X�Z�?�oG!x�n.��}%�}Oo	_�?b�J���N��v�$bl;z��`�&K��x^]"���d�+�geI2����� �B#�(ijNN>SwF�W��|�b�	���W�oW^\q�?��1>BL�/=�iR��,����cykW�Z)�BU����kjy�4X���K��,
3�
�F��9�pK�u���շ����q�@���OAv�yG4����.,m��#D"^�ѣ�8l�QZ��1���C����\�4oJܨ��힊������dD6�h[��|��L�]�V�~�.��:������0z*��HX�,�Ͽ�7��z��U�QN�e.7$:���.��0֣M��j��9�g�{2ڬC���O��墸���N٘�@.��W�1D�z[���[�M%V�5�r!4&U�r�
s�7%y�N�J(?�nYm�"T�C�Mmr�.�ݴ{bSNT��]*}�v`������1�^H����v�No�UۆAS6W�Oىe[(��B�͝�to1bϫZH��{���~�N�}Vˋٹo��<�>#��o���TFD"�%7�3���.�(?�f������]��`!��������1%U��qL:蜧�ϸ|��@8'�+��V��Wu۠��0��} +T/��Qn���l�~�c��{�p��a�=��V:#vm��~���1���t	0�SPH�]�/�j�g/!���{/�c �j���h���[�=�U�@ʍq�Ig6�M������mq�%Y8�dc�`"��X�t�������>�"��{��ri���P�O?��0=�/�9��F�nV}�OY[՜���"I��
�{GEz	`)Ӈr���OoK�Y꺧�S����4;�������L'�>�c���N@����8 �ʋ�{삕zb�8_xV������(X"]Δ�ěM6w�,�f�gf��+͜)T��JUt>
-�]z}�o�*�mGŶ�1�S��<����۵��&��:��Q�z�H��j��l�j��L�
�F,����a�Y�"'Lˬ�ɴ��bJp{���6�ի�h���]��m�
�E�=��~��f���Fv���E�`EWinux�8!GVY�??7K^�+�[2���%_�mw�s�Z���MZ?�v�l���9��f��O��{���,�'9�/}
T}�����6��V�zô�vU�[��dT,_u�V���E�+B:�x��a�Y.L4�r�P�1�"��n��j[)Xs�54��� �4s�S�6����{�(,�kW���
�:Dm�3����/
�T�*���z'�1�o�'3��o�w|Ћ��=�Y�<
a�D�m�?F_�Y3�f^�L�f�f'@�&M7�F0{���G���T�B����/�f��zqc�].L.I�n^����W�k��(�h��c�!Ȝ��|�%�?%��\��6�Q��n*��0��'�'����W�hĩ�=��ŝL��CgR񛙌��9V��玫؛A�ӚT�Q��y�č&i�٣h���QJ,#�|d驺z���|yYH�����{�FI%��O���RD�&�k�'�	��(����k�ͷ_�u�XT��4�J�o���tǠ��`X����l�/��-�ԩ����
TBIj�ԛ/�
��J�n0,�ħXB��U��H�h�Fe�%�6�%�/���:&zLl�dKT��
�^�Gv͊��SA4�:�D�I����ʯ���<��!.�1?nT���zhԓ尵�Z�B�����Cn���I������~+��sm�8�T��=f!c�(�KH���S���H7!L�S�.D�4�$��~]��ٴa�G��s�iK7���"dϸ}�����|�{���ܰQ�7�r-�y����̂z�RaV�]v4t��������2�����-��讨YD�ی�S�@�%_�B(F���Hke%&5��='�jF,�����G��oW�9�;�(�ڤ���X�3z`�f�M��<�~�1��bR�6t��0l�u�F���Ij˯���Jo��I�q���Ĵ(��cǘ�U��@���Ѣ#e�&��V������y(�	�{̧Ku���WKe��Z
^>(wDI���߹}x��
��ƺ�5�gY�G2�2��&���sσ!q��\	�������C�P%U�
fb���S����'�H�Lbi�,�s��F���6���7߼D�
�g̣oGa)j�S-&�>7��y���CCΖi�]MR���A��0��
Kf��F=z��gg��tf�7Kx �[��L^.[��ԭ>�Z�c�7���36�c͗��q��w��*CC�V<��])E��9��)�ϛ�0l�SM�.$�bAS��Hib%z�qݓV��޷ʀ7�+8�{
\�H�A�Z#[�8��0�*��r[-�swn�xP+HEl���Y./�k6wKb�?�8�8G�I.�u���r޼�l9�Eiޜ����`�"�ƃ���ȇ�˺�&v��I��բu*J\[�^en�Q%j	?{�nW+��1��Z���C��	�$��3��!��6���/�SG� @�4ΌE�!�Rd�8hg?��J~���u?Zi��D��4��K{j%)�'�x��Ma��YvkEt�,l���c:��w�Xk||2��$�.Ey�=x��*-LM��_���xC���{�t��4.��<�P�r�͙��s�1��/��N8�uu��.ӿS�_r�j�]�\���av^�����s��Q��ZŜ�-��D�u�S��g�6����{${�r�2����5�>���,	��hc�b�J֊�?${ou�o>ͨ��vCl��(��<�/0�x�(D'aԧ�R�0��"�o@����>N�9ߖQ�]��}��3�(� z^)(Үe�}E1\�p�B�(y��f̷�H����Y��/HI��;,���q«=���d��<zl�hi f|A��f�g]y\��:e���}���կ�F��M�.M�-L�C��E�f麬��u��\Q(K�ۄ�Rj���R�Ǐ��/��[��uTOb��D;Cطc�E���E�TSq��h3d��-{�fXp���6��h]���V�Ha3<���v��J@X�����M�zdR�Lb�3��/�����dz�"���?Ԁg�:D_���P��7���_٠�Sc}����ߨ�ʕ�0�$��0��s���MG%^��X��5��Tn;���>&T�<��)3SfV1��ړ'���vh���D���n�$4n���'�r}b0��D�xo�V���U�JgIN����}��4��/��|ߥ\��$M��y��"�j�}j����ib�!�NӽSB�v�C9�wp�7}��5�����q2�Ѫ��Ҵ�UÍ�,��鼁I��}�;��Y͜ȝ�DJm[���O��sޥ$Fl�X��~�=/_��S�L��J���&��^(
qwv#��	�꒎��.�P���:bB��fV�2q�gn�ٙ��l8VӅ��b��0�aG-OTlO=A�f��W�O׭OJ��{��̑Ͳ�g�� k:���I��3��*z�A$���̊k�P
�`��n�FGx)�G�RPE%�5�\�}������3۵Ruu��W�-�������2�����G��������%v�oM���k x��B�uF��N7ׂkV)12�dB!4
��.
��N�8O,f����2TiV
u����d�L��zy���u�g��’�;�Ks�'^���y+�7UUO���B��ж�+�$�%O�9elե*��c@��F��c6gg�MU_�~1f��v�V�5
��-V
��0�� )_D�{��Գb1�#Q|�k�9=�?���Po���c�s��$&��}�BoWT��"M���=�Dy$,I��N,چ�	w�I�x�E���6��x�n�C�C-���,�ϕ��̲Y
:�y�~��ʝ�،��=Y���c�,Txe�qU�k���*O��Tq�\�E���*��/ؒ/��NS�Uf:��b��?�ī�H�t$ٶUfu��dH"��$�2kQ�/���WiX���N��x
�r6���_y{?2�ڽ��C~{���u�8�|�܁�Sf��+��{��3�0`�wbcC���Q��+zƪ\T�-�{�]��ξ6�Ѯ�c�?�8�Z~|�&�e��D��9qW�2R,Y+���y<`Ow�A�bz6|�]�:q��Z�O�V�gM��̥ic�kJ�0�=,������4�,am"����RC#��,c�f���Z6RcG�Ţ:�)e�		���eI��r6.��Z;��P�+O�)��$\�wI�V��(h�`z�{%�fp��xl	}�o��nr
��7�%ӧ��{��
��x�m���1o��i��q�� J���O��'V!��"��=�$

ї4��KS�+���&Z�ۙ��'�憥Y���^��e���~���}�,��x'"s�o߮d����߽}{.�k���TJY;ff��j�KV���B�+�j��qM�WL�"�e�/�׶�߻Yf����xw�I��:k�I��q.��Dz�dLWim��]ɗ���]
f��)�B��{l�ֻ��`�j�~�ކ��;ā;~�7��-zA����X�'��tb����WO�.��$�GS0R��a�#�Q���P�O�|�P[����%`C)c���"�ͽdD1�xp_s*5�ac<�v��P��c�q`{D8�Shv��i ���W�	��w�pk���R|��O�2/n�@�6M��R�իB|��\Un��^�l�s���=[{���A�?��zJ_R6��SA���	�������o���wn���~��GK+�(uhK�7���,���H��⺔���Q��/��,���Z��y�(NZ��y
����ɧ���e+u�h�C�<�/�,s	wy��#�j��I��诵�{�Ҏ����,ٿ�%�`S"[;��_~`!>�]�܎*��t]8J�u׷�uO�
��աH>��h�Lkq7g��R2�,ʪ��Z]�|��$�CZ���m
������q�X��	�LrS���Kb��홞���%H���/���w�>G�9�(|�v�v�NnNvX
N
Ѐ`p�����+�{(��u\� s��Q��p�ݨ3��q�\��͟��$�ﵧ�;Q�Sřz��[jl	�6n� 8�DT�}��㔨�P�E	%��BW�ح�Y�w��.�����!����/^�mdSZ~j=�*Qgd�⨎�0t���]�����q�-�.P�JBp��1	�ث��at�l�/���y�p�q�{~��TOH���6���	u�N���wY�|�
A�Vr��wDh4Kk���+
�/�@
@��O�����J��ZB1[�?l{�JՊ���q�9Pv�oY6�CJ������������$���H`7Ei���)*eK��؂Y8��{V���)b��pNv/A�%�;�uh�(w̃�l}�*�4�y|uV:&�*P;L�Q���g*}O��W;xT�!���F�[���o�
l���*�����K��K��Uv�ܼƌ٫NY4�$Gd+�3�$K�VZ���F&FuR��j.GN��ۖ�5ƴ�revv�v���Ȭ2M��C[�)�|��eGyb�{�)ڻ���.I{l�1����C��e�sZ�t��h��ɻ�RæGp��7?��(�d��W�^=�

���&�f�V��͞�iϟ\���G��6$��$��uP=o�u87����[�%>`<�.��$�Mtӗ�B)G�jS�Q���Ud�`��S�"��3��ɽ�}Mױ�Tth?�7���]�����i�EH���zş��|�-���td���ۑ,�:�D�����j7l��D6٧-�����+�}ZU4�^��xO�ݼ��f��QH����U;"I{�)��1��Z���.����@�2󄖩b+q�z�V��s^�>��V[ŵ���-5�v�����]蚮���c��"��"f���\�߬��<�ۋcy��#��Qj�6dr#�ȑ���J��4l�O���(y��N��}$m�[�-�|�Ԉ*��S�\�ќ��臉@��@
���ie'�m��'q$��s'B���੻A��d�)��.�*	�_y��#z_Ы_����{��_a�_=+䊒ӌϞ'P�ܺw
G�J��l.���r�q�Z�vD(�DCG�&�C�ر�!��=�ǣz4���v(�$;�{�2 @�iǘ�u��pc�E��
	hh	s��>
��L�^�f�ڻw�
TWޟ��R�
�/_�I�Ħ�M'B.���,P�-�H�j)��%P����Dp2��^�^w�`K֫�K�Pa>ξ﫥jϨg�)�KS��ټ�dGFYG�$����X`�7%�Ҁc�K��QO����"BաB�'��^.�`"�;�G����leԒ�O^l��:�Q�>�45e�=[7$z�����i��F�\*B�'ǝ�A�ko����MFc�������3|�Ӭ%v�>!���]�€����'!	��}:xi�/�xcR�^W��I������C��z��_`~c���V��Fvf�]5On��C��?��ҷ�7�9��']�/g}��փi��UIȃ��O�t��̒�?��k���:����[��>TSi������E<7�E-�N	ؐw;�mD��u���[�����z�+9��g_PO$��UYN��[�#j���I&���3�\e4n����)Rvcx�/�V�C�?�K�����g{G��X����"b��(�6��ʛ�|����	R�r�I���&�-Nձ��*�?��2BpEYP�[��.���r?�gO�h��/%l�RO�E�
�f N=d&�u_qb�?X°��f:��J/��}?(u�6����P�"��L~�iV-�g1��YBg�	�����}H�K2�4鵖r)�ۡ�#|ti�@@��J�R[��k
x����cE^����I2߸�dVo�qP���kZa2��H�/�=(�c[lW%i����cX�c���hP�q���6�c�M�?�}iSh�Rm��]��6;���?'����B}g��M�m��Ǟ���Cj,v���Ա��>����G��+zYl?G�ܦ*{��.�m7�A�T�^1D�"�;R�Ur��"bh��lqw$���/gy�R�mZp�%�0B�ϝ#4�b���\q0n�	�N]M�<�q��N��{Ԉ��h�@��1?��~�t����6͜��T��k���̆ҙ҇�\M�|�t �5O<4> J�}��,�QrQ*ͯ��A\'�)yz�'�KdخD��Wdi�@gzu'1\}�^q���I<>e^�h)�Q*��lz�B�l?g�������G��Z���0`��~���9�<!:���+��xۣ""p�[�W�}��"�Y|ʒ��>�/ie+U�r�W���Ws6
�g�*�D}�z�yn+ህwUӋ։��f�G�%!���L[#��"�h2�fmh��|Fqb}*�H��#z���nV˴��]�xA �1����m��k�
	ׂV|=�@�=��OB�z�P�d��5Vrl$���ZՄ8����8^Ϗ�qp(:A6J5PY2		èV��'G����pe�᝭\��hj���p�1a���w�ʓS�A$�|�H��E#7ч����|��p��*���
�`�D]Z�B-��\6�iWẍG������GG��׮~�Y�J��T7Mq^��#�0����õq������b�0�KVot�[
�Ֆm^�k k��-d�p�ݟ��^J��d�3��ݕF�F�T�Ϻۗ�9o�\S�8��qk�"�σxL_:��P��Lh��0!��iˌ�{��8�:���zE
 �Oy���/�l
,)�G�����q��Q��R�`��\J�>[����ip&Հ@�����
��$��:�Q8���Bt:@`{>���'�a�ޝu9��9�'��L�cи�đHh��d͞���YG�f�������/�	N�=�Sf�0T�;WJ&� �I�2����31��kÉr`��}��A̶���������d���@\q-�9(�B�,vѣ�ALX�q�H[�!�f�-t|����n�PΤR^�b����GO�f�=+����h���W�D;Kf�x1��^U�]�3�@j�K8{V�. "k5���h�G¾�pC鹒�*�6i��S+п�u4495�dj�+��Kk��Nq�B��M�++?{�2M��NJV�u�90�$#dV�/�,)��
Ak0�Ƃ^����F�ߛ����n������<%��J�����vq$������d	@�ww��?��R��s�
D1�F-�_�E1}�zc�ƝZ�h��[����$��&DWx&fe�%�� ~)	~��XL�t˛�҅��JK�//(�F[�KY=;��ؕb����~$Vd�]��8��|��bJ�):v ���3R�R�Q��}˺�O��	k�UP��}��SV����xsQ�ro���3��z�2�F���'֯���nN?��{"]�1B+�յ�
�;*�
���eO]���-��N~���2�̜�u%l�(Z�����b�9M�h]Z3')�9�#�>�*�<c�;�Ԛ}l>�%�)�V`leY�.5*���D~�-��d5J��Z�!Q��Ӧ�^fP��/fj��T�X��X&(f!�Ý^�g/j<	�/��륃S'J֓5�V^	���ߟ��^�m�{��2��;��
0i7$�&⩵�ӵ�����XEOS��x�5DZ�يt"�h��v�_C���S���~A$�<�@���f�\;S�a�)��6C��_���Ίg0(4i-k�<
#5t�\CC��h�>;�!`���� 3��-�6�ht�D]�S�eN����
�}�}�����"����#Qn����`F:��>�79$lV��e~���̈Ja�%��q~�ܣ�˴��^l�C��
f+/����eBa��<�'� \*F�C�;��|�c
��ڀ�N��f�!�L2i~�<[
����p�&�ѕA�kn�n��r�틧���n&�fvnjn�-��2�5(!�������rC~��D���"`\T�'j	��P`�0i�O͚�F�krf�uə��کj\'�3�!B�IEl�Q?��m12<T���R礥|�X}���v��f�*�?_�K|IY������{�%m`*5�D���`��N��9$#�c�����z�K����t�؀d��k؁�7��[�3�z�ܐ,����b<�|S<�~غ-VE�l̤��iA@O[��.5>�pQ����e�>��R�w�تD�.ۋ���
XN#�'N���jj��о4�!��tK_���f�R��!@棼C�J-�ja�H*�����N��p�@w�V�[;��
��➄s�q���H��l��ڜA�?�y�	"�j�!���<�U�?�h����k�1��oa޻���e�8S��1�Н䋄��!���9�h��I
��B��
9K�o_([f0���o!����31�C���;X�Ih$�ɀ禹@��@0Wl
�]�&)s6��4w�Y�3c.��Mg^��1���O�qs#Ms�3ZNLMi�}���
�9�U�~��x~{�$6���F�ɬQ�Ei�2Wv�YF�A��Vl�����VDXer�(���Z�e���Ͱ�3)��\t��5\^�"r�Ш�s�
�w�P�5��f7�N�K$f��^q{�"L���]��z`@��DQh���6f���~h�G�5�uU7G�����~�
���.�#3�P��TV�!�n���ژPf6�Չ>l�6	9@�Җ������5Ϛ62�t@7
��L��2	�� t���'ԯ�bH���Լ�w��Wf��Ɋ7=��.=bx
%d?
���a��� �9�e�p����H�ҩK��\��ۏ������$����C%�0����
������ntv��:��M�`᳑B���asp�&)"-qc���	��@�I����bk������3eP�F8��ZmUL(�(qP05�n'���C���V���i��������j���ɿX?q�g^:ӛ�[[P�V8�����6��=Iɉ(�c�G���@���Lb!l�l��8߬Mv���vVb�q�~��/���%�Ii����҂ϡ֣T�=�!B��PS:�m�u�v��P��s�ϥ�;����Z|s,G��:��pH���g��Vu��ZR>f��@��e⋮@F�<6�Ͳ�.��L�
�/�)�X�3"LN>�^�m��w'����>��\�C<��C�Kb`�(.��u�ְ����T�'� �o���MG�{x�$
v��9�
�|�F���x�ʀa@QI�֧�'�=�z|Q�o�^B�f��,�Zf�W�4�#�4��y�I���9#��5ZڭE���2�p�'��B��~���U�j}ۣWwE�`�	
m�'?�!�@ ��C 2C���pc��lݻOš�{(�C2��kC����k��'�U�"��C?�T�Q^��ڝ��kK��m�3��m��$�۝��ͮ��]�<i(Q&wldmY�1� s��3�hOJ����:�N�I��7N��$�zڸ��##ot4zϊ�p��驚�0��k�x�ȬU����ÜF~:(|�B�����n��m�	`N-���d�l��9�/\T�&1����9�V<vn�:};B+ׇd�S�\H���l5� j���fe_�����Ńa�8��||g���x��WF�i��%C�F#�Mk��1����wJ%"�\Ӿ7����R
��6�;�{<�UK�9`�;$�Ѿ�<�{b�a*MwfԱ���O_�g�2��Ej�]V��4�X�*��g�S0�K���c��A��T�P�ݏ�`~�e?�F�[��n�jX�nر�U��5Z �"��p�ss���41�@�����Gi�<J��<{��z���ޢM�}�a��!Be:�܍o�`-�C\�.yk��$��exdz�N�H���(���_����!�KF���otvW��w-��s�L�>��]9b�	�Jn�)sn�t_���_xEK��D� ��B	�$gY�A�V>g$�%L�0L#��{&Ν��Ftd�\��P�=��a4��
�8"�<ܝ��s�L^^N���Ec��v���H-_>���֋��;|+�c��!�������8�O/�.规��Jn�8�&�,���%�s�t�]6(k�H6��Fq#(ۉ[�y����{��0(�^��ֿ�b��ף�Ŭ�����������&f��zCqI���<Μ$��((h\�ED�C�������c_�x�/��E�.:���i^��+�Ο�1צ��҂Ji4@`l�xN�L$搘6��T���.��?���4]�X�1h|}g8<1Ȥ<�@K��/��/��5�p�ל�o��t��p�a j�t�bE��E�y��&Ц4`د���$�L���"����Jvi��l�j�Z%=')��8�e���`8�T����*�M�8���.������w�~��\(H�t�vr�"jDo�GG
�i���lHe��%ia&9�d���d>�-i
�lM�ܰ��TA�$��VHG|��
�$��:�1Rs\�Z $�Pj�ۇ��]ً�g�8`簆 �zߒ��V�X��ݕx�rtX/�A�p�2�^[1~R{�뚬���ɇ�:kCU'5n��%�'�CXP06G�ۮ��l[�<�N�scOFeQ��-�gi$�RN���o7�Wz�
_t��"?�z<Q��l&��B,5�"�}\��i^�|}��R�����l;$��ѻ�'dxw��A*�ͺ1_w�f$or�w�V�$
��T�Hi�����L����lVc\����7O슚��ŹR�D)�]��B����=3���qF�MM��ȓ�B�g����
�OM[�԰`�W[pBΉt��i�\��`�{X���/)�ƩcD�R��Pvz�x��49H�_��ه�#�1��&��P�/��֡��&�U��u���)��l9�Э�:!�}ɑ�=[�*��;����u{����.��p��"�!��,��|v�nN�K�63ud>��6����y/H�}���ё�{qL���$��
��-���a��[���st�nS�n2�ğ�@���ѷ�����xHNp�������2���&��3	�����f��x�)�WP'h�7f�>�� �s!�;�p��&Q����cN>OgdH�E�1u	{��^�گ�V�}���2�@�J�H�S��>!~��L�^d	��r��5/��GyNW�-�`����ɚLJ��=��(R�V2�ȏ�M;�:�-��A0<Ȥ	L�1L<F(�J��L��Cl�Y���N��_7�:*�\8͏�w��
d5'L�����H�s5M �2ID�%��WP\pyr�~��ҍ�)qN0�E�|)�(�@��(";�JGZ�!���U��,WL�#E׬�E�����O5.K��������Slso��z�d�7��ӳ;%n<�5�*���iu���?o��mI��"m��.�XL���F������r��s������
8�!���{N�c�yٗ����Nf��2�!�n"5hU�F��J'�d�B�2��sv5�	�����C�r>~.���ܤ�kg��LinN�d����u'����f]��B�sL��A�5S�h�K�v�vn-�_e�9e�V"m���B:�GΫ�x�c�ZX
���o��y����HKgT�~cN¸���OZK:�b�A�%9C	]��o�ʗ����w�1��)(�t��^�?��u�Ʀ�-A���9�����9N�لL����#�A2Yu����5��/_=fql��j���އ���ˡ?u��Ar�Z����]�A�X _�v�M��1V��&P\���6X��2��m7䥱[lҏ'�A��Q6R�S�Q}�딭S��e���S\D-wLrTC]�ӎorly�݂X���J^fo�-���˰��(�X3�R>\�#�	9��VP饘QՐۑ,a�e���X�#�*���gV�Tnq���GL�(��Z)�o�M�i��!#Z��H.��$�ɀW�����\�p���*ȶ��/��.g��y 9��L2��p�(�#Z-)i�����j��jԭ=�0b���`n�0�a]�k2�I)�X�E�8f�nD�η�%8�CS.�o��ě�Ng�'d�p�-��J�=a���Y<l��Ǡ�OYdb�Hl_LC
^]����o����>�ɹب��Nk�Y	��Ե=�����f��N���H�^�����f�<���(|�E��(SL��\���>�u�4vdN��~�HN��[�nD���eh/ڈ(2�1�he_ʔQnV=�C��H�E��gi~�%�B��15���czŕv
�>a�Y��%�e�&c!��pIB
�8г]~A-l�64�1���/�[\\ZI�
T4�W���aa8'l��xRY��N�e��j3:��-:G��6�v��ad$$`�M,ܔC�z�3�!q�1�����]Ӌ��n#x��B����l]��K�^�t����_@Y�u�gS��k��]�OƤ�&v:��N��a�L�ewɋ��-hY}:��xi O� ��x|+^�ñ�Cq%��]{[[�q"�	�x@L�upՔ��j����-��[=�����ئ�\�e��jq[�%��^W���'�Hj�y�c��%J8�Imx���=�C/�].&�w4�D��,Ƙ��3���"�z���`�U���
|M:3Qc!�_ǣ��W(Wj���q��S�#f(G4GޗI>�����n�ڄE��٩����^�����˗��<D$>n�HG[�M�'�C�&�Ǹ'o�rUm�����N��ݾwJ?��6�\A<��N���ZK5�D�)����Hi=�i�qlS��:�B2�&yY��^�bخu}�Y+lc��Z�mL��%9��s��̪Y�O�1�ߺYD2L�
���ʢ%���c+7�V�_.rsIq
pש�� >�bG�Nz�Ž2�q�X��D�I��a����'H�V�T��으���E�t�|��G�3�(
oOtrJl�s<�;���3)YQ��`gw�8"o�&��7>�cѭ��^��@&��t�T�}g��$�}��0h�h�)�GT���s��y4r��
 o�
M�H;Φw�~|� !(���������ad�"	���-sQg#�,1M��|��/�u�h�R���-�.k$G�K,݅1a=a���YP�A�,q�%!�
ONzvN6�^��>��ƬA�v�J�F�ӽ�)��
/���ުl̒�B3GM��'[�,n\��\k�ѣ
m1�hm�o�>!����jM0C <����埵��ߎ\������`K|_xN�`ǀ���pWJ�jHL�M�<��_���=����C��M@Wޅ�%ꉷ��dž���f���%�Mn�p�Z�3�@>'�M��d
�Y�,BT��u��J�:����o>��b^չ�ȑ�ދGx��_W�`�H��"=�ϟ��z&=�@�%ӌH���qi�x�DH�Xx�jꄯK |@QT��P��+�:u�c�}О�T�����B5�ڨ�81��hȩ����a��Fu�XLc[�nNרxtN�D�X��*N8������s7�|����2
�R{>}78��.��G���yՂ��Og�#�Q���q�'�g
�f����K�Y��`�9�h�2�„�6�$}�� ��(�T?��}A�`�7�8��LHFR�G�
E�FJXw!S�K�r���@EKa��2�'��ʌ�%v[؟[7��S�F�j��j��[5�h�Mt,���^���i#��Co���q§�Z�e���t��e�Wi�����p_�t��^*>����Vlh�Z�Q�jX��B�㨪�9�q7�@������'������[=e��H+^ї����a/�G�6�z�<�6)yж��DH�wF����v�2nF�)%�d�����.�)��ەP6^÷r	��{�h��<�L�?�Ih.�����dht[$���]	��fŘ�9&4.�;�s;�B�����
�k�����~�>�j)ϰy"T�㝼j�MU��d΂M�ݱ��[��D�g4{+�ݝ���:�<�9q���A��w	L}��A=£6�۠ev��Au�+U�_��Q�3f�?���R�\�0R�
�R^ �,���V�w��W����2�`A	�v�G�<9��4nX;�?��?�*uV0�����{[4"��΂,���qӼ��<��RK�+���k5�WxcF��PO�=*��;E����D�~��:�	�m\A��p�����\XX�d����+�Hk6��Zb���WsX�/��$_��Q��Z_���hh�L�u|��8�
	���Z����}�IH�:ƋoK}��
�a/-�k��xVq0��r��LC�_�D6h&軓S�q}pߨ�=��~38���^x�Sߡc���8Um��e~7����VUZ�:�vƯ�[m�>���?�
��p}�_�gKB���_
%�_�g=�Ih|.ݥą�V^1䓺0	"{��7��m�s�9�ꛦ���B��N��I�p��i{
]J� ��:M����y�%��u�����G��Vց����kk<o)�{<O�GJץ�xCNj3-˪���W-739�Bƒ(T
`�P���X�i��wQ�:����6�)"S #�-��,�"v	��\��d~n��2rr2Ob�6�[�T���
R�Kc�Y�犋��4c]�>����py��jp:G]�Z����$0
��_�N+M7�Y2l
@x��6q��	��4���59O�Т�}T��r�f5��2�k t�߲�}�p�U\�ur����sVl�ת�a���޲�
}Vm���~3�gm���,\7m}�-���*�,EH�q�$Yx�=E���_V'��C��R�i�ND��9���/Cb����x��@8`�2I̪,!���f݄�nE��8�b�+Q��2쪘�CZ^?G��Vf��砱��(B��Ie�+�9��:
A���
��v����4�RB�H �z�ѳy�|�x���֣�W?�E�t��FO�ܔ�c��=��1E�$V(T��}�rY�!HhQ!.F/
d���իG���0����;j86t��������	8��y��QG��/Z��a3=
���O����_�ؤJ��Pג�I�Rs�Z=��|ڼA#������#�su��曻;.�����.t�ש:�KIT'�6���m7��"�:���s�b�q�yL�@Z,Y�	bg����,���n����{O�;]�ɪ!_�"=c�Ӻ���dij�2�G�B�X�$���|��i�!���*nT�%��;�*���^3�/c�E��s�4��CwLj})���<(��YpHw���W�^��HL�-v��p��đ@w��Пp�̹�U�K����>1뷀��L˾�f�0p��Ύ�=�_��!	9�q�[���ƭ��t�-c\
�	@�q�]���CAJ��p�Pao|y�lN��{F��*3�F��xLTv���0ԛV,�������jH�A(\���x�����xtP�
���R�^����S��h"�H��Jn#_p�.�$���s2�i��B����{T�uZKt\�LI�%���*���P�={�b�"U�Q�"V�R}	>Z������ŊN��Vݮ�-�J��hσ��
�^����;��FQ��,*+�"�"�00)�:;:V��P8*e(7�Jl�����0oHe^Ɗ��y%�`��4��Y�[eX}�6K�J˩���^#<ɝ��I�_/�23-@�l�4��`��P�=�K&=.)��՜XvL���f�o���BG]ޮ��+��؂Py��I�n�V`�k-~S��d��d��cU��.�gƗ'� 1N����0P!��ί��H��]Hf��[�Z�x���\.� ��+�\_4b��Ov�����#������v!�l�,�x<�DxIN-F��e,/�\m���d�Py��Ir��ǐ&$�G�K�K��և1�q�zG�!����A��38�̍�97U;ȴVe�g ��݌�L��ΐo�tp�R<s��k0U�-������=C���C����WjA����Oi�ퟌ��il0Gtc=T�	�u5�<ل�'M�>#��
�A�D���䶅�)�m�"Ǜ�X!-�Μa�R�����_��});�;6��П�(��o:֔�qC^��Ǖ��۵�A=�z�O�b�	�d�~���������hz�n/J~�ǪŤzS�,J��J#2ŭ��i�Z~_�{c��]o�bR:�v:��?e?	tZ]ָ�ՠ�gժMk�&�zz�q��%�UCW\Y�ڻes���7iv����Z�d��T�V�Q�C�$mČk�i�w�ƿ#��;�̋�	%y�G�8@5:yq)���|⌬N��=������Bց�^\��S�8]�]�?{��rW����[-�+W�q�)^2���-��KK�0g4�LҼ�&O��SP�d���Ş-m���>����n�x�QyY崎b��y�CQ����A��)��B��D`<`���������7����%f"�Y����>���ШG]�T}�_�����T�,a���^&xԠ���,v�4�EpW�¶��S�A�N�Ⅽgj�)����&��d��5�4��(���$���sD�Bݦx��O�h�XQ��L�w��`�q�nP�sT�s��'@�Tz��,�2��J�*njވ�4_�}3�����י�j�ҫ-�%i����
����P�O�F?��kjS�#�G�'��p�1��J�m�b���a[�2��?kKq��!��@-^Y97�*��o0�i�M�l�=�ߺ��������(�7g���_��Ǚ�W�أ��..��
�p���k�����#��c]@��q�o�s]�vK��i]�C+�K6�-�/'S���{V��F#pƦuO&��g�z��u��t��xeL�.��v�s�Mf�џ@/��)�u����A�)0!۽�)/Y���_$mU?S^�	Gq����Vċj.v���UH��0��mǕ��*3����bt3����(��$F#��P�hzZ���o��\��d�沠pmL�~�Ljb�mmK���	�qsN�"Q_Qh9�	-��㳟CU�џ��O�=ކ�y�5��Yk�����N.eu�i�#u��ڒࠠ���p�*��!��C_߻3��Q�p�azm�g�-���	�-���k
8��Z��莧�YP�d�M����`TG���hѤ]:�d���VN�vc�W:w��|kҁ.:ӫ�O�ڑs�w pT����%z΁ه�*�0)��A&3��PPQ_i.�-Z�!���%�Tt���f3�k״�+��f���6������6mP�яH4�ׇ��2��
�umMCͥ�pm*Y˭���9�_����J[���.9��&��,r�H�i߃8Ʌ��a������[�N�n��<�CrxL��r�J2�vc��>x�	�����J�#u��:nY���}l�z�Ӯ��^Y;���z��Ӊ�1�`7z�v/��_眓��{��='T� `Jټ]�ȇU�)K{v�[���՝y�`�-0-�?���^����[�mSƐ�=�O#_D���q�q�mR0���)�
i�bJ��}���<�w�o�a�6�[����^D���Zz`����̶.D�K���=b�	����b��l�޲w헂M���7dֆ������#wQ]!���˘��g1}BJ�9�����Ԏ�I��=CVR��%�L�MU�]C(�+#O�1Q�dj�2��~&�B'٩p��c�Q�4�1#���qʸL��̮�L�➒��GZt*j�I�`��Q���/�HJe�l���豎���x[0�D�֌1�STK�af�;���3`L��}�{اJ&5������J�^����G������&���x��%n�q##�G��7���p(/8����ʶJGy���8�?�����+>I�����克W�T�m
Aj��/b����YFNG�uc����\�����:�i%���fU,p�I�p ��^y���B�cx�2�����
Vb�6N�d�ٍәT���l�W�{tĈT{��S/�Q�Y��K���7��#��pQcGo���g�Q��G?e<���t���J���8�3�Y��ި�F^:�̊�|�ʚ8`r}�Q�hF�4�뢺j"�:k�2;k��.,�&��z�TIF�Ty�=�K��;�pr$�Ѳ�8f_��TIV[��[�ź`���.N0�U���8IY��
�D5�7�o-
!�mv9��\/�KR����!���6���b��\�+'I�e/��a��Fzͷ��{���P|�w��4ej-��t�۠^�\�SK�+'�J�R��S�f����4��Ԗ+�e���"Ӄ�j\��ʌ�E�.�>p���!�\�B���}vچN!"f���R�0r�G�߻�*�� ����/J����6�M���n���~��}}<��o���lϸ�p�f%��n~��W�X�U�lA!�ˍ!ӫ��8�iD*�z3��@��EYo�J�N�C8f���,�R	�Ə�m�w�E��(�i�wL��e��7�xЬ���2��Lz� B��,�'\n@Oޤl�o<i���YU��ʣ�:�8��p�u��Z�8�&>�s4PcX�Y��������}t�p�-�	��yC&��z���
Z`7�)�<i���6Oggtx�
hTI�w1a�r���3;e����0t����Ysmv�YE����{)�K���Yh�&�ۑǶ��X����>T)�0�jJ���ׯ�$7
�����۷o�Uck��w��Y;8��>���+g�6w&$�>ނu���>�
�VZ�J�����g�˿�=���>O��i�]@����QY������O�����ƽAI�N%F(��Y�9�9��J�C4�Q@J���9��u�3p=�0A��1
��,^�>�(��HR��Bx��Lԇ�j-���a�p3���7ub�NV4|u��砋ale��z���J@��5���y�C�Q@RRq�O���</�&�IG&-p@_S/�mn�����c��Z5;�<y	��/骞P��e ��������P.Wk�Y�D4�<�A������NǬ��i�D��N$�7 �.� �+�gI�g��:�#?ḤPuG�q+5<(��ڮ-H�JD����U1&g�ξ#Y�#}ă��-�s�<I�ʹ�`�{6p�S���uA�mm�G�p<��s�Oic0ʶ�u�����f�5o#������.�o]�l�<(I�Ֆ+� [D-���d���qꝻ�)�<UPqyoQ^49K�#	*���%^��"Vv�*-���s�y1"N�!�4��\U$џʋ[��M}�ߑO�r=��K-�
��82I��+��(�Ydmh����La��$U�T��
��C�(����' H(x��
��=��<XU��Q�����L)FM��^�>�¼�p����1�B��j�*�O��|O�,������0�߰�ʹн�,u����
�Hs�5��IJ��R���(���+��F�L�?Fh#~J��1�������p)O"�-J��q
�Ƀ7�u6��(ۄ������!P@��>Á1�
�&'�s3�ه�X,�9Y�|�s��A�CEvp�|̺%��3�7�_*xC��8�
<�"�'"G�����!�£���V�볩�s�&<6D-m�������t�t�z�q5��"m����J���}_�(^�m�'V����s�۴F�>}*s�V�Ӈ"����m��������9oq�����{��o��!<�]w�@a�#a���Y�Y}i����|#�r��\��I�_ߙ�W+��"푎��Nܞ�0�|��9�8�ֽ
.�yf����n�sˡ�b���~p*5E#�s
�vN�9>�c���QG�!�Ú��8��Њ�y�6&���-2�~Q����[�aṖ��о)5�����_[��z�_i�t���b(߭O��=�C/�����P4?9�T�,�1��լ��9��"�f���P]S���Ԝ(0v4�s�Jsb��nQ�{��}�#�@����ɏ���U����^��R+�/6�'
������Kh��-��F�s�5�X��ޖX�yXQ�3����
����WK���b"��&�â�{�[�m�p��Z���ֶ/ʲ��Z[��Z-l$�N�e�WHW�M�_�
Vӧ�x�s�䀱X
)���o�C&�6�l�ktIp��].@?wS���h�s-�$�9��n�P[������p�Y�ӲG�:������E�t����b&�<
�E�_���p�0Jtz�X��B����.R��
.E��Ď��u-0OSBþm	���Ǣ�����]v��d�`��ÝX�P���[
��V�C�4O�������0&z��u��4�&��E�ʙ't�A��B��%�+�DˎG~A�x��CPKZ��n���Rg��x�+��i|�o�ʜ��8��o�qJ�`��G��~��ɕo P
�8�yuq�뢵����𐠵�������Ռ=ƶ��T�·n2p���aA/�F[
]+p^��F���(���?ɬ3gg���Q)���Ċ�DLm4��G;�?81�[ѫ�T�> =�Q8��)ʒ�5��ck+gdR�����A|�v��a�kBcz���[���C8�^'�դ���O�S0��* )�5r��|��Ȥ��^�?�z}�[�SWU�����T}��?L���U�^����}L	�6h�8�
�b�ǎEڰn�/�M��A��6����6Mk<��u9�o5)?q�	#�019u�A.�mX�iȪ�fg�Q���Wo�g�@��u�;�	�o#���&�o4�O�:on��M^���;>��r�0�.'�}�)X��"�9��O����~�.7@3����_~I*���`���֣��q���^Q(T����ߠ1�``��w2����u���Փ��أ���0�F�(zc<��mL�hc�-p�:�|m��.Ǣ�VfhJ��M�~� �[е�}��r��2��~��wzJ�:Ս{�s	�3��xԺ�,G� �MKd���v%b�o���|��l6�z	^aCG;zVl� |_����m௷E�ZQl��Z��>g��sSo���l���P��8�C�4>@���e1bς���	 ��z���F]�5�Qƃ�/Y
�vAfG�WJ;��=�yw@�R���q�\kK0{2tv�0="w
0�N����r
�D�n��J`3�7�%/-�*�R��.U+�[l�Q��7H����0x�/{džq���8>6F��'0*G\�Q�a�$;�h�fEB���C����-`0��)�y�[hʑ����V�
H2�pC��xQ�P¥��9�>&zgိ�*�+kɼ�'���W_�~I����Pg_�CO{b���̖���aշ�N�� ���
��~A'�/I��팟o����"��ܬ*0w�����K�OLx���i1�M*ˀzܗ�{� �m�eJ�!,O'��Z2N�m��:���ܢ*G�`��x]sҶ#fD\�����FI��Hw��]���I���?�7#ȂU�.�5w5ɮ�R?7�����0�:�3��np&9&�Vup���AFs���Uc;I}�!\��Uv���}��b���z:���9y�! R����ξ�����
N@)�0ߗDd;(A�Xr�[B�N�a+��{��?X����/��Jڽ՜v�ݶ�6�lҤg���O%���P
(�/V�� �j��>MT��c74bɤ^�~^�()y�I����Єe7a'x�U$u8���/����N�Ψ'n���h贑�51��;�^n4�8�ߖS�q�F;� Jx�����]�]��Y ��MG-WM���_�	K���V�gGg����>���W&��i�&
�əۣκ5�X�n��F>gla�⧲�0���x){���8��}>;|��9	i� 7?��kN���W����� ��A��P�Ej��p�Y�rҊ���J�p7�~V����8��o�?������� ����3#JF	;Sl6QA�i����C��fT0Y�w�I���+~��[��kB��4�1L��[�*��;/j�LAM0X�}>������.�tغu��tj���iZ���6��)���u�d���n�������?������
�|n4oZ��8H�/��h�!��}�I>����d��	�_�Y�3�rD�wc6�Z���K�ج���A�;��T�� GXKb4�p:I9��m��{#?{��X%��C��KM;���E�({vT6La�Y}�j�O��ѭT�в�`u ������J��ۃ�2f�1��D���/�M��R�1�Cb� @#�^$yH"�c�%߀��.Mt��B��l7 ��^���]]]�*��e�g^1:��	v"t���2��=M@f]�M�̟D_��w`tј������m�����uJw�"Bh����O;��ֽ.��w�3,�eJ�VKm�C2LCyӝO�L��U�{�/\"����K�	h����	�bxZ���LR���i�O�(=�|���V}��)�׾��[[��P�[����n���2�6Y�K��	�UL�}�W0$ڃR:���O�3Ij�(ΒRօJ���)��������H�I���n�S�(�g�K�p���2�\���oN��ya軚����8�'��p��%�K�EE�gO�[:*�׸�p��ⳇW�����F��t��!W�o�ڧ�"�˲"Cրo��o��B�J�d��;'K͒�__���h�v�+���d�����ލ�� '������V���m���I.^�˅	��8��B��s�f�G0�8�ռ�*ʮ ��꩐�Tҕ��c��6�s~���Jim���xY~��V�)�I��ƛ��+��h���Μ�;]��E���BAАQ��l"�U����,�C�)��'f�C{�KD�]�p#(^�����y�s=��=U��jon��lVe�u�iJ+$��d�U�#�;��O��
	?9�2��<�;�q>o	T�r�x&�
[��'-�x�p�0j�[�;3�Iw����6N?;��<m'*�xD�?$A�ʂ�8�f""0���ZI�;�� _ߢUcGk�"�#�+QE	��p�Xd|ĭ̧�!x3�f2��[��F����K��oa���K~�۷R�6	�Y�cj��<��L]��%���TS˶R�O��Wöbc�£�e�P�}�S���\��
��T���u� h���Ыk��.x�{���zZ	JTo�;�8��H�����P^EsT
'K�@�����
�t��B�%Fj�dC���ת
o����@XV+���z.�T��"!"�����B����F�.~�_��ac�a;��
�;%#	O6�L��=B
dX���o�
�ߡ�s���L�!.�A2�R�  �4
����:g�_�*[t���S*]��6�,�O9�3����5��ؖ#^��l��m��[�e��П��W�
=�68u�P�ݤ�_��
��M��p�"K�}q��fn�V}[�[�!q�e���*`g if��|T��/\w�G3�	��zC�Ulr������QH�$q�}r`���og�՚g�O3�=���+����ƻ��{�N�b��-p�g[r�:�􏃽����~Df,�!�>��K���9YR2��v�r�D3��'�
��K�gՂ?h?�r_��K&`t͡񟞉���y7��&.�>�t��u�4�ߛ�G�
���:�^M�pv��wڴ�Yz~ڇձ�M٪�!�RW�d�;�#��	^�z�ʈ����Q��t\�Wy�\OJ14��:5�\���SXT��� ݓ��g�v�V9�UkX,m�iM�\����(n��>E�I� a���I�i�_��,������(�
;.s�)�=5�A�I��(��wX�g�}4Y����Dp�4��{�jq(Q
̷ZJ�U�Zf�K��*�xC~p"�2��r�#�$!�J��zZY�.�^|h�}���z���Xa�I���E�Xg�t^4�R{��f�L�y�p�ᚚ�1ި|�O
�2��5�"�t�U�A�ޗ�@��u�R�PN�X�1�ZN���/�ܨ�x�����IQ�×��_�y6�EK���� /������ cuD�o���7դ�	���|2��V�C��f+H��
�:`�w��i��y�~wk���t@�4OE],�<����ͦ?s��b1-��
�J����A�������A2��-=��t�칙C�õ̍�:�
�Ba�;�W�CE�Ξr��{�`�&��,'��t�����[8�q�u�
-(�J�]��4
����ʹ5���ay��
hh�Y����.��4�j&���4��a����q�'(��5���s�X�G�jWB���~����cm۶�/��.6�a�_A5���+=d���>Ĺ_.�h����8tB�s��0�HJ��l��l[UH4�v.	��>]�(
k�9.� U�A:,A-���w�yʰ�҉��V�jVU�^���}�|wTH�Ә,Aq�0;,�ZD*��#{���l�H7��bRX�0C��d�uBѢ�5�d�=�V�\T=�Q3�7o�qA̐A���O��l�ܿ���!��{_uDG_���rk��ߘT�^���}W�o).8����|gWP�Ce�J����x�6N����(�~v�_�;�Ξ���S?���W#M�˿��^��S����mG�
θJ��Q50 �i�<�&+��;��V=�K�rU��
�e������#��,�t��F�jë��Γ�U��|N'uL�����x��&�)
�6wrroG�4
���L�R��	gn��Za�����#t+2�>if!ϥ�)Ǿ�>0$&��q�����qJY\���I�S(�ˤ7�^+�'����w�ٚ�ze�!�e��-���ݙ{��a��wτ� ��K"�Jd
��Ly"F��ջ�P�n�)�ж��w�-YU��6L�8"�!ѡ��|�F�j=c��Ƞ���E����R���z!�<�nU<�Qc������o+�-`(|ɍ ���O,�tcR҇�ӆ���/j�n�@<�Q�g�����4�6���W=Z�ڒ�9���4cK���&{���}�8#Z�X��WUU+�QG��Q�����3,��/�%�Eo�����އռ���d�7z}
#O�t{yD"3����K��d��� {Cu7��'�
C)n�0{�4�k���(|	u(5��u)"�|�V ��Wr���e��n�n���XW�O�{���Bu�WU���,2L!�(�K}���=��	�[�MP)�s2��l�6%�j
#\Jg1a^9Q�.���F�/
�
y|x��&�>z�|%%N��{�9��c׉S'I�#�ܳ&�QF��n�๕��!JƄe�e�o},��X�M0c�s9]��e08u�x���޾�B䦂��@h~T$�%
?��-&�=���Es��nϨ��f'$��Є`9��w����vȒ�ߖ���$sNy�7zԯ�3.ɉA�>��c���,v��A���?p-?�#�G�v˧�hm,�Qv��G�=KԾ	��n�k@p*�;r��Q���w�Z�*ړ�Ǥ��� �3ν�եwR�-�`Qz\�ӧ�v��c�<�s���*)���%m�gNܦIy�~#��+U`~�U����獫l'�-q�'��֣����h&ɚ,�B�L��<�g�MIM	٧����@nf��\��}��do�‡���[6[�B$��9-��R]Ղ��T�}�uA$�+�eҢ4�k���v'����^K����6
a;8d-x+���J_�u_2΢G��re=�?���(�����w��//�(�_`�5�w�/�/+:X}�Z�X��.ruȐQ����W&��eUs?�z�N��|jj_�Mw31���#qJ[u�WF�x�Ԏ�}�y}M�r�.)r�1+��)	�Qn�"|D�U)^8s6���c��#���A�;}�/�
��	���?��K��θĻ�G���Mg�i��9^#0��;؎�Jb��ꘙ��#�<���M�z}tum��k��p��aS����� 2�p.A^S1�_.wGao%7�,SUW��Օ
7�md�%E�=,�P���[Ұ�劚���l����K�=3�>h:pZ7ן�g~��#��;xD�t��O���|��tҺ}��&Y9����ƮpbuU[]���T���ι#��U�Fo~�y�ե��j��`a����~�.;&\UB�D����<��j���5y�уo�)]���,���+�]�*�D��89�ż���mS��T�I�9⺹���"����_KKgh��&�\^a=�X���(�u`��mgO,�Ӊ�h}����y�$�ے�$�E�[��b����\ڊ�xl~[����l:�鈼�,����g�\j��gY�	��'��&f)�GL|�ƭ*�Q��pr���~�;�Z��I]��
!<�aPB�I��b�CUxЏ��Eg��C�(�<g�d���РrM{LWҮGh7�9�W�Fɜ,sR��ߕzH7�zϙ�FrcHK����oS���Fa0��z���h�C���:+/����ҭ�[-W�� p���3v��\uq�GG+ԛDX)��'��&M�uƗ�Û~E��ވ�Wp���5J�pGՠ���0��_�ԍ���qW�Ę��
]5�x�����1�yu�&��8Hȏ'��;��@�<Q�v�8�����uV�<�ɦEY)+��tn��|�߲�K������3*����"���ޫ##���
�ЎN�i"MC�F�Z�uT
���7���y\=�ц�ёc�XY$*�^�IN�h�q��h�<��쇢��[�筆��%���UY��A�G�8�m^��s��u�¶��$6	y�7YVP�߾���tF�(j�:���ڸ�$j����{w%ph�B�L���\=@�"0���4)U�w�' �O�w4��#��N>q��٘���>��0S|�_Ae�g�<2�8�@�+�5�	3�gKp:���E�L�Bv�K����j�:��*&z����0�V >��G�X�CJ��I�O��Er����W����b�$�W+�^j�ɒ�����ϖ����6�H�X#18�ˌ5����ԋ���`�֩�wG�U�,�03	�������̵1��Q�&���g;!��]v�X��~0�a������	��\�M�����F4C&h� �V�Ӿӗ|���怙w9�}��9�/��H�Y����1��˚�W�(�u2igo�}9�~!V7�;�:H�	�xǗ�~㲿��vW�ز�j��
�w�$��kʪe���1Z^�W$S�+ļњ,�-�3��!�cm�h��9����% Q*;%�_���8�FV(����s�߷f�8d�����شgm5@@7V։��!)���^`��#m�܊����G�k�!��y�u訦���(+�q��:�­�D݉5/��b��w������b+�b��ᎁ���6�}�H�Л�m$��te�1-ě
���G]i�ܘ��$��Q:npy�s�ǩ��B��q8��H�r-;�-c�N�*�r�J]c����G�Y���ucyUk�u���DQ�)��:4^���K<|�XE�ޚ.Hx�r亞�j�Κơ���-�]��eU6���x�bk���_lo��Ⱟuv��oL�zA+�$^ҕ\w�%>�[�P��G<����2���<�U����w�����+=ܧT�2bwݠwx����
�ay�#G���t�s+�s������[�U�Y1��n,�,(�4��c$�U�S��9���B�%�Z�H�\R�׮��m�YZ�,]�KH�[�E�ÿ��/l;�f��
�$�6��![aB�r���d�Z���V�zoْ��n�H��K�VU�%����)G��B�$�E7\f�YֵT���
�Kg��ɷ;�7� w��Bh�)�k���4�����\�r<�zu��t�S�o�?(#�"�*G����<K?�'<i��T?����Zm
l��ױ�k�ưC��d�	@�P�J�����uU� 7"C*����l�e����A�I����̮BZ|G�~ۙ���Q����ec)XH��#�����k�����3��KV� =[����X�_��ߐ���W�Co����F�x�#)ȁt8�6�]��H��w3,ky��ѡx���,A�׷	e��#��/��t�su��#���8������;g̗��]�[�d`�o��A�l��g#� o�@�^��vI�C������k��r��k�Mp�Ԁ��K���mnJ�6���!�	{�zQIVN�r�rE�Z��p��W�w([y����
*
N�C�S��!!�أc�����-q���UwJ�=j,�������l�[^sM��u�;כΧ�:}�Ҝ�	�	qg������cNh����T�v�)W��d���]�]�*I����n����M�:�2�ұ�ux�v�>����F��n�D!�$S�x8��;����;�(���~
�Wou�\�Ht�*GĞv�:��[�L�r��-���y�G�m
k�-6K�=�9�D>�Gk����aD�l9�<j�U�r��7����j��*�Nl�����)8�j�2��b��S�-a��s���4d ,�`�8j0_FC*�6���*�[$_\ q';C2lD�I�=#��:�Vp-(_��Ha̹$�$=w�#mC*A�1J��P�%�s�d*�:��%	}���4�AR8������zø���=�?Eu,q-��أ����÷���,!�p��N��:��Ő5��V�I4����?>�*K2����J8Os������P"偙�bN�%�
�p�xc��N�&ay�{M�lƪ3#L�mN̕&�>��4w��ՙި���|3����}+�e�}����_���,�,A�L��u�[����ϲQJ5�'z���@Nԝ�Z̉�ED�@�(PVdl��\8N�&,��)I]�d��N���Y8+�ʞ�_�w���u⥊�8�#��+�1d�8s6����Ǭ}壯����Uy��fc����+��!)�Ȧ��1���[�N����}3ǮIG��u]��x~�^�ʔ�4
���qd���[>�,{�1#�^3��ID��=�q$�%�ɥ��:A*��Cg
R��@�B��H���@�!Tn���w�l��˭��a�]���ɬ���z5����{z���1�R&��l�\Wџ��g���EIّt)���8�R�Tp*YM�ڋ�FfR�8V�Y�bJir5Fč	N4e�gH%�<�ټ�
��n�j�c*v��<᧼ /���U��jao.lG��vA�vP���ؠ�Z�j����9�IdA��v�Ɖ<��jO��3��j�5�Kh�iMt|��en�*=-AB��Q����׍.|�"?��Ïs���\Z��%�g��t2^L�#;K�0>;���!���SSI��!!��H�>�S��|�B�ϵŵQN�,$�,J��,��y�a�>A���"T�S�M���K�����"�I쫈�+�;;�Ӽ�[���5��*^�1!��;m�--?wb^e��Ci�O{�*���N�C/���.M�s'������f+v�S�'�̘��
T�kO�H�L��T�pR��s�#2�Y��@�2��N�6^T��)u[�>4(n#�*w�²Jb����$Ȥ��F�TxM3,"&
�ܴy��Wm�����k!o� ��	��,˒�e����6�G�G\r]U2%��8�WH��
C����Qo娣�)���*�[zb�2�n����ʹ�.CL?��g��l�2�\��#�.W���Y`�WG��>r8��e1����j��B����
��U���q8�`{l_d<C�hj�h��|�v�o��L9����g���䇄�b�%�&��h� �x��L��){(fo���P�H���~l����8� -s�3�(!���Ckb���er�
A�E�H��Њm�q�ؠ̮�x���+9&V��HLa������jK##0c�e��[abh�@�/9�����Jy1�MK��:�5b�oN�K�T��hw���Q��	��)坁�(
�i�Ƕ&p9������F�d�I���S�z��Ԣ���uq�g�ݴ�VD�Z�&`�W�::�*�^�!�V��p}�����a���,?���8��晛�K��_���7�g�?�r�W.U�[���c�>��9)\�<����r�.-�^�
�BtR@�͓�f�8�w��<_I���a���Ɵ̢��(��C�U��/)�\R�~���?~ۨ
ÿ�dZ��ZەGƐ�����rg���Jp_�"}�Ie�g�����̒6-G�;����K�>�$n�����+��L�[��o�"�N�>��e��Y�f��C-��\Qz��%��se�g����@��%��� I���^؄������*�Ӭ����D��<�����!��0�O!
�w!����ޞ{����D�S����r.��~���B�z��+�B�mA�*�+y����(k����w�_�3d���V��y��4/ܺ��Y���hs�v�zJ�0�a�p67��X��6����	��y�n�o���}l��k�n�r7
yyh�D�bK��S�OR5p�8�.T�a[��Y�hKHCJ]c@�/�s-`ϼ���E��a�Gk�Yr�ʇ�K<�E�e��W�V�RP���t�G+$�д� ����R��b��͇P��TE[j҅�
���*���NU��Z��{�V<�����Q�����w�*�?�Ӄ7N�s�O��	j�$�0`۱���/�N�K�]ϫ�]
iZ?;:w���<����7҆�҇��ߦ�٨nV�wl�}D��A�%�yv���+�w$,��Xl>�/j�1�'$Y�F���\��(���AЃ�]x�i�Zk���$5��U܈�?Z��N�:5�Z��C�'Z�ܤ�}w���~HE���VN'�O:�R��|J%�ء��C.^��ڎ�`��g͐(3!��a
�[0ɘ»#��c]j��)��`��rsJ!�*j�c�f`��o�+�
���;mx���x�� �2<s�5��@�HT�}��^��P��:u{��P'����/���>=
}JKo���
a
��XN�-��K�;xL@@����a��,�����u]Ϻ��U,Y�;I�a�˯�%y��\	��#�2"�d���aE޵>P�~�?nŠv]wZ���Y׬���a)���3�3t2������T��۷MN�6=�?Cݹ�ސ�d�}1�y"9�gV��˚!Z1�qz&�W��w��-f�R��C|K�>���'�cwA?`6$,�|C�kٝ��0�->\�#�˽�����5K�Li�Tom��\[کNJXu�}ꕵۡ�x���[@4�u�	�g�����@���+�"��R.AS�T�+�8S���3r
P,qݕV^�f���b��ڝ]d|k�
xtQ�ä=�:�qC/Ѿ�K�6�9@�̦��8ۃ�)��6m�k�ϋ�z{�v����C��G���v�̠d���
lC�ȇ�`�h��r�����.�S�F�m�إ>2푈��n��\�y
���3�k��43b�?��s�Nj����T����%�a�)���2��}7
��� I���
}A6m�"o'�iLI��I5��y��?����|��Ue-�Ң�hb��=Ϫ۱_�*'�{��h�3r����y":�U@>�q��|J�!����׎���72ZΝ��	]�p%}��,r	�T���āe�u�1't�̖X�m�٩X$:Dl>�O������KX[�;���4E�h!�BA���j�Z�<|:f����^�O��h5��a� ����K�����u����/bz�t��w~�8i$��oo��t�^3Q?r��Lˊ�f��o��In�H���i�qUgg��)Ӈ�i�-a��ui��4,a{� n�Y$����H�kJc��J8@�t1A�y��8�RQ�)(�
�qr�<���'T��2QUE��T�����ԫ
���*D<!�⥘`��]�0^ߢ+=ǫ��I|	^�O�ax��'��D�TSR<=�O+_.��㨊����d��'��	tl�9���e5��,ƙOv'zz�{�S�]���x����j
D]�âKqo"
���M~���7��*5ׯ��S�p�E���B>WV-J(��YWZ~]�^��oP�6{
�[���=<ozQ%��g�fx��>���ʤ�Ɣڗ��>�����!���C�/�9���ky�y�r�L+>;��ʒ����[�/�	�f�n��>�O<�1�#r��y�w�70"���a�YM��0Ib�8H^-r�i�
a�޴B��7�N9�!��gI 2�iOB���*{Ȫ!�&�F�s��S�����mt�*V��ch|��ʢ�&E=��E�+��BJ�&Q"/q�d��"�8Yn�����$�:����W�|�8���a�%	�F������~�\����\� ���=��w��帙�"��i�4��}B��W3�߬���[o4Yf��"����31Doڔ��r�]C���pϼAyl��k�7S L��j��
�@�>��s�%���0�)u�A� �9��-^{#x�/�ަL[`�0/��(��?¨Y�)�؛a
�wI{�d�dC1������ڐ�G�d�j��<����R��0�*eYC�NsI(~.�D<��ouwϪ/۟EP�q�{��cۉX$6����i��E���<�-����o�mp�V�tX�b�K�ͻ���/�mjh��o��2,;W�́�x�I�gƭ،90s��Q�NO�� �HP�1�'�gK�,-���"�z2��ט�m���q
Z�(Ez�QNe�sD���=Ն;�,c�P�_"bpy�Ik<Ɖt�,_��B����-�q��� ��ܐ.�_����h�"{��g�G�j����y����;!X�;����C
H��*g�r-��;2I;���d�T��X��%\�fT����ǚRs��m��-�/,���;U��U�����v-{���=�nO	9���k�U�땐������(�ndz�Ii���P_�
�k��a��6d>*;��	ڻ�{�V���q��S���[�B�O�l]yW��MRZ�$.��%������qj"�̙��.��9*����H*�:�H��fc�Ep��R��o���Q#"h��tL��\�V�	���Of������}=Q]��L���H��|�<l�%��C�6h�%`t4�5{�)�D�$�C���W2M���F���D���p����VI4e@� ���G"�����S�]}��ۅ��M�b�F�)�Ktݸ�����Mq9%qc+���9����sf�
Ѷ����b�!�t�Oe�
�^7u|�P����^g-jъ(B�	q
7�~���?V\x]�oF�og&�w5O��o�,3�۪lLT���õ��Nn�U`z�\T����d��S���\��k��+](PX����x%2��_�垘�2g@�E����g��Hj��t�M��M�6�FN�
�c^���ٲ���c���-J�D�_�.+�LQl�O��d�`u����;��֦U�b�h�+�}O�]�����ډõ!�bh�	�����y2/�$}-4���-�����}��|�~\��/m�ڈϱ� ^�$2�͔�5#��\�P\�kX����txM�)ƕOl�)^�V9f+�ts�j���˗##��x���?g�B�P|�Cv
޶�q�?/�&�����yt�g"�g']�OIi�W�vd��/����n����)�0���P#X2?�Bdž��)�5�sb�b{t�c�zc�7�U�A�Ԓ1)!��(����S���,�4���H�C�$np?$�=��i[��~�׉�����YX���A#�_0�����j�%#J��8_���f.�����-Ί^�.��'
�du�����x,=r�#�e������*AZ��݅�[S*k����촀��HN�T��%�E����v�A���c�R�Y�6��d�̻�Yܲ��������G&�c�<��o���&�l�wu��?LHZ���n���M)D/�U�qֲ;���;�
�쏌���g������)��ݢ�������yw|^~d�l�&ɾ@��S
�lև�΍r�S�Z�.b~��
�~��ey�ye���f�i���S��ԑDT�����M���O%�,%d,�L�=�B��-��1�;,��{�}�,Ҝ�=��s��n��=ǺOI;�$���p���'i&k��7���G.�����t�0�r��
'��b\9��r���
lgjO��-r��l�c���7icm+�!�D�]���a1=Ѥ5q��l��l��գ�%���ґ�j�	G�dT
�v/��	��#����N޾�^�x���B�:��W�ڼɏ��E�vR4q�U=zjUdARK�]����hl!�W���uB��
m(c��'
He��t��o{R�}$oEb��?����ˬ�A�y�f���C/Ο�{�ֳu7z䒏���XG�v�����-W>���_~�kϣ��񏈔�v�rți�&!�*)��rI���b@�쪖%M5Нs�!N���=�3h�%`�U3����yV|���p��k,6��խ�]+{���EΗ\��^����yn۔.*Qz�MO��տ��D���'�T��S\�0�WU'5���:�#�h΅A%�EZ�ʜ5b�Ҝ�6M.�^q���Ӷ�X��(��1���]l���(4��A���Ң�ۋ���VXkv)^ۚ�n6�e�Q�~�q`�a4E������l�Z{!����e�ٹ�R��fm��wš|���N�wda{%Q�	c�y��g��R�����A9z�X�BN�|5�ّ��O��49_w��9������.���f�o��(�D��\EPl��~�P��ˢA�'��Ǐm���� |��)�]ˍ��1��<|`){��y?�J;|Ɠ�=���J7��M��MA���~we����H��b^;+��4���T��1纲ѳ�'ZNWR�f�Z�x��
R���}�����E�ڢu^���}�
����=ּ3�CA�lC\�'EΩ)�.�b.-��GB���؄��HA|ZE�y�˭�y�H��:��$��'�X��v�3&�y�VQJ/����I^����	�'4Z�Y[}>�ēn�����ѭ�ţv�To�w(�kxǂ� ��Կ�^gWzۼ�r�1k
}Pc�.f�ŝ��L@�^�-��7�pj�o����rͤ�DⶴppKt��r��U}�$gmJt�AP���v���h*ٲ�͛-���Z�v&�dH�j|4�P�9���?]]zw�� �w���L�����z� z�����Щ!�.+',z�b8����*߮$����jΆ,��7�bC���o�/�]�E�h+��#PN��:
��<�D�S_S4;��LG������V_�!G��8��ʜ%���gq]�wX���\z]�B�W���λ�z��TS�v��l�������V�+#��ᡜ��������L ��W����ϛ=�u5�f�]�Y:�5tgq8hĢ)����+��<5d��P�:9�?tun$�{`�Y���?!�&]ܳ��p�a���R�<�ұ�nk}�DpzawY��$�z�:�ߓ�Hz�����dY�Gj�a�r�>��q͸E@��G�4�����+������5|��"�E@������8�x�y>�XqI��3%�4&���Ueѣx�ޜ+�V[
W�?�$�U����7���H���2�ܘ�m
�&�{}�3�}�������`RU��=}ii*��"Q:��, !8��6�ܤP�'�T�s���rvw���MDKOx���inM�'\W��	mF���f�P��O�V�
	��\����`���%~�J�JvCm�8�kv9�E��g�fv�G١�w2�0�$�-�\��I�MD7�Oۺ��rU��:Qڃ�1<;�	-���:�z�^%�q��B�ZK�QD���{җ�x�oe%�*p�7|�-t<^�xأ�bT��*n��}�ۙo��˞�(��ﴲ����\���^(�Zn��3�f��Z�,2��:����"��n�@{��8,�-�^��wQ���R����E~����'>�@^U�>���W5��%3#X�5�"߶縵�mw���#,�,�C�8閅�W��O=Ļ��H�7��=ζ��:+�
ᓞ(N�<��n"];٬�D


+�M}�Y`��*L��vl �q����Zf���u&��-��A8�M���������6u
t2i{�5���k���
	�v@����Jgv;1ph�Pu�2[�p��C��Um��
�^H��n�|:�}���Jt�8��2E����l=�U-�ӭ}����0��s�	.>Q����x��T��a7$�m�}�;aÿ�mk.�4���7���Kt݋�B�{����Z=���+�I�����w��oN�.��R�"k�O5h��a��C�K�0O���P�$�/�{q�u[��_f�_".�w�y$�8)"oX�;3�4Z'��G&���o��5��gȬ	[�푂p�x�$~VlYy�?A:�O0O.?Iv�{��~l�z]%��x��դ�1�G2��
ͯ�4`1w����^��"B�~��<׎k�h�:���&�9D�ɗ��@	�I���4<�l�C"�`��6���7Ћ�콀{�=V�+��
`��T�U0딎��s*Oʏ�tj���y�2�Ϡ��|*(Tw�l�d��b�nQ/��7Z[�i}�hím^��W�L�m�?�,/okkX�Ft�����+�-��{V���X7�NFd���39�ȑ�V��{\��o��o���7*:�^�.f��=g���
;:uP[�u�+�Z��P��ϸ�u~({��������R���ʑг%�?�L��'m�O#��8�x
��$N>�|�ߖ^��y~r���׮ۙ|�,y-�n��Q�ߖB�N�"n���%;Ts��B֭f� =3�EXX�7�W
��s	��i*(*+"AC.��ڥ�+�:����WR^m�SQM��z+�.� �sS��!�F]��bZxL�}N��N�
�$��pgv��E��mA~D���Ph#�.�0k���㲧�o�n��?��֭l���/Ox��$]��L�`.\(�P�+:rj{�x}cO���#V ��̥)�:��f���(ý�Q�� �ǀ�*��[�յ����~�-`h��1):����ҙ���n@-��݁�'>c(�����>,����U0�.Q����/��sU*�k�ޑR1&&;{�=<�	Q���dÅR%����R�	�����F@"��z��EG1�M�}<*:Q�5	��zW���՟���D��Kj~�_������[#������Z���/��9XMF��ۇ{��7�ș���ک�����+�h����sDf!!/���y��{ܸ��=��g0<���)�8�4�T�Mʦzj�^K"��$L�+�܏�!^��\*��d%\��%��N��s���$���Z��:˼��&�,�t'U�}�~�#���
�\���ɝ��/!-�mY�V�B-Ei8ɷ9���2<��S~N	K۩�p�'�Â���*�֜�wcWF�c���K?�ZAJ�ƺ�p7Է��b �i����KL�`]��gɎp$l)�q�����ҍV�B�C�*c�K�irz!�3�ڇ���|0��F��
`�Z�B�Q^��z}"!թM���r"�[�R���M?����� �7���	�dLdH+X��Tp�����;��߻W����3��k>j��W]�[��т�QT~�79�E�<�r���jO>�3�Sѧ�B0�n+�\q�\Xh�;ed���I�x��6�>� ��XC���Vr�pN�F��K�|99QP�ba-�~
$�GnX��?:a.pf.!®C�f��߄Z$����
���ݞ\؉j����rv�b�1��F4
%B �B
k"�r�,$��$��\�7K��5�s��n_���+����v��� ��P$�ϩ3�/��x�>J��aw/��T�i�X�F�N��)@��ԅA����K$r>�G�nc	Q�R]
��]e\C w^�ʺ�𑞯W6ު}LB|��ұ���61�R
��pn=��b�>@k��D�R��ƌB�<d�D�OK���gzJ�2�mo��zMnE�}EKG�W�䷔H�C�	i���3��<I>�MQ����n�h��5�0�qb9jC_�~P�o��a��ʀ�1�>bש����i�v���63u_��;fj�/1'y�9�D8�a� ��n+.Z��fq��>�Z���T��Οά�s6����
���w�V�@)������w1����`�h�	�|Zw������U��i�a�{�]�"��5�X� �M��DXfl|6�b��3��Z=c�d�dž/��bWO�����g�L �Á^�~Їo�;Lx��0e�_�Z��,���Cõݷ%�"����({���>��9�6?���������C��`/���}�G�(?���Zi�	�6�m��	v{L��3�Z�[a��x���'�96!��1�2�'�p���ͥ�[�˔�)�)�L@ƙV~+r���2��ʑkk��9�Z��	0NG����2�5r�aQJ�#�+�Z�,�O���h�O
�:��X=`�O��0���ߋ��W<�N�;��{[�����e0�^�G���ݬ�-{:�&ܖ�V�O=t]����4ƏKF}1Q�WP�y�@O�~k��[�+��c��D�����@��k,�UB�#ű&�rC��e�,�/at[XOd�Ԛ{-�@�a�i` Q�/�
��B�X�I�HU�,}�Ȥ]�Oy�,�����tGd���.@�뾄���}�ۀ���9S�U�W�!O��ҕ��`h��?�/�=���
 �o�"���:8��A6VK�#��X�����Iq�q�K����y,Ѹ�:^PAu~���[��5���<�`d��l2u���v
6�5b��ǭ���K�v����o�����
�o��
Iѐ�8��0���M����	S��N����&Q�%�����x["��:�v�EbJړ�0��K"�`�G^���!�ܾ�3#G����WT�b�Aý'���4I��Io��5�K@�d)ƻ�H9eW�`��p�[��':��q�\}���4=�@D7�Z���w�Y5����06���Ә��В� �*)����z�G�S<.F9"��Ca�!z����[�~�P>��ݴc��ZB��b�4l’ٟ��s���ԳܻY���j(J��՜�:�qZo%9" ����]c,:�Zr�PA<�@p�/�"����
��g�]�[u�o�W�(�AǸ3aI�L/��)^j��_��s��;�_"����K�Y�		mĄ�"�oj��=1H��f�Τ;F ��
U\V>��{��9Yc6J�?x�̀W�0M-��7�ؙ���HrV�2
��I��<�����(�����
5uywjBt����A���֏o��\e3Y��L\�ʺkl#s�s���˯�G�b�/k���BZ0��r�D�h�D�q9�W���z�C�8 @���C�4������.7��U�{_�\���_}#!|z�(12�O������d�@�C?�x7�N.?y�jvGC��Ҍ��"�ʚY�lC�`���2�'%��b[iܫ6���hLF�
�HO]������
�M���"��U��1�P��
[���9���������X��
�|U��B���� S~z|.�4���TP��{.��b9�p�y�-�~^z��
�\��@J��X`n�bDWpk9_c,:�2�Ya��FμҦ׭b�1���DLc�a�u"ҝT�T�7+ov�z�Ӏƣ<�n�siDw١/�ţ�����3mW.�{2+ا���t�b��J���c�"��9����ʓ�����8�lɭ@��Ѥ̤%�>i�����O��������~��}$��f}e���]�Է��9��9y2�6WL���u�SMv����q��9t�)iG׉��0���6��G	-0I�#�u��1��}ŭ[c���z���6WŁ!-pi?K����8�'`�PCrr������p\���B;�k�i��~8�߯I��{'�D����ʪ�J�"am@!�B��S҂��� �?{���łk}�Mq�W���W�,/���R+O��C�[��Yw3|c����k=}Q����c;Y�4���������ed6n���گlc`��,�ɩߤ@7iM��=���Gs��4g��%�rG���p�H�C5p�#��S/ڝ*���	ϓ]6��}�N�x����������Er�P?Sr��b���O�{Q��p���h*L���b���YS�n�
/�BZ�;}�m~9a�4����-�h�[�����͎ϭ�J$�1��N�&�|'�c�䬥/ʺ��&᧥�,��/�94�
�g��)^D��/�P"�܈Edӽ&S#��pK���D��D��
�Ț���M�9B��4G��e@�f�~޻;a~�WOk
�CL�� T��|�;��v�)␳aH������z�=lyN��S^���xG��0�f��x!e�Ƹ.�9����\(
�(noAiO�@ut:)�S�P�U6�&*��B�v���pF~�[����@���]���J��a0��dT�x͊Z�С���q0.�W2v���1hd�-CZ�V�A@�G�ñ|g;��=E�4�'K<�@��|��4^�q	|�\���V���1p�%[�#S���#�F����#��-�C�I����̥�+\),�Wyy�:#��s�Q�����P^<���E�/�P����Ny����ߞ�?)��e��S��b:	jw�na����\�T�]n>,��Jz���F "穼�ƹ0-���h�����q�(B?���Z{)���6{�o���ݔ��2WC��tˋ��g�5�T8�����,+O�e0HU�ܺ�vRrA�D�
��6���ř��!��D)n:��nc	�a��=2�ݫ��ws9�O�Y�V@^��XI�{+���#��b�����W��y+@%
��0.�{�'~{d�z�r��/�ێl����L��*b��d�_����Ec�f����a�"�sص�-	��v�$�95�]�&,�̋�P��L�Y��$8�>���=��[��w�<*	C~�$\���Y�Y7��W$Y���^��q�F%E����A�W�Q�7�{����EH2�C�)C��u͔��.w9A�Yȓ�K������c������d
�Ị�<����w��TPN�wb���ԡ���"~H��6�6�_�0wnDKAAN���e9������iFVg�?����#���|�����ּ^2�|�Ś{�A&�X�|��[QhY�^���oG|���#W*��fe`-�ޣ�\�6�i��˺�.tu/^��y���kA�������/�˙��5��n�nמz�]1���Z[ϝomV95˅_�6�	e^�^��!M���M���H�чVx]m$��Տ�KJM�4F-��oQ�C����2����3q/�T�]�)�<6.jxo�/|CA^�[cB�2��|A	�{o�1��K{�2A`O��F8��;��' ��9ƀ@bR�]ʷ�q,V�o�<*�l�^�ܫ�QcT��_�5?$�U�0_9׊ f��)��C��ץ��)���י�P�["q,6��
���<sZ�mNv.
���.'��
Ԝ����}9��P̂�$
���h?���˃2=��+.�#G=wO��G>�#�a���cd$�\�ـ����ݻ���g�y�Z�g��v�b���Էaz8�{ț}Bh�A�{mD�����.��'*K��Oik;��D �#�����/h����;�@��±
!��+�ګ�-�c�kn.���v�$?:���ܗ���b�{��az�K���ޣd�GkyVֶ����Z��ͥ:��'Z�sg�.�O\/+�i�.��5j�>(��=��>��v
��w=7\�4���߈y�~)��qNKs�s~�9<��k
��{d����o�Þ;���Z荄��A�R�4�vríḾ�Ѳ�ʀ���&�_>�p<a\&�R�_q���o
@X"P]TU�0y��v�v�w��t�]�U՗�i��<C���i�x=c1v79�(f�
�M�k�ڄ:�'ڪ
�I���`|y�9D��5�n��U:�C+/>9U�F(#eI�|�K!����l0��36��n�LG�e*6Ne
/ˌ�Ԏ�Ūjj՚�w����e��7r|т���֔������讞��
�A�Z�S�Cr
֔B�I��nt���~�-�#Z�V����v��L��Br��"9ŗ5���9��8V��x�h�_d^�:�|xmW(��~��
�M�y�+�)#%ʂ��u�����~ޯ���щ�*���K��X����<���g��7|`����z��H0���ikY�=2�����n
_��u�X��GWVҹ����Y]/K<J�Tdn���Y���JM6@��rݍ��N�bj���D8�| ��'�+^�j��t}���΁�bFAGĊ���̃��/��c�D�;'f�{s�)y��'�	�K17���E��m�蘷Ҕ�k�<#���ꨏS�I��V�:�	�e�8Z�(t i��@>�8[���4XL��{��J.��.
5|E��^]sҝc�C~���L@�!=�I�uz�m�ʐ^��IU:���d���݌a?a2h/���i�y�;��nQ����o �(�����&�=X;-�?�vkC�)���fm9��ҟE��f^��-MזJ��=�4o,q�˒�i^�X\lX޳�ۓ����{-:�������V{��??�&��*_i��]�Ţ@����T~�9{��U�p��M��Xא�j���S雩W::��@V�Vپ��=-��}_e���y{�Ď�^�g�if�h�j�r�Ԯ���0(��w90���{�T�,OT�<~
����>ϷXVX���8��^tΪ���/�����y
�F&��$ZL����ȏ!D����Hn˃8�m�����L����:�d�J'�!c\?�<ƶ}���@}���������݁
"'�||�2�_}��W	3:����}6)X�.�邈�I���e�mś�[�:ޝ��r�m��L#hd ��c^o����;�6��a�!m����L�S���
>�n��N-���j'�9BP�B��"7�%"���J�<��Z���)�
}�B	�[S�����gԓd%���7
�O�M�mf�Z�dQ?��8k����
��8V��jW��{z�
�5�zՄ���ff2!�]�J�7�����3��Cƅ2P����,�Mw��ǹ���*)��5H�����% s�9ҏt�I�TH��'�~�ic��K�"�~X��=~KH�^�!O�q&�
�"�^���S9c*l`t��12�2�Q�d�@���Z1�N���[
:����H\��t܆���Ce�S�S�R|D��XECyd�hp�9@<(�+�����$̙4���;.9댋)5��d�e�s׷z$���U��f����{��<&�v�$���b�)K��W��T�����R�8Y�j���'��?K^GW��{�o%8���dw������J�g�M�z	3.��7S�[�^�n�?�ԣ��l���C9�Xd��C?��5{/�����{/���{� �2D{D
u�wo����̧���
�Cj�c���T�#Ț����y+L��@w1�����c�@�]��?�|���K��9��d�X�����e,r���755���뼼�ِ���\\5A���	�7�	�[��B�~����b��s�^w�E)`sOrя)eަlCZ�@Kg���ߝ��z��/mi�M)�|D�R�ѿ��=���/��|��pzW�PC<��x�u=(9�m8m؊�-LW��.n:�Z}w杠6�
w�$"��O5��t�5����Nց�;&̢� '|^0���R�.�T(|$p��Ȳ���!��M:�
toTĦK���MH'������O��|2�6N�5�k 1J-�1�YYs��ViU�8o��fYp�s�*�l	�/�Evs2J��/�?|��Ÿ�F�b-�VAcF��:���l�l��{类�.K�M(6MYW��,3��w���Ec©Q���<
���CT?�l�7UZ�����*��{E��ipCT�4�c)f�(1/�Z,�O��,��T�eE��C���kؖ��K�,�KH:�&��#H���D5mrH���?3�Q�F"���D�Љ���6��ŷP�>���	!�Uq�u�.��f�c�^�t��X�\ZZ�J��9V]�бو+|�f��q�,��ҏ��A�_/儘�(#� :�Γ��k�Q�n��~C�
����<�ϳM�f��ɥ�$<;���e����ڤ1%��i���EUg�q*;�R��1=X��hW`�VU�r7���.Y"�q��y�W�(�M��&��q��ψ��b�)�c�����Anj�I�W4y��tҝ�1���Q�܃��j�	6���W!h�d77�"N���˴��:�C�M\t��i1r��[?Ѓo�{�TEz�r�	�6��k?Z���Q[���7�/�����V�{.�=ծ�"�+����9=� K�Le,`S��w�9oW͡ɓ�l��
�_��G�׆aR�0��e����_ǁu���5��X2��k�>���[�:��k�ї/7:�YÒ���+W.1Ad�e;�f��4�����Y.����H:��^����θ`"<�H�W��G!�u�M�,�Z@LT7�cC����ގ���
��>�7%1��$E5��:D�kP����2r�@����5�����ݕ+�Z����f}��G�
7���R=�4GOb��T˷�
��ώ�#_�w�Taҳ�j���t��[����H�	�-ys���G�d�h�Au.Z�54N^�����R�ӲG�2Qё��\I����>�]zP����=�>';��r���?�8D�x[k5j�4I�T�U	�W�0�*����hڬ�Fg��LRg�X,���cA�!����*��}%��s�Y|�{�F����+���u]�$�_oI�r+sź�v8��s����R���?,%_��'N,�8+ ���kħ�F�gd/$[�5�'��Z�ǡ)���A�{P���
{�2d��fܥ�C(���QU�g1�r�\;�H��b��b�τ�����e+lI�"�"�Ӝ��
�.�?��>ik����V2Y�r.��6�ы�<�OF}K��lc�+$�#˧{ɘ
6S�9Ґu����d���`���*�ٕX���5�=��e���ou7~�4�-�x��f��&�|ۼc���;¼�,�Z�_ݥ�&k㯩���\&��cwF��c렮7��ؔ���WK��]�}Q�Y�:��HA=r/KuWT�7���Voi�������;�Ս��+�ݖO?e������m�+�9W���*�3���M��u=��-�ZR)����Q�v!E�Qa�(9�P+Bv�{@�E5�*q�]?�����vS���!W㐸�7g!�N���£Ir��WO���ԇdmb���W�B���M�!��*I��>t�3<Z��o��30X������ܧ�?�y��I=�5`ռ�4�j�M,��Cy�=�o݉�TpGX��Fo���~U�o���+ZmG��z-�V-���;z�i���ʁ@�5~c8{���n�PL�T�{���+�<�T4��B��-ܾ[�@A��d/y@e��A�*m�hɛ��03�N>�9� �3��D��˓���ʬ�������y�*{+�I�fD$5w����[E�G�e��L�e�ur�H����1�����T�~ΧtWyw�$vsj�f2(�d���F�g]kSz!~�']:4`�lyi1�Yʸ��7y��T��)IJ��u�� ����^��ճ�ķ�'^D��v������IwN{+$>�|��ؿ�z�Fd����a�����O��bDL�{̬��o���<5|�ʐ��-DI��ߚk���y�BoW�+�o���^��'^N?�� =8\|7rp0�~Iq��X��������3�
X���dyz��l���0�E�p)��K�d��BĔ,�D�K��Ξk���m���?^$�fRd9M"Q��%��ƨѣf�H��ç�]�9_R�U��Aq�}<����=�^��F-ڋ�V���욽Vq�*ĝ�/s�r��������u!`D����[I�w�=)	Ek�v���kȿgou�S�,`����*糣:�g<�N����Ͼ${֩ڗm��ߕ�˻:7m�L̝VP�	���Zo�x��\�b'C��L}zq!=Ew�
h8���t��[�F3Xc���Xru�.�$K|�3�b��8���r�ҋ���?Mzbި�A�ԧ?�k+Q��=�JZ;T�gr��]M{C�}BK��&0��F~~�Y��:�P]�\��
B���T�*&��,F�u�U�y���`H��n�
n��
F��|�K�ln��x��\.���H|���Im�,�i]�&�+C��9�DZ���7�+�g����Ds��>���������mb�|{�{q�Ouye�ڬ(+7��oʈz0'�#2�VQ���ǗM�E��}�
��LK�4��~�I�:�ֲnj5'J�e9wse>{hP��g���,��f!�k���土^��Ɔ��l|�w�u|Ñ߬�<e��͛�ԝ|wZ@O�iP��	�l�ns��S�֔���L��|���Br��%I�Р�u֡;E��R,���Mj7���l}�-[���`�p���ɮ�0ف.u��I"uCC6�L���N��-�J�b�;B�!� ��~)����4dn�dNj7s�'�E	o�9J�	n0���p�3�;����̝�07*]�R݇�Ɖ�C�� ܙ<?��4���?�{t�q����������b�X��ݰ���e��m�7��	�	w�v�C��l�W�j�m'�|[d��>���D�Q�x3Ck�p)���e���C>��Ԟ$�2f=����:H�h5ڢ��hF��L�,@��:�����E��~7��BV?Q#���3QA�.јڬ��xW�uj�T�a7`N�"�*�kKbY��JD�:
��,T����3sq�%̓!L�ooP�M�Z~8_BU�h�2|��H@�����m�Ej]<��m��	wFɇ�|�![��$��Q��#�z����T�֞N��6�		�讎�HNb!b'r�V���!R�n�&>w���w�������)�rR`�><\��|�a� 	��+��Q۹o���=b$Jh��ܒ"A丄�uu?�\��hG!�7�˽&K>��p50�E��*���~#>ĤR�>p8%�q��{��}�#��p����q�Ϳ�fOG[pVa��rN�v�
@`H�r�r��UHk�έ|z��g,t��Q����ͭ�Nb��)��Y�0G�}ws=�?1�]�Ο.:����X��ӻ$��V�ލځsw�/��@�@���{W,}v✥"Ըz����EIIK�U��ŏIe�P�`��fq�4ꒀ<Et�\|4:C(zm�;n	�ih07��1(�XX�b>�y]%]� �-"Փ9�s��zRi� 
٪Ӎ럤1�!�Sj�3
��^��-S`Y9����%̥ʒ�>�2�.�-}�pѷ��7��^�-R��2�U�[��KV�^����j��]�N牅�a��"}���-��|����� k�2a�^����!b)-D��*5�7ho�Ѡ��J���?\ζn<�o��Q���0^�06�%g�>)�f��U�*7���U��'��M$+���6_7	Ԥ��Y�|j���ip��UzǵA�������[���.`�{f�"[ꨃ����H17�0��u eeɲH�k.���a0<�bGQ�Ji�%��_�+!���}W�jۑu(Gkf��EsF�/�r�yy�#�X5�F��H�Ʈ5��Y�e��8<�1g휨�}fP�}�,-�^_�J��Ϸ&}$��6�vƸ����e���o�0��?�
{�d–�"�+�=����*��c�y��xy�Z%�=vS#C��9
p"8*�^Zx��7S�͊;���s���_"�̯i��#'�+*�q2I��yl%��E����^[Ɖ��7�8A�-�4�㋲�.��A�uF�EOZ�a�;R3G�F����~#�ž�T�]\{jg�W�X�~�<�pDm�E�ݭ���Q��G�C���=p�$sC�T"���Y�uG?��1zˠx��i�v�5:�h�`��亟#�*�����,����f�#>3e�Tu��u+(�l�:��*o�w����Q���ʑ��GwE��8���w����U��՛�n�K�-� �͎K�M��r�9�]�ay��+��2���p+ҹ����x��?�_Q{��(Ƕ;
�-!��1FR9n�f��!������?n��
 cD$=K��n,P�Yg��xq�ͩ�'C�� 
�}�G�%3Cg�Q�Ӝc$�n�%lcf�Uˌ�N�^�ޤ��M�-�'KV�Ϛ�9�y��e�z�bQ��ȵ��ƏxT�R�Q���5~
^��u9g��3�f �{��&#T��u�H�8%���2t�):�N#�s�??%��?05����љ�T*�R��g�)Sאy"҇SAܻ�錪�)q���R�K=W�H���=��.(<���>L}�,�7�汫�Ǝ��P��� s�+�fI��X\h���;s�b)�.V��Ħ,��|pU����YY�
��}�0ӐT�z��q�M�eRp���-NS\ �.�]���H�d�v�i�dK9}�dqz���K�5�nX e���5bF���6�ʍm�C��@;�?�{R,l�=���p�e��(��FM-��c�<�:G�Нn��喊����&R�aRV��z*/�ҴT�#�H6����v���#�I�(����V!QҠ��G���߄�+x�m2k3����zU�35հ����2o�~Gq��r�v �����*�
��[Ւ�C�[~:�m&��$�4ij��B8�4|���؍pH��r���+ƺQ)��؂�I�
�<Dmh��	l��H�7Iy�C��j�����AG�@���^�rUe5��ôc�G#[!C�"J�Tܻr7+LUʻ��|%�#N�M�6�t?&���B��D�o��;�<>��g�H�S��ba-ui-��l����/о�0�\M�}K�?�FdD��{=�{<ԍ���^Ѡ��;��|x�݋	��]94j���Fa��f�|�l\�Q�!�r5��3L�c6�?a�a���5�c��G|�-����ls^���8�%�6u�O��9�Q��ǟ��nXIx����4paܽf�ζ�K~�?+2yIb)��;�(��J���Ε�FH�����+�*1&"ɰ��ɍ���P�a�%'o�f?���cO�O�K����8�Vz��M��é�cg��֧�6Y_}�	�o��m��+zgT|�VQ?'����"�x��R�;gO^�L��8;��q���a��ߘl�Lb�L\�Ww�>k���~[gwk��:��>2}Z�B�{��W
,�w�&�S� k��a@�Ը�?�6>3����n=)?{�2���������H2,)q��H`��ޕ�3jkTĞB���?��Qm$%�)�����}bU�q_�c�qY	-����_�1Ӂ�)j�?���E=7>��-9�6�l���.�� s�x"�h��c���[��y��7�?�N
-������ T��K�����7�9�|�Ѱxz�j�gmh�I�n�H�o�g)�v���~����
C�;L�Jq�u��p��mW�<���˗=l+(�lCP���m-�[I�H�HK(��|LQk�g�ª?C�EBx��}QN�"��;��FNU��cE�\k5E�G
н�^Jv�<�+��Dk���r�K�C�N
�w¹*�{�����Ϛ�>��j��h��É�W~{�|�k�ÿ��$a�=�����g�1�iz���f҆M��m�� ���z`��0X�*��+G��n�� ?J�>�[St�d�>)�`zdM���+�9���,Z', į>cu}n��mĐ�N�=�z8$Rգ�3�c��1ME��K�Y�$����������
5�
�]Y<z�(�����:�Ob�N��A�E�5إ,��/��-���D�ʰ���sU�2
b�C=���(�F�sU�;ˏ(.��&��@÷?K�*ؕ�1���E<�
�|g�<�%u"
���kC�D%ʫ��p�zE�]�h?�*d�Pg�\�R
D�ć�U�$F��&�i�橇�Z>^=xܠ�KHUNy����xU���q��Y��d*�gg�mnL�%��r䰼!�@��Z"��["(�͘pf��k��"v���$�ρ9&L�I�Q����V�:���WIZ�k�7��TT�!�X�52Q���I��e(�Z���P��
b��}LL�ϰ�:�.'���T/�k�S-�>���l��T��5�}T�r��#�e�(��S�G��:�'Wm�P 8��oV�V����7S*��6⋫��-���7k�I�5P|-�w����S�X�����-g���`(�T��zI(j�aZ�c^�w.��8��g-�fV���]hl�3.yO�u�2&������8EAD|L|Z�3�ɡ���2�]�ۑ�5�KqO�[�شܵ,Մ>�k*���j��sέ�	*��Ѯ|\�A[
��T����O��=5�@'����z��=]Z(CGE��fM��8�G�W��P+q�NE��m�F06�8Z:b7���-�Ь��%�{��Ch����1��^t��m,R��\��H�T�Z#x�㮽���`��Y�'���}?����}��iou8�K��P1�����㥙夆C����������Z�"�8������@x�
µ-�``�Pj�}6Ll�R����U\�6[��CZ�����N�"��*Y���=3C�Ⱦ3���ڣ��x~���,ce�G��;�,5�R>U�w�6Լ�SAR7|aq��u��^�ځ;V�`ۼ<��V�����V�HɪE-�3��t9Ʌh��G�;��~V�n<r-˥������V��?�%�asR�1��>:����{�~۔x�9:�7N�+m1����f75dGr��z��ZFݬ(:��%�P�
9�G��a�xLI�rl2}���>M�n?��K�wE/��:T�@��Y_���a���^O�ME^3�	����O��\��������s

_�^��9$-�Q���5��y�'��m��s���с
�c�v�V �I����߇�!?�I���$7�ܡ�\ód[�#���mH��܁���F��&8�$*����p��w,意�hiḩt�-,6�i0��I�^�,`�Ś7��{~�5Q�R<?OȊc%S���(��D<�Cɓά����*��r���W/�<5�IT���,�y�P�	��4�M^�V˿�׏��e?1�M��BO�P��<qBT}��6Z	|.<��3p�G�2q�Zoݹ�p|UNbUqk��w~m��9`�L�E�E@Ka}��!,��/��p���7���b�� ]��G�{�����O1�R1��
;č��A��&���u³F��?�m	��]��1���ϛ�Gg����돾��IY���ƃ�#J��j�aZ��z"L(�Bz~Fq���i�eU7m��4/��u?��@��H���	D�B��L�����0}*�X"��J�Z���
F��b��N�����@FP'H�fX�DIVTM7L�v\��(N�,/ʪnڮ�i^�m?��~����(N�,/ʪnڮaBRic�0N�n�q^��~?��yd��=#?��j��ߴl�|�`�p���B�XB�+��J�Z���
F��b��N���q ���$
����")�Pit���py|�P$�Her�R��huz��d�Xmv����z@��H���	D�B�Y��`��.�/���L�P���No0�����p����?_ �%R�\�T�5Z�!A1� )�a9��d�Xmv���x}~�	e\H��u�Ӳ]n��)�&�q!=?�8Q��4ˋ�����q��uۏ�s���I���(Ɋ��iَ�A�I��EY�M��8�˺��yݟ� #(�$E3,��$+���e;��a'i�eU7m��/!��m)hrYzb��3�3�S�H`]A�Mx1A���>]���5�j��^F�i�T\?8E|ӕ��_�e��oH{U��Ġ��T�&L�-3�QW�n��Ԥu����M������*
ۥ����D��+�%�j;�b�ͮ�' Y�>
(؟�4��w�]|���/���JW#Ȥ�Zca7�����B'8:{�} ��N�$�8�o��Q|W���� �mOnL�)��Q^!W��CM8�}:N�hۑc&4ٝq�o���_��@�xމ�ɐ��5����
Q�+�t�*\��]�w	�C!�W��^"�yw��n������e�/��R�=�`���*��5b�J����z�MwZ���N	h��PQ�7޴���-�␜�E��g�����C�29��*X����YK�Uk�&D���\�4����]�aw�-�5�&_kD�@�;���I1f�ͫ�{�C�[ŏY}E��xd�S�9ɇ��@�~��$�`�K��P����K}���=�wv��ZR
?P��h{�%���Zdϙ�'�bi��ys-KhO�ü���.�� [4/%0y�]�|�(��珫D���Bˀ(�D��뺹�"�c��fw��8��Ng�P�m���zd�o*Ģj6h�n�i[�}�iY
L�ٱ�E�f�9��eF�8�d�ǣ��O�k�@�p����#B\���'Mo�=�)�
uĐE�B>:��6Qlo�����6��]�Z* �)�
˸k�ֿ����� �/�d?6�
Q���7D��x����'ey:��K��CaM�۽�T&�uf��T����x_�����W�D�){5�PJ7�A�����2��wW�q��o-C��g*�����te�
���j^"�~�4�{;fo-�W�?��*w�W�1�{���|���k�.Q�Z"�
X�-��J��/~������۵�dp��;�<W����4�M�S��/��+�En���ش�0�;��=��N���{�3����!�Q)9]=$}���޵���2����K��Pg(۫PY�)k�揚�f�,�}�eK��fh��#�*�3W��A+�����xv��fe��+�+�,��fTr�~j��)	�[Tn����*��4p��]���W1dz�%�f��5*y�����W	��	@Y�9~����Ë���Ʉ�T5�X�ٳi_�q# �;�����K(�56�9L�FQ�/�R���L��EE&Rz��O�EK��-�Q}Y�kv���
������qsOLc�G�2�h����n⪻� :`�֥��$����ǘ7UѬr���_J�Q!wJ������:6���m�纏h�%��b��4����	�T�M��_�3\j�z��Fs1g�.�c�b��G�d?2RY`o��;�����2u��%�{��^r�)`+�v��۳������7�Fs=���CuC�{�C.�=Z8kV�Ye���`�Ԯ_Y�ꓣUu@�i��R|:��^�y��%�����}.ӀT4O���.]qq�Z-v.w�e��i��������o���:��f/1I|F�b���D�X����CE��?{���U�-Nx���0�w���6�~U�~}.x�����c��f�!�6�x�>�}�WAD<i��3��״)�>�|Qķ��~������X���C�����}���<A�>�������6cT���;k���#7.{7c��8�T����_���4��X��;B*bm���#"""*��RJ)EDDDD����̛?9��7���t3Zk�g�с�hz�������t&ޯw.���Y�N�ˋվ�gH@E���!�6����~b�rݴ���z��]DDDDDDDfffffffVUUUUUUU�i��{z�����6�Nd�assets/lib/font-awesome/fonts/fontawesome-webfont.eot000064400000503556151327220410017066 0ustar00n����LPYxϐFontAwesomeRegular$Version 4.7.0 2016FontAwesome
�PFFTMk�G���GDEF��p OS/2�2z@X`cmap
�:��gasp���hglyf���M�L�head��-�6hhea
�$hmtxEy��
�loca��\�maxp,8 name㗋�gh�post����k�uː�xY_<��3�2�3�2���	�	����	��'@i��3��3s�pyrs@ �� �pU�]�����y�n�����2��@������
��������z���Z@�5�5
���z���ZZ����@���������,_���@������s���@	��@��(������@�����@��@-
�M�M�-�
�M�M�����@�����@@�
�-����`��b����
���$����6�4�8�"�"""""���@�D@���,,@� ���������	m��)@�@	 	' D9>dY*	'						�	��	��T										�@	f�	%RE	 		$!k(D�'	��	�%��	�%	��	��0%�/�&��p@0 �����!"""`���>�N�^�n�~��������������.�>�N�^�n�~��������������>�N�^�n�~������������ �����!"""`���!�@�P�`�p�������������� �0�@�P�`�p��������������!�@�P�`�p�������������\�X�S�B�1����ݬ

	����������������������������������
�
	,,,,,,,,,,,,,��t�L�T$�l	x	�
T(��
d����l,����4d�pH�$d,t( � �!�"0# $,$�&D'�(�)T**�,,�-�.@.�/`/�00�1�2�3d444�5 5�5�6 6\6�7H7�88`8�9L9�:h:�;�<p=p><>�?h?�@H@�A0A�BXB�CdC�DLD�E�F�G0G�H�I�J8K�L�MdN,N�N�O�P`P�Q4Q�RRlS,S�T`U0W�X�Z[@[�\<\�]�^(^�_�`pb,b�dd�ePe�f�g`g�iLi�jDkk�l�m@n,oLp�q�r�sxtt�uD{`||�}}�~��������H��������l�@����������l�H� ���T��H�������`����@�����$�\�X��D�������T�X�����D�P�,���8���d�\����������������H���x��� �t���X���p��d��������x�t�������������@������Œ�\� ļ�ŸƔ�0���d��ʨˀ����͔�x��ϰЌ�,ш�҈�ӌ���8�,՜�`���l�Hش�`���Tڸ�۔�@���l��ބ�߬��l�p� ������������������������������4�����X���$�l���(����`����������	d

��
,�,��8��(�X���x|T�@��| �!�"x##l$$�'h(�*L,T.L1t1�2�303�4�5t6T7$89H::�;�<�<�?X@A�B�C�D�EHFHGpHHIxJ J�K�L�MN@P@Q�R�SDT ULV`V�WXX4X�ZZ�[d[�\|]�^�`�aHa�b�cXd�etfhg�h�i\jxn�p@s�vw�x�y�z�{h|�}}�\���l�t���4���������t���8�8���L���T�������������|�������|�������4�x�����L����������X�(� ������� ������@�����l���t����$����x�L�L��� �H������Ġ�T�(����ʈˠ��ϔ�l�d���P�Մ�x�p���ڬ�T�T���ވ�L�����<�H��$���l������4����������� �P�l����,���x���p�,�x�t��d����4���4,h�P	4
��
�4�<,,408$�8�T� |!h"�$L%0&H'�(�)�*0*�+�,�.$.�0�1�2@2�3�4t5$6�9 :�:�;;�<(<�=4?�@�A�C�D�F�H`H�I�L�L�L�L�L�L�L�L�L�L�L�L�L�L�L�L�p7!!!���@p�p �p�]���!2#!"&463!&54>3!2�+��@&&��&&@��+$(�($F#+���&4&&4&x+#��+".4>32".4>32467632DhgZghDDhg-iW�DhgZghDDhg-iW&@(8 ��2N++NdN+'�;2N++NdN+'�3
8���!  #"'#"$&6$ �������rL46$���܏���oo��o|W%r��������4L&V|o��oo����ܳ��%��=M%+".'&%&'3!26<.#!";2>767>7#!"&5463!2� %��3@m00m@3���% 
�
�@
���:"7..7":�6]�^B�@B^^B�B^ $΄+0110+��$�
(	

�t��1%%1��+�`��B^^B@B^^���"'.54632>32�4��
#L</��>�oP$$Po�>���Z$_d�C�+I@$$@I+��������"#"'%#"&547&547%62���V�?�?V��8��<��8y���
���b%	I�))�9I	����	+	%%#"'%#"&547&547%62q2�Z���Z2Izy���V)�?�?V��8��<��8)>~��>��[��
���
2���b%	I�))�9I	���%#!"&54>3 72 &6 }X��X}.GuL�l�LuG.�����>�m��mU��mE��Em�������>����/?O_o���54&+";2654&+";2654&+";264&#!"3!2654&+";2654&+";264&#!"3!2654&+";2654&+";2654&+";267#!"&5463!2�&�&&�&&�&&�&&�&&�&&�&&&�&�&&�&�&�&&�&��&�&&&�&�&&�&&�&&�&&�&&�&�^B��B^^B@B^@�&&�&&��&&�&&��&&�&&�&&�&&��&&�&&���&&�&&&&�&&���&&�&&��&&�&&��&&�&&���B^^B@B^^��/?#!"&5463!2#!"&5463!2#!"&5463!2#!"&5463!2L4�4LL44LL4�4LL44L�L4�4LL44LL4�4LL44L��4LL4�4LL��4LL4�4LL���4LL4�4LL��4LL4�4LL	�/?O_o�#!"&=463!2#!"&=463!2#!"&=463!2#!"&=463!2#!"&=463!2#!"&=463!2#!"&=463!2#!"&=463!2#!"&=463!28(��(88(@(88(��(88(@(8�8(��(88(@(8��8(��(88(@(8�8(��(88(@(8�8(��(88(@(8��8(��(88(@(8�8(��(88(@(88(��(88(@(8 �(88(�(88�(88(�(88��(88(�(88�(88(�(88��(88(�(88��(88(�(88�(88(�(88��(88(�(88�(88(�(88�/?O_#!"&=463!2#!"&=463!2#!"&=463!2#!"&=463!2#!"&=463!2#!"&=463!28(��(88(@(88(��(88(@(88(�@(88(�(8�8(��(88(@(88(�@(88(�(88(�@(88(�(8 �(88(�(88�(88(�(88��(88(�(88�(88(�(88��(88(�(88�(88(�(88y��"/&4?62	62��,�P����P&�P��P�,��jP�����n���#$"'	"/&47	&4?62	62	�P���P�&���P&&P���&�P�&���P&&P���&�P������#+D++"&=#"&=46;546;232  #"'#"$&6$ 
�
@
�

�
@
�
�������rK56$���܏���oo��o|W�@
�

�
@
�

��r��������jK&V|o��oo����ܳ�����0#!"&=463!2  #"'#"$&6$ 
��

@
�������rK56$���܏���oo��o|W�@

@
�r��������jK&V|o��oo����ܳ����)5 $&54762>54&'.7>"&5462z�����z��+i *bkQ��н�Qkb* j*����LhLLhL�����zz���Bm +*i J�yh��QQ��hy�J i*+ m��J��4LL4�4LL���/?O%+"&=46;2%+"&546;2%+"&546;2+"&546;2+"&546;2��������������`��r��@�@r�@��@����n4&"2#"/+"&/&'#"'&'&547>7&/.=46?67&'&547>3267676;27632�Ԗ����#H
	��,/
�1)�
~'H�
�(C
	�

�,/
�1)�	
�$H�
Ԗ�Ԗm�6%2X
%�	l�2
�k	r6

[21
�..9Q

$�
k�2
�k	
w3[20����/;Cg+"&546;2+"&546;2+"&546;2!3!2>!'&'!+#!"&5#"&=463!7>3!2!2@@@@@@���@�`�0
��
o`^B��B^`5FN(@(NF5 ��@��@��@���L%%Ju		�@�LSyuS�@�%44%�f5#!!!"&5465	7#"'	'&/&6762546;2�&�����&??�>

�L�L
>
� X ���
 � &���&��&AJ	A��	J
W���h��##!"&5463!2!&'&!"&5!�(8(��(88(�(`�x
��c�`(8��`(��(88(@(8(D��9�8(����� ,#!"&=46;46;2.  6 $$ ����@��������(�r���^����a�a�@@`��(��������_�^����a�a��2NC5.+";26#!26'.#!"3!"547>3!";26/.#!2W
�
��.�@

��

�@.�$S

�

S$�@

���9I


�
I6>
��
��>�%=$4&"2$4&"2#!"&5463!2?!2"'&763!463!2!2&4&&4&&4&&4�8(�@(88(ч:�:��(8���@6�@*&&*�4&&4&&4&&4& ��(88(@(8�88�8)�@�)'�&&�@���$0"'&76;46;232  >& $$ `
������������(���r���^����a�a`��		@`��2�������(���^����a�a�����$0++"&5#"&54762  >& $$ ^���
?@�����(���r���^����a�a���`?		����������(���^����a�a��
#!.'!!!%#!"&547>3!2�<�<�<_@`&��&�
5@5
�@����&&�>=(""��=���'#"'&5476.  6 $$ � ��  ! ��������(�r���^����a�a�J��	%�%���(��������_�^����a�a�����3#!"'&?&#"3267672#"$&6$3276&�@*���h��QQ��hw�I
�	m�ʬ����zz���k�)'�@&('��Q��н�Qh_
	�
��z�8�zoe����$G!"$'"&5463!23267676;2#!"&4?&#"+"&=!2762�@�h���k�4&&�&�G�a��F*�
&�@&��Ɇ�F*�
A��k�4&���nf�&�&&4�BH�rd�@&&4���rd
Moe�&�/?O_o+"&=46;25+"&=46;25+"&=46;2#!"&=463!25#!"&=463!25#!"&=463!24&#!"3!26#!"&5463!2�
@

@

@

@

@

@
�
�@

�

�@

�

�@

�
�
�@

�
�^B�@B^^B�B^`@

@
�@

@
�@

@
��@

@
�@

@
�@

@
�3@

��
M��B^^B@B^^��!54&"#!"&546;54 32@�Ԗ@8(�@(88( p (8�j��j��(88(@(8������8@���7+"&5&5462#".#"#"&5476763232>32@@
@
@KjK�ך=}\�I���&:�k�~&26]S
&H&�

�&H5KKu�t,4,�	&� x:;*4*&��K#+"&546;227654$ >3546;2+"&="&/&546$ �<��X@@Gv"D�����װD"vG@@X��<��4L4����1!Sk @ G<_b������b_<G �� kS!1����zz�� �"'!"&5463!62&4����&&M4&���&M&�&M& ��-"'!"&5463!62#"&54>4.54632&4����&&M4&�UF
&""""&
F���&M&�&M&���%/B/%���G-Ik"'!"&5463!62#"&54>4.54632#"&54767>4&'&'&54632#"&547>7676'&'.'&54632&4����&&M4&�UF
&""""&
FU��
&'8JSSJ8'&

����

&'.${��{$.'&

����&M&�&M&���%/B/%7���;&'6���6'&;��4�[&$
[2[
$&[��#/37#5#5!#5!!!!!!!#5!#5!5##!35!!!����������������������������������������������������������������������������#'+/37;?3#3#3#3#3#3#3#3#3#3#3#3#3#3#3#3#3????  ^��>>~??�??�??~??~??^??�^^?  ^??������������������������������������4&"2#"'.5463!2�KjKKjv%�'45%�5&5L4�5�&�%jKKjK�@5%�%%�%�5�4L5&�6'��k�54&"2#"'.5463!2#"&'654'.#32�KjKKjv%�'45%�5&5L4�5�&�%�%�'4$.�%%�5&�5�5�&�%jKKjK�@5%�%%�%�5�4L5&�6'45%�%�%54'�&55&�6'
��y�Tdt#!"&'&74676&7>7>76&7>7>76&7>7>76&7>7>63!2#!"3!2676'3!26?6&#!"3!26?6&#!"g(��sA�eM�,*$/
!'&
�JP��$G]��
x�6,&��`
��
h`
��
"9H�v@WkNC<.
&k&
("$p"	.
#u&#	%!'	pJ�vwEF�#

@

��

@

���2#"'	#"'.546763�!''!0#�G�G$/!''!�	
8"��"8
 ��X!	
8"	"8
	����<)!!#"&=!4&"27+#!"&=#"&546;463!232������(8���&4&&4�
�8(�@(8�
qO@8(�(`�(@Oq��8(��&4&&4&@�`
�(88(�
�Oq (8(�`(�q���!)2"&42#!"&546;7>3!2  I��j��j��j��j�3e55e3�gr������`��I�j��j��j�j��1GG1���r��������P2327&7>7;"&#"4?2>54.'%3"&#"#ժ!�9&W��B03&�K5�!�)V�?�@L��'�	
>R�>e;&L:�:%P�>��vO
'h�� N��_"�:-&+#
��:��	'	����+a%3 4'.#"32>54.#"7>7><5'./6$3232#"&#"+JBx)EB_I:I*CRzb3:dtB2P���$$5.3b�ZF�|\8!-T>5��Fu��\,�,j�n OrB,<!
5�4wJ]�?tTFi;
2�3j.�p^%/2�+
	S:T}K4W9: #ƕd�fE���:7>7676'5.'732>7"#"&#&#"OA
zj=N!�}:0e��%	y�
+t�D3�~U#B4#
g		'2
%/!:
���T	bRU,7����}%2"/&6;#"&?62+326323!2>?23&'.'.#"&"$#"#&=>764=464.'&#"&'�!~:~!PP!~:~!P��6�,�,$�$%*'
c2N 	
(�$"L��A2�3Yl�!x!*�%��%%��%��
p�P,T	NE	Q7^���oH!+(
3	 *Ue�eu
wg��a�32632$?23&'.5&'&#"&"5$#"#&=>7>4&54&54>.'&#"&'2#".465!#".'&47>32!4&4>Q6�,�,Faw!*'
=~Pl*	
(�$"L��A2�3Yl	�)�!*<7@@7<
�
<7@@7<
 p�P,T	MF
Q7�47ƢHoH!+(
3	 t���JHQ6wh��',686,'$##$',686,'$##$�/?%#!"&=463!2#!"&=463!2#!"&=463!2#!"&=463!2&��&&�&��&�&&&&�&&&��&��&&�&��&&�&&f�&&�&&f�&&�&&f�&&�&&�/?%#!"&=463!2#!"&=463!2#!"&=463!2#!"&=463!2&��&&�&��&��&&�&&��&&�&��&��&&�&��&&�&&f�&&�&&f�&&�&&f�&&�&&�/?%#!"&=463!2#!"&=463!2#!"&=463!2#!"&=463!2&��&&�&&�&&&&�&&&&��&&�&��&&�&&f�&&�&&f�&&�&&f�&&�&&�/?%#!"&=463!2#!"&=463!2#!"&=463!2#!"&=463!2&��&&�&&��&&�&&��&&�&&��&&�&��&&�&&f�&&�&&f�&&�&&f�&&�&&�/?O_o%+"&=46;2+"&=46;2+"&=46;2#!"&=463!2+"&=46;2#!"&=463!2#!"&=463!2#!"&=463!2
�

�

�

�

�

�

��

@
�
�

�

��

@

��

@

��

@
�

�
s�

�
s�

�
��

�
s�

�
��

�
s�

�
s�

�
�/?O#"'&47632#!"&=463!2#!"&=463!2#!"&=463!2#!"&=463!2�
	��		 	
�
�@

�

��

@

��

@

�@

�
�
	 		 	��

�
s�

�
s�

�
s�

�
�/?O#"&54632	#!"&=463!2#!"&=463!2#!"&=463!2#!"&=463!2`	��	

	 �
�@

�

��

@

��

@

�@

�
�	��	
@
	��	�

�
s�

�
s�

�
s�

�
#"'#!"&5463!2632'
�m�w�@w��w�w��
'���*��w��w�w��w������."&462!5	!"3!2654&#!"&5463!2�p�pp�p��@���

@
�^B��B^^B@B^�pp�p���@�@� 
�@

�
 �@B^^B�B^^���k%!7'34#"3276'	!7632k[�[�v
��
6����`�%��`�$65&�%[�[k����
�`����5%���&&�'���4&"2"&'&54 �Ԗ���!��?H?��!,�,Ԗ�ԖmF��!&&!Fm�,�����%" $$ ���������^����a�a`@������^����a�a���-4'.'&"26% 547>7>2"KjK��X��QqYn	243nYqQ�$!+!77!+!$5KK���,ԑ�	���]""]ً�	��9>H7'3&7#!"&5463!2'&#!"3!26=4?6	!762xt�t` �� ^Q�w��w��w@?61��B^^B@B^	@(` �`��\\��\P�`t�t8`� �� ^�Ͼw��w@w�1^B��B^^B~
	@��` \ \�P�+Z#!"&5463!12+"3!26=47676#"'&=# #"'.54>;547632��w��w��w�
M8
pB^^B@B^�
'���sw-

9*##;No��j�'
�#��w��w@w�
"^B��B^^B�

	��*�����
"g`�81T`PSA:'�*��4�/D#!"&5463!2#"'&#!"3!26=4?632"'&4?62	62��w��w��w@?61

��B^^B@B^	@

��B�RnB�Bn^��w��w@w�1
^B��B^^B�
	@
���Bn���nB�C"&=!32"'&46;!"'&4762!#"&4762+!5462�4&���&�4�&���&4�4&��&4&��&4�4�&���&4�4&��&4&��&4�4&���&����6'&'+"&546;267��:	&�&&�&	s�@�	
�Z&&�&&�Z
	���+6'&''&'+"&546;267667��:	�:	&�&&�&	�	s�@�	
�:�	
�Z&&�&&�Z
	��:
	z����6'&''&47667S�:	�:�	s�@�	
�:�4��:
	�|�	&546h��!!0a�
�
�
$���#!"&5463!2#!"&5463!2&�&&&��&�&&&@��&&�&&��&&�&&���#!"&5463!2&��&&�&@��&&�&&���&54646&5-�	��:	s��:	
��:4�:�
	���+&5464646;2+"&5&5-�	�	&�&&�&	�:	s��:	
��:	
�&&��&&�
	�:�
	���&54646;2+"&5-�	&�&&�&	s��:	
�&&��&&�
	62#!"&!"&5463!2�4��@��&&�&&-��:��&&&�&�����	"'&4762����4��4����4��4��4Z��f�	"/&47	&4?62S�4����4����44��4���#/54&#!4&+"!"3!;265!26 $$ �&�&�&�&&&�&&@���^����a�a@�&&&�&�&�&&&+�^����a�a�����54&#!"3!26 $$ �&�&&&@���^����a�a@�&&�&&+�^����a�a�����+74/7654/&#"'&#"32?32?6 $$ }��Z��Z��Z��Z����^����a�a���Z��Z��Z��Z�^����a�a�����#4/&"'&"327> $$ [4�h�4[j����^����a�a"Z�i�Z��J�^����a�a�����:F%54&+";264.#"32767632;265467>$ $$ ���o�W��	5!"40K(0?i�+! ":����^����a�a����X�R�dD4!&.uC$=1/J=�^����a�a�����.:%54&+4&#!";#"3!2654&+";26 $$ `��``��������^����a�a�����������^����a�a�����/_#"&=46;.'+"&=32+546;2>++"&=.'#"&=46;>7546;232�m&&m �l&�&l� m&&m �l&�&l�s&�%�&�&��%�&&�%�&�&��%�&&�&l� m&&m �l&�&l� m&&m �,�&��%�&&�%�&�&��%�&&�%�&���#/;"/"/&4?'&4?627626.  6 $$ I�

��

�

��

�

��

�

��
͒������(�r���^����a�aɒ

��

�

��

�

��

�

��
(��������_�^����a�a����� ,	"'&4?6262.  6 $$ ��Z4��f4�4fz�������(�r���^����a�a�Z&4f�f4�(��������_�^����a�a�����	"4'32>&#" $&6$  W���oɒV�󇥔�� z�����zz�8�����YW�˼�[����?����zz�:�zz�@�5K #!#"'&547632!2A4�@%&&K%54'�u%%�&54&K&&���4A��5K��$l$L%%�%54'�&&J&j&��K�5�K #"/&47!"&=463!&4?632�%�u'43'K&&%�@4AA4���&&K&45&�%@6%�u%%K&j&%K5�5K&$l$K&&�u#5��K@!#"'+"&5"/&547632K%K&56$��K5�5K��$l$K&&�#76%�%53'K&&%�@4AA4���&&K&45&�%%�u'5��K�"#"'&54?63246;2632K%�u'45%�u&&J'45%&L4�4L&%54'K%�5%�t%%�$65&K%%���4LL4�@&%%K'���,"&5#"#"'.'547!3462�4&�b��qb>#5���&4�4�&6Uu�e7D#		"�dž�&����/#!"&546262"/"/&47'&463!2�
���&�@&&4�L

r&4���

r

L�&�&�
���4&&�&�L

rI�@&���

r

L�4&&
���s/"/"/&47'&463!2#!"&546262&4���

r

L�&�&�
���&�@&&4�L

r@�@&���

r

L�4&&�
���4&&�&�L

r��##!+"&5!"&=463!46;2!2�8(�`8(�(8�`(88(�8(�(8�(8 �(8�`(88(�8(�(8�(88(�`8��#!"&=463!2�8(�@(88(�(8 �(88(�(88z���5'%+"&5&/&67-.?>46;2%6�.@g.��L4�4L��.g@.
��.@g.
L4�4L
.g@.���g.n.���4LL43�.n.g��g.n.�34LL4�͙.n.g����-  $54&+";264'&+";26/�a����^�����
�

�


�

�����^����a�a��
�
fm��
@
J%55!;263'&#"$4&#"32+#!"&5#"&5463!"&46327632#!2���$�$�8�~+(88�8(+}�(�`8(��(8`�]��]k=��=k]��]��8���,8e�8P88P8�����`(88(�@���M��M����N4&#"327>76$32#"'.#"#"&'.54>54&'&54>7>7>32&����z&^��&.������/+>+)>J>	W��m7����'
'"''? &4&c��&^|h_b��ml/J@L@#*
#M6:D
35sҟw$	'%
'	\�t��3#!"&=463!2'.54>54''�
��

@
�1O``O1CZ��Z71O``O1BZ��Z7�@

@
N�]SHH[3`�)Tt��bN�]SHH[3^�)Tt���!1&' 547 $4&#"2654632 '&476 ���=������=嘅�����}�(zVl��'��'���ٌ@�uhy����yhu����9(�}Vz��D#���#D#�������	=CU%7.5474&#"2654632%#"'&547.'&476!27632#76$7&'7+NWb=嘧�}�(zV�j�\i1
z,��X��
Y[6
$!%���'F��u�J�iys�?_�9ɍ?�kyhu�n(�}Vz����YF
KA؉L�a
�0��2�-�F"@Q���sp@�_���!3%54&+";264'&+";26#!"&'&7>2
�

�


�
�
#%;"�";%#<F<������7


���??""??�$$ll2#"'&'	+&/&'&?632	&'&?67>`,@L�����5
`		��
`	�����L�`4�L��H`
����`	��
a	5�
��L@��#37;?Os!!!!%!!!!%!!!!!!!!%!!4&+";26!!%!!!!74&+";26%#!"&546;546;2!546;232� ��`@���� ��`@���� ���@����@�� ��@����
@

@
� ��@��� �� 
@

@
�L4��4LL4�^B@B^�^B@B^�4L� �� @@��@@ � � � @@  

��
��@@ �� � 

��
M�4LL44L`B^^B``B^^B`L���7q.+"&=46;2#"&=".'673!54632#"&=!"+"&=46;2>767>3!54632�<M33K,��	��	
 j8Z4L2B4:;M33K,?		��	
�0N<* .)C=W]xD��0N<* .)C=W]xD?\�-7H)��	��	
�".=']�-7H)�
��w	��	
�<?.>mBZxPV3!�<?.>mBZxPV3!�
���&#"'&'5&6&>7>7&54>$32�d�FK��1A
0)����L���.���٫�C58.H(Y���e����#3C $=463!22>=463!2#!"&5463!2#!"&5463!2���H���&�&/<R.*.R</&�&�&��&&�&&��&&�&������Bɀ&&�4L&&L4�&&f��&&�&&��&&�&&Z� %"'	"/&4762��4���4��4�ͥ���5��5Z����	"'&4?62	62��4��44���5����5��%K%#!".<=#"&54762+!2"'&546;!"/&5463!232
�@�&@<@&�@	����:��&���	�
��& 

��&���&���
����&��	

��`&���:$"&462"&462!2#!"&54>7#"&463!2!2�LhLLh�LhLLh�!��
�&&�&��&&�&4hLLhLLhLLhL��%z<
0&4&&)17&4&
&&��#!"&5463!2!2��\�@\��\@\��\���@\��\�\��\ �W�*#!"&547>3!2!"4&5463!2!2W��+�B��"5P+�B@"5����^�=���\@\� \�H#�t3G#�3G:�_H�t�\��\ �@��+32"'&46;#"&4762�&��&�4�&��&4�4&�&4�4&&4�@�"&=!"'&4762!5462�4&�&4�4&&4�4�&��&4&��&����
!!!3!!��������������������������0@67&#".'&'#"'#"'32>54'6#!"&5463!28ADAE=\W{��O[/5dI
kDt���pČe1?*�w�@w��w�w��	(M&
B{Wta28r=Ku?RZ^Gw��T	-�@w��w�w�����$2+37#546375&#"#3!"&5463�w��w���/Dz?s�����w��w��w�@w�S�88�	�����w�w����#'.>4&#"26546326"&462!5!&  !5!!=!!%#!"&5463!2�B^8(�Ԗ���������>��������@�|�K5�5KK55K�^B(8Ԗ�Ԗ�€>�������v����5KK55KK�H��G4&"&#"2654'32#".'#"'#"&54$327.54632@p�p)*Ppp�p)*P�b	'"+`�N*(�a���;2��̓c`." b
PTY9��ppP*)p�ppP*)�b ".`�(*N��ͣ�2�ͣ����`+"'	b
MRZB�����4&"24&"264&"26#"/+"&/&'#"'&547>7&/.=46?67&'&547>3267676;27632#"&'"'#"'&547&'&=4767&547>32626?2#"&'"'#"'&547&'&=4767&547>32626?2��Ԗ���LhLKjKLhLKjK��	�"8w
s%(�")v

�
>�
	�"8x
s"+�")v
�<�
��3zLLz3��
3>8L3)x3
��3zLLz3��
3>8L3)x3
�Ԗ�Ԗ�4LL45KK54LL45KK���
#)0C	wZl/
�
Y�	
N,&�
#)0C	vZl.
�
Y�L0"��qG^^Gq�q$ ]G)Fq�qG^^Gq�q$ ]G)Fq��%O#"'#"&'&4>7>7.546$ '&'&'# '32$7>54'�����VZ|�$2$
|��E~E<�|
$2$�|ZV���:�(t}�������X(	
&%(H�w�쉉��x�H(%&	(X�ZT\�MKG���<m$4&"24&#!4654&#+32;254'>4'654&'>7+"&'&#!"&5463!6767>763232&4&&4�N2��`@`%)7&,$)'  
%/0Ӄy�#5 +�1	&<��$]`�{t��5KK5$e:1&+'3T�F0�h��4&&4&�3M:�;b^v�+D2 5#$��I�IJ 2E=\$YJ!$MCeM��-+(K5�5K�K5y�*%A�u]c���>q4&"24&'>54'654&'654&+"+322654&5!267+#"'.'&'&'!"&5463!27>;2&4&&4�+ 5#bW���0/%
  ')$,&7)%`@``2N��h�0##�T3'"(0;e$��5KK5 t��ip��<&	1&4&&4&�#\=E2&%IURI��$#5 2D+�v^b;�:M2g�c]vDEA%!bSV2M�K5�5K(,,��MeCM$!I��@�#"&547&547%6@�?V��8������b%	I�)���94.""'."	67"'.54632>32�+C`\hxeH>Hexh\`C+�ED���4��
#L</��>�oP$$Po�>��Q|I.3MCCM3.I|Q����/����Z$_d�C�+I@$$@I+� (@%#!"&5463!2#!"3!:"&5!"&5463!462�
��w��w@

��B^^B 
���4&�@&&�&4 ` 
�w�w�
 
^B�@B^24��& &�& &�����%573#7.";2634&#"35#347>32#!"&5463!2���FtIG9;HI�x�I��<,tԩw�@w��w�w�z��4DD43EE�����ueB���&#1�s�@w��w�w�����.4&"26#!+"'!"&5463"&463!2#2��&�S3L�l&�c4LL4�4LL4c����@��&��&{�LhLLhL��'?#!"&5463!2#!"3!26546;2"/"/&47'&463!2��w��w��w��@B^^B@B^@�&4��t

r

��&&`��w��w@w�@^B��B^^B@R�&��t

r

��4&&@"&5!"&5463!462	#!"&54&>3!2654&#!*.54&>3!2���4&�@&&�&4 s�w��

@B^^B��

@w��4��& &�& &��3�@w�
 
^B�B^ 
�����
I&5!%5!>732#!"&=4632654&'&'.=463!5463!2!2�J���J���S��q*5&=CKu��uKC=&5*q͍S8( ^B@B^ (8���`N��`Ѣ�΀G�tO6)"M36J[E@@E[J63M")6Ot�G�(8`B^^B`8	���',2��6'&'&76'6'&6&'&6'&4#"7&64 654'.'&'.63226767.547&7662>76#!"&5463!2		/[		.
=���X��Ě4,+"*+, 1JH'5G:�:#L5+@=&#���w�@w��w�w�P.1GE�,��ԧ��44+	;/5cFO:>JJ>:O9W5$@(b4��@w��w�w������'?$4&"2$4&"2#!"&5463!3!267!2#!#!"&5!"'&762&4&&4&&4&&4�8(�@(88(�c==c�(8��*�&�&�*�6�&4&&4&&4&&4& ��(88(@(88HH88`(�@&&�('��@����1c4&'.54654'&#"#"&#"32632327>7#"&#"#"&54654&54>76763232632


	N<�;+gC8�A`1a9�9�g��w����|�9�8aIe$I�VN��z<�:LQJ
�,�-[%	061I��(�)W,$-������7,oIX(�)o�ζA;=N0
eTZ
	 (���O#".'&'&'&'.54767>3232>32�e^\4?P	bM��O0#382W#& 9C9
Lĉ"	82<*9FF(W283#0OMb	P?4\^eFF9*<28	"��L
9C9 &#��!"3!2654&#!"&5463!2`��B^^B@B^^ީw��w��w@w�^B��B^^B@B^���w��w@w�����#!72#"'	#"'.546763���YY�!''!0#�G�G$/!''!�&�UU�jZ	
8"��"8
 ��X!	
8"	"8
	���GW4.'.#"#".'.'.54>54.'.#"32676#!"&5463!2 1.-
+$)
c�8
)1)

05.D
<9�0)$9��w�@w��w�w�W

)1)
7�c
)$+
-.1 �9$)0���<
D.59�@w��w�w��,T1# '327.'327.=.547&54632676TC_L��Ҭ���#+�i�!+*p�DNBN,y[����`m`%i]hbE����m��}a�u&,�SXK��
&$��f9s?
_���#"!#!#!54632��V<%'����Э��HH���	�(ں����T\dksz�� &54654'>54'6'&&"."&'./"?'&546'&6'&6'&6'&6'&74"727&6/�a���49[aA)O%-j'&]�]5r-%O)@a[9'
0BA;+


>HC���U


	#	
	
$				2	
AC: �����oM�=a-6O�UwW[q	( -	q[WwU�P6$C

+) (	
8&/
&eM���a�	
&
$	

��%+"&54&"32#!"&5463!54 �&@&�Ԗ`(88(�@(88(�r��&&j��j�8(��(88(@(8��������#'+2#!"&5463"!54&#265!375!35!�B^^B��B^^B
�

��
`���^B�@B^^B�B^�
��
�
`��
�������!="&462+"&'&'.=476;+"&'&$'.=476;�p�pp�p�$���!�$qr�
�%���}�#ߺ���pp�p��!�E$�
�rq�ܢ#���
%�
ֻ��!)?"&462"&4624&#!"3!26!.#!"#!"&547>3!2/B//B//B//B�
�@

�
�2�����^B�@B^�\77\�aB//B//B//B/�@

��
��

�~��B^^B@2^5BB5��2���.42##%&'.67#"&=463! 2�5KK5L4�_�u:B&1/&��.-
zB^^B���4L��v��y�KjK��4L[!^k'!A3;):2*�<vTq6^B�B^�L4�$���)��*@��A4#"&54"3!4."#!"&5!"&5>547&5462�;U gI�v��0Z���Z0�L4�@�Ԗ�@4L2RX='�8P8��'=XR� U;Ig0,3lb??bl3���4Lj��jL4*\���(88(�����\���}I/#"/'&/'&?'&'&?'&76?'&7676767676`�
(�5)�0
)��*)
0�)5�(
��
(�5)�0
))��))
0�)5�(
��*)
0�)5�(��
)�5)�0
)*��*)
0�)5�)
��
)�5)�0
)*���5h$4&"24&#!4>54&#"+323254'>4'654&'!267+#"'&#!"&5463!2>767>32!2&4&&4�N2��$YGB
(HGEG  H��Q�#5K4L��i�!<�����;��5KK5 
A#
("/?&}�vh��4&&4&�3M95S+C=�,@QQ9��@@�IJ 2E=L5i�>9eM��E;K5�5K	J7R>@#�zD<����5=q%3#".'&'&'&'.#"!"3!32>$4&"2#!"#"&?&547&'#"&5463!&546323!2`  #A<(H(GY$��2NL4K5#aWTƾh&4&&4�K5��;����=!�i��hv�}&?/"(
#A
 5K��2*!	Q@.'!&=C+S59M34L=E2 JI UR@@&4&&4&���5K;E��Lf9>�ig�<Dz�#@>R7J	K�5h4&"24#"."&#"4&#"".#"!54>7#!"&54.'&'.5463246326326&4&&4��IJ 2E=L43M95S+C=�,@QQ9�@@�E;K5��5K	J7R>@#�zD<�gi�>9eM��Z4&&4&<�#5K4LN2��$YGB
(HGEG  H��V���;��5KK5 
A#
("/?&}�vh��i�!<��4<p4.=!32>332653272673264&"2/#"'#"&5#"&54>767>5463!2�@@��2*!	Q@.'!&=C+S59M34L.9E2 JI UR�&4&&4&��Lf6A�ig�6Jy�#@>R7J	K5�5K;E@TƾH  #A<(H(GY$��2NL4K#5#a=4&&4&�D��=�i��hv�}&?/"(
#A
 5KK5��;�����+54&#!764/&"2?64/!26 $$ &�
�[6��[[j6[��&���^����a�a@�&�4[��[6[��[6�&+�^����a�a�����+4/&"!"3!277$ $$ [��6[��
&&��[6j[
���^����a�ae6[j[6�&�&�4[j[��^����a�a�����+4''&"2?;2652?$ $$ ��[6[��[6�&�&�4[���^����a�af6j[[��6[��
&&��[��^����a�a�����+4/&"4&+"'&"2? $$ [6�&�&�4[j[6[j���^����a�ad6[��&&�
�[6��[[j��^����a�a������  $2>767676&67>?&'4&'.'.'."#&6'&6&'3.'.&'&'&&'&6'&>567>#7>7636''&'&&'.'"6&'6'..'/"&'&76.'7>767&.'"76.7"7"#76'&'.'2#22676767765'4.6326&'.'&'"'>7>&&'.54>'>7>67&'&#674&7767>&/45'.67>76'27".#6'>776'>7647>?6#76'6&'676'&67.'&'6.'.#&'.&6'&.5/�a����^����D&"	


	4
	$!	#
	
		
	



 
.0"�Y
	+


!	
	

$	
	"
+


		
	�Α	
		
����^����a�a��

	

			
	

	

		
	
		P� '-(	#	*	$

"
!				
*
!	

(				

	
��$�
		
2
�~�/$4&"2	#"/&547#"32>32�&4&&4��V%54'j&&�'��/덹���:,���{	&4&&4&�V%%l$65&�b��'C��r!"��k[G�+;%!5!!5!!5!#!"&5463!2#!"&5463!2#!"&5463!2����������&��&&�&&��&&�&&��&&�&�������@�&&&&�&&&&�&&&&��{#"'&5&763!2{�'
��**�)��*��)'/!5!#!"&5!3!26=#!5!463!5463!2!2���^B�@B^�&@&`��^B`8(@(8`B^��� B^^B�&&�����B^�(88(�^���G	76#!"'&?	#!"&5476	#"'&5463!2	'&763!2#"'��c�)'&�@*������*�@&('�c���(&�*�cc�*�&'
����*�@&('�c���'(&�*�cc�*�&('���c�'(&�@*��19AS[#"&532327#!"&54>322>32"&462 &6 +&'654'32>32"&462Q�g�Rp|Kx;CB��y��y� 6Fe=
BP���PB
=eF6 ��Ԗ��V����>!pR�g�QBC;xK|��Ԗ���{QNa*+%��x��x5eud_C(+5++5+(C_due2Ԗ�Ԗ�����>�NQ{u�%+*jԖ�Ԗ��p�!Ci4/&#"#".'32?64/&#"327.546326#"/&547'#"/&4?632632��(* 8(!�)(��A�('��)* 8(!U�SxyS�SXXVzxT�TU�SxyS�SXXVzxT�@(� (8 *(���(��'(�(8 ���S�SU�Sx{VXXT�T�S�SU�Sx{VXXT���#!"5467&5432632�������t,Ԟ;F`j�)��������6�,��>�jK?�s��
�!%#!"&7#"&463!2+!'5#�8Ej��jE8�@&&&&@������XYY�&4&&4&�qD�S�%��q%��N\jx��2"&4#"'#"'&7>76326?'&'#"'.'&676326326&'&#"32>'&#"3254?''7�4&&4&l��
�NnbS���VZbR��SD	
zz
	DS��Rb)+U���Sbn�
��\.2Q\dJ'.2Q\dJ.Q2.'Jd\Q2.'Jd`!O�`��	`�����&4&&4�r$#@�B10M�5TNT{L�5T
	II	
T5�L;l'OT4�M01B�@#$�*�3;$*�3;�;3�*$;3�*$�:$/� @@�Qq`��@���"%3<2#!"&5!"&5467>3!263!	!!#!!46!#!�(88(�@(8��(8(�`(�(8D<���+����+�<��8(�`(��8(�`�8(�@(88( 8(�(`�(8(��(������<��`(8��(`����`(8����||?%#"'&54632#"'&#"32654'&#"#"'&54632|�u�d��qܟ�s]
=
��Ofj�L?R@T?��"&�
>
�f?rRX=Ed�u�ds���q��
=
_M�jiL��?T@R?E& �f
>
�=XRr?��b���!1E)!34&'.##!"&5#3463!24&+";26#!"&5463!2����
��
08(��(8��8(@(8��
�

�
�8(��(88(�(`(����1

�`(88(���(88(@

��
�`(88(@(8(��`���#!"&5463!2�w�@w��w�w�`�@w��w�w��/%#!"&=463!2#!"&=463!2#!"&=463!2&��&&�&&��&&�&&��&&�&��&&�&&�&&�&&�&&�&&��@'7G$"&462"&462#!"&=463!2"&462#!"&=463!2#!"&=463!2�p�pp�pp�pp��
�@

�
��p�pp��
�@

�

�@

�
Рpp�p��pp�p���

�
�pp�p���

�
�

�
��<L\l|#"'732654'>75"##5!!&54>54&#"'>3235#!"&=463!2!5346=#'73#!"&=463!2#!"&=463!2}mQjB919+i1$AjM_3<��/BB/.#U_:IdDRE�
�@
�
����k*G�j�
�@
�

�@

�
TP\BX-@8
C)5�XsJ@�$3T4+,:;39SG2S.7<���

�vcc)�)%L�l�}�

��

�
���5e2#!"&=463%&'&5476!2/&'&#"!#"/&'&=4'&?5732767654'&��@�0��2uBo
T25XzrDCBB�Eh:%��)0%HPIP{rQ�9f#-+>;I@KM-/Q"�@@@#-bZ��$&P{<�8[;:XICC>.�'5oe80#.0(
l0&%,"J&9%$<=DTI���cs&/6323276727#"327676767654./&'&'737#"'&'&'&54'&54&#!"3!260%
<4�"VRt8<@<
-#=XYhW8+0$"+dT�Lx-'I&JKkm��uw<=V�@�!X@		v
'��|N;!/!$8:I�Ob�V;C#V

&
(���mL.A:9 !./KLwP�M�$��@@
��/?O_o��%54&#!"3!2654&#!"3!2654&#!"3!2654&#!"3!2654&#!"3!2654&#!"3!2654&#!"3!2654&#!"3!2654&#!"3!26#!"&5463!2��@��@��@���@��@��@���@��@��@�^B��B^^B@B^�����������������������������N��B^^B@B^^���#+3	'$"/&4762%/?/?/?/?�%k��*��6�6��bbbb|��<<��<�bbbb��bbbb�%k���6���6Ƒbbb��<<��<<�^bbbbbb@��M$4&"2!#"4&"2&#"&5!"&5#".54634&>?>;5463!2�LhLLh����
	�	LhLLhL!'�Ԗ���Ԗ@'!&	
�?�&&LhLLhL�	�	
��hLLhL��	j��jj��j	&@6/"
��&&���J#"'676732>54.#"7>76'&54632#"&7>54&#"&54$ ���ok;	-j=y�hw�i�[+PM3ѩ���k=J%62>Vc��a�aQ�^��� ]G"�'9��r�~:`}�Ch�  0=Z�٤���W=#uY2BrUI1�^Fk[|��a�����L2#!67673254.#"67676'&54632#"&7>54&#"#"&5463�w��w�+U	,i<��F{�jh�}Z+OM

2ϧ���j<J%51=Ub�w��w��w�@w�zX"�'8'�T�yI9`{�Bf� 
,>X�բ���W<"uW1AqSH1�bd��w�w����'74'!3#"&46327&#"326%35#5##33#!"&5463!2����0U6c��c\=hl���ࠥ�Ymmnnnn�w�@w��w�w�w&�46#�Ȏ;ed����wnnnnn��@w��w�w����	]#/#"$&6$3 &#"32>7!5!%##5#5353����Е���tt����u�{�zz�{S�ZC�`�c�����o���t�*�t��q|��|.EXN#�??�������,<!5##673#$".4>2"&5!#2!46#!"&5463!2��r�M*
�*M~�~M**M~�~M*j����jj����&�&&&�`��P%��挐|NN|���|NN|�*�jj���jj�@��&&�&&@�
"'&463!2�@4�@&�Z4�@�4&@
#!"&4762&��&�4�Z4&&4��@@���
"'&4762�&4�@�4&@��&�4�&�@�
"&5462@�@4&&4��4�@&�&�@����
3!!%!!26#!"&5463!2�`��m��`
�^B��B^^B@B^���
 `���@B^^B�B^^��@
"'&463!2#!"&4762�@4�@&�&&��&�4��4�@�4&Z4&&4��@��
"'&463!2�@4�@&��4�@�4&@
#!"&4762&��&�4�Z4&&4��@��:#!"&5;2>76%6+".'&$'.5463!2^B�@B^,9j�9Gv33vG9�H9+bI��\
A+=66=+A
[��">nSM�A_:��B^^B1&�c*/11/*{�'VO�3��@/$$/@�*�?Nh^��l+!+"&5462!4&#"!/!#>32]��_gTRdg�d���QV?U��I*Gg?����!�2IbbIJaa���iwE33����00� 08����4#"$'&6?6332>4.#"#!"&54766$32z�䜬��m�
I�wh��QQ��hb�F�*�@&('�k�������z��
�	
_hQ��н�QGB�'(&�*�eoz�(���q!#"'&547"'#"'&54>7632&4762.547>32#".'632�%k'45%��&+�~(
(�h		&

\(
(�		&

~+54'k%5%l%%l$65+~

&		�(
(\

&		�h(
(~�+%��'��!)19K4&"24&"26.676&$4&"24&"24&"2#!"'&46$ �KjKKjKjKKj�e2.e<^P��,bKjKKj��KjKKjKjKKj��#��#���LlL�KjKKjKjKKjK��~-��M<M�(PM<rjKKjK�jKKjKujKKjK�������L���< 6?32$6&#"'#"&'5&6&>7>7&54$ L�h��я�W.�{+9E=�c��Q�d�FK��1A
0)���������p�J2`[Q?l&������٫�C58.H(Y��'����:d 6?32$64&$ #"'#"&'&4>7>7.546'&'&'# '32$7>54'Y����j`a#",5NK�
����~E�����VZ|�$2$
|��:
$2$�|ZV���:�(t}�����h�fR�88T
h�̲����X(	
&%(H�w��(%&	(X�ZT\�MKG�{x��|�!#"'.7#"'&7>3!2%632u��

�j
�H����{(e9
�1b���U#!"&546;5!32#!"&546;5!32#!"&546;5463!5#"&5463!2+!2328(��(88(`�`(88(��(88(`�`(88(��(88(`L4`(88(@(88(`4L`(8 ��(88(@(8��8(��(88(@(8��8(��(88(@(8�4L�8(@(88(��(8�L4�8����OY"&546226562#"'.#"#"'.'."#"'.'.#"#"&5476$32&"5462��И&4&NdN!>!
1X:Dx++w�w++xD:X1
-�U��
�!�*,*&4&��h��h&&2NN2D&

..J<
$$
<JJ<
$$
<J..

��P���bb&&�7!!"&5!54&#!"3!26!	#!"&=!"&5463!2��`(8��
�@

�
+��8(�@(8��(88(@(8�(��8(� @

@
�m+�U�`(88(�8(@(88(��
�h`���(\"&54&#"&46324."367>767#"&'"&547&547&547.'&54>2�l4

2cK�Eo���oED
)
�
�
�
)
D�g-;</-
?.P^P.?
-/<;-gY�����Y�

.2 L4H|O--O|HeO,����,Oe�q1Ls26%%4.2,44,2.4%%62sL1q�c�qAAq����4#!#"'&547632!2#"&=!"&=463!54632
��
��		@	
`
	��	
��

`?`�
�

@	
	@	
�!	��	
�
�
�
����54&+4&+"#"276#!"5467&5432632�
�
�
	`		_
�������v,Ԝ;G_j�)��``

��
	��		_ԟ����7
�,��>�jL>���54'&";;265326#!"5467&5432632	��		��
�
�
�
�������v,Ԝ;G_j�)���	`		����

`������7
�,��>�jL>�����X`$"&462#!"&54>72654&'547 7"2654'54622654'54&'46.' &6 �&4&&4&�y��y�%:hD:Fp�pG9�F�j� 8P8 LhL 8P8 E;
Dh:%������>�4&&4&}y��yD~�s[4D�d=PppP=d�>hh>@�jY*(88(*Y4LL4Y*(88(*YDw"
A4*[s�~����>�����M4&"27 $=.54632>32#"' 65#"&4632632 65.5462&4&&4�G9��������&
<#5KK5!��!5KK5#<
&ܤ��9Gp�p&4&&4&@>b�u��ោؐ&$KjK�nj��j�KjK$&����j��j�b>Ppp���
%!5!#"&5463!!35463!2+32����@\��\���8(@(8�\@@\������\@\���(88(��\��@��34#"&54"3#!"&5!"&5>547&5462�;U gI@L4�@�Ԗ�@4L2RX='�8P8��'=XR� U;Ig04Lj��jL4*\���(88(�����\��@"4&+32!#!"&+#!"&5463!2�pP@@P���j�j�@�@�\�@\�&��0�p����j��	��� \��\�&��-B+"&5.5462265462265462+"&5#"&5463!2�G9L4�4L9G&4&&4&&4&&4&&4&L4�4L�
��&���=d��4LL4d=�&&�`&&�&&�`&&�&&��4LL4
 ��&�#3CS#!"&5463!2!&'&!"&5!463!2#!"&52#!"&=4632#!"&=463�(8(��(88(�(`�x
��c�`(8���@��@��@�`(��(88(@(8(D��9�8(��`@�@@�@@��/?O_o��������-=%+"&=46;25+"&=46;2+"&=46;2%+"&=46;2+"&=46;2%+"&=46;2%+"&=46;2%+"&=46;2+"&=46;2%+"&=46;2%+"&=46;2%+"&=46;2+"&=46;2%+"&=46;2%+"&=46;2+"&=46;2%+"&=46;2+"&=46;2!!!5463!2#!"&5463!2�
@

@

@

@

@

@
�
@

@

@

@
�
@

@
�
@

@
�
@

@

@

@
�
@

@
�
@

@
�
@

@

@

@
�
@

@
�
@

@

@

@
�
@

@

@

@
�����
@
&�&&&�@

@
�@

@

@

@
�@

@
��@

@
�@

@
�@

@
�@

@
��@

@
�@

@
�@

@
�@

@
��@

@
�@

@
�@

@
��@

@
�@

@

@

@
����

`��&&�&&
��/?O_o�����%+"&=46;25+"&=46;2+"&=46;2%+"&=46;2+"&=46;2%+"&=46;2%+"&=46;2+"&=46;2%+"&=46;2+"&=46;2!!#!"&=!!5463!24&+"#54&+";26=3;26%#!"&5463!463!2!2�
@

@

@

@

@

@
�
@

@

@

@
�
@

@
�
@

@

@

@
�
@

@

@

@
���8(�@(8��
@

@
�
@

@
�
@
&�&&@8(�(8@&�@

@
�@

@

@

@
�@

@
��@

@
�@

@
�@

@
��@

@
�@

@

@

@
��� (88( ���

�@

``

��

``
-�&&& (88(��&@����<c$4&"2!#4&"254&+54&+"#";;26=326+"&5!"&5#"&46346?>;463!2�KjKKj�����KjKKj�������&��Ԗ���Ԗ�&&�@�&�&KjKKjK��
��jKKjK ������.��&j��jj��j&4&�@�@&&���#'1?I54&+54&+"#";;26=326!5!#"&5463!!35463!2+32����������� \��\����8(@(8�\  \����������\@\���(88(��\����:
#32+53##'53535'575#5#5733#5;2+3����@��E&&`�@@��`  ����  `��@@�`&&E%@�`��@ @ @��		 �� � � � �� 		��@ 0
@��!3!57#"&5'7!7!��K5�������@ � � @���5K�@����@@��� �����#3%4&+"!4&+";265!;26#!"&5463!2&�&�&�&&�&&�&�w�@w��w�w���&&��@&&��&&@��&&��@w��w�w�����#354&#!4&+"!"3!;265!26#!"&5463!2&��&�&��&&@&�&@&�w�@w��w�w�@�&@&&��&�&��&&@&:�@w��w�w��-M�3)$"'&4762	"'&4762	s
2

�.

�

2

�w��
2

�.

�

2

�w��
2

�

�

2

�w�w

2

�

�

2

�w�w
M�3)"/&47	&4?62"/&47	&4?62S
�.

2

��w

2

��
�.

2

��w

2

�M
�.

2

��

2

�.

�.

2

��

2

�.M�3S)$"'	"/&4762"'	"/&47623
2

�w�w

2

�

�

2

�w�w

2

�

��
2

��w

2

�

�.v
2

��w

2

�

�.M�3s)"'&4?62	62"'&4?62	623
�.

�.

2

��

2

�.

�.

2

��

2�
�.

�

2

�w�

2v
�.

�

2

�w�

2-Ms3	"'&4762s
�w�

2

�.

�

2�
�w�w

2

�

�

2
MS3"/&47	&4?62S
�.

2

��w

2

�M
�.

2

��

2

�.M
3S"'	"/&47623
2

�w�w

2

�

�m
2

��w

2

�

�.M-3s"'&4?62	623
�.

�.

2

��

2-
�.

�

2

�w�

2���/4&#!"3!26#!#!"&54>5!"&5463!2
��

@
�^B��  &�&  ��B^^B@B^ @

��
M��B^%Q=
&&<P&^B@B^^�+3"&5463!2#3!2654&#!"3#!"&=324+"3�B^^B@B^^B��
@

��
`�^B��B^�p�^B�B^^B�@B^`�@

�
�S`(88(``  ��'$4&"2%4&#!"3!26#!"&5463!2�&4&&4�
��

@
�^B��B^^B@B^f4&&4&��

�@
��B^^B@B^^/$4&"2%4&#!"3!264+";%#!"&5463!2�/B//B�
�


���0L4�4LL44L_B//B/��

�@
M   �4LL44LL���  >& $$ ������(���r���^����a�a��������(���^����a�a����!C#!"&54>;2+";2#!"&54>;2+";2pP��PpQ��h@&&@j�8(�Pp�pP��PpQ��h@&&@j�8(�Pp@��PppP�h��Q&�&�j (8pP��PppP�h��Q&�&�j (8p��!C+"&=46;26=4&+"&5463!2+"&=46;26=4&+"&5463!2Q��h@&&@j�8(�PppP�Pp�Q��h@&&@j�8(�PppP�Pp��@h��Q&�&�j (8pP�PppP�@h��Q&�&�j (8pP�Ppp@�@�	#+3;G$#"&5462"&462"&462#"&462"&462"&462"&462#"&54632K54LKj=KjKKj��KjKKj�L45KKjK�<^�^^��KjKKj��p�pp���\]��]\��jKL45K��jKKjKujKKjK��4LKjKK�^^�^��jKKjK��pp�p�r]��]\����� $$ ���^����a�aQ�^����a�a�����,#"&5465654.+"'&47623 #>bq��b�&4�4&�ɢ5����"		#D7e�uU6�&4&��m����1X".4>2".4>24&#""'&#";2>#".'&547&5472632>3�=T==T=�=T==T=��v)�G�G�+v�@b��R�R��b@�=&����\N����j!>�3l�k����i�k3�hPTDDTPTDDTPTDDTPTDD|x��xX�K--K��|Mp<#	)>dA{��RXtfOT# RNftWQ���,%4&#!"&=4&#!"3!26#!"&5463!2!28(�@(88(��(88(�(8��\�@\��\@\��\���(88(@(88(�@(88�@\��\�\��\ �u�'E4#!"3!2676%!54&#!"&=4&#!">#!"&5463!2!232�5��([��5@(\&��8(��(88(��(8,�9.��+�C��\��\@\� \��6Z]#+��#,k��(88(@(88(��;5E�>:��5E�\�\��\ �\�1. ���$4@"&'&676267>"&462"&462.  > $$ n%��%/���02�
KjKKjKKjKKjKf���ff�������^����a�a�y��y/PccP/�jKKjKKjKKjK���ff���ff�@�^����a�a�����$4@&'."'.7>2"&462"&462.  > $$ n20���/%��7KjKKjKKjKKjKf���ff�������^����a�a3/PccP/y��	jKKjKKjKKjK���ff���ff�@�^����a�a�����+7#!"&463!2"&462"&462.  > $$ �&��&&��&KjKKjKKjKKjKf���ff�������^����a�a�4&&4&�jKKjKKjKKjK���ff���ff�@�^����a�a���#+3C54&+54&+"#";;26=3264&"24&"2$#"'##"3!2@������@KjKKjKKjKKjK����ܒ���,����������gjKKjKKjKKjK�X�Ԁ�,�,��#/;GS_kw�����+"=4;27+"=4;2'+"=4;2#!"=43!2%+"=4;2'+"=4;2+"=4;2'+"=4;2+"=4;2+"=4;2+"=4;2+"=4;2+"=4;54;2!#!"&5463!2�``����``��`��``�``�``�``�``�``�````�p`���K5��5KK5�5Kp``�``�``��``�``�``��``�``��``��``�````��`��������5KK5�5KK@���*V#"'.#"63232+"&5.5462#"/.#"#"'&547>32327676���R?d�^��7ac77,9x�m#@#KjK�#
ڗXF@Fp:f��_ #W��Ip�p&3z�	�h[ 17��q%q#:��:#5KKu�'t#!X:	%�#+=&>7p@���*2Fr56565'5&'.	#"32325#"'+"&5.5462#"/.#"#"'&547>32327676@��ͳ�����8
2.,#,f�k*1x���-!���#@#KjK�#
ڗXF@Fp:f��_ #W��Ip�p&3z�	�e�`��v�o�8�t-�	�:5	��[�*�#:��:#5KKu�'t#!X:	%�#+=&>7p
�3$	"/&47	&4?62#!"&=463!2I�.

2

��w

2

�
-�@�)�.

2

��

2

�.
�-@@-��S�$9%"'&4762		/.7>	"/&47	&4?62i2

�.

�

2

�w�
E��>

u>

��.

2

��w

2

�
�2

�

�

2

�w�w
!��




�h�.

2

��

2

�.
���;#"'&476#"'&7'.'#"'&476�'
�)'�s
"+5+�@ա'
�)'����F*4*E�r4�M:�}}8��GO
�*4*������~�
(-/'	#"'%#"&7&67%632���B�;><���V�?�?V�� -����-C�4
<B�=�cB5���!%��%!�b 7I�))�9I7���	#"'.5!".67632y��(
��#

��##@,(
�)���8!	!++"&=!"&5#"&=46;546;2!76232-S��S����������S�

		��S��S�`���`���		

������K$4&"24&"24&"27"&5467.546267>5.5462 8P88P88P88P�8P88P�4,�C��S,4p�p4,,4p�p4,6d7AL*',4p�pP88P8�P88P8HP88P8`4Y��&+(>EY4PppP4Y4Y4PppP4Y�%*<O4Y4Ppp���
%@\ht�	"'&4762"&5462&#!"&463!2#"'&'7?654'7&#"&'&54?632#!"&463!2"&5462"'&4762��		

	����@U�SxyS���R���#PT����('�#��TU�SxySN���@����		

		�		

		
3��@��xS�SUO#���'(���V^�'(���PVvxS�SU��i��@��		

		
`�<+"&=46;2+"&=467>54&#"#"/.7!2���<'G,')7��N;2]=A+#H

�
�0P��R��H6^;<T%-S�#:/*@Z}


>h���.%#!"&=46;#"&=463!232#!"&=463!2�&�&&@@&&�&@&�&�&&&��&&�&�&�&&��&f�&&�&&b�#!"&=463!2#!"&'&63!2&�&&&'�'%@% �&&�&&�&&&&�k%J%#/&'#!53#5!36?!#!'&54>54&#"'6763235���
����Ź���}���4NZN4;)3.i%Sin�1KXL7觧�*		��#��&		*������@jC?.>!&1'\%Awc8^;:+<!P��%I%#/&'#!53#5!36?!#!'&54>54&#"'6763235���
����Ź���}���4NZN4;)3.i%Pln�EcdJ觧�*		��#��&		*������-@jC?.>!&1'\%AwcBiC:D'P%!	#!"&'&6763!2�P������&:�&?�&:&?����5"K�,)""K,)���h#".#""#"&54>54&#"#"'./"'"5327654.54632326732>32�YO)I-D%n "h.=T#)#lQTv%.%P_�	%	
%�_P%.%vUPl#)#T=@�/#,-91P+R[�Ql#)#|'�'
59%D-I)OY[R+P19-,##,-91P+R[YO)I-D%95%�_P%.%v���'3!2#!"&463!5&=462 =462 &546 ����&&��&&��&4&r&4&�������@����&4&&4&�G݀&&������&&f��������
��sCK&=462	#"'32=462!2#!"&463!5&'"/&4762%4632e*&4&i����76`al�&4&���&&��&&}n�

R

�

R
�z����f�Oego�&&�5�����`3��&&����&4&&4&�
D�

R

�

R
z����v���"!676"'.5463!2@�@w^�Cc�t~55~t�cC&�&@���?J���V��|RIIR|��V&&��#G!!%4&+";26%4&+";26%#!"&546;546;2!546;232�����@@@@�L4��4LL4�^B@B^�^B@B^�4L�� �� ��N�4LL44L`B^^B``B^^B`L����L4&"2%#"'%.5!#!"&54675#"#"'.7>7&5462!467%632&4&&4��@�o�&�&}c ;pG=(
8Ai8^�^.�&4&&4&`��	`f�s��&& j�o/;J!#2
 KAE*,B^^B!`	$� ��-4&"2#"/&7#"/&767%676$!2�8P88P��Qr��	@
U���	@�
{`P�TP88P8�����P`��
�	@U	@�rQ���!6'&+!!!!2Ѥ���
8�������̙�e�;<*��@8 !�G��G�GQII���� %764'	64/&"2 $$ �f��3f4�:�4����^����a�a�f4334f�:4�:�^����a�a����� %64'&"	2 $$ ���:4f3��f4F���^����a�a��4�f4���4f�^����a�a����� 764'&"27	2 $$ �f�:4�:f4334����^����a�a�f4��:4f3���^����a�a����� %64/&"	&"2 $$ -�f4���4f�4����^����a�a��4f��3f4�:w�^����a�a���@��7!!/#35%!'!%j��/d��
�jg2�|�8�����������55���dc ��b���@��!	!%!!7!���FG)��D�H:�&�H����d���S)��U4&"2#"/ $'#"'&5463!2#"&=46;5.546232+>7'&763!2�&4&&4f]w�q�4�qw]	`dC���&&�:F�ԖF:�&&���Cd`�4&&4&����	]����]	`d[}�&�&�"uFj��jFu"�&�&�y}[d�#2#!"&546;4 +"&54&" (88(�@(88( r&@&�Ԗ8(��(88(@(8@����&&j��j�����'3"&462&    .  > $$ �Ԗ������>a��X��,��f���ff�������^����a�a�Ԗ�Ԗ�a>����T�X��,�,�~�ff���ff�@�^����a�a����/+"&=46;2+"&=46;2+"&=46;2�8(�(88(�(88(�(88(�(88(�(88(�(8 �(88(�(88(�(88(�(88(�(88(�(88��/+"&=46;2+"&=46;2+"&=46;2�8(�(88(�(88(�(88(�(88(�(88(�(8 �(88(�(88�(88(�(88�(88(�(88���5E$4&"2%&'&;26%&.$'&;276#!"&5463!2KjKKj�
���
��
�
f���	

�\�
�
�w�@w��w�w��jKKjK"�G

�
ܚ

��f


�
���

	�@w��w�w�����  $64'&327/�a����^�����  ��!  ����^����a�a��J@%��%	6�5��/	64'&"2	"/64&"'&476227<���ij��6��j6��u%k%~8p�8}%%�%k%}8p�8~%<���<�ij4j��4����t%%~8�p8~%k%�%%}8�p8}%k���54&#!"3!26#!"&5463!2&��&&�&�w�@w��w�w�@�&&�&&:�@w��w�w����/#!"&=463!24&#!"3!26#!"&5463!2���@�^B��B^^B@B^��w��w��w@w��@@�2@B^^B��B^^���w��w@w���+#!"'&?63!#"'&762�(��@�	@�(@>@�%����%%��� ���!232"'&76;!"/&76 �
�($��>��(����
		��J ���&%�����$%64/&"'&"2#!"&5463!2�ff4�-�4ff4f�w�@w��w�w��f4f�-�f4����@w��w�w�����/#5#5'&76	764/&"%#!"&5463!2��48`���
#�� ����\�P\��w�@w��w�w���4`8�
��
#�@  ���`\P�\`�@w��w�w�����)4&#!"273276#!"&5463!2&� *���f4�
'�w�@w��w�w�`�&')���4f�*�@w��w�w�����%5	64'&"3276'7>332#!"&5463!2�`��'(wƒa8!
�,j.��(&�w�@w��w�w��`4`*�'?_`ze<��	bw4/�*��@w��w�w�����-.  6 $$ ���� �������(�r���^����a�a���O����(��������_�^����a�a�����
-"'&763!24&#!"3!26#!"&5463!2y��B��(�(�
�@

�
�w�@w��w�w�]#�@�##� �

�@
�@w��w�w�����
-#!"'&7624&#!"3!26#!"&5463!2y(��(@B@u
�@

�
�w�@w��w�w��###��@���

�@
�@w��w�w�����
-'&54764&#!"3!26#!"&5463!2@�@####���@��w�@w��w�w��B��(�(������@�@w��w�w����`%#"'#"&=46;&7#"&=46;632/.#"!2#!!2#!32>?6�#
!"'�?_

BCbCa�f\	+
~�2�	
��
	�}0�$

��
q
90r�
�

�pr%Dpu���?#!"&=46;#"&=46;54632'.#"!2#!!546;2��D
a__����	g	

*`-Uh1

��������

�߫�}
	$^L��
���
4��b+"&=.'&?676032654.'.5467546;2'.#"�ǟ�
B{PDg	q�%%Q{%P46'-N/B).ĝ
�9kC<Q
7>W*_x*%K./58`7E%_���
�	,-3�
cVO2")#,)9;J)���
�"!*�
#VD,'#/&>AX��>++"''&=46;267!"&=463!&+"&=463!2+32��Ԫ�$
�	��	
p���U�9ӑ
@�/�*f�����o�	

VRfq
�f=S��E!#"&5!"&=463!5!"&=46;&76;2>76;232#!!2#![�
��

 ��

��
�
�%
)��
	���

��"

��Jg
Uh
B�W&WX���
hU
g��
�84&#!!2#!!2#!+"&=#"&=46;5#"&=46;463!2�j��@jo�����
������g�|�@��~�v����v�
u�n#467!!3'##467!++"'#+"&'#"&=46;'#"&=46;&76;2!6;2!6;232+32Q�Kt#�� ��#F�N�Qo!��"�դ��ѧ����!�mY

�Zga~bm]�

[o�"�U+��������,����� @��h��
h@�@X
��h��h
��@�8���3H\#5"'#"&+73273&#&+5275363534."#22>4.#2>��ut
3NtR�P*�H�o2

Lo�@!�R(�Ozh=�,G<X2O:&D1A.1G$<2I+A;"B,;&$��L��GlF/�����3�D�����;a��$8$��".�!3!
��.�3!#!"&5463!���8( 8(��(88( ��h (8��(88(@(8�(8H!!#!"&5463!54&#!"3!2654&#!"3!2654&#!"3!26��(D 8(��(88( 8��@��@��@�$����(88(@(8��(8� @@@@@@"�}
$BR3/&5##"'&76;46;232!56?5"#+#5!76;5!53'#3!533��H��
��

�����D��q		�x7��	���K/�/K��F��h�/"���		@`����Z		s�Y��w�jj��jj��j"�}
$4R%3/&5##"'&76;46;232!53'#3!533!56?5"#+#5!76;5��H��
��

��������K/�/K��F����q		�x7��	�h�/"���		@`����jj��jj��j�Z		s�Y��
w"�)9IY%#"'&76;46;232#!"&=463!2#!"&=463!2#!"&=463!2#!"&=463!2�
��

����� ��@������@���`��		@`�����������"�)9IY#!"&=463!2%#"'&76;46;232#!"&=463!2#!"&=463!2#!"&=463!2��� 
��

�������@��������@ ��r��		@`��r������"��
$CV%4&#"326#"'&76;46;232%#"'&'73267##"&54632!5346=#'73BX;4>ID2F��
��

������8PuE>.'%&TeQ,j��m{��+�>R�{�?jJrL6V��		@`��7>wmR1q
uW�ei��/rr�
:V��r"��
$7V4&#"326#"'&76;46;232!5346=#'73#"'&'73267##"&54632BX;4>ID2F��
��

������+�>R�{�8PuE>.'%&TeQ,j��m{��?jJrL6����		@`���rr�
:V��r3>wmR1q
uW�ei����@�\%4&#"326#!"&5463!2+".'&'.5467>767>7>7632!2&%%&�&��&& &�7.'	:@�$LB�WM{#&$h1D!		.I/!	Nr�&&%%��&&�&&V?, L=8=9%pEL+%�%r@W!<%*',<2(<&L,"r�@\#"&546324&#!"3!26%#!#"'.'.'&'.'.546767>;&%%&�&��&& &i7qN��	!/I.		!D1h$&#{MW�BL$�@:	'.�&&%%���&&��&&�=XNr%(M&<(2<,'*%<!W@r%�%+LEp%9=8=L ���	+=\d����%54#"327354"%###5#5#"'&53327#"'#3632#"'&=4762#3274645"=424'.'&!  7>76#'#3%54'&#"32763##"'&5#327#!"&5463!2��BB��PJN�C'%!	B?)#!CC $)�54f�"��@@
B+����,A

A+�&�+A
�
ZK35N #J!1331�CCC $)��w�@w��w�w��2��"33�F�Y�F~��(-%"��o�4*)$�(*�	(&;�;&&9LA38�33�4��S,;;,W��T+<<+T;(��\g7�x�:&&:�:&&<r����%-�@w��w�w����	+=[c}���#"'632#542%35!33!3##"'&5#327%54'&#"5#353276%5##"=354'&#"32767654"2 '.'&547>76 3#&'&'3#"'&=47632%#5#"'&53327�''RZZ�:k��id YYY.06�	62+YY-06	R[!.�'CD''EH$��VV�X:���:Y
X;��:Y
�fyd/%jG�&DC&&CD&O[52.
[$�C-D..D�^^���* l�y1%=^�I86�i077S
3
$EWgO%33%O�O%35	��EE�F�W�t;PP;p��t;PP;p�q��J�gT��F�Q%33&P�P%33%R�
7>%3���!+}��{�'+"&72'&76;2+"'66;2U
�&�
��	�(���P

�*��'�e�J."�-d�Z��-n �-���'74'&+";27&+";276'56#!"&5463!2�~�}�		�7��e �	���۩w�@w��w�w��"���
$Q#�'�!#
����@w��w�w��
�I-22#!&$/.'.'.'=&7>?>36����9II ! '	$ !�����01$$%A'	$ ! ����g	
\7@�)(���7Y
	
 \7@�)(���7Y
@����	'5557	���,���VW�QV���.R���W��=���?��l��%l`��������~����0��!#!#%777	5!	������R!!�XC�C��fff�݀�#�� `��,��������{��{{�`��������Og4&"2 &6 $"&462$"&62>7>7>&46.'.'. '.'&7>76 �Ԗ�� ���HR6L66L�G�HyU2LL2UyH��HyU2LL2UyHn
��X�6X��

��X�X��
Ԗ�Ԗ�����H�6L66L6�L2UyH��HyU2LL2UyH��HyU2L�n�6X��

��X�X��

�����2#!"&54634&"2$4&"2�w��w�@w��w�|�||��|�||���w�@w��w�w����||�||�||�|���	!3	37! $$ �n6^�5�5^h
����^����a�a������M�1�^����a�a���P��
*Cg'.676.7>.'$7>&'.'&'? 7%&'.'.'>767$/u5'&$I7o�b?K�\[z�H,1���+.@\7<��?5\V
,$V��g.GR@ �7��U,+!�����
	#	"8$}�{)�<�?L RR;kr,yE[��z#	/1
"#	#�eCI0/"5#`�	��"8���4~&p)4	2�{�H-.%W.L>���':Yi4&67&'&676'.'>7646&' '7>6'&'&7>7#!"&5463!2PR$++'TJX�j7-F��C',��,&C
."��!$28��h�/���"�	+p��^&+3$
i��0(�w�@w��w�w��+.i6=Bn\C1XR:#"�'jj�8Q.cAj�57!?"0D��$4"P[
&2�@w��w�w��D��"%.5#5>7>;!!76�P�Yh�pN!�HrD0�M��
 C0N��#>8\xx: �W]oW-�X���45���/%'#.5!5!#"37>#!"&5463!2p>,;$4
��5eD�+W�cE���w�@w��w�w�K�()��F
,VhV��^9tjA0/�@w��w�w���@�#"'&76;46;23�
��


��
	���&��

��� ���++"&5#"&7632�	���
^


c
� �&�

��@�#!'&5476!2� &��

����
^


b	���'&=!"&=463!546�
��� �&�
�
��	���
��
��q&8#"'&#"#"5476323276326767q'T��1[VA=QQ3���qq�Hih"-bfGw^44O#A���?66%CKJ�A}}�  !"�䒐""A$@C3^q|�z=KK?6�lk)���%!%!��V��V��u��u�u^-�m5�w��}�n�����~7M[264&"264&"2"&546+"&=##"&5'#"&5!467'&766276#"&54632�  �  ��*<;V<<O@-K<V<�<+*<J.@�k��c�lG
H_�_H
�<+*<<*+<    �<*�R+<<+�*<�f.@�+<<+��+<<+�@.��7�uu�7�
�**�
���R+<<+�+;;	��"%3I�#5472&6&67><&4'>&4.'.'.'.'.'&6&'.'.6767645.'#.'6&'&7676"&'&627>76'&7>'&'&'&'&766'.7>7676>76&6763>6&'&232.'.6'4."7674.'&#>7626'.'&#"'.'.'&676.67>7>5'&7>.'&'&'&7>7>767&'&67636'.'&67>7>.'.67�	\
��
	U7	
J#!W!'	

"';%

k	)"	
	'


/7* 		I	,6
*&"!

O6*
O $.(�	*.'

.x�,	$CN��	
�		*	�
6
		
7%&&_f&
",VL,G$3�@@$+
"


V5 3"	
""�#dA++
y0D-%&n4P'A5j$9E#"c7Y
6"	&
8Z(;=I50' !!e
�R
��
"+0n?�t(-z.'<>R$A"24B@(	~	9B9,	*$		
		<>	?0D�9f?Ae �	.(;1.D	4H&.Ct iY% *	�
7��


��
J	 <
W0%$	
""I!
*D	 ,4A'�4J"	.0f6D�4p�Z{+*�D_wqi;�W1G("%%T7F}AG!1#% JG3��� '.2>Vb%&#'32&'!>?>'&' &>"6&#">&'>26 $$ *b6�~�#��= ���XP2��{&%gx|�� .���W)o���O��LO�sEzG<��	CK}E	$MFD<5+
z���^����a�a$�MW�M��1>]|�YY�^D
�եA��<��K�m����E6<�"�@9I5*�^����a�a�����>^4./.543232654.#"#".#"32>#"'#"$&547&54632632�':XM1h*�+D($,/9p�`D�oC&JV<�Z PA3Q1*223�I�oBkែhMI����oPែhMI��oP�2S6,M!"@-7Y.?oI=[<%$('3 -- <-\�%Fu���Po��IMh���Po����IMh,���#?D76&#!"7>;267676&#!"&=463!267
#!"'&5463!26�%�8#!�
��&&Z"�M>2!��
	�^I7LRx_@�>MN�""��`�=&&*%�I�}��,
	�	L�7_jj��9����/%4&#!"3!264&#!"3!26#!"&5463!2�� ��� ��&��&&�&��������&&�&&��19#"'#++"&5#"&5475##"&54763!2"&4628(3�-�	&�B.�.B�&	�-�3(8Ig�gI�`������(8+U��e&��.BB.&����+8(�kk��`�������%-"&5#"&5#"&5#"&5463!2"&4628P8@B\B@B\B@8P8pP�Pp�����@�`(88(`�p.BB.�0.BB.���(88(�Pppͺ�������!%>&'&#"'.$ $$ ^/(V=$<;$=V).X���^����a�a��J`"(("`J��^����a�a��,���I4."2>%'%"/'&5%&'&?'&767%476762%6�[���՛[[���՛o��
�ܴ
 
���
��	��	$
$�	"	�$
$	��	�՛[[���՛[[�5`��

^�

�^

2`��
`2

^��^

��`
�����1%#"$54732$%#"$&546$763276�68��ʴh�f�킐&^�����zs��,!V[���vn)�	�6���<��ׂ�f{���z����}))N�s���3(@����+4&#!"3!2#!"&5463!2#!"&5463!2@&�&&f&��&&�&@&�&&&�4&&4&�@&&�&&��&&&& ��`�BH+"/##"./#"'.?&5#"&46;'&462!76232!46 `&�C�6�@Bb0�3eI;��:�&&�&4�L�4&���F���
�Z4&�w�4�) ���''
�5�r�&4&&�4&��&4��������}G�#&/.#./.'&4?63%27>'./&'&7676>767>?>%6}�)(."�2*&�@P9A
#sG�q]
#lh�<*46+(
	
<
5�R5"*>%</
 '2�@� 53*9*,�Z&VE/#E+)AC
(���	2k<X1$:hI(B
"	!:4Y&>"/	+[>hy
	���K
!/Ui%6&'&676&'&6'.7>%.$76$% $.5476$6?62'.76&&'&676%.76&'..676�#"NDQt	
�-�okQ//�jo_	������	���%&J�������Ղ���YJA-��.--
9\DtT+X?*<UW3'	26$>>�W0{�"F!"E �

^f`$"�_]\�<`�F�`�F�D��h>Cw�ls���J@�;=?s
:i_^{8+?`
)
O`�s2R�DE58/K��r	#"'>7&4$&5m��ī��"#���̵�$5���$�"^^W����=���ac��E�*���c������zk./"&4636$7.'>67.'>65.67>&/>z X^hc^O<q����+f$H^XbVS!rȇr?5GD_RV@-FbV=3!G84&3Im<$/6X_�D'=NUTL;2KPwt��Pt= 

�&ռ
,J~S/#NL,��8JsF);??1zIEJpq�DIPZXSF6\?5:NR=��;.&1��+!"&=!!%!5463!2�sQ9����Qs�*�*�*sQNQsBUw��
wUBF��H���CCTww���%1#"&=!"&=463!54632.  6 $$ �	��	
��

`?��������(�r���^����a�a�	��	
�
�
�
���(��������_�^����a�a�����%1#!#"'&47632!2.  6 $$ �
����		@	
`
��������(�r���^����a�a�
�
?		@	
���(��������_�^����a�a�����/#"'&476324&#!"3!26#!"&5463!2&�@�&
�@

�
�w�@w��w�w����&@B@&���

�@
�@w��w�w�����"&462  >& $$ �Ԗ��*�����(���r���^����a�a�Ԗ�Ԗ �������(���^����a�a���]�6#"$54732>%#"'!"&'&7>32'!!!2�f:�л����Ѫz��~�u:�
(�(%`V6B^hD%��i�(�]̳ޛ	��*>�6߅�����r�#�!3?^BEa�߀�#�9���#36'&632#"'&'&63232#!"&5463!2
��Q,&U�#+'
 �;il4L92<D`����w�@w��w�w�����`9ܩ6ɽ]`C4�7�7�&�@w��w�w����D+"&5#"'&=4?5#"'&=4?546;2%6%66546;2�������
	
��
	
��w�ww�w�������cB
�G]B
�G��t�y]t�y�
���#3C#!+"&5!"&=463!46;2!24&#!"3!26#!"&5463!2���@��`@`�^B��B^^B@B^��w��w��w@w��@��`@`���2@B^^B��B^^���w��w@w�����'/?P+5#"&547.467&546;532!764'!"+32#323!&ln��@
:MM:
@��nY*�Yz--zY�*55QDD�U���9p��Y-`]��]`.X /2I$�	t�@@/!!/@@3,$,3�$p$0�0��&*0��&���&��
!P@���RV2#"&/#"&/#"&546?#"&546?'&54632%'&54632763276%�>S]�8T;/M7��7T</L7�=Q7,�i�<R7,�5T</L666U;/M5�<U<,�i���6i���Q=a!;�;V6-�j�;V6-�5	P=/L596Q</L5�<U6-�i�;V7,�7O;-I6��8��i;k���)I2#!"&5463#9"'.'.'3!264&#!"2>7%>�w��w�@w��w�!"�5bBBb/�/*
8(@(87)��(8=%/�'#?��w�@w��w�w����#~$EE y &�L(88e):8(%O r		

		�O�?GQaq47&67>&&'&67>&"&#6$32#"#"'654  $&6 $6&$ Co��L��.*�KPx���.*� 
iSƓi
7J?��~�pi{_Я�;��lL�������UZ=刈�����刈�����_t'<Z
�:!
	���@!
��j`Q7$k�y, R����f��k*4�������LlL��=Z=刈��������&$&546$7%7&'5>�����]���5��%��w�����������&��P�?�zrSF�!|��&0	##!"&5#5!3!3!3!32!546;2!5463���)�
)����;)��);;)��)���&&������&@@&�&��&��	�
6 $&727"'%+"'&7&54767%&4762������֬>4P���t+8?::
	�	
::AW��``���EvEEvE<�.���"�e$IE&�O�&EI&�{h.`��m���"&#"&'327>73271[
>+)@
(���]:2,C?��*%�Zx/658:@#N
�C�=�E�(�o��E=��W'c:������#!#"$&6$3 &#"32>7!����ڝ���yy��,��{��ۀ�ہW�^F!�L�C=���y�:�y��w���߂0H\R%�"N^ '&76232762$"&5462"&46274&"&'264&#"'&&#"32$54'>$ $&6$ G>��>0yx1��4J55J�5J44J5�Fd$��?�4J55%6�E��#42F%��$f�������LlL�q>>11�J44%&4Z%44J54R1F$Z-%45J521��Z%F1#:��ʎ 9�������LlL�����#Qa"'&7622762%"&5462"&546274&#"&'73264&#"'&&#"32654'>#!"&5463!2�

5�5

*�*��.>.-@-R.>.-@-�<+*q�6�- -- 0�<�o,+< ��3�w�@w��w�w��

55

**�.. -- .. --G*<N�' ,-@-+*��M <*2
z��z
1�@w��w�w�����0<754&""&=#326546325##"&='26 $$ bZt�t&�sRQs��Z<t�sQ���^����a�a�>OpoO��xzRrqP6�z~{{Prr��^����a�a�����]054&"#"&5!2654632!#"&57265&<T<����H<T<������H������<T<8v*<<*������
��+;;+l���:�������=:��*;;*���
%!!"!!26#!"&5463!2��@� ]���]�@�w�@w��w�w�����]� �@��@w��w�w���	
%)3!!#335!!5!5!%#!!5!5!%#H��H{����R��H��H{���G��G{�)���q���G����R�R�q���R�R�q�����	#0@#"'632#"'632&#"7532&#"#7532#!"&5463!2L5+*5��L5+*5~�}7W|�3B}��}JC��7=}�w�@w��w�w�D�ZQ�[�1�N:_��)�i�$��)���@w��w�w��
)�	�����������6.#&#"'&547>'&#".'&'#"&5467%&4>7>3263232654.547'654'63277.'.*#">7?67>?>32#"'7'>3'>3235?�K�cgA+![<E0y�$,<'.cI
	,#� '!;7$�=ep���	��/�/7/
D+R>,7*
2(-#=
	/~[(D?G  �|,)"#+)O��8,+�'�6	y{=@��0mI�#938OA�E`
-�
)y_/FwaH8j7=7?%����a	%%!?)L
J
9=5]~�pj

 %(��1$",I 
$@((�
+!.S		-L__$'-9L	5V��+	
	6�T+6.8-$�0��+
t�|S1��6]�&#"'&#"67>76'&'&#"67>32764.#"#.32>67>7 $&54>7>7>7�rJ�@"kb2)W+,5/1		#

Z
-!��$IOXp7s�LCF9�vz NAG#/ 5|����Հ';RKR/J#=$,�9,�+$UCS7'2"1
 !�/
,

/--ST(::(�ep4AM@=I>".)x��ls��Y�|qK@
%(YQ�&N
EHv~����<Zx'#"&5467&6?2?'&"/.7.546326#"&'&/7264/7'764&"'?>>32.��A�UpIUxYE.A�%%%h%����%hJ%�����D,FZxULsT�gxUJrV�D�%hJ%�����@/LefL.C�%Jh%�����C�VsNUxϠ�@.FZyUHpV�A�%h&%%���%Ji%�����C�WpIUybJ/��Uy^G,D�%Jh%�����@�UsMtU�C�%hJ%�����C-Kfy�EX[_gj��&/&'.''67>7>7&'&'&'>76763>7>#&'&'767672'%'7'+"&'&546323267>7%#"'4'6767672,32�,+DCCQL�Df'
%:/d
B	4@}
�&!0$�?�����J�f�d�f-�.=���6(��:!TO�?
!I�G_�U%
����.
k*.=;�	5gN_X��	"
##
292Q41�
��*����6���nA;�|�
�BSN.	%1$����
6	$��nk�^�'7GWgw�����2+"&5463#!"&5463!254&+";2654&+";2654&+";2654&+";2654&+";2654&+";2654&+";2654&+";2654&+";26#"&=! B^^B�B^^B�:F�j��B^8(�(`�(� ������������������`�(8���^B��B^^B@B^�"vE�j�^B(8(�`(�����������������������8(����/?O_o��������/?2#!"&5463;26=4&+";26=4&+";26=4&+";26=4&+"54&+";2654&+";2654&+";2654&+";2654&+";2654&#!"3!2654&+";2654&+";2654&+";2654&+";2654&+";2654&+";2654&+";2654&+";2654&+";26@&&�&&�@@@@@@@@�@@@@@@@@@@��@@@@@@@@@@@@@@@@@@@&��&&�&��@@��@@��@@��@@��@@@@@@@@@@���@@@@@@@@�@@@@@@@@@@@��`'	"&5#"&5&4762!762$"&462���B\B@B\B��O�p�P����������.BB.���.BB.8$P��O広�������3CQ#".54>32#".546322#"&#"#"54>%".54>32%2#"&54>&X=L|<&X=M{<��TML�FTML�F�v�"?B+D�?B�J�p��H=X&<{M=X&<|dMTF�LMTF�(<kNs�I<kNs���Pvo�JPwo�/��s.=ZY�VӮv�Nk<J�sNk<I�shwPJ�ovPJ�o@��+"&7.54>2�r_-$�$-_rU���U��%��&&5%ő������'-
"'.546762����@��F�F�$�@B�@$.&�,�&.]]|�q����#<���<#(B�B��B%'-%'-'%'-"'%&'"'%.5467%467%62����@��l�l����@��l�l,���@��G�G�&!�@@�@�@@�@!&+#�+#�6�#+�$*`�:�p������:�p���x�
�p����=�`$>����>$�&@��&@�

�@&�p�@��	&.A!!"!&2673!"5432!%!254#!5!2654#!%!2#!8���Zp��?v�d���Ί�e�ns�6(���N[�����RW�u?�rt1Sr�F���|��iZ��@7�����މoy2���IM��C~[�R �yK{T:���%,AGK2#!"&5463!!2654'654.#532#532"&5!654&#"327#2#>!!�w��w�@w��w��~u��k'JTM��wa��|
DH��������>�I1q�Fj?����w�@w��w�w�����sq�*4p9O*�¸Z^���qh LE
�������"(nz8B
M���'?"&4624&#"'.'324&#"3267##"&/632632.�ʏ����hhMA�LR vGhг~��~������K„y���O^
��ʏ�ʏ��В*�LM@!<I�~��~����������t\��0�������CM4&"2#"&'676&/632#!"&=3267%2654&#"&#"%463!2"&4632�r�qq��tR8^4.<x3=RR��w�@w���_h�
Y��Ӗ���	K>�שw�w���ȍ�de�)�qrOPq�Ȧs:03=<x!m�@w��w�E\x�g�ӕ��є��%w�w����d��Ȏ��V��
-<K\%.'.>7'.?67'67%'>&%'7%7./6D�\$>	"N,��?a0�#O���1G�����9�'/���P(1#00��
($=!F"�9|��]�"RE<�6'o��9%8J$\:��\H�iTe<?}V��#�oj��?���d,6���%N#"
Hl��S��VY�]C

=�@�C4&"2!.#!"4&"2+"&=!"&=#"&546;>3!232�^�^^���Y	�	^�^^��`p�p�p�p`�]i�bb�i]�~�^^�^�e��^^�^���PppP��PppP��]��^^�]��3;EM2+"&=!"&=#"&546;>;5463!232264&"!.#!"264&" ]�`p�p�p�p`�]i�b���b�i���^^�^d�Y	�	!�^^�^��]��@PppP@@PppP@�]��^��^�]� ^�^^��e��^�^^� ��3$#!#!"&5467!"&47#"&47#"&4762++�&�2
$��$
�2&��&��&�4�&��&��Z4&�&##&�&4�&4�&4���4&�m4&�m���+DP4'&#"32763232674'&!"32763 3264'&$#"32763232> $$ g����* �o�`#�ə�0#z��#l(~���̠)���-g+����^����a�aF s"	+g�(�*
3#!|
#/IK/%*%D=)[�^����a�a����	!!!'!!77!���,���/���,�-���a��/G��	t%/;<HTbcq������%7.#"32%74'&"32765"/7627#"5'7432#"/7632#"5'7432#"&5'74632	#"/6327#"/6327#"/46329"&/462"&/>21"&/567632#!.547632632
	
	*


			��X		�

^

`		���

^b
	��c�
	f�u��
U`�59u���

���

4�J���
	
l�~		~�	F��	
��	�2�����

�
�	��	�m����|O�,��� ����	

���
��������

ru|	��u�
�
"�����
)9 $7 $&= $7 $&= $7 $&=  $&=46��w���`���w���w���`���w���w���`���w��b����`����VT�EvEEvE�T��VT�EvEEvE�T*VT�EvEEvE�T*EvE�EvEEvE�Ev�#^ct�#!"&5463!2!&'&!"&5!632#"&'#"/&'&7>766767.76;267674767&5&5&'67.'&'&#3274�(8(��(88(�(`�x
��c�`(8��!3;:�A0�?ݫ�Y

	^U	47D$

	7�4U3I�
|��L38wtL0�`(��(88(@(8(D��9�8(��Q1&(!;��
(g-	Up�~R�2(/{E���(Xz*Z%(�i6CmVo8�#T#!"&5463!2!&'&!"&5!3367653335!3#4.5.'##'&'35�(8(��(88(�(`�x
��c�`(8�iF������F��Zc�r�cZ�`(��(88(@(8(D��9�8(���k�k�"	��kk�J	 	!��	�k�#S#!"&5463!2!&'&!"&5!%!5#7>;#!5#35!3#&'&/35!3�(8(��(88(�(`�x
��c�`(8�-Kg
kL#D��C��JgjL��D���`(��(88(@(8(D��9�8(���jj�	�jjkk��kk����#8C#!"&5463!2!&'&!"&5!%!5#5327>54&'&#!3#32�(8(��(88(�(`�x
��c�`(8� G]�L*COJ?0R��\wx48>�`(��(88(@(8(D��9�8(���jj��RQxk��!RY�#*2#!"&5463!2!&'&!"&5!!57"&462�(8(��(88(�(`�x
��c�`(8�������P�pp�p�`(��(88(@(8(D��9�8(����������p�pp�	�#*7JR5#5#5#5##!"&5463!2!&'&!"&5##5!"&54765332264&"�����<(8(��(88(�(`�x
��c�`(8����k�ޑc�O"�jKKjK�������������`(��(88(@(8(D��9�8(������SmmS?M���&4&&4�#9L^#!"&5463!2!&'&!"&5!#"/#"&=46;76276'.'2764'.�(8(��(88(�(`�x
��c�`(8���������6dd�WW6&44�`(��(88(@(8(D��9�8(��.��	����G���5{��{5�]�]$59�95�#3C#!"&5463!2!&'&!"&5!2#!"&5463#"'5632�(8(��(88(�(`�x
��c�`(8��4LL4��4LL4l	��		�`(��(88(@(8(D��9�8(���L4��4LL4�4L��	
Z
	�#7K[#!"&5463!2!&'&!"&5!>&'&7!/.?'&6?6.7>'�(8(��(88(�(`�x
��c�`(8�`3��3��3��3�v
�
?
�
�`(��(88(@(8(D��9�8(���&��&-��&��&�
?


��
'���6#'.
'!67&54632".'654&#"32�eaAɢ/PRAids`WXyzO�v��д��:C;A:25@Ң>�����-05r��n������`��H(�����' gQWZc[���
-%7'	%'-'%	%"'&54762�[������3[��M���N�����
��3"��,��""3,3"o�ng�$������߆���]�g�n��$����+��)��

")")"

��x#W#"&#!+.5467&546326$32327.'#"&5463232654&#"632#".#"o���G��n\�u_MK'����̨|�g?CM7MM5,QAAIQqAy��{�b]BL4PJ9+OABIRo?z��.�z��
�n�6'+s�:�������z�cIAC65D*DRRD*�wy�al@B39E*DRRD*��'/7  $&6$ 6277&47' 7'"' 6& 6'�lL������������R�R����ZB|��R�R��>����d�ZZ��������LlL�Z����R�R«����Z��&�>���«|��R� � ��! $&54$7 >54'5��������P���f���f����P�����牉�@��s��-����ff���`-����c6721>?>././76&/7>?>?>./&31#"$&��(@8!IH2hM>'

)-*
h'N'��!'Og,R"/!YQG<I *1)

(-O1D+0�n�������z�3fw���G2'3�rd1!sF0o ��.q"!%GsH8��@-!5|w|pgS=
"B2PJfh�G���d�R	�(P]ly��&$'77&7567'676'"'7&'&'7&47'6767'627''6$'67'654'7&'7'&'&'7&'5&$  $6 $&6$ j��j:,A��A��S9bb9R#:j���8AܔA,z��C�9Z04\40Z9�C��!B�;X0,l,0X;�B�*A8ܔA&#9j`b9S$#R99#&A��8A�`
������䇇�<Z<䳎������LlL�fBϬ"129�,V<4!���!88dpm��"��BV,�92[P*V*P\M�C�

�C�M\P*V*P]L�D�

�D�L&BV*�8*8!����f�!4<gmpd88!&!8*8�*VB�Z<䇇�����䇇��������LlL�����9Eis�%#"5432#"543275#&#"3254&'.547>54'63&547#5#"=3235#47##6323#324&"26%#!"&5463!2F]kbf$JMM$&�N92<Vv;,&)q(DL+�`N11MZ
%G���&54	#	i�<$8&@��0H12F1d�w�@w��w�w��B?@�UTZ3%}rV2hD5%f-C#�C@,nO	�a7�.0�x2	yR�uR/u�%6;&�$76%$56S�@w��w�w��D��<Hlw%4#"324&#"32!".5475&5475.546322#654'3%#".535"&#"5354'33"&+32#"&54632S����;<;||w
$+�|('-GVVG-��EznA�C?H_��`Rb���]Gg>Z2&`��9UW=��N9:PO;:dhe\=R����
+)�&')-S9��9kJ�<)Um�Q��/��-Ya^"![��Y��'(<`X;_�L6#)|����tWW:;X���	#'#3#!"&5463!2)
p�*�xeשw�@w��w�w���0,\8�����@w��w�w��9��I#"'#"&'&>767&5462#"'.7>32>4."&'&54>32JrO<3>5�-&FD(=Gq���@C$39a��LL��²�L4

&)
@]��v�
�q#CO���!~󿵂<ZK#*Pq.���%
L��²�LL��arh({�w؜\���i&5467&6747632#".'&##".'&'.'#".5467>72765'./"#"&'&5
�}����1R<2"7MW'$	;IS7@�5sQ@@)�R#DvTA;
0x
I)�!:>�+<B76:NFcP:SC4r�l+r �E%.*a-(6%('�>)C	6.�>�
!-I[4&#"324&#"3264&#"324&#"326&#"#".'7$4$32'#"$&6$32D2)+BB+)3(--(3�1)+BB+)�4'--'4��'���#!0>R	�H���MŰ9�o�u7ǖD��䣣���
R23('3�_,--,�R23('3�_,--,�����NJ
������?u�W�m%������#"'%#"'.5	%&'&7632�!�
�;�
	`��u%"��(����!]#�c�)(�	��� #"'%#"'.5%&'&76	�!�
���	�(%#�#���fP_�"�(���!�)'��+�ʼn�����4I#"$'&6?6332>4.#"#!"&54766$32#!"&=46;46;2z�䜬��m�
I�wh��QQ��hb�F�*�@&('�k�������@����z��
�	
_hQ��н�QGB�'(&�*�eozΘ�@@`���  >. $$ ����ff���ff�����^����a�af���ff�����^����a�a��>�����"&#"#"&54>7654'&#!"#"&#"#"&54>765'46.'."&54632326323!27654'.5463232632�,�-,�,",:!
%�]&
%@2(/�.+�*)6!	<.$.�.*�*"+8#
�
#Q3,�,+�+#-:#"</$�)

w�

���
,*

x9-.2"'
,,
���@�&,,
��Qw
,����,#"+"&5#+"&5&'&'&547676)2�%2$l$�#l#�b~B@XXyo2�$CI@5��$$�>$$�/:yu��xv)%$	��/?CG%!5%2#!"&5463!5#5!52#!"&54632#!"&5463#5!5`���&&�&&������ �&&�&&�&&�&&@������&�&&&���������&�&&&�&�&&&��������%2 &547%#"&632%&546 #"'6���������\~����~\h�
���~\��h\�������V�
�V�������V��V���%5$4&#"'64'73264&"&#"3272#!"&5463!2}XT=��=TX}}�~�>SX}}XS>�~�}�w�@w��w�w���~:xx:~�}}Xx9}�}9xX}�@w��w�w���/>LXds.327>76 $&6$32762#"/&4762"/&47626+"&46;2'"&=462#"'&4?62E0l�,

*"�T�.�D@Yo������oo����@5D�

[		

Z
�Z

		[	 ``��[



Z

	�2
,�l0
(T�"�.�D5@������oo��oY@D,

Z

		[	�		[		

Z
��``EZ

		[		
�5%!  $&66='&'%77'727'%am��lL�������m�f�?���5���5>�f�F�tu�ut�F������������LlL�H�Y�C�L|��|L����Y�˄(��E''E*(�/?IYiy����%+"&=46;2+"&=46;2+"&=46;2+"&=46;2%"&=!#+"&=46;2+"&=46;2+"&=46;2+"&=46;2!54!54>$ +"&=46;2#!"&=������@�������&&������@��������������3P��
>��P3��&��&��r���r��r���&��&���r���r��r���
he

4LKM:%%:MKL4�W��T�&&��%/9##!"&563!!#!"&5"&5!2!5463!2!5463!2�&&�&��&�&&���� ��� ��&��&&i�@����&&@&7�����'#5&?6262�%%�o����;����j|/����&jJ%�p��&j;&i&�p���/|���j�ţ���%Jk%�o��%��	:g"&5462#"&546324&#!"263662>7'&75.''&'&&'&6463!276i���~ZYYZ~�@O��S;+[G[3YUD#o?D&G3I=J�y�TkBuhNV!WOhuAiS�y*'^C�C^'*SwwSTvvTSwwSTvv���WID\�_"[�g��q# /3qF��r2/ $r�g�%4
�HffH�J4d���#!#7!!7!#5!������VF��N����rmN�N��N����������N���!Y���+?Ne%&'&'&7>727>'#&'&'&>2'&'&676'&76$7&'&767>76'6�#
<�;1�1x��#*#
�G,T9�3%�/#0v�N�Z;:8��)M:(	&���C.J}2	%0����
 	^*
J�F	
&�7'X"2L�DM"	+��6�
M2+'BQfXV#+]
#���'
L/(e�B�9
�#,8!!!5!!5!5!5!5#26%!!26#!"&5!5���������������&4&���&�pP��Pp������������������@��@&&@��!&�@PppP@�*
��	9Q$"&54627"."#"&547>2"'.#"#"&5476$ "'&$ #"&5476$ (�}R}hL�K�
N���N
����U�d:�
�x�x�
�����8���
��
�
� ,, |2222�
MXXM

�ic,>>,�
����
�	����	�
��̺

�
��'/7?KSck{4&"2$4&"24&"24&"24&"24&"24&"24&"24&"264&"24&#!"3!264&"2#!"&5463!2�KjKKj�KjKKj��KjKKjKKjKKj��KjKKj��KjKKjKKjKKj��KjKKjKLhLLhL��KjKKj�&�&&&KjKKj�L4��4LL4�4L5jKKjKKjKKjK�jKKjK��jKKjK�jKKjK�jKKjK��jKKjK�jKKjK���4LL4��4LL�jKKjK�&&�&&��jKKjK�4LL44LL	��'E!#"+"&7>76;7676767>'#'"#!"&7>3!2�W�",&7'�	#$	&��g�pf5O�.P�q�ZZdS���-V"0kqzTx�D!��!8�p�8%'i_�F?;�k��R(`��
!�&)�'�
(2!&6367!	&63!2�!
`�B��1LO�(���+#�=)�heC��Qg#s`���f�4#����6�������q�'���X�|0-�g��	�>IY#6?>7&#!%'.'33#&#"#"/3674'.54636%#"3733#!"&5463!2��4��:@��7�vH��%�h��EP{��0&<'VFJo���1,1.F6��A��#���L4�4LL44L"%�	
 
7x'6
O\�JYFw���~�v^fH$ !�"xdjD"!�6��`J�4LL44LL��	�+3@GXcgqz�����-<JX{�&#"327&76'32>54.#"35#3;5#'#3537+5;3'23764/"+353$4632#"$2#462#"6462""'"&5&5474761256321##%354&'"&#"5#35432354323=#&#"32?4/&54327&#"#"'326'#"=35#5##3327"327'#"'354&3"5#354327&327''"&46327&#"3=#&#"32?"5#354327&3=#&"32?"#3274?67654'&'4/"&#!"&5463!2_��g��QQ��h���^_�~\[[\]�_^���h��QQ��g�e��<F�$�$$��� !!�&&�/!/

!!�

00/e&'!"e$�
		'!!�''�
	8''NgL4�4LL44L�UQ��gh��QUk=<Sc���cc,-{k���jUQ��hg��Q��



�9

,&W &$U�K$$KK$$KDC(>("
!
=))=2�( '! '�L#(>(
&�DC(>(z�L#�DzG)<)�4LL44LL��	�
BWbjq}��+532%+5324&+32763#4&'.546327&#"#"'3265#"&546325&#"32!264&"2%#'#735#535#535#3'654&+353#!"&5463!29$<=$�@?�SdO__J-<AA@)7")9,<$.%0*,G3@%)1??.+&((JgfJ*�A�������!&��j�jj��GZYG�иwssw��PiL>8aA	!M7�7MM7�7M�3!�
4erJ]��&3YM�(,
,%7(#)
,(@=)M%A20C&Me�e��(X���0&Ėjj�jV��	8Z8J9���N/4���$�8NN8�8NN��	�#&:O[���	$?b3'7'#3#%54+32%4+324+323'%#5#'#'##337"&##'!!732%#3#3##!"&53733537!572!56373353#'#'#"5#&#!'#'#463!2#"5#"5!&+&+'!!7353273532!2732%#54&+#32#46.+#2#3#3##+53254&".546;#"67+53254&.546;#"#'#'##"54;"&;7335wY-AJF���=c�(TS)!*RQ+��*RQ+�Y,�B^9^��Ft`njUM�')	~PS�PR�m���٘���M7�7Mo7�q

@)U	8�"����E(�1��++��NM7�7Mx3�7��8�D�62��W74�;�9�<�-A"EA�0:��AF@�1:�ؗ����B�f~~""12"4(�w$#11#�@}}!%+%5(�v$:O�\z��K��?*$\amcrVl��OO176Nn�<!E(=�<&l/������<<������
[ZZYY�89176���7OO7�==..//cV==::z,,,,aa,,��7OO7�Z::��;;Y
fcW�(		"6-!c�(		!5	#
b�t88176����tV:
&$'*9	%e#:
%'*9B����<<��;
&(�����	�#:Sn�����#"&54632%#76;2#"&54632%4&+";2?>23266&+"&#"3267;24&+"'&+";27%4&+";2?>23266&+"&#"3267;254+";27#76;2#!"&5463!2�3%#2%%,, _3$$2%%��M>�ALVb5)LDHeE:<
E�Mj,K'-R
M�~M>�ARVb5)LEHeE:<
E�
JAB�I*'!($rL4�4LL44Lv%1 %3!x*k�$2 %3!�;5�h
n
a�
!(lI;F	
	
��	r�p
p8;5�h

t
a�
!(lI;F��`	#k�4LL44LL
��	�
2HW[lt��#"'5632#6324&'.54327&#"#"&'32767#533275#"=5&#"'#36323#4'&#"'#7532764&"24'&#"327'#"'&'36#!"&5463!2=!9�n23��BD$ &:BCRM.0AC'0RH`Q03'`�.>,&I / *�
 /

��8/��n-(G@5��$ S3=�,.B..B�02^`o?7je;9G+��L4�4LL44LyE%#	�Vb�;A
!p &'F:Aq)%)#o�rg�T$v2�� 8�)2����z948/�{�8A�B..B/��q?@�r�<7(g/��4LL44LL��?#!"&'24#"&54"&/&6?&5>547&54626=�L4�@�ԕ;U g3
��
T
�2RX='�8P8|�5�
����4Lj��j� U;Ig@
	��
`
� "*\���(88(�]k
��&N4#"&54"3	.#"#!"&'7!&7&/&6?&5>547&54626;U gI��m*��]�Z0�L4�@�ԕ���=o=CT
��
T
�2RX='�8P8|�5�
� U;Ig��Xu?bl3���@4Lj��j��a���`
	��
`
� "*\���(88(�]k����/7[%4&+";26%4&+";26%4&+";26!'&'!+#!"&5#"&=463!7>3!2!2@@@@@@���0
��
o`^B��B^`5FN(@(NF5���@��@��@�u		�@�LSyuS�@�%44%����,<H#"5432+"=4&#"326=46;2  >. $$ ~Isy9���"SgR8v�H����D�	w
����ff���ff�����^����a�a�m2N+��	)H-mF+1����0*F		+f���ff�����^����a�a�����b4&#"32>"#"'&'#"&54632?>;23>5!"3276#"$&6$3 �k^?zb=ka`�U4J{�K_/4�^����W�&	vx :XB0���܂�ff���)
f������zz��X��lz=l�apz��o�b35!2BX���
�G@8��'	'=vN$\f���f�	1
	SZz�8�z�X�#("/+'547'&4?6276	'D�^�h

�

i��%5�@�%[i

�

h�]��@������]�h

�

i��%�@�5%[i

�

h�^�@@������)2#"&5476#".5327>OFi-���ay~�\~;��'�S���{�s:D8>)AJfh]F?X��{[��TC6��LlG��]��v2'"%B];$�-o��%!2>7>3232>7>322>7>32".'.#"#"&'.#"#"&'.#"#546;!!!!!32#"&54>52#"&54>52#"&54>52�-P&+#($P.-P$'#+&PZP&+#"+&P-($P-.P$(#+$P.-P$'#+&P-.P$+#pP@@Pp�H85K"&ZH85K"&ZH85K"&Z����@��Pp��@��@��@pMSK5, :&�LMSK5, :&�LMSK5, :&����!!3	!	�����@�����@@�����	#"$$3!!2"j������aѻxl���a����lx�a�a����j������!!3/"/'62'&63!2��'y��

�`�I

��y�����My��

�`�I

��y'W`#".'.#"32767!"&54>3232654.'&546#&'5&#"

4$%Eӕ;iNL291 ;XxR`�f՝�Q8T������W��iW�gW:;*:`�Qs&?RWXJ8�oNU0�J1F@#)
[�%6_PO�QiX(o�`��_?5�"$���iʗ\&>bd�s�6�aP*< -;iFn�*-c1B���Wg4'.'4.54632#7&'.#"#"'.#"32767'#"&54632326#!"&5463!2��#$(	1$6]'
!E3P|ad(2S;aF9'EO�Se�j]�m�]<*rYs��hpt.#)$78L*k�h�w�@w��w�w��B

%
$/$G6
sP`X):F�/�fwH1p�dl�qnmPH�ui�kw_:[9D'��@w��w�w��34."2>$4.#!!2>#!".>3!2�Q��н�QQ��н�QQ��h�~w��w�h���f����ff����н�QQ��н�QQ��н�QZ����ZQ�����ff���ff�#>3!2#!".2>4."f����ff�����н�QQ��н�QQ���ff���ff��Q��н�QQ��н�	,\!"&?&#"326'3&'!&#"#"'  5467'+#"327#"&463!!'#"&463!2632���(#�AH����s���9q � ci��<=�
#�]�<������OFA��!�������re��&&��U�&&![e��F �������U?���g�����4_���������a�?b�+��r7�&4&��&4&�p,�+K4&"2$4&"2.#!"3!264&#!"3!2#"&=!"&=#47>$ �KjKKjKKjKKjH#�j#H&&&������KjK�KjK�g	�V�	ijKKjKKjKKjK���..n((�[���5KK5��5KK5�[po�Nv<<vN�:f���.R#!"&463!24'!"&5463!&$#"!2#!32>+#"'#"&546;&546$3232�2$�B$22$�$�*$22$�X�ڭ��ӯ�$22$�tX'���hs2$���ϧ��kc�$22$���1���c�$2�F33F3VVT2#$2����ԱVT2#$2��g���#2UU���݃
�2$#2UU�1݃���2��,u�54#"67.632&#"32654'.#"32764.'&$#"7232&'##"&54732654&#"467&5463254632>32#"'&�ru�&9��%"*#�͟ <yK0Og�" 
&9B3�;��㛘8��s%+DWXRD= @Y%�	!Q6R�!4M8�+6rU^z=)�RN��.)C>O%GR�=O&^���op������C8�pP*�b�Y
_�#��$��N Pb@6��)?����+0L15"4$.�Es
�5I�Q"!@h"�Y7e|J>z�iPe��n�eHbIl�F>^]@����n*9
���6[_3#"&54632#.#"32%3#"&54632#.#"326%4&'.'&! ! 7>7>!���������
�=39?
6'_����������
�>29?
5'17m-V����U--,�bW.�������뮠@Fyu0HC$������뮠@Fyu0HC$L���=??
<����=! A	<��`�;+"&54&#!+"&5463!2#!"&546;2!26546;2���p���Ї����0�p�����p���@��I�������pp���>Sc+"&=46;254&+"&+";2=46;2;2=46;2;2%54&#!";2=;26#!"&5463!2���A5�DD�5A7^6a7MB5��5B7?�5B~�`��`��`0`��rr��5A44A5�����v�5AA5�f�*A���`��`0`�����	!!!!	#!"&5463!2��ړ�7���H��7j�v�@v��v�v��'���:��@v��v�v���MUahmrx���������������#"'!"'!#"&547.547.54674&547&54632!62!632!#!627'!%!"67'#77!63!!7357/7'%#	%'3/&=&'	5#?&5476��!�p4�q"���"�"�6�"� ��'������h*�[���
��|�*��,�@���?wA�UM�pV���@�˝�����)��Ϳw����7(�{��*U%���K6������=0�(���M���		��"!O		dX$k
!!��!
����b��	
���[�����TDOi
��@��6��b��xBA�ݽ�5
�
�ɝ:����J���+���3����,��p
x�1���������Fi
(��R��
463!#!"&5%'4&#!"3���`����а@.�.@A-X��f�B����$��.BB.�.C��}
)&54$32&'%&&'67���"w�`�Rd]G�{��o]>p6��sc(��@wg����mJ�PAjy���YW�a͊AZq���{HZ�:�<dv\gx�>��2AT�Kn������+;"'&#"&#"+6!263 2&#"&#">3267&#">326e��~�└�Ȁ|��隚���Ν|����ū|iy�Zʬ��7Ӕ�ް�r|�uѥ��x�9[��[9�jj��9A�N��N�+,#ll"���B�S32fk��[/?\%4&+";26%4&+";26%4&+";26%4&+";26%#!"&5467&546326$32�]]��ee��ee��ee��$��~i
�qfN-*���������#����Sj������t�2"'q�C���B8!�'�>	
!%)-159=AEIMQUY]agkosw{��������!	%!	5!#5#5#5#5#57777????#5!#5!#5!#5!#5!#5!#5!#5#537#5!#5!#5!#5!#5!#55#535353535353%"&546326#"'#32>54.&54>3237.#"����������Q%%%%%%%%%?iiihOiixiiyiixii�Arssrrssr��%s�ssrrss�Ns%%%%%%%%%%�����������'<D<'paC_78#7PO7)("I$	75!����RA��b��(���ss�ss�ss�ss�ss�"/!".""."
!."".!/^.".^.".]/".�$$$$$$$$$$$$$$$$��Os$$$$$$$$$$$$$$sO$s�ss�ss�ss�ss�ss#��������}$)	13?*
,./:
-�s�*4&"2$4&"2#!"&5463!2!5463!2_��������?-��-??-�,@�@,�-?����pq�8��,??,D,??,��,??(�Z2#".#"3267>32#".543232654&#"#"&54654&#"#"&547>326���ڞU�zrhgrx�S��Пd�U <e�����x՞����Zf��_gן:k=2;�^��9��Œ��7\x��x\7����K=5Xltֆ�W����W{e_�%N��%,%CI��%���#+W4&+54&"#";26=32"&462"&462!2#!"&54>7#"&463!2!2�&�&4&�&&�&4&���KjKKj�KjKKj� ���&&�&%��&&�&&4&�&&�&4&�&&��5jKKjKKjKKjK��%z
0&4&&3D7&4&
%&���'S4&"4&"'&"27"&462"&462!2#!"&54>7#"&463!2!2&4�&4&�4&4��KjKKj�KjKKj� ���&&�&%��&&�&&4&�%&&�ے&4��"jKKjKKjKKjK��%z
0&4&&3D7&4&
%&��	&	!'!	!%!!!!%"'.763!2�o���]�F������o�������oZ��Y��@:�@�!�!�g���������������f�/�/��I��62'"/"/"/"/"/"/"/7762762762762762762%"/77627&6?35!5!!3762762'"/"/"/"/"/"/%5#5!4�ZSS6SS4SS4SS4SS4SS4SS4�ZSS4SS4SS4SS4SS4SS4S�-4�ZSS4S@������4SS4�ZSS6SS4SS4SS4SS4SS4S@�����ZSSSSSSSSSSSSSS�ZSSSSSSSSSSSSSy�ZRRR@%:=
:+������:
=���RR�ZSSSSSSSSSSSSS���������Cv!/&'&#""'&#"	32>;232>7>76#!"&54>7'3&547&547>763226323@``����`
VFaaFV


$.


.$

��y��y�	.Q5Z���E$ ,l<l, $E���R?Y*��@���@�2	!#""#!	��y��y=r�na�@@(89*>�*%>>%*�>*98(QO�!���L\p'.'&67'#!##"327&+"&46;2!3'#"&7>;276;2+6267!"'&7&#"(6&#"#"'�D��g��OOG`n%�E������LL{�@&&�N�c,sU�&&�!Fre&&�s�����s���#�/,�������<=�
#�]�g��L�o�GkP�'��r-n&4&2�-ir&�&�?���o 
��������4_�����5OW! .54>762>7.'.7>+#!"&5#"&5463!2"&462�{�����{BtxG,:`9(0b��Կ�b0(9`:,GxtB��&@&�&@&K5�5K`�����?e==e?1O6#,
#$
,#6OO��&��&&�&�5KK���������?!"'&'!2673267!'.."!&54632>321
��4��q#F�""�8'g��o#-��#,"t�Yg��>�oP$$Po�>�	��Z�e�p#����)�R��0���+I@$$@I+����+332++"&=#"&=46;.7>76$  ������@����ᅪ*��r���������@��@�����������r���'/2+"&5".4>32!"&=463  �&@��~[���՛[[��u˜~���gr�������&�`����u՛[[���՛[~~@��r������=E32++"&=#"&=46;5&547&'&6;22676;2  >�����``@``�ٱ��?E,��,=?��r�������H�����@``@�GݧH`�j��j���r������BJ463!2+"&=32++"&=#"&=46;5.7676%#"&5   &@�~���``@``�� �v�X����r�������&���������@``@����+BF��`r������ks463!2+"&=32++"&=#"&=46;5&547'/.?'+"&5463!2+7>6 %#"&5   &@�~���``@``��~4e	
0
	io@& �jV	
0
	Z9�������r�������&���������@``@�G�ɞ5o
,
sp� &@k^
,
c8~~��`r�������8>KR_32++"&=!+"&=#"&=46;.767666'27&547&#"&'2#"�����@�@���'�Ϋ���'������sg��gs�����ww�@����sg��g����@����@���-ss��ʃl������9���9��������OO���r9���9��FP^l463!2+"&=$'.7>76%#"&=463!2+"&=%#"&54'>%&547.#"254&' &@�L?����CuГP	��v�Y�� &@�;"����������ޥ�5݇�����ޥ���5�`&����_��ڿg��w��BF�@&����J_	s���&��&�����?%x���������%x��JP\h463!2+"&='32++"&=#"&=46;5.7676632%#"&56'327&7&#"2#"� &@�L? ���ߺu�``@``��}
�ຒ�ɞ���������ue��eu�9����ue��e�&����_��"|N�@``@��"��"|a~���l����o����9���9��r9��@�9���;C2+"&5"/".4>327'&4?627!"&=463  �&@Ռ		.	
�N~[���՛[[��u˜N�		.	
����gr�������&�`֌
	.		�O��u՛[[���՛[~N�
	.		��@��r������9A'.'&675#"&=46;5"/&4?62"/32+  ��'��֪�����\
	.		�4�		.	
\���r������|��ݧ���憛��@�\		.	
��
	.		\�@��r�����~9A"/&4?!+"&=##"$7>763546;2!'&4?62  m��		-

���@���ݧ���憛��@&�

-		�@r������m4��

-		����ٮ*�������		-

��r������+"&5&54>2  ����@��[���՛[�r�����������dG�u՛[[���r������  ".4>2������r�[���՛[[���՛�r������5�՛[[���՛[[����$2#!37#546375&#"#3!"&5463�#22#�y��/Dz?s����!#22#�2#��#2S�88�	����2#V#2��L4>32#"&''&5467&5463232>54&#"#"'.K���g��&Rv�gD�
$*2%	+Z hP=DXZ@7^?1
۰��3O+�l��h4���`���M@8'�+c+RI2
�\�ZAhS�Q>B�>?S2Vhui/�����,R0+	ZRkm�z�+>Q2#"'.'&756763232322>4."7 #"'&546��n/9�b�LHG2E"D8_
p�dd���dxO�"2�xx��ê�_�lx�2X	
!+'5>-�pkW[C
�I
I@50�Od���dd��˥�Mhfx�����x^���ә�	�#'+/7!5!!5!4&"2!5!4&"24&"2!!!��� 8P88P�� 8P88P88P88P����������P88P8 ���P88P88P88P8� ������������+N &6 !2#!+"&5!"&=463!46;23!#!"&54>32267632#"_����>�@`

��
�
��

`
�
� L4Dg��y� 6Fe=O���O�U�4L��>����
�
��

`
�
`

��4L�2�y5eud_C(====`L4����3V &6 #"/#"/&54?'&54?6327632#!"&54>32 7632_����>���		�	
	��	
	�		��		�	
	��	
	�		��%%S��y� 6Fe=�J�%��>����	
	�		��		�	
	��	
	�		��		�	
	��%65%S�y5eud_C(zz.!6%$!2!!!46;24&"2!54&#!"�&���&�&@�Ԗ��V�@&&�@��&&�Ԗ�Ԗ@��&���3!!!	!5!'!53!!	#����7I�e�����eI7��CzC�l��@�����@������@�#2#!"&?.54$3264&"!@������մ���pp�p���������((��������p�pp����#+/2#!"&?.54$3264&"!264&"!@������մ���^^�^@����^^�^@���������((��������^�^^�����^�^^�����v(#"'%.54632	"'%	632U�/�@��k0�G��,�zD#[�k#�
/t�g��
F��
����Gz�����	#'#3!)
p�*�xe���0,\8�����T���#/DM�%2<GQ^lw�����
&'&676676&'&7654&'&&546763"#"'3264&7.>&'%'.767&7667&766747665"'.'&767>3>7&'&'47.'.7676767&76767.'$73>?>67673>#6766666&'&6767.'"'276&67&54&&671&'6757>7&"2654&57>&>&'5#%67>76$7&74>=.''&'&'#'#''&'&'&'65.'&6767.'#%&''&'#2%676765&'&'&7&5&'6.7>�&5R4&5S9
W"-J�0(/�r
V"-J�0(.�)#"6&4pOPpp�c�|o}vQ�[�60X�Q��W1V�	
#5X		N"&
.
)
D>q J:102(z/=f��*4!>S5b<U$:I o<G*	,
&"O	X5
#!

��	R N#
C
83J*��R	!(D
#%37	�;$-.�
(,��覦�6ij
�	���"���)9
E�%����!B83
	j9�6/,	:QD')yX#�63V
��b�a	,
Ue��LPA@���*	̳�`Xx*&E
V36��%	B3%	B3XA	
#!.mU"A	
#!.mUB-#2+Jii�i�m-C<I(m��8qF/*)0�S
		
I
E5&+>!%
(!$p8~5..:5I

~��T�
4~9p# !
)& ?()5F	1	
	
� d%{v*�:
 @e
s|D�1d {�:�*dAA|oYk'&��<��tu��ut�&vHC�XXTR�;w��
��71™
Z*&'
1	9?	.

$��Gv5k65P<�?8q=4�a	
SC"��1#<�/6B&!ML	�^;�6k5wF1<P�C	�;$"&462"&46232>.$.�`�aa��sa�``��Z9k����'9؋ӗa-*Gl|M�e_]`F&O������ܽ�sDD!/+�``�aa�``�a1<YK3(
 /8HQelA�Z3t_fQP<343J;T7Q�+?Kgw  $6&$  $&62+"5432+"&=.54  $;26=462;26=4& 4&#!"3!26)����߄��4R4߄��mlL�������r {jK#@#Q�a����^�����@���@���`&��&&�&�������߄��4R4�Ď������LlL�N� �@K5#:rr:#5K���^����a�a��``]��]``����&&�&&	/!3#4&#!"3!265##!"&5463!22�������@K5^B��B^^B@B^5K���� �@���5K�B^^B�B^^B�K	/!2##!"&5463!2#4&#!"3!265�5KK5^B��B^^B@B^���@��K5��5K�B^^B�B^^B�`� �@ 	/!2##!"&5463!2#4&#!"3!265�5KK5^B��B^^B@B^���@��K5��5K�B^^B�B^^B�`� �@ 	/!2##!"&5463!2#4&#!"3!265�5KK5^B��B^^B@B^���@��K5��5K�B^^B�B^^B�`� �@ 	+2##!"&5463!2#4&#!"3!265�5KK5^B��B^^B@B^���@�K5��5K�B^^B�B^^B�`� �@ �{#!&'#"'&547632m*���
�0���((�'(�$0K
��*�*��% 3#!3# '!#53 5#534!#53 6!3@����@@@��pp��@@@����@@pp@��`������� �����	�+/7;A#3!5!!3#!!5!35!355#%53#5!#35#!!!!!!!!����������������������������������������������������������������������
�	#'+/3?CGW#3!5!!35!!3#!!5!#!5!3535!355#%#3%!53#5!#35#!5##5!3!5!3!5	����������������������������������������������������������������������������������������������������������������!"&5463!2!"!�`(88(@(8�`(8�}2�2R �`8(@(88(�`8HR2�2���##6?6%!!!46#!"&5463!2x���� ��8�(�`(�(88(@(8�
���� (8��(`�(8(@(88��	�'ATd+5326+5323##"' %5&465./&76%4&'5>54&'"&#!!26#!"&5463!2�
��

���i�LCly5�)*H�celzzlec0h�b,,b�eIVB9@RB�9�J_�L4�4LL44L44%��2"��4��:I;p!q4b�b3p(P`t`P(�6EC.7B�I6�4LL44LL��	�.>$4&'6#".54$ 4.#!"3!2>#!"&5463!2Zj��b�jj[���wٝ]�>o��Ӱ�ٯ�*�-���oXL4�4LL44L'�)�꽽�)�J)���]��w����L���`��ֺ��۪e���4LL44LL�;4&#!"3!26#!"&5463!2#54&#!";#"&5463!2�
��

@
�^B��B^^B@B^���
��

��B^^B@B^`@

��
M��B^^B@B^^>��

��
�^B@B^^��5=Um	!	!!2#!"&=463!.'!"&=463!>2!2#264&"".54>762".54>762��������?(`��`(?��b|b��?B//B/�]�����]FrdhLhdrF�]�����]FrdhLhdrF@�@��@�(?��@@?(@9GG9@/B//B�aItB!!BtI�Ѷ�!!��ьItB!!BtI�Ѷ�!!��ь�-M32#!"&=46;7&#"&=463!2#>5!!4.'.46�ՠ��`�@`ՠ��`���M�sF�Fs�MM�sFFs�M����ojj�o��@@�jj�@@�<���!(!���!(!�-3?32#!"&=46;7&#"&=463!2+!!64.'#�ՠ��`�@`ՠ��`��	�	Dq�L�L�qD����ojj�o��@@�jj�@@B>=�C�����-3;32#!"&=46;7&#"&=463!2+!!6.'#�ՠ��`�@`ՠ��`��UVU96�g�g�6����ojj�o��@@�jj�@@β����**ɍ�-G32#!"&=46;7&#"&=463!2#>5!!&'.46�ՠ��`�@`ՠ��`���M�sF�Fs�M�k�k�����ojj�o��@@�jj�@@�<���!(!3��3!(!�9I2#!"&=4637>7.'!2#!"&=463��@b":1P4Y,++,Y4P1:"�":1P4Y,++,Y4P1:"b�@@��@7hVX@K-AA-K@XVh77hVX@K-AA-K@XVh7����Aj"#54&#"'54&#"3!26=476=4&#"#54&'&#"#54&'&'2632632#!"&5&=4632>3265K @0.B @0.B#6'&�&
l
@0.B 2'	.B A2TA9B;h" d�
mpP��Tl��L�c�_4.H�K5�]0CB.�S�0CB.�/#��'?&&)$�$)�0CB. }(AB.�z3M�2"61�d�39�L/PpuT(If�c�_�E�`1X"#4&"'&#"3!267654&"#4&"#4&26326#!"&'&5463246326�\B B\B�&@5K�&@�"6LB\B B\B ��sc�i�L}Q�P<m$��3�jN2�c�B.�p.BB.���3K5+"�3,"� �.BB.��.BB.���.�G=�c�i�(+�lOh7/DVj�"�c�=���&5Jb�#"'&=.547!"&46;'.54632!2327%.54&#"327%>%&#"!"3!754?27%>54&#!26=31��?>I��j��jq,J[�j.-t�j�lV��\���$B.R1?@B.��+?2`$�v5K-%��5KK5�.olRIS+6K5�̈$B\B 94E.&�ʀ�15uE&
�Ԗ�Pj��j�dX�U�GJ7!.B
�
P2�.B
�
%2@	�7�K5(B�@KjKj�?+f�UE,�5K~!1��.>F.��F,Q5*H��$b2#!"&=%!"&=463!7!"&'&=4634'&#!">3!!"3!32#!"3!23!26=n$<vpP��Pp���Pp�w�*�Rd�ApP�]��'@�A&
3@��&H-�[(8@
2�EB^&1
=&�&81����PppP��pP w���cOg Pp��c�
4& #.& &,,:8(�%^B &�
.�&&��2t"&'&54'&5467>32>32>32#"#.#"#.#"3!27654&#"547654&#"#654&�Mye
t|]�WS�Sg�SY�\x{
70"1i�92�DU1&=	��	=&0@�c	>&/Btd4!�*"�8K4+"��@H@/'=	t�?�_K�93-�]�
UlgQ���QgsW
�]#�+�i>p&��3�0&�VZ&0B/
���%3B.�"t�o ){+C4I��(
/D0&�p0D��3[_cg"'&#"3!2676=4&"#54&#"#54&#"#4&'2632632632#!"&'&5463246#!#!#�5K�)B4J�&@�#\8P8 @0.B J65K J6k�
cJ/4qG^�\hB�2<m$��3�iG;��     �K5����6L4+"�3p`b�)<8(=0CB.@Z7OK5`:7O��k�EW�^�tm��@Q7/DVi�##j�������������%4Ia�2#!"&5&546325462632"32654&"3267654&76;74&"#.#"2676=#"&'+53264&#!"3</�U�X�dj���jP��ԖEu�!7JG72P
�
B�%
�
B.!7�	@�A�f+?�jKjK@�B(5K,EU�H*5Q,F��.F>.��1!~K5y?��^\��Vl�j�t-.j�[J,qj��j��I7$��?1R.B�+��.B$`2?g�vEo.�5KK5��%-K��6+SIR[��&.E49 B\B$���5K�G#!+"&5!"&=463!2+"&'+"'+"'&5>;2>76;2Y
��
�
��

M	

�.�x	�-�
	N�	�


�	�
�u
��
,
u
�?

L�W���

���#	�	*:J4'&+326+"'#+"&5463!2  $6& $&6$ <!T{�BH4�	�›�&�>UbUI-����uu�,�uu�ڎ������LlL�AX!��J��m����f\�$
6u�����uu�,�K������LlL���-[k{276/&'&#"&5463276?6'.#"!276/&'&#"&5463276?6'.#"  $6&  $&6]�h-%Lb`J%E5
,5R-����h
-%Lb`J%E5
,5R-���'����uu�,�uu��lL�������/hR

dMLcN����hR
dMLcN����1u�����uu�,��������LlL�@��� 	'	7	'7	�����`��`H� �����`�`H� �!`��������`H� � ���`�`�`H���`��'%		7'	7'7	' $&6$ ���X�`��(W�:,�:��X�`��(WL�������LlL�X�`(W��:�B����X�`���(X�������LlL��
��	$%/9ES[�#"&54632$"&4624&"26$4&#"2%#"&462$#"&4632#"32&! 24>  !#"&'.'#"$547.'!6$32�7&'77'&7�7N77N�'q�qq�q�qPOrq��E�st�����ts��st���}�||�}�������uԙ[W��Q���~,>	n������P/RU P酛���n	>,m�����'77'&77N77N6^Orq�qq�qq�q�t��棣棣�(~|��|on[��usј^�~���33������pc8{y%cq����33dqpf��	L 54 "2654"'&'"/&477&'.67>326?><����
x
�������,

(-'s�IVC��VH�r'-(

$0@!BHp9[�%&!@0$u
��
������]\��\]��-$)!IH��V
D��
VHI!)$-#3���6>N"&462."&/.2?2?64/67>&  #!"&5463!2�]�]]�3
$;
&|�v;$
(CS�3�1	=�rM=	�4�TC(G���z�w�@w��w�w���]]�]��($-;,54�0=	�sL	=�45,;�����@w��w�w������(2#"$&546327654&#"	&#"AZ�������\@�/#�%E1/#����#.1E$�!�[A�����懇�@�@\��!�#21E!��6!E13"�|!��	gL&5&'.#4&5!67&'&'5676&'6452>3.'5����A5R��V[t,G'Q4}-��&�<C!l n?D_@Փ>r!�
��G;��>��!g�1�����2sV&2:#;��d=�*'�5E2/..F�D֕71$1>2�F!���&12,��@K�
r��#"&5462>%.#"'&#"#"'>54#".'7654&&5473254&/>7326/632327?&$  $6 $&6$ �!&"2&^	u��_��x��^�h
;J݃HJǭ
q�E
Dm!
M�
G?̯'%o�8
9U�������(F(�ߎ������LlL��&!&!SEm|�[��n{�[<ɪ
"p� C
Di%
(K�HCέp�C
B
m8	
@Kނ
H�F(���������������LlL���"*6%&6$	7&$5%%6'$2"&4}���x����3��n��QH������:dΏ���Xe�8�����z��'	������l�i���=!��7�����S�o�?v�������M '&7>>7'7>''>76.'6'���El:F�gr
*�t6�K3UZ8�3P)3^I%=9	)<�}J���k+C-Wd��	&U���-��TE+]��Qr-�<Q#0
�C+M8	3':$
_Q=+If5[ˮ&&SG�ZoM�k���ܬc�#7&#"327#"'&$&546$;#"'654'632ե›��fKYYKf�¥y�ͩ���䆎�L��1���hv�v��ƚw�wk��n�]��*��]�nlx��D��L�w�����~?T8b��b9SA}����+5?F!3267!#"'#"4767%!2$324&#"6327.'!.#"��۔c�2�8�Ψ����-\���?���@hU0KeFjTl�y�E3��aVs�z�.b��؏��W80��]T��Sts�<�h�O��_u7bBt���SbF/�o��|V]SHކ�J�������34&#!"3!26#!!2#!"&=463!5!"&5463!2
��

@
�^B� `��`� B^^B@B^ �

�@
�@B^�@@�^B�B^^����>3!"&546)2+6'.'.67>76%&��F8$.39_��0DD�40DD0���+*M7{L *="#
U<-M93#�D�@U8v�k�_Y	�[�hD00DD0��0D�ce-JF1BD����N&)@
/1 d��y%F��#"'&'&'&'&763276?6#"/#"/&54?'&763276"&'&'&5#&763567632#"'&7632654'&#"32>54'&#"'.5463!2#!3>7632#"'&'&#"'&767632yq������oq>*432fb������a
$�B?
	>B
BB
AA�.-QP���PR+	42
%<ci���ђ:6&h�HGhkG@n�`��I���Ȍ5
!m��(|.mzy�PQ-.	
	je����	
�����q>@@?pp�gVZE|fb6887a
%RB?
=B
ABBAJvniQP\\PRh!cDS�`gΒ��23�geFGPHX�cCI��_ƍ��5"	
�n�*T.\PQip�
[*81
/
9@:��>t�%6#".'.>%6%&7>'.#*.'&676./&'.54>754'&#"%4>327676=
>���vwd"

�l����"3	/!,+	j2.|��%&
�(N&w���h>8X}x�c2"W<4<��,Z~�fd�aA�`FBIT;hmA<7QC1>[u])		u1�V(�k1S)
-�	0�B2*�%M;W(0S�[T�]I)	A 5%R7<vlR12I]O"��V/,b-8�/_��#3CGk2#!"&546;546;2!546;2%;2654&+";2654&+"!32++"&=#"&=46;546;24LL4��4LL4�^B@B^�^B@B^�@@�@@�����@��@L4�4LL44L`B^^B``B^^B``�� �� ��@@��@���#3W#!"&=463!2!!%4&+";26%4&+";26%#!"&546;546;2!546;232���@�����@@@@�L4��4LL4�^B@B^�^B@B^�4L�@@��� �� ��N�4LL44L`B^^B``B^^B`L��#'7Gk%"/"/&4?'&4?62762!!%4&+";26%4&+";26%#!"&546;546;2!546;232W.	
��
	.		��		.	
��
	.		��	� ����@@@@�L4��4LL4�^B@B^�^B@B^�4L�.		��		.	
��
	.		��		.	
��
��� �� ��N�4LL44L`B^^B``B^^B`L��(8\	"'&4?6262!!%4&+";26%4&+";26%#!"&546;546;2!546;232�

��		.	
��
	.	�`����@@@@�L4��4LL4�^B@B^�^B@B^�4L<�		 
	.		��		.	�:� �� ��N�4LL44L`B^^B``B^^B`L�2632632#!"&5463�&&&&��&&&���&���&��&&�&�#27+"&5  %264&#"26546��>&�&T�,��X�������q&&�1��X��,�LΒw�%��%;#!"&5463!546;2!2!+"&52#!"/&4?63!5!�

�(��&&@&�&(��&�&@&&��(�

�(�

�&&@&&@��&&�&�&�

�����#''%#"'&54676%6%%�������
�hh �@�` ���!�� ���!� ��
��
��
�
������
�#52#"&5476!2#"&5476!2#"'&546
� 
��
� 
���
�
�@�
�
�@�
��
�@

�
� 84&"2$4&"2$4&"2#"'&'&7>7.54$ �KjKKj�KjKKj�KjKKj��d�ne���4"%!������KjKKjKKjKKjKKjKKjK.���٫�8
!%00C'Z���'���.W"&462"&462"&462 6?32$6&#"'#"&'5&6&>7>7&54>$ �KjKKj�KjKKj�KjKKj�h��я�W.�{+9E=�c��Q�d�FK��1A
0)����LlL��jKKjKKjKKjKKjKKjK���p�J2`[Q?l&�����٫�C58.H(Y���ee���	�

			���Y'����w��(�����O��'��R���@$#"&#"'>7676327676#"�
�����b,XHUmM�.�U_t,7A3ge
z9@xS���a�Q�BLb�(�	����V���U�����
!!!�=�����=���w)��������AU!!77'7'#'#274.#"#32!5'.>537#"76=4>5'.465!��KkkK_5 5�� �#BH1��`L

I���&�v6��SF���!Sr99rS!``� /7K%s}H���XV
��P��V	e��		V�d/9Q[ $547.546326%>>32"&5%632264&#"64'&""&'&"2>&2654&#";2���P���3>tSU<�)tqH+>XX|W��h,�:USt��W|XX>=X*
)���)
+�^X^�|WX=>X�:_.2������//a:Ru?�
	
Q%-W|XW>J�(	�=u��>XX|WX�`

*((*


+2		2�X>=XW|E��03>$32!>7'&'&7!6./EU����noh��i����I\�������0<{ >ORD��ƚ�~�˕V�ƻ��o�R C3��7J6I`��Tb<�^M~M8O����	�	
5!#!"&!5!!52!5463	^B�@B^���`B^�^B `��B^^"�����^B��B^��0;%'#".54>327&$#"32$	!"$&6$3 ##320�J�����U��n��L�n��ʡ���~~�&��q�@�t�K�����L��}�'`� -
-�ox����nǑUyl}��~������~�F����ڎ�LlL��t�`(88( ��	7!'	!���\W�������\���d;����tZ�`_��O��;���}54+";2%54+";2!4&"!4;234;2354;2354>3&546263232632#"&#"26354;2354;2354;2�````��p�p��`�`�`� !,! -&M<FI(2�`�`�`�����@PppP���pppppp�#  #
�
�pppp��p	�j#"'&=!;5463!2#!"&=#".'.#!#"&463232>7>;>32#"&'#"!546���	��%. `@��` :,.',-���Xj��jX�h-,'.,: kb>PppP>bk .%Z �&�
�:k%$> $`��`6&L')59I"Tl�ԖlT"I95)'L&69Gp�pG9$ >$%k:��!+32&#!332 $&6$ ~O8��8���O�����������LlL�>pN
�����
i������LlL����	'':Ma4&'#"'.7654.#""'&#"3!267#!"&54676$32#"'.76'&>$#"'.7654'&676mD5)
z�{��6lP,@Kij��jOo�Ɏ���ȕ>>��[t��a)GG4?a�)
ll
>�;_-/
9GH{�z�yN@,K�ԕoN��繁������y��!
?hh>$
�D��"
>��â?$��	n"&5462'#".54>22654.'&'.54>32#"#*.5./"�~��~�s�!��m�{b6#	-SjR,l'(s�-6^]It�g))[��zxȁZ&+6,4$.X%%Dc*
&D~WL}]I0"

YYZ��vJ@N*CVTR3/A3$#/;'"/fR-,&2-"
7Zr�^N��a94Rji3.I+

&6W6>N%&60;96@7F6I3���+4&#!"3!26%4&#!"3!26 $$ ��������^����a�a`@��@����^����a�a�����'7  $ >. %"&546;2#!"&546;2#/�a����^�����(�����������������^����a�a����(������N@��@�����4&#!"3!26 $$ @��@����^����a�a`@����^����a�a�����'  $ >. 7"&5463!2#/�a����^�����(��������n@����^����a�a����(������N@���%=%#!"'&7!>3!26=!26=!2%"&54&""&546 �#��#]V�TV$KjK�KjK$��&4&�Ԗ&4&�>��9G��!�5KK5��5KK5�!��&&j��j�&&����#/;Im2+#!"&'#"&463>'.3%4&"26%4&"26%6.326#>;463!232#.+#!"&5#"�5KK5sH.�.Hs5KK5e# )4# %�&4&&4&�&4&&4&` #4) #%�~]�e�Z�&�&�Z�e�]E-�&��&�-EKjK�j.<<.�KjK��)�#)�`"@�&&�`&&�&&�`&&�)#�`)"�d�Xo&&oX�G�,8&&8!����O##!!2#!+"'&7#+"'&7!"'&?63!!"'&?63!6;236;2!2�@�@�8��@7

8��Q�
	N�Q�
	N��
	8G@��

8GQ�
	N�Q�
	N7
	�������8��8��H��H��k��%		".>2I�������2�0�]@��]��@o�����o@@o�����o㔕����a�22���]����]�p�^���|11|�9�9�|11|�(��%7'7'	'	7T���� d���lt��l)q��n�������luul�������)1$4&"24&"2 &6 +"&5476;2 &6 LhLLh�LLhLLhL����>�
�� �&
  �&�`����>�hLLhLLhLLhL�����>����&�&�����>��G��
	.7)1!62	1!62h��e�������2�20e���2�2>�	v
+4�	[��d����+
���d� �135#5&'72!5!#"&'"'#"$547&54$ ���Eh���`X����(����cY���z�:L:�z���Yc��������\$_K`Pa}��f��iXXiޝf���a���	���(+.>#5#5!5!5!54&+'#"3!267!7!#!"&5463!2����U�`��`' ����� �����j��j�V>�(>VV>�>Vq����������������(^����(>VV>�>VV�=&'&'&'&76'&'&.' #.�h8��"$Y
''>eX5,	,Pts�K�25M�RLqS;:.K'�5�R

Ch���h�����R�t(+e�^TT���u B"$:2�~<�����2�Hp����wTT�� V�/7GWg. %&32?673327>/.'676$4&"2 $&6$   $6& $&6$ d-����-�m	
	,6*6,	
	m���KjKKj�o������oo���K����zz�8�zz�Ȏ������LlL�U4>>4-.��YG0
)�xx�)
0GYޞ.�jKKjKq���oo��oo�lz�����zz�8�0������LlL��D��/7H#"'.7'654&#"'67'.6?>%"&46227#".547|D,=),9#�7��[͑�f�x���!X: �D�$+�s)�hh�i��jZ������t�<��F/��*8C,�q؜�e���\�r,W�BX���/C2��h�hh���=�t������Xm�����>NZ+"&=46;2+"&=4>7>54&#"#"/.7632  >. $$ p��=+& �35,W48'3	l
z����ff���ff�����^����a�aP���2P: D#;$#
$*;?R
��Cf���ff�����^����a�a��'�Y	>O`"&5462&'.'.76.5632.'#&'.'&6?65��\\�[�<C��z�C
25�U#
.�ZK ��m+[$/#>(	|�	r���[A@[[@A�#2#�
����7�*
<Y���$
+}"(��
�q�87] F 	_��1)
��	�	#1Ke34&+326+"&=!#!"&763!2#!"&5463!2#>?4.'3#>?4.'3#>?4.'3��Xe`64[l�����7
��
,	L;�����=+3&98&+)>�>+3&98&+)>�=+3&88&+)>	�Wj�|r�>Q$��~���d$kaw+-wi[[\�;/xgY$kaw+-wi[[\�;/xgY$kaw+-wi[[\�;/xgY���J\m�4.'.'&#"#"'.'&47>7632327>7>54&'&#"327>"&47654'&462"'&476'&462"'&47>&'&462i$		$^"

%%

"^$		$W "@9O?1&&18?t@" W�&%%&4KK�6pp&4���6ZaaZ&4mttm�^x	-���-	x^=/U7Ck���kz'[$=�&5%54'4&K�K�4r<r4&��X��4[��[4&m����m��'/7?GOW_gow����"264$"264"264"264$"264"264$"264"264"&462"&462"&462"&462"&462"&462"&462"&462"&462"&462"&462"&462�^^�^��^^�^^�^^�^��^^�^��^^�^���^^�^��^^�^^�^^�^� p�pp�pp�pp��pp�pp�pp�pp��pp�pp�pp�pp��pp�pp�pp�pp��pp�pp�pp�pp��pp�pp�pp�pp�`^�^^�^^�^^�^^�^^��^^�^^�^^�^^�^^�^^�^^�^^�^^�^^���pp�pp�pp�p��pp�pp�pp�p��pp�p���pp�p��pp�p���pp�p��pp�pp�pp�p��pp�pp�pp�p	��LTi{�"&4626"&462$"&462#"&4632654>7>54 "&54>2"&462%"&54&#""&546 %#"&'&'.7>#"'&'.7>�&4&&4�&4&&4SZ��&4&&4�4$#&�&&j�3$"('$������&4&[���՛[��&4&&4F&4&�]\�&4&�$��
	!D�4�%	,\�4�4&&4&�4&&4&-�Z�4&&4&;cX/)#&>B)��&4&�j9aU0'.4a7����&&u՛[[���4&&4&@&&]��]&&��Ώ0
�u4��0
)�4���#g�&'.#"32676%4/&#"326'&#"2632#2+&'%#"'&6?676676632%#"'&6767#"&'&6767#"'.7>327"#"&'&6763"'.7>;7632;>%5K$
"0%>s$
"0%>;;>%5K�VL#>H30
\�($$(�\���(�є�yO2F/{�(?0(TK.5sg$��є�y#-F/{�$70(TK.5sg$L#>H30
\�($$(�\#�(@5"'K58!'"5�8!'"55"'K#dS$K		K$Sdx#@1
w�d>N;ET0((?
-
2K|��1
w�����d#N;ET0$(?
-
2K$#dS$K		K$Sdx�DN\2654& 265462"2654 #"32654>7>54."/&47&'?62 &4&���&4&���h�՛[&4&r$'("$3�j&&��&#$4[����"�@��GB�[�
"�&&��Β&&]���[��u&&����7a4.'0Ua9j�&4&�)B>&#)/Xc;u՛����"�"
�G�i[����Xh#"&54676324&'&#"'>54#"32#"54>54'.#"32>7>767632326#!"&5463!2b
)
:4FD�N

[�1�,^�J��K-*E#9gWR�Yvm0O	��w�@w��w�w��C2�2c@X�&!�9{M�A���_��"S4b// DR"Xlj�PY<	�@w��w�w��%���e4.#"32>7676#'.#"#"&54>3232>754&*#"&54>763 >32�
''il$E/
@�P@��
^��`��'W6&�!.. ! -P5+


�E{�n46vLe�Vz�:���,SN/
M5M[��
	]$�[��^��5�iC'2H&!(?]v`*	��l�	��b��$9>
���=R�2
#"&5467%!"&7>3-.7>;%.7>322326/.76/.'&6766/&/&#"&676	&676&6766/&672? �=1�(H/ ��	'96&�@)9<'���)29%
�&06#���#��$� J� �07j)�5@�"*3%�"!M
��%#K�"%N�e8)'8_�(9�.<�c +8 8(%6 <)'4@@)#-<^
?%$-`%.
}Q!&�}%&N�-l���IJ�;6>/�=*�%8!Q ���#P"�\Q#N&�a��)<9�bR]mp%"'.'&54>76%&54763263 #"/7#"'#"&/%$%322654&#"%'OV�9
�nt
|\d
ϓ[��nt
|@�D:)��	
;9�8'+|�j�," �41����CH^�nVz(�~R	�9�\'	�r�

@����L��@�
	@�w4�6�HI(+�C
,��55,��
f[op@�\j�;(zV~����i/5O#"'&54>32&#" 654'67'"'>54''&'"'6767&546767>7���蒓��`V BM���R� B9)̟�!SH-77I�Xm�SM�H*�k#".o;^J q�ן���ד��>@�����YM
$bK���d ��ү[E"����;���Kx%^�6;%T,U:i�m=Mk���).DT4'"&5463267&#" 6;64'.'4'>732676%#!"&5463!2),�蛜s5-<A���4ϲ
2W9
�&P:\�3)SEPJ��D4:3NI�w�@w��w�w��NE	2@u��us�+,�����/?x�sa�tmP�'�)fHVEA(%dA4w&4J5*�@w��w�w�����O[4'.'&54>54&#"#"'654'.#"#"&#"3263232>3232>76 $$ �Cf'/'%($�U�L
(
#'/'@��3#@,G)+H+@#3
����^����a�a�X@_O#NW�#O_�.*	##(��^����a�a����q�[632632#"&#"#".'&#"#".'&54767>7654.54632327&547>P��9	B6?K?%�O4�T% >6>Z64Y=6>%S�4N�$?L?4B	@���{:y/�$ ,'R�!F!8%
#)(()#%:!F �Q'+%�0z:�z���O_4'.'&54>54&#"#"'654'.#"#"&#"3263232>3232>76#!"&5463!2Cf'.'%($�V�M
)
#'.'@��
3
#A,G)+H+A#
4
��w�@w��w�w��XA?4N$NW�&M&L�/*
##	+�@w��w�w����	O$>?>762'&#"./454327327>7>	EpB5
3FAP/h����\�/NG�S�L�	� ���R�P*��m�95F84f&3Ga4B|wB.\FI*/�.?&,��5~K %
&��Y."7n<	"-I.�M`{�ARwJ!�FX^dj''''"'7&'7&'7&'7&547'67'67'67'63277774$#"32$			*��'ֱ,?�g=OO&L&NJBg�;1��'����'ֱ.=�gCIM
$'&&NJBg�=.��%�����w؝\\��w�
�I�o�o��<�<���-NIDg�=/��%����(ײ+A�hEHO*"#*OICh�=/��'����(ֲ/=�h>ON.��]��xwڝ]��������7��e��[���@�����)6!!"3#"&546%3567654'3!67!4&'7S��gn�y]K-�����#75LSl>�9���V��%�cPe}&H�n��_�HȌ����=UoLQ1!��4564���7U�C"�
�!-9[nx��"&46254&"326754&"326754&"26754&"26#".547632632626326'4#"#"54732764&"264.#"327632>#"'"'#"'#"&5#"'67&'327&'&54>3267>7>7>32632632T"8""8�)<())�(<)))�)<))<)�)<))<)T�د{ՐRh�x=8 78 n 81
p��H_6�S��oc
�F@b@?d?uK�bM�70[f5Y$35KUC<:��[;+8 n 87 8/8Zlv]64qE 'YK�0-AlB;
W��#;WS9
&�(#-7Z�://:/�Tr++r,,r++r,,r++r,,r++r,,ʠ�g��xXV�ע��e9222222^�K�Vv���F0�2OO23OO��`�lF;�mhj84D�ro��B@�r+@222222C0DP`.�r8h9��~T4.&o�@9��1P���%14'!3#"&46327&#"326%35#5##33 $$ ����}Pc��c]<hl���ࠥ�Ymmnnnn���^����a�aw!�LY�Ə;ed����wnnnnnv�^����a�a��%�'#"$#"#.5462632327>321��I��U�Π?L���L?��cc�4MX�&��04;0��XpD[��[DpD,)&&�Q	9V\�26&".'&'&6?.#"#26327677>'32>&3#'&+"?626&"#!'.'!"&5463!>;26;2!2�P  P 	
92#.}S�P9:�:%L\B�� )spN/9oJ5 
!+D�`]�Bg�Y9�+�,�9%
Pk4P  P &�NnF!_7*}B<�{o0��&&�B;*<@$ucRRc�#@16#37c&�@@@
J"@*4�^`E�D�B�����o/8927
*@O�LC�!T!32�3X$�BJ@@@��&AS
0C59"'D/&�&D488$5A&�%O#!"&547>7>2$7>/.".'&'&2>^B�@B^>FFz�n_0P:P2\n�zFF>��R&�p^1P:P1^��&R
P2NMJMQ0Rr�.B^^B�	7:5]yPH!%%"FPy]5:7	���=4�QH!%%!H�t4=�<"-/ ?�1Pp+".'.'.?>;2>7$76&'&%.+"3!26#!"&54767>;2�'
+�~'*OJ%%JN,&x�'%^�M,EE,M7�ZE[��P*FF*P��:5
�
�^B�@B^){�$.MK%%KM.$+��X)o3"�a  22!]�4	I�>"">�,�&�S8J�B##B��12�`
��`B^^B�8&ra#11#$��R&��"&.2v%/%''%/%7%7'%7'/#&5'&&?&'&?&'&7%27674?6J�"�����0�<=���_gNU�?D��f���u�Y����G�b���7=^H^�`	�=v~yT������3����G���D��P�O	4F��ѭ����q������i_w\ހ�!1u�S���%V_-d�
���1=U{J8n~�r����'U4.#".'"3!264&"26+#!"&5463!232+32+32�0P373/./373P0T=@=T��֙�֙|`^B�@B^^B�B^`````*9deG-!

!-Ged9Iaa�l��lk���O��B^^B�B^^B�������	+Yi"&54622#!"&54>;2>+32+32+#!"&5463!2324&#!"3!26�֙�֙0.I/ OB��BO	-Q52-)&)-2�
``

``

`^B�@B^^B�B^`
�
�@

�
|k��kl����"=IYL)CggC0[jM4				
�
�
�
�
�B^^B�B^^B�
�@�

�@
���!1AQu4.#".'"3!24&"254&#!"3!2654&#!"3!2654&#!"3!26#!54&+"!54&+"!"&5463!2)P90,***,09P)J66S�����"��@��8��@^B��@�@��B^^B�B^U�kc9		9ck�U?�������@@88@@N�@B^````^B�B^^���!1AQu�#!"&4>32>72"&462#!"&=463!25#!"&=463!25#!"&=463!24&#!"3!546;2!546;2!26#!"&5463!2J6�6J)P90,***,09P)������"��@��8��@�
�@

`@@`
�^B�@B^^B�B^ՀUU�kc9		9c�������`@@�88�@@�2�

�@
````�@B^^B�B^^�(%.'"&' $&  #"$&6$ ��wC�ιCw�jJ~J�����>��������LlL�ś�JSSJ͛����>����6������LlL���$,  $&6654&$ 3 72&&  �lL������m�z�����z�B�l������>�������KlL�G���zz���G���>�����'7#!"&54>7&54>2  62654' '3�/U]B,ȍ����,B]U/OQ��н�Q������>�+X}��������}X�0b�Ӄ��ۚ�Ӆb0}�h��QQ��h�����>��f����f��#=#!"&4>3272"&462!3!26#!"&5463!;26=!2J6�6J)Q8P�P8Q)��������
�
�^B�@B^^B`�`B^V�VV�ld9KK9d��������`��
�@B^^B�B^``^���+;K[eu4.#"'"3!264&"254&#!"3!2654&#!"3!26%54&+";2654&#!"3!26!54&#!"!#!"&5463!2�"D/@�@/D"?,�,?�p�pp�p�@�����@����@����@�^B�@B^^B�B^D6]W2@@2W]67MM��pp�p��@@@@@@@@n`�@B^^B�B^^���+;K[eu#!"&54>3272"&462#!"&=463!2%#!"&=463!2+"&=46;25#!"&=463!2!3!26#!"&5463!2�?,�V,?"D/@�@/D"�p�pp�p�@�����@����@���
�
�^B�@B^^B�B^D7MM76]W2@@2W]֠pp�p��@@�@@@@�@@��`��
�@B^^B�B^^��A#"327.#"'63263#".'#"$&546$32326�������J9"65I).!1i���CC�u
+I�\Gw\B!al���݇���y�ǙV��/]:=B�>9�����+<F+a[le���Pn[A&JR7t�)��+�tH�������kFIK�e	� .��#"'&'>32%#!"&5463!2#"&54>54'&#"#"54654'.#"#"'.54>54'&'&543232654&432#"&54>764&'&'.54632� ?c��'p& ?b1w{2V	?#��&#9&�CY'&.&#+B

: &65&*2w�1GF1)2<)<'

(
BH=ӊ:NT :O	�)4:i F~b`e!}�U3i?fR����UX|'&'&I�c&Q
	*2U.L6*/
L:90%>..>%b>++�z7ymlw45)0	33J@0!!TFL����� P]=GS�-��kwm	!����*�(%6&692? $&6$ ��	' ����al�@l�������LlL���,&��EC
���h�$�������LlL���
/37;%"&546734&'4&" 67 54746 #5#5#5�p�pF:�:F�D<p�p<D�
����������
���������PppP<d��ud<M�-PppP�-�M����������Dž����9���������
/37;%"&546734&'4&" 67 54746 #5#5#5�p�pF:�:F�D<p�p<D�
����������
���������PppP<d��ud<M�-PppP�-�M����������Dž����9���������
/37;%"&546734&'4&" 67 54746 #5#5#5�p�pF:�:F�D<p�p<D�
����������
���������PppP<d��ud<M�-PppP�-�M����������Dž����9���������
/37;%"&5467534&'4&" 67 54746 #5#5#5�p�pF:�:F�D<p�p<D�
����������
���������PppP<d��d<M�-PppP�-�M����������Dž����9���������	+/37%"&54624&'4&" 67 54746 #5#5#5�p�pp�p�D<p�p<D�
����������
���������PppPOqqOM�-PppP�-�M����������Dž����9����������&.6>FNV^fnv~����"/&4?.7&#"!4>3267622"&4"&46262"&42"&4462"$2"&42"&4"&46262"&4"&46262"&42"&4$2"&42"&42"&4�

��

R

,H8Jfj��Q��hj�G^�R,

!4&&4&Z4&&4&�4&&4&��4&&4&&4&&44&&4&��4&&4&Z4&&4&�4&&4&��4&&4&�4&&4&��4&&4&&4&&4&Z4&&4&Z4&&4&

��

R

,[�cG�j�h��QRJ'A,

��&4&&4Z&4&&4Z&4&&4Z&4&&444&&4&�&4&&4Z&4&&4Z&4&&4Z&4&&4�&4&&4Z&4&&4Z&4&&4&&4&&4Z&4&&4Z&4&&4�%-5=EM}���������+"&=#!"'+"&=&="&4626"&462&"&462"&462&"&462&"&462#!"&=46;4632676/&?.7&#"!2"&462&"&462&"&462"&462&"&462&"&462"&462&"&462"&462��@?A�A?
@
�@R.�..R�@`�jlL.h)*��*$	%35K���..�..�.����u�vn�u���....��@@�j�N *��*.t2#K5���..R..R.��
@Hq '&'&54 &7676767654$'.766$76"&462&'&'&7>54.'.7>76�����������ȵ|�_ğ��yv���/ۃ�⃺����k]
:Bu�q��
CA
_k�ނ���XVo�bZZb�nW��|V	0 	Q2��-�
l��}���O		/	:�1���z	
q��%������z�G
4(

6�Ro�aą\�<

)4	J�}�������%!!#!"&5463!2�^B�@B^^B�B^�`�@B^^B�B^^���%#!"&=463!2^B�@B^^B�B^�B^^B�B^^�&))!32#!#!"&5463!463!2��`B^^B��^B�@B^^B`^B�B^�^B�@B^��B^^B�B^`B^^���#3%764/764/&"'&"2?2#!"&5463!2��

��

�

��

�

��

�

��
s^B�@B^^B�B^ג

��

�

��

�

��

�

��
�@B^^B�B^^���#'7"/"/&4?'&4?62762!!%#!"&5463!2�

��

�

��

�

��

�

��
�
�^B�@B^^B�B^��

��

�

��

�

��

�

��
��`�@B^^B�B^^�	! $&6$ .2�r��`�������LlL�f4��������LlL���#.C��&>"'&4762"/&4?62'"'&4762%'.>6.'.>6'>/>76&'&.'&7&'">?4'.677>7.>37654'&'67>776 $&6$ (4�Z�##
&##
&y�"�6&.JM@&� "(XE*$+8
jT<l$3-V<
2'.


-1
%#e"!Z�
+*)H	 8
(j

	#*
-ƷVv/kh?'��������MlM�$($�R#

&
"
#'#vZ@+&MbV$
�
G7
--)

R2T�
313dJ6@8lr2_�5m/."�G:=	)%5f0gt*2)?;CB66&, �	`48]USy������LlL���G6?>?3#'.'&!3!2>?3.'#!57>7'./5!27#'.#!"g�%%D-!gg<6W��WZe#1=/2*]Y3��-,����C1/Dx���] VF��I�q-H�����D2��NK'>*�%�R=f
07���=.
fD�]\|yu���,0>Seu#2#"'&5<>323#3#&'#334'."#"+236'&54.#"5#37326#!"&5463!2�		<	��zz�j��k-L+� )[$�8=".un/2 �^B�@B^^B�B^�5cy	
�
��(�ݔI�(8��?C�(3�>�� #"��($=�@B^^B�B^^0�K�S�&'.'&'./674&$#">&>?>'76'# "&#./.'7676767>76$w
.~ku�BR�]� T%z+",�|�ޟ���j<���)(!(	~ˣzF8"{���%%#5����)��}''�x��JF��0"H[$%��EJ#%
.Gk29(B13"?�@S)�5" �#9����dm�W"��;L�65R�A0@T.���$�}i`:f3A%%
BM<$q�:)BD	aa%`�]A&c|	�M��s!
Z
2}i[F&���**
< ��ʣsc"J<&Ns�F%���0@Wm6&'.6$.7>7$76".4>2.,&>6'"'&7>=GV:�e#:$?+%

q4����g
&3h�T`Zt�Q��м�QQ��м�pA������P1L������K!:<��}҈`d��l��b�,�9'


%%($!
���a3���)W)x
�������
о�QQ��о�QQ���cQ����ǡ-�җe)U�s2����XD\���ϼ�Yd����/?O_o���#"=#"=4;543#"=#"=4;543#"=#"=4;543#"=#"=4;543#"=#"=4;543%#!"&5463!2++532325++532325++532325++532325++53232�p00pp00pp00pp00pp00�8(��(88(@(80pp00pp00pp00pp00pp0� � � � � ��@(88(�(88� �� �� �� �� �/�Q�/&'%&/"&=.6?&?&'&6?'.>-#".6?'.>'&6'.>54627>%>76#"'%
%6��

2�7
2G
f���!)p&4&p)!��f
G2
7�2

��	*6���	"��
4�7
2G
f�!)p&4&p)!�f
G2
7�2

��"	���6*	�!k
3

j�&3
%,����*��&&ր*�9���%
3&�j

3
k!./!>��>$,*!k
3.j�&3
%�Ԝ9�*��&&ր*�ǜ,%
3&�j

3
k!*,$>��>!/.�&6.'&$	&76$76$�P��utۥiP��u��G��xy
��Զ�[xy
�-���_v١eN��uv١e	��=��u�ʦ�����[t7��8�X�
&6##'7-'%'&$  $6 $&6$ ��3��1�N��E0�����g��R�=|�����||�">"��������LlL����^��v!1f2i��Ђwg�fZQ�Q^>"�||�����||�w������LlL��&�Z�Xblw��������.'&>'&'&".'.'&&'&'&7>767>67>7626&'&>&'&>'.7>.676'&'&'&'.67.>7>6&'&676&'&676.676&'&>&'&676'.>6/4-LJg-$	6)j2%+QF)�b3FSP21DK2�AW")")�$??8A&A�E5lZm��=g�G2Sw*&>$5jD ���GH�yX/4F �r	1
	1�"�"!�l=6>��	6
,5./��'e



.*�|�Ed!
u&�&%&��	&��5d	
���))66@�C&8B@q��L?P^7	G-hI[q��:<�rS	U~97A_�IR`gp1	1	�;"("j?>"�T�6
,6 
&/`���LwQ'�	
��A	^	�	�	"�		$&	_	��	y		�	*�	<Copyright Dave Gandy 2016. All rights reserved.Copyright Dave Gandy 2016. All rights reserved.FontAwesomeFontAwesomeRegularRegularFONTLAB:OTFEXPORTFONTLAB:OTFEXPORTFontAwesomeFontAwesomeVersion 4.7.0 2016Version 4.7.0 2016FontAwesomeFontAwesomePlease refer to the Copyright section for the font trademark attribution notices.Please refer to the Copyright section for the font trademark attribution notices.Fort AwesomeFort AwesomeDave GandyDave Gandyhttp://fontawesome.iohttp://fontawesome.iohttp://fontawesome.io/license/http://fontawesome.io/license/����������	

 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`ab�
cdefghijklmnopqrstuvwxyz{|}~��������������������������������������������������������������������������������������������������������������������������������"	

 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRS�TUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~��������������������������������������������������������������������������������������������������������������������������������	

 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~���������������������������������������������������glassmusicsearchenvelopeheartstar
star_emptyuserfilmth_largethth_listokremovezoom_inzoom_outoffsignalcogtrashhomefile_alttimeroaddownload_altdownloaduploadinboxplay_circlerepeatrefreshlist_altlockflag
headphones
volume_offvolume_down	volume_upqrcodebarcodetagtagsbookbookmarkprintcamerafontbolditalictext_height
text_width
align_leftalign_centeralign_right
align_justifylistindent_leftindent_rightfacetime_videopicturepencil
map_markeradjusttinteditsharecheckmove
step_backward
fast_backwardbackwardplaypausestopforwardfast_forwardstep_forwardejectchevron_left
chevron_right	plus_sign
minus_signremove_signok_sign
question_sign	info_sign
screenshot
remove_circle	ok_circle
ban_circle
arrow_leftarrow_rightarrow_up
arrow_down	share_altresize_fullresize_smallexclamation_signgiftleaffireeye_open	eye_closewarning_signplanecalendarrandomcommentmagnet
chevron_upchevron_downretweet
shopping_cartfolder_closefolder_openresize_verticalresize_horizontal	bar_charttwitter_sign
facebook_signcamera_retrokeycogscomments
thumbs_up_altthumbs_down_alt	star_halfheart_emptysignout
linkedin_signpushpin
external_linksignintrophygithub_sign
upload_altlemonphonecheck_emptybookmark_empty
phone_signtwitterfacebookgithubunlockcredit_cardrsshddbullhornbellcertificate
hand_right	hand_lefthand_up	hand_downcircle_arrow_leftcircle_arrow_rightcircle_arrow_upcircle_arrow_downglobewrenchtasksfilter	briefcase
fullscreengrouplinkcloudbeakercutcopy
paper_clipsave
sign_blankreorderulol
strikethrough	underlinetablemagictruck	pinterestpinterest_signgoogle_plus_signgoogle_plusmoney
caret_downcaret_up
caret_leftcaret_rightcolumnssort	sort_downsort_upenvelope_altlinkedinundolegal	dashboardcomment_altcomments_altboltsitemapumbrellapaste
light_bulbexchangecloud_downloadcloud_uploaduser_mdstethoscopesuitcasebell_altcoffeefood
file_text_altbuildinghospital	ambulancemedkitfighter_jetbeerh_signf0fedouble_angle_leftdouble_angle_rightdouble_angle_updouble_angle_down
angle_leftangle_rightangle_up
angle_downdesktoplaptoptabletmobile_phonecircle_blank
quote_leftquote_rightspinnercirclereply
github_altfolder_close_altfolder_open_alt
expand_altcollapse_altsmilefrownmehgamepadkeyboardflag_altflag_checkeredterminalcode	reply_allstar_half_emptylocation_arrowcrop	code_forkunlink_279exclamationsuperscript	subscript_283puzzle_piece
microphonemicrophone_offshieldcalendar_emptyfire_extinguisherrocketmaxcdnchevron_sign_leftchevron_sign_rightchevron_sign_upchevron_sign_downhtml5css3anchor
unlock_altbullseyeellipsis_horizontalellipsis_vertical_303	play_signticketminus_sign_altcheck_minuslevel_up
level_down
check_sign	edit_sign_312
share_signcompasscollapsecollapse_top_317eurgbpusdinrjpyrubkrwbtcfile	file_textsort_by_alphabet_329sort_by_attributessort_by_attributes_alt
sort_by_ordersort_by_order_alt_334_335youtube_signyoutubexing	xing_signyoutube_playdropbox
stackexchange	instagramflickradnf171bitbucket_signtumblrtumblr_signlong_arrow_down
long_arrow_uplong_arrow_leftlong_arrow_rightwindowsandroidlinuxdribbleskype
foursquaretrellofemalemalegittipsun_366archivebugvkweiborenren_372stack_exchange_374arrow_circle_alt_left_376dot_circle_alt_378vimeo_square_380
plus_square_o_382_383_384_385_386_387_388_389uniF1A0f1a1_392_393f1a4_395_396_397_398_399_400f1ab_402_403_404uniF1B1_406_407_408_409_410_411_412_413_414_415_416_417_418_419uniF1C0uniF1C1_422_423_424_425_426_427_428_429_430_431_432_433_434uniF1D0uniF1D1uniF1D2_438_439uniF1D5uniF1D6uniF1D7_443_444_445_446_447_448_449uniF1E0_451_452_453_454_455_456_457_458_459_460_461_462_463_464uniF1F0_466_467f1f3_469_470_471_472_473_474_475_476f1fc_478_479_480_481_482_483_484_485_486_487_488_489_490_491_492_493_494f210_496f212_498_499_500_501_502_503_504_505_506_507_508_509venus_511_512_513_514_515_516_517_518_519_520_521_522_523_524_525_526_527_528_529_530_531_532_533_534_535_536_537_538_539_540_541_542_543_544_545_546_547_548_549_550_551_552_553_554_555_556_557_558_559_560_561_562_563_564_565_566_567_568_569f260f261_572f263_574_575_576_577_578_579_580_581_582_583_584_585_586_587_588_589_590_591_592_593_594_595_596_597_598f27euniF280uniF281_602_603_604uniF285uniF286_607_608_609_610_611_612_613_614_615_616_617_618_619_620_621_622_623_624_625_626_627_628_629uniF2A0uniF2A1uniF2A2uniF2A3uniF2A4uniF2A5uniF2A6uniF2A7uniF2A8uniF2A9uniF2AAuniF2ABuniF2ACuniF2ADuniF2AEuniF2B0uniF2B1uniF2B2uniF2B3uniF2B4uniF2B5uniF2B6uniF2B7uniF2B8uniF2B9uniF2BAuniF2BBuniF2BCuniF2BDuniF2BEuniF2C0uniF2C1uniF2C2uniF2C3uniF2C4uniF2C5uniF2C6uniF2C7uniF2C8uniF2C9uniF2CAuniF2CBuniF2CCuniF2CDuniF2CEuniF2D0uniF2D1uniF2D2uniF2D3uniF2D4uniF2D5uniF2D6uniF2D7uniF2D8uniF2D9uniF2DAuniF2DBuniF2DCuniF2DDuniF2DEuniF2E0uniF2E1uniF2E2uniF2E3uniF2E4uniF2E5uniF2E6uniF2E7_698uniF2E9uniF2EAuniF2EBuniF2ECuniF2EDuniF2EE����=���O<0�1h�assets/lib/font-awesome/fonts/fontawesome-webfont.svg000064400001543733151327220410017100 0ustar00<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
<svg>
<metadata>
Created by FontForge 20120731 at Mon Oct 24 17:37:40 2016
 By ,,,
Copyright Dave Gandy 2016. All rights reserved.
</metadata>
<defs>
<font id="FontAwesome" horiz-adv-x="1536" >
  <font-face 
    font-family="FontAwesome"
    font-weight="400"
    font-stretch="normal"
    units-per-em="1792"
    panose-1="0 0 0 0 0 0 0 0 0 0"
    ascent="1536"
    descent="-256"
    bbox="-1.02083 -256.962 2304.6 1537.02"
    underline-thickness="0"
    underline-position="0"
    unicode-range="U+0020-F500"
  />
<missing-glyph horiz-adv-x="896" 
d="M224 112h448v1312h-448v-1312zM112 0v1536h672v-1536h-672z" />
    <glyph glyph-name=".notdef" horiz-adv-x="896" 
d="M224 112h448v1312h-448v-1312zM112 0v1536h672v-1536h-672z" />
    <glyph glyph-name=".null" horiz-adv-x="0" 
 />
    <glyph glyph-name="nonmarkingreturn" horiz-adv-x="597" 
 />
    <glyph glyph-name="space" unicode=" " horiz-adv-x="448" 
 />
    <glyph glyph-name="dieresis" unicode="&#xa8;" horiz-adv-x="1792" 
 />
    <glyph glyph-name="copyright" unicode="&#xa9;" horiz-adv-x="1792" 
 />
    <glyph glyph-name="registered" unicode="&#xae;" horiz-adv-x="1792" 
 />
    <glyph glyph-name="acute" unicode="&#xb4;" horiz-adv-x="1792" 
 />
    <glyph glyph-name="AE" unicode="&#xc6;" horiz-adv-x="1792" 
 />
    <glyph glyph-name="Oslash" unicode="&#xd8;" horiz-adv-x="1792" 
 />
    <glyph glyph-name="trademark" unicode="&#x2122;" horiz-adv-x="1792" 
 />
    <glyph glyph-name="infinity" unicode="&#x221e;" horiz-adv-x="1792" 
 />
    <glyph glyph-name="notequal" unicode="&#x2260;" horiz-adv-x="1792" 
 />
    <glyph glyph-name="glass" unicode="&#xf000;" horiz-adv-x="1792" 
d="M1699 1350q0 -35 -43 -78l-632 -632v-768h320q26 0 45 -19t19 -45t-19 -45t-45 -19h-896q-26 0 -45 19t-19 45t19 45t45 19h320v768l-632 632q-43 43 -43 78q0 23 18 36.5t38 17.5t43 4h1408q23 0 43 -4t38 -17.5t18 -36.5z" />
    <glyph glyph-name="music" unicode="&#xf001;" 
d="M1536 1312v-1120q0 -50 -34 -89t-86 -60.5t-103.5 -32t-96.5 -10.5t-96.5 10.5t-103.5 32t-86 60.5t-34 89t34 89t86 60.5t103.5 32t96.5 10.5q105 0 192 -39v537l-768 -237v-709q0 -50 -34 -89t-86 -60.5t-103.5 -32t-96.5 -10.5t-96.5 10.5t-103.5 32t-86 60.5t-34 89
t34 89t86 60.5t103.5 32t96.5 10.5q105 0 192 -39v967q0 31 19 56.5t49 35.5l832 256q12 4 28 4q40 0 68 -28t28 -68z" />
    <glyph glyph-name="search" unicode="&#xf002;" horiz-adv-x="1664" 
d="M1152 704q0 185 -131.5 316.5t-316.5 131.5t-316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5t316.5 131.5t131.5 316.5zM1664 -128q0 -52 -38 -90t-90 -38q-54 0 -90 38l-343 342q-179 -124 -399 -124q-143 0 -273.5 55.5t-225 150t-150 225t-55.5 273.5
t55.5 273.5t150 225t225 150t273.5 55.5t273.5 -55.5t225 -150t150 -225t55.5 -273.5q0 -220 -124 -399l343 -343q37 -37 37 -90z" />
    <glyph glyph-name="envelope" unicode="&#xf003;" horiz-adv-x="1792" 
d="M1664 32v768q-32 -36 -69 -66q-268 -206 -426 -338q-51 -43 -83 -67t-86.5 -48.5t-102.5 -24.5h-1h-1q-48 0 -102.5 24.5t-86.5 48.5t-83 67q-158 132 -426 338q-37 30 -69 66v-768q0 -13 9.5 -22.5t22.5 -9.5h1472q13 0 22.5 9.5t9.5 22.5zM1664 1083v11v13.5t-0.5 13
t-3 12.5t-5.5 9t-9 7.5t-14 2.5h-1472q-13 0 -22.5 -9.5t-9.5 -22.5q0 -168 147 -284q193 -152 401 -317q6 -5 35 -29.5t46 -37.5t44.5 -31.5t50.5 -27.5t43 -9h1h1q20 0 43 9t50.5 27.5t44.5 31.5t46 37.5t35 29.5q208 165 401 317q54 43 100.5 115.5t46.5 131.5z
M1792 1120v-1088q0 -66 -47 -113t-113 -47h-1472q-66 0 -113 47t-47 113v1088q0 66 47 113t113 47h1472q66 0 113 -47t47 -113z" />
    <glyph glyph-name="heart" unicode="&#xf004;" horiz-adv-x="1792" 
d="M896 -128q-26 0 -44 18l-624 602q-10 8 -27.5 26t-55.5 65.5t-68 97.5t-53.5 121t-23.5 138q0 220 127 344t351 124q62 0 126.5 -21.5t120 -58t95.5 -68.5t76 -68q36 36 76 68t95.5 68.5t120 58t126.5 21.5q224 0 351 -124t127 -344q0 -221 -229 -450l-623 -600
q-18 -18 -44 -18z" />
    <glyph glyph-name="star" unicode="&#xf005;" horiz-adv-x="1664" 
d="M1664 889q0 -22 -26 -48l-363 -354l86 -500q1 -7 1 -20q0 -21 -10.5 -35.5t-30.5 -14.5q-19 0 -40 12l-449 236l-449 -236q-22 -12 -40 -12q-21 0 -31.5 14.5t-10.5 35.5q0 6 2 20l86 500l-364 354q-25 27 -25 48q0 37 56 46l502 73l225 455q19 41 49 41t49 -41l225 -455
l502 -73q56 -9 56 -46z" />
    <glyph glyph-name="star_empty" unicode="&#xf006;" horiz-adv-x="1664" 
d="M1137 532l306 297l-422 62l-189 382l-189 -382l-422 -62l306 -297l-73 -421l378 199l377 -199zM1664 889q0 -22 -26 -48l-363 -354l86 -500q1 -7 1 -20q0 -50 -41 -50q-19 0 -40 12l-449 236l-449 -236q-22 -12 -40 -12q-21 0 -31.5 14.5t-10.5 35.5q0 6 2 20l86 500
l-364 354q-25 27 -25 48q0 37 56 46l502 73l225 455q19 41 49 41t49 -41l225 -455l502 -73q56 -9 56 -46z" />
    <glyph glyph-name="user" unicode="&#xf007;" horiz-adv-x="1280" 
d="M1280 137q0 -109 -62.5 -187t-150.5 -78h-854q-88 0 -150.5 78t-62.5 187q0 85 8.5 160.5t31.5 152t58.5 131t94 89t134.5 34.5q131 -128 313 -128t313 128q76 0 134.5 -34.5t94 -89t58.5 -131t31.5 -152t8.5 -160.5zM1024 1024q0 -159 -112.5 -271.5t-271.5 -112.5
t-271.5 112.5t-112.5 271.5t112.5 271.5t271.5 112.5t271.5 -112.5t112.5 -271.5z" />
    <glyph glyph-name="film" unicode="&#xf008;" horiz-adv-x="1920" 
d="M384 -64v128q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h128q26 0 45 19t19 45zM384 320v128q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h128q26 0 45 19t19 45zM384 704v128q0 26 -19 45t-45 19h-128
q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h128q26 0 45 19t19 45zM1408 -64v512q0 26 -19 45t-45 19h-768q-26 0 -45 -19t-19 -45v-512q0 -26 19 -45t45 -19h768q26 0 45 19t19 45zM384 1088v128q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45
t45 -19h128q26 0 45 19t19 45zM1792 -64v128q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h128q26 0 45 19t19 45zM1408 704v512q0 26 -19 45t-45 19h-768q-26 0 -45 -19t-19 -45v-512q0 -26 19 -45t45 -19h768q26 0 45 19t19 45zM1792 320v128
q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h128q26 0 45 19t19 45zM1792 704v128q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h128q26 0 45 19t19 45zM1792 1088v128q0 26 -19 45t-45 19h-128q-26 0 -45 -19
t-19 -45v-128q0 -26 19 -45t45 -19h128q26 0 45 19t19 45zM1920 1248v-1344q0 -66 -47 -113t-113 -47h-1600q-66 0 -113 47t-47 113v1344q0 66 47 113t113 47h1600q66 0 113 -47t47 -113z" />
    <glyph glyph-name="th_large" unicode="&#xf009;" horiz-adv-x="1664" 
d="M768 512v-384q0 -52 -38 -90t-90 -38h-512q-52 0 -90 38t-38 90v384q0 52 38 90t90 38h512q52 0 90 -38t38 -90zM768 1280v-384q0 -52 -38 -90t-90 -38h-512q-52 0 -90 38t-38 90v384q0 52 38 90t90 38h512q52 0 90 -38t38 -90zM1664 512v-384q0 -52 -38 -90t-90 -38
h-512q-52 0 -90 38t-38 90v384q0 52 38 90t90 38h512q52 0 90 -38t38 -90zM1664 1280v-384q0 -52 -38 -90t-90 -38h-512q-52 0 -90 38t-38 90v384q0 52 38 90t90 38h512q52 0 90 -38t38 -90z" />
    <glyph glyph-name="th" unicode="&#xf00a;" horiz-adv-x="1792" 
d="M512 288v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM512 800v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM1152 288v-192q0 -40 -28 -68t-68 -28h-320
q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM512 1312v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM1152 800v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28
h320q40 0 68 -28t28 -68zM1792 288v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM1152 1312v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM1792 800v-192
q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM1792 1312v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68z" />
    <glyph glyph-name="th_list" unicode="&#xf00b;" horiz-adv-x="1792" 
d="M512 288v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM512 800v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM1792 288v-192q0 -40 -28 -68t-68 -28h-960
q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h960q40 0 68 -28t28 -68zM512 1312v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM1792 800v-192q0 -40 -28 -68t-68 -28h-960q-40 0 -68 28t-28 68v192q0 40 28 68t68 28
h960q40 0 68 -28t28 -68zM1792 1312v-192q0 -40 -28 -68t-68 -28h-960q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h960q40 0 68 -28t28 -68z" />
    <glyph glyph-name="ok" unicode="&#xf00c;" horiz-adv-x="1792" 
d="M1671 970q0 -40 -28 -68l-724 -724l-136 -136q-28 -28 -68 -28t-68 28l-136 136l-362 362q-28 28 -28 68t28 68l136 136q28 28 68 28t68 -28l294 -295l656 657q28 28 68 28t68 -28l136 -136q28 -28 28 -68z" />
    <glyph glyph-name="remove" unicode="&#xf00d;" horiz-adv-x="1408" 
d="M1298 214q0 -40 -28 -68l-136 -136q-28 -28 -68 -28t-68 28l-294 294l-294 -294q-28 -28 -68 -28t-68 28l-136 136q-28 28 -28 68t28 68l294 294l-294 294q-28 28 -28 68t28 68l136 136q28 28 68 28t68 -28l294 -294l294 294q28 28 68 28t68 -28l136 -136q28 -28 28 -68
t-28 -68l-294 -294l294 -294q28 -28 28 -68z" />
    <glyph glyph-name="zoom_in" unicode="&#xf00e;" horiz-adv-x="1664" 
d="M1024 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-224v-224q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v224h-224q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h224v224q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5v-224h224
q13 0 22.5 -9.5t9.5 -22.5zM1152 704q0 185 -131.5 316.5t-316.5 131.5t-316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5t316.5 131.5t131.5 316.5zM1664 -128q0 -53 -37.5 -90.5t-90.5 -37.5q-54 0 -90 38l-343 342q-179 -124 -399 -124q-143 0 -273.5 55.5
t-225 150t-150 225t-55.5 273.5t55.5 273.5t150 225t225 150t273.5 55.5t273.5 -55.5t225 -150t150 -225t55.5 -273.5q0 -220 -124 -399l343 -343q37 -37 37 -90z" />
    <glyph glyph-name="zoom_out" unicode="&#xf010;" horiz-adv-x="1664" 
d="M1024 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-576q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h576q13 0 22.5 -9.5t9.5 -22.5zM1152 704q0 185 -131.5 316.5t-316.5 131.5t-316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5t316.5 131.5t131.5 316.5z
M1664 -128q0 -53 -37.5 -90.5t-90.5 -37.5q-54 0 -90 38l-343 342q-179 -124 -399 -124q-143 0 -273.5 55.5t-225 150t-150 225t-55.5 273.5t55.5 273.5t150 225t225 150t273.5 55.5t273.5 -55.5t225 -150t150 -225t55.5 -273.5q0 -220 -124 -399l343 -343q37 -37 37 -90z
" />
    <glyph glyph-name="off" unicode="&#xf011;" 
d="M1536 640q0 -156 -61 -298t-164 -245t-245 -164t-298 -61t-298 61t-245 164t-164 245t-61 298q0 182 80.5 343t226.5 270q43 32 95.5 25t83.5 -50q32 -42 24.5 -94.5t-49.5 -84.5q-98 -74 -151.5 -181t-53.5 -228q0 -104 40.5 -198.5t109.5 -163.5t163.5 -109.5
t198.5 -40.5t198.5 40.5t163.5 109.5t109.5 163.5t40.5 198.5q0 121 -53.5 228t-151.5 181q-42 32 -49.5 84.5t24.5 94.5q31 43 84 50t95 -25q146 -109 226.5 -270t80.5 -343zM896 1408v-640q0 -52 -38 -90t-90 -38t-90 38t-38 90v640q0 52 38 90t90 38t90 -38t38 -90z" />
    <glyph glyph-name="signal" unicode="&#xf012;" horiz-adv-x="1792" 
d="M256 96v-192q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM640 224v-320q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v320q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM1024 480v-576q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23
v576q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM1408 864v-960q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v960q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM1792 1376v-1472q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v1472q0 14 9 23t23 9h192q14 0 23 -9t9 -23z" />
    <glyph glyph-name="cog" unicode="&#xf013;" 
d="M1024 640q0 106 -75 181t-181 75t-181 -75t-75 -181t75 -181t181 -75t181 75t75 181zM1536 749v-222q0 -12 -8 -23t-20 -13l-185 -28q-19 -54 -39 -91q35 -50 107 -138q10 -12 10 -25t-9 -23q-27 -37 -99 -108t-94 -71q-12 0 -26 9l-138 108q-44 -23 -91 -38
q-16 -136 -29 -186q-7 -28 -36 -28h-222q-14 0 -24.5 8.5t-11.5 21.5l-28 184q-49 16 -90 37l-141 -107q-10 -9 -25 -9q-14 0 -25 11q-126 114 -165 168q-7 10 -7 23q0 12 8 23q15 21 51 66.5t54 70.5q-27 50 -41 99l-183 27q-13 2 -21 12.5t-8 23.5v222q0 12 8 23t19 13
l186 28q14 46 39 92q-40 57 -107 138q-10 12 -10 24q0 10 9 23q26 36 98.5 107.5t94.5 71.5q13 0 26 -10l138 -107q44 23 91 38q16 136 29 186q7 28 36 28h222q14 0 24.5 -8.5t11.5 -21.5l28 -184q49 -16 90 -37l142 107q9 9 24 9q13 0 25 -10q129 -119 165 -170q7 -8 7 -22
q0 -12 -8 -23q-15 -21 -51 -66.5t-54 -70.5q26 -50 41 -98l183 -28q13 -2 21 -12.5t8 -23.5z" />
    <glyph glyph-name="trash" unicode="&#xf014;" horiz-adv-x="1408" 
d="M512 800v-576q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v576q0 14 9 23t23 9h64q14 0 23 -9t9 -23zM768 800v-576q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v576q0 14 9 23t23 9h64q14 0 23 -9t9 -23zM1024 800v-576q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v576
q0 14 9 23t23 9h64q14 0 23 -9t9 -23zM1152 76v948h-896v-948q0 -22 7 -40.5t14.5 -27t10.5 -8.5h832q3 0 10.5 8.5t14.5 27t7 40.5zM480 1152h448l-48 117q-7 9 -17 11h-317q-10 -2 -17 -11zM1408 1120v-64q0 -14 -9 -23t-23 -9h-96v-948q0 -83 -47 -143.5t-113 -60.5h-832
q-66 0 -113 58.5t-47 141.5v952h-96q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h309l70 167q15 37 54 63t79 26h320q40 0 79 -26t54 -63l70 -167h309q14 0 23 -9t9 -23z" />
    <glyph glyph-name="home" unicode="&#xf015;" horiz-adv-x="1664" 
d="M1408 544v-480q0 -26 -19 -45t-45 -19h-384v384h-256v-384h-384q-26 0 -45 19t-19 45v480q0 1 0.5 3t0.5 3l575 474l575 -474q1 -2 1 -6zM1631 613l-62 -74q-8 -9 -21 -11h-3q-13 0 -21 7l-692 577l-692 -577q-12 -8 -24 -7q-13 2 -21 11l-62 74q-8 10 -7 23.5t11 21.5
l719 599q32 26 76 26t76 -26l244 -204v195q0 14 9 23t23 9h192q14 0 23 -9t9 -23v-408l219 -182q10 -8 11 -21.5t-7 -23.5z" />
    <glyph glyph-name="file_alt" unicode="&#xf016;" 
d="M1468 1156q28 -28 48 -76t20 -88v-1152q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h896q40 0 88 -20t76 -48zM1024 1400v-376h376q-10 29 -22 41l-313 313q-12 12 -41 22zM1408 -128v1024h-416q-40 0 -68 28t-28 68v416h-768v-1536h1280z
" />
    <glyph glyph-name="time" unicode="&#xf017;" 
d="M896 992v-448q0 -14 -9 -23t-23 -9h-320q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h224v352q0 14 9 23t23 9h64q14 0 23 -9t9 -23zM1312 640q0 148 -73 273t-198 198t-273 73t-273 -73t-198 -198t-73 -273t73 -273t198 -198t273 -73t273 73t198 198t73 273zM1536 640
q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="road" unicode="&#xf018;" horiz-adv-x="1920" 
d="M1111 540v4l-24 320q-1 13 -11 22.5t-23 9.5h-186q-13 0 -23 -9.5t-11 -22.5l-24 -320v-4q-1 -12 8 -20t21 -8h244q12 0 21 8t8 20zM1870 73q0 -73 -46 -73h-704q13 0 22 9.5t8 22.5l-20 256q-1 13 -11 22.5t-23 9.5h-272q-13 0 -23 -9.5t-11 -22.5l-20 -256
q-1 -13 8 -22.5t22 -9.5h-704q-46 0 -46 73q0 54 26 116l417 1044q8 19 26 33t38 14h339q-13 0 -23 -9.5t-11 -22.5l-15 -192q-1 -14 8 -23t22 -9h166q13 0 22 9t8 23l-15 192q-1 13 -11 22.5t-23 9.5h339q20 0 38 -14t26 -33l417 -1044q26 -62 26 -116z" />
    <glyph glyph-name="download_alt" unicode="&#xf019;" horiz-adv-x="1664" 
d="M1280 192q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1536 192q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1664 416v-320q0 -40 -28 -68t-68 -28h-1472q-40 0 -68 28t-28 68v320q0 40 28 68t68 28h465l135 -136
q58 -56 136 -56t136 56l136 136h464q40 0 68 -28t28 -68zM1339 985q17 -41 -14 -70l-448 -448q-18 -19 -45 -19t-45 19l-448 448q-31 29 -14 70q17 39 59 39h256v448q0 26 19 45t45 19h256q26 0 45 -19t19 -45v-448h256q42 0 59 -39z" />
    <glyph glyph-name="download" unicode="&#xf01a;" 
d="M1120 608q0 -12 -10 -24l-319 -319q-11 -9 -23 -9t-23 9l-320 320q-15 16 -7 35q8 20 30 20h192v352q0 14 9 23t23 9h192q14 0 23 -9t9 -23v-352h192q14 0 23 -9t9 -23zM768 1184q-148 0 -273 -73t-198 -198t-73 -273t73 -273t198 -198t273 -73t273 73t198 198t73 273
t-73 273t-198 198t-273 73zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="upload" unicode="&#xf01b;" 
d="M1118 660q-8 -20 -30 -20h-192v-352q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v352h-192q-14 0 -23 9t-9 23q0 12 10 24l319 319q11 9 23 9t23 -9l320 -320q15 -16 7 -35zM768 1184q-148 0 -273 -73t-198 -198t-73 -273t73 -273t198 -198t273 -73t273 73t198 198
t73 273t-73 273t-198 198t-273 73zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="inbox" unicode="&#xf01c;" 
d="M1023 576h316q-1 3 -2.5 8.5t-2.5 7.5l-212 496h-708l-212 -496q-1 -3 -2.5 -8.5t-2.5 -7.5h316l95 -192h320zM1536 546v-482q0 -26 -19 -45t-45 -19h-1408q-26 0 -45 19t-19 45v482q0 62 25 123l238 552q10 25 36.5 42t52.5 17h832q26 0 52.5 -17t36.5 -42l238 -552
q25 -61 25 -123z" />
    <glyph glyph-name="play_circle" unicode="&#xf01d;" 
d="M1184 640q0 -37 -32 -55l-544 -320q-15 -9 -32 -9q-16 0 -32 8q-32 19 -32 56v640q0 37 32 56q33 18 64 -1l544 -320q32 -18 32 -55zM1312 640q0 148 -73 273t-198 198t-273 73t-273 -73t-198 -198t-73 -273t73 -273t198 -198t273 -73t273 73t198 198t73 273zM1536 640
q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="repeat" unicode="&#xf01e;" 
d="M1536 1280v-448q0 -26 -19 -45t-45 -19h-448q-42 0 -59 40q-17 39 14 69l138 138q-148 137 -349 137q-104 0 -198.5 -40.5t-163.5 -109.5t-109.5 -163.5t-40.5 -198.5t40.5 -198.5t109.5 -163.5t163.5 -109.5t198.5 -40.5q119 0 225 52t179 147q7 10 23 12q15 0 25 -9
l137 -138q9 -8 9.5 -20.5t-7.5 -22.5q-109 -132 -264 -204.5t-327 -72.5q-156 0 -298 61t-245 164t-164 245t-61 298t61 298t164 245t245 164t298 61q147 0 284.5 -55.5t244.5 -156.5l130 129q29 31 70 14q39 -17 39 -59z" />
    <glyph glyph-name="refresh" unicode="&#xf021;" 
d="M1511 480q0 -5 -1 -7q-64 -268 -268 -434.5t-478 -166.5q-146 0 -282.5 55t-243.5 157l-129 -129q-19 -19 -45 -19t-45 19t-19 45v448q0 26 19 45t45 19h448q26 0 45 -19t19 -45t-19 -45l-137 -137q71 -66 161 -102t187 -36q134 0 250 65t186 179q11 17 53 117
q8 23 30 23h192q13 0 22.5 -9.5t9.5 -22.5zM1536 1280v-448q0 -26 -19 -45t-45 -19h-448q-26 0 -45 19t-19 45t19 45l138 138q-148 137 -349 137q-134 0 -250 -65t-186 -179q-11 -17 -53 -117q-8 -23 -30 -23h-199q-13 0 -22.5 9.5t-9.5 22.5v7q65 268 270 434.5t480 166.5
q146 0 284 -55.5t245 -156.5l130 129q19 19 45 19t45 -19t19 -45z" />
    <glyph glyph-name="list_alt" unicode="&#xf022;" horiz-adv-x="1792" 
d="M384 352v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM384 608v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z
M384 864v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM1536 352v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-960q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h960q13 0 22.5 -9.5t9.5 -22.5z
M1536 608v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-960q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h960q13 0 22.5 -9.5t9.5 -22.5zM1536 864v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-960q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h960q13 0 22.5 -9.5
t9.5 -22.5zM1664 160v832q0 13 -9.5 22.5t-22.5 9.5h-1472q-13 0 -22.5 -9.5t-9.5 -22.5v-832q0 -13 9.5 -22.5t22.5 -9.5h1472q13 0 22.5 9.5t9.5 22.5zM1792 1248v-1088q0 -66 -47 -113t-113 -47h-1472q-66 0 -113 47t-47 113v1088q0 66 47 113t113 47h1472q66 0 113 -47
t47 -113z" />
    <glyph glyph-name="lock" unicode="&#xf023;" horiz-adv-x="1152" 
d="M320 768h512v192q0 106 -75 181t-181 75t-181 -75t-75 -181v-192zM1152 672v-576q0 -40 -28 -68t-68 -28h-960q-40 0 -68 28t-28 68v576q0 40 28 68t68 28h32v192q0 184 132 316t316 132t316 -132t132 -316v-192h32q40 0 68 -28t28 -68z" />
    <glyph glyph-name="flag" unicode="&#xf024;" horiz-adv-x="1792" 
d="M320 1280q0 -72 -64 -110v-1266q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v1266q-64 38 -64 110q0 53 37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1792 1216v-763q0 -25 -12.5 -38.5t-39.5 -27.5q-215 -116 -369 -116q-61 0 -123.5 22t-108.5 48
t-115.5 48t-142.5 22q-192 0 -464 -146q-17 -9 -33 -9q-26 0 -45 19t-19 45v742q0 32 31 55q21 14 79 43q236 120 421 120q107 0 200 -29t219 -88q38 -19 88 -19q54 0 117.5 21t110 47t88 47t54.5 21q26 0 45 -19t19 -45z" />
    <glyph glyph-name="headphones" unicode="&#xf025;" horiz-adv-x="1664" 
d="M1664 650q0 -166 -60 -314l-20 -49l-185 -33q-22 -83 -90.5 -136.5t-156.5 -53.5v-32q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v576q0 14 9 23t23 9h64q14 0 23 -9t9 -23v-32q71 0 130 -35.5t93 -95.5l68 12q29 95 29 193q0 148 -88 279t-236.5 209t-315.5 78
t-315.5 -78t-236.5 -209t-88 -279q0 -98 29 -193l68 -12q34 60 93 95.5t130 35.5v32q0 14 9 23t23 9h64q14 0 23 -9t9 -23v-576q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v32q-88 0 -156.5 53.5t-90.5 136.5l-185 33l-20 49q-60 148 -60 314q0 151 67 291t179 242.5
t266 163.5t320 61t320 -61t266 -163.5t179 -242.5t67 -291z" />
    <glyph glyph-name="volume_off" unicode="&#xf026;" horiz-adv-x="768" 
d="M768 1184v-1088q0 -26 -19 -45t-45 -19t-45 19l-333 333h-262q-26 0 -45 19t-19 45v384q0 26 19 45t45 19h262l333 333q19 19 45 19t45 -19t19 -45z" />
    <glyph glyph-name="volume_down" unicode="&#xf027;" horiz-adv-x="1152" 
d="M768 1184v-1088q0 -26 -19 -45t-45 -19t-45 19l-333 333h-262q-26 0 -45 19t-19 45v384q0 26 19 45t45 19h262l333 333q19 19 45 19t45 -19t19 -45zM1152 640q0 -76 -42.5 -141.5t-112.5 -93.5q-10 -5 -25 -5q-26 0 -45 18.5t-19 45.5q0 21 12 35.5t29 25t34 23t29 36
t12 56.5t-12 56.5t-29 36t-34 23t-29 25t-12 35.5q0 27 19 45.5t45 18.5q15 0 25 -5q70 -27 112.5 -93t42.5 -142z" />
    <glyph glyph-name="volume_up" unicode="&#xf028;" horiz-adv-x="1664" 
d="M768 1184v-1088q0 -26 -19 -45t-45 -19t-45 19l-333 333h-262q-26 0 -45 19t-19 45v384q0 26 19 45t45 19h262l333 333q19 19 45 19t45 -19t19 -45zM1152 640q0 -76 -42.5 -141.5t-112.5 -93.5q-10 -5 -25 -5q-26 0 -45 18.5t-19 45.5q0 21 12 35.5t29 25t34 23t29 36
t12 56.5t-12 56.5t-29 36t-34 23t-29 25t-12 35.5q0 27 19 45.5t45 18.5q15 0 25 -5q70 -27 112.5 -93t42.5 -142zM1408 640q0 -153 -85 -282.5t-225 -188.5q-13 -5 -25 -5q-27 0 -46 19t-19 45q0 39 39 59q56 29 76 44q74 54 115.5 135.5t41.5 173.5t-41.5 173.5
t-115.5 135.5q-20 15 -76 44q-39 20 -39 59q0 26 19 45t45 19q13 0 26 -5q140 -59 225 -188.5t85 -282.5zM1664 640q0 -230 -127 -422.5t-338 -283.5q-13 -5 -26 -5q-26 0 -45 19t-19 45q0 36 39 59q7 4 22.5 10.5t22.5 10.5q46 25 82 51q123 91 192 227t69 289t-69 289
t-192 227q-36 26 -82 51q-7 4 -22.5 10.5t-22.5 10.5q-39 23 -39 59q0 26 19 45t45 19q13 0 26 -5q211 -91 338 -283.5t127 -422.5z" />
    <glyph glyph-name="qrcode" unicode="&#xf029;" horiz-adv-x="1408" 
d="M384 384v-128h-128v128h128zM384 1152v-128h-128v128h128zM1152 1152v-128h-128v128h128zM128 129h384v383h-384v-383zM128 896h384v384h-384v-384zM896 896h384v384h-384v-384zM640 640v-640h-640v640h640zM1152 128v-128h-128v128h128zM1408 128v-128h-128v128h128z
M1408 640v-384h-384v128h-128v-384h-128v640h384v-128h128v128h128zM640 1408v-640h-640v640h640zM1408 1408v-640h-640v640h640z" />
    <glyph glyph-name="barcode" unicode="&#xf02a;" horiz-adv-x="1792" 
d="M63 0h-63v1408h63v-1408zM126 1h-32v1407h32v-1407zM220 1h-31v1407h31v-1407zM377 1h-31v1407h31v-1407zM534 1h-62v1407h62v-1407zM660 1h-31v1407h31v-1407zM723 1h-31v1407h31v-1407zM786 1h-31v1407h31v-1407zM943 1h-63v1407h63v-1407zM1100 1h-63v1407h63v-1407z
M1226 1h-63v1407h63v-1407zM1352 1h-63v1407h63v-1407zM1446 1h-63v1407h63v-1407zM1635 1h-94v1407h94v-1407zM1698 1h-32v1407h32v-1407zM1792 0h-63v1408h63v-1408z" />
    <glyph glyph-name="tag" unicode="&#xf02b;" 
d="M448 1088q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1515 512q0 -53 -37 -90l-491 -492q-39 -37 -91 -37q-53 0 -90 37l-715 716q-38 37 -64.5 101t-26.5 117v416q0 52 38 90t90 38h416q53 0 117 -26.5t102 -64.5
l715 -714q37 -39 37 -91z" />
    <glyph glyph-name="tags" unicode="&#xf02c;" horiz-adv-x="1920" 
d="M448 1088q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1515 512q0 -53 -37 -90l-491 -492q-39 -37 -91 -37q-53 0 -90 37l-715 716q-38 37 -64.5 101t-26.5 117v416q0 52 38 90t90 38h416q53 0 117 -26.5t102 -64.5
l715 -714q37 -39 37 -91zM1899 512q0 -53 -37 -90l-491 -492q-39 -37 -91 -37q-36 0 -59 14t-53 45l470 470q37 37 37 90q0 52 -37 91l-715 714q-38 38 -102 64.5t-117 26.5h224q53 0 117 -26.5t102 -64.5l715 -714q37 -39 37 -91z" />
    <glyph glyph-name="book" unicode="&#xf02d;" horiz-adv-x="1664" 
d="M1639 1058q40 -57 18 -129l-275 -906q-19 -64 -76.5 -107.5t-122.5 -43.5h-923q-77 0 -148.5 53.5t-99.5 131.5q-24 67 -2 127q0 4 3 27t4 37q1 8 -3 21.5t-3 19.5q2 11 8 21t16.5 23.5t16.5 23.5q23 38 45 91.5t30 91.5q3 10 0.5 30t-0.5 28q3 11 17 28t17 23
q21 36 42 92t25 90q1 9 -2.5 32t0.5 28q4 13 22 30.5t22 22.5q19 26 42.5 84.5t27.5 96.5q1 8 -3 25.5t-2 26.5q2 8 9 18t18 23t17 21q8 12 16.5 30.5t15 35t16 36t19.5 32t26.5 23.5t36 11.5t47.5 -5.5l-1 -3q38 9 51 9h761q74 0 114 -56t18 -130l-274 -906
q-36 -119 -71.5 -153.5t-128.5 -34.5h-869q-27 0 -38 -15q-11 -16 -1 -43q24 -70 144 -70h923q29 0 56 15.5t35 41.5l300 987q7 22 5 57q38 -15 59 -43zM575 1056q-4 -13 2 -22.5t20 -9.5h608q13 0 25.5 9.5t16.5 22.5l21 64q4 13 -2 22.5t-20 9.5h-608q-13 0 -25.5 -9.5
t-16.5 -22.5zM492 800q-4 -13 2 -22.5t20 -9.5h608q13 0 25.5 9.5t16.5 22.5l21 64q4 13 -2 22.5t-20 9.5h-608q-13 0 -25.5 -9.5t-16.5 -22.5z" />
    <glyph glyph-name="bookmark" unicode="&#xf02e;" horiz-adv-x="1280" 
d="M1164 1408q23 0 44 -9q33 -13 52.5 -41t19.5 -62v-1289q0 -34 -19.5 -62t-52.5 -41q-19 -8 -44 -8q-48 0 -83 32l-441 424l-441 -424q-36 -33 -83 -33q-23 0 -44 9q-33 13 -52.5 41t-19.5 62v1289q0 34 19.5 62t52.5 41q21 9 44 9h1048z" />
    <glyph glyph-name="print" unicode="&#xf02f;" horiz-adv-x="1664" 
d="M384 0h896v256h-896v-256zM384 640h896v384h-160q-40 0 -68 28t-28 68v160h-640v-640zM1536 576q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1664 576v-416q0 -13 -9.5 -22.5t-22.5 -9.5h-224v-160q0 -40 -28 -68t-68 -28h-960q-40 0 -68 28t-28 68
v160h-224q-13 0 -22.5 9.5t-9.5 22.5v416q0 79 56.5 135.5t135.5 56.5h64v544q0 40 28 68t68 28h672q40 0 88 -20t76 -48l152 -152q28 -28 48 -76t20 -88v-256h64q79 0 135.5 -56.5t56.5 -135.5z" />
    <glyph glyph-name="camera" unicode="&#xf030;" horiz-adv-x="1920" 
d="M960 864q119 0 203.5 -84.5t84.5 -203.5t-84.5 -203.5t-203.5 -84.5t-203.5 84.5t-84.5 203.5t84.5 203.5t203.5 84.5zM1664 1280q106 0 181 -75t75 -181v-896q0 -106 -75 -181t-181 -75h-1408q-106 0 -181 75t-75 181v896q0 106 75 181t181 75h224l51 136
q19 49 69.5 84.5t103.5 35.5h512q53 0 103.5 -35.5t69.5 -84.5l51 -136h224zM960 128q185 0 316.5 131.5t131.5 316.5t-131.5 316.5t-316.5 131.5t-316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5z" />
    <glyph glyph-name="font" unicode="&#xf031;" horiz-adv-x="1664" 
d="M725 977l-170 -450q33 0 136.5 -2t160.5 -2q19 0 57 2q-87 253 -184 452zM0 -128l2 79q23 7 56 12.5t57 10.5t49.5 14.5t44.5 29t31 50.5l237 616l280 724h75h53q8 -14 11 -21l205 -480q33 -78 106 -257.5t114 -274.5q15 -34 58 -144.5t72 -168.5q20 -45 35 -57
q19 -15 88 -29.5t84 -20.5q6 -38 6 -57q0 -5 -0.5 -13.5t-0.5 -12.5q-63 0 -190 8t-191 8q-76 0 -215 -7t-178 -8q0 43 4 78l131 28q1 0 12.5 2.5t15.5 3.5t14.5 4.5t15 6.5t11 8t9 11t2.5 14q0 16 -31 96.5t-72 177.5t-42 100l-450 2q-26 -58 -76.5 -195.5t-50.5 -162.5
q0 -22 14 -37.5t43.5 -24.5t48.5 -13.5t57 -8.5t41 -4q1 -19 1 -58q0 -9 -2 -27q-58 0 -174.5 10t-174.5 10q-8 0 -26.5 -4t-21.5 -4q-80 -14 -188 -14z" />
    <glyph glyph-name="bold" unicode="&#xf032;" horiz-adv-x="1408" 
d="M555 15q74 -32 140 -32q376 0 376 335q0 114 -41 180q-27 44 -61.5 74t-67.5 46.5t-80.5 25t-84 10.5t-94.5 2q-73 0 -101 -10q0 -53 -0.5 -159t-0.5 -158q0 -8 -1 -67.5t-0.5 -96.5t4.5 -83.5t12 -66.5zM541 761q42 -7 109 -7q82 0 143 13t110 44.5t74.5 89.5t25.5 142
q0 70 -29 122.5t-79 82t-108 43.5t-124 14q-50 0 -130 -13q0 -50 4 -151t4 -152q0 -27 -0.5 -80t-0.5 -79q0 -46 1 -69zM0 -128l2 94q15 4 85 16t106 27q7 12 12.5 27t8.5 33.5t5.5 32.5t3 37.5t0.5 34v35.5v30q0 982 -22 1025q-4 8 -22 14.5t-44.5 11t-49.5 7t-48.5 4.5
t-30.5 3l-4 83q98 2 340 11.5t373 9.5q23 0 68 -0.5t68 -0.5q70 0 136.5 -13t128.5 -42t108 -71t74 -104.5t28 -137.5q0 -52 -16.5 -95.5t-39 -72t-64.5 -57.5t-73 -45t-84 -40q154 -35 256.5 -134t102.5 -248q0 -100 -35 -179.5t-93.5 -130.5t-138 -85.5t-163.5 -48.5
t-176 -14q-44 0 -132 3t-132 3q-106 0 -307 -11t-231 -12z" />
    <glyph glyph-name="italic" unicode="&#xf033;" horiz-adv-x="1024" 
d="M0 -126l17 85q22 7 61.5 16.5t72 19t59.5 23.5q28 35 41 101q1 7 62 289t114 543.5t52 296.5v25q-24 13 -54.5 18.5t-69.5 8t-58 5.5l19 103q33 -2 120 -6.5t149.5 -7t120.5 -2.5q48 0 98.5 2.5t121 7t98.5 6.5q-5 -39 -19 -89q-30 -10 -101.5 -28.5t-108.5 -33.5
q-8 -19 -14 -42.5t-9 -40t-7.5 -45.5t-6.5 -42q-27 -148 -87.5 -419.5t-77.5 -355.5q-2 -9 -13 -58t-20 -90t-16 -83.5t-6 -57.5l1 -18q17 -4 185 -31q-3 -44 -16 -99q-11 0 -32.5 -1.5t-32.5 -1.5q-29 0 -87 10t-86 10q-138 2 -206 2q-51 0 -143 -9t-121 -11z" />
    <glyph glyph-name="text_height" unicode="&#xf034;" horiz-adv-x="1792" 
d="M1744 128q33 0 42 -18.5t-11 -44.5l-126 -162q-20 -26 -49 -26t-49 26l-126 162q-20 26 -11 44.5t42 18.5h80v1024h-80q-33 0 -42 18.5t11 44.5l126 162q20 26 49 26t49 -26l126 -162q20 -26 11 -44.5t-42 -18.5h-80v-1024h80zM81 1407l54 -27q12 -5 211 -5q44 0 132 2
t132 2q36 0 107.5 -0.5t107.5 -0.5h293q6 0 21 -0.5t20.5 0t16 3t17.5 9t15 17.5l42 1q4 0 14 -0.5t14 -0.5q2 -112 2 -336q0 -80 -5 -109q-39 -14 -68 -18q-25 44 -54 128q-3 9 -11 48t-14.5 73.5t-7.5 35.5q-6 8 -12 12.5t-15.5 6t-13 2.5t-18 0.5t-16.5 -0.5
q-17 0 -66.5 0.5t-74.5 0.5t-64 -2t-71 -6q-9 -81 -8 -136q0 -94 2 -388t2 -455q0 -16 -2.5 -71.5t0 -91.5t12.5 -69q40 -21 124 -42.5t120 -37.5q5 -40 5 -50q0 -14 -3 -29l-34 -1q-76 -2 -218 8t-207 10q-50 0 -151 -9t-152 -9q-3 51 -3 52v9q17 27 61.5 43t98.5 29t78 27
q19 42 19 383q0 101 -3 303t-3 303v117q0 2 0.5 15.5t0.5 25t-1 25.5t-3 24t-5 14q-11 12 -162 12q-33 0 -93 -12t-80 -26q-19 -13 -34 -72.5t-31.5 -111t-42.5 -53.5q-42 26 -56 44v383z" />
    <glyph glyph-name="text_width" unicode="&#xf035;" 
d="M81 1407l54 -27q12 -5 211 -5q44 0 132 2t132 2q70 0 246.5 1t304.5 0.5t247 -4.5q33 -1 56 31l42 1q4 0 14 -0.5t14 -0.5q2 -112 2 -336q0 -80 -5 -109q-39 -14 -68 -18q-25 44 -54 128q-3 9 -11 47.5t-15 73.5t-7 36q-10 13 -27 19q-5 2 -66 2q-30 0 -93 1t-103 1
t-94 -2t-96 -7q-9 -81 -8 -136l1 -152v52q0 -55 1 -154t1.5 -180t0.5 -153q0 -16 -2.5 -71.5t0 -91.5t12.5 -69q40 -21 124 -42.5t120 -37.5q5 -40 5 -50q0 -14 -3 -29l-34 -1q-76 -2 -218 8t-207 10q-50 0 -151 -9t-152 -9q-3 51 -3 52v9q17 27 61.5 43t98.5 29t78 27
q7 16 11.5 74t6 145.5t1.5 155t-0.5 153.5t-0.5 89q0 7 -2.5 21.5t-2.5 22.5q0 7 0.5 44t1 73t0 76.5t-3 67.5t-6.5 32q-11 12 -162 12q-41 0 -163 -13.5t-138 -24.5q-19 -12 -34 -71.5t-31.5 -111.5t-42.5 -54q-42 26 -56 44v383zM1310 125q12 0 42 -19.5t57.5 -41.5
t59.5 -49t36 -30q26 -21 26 -49t-26 -49q-4 -3 -36 -30t-59.5 -49t-57.5 -41.5t-42 -19.5q-13 0 -20.5 10.5t-10 28.5t-2.5 33.5t1.5 33t1.5 19.5h-1024q0 -2 1.5 -19.5t1.5 -33t-2.5 -33.5t-10 -28.5t-20.5 -10.5q-12 0 -42 19.5t-57.5 41.5t-59.5 49t-36 30q-26 21 -26 49
t26 49q4 3 36 30t59.5 49t57.5 41.5t42 19.5q13 0 20.5 -10.5t10 -28.5t2.5 -33.5t-1.5 -33t-1.5 -19.5h1024q0 2 -1.5 19.5t-1.5 33t2.5 33.5t10 28.5t20.5 10.5z" />
    <glyph glyph-name="align_left" unicode="&#xf036;" horiz-adv-x="1792" 
d="M1792 192v-128q0 -26 -19 -45t-45 -19h-1664q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1664q26 0 45 -19t19 -45zM1408 576v-128q0 -26 -19 -45t-45 -19h-1280q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1280q26 0 45 -19t19 -45zM1664 960v-128q0 -26 -19 -45
t-45 -19h-1536q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1536q26 0 45 -19t19 -45zM1280 1344v-128q0 -26 -19 -45t-45 -19h-1152q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1152q26 0 45 -19t19 -45z" />
    <glyph glyph-name="align_center" unicode="&#xf037;" horiz-adv-x="1792" 
d="M1792 192v-128q0 -26 -19 -45t-45 -19h-1664q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1664q26 0 45 -19t19 -45zM1408 576v-128q0 -26 -19 -45t-45 -19h-896q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h896q26 0 45 -19t19 -45zM1664 960v-128q0 -26 -19 -45t-45 -19
h-1408q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1408q26 0 45 -19t19 -45zM1280 1344v-128q0 -26 -19 -45t-45 -19h-640q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h640q26 0 45 -19t19 -45z" />
    <glyph glyph-name="align_right" unicode="&#xf038;" horiz-adv-x="1792" 
d="M1792 192v-128q0 -26 -19 -45t-45 -19h-1664q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1664q26 0 45 -19t19 -45zM1792 576v-128q0 -26 -19 -45t-45 -19h-1280q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1280q26 0 45 -19t19 -45zM1792 960v-128q0 -26 -19 -45
t-45 -19h-1536q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1536q26 0 45 -19t19 -45zM1792 1344v-128q0 -26 -19 -45t-45 -19h-1152q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1152q26 0 45 -19t19 -45z" />
    <glyph glyph-name="align_justify" unicode="&#xf039;" horiz-adv-x="1792" 
d="M1792 192v-128q0 -26 -19 -45t-45 -19h-1664q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1664q26 0 45 -19t19 -45zM1792 576v-128q0 -26 -19 -45t-45 -19h-1664q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1664q26 0 45 -19t19 -45zM1792 960v-128q0 -26 -19 -45
t-45 -19h-1664q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1664q26 0 45 -19t19 -45zM1792 1344v-128q0 -26 -19 -45t-45 -19h-1664q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1664q26 0 45 -19t19 -45z" />
    <glyph glyph-name="list" unicode="&#xf03a;" horiz-adv-x="1792" 
d="M256 224v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-192q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h192q13 0 22.5 -9.5t9.5 -22.5zM256 608v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-192q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h192q13 0 22.5 -9.5
t9.5 -22.5zM256 992v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-192q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h192q13 0 22.5 -9.5t9.5 -22.5zM1792 224v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1344q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1344
q13 0 22.5 -9.5t9.5 -22.5zM256 1376v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-192q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h192q13 0 22.5 -9.5t9.5 -22.5zM1792 608v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1344q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5
t22.5 9.5h1344q13 0 22.5 -9.5t9.5 -22.5zM1792 992v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1344q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1344q13 0 22.5 -9.5t9.5 -22.5zM1792 1376v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1344q-13 0 -22.5 9.5t-9.5 22.5v192
q0 13 9.5 22.5t22.5 9.5h1344q13 0 22.5 -9.5t9.5 -22.5z" />
    <glyph glyph-name="indent_left" unicode="&#xf03b;" horiz-adv-x="1792" 
d="M384 992v-576q0 -13 -9.5 -22.5t-22.5 -9.5q-14 0 -23 9l-288 288q-9 9 -9 23t9 23l288 288q9 9 23 9q13 0 22.5 -9.5t9.5 -22.5zM1792 224v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1728q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1728q13 0 22.5 -9.5
t9.5 -22.5zM1792 608v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1088q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1088q13 0 22.5 -9.5t9.5 -22.5zM1792 992v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1088q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1088
q13 0 22.5 -9.5t9.5 -22.5zM1792 1376v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1728q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1728q13 0 22.5 -9.5t9.5 -22.5z" />
    <glyph glyph-name="indent_right" unicode="&#xf03c;" horiz-adv-x="1792" 
d="M352 704q0 -14 -9 -23l-288 -288q-9 -9 -23 -9q-13 0 -22.5 9.5t-9.5 22.5v576q0 13 9.5 22.5t22.5 9.5q14 0 23 -9l288 -288q9 -9 9 -23zM1792 224v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1728q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1728q13 0 22.5 -9.5
t9.5 -22.5zM1792 608v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1088q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1088q13 0 22.5 -9.5t9.5 -22.5zM1792 992v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1088q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1088
q13 0 22.5 -9.5t9.5 -22.5zM1792 1376v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1728q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1728q13 0 22.5 -9.5t9.5 -22.5z" />
    <glyph glyph-name="facetime_video" unicode="&#xf03d;" horiz-adv-x="1792" 
d="M1792 1184v-1088q0 -42 -39 -59q-13 -5 -25 -5q-27 0 -45 19l-403 403v-166q0 -119 -84.5 -203.5t-203.5 -84.5h-704q-119 0 -203.5 84.5t-84.5 203.5v704q0 119 84.5 203.5t203.5 84.5h704q119 0 203.5 -84.5t84.5 -203.5v-165l403 402q18 19 45 19q12 0 25 -5
q39 -17 39 -59z" />
    <glyph glyph-name="picture" unicode="&#xf03e;" horiz-adv-x="1920" 
d="M640 960q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM1664 576v-448h-1408v192l320 320l160 -160l512 512zM1760 1280h-1600q-13 0 -22.5 -9.5t-9.5 -22.5v-1216q0 -13 9.5 -22.5t22.5 -9.5h1600q13 0 22.5 9.5t9.5 22.5v1216
q0 13 -9.5 22.5t-22.5 9.5zM1920 1248v-1216q0 -66 -47 -113t-113 -47h-1600q-66 0 -113 47t-47 113v1216q0 66 47 113t113 47h1600q66 0 113 -47t47 -113z" />
    <glyph glyph-name="pencil" unicode="&#xf040;" 
d="M363 0l91 91l-235 235l-91 -91v-107h128v-128h107zM886 928q0 22 -22 22q-10 0 -17 -7l-542 -542q-7 -7 -7 -17q0 -22 22 -22q10 0 17 7l542 542q7 7 7 17zM832 1120l416 -416l-832 -832h-416v416zM1515 1024q0 -53 -37 -90l-166 -166l-416 416l166 165q36 38 90 38
q53 0 91 -38l235 -234q37 -39 37 -91z" />
    <glyph glyph-name="map_marker" unicode="&#xf041;" horiz-adv-x="1024" 
d="M768 896q0 106 -75 181t-181 75t-181 -75t-75 -181t75 -181t181 -75t181 75t75 181zM1024 896q0 -109 -33 -179l-364 -774q-16 -33 -47.5 -52t-67.5 -19t-67.5 19t-46.5 52l-365 774q-33 70 -33 179q0 212 150 362t362 150t362 -150t150 -362z" />
    <glyph glyph-name="adjust" unicode="&#xf042;" 
d="M768 96v1088q-148 0 -273 -73t-198 -198t-73 -273t73 -273t198 -198t273 -73zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="tint" unicode="&#xf043;" horiz-adv-x="1024" 
d="M512 384q0 36 -20 69q-1 1 -15.5 22.5t-25.5 38t-25 44t-21 50.5q-4 16 -21 16t-21 -16q-7 -23 -21 -50.5t-25 -44t-25.5 -38t-15.5 -22.5q-20 -33 -20 -69q0 -53 37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1024 512q0 -212 -150 -362t-362 -150t-362 150t-150 362
q0 145 81 275q6 9 62.5 90.5t101 151t99.5 178t83 201.5q9 30 34 47t51 17t51.5 -17t33.5 -47q28 -93 83 -201.5t99.5 -178t101 -151t62.5 -90.5q81 -127 81 -275z" />
    <glyph glyph-name="edit" unicode="&#xf044;" horiz-adv-x="1792" 
d="M888 352l116 116l-152 152l-116 -116v-56h96v-96h56zM1328 1072q-16 16 -33 -1l-350 -350q-17 -17 -1 -33t33 1l350 350q17 17 1 33zM1408 478v-190q0 -119 -84.5 -203.5t-203.5 -84.5h-832q-119 0 -203.5 84.5t-84.5 203.5v832q0 119 84.5 203.5t203.5 84.5h832
q63 0 117 -25q15 -7 18 -23q3 -17 -9 -29l-49 -49q-14 -14 -32 -8q-23 6 -45 6h-832q-66 0 -113 -47t-47 -113v-832q0 -66 47 -113t113 -47h832q66 0 113 47t47 113v126q0 13 9 22l64 64q15 15 35 7t20 -29zM1312 1216l288 -288l-672 -672h-288v288zM1756 1084l-92 -92
l-288 288l92 92q28 28 68 28t68 -28l152 -152q28 -28 28 -68t-28 -68z" />
    <glyph glyph-name="share" unicode="&#xf045;" horiz-adv-x="1664" 
d="M1408 547v-259q0 -119 -84.5 -203.5t-203.5 -84.5h-832q-119 0 -203.5 84.5t-84.5 203.5v832q0 119 84.5 203.5t203.5 84.5h255v0q13 0 22.5 -9.5t9.5 -22.5q0 -27 -26 -32q-77 -26 -133 -60q-10 -4 -16 -4h-112q-66 0 -113 -47t-47 -113v-832q0 -66 47 -113t113 -47h832
q66 0 113 47t47 113v214q0 19 18 29q28 13 54 37q16 16 35 8q21 -9 21 -29zM1645 1043l-384 -384q-18 -19 -45 -19q-12 0 -25 5q-39 17 -39 59v192h-160q-323 0 -438 -131q-119 -137 -74 -473q3 -23 -20 -34q-8 -2 -12 -2q-16 0 -26 13q-10 14 -21 31t-39.5 68.5t-49.5 99.5
t-38.5 114t-17.5 122q0 49 3.5 91t14 90t28 88t47 81.5t68.5 74t94.5 61.5t124.5 48.5t159.5 30.5t196.5 11h160v192q0 42 39 59q13 5 25 5q26 0 45 -19l384 -384q19 -19 19 -45t-19 -45z" />
    <glyph glyph-name="check" unicode="&#xf046;" horiz-adv-x="1664" 
d="M1408 606v-318q0 -119 -84.5 -203.5t-203.5 -84.5h-832q-119 0 -203.5 84.5t-84.5 203.5v832q0 119 84.5 203.5t203.5 84.5h832q63 0 117 -25q15 -7 18 -23q3 -17 -9 -29l-49 -49q-10 -10 -23 -10q-3 0 -9 2q-23 6 -45 6h-832q-66 0 -113 -47t-47 -113v-832
q0 -66 47 -113t113 -47h832q66 0 113 47t47 113v254q0 13 9 22l64 64q10 10 23 10q6 0 12 -3q20 -8 20 -29zM1639 1095l-814 -814q-24 -24 -57 -24t-57 24l-430 430q-24 24 -24 57t24 57l110 110q24 24 57 24t57 -24l263 -263l647 647q24 24 57 24t57 -24l110 -110
q24 -24 24 -57t-24 -57z" />
    <glyph glyph-name="move" unicode="&#xf047;" horiz-adv-x="1792" 
d="M1792 640q0 -26 -19 -45l-256 -256q-19 -19 -45 -19t-45 19t-19 45v128h-384v-384h128q26 0 45 -19t19 -45t-19 -45l-256 -256q-19 -19 -45 -19t-45 19l-256 256q-19 19 -19 45t19 45t45 19h128v384h-384v-128q0 -26 -19 -45t-45 -19t-45 19l-256 256q-19 19 -19 45
t19 45l256 256q19 19 45 19t45 -19t19 -45v-128h384v384h-128q-26 0 -45 19t-19 45t19 45l256 256q19 19 45 19t45 -19l256 -256q19 -19 19 -45t-19 -45t-45 -19h-128v-384h384v128q0 26 19 45t45 19t45 -19l256 -256q19 -19 19 -45z" />
    <glyph glyph-name="step_backward" unicode="&#xf048;" horiz-adv-x="1024" 
d="M979 1395q19 19 32 13t13 -32v-1472q0 -26 -13 -32t-32 13l-710 710q-9 9 -13 19v-678q0 -26 -19 -45t-45 -19h-128q-26 0 -45 19t-19 45v1408q0 26 19 45t45 19h128q26 0 45 -19t19 -45v-678q4 10 13 19z" />
    <glyph glyph-name="fast_backward" unicode="&#xf049;" horiz-adv-x="1792" 
d="M1747 1395q19 19 32 13t13 -32v-1472q0 -26 -13 -32t-32 13l-710 710q-9 9 -13 19v-710q0 -26 -13 -32t-32 13l-710 710q-9 9 -13 19v-678q0 -26 -19 -45t-45 -19h-128q-26 0 -45 19t-19 45v1408q0 26 19 45t45 19h128q26 0 45 -19t19 -45v-678q4 10 13 19l710 710
q19 19 32 13t13 -32v-710q4 10 13 19z" />
    <glyph glyph-name="backward" unicode="&#xf04a;" horiz-adv-x="1664" 
d="M1619 1395q19 19 32 13t13 -32v-1472q0 -26 -13 -32t-32 13l-710 710q-9 9 -13 19v-710q0 -26 -13 -32t-32 13l-710 710q-19 19 -19 45t19 45l710 710q19 19 32 13t13 -32v-710q4 10 13 19z" />
    <glyph glyph-name="play" unicode="&#xf04b;" horiz-adv-x="1408" 
d="M1384 609l-1328 -738q-23 -13 -39.5 -3t-16.5 36v1472q0 26 16.5 36t39.5 -3l1328 -738q23 -13 23 -31t-23 -31z" />
    <glyph glyph-name="pause" unicode="&#xf04c;" 
d="M1536 1344v-1408q0 -26 -19 -45t-45 -19h-512q-26 0 -45 19t-19 45v1408q0 26 19 45t45 19h512q26 0 45 -19t19 -45zM640 1344v-1408q0 -26 -19 -45t-45 -19h-512q-26 0 -45 19t-19 45v1408q0 26 19 45t45 19h512q26 0 45 -19t19 -45z" />
    <glyph glyph-name="stop" unicode="&#xf04d;" 
d="M1536 1344v-1408q0 -26 -19 -45t-45 -19h-1408q-26 0 -45 19t-19 45v1408q0 26 19 45t45 19h1408q26 0 45 -19t19 -45z" />
    <glyph glyph-name="forward" unicode="&#xf04e;" horiz-adv-x="1664" 
d="M45 -115q-19 -19 -32 -13t-13 32v1472q0 26 13 32t32 -13l710 -710q9 -9 13 -19v710q0 26 13 32t32 -13l710 -710q19 -19 19 -45t-19 -45l-710 -710q-19 -19 -32 -13t-13 32v710q-4 -10 -13 -19z" />
    <glyph glyph-name="fast_forward" unicode="&#xf050;" horiz-adv-x="1792" 
d="M45 -115q-19 -19 -32 -13t-13 32v1472q0 26 13 32t32 -13l710 -710q9 -9 13 -19v710q0 26 13 32t32 -13l710 -710q9 -9 13 -19v678q0 26 19 45t45 19h128q26 0 45 -19t19 -45v-1408q0 -26 -19 -45t-45 -19h-128q-26 0 -45 19t-19 45v678q-4 -10 -13 -19l-710 -710
q-19 -19 -32 -13t-13 32v710q-4 -10 -13 -19z" />
    <glyph glyph-name="step_forward" unicode="&#xf051;" horiz-adv-x="1024" 
d="M45 -115q-19 -19 -32 -13t-13 32v1472q0 26 13 32t32 -13l710 -710q9 -9 13 -19v678q0 26 19 45t45 19h128q26 0 45 -19t19 -45v-1408q0 -26 -19 -45t-45 -19h-128q-26 0 -45 19t-19 45v678q-4 -10 -13 -19z" />
    <glyph glyph-name="eject" unicode="&#xf052;" horiz-adv-x="1538" 
d="M14 557l710 710q19 19 45 19t45 -19l710 -710q19 -19 13 -32t-32 -13h-1472q-26 0 -32 13t13 32zM1473 0h-1408q-26 0 -45 19t-19 45v256q0 26 19 45t45 19h1408q26 0 45 -19t19 -45v-256q0 -26 -19 -45t-45 -19z" />
    <glyph glyph-name="chevron_left" unicode="&#xf053;" horiz-adv-x="1280" 
d="M1171 1235l-531 -531l531 -531q19 -19 19 -45t-19 -45l-166 -166q-19 -19 -45 -19t-45 19l-742 742q-19 19 -19 45t19 45l742 742q19 19 45 19t45 -19l166 -166q19 -19 19 -45t-19 -45z" />
    <glyph glyph-name="chevron_right" unicode="&#xf054;" horiz-adv-x="1280" 
d="M1107 659l-742 -742q-19 -19 -45 -19t-45 19l-166 166q-19 19 -19 45t19 45l531 531l-531 531q-19 19 -19 45t19 45l166 166q19 19 45 19t45 -19l742 -742q19 -19 19 -45t-19 -45z" />
    <glyph glyph-name="plus_sign" unicode="&#xf055;" 
d="M1216 576v128q0 26 -19 45t-45 19h-256v256q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-256h-256q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h256v-256q0 -26 19 -45t45 -19h128q26 0 45 19t19 45v256h256q26 0 45 19t19 45zM1536 640q0 -209 -103 -385.5
t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="minus_sign" unicode="&#xf056;" 
d="M1216 576v128q0 26 -19 45t-45 19h-768q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h768q26 0 45 19t19 45zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5
t103 -385.5z" />
    <glyph glyph-name="remove_sign" unicode="&#xf057;" 
d="M1149 414q0 26 -19 45l-181 181l181 181q19 19 19 45q0 27 -19 46l-90 90q-19 19 -46 19q-26 0 -45 -19l-181 -181l-181 181q-19 19 -45 19q-27 0 -46 -19l-90 -90q-19 -19 -19 -46q0 -26 19 -45l181 -181l-181 -181q-19 -19 -19 -45q0 -27 19 -46l90 -90q19 -19 46 -19
q26 0 45 19l181 181l181 -181q19 -19 45 -19q27 0 46 19l90 90q19 19 19 46zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="ok_sign" unicode="&#xf058;" 
d="M1284 802q0 28 -18 46l-91 90q-19 19 -45 19t-45 -19l-408 -407l-226 226q-19 19 -45 19t-45 -19l-91 -90q-18 -18 -18 -46q0 -27 18 -45l362 -362q19 -19 45 -19q27 0 46 19l543 543q18 18 18 45zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103
t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="question_sign" unicode="&#xf059;" 
d="M896 160v192q0 14 -9 23t-23 9h-192q-14 0 -23 -9t-9 -23v-192q0 -14 9 -23t23 -9h192q14 0 23 9t9 23zM1152 832q0 88 -55.5 163t-138.5 116t-170 41q-243 0 -371 -213q-15 -24 8 -42l132 -100q7 -6 19 -6q16 0 25 12q53 68 86 92q34 24 86 24q48 0 85.5 -26t37.5 -59
q0 -38 -20 -61t-68 -45q-63 -28 -115.5 -86.5t-52.5 -125.5v-36q0 -14 9 -23t23 -9h192q14 0 23 9t9 23q0 19 21.5 49.5t54.5 49.5q32 18 49 28.5t46 35t44.5 48t28 60.5t12.5 81zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5
t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="info_sign" unicode="&#xf05a;" 
d="M1024 160v160q0 14 -9 23t-23 9h-96v512q0 14 -9 23t-23 9h-320q-14 0 -23 -9t-9 -23v-160q0 -14 9 -23t23 -9h96v-320h-96q-14 0 -23 -9t-9 -23v-160q0 -14 9 -23t23 -9h448q14 0 23 9t9 23zM896 1056v160q0 14 -9 23t-23 9h-192q-14 0 -23 -9t-9 -23v-160q0 -14 9 -23
t23 -9h192q14 0 23 9t9 23zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="screenshot" unicode="&#xf05b;" 
d="M1197 512h-109q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h109q-32 108 -112.5 188.5t-188.5 112.5v-109q0 -26 -19 -45t-45 -19h-128q-26 0 -45 19t-19 45v109q-108 -32 -188.5 -112.5t-112.5 -188.5h109q26 0 45 -19t19 -45v-128q0 -26 -19 -45t-45 -19h-109
q32 -108 112.5 -188.5t188.5 -112.5v109q0 26 19 45t45 19h128q26 0 45 -19t19 -45v-109q108 32 188.5 112.5t112.5 188.5zM1536 704v-128q0 -26 -19 -45t-45 -19h-143q-37 -161 -154.5 -278.5t-278.5 -154.5v-143q0 -26 -19 -45t-45 -19h-128q-26 0 -45 19t-19 45v143
q-161 37 -278.5 154.5t-154.5 278.5h-143q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h143q37 161 154.5 278.5t278.5 154.5v143q0 26 19 45t45 19h128q26 0 45 -19t19 -45v-143q161 -37 278.5 -154.5t154.5 -278.5h143q26 0 45 -19t19 -45z" />
    <glyph glyph-name="remove_circle" unicode="&#xf05c;" 
d="M1097 457l-146 -146q-10 -10 -23 -10t-23 10l-137 137l-137 -137q-10 -10 -23 -10t-23 10l-146 146q-10 10 -10 23t10 23l137 137l-137 137q-10 10 -10 23t10 23l146 146q10 10 23 10t23 -10l137 -137l137 137q10 10 23 10t23 -10l146 -146q10 -10 10 -23t-10 -23
l-137 -137l137 -137q10 -10 10 -23t-10 -23zM1312 640q0 148 -73 273t-198 198t-273 73t-273 -73t-198 -198t-73 -273t73 -273t198 -198t273 -73t273 73t198 198t73 273zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5
t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="ok_circle" unicode="&#xf05d;" 
d="M1171 723l-422 -422q-19 -19 -45 -19t-45 19l-294 294q-19 19 -19 45t19 45l102 102q19 19 45 19t45 -19l147 -147l275 275q19 19 45 19t45 -19l102 -102q19 -19 19 -45t-19 -45zM1312 640q0 148 -73 273t-198 198t-273 73t-273 -73t-198 -198t-73 -273t73 -273t198 -198
t273 -73t273 73t198 198t73 273zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="ban_circle" unicode="&#xf05e;" 
d="M1312 643q0 161 -87 295l-754 -753q137 -89 297 -89q111 0 211.5 43.5t173.5 116.5t116 174.5t43 212.5zM313 344l755 754q-135 91 -300 91q-148 0 -273 -73t-198 -199t-73 -274q0 -162 89 -299zM1536 643q0 -157 -61 -300t-163.5 -246t-245 -164t-298.5 -61t-298.5 61
t-245 164t-163.5 246t-61 300t61 299.5t163.5 245.5t245 164t298.5 61t298.5 -61t245 -164t163.5 -245.5t61 -299.5z" />
    <glyph glyph-name="arrow_left" unicode="&#xf060;" 
d="M1536 640v-128q0 -53 -32.5 -90.5t-84.5 -37.5h-704l293 -294q38 -36 38 -90t-38 -90l-75 -76q-37 -37 -90 -37q-52 0 -91 37l-651 652q-37 37 -37 90q0 52 37 91l651 650q38 38 91 38q52 0 90 -38l75 -74q38 -38 38 -91t-38 -91l-293 -293h704q52 0 84.5 -37.5
t32.5 -90.5z" />
    <glyph glyph-name="arrow_right" unicode="&#xf061;" 
d="M1472 576q0 -54 -37 -91l-651 -651q-39 -37 -91 -37q-51 0 -90 37l-75 75q-38 38 -38 91t38 91l293 293h-704q-52 0 -84.5 37.5t-32.5 90.5v128q0 53 32.5 90.5t84.5 37.5h704l-293 294q-38 36 -38 90t38 90l75 75q38 38 90 38q53 0 91 -38l651 -651q37 -35 37 -90z" />
    <glyph glyph-name="arrow_up" unicode="&#xf062;" horiz-adv-x="1664" 
d="M1611 565q0 -51 -37 -90l-75 -75q-38 -38 -91 -38q-54 0 -90 38l-294 293v-704q0 -52 -37.5 -84.5t-90.5 -32.5h-128q-53 0 -90.5 32.5t-37.5 84.5v704l-294 -293q-36 -38 -90 -38t-90 38l-75 75q-38 38 -38 90q0 53 38 91l651 651q35 37 90 37q54 0 91 -37l651 -651
q37 -39 37 -91z" />
    <glyph glyph-name="arrow_down" unicode="&#xf063;" horiz-adv-x="1664" 
d="M1611 704q0 -53 -37 -90l-651 -652q-39 -37 -91 -37q-53 0 -90 37l-651 652q-38 36 -38 90q0 53 38 91l74 75q39 37 91 37q53 0 90 -37l294 -294v704q0 52 38 90t90 38h128q52 0 90 -38t38 -90v-704l294 294q37 37 90 37q52 0 91 -37l75 -75q37 -39 37 -91z" />
    <glyph glyph-name="share_alt" unicode="&#xf064;" horiz-adv-x="1792" 
d="M1792 896q0 -26 -19 -45l-512 -512q-19 -19 -45 -19t-45 19t-19 45v256h-224q-98 0 -175.5 -6t-154 -21.5t-133 -42.5t-105.5 -69.5t-80 -101t-48.5 -138.5t-17.5 -181q0 -55 5 -123q0 -6 2.5 -23.5t2.5 -26.5q0 -15 -8.5 -25t-23.5 -10q-16 0 -28 17q-7 9 -13 22
t-13.5 30t-10.5 24q-127 285 -127 451q0 199 53 333q162 403 875 403h224v256q0 26 19 45t45 19t45 -19l512 -512q19 -19 19 -45z" />
    <glyph glyph-name="resize_full" unicode="&#xf065;" 
d="M755 480q0 -13 -10 -23l-332 -332l144 -144q19 -19 19 -45t-19 -45t-45 -19h-448q-26 0 -45 19t-19 45v448q0 26 19 45t45 19t45 -19l144 -144l332 332q10 10 23 10t23 -10l114 -114q10 -10 10 -23zM1536 1344v-448q0 -26 -19 -45t-45 -19t-45 19l-144 144l-332 -332
q-10 -10 -23 -10t-23 10l-114 114q-10 10 -10 23t10 23l332 332l-144 144q-19 19 -19 45t19 45t45 19h448q26 0 45 -19t19 -45z" />
    <glyph glyph-name="resize_small" unicode="&#xf066;" 
d="M768 576v-448q0 -26 -19 -45t-45 -19t-45 19l-144 144l-332 -332q-10 -10 -23 -10t-23 10l-114 114q-10 10 -10 23t10 23l332 332l-144 144q-19 19 -19 45t19 45t45 19h448q26 0 45 -19t19 -45zM1523 1248q0 -13 -10 -23l-332 -332l144 -144q19 -19 19 -45t-19 -45
t-45 -19h-448q-26 0 -45 19t-19 45v448q0 26 19 45t45 19t45 -19l144 -144l332 332q10 10 23 10t23 -10l114 -114q10 -10 10 -23z" />
    <glyph glyph-name="plus" unicode="&#xf067;" horiz-adv-x="1408" 
d="M1408 800v-192q0 -40 -28 -68t-68 -28h-416v-416q0 -40 -28 -68t-68 -28h-192q-40 0 -68 28t-28 68v416h-416q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h416v416q0 40 28 68t68 28h192q40 0 68 -28t28 -68v-416h416q40 0 68 -28t28 -68z" />
    <glyph glyph-name="minus" unicode="&#xf068;" horiz-adv-x="1408" 
d="M1408 800v-192q0 -40 -28 -68t-68 -28h-1216q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h1216q40 0 68 -28t28 -68z" />
    <glyph glyph-name="asterisk" unicode="&#xf069;" horiz-adv-x="1664" 
d="M1482 486q46 -26 59.5 -77.5t-12.5 -97.5l-64 -110q-26 -46 -77.5 -59.5t-97.5 12.5l-266 153v-307q0 -52 -38 -90t-90 -38h-128q-52 0 -90 38t-38 90v307l-266 -153q-46 -26 -97.5 -12.5t-77.5 59.5l-64 110q-26 46 -12.5 97.5t59.5 77.5l266 154l-266 154
q-46 26 -59.5 77.5t12.5 97.5l64 110q26 46 77.5 59.5t97.5 -12.5l266 -153v307q0 52 38 90t90 38h128q52 0 90 -38t38 -90v-307l266 153q46 26 97.5 12.5t77.5 -59.5l64 -110q26 -46 12.5 -97.5t-59.5 -77.5l-266 -154z" />
    <glyph glyph-name="exclamation_sign" unicode="&#xf06a;" 
d="M768 1408q209 0 385.5 -103t279.5 -279.5t103 -385.5t-103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103zM896 161v190q0 14 -9 23.5t-22 9.5h-192q-13 0 -23 -10t-10 -23v-190q0 -13 10 -23t23 -10h192
q13 0 22 9.5t9 23.5zM894 505l18 621q0 12 -10 18q-10 8 -24 8h-220q-14 0 -24 -8q-10 -6 -10 -18l17 -621q0 -10 10 -17.5t24 -7.5h185q14 0 23.5 7.5t10.5 17.5z" />
    <glyph glyph-name="gift" unicode="&#xf06b;" 
d="M928 180v56v468v192h-320v-192v-468v-56q0 -25 18 -38.5t46 -13.5h192q28 0 46 13.5t18 38.5zM472 1024h195l-126 161q-26 31 -69 31q-40 0 -68 -28t-28 -68t28 -68t68 -28zM1160 1120q0 40 -28 68t-68 28q-43 0 -69 -31l-125 -161h194q40 0 68 28t28 68zM1536 864v-320
q0 -14 -9 -23t-23 -9h-96v-416q0 -40 -28 -68t-68 -28h-1088q-40 0 -68 28t-28 68v416h-96q-14 0 -23 9t-9 23v320q0 14 9 23t23 9h440q-93 0 -158.5 65.5t-65.5 158.5t65.5 158.5t158.5 65.5q107 0 168 -77l128 -165l128 165q61 77 168 77q93 0 158.5 -65.5t65.5 -158.5
t-65.5 -158.5t-158.5 -65.5h440q14 0 23 -9t9 -23z" />
    <glyph glyph-name="leaf" unicode="&#xf06c;" horiz-adv-x="1792" 
d="M1280 832q0 26 -19 45t-45 19q-172 0 -318 -49.5t-259.5 -134t-235.5 -219.5q-19 -21 -19 -45q0 -26 19 -45t45 -19q24 0 45 19q27 24 74 71t67 66q137 124 268.5 176t313.5 52q26 0 45 19t19 45zM1792 1030q0 -95 -20 -193q-46 -224 -184.5 -383t-357.5 -268
q-214 -108 -438 -108q-148 0 -286 47q-15 5 -88 42t-96 37q-16 0 -39.5 -32t-45 -70t-52.5 -70t-60 -32q-43 0 -63.5 17.5t-45.5 59.5q-2 4 -6 11t-5.5 10t-3 9.5t-1.5 13.5q0 35 31 73.5t68 65.5t68 56t31 48q0 4 -14 38t-16 44q-9 51 -9 104q0 115 43.5 220t119 184.5
t170.5 139t204 95.5q55 18 145 25.5t179.5 9t178.5 6t163.5 24t113.5 56.5l29.5 29.5t29.5 28t27 20t36.5 16t43.5 4.5q39 0 70.5 -46t47.5 -112t24 -124t8 -96z" />
    <glyph glyph-name="fire" unicode="&#xf06d;" horiz-adv-x="1408" 
d="M1408 -160v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-1344q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h1344q13 0 22.5 -9.5t9.5 -22.5zM1152 896q0 -78 -24.5 -144t-64 -112.5t-87.5 -88t-96 -77.5t-87.5 -72t-64 -81.5t-24.5 -96.5q0 -96 67 -224l-4 1l1 -1
q-90 41 -160 83t-138.5 100t-113.5 122.5t-72.5 150.5t-27.5 184q0 78 24.5 144t64 112.5t87.5 88t96 77.5t87.5 72t64 81.5t24.5 96.5q0 94 -66 224l3 -1l-1 1q90 -41 160 -83t138.5 -100t113.5 -122.5t72.5 -150.5t27.5 -184z" />
    <glyph glyph-name="eye_open" unicode="&#xf06e;" horiz-adv-x="1792" 
d="M1664 576q-152 236 -381 353q61 -104 61 -225q0 -185 -131.5 -316.5t-316.5 -131.5t-316.5 131.5t-131.5 316.5q0 121 61 225q-229 -117 -381 -353q133 -205 333.5 -326.5t434.5 -121.5t434.5 121.5t333.5 326.5zM944 960q0 20 -14 34t-34 14q-125 0 -214.5 -89.5
t-89.5 -214.5q0 -20 14 -34t34 -14t34 14t14 34q0 86 61 147t147 61q20 0 34 14t14 34zM1792 576q0 -34 -20 -69q-140 -230 -376.5 -368.5t-499.5 -138.5t-499.5 139t-376.5 368q-20 35 -20 69t20 69q140 229 376.5 368t499.5 139t499.5 -139t376.5 -368q20 -35 20 -69z" />
    <glyph glyph-name="eye_close" unicode="&#xf070;" horiz-adv-x="1792" 
d="M555 201l78 141q-87 63 -136 159t-49 203q0 121 61 225q-229 -117 -381 -353q167 -258 427 -375zM944 960q0 20 -14 34t-34 14q-125 0 -214.5 -89.5t-89.5 -214.5q0 -20 14 -34t34 -14t34 14t14 34q0 86 61 147t147 61q20 0 34 14t14 34zM1307 1151q0 -7 -1 -9
q-106 -189 -316 -567t-315 -566l-49 -89q-10 -16 -28 -16q-12 0 -134 70q-16 10 -16 28q0 12 44 87q-143 65 -263.5 173t-208.5 245q-20 31 -20 69t20 69q153 235 380 371t496 136q89 0 180 -17l54 97q10 16 28 16q5 0 18 -6t31 -15.5t33 -18.5t31.5 -18.5t19.5 -11.5
q16 -10 16 -27zM1344 704q0 -139 -79 -253.5t-209 -164.5l280 502q8 -45 8 -84zM1792 576q0 -35 -20 -69q-39 -64 -109 -145q-150 -172 -347.5 -267t-419.5 -95l74 132q212 18 392.5 137t301.5 307q-115 179 -282 294l63 112q95 -64 182.5 -153t144.5 -184q20 -34 20 -69z
" />
    <glyph glyph-name="warning_sign" unicode="&#xf071;" horiz-adv-x="1792" 
d="M1024 161v190q0 14 -9.5 23.5t-22.5 9.5h-192q-13 0 -22.5 -9.5t-9.5 -23.5v-190q0 -14 9.5 -23.5t22.5 -9.5h192q13 0 22.5 9.5t9.5 23.5zM1022 535l18 459q0 12 -10 19q-13 11 -24 11h-220q-11 0 -24 -11q-10 -7 -10 -21l17 -457q0 -10 10 -16.5t24 -6.5h185
q14 0 23.5 6.5t10.5 16.5zM1008 1469l768 -1408q35 -63 -2 -126q-17 -29 -46.5 -46t-63.5 -17h-1536q-34 0 -63.5 17t-46.5 46q-37 63 -2 126l768 1408q17 31 47 49t65 18t65 -18t47 -49z" />
    <glyph glyph-name="plane" unicode="&#xf072;" horiz-adv-x="1408" 
d="M1376 1376q44 -52 12 -148t-108 -172l-161 -161l160 -696q5 -19 -12 -33l-128 -96q-7 -6 -19 -6q-4 0 -7 1q-15 3 -21 16l-279 508l-259 -259l53 -194q5 -17 -8 -31l-96 -96q-9 -9 -23 -9h-2q-15 2 -24 13l-189 252l-252 189q-11 7 -13 23q-1 13 9 25l96 97q9 9 23 9
q6 0 8 -1l194 -53l259 259l-508 279q-14 8 -17 24q-2 16 9 27l128 128q14 13 30 8l665 -159l160 160q76 76 172 108t148 -12z" />
    <glyph glyph-name="calendar" unicode="&#xf073;" horiz-adv-x="1664" 
d="M128 -128h288v288h-288v-288zM480 -128h320v288h-320v-288zM128 224h288v320h-288v-320zM480 224h320v320h-320v-320zM128 608h288v288h-288v-288zM864 -128h320v288h-320v-288zM480 608h320v288h-320v-288zM1248 -128h288v288h-288v-288zM864 224h320v320h-320v-320z
M512 1088v288q0 13 -9.5 22.5t-22.5 9.5h-64q-13 0 -22.5 -9.5t-9.5 -22.5v-288q0 -13 9.5 -22.5t22.5 -9.5h64q13 0 22.5 9.5t9.5 22.5zM1248 224h288v320h-288v-320zM864 608h320v288h-320v-288zM1248 608h288v288h-288v-288zM1280 1088v288q0 13 -9.5 22.5t-22.5 9.5h-64
q-13 0 -22.5 -9.5t-9.5 -22.5v-288q0 -13 9.5 -22.5t22.5 -9.5h64q13 0 22.5 9.5t9.5 22.5zM1664 1152v-1280q0 -52 -38 -90t-90 -38h-1408q-52 0 -90 38t-38 90v1280q0 52 38 90t90 38h128v96q0 66 47 113t113 47h64q66 0 113 -47t47 -113v-96h384v96q0 66 47 113t113 47
h64q66 0 113 -47t47 -113v-96h128q52 0 90 -38t38 -90z" />
    <glyph glyph-name="random" unicode="&#xf074;" horiz-adv-x="1792" 
d="M666 1055q-60 -92 -137 -273q-22 45 -37 72.5t-40.5 63.5t-51 56.5t-63 35t-81.5 14.5h-224q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h224q250 0 410 -225zM1792 256q0 -14 -9 -23l-320 -320q-9 -9 -23 -9q-13 0 -22.5 9.5t-9.5 22.5v192q-32 0 -85 -0.5t-81 -1t-73 1
t-71 5t-64 10.5t-63 18.5t-58 28.5t-59 40t-55 53.5t-56 69.5q59 93 136 273q22 -45 37 -72.5t40.5 -63.5t51 -56.5t63 -35t81.5 -14.5h256v192q0 14 9 23t23 9q12 0 24 -10l319 -319q9 -9 9 -23zM1792 1152q0 -14 -9 -23l-320 -320q-9 -9 -23 -9q-13 0 -22.5 9.5t-9.5 22.5
v192h-256q-48 0 -87 -15t-69 -45t-51 -61.5t-45 -77.5q-32 -62 -78 -171q-29 -66 -49.5 -111t-54 -105t-64 -100t-74 -83t-90 -68.5t-106.5 -42t-128 -16.5h-224q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h224q48 0 87 15t69 45t51 61.5t45 77.5q32 62 78 171q29 66 49.5 111
t54 105t64 100t74 83t90 68.5t106.5 42t128 16.5h256v192q0 14 9 23t23 9q12 0 24 -10l319 -319q9 -9 9 -23z" />
    <glyph glyph-name="comment" unicode="&#xf075;" horiz-adv-x="1792" 
d="M1792 640q0 -174 -120 -321.5t-326 -233t-450 -85.5q-70 0 -145 8q-198 -175 -460 -242q-49 -14 -114 -22q-17 -2 -30.5 9t-17.5 29v1q-3 4 -0.5 12t2 10t4.5 9.5l6 9t7 8.5t8 9q7 8 31 34.5t34.5 38t31 39.5t32.5 51t27 59t26 76q-157 89 -247.5 220t-90.5 281
q0 130 71 248.5t191 204.5t286 136.5t348 50.5q244 0 450 -85.5t326 -233t120 -321.5z" />
    <glyph glyph-name="magnet" unicode="&#xf076;" 
d="M1536 704v-128q0 -201 -98.5 -362t-274 -251.5t-395.5 -90.5t-395.5 90.5t-274 251.5t-98.5 362v128q0 26 19 45t45 19h384q26 0 45 -19t19 -45v-128q0 -52 23.5 -90t53.5 -57t71 -30t64 -13t44 -2t44 2t64 13t71 30t53.5 57t23.5 90v128q0 26 19 45t45 19h384
q26 0 45 -19t19 -45zM512 1344v-384q0 -26 -19 -45t-45 -19h-384q-26 0 -45 19t-19 45v384q0 26 19 45t45 19h384q26 0 45 -19t19 -45zM1536 1344v-384q0 -26 -19 -45t-45 -19h-384q-26 0 -45 19t-19 45v384q0 26 19 45t45 19h384q26 0 45 -19t19 -45z" />
    <glyph glyph-name="chevron_up" unicode="&#xf077;" horiz-adv-x="1792" 
d="M1683 205l-166 -165q-19 -19 -45 -19t-45 19l-531 531l-531 -531q-19 -19 -45 -19t-45 19l-166 165q-19 19 -19 45.5t19 45.5l742 741q19 19 45 19t45 -19l742 -741q19 -19 19 -45.5t-19 -45.5z" />
    <glyph glyph-name="chevron_down" unicode="&#xf078;" horiz-adv-x="1792" 
d="M1683 728l-742 -741q-19 -19 -45 -19t-45 19l-742 741q-19 19 -19 45.5t19 45.5l166 165q19 19 45 19t45 -19l531 -531l531 531q19 19 45 19t45 -19l166 -165q19 -19 19 -45.5t-19 -45.5z" />
    <glyph glyph-name="retweet" unicode="&#xf079;" horiz-adv-x="1920" 
d="M1280 32q0 -13 -9.5 -22.5t-22.5 -9.5h-960q-8 0 -13.5 2t-9 7t-5.5 8t-3 11.5t-1 11.5v13v11v160v416h-192q-26 0 -45 19t-19 45q0 24 15 41l320 384q19 22 49 22t49 -22l320 -384q15 -17 15 -41q0 -26 -19 -45t-45 -19h-192v-384h576q16 0 25 -11l160 -192q7 -10 7 -21
zM1920 448q0 -24 -15 -41l-320 -384q-20 -23 -49 -23t-49 23l-320 384q-15 17 -15 41q0 26 19 45t45 19h192v384h-576q-16 0 -25 12l-160 192q-7 9 -7 20q0 13 9.5 22.5t22.5 9.5h960q8 0 13.5 -2t9 -7t5.5 -8t3 -11.5t1 -11.5v-13v-11v-160v-416h192q26 0 45 -19t19 -45z
" />
    <glyph glyph-name="shopping_cart" unicode="&#xf07a;" horiz-adv-x="1664" 
d="M640 0q0 -52 -38 -90t-90 -38t-90 38t-38 90t38 90t90 38t90 -38t38 -90zM1536 0q0 -52 -38 -90t-90 -38t-90 38t-38 90t38 90t90 38t90 -38t38 -90zM1664 1088v-512q0 -24 -16.5 -42.5t-40.5 -21.5l-1044 -122q13 -60 13 -70q0 -16 -24 -64h920q26 0 45 -19t19 -45
t-19 -45t-45 -19h-1024q-26 0 -45 19t-19 45q0 11 8 31.5t16 36t21.5 40t15.5 29.5l-177 823h-204q-26 0 -45 19t-19 45t19 45t45 19h256q16 0 28.5 -6.5t19.5 -15.5t13 -24.5t8 -26t5.5 -29.5t4.5 -26h1201q26 0 45 -19t19 -45z" />
    <glyph glyph-name="folder_close" unicode="&#xf07b;" horiz-adv-x="1664" 
d="M1664 928v-704q0 -92 -66 -158t-158 -66h-1216q-92 0 -158 66t-66 158v960q0 92 66 158t158 66h320q92 0 158 -66t66 -158v-32h672q92 0 158 -66t66 -158z" />
    <glyph glyph-name="folder_open" unicode="&#xf07c;" horiz-adv-x="1920" 
d="M1879 584q0 -31 -31 -66l-336 -396q-43 -51 -120.5 -86.5t-143.5 -35.5h-1088q-34 0 -60.5 13t-26.5 43q0 31 31 66l336 396q43 51 120.5 86.5t143.5 35.5h1088q34 0 60.5 -13t26.5 -43zM1536 928v-160h-832q-94 0 -197 -47.5t-164 -119.5l-337 -396l-5 -6q0 4 -0.5 12.5
t-0.5 12.5v960q0 92 66 158t158 66h320q92 0 158 -66t66 -158v-32h544q92 0 158 -66t66 -158z" />
    <glyph glyph-name="resize_vertical" unicode="&#xf07d;" horiz-adv-x="768" 
d="M704 1216q0 -26 -19 -45t-45 -19h-128v-1024h128q26 0 45 -19t19 -45t-19 -45l-256 -256q-19 -19 -45 -19t-45 19l-256 256q-19 19 -19 45t19 45t45 19h128v1024h-128q-26 0 -45 19t-19 45t19 45l256 256q19 19 45 19t45 -19l256 -256q19 -19 19 -45z" />
    <glyph glyph-name="resize_horizontal" unicode="&#xf07e;" horiz-adv-x="1792" 
d="M1792 640q0 -26 -19 -45l-256 -256q-19 -19 -45 -19t-45 19t-19 45v128h-1024v-128q0 -26 -19 -45t-45 -19t-45 19l-256 256q-19 19 -19 45t19 45l256 256q19 19 45 19t45 -19t19 -45v-128h1024v128q0 26 19 45t45 19t45 -19l256 -256q19 -19 19 -45z" />
    <glyph glyph-name="bar_chart" unicode="&#xf080;" horiz-adv-x="2048" 
d="M640 640v-512h-256v512h256zM1024 1152v-1024h-256v1024h256zM2048 0v-128h-2048v1536h128v-1408h1920zM1408 896v-768h-256v768h256zM1792 1280v-1152h-256v1152h256z" />
    <glyph glyph-name="twitter_sign" unicode="&#xf081;" 
d="M1280 926q-56 -25 -121 -34q68 40 93 117q-65 -38 -134 -51q-61 66 -153 66q-87 0 -148.5 -61.5t-61.5 -148.5q0 -29 5 -48q-129 7 -242 65t-192 155q-29 -50 -29 -106q0 -114 91 -175q-47 1 -100 26v-2q0 -75 50 -133.5t123 -72.5q-29 -8 -51 -8q-13 0 -39 4
q21 -63 74.5 -104t121.5 -42q-116 -90 -261 -90q-26 0 -50 3q148 -94 322 -94q112 0 210 35.5t168 95t120.5 137t75 162t24.5 168.5q0 18 -1 27q63 45 105 109zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5
t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" />
    <glyph glyph-name="facebook_sign" unicode="&#xf082;" 
d="M1248 1408q119 0 203.5 -84.5t84.5 -203.5v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-188v595h199l30 232h-229v148q0 56 23.5 84t91.5 28l122 1v207q-63 9 -178 9q-136 0 -217.5 -80t-81.5 -226v-171h-200v-232h200v-595h-532q-119 0 -203.5 84.5t-84.5 203.5v960
q0 119 84.5 203.5t203.5 84.5h960z" />
    <glyph glyph-name="camera_retro" unicode="&#xf083;" horiz-adv-x="1792" 
d="M928 704q0 14 -9 23t-23 9q-66 0 -113 -47t-47 -113q0 -14 9 -23t23 -9t23 9t9 23q0 40 28 68t68 28q14 0 23 9t9 23zM1152 574q0 -106 -75 -181t-181 -75t-181 75t-75 181t75 181t181 75t181 -75t75 -181zM128 0h1536v128h-1536v-128zM1280 574q0 159 -112.5 271.5
t-271.5 112.5t-271.5 -112.5t-112.5 -271.5t112.5 -271.5t271.5 -112.5t271.5 112.5t112.5 271.5zM256 1216h384v128h-384v-128zM128 1024h1536v118v138h-828l-64 -128h-644v-128zM1792 1280v-1280q0 -53 -37.5 -90.5t-90.5 -37.5h-1536q-53 0 -90.5 37.5t-37.5 90.5v1280
q0 53 37.5 90.5t90.5 37.5h1536q53 0 90.5 -37.5t37.5 -90.5z" />
    <glyph glyph-name="key" unicode="&#xf084;" horiz-adv-x="1792" 
d="M832 1024q0 80 -56 136t-136 56t-136 -56t-56 -136q0 -42 19 -83q-41 19 -83 19q-80 0 -136 -56t-56 -136t56 -136t136 -56t136 56t56 136q0 42 -19 83q41 -19 83 -19q80 0 136 56t56 136zM1683 320q0 -17 -49 -66t-66 -49q-9 0 -28.5 16t-36.5 33t-38.5 40t-24.5 26
l-96 -96l220 -220q28 -28 28 -68q0 -42 -39 -81t-81 -39q-40 0 -68 28l-671 671q-176 -131 -365 -131q-163 0 -265.5 102.5t-102.5 265.5q0 160 95 313t248 248t313 95q163 0 265.5 -102.5t102.5 -265.5q0 -189 -131 -365l355 -355l96 96q-3 3 -26 24.5t-40 38.5t-33 36.5
t-16 28.5q0 17 49 66t66 49q13 0 23 -10q6 -6 46 -44.5t82 -79.5t86.5 -86t73 -78t28.5 -41z" />
    <glyph glyph-name="cogs" unicode="&#xf085;" horiz-adv-x="1920" 
d="M896 640q0 106 -75 181t-181 75t-181 -75t-75 -181t75 -181t181 -75t181 75t75 181zM1664 128q0 52 -38 90t-90 38t-90 -38t-38 -90q0 -53 37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1664 1152q0 52 -38 90t-90 38t-90 -38t-38 -90q0 -53 37.5 -90.5t90.5 -37.5
t90.5 37.5t37.5 90.5zM1280 731v-185q0 -10 -7 -19.5t-16 -10.5l-155 -24q-11 -35 -32 -76q34 -48 90 -115q7 -11 7 -20q0 -12 -7 -19q-23 -30 -82.5 -89.5t-78.5 -59.5q-11 0 -21 7l-115 90q-37 -19 -77 -31q-11 -108 -23 -155q-7 -24 -30 -24h-186q-11 0 -20 7.5t-10 17.5
l-23 153q-34 10 -75 31l-118 -89q-7 -7 -20 -7q-11 0 -21 8q-144 133 -144 160q0 9 7 19q10 14 41 53t47 61q-23 44 -35 82l-152 24q-10 1 -17 9.5t-7 19.5v185q0 10 7 19.5t16 10.5l155 24q11 35 32 76q-34 48 -90 115q-7 11 -7 20q0 12 7 20q22 30 82 89t79 59q11 0 21 -7
l115 -90q34 18 77 32q11 108 23 154q7 24 30 24h186q11 0 20 -7.5t10 -17.5l23 -153q34 -10 75 -31l118 89q8 7 20 7q11 0 21 -8q144 -133 144 -160q0 -8 -7 -19q-12 -16 -42 -54t-45 -60q23 -48 34 -82l152 -23q10 -2 17 -10.5t7 -19.5zM1920 198v-140q0 -16 -149 -31
q-12 -27 -30 -52q51 -113 51 -138q0 -4 -4 -7q-122 -71 -124 -71q-8 0 -46 47t-52 68q-20 -2 -30 -2t-30 2q-14 -21 -52 -68t-46 -47q-2 0 -124 71q-4 3 -4 7q0 25 51 138q-18 25 -30 52q-149 15 -149 31v140q0 16 149 31q13 29 30 52q-51 113 -51 138q0 4 4 7q4 2 35 20
t59 34t30 16q8 0 46 -46.5t52 -67.5q20 2 30 2t30 -2q51 71 92 112l6 2q4 0 124 -70q4 -3 4 -7q0 -25 -51 -138q17 -23 30 -52q149 -15 149 -31zM1920 1222v-140q0 -16 -149 -31q-12 -27 -30 -52q51 -113 51 -138q0 -4 -4 -7q-122 -71 -124 -71q-8 0 -46 47t-52 68
q-20 -2 -30 -2t-30 2q-14 -21 -52 -68t-46 -47q-2 0 -124 71q-4 3 -4 7q0 25 51 138q-18 25 -30 52q-149 15 -149 31v140q0 16 149 31q13 29 30 52q-51 113 -51 138q0 4 4 7q4 2 35 20t59 34t30 16q8 0 46 -46.5t52 -67.5q20 2 30 2t30 -2q51 71 92 112l6 2q4 0 124 -70
q4 -3 4 -7q0 -25 -51 -138q17 -23 30 -52q149 -15 149 -31z" />
    <glyph glyph-name="comments" unicode="&#xf086;" horiz-adv-x="1792" 
d="M1408 768q0 -139 -94 -257t-256.5 -186.5t-353.5 -68.5q-86 0 -176 16q-124 -88 -278 -128q-36 -9 -86 -16h-3q-11 0 -20.5 8t-11.5 21q-1 3 -1 6.5t0.5 6.5t2 6l2.5 5t3.5 5.5t4 5t4.5 5t4 4.5q5 6 23 25t26 29.5t22.5 29t25 38.5t20.5 44q-124 72 -195 177t-71 224
q0 139 94 257t256.5 186.5t353.5 68.5t353.5 -68.5t256.5 -186.5t94 -257zM1792 512q0 -120 -71 -224.5t-195 -176.5q10 -24 20.5 -44t25 -38.5t22.5 -29t26 -29.5t23 -25q1 -1 4 -4.5t4.5 -5t4 -5t3.5 -5.5l2.5 -5t2 -6t0.5 -6.5t-1 -6.5q-3 -14 -13 -22t-22 -7
q-50 7 -86 16q-154 40 -278 128q-90 -16 -176 -16q-271 0 -472 132q58 -4 88 -4q161 0 309 45t264 129q125 92 192 212t67 254q0 77 -23 152q129 -71 204 -178t75 -230z" />
    <glyph glyph-name="thumbs_up_alt" unicode="&#xf087;" 
d="M256 192q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1408 768q0 51 -39 89.5t-89 38.5h-352q0 58 48 159.5t48 160.5q0 98 -32 145t-128 47q-26 -26 -38 -85t-30.5 -125.5t-59.5 -109.5q-22 -23 -77 -91q-4 -5 -23 -30t-31.5 -41t-34.5 -42.5
t-40 -44t-38.5 -35.5t-40 -27t-35.5 -9h-32v-640h32q13 0 31.5 -3t33 -6.5t38 -11t35 -11.5t35.5 -12.5t29 -10.5q211 -73 342 -73h121q192 0 192 167q0 26 -5 56q30 16 47.5 52.5t17.5 73.5t-18 69q53 50 53 119q0 25 -10 55.5t-25 47.5q32 1 53.5 47t21.5 81zM1536 769
q0 -89 -49 -163q9 -33 9 -69q0 -77 -38 -144q3 -21 3 -43q0 -101 -60 -178q1 -139 -85 -219.5t-227 -80.5h-36h-93q-96 0 -189.5 22.5t-216.5 65.5q-116 40 -138 40h-288q-53 0 -90.5 37.5t-37.5 90.5v640q0 53 37.5 90.5t90.5 37.5h274q36 24 137 155q58 75 107 128
q24 25 35.5 85.5t30.5 126.5t62 108q39 37 90 37q84 0 151 -32.5t102 -101.5t35 -186q0 -93 -48 -192h176q104 0 180 -76t76 -179z" />
    <glyph glyph-name="thumbs_down_alt" unicode="&#xf088;" 
d="M256 1088q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1408 512q0 35 -21.5 81t-53.5 47q15 17 25 47.5t10 55.5q0 69 -53 119q18 31 18 69q0 37 -17.5 73.5t-47.5 52.5q5 30 5 56q0 85 -49 126t-136 41h-128q-131 0 -342 -73q-5 -2 -29 -10.5
t-35.5 -12.5t-35 -11.5t-38 -11t-33 -6.5t-31.5 -3h-32v-640h32q16 0 35.5 -9t40 -27t38.5 -35.5t40 -44t34.5 -42.5t31.5 -41t23 -30q55 -68 77 -91q41 -43 59.5 -109.5t30.5 -125.5t38 -85q96 0 128 47t32 145q0 59 -48 160.5t-48 159.5h352q50 0 89 38.5t39 89.5z
M1536 511q0 -103 -76 -179t-180 -76h-176q48 -99 48 -192q0 -118 -35 -186q-35 -69 -102 -101.5t-151 -32.5q-51 0 -90 37q-34 33 -54 82t-25.5 90.5t-17.5 84.5t-31 64q-48 50 -107 127q-101 131 -137 155h-274q-53 0 -90.5 37.5t-37.5 90.5v640q0 53 37.5 90.5t90.5 37.5
h288q22 0 138 40q128 44 223 66t200 22h112q140 0 226.5 -79t85.5 -216v-5q60 -77 60 -178q0 -22 -3 -43q38 -67 38 -144q0 -36 -9 -69q49 -73 49 -163z" />
    <glyph glyph-name="star_half" unicode="&#xf089;" horiz-adv-x="896" 
d="M832 1504v-1339l-449 -236q-22 -12 -40 -12q-21 0 -31.5 14.5t-10.5 35.5q0 6 2 20l86 500l-364 354q-25 27 -25 48q0 37 56 46l502 73l225 455q19 41 49 41z" />
    <glyph glyph-name="heart_empty" unicode="&#xf08a;" horiz-adv-x="1792" 
d="M1664 940q0 81 -21.5 143t-55 98.5t-81.5 59.5t-94 31t-98 8t-112 -25.5t-110.5 -64t-86.5 -72t-60 -61.5q-18 -22 -49 -22t-49 22q-24 28 -60 61.5t-86.5 72t-110.5 64t-112 25.5t-98 -8t-94 -31t-81.5 -59.5t-55 -98.5t-21.5 -143q0 -168 187 -355l581 -560l580 559
q188 188 188 356zM1792 940q0 -221 -229 -450l-623 -600q-18 -18 -44 -18t-44 18l-624 602q-10 8 -27.5 26t-55.5 65.5t-68 97.5t-53.5 121t-23.5 138q0 220 127 344t351 124q62 0 126.5 -21.5t120 -58t95.5 -68.5t76 -68q36 36 76 68t95.5 68.5t120 58t126.5 21.5
q224 0 351 -124t127 -344z" />
    <glyph glyph-name="signout" unicode="&#xf08b;" horiz-adv-x="1664" 
d="M640 96q0 -4 1 -20t0.5 -26.5t-3 -23.5t-10 -19.5t-20.5 -6.5h-320q-119 0 -203.5 84.5t-84.5 203.5v704q0 119 84.5 203.5t203.5 84.5h320q13 0 22.5 -9.5t9.5 -22.5q0 -4 1 -20t0.5 -26.5t-3 -23.5t-10 -19.5t-20.5 -6.5h-320q-66 0 -113 -47t-47 -113v-704
q0 -66 47 -113t113 -47h288h11h13t11.5 -1t11.5 -3t8 -5.5t7 -9t2 -13.5zM1568 640q0 -26 -19 -45l-544 -544q-19 -19 -45 -19t-45 19t-19 45v288h-448q-26 0 -45 19t-19 45v384q0 26 19 45t45 19h448v288q0 26 19 45t45 19t45 -19l544 -544q19 -19 19 -45z" />
    <glyph glyph-name="linkedin_sign" unicode="&#xf08c;" 
d="M237 122h231v694h-231v-694zM483 1030q-1 52 -36 86t-93 34t-94.5 -34t-36.5 -86q0 -51 35.5 -85.5t92.5 -34.5h1q59 0 95 34.5t36 85.5zM1068 122h231v398q0 154 -73 233t-193 79q-136 0 -209 -117h2v101h-231q3 -66 0 -694h231v388q0 38 7 56q15 35 45 59.5t74 24.5
q116 0 116 -157v-371zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" />
    <glyph glyph-name="pushpin" unicode="&#xf08d;" horiz-adv-x="1152" 
d="M480 672v448q0 14 -9 23t-23 9t-23 -9t-9 -23v-448q0 -14 9 -23t23 -9t23 9t9 23zM1152 320q0 -26 -19 -45t-45 -19h-429l-51 -483q-2 -12 -10.5 -20.5t-20.5 -8.5h-1q-27 0 -32 27l-76 485h-404q-26 0 -45 19t-19 45q0 123 78.5 221.5t177.5 98.5v512q-52 0 -90 38
t-38 90t38 90t90 38h640q52 0 90 -38t38 -90t-38 -90t-90 -38v-512q99 0 177.5 -98.5t78.5 -221.5z" />
    <glyph glyph-name="external_link" unicode="&#xf08e;" horiz-adv-x="1792" 
d="M1408 608v-320q0 -119 -84.5 -203.5t-203.5 -84.5h-832q-119 0 -203.5 84.5t-84.5 203.5v832q0 119 84.5 203.5t203.5 84.5h704q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-704q-66 0 -113 -47t-47 -113v-832q0 -66 47 -113t113 -47h832q66 0 113 47t47 113v320
q0 14 9 23t23 9h64q14 0 23 -9t9 -23zM1792 1472v-512q0 -26 -19 -45t-45 -19t-45 19l-176 176l-652 -652q-10 -10 -23 -10t-23 10l-114 114q-10 10 -10 23t10 23l652 652l-176 176q-19 19 -19 45t19 45t45 19h512q26 0 45 -19t19 -45z" />
    <glyph glyph-name="signin" unicode="&#xf090;" 
d="M1184 640q0 -26 -19 -45l-544 -544q-19 -19 -45 -19t-45 19t-19 45v288h-448q-26 0 -45 19t-19 45v384q0 26 19 45t45 19h448v288q0 26 19 45t45 19t45 -19l544 -544q19 -19 19 -45zM1536 992v-704q0 -119 -84.5 -203.5t-203.5 -84.5h-320q-13 0 -22.5 9.5t-9.5 22.5
q0 4 -1 20t-0.5 26.5t3 23.5t10 19.5t20.5 6.5h320q66 0 113 47t47 113v704q0 66 -47 113t-113 47h-288h-11h-13t-11.5 1t-11.5 3t-8 5.5t-7 9t-2 13.5q0 4 -1 20t-0.5 26.5t3 23.5t10 19.5t20.5 6.5h320q119 0 203.5 -84.5t84.5 -203.5z" />
    <glyph glyph-name="trophy" unicode="&#xf091;" horiz-adv-x="1664" 
d="M458 653q-74 162 -74 371h-256v-96q0 -78 94.5 -162t235.5 -113zM1536 928v96h-256q0 -209 -74 -371q141 29 235.5 113t94.5 162zM1664 1056v-128q0 -71 -41.5 -143t-112 -130t-173 -97.5t-215.5 -44.5q-42 -54 -95 -95q-38 -34 -52.5 -72.5t-14.5 -89.5q0 -54 30.5 -91
t97.5 -37q75 0 133.5 -45.5t58.5 -114.5v-64q0 -14 -9 -23t-23 -9h-832q-14 0 -23 9t-9 23v64q0 69 58.5 114.5t133.5 45.5q67 0 97.5 37t30.5 91q0 51 -14.5 89.5t-52.5 72.5q-53 41 -95 95q-113 5 -215.5 44.5t-173 97.5t-112 130t-41.5 143v128q0 40 28 68t68 28h288v96
q0 66 47 113t113 47h576q66 0 113 -47t47 -113v-96h288q40 0 68 -28t28 -68z" />
    <glyph glyph-name="github_sign" unicode="&#xf092;" 
d="M519 336q4 6 -3 13q-9 7 -14 2q-4 -6 3 -13q9 -7 14 -2zM491 377q-5 7 -12 4q-6 -4 0 -12q7 -8 12 -5q6 4 0 13zM450 417q2 4 -5 8q-7 2 -8 -2q-3 -5 4 -8q8 -2 9 2zM471 394q2 1 1.5 4.5t-3.5 5.5q-6 7 -10 3t1 -11q6 -6 11 -2zM557 319q2 7 -9 11q-9 3 -13 -4
q-2 -7 9 -11q9 -3 13 4zM599 316q0 8 -12 8q-10 0 -10 -8t11 -8t11 8zM638 323q-2 7 -13 5t-9 -9q2 -8 12 -6t10 10zM1280 640q0 212 -150 362t-362 150t-362 -150t-150 -362q0 -167 98 -300.5t252 -185.5q18 -3 26.5 5t8.5 20q0 52 -1 95q-6 -1 -15.5 -2.5t-35.5 -2t-48 4
t-43.5 20t-29.5 41.5q-23 59 -57 74q-2 1 -4.5 3.5l-8 8t-7 9.5t4 7.5t19.5 3.5q6 0 15 -2t30 -15.5t33 -35.5q16 -28 37.5 -42t43.5 -14t38 3.5t30 9.5q7 47 33 69q-49 6 -86 18.5t-73 39t-55.5 76t-19.5 119.5q0 79 53 137q-24 62 5 136q19 6 54.5 -7.5t60.5 -29.5l26 -16
q58 17 128 17t128 -17q11 7 28.5 18t55.5 26t57 9q29 -74 5 -136q53 -58 53 -137q0 -57 -14 -100.5t-35.5 -70t-53.5 -44.5t-62.5 -26t-68.5 -12q35 -31 35 -95q0 -40 -0.5 -89t-0.5 -51q0 -12 8.5 -20t26.5 -5q154 52 252 185.5t98 300.5zM1536 1120v-960
q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" />
    <glyph glyph-name="upload_alt" unicode="&#xf093;" horiz-adv-x="1664" 
d="M1280 64q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1536 64q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1664 288v-320q0 -40 -28 -68t-68 -28h-1472q-40 0 -68 28t-28 68v320q0 40 28 68t68 28h427q21 -56 70.5 -92
t110.5 -36h256q61 0 110.5 36t70.5 92h427q40 0 68 -28t28 -68zM1339 936q-17 -40 -59 -40h-256v-448q0 -26 -19 -45t-45 -19h-256q-26 0 -45 19t-19 45v448h-256q-42 0 -59 40q-17 39 14 69l448 448q18 19 45 19t45 -19l448 -448q31 -30 14 -69z" />
    <glyph glyph-name="lemon" unicode="&#xf094;" 
d="M1407 710q0 44 -7 113.5t-18 96.5q-12 30 -17 44t-9 36.5t-4 48.5q0 23 5 68.5t5 67.5q0 37 -10 55q-4 1 -13 1q-19 0 -58 -4.5t-59 -4.5q-60 0 -176 24t-175 24q-43 0 -94.5 -11.5t-85 -23.5t-89.5 -34q-137 -54 -202 -103q-96 -73 -159.5 -189.5t-88 -236t-24.5 -248.5
q0 -40 12.5 -120t12.5 -121q0 -23 -11 -66.5t-11 -65.5t12 -36.5t34 -14.5q24 0 72.5 11t73.5 11q57 0 169.5 -15.5t169.5 -15.5q181 0 284 36q129 45 235.5 152.5t166 245.5t59.5 275zM1535 712q0 -165 -70 -327.5t-196 -288t-281 -180.5q-124 -44 -326 -44
q-57 0 -170 14.5t-169 14.5q-24 0 -72.5 -14.5t-73.5 -14.5q-73 0 -123.5 55.5t-50.5 128.5q0 24 11 68t11 67q0 40 -12.5 120.5t-12.5 121.5q0 111 18 217.5t54.5 209.5t100.5 194t150 156q78 59 232 120q194 78 316 78q60 0 175.5 -24t173.5 -24q19 0 57 5t58 5
q81 0 118 -50.5t37 -134.5q0 -23 -5 -68t-5 -68q0 -13 2 -25t3.5 -16.5t7.5 -20.5t8 -20q16 -40 25 -118.5t9 -136.5z" />
    <glyph glyph-name="phone" unicode="&#xf095;" horiz-adv-x="1408" 
d="M1408 296q0 -27 -10 -70.5t-21 -68.5q-21 -50 -122 -106q-94 -51 -186 -51q-27 0 -53 3.5t-57.5 12.5t-47 14.5t-55.5 20.5t-49 18q-98 35 -175 83q-127 79 -264 216t-216 264q-48 77 -83 175q-3 9 -18 49t-20.5 55.5t-14.5 47t-12.5 57.5t-3.5 53q0 92 51 186
q56 101 106 122q25 11 68.5 21t70.5 10q14 0 21 -3q18 -6 53 -76q11 -19 30 -54t35 -63.5t31 -53.5q3 -4 17.5 -25t21.5 -35.5t7 -28.5q0 -20 -28.5 -50t-62 -55t-62 -53t-28.5 -46q0 -9 5 -22.5t8.5 -20.5t14 -24t11.5 -19q76 -137 174 -235t235 -174q2 -1 19 -11.5t24 -14
t20.5 -8.5t22.5 -5q18 0 46 28.5t53 62t55 62t50 28.5q14 0 28.5 -7t35.5 -21.5t25 -17.5q25 -15 53.5 -31t63.5 -35t54 -30q70 -35 76 -53q3 -7 3 -21z" />
    <glyph glyph-name="check_empty" unicode="&#xf096;" horiz-adv-x="1408" 
d="M1120 1280h-832q-66 0 -113 -47t-47 -113v-832q0 -66 47 -113t113 -47h832q66 0 113 47t47 113v832q0 66 -47 113t-113 47zM1408 1120v-832q0 -119 -84.5 -203.5t-203.5 -84.5h-832q-119 0 -203.5 84.5t-84.5 203.5v832q0 119 84.5 203.5t203.5 84.5h832
q119 0 203.5 -84.5t84.5 -203.5z" />
    <glyph glyph-name="bookmark_empty" unicode="&#xf097;" horiz-adv-x="1280" 
d="M1152 1280h-1024v-1242l423 406l89 85l89 -85l423 -406v1242zM1164 1408q23 0 44 -9q33 -13 52.5 -41t19.5 -62v-1289q0 -34 -19.5 -62t-52.5 -41q-19 -8 -44 -8q-48 0 -83 32l-441 424l-441 -424q-36 -33 -83 -33q-23 0 -44 9q-33 13 -52.5 41t-19.5 62v1289
q0 34 19.5 62t52.5 41q21 9 44 9h1048z" />
    <glyph glyph-name="phone_sign" unicode="&#xf098;" 
d="M1280 343q0 11 -2 16t-18 16.5t-40.5 25t-47.5 26.5t-45.5 25t-28.5 15q-5 3 -19 13t-25 15t-21 5q-15 0 -36.5 -20.5t-39.5 -45t-38.5 -45t-33.5 -20.5q-7 0 -16.5 3.5t-15.5 6.5t-17 9.5t-14 8.5q-99 55 -170 126.5t-127 170.5q-2 3 -8.5 14t-9.5 17t-6.5 15.5
t-3.5 16.5q0 13 20.5 33.5t45 38.5t45 39.5t20.5 36.5q0 10 -5 21t-15 25t-13 19q-3 6 -15 28.5t-25 45.5t-26.5 47.5t-25 40.5t-16.5 18t-16 2q-48 0 -101 -22q-46 -21 -80 -94.5t-34 -130.5q0 -16 2.5 -34t5 -30.5t9 -33t10 -29.5t12.5 -33t11 -30q60 -164 216.5 -320.5
t320.5 -216.5q6 -2 30 -11t33 -12.5t29.5 -10t33 -9t30.5 -5t34 -2.5q57 0 130.5 34t94.5 80q22 53 22 101zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z
" />
    <glyph glyph-name="twitter" unicode="&#xf099;" horiz-adv-x="1664" 
d="M1620 1128q-67 -98 -162 -167q1 -14 1 -42q0 -130 -38 -259.5t-115.5 -248.5t-184.5 -210.5t-258 -146t-323 -54.5q-271 0 -496 145q35 -4 78 -4q225 0 401 138q-105 2 -188 64.5t-114 159.5q33 -5 61 -5q43 0 85 11q-112 23 -185.5 111.5t-73.5 205.5v4q68 -38 146 -41
q-66 44 -105 115t-39 154q0 88 44 163q121 -149 294.5 -238.5t371.5 -99.5q-8 38 -8 74q0 134 94.5 228.5t228.5 94.5q140 0 236 -102q109 21 205 78q-37 -115 -142 -178q93 10 186 50z" />
    <glyph glyph-name="facebook" unicode="&#xf09a;" horiz-adv-x="1024" 
d="M959 1524v-264h-157q-86 0 -116 -36t-30 -108v-189h293l-39 -296h-254v-759h-306v759h-255v296h255v218q0 186 104 288.5t277 102.5q147 0 228 -12z" />
    <glyph glyph-name="github" unicode="&#xf09b;" 
d="M768 1408q209 0 385.5 -103t279.5 -279.5t103 -385.5q0 -251 -146.5 -451.5t-378.5 -277.5q-27 -5 -40 7t-13 30q0 3 0.5 76.5t0.5 134.5q0 97 -52 142q57 6 102.5 18t94 39t81 66.5t53 105t20.5 150.5q0 119 -79 206q37 91 -8 204q-28 9 -81 -11t-92 -44l-38 -24
q-93 26 -192 26t-192 -26q-16 11 -42.5 27t-83.5 38.5t-85 13.5q-45 -113 -8 -204q-79 -87 -79 -206q0 -85 20.5 -150t52.5 -105t80.5 -67t94 -39t102.5 -18q-39 -36 -49 -103q-21 -10 -45 -15t-57 -5t-65.5 21.5t-55.5 62.5q-19 32 -48.5 52t-49.5 24l-20 3q-21 0 -29 -4.5
t-5 -11.5t9 -14t13 -12l7 -5q22 -10 43.5 -38t31.5 -51l10 -23q13 -38 44 -61.5t67 -30t69.5 -7t55.5 3.5l23 4q0 -38 0.5 -88.5t0.5 -54.5q0 -18 -13 -30t-40 -7q-232 77 -378.5 277.5t-146.5 451.5q0 209 103 385.5t279.5 279.5t385.5 103zM291 305q3 7 -7 12
q-10 3 -13 -2q-3 -7 7 -12q9 -6 13 2zM322 271q7 5 -2 16q-10 9 -16 3q-7 -5 2 -16q10 -10 16 -3zM352 226q9 7 0 19q-8 13 -17 6q-9 -5 0 -18t17 -7zM394 184q8 8 -4 19q-12 12 -20 3q-9 -8 4 -19q12 -12 20 -3zM451 159q3 11 -13 16q-15 4 -19 -7t13 -15q15 -6 19 6z
M514 154q0 13 -17 11q-16 0 -16 -11q0 -13 17 -11q16 0 16 11zM572 164q-2 11 -18 9q-16 -3 -14 -15t18 -8t14 14z" />
    <glyph glyph-name="unlock" unicode="&#xf09c;" horiz-adv-x="1664" 
d="M1664 960v-256q0 -26 -19 -45t-45 -19h-64q-26 0 -45 19t-19 45v256q0 106 -75 181t-181 75t-181 -75t-75 -181v-192h96q40 0 68 -28t28 -68v-576q0 -40 -28 -68t-68 -28h-960q-40 0 -68 28t-28 68v576q0 40 28 68t68 28h672v192q0 185 131.5 316.5t316.5 131.5
t316.5 -131.5t131.5 -316.5z" />
    <glyph glyph-name="credit_card" unicode="&#xf09d;" horiz-adv-x="1920" 
d="M1760 1408q66 0 113 -47t47 -113v-1216q0 -66 -47 -113t-113 -47h-1600q-66 0 -113 47t-47 113v1216q0 66 47 113t113 47h1600zM160 1280q-13 0 -22.5 -9.5t-9.5 -22.5v-224h1664v224q0 13 -9.5 22.5t-22.5 9.5h-1600zM1760 0q13 0 22.5 9.5t9.5 22.5v608h-1664v-608
q0 -13 9.5 -22.5t22.5 -9.5h1600zM256 128v128h256v-128h-256zM640 128v128h384v-128h-384z" />
    <glyph glyph-name="rss" unicode="&#xf09e;" horiz-adv-x="1408" 
d="M384 192q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM896 69q2 -28 -17 -48q-18 -21 -47 -21h-135q-25 0 -43 16.5t-20 41.5q-22 229 -184.5 391.5t-391.5 184.5q-25 2 -41.5 20t-16.5 43v135q0 29 21 47q17 17 43 17h5q160 -13 306 -80.5
t259 -181.5q114 -113 181.5 -259t80.5 -306zM1408 67q2 -27 -18 -47q-18 -20 -46 -20h-143q-26 0 -44.5 17.5t-19.5 42.5q-12 215 -101 408.5t-231.5 336t-336 231.5t-408.5 102q-25 1 -42.5 19.5t-17.5 43.5v143q0 28 20 46q18 18 44 18h3q262 -13 501.5 -120t425.5 -294
q187 -186 294 -425.5t120 -501.5z" />
    <glyph glyph-name="hdd" unicode="&#xf0a0;" 
d="M1040 320q0 -33 -23.5 -56.5t-56.5 -23.5t-56.5 23.5t-23.5 56.5t23.5 56.5t56.5 23.5t56.5 -23.5t23.5 -56.5zM1296 320q0 -33 -23.5 -56.5t-56.5 -23.5t-56.5 23.5t-23.5 56.5t23.5 56.5t56.5 23.5t56.5 -23.5t23.5 -56.5zM1408 160v320q0 13 -9.5 22.5t-22.5 9.5
h-1216q-13 0 -22.5 -9.5t-9.5 -22.5v-320q0 -13 9.5 -22.5t22.5 -9.5h1216q13 0 22.5 9.5t9.5 22.5zM178 640h1180l-157 482q-4 13 -16 21.5t-26 8.5h-782q-14 0 -26 -8.5t-16 -21.5zM1536 480v-320q0 -66 -47 -113t-113 -47h-1216q-66 0 -113 47t-47 113v320q0 25 16 75
l197 606q17 53 63 86t101 33h782q55 0 101 -33t63 -86l197 -606q16 -50 16 -75z" />
    <glyph glyph-name="bullhorn" unicode="&#xf0a1;" horiz-adv-x="1792" 
d="M1664 896q53 0 90.5 -37.5t37.5 -90.5t-37.5 -90.5t-90.5 -37.5v-384q0 -52 -38 -90t-90 -38q-417 347 -812 380q-58 -19 -91 -66t-31 -100.5t40 -92.5q-20 -33 -23 -65.5t6 -58t33.5 -55t48 -50t61.5 -50.5q-29 -58 -111.5 -83t-168.5 -11.5t-132 55.5q-7 23 -29.5 87.5
t-32 94.5t-23 89t-15 101t3.5 98.5t22 110.5h-122q-66 0 -113 47t-47 113v192q0 66 47 113t113 47h480q435 0 896 384q52 0 90 -38t38 -90v-384zM1536 292v954q-394 -302 -768 -343v-270q377 -42 768 -341z" />
    <glyph glyph-name="bell" unicode="&#xf0a2;" horiz-adv-x="1792" 
d="M912 -160q0 16 -16 16q-59 0 -101.5 42.5t-42.5 101.5q0 16 -16 16t-16 -16q0 -73 51.5 -124.5t124.5 -51.5q16 0 16 16zM246 128h1300q-266 300 -266 832q0 51 -24 105t-69 103t-121.5 80.5t-169.5 31.5t-169.5 -31.5t-121.5 -80.5t-69 -103t-24 -105q0 -532 -266 -832z
M1728 128q0 -52 -38 -90t-90 -38h-448q0 -106 -75 -181t-181 -75t-181 75t-75 181h-448q-52 0 -90 38t-38 90q50 42 91 88t85 119.5t74.5 158.5t50 206t19.5 260q0 152 117 282.5t307 158.5q-8 19 -8 39q0 40 28 68t68 28t68 -28t28 -68q0 -20 -8 -39q190 -28 307 -158.5
t117 -282.5q0 -139 19.5 -260t50 -206t74.5 -158.5t85 -119.5t91 -88z" />
    <glyph glyph-name="certificate" unicode="&#xf0a3;" 
d="M1376 640l138 -135q30 -28 20 -70q-12 -41 -52 -51l-188 -48l53 -186q12 -41 -19 -70q-29 -31 -70 -19l-186 53l-48 -188q-10 -40 -51 -52q-12 -2 -19 -2q-31 0 -51 22l-135 138l-135 -138q-28 -30 -70 -20q-41 11 -51 52l-48 188l-186 -53q-41 -12 -70 19q-31 29 -19 70
l53 186l-188 48q-40 10 -52 51q-10 42 20 70l138 135l-138 135q-30 28 -20 70q12 41 52 51l188 48l-53 186q-12 41 19 70q29 31 70 19l186 -53l48 188q10 41 51 51q41 12 70 -19l135 -139l135 139q29 30 70 19q41 -10 51 -51l48 -188l186 53q41 12 70 -19q31 -29 19 -70
l-53 -186l188 -48q40 -10 52 -51q10 -42 -20 -70z" />
    <glyph glyph-name="hand_right" unicode="&#xf0a4;" horiz-adv-x="1792" 
d="M256 192q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1664 768q0 51 -39 89.5t-89 38.5h-576q0 20 15 48.5t33 55t33 68t15 84.5q0 67 -44.5 97.5t-115.5 30.5q-24 0 -90 -139q-24 -44 -37 -65q-40 -64 -112 -145q-71 -81 -101 -106
q-69 -57 -140 -57h-32v-640h32q72 0 167 -32t193.5 -64t179.5 -32q189 0 189 167q0 26 -5 56q30 16 47.5 52.5t17.5 73.5t-18 69q53 50 53 119q0 25 -10 55.5t-25 47.5h331q52 0 90 38t38 90zM1792 769q0 -105 -75.5 -181t-180.5 -76h-169q-4 -62 -37 -119q3 -21 3 -43
q0 -101 -60 -178q1 -139 -85 -219.5t-227 -80.5q-133 0 -322 69q-164 59 -223 59h-288q-53 0 -90.5 37.5t-37.5 90.5v640q0 53 37.5 90.5t90.5 37.5h288q10 0 21.5 4.5t23.5 14t22.5 18t24 22.5t20.5 21.5t19 21.5t14 17q65 74 100 129q13 21 33 62t37 72t40.5 63t55 49.5
t69.5 17.5q125 0 206.5 -67t81.5 -189q0 -68 -22 -128h374q104 0 180 -76t76 -179z" />
    <glyph glyph-name="hand_left" unicode="&#xf0a5;" horiz-adv-x="1792" 
d="M1376 128h32v640h-32q-35 0 -67.5 12t-62.5 37t-50 46t-49 54q-8 9 -12 14q-72 81 -112 145q-14 22 -38 68q-1 3 -10.5 22.5t-18.5 36t-20 35.5t-21.5 30.5t-18.5 11.5q-71 0 -115.5 -30.5t-44.5 -97.5q0 -43 15 -84.5t33 -68t33 -55t15 -48.5h-576q-50 0 -89 -38.5
t-39 -89.5q0 -52 38 -90t90 -38h331q-15 -17 -25 -47.5t-10 -55.5q0 -69 53 -119q-18 -32 -18 -69t17.5 -73.5t47.5 -52.5q-4 -24 -4 -56q0 -85 48.5 -126t135.5 -41q84 0 183 32t194 64t167 32zM1664 192q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45z
M1792 768v-640q0 -53 -37.5 -90.5t-90.5 -37.5h-288q-59 0 -223 -59q-190 -69 -317 -69q-142 0 -230 77.5t-87 217.5l1 5q-61 76 -61 178q0 22 3 43q-33 57 -37 119h-169q-105 0 -180.5 76t-75.5 181q0 103 76 179t180 76h374q-22 60 -22 128q0 122 81.5 189t206.5 67
q38 0 69.5 -17.5t55 -49.5t40.5 -63t37 -72t33 -62q35 -55 100 -129q2 -3 14 -17t19 -21.5t20.5 -21.5t24 -22.5t22.5 -18t23.5 -14t21.5 -4.5h288q53 0 90.5 -37.5t37.5 -90.5z" />
    <glyph glyph-name="hand_up" unicode="&#xf0a6;" 
d="M1280 -64q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1408 700q0 189 -167 189q-26 0 -56 -5q-16 30 -52.5 47.5t-73.5 17.5t-69 -18q-50 53 -119 53q-25 0 -55.5 -10t-47.5 -25v331q0 52 -38 90t-90 38q-51 0 -89.5 -39t-38.5 -89v-576
q-20 0 -48.5 15t-55 33t-68 33t-84.5 15q-67 0 -97.5 -44.5t-30.5 -115.5q0 -24 139 -90q44 -24 65 -37q64 -40 145 -112q81 -71 106 -101q57 -69 57 -140v-32h640v32q0 72 32 167t64 193.5t32 179.5zM1536 705q0 -133 -69 -322q-59 -164 -59 -223v-288q0 -53 -37.5 -90.5
t-90.5 -37.5h-640q-53 0 -90.5 37.5t-37.5 90.5v288q0 10 -4.5 21.5t-14 23.5t-18 22.5t-22.5 24t-21.5 20.5t-21.5 19t-17 14q-74 65 -129 100q-21 13 -62 33t-72 37t-63 40.5t-49.5 55t-17.5 69.5q0 125 67 206.5t189 81.5q68 0 128 -22v374q0 104 76 180t179 76
q105 0 181 -75.5t76 -180.5v-169q62 -4 119 -37q21 3 43 3q101 0 178 -60q139 1 219.5 -85t80.5 -227z" />
    <glyph glyph-name="hand_down" unicode="&#xf0a7;" 
d="M1408 576q0 84 -32 183t-64 194t-32 167v32h-640v-32q0 -35 -12 -67.5t-37 -62.5t-46 -50t-54 -49q-9 -8 -14 -12q-81 -72 -145 -112q-22 -14 -68 -38q-3 -1 -22.5 -10.5t-36 -18.5t-35.5 -20t-30.5 -21.5t-11.5 -18.5q0 -71 30.5 -115.5t97.5 -44.5q43 0 84.5 15t68 33
t55 33t48.5 15v-576q0 -50 38.5 -89t89.5 -39q52 0 90 38t38 90v331q46 -35 103 -35q69 0 119 53q32 -18 69 -18t73.5 17.5t52.5 47.5q24 -4 56 -4q85 0 126 48.5t41 135.5zM1280 1344q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1536 580
q0 -142 -77.5 -230t-217.5 -87l-5 1q-76 -61 -178 -61q-22 0 -43 3q-54 -30 -119 -37v-169q0 -105 -76 -180.5t-181 -75.5q-103 0 -179 76t-76 180v374q-54 -22 -128 -22q-121 0 -188.5 81.5t-67.5 206.5q0 38 17.5 69.5t49.5 55t63 40.5t72 37t62 33q55 35 129 100
q3 2 17 14t21.5 19t21.5 20.5t22.5 24t18 22.5t14 23.5t4.5 21.5v288q0 53 37.5 90.5t90.5 37.5h640q53 0 90.5 -37.5t37.5 -90.5v-288q0 -59 59 -223q69 -190 69 -317z" />
    <glyph glyph-name="circle_arrow_left" unicode="&#xf0a8;" 
d="M1280 576v128q0 26 -19 45t-45 19h-502l189 189q19 19 19 45t-19 45l-91 91q-18 18 -45 18t-45 -18l-362 -362l-91 -91q-18 -18 -18 -45t18 -45l91 -91l362 -362q18 -18 45 -18t45 18l91 91q18 18 18 45t-18 45l-189 189h502q26 0 45 19t19 45zM1536 640
q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="circle_arrow_right" unicode="&#xf0a9;" 
d="M1285 640q0 27 -18 45l-91 91l-362 362q-18 18 -45 18t-45 -18l-91 -91q-18 -18 -18 -45t18 -45l189 -189h-502q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h502l-189 -189q-19 -19 -19 -45t19 -45l91 -91q18 -18 45 -18t45 18l362 362l91 91q18 18 18 45zM1536 640
q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="circle_arrow_up" unicode="&#xf0aa;" 
d="M1284 641q0 27 -18 45l-362 362l-91 91q-18 18 -45 18t-45 -18l-91 -91l-362 -362q-18 -18 -18 -45t18 -45l91 -91q18 -18 45 -18t45 18l189 189v-502q0 -26 19 -45t45 -19h128q26 0 45 19t19 45v502l189 -189q19 -19 45 -19t45 19l91 91q18 18 18 45zM1536 640
q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="circle_arrow_down" unicode="&#xf0ab;" 
d="M1284 639q0 27 -18 45l-91 91q-18 18 -45 18t-45 -18l-189 -189v502q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-502l-189 189q-19 19 -45 19t-45 -19l-91 -91q-18 -18 -18 -45t18 -45l362 -362l91 -91q18 -18 45 -18t45 18l91 91l362 362q18 18 18 45zM1536 640
q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="globe" unicode="&#xf0ac;" 
d="M768 1408q209 0 385.5 -103t279.5 -279.5t103 -385.5t-103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103zM1042 887q-2 -1 -9.5 -9.5t-13.5 -9.5q2 0 4.5 5t5 11t3.5 7q6 7 22 15q14 6 52 12q34 8 51 -11
q-2 2 9.5 13t14.5 12q3 2 15 4.5t15 7.5l2 22q-12 -1 -17.5 7t-6.5 21q0 -2 -6 -8q0 7 -4.5 8t-11.5 -1t-9 -1q-10 3 -15 7.5t-8 16.5t-4 15q-2 5 -9.5 11t-9.5 10q-1 2 -2.5 5.5t-3 6.5t-4 5.5t-5.5 2.5t-7 -5t-7.5 -10t-4.5 -5q-3 2 -6 1.5t-4.5 -1t-4.5 -3t-5 -3.5
q-3 -2 -8.5 -3t-8.5 -2q15 5 -1 11q-10 4 -16 3q9 4 7.5 12t-8.5 14h5q-1 4 -8.5 8.5t-17.5 8.5t-13 6q-8 5 -34 9.5t-33 0.5q-5 -6 -4.5 -10.5t4 -14t3.5 -12.5q1 -6 -5.5 -13t-6.5 -12q0 -7 14 -15.5t10 -21.5q-3 -8 -16 -16t-16 -12q-5 -8 -1.5 -18.5t10.5 -16.5
q2 -2 1.5 -4t-3.5 -4.5t-5.5 -4t-6.5 -3.5l-3 -2q-11 -5 -20.5 6t-13.5 26q-7 25 -16 30q-23 8 -29 -1q-5 13 -41 26q-25 9 -58 4q6 1 0 15q-7 15 -19 12q3 6 4 17.5t1 13.5q3 13 12 23q1 1 7 8.5t9.5 13.5t0.5 6q35 -4 50 11q5 5 11.5 17t10.5 17q9 6 14 5.5t14.5 -5.5
t14.5 -5q14 -1 15.5 11t-7.5 20q12 -1 3 17q-4 7 -8 9q-12 4 -27 -5q-8 -4 2 -8q-1 1 -9.5 -10.5t-16.5 -17.5t-16 5q-1 1 -5.5 13.5t-9.5 13.5q-8 0 -16 -15q3 8 -11 15t-24 8q19 12 -8 27q-7 4 -20.5 5t-19.5 -4q-5 -7 -5.5 -11.5t5 -8t10.5 -5.5t11.5 -4t8.5 -3
q14 -10 8 -14q-2 -1 -8.5 -3.5t-11.5 -4.5t-6 -4q-3 -4 0 -14t-2 -14q-5 5 -9 17.5t-7 16.5q7 -9 -25 -6l-10 1q-4 0 -16 -2t-20.5 -1t-13.5 8q-4 8 0 20q1 4 4 2q-4 3 -11 9.5t-10 8.5q-46 -15 -94 -41q6 -1 12 1q5 2 13 6.5t10 5.5q34 14 42 7l5 5q14 -16 20 -25
q-7 4 -30 1q-20 -6 -22 -12q7 -12 5 -18q-4 3 -11.5 10t-14.5 11t-15 5q-16 0 -22 -1q-146 -80 -235 -222q7 -7 12 -8q4 -1 5 -9t2.5 -11t11.5 3q9 -8 3 -19q1 1 44 -27q19 -17 21 -21q3 -11 -10 -18q-1 2 -9 9t-9 4q-3 -5 0.5 -18.5t10.5 -12.5q-7 0 -9.5 -16t-2.5 -35.5
t-1 -23.5l2 -1q-3 -12 5.5 -34.5t21.5 -19.5q-13 -3 20 -43q6 -8 8 -9q3 -2 12 -7.5t15 -10t10 -10.5q4 -5 10 -22.5t14 -23.5q-2 -6 9.5 -20t10.5 -23q-1 0 -2.5 -1t-2.5 -1q3 -7 15.5 -14t15.5 -13q1 -3 2 -10t3 -11t8 -2q2 20 -24 62q-15 25 -17 29q-3 5 -5.5 15.5
t-4.5 14.5q2 0 6 -1.5t8.5 -3.5t7.5 -4t2 -3q-3 -7 2 -17.5t12 -18.5t17 -19t12 -13q6 -6 14 -19.5t0 -13.5q9 0 20 -10.5t17 -19.5q5 -8 8 -26t5 -24q2 -7 8.5 -13.5t12.5 -9.5l16 -8t13 -7q5 -2 18.5 -10.5t21.5 -11.5q10 -4 16 -4t14.5 2.5t13.5 3.5q15 2 29 -15t21 -21
q36 -19 55 -11q-2 -1 0.5 -7.5t8 -15.5t9 -14.5t5.5 -8.5q5 -6 18 -15t18 -15q6 4 7 9q-3 -8 7 -20t18 -10q14 3 14 32q-31 -15 -49 18q0 1 -2.5 5.5t-4 8.5t-2.5 8.5t0 7.5t5 3q9 0 10 3.5t-2 12.5t-4 13q-1 8 -11 20t-12 15q-5 -9 -16 -8t-16 9q0 -1 -1.5 -5.5t-1.5 -6.5
q-13 0 -15 1q1 3 2.5 17.5t3.5 22.5q1 4 5.5 12t7.5 14.5t4 12.5t-4.5 9.5t-17.5 2.5q-19 -1 -26 -20q-1 -3 -3 -10.5t-5 -11.5t-9 -7q-7 -3 -24 -2t-24 5q-13 8 -22.5 29t-9.5 37q0 10 2.5 26.5t3 25t-5.5 24.5q3 2 9 9.5t10 10.5q2 1 4.5 1.5t4.5 0t4 1.5t3 6q-1 1 -4 3
q-3 3 -4 3q7 -3 28.5 1.5t27.5 -1.5q15 -11 22 2q0 1 -2.5 9.5t-0.5 13.5q5 -27 29 -9q3 -3 15.5 -5t17.5 -5q3 -2 7 -5.5t5.5 -4.5t5 0.5t8.5 6.5q10 -14 12 -24q11 -40 19 -44q7 -3 11 -2t4.5 9.5t0 14t-1.5 12.5l-1 8v18l-1 8q-15 3 -18.5 12t1.5 18.5t15 18.5q1 1 8 3.5
t15.5 6.5t12.5 8q21 19 15 35q7 0 11 9q-1 0 -5 3t-7.5 5t-4.5 2q9 5 2 16q5 3 7.5 11t7.5 10q9 -12 21 -2q8 8 1 16q5 7 20.5 10.5t18.5 9.5q7 -2 8 2t1 12t3 12q4 5 15 9t13 5l17 11q3 4 0 4q18 -2 31 11q10 11 -6 20q3 6 -3 9.5t-15 5.5q3 1 11.5 0.5t10.5 1.5
q15 10 -7 16q-17 5 -43 -12zM879 10q206 36 351 189q-3 3 -12.5 4.5t-12.5 3.5q-18 7 -24 8q1 7 -2.5 13t-8 9t-12.5 8t-11 7q-2 2 -7 6t-7 5.5t-7.5 4.5t-8.5 2t-10 -1l-3 -1q-3 -1 -5.5 -2.5t-5.5 -3t-4 -3t0 -2.5q-21 17 -36 22q-5 1 -11 5.5t-10.5 7t-10 1.5t-11.5 -7
q-5 -5 -6 -15t-2 -13q-7 5 0 17.5t2 18.5q-3 6 -10.5 4.5t-12 -4.5t-11.5 -8.5t-9 -6.5t-8.5 -5.5t-8.5 -7.5q-3 -4 -6 -12t-5 -11q-2 4 -11.5 6.5t-9.5 5.5q2 -10 4 -35t5 -38q7 -31 -12 -48q-27 -25 -29 -40q-4 -22 12 -26q0 -7 -8 -20.5t-7 -21.5q0 -6 2 -16z" />
    <glyph glyph-name="wrench" unicode="&#xf0ad;" horiz-adv-x="1664" 
d="M384 64q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1028 484l-682 -682q-37 -37 -90 -37q-52 0 -91 37l-106 108q-38 36 -38 90q0 53 38 91l681 681q39 -98 114.5 -173.5t173.5 -114.5zM1662 919q0 -39 -23 -106q-47 -134 -164.5 -217.5
t-258.5 -83.5q-185 0 -316.5 131.5t-131.5 316.5t131.5 316.5t316.5 131.5q58 0 121.5 -16.5t107.5 -46.5q16 -11 16 -28t-16 -28l-293 -169v-224l193 -107q5 3 79 48.5t135.5 81t70.5 35.5q15 0 23.5 -10t8.5 -25z" />
    <glyph glyph-name="tasks" unicode="&#xf0ae;" horiz-adv-x="1792" 
d="M1024 128h640v128h-640v-128zM640 640h1024v128h-1024v-128zM1280 1152h384v128h-384v-128zM1792 320v-256q0 -26 -19 -45t-45 -19h-1664q-26 0 -45 19t-19 45v256q0 26 19 45t45 19h1664q26 0 45 -19t19 -45zM1792 832v-256q0 -26 -19 -45t-45 -19h-1664q-26 0 -45 19
t-19 45v256q0 26 19 45t45 19h1664q26 0 45 -19t19 -45zM1792 1344v-256q0 -26 -19 -45t-45 -19h-1664q-26 0 -45 19t-19 45v256q0 26 19 45t45 19h1664q26 0 45 -19t19 -45z" />
    <glyph glyph-name="filter" unicode="&#xf0b0;" horiz-adv-x="1408" 
d="M1403 1241q17 -41 -14 -70l-493 -493v-742q0 -42 -39 -59q-13 -5 -25 -5q-27 0 -45 19l-256 256q-19 19 -19 45v486l-493 493q-31 29 -14 70q17 39 59 39h1280q42 0 59 -39z" />
    <glyph glyph-name="briefcase" unicode="&#xf0b1;" horiz-adv-x="1792" 
d="M640 1280h512v128h-512v-128zM1792 640v-480q0 -66 -47 -113t-113 -47h-1472q-66 0 -113 47t-47 113v480h672v-160q0 -26 19 -45t45 -19h320q26 0 45 19t19 45v160h672zM1024 640v-128h-256v128h256zM1792 1120v-384h-1792v384q0 66 47 113t113 47h352v160q0 40 28 68
t68 28h576q40 0 68 -28t28 -68v-160h352q66 0 113 -47t47 -113z" />
    <glyph glyph-name="fullscreen" unicode="&#xf0b2;" 
d="M1283 995l-355 -355l355 -355l144 144q29 31 70 14q39 -17 39 -59v-448q0 -26 -19 -45t-45 -19h-448q-42 0 -59 40q-17 39 14 69l144 144l-355 355l-355 -355l144 -144q31 -30 14 -69q-17 -40 -59 -40h-448q-26 0 -45 19t-19 45v448q0 42 40 59q39 17 69 -14l144 -144
l355 355l-355 355l-144 -144q-19 -19 -45 -19q-12 0 -24 5q-40 17 -40 59v448q0 26 19 45t45 19h448q42 0 59 -40q17 -39 -14 -69l-144 -144l355 -355l355 355l-144 144q-31 30 -14 69q17 40 59 40h448q26 0 45 -19t19 -45v-448q0 -42 -39 -59q-13 -5 -25 -5q-26 0 -45 19z
" />
    <glyph glyph-name="group" unicode="&#xf0c0;" horiz-adv-x="1920" 
d="M593 640q-162 -5 -265 -128h-134q-82 0 -138 40.5t-56 118.5q0 353 124 353q6 0 43.5 -21t97.5 -42.5t119 -21.5q67 0 133 23q-5 -37 -5 -66q0 -139 81 -256zM1664 3q0 -120 -73 -189.5t-194 -69.5h-874q-121 0 -194 69.5t-73 189.5q0 53 3.5 103.5t14 109t26.5 108.5
t43 97.5t62 81t85.5 53.5t111.5 20q10 0 43 -21.5t73 -48t107 -48t135 -21.5t135 21.5t107 48t73 48t43 21.5q61 0 111.5 -20t85.5 -53.5t62 -81t43 -97.5t26.5 -108.5t14 -109t3.5 -103.5zM640 1280q0 -106 -75 -181t-181 -75t-181 75t-75 181t75 181t181 75t181 -75
t75 -181zM1344 896q0 -159 -112.5 -271.5t-271.5 -112.5t-271.5 112.5t-112.5 271.5t112.5 271.5t271.5 112.5t271.5 -112.5t112.5 -271.5zM1920 671q0 -78 -56 -118.5t-138 -40.5h-134q-103 123 -265 128q81 117 81 256q0 29 -5 66q66 -23 133 -23q59 0 119 21.5t97.5 42.5
t43.5 21q124 0 124 -353zM1792 1280q0 -106 -75 -181t-181 -75t-181 75t-75 181t75 181t181 75t181 -75t75 -181z" />
    <glyph glyph-name="link" unicode="&#xf0c1;" horiz-adv-x="1664" 
d="M1456 320q0 40 -28 68l-208 208q-28 28 -68 28q-42 0 -72 -32q3 -3 19 -18.5t21.5 -21.5t15 -19t13 -25.5t3.5 -27.5q0 -40 -28 -68t-68 -28q-15 0 -27.5 3.5t-25.5 13t-19 15t-21.5 21.5t-18.5 19q-33 -31 -33 -73q0 -40 28 -68l206 -207q27 -27 68 -27q40 0 68 26
l147 146q28 28 28 67zM753 1025q0 40 -28 68l-206 207q-28 28 -68 28q-39 0 -68 -27l-147 -146q-28 -28 -28 -67q0 -40 28 -68l208 -208q27 -27 68 -27q42 0 72 31q-3 3 -19 18.5t-21.5 21.5t-15 19t-13 25.5t-3.5 27.5q0 40 28 68t68 28q15 0 27.5 -3.5t25.5 -13t19 -15
t21.5 -21.5t18.5 -19q33 31 33 73zM1648 320q0 -120 -85 -203l-147 -146q-83 -83 -203 -83q-121 0 -204 85l-206 207q-83 83 -83 203q0 123 88 209l-88 88q-86 -88 -208 -88q-120 0 -204 84l-208 208q-84 84 -84 204t85 203l147 146q83 83 203 83q121 0 204 -85l206 -207
q83 -83 83 -203q0 -123 -88 -209l88 -88q86 88 208 88q120 0 204 -84l208 -208q84 -84 84 -204z" />
    <glyph glyph-name="cloud" unicode="&#xf0c2;" horiz-adv-x="1920" 
d="M1920 384q0 -159 -112.5 -271.5t-271.5 -112.5h-1088q-185 0 -316.5 131.5t-131.5 316.5q0 132 71 241.5t187 163.5q-2 28 -2 43q0 212 150 362t362 150q158 0 286.5 -88t187.5 -230q70 62 166 62q106 0 181 -75t75 -181q0 -75 -41 -138q129 -30 213 -134.5t84 -239.5z
" />
    <glyph glyph-name="beaker" unicode="&#xf0c3;" horiz-adv-x="1664" 
d="M1527 88q56 -89 21.5 -152.5t-140.5 -63.5h-1152q-106 0 -140.5 63.5t21.5 152.5l503 793v399h-64q-26 0 -45 19t-19 45t19 45t45 19h512q26 0 45 -19t19 -45t-19 -45t-45 -19h-64v-399zM748 813l-272 -429h712l-272 429l-20 31v37v399h-128v-399v-37z" />
    <glyph glyph-name="cut" unicode="&#xf0c4;" horiz-adv-x="1792" 
d="M960 640q26 0 45 -19t19 -45t-19 -45t-45 -19t-45 19t-19 45t19 45t45 19zM1260 576l507 -398q28 -20 25 -56q-5 -35 -35 -51l-128 -64q-13 -7 -29 -7q-17 0 -31 8l-690 387l-110 -66q-8 -4 -12 -5q14 -49 10 -97q-7 -77 -56 -147.5t-132 -123.5q-132 -84 -277 -84
q-136 0 -222 78q-90 84 -79 207q7 76 56 147t131 124q132 84 278 84q83 0 151 -31q9 13 22 22l122 73l-122 73q-13 9 -22 22q-68 -31 -151 -31q-146 0 -278 84q-82 53 -131 124t-56 147q-5 59 15.5 113t63.5 93q85 79 222 79q145 0 277 -84q83 -52 132 -123t56 -148
q4 -48 -10 -97q4 -1 12 -5l110 -66l690 387q14 8 31 8q16 0 29 -7l128 -64q30 -16 35 -51q3 -36 -25 -56zM579 836q46 42 21 108t-106 117q-92 59 -192 59q-74 0 -113 -36q-46 -42 -21 -108t106 -117q92 -59 192 -59q74 0 113 36zM494 91q81 51 106 117t-21 108
q-39 36 -113 36q-100 0 -192 -59q-81 -51 -106 -117t21 -108q39 -36 113 -36q100 0 192 59zM672 704l96 -58v11q0 36 33 56l14 8l-79 47l-26 -26q-3 -3 -10 -11t-12 -12q-2 -2 -4 -3.5t-3 -2.5zM896 480l96 -32l736 576l-128 64l-768 -431v-113l-160 -96l9 -8q2 -2 7 -6
q4 -4 11 -12t11 -12l26 -26zM1600 64l128 64l-520 408l-177 -138q-2 -3 -13 -7z" />
    <glyph glyph-name="copy" unicode="&#xf0c5;" horiz-adv-x="1792" 
d="M1696 1152q40 0 68 -28t28 -68v-1216q0 -40 -28 -68t-68 -28h-960q-40 0 -68 28t-28 68v288h-544q-40 0 -68 28t-28 68v672q0 40 20 88t48 76l408 408q28 28 76 48t88 20h416q40 0 68 -28t28 -68v-328q68 40 128 40h416zM1152 939l-299 -299h299v299zM512 1323l-299 -299
h299v299zM708 676l316 316v416h-384v-416q0 -40 -28 -68t-68 -28h-416v-640h512v256q0 40 20 88t48 76zM1664 -128v1152h-384v-416q0 -40 -28 -68t-68 -28h-416v-640h896z" />
    <glyph glyph-name="paper_clip" unicode="&#xf0c6;" horiz-adv-x="1408" 
d="M1404 151q0 -117 -79 -196t-196 -79q-135 0 -235 100l-777 776q-113 115 -113 271q0 159 110 270t269 111q158 0 273 -113l605 -606q10 -10 10 -22q0 -16 -30.5 -46.5t-46.5 -30.5q-13 0 -23 10l-606 607q-79 77 -181 77q-106 0 -179 -75t-73 -181q0 -105 76 -181
l776 -777q63 -63 145 -63q64 0 106 42t42 106q0 82 -63 145l-581 581q-26 24 -60 24q-29 0 -48 -19t-19 -48q0 -32 25 -59l410 -410q10 -10 10 -22q0 -16 -31 -47t-47 -31q-12 0 -22 10l-410 410q-63 61 -63 149q0 82 57 139t139 57q88 0 149 -63l581 -581q100 -98 100 -235
z" />
    <glyph glyph-name="save" unicode="&#xf0c7;" 
d="M384 0h768v384h-768v-384zM1280 0h128v896q0 14 -10 38.5t-20 34.5l-281 281q-10 10 -34 20t-39 10v-416q0 -40 -28 -68t-68 -28h-576q-40 0 -68 28t-28 68v416h-128v-1280h128v416q0 40 28 68t68 28h832q40 0 68 -28t28 -68v-416zM896 928v320q0 13 -9.5 22.5t-22.5 9.5
h-192q-13 0 -22.5 -9.5t-9.5 -22.5v-320q0 -13 9.5 -22.5t22.5 -9.5h192q13 0 22.5 9.5t9.5 22.5zM1536 896v-928q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1344q0 40 28 68t68 28h928q40 0 88 -20t76 -48l280 -280q28 -28 48 -76t20 -88z" />
    <glyph glyph-name="sign_blank" unicode="&#xf0c8;" 
d="M1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" />
    <glyph glyph-name="reorder" unicode="&#xf0c9;" 
d="M1536 192v-128q0 -26 -19 -45t-45 -19h-1408q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1408q26 0 45 -19t19 -45zM1536 704v-128q0 -26 -19 -45t-45 -19h-1408q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1408q26 0 45 -19t19 -45zM1536 1216v-128q0 -26 -19 -45
t-45 -19h-1408q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1408q26 0 45 -19t19 -45z" />
    <glyph glyph-name="ul" unicode="&#xf0ca;" horiz-adv-x="1792" 
d="M384 128q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM384 640q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM1792 224v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1216q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5
t22.5 9.5h1216q13 0 22.5 -9.5t9.5 -22.5zM384 1152q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM1792 736v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1216q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1216q13 0 22.5 -9.5t9.5 -22.5z
M1792 1248v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1216q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1216q13 0 22.5 -9.5t9.5 -22.5z" />
    <glyph glyph-name="ol" unicode="&#xf0cb;" horiz-adv-x="1792" 
d="M381 -84q0 -80 -54.5 -126t-135.5 -46q-106 0 -172 66l57 88q49 -45 106 -45q29 0 50.5 14.5t21.5 42.5q0 64 -105 56l-26 56q8 10 32.5 43.5t42.5 54t37 38.5v1q-16 0 -48.5 -1t-48.5 -1v-53h-106v152h333v-88l-95 -115q51 -12 81 -49t30 -88zM383 543v-159h-362
q-6 36 -6 54q0 51 23.5 93t56.5 68t66 47.5t56.5 43.5t23.5 45q0 25 -14.5 38.5t-39.5 13.5q-46 0 -81 -58l-85 59q24 51 71.5 79.5t105.5 28.5q73 0 123 -41.5t50 -112.5q0 -50 -34 -91.5t-75 -64.5t-75.5 -50.5t-35.5 -52.5h127v60h105zM1792 224v-192q0 -13 -9.5 -22.5
t-22.5 -9.5h-1216q-13 0 -22.5 9.5t-9.5 22.5v192q0 14 9 23t23 9h1216q13 0 22.5 -9.5t9.5 -22.5zM384 1123v-99h-335v99h107q0 41 0.5 121.5t0.5 121.5v12h-2q-8 -17 -50 -54l-71 76l136 127h106v-404h108zM1792 736v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1216
q-13 0 -22.5 9.5t-9.5 22.5v192q0 14 9 23t23 9h1216q13 0 22.5 -9.5t9.5 -22.5zM1792 1248v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1216q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1216q13 0 22.5 -9.5t9.5 -22.5z" />
    <glyph glyph-name="strikethrough" unicode="&#xf0cc;" horiz-adv-x="1792" 
d="M1760 640q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-1728q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h1728zM483 704q-28 35 -51 80q-48 98 -48 188q0 181 134 309q133 127 393 127q50 0 167 -19q66 -12 177 -48q10 -38 21 -118q14 -123 14 -183q0 -18 -5 -45l-12 -3l-84 6
l-14 2q-50 149 -103 205q-88 91 -210 91q-114 0 -182 -59q-67 -58 -67 -146q0 -73 66 -140t279 -129q69 -20 173 -66q58 -28 95 -52h-743zM990 448h411q7 -39 7 -92q0 -111 -41 -212q-23 -56 -71 -104q-37 -35 -109 -81q-80 -48 -153 -66q-80 -21 -203 -21q-114 0 -195 23
l-140 40q-57 16 -72 28q-8 8 -8 22v13q0 108 -2 156q-1 30 0 68l2 37v44l102 2q15 -34 30 -71t22.5 -56t12.5 -27q35 -57 80 -94q43 -36 105 -57q59 -22 132 -22q64 0 139 27q77 26 122 86q47 61 47 129q0 84 -81 157q-34 29 -137 71z" />
    <glyph glyph-name="underline" unicode="&#xf0cd;" 
d="M48 1313q-37 2 -45 4l-3 88q13 1 40 1q60 0 112 -4q132 -7 166 -7q86 0 168 3q116 4 146 5q56 0 86 2l-1 -14l2 -64v-9q-60 -9 -124 -9q-60 0 -79 -25q-13 -14 -13 -132q0 -13 0.5 -32.5t0.5 -25.5l1 -229l14 -280q6 -124 51 -202q35 -59 96 -92q88 -47 177 -47
q104 0 191 28q56 18 99 51q48 36 65 64q36 56 53 114q21 73 21 229q0 79 -3.5 128t-11 122.5t-13.5 159.5l-4 59q-5 67 -24 88q-34 35 -77 34l-100 -2l-14 3l2 86h84l205 -10q76 -3 196 10l18 -2q6 -38 6 -51q0 -7 -4 -31q-45 -12 -84 -13q-73 -11 -79 -17q-15 -15 -15 -41
q0 -7 1.5 -27t1.5 -31q8 -19 22 -396q6 -195 -15 -304q-15 -76 -41 -122q-38 -65 -112 -123q-75 -57 -182 -89q-109 -33 -255 -33q-167 0 -284 46q-119 47 -179 122q-61 76 -83 195q-16 80 -16 237v333q0 188 -17 213q-25 36 -147 39zM1536 -96v64q0 14 -9 23t-23 9h-1472
q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h1472q14 0 23 9t9 23z" />
    <glyph glyph-name="table" unicode="&#xf0ce;" horiz-adv-x="1664" 
d="M512 160v192q0 14 -9 23t-23 9h-320q-14 0 -23 -9t-9 -23v-192q0 -14 9 -23t23 -9h320q14 0 23 9t9 23zM512 544v192q0 14 -9 23t-23 9h-320q-14 0 -23 -9t-9 -23v-192q0 -14 9 -23t23 -9h320q14 0 23 9t9 23zM1024 160v192q0 14 -9 23t-23 9h-320q-14 0 -23 -9t-9 -23
v-192q0 -14 9 -23t23 -9h320q14 0 23 9t9 23zM512 928v192q0 14 -9 23t-23 9h-320q-14 0 -23 -9t-9 -23v-192q0 -14 9 -23t23 -9h320q14 0 23 9t9 23zM1024 544v192q0 14 -9 23t-23 9h-320q-14 0 -23 -9t-9 -23v-192q0 -14 9 -23t23 -9h320q14 0 23 9t9 23zM1536 160v192
q0 14 -9 23t-23 9h-320q-14 0 -23 -9t-9 -23v-192q0 -14 9 -23t23 -9h320q14 0 23 9t9 23zM1024 928v192q0 14 -9 23t-23 9h-320q-14 0 -23 -9t-9 -23v-192q0 -14 9 -23t23 -9h320q14 0 23 9t9 23zM1536 544v192q0 14 -9 23t-23 9h-320q-14 0 -23 -9t-9 -23v-192
q0 -14 9 -23t23 -9h320q14 0 23 9t9 23zM1536 928v192q0 14 -9 23t-23 9h-320q-14 0 -23 -9t-9 -23v-192q0 -14 9 -23t23 -9h320q14 0 23 9t9 23zM1664 1248v-1088q0 -66 -47 -113t-113 -47h-1344q-66 0 -113 47t-47 113v1088q0 66 47 113t113 47h1344q66 0 113 -47t47 -113
z" />
    <glyph glyph-name="magic" unicode="&#xf0d0;" horiz-adv-x="1664" 
d="M1190 955l293 293l-107 107l-293 -293zM1637 1248q0 -27 -18 -45l-1286 -1286q-18 -18 -45 -18t-45 18l-198 198q-18 18 -18 45t18 45l1286 1286q18 18 45 18t45 -18l198 -198q18 -18 18 -45zM286 1438l98 -30l-98 -30l-30 -98l-30 98l-98 30l98 30l30 98zM636 1276
l196 -60l-196 -60l-60 -196l-60 196l-196 60l196 60l60 196zM1566 798l98 -30l-98 -30l-30 -98l-30 98l-98 30l98 30l30 98zM926 1438l98 -30l-98 -30l-30 -98l-30 98l-98 30l98 30l30 98z" />
    <glyph glyph-name="truck" unicode="&#xf0d1;" horiz-adv-x="1792" 
d="M640 128q0 52 -38 90t-90 38t-90 -38t-38 -90t38 -90t90 -38t90 38t38 90zM256 640h384v256h-158q-13 0 -22 -9l-195 -195q-9 -9 -9 -22v-30zM1536 128q0 52 -38 90t-90 38t-90 -38t-38 -90t38 -90t90 -38t90 38t38 90zM1792 1216v-1024q0 -15 -4 -26.5t-13.5 -18.5
t-16.5 -11.5t-23.5 -6t-22.5 -2t-25.5 0t-22.5 0.5q0 -106 -75 -181t-181 -75t-181 75t-75 181h-384q0 -106 -75 -181t-181 -75t-181 75t-75 181h-64q-3 0 -22.5 -0.5t-25.5 0t-22.5 2t-23.5 6t-16.5 11.5t-13.5 18.5t-4 26.5q0 26 19 45t45 19v320q0 8 -0.5 35t0 38
t2.5 34.5t6.5 37t14 30.5t22.5 30l198 198q19 19 50.5 32t58.5 13h160v192q0 26 19 45t45 19h1024q26 0 45 -19t19 -45z" />
    <glyph glyph-name="pinterest" unicode="&#xf0d2;" 
d="M1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103q-111 0 -218 32q59 93 78 164q9 34 54 211q20 -39 73 -67.5t114 -28.5q121 0 216 68.5t147 188.5t52 270q0 114 -59.5 214t-172.5 163t-255 63q-105 0 -196 -29t-154.5 -77t-109 -110.5t-67 -129.5t-21.5 -134
q0 -104 40 -183t117 -111q30 -12 38 20q2 7 8 31t8 30q6 23 -11 43q-51 61 -51 151q0 151 104.5 259.5t273.5 108.5q151 0 235.5 -82t84.5 -213q0 -170 -68.5 -289t-175.5 -119q-61 0 -98 43.5t-23 104.5q8 35 26.5 93.5t30 103t11.5 75.5q0 50 -27 83t-77 33
q-62 0 -105 -57t-43 -142q0 -73 25 -122l-99 -418q-17 -70 -13 -177q-206 91 -333 281t-127 423q0 209 103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="pinterest_sign" unicode="&#xf0d3;" 
d="M1248 1408q119 0 203.5 -84.5t84.5 -203.5v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-725q85 122 108 210q9 34 53 209q21 -39 73.5 -67t112.5 -28q181 0 295.5 147.5t114.5 373.5q0 84 -35 162.5t-96.5 139t-152.5 97t-197 36.5q-104 0 -194.5 -28.5t-153 -76.5
t-107.5 -109.5t-66.5 -128t-21.5 -132.5q0 -102 39.5 -180t116.5 -110q13 -5 23.5 0t14.5 19q10 44 15 61q6 23 -11 42q-50 62 -50 150q0 150 103.5 256.5t270.5 106.5q149 0 232.5 -81t83.5 -210q0 -168 -67.5 -286t-173.5 -118q-60 0 -97 43.5t-23 103.5q8 34 26.5 92.5
t29.5 102t11 74.5q0 49 -26.5 81.5t-75.5 32.5q-61 0 -103.5 -56.5t-42.5 -139.5q0 -72 24 -121l-98 -414q-24 -100 -7 -254h-183q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960z" />
    <glyph glyph-name="google_plus_sign" unicode="&#xf0d4;" 
d="M917 631q0 26 -6 64h-362v-132h217q-3 -24 -16.5 -50t-37.5 -53t-66.5 -44.5t-96.5 -17.5q-99 0 -169 71t-70 171t70 171t169 71q92 0 153 -59l104 101q-108 100 -257 100q-160 0 -272 -112.5t-112 -271.5t112 -271.5t272 -112.5q165 0 266.5 105t101.5 270zM1262 585
h109v110h-109v110h-110v-110h-110v-110h110v-110h110v110zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" />
    <glyph glyph-name="google_plus" unicode="&#xf0d5;" horiz-adv-x="2304" 
d="M1437 623q0 -208 -87 -370.5t-248 -254t-369 -91.5q-149 0 -285 58t-234 156t-156 234t-58 285t58 285t156 234t234 156t285 58q286 0 491 -192l-199 -191q-117 113 -292 113q-123 0 -227.5 -62t-165.5 -168.5t-61 -232.5t61 -232.5t165.5 -168.5t227.5 -62
q83 0 152.5 23t114.5 57.5t78.5 78.5t49 83t21.5 74h-416v252h692q12 -63 12 -122zM2304 745v-210h-209v-209h-210v209h-209v210h209v209h210v-209h209z" />
    <glyph glyph-name="money" unicode="&#xf0d6;" horiz-adv-x="1920" 
d="M768 384h384v96h-128v448h-114l-148 -137l77 -80q42 37 55 57h2v-288h-128v-96zM1280 640q0 -70 -21 -142t-59.5 -134t-101.5 -101t-138 -39t-138 39t-101.5 101t-59.5 134t-21 142t21 142t59.5 134t101.5 101t138 39t138 -39t101.5 -101t59.5 -134t21 -142zM1792 384
v512q-106 0 -181 75t-75 181h-1152q0 -106 -75 -181t-181 -75v-512q106 0 181 -75t75 -181h1152q0 106 75 181t181 75zM1920 1216v-1152q0 -26 -19 -45t-45 -19h-1792q-26 0 -45 19t-19 45v1152q0 26 19 45t45 19h1792q26 0 45 -19t19 -45z" />
    <glyph glyph-name="caret_down" unicode="&#xf0d7;" horiz-adv-x="1024" 
d="M1024 832q0 -26 -19 -45l-448 -448q-19 -19 -45 -19t-45 19l-448 448q-19 19 -19 45t19 45t45 19h896q26 0 45 -19t19 -45z" />
    <glyph glyph-name="caret_up" unicode="&#xf0d8;" horiz-adv-x="1024" 
d="M1024 320q0 -26 -19 -45t-45 -19h-896q-26 0 -45 19t-19 45t19 45l448 448q19 19 45 19t45 -19l448 -448q19 -19 19 -45z" />
    <glyph glyph-name="caret_left" unicode="&#xf0d9;" horiz-adv-x="640" 
d="M640 1088v-896q0 -26 -19 -45t-45 -19t-45 19l-448 448q-19 19 -19 45t19 45l448 448q19 19 45 19t45 -19t19 -45z" />
    <glyph glyph-name="caret_right" unicode="&#xf0da;" horiz-adv-x="640" 
d="M576 640q0 -26 -19 -45l-448 -448q-19 -19 -45 -19t-45 19t-19 45v896q0 26 19 45t45 19t45 -19l448 -448q19 -19 19 -45z" />
    <glyph glyph-name="columns" unicode="&#xf0db;" horiz-adv-x="1664" 
d="M160 0h608v1152h-640v-1120q0 -13 9.5 -22.5t22.5 -9.5zM1536 32v1120h-640v-1152h608q13 0 22.5 9.5t9.5 22.5zM1664 1248v-1216q0 -66 -47 -113t-113 -47h-1344q-66 0 -113 47t-47 113v1216q0 66 47 113t113 47h1344q66 0 113 -47t47 -113z" />
    <glyph glyph-name="sort" unicode="&#xf0dc;" horiz-adv-x="1024" 
d="M1024 448q0 -26 -19 -45l-448 -448q-19 -19 -45 -19t-45 19l-448 448q-19 19 -19 45t19 45t45 19h896q26 0 45 -19t19 -45zM1024 832q0 -26 -19 -45t-45 -19h-896q-26 0 -45 19t-19 45t19 45l448 448q19 19 45 19t45 -19l448 -448q19 -19 19 -45z" />
    <glyph glyph-name="sort_down" unicode="&#xf0dd;" horiz-adv-x="1024" 
d="M1024 448q0 -26 -19 -45l-448 -448q-19 -19 -45 -19t-45 19l-448 448q-19 19 -19 45t19 45t45 19h896q26 0 45 -19t19 -45z" />
    <glyph glyph-name="sort_up" unicode="&#xf0de;" horiz-adv-x="1024" 
d="M1024 832q0 -26 -19 -45t-45 -19h-896q-26 0 -45 19t-19 45t19 45l448 448q19 19 45 19t45 -19l448 -448q19 -19 19 -45z" />
    <glyph glyph-name="envelope_alt" unicode="&#xf0e0;" horiz-adv-x="1792" 
d="M1792 826v-794q0 -66 -47 -113t-113 -47h-1472q-66 0 -113 47t-47 113v794q44 -49 101 -87q362 -246 497 -345q57 -42 92.5 -65.5t94.5 -48t110 -24.5h1h1q51 0 110 24.5t94.5 48t92.5 65.5q170 123 498 345q57 39 100 87zM1792 1120q0 -79 -49 -151t-122 -123
q-376 -261 -468 -325q-10 -7 -42.5 -30.5t-54 -38t-52 -32.5t-57.5 -27t-50 -9h-1h-1q-23 0 -50 9t-57.5 27t-52 32.5t-54 38t-42.5 30.5q-91 64 -262 182.5t-205 142.5q-62 42 -117 115.5t-55 136.5q0 78 41.5 130t118.5 52h1472q65 0 112.5 -47t47.5 -113z" />
    <glyph glyph-name="linkedin" unicode="&#xf0e1;" 
d="M349 911v-991h-330v991h330zM370 1217q1 -73 -50.5 -122t-135.5 -49h-2q-82 0 -132 49t-50 122q0 74 51.5 122.5t134.5 48.5t133 -48.5t51 -122.5zM1536 488v-568h-329v530q0 105 -40.5 164.5t-126.5 59.5q-63 0 -105.5 -34.5t-63.5 -85.5q-11 -30 -11 -81v-553h-329
q2 399 2 647t-1 296l-1 48h329v-144h-2q20 32 41 56t56.5 52t87 43.5t114.5 15.5q171 0 275 -113.5t104 -332.5z" />
    <glyph glyph-name="undo" unicode="&#xf0e2;" 
d="M1536 640q0 -156 -61 -298t-164 -245t-245 -164t-298 -61q-172 0 -327 72.5t-264 204.5q-7 10 -6.5 22.5t8.5 20.5l137 138q10 9 25 9q16 -2 23 -12q73 -95 179 -147t225 -52q104 0 198.5 40.5t163.5 109.5t109.5 163.5t40.5 198.5t-40.5 198.5t-109.5 163.5
t-163.5 109.5t-198.5 40.5q-98 0 -188 -35.5t-160 -101.5l137 -138q31 -30 14 -69q-17 -40 -59 -40h-448q-26 0 -45 19t-19 45v448q0 42 40 59q39 17 69 -14l130 -129q107 101 244.5 156.5t284.5 55.5q156 0 298 -61t245 -164t164 -245t61 -298z" />
    <glyph glyph-name="legal" unicode="&#xf0e3;" horiz-adv-x="1792" 
d="M1771 0q0 -53 -37 -90l-107 -108q-39 -37 -91 -37q-53 0 -90 37l-363 364q-38 36 -38 90q0 53 43 96l-256 256l-126 -126q-14 -14 -34 -14t-34 14q2 -2 12.5 -12t12.5 -13t10 -11.5t10 -13.5t6 -13.5t5.5 -16.5t1.5 -18q0 -38 -28 -68q-3 -3 -16.5 -18t-19 -20.5
t-18.5 -16.5t-22 -15.5t-22 -9t-26 -4.5q-40 0 -68 28l-408 408q-28 28 -28 68q0 13 4.5 26t9 22t15.5 22t16.5 18.5t20.5 19t18 16.5q30 28 68 28q10 0 18 -1.5t16.5 -5.5t13.5 -6t13.5 -10t11.5 -10t13 -12.5t12 -12.5q-14 14 -14 34t14 34l348 348q14 14 34 14t34 -14
q-2 2 -12.5 12t-12.5 13t-10 11.5t-10 13.5t-6 13.5t-5.5 16.5t-1.5 18q0 38 28 68q3 3 16.5 18t19 20.5t18.5 16.5t22 15.5t22 9t26 4.5q40 0 68 -28l408 -408q28 -28 28 -68q0 -13 -4.5 -26t-9 -22t-15.5 -22t-16.5 -18.5t-20.5 -19t-18 -16.5q-30 -28 -68 -28
q-10 0 -18 1.5t-16.5 5.5t-13.5 6t-13.5 10t-11.5 10t-13 12.5t-12 12.5q14 -14 14 -34t-14 -34l-126 -126l256 -256q43 43 96 43q52 0 91 -37l363 -363q37 -39 37 -91z" />
    <glyph glyph-name="dashboard" unicode="&#xf0e4;" horiz-adv-x="1792" 
d="M384 384q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM576 832q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1004 351l101 382q6 26 -7.5 48.5t-38.5 29.5
t-48 -6.5t-30 -39.5l-101 -382q-60 -5 -107 -43.5t-63 -98.5q-20 -77 20 -146t117 -89t146 20t89 117q16 60 -6 117t-72 91zM1664 384q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1024 1024q0 53 -37.5 90.5
t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1472 832q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1792 384q0 -261 -141 -483q-19 -29 -54 -29h-1402q-35 0 -54 29
q-141 221 -141 483q0 182 71 348t191 286t286 191t348 71t348 -71t286 -191t191 -286t71 -348z" />
    <glyph glyph-name="comment_alt" unicode="&#xf0e5;" horiz-adv-x="1792" 
d="M896 1152q-204 0 -381.5 -69.5t-282 -187.5t-104.5 -255q0 -112 71.5 -213.5t201.5 -175.5l87 -50l-27 -96q-24 -91 -70 -172q152 63 275 171l43 38l57 -6q69 -8 130 -8q204 0 381.5 69.5t282 187.5t104.5 255t-104.5 255t-282 187.5t-381.5 69.5zM1792 640
q0 -174 -120 -321.5t-326 -233t-450 -85.5q-70 0 -145 8q-198 -175 -460 -242q-49 -14 -114 -22h-5q-15 0 -27 10.5t-16 27.5v1q-3 4 -0.5 12t2 10t4.5 9.5l6 9t7 8.5t8 9q7 8 31 34.5t34.5 38t31 39.5t32.5 51t27 59t26 76q-157 89 -247.5 220t-90.5 281q0 174 120 321.5
t326 233t450 85.5t450 -85.5t326 -233t120 -321.5z" />
    <glyph glyph-name="comments_alt" unicode="&#xf0e6;" horiz-adv-x="1792" 
d="M704 1152q-153 0 -286 -52t-211.5 -141t-78.5 -191q0 -82 53 -158t149 -132l97 -56l-35 -84q34 20 62 39l44 31l53 -10q78 -14 153 -14q153 0 286 52t211.5 141t78.5 191t-78.5 191t-211.5 141t-286 52zM704 1280q191 0 353.5 -68.5t256.5 -186.5t94 -257t-94 -257
t-256.5 -186.5t-353.5 -68.5q-86 0 -176 16q-124 -88 -278 -128q-36 -9 -86 -16h-3q-11 0 -20.5 8t-11.5 21q-1 3 -1 6.5t0.5 6.5t2 6l2.5 5t3.5 5.5t4 5t4.5 5t4 4.5q5 6 23 25t26 29.5t22.5 29t25 38.5t20.5 44q-124 72 -195 177t-71 224q0 139 94 257t256.5 186.5
t353.5 68.5zM1526 111q10 -24 20.5 -44t25 -38.5t22.5 -29t26 -29.5t23 -25q1 -1 4 -4.5t4.5 -5t4 -5t3.5 -5.5l2.5 -5t2 -6t0.5 -6.5t-1 -6.5q-3 -14 -13 -22t-22 -7q-50 7 -86 16q-154 40 -278 128q-90 -16 -176 -16q-271 0 -472 132q58 -4 88 -4q161 0 309 45t264 129
q125 92 192 212t67 254q0 77 -23 152q129 -71 204 -178t75 -230q0 -120 -71 -224.5t-195 -176.5z" />
    <glyph glyph-name="bolt" unicode="&#xf0e7;" horiz-adv-x="896" 
d="M885 970q18 -20 7 -44l-540 -1157q-13 -25 -42 -25q-4 0 -14 2q-17 5 -25.5 19t-4.5 30l197 808l-406 -101q-4 -1 -12 -1q-18 0 -31 11q-18 15 -13 39l201 825q4 14 16 23t28 9h328q19 0 32 -12.5t13 -29.5q0 -8 -5 -18l-171 -463l396 98q8 2 12 2q19 0 34 -15z" />
    <glyph glyph-name="sitemap" unicode="&#xf0e8;" horiz-adv-x="1792" 
d="M1792 288v-320q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v320q0 40 28 68t68 28h96v192h-512v-192h96q40 0 68 -28t28 -68v-320q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v320q0 40 28 68t68 28h96v192h-512v-192h96q40 0 68 -28t28 -68v-320
q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v320q0 40 28 68t68 28h96v192q0 52 38 90t90 38h512v192h-96q-40 0 -68 28t-28 68v320q0 40 28 68t68 28h320q40 0 68 -28t28 -68v-320q0 -40 -28 -68t-68 -28h-96v-192h512q52 0 90 -38t38 -90v-192h96q40 0 68 -28t28 -68
z" />
    <glyph glyph-name="umbrella" unicode="&#xf0e9;" horiz-adv-x="1664" 
d="M896 708v-580q0 -104 -76 -180t-180 -76t-180 76t-76 180q0 26 19 45t45 19t45 -19t19 -45q0 -50 39 -89t89 -39t89 39t39 89v580q33 11 64 11t64 -11zM1664 681q0 -13 -9.5 -22.5t-22.5 -9.5q-11 0 -23 10q-49 46 -93 69t-102 23q-68 0 -128 -37t-103 -97
q-7 -10 -17.5 -28t-14.5 -24q-11 -17 -28 -17q-18 0 -29 17q-4 6 -14.5 24t-17.5 28q-43 60 -102.5 97t-127.5 37t-127.5 -37t-102.5 -97q-7 -10 -17.5 -28t-14.5 -24q-11 -17 -29 -17q-17 0 -28 17q-4 6 -14.5 24t-17.5 28q-43 60 -103 97t-128 37q-58 0 -102 -23t-93 -69
q-12 -10 -23 -10q-13 0 -22.5 9.5t-9.5 22.5q0 5 1 7q45 183 172.5 319.5t298 204.5t360.5 68q140 0 274.5 -40t246.5 -113.5t194.5 -187t115.5 -251.5q1 -2 1 -7zM896 1408v-98q-42 2 -64 2t-64 -2v98q0 26 19 45t45 19t45 -19t19 -45z" />
    <glyph glyph-name="paste" unicode="&#xf0ea;" horiz-adv-x="1792" 
d="M768 -128h896v640h-416q-40 0 -68 28t-28 68v416h-384v-1152zM1024 1312v64q0 13 -9.5 22.5t-22.5 9.5h-704q-13 0 -22.5 -9.5t-9.5 -22.5v-64q0 -13 9.5 -22.5t22.5 -9.5h704q13 0 22.5 9.5t9.5 22.5zM1280 640h299l-299 299v-299zM1792 512v-672q0 -40 -28 -68t-68 -28
h-960q-40 0 -68 28t-28 68v160h-544q-40 0 -68 28t-28 68v1344q0 40 28 68t68 28h1088q40 0 68 -28t28 -68v-328q21 -13 36 -28l408 -408q28 -28 48 -76t20 -88z" />
    <glyph glyph-name="light_bulb" unicode="&#xf0eb;" horiz-adv-x="1024" 
d="M736 960q0 -13 -9.5 -22.5t-22.5 -9.5t-22.5 9.5t-9.5 22.5q0 46 -54 71t-106 25q-13 0 -22.5 9.5t-9.5 22.5t9.5 22.5t22.5 9.5q50 0 99.5 -16t87 -54t37.5 -90zM896 960q0 72 -34.5 134t-90 101.5t-123 62t-136.5 22.5t-136.5 -22.5t-123 -62t-90 -101.5t-34.5 -134
q0 -101 68 -180q10 -11 30.5 -33t30.5 -33q128 -153 141 -298h228q13 145 141 298q10 11 30.5 33t30.5 33q68 79 68 180zM1024 960q0 -155 -103 -268q-45 -49 -74.5 -87t-59.5 -95.5t-34 -107.5q47 -28 47 -82q0 -37 -25 -64q25 -27 25 -64q0 -52 -45 -81q13 -23 13 -47
q0 -46 -31.5 -71t-77.5 -25q-20 -44 -60 -70t-87 -26t-87 26t-60 70q-46 0 -77.5 25t-31.5 71q0 24 13 47q-45 29 -45 81q0 37 25 64q-25 27 -25 64q0 54 47 82q-4 50 -34 107.5t-59.5 95.5t-74.5 87q-103 113 -103 268q0 99 44.5 184.5t117 142t164 89t186.5 32.5
t186.5 -32.5t164 -89t117 -142t44.5 -184.5z" />
    <glyph glyph-name="exchange" unicode="&#xf0ec;" horiz-adv-x="1792" 
d="M1792 352v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1376v-192q0 -13 -9.5 -22.5t-22.5 -9.5q-12 0 -24 10l-319 320q-9 9 -9 22q0 14 9 23l320 320q9 9 23 9q13 0 22.5 -9.5t9.5 -22.5v-192h1376q13 0 22.5 -9.5t9.5 -22.5zM1792 896q0 -14 -9 -23l-320 -320q-9 -9 -23 -9
q-13 0 -22.5 9.5t-9.5 22.5v192h-1376q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1376v192q0 14 9 23t23 9q12 0 24 -10l319 -319q9 -9 9 -23z" />
    <glyph glyph-name="cloud_download" unicode="&#xf0ed;" horiz-adv-x="1920" 
d="M1280 608q0 14 -9 23t-23 9h-224v352q0 13 -9.5 22.5t-22.5 9.5h-192q-13 0 -22.5 -9.5t-9.5 -22.5v-352h-224q-13 0 -22.5 -9.5t-9.5 -22.5q0 -14 9 -23l352 -352q9 -9 23 -9t23 9l351 351q10 12 10 24zM1920 384q0 -159 -112.5 -271.5t-271.5 -112.5h-1088
q-185 0 -316.5 131.5t-131.5 316.5q0 130 70 240t188 165q-2 30 -2 43q0 212 150 362t362 150q156 0 285.5 -87t188.5 -231q71 62 166 62q106 0 181 -75t75 -181q0 -76 -41 -138q130 -31 213.5 -135.5t83.5 -238.5z" />
    <glyph glyph-name="cloud_upload" unicode="&#xf0ee;" horiz-adv-x="1920" 
d="M1280 672q0 14 -9 23l-352 352q-9 9 -23 9t-23 -9l-351 -351q-10 -12 -10 -24q0 -14 9 -23t23 -9h224v-352q0 -13 9.5 -22.5t22.5 -9.5h192q13 0 22.5 9.5t9.5 22.5v352h224q13 0 22.5 9.5t9.5 22.5zM1920 384q0 -159 -112.5 -271.5t-271.5 -112.5h-1088
q-185 0 -316.5 131.5t-131.5 316.5q0 130 70 240t188 165q-2 30 -2 43q0 212 150 362t362 150q156 0 285.5 -87t188.5 -231q71 62 166 62q106 0 181 -75t75 -181q0 -76 -41 -138q130 -31 213.5 -135.5t83.5 -238.5z" />
    <glyph glyph-name="user_md" unicode="&#xf0f0;" horiz-adv-x="1408" 
d="M384 192q0 -26 -19 -45t-45 -19t-45 19t-19 45t19 45t45 19t45 -19t19 -45zM1408 131q0 -121 -73 -190t-194 -69h-874q-121 0 -194 69t-73 190q0 68 5.5 131t24 138t47.5 132.5t81 103t120 60.5q-22 -52 -22 -120v-203q-58 -20 -93 -70t-35 -111q0 -80 56 -136t136 -56
t136 56t56 136q0 61 -35.5 111t-92.5 70v203q0 62 25 93q132 -104 295 -104t295 104q25 -31 25 -93v-64q-106 0 -181 -75t-75 -181v-89q-32 -29 -32 -71q0 -40 28 -68t68 -28t68 28t28 68q0 42 -32 71v89q0 52 38 90t90 38t90 -38t38 -90v-89q-32 -29 -32 -71q0 -40 28 -68
t68 -28t68 28t28 68q0 42 -32 71v89q0 68 -34.5 127.5t-93.5 93.5q0 10 0.5 42.5t0 48t-2.5 41.5t-7 47t-13 40q68 -15 120 -60.5t81 -103t47.5 -132.5t24 -138t5.5 -131zM1088 1024q0 -159 -112.5 -271.5t-271.5 -112.5t-271.5 112.5t-112.5 271.5t112.5 271.5t271.5 112.5
t271.5 -112.5t112.5 -271.5z" />
    <glyph glyph-name="stethoscope" unicode="&#xf0f1;" horiz-adv-x="1408" 
d="M1280 832q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1408 832q0 -62 -35.5 -111t-92.5 -70v-395q0 -159 -131.5 -271.5t-316.5 -112.5t-316.5 112.5t-131.5 271.5v132q-164 20 -274 128t-110 252v512q0 26 19 45t45 19q6 0 16 -2q17 30 47 48
t65 18q53 0 90.5 -37.5t37.5 -90.5t-37.5 -90.5t-90.5 -37.5q-33 0 -64 18v-402q0 -106 94 -181t226 -75t226 75t94 181v402q-31 -18 -64 -18q-53 0 -90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5q35 0 65 -18t47 -48q10 2 16 2q26 0 45 -19t19 -45v-512q0 -144 -110 -252
t-274 -128v-132q0 -106 94 -181t226 -75t226 75t94 181v395q-57 21 -92.5 70t-35.5 111q0 80 56 136t136 56t136 -56t56 -136z" />
    <glyph glyph-name="suitcase" unicode="&#xf0f2;" horiz-adv-x="1792" 
d="M640 1152h512v128h-512v-128zM288 1152v-1280h-64q-92 0 -158 66t-66 158v832q0 92 66 158t158 66h64zM1408 1152v-1280h-1024v1280h128v160q0 40 28 68t68 28h576q40 0 68 -28t28 -68v-160h128zM1792 928v-832q0 -92 -66 -158t-158 -66h-64v1280h64q92 0 158 -66
t66 -158z" />
    <glyph glyph-name="bell_alt" unicode="&#xf0f3;" horiz-adv-x="1792" 
d="M912 -160q0 16 -16 16q-59 0 -101.5 42.5t-42.5 101.5q0 16 -16 16t-16 -16q0 -73 51.5 -124.5t124.5 -51.5q16 0 16 16zM1728 128q0 -52 -38 -90t-90 -38h-448q0 -106 -75 -181t-181 -75t-181 75t-75 181h-448q-52 0 -90 38t-38 90q50 42 91 88t85 119.5t74.5 158.5
t50 206t19.5 260q0 152 117 282.5t307 158.5q-8 19 -8 39q0 40 28 68t68 28t68 -28t28 -68q0 -20 -8 -39q190 -28 307 -158.5t117 -282.5q0 -139 19.5 -260t50 -206t74.5 -158.5t85 -119.5t91 -88z" />
    <glyph glyph-name="coffee" unicode="&#xf0f4;" horiz-adv-x="1920" 
d="M1664 896q0 80 -56 136t-136 56h-64v-384h64q80 0 136 56t56 136zM0 128h1792q0 -106 -75 -181t-181 -75h-1280q-106 0 -181 75t-75 181zM1856 896q0 -159 -112.5 -271.5t-271.5 -112.5h-64v-32q0 -92 -66 -158t-158 -66h-704q-92 0 -158 66t-66 158v736q0 26 19 45
t45 19h1152q159 0 271.5 -112.5t112.5 -271.5z" />
    <glyph glyph-name="food" unicode="&#xf0f5;" horiz-adv-x="1408" 
d="M640 1472v-640q0 -61 -35.5 -111t-92.5 -70v-779q0 -52 -38 -90t-90 -38h-128q-52 0 -90 38t-38 90v779q-57 20 -92.5 70t-35.5 111v640q0 26 19 45t45 19t45 -19t19 -45v-416q0 -26 19 -45t45 -19t45 19t19 45v416q0 26 19 45t45 19t45 -19t19 -45v-416q0 -26 19 -45
t45 -19t45 19t19 45v416q0 26 19 45t45 19t45 -19t19 -45zM1408 1472v-1600q0 -52 -38 -90t-90 -38h-128q-52 0 -90 38t-38 90v512h-224q-13 0 -22.5 9.5t-9.5 22.5v800q0 132 94 226t226 94h256q26 0 45 -19t19 -45z" />
    <glyph glyph-name="file_text_alt" unicode="&#xf0f6;" 
d="M1468 1156q28 -28 48 -76t20 -88v-1152q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h896q40 0 88 -20t76 -48zM1024 1400v-376h376q-10 29 -22 41l-313 313q-12 12 -41 22zM1408 -128v1024h-416q-40 0 -68 28t-28 68v416h-768v-1536h1280z
M384 736q0 14 9 23t23 9h704q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-704q-14 0 -23 9t-9 23v64zM1120 512q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-704q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h704zM1120 256q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-704
q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h704z" />
    <glyph glyph-name="building" unicode="&#xf0f7;" horiz-adv-x="1408" 
d="M384 224v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM384 480v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z
M640 480v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM384 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z
M1152 224v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM896 480v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z
M640 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM384 992v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z
M1152 480v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM896 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z
M640 992v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM384 1248v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z
M1152 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM896 992v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z
M640 1248v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM1152 992v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z
M896 1248v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM1152 1248v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z
M896 -128h384v1536h-1152v-1536h384v224q0 13 9.5 22.5t22.5 9.5h320q13 0 22.5 -9.5t9.5 -22.5v-224zM1408 1472v-1664q0 -26 -19 -45t-45 -19h-1280q-26 0 -45 19t-19 45v1664q0 26 19 45t45 19h1280q26 0 45 -19t19 -45z" />
    <glyph glyph-name="hospital" unicode="&#xf0f8;" horiz-adv-x="1408" 
d="M384 224v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM384 480v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z
M640 480v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM384 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z
M1152 224v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM896 480v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z
M640 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM1152 480v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z
M896 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM1152 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z
M896 -128h384v1152h-256v-32q0 -40 -28 -68t-68 -28h-448q-40 0 -68 28t-28 68v32h-256v-1152h384v224q0 13 9.5 22.5t22.5 9.5h320q13 0 22.5 -9.5t9.5 -22.5v-224zM896 1056v320q0 13 -9.5 22.5t-22.5 9.5h-64q-13 0 -22.5 -9.5t-9.5 -22.5v-96h-128v96q0 13 -9.5 22.5
t-22.5 9.5h-64q-13 0 -22.5 -9.5t-9.5 -22.5v-320q0 -13 9.5 -22.5t22.5 -9.5h64q13 0 22.5 9.5t9.5 22.5v96h128v-96q0 -13 9.5 -22.5t22.5 -9.5h64q13 0 22.5 9.5t9.5 22.5zM1408 1088v-1280q0 -26 -19 -45t-45 -19h-1280q-26 0 -45 19t-19 45v1280q0 26 19 45t45 19h320
v288q0 40 28 68t68 28h448q40 0 68 -28t28 -68v-288h320q26 0 45 -19t19 -45z" />
    <glyph glyph-name="ambulance" unicode="&#xf0f9;" horiz-adv-x="1920" 
d="M640 128q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM256 640h384v256h-158q-14 -2 -22 -9l-195 -195q-7 -12 -9 -22v-30zM1536 128q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5
t90.5 37.5t37.5 90.5zM1664 800v192q0 14 -9 23t-23 9h-224v224q0 14 -9 23t-23 9h-192q-14 0 -23 -9t-9 -23v-224h-224q-14 0 -23 -9t-9 -23v-192q0 -14 9 -23t23 -9h224v-224q0 -14 9 -23t23 -9h192q14 0 23 9t9 23v224h224q14 0 23 9t9 23zM1920 1344v-1152
q0 -26 -19 -45t-45 -19h-192q0 -106 -75 -181t-181 -75t-181 75t-75 181h-384q0 -106 -75 -181t-181 -75t-181 75t-75 181h-128q-26 0 -45 19t-19 45t19 45t45 19v416q0 26 13 58t32 51l198 198q19 19 51 32t58 13h160v320q0 26 19 45t45 19h1152q26 0 45 -19t19 -45z" />
    <glyph glyph-name="medkit" unicode="&#xf0fa;" horiz-adv-x="1792" 
d="M1280 416v192q0 14 -9 23t-23 9h-224v224q0 14 -9 23t-23 9h-192q-14 0 -23 -9t-9 -23v-224h-224q-14 0 -23 -9t-9 -23v-192q0 -14 9 -23t23 -9h224v-224q0 -14 9 -23t23 -9h192q14 0 23 9t9 23v224h224q14 0 23 9t9 23zM640 1152h512v128h-512v-128zM256 1152v-1280h-32
q-92 0 -158 66t-66 158v832q0 92 66 158t158 66h32zM1440 1152v-1280h-1088v1280h160v160q0 40 28 68t68 28h576q40 0 68 -28t28 -68v-160h160zM1792 928v-832q0 -92 -66 -158t-158 -66h-32v1280h32q92 0 158 -66t66 -158z" />
    <glyph glyph-name="fighter_jet" unicode="&#xf0fb;" horiz-adv-x="1920" 
d="M1920 576q-1 -32 -288 -96l-352 -32l-224 -64h-64l-293 -352h69q26 0 45 -4.5t19 -11.5t-19 -11.5t-45 -4.5h-96h-160h-64v32h64v416h-160l-192 -224h-96l-32 32v192h32v32h128v8l-192 24v128l192 24v8h-128v32h-32v192l32 32h96l192 -224h160v416h-64v32h64h160h96
q26 0 45 -4.5t19 -11.5t-19 -11.5t-45 -4.5h-69l293 -352h64l224 -64l352 -32q128 -28 200 -52t80 -34z" />
    <glyph glyph-name="beer" unicode="&#xf0fc;" horiz-adv-x="1664" 
d="M640 640v384h-256v-256q0 -53 37.5 -90.5t90.5 -37.5h128zM1664 192v-192h-1152v192l128 192h-128q-159 0 -271.5 112.5t-112.5 271.5v320l-64 64l32 128h480l32 128h960l32 -192l-64 -32v-800z" />
    <glyph glyph-name="h_sign" unicode="&#xf0fd;" 
d="M1280 192v896q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-320h-512v320q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-896q0 -26 19 -45t45 -19h128q26 0 45 19t19 45v320h512v-320q0 -26 19 -45t45 -19h128q26 0 45 19t19 45zM1536 1120v-960
q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" />
    <glyph glyph-name="f0fe" unicode="&#xf0fe;" 
d="M1280 576v128q0 26 -19 45t-45 19h-320v320q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-320h-320q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h320v-320q0 -26 19 -45t45 -19h128q26 0 45 19t19 45v320h320q26 0 45 19t19 45zM1536 1120v-960
q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" />
    <glyph glyph-name="double_angle_left" unicode="&#xf100;" horiz-adv-x="1024" 
d="M627 160q0 -13 -10 -23l-50 -50q-10 -10 -23 -10t-23 10l-466 466q-10 10 -10 23t10 23l466 466q10 10 23 10t23 -10l50 -50q10 -10 10 -23t-10 -23l-393 -393l393 -393q10 -10 10 -23zM1011 160q0 -13 -10 -23l-50 -50q-10 -10 -23 -10t-23 10l-466 466q-10 10 -10 23
t10 23l466 466q10 10 23 10t23 -10l50 -50q10 -10 10 -23t-10 -23l-393 -393l393 -393q10 -10 10 -23z" />
    <glyph glyph-name="double_angle_right" unicode="&#xf101;" horiz-adv-x="1024" 
d="M595 576q0 -13 -10 -23l-466 -466q-10 -10 -23 -10t-23 10l-50 50q-10 10 -10 23t10 23l393 393l-393 393q-10 10 -10 23t10 23l50 50q10 10 23 10t23 -10l466 -466q10 -10 10 -23zM979 576q0 -13 -10 -23l-466 -466q-10 -10 -23 -10t-23 10l-50 50q-10 10 -10 23t10 23
l393 393l-393 393q-10 10 -10 23t10 23l50 50q10 10 23 10t23 -10l466 -466q10 -10 10 -23z" />
    <glyph glyph-name="double_angle_up" unicode="&#xf102;" horiz-adv-x="1152" 
d="M1075 224q0 -13 -10 -23l-50 -50q-10 -10 -23 -10t-23 10l-393 393l-393 -393q-10 -10 -23 -10t-23 10l-50 50q-10 10 -10 23t10 23l466 466q10 10 23 10t23 -10l466 -466q10 -10 10 -23zM1075 608q0 -13 -10 -23l-50 -50q-10 -10 -23 -10t-23 10l-393 393l-393 -393
q-10 -10 -23 -10t-23 10l-50 50q-10 10 -10 23t10 23l466 466q10 10 23 10t23 -10l466 -466q10 -10 10 -23z" />
    <glyph glyph-name="double_angle_down" unicode="&#xf103;" horiz-adv-x="1152" 
d="M1075 672q0 -13 -10 -23l-466 -466q-10 -10 -23 -10t-23 10l-466 466q-10 10 -10 23t10 23l50 50q10 10 23 10t23 -10l393 -393l393 393q10 10 23 10t23 -10l50 -50q10 -10 10 -23zM1075 1056q0 -13 -10 -23l-466 -466q-10 -10 -23 -10t-23 10l-466 466q-10 10 -10 23
t10 23l50 50q10 10 23 10t23 -10l393 -393l393 393q10 10 23 10t23 -10l50 -50q10 -10 10 -23z" />
    <glyph glyph-name="angle_left" unicode="&#xf104;" horiz-adv-x="640" 
d="M627 992q0 -13 -10 -23l-393 -393l393 -393q10 -10 10 -23t-10 -23l-50 -50q-10 -10 -23 -10t-23 10l-466 466q-10 10 -10 23t10 23l466 466q10 10 23 10t23 -10l50 -50q10 -10 10 -23z" />
    <glyph glyph-name="angle_right" unicode="&#xf105;" horiz-adv-x="640" 
d="M595 576q0 -13 -10 -23l-466 -466q-10 -10 -23 -10t-23 10l-50 50q-10 10 -10 23t10 23l393 393l-393 393q-10 10 -10 23t10 23l50 50q10 10 23 10t23 -10l466 -466q10 -10 10 -23z" />
    <glyph glyph-name="angle_up" unicode="&#xf106;" horiz-adv-x="1152" 
d="M1075 352q0 -13 -10 -23l-50 -50q-10 -10 -23 -10t-23 10l-393 393l-393 -393q-10 -10 -23 -10t-23 10l-50 50q-10 10 -10 23t10 23l466 466q10 10 23 10t23 -10l466 -466q10 -10 10 -23z" />
    <glyph glyph-name="angle_down" unicode="&#xf107;" horiz-adv-x="1152" 
d="M1075 800q0 -13 -10 -23l-466 -466q-10 -10 -23 -10t-23 10l-466 466q-10 10 -10 23t10 23l50 50q10 10 23 10t23 -10l393 -393l393 393q10 10 23 10t23 -10l50 -50q10 -10 10 -23z" />
    <glyph glyph-name="desktop" unicode="&#xf108;" horiz-adv-x="1920" 
d="M1792 544v832q0 13 -9.5 22.5t-22.5 9.5h-1600q-13 0 -22.5 -9.5t-9.5 -22.5v-832q0 -13 9.5 -22.5t22.5 -9.5h1600q13 0 22.5 9.5t9.5 22.5zM1920 1376v-1088q0 -66 -47 -113t-113 -47h-544q0 -37 16 -77.5t32 -71t16 -43.5q0 -26 -19 -45t-45 -19h-512q-26 0 -45 19
t-19 45q0 14 16 44t32 70t16 78h-544q-66 0 -113 47t-47 113v1088q0 66 47 113t113 47h1600q66 0 113 -47t47 -113z" />
    <glyph glyph-name="laptop" unicode="&#xf109;" horiz-adv-x="1920" 
d="M416 256q-66 0 -113 47t-47 113v704q0 66 47 113t113 47h1088q66 0 113 -47t47 -113v-704q0 -66 -47 -113t-113 -47h-1088zM384 1120v-704q0 -13 9.5 -22.5t22.5 -9.5h1088q13 0 22.5 9.5t9.5 22.5v704q0 13 -9.5 22.5t-22.5 9.5h-1088q-13 0 -22.5 -9.5t-9.5 -22.5z
M1760 192h160v-96q0 -40 -47 -68t-113 -28h-1600q-66 0 -113 28t-47 68v96h160h1600zM1040 96q16 0 16 16t-16 16h-160q-16 0 -16 -16t16 -16h160z" />
    <glyph glyph-name="tablet" unicode="&#xf10a;" horiz-adv-x="1152" 
d="M640 128q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1024 288v960q0 13 -9.5 22.5t-22.5 9.5h-832q-13 0 -22.5 -9.5t-9.5 -22.5v-960q0 -13 9.5 -22.5t22.5 -9.5h832q13 0 22.5 9.5t9.5 22.5zM1152 1248v-1088q0 -66 -47 -113t-113 -47h-832
q-66 0 -113 47t-47 113v1088q0 66 47 113t113 47h832q66 0 113 -47t47 -113z" />
    <glyph glyph-name="mobile_phone" unicode="&#xf10b;" horiz-adv-x="768" 
d="M464 128q0 33 -23.5 56.5t-56.5 23.5t-56.5 -23.5t-23.5 -56.5t23.5 -56.5t56.5 -23.5t56.5 23.5t23.5 56.5zM672 288v704q0 13 -9.5 22.5t-22.5 9.5h-512q-13 0 -22.5 -9.5t-9.5 -22.5v-704q0 -13 9.5 -22.5t22.5 -9.5h512q13 0 22.5 9.5t9.5 22.5zM480 1136
q0 16 -16 16h-160q-16 0 -16 -16t16 -16h160q16 0 16 16zM768 1152v-1024q0 -52 -38 -90t-90 -38h-512q-52 0 -90 38t-38 90v1024q0 52 38 90t90 38h512q52 0 90 -38t38 -90z" />
    <glyph glyph-name="circle_blank" unicode="&#xf10c;" 
d="M768 1184q-148 0 -273 -73t-198 -198t-73 -273t73 -273t198 -198t273 -73t273 73t198 198t73 273t-73 273t-198 198t-273 73zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103
t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="quote_left" unicode="&#xf10d;" horiz-adv-x="1664" 
d="M768 576v-384q0 -80 -56 -136t-136 -56h-384q-80 0 -136 56t-56 136v704q0 104 40.5 198.5t109.5 163.5t163.5 109.5t198.5 40.5h64q26 0 45 -19t19 -45v-128q0 -26 -19 -45t-45 -19h-64q-106 0 -181 -75t-75 -181v-32q0 -40 28 -68t68 -28h224q80 0 136 -56t56 -136z
M1664 576v-384q0 -80 -56 -136t-136 -56h-384q-80 0 -136 56t-56 136v704q0 104 40.5 198.5t109.5 163.5t163.5 109.5t198.5 40.5h64q26 0 45 -19t19 -45v-128q0 -26 -19 -45t-45 -19h-64q-106 0 -181 -75t-75 -181v-32q0 -40 28 -68t68 -28h224q80 0 136 -56t56 -136z" />
    <glyph glyph-name="quote_right" unicode="&#xf10e;" horiz-adv-x="1664" 
d="M768 1216v-704q0 -104 -40.5 -198.5t-109.5 -163.5t-163.5 -109.5t-198.5 -40.5h-64q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h64q106 0 181 75t75 181v32q0 40 -28 68t-68 28h-224q-80 0 -136 56t-56 136v384q0 80 56 136t136 56h384q80 0 136 -56t56 -136zM1664 1216
v-704q0 -104 -40.5 -198.5t-109.5 -163.5t-163.5 -109.5t-198.5 -40.5h-64q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h64q106 0 181 75t75 181v32q0 40 -28 68t-68 28h-224q-80 0 -136 56t-56 136v384q0 80 56 136t136 56h384q80 0 136 -56t56 -136z" />
    <glyph glyph-name="spinner" unicode="&#xf110;" horiz-adv-x="1792" 
d="M526 142q0 -53 -37.5 -90.5t-90.5 -37.5q-52 0 -90 38t-38 90q0 53 37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1024 -64q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM320 640q0 -53 -37.5 -90.5t-90.5 -37.5
t-90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1522 142q0 -52 -38 -90t-90 -38q-53 0 -90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM558 1138q0 -66 -47 -113t-113 -47t-113 47t-47 113t47 113t113 47t113 -47t47 -113z
M1728 640q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1088 1344q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM1618 1138q0 -93 -66 -158.5t-158 -65.5q-93 0 -158.5 65.5t-65.5 158.5
q0 92 65.5 158t158.5 66q92 0 158 -66t66 -158z" />
    <glyph glyph-name="circle" unicode="&#xf111;" 
d="M1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="reply" unicode="&#xf112;" horiz-adv-x="1792" 
d="M1792 416q0 -166 -127 -451q-3 -7 -10.5 -24t-13.5 -30t-13 -22q-12 -17 -28 -17q-15 0 -23.5 10t-8.5 25q0 9 2.5 26.5t2.5 23.5q5 68 5 123q0 101 -17.5 181t-48.5 138.5t-80 101t-105.5 69.5t-133 42.5t-154 21.5t-175.5 6h-224v-256q0 -26 -19 -45t-45 -19t-45 19
l-512 512q-19 19 -19 45t19 45l512 512q19 19 45 19t45 -19t19 -45v-256h224q713 0 875 -403q53 -134 53 -333z" />
    <glyph glyph-name="github_alt" unicode="&#xf113;" horiz-adv-x="1664" 
d="M640 320q0 -40 -12.5 -82t-43 -76t-72.5 -34t-72.5 34t-43 76t-12.5 82t12.5 82t43 76t72.5 34t72.5 -34t43 -76t12.5 -82zM1280 320q0 -40 -12.5 -82t-43 -76t-72.5 -34t-72.5 34t-43 76t-12.5 82t12.5 82t43 76t72.5 34t72.5 -34t43 -76t12.5 -82zM1440 320
q0 120 -69 204t-187 84q-41 0 -195 -21q-71 -11 -157 -11t-157 11q-152 21 -195 21q-118 0 -187 -84t-69 -204q0 -88 32 -153.5t81 -103t122 -60t140 -29.5t149 -7h168q82 0 149 7t140 29.5t122 60t81 103t32 153.5zM1664 496q0 -207 -61 -331q-38 -77 -105.5 -133t-141 -86
t-170 -47.5t-171.5 -22t-167 -4.5q-78 0 -142 3t-147.5 12.5t-152.5 30t-137 51.5t-121 81t-86 115q-62 123 -62 331q0 237 136 396q-27 82 -27 170q0 116 51 218q108 0 190 -39.5t189 -123.5q147 35 309 35q148 0 280 -32q105 82 187 121t189 39q51 -102 51 -218
q0 -87 -27 -168q136 -160 136 -398z" />
    <glyph glyph-name="folder_close_alt" unicode="&#xf114;" horiz-adv-x="1664" 
d="M1536 224v704q0 40 -28 68t-68 28h-704q-40 0 -68 28t-28 68v64q0 40 -28 68t-68 28h-320q-40 0 -68 -28t-28 -68v-960q0 -40 28 -68t68 -28h1216q40 0 68 28t28 68zM1664 928v-704q0 -92 -66 -158t-158 -66h-1216q-92 0 -158 66t-66 158v960q0 92 66 158t158 66h320
q92 0 158 -66t66 -158v-32h672q92 0 158 -66t66 -158z" />
    <glyph glyph-name="folder_open_alt" unicode="&#xf115;" horiz-adv-x="1920" 
d="M1781 605q0 35 -53 35h-1088q-40 0 -85.5 -21.5t-71.5 -52.5l-294 -363q-18 -24 -18 -40q0 -35 53 -35h1088q40 0 86 22t71 53l294 363q18 22 18 39zM640 768h768v160q0 40 -28 68t-68 28h-576q-40 0 -68 28t-28 68v64q0 40 -28 68t-68 28h-320q-40 0 -68 -28t-28 -68
v-853l256 315q44 53 116 87.5t140 34.5zM1909 605q0 -62 -46 -120l-295 -363q-43 -53 -116 -87.5t-140 -34.5h-1088q-92 0 -158 66t-66 158v960q0 92 66 158t158 66h320q92 0 158 -66t66 -158v-32h544q92 0 158 -66t66 -158v-160h192q54 0 99 -24.5t67 -70.5q15 -32 15 -68z
" />
    <glyph glyph-name="expand_alt" unicode="&#xf116;" horiz-adv-x="1792" 
 />
    <glyph glyph-name="collapse_alt" unicode="&#xf117;" horiz-adv-x="1792" 
 />
    <glyph glyph-name="smile" unicode="&#xf118;" 
d="M1134 461q-37 -121 -138 -195t-228 -74t-228 74t-138 195q-8 25 4 48.5t38 31.5q25 8 48.5 -4t31.5 -38q25 -80 92.5 -129.5t151.5 -49.5t151.5 49.5t92.5 129.5q8 26 32 38t49 4t37 -31.5t4 -48.5zM640 896q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5
t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1152 896q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1408 640q0 130 -51 248.5t-136.5 204t-204 136.5t-248.5 51t-248.5 -51t-204 -136.5t-136.5 -204t-51 -248.5
t51 -248.5t136.5 -204t204 -136.5t248.5 -51t248.5 51t204 136.5t136.5 204t51 248.5zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="frown" unicode="&#xf119;" 
d="M1134 307q8 -25 -4 -48.5t-37 -31.5t-49 4t-32 38q-25 80 -92.5 129.5t-151.5 49.5t-151.5 -49.5t-92.5 -129.5q-8 -26 -31.5 -38t-48.5 -4q-26 8 -38 31.5t-4 48.5q37 121 138 195t228 74t228 -74t138 -195zM640 896q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5
t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1152 896q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1408 640q0 130 -51 248.5t-136.5 204t-204 136.5t-248.5 51t-248.5 -51t-204 -136.5t-136.5 -204
t-51 -248.5t51 -248.5t136.5 -204t204 -136.5t248.5 -51t248.5 51t204 136.5t136.5 204t51 248.5zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="meh" unicode="&#xf11a;" 
d="M1152 448q0 -26 -19 -45t-45 -19h-640q-26 0 -45 19t-19 45t19 45t45 19h640q26 0 45 -19t19 -45zM640 896q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1152 896q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5
t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1408 640q0 130 -51 248.5t-136.5 204t-204 136.5t-248.5 51t-248.5 -51t-204 -136.5t-136.5 -204t-51 -248.5t51 -248.5t136.5 -204t204 -136.5t248.5 -51t248.5 51t204 136.5t136.5 204t51 248.5zM1536 640
q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="gamepad" unicode="&#xf11b;" horiz-adv-x="1920" 
d="M832 448v128q0 14 -9 23t-23 9h-192v192q0 14 -9 23t-23 9h-128q-14 0 -23 -9t-9 -23v-192h-192q-14 0 -23 -9t-9 -23v-128q0 -14 9 -23t23 -9h192v-192q0 -14 9 -23t23 -9h128q14 0 23 9t9 23v192h192q14 0 23 9t9 23zM1408 384q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5
t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1664 640q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1920 512q0 -212 -150 -362t-362 -150q-192 0 -338 128h-220q-146 -128 -338 -128q-212 0 -362 150
t-150 362t150 362t362 150h896q212 0 362 -150t150 -362z" />
    <glyph glyph-name="keyboard" unicode="&#xf11c;" horiz-adv-x="1920" 
d="M384 368v-96q0 -16 -16 -16h-96q-16 0 -16 16v96q0 16 16 16h96q16 0 16 -16zM512 624v-96q0 -16 -16 -16h-224q-16 0 -16 16v96q0 16 16 16h224q16 0 16 -16zM384 880v-96q0 -16 -16 -16h-96q-16 0 -16 16v96q0 16 16 16h96q16 0 16 -16zM1408 368v-96q0 -16 -16 -16
h-864q-16 0 -16 16v96q0 16 16 16h864q16 0 16 -16zM768 624v-96q0 -16 -16 -16h-96q-16 0 -16 16v96q0 16 16 16h96q16 0 16 -16zM640 880v-96q0 -16 -16 -16h-96q-16 0 -16 16v96q0 16 16 16h96q16 0 16 -16zM1024 624v-96q0 -16 -16 -16h-96q-16 0 -16 16v96q0 16 16 16
h96q16 0 16 -16zM896 880v-96q0 -16 -16 -16h-96q-16 0 -16 16v96q0 16 16 16h96q16 0 16 -16zM1280 624v-96q0 -16 -16 -16h-96q-16 0 -16 16v96q0 16 16 16h96q16 0 16 -16zM1664 368v-96q0 -16 -16 -16h-96q-16 0 -16 16v96q0 16 16 16h96q16 0 16 -16zM1152 880v-96
q0 -16 -16 -16h-96q-16 0 -16 16v96q0 16 16 16h96q16 0 16 -16zM1408 880v-96q0 -16 -16 -16h-96q-16 0 -16 16v96q0 16 16 16h96q16 0 16 -16zM1664 880v-352q0 -16 -16 -16h-224q-16 0 -16 16v96q0 16 16 16h112v240q0 16 16 16h96q16 0 16 -16zM1792 128v896h-1664v-896
h1664zM1920 1024v-896q0 -53 -37.5 -90.5t-90.5 -37.5h-1664q-53 0 -90.5 37.5t-37.5 90.5v896q0 53 37.5 90.5t90.5 37.5h1664q53 0 90.5 -37.5t37.5 -90.5z" />
    <glyph glyph-name="flag_alt" unicode="&#xf11d;" horiz-adv-x="1792" 
d="M1664 491v616q-169 -91 -306 -91q-82 0 -145 32q-100 49 -184 76.5t-178 27.5q-173 0 -403 -127v-599q245 113 433 113q55 0 103.5 -7.5t98 -26t77 -31t82.5 -39.5l28 -14q44 -22 101 -22q120 0 293 92zM320 1280q0 -35 -17.5 -64t-46.5 -46v-1266q0 -14 -9 -23t-23 -9
h-64q-14 0 -23 9t-9 23v1266q-29 17 -46.5 46t-17.5 64q0 53 37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1792 1216v-763q0 -39 -35 -57q-10 -5 -17 -9q-218 -116 -369 -116q-88 0 -158 35l-28 14q-64 33 -99 48t-91 29t-114 14q-102 0 -235.5 -44t-228.5 -102
q-15 -9 -33 -9q-16 0 -32 8q-32 19 -32 56v742q0 35 31 55q35 21 78.5 42.5t114 52t152.5 49.5t155 19q112 0 209 -31t209 -86q38 -19 89 -19q122 0 310 112q22 12 31 17q31 16 62 -2q31 -20 31 -55z" />
    <glyph glyph-name="flag_checkered" unicode="&#xf11e;" horiz-adv-x="1792" 
d="M832 536v192q-181 -16 -384 -117v-185q205 96 384 110zM832 954v197q-172 -8 -384 -126v-189q215 111 384 118zM1664 491v184q-235 -116 -384 -71v224q-20 6 -39 15q-5 3 -33 17t-34.5 17t-31.5 15t-34.5 15.5t-32.5 13t-36 12.5t-35 8.5t-39.5 7.5t-39.5 4t-44 2
q-23 0 -49 -3v-222h19q102 0 192.5 -29t197.5 -82q19 -9 39 -15v-188q42 -17 91 -17q120 0 293 92zM1664 918v189q-169 -91 -306 -91q-45 0 -78 8v-196q148 -42 384 90zM320 1280q0 -35 -17.5 -64t-46.5 -46v-1266q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v1266
q-29 17 -46.5 46t-17.5 64q0 53 37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1792 1216v-763q0 -39 -35 -57q-10 -5 -17 -9q-218 -116 -369 -116q-88 0 -158 35l-28 14q-64 33 -99 48t-91 29t-114 14q-102 0 -235.5 -44t-228.5 -102q-15 -9 -33 -9q-16 0 -32 8
q-32 19 -32 56v742q0 35 31 55q35 21 78.5 42.5t114 52t152.5 49.5t155 19q112 0 209 -31t209 -86q38 -19 89 -19q122 0 310 112q22 12 31 17q31 16 62 -2q31 -20 31 -55z" />
    <glyph glyph-name="terminal" unicode="&#xf120;" horiz-adv-x="1664" 
d="M585 553l-466 -466q-10 -10 -23 -10t-23 10l-50 50q-10 10 -10 23t10 23l393 393l-393 393q-10 10 -10 23t10 23l50 50q10 10 23 10t23 -10l466 -466q10 -10 10 -23t-10 -23zM1664 96v-64q0 -14 -9 -23t-23 -9h-960q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h960q14 0 23 -9
t9 -23z" />
    <glyph glyph-name="code" unicode="&#xf121;" horiz-adv-x="1920" 
d="M617 137l-50 -50q-10 -10 -23 -10t-23 10l-466 466q-10 10 -10 23t10 23l466 466q10 10 23 10t23 -10l50 -50q10 -10 10 -23t-10 -23l-393 -393l393 -393q10 -10 10 -23t-10 -23zM1208 1204l-373 -1291q-4 -13 -15.5 -19.5t-23.5 -2.5l-62 17q-13 4 -19.5 15.5t-2.5 24.5
l373 1291q4 13 15.5 19.5t23.5 2.5l62 -17q13 -4 19.5 -15.5t2.5 -24.5zM1865 553l-466 -466q-10 -10 -23 -10t-23 10l-50 50q-10 10 -10 23t10 23l393 393l-393 393q-10 10 -10 23t10 23l50 50q10 10 23 10t23 -10l466 -466q10 -10 10 -23t-10 -23z" />
    <glyph glyph-name="reply_all" unicode="&#xf122;" horiz-adv-x="1792" 
d="M640 454v-70q0 -42 -39 -59q-13 -5 -25 -5q-27 0 -45 19l-512 512q-19 19 -19 45t19 45l512 512q29 31 70 14q39 -17 39 -59v-69l-397 -398q-19 -19 -19 -45t19 -45zM1792 416q0 -58 -17 -133.5t-38.5 -138t-48 -125t-40.5 -90.5l-20 -40q-8 -17 -28 -17q-6 0 -9 1
q-25 8 -23 34q43 400 -106 565q-64 71 -170.5 110.5t-267.5 52.5v-251q0 -42 -39 -59q-13 -5 -25 -5q-27 0 -45 19l-512 512q-19 19 -19 45t19 45l512 512q29 31 70 14q39 -17 39 -59v-262q411 -28 599 -221q169 -173 169 -509z" />
    <glyph glyph-name="star_half_empty" unicode="&#xf123;" horiz-adv-x="1664" 
d="M1186 579l257 250l-356 52l-66 10l-30 60l-159 322v-963l59 -31l318 -168l-60 355l-12 66zM1638 841l-363 -354l86 -500q5 -33 -6 -51.5t-34 -18.5q-17 0 -40 12l-449 236l-449 -236q-23 -12 -40 -12q-23 0 -34 18.5t-6 51.5l86 500l-364 354q-32 32 -23 59.5t54 34.5
l502 73l225 455q20 41 49 41q28 0 49 -41l225 -455l502 -73q45 -7 54 -34.5t-24 -59.5z" />
    <glyph glyph-name="location_arrow" unicode="&#xf124;" horiz-adv-x="1408" 
d="M1401 1187l-640 -1280q-17 -35 -57 -35q-5 0 -15 2q-22 5 -35.5 22.5t-13.5 39.5v576h-576q-22 0 -39.5 13.5t-22.5 35.5t4 42t29 30l1280 640q13 7 29 7q27 0 45 -19q15 -14 18.5 -34.5t-6.5 -39.5z" />
    <glyph glyph-name="crop" unicode="&#xf125;" horiz-adv-x="1664" 
d="M557 256h595v595zM512 301l595 595h-595v-595zM1664 224v-192q0 -14 -9 -23t-23 -9h-224v-224q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v224h-864q-14 0 -23 9t-9 23v864h-224q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h224v224q0 14 9 23t23 9h192q14 0 23 -9t9 -23
v-224h851l246 247q10 9 23 9t23 -9q9 -10 9 -23t-9 -23l-247 -246v-851h224q14 0 23 -9t9 -23z" />
    <glyph glyph-name="code_fork" unicode="&#xf126;" horiz-adv-x="1024" 
d="M288 64q0 40 -28 68t-68 28t-68 -28t-28 -68t28 -68t68 -28t68 28t28 68zM288 1216q0 40 -28 68t-68 28t-68 -28t-28 -68t28 -68t68 -28t68 28t28 68zM928 1088q0 40 -28 68t-68 28t-68 -28t-28 -68t28 -68t68 -28t68 28t28 68zM1024 1088q0 -52 -26 -96.5t-70 -69.5
q-2 -287 -226 -414q-67 -38 -203 -81q-128 -40 -169.5 -71t-41.5 -100v-26q44 -25 70 -69.5t26 -96.5q0 -80 -56 -136t-136 -56t-136 56t-56 136q0 52 26 96.5t70 69.5v820q-44 25 -70 69.5t-26 96.5q0 80 56 136t136 56t136 -56t56 -136q0 -52 -26 -96.5t-70 -69.5v-497
q54 26 154 57q55 17 87.5 29.5t70.5 31t59 39.5t40.5 51t28 69.5t8.5 91.5q-44 25 -70 69.5t-26 96.5q0 80 56 136t136 56t136 -56t56 -136z" />
    <glyph glyph-name="unlink" unicode="&#xf127;" horiz-adv-x="1664" 
d="M439 265l-256 -256q-11 -9 -23 -9t-23 9q-9 10 -9 23t9 23l256 256q10 9 23 9t23 -9q9 -10 9 -23t-9 -23zM608 224v-320q0 -14 -9 -23t-23 -9t-23 9t-9 23v320q0 14 9 23t23 9t23 -9t9 -23zM384 448q0 -14 -9 -23t-23 -9h-320q-14 0 -23 9t-9 23t9 23t23 9h320
q14 0 23 -9t9 -23zM1648 320q0 -120 -85 -203l-147 -146q-83 -83 -203 -83q-121 0 -204 85l-334 335q-21 21 -42 56l239 18l273 -274q27 -27 68 -27.5t68 26.5l147 146q28 28 28 67q0 40 -28 68l-274 275l18 239q35 -21 56 -42l336 -336q84 -86 84 -204zM1031 1044l-239 -18
l-273 274q-28 28 -68 28q-39 0 -68 -27l-147 -146q-28 -28 -28 -67q0 -40 28 -68l274 -274l-18 -240q-35 21 -56 42l-336 336q-84 86 -84 204q0 120 85 203l147 146q83 83 203 83q121 0 204 -85l334 -335q21 -21 42 -56zM1664 960q0 -14 -9 -23t-23 -9h-320q-14 0 -23 9
t-9 23t9 23t23 9h320q14 0 23 -9t9 -23zM1120 1504v-320q0 -14 -9 -23t-23 -9t-23 9t-9 23v320q0 14 9 23t23 9t23 -9t9 -23zM1527 1353l-256 -256q-11 -9 -23 -9t-23 9q-9 10 -9 23t9 23l256 256q10 9 23 9t23 -9q9 -10 9 -23t-9 -23z" />
    <glyph glyph-name="question" unicode="&#xf128;" horiz-adv-x="1024" 
d="M704 280v-240q0 -16 -12 -28t-28 -12h-240q-16 0 -28 12t-12 28v240q0 16 12 28t28 12h240q16 0 28 -12t12 -28zM1020 880q0 -54 -15.5 -101t-35 -76.5t-55 -59.5t-57.5 -43.5t-61 -35.5q-41 -23 -68.5 -65t-27.5 -67q0 -17 -12 -32.5t-28 -15.5h-240q-15 0 -25.5 18.5
t-10.5 37.5v45q0 83 65 156.5t143 108.5q59 27 84 56t25 76q0 42 -46.5 74t-107.5 32q-65 0 -108 -29q-35 -25 -107 -115q-13 -16 -31 -16q-12 0 -25 8l-164 125q-13 10 -15.5 25t5.5 28q160 266 464 266q80 0 161 -31t146 -83t106 -127.5t41 -158.5z" />
    <glyph glyph-name="_279" unicode="&#xf129;" horiz-adv-x="640" 
d="M640 192v-128q0 -26 -19 -45t-45 -19h-512q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h64v384h-64q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h384q26 0 45 -19t19 -45v-576h64q26 0 45 -19t19 -45zM512 1344v-192q0 -26 -19 -45t-45 -19h-256q-26 0 -45 19t-19 45v192
q0 26 19 45t45 19h256q26 0 45 -19t19 -45z" />
    <glyph glyph-name="exclamation" unicode="&#xf12a;" horiz-adv-x="640" 
d="M512 288v-224q0 -26 -19 -45t-45 -19h-256q-26 0 -45 19t-19 45v224q0 26 19 45t45 19h256q26 0 45 -19t19 -45zM542 1344l-28 -768q-1 -26 -20.5 -45t-45.5 -19h-256q-26 0 -45.5 19t-20.5 45l-28 768q-1 26 17.5 45t44.5 19h320q26 0 44.5 -19t17.5 -45z" />
    <glyph glyph-name="superscript" unicode="&#xf12b;" 
d="M897 167v-167h-248l-159 252l-24 42q-8 9 -11 21h-3q-1 -3 -2.5 -6.5t-3.5 -8t-3 -6.5q-10 -20 -25 -44l-155 -250h-258v167h128l197 291l-185 272h-137v168h276l139 -228q2 -4 23 -42q8 -9 11 -21h3q3 9 11 21l25 42l140 228h257v-168h-125l-184 -267l204 -296h109z
M1534 846v-206h-514l-3 27q-4 28 -4 46q0 64 26 117t65 86.5t84 65t84 54.5t65 54t26 64q0 38 -29.5 62.5t-70.5 24.5q-51 0 -97 -39q-14 -11 -36 -38l-105 92q26 37 63 66q83 65 188 65q110 0 178 -59.5t68 -158.5q0 -56 -24.5 -103t-62 -76.5t-81.5 -58.5t-82 -50.5
t-65.5 -51.5t-30.5 -63h232v80h126z" />
    <glyph glyph-name="subscript" unicode="&#xf12c;" 
d="M897 167v-167h-248l-159 252l-24 42q-8 9 -11 21h-3q-1 -3 -2.5 -6.5t-3.5 -8t-3 -6.5q-10 -20 -25 -44l-155 -250h-258v167h128l197 291l-185 272h-137v168h276l139 -228q2 -4 23 -42q8 -9 11 -21h3q3 9 11 21l25 42l140 228h257v-168h-125l-184 -267l204 -296h109z
M1536 -50v-206h-514l-4 27q-3 45 -3 46q0 64 26 117t65 86.5t84 65t84 54.5t65 54t26 64q0 38 -29.5 62.5t-70.5 24.5q-51 0 -97 -39q-14 -11 -36 -38l-105 92q26 37 63 66q80 65 188 65q110 0 178 -59.5t68 -158.5q0 -66 -34.5 -118.5t-84 -86t-99.5 -62.5t-87 -63t-41 -73
h232v80h126z" />
    <glyph glyph-name="_283" unicode="&#xf12d;" horiz-adv-x="1920" 
d="M896 128l336 384h-768l-336 -384h768zM1909 1205q15 -34 9.5 -71.5t-30.5 -65.5l-896 -1024q-38 -44 -96 -44h-768q-38 0 -69.5 20.5t-47.5 54.5q-15 34 -9.5 71.5t30.5 65.5l896 1024q38 44 96 44h768q38 0 69.5 -20.5t47.5 -54.5z" />
    <glyph glyph-name="puzzle_piece" unicode="&#xf12e;" horiz-adv-x="1664" 
d="M1664 438q0 -81 -44.5 -135t-123.5 -54q-41 0 -77.5 17.5t-59 38t-56.5 38t-71 17.5q-110 0 -110 -124q0 -39 16 -115t15 -115v-5q-22 0 -33 -1q-34 -3 -97.5 -11.5t-115.5 -13.5t-98 -5q-61 0 -103 26.5t-42 83.5q0 37 17.5 71t38 56.5t38 59t17.5 77.5q0 79 -54 123.5
t-135 44.5q-84 0 -143 -45.5t-59 -127.5q0 -43 15 -83t33.5 -64.5t33.5 -53t15 -50.5q0 -45 -46 -89q-37 -35 -117 -35q-95 0 -245 24q-9 2 -27.5 4t-27.5 4l-13 2q-1 0 -3 1q-2 0 -2 1v1024q2 -1 17.5 -3.5t34 -5t21.5 -3.5q150 -24 245 -24q80 0 117 35q46 44 46 89
q0 22 -15 50.5t-33.5 53t-33.5 64.5t-15 83q0 82 59 127.5t144 45.5q80 0 134 -44.5t54 -123.5q0 -41 -17.5 -77.5t-38 -59t-38 -56.5t-17.5 -71q0 -57 42 -83.5t103 -26.5q64 0 180 15t163 17v-2q-1 -2 -3.5 -17.5t-5 -34t-3.5 -21.5q-24 -150 -24 -245q0 -80 35 -117
q44 -46 89 -46q22 0 50.5 15t53 33.5t64.5 33.5t83 15q82 0 127.5 -59t45.5 -143z" />
    <glyph glyph-name="microphone" unicode="&#xf130;" horiz-adv-x="1152" 
d="M1152 832v-128q0 -221 -147.5 -384.5t-364.5 -187.5v-132h256q26 0 45 -19t19 -45t-19 -45t-45 -19h-640q-26 0 -45 19t-19 45t19 45t45 19h256v132q-217 24 -364.5 187.5t-147.5 384.5v128q0 26 19 45t45 19t45 -19t19 -45v-128q0 -185 131.5 -316.5t316.5 -131.5
t316.5 131.5t131.5 316.5v128q0 26 19 45t45 19t45 -19t19 -45zM896 1216v-512q0 -132 -94 -226t-226 -94t-226 94t-94 226v512q0 132 94 226t226 94t226 -94t94 -226z" />
    <glyph glyph-name="microphone_off" unicode="&#xf131;" horiz-adv-x="1408" 
d="M271 591l-101 -101q-42 103 -42 214v128q0 26 19 45t45 19t45 -19t19 -45v-128q0 -53 15 -113zM1385 1193l-361 -361v-128q0 -132 -94 -226t-226 -94q-55 0 -109 19l-96 -96q97 -51 205 -51q185 0 316.5 131.5t131.5 316.5v128q0 26 19 45t45 19t45 -19t19 -45v-128
q0 -221 -147.5 -384.5t-364.5 -187.5v-132h256q26 0 45 -19t19 -45t-19 -45t-45 -19h-640q-26 0 -45 19t-19 45t19 45t45 19h256v132q-125 13 -235 81l-254 -254q-10 -10 -23 -10t-23 10l-82 82q-10 10 -10 23t10 23l1234 1234q10 10 23 10t23 -10l82 -82q10 -10 10 -23
t-10 -23zM1005 1325l-621 -621v512q0 132 94 226t226 94q102 0 184.5 -59t116.5 -152z" />
    <glyph glyph-name="shield" unicode="&#xf132;" horiz-adv-x="1280" 
d="M1088 576v640h-448v-1137q119 63 213 137q235 184 235 360zM1280 1344v-768q0 -86 -33.5 -170.5t-83 -150t-118 -127.5t-126.5 -103t-121 -77.5t-89.5 -49.5t-42.5 -20q-12 -6 -26 -6t-26 6q-16 7 -42.5 20t-89.5 49.5t-121 77.5t-126.5 103t-118 127.5t-83 150
t-33.5 170.5v768q0 26 19 45t45 19h1152q26 0 45 -19t19 -45z" />
    <glyph glyph-name="calendar_empty" unicode="&#xf133;" horiz-adv-x="1664" 
d="M128 -128h1408v1024h-1408v-1024zM512 1088v288q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-288q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1280 1088v288q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-288q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1664 1152v-1280
q0 -52 -38 -90t-90 -38h-1408q-52 0 -90 38t-38 90v1280q0 52 38 90t90 38h128v96q0 66 47 113t113 47h64q66 0 113 -47t47 -113v-96h384v96q0 66 47 113t113 47h64q66 0 113 -47t47 -113v-96h128q52 0 90 -38t38 -90z" />
    <glyph glyph-name="fire_extinguisher" unicode="&#xf134;" horiz-adv-x="1408" 
d="M512 1344q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1408 1376v-320q0 -16 -12 -25q-8 -7 -20 -7q-4 0 -7 1l-448 96q-11 2 -18 11t-7 20h-256v-102q111 -23 183.5 -111t72.5 -203v-800q0 -26 -19 -45t-45 -19h-512q-26 0 -45 19t-19 45v800
q0 106 62.5 190.5t161.5 114.5v111h-32q-59 0 -115 -23.5t-91.5 -53t-66 -66.5t-40.5 -53.5t-14 -24.5q-17 -35 -57 -35q-16 0 -29 7q-23 12 -31.5 37t3.5 49q5 10 14.5 26t37.5 53.5t60.5 70t85 67t108.5 52.5q-25 42 -25 86q0 66 47 113t113 47t113 -47t47 -113
q0 -33 -14 -64h302q0 11 7 20t18 11l448 96q3 1 7 1q12 0 20 -7q12 -9 12 -25z" />
    <glyph glyph-name="rocket" unicode="&#xf135;" horiz-adv-x="1664" 
d="M1440 1088q0 40 -28 68t-68 28t-68 -28t-28 -68t28 -68t68 -28t68 28t28 68zM1664 1376q0 -249 -75.5 -430.5t-253.5 -360.5q-81 -80 -195 -176l-20 -379q-2 -16 -16 -26l-384 -224q-7 -4 -16 -4q-12 0 -23 9l-64 64q-13 14 -8 32l85 276l-281 281l-276 -85q-3 -1 -9 -1
q-14 0 -23 9l-64 64q-17 19 -5 39l224 384q10 14 26 16l379 20q96 114 176 195q188 187 358 258t431 71q14 0 24 -9.5t10 -22.5z" />
    <glyph glyph-name="maxcdn" unicode="&#xf136;" horiz-adv-x="1792" 
d="M1745 763l-164 -763h-334l178 832q13 56 -15 88q-27 33 -83 33h-169l-204 -953h-334l204 953h-286l-204 -953h-334l204 953l-153 327h1276q101 0 189.5 -40.5t147.5 -113.5q60 -73 81 -168.5t0 -194.5z" />
    <glyph glyph-name="chevron_sign_left" unicode="&#xf137;" 
d="M909 141l102 102q19 19 19 45t-19 45l-307 307l307 307q19 19 19 45t-19 45l-102 102q-19 19 -45 19t-45 -19l-454 -454q-19 -19 -19 -45t19 -45l454 -454q19 -19 45 -19t45 19zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5
t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="chevron_sign_right" unicode="&#xf138;" 
d="M717 141l454 454q19 19 19 45t-19 45l-454 454q-19 19 -45 19t-45 -19l-102 -102q-19 -19 -19 -45t19 -45l307 -307l-307 -307q-19 -19 -19 -45t19 -45l102 -102q19 -19 45 -19t45 19zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5
t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="chevron_sign_up" unicode="&#xf139;" 
d="M1165 397l102 102q19 19 19 45t-19 45l-454 454q-19 19 -45 19t-45 -19l-454 -454q-19 -19 -19 -45t19 -45l102 -102q19 -19 45 -19t45 19l307 307l307 -307q19 -19 45 -19t45 19zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5
t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="chevron_sign_down" unicode="&#xf13a;" 
d="M813 237l454 454q19 19 19 45t-19 45l-102 102q-19 19 -45 19t-45 -19l-307 -307l-307 307q-19 19 -45 19t-45 -19l-102 -102q-19 -19 -19 -45t19 -45l454 -454q19 -19 45 -19t45 19zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5
t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="html5" unicode="&#xf13b;" horiz-adv-x="1408" 
d="M1130 939l16 175h-884l47 -534h612l-22 -228l-197 -53l-196 53l-13 140h-175l22 -278l362 -100h4v1l359 99l50 544h-644l-15 181h674zM0 1408h1408l-128 -1438l-578 -162l-574 162z" />
    <glyph glyph-name="css3" unicode="&#xf13c;" horiz-adv-x="1792" 
d="M275 1408h1505l-266 -1333l-804 -267l-698 267l71 356h297l-29 -147l422 -161l486 161l68 339h-1208l58 297h1209l38 191h-1208z" />
    <glyph glyph-name="anchor" unicode="&#xf13d;" horiz-adv-x="1792" 
d="M960 1280q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1792 352v-352q0 -22 -20 -30q-8 -2 -12 -2q-12 0 -23 9l-93 93q-119 -143 -318.5 -226.5t-429.5 -83.5t-429.5 83.5t-318.5 226.5l-93 -93q-9 -9 -23 -9q-4 0 -12 2q-20 8 -20 30v352
q0 14 9 23t23 9h352q22 0 30 -20q8 -19 -7 -35l-100 -100q67 -91 189.5 -153.5t271.5 -82.5v647h-192q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h192v163q-58 34 -93 92.5t-35 128.5q0 106 75 181t181 75t181 -75t75 -181q0 -70 -35 -128.5t-93 -92.5v-163h192q26 0 45 -19
t19 -45v-128q0 -26 -19 -45t-45 -19h-192v-647q149 20 271.5 82.5t189.5 153.5l-100 100q-15 16 -7 35q8 20 30 20h352q14 0 23 -9t9 -23z" />
    <glyph glyph-name="unlock_alt" unicode="&#xf13e;" horiz-adv-x="1152" 
d="M1056 768q40 0 68 -28t28 -68v-576q0 -40 -28 -68t-68 -28h-960q-40 0 -68 28t-28 68v576q0 40 28 68t68 28h32v320q0 185 131.5 316.5t316.5 131.5t316.5 -131.5t131.5 -316.5q0 -26 -19 -45t-45 -19h-64q-26 0 -45 19t-19 45q0 106 -75 181t-181 75t-181 -75t-75 -181
v-320h736z" />
    <glyph glyph-name="bullseye" unicode="&#xf140;" 
d="M1024 640q0 -106 -75 -181t-181 -75t-181 75t-75 181t75 181t181 75t181 -75t75 -181zM1152 640q0 159 -112.5 271.5t-271.5 112.5t-271.5 -112.5t-112.5 -271.5t112.5 -271.5t271.5 -112.5t271.5 112.5t112.5 271.5zM1280 640q0 -212 -150 -362t-362 -150t-362 150
t-150 362t150 362t362 150t362 -150t150 -362zM1408 640q0 130 -51 248.5t-136.5 204t-204 136.5t-248.5 51t-248.5 -51t-204 -136.5t-136.5 -204t-51 -248.5t51 -248.5t136.5 -204t204 -136.5t248.5 -51t248.5 51t204 136.5t136.5 204t51 248.5zM1536 640
q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="ellipsis_horizontal" unicode="&#xf141;" horiz-adv-x="1408" 
d="M384 800v-192q0 -40 -28 -68t-68 -28h-192q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h192q40 0 68 -28t28 -68zM896 800v-192q0 -40 -28 -68t-68 -28h-192q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h192q40 0 68 -28t28 -68zM1408 800v-192q0 -40 -28 -68t-68 -28h-192
q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h192q40 0 68 -28t28 -68z" />
    <glyph glyph-name="ellipsis_vertical" unicode="&#xf142;" horiz-adv-x="384" 
d="M384 288v-192q0 -40 -28 -68t-68 -28h-192q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h192q40 0 68 -28t28 -68zM384 800v-192q0 -40 -28 -68t-68 -28h-192q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h192q40 0 68 -28t28 -68zM384 1312v-192q0 -40 -28 -68t-68 -28h-192
q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h192q40 0 68 -28t28 -68z" />
    <glyph glyph-name="_303" unicode="&#xf143;" 
d="M512 256q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM863 162q-13 233 -176.5 396.5t-396.5 176.5q-14 1 -24 -9t-10 -23v-128q0 -13 8.5 -22t21.5 -10q154 -11 264 -121t121 -264q1 -13 10 -21.5t22 -8.5h128
q13 0 23 10t9 24zM1247 161q-5 154 -56 297.5t-139.5 260t-205 205t-260 139.5t-297.5 56q-14 1 -23 -9q-10 -10 -10 -23v-128q0 -13 9 -22t22 -10q204 -7 378 -111.5t278.5 -278.5t111.5 -378q1 -13 10 -22t22 -9h128q13 0 23 10q11 9 9 23zM1536 1120v-960
q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" />
    <glyph glyph-name="play_sign" unicode="&#xf144;" 
d="M768 1408q209 0 385.5 -103t279.5 -279.5t103 -385.5t-103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103zM1152 585q32 18 32 55t-32 55l-544 320q-31 19 -64 1q-32 -19 -32 -56v-640q0 -37 32 -56
q16 -8 32 -8q17 0 32 9z" />
    <glyph glyph-name="ticket" unicode="&#xf145;" horiz-adv-x="1792" 
d="M1024 1084l316 -316l-572 -572l-316 316zM813 105l618 618q19 19 19 45t-19 45l-362 362q-18 18 -45 18t-45 -18l-618 -618q-19 -19 -19 -45t19 -45l362 -362q18 -18 45 -18t45 18zM1702 742l-907 -908q-37 -37 -90.5 -37t-90.5 37l-126 126q56 56 56 136t-56 136
t-136 56t-136 -56l-125 126q-37 37 -37 90.5t37 90.5l907 906q37 37 90.5 37t90.5 -37l125 -125q-56 -56 -56 -136t56 -136t136 -56t136 56l126 -125q37 -37 37 -90.5t-37 -90.5z" />
    <glyph glyph-name="minus_sign_alt" unicode="&#xf146;" 
d="M1280 576v128q0 26 -19 45t-45 19h-896q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h896q26 0 45 19t19 45zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5
t84.5 -203.5z" />
    <glyph glyph-name="check_minus" unicode="&#xf147;" horiz-adv-x="1408" 
d="M1152 736v-64q0 -14 -9 -23t-23 -9h-832q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h832q14 0 23 -9t9 -23zM1280 288v832q0 66 -47 113t-113 47h-832q-66 0 -113 -47t-47 -113v-832q0 -66 47 -113t113 -47h832q66 0 113 47t47 113zM1408 1120v-832q0 -119 -84.5 -203.5
t-203.5 -84.5h-832q-119 0 -203.5 84.5t-84.5 203.5v832q0 119 84.5 203.5t203.5 84.5h832q119 0 203.5 -84.5t84.5 -203.5z" />
    <glyph glyph-name="level_up" unicode="&#xf148;" horiz-adv-x="1024" 
d="M1018 933q-18 -37 -58 -37h-192v-864q0 -14 -9 -23t-23 -9h-704q-21 0 -29 18q-8 20 4 35l160 192q9 11 25 11h320v640h-192q-40 0 -58 37q-17 37 9 68l320 384q18 22 49 22t49 -22l320 -384q27 -32 9 -68z" />
    <glyph glyph-name="level_down" unicode="&#xf149;" horiz-adv-x="1024" 
d="M32 1280h704q13 0 22.5 -9.5t9.5 -23.5v-863h192q40 0 58 -37t-9 -69l-320 -384q-18 -22 -49 -22t-49 22l-320 384q-26 31 -9 69q18 37 58 37h192v640h-320q-14 0 -25 11l-160 192q-13 14 -4 34q9 19 29 19z" />
    <glyph glyph-name="check_sign" unicode="&#xf14a;" 
d="M685 237l614 614q19 19 19 45t-19 45l-102 102q-19 19 -45 19t-45 -19l-467 -467l-211 211q-19 19 -45 19t-45 -19l-102 -102q-19 -19 -19 -45t19 -45l358 -358q19 -19 45 -19t45 19zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5
t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" />
    <glyph glyph-name="edit_sign" unicode="&#xf14b;" 
d="M404 428l152 -152l-52 -52h-56v96h-96v56zM818 818q14 -13 -3 -30l-291 -291q-17 -17 -30 -3q-14 13 3 30l291 291q17 17 30 3zM544 128l544 544l-288 288l-544 -544v-288h288zM1152 736l92 92q28 28 28 68t-28 68l-152 152q-28 28 -68 28t-68 -28l-92 -92zM1536 1120
v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" />
    <glyph glyph-name="_312" unicode="&#xf14c;" 
d="M1280 608v480q0 26 -19 45t-45 19h-480q-42 0 -59 -39q-17 -41 14 -70l144 -144l-534 -534q-19 -19 -19 -45t19 -45l102 -102q19 -19 45 -19t45 19l534 534l144 -144q18 -19 45 -19q12 0 25 5q39 17 39 59zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960
q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" />
    <glyph glyph-name="share_sign" unicode="&#xf14d;" 
d="M1005 435l352 352q19 19 19 45t-19 45l-352 352q-30 31 -69 14q-40 -17 -40 -59v-160q-119 0 -216 -19.5t-162.5 -51t-114 -79t-76.5 -95.5t-44.5 -109t-21.5 -111.5t-5 -110.5q0 -181 167 -404q11 -12 25 -12q7 0 13 3q22 9 19 33q-44 354 62 473q46 52 130 75.5
t224 23.5v-160q0 -42 40 -59q12 -5 24 -5q26 0 45 19zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" />
    <glyph glyph-name="compass" unicode="&#xf14e;" 
d="M640 448l256 128l-256 128v-256zM1024 1039v-542l-512 -256v542zM1312 640q0 148 -73 273t-198 198t-273 73t-273 -73t-198 -198t-73 -273t73 -273t198 -198t273 -73t273 73t198 198t73 273zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103
t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="collapse" unicode="&#xf150;" 
d="M1145 861q18 -35 -5 -66l-320 -448q-19 -27 -52 -27t-52 27l-320 448q-23 31 -5 66q17 35 57 35h640q40 0 57 -35zM1280 160v960q0 13 -9.5 22.5t-22.5 9.5h-960q-13 0 -22.5 -9.5t-9.5 -22.5v-960q0 -13 9.5 -22.5t22.5 -9.5h960q13 0 22.5 9.5t9.5 22.5zM1536 1120
v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" />
    <glyph glyph-name="collapse_top" unicode="&#xf151;" 
d="M1145 419q-17 -35 -57 -35h-640q-40 0 -57 35q-18 35 5 66l320 448q19 27 52 27t52 -27l320 -448q23 -31 5 -66zM1280 160v960q0 13 -9.5 22.5t-22.5 9.5h-960q-13 0 -22.5 -9.5t-9.5 -22.5v-960q0 -13 9.5 -22.5t22.5 -9.5h960q13 0 22.5 9.5t9.5 22.5zM1536 1120v-960
q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" />
    <glyph glyph-name="_317" unicode="&#xf152;" 
d="M1088 640q0 -33 -27 -52l-448 -320q-31 -23 -66 -5q-35 17 -35 57v640q0 40 35 57q35 18 66 -5l448 -320q27 -19 27 -52zM1280 160v960q0 14 -9 23t-23 9h-960q-14 0 -23 -9t-9 -23v-960q0 -14 9 -23t23 -9h960q14 0 23 9t9 23zM1536 1120v-960q0 -119 -84.5 -203.5
t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" />
    <glyph glyph-name="eur" unicode="&#xf153;" horiz-adv-x="1024" 
d="M976 229l35 -159q3 -12 -3 -22.5t-17 -14.5l-5 -1q-4 -2 -10.5 -3.5t-16 -4.5t-21.5 -5.5t-25.5 -5t-30 -5t-33.5 -4.5t-36.5 -3t-38.5 -1q-234 0 -409 130.5t-238 351.5h-95q-13 0 -22.5 9.5t-9.5 22.5v113q0 13 9.5 22.5t22.5 9.5h66q-2 57 1 105h-67q-14 0 -23 9
t-9 23v114q0 14 9 23t23 9h98q67 210 243.5 338t400.5 128q102 0 194 -23q11 -3 20 -15q6 -11 3 -24l-43 -159q-3 -13 -14 -19.5t-24 -2.5l-4 1q-4 1 -11.5 2.5l-17.5 3.5t-22.5 3.5t-26 3t-29 2.5t-29.5 1q-126 0 -226 -64t-150 -176h468q16 0 25 -12q10 -12 7 -26
l-24 -114q-5 -26 -32 -26h-488q-3 -37 0 -105h459q15 0 25 -12q9 -12 6 -27l-24 -112q-2 -11 -11 -18.5t-20 -7.5h-387q48 -117 149.5 -185.5t228.5 -68.5q18 0 36 1.5t33.5 3.5t29.5 4.5t24.5 5t18.5 4.5l12 3l5 2q13 5 26 -2q12 -7 15 -21z" />
    <glyph glyph-name="gbp" unicode="&#xf154;" horiz-adv-x="1024" 
d="M1020 399v-367q0 -14 -9 -23t-23 -9h-956q-14 0 -23 9t-9 23v150q0 13 9.5 22.5t22.5 9.5h97v383h-95q-14 0 -23 9.5t-9 22.5v131q0 14 9 23t23 9h95v223q0 171 123.5 282t314.5 111q185 0 335 -125q9 -8 10 -20.5t-7 -22.5l-103 -127q-9 -11 -22 -12q-13 -2 -23 7
q-5 5 -26 19t-69 32t-93 18q-85 0 -137 -47t-52 -123v-215h305q13 0 22.5 -9t9.5 -23v-131q0 -13 -9.5 -22.5t-22.5 -9.5h-305v-379h414v181q0 13 9 22.5t23 9.5h162q14 0 23 -9.5t9 -22.5z" />
    <glyph glyph-name="usd" unicode="&#xf155;" horiz-adv-x="1024" 
d="M978 351q0 -153 -99.5 -263.5t-258.5 -136.5v-175q0 -14 -9 -23t-23 -9h-135q-13 0 -22.5 9.5t-9.5 22.5v175q-66 9 -127.5 31t-101.5 44.5t-74 48t-46.5 37.5t-17.5 18q-17 21 -2 41l103 135q7 10 23 12q15 2 24 -9l2 -2q113 -99 243 -125q37 -8 74 -8q81 0 142.5 43
t61.5 122q0 28 -15 53t-33.5 42t-58.5 37.5t-66 32t-80 32.5q-39 16 -61.5 25t-61.5 26.5t-62.5 31t-56.5 35.5t-53.5 42.5t-43.5 49t-35.5 58t-21 66.5t-8.5 78q0 138 98 242t255 134v180q0 13 9.5 22.5t22.5 9.5h135q14 0 23 -9t9 -23v-176q57 -6 110.5 -23t87 -33.5
t63.5 -37.5t39 -29t15 -14q17 -18 5 -38l-81 -146q-8 -15 -23 -16q-14 -3 -27 7q-3 3 -14.5 12t-39 26.5t-58.5 32t-74.5 26t-85.5 11.5q-95 0 -155 -43t-60 -111q0 -26 8.5 -48t29.5 -41.5t39.5 -33t56 -31t60.5 -27t70 -27.5q53 -20 81 -31.5t76 -35t75.5 -42.5t62 -50
t53 -63.5t31.5 -76.5t13 -94z" />
    <glyph glyph-name="inr" unicode="&#xf156;" horiz-adv-x="898" 
d="M898 1066v-102q0 -14 -9 -23t-23 -9h-168q-23 -144 -129 -234t-276 -110q167 -178 459 -536q14 -16 4 -34q-8 -18 -29 -18h-195q-16 0 -25 12q-306 367 -498 571q-9 9 -9 22v127q0 13 9.5 22.5t22.5 9.5h112q132 0 212.5 43t102.5 125h-427q-14 0 -23 9t-9 23v102
q0 14 9 23t23 9h413q-57 113 -268 113h-145q-13 0 -22.5 9.5t-9.5 22.5v133q0 14 9 23t23 9h832q14 0 23 -9t9 -23v-102q0 -14 -9 -23t-23 -9h-233q47 -61 64 -144h171q14 0 23 -9t9 -23z" />
    <glyph glyph-name="jpy" unicode="&#xf157;" horiz-adv-x="1027" 
d="M603 0h-172q-13 0 -22.5 9t-9.5 23v330h-288q-13 0 -22.5 9t-9.5 23v103q0 13 9.5 22.5t22.5 9.5h288v85h-288q-13 0 -22.5 9t-9.5 23v104q0 13 9.5 22.5t22.5 9.5h214l-321 578q-8 16 0 32q10 16 28 16h194q19 0 29 -18l215 -425q19 -38 56 -125q10 24 30.5 68t27.5 61
l191 420q8 19 29 19h191q17 0 27 -16q9 -14 1 -31l-313 -579h215q13 0 22.5 -9.5t9.5 -22.5v-104q0 -14 -9.5 -23t-22.5 -9h-290v-85h290q13 0 22.5 -9.5t9.5 -22.5v-103q0 -14 -9.5 -23t-22.5 -9h-290v-330q0 -13 -9.5 -22.5t-22.5 -9.5z" />
    <glyph glyph-name="rub" unicode="&#xf158;" horiz-adv-x="1280" 
d="M1043 971q0 100 -65 162t-171 62h-320v-448h320q106 0 171 62t65 162zM1280 971q0 -193 -126.5 -315t-326.5 -122h-340v-118h505q14 0 23 -9t9 -23v-128q0 -14 -9 -23t-23 -9h-505v-192q0 -14 -9.5 -23t-22.5 -9h-167q-14 0 -23 9t-9 23v192h-224q-14 0 -23 9t-9 23v128
q0 14 9 23t23 9h224v118h-224q-14 0 -23 9t-9 23v149q0 13 9 22.5t23 9.5h224v629q0 14 9 23t23 9h539q200 0 326.5 -122t126.5 -315z" />
    <glyph glyph-name="krw" unicode="&#xf159;" horiz-adv-x="1792" 
d="M514 341l81 299h-159l75 -300q1 -1 1 -3t1 -3q0 1 0.5 3.5t0.5 3.5zM630 768l35 128h-292l32 -128h225zM822 768h139l-35 128h-70zM1271 340l78 300h-162l81 -299q0 -1 0.5 -3.5t1.5 -3.5q0 1 0.5 3t0.5 3zM1382 768l33 128h-297l34 -128h230zM1792 736v-64q0 -14 -9 -23
t-23 -9h-213l-164 -616q-7 -24 -31 -24h-159q-24 0 -31 24l-166 616h-209l-167 -616q-7 -24 -31 -24h-159q-11 0 -19.5 7t-10.5 17l-160 616h-208q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h175l-33 128h-142q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h109l-89 344q-5 15 5 28
q10 12 26 12h137q26 0 31 -24l90 -360h359l97 360q7 24 31 24h126q24 0 31 -24l98 -360h365l93 360q5 24 31 24h137q16 0 26 -12q10 -13 5 -28l-91 -344h111q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-145l-34 -128h179q14 0 23 -9t9 -23z" />
    <glyph glyph-name="btc" unicode="&#xf15a;" horiz-adv-x="1280" 
d="M1167 896q18 -182 -131 -258q117 -28 175 -103t45 -214q-7 -71 -32.5 -125t-64.5 -89t-97 -58.5t-121.5 -34.5t-145.5 -15v-255h-154v251q-80 0 -122 1v-252h-154v255q-18 0 -54 0.5t-55 0.5h-200l31 183h111q50 0 58 51v402h16q-6 1 -16 1v287q-13 68 -89 68h-111v164
l212 -1q64 0 97 1v252h154v-247q82 2 122 2v245h154v-252q79 -7 140 -22.5t113 -45t82.5 -78t36.5 -114.5zM952 351q0 36 -15 64t-37 46t-57.5 30.5t-65.5 18.5t-74 9t-69 3t-64.5 -1t-47.5 -1v-338q8 0 37 -0.5t48 -0.5t53 1.5t58.5 4t57 8.5t55.5 14t47.5 21t39.5 30
t24.5 40t9.5 51zM881 827q0 33 -12.5 58.5t-30.5 42t-48 28t-55 16.5t-61.5 8t-58 2.5t-54 -1t-39.5 -0.5v-307q5 0 34.5 -0.5t46.5 0t50 2t55 5.5t51.5 11t48.5 18.5t37 27t27 38.5t9 51z" />
    <glyph glyph-name="file" unicode="&#xf15b;" 
d="M1024 1024v472q22 -14 36 -28l408 -408q14 -14 28 -36h-472zM896 992q0 -40 28 -68t68 -28h544v-1056q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h800v-544z" />
    <glyph glyph-name="file_text" unicode="&#xf15c;" 
d="M1468 1060q14 -14 28 -36h-472v472q22 -14 36 -28zM992 896h544v-1056q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h800v-544q0 -40 28 -68t68 -28zM1152 160v64q0 14 -9 23t-23 9h-704q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h704
q14 0 23 9t9 23zM1152 416v64q0 14 -9 23t-23 9h-704q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h704q14 0 23 9t9 23zM1152 672v64q0 14 -9 23t-23 9h-704q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h704q14 0 23 9t9 23z" />
    <glyph glyph-name="sort_by_alphabet" unicode="&#xf15d;" horiz-adv-x="1664" 
d="M1191 1128h177l-72 218l-12 47q-2 16 -2 20h-4l-3 -20q0 -1 -3.5 -18t-7.5 -29zM736 96q0 -12 -10 -24l-319 -319q-10 -9 -23 -9q-12 0 -23 9l-320 320q-15 16 -7 35q8 20 30 20h192v1376q0 14 9 23t23 9h192q14 0 23 -9t9 -23v-1376h192q14 0 23 -9t9 -23zM1572 -23
v-233h-584v90l369 529q12 18 21 27l11 9v3q-2 0 -6.5 -0.5t-7.5 -0.5q-12 -3 -30 -3h-232v-115h-120v229h567v-89l-369 -530q-6 -8 -21 -26l-11 -11v-2l14 2q9 2 30 2h248v119h121zM1661 874v-106h-288v106h75l-47 144h-243l-47 -144h75v-106h-287v106h70l230 662h162
l230 -662h70z" />
    <glyph glyph-name="_329" unicode="&#xf15e;" horiz-adv-x="1664" 
d="M1191 104h177l-72 218l-12 47q-2 16 -2 20h-4l-3 -20q0 -1 -3.5 -18t-7.5 -29zM736 96q0 -12 -10 -24l-319 -319q-10 -9 -23 -9q-12 0 -23 9l-320 320q-15 16 -7 35q8 20 30 20h192v1376q0 14 9 23t23 9h192q14 0 23 -9t9 -23v-1376h192q14 0 23 -9t9 -23zM1661 -150
v-106h-288v106h75l-47 144h-243l-47 -144h75v-106h-287v106h70l230 662h162l230 -662h70zM1572 1001v-233h-584v90l369 529q12 18 21 27l11 9v3q-2 0 -6.5 -0.5t-7.5 -0.5q-12 -3 -30 -3h-232v-115h-120v229h567v-89l-369 -530q-6 -8 -21 -26l-11 -10v-3l14 3q9 1 30 1h248
v119h121z" />
    <glyph glyph-name="sort_by_attributes" unicode="&#xf160;" horiz-adv-x="1792" 
d="M736 96q0 -12 -10 -24l-319 -319q-10 -9 -23 -9q-12 0 -23 9l-320 320q-15 16 -7 35q8 20 30 20h192v1376q0 14 9 23t23 9h192q14 0 23 -9t9 -23v-1376h192q14 0 23 -9t9 -23zM1792 -32v-192q0 -14 -9 -23t-23 -9h-832q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h832
q14 0 23 -9t9 -23zM1600 480v-192q0 -14 -9 -23t-23 -9h-640q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h640q14 0 23 -9t9 -23zM1408 992v-192q0 -14 -9 -23t-23 -9h-448q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h448q14 0 23 -9t9 -23zM1216 1504v-192q0 -14 -9 -23t-23 -9h-256
q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h256q14 0 23 -9t9 -23z" />
    <glyph glyph-name="sort_by_attributes_alt" unicode="&#xf161;" horiz-adv-x="1792" 
d="M1216 -32v-192q0 -14 -9 -23t-23 -9h-256q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h256q14 0 23 -9t9 -23zM736 96q0 -12 -10 -24l-319 -319q-10 -9 -23 -9q-12 0 -23 9l-320 320q-15 16 -7 35q8 20 30 20h192v1376q0 14 9 23t23 9h192q14 0 23 -9t9 -23v-1376h192
q14 0 23 -9t9 -23zM1408 480v-192q0 -14 -9 -23t-23 -9h-448q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h448q14 0 23 -9t9 -23zM1600 992v-192q0 -14 -9 -23t-23 -9h-640q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h640q14 0 23 -9t9 -23zM1792 1504v-192q0 -14 -9 -23t-23 -9h-832
q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h832q14 0 23 -9t9 -23z" />
    <glyph glyph-name="sort_by_order" unicode="&#xf162;" 
d="M1346 223q0 63 -44 116t-103 53q-52 0 -83 -37t-31 -94t36.5 -95t104.5 -38q50 0 85 27t35 68zM736 96q0 -12 -10 -24l-319 -319q-10 -9 -23 -9q-12 0 -23 9l-320 320q-15 16 -7 35q8 20 30 20h192v1376q0 14 9 23t23 9h192q14 0 23 -9t9 -23v-1376h192q14 0 23 -9t9 -23
zM1486 165q0 -62 -13 -121.5t-41 -114t-68 -95.5t-98.5 -65.5t-127.5 -24.5q-62 0 -108 16q-24 8 -42 15l39 113q15 -7 31 -11q37 -13 75 -13q84 0 134.5 58.5t66.5 145.5h-2q-21 -23 -61.5 -37t-84.5 -14q-106 0 -173 71.5t-67 172.5q0 105 72 178t181 73q123 0 205 -94.5
t82 -252.5zM1456 882v-114h-469v114h167v432q0 7 0.5 19t0.5 17v16h-2l-7 -12q-8 -13 -26 -31l-62 -58l-82 86l192 185h123v-654h165z" />
    <glyph glyph-name="sort_by_order_alt" unicode="&#xf163;" 
d="M1346 1247q0 63 -44 116t-103 53q-52 0 -83 -37t-31 -94t36.5 -95t104.5 -38q50 0 85 27t35 68zM736 96q0 -12 -10 -24l-319 -319q-10 -9 -23 -9q-12 0 -23 9l-320 320q-15 16 -7 35q8 20 30 20h192v1376q0 14 9 23t23 9h192q14 0 23 -9t9 -23v-1376h192q14 0 23 -9
t9 -23zM1456 -142v-114h-469v114h167v432q0 7 0.5 19t0.5 17v16h-2l-7 -12q-8 -13 -26 -31l-62 -58l-82 86l192 185h123v-654h165zM1486 1189q0 -62 -13 -121.5t-41 -114t-68 -95.5t-98.5 -65.5t-127.5 -24.5q-62 0 -108 16q-24 8 -42 15l39 113q15 -7 31 -11q37 -13 75 -13
q84 0 134.5 58.5t66.5 145.5h-2q-21 -23 -61.5 -37t-84.5 -14q-106 0 -173 71.5t-67 172.5q0 105 72 178t181 73q123 0 205 -94.5t82 -252.5z" />
    <glyph glyph-name="_334" unicode="&#xf164;" horiz-adv-x="1664" 
d="M256 192q0 26 -19 45t-45 19q-27 0 -45.5 -19t-18.5 -45q0 -27 18.5 -45.5t45.5 -18.5q26 0 45 18.5t19 45.5zM416 704v-640q0 -26 -19 -45t-45 -19h-288q-26 0 -45 19t-19 45v640q0 26 19 45t45 19h288q26 0 45 -19t19 -45zM1600 704q0 -86 -55 -149q15 -44 15 -76
q3 -76 -43 -137q17 -56 0 -117q-15 -57 -54 -94q9 -112 -49 -181q-64 -76 -197 -78h-36h-76h-17q-66 0 -144 15.5t-121.5 29t-120.5 39.5q-123 43 -158 44q-26 1 -45 19.5t-19 44.5v641q0 25 18 43.5t43 20.5q24 2 76 59t101 121q68 87 101 120q18 18 31 48t17.5 48.5
t13.5 60.5q7 39 12.5 61t19.5 52t34 50q19 19 45 19q46 0 82.5 -10.5t60 -26t40 -40.5t24 -45t12 -50t5 -45t0.5 -39q0 -38 -9.5 -76t-19 -60t-27.5 -56q-3 -6 -10 -18t-11 -22t-8 -24h277q78 0 135 -57t57 -135z" />
    <glyph glyph-name="_335" unicode="&#xf165;" horiz-adv-x="1664" 
d="M256 960q0 -26 -19 -45t-45 -19q-27 0 -45.5 19t-18.5 45q0 27 18.5 45.5t45.5 18.5q26 0 45 -18.5t19 -45.5zM416 448v640q0 26 -19 45t-45 19h-288q-26 0 -45 -19t-19 -45v-640q0 -26 19 -45t45 -19h288q26 0 45 19t19 45zM1545 597q55 -61 55 -149q-1 -78 -57.5 -135
t-134.5 -57h-277q4 -14 8 -24t11 -22t10 -18q18 -37 27 -57t19 -58.5t10 -76.5q0 -24 -0.5 -39t-5 -45t-12 -50t-24 -45t-40 -40.5t-60 -26t-82.5 -10.5q-26 0 -45 19q-20 20 -34 50t-19.5 52t-12.5 61q-9 42 -13.5 60.5t-17.5 48.5t-31 48q-33 33 -101 120q-49 64 -101 121
t-76 59q-25 2 -43 20.5t-18 43.5v641q0 26 19 44.5t45 19.5q35 1 158 44q77 26 120.5 39.5t121.5 29t144 15.5h17h76h36q133 -2 197 -78q58 -69 49 -181q39 -37 54 -94q17 -61 0 -117q46 -61 43 -137q0 -32 -15 -76z" />
    <glyph glyph-name="youtube_sign" unicode="&#xf166;" 
d="M919 233v157q0 50 -29 50q-17 0 -33 -16v-224q16 -16 33 -16q29 0 29 49zM1103 355h66v34q0 51 -33 51t-33 -51v-34zM532 621v-70h-80v-423h-74v423h-78v70h232zM733 495v-367h-67v40q-39 -45 -76 -45q-33 0 -42 28q-6 17 -6 54v290h66v-270q0 -24 1 -26q1 -15 15 -15
q20 0 42 31v280h67zM985 384v-146q0 -52 -7 -73q-12 -42 -53 -42q-35 0 -68 41v-36h-67v493h67v-161q32 40 68 40q41 0 53 -42q7 -21 7 -74zM1236 255v-9q0 -29 -2 -43q-3 -22 -15 -40q-27 -40 -80 -40q-52 0 -81 38q-21 27 -21 86v129q0 59 20 86q29 38 80 38t78 -38
q21 -29 21 -86v-76h-133v-65q0 -51 34 -51q24 0 30 26q0 1 0.5 7t0.5 16.5v21.5h68zM785 1079v-156q0 -51 -32 -51t-32 51v156q0 52 32 52t32 -52zM1318 366q0 177 -19 260q-10 44 -43 73.5t-76 34.5q-136 15 -412 15q-275 0 -411 -15q-44 -5 -76.5 -34.5t-42.5 -73.5
q-20 -87 -20 -260q0 -176 20 -260q10 -43 42.5 -73t75.5 -35q137 -15 412 -15t412 15q43 5 75.5 35t42.5 73q20 84 20 260zM563 1017l90 296h-75l-51 -195l-53 195h-78q7 -23 23 -69l24 -69q35 -103 46 -158v-201h74v201zM852 936v130q0 58 -21 87q-29 38 -78 38
q-51 0 -78 -38q-21 -29 -21 -87v-130q0 -58 21 -87q27 -38 78 -38q49 0 78 38q21 27 21 87zM1033 816h67v370h-67v-283q-22 -31 -42 -31q-15 0 -16 16q-1 2 -1 26v272h-67v-293q0 -37 6 -55q11 -27 43 -27q36 0 77 45v-40zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5
h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" />
    <glyph glyph-name="youtube" unicode="&#xf167;" 
d="M971 292v-211q0 -67 -39 -67q-23 0 -45 22v301q22 22 45 22q39 0 39 -67zM1309 291v-46h-90v46q0 68 45 68t45 -68zM343 509h107v94h-312v-94h105v-569h100v569zM631 -60h89v494h-89v-378q-30 -42 -57 -42q-18 0 -21 21q-1 3 -1 35v364h-89v-391q0 -49 8 -73
q12 -37 58 -37q48 0 102 61v-54zM1060 88v197q0 73 -9 99q-17 56 -71 56q-50 0 -93 -54v217h-89v-663h89v48q45 -55 93 -55q54 0 71 55q9 27 9 100zM1398 98v13h-91q0 -51 -2 -61q-7 -36 -40 -36q-46 0 -46 69v87h179v103q0 79 -27 116q-39 51 -106 51q-68 0 -107 -51
q-28 -37 -28 -116v-173q0 -79 29 -116q39 -51 108 -51q72 0 108 53q18 27 21 54q2 9 2 58zM790 1011v210q0 69 -43 69t-43 -69v-210q0 -70 43 -70t43 70zM1509 260q0 -234 -26 -350q-14 -59 -58 -99t-102 -46q-184 -21 -555 -21t-555 21q-58 6 -102.5 46t-57.5 99
q-26 112 -26 350q0 234 26 350q14 59 58 99t103 47q183 20 554 20t555 -20q58 -7 102.5 -47t57.5 -99q26 -112 26 -350zM511 1536h102l-121 -399v-271h-100v271q-14 74 -61 212q-37 103 -65 187h106l71 -263zM881 1203v-175q0 -81 -28 -118q-38 -51 -106 -51q-67 0 -105 51
q-28 38 -28 118v175q0 80 28 117q38 51 105 51q68 0 106 -51q28 -37 28 -117zM1216 1365v-499h-91v55q-53 -62 -103 -62q-46 0 -59 37q-8 24 -8 75v394h91v-367q0 -33 1 -35q3 -22 21 -22q27 0 57 43v381h91z" />
    <glyph glyph-name="xing" unicode="&#xf168;" horiz-adv-x="1408" 
d="M597 869q-10 -18 -257 -456q-27 -46 -65 -46h-239q-21 0 -31 17t0 36l253 448q1 0 0 1l-161 279q-12 22 -1 37q9 15 32 15h239q40 0 66 -45zM1403 1511q11 -16 0 -37l-528 -934v-1l336 -615q11 -20 1 -37q-10 -15 -32 -15h-239q-42 0 -66 45l-339 622q18 32 531 942
q25 45 64 45h241q22 0 31 -15z" />
    <glyph glyph-name="xing_sign" unicode="&#xf169;" 
d="M685 771q0 1 -126 222q-21 34 -52 34h-184q-18 0 -26 -11q-7 -12 1 -29l125 -216v-1l-196 -346q-9 -14 0 -28q8 -13 24 -13h185q31 0 50 36zM1309 1268q-7 12 -24 12h-187q-30 0 -49 -35l-411 -729q1 -2 262 -481q20 -35 52 -35h184q18 0 25 12q8 13 -1 28l-260 476v1
l409 723q8 16 0 28zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" />
    <glyph glyph-name="youtube_play" unicode="&#xf16a;" horiz-adv-x="1792" 
d="M711 408l484 250l-484 253v-503zM896 1270q168 0 324.5 -4.5t229.5 -9.5l73 -4q1 0 17 -1.5t23 -3t23.5 -4.5t28.5 -8t28 -13t31 -19.5t29 -26.5q6 -6 15.5 -18.5t29 -58.5t26.5 -101q8 -64 12.5 -136.5t5.5 -113.5v-40v-136q1 -145 -18 -290q-7 -55 -25 -99.5t-32 -61.5
l-14 -17q-14 -15 -29 -26.5t-31 -19t-28 -12.5t-28.5 -8t-24 -4.5t-23 -3t-16.5 -1.5q-251 -19 -627 -19q-207 2 -359.5 6.5t-200.5 7.5l-49 4l-36 4q-36 5 -54.5 10t-51 21t-56.5 41q-6 6 -15.5 18.5t-29 58.5t-26.5 101q-8 64 -12.5 136.5t-5.5 113.5v40v136
q-1 145 18 290q7 55 25 99.5t32 61.5l14 17q14 15 29 26.5t31 19.5t28 13t28.5 8t23.5 4.5t23 3t17 1.5q251 18 627 18z" />
    <glyph glyph-name="dropbox" unicode="&#xf16b;" horiz-adv-x="1792" 
d="M402 829l494 -305l-342 -285l-490 319zM1388 274v-108l-490 -293v-1l-1 1l-1 -1v1l-489 293v108l147 -96l342 284v2l1 -1l1 1v-2l343 -284zM554 1418l342 -285l-494 -304l-338 270zM1390 829l338 -271l-489 -319l-343 285zM1239 1418l489 -319l-338 -270l-494 304z" />
    <glyph glyph-name="stackexchange" unicode="&#xf16c;" 
d="M1289 -96h-1118v480h-160v-640h1438v640h-160v-480zM347 428l33 157l783 -165l-33 -156zM450 802l67 146l725 -339l-67 -145zM651 1158l102 123l614 -513l-102 -123zM1048 1536l477 -641l-128 -96l-477 641zM330 65v159h800v-159h-800z" />
    <glyph glyph-name="instagram" unicode="&#xf16d;" 
d="M1024 640q0 106 -75 181t-181 75t-181 -75t-75 -181t75 -181t181 -75t181 75t75 181zM1162 640q0 -164 -115 -279t-279 -115t-279 115t-115 279t115 279t279 115t279 -115t115 -279zM1270 1050q0 -38 -27 -65t-65 -27t-65 27t-27 65t27 65t65 27t65 -27t27 -65zM768 1270
q-7 0 -76.5 0.5t-105.5 0t-96.5 -3t-103 -10t-71.5 -18.5q-50 -20 -88 -58t-58 -88q-11 -29 -18.5 -71.5t-10 -103t-3 -96.5t0 -105.5t0.5 -76.5t-0.5 -76.5t0 -105.5t3 -96.5t10 -103t18.5 -71.5q20 -50 58 -88t88 -58q29 -11 71.5 -18.5t103 -10t96.5 -3t105.5 0t76.5 0.5
t76.5 -0.5t105.5 0t96.5 3t103 10t71.5 18.5q50 20 88 58t58 88q11 29 18.5 71.5t10 103t3 96.5t0 105.5t-0.5 76.5t0.5 76.5t0 105.5t-3 96.5t-10 103t-18.5 71.5q-20 50 -58 88t-88 58q-29 11 -71.5 18.5t-103 10t-96.5 3t-105.5 0t-76.5 -0.5zM1536 640q0 -229 -5 -317
q-10 -208 -124 -322t-322 -124q-88 -5 -317 -5t-317 5q-208 10 -322 124t-124 322q-5 88 -5 317t5 317q10 208 124 322t322 124q88 5 317 5t317 -5q208 -10 322 -124t124 -322q5 -88 5 -317z" />
    <glyph glyph-name="flickr" unicode="&#xf16e;" 
d="M1248 1408q119 0 203.5 -84.5t84.5 -203.5v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960zM698 640q0 88 -62 150t-150 62t-150 -62t-62 -150t62 -150t150 -62t150 62t62 150zM1262 640q0 88 -62 150
t-150 62t-150 -62t-62 -150t62 -150t150 -62t150 62t62 150z" />
    <glyph glyph-name="adn" unicode="&#xf170;" 
d="M768 914l201 -306h-402zM1133 384h94l-459 691l-459 -691h94l104 160h522zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="f171" unicode="&#xf171;" horiz-adv-x="1408" 
d="M815 677q8 -63 -50.5 -101t-111.5 -6q-39 17 -53.5 58t-0.5 82t52 58q36 18 72.5 12t64 -35.5t27.5 -67.5zM926 698q-14 107 -113 164t-197 13q-63 -28 -100.5 -88.5t-34.5 -129.5q4 -91 77.5 -155t165.5 -56q91 8 152 84t50 168zM1165 1240q-20 27 -56 44.5t-58 22
t-71 12.5q-291 47 -566 -2q-43 -7 -66 -12t-55 -22t-50 -43q30 -28 76 -45.5t73.5 -22t87.5 -11.5q228 -29 448 -1q63 8 89.5 12t72.5 21.5t75 46.5zM1222 205q-8 -26 -15.5 -76.5t-14 -84t-28.5 -70t-58 -56.5q-86 -48 -189.5 -71.5t-202 -22t-201.5 18.5q-46 8 -81.5 18
t-76.5 27t-73 43.5t-52 61.5q-25 96 -57 292l6 16l18 9q223 -148 506.5 -148t507.5 148q21 -6 24 -23t-5 -45t-8 -37zM1403 1166q-26 -167 -111 -655q-5 -30 -27 -56t-43.5 -40t-54.5 -31q-252 -126 -610 -88q-248 27 -394 139q-15 12 -25.5 26.5t-17 35t-9 34t-6 39.5
t-5.5 35q-9 50 -26.5 150t-28 161.5t-23.5 147.5t-22 158q3 26 17.5 48.5t31.5 37.5t45 30t46 22.5t48 18.5q125 46 313 64q379 37 676 -50q155 -46 215 -122q16 -20 16.5 -51t-5.5 -54z" />
    <glyph glyph-name="bitbucket_sign" unicode="&#xf172;" 
d="M848 666q0 43 -41 66t-77 1q-43 -20 -42.5 -72.5t43.5 -70.5q39 -23 81 4t36 72zM928 682q8 -66 -36 -121t-110 -61t-119 40t-56 113q-2 49 25.5 93t72.5 64q70 31 141.5 -10t81.5 -118zM1100 1073q-20 -21 -53.5 -34t-53 -16t-63.5 -8q-155 -20 -324 0q-44 6 -63 9.5
t-52.5 16t-54.5 32.5q13 19 36 31t40 15.5t47 8.5q198 35 408 1q33 -5 51 -8.5t43 -16t39 -31.5zM1142 327q0 7 5.5 26.5t3 32t-17.5 16.5q-161 -106 -365 -106t-366 106l-12 -6l-5 -12q26 -154 41 -210q47 -81 204 -108q249 -46 428 53q34 19 49 51.5t22.5 85.5t12.5 71z
M1272 1020q9 53 -8 75q-43 55 -155 88q-216 63 -487 36q-132 -12 -226 -46q-38 -15 -59.5 -25t-47 -34t-29.5 -54q8 -68 19 -138t29 -171t24 -137q1 -5 5 -31t7 -36t12 -27t22 -28q105 -80 284 -100q259 -28 440 63q24 13 39.5 23t31 29t19.5 40q48 267 80 473zM1536 1120
v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" />
    <glyph glyph-name="tumblr" unicode="&#xf173;" horiz-adv-x="1024" 
d="M944 207l80 -237q-23 -35 -111 -66t-177 -32q-104 -2 -190.5 26t-142.5 74t-95 106t-55.5 120t-16.5 118v544h-168v215q72 26 129 69.5t91 90t58 102t34 99t15 88.5q1 5 4.5 8.5t7.5 3.5h244v-424h333v-252h-334v-518q0 -30 6.5 -56t22.5 -52.5t49.5 -41.5t81.5 -14
q78 2 134 29z" />
    <glyph glyph-name="tumblr_sign" unicode="&#xf174;" 
d="M1136 75l-62 183q-44 -22 -103 -22q-36 -1 -62 10.5t-38.5 31.5t-17.5 40.5t-5 43.5v398h257v194h-256v326h-188q-8 0 -9 -10q-5 -44 -17.5 -87t-39 -95t-77 -95t-118.5 -68v-165h130v-418q0 -57 21.5 -115t65 -111t121 -85.5t176.5 -30.5q69 1 136.5 25t85.5 50z
M1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" />
    <glyph glyph-name="long_arrow_down" unicode="&#xf175;" horiz-adv-x="768" 
d="M765 237q8 -19 -5 -35l-350 -384q-10 -10 -23 -10q-14 0 -24 10l-355 384q-13 16 -5 35q9 19 29 19h224v1248q0 14 9 23t23 9h192q14 0 23 -9t9 -23v-1248h224q21 0 29 -19z" />
    <glyph glyph-name="long_arrow_up" unicode="&#xf176;" horiz-adv-x="768" 
d="M765 1043q-9 -19 -29 -19h-224v-1248q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v1248h-224q-21 0 -29 19t5 35l350 384q10 10 23 10q14 0 24 -10l355 -384q13 -16 5 -35z" />
    <glyph glyph-name="long_arrow_left" unicode="&#xf177;" horiz-adv-x="1792" 
d="M1792 736v-192q0 -14 -9 -23t-23 -9h-1248v-224q0 -21 -19 -29t-35 5l-384 350q-10 10 -10 23q0 14 10 24l384 354q16 14 35 6q19 -9 19 -29v-224h1248q14 0 23 -9t9 -23z" />
    <glyph glyph-name="long_arrow_right" unicode="&#xf178;" horiz-adv-x="1792" 
d="M1728 643q0 -14 -10 -24l-384 -354q-16 -14 -35 -6q-19 9 -19 29v224h-1248q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h1248v224q0 21 19 29t35 -5l384 -350q10 -10 10 -23z" />
    <glyph glyph-name="apple" unicode="&#xf179;" horiz-adv-x="1408" 
d="M1393 321q-39 -125 -123 -250q-129 -196 -257 -196q-49 0 -140 32q-86 32 -151 32q-61 0 -142 -33q-81 -34 -132 -34q-152 0 -301 259q-147 261 -147 503q0 228 113 374q113 144 284 144q72 0 177 -30q104 -30 138 -30q45 0 143 34q102 34 173 34q119 0 213 -65
q52 -36 104 -100q-79 -67 -114 -118q-65 -94 -65 -207q0 -124 69 -223t158 -126zM1017 1494q0 -61 -29 -136q-30 -75 -93 -138q-54 -54 -108 -72q-37 -11 -104 -17q3 149 78 257q74 107 250 148q1 -3 2.5 -11t2.5 -11q0 -4 0.5 -10t0.5 -10z" />
    <glyph glyph-name="windows" unicode="&#xf17a;" horiz-adv-x="1664" 
d="M682 530v-651l-682 94v557h682zM682 1273v-659h-682v565zM1664 530v-786l-907 125v661h907zM1664 1408v-794h-907v669z" />
    <glyph glyph-name="android" unicode="&#xf17b;" horiz-adv-x="1408" 
d="M493 1053q16 0 27.5 11.5t11.5 27.5t-11.5 27.5t-27.5 11.5t-27 -11.5t-11 -27.5t11 -27.5t27 -11.5zM915 1053q16 0 27 11.5t11 27.5t-11 27.5t-27 11.5t-27.5 -11.5t-11.5 -27.5t11.5 -27.5t27.5 -11.5zM103 869q42 0 72 -30t30 -72v-430q0 -43 -29.5 -73t-72.5 -30
t-73 30t-30 73v430q0 42 30 72t73 30zM1163 850v-666q0 -46 -32 -78t-77 -32h-75v-227q0 -43 -30 -73t-73 -30t-73 30t-30 73v227h-138v-227q0 -43 -30 -73t-73 -30q-42 0 -72 30t-30 73l-1 227h-74q-46 0 -78 32t-32 78v666h918zM931 1255q107 -55 171 -153.5t64 -215.5
h-925q0 117 64 215.5t172 153.5l-71 131q-7 13 5 20q13 6 20 -6l72 -132q95 42 201 42t201 -42l72 132q7 12 20 6q12 -7 5 -20zM1408 767v-430q0 -43 -30 -73t-73 -30q-42 0 -72 30t-30 73v430q0 43 30 72.5t72 29.5q43 0 73 -29.5t30 -72.5z" />
    <glyph glyph-name="linux" unicode="&#xf17c;" 
d="M663 1125q-11 -1 -15.5 -10.5t-8.5 -9.5q-5 -1 -5 5q0 12 19 15h10zM750 1111q-4 -1 -11.5 6.5t-17.5 4.5q24 11 32 -2q3 -6 -3 -9zM399 684q-4 1 -6 -3t-4.5 -12.5t-5.5 -13.5t-10 -13q-10 -11 -1 -12q4 -1 12.5 7t12.5 18q1 3 2 7t2 6t1.5 4.5t0.5 4v3t-1 2.5t-3 2z
M1254 325q0 18 -55 42q4 15 7.5 27.5t5 26t3 21.5t0.5 22.5t-1 19.5t-3.5 22t-4 20.5t-5 25t-5.5 26.5q-10 48 -47 103t-72 75q24 -20 57 -83q87 -162 54 -278q-11 -40 -50 -42q-31 -4 -38.5 18.5t-8 83.5t-11.5 107q-9 39 -19.5 69t-19.5 45.5t-15.5 24.5t-13 15t-7.5 7
q-14 62 -31 103t-29.5 56t-23.5 33t-15 40q-4 21 6 53.5t4.5 49.5t-44.5 25q-15 3 -44.5 18t-35.5 16q-8 1 -11 26t8 51t36 27q37 3 51 -30t4 -58q-11 -19 -2 -26.5t30 -0.5q13 4 13 36v37q-5 30 -13.5 50t-21 30.5t-23.5 15t-27 7.5q-107 -8 -89 -134q0 -15 -1 -15
q-9 9 -29.5 10.5t-33 -0.5t-15.5 5q1 57 -16 90t-45 34q-27 1 -41.5 -27.5t-16.5 -59.5q-1 -15 3.5 -37t13 -37.5t15.5 -13.5q10 3 16 14q4 9 -7 8q-7 0 -15.5 14.5t-9.5 33.5q-1 22 9 37t34 14q17 0 27 -21t9.5 -39t-1.5 -22q-22 -15 -31 -29q-8 -12 -27.5 -23.5
t-20.5 -12.5q-13 -14 -15.5 -27t7.5 -18q14 -8 25 -19.5t16 -19t18.5 -13t35.5 -6.5q47 -2 102 15q2 1 23 7t34.5 10.5t29.5 13t21 17.5q9 14 20 8q5 -3 6.5 -8.5t-3 -12t-16.5 -9.5q-20 -6 -56.5 -21.5t-45.5 -19.5q-44 -19 -70 -23q-25 -5 -79 2q-10 2 -9 -2t17 -19
q25 -23 67 -22q17 1 36 7t36 14t33.5 17.5t30 17t24.5 12t17.5 2.5t8.5 -11q0 -2 -1 -4.5t-4 -5t-6 -4.5t-8.5 -5t-9 -4.5t-10 -5t-9.5 -4.5q-28 -14 -67.5 -44t-66.5 -43t-49 -1q-21 11 -63 73q-22 31 -25 22q-1 -3 -1 -10q0 -25 -15 -56.5t-29.5 -55.5t-21 -58t11.5 -63
q-23 -6 -62.5 -90t-47.5 -141q-2 -18 -1.5 -69t-5.5 -59q-8 -24 -29 -3q-32 31 -36 94q-2 28 4 56q4 19 -1 18q-2 -1 -4 -5q-36 -65 10 -166q5 -12 25 -28t24 -20q20 -23 104 -90.5t93 -76.5q16 -15 17.5 -38t-14 -43t-45.5 -23q8 -15 29 -44.5t28 -54t7 -70.5q46 24 7 92
q-4 8 -10.5 16t-9.5 12t-2 6q3 5 13 9.5t20 -2.5q46 -52 166 -36q133 15 177 87q23 38 34 30q12 -6 10 -52q-1 -25 -23 -92q-9 -23 -6 -37.5t24 -15.5q3 19 14.5 77t13.5 90q2 21 -6.5 73.5t-7.5 97t23 70.5q15 18 51 18q1 37 34.5 53t72.5 10.5t60 -22.5zM626 1152
q3 17 -2.5 30t-11.5 15q-9 2 -9 -7q2 -5 5 -6q10 0 7 -15q-3 -20 8 -20q3 0 3 3zM1045 955q-2 8 -6.5 11.5t-13 5t-14.5 5.5q-5 3 -9.5 8t-7 8t-5.5 6.5t-4 4t-4 -1.5q-14 -16 7 -43.5t39 -31.5q9 -1 14.5 8t3.5 20zM867 1168q0 11 -5 19.5t-11 12.5t-9 3q-6 0 -8 -2t0 -4
t5 -3q14 -4 18 -31q0 -3 8 2q2 2 2 3zM921 1401q0 2 -2.5 5t-9 7t-9.5 6q-15 15 -24 15q-9 -1 -11.5 -7.5t-1 -13t-0.5 -12.5q-1 -4 -6 -10.5t-6 -9t3 -8.5q4 -3 8 0t11 9t15 9q1 1 9 1t15 2t9 7zM1486 60q20 -12 31 -24.5t12 -24t-2.5 -22.5t-15.5 -22t-23.5 -19.5
t-30 -18.5t-31.5 -16.5t-32 -15.5t-27 -13q-38 -19 -85.5 -56t-75.5 -64q-17 -16 -68 -19.5t-89 14.5q-18 9 -29.5 23.5t-16.5 25.5t-22 19.5t-47 9.5q-44 1 -130 1q-19 0 -57 -1.5t-58 -2.5q-44 -1 -79.5 -15t-53.5 -30t-43.5 -28.5t-53.5 -11.5q-29 1 -111 31t-146 43
q-19 4 -51 9.5t-50 9t-39.5 9.5t-33.5 14.5t-17 19.5q-10 23 7 66.5t18 54.5q1 16 -4 40t-10 42.5t-4.5 36.5t10.5 27q14 12 57 14t60 12q30 18 42 35t12 51q21 -73 -32 -106q-32 -20 -83 -15q-34 3 -43 -10q-13 -15 5 -57q2 -6 8 -18t8.5 -18t4.5 -17t1 -22q0 -15 -17 -49
t-14 -48q3 -17 37 -26q20 -6 84.5 -18.5t99.5 -20.5q24 -6 74 -22t82.5 -23t55.5 -4q43 6 64.5 28t23 48t-7.5 58.5t-19 52t-20 36.5q-121 190 -169 242q-68 74 -113 40q-11 -9 -15 15q-3 16 -2 38q1 29 10 52t24 47t22 42q8 21 26.5 72t29.5 78t30 61t39 54
q110 143 124 195q-12 112 -16 310q-2 90 24 151.5t106 104.5q39 21 104 21q53 1 106 -13.5t89 -41.5q57 -42 91.5 -121.5t29.5 -147.5q-5 -95 30 -214q34 -113 133 -218q55 -59 99.5 -163t59.5 -191q8 -49 5 -84.5t-12 -55.5t-20 -22q-10 -2 -23.5 -19t-27 -35.5
t-40.5 -33.5t-61 -14q-18 1 -31.5 5t-22.5 13.5t-13.5 15.5t-11.5 20.5t-9 19.5q-22 37 -41 30t-28 -49t7 -97q20 -70 1 -195q-10 -65 18 -100.5t73 -33t85 35.5q59 49 89.5 66.5t103.5 42.5q53 18 77 36.5t18.5 34.5t-25 28.5t-51.5 23.5q-33 11 -49.5 48t-15 72.5
t15.5 47.5q1 -31 8 -56.5t14.5 -40.5t20.5 -28.5t21 -19t21.5 -13t16.5 -9.5z" />
    <glyph glyph-name="dribble" unicode="&#xf17d;" 
d="M1024 36q-42 241 -140 498h-2l-2 -1q-16 -6 -43 -16.5t-101 -49t-137 -82t-131 -114.5t-103 -148l-15 11q184 -150 418 -150q132 0 256 52zM839 643q-21 49 -53 111q-311 -93 -673 -93q-1 -7 -1 -21q0 -124 44 -236.5t124 -201.5q50 89 123.5 166.5t142.5 124.5t130.5 81
t99.5 48l37 13q4 1 13 3.5t13 4.5zM732 855q-120 213 -244 378q-138 -65 -234 -186t-128 -272q302 0 606 80zM1416 536q-210 60 -409 29q87 -239 128 -469q111 75 185 189.5t96 250.5zM611 1277q-1 0 -2 -1q1 1 2 1zM1201 1132q-185 164 -433 164q-76 0 -155 -19
q131 -170 246 -382q69 26 130 60.5t96.5 61.5t65.5 57t37.5 40.5zM1424 647q-3 232 -149 410l-1 -1q-9 -12 -19 -24.5t-43.5 -44.5t-71 -60.5t-100 -65t-131.5 -64.5q25 -53 44 -95q2 -5 6.5 -17t7.5 -17q36 5 74.5 7t73.5 2t69 -1.5t64 -4t56.5 -5.5t48 -6.5t36.5 -6
t25 -4.5zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="skype" unicode="&#xf17e;" 
d="M1173 473q0 50 -19.5 91.5t-48.5 68.5t-73 49t-82.5 34t-87.5 23l-104 24q-30 7 -44 10.5t-35 11.5t-30 16t-16.5 21t-7.5 30q0 77 144 77q43 0 77 -12t54 -28.5t38 -33.5t40 -29t48 -12q47 0 75.5 32t28.5 77q0 55 -56 99.5t-142 67.5t-182 23q-68 0 -132 -15.5
t-119.5 -47t-89 -87t-33.5 -128.5q0 -61 19 -106.5t56 -75.5t80 -48.5t103 -32.5l146 -36q90 -22 112 -36q32 -20 32 -60q0 -39 -40 -64.5t-105 -25.5q-51 0 -91.5 16t-65 38.5t-45.5 45t-46 38.5t-54 16q-50 0 -75.5 -30t-25.5 -75q0 -92 122 -157.5t291 -65.5
q73 0 140 18.5t122.5 53.5t88.5 93.5t33 131.5zM1536 256q0 -159 -112.5 -271.5t-271.5 -112.5q-130 0 -234 80q-77 -16 -150 -16q-143 0 -273.5 55.5t-225 150t-150 225t-55.5 273.5q0 73 16 150q-80 104 -80 234q0 159 112.5 271.5t271.5 112.5q130 0 234 -80
q77 16 150 16q143 0 273.5 -55.5t225 -150t150 -225t55.5 -273.5q0 -73 -16 -150q80 -104 80 -234z" />
    <glyph glyph-name="foursquare" unicode="&#xf180;" horiz-adv-x="1280" 
d="M1000 1102l37 194q5 23 -9 40t-35 17h-712q-23 0 -38.5 -17t-15.5 -37v-1101q0 -7 6 -1l291 352q23 26 38 33.5t48 7.5h239q22 0 37 14.5t18 29.5q24 130 37 191q4 21 -11.5 40t-36.5 19h-294q-29 0 -48 19t-19 48v42q0 29 19 47.5t48 18.5h346q18 0 35 13.5t20 29.5z
M1227 1324q-15 -73 -53.5 -266.5t-69.5 -350t-35 -173.5q-6 -22 -9 -32.5t-14 -32.5t-24.5 -33t-38.5 -21t-58 -10h-271q-13 0 -22 -10q-8 -9 -426 -494q-22 -25 -58.5 -28.5t-48.5 5.5q-55 22 -55 98v1410q0 55 38 102.5t120 47.5h888q95 0 127 -53t10 -159zM1227 1324
l-158 -790q4 17 35 173.5t69.5 350t53.5 266.5z" />
    <glyph glyph-name="trello" unicode="&#xf181;" 
d="M704 192v1024q0 14 -9 23t-23 9h-480q-14 0 -23 -9t-9 -23v-1024q0 -14 9 -23t23 -9h480q14 0 23 9t9 23zM1376 576v640q0 14 -9 23t-23 9h-480q-14 0 -23 -9t-9 -23v-640q0 -14 9 -23t23 -9h480q14 0 23 9t9 23zM1536 1344v-1408q0 -26 -19 -45t-45 -19h-1408
q-26 0 -45 19t-19 45v1408q0 26 19 45t45 19h1408q26 0 45 -19t19 -45z" />
    <glyph glyph-name="female" unicode="&#xf182;" horiz-adv-x="1280" 
d="M1280 480q0 -40 -28 -68t-68 -28q-51 0 -80 43l-227 341h-45v-132l247 -411q9 -15 9 -33q0 -26 -19 -45t-45 -19h-192v-272q0 -46 -33 -79t-79 -33h-160q-46 0 -79 33t-33 79v272h-192q-26 0 -45 19t-19 45q0 18 9 33l247 411v132h-45l-227 -341q-29 -43 -80 -43
q-40 0 -68 28t-28 68q0 29 16 53l256 384q73 107 176 107h384q103 0 176 -107l256 -384q16 -24 16 -53zM864 1280q0 -93 -65.5 -158.5t-158.5 -65.5t-158.5 65.5t-65.5 158.5t65.5 158.5t158.5 65.5t158.5 -65.5t65.5 -158.5z" />
    <glyph glyph-name="male" unicode="&#xf183;" horiz-adv-x="1024" 
d="M1024 832v-416q0 -40 -28 -68t-68 -28t-68 28t-28 68v352h-64v-912q0 -46 -33 -79t-79 -33t-79 33t-33 79v464h-64v-464q0 -46 -33 -79t-79 -33t-79 33t-33 79v912h-64v-352q0 -40 -28 -68t-68 -28t-68 28t-28 68v416q0 80 56 136t136 56h640q80 0 136 -56t56 -136z
M736 1280q0 -93 -65.5 -158.5t-158.5 -65.5t-158.5 65.5t-65.5 158.5t65.5 158.5t158.5 65.5t158.5 -65.5t65.5 -158.5z" />
    <glyph glyph-name="gittip" unicode="&#xf184;" 
d="M773 234l350 473q16 22 24.5 59t-6 85t-61.5 79q-40 26 -83 25.5t-73.5 -17.5t-54.5 -45q-36 -40 -96 -40q-59 0 -95 40q-24 28 -54.5 45t-73.5 17.5t-84 -25.5q-46 -31 -60.5 -79t-6 -85t24.5 -59zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103
t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="sun" unicode="&#xf185;" horiz-adv-x="1792" 
d="M1472 640q0 117 -45.5 223.5t-123 184t-184 123t-223.5 45.5t-223.5 -45.5t-184 -123t-123 -184t-45.5 -223.5t45.5 -223.5t123 -184t184 -123t223.5 -45.5t223.5 45.5t184 123t123 184t45.5 223.5zM1748 363q-4 -15 -20 -20l-292 -96v-306q0 -16 -13 -26q-15 -10 -29 -4
l-292 94l-180 -248q-10 -13 -26 -13t-26 13l-180 248l-292 -94q-14 -6 -29 4q-13 10 -13 26v306l-292 96q-16 5 -20 20q-5 17 4 29l180 248l-180 248q-9 13 -4 29q4 15 20 20l292 96v306q0 16 13 26q15 10 29 4l292 -94l180 248q9 12 26 12t26 -12l180 -248l292 94
q14 6 29 -4q13 -10 13 -26v-306l292 -96q16 -5 20 -20q5 -16 -4 -29l-180 -248l180 -248q9 -12 4 -29z" />
    <glyph glyph-name="_366" unicode="&#xf186;" 
d="M1262 233q-54 -9 -110 -9q-182 0 -337 90t-245 245t-90 337q0 192 104 357q-201 -60 -328.5 -229t-127.5 -384q0 -130 51 -248.5t136.5 -204t204 -136.5t248.5 -51q144 0 273.5 61.5t220.5 171.5zM1465 318q-94 -203 -283.5 -324.5t-413.5 -121.5q-156 0 -298 61
t-245 164t-164 245t-61 298q0 153 57.5 292.5t156 241.5t235.5 164.5t290 68.5q44 2 61 -39q18 -41 -15 -72q-86 -78 -131.5 -181.5t-45.5 -218.5q0 -148 73 -273t198 -198t273 -73q118 0 228 51q41 18 72 -13q14 -14 17.5 -34t-4.5 -38z" />
    <glyph glyph-name="archive" unicode="&#xf187;" horiz-adv-x="1792" 
d="M1088 704q0 26 -19 45t-45 19h-256q-26 0 -45 -19t-19 -45t19 -45t45 -19h256q26 0 45 19t19 45zM1664 896v-960q0 -26 -19 -45t-45 -19h-1408q-26 0 -45 19t-19 45v960q0 26 19 45t45 19h1408q26 0 45 -19t19 -45zM1728 1344v-256q0 -26 -19 -45t-45 -19h-1536
q-26 0 -45 19t-19 45v256q0 26 19 45t45 19h1536q26 0 45 -19t19 -45z" />
    <glyph glyph-name="bug" unicode="&#xf188;" horiz-adv-x="1664" 
d="M1632 576q0 -26 -19 -45t-45 -19h-224q0 -171 -67 -290l208 -209q19 -19 19 -45t-19 -45q-18 -19 -45 -19t-45 19l-198 197q-5 -5 -15 -13t-42 -28.5t-65 -36.5t-82 -29t-97 -13v896h-128v-896q-51 0 -101.5 13.5t-87 33t-66 39t-43.5 32.5l-15 14l-183 -207
q-20 -21 -48 -21q-24 0 -43 16q-19 18 -20.5 44.5t15.5 46.5l202 227q-58 114 -58 274h-224q-26 0 -45 19t-19 45t19 45t45 19h224v294l-173 173q-19 19 -19 45t19 45t45 19t45 -19l173 -173h844l173 173q19 19 45 19t45 -19t19 -45t-19 -45l-173 -173v-294h224q26 0 45 -19
t19 -45zM1152 1152h-640q0 133 93.5 226.5t226.5 93.5t226.5 -93.5t93.5 -226.5z" />
    <glyph glyph-name="vk" unicode="&#xf189;" horiz-adv-x="1920" 
d="M1917 1016q23 -64 -150 -294q-24 -32 -65 -85q-40 -51 -55 -72t-30.5 -49.5t-12 -42t13 -34.5t32.5 -43t57 -53q4 -2 5 -4q141 -131 191 -221q3 -5 6.5 -12.5t7 -26.5t-0.5 -34t-25 -27.5t-59 -12.5l-256 -4q-24 -5 -56 5t-52 22l-20 12q-30 21 -70 64t-68.5 77.5t-61 58
t-56.5 15.5q-3 -1 -8 -3.5t-17 -14.5t-21.5 -29.5t-17 -52t-6.5 -77.5q0 -15 -3.5 -27.5t-7.5 -18.5l-4 -5q-18 -19 -53 -22h-115q-71 -4 -146 16.5t-131.5 53t-103 66t-70.5 57.5l-25 24q-10 10 -27.5 30t-71.5 91t-106 151t-122.5 211t-130.5 272q-6 16 -6 27t3 16l4 6
q15 19 57 19l274 2q12 -2 23 -6.5t16 -8.5l5 -3q16 -11 24 -32q20 -50 46 -103.5t41 -81.5l16 -29q29 -60 56 -104t48.5 -68.5t41.5 -38.5t34 -14t27 5q2 1 5 5t12 22t13.5 47t9.5 81t0 125q-2 40 -9 73t-14 46l-6 12q-25 34 -85 43q-13 2 5 24q16 19 38 30q53 26 239 24
q82 -1 135 -13q20 -5 33.5 -13.5t20.5 -24t10.5 -32t3.5 -45.5t-1 -55t-2.5 -70.5t-1.5 -82.5q0 -11 -1 -42t-0.5 -48t3.5 -40.5t11.5 -39t22.5 -24.5q8 -2 17 -4t26 11t38 34.5t52 67t68 107.5q60 104 107 225q4 10 10 17.5t11 10.5l4 3l5 2.5t13 3t20 0.5l288 2
q39 5 64 -2.5t31 -16.5z" />
    <glyph glyph-name="weibo" unicode="&#xf18a;" horiz-adv-x="1792" 
d="M675 252q21 34 11 69t-45 50q-34 14 -73 1t-60 -46q-22 -34 -13 -68.5t43 -50.5t74.5 -2.5t62.5 47.5zM769 373q8 13 3.5 26.5t-17.5 18.5q-14 5 -28.5 -0.5t-21.5 -18.5q-17 -31 13 -45q14 -5 29 0.5t22 18.5zM943 266q-45 -102 -158 -150t-224 -12
q-107 34 -147.5 126.5t6.5 187.5q47 93 151.5 139t210.5 19q111 -29 158.5 -119.5t2.5 -190.5zM1255 426q-9 96 -89 170t-208.5 109t-274.5 21q-223 -23 -369.5 -141.5t-132.5 -264.5q9 -96 89 -170t208.5 -109t274.5 -21q223 23 369.5 141.5t132.5 264.5zM1563 422
q0 -68 -37 -139.5t-109 -137t-168.5 -117.5t-226 -83t-270.5 -31t-275 33.5t-240.5 93t-171.5 151t-65 199.5q0 115 69.5 245t197.5 258q169 169 341.5 236t246.5 -7q65 -64 20 -209q-4 -14 -1 -20t10 -7t14.5 0.5t13.5 3.5l6 2q139 59 246 59t153 -61q45 -63 0 -178
q-2 -13 -4.5 -20t4.5 -12.5t12 -7.5t17 -6q57 -18 103 -47t80 -81.5t34 -116.5zM1489 1046q42 -47 54.5 -108.5t-6.5 -117.5q-8 -23 -29.5 -34t-44.5 -4q-23 8 -34 29.5t-4 44.5q20 63 -24 111t-107 35q-24 -5 -45 8t-25 37q-5 24 8 44.5t37 25.5q60 13 119 -5.5t101 -65.5z
M1670 1209q87 -96 112.5 -222.5t-13.5 -241.5q-9 -27 -34 -40t-52 -4t-40 34t-5 52q28 82 10 172t-80 158q-62 69 -148 95.5t-173 8.5q-28 -6 -52 9.5t-30 43.5t9.5 51.5t43.5 29.5q123 26 244 -11.5t208 -134.5z" />
    <glyph glyph-name="renren" unicode="&#xf18b;" 
d="M1133 -34q-171 -94 -368 -94q-196 0 -367 94q138 87 235.5 211t131.5 268q35 -144 132.5 -268t235.5 -211zM638 1394v-485q0 -252 -126.5 -459.5t-330.5 -306.5q-181 215 -181 495q0 187 83.5 349.5t229.5 269.5t325 137zM1536 638q0 -280 -181 -495
q-204 99 -330.5 306.5t-126.5 459.5v485q179 -30 325 -137t229.5 -269.5t83.5 -349.5z" />
    <glyph glyph-name="_372" unicode="&#xf18c;" horiz-adv-x="1408" 
d="M1402 433q-32 -80 -76 -138t-91 -88.5t-99 -46.5t-101.5 -14.5t-96.5 8.5t-86.5 22t-69.5 27.5t-46 22.5l-17 10q-113 -228 -289.5 -359.5t-384.5 -132.5q-19 0 -32 13t-13 32t13 31.5t32 12.5q173 1 322.5 107.5t251.5 294.5q-36 -14 -72 -23t-83 -13t-91 2.5t-93 28.5
t-92 59t-84.5 100t-74.5 146q114 47 214 57t167.5 -7.5t124.5 -56.5t88.5 -77t56.5 -82q53 131 79 291q-7 -1 -18 -2.5t-46.5 -2.5t-69.5 0.5t-81.5 10t-88.5 23t-84 42.5t-75 65t-54.5 94.5t-28.5 127.5q70 28 133.5 36.5t112.5 -1t92 -30t73.5 -50t56 -61t42 -63t27.5 -56
t16 -39.5l4 -16q12 122 12 195q-8 6 -21.5 16t-49 44.5t-63.5 71.5t-54 93t-33 112.5t12 127t70 138.5q73 -25 127.5 -61.5t84.5 -76.5t48 -85t20.5 -89t-0.5 -85.5t-13 -76.5t-19 -62t-17 -42l-7 -15q1 -4 1 -50t-1 -72q3 7 10 18.5t30.5 43t50.5 58t71 55.5t91.5 44.5
t112 14.5t132.5 -24q-2 -78 -21.5 -141.5t-50 -104.5t-69.5 -71.5t-81.5 -45.5t-84.5 -24t-80 -9.5t-67.5 1t-46.5 4.5l-17 3q-23 -147 -73 -283q6 7 18 18.5t49.5 41t77.5 52.5t99.5 42t117.5 20t129 -23.5t137 -77.5z" />
    <glyph glyph-name="stack_exchange" unicode="&#xf18d;" horiz-adv-x="1280" 
d="M1259 283v-66q0 -85 -57.5 -144.5t-138.5 -59.5h-57l-260 -269v269h-529q-81 0 -138.5 59.5t-57.5 144.5v66h1238zM1259 609v-255h-1238v255h1238zM1259 937v-255h-1238v255h1238zM1259 1077v-67h-1238v67q0 84 57.5 143.5t138.5 59.5h846q81 0 138.5 -59.5t57.5 -143.5z
" />
    <glyph glyph-name="_374" unicode="&#xf18e;" 
d="M1152 640q0 -14 -9 -23l-320 -320q-9 -9 -23 -9q-13 0 -22.5 9.5t-9.5 22.5v192h-352q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h352v192q0 14 9 23t23 9q12 0 24 -10l319 -319q9 -9 9 -23zM1312 640q0 148 -73 273t-198 198t-273 73t-273 -73t-198 -198
t-73 -273t73 -273t198 -198t273 -73t273 73t198 198t73 273zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="arrow_circle_alt_left" unicode="&#xf190;" 
d="M1152 736v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-352v-192q0 -14 -9 -23t-23 -9q-12 0 -24 10l-319 319q-9 9 -9 23t9 23l320 320q9 9 23 9q13 0 22.5 -9.5t9.5 -22.5v-192h352q13 0 22.5 -9.5t9.5 -22.5zM1312 640q0 148 -73 273t-198 198t-273 73t-273 -73t-198 -198
t-73 -273t73 -273t198 -198t273 -73t273 73t198 198t73 273zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="_376" unicode="&#xf191;" 
d="M1024 960v-640q0 -26 -19 -45t-45 -19q-20 0 -37 12l-448 320q-27 19 -27 52t27 52l448 320q17 12 37 12q26 0 45 -19t19 -45zM1280 160v960q0 13 -9.5 22.5t-22.5 9.5h-960q-13 0 -22.5 -9.5t-9.5 -22.5v-960q0 -13 9.5 -22.5t22.5 -9.5h960q13 0 22.5 9.5t9.5 22.5z
M1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" />
    <glyph glyph-name="dot_circle_alt" unicode="&#xf192;" 
d="M1024 640q0 -106 -75 -181t-181 -75t-181 75t-75 181t75 181t181 75t181 -75t75 -181zM768 1184q-148 0 -273 -73t-198 -198t-73 -273t73 -273t198 -198t273 -73t273 73t198 198t73 273t-73 273t-198 198t-273 73zM1536 640q0 -209 -103 -385.5t-279.5 -279.5
t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="_378" unicode="&#xf193;" horiz-adv-x="1664" 
d="M1023 349l102 -204q-58 -179 -210 -290t-339 -111q-156 0 -288.5 77.5t-210 210t-77.5 288.5q0 181 104.5 330t274.5 211l17 -131q-122 -54 -195 -165.5t-73 -244.5q0 -185 131.5 -316.5t316.5 -131.5q126 0 232.5 65t165 175.5t49.5 236.5zM1571 249l58 -114l-256 -128
q-13 -7 -29 -7q-40 0 -57 35l-239 477h-472q-24 0 -42.5 16.5t-21.5 40.5l-96 779q-2 17 6 42q14 51 57 82.5t97 31.5q66 0 113 -47t47 -113q0 -69 -52 -117.5t-120 -41.5l37 -289h423v-128h-407l16 -128h455q40 0 57 -35l228 -455z" />
    <glyph glyph-name="vimeo_square" unicode="&#xf194;" 
d="M1292 898q10 216 -161 222q-231 8 -312 -261q44 19 82 19q85 0 74 -96q-4 -57 -74 -167t-105 -110q-43 0 -82 169q-13 54 -45 255q-30 189 -160 177q-59 -7 -164 -100l-81 -72l-81 -72l52 -67q76 52 87 52q57 0 107 -179q15 -55 45 -164.5t45 -164.5q68 -179 164 -179
q157 0 383 294q220 283 226 444zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" />
    <glyph glyph-name="_380" unicode="&#xf195;" horiz-adv-x="1152" 
d="M1152 704q0 -191 -94.5 -353t-256.5 -256.5t-353 -94.5h-160q-14 0 -23 9t-9 23v611l-215 -66q-3 -1 -9 -1q-10 0 -19 6q-13 10 -13 26v128q0 23 23 31l233 71v93l-215 -66q-3 -1 -9 -1q-10 0 -19 6q-13 10 -13 26v128q0 23 23 31l233 71v250q0 14 9 23t23 9h160
q14 0 23 -9t9 -23v-181l375 116q15 5 28 -5t13 -26v-128q0 -23 -23 -31l-393 -121v-93l375 116q15 5 28 -5t13 -26v-128q0 -23 -23 -31l-393 -121v-487q188 13 318 151t130 328q0 14 9 23t23 9h160q14 0 23 -9t9 -23z" />
    <glyph glyph-name="plus_square_o" unicode="&#xf196;" horiz-adv-x="1408" 
d="M1152 736v-64q0 -14 -9 -23t-23 -9h-352v-352q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v352h-352q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h352v352q0 14 9 23t23 9h64q14 0 23 -9t9 -23v-352h352q14 0 23 -9t9 -23zM1280 288v832q0 66 -47 113t-113 47h-832
q-66 0 -113 -47t-47 -113v-832q0 -66 47 -113t113 -47h832q66 0 113 47t47 113zM1408 1120v-832q0 -119 -84.5 -203.5t-203.5 -84.5h-832q-119 0 -203.5 84.5t-84.5 203.5v832q0 119 84.5 203.5t203.5 84.5h832q119 0 203.5 -84.5t84.5 -203.5z" />
    <glyph glyph-name="_382" unicode="&#xf197;" horiz-adv-x="2176" 
d="M620 416q-110 -64 -268 -64h-128v64h-64q-13 0 -22.5 23.5t-9.5 56.5q0 24 7 49q-58 2 -96.5 10.5t-38.5 20.5t38.5 20.5t96.5 10.5q-7 25 -7 49q0 33 9.5 56.5t22.5 23.5h64v64h128q158 0 268 -64h1113q42 -7 106.5 -18t80.5 -14q89 -15 150 -40.5t83.5 -47.5t22.5 -40
t-22.5 -40t-83.5 -47.5t-150 -40.5q-16 -3 -80.5 -14t-106.5 -18h-1113zM1739 668q53 -36 53 -92t-53 -92l81 -30q68 48 68 122t-68 122zM625 400h1015q-217 -38 -456 -80q-57 0 -113 -24t-83 -48l-28 -24l-288 -288q-26 -26 -70.5 -45t-89.5 -19h-96l-93 464h29
q157 0 273 64zM352 816h-29l93 464h96q46 0 90 -19t70 -45l288 -288q4 -4 11 -10.5t30.5 -23t48.5 -29t61.5 -23t72.5 -10.5l456 -80h-1015q-116 64 -273 64z" />
    <glyph glyph-name="_383" unicode="&#xf198;" horiz-adv-x="1664" 
d="M1519 760q62 0 103.5 -40.5t41.5 -101.5q0 -97 -93 -130l-172 -59l56 -167q7 -21 7 -47q0 -59 -42 -102t-101 -43q-47 0 -85.5 27t-53.5 72l-55 165l-310 -106l55 -164q8 -24 8 -47q0 -59 -42 -102t-102 -43q-47 0 -85 27t-53 72l-55 163l-153 -53q-29 -9 -50 -9
q-61 0 -101.5 40t-40.5 101q0 47 27.5 85t71.5 53l156 53l-105 313l-156 -54q-26 -8 -48 -8q-60 0 -101 40.5t-41 100.5q0 47 27.5 85t71.5 53l157 53l-53 159q-8 24 -8 47q0 60 42 102.5t102 42.5q47 0 85 -27t53 -72l54 -160l310 105l-54 160q-8 24 -8 47q0 59 42.5 102
t101.5 43q47 0 85.5 -27.5t53.5 -71.5l53 -161l162 55q21 6 43 6q60 0 102.5 -39.5t42.5 -98.5q0 -45 -30 -81.5t-74 -51.5l-157 -54l105 -316l164 56q24 8 46 8zM725 498l310 105l-105 315l-310 -107z" />
    <glyph glyph-name="_384" unicode="&#xf199;" 
d="M1248 1408q119 0 203.5 -84.5t84.5 -203.5v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960zM1280 352v436q-31 -35 -64 -55q-34 -22 -132.5 -85t-151.5 -99q-98 -69 -164 -69v0v0q-66 0 -164 69
q-47 32 -142 92.5t-142 92.5q-12 8 -33 27t-31 27v-436q0 -40 28 -68t68 -28h832q40 0 68 28t28 68zM1280 925q0 41 -27.5 70t-68.5 29h-832q-40 0 -68 -28t-28 -68q0 -37 30.5 -76.5t67.5 -64.5q47 -32 137.5 -89t129.5 -83q3 -2 17 -11.5t21 -14t21 -13t23.5 -13
t21.5 -9.5t22.5 -7.5t20.5 -2.5t20.5 2.5t22.5 7.5t21.5 9.5t23.5 13t21 13t21 14t17 11.5l267 174q35 23 66.5 62.5t31.5 73.5z" />
    <glyph glyph-name="_385" unicode="&#xf19a;" horiz-adv-x="1792" 
d="M127 640q0 163 67 313l367 -1005q-196 95 -315 281t-119 411zM1415 679q0 -19 -2.5 -38.5t-10 -49.5t-11.5 -44t-17.5 -59t-17.5 -58l-76 -256l-278 826q46 3 88 8q19 2 26 18.5t-2.5 31t-28.5 13.5l-205 -10q-75 1 -202 10q-12 1 -20.5 -5t-11.5 -15t-1.5 -18.5t9 -16.5
t19.5 -8l80 -8l120 -328l-168 -504l-280 832q46 3 88 8q19 2 26 18.5t-2.5 31t-28.5 13.5l-205 -10q-7 0 -23 0.5t-26 0.5q105 160 274.5 253.5t367.5 93.5q147 0 280.5 -53t238.5 -149h-10q-55 0 -92 -40.5t-37 -95.5q0 -12 2 -24t4 -21.5t8 -23t9 -21t12 -22.5t12.5 -21
t14.5 -24t14 -23q63 -107 63 -212zM909 573l237 -647q1 -6 5 -11q-126 -44 -255 -44q-112 0 -217 32zM1570 1009q95 -174 95 -369q0 -209 -104 -385.5t-279 -278.5l235 678q59 169 59 276q0 42 -6 79zM896 1536q182 0 348 -71t286 -191t191 -286t71 -348t-71 -348t-191 -286
t-286 -191t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71zM896 -215q173 0 331.5 68t273 182.5t182.5 273t68 331.5t-68 331.5t-182.5 273t-273 182.5t-331.5 68t-331.5 -68t-273 -182.5t-182.5 -273t-68 -331.5t68 -331.5t182.5 -273
t273 -182.5t331.5 -68z" />
    <glyph glyph-name="_386" unicode="&#xf19b;" horiz-adv-x="1792" 
d="M1086 1536v-1536l-272 -128q-228 20 -414 102t-293 208.5t-107 272.5q0 140 100.5 263.5t275 205.5t391.5 108v-172q-217 -38 -356.5 -150t-139.5 -255q0 -152 154.5 -267t388.5 -145v1360zM1755 954l37 -390l-525 114l147 83q-119 70 -280 99v172q277 -33 481 -157z" />
    <glyph glyph-name="_387" unicode="&#xf19c;" horiz-adv-x="2048" 
d="M960 1536l960 -384v-128h-128q0 -26 -20.5 -45t-48.5 -19h-1526q-28 0 -48.5 19t-20.5 45h-128v128zM256 896h256v-768h128v768h256v-768h128v768h256v-768h128v768h256v-768h59q28 0 48.5 -19t20.5 -45v-64h-1664v64q0 26 20.5 45t48.5 19h59v768zM1851 -64
q28 0 48.5 -19t20.5 -45v-128h-1920v128q0 26 20.5 45t48.5 19h1782z" />
    <glyph glyph-name="_388" unicode="&#xf19d;" horiz-adv-x="2304" 
d="M1774 700l18 -316q4 -69 -82 -128t-235 -93.5t-323 -34.5t-323 34.5t-235 93.5t-82 128l18 316l574 -181q22 -7 48 -7t48 7zM2304 1024q0 -23 -22 -31l-1120 -352q-4 -1 -10 -1t-10 1l-652 206q-43 -34 -71 -111.5t-34 -178.5q63 -36 63 -109q0 -69 -58 -107l58 -433
q2 -14 -8 -25q-9 -11 -24 -11h-192q-15 0 -24 11q-10 11 -8 25l58 433q-58 38 -58 107q0 73 65 111q11 207 98 330l-333 104q-22 8 -22 31t22 31l1120 352q4 1 10 1t10 -1l1120 -352q22 -8 22 -31z" />
    <glyph glyph-name="_389" unicode="&#xf19e;" 
d="M859 579l13 -707q-62 11 -105 11q-41 0 -105 -11l13 707q-40 69 -168.5 295.5t-216.5 374.5t-181 287q58 -15 108 -15q44 0 111 15q63 -111 133.5 -229.5t167 -276.5t138.5 -227q37 61 109.5 177.5t117.5 190t105 176t107 189.5q54 -14 107 -14q56 0 114 14v0
q-28 -39 -60 -88.5t-49.5 -78.5t-56.5 -96t-49 -84q-146 -248 -353 -610z" />
    <glyph glyph-name="uniF1A0" unicode="&#xf1a0;" 
d="M768 750h725q12 -67 12 -128q0 -217 -91 -387.5t-259.5 -266.5t-386.5 -96q-157 0 -299 60.5t-245 163.5t-163.5 245t-60.5 299t60.5 299t163.5 245t245 163.5t299 60.5q300 0 515 -201l-209 -201q-123 119 -306 119q-129 0 -238.5 -65t-173.5 -176.5t-64 -243.5
t64 -243.5t173.5 -176.5t238.5 -65q87 0 160 24t120 60t82 82t51.5 87t22.5 78h-436v264z" />
    <glyph glyph-name="f1a1" unicode="&#xf1a1;" horiz-adv-x="1792" 
d="M1095 369q16 -16 0 -31q-62 -62 -199 -62t-199 62q-16 15 0 31q6 6 15 6t15 -6q48 -49 169 -49q120 0 169 49q6 6 15 6t15 -6zM788 550q0 -37 -26 -63t-63 -26t-63.5 26t-26.5 63q0 38 26.5 64t63.5 26t63 -26.5t26 -63.5zM1183 550q0 -37 -26.5 -63t-63.5 -26t-63 26
t-26 63t26 63.5t63 26.5t63.5 -26t26.5 -64zM1434 670q0 49 -35 84t-85 35t-86 -36q-130 90 -311 96l63 283l200 -45q0 -37 26 -63t63 -26t63.5 26.5t26.5 63.5t-26.5 63.5t-63.5 26.5q-54 0 -80 -50l-221 49q-19 5 -25 -16l-69 -312q-180 -7 -309 -97q-35 37 -87 37
q-50 0 -85 -35t-35 -84q0 -35 18.5 -64t49.5 -44q-6 -27 -6 -56q0 -142 140 -243t337 -101q198 0 338 101t140 243q0 32 -7 57q30 15 48 43.5t18 63.5zM1792 640q0 -182 -71 -348t-191 -286t-286 -191t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191
t348 71t348 -71t286 -191t191 -286t71 -348z" />
    <glyph glyph-name="_392" unicode="&#xf1a2;" 
d="M939 407q13 -13 0 -26q-53 -53 -171 -53t-171 53q-13 13 0 26q5 6 13 6t13 -6q42 -42 145 -42t145 42q5 6 13 6t13 -6zM676 563q0 -31 -23 -54t-54 -23t-54 23t-23 54q0 32 22.5 54.5t54.5 22.5t54.5 -22.5t22.5 -54.5zM1014 563q0 -31 -23 -54t-54 -23t-54 23t-23 54
q0 32 22.5 54.5t54.5 22.5t54.5 -22.5t22.5 -54.5zM1229 666q0 42 -30 72t-73 30q-42 0 -73 -31q-113 78 -267 82l54 243l171 -39q1 -32 23.5 -54t53.5 -22q32 0 54.5 22.5t22.5 54.5t-22.5 54.5t-54.5 22.5q-48 0 -69 -43l-189 42q-17 5 -21 -13l-60 -268q-154 -6 -265 -83
q-30 32 -74 32q-43 0 -73 -30t-30 -72q0 -30 16 -55t42 -38q-5 -25 -5 -48q0 -122 120 -208.5t289 -86.5q170 0 290 86.5t120 208.5q0 25 -6 49q25 13 40.5 37.5t15.5 54.5zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960
q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" />
    <glyph glyph-name="_393" unicode="&#xf1a3;" 
d="M866 697l90 27v62q0 79 -58 135t-138 56t-138 -55.5t-58 -134.5v-283q0 -20 -14 -33.5t-33 -13.5t-32.5 13.5t-13.5 33.5v120h-151v-122q0 -82 57.5 -139t139.5 -57q81 0 138.5 56.5t57.5 136.5v280q0 19 13.5 33t33.5 14q19 0 32.5 -14t13.5 -33v-54zM1199 502v122h-150
v-126q0 -20 -13.5 -33.5t-33.5 -13.5q-19 0 -32.5 14t-13.5 33v123l-90 -26l-60 28v-123q0 -80 58 -137t139 -57t138.5 57t57.5 139zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103
t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="f1a4" unicode="&#xf1a4;" horiz-adv-x="1920" 
d="M1062 824v118q0 42 -30 72t-72 30t-72 -30t-30 -72v-612q0 -175 -126 -299t-303 -124q-178 0 -303.5 125.5t-125.5 303.5v266h328v-262q0 -43 30 -72.5t72 -29.5t72 29.5t30 72.5v620q0 171 126.5 292t301.5 121q176 0 302 -122t126 -294v-136l-195 -58zM1592 602h328
v-266q0 -178 -125.5 -303.5t-303.5 -125.5q-177 0 -303 124.5t-126 300.5v268l131 -61l195 58v-270q0 -42 30 -71.5t72 -29.5t72 29.5t30 71.5v275z" />
    <glyph glyph-name="_395" unicode="&#xf1a5;" 
d="M1472 160v480h-704v704h-480q-93 0 -158.5 -65.5t-65.5 -158.5v-480h704v-704h480q93 0 158.5 65.5t65.5 158.5zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5
t84.5 -203.5z" />
    <glyph glyph-name="_396" unicode="&#xf1a6;" horiz-adv-x="2048" 
d="M328 1254h204v-983h-532v697h328v286zM328 435v369h-123v-369h123zM614 968v-697h205v697h-205zM614 1254v-204h205v204h-205zM901 968h533v-942h-533v163h328v82h-328v697zM1229 435v369h-123v-369h123zM1516 968h532v-942h-532v163h327v82h-327v697zM1843 435v369h-123
v-369h123z" />
    <glyph glyph-name="_397" unicode="&#xf1a7;" 
d="M1046 516q0 -64 -38 -109t-91 -45q-43 0 -70 15v277q28 17 70 17q53 0 91 -45.5t38 -109.5zM703 944q0 -64 -38 -109.5t-91 -45.5q-43 0 -70 15v277q28 17 70 17q53 0 91 -45t38 -109zM1265 513q0 134 -88 229t-213 95q-20 0 -39 -3q-23 -78 -78 -136q-87 -95 -211 -101
v-636l211 41v206q51 -19 117 -19q125 0 213 95t88 229zM922 940q0 134 -88.5 229t-213.5 95q-74 0 -141 -36h-186v-840l211 41v206q55 -19 116 -19q125 0 213.5 95t88.5 229zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960
q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" />
    <glyph glyph-name="_398" unicode="&#xf1a8;" horiz-adv-x="2038" 
d="M1222 607q75 3 143.5 -20.5t118 -58.5t101 -94.5t84 -108t75.5 -120.5q33 -56 78.5 -109t75.5 -80.5t99 -88.5q-48 -30 -108.5 -57.5t-138.5 -59t-114 -47.5q-44 37 -74 115t-43.5 164.5t-33 180.5t-42.5 168.5t-72.5 123t-122.5 48.5l-10 -2l-6 -4q4 -5 13 -14
q6 -5 28 -23.5t25.5 -22t19 -18t18 -20.5t11.5 -21t10.5 -27.5t4.5 -31t4 -40.5l1 -33q1 -26 -2.5 -57.5t-7.5 -52t-12.5 -58.5t-11.5 -53q-35 1 -101 -9.5t-98 -10.5q-39 0 -72 10q-2 16 -2 47q0 74 3 96q2 13 31.5 41.5t57 59t26.5 51.5q-24 2 -43 -24
q-36 -53 -111.5 -99.5t-136.5 -46.5q-25 0 -75.5 63t-106.5 139.5t-84 96.5q-6 4 -27 30q-482 -112 -513 -112q-16 0 -28 11t-12 27q0 15 8.5 26.5t22.5 14.5l486 106q-8 14 -8 25t5.5 17.5t16 11.5t20 7t23 4.5t18.5 4.5q4 1 15.5 7.5t17.5 6.5q15 0 28 -16t20 -33
q163 37 172 37q17 0 29.5 -11t12.5 -28q0 -15 -8.5 -26t-23.5 -14l-182 -40l-1 -16q-1 -26 81.5 -117.5t104.5 -91.5q47 0 119 80t72 129q0 36 -23.5 53t-51 18.5t-51 11.5t-23.5 34q0 16 10 34l-68 19q43 44 43 117q0 26 -5 58q82 16 144 16q44 0 71.5 -1.5t48.5 -8.5
t31 -13.5t20.5 -24.5t15.5 -33.5t17 -47.5t24 -60l50 25q-3 -40 -23 -60t-42.5 -21t-40 -6.5t-16.5 -20.5zM1282 842q-5 5 -13.5 15.5t-12 14.5t-10.5 11.5t-10 10.5l-8 8t-8.5 7.5t-8 5t-8.5 4.5q-7 3 -14.5 5t-20.5 2.5t-22 0.5h-32.5h-37.5q-126 0 -217 -43
q16 30 36 46.5t54 29.5t65.5 36t46 36.5t50 55t43.5 50.5q12 -9 28 -31.5t32 -36.5t38 -13l12 1v-76l22 -1q247 95 371 190q28 21 50 39t42.5 37.5t33 31t29.5 34t24 31t24.5 37t23 38t27 47.5t29.5 53l7 9q-2 -53 -43 -139q-79 -165 -205 -264t-306 -142q-14 -3 -42 -7.5
t-50 -9.5t-39 -14q3 -19 24.5 -46t21.5 -34q0 -11 -26 -30zM1061 -79q39 26 131.5 47.5t146.5 21.5q9 0 22.5 -15.5t28 -42.5t26 -50t24 -51t14.5 -33q-121 -45 -244 -45q-61 0 -125 11zM822 568l48 12l109 -177l-73 -48zM1323 51q3 -15 3 -16q0 -7 -17.5 -14.5t-46 -13
t-54 -9.5t-53.5 -7.5t-32 -4.5l-7 43q21 2 60.5 8.5t72 10t60.5 3.5h14zM866 679l-96 -20l-6 17q10 1 32.5 7t34.5 6q19 0 35 -10zM1061 45h31l10 -83l-41 -12v95zM1950 1535v1v-1zM1950 1535l-1 -5l-2 -2l1 3zM1950 1535l1 1z" />
    <glyph glyph-name="_399" unicode="&#xf1a9;" 
d="M1167 -50q-5 19 -24 5q-30 -22 -87 -39t-131 -17q-129 0 -193 49q-5 4 -13 4q-11 0 -26 -12q-7 -6 -7.5 -16t7.5 -20q34 -32 87.5 -46t102.5 -12.5t99 4.5q41 4 84.5 20.5t65 30t28.5 20.5q12 12 7 29zM1128 65q-19 47 -39 61q-23 15 -76 15q-47 0 -71 -10
q-29 -12 -78 -56q-26 -24 -12 -44q9 -8 17.5 -4.5t31.5 23.5q3 2 10.5 8.5t10.5 8.5t10 7t11.5 7t12.5 5t15 4.5t16.5 2.5t20.5 1q27 0 44.5 -7.5t23 -14.5t13.5 -22q10 -17 12.5 -20t12.5 1q23 12 14 34zM1483 346q0 22 -5 44.5t-16.5 45t-34 36.5t-52.5 14
q-33 0 -97 -41.5t-129 -83.5t-101 -42q-27 -1 -63.5 19t-76 49t-83.5 58t-100 49t-111 19q-115 -1 -197 -78.5t-84 -178.5q-2 -112 74 -164q29 -20 62.5 -28.5t103.5 -8.5q57 0 132 32.5t134 71t120 70.5t93 31q26 -1 65 -31.5t71.5 -67t68 -67.5t55.5 -32q35 -3 58.5 14
t55.5 63q28 41 42.5 101t14.5 106zM1536 506q0 -164 -62 -304.5t-166 -236t-242.5 -149.5t-290.5 -54t-293 57.5t-247.5 157t-170.5 241.5t-64 302q0 89 19.5 172.5t49 145.5t70.5 118.5t78.5 94t78.5 69.5t64.5 46.5t42.5 24.5q14 8 51 26.5t54.5 28.5t48 30t60.5 44
q36 28 58 72.5t30 125.5q129 -155 186 -193q44 -29 130 -68t129 -66q21 -13 39 -25t60.5 -46.5t76 -70.5t75 -95t69 -122t47 -148.5t19.5 -177.5z" />
    <glyph glyph-name="_400" unicode="&#xf1aa;" 
d="M1070 463l-160 -160l-151 -152l-30 -30q-65 -64 -151.5 -87t-171.5 -2q-16 -70 -72 -115t-129 -45q-85 0 -145 60.5t-60 145.5q0 72 44.5 128t113.5 72q-22 86 1 173t88 152l12 12l151 -152l-11 -11q-37 -37 -37 -89t37 -90q37 -37 89 -37t89 37l30 30l151 152l161 160z
M729 1145l12 -12l-152 -152l-12 12q-37 37 -89 37t-89 -37t-37 -89.5t37 -89.5l29 -29l152 -152l160 -160l-151 -152l-161 160l-151 152l-30 30q-68 67 -90 159.5t5 179.5q-70 15 -115 71t-45 129q0 85 60 145.5t145 60.5q76 0 133.5 -49t69.5 -123q84 20 169.5 -3.5
t149.5 -87.5zM1536 78q0 -85 -60 -145.5t-145 -60.5q-74 0 -131 47t-71 118q-86 -28 -179.5 -6t-161.5 90l-11 12l151 152l12 -12q37 -37 89 -37t89 37t37 89t-37 89l-30 30l-152 152l-160 160l152 152l160 -160l152 -152l29 -30q64 -64 87.5 -150.5t2.5 -171.5
q76 -11 126.5 -68.5t50.5 -134.5zM1534 1202q0 -77 -51 -135t-127 -69q26 -85 3 -176.5t-90 -158.5l-12 -12l-151 152l12 12q37 37 37 89t-37 89t-89 37t-89 -37l-30 -30l-152 -152l-160 -160l-152 152l161 160l152 152l29 30q67 67 159 89.5t178 -3.5q11 75 68.5 126
t135.5 51q85 0 145 -60.5t60 -145.5z" />
    <glyph glyph-name="f1ab" unicode="&#xf1ab;" 
d="M654 458q-1 -3 -12.5 0.5t-31.5 11.5l-20 9q-44 20 -87 49q-7 5 -41 31.5t-38 28.5q-67 -103 -134 -181q-81 -95 -105 -110q-4 -2 -19.5 -4t-18.5 0q6 4 82 92q21 24 85.5 115t78.5 118q17 30 51 98.5t36 77.5q-8 1 -110 -33q-8 -2 -27.5 -7.5t-34.5 -9.5t-17 -5
q-2 -2 -2 -10.5t-1 -9.5q-5 -10 -31 -15q-23 -7 -47 0q-18 4 -28 21q-4 6 -5 23q6 2 24.5 5t29.5 6q58 16 105 32q100 35 102 35q10 2 43 19.5t44 21.5q9 3 21.5 8t14.5 5.5t6 -0.5q2 -12 -1 -33q0 -2 -12.5 -27t-26.5 -53.5t-17 -33.5q-25 -50 -77 -131l64 -28
q12 -6 74.5 -32t67.5 -28q4 -1 10.5 -25.5t4.5 -30.5zM449 944q3 -15 -4 -28q-12 -23 -50 -38q-30 -12 -60 -12q-26 3 -49 26q-14 15 -18 41l1 3q3 -3 19.5 -5t26.5 0t58 16q36 12 55 14q17 0 21 -17zM1147 815l63 -227l-139 42zM39 15l694 232v1032l-694 -233v-1031z
M1280 332l102 -31l-181 657l-100 31l-216 -536l102 -31l45 110l211 -65zM777 1294l573 -184v380zM1088 -29l158 -13l-54 -160l-40 66q-130 -83 -276 -108q-58 -12 -91 -12h-84q-79 0 -199.5 39t-183.5 85q-8 7 -8 16q0 8 5 13.5t13 5.5q4 0 18 -7.5t30.5 -16.5t20.5 -11
q73 -37 159.5 -61.5t157.5 -24.5q95 0 167 14.5t157 50.5q15 7 30.5 15.5t34 19t28.5 16.5zM1536 1050v-1079l-774 246q-14 -6 -375 -127.5t-368 -121.5q-13 0 -18 13q0 1 -1 3v1078q3 9 4 10q5 6 20 11q107 36 149 50v384l558 -198q2 0 160.5 55t316 108.5t161.5 53.5
q20 0 20 -21v-418z" />
    <glyph glyph-name="_402" unicode="&#xf1ac;" horiz-adv-x="1792" 
d="M288 1152q66 0 113 -47t47 -113v-1088q0 -66 -47 -113t-113 -47h-128q-66 0 -113 47t-47 113v1088q0 66 47 113t113 47h128zM1664 989q58 -34 93 -93t35 -128v-768q0 -106 -75 -181t-181 -75h-864q-66 0 -113 47t-47 113v1536q0 40 28 68t68 28h672q40 0 88 -20t76 -48
l152 -152q28 -28 48 -76t20 -88v-163zM928 0v128q0 14 -9 23t-23 9h-128q-14 0 -23 -9t-9 -23v-128q0 -14 9 -23t23 -9h128q14 0 23 9t9 23zM928 256v128q0 14 -9 23t-23 9h-128q-14 0 -23 -9t-9 -23v-128q0 -14 9 -23t23 -9h128q14 0 23 9t9 23zM928 512v128q0 14 -9 23
t-23 9h-128q-14 0 -23 -9t-9 -23v-128q0 -14 9 -23t23 -9h128q14 0 23 9t9 23zM1184 0v128q0 14 -9 23t-23 9h-128q-14 0 -23 -9t-9 -23v-128q0 -14 9 -23t23 -9h128q14 0 23 9t9 23zM1184 256v128q0 14 -9 23t-23 9h-128q-14 0 -23 -9t-9 -23v-128q0 -14 9 -23t23 -9h128
q14 0 23 9t9 23zM1184 512v128q0 14 -9 23t-23 9h-128q-14 0 -23 -9t-9 -23v-128q0 -14 9 -23t23 -9h128q14 0 23 9t9 23zM1440 0v128q0 14 -9 23t-23 9h-128q-14 0 -23 -9t-9 -23v-128q0 -14 9 -23t23 -9h128q14 0 23 9t9 23zM1440 256v128q0 14 -9 23t-23 9h-128
q-14 0 -23 -9t-9 -23v-128q0 -14 9 -23t23 -9h128q14 0 23 9t9 23zM1440 512v128q0 14 -9 23t-23 9h-128q-14 0 -23 -9t-9 -23v-128q0 -14 9 -23t23 -9h128q14 0 23 9t9 23zM1536 896v256h-160q-40 0 -68 28t-28 68v160h-640v-512h896z" />
    <glyph glyph-name="_403" unicode="&#xf1ad;" 
d="M1344 1536q26 0 45 -19t19 -45v-1664q0 -26 -19 -45t-45 -19h-1280q-26 0 -45 19t-19 45v1664q0 26 19 45t45 19h1280zM512 1248v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23zM512 992v-64q0 -14 9 -23t23 -9h64q14 0 23 9
t9 23v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23zM512 736v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23zM512 480v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23zM384 160v64
q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM384 416v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM384 672v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h64
q14 0 23 9t9 23zM384 928v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM384 1184v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM896 -96v192q0 14 -9 23t-23 9h-320q-14 0 -23 -9
t-9 -23v-192q0 -14 9 -23t23 -9h320q14 0 23 9t9 23zM896 416v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM896 672v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM896 928v64
q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM896 1184v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1152 160v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h64
q14 0 23 9t9 23zM1152 416v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1152 672v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1152 928v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9
t-9 -23v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1152 1184v64q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h64q14 0 23 9t9 23z" />
    <glyph glyph-name="_404" unicode="&#xf1ae;" horiz-adv-x="1280" 
d="M1188 988l-292 -292v-824q0 -46 -33 -79t-79 -33t-79 33t-33 79v384h-64v-384q0 -46 -33 -79t-79 -33t-79 33t-33 79v824l-292 292q-28 28 -28 68t28 68q29 28 68.5 28t67.5 -28l228 -228h368l228 228q28 28 68 28t68 -28q28 -29 28 -68.5t-28 -67.5zM864 1152
q0 -93 -65.5 -158.5t-158.5 -65.5t-158.5 65.5t-65.5 158.5t65.5 158.5t158.5 65.5t158.5 -65.5t65.5 -158.5z" />
    <glyph glyph-name="uniF1B1" unicode="&#xf1b0;" horiz-adv-x="1664" 
d="M780 1064q0 -60 -19 -113.5t-63 -92.5t-105 -39q-76 0 -138 57.5t-92 135.5t-30 151q0 60 19 113.5t63 92.5t105 39q77 0 138.5 -57.5t91.5 -135t30 -151.5zM438 581q0 -80 -42 -139t-119 -59q-76 0 -141.5 55.5t-100.5 133.5t-35 152q0 80 42 139.5t119 59.5
q76 0 141.5 -55.5t100.5 -134t35 -152.5zM832 608q118 0 255 -97.5t229 -237t92 -254.5q0 -46 -17 -76.5t-48.5 -45t-64.5 -20t-76 -5.5q-68 0 -187.5 45t-182.5 45q-66 0 -192.5 -44.5t-200.5 -44.5q-183 0 -183 146q0 86 56 191.5t139.5 192.5t187.5 146t193 59zM1071 819
q-61 0 -105 39t-63 92.5t-19 113.5q0 74 30 151.5t91.5 135t138.5 57.5q61 0 105 -39t63 -92.5t19 -113.5q0 -73 -30 -151t-92 -135.5t-138 -57.5zM1503 923q77 0 119 -59.5t42 -139.5q0 -74 -35 -152t-100.5 -133.5t-141.5 -55.5q-77 0 -119 59t-42 139q0 74 35 152.5
t100.5 134t141.5 55.5z" />
    <glyph glyph-name="_406" unicode="&#xf1b1;" horiz-adv-x="768" 
d="M704 1008q0 -145 -57 -243.5t-152 -135.5l45 -821q2 -26 -16 -45t-44 -19h-192q-26 0 -44 19t-16 45l45 821q-95 37 -152 135.5t-57 243.5q0 128 42.5 249.5t117.5 200t160 78.5t160 -78.5t117.5 -200t42.5 -249.5z" />
    <glyph glyph-name="_407" unicode="&#xf1b2;" horiz-adv-x="1792" 
d="M896 -93l640 349v636l-640 -233v-752zM832 772l698 254l-698 254l-698 -254zM1664 1024v-768q0 -35 -18 -65t-49 -47l-704 -384q-28 -16 -61 -16t-61 16l-704 384q-31 17 -49 47t-18 65v768q0 40 23 73t61 47l704 256q22 8 44 8t44 -8l704 -256q38 -14 61 -47t23 -73z
" />
    <glyph glyph-name="_408" unicode="&#xf1b3;" horiz-adv-x="2304" 
d="M640 -96l384 192v314l-384 -164v-342zM576 358l404 173l-404 173l-404 -173zM1664 -96l384 192v314l-384 -164v-342zM1600 358l404 173l-404 173l-404 -173zM1152 651l384 165v266l-384 -164v-267zM1088 1030l441 189l-441 189l-441 -189zM2176 512v-416q0 -36 -19 -67
t-52 -47l-448 -224q-25 -14 -57 -14t-57 14l-448 224q-4 2 -7 4q-2 -2 -7 -4l-448 -224q-25 -14 -57 -14t-57 14l-448 224q-33 16 -52 47t-19 67v416q0 38 21.5 70t56.5 48l434 186v400q0 38 21.5 70t56.5 48l448 192q23 10 50 10t50 -10l448 -192q35 -16 56.5 -48t21.5 -70
v-400l434 -186q36 -16 57 -48t21 -70z" />
    <glyph glyph-name="_409" unicode="&#xf1b4;" horiz-adv-x="2048" 
d="M1848 1197h-511v-124h511v124zM1596 771q-90 0 -146 -52.5t-62 -142.5h408q-18 195 -200 195zM1612 186q63 0 122 32t76 87h221q-100 -307 -427 -307q-214 0 -340.5 132t-126.5 347q0 208 130.5 345.5t336.5 137.5q138 0 240.5 -68t153 -179t50.5 -248q0 -17 -2 -47h-658
q0 -111 57.5 -171.5t166.5 -60.5zM277 236h296q205 0 205 167q0 180 -199 180h-302v-347zM277 773h281q78 0 123.5 36.5t45.5 113.5q0 144 -190 144h-260v-294zM0 1282h594q87 0 155 -14t126.5 -47.5t90 -96.5t31.5 -154q0 -181 -172 -263q114 -32 172 -115t58 -204
q0 -75 -24.5 -136.5t-66 -103.5t-98.5 -71t-121 -42t-134 -13h-611v1260z" />
    <glyph glyph-name="_410" unicode="&#xf1b5;" 
d="M1248 1408q119 0 203.5 -84.5t84.5 -203.5v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960zM499 1041h-371v-787h382q117 0 197 57.5t80 170.5q0 158 -143 200q107 52 107 164q0 57 -19.5 96.5
t-56.5 60.5t-79 29.5t-97 8.5zM477 723h-176v184h163q119 0 119 -90q0 -94 -106 -94zM486 388h-185v217h189q124 0 124 -113q0 -104 -128 -104zM1136 356q-68 0 -104 38t-36 107h411q1 10 1 30q0 132 -74.5 220.5t-203.5 88.5q-128 0 -210 -86t-82 -216q0 -135 79 -217
t213 -82q205 0 267 191h-138q-11 -34 -47.5 -54t-75.5 -20zM1126 722q113 0 124 -122h-254q4 56 39 89t91 33zM964 988h319v-77h-319v77z" />
    <glyph glyph-name="_411" unicode="&#xf1b6;" horiz-adv-x="1792" 
d="M1582 954q0 -101 -71.5 -172.5t-172.5 -71.5t-172.5 71.5t-71.5 172.5t71.5 172.5t172.5 71.5t172.5 -71.5t71.5 -172.5zM812 212q0 104 -73 177t-177 73q-27 0 -54 -6l104 -42q77 -31 109.5 -106.5t1.5 -151.5q-31 -77 -107 -109t-152 -1q-21 8 -62 24.5t-61 24.5
q32 -60 91 -96.5t130 -36.5q104 0 177 73t73 177zM1642 953q0 126 -89.5 215.5t-215.5 89.5q-127 0 -216.5 -89.5t-89.5 -215.5q0 -127 89.5 -216t216.5 -89q126 0 215.5 89t89.5 216zM1792 953q0 -189 -133.5 -322t-321.5 -133l-437 -319q-12 -129 -109 -218t-229 -89
q-121 0 -214 76t-118 192l-230 92v429l389 -157q79 48 173 48q13 0 35 -2l284 407q2 187 135.5 319t320.5 132q188 0 321.5 -133.5t133.5 -321.5z" />
    <glyph glyph-name="_412" unicode="&#xf1b7;" 
d="M1242 889q0 80 -57 136.5t-137 56.5t-136.5 -57t-56.5 -136q0 -80 56.5 -136.5t136.5 -56.5t137 56.5t57 136.5zM632 301q0 -83 -58 -140.5t-140 -57.5q-56 0 -103 29t-72 77q52 -20 98 -40q60 -24 120 1.5t85 86.5q24 60 -1.5 120t-86.5 84l-82 33q22 5 42 5
q82 0 140 -57.5t58 -140.5zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v153l172 -69q20 -92 93.5 -152t168.5 -60q104 0 181 70t87 173l345 252q150 0 255.5 105.5t105.5 254.5q0 150 -105.5 255.5t-255.5 105.5
q-148 0 -253 -104.5t-107 -252.5l-225 -322q-9 1 -28 1q-75 0 -137 -37l-297 119v468q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5zM1289 887q0 -100 -71 -170.5t-171 -70.5t-170.5 70.5t-70.5 170.5t70.5 171t170.5 71q101 0 171.5 -70.5t70.5 -171.5z
" />
    <glyph glyph-name="_413" unicode="&#xf1b8;" horiz-adv-x="1792" 
d="M836 367l-15 -368l-2 -22l-420 29q-36 3 -67 31.5t-47 65.5q-11 27 -14.5 55t4 65t12 55t21.5 64t19 53q78 -12 509 -28zM449 953l180 -379l-147 92q-63 -72 -111.5 -144.5t-72.5 -125t-39.5 -94.5t-18.5 -63l-4 -21l-190 357q-17 26 -18 56t6 47l8 18q35 63 114 188
l-140 86zM1680 436l-188 -359q-12 -29 -36.5 -46.5t-43.5 -20.5l-18 -4q-71 -7 -219 -12l8 -164l-230 367l211 362l7 -173q170 -16 283 -5t170 33zM895 1360q-47 -63 -265 -435l-317 187l-19 12l225 356q20 31 60 45t80 10q24 -2 48.5 -12t42 -21t41.5 -33t36 -34.5
t36 -39.5t32 -35zM1550 1053l212 -363q18 -37 12.5 -76t-27.5 -74q-13 -20 -33 -37t-38 -28t-48.5 -22t-47 -16t-51.5 -14t-46 -12q-34 72 -265 436l313 195zM1407 1279l142 83l-220 -373l-419 20l151 86q-34 89 -75 166t-75.5 123.5t-64.5 80t-47 46.5l-17 13l405 -1
q31 3 58 -10.5t39 -28.5l11 -15q39 -61 112 -190z" />
    <glyph glyph-name="_414" unicode="&#xf1b9;" horiz-adv-x="2048" 
d="M480 448q0 66 -47 113t-113 47t-113 -47t-47 -113t47 -113t113 -47t113 47t47 113zM516 768h1016l-89 357q-2 8 -14 17.5t-21 9.5h-768q-9 0 -21 -9.5t-14 -17.5zM1888 448q0 66 -47 113t-113 47t-113 -47t-47 -113t47 -113t113 -47t113 47t47 113zM2048 544v-384
q0 -14 -9 -23t-23 -9h-96v-128q0 -80 -56 -136t-136 -56t-136 56t-56 136v128h-1024v-128q0 -80 -56 -136t-136 -56t-136 56t-56 136v128h-96q-14 0 -23 9t-9 23v384q0 93 65.5 158.5t158.5 65.5h28l105 419q23 94 104 157.5t179 63.5h768q98 0 179 -63.5t104 -157.5
l105 -419h28q93 0 158.5 -65.5t65.5 -158.5z" />
    <glyph glyph-name="_415" unicode="&#xf1ba;" horiz-adv-x="2048" 
d="M1824 640q93 0 158.5 -65.5t65.5 -158.5v-384q0 -14 -9 -23t-23 -9h-96v-64q0 -80 -56 -136t-136 -56t-136 56t-56 136v64h-1024v-64q0 -80 -56 -136t-136 -56t-136 56t-56 136v64h-96q-14 0 -23 9t-9 23v384q0 93 65.5 158.5t158.5 65.5h28l105 419q23 94 104 157.5
t179 63.5h128v224q0 14 9 23t23 9h448q14 0 23 -9t9 -23v-224h128q98 0 179 -63.5t104 -157.5l105 -419h28zM320 160q66 0 113 47t47 113t-47 113t-113 47t-113 -47t-47 -113t47 -113t113 -47zM516 640h1016l-89 357q-2 8 -14 17.5t-21 9.5h-768q-9 0 -21 -9.5t-14 -17.5z
M1728 160q66 0 113 47t47 113t-47 113t-113 47t-113 -47t-47 -113t47 -113t113 -47z" />
    <glyph glyph-name="_416" unicode="&#xf1bb;" 
d="M1504 64q0 -26 -19 -45t-45 -19h-462q1 -17 6 -87.5t5 -108.5q0 -25 -18 -42.5t-43 -17.5h-320q-25 0 -43 17.5t-18 42.5q0 38 5 108.5t6 87.5h-462q-26 0 -45 19t-19 45t19 45l402 403h-229q-26 0 -45 19t-19 45t19 45l402 403h-197q-26 0 -45 19t-19 45t19 45l384 384
q19 19 45 19t45 -19l384 -384q19 -19 19 -45t-19 -45t-45 -19h-197l402 -403q19 -19 19 -45t-19 -45t-45 -19h-229l402 -403q19 -19 19 -45z" />
    <glyph glyph-name="_417" unicode="&#xf1bc;" 
d="M1127 326q0 32 -30 51q-193 115 -447 115q-133 0 -287 -34q-42 -9 -42 -52q0 -20 13.5 -34.5t35.5 -14.5q5 0 37 8q132 27 243 27q226 0 397 -103q19 -11 33 -11q19 0 33 13.5t14 34.5zM1223 541q0 40 -35 61q-237 141 -548 141q-153 0 -303 -42q-48 -13 -48 -64
q0 -25 17.5 -42.5t42.5 -17.5q7 0 37 8q122 33 251 33q279 0 488 -124q24 -13 38 -13q25 0 42.5 17.5t17.5 42.5zM1331 789q0 47 -40 70q-126 73 -293 110.5t-343 37.5q-204 0 -364 -47q-23 -7 -38.5 -25.5t-15.5 -48.5q0 -31 20.5 -52t51.5 -21q11 0 40 8q133 37 307 37
q159 0 309.5 -34t253.5 -95q21 -12 40 -12q29 0 50.5 20.5t21.5 51.5zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="_418" unicode="&#xf1bd;" horiz-adv-x="1024" 
d="M1024 1233l-303 -582l24 -31h279v-415h-507l-44 -30l-142 -273l-30 -30h-301v303l303 583l-24 30h-279v415h507l44 30l142 273l30 30h301v-303z" />
    <glyph glyph-name="_419" unicode="&#xf1be;" horiz-adv-x="2304" 
d="M784 164l16 241l-16 523q-1 10 -7.5 17t-16.5 7q-9 0 -16 -7t-7 -17l-14 -523l14 -241q1 -10 7.5 -16.5t15.5 -6.5q22 0 24 23zM1080 193l11 211l-12 586q0 16 -13 24q-8 5 -16 5t-16 -5q-13 -8 -13 -24l-1 -6l-10 -579q0 -1 11 -236v-1q0 -10 6 -17q9 -11 23 -11
q11 0 20 9q9 7 9 20zM35 533l20 -128l-20 -126q-2 -9 -9 -9t-9 9l-17 126l17 128q2 9 9 9t9 -9zM121 612l26 -207l-26 -203q-2 -9 -10 -9q-9 0 -9 10l-23 202l23 207q0 9 9 9q8 0 10 -9zM401 159zM213 650l25 -245l-25 -237q0 -11 -11 -11q-10 0 -12 11l-21 237l21 245
q2 12 12 12q11 0 11 -12zM307 657l23 -252l-23 -244q-2 -13 -14 -13q-13 0 -13 13l-21 244l21 252q0 13 13 13q12 0 14 -13zM401 639l21 -234l-21 -246q-2 -16 -16 -16q-6 0 -10.5 4.5t-4.5 11.5l-20 246l20 234q0 6 4.5 10.5t10.5 4.5q14 0 16 -15zM784 164zM495 785
l21 -380l-21 -246q0 -7 -5 -12.5t-12 -5.5q-16 0 -18 18l-18 246l18 380q2 18 18 18q7 0 12 -5.5t5 -12.5zM589 871l19 -468l-19 -244q0 -8 -5.5 -13.5t-13.5 -5.5q-18 0 -20 19l-16 244l16 468q2 19 20 19q8 0 13.5 -5.5t5.5 -13.5zM687 911l18 -506l-18 -242
q-2 -21 -22 -21q-19 0 -21 21l-16 242l16 506q0 9 6.5 15.5t14.5 6.5q9 0 15 -6.5t7 -15.5zM1079 169v0v0v0zM881 915l15 -510l-15 -239q0 -10 -7.5 -17.5t-17.5 -7.5t-17 7t-8 18l-14 239l14 510q0 11 7.5 18t17.5 7t17.5 -7t7.5 -18zM980 896l14 -492l-14 -236
q0 -11 -8 -19t-19 -8t-19 8t-9 19l-12 236l12 492q1 12 9 20t19 8t18.5 -8t8.5 -20zM1192 404l-14 -231v0q0 -13 -9 -22t-22 -9t-22 9t-10 22l-6 114l-6 117l12 636v3q2 15 12 24q9 7 20 7q8 0 15 -5q14 -8 16 -26zM2304 423q0 -117 -83 -199.5t-200 -82.5h-786
q-13 2 -22 11t-9 22v899q0 23 28 33q85 34 181 34q195 0 338 -131.5t160 -323.5q53 22 110 22q117 0 200 -83t83 -201z" />
    <glyph glyph-name="uniF1C0" unicode="&#xf1c0;" 
d="M768 768q237 0 443 43t325 127v-170q0 -69 -103 -128t-280 -93.5t-385 -34.5t-385 34.5t-280 93.5t-103 128v170q119 -84 325 -127t443 -43zM768 0q237 0 443 43t325 127v-170q0 -69 -103 -128t-280 -93.5t-385 -34.5t-385 34.5t-280 93.5t-103 128v170q119 -84 325 -127
t443 -43zM768 384q237 0 443 43t325 127v-170q0 -69 -103 -128t-280 -93.5t-385 -34.5t-385 34.5t-280 93.5t-103 128v170q119 -84 325 -127t443 -43zM768 1536q208 0 385 -34.5t280 -93.5t103 -128v-128q0 -69 -103 -128t-280 -93.5t-385 -34.5t-385 34.5t-280 93.5
t-103 128v128q0 69 103 128t280 93.5t385 34.5z" />
    <glyph glyph-name="uniF1C1" unicode="&#xf1c1;" 
d="M1468 1156q28 -28 48 -76t20 -88v-1152q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h896q40 0 88 -20t76 -48zM1024 1400v-376h376q-10 29 -22 41l-313 313q-12 12 -41 22zM1408 -128v1024h-416q-40 0 -68 28t-28 68v416h-768v-1536h1280z
M894 465q33 -26 84 -56q59 7 117 7q147 0 177 -49q16 -22 2 -52q0 -1 -1 -2l-2 -2v-1q-6 -38 -71 -38q-48 0 -115 20t-130 53q-221 -24 -392 -83q-153 -262 -242 -262q-15 0 -28 7l-24 12q-1 1 -6 5q-10 10 -6 36q9 40 56 91.5t132 96.5q14 9 23 -6q2 -2 2 -4q52 85 107 197
q68 136 104 262q-24 82 -30.5 159.5t6.5 127.5q11 40 42 40h21h1q23 0 35 -15q18 -21 9 -68q-2 -6 -4 -8q1 -3 1 -8v-30q-2 -123 -14 -192q55 -164 146 -238zM318 54q52 24 137 158q-51 -40 -87.5 -84t-49.5 -74zM716 974q-15 -42 -2 -132q1 7 7 44q0 3 7 43q1 4 4 8
q-1 1 -1 2q-1 2 -1 3q-1 22 -13 36q0 -1 -1 -2v-2zM592 313q135 54 284 81q-2 1 -13 9.5t-16 13.5q-76 67 -127 176q-27 -86 -83 -197q-30 -56 -45 -83zM1238 329q-24 24 -140 24q76 -28 124 -28q14 0 18 1q0 1 -2 3z" />
    <glyph glyph-name="_422" unicode="&#xf1c2;" 
d="M1468 1156q28 -28 48 -76t20 -88v-1152q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h896q40 0 88 -20t76 -48zM1024 1400v-376h376q-10 29 -22 41l-313 313q-12 12 -41 22zM1408 -128v1024h-416q-40 0 -68 28t-28 68v416h-768v-1536h1280z
M233 768v-107h70l164 -661h159l128 485q7 20 10 46q2 16 2 24h4l3 -24q1 -3 3.5 -20t5.5 -26l128 -485h159l164 661h70v107h-300v-107h90l-99 -438q-5 -20 -7 -46l-2 -21h-4q0 3 -0.5 6.5t-1.5 8t-1 6.5q-1 5 -4 21t-5 25l-144 545h-114l-144 -545q-2 -9 -4.5 -24.5
t-3.5 -21.5l-4 -21h-4l-2 21q-2 26 -7 46l-99 438h90v107h-300z" />
    <glyph glyph-name="_423" unicode="&#xf1c3;" 
d="M1468 1156q28 -28 48 -76t20 -88v-1152q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h896q40 0 88 -20t76 -48zM1024 1400v-376h376q-10 29 -22 41l-313 313q-12 12 -41 22zM1408 -128v1024h-416q-40 0 -68 28t-28 68v416h-768v-1536h1280z
M429 106v-106h281v106h-75l103 161q5 7 10 16.5t7.5 13.5t3.5 4h2q1 -4 5 -10q2 -4 4.5 -7.5t6 -8t6.5 -8.5l107 -161h-76v-106h291v106h-68l-192 273l195 282h67v107h-279v-107h74l-103 -159q-4 -7 -10 -16.5t-9 -13.5l-2 -3h-2q-1 4 -5 10q-6 11 -17 23l-106 159h76v107
h-290v-107h68l189 -272l-194 -283h-68z" />
    <glyph glyph-name="_424" unicode="&#xf1c4;" 
d="M1468 1156q28 -28 48 -76t20 -88v-1152q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h896q40 0 88 -20t76 -48zM1024 1400v-376h376q-10 29 -22 41l-313 313q-12 12 -41 22zM1408 -128v1024h-416q-40 0 -68 28t-28 68v416h-768v-1536h1280z
M416 106v-106h327v106h-93v167h137q76 0 118 15q67 23 106.5 87t39.5 146q0 81 -37 141t-100 87q-48 19 -130 19h-368v-107h92v-555h-92zM769 386h-119v268h120q52 0 83 -18q56 -33 56 -115q0 -89 -62 -120q-31 -15 -78 -15z" />
    <glyph glyph-name="_425" unicode="&#xf1c5;" 
d="M1468 1156q28 -28 48 -76t20 -88v-1152q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h896q40 0 88 -20t76 -48zM1024 1400v-376h376q-10 29 -22 41l-313 313q-12 12 -41 22zM1408 -128v1024h-416q-40 0 -68 28t-28 68v416h-768v-1536h1280z
M1280 320v-320h-1024v192l192 192l128 -128l384 384zM448 512q-80 0 -136 56t-56 136t56 136t136 56t136 -56t56 -136t-56 -136t-136 -56z" />
    <glyph glyph-name="_426" unicode="&#xf1c6;" 
d="M640 1152v128h-128v-128h128zM768 1024v128h-128v-128h128zM640 896v128h-128v-128h128zM768 768v128h-128v-128h128zM1468 1156q28 -28 48 -76t20 -88v-1152q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h896q40 0 88 -20t76 -48zM1024 1400
v-376h376q-10 29 -22 41l-313 313q-12 12 -41 22zM1408 -128v1024h-416q-40 0 -68 28t-28 68v416h-128v-128h-128v128h-512v-1536h1280zM781 593l107 -349q8 -27 8 -52q0 -83 -72.5 -137.5t-183.5 -54.5t-183.5 54.5t-72.5 137.5q0 25 8 52q21 63 120 396v128h128v-128h79
q22 0 39 -13t23 -34zM640 128q53 0 90.5 19t37.5 45t-37.5 45t-90.5 19t-90.5 -19t-37.5 -45t37.5 -45t90.5 -19z" />
    <glyph glyph-name="_427" unicode="&#xf1c7;" 
d="M1468 1156q28 -28 48 -76t20 -88v-1152q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h896q40 0 88 -20t76 -48zM1024 1400v-376h376q-10 29 -22 41l-313 313q-12 12 -41 22zM1408 -128v1024h-416q-40 0 -68 28t-28 68v416h-768v-1536h1280z
M620 686q20 -8 20 -30v-544q0 -22 -20 -30q-8 -2 -12 -2q-12 0 -23 9l-166 167h-131q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h131l166 167q16 15 35 7zM1037 -3q31 0 50 24q129 159 129 363t-129 363q-16 21 -43 24t-47 -14q-21 -17 -23.5 -43.5t14.5 -47.5
q100 -123 100 -282t-100 -282q-17 -21 -14.5 -47.5t23.5 -42.5q18 -15 40 -15zM826 145q27 0 47 20q87 93 87 219t-87 219q-18 19 -45 20t-46 -17t-20 -44.5t18 -46.5q52 -57 52 -131t-52 -131q-19 -20 -18 -46.5t20 -44.5q20 -17 44 -17z" />
    <glyph glyph-name="_428" unicode="&#xf1c8;" 
d="M1468 1156q28 -28 48 -76t20 -88v-1152q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h896q40 0 88 -20t76 -48zM1024 1400v-376h376q-10 29 -22 41l-313 313q-12 12 -41 22zM1408 -128v1024h-416q-40 0 -68 28t-28 68v416h-768v-1536h1280z
M768 768q52 0 90 -38t38 -90v-384q0 -52 -38 -90t-90 -38h-384q-52 0 -90 38t-38 90v384q0 52 38 90t90 38h384zM1260 766q20 -8 20 -30v-576q0 -22 -20 -30q-8 -2 -12 -2q-14 0 -23 9l-265 266v90l265 266q9 9 23 9q4 0 12 -2z" />
    <glyph glyph-name="_429" unicode="&#xf1c9;" 
d="M1468 1156q28 -28 48 -76t20 -88v-1152q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h896q40 0 88 -20t76 -48zM1024 1400v-376h376q-10 29 -22 41l-313 313q-12 12 -41 22zM1408 -128v1024h-416q-40 0 -68 28t-28 68v416h-768v-1536h1280z
M480 768q8 11 21 12.5t24 -6.5l51 -38q11 -8 12.5 -21t-6.5 -24l-182 -243l182 -243q8 -11 6.5 -24t-12.5 -21l-51 -38q-11 -8 -24 -6.5t-21 12.5l-226 301q-14 19 0 38zM1282 467q14 -19 0 -38l-226 -301q-8 -11 -21 -12.5t-24 6.5l-51 38q-11 8 -12.5 21t6.5 24l182 243
l-182 243q-8 11 -6.5 24t12.5 21l51 38q11 8 24 6.5t21 -12.5zM662 6q-13 2 -20.5 13t-5.5 24l138 831q2 13 13 20.5t24 5.5l63 -10q13 -2 20.5 -13t5.5 -24l-138 -831q-2 -13 -13 -20.5t-24 -5.5z" />
    <glyph glyph-name="_430" unicode="&#xf1ca;" 
d="M1497 709v-198q-101 -23 -198 -23q-65 -136 -165.5 -271t-181.5 -215.5t-128 -106.5q-80 -45 -162 3q-28 17 -60.5 43.5t-85 83.5t-102.5 128.5t-107.5 184t-105.5 244t-91.5 314.5t-70.5 390h283q26 -218 70 -398.5t104.5 -317t121.5 -235.5t140 -195q169 169 287 406
q-142 72 -223 220t-81 333q0 192 104 314.5t284 122.5q178 0 273 -105.5t95 -297.5q0 -159 -58 -286q-7 -1 -19.5 -3t-46 -2t-63 6t-62 25.5t-50.5 51.5q31 103 31 184q0 87 -29 132t-79 45q-53 0 -85 -49.5t-32 -140.5q0 -186 105 -293.5t267 -107.5q62 0 121 14z" />
    <glyph glyph-name="_431" unicode="&#xf1cb;" horiz-adv-x="1792" 
d="M216 367l603 -402v359l-334 223zM154 511l193 129l-193 129v-258zM973 -35l603 402l-269 180l-334 -223v-359zM896 458l272 182l-272 182l-272 -182zM485 733l334 223v359l-603 -402zM1445 640l193 -129v258zM1307 733l269 180l-603 402v-359zM1792 913v-546
q0 -41 -34 -64l-819 -546q-21 -13 -43 -13t-43 13l-819 546q-34 23 -34 64v546q0 41 34 64l819 546q21 13 43 13t43 -13l819 -546q34 -23 34 -64z" />
    <glyph glyph-name="_432" unicode="&#xf1cc;" horiz-adv-x="2048" 
d="M1800 764q111 -46 179.5 -145.5t68.5 -221.5q0 -164 -118 -280.5t-285 -116.5q-4 0 -11.5 0.5t-10.5 0.5h-1209h-1h-2h-5q-170 10 -288 125.5t-118 280.5q0 110 55 203t147 147q-12 39 -12 82q0 115 82 196t199 81q95 0 172 -58q75 154 222.5 248t326.5 94
q166 0 306 -80.5t221.5 -218.5t81.5 -301q0 -6 -0.5 -18t-0.5 -18zM468 498q0 -122 84 -193t208 -71q137 0 240 99q-16 20 -47.5 56.5t-43.5 50.5q-67 -65 -144 -65q-55 0 -93.5 33.5t-38.5 87.5q0 53 38.5 87t91.5 34q44 0 84.5 -21t73 -55t65 -75t69 -82t77 -75t97 -55
t121.5 -21q121 0 204.5 71.5t83.5 190.5q0 121 -84 192t-207 71q-143 0 -241 -97l93 -108q66 64 142 64q52 0 92 -33t40 -84q0 -57 -37 -91.5t-94 -34.5q-43 0 -82.5 21t-72 55t-65.5 75t-69.5 82t-77.5 75t-96.5 55t-118.5 21q-122 0 -207 -70.5t-85 -189.5z" />
    <glyph glyph-name="_433" unicode="&#xf1cd;" horiz-adv-x="1792" 
d="M896 1536q182 0 348 -71t286 -191t191 -286t71 -348t-71 -348t-191 -286t-286 -191t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71zM896 1408q-190 0 -361 -90l194 -194q82 28 167 28t167 -28l194 194q-171 90 -361 90zM218 279l194 194
q-28 82 -28 167t28 167l-194 194q-90 -171 -90 -361t90 -361zM896 -128q190 0 361 90l-194 194q-82 -28 -167 -28t-167 28l-194 -194q171 -90 361 -90zM896 256q159 0 271.5 112.5t112.5 271.5t-112.5 271.5t-271.5 112.5t-271.5 -112.5t-112.5 -271.5t112.5 -271.5
t271.5 -112.5zM1380 473l194 -194q90 171 90 361t-90 361l-194 -194q28 -82 28 -167t-28 -167z" />
    <glyph glyph-name="_434" unicode="&#xf1ce;" horiz-adv-x="1792" 
d="M1760 640q0 -176 -68.5 -336t-184 -275.5t-275.5 -184t-336 -68.5t-336 68.5t-275.5 184t-184 275.5t-68.5 336q0 213 97 398.5t265 305.5t374 151v-228q-221 -45 -366.5 -221t-145.5 -406q0 -130 51 -248.5t136.5 -204t204 -136.5t248.5 -51t248.5 51t204 136.5
t136.5 204t51 248.5q0 230 -145.5 406t-366.5 221v228q206 -31 374 -151t265 -305.5t97 -398.5z" />
    <glyph glyph-name="uniF1D0" unicode="&#xf1d0;" horiz-adv-x="1792" 
d="M19 662q8 217 116 406t305 318h5q0 -1 -1 -3q-8 -8 -28 -33.5t-52 -76.5t-60 -110.5t-44.5 -135.5t-14 -150.5t39 -157.5t108.5 -154q50 -50 102 -69.5t90.5 -11.5t69.5 23.5t47 32.5l16 16q39 51 53 116.5t6.5 122.5t-21 107t-26.5 80l-14 29q-10 25 -30.5 49.5t-43 41
t-43.5 29.5t-35 19l-13 6l104 115q39 -17 78 -52t59 -61l19 -27q1 48 -18.5 103.5t-40.5 87.5l-20 31l161 183l160 -181q-33 -46 -52.5 -102.5t-22.5 -90.5l-4 -33q22 37 61.5 72.5t67.5 52.5l28 17l103 -115q-44 -14 -85 -50t-60 -65l-19 -29q-31 -56 -48 -133.5t-7 -170
t57 -156.5q33 -45 77.5 -60.5t85 -5.5t76 26.5t57.5 33.5l21 16q60 53 96.5 115t48.5 121.5t10 121.5t-18 118t-37 107.5t-45.5 93t-45 72t-34.5 47.5l-13 17q-14 13 -7 13l10 -3q40 -29 62.5 -46t62 -50t64 -58t58.5 -65t55.5 -77t45.5 -88t38 -103t23.5 -117t10.5 -136
q3 -259 -108 -465t-312 -321t-456 -115q-185 0 -351 74t-283.5 198t-184 293t-60.5 353z" />
    <glyph glyph-name="uniF1D1" unicode="&#xf1d1;" horiz-adv-x="1792" 
d="M874 -102v-66q-208 6 -385 109.5t-283 275.5l58 34q29 -49 73 -99l65 57q148 -168 368 -212l-17 -86q65 -12 121 -13zM276 428l-83 -28q22 -60 49 -112l-57 -33q-98 180 -98 385t98 385l57 -33q-30 -56 -49 -112l82 -28q-35 -100 -35 -212q0 -109 36 -212zM1528 251
l58 -34q-106 -172 -283 -275.5t-385 -109.5v66q56 1 121 13l-17 86q220 44 368 212l65 -57q44 50 73 99zM1377 805l-233 -80q14 -42 14 -85t-14 -85l232 -80q-31 -92 -98 -169l-185 162q-57 -67 -147 -85l48 -241q-52 -10 -98 -10t-98 10l48 241q-90 18 -147 85l-185 -162
q-67 77 -98 169l232 80q-14 42 -14 85t14 85l-233 80q33 93 99 169l185 -162q59 68 147 86l-48 240q44 10 98 10t98 -10l-48 -240q88 -18 147 -86l185 162q66 -76 99 -169zM874 1448v-66q-65 -2 -121 -13l17 -86q-220 -42 -368 -211l-65 56q-38 -42 -73 -98l-57 33
q106 172 282 275.5t385 109.5zM1705 640q0 -205 -98 -385l-57 33q27 52 49 112l-83 28q36 103 36 212q0 112 -35 212l82 28q-19 56 -49 112l57 33q98 -180 98 -385zM1585 1063l-57 -33q-35 56 -73 98l-65 -56q-148 169 -368 211l17 86q-56 11 -121 13v66q209 -6 385 -109.5
t282 -275.5zM1748 640q0 173 -67.5 331t-181.5 272t-272 181.5t-331 67.5t-331 -67.5t-272 -181.5t-181.5 -272t-67.5 -331t67.5 -331t181.5 -272t272 -181.5t331 -67.5t331 67.5t272 181.5t181.5 272t67.5 331zM1792 640q0 -182 -71 -348t-191 -286t-286 -191t-348 -71
t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71t348 -71t286 -191t191 -286t71 -348z" />
    <glyph glyph-name="uniF1D2" unicode="&#xf1d2;" 
d="M582 228q0 -66 -93 -66q-107 0 -107 63q0 64 98 64q102 0 102 -61zM546 694q0 -85 -74 -85q-77 0 -77 84q0 90 77 90q36 0 55 -25.5t19 -63.5zM712 769v125q-78 -29 -135 -29q-50 29 -110 29q-86 0 -145 -57t-59 -143q0 -50 29.5 -102t73.5 -67v-3q-38 -17 -38 -85
q0 -53 41 -77v-3q-113 -37 -113 -139q0 -45 20 -78.5t54 -51t72 -25.5t81 -8q224 0 224 188q0 67 -48 99t-126 46q-27 5 -51.5 20.5t-24.5 39.5q0 44 49 52q77 15 122 70t45 134q0 24 -10 52q37 9 49 13zM771 350h137q-2 27 -2 82v387q0 46 2 69h-137q3 -23 3 -71v-392
q0 -50 -3 -75zM1280 366v121q-30 -21 -68 -21q-53 0 -53 82v225h52q9 0 26.5 -1t26.5 -1v117h-105q0 82 3 102h-140q4 -24 4 -55v-47h-60v-117q36 3 37 3q3 0 11 -0.5t12 -0.5v-2h-2v-217q0 -37 2.5 -64t11.5 -56.5t24.5 -48.5t43.5 -31t66 -12q64 0 108 24zM924 1072
q0 36 -24 63.5t-60 27.5t-60.5 -27t-24.5 -64q0 -36 25 -62.5t60 -26.5t59.5 27t24.5 62zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" />
    <glyph glyph-name="_438" unicode="&#xf1d3;" horiz-adv-x="1792" 
d="M595 22q0 100 -165 100q-158 0 -158 -104q0 -101 172 -101q151 0 151 105zM536 777q0 61 -30 102t-89 41q-124 0 -124 -145q0 -135 124 -135q119 0 119 137zM805 1101v-202q-36 -12 -79 -22q16 -43 16 -84q0 -127 -73 -216.5t-197 -112.5q-40 -8 -59.5 -27t-19.5 -58
q0 -31 22.5 -51.5t58 -32t78.5 -22t86 -25.5t78.5 -37.5t58 -64t22.5 -98.5q0 -304 -363 -304q-69 0 -130 12.5t-116 41t-87.5 82t-32.5 127.5q0 165 182 225v4q-67 41 -67 126q0 109 63 137v4q-72 24 -119.5 108.5t-47.5 165.5q0 139 95 231.5t235 92.5q96 0 178 -47
q98 0 218 47zM1123 220h-222q4 45 4 134v609q0 94 -4 128h222q-4 -33 -4 -124v-613q0 -89 4 -134zM1724 442v-196q-71 -39 -174 -39q-62 0 -107 20t-70 50t-39.5 78t-18.5 92t-4 103v351h2v4q-7 0 -19 1t-18 1q-21 0 -59 -6v190h96v76q0 54 -6 89h227q-6 -41 -6 -165h171
v-190q-15 0 -43.5 2t-42.5 2h-85v-365q0 -131 87 -131q61 0 109 33zM1148 1389q0 -58 -39 -101.5t-96 -43.5q-58 0 -98 43.5t-40 101.5q0 59 39.5 103t98.5 44q58 0 96.5 -44.5t38.5 -102.5z" />
    <glyph glyph-name="_439" unicode="&#xf1d4;" 
d="M809 532l266 499h-112l-157 -312q-24 -48 -44 -92l-42 92l-155 312h-120l263 -493v-324h101v318zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" />
    <glyph glyph-name="uniF1D5" unicode="&#xf1d5;" horiz-adv-x="1280" 
d="M842 964q0 -80 -57 -136.5t-136 -56.5q-60 0 -111 35q-62 -67 -115 -146q-247 -371 -202 -859q1 -22 -12.5 -38.5t-34.5 -18.5h-5q-20 0 -35 13.5t-17 33.5q-14 126 -3.5 247.5t29.5 217t54 186t69 155.5t74 125q61 90 132 165q-16 35 -16 77q0 80 56.5 136.5t136.5 56.5
t136.5 -56.5t56.5 -136.5zM1223 953q0 -158 -78 -292t-212.5 -212t-292.5 -78q-64 0 -131 14q-21 5 -32.5 23.5t-6.5 39.5q5 20 23 31.5t39 7.5q51 -13 108 -13q97 0 186 38t153 102t102 153t38 186t-38 186t-102 153t-153 102t-186 38t-186 -38t-153 -102t-102 -153
t-38 -186q0 -114 52 -218q10 -20 3.5 -40t-25.5 -30t-39.5 -3t-30.5 26q-64 123 -64 265q0 119 46.5 227t124.5 186t186 124t226 46q158 0 292.5 -78t212.5 -212.5t78 -292.5z" />
    <glyph glyph-name="uniF1D6" unicode="&#xf1d6;" horiz-adv-x="1792" 
d="M270 730q-8 19 -8 52q0 20 11 49t24 45q-1 22 7.5 53t22.5 43q0 139 92.5 288.5t217.5 209.5q139 66 324 66q133 0 266 -55q49 -21 90 -48t71 -56t55 -68t42 -74t32.5 -84.5t25.5 -89.5t22 -98l1 -5q55 -83 55 -150q0 -14 -9 -40t-9 -38q0 -1 1.5 -3.5t3.5 -5t2 -3.5
q77 -114 120.5 -214.5t43.5 -208.5q0 -43 -19.5 -100t-55.5 -57q-9 0 -19.5 7.5t-19 17.5t-19 26t-16 26.5t-13.5 26t-9 17.5q-1 1 -3 1l-5 -4q-59 -154 -132 -223q20 -20 61.5 -38.5t69 -41.5t35.5 -65q-2 -4 -4 -16t-7 -18q-64 -97 -302 -97q-53 0 -110.5 9t-98 20
t-104.5 30q-15 5 -23 7q-14 4 -46 4.5t-40 1.5q-41 -45 -127.5 -65t-168.5 -20q-35 0 -69 1.5t-93 9t-101 20.5t-74.5 40t-32.5 64q0 40 10 59.5t41 48.5q11 2 40.5 13t49.5 12q4 0 14 2q2 2 2 4l-2 3q-48 11 -108 105.5t-73 156.5l-5 3q-4 0 -12 -20q-18 -41 -54.5 -74.5
t-77.5 -37.5h-1q-4 0 -6 4.5t-5 5.5q-23 54 -23 100q0 275 252 466z" />
    <glyph glyph-name="uniF1D7" unicode="&#xf1d7;" horiz-adv-x="2048" 
d="M580 1075q0 41 -25 66t-66 25q-43 0 -76 -25.5t-33 -65.5q0 -39 33 -64.5t76 -25.5q41 0 66 24.5t25 65.5zM1323 568q0 28 -25.5 50t-65.5 22q-27 0 -49.5 -22.5t-22.5 -49.5q0 -28 22.5 -50.5t49.5 -22.5q40 0 65.5 22t25.5 51zM1087 1075q0 41 -24.5 66t-65.5 25
q-43 0 -76 -25.5t-33 -65.5q0 -39 33 -64.5t76 -25.5q41 0 65.5 24.5t24.5 65.5zM1722 568q0 28 -26 50t-65 22q-27 0 -49.5 -22.5t-22.5 -49.5q0 -28 22.5 -50.5t49.5 -22.5q39 0 65 22t26 51zM1456 965q-31 4 -70 4q-169 0 -311 -77t-223.5 -208.5t-81.5 -287.5
q0 -78 23 -152q-35 -3 -68 -3q-26 0 -50 1.5t-55 6.5t-44.5 7t-54.5 10.5t-50 10.5l-253 -127l72 218q-290 203 -290 490q0 169 97.5 311t264 223.5t363.5 81.5q176 0 332.5 -66t262 -182.5t136.5 -260.5zM2048 404q0 -117 -68.5 -223.5t-185.5 -193.5l55 -181l-199 109
q-150 -37 -218 -37q-169 0 -311 70.5t-223.5 191.5t-81.5 264t81.5 264t223.5 191.5t311 70.5q161 0 303 -70.5t227.5 -192t85.5 -263.5z" />
    <glyph glyph-name="_443" unicode="&#xf1d8;" horiz-adv-x="1792" 
d="M1764 1525q33 -24 27 -64l-256 -1536q-5 -29 -32 -45q-14 -8 -31 -8q-11 0 -24 5l-453 185l-242 -295q-18 -23 -49 -23q-13 0 -22 4q-19 7 -30.5 23.5t-11.5 36.5v349l864 1059l-1069 -925l-395 162q-37 14 -40 55q-2 40 32 59l1664 960q15 9 32 9q20 0 36 -11z" />
    <glyph glyph-name="_444" unicode="&#xf1d9;" horiz-adv-x="1792" 
d="M1764 1525q33 -24 27 -64l-256 -1536q-5 -29 -32 -45q-14 -8 -31 -8q-11 0 -24 5l-527 215l-298 -327q-18 -21 -47 -21q-14 0 -23 4q-19 7 -30 23.5t-11 36.5v452l-472 193q-37 14 -40 55q-3 39 32 59l1664 960q35 21 68 -2zM1422 26l221 1323l-1434 -827l336 -137
l863 639l-478 -797z" />
    <glyph glyph-name="_445" unicode="&#xf1da;" 
d="M1536 640q0 -156 -61 -298t-164 -245t-245 -164t-298 -61q-172 0 -327 72.5t-264 204.5q-7 10 -6.5 22.5t8.5 20.5l137 138q10 9 25 9q16 -2 23 -12q73 -95 179 -147t225 -52q104 0 198.5 40.5t163.5 109.5t109.5 163.5t40.5 198.5t-40.5 198.5t-109.5 163.5
t-163.5 109.5t-198.5 40.5q-98 0 -188 -35.5t-160 -101.5l137 -138q31 -30 14 -69q-17 -40 -59 -40h-448q-26 0 -45 19t-19 45v448q0 42 40 59q39 17 69 -14l130 -129q107 101 244.5 156.5t284.5 55.5q156 0 298 -61t245 -164t164 -245t61 -298zM896 928v-448q0 -14 -9 -23
t-23 -9h-320q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h224v352q0 14 9 23t23 9h64q14 0 23 -9t9 -23z" />
    <glyph glyph-name="_446" unicode="&#xf1db;" 
d="M768 1280q-130 0 -248.5 -51t-204 -136.5t-136.5 -204t-51 -248.5t51 -248.5t136.5 -204t204 -136.5t248.5 -51t248.5 51t204 136.5t136.5 204t51 248.5t-51 248.5t-136.5 204t-204 136.5t-248.5 51zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103
t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="_447" unicode="&#xf1dc;" horiz-adv-x="1792" 
d="M1682 -128q-44 0 -132.5 3.5t-133.5 3.5q-44 0 -132 -3.5t-132 -3.5q-24 0 -37 20.5t-13 45.5q0 31 17 46t39 17t51 7t45 15q33 21 33 140l-1 391q0 21 -1 31q-13 4 -50 4h-675q-38 0 -51 -4q-1 -10 -1 -31l-1 -371q0 -142 37 -164q16 -10 48 -13t57 -3.5t45 -15
t20 -45.5q0 -26 -12.5 -48t-36.5 -22q-47 0 -139.5 3.5t-138.5 3.5q-43 0 -128 -3.5t-127 -3.5q-23 0 -35.5 21t-12.5 45q0 30 15.5 45t36 17.5t47.5 7.5t42 15q33 23 33 143l-1 57v813q0 3 0.5 26t0 36.5t-1.5 38.5t-3.5 42t-6.5 36.5t-11 31.5t-16 18q-15 10 -45 12t-53 2
t-41 14t-18 45q0 26 12 48t36 22q46 0 138.5 -3.5t138.5 -3.5q42 0 126.5 3.5t126.5 3.5q25 0 37.5 -22t12.5 -48q0 -30 -17 -43.5t-38.5 -14.5t-49.5 -4t-43 -13q-35 -21 -35 -160l1 -320q0 -21 1 -32q13 -3 39 -3h699q25 0 38 3q1 11 1 32l1 320q0 139 -35 160
q-18 11 -58.5 12.5t-66 13t-25.5 49.5q0 26 12.5 48t37.5 22q44 0 132 -3.5t132 -3.5q43 0 129 3.5t129 3.5q25 0 37.5 -22t12.5 -48q0 -30 -17.5 -44t-40 -14.5t-51.5 -3t-44 -12.5q-35 -23 -35 -161l1 -943q0 -119 34 -140q16 -10 46 -13.5t53.5 -4.5t41.5 -15.5t18 -44.5
q0 -26 -12 -48t-36 -22z" />
    <glyph glyph-name="_448" unicode="&#xf1dd;" horiz-adv-x="1280" 
d="M1278 1347v-73q0 -29 -18.5 -61t-42.5 -32q-50 0 -54 -1q-26 -6 -32 -31q-3 -11 -3 -64v-1152q0 -25 -18 -43t-43 -18h-108q-25 0 -43 18t-18 43v1218h-143v-1218q0 -25 -17.5 -43t-43.5 -18h-108q-26 0 -43.5 18t-17.5 43v496q-147 12 -245 59q-126 58 -192 179
q-64 117 -64 259q0 166 88 286q88 118 209 159q111 37 417 37h479q25 0 43 -18t18 -43z" />
    <glyph glyph-name="_449" unicode="&#xf1de;" 
d="M352 128v-128h-352v128h352zM704 256q26 0 45 -19t19 -45v-256q0 -26 -19 -45t-45 -19h-256q-26 0 -45 19t-19 45v256q0 26 19 45t45 19h256zM864 640v-128h-864v128h864zM224 1152v-128h-224v128h224zM1536 128v-128h-736v128h736zM576 1280q26 0 45 -19t19 -45v-256
q0 -26 -19 -45t-45 -19h-256q-26 0 -45 19t-19 45v256q0 26 19 45t45 19h256zM1216 768q26 0 45 -19t19 -45v-256q0 -26 -19 -45t-45 -19h-256q-26 0 -45 19t-19 45v256q0 26 19 45t45 19h256zM1536 640v-128h-224v128h224zM1536 1152v-128h-864v128h864z" />
    <glyph glyph-name="uniF1E0" unicode="&#xf1e0;" 
d="M1216 512q133 0 226.5 -93.5t93.5 -226.5t-93.5 -226.5t-226.5 -93.5t-226.5 93.5t-93.5 226.5q0 12 2 34l-360 180q-92 -86 -218 -86q-133 0 -226.5 93.5t-93.5 226.5t93.5 226.5t226.5 93.5q126 0 218 -86l360 180q-2 22 -2 34q0 133 93.5 226.5t226.5 93.5
t226.5 -93.5t93.5 -226.5t-93.5 -226.5t-226.5 -93.5q-126 0 -218 86l-360 -180q2 -22 2 -34t-2 -34l360 -180q92 86 218 86z" />
    <glyph glyph-name="_451" unicode="&#xf1e1;" 
d="M1280 341q0 88 -62.5 151t-150.5 63q-84 0 -145 -58l-241 120q2 16 2 23t-2 23l241 120q61 -58 145 -58q88 0 150.5 63t62.5 151t-62.5 150.5t-150.5 62.5t-151 -62.5t-63 -150.5q0 -7 2 -23l-241 -120q-62 57 -145 57q-88 0 -150.5 -62.5t-62.5 -150.5t62.5 -150.5
t150.5 -62.5q83 0 145 57l241 -120q-2 -16 -2 -23q0 -88 63 -150.5t151 -62.5t150.5 62.5t62.5 150.5zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" />
    <glyph glyph-name="_452" unicode="&#xf1e2;" horiz-adv-x="1792" 
d="M571 947q-10 25 -34 35t-49 0q-108 -44 -191 -127t-127 -191q-10 -25 0 -49t35 -34q13 -5 24 -5q42 0 60 40q34 84 98.5 148.5t148.5 98.5q25 11 35 35t0 49zM1513 1303l46 -46l-244 -243l68 -68q19 -19 19 -45.5t-19 -45.5l-64 -64q89 -161 89 -343q0 -143 -55.5 -273.5
t-150 -225t-225 -150t-273.5 -55.5t-273.5 55.5t-225 150t-150 225t-55.5 273.5t55.5 273.5t150 225t225 150t273.5 55.5q182 0 343 -89l64 64q19 19 45.5 19t45.5 -19l68 -68zM1521 1359q-10 -10 -22 -10q-13 0 -23 10l-91 90q-9 10 -9 23t9 23q10 9 23 9t23 -9l90 -91
q10 -9 10 -22.5t-10 -22.5zM1751 1129q-11 -9 -23 -9t-23 9l-90 91q-10 9 -10 22.5t10 22.5q9 10 22.5 10t22.5 -10l91 -90q9 -10 9 -23t-9 -23zM1792 1312q0 -14 -9 -23t-23 -9h-96q-14 0 -23 9t-9 23t9 23t23 9h96q14 0 23 -9t9 -23zM1600 1504v-96q0 -14 -9 -23t-23 -9
t-23 9t-9 23v96q0 14 9 23t23 9t23 -9t9 -23zM1751 1449l-91 -90q-10 -10 -22 -10q-13 0 -23 10q-10 9 -10 22.5t10 22.5l90 91q10 9 23 9t23 -9q9 -10 9 -23t-9 -23z" />
    <glyph glyph-name="_453" unicode="&#xf1e3;" horiz-adv-x="1792" 
d="M609 720l287 208l287 -208l-109 -336h-355zM896 1536q182 0 348 -71t286 -191t191 -286t71 -348t-71 -348t-191 -286t-286 -191t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71zM1515 186q149 203 149 454v3l-102 -89l-240 224l63 323
l134 -12q-150 206 -389 282l53 -124l-287 -159l-287 159l53 124q-239 -76 -389 -282l135 12l62 -323l-240 -224l-102 89v-3q0 -251 149 -454l30 132l326 -40l139 -298l-116 -69q117 -39 240 -39t240 39l-116 69l139 298l326 40z" />
    <glyph glyph-name="_454" unicode="&#xf1e4;" horiz-adv-x="1792" 
d="M448 224v-192q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM256 608v-192q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM832 224v-192q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23
v192q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM640 608v-192q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM66 768q-28 0 -47 19t-19 46v129h514v-129q0 -27 -19 -46t-46 -19h-383zM1216 224v-192q0 -14 -9 -23t-23 -9h-192
q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM1024 608v-192q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM1600 224v-192q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h192q14 0 23 -9t9 -23
zM1408 608v-192q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM1792 1016v-13h-514v10q0 104 -382 102q-382 -1 -382 -102v-10h-514v13q0 17 8.5 43t34 64t65.5 75.5t110.5 76t160 67.5t224 47.5t293.5 18.5t293 -18.5t224 -47.5
t160.5 -67.5t110.5 -76t65.5 -75.5t34 -64t8.5 -43zM1792 608v-192q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM1792 962v-129q0 -27 -19 -46t-46 -19h-384q-27 0 -46 19t-19 46v129h514z" />
    <glyph glyph-name="_455" unicode="&#xf1e5;" horiz-adv-x="1792" 
d="M704 1216v-768q0 -26 -19 -45t-45 -19v-576q0 -26 -19 -45t-45 -19h-512q-26 0 -45 19t-19 45v512l249 873q7 23 31 23h424zM1024 1216v-704h-256v704h256zM1792 320v-512q0 -26 -19 -45t-45 -19h-512q-26 0 -45 19t-19 45v576q-26 0 -45 19t-19 45v768h424q24 0 31 -23z
M736 1504v-224h-352v224q0 14 9 23t23 9h288q14 0 23 -9t9 -23zM1408 1504v-224h-352v224q0 14 9 23t23 9h288q14 0 23 -9t9 -23z" />
    <glyph glyph-name="_456" unicode="&#xf1e6;" horiz-adv-x="1792" 
d="M1755 1083q37 -38 37 -90.5t-37 -90.5l-401 -400l150 -150l-160 -160q-163 -163 -389.5 -186.5t-411.5 100.5l-362 -362h-181v181l362 362q-124 185 -100.5 411.5t186.5 389.5l160 160l150 -150l400 401q38 37 91 37t90 -37t37 -90.5t-37 -90.5l-400 -401l234 -234
l401 400q38 37 91 37t90 -37z" />
    <glyph glyph-name="_457" unicode="&#xf1e7;" horiz-adv-x="1792" 
d="M873 796q0 -83 -63.5 -142.5t-152.5 -59.5t-152.5 59.5t-63.5 142.5q0 84 63.5 143t152.5 59t152.5 -59t63.5 -143zM1375 796q0 -83 -63 -142.5t-153 -59.5q-89 0 -152.5 59.5t-63.5 142.5q0 84 63.5 143t152.5 59q90 0 153 -59t63 -143zM1600 616v667q0 87 -32 123.5
t-111 36.5h-1112q-83 0 -112.5 -34t-29.5 -126v-673q43 -23 88.5 -40t81 -28t81 -18.5t71 -11t70 -4t58.5 -0.5t56.5 2t44.5 2q68 1 95 -27q6 -6 10 -9q26 -25 61 -51q7 91 118 87q5 0 36.5 -1.5t43 -2t45.5 -1t53 1t54.5 4.5t61 8.5t62 13.5t67 19.5t67.5 27t72 34.5z
M1763 621q-121 -149 -372 -252q84 -285 -23 -465q-66 -113 -183 -148q-104 -32 -182 15q-86 51 -82 164l-1 326v1q-8 2 -24.5 6t-23.5 5l-1 -338q4 -114 -83 -164q-79 -47 -183 -15q-117 36 -182 150q-105 180 -22 463q-251 103 -372 252q-25 37 -4 63t60 -1q4 -2 11.5 -7
t10.5 -8v694q0 72 47 123t114 51h1257q67 0 114 -51t47 -123v-694l21 15q39 27 60 1t-4 -63z" />
    <glyph glyph-name="_458" unicode="&#xf1e8;" horiz-adv-x="1792" 
d="M896 1102v-434h-145v434h145zM1294 1102v-434h-145v434h145zM1294 342l253 254v795h-1194v-1049h326v-217l217 217h398zM1692 1536v-1013l-434 -434h-326l-217 -217h-217v217h-398v1158l109 289h1483z" />
    <glyph glyph-name="_459" unicode="&#xf1e9;" 
d="M773 217v-127q-1 -292 -6 -305q-12 -32 -51 -40q-54 -9 -181.5 38t-162.5 89q-13 15 -17 36q-1 12 4 26q4 10 34 47t181 216q1 0 60 70q15 19 39.5 24.5t49.5 -3.5q24 -10 37.5 -29t12.5 -42zM624 468q-3 -55 -52 -70l-120 -39q-275 -88 -292 -88q-35 2 -54 36
q-12 25 -17 75q-8 76 1 166.5t30 124.5t56 32q13 0 202 -77q71 -29 115 -47l84 -34q23 -9 35.5 -30.5t11.5 -48.5zM1450 171q-7 -54 -91.5 -161t-135.5 -127q-37 -14 -63 7q-14 10 -184 287l-47 77q-14 21 -11.5 46t19.5 46q35 43 83 26q1 -1 119 -40q203 -66 242 -79.5
t47 -20.5q28 -22 22 -61zM778 803q5 -102 -54 -122q-58 -17 -114 71l-378 598q-8 35 19 62q41 43 207.5 89.5t224.5 31.5q40 -10 49 -45q3 -18 22 -305.5t24 -379.5zM1440 695q3 -39 -26 -59q-15 -10 -329 -86q-67 -15 -91 -23l1 2q-23 -6 -46 4t-37 32q-30 47 0 87
q1 1 75 102q125 171 150 204t34 39q28 19 65 2q48 -23 123 -133.5t81 -167.5v-3z" />
    <glyph glyph-name="_460" unicode="&#xf1ea;" horiz-adv-x="2048" 
d="M1024 1024h-384v-384h384v384zM1152 384v-128h-640v128h640zM1152 1152v-640h-640v640h640zM1792 384v-128h-512v128h512zM1792 640v-128h-512v128h512zM1792 896v-128h-512v128h512zM1792 1152v-128h-512v128h512zM256 192v960h-128v-960q0 -26 19 -45t45 -19t45 19
t19 45zM1920 192v1088h-1536v-1088q0 -33 -11 -64h1483q26 0 45 19t19 45zM2048 1408v-1216q0 -80 -56 -136t-136 -56h-1664q-80 0 -136 56t-56 136v1088h256v128h1792z" />
    <glyph glyph-name="_461" unicode="&#xf1eb;" horiz-adv-x="2048" 
d="M1024 13q-20 0 -93 73.5t-73 93.5q0 32 62.5 54t103.5 22t103.5 -22t62.5 -54q0 -20 -73 -93.5t-93 -73.5zM1294 284q-2 0 -40 25t-101.5 50t-128.5 25t-128.5 -25t-101 -50t-40.5 -25q-18 0 -93.5 75t-75.5 93q0 13 10 23q78 77 196 121t233 44t233 -44t196 -121
q10 -10 10 -23q0 -18 -75.5 -93t-93.5 -75zM1567 556q-11 0 -23 8q-136 105 -252 154.5t-268 49.5q-85 0 -170.5 -22t-149 -53t-113.5 -62t-79 -53t-31 -22q-17 0 -92 75t-75 93q0 12 10 22q132 132 320 205t380 73t380 -73t320 -205q10 -10 10 -22q0 -18 -75 -93t-92 -75z
M1838 827q-11 0 -22 9q-179 157 -371.5 236.5t-420.5 79.5t-420.5 -79.5t-371.5 -236.5q-11 -9 -22 -9q-17 0 -92.5 75t-75.5 93q0 13 10 23q187 186 445 288t527 102t527 -102t445 -288q10 -10 10 -23q0 -18 -75.5 -93t-92.5 -75z" />
    <glyph glyph-name="_462" unicode="&#xf1ec;" horiz-adv-x="1792" 
d="M384 0q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM768 0q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM384 384q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5
t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1152 0q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM768 384q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5
t37.5 90.5zM384 768q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1152 384q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM768 768q0 53 -37.5 90.5t-90.5 37.5
t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1536 0v384q0 52 -38 90t-90 38t-90 -38t-38 -90v-384q0 -52 38 -90t90 -38t90 38t38 90zM1152 768q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5z
M1536 1088v256q0 26 -19 45t-45 19h-1280q-26 0 -45 -19t-19 -45v-256q0 -26 19 -45t45 -19h1280q26 0 45 19t19 45zM1536 768q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1664 1408v-1536q0 -52 -38 -90t-90 -38
h-1408q-52 0 -90 38t-38 90v1536q0 52 38 90t90 38h1408q52 0 90 -38t38 -90z" />
    <glyph glyph-name="_463" unicode="&#xf1ed;" 
d="M1519 890q18 -84 -4 -204q-87 -444 -565 -444h-44q-25 0 -44 -16.5t-24 -42.5l-4 -19l-55 -346l-2 -15q-5 -26 -24.5 -42.5t-44.5 -16.5h-251q-21 0 -33 15t-9 36q9 56 26.5 168t26.5 168t27 167.5t27 167.5q5 37 43 37h131q133 -2 236 21q175 39 287 144q102 95 155 246
q24 70 35 133q1 6 2.5 7.5t3.5 1t6 -3.5q79 -59 98 -162zM1347 1172q0 -107 -46 -236q-80 -233 -302 -315q-113 -40 -252 -42q0 -1 -90 -1l-90 1q-100 0 -118 -96q-2 -8 -85 -530q-1 -10 -12 -10h-295q-22 0 -36.5 16.5t-11.5 38.5l232 1471q5 29 27.5 48t51.5 19h598
q34 0 97.5 -13t111.5 -32q107 -41 163.5 -123t56.5 -196z" />
    <glyph glyph-name="_464" unicode="&#xf1ee;" horiz-adv-x="1792" 
d="M441 864q33 0 52 -26q266 -364 362 -774h-446q-127 441 -367 749q-12 16 -3 33.5t29 17.5h373zM1000 507q-49 -199 -125 -393q-79 310 -256 594q40 221 44 449q211 -340 337 -650zM1099 1216q235 -324 384.5 -698.5t184.5 -773.5h-451q-41 665 -553 1472h435zM1792 640
q0 -424 -101 -812q-67 560 -359 1083q-25 301 -106 584q-4 16 5.5 28.5t25.5 12.5h359q21 0 38.5 -13t22.5 -33q115 -409 115 -850z" />
    <glyph glyph-name="uniF1F0" unicode="&#xf1f0;" horiz-adv-x="2304" 
d="M1975 546h-138q14 37 66 179l3 9q4 10 10 26t9 26l12 -55zM531 611l-58 295q-11 54 -75 54h-268l-2 -13q311 -79 403 -336zM710 960l-162 -438l-17 89q-26 70 -85 129.5t-131 88.5l135 -510h175l261 641h-176zM849 318h166l104 642h-166zM1617 944q-69 27 -149 27
q-123 0 -201 -59t-79 -153q-1 -102 145 -174q48 -23 67 -41t19 -39q0 -30 -30 -46t-69 -16q-86 0 -156 33l-22 11l-23 -144q74 -34 185 -34q130 -1 208.5 59t80.5 160q0 106 -140 174q-49 25 -71 42t-22 38q0 22 24.5 38.5t70.5 16.5q70 1 124 -24l15 -8zM2042 960h-128
q-65 0 -87 -54l-246 -588h174l35 96h212q5 -22 20 -96h154zM2304 1280v-1280q0 -52 -38 -90t-90 -38h-2048q-52 0 -90 38t-38 90v1280q0 52 38 90t90 38h2048q52 0 90 -38t38 -90z" />
    <glyph glyph-name="_466" unicode="&#xf1f1;" horiz-adv-x="2304" 
d="M1119 1195q-128 85 -281 85q-103 0 -197.5 -40.5t-162.5 -108.5t-108.5 -162t-40.5 -197q0 -104 40.5 -198t108.5 -162t162 -108.5t198 -40.5q153 0 281 85q-131 107 -178 265.5t0.5 316.5t177.5 265zM1152 1171q-126 -99 -172 -249.5t-0.5 -300.5t172.5 -249
q127 99 172.5 249t-0.5 300.5t-172 249.5zM1185 1195q130 -107 177.5 -265.5t0.5 -317t-178 -264.5q128 -85 281 -85q104 0 198 40.5t162 108.5t108.5 162t40.5 198q0 103 -40.5 197t-108.5 162t-162.5 108.5t-197.5 40.5q-153 0 -281 -85zM1926 473h7v3h-17v-3h7v-17h3v17z
M1955 456h4v20h-5l-6 -13l-6 13h-5v-20h3v15l6 -13h4l5 13v-15zM1947 16v-2h-2h-3v3h3h2v-1zM1947 7h3l-4 5h2l1 1q1 1 1 3t-1 3l-1 1h-3h-6v-13h3v5h1zM685 75q0 19 11 31t30 12q18 0 29 -12.5t11 -30.5q0 -19 -11 -31t-29 -12q-19 0 -30 12t-11 31zM1158 119q30 0 35 -32
h-70q5 32 35 32zM1514 75q0 19 11 31t29 12t29.5 -12.5t11.5 -30.5q0 -19 -11 -31t-30 -12q-18 0 -29 12t-11 31zM1786 75q0 18 11.5 30.5t29.5 12.5t29.5 -12.5t11.5 -30.5q0 -19 -11.5 -31t-29.5 -12t-29.5 12.5t-11.5 30.5zM1944 3q-2 0 -4 1q-1 0 -3 2t-2 3q-1 2 -1 4
q0 3 1 4q0 2 2 4l1 1q2 0 2 1q2 1 4 1q3 0 4 -1l4 -2l2 -4v-1q1 -2 1 -3l-1 -1v-3t-1 -1l-1 -2q-2 -2 -4 -2q-1 -1 -4 -1zM599 7h30v85q0 24 -14.5 38.5t-39.5 15.5q-32 0 -47 -24q-14 24 -45 24q-24 0 -39 -20v16h-30v-135h30v75q0 36 33 36q30 0 30 -36v-75h29v75
q0 36 33 36q30 0 30 -36v-75zM765 7h29v68v67h-29v-16q-17 20 -43 20q-29 0 -48 -20t-19 -51t19 -51t48 -20q28 0 43 20v-17zM943 48q0 34 -47 40l-14 2q-23 4 -23 14q0 15 25 15q23 0 43 -11l12 24q-22 14 -55 14q-26 0 -41 -12t-15 -32q0 -33 47 -39l13 -2q24 -4 24 -14
q0 -17 -31 -17q-25 0 -45 14l-13 -23q25 -17 58 -17q29 0 45.5 12t16.5 32zM1073 14l-8 25q-13 -7 -26 -7q-19 0 -19 22v61h48v27h-48v41h-30v-41h-28v-27h28v-61q0 -50 47 -50q21 0 36 10zM1159 146q-29 0 -48 -20t-19 -51q0 -32 19.5 -51.5t49.5 -19.5q33 0 55 19l-14 22
q-18 -15 -39 -15q-34 0 -41 33h101v12q0 32 -18 51.5t-46 19.5zM1318 146q-23 0 -35 -20v16h-30v-135h30v76q0 35 29 35q10 0 18 -4l9 28q-9 4 -21 4zM1348 75q0 -31 19.5 -51t52.5 -20q29 0 48 16l-14 24q-18 -13 -35 -12q-18 0 -29.5 12t-11.5 31t11.5 31t29.5 12
q19 0 35 -12l14 24q-20 16 -48 16q-33 0 -52.5 -20t-19.5 -51zM1593 7h30v68v67h-30v-16q-15 20 -42 20q-29 0 -48.5 -20t-19.5 -51t19.5 -51t48.5 -20q28 0 42 20v-17zM1726 146q-23 0 -35 -20v16h-29v-135h29v76q0 35 29 35q10 0 18 -4l9 28q-8 4 -21 4zM1866 7h29v68v122
h-29v-71q-15 20 -43 20t-47.5 -20.5t-19.5 -50.5t19.5 -50.5t47.5 -20.5q29 0 43 20v-17zM1944 27l-2 -1h-3q-2 -1 -4 -3q-3 -1 -3 -4q-1 -2 -1 -6q0 -3 1 -5q0 -2 3 -4q2 -2 4 -3t5 -1q4 0 6 1q0 1 2 2l2 1q1 1 3 4q1 2 1 5q0 4 -1 6q-1 1 -3 4q0 1 -2 2l-2 1q-1 0 -3 0.5
t-3 0.5zM2304 1280v-1280q0 -52 -38 -90t-90 -38h-2048q-52 0 -90 38t-38 90v1280q0 52 38 90t90 38h2048q52 0 90 -38t38 -90z" />
    <glyph glyph-name="_467" unicode="&#xf1f2;" horiz-adv-x="2304" 
d="M313 759q0 -51 -36 -84q-29 -26 -89 -26h-17v220h17q61 0 89 -27q36 -31 36 -83zM2089 824q0 -52 -64 -52h-19v101h20q63 0 63 -49zM380 759q0 74 -50 120.5t-129 46.5h-95v-333h95q74 0 119 38q60 51 60 128zM410 593h65v333h-65v-333zM730 694q0 40 -20.5 62t-75.5 42
q-29 10 -39.5 19t-10.5 23q0 16 13.5 26.5t34.5 10.5q29 0 53 -27l34 44q-41 37 -98 37q-44 0 -74 -27.5t-30 -67.5q0 -35 18 -55.5t64 -36.5q37 -13 45 -19q19 -12 19 -34q0 -20 -14 -33.5t-36 -13.5q-48 0 -71 44l-42 -40q44 -64 115 -64q51 0 83 30.5t32 79.5zM1008 604
v77q-37 -37 -78 -37q-49 0 -80.5 32.5t-31.5 82.5q0 48 31.5 81.5t77.5 33.5q43 0 81 -38v77q-40 20 -80 20q-74 0 -125.5 -50.5t-51.5 -123.5t51 -123.5t125 -50.5q42 0 81 19zM2240 0v527q-65 -40 -144.5 -84t-237.5 -117t-329.5 -137.5t-417.5 -134.5t-504 -118h1569
q26 0 45 19t19 45zM1389 757q0 75 -53 128t-128 53t-128 -53t-53 -128t53 -128t128 -53t128 53t53 128zM1541 584l144 342h-71l-90 -224l-89 224h-71l142 -342h35zM1714 593h184v56h-119v90h115v56h-115v74h119v57h-184v-333zM2105 593h80l-105 140q76 16 76 94q0 47 -31 73
t-87 26h-97v-333h65v133h9zM2304 1274v-1268q0 -56 -38.5 -95t-93.5 -39h-2040q-55 0 -93.5 39t-38.5 95v1268q0 56 38.5 95t93.5 39h2040q55 0 93.5 -39t38.5 -95z" />
    <glyph glyph-name="f1f3" unicode="&#xf1f3;" horiz-adv-x="2304" 
d="M119 854h89l-45 108zM740 328l74 79l-70 79h-163v-49h142v-55h-142v-54h159zM898 406l99 -110v217zM1186 453q0 33 -40 33h-84v-69h83q41 0 41 36zM1475 457q0 29 -42 29h-82v-61h81q43 0 43 32zM1197 923q0 29 -42 29h-82v-60h81q43 0 43 31zM1656 854h89l-44 108z
M699 1009v-271h-66v212l-94 -212h-57l-94 212v-212h-132l-25 60h-135l-25 -60h-70l116 271h96l110 -257v257h106l85 -184l77 184h108zM1255 453q0 -20 -5.5 -35t-14 -25t-22.5 -16.5t-26 -10t-31.5 -4.5t-31.5 -1t-32.5 0.5t-29.5 0.5v-91h-126l-80 90l-83 -90h-256v271h260
l80 -89l82 89h207q109 0 109 -89zM964 794v-56h-217v271h217v-57h-152v-49h148v-55h-148v-54h152zM2304 235v-229q0 -55 -38.5 -94.5t-93.5 -39.5h-2040q-55 0 -93.5 39.5t-38.5 94.5v678h111l25 61h55l25 -61h218v46l19 -46h113l20 47v-47h541v99l10 1q10 0 10 -14v-86h279
v23q23 -12 55 -18t52.5 -6.5t63 0.5t51.5 1l25 61h56l25 -61h227v58l34 -58h182v378h-180v-44l-25 44h-185v-44l-23 44h-249q-69 0 -109 -22v22h-172v-22q-24 22 -73 22h-628l-43 -97l-43 97h-198v-44l-22 44h-169l-78 -179v391q0 55 38.5 94.5t93.5 39.5h2040
q55 0 93.5 -39.5t38.5 -94.5v-678h-120q-51 0 -81 -22v22h-177q-55 0 -78 -22v22h-316v-22q-31 22 -87 22h-209v-22q-23 22 -91 22h-234l-54 -58l-50 58h-349v-378h343l55 59l52 -59h211v89h21q59 0 90 13v-102h174v99h8q8 0 10 -2t2 -10v-87h529q57 0 88 24v-24h168
q60 0 95 17zM1546 469q0 -23 -12 -43t-34 -29q25 -9 34 -26t9 -46v-54h-65v45q0 33 -12 43.5t-46 10.5h-69v-99h-65v271h154q48 0 77 -15t29 -58zM1269 936q0 -24 -12.5 -44t-33.5 -29q26 -9 34.5 -25.5t8.5 -46.5v-53h-65q0 9 0.5 26.5t0 25t-3 18.5t-8.5 16t-17.5 8.5
t-29.5 3.5h-70v-98h-64v271l153 -1q49 0 78 -14.5t29 -57.5zM1798 327v-56h-216v271h216v-56h-151v-49h148v-55h-148v-54zM1372 1009v-271h-66v271h66zM2065 357q0 -86 -102 -86h-126v58h126q34 0 34 25q0 16 -17 21t-41.5 5t-49.5 3.5t-42 22.5t-17 55q0 39 26 60t66 21
h130v-57h-119q-36 0 -36 -25q0 -16 17.5 -20.5t42 -4t49 -2.5t42 -21.5t17.5 -54.5zM2304 407v-101q-24 -35 -88 -35h-125v58h125q33 0 33 25q0 13 -12.5 19t-31 5.5t-40 2t-40 8t-31 24t-12.5 48.5q0 39 26.5 60t66.5 21h129v-57h-118q-36 0 -36 -25q0 -20 29 -22t68.5 -5
t56.5 -26zM2139 1008v-270h-92l-122 203v-203h-132l-26 60h-134l-25 -60h-75q-129 0 -129 133q0 138 133 138h63v-59q-7 0 -28 1t-28.5 0.5t-23 -2t-21.5 -6.5t-14.5 -13.5t-11.5 -23t-3 -33.5q0 -38 13.5 -58t49.5 -20h29l92 213h97l109 -256v256h99l114 -188v188h66z" />
    <glyph glyph-name="_469" unicode="&#xf1f4;" horiz-adv-x="2304" 
d="M745 630q0 -37 -25.5 -61.5t-62.5 -24.5q-29 0 -46.5 16t-17.5 44q0 37 25 62.5t62 25.5q28 0 46.5 -16.5t18.5 -45.5zM1530 779q0 -42 -22 -57t-66 -15l-32 -1l17 107q2 11 13 11h18q22 0 35 -2t25 -12.5t12 -30.5zM1881 630q0 -36 -25.5 -61t-61.5 -25q-29 0 -47 16
t-18 44q0 37 25 62.5t62 25.5q28 0 46.5 -16.5t18.5 -45.5zM513 801q0 59 -38.5 85.5t-100.5 26.5h-160q-19 0 -21 -19l-65 -408q-1 -6 3 -11t10 -5h76q20 0 22 19l18 110q1 8 7 13t15 6.5t17 1.5t19 -1t14 -1q86 0 135 48.5t49 134.5zM822 489l41 261q1 6 -3 11t-10 5h-76
q-14 0 -17 -33q-27 40 -95 40q-72 0 -122.5 -54t-50.5 -127q0 -59 34.5 -94t92.5 -35q28 0 58 12t48 32q-4 -12 -4 -21q0 -16 13 -16h69q19 0 22 19zM1269 752q0 5 -4 9.5t-9 4.5h-77q-11 0 -18 -10l-106 -156l-44 150q-5 16 -22 16h-75q-5 0 -9 -4.5t-4 -9.5q0 -2 19.5 -59
t42 -123t23.5 -70q-82 -112 -82 -120q0 -13 13 -13h77q11 0 18 10l255 368q2 2 2 7zM1649 801q0 59 -38.5 85.5t-100.5 26.5h-159q-20 0 -22 -19l-65 -408q-1 -6 3 -11t10 -5h82q12 0 16 13l18 116q1 8 7 13t15 6.5t17 1.5t19 -1t14 -1q86 0 135 48.5t49 134.5zM1958 489
l41 261q1 6 -3 11t-10 5h-76q-14 0 -17 -33q-26 40 -95 40q-72 0 -122.5 -54t-50.5 -127q0 -59 34.5 -94t92.5 -35q29 0 59 12t47 32q0 -1 -2 -9t-2 -12q0 -16 13 -16h69q19 0 22 19zM2176 898v1q0 14 -13 14h-74q-11 0 -13 -11l-65 -416l-1 -2q0 -5 4 -9.5t10 -4.5h66
q19 0 21 19zM392 764q-5 -35 -26 -46t-60 -11l-33 -1l17 107q2 11 13 11h19q40 0 58 -11.5t12 -48.5zM2304 1280v-1280q0 -52 -38 -90t-90 -38h-2048q-52 0 -90 38t-38 90v1280q0 52 38 90t90 38h2048q52 0 90 -38t38 -90z" />
    <glyph glyph-name="_470" unicode="&#xf1f5;" horiz-adv-x="2304" 
d="M1597 633q0 -69 -21 -106q-19 -35 -52 -35q-23 0 -41 9v224q29 30 57 30q57 0 57 -122zM2035 669h-110q6 98 56 98q51 0 54 -98zM476 534q0 59 -33 91.5t-101 57.5q-36 13 -52 24t-16 25q0 26 38 26q58 0 124 -33l18 112q-67 32 -149 32q-77 0 -123 -38q-48 -39 -48 -109
q0 -58 32.5 -90.5t99.5 -56.5q39 -14 54.5 -25.5t15.5 -27.5q0 -31 -48 -31q-29 0 -70 12.5t-72 30.5l-18 -113q72 -41 168 -41q81 0 129 37q51 41 51 117zM771 749l19 111h-96v135l-129 -21l-18 -114l-46 -8l-17 -103h62v-219q0 -84 44 -120q38 -30 111 -30q32 0 79 11v118
q-32 -7 -44 -7q-42 0 -42 50v197h77zM1087 724v139q-15 3 -28 3q-32 0 -55.5 -16t-33.5 -46l-10 56h-131v-471h150v306q26 31 82 31q16 0 26 -2zM1124 389h150v471h-150v-471zM1746 638q0 122 -45 179q-40 52 -111 52q-64 0 -117 -56l-8 47h-132v-645l150 25v151
q36 -11 68 -11q83 0 134 56q61 65 61 202zM1278 986q0 33 -23 56t-56 23t-56 -23t-23 -56t23 -56.5t56 -23.5t56 23.5t23 56.5zM2176 629q0 113 -48 176q-50 64 -144 64q-96 0 -151.5 -66t-55.5 -180q0 -128 63 -188q55 -55 161 -55q101 0 160 40l-16 103q-57 -31 -128 -31
q-43 0 -63 19q-23 19 -28 66h248q2 14 2 52zM2304 1280v-1280q0 -52 -38 -90t-90 -38h-2048q-52 0 -90 38t-38 90v1280q0 52 38 90t90 38h2048q52 0 90 -38t38 -90z" />
    <glyph glyph-name="_471" unicode="&#xf1f6;" horiz-adv-x="2048" 
d="M1558 684q61 -356 298 -556q0 -52 -38 -90t-90 -38h-448q0 -106 -75 -181t-181 -75t-180.5 74.5t-75.5 180.5zM1024 -176q16 0 16 16t-16 16q-59 0 -101.5 42.5t-42.5 101.5q0 16 -16 16t-16 -16q0 -73 51.5 -124.5t124.5 -51.5zM2026 1424q8 -10 7.5 -23.5t-10.5 -22.5
l-1872 -1622q-10 -8 -23.5 -7t-21.5 11l-84 96q-8 10 -7.5 23.5t10.5 21.5l186 161q-19 32 -19 66q50 42 91 88t85 119.5t74.5 158.5t50 206t19.5 260q0 152 117 282.5t307 158.5q-8 19 -8 39q0 40 28 68t68 28t68 -28t28 -68q0 -20 -8 -39q124 -18 219 -82.5t148 -157.5
l418 363q10 8 23.5 7t21.5 -11z" />
    <glyph glyph-name="_472" unicode="&#xf1f7;" horiz-adv-x="2048" 
d="M1040 -160q0 16 -16 16q-59 0 -101.5 42.5t-42.5 101.5q0 16 -16 16t-16 -16q0 -73 51.5 -124.5t124.5 -51.5q16 0 16 16zM503 315l877 760q-42 88 -132.5 146.5t-223.5 58.5q-93 0 -169.5 -31.5t-121.5 -80.5t-69 -103t-24 -105q0 -384 -137 -645zM1856 128
q0 -52 -38 -90t-90 -38h-448q0 -106 -75 -181t-181 -75t-180.5 74.5t-75.5 180.5l149 129h757q-166 187 -227 459l111 97q61 -356 298 -556zM1942 1520l84 -96q8 -10 7.5 -23.5t-10.5 -22.5l-1872 -1622q-10 -8 -23.5 -7t-21.5 11l-84 96q-8 10 -7.5 23.5t10.5 21.5l186 161
q-19 32 -19 66q50 42 91 88t85 119.5t74.5 158.5t50 206t19.5 260q0 152 117 282.5t307 158.5q-8 19 -8 39q0 40 28 68t68 28t68 -28t28 -68q0 -20 -8 -39q124 -18 219 -82.5t148 -157.5l418 363q10 8 23.5 7t21.5 -11z" />
    <glyph glyph-name="_473" unicode="&#xf1f8;" horiz-adv-x="1408" 
d="M512 160v704q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-704q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM768 160v704q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-704q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1024 160v704q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-704
q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM480 1152h448l-48 117q-7 9 -17 11h-317q-10 -2 -17 -11zM1408 1120v-64q0 -14 -9 -23t-23 -9h-96v-948q0 -83 -47 -143.5t-113 -60.5h-832q-66 0 -113 58.5t-47 141.5v952h-96q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h309l70 167
q15 37 54 63t79 26h320q40 0 79 -26t54 -63l70 -167h309q14 0 23 -9t9 -23z" />
    <glyph glyph-name="_474" unicode="&#xf1f9;" 
d="M1150 462v-109q0 -50 -36.5 -89t-94 -60.5t-118 -32.5t-117.5 -11q-205 0 -342.5 139t-137.5 346q0 203 136 339t339 136q34 0 75.5 -4.5t93 -18t92.5 -34t69 -56.5t28 -81v-109q0 -16 -16 -16h-118q-16 0 -16 16v70q0 43 -65.5 67.5t-137.5 24.5q-140 0 -228.5 -91.5
t-88.5 -237.5q0 -151 91.5 -249.5t233.5 -98.5q68 0 138 24t70 66v70q0 7 4.5 11.5t10.5 4.5h119q6 0 11 -4.5t5 -11.5zM768 1280q-130 0 -248.5 -51t-204 -136.5t-136.5 -204t-51 -248.5t51 -248.5t136.5 -204t204 -136.5t248.5 -51t248.5 51t204 136.5t136.5 204t51 248.5
t-51 248.5t-136.5 204t-204 136.5t-248.5 51zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="_475" unicode="&#xf1fa;" 
d="M972 761q0 108 -53.5 169t-147.5 61q-63 0 -124 -30.5t-110 -84.5t-79.5 -137t-30.5 -180q0 -112 53.5 -173t150.5 -61q96 0 176 66.5t122.5 166t42.5 203.5zM1536 640q0 -111 -37 -197t-98.5 -135t-131.5 -74.5t-145 -27.5q-6 0 -15.5 -0.5t-16.5 -0.5q-95 0 -142 53
q-28 33 -33 83q-52 -66 -131.5 -110t-173.5 -44q-161 0 -249.5 95.5t-88.5 269.5q0 157 66 290t179 210.5t246 77.5q87 0 155 -35.5t106 -99.5l2 19l11 56q1 6 5.5 12t9.5 6h118q5 0 13 -11q5 -5 3 -16l-120 -614q-5 -24 -5 -48q0 -39 12.5 -52t44.5 -13q28 1 57 5.5t73 24
t77 50t57 89.5t24 137q0 292 -174 466t-466 174q-130 0 -248.5 -51t-204 -136.5t-136.5 -204t-51 -248.5t51 -248.5t136.5 -204t204 -136.5t248.5 -51q228 0 405 144q11 9 24 8t21 -12l41 -49q8 -12 7 -24q-2 -13 -12 -22q-102 -83 -227.5 -128t-258.5 -45q-156 0 -298 61
t-245 164t-164 245t-61 298t61 298t164 245t245 164t298 61q344 0 556 -212t212 -556z" />
    <glyph glyph-name="_476" unicode="&#xf1fb;" horiz-adv-x="1792" 
d="M1698 1442q94 -94 94 -226.5t-94 -225.5l-225 -223l104 -104q10 -10 10 -23t-10 -23l-210 -210q-10 -10 -23 -10t-23 10l-105 105l-603 -603q-37 -37 -90 -37h-203l-256 -128l-64 64l128 256v203q0 53 37 90l603 603l-105 105q-10 10 -10 23t10 23l210 210q10 10 23 10
t23 -10l104 -104l223 225q93 94 225.5 94t226.5 -94zM512 64l576 576l-192 192l-576 -576v-192h192z" />
    <glyph glyph-name="f1fc" unicode="&#xf1fc;" horiz-adv-x="1792" 
d="M1615 1536q70 0 122.5 -46.5t52.5 -116.5q0 -63 -45 -151q-332 -629 -465 -752q-97 -91 -218 -91q-126 0 -216.5 92.5t-90.5 219.5q0 128 92 212l638 579q59 54 130 54zM706 502q39 -76 106.5 -130t150.5 -76l1 -71q4 -213 -129.5 -347t-348.5 -134q-123 0 -218 46.5
t-152.5 127.5t-86.5 183t-29 220q7 -5 41 -30t62 -44.5t59 -36.5t46 -17q41 0 55 37q25 66 57.5 112.5t69.5 76t88 47.5t103 25.5t125 10.5z" />
    <glyph glyph-name="_478" unicode="&#xf1fd;" horiz-adv-x="1792" 
d="M1792 128v-384h-1792v384q45 0 85 14t59 27.5t47 37.5q30 27 51.5 38t56.5 11q24 0 44 -7t31 -15t33 -27q29 -25 47 -38t58 -27t86 -14q45 0 85 14.5t58 27t48 37.5q21 19 32.5 27t31 15t43.5 7q35 0 56.5 -11t51.5 -38q28 -24 47 -37.5t59 -27.5t85 -14t85 14t59 27.5
t47 37.5q30 27 51.5 38t56.5 11q34 0 55.5 -11t51.5 -38q28 -24 47 -37.5t59 -27.5t85 -14zM1792 448v-192q-24 0 -44 7t-31 15t-33 27q-29 25 -47 38t-58 27t-85 14q-46 0 -86 -14t-58 -27t-47 -38q-22 -19 -33 -27t-31 -15t-44 -7q-35 0 -56.5 11t-51.5 38q-29 25 -47 38
t-58 27t-86 14q-45 0 -85 -14.5t-58 -27t-48 -37.5q-21 -19 -32.5 -27t-31 -15t-43.5 -7q-35 0 -56.5 11t-51.5 38q-28 24 -47 37.5t-59 27.5t-85 14q-46 0 -86 -14t-58 -27t-47 -38q-30 -27 -51.5 -38t-56.5 -11v192q0 80 56 136t136 56h64v448h256v-448h256v448h256v-448
h256v448h256v-448h64q80 0 136 -56t56 -136zM512 1312q0 -77 -36 -118.5t-92 -41.5q-53 0 -90.5 37.5t-37.5 90.5q0 29 9.5 51t23.5 34t31 28t31 31.5t23.5 44.5t9.5 67q38 0 83 -74t45 -150zM1024 1312q0 -77 -36 -118.5t-92 -41.5q-53 0 -90.5 37.5t-37.5 90.5
q0 29 9.5 51t23.5 34t31 28t31 31.5t23.5 44.5t9.5 67q38 0 83 -74t45 -150zM1536 1312q0 -77 -36 -118.5t-92 -41.5q-53 0 -90.5 37.5t-37.5 90.5q0 29 9.5 51t23.5 34t31 28t31 31.5t23.5 44.5t9.5 67q38 0 83 -74t45 -150z" />
    <glyph glyph-name="_479" unicode="&#xf1fe;" horiz-adv-x="2048" 
d="M2048 0v-128h-2048v1536h128v-1408h1920zM1664 1024l256 -896h-1664v576l448 576l576 -576z" />
    <glyph glyph-name="_480" unicode="&#xf200;" horiz-adv-x="1792" 
d="M768 646l546 -546q-106 -108 -247.5 -168t-298.5 -60q-209 0 -385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103v-762zM955 640h773q0 -157 -60 -298.5t-168 -247.5zM1664 768h-768v768q209 0 385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="_481" unicode="&#xf201;" horiz-adv-x="2048" 
d="M2048 0v-128h-2048v1536h128v-1408h1920zM1920 1248v-435q0 -21 -19.5 -29.5t-35.5 7.5l-121 121l-633 -633q-10 -10 -23 -10t-23 10l-233 233l-416 -416l-192 192l585 585q10 10 23 10t23 -10l233 -233l464 464l-121 121q-16 16 -7.5 35.5t29.5 19.5h435q14 0 23 -9
t9 -23z" />
    <glyph glyph-name="_482" unicode="&#xf202;" horiz-adv-x="1792" 
d="M1292 832q0 -6 10 -41q10 -29 25 -49.5t41 -34t44 -20t55 -16.5q325 -91 325 -332q0 -146 -105.5 -242.5t-254.5 -96.5q-59 0 -111.5 18.5t-91.5 45.5t-77 74.5t-63 87.5t-53.5 103.5t-43.5 103t-39.5 106.5t-35.5 95q-32 81 -61.5 133.5t-73.5 96.5t-104 64t-142 20
q-96 0 -183 -55.5t-138 -144.5t-51 -185q0 -160 106.5 -279.5t263.5 -119.5q177 0 258 95q56 63 83 116l84 -152q-15 -34 -44 -70l1 -1q-131 -152 -388 -152q-147 0 -269.5 79t-190.5 207.5t-68 274.5q0 105 43.5 206t116 176.5t172 121.5t204.5 46q87 0 159 -19t123.5 -50
t95 -80t72.5 -99t58.5 -117t50.5 -124.5t50 -130.5t55 -127q96 -200 233 -200q81 0 138.5 48.5t57.5 128.5q0 42 -19 72t-50.5 46t-72.5 31.5t-84.5 27t-87.5 34t-81 52t-65 82t-39 122.5q-3 16 -3 33q0 110 87.5 192t198.5 78q78 -3 120.5 -14.5t90.5 -53.5h-1
q12 -11 23 -24.5t26 -36t19 -27.5l-129 -99q-26 49 -54 70v1q-23 21 -97 21q-49 0 -84 -33t-35 -83z" />
    <glyph glyph-name="_483" unicode="&#xf203;" 
d="M1432 484q0 173 -234 239q-35 10 -53 16.5t-38 25t-29 46.5q0 2 -2 8.5t-3 12t-1 7.5q0 36 24.5 59.5t60.5 23.5q54 0 71 -15h-1q20 -15 39 -51l93 71q-39 54 -49 64q-33 29 -67.5 39t-85.5 10q-80 0 -142 -57.5t-62 -137.5q0 -7 2 -23q16 -96 64.5 -140t148.5 -73
q29 -8 49 -15.5t45 -21.5t38.5 -34.5t13.5 -46.5v-5q1 -58 -40.5 -93t-100.5 -35q-97 0 -167 144q-23 47 -51.5 121.5t-48 125.5t-54 110.5t-74 95.5t-103.5 60.5t-147 24.5q-101 0 -192 -56t-144 -148t-50 -192v-1q4 -108 50.5 -199t133.5 -147.5t196 -56.5q186 0 279 110
q20 27 31 51l-60 109q-42 -80 -99 -116t-146 -36q-115 0 -191 87t-76 204q0 105 82 189t186 84q112 0 170 -53.5t104 -172.5q8 -21 25.5 -68.5t28.5 -76.5t31.5 -74.5t38.5 -74t45.5 -62.5t55.5 -53.5t66 -33t80 -13.5q107 0 183 69.5t76 174.5zM1536 1120v-960
q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" />
    <glyph glyph-name="_484" unicode="&#xf204;" horiz-adv-x="2048" 
d="M1152 640q0 104 -40.5 198.5t-109.5 163.5t-163.5 109.5t-198.5 40.5t-198.5 -40.5t-163.5 -109.5t-109.5 -163.5t-40.5 -198.5t40.5 -198.5t109.5 -163.5t163.5 -109.5t198.5 -40.5t198.5 40.5t163.5 109.5t109.5 163.5t40.5 198.5zM1920 640q0 104 -40.5 198.5
t-109.5 163.5t-163.5 109.5t-198.5 40.5h-386q119 -90 188.5 -224t69.5 -288t-69.5 -288t-188.5 -224h386q104 0 198.5 40.5t163.5 109.5t109.5 163.5t40.5 198.5zM2048 640q0 -130 -51 -248.5t-136.5 -204t-204 -136.5t-248.5 -51h-768q-130 0 -248.5 51t-204 136.5
t-136.5 204t-51 248.5t51 248.5t136.5 204t204 136.5t248.5 51h768q130 0 248.5 -51t204 -136.5t136.5 -204t51 -248.5z" />
    <glyph glyph-name="_485" unicode="&#xf205;" horiz-adv-x="2048" 
d="M0 640q0 130 51 248.5t136.5 204t204 136.5t248.5 51h768q130 0 248.5 -51t204 -136.5t136.5 -204t51 -248.5t-51 -248.5t-136.5 -204t-204 -136.5t-248.5 -51h-768q-130 0 -248.5 51t-204 136.5t-136.5 204t-51 248.5zM1408 128q104 0 198.5 40.5t163.5 109.5
t109.5 163.5t40.5 198.5t-40.5 198.5t-109.5 163.5t-163.5 109.5t-198.5 40.5t-198.5 -40.5t-163.5 -109.5t-109.5 -163.5t-40.5 -198.5t40.5 -198.5t109.5 -163.5t163.5 -109.5t198.5 -40.5z" />
    <glyph glyph-name="_486" unicode="&#xf206;" horiz-adv-x="2304" 
d="M762 384h-314q-40 0 -57.5 35t6.5 67l188 251q-65 31 -137 31q-132 0 -226 -94t-94 -226t94 -226t226 -94q115 0 203 72.5t111 183.5zM576 512h186q-18 85 -75 148zM1056 512l288 384h-480l-99 -132q105 -103 126 -252h165zM2176 448q0 132 -94 226t-226 94
q-60 0 -121 -24l174 -260q15 -23 10 -49t-27 -40q-15 -11 -36 -11q-35 0 -53 29l-174 260q-93 -95 -93 -225q0 -132 94 -226t226 -94t226 94t94 226zM2304 448q0 -185 -131.5 -316.5t-316.5 -131.5t-316.5 131.5t-131.5 316.5q0 97 39.5 183.5t109.5 149.5l-65 98l-353 -469
q-18 -26 -51 -26h-197q-23 -164 -149 -274t-294 -110q-185 0 -316.5 131.5t-131.5 316.5t131.5 316.5t316.5 131.5q114 0 215 -55l137 183h-224q-26 0 -45 19t-19 45t19 45t45 19h384v-128h435l-85 128h-222q-26 0 -45 19t-19 45t19 45t45 19h256q33 0 53 -28l267 -400
q91 44 192 44q185 0 316.5 -131.5t131.5 -316.5z" />
    <glyph glyph-name="_487" unicode="&#xf207;" 
d="M384 320q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1408 320q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1362 716l-72 384q-5 23 -22.5 37.5t-40.5 14.5
h-918q-23 0 -40.5 -14.5t-22.5 -37.5l-72 -384q-5 -30 14 -53t49 -23h1062q30 0 49 23t14 53zM1136 1328q0 20 -14 34t-34 14h-640q-20 0 -34 -14t-14 -34t14 -34t34 -14h640q20 0 34 14t14 34zM1536 603v-603h-128v-128q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5
t-37.5 90.5v128h-768v-128q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5v128h-128v603q0 112 25 223l103 454q9 78 97.5 137t230 89t312.5 30t312.5 -30t230 -89t97.5 -137l105 -454q23 -102 23 -223z" />
    <glyph glyph-name="_488" unicode="&#xf208;" horiz-adv-x="2048" 
d="M1463 704q0 -35 -25 -60.5t-61 -25.5h-702q-36 0 -61 25.5t-25 60.5t25 60.5t61 25.5h702q36 0 61 -25.5t25 -60.5zM1677 704q0 86 -23 170h-982q-36 0 -61 25t-25 60q0 36 25 61t61 25h908q-88 143 -235 227t-320 84q-177 0 -327.5 -87.5t-238 -237.5t-87.5 -327
q0 -86 23 -170h982q36 0 61 -25t25 -60q0 -36 -25 -61t-61 -25h-908q88 -143 235.5 -227t320.5 -84q132 0 253 51.5t208 139t139 208t52 253.5zM2048 959q0 -35 -25 -60t-61 -25h-131q17 -85 17 -170q0 -167 -65.5 -319.5t-175.5 -263t-262.5 -176t-319.5 -65.5
q-246 0 -448.5 133t-301.5 350h-189q-36 0 -61 25t-25 61q0 35 25 60t61 25h132q-17 85 -17 170q0 167 65.5 319.5t175.5 263t262.5 176t320.5 65.5q245 0 447.5 -133t301.5 -350h188q36 0 61 -25t25 -61z" />
    <glyph glyph-name="_489" unicode="&#xf209;" horiz-adv-x="1280" 
d="M953 1158l-114 -328l117 -21q165 451 165 518q0 56 -38 56q-57 0 -130 -225zM654 471l33 -88q37 42 71 67l-33 5.5t-38.5 7t-32.5 8.5zM362 1367q0 -98 159 -521q17 10 49 10q15 0 75 -5l-121 351q-75 220 -123 220q-19 0 -29 -17.5t-10 -37.5zM283 608q0 -36 51.5 -119
t117.5 -153t100 -70q14 0 25.5 13t11.5 27q0 24 -32 102q-13 32 -32 72t-47.5 89t-61.5 81t-62 32q-20 0 -45.5 -27t-25.5 -47zM125 273q0 -41 25 -104q59 -145 183.5 -227t281.5 -82q227 0 382 170q152 169 152 427q0 43 -1 67t-11.5 62t-30.5 56q-56 49 -211.5 75.5
t-270.5 26.5q-37 0 -49 -11q-12 -5 -12 -35q0 -34 21.5 -60t55.5 -40t77.5 -23.5t87.5 -11.5t85 -4t70 0h23q24 0 40 -19q15 -19 19 -55q-28 -28 -96 -54q-61 -22 -93 -46q-64 -46 -108.5 -114t-44.5 -137q0 -31 18.5 -88.5t18.5 -87.5l-3 -12q-4 -12 -4 -14
q-137 10 -146 216q-8 -2 -41 -2q2 -7 2 -21q0 -53 -40.5 -89.5t-94.5 -36.5q-82 0 -166.5 78t-84.5 159q0 34 33 67q52 -64 60 -76q77 -104 133 -104q12 0 26.5 8.5t14.5 20.5q0 34 -87.5 145t-116.5 111q-43 0 -70 -44.5t-27 -90.5zM11 264q0 101 42.5 163t136.5 88
q-28 74 -28 104q0 62 61 123t122 61q29 0 70 -15q-163 462 -163 567q0 80 41 130.5t119 50.5q131 0 325 -581q6 -17 8 -23q6 16 29 79.5t43.5 118.5t54 127.5t64.5 123t70.5 86.5t76.5 36q71 0 112 -49t41 -122q0 -108 -159 -550q61 -15 100.5 -46t58.5 -78t26 -93.5
t7 -110.5q0 -150 -47 -280t-132 -225t-211 -150t-278 -55q-111 0 -223 42q-149 57 -258 191.5t-109 286.5z" />
    <glyph glyph-name="_490" unicode="&#xf20a;" horiz-adv-x="2048" 
d="M785 528h207q-14 -158 -98.5 -248.5t-214.5 -90.5q-162 0 -254.5 116t-92.5 316q0 194 93 311.5t233 117.5q148 0 232 -87t97 -247h-203q-5 64 -35.5 99t-81.5 35q-57 0 -88.5 -60.5t-31.5 -177.5q0 -48 5 -84t18 -69.5t40 -51.5t66 -18q95 0 109 139zM1497 528h206
q-14 -158 -98 -248.5t-214 -90.5q-162 0 -254.5 116t-92.5 316q0 194 93 311.5t233 117.5q148 0 232 -87t97 -247h-204q-4 64 -35 99t-81 35q-57 0 -88.5 -60.5t-31.5 -177.5q0 -48 5 -84t18 -69.5t39.5 -51.5t65.5 -18q49 0 76.5 38t33.5 101zM1856 647q0 207 -15.5 307
t-60.5 161q-6 8 -13.5 14t-21.5 15t-16 11q-86 63 -697 63q-625 0 -710 -63q-5 -4 -17.5 -11.5t-21 -14t-14.5 -14.5q-45 -60 -60 -159.5t-15 -308.5q0 -208 15 -307.5t60 -160.5q6 -8 15 -15t20.5 -14t17.5 -12q44 -33 239.5 -49t470.5 -16q610 0 697 65q5 4 17 11t20.5 14
t13.5 16q46 60 61 159t15 309zM2048 1408v-1536h-2048v1536h2048z" />
    <glyph glyph-name="_491" unicode="&#xf20b;" 
d="M992 912v-496q0 -14 -9 -23t-23 -9h-160q-14 0 -23 9t-9 23v496q0 112 -80 192t-192 80h-272v-1152q0 -14 -9 -23t-23 -9h-160q-14 0 -23 9t-9 23v1344q0 14 9 23t23 9h464q135 0 249 -66.5t180.5 -180.5t66.5 -249zM1376 1376v-880q0 -135 -66.5 -249t-180.5 -180.5
t-249 -66.5h-464q-14 0 -23 9t-9 23v960q0 14 9 23t23 9h160q14 0 23 -9t9 -23v-768h272q112 0 192 80t80 192v880q0 14 9 23t23 9h160q14 0 23 -9t9 -23z" />
    <glyph glyph-name="_492" unicode="&#xf20c;" 
d="M1311 694v-114q0 -24 -13.5 -38t-37.5 -14h-202q-24 0 -38 14t-14 38v114q0 24 14 38t38 14h202q24 0 37.5 -14t13.5 -38zM821 464v250q0 53 -32.5 85.5t-85.5 32.5h-133q-68 0 -96 -52q-28 52 -96 52h-130q-53 0 -85.5 -32.5t-32.5 -85.5v-250q0 -22 21 -22h55
q22 0 22 22v230q0 24 13.5 38t38.5 14h94q24 0 38 -14t14 -38v-230q0 -22 21 -22h54q22 0 22 22v230q0 24 14 38t38 14h97q24 0 37.5 -14t13.5 -38v-230q0 -22 22 -22h55q21 0 21 22zM1410 560v154q0 53 -33 85.5t-86 32.5h-264q-53 0 -86 -32.5t-33 -85.5v-410
q0 -21 22 -21h55q21 0 21 21v180q31 -42 94 -42h191q53 0 86 32.5t33 85.5zM1536 1176v-1072q0 -96 -68 -164t-164 -68h-1072q-96 0 -164 68t-68 164v1072q0 96 68 164t164 68h1072q96 0 164 -68t68 -164z" />
    <glyph glyph-name="_493" unicode="&#xf20d;" 
d="M915 450h-294l147 551zM1001 128h311l-324 1024h-440l-324 -1024h311l383 314zM1536 1120v-960q0 -118 -85 -203t-203 -85h-960q-118 0 -203 85t-85 203v960q0 118 85 203t203 85h960q118 0 203 -85t85 -203z" />
    <glyph glyph-name="_494" unicode="&#xf20e;" horiz-adv-x="2048" 
d="M2048 641q0 -21 -13 -36.5t-33 -19.5l-205 -356q3 -9 3 -18q0 -20 -12.5 -35.5t-32.5 -19.5l-193 -337q3 -8 3 -16q0 -23 -16.5 -40t-40.5 -17q-25 0 -41 18h-400q-17 -20 -43 -20t-43 20h-399q-17 -20 -43 -20q-23 0 -40 16.5t-17 40.5q0 8 4 20l-193 335
q-20 4 -32.5 19.5t-12.5 35.5q0 9 3 18l-206 356q-20 5 -32.5 20.5t-12.5 35.5q0 21 13.5 36.5t33.5 19.5l199 344q0 1 -0.5 3t-0.5 3q0 36 34 51l209 363q-4 10 -4 18q0 24 17 40.5t40 16.5q26 0 44 -21h396q16 21 43 21t43 -21h398q18 21 44 21q23 0 40 -16.5t17 -40.5
q0 -6 -4 -18l207 -358q23 -1 39 -17.5t16 -38.5q0 -13 -7 -27l187 -324q19 -4 31.5 -19.5t12.5 -35.5zM1063 -158h389l-342 354h-143l-342 -354h360q18 16 39 16t39 -16zM112 654q1 -4 1 -13q0 -10 -2 -15l208 -360l15 -6l188 199v347l-187 194q-13 -8 -29 -10zM986 1438
h-388l190 -200l554 200h-280q-16 -16 -38 -16t-38 16zM1689 226q1 6 5 11l-64 68l-17 -79h76zM1583 226l22 105l-252 266l-296 -307l63 -64h463zM1495 -142l16 28l65 310h-427l333 -343q8 4 13 5zM578 -158h5l342 354h-373v-335l4 -6q14 -5 22 -13zM552 226h402l64 66
l-309 321l-157 -166v-221zM359 226h163v189l-168 -177q4 -8 5 -12zM358 1051q0 -1 0.5 -2t0.5 -2q0 -16 -8 -29l171 -177v269zM552 1121v-311l153 -157l297 314l-223 236zM556 1425l-4 -8v-264l205 74l-191 201q-6 -2 -10 -3zM1447 1438h-16l-621 -224l213 -225zM1023 946
l-297 -315l311 -319l296 307zM688 634l-136 141v-284zM1038 270l-42 -44h85zM1374 618l238 -251l132 624l-3 5l-1 1zM1718 1018q-8 13 -8 29v2l-216 376q-5 1 -13 5l-437 -463l310 -327zM522 1142v223l-163 -282zM522 196h-163l163 -283v283zM1607 196l-48 -227l130 227h-82
zM1729 266l207 361q-2 10 -2 14q0 1 3 16l-171 296l-129 -612l77 -82q5 3 15 7z" />
    <glyph glyph-name="f210" unicode="&#xf210;" 
d="M0 856q0 131 91.5 226.5t222.5 95.5h742l352 358v-1470q0 -132 -91.5 -227t-222.5 -95h-780q-131 0 -222.5 95t-91.5 227v790zM1232 102l-176 180v425q0 46 -32 79t-78 33h-484q-46 0 -78 -33t-32 -79v-492q0 -46 32.5 -79.5t77.5 -33.5h770z" />
    <glyph glyph-name="_496" unicode="&#xf211;" 
d="M934 1386q-317 -121 -556 -362.5t-358 -560.5q-20 89 -20 176q0 208 102.5 384.5t278.5 279t384 102.5q82 0 169 -19zM1203 1267q93 -65 164 -155q-389 -113 -674.5 -400.5t-396.5 -676.5q-93 72 -155 162q112 386 395 671t667 399zM470 -67q115 356 379.5 622t619.5 384
q40 -92 54 -195q-292 -120 -516 -345t-343 -518q-103 14 -194 52zM1536 -125q-193 50 -367 115q-135 -84 -290 -107q109 205 274 370.5t369 275.5q-21 -152 -101 -284q65 -175 115 -370z" />
    <glyph glyph-name="f212" unicode="&#xf212;" horiz-adv-x="2048" 
d="M1893 1144l155 -1272q-131 0 -257 57q-200 91 -393 91q-226 0 -374 -148q-148 148 -374 148q-193 0 -393 -91q-128 -57 -252 -57h-5l155 1272q224 127 482 127q233 0 387 -106q154 106 387 106q258 0 482 -127zM1398 157q129 0 232 -28.5t260 -93.5l-124 1021
q-171 78 -368 78q-224 0 -374 -141q-150 141 -374 141q-197 0 -368 -78l-124 -1021q105 43 165.5 65t148.5 39.5t178 17.5q202 0 374 -108q172 108 374 108zM1438 191l-55 907q-211 -4 -359 -155q-152 155 -374 155q-176 0 -336 -66l-114 -941q124 51 228.5 76t221.5 25
q209 0 374 -102q172 107 374 102z" />
    <glyph glyph-name="_498" unicode="&#xf213;" horiz-adv-x="2048" 
d="M1500 165v733q0 21 -15 36t-35 15h-93q-20 0 -35 -15t-15 -36v-733q0 -20 15 -35t35 -15h93q20 0 35 15t15 35zM1216 165v531q0 20 -15 35t-35 15h-101q-20 0 -35 -15t-15 -35v-531q0 -20 15 -35t35 -15h101q20 0 35 15t15 35zM924 165v429q0 20 -15 35t-35 15h-101
q-20 0 -35 -15t-15 -35v-429q0 -20 15 -35t35 -15h101q20 0 35 15t15 35zM632 165v362q0 20 -15 35t-35 15h-101q-20 0 -35 -15t-15 -35v-362q0 -20 15 -35t35 -15h101q20 0 35 15t15 35zM2048 311q0 -166 -118 -284t-284 -118h-1244q-166 0 -284 118t-118 284
q0 116 63 214.5t168 148.5q-10 34 -10 73q0 113 80.5 193.5t193.5 80.5q102 0 180 -67q45 183 194 300t338 117q149 0 275 -73.5t199.5 -199.5t73.5 -275q0 -66 -14 -122q135 -33 221 -142.5t86 -247.5z" />
    <glyph glyph-name="_499" unicode="&#xf214;" 
d="M0 1536h1536v-1392l-776 -338l-760 338v1392zM1436 209v926h-1336v-926l661 -294zM1436 1235v201h-1336v-201h1336zM181 937v-115h-37v115h37zM181 789v-115h-37v115h37zM181 641v-115h-37v115h37zM181 493v-115h-37v115h37zM181 345v-115h-37v115h37zM207 202l15 34
l105 -47l-15 -33zM343 142l15 34l105 -46l-15 -34zM478 82l15 34l105 -46l-15 -34zM614 23l15 33l104 -46l-15 -34zM797 10l105 46l15 -33l-105 -47zM932 70l105 46l15 -34l-105 -46zM1068 130l105 46l15 -34l-105 -46zM1203 189l105 47l15 -34l-105 -46zM259 1389v-36h-114
v36h114zM421 1389v-36h-115v36h115zM583 1389v-36h-115v36h115zM744 1389v-36h-114v36h114zM906 1389v-36h-114v36h114zM1068 1389v-36h-115v36h115zM1230 1389v-36h-115v36h115zM1391 1389v-36h-114v36h114zM181 1049v-79h-37v115h115v-36h-78zM421 1085v-36h-115v36h115z
M583 1085v-36h-115v36h115zM744 1085v-36h-114v36h114zM906 1085v-36h-114v36h114zM1068 1085v-36h-115v36h115zM1230 1085v-36h-115v36h115zM1355 970v79h-78v36h115v-115h-37zM1355 822v115h37v-115h-37zM1355 674v115h37v-115h-37zM1355 526v115h37v-115h-37zM1355 378
v115h37v-115h-37zM1355 230v115h37v-115h-37zM760 265q-129 0 -221 91.5t-92 221.5q0 129 92 221t221 92q130 0 221.5 -92t91.5 -221q0 -130 -91.5 -221.5t-221.5 -91.5zM595 646q0 -36 19.5 -56.5t49.5 -25t64 -7t64 -2t49.5 -9t19.5 -30.5q0 -49 -112 -49q-97 0 -123 51
h-3l-31 -63q67 -42 162 -42q29 0 56.5 5t55.5 16t45.5 33t17.5 53q0 46 -27.5 69.5t-67.5 27t-79.5 3t-67 5t-27.5 25.5q0 21 20.5 33t40.5 15t41 3q34 0 70.5 -11t51.5 -34h3l30 58q-3 1 -21 8.5t-22.5 9t-19.5 7t-22 7t-20 4.5t-24 4t-23 1q-29 0 -56.5 -5t-54 -16.5
t-43 -34t-16.5 -53.5z" />
    <glyph glyph-name="_500" unicode="&#xf215;" horiz-adv-x="2048" 
d="M863 504q0 112 -79.5 191.5t-191.5 79.5t-191 -79.5t-79 -191.5t79 -191t191 -79t191.5 79t79.5 191zM1726 505q0 112 -79 191t-191 79t-191.5 -79t-79.5 -191q0 -113 79.5 -192t191.5 -79t191 79.5t79 191.5zM2048 1314v-1348q0 -44 -31.5 -75.5t-76.5 -31.5h-1832
q-45 0 -76.5 31.5t-31.5 75.5v1348q0 44 31.5 75.5t76.5 31.5h431q44 0 76 -31.5t32 -75.5v-161h754v161q0 44 32 75.5t76 31.5h431q45 0 76.5 -31.5t31.5 -75.5z" />
    <glyph glyph-name="_501" unicode="&#xf216;" horiz-adv-x="2048" 
d="M1430 953zM1690 749q148 0 253 -98.5t105 -244.5q0 -157 -109 -261.5t-267 -104.5q-85 0 -162 27.5t-138 73.5t-118 106t-109 126t-103.5 132.5t-108.5 126.5t-117 106t-136 73.5t-159 27.5q-154 0 -251.5 -91.5t-97.5 -244.5q0 -157 104 -250t263 -93q100 0 208 37.5
t193 98.5q5 4 21 18.5t30 24t22 9.5q14 0 24.5 -10.5t10.5 -24.5q0 -24 -60 -77q-101 -88 -234.5 -142t-260.5 -54q-133 0 -245.5 58t-180 165t-67.5 241q0 205 141.5 341t347.5 136q120 0 226.5 -43.5t185.5 -113t151.5 -153t139 -167.5t133.5 -153.5t149.5 -113
t172.5 -43.5q102 0 168.5 61.5t66.5 162.5q0 95 -64.5 159t-159.5 64q-30 0 -81.5 -18.5t-68.5 -18.5q-20 0 -35.5 15t-15.5 35q0 18 8.5 57t8.5 59q0 159 -107.5 263t-266.5 104q-58 0 -111.5 -18.5t-84 -40.5t-55.5 -40.5t-33 -18.5q-15 0 -25.5 10.5t-10.5 25.5
q0 19 25 46q59 67 147 103.5t182 36.5q191 0 318 -125.5t127 -315.5q0 -37 -4 -66q57 15 115 15z" />
    <glyph glyph-name="_502" unicode="&#xf217;" horiz-adv-x="1664" 
d="M1216 832q0 26 -19 45t-45 19h-128v128q0 26 -19 45t-45 19t-45 -19t-19 -45v-128h-128q-26 0 -45 -19t-19 -45t19 -45t45 -19h128v-128q0 -26 19 -45t45 -19t45 19t19 45v128h128q26 0 45 19t19 45zM640 0q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5
t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1536 0q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1664 1088v-512q0 -24 -16 -42.5t-41 -21.5l-1044 -122q1 -7 4.5 -21.5t6 -26.5t2.5 -22q0 -16 -24 -64h920
q26 0 45 -19t19 -45t-19 -45t-45 -19h-1024q-26 0 -45 19t-19 45q0 14 11 39.5t29.5 59.5t20.5 38l-177 823h-204q-26 0 -45 19t-19 45t19 45t45 19h256q16 0 28.5 -6.5t20 -15.5t13 -24.5t7.5 -26.5t5.5 -29.5t4.5 -25.5h1201q26 0 45 -19t19 -45z" />
    <glyph glyph-name="_503" unicode="&#xf218;" horiz-adv-x="1664" 
d="M1280 832q0 26 -19 45t-45 19t-45 -19l-147 -146v293q0 26 -19 45t-45 19t-45 -19t-19 -45v-293l-147 146q-19 19 -45 19t-45 -19t-19 -45t19 -45l256 -256q19 -19 45 -19t45 19l256 256q19 19 19 45zM640 0q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5
t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1536 0q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1664 1088v-512q0 -24 -16 -42.5t-41 -21.5l-1044 -122q1 -7 4.5 -21.5t6 -26.5t2.5 -22q0 -16 -24 -64h920
q26 0 45 -19t19 -45t-19 -45t-45 -19h-1024q-26 0 -45 19t-19 45q0 14 11 39.5t29.5 59.5t20.5 38l-177 823h-204q-26 0 -45 19t-19 45t19 45t45 19h256q16 0 28.5 -6.5t20 -15.5t13 -24.5t7.5 -26.5t5.5 -29.5t4.5 -25.5h1201q26 0 45 -19t19 -45z" />
    <glyph glyph-name="_504" unicode="&#xf219;" horiz-adv-x="2048" 
d="M212 768l623 -665l-300 665h-323zM1024 -4l349 772h-698zM538 896l204 384h-262l-288 -384h346zM1213 103l623 665h-323zM683 896h682l-204 384h-274zM1510 896h346l-288 384h-262zM1651 1382l384 -512q14 -18 13 -41.5t-17 -40.5l-960 -1024q-18 -20 -47 -20t-47 20
l-960 1024q-16 17 -17 40.5t13 41.5l384 512q18 26 51 26h1152q33 0 51 -26z" />
    <glyph glyph-name="_505" unicode="&#xf21a;" horiz-adv-x="2048" 
d="M1811 -19q19 19 45 19t45 -19l128 -128l-90 -90l-83 83l-83 -83q-18 -19 -45 -19t-45 19l-83 83l-83 -83q-19 -19 -45 -19t-45 19l-83 83l-83 -83q-19 -19 -45 -19t-45 19l-83 83l-83 -83q-19 -19 -45 -19t-45 19l-83 83l-83 -83q-19 -19 -45 -19t-45 19l-83 83l-83 -83
q-19 -19 -45 -19t-45 19l-83 83l-83 -83q-19 -19 -45 -19t-45 19l-128 128l90 90l83 -83l83 83q19 19 45 19t45 -19l83 -83l83 83q19 19 45 19t45 -19l83 -83l83 83q19 19 45 19t45 -19l83 -83l83 83q19 19 45 19t45 -19l83 -83l83 83q19 19 45 19t45 -19l83 -83l83 83
q19 19 45 19t45 -19l83 -83zM237 19q-19 -19 -45 -19t-45 19l-128 128l90 90l83 -82l83 82q19 19 45 19t45 -19l83 -82l64 64v293l-210 314q-17 26 -7 56.5t40 40.5l177 58v299h128v128h256v128h256v-128h256v-128h128v-299l177 -58q30 -10 40 -40.5t-7 -56.5l-210 -314
v-293l19 18q19 19 45 19t45 -19l83 -82l83 82q19 19 45 19t45 -19l128 -128l-90 -90l-83 83l-83 -83q-18 -19 -45 -19t-45 19l-83 83l-83 -83q-19 -19 -45 -19t-45 19l-83 83l-83 -83q-19 -19 -45 -19t-45 19l-83 83l-83 -83q-19 -19 -45 -19t-45 19l-83 83l-83 -83
q-19 -19 -45 -19t-45 19l-83 83l-83 -83q-19 -19 -45 -19t-45 19l-83 83zM640 1152v-128l384 128l384 -128v128h-128v128h-512v-128h-128z" />
    <glyph glyph-name="_506" unicode="&#xf21b;" 
d="M576 0l96 448l-96 128l-128 64zM832 0l128 640l-128 -64l-96 -128zM992 1010q-2 4 -4 6q-10 8 -96 8q-70 0 -167 -19q-7 -2 -21 -2t-21 2q-97 19 -167 19q-86 0 -96 -8q-2 -2 -4 -6q2 -18 4 -27q2 -3 7.5 -6.5t7.5 -10.5q2 -4 7.5 -20.5t7 -20.5t7.5 -17t8.5 -17t9 -14
t12 -13.5t14 -9.5t17.5 -8t20.5 -4t24.5 -2q36 0 59 12.5t32.5 30t14.5 34.5t11.5 29.5t17.5 12.5h12q11 0 17.5 -12.5t11.5 -29.5t14.5 -34.5t32.5 -30t59 -12.5q13 0 24.5 2t20.5 4t17.5 8t14 9.5t12 13.5t9 14t8.5 17t7.5 17t7 20.5t7.5 20.5q2 7 7.5 10.5t7.5 6.5
q2 9 4 27zM1408 131q0 -121 -73 -190t-194 -69h-874q-121 0 -194 69t-73 190q0 61 4.5 118t19 125.5t37.5 123.5t63.5 103.5t93.5 74.5l-90 220h214q-22 64 -22 128q0 12 2 32q-194 40 -194 96q0 57 210 99q17 62 51.5 134t70.5 114q32 37 76 37q30 0 84 -31t84 -31t84 31
t84 31q44 0 76 -37q36 -42 70.5 -114t51.5 -134q210 -42 210 -99q0 -56 -194 -96q7 -81 -20 -160h214l-82 -225q63 -33 107.5 -96.5t65.5 -143.5t29 -151.5t8 -148.5z" />
    <glyph glyph-name="_507" unicode="&#xf21c;" horiz-adv-x="2304" 
d="M2301 500q12 -103 -22 -198.5t-99 -163.5t-158.5 -106t-196.5 -31q-161 11 -279.5 125t-134.5 274q-12 111 27.5 210.5t118.5 170.5l-71 107q-96 -80 -151 -194t-55 -244q0 -27 -18.5 -46.5t-45.5 -19.5h-256h-69q-23 -164 -149 -274t-294 -110q-185 0 -316.5 131.5
t-131.5 316.5t131.5 316.5t316.5 131.5q76 0 152 -27l24 45q-123 110 -304 110h-64q-26 0 -45 19t-19 45t19 45t45 19h128q78 0 145 -13.5t116.5 -38.5t71.5 -39.5t51 -36.5h512h115l-85 128h-222q-30 0 -49 22.5t-14 52.5q4 23 23 38t43 15h253q33 0 53 -28l70 -105
l114 114q19 19 46 19h101q26 0 45 -19t19 -45v-128q0 -26 -19 -45t-45 -19h-179l115 -172q131 63 275 36q143 -26 244 -134.5t118 -253.5zM448 128q115 0 203 72.5t111 183.5h-314q-35 0 -55 31q-18 32 -1 63l147 277q-47 13 -91 13q-132 0 -226 -94t-94 -226t94 -226
t226 -94zM1856 128q132 0 226 94t94 226t-94 226t-226 94q-60 0 -121 -24l174 -260q15 -23 10 -49t-27 -40q-15 -11 -36 -11q-35 0 -53 29l-174 260q-93 -95 -93 -225q0 -132 94 -226t226 -94z" />
    <glyph glyph-name="_508" unicode="&#xf21d;" 
d="M1408 0q0 -63 -61.5 -113.5t-164 -81t-225 -46t-253.5 -15.5t-253.5 15.5t-225 46t-164 81t-61.5 113.5q0 49 33 88.5t91 66.5t118 44.5t131 29.5q26 5 48 -10.5t26 -41.5q5 -26 -10.5 -48t-41.5 -26q-58 -10 -106 -23.5t-76.5 -25.5t-48.5 -23.5t-27.5 -19.5t-8.5 -12
q3 -11 27 -26.5t73 -33t114 -32.5t160.5 -25t201.5 -10t201.5 10t160.5 25t114 33t73 33.5t27 27.5q-1 4 -8.5 11t-27.5 19t-48.5 23.5t-76.5 25t-106 23.5q-26 4 -41.5 26t-10.5 48q4 26 26 41.5t48 10.5q71 -12 131 -29.5t118 -44.5t91 -66.5t33 -88.5zM1024 896v-384
q0 -26 -19 -45t-45 -19h-64v-384q0 -26 -19 -45t-45 -19h-256q-26 0 -45 19t-19 45v384h-64q-26 0 -45 19t-19 45v384q0 53 37.5 90.5t90.5 37.5h384q53 0 90.5 -37.5t37.5 -90.5zM928 1280q0 -93 -65.5 -158.5t-158.5 -65.5t-158.5 65.5t-65.5 158.5t65.5 158.5t158.5 65.5
t158.5 -65.5t65.5 -158.5z" />
    <glyph glyph-name="_509" unicode="&#xf21e;" horiz-adv-x="1792" 
d="M1280 512h305q-5 -6 -10 -10.5t-9 -7.5l-3 -4l-623 -600q-18 -18 -44 -18t-44 18l-624 602q-5 2 -21 20h369q22 0 39.5 13.5t22.5 34.5l70 281l190 -667q6 -20 23 -33t39 -13q21 0 38 13t23 33l146 485l56 -112q18 -35 57 -35zM1792 940q0 -145 -103 -300h-369l-111 221
q-8 17 -25.5 27t-36.5 8q-45 -5 -56 -46l-129 -430l-196 686q-6 20 -23.5 33t-39.5 13t-39 -13.5t-22 -34.5l-116 -464h-423q-103 155 -103 300q0 220 127 344t351 124q62 0 126.5 -21.5t120 -58t95.5 -68.5t76 -68q36 36 76 68t95.5 68.5t120 58t126.5 21.5q224 0 351 -124
t127 -344z" />
    <glyph glyph-name="venus" unicode="&#xf221;" horiz-adv-x="1280" 
d="M1152 960q0 -221 -147.5 -384.5t-364.5 -187.5v-260h224q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-224v-224q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v224h-224q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h224v260q-150 16 -271.5 103t-186 224t-52.5 292
q11 134 80.5 249t182 188t245.5 88q170 19 319 -54t236 -212t87 -306zM128 960q0 -185 131.5 -316.5t316.5 -131.5t316.5 131.5t131.5 316.5t-131.5 316.5t-316.5 131.5t-316.5 -131.5t-131.5 -316.5z" />
    <glyph glyph-name="_511" unicode="&#xf222;" 
d="M1472 1408q26 0 45 -19t19 -45v-416q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v262l-382 -383q126 -156 126 -359q0 -117 -45.5 -223.5t-123 -184t-184 -123t-223.5 -45.5t-223.5 45.5t-184 123t-123 184t-45.5 223.5t45.5 223.5t123 184t184 123t223.5 45.5
q203 0 359 -126l382 382h-261q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h416zM576 0q185 0 316.5 131.5t131.5 316.5t-131.5 316.5t-316.5 131.5t-316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5z" />
    <glyph glyph-name="_512" unicode="&#xf223;" horiz-adv-x="1280" 
d="M830 1220q145 -72 233.5 -210.5t88.5 -305.5q0 -221 -147.5 -384.5t-364.5 -187.5v-132h96q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-96v-96q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v96h-96q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h96v132q-217 24 -364.5 187.5
t-147.5 384.5q0 167 88.5 305.5t233.5 210.5q-165 96 -228 273q-6 16 3.5 29.5t26.5 13.5h69q21 0 29 -20q44 -106 140 -171t214 -65t214 65t140 171q8 20 37 20h61q17 0 26.5 -13.5t3.5 -29.5q-63 -177 -228 -273zM576 256q185 0 316.5 131.5t131.5 316.5t-131.5 316.5
t-316.5 131.5t-316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5z" />
    <glyph glyph-name="_513" unicode="&#xf224;" 
d="M1024 1504q0 14 9 23t23 9h288q26 0 45 -19t19 -45v-288q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v134l-254 -255q126 -158 126 -359q0 -221 -147.5 -384.5t-364.5 -187.5v-132h96q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-96v-96q0 -14 -9 -23t-23 -9h-64
q-14 0 -23 9t-9 23v96h-96q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h96v132q-149 16 -270.5 103t-186.5 223.5t-53 291.5q16 204 160 353.5t347 172.5q118 14 228 -19t198 -103l255 254h-134q-14 0 -23 9t-9 23v64zM576 256q185 0 316.5 131.5t131.5 316.5t-131.5 316.5
t-316.5 131.5t-316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5z" />
    <glyph glyph-name="_514" unicode="&#xf225;" horiz-adv-x="1792" 
d="M1280 1504q0 14 9 23t23 9h288q26 0 45 -19t19 -45v-288q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v134l-254 -255q126 -158 126 -359q0 -221 -147.5 -384.5t-364.5 -187.5v-132h96q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-96v-96q0 -14 -9 -23t-23 -9h-64
q-14 0 -23 9t-9 23v96h-96q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h96v132q-217 24 -364.5 187.5t-147.5 384.5q0 201 126 359l-52 53l-101 -111q-9 -10 -22 -10.5t-23 7.5l-48 44q-10 8 -10.5 21.5t8.5 23.5l105 115l-111 112v-134q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9
t-9 23v288q0 26 19 45t45 19h288q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-133l106 -107l86 94q9 10 22 10.5t23 -7.5l48 -44q10 -8 10.5 -21.5t-8.5 -23.5l-90 -99l57 -56q158 126 359 126t359 -126l255 254h-134q-14 0 -23 9t-9 23v64zM832 256q185 0 316.5 131.5
t131.5 316.5t-131.5 316.5t-316.5 131.5t-316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5z" />
    <glyph glyph-name="_515" unicode="&#xf226;" horiz-adv-x="1792" 
d="M1790 1007q12 -155 -52.5 -292t-186 -224t-271.5 -103v-260h224q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-224v-224q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v224h-512v-224q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v224h-224q-14 0 -23 9t-9 23v64q0 14 9 23
t23 9h224v260q-150 16 -271.5 103t-186 224t-52.5 292q17 206 164.5 356.5t352.5 169.5q206 21 377 -94q171 115 377 94q205 -19 352.5 -169.5t164.5 -356.5zM896 647q128 131 128 313t-128 313q-128 -131 -128 -313t128 -313zM576 512q115 0 218 57q-154 165 -154 391
q0 224 154 391q-103 57 -218 57q-185 0 -316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5zM1152 128v260q-137 15 -256 94q-119 -79 -256 -94v-260h512zM1216 512q185 0 316.5 131.5t131.5 316.5t-131.5 316.5t-316.5 131.5q-115 0 -218 -57q154 -167 154 -391
q0 -226 -154 -391q103 -57 218 -57z" />
    <glyph glyph-name="_516" unicode="&#xf227;" horiz-adv-x="1920" 
d="M1536 1120q0 14 9 23t23 9h288q26 0 45 -19t19 -45v-288q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v134l-254 -255q76 -95 107.5 -214t9.5 -247q-31 -182 -166 -312t-318 -156q-210 -29 -384.5 80t-241.5 300q-117 6 -221 57.5t-177.5 133t-113.5 192.5t-32 230
q9 135 78 252t182 191.5t248 89.5q118 14 227.5 -19t198.5 -103l255 254h-134q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h288q26 0 45 -19t19 -45v-288q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v134l-254 -255q59 -74 93 -169q182 -9 328 -124l255 254h-134q-14 0 -23 9
t-9 23v64zM1024 704q0 20 -4 58q-162 -25 -271 -150t-109 -292q0 -20 4 -58q162 25 271 150t109 292zM128 704q0 -168 111 -294t276 -149q-3 29 -3 59q0 210 135 369.5t338 196.5q-53 120 -163.5 193t-245.5 73q-185 0 -316.5 -131.5t-131.5 -316.5zM1088 -128
q185 0 316.5 131.5t131.5 316.5q0 168 -111 294t-276 149q3 -28 3 -59q0 -210 -135 -369.5t-338 -196.5q53 -120 163.5 -193t245.5 -73z" />
    <glyph glyph-name="_517" unicode="&#xf228;" horiz-adv-x="2048" 
d="M1664 1504q0 14 9 23t23 9h288q26 0 45 -19t19 -45v-288q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v134l-254 -255q76 -95 107.5 -214t9.5 -247q-32 -180 -164.5 -310t-313.5 -157q-223 -34 -409 90q-117 -78 -256 -93v-132h96q14 0 23 -9t9 -23v-64q0 -14 -9 -23
t-23 -9h-96v-96q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v96h-96q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h96v132q-155 17 -279.5 109.5t-187 237.5t-39.5 307q25 187 159.5 322.5t320.5 164.5q224 34 410 -90q146 97 320 97q201 0 359 -126l255 254h-134q-14 0 -23 9
t-9 23v64zM896 391q128 131 128 313t-128 313q-128 -131 -128 -313t128 -313zM128 704q0 -185 131.5 -316.5t316.5 -131.5q117 0 218 57q-154 167 -154 391t154 391q-101 57 -218 57q-185 0 -316.5 -131.5t-131.5 -316.5zM1216 256q185 0 316.5 131.5t131.5 316.5
t-131.5 316.5t-316.5 131.5q-117 0 -218 -57q154 -167 154 -391t-154 -391q101 -57 218 -57z" />
    <glyph glyph-name="_518" unicode="&#xf229;" 
d="M1472 1408q26 0 45 -19t19 -45v-416q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v262l-213 -214l140 -140q9 -10 9 -23t-9 -22l-46 -46q-9 -9 -22 -9t-23 9l-140 141l-78 -79q126 -156 126 -359q0 -117 -45.5 -223.5t-123 -184t-184 -123t-223.5 -45.5t-223.5 45.5
t-184 123t-123 184t-45.5 223.5t45.5 223.5t123 184t184 123t223.5 45.5q203 0 359 -126l78 78l-172 172q-9 10 -9 23t9 22l46 46q9 9 22 9t23 -9l172 -172l213 213h-261q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h416zM576 0q185 0 316.5 131.5t131.5 316.5t-131.5 316.5
t-316.5 131.5t-316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5z" />
    <glyph glyph-name="_519" unicode="&#xf22a;" horiz-adv-x="1280" 
d="M640 892q217 -24 364.5 -187.5t147.5 -384.5q0 -167 -87 -306t-236 -212t-319 -54q-133 15 -245.5 88t-182 188t-80.5 249q-12 155 52.5 292t186 224t271.5 103v132h-160q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h160v165l-92 -92q-10 -9 -23 -9t-22 9l-46 46q-9 9 -9 22
t9 23l202 201q19 19 45 19t45 -19l202 -201q9 -10 9 -23t-9 -22l-46 -46q-9 -9 -22 -9t-23 9l-92 92v-165h160q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-160v-132zM576 -128q185 0 316.5 131.5t131.5 316.5t-131.5 316.5t-316.5 131.5t-316.5 -131.5t-131.5 -316.5
t131.5 -316.5t316.5 -131.5z" />
    <glyph glyph-name="_520" unicode="&#xf22b;" horiz-adv-x="2048" 
d="M1901 621q19 -19 19 -45t-19 -45l-294 -294q-9 -10 -22.5 -10t-22.5 10l-45 45q-10 9 -10 22.5t10 22.5l185 185h-294v-224q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v224h-132q-24 -217 -187.5 -364.5t-384.5 -147.5q-167 0 -306 87t-212 236t-54 319q15 133 88 245.5
t188 182t249 80.5q155 12 292 -52.5t224 -186t103 -271.5h132v224q0 14 9 23t23 9h64q14 0 23 -9t9 -23v-224h294l-185 185q-10 9 -10 22.5t10 22.5l45 45q9 10 22.5 10t22.5 -10zM576 128q185 0 316.5 131.5t131.5 316.5t-131.5 316.5t-316.5 131.5t-316.5 -131.5
t-131.5 -316.5t131.5 -316.5t316.5 -131.5z" />
    <glyph glyph-name="_521" unicode="&#xf22c;" horiz-adv-x="1280" 
d="M1152 960q0 -221 -147.5 -384.5t-364.5 -187.5v-612q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v612q-217 24 -364.5 187.5t-147.5 384.5q0 117 45.5 223.5t123 184t184 123t223.5 45.5t223.5 -45.5t184 -123t123 -184t45.5 -223.5zM576 512q185 0 316.5 131.5
t131.5 316.5t-131.5 316.5t-316.5 131.5t-316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5z" />
    <glyph glyph-name="_522" unicode="&#xf22d;" horiz-adv-x="1280" 
d="M1024 576q0 185 -131.5 316.5t-316.5 131.5t-316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5t316.5 131.5t131.5 316.5zM1152 576q0 -117 -45.5 -223.5t-123 -184t-184 -123t-223.5 -45.5t-223.5 45.5t-184 123t-123 184t-45.5 223.5t45.5 223.5t123 184t184 123
t223.5 45.5t223.5 -45.5t184 -123t123 -184t45.5 -223.5z" />
    <glyph glyph-name="_523" unicode="&#xf22e;" horiz-adv-x="1792" 
 />
    <glyph glyph-name="_524" unicode="&#xf22f;" horiz-adv-x="1792" 
 />
    <glyph glyph-name="_525" unicode="&#xf230;" 
d="M1451 1408q35 0 60 -25t25 -60v-1366q0 -35 -25 -60t-60 -25h-391v595h199l30 232h-229v148q0 56 23.5 84t91.5 28l122 1v207q-63 9 -178 9q-136 0 -217.5 -80t-81.5 -226v-171h-200v-232h200v-595h-735q-35 0 -60 25t-25 60v1366q0 35 25 60t60 25h1366z" />
    <glyph glyph-name="_526" unicode="&#xf231;" horiz-adv-x="1280" 
d="M0 939q0 108 37.5 203.5t103.5 166.5t152 123t185 78t202 26q158 0 294 -66.5t221 -193.5t85 -287q0 -96 -19 -188t-60 -177t-100 -149.5t-145 -103t-189 -38.5q-68 0 -135 32t-96 88q-10 -39 -28 -112.5t-23.5 -95t-20.5 -71t-26 -71t-32 -62.5t-46 -77.5t-62 -86.5
l-14 -5l-9 10q-15 157 -15 188q0 92 21.5 206.5t66.5 287.5t52 203q-32 65 -32 169q0 83 52 156t132 73q61 0 95 -40.5t34 -102.5q0 -66 -44 -191t-44 -187q0 -63 45 -104.5t109 -41.5q55 0 102 25t78.5 68t56 95t38 110.5t20 111t6.5 99.5q0 173 -109.5 269.5t-285.5 96.5
q-200 0 -334 -129.5t-134 -328.5q0 -44 12.5 -85t27 -65t27 -45.5t12.5 -30.5q0 -28 -15 -73t-37 -45q-2 0 -17 3q-51 15 -90.5 56t-61 94.5t-32.5 108t-11 106.5z" />
    <glyph glyph-name="_527" unicode="&#xf232;" 
d="M985 562q13 0 97.5 -44t89.5 -53q2 -5 2 -15q0 -33 -17 -76q-16 -39 -71 -65.5t-102 -26.5q-57 0 -190 62q-98 45 -170 118t-148 185q-72 107 -71 194v8q3 91 74 158q24 22 52 22q6 0 18 -1.5t19 -1.5q19 0 26.5 -6.5t15.5 -27.5q8 -20 33 -88t25 -75q0 -21 -34.5 -57.5
t-34.5 -46.5q0 -7 5 -15q34 -73 102 -137q56 -53 151 -101q12 -7 22 -7q15 0 54 48.5t52 48.5zM782 32q127 0 243.5 50t200.5 134t134 200.5t50 243.5t-50 243.5t-134 200.5t-200.5 134t-243.5 50t-243.5 -50t-200.5 -134t-134 -200.5t-50 -243.5q0 -203 120 -368l-79 -233
l242 77q158 -104 345 -104zM782 1414q153 0 292.5 -60t240.5 -161t161 -240.5t60 -292.5t-60 -292.5t-161 -240.5t-240.5 -161t-292.5 -60q-195 0 -365 94l-417 -134l136 405q-108 178 -108 389q0 153 60 292.5t161 240.5t240.5 161t292.5 60z" />
    <glyph glyph-name="_528" unicode="&#xf233;" horiz-adv-x="1792" 
d="M128 128h1024v128h-1024v-128zM128 640h1024v128h-1024v-128zM1696 192q0 40 -28 68t-68 28t-68 -28t-28 -68t28 -68t68 -28t68 28t28 68zM128 1152h1024v128h-1024v-128zM1696 704q0 40 -28 68t-68 28t-68 -28t-28 -68t28 -68t68 -28t68 28t28 68zM1696 1216
q0 40 -28 68t-68 28t-68 -28t-28 -68t28 -68t68 -28t68 28t28 68zM1792 384v-384h-1792v384h1792zM1792 896v-384h-1792v384h1792zM1792 1408v-384h-1792v384h1792z" />
    <glyph glyph-name="_529" unicode="&#xf234;" horiz-adv-x="2048" 
d="M704 640q-159 0 -271.5 112.5t-112.5 271.5t112.5 271.5t271.5 112.5t271.5 -112.5t112.5 -271.5t-112.5 -271.5t-271.5 -112.5zM1664 512h352q13 0 22.5 -9.5t9.5 -22.5v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-352v-352q0 -13 -9.5 -22.5t-22.5 -9.5h-192q-13 0 -22.5 9.5
t-9.5 22.5v352h-352q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h352v352q0 13 9.5 22.5t22.5 9.5h192q13 0 22.5 -9.5t9.5 -22.5v-352zM928 288q0 -52 38 -90t90 -38h256v-238q-68 -50 -171 -50h-874q-121 0 -194 69t-73 190q0 53 3.5 103.5t14 109t26.5 108.5
t43 97.5t62 81t85.5 53.5t111.5 20q19 0 39 -17q79 -61 154.5 -91.5t164.5 -30.5t164.5 30.5t154.5 91.5q20 17 39 17q132 0 217 -96h-223q-52 0 -90 -38t-38 -90v-192z" />
    <glyph glyph-name="_530" unicode="&#xf235;" horiz-adv-x="2048" 
d="M704 640q-159 0 -271.5 112.5t-112.5 271.5t112.5 271.5t271.5 112.5t271.5 -112.5t112.5 -271.5t-112.5 -271.5t-271.5 -112.5zM1781 320l249 -249q9 -9 9 -23q0 -13 -9 -22l-136 -136q-9 -9 -22 -9q-14 0 -23 9l-249 249l-249 -249q-9 -9 -23 -9q-13 0 -22 9l-136 136
q-9 9 -9 22q0 14 9 23l249 249l-249 249q-9 9 -9 23q0 13 9 22l136 136q9 9 22 9q14 0 23 -9l249 -249l249 249q9 9 23 9q13 0 22 -9l136 -136q9 -9 9 -22q0 -14 -9 -23zM1283 320l-181 -181q-37 -37 -37 -91q0 -53 37 -90l83 -83q-21 -3 -44 -3h-874q-121 0 -194 69
t-73 190q0 53 3.5 103.5t14 109t26.5 108.5t43 97.5t62 81t85.5 53.5t111.5 20q19 0 39 -17q154 -122 319 -122t319 122q20 17 39 17q28 0 57 -6q-28 -27 -41 -50t-13 -56q0 -54 37 -91z" />
    <glyph glyph-name="_531" unicode="&#xf236;" horiz-adv-x="2048" 
d="M256 512h1728q26 0 45 -19t19 -45v-448h-256v256h-1536v-256h-256v1216q0 26 19 45t45 19h128q26 0 45 -19t19 -45v-704zM832 832q0 106 -75 181t-181 75t-181 -75t-75 -181t75 -181t181 -75t181 75t75 181zM2048 576v64q0 159 -112.5 271.5t-271.5 112.5h-704
q-26 0 -45 -19t-19 -45v-384h1152z" />
    <glyph glyph-name="_532" unicode="&#xf237;" 
d="M1536 1536l-192 -448h192v-192h-274l-55 -128h329v-192h-411l-357 -832l-357 832h-411v192h329l-55 128h-274v192h192l-192 448h256l323 -768h378l323 768h256zM768 320l108 256h-216z" />
    <glyph glyph-name="_533" unicode="&#xf238;" 
d="M1088 1536q185 0 316.5 -93.5t131.5 -226.5v-896q0 -130 -125.5 -222t-305.5 -97l213 -202q16 -15 8 -35t-30 -20h-1056q-22 0 -30 20t8 35l213 202q-180 5 -305.5 97t-125.5 222v896q0 133 131.5 226.5t316.5 93.5h640zM768 192q80 0 136 56t56 136t-56 136t-136 56
t-136 -56t-56 -136t56 -136t136 -56zM1344 768v512h-1152v-512h1152z" />
    <glyph glyph-name="_534" unicode="&#xf239;" 
d="M1088 1536q185 0 316.5 -93.5t131.5 -226.5v-896q0 -130 -125.5 -222t-305.5 -97l213 -202q16 -15 8 -35t-30 -20h-1056q-22 0 -30 20t8 35l213 202q-180 5 -305.5 97t-125.5 222v896q0 133 131.5 226.5t316.5 93.5h640zM288 224q66 0 113 47t47 113t-47 113t-113 47
t-113 -47t-47 -113t47 -113t113 -47zM704 768v512h-544v-512h544zM1248 224q66 0 113 47t47 113t-47 113t-113 47t-113 -47t-47 -113t47 -113t113 -47zM1408 768v512h-576v-512h576z" />
    <glyph glyph-name="_535" unicode="&#xf23a;" horiz-adv-x="1792" 
d="M597 1115v-1173q0 -25 -12.5 -42.5t-36.5 -17.5q-17 0 -33 8l-465 233q-21 10 -35.5 33.5t-14.5 46.5v1140q0 20 10 34t29 14q14 0 44 -15l511 -256q3 -3 3 -5zM661 1014l534 -866l-534 266v600zM1792 996v-1054q0 -25 -14 -40.5t-38 -15.5t-47 13l-441 220zM1789 1116
q0 -3 -256.5 -419.5t-300.5 -487.5l-390 634l324 527q17 28 52 28q14 0 26 -6l541 -270q4 -2 4 -6z" />
    <glyph glyph-name="_536" unicode="&#xf23b;" 
d="M809 532l266 499h-112l-157 -312q-24 -48 -44 -92l-42 92l-155 312h-120l263 -493v-324h101v318zM1536 1408v-1536h-1536v1536h1536z" />
    <glyph glyph-name="_537" unicode="&#xf23c;" horiz-adv-x="2296" 
d="M478 -139q-8 -16 -27 -34.5t-37 -25.5q-25 -9 -51.5 3.5t-28.5 31.5q-1 22 40 55t68 38q23 4 34 -21.5t2 -46.5zM1819 -139q7 -16 26 -34.5t38 -25.5q25 -9 51.5 3.5t27.5 31.5q2 22 -39.5 55t-68.5 38q-22 4 -33 -21.5t-2 -46.5zM1867 -30q13 -27 56.5 -59.5t77.5 -41.5
q45 -13 82 4.5t37 50.5q0 46 -67.5 100.5t-115.5 59.5q-40 5 -63.5 -37.5t-6.5 -76.5zM428 -30q-13 -27 -56 -59.5t-77 -41.5q-45 -13 -82 4.5t-37 50.5q0 46 67.5 100.5t115.5 59.5q40 5 63 -37.5t6 -76.5zM1158 1094h1q-41 0 -76 -15q27 -8 44 -30.5t17 -49.5
q0 -35 -27 -60t-65 -25q-52 0 -80 43q-5 -23 -5 -42q0 -74 56 -126.5t135 -52.5q80 0 136 52.5t56 126.5t-56 126.5t-136 52.5zM1462 1312q-99 109 -220.5 131.5t-245.5 -44.5q27 60 82.5 96.5t118 39.5t121.5 -17t99.5 -74.5t44.5 -131.5zM2212 73q8 -11 -11 -42
q7 -23 7 -40q1 -56 -44.5 -112.5t-109.5 -91.5t-118 -37q-48 -2 -92 21.5t-66 65.5q-687 -25 -1259 0q-23 -41 -66.5 -65t-92.5 -22q-86 3 -179.5 80.5t-92.5 160.5q2 22 7 40q-19 31 -11 42q6 10 31 1q14 22 41 51q-7 29 2 38q11 10 39 -4q29 20 59 34q0 29 13 37
q23 12 51 -16q35 5 61 -2q18 -4 38 -19v73q-11 0 -18 2q-53 10 -97 44.5t-55 87.5q-9 38 0 81q15 62 93 95q2 17 19 35.5t36 23.5t33 -7.5t19 -30.5h13q46 -5 60 -23q3 -3 5 -7q10 1 30.5 3.5t30.5 3.5q-15 11 -30 17q-23 40 -91 43q0 6 1 10q-62 2 -118.5 18.5t-84.5 47.5
q-32 36 -42.5 92t-2.5 112q16 126 90 179q23 16 52 4.5t32 -40.5q0 -1 1.5 -14t2.5 -21t3 -20t5.5 -19t8.5 -10q27 -14 76 -12q48 46 98 74q-40 4 -162 -14l47 46q61 58 163 111q145 73 282 86q-20 8 -41 15.5t-47 14t-42.5 10.5t-47.5 11t-43 10q595 126 904 -139
q98 -84 158 -222q85 -10 121 9h1q5 3 8.5 10t5.5 19t3 19.5t3 21.5l1 14q3 28 32 40t52 -5q73 -52 91 -178q7 -57 -3.5 -113t-42.5 -91q-28 -32 -83.5 -48.5t-115.5 -18.5v-10q-71 -2 -95 -43q-14 -5 -31 -17q11 -1 32 -3.5t30 -3.5q1 5 5 8q16 18 60 23h13q5 18 19 30t33 8
t36 -23t19 -36q79 -32 93 -95q9 -40 1 -81q-12 -53 -56 -88t-97 -44q-10 -2 -17 -2q0 -49 -1 -73q20 15 38 19q26 7 61 2q28 28 51 16q14 -9 14 -37q33 -16 59 -34q27 13 38 4q10 -10 2 -38q28 -30 41 -51q23 8 31 -1zM1937 1025q0 -29 -9 -54q82 -32 112 -132
q4 37 -9.5 98.5t-41.5 90.5q-20 19 -36 17t-16 -20zM1859 925q35 -42 47.5 -108.5t-0.5 -124.5q67 13 97 45q13 14 18 28q-3 64 -31 114.5t-79 66.5q-15 -15 -52 -21zM1822 921q-30 0 -44 1q42 -115 53 -239q21 0 43 3q16 68 1 135t-53 100zM258 839q30 100 112 132
q-9 25 -9 54q0 18 -16.5 20t-35.5 -17q-28 -29 -41.5 -90.5t-9.5 -98.5zM294 737q29 -31 97 -45q-13 58 -0.5 124.5t47.5 108.5v0q-37 6 -52 21q-51 -16 -78.5 -66t-31.5 -115q9 -17 18 -28zM471 683q14 124 73 235q-19 -4 -55 -18l-45 -19v1q-46 -89 -20 -196q25 -3 47 -3z
M1434 644q8 -38 16.5 -108.5t11.5 -89.5q3 -18 9.5 -21.5t23.5 4.5q40 20 62 85.5t23 125.5q-24 2 -146 4zM1152 1285q-116 0 -199 -82.5t-83 -198.5q0 -117 83 -199.5t199 -82.5t199 82.5t83 199.5q0 116 -83 198.5t-199 82.5zM1380 646q-105 2 -211 0v1q-1 -27 2.5 -86
t13.5 -66q29 -14 93.5 -14.5t95.5 10.5q9 3 11 39t-0.5 69.5t-4.5 46.5zM1112 447q8 4 9.5 48t-0.5 88t-4 63v1q-212 -3 -214 -3q-4 -20 -7 -62t0 -83t14 -46q34 -15 101 -16t101 10zM718 636q-16 -59 4.5 -118.5t77.5 -84.5q15 -8 24 -5t12 21q3 16 8 90t10 103
q-69 -2 -136 -6zM591 510q3 -23 -34 -36q132 -141 271.5 -240t305.5 -154q172 49 310.5 146t293.5 250q-33 13 -30 34q0 2 0.5 3.5t1.5 3t1 2.5v1v-1q-17 2 -50 5.5t-48 4.5q-26 -90 -82 -132q-51 -38 -82 1q-5 6 -9 14q-7 13 -17 62q-2 -5 -5 -9t-7.5 -7t-8 -5.5t-9.5 -4
l-10 -2.5t-12 -2l-12 -1.5t-13.5 -1t-13.5 -0.5q-106 -9 -163 11q-4 -17 -10 -26.5t-21 -15t-23 -7t-36 -3.5q-6 -1 -9 -1q-179 -17 -203 40q-2 -63 -56 -54q-47 8 -91 54q-12 13 -20 26q-17 29 -26 65q-58 -6 -87 -10q1 -2 4 -10zM507 -118q3 14 3 30q-17 71 -51 130
t-73 70q-41 12 -101.5 -14.5t-104.5 -80t-39 -107.5q35 -53 100 -93t119 -42q51 -2 94 28t53 79zM510 53q23 -63 27 -119q195 113 392 174q-98 52 -180.5 120t-179.5 165q-6 -4 -29 -13q0 -1 -1 -4t-1 -5q31 -18 22 -37q-12 -23 -56 -34q-10 -13 -29 -24h-1q-2 -83 1 -150
q19 -34 35 -73zM579 -113q532 -21 1145 0q-254 147 -428 196q-76 -35 -156 -57q-8 -3 -16 0q-65 21 -129 49q-208 -60 -416 -188h-1v-1q1 0 1 1zM1763 -67q4 54 28 120q14 38 33 71l-1 -1q3 77 3 153q-15 8 -30 25q-42 9 -56 33q-9 20 22 38q-2 4 -2 9q-16 4 -28 12
q-204 -190 -383 -284q198 -59 414 -176zM2155 -90q5 54 -39 107.5t-104 80t-102 14.5q-38 -11 -72.5 -70.5t-51.5 -129.5q0 -16 3 -30q10 -49 53 -79t94 -28q54 2 119 42t100 93z" />
    <glyph glyph-name="_538" unicode="&#xf23d;" horiz-adv-x="2304" 
d="M1524 -25q0 -68 -48 -116t-116 -48t-116.5 48t-48.5 116t48.5 116.5t116.5 48.5t116 -48.5t48 -116.5zM775 -25q0 -68 -48.5 -116t-116.5 -48t-116 48t-48 116t48 116.5t116 48.5t116.5 -48.5t48.5 -116.5zM0 1469q57 -60 110.5 -104.5t121 -82t136 -63t166 -45.5
t200 -31.5t250 -18.5t304 -9.5t372.5 -2.5q139 0 244.5 -5t181 -16.5t124 -27.5t71 -39.5t24 -51.5t-19.5 -64t-56.5 -76.5t-89.5 -91t-116 -104.5t-139 -119q-185 -157 -286 -247q29 51 76.5 109t94 105.5t94.5 98.5t83 91.5t54 80.5t13 70t-45.5 55.5t-116.5 41t-204 23.5
t-304 5q-168 -2 -314 6t-256 23t-204.5 41t-159.5 51.5t-122.5 62.5t-91.5 66.5t-68 71.5t-50.5 69.5t-40 68t-36.5 59.5z" />
    <glyph glyph-name="_539" unicode="&#xf23e;" horiz-adv-x="1792" 
d="M896 1472q-169 0 -323 -66t-265.5 -177.5t-177.5 -265.5t-66 -323t66 -323t177.5 -265.5t265.5 -177.5t323 -66t323 66t265.5 177.5t177.5 265.5t66 323t-66 323t-177.5 265.5t-265.5 177.5t-323 66zM896 1536q182 0 348 -71t286 -191t191 -286t71 -348t-71 -348
t-191 -286t-286 -191t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71zM496 704q16 0 16 -16v-480q0 -16 -16 -16h-32q-16 0 -16 16v480q0 16 16 16h32zM896 640q53 0 90.5 -37.5t37.5 -90.5q0 -35 -17.5 -64t-46.5 -46v-114q0 -14 -9 -23
t-23 -9h-64q-14 0 -23 9t-9 23v114q-29 17 -46.5 46t-17.5 64q0 53 37.5 90.5t90.5 37.5zM896 1408q209 0 385.5 -103t279.5 -279.5t103 -385.5t-103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103zM544 928v-96
q0 -14 9 -23t23 -9h64q14 0 23 9t9 23v96q0 93 65.5 158.5t158.5 65.5t158.5 -65.5t65.5 -158.5v-96q0 -14 9 -23t23 -9h64q14 0 23 9t9 23v96q0 146 -103 249t-249 103t-249 -103t-103 -249zM1408 192v512q0 26 -19 45t-45 19h-896q-26 0 -45 -19t-19 -45v-512
q0 -26 19 -45t45 -19h896q26 0 45 19t19 45z" />
    <glyph glyph-name="_540" unicode="&#xf240;" horiz-adv-x="2304" 
d="M1920 1024v-768h-1664v768h1664zM2048 448h128v384h-128v288q0 14 -9 23t-23 9h-1856q-14 0 -23 -9t-9 -23v-960q0 -14 9 -23t23 -9h1856q14 0 23 9t9 23v288zM2304 832v-384q0 -53 -37.5 -90.5t-90.5 -37.5v-160q0 -66 -47 -113t-113 -47h-1856q-66 0 -113 47t-47 113
v960q0 66 47 113t113 47h1856q66 0 113 -47t47 -113v-160q53 0 90.5 -37.5t37.5 -90.5z" />
    <glyph glyph-name="_541" unicode="&#xf241;" horiz-adv-x="2304" 
d="M256 256v768h1280v-768h-1280zM2176 960q53 0 90.5 -37.5t37.5 -90.5v-384q0 -53 -37.5 -90.5t-90.5 -37.5v-160q0 -66 -47 -113t-113 -47h-1856q-66 0 -113 47t-47 113v960q0 66 47 113t113 47h1856q66 0 113 -47t47 -113v-160zM2176 448v384h-128v288q0 14 -9 23t-23 9
h-1856q-14 0 -23 -9t-9 -23v-960q0 -14 9 -23t23 -9h1856q14 0 23 9t9 23v288h128z" />
    <glyph glyph-name="_542" unicode="&#xf242;" horiz-adv-x="2304" 
d="M256 256v768h896v-768h-896zM2176 960q53 0 90.5 -37.5t37.5 -90.5v-384q0 -53 -37.5 -90.5t-90.5 -37.5v-160q0 -66 -47 -113t-113 -47h-1856q-66 0 -113 47t-47 113v960q0 66 47 113t113 47h1856q66 0 113 -47t47 -113v-160zM2176 448v384h-128v288q0 14 -9 23t-23 9
h-1856q-14 0 -23 -9t-9 -23v-960q0 -14 9 -23t23 -9h1856q14 0 23 9t9 23v288h128z" />
    <glyph glyph-name="_543" unicode="&#xf243;" horiz-adv-x="2304" 
d="M256 256v768h512v-768h-512zM2176 960q53 0 90.5 -37.5t37.5 -90.5v-384q0 -53 -37.5 -90.5t-90.5 -37.5v-160q0 -66 -47 -113t-113 -47h-1856q-66 0 -113 47t-47 113v960q0 66 47 113t113 47h1856q66 0 113 -47t47 -113v-160zM2176 448v384h-128v288q0 14 -9 23t-23 9
h-1856q-14 0 -23 -9t-9 -23v-960q0 -14 9 -23t23 -9h1856q14 0 23 9t9 23v288h128z" />
    <glyph glyph-name="_544" unicode="&#xf244;" horiz-adv-x="2304" 
d="M2176 960q53 0 90.5 -37.5t37.5 -90.5v-384q0 -53 -37.5 -90.5t-90.5 -37.5v-160q0 -66 -47 -113t-113 -47h-1856q-66 0 -113 47t-47 113v960q0 66 47 113t113 47h1856q66 0 113 -47t47 -113v-160zM2176 448v384h-128v288q0 14 -9 23t-23 9h-1856q-14 0 -23 -9t-9 -23
v-960q0 -14 9 -23t23 -9h1856q14 0 23 9t9 23v288h128z" />
    <glyph glyph-name="_545" unicode="&#xf245;" horiz-adv-x="1280" 
d="M1133 493q31 -30 14 -69q-17 -40 -59 -40h-382l201 -476q10 -25 0 -49t-34 -35l-177 -75q-25 -10 -49 0t-35 34l-191 452l-312 -312q-19 -19 -45 -19q-12 0 -24 5q-40 17 -40 59v1504q0 42 40 59q12 5 24 5q27 0 45 -19z" />
    <glyph glyph-name="_546" unicode="&#xf246;" horiz-adv-x="1024" 
d="M832 1408q-320 0 -320 -224v-416h128v-128h-128v-544q0 -224 320 -224h64v-128h-64q-272 0 -384 146q-112 -146 -384 -146h-64v128h64q320 0 320 224v544h-128v128h128v416q0 224 -320 224h-64v128h64q272 0 384 -146q112 146 384 146h64v-128h-64z" />
    <glyph glyph-name="_547" unicode="&#xf247;" horiz-adv-x="2048" 
d="M2048 1152h-128v-1024h128v-384h-384v128h-1280v-128h-384v384h128v1024h-128v384h384v-128h1280v128h384v-384zM1792 1408v-128h128v128h-128zM128 1408v-128h128v128h-128zM256 -128v128h-128v-128h128zM1664 0v128h128v1024h-128v128h-1280v-128h-128v-1024h128v-128
h1280zM1920 -128v128h-128v-128h128zM1280 896h384v-768h-896v256h-384v768h896v-256zM512 512h640v512h-640v-512zM1536 256v512h-256v-384h-384v-128h640z" />
    <glyph glyph-name="_548" unicode="&#xf248;" horiz-adv-x="2304" 
d="M2304 768h-128v-640h128v-384h-384v128h-896v-128h-384v384h128v128h-384v-128h-384v384h128v640h-128v384h384v-128h896v128h384v-384h-128v-128h384v128h384v-384zM2048 1024v-128h128v128h-128zM1408 1408v-128h128v128h-128zM128 1408v-128h128v128h-128zM256 256
v128h-128v-128h128zM1536 384h-128v-128h128v128zM384 384h896v128h128v640h-128v128h-896v-128h-128v-640h128v-128zM896 -128v128h-128v-128h128zM2176 -128v128h-128v-128h128zM2048 128v640h-128v128h-384v-384h128v-384h-384v128h-384v-128h128v-128h896v128h128z" />
    <glyph glyph-name="_549" unicode="&#xf249;" 
d="M1024 288v-416h-928q-40 0 -68 28t-28 68v1344q0 40 28 68t68 28h1344q40 0 68 -28t28 -68v-928h-416q-40 0 -68 -28t-28 -68zM1152 256h381q-15 -82 -65 -132l-184 -184q-50 -50 -132 -65v381z" />
    <glyph glyph-name="_550" unicode="&#xf24a;" 
d="M1400 256h-248v-248q29 10 41 22l185 185q12 12 22 41zM1120 384h288v896h-1280v-1280h896v288q0 40 28 68t68 28zM1536 1312v-1024q0 -40 -20 -88t-48 -76l-184 -184q-28 -28 -76 -48t-88 -20h-1024q-40 0 -68 28t-28 68v1344q0 40 28 68t68 28h1344q40 0 68 -28t28 -68
z" />
    <glyph glyph-name="_551" unicode="&#xf24b;" horiz-adv-x="2304" 
d="M1951 538q0 -26 -15.5 -44.5t-38.5 -23.5q-8 -2 -18 -2h-153v140h153q10 0 18 -2q23 -5 38.5 -23.5t15.5 -44.5zM1933 751q0 -25 -15 -42t-38 -21q-3 -1 -15 -1h-139v129h139q3 0 8.5 -0.5t6.5 -0.5q23 -4 38 -21.5t15 -42.5zM728 587v308h-228v-308q0 -58 -38 -94.5
t-105 -36.5q-108 0 -229 59v-112q53 -15 121 -23t109 -9l42 -1q328 0 328 217zM1442 403v113q-99 -52 -200 -59q-108 -8 -169 41t-61 142t61 142t169 41q101 -7 200 -58v112q-48 12 -100 19.5t-80 9.5l-28 2q-127 6 -218.5 -14t-140.5 -60t-71 -88t-22 -106t22 -106t71 -88
t140.5 -60t218.5 -14q101 4 208 31zM2176 518q0 54 -43 88.5t-109 39.5v3q57 8 89 41.5t32 79.5q0 55 -41 88t-107 36q-3 0 -12 0.5t-14 0.5h-455v-510h491q74 0 121.5 36.5t47.5 96.5zM2304 1280v-1280q0 -52 -38 -90t-90 -38h-2048q-52 0 -90 38t-38 90v1280q0 52 38 90
t90 38h2048q52 0 90 -38t38 -90z" />
    <glyph glyph-name="_552" unicode="&#xf24c;" horiz-adv-x="2304" 
d="M858 295v693q-106 -41 -172 -135.5t-66 -211.5t66 -211.5t172 -134.5zM1362 641q0 117 -66 211.5t-172 135.5v-694q106 41 172 135.5t66 211.5zM1577 641q0 -159 -78.5 -294t-213.5 -213.5t-294 -78.5q-119 0 -227.5 46.5t-187 125t-125 187t-46.5 227.5q0 159 78.5 294
t213.5 213.5t294 78.5t294 -78.5t213.5 -213.5t78.5 -294zM1960 634q0 139 -55.5 261.5t-147.5 205.5t-213.5 131t-252.5 48h-301q-176 0 -323.5 -81t-235 -230t-87.5 -335q0 -171 87 -317.5t236 -231.5t323 -85h301q129 0 251.5 50.5t214.5 135t147.5 202.5t55.5 246z
M2304 1280v-1280q0 -52 -38 -90t-90 -38h-2048q-52 0 -90 38t-38 90v1280q0 52 38 90t90 38h2048q52 0 90 -38t38 -90z" />
    <glyph glyph-name="_553" unicode="&#xf24d;" horiz-adv-x="1792" 
d="M1664 -96v1088q0 13 -9.5 22.5t-22.5 9.5h-1088q-13 0 -22.5 -9.5t-9.5 -22.5v-1088q0 -13 9.5 -22.5t22.5 -9.5h1088q13 0 22.5 9.5t9.5 22.5zM1792 992v-1088q0 -66 -47 -113t-113 -47h-1088q-66 0 -113 47t-47 113v1088q0 66 47 113t113 47h1088q66 0 113 -47t47 -113
zM1408 1376v-160h-128v160q0 13 -9.5 22.5t-22.5 9.5h-1088q-13 0 -22.5 -9.5t-9.5 -22.5v-1088q0 -13 9.5 -22.5t22.5 -9.5h160v-128h-160q-66 0 -113 47t-47 113v1088q0 66 47 113t113 47h1088q66 0 113 -47t47 -113z" />
    <glyph glyph-name="_554" unicode="&#xf24e;" horiz-adv-x="2304" 
d="M1728 1088l-384 -704h768zM448 1088l-384 -704h768zM1269 1280q-14 -40 -45.5 -71.5t-71.5 -45.5v-1291h608q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-1344q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h608v1291q-40 14 -71.5 45.5t-45.5 71.5h-491q-14 0 -23 9t-9 23v64
q0 14 9 23t23 9h491q21 57 70 92.5t111 35.5t111 -35.5t70 -92.5h491q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-491zM1088 1264q33 0 56.5 23.5t23.5 56.5t-23.5 56.5t-56.5 23.5t-56.5 -23.5t-23.5 -56.5t23.5 -56.5t56.5 -23.5zM2176 384q0 -73 -46.5 -131t-117.5 -91
t-144.5 -49.5t-139.5 -16.5t-139.5 16.5t-144.5 49.5t-117.5 91t-46.5 131q0 11 35 81t92 174.5t107 195.5t102 184t56 100q18 33 56 33t56 -33q4 -7 56 -100t102 -184t107 -195.5t92 -174.5t35 -81zM896 384q0 -73 -46.5 -131t-117.5 -91t-144.5 -49.5t-139.5 -16.5
t-139.5 16.5t-144.5 49.5t-117.5 91t-46.5 131q0 11 35 81t92 174.5t107 195.5t102 184t56 100q18 33 56 33t56 -33q4 -7 56 -100t102 -184t107 -195.5t92 -174.5t35 -81z" />
    <glyph glyph-name="_555" unicode="&#xf250;" 
d="M1408 1408q0 -261 -106.5 -461.5t-266.5 -306.5q160 -106 266.5 -306.5t106.5 -461.5h96q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-1472q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h96q0 261 106.5 461.5t266.5 306.5q-160 106 -266.5 306.5t-106.5 461.5h-96q-14 0 -23 9
t-9 23v64q0 14 9 23t23 9h1472q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-96zM874 700q77 29 149 92.5t129.5 152.5t92.5 210t35 253h-1024q0 -132 35 -253t92.5 -210t129.5 -152.5t149 -92.5q19 -7 30.5 -23.5t11.5 -36.5t-11.5 -36.5t-30.5 -23.5q-77 -29 -149 -92.5
t-129.5 -152.5t-92.5 -210t-35 -253h1024q0 132 -35 253t-92.5 210t-129.5 152.5t-149 92.5q-19 7 -30.5 23.5t-11.5 36.5t11.5 36.5t30.5 23.5z" />
    <glyph glyph-name="_556" unicode="&#xf251;" 
d="M1408 1408q0 -261 -106.5 -461.5t-266.5 -306.5q160 -106 266.5 -306.5t106.5 -461.5h96q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-1472q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h96q0 261 106.5 461.5t266.5 306.5q-160 106 -266.5 306.5t-106.5 461.5h-96q-14 0 -23 9
t-9 23v64q0 14 9 23t23 9h1472q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-96zM1280 1408h-1024q0 -66 9 -128h1006q9 61 9 128zM1280 -128q0 130 -34 249.5t-90.5 208t-126.5 152t-146 94.5h-230q-76 -31 -146 -94.5t-126.5 -152t-90.5 -208t-34 -249.5h1024z" />
    <glyph glyph-name="_557" unicode="&#xf252;" 
d="M1408 1408q0 -261 -106.5 -461.5t-266.5 -306.5q160 -106 266.5 -306.5t106.5 -461.5h96q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-1472q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h96q0 261 106.5 461.5t266.5 306.5q-160 106 -266.5 306.5t-106.5 461.5h-96q-14 0 -23 9
t-9 23v64q0 14 9 23t23 9h1472q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-96zM1280 1408h-1024q0 -206 85 -384h854q85 178 85 384zM1223 192q-54 141 -145.5 241.5t-194.5 142.5h-230q-103 -42 -194.5 -142.5t-145.5 -241.5h910z" />
    <glyph glyph-name="_558" unicode="&#xf253;" 
d="M1408 1408q0 -261 -106.5 -461.5t-266.5 -306.5q160 -106 266.5 -306.5t106.5 -461.5h96q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-1472q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h96q0 261 106.5 461.5t266.5 306.5q-160 106 -266.5 306.5t-106.5 461.5h-96q-14 0 -23 9
t-9 23v64q0 14 9 23t23 9h1472q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-96zM874 700q77 29 149 92.5t129.5 152.5t92.5 210t35 253h-1024q0 -132 35 -253t92.5 -210t129.5 -152.5t149 -92.5q19 -7 30.5 -23.5t11.5 -36.5t-11.5 -36.5t-30.5 -23.5q-137 -51 -244 -196
h700q-107 145 -244 196q-19 7 -30.5 23.5t-11.5 36.5t11.5 36.5t30.5 23.5z" />
    <glyph glyph-name="_559" unicode="&#xf254;" 
d="M1504 -64q14 0 23 -9t9 -23v-128q0 -14 -9 -23t-23 -9h-1472q-14 0 -23 9t-9 23v128q0 14 9 23t23 9h1472zM130 0q3 55 16 107t30 95t46 87t53.5 76t64.5 69.5t66 60t70.5 55t66.5 47.5t65 43q-43 28 -65 43t-66.5 47.5t-70.5 55t-66 60t-64.5 69.5t-53.5 76t-46 87
t-30 95t-16 107h1276q-3 -55 -16 -107t-30 -95t-46 -87t-53.5 -76t-64.5 -69.5t-66 -60t-70.5 -55t-66.5 -47.5t-65 -43q43 -28 65 -43t66.5 -47.5t70.5 -55t66 -60t64.5 -69.5t53.5 -76t46 -87t30 -95t16 -107h-1276zM1504 1536q14 0 23 -9t9 -23v-128q0 -14 -9 -23t-23 -9
h-1472q-14 0 -23 9t-9 23v128q0 14 9 23t23 9h1472z" />
    <glyph glyph-name="_560" unicode="&#xf255;" 
d="M768 1152q-53 0 -90.5 -37.5t-37.5 -90.5v-128h-32v93q0 48 -32 81.5t-80 33.5q-46 0 -79 -33t-33 -79v-429l-32 30v172q0 48 -32 81.5t-80 33.5q-46 0 -79 -33t-33 -79v-224q0 -47 35 -82l310 -296q39 -39 39 -102q0 -26 19 -45t45 -19h640q26 0 45 19t19 45v25
q0 41 10 77l108 436q10 36 10 77v246q0 48 -32 81.5t-80 33.5q-46 0 -79 -33t-33 -79v-32h-32v125q0 40 -25 72.5t-64 40.5q-14 2 -23 2q-46 0 -79 -33t-33 -79v-128h-32v122q0 51 -32.5 89.5t-82.5 43.5q-5 1 -13 1zM768 1280q84 0 149 -50q57 34 123 34q59 0 111 -27
t86 -76q27 7 59 7q100 0 170 -71.5t70 -171.5v-246q0 -51 -13 -108l-109 -436q-6 -24 -6 -71q0 -80 -56 -136t-136 -56h-640q-84 0 -138 58.5t-54 142.5l-308 296q-76 73 -76 175v224q0 99 70.5 169.5t169.5 70.5q11 0 16 -1q6 95 75.5 160t164.5 65q52 0 98 -21
q72 69 174 69z" />
    <glyph glyph-name="_561" unicode="&#xf256;" horiz-adv-x="1792" 
d="M880 1408q-46 0 -79 -33t-33 -79v-656h-32v528q0 46 -33 79t-79 33t-79 -33t-33 -79v-528v-256l-154 205q-38 51 -102 51q-53 0 -90.5 -37.5t-37.5 -90.5q0 -43 26 -77l384 -512q38 -51 102 -51h688q34 0 61 22t34 56l76 405q5 32 5 59v498q0 46 -33 79t-79 33t-79 -33
t-33 -79v-272h-32v528q0 46 -33 79t-79 33t-79 -33t-33 -79v-528h-32v656q0 46 -33 79t-79 33zM880 1536q68 0 125.5 -35.5t88.5 -96.5q19 4 42 4q99 0 169.5 -70.5t70.5 -169.5v-17q105 6 180.5 -64t75.5 -175v-498q0 -40 -8 -83l-76 -404q-14 -79 -76.5 -131t-143.5 -52
h-688q-60 0 -114.5 27.5t-90.5 74.5l-384 512q-51 68 -51 154q0 106 75 181t181 75q78 0 128 -34v434q0 99 70.5 169.5t169.5 70.5q23 0 42 -4q31 61 88.5 96.5t125.5 35.5z" />
    <glyph glyph-name="_562" unicode="&#xf257;" horiz-adv-x="1792" 
d="M1073 -128h-177q-163 0 -226 141q-23 49 -23 102v5q-62 30 -98.5 88.5t-36.5 127.5q0 38 5 48h-261q-106 0 -181 75t-75 181t75 181t181 75h113l-44 17q-74 28 -119.5 93.5t-45.5 145.5q0 106 75 181t181 75q46 0 91 -17l628 -239h401q106 0 181 -75t75 -181v-668
q0 -88 -54 -157.5t-140 -90.5l-339 -85q-92 -23 -186 -23zM1024 583l-155 -71l-163 -74q-30 -14 -48 -41.5t-18 -60.5q0 -46 33 -79t79 -33q26 0 46 10l338 154q-49 10 -80.5 50t-31.5 90v55zM1344 272q0 46 -33 79t-79 33q-26 0 -46 -10l-290 -132q-28 -13 -37 -17
t-30.5 -17t-29.5 -23.5t-16 -29t-8 -40.5q0 -50 31.5 -82t81.5 -32q20 0 38 9l352 160q30 14 48 41.5t18 60.5zM1112 1024l-650 248q-24 8 -46 8q-53 0 -90.5 -37.5t-37.5 -90.5q0 -40 22.5 -73t59.5 -47l526 -200v-64h-640q-53 0 -90.5 -37.5t-37.5 -90.5t37.5 -90.5
t90.5 -37.5h535l233 106v198q0 63 46 106l111 102h-69zM1073 0q82 0 155 19l339 85q43 11 70 45.5t27 78.5v668q0 53 -37.5 90.5t-90.5 37.5h-308l-136 -126q-36 -33 -36 -82v-296q0 -46 33 -77t79 -31t79 35t33 81v208h32v-208q0 -70 -57 -114q52 -8 86.5 -48.5t34.5 -93.5
q0 -42 -23 -78t-61 -53l-310 -141h91z" />
    <glyph glyph-name="_563" unicode="&#xf258;" horiz-adv-x="2048" 
d="M1151 1536q61 0 116 -28t91 -77l572 -781q118 -159 118 -359v-355q0 -80 -56 -136t-136 -56h-384q-80 0 -136 56t-56 136v177l-286 143h-546q-80 0 -136 56t-56 136v32q0 119 84.5 203.5t203.5 84.5h420l42 128h-686q-100 0 -173.5 67.5t-81.5 166.5q-65 79 -65 182v32
q0 80 56 136t136 56h959zM1920 -64v355q0 157 -93 284l-573 781q-39 52 -103 52h-959q-26 0 -45 -19t-19 -45q0 -32 1.5 -49.5t9.5 -40.5t25 -43q10 31 35.5 50t56.5 19h832v-32h-832q-26 0 -45 -19t-19 -45q0 -44 3 -58q8 -44 44 -73t81 -29h640h91q40 0 68 -28t28 -68
q0 -15 -5 -30l-64 -192q-10 -29 -35 -47.5t-56 -18.5h-443q-66 0 -113 -47t-47 -113v-32q0 -26 19 -45t45 -19h561q16 0 29 -7l317 -158q24 -13 38.5 -36t14.5 -50v-197q0 -26 19 -45t45 -19h384q26 0 45 19t19 45z" />
    <glyph glyph-name="_564" unicode="&#xf259;" horiz-adv-x="2048" 
d="M459 -256q-77 0 -137.5 47.5t-79.5 122.5l-101 401q-13 57 -13 108q0 45 -5 67l-116 477q-7 27 -7 57q0 93 62 161t155 78q17 85 82.5 139t152.5 54q83 0 148 -51.5t85 -132.5l83 -348l103 428q20 81 85 132.5t148 51.5q89 0 155.5 -57.5t80.5 -144.5q92 -10 152 -79
t60 -162q0 -24 -7 -59l-123 -512q10 7 37.5 28.5t38.5 29.5t35 23t41 20.5t41.5 11t49.5 5.5q105 0 180 -74t75 -179q0 -62 -28.5 -118t-78.5 -94l-507 -380q-68 -51 -153 -51h-694zM1104 1408q-38 0 -68.5 -24t-39.5 -62l-164 -682h-127l-145 602q-9 38 -39.5 62t-68.5 24
q-48 0 -80 -33t-32 -80q0 -15 3 -28l132 -547h-26l-99 408q-9 37 -40 62.5t-69 25.5q-47 0 -80 -33t-33 -79q0 -14 3 -26l116 -478q7 -28 9 -86t10 -88l100 -401q8 -32 34 -52.5t59 -20.5h694q42 0 76 26l507 379q56 43 56 110q0 52 -37.5 88.5t-89.5 36.5q-43 0 -77 -26
l-307 -230v227q0 4 32 138t68 282t39 161q4 18 4 29q0 47 -32 81t-79 34q-39 0 -69.5 -24t-39.5 -62l-116 -482h-26l150 624q3 14 3 28q0 48 -31.5 82t-79.5 34z" />
    <glyph glyph-name="_565" unicode="&#xf25a;" horiz-adv-x="1792" 
d="M640 1408q-53 0 -90.5 -37.5t-37.5 -90.5v-512v-384l-151 202q-41 54 -107 54q-52 0 -89 -38t-37 -90q0 -43 26 -77l384 -512q38 -51 102 -51h718q22 0 39.5 13.5t22.5 34.5l92 368q24 96 24 194v217q0 41 -28 71t-68 30t-68 -28t-28 -68h-32v61q0 48 -32 81.5t-80 33.5
q-46 0 -79 -33t-33 -79v-64h-32v90q0 55 -37 94.5t-91 39.5q-53 0 -90.5 -37.5t-37.5 -90.5v-96h-32v570q0 55 -37 94.5t-91 39.5zM640 1536q107 0 181.5 -77.5t74.5 -184.5v-220q22 2 32 2q99 0 173 -69q47 21 99 21q113 0 184 -87q27 7 56 7q94 0 159 -67.5t65 -161.5
v-217q0 -116 -28 -225l-92 -368q-16 -64 -68 -104.5t-118 -40.5h-718q-60 0 -114.5 27.5t-90.5 74.5l-384 512q-51 68 -51 154q0 105 74.5 180.5t179.5 75.5q71 0 130 -35v547q0 106 75 181t181 75zM768 128v384h-32v-384h32zM1024 128v384h-32v-384h32zM1280 128v384h-32
v-384h32z" />
    <glyph glyph-name="_566" unicode="&#xf25b;" 
d="M1288 889q60 0 107 -23q141 -63 141 -226v-177q0 -94 -23 -186l-85 -339q-21 -86 -90.5 -140t-157.5 -54h-668q-106 0 -181 75t-75 181v401l-239 628q-17 45 -17 91q0 106 75 181t181 75q80 0 145.5 -45.5t93.5 -119.5l17 -44v113q0 106 75 181t181 75t181 -75t75 -181
v-261q27 5 48 5q69 0 127.5 -36.5t88.5 -98.5zM1072 896q-33 0 -60.5 -18t-41.5 -48l-74 -163l-71 -155h55q50 0 90 -31.5t50 -80.5l154 338q10 20 10 46q0 46 -33 79t-79 33zM1293 761q-22 0 -40.5 -8t-29 -16t-23.5 -29.5t-17 -30.5t-17 -37l-132 -290q-10 -20 -10 -46
q0 -46 33 -79t79 -33q33 0 60.5 18t41.5 48l160 352q9 18 9 38q0 50 -32 81.5t-82 31.5zM128 1120q0 -22 8 -46l248 -650v-69l102 111q43 46 106 46h198l106 233v535q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5v-640h-64l-200 526q-14 37 -47 59.5t-73 22.5
q-53 0 -90.5 -37.5t-37.5 -90.5zM1180 -128q44 0 78.5 27t45.5 70l85 339q19 73 19 155v91l-141 -310q-17 -38 -53 -61t-78 -23q-53 0 -93.5 34.5t-48.5 86.5q-44 -57 -114 -57h-208v32h208q46 0 81 33t35 79t-31 79t-77 33h-296q-49 0 -82 -36l-126 -136v-308
q0 -53 37.5 -90.5t90.5 -37.5h668z" />
    <glyph glyph-name="_567" unicode="&#xf25c;" horiz-adv-x="1973" 
d="M857 992v-117q0 -13 -9.5 -22t-22.5 -9h-298v-812q0 -13 -9 -22.5t-22 -9.5h-135q-13 0 -22.5 9t-9.5 23v812h-297q-13 0 -22.5 9t-9.5 22v117q0 14 9 23t23 9h793q13 0 22.5 -9.5t9.5 -22.5zM1895 995l77 -961q1 -13 -8 -24q-10 -10 -23 -10h-134q-12 0 -21 8.5
t-10 20.5l-46 588l-189 -425q-8 -19 -29 -19h-120q-20 0 -29 19l-188 427l-45 -590q-1 -12 -10 -20.5t-21 -8.5h-135q-13 0 -23 10q-9 10 -9 24l78 961q1 12 10 20.5t21 8.5h142q20 0 29 -19l220 -520q10 -24 20 -51q3 7 9.5 24.5t10.5 26.5l221 520q9 19 29 19h141
q13 0 22 -8.5t10 -20.5z" />
    <glyph glyph-name="_568" unicode="&#xf25d;" horiz-adv-x="1792" 
d="M1042 833q0 88 -60 121q-33 18 -117 18h-123v-281h162q66 0 102 37t36 105zM1094 548l205 -373q8 -17 -1 -31q-8 -16 -27 -16h-152q-20 0 -28 17l-194 365h-155v-350q0 -14 -9 -23t-23 -9h-134q-14 0 -23 9t-9 23v960q0 14 9 23t23 9h294q128 0 190 -24q85 -31 134 -109
t49 -180q0 -92 -42.5 -165.5t-115.5 -109.5q6 -10 9 -16zM896 1376q-150 0 -286 -58.5t-234.5 -157t-157 -234.5t-58.5 -286t58.5 -286t157 -234.5t234.5 -157t286 -58.5t286 58.5t234.5 157t157 234.5t58.5 286t-58.5 286t-157 234.5t-234.5 157t-286 58.5zM1792 640
q0 -182 -71 -348t-191 -286t-286 -191t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71t348 -71t286 -191t191 -286t71 -348z" />
    <glyph glyph-name="_569" unicode="&#xf25e;" horiz-adv-x="1792" 
d="M605 303q153 0 257 104q14 18 3 36l-45 82q-6 13 -24 17q-16 2 -27 -11l-4 -3q-4 -4 -11.5 -10t-17.5 -13.5t-23.5 -14.5t-28.5 -13t-33.5 -9.5t-37.5 -3.5q-76 0 -125 50t-49 127q0 76 48 125.5t122 49.5q37 0 71.5 -14t50.5 -28l16 -14q11 -11 26 -10q16 2 24 14l53 78
q13 20 -2 39q-3 4 -11 12t-30 23.5t-48.5 28t-67.5 22.5t-86 10q-148 0 -246 -96.5t-98 -240.5q0 -146 97 -241.5t247 -95.5zM1235 303q153 0 257 104q14 18 4 36l-45 82q-8 14 -25 17q-16 2 -27 -11l-4 -3q-4 -4 -11.5 -10t-17.5 -13.5t-23.5 -14.5t-28.5 -13t-33.5 -9.5
t-37.5 -3.5q-76 0 -125 50t-49 127q0 76 48 125.5t122 49.5q37 0 71.5 -14t50.5 -28l16 -14q11 -11 26 -10q16 2 24 14l53 78q13 20 -2 39q-3 4 -11 12t-30 23.5t-48.5 28t-67.5 22.5t-86 10q-147 0 -245.5 -96.5t-98.5 -240.5q0 -146 97 -241.5t247 -95.5zM896 1376
q-150 0 -286 -58.5t-234.5 -157t-157 -234.5t-58.5 -286t58.5 -286t157 -234.5t234.5 -157t286 -58.5t286 58.5t234.5 157t157 234.5t58.5 286t-58.5 286t-157 234.5t-234.5 157t-286 58.5zM896 1536q182 0 348 -71t286 -191t191 -286t71 -348t-71 -348t-191 -286t-286 -191
t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71z" />
    <glyph glyph-name="f260" unicode="&#xf260;" horiz-adv-x="2048" 
d="M736 736l384 -384l-384 -384l-672 672l672 672l168 -168l-96 -96l-72 72l-480 -480l480 -480l193 193l-289 287zM1312 1312l672 -672l-672 -672l-168 168l96 96l72 -72l480 480l-480 480l-193 -193l289 -287l-96 -96l-384 384z" />
    <glyph glyph-name="f261" unicode="&#xf261;" horiz-adv-x="1792" 
d="M717 182l271 271l-279 279l-88 -88l192 -191l-96 -96l-279 279l279 279l40 -40l87 87l-127 128l-454 -454zM1075 190l454 454l-454 454l-271 -271l279 -279l88 88l-192 191l96 96l279 -279l-279 -279l-40 40l-87 -88zM1792 640q0 -182 -71 -348t-191 -286t-286 -191
t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71t348 -71t286 -191t191 -286t71 -348z" />
    <glyph glyph-name="_572" unicode="&#xf262;" horiz-adv-x="2304" 
d="M651 539q0 -39 -27.5 -66.5t-65.5 -27.5q-39 0 -66.5 27.5t-27.5 66.5q0 38 27.5 65.5t66.5 27.5q38 0 65.5 -27.5t27.5 -65.5zM1805 540q0 -39 -27.5 -66.5t-66.5 -27.5t-66.5 27.5t-27.5 66.5t27.5 66t66.5 27t66.5 -27t27.5 -66zM765 539q0 79 -56.5 136t-136.5 57
t-136.5 -56.5t-56.5 -136.5t56.5 -136.5t136.5 -56.5t136.5 56.5t56.5 136.5zM1918 540q0 80 -56.5 136.5t-136.5 56.5q-79 0 -136 -56.5t-57 -136.5t56.5 -136.5t136.5 -56.5t136.5 56.5t56.5 136.5zM850 539q0 -116 -81.5 -197.5t-196.5 -81.5q-116 0 -197.5 82t-81.5 197
t82 196.5t197 81.5t196.5 -81.5t81.5 -196.5zM2004 540q0 -115 -81.5 -196.5t-197.5 -81.5q-115 0 -196.5 81.5t-81.5 196.5t81.5 196.5t196.5 81.5q116 0 197.5 -81.5t81.5 -196.5zM1040 537q0 191 -135.5 326.5t-326.5 135.5q-125 0 -231 -62t-168 -168.5t-62 -231.5
t62 -231.5t168 -168.5t231 -62q191 0 326.5 135.5t135.5 326.5zM1708 1110q-254 111 -556 111q-319 0 -573 -110q117 0 223 -45.5t182.5 -122.5t122 -183t45.5 -223q0 115 43.5 219.5t118 180.5t177.5 123t217 50zM2187 537q0 191 -135 326.5t-326 135.5t-326.5 -135.5
t-135.5 -326.5t135.5 -326.5t326.5 -135.5t326 135.5t135 326.5zM1921 1103h383q-44 -51 -75 -114.5t-40 -114.5q110 -151 110 -337q0 -156 -77 -288t-209 -208.5t-287 -76.5q-133 0 -249 56t-196 155q-47 -56 -129 -179q-11 22 -53.5 82.5t-74.5 97.5
q-80 -99 -196.5 -155.5t-249.5 -56.5q-155 0 -287 76.5t-209 208.5t-77 288q0 186 110 337q-9 51 -40 114.5t-75 114.5h365q149 100 355 156.5t432 56.5q224 0 421 -56t348 -157z" />
    <glyph glyph-name="f263" unicode="&#xf263;" horiz-adv-x="1280" 
d="M640 629q-188 0 -321 133t-133 320q0 188 133 321t321 133t321 -133t133 -321q0 -187 -133 -320t-321 -133zM640 1306q-92 0 -157.5 -65.5t-65.5 -158.5q0 -92 65.5 -157.5t157.5 -65.5t157.5 65.5t65.5 157.5q0 93 -65.5 158.5t-157.5 65.5zM1163 574q13 -27 15 -49.5
t-4.5 -40.5t-26.5 -38.5t-42.5 -37t-61.5 -41.5q-115 -73 -315 -94l73 -72l267 -267q30 -31 30 -74t-30 -73l-12 -13q-31 -30 -74 -30t-74 30q-67 68 -267 268l-267 -268q-31 -30 -74 -30t-73 30l-12 13q-31 30 -31 73t31 74l267 267l72 72q-203 21 -317 94
q-39 25 -61.5 41.5t-42.5 37t-26.5 38.5t-4.5 40.5t15 49.5q10 20 28 35t42 22t56 -2t65 -35q5 -4 15 -11t43 -24.5t69 -30.5t92 -24t113 -11q91 0 174 25.5t120 50.5l38 25q33 26 65 35t56 2t42 -22t28 -35z" />
    <glyph glyph-name="_574" unicode="&#xf264;" 
d="M927 956q0 -66 -46.5 -112.5t-112.5 -46.5t-112.5 46.5t-46.5 112.5t46.5 112.5t112.5 46.5t112.5 -46.5t46.5 -112.5zM1141 593q-10 20 -28 32t-47.5 9.5t-60.5 -27.5q-10 -8 -29 -20t-81 -32t-127 -20t-124 18t-86 36l-27 18q-31 25 -60.5 27.5t-47.5 -9.5t-28 -32
q-22 -45 -2 -74.5t87 -73.5q83 -53 226 -67l-51 -52q-142 -142 -191 -190q-22 -22 -22 -52.5t22 -52.5l9 -9q22 -22 52.5 -22t52.5 22l191 191q114 -115 191 -191q22 -22 52.5 -22t52.5 22l9 9q22 22 22 52.5t-22 52.5l-191 190l-52 52q141 14 225 67q67 44 87 73.5t-2 74.5
zM1092 956q0 134 -95 229t-229 95t-229 -95t-95 -229t95 -229t229 -95t229 95t95 229zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" />
    <glyph glyph-name="_575" unicode="&#xf265;" horiz-adv-x="1720" 
d="M1565 1408q65 0 110 -45.5t45 -110.5v-519q0 -176 -68 -336t-182.5 -275t-274 -182.5t-334.5 -67.5q-176 0 -335.5 67.5t-274.5 182.5t-183 275t-68 336v519q0 64 46 110t110 46h1409zM861 344q47 0 82 33l404 388q37 35 37 85q0 49 -34.5 83.5t-83.5 34.5q-47 0 -82 -33
l-323 -310l-323 310q-35 33 -81 33q-49 0 -83.5 -34.5t-34.5 -83.5q0 -51 36 -85l405 -388q33 -33 81 -33z" />
    <glyph glyph-name="_576" unicode="&#xf266;" horiz-adv-x="2304" 
d="M1494 -103l-295 695q-25 -49 -158.5 -305.5t-198.5 -389.5q-1 -1 -27.5 -0.5t-26.5 1.5q-82 193 -255.5 587t-259.5 596q-21 50 -66.5 107.5t-103.5 100.5t-102 43q0 5 -0.5 24t-0.5 27h583v-50q-39 -2 -79.5 -16t-66.5 -43t-10 -64q26 -59 216.5 -499t235.5 -540
q31 61 140 266.5t131 247.5q-19 39 -126 281t-136 295q-38 69 -201 71v50l513 -1v-47q-60 -2 -93.5 -25t-12.5 -69q33 -70 87 -189.5t86 -187.5q110 214 173 363q24 55 -10 79.5t-129 26.5q1 7 1 25v24q64 0 170.5 0.5t180 1t92.5 0.5v-49q-62 -2 -119 -33t-90 -81
l-213 -442q13 -33 127.5 -290t121.5 -274l441 1017q-14 38 -49.5 62.5t-65 31.5t-55.5 8v50l460 -4l1 -2l-1 -44q-139 -4 -201 -145q-526 -1216 -559 -1291h-49z" />
    <glyph glyph-name="_577" unicode="&#xf267;" horiz-adv-x="1792" 
d="M949 643q0 -26 -16.5 -45t-41.5 -19q-26 0 -45 16.5t-19 41.5q0 26 17 45t42 19t44 -16.5t19 -41.5zM964 585l350 581q-9 -8 -67.5 -62.5t-125.5 -116.5t-136.5 -127t-117 -110.5t-50.5 -51.5l-349 -580q7 7 67 62t126 116.5t136 127t117 111t50 50.5zM1611 640
q0 -201 -104 -371q-3 2 -17 11t-26.5 16.5t-16.5 7.5q-13 0 -13 -13q0 -10 59 -44q-74 -112 -184.5 -190.5t-241.5 -110.5l-16 67q-1 10 -15 10q-5 0 -8 -5.5t-2 -9.5l16 -68q-72 -15 -146 -15q-199 0 -372 105q1 2 13 20.5t21.5 33.5t9.5 19q0 13 -13 13q-6 0 -17 -14.5
t-22.5 -34.5t-13.5 -23q-113 75 -192 187.5t-110 244.5l69 15q10 3 10 15q0 5 -5.5 8t-10.5 2l-68 -15q-14 72 -14 139q0 206 109 379q2 -1 18.5 -12t30 -19t17.5 -8q13 0 13 12q0 6 -12.5 15.5t-32.5 21.5l-20 12q77 112 189 189t244 107l15 -67q2 -10 15 -10q5 0 8 5.5
t2 10.5l-15 66q71 13 134 13q204 0 379 -109q-39 -56 -39 -65q0 -13 12 -13q11 0 48 64q111 -75 187.5 -186t107.5 -241l-56 -12q-10 -2 -10 -16q0 -5 5.5 -8t9.5 -2l57 13q14 -72 14 -140zM1696 640q0 163 -63.5 311t-170.5 255t-255 170.5t-311 63.5t-311 -63.5
t-255 -170.5t-170.5 -255t-63.5 -311t63.5 -311t170.5 -255t255 -170.5t311 -63.5t311 63.5t255 170.5t170.5 255t63.5 311zM1792 640q0 -182 -71 -348t-191 -286t-286 -191t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71t348 -71t286 -191
t191 -286t71 -348z" />
    <glyph glyph-name="_578" unicode="&#xf268;" horiz-adv-x="1792" 
d="M893 1536q240 2 451 -120q232 -134 352 -372l-742 39q-160 9 -294 -74.5t-185 -229.5l-276 424q128 159 311 245.5t383 87.5zM146 1131l337 -663q72 -143 211 -217t293 -45l-230 -451q-212 33 -385 157.5t-272.5 316t-99.5 411.5q0 267 146 491zM1732 962
q58 -150 59.5 -310.5t-48.5 -306t-153 -272t-246 -209.5q-230 -133 -498 -119l405 623q88 131 82.5 290.5t-106.5 277.5zM896 942q125 0 213.5 -88.5t88.5 -213.5t-88.5 -213.5t-213.5 -88.5t-213.5 88.5t-88.5 213.5t88.5 213.5t213.5 88.5z" />
    <glyph glyph-name="_579" unicode="&#xf269;" horiz-adv-x="1792" 
d="M903 -256q-283 0 -504.5 150.5t-329.5 398.5q-58 131 -67 301t26 332.5t111 312t179 242.5l-11 -281q11 14 68 15.5t70 -15.5q42 81 160.5 138t234.5 59q-54 -45 -119.5 -148.5t-58.5 -163.5q25 -8 62.5 -13.5t63 -7.5t68 -4t50.5 -3q15 -5 9.5 -45.5t-30.5 -75.5
q-5 -7 -16.5 -18.5t-56.5 -35.5t-101 -34l15 -189l-139 67q-18 -43 -7.5 -81.5t36 -66.5t65.5 -41.5t81 -6.5q51 9 98 34.5t83.5 45t73.5 17.5q61 -4 89.5 -33t19.5 -65q-1 -2 -2.5 -5.5t-8.5 -12.5t-18 -15.5t-31.5 -10.5t-46.5 -1q-60 -95 -144.5 -135.5t-209.5 -29.5
q74 -61 162.5 -82.5t168.5 -6t154.5 52t128 87.5t80.5 104q43 91 39 192.5t-37.5 188.5t-78.5 125q87 -38 137 -79.5t77 -112.5q15 170 -57.5 343t-209.5 284q265 -77 412 -279.5t151 -517.5q2 -127 -40.5 -255t-123.5 -238t-189 -196t-247.5 -135.5t-288.5 -49.5z" />
    <glyph glyph-name="_580" unicode="&#xf26a;" horiz-adv-x="1792" 
d="M1493 1308q-165 110 -359 110q-155 0 -293 -73t-240 -200q-75 -93 -119.5 -218t-48.5 -266v-42q4 -141 48.5 -266t119.5 -218q102 -127 240 -200t293 -73q194 0 359 110q-121 -108 -274.5 -168t-322.5 -60q-29 0 -43 1q-175 8 -333 82t-272 193t-181 281t-67 339
q0 182 71 348t191 286t286 191t348 71h3q168 -1 320.5 -60.5t273.5 -167.5zM1792 640q0 -192 -77 -362.5t-213 -296.5q-104 -63 -222 -63q-137 0 -255 84q154 56 253.5 233t99.5 405q0 227 -99 404t-253 234q119 83 254 83q119 0 226 -65q135 -125 210.5 -295t75.5 -361z
" />
    <glyph glyph-name="_581" unicode="&#xf26b;" horiz-adv-x="1792" 
d="M1792 599q0 -56 -7 -104h-1151q0 -146 109.5 -244.5t257.5 -98.5q99 0 185.5 46.5t136.5 130.5h423q-56 -159 -170.5 -281t-267.5 -188.5t-321 -66.5q-187 0 -356 83q-228 -116 -394 -116q-237 0 -237 263q0 115 45 275q17 60 109 229q199 360 475 606
q-184 -79 -427 -354q63 274 283.5 449.5t501.5 175.5q30 0 45 -1q255 117 433 117q64 0 116 -13t94.5 -40.5t66.5 -76.5t24 -115q0 -116 -75 -286q101 -182 101 -390zM1722 1239q0 83 -53 132t-137 49q-108 0 -254 -70q121 -47 222.5 -131.5t170.5 -195.5q51 135 51 216z
M128 2q0 -86 48.5 -132.5t134.5 -46.5q115 0 266 83q-122 72 -213.5 183t-137.5 245q-98 -205 -98 -332zM632 715h728q-5 142 -113 237t-251 95q-144 0 -251.5 -95t-112.5 -237z" />
    <glyph glyph-name="_582" unicode="&#xf26c;" horiz-adv-x="2048" 
d="M1792 288v960q0 13 -9.5 22.5t-22.5 9.5h-1600q-13 0 -22.5 -9.5t-9.5 -22.5v-960q0 -13 9.5 -22.5t22.5 -9.5h1600q13 0 22.5 9.5t9.5 22.5zM1920 1248v-960q0 -66 -47 -113t-113 -47h-736v-128h352q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-832q-14 0 -23 9t-9 23
v64q0 14 9 23t23 9h352v128h-736q-66 0 -113 47t-47 113v960q0 66 47 113t113 47h1600q66 0 113 -47t47 -113z" />
    <glyph glyph-name="_583" unicode="&#xf26d;" horiz-adv-x="1792" 
d="M138 1408h197q-70 -64 -126 -149q-36 -56 -59 -115t-30 -125.5t-8.5 -120t10.5 -132t21 -126t28 -136.5q4 -19 6 -28q51 -238 81 -329q57 -171 152 -275h-272q-48 0 -82 34t-34 82v1304q0 48 34 82t82 34zM1346 1408h308q48 0 82 -34t34 -82v-1304q0 -48 -34 -82t-82 -34
h-178q212 210 196 565l-469 -101q-2 -45 -12 -82t-31 -72t-59.5 -59.5t-93.5 -36.5q-123 -26 -199 40q-32 27 -53 61t-51.5 129t-64.5 258q-35 163 -45.5 263t-5.5 139t23 77q20 41 62.5 73t102.5 45q45 12 83.5 6.5t67 -17t54 -35t43 -48t34.5 -56.5l468 100
q-68 175 -180 287z" />
    <glyph glyph-name="_584" unicode="&#xf26e;" 
d="M1401 -11l-6 -6q-113 -113 -259 -175q-154 -64 -317 -64q-165 0 -317 64q-148 63 -259 175q-113 112 -175 258q-42 103 -54 189q-4 28 48 36q51 8 56 -20q1 -1 1 -4q18 -90 46 -159q50 -124 152 -226q98 -98 226 -152q132 -56 276 -56q143 0 276 56q128 55 225 152l6 6
q10 10 25 6q12 -3 33 -22q36 -37 17 -58zM929 604l-66 -66l63 -63q21 -21 -7 -49q-17 -17 -32 -17q-10 0 -19 10l-62 61l-66 -66q-5 -5 -15 -5q-15 0 -31 16l-2 2q-18 15 -18 29q0 7 8 17l66 65l-66 66q-16 16 14 45q18 18 31 18q6 0 13 -5l65 -66l65 65q18 17 48 -13
q27 -27 11 -44zM1400 547q0 -118 -46 -228q-45 -105 -126 -186q-80 -80 -187 -126t-228 -46t-228 46t-187 126q-82 82 -125 186q-15 33 -15 40h-1q-9 27 43 44q50 16 60 -12q37 -99 97 -167h1v339v2q3 136 102 232q105 103 253 103q147 0 251 -103t104 -249
q0 -147 -104.5 -251t-250.5 -104q-58 0 -112 16q-28 11 -13 61q16 51 44 43l14 -3q14 -3 33 -6t30 -3q104 0 176 71.5t72 174.5q0 101 -72 171q-71 71 -175 71q-107 0 -178 -80q-64 -72 -64 -160v-413q110 -67 242 -67q96 0 185 36.5t156 103.5t103.5 155t36.5 183
q0 198 -141 339q-140 140 -339 140q-200 0 -340 -140q-53 -53 -77 -87l-2 -2q-8 -11 -13 -15.5t-21.5 -9.5t-38.5 3q-21 5 -36.5 16.5t-15.5 26.5v680q0 15 10.5 26.5t27.5 11.5h877q30 0 30 -55t-30 -55h-811v-483h1q40 42 102 84t108 61q109 46 231 46q121 0 228 -46
t187 -126q81 -81 126 -186q46 -112 46 -229zM1369 1128q9 -8 9 -18t-5.5 -18t-16.5 -21q-26 -26 -39 -26q-9 0 -16 7q-106 91 -207 133q-128 56 -276 56q-133 0 -262 -49q-27 -10 -45 37q-9 25 -8 38q3 16 16 20q130 57 299 57q164 0 316 -64q137 -58 235 -152z" />
    <glyph glyph-name="_585" unicode="&#xf270;" horiz-adv-x="1792" 
d="M1551 60q15 6 26 3t11 -17.5t-15 -33.5q-13 -16 -44 -43.5t-95.5 -68t-141 -74t-188 -58t-229.5 -24.5q-119 0 -238 31t-209 76.5t-172.5 104t-132.5 105t-84 87.5q-8 9 -10 16.5t1 12t8 7t11.5 2t11.5 -4.5q192 -117 300 -166q389 -176 799 -90q190 40 391 135z
M1758 175q11 -16 2.5 -69.5t-28.5 -102.5q-34 -83 -85 -124q-17 -14 -26 -9t0 24q21 45 44.5 121.5t6.5 98.5q-5 7 -15.5 11.5t-27 6t-29.5 2.5t-35 0t-31.5 -2t-31 -3t-22.5 -2q-6 -1 -13 -1.5t-11 -1t-8.5 -1t-7 -0.5h-5.5h-4.5t-3 0.5t-2 1.5l-1.5 3q-6 16 47 40t103 30
q46 7 108 1t76 -24zM1364 618q0 -31 13.5 -64t32 -58t37.5 -46t33 -32l13 -11l-227 -224q-40 37 -79 75.5t-58 58.5l-19 20q-11 11 -25 33q-38 -59 -97.5 -102.5t-127.5 -63.5t-140 -23t-137.5 21t-117.5 65.5t-83 113t-31 162.5q0 84 28 154t72 116.5t106.5 83t122.5 57
t130 34.5t119.5 18.5t99.5 6.5v127q0 65 -21 97q-34 53 -121 53q-6 0 -16.5 -1t-40.5 -12t-56 -29.5t-56 -59.5t-48 -96l-294 27q0 60 22 119t67 113t108 95t151.5 65.5t190.5 24.5q100 0 181 -25t129.5 -61.5t81 -83t45 -86t12.5 -73.5v-589zM692 597q0 -86 70 -133
q66 -44 139 -22q84 25 114 123q14 45 14 101v162q-59 -2 -111 -12t-106.5 -33.5t-87 -71t-32.5 -114.5z" />
    <glyph glyph-name="_586" unicode="&#xf271;" horiz-adv-x="1792" 
d="M1536 1280q52 0 90 -38t38 -90v-1280q0 -52 -38 -90t-90 -38h-1408q-52 0 -90 38t-38 90v1280q0 52 38 90t90 38h128v96q0 66 47 113t113 47h64q66 0 113 -47t47 -113v-96h384v96q0 66 47 113t113 47h64q66 0 113 -47t47 -113v-96h128zM1152 1376v-288q0 -14 9 -23t23 -9
h64q14 0 23 9t9 23v288q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23zM384 1376v-288q0 -14 9 -23t23 -9h64q14 0 23 9t9 23v288q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23zM1536 -128v1024h-1408v-1024h1408zM896 448h224q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-224
v-224q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v224h-224q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h224v224q0 14 9 23t23 9h64q14 0 23 -9t9 -23v-224z" />
    <glyph glyph-name="_587" unicode="&#xf272;" horiz-adv-x="1792" 
d="M1152 416v-64q0 -14 -9 -23t-23 -9h-576q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h576q14 0 23 -9t9 -23zM128 -128h1408v1024h-1408v-1024zM512 1088v288q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-288q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1280 1088v288q0 14 -9 23
t-23 9h-64q-14 0 -23 -9t-9 -23v-288q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1664 1152v-1280q0 -52 -38 -90t-90 -38h-1408q-52 0 -90 38t-38 90v1280q0 52 38 90t90 38h128v96q0 66 47 113t113 47h64q66 0 113 -47t47 -113v-96h384v96q0 66 47 113t113 47h64q66 0 113 -47
t47 -113v-96h128q52 0 90 -38t38 -90z" />
    <glyph glyph-name="_588" unicode="&#xf273;" horiz-adv-x="1792" 
d="M1111 151l-46 -46q-9 -9 -22 -9t-23 9l-188 189l-188 -189q-10 -9 -23 -9t-22 9l-46 46q-9 9 -9 22t9 23l189 188l-189 188q-9 10 -9 23t9 22l46 46q9 9 22 9t23 -9l188 -188l188 188q10 9 23 9t22 -9l46 -46q9 -9 9 -22t-9 -23l-188 -188l188 -188q9 -10 9 -23t-9 -22z
M128 -128h1408v1024h-1408v-1024zM512 1088v288q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-288q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1280 1088v288q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-288q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1664 1152v-1280
q0 -52 -38 -90t-90 -38h-1408q-52 0 -90 38t-38 90v1280q0 52 38 90t90 38h128v96q0 66 47 113t113 47h64q66 0 113 -47t47 -113v-96h384v96q0 66 47 113t113 47h64q66 0 113 -47t47 -113v-96h128q52 0 90 -38t38 -90z" />
    <glyph glyph-name="_589" unicode="&#xf274;" horiz-adv-x="1792" 
d="M1303 572l-512 -512q-10 -9 -23 -9t-23 9l-288 288q-9 10 -9 23t9 22l46 46q9 9 22 9t23 -9l220 -220l444 444q10 9 23 9t22 -9l46 -46q9 -9 9 -22t-9 -23zM128 -128h1408v1024h-1408v-1024zM512 1088v288q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-288q0 -14 9 -23
t23 -9h64q14 0 23 9t9 23zM1280 1088v288q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-288q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1664 1152v-1280q0 -52 -38 -90t-90 -38h-1408q-52 0 -90 38t-38 90v1280q0 52 38 90t90 38h128v96q0 66 47 113t113 47h64q66 0 113 -47
t47 -113v-96h384v96q0 66 47 113t113 47h64q66 0 113 -47t47 -113v-96h128q52 0 90 -38t38 -90z" />
    <glyph glyph-name="_590" unicode="&#xf275;" horiz-adv-x="1792" 
d="M448 1536q26 0 45 -19t19 -45v-891l536 429q17 14 40 14q26 0 45 -19t19 -45v-379l536 429q17 14 40 14q26 0 45 -19t19 -45v-1152q0 -26 -19 -45t-45 -19h-1664q-26 0 -45 19t-19 45v1664q0 26 19 45t45 19h384z" />
    <glyph glyph-name="_591" unicode="&#xf276;" horiz-adv-x="1024" 
d="M512 448q66 0 128 15v-655q0 -26 -19 -45t-45 -19h-128q-26 0 -45 19t-19 45v655q62 -15 128 -15zM512 1536q212 0 362 -150t150 -362t-150 -362t-362 -150t-362 150t-150 362t150 362t362 150zM512 1312q14 0 23 9t9 23t-9 23t-23 9q-146 0 -249 -103t-103 -249
q0 -14 9 -23t23 -9t23 9t9 23q0 119 84.5 203.5t203.5 84.5z" />
    <glyph glyph-name="_592" unicode="&#xf277;" horiz-adv-x="1792" 
d="M1745 1239q10 -10 10 -23t-10 -23l-141 -141q-28 -28 -68 -28h-1344q-26 0 -45 19t-19 45v256q0 26 19 45t45 19h576v64q0 26 19 45t45 19h128q26 0 45 -19t19 -45v-64h512q40 0 68 -28zM768 320h256v-512q0 -26 -19 -45t-45 -19h-128q-26 0 -45 19t-19 45v512zM1600 768
q26 0 45 -19t19 -45v-256q0 -26 -19 -45t-45 -19h-1344q-40 0 -68 28l-141 141q-10 10 -10 23t10 23l141 141q28 28 68 28h512v192h256v-192h576z" />
    <glyph glyph-name="_593" unicode="&#xf278;" horiz-adv-x="2048" 
d="M2020 1525q28 -20 28 -53v-1408q0 -20 -11 -36t-29 -23l-640 -256q-24 -11 -48 0l-616 246l-616 -246q-10 -5 -24 -5q-19 0 -36 11q-28 20 -28 53v1408q0 20 11 36t29 23l640 256q24 11 48 0l616 -246l616 246q32 13 60 -6zM736 1390v-1270l576 -230v1270zM128 1173
v-1270l544 217v1270zM1920 107v1270l-544 -217v-1270z" />
    <glyph glyph-name="_594" unicode="&#xf279;" horiz-adv-x="1792" 
d="M512 1536q13 0 22.5 -9.5t9.5 -22.5v-1472q0 -20 -17 -28l-480 -256q-7 -4 -15 -4q-13 0 -22.5 9.5t-9.5 22.5v1472q0 20 17 28l480 256q7 4 15 4zM1760 1536q13 0 22.5 -9.5t9.5 -22.5v-1472q0 -20 -17 -28l-480 -256q-7 -4 -15 -4q-13 0 -22.5 9.5t-9.5 22.5v1472
q0 20 17 28l480 256q7 4 15 4zM640 1536q8 0 14 -3l512 -256q18 -10 18 -29v-1472q0 -13 -9.5 -22.5t-22.5 -9.5q-8 0 -14 3l-512 256q-18 10 -18 29v1472q0 13 9.5 22.5t22.5 9.5z" />
    <glyph glyph-name="_595" unicode="&#xf27a;" horiz-adv-x="1792" 
d="M640 640q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1024 640q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1408 640q0 53 -37.5 90.5t-90.5 37.5
t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1792 640q0 -174 -120 -321.5t-326 -233t-450 -85.5q-110 0 -211 18q-173 -173 -435 -229q-52 -10 -86 -13q-12 -1 -22 6t-13 18q-4 15 20 37q5 5 23.5 21.5t25.5 23.5t23.5 25.5t24 31.5t20.5 37
t20 48t14.5 57.5t12.5 72.5q-146 90 -229.5 216.5t-83.5 269.5q0 174 120 321.5t326 233t450 85.5t450 -85.5t326 -233t120 -321.5z" />
    <glyph glyph-name="_596" unicode="&#xf27b;" horiz-adv-x="1792" 
d="M640 640q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1024 640q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1408 640q0 -53 -37.5 -90.5t-90.5 -37.5
t-90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM896 1152q-204 0 -381.5 -69.5t-282 -187.5t-104.5 -255q0 -112 71.5 -213.5t201.5 -175.5l87 -50l-27 -96q-24 -91 -70 -172q152 63 275 171l43 38l57 -6q69 -8 130 -8q204 0 381.5 69.5t282 187.5
t104.5 255t-104.5 255t-282 187.5t-381.5 69.5zM1792 640q0 -174 -120 -321.5t-326 -233t-450 -85.5q-70 0 -145 8q-198 -175 -460 -242q-49 -14 -114 -22h-5q-15 0 -27 10.5t-16 27.5v1q-3 4 -0.5 12t2 10t4.5 9.5l6 9t7 8.5t8 9q7 8 31 34.5t34.5 38t31 39.5t32.5 51
t27 59t26 76q-157 89 -247.5 220t-90.5 281q0 130 71 248.5t191 204.5t286 136.5t348 50.5t348 -50.5t286 -136.5t191 -204.5t71 -248.5z" />
    <glyph glyph-name="_597" unicode="&#xf27c;" horiz-adv-x="1024" 
d="M512 345l512 295v-591l-512 -296v592zM0 640v-591l512 296zM512 1527v-591l-512 -296v591zM512 936l512 295v-591z" />
    <glyph glyph-name="_598" unicode="&#xf27d;" horiz-adv-x="1792" 
d="M1709 1018q-10 -236 -332 -651q-333 -431 -562 -431q-142 0 -240 263q-44 160 -132 482q-72 262 -157 262q-18 0 -127 -76l-77 98q24 21 108 96.5t130 115.5q156 138 241 146q95 9 153 -55.5t81 -203.5q44 -287 66 -373q55 -249 120 -249q51 0 154 161q101 161 109 246
q13 139 -109 139q-57 0 -121 -26q120 393 459 382q251 -8 236 -326z" />
    <glyph glyph-name="f27e" unicode="&#xf27e;" 
d="M0 1408h1536v-1536h-1536v1536zM1085 293l-221 631l221 297h-634l221 -297l-221 -631l317 -304z" />
    <glyph glyph-name="uniF280" unicode="&#xf280;" 
d="M0 1408h1536v-1536h-1536v1536zM908 1088l-12 -33l75 -83l-31 -114l25 -25l107 57l107 -57l25 25l-31 114l75 83l-12 33h-95l-53 96h-32l-53 -96h-95zM641 925q32 0 44.5 -16t11.5 -63l174 21q0 55 -17.5 92.5t-50.5 56t-69 25.5t-85 7q-133 0 -199 -57.5t-66 -182.5v-72
h-96v-128h76q20 0 20 -8v-382q0 -14 -5 -20t-18 -7l-73 -7v-88h448v86l-149 14q-6 1 -8.5 1.5t-3.5 2.5t-0.5 4t1 7t0.5 10v387h191l38 128h-231q-6 0 -2 6t4 9v80q0 27 1.5 40.5t7.5 28t19.5 20t36.5 5.5zM1248 96v86l-54 9q-7 1 -9.5 2.5t-2.5 3t1 7.5t1 12v520h-275
l-23 -101l83 -22q23 -7 23 -27v-370q0 -14 -6 -18.5t-20 -6.5l-70 -9v-86h352z" />
    <glyph glyph-name="uniF281" unicode="&#xf281;" horiz-adv-x="1792" 
d="M1792 690q0 -58 -29.5 -105.5t-79.5 -72.5q12 -46 12 -96q0 -155 -106.5 -287t-290.5 -208.5t-400 -76.5t-399.5 76.5t-290 208.5t-106.5 287q0 47 11 94q-51 25 -82 73.5t-31 106.5q0 82 58 140.5t141 58.5q85 0 145 -63q218 152 515 162l116 521q3 13 15 21t26 5
l369 -81q18 37 54 59.5t79 22.5q62 0 106 -43.5t44 -105.5t-44 -106t-106 -44t-105.5 43.5t-43.5 105.5l-334 74l-104 -472q300 -9 519 -160q58 61 143 61q83 0 141 -58.5t58 -140.5zM418 491q0 -62 43.5 -106t105.5 -44t106 44t44 106t-44 105.5t-106 43.5q-61 0 -105 -44
t-44 -105zM1228 136q11 11 11 26t-11 26q-10 10 -25 10t-26 -10q-41 -42 -121 -62t-160 -20t-160 20t-121 62q-11 10 -26 10t-25 -10q-11 -10 -11 -25.5t11 -26.5q43 -43 118.5 -68t122.5 -29.5t91 -4.5t91 4.5t122.5 29.5t118.5 68zM1225 341q62 0 105.5 44t43.5 106
q0 61 -44 105t-105 44q-62 0 -106 -43.5t-44 -105.5t44 -106t106 -44z" />
    <glyph glyph-name="_602" unicode="&#xf282;" horiz-adv-x="1792" 
d="M69 741h1q16 126 58.5 241.5t115 217t167.5 176t223.5 117.5t276.5 43q231 0 414 -105.5t294 -303.5q104 -187 104 -442v-188h-1125q1 -111 53.5 -192.5t136.5 -122.5t189.5 -57t213 -3t208 46.5t173.5 84.5v-377q-92 -55 -229.5 -92t-312.5 -38t-316 53
q-189 73 -311.5 249t-124.5 372q-3 242 111 412t325 268q-48 -60 -78 -125.5t-46 -159.5h635q8 77 -8 140t-47 101.5t-70.5 66.5t-80.5 41t-75 20.5t-56 8.5l-22 1q-135 -5 -259.5 -44.5t-223.5 -104.5t-176 -140.5t-138 -163.5z" />
    <glyph glyph-name="_603" unicode="&#xf283;" horiz-adv-x="2304" 
d="M0 32v608h2304v-608q0 -66 -47 -113t-113 -47h-1984q-66 0 -113 47t-47 113zM640 256v-128h384v128h-384zM256 256v-128h256v128h-256zM2144 1408q66 0 113 -47t47 -113v-224h-2304v224q0 66 47 113t113 47h1984z" />
    <glyph glyph-name="_604" unicode="&#xf284;" horiz-adv-x="1792" 
d="M1584 246l-218 111q-74 -120 -196.5 -189t-263.5 -69q-147 0 -271 72t-196 196t-72 270q0 110 42.5 209.5t115 172t172 115t209.5 42.5q131 0 247.5 -60.5t192.5 -168.5l215 125q-110 169 -286.5 265t-378.5 96q-161 0 -308 -63t-253 -169t-169 -253t-63 -308t63 -308
t169 -253t253 -169t308 -63q213 0 397.5 107t290.5 292zM1030 643l693 -352q-116 -253 -334.5 -400t-492.5 -147q-182 0 -348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71q260 0 470.5 -133.5t335.5 -366.5zM1543 640h-39v-160h-96v352h136q32 0 54.5 -20
t28.5 -48t1 -56t-27.5 -48t-57.5 -20z" />
    <glyph glyph-name="uniF285" unicode="&#xf285;" horiz-adv-x="1792" 
d="M1427 827l-614 386l92 151h855zM405 562l-184 116v858l1183 -743zM1424 697l147 -95v-858l-532 335zM1387 718l-500 -802h-855l356 571z" />
    <glyph glyph-name="uniF286" unicode="&#xf286;" horiz-adv-x="1792" 
d="M640 528v224q0 16 -16 16h-96q-16 0 -16 -16v-224q0 -16 16 -16h96q16 0 16 16zM1152 528v224q0 16 -16 16h-96q-16 0 -16 -16v-224q0 -16 16 -16h96q16 0 16 16zM1664 496v-752h-640v320q0 80 -56 136t-136 56t-136 -56t-56 -136v-320h-640v752q0 16 16 16h96
q16 0 16 -16v-112h128v624q0 16 16 16h96q16 0 16 -16v-112h128v112q0 16 16 16h96q16 0 16 -16v-112h128v112q0 6 2.5 9.5t8.5 5t9.5 2t11.5 0t9 -0.5v391q-32 15 -32 50q0 23 16.5 39t38.5 16t38.5 -16t16.5 -39q0 -35 -32 -50v-17q45 10 83 10q21 0 59.5 -7.5t54.5 -7.5
q17 0 47 7.5t37 7.5q16 0 16 -16v-210q0 -15 -35 -21.5t-62 -6.5q-18 0 -54.5 7.5t-55.5 7.5q-40 0 -90 -12v-133q1 0 9 0.5t11.5 0t9.5 -2t8.5 -5t2.5 -9.5v-112h128v112q0 16 16 16h96q16 0 16 -16v-112h128v112q0 16 16 16h96q16 0 16 -16v-624h128v112q0 16 16 16h96
q16 0 16 -16z" />
    <glyph glyph-name="_607" unicode="&#xf287;" horiz-adv-x="2304" 
d="M2288 731q16 -8 16 -27t-16 -27l-320 -192q-8 -5 -16 -5q-9 0 -16 4q-16 10 -16 28v128h-858q37 -58 83 -165q16 -37 24.5 -55t24 -49t27 -47t27 -34t31.5 -26t33 -8h96v96q0 14 9 23t23 9h320q14 0 23 -9t9 -23v-320q0 -14 -9 -23t-23 -9h-320q-14 0 -23 9t-9 23v96h-96
q-32 0 -61 10t-51 23.5t-45 40.5t-37 46t-33.5 57t-28.5 57.5t-28 60.5q-23 53 -37 81.5t-36 65t-44.5 53.5t-46.5 17h-360q-22 -84 -91 -138t-157 -54q-106 0 -181 75t-75 181t75 181t181 75q88 0 157 -54t91 -138h104q24 0 46.5 17t44.5 53.5t36 65t37 81.5q19 41 28 60.5
t28.5 57.5t33.5 57t37 46t45 40.5t51 23.5t61 10h107q21 57 70 92.5t111 35.5q80 0 136 -56t56 -136t-56 -136t-136 -56q-62 0 -111 35.5t-70 92.5h-107q-17 0 -33 -8t-31.5 -26t-27 -34t-27 -47t-24 -49t-24.5 -55q-46 -107 -83 -165h1114v128q0 18 16 28t32 -1z" />
    <glyph glyph-name="_608" unicode="&#xf288;" horiz-adv-x="1792" 
d="M1150 774q0 -56 -39.5 -95t-95.5 -39h-253v269h253q56 0 95.5 -39.5t39.5 -95.5zM1329 774q0 130 -91.5 222t-222.5 92h-433v-896h180v269h253q130 0 222 91.5t92 221.5zM1792 640q0 -182 -71 -348t-191 -286t-286 -191t-348 -71t-348 71t-286 191t-191 286t-71 348
t71 348t191 286t286 191t348 71t348 -71t286 -191t191 -286t71 -348z" />
    <glyph glyph-name="_609" unicode="&#xf289;" horiz-adv-x="2304" 
d="M1645 438q0 59 -34 106.5t-87 68.5q-7 -45 -23 -92q-7 -24 -27.5 -38t-44.5 -14q-12 0 -24 3q-31 10 -45 38.5t-4 58.5q23 71 23 143q0 123 -61 227.5t-166 165.5t-228 61q-134 0 -247 -73t-167 -194q108 -28 188 -106q22 -23 22 -55t-22 -54t-54 -22t-55 22
q-75 75 -180 75q-106 0 -181 -74.5t-75 -180.5t75 -180.5t181 -74.5h1046q79 0 134.5 55.5t55.5 133.5zM1798 438q0 -142 -100.5 -242t-242.5 -100h-1046q-169 0 -289 119.5t-120 288.5q0 153 100 267t249 136q62 184 221 298t354 114q235 0 408.5 -158.5t196.5 -389.5
q116 -25 192.5 -118.5t76.5 -214.5zM2048 438q0 -175 -97 -319q-23 -33 -64 -33q-24 0 -43 13q-26 17 -32 48.5t12 57.5q71 104 71 233t-71 233q-18 26 -12 57t32 49t57.5 11.5t49.5 -32.5q97 -142 97 -318zM2304 438q0 -244 -134 -443q-23 -34 -64 -34q-23 0 -42 13
q-26 18 -32.5 49t11.5 57q108 164 108 358q0 195 -108 357q-18 26 -11.5 57.5t32.5 48.5q26 18 57 12t49 -33q134 -198 134 -442z" />
    <glyph glyph-name="_610" unicode="&#xf28a;" 
d="M1500 -13q0 -89 -63 -152.5t-153 -63.5t-153.5 63.5t-63.5 152.5q0 90 63.5 153.5t153.5 63.5t153 -63.5t63 -153.5zM1267 268q-115 -15 -192.5 -102.5t-77.5 -205.5q0 -74 33 -138q-146 -78 -379 -78q-109 0 -201 21t-153.5 54.5t-110.5 76.5t-76 85t-44.5 83
t-23.5 66.5t-6 39.5q0 19 4.5 42.5t18.5 56t36.5 58t64 43.5t94.5 18t94 -17.5t63 -41t35.5 -53t17.5 -49t4 -33.5q0 -34 -23 -81q28 -27 82 -42t93 -17l40 -1q115 0 190 51t75 133q0 26 -9 48.5t-31.5 44.5t-49.5 41t-74 44t-93.5 47.5t-119.5 56.5q-28 13 -43 20
q-116 55 -187 100t-122.5 102t-72 125.5t-20.5 162.5q0 78 20.5 150t66 137.5t112.5 114t166.5 77t221.5 28.5q120 0 220 -26t164.5 -67t109.5 -94t64 -105.5t19 -103.5q0 -46 -15 -82.5t-36.5 -58t-48.5 -36t-49 -19.5t-39 -5h-8h-32t-39 5t-44 14t-41 28t-37 46t-24 70.5
t-10 97.5q-15 16 -59 25.5t-81 10.5l-37 1q-68 0 -117.5 -31t-70.5 -70t-21 -76q0 -24 5 -43t24 -46t53 -51t97 -53.5t150 -58.5q76 -25 138.5 -53.5t109 -55.5t83 -59t60.5 -59.5t41 -62.5t26.5 -62t14.5 -63.5t6 -62t1 -62.5z" />
    <glyph glyph-name="_611" unicode="&#xf28b;" 
d="M704 352v576q0 14 -9 23t-23 9h-256q-14 0 -23 -9t-9 -23v-576q0 -14 9 -23t23 -9h256q14 0 23 9t9 23zM1152 352v576q0 14 -9 23t-23 9h-256q-14 0 -23 -9t-9 -23v-576q0 -14 9 -23t23 -9h256q14 0 23 9t9 23zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103
t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="_612" unicode="&#xf28c;" 
d="M768 1408q209 0 385.5 -103t279.5 -279.5t103 -385.5t-103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103zM768 96q148 0 273 73t198 198t73 273t-73 273t-198 198t-273 73t-273 -73t-198 -198t-73 -273
t73 -273t198 -198t273 -73zM864 320q-14 0 -23 9t-9 23v576q0 14 9 23t23 9h192q14 0 23 -9t9 -23v-576q0 -14 -9 -23t-23 -9h-192zM480 320q-14 0 -23 9t-9 23v576q0 14 9 23t23 9h192q14 0 23 -9t9 -23v-576q0 -14 -9 -23t-23 -9h-192z" />
    <glyph glyph-name="_613" unicode="&#xf28d;" 
d="M1088 352v576q0 14 -9 23t-23 9h-576q-14 0 -23 -9t-9 -23v-576q0 -14 9 -23t23 -9h576q14 0 23 9t9 23zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5
t103 -385.5z" />
    <glyph glyph-name="_614" unicode="&#xf28e;" 
d="M768 1408q209 0 385.5 -103t279.5 -279.5t103 -385.5t-103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103zM768 96q148 0 273 73t198 198t73 273t-73 273t-198 198t-273 73t-273 -73t-198 -198t-73 -273
t73 -273t198 -198t273 -73zM480 320q-14 0 -23 9t-9 23v576q0 14 9 23t23 9h576q14 0 23 -9t9 -23v-576q0 -14 -9 -23t-23 -9h-576z" />
    <glyph glyph-name="_615" unicode="&#xf290;" horiz-adv-x="1792" 
d="M1757 128l35 -313q3 -28 -16 -50q-19 -21 -48 -21h-1664q-29 0 -48 21q-19 22 -16 50l35 313h1722zM1664 967l86 -775h-1708l86 775q3 24 21 40.5t43 16.5h256v-128q0 -53 37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5v128h384v-128q0 -53 37.5 -90.5t90.5 -37.5
t90.5 37.5t37.5 90.5v128h256q25 0 43 -16.5t21 -40.5zM1280 1152v-256q0 -26 -19 -45t-45 -19t-45 19t-19 45v256q0 106 -75 181t-181 75t-181 -75t-75 -181v-256q0 -26 -19 -45t-45 -19t-45 19t-19 45v256q0 159 112.5 271.5t271.5 112.5t271.5 -112.5t112.5 -271.5z" />
    <glyph glyph-name="_616" unicode="&#xf291;" horiz-adv-x="2048" 
d="M1920 768q53 0 90.5 -37.5t37.5 -90.5t-37.5 -90.5t-90.5 -37.5h-15l-115 -662q-8 -46 -44 -76t-82 -30h-1280q-46 0 -82 30t-44 76l-115 662h-15q-53 0 -90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5h1792zM485 -32q26 2 43.5 22.5t15.5 46.5l-32 416q-2 26 -22.5 43.5
t-46.5 15.5t-43.5 -22.5t-15.5 -46.5l32 -416q2 -25 20.5 -42t43.5 -17h5zM896 32v416q0 26 -19 45t-45 19t-45 -19t-19 -45v-416q0 -26 19 -45t45 -19t45 19t19 45zM1280 32v416q0 26 -19 45t-45 19t-45 -19t-19 -45v-416q0 -26 19 -45t45 -19t45 19t19 45zM1632 27l32 416
q2 26 -15.5 46.5t-43.5 22.5t-46.5 -15.5t-22.5 -43.5l-32 -416q-2 -26 15.5 -46.5t43.5 -22.5h5q25 0 43.5 17t20.5 42zM476 1244l-93 -412h-132l101 441q19 88 89 143.5t160 55.5h167q0 26 19 45t45 19h384q26 0 45 -19t19 -45h167q90 0 160 -55.5t89 -143.5l101 -441
h-132l-93 412q-11 44 -45.5 72t-79.5 28h-167q0 -26 -19 -45t-45 -19h-384q-26 0 -45 19t-19 45h-167q-45 0 -79.5 -28t-45.5 -72z" />
    <glyph glyph-name="_617" unicode="&#xf292;" horiz-adv-x="1792" 
d="M991 512l64 256h-254l-64 -256h254zM1759 1016l-56 -224q-7 -24 -31 -24h-327l-64 -256h311q15 0 25 -12q10 -14 6 -28l-56 -224q-5 -24 -31 -24h-327l-81 -328q-7 -24 -31 -24h-224q-16 0 -26 12q-9 12 -6 28l78 312h-254l-81 -328q-7 -24 -31 -24h-225q-15 0 -25 12
q-9 12 -6 28l78 312h-311q-15 0 -25 12q-9 12 -6 28l56 224q7 24 31 24h327l64 256h-311q-15 0 -25 12q-10 14 -6 28l56 224q5 24 31 24h327l81 328q7 24 32 24h224q15 0 25 -12q9 -12 6 -28l-78 -312h254l81 328q7 24 32 24h224q15 0 25 -12q9 -12 6 -28l-78 -312h311
q15 0 25 -12q9 -12 6 -28z" />
    <glyph glyph-name="_618" unicode="&#xf293;" 
d="M841 483l148 -148l-149 -149zM840 1094l149 -149l-148 -148zM710 -130l464 464l-306 306l306 306l-464 464v-611l-255 255l-93 -93l320 -321l-320 -321l93 -93l255 255v-611zM1429 640q0 -209 -32 -365.5t-87.5 -257t-140.5 -162.5t-181.5 -86.5t-219.5 -24.5
t-219.5 24.5t-181.5 86.5t-140.5 162.5t-87.5 257t-32 365.5t32 365.5t87.5 257t140.5 162.5t181.5 86.5t219.5 24.5t219.5 -24.5t181.5 -86.5t140.5 -162.5t87.5 -257t32 -365.5z" />
    <glyph glyph-name="_619" unicode="&#xf294;" horiz-adv-x="1024" 
d="M596 113l173 172l-173 172v-344zM596 823l173 172l-173 172v-344zM628 640l356 -356l-539 -540v711l-297 -296l-108 108l372 373l-372 373l108 108l297 -296v711l539 -540z" />
    <glyph glyph-name="_620" unicode="&#xf295;" 
d="M1280 256q0 52 -38 90t-90 38t-90 -38t-38 -90t38 -90t90 -38t90 38t38 90zM512 1024q0 52 -38 90t-90 38t-90 -38t-38 -90t38 -90t90 -38t90 38t38 90zM1536 256q0 -159 -112.5 -271.5t-271.5 -112.5t-271.5 112.5t-112.5 271.5t112.5 271.5t271.5 112.5t271.5 -112.5
t112.5 -271.5zM1440 1344q0 -20 -13 -38l-1056 -1408q-19 -26 -51 -26h-160q-26 0 -45 19t-19 45q0 20 13 38l1056 1408q19 26 51 26h160q26 0 45 -19t19 -45zM768 1024q0 -159 -112.5 -271.5t-271.5 -112.5t-271.5 112.5t-112.5 271.5t112.5 271.5t271.5 112.5
t271.5 -112.5t112.5 -271.5z" />
    <glyph glyph-name="_621" unicode="&#xf296;" horiz-adv-x="1792" 
d="M104 830l792 -1015l-868 630q-18 13 -25 34.5t0 42.5l101 308v0zM566 830h660l-330 -1015v0zM368 1442l198 -612h-462l198 612q8 23 33 23t33 -23zM1688 830l101 -308q7 -21 0 -42.5t-25 -34.5l-868 -630l792 1015v0zM1688 830h-462l198 612q8 23 33 23t33 -23z" />
    <glyph glyph-name="_622" unicode="&#xf297;" horiz-adv-x="1792" 
d="M384 704h160v224h-160v-224zM1221 372v92q-104 -36 -243 -38q-135 -1 -259.5 46.5t-220.5 122.5l1 -96q88 -80 212 -128.5t272 -47.5q129 0 238 49zM640 704h640v224h-640v-224zM1792 736q0 -187 -99 -352q89 -102 89 -229q0 -157 -129.5 -268t-313.5 -111
q-122 0 -225 52.5t-161 140.5q-19 -1 -57 -1t-57 1q-58 -88 -161 -140.5t-225 -52.5q-184 0 -313.5 111t-129.5 268q0 127 89 229q-99 165 -99 352q0 209 120 385.5t326.5 279.5t449.5 103t449.5 -103t326.5 -279.5t120 -385.5z" />
    <glyph glyph-name="_623" unicode="&#xf298;" 
d="M515 625v-128h-252v128h252zM515 880v-127h-252v127h252zM1273 369v-128h-341v128h341zM1273 625v-128h-672v128h672zM1273 880v-127h-672v127h672zM1408 20v1240q0 8 -6 14t-14 6h-32l-378 -256l-210 171l-210 -171l-378 256h-32q-8 0 -14 -6t-6 -14v-1240q0 -8 6 -14
t14 -6h1240q8 0 14 6t6 14zM553 1130l185 150h-406zM983 1130l221 150h-406zM1536 1260v-1240q0 -62 -43 -105t-105 -43h-1240q-62 0 -105 43t-43 105v1240q0 62 43 105t105 43h1240q62 0 105 -43t43 -105z" />
    <glyph glyph-name="_624" unicode="&#xf299;" horiz-adv-x="1792" 
d="M896 720q-104 196 -160 278q-139 202 -347 318q-34 19 -70 36q-89 40 -94 32t34 -38l39 -31q62 -43 112.5 -93.5t94.5 -116.5t70.5 -113t70.5 -131q9 -17 13 -25q44 -84 84 -153t98 -154t115.5 -150t131 -123.5t148.5 -90.5q153 -66 154 -60q1 3 -49 37q-53 36 -81 57
q-77 58 -179 211t-185 310zM549 177q-76 60 -132.5 125t-98 143.5t-71 154.5t-58.5 186t-52 209t-60.5 252t-76.5 289q273 0 497.5 -36t379 -92t271 -144.5t185.5 -172.5t110 -198.5t56 -199.5t12.5 -198.5t-9.5 -173t-20 -143.5t-13 -107l323 -327h-104l-281 285
q-22 -2 -91.5 -14t-121.5 -19t-138 -6t-160.5 17t-167.5 59t-179 111z" />
    <glyph glyph-name="_625" unicode="&#xf29a;" horiz-adv-x="1792" 
d="M1374 879q-6 26 -28.5 39.5t-48.5 7.5q-261 -62 -401 -62t-401 62q-26 6 -48.5 -7.5t-28.5 -39.5t7.5 -48.5t39.5 -28.5q194 -46 303 -58q-2 -158 -15.5 -269t-26.5 -155.5t-41 -115.5l-9 -21q-10 -25 1 -49t36 -34q9 -4 23 -4q44 0 60 41l8 20q54 139 71 259h42
q17 -120 71 -259l8 -20q16 -41 60 -41q14 0 23 4q25 10 36 34t1 49l-9 21q-28 71 -41 115.5t-26.5 155.5t-15.5 269q109 12 303 58q26 6 39.5 28.5t7.5 48.5zM1024 1024q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5z
M1600 640q0 -143 -55.5 -273.5t-150 -225t-225 -150t-273.5 -55.5t-273.5 55.5t-225 150t-150 225t-55.5 273.5t55.5 273.5t150 225t225 150t273.5 55.5t273.5 -55.5t225 -150t150 -225t55.5 -273.5zM896 1408q-156 0 -298 -61t-245 -164t-164 -245t-61 -298t61 -298
t164 -245t245 -164t298 -61t298 61t245 164t164 245t61 298t-61 298t-164 245t-245 164t-298 61zM1792 640q0 -182 -71 -348t-191 -286t-286 -191t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71t348 -71t286 -191t191 -286t71 -348z" />
    <glyph glyph-name="_626" unicode="&#xf29b;" 
d="M1438 723q34 -35 29 -82l-44 -551q-4 -42 -34.5 -70t-71.5 -28q-6 0 -9 1q-44 3 -72.5 36.5t-25.5 77.5l35 429l-143 -8q55 -113 55 -240q0 -216 -148 -372l-137 137q91 101 91 235q0 145 -102.5 248t-247.5 103q-134 0 -236 -92l-137 138q120 114 284 141l264 300
l-149 87l-181 -161q-33 -30 -77 -27.5t-73 35.5t-26.5 77t34.5 73l239 213q26 23 60 26.5t64 -14.5l488 -283q36 -21 48 -68q17 -67 -26 -117l-205 -232l371 20q49 3 83 -32zM1240 1180q-74 0 -126 52t-52 126t52 126t126 52t126.5 -52t52.5 -126t-52.5 -126t-126.5 -52z
M613 -62q106 0 196 61l139 -139q-146 -116 -335 -116q-148 0 -273.5 73t-198.5 198t-73 273q0 188 116 336l139 -139q-60 -88 -60 -197q0 -145 102.5 -247.5t247.5 -102.5z" />
    <glyph glyph-name="_627" unicode="&#xf29c;" 
d="M880 336v-160q0 -14 -9 -23t-23 -9h-160q-14 0 -23 9t-9 23v160q0 14 9 23t23 9h160q14 0 23 -9t9 -23zM1136 832q0 -50 -15 -90t-45.5 -69t-52 -44t-59.5 -36q-32 -18 -46.5 -28t-26 -24t-11.5 -29v-32q0 -14 -9 -23t-23 -9h-160q-14 0 -23 9t-9 23v68q0 35 10.5 64.5
t24 47.5t39 35.5t41 25.5t44.5 21q53 25 75 43t22 49q0 42 -43.5 71.5t-95.5 29.5q-56 0 -95 -27q-29 -20 -80 -83q-9 -12 -25 -12q-11 0 -19 6l-108 82q-10 7 -12 20t5 23q122 192 349 192q129 0 238.5 -89.5t109.5 -214.5zM768 1280q-130 0 -248.5 -51t-204 -136.5
t-136.5 -204t-51 -248.5t51 -248.5t136.5 -204t204 -136.5t248.5 -51t248.5 51t204 136.5t136.5 204t51 248.5t-51 248.5t-136.5 204t-204 136.5t-248.5 51zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5
t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="_628" unicode="&#xf29d;" horiz-adv-x="1408" 
d="M366 1225q-64 0 -110 45.5t-46 110.5q0 64 46 109.5t110 45.5t109.5 -45.5t45.5 -109.5q0 -65 -45.5 -110.5t-109.5 -45.5zM917 583q0 -50 -30 -67.5t-63.5 -6.5t-47.5 34l-367 438q-7 12 -14 15.5t-11 1.5l-3 -3q-7 -8 4 -21l122 -139l1 -354l-161 -457
q-67 -192 -92 -234q-15 -26 -28 -32q-50 -26 -103 -1q-29 13 -41.5 43t-9.5 57q2 17 197 618l5 416l-85 -164l35 -222q4 -24 -1 -42t-14 -27.5t-19 -16t-17 -7.5l-7 -2q-19 -3 -34.5 3t-24 16t-14 22t-7.5 19.5t-2 9.5l-46 299l211 381q23 34 113 34q75 0 107 -40l424 -521
q7 -5 14 -17l3 -3l-1 -1q7 -13 7 -29zM514 433q43 -113 88.5 -225t69.5 -168l24 -55q36 -93 42 -125q11 -70 -36 -97q-35 -22 -66 -16t-51 22t-29 35h-1q-6 16 -8 25l-124 351zM1338 -159q31 -49 31 -57q0 -5 -3 -7q-9 -5 -14.5 0.5t-15.5 26t-16 30.5q-114 172 -423 661
q3 -1 7 1t7 4l3 2q11 9 11 17z" />
    <glyph glyph-name="_629" unicode="&#xf29e;" horiz-adv-x="2304" 
d="M504 542h171l-1 265zM1530 641q0 87 -50.5 140t-146.5 53h-54v-388h52q91 0 145 57t54 138zM956 1018l1 -756q0 -14 -9.5 -24t-23.5 -10h-216q-14 0 -23.5 10t-9.5 24v62h-291l-55 -81q-10 -15 -28 -15h-267q-21 0 -30.5 18t3.5 35l556 757q9 14 27 14h332q14 0 24 -10
t10 -24zM1783 641q0 -193 -125.5 -303t-324.5 -110h-270q-14 0 -24 10t-10 24v756q0 14 10 24t24 10h268q200 0 326 -109t126 -302zM1939 640q0 -11 -0.5 -29t-8 -71.5t-21.5 -102t-44.5 -108t-73.5 -102.5h-51q38 45 66.5 104.5t41.5 112t21 98t9 72.5l1 27q0 8 -0.5 22.5
t-7.5 60t-20 91.5t-41 111.5t-66 124.5h43q41 -47 72 -107t45.5 -111.5t23 -96t10.5 -70.5zM2123 640q0 -11 -0.5 -29t-8 -71.5t-21.5 -102t-45 -108t-74 -102.5h-51q38 45 66.5 104.5t41.5 112t21 98t9 72.5l1 27q0 8 -0.5 22.5t-7.5 60t-19.5 91.5t-40.5 111.5t-66 124.5
h43q41 -47 72 -107t45.5 -111.5t23 -96t10.5 -70.5zM2304 640q0 -11 -0.5 -29t-8 -71.5t-21.5 -102t-44.5 -108t-73.5 -102.5h-51q38 45 66 104.5t41 112t21 98t9 72.5l1 27q0 8 -0.5 22.5t-7.5 60t-19.5 91.5t-40.5 111.5t-66 124.5h43q41 -47 72 -107t45.5 -111.5t23 -96
t9.5 -70.5z" />
    <glyph glyph-name="uniF2A0" unicode="&#xf2a0;" horiz-adv-x="1408" 
d="M617 -153q0 11 -13 58t-31 107t-20 69q-1 4 -5 26.5t-8.5 36t-13.5 21.5q-15 14 -51 14q-23 0 -70 -5.5t-71 -5.5q-34 0 -47 11q-6 5 -11 15.5t-7.5 20t-6.5 24t-5 18.5q-37 128 -37 255t37 255q1 4 5 18.5t6.5 24t7.5 20t11 15.5q13 11 47 11q24 0 71 -5.5t70 -5.5
q36 0 51 14q9 8 13.5 21.5t8.5 36t5 26.5q2 9 20 69t31 107t13 58q0 22 -43.5 52.5t-75.5 42.5q-20 8 -45 8q-34 0 -98 -18q-57 -17 -96.5 -40.5t-71 -66t-46 -70t-45.5 -94.5q-6 -12 -9 -19q-49 -107 -68 -216t-19 -244t19 -244t68 -216q56 -122 83 -161q63 -91 179 -127
l6 -2q64 -18 98 -18q25 0 45 8q32 12 75.5 42.5t43.5 52.5zM776 760q-26 0 -45 19t-19 45.5t19 45.5q37 37 37 90q0 52 -37 91q-19 19 -19 45t19 45t45 19t45 -19q75 -75 75 -181t-75 -181q-21 -19 -45 -19zM957 579q-27 0 -45 19q-19 19 -19 45t19 45q112 114 112 272
t-112 272q-19 19 -19 45t19 45t45 19t45 -19q150 -150 150 -362t-150 -362q-18 -19 -45 -19zM1138 398q-27 0 -45 19q-19 19 -19 45t19 45q90 91 138.5 208t48.5 245t-48.5 245t-138.5 208q-19 19 -19 45t19 45t45 19t45 -19q109 -109 167 -249t58 -294t-58 -294t-167 -249
q-18 -19 -45 -19z" />
    <glyph glyph-name="uniF2A1" unicode="&#xf2a1;" horiz-adv-x="2176" 
d="M192 352q-66 0 -113 -47t-47 -113t47 -113t113 -47t113 47t47 113t-47 113t-113 47zM704 352q-66 0 -113 -47t-47 -113t47 -113t113 -47t113 47t47 113t-47 113t-113 47zM704 864q-66 0 -113 -47t-47 -113t47 -113t113 -47t113 47t47 113t-47 113t-113 47zM1472 352
q-66 0 -113 -47t-47 -113t47 -113t113 -47t113 47t47 113t-47 113t-113 47zM1984 352q-66 0 -113 -47t-47 -113t47 -113t113 -47t113 47t47 113t-47 113t-113 47zM1472 864q-66 0 -113 -47t-47 -113t47 -113t113 -47t113 47t47 113t-47 113t-113 47zM1984 864
q-66 0 -113 -47t-47 -113t47 -113t113 -47t113 47t47 113t-47 113t-113 47zM1984 1376q-66 0 -113 -47t-47 -113t47 -113t113 -47t113 47t47 113t-47 113t-113 47zM384 192q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM896 192q0 -80 -56 -136
t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM384 704q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM896 704q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM384 1216q0 -80 -56 -136t-136 -56
t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM1664 192q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM896 1216q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM2176 192q0 -80 -56 -136t-136 -56t-136 56
t-56 136t56 136t136 56t136 -56t56 -136zM1664 704q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM2176 704q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM1664 1216q0 -80 -56 -136t-136 -56t-136 56t-56 136
t56 136t136 56t136 -56t56 -136zM2176 1216q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136z" />
    <glyph glyph-name="uniF2A2" unicode="&#xf2a2;" horiz-adv-x="1792" 
d="M128 -192q0 -26 -19 -45t-45 -19t-45 19t-19 45t19 45t45 19t45 -19t19 -45zM320 0q0 -26 -19 -45t-45 -19t-45 19t-19 45t19 45t45 19t45 -19t19 -45zM365 365l256 -256l-90 -90l-256 256zM704 384q0 -26 -19 -45t-45 -19t-45 19t-19 45t19 45t45 19t45 -19t19 -45z
M1411 704q0 -59 -11.5 -108.5t-37.5 -93.5t-44 -67.5t-53 -64.5q-31 -35 -45.5 -54t-33.5 -50t-26.5 -64t-7.5 -74q0 -159 -112.5 -271.5t-271.5 -112.5q-26 0 -45 19t-19 45t19 45t45 19q106 0 181 75t75 181q0 57 11.5 105.5t37 91t43.5 66.5t52 63q40 46 59.5 72
t37.5 74.5t18 103.5q0 185 -131.5 316.5t-316.5 131.5t-316.5 -131.5t-131.5 -316.5q0 -26 -19 -45t-45 -19t-45 19t-19 45q0 117 45.5 223.5t123 184t184 123t223.5 45.5t223.5 -45.5t184 -123t123 -184t45.5 -223.5zM896 576q0 -26 -19 -45t-45 -19t-45 19t-19 45t19 45
t45 19t45 -19t19 -45zM1184 704q0 -26 -19 -45t-45 -19t-45 19t-19 45q0 93 -65.5 158.5t-158.5 65.5q-92 0 -158 -65.5t-66 -158.5q0 -26 -19 -45t-45 -19t-45 19t-19 45q0 146 103 249t249 103t249 -103t103 -249zM1578 993q10 -25 -1 -49t-36 -34q-9 -4 -23 -4
q-19 0 -35.5 11t-23.5 30q-68 178 -224 295q-21 16 -25 42t12 47q17 21 43 25t47 -12q183 -137 266 -351zM1788 1074q9 -25 -1.5 -49t-35.5 -34q-11 -4 -23 -4q-44 0 -60 41q-92 238 -297 393q-22 16 -25.5 42t12.5 47q16 22 42 25.5t47 -12.5q235 -175 341 -449z" />
    <glyph glyph-name="uniF2A3" unicode="&#xf2a3;" horiz-adv-x="2304" 
d="M1032 576q-59 2 -84 55q-17 34 -48 53.5t-68 19.5q-53 0 -90.5 -37.5t-37.5 -90.5q0 -56 36 -89l10 -8q34 -31 82 -31q37 0 68 19.5t48 53.5q25 53 84 55zM1600 704q0 56 -36 89l-10 8q-34 31 -82 31q-37 0 -68 -19.5t-48 -53.5q-25 -53 -84 -55q59 -2 84 -55
q17 -34 48 -53.5t68 -19.5q53 0 90.5 37.5t37.5 90.5zM1174 925q-17 -35 -55 -48t-73 4q-62 31 -134 31q-51 0 -99 -17q3 0 9.5 0.5t9.5 0.5q92 0 170.5 -50t118.5 -133q17 -36 3.5 -73.5t-49.5 -54.5q-18 -9 -39 -9q21 0 39 -9q36 -17 49.5 -54.5t-3.5 -73.5
q-40 -83 -118.5 -133t-170.5 -50h-6q-16 2 -44 4l-290 27l-239 -120q-14 -7 -29 -7q-40 0 -57 35l-160 320q-11 23 -4 47.5t29 37.5l209 119l148 267q17 155 91.5 291.5t195.5 236.5q31 25 70.5 21.5t64.5 -34.5t21.5 -70t-34.5 -65q-70 -59 -117 -128q123 84 267 101
q40 5 71.5 -19t35.5 -64q5 -40 -19 -71.5t-64 -35.5q-84 -10 -159 -55q46 10 99 10q115 0 218 -50q36 -18 49 -55.5t-5 -73.5zM2137 1085l160 -320q11 -23 4 -47.5t-29 -37.5l-209 -119l-148 -267q-17 -155 -91.5 -291.5t-195.5 -236.5q-26 -22 -61 -22q-45 0 -74 35
q-25 31 -21.5 70t34.5 65q70 59 117 128q-123 -84 -267 -101q-4 -1 -12 -1q-36 0 -63.5 24t-31.5 60q-5 40 19 71.5t64 35.5q84 10 159 55q-46 -10 -99 -10q-115 0 -218 50q-36 18 -49 55.5t5 73.5q17 35 55 48t73 -4q62 -31 134 -31q51 0 99 17q-3 0 -9.5 -0.5t-9.5 -0.5
q-92 0 -170.5 50t-118.5 133q-17 36 -3.5 73.5t49.5 54.5q18 9 39 9q-21 0 -39 9q-36 17 -49.5 54.5t3.5 73.5q40 83 118.5 133t170.5 50h6h1q14 -2 42 -4l291 -27l239 120q14 7 29 7q40 0 57 -35z" />
    <glyph glyph-name="uniF2A4" unicode="&#xf2a4;" horiz-adv-x="1792" 
d="M1056 704q0 -26 19 -45t45 -19t45 19t19 45q0 146 -103 249t-249 103t-249 -103t-103 -249q0 -26 19 -45t45 -19t45 19t19 45q0 93 66 158.5t158 65.5t158 -65.5t66 -158.5zM835 1280q-117 0 -223.5 -45.5t-184 -123t-123 -184t-45.5 -223.5q0 -26 19 -45t45 -19t45 19
t19 45q0 185 131.5 316.5t316.5 131.5t316.5 -131.5t131.5 -316.5q0 -55 -18 -103.5t-37.5 -74.5t-59.5 -72q-34 -39 -52 -63t-43.5 -66.5t-37 -91t-11.5 -105.5q0 -106 -75 -181t-181 -75q-26 0 -45 -19t-19 -45t19 -45t45 -19q159 0 271.5 112.5t112.5 271.5q0 41 7.5 74
t26.5 64t33.5 50t45.5 54q35 41 53 64.5t44 67.5t37.5 93.5t11.5 108.5q0 117 -45.5 223.5t-123 184t-184 123t-223.5 45.5zM591 561l226 -226l-579 -579q-12 -12 -29 -12t-29 12l-168 168q-12 12 -12 29t12 29zM1612 1524l168 -168q12 -12 12 -29t-12 -30l-233 -233
l-26 -25l-71 -71q-66 153 -195 258l91 91l207 207q13 12 30 12t29 -12z" />
    <glyph glyph-name="uniF2A5" unicode="&#xf2a5;" 
d="M866 1021q0 -27 -13 -94q-11 -50 -31.5 -150t-30.5 -150q-2 -11 -4.5 -12.5t-13.5 -2.5q-20 -2 -31 -2q-58 0 -84 49.5t-26 113.5q0 88 35 174t103 124q28 14 51 14q28 0 36.5 -16.5t8.5 -47.5zM1352 597q0 14 -39 75.5t-52 66.5q-21 8 -34 8q-91 0 -226 -77l-2 2
q3 22 27.5 135t24.5 178q0 233 -242 233q-24 0 -68 -6q-94 -17 -168.5 -89.5t-111.5 -166.5t-37 -189q0 -146 80.5 -225t227.5 -79q25 0 25 -3t-1 -5q-4 -34 -26 -117q-14 -52 -51.5 -101t-82.5 -49q-42 0 -42 47q0 24 10.5 47.5t25 39.5t29.5 28.5t26 20t11 8.5q0 3 -7 10
q-24 22 -58.5 36.5t-65.5 14.5q-35 0 -63.5 -34t-41 -75t-12.5 -75q0 -88 51.5 -142t138.5 -54q82 0 155 53t117.5 126t65.5 153q6 22 15.5 66.5t14.5 66.5q3 12 14 18q118 60 227 60q48 0 127 -18q1 -1 4 -1q5 0 9.5 4.5t4.5 8.5zM1536 1120v-960q0 -119 -84.5 -203.5
t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" />
    <glyph glyph-name="uniF2A6" unicode="&#xf2a6;" horiz-adv-x="1535" 
d="M744 1231q0 24 -2 38.5t-8.5 30t-21 23t-37.5 7.5q-39 0 -78 -23q-105 -58 -159 -190.5t-54 -269.5q0 -44 8.5 -85.5t26.5 -80.5t52.5 -62.5t81.5 -23.5q4 0 18 -0.5t20 0t16 3t15 8.5t7 16q16 77 48 231.5t48 231.5q19 91 19 146zM1498 575q0 -7 -7.5 -13.5t-15.5 -6.5
l-6 1q-22 3 -62 11t-72 12.5t-63 4.5q-167 0 -351 -93q-15 -8 -21 -27q-10 -36 -24.5 -105.5t-22.5 -100.5q-23 -91 -70 -179.5t-112.5 -164.5t-154.5 -123t-185 -47q-135 0 -214.5 83.5t-79.5 219.5q0 53 19.5 117t63 116.5t97.5 52.5q38 0 120 -33.5t83 -61.5
q0 -1 -16.5 -12.5t-39.5 -31t-46 -44.5t-39 -61t-16 -74q0 -33 16.5 -53t48.5 -20q45 0 85 31.5t66.5 78t48 105.5t32.5 107t16 90v9q0 2 -3.5 3.5t-8.5 1.5h-10t-10 -0.5t-6 -0.5q-227 0 -352 122.5t-125 348.5q0 108 34.5 221t96 210t156 167.5t204.5 89.5q52 9 106 9
q374 0 374 -360q0 -98 -38 -273t-43 -211l3 -3q101 57 182.5 88t167.5 31q22 0 53 -13q19 -7 80 -102.5t61 -116.5z" />
    <glyph glyph-name="uniF2A7" unicode="&#xf2a7;" horiz-adv-x="1664" 
d="M831 863q32 0 59 -18l222 -148q61 -40 110 -97l146 -170q40 -46 29 -106l-72 -413q-6 -32 -29.5 -53.5t-55.5 -25.5l-527 -56l-352 -32h-9q-39 0 -67.5 28t-28.5 68q0 37 27 64t65 32l260 32h-448q-41 0 -69.5 30t-26.5 71q2 39 32 65t69 26l442 1l-521 64q-41 5 -66 37
t-19 73q6 35 34.5 57.5t65.5 22.5h10l481 -60l-351 94q-38 10 -62 41.5t-18 68.5q6 36 33 58.5t62 22.5q6 0 20 -2l448 -96l217 -37q1 0 3 -0.5t3 -0.5q23 0 30.5 23t-12.5 36l-186 125q-35 23 -42 63.5t18 73.5q27 38 76 38zM761 661l186 -125l-218 37l-5 2l-36 38
l-238 262q-1 1 -2.5 3.5t-2.5 3.5q-24 31 -18.5 70t37.5 64q31 23 68 17.5t64 -33.5l142 -147q-2 -1 -5 -3.5t-4 -4.5q-32 -45 -23 -99t55 -85zM1648 1115l15 -266q4 -73 -11 -147l-48 -219q-12 -59 -67 -87l-106 -54q2 62 -39 109l-146 170q-53 61 -117 103l-222 148
q-34 23 -76 23q-51 0 -88 -37l-235 312q-25 33 -18 73.5t41 63.5q33 22 71.5 14t62.5 -40l266 -352l-262 455q-21 35 -10.5 75t47.5 59q35 18 72.5 6t57.5 -46l241 -420l-136 337q-15 35 -4.5 74t44.5 56q37 19 76 6t56 -51l193 -415l101 -196q8 -15 23 -17.5t27 7.5t11 26
l-12 224q-2 41 26 71t69 31q39 0 67 -28.5t30 -67.5z" />
    <glyph glyph-name="uniF2A8" unicode="&#xf2a8;" horiz-adv-x="1792" 
d="M335 180q-2 0 -6 2q-86 57 -168.5 145t-139.5 180q-21 30 -21 69q0 9 2 19t4 18t7 18t8.5 16t10.5 17t10 15t12 15.5t11 14.5q184 251 452 365q-110 198 -110 211q0 19 17 29q116 64 128 64q18 0 28 -16l124 -229q92 19 192 19q266 0 497.5 -137.5t378.5 -369.5
q20 -31 20 -69t-20 -69q-91 -142 -218.5 -253.5t-278.5 -175.5q110 -198 110 -211q0 -20 -17 -29q-116 -64 -127 -64q-19 0 -29 16l-124 229l-64 119l-444 820l7 7q-58 -24 -99 -47q3 -5 127 -234t243 -449t119 -223q0 -7 -9 -9q-13 -3 -72 -3q-57 0 -60 7l-456 841
q-39 -28 -82 -68q24 -43 214 -393.5t190 -354.5q0 -10 -11 -10q-14 0 -82.5 22t-72.5 28l-106 197l-224 413q-44 -53 -78 -106q2 -3 18 -25t23 -34l176 -327q0 -10 -10 -10zM1165 282l49 -91q273 111 450 385q-180 277 -459 389q67 -64 103 -148.5t36 -176.5
q0 -106 -47 -200.5t-132 -157.5zM848 896q0 -20 14 -34t34 -14q86 0 147 -61t61 -147q0 -20 14 -34t34 -14t34 14t14 34q0 126 -89 215t-215 89q-20 0 -34 -14t-14 -34zM1214 961l-9 4l7 -7z" />
    <glyph glyph-name="uniF2A9" unicode="&#xf2a9;" horiz-adv-x="1280" 
d="M1050 430q0 -215 -147 -374q-148 -161 -378 -161q-232 0 -378 161q-147 159 -147 374q0 147 68 270.5t189 196.5t268 73q96 0 182 -31q-32 -62 -39 -126q-66 28 -143 28q-167 0 -280.5 -123t-113.5 -291q0 -170 112.5 -288.5t281.5 -118.5t281 118.5t112 288.5
q0 89 -32 166q66 13 123 49q41 -98 41 -212zM846 619q0 -192 -79.5 -345t-238.5 -253l-14 -1q-29 0 -62 5q83 32 146.5 102.5t99.5 154.5t58.5 189t30 192.5t7.5 178.5q0 69 -3 103q55 -160 55 -326zM791 947v-2q-73 214 -206 440q88 -59 142.5 -186.5t63.5 -251.5z
M1035 744q-83 0 -160 75q218 120 290 247q19 37 21 56q-42 -94 -139.5 -166.5t-204.5 -97.5q-35 54 -35 113q0 37 17 79t43 68q46 44 157 74q59 16 106 58.5t74 100.5q74 -105 74 -253q0 -109 -24 -170q-32 -77 -88.5 -130.5t-130.5 -53.5z" />
    <glyph glyph-name="uniF2AA" unicode="&#xf2aa;" 
d="M1050 495q0 78 -28 147q-41 -25 -85 -34q22 -50 22 -114q0 -117 -77 -198.5t-193 -81.5t-193.5 81.5t-77.5 198.5q0 115 78 199.5t193 84.5q53 0 98 -19q4 43 27 87q-60 21 -125 21q-154 0 -257.5 -108.5t-103.5 -263.5t103.5 -261t257.5 -106t257.5 106.5t103.5 260.5z
M872 850q2 -24 2 -71q0 -63 -5 -123t-20.5 -132.5t-40.5 -130t-68.5 -106t-100.5 -70.5q21 -3 42 -3h10q219 139 219 411q0 116 -38 225zM872 850q-4 80 -44 171.5t-98 130.5q92 -156 142 -302zM1207 955q0 102 -51 174q-41 -86 -124 -109q-69 -19 -109 -53.5t-40 -99.5
q0 -40 24 -77q74 17 140.5 67t95.5 115q-4 -52 -74.5 -111.5t-138.5 -97.5q52 -52 110 -52q51 0 90 37t60 90q17 42 17 117zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5
t84.5 -203.5z" />
    <glyph glyph-name="uniF2AB" unicode="&#xf2ab;" 
d="M1279 388q0 22 -22 27q-67 15 -118 59t-80 108q-7 19 -7 25q0 15 19.5 26t43 17t43 20.5t19.5 36.5q0 19 -18.5 31.5t-38.5 12.5q-12 0 -32 -8t-31 -8q-4 0 -12 2q5 95 5 114q0 79 -17 114q-36 78 -103 121.5t-152 43.5q-199 0 -275 -165q-17 -35 -17 -114q0 -19 5 -114
q-4 -2 -14 -2q-12 0 -32 7.5t-30 7.5q-21 0 -38.5 -12t-17.5 -32q0 -21 19.5 -35.5t43 -20.5t43 -17t19.5 -26q0 -6 -7 -25q-64 -138 -198 -167q-22 -5 -22 -27q0 -46 137 -68q2 -5 6 -26t11.5 -30.5t23.5 -9.5q12 0 37.5 4.5t39.5 4.5q35 0 67 -15t54 -32.5t57.5 -32.5
t76.5 -15q43 0 79 15t57.5 32.5t53.5 32.5t67 15q14 0 39.5 -4t38.5 -4q16 0 23 10t11 30t6 25q137 22 137 68zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5
t103 -385.5z" />
    <glyph glyph-name="uniF2AC" unicode="&#xf2ac;" horiz-adv-x="1664" 
d="M848 1408q134 1 240.5 -68.5t163.5 -192.5q27 -58 27 -179q0 -47 -9 -191q14 -7 28 -7q18 0 51 13.5t51 13.5q29 0 56 -18t27 -46q0 -32 -31.5 -54t-69 -31.5t-69 -29t-31.5 -47.5q0 -15 12 -43q37 -82 102.5 -150t144.5 -101q28 -12 80 -23q28 -6 28 -35
q0 -70 -219 -103q-7 -11 -11 -39t-14 -46.5t-33 -18.5q-20 0 -62 6.5t-64 6.5q-37 0 -62 -5q-32 -5 -63 -22.5t-58 -38t-58 -40.5t-76 -33.5t-99 -13.5q-52 0 -96.5 13.5t-75 33.5t-57.5 40.5t-58 38t-62 22.5q-26 5 -63 5q-24 0 -65.5 -7.5t-58.5 -7.5q-25 0 -35 18.5
t-14 47.5t-11 40q-219 33 -219 103q0 29 28 35q52 11 80 23q78 32 144.5 101t102.5 150q12 28 12 43q0 28 -31.5 47.5t-69.5 29.5t-69.5 31.5t-31.5 52.5q0 27 26 45.5t55 18.5q15 0 48 -13t53 -13q18 0 32 7q-9 142 -9 190q0 122 27 180q64 137 172 198t264 63z" />
    <glyph glyph-name="uniF2AD" unicode="&#xf2ad;" 
d="M1280 388q0 22 -22 27q-67 14 -118 58t-80 109q-7 14 -7 25q0 15 19.5 26t42.5 17t42.5 20.5t19.5 36.5q0 19 -18.5 31.5t-38.5 12.5q-11 0 -31 -8t-32 -8q-4 0 -12 2q5 63 5 115q0 78 -17 114q-36 78 -102.5 121.5t-152.5 43.5q-198 0 -275 -165q-18 -38 -18 -115
q0 -38 6 -114q-10 -2 -15 -2q-11 0 -31.5 8t-30.5 8q-20 0 -37.5 -12.5t-17.5 -32.5q0 -21 19.5 -35.5t42.5 -20.5t42.5 -17t19.5 -26q0 -11 -7 -25q-64 -138 -198 -167q-22 -5 -22 -27q0 -47 138 -69q2 -5 6 -26t11 -30.5t23 -9.5q13 0 38.5 5t38.5 5q35 0 67.5 -15
t54.5 -32.5t57.5 -32.5t76.5 -15q43 0 79 15t57.5 32.5t54 32.5t67.5 15q13 0 39 -4.5t39 -4.5q15 0 22.5 9.5t11.5 31t5 24.5q138 22 138 69zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960
q119 0 203.5 -84.5t84.5 -203.5z" />
    <glyph glyph-name="uniF2AE" unicode="&#xf2ae;" horiz-adv-x="2304" 
d="M2304 1536q-69 -46 -125 -92t-89 -81t-59.5 -71.5t-37.5 -57.5t-22 -44.5t-14 -29.5q-10 -18 -35.5 -136.5t-48.5 -164.5q-15 -29 -50 -60.5t-67.5 -50.5t-72.5 -41t-48 -28q-47 -31 -151 -231q-341 14 -630 -158q-92 -53 -303 -179q47 16 86 31t55 22l15 7
q71 27 163 64.5t133.5 53.5t108 34.5t142.5 31.5q186 31 465 -7q1 0 10 -3q11 -6 14 -17t-3 -22l-194 -345q-15 -29 -47 -22q-128 24 -354 24q-146 0 -402 -44.5t-392 -46.5q-82 -1 -149 13t-107 37t-61 40t-33 34l-1 1v2q0 6 6 6q138 0 371 55q192 366 374.5 524t383.5 158
q5 0 14.5 -0.5t38 -5t55 -12t61.5 -24.5t63 -39.5t54 -59t40 -82.5l102 177q2 4 21 42.5t44.5 86.5t61 109.5t84 133.5t100.5 137q66 82 128 141.5t121.5 96.5t92.5 53.5t88 39.5z" />
    <glyph glyph-name="uniF2B0" unicode="&#xf2b0;" 
d="M1322 640q0 -45 -5 -76l-236 14l224 -78q-19 -73 -58 -141l-214 103l177 -158q-44 -61 -107 -108l-157 178l103 -215q-61 -37 -140 -59l-79 228l14 -240q-38 -6 -76 -6t-76 6l14 238l-78 -226q-74 19 -140 59l103 215l-157 -178q-59 43 -108 108l178 158l-214 -104
q-39 69 -58 141l224 79l-237 -14q-5 42 -5 76q0 35 5 77l238 -14l-225 79q19 73 58 140l214 -104l-177 159q46 61 107 108l158 -178l-103 215q67 39 140 58l77 -224l-13 236q36 6 75 6q38 0 76 -6l-14 -237l78 225q74 -19 140 -59l-103 -214l158 178q61 -47 107 -108
l-177 -159l213 104q37 -62 58 -141l-224 -78l237 14q5 -31 5 -77zM1352 640q0 160 -78.5 295.5t-213 214t-292.5 78.5q-119 0 -227 -46.5t-186.5 -125t-124.5 -187.5t-46 -229q0 -119 46 -228t124.5 -187.5t186.5 -125t227 -46.5q158 0 292.5 78.5t213 214t78.5 294.5z
M1425 1023v-766l-657 -383l-657 383v766l657 383zM768 -183l708 412v823l-708 411l-708 -411v-823zM1536 1088v-896l-768 -448l-768 448v896l768 448z" />
    <glyph glyph-name="uniF2B1" unicode="&#xf2b1;" horiz-adv-x="1664" 
d="M339 1318h691l-26 -72h-665q-110 0 -188.5 -79t-78.5 -189v-771q0 -95 60.5 -169.5t153.5 -93.5q23 -5 98 -5v-72h-45q-140 0 -239.5 100t-99.5 240v771q0 140 99.5 240t239.5 100zM1190 1536h247l-482 -1294q-23 -61 -40.5 -103.5t-45 -98t-54 -93.5t-64.5 -78.5
t-79.5 -65t-95.5 -41t-116 -18.5v195q163 26 220 182q20 52 20 105q0 54 -20 106l-285 733h228l187 -585zM1664 978v-1111h-795q37 55 45 73h678v1038q0 85 -49.5 155t-129.5 99l25 67q101 -34 163.5 -123.5t62.5 -197.5z" />
    <glyph glyph-name="uniF2B2" unicode="&#xf2b2;" horiz-adv-x="1792" 
d="M852 1227q0 -29 -17 -52.5t-45 -23.5t-45 23.5t-17 52.5t17 52.5t45 23.5t45 -23.5t17 -52.5zM688 -149v114q0 30 -20.5 51.5t-50.5 21.5t-50 -21.5t-20 -51.5v-114q0 -30 20.5 -52t49.5 -22q30 0 50.5 22t20.5 52zM860 -149v114q0 30 -20 51.5t-50 21.5t-50.5 -21.5
t-20.5 -51.5v-114q0 -30 20.5 -52t50.5 -22q29 0 49.5 22t20.5 52zM1034 -149v114q0 30 -20.5 51.5t-50.5 21.5t-50.5 -21.5t-20.5 -51.5v-114q0 -30 20.5 -52t50.5 -22t50.5 22t20.5 52zM1208 -149v114q0 30 -20.5 51.5t-50.5 21.5t-50.5 -21.5t-20.5 -51.5v-114
q0 -30 20.5 -52t50.5 -22t50.5 22t20.5 52zM1476 535q-84 -160 -232 -259.5t-323 -99.5q-123 0 -229.5 51.5t-178.5 137t-113 197.5t-41 232q0 88 21 174q-104 -175 -104 -390q0 -162 65 -312t185 -251q30 57 91 57q56 0 86 -50q32 50 87 50q56 0 86 -50q32 50 87 50t87 -50
q30 50 86 50q28 0 52.5 -15.5t37.5 -40.5q112 94 177 231.5t73 287.5zM1326 564q0 75 -72 75q-17 0 -47 -6q-95 -19 -149 -19q-226 0 -226 243q0 86 30 204q-83 -127 -83 -275q0 -150 89 -260.5t235 -110.5q111 0 210 70q13 48 13 79zM884 1223q0 50 -32 89.5t-81 39.5
t-81 -39.5t-32 -89.5q0 -51 31.5 -90.5t81.5 -39.5t81.5 39.5t31.5 90.5zM1513 884q0 96 -37.5 179t-113 137t-173.5 54q-77 0 -149 -35t-127 -94q-48 -159 -48 -268q0 -104 45.5 -157t147.5 -53q53 0 142 19q36 6 53 6q51 0 77.5 -28t26.5 -80q0 -26 -4 -46
q75 68 117.5 165.5t42.5 200.5zM1792 667q0 -111 -33.5 -249.5t-93.5 -204.5q-58 -64 -195 -142.5t-228 -104.5l-4 -1v-114q0 -43 -29.5 -75t-72.5 -32q-56 0 -86 50q-32 -50 -87 -50t-87 50q-30 -50 -86 -50q-55 0 -87 50q-30 -50 -86 -50q-47 0 -75 33.5t-28 81.5
q-90 -68 -198 -68q-118 0 -211 80q54 1 106 20q-113 31 -182 127q32 -7 71 -7q89 0 164 46q-192 192 -240 306q-24 56 -24 160q0 57 9 125.5t31.5 146.5t55 141t86.5 105t120 42q59 0 81 -52q19 29 42 54q2 3 12 13t13 16q10 15 23 38t25 42t28 39q87 111 211.5 177
t260.5 66q35 0 62 -4q59 64 146 64q83 0 140 -57q5 -5 5 -12q0 -5 -6 -13.5t-12.5 -16t-16 -17l-10.5 -10.5q17 -6 36 -18t19 -24q0 -6 -16 -25q157 -138 197 -378q25 30 60 30q45 0 100 -49q90 -80 90 -279z" />
    <glyph glyph-name="uniF2B3" unicode="&#xf2b3;" 
d="M917 631q0 33 -6 64h-362v-132h217q-12 -76 -74.5 -120.5t-142.5 -44.5q-99 0 -169 71.5t-70 170.5t70 170.5t169 71.5q93 0 153 -59l104 101q-108 100 -257 100q-160 0 -272 -112.5t-112 -271.5t112 -271.5t272 -112.5q165 0 266.5 105t101.5 270zM1262 585h109v110
h-109v110h-110v-110h-110v-110h110v-110h110v110zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
    <glyph glyph-name="uniF2B4" unicode="&#xf2b4;" 
d="M1536 1024v-839q0 -48 -49 -62q-174 -52 -338 -52q-73 0 -215.5 29.5t-227.5 29.5q-164 0 -370 -48v-338h-160v1368q-63 25 -101 81t-38 124q0 91 64 155t155 64t155 -64t64 -155q0 -68 -38 -124t-101 -81v-68q190 44 343 44q99 0 198 -15q14 -2 111.5 -22.5t149.5 -20.5
q77 0 165 18q11 2 80 21t89 19q26 0 45 -19t19 -45z" />
    <glyph glyph-name="uniF2B5" unicode="&#xf2b5;" horiz-adv-x="2304" 
d="M192 384q40 0 56 32t0 64t-56 32t-56 -32t0 -64t56 -32zM1665 442q-10 13 -38.5 50t-41.5 54t-38 49t-42.5 53t-40.5 47t-45 49l-125 -140q-83 -94 -208.5 -92t-205.5 98q-57 69 -56.5 158t58.5 157l177 206q-22 11 -51 16.5t-47.5 6t-56.5 -0.5t-49 -1q-92 0 -158 -66
l-158 -158h-155v-544q5 0 21 0.5t22 0t19.5 -2t20.5 -4.5t17.5 -8.5t18.5 -13.5l297 -292q115 -111 227 -111q78 0 125 47q57 -20 112.5 8t72.5 85q74 -6 127 44q20 18 36 45.5t14 50.5q10 -10 43 -10q43 0 77 21t49.5 53t12 71.5t-30.5 73.5zM1824 384h96v512h-93l-157 180
q-66 76 -169 76h-167q-89 0 -146 -67l-209 -243q-28 -33 -28 -75t27 -75q43 -51 110 -52t111 49l193 218q25 23 53.5 21.5t47 -27t8.5 -56.5q16 -19 56 -63t60 -68q29 -36 82.5 -105.5t64.5 -84.5q52 -66 60 -140zM2112 384q40 0 56 32t0 64t-56 32t-56 -32t0 -64t56 -32z
M2304 960v-640q0 -26 -19 -45t-45 -19h-434q-27 -65 -82 -106.5t-125 -51.5q-33 -48 -80.5 -81.5t-102.5 -45.5q-42 -53 -104.5 -81.5t-128.5 -24.5q-60 -34 -126 -39.5t-127.5 14t-117 53.5t-103.5 81l-287 282h-358q-26 0 -45 19t-19 45v672q0 26 19 45t45 19h421
q14 14 47 48t47.5 48t44 40t50.5 37.5t51 25.5t62 19.5t68 5.5h117q99 0 181 -56q82 56 181 56h167q35 0 67 -6t56.5 -14.5t51.5 -26.5t44.5 -31t43 -39.5t39 -42t41 -48t41.5 -48.5h355q26 0 45 -19t19 -45z" />
    <glyph glyph-name="uniF2B6" unicode="&#xf2b6;" horiz-adv-x="1792" 
d="M1792 882v-978q0 -66 -47 -113t-113 -47h-1472q-66 0 -113 47t-47 113v978q0 15 11 24q8 7 39 34.5t41.5 36t45.5 37.5t70 55.5t96 73t143.5 107t192.5 140.5q5 4 52.5 40t71.5 52.5t64 35t69 18.5t69 -18.5t65 -35.5t71 -52t52 -40q110 -80 192.5 -140.5t143.5 -107
t96 -73t70 -55.5t45.5 -37.5t41.5 -36t39 -34.5q11 -9 11 -24zM1228 297q263 191 345 252q11 8 12.5 20.5t-6.5 23.5l-38 52q-8 11 -21 12.5t-24 -6.5q-231 -169 -343 -250q-5 -3 -52 -39t-71.5 -52.5t-64.5 -35t-69 -18.5t-69 18.5t-64.5 35t-71.5 52.5t-52 39
q-186 134 -343 250q-11 8 -24 6.5t-21 -12.5l-38 -52q-8 -11 -6.5 -23.5t12.5 -20.5q82 -61 345 -252q10 -8 50 -38t65 -47t64 -39.5t77.5 -33.5t75.5 -11t75.5 11t79 34.5t64.5 39.5t65 47.5t48 36.5z" />
    <glyph glyph-name="uniF2B7" unicode="&#xf2b7;" horiz-adv-x="1792" 
d="M1474 623l39 -51q8 -11 6.5 -23.5t-11.5 -20.5q-43 -34 -126.5 -98.5t-146.5 -113t-67 -51.5q-39 -32 -60 -48t-60.5 -41t-76.5 -36.5t-74 -11.5h-1h-1q-37 0 -74 11.5t-76 36.5t-61 41.5t-60 47.5q-5 4 -65 50.5t-143.5 111t-122.5 94.5q-11 8 -12.5 20.5t6.5 23.5
l37 52q8 11 21.5 13t24.5 -7q94 -73 306 -236q5 -4 43.5 -35t60.5 -46.5t56.5 -32.5t58.5 -17h1h1q24 0 58.5 17t56.5 32.5t60.5 46.5t43.5 35q258 198 313 242q11 8 24 6.5t21 -12.5zM1664 -96v928q-90 83 -159 139q-91 74 -389 304q-3 2 -43 35t-61 48t-56 32.5t-59 17.5
h-1h-1q-24 0 -59 -17.5t-56 -32.5t-61 -48t-43 -35q-215 -166 -315.5 -245.5t-129.5 -104t-82 -74.5q-14 -12 -21 -19v-928q0 -13 9.5 -22.5t22.5 -9.5h1472q13 0 22.5 9.5t9.5 22.5zM1792 832v-928q0 -66 -47 -113t-113 -47h-1472q-66 0 -113 47t-47 113v928q0 56 41 94
q123 114 350 290.5t233 181.5q36 30 59 47.5t61.5 42t76 36.5t74.5 12h1h1q37 0 74.5 -12t76 -36.5t61.5 -42t59 -47.5q43 -36 156 -122t226 -177t201 -173q41 -38 41 -94z" />
    <glyph glyph-name="uniF2B8" unicode="&#xf2b8;" 
d="M330 1l202 -214l-34 236l-216 213zM556 -225l274 218l-11 245l-300 -215zM245 413l227 -213l-48 327l-245 204zM495 189l317 214l-14 324l-352 -200zM843 178l95 -80l-2 239l-103 79q0 -1 1 -8.5t0 -12t-5 -7.5l-78 -52l85 -70q7 -6 7 -88zM138 930l256 -200l-68 465
l-279 173zM1173 267l15 234l-230 -164l2 -240zM417 722l373 194l-19 441l-423 -163zM1270 357l20 233l-226 142l-2 -105l144 -95q6 -4 4 -9l-7 -119zM1461 496l30 222l-179 -128l-20 -228zM1273 329l-71 49l-8 -117q0 -5 -4 -8l-234 -187q-7 -5 -14 0l-98 83l7 -161
q0 -5 -4 -8l-293 -234q-4 -2 -6 -2q-8 2 -8 3l-228 242q-4 4 -59 277q-2 7 5 11l61 37q-94 86 -95 92l-72 351q-2 7 6 12l94 45q-133 100 -135 108l-96 466q-2 10 7 13l433 135q5 0 8 -1l317 -153q6 -4 6 -9l20 -463q0 -7 -6 -10l-118 -61l126 -85q5 -2 5 -8l5 -123l121 74
q5 4 11 0l84 -56l3 110q0 6 5 9l206 126q6 3 11 0l245 -135q4 -4 5 -7t-6.5 -60t-17.5 -124.5t-10 -70.5q0 -5 -4 -7l-191 -153q-6 -5 -13 0z" />
    <glyph glyph-name="uniF2B9" unicode="&#xf2b9;" horiz-adv-x="1664" 
d="M1201 298q0 57 -5.5 107t-21 100.5t-39.5 86t-64 58t-91 22.5q-6 -4 -33.5 -20.5t-42.5 -24.5t-40.5 -20t-49 -17t-46.5 -5t-46.5 5t-49 17t-40.5 20t-42.5 24.5t-33.5 20.5q-51 0 -91 -22.5t-64 -58t-39.5 -86t-21 -100.5t-5.5 -107q0 -73 42 -121.5t103 -48.5h576
q61 0 103 48.5t42 121.5zM1028 892q0 108 -76.5 184t-183.5 76t-183.5 -76t-76.5 -184q0 -107 76.5 -183t183.5 -76t183.5 76t76.5 183zM1664 352v-192q0 -14 -9 -23t-23 -9h-96v-224q0 -66 -47 -113t-113 -47h-1216q-66 0 -113 47t-47 113v1472q0 66 47 113t113 47h1216
q66 0 113 -47t47 -113v-224h96q14 0 23 -9t9 -23v-192q0 -14 -9 -23t-23 -9h-96v-128h96q14 0 23 -9t9 -23v-192q0 -14 -9 -23t-23 -9h-96v-128h96q14 0 23 -9t9 -23z" />
    <glyph glyph-name="uniF2BA" unicode="&#xf2ba;" horiz-adv-x="1664" 
d="M1028 892q0 -107 -76.5 -183t-183.5 -76t-183.5 76t-76.5 183q0 108 76.5 184t183.5 76t183.5 -76t76.5 -184zM980 672q46 0 82.5 -17t60 -47.5t39.5 -67t24 -81t11.5 -82.5t3.5 -79q0 -67 -39.5 -118.5t-105.5 -51.5h-576q-66 0 -105.5 51.5t-39.5 118.5q0 48 4.5 93.5
t18.5 98.5t36.5 91.5t63 64.5t93.5 26h5q7 -4 32 -19.5t35.5 -21t33 -17t37 -16t35 -9t39.5 -4.5t39.5 4.5t35 9t37 16t33 17t35.5 21t32 19.5zM1664 928q0 -13 -9.5 -22.5t-22.5 -9.5h-96v-128h96q13 0 22.5 -9.5t9.5 -22.5v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-96v-128h96
q13 0 22.5 -9.5t9.5 -22.5v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-96v-224q0 -66 -47 -113t-113 -47h-1216q-66 0 -113 47t-47 113v1472q0 66 47 113t113 47h1216q66 0 113 -47t47 -113v-224h96q13 0 22.5 -9.5t9.5 -22.5v-192zM1408 -96v1472q0 13 -9.5 22.5t-22.5 9.5h-1216
q-13 0 -22.5 -9.5t-9.5 -22.5v-1472q0 -13 9.5 -22.5t22.5 -9.5h1216q13 0 22.5 9.5t9.5 22.5z" />
    <glyph glyph-name="uniF2BB" unicode="&#xf2bb;" horiz-adv-x="2048" 
d="M1024 405q0 64 -9 117.5t-29.5 103t-60.5 78t-97 28.5q-6 -4 -30 -18t-37.5 -21.5t-35.5 -17.5t-43 -14.5t-42 -4.5t-42 4.5t-43 14.5t-35.5 17.5t-37.5 21.5t-30 18q-57 0 -97 -28.5t-60.5 -78t-29.5 -103t-9 -117.5t37 -106.5t91 -42.5h512q54 0 91 42.5t37 106.5z
M867 925q0 94 -66.5 160.5t-160.5 66.5t-160.5 -66.5t-66.5 -160.5t66.5 -160.5t160.5 -66.5t160.5 66.5t66.5 160.5zM1792 416v64q0 14 -9 23t-23 9h-576q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h576q14 0 23 9t9 23zM1792 676v56q0 15 -10.5 25.5t-25.5 10.5h-568
q-15 0 -25.5 -10.5t-10.5 -25.5v-56q0 -15 10.5 -25.5t25.5 -10.5h568q15 0 25.5 10.5t10.5 25.5zM1792 928v64q0 14 -9 23t-23 9h-576q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h576q14 0 23 9t9 23zM2048 1248v-1216q0 -66 -47 -113t-113 -47h-352v96q0 14 -9 23t-23 9
h-64q-14 0 -23 -9t-9 -23v-96h-768v96q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-96h-352q-66 0 -113 47t-47 113v1216q0 66 47 113t113 47h1728q66 0 113 -47t47 -113z" />
    <glyph glyph-name="uniF2BC" unicode="&#xf2bc;" horiz-adv-x="2048" 
d="M1024 405q0 -64 -37 -106.5t-91 -42.5h-512q-54 0 -91 42.5t-37 106.5t9 117.5t29.5 103t60.5 78t97 28.5q6 -4 30 -18t37.5 -21.5t35.5 -17.5t43 -14.5t42 -4.5t42 4.5t43 14.5t35.5 17.5t37.5 21.5t30 18q57 0 97 -28.5t60.5 -78t29.5 -103t9 -117.5zM867 925
q0 -94 -66.5 -160.5t-160.5 -66.5t-160.5 66.5t-66.5 160.5t66.5 160.5t160.5 66.5t160.5 -66.5t66.5 -160.5zM1792 480v-64q0 -14 -9 -23t-23 -9h-576q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h576q14 0 23 -9t9 -23zM1792 732v-56q0 -15 -10.5 -25.5t-25.5 -10.5h-568
q-15 0 -25.5 10.5t-10.5 25.5v56q0 15 10.5 25.5t25.5 10.5h568q15 0 25.5 -10.5t10.5 -25.5zM1792 992v-64q0 -14 -9 -23t-23 -9h-576q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h576q14 0 23 -9t9 -23zM1920 32v1216q0 13 -9.5 22.5t-22.5 9.5h-1728q-13 0 -22.5 -9.5
t-9.5 -22.5v-1216q0 -13 9.5 -22.5t22.5 -9.5h352v96q0 14 9 23t23 9h64q14 0 23 -9t9 -23v-96h768v96q0 14 9 23t23 9h64q14 0 23 -9t9 -23v-96h352q13 0 22.5 9.5t9.5 22.5zM2048 1248v-1216q0 -66 -47 -113t-113 -47h-1728q-66 0 -113 47t-47 113v1216q0 66 47 113
t113 47h1728q66 0 113 -47t47 -113z" />
    <glyph glyph-name="uniF2BD" unicode="&#xf2bd;" horiz-adv-x="1792" 
d="M1523 197q-22 155 -87.5 257.5t-184.5 118.5q-67 -74 -159.5 -115.5t-195.5 -41.5t-195.5 41.5t-159.5 115.5q-119 -16 -184.5 -118.5t-87.5 -257.5q106 -150 271 -237.5t356 -87.5t356 87.5t271 237.5zM1280 896q0 159 -112.5 271.5t-271.5 112.5t-271.5 -112.5
t-112.5 -271.5t112.5 -271.5t271.5 -112.5t271.5 112.5t112.5 271.5zM1792 640q0 -182 -71 -347.5t-190.5 -286t-285.5 -191.5t-349 -71q-182 0 -348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71t348 -71t286 -191t191 -286t71 -348z" />
    <glyph glyph-name="uniF2BE" unicode="&#xf2be;" horiz-adv-x="1792" 
d="M896 1536q182 0 348 -71t286 -191t191 -286t71 -348q0 -181 -70.5 -347t-190.5 -286t-286 -191.5t-349 -71.5t-349 71t-285.5 191.5t-190.5 286t-71 347.5t71 348t191 286t286 191t348 71zM1515 185q149 205 149 455q0 156 -61 298t-164 245t-245 164t-298 61t-298 -61
t-245 -164t-164 -245t-61 -298q0 -250 149 -455q66 327 306 327q131 -128 313 -128t313 128q240 0 306 -327zM1280 832q0 159 -112.5 271.5t-271.5 112.5t-271.5 -112.5t-112.5 -271.5t112.5 -271.5t271.5 -112.5t271.5 112.5t112.5 271.5z" />
    <glyph glyph-name="uniF2C0" unicode="&#xf2c0;" 
d="M1201 752q47 -14 89.5 -38t89 -73t79.5 -115.5t55 -172t22 -236.5q0 -154 -100 -263.5t-241 -109.5h-854q-141 0 -241 109.5t-100 263.5q0 131 22 236.5t55 172t79.5 115.5t89 73t89.5 38q-79 125 -79 272q0 104 40.5 198.5t109.5 163.5t163.5 109.5t198.5 40.5
t198.5 -40.5t163.5 -109.5t109.5 -163.5t40.5 -198.5q0 -147 -79 -272zM768 1408q-159 0 -271.5 -112.5t-112.5 -271.5t112.5 -271.5t271.5 -112.5t271.5 112.5t112.5 271.5t-112.5 271.5t-271.5 112.5zM1195 -128q88 0 150.5 71.5t62.5 173.5q0 239 -78.5 377t-225.5 145
q-145 -127 -336 -127t-336 127q-147 -7 -225.5 -145t-78.5 -377q0 -102 62.5 -173.5t150.5 -71.5h854z" />
    <glyph glyph-name="uniF2C1" unicode="&#xf2c1;" horiz-adv-x="1280" 
d="M1024 278q0 -64 -37 -107t-91 -43h-512q-54 0 -91 43t-37 107t9 118t29.5 104t61 78.5t96.5 28.5q80 -75 188 -75t188 75q56 0 96.5 -28.5t61 -78.5t29.5 -104t9 -118zM870 797q0 -94 -67.5 -160.5t-162.5 -66.5t-162.5 66.5t-67.5 160.5t67.5 160.5t162.5 66.5
t162.5 -66.5t67.5 -160.5zM1152 -96v1376h-1024v-1376q0 -13 9.5 -22.5t22.5 -9.5h960q13 0 22.5 9.5t9.5 22.5zM1280 1376v-1472q0 -66 -47 -113t-113 -47h-960q-66 0 -113 47t-47 113v1472q0 66 47 113t113 47h352v-96q0 -14 9 -23t23 -9h192q14 0 23 9t9 23v96h352
q66 0 113 -47t47 -113z" />
    <glyph glyph-name="uniF2C2" unicode="&#xf2c2;" horiz-adv-x="2048" 
d="M896 324q0 54 -7.5 100.5t-24.5 90t-51 68.5t-81 25q-64 -64 -156 -64t-156 64q-47 0 -81 -25t-51 -68.5t-24.5 -90t-7.5 -100.5q0 -55 31.5 -93.5t75.5 -38.5h426q44 0 75.5 38.5t31.5 93.5zM768 768q0 80 -56 136t-136 56t-136 -56t-56 -136t56 -136t136 -56t136 56
t56 136zM1792 288v64q0 14 -9 23t-23 9h-704q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h704q14 0 23 9t9 23zM1408 544v64q0 14 -9 23t-23 9h-320q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h320q14 0 23 9t9 23zM1792 544v64q0 14 -9 23t-23 9h-192q-14 0 -23 -9t-9 -23
v-64q0 -14 9 -23t23 -9h192q14 0 23 9t9 23zM1792 800v64q0 14 -9 23t-23 9h-704q-14 0 -23 -9t-9 -23v-64q0 -14 9 -23t23 -9h704q14 0 23 9t9 23zM128 1152h1792v96q0 14 -9 23t-23 9h-1728q-14 0 -23 -9t-9 -23v-96zM2048 1248v-1216q0 -66 -47 -113t-113 -47h-1728
q-66 0 -113 47t-47 113v1216q0 66 47 113t113 47h1728q66 0 113 -47t47 -113z" />
    <glyph glyph-name="uniF2C3" unicode="&#xf2c3;" horiz-adv-x="2048" 
d="M896 324q0 -55 -31.5 -93.5t-75.5 -38.5h-426q-44 0 -75.5 38.5t-31.5 93.5q0 54 7.5 100.5t24.5 90t51 68.5t81 25q64 -64 156 -64t156 64q47 0 81 -25t51 -68.5t24.5 -90t7.5 -100.5zM768 768q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136z
M1792 352v-64q0 -14 -9 -23t-23 -9h-704q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h704q14 0 23 -9t9 -23zM1408 608v-64q0 -14 -9 -23t-23 -9h-320q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h320q14 0 23 -9t9 -23zM1792 608v-64q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v64
q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM1792 864v-64q0 -14 -9 -23t-23 -9h-704q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h704q14 0 23 -9t9 -23zM1920 32v1120h-1792v-1120q0 -13 9.5 -22.5t22.5 -9.5h1728q13 0 22.5 9.5t9.5 22.5zM2048 1248v-1216q0 -66 -47 -113t-113 -47
h-1728q-66 0 -113 47t-47 113v1216q0 66 47 113t113 47h1728q66 0 113 -47t47 -113z" />
    <glyph glyph-name="uniF2C4" unicode="&#xf2c4;" horiz-adv-x="1792" 
d="M1255 749q0 318 -105 474.5t-330 156.5q-222 0 -326 -157t-104 -474q0 -316 104 -471.5t326 -155.5q74 0 131 17q-22 43 -39 73t-44 65t-53.5 56.5t-63 36t-77.5 14.5q-46 0 -79 -16l-49 97q105 91 276 91q132 0 215.5 -54t150.5 -155q67 149 67 402zM1645 117h117
q3 -27 -2 -67t-26.5 -95t-58 -100.5t-107 -78t-162.5 -32.5q-71 0 -130.5 19t-105.5 56t-79 78t-66 96q-97 -27 -205 -27q-150 0 -292.5 58t-253 158.5t-178 249t-67.5 317.5q0 170 67.5 319.5t178.5 250.5t253.5 159t291.5 58q121 0 238.5 -36t217 -106t176 -164.5
t119.5 -219t43 -261.5q0 -190 -80.5 -347.5t-218.5 -264.5q47 -70 93.5 -106.5t104.5 -36.5q61 0 94 37.5t38 85.5z" />
    <glyph glyph-name="uniF2C5" unicode="&#xf2c5;" horiz-adv-x="2304" 
d="M453 -101q0 -21 -16 -37.5t-37 -16.5q-1 0 -13 3q-63 15 -162 140q-225 284 -225 676q0 341 213 614q39 51 95 103.5t94 52.5q19 0 35 -13.5t16 -32.5q0 -27 -63 -90q-98 -102 -147 -184q-119 -199 -119 -449q0 -281 123 -491q50 -85 136 -173q2 -3 14.5 -16t19.5 -21
t17 -20.5t14.5 -23.5t4.5 -21zM1796 33q0 -29 -17.5 -48.5t-46.5 -19.5h-1081q-26 0 -45 19t-19 45q0 29 17.5 48.5t46.5 19.5h1081q26 0 45 -19t19 -45zM1581 644q0 -134 -67 -233q-25 -38 -69.5 -78.5t-83.5 -60.5q-16 -10 -27 -10q-7 0 -15 6t-8 12q0 9 19 30t42 46
t42 67.5t19 88.5q0 76 -35 130q-29 42 -46 42q-3 0 -3 -5q0 -12 7.5 -35.5t7.5 -36.5q0 -22 -21.5 -35t-44.5 -13q-66 0 -66 76q0 15 1.5 44t1.5 44q0 25 -10 46q-13 25 -42 53.5t-51 28.5q-5 0 -7 -0.5t-3.5 -2.5t-1.5 -6q0 -2 16 -26t16 -54q0 -37 -19 -68t-46 -54
t-53.5 -46t-45.5 -54t-19 -68q0 -98 42 -160q29 -43 79 -63q16 -5 17 -10q1 -2 1 -5q0 -16 -18 -16q-6 0 -33 11q-119 43 -195 139.5t-76 218.5q0 55 24.5 115.5t60 115t70.5 108.5t59.5 113.5t24.5 111.5q0 53 -25 94q-29 48 -56 64q-19 9 -19 21q0 20 41 20q50 0 110 -29
q41 -19 71 -44.5t49.5 -51t33.5 -62.5t22 -69t16 -80q0 -1 3 -17.5t4.5 -25t5.5 -25t9 -27t11 -21.5t14.5 -16.5t18.5 -5.5q23 0 37 14t14 37q0 25 -20 67t-20 52t10 10q27 0 93 -70q72 -76 102.5 -156t30.5 -186zM2304 615q0 -274 -138 -503q-19 -32 -48 -72t-68 -86.5
t-81 -77t-74 -30.5q-16 0 -31 15.5t-15 31.5q0 15 29 50.5t68.5 77t48.5 52.5q183 230 183 531q0 131 -20.5 235t-72.5 211q-58 119 -163 228q-2 3 -13 13.5t-16.5 16.5t-15 17.5t-15 20t-9.5 18.5t-4 19q0 19 16 35.5t35 16.5q70 0 196 -169q98 -131 146 -273t60 -314
q2 -42 2 -64z" />
    <glyph glyph-name="uniF2C6" unicode="&#xf2c6;" horiz-adv-x="1792" 
d="M1189 229l147 693q9 44 -10.5 63t-51.5 7l-864 -333q-29 -11 -39.5 -25t-2.5 -26.5t32 -19.5l221 -69l513 323q21 14 32 6q7 -5 -4 -15l-415 -375v0v0l-16 -228q23 0 45 22l108 104l224 -165q64 -36 81 38zM1792 640q0 -182 -71 -348t-191 -286t-286 -191t-348 -71
t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71t348 -71t286 -191t191 -286t71 -348z" />
    <glyph glyph-name="uniF2C7" unicode="&#xf2c7;" horiz-adv-x="1024" 
d="M640 192q0 -80 -56 -136t-136 -56t-136 56t-56 136q0 60 35 110t93 71v907h128v-907q58 -21 93 -71t35 -110zM768 192q0 77 -34 144t-94 112v768q0 80 -56 136t-136 56t-136 -56t-56 -136v-768q-60 -45 -94 -112t-34 -144q0 -133 93.5 -226.5t226.5 -93.5t226.5 93.5
t93.5 226.5zM896 192q0 -185 -131.5 -316.5t-316.5 -131.5t-316.5 131.5t-131.5 316.5q0 182 128 313v711q0 133 93.5 226.5t226.5 93.5t226.5 -93.5t93.5 -226.5v-711q128 -131 128 -313zM1024 768v-128h-192v128h192zM1024 1024v-128h-192v128h192zM1024 1280v-128h-192
v128h192z" />
    <glyph glyph-name="uniF2C8" unicode="&#xf2c8;" horiz-adv-x="1024" 
d="M640 192q0 -80 -56 -136t-136 -56t-136 56t-56 136q0 60 35 110t93 71v651h128v-651q58 -21 93 -71t35 -110zM768 192q0 77 -34 144t-94 112v768q0 80 -56 136t-136 56t-136 -56t-56 -136v-768q-60 -45 -94 -112t-34 -144q0 -133 93.5 -226.5t226.5 -93.5t226.5 93.5
t93.5 226.5zM896 192q0 -185 -131.5 -316.5t-316.5 -131.5t-316.5 131.5t-131.5 316.5q0 182 128 313v711q0 133 93.5 226.5t226.5 93.5t226.5 -93.5t93.5 -226.5v-711q128 -131 128 -313zM1024 768v-128h-192v128h192zM1024 1024v-128h-192v128h192zM1024 1280v-128h-192
v128h192z" />
    <glyph glyph-name="uniF2C9" unicode="&#xf2c9;" horiz-adv-x="1024" 
d="M640 192q0 -80 -56 -136t-136 -56t-136 56t-56 136q0 60 35 110t93 71v395h128v-395q58 -21 93 -71t35 -110zM768 192q0 77 -34 144t-94 112v768q0 80 -56 136t-136 56t-136 -56t-56 -136v-768q-60 -45 -94 -112t-34 -144q0 -133 93.5 -226.5t226.5 -93.5t226.5 93.5
t93.5 226.5zM896 192q0 -185 -131.5 -316.5t-316.5 -131.5t-316.5 131.5t-131.5 316.5q0 182 128 313v711q0 133 93.5 226.5t226.5 93.5t226.5 -93.5t93.5 -226.5v-711q128 -131 128 -313zM1024 768v-128h-192v128h192zM1024 1024v-128h-192v128h192zM1024 1280v-128h-192
v128h192z" />
    <glyph glyph-name="uniF2CA" unicode="&#xf2ca;" horiz-adv-x="1024" 
d="M640 192q0 -80 -56 -136t-136 -56t-136 56t-56 136q0 60 35 110t93 71v139h128v-139q58 -21 93 -71t35 -110zM768 192q0 77 -34 144t-94 112v768q0 80 -56 136t-136 56t-136 -56t-56 -136v-768q-60 -45 -94 -112t-34 -144q0 -133 93.5 -226.5t226.5 -93.5t226.5 93.5
t93.5 226.5zM896 192q0 -185 -131.5 -316.5t-316.5 -131.5t-316.5 131.5t-131.5 316.5q0 182 128 313v711q0 133 93.5 226.5t226.5 93.5t226.5 -93.5t93.5 -226.5v-711q128 -131 128 -313zM1024 768v-128h-192v128h192zM1024 1024v-128h-192v128h192zM1024 1280v-128h-192
v128h192z" />
    <glyph glyph-name="uniF2CB" unicode="&#xf2cb;" horiz-adv-x="1024" 
d="M640 192q0 -80 -56 -136t-136 -56t-136 56t-56 136q0 79 56 135.5t136 56.5t136 -56.5t56 -135.5zM768 192q0 77 -34 144t-94 112v768q0 80 -56 136t-136 56t-136 -56t-56 -136v-768q-60 -45 -94 -112t-34 -144q0 -133 93.5 -226.5t226.5 -93.5t226.5 93.5t93.5 226.5z
M896 192q0 -185 -131.5 -316.5t-316.5 -131.5t-316.5 131.5t-131.5 316.5q0 182 128 313v711q0 133 93.5 226.5t226.5 93.5t226.5 -93.5t93.5 -226.5v-711q128 -131 128 -313zM1024 768v-128h-192v128h192zM1024 1024v-128h-192v128h192zM1024 1280v-128h-192v128h192z" />
    <glyph glyph-name="uniF2CC" unicode="&#xf2cc;" horiz-adv-x="1920" 
d="M1433 1287q10 -10 10 -23t-10 -23l-626 -626q-10 -10 -23 -10t-23 10l-82 82q-10 10 -10 23t10 23l44 44q-72 91 -81.5 207t46.5 215q-74 71 -176 71q-106 0 -181 -75t-75 -181v-1280h-256v1280q0 104 40.5 198.5t109.5 163.5t163.5 109.5t198.5 40.5q106 0 201 -41
t166 -115q94 39 197 24.5t185 -79.5l44 44q10 10 23 10t23 -10zM1344 1024q26 0 45 -19t19 -45t-19 -45t-45 -19t-45 19t-19 45t19 45t45 19zM1600 896q-26 0 -45 19t-19 45t19 45t45 19t45 -19t19 -45t-19 -45t-45 -19zM1856 1024q26 0 45 -19t19 -45t-19 -45t-45 -19
t-45 19t-19 45t19 45t45 19zM1216 896q26 0 45 -19t19 -45t-19 -45t-45 -19t-45 19t-19 45t19 45t45 19zM1408 832q0 26 19 45t45 19t45 -19t19 -45t-19 -45t-45 -19t-45 19t-19 45zM1728 896q26 0 45 -19t19 -45t-19 -45t-45 -19t-45 19t-19 45t19 45t45 19zM1088 768
q26 0 45 -19t19 -45t-19 -45t-45 -19t-45 19t-19 45t19 45t45 19zM1344 640q-26 0 -45 19t-19 45t19 45t45 19t45 -19t19 -45t-19 -45t-45 -19zM1600 768q26 0 45 -19t19 -45t-19 -45t-45 -19t-45 19t-19 45t19 45t45 19zM1216 512q-26 0 -45 19t-19 45t19 45t45 19t45 -19
t19 -45t-19 -45t-45 -19zM1472 640q26 0 45 -19t19 -45t-19 -45t-45 -19t-45 19t-19 45t19 45t45 19zM1088 512q26 0 45 -19t19 -45t-19 -45t-45 -19t-45 19t-19 45t19 45t45 19zM1344 512q26 0 45 -19t19 -45t-19 -45t-45 -19t-45 19t-19 45t19 45t45 19zM1216 384
q26 0 45 -19t19 -45t-19 -45t-45 -19t-45 19t-19 45t19 45t45 19zM1088 256q26 0 45 -19t19 -45t-19 -45t-45 -19t-45 19t-19 45t19 45t45 19z" />
    <glyph glyph-name="uniF2CD" unicode="&#xf2cd;" horiz-adv-x="1792" 
d="M1664 448v-192q0 -169 -128 -286v-194q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v118q-63 -22 -128 -22h-768q-65 0 -128 22v-110q0 -17 -9.5 -28.5t-22.5 -11.5h-64q-13 0 -22.5 11.5t-9.5 28.5v186q-128 117 -128 286v192h1536zM704 864q0 -14 -9 -23t-23 -9t-23 9
t-9 23t9 23t23 9t23 -9t9 -23zM768 928q0 -14 -9 -23t-23 -9t-23 9t-9 23t9 23t23 9t23 -9t9 -23zM704 992q0 -14 -9 -23t-23 -9t-23 9t-9 23t9 23t23 9t23 -9t9 -23zM832 992q0 -14 -9 -23t-23 -9t-23 9t-9 23t9 23t23 9t23 -9t9 -23zM768 1056q0 -14 -9 -23t-23 -9t-23 9
t-9 23t9 23t23 9t23 -9t9 -23zM704 1120q0 -14 -9 -23t-23 -9t-23 9t-9 23t9 23t23 9t23 -9t9 -23zM1792 608v-64q0 -14 -9 -23t-23 -9h-1728q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h96v640q0 106 75 181t181 75q108 0 184 -78q46 19 98 12t93 -39l22 22q11 11 22 0l42 -42
q11 -11 0 -22l-314 -314q-11 -11 -22 0l-42 42q-11 11 0 22l22 22q-36 46 -40.5 104t23.5 108q-37 35 -88 35q-53 0 -90.5 -37.5t-37.5 -90.5v-640h1504q14 0 23 -9t9 -23zM896 1056q0 -14 -9 -23t-23 -9t-23 9t-9 23t9 23t23 9t23 -9t9 -23zM832 1120q0 -14 -9 -23t-23 -9
t-23 9t-9 23t9 23t23 9t23 -9t9 -23zM768 1184q0 -14 -9 -23t-23 -9t-23 9t-9 23t9 23t23 9t23 -9t9 -23zM960 1120q0 -14 -9 -23t-23 -9t-23 9t-9 23t9 23t23 9t23 -9t9 -23zM896 1184q0 -14 -9 -23t-23 -9t-23 9t-9 23t9 23t23 9t23 -9t9 -23zM832 1248q0 -14 -9 -23
t-23 -9t-23 9t-9 23t9 23t23 9t23 -9t9 -23zM1024 1184q0 -14 -9 -23t-23 -9t-23 9t-9 23t9 23t23 9t23 -9t9 -23zM960 1248q0 -14 -9 -23t-23 -9t-23 9t-9 23t9 23t23 9t23 -9t9 -23zM1088 1248q0 -14 -9 -23t-23 -9t-23 9t-9 23t9 23t23 9t23 -9t9 -23z" />
    <glyph glyph-name="uniF2CE" unicode="&#xf2ce;" 
d="M994 344q0 -86 -17 -197q-31 -215 -55 -313q-22 -90 -152 -90t-152 90q-24 98 -55 313q-17 110 -17 197q0 168 224 168t224 -168zM1536 768q0 -240 -134 -434t-350 -280q-8 -3 -15 3t-6 15q7 48 10 66q4 32 6 47q1 9 9 12q159 81 255.5 234t96.5 337q0 180 -91 330.5
t-247 234.5t-337 74q-124 -7 -237 -61t-193.5 -140.5t-128 -202t-46.5 -240.5q1 -184 99 -336.5t257 -231.5q7 -3 9 -12q3 -21 6 -45q1 -9 5 -32.5t6 -35.5q1 -9 -6.5 -15t-15.5 -2q-148 58 -261 169.5t-173.5 264t-52.5 319.5q7 143 66 273.5t154.5 227t225 157.5t272.5 70
q164 10 315.5 -46.5t261 -160.5t175 -250.5t65.5 -308.5zM994 800q0 -93 -65.5 -158.5t-158.5 -65.5t-158.5 65.5t-65.5 158.5t65.5 158.5t158.5 65.5t158.5 -65.5t65.5 -158.5zM1282 768q0 -122 -53.5 -228.5t-146.5 -177.5q-8 -6 -16 -2t-10 14q-6 52 -29 92q-7 10 3 20
q58 54 91 127t33 155q0 111 -58.5 204t-157.5 141.5t-212 36.5q-133 -15 -229 -113t-109 -231q-10 -92 23.5 -176t98.5 -144q10 -10 3 -20q-24 -41 -29 -93q-2 -9 -10 -13t-16 2q-95 74 -148.5 183t-51.5 234q3 131 69 244t177 181.5t241 74.5q144 7 268 -60t196.5 -187.5
t72.5 -263.5z" />
    <glyph glyph-name="uniF2D0" unicode="&#xf2d0;" horiz-adv-x="1792" 
d="M256 128h1280v768h-1280v-768zM1792 1248v-1216q0 -66 -47 -113t-113 -47h-1472q-66 0 -113 47t-47 113v1216q0 66 47 113t113 47h1472q66 0 113 -47t47 -113z" />
    <glyph glyph-name="uniF2D1" unicode="&#xf2d1;" horiz-adv-x="1792" 
d="M1792 224v-192q0 -66 -47 -113t-113 -47h-1472q-66 0 -113 47t-47 113v192q0 66 47 113t113 47h1472q66 0 113 -47t47 -113z" />
    <glyph glyph-name="uniF2D2" unicode="&#xf2d2;" horiz-adv-x="2048" 
d="M256 0h768v512h-768v-512zM1280 512h512v768h-768v-256h96q66 0 113 -47t47 -113v-352zM2048 1376v-960q0 -66 -47 -113t-113 -47h-608v-352q0 -66 -47 -113t-113 -47h-960q-66 0 -113 47t-47 113v960q0 66 47 113t113 47h608v352q0 66 47 113t113 47h960q66 0 113 -47
t47 -113z" />
    <glyph glyph-name="uniF2D3" unicode="&#xf2d3;" horiz-adv-x="1792" 
d="M1175 215l146 146q10 10 10 23t-10 23l-233 233l233 233q10 10 10 23t-10 23l-146 146q-10 10 -23 10t-23 -10l-233 -233l-233 233q-10 10 -23 10t-23 -10l-146 -146q-10 -10 -10 -23t10 -23l233 -233l-233 -233q-10 -10 -10 -23t10 -23l146 -146q10 -10 23 -10t23 10
l233 233l233 -233q10 -10 23 -10t23 10zM1792 1248v-1216q0 -66 -47 -113t-113 -47h-1472q-66 0 -113 47t-47 113v1216q0 66 47 113t113 47h1472q66 0 113 -47t47 -113z" />
    <glyph glyph-name="uniF2D4" unicode="&#xf2d4;" horiz-adv-x="1792" 
d="M1257 425l-146 -146q-10 -10 -23 -10t-23 10l-169 169l-169 -169q-10 -10 -23 -10t-23 10l-146 146q-10 10 -10 23t10 23l169 169l-169 169q-10 10 -10 23t10 23l146 146q10 10 23 10t23 -10l169 -169l169 169q10 10 23 10t23 -10l146 -146q10 -10 10 -23t-10 -23
l-169 -169l169 -169q10 -10 10 -23t-10 -23zM256 128h1280v1024h-1280v-1024zM1792 1248v-1216q0 -66 -47 -113t-113 -47h-1472q-66 0 -113 47t-47 113v1216q0 66 47 113t113 47h1472q66 0 113 -47t47 -113z" />
    <glyph glyph-name="uniF2D5" unicode="&#xf2d5;" horiz-adv-x="1792" 
d="M1070 358l306 564h-654l-306 -564h654zM1792 640q0 -182 -71 -348t-191 -286t-286 -191t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71t348 -71t286 -191t191 -286t71 -348z" />
    <glyph glyph-name="uniF2D6" unicode="&#xf2d6;" horiz-adv-x="1794" 
d="M1291 1060q-15 17 -35 8.5t-26 -28.5t5 -38q14 -17 40 -14.5t34 20.5t-18 52zM895 814q-8 -8 -19.5 -8t-18.5 8q-8 8 -8 19t8 18q7 8 18.5 8t19.5 -8q7 -7 7 -18t-7 -19zM1060 740l-35 -35q-12 -13 -29.5 -13t-30.5 13l-38 38q-12 13 -12 30t12 30l35 35q12 12 29.5 12
t30.5 -12l38 -39q12 -12 12 -29.5t-12 -29.5zM951 870q-7 -8 -18.5 -8t-19.5 8q-7 8 -7 19t7 19q8 8 19 8t19 -8t8 -19t-8 -19zM1354 968q-34 -64 -107.5 -85.5t-127.5 16.5q-38 28 -61 66.5t-21 87.5t39 92t75.5 53t70.5 -5t70 -51q2 -2 13 -12.5t14.5 -13.5t13 -13.5
t12.5 -15.5t10 -15.5t8.5 -18t4 -18.5t1 -21t-5 -22t-9.5 -24zM1555 486q3 20 -8.5 34.5t-27.5 21.5t-33 17t-23 20q-40 71 -84 98.5t-113 11.5q19 13 40 18.5t33 4.5l12 -1q2 45 -34 90q6 20 6.5 40.5t-2.5 30.5l-3 10q43 24 71 65t34 91q10 84 -43 150.5t-137 76.5
q-60 7 -114 -18.5t-82 -74.5q-30 -51 -33.5 -101t14.5 -87t43.5 -64t56.5 -42q-45 4 -88 36t-57 88q-28 108 32 222q-16 21 -29 32q-50 0 -89 -19q19 24 42 37t36 14l13 1q0 50 -13 78q-10 21 -32.5 28.5t-47 -3.5t-37.5 -40q2 4 4 7q-7 -28 -6.5 -75.5t19 -117t48.5 -122.5
q-25 -14 -47 -36q-35 -16 -85.5 -70.5t-84.5 -101.5l-33 -46q-90 -34 -181 -125.5t-75 -162.5q1 -16 11 -27q-15 -12 -30 -30q-21 -25 -21 -54t21.5 -40t63.5 6q41 19 77 49.5t55 60.5q-2 2 -6.5 5t-20.5 7.5t-33 3.5q23 5 51 12.5t40 10t27.5 6t26 4t23.5 0.5q14 -7 22 34
q7 37 7 90q0 102 -40 150q106 -103 101 -219q-1 -29 -15 -50t-27 -27l-13 -6q-4 -7 -19 -32t-26 -45.5t-26.5 -52t-25 -61t-17 -63t-6.5 -66.5t10 -63q-35 54 -37 80q-22 -24 -34.5 -39t-33.5 -42t-30.5 -46t-16.5 -41t-0.5 -38t25.5 -27q45 -25 144 64t190.5 221.5
t122.5 228.5q86 52 145 115.5t86 119.5q47 -93 154 -178q104 -83 167 -80q39 2 46 43zM1794 640q0 -182 -71 -348t-191 -286t-286.5 -191t-348.5 -71t-348.5 71t-286.5 191t-191 286t-71 348t71 348t191 286t286.5 191t348.5 71t348.5 -71t286.5 -191t191 -286t71 -348z" />
    <glyph glyph-name="uniF2D7" unicode="&#xf2d7;" 
d="M518 1353v-655q103 -1 191.5 1.5t125.5 5.5l37 3q68 2 90.5 24.5t39.5 94.5l33 142h103l-14 -322l7 -319h-103l-29 127q-15 68 -45 93t-84 26q-87 8 -352 8v-556q0 -78 43.5 -115.5t133.5 -37.5h357q35 0 59.5 2t55 7.5t54 18t48.5 32t46 50.5t39 73l93 216h89
q-6 -37 -31.5 -252t-30.5 -276q-146 5 -263.5 8t-162.5 4h-44h-628l-376 -12v102l127 25q67 13 91.5 37t25.5 79l8 643q3 402 -8 645q-2 61 -25.5 84t-91.5 36l-127 24v102l376 -12h702q139 0 374 27q-6 -68 -14 -194.5t-12 -219.5l-5 -92h-93l-32 124q-31 121 -74 179.5
t-113 58.5h-548q-28 0 -35.5 -8.5t-7.5 -30.5z" />
    <glyph glyph-name="uniF2D8" unicode="&#xf2d8;" 
d="M922 739v-182q0 -4 0.5 -15t0 -15l-1.5 -12t-3.5 -11.5t-6.5 -7.5t-11 -5.5t-16 -1.5v309q9 0 16 -1t11 -5t6.5 -5.5t3.5 -9.5t1 -10.5v-13.5v-14zM1238 643v-121q0 -1 0.5 -12.5t0 -15.5t-2.5 -11.5t-7.5 -10.5t-13.5 -3q-9 0 -14 9q-4 10 -4 165v7v8.5v9t1.5 8.5l3.5 7
t5 5.5t8 1.5q6 0 10 -1.5t6.5 -4.5t4 -6t2 -8.5t0.5 -8v-9.5v-9zM180 407h122v472h-122v-472zM614 407h106v472h-159l-28 -221q-20 148 -32 221h-158v-472h107v312l45 -312h76l43 319v-319zM1039 712q0 67 -5 90q-3 16 -11 28.5t-17 20.5t-25 14t-26.5 8.5t-31 4t-29 1.5
h-29.5h-12h-91v-472h56q169 -1 197 24.5t25 180.5q-1 62 -1 100zM1356 515v133q0 29 -2 45t-9.5 33.5t-24.5 25t-46 7.5q-46 0 -77 -34v154h-117v-472h110l7 30q30 -36 77 -36q50 0 66 30.5t16 83.5zM1536 1248v-1216q0 -66 -47 -113t-113 -47h-1216q-66 0 -113 47t-47 113
v1216q0 66 47 113t113 47h1216q66 0 113 -47t47 -113z" />
    <glyph glyph-name="uniF2D9" unicode="&#xf2d9;" horiz-adv-x="2176" 
d="M1143 -197q-6 1 -11 4q-13 8 -36 23t-86 65t-116.5 104.5t-112 140t-89.5 172.5q-17 3 -175 37q66 -213 235 -362t391 -184zM502 409l168 -28q-25 76 -41 167.5t-19 145.5l-4 53q-84 -82 -121 -224q5 -65 17 -114zM612 1018q-43 -64 -77 -148q44 46 74 68zM2049 584
q0 161 -62 307t-167.5 252t-250.5 168.5t-304 62.5q-147 0 -281 -52.5t-240 -148.5q-30 -58 -45 -160q60 51 143 83.5t158.5 43t143 13.5t108.5 -1l40 -3q33 -1 53 -15.5t24.5 -33t6.5 -37t-1 -28.5q-126 11 -227.5 0.5t-183 -43.5t-142.5 -71.5t-131 -98.5
q4 -36 11.5 -92.5t35.5 -178t62 -179.5q123 -6 247.5 14.5t214.5 53.5t162.5 67t109.5 59l37 24q22 16 39.5 20.5t30.5 -5t17 -34.5q14 -97 -39 -121q-208 -97 -467 -134q-135 -20 -317 -16q41 -96 110 -176.5t137 -127t130.5 -79t101.5 -43.5l39 -12q143 -23 263 15
q195 99 314 289t119 418zM2123 621q-14 -135 -40 -212q-70 -208 -181.5 -346.5t-318.5 -253.5q-48 -33 -82 -44q-72 -26 -163 -16q-36 -3 -73 -3q-283 0 -504.5 173t-295.5 442q-1 0 -4 0.5t-5 0.5q-6 -50 2.5 -112.5t26 -115t36 -98t31.5 -71.5l14 -26q8 -12 54 -82
q-71 38 -124.5 106.5t-78.5 140t-39.5 137t-17.5 107.5l-2 42q-5 2 -33.5 12.5t-48.5 18t-53 20.5t-57.5 25t-50 25.5t-42.5 27t-25 25.5q19 -10 50.5 -25.5t113 -45.5t145.5 -38l2 32q11 149 94 290q41 202 176 365q28 115 81 214q15 28 32 45t49 32q158 74 303.5 104
t302 11t306.5 -97q220 -115 333 -336t87 -474z" />
    <glyph glyph-name="uniF2DA" unicode="&#xf2da;" horiz-adv-x="1792" 
d="M1341 752q29 44 -6.5 129.5t-121.5 142.5q-58 39 -125.5 53.5t-118 4.5t-68.5 -37q-12 -23 -4.5 -28t42.5 -10q23 -3 38.5 -5t44.5 -9.5t56 -17.5q36 -13 67.5 -31.5t53 -37t40 -38.5t30.5 -38t22 -34.5t16.5 -28.5t12 -18.5t10.5 -6t11 9.5zM1704 178
q-52 -127 -148.5 -220t-214.5 -141.5t-253 -60.5t-266 13.5t-251 91t-210 161.5t-141.5 235.5t-46.5 303.5q1 41 8.5 84.5t12.5 64t24 80.5t23 73q-51 -208 1 -397t173 -318t291 -206t346 -83t349 74.5t289 244.5q20 27 18 14q0 -4 -4 -14zM1465 627q0 -104 -40.5 -199
t-108.5 -164t-162 -109.5t-198 -40.5t-198 40.5t-162 109.5t-108.5 164t-40.5 199t40.5 199t108.5 164t162 109.5t198 40.5t198 -40.5t162 -109.5t108.5 -164t40.5 -199zM1752 915q-65 147 -180.5 251t-253 153.5t-292 53.5t-301 -36.5t-275.5 -129t-220 -211.5t-131 -297
t-10 -373q-49 161 -51.5 311.5t35.5 272.5t109 227t165.5 180.5t207 126t232 71t242.5 9t236 -54t216 -124.5t178 -197q33 -50 62 -121t31 -112zM1690 573q12 244 -136.5 416t-396.5 240q-8 0 -10 5t24 8q125 -4 230 -50t173 -120t116 -168.5t58.5 -199t-1 -208
t-61.5 -197.5t-122.5 -167t-185 -117.5t-248.5 -46.5q108 30 201.5 80t174 123t129.5 176.5t55 225.5z" />
    <glyph glyph-name="uniF2DB" unicode="&#xf2db;" 
d="M192 256v-128h-112q-16 0 -16 16v16h-48q-16 0 -16 16v32q0 16 16 16h48v16q0 16 16 16h112zM192 512v-128h-112q-16 0 -16 16v16h-48q-16 0 -16 16v32q0 16 16 16h48v16q0 16 16 16h112zM192 768v-128h-112q-16 0 -16 16v16h-48q-16 0 -16 16v32q0 16 16 16h48v16
q0 16 16 16h112zM192 1024v-128h-112q-16 0 -16 16v16h-48q-16 0 -16 16v32q0 16 16 16h48v16q0 16 16 16h112zM192 1280v-128h-112q-16 0 -16 16v16h-48q-16 0 -16 16v32q0 16 16 16h48v16q0 16 16 16h112zM1280 1440v-1472q0 -40 -28 -68t-68 -28h-832q-40 0 -68 28
t-28 68v1472q0 40 28 68t68 28h832q40 0 68 -28t28 -68zM1536 208v-32q0 -16 -16 -16h-48v-16q0 -16 -16 -16h-112v128h112q16 0 16 -16v-16h48q16 0 16 -16zM1536 464v-32q0 -16 -16 -16h-48v-16q0 -16 -16 -16h-112v128h112q16 0 16 -16v-16h48q16 0 16 -16zM1536 720v-32
q0 -16 -16 -16h-48v-16q0 -16 -16 -16h-112v128h112q16 0 16 -16v-16h48q16 0 16 -16zM1536 976v-32q0 -16 -16 -16h-48v-16q0 -16 -16 -16h-112v128h112q16 0 16 -16v-16h48q16 0 16 -16zM1536 1232v-32q0 -16 -16 -16h-48v-16q0 -16 -16 -16h-112v128h112q16 0 16 -16v-16
h48q16 0 16 -16z" />
    <glyph glyph-name="uniF2DC" unicode="&#xf2dc;" horiz-adv-x="1664" 
d="M1566 419l-167 -33l186 -107q23 -13 29.5 -38.5t-6.5 -48.5q-14 -23 -39 -29.5t-48 6.5l-186 106l55 -160q13 -38 -12 -63.5t-60.5 -20.5t-48.5 42l-102 300l-271 156v-313l208 -238q16 -18 17 -39t-11 -36.5t-28.5 -25t-37 -5.5t-36.5 22l-112 128v-214q0 -26 -19 -45
t-45 -19t-45 19t-19 45v214l-112 -128q-16 -18 -36.5 -22t-37 5.5t-28.5 25t-11 36.5t17 39l208 238v313l-271 -156l-102 -300q-13 -37 -48.5 -42t-60.5 20.5t-12 63.5l55 160l-186 -106q-23 -13 -48 -6.5t-39 29.5q-13 23 -6.5 48.5t29.5 38.5l186 107l-167 33
q-29 6 -42 29t-8.5 46.5t25.5 40t50 10.5l310 -62l271 157l-271 157l-310 -62q-4 -1 -13 -1q-27 0 -44 18t-19 40t11 43t40 26l167 33l-186 107q-23 13 -29.5 38.5t6.5 48.5t39 30t48 -7l186 -106l-55 160q-13 38 12 63.5t60.5 20.5t48.5 -42l102 -300l271 -156v313
l-208 238q-16 18 -17 39t11 36.5t28.5 25t37 5.5t36.5 -22l112 -128v214q0 26 19 45t45 19t45 -19t19 -45v-214l112 128q16 18 36.5 22t37 -5.5t28.5 -25t11 -36.5t-17 -39l-208 -238v-313l271 156l102 300q13 37 48.5 42t60.5 -20.5t12 -63.5l-55 -160l186 106
q23 13 48 6.5t39 -29.5q13 -23 6.5 -48.5t-29.5 -38.5l-186 -107l167 -33q27 -5 40 -26t11 -43t-19 -40t-44 -18q-9 0 -13 1l-310 62l-271 -157l271 -157l310 62q29 6 50 -10.5t25.5 -40t-8.5 -46.5t-42 -29z" />
    <glyph glyph-name="uniF2DD" unicode="&#xf2dd;" horiz-adv-x="1792" 
d="M1473 607q7 118 -33 226.5t-113 189t-177 131t-221 57.5q-116 7 -225.5 -32t-192 -110.5t-135 -175t-59.5 -220.5q-7 -118 33 -226.5t113 -189t177.5 -131t221.5 -57.5q155 -9 293 59t224 195.5t94 283.5zM1792 1536l-349 -348q120 -117 180.5 -272t50.5 -321
q-11 -183 -102 -339t-241 -255.5t-332 -124.5l-999 -132l347 347q-120 116 -180.5 271.5t-50.5 321.5q11 184 102 340t241.5 255.5t332.5 124.5q167 22 500 66t500 66z" />
    <glyph glyph-name="uniF2DE" unicode="&#xf2de;" horiz-adv-x="1792" 
d="M948 508l163 -329h-51l-175 350l-171 -350h-49l179 374l-78 33l21 49l240 -102l-21 -50zM563 1100l304 -130l-130 -304l-304 130zM907 915l240 -103l-103 -239l-239 102zM1188 765l191 -81l-82 -190l-190 81zM1680 640q0 159 -62 304t-167.5 250.5t-250.5 167.5t-304 62
t-304 -62t-250.5 -167.5t-167.5 -250.5t-62 -304t62 -304t167.5 -250.5t250.5 -167.5t304 -62t304 62t250.5 167.5t167.5 250.5t62 304zM1792 640q0 -182 -71 -348t-191 -286t-286 -191t-348 -71t-348 71t-286 191t-191 286t-71 348t71 348t191 286t286 191t348 71t348 -71
t286 -191t191 -286t71 -348z" />
    <glyph glyph-name="uniF2E0" unicode="&#xf2e0;" horiz-adv-x="1920" 
d="M1334 302q-4 24 -27.5 34t-49.5 10.5t-48.5 12.5t-25.5 38q-5 47 33 139.5t75 181t32 127.5q-14 101 -117 103q-45 1 -75 -16l-3 -2l-5 -2.5t-4.5 -2t-5 -2t-5 -0.5t-6 1.5t-6 3.5t-6.5 5q-3 2 -9 8.5t-9 9t-8.5 7.5t-9.5 7.5t-9.5 5.5t-11 4.5t-11.5 2.5q-30 5 -48 -3
t-45 -31q-1 -1 -9 -8.5t-12.5 -11t-15 -10t-16.5 -5.5t-17 3q-54 27 -84 40q-41 18 -94 -5t-76 -65q-16 -28 -41 -98.5t-43.5 -132.5t-40 -134t-21.5 -73q-22 -69 18.5 -119t110.5 -46q30 2 50.5 15t38.5 46q7 13 79 199.5t77 194.5q6 11 21.5 18t29.5 0q27 -15 21 -53
q-2 -18 -51 -139.5t-50 -132.5q-6 -38 19.5 -56.5t60.5 -7t55 49.5q4 8 45.5 92t81.5 163.5t46 88.5q20 29 41 28q29 0 25 -38q-2 -16 -65.5 -147.5t-70.5 -159.5q-12 -53 13 -103t74 -74q17 -9 51 -15.5t71.5 -8t62.5 14t20 48.5zM383 86q3 -15 -5 -27.5t-23 -15.5
q-14 -3 -26.5 5t-15.5 23q-3 14 5 27t22 16t27 -5t16 -23zM953 -177q12 -17 8.5 -37.5t-20.5 -32.5t-37.5 -8t-32.5 21q-11 17 -7.5 37.5t20.5 32.5t37.5 8t31.5 -21zM177 635q-18 -27 -49.5 -33t-57.5 13q-26 18 -32 50t12 58q18 27 49.5 33t57.5 -12q26 -19 32 -50.5
t-12 -58.5zM1467 -42q19 -28 13 -61.5t-34 -52.5t-60.5 -13t-51.5 34t-13 61t33 53q28 19 60.5 13t52.5 -34zM1579 562q69 -113 42.5 -244.5t-134.5 -207.5q-90 -63 -199 -60q-20 -80 -84.5 -127t-143.5 -44.5t-140 57.5q-12 -9 -13 -10q-103 -71 -225 -48.5t-193 126.5
q-50 73 -53 164q-83 14 -142.5 70.5t-80.5 128t-2 152t81 138.5q-36 60 -38 128t24.5 125t79.5 98.5t121 50.5q32 85 99 148t146.5 91.5t168 17t159.5 -66.5q72 21 140 17.5t128.5 -36t104.5 -80t67.5 -115t17.5 -140.5q52 -16 87 -57t45.5 -89t-5.5 -99.5t-58 -87.5z
M455 1222q14 -20 9.5 -44.5t-24.5 -38.5q-19 -14 -43.5 -9.5t-37.5 24.5q-14 20 -9.5 44.5t24.5 38.5q19 14 43.5 9.5t37.5 -24.5zM614 1503q4 -16 -5 -30.5t-26 -18.5t-31 5.5t-18 26.5q-3 17 6.5 31t25.5 18q17 4 31 -5.5t17 -26.5zM1800 555q4 -20 -6.5 -37t-30.5 -21
q-19 -4 -36 6.5t-21 30.5t6.5 37t30.5 22q20 4 36.5 -7.5t20.5 -30.5zM1136 1448q16 -27 8.5 -58.5t-35.5 -47.5q-27 -16 -57.5 -8.5t-46.5 34.5q-16 28 -8.5 59t34.5 48t58 9t47 -36zM1882 792q4 -15 -4 -27.5t-23 -16.5q-15 -3 -27.5 5.5t-15.5 22.5q-3 15 5 28t23 16
q14 3 26.5 -5t15.5 -23zM1691 1033q15 -22 10.5 -49t-26.5 -43q-22 -15 -49 -10t-42 27t-10 49t27 43t48.5 11t41.5 -28z" />
    <glyph glyph-name="uniF2E1" unicode="&#xf2e1;" horiz-adv-x="1792" 
 />
    <glyph glyph-name="uniF2E2" unicode="&#xf2e2;" horiz-adv-x="1792" 
 />
    <glyph glyph-name="uniF2E3" unicode="&#xf2e3;" horiz-adv-x="1792" 
 />
    <glyph glyph-name="uniF2E4" unicode="&#xf2e4;" horiz-adv-x="1792" 
 />
    <glyph glyph-name="uniF2E5" unicode="&#xf2e5;" horiz-adv-x="1792" 
 />
    <glyph glyph-name="uniF2E6" unicode="&#xf2e6;" horiz-adv-x="1792" 
 />
    <glyph glyph-name="uniF2E7" unicode="&#xf2e7;" horiz-adv-x="1792" 
 />
    <glyph glyph-name="_698" unicode="&#xf2e8;" horiz-adv-x="1792" 
 />
    <glyph glyph-name="uniF2E9" unicode="&#xf2e9;" horiz-adv-x="1792" 
 />
    <glyph glyph-name="uniF2EA" unicode="&#xf2ea;" horiz-adv-x="1792" 
 />
    <glyph glyph-name="uniF2EB" unicode="&#xf2eb;" horiz-adv-x="1792" 
 />
    <glyph glyph-name="uniF2EC" unicode="&#xf2ec;" horiz-adv-x="1792" 
 />
    <glyph glyph-name="uniF2ED" unicode="&#xf2ed;" horiz-adv-x="1792" 
 />
    <glyph glyph-name="uniF2EE" unicode="&#xf2ee;" horiz-adv-x="1792" 
 />
    <glyph glyph-name="lessequal" unicode="&#xf500;" horiz-adv-x="1792" 
 />
  </font>
</defs></svg>
assets/lib/font-awesome/json/regular.json000064400000311165151327220410014531 0ustar00{
  "icons": {
	"address-book": [448, 512, [], "f2b9", "M436 160c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-20V48c0-26.5-21.5-48-48-48H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h320c26.5 0 48-21.5 48-48v-48h20c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-20v-64h20c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-20v-64h20zm-68 304H48V48h320v416zM208 256c35.3 0 64-28.7 64-64s-28.7-64-64-64-64 28.7-64 64 28.7 64 64 64zm-89.6 128h179.2c12.4 0 22.4-8.6 22.4-19.2v-19.2c0-31.8-30.1-57.6-67.2-57.6-10.8 0-18.7 8-44.8 8-26.9 0-33.4-8-44.8-8-37.1 0-67.2 25.8-67.2 57.6v19.2c0 10.6 10 19.2 22.4 19.2z"],
	"address-card": [576, 512, [], "f2bb", "M528 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm0 400H48V80h480v352zM208 256c35.3 0 64-28.7 64-64s-28.7-64-64-64-64 28.7-64 64 28.7 64 64 64zm-89.6 128h179.2c12.4 0 22.4-8.6 22.4-19.2v-19.2c0-31.8-30.1-57.6-67.2-57.6-10.8 0-18.7 8-44.8 8-26.9 0-33.4-8-44.8-8-37.1 0-67.2 25.8-67.2 57.6v19.2c0 10.6 10 19.2 22.4 19.2zM360 320h112c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8H360c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8zm0-64h112c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8H360c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8zm0-64h112c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8H360c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8z"],
	"angry": [496, 512, [], "f556", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm0-144c-33.6 0-65.2 14.8-86.8 40.6-8.5 10.2-7.1 25.3 3.1 33.8s25.3 7.2 33.8-3c24.8-29.7 75-29.7 99.8 0 8.1 9.7 23.2 11.9 33.8 3 10.2-8.5 11.5-23.6 3.1-33.8-21.6-25.8-53.2-40.6-86.8-40.6zm-48-72c10.3 0 19.9-6.7 23-17.1 3.8-12.7-3.4-26.1-16.1-29.9l-80-24c-12.8-3.9-26.1 3.4-29.9 16.1-3.8 12.7 3.4 26.1 16.1 29.9l28.2 8.5c-3.1 4.9-5.3 10.4-5.3 16.6 0 17.7 14.3 32 32 32s32-14.4 32-32.1zm199-54.9c-3.8-12.7-17.1-19.9-29.9-16.1l-80 24c-12.7 3.8-19.9 17.2-16.1 29.9 3.1 10.4 12.7 17.1 23 17.1 0 17.7 14.3 32 32 32s32-14.3 32-32c0-6.2-2.2-11.7-5.3-16.6l28.2-8.5c12.7-3.7 19.9-17.1 16.1-29.8z"],
	"arrow-alt-circle-down": [512, 512, [], "f358", "M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm0 448c-110.5 0-200-89.5-200-200S145.5 56 256 56s200 89.5 200 200-89.5 200-200 200zm-32-316v116h-67c-10.7 0-16 12.9-8.5 20.5l99 99c4.7 4.7 12.3 4.7 17 0l99-99c7.6-7.6 2.2-20.5-8.5-20.5h-67V140c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12z"],
	"arrow-alt-circle-left": [512, 512, [], "f359", "M8 256c0 137 111 248 248 248s248-111 248-248S393 8 256 8 8 119 8 256zm448 0c0 110.5-89.5 200-200 200S56 366.5 56 256 145.5 56 256 56s200 89.5 200 200zm-72-20v40c0 6.6-5.4 12-12 12H256v67c0 10.7-12.9 16-20.5 8.5l-99-99c-4.7-4.7-4.7-12.3 0-17l99-99c7.6-7.6 20.5-2.2 20.5 8.5v67h116c6.6 0 12 5.4 12 12z"],
	"arrow-alt-circle-right": [512, 512, [], "f35a", "M504 256C504 119 393 8 256 8S8 119 8 256s111 248 248 248 248-111 248-248zm-448 0c0-110.5 89.5-200 200-200s200 89.5 200 200-89.5 200-200 200S56 366.5 56 256zm72 20v-40c0-6.6 5.4-12 12-12h116v-67c0-10.7 12.9-16 20.5-8.5l99 99c4.7 4.7 4.7 12.3 0 17l-99 99c-7.6 7.6-20.5 2.2-20.5-8.5v-67H140c-6.6 0-12-5.4-12-12z"],
	"arrow-alt-circle-up": [512, 512, [], "f35b", "M256 504c137 0 248-111 248-248S393 8 256 8 8 119 8 256s111 248 248 248zm0-448c110.5 0 200 89.5 200 200s-89.5 200-200 200S56 366.5 56 256 145.5 56 256 56zm20 328h-40c-6.6 0-12-5.4-12-12V256h-67c-10.7 0-16-12.9-8.5-20.5l99-99c4.7-4.7 12.3-4.7 17 0l99 99c7.6 7.6 2.2 20.5-8.5 20.5h-67v116c0 6.6-5.4 12-12 12z"],
	"bell": [448, 512, [], "f0f3", "M439.39 362.29c-19.32-20.76-55.47-51.99-55.47-154.29 0-77.7-54.48-139.9-127.94-155.16V32c0-17.67-14.32-32-31.98-32s-31.98 14.33-31.98 32v20.84C118.56 68.1 64.08 130.3 64.08 208c0 102.3-36.15 133.53-55.47 154.29-6 6.45-8.66 14.16-8.61 21.71.11 16.4 12.98 32 32.1 32h383.8c19.12 0 32-15.6 32.1-32 .05-7.55-2.61-15.27-8.61-21.71zM67.53 368c21.22-27.97 44.42-74.33 44.53-159.42 0-.2-.06-.38-.06-.58 0-61.86 50.14-112 112-112s112 50.14 112 112c0 .2-.06.38-.06.58.11 85.1 23.31 131.46 44.53 159.42H67.53zM224 512c35.32 0 63.97-28.65 63.97-64H160.03c0 35.35 28.65 64 63.97 64z"],
	"bell-slash": [640, 512, [], "f1f6", "M633.99 471.02L36 3.51C29.1-2.01 19.03-.9 13.51 6l-10 12.49C-2.02 25.39-.9 35.46 6 40.98l598 467.51c6.9 5.52 16.96 4.4 22.49-2.49l10-12.49c5.52-6.9 4.41-16.97-2.5-22.49zM163.53 368c16.71-22.03 34.48-55.8 41.4-110.58l-45.47-35.55c-3.27 90.73-36.47 120.68-54.84 140.42-6 6.45-8.66 14.16-8.61 21.71.11 16.4 12.98 32 32.1 32h279.66l-61.4-48H163.53zM320 96c61.86 0 112 50.14 112 112 0 .2-.06.38-.06.58.02 16.84 1.16 31.77 2.79 45.73l59.53 46.54c-8.31-22.13-14.34-51.49-14.34-92.85 0-77.7-54.48-139.9-127.94-155.16V32c0-17.67-14.32-32-31.98-32s-31.98 14.33-31.98 32v20.84c-26.02 5.41-49.45 16.94-69.13 32.72l38.17 29.84C275 103.18 296.65 96 320 96zm0 416c35.32 0 63.97-28.65 63.97-64H256.03c0 35.35 28.65 64 63.97 64z"],
	"bookmark": [384, 512, [], "f02e", "M336 0H48C21.49 0 0 21.49 0 48v464l192-112 192 112V48c0-26.51-21.49-48-48-48zm0 428.43l-144-84-144 84V54a6 6 0 0 1 6-6h276c3.314 0 6 2.683 6 5.996V428.43z"],
	"building": [448, 512, [], "f1ad", "M128 148v-40c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12zm140 12h40c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12zm-128 96h40c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12zm128 0h40c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12zm-76 84v-40c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12zm76 12h40c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12zm180 124v36H0v-36c0-6.6 5.4-12 12-12h19.5V24c0-13.3 10.7-24 24-24h337c13.3 0 24 10.7 24 24v440H436c6.6 0 12 5.4 12 12zM79.5 463H192v-67c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v67h112.5V49L80 48l-.5 415z"],
	"calendar": [448, 512, [], "f133", "M400 64h-48V12c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v52H160V12c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v52H48C21.5 64 0 85.5 0 112v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V112c0-26.5-21.5-48-48-48zm-6 400H54c-3.3 0-6-2.7-6-6V160h352v298c0 3.3-2.7 6-6 6z"],
	"calendar-alt": [448, 512, [], "f073", "M148 288h-40c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12zm108-12v-40c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12zm96 0v-40c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12zm-96 96v-40c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12zm-96 0v-40c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12zm192 0v-40c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12zm96-260v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V112c0-26.5 21.5-48 48-48h48V12c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v52h128V12c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v52h48c26.5 0 48 21.5 48 48zm-48 346V160H48v298c0 3.3 2.7 6 6 6h340c3.3 0 6-2.7 6-6z"],
	"calendar-check": [448, 512, [], "f274", "M400 64h-48V12c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v52H160V12c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v52H48C21.49 64 0 85.49 0 112v352c0 26.51 21.49 48 48 48h352c26.51 0 48-21.49 48-48V112c0-26.51-21.49-48-48-48zm-6 400H54a6 6 0 0 1-6-6V160h352v298a6 6 0 0 1-6 6zm-52.849-200.65L198.842 404.519c-4.705 4.667-12.303 4.637-16.971-.068l-75.091-75.699c-4.667-4.705-4.637-12.303.068-16.971l22.719-22.536c4.705-4.667 12.303-4.637 16.97.069l44.104 44.461 111.072-110.181c4.705-4.667 12.303-4.637 16.971.068l22.536 22.718c4.667 4.705 4.636 12.303-.069 16.97z"],
	"calendar-minus": [448, 512, [], "f272", "M124 328c-6.6 0-12-5.4-12-12v-24c0-6.6 5.4-12 12-12h200c6.6 0 12 5.4 12 12v24c0 6.6-5.4 12-12 12H124zm324-216v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V112c0-26.5 21.5-48 48-48h48V12c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v52h128V12c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v52h48c26.5 0 48 21.5 48 48zm-48 346V160H48v298c0 3.3 2.7 6 6 6h340c3.3 0 6-2.7 6-6z"],
	"calendar-plus": [448, 512, [], "f271", "M336 292v24c0 6.6-5.4 12-12 12h-76v76c0 6.6-5.4 12-12 12h-24c-6.6 0-12-5.4-12-12v-76h-76c-6.6 0-12-5.4-12-12v-24c0-6.6 5.4-12 12-12h76v-76c0-6.6 5.4-12 12-12h24c6.6 0 12 5.4 12 12v76h76c6.6 0 12 5.4 12 12zm112-180v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V112c0-26.5 21.5-48 48-48h48V12c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v52h128V12c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v52h48c26.5 0 48 21.5 48 48zm-48 346V160H48v298c0 3.3 2.7 6 6 6h340c3.3 0 6-2.7 6-6z"],
	"calendar-times": [448, 512, [], "f273", "M311.7 374.7l-17 17c-4.7 4.7-12.3 4.7-17 0L224 337.9l-53.7 53.7c-4.7 4.7-12.3 4.7-17 0l-17-17c-4.7-4.7-4.7-12.3 0-17l53.7-53.7-53.7-53.7c-4.7-4.7-4.7-12.3 0-17l17-17c4.7-4.7 12.3-4.7 17 0l53.7 53.7 53.7-53.7c4.7-4.7 12.3-4.7 17 0l17 17c4.7 4.7 4.7 12.3 0 17L257.9 304l53.7 53.7c4.8 4.7 4.8 12.3.1 17zM448 112v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V112c0-26.5 21.5-48 48-48h48V12c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v52h128V12c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v52h48c26.5 0 48 21.5 48 48zm-48 346V160H48v298c0 3.3 2.7 6 6 6h340c3.3 0 6-2.7 6-6z"],
	"caret-square-down": [448, 512, [], "f150", "M125.1 208h197.8c10.7 0 16.1 13 8.5 20.5l-98.9 98.3c-4.7 4.7-12.2 4.7-16.9 0l-98.9-98.3c-7.7-7.5-2.3-20.5 8.4-20.5zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-48 346V86c0-3.3-2.7-6-6-6H54c-3.3 0-6 2.7-6 6v340c0 3.3 2.7 6 6 6h340c3.3 0 6-2.7 6-6z"],
	"caret-square-left": [448, 512, [], "f191", "M272 157.1v197.8c0 10.7-13 16.1-20.5 8.5l-98.3-98.9c-4.7-4.7-4.7-12.2 0-16.9l98.3-98.9c7.5-7.7 20.5-2.3 20.5 8.4zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-48 346V86c0-3.3-2.7-6-6-6H54c-3.3 0-6 2.7-6 6v340c0 3.3 2.7 6 6 6h340c3.3 0 6-2.7 6-6z"],
	"caret-square-right": [448, 512, [], "f152", "M176 354.9V157.1c0-10.7 13-16.1 20.5-8.5l98.3 98.9c4.7 4.7 4.7 12.2 0 16.9l-98.3 98.9c-7.5 7.7-20.5 2.3-20.5-8.4zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-48 346V86c0-3.3-2.7-6-6-6H54c-3.3 0-6 2.7-6 6v340c0 3.3 2.7 6 6 6h340c3.3 0 6-2.7 6-6z"],
	"caret-square-up": [448, 512, [], "f151", "M322.9 304H125.1c-10.7 0-16.1-13-8.5-20.5l98.9-98.3c4.7-4.7 12.2-4.7 16.9 0l98.9 98.3c7.7 7.5 2.3 20.5-8.4 20.5zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-48 346V86c0-3.3-2.7-6-6-6H54c-3.3 0-6 2.7-6 6v340c0 3.3 2.7 6 6 6h340c3.3 0 6-2.7 6-6z"],
	"chart-bar": [512, 512, [], "f080", "M396.8 352h22.4c6.4 0 12.8-6.4 12.8-12.8V108.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v230.4c0 6.4 6.4 12.8 12.8 12.8zm-192 0h22.4c6.4 0 12.8-6.4 12.8-12.8V140.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v198.4c0 6.4 6.4 12.8 12.8 12.8zm96 0h22.4c6.4 0 12.8-6.4 12.8-12.8V204.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v134.4c0 6.4 6.4 12.8 12.8 12.8zM496 400H48V80c0-8.84-7.16-16-16-16H16C7.16 64 0 71.16 0 80v336c0 17.67 14.33 32 32 32h464c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16zm-387.2-48h22.4c6.4 0 12.8-6.4 12.8-12.8v-70.4c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v70.4c0 6.4 6.4 12.8 12.8 12.8z"],
	"check-circle": [512, 512, [], "f058", "M256 8C119.033 8 8 119.033 8 256s111.033 248 248 248 248-111.033 248-248S392.967 8 256 8zm0 48c110.532 0 200 89.451 200 200 0 110.532-89.451 200-200 200-110.532 0-200-89.451-200-200 0-110.532 89.451-200 200-200m140.204 130.267l-22.536-22.718c-4.667-4.705-12.265-4.736-16.97-.068L215.346 303.697l-59.792-60.277c-4.667-4.705-12.265-4.736-16.97-.069l-22.719 22.536c-4.705 4.667-4.736 12.265-.068 16.971l90.781 91.516c4.667 4.705 12.265 4.736 16.97.068l172.589-171.204c4.704-4.668 4.734-12.266.067-16.971z"],
	"check-square": [448, 512, [], "f14a", "M400 32H48C21.49 32 0 53.49 0 80v352c0 26.51 21.49 48 48 48h352c26.51 0 48-21.49 48-48V80c0-26.51-21.49-48-48-48zm0 400H48V80h352v352zm-35.864-241.724L191.547 361.48c-4.705 4.667-12.303 4.637-16.97-.068l-90.781-91.516c-4.667-4.705-4.637-12.303.069-16.971l22.719-22.536c4.705-4.667 12.303-4.637 16.97.069l59.792 60.277 141.352-140.216c4.705-4.667 12.303-4.637 16.97.068l22.536 22.718c4.667 4.706 4.637 12.304-.068 16.971z"],
	"circle": [512, 512, [], "f111", "M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm0 448c-110.5 0-200-89.5-200-200S145.5 56 256 56s200 89.5 200 200-89.5 200-200 200z"],
	"clipboard": [384, 512, [], "f328", "M336 64h-80c0-35.3-28.7-64-64-64s-64 28.7-64 64H48C21.5 64 0 85.5 0 112v352c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V112c0-26.5-21.5-48-48-48zM192 40c13.3 0 24 10.7 24 24s-10.7 24-24 24-24-10.7-24-24 10.7-24 24-24zm144 418c0 3.3-2.7 6-6 6H54c-3.3 0-6-2.7-6-6V118c0-3.3 2.7-6 6-6h42v36c0 6.6 5.4 12 12 12h168c6.6 0 12-5.4 12-12v-36h42c3.3 0 6 2.7 6 6z"],
	"clock": [512, 512, [], "f017", "M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm0 448c-110.5 0-200-89.5-200-200S145.5 56 256 56s200 89.5 200 200-89.5 200-200 200zm61.8-104.4l-84.9-61.7c-3.1-2.3-4.9-5.9-4.9-9.7V116c0-6.6 5.4-12 12-12h32c6.6 0 12 5.4 12 12v141.7l66.8 48.6c5.4 3.9 6.5 11.4 2.6 16.8L334.6 349c-3.9 5.3-11.4 6.5-16.8 2.6z"],
	"clone": [512, 512, [], "f24d", "M464 0H144c-26.51 0-48 21.49-48 48v48H48c-26.51 0-48 21.49-48 48v320c0 26.51 21.49 48 48 48h320c26.51 0 48-21.49 48-48v-48h48c26.51 0 48-21.49 48-48V48c0-26.51-21.49-48-48-48zM362 464H54a6 6 0 0 1-6-6V150a6 6 0 0 1 6-6h42v224c0 26.51 21.49 48 48 48h224v42a6 6 0 0 1-6 6zm96-96H150a6 6 0 0 1-6-6V54a6 6 0 0 1 6-6h308a6 6 0 0 1 6 6v308a6 6 0 0 1-6 6z"],
	"closed-captioning": [512, 512, [], "f20a", "M464 64H48C21.5 64 0 85.5 0 112v288c0 26.5 21.5 48 48 48h416c26.5 0 48-21.5 48-48V112c0-26.5-21.5-48-48-48zm-6 336H54c-3.3 0-6-2.7-6-6V118c0-3.3 2.7-6 6-6h404c3.3 0 6 2.7 6 6v276c0 3.3-2.7 6-6 6zm-211.1-85.7c1.7 2.4 1.5 5.6-.5 7.7-53.6 56.8-172.8 32.1-172.8-67.9 0-97.3 121.7-119.5 172.5-70.1 2.1 2 2.5 3.2 1 5.7l-17.5 30.5c-1.9 3.1-6.2 4-9.1 1.7-40.8-32-94.6-14.9-94.6 31.2 0 48 51 70.5 92.2 32.6 2.8-2.5 7.1-2.1 9.2.9l19.6 27.7zm190.4 0c1.7 2.4 1.5 5.6-.5 7.7-53.6 56.9-172.8 32.1-172.8-67.9 0-97.3 121.7-119.5 172.5-70.1 2.1 2 2.5 3.2 1 5.7L420 220.2c-1.9 3.1-6.2 4-9.1 1.7-40.8-32-94.6-14.9-94.6 31.2 0 48 51 70.5 92.2 32.6 2.8-2.5 7.1-2.1 9.2.9l19.6 27.7z"],
	"comment": [512, 512, [], "f075", "M256 32C114.6 32 0 125.1 0 240c0 47.6 19.9 91.2 52.9 126.3C38 405.7 7 439.1 6.5 439.5c-6.6 7-8.4 17.2-4.6 26S14.4 480 24 480c61.5 0 110-25.7 139.1-46.3C192 442.8 223.2 448 256 448c141.4 0 256-93.1 256-208S397.4 32 256 32zm0 368c-26.7 0-53.1-4.1-78.4-12.1l-22.7-7.2-19.5 13.8c-14.3 10.1-33.9 21.4-57.5 29 7.3-12.1 14.4-25.7 19.9-40.2l10.6-28.1-20.6-21.8C69.7 314.1 48 282.2 48 240c0-88.2 93.3-160 208-160s208 71.8 208 160-93.3 160-208 160z"],
	"comment-alt": [512, 512, [], "f27a", "M448 0H64C28.7 0 0 28.7 0 64v288c0 35.3 28.7 64 64 64h96v84c0 7.1 5.8 12 12 12 2.4 0 4.9-.7 7.1-2.4L304 416h144c35.3 0 64-28.7 64-64V64c0-35.3-28.7-64-64-64zm16 352c0 8.8-7.2 16-16 16H288l-12.8 9.6L208 428v-60H64c-8.8 0-16-7.2-16-16V64c0-8.8 7.2-16 16-16h384c8.8 0 16 7.2 16 16v288z"],
	"comment-dots": [512, 512, [], "f4ad", "M144 208c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32zm112 0c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32zm112 0c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32zM256 32C114.6 32 0 125.1 0 240c0 47.6 19.9 91.2 52.9 126.3C38 405.7 7 439.1 6.5 439.5c-6.6 7-8.4 17.2-4.6 26S14.4 480 24 480c61.5 0 110-25.7 139.1-46.3C192 442.8 223.2 448 256 448c141.4 0 256-93.1 256-208S397.4 32 256 32zm0 368c-26.7 0-53.1-4.1-78.4-12.1l-22.7-7.2-19.5 13.8c-14.3 10.1-33.9 21.4-57.5 29 7.3-12.1 14.4-25.7 19.9-40.2l10.6-28.1-20.6-21.8C69.7 314.1 48 282.2 48 240c0-88.2 93.3-160 208-160s208 71.8 208 160-93.3 160-208 160z"],
	"comments": [576, 512, [], "f086", "M532 386.2c27.5-27.1 44-61.1 44-98.2 0-80-76.5-146.1-176.2-157.9C368.3 72.5 294.3 32 208 32 93.1 32 0 103.6 0 192c0 37 16.5 71 44 98.2-15.3 30.7-37.3 54.5-37.7 54.9-6.3 6.7-8.1 16.5-4.4 25 3.6 8.5 12 14 21.2 14 53.5 0 96.7-20.2 125.2-38.8 9.2 2.1 18.7 3.7 28.4 4.9C208.1 407.6 281.8 448 368 448c20.8 0 40.8-2.4 59.8-6.8C456.3 459.7 499.4 480 553 480c9.2 0 17.5-5.5 21.2-14 3.6-8.5 1.9-18.3-4.4-25-.4-.3-22.5-24.1-37.8-54.8zm-392.8-92.3L122.1 305c-14.1 9.1-28.5 16.3-43.1 21.4 2.7-4.7 5.4-9.7 8-14.8l15.5-31.1L77.7 256C64.2 242.6 48 220.7 48 192c0-60.7 73.3-112 160-112s160 51.3 160 112-73.3 112-160 112c-16.5 0-33-1.9-49-5.6l-19.8-4.5zM498.3 352l-24.7 24.4 15.5 31.1c2.6 5.1 5.3 10.1 8 14.8-14.6-5.1-29-12.3-43.1-21.4l-17.1-11.1-19.9 4.6c-16 3.7-32.5 5.6-49 5.6-54 0-102.2-20.1-131.3-49.7C338 339.5 416 272.9 416 192c0-3.4-.4-6.7-.7-10C479.7 196.5 528 238.8 528 288c0 28.7-16.2 50.6-29.7 64z"],
	"compass": [496, 512, [], "f14e", "M347.94 129.86L203.6 195.83a31.938 31.938 0 0 0-15.77 15.77l-65.97 144.34c-7.61 16.65 9.54 33.81 26.2 26.2l144.34-65.97a31.938 31.938 0 0 0 15.77-15.77l65.97-144.34c7.61-16.66-9.54-33.81-26.2-26.2zm-77.36 148.72c-12.47 12.47-32.69 12.47-45.16 0-12.47-12.47-12.47-32.69 0-45.16 12.47-12.47 32.69-12.47 45.16 0 12.47 12.47 12.47 32.69 0 45.16zM248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm0 448c-110.28 0-200-89.72-200-200S137.72 56 248 56s200 89.72 200 200-89.72 200-200 200z"],
	"copy": [448, 512, [], "f0c5", "M433.941 65.941l-51.882-51.882A48 48 0 0 0 348.118 0H176c-26.51 0-48 21.49-48 48v48H48c-26.51 0-48 21.49-48 48v320c0 26.51 21.49 48 48 48h224c26.51 0 48-21.49 48-48v-48h80c26.51 0 48-21.49 48-48V99.882a48 48 0 0 0-14.059-33.941zM266 464H54a6 6 0 0 1-6-6V150a6 6 0 0 1 6-6h74v224c0 26.51 21.49 48 48 48h96v42a6 6 0 0 1-6 6zm128-96H182a6 6 0 0 1-6-6V54a6 6 0 0 1 6-6h106v88c0 13.255 10.745 24 24 24h88v202a6 6 0 0 1-6 6zm6-256h-64V48h9.632c1.591 0 3.117.632 4.243 1.757l48.368 48.368a6 6 0 0 1 1.757 4.243V112z"],
	"copyright": [512, 512, [], "f1f9", "M256 8C119.033 8 8 119.033 8 256s111.033 248 248 248 248-111.033 248-248S392.967 8 256 8zm0 448c-110.532 0-200-89.451-200-200 0-110.531 89.451-200 200-200 110.532 0 200 89.451 200 200 0 110.532-89.451 200-200 200zm107.351-101.064c-9.614 9.712-45.53 41.396-104.065 41.396-82.43 0-140.484-61.425-140.484-141.567 0-79.152 60.275-139.401 139.762-139.401 55.531 0 88.738 26.62 97.593 34.779a11.965 11.965 0 0 1 1.936 15.322l-18.155 28.113c-3.841 5.95-11.966 7.282-17.499 2.921-8.595-6.776-31.814-22.538-61.708-22.538-48.303 0-77.916 35.33-77.916 80.082 0 41.589 26.888 83.692 78.277 83.692 32.657 0 56.843-19.039 65.726-27.225 5.27-4.857 13.596-4.039 17.82 1.738l19.865 27.17a11.947 11.947 0 0 1-1.152 15.518z"],
	"credit-card": [576, 512, [], "f09d", "M527.9 32H48.1C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48.1 48h479.8c26.6 0 48.1-21.5 48.1-48V80c0-26.5-21.5-48-48.1-48zM54.1 80h467.8c3.3 0 6 2.7 6 6v42H48.1V86c0-3.3 2.7-6 6-6zm467.8 352H54.1c-3.3 0-6-2.7-6-6V256h479.8v170c0 3.3-2.7 6-6 6zM192 332v40c0 6.6-5.4 12-12 12h-72c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h72c6.6 0 12 5.4 12 12zm192 0v40c0 6.6-5.4 12-12 12H236c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h136c6.6 0 12 5.4 12 12z"],
	"dizzy": [496, 512, [], "f567", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm-33.8-217.9c7.8-7.8 7.8-20.5 0-28.3L196.3 192l17.9-17.9c7.8-7.8 7.8-20.5 0-28.3-7.8-7.8-20.5-7.8-28.3 0L168 163.7l-17.8-17.8c-7.8-7.8-20.5-7.8-28.3 0-7.8 7.8-7.8 20.5 0 28.3l17.9 17.9-17.9 17.9c-7.8 7.8-7.8 20.5 0 28.3 7.8 7.8 20.5 7.8 28.3 0l17.8-17.8 17.8 17.8c7.9 7.7 20.5 7.7 28.4-.2zm160-92.2c-7.8-7.8-20.5-7.8-28.3 0L328 163.7l-17.8-17.8c-7.8-7.8-20.5-7.8-28.3 0-7.8 7.8-7.8 20.5 0 28.3l17.9 17.9-17.9 17.9c-7.8 7.8-7.8 20.5 0 28.3 7.8 7.8 20.5 7.8 28.3 0l17.8-17.8 17.8 17.8c7.8 7.8 20.5 7.8 28.3 0 7.8-7.8 7.8-20.5 0-28.3l-17.8-18 17.9-17.9c7.7-7.8 7.7-20.4 0-28.2zM248 272c-35.3 0-64 28.7-64 64s28.7 64 64 64 64-28.7 64-64-28.7-64-64-64z"],
	"dot-circle": [512, 512, [], "f192", "M256 56c110.532 0 200 89.451 200 200 0 110.532-89.451 200-200 200-110.532 0-200-89.451-200-200 0-110.532 89.451-200 200-200m0-48C119.033 8 8 119.033 8 256s111.033 248 248 248 248-111.033 248-248S392.967 8 256 8zm0 168c-44.183 0-80 35.817-80 80s35.817 80 80 80 80-35.817 80-80-35.817-80-80-80z"],
	"edit": [576, 512, [], "f044", "M402.3 344.9l32-32c5-5 13.7-1.5 13.7 5.7V464c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V112c0-26.5 21.5-48 48-48h273.5c7.1 0 10.7 8.6 5.7 13.7l-32 32c-1.5 1.5-3.5 2.3-5.7 2.3H48v352h352V350.5c0-2.1.8-4.1 2.3-5.6zm156.6-201.8L296.3 405.7l-90.4 10c-26.2 2.9-48.5-19.2-45.6-45.6l10-90.4L432.9 17.1c22.9-22.9 59.9-22.9 82.7 0l43.2 43.2c22.9 22.9 22.9 60 .1 82.8zM460.1 174L402 115.9 216.2 301.8l-7.3 65.3 65.3-7.3L460.1 174zm64.8-79.7l-43.2-43.2c-4.1-4.1-10.8-4.1-14.8 0L436 82l58.1 58.1 30.9-30.9c4-4.2 4-10.8-.1-14.9z"],
	"envelope": [512, 512, [], "f0e0", "M464 64H48C21.49 64 0 85.49 0 112v288c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V112c0-26.51-21.49-48-48-48zm0 48v40.805c-22.422 18.259-58.168 46.651-134.587 106.49-16.841 13.247-50.201 45.072-73.413 44.701-23.208.375-56.579-31.459-73.413-44.701C106.18 199.465 70.425 171.067 48 152.805V112h416zM48 400V214.398c22.914 18.251 55.409 43.862 104.938 82.646 21.857 17.205 60.134 55.186 103.062 54.955 42.717.231 80.509-37.199 103.053-54.947 49.528-38.783 82.032-64.401 104.947-82.653V400H48z"],
	"envelope-open": [512, 512, [], "f2b6", "M494.586 164.516c-4.697-3.883-111.723-89.95-135.251-108.657C337.231 38.191 299.437 0 256 0c-43.205 0-80.636 37.717-103.335 55.859-24.463 19.45-131.07 105.195-135.15 108.549A48.004 48.004 0 0 0 0 201.485V464c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V201.509a48 48 0 0 0-17.414-36.993zM464 458a6 6 0 0 1-6 6H54a6 6 0 0 1-6-6V204.347c0-1.813.816-3.526 2.226-4.665 15.87-12.814 108.793-87.554 132.364-106.293C200.755 78.88 232.398 48 256 48c23.693 0 55.857 31.369 73.41 45.389 23.573 18.741 116.503 93.493 132.366 106.316a5.99 5.99 0 0 1 2.224 4.663V458zm-31.991-187.704c4.249 5.159 3.465 12.795-1.745 16.981-28.975 23.283-59.274 47.597-70.929 56.863C336.636 362.283 299.205 400 256 400c-43.452 0-81.287-38.237-103.335-55.86-11.279-8.967-41.744-33.413-70.927-56.865-5.21-4.187-5.993-11.822-1.745-16.981l15.258-18.528c4.178-5.073 11.657-5.843 16.779-1.726 28.618 23.001 58.566 47.035 70.56 56.571C200.143 320.631 232.307 352 256 352c23.602 0 55.246-30.88 73.41-45.389 11.994-9.535 41.944-33.57 70.563-56.568 5.122-4.116 12.601-3.346 16.778 1.727l15.258 18.526z"],
	"eye": [576, 512, [], "f06e", "M288 144a110.94 110.94 0 0 0-31.24 5 55.4 55.4 0 0 1 7.24 27 56 56 0 0 1-56 56 55.4 55.4 0 0 1-27-7.24A111.71 111.71 0 1 0 288 144zm284.52 97.4C518.29 135.59 410.93 64 288 64S57.68 135.64 3.48 241.41a32.35 32.35 0 0 0 0 29.19C57.71 376.41 165.07 448 288 448s230.32-71.64 284.52-177.41a32.35 32.35 0 0 0 0-29.19zM288 400c-98.65 0-189.09-55-237.93-144C98.91 167 189.34 112 288 112s189.09 55 237.93 144C477.1 345 386.66 400 288 400z"],
	"eye-slash": [640, 512, [], "f070", "M634 471L36 3.51A16 16 0 0 0 13.51 6l-10 12.49A16 16 0 0 0 6 41l598 467.49a16 16 0 0 0 22.49-2.49l10-12.49A16 16 0 0 0 634 471zM296.79 146.47l134.79 105.38C429.36 191.91 380.48 144 320 144a112.26 112.26 0 0 0-23.21 2.47zm46.42 219.07L208.42 260.16C210.65 320.09 259.53 368 320 368a113 113 0 0 0 23.21-2.46zM320 112c98.65 0 189.09 55 237.93 144a285.53 285.53 0 0 1-44 60.2l37.74 29.5a333.7 333.7 0 0 0 52.9-75.11 32.35 32.35 0 0 0 0-29.19C550.29 135.59 442.93 64 320 64c-36.7 0-71.71 7-104.63 18.81l46.41 36.29c18.94-4.3 38.34-7.1 58.22-7.1zm0 288c-98.65 0-189.08-55-237.93-144a285.47 285.47 0 0 1 44.05-60.19l-37.74-29.5a333.6 333.6 0 0 0-52.89 75.1 32.35 32.35 0 0 0 0 29.19C89.72 376.41 197.08 448 320 448c36.7 0 71.71-7.05 104.63-18.81l-46.41-36.28C359.28 397.2 339.89 400 320 400z"],
	"file": [384, 512, [], "f15b", "M369.9 97.9L286 14C277 5 264.8-.1 252.1-.1H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V131.9c0-12.7-5.1-25-14.1-34zM332.1 128H256V51.9l76.1 76.1zM48 464V48h160v104c0 13.3 10.7 24 24 24h104v288H48z"],
	"file-alt": [384, 512, [], "f15c", "M288 248v28c0 6.6-5.4 12-12 12H108c-6.6 0-12-5.4-12-12v-28c0-6.6 5.4-12 12-12h168c6.6 0 12 5.4 12 12zm-12 72H108c-6.6 0-12 5.4-12 12v28c0 6.6 5.4 12 12 12h168c6.6 0 12-5.4 12-12v-28c0-6.6-5.4-12-12-12zm108-188.1V464c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V48C0 21.5 21.5 0 48 0h204.1C264.8 0 277 5.1 286 14.1L369.9 98c9 8.9 14.1 21.2 14.1 33.9zm-128-80V128h76.1L256 51.9zM336 464V176H232c-13.3 0-24-10.7-24-24V48H48v416h288z"],
	"file-archive": [384, 512, [], "f1c6", "M128.3 160v32h32v-32zm64-96h-32v32h32zm-64 32v32h32V96zm64 32h-32v32h32zm177.6-30.1L286 14C277 5 264.8-.1 252.1-.1H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V131.9c0-12.7-5.1-25-14.1-34zM256 51.9l76.1 76.1H256zM336 464H48V48h79.7v16h32V48H208v104c0 13.3 10.7 24 24 24h104zM194.2 265.7c-1.1-5.6-6-9.7-11.8-9.7h-22.1v-32h-32v32l-19.7 97.1C102 385.6 126.8 416 160 416c33.1 0 57.9-30.2 51.5-62.6zm-33.9 124.4c-17.9 0-32.4-12.1-32.4-27s14.5-27 32.4-27 32.4 12.1 32.4 27-14.5 27-32.4 27zm32-198.1h-32v32h32z"],
	"file-audio": [384, 512, [], "f1c7", "M369.941 97.941l-83.882-83.882A48 48 0 0 0 252.118 0H48C21.49 0 0 21.49 0 48v416c0 26.51 21.49 48 48 48h288c26.51 0 48-21.49 48-48V131.882a48 48 0 0 0-14.059-33.941zM332.118 128H256V51.882L332.118 128zM48 464V48h160v104c0 13.255 10.745 24 24 24h104v288H48zm144-76.024c0 10.691-12.926 16.045-20.485 8.485L136 360.486h-28c-6.627 0-12-5.373-12-12v-56c0-6.627 5.373-12 12-12h28l35.515-36.947c7.56-7.56 20.485-2.206 20.485 8.485v135.952zm41.201-47.13c9.051-9.297 9.06-24.133.001-33.439-22.149-22.752 12.235-56.246 34.395-33.481 27.198 27.94 27.212 72.444.001 100.401-21.793 22.386-56.947-10.315-34.397-33.481z"],
	"file-code": [384, 512, [], "f1c9", "M149.9 349.1l-.2-.2-32.8-28.9 32.8-28.9c3.6-3.2 4-8.8.8-12.4l-.2-.2-17.4-18.6c-3.4-3.6-9-3.7-12.4-.4l-57.7 54.1c-3.7 3.5-3.7 9.4 0 12.8l57.7 54.1c1.6 1.5 3.8 2.4 6 2.4 2.4 0 4.8-1 6.4-2.8l17.4-18.6c3.3-3.5 3.1-9.1-.4-12.4zm220-251.2L286 14C277 5 264.8-.1 252.1-.1H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V131.9c0-12.7-5.1-25-14.1-34zM256 51.9l76.1 76.1H256zM336 464H48V48h160v104c0 13.3 10.7 24 24 24h104zM209.6 214c-4.7-1.4-9.5 1.3-10.9 6L144 408.1c-1.4 4.7 1.3 9.6 6 10.9l24.4 7.1c4.7 1.4 9.6-1.4 10.9-6L240 231.9c1.4-4.7-1.3-9.6-6-10.9zm24.5 76.9l.2.2 32.8 28.9-32.8 28.9c-3.6 3.2-4 8.8-.8 12.4l.2.2 17.4 18.6c3.3 3.5 8.9 3.7 12.4.4l57.7-54.1c3.7-3.5 3.7-9.4 0-12.8l-57.7-54.1c-3.5-3.3-9.1-3.2-12.4.4l-17.4 18.6c-3.3 3.5-3.1 9.1.4 12.4z"],
	"file-excel": [384, 512, [], "f1c3", "M369.9 97.9L286 14C277 5 264.8-.1 252.1-.1H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V131.9c0-12.7-5.1-25-14.1-34zM332.1 128H256V51.9l76.1 76.1zM48 464V48h160v104c0 13.3 10.7 24 24 24h104v288H48zm212-240h-28.8c-4.4 0-8.4 2.4-10.5 6.3-18 33.1-22.2 42.4-28.6 57.7-13.9-29.1-6.9-17.3-28.6-57.7-2.1-3.9-6.2-6.3-10.6-6.3H124c-9.3 0-15 10-10.4 18l46.3 78-46.3 78c-4.7 8 1.1 18 10.4 18h28.9c4.4 0 8.4-2.4 10.5-6.3 21.7-40 23-45 28.6-57.7 14.9 30.2 5.9 15.9 28.6 57.7 2.1 3.9 6.2 6.3 10.6 6.3H260c9.3 0 15-10 10.4-18L224 320c.7-1.1 30.3-50.5 46.3-78 4.7-8-1.1-18-10.3-18z"],
	"file-image": [384, 512, [], "f1c5", "M369.9 97.9L286 14C277 5 264.8-.1 252.1-.1H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V131.9c0-12.7-5.1-25-14.1-34zM332.1 128H256V51.9l76.1 76.1zM48 464V48h160v104c0 13.3 10.7 24 24 24h104v288H48zm32-48h224V288l-23.5-23.5c-4.7-4.7-12.3-4.7-17 0L176 352l-39.5-39.5c-4.7-4.7-12.3-4.7-17 0L80 352v64zm48-240c-26.5 0-48 21.5-48 48s21.5 48 48 48 48-21.5 48-48-21.5-48-48-48z"],
	"file-pdf": [384, 512, [], "f1c1", "M369.9 97.9L286 14C277 5 264.8-.1 252.1-.1H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V131.9c0-12.7-5.1-25-14.1-34zM332.1 128H256V51.9l76.1 76.1zM48 464V48h160v104c0 13.3 10.7 24 24 24h104v288H48zm250.2-143.7c-12.2-12-47-8.7-64.4-6.5-17.2-10.5-28.7-25-36.8-46.3 3.9-16.1 10.1-40.6 5.4-56-4.2-26.2-37.8-23.6-42.6-5.9-4.4 16.1-.4 38.5 7 67.1-10 23.9-24.9 56-35.4 74.4-20 10.3-47 26.2-51 46.2-3.3 15.8 26 55.2 76.1-31.2 22.4-7.4 46.8-16.5 68.4-20.1 18.9 10.2 41 17 55.8 17 25.5 0 28-28.2 17.5-38.7zm-198.1 77.8c5.1-13.7 24.5-29.5 30.4-35-19 30.3-30.4 35.7-30.4 35zm81.6-190.6c7.4 0 6.7 32.1 1.8 40.8-4.4-13.9-4.3-40.8-1.8-40.8zm-24.4 136.6c9.7-16.9 18-37 24.7-54.7 8.3 15.1 18.9 27.2 30.1 35.5-20.8 4.3-38.9 13.1-54.8 19.2zm131.6-5s-5 6-37.3-7.8c35.1-2.6 40.9 5.4 37.3 7.8z"],
	"file-powerpoint": [384, 512, [], "f1c4", "M369.9 97.9L286 14C277 5 264.8-.1 252.1-.1H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V131.9c0-12.7-5.1-25-14.1-34zM332.1 128H256V51.9l76.1 76.1zM48 464V48h160v104c0 13.3 10.7 24 24 24h104v288H48zm72-60V236c0-6.6 5.4-12 12-12h69.2c36.7 0 62.8 27 62.8 66.3 0 74.3-68.7 66.5-95.5 66.5V404c0 6.6-5.4 12-12 12H132c-6.6 0-12-5.4-12-12zm48.5-87.4h23c7.9 0 13.9-2.4 18.1-7.2 8.5-9.8 8.4-28.5.1-37.8-4.1-4.6-9.9-7-17.4-7h-23.9v52z"],
	"file-video": [384, 512, [], "f1c8", "M369.941 97.941l-83.882-83.882A48 48 0 0 0 252.118 0H48C21.49 0 0 21.49 0 48v416c0 26.51 21.49 48 48 48h288c26.51 0 48-21.49 48-48V131.882a48 48 0 0 0-14.059-33.941zM332.118 128H256V51.882L332.118 128zM48 464V48h160v104c0 13.255 10.745 24 24 24h104v288H48zm228.687-211.303L224 305.374V268c0-11.046-8.954-20-20-20H100c-11.046 0-20 8.954-20 20v104c0 11.046 8.954 20 20 20h104c11.046 0 20-8.954 20-20v-37.374l52.687 52.674C286.704 397.318 304 390.28 304 375.986V264.011c0-14.311-17.309-21.319-27.313-11.314z"],
	"file-word": [384, 512, [], "f1c2", "M369.9 97.9L286 14C277 5 264.8-.1 252.1-.1H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V131.9c0-12.7-5.1-25-14.1-34zM332.1 128H256V51.9l76.1 76.1zM48 464V48h160v104c0 13.3 10.7 24 24 24h104v288H48zm220.1-208c-5.7 0-10.6 4-11.7 9.5-20.6 97.7-20.4 95.4-21 103.5-.2-1.2-.4-2.6-.7-4.3-.8-5.1.3.2-23.6-99.5-1.3-5.4-6.1-9.2-11.7-9.2h-13.3c-5.5 0-10.3 3.8-11.7 9.1-24.4 99-24 96.2-24.8 103.7-.1-1.1-.2-2.5-.5-4.2-.7-5.2-14.1-73.3-19.1-99-1.1-5.6-6-9.7-11.8-9.7h-16.8c-7.8 0-13.5 7.3-11.7 14.8 8 32.6 26.7 109.5 33.2 136 1.3 5.4 6.1 9.1 11.7 9.1h25.2c5.5 0 10.3-3.7 11.6-9.1l17.9-71.4c1.5-6.2 2.5-12 3-17.3l2.9 17.3c.1.4 12.6 50.5 17.9 71.4 1.3 5.3 6.1 9.1 11.6 9.1h24.7c5.5 0 10.3-3.7 11.6-9.1 20.8-81.9 30.2-119 34.5-136 1.9-7.6-3.8-14.9-11.6-14.9h-15.8z"],
	"flag": [512, 512, [], "f024", "M336.174 80c-49.132 0-93.305-32-161.913-32-31.301 0-58.303 6.482-80.721 15.168a48.04 48.04 0 0 0 2.142-20.727C93.067 19.575 74.167 1.594 51.201.104 23.242-1.71 0 20.431 0 48c0 17.764 9.657 33.262 24 41.562V496c0 8.837 7.163 16 16 16h16c8.837 0 16-7.163 16-16v-83.443C109.869 395.28 143.259 384 199.826 384c49.132 0 93.305 32 161.913 32 58.479 0 101.972-22.617 128.548-39.981C503.846 367.161 512 352.051 512 335.855V95.937c0-34.459-35.264-57.768-66.904-44.117C409.193 67.309 371.641 80 336.174 80zM464 336c-21.783 15.412-60.824 32-102.261 32-59.945 0-102.002-32-161.913-32-43.361 0-96.379 9.403-127.826 24V128c21.784-15.412 60.824-32 102.261-32 59.945 0 102.002 32 161.913 32 43.271 0 96.32-17.366 127.826-32v240z"],
	"flushed": [496, 512, [], "f579", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm96-312c-44.2 0-80 35.8-80 80s35.8 80 80 80 80-35.8 80-80-35.8-80-80-80zm0 128c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm0-72c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zm-112 24c0-44.2-35.8-80-80-80s-80 35.8-80 80 35.8 80 80 80 80-35.8 80-80zm-80 48c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm0-72c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zm160 144H184c-13.2 0-24 10.8-24 24s10.8 24 24 24h128c13.2 0 24-10.8 24-24s-10.8-24-24-24z"],
	"folder": [512, 512, [], "f07b", "M464 128H272l-54.63-54.63c-6-6-14.14-9.37-22.63-9.37H48C21.49 64 0 85.49 0 112v288c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V176c0-26.51-21.49-48-48-48zm0 272H48V112h140.12l54.63 54.63c6 6 14.14 9.37 22.63 9.37H464v224z"],
	"folder-open": [576, 512, [], "f07c", "M527.9 224H480v-48c0-26.5-21.5-48-48-48H272l-64-64H48C21.5 64 0 85.5 0 112v288c0 26.5 21.5 48 48 48h400c16.5 0 31.9-8.5 40.7-22.6l79.9-128c20-31.9-3-73.4-40.7-73.4zM48 118c0-3.3 2.7-6 6-6h134.1l64 64H426c3.3 0 6 2.7 6 6v42H152c-16.8 0-32.4 8.8-41.1 23.2L48 351.4zm400 282H72l77.2-128H528z"],
	"font-awesome-logo-full": [3992, 512, ["Font Awesome"], "f4e6", "M454.6 0H57.4C25.9 0 0 25.9 0 57.4v397.3C0 486.1 25.9 512 57.4 512h397.3c31.4 0 57.4-25.9 57.4-57.4V57.4C512 25.9 486.1 0 454.6 0zm-58.9 324.9c0 4.8-4.1 6.9-8.9 8.9-19.2 8.1-39.7 15.7-61.5 15.7-40.5 0-68.7-44.8-163.2 2.5v51.8c0 30.3-45.7 30.2-45.7 0v-250c-9-7-15-17.9-15-30.3 0-21 17.1-38.2 38.2-38.2 21 0 38.2 17.1 38.2 38.2 0 12.2-5.8 23.2-14.9 30.2v21c37.1-12 65.5-34.4 146.1-3.4 26.6 11.4 68.7-15.7 76.5-15.7 5.5 0 10.3 4.1 10.3 8.9v160.4zm432.9-174.2h-137v70.1H825c39.8 0 40.4 62.2 0 62.2H691.6v105.6c0 45.5-70.7 46.4-70.7 0V128.3c0-22 18-39.8 39.8-39.8h167.8c39.6 0 40.5 62.2.1 62.2zm191.1 23.4c-169.3 0-169.1 252.4 0 252.4 169.9 0 169.9-252.4 0-252.4zm0 196.1c-81.6 0-82.1-139.8 0-139.8 82.5 0 82.4 139.8 0 139.8zm372.4 53.4c-17.5 0-31.4-13.9-31.4-31.4v-117c0-62.4-72.6-52.5-99.1-16.4v133.4c0 41.5-63.3 41.8-63.3 0V208c0-40 63.1-41.6 63.1 0v3.4c43.3-51.6 162.4-60.4 162.4 39.3v141.5c.3 30.4-31.5 31.4-31.7 31.4zm179.7 2.9c-44.3 0-68.3-22.9-68.3-65.8V235.2H1488c-35.6 0-36.7-55.3 0-55.3h15.5v-37.3c0-41.3 63.8-42.1 63.8 0v37.5h24.9c35.4 0 35.7 55.3 0 55.3h-24.9v108.5c0 29.6 26.1 26.3 27.4 26.3 31.4 0 52.6 56.3-22.9 56.3zM1992 123c-19.5-50.2-95.5-50-114.5 0-107.3 275.7-99.5 252.7-99.5 262.8 0 42.8 58.3 51.2 72.1 14.4l13.5-35.9H2006l13 35.9c14.2 37.7 72.1 27.2 72.1-14.4 0-10.1 5.3 6.8-99.1-262.8zm-108.9 179.1l51.7-142.9 51.8 142.9h-103.5zm591.3-85.6l-53.7 176.3c-12.4 41.2-72 41-84 0l-42.3-135.9-42.3 135.9c-12.4 40.9-72 41.2-84.5 0l-54.2-176.3c-12.5-39.4 49.8-56.1 60.2-16.9L2213 342l45.3-139.5c10.9-32.7 59.6-34.7 71.2 0l45.3 139.5 39.3-142.4c10.3-38.3 72.6-23.8 60.3 16.9zm275.4 75.1c0-42.4-33.9-117.5-119.5-117.5-73.2 0-124.4 56.3-124.4 126 0 77.2 55.3 126.4 128.5 126.4 31.7 0 93-11.5 93-39.8 0-18.3-21.1-31.5-39.3-22.4-49.4 26.2-109 8.4-115.9-43.8h148.3c16.3 0 29.3-13.4 29.3-28.9zM2571 277.7c9.5-73.4 113.9-68.6 118.6 0H2571zm316.7 148.8c-31.4 0-81.6-10.5-96.6-31.9-12.4-17 2.5-39.8 21.8-39.8 16.3 0 36.8 22.9 77.7 22.9 27.4 0 40.4-11 40.4-25.8 0-39.8-142.9-7.4-142.9-102 0-40.4 35.3-75.7 98.6-75.7 31.4 0 74.1 9.9 87.6 29.4 10.8 14.8-1.4 36.2-20.9 36.2-15.1 0-26.7-17.3-66.2-17.3-22.9 0-37.8 10.5-37.8 23.8 0 35.9 142.4 6 142.4 103.1-.1 43.7-37.4 77.1-104.1 77.1zm266.8-252.4c-169.3 0-169.1 252.4 0 252.4 170.1 0 169.6-252.4 0-252.4zm0 196.1c-81.8 0-82-139.8 0-139.8 82.5 0 82.4 139.8 0 139.8zm476.9 22V268.7c0-53.8-61.4-45.8-85.7-10.5v134c0 41.3-63.8 42.1-63.8 0V268.7c0-52.1-59.5-47.4-85.7-10.1v133.6c0 41.5-63.3 41.8-63.3 0V208c0-40 63.1-41.6 63.1 0v3.4c9.9-14.4 41.8-37.3 78.6-37.3 35.3 0 57.7 16.4 66.7 43.8 13.9-21.8 45.8-43.8 82.6-43.8 44.3 0 70.7 23.4 70.7 72.7v145.3c.5 17.3-13.5 31.4-31.9 31.4 3.5.1-31.3 1.1-31.3-31.3zM3992 291.6c0-42.4-32.4-117.5-117.9-117.5-73.2 0-127.5 56.3-127.5 126 0 77.2 58.3 126.4 131.6 126.4 31.7 0 91.5-11.5 91.5-39.8 0-18.3-21.1-31.5-39.3-22.4-49.4 26.2-110.5 8.4-117.5-43.8h149.8c16.3 0 29.1-13.4 29.3-28.9zm-180.5-13.9c9.7-74.4 115.9-68.3 120.1 0h-120.1z"],
	"frown": [496, 512, [], "f119", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm-80-216c17.7 0 32-14.3 32-32s-14.3-32-32-32-32 14.3-32 32 14.3 32 32 32zm160-64c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32zm-80 128c-40.2 0-78 17.7-103.8 48.6-8.5 10.2-7.1 25.3 3.1 33.8 10.2 8.4 25.3 7.1 33.8-3.1 16.6-19.9 41-31.4 66.9-31.4s50.3 11.4 66.9 31.4c8.1 9.7 23.1 11.9 33.8 3.1 10.2-8.5 11.5-23.6 3.1-33.8C326 321.7 288.2 304 248 304z"],
	"frown-open": [496, 512, [], "f57a", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm-48-248c0-17.7-14.3-32-32-32s-32 14.3-32 32 14.3 32 32 32 32-14.3 32-32zm128-32c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32zm-80 112c-35.6 0-88.8 21.3-95.8 61.2-2 11.8 9 21.5 20.5 18.1 31.2-9.6 59.4-15.3 75.3-15.3s44.1 5.7 75.3 15.3c11.4 3.5 22.5-6.3 20.5-18.1-7-39.9-60.2-61.2-95.8-61.2z"],
	"futbol": [496, 512, [], "f1e3", "M483.8 179.4C449.8 74.6 352.6 8 248.1 8c-25.4 0-51.2 3.9-76.7 12.2C41.2 62.5-30.1 202.4 12.2 332.6 46.2 437.4 143.4 504 247.9 504c25.4 0 51.2-3.9 76.7-12.2 130.2-42.3 201.5-182.2 159.2-312.4zm-74.5 193.7l-52.2 6.4-43.7-60.9 24.4-75.2 71.1-22.1 38.9 36.4c-.2 30.7-7.4 61.1-21.7 89.2-4.7 9.3-10.7 17.8-16.8 26.2zm0-235.4l-10.4 53.1-70.7 22-64.2-46.5V92.5l47.4-26.2c39.2 13 73.4 38 97.9 71.4zM184.9 66.4L232 92.5v73.8l-64.2 46.5-70.6-22-10.1-52.5c24.3-33.4 57.9-58.6 97.8-71.9zM139 379.5L85.9 373c-14.4-20.1-37.3-59.6-37.8-115.3l39-36.4 71.1 22.2 24.3 74.3-43.5 61.7zm48.2 67l-22.4-48.1 43.6-61.7H287l44.3 61.7-22.4 48.1c-6.2 1.8-57.6 20.4-121.7 0z"],
	"gem": [576, 512, [], "f3a5", "M464 0H112c-4 0-7.8 2-10 5.4L2 152.6c-2.9 4.4-2.6 10.2.7 14.2l276 340.8c4.8 5.9 13.8 5.9 18.6 0l276-340.8c3.3-4.1 3.6-9.8.7-14.2L474.1 5.4C471.8 2 468.1 0 464 0zm-19.3 48l63.3 96h-68.4l-51.7-96h56.8zm-202.1 0h90.7l51.7 96H191l51.6-96zm-111.3 0h56.8l-51.7 96H68l63.3-96zm-43 144h51.4L208 352 88.3 192zm102.9 0h193.6L288 435.3 191.2 192zM368 352l68.2-160h51.4L368 352z"],
	"grimace": [496, 512, [], "f57f", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm-80-216c17.7 0 32-14.3 32-32s-14.3-32-32-32-32 14.3-32 32 14.3 32 32 32zm160 0c17.7 0 32-14.3 32-32s-14.3-32-32-32-32 14.3-32 32 14.3 32 32 32zm16 16H152c-26.5 0-48 21.5-48 48v32c0 26.5 21.5 48 48 48h192c26.5 0 48-21.5 48-48v-32c0-26.5-21.5-48-48-48zm-168 96h-24c-8.8 0-16-7.2-16-16v-8h40v24zm0-40h-40v-8c0-8.8 7.2-16 16-16h24v24zm64 40h-48v-24h48v24zm0-40h-48v-24h48v24zm64 40h-48v-24h48v24zm0-40h-48v-24h48v24zm56 24c0 8.8-7.2 16-16 16h-24v-24h40v8zm0-24h-40v-24h24c8.8 0 16 7.2 16 16v8z"],
	"grin": [496, 512, [], "f580", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm105.6-151.4c-25.9 8.3-64.4 13.1-105.6 13.1s-79.6-4.8-105.6-13.1c-9.9-3.1-19.4 5.4-17.7 15.3 7.9 47.1 71.3 80 123.3 80s115.3-32.9 123.3-80c1.6-9.8-7.7-18.4-17.7-15.3zM168 240c17.7 0 32-14.3 32-32s-14.3-32-32-32-32 14.3-32 32 14.3 32 32 32zm160 0c17.7 0 32-14.3 32-32s-14.3-32-32-32-32 14.3-32 32 14.3 32 32 32z"],
	"grin-alt": [496, 512, [], "f581", "M200.3 248c12.4-18.7 15.1-37.3 15.7-56-.5-18.7-3.3-37.3-15.7-56-8-12-25.1-11.4-32.7 0-12.4 18.7-15.1 37.3-15.7 56 .5 18.7 3.3 37.3 15.7 56 8.1 12 25.2 11.4 32.7 0zm128 0c12.4-18.7 15.1-37.3 15.7-56-.5-18.7-3.3-37.3-15.7-56-8-12-25.1-11.4-32.7 0-12.4 18.7-15.1 37.3-15.7 56 .5 18.7 3.3 37.3 15.7 56 8.1 12 25.2 11.4 32.7 0zM248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm105.6-151.4c-25.9 8.3-64.4 13.1-105.6 13.1s-79.6-4.8-105.6-13.1c-9.9-3.1-19.4 5.3-17.7 15.3 7.9 47.2 71.3 80 123.3 80s115.3-32.9 123.3-80c1.6-9.8-7.7-18.4-17.7-15.3z"],
	"grin-beam": [496, 512, [], "f582", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm105.6-151.4c-25.9 8.3-64.4 13.1-105.6 13.1s-79.6-4.8-105.6-13.1c-9.8-3.1-19.4 5.3-17.7 15.3 7.9 47.1 71.3 80 123.3 80s115.3-32.9 123.3-80c1.6-9.8-7.7-18.4-17.7-15.3zm-235.9-72.9c3.5 1.1 7.4-.5 9.3-3.7l9.5-17c7.7-13.7 19.2-21.6 31.5-21.6s23.8 7.9 31.5 21.6l9.5 17c2.1 3.7 6.2 4.7 9.3 3.7 3.6-1.1 6-4.5 5.7-8.3-3.3-42.1-32.2-71.4-56-71.4s-52.7 29.3-56 71.4c-.3 3.7 2.1 7.2 5.7 8.3zm160 0c3.5 1.1 7.4-.5 9.3-3.7l9.5-17c7.7-13.7 19.2-21.6 31.5-21.6s23.8 7.9 31.5 21.6l9.5 17c2.1 3.7 6.2 4.7 9.3 3.7 3.6-1.1 6-4.5 5.7-8.3-3.3-42.1-32.2-71.4-56-71.4s-52.7 29.3-56 71.4c-.3 3.7 2.1 7.2 5.7 8.3z"],
	"grin-beam-sweat": [496, 512, [], "f583", "M440 160c29.5 0 53.3-26.3 53.3-58.7 0-25-31.7-75.5-46.2-97.3-3.6-5.3-10.7-5.3-14.2 0-14.5 21.8-46.2 72.3-46.2 97.3 0 32.4 23.8 58.7 53.3 58.7zM248 400c51.9 0 115.3-32.9 123.3-80 1.7-9.9-7.7-18.5-17.7-15.3-25.9 8.3-64.4 13.1-105.6 13.1s-79.6-4.8-105.6-13.1c-9.8-3.1-19.4 5.3-17.7 15.3 8 47.1 71.4 80 123.3 80zm130.3-168.3c3.6-1.1 6-4.5 5.7-8.3-3.3-42.1-32.2-71.4-56-71.4s-52.7 29.3-56 71.4c-.3 3.7 2.1 7.2 5.7 8.3 3.5 1.1 7.4-.5 9.3-3.7l9.5-17c7.7-13.7 19.2-21.6 31.5-21.6s23.8 7.9 31.5 21.6l9.5 17c2.1 3.6 6.2 4.6 9.3 3.7zm105.3-52.9c-24.6 15.7-46 12.9-46.4 12.9 6.9 20.2 10.8 41.8 10.8 64.3 0 110.3-89.7 200-200 200S48 366.3 48 256 137.7 56 248 56c39.8 0 76.8 11.8 108 31.9 1.7-9.5 6.3-24.1 17.2-45.7C336.4 20.6 293.7 8 248 8 111 8 0 119 0 256s111 248 248 248 248-111 248-248c0-27-4.4-52.9-12.4-77.2zM168 189.4c12.3 0 23.8 7.9 31.5 21.6l9.5 17c2.1 3.7 6.2 4.7 9.3 3.7 3.6-1.1 6-4.5 5.7-8.3-3.3-42.1-32.2-71.4-56-71.4s-52.7 29.3-56 71.4c-.3 3.7 2.1 7.2 5.7 8.3 3.5 1.1 7.4-.5 9.3-3.7l9.5-17c7.7-13.8 19.2-21.6 31.5-21.6z"],
	"grin-hearts": [496, 512, [], "f584", "M353.6 304.6c-25.9 8.3-64.4 13.1-105.6 13.1s-79.6-4.8-105.6-13.1c-9.8-3.1-19.4 5.3-17.7 15.3 7.9 47.2 71.3 80 123.3 80s115.3-32.9 123.3-80c1.6-9.8-7.7-18.4-17.7-15.3zm-152.8-48.9c4.5 1.2 9.2-1.5 10.5-6l19.4-69.9c5.6-20.3-7.4-41.1-28.8-44.5-18.6-3-36.4 9.8-41.5 27.9l-2 7.1-7.1-1.9c-18.2-4.7-38.2 4.3-44.9 22-7.7 20.2 3.8 41.9 24.2 47.2l70.2 18.1zm188.8-65.3c-6.7-17.6-26.7-26.7-44.9-22l-7.1 1.9-2-7.1c-5-18.1-22.8-30.9-41.5-27.9-21.4 3.4-34.4 24.2-28.8 44.5l19.4 69.9c1.2 4.5 5.9 7.2 10.5 6l70.2-18.2c20.4-5.3 31.9-26.9 24.2-47.1zM248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200z"],
	"grin-squint": [496, 512, [], "f585", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm105.6-151.4c-25.9 8.3-64.4 13.1-105.6 13.1s-79.6-4.8-105.6-13.1c-9.9-3.1-19.4 5.4-17.7 15.3 7.9 47.1 71.3 80 123.3 80s115.3-32.9 123.3-80c1.6-9.8-7.7-18.4-17.7-15.3zm-234.7-40.8c3.6 4.2 9.9 5.7 15.3 2.5l80-48c3.6-2.2 5.8-6.1 5.8-10.3s-2.2-8.1-5.8-10.3l-80-48c-5.1-3-11.4-1.9-15.3 2.5-3.8 4.5-3.8 11-.1 15.5l33.6 40.3-33.6 40.3c-3.8 4.5-3.7 11.1.1 15.5zm242.9 2.5c5.4 3.2 11.7 1.7 15.3-2.5 3.8-4.5 3.8-11 .1-15.5L343.6 208l33.6-40.3c3.8-4.5 3.7-11-.1-15.5-3.8-4.4-10.2-5.4-15.3-2.5l-80 48c-3.6 2.2-5.8 6.1-5.8 10.3s2.2 8.1 5.8 10.3l80 48z"],
	"grin-squint-tears": [512, 512, [], "f586", "M117.1 384.1c-25.8 3.7-84 13.7-100.9 30.6-21.9 21.9-21.5 57.9.9 80.3s58.3 22.8 80.3.9C114.3 479 124.3 420.8 128 395c.8-6.4-4.6-11.8-10.9-10.9zm-41.2-41.7C40.3 268 53 176.1 114.6 114.6 152.4 76.8 202.6 56 256 56c36.2 0 70.8 9.8 101.2 27.7 3.8-20.3 8-36.1 12-48.3C333.8 17.2 294.9 8 256 8 192.5 8 129.1 32.2 80.6 80.6c-74.1 74.1-91.3 183.4-52 274 12.2-4.1 27.7-8.3 47.3-12.2zm352.3-187.6c45 76.6 34.9 176.9-30.8 242.6-37.8 37.8-88 58.6-141.4 58.6-30.5 0-59.8-7-86.4-19.8-3.9 19.5-8 35-12.2 47.2 31.4 13.6 65 20.6 98.7 20.6 63.5 0 126.9-24.2 175.4-72.6 78.1-78.1 93.1-195.4 45.2-288.6-12.3 4-28.2 8.1-48.5 12zm-33.3-26.9c25.8-3.7 84-13.7 100.9-30.6 21.9-21.9 21.5-57.9-.9-80.3s-58.3-22.8-80.3-.9C397.7 33 387.7 91.2 384 117c-.8 6.4 4.6 11.8 10.9 10.9zm-187 108.3c-3-3-7.2-4.2-11.4-3.2L106 255.7c-5.7 1.4-9.5 6.7-9.1 12.6.5 5.8 5.1 10.5 10.9 11l52.3 4.8 4.8 52.3c.5 5.8 5.2 10.4 11 10.9h.9c5.5 0 10.3-3.7 11.7-9.1l22.6-90.5c1-4.2-.2-8.5-3.2-11.5zm39.7-25.1l90.5-22.6c5.7-1.4 9.5-6.7 9.1-12.6-.5-5.8-5.1-10.5-10.9-11l-52.3-4.8-4.8-52.3c-.5-5.8-5.2-10.4-11-10.9-5.6-.1-11.2 3.4-12.6 9.1L233 196.5c-1 4.1.2 8.4 3.2 11.4 5 5 11.3 3.2 11.4 3.2zm52 88.5c-29.1 29.1-59.7 52.9-83.9 65.4-9.2 4.8-10 17.5-1.7 23.4 38.9 27.7 107 6.2 143.7-30.6S416 253 388.3 214.1c-5.8-8.2-18.5-7.6-23.4 1.7-12.3 24.2-36.2 54.7-65.3 83.8z"],
	"grin-stars": [496, 512, [], "f587", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm105.6-151.4c-25.9 8.3-64.4 13.1-105.6 13.1s-79.6-4.8-105.6-13.1c-9.8-3.1-19.4 5.3-17.7 15.3 7.9 47.2 71.3 80 123.3 80s115.3-32.9 123.3-80c1.6-9.8-7.7-18.4-17.7-15.3zm-227.9-57.5c-1 6.2 5.4 11 11 7.9l31.3-16.3 31.3 16.3c5.6 3.1 12-1.7 11-7.9l-6-34.9 25.4-24.6c4.5-4.5 1.9-12.2-4.3-13.2l-34.9-5-15.5-31.6c-2.9-5.8-11-5.8-13.9 0l-15.5 31.6-34.9 5c-6.2.9-8.9 8.6-4.3 13.2l25.4 24.6-6.1 34.9zm259.7-72.7l-34.9-5-15.5-31.6c-2.9-5.8-11-5.8-13.9 0l-15.5 31.6-34.9 5c-6.2.9-8.9 8.6-4.3 13.2l25.4 24.6-6 34.9c-1 6.2 5.4 11 11 7.9l31.3-16.3 31.3 16.3c5.6 3.1 12-1.7 11-7.9l-6-34.9 25.4-24.6c4.5-4.6 1.8-12.2-4.4-13.2z"],
	"grin-tears": [640, 512, [], "f588", "M117.1 256.1c-25.8 3.7-84 13.7-100.9 30.6-21.9 21.9-21.5 57.9.9 80.3s58.3 22.8 80.3.9C114.3 351 124.3 292.8 128 267c.8-6.4-4.6-11.8-10.9-10.9zm506.7 30.6c-16.9-16.9-75.1-26.9-100.9-30.6-6.3-.9-11.7 4.5-10.8 10.8 3.7 25.8 13.7 84 30.6 100.9 21.9 21.9 57.9 21.5 80.3-.9 22.3-22.3 22.7-58.3.8-80.2zm-126.6 61.7C463.8 412.3 396.9 456 320 456c-76.9 0-143.8-43.7-177.2-107.6-12.5 37.4-25.2 43.9-28.3 46.5C159.1 460.7 234.5 504 320 504s160.9-43.3 205.5-109.1c-3.2-2.7-15.9-9.2-28.3-46.5zM122.7 224.5C137.9 129.2 220.5 56 320 56c99.5 0 182.1 73.2 197.3 168.5 2.1-.2 5.2-2.4 49.5 7C554.4 106 448.7 8 320 8S85.6 106 73.2 231.4c44.5-9.4 47.1-7.2 49.5-6.9zM320 400c51.9 0 115.3-32.9 123.3-80 1.7-9.9-7.7-18.5-17.7-15.3-25.9 8.3-64.4 13.1-105.6 13.1s-79.6-4.8-105.6-13.1c-9.8-3.1-19.4 5.3-17.7 15.3 8 47.1 71.4 80 123.3 80zm130.3-168.3c3.6-1.1 6-4.5 5.7-8.3-3.3-42.1-32.2-71.4-56-71.4s-52.7 29.3-56 71.4c-.3 3.7 2.1 7.2 5.7 8.3 3.5 1.1 7.4-.5 9.3-3.7l9.5-17c7.7-13.7 19.2-21.6 31.5-21.6s23.8 7.9 31.5 21.6l9.5 17c2.1 3.6 6.2 4.6 9.3 3.7zM240 189.4c12.3 0 23.8 7.9 31.5 21.6l9.5 17c2.1 3.7 6.2 4.7 9.3 3.7 3.6-1.1 6-4.5 5.7-8.3-3.3-42.1-32.2-71.4-56-71.4s-52.7 29.3-56 71.4c-.3 3.7 2.1 7.2 5.7 8.3 3.5 1.1 7.4-.5 9.3-3.7l9.5-17c7.7-13.8 19.2-21.6 31.5-21.6z"],
	"grin-tongue": [496, 512, [], "f589", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm64 400c0 35.6-29.1 64.5-64.9 64-35.1-.5-63.1-29.8-63.1-65v-42.8l17.7-8.8c15-7.5 31.5 1.7 34.9 16.5l2.8 12.1c2.1 9.2 15.2 9.2 17.3 0l2.8-12.1c3.4-14.8 19.8-24.1 34.9-16.5l17.7 8.8V408zm28.2 25.3c2.2-8.1 3.8-16.5 3.8-25.3v-43.5c14.2-12.4 24.4-27.5 27.3-44.5 1.7-9.9-7.7-18.5-17.7-15.3-25.9 8.3-64.4 13.1-105.6 13.1s-79.6-4.8-105.6-13.1c-9.9-3.1-19.4 5.3-17.7 15.3 2.9 17 13.1 32.1 27.3 44.5V408c0 8.8 1.6 17.2 3.8 25.3C91.8 399.9 48 333 48 256c0-110.3 89.7-200 200-200s200 89.7 200 200c0 77-43.8 143.9-107.8 177.3zM168 176c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32zm160 0c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32z"],
	"grin-tongue-squint": [496, 512, [], "f58a", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm64 400c0 35.6-29.1 64.5-64.9 64-35.1-.5-63.1-29.8-63.1-65v-42.8l17.7-8.8c15-7.5 31.5 1.7 34.9 16.5l2.8 12.1c2.1 9.2 15.2 9.2 17.3 0l2.8-12.1c3.4-14.8 19.8-24.1 34.9-16.5l17.7 8.8V408zm28.2 25.3c2.2-8.1 3.8-16.5 3.8-25.3v-43.5c14.2-12.4 24.4-27.5 27.3-44.5 1.7-9.9-7.7-18.5-17.7-15.3-25.9 8.3-64.4 13.1-105.6 13.1s-79.6-4.8-105.6-13.1c-9.9-3.1-19.4 5.3-17.7 15.3 2.9 17 13.1 32.1 27.3 44.5V408c0 8.8 1.6 17.2 3.8 25.3C91.8 399.9 48 333 48 256c0-110.3 89.7-200 200-200s200 89.7 200 200c0 77-43.8 143.9-107.8 177.3zm36.9-281.1c-3.8-4.4-10.3-5.5-15.3-2.5l-80 48c-3.6 2.2-5.8 6.1-5.8 10.3s2.2 8.1 5.8 10.3l80 48c5.4 3.2 11.7 1.7 15.3-2.5 3.8-4.5 3.8-11 .1-15.5L343.6 208l33.6-40.3c3.8-4.5 3.7-11.1-.1-15.5zm-162.9 45.5l-80-48c-5-3-11.4-2-15.3 2.5-3.8 4.5-3.8 11-.1 15.5l33.6 40.3-33.6 40.3c-3.8 4.5-3.7 11 .1 15.5 3.6 4.2 9.9 5.7 15.3 2.5l80-48c3.6-2.2 5.8-6.1 5.8-10.3s-2.2-8.1-5.8-10.3z"],
	"grin-tongue-wink": [496, 512, [], "f58b", "M152 180c-25.7 0-55.9 16.9-59.8 42.1-.8 5 1.7 10 6.1 12.4 4.4 2.4 9.9 1.8 13.7-1.6l9.5-8.5c14.8-13.2 46.2-13.2 61 0l9.5 8.5c2.5 2.2 8 4.7 13.7 1.6 4.4-2.4 6.9-7.4 6.1-12.4-3.9-25.2-34.1-42.1-59.8-42.1zm176-52c-44.2 0-80 35.8-80 80s35.8 80 80 80 80-35.8 80-80-35.8-80-80-80zm0 128c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm0-72c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zM248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm64 400c0 35.6-29.1 64.5-64.9 64-35.1-.5-63.1-29.8-63.1-65v-42.8l17.7-8.8c15-7.5 31.5 1.7 34.9 16.5l2.8 12.1c2.1 9.2 15.2 9.2 17.3 0l2.8-12.1c3.4-14.8 19.8-24.1 34.9-16.5l17.7 8.8V408zm28.2 25.3c2.2-8.1 3.8-16.5 3.8-25.3v-43.5c14.2-12.4 24.4-27.5 27.3-44.5 1.7-9.9-7.7-18.5-17.7-15.3-25.9 8.3-64.4 13.1-105.6 13.1s-79.6-4.8-105.6-13.1c-9.9-3.1-19.4 5.3-17.7 15.3 2.9 17 13.1 32.1 27.3 44.5V408c0 8.8 1.6 17.2 3.8 25.3C91.8 399.9 48 333 48 256c0-110.3 89.7-200 200-200s200 89.7 200 200c0 77-43.8 143.9-107.8 177.3z"],
	"grin-wink": [496, 512, [], "f58c", "M328 180c-25.69 0-55.88 16.92-59.86 42.12-1.75 11.22 11.5 18.24 19.83 10.84l9.55-8.48c14.81-13.19 46.16-13.19 60.97 0l9.55 8.48c8.48 7.43 21.56.25 19.83-10.84C383.88 196.92 353.69 180 328 180zm-160 60c17.67 0 32-14.33 32-32s-14.33-32-32-32-32 14.33-32 32 14.33 32 32 32zm185.55 64.64c-25.93 8.3-64.4 13.06-105.55 13.06s-79.62-4.75-105.55-13.06c-9.94-3.13-19.4 5.37-17.71 15.34C132.67 367.13 196.06 400 248 400s115.33-32.87 123.26-80.02c1.68-9.89-7.67-18.48-17.71-15.34zM248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm0 448c-110.28 0-200-89.72-200-200S137.72 56 248 56s200 89.72 200 200-89.72 200-200 200z"],
	"hand-lizard": [576, 512, [], "f258", "M556.686 290.542L410.328 64.829C397.001 44.272 374.417 32 349.917 32H56C25.121 32 0 57.122 0 88v8c0 44.112 35.888 80 80 80h196.042l-18.333 48H144c-48.523 0-88 39.477-88 88 0 30.879 25.121 56 56 56h131.552c2.987 0 5.914.549 8.697 1.631L352 408.418V480h224V355.829c0-23.225-6.679-45.801-19.314-65.287zM528 432H400v-23.582c0-19.948-12.014-37.508-30.604-44.736l-99.751-38.788A71.733 71.733 0 0 0 243.552 320H112c-4.411 0-8-3.589-8-8 0-22.056 17.944-40 40-40h113.709c19.767 0 37.786-12.407 44.84-30.873l24.552-64.281c8.996-23.553-8.428-48.846-33.63-48.846H80c-17.645 0-32-14.355-32-32v-8c0-4.411 3.589-8 8-8h293.917c8.166 0 15.693 4.09 20.137 10.942l146.358 225.715A71.84 71.84 0 0 1 528 355.829V432z"],
	"hand-paper": [448, 512, [], "f256", "M372.57 112.641v-10.825c0-43.612-40.52-76.691-83.039-65.546-25.629-49.5-94.09-47.45-117.982.747C130.269 26.456 89.144 57.945 89.144 102v126.13c-19.953-7.427-43.308-5.068-62.083 8.871-29.355 21.796-35.794 63.333-14.55 93.153L132.48 498.569a32 32 0 0 0 26.062 13.432h222.897c14.904 0 27.835-10.289 31.182-24.813l30.184-130.958A203.637 203.637 0 0 0 448 310.564V179c0-40.62-35.523-71.992-75.43-66.359zm27.427 197.922c0 11.731-1.334 23.469-3.965 34.886L368.707 464h-201.92L51.591 302.303c-14.439-20.27 15.023-42.776 29.394-22.605l27.128 38.079c8.995 12.626 29.031 6.287 29.031-9.283V102c0-25.645 36.571-24.81 36.571.691V256c0 8.837 7.163 16 16 16h6.856c8.837 0 16-7.163 16-16V67c0-25.663 36.571-24.81 36.571.691V256c0 8.837 7.163 16 16 16h6.856c8.837 0 16-7.163 16-16V101.125c0-25.672 36.57-24.81 36.57.691V256c0 8.837 7.163 16 16 16h6.857c8.837 0 16-7.163 16-16v-76.309c0-26.242 36.57-25.64 36.57-.691v131.563z"],
	"hand-peace": [448, 512, [], "f25b", "M362.146 191.976c-13.71-21.649-38.761-34.016-65.006-30.341V74c0-40.804-32.811-74-73.141-74-40.33 0-73.14 33.196-73.14 74L160 168l-18.679-78.85C126.578 50.843 83.85 32.11 46.209 47.208 8.735 62.238-9.571 104.963 5.008 142.85l55.757 144.927c-30.557 24.956-43.994 57.809-24.733 92.218l54.853 97.999C102.625 498.97 124.73 512 148.575 512h205.702c30.744 0 57.558-21.44 64.555-51.797l27.427-118.999a67.801 67.801 0 0 0 1.729-15.203L448 256c0-44.956-43.263-77.343-85.854-64.024zM399.987 326c0 1.488-.169 2.977-.502 4.423l-27.427 119.001c-1.978 8.582-9.29 14.576-17.782 14.576H148.575c-6.486 0-12.542-3.621-15.805-9.449l-54.854-98c-4.557-8.141-2.619-18.668 4.508-24.488l26.647-21.764a16 16 0 0 0 4.812-18.139l-64.09-166.549C37.226 92.956 84.37 74.837 96.51 106.389l59.784 155.357A16 16 0 0 0 171.227 272h11.632c8.837 0 16-7.163 16-16V74c0-34.375 50.281-34.43 50.281 0v182c0 8.837 7.163 16 16 16h6.856c8.837 0 16-7.163 16-16v-28c0-25.122 36.567-25.159 36.567 0v28c0 8.837 7.163 16 16 16h6.856c8.837 0 16-7.163 16-16 0-25.12 36.567-25.16 36.567 0v70z"],
	"hand-point-down": [448, 512, [], "f0a7", "M188.8 512c45.616 0 83.2-37.765 83.2-83.2v-35.647a93.148 93.148 0 0 0 22.064-7.929c22.006 2.507 44.978-3.503 62.791-15.985C409.342 368.1 448 331.841 448 269.299V248c0-60.063-40-98.512-40-127.2v-2.679c4.952-5.747 8-13.536 8-22.12V32c0-17.673-12.894-32-28.8-32H156.8C140.894 0 128 14.327 128 32v64c0 8.584 3.048 16.373 8 22.12v2.679c0 6.964-6.193 14.862-23.668 30.183l-.148.129-.146.131c-9.937 8.856-20.841 18.116-33.253 25.851C48.537 195.798 0 207.486 0 252.8c0 56.928 35.286 92 83.2 92 8.026 0 15.489-.814 22.4-2.176V428.8c0 45.099 38.101 83.2 83.2 83.2zm0-48c-18.7 0-35.2-16.775-35.2-35.2V270.4c-17.325 0-35.2 26.4-70.4 26.4-26.4 0-35.2-20.625-35.2-44 0-8.794 32.712-20.445 56.1-34.926 14.575-9.074 27.225-19.524 39.875-30.799 18.374-16.109 36.633-33.836 39.596-59.075h176.752C364.087 170.79 400 202.509 400 248v21.299c0 40.524-22.197 57.124-61.325 50.601-8.001 14.612-33.979 24.151-53.625 12.925-18.225 19.365-46.381 17.787-61.05 4.95V428.8c0 18.975-16.225 35.2-35.2 35.2zM328 64c0-13.255 10.745-24 24-24s24 10.745 24 24-10.745 24-24 24-24-10.745-24-24z"],
	"hand-point-left": [512, 512, [], "f0a5", "M0 220.8C0 266.416 37.765 304 83.2 304h35.647a93.148 93.148 0 0 0 7.929 22.064c-2.507 22.006 3.503 44.978 15.985 62.791C143.9 441.342 180.159 480 242.701 480H264c60.063 0 98.512-40 127.2-40h2.679c5.747 4.952 13.536 8 22.12 8h64c17.673 0 32-12.894 32-28.8V188.8c0-15.906-14.327-28.8-32-28.8h-64c-8.584 0-16.373 3.048-22.12 8H391.2c-6.964 0-14.862-6.193-30.183-23.668l-.129-.148-.131-.146c-8.856-9.937-18.116-20.841-25.851-33.253C316.202 80.537 304.514 32 259.2 32c-56.928 0-92 35.286-92 83.2 0 8.026.814 15.489 2.176 22.4H83.2C38.101 137.6 0 175.701 0 220.8zm48 0c0-18.7 16.775-35.2 35.2-35.2h158.4c0-17.325-26.4-35.2-26.4-70.4 0-26.4 20.625-35.2 44-35.2 8.794 0 20.445 32.712 34.926 56.1 9.074 14.575 19.524 27.225 30.799 39.875 16.109 18.374 33.836 36.633 59.075 39.596v176.752C341.21 396.087 309.491 432 264 432h-21.299c-40.524 0-57.124-22.197-50.601-61.325-14.612-8.001-24.151-33.979-12.925-53.625-19.365-18.225-17.787-46.381-4.95-61.05H83.2C64.225 256 48 239.775 48 220.8zM448 360c13.255 0 24 10.745 24 24s-10.745 24-24 24-24-10.745-24-24 10.745-24 24-24z"],
	"hand-point-right": [512, 512, [], "f0a4", "M428.8 137.6h-86.177a115.52 115.52 0 0 0 2.176-22.4c0-47.914-35.072-83.2-92-83.2-45.314 0-57.002 48.537-75.707 78.784-7.735 12.413-16.994 23.317-25.851 33.253l-.131.146-.129.148C135.662 161.807 127.764 168 120.8 168h-2.679c-5.747-4.952-13.536-8-22.12-8H32c-17.673 0-32 12.894-32 28.8v230.4C0 435.106 14.327 448 32 448h64c8.584 0 16.373-3.048 22.12-8h2.679c28.688 0 67.137 40 127.2 40h21.299c62.542 0 98.8-38.658 99.94-91.145 12.482-17.813 18.491-40.785 15.985-62.791A93.148 93.148 0 0 0 393.152 304H428.8c45.435 0 83.2-37.584 83.2-83.2 0-45.099-38.101-83.2-83.2-83.2zm0 118.4h-91.026c12.837 14.669 14.415 42.825-4.95 61.05 11.227 19.646 1.687 45.624-12.925 53.625 6.524 39.128-10.076 61.325-50.6 61.325H248c-45.491 0-77.21-35.913-120-39.676V215.571c25.239-2.964 42.966-21.222 59.075-39.596 11.275-12.65 21.725-25.3 30.799-39.875C232.355 112.712 244.006 80 252.8 80c23.375 0 44 8.8 44 35.2 0 35.2-26.4 53.075-26.4 70.4h158.4c18.425 0 35.2 16.5 35.2 35.2 0 18.975-16.225 35.2-35.2 35.2zM88 384c0 13.255-10.745 24-24 24s-24-10.745-24-24 10.745-24 24-24 24 10.745 24 24z"],
	"hand-point-up": [448, 512, [], "f0a6", "M105.6 83.2v86.177a115.52 115.52 0 0 0-22.4-2.176c-47.914 0-83.2 35.072-83.2 92 0 45.314 48.537 57.002 78.784 75.707 12.413 7.735 23.317 16.994 33.253 25.851l.146.131.148.129C129.807 376.338 136 384.236 136 391.2v2.679c-4.952 5.747-8 13.536-8 22.12v64c0 17.673 12.894 32 28.8 32h230.4c15.906 0 28.8-14.327 28.8-32v-64c0-8.584-3.048-16.373-8-22.12V391.2c0-28.688 40-67.137 40-127.2v-21.299c0-62.542-38.658-98.8-91.145-99.94-17.813-12.482-40.785-18.491-62.791-15.985A93.148 93.148 0 0 0 272 118.847V83.2C272 37.765 234.416 0 188.8 0c-45.099 0-83.2 38.101-83.2 83.2zm118.4 0v91.026c14.669-12.837 42.825-14.415 61.05 4.95 19.646-11.227 45.624-1.687 53.625 12.925 39.128-6.524 61.325 10.076 61.325 50.6V264c0 45.491-35.913 77.21-39.676 120H183.571c-2.964-25.239-21.222-42.966-39.596-59.075-12.65-11.275-25.3-21.725-39.875-30.799C80.712 279.645 48 267.994 48 259.2c0-23.375 8.8-44 35.2-44 35.2 0 53.075 26.4 70.4 26.4V83.2c0-18.425 16.5-35.2 35.2-35.2 18.975 0 35.2 16.225 35.2 35.2zM352 424c13.255 0 24 10.745 24 24s-10.745 24-24 24-24-10.745-24-24 10.745-24 24-24z"],
	"hand-pointer": [448, 512, [], "f25a", "M358.182 179.361c-19.493-24.768-52.679-31.945-79.872-19.098-15.127-15.687-36.182-22.487-56.595-19.629V67c0-36.944-29.736-67-66.286-67S89.143 30.056 89.143 67v161.129c-19.909-7.41-43.272-5.094-62.083 8.872-29.355 21.795-35.793 63.333-14.55 93.152l109.699 154.001C134.632 501.59 154.741 512 176 512h178.286c30.802 0 57.574-21.5 64.557-51.797l27.429-118.999A67.873 67.873 0 0 0 448 326v-84c0-46.844-46.625-79.273-89.818-62.639zM80.985 279.697l27.126 38.079c8.995 12.626 29.031 6.287 29.031-9.283V67c0-25.12 36.571-25.16 36.571 0v175c0 8.836 7.163 16 16 16h6.857c8.837 0 16-7.164 16-16v-35c0-25.12 36.571-25.16 36.571 0v35c0 8.836 7.163 16 16 16H272c8.837 0 16-7.164 16-16v-21c0-25.12 36.571-25.16 36.571 0v21c0 8.836 7.163 16 16 16h6.857c8.837 0 16-7.164 16-16 0-25.121 36.571-25.16 36.571 0v84c0 1.488-.169 2.977-.502 4.423l-27.43 119.001c-1.978 8.582-9.29 14.576-17.782 14.576H176c-5.769 0-11.263-2.878-14.697-7.697l-109.712-154c-14.406-20.223 14.994-42.818 29.394-22.606zM176.143 400v-96c0-8.837 6.268-16 14-16h6c7.732 0 14 7.163 14 16v96c0 8.837-6.268 16-14 16h-6c-7.733 0-14-7.163-14-16zm75.428 0v-96c0-8.837 6.268-16 14-16h6c7.732 0 14 7.163 14 16v96c0 8.837-6.268 16-14 16h-6c-7.732 0-14-7.163-14-16zM327 400v-96c0-8.837 6.268-16 14-16h6c7.732 0 14 7.163 14 16v96c0 8.837-6.268 16-14 16h-6c-7.732 0-14-7.163-14-16z"],
	"hand-rock": [512, 512, [], "f255", "M408.864 79.052c-22.401-33.898-66.108-42.273-98.813-23.588-29.474-31.469-79.145-31.093-108.334-.022-47.16-27.02-108.71 5.055-110.671 60.806C44.846 105.407 0 140.001 0 187.429v56.953c0 32.741 14.28 63.954 39.18 85.634l97.71 85.081c4.252 3.702 3.11 5.573 3.11 32.903 0 17.673 14.327 32 32 32h252c17.673 0 32-14.327 32-32 0-23.513-1.015-30.745 3.982-42.37l42.835-99.656c6.094-14.177 9.183-29.172 9.183-44.568V146.963c0-52.839-54.314-88.662-103.136-67.911zM464 261.406a64.505 64.505 0 0 1-5.282 25.613l-42.835 99.655c-5.23 12.171-7.883 25.04-7.883 38.25V432H188v-10.286c0-16.37-7.14-31.977-19.59-42.817l-97.71-85.08C56.274 281.255 48 263.236 48 244.381v-56.953c0-33.208 52-33.537 52 .677v41.228a16 16 0 0 0 5.493 12.067l7 6.095A16 16 0 0 0 139 235.429V118.857c0-33.097 52-33.725 52 .677v26.751c0 8.836 7.164 16 16 16h7c8.836 0 16-7.164 16-16v-41.143c0-33.134 52-33.675 52 .677v40.466c0 8.836 7.163 16 16 16h7c8.837 0 16-7.164 16-16v-27.429c0-33.03 52-33.78 52 .677v26.751c0 8.836 7.163 16 16 16h7c8.837 0 16-7.164 16-16 0-33.146 52-33.613 52 .677v114.445z"],
	"hand-scissors": [512, 512, [], "f257", "M256 480l70-.013c5.114 0 10.231-.583 15.203-1.729l118.999-27.427C490.56 443.835 512 417.02 512 386.277V180.575c0-23.845-13.03-45.951-34.005-57.69l-97.999-54.853c-34.409-19.261-67.263-5.824-92.218 24.733L142.85 37.008c-37.887-14.579-80.612 3.727-95.642 41.201-15.098 37.642 3.635 80.37 41.942 95.112L168 192l-94-9.141c-40.804 0-74 32.811-74 73.14 0 40.33 33.196 73.141 74 73.141h87.635c-3.675 26.245 8.692 51.297 30.341 65.006C178.657 436.737 211.044 480 256 480zm0-48.013c-25.16 0-25.12-36.567 0-36.567 8.837 0 16-7.163 16-16v-6.856c0-8.837-7.163-16-16-16h-28c-25.159 0-25.122-36.567 0-36.567h28c8.837 0 16-7.163 16-16v-6.856c0-8.837-7.163-16-16-16H74c-34.43 0-34.375-50.281 0-50.281h182c8.837 0 16-7.163 16-16v-11.632a16 16 0 0 0-10.254-14.933L106.389 128.51c-31.552-12.14-13.432-59.283 19.222-46.717l166.549 64.091a16.001 16.001 0 0 0 18.139-4.812l21.764-26.647c5.82-7.127 16.348-9.064 24.488-4.508l98 54.854c5.828 3.263 9.449 9.318 9.449 15.805v205.701c0 8.491-5.994 15.804-14.576 17.782l-119.001 27.427a19.743 19.743 0 0 1-4.423.502h-70z"],
	"hand-spock": [512, 512, [], "f259", "M501.03053,116.17605c-19.39059-31.50779-51.24406-35.72849-66.31044-35.01756-14.11325-50.81051-62.0038-54.08-70.73816-54.08a74.03091,74.03091,0,0,0-72.23816,58.916l-4.64648,22.66014-13.68357-53.207c-9.09569-35.37107-46.412-64.05074-89.66-53.07223a73.89749,73.89749,0,0,0-55.121,78.94722,73.68273,73.68273,0,0,0-64.8495,94.42181l24.35933,82.19721c-38.24017-7.54492-62.79677,16.18358-68.11512,21.84764a73.6791,73.6791,0,0,0,3.19921,104.19329l91.36509,85.9765A154.164,154.164,0,0,0,220.62279,512h107.4549A127.30079,127.30079,0,0,0,452.3392,413.86139l57.623-241.96272A73.20274,73.20274,0,0,0,501.03053,116.17605Zm-37.7597,44.60544L405.64788,402.74812a79.46616,79.46616,0,0,1-77.57019,61.25972H220.62279a106.34052,106.34052,0,0,1-73.1366-28.998l-91.369-85.98041C31.34381,325.72669,66.61133,288.131,91.39644,311.5392l51.123,48.10739c5.42577,5.10937,13.48239.71679,13.48239-5.82617a246.79914,246.79914,0,0,0-10.17771-70.1523l-36.01362-121.539c-9.7324-32.88279,39.69916-47.27145,49.38664-14.625l31.3437,105.77923c5.59374,18.90428,33.78119,10.71288,28.9648-8.00781L177.06427,80.23662c-8.50389-33.1035,41.43157-45.64646,49.86515-12.83593l47.32609,184.035c4.42773,17.24218,29.16207,16.5039,32.71089-.80468l31.791-154.9706c6.81054-33.1074,57.51748-24.10741,50.11906,11.96288L360.32764,246.78924c-3.72265,18.10936,23.66793,24.63084,28.05659,6.21679L413.185,148.85962C421.1498,115.512,471.14,127.79713,463.27083,160.78149Z"],
	"handshake": [640, 512, [], "f2b5", "M519.2 127.9l-47.6-47.6A56.252 56.252 0 0 0 432 64H205.2c-14.8 0-29.1 5.9-39.6 16.3L118 127.9H0v255.7h64c17.6 0 31.8-14.2 31.9-31.7h9.1l84.6 76.4c30.9 25.1 73.8 25.7 105.6 3.8 12.5 10.8 26 15.9 41.1 15.9 18.2 0 35.3-7.4 48.8-24 22.1 8.7 48.2 2.6 64-16.8l26.2-32.3c5.6-6.9 9.1-14.8 10.9-23h57.9c.1 17.5 14.4 31.7 31.9 31.7h64V127.9H519.2zM48 351.6c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16c0 8.9-7.2 16-16 16zm390-6.9l-26.1 32.2c-2.8 3.4-7.8 4-11.3 1.2l-23.9-19.4-30 36.5c-6 7.3-15 4.8-18 2.4l-36.8-31.5-15.6 19.2c-13.9 17.1-39.2 19.7-55.3 6.6l-97.3-88H96V175.8h41.9l61.7-61.6c2-.8 3.7-1.5 5.7-2.3H262l-38.7 35.5c-29.4 26.9-31.1 72.3-4.4 101.3 14.8 16.2 61.2 41.2 101.5 4.4l8.2-7.5 108.2 87.8c3.4 2.8 3.9 7.9 1.2 11.3zm106-40.8h-69.2c-2.3-2.8-4.9-5.4-7.7-7.7l-102.7-83.4 12.5-11.4c6.5-6 7-16.1 1-22.6L367 167.1c-6-6.5-16.1-6.9-22.6-1l-55.2 50.6c-9.5 8.7-25.7 9.4-34.6 0-9.3-9.9-8.5-25.1 1.2-33.9l65.6-60.1c7.4-6.8 17-10.5 27-10.5l83.7-.2c2.1 0 4.1.8 5.5 2.3l61.7 61.6H544v128zm48 47.7c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16c0 8.9-7.2 16-16 16z"],
	"hdd": [576, 512, [], "f0a0", "M567.403 235.642L462.323 84.589A48 48 0 0 0 422.919 64H153.081a48 48 0 0 0-39.404 20.589L8.597 235.642A48.001 48.001 0 0 0 0 263.054V400c0 26.51 21.49 48 48 48h480c26.51 0 48-21.49 48-48V263.054c0-9.801-3-19.366-8.597-27.412zM153.081 112h269.838l77.913 112H75.168l77.913-112zM528 400H48V272h480v128zm-32-64c0 17.673-14.327 32-32 32s-32-14.327-32-32 14.327-32 32-32 32 14.327 32 32zm-96 0c0 17.673-14.327 32-32 32s-32-14.327-32-32 14.327-32 32-32 32 14.327 32 32z"],
	"heart": [512, 512, [], "f004", "M458.4 64.3C400.6 15.7 311.3 23 256 79.3 200.7 23 111.4 15.6 53.6 64.3-21.6 127.6-10.6 230.8 43 285.5l175.4 178.7c10 10.2 23.4 15.9 37.6 15.9 14.3 0 27.6-5.6 37.6-15.8L469 285.6c53.5-54.7 64.7-157.9-10.6-221.3zm-23.6 187.5L259.4 430.5c-2.4 2.4-4.4 2.4-6.8 0L77.2 251.8c-36.5-37.2-43.9-107.6 7.3-150.7 38.9-32.7 98.9-27.8 136.5 10.5l35 35.7 35-35.7c37.8-38.5 97.8-43.2 136.5-10.6 51.1 43.1 43.5 113.9 7.3 150.8z"],
	"hospital": [448, 512, [], "f0f8", "M128 244v-40c0-6.627 5.373-12 12-12h40c6.627 0 12 5.373 12 12v40c0 6.627-5.373 12-12 12h-40c-6.627 0-12-5.373-12-12zm140 12h40c6.627 0 12-5.373 12-12v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12zm-76 84v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm76 12h40c6.627 0 12-5.373 12-12v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12zm180 124v36H0v-36c0-6.627 5.373-12 12-12h19.5V85.035C31.5 73.418 42.245 64 55.5 64H144V24c0-13.255 10.745-24 24-24h112c13.255 0 24 10.745 24 24v40h88.5c13.255 0 24 9.418 24 21.035V464H436c6.627 0 12 5.373 12 12zM79.5 463H192v-67c0-6.627 5.373-12 12-12h40c6.627 0 12 5.373 12 12v67h112.5V112H304v24c0 13.255-10.745 24-24 24H168c-13.255 0-24-10.745-24-24v-24H79.5v351zM266 64h-26V38a6 6 0 0 0-6-6h-20a6 6 0 0 0-6 6v26h-26a6 6 0 0 0-6 6v20a6 6 0 0 0 6 6h26v26a6 6 0 0 0 6 6h20a6 6 0 0 0 6-6V96h26a6 6 0 0 0 6-6V70a6 6 0 0 0-6-6z"],
	"hourglass": [384, 512, [], "f254", "M368 48h4c6.627 0 12-5.373 12-12V12c0-6.627-5.373-12-12-12H12C5.373 0 0 5.373 0 12v24c0 6.627 5.373 12 12 12h4c0 80.564 32.188 165.807 97.18 208C47.899 298.381 16 383.9 16 464h-4c-6.627 0-12 5.373-12 12v24c0 6.627 5.373 12 12 12h360c6.627 0 12-5.373 12-12v-24c0-6.627-5.373-12-12-12h-4c0-80.564-32.188-165.807-97.18-208C336.102 213.619 368 128.1 368 48zM64 48h256c0 101.62-57.307 184-128 184S64 149.621 64 48zm256 416H64c0-101.62 57.308-184 128-184s128 82.38 128 184z"],
	"id-badge": [384, 512, [], "f2c1", "M336 0H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V48c0-26.5-21.5-48-48-48zm0 464H48V48h288v416zM144 112h96c8.8 0 16-7.2 16-16s-7.2-16-16-16h-96c-8.8 0-16 7.2-16 16s7.2 16 16 16zm48 176c35.3 0 64-28.7 64-64s-28.7-64-64-64-64 28.7-64 64 28.7 64 64 64zm-89.6 128h179.2c12.4 0 22.4-8.6 22.4-19.2v-19.2c0-31.8-30.1-57.6-67.2-57.6-10.8 0-18.7 8-44.8 8-26.9 0-33.4-8-44.8-8-37.1 0-67.2 25.8-67.2 57.6v19.2c0 10.6 10 19.2 22.4 19.2z"],
	"id-card": [576, 512, [], "f2c2", "M528 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm0 400H303.2c.9-4.5.8 3.6.8-22.4 0-31.8-30.1-57.6-67.2-57.6-10.8 0-18.7 8-44.8 8-26.9 0-33.4-8-44.8-8-37.1 0-67.2 25.8-67.2 57.6 0 26-.2 17.9.8 22.4H48V144h480v288zm-168-80h112c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8H360c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8zm0-64h112c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8H360c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8zm0-64h112c4.4 0 8-3.6 8-8v-16c0-4.4-3.6-8-8-8H360c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8zm-168 96c35.3 0 64-28.7 64-64s-28.7-64-64-64-64 28.7-64 64 28.7 64 64 64z"],
	"image": [512, 512, [], "f03e", "M464 64H48C21.49 64 0 85.49 0 112v288c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V112c0-26.51-21.49-48-48-48zm-6 336H54a6 6 0 0 1-6-6V118a6 6 0 0 1 6-6h404a6 6 0 0 1 6 6v276a6 6 0 0 1-6 6zM128 152c-22.091 0-40 17.909-40 40s17.909 40 40 40 40-17.909 40-40-17.909-40-40-40zM96 352h320v-80l-87.515-87.515c-4.686-4.686-12.284-4.686-16.971 0L192 304l-39.515-39.515c-4.686-4.686-12.284-4.686-16.971 0L96 304v48z"],
	"images": [576, 512, [], "f302", "M480 416v16c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48V176c0-26.51 21.49-48 48-48h16v48H54a6 6 0 0 0-6 6v244a6 6 0 0 0 6 6h372a6 6 0 0 0 6-6v-10h48zm42-336H150a6 6 0 0 0-6 6v244a6 6 0 0 0 6 6h372a6 6 0 0 0 6-6V86a6 6 0 0 0-6-6zm6-48c26.51 0 48 21.49 48 48v256c0 26.51-21.49 48-48 48H144c-26.51 0-48-21.49-48-48V80c0-26.51 21.49-48 48-48h384zM264 144c0 22.091-17.909 40-40 40s-40-17.909-40-40 17.909-40 40-40 40 17.909 40 40zm-72 96l39.515-39.515c4.686-4.686 12.284-4.686 16.971 0L288 240l103.515-103.515c4.686-4.686 12.284-4.686 16.971 0L480 208v80H192v-48z"],
	"keyboard": [576, 512, [], "f11c", "M528 64H48C21.49 64 0 85.49 0 112v288c0 26.51 21.49 48 48 48h480c26.51 0 48-21.49 48-48V112c0-26.51-21.49-48-48-48zm8 336c0 4.411-3.589 8-8 8H48c-4.411 0-8-3.589-8-8V112c0-4.411 3.589-8 8-8h480c4.411 0 8 3.589 8 8v288zM170 270v-28c0-6.627-5.373-12-12-12h-28c-6.627 0-12 5.373-12 12v28c0 6.627 5.373 12 12 12h28c6.627 0 12-5.373 12-12zm96 0v-28c0-6.627-5.373-12-12-12h-28c-6.627 0-12 5.373-12 12v28c0 6.627 5.373 12 12 12h28c6.627 0 12-5.373 12-12zm96 0v-28c0-6.627-5.373-12-12-12h-28c-6.627 0-12 5.373-12 12v28c0 6.627 5.373 12 12 12h28c6.627 0 12-5.373 12-12zm96 0v-28c0-6.627-5.373-12-12-12h-28c-6.627 0-12 5.373-12 12v28c0 6.627 5.373 12 12 12h28c6.627 0 12-5.373 12-12zm-336 82v-28c0-6.627-5.373-12-12-12H82c-6.627 0-12 5.373-12 12v28c0 6.627 5.373 12 12 12h28c6.627 0 12-5.373 12-12zm384 0v-28c0-6.627-5.373-12-12-12h-28c-6.627 0-12 5.373-12 12v28c0 6.627 5.373 12 12 12h28c6.627 0 12-5.373 12-12zM122 188v-28c0-6.627-5.373-12-12-12H82c-6.627 0-12 5.373-12 12v28c0 6.627 5.373 12 12 12h28c6.627 0 12-5.373 12-12zm96 0v-28c0-6.627-5.373-12-12-12h-28c-6.627 0-12 5.373-12 12v28c0 6.627 5.373 12 12 12h28c6.627 0 12-5.373 12-12zm96 0v-28c0-6.627-5.373-12-12-12h-28c-6.627 0-12 5.373-12 12v28c0 6.627 5.373 12 12 12h28c6.627 0 12-5.373 12-12zm96 0v-28c0-6.627-5.373-12-12-12h-28c-6.627 0-12 5.373-12 12v28c0 6.627 5.373 12 12 12h28c6.627 0 12-5.373 12-12zm96 0v-28c0-6.627-5.373-12-12-12h-28c-6.627 0-12 5.373-12 12v28c0 6.627 5.373 12 12 12h28c6.627 0 12-5.373 12-12zm-98 158v-16c0-6.627-5.373-12-12-12H180c-6.627 0-12 5.373-12 12v16c0 6.627 5.373 12 12 12h216c6.627 0 12-5.373 12-12z"],
	"kiss": [496, 512, [], "f596", "M168 176c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32zm136 132c0-19.2-28.8-41.5-71.5-44-3.8-.4-7.4 2.4-8.2 6.2-.9 3.8 1.1 7.7 4.7 9.2l16.9 7.2c13 5.5 20.8 13.5 20.8 21.5s-7.8 16-20.7 21.5l-17 7.2c-5.7 2.4-6 12.2 0 14.8l16.9 7.2c13 5.5 20.8 13.5 20.8 21.5s-7.8 16-20.7 21.5l-17 7.2c-3.6 1.5-5.6 5.4-4.7 9.2.8 3.6 4.1 6.2 7.8 6.2h.5c42.8-2.5 71.5-24.8 71.5-44 0-13-13.4-27.3-35.2-36C290.6 335.3 304 321 304 308zM248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm80-280c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32z"],
	"kiss-beam": [496, 512, [], "f597", "M168 152c-23.8 0-52.7 29.3-56 71.4-.3 3.7 2 7.2 5.6 8.3 3.5 1 7.5-.5 9.3-3.7l9.5-17c7.7-13.7 19.2-21.6 31.5-21.6s23.8 7.9 31.5 21.6l9.5 17c2.1 3.7 6.2 4.7 9.3 3.7 3.6-1.1 5.9-4.5 5.6-8.3-3.1-42.1-32-71.4-55.8-71.4zM248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm56-148c0-19.2-28.8-41.5-71.5-44-3.8-.4-7.4 2.4-8.2 6.2-.9 3.8 1.1 7.7 4.7 9.2l16.9 7.2c13 5.5 20.8 13.5 20.8 21.5s-7.8 16-20.7 21.5l-17 7.2c-5.7 2.4-6 12.2 0 14.8l16.9 7.2c13 5.5 20.8 13.5 20.8 21.5s-7.8 16-20.7 21.5l-17 7.2c-3.6 1.5-5.6 5.4-4.7 9.2.8 3.6 4.1 6.2 7.8 6.2h.5c42.8-2.5 71.5-24.8 71.5-44 0-13-13.4-27.3-35.2-36C290.6 335.3 304 321 304 308zm24-156c-23.8 0-52.7 29.3-56 71.4-.3 3.7 2 7.2 5.6 8.3 3.5 1 7.5-.5 9.3-3.7l9.5-17c7.7-13.7 19.2-21.6 31.5-21.6s23.8 7.9 31.5 21.6l9.5 17c2.1 3.7 6.2 4.7 9.3 3.7 3.6-1.1 5.9-4.5 5.6-8.3-3.1-42.1-32-71.4-55.8-71.4z"],
	"kiss-wink-heart": [504, 512, [], "f598", "M304 308.5c0-19.2-28.8-41.5-71.5-44-3.8-.4-7.4 2.4-8.2 6.2-.9 3.8 1.1 7.7 4.7 9.2l16.9 7.2c13 5.5 20.8 13.5 20.8 21.5s-7.8 16-20.7 21.5l-17 7.2c-5.7 2.4-6 12.2 0 14.8l16.9 7.2c13 5.5 20.8 13.5 20.8 21.5s-7.8 16-20.7 21.5l-17 7.2c-3.6 1.5-5.6 5.4-4.7 9.2.8 3.6 4.1 6.2 7.8 6.2h.5c42.8-2.5 71.5-24.8 71.5-44 0-13-13.4-27.3-35.2-36 21.7-9.1 35.1-23.4 35.1-36.4zm70.5-83.5l9.5 8.5c3.8 3.3 9.3 4 13.7 1.6 4.4-2.4 6.9-7.4 6.1-12.4-4-25.2-34.2-42.1-59.8-42.1s-55.9 16.9-59.8 42.1c-.8 5 1.7 10 6.1 12.4 5.8 3.1 11.2.7 13.7-1.6l9.5-8.5c14.8-13.2 46.2-13.2 61 0zM136 208.5c0 17.7 14.3 32 32 32s32-14.3 32-32-14.3-32-32-32-32 14.3-32 32zm365.1 194c-8-20.8-31.5-31.5-53.1-25.9l-8.4 2.2-2.3-8.4c-5.9-21.4-27-36.5-49-33-25.2 4-40.6 28.6-34 52.6l22.9 82.6c1.5 5.3 7 8.5 12.4 7.1l83-21.5c24.1-6.3 37.7-31.8 28.5-55.7zM334 436.3c-26.1 12.5-55.2 19.7-86 19.7-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200c0 22.1-3.7 43.3-10.4 63.2 9 6.4 17 14.2 22.6 23.9 6.4.1 12.6 1.4 18.6 2.9 10.9-27.9 17.1-58.2 17.1-90C496 119 385 8 248 8S0 119 0 256s111 248 248 248c35.4 0 68.9-7.5 99.4-20.9-2.5-7.3 4.3 17.2-13.4-46.8z"],
	"laugh": [496, 512, [], "f599", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm141.4 389.4c-37.8 37.8-88 58.6-141.4 58.6s-103.6-20.8-141.4-58.6S48 309.4 48 256s20.8-103.6 58.6-141.4S194.6 56 248 56s103.6 20.8 141.4 58.6S448 202.6 448 256s-20.8 103.6-58.6 141.4zM328 224c17.7 0 32-14.3 32-32s-14.3-32-32-32-32 14.3-32 32 14.3 32 32 32zm-160 0c17.7 0 32-14.3 32-32s-14.3-32-32-32-32 14.3-32 32 14.3 32 32 32zm194.4 64H133.6c-8.2 0-14.5 7-13.5 15 7.5 59.2 58.9 105 121.1 105h13.6c62.2 0 113.6-45.8 121.1-105 1-8-5.3-15-13.5-15z"],
	"laugh-beam": [496, 512, [], "f59a", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm141.4 389.4c-37.8 37.8-88 58.6-141.4 58.6s-103.6-20.8-141.4-58.6S48 309.4 48 256s20.8-103.6 58.6-141.4S194.6 56 248 56s103.6 20.8 141.4 58.6S448 202.6 448 256s-20.8 103.6-58.6 141.4zM328 152c-23.8 0-52.7 29.3-56 71.4-.7 8.6 10.8 11.9 14.9 4.5l9.5-17c7.7-13.7 19.2-21.6 31.5-21.6s23.8 7.9 31.5 21.6l9.5 17c4.1 7.4 15.6 4 14.9-4.5-3.1-42.1-32-71.4-55.8-71.4zm-201 75.9l9.5-17c7.7-13.7 19.2-21.6 31.5-21.6s23.8 7.9 31.5 21.6l9.5 17c4.1 7.4 15.6 4 14.9-4.5-3.3-42.1-32.2-71.4-56-71.4s-52.7 29.3-56 71.4c-.6 8.5 10.9 11.9 15.1 4.5zM362.4 288H133.6c-8.2 0-14.5 7-13.5 15 7.5 59.2 58.9 105 121.1 105h13.6c62.2 0 113.6-45.8 121.1-105 1-8-5.3-15-13.5-15z"],
	"laugh-squint": [496, 512, [], "f59b", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm141.4 389.4c-37.8 37.8-88 58.6-141.4 58.6s-103.6-20.8-141.4-58.6S48 309.4 48 256s20.8-103.6 58.6-141.4S194.6 56 248 56s103.6 20.8 141.4 58.6S448 202.6 448 256s-20.8 103.6-58.6 141.4zM343.6 196l33.6-40.3c8.6-10.3-3.8-24.8-15.4-18l-80 48c-7.8 4.7-7.8 15.9 0 20.6l80 48c11.5 6.8 24-7.6 15.4-18L343.6 196zm-209.4 58.3l80-48c7.8-4.7 7.8-15.9 0-20.6l-80-48c-11.6-6.9-24 7.7-15.4 18l33.6 40.3-33.6 40.3c-8.7 10.4 3.8 24.8 15.4 18zM362.4 288H133.6c-8.2 0-14.5 7-13.5 15 7.5 59.2 58.9 105 121.1 105h13.6c62.2 0 113.6-45.8 121.1-105 1-8-5.3-15-13.5-15z"],
	"laugh-wink": [496, 512, [], "f59c", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm141.4 389.4c-37.8 37.8-88 58.6-141.4 58.6s-103.6-20.8-141.4-58.6C68.8 359.6 48 309.4 48 256s20.8-103.6 58.6-141.4C144.4 76.8 194.6 56 248 56s103.6 20.8 141.4 58.6c37.8 37.8 58.6 88 58.6 141.4s-20.8 103.6-58.6 141.4zM328 164c-25.7 0-55.9 16.9-59.9 42.1-1.7 11.2 11.5 18.2 19.8 10.8l9.5-8.5c14.8-13.2 46.2-13.2 61 0l9.5 8.5c8.5 7.4 21.6.3 19.8-10.8-3.8-25.2-34-42.1-59.7-42.1zm-160 60c17.7 0 32-14.3 32-32s-14.3-32-32-32-32 14.3-32 32 14.3 32 32 32zm194.4 64H133.6c-8.2 0-14.5 7-13.5 15 7.5 59.2 58.9 105 121.1 105h13.6c62.2 0 113.6-45.8 121.1-105 1-8-5.3-15-13.5-15z"],
	"lemon": [512, 512, [], "f094", "M484.112 27.889C455.989-.233 416.108-8.057 387.059 8.865 347.604 31.848 223.504-41.111 91.196 91.197-41.277 223.672 31.923 347.472 8.866 387.058c-16.922 29.051-9.1 68.932 19.022 97.054 28.135 28.135 68.011 35.938 97.057 19.021 39.423-22.97 163.557 49.969 295.858-82.329 132.474-132.477 59.273-256.277 82.331-295.861 16.922-29.05 9.1-68.931-19.022-97.054zm-22.405 72.894c-38.8 66.609 45.6 165.635-74.845 286.08-120.44 120.443-219.475 36.048-286.076 74.843-22.679 13.207-64.035-27.241-50.493-50.488 38.8-66.609-45.6-165.635 74.845-286.08C245.573 4.702 344.616 89.086 411.219 50.292c22.73-13.24 64.005 27.288 50.488 50.491zm-169.861 8.736c1.37 10.96-6.404 20.957-17.365 22.327-54.846 6.855-135.779 87.787-142.635 142.635-1.373 10.989-11.399 18.734-22.326 17.365-10.961-1.37-18.735-11.366-17.365-22.326 9.162-73.286 104.167-168.215 177.365-177.365 10.953-1.368 20.956 6.403 22.326 17.364z"],
	"life-ring": [512, 512, [], "f1cd", "M256 504c136.967 0 248-111.033 248-248S392.967 8 256 8 8 119.033 8 256s111.033 248 248 248zm-103.398-76.72l53.411-53.411c31.806 13.506 68.128 13.522 99.974 0l53.411 53.411c-63.217 38.319-143.579 38.319-206.796 0zM336 256c0 44.112-35.888 80-80 80s-80-35.888-80-80 35.888-80 80-80 80 35.888 80 80zm91.28 103.398l-53.411-53.411c13.505-31.806 13.522-68.128 0-99.974l53.411-53.411c38.319 63.217 38.319 143.579 0 206.796zM359.397 84.72l-53.411 53.411c-31.806-13.505-68.128-13.522-99.973 0L152.602 84.72c63.217-38.319 143.579-38.319 206.795 0zM84.72 152.602l53.411 53.411c-13.506 31.806-13.522 68.128 0 99.974L84.72 359.398c-38.319-63.217-38.319-143.579 0-206.796z"],
	"lightbulb": [352, 512, [], "f0eb", "M176 80c-52.94 0-96 43.06-96 96 0 8.84 7.16 16 16 16s16-7.16 16-16c0-35.3 28.72-64 64-64 8.84 0 16-7.16 16-16s-7.16-16-16-16zM96.06 459.17c0 3.15.93 6.22 2.68 8.84l24.51 36.84c2.97 4.46 7.97 7.14 13.32 7.14h78.85c5.36 0 10.36-2.68 13.32-7.14l24.51-36.84c1.74-2.62 2.67-5.7 2.68-8.84l.05-43.18H96.02l.04 43.18zM176 0C73.72 0 0 82.97 0 176c0 44.37 16.45 84.85 43.56 115.78 16.64 18.99 42.74 58.8 52.42 92.16v.06h48v-.12c-.01-4.77-.72-9.51-2.15-14.07-5.59-17.81-22.82-64.77-62.17-109.67-20.54-23.43-31.52-53.15-31.61-84.14-.2-73.64 59.67-128 127.95-128 70.58 0 128 57.42 128 128 0 30.97-11.24 60.85-31.65 84.14-39.11 44.61-56.42 91.47-62.1 109.46a47.507 47.507 0 0 0-2.22 14.3v.1h48v-.05c9.68-33.37 35.78-73.18 52.42-92.16C335.55 260.85 352 220.37 352 176 352 78.8 273.2 0 176 0z"],
	"list-alt": [512, 512, [], "f022", "M464 32H48C21.49 32 0 53.49 0 80v352c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V80c0-26.51-21.49-48-48-48zm-6 400H54a6 6 0 0 1-6-6V86a6 6 0 0 1 6-6h404a6 6 0 0 1 6 6v340a6 6 0 0 1-6 6zm-42-92v24c0 6.627-5.373 12-12 12H204c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h200c6.627 0 12 5.373 12 12zm0-96v24c0 6.627-5.373 12-12 12H204c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h200c6.627 0 12 5.373 12 12zm0-96v24c0 6.627-5.373 12-12 12H204c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h200c6.627 0 12 5.373 12 12zm-252 12c0 19.882-16.118 36-36 36s-36-16.118-36-36 16.118-36 36-36 36 16.118 36 36zm0 96c0 19.882-16.118 36-36 36s-36-16.118-36-36 16.118-36 36-36 36 16.118 36 36zm0 96c0 19.882-16.118 36-36 36s-36-16.118-36-36 16.118-36 36-36 36 16.118 36 36z"],
	"map": [576, 512, [], "f279", "M560.02 32c-1.96 0-3.98.37-5.96 1.16L384.01 96H384L212 35.28A64.252 64.252 0 0 0 191.76 32c-6.69 0-13.37 1.05-19.81 3.14L20.12 87.95A32.006 32.006 0 0 0 0 117.66v346.32C0 473.17 7.53 480 15.99 480c1.96 0 3.97-.37 5.96-1.16L192 416l172 60.71a63.98 63.98 0 0 0 40.05.15l151.83-52.81A31.996 31.996 0 0 0 576 394.34V48.02c0-9.19-7.53-16.02-15.98-16.02zM224 90.42l128 45.19v285.97l-128-45.19V90.42zM48 418.05V129.07l128-44.53v286.2l-.64.23L48 418.05zm480-35.13l-128 44.53V141.26l.64-.24L528 93.95v288.97z"],
	"meh": [496, 512, [], "f11a", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm-80-216c17.7 0 32-14.3 32-32s-14.3-32-32-32-32 14.3-32 32 14.3 32 32 32zm160-64c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32zm8 144H160c-13.2 0-24 10.8-24 24s10.8 24 24 24h176c13.2 0 24-10.8 24-24s-10.8-24-24-24z"],
	"meh-blank": [496, 512, [], "f5a4", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm-80-280c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32zm160 0c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32z"],
	"meh-rolling-eyes": [496, 512, [], "f5a5", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm88-304c-39.8 0-72 32.2-72 72s32.2 72 72 72 72-32.2 72-72-32.2-72-72-72zm0 112c-22.1 0-40-17.9-40-40 0-13.6 7.3-25.1 17.7-32.3-1 2.6-1.7 5.3-1.7 8.3 0 13.3 10.7 24 24 24s24-10.7 24-24c0-2.9-.7-5.7-1.7-8.3 10.4 7.2 17.7 18.7 17.7 32.3 0 22.1-17.9 40-40 40zm-104-40c0-39.8-32.2-72-72-72s-72 32.2-72 72 32.2 72 72 72 72-32.2 72-72zm-112 0c0-13.6 7.3-25.1 17.7-32.3-1 2.6-1.7 5.3-1.7 8.3 0 13.3 10.7 24 24 24s24-10.7 24-24c0-2.9-.7-5.7-1.7-8.3 10.4 7.2 17.7 18.7 17.7 32.3 0 22.1-17.9 40-40 40s-40-17.9-40-40zm192 128H184c-13.2 0-24 10.8-24 24s10.8 24 24 24h128c13.2 0 24-10.8 24-24s-10.8-24-24-24z"],
	"minus-square": [448, 512, [], "f146", "M108 284c-6.6 0-12-5.4-12-12v-32c0-6.6 5.4-12 12-12h232c6.6 0 12 5.4 12 12v32c0 6.6-5.4 12-12 12H108zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-48 346V86c0-3.3-2.7-6-6-6H54c-3.3 0-6 2.7-6 6v340c0 3.3 2.7 6 6 6h340c3.3 0 6-2.7 6-6z"],
	"money-bill-alt": [640, 512, [], "f3d1", "M320 144c-53.02 0-96 50.14-96 112 0 61.85 42.98 112 96 112 53 0 96-50.13 96-112 0-61.86-42.98-112-96-112zm40 168c0 4.42-3.58 8-8 8h-64c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h16v-55.44l-.47.31a7.992 7.992 0 0 1-11.09-2.22l-8.88-13.31a7.992 7.992 0 0 1 2.22-11.09l15.33-10.22a23.99 23.99 0 0 1 13.31-4.03H328c4.42 0 8 3.58 8 8v88h16c4.42 0 8 3.58 8 8v16zM608 64H32C14.33 64 0 78.33 0 96v320c0 17.67 14.33 32 32 32h576c17.67 0 32-14.33 32-32V96c0-17.67-14.33-32-32-32zm-16 272c-35.35 0-64 28.65-64 64H112c0-35.35-28.65-64-64-64V176c35.35 0 64-28.65 64-64h416c0 35.35 28.65 64 64 64v160z"],
	"moon": [512, 512, [], "f186", "M279.135 512c78.756 0 150.982-35.804 198.844-94.775 28.27-34.831-2.558-85.722-46.249-77.401-82.348 15.683-158.272-47.268-158.272-130.792 0-48.424 26.06-92.292 67.434-115.836 38.745-22.05 28.999-80.788-15.022-88.919A257.936 257.936 0 0 0 279.135 0c-141.36 0-256 114.575-256 256 0 141.36 114.576 256 256 256zm0-464c12.985 0 25.689 1.201 38.016 3.478-54.76 31.163-91.693 90.042-91.693 157.554 0 113.848 103.641 199.2 215.252 177.944C402.574 433.964 344.366 464 279.135 464c-114.875 0-208-93.125-208-208s93.125-208 208-208z"],
	"newspaper": [576, 512, [], "f1ea", "M552 64H112c-20.858 0-38.643 13.377-45.248 32H24c-13.255 0-24 10.745-24 24v272c0 30.928 25.072 56 56 56h496c13.255 0 24-10.745 24-24V88c0-13.255-10.745-24-24-24zM48 392V144h16v248c0 4.411-3.589 8-8 8s-8-3.589-8-8zm480 8H111.422c.374-2.614.578-5.283.578-8V112h416v288zM172 280h136c6.627 0 12-5.373 12-12v-96c0-6.627-5.373-12-12-12H172c-6.627 0-12 5.373-12 12v96c0 6.627 5.373 12 12 12zm28-80h80v40h-80v-40zm-40 140v-24c0-6.627 5.373-12 12-12h136c6.627 0 12 5.373 12 12v24c0 6.627-5.373 12-12 12H172c-6.627 0-12-5.373-12-12zm192 0v-24c0-6.627 5.373-12 12-12h104c6.627 0 12 5.373 12 12v24c0 6.627-5.373 12-12 12H364c-6.627 0-12-5.373-12-12zm0-144v-24c0-6.627 5.373-12 12-12h104c6.627 0 12 5.373 12 12v24c0 6.627-5.373 12-12 12H364c-6.627 0-12-5.373-12-12zm0 72v-24c0-6.627 5.373-12 12-12h104c6.627 0 12 5.373 12 12v24c0 6.627-5.373 12-12 12H364c-6.627 0-12-5.373-12-12z"],
	"object-group": [512, 512, [], "f247", "M500 128c6.627 0 12-5.373 12-12V44c0-6.627-5.373-12-12-12h-72c-6.627 0-12 5.373-12 12v12H96V44c0-6.627-5.373-12-12-12H12C5.373 32 0 37.373 0 44v72c0 6.627 5.373 12 12 12h12v256H12c-6.627 0-12 5.373-12 12v72c0 6.627 5.373 12 12 12h72c6.627 0 12-5.373 12-12v-12h320v12c0 6.627 5.373 12 12 12h72c6.627 0 12-5.373 12-12v-72c0-6.627-5.373-12-12-12h-12V128h12zm-52-64h32v32h-32V64zM32 64h32v32H32V64zm32 384H32v-32h32v32zm416 0h-32v-32h32v32zm-40-64h-12c-6.627 0-12 5.373-12 12v12H96v-12c0-6.627-5.373-12-12-12H72V128h12c6.627 0 12-5.373 12-12v-12h320v12c0 6.627 5.373 12 12 12h12v256zm-36-192h-84v-52c0-6.628-5.373-12-12-12H108c-6.627 0-12 5.372-12 12v168c0 6.628 5.373 12 12 12h84v52c0 6.628 5.373 12 12 12h200c6.627 0 12-5.372 12-12V204c0-6.628-5.373-12-12-12zm-268-24h144v112H136V168zm240 176H232v-24h76c6.627 0 12-5.372 12-12v-76h56v112z"],
	"object-ungroup": [576, 512, [], "f248", "M564 224c6.627 0 12-5.373 12-12v-72c0-6.627-5.373-12-12-12h-72c-6.627 0-12 5.373-12 12v12h-88v-24h12c6.627 0 12-5.373 12-12V44c0-6.627-5.373-12-12-12h-72c-6.627 0-12 5.373-12 12v12H96V44c0-6.627-5.373-12-12-12H12C5.373 32 0 37.373 0 44v72c0 6.627 5.373 12 12 12h12v160H12c-6.627 0-12 5.373-12 12v72c0 6.627 5.373 12 12 12h72c6.627 0 12-5.373 12-12v-12h88v24h-12c-6.627 0-12 5.373-12 12v72c0 6.627 5.373 12 12 12h72c6.627 0 12-5.373 12-12v-12h224v12c0 6.627 5.373 12 12 12h72c6.627 0 12-5.373 12-12v-72c0-6.627-5.373-12-12-12h-12V224h12zM352 64h32v32h-32V64zm0 256h32v32h-32v-32zM64 352H32v-32h32v32zm0-256H32V64h32v32zm32 216v-12c0-6.627-5.373-12-12-12H72V128h12c6.627 0 12-5.373 12-12v-12h224v12c0 6.627 5.373 12 12 12h12v160h-12c-6.627 0-12 5.373-12 12v12H96zm128 136h-32v-32h32v32zm280-64h-12c-6.627 0-12 5.373-12 12v12H256v-12c0-6.627-5.373-12-12-12h-12v-24h88v12c0 6.627 5.373 12 12 12h72c6.627 0 12-5.373 12-12v-72c0-6.627-5.373-12-12-12h-12v-88h88v12c0 6.627 5.373 12 12 12h12v160zm40 64h-32v-32h32v32zm0-256h-32v-32h32v32z"],
	"paper-plane": [512, 512, [], "f1d8", "M440 6.5L24 246.4c-34.4 19.9-31.1 70.8 5.7 85.9L144 379.6V464c0 46.4 59.2 65.5 86.6 28.6l43.8-59.1 111.9 46.2c5.9 2.4 12.1 3.6 18.3 3.6 8.2 0 16.3-2.1 23.6-6.2 12.8-7.2 21.6-20 23.9-34.5l59.4-387.2c6.1-40.1-36.9-68.8-71.5-48.9zM192 464v-64.6l36.6 15.1L192 464zm212.6-28.7l-153.8-63.5L391 169.5c10.7-15.5-9.5-33.5-23.7-21.2L155.8 332.6 48 288 464 48l-59.4 387.3z"],
	"pause-circle": [512, 512, [], "f28b", "M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm0 448c-110.5 0-200-89.5-200-200S145.5 56 256 56s200 89.5 200 200-89.5 200-200 200zm96-280v160c0 8.8-7.2 16-16 16h-48c-8.8 0-16-7.2-16-16V176c0-8.8 7.2-16 16-16h48c8.8 0 16 7.2 16 16zm-112 0v160c0 8.8-7.2 16-16 16h-48c-8.8 0-16-7.2-16-16V176c0-8.8 7.2-16 16-16h48c8.8 0 16 7.2 16 16z"],
	"play-circle": [512, 512, [], "f144", "M371.7 238l-176-107c-15.8-8.8-35.7 2.5-35.7 21v208c0 18.4 19.8 29.8 35.7 21l176-101c16.4-9.1 16.4-32.8 0-42zM504 256C504 119 393 8 256 8S8 119 8 256s111 248 248 248 248-111 248-248zm-448 0c0-110.5 89.5-200 200-200s200 89.5 200 200-89.5 200-200 200S56 366.5 56 256z"],
	"plus-square": [448, 512, [], "f0fe", "M352 240v32c0 6.6-5.4 12-12 12h-88v88c0 6.6-5.4 12-12 12h-32c-6.6 0-12-5.4-12-12v-88h-88c-6.6 0-12-5.4-12-12v-32c0-6.6 5.4-12 12-12h88v-88c0-6.6 5.4-12 12-12h32c6.6 0 12 5.4 12 12v88h88c6.6 0 12 5.4 12 12zm96-160v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-48 346V86c0-3.3-2.7-6-6-6H54c-3.3 0-6 2.7-6 6v340c0 3.3 2.7 6 6 6h340c3.3 0 6-2.7 6-6z"],
	"question-circle": [512, 512, [], "f059", "M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 448c-110.532 0-200-89.431-200-200 0-110.495 89.472-200 200-200 110.491 0 200 89.471 200 200 0 110.53-89.431 200-200 200zm107.244-255.2c0 67.052-72.421 68.084-72.421 92.863V300c0 6.627-5.373 12-12 12h-45.647c-6.627 0-12-5.373-12-12v-8.659c0-35.745 27.1-50.034 47.579-61.516 17.561-9.845 28.324-16.541 28.324-29.579 0-17.246-21.999-28.693-39.784-28.693-23.189 0-33.894 10.977-48.942 29.969-4.057 5.12-11.46 6.071-16.666 2.124l-27.824-21.098c-5.107-3.872-6.251-11.066-2.644-16.363C184.846 131.491 214.94 112 261.794 112c49.071 0 101.45 38.304 101.45 88.8zM298 368c0 23.159-18.841 42-42 42s-42-18.841-42-42 18.841-42 42-42 42 18.841 42 42z"],
	"registered": [512, 512, [], "f25d", "M256 8C119.033 8 8 119.033 8 256s111.033 248 248 248 248-111.033 248-248S392.967 8 256 8zm0 448c-110.532 0-200-89.451-200-200 0-110.531 89.451-200 200-200 110.532 0 200 89.451 200 200 0 110.532-89.451 200-200 200zm110.442-81.791c-53.046-96.284-50.25-91.468-53.271-96.085 24.267-13.879 39.482-41.563 39.482-73.176 0-52.503-30.247-85.252-101.498-85.252h-78.667c-6.617 0-12 5.383-12 12V380c0 6.617 5.383 12 12 12h38.568c6.617 0 12-5.383 12-12v-83.663h31.958l47.515 89.303a11.98 11.98 0 0 0 10.593 6.36h42.81c9.14 0 14.914-9.799 10.51-17.791zM256.933 239.906h-33.875v-64.14h27.377c32.417 0 38.929 12.133 38.929 31.709-.001 20.913-11.518 32.431-32.431 32.431z"],
	"sad-cry": [496, 512, [], "f5b3", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm144 386.4V280c0-13.2-10.8-24-24-24s-24 10.8-24 24v151.4C315.5 447 282.8 456 248 456s-67.5-9-96-24.6V280c0-13.2-10.8-24-24-24s-24 10.8-24 24v114.4c-34.6-36-56-84.7-56-138.4 0-110.3 89.7-200 200-200s200 89.7 200 200c0 53.7-21.4 102.5-56 138.4zM205.8 234.5c4.4-2.4 6.9-7.4 6.1-12.4-4-25.2-34.2-42.1-59.8-42.1s-55.9 16.9-59.8 42.1c-.8 5 1.7 10 6.1 12.4 4.4 2.4 9.9 1.8 13.7-1.6l9.5-8.5c14.8-13.2 46.2-13.2 61 0l9.5 8.5c2.5 2.3 7.9 4.8 13.7 1.6zM344 180c-25.7 0-55.9 16.9-59.8 42.1-.8 5 1.7 10 6.1 12.4 4.5 2.4 9.9 1.8 13.7-1.6l9.5-8.5c14.8-13.2 46.2-13.2 61 0l9.5 8.5c2.5 2.2 8 4.7 13.7 1.6 4.4-2.4 6.9-7.4 6.1-12.4-3.9-25.2-34.1-42.1-59.8-42.1zm-96 92c-30.9 0-56 28.7-56 64s25.1 64 56 64 56-28.7 56-64-25.1-64-56-64z"],
	"sad-tear": [496, 512, [], "f5b4", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm8-152c-13.2 0-24 10.8-24 24s10.8 24 24 24c23.8 0 46.3 10.5 61.6 28.8 8.1 9.8 23.2 11.9 33.8 3.1 10.2-8.5 11.6-23.6 3.1-33.8C330 320.8 294.1 304 256 304zm-88-64c17.7 0 32-14.3 32-32s-14.3-32-32-32-32 14.3-32 32 14.3 32 32 32zm160-64c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32zm-165.6 98.8C151 290.1 126 325.4 126 342.9c0 22.7 18.8 41.1 42 41.1s42-18.4 42-41.1c0-17.5-25-52.8-36.4-68.1-2.8-3.7-8.4-3.7-11.2 0z"],
	"save": [448, 512, [], "f0c7", "M433.941 129.941l-83.882-83.882A48 48 0 0 0 316.118 32H48C21.49 32 0 53.49 0 80v352c0 26.51 21.49 48 48 48h352c26.51 0 48-21.49 48-48V163.882a48 48 0 0 0-14.059-33.941zM272 80v80H144V80h128zm122 352H54a6 6 0 0 1-6-6V86a6 6 0 0 1 6-6h42v104c0 13.255 10.745 24 24 24h176c13.255 0 24-10.745 24-24V83.882l78.243 78.243a6 6 0 0 1 1.757 4.243V426a6 6 0 0 1-6 6zM224 232c-48.523 0-88 39.477-88 88s39.477 88 88 88 88-39.477 88-88-39.477-88-88-88zm0 128c-22.056 0-40-17.944-40-40s17.944-40 40-40 40 17.944 40 40-17.944 40-40 40z"],
	"share-square": [576, 512, [], "f14d", "M561.938 158.06L417.94 14.092C387.926-15.922 336 5.097 336 48.032v57.198c-42.45 1.88-84.03 6.55-120.76 17.99-35.17 10.95-63.07 27.58-82.91 49.42C108.22 199.2 96 232.6 96 271.94c0 61.697 33.178 112.455 84.87 144.76 37.546 23.508 85.248-12.651 71.02-55.74-15.515-47.119-17.156-70.923 84.11-78.76V336c0 42.993 51.968 63.913 81.94 33.94l143.998-144c18.75-18.74 18.75-49.14 0-67.88zM384 336V232.16C255.309 234.082 166.492 255.35 206.31 376 176.79 357.55 144 324.08 144 271.94c0-109.334 129.14-118.947 240-119.85V48l144 144-144 144zm24.74 84.493a82.658 82.658 0 0 0 20.974-9.303c7.976-4.952 18.286.826 18.286 10.214V464c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48V112c0-26.51 21.49-48 48-48h132c6.627 0 12 5.373 12 12v4.486c0 4.917-2.987 9.369-7.569 11.152-13.702 5.331-26.396 11.537-38.05 18.585a12.138 12.138 0 0 1-6.28 1.777H54a6 6 0 0 0-6 6v340a6 6 0 0 0 6 6h340a6 6 0 0 0 6-6v-25.966c0-5.37 3.579-10.059 8.74-11.541z"],
	"smile": [496, 512, [], "f118", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm-80-216c17.7 0 32-14.3 32-32s-14.3-32-32-32-32 14.3-32 32 14.3 32 32 32zm160 0c17.7 0 32-14.3 32-32s-14.3-32-32-32-32 14.3-32 32 14.3 32 32 32zm4 72.6c-20.8 25-51.5 39.4-84 39.4s-63.2-14.3-84-39.4c-8.5-10.2-23.7-11.5-33.8-3.1-10.2 8.5-11.5 23.6-3.1 33.8 30 36 74.1 56.6 120.9 56.6s90.9-20.6 120.9-56.6c8.5-10.2 7.1-25.3-3.1-33.8-10.1-8.4-25.3-7.1-33.8 3.1z"],
	"smile-beam": [496, 512, [], "f5b8", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm84-143.4c-20.8 25-51.5 39.4-84 39.4s-63.2-14.3-84-39.4c-8.5-10.2-23.6-11.5-33.8-3.1-10.2 8.5-11.5 23.6-3.1 33.8 30 36 74.1 56.6 120.9 56.6s90.9-20.6 120.9-56.6c8.5-10.2 7.1-25.3-3.1-33.8-10.2-8.4-25.3-7.1-33.8 3.1zM136.5 211c7.7-13.7 19.2-21.6 31.5-21.6s23.8 7.9 31.5 21.6l9.5 17c2.1 3.7 6.2 4.7 9.3 3.7 3.6-1.1 6-4.5 5.7-8.3-3.3-42.1-32.2-71.4-56-71.4s-52.7 29.3-56 71.4c-.3 3.7 2.1 7.2 5.7 8.3 3.4 1.1 7.4-.5 9.3-3.7l9.5-17zM328 152c-23.8 0-52.7 29.3-56 71.4-.3 3.7 2.1 7.2 5.7 8.3 3.5 1.1 7.4-.5 9.3-3.7l9.5-17c7.7-13.7 19.2-21.6 31.5-21.6s23.8 7.9 31.5 21.6l9.5 17c2.1 3.7 6.2 4.7 9.3 3.7 3.6-1.1 6-4.5 5.7-8.3-3.3-42.1-32.2-71.4-56-71.4z"],
	"smile-wink": [496, 512, [], "f4da", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm117.8-146.4c-10.2-8.5-25.3-7.1-33.8 3.1-20.8 25-51.5 39.4-84 39.4s-63.2-14.3-84-39.4c-8.5-10.2-23.7-11.5-33.8-3.1-10.2 8.5-11.5 23.6-3.1 33.8 30 36 74.1 56.6 120.9 56.6s90.9-20.6 120.9-56.6c8.5-10.2 7.1-25.3-3.1-33.8zM168 240c17.7 0 32-14.3 32-32s-14.3-32-32-32-32 14.3-32 32 14.3 32 32 32zm160-60c-25.7 0-55.9 16.9-59.9 42.1-1.7 11.2 11.5 18.2 19.8 10.8l9.5-8.5c14.8-13.2 46.2-13.2 61 0l9.5 8.5c8.5 7.4 21.6.3 19.8-10.8-3.8-25.2-34-42.1-59.7-42.1z"],
	"snowflake": [448, 512, [], "f2dc", "M440.1 355.2l-39.2-23 34.1-9.3c8.4-2.3 13.4-11.1 11.1-19.6l-4.1-15.5c-2.2-8.5-10.9-13.6-19.3-11.3L343 298.2 271.2 256l71.9-42.2 79.7 21.7c8.4 2.3 17-2.8 19.3-11.3l4.1-15.5c2.2-8.5-2.7-17.3-11.1-19.6l-34.1-9.3 39.2-23c7.5-4.4 10.1-14.2 5.8-21.9l-7.9-13.9c-4.3-7.7-14-10.3-21.5-5.9l-39.2 23 9.1-34.7c2.2-8.5-2.7-17.3-11.1-19.6l-15.2-4.1c-8.4-2.3-17 2.8-19.3 11.3l-21.3 81-71.9 42.2v-84.5L306 70.4c6.1-6.2 6.1-16.4 0-22.6l-11.1-11.3c-6.1-6.2-16.1-6.2-22.2 0l-24.9 25.4V16c0-8.8-7-16-15.7-16h-15.7c-8.7 0-15.7 7.2-15.7 16v46.1l-24.9-25.4c-6.1-6.2-16.1-6.2-22.2 0L142.1 48c-6.1 6.2-6.1 16.4 0 22.6l58.3 59.3v84.5l-71.9-42.2-21.3-81c-2.2-8.5-10.9-13.6-19.3-11.3L72.7 84c-8.4 2.3-13.4 11.1-11.1 19.6l9.1 34.7-39.2-23c-7.5-4.4-17.1-1.8-21.5 5.9l-7.9 13.9c-4.3 7.7-1.8 17.4 5.8 21.9l39.2 23-34.1 9.1c-8.4 2.3-13.4 11.1-11.1 19.6L6 224.2c2.2 8.5 10.9 13.6 19.3 11.3l79.7-21.7 71.9 42.2-71.9 42.2-79.7-21.7c-8.4-2.3-17 2.8-19.3 11.3l-4.1 15.5c-2.2 8.5 2.7 17.3 11.1 19.6l34.1 9.3-39.2 23c-7.5 4.4-10.1 14.2-5.8 21.9L10 391c4.3 7.7 14 10.3 21.5 5.9l39.2-23-9.1 34.7c-2.2 8.5 2.7 17.3 11.1 19.6l15.2 4.1c8.4 2.3 17-2.8 19.3-11.3l21.3-81 71.9-42.2v84.5l-58.3 59.3c-6.1 6.2-6.1 16.4 0 22.6l11.1 11.3c6.1 6.2 16.1 6.2 22.2 0l24.9-25.4V496c0 8.8 7 16 15.7 16h15.7c8.7 0 15.7-7.2 15.7-16v-46.1l24.9 25.4c6.1 6.2 16.1 6.2 22.2 0l11.1-11.3c6.1-6.2 6.1-16.4 0-22.6l-58.3-59.3v-84.5l71.9 42.2 21.3 81c2.2 8.5 10.9 13.6 19.3 11.3L375 428c8.4-2.3 13.4-11.1 11.1-19.6l-9.1-34.7 39.2 23c7.5 4.4 17.1 1.8 21.5-5.9l7.9-13.9c4.6-7.5 2.1-17.3-5.5-21.7z"],
	"square": [448, 512, [], "f0c8", "M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-6 400H54c-3.3 0-6-2.7-6-6V86c0-3.3 2.7-6 6-6h340c3.3 0 6 2.7 6 6v340c0 3.3-2.7 6-6 6z"],
	"star": [576, 512, [], "f005", "M528.1 171.5L382 150.2 316.7 17.8c-11.7-23.6-45.6-23.9-57.4 0L194 150.2 47.9 171.5c-26.2 3.8-36.7 36.1-17.7 54.6l105.7 103-25 145.5c-4.5 26.3 23.2 46 46.4 33.7L288 439.6l130.7 68.7c23.2 12.2 50.9-7.4 46.4-33.7l-25-145.5 105.7-103c19-18.5 8.5-50.8-17.7-54.6zM388.6 312.3l23.7 138.4L288 385.4l-124.3 65.3 23.7-138.4-100.6-98 139-20.2 62.2-126 62.2 126 139 20.2-100.6 98z"],
	"star-half": [576, 512, [], "f089", "M288 385.3l-124.3 65.4 23.7-138.4-100.6-98 139-20.2 62.2-126V0c-11.4 0-22.8 5.9-28.7 17.8L194 150.2 47.9 171.4c-26.2 3.8-36.7 36.1-17.7 54.6l105.7 103-25 145.5c-4.5 26.1 23 46 46.4 33.7L288 439.6v-54.3z"],
	"sticky-note": [448, 512, [], "f249", "M448 348.106V80c0-26.51-21.49-48-48-48H48C21.49 32 0 53.49 0 80v351.988c0 26.51 21.49 48 48 48h268.118a48 48 0 0 0 33.941-14.059l83.882-83.882A48 48 0 0 0 448 348.106zm-128 80v-76.118h76.118L320 428.106zM400 80v223.988H296c-13.255 0-24 10.745-24 24v104H48V80h352z"],
	"stop-circle": [512, 512, [], "f28d", "M504 256C504 119 393 8 256 8S8 119 8 256s111 248 248 248 248-111 248-248zm-448 0c0-110.5 89.5-200 200-200s200 89.5 200 200-89.5 200-200 200S56 366.5 56 256zm296-80v160c0 8.8-7.2 16-16 16H176c-8.8 0-16-7.2-16-16V176c0-8.8 7.2-16 16-16h160c8.8 0 16 7.2 16 16z"],
	"sun": [512, 512, [], "f185", "M494.2 221.9l-59.8-40.5 13.7-71c2.6-13.2-1.6-26.8-11.1-36.4-9.6-9.5-23.2-13.7-36.2-11.1l-70.9 13.7-40.4-59.9c-15.1-22.3-51.9-22.3-67 0l-40.4 59.9-70.8-13.7C98 60.4 84.5 64.5 75 74.1c-9.5 9.6-13.7 23.1-11.1 36.3l13.7 71-59.8 40.5C6.6 229.5 0 242 0 255.5s6.7 26 17.8 33.5l59.8 40.5-13.7 71c-2.6 13.2 1.6 26.8 11.1 36.3 9.5 9.5 22.9 13.7 36.3 11.1l70.8-13.7 40.4 59.9C230 505.3 242.6 512 256 512s26-6.7 33.5-17.8l40.4-59.9 70.9 13.7c13.4 2.7 26.8-1.6 36.3-11.1 9.5-9.5 13.6-23.1 11.1-36.3l-13.7-71 59.8-40.5c11.1-7.5 17.8-20.1 17.8-33.5-.1-13.6-6.7-26.1-17.9-33.7zm-112.9 85.6l17.6 91.2-91-17.6L256 458l-51.9-77-90.9 17.6 17.6-91.2-76.8-52 76.8-52-17.6-91.2 91 17.6L256 53l51.9 76.9 91-17.6-17.6 91.1 76.8 52-76.8 52.1zM256 152c-57.3 0-104 46.7-104 104s46.7 104 104 104 104-46.7 104-104-46.7-104-104-104zm0 160c-30.9 0-56-25.1-56-56s25.1-56 56-56 56 25.1 56 56-25.1 56-56 56z"],
	"surprise": [496, 512, [], "f5c2", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm0-176c-35.3 0-64 28.7-64 64s28.7 64 64 64 64-28.7 64-64-28.7-64-64-64zm-48-72c0-17.7-14.3-32-32-32s-32 14.3-32 32 14.3 32 32 32 32-14.3 32-32zm128-32c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32z"],
	"thumbs-down": [512, 512, [], "f165", "M466.27 225.31c4.674-22.647.864-44.538-8.99-62.99 2.958-23.868-4.021-48.565-17.34-66.99C438.986 39.423 404.117 0 327 0c-7 0-15 .01-22.22.01C201.195.01 168.997 40 128 40h-10.845c-5.64-4.975-13.042-8-21.155-8H32C14.327 32 0 46.327 0 64v240c0 17.673 14.327 32 32 32h64c11.842 0 22.175-6.438 27.708-16h7.052c19.146 16.953 46.013 60.653 68.76 83.4 13.667 13.667 10.153 108.6 71.76 108.6 57.58 0 95.27-31.936 95.27-104.73 0-18.41-3.93-33.73-8.85-46.54h36.48c48.602 0 85.82-41.565 85.82-85.58 0-19.15-4.96-34.99-13.73-49.84zM64 296c-13.255 0-24-10.745-24-24s10.745-24 24-24 24 10.745 24 24-10.745 24-24 24zm330.18 16.73H290.19c0 37.82 28.36 55.37 28.36 94.54 0 23.75 0 56.73-47.27 56.73-18.91-18.91-9.46-66.18-37.82-94.54C206.9 342.89 167.28 272 138.92 272H128V85.83c53.611 0 100.001-37.82 171.64-37.82h37.82c35.512 0 60.82 17.12 53.12 65.9 15.2 8.16 26.5 36.44 13.94 57.57 21.581 20.384 18.699 51.065 5.21 65.62 9.45 0 22.36 18.91 22.27 37.81-.09 18.91-16.71 37.82-37.82 37.82z"],
	"thumbs-up": [512, 512, [], "f164", "M466.27 286.69C475.04 271.84 480 256 480 236.85c0-44.015-37.218-85.58-85.82-85.58H357.7c4.92-12.81 8.85-28.13 8.85-46.54C366.55 31.936 328.86 0 271.28 0c-61.607 0-58.093 94.933-71.76 108.6-22.747 22.747-49.615 66.447-68.76 83.4H32c-17.673 0-32 14.327-32 32v240c0 17.673 14.327 32 32 32h64c14.893 0 27.408-10.174 30.978-23.95 44.509 1.001 75.06 39.94 177.802 39.94 7.22 0 15.22.01 22.22.01 77.117 0 111.986-39.423 112.94-95.33 13.319-18.425 20.299-43.122 17.34-66.99 9.854-18.452 13.664-40.343 8.99-62.99zm-61.75 53.83c12.56 21.13 1.26 49.41-13.94 57.57 7.7 48.78-17.608 65.9-53.12 65.9h-37.82c-71.639 0-118.029-37.82-171.64-37.82V240h10.92c28.36 0 67.98-70.89 94.54-97.46 28.36-28.36 18.91-75.63 37.82-94.54 47.27 0 47.27 32.98 47.27 56.73 0 39.17-28.36 56.72-28.36 94.54h103.99c21.11 0 37.73 18.91 37.82 37.82.09 18.9-12.82 37.81-22.27 37.81 13.489 14.555 16.371 45.236-5.21 65.62zM88 432c0 13.255-10.745 24-24 24s-24-10.745-24-24 10.745-24 24-24 24 10.745 24 24z"],
	"times-circle": [512, 512, [], "f057", "M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm0 448c-110.5 0-200-89.5-200-200S145.5 56 256 56s200 89.5 200 200-89.5 200-200 200zm101.8-262.2L295.6 256l62.2 62.2c4.7 4.7 4.7 12.3 0 17l-22.6 22.6c-4.7 4.7-12.3 4.7-17 0L256 295.6l-62.2 62.2c-4.7 4.7-12.3 4.7-17 0l-22.6-22.6c-4.7-4.7-4.7-12.3 0-17l62.2-62.2-62.2-62.2c-4.7-4.7-4.7-12.3 0-17l22.6-22.6c4.7-4.7 12.3-4.7 17 0l62.2 62.2 62.2-62.2c4.7-4.7 12.3-4.7 17 0l22.6 22.6c4.7 4.7 4.7 12.3 0 17z"],
	"tired": [496, 512, [], "f5c8", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-110.3 0-200-89.7-200-200S137.7 56 248 56s200 89.7 200 200-89.7 200-200 200zm129.1-303.8c-3.8-4.4-10.3-5.4-15.3-2.5l-80 48c-3.6 2.2-5.8 6.1-5.8 10.3s2.2 8.1 5.8 10.3l80 48c5.4 3.2 11.8 1.6 15.3-2.5 3.8-4.5 3.9-11 .1-15.5L343.6 208l33.6-40.3c3.8-4.5 3.7-11.1-.1-15.5zM220 208c0-4.2-2.2-8.1-5.8-10.3l-80-48c-5-3-11.5-1.9-15.3 2.5-3.8 4.5-3.9 11-.1 15.5l33.6 40.3-33.6 40.3c-3.8 4.5-3.7 11 .1 15.5 3.5 4.1 9.9 5.7 15.3 2.5l80-48c3.6-2.2 5.8-6.1 5.8-10.3zm28 64c-45.4 0-100.9 38.3-107.8 93.3-1.5 11.8 6.9 21.6 15.5 17.9C178.4 373.5 212 368 248 368s69.6 5.5 92.3 15.2c8.5 3.7 17-6 15.5-17.9-6.9-55-62.4-93.3-107.8-93.3z"],
	"trash-alt": [448, 512, [], "f2ed", "M268 416h24a12 12 0 0 0 12-12V188a12 12 0 0 0-12-12h-24a12 12 0 0 0-12 12v216a12 12 0 0 0 12 12zM432 80h-82.41l-34-56.7A48 48 0 0 0 274.41 0H173.59a48 48 0 0 0-41.16 23.3L98.41 80H16A16 16 0 0 0 0 96v16a16 16 0 0 0 16 16h16v336a48 48 0 0 0 48 48h288a48 48 0 0 0 48-48V128h16a16 16 0 0 0 16-16V96a16 16 0 0 0-16-16zM171.84 50.91A6 6 0 0 1 177 48h94a6 6 0 0 1 5.15 2.91L293.61 80H154.39zM368 464H80V128h288zm-212-48h24a12 12 0 0 0 12-12V188a12 12 0 0 0-12-12h-24a12 12 0 0 0-12 12v216a12 12 0 0 0 12 12z"],
	"user": [448, 512, [], "f007", "M313.6 304c-28.7 0-42.5 16-89.6 16-47.1 0-60.8-16-89.6-16C60.2 304 0 364.2 0 438.4V464c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48v-25.6c0-74.2-60.2-134.4-134.4-134.4zM400 464H48v-25.6c0-47.6 38.8-86.4 86.4-86.4 14.6 0 38.3 16 89.6 16 51.7 0 74.9-16 89.6-16 47.6 0 86.4 38.8 86.4 86.4V464zM224 288c79.5 0 144-64.5 144-144S303.5 0 224 0 80 64.5 80 144s64.5 144 144 144zm0-240c52.9 0 96 43.1 96 96s-43.1 96-96 96-96-43.1-96-96 43.1-96 96-96z"],
	"user-circle": [496, 512, [], "f2bd", "M248 104c-53 0-96 43-96 96s43 96 96 96 96-43 96-96-43-96-96-96zm0 144c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm0-240C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 448c-49.7 0-95.1-18.3-130.1-48.4 14.9-23 40.4-38.6 69.6-39.5 20.8 6.4 40.6 9.6 60.5 9.6s39.7-3.1 60.5-9.6c29.2 1 54.7 16.5 69.6 39.5-35 30.1-80.4 48.4-130.1 48.4zm162.7-84.1c-24.4-31.4-62.1-51.9-105.1-51.9-10.2 0-26 9.6-57.6 9.6-31.5 0-47.4-9.6-57.6-9.6-42.9 0-80.6 20.5-105.1 51.9C61.9 339.2 48 299.2 48 256c0-110.3 89.7-200 200-200s200 89.7 200 200c0 43.2-13.9 83.2-37.3 115.9z"],
	"window-close": [512, 512, [], "f410", "M464 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h416c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm0 394c0 3.3-2.7 6-6 6H54c-3.3 0-6-2.7-6-6V86c0-3.3 2.7-6 6-6h404c3.3 0 6 2.7 6 6v340zM356.5 194.6L295.1 256l61.4 61.4c4.6 4.6 4.6 12.1 0 16.8l-22.3 22.3c-4.6 4.6-12.1 4.6-16.8 0L256 295.1l-61.4 61.4c-4.6 4.6-12.1 4.6-16.8 0l-22.3-22.3c-4.6-4.6-4.6-12.1 0-16.8l61.4-61.4-61.4-61.4c-4.6-4.6-4.6-12.1 0-16.8l22.3-22.3c4.6-4.6 12.1-4.6 16.8 0l61.4 61.4 61.4-61.4c4.6-4.6 12.1-4.6 16.8 0l22.3 22.3c4.7 4.6 4.7 12.1 0 16.8z"],
	"window-maximize": [512, 512, [], "f2d0", "M464 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h416c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm0 394c0 3.3-2.7 6-6 6H54c-3.3 0-6-2.7-6-6V192h416v234z"],
	"window-minimize": [512, 512, [], "f2d1", "M480 480H32c-17.7 0-32-14.3-32-32s14.3-32 32-32h448c17.7 0 32 14.3 32 32s-14.3 32-32 32z"],
	"window-restore": [512, 512, [], "f2d2", "M464 0H144c-26.5 0-48 21.5-48 48v48H48c-26.5 0-48 21.5-48 48v320c0 26.5 21.5 48 48 48h320c26.5 0 48-21.5 48-48v-48h48c26.5 0 48-21.5 48-48V48c0-26.5-21.5-48-48-48zm-96 464H48V256h320v208zm96-96h-48V144c0-26.5-21.5-48-48-48H144V48h320v320z"]
  }
}
assets/lib/font-awesome/json/brands.json000064400001557305151327220410014352 0ustar00{
  "icons": {
	"500px": [448, 512, [], "f26e", "M103.3 344.3c-6.5-14.2-6.9-18.3 7.4-23.1 25.6-8 8 9.2 43.2 49.2h.3v-93.9c1.2-50.2 44-92.2 97.7-92.2 53.9 0 97.7 43.5 97.7 96.8 0 63.4-60.8 113.2-128.5 93.3-10.5-4.2-2.1-31.7 8.5-28.6 53 0 89.4-10.1 89.4-64.4 0-61-77.1-89.6-116.9-44.6-23.5 26.4-17.6 42.1-17.6 157.6 50.7 31 118.3 22 160.4-20.1 24.8-24.8 38.5-58 38.5-93 0-35.2-13.8-68.2-38.8-93.3-24.8-24.8-57.8-38.5-93.3-38.5s-68.8 13.8-93.5 38.5c-.3.3-16 16.5-21.2 23.9l-.5.6c-3.3 4.7-6.3 9.1-20.1 6.1-6.9-1.7-14.3-5.8-14.3-11.8V20c0-5 3.9-10.5 10.5-10.5h241.3c8.3 0 8.3 11.6 8.3 15.1 0 3.9 0 15.1-8.3 15.1H130.3v132.9h.3c104.2-109.8 282.8-36 282.8 108.9 0 178.1-244.8 220.3-310.1 62.8zm63.3-260.8c-.5 4.2 4.6 24.5 14.6 20.6C306 56.6 384 144.5 390.6 144.5c4.8 0 22.8-15.3 14.3-22.8-93.2-89-234.5-57-238.3-38.2zM393 414.7C283 524.6 94 475.5 61 310.5c0-12.2-30.4-7.4-28.9 3.3 24 173.4 246 256.9 381.6 121.3 6.9-7.8-12.6-28.4-20.7-20.4zM213.6 306.6c0 4 4.3 7.3 5.5 8.5 3 3 6.1 4.4 8.5 4.4 3.8 0 2.6.2 22.3-19.5 19.6 19.3 19.1 19.5 22.3 19.5 5.4 0 18.5-10.4 10.7-18.2L265.6 284l18.2-18.2c6.3-6.8-10.1-21.8-16.2-15.7L249.7 268c-18.6-18.8-18.4-19.5-21.5-19.5-5 0-18 11.7-12.4 17.3L234 284c-18.1 17.9-20.4 19.2-20.4 22.6z"],
	"accessible-icon": [448, 512, [], "f368", "M423.9 255.8L411 413.1c-3.3 40.7-63.9 35.1-60.6-4.9l10-122.5-41.1 2.3c10.1 20.7 15.8 43.9 15.8 68.5 0 41.2-16.1 78.7-42.3 106.5l-39.3-39.3c57.9-63.7 13.1-167.2-74-167.2-25.9 0-49.5 9.9-67.2 26L73 243.2c22-20.7 50.1-35.1 81.4-40.2l75.3-85.7-42.6-24.8-51.6 46c-30 26.8-70.6-18.5-40.5-45.4l68-60.7c9.8-8.8 24.1-10.2 35.5-3.6 0 0 139.3 80.9 139.5 81.1 16.2 10.1 20.7 36 6.1 52.6L285.7 229l106.1-5.9c18.5-1.1 33.6 14.4 32.1 32.7zm-64.9-154c28.1 0 50.9-22.8 50.9-50.9C409.9 22.8 387.1 0 359 0c-28.1 0-50.9 22.8-50.9 50.9 0 28.1 22.8 50.9 50.9 50.9zM179.6 456.5c-80.6 0-127.4-90.6-82.7-156.1l-39.7-39.7C36.4 287 24 320.3 24 356.4c0 130.7 150.7 201.4 251.4 122.5l-39.7-39.7c-16 10.9-35.3 17.3-56.1 17.3z"],
	"accusoft": [640, 512, [], "f369", "M322.1 252v-1l-51.2-65.8s-12 1.6-25 15.1c-9 9.3-242.1 239.1-243.4 240.9-7 10 1.6 6.8 15.7 1.7.8 0 114.5-36.6 114.5-36.6.5-.6-.1-.1.6-.6-.4-5.1-.8-26.2-1-27.7-.6-5.2 2.2-6.9 7-8.9l92.6-33.8c.6-.8 88.5-81.7 90.2-83.3zm160.1 120.1c13.3 16.1 20.7 13.3 30.8 9.3 3.2-1.2 115.4-47.6 117.8-48.9 8-4.3-1.7-16.7-7.2-23.4-2.1-2.5-205.1-245.6-207.2-248.3-9.7-12.2-14.3-12.9-38.4-12.8-10.2 0-106.8.5-116.5.6-19.2.1-32.9-.3-19.2 16.9C250 75 476.5 365.2 482.2 372.1zm152.7 1.6c-2.3-.3-24.6-4.7-38-7.2 0 0-115 50.4-117.5 51.6-16 7.3-26.9-3.2-36.7-14.6l-57.1-74c-5.4-.9-60.4-9.6-65.3-9.3-3.1.2-9.6.8-14.4 2.9-4.9 2.1-145.2 52.8-150.2 54.7-5.1 2-11.4 3.6-11.1 7.6.2 2.5 2 2.6 4.6 3.5 2.7.8 300.9 67.6 308 69.1 15.6 3.3 38.5 10.5 53.6 1.7 2.1-1.2 123.8-76.4 125.8-77.8 5.4-4 4.3-6.8-1.7-8.2z"],
	"acquisitions-incorporated": [384, 512, [], "f6af", "M357.45 468.2c-1.2-7.7-1.3-7.6-9.6-7.6-99.8.2-111.8-2.4-112.7-2.6-12.3-1.7-20.6-10.5-21-23.1-.1-1.6-.2-71.6-1-129.1-.1-4.7 1.6-6.4 5.9-7.5 12.5-3 24.9-6.1 37.3-9.7 4.3-1.3 6.8-.2 8.4 3.5 4.5 10.3 8.8 20.6 13.2 30.9 1.6 3.7.1 4.4-3.4 4.4-10-.2-20-.1-30.4-.1v27h116c-1.4-9.5-2.7-18.1-4-27.5-7 0-13.8.4-20.4-.1-22.6-1.6-18.3-4.4-84-158.6-8.8-20.1-27.9-62.1-36.5-89.2-4.4-14 5.5-25.4 18.9-26.6 18.6-1.7 37.5-1.6 56.2-2 20.6-.4 41.2-.4 61.8-.5 3.1 0 4-1.4 4.3-4.3 1.2-9.8 2.7-19.5 4-29.2.8-5.3 1.6-10.7 2.4-16.1L23.75 0c-3.6 0-5.3 1.1-4.6 5.3 2.2 13.2-.8.8 6.4 45.3 63.4 0 71.8.9 101.8.5 12.3-.2 37 3.5 37.7 22.1.4 11.4-1.1 11.3-32.6 87.4-53.8 129.8-50.7 120.3-67.3 161-1.7 4.1-3.6 5.2-7.6 5.2-8.5-.2-17-.3-25.4.1-1.9.1-5.2 1.8-5.5 3.2-1.5 8.1-2.2 16.3-3.2 24.9h114.3v-27.6c-6.9 0-33.5.4-35.3-2.9 5.3-12.3 10.4-24.4 15.7-36.7 16.3 4 31.9 7.8 47.6 11.7 3.4.9 4.6 3 4.6 6.8-.1 42.9.1 85.9.2 128.8 0 10.2-5.5 19.1-14.9 23.1-6.5 2.7-3.3 3.4-121.4 2.4-5.3 0-7.1 2-7.6 6.8-1.5 12.9-2.9 25.9-5 38.8-.8 5 1.3 5.7 5.3 5.7 183.2.6-30.7 0 337.1 0-2.5-15-4.4-29.4-6.6-43.7zm-174.9-205.7c-13.3-4.2-26.6-8.2-39.9-12.5a44.53 44.53 0 0 1-5.8-2.9c17.2-44.3 34.2-88.1 51.3-132.1 7.5 2.4 7.9-.8 9.4 0 9.3 22.5 18.1 60.1 27 82.8 6.6 16.7 13 33.5 19.7 50.9a35.78 35.78 0 0 1-3.9 2.1c-13.1 3.9-26.4 7.5-39.4 11.7a27.66 27.66 0 0 1-18.4 0z"],
	"adn": [496, 512, [], "f170", "M248 167.5l64.9 98.8H183.1l64.9-98.8zM496 256c0 136.9-111.1 248-248 248S0 392.9 0 256 111.1 8 248 8s248 111.1 248 248zm-99.8 82.7L248 115.5 99.8 338.7h30.4l33.6-51.7h168.6l33.6 51.7h30.2z"],
	"adversal": [512, 512, [], "f36a", "M482.1 32H28.7C5.8 32 0 37.9 0 60.9v390.2C0 474.4 5.8 480 28.7 480h453.4c24.4 0 29.9-5.2 29.9-29.7V62.2c0-24.6-5.4-30.2-29.9-30.2zM178.4 220.3c-27.5-20.2-72.1-8.7-84.2 23.4-4.3 11.1-9.3 9.5-17.5 8.3-9.7-1.5-17.2-3.2-22.5-5.5-28.8-11.4 8.6-55.3 24.9-64.3 41.1-21.4 83.4-22.2 125.3-4.8 40.9 16.8 34.5 59.2 34.5 128.5 2.7 25.8-4.3 58.3 9.3 88.8 1.9 4.4.4 7.9-2.7 10.7-8.4 6.7-39.3 2.2-46.6-7.4-1.9-2.2-1.8-3.6-3.9-6.2-3.6-3.9-7.3-2.2-11.9 1-57.4 36.4-140.3 21.4-147-43.3-3.1-29.3 12.4-57.1 39.6-71 38.2-19.5 112.2-11.8 114-30.9 1.1-10.2-1.9-20.1-11.3-27.3zm286.7 222c0 15.1-11.1 9.9-17.8 9.9H52.4c-7.4 0-18.2 4.8-17.8-10.7.4-13.9 10.5-9.1 17.1-9.1 132.3-.4 264.5-.4 396.8 0 6.8 0 16.6-4.4 16.6 9.9zm3.8-340.5v291c0 5.7-.7 13.9-8.1 13.9-12.4-.4-27.5 7.1-36.1-5.6-5.8-8.7-7.8-4-12.4-1.2-53.4 29.7-128.1 7.1-144.4-85.2-6.1-33.4-.7-67.1 15.7-100 11.8-23.9 56.9-76.1 136.1-30.5v-71c0-26.2-.1-26.2 26-26.2 3.1 0 6.6.4 9.7 0 10.1-.8 13.6 4.4 13.6 14.3-.1.2-.1.3-.1.5zm-51.5 232.3c-19.5 47.6-72.9 43.3-90 5.2-15.1-33.3-15.5-68.2.4-101.5 16.3-34.1 59.7-35.7 81.5-4.8 20.6 28.8 14.9 84.6 8.1 101.1zm-294.8 35.3c-7.5-1.3-33-3.3-33.7-27.8-.4-13.9 7.8-23 19.8-25.8 24.4-5.9 49.3-9.9 73.7-14.7 8.9-2 7.4 4.4 7.8 9.5 1.4 33-26.1 59.2-67.6 58.8z"],
	"affiliatetheme": [512, 512, [], "f36b", "M159.7 237.4C108.4 308.3 43.1 348.2 14 326.6-15.2 304.9 2.8 230 54.2 159.1c51.3-70.9 116.6-110.8 145.7-89.2 29.1 21.6 11.1 96.6-40.2 167.5zm351.2-57.3C437.1 303.5 319 367.8 246.4 323.7c-25-15.2-41.3-41.2-49-73.8-33.6 64.8-92.8 113.8-164.1 133.2 49.8 59.3 124.1 96.9 207 96.9 150 0 271.6-123.1 271.6-274.9.1-8.5-.3-16.8-1-25z"],
	"airbnb": [448, 512, [], "f834", "M224 373.12c-25.24-31.67-40.08-59.43-45-83.18-22.55-88 112.61-88 90.06 0-5.45 24.25-20.29 52-45 83.18zm138.15 73.23c-42.06 18.31-83.67-10.88-119.3-50.47 103.9-130.07 46.11-200-18.85-200-54.92 0-85.16 46.51-73.28 100.5 6.93 29.19 25.23 62.39 54.43 99.5-32.53 36.05-60.55 52.69-85.15 54.92-50 7.43-89.11-41.06-71.3-91.09 15.1-39.16 111.72-231.18 115.87-241.56 15.75-30.07 25.56-57.4 59.38-57.4 32.34 0 43.4 25.94 60.37 59.87 36 70.62 89.35 177.48 114.84 239.09 13.17 33.07-1.37 71.29-37.01 86.64zm47-136.12C280.27 35.93 273.13 32 224 32c-45.52 0-64.87 31.67-84.66 72.79C33.18 317.1 22.89 347.19 22 349.81-3.22 419.14 48.74 480 111.63 480c21.71 0 60.61-6.06 112.37-62.4 58.68 63.78 101.26 62.4 112.37 62.4 62.89.05 114.85-60.86 89.61-130.19.02-3.89-16.82-38.9-16.82-39.58z"],
	"algolia": [448, 512, [], "f36c", "M229.3 182.6c-49.3 0-89.2 39.9-89.2 89.2 0 49.3 39.9 89.2 89.2 89.2s89.2-39.9 89.2-89.2c0-49.3-40-89.2-89.2-89.2zm62.7 56.6l-58.9 30.6c-1.8.9-3.8-.4-3.8-2.3V201c0-1.5 1.3-2.7 2.7-2.6 26.2 1 48.9 15.7 61.1 37.1.7 1.3.2 3-1.1 3.7zM389.1 32H58.9C26.4 32 0 58.4 0 90.9V421c0 32.6 26.4 59 58.9 59H389c32.6 0 58.9-26.4 58.9-58.9V90.9C448 58.4 421.6 32 389.1 32zm-202.6 84.7c0-10.8 8.7-19.5 19.5-19.5h45.3c10.8 0 19.5 8.7 19.5 19.5v15.4c0 1.8-1.7 3-3.3 2.5-12.3-3.4-25.1-5.1-38.1-5.1-13.5 0-26.7 1.8-39.4 5.5-1.7.5-3.4-.8-3.4-2.5v-15.8zm-84.4 37l9.2-9.2c7.6-7.6 19.9-7.6 27.5 0l7.7 7.7c1.1 1.1 1 3-.3 4-6.2 4.5-12.1 9.4-17.6 14.9-5.4 5.4-10.4 11.3-14.8 17.4-1 1.3-2.9 1.5-4 .3l-7.7-7.7c-7.6-7.5-7.6-19.8 0-27.4zm127.2 244.8c-70 0-126.6-56.7-126.6-126.6s56.7-126.6 126.6-126.6c70 0 126.6 56.6 126.6 126.6 0 69.8-56.7 126.6-126.6 126.6z"],
	"alipay": [448, 512, [], "f642", "M377.74 32H70.26C31.41 32 0 63.41 0 102.26v307.48C0 448.59 31.41 480 70.26 480h307.48c38.52 0 69.76-31.08 70.26-69.6-45.96-25.62-110.59-60.34-171.6-88.44-32.07 43.97-84.14 81-148.62 81-70.59 0-93.73-45.3-97.04-76.37-3.97-39.01 14.88-81.5 99.52-81.5 35.38 0 79.35 10.25 127.13 24.96 16.53-30.09 26.45-60.34 26.45-60.34h-178.2v-16.7h92.08v-31.24H88.28v-19.01h109.44V92.34h50.92v50.42h109.44v19.01H248.63v31.24h88.77s-15.21 46.62-38.35 90.92c48.93 16.7 100.01 36.04 148.62 52.74V102.26C447.83 63.57 416.43 32 377.74 32zM47.28 322.95c.99 20.17 10.25 53.73 69.93 53.73 52.07 0 92.58-39.68 117.87-72.9-44.63-18.68-84.48-31.41-109.44-31.41-67.45 0-79.35 33.06-78.36 50.58z"],
	"amazon": [448, 512, [], "f270", "M257.2 162.7c-48.7 1.8-169.5 15.5-169.5 117.5 0 109.5 138.3 114 183.5 43.2 6.5 10.2 35.4 37.5 45.3 46.8l56.8-56S341 288.9 341 261.4V114.3C341 89 316.5 32 228.7 32 140.7 32 94 87 94 136.3l73.5 6.8c16.3-49.5 54.2-49.5 54.2-49.5 40.7-.1 35.5 29.8 35.5 69.1zm0 86.8c0 80-84.2 68-84.2 17.2 0-47.2 50.5-56.7 84.2-57.8v40.6zm136 163.5c-7.7 10-70 67-174.5 67S34.2 408.5 9.7 379c-6.8-7.7 1-11.3 5.5-8.3C88.5 415.2 203 488.5 387.7 401c7.5-3.7 13.3 2 5.5 12zm39.8 2.2c-6.5 15.8-16 26.8-21.2 31-5.5 4.5-9.5 2.7-6.5-3.8s19.3-46.5 12.7-55c-6.5-8.3-37-4.3-48-3.2-10.8 1-13 2-14-.3-2.3-5.7 21.7-15.5 37.5-17.5 15.7-1.8 41-.8 46 5.7 3.7 5.1 0 27.1-6.5 43.1z"],
	"amazon-pay": [640, 512, [], "f42c", "M14 325.3c2.3-4.2 5.2-4.9 9.7-2.5 10.4 5.6 20.6 11.4 31.2 16.7a595.88 595.88 0 0 0 127.4 46.3 616.61 616.61 0 0 0 63.2 11.8 603.33 603.33 0 0 0 95 5.2c17.4-.4 34.8-1.8 52.1-3.8a603.66 603.66 0 0 0 163.3-42.8c2.9-1.2 5.9-2 9.1-1.2 6.7 1.8 9 9 4.1 13.9a70 70 0 0 1-9.6 7.4c-30.7 21.1-64.2 36.4-99.6 47.9a473.31 473.31 0 0 1-75.1 17.6 431 431 0 0 1-53.2 4.8 21.3 21.3 0 0 0-2.5.3H308a21.3 21.3 0 0 0-2.5-.3c-3.6-.2-7.2-.3-10.7-.4a426.3 426.3 0 0 1-50.4-5.3A448.4 448.4 0 0 1 164 420a443.33 443.33 0 0 1-145.6-87c-1.8-1.6-3-3.8-4.4-5.7zM172 65.1l-4.3.6a80.92 80.92 0 0 0-38 15.1c-2.4 1.7-4.6 3.5-7.1 5.4a4.29 4.29 0 0 1-.4-1.4c-.4-2.7-.8-5.5-1.3-8.2-.7-4.6-3-6.6-7.6-6.6h-11.5c-6.9 0-8.2 1.3-8.2 8.2v209.3c0 1 0 2 .1 3 .2 3 2 4.9 4.9 5 7 .1 14.1.1 21.1 0 2.9 0 4.7-2 5-5 .1-1 .1-2 .1-3v-72.4c1.1.9 1.7 1.4 2.2 1.9 17.9 14.9 38.5 19.8 61 15.4 20.4-4 34.6-16.5 43.8-34.9 7-13.9 9.9-28.7 10.3-44.1.5-17.1-1.2-33.9-8.1-49.8-8.5-19.6-22.6-32.5-43.9-36.9-3.2-.7-6.5-1-9.8-1.5-2.8-.1-5.5-.1-8.3-.1zM124.6 107a3.48 3.48 0 0 1 1.7-3.3c13.7-9.5 28.8-14.5 45.6-13.2 14.9 1.1 27.1 8.4 33.5 25.9 3.9 10.7 4.9 21.8 4.9 33 0 10.4-.8 20.6-4 30.6-6.8 21.3-22.4 29.4-42.6 28.5-14-.6-26.2-6-37.4-13.9a3.57 3.57 0 0 1-1.7-3.3c.1-14.1 0-28.1 0-42.2s.1-28 0-42.1zm205.7-41.9c-1 .1-2 .3-2.9.4a148 148 0 0 0-28.9 4.1c-6.1 1.6-12 3.8-17.9 5.8-3.6 1.2-5.4 3.8-5.3 7.7.1 3.3-.1 6.6 0 9.9.1 4.8 2.1 6.1 6.8 4.9 7.8-2 15.6-4.2 23.5-5.7 12.3-2.3 24.7-3.3 37.2-1.4 6.5 1 12.6 2.9 16.8 8.4 3.7 4.8 5.1 10.5 5.3 16.4.3 8.3.2 16.6.3 24.9a7.84 7.84 0 0 1-.2 1.4c-.5-.1-.9 0-1.3-.1a180.56 180.56 0 0 0-32-4.9c-11.3-.6-22.5.1-33.3 3.9-12.9 4.5-23.3 12.3-29.4 24.9-4.7 9.8-5.4 20.2-3.9 30.7 2 14 9 24.8 21.4 31.7 11.9 6.6 24.8 7.4 37.9 5.4 15.1-2.3 28.5-8.7 40.3-18.4a7.36 7.36 0 0 1 1.6-1.1c.6 3.8 1.1 7.4 1.8 11 .6 3.1 2.5 5.1 5.4 5.2 5.4.1 10.9.1 16.3 0a4.84 4.84 0 0 0 4.8-4.7 26.2 26.2 0 0 0 .1-2.8v-106a80 80 0 0 0-.9-12.9c-1.9-12.9-7.4-23.5-19-30.4-6.7-4-14.1-6-21.8-7.1-3.6-.5-7.2-.8-10.8-1.3-3.9.1-7.9.1-11.9.1zm35 127.7a3.33 3.33 0 0 1-1.5 3c-11.2 8.1-23.5 13.5-37.4 14.9-5.7.6-11.4.4-16.8-1.8a20.08 20.08 0 0 1-12.4-13.3 32.9 32.9 0 0 1-.1-19.4c2.5-8.3 8.4-13 16.4-15.6a61.33 61.33 0 0 1 24.8-2.2c8.4.7 16.6 2.3 25 3.4 1.6.2 2.1 1 2.1 2.6-.1 4.8 0 9.5 0 14.3s-.2 9.4-.1 14.1zm259.9 129.4c-1-5-4.8-6.9-9.1-8.3a88.42 88.42 0 0 0-21-3.9 147.32 147.32 0 0 0-39.2 1.9c-14.3 2.7-27.9 7.3-40 15.6a13.75 13.75 0 0 0-3.7 3.5 5.11 5.11 0 0 0-.5 4c.4 1.5 2.1 1.9 3.6 1.8a16.2 16.2 0 0 0 2.2-.1c7.8-.8 15.5-1.7 23.3-2.5 11.4-1.1 22.9-1.8 34.3-.9a71.64 71.64 0 0 1 14.4 2.7c5.1 1.4 7.4 5.2 7.6 10.4.4 8-1.4 15.7-3.5 23.3-4.1 15.4-10 30.3-15.8 45.1a17.6 17.6 0 0 0-1 3c-.5 2.9 1.2 4.8 4.1 4.1a10.56 10.56 0 0 0 4.8-2.5 145.91 145.91 0 0 0 12.7-13.4c12.8-16.4 20.3-35.3 24.7-55.6.8-3.6 1.4-7.3 2.1-10.9v-17.3zM493.1 199q-19.35-53.55-38.7-107.2c-2-5.7-4.2-11.3-6.3-16.9-1.1-2.9-3.2-4.8-6.4-4.8-7.6-.1-15.2-.2-22.9-.1-2.5 0-3.7 2-3.2 4.5a43.1 43.1 0 0 0 1.9 6.1q29.4 72.75 59.1 145.5c1.7 4.1 2.1 7.6.2 11.8-3.3 7.3-5.9 15-9.3 22.3-3 6.5-8 11.4-15.2 13.3a42.13 42.13 0 0 1-15.4 1.1c-2.5-.2-5-.8-7.5-1-3.4-.2-5.1 1.3-5.2 4.8q-.15 5 0 9.9c.1 5.5 2 8 7.4 8.9a108.18 108.18 0 0 0 16.9 2c17.1.4 30.7-6.5 39.5-21.4a131.63 131.63 0 0 0 9.2-18.4q35.55-89.7 70.6-179.6a26.62 26.62 0 0 0 1.6-5.5c.4-2.8-.9-4.4-3.7-4.4-6.6-.1-13.3 0-19.9 0a7.54 7.54 0 0 0-7.7 5.2c-.5 1.4-1.1 2.7-1.6 4.1l-34.8 100c-2.5 7.2-5.1 14.5-7.7 22.2-.4-1.1-.6-1.7-.9-2.4z"],
	"amilia": [448, 512, [], "f36d", "M240.1 32c-61.9 0-131.5 16.9-184.2 55.4-5.1 3.1-9.1 9.2-7.2 19.4 1.1 5.1 5.1 27.4 10.2 39.6 4.1 10.2 14.2 10.2 20.3 6.1 32.5-22.3 96.5-47.7 152.3-47.7 57.9 0 58.9 28.4 58.9 73.1v38.5C203 227.7 78.2 251 46.7 264.2 11.2 280.5 16.3 357.7 16.3 376s15.2 104 124.9 104c47.8 0 113.7-20.7 153.3-42.1v25.4c0 3 2.1 8.2 6.1 9.1 3.1 1 50.7 2 59.9 2s62.5.3 66.5-.7c4.1-1 5.1-6.1 5.1-9.1V168c-.1-80.3-57.9-136-192-136zm50.2 348c-21.4 13.2-48.7 24.4-79.1 24.4-52.8 0-58.9-33.5-59-44.7 0-12.2-3-42.7 18.3-52.9 24.3-13.2 75.1-29.4 119.8-33.5z"],
	"android": [576, 512, [], "f17b", "M420.55,301.93a24,24,0,1,1,24-24,24,24,0,0,1-24,24m-265.1,0a24,24,0,1,1,24-24,24,24,0,0,1-24,24m273.7-144.48,47.94-83a10,10,0,1,0-17.27-10h0l-48.54,84.07a301.25,301.25,0,0,0-246.56,0L116.18,64.45a10,10,0,1,0-17.27,10h0l47.94,83C64.53,202.22,8.24,285.55,0,384H576c-8.24-98.45-64.54-181.78-146.85-226.55"],
	"angellist": [448, 512, [], "f209", "M347.1 215.4c11.7-32.6 45.4-126.9 45.4-157.1 0-26.6-15.7-48.9-43.7-48.9-44.6 0-84.6 131.7-97.1 163.1C242 144 196.6 0 156.6 0c-31.1 0-45.7 22.9-45.7 51.7 0 35.3 34.2 126.8 46.6 162-6.3-2.3-13.1-4.3-20-4.3-23.4 0-48.3 29.1-48.3 52.6 0 8.9 4.9 21.4 8 29.7-36.9 10-51.1 34.6-51.1 71.7C46 435.6 114.4 512 210.6 512c118 0 191.4-88.6 191.4-202.9 0-43.1-6.9-82-54.9-93.7zM311.7 108c4-12.3 21.1-64.3 37.1-64.3 8.6 0 10.9 8.9 10.9 16 0 19.1-38.6 124.6-47.1 148l-34-6 33.1-93.7zM142.3 48.3c0-11.9 14.5-45.7 46.3 47.1l34.6 100.3c-15.6-1.3-27.7-3-35.4 1.4-10.9-28.8-45.5-119.7-45.5-148.8zM140 244c29.3 0 67.1 94.6 67.1 107.4 0 5.1-4.9 11.4-10.6 11.4-20.9 0-76.9-76.9-76.9-97.7.1-7.7 12.7-21.1 20.4-21.1zm184.3 186.3c-29.1 32-66.3 48.6-109.7 48.6-59.4 0-106.3-32.6-128.9-88.3-17.1-43.4 3.8-68.3 20.6-68.3 11.4 0 54.3 60.3 54.3 73.1 0 4.9-7.7 8.3-11.7 8.3-16.1 0-22.4-15.5-51.1-51.4-29.7 29.7 20.5 86.9 58.3 86.9 26.1 0 43.1-24.2 38-42 3.7 0 8.3.3 11.7-.6 1.1 27.1 9.1 59.4 41.7 61.7 0-.9 2-7.1 2-7.4 0-17.4-10.6-32.6-10.6-50.3 0-28.3 21.7-55.7 43.7-71.7 8-6 17.7-9.7 27.1-13.1 9.7-3.7 20-8 27.4-15.4-1.1-11.2-5.7-21.1-16.9-21.1-27.7 0-120.6 4-120.6-39.7 0-6.7.1-13.1 17.4-13.1 32.3 0 114.3 8 138.3 29.1 18.1 16.1 24.3 113.2-31 174.7zm-98.6-126c9.7 3.1 19.7 4 29.7 6-7.4 5.4-14 12-20.3 19.1-2.8-8.5-6.2-16.8-9.4-25.1z"],
	"angrycreative": [640, 512, [], "f36e", "M640 238.2l-3.2 28.2-34.5 2.3-2 18.1 34.5-2.3-3.2 28.2-34.4 2.2-2.3 20.1 34.4-2.2-3 26.1-64.7 4.1 12.7-113.2L527 365.2l-31.9 2-23.8-117.8 30.3-2 13.6 79.4 31.7-82.4 93.1-6.2zM426.8 371.5l28.3-1.8L468 249.6l-28.4 1.9-12.8 120zM162 388.1l-19.4-36-3.5 37.4-28.2 1.7 2.7-29.1c-11 18-32 34.3-56.9 35.8C23.9 399.9-3 377 .3 339.7c2.6-29.3 26.7-62.8 67.5-65.4 37.7-2.4 47.6 23.2 51.3 28.8l2.8-30.8 38.9-2.5c20.1-1.3 38.7 3.7 42.5 23.7l2.6-26.6 64.8-4.2-2.7 27.9-36.4 2.4-1.7 17.9 36.4-2.3-2.7 27.9-36.4 2.3-1.9 19.9 36.3-2.3-2.1 20.8 55-117.2 23.8-1.6L370.4 369l8.9-85.6-22.3 1.4 2.9-27.9 75-4.9-3 28-24.3 1.6-9.7 91.9-58 3.7-4.3-15.6-39.4 2.5-8 16.3-126.2 7.7zm-44.3-70.2l-26.4 1.7C84.6 307.2 76.9 303 65 303.8c-19 1.2-33.3 17.5-34.6 33.3-1.4 16 7.3 32.5 28.7 31.2 12.8-.8 21.3-8.6 28.9-18.9l27-1.7 2.7-29.8zm56.1-7.7c1.2-12.9-7.6-13.6-26.1-12.4l-2.7 28.5c14.2-.9 27.5-2.1 28.8-16.1zm21.1 70.8l5.8-60c-5 13.5-14.7 21.1-27.9 26.6l22.1 33.4zm135.4-45l-7.9-37.8-15.8 39.3 23.7-1.5zm-170.1-74.6l-4.3-17.5-39.6 2.6-8.1 18.2-31.9 2.1 57-121.9 23.9-1.6 30.7 102 9.9-104.7 27-1.8 37.8 63.6 6.5-66.6 28.5-1.9-4 41.2c7.4-13.5 22.9-44.7 63.6-47.5 40.5-2.8 52.4 29.3 53.4 30.3l3.3-32 39.3-2.7c12.7-.9 27.8.3 36.3 9.7l-4.4-11.9 32.2-2.2 12.9 43.2 23-45.7 31-2.2-43.6 78.4-4.8 44.3-28.4 1.9 4.8-44.3-15.8-43c1 22.3-9.2 40.1-32 49.6l25.2 38.8-36.4 2.4-19.2-36.8-4 38.3-28.4 1.9 3.3-31.5c-6.7 9.3-19.7 35.4-59.6 38-26.2 1.7-45.6-10.3-55.4-39.2l-4 40.3-25 1.6-37.6-63.3-6.3 66.2-56.8 3.7zm276.6-82.1c10.2-.7 17.5-2.1 21.6-4.3 4.5-2.4 7-6.4 7.6-12.1.6-5.3-.6-8.8-3.4-10.4-3.6-2.1-10.6-2.8-22.9-2l-2.9 28.8zM327.7 214c5.6 5.9 12.7 8.5 21.3 7.9 4.7-.3 9.1-1.8 13.3-4.1 5.5-3 10.6-8 15.1-14.3l-34.2 2.3 2.4-23.9 63.1-4.3 1.2-12-31.2 2.1c-4.1-3.7-7.8-6.6-11.1-8.1-4-1.7-8.1-2.8-12.2-2.5-8 .5-15.3 3.6-22 9.2-7.7 6.4-12 14.5-12.9 24.4-1.1 9.6 1.4 17.3 7.2 23.3zm-201.3 8.2l23.8-1.6-8.3-37.6-15.5 39.2z"],
	"angular": [448, 512, [], "f420", "M185.7 268.1h76.2l-38.1-91.6-38.1 91.6zM223.8 32L16 106.4l31.8 275.7 176 97.9 176-97.9 31.8-275.7zM354 373.8h-48.6l-26.2-65.4H168.6l-26.2 65.4H93.7L223.8 81.5z"],
	"app-store": [512, 512, [], "f36f", "M255.9 120.9l9.1-15.7c5.6-9.8 18.1-13.1 27.9-7.5 9.8 5.6 13.1 18.1 7.5 27.9l-87.5 151.5h63.3c20.5 0 32 24.1 23.1 40.8H113.8c-11.3 0-20.4-9.1-20.4-20.4 0-11.3 9.1-20.4 20.4-20.4h52l66.6-115.4-20.8-36.1c-5.6-9.8-2.3-22.2 7.5-27.9 9.8-5.6 22.2-2.3 27.9 7.5l8.9 15.7zm-78.7 218l-19.6 34c-5.6 9.8-18.1 13.1-27.9 7.5-9.8-5.6-13.1-18.1-7.5-27.9l14.6-25.2c16.4-5.1 29.8-1.2 40.4 11.6zm168.9-61.7h53.1c11.3 0 20.4 9.1 20.4 20.4 0 11.3-9.1 20.4-20.4 20.4h-29.5l19.9 34.5c5.6 9.8 2.3 22.2-7.5 27.9-9.8 5.6-22.2 2.3-27.9-7.5-33.5-58.1-58.7-101.6-75.4-130.6-17.1-29.5-4.9-59.1 7.2-69.1 13.4 23 33.4 57.7 60.1 104zM256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm216 248c0 118.7-96.1 216-216 216-118.7 0-216-96.1-216-216 0-118.7 96.1-216 216-216 118.7 0 216 96.1 216 216z"],
	"app-store-ios": [448, 512, [], "f370", "M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM127 384.5c-5.5 9.6-17.8 12.8-27.3 7.3-9.6-5.5-12.8-17.8-7.3-27.3l14.3-24.7c16.1-4.9 29.3-1.1 39.6 11.4L127 384.5zm138.9-53.9H84c-11 0-20-9-20-20s9-20 20-20h51l65.4-113.2-20.5-35.4c-5.5-9.6-2.2-21.8 7.3-27.3 9.6-5.5 21.8-2.2 27.3 7.3l8.9 15.4 8.9-15.4c5.5-9.6 17.8-12.8 27.3-7.3 9.6 5.5 12.8 17.8 7.3 27.3l-85.8 148.6h62.1c20.2 0 31.5 23.7 22.7 40zm98.1 0h-29l19.6 33.9c5.5 9.6 2.2 21.8-7.3 27.3-9.6 5.5-21.8 2.2-27.3-7.3-32.9-56.9-57.5-99.7-74-128.1-16.7-29-4.8-58 7.1-67.8 13.1 22.7 32.7 56.7 58.9 102h52c11 0 20 9 20 20 0 11.1-9 20-20 20z"],
	"apper": [640, 512, [], "f371", "M42.1 239.1c22.2 0 29 2.8 33.5 14.6h.8v-22.9c0-11.3-4.8-15.4-17.9-15.4-11.3 0-14.4 2.5-15.1 12.8H4.8c.3-13.9 1.5-19.1 5.8-24.4C17.9 195 29.5 192 56.7 192c33 0 47.1 5 53.9 18.9 2 4.3 4 15.6 4 23.7v76.3H76.3l1.3-19.1h-1c-5.3 15.6-13.6 20.4-35.5 20.4-30.3 0-41.1-10.1-41.1-37.3 0-25.2 12.3-35.8 42.1-35.8zm17.1 48.1c13.1 0 16.9-3 16.9-13.4 0-9.1-4.3-11.6-19.6-11.6-13.1 0-17.9 3-17.9 12.1-.1 10.4 3.7 12.9 20.6 12.9zm77.8-94.9h38.3l-1.5 20.6h.8c9.1-17.1 15.9-20.9 37.5-20.9 14.4 0 24.7 3 31.5 9.1 9.8 8.6 12.8 20.4 12.8 48.1 0 30-3 43.1-12.1 52.9-6.8 7.3-16.4 10.1-33.2 10.1-20.4 0-29.2-5.5-33.8-21.2h-.8v70.3H137v-169zm80.9 60.7c0-27.5-3.3-32.5-20.7-32.5-16.9 0-20.7 5-20.7 28.7 0 28 3.5 33.5 21.2 33.5 16.4 0 20.2-5.6 20.2-29.7zm57.9-60.7h38.3l-1.5 20.6h.8c9.1-17.1 15.9-20.9 37.5-20.9 14.4 0 24.7 3 31.5 9.1 9.8 8.6 12.8 20.4 12.8 48.1 0 30-3 43.1-12.1 52.9-6.8 7.3-16.4 10.1-33.3 10.1-20.4 0-29.2-5.5-33.8-21.2h-.8v70.3h-39.5v-169zm80.9 60.7c0-27.5-3.3-32.5-20.7-32.5-16.9 0-20.7 5-20.7 28.7 0 28 3.5 33.5 21.2 33.5 16.4 0 20.2-5.6 20.2-29.7zm53.8-3.8c0-25.4 3.3-37.8 12.3-45.8 8.8-8.1 22.2-11.3 45.1-11.3 42.8 0 55.7 12.8 55.7 55.7v11.1h-75.3c-.3 2-.3 4-.3 4.8 0 16.9 4.5 21.9 20.1 21.9 13.9 0 17.9-3 17.9-13.9h37.5v2.3c0 9.8-2.5 18.9-6.8 24.7-7.3 9.8-19.6 13.6-44.3 13.6-27.5 0-41.6-3.3-50.6-12.3-8.5-8.5-11.3-21.3-11.3-50.8zm76.4-11.6c-.3-1.8-.3-3.3-.3-3.8 0-12.3-3.3-14.6-19.6-14.6-14.4 0-17.1 3-18.1 15.1l-.3 3.3h38.3zm55.6-45.3h38.3l-1.8 19.9h.7c6.8-14.9 14.4-20.2 29.7-20.2 10.8 0 19.1 3.3 23.4 9.3 5.3 7.3 6.8 14.4 6.8 34 0 1.5 0 5 .2 9.3h-35c.3-1.8.3-3.3.3-4 0-15.4-2-19.4-10.3-19.4-6.3 0-10.8 3.3-13.1 9.3-1 3-1 4.3-1 12.3v68h-38.3V192.3z"],
	"apple": [384, 512, [], "f179", "M318.7 268.7c-.2-36.7 16.4-64.4 50-84.8-18.8-26.9-47.2-41.7-84.7-44.6-35.5-2.8-74.3 20.7-88.5 20.7-15 0-49.4-19.7-76.4-19.7C63.3 141.2 4 184.8 4 273.5q0 39.3 14.4 81.2c12.8 36.7 59 126.7 107.2 125.2 25.2-.6 43-17.9 75.8-17.9 31.8 0 48.3 17.9 76.4 17.9 48.6-.7 90.4-82.5 102.6-119.3-65.2-30.7-61.7-90-61.7-91.9zm-56.6-164.2c27.3-32.4 24.8-61.9 24-72.5-24.1 1.4-52 16.4-67.9 34.9-17.5 19.8-27.8 44.3-25.6 71.9 26.1 2 49.9-11.4 69.5-34.3z"],
	"apple-pay": [640, 512, [], "f415", "M116.9 158.5c-7.5 8.9-19.5 15.9-31.5 14.9-1.5-12 4.4-24.8 11.3-32.6 7.5-9.1 20.6-15.6 31.3-16.1 1.2 12.4-3.7 24.7-11.1 33.8m10.9 17.2c-17.4-1-32.3 9.9-40.5 9.9-8.4 0-21-9.4-34.8-9.1-17.9.3-34.5 10.4-43.6 26.5-18.8 32.3-4.9 80 13.3 106.3 8.9 13 19.5 27.3 33.5 26.8 13.3-.5 18.5-8.6 34.5-8.6 16.1 0 20.8 8.6 34.8 8.4 14.5-.3 23.6-13 32.5-26 10.1-14.8 14.3-29.1 14.5-29.9-.3-.3-28-10.9-28.3-42.9-.3-26.8 21.9-39.5 22.9-40.3-12.5-18.6-32-20.6-38.8-21.1m100.4-36.2v194.9h30.3v-66.6h41.9c38.3 0 65.1-26.3 65.1-64.3s-26.4-64-64.1-64h-73.2zm30.3 25.5h34.9c26.3 0 41.3 14 41.3 38.6s-15 38.8-41.4 38.8h-34.8V165zm162.2 170.9c19 0 36.6-9.6 44.6-24.9h.6v23.4h28v-97c0-28.1-22.5-46.3-57.1-46.3-32.1 0-55.9 18.4-56.8 43.6h27.3c2.3-12 13.4-19.9 28.6-19.9 18.5 0 28.9 8.6 28.9 24.5v10.8l-37.8 2.3c-35.1 2.1-54.1 16.5-54.1 41.5.1 25.2 19.7 42 47.8 42zm8.2-23.1c-16.1 0-26.4-7.8-26.4-19.6 0-12.3 9.9-19.4 28.8-20.5l33.6-2.1v11c0 18.2-15.5 31.2-36 31.2zm102.5 74.6c29.5 0 43.4-11.3 55.5-45.4L640 193h-30.8l-35.6 115.1h-.6L537.4 193h-31.6L557 334.9l-2.8 8.6c-4.6 14.6-12.1 20.3-25.5 20.3-2.4 0-7-.3-8.9-.5v23.4c1.8.4 9.3.7 11.6.7z"],
	"artstation": [512, 512, [], "f77a", "M2 377.4l43 74.3A51.35 51.35 0 0 0 90.9 480h285.4l-59.2-102.6zM501.8 350L335.6 59.3A51.38 51.38 0 0 0 290.2 32h-88.4l257.3 447.6 40.7-70.5c1.9-3.2 21-29.7 2-59.1zM275 304.5l-115.5-200L44 304.5z"],
	"asymmetrik": [576, 512, [], "f372", "M517.5 309.2c38.8-40 58.1-80 58.5-116.1.8-65.5-59.4-118.2-169.4-135C277.9 38.4 118.1 73.6 0 140.5 52 114 110.6 92.3 170.7 82.3c74.5-20.5 153-25.4 221.3-14.8C544.5 91.3 588.8 195 490.8 299.2c-10.2 10.8-22 21.1-35 30.6L304.9 103.4 114.7 388.9c-65.6-29.4-76.5-90.2-19.1-151.2 20.8-22.2 48.3-41.9 79.5-58.1 20-12.2 39.7-22.6 62-30.7-65.1 20.3-122.7 52.9-161.6 92.9-27.7 28.6-41.4 57.1-41.7 82.9-.5 35.1 23.4 65.1 68.4 83l-34.5 51.7h101.6l22-34.4c22.2 1 45.3 0 68.6-2.7l-22.8 37.1h135.5L340 406.3c18.6-5.3 36.9-11.5 54.5-18.7l45.9 71.8H542L468.6 349c18.5-12.1 35-25.5 48.9-39.8zm-187.6 80.5l-25-40.6-32.7 53.3c-23.4 3.5-46.7 5.1-69.2 4.4l101.9-159.3 78.7 123c-17.2 7.4-35.3 13.9-53.7 19.2z"],
	"atlassian": [512, 512, [], "f77b", "M152.2 236.4c-7.7-8.2-19.7-7.7-24.8 2.8L1.6 490.2c-5 10 2.4 21.7 13.4 21.7h175c5.8.1 11-3.2 13.4-8.4 37.9-77.8 15.1-196.3-51.2-267.1zM244.4 8.1c-122.3 193.4-8.5 348.6 65 495.5 2.5 5.1 7.7 8.4 13.4 8.4H497c11.2 0 18.4-11.8 13.4-21.7 0 0-234.5-470.6-240.4-482.3-5.3-10.6-18.8-10.8-25.6.1z"],
	"audible": [640, 512, [], "f373", "M640 199.9v54l-320 200L0 254v-54l320 200 320-200.1zm-194.5 72l47.1-29.4c-37.2-55.8-100.7-92.6-172.7-92.6-72 0-135.5 36.7-172.6 92.4h.3c2.5-2.3 5.1-4.5 7.7-6.7 89.7-74.4 219.4-58.1 290.2 36.3zm-220.1 18.8c16.9-11.9 36.5-18.7 57.4-18.7 34.4 0 65.2 18.4 86.4 47.6l45.4-28.4c-20.9-29.9-55.6-49.5-94.8-49.5-38.9 0-73.4 19.4-94.4 49zM103.6 161.1c131.8-104.3 318.2-76.4 417.5 62.1l.7 1 48.8-30.4C517.1 112.1 424.8 58.1 319.9 58.1c-103.5 0-196.6 53.5-250.5 135.6 9.9-10.5 22.7-23.5 34.2-32.6zm467 32.7z"],
	"autoprefixer": [640, 512, [], "f41c", "M318.4 16l-161 480h77.5l25.4-81.4h119.5L405 496h77.5L318.4 16zm-40.3 341.9l41.2-130.4h1.5l40.9 130.4h-83.6zM640 405l-10-31.4L462.1 358l19.4 56.5L640 405zm-462.1-47L10 373.7 0 405l158.5 9.4 19.4-56.4z"],
	"avianex": [512, 512, [], "f374", "M453.1 32h-312c-38.9 0-76.2 31.2-83.3 69.7L1.2 410.3C-5.9 448.8 19.9 480 58.9 480h312c38.9 0 76.2-31.2 83.3-69.7l56.7-308.5c7-38.6-18.8-69.8-57.8-69.8zm-58.2 347.3l-32 13.5-115.4-110c-14.7 10-29.2 19.5-41.7 27.1l22.1 64.2-17.9 12.7-40.6-61-52.4-48.1 15.7-15.4 58 31.1c9.3-10.5 20.8-22.6 32.8-34.9L203 228.9l-68.8-99.8 18.8-28.9 8.9-4.8L265 207.8l4.9 4.5c19.4-18.8 33.8-32.4 33.8-32.4 7.7-6.5 21.5-2.9 30.7 7.9 9 10.5 10.6 24.7 2.7 31.3-1.8 1.3-15.5 11.4-35.3 25.6l4.5 7.3 94.9 119.4-6.3 7.9z"],
	"aviato": [640, 512, [], "f421", "M107.2 283.5l-19-41.8H36.1l-19 41.8H0l62.2-131.4 62.2 131.4h-17.2zm-45-98.1l-19.6 42.5h39.2l-19.6-42.5zm112.7 102.4l-62.2-131.4h17.1l45.1 96 45.1-96h17l-62.1 131.4zm80.6-4.3V156.4H271v127.1h-15.5zm209.1-115.6v115.6h-17.3V167.9h-41.2v-11.5h99.6v11.5h-41.1zM640 218.8c0 9.2-1.7 17.8-5.1 25.8-3.4 8-8.2 15.1-14.2 21.1-6 6-13.1 10.8-21.1 14.2-8 3.4-16.6 5.1-25.8 5.1s-17.8-1.7-25.8-5.1c-8-3.4-15.1-8.2-21.1-14.2-6-6-10.8-13-14.2-21.1-3.4-8-5.1-16.6-5.1-25.8s1.7-17.8 5.1-25.8c3.4-8 8.2-15.1 14.2-21.1 6-6 13-8.4 21.1-11.9 8-3.4 16.6-5.1 25.8-5.1s17.8 1.7 25.8 5.1c8 3.4 15.1 5.8 21.1 11.9 6 6 10.7 13.1 14.2 21.1 3.4 8 5.1 16.6 5.1 25.8zm-15.5 0c0-7.3-1.3-14-3.9-20.3-2.6-6.3-6.2-11.7-10.8-16.3-4.6-4.6-10-8.2-16.2-10.9-6.2-2.7-12.8-4-19.8-4s-13.6 1.3-19.8 4c-6.2 2.7-11.6 6.3-16.2 10.9-4.6 4.6-8.2 10-10.8 16.3-2.6 6.3-3.9 13.1-3.9 20.3 0 7.3 1.3 14 3.9 20.3 2.6 6.3 6.2 11.7 10.8 16.3 4.6 4.6 10 8.2 16.2 10.9 6.2 2.7 12.8 4 19.8 4s13.6-1.3 19.8-4c6.2-2.7 11.6-6.3 16.2-10.9 4.6-4.6 8.2-10 10.8-16.3 2.6-6.3 3.9-13.1 3.9-20.3zm-94.8 96.7v-6.3l88.9-10-242.9 13.4c.6-2.2 1.1-4.6 1.4-7.2.3-2 .5-4.2.6-6.5l64.8-8.1-64.9 1.9c0-.4-.1-.7-.1-1.1-2.8-17.2-25.5-23.7-25.5-23.7l-1.1-26.3h23.8l19 41.8h17.1L348.6 152l-62.2 131.4h17.1l19-41.8h23.6L345 268s-22.7 6.5-25.5 23.7c-.1.3-.1.7-.1 1.1l-64.9-1.9 64.8 8.1c.1 2.3.3 4.4.6 6.5.3 2.6.8 5 1.4 7.2L78.4 299.2l88.9 10v6.3c-5.9.9-10.5 6-10.5 12.2 0 6.8 5.6 12.4 12.4 12.4 6.8 0 12.4-5.6 12.4-12.4 0-6.2-4.6-11.3-10.5-12.2v-5.8l80.3 9v5.4c-5.7 1.1-9.9 6.2-9.9 12.1 0 6.8 5.6 10.2 12.4 10.2 6.8 0 12.4-3.4 12.4-10.2 0-6-4.3-11-9.9-12.1v-4.9l28.4 3.2v23.7h-5.9V360h5.9v-6.6h5v6.6h5.9v-13.8h-5.9V323l38.3 4.3c8.1 11.4 19 13.6 19 13.6l-.1 6.7-5.1.2-.1 12.1h4.1l.1-5h5.2l.1 5h4.1l-.1-12.1-5.1-.2-.1-6.7s10.9-2.1 19-13.6l38.3-4.3v23.2h-5.9V360h5.9v-6.6h5v6.6h5.9v-13.8h-5.9v-23.7l28.4-3.2v4.9c-5.7 1.1-9.9 6.2-9.9 12.1 0 6.8 5.6 10.2 12.4 10.2 6.8 0 12.4-3.4 12.4-10.2 0-6-4.3-11-9.9-12.1v-5.4l80.3-9v5.8c-5.9.9-10.5 6-10.5 12.2 0 6.8 5.6 12.4 12.4 12.4 6.8 0 12.4-5.6 12.4-12.4-.2-6.3-4.7-11.4-10.7-12.3zm-200.8-87.6l19.6-42.5 19.6 42.5h-17.9l-1.7-40.3-1.7 40.3h-17.9z"],
	"aws": [640, 512, [], "f375", "M180.41 203.01c-.72 22.65 10.6 32.68 10.88 39.05a8.164 8.164 0 0 1-4.1 6.27l-12.8 8.96a10.66 10.66 0 0 1-5.63 1.92c-.43-.02-8.19 1.83-20.48-25.61a78.608 78.608 0 0 1-62.61 29.45c-16.28.89-60.4-9.24-58.13-56.21-1.59-38.28 34.06-62.06 70.93-60.05 7.1.02 21.6.37 46.99 6.27v-15.62c2.69-26.46-14.7-46.99-44.81-43.91-2.4.01-19.4-.5-45.84 10.11-7.36 3.38-8.3 2.82-10.75 2.82-7.41 0-4.36-21.48-2.94-24.2 5.21-6.4 35.86-18.35 65.94-18.18a76.857 76.857 0 0 1 55.69 17.28 70.285 70.285 0 0 1 17.67 52.36l-.01 69.29zM93.99 235.4c32.43-.47 46.16-19.97 49.29-30.47 2.46-10.05 2.05-16.41 2.05-27.4-9.67-2.32-23.59-4.85-39.56-4.87-15.15-1.14-42.82 5.63-41.74 32.26-1.24 16.79 11.12 31.4 29.96 30.48zm170.92 23.05c-7.86.72-11.52-4.86-12.68-10.37l-49.8-164.65c-.97-2.78-1.61-5.65-1.92-8.58a4.61 4.61 0 0 1 3.86-5.25c.24-.04-2.13 0 22.25 0 8.78-.88 11.64 6.03 12.55 10.37l35.72 140.83 33.16-140.83c.53-3.22 2.94-11.07 12.8-10.24h17.16c2.17-.18 11.11-.5 12.68 10.37l33.42 142.63L420.98 80.1c.48-2.18 2.72-11.37 12.68-10.37h19.72c.85-.13 6.15-.81 5.25 8.58-.43 1.85 3.41-10.66-52.75 169.9-1.15 5.51-4.82 11.09-12.68 10.37h-18.69c-10.94 1.15-12.51-9.66-12.68-10.75L328.67 110.7l-32.78 136.99c-.16 1.09-1.73 11.9-12.68 10.75h-18.3zm273.48 5.63c-5.88.01-33.92-.3-57.36-12.29a12.802 12.802 0 0 1-7.81-11.91v-10.75c0-8.45 6.2-6.9 8.83-5.89 10.04 4.06 16.48 7.14 28.81 9.6 36.65 7.53 52.77-2.3 56.72-4.48 13.15-7.81 14.19-25.68 5.25-34.95-10.48-8.79-15.48-9.12-53.13-21-4.64-1.29-43.7-13.61-43.79-52.36-.61-28.24 25.05-56.18 69.52-55.95 12.67-.01 46.43 4.13 55.57 15.62 1.35 2.09 2.02 4.55 1.92 7.04v10.11c0 4.44-1.62 6.66-4.87 6.66-7.71-.86-21.39-11.17-49.16-10.75-6.89-.36-39.89.91-38.41 24.97-.43 18.96 26.61 26.07 29.7 26.89 36.46 10.97 48.65 12.79 63.12 29.58 17.14 22.25 7.9 48.3 4.35 55.44-19.08 37.49-68.42 34.44-69.26 34.42zm40.2 104.86c-70.03 51.72-171.69 79.25-258.49 79.25A469.127 469.127 0 0 1 2.83 327.46c-6.53-5.89-.77-13.96 7.17-9.47a637.37 637.37 0 0 0 316.88 84.12 630.22 630.22 0 0 0 241.59-49.55c11.78-5 21.77 7.8 10.12 16.38zm29.19-33.29c-8.96-11.52-59.28-5.38-81.81-2.69-6.79.77-7.94-5.12-1.79-9.47 40.07-28.17 105.88-20.1 113.44-10.63 7.55 9.47-2.05 75.41-39.56 106.91-5.76 4.87-11.27 2.3-8.71-4.1 8.44-21.25 27.39-68.49 18.43-80.02z"],
	"bandcamp": [512, 512, [], "f2d5", "M256,8C119,8,8,119,8,256S119,504,256,504,504,393,504,256,393,8,256,8Zm48.2,326.1h-181L207.9,178h181Z"],
	"battle-net": [512, 512, [], "f835", "M448.61 225.62c26.87.18 35.57-7.43 38.92-12.37 12.47-16.32-7.06-47.6-52.85-71.33 17.76-33.58 30.11-63.68 36.34-85.3 3.38-11.83 1.09-19 .45-20.25-1.72 10.52-15.85 48.46-48.2 100.05-25-11.22-56.52-20.1-93.77-23.8-8.94-16.94-34.88-63.86-60.48-88.93C252.18 7.14 238.7 1.07 228.18.22h-.05c-13.83-1.55-22.67 5.85-27.4 11-17.2 18.53-24.33 48.87-25 84.07-7.24-12.35-17.17-24.63-28.5-25.93h-.18c-20.66-3.48-38.39 29.22-36 81.29-38.36 1.38-71 5.75-93 11.23-9.9 2.45-16.22 7.27-17.76 9.72 1-.38 22.4-9.22 111.56-9.22 5.22 53 29.75 101.82 26 93.19-9.73 15.4-38.24 62.36-47.31 97.7-5.87 22.88-4.37 37.61.15 47.14 5.57 12.75 16.41 16.72 23.2 18.26 25 5.71 55.38-3.63 86.7-21.14-7.53 12.84-13.9 28.51-9.06 39.34 7.31 19.65 44.49 18.66 88.44-9.45 20.18 32.18 40.07 57.94 55.7 74.12a39.79 39.79 0 0 0 8.75 7.09c5.14 3.21 8.58 3.37 8.58 3.37-8.24-6.75-34-38-62.54-91.78 22.22-16 45.65-38.87 67.47-69.27 122.82 4.6 143.29-24.76 148-31.64 14.67-19.88 3.43-57.44-57.32-93.69zm-77.85 106.22c23.81-37.71 30.34-67.77 29.45-92.33 27.86 17.57 47.18 37.58 49.06 58.83 1.14 12.93-8.1 29.12-78.51 33.5zM216.9 387.69c9.76-6.23 19.53-13.12 29.2-20.49 6.68 13.33 13.6 26.1 20.6 38.19-40.6 21.86-68.84 12.76-49.8-17.7zm215-171.35c-10.29-5.34-21.16-10.34-32.38-15.05a722.459 722.459 0 0 0 22.74-36.9c39.06 24.1 45.9 53.18 9.64 51.95zM279.18 398c-5.51-11.35-11-23.5-16.5-36.44 43.25 1.27 62.42-18.73 63.28-20.41 0 .07-25 15.64-62.53 12.25a718.78 718.78 0 0 0 85.06-84q13.06-15.31 24.93-31.11c-.36-.29-1.54-3-16.51-12-51.7 60.27-102.34 98-132.75 115.92-20.59-11.18-40.84-31.78-55.71-61.49-20-39.92-30-82.39-31.57-116.07 12.3.91 25.27 2.17 38.85 3.88-22.29 36.8-14.39 63-13.47 64.23 0-.07-.95-29.17 20.14-59.57a695.23 695.23 0 0 0 44.67 152.84c.93-.38 1.84.88 18.67-8.25-26.33-74.47-33.76-138.17-34-173.43 20-12.42 48.18-19.8 81.63-17.81 44.57 2.67 86.36 15.25 116.32 30.71q-10.69 15.66-23.33 32.47C365.63 152 339.1 145.84 337.5 146c.11 0 25.9 14.07 41.52 47.22a717.63 717.63 0 0 0-115.34-31.71 646.608 646.608 0 0 0-39.39-6.05c-.07.45-1.81 1.85-2.16 20.33C300 190.28 358.78 215.68 389.36 233c.74 23.55-6.95 51.61-25.41 79.57-24.6 37.31-56.39 67.23-84.77 85.43zm27.4-287c-44.56-1.66-73.58 7.43-94.69 20.67 2-52.3 21.31-76.38 38.21-75.28C267 52.15 305 108.55 306.58 111zm-130.65 3.1c.48 12.11 1.59 24.62 3.21 37.28-14.55-.85-28.74-1.25-42.4-1.26-.08 3.24-.12-51 24.67-49.59h.09c5.76 1.09 10.63 6.88 14.43 13.57zm-28.06 162c20.76 39.7 43.3 60.57 65.25 72.31-46.79 24.76-77.53 20-84.92 4.51-.2-.21-11.13-15.3 19.67-76.81zm210.06 74.8"],
	"behance": [576, 512, [], "f1b4", "M232 237.2c31.8-15.2 48.4-38.2 48.4-74 0-70.6-52.6-87.8-113.3-87.8H0v354.4h171.8c64.4 0 124.9-30.9 124.9-102.9 0-44.5-21.1-77.4-64.7-89.7zM77.9 135.9H151c28.1 0 53.4 7.9 53.4 40.5 0 30.1-19.7 42.2-47.5 42.2h-79v-82.7zm83.3 233.7H77.9V272h84.9c34.3 0 56 14.3 56 50.6 0 35.8-25.9 47-57.6 47zm358.5-240.7H376V94h143.7v34.9zM576 305.2c0-75.9-44.4-139.2-124.9-139.2-78.2 0-131.3 58.8-131.3 135.8 0 79.9 50.3 134.7 131.3 134.7 61.3 0 101-27.6 120.1-86.3H509c-6.7 21.9-34.3 33.5-55.7 33.5-41.3 0-63-24.2-63-65.3h185.1c.3-4.2.6-8.7.6-13.2zM390.4 274c2.3-33.7 24.7-54.8 58.5-54.8 35.4 0 53.2 20.8 56.2 54.8H390.4z"],
	"behance-square": [448, 512, [], "f1b5", "M186.5 293c0 19.3-14 25.4-31.2 25.4h-45.1v-52.9h46c18.6.1 30.3 7.8 30.3 27.5zm-7.7-82.3c0-17.7-13.7-21.9-28.9-21.9h-39.6v44.8H153c15.1 0 25.8-6.6 25.8-22.9zm132.3 23.2c-18.3 0-30.5 11.4-31.7 29.7h62.2c-1.7-18.5-11.3-29.7-30.5-29.7zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zM271.7 185h77.8v-18.9h-77.8V185zm-43 110.3c0-24.1-11.4-44.9-35-51.6 17.2-8.2 26.2-17.7 26.2-37 0-38.2-28.5-47.5-61.4-47.5H68v192h93.1c34.9-.2 67.6-16.9 67.6-55.9zM380 280.5c0-41.1-24.1-75.4-67.6-75.4-42.4 0-71.1 31.8-71.1 73.6 0 43.3 27.3 73 71.1 73 33.2 0 54.7-14.9 65.1-46.8h-33.7c-3.7 11.9-18.6 18.1-30.2 18.1-22.4 0-34.1-13.1-34.1-35.3h100.2c.1-2.3.3-4.8.3-7.2z"],
	"bimobject": [448, 512, [], "f378", "M416 32H32C14.4 32 0 46.4 0 64v384c0 17.6 14.4 32 32 32h384c17.6 0 32-14.4 32-32V64c0-17.6-14.4-32-32-32zm-64 257.4c0 49.4-11.4 82.6-103.8 82.6h-16.9c-44.1 0-62.4-14.9-70.4-38.8h-.9V368H96V136h64v74.7h1.1c4.6-30.5 39.7-38.8 69.7-38.8h17.3c92.4 0 103.8 33.1 103.8 82.5v35zm-64-28.9v22.9c0 21.7-3.4 33.8-38.4 33.8h-45.3c-28.9 0-44.1-6.5-44.1-35.7v-19c0-29.3 15.2-35.7 44.1-35.7h45.3c35-.2 38.4 12 38.4 33.7z"],
	"bitbucket": [512, 512, [], "f171", "M22.2 32A16 16 0 0 0 6 47.8a26.35 26.35 0 0 0 .2 2.8l67.9 412.1a21.77 21.77 0 0 0 21.3 18.2h325.7a16 16 0 0 0 16-13.4L505 50.7a16 16 0 0 0-13.2-18.3 24.58 24.58 0 0 0-2.8-.2L22.2 32zm285.9 297.8h-104l-28.1-147h157.3l-25.2 147z"],
	"bitcoin": [512, 512, [], "f379", "M504 256c0 136.967-111.033 248-248 248S8 392.967 8 256 119.033 8 256 8s248 111.033 248 248zm-141.651-35.33c4.937-32.999-20.191-50.739-54.55-62.573l11.146-44.702-27.213-6.781-10.851 43.524c-7.154-1.783-14.502-3.464-21.803-5.13l10.929-43.81-27.198-6.781-11.153 44.686c-5.922-1.349-11.735-2.682-17.377-4.084l.031-.14-37.53-9.37-7.239 29.062s20.191 4.627 19.765 4.913c11.022 2.751 13.014 10.044 12.68 15.825l-12.696 50.925c.76.194 1.744.473 2.829.907-.907-.225-1.876-.473-2.876-.713l-17.796 71.338c-1.349 3.348-4.767 8.37-12.471 6.464.271.395-19.78-4.937-19.78-4.937l-13.51 31.147 35.414 8.827c6.588 1.651 13.045 3.379 19.4 5.006l-11.262 45.213 27.182 6.781 11.153-44.733a1038.209 1038.209 0 0 0 21.687 5.627l-11.115 44.523 27.213 6.781 11.262-45.128c46.404 8.781 81.299 5.239 95.986-36.727 11.836-33.79-.589-53.281-25.004-65.991 17.78-4.098 31.174-15.792 34.747-39.949zm-62.177 87.179c-8.41 33.79-65.308 15.523-83.755 10.943l14.944-59.899c18.446 4.603 77.6 13.717 68.811 48.956zm8.417-87.667c-7.673 30.736-55.031 15.12-70.393 11.292l13.548-54.327c15.363 3.828 64.836 10.973 56.845 43.035z"],
	"bity": [496, 512, [], "f37a", "M78.4 67.2C173.8-22 324.5-24 421.5 71c14.3 14.1-6.4 37.1-22.4 21.5-84.8-82.4-215.8-80.3-298.9-3.2-16.3 15.1-36.5-8.3-21.8-22.1zm98.9 418.6c19.3 5.7 29.3-23.6 7.9-30C73 421.9 9.4 306.1 37.7 194.8c5-19.6-24.9-28.1-30.2-7.1-32.1 127.4 41.1 259.8 169.8 298.1zm148.1-2c121.9-40.2 192.9-166.9 164.4-291-4.5-19.7-34.9-13.8-30 7.9 24.2 107.7-37.1 217.9-143.2 253.4-21.2 7-10.4 36 8.8 29.7zm-62.9-79l.2-71.8c0-8.2-6.6-14.8-14.8-14.8-8.2 0-14.8 6.7-14.8 14.8l-.2 71.8c0 8.2 6.6 14.8 14.8 14.8s14.8-6.6 14.8-14.8zm71-269c2.1 90.9 4.7 131.9-85.5 132.5-92.5-.7-86.9-44.3-85.5-132.5 0-21.8-32.5-19.6-32.5 0v71.6c0 69.3 60.7 90.9 118 90.1 57.3.8 118-20.8 118-90.1v-71.6c0-19.6-32.5-21.8-32.5 0z"],
	"black-tie": [448, 512, [], "f27e", "M0 32v448h448V32H0zm316.5 325.2L224 445.9l-92.5-88.7 64.5-184-64.5-86.6h184.9L252 173.2l64.5 184z"],
	"blackberry": [512, 512, [], "f37b", "M166 116.9c0 23.4-16.4 49.1-72.5 49.1H23.4l21-88.8h67.8c42.1 0 53.8 23.3 53.8 39.7zm126.2-39.7h-67.8L205.7 166h70.1c53.8 0 70.1-25.7 70.1-49.1.1-16.4-11.6-39.7-53.7-39.7zM88.8 208.1H21L0 296.9h70.1c56.1 0 72.5-23.4 72.5-49.1 0-16.3-11.7-39.7-53.8-39.7zm180.1 0h-67.8l-18.7 88.8h70.1c53.8 0 70.1-23.4 70.1-49.1 0-16.3-11.7-39.7-53.7-39.7zm189.3-53.8h-67.8l-18.7 88.8h70.1c53.8 0 70.1-23.4 70.1-49.1.1-16.3-11.6-39.7-53.7-39.7zm-28 137.9h-67.8L343.7 381h70.1c56.1 0 70.1-23.4 70.1-49.1 0-16.3-11.6-39.7-53.7-39.7zM240.8 346H173l-18.7 88.8h70.1c56.1 0 70.1-25.7 70.1-49.1.1-16.3-11.6-39.7-53.7-39.7z"],
	"blogger": [448, 512, [], "f37c", "M162.4 196c4.8-4.9 6.2-5.1 36.4-5.1 27.2 0 28.1.1 32.1 2.1 5.8 2.9 8.3 7 8.3 13.6 0 5.9-2.4 10-7.6 13.4-2.8 1.8-4.5 1.9-31.1 2.1-16.4.1-29.5-.2-31.5-.8-10.3-2.9-14.1-17.7-6.6-25.3zm61.4 94.5c-53.9 0-55.8.2-60.2 4.1-3.5 3.1-5.7 9.4-5.1 13.9.7 4.7 4.8 10.1 9.2 12 2.2 1 14.1 1.7 56.3 1.2l47.9-.6 9.2-1.5c9-5.1 10.5-17.4 3.1-24.4-5.3-4.7-5-4.7-60.4-4.7zm223.4 130.1c-3.5 28.4-23 50.4-51.1 57.5-7.2 1.8-9.7 1.9-172.9 1.8-157.8 0-165.9-.1-172-1.8-8.4-2.2-15.6-5.5-22.3-10-5.6-3.8-13.9-11.8-17-16.4-3.8-5.6-8.2-15.3-10-22C.1 423 0 420.3 0 256.3 0 93.2 0 89.7 1.8 82.6 8.1 57.9 27.7 39 53 33.4c7.3-1.6 332.1-1.9 340-.3 21.2 4.3 37.9 17.1 47.6 36.4 7.7 15.3 7-1.5 7.3 180.6.2 115.8 0 164.5-.7 170.5zm-85.4-185.2c-1.1-5-4.2-9.6-7.7-11.5-1.1-.6-8-1.3-15.5-1.7-12.4-.6-13.8-.8-17.8-3.1-6.2-3.6-7.9-7.6-8-18.3 0-20.4-8.5-39.4-25.3-56.5-12-12.2-25.3-20.5-40.6-25.1-3.6-1.1-11.8-1.5-39.2-1.8-42.9-.5-52.5.4-67.1 6.2-27 10.7-46.3 33.4-53.4 62.4-1.3 5.4-1.6 14.2-1.9 64.3-.4 62.8 0 72.1 4 84.5 9.7 30.7 37.1 53.4 64.6 58.4 9.2 1.7 122.2 2.1 133.7.5 20.1-2.7 35.9-10.8 50.7-25.9 10.7-10.9 17.4-22.8 21.8-38.5 3.2-10.9 2.9-88.4 1.7-93.9z"],
	"blogger-b": [448, 512, [], "f37d", "M446.6 222.7c-1.8-8-6.8-15.4-12.5-18.5-1.8-1-13-2.2-25-2.7-20.1-.9-22.3-1.3-28.7-5-10.1-5.9-12.8-12.3-12.9-29.5-.1-33-13.8-63.7-40.9-91.3-19.3-19.7-40.9-33-65.5-40.5-5.9-1.8-19.1-2.4-63.3-2.9-69.4-.8-84.8.6-108.4 10C45.9 59.5 14.7 96.1 3.3 142.9 1.2 151.7.7 165.8.2 246.8c-.6 101.5.1 116.4 6.4 136.5 15.6 49.6 59.9 86.3 104.4 94.3 14.8 2.7 197.3 3.3 216 .8 32.5-4.4 58-17.5 81.9-41.9 17.3-17.7 28.1-36.8 35.2-62.1 4.9-17.6 4.5-142.8 2.5-151.7zm-322.1-63.6c7.8-7.9 10-8.2 58.8-8.2 43.9 0 45.4.1 51.8 3.4 9.3 4.7 13.4 11.3 13.4 21.9 0 9.5-3.8 16.2-12.3 21.6-4.6 2.9-7.3 3.1-50.3 3.3-26.5.2-47.7-.4-50.8-1.2-16.6-4.7-22.8-28.5-10.6-40.8zm191.8 199.8l-14.9 2.4-77.5.9c-68.1.8-87.3-.4-90.9-2-7.1-3.1-13.8-11.7-14.9-19.4-1.1-7.3 2.6-17.3 8.2-22.4 7.1-6.4 10.2-6.6 97.3-6.7 89.6-.1 89.1-.1 97.6 7.8 12.1 11.3 9.5 31.2-4.9 39.4z"],
	"bluetooth": [448, 512, [], "f293", "M292.6 171.1L249.7 214l-.3-86 43.2 43.1m-43.2 219.8l43.1-43.1-42.9-42.9-.2 86zM416 259.4C416 465 344.1 512 230.9 512S32 465 32 259.4 115.4 0 228.6 0 416 53.9 416 259.4zm-158.5 0l79.4-88.6L211.8 36.5v176.9L138 139.6l-27 26.9 92.7 93-92.7 93 26.9 26.9 73.8-73.8 2.3 170 127.4-127.5-83.9-88.7z"],
	"bluetooth-b": [320, 512, [], "f294", "M196.48 260.023l92.626-103.333L143.125 0v206.33l-86.111-86.111-31.406 31.405 108.061 108.399L25.608 368.422l31.406 31.405 86.111-86.111L145.84 512l148.552-148.644-97.912-103.333zm40.86-102.996l-49.977 49.978-.338-100.295 50.315 50.317zM187.363 313.04l49.977 49.978-50.315 50.316.338-100.294z"],
	"bootstrap": [448, 512, [], "f836", "M292.3 311.93c0 42.41-39.72 41.43-43.92 41.43h-80.89v-81.69h80.89c42.56 0 43.92 31.9 43.92 40.26zm-50.15-73.13c.67 0 38.44 1 38.44-36.31 0-15.52-3.51-35.87-38.44-35.87h-74.66v72.18h74.66zM448 106.67v298.66A74.89 74.89 0 0 1 373.33 480H74.67A74.89 74.89 0 0 1 0 405.33V106.67A74.89 74.89 0 0 1 74.67 32h298.66A74.89 74.89 0 0 1 448 106.67zM338.05 317.86c0-21.57-6.65-58.29-49.05-67.35v-.73c22.91-9.78 37.34-28.25 37.34-55.64 0-7 2-64.78-77.6-64.78h-127v261.33c128.23 0 139.87 1.68 163.6-5.71 14.21-4.42 52.71-17.98 52.71-67.12z"],
	"btc": [384, 512, [], "f15a", "M310.204 242.638c27.73-14.18 45.377-39.39 41.28-81.3-5.358-57.351-52.458-76.573-114.85-81.929V0h-48.528v77.203c-12.605 0-25.525.315-38.444.63V0h-48.528v79.409c-17.842.539-38.622.276-97.37 0v51.678c38.314-.678 58.417-3.14 63.023 21.427v217.429c-2.925 19.492-18.524 16.685-53.255 16.071L3.765 443.68c88.481 0 97.37.315 97.37.315V512h48.528v-67.06c13.234.315 26.154.315 38.444.315V512h48.528v-68.005c81.299-4.412 135.647-24.894 142.895-101.467 5.671-61.446-23.32-88.862-69.326-99.89zM150.608 134.553c27.415 0 113.126-8.507 113.126 48.528 0 54.515-85.71 48.212-113.126 48.212v-96.74zm0 251.776V279.821c32.772 0 133.127-9.138 133.127 53.255-.001 60.186-100.355 53.253-133.127 53.253z"],
	"buffer": [448, 512, [], "f837", "M427.84 380.67l-196.5 97.82a18.6 18.6 0 0 1-14.67 0L20.16 380.67c-4-2-4-5.28 0-7.29L67.22 350a18.65 18.65 0 0 1 14.69 0l134.76 67a18.51 18.51 0 0 0 14.67 0l134.76-67a18.62 18.62 0 0 1 14.68 0l47.06 23.43c4.05 1.96 4.05 5.24 0 7.24zm0-136.53l-47.06-23.43a18.62 18.62 0 0 0-14.68 0l-134.76 67.08a18.68 18.68 0 0 1-14.67 0L81.91 220.71a18.65 18.65 0 0 0-14.69 0l-47.06 23.43c-4 2-4 5.29 0 7.31l196.51 97.8a18.6 18.6 0 0 0 14.67 0l196.5-97.8c4.05-2.02 4.05-5.3 0-7.31zM20.16 130.42l196.5 90.29a20.08 20.08 0 0 0 14.67 0l196.51-90.29c4-1.86 4-4.89 0-6.74L231.33 33.4a19.88 19.88 0 0 0-14.67 0l-196.5 90.28c-4.05 1.85-4.05 4.88 0 6.74z"],
	"buromobelexperte": [448, 512, [], "f37f", "M0 32v128h128V32H0zm120 120H8V40h112v112zm40-120v128h128V32H160zm120 120H168V40h112v112zm40-120v128h128V32H320zm120 120H328V40h112v112zM0 192v128h128V192H0zm120 120H8V200h112v112zm40-120v128h128V192H160zm120 120H168V200h112v112zm40-120v128h128V192H320zm120 120H328V200h112v112zM0 352v128h128V352H0zm120 120H8V360h112v112zm40-120v128h128V352H160zm120 120H168V360h112v112zm40-120v128h128V352H320z"],
	"buy-n-large": [576, 512, [], "f8a6", "M288 32C133.27 32 7.79 132.32 7.79 256S133.27 480 288 480s280.21-100.32 280.21-224S442.73 32 288 32zm-85.39 357.19L64.1 390.55l77.25-290.74h133.44c63.15 0 84.93 28.65 78 72.84a60.24 60.24 0 0 1-1.5 6.85 77.39 77.39 0 0 0-17.21-1.93c-42.35 0-76.69 33.88-76.69 75.65 0 37.14 27.14 68 62.93 74.45-18.24 37.16-56.16 60.92-117.71 61.52zM358 207.11h32l-22.16 90.31h-35.41l-11.19-35.63-7.83 35.63h-37.83l26.63-90.31h31.34l15 36.75zm145.86 182.08H306.79L322.63 328a78.8 78.8 0 0 0 11.47.83c42.34 0 76.69-33.87 76.69-75.65 0-32.65-21-60.46-50.38-71.06l21.33-82.35h92.5l-53.05 205.36h103.87zM211.7 269.39H187l-13.8 56.47h24.7c16.14 0 32.11-3.18 37.94-26.65 5.56-22.31-7.99-29.82-24.14-29.82zM233 170h-21.34L200 217.71h21.37c18 0 35.38-14.64 39.21-30.14C265.23 168.71 251.07 170 233 170z"],
	"buysellads": [448, 512, [], "f20d", "M224 150.7l42.9 160.7h-85.8L224 150.7zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-65.3 325.3l-94.5-298.7H159.8L65.3 405.3H156l111.7-91.6 24.2 91.6h90.8z"],
	"canadian-maple-leaf": [512, 512, [], "f785", "M383.8 351.7c2.5-2.5 105.2-92.4 105.2-92.4l-17.5-7.5c-10-4.9-7.4-11.5-5-17.4 2.4-7.6 20.1-67.3 20.1-67.3s-47.7 10-57.7 12.5c-7.5 2.4-10-2.5-12.5-7.5s-15-32.4-15-32.4-52.6 59.9-55.1 62.3c-10 7.5-20.1 0-17.6-10 0-10 27.6-129.6 27.6-129.6s-30.1 17.4-40.1 22.4c-7.5 5-12.6 5-17.6-5C293.5 72.3 255.9 0 255.9 0s-37.5 72.3-42.5 79.8c-5 10-10 10-17.6 5-10-5-40.1-22.4-40.1-22.4S183.3 182 183.3 192c2.5 10-7.5 17.5-17.6 10-2.5-2.5-55.1-62.3-55.1-62.3S98.1 167 95.6 172s-5 9.9-12.5 7.5C73 177 25.4 167 25.4 167s17.6 59.7 20.1 67.3c2.4 6 5 12.5-5 17.4L23 259.3s102.6 89.9 105.2 92.4c5.1 5 10 7.5 5.1 22.5-5.1 15-10.1 35.1-10.1 35.1s95.2-20.1 105.3-22.6c8.7-.9 18.3 2.5 18.3 12.5S241 512 241 512h30s-5.8-102.7-5.8-112.8 9.5-13.4 18.4-12.5c10 2.5 105.2 22.6 105.2 22.6s-5-20.1-10-35.1 0-17.5 5-22.5z"],
	"cc-amazon-pay": [576, 512, [], "f42d", "M124.7 201.8c.1-11.8 0-23.5 0-35.3v-35.3c0-1.3.4-2 1.4-2.7 11.5-8 24.1-12.1 38.2-11.1 12.5.9 22.7 7 28.1 21.7 3.3 8.9 4.1 18.2 4.1 27.7 0 8.7-.7 17.3-3.4 25.6-5.7 17.8-18.7 24.7-35.7 23.9-11.7-.5-21.9-5-31.4-11.7-.9-.8-1.4-1.6-1.3-2.8zm154.9 14.6c4.6 1.8 9.3 2 14.1 1.5 11.6-1.2 21.9-5.7 31.3-12.5.9-.6 1.3-1.3 1.3-2.5-.1-3.9 0-7.9 0-11.8 0-4-.1-8 0-12 0-1.4-.4-2-1.8-2.2-7-.9-13.9-2.2-20.9-2.9-7-.6-14-.3-20.8 1.9-6.7 2.2-11.7 6.2-13.7 13.1-1.6 5.4-1.6 10.8.1 16.2 1.6 5.5 5.2 9.2 10.4 11.2zM576 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zm-207.5 23.9c.4 1.7.9 3.4 1.6 5.1 16.5 40.6 32.9 81.3 49.5 121.9 1.4 3.5 1.7 6.4.2 9.9-2.8 6.2-4.9 12.6-7.8 18.7-2.6 5.5-6.7 9.5-12.7 11.2-4.2 1.1-8.5 1.3-12.9.9-2.1-.2-4.2-.7-6.3-.8-2.8-.2-4.2 1.1-4.3 4-.1 2.8-.1 5.6 0 8.3.1 4.6 1.6 6.7 6.2 7.5 4.7.8 9.4 1.6 14.2 1.7 14.3.3 25.7-5.4 33.1-17.9 2.9-4.9 5.6-10.1 7.7-15.4 19.8-50.1 39.5-100.3 59.2-150.5.6-1.5 1.1-3 1.3-4.6.4-2.4-.7-3.6-3.1-3.7-5.6-.1-11.1 0-16.7 0-3.1 0-5.3 1.4-6.4 4.3-.4 1.1-.9 2.3-1.3 3.4l-29.1 83.7c-2.1 6.1-4.2 12.1-6.5 18.6-.4-.9-.6-1.4-.8-1.9-10.8-29.9-21.6-59.9-32.4-89.8-1.7-4.7-3.5-9.5-5.3-14.2-.9-2.5-2.7-4-5.4-4-6.4-.1-12.8-.2-19.2-.1-2.2 0-3.3 1.6-2.8 3.7zM242.4 206c1.7 11.7 7.6 20.8 18 26.6 9.9 5.5 20.7 6.2 31.7 4.6 12.7-1.9 23.9-7.3 33.8-15.5.4-.3.8-.6 1.4-1 .5 3.2.9 6.2 1.5 9.2.5 2.6 2.1 4.3 4.5 4.4 4.6.1 9.1.1 13.7 0 2.3-.1 3.8-1.6 4-3.9.1-.8.1-1.6.1-2.3v-88.8c0-3.6-.2-7.2-.7-10.8-1.6-10.8-6.2-19.7-15.9-25.4-5.6-3.3-11.8-5-18.2-5.9-3-.4-6-.7-9.1-1.1h-10c-.8.1-1.6.3-2.5.3-8.2.4-16.3 1.4-24.2 3.5-5.1 1.3-10 3.2-15 4.9-3 1-4.5 3.2-4.4 6.5.1 2.8-.1 5.6 0 8.3.1 4.1 1.8 5.2 5.7 4.1 6.5-1.7 13.1-3.5 19.7-4.8 10.3-1.9 20.7-2.7 31.1-1.2 5.4.8 10.5 2.4 14.1 7 3.1 4 4.2 8.8 4.4 13.7.3 6.9.2 13.9.3 20.8 0 .4-.1.7-.2 1.2-.4 0-.8 0-1.1-.1-8.8-2.1-17.7-3.6-26.8-4.1-9.5-.5-18.9.1-27.9 3.2-10.8 3.8-19.5 10.3-24.6 20.8-4.1 8.3-4.6 17-3.4 25.8zM98.7 106.9v175.3c0 .8 0 1.7.1 2.5.2 2.5 1.7 4.1 4.1 4.2 5.9.1 11.8.1 17.7 0 2.5 0 4-1.7 4.1-4.1.1-.8.1-1.7.1-2.5v-60.7c.9.7 1.4 1.2 1.9 1.6 15 12.5 32.2 16.6 51.1 12.9 17.1-3.4 28.9-13.9 36.7-29.2 5.8-11.6 8.3-24.1 8.7-37 .5-14.3-1-28.4-6.8-41.7-7.1-16.4-18.9-27.3-36.7-30.9-2.7-.6-5.5-.8-8.2-1.2h-7c-1.2.2-2.4.3-3.6.5-11.7 1.4-22.3 5.8-31.8 12.7-2 1.4-3.9 3-5.9 4.5-.1-.5-.3-.8-.4-1.2-.4-2.3-.7-4.6-1.1-6.9-.6-3.9-2.5-5.5-6.4-5.6h-9.7c-5.9-.1-6.9 1-6.9 6.8zM493.6 339c-2.7-.7-5.1 0-7.6 1-43.9 18.4-89.5 30.2-136.8 35.8-14.5 1.7-29.1 2.8-43.7 3.2-26.6.7-53.2-.8-79.6-4.3-17.8-2.4-35.5-5.7-53-9.9-37-8.9-72.7-21.7-106.7-38.8-8.8-4.4-17.4-9.3-26.1-14-3.8-2.1-6.2-1.5-8.2 2.1v1.7c1.2 1.6 2.2 3.4 3.7 4.8 36 32.2 76.6 56.5 122 72.9 21.9 7.9 44.4 13.7 67.3 17.5 14 2.3 28 3.8 42.2 4.5 3 .1 6 .2 9 .4.7 0 1.4.2 2.1.3h17.7c.7-.1 1.4-.3 2.1-.3 14.9-.4 29.8-1.8 44.6-4 21.4-3.2 42.4-8.1 62.9-14.7 29.6-9.6 57.7-22.4 83.4-40.1 2.8-1.9 5.7-3.8 8-6.2 4.3-4.4 2.3-10.4-3.3-11.9zm50.4-27.7c-.8-4.2-4-5.8-7.6-7-5.7-1.9-11.6-2.8-17.6-3.3-11-.9-22-.4-32.8 1.6-12 2.2-23.4 6.1-33.5 13.1-1.2.8-2.4 1.8-3.1 3-.6.9-.7 2.3-.5 3.4.3 1.3 1.7 1.6 3 1.5.6 0 1.2 0 1.8-.1l19.5-2.1c9.6-.9 19.2-1.5 28.8-.8 4.1.3 8.1 1.2 12 2.2 4.3 1.1 6.2 4.4 6.4 8.7.3 6.7-1.2 13.1-2.9 19.5-3.5 12.9-8.3 25.4-13.3 37.8-.3.8-.7 1.7-.8 2.5-.4 2.5 1 4 3.4 3.5 1.4-.3 3-1.1 4-2.1 3.7-3.6 7.5-7.2 10.6-11.2 10.7-13.8 17-29.6 20.7-46.6.7-3 1.2-6.1 1.7-9.1.2-4.7.2-9.6.2-14.5z"],
	"cc-amex": [576, 512, [], "f1f3", "M325.1 167.8c0-16.4-14.1-18.4-27.4-18.4l-39.1-.3v69.3H275v-25.1h18c18.4 0 14.5 10.3 14.8 25.1h16.6v-13.5c0-9.2-1.5-15.1-11-18.4 7.4-3 11.8-10.7 11.7-18.7zm-29.4 11.3H275v-15.3h21c5.1 0 10.7 1 10.7 7.4 0 6.6-5.3 7.9-11 7.9zM279 268.6h-52.7l-21 22.8-20.5-22.8h-66.5l-.1 69.3h65.4l21.3-23 20.4 23h32.2l.1-23.3c18.9 0 49.3 4.6 49.3-23.3 0-17.3-12.3-22.7-27.9-22.7zm-103.8 54.7h-40.6v-13.8h36.3v-14.1h-36.3v-12.5h41.7l17.9 20.2zm65.8 8.2l-25.3-28.1L241 276zm37.8-31h-21.2v-17.6h21.5c5.6 0 10.2 2.3 10.2 8.4 0 6.4-4.6 9.2-10.5 9.2zm-31.6-136.7v-14.6h-55.5v69.3h55.5v-14.3h-38.9v-13.8h37.8v-14.1h-37.8v-12.5zM576 255.4h-.2zm-194.6 31.9c0-16.4-14.1-18.7-27.1-18.7h-39.4l-.1 69.3h16.6l.1-25.3h17.6c11 0 14.8 2 14.8 13.8l-.1 11.5h16.6l.1-13.8c0-8.9-1.8-15.1-11-18.4 7.7-3.1 11.8-10.8 11.9-18.4zm-29.2 11.2h-20.7v-15.6h21c5.1 0 10.7 1 10.7 7.4 0 6.9-5.4 8.2-11 8.2zm-172.8-80v-69.3h-27.6l-19.7 47-21.7-47H83.3v65.7l-28.1-65.7H30.7L1 218.5h17.9l6.4-15.3h34.5l6.4 15.3H100v-54.2l24 54.2h14.6l24-54.2v54.2zM31.2 188.8l11.2-27.6 11.5 27.6zm477.4 158.9v-4.5c-10.8 5.6-3.9 4.5-156.7 4.5 0-25.2.1-23.9 0-25.2-1.7-.1-3.2-.1-9.4-.1 0 17.9-.1 6.8-.1 25.3h-39.6c0-12.1.1-15.3.1-29.2-10 6-22.8 6.4-34.3 6.2 0 14.7-.1 8.3-.1 23h-48.9c-5.1-5.7-2.7-3.1-15.4-17.4-3.2 3.5-12.8 13.9-16.1 17.4h-82v-92.3h83.1c5 5.6 2.8 3.1 15.5 17.2 3.2-3.5 12.2-13.4 15.7-17.2h58c9.8 0 18 1.9 24.3 5.6v-5.6c54.3 0 64.3-1.4 75.7 5.1v-5.1h78.2v5.2c11.4-6.9 19.6-5.2 64.9-5.2v5c10.3-5.9 16.6-5.2 54.3-5V80c0-26.5-21.5-48-48-48h-480c-26.5 0-48 21.5-48 48v109.8c9.4-21.9 19.7-46 23.1-53.9h39.7c4.3 10.1 1.6 3.7 9 21.1v-21.1h46c2.9 6.2 11.1 24 13.9 30 5.8-13.6 10.1-23.9 12.6-30h103c0-.1 11.5 0 11.6 0 43.7.2 53.6-.8 64.4 5.3v-5.3H363v9.3c7.6-6.1 17.9-9.3 30.7-9.3h27.6c0 .5 1.9.3 2.3.3H456c4.2 9.8 2.6 6 8.8 20.6v-20.6h43.3c4.9 8-1-1.8 11.2 18.4v-18.4h39.9v92h-41.6c-5.4-9-1.4-2.2-13.2-21.9v21.9h-52.8c-6.4-14.8-.1-.3-6.6-15.3h-19c-4.2 10-2.2 5.2-6.4 15.3h-26.8c-12.3 0-22.3-3-29.7-8.9v8.9h-66.5c-.3-13.9-.1-24.8-.1-24.8-1.8-.3-3.4-.2-9.8-.2v25.1H151.2v-11.4c-2.5 5.6-2.7 5.9-5.1 11.4h-29.5c-4-8.9-2.9-6.4-5.1-11.4v11.4H58.6c-4.2-10.1-2.2-5.3-6.4-15.3H33c-4.2 10-2.2 5.2-6.4 15.3H0V432c0 26.5 21.5 48 48 48h480.1c26.5 0 48-21.5 48-48v-90.4c-12.7 8.3-32.7 6.1-67.5 6.1zm36.3-64.5H575v-14.6h-32.9c-12.8 0-23.8 6.6-23.8 20.7 0 33 42.7 12.8 42.7 27.4 0 5.1-4.3 6.4-8.4 6.4h-32l-.1 14.8h32c8.4 0 17.6-1.8 22.5-8.9v-25.8c-10.5-13.8-39.3-1.3-39.3-13.5 0-5.8 4.6-6.5 9.2-6.5zm-57 39.8h-32.2l-.1 14.8h32.2c14.8 0 26.2-5.6 26.2-22 0-33.2-42.9-11.2-42.9-26.3 0-5.6 4.9-6.4 9.2-6.4h30.4v-14.6h-33.2c-12.8 0-23.5 6.6-23.5 20.7 0 33 42.7 12.5 42.7 27.4-.1 5.4-4.7 6.4-8.8 6.4zm-42.2-40.1v-14.3h-55.2l-.1 69.3h55.2l.1-14.3-38.6-.3v-13.8H445v-14.1h-37.8v-12.5zm-56.3-108.1c-.3.2-1.4 2.2-1.4 7.6 0 6 .9 7.7 1.1 7.9.2.1 1.1.5 3.4.5l7.3-16.9c-1.1 0-2.1-.1-3.1-.1-5.6 0-7 .7-7.3 1zm20.4-10.5h-.1zm-16.2-15.2c-23.5 0-34 12-34 35.3 0 22.2 10.2 34 33 34h19.2l6.4-15.3h34.3l6.6 15.3h33.7v-51.9l31.2 51.9h23.6v-69h-16.9v48.1l-29.1-48.1h-25.3v65.4l-27.9-65.4h-24.8l-23.5 54.5h-7.4c-13.3 0-16.1-8.1-16.1-19.9 0-23.8 15.7-20 33.1-19.7v-15.2zm42.1 12.1l11.2 27.6h-22.8zm-101.1-12v69.3h16.9v-69.3z"],
	"cc-apple-pay": [576, 512, [], "f416", "M302.2 218.4c0 17.2-10.5 27.1-29 27.1h-24.3v-54.2h24.4c18.4 0 28.9 9.8 28.9 27.1zm47.5 62.6c0 8.3 7.2 13.7 18.5 13.7 14.4 0 25.2-9.1 25.2-21.9v-7.7l-23.5 1.5c-13.3.9-20.2 5.8-20.2 14.4zM576 79v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V79c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zM127.8 197.2c8.4.7 16.8-4.2 22.1-10.4 5.2-6.4 8.6-15 7.7-23.7-7.4.3-16.6 4.9-21.9 11.3-4.8 5.5-8.9 14.4-7.9 22.8zm60.6 74.5c-.2-.2-19.6-7.6-19.8-30-.2-18.7 15.3-27.7 16-28.2-8.8-13-22.4-14.4-27.1-14.7-12.2-.7-22.6 6.9-28.4 6.9-5.9 0-14.7-6.6-24.3-6.4-12.5.2-24.2 7.3-30.5 18.6-13.1 22.6-3.4 56 9.3 74.4 6.2 9.1 13.7 19.1 23.5 18.7 9.3-.4 13-6 24.2-6 11.3 0 14.5 6 24.3 5.9 10.2-.2 16.5-9.1 22.8-18.2 6.9-10.4 9.8-20.4 10-21zm135.4-53.4c0-26.6-18.5-44.8-44.9-44.8h-51.2v136.4h21.2v-46.6h29.3c26.8 0 45.6-18.4 45.6-45zm90 23.7c0-19.7-15.8-32.4-40-32.4-22.5 0-39.1 12.9-39.7 30.5h19.1c1.6-8.4 9.4-13.9 20-13.9 13 0 20.2 6 20.2 17.2v7.5l-26.4 1.6c-24.6 1.5-37.9 11.6-37.9 29.1 0 17.7 13.7 29.4 33.4 29.4 13.3 0 25.6-6.7 31.2-17.4h.4V310h19.6v-68zM516 210.9h-21.5l-24.9 80.6h-.4l-24.9-80.6H422l35.9 99.3-1.9 6c-3.2 10.2-8.5 14.2-17.9 14.2-1.7 0-4.9-.2-6.2-.3v16.4c1.2.4 6.5.5 8.1.5 20.7 0 30.4-7.9 38.9-31.8L516 210.9z"],
	"cc-diners-club": [576, 512, [], "f24c", "M239.7 79.9c-96.9 0-175.8 78.6-175.8 175.8 0 96.9 78.9 175.8 175.8 175.8 97.2 0 175.8-78.9 175.8-175.8 0-97.2-78.6-175.8-175.8-175.8zm-39.9 279.6c-41.7-15.9-71.4-56.4-71.4-103.8s29.7-87.9 71.4-104.1v207.9zm79.8.3V151.6c41.7 16.2 71.4 56.7 71.4 104.1s-29.7 87.9-71.4 104.1zM528 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM329.7 448h-90.3c-106.2 0-193.8-85.5-193.8-190.2C45.6 143.2 133.2 64 239.4 64h90.3c105 0 200.7 79.2 200.7 193.8 0 104.7-95.7 190.2-200.7 190.2z"],
	"cc-discover": [576, 512, [], "f1f2", "M520.4 196.1c0-7.9-5.5-12.1-15.6-12.1h-4.9v24.9h4.7c10.3 0 15.8-4.4 15.8-12.8zM528 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-44.1 138.9c22.6 0 52.9-4.1 52.9 24.4 0 12.6-6.6 20.7-18.7 23.2l25.8 34.4h-19.6l-22.2-32.8h-2.2v32.8h-16zm-55.9.1h45.3v14H444v18.2h28.3V217H444v22.2h29.3V253H428zm-68.7 0l21.9 55.2 22.2-55.2h17.5l-35.5 84.2h-8.6l-35-84.2zm-55.9-3c24.7 0 44.6 20 44.6 44.6 0 24.7-20 44.6-44.6 44.6-24.7 0-44.6-20-44.6-44.6 0-24.7 20-44.6 44.6-44.6zm-49.3 6.1v19c-20.1-20.1-46.8-4.7-46.8 19 0 25 27.5 38.5 46.8 19.2v19c-29.7 14.3-63.3-5.7-63.3-38.2 0-31.2 33.1-53 63.3-38zm-97.2 66.3c11.4 0 22.4-15.3-3.3-24.4-15-5.5-20.2-11.4-20.2-22.7 0-23.2 30.6-31.4 49.7-14.3l-8.4 10.8c-10.4-11.6-24.9-6.2-24.9 2.5 0 4.4 2.7 6.9 12.3 10.3 18.2 6.6 23.6 12.5 23.6 25.6 0 29.5-38.8 37.4-56.6 11.3l10.3-9.9c3.7 7.1 9.9 10.8 17.5 10.8zM55.4 253H32v-82h23.4c26.1 0 44.1 17 44.1 41.1 0 18.5-13.2 40.9-44.1 40.9zm67.5 0h-16v-82h16zM544 433c0 8.2-6.8 15-15 15H128c189.6-35.6 382.7-139.2 416-160zM74.1 191.6c-5.2-4.9-11.6-6.6-21.9-6.6H48v54.2h4.2c10.3 0 17-2 21.9-6.4 5.7-5.2 8.9-12.8 8.9-20.7s-3.2-15.5-8.9-20.5z"],
	"cc-jcb": [576, 512, [], "f24b", "M431.5 244.3V212c41.2 0 38.5.2 38.5.2 7.3 1.3 13.3 7.3 13.3 16 0 8.8-6 14.5-13.3 15.8-1.2.4-3.3.3-38.5.3zm42.8 20.2c-2.8-.7-3.3-.5-42.8-.5v35c39.6 0 40 .2 42.8-.5 7.5-1.5 13.5-8 13.5-17 0-8.7-6-15.5-13.5-17zM576 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zM182 192.3h-57c0 67.1 10.7 109.7-35.8 109.7-19.5 0-38.8-5.7-57.2-14.8v28c30 8.3 68 8.3 68 8.3 97.9 0 82-47.7 82-131.2zm178.5 4.5c-63.4-16-165-14.9-165 59.3 0 77.1 108.2 73.6 165 59.2V287C312.9 311.7 253 309 253 256s59.8-55.6 107.5-31.2v-28zM544 286.5c0-18.5-16.5-30.5-38-32v-.8c19.5-2.7 30.3-15.5 30.3-30.2 0-19-15.7-30-37-31 0 0 6.3-.3-120.3-.3v127.5h122.7c24.3.1 42.3-12.9 42.3-33.2z"],
	"cc-mastercard": [576, 512, [], "f1f1", "M482.9 410.3c0 6.8-4.6 11.7-11.2 11.7-6.8 0-11.2-5.2-11.2-11.7 0-6.5 4.4-11.7 11.2-11.7 6.6 0 11.2 5.2 11.2 11.7zm-310.8-11.7c-7.1 0-11.2 5.2-11.2 11.7 0 6.5 4.1 11.7 11.2 11.7 6.5 0 10.9-4.9 10.9-11.7-.1-6.5-4.4-11.7-10.9-11.7zm117.5-.3c-5.4 0-8.7 3.5-9.5 8.7h19.1c-.9-5.7-4.4-8.7-9.6-8.7zm107.8.3c-6.8 0-10.9 5.2-10.9 11.7 0 6.5 4.1 11.7 10.9 11.7 6.8 0 11.2-4.9 11.2-11.7 0-6.5-4.4-11.7-11.2-11.7zm105.9 26.1c0 .3.3.5.3 1.1 0 .3-.3.5-.3 1.1-.3.3-.3.5-.5.8-.3.3-.5.5-1.1.5-.3.3-.5.3-1.1.3-.3 0-.5 0-1.1-.3-.3 0-.5-.3-.8-.5-.3-.3-.5-.5-.5-.8-.3-.5-.3-.8-.3-1.1 0-.5 0-.8.3-1.1 0-.5.3-.8.5-1.1.3-.3.5-.3.8-.5.5-.3.8-.3 1.1-.3.5 0 .8 0 1.1.3.5.3.8.3 1.1.5s.2.6.5 1.1zm-2.2 1.4c.5 0 .5-.3.8-.3.3-.3.3-.5.3-.8 0-.3 0-.5-.3-.8-.3 0-.5-.3-1.1-.3h-1.6v3.5h.8V426h.3l1.1 1.4h.8l-1.1-1.3zM576 81v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V81c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zM64 220.6c0 76.5 62.1 138.5 138.5 138.5 27.2 0 53.9-8.2 76.5-23.1-72.9-59.3-72.4-171.2 0-230.5-22.6-15-49.3-23.1-76.5-23.1-76.4-.1-138.5 62-138.5 138.2zm224 108.8c70.5-55 70.2-162.2 0-217.5-70.2 55.3-70.5 162.6 0 217.5zm-142.3 76.3c0-8.7-5.7-14.4-14.7-14.7-4.6 0-9.5 1.4-12.8 6.5-2.4-4.1-6.5-6.5-12.2-6.5-3.8 0-7.6 1.4-10.6 5.4V392h-8.2v36.7h8.2c0-18.9-2.5-30.2 9-30.2 10.2 0 8.2 10.2 8.2 30.2h7.9c0-18.3-2.5-30.2 9-30.2 10.2 0 8.2 10 8.2 30.2h8.2v-23zm44.9-13.7h-7.9v4.4c-2.7-3.3-6.5-5.4-11.7-5.4-10.3 0-18.2 8.2-18.2 19.3 0 11.2 7.9 19.3 18.2 19.3 5.2 0 9-1.9 11.7-5.4v4.6h7.9V392zm40.5 25.6c0-15-22.9-8.2-22.9-15.2 0-5.7 11.9-4.8 18.5-1.1l3.3-6.5c-9.4-6.1-30.2-6-30.2 8.2 0 14.3 22.9 8.3 22.9 15 0 6.3-13.5 5.8-20.7.8l-3.5 6.3c11.2 7.6 32.6 6 32.6-7.5zm35.4 9.3l-2.2-6.8c-3.8 2.1-12.2 4.4-12.2-4.1v-16.6h13.1V392h-13.1v-11.2h-8.2V392h-7.6v7.3h7.6V416c0 17.6 17.3 14.4 22.6 10.9zm13.3-13.4h27.5c0-16.2-7.4-22.6-17.4-22.6-10.6 0-18.2 7.9-18.2 19.3 0 20.5 22.6 23.9 33.8 14.2l-3.8-6c-7.8 6.4-19.6 5.8-21.9-4.9zm59.1-21.5c-4.6-2-11.6-1.8-15.2 4.4V392h-8.2v36.7h8.2V408c0-11.6 9.5-10.1 12.8-8.4l2.4-7.6zm10.6 18.3c0-11.4 11.6-15.1 20.7-8.4l3.8-6.5c-11.6-9.1-32.7-4.1-32.7 15 0 19.8 22.4 23.8 32.7 15l-3.8-6.5c-9.2 6.5-20.7 2.6-20.7-8.6zm66.7-18.3H408v4.4c-8.3-11-29.9-4.8-29.9 13.9 0 19.2 22.4 24.7 29.9 13.9v4.6h8.2V392zm33.7 0c-2.4-1.2-11-2.9-15.2 4.4V392h-7.9v36.7h7.9V408c0-11 9-10.3 12.8-8.4l2.4-7.6zm40.3-14.9h-7.9v19.3c-8.2-10.9-29.9-5.1-29.9 13.9 0 19.4 22.5 24.6 29.9 13.9v4.6h7.9v-51.7zm7.6-75.1v4.6h.8V302h1.9v-.8h-4.6v.8h1.9zm6.6 123.8c0-.5 0-1.1-.3-1.6-.3-.3-.5-.8-.8-1.1-.3-.3-.8-.5-1.1-.8-.5 0-1.1-.3-1.6-.3-.3 0-.8.3-1.4.3-.5.3-.8.5-1.1.8-.5.3-.8.8-.8 1.1-.3.5-.3 1.1-.3 1.6 0 .3 0 .8.3 1.4 0 .3.3.8.8 1.1.3.3.5.5 1.1.8.5.3 1.1.3 1.4.3.5 0 1.1 0 1.6-.3.3-.3.8-.5 1.1-.8.3-.3.5-.8.8-1.1.3-.6.3-1.1.3-1.4zm3.2-124.7h-1.4l-1.6 3.5-1.6-3.5h-1.4v5.4h.8v-4.1l1.6 3.5h1.1l1.4-3.5v4.1h1.1v-5.4zm4.4-80.5c0-76.2-62.1-138.3-138.5-138.3-27.2 0-53.9 8.2-76.5 23.1 72.1 59.3 73.2 171.5 0 230.5 22.6 15 49.5 23.1 76.5 23.1 76.4.1 138.5-61.9 138.5-138.4z"],
	"cc-paypal": [576, 512, [], "f1f4", "M186.3 258.2c0 12.2-9.7 21.5-22 21.5-9.2 0-16-5.2-16-15 0-12.2 9.5-22 21.7-22 9.3 0 16.3 5.7 16.3 15.5zM80.5 209.7h-4.7c-1.5 0-3 1-3.2 2.7l-4.3 26.7 8.2-.3c11 0 19.5-1.5 21.5-14.2 2.3-13.4-6.2-14.9-17.5-14.9zm284 0H360c-1.8 0-3 1-3.2 2.7l-4.2 26.7 8-.3c13 0 22-3 22-18-.1-10.6-9.6-11.1-18.1-11.1zM576 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zM128.3 215.4c0-21-16.2-28-34.7-28h-40c-2.5 0-5 2-5.2 4.7L32 294.2c-.3 2 1.2 4 3.2 4h19c2.7 0 5.2-2.9 5.5-5.7l4.5-26.6c1-7.2 13.2-4.7 18-4.7 28.6 0 46.1-17 46.1-45.8zm84.2 8.8h-19c-3.8 0-4 5.5-4.2 8.2-5.8-8.5-14.2-10-23.7-10-24.5 0-43.2 21.5-43.2 45.2 0 19.5 12.2 32.2 31.7 32.2 9 0 20.2-4.9 26.5-11.9-.5 1.5-1 4.7-1 6.2 0 2.3 1 4 3.2 4H200c2.7 0 5-2.9 5.5-5.7l10.2-64.3c.3-1.9-1.2-3.9-3.2-3.9zm40.5 97.9l63.7-92.6c.5-.5.5-1 .5-1.7 0-1.7-1.5-3.5-3.2-3.5h-19.2c-1.7 0-3.5 1-4.5 2.5l-26.5 39-11-37.5c-.8-2.2-3-4-5.5-4h-18.7c-1.7 0-3.2 1.8-3.2 3.5 0 1.2 19.5 56.8 21.2 62.1-2.7 3.8-20.5 28.6-20.5 31.6 0 1.8 1.5 3.2 3.2 3.2h19.2c1.8-.1 3.5-1.1 4.5-2.6zm159.3-106.7c0-21-16.2-28-34.7-28h-39.7c-2.7 0-5.2 2-5.5 4.7l-16.2 102c-.2 2 1.3 4 3.2 4h20.5c2 0 3.5-1.5 4-3.2l4.5-29c1-7.2 13.2-4.7 18-4.7 28.4 0 45.9-17 45.9-45.8zm84.2 8.8h-19c-3.8 0-4 5.5-4.3 8.2-5.5-8.5-14-10-23.7-10-24.5 0-43.2 21.5-43.2 45.2 0 19.5 12.2 32.2 31.7 32.2 9.3 0 20.5-4.9 26.5-11.9-.3 1.5-1 4.7-1 6.2 0 2.3 1 4 3.2 4H484c2.7 0 5-2.9 5.5-5.7l10.2-64.3c.3-1.9-1.2-3.9-3.2-3.9zm47.5-33.3c0-2-1.5-3.5-3.2-3.5h-18.5c-1.5 0-3 1.2-3.2 2.7l-16.2 104-.3.5c0 1.8 1.5 3.5 3.5 3.5h16.5c2.5 0 5-2.9 5.2-5.7L544 191.2v-.3zm-90 51.8c-12.2 0-21.7 9.7-21.7 22 0 9.7 7 15 16.2 15 12 0 21.7-9.2 21.7-21.5.1-9.8-6.9-15.5-16.2-15.5z"],
	"cc-stripe": [576, 512, [], "f1f5", "M492.4 220.8c-8.9 0-18.7 6.7-18.7 22.7h36.7c0-16-9.3-22.7-18-22.7zM375 223.4c-8.2 0-13.3 2.9-17 7l.2 52.8c3.5 3.7 8.5 6.7 16.8 6.7 13.1 0 21.9-14.3 21.9-33.4 0-18.6-9-33.2-21.9-33.1zM528 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM122.2 281.1c0 25.6-20.3 40.1-49.9 40.3-12.2 0-25.6-2.4-38.8-8.1v-33.9c12 6.4 27.1 11.3 38.9 11.3 7.9 0 13.6-2.1 13.6-8.7 0-17-54-10.6-54-49.9 0-25.2 19.2-40.2 48-40.2 11.8 0 23.5 1.8 35.3 6.5v33.4c-10.8-5.8-24.5-9.1-35.3-9.1-7.5 0-12.1 2.2-12.1 7.7 0 16 54.3 8.4 54.3 50.7zm68.8-56.6h-27V275c0 20.9 22.5 14.4 27 12.6v28.9c-4.7 2.6-13.3 4.7-24.9 4.7-21.1 0-36.9-15.5-36.9-36.5l.2-113.9 34.7-7.4v30.8H191zm74 2.4c-4.5-1.5-18.7-3.6-27.1 7.4v84.4h-35.5V194.2h30.7l2.2 10.5c8.3-15.3 24.9-12.2 29.6-10.5h.1zm44.1 91.8h-35.7V194.2h35.7zm0-142.9l-35.7 7.6v-28.9l35.7-7.6zm74.1 145.5c-12.4 0-20-5.3-25.1-9l-.1 40.2-35.5 7.5V194.2h31.3l1.8 8.8c4.9-4.5 13.9-11.1 27.8-11.1 24.9 0 48.4 22.5 48.4 63.8 0 45.1-23.2 65.5-48.6 65.6zm160.4-51.5h-69.5c1.6 16.6 13.8 21.5 27.6 21.5 14.1 0 25.2-3 34.9-7.9V312c-9.7 5.3-22.4 9.2-39.4 9.2-34.6 0-58.8-21.7-58.8-64.5 0-36.2 20.5-64.9 54.3-64.9 33.7 0 51.3 28.7 51.3 65.1 0 3.5-.3 10.9-.4 12.9z"],
	"cc-visa": [576, 512, [], "f1f0", "M470.1 231.3s7.6 37.2 9.3 45H446c3.3-8.9 16-43.5 16-43.5-.2.3 3.3-9.1 5.3-14.9l2.8 13.4zM576 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48zM152.5 331.2L215.7 176h-42.5l-39.3 106-4.3-21.5-14-71.4c-2.3-9.9-9.4-12.7-18.2-13.1H32.7l-.7 3.1c15.8 4 29.9 9.8 42.2 17.1l35.8 135h42.5zm94.4.2L272.1 176h-40.2l-25.1 155.4h40.1zm139.9-50.8c.2-17.7-10.6-31.2-33.7-42.3-14.1-7.1-22.7-11.9-22.7-19.2.2-6.6 7.3-13.4 23.1-13.4 13.1-.3 22.7 2.8 29.9 5.9l3.6 1.7 5.5-33.6c-7.9-3.1-20.5-6.6-36-6.6-39.7 0-67.6 21.2-67.8 51.4-.3 22.3 20 34.7 35.2 42.2 15.5 7.6 20.8 12.6 20.8 19.3-.2 10.4-12.6 15.2-24.1 15.2-16 0-24.6-2.5-37.7-8.3l-5.3-2.5-5.6 34.9c9.4 4.3 26.8 8.1 44.8 8.3 42.2.1 69.7-20.8 70-53zM528 331.4L495.6 176h-31.1c-9.6 0-16.9 2.8-21 12.9l-59.7 142.5H426s6.9-19.2 8.4-23.3H486c1.2 5.5 4.8 23.3 4.8 23.3H528z"],
	"centercode": [512, 512, [], "f380", "M329.2 268.6c-3.8 35.2-35.4 60.6-70.6 56.8-35.2-3.8-60.6-35.4-56.8-70.6 3.8-35.2 35.4-60.6 70.6-56.8 35.1 3.8 60.6 35.4 56.8 70.6zm-85.8 235.1C96.7 496-8.2 365.5 10.1 224.3c11.2-86.6 65.8-156.9 139.1-192 161-77.1 349.7 37.4 354.7 216.6 4.1 147-118.4 262.2-260.5 254.8zm179.9-180c27.9-118-160.5-205.9-237.2-234.2-57.5 56.3-69.1 188.6-33.8 344.4 68.8 15.8 169.1-26.4 271-110.2z"],
	"centos": [448, 512, [], "f789", "M289.6 97.5l31.6 31.7-76.3 76.5V97.5zm-162.4 31.7l76.3 76.5V97.5h-44.7zm41.5-41.6h44.7v127.9l10.8 10.8 10.8-10.8V87.6h44.7L224.2 32zm26.2 168.1l-10.8-10.8H55.5v-44.8L0 255.7l55.5 55.6v-44.8h128.6l10.8-10.8zm79.3-20.7h107.9v-44.8l-31.6-31.7zm173.3 20.7L392 200.1v44.8H264.3l-10.8 10.8 10.8 10.8H392v44.8l55.5-55.6zM65.4 176.2l32.5-31.7 90.3 90.5h15.3v-15.3l-90.3-90.5 31.6-31.7H65.4zm316.7-78.7h-78.5l31.6 31.7-90.3 90.5V235h15.3l90.3-90.5 31.6 31.7zM203.5 413.9V305.8l-76.3 76.5 31.6 31.7h44.7zM65.4 235h108.8l-76.3-76.5-32.5 31.7zm316.7 100.2l-31.6 31.7-90.3-90.5h-15.3v15.3l90.3 90.5-31.6 31.7h78.5zm0-58.8H274.2l76.3 76.5 31.6-31.7zm-60.9 105.8l-76.3-76.5v108.1h44.7zM97.9 352.9l76.3-76.5H65.4v44.8zm181.8 70.9H235V295.9l-10.8-10.8-10.8 10.8v127.9h-44.7l55.5 55.6zm-166.5-41.6l90.3-90.5v-15.3h-15.3l-90.3 90.5-32.5-31.7v78.7h79.4z"],
	"chrome": [496, 512, [], "f268", "M131.5 217.5L55.1 100.1c47.6-59.2 119-91.8 192-92.1 42.3-.3 85.5 10.5 124.8 33.2 43.4 25.2 76.4 61.4 97.4 103L264 133.4c-58.1-3.4-113.4 29.3-132.5 84.1zm32.9 38.5c0 46.2 37.4 83.6 83.6 83.6s83.6-37.4 83.6-83.6-37.4-83.6-83.6-83.6-83.6 37.3-83.6 83.6zm314.9-89.2L339.6 174c37.9 44.3 38.5 108.2 6.6 157.2L234.1 503.6c46.5 2.5 94.4-7.7 137.8-32.9 107.4-62 150.9-192 107.4-303.9zM133.7 303.6L40.4 120.1C14.9 159.1 0 205.9 0 256c0 124 90.8 226.7 209.5 244.9l63.7-124.8c-57.6 10.8-113.2-20.8-139.5-72.5z"],
	"chromecast": [512, 512, [], "f838", "M447.8,64H64c-23.6,0-42.7,19.1-42.7,42.7v63.9H64v-63.9h383.8v298.6H298.6V448H448c23.6,0,42.7-19.1,42.7-42.7V106.7 C490.7,83.1,471.4,64,447.8,64z M21.3,383.6L21.3,383.6l0,63.9h63.9C85.2,412.2,56.6,383.6,21.3,383.6L21.3,383.6z M21.3,298.6V341 c58.9,0,106.6,48.1,106.6,107h42.7C170.7,365.6,103.7,298.7,21.3,298.6z M213.4,448h42.7c-0.5-129.5-105.3-234.3-234.8-234.6l0,42.4 C127.3,255.6,213.3,342,213.4,448z"],
	"cloudflare": [640, 512, [], "e07d", "M407.906,319.913l-230.8-2.928a4.58,4.58,0,0,1-3.632-1.926,4.648,4.648,0,0,1-.494-4.147,6.143,6.143,0,0,1,5.361-4.076L411.281,303.9c27.631-1.26,57.546-23.574,68.022-50.784l13.286-34.542a7.944,7.944,0,0,0,.524-2.936,7.735,7.735,0,0,0-.164-1.631A151.91,151.91,0,0,0,201.257,198.4,68.12,68.12,0,0,0,94.2,269.59C41.924,271.106,0,313.728,0,366.12a96.054,96.054,0,0,0,1.029,13.958,4.508,4.508,0,0,0,4.445,3.871l426.1.051c.043,0,.08-.019.122-.02a5.606,5.606,0,0,0,5.271-4l3.273-11.265c3.9-13.4,2.448-25.8-4.1-34.9C430.124,325.423,420.09,320.487,407.906,319.913ZM513.856,221.1c-2.141,0-4.271.062-6.391.164a3.771,3.771,0,0,0-3.324,2.653l-9.077,31.193c-3.9,13.4-2.449,25.786,4.1,34.89,6.02,8.4,16.054,13.323,28.238,13.9l49.2,2.939a4.491,4.491,0,0,1,3.51,1.894,4.64,4.64,0,0,1,.514,4.169,6.153,6.153,0,0,1-5.351,4.075l-51.125,2.939c-27.754,1.27-57.669,23.574-68.145,50.784l-3.695,9.606a2.716,2.716,0,0,0,2.427,3.68c.046,0,.088.017.136.017h175.91a4.69,4.69,0,0,0,4.539-3.37,124.807,124.807,0,0,0,4.682-34C640,277.3,583.524,221.1,513.856,221.1Z"],
	"cloudscale": [448, 512, [], "f383", "M318.1 154l-9.4 7.6c-22.5-19.3-51.5-33.6-83.3-33.6C153.8 128 96 188.8 96 260.3c0 6.6.4 13.1 1.4 19.4-2-56 41.8-97.4 92.6-97.4 24.2 0 46.2 9.4 62.6 24.7l-25.2 20.4c-8.3-.9-16.8 1.8-23.1 8.1-11.1 11-11.1 28.9 0 40 11.1 11 28.9 11 40 0 6.3-6.3 9-14.9 8.1-23.1l75.2-88.8c6.3-6.5-3.3-15.9-9.5-9.6zm-83.8 111.5c-5.6 5.5-14.6 5.5-20.2 0-5.6-5.6-5.6-14.6 0-20.2s14.6-5.6 20.2 0 5.6 14.7 0 20.2zM224 32C100.5 32 0 132.5 0 256s100.5 224 224 224 224-100.5 224-224S347.5 32 224 32zm0 384c-88.2 0-160-71.8-160-160S135.8 96 224 96s160 71.8 160 160-71.8 160-160 160z"],
	"cloudsmith": [332, 512, [], "f384", "M332.5 419.9c0 46.4-37.6 84.1-84 84.1s-84-37.7-84-84.1 37.6-84 84-84 84 37.6 84 84zm-84-243.9c46.4 0 80-37.6 80-84s-33.6-84-80-84-88 37.6-88 84-29.6 76-76 76-84 41.6-84 88 37.6 80 84 80 84-33.6 84-80 33.6-80 80-80z"],
	"cloudversify": [616, 512, [], "f385", "M148.6 304c8.2 68.5 67.4 115.5 146 111.3 51.2 43.3 136.8 45.8 186.4-5.6 69.2 1.1 118.5-44.6 131.5-99.5 14.8-62.5-18.2-132.5-92.1-155.1-33-88.1-131.4-101.5-186.5-85-57.3 17.3-84.3 53.2-99.3 109.7-7.8 2.7-26.5 8.9-45 24.1 11.7 0 15.2 8.9 15.2 19.5v20.4c0 10.7-8.7 19.5-19.5 19.5h-20.2c-10.7 0-19.5-6-19.5-16.7V240H98.8C95 240 88 244.3 88 251.9v40.4c0 6.4 5.3 11.8 11.7 11.8h48.9zm227.4 8c-10.7 46.3 21.7 72.4 55.3 86.8C324.1 432.6 259.7 348 296 288c-33.2 21.6-33.7 71.2-29.2 92.9-17.9-12.4-53.8-32.4-57.4-79.8-3-39.9 21.5-75.7 57-93.9C297 191.4 369.9 198.7 400 248c-14.1-48-53.8-70.1-101.8-74.8 30.9-30.7 64.4-50.3 114.2-43.7 69.8 9.3 133.2 82.8 67.7 150.5 35-16.3 48.7-54.4 47.5-76.9l10.5 19.6c11.8 22 15.2 47.6 9.4 72-9.2 39-40.6 68.8-79.7 76.5-32.1 6.3-83.1-5.1-91.8-59.2zM128 208H88.2c-8.9 0-16.2-7.3-16.2-16.2v-39.6c0-8.9 7.3-16.2 16.2-16.2H128c8.9 0 16.2 7.3 16.2 16.2v39.6c0 8.9-7.3 16.2-16.2 16.2zM10.1 168C4.5 168 0 163.5 0 157.9v-27.8c0-5.6 4.5-10.1 10.1-10.1h27.7c5.5 0 10.1 4.5 10.1 10.1v27.8c0 5.6-4.5 10.1-10.1 10.1H10.1zM168 142.7v-21.4c0-5.1 4.2-9.3 9.3-9.3h21.4c5.1 0 9.3 4.2 9.3 9.3v21.4c0 5.1-4.2 9.3-9.3 9.3h-21.4c-5.1 0-9.3-4.2-9.3-9.3zM56 235.5v25c0 6.3-5.1 11.5-11.4 11.5H19.4C13.1 272 8 266.8 8 260.5v-25c0-6.3 5.1-11.5 11.4-11.5h25.1c6.4 0 11.5 5.2 11.5 11.5z"],
	"codepen": [512, 512, [], "f1cb", "M502.285 159.704l-234-156c-7.987-4.915-16.511-4.96-24.571 0l-234 156C3.714 163.703 0 170.847 0 177.989v155.999c0 7.143 3.714 14.286 9.715 18.286l234 156.022c7.987 4.915 16.511 4.96 24.571 0l234-156.022c6-3.999 9.715-11.143 9.715-18.286V177.989c-.001-7.142-3.715-14.286-9.716-18.285zM278 63.131l172.286 114.858-76.857 51.429L278 165.703V63.131zm-44 0v102.572l-95.429 63.715-76.857-51.429L234 63.131zM44 219.132l55.143 36.857L44 292.846v-73.714zm190 229.715L61.714 333.989l76.857-51.429L234 346.275v102.572zm22-140.858l-77.715-52 77.715-52 77.715 52-77.715 52zm22 140.858V346.275l95.429-63.715 76.857 51.429L278 448.847zm190-156.001l-55.143-36.857L468 219.132v73.714z"],
	"codiepie": [472, 512, [], "f284", "M422.5 202.9c30.7 0 33.5 53.1-.3 53.1h-10.8v44.3h-26.6v-97.4h37.7zM472 352.6C429.9 444.5 350.4 504 248 504 111 504 0 393 0 256S111 8 248 8c97.4 0 172.8 53.7 218.2 138.4l-186 108.8L472 352.6zm-38.5 12.5l-60.3-30.7c-27.1 44.3-70.4 71.4-122.4 71.4-82.5 0-149.2-66.7-149.2-148.9 0-82.5 66.7-149.2 149.2-149.2 48.4 0 88.9 23.5 116.9 63.4l59.5-34.6c-40.7-62.6-104.7-100-179.2-100-121.2 0-219.5 98.3-219.5 219.5S126.8 475.5 248 475.5c78.6 0 146.5-42.1 185.5-110.4z"],
	"confluence": [512, 512, [], "f78d", "M2.3 412.2c-4.5 7.6-2.1 17.5 5.5 22.2l105.9 65.2c7.7 4.7 17.7 2.4 22.4-5.3 0-.1.1-.2.1-.2 67.1-112.2 80.5-95.9 280.9-.7 8.1 3.9 17.8.4 21.7-7.7.1-.1.1-.3.2-.4l50.4-114.1c3.6-8.1-.1-17.6-8.1-21.3-22.2-10.4-66.2-31.2-105.9-50.3C127.5 179 44.6 345.3 2.3 412.2zm507.4-312.1c4.5-7.6 2.1-17.5-5.5-22.2L398.4 12.8c-7.5-5-17.6-3.1-22.6 4.4-.2.3-.4.6-.6 1-67.3 112.6-81.1 95.6-280.6.9-8.1-3.9-17.8-.4-21.7 7.7-.1.1-.1.3-.2.4L22.2 141.3c-3.6 8.1.1 17.6 8.1 21.3 22.2 10.4 66.3 31.2 106 50.4 248 120 330.8-45.4 373.4-112.9z"],
	"connectdevelop": [576, 512, [], "f20e", "M550.5 241l-50.089-86.786c1.071-2.142 1.875-4.553 1.875-7.232 0-8.036-6.696-14.733-14.732-15.001l-55.447-95.893c.536-1.607 1.071-3.214 1.071-4.821 0-8.571-6.964-15.268-15.268-15.268-4.821 0-8.839 2.143-11.786 5.625H299.518C296.839 18.143 292.821 16 288 16s-8.839 2.143-11.518 5.625H170.411C167.464 18.143 163.447 16 158.625 16c-8.303 0-15.268 6.696-15.268 15.268 0 1.607.536 3.482 1.072 4.821l-55.983 97.233c-5.356 2.41-9.107 7.5-9.107 13.661 0 .535.268 1.071.268 1.607l-53.304 92.143c-7.232 1.339-12.59 7.5-12.59 15 0 7.232 5.089 13.393 12.054 15l55.179 95.358c-.536 1.607-.804 2.946-.804 4.821 0 7.232 5.089 13.393 12.054 14.732l51.697 89.732c-.536 1.607-1.071 3.482-1.071 5.357 0 8.571 6.964 15.268 15.268 15.268 4.821 0 8.839-2.143 11.518-5.357h106.875C279.161 493.857 283.447 496 288 496s8.839-2.143 11.518-5.357h107.143c2.678 2.946 6.696 4.821 10.982 4.821 8.571 0 15.268-6.964 15.268-15.268 0-1.607-.267-2.946-.803-4.285l51.697-90.268c6.964-1.339 12.054-7.5 12.054-14.732 0-1.607-.268-3.214-.804-4.821l54.911-95.358c6.964-1.339 12.322-7.5 12.322-15-.002-7.232-5.092-13.393-11.788-14.732zM153.535 450.732l-43.66-75.803h43.66v75.803zm0-83.839h-43.66c-.268-1.071-.804-2.142-1.339-3.214l44.999-47.41v50.624zm0-62.411l-50.357 53.304c-1.339-.536-2.679-1.34-4.018-1.607L43.447 259.75c.535-1.339.535-2.679.535-4.018s0-2.41-.268-3.482l51.965-90c2.679-.268 5.357-1.072 7.768-2.679l50.089 51.965v92.946zm0-102.322l-45.803-47.41c1.339-2.143 2.143-4.821 2.143-7.767 0-.268-.268-.804-.268-1.072l43.928-15.804v72.053zm0-80.625l-43.66 15.804 43.66-75.536v59.732zm326.519 39.108l.804 1.339L445.5 329.125l-63.75-67.232 98.036-101.518.268.268zM291.75 355.107l11.518 11.786H280.5l11.25-11.786zm-.268-11.25l-83.303-85.446 79.553-84.375 83.036 87.589-79.286 82.232zm5.357 5.893l79.286-82.232 67.5 71.25-5.892 28.125H313.714l-16.875-17.143zM410.411 44.393c1.071.536 2.142 1.072 3.482 1.34l57.857 100.714v.536c0 2.946.803 5.624 2.143 7.767L376.393 256l-83.035-87.589L410.411 44.393zm-9.107-2.143L287.732 162.518l-57.054-60.268 166.339-60h4.287zm-123.483 0c2.678 2.678 6.16 4.285 10.179 4.285s7.5-1.607 10.179-4.285h75L224.786 95.821 173.893 42.25h103.928zm-116.249 5.625l1.071-2.142a33.834 33.834 0 0 0 2.679-.804l51.161 53.84-54.911 19.821V47.875zm0 79.286l60.803-21.964 59.732 63.214-79.553 84.107-40.982-42.053v-83.304zm0 92.678L198 257.607l-36.428 38.304v-76.072zm0 87.858l42.053-44.464 82.768 85.982-17.143 17.678H161.572v-59.196zm6.964 162.053c-1.607-1.607-3.482-2.678-5.893-3.482l-1.071-1.607v-89.732h99.91l-91.607 94.821h-1.339zm129.911 0c-2.679-2.41-6.428-4.285-10.447-4.285s-7.767 1.875-10.447 4.285h-96.429l91.607-94.821h38.304l91.607 94.821H298.447zm120-11.786l-4.286 7.5c-1.339.268-2.41.803-3.482 1.339l-89.196-91.875h114.376l-17.412 83.036zm12.856-22.232l12.858-60.803h21.964l-34.822 60.803zm34.822-68.839h-20.357l4.553-21.16 17.143 18.214c-.535.803-1.071 1.874-1.339 2.946zm66.161-107.411l-55.447 96.697c-1.339.535-2.679 1.071-4.018 1.874l-20.625-21.964 34.554-163.928 45.803 79.286c-.267 1.339-.803 2.678-.803 4.285 0 1.339.268 2.411.536 3.75z"],
	"contao": [512, 512, [], "f26d", "M45.4 305c14.4 67.1 26.4 129 68.2 175H34c-18.7 0-34-15.2-34-34V66c0-18.7 15.2-34 34-34h57.7C77.9 44.6 65.6 59.2 54.8 75.6c-45.4 70-27 146.8-9.4 229.4zM478 32h-90.2c21.4 21.4 39.2 49.5 52.7 84.1l-137.1 29.3c-14.9-29-37.8-53.3-82.6-43.9-24.6 5.3-41 19.3-48.3 34.6-8.8 18.7-13.2 39.8 8.2 140.3 21.1 100.2 33.7 117.7 49.5 131.2 12.9 11.1 33.4 17 58.3 11.7 44.5-9.4 55.7-40.7 57.4-73.2l137.4-29.6c3.2 71.5-18.7 125.2-57.4 163.6H478c18.7 0 34-15.2 34-34V66c0-18.8-15.2-34-34-34z"],
	"cotton-bureau": [512, 512, [], "f89e", "M474.31 330.41c-23.66 91.85-94.23 144.59-201.9 148.35V429.6c0-48 26.41-74.39 74.39-74.39 62 0 99.2-37.2 99.2-99.21 0-61.37-36.53-98.28-97.38-99.06-33-69.32-146.5-64.65-177.24 0C110.52 157.72 74 194.63 74 256c0 62.13 37.27 99.41 99.4 99.41 48 0 74.55 26.23 74.55 74.39V479c-134.43-5-211.1-85.07-211.1-223 0-141.82 81.35-223.2 223.2-223.2 114.77 0 189.84 53.2 214.69 148.81H500C473.88 71.51 388.22 8 259.82 8 105 8 12 101.19 12 255.82 12 411.14 105.19 504.34 259.82 504c128.27 0 213.87-63.81 239.67-173.59zM357 182.33c41.37 3.45 64.2 29 64.2 73.67 0 48-26.43 74.41-74.4 74.41-28.61 0-49.33-9.59-61.59-27.33 83.06-16.55 75.59-99.67 71.79-120.75zm-81.68 97.36c-2.46-10.34-16.33-87 56.23-97 2.27 10.09 16.52 87.11-56.26 97zM260 132c28.61 0 49 9.67 61.44 27.61-28.36 5.48-49.36 20.59-61.59 43.45-12.23-22.86-33.23-38-61.6-43.45 12.41-17.69 33.27-27.35 61.57-27.35zm-71.52 50.72c73.17 10.57 58.91 86.81 56.49 97-72.41-9.84-59-86.95-56.25-97zM173.2 330.41c-48 0-74.4-26.4-74.4-74.41 0-44.36 22.86-70 64.22-73.67-6.75 37.2-1.38 106.53 71.65 120.75-12.14 17.63-32.84 27.3-61.14 27.3zm53.21 12.39A80.8 80.8 0 0 0 260 309.25c7.77 14.49 19.33 25.54 33.82 33.55a80.28 80.28 0 0 0-33.58 33.83c-8-14.5-19.07-26.23-33.56-33.83z"],
	"cpanel": [640, 512, [], "f388", "M210.3 220.2c-5.6-24.8-26.9-41.2-51-41.2h-37c-7.1 0-12.5 4.5-14.3 10.9L73.1 320l24.7-.1c6.8 0 12.3-4.5 14.2-10.7l25.8-95.7h19.8c8.4 0 16.2 5.6 18.3 14.8 2.5 10.9-5.9 22.6-18.3 22.6h-10.3c-7 0-12.5 4.6-14.3 10.8l-6.4 23.8h32c37.2 0 58.3-36.2 51.7-65.3zm-156.5 28h18.6c6.9 0 12.4-4.4 14.3-10.9l6.2-23.6h-40C30 213.7 9 227.8 1.7 254.8-7 288.6 18.5 320 52 320h12.4l7.1-26.1c1.2-4.4-2.2-8.3-6.4-8.3H53.8c-24.7 0-24.9-37.4 0-37.4zm247.5-34.8h-77.9l-3.5 13.4c-2.4 9.6 4.5 18.5 14.2 18.5h57.5c4 0 2.4 4.3 2.1 5.3l-8.6 31.8c-.4 1.4-.9 5.3-5.5 5.3h-34.9c-5.3 0-5.3-7.9 0-7.9h21.6c6.8 0 12.3-4.6 14.2-10.8l3.5-13.2h-48.4c-39.2 0-43.6 63.8-.7 63.8l57.5.2c11.2 0 20.6-7.2 23.4-17.8l14-51.8c4.8-19.2-9.7-36.8-28.5-36.8zM633.1 179h-18.9c-4.9 0-9.2 3.2-10.4 7.9L568.2 320c20.7 0 39.8-13.8 44.9-34.5l26.5-98.2c1.2-4.3-2-8.3-6.5-8.3zm-236.3 34.7v.1h-48.3l-26.2 98c-1.2 4.4 2.2 8.3 6.4 8.3h18.9c4.8 0 9.2-3 10.4-7.8l17.2-64H395c12.5 0 21.4 11.8 18.1 23.4l-10.6 40c-1.2 4.3 1.9 8.3 6.4 8.3H428c4.6 0 9.1-2.9 10.3-7.8l8.8-33.1c9-33.1-15.9-65.4-50.3-65.4zm98.3 74.6c-3.6 0-6-3.4-5.1-6.7l8-30c.9-3.9 3.7-6 7.8-6h32.9c2.6 0 4.6 2.4 3.9 5.1l-.7 2.6c-.6 2-1.9 3-3.9 3h-21.6c-7 0-12.6 4.6-14.2 10.8l-3.5 13h53.4c10.5 0 20.3-6.6 23.2-17.6l3.2-12c4.9-19.1-9.3-36.8-28.3-36.8h-47.3c-17.9 0-33.8 12-38.6 29.6l-10.8 40c-5 17.7 8.3 36.7 28.3 36.7h66.7c6.8 0 12.3-4.5 14.2-10.7l5.7-21z"],
	"creative-commons": [496, 512, [], "f25e", "M245.83 214.87l-33.22 17.28c-9.43-19.58-25.24-19.93-27.46-19.93-22.13 0-33.22 14.61-33.22 43.84 0 23.57 9.21 43.84 33.22 43.84 14.47 0 24.65-7.09 30.57-21.26l30.55 15.5c-6.17 11.51-25.69 38.98-65.1 38.98-22.6 0-73.96-10.32-73.96-77.05 0-58.69 43-77.06 72.63-77.06 30.72-.01 52.7 11.95 65.99 35.86zm143.05 0l-32.78 17.28c-9.5-19.77-25.72-19.93-27.9-19.93-22.14 0-33.22 14.61-33.22 43.84 0 23.55 9.23 43.84 33.22 43.84 14.45 0 24.65-7.09 30.54-21.26l31 15.5c-2.1 3.75-21.39 38.98-65.09 38.98-22.69 0-73.96-9.87-73.96-77.05 0-58.67 42.97-77.06 72.63-77.06 30.71-.01 52.58 11.95 65.56 35.86zM247.56 8.05C104.74 8.05 0 123.11 0 256.05c0 138.49 113.6 248 247.56 248 129.93 0 248.44-100.87 248.44-248 0-137.87-106.62-248-248.44-248zm.87 450.81c-112.54 0-203.7-93.04-203.7-202.81 0-105.42 85.43-203.27 203.72-203.27 112.53 0 202.82 89.46 202.82 203.26-.01 121.69-99.68 202.82-202.84 202.82z"],
	"creative-commons-by": [496, 512, [], "f4e7", "M314.9 194.4v101.4h-28.3v120.5h-77.1V295.9h-28.3V194.4c0-4.4 1.6-8.2 4.6-11.3 3.1-3.1 6.9-4.7 11.3-4.7H299c4.1 0 7.8 1.6 11.1 4.7 3.1 3.2 4.8 6.9 4.8 11.3zm-101.5-63.7c0-23.3 11.5-35 34.5-35s34.5 11.7 34.5 35c0 23-11.5 34.5-34.5 34.5s-34.5-11.5-34.5-34.5zM247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3z"],
	"creative-commons-nc": [496, 512, [], "f4e8", "M247.6 8C387.4 8 496 115.9 496 256c0 147.2-118.5 248-248.4 248C113.1 504 0 393.2 0 256 0 123.1 104.7 8 247.6 8zM55.8 189.1c-7.4 20.4-11.1 42.7-11.1 66.9 0 110.9 92.1 202.4 203.7 202.4 122.4 0 177.2-101.8 178.5-104.1l-93.4-41.6c-7.7 37.1-41.2 53-68.2 55.4v38.1h-28.8V368c-27.5-.3-52.6-10.2-75.3-29.7l34.1-34.5c31.7 29.4 86.4 31.8 86.4-2.2 0-6.2-2.2-11.2-6.6-15.1-14.2-6-1.8-.1-219.3-97.4zM248.4 52.3c-38.4 0-112.4 8.7-170.5 93l94.8 42.5c10-31.3 40.4-42.9 63.8-44.3v-38.1h28.8v38.1c22.7 1.2 43.4 8.9 62 23L295 199.7c-42.7-29.9-83.5-8-70 11.1 53.4 24.1 43.8 19.8 93 41.6l127.1 56.7c4.1-17.4 6.2-35.1 6.2-53.1 0-57-19.8-105-59.3-143.9-39.3-39.9-87.2-59.8-143.6-59.8z"],
	"creative-commons-nc-eu": [496, 512, [], "f4e9", "M247.7 8C103.6 8 0 124.8 0 256c0 136.3 111.7 248 247.7 248C377.9 504 496 403.1 496 256 496 117 388.4 8 247.7 8zm.6 450.7c-112 0-203.6-92.5-203.6-202.7 0-23.2 3.7-45.2 10.9-66l65.7 29.1h-4.7v29.5h23.3c0 6.2-.4 3.2-.4 19.5h-22.8v29.5h27c11.4 67 67.2 101.3 124.6 101.3 26.6 0 50.6-7.9 64.8-15.8l-10-46.1c-8.7 4.6-28.2 10.8-47.3 10.8-28.2 0-58.1-10.9-67.3-50.2h90.3l128.3 56.8c-1.5 2.1-56.2 104.3-178.8 104.3zm-16.7-190.6l-.5-.4.9.4h-.4zm77.2-19.5h3.7v-29.5h-70.3l-28.6-12.6c2.5-5.5 5.4-10.5 8.8-14.3 12.9-15.8 31.1-22.4 51.1-22.4 18.3 0 35.3 5.4 46.1 10l11.6-47.3c-15-6.6-37-12.4-62.3-12.4-39 0-72.2 15.8-95.9 42.3-5.3 6.1-9.8 12.9-13.9 20.1l-81.6-36.1c64.6-96.8 157.7-93.6 170.7-93.6 113 0 203 90.2 203 203.4 0 18.7-2.1 36.3-6.3 52.9l-136.1-60.5z"],
	"creative-commons-nc-jp": [496, 512, [], "f4ea", "M247.7 8C103.6 8 0 124.8 0 256c0 136.4 111.8 248 247.7 248C377.9 504 496 403.2 496 256 496 117.2 388.5 8 247.7 8zm.6 450.7c-112 0-203.6-92.5-203.6-202.7 0-21.1 3-41.2 9-60.3l127 56.5h-27.9v38.6h58.1l5.7 11.8v18.7h-63.8V360h63.8v56h61.7v-56h64.2v-35.7l81 36.1c-1.5 2.2-57.1 98.3-175.2 98.3zm87.6-137.3h-57.6v-18.7l2.9-5.6 54.7 24.3zm6.5-51.4v-17.8h-38.6l63-116H301l-43.4 96-23-10.2-39.6-85.7h-65.8l27.3 51-81.9-36.5c27.8-44.1 82.6-98.1 173.7-98.1 112.8 0 203 90 203 203.4 0 21-2.7 40.6-7.9 59l-101-45.1z"],
	"creative-commons-nd": [496, 512, [], "f4eb", "M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zm94 144.3v42.5H162.1V197h180.3zm0 79.8v42.5H162.1v-42.5h180.3z"],
	"creative-commons-pd": [496, 512, [], "f4ec", "M248 8C111 8 0 119.1 0 256c0 137 111 248 248 248s248-111 248-248C496 119.1 385 8 248 8zm0 449.5c-139.2 0-235.8-138-190.2-267.9l78.8 35.1c-2.1 10.5-3.3 21.5-3.3 32.9 0 99 73.9 126.9 120.4 126.9 22.9 0 53.5-6.7 79.4-29.5L297 311.1c-5.5 6.3-17.6 16.7-36.3 16.7-37.8 0-53.7-39.9-53.9-71.9 230.4 102.6 216.5 96.5 217.9 96.8-34.3 62.4-100.6 104.8-176.7 104.8zm194.2-150l-224-100c18.8-34 54.9-30.7 74.7-11l40.4-41.6c-27.1-23.3-58-27.5-78.1-27.5-47.4 0-80.9 20.5-100.7 51.6l-74.9-33.4c36.1-54.9 98.1-91.2 168.5-91.2 111.1 0 201.5 90.4 201.5 201.5 0 18-2.4 35.4-6.8 52-.3-.1-.4-.2-.6-.4z"],
	"creative-commons-pd-alt": [496, 512, [], "f4ed", "M247.6 8C104.7 8 0 123.1 0 256c0 138.5 113.6 248 247.6 248C377.5 504 496 403.1 496 256 496 118.1 389.4 8 247.6 8zm.8 450.8c-112.5 0-203.7-93-203.7-202.8 0-105.4 85.5-203.3 203.7-203.3 112.6 0 202.9 89.5 202.8 203.3 0 121.7-99.6 202.8-202.8 202.8zM316.7 186h-53.2v137.2h53.2c21.4 0 70-5.1 70-68.6 0-63.4-48.6-68.6-70-68.6zm.8 108.5h-19.9v-79.7l19.4-.1c3.8 0 35-2.1 35 39.9 0 24.6-10.5 39.9-34.5 39.9zM203.7 186h-68.2v137.3h34.6V279h27c54.1 0 57.1-37.5 57.1-46.5 0-31-16.8-46.5-50.5-46.5zm-4.9 67.3h-29.2v-41.6h28.3c30.9 0 28.8 41.6.9 41.6z"],
	"creative-commons-remix": [496, 512, [], "f4ee", "M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zm161.7 207.7l4.9 2.2v70c-7.2 3.6-63.4 27.5-67.3 28.8-6.5-1.8-113.7-46.8-137.3-56.2l-64.2 26.6-63.3-27.5v-63.8l59.3-24.8c-.7-.7-.4 5-.4-70.4l67.3-29.7L361 178.5v61.6l49.1 20.3zm-70.4 81.5v-43.8h-.4v-1.8l-113.8-46.5V295l113.8 46.9v-.4l.4.4zm7.5-57.6l39.9-16.4-36.8-15.5-39 16.4 35.9 15.5zm52.3 38.1v-43L355.2 298v43.4l44.3-19z"],
	"creative-commons-sa": [496, 512, [], "f4ef", "M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zM137.7 221c13-83.9 80.5-95.7 108.9-95.7 99.8 0 127.5 82.5 127.5 134.2 0 63.6-41 132.9-128.9 132.9-38.9 0-99.1-20-109.4-97h62.5c1.5 30.1 19.6 45.2 54.5 45.2 23.3 0 58-18.2 58-82.8 0-82.5-49.1-80.6-56.7-80.6-33.1 0-51.7 14.6-55.8 43.8h18.2l-49.2 49.2-49-49.2h19.4z"],
	"creative-commons-sampling": [496, 512, [], "f4f0", "M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zm3.6 53.2c2.8-.3 11.5 1 11.5 11.5l6.6 107.2 4.9-59.3c0-6 4.7-10.6 10.6-10.6 5.9 0 10.6 4.7 10.6 10.6 0 2.5-.5-5.7 5.7 81.5l5.8-64.2c.3-2.9 2.9-9.3 10.2-9.3 3.8 0 9.9 2.3 10.6 8.9l11.5 96.5 5.3-12.8c1.8-4.4 5.2-6.6 10.2-6.6h58v21.3h-50.9l-18.2 44.3c-3.9 9.9-19.5 9.1-20.8-3.1l-4-31.9-7.5 92.6c-.3 3-3 9.3-10.2 9.3-3 0-9.8-2.1-10.6-9.3 0-1.9.6 5.8-6.2-77.9l-5.3 72.2c-1.1 4.8-4.8 9.3-10.6 9.3-2.9 0-9.8-2-10.6-9.3 0-1.9.5 6.7-5.8-87.7l-5.8 94.8c0 6.3-3.6 12.4-10.6 12.4-5.2 0-10.6-4.1-10.6-12l-5.8-87.7c-5.8 92.5-5.3 84-5.3 85.9-1.1 4.8-4.8 9.3-10.6 9.3-3 0-9.8-2.1-10.6-9.3 0-.7-.4-1.1-.4-2.6l-6.2-88.6L182 348c-.7 6.5-6.7 9.3-10.6 9.3-5.8 0-9.6-4.1-10.6-8.9L149.7 272c-2 4-3.5 8.4-11.1 8.4H87.2v-21.3H132l13.7-27.9c4.4-9.9 18.2-7.2 19.9 2.7l3.1 20.4 8.4-97.9c0-6 4.8-10.6 10.6-10.6.5 0 10.6-.2 10.6 12.4l4.9 69.1 6.6-92.6c0-10.1 9.5-10.6 10.2-10.6.6 0 10.6.7 10.6 10.6l5.3 80.6 6.2-97.9c.1-1.1-.6-10.3 9.9-11.5z"],
	"creative-commons-sampling-plus": [496, 512, [], "f4f1", "M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zm107 205.6c-4.7 0-9 2.8-10.7 7.2l-4 9.5-11-92.8c-1.7-13.9-22-13.4-23.1.4l-4.3 51.4-5.2-68.8c-1.1-14.3-22.1-14.2-23.2 0l-3.5 44.9-5.9-94.3c-.9-14.5-22.3-14.4-23.2 0l-5.1 83.7-4.3-66.3c-.9-14.4-22.2-14.4-23.2 0l-5.3 80.2-4.1-57c-1.1-14.3-22-14.3-23.2-.2l-7.7 89.8-1.8-12.2c-1.7-11.4-17.1-13.6-22-3.3l-13.2 27.7H87.5v23.2h51.3c4.4 0 8.4-2.5 10.4-6.4l10.7 73.1c2 13.5 21.9 13 23.1-.7l3.8-43.6 5.7 78.3c1.1 14.4 22.3 14.2 23.2-.1l4.6-70.4 4.8 73.3c.9 14.4 22.3 14.4 23.2-.1l4.9-80.5 4.5 71.8c.9 14.3 22.1 14.5 23.2.2l4.6-58.6 4.9 64.4c1.1 14.3 22 14.2 23.1.1l6.8-83 2.7 22.3c1.4 11.8 17.7 14.1 22.3 3.1l18-43.4h50.5V258l-58.4.3zm-78 5.2h-21.9v21.9c0 4.1-3.3 7.5-7.5 7.5-4.1 0-7.5-3.3-7.5-7.5v-21.9h-21.9c-4.1 0-7.5-3.3-7.5-7.5 0-4.1 3.4-7.5 7.5-7.5h21.9v-21.9c0-4.1 3.4-7.5 7.5-7.5s7.5 3.3 7.5 7.5v21.9h21.9c4.1 0 7.5 3.3 7.5 7.5 0 4.1-3.4 7.5-7.5 7.5z"],
	"creative-commons-share": [496, 512, [], "f4f2", "M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zm101 132.4c7.8 0 13.7 6.1 13.7 13.7v182.5c0 7.7-6.1 13.7-13.7 13.7H214.3c-7.7 0-13.7-6-13.7-13.7v-54h-54c-7.8 0-13.7-6-13.7-13.7V131.1c0-8.2 6.6-12.7 12.4-13.7h136.4c7.7 0 13.7 6 13.7 13.7v54h54zM159.9 300.3h40.7V198.9c0-7.4 5.8-12.6 12-13.7h55.8v-40.3H159.9v155.4zm176.2-88.1H227.6v155.4h108.5V212.2z"],
	"creative-commons-zero": [496, 512, [], "f4f3", "M247.6 8C389.4 8 496 118.1 496 256c0 147.1-118.5 248-248.4 248C113.6 504 0 394.5 0 256 0 123.1 104.7 8 247.6 8zm.8 44.7C130.2 52.7 44.7 150.6 44.7 256c0 109.8 91.2 202.8 203.7 202.8 103.2 0 202.8-81.1 202.8-202.8.1-113.8-90.2-203.3-202.8-203.3zm-.4 60.5c-81.9 0-102.5 77.3-102.5 142.8 0 65.5 20.6 142.8 102.5 142.8S350.5 321.5 350.5 256c0-65.5-20.6-142.8-102.5-142.8zm0 53.9c3.3 0 6.4.5 9.2 1.2 5.9 5.1 8.8 12.1 3.1 21.9l-54.5 100.2c-1.7-12.7-1.9-25.1-1.9-34.4 0-28.8 2-88.9 44.1-88.9zm40.8 46.2c2.9 15.4 3.3 31.4 3.3 42.7 0 28.9-2 88.9-44.1 88.9-13.5 0-32.6-7.7-20.1-26.4l60.9-105.2z"],
	"critical-role": [448, 512, [], "f6c9", "M225.82 0c.26.15 216.57 124.51 217.12 124.72 3 1.18 3.7 3.46 3.7 6.56q-.11 125.17 0 250.36a5.88 5.88 0 0 1-3.38 5.78c-21.37 12-207.86 118.29-218.93 124.58h-3C142 466.34 3.08 386.56 2.93 386.48a3.29 3.29 0 0 1-1.88-3.24c0-.87 0-225.94-.05-253.1a5 5 0 0 1 2.93-4.93C27.19 112.11 213.2 6 224.07 0zM215.4 20.42l-.22-.16Q118.06 75.55 21 130.87c0 .12.08.23.13.35l30.86 11.64c-7.71 6-8.32 6-10.65 5.13-.1 0-24.17-9.28-26.8-10v230.43c.88-1.41 64.07-110.91 64.13-111 1.62-2.82 3-1.92 9.12-1.52 1.4.09 1.48.22.78 1.42-41.19 71.33-36.4 63-67.48 116.94-.81 1.4-.61 1.13 1.25 1.13h186.5c1.44 0 1.69-.23 1.7-1.64v-8.88c0-1.34 2.36-.81-18.37-1-7.46-.07-14.14-3.22-21.38-12.7-7.38-9.66-14.62-19.43-21.85-29.21-2.28-3.08-3.45-2.38-16.76-2.38-1.75 0-1.78 0-1.76 1.82.29 26.21.15 25.27 1 32.66.52 4.37 2.16 4.2 9.69 4.81 3.14.26 3.88 4.08.52 4.92-1.57.39-31.6.51-33.67-.1a2.42 2.42 0 0 1 .3-4.73c3.29-.76 6.16.81 6.66-4.44 1.3-13.66 1.17-9 1.1-79.42 0-10.82-.35-12.58-5.36-13.55-1.22-.24-3.54-.16-4.69-.55-2.88-1-2-4.84 1.77-4.85 33.67 0 46.08-1.07 56.06 4.86 7.74 4.61 12 11.48 12.51 20.4.88 14.59-6.51 22.35-15 32.59a1.46 1.46 0 0 0 0 2.22c2.6 3.25 5 6.63 7.71 9.83 27.56 33.23 24.11 30.54 41.28 33.06.89.13 1-.42 1-1.15v-11c0-1 .32-1.43 1.41-1.26a72.37 72.37 0 0 0 23.58-.3c1.08-.15 1.5.2 1.48 1.33 0 .11.88 26.69.87 26.8-.05 1.52.67 1.62 1.89 1.62h186.71Q386.51 304.6 346 234.33c2.26-.66-.4 0 6.69-1.39 2-.39 2.05-.41 3.11 1.44 7.31 12.64 77.31 134 77.37 134.06V138c-1.72.5-103.3 38.72-105.76 39.68-1.08.42-1.55.2-1.91-.88-.63-1.9-1.34-3.76-2.09-5.62-.32-.79-.09-1.13.65-1.39.1 0 95.53-35.85 103-38.77-65.42-37.57-130.56-75-196-112.6l86.82 150.39-.28.33c-9.57-.9-10.46-1.6-11.8-3.94-1-1.69-73.5-127.71-82-142.16-9.1 14.67-83.56 146.21-85.37 146.32-2.93.17-5.88.08-9.25.08q43.25-74.74 86.18-149zm51.93 129.92a37.68 37.68 0 0 0 5.54-.85c1.69-.3 2.53.2 2.6 1.92 0 .11.07 19.06-.86 20.45s-1.88 1.22-2.6-.19c-5-9.69 6.22-9.66-39.12-12-.7 0-1 .23-1 .93 0 .13 3.72 122 3.73 122.11 0 .89.52 1.2 1.21 1.51a83.92 83.92 0 0 1 8.7 4.05c7.31 4.33 11.38 10.84 12.41 19.31 1.44 11.8-2.77 35.77-32.21 37.14-2.75.13-28.26 1.08-34.14-23.25-4.66-19.26 8.26-32.7 19.89-36.4a2.45 2.45 0 0 0 2-2.66c.1-5.63 3-107.1 3.71-121.35.05-1.08-.62-1.16-1.35-1.15-32.35.52-36.75-.34-40.22 8.52-2.42 6.18-4.14 1.32-3.95.23q1.59-9 3.31-18c.4-2.11 1.43-2.61 3.43-1.86 5.59 2.11 6.72 1.7 37.25 1.92 1.73 0 1.78-.08 1.82-1.85.68-27.49.58-22.59 1-29.55a2.69 2.69 0 0 0-1.63-2.8c-5.6-2.91-8.75-7.55-8.9-13.87-.35-14.81 17.72-21.67 27.38-11.51 6.84 7.19 5.8 18.91-2.45 24.15a4.35 4.35 0 0 0-2.22 4.34c0 .59-.11-4.31 1 30.05 0 .9.43 1.12 1.24 1.11.1 0 23-.09 34.47-.37zM68.27 141.7c19.84-4.51 32.68-.56 52.49 1.69 2.76.31 3.74 1.22 3.62 4-.21 5-1.16 22.33-1.24 23.15a2.65 2.65 0 0 1-1.63 2.34c-4.06 1.7-3.61-4.45-4-7.29-3.13-22.43-73.87-32.7-74.63 25.4-.31 23.92 17 53.63 54.08 50.88 27.24-2 19-20.19 24.84-20.47a2.72 2.72 0 0 1 3 3.36c-1.83 10.85-3.42 18.95-3.45 19.15-1.54 9.17-86.7 22.09-93.35-42.06-2.71-25.85 10.44-53.37 40.27-60.15zm80 87.67h-19.49a2.57 2.57 0 0 1-2.66-1.79c2.38-3.75 5.89.92 5.86-6.14-.08-25.75.21-38 .23-40.1 0-3.42-.53-4.65-3.32-4.94-7-.72-3.11-3.37-1.11-3.38 11.84-.1 22.62-.18 30.05.72 8.77 1.07 16.71 12.63 7.93 22.62-2 2.25-4 4.42-6.14 6.73.95 1.15 6.9 8.82 17.28 19.68 2.66 2.78 6.15 3.51 9.88 3.13a2.21 2.21 0 0 0 2.23-2.12c.3-3.42.26 4.73.45-40.58 0-5.65-.34-6.58-3.23-6.83-3.95-.35-4-2.26-.69-3.37l19.09-.09c.32 0 4.49.53 1 3.38 0 .05-.16 0-.24 0-3.61.26-3.94 1-4 4.62-.27 43.93.07 40.23.41 42.82.11.84.27 2.23 5.1 2.14 2.49 0 3.86 3.37 0 3.4-10.37.08-20.74 0-31.11.07-10.67 0-13.47-6.2-24.21-20.82-1.6-2.18-8.31-2.36-8.2-.37.88 16.47 0 17.78 4 17.67 4.75-.1 4.73 3.57.83 3.55zm275-10.15c-1.21 7.13.17 10.38-5.3 10.34-61.55-.42-47.82-.22-50.72-.31a18.4 18.4 0 0 1-3.63-.73c-2.53-.6 1.48-1.23-.38-5.6-1.43-3.37-2.78-6.78-4.11-10.19a1.94 1.94 0 0 0-2-1.44 138 138 0 0 0-14.58.07 2.23 2.23 0 0 0-1.62 1.06c-1.58 3.62-3.07 7.29-4.51 11-1.27 3.23 7.86 1.32 12.19 2.16 3 .57 4.53 3.72.66 3.73H322.9c-2.92 0-3.09-3.15-.74-3.21a6.3 6.3 0 0 0 5.92-3.47c1.5-3 2.8-6 4.11-9.09 18.18-42.14 17.06-40.17 18.42-41.61a1.83 1.83 0 0 1 3 0c2.93 3.34 18.4 44.71 23.62 51.92 2 2.7 5.74 2 6.36 2 3.61.13 4-1.11 4.13-4.29.09-1.87.08 1.17.07-41.24 0-4.46-2.36-3.74-5.55-4.27-.26 0-2.56-.63-.08-3.06.21-.2-.89-.24 21.7-.15 2.32 0 5.32 2.75-1.21 3.45a2.56 2.56 0 0 0-2.66 2.83c-.07 1.63-.19 38.89.29 41.21a3.06 3.06 0 0 0 3.23 2.43c13.25.43 14.92.44 16-3.41 1.67-5.78 4.13-2.52 3.73-.19zm-104.72 64.37c-4.24 0-4.42-3.39-.61-3.41 35.91-.16 28.11.38 37.19-.65 1.68-.19 2.38.24 2.25 1.89-.26 3.39-.64 6.78-1 10.16-.25 2.16-3.2 2.61-3.4-.15-.38-5.31-2.15-4.45-15.63-5.08-1.58-.07-1.64 0-1.64 1.52V304c0 1.65 0 1.6 1.62 1.47 3.12-.25 10.31.34 15.69-1.52.47-.16 3.3-1.79 3.07 1.76 0 .21-.76 10.35-1.18 11.39-.53 1.29-1.88 1.51-2.58.32-1.17-2 0-5.08-3.71-5.3-15.42-.9-12.91-2.55-12.91 6 0 12.25-.76 16.11 3.89 16.24 16.64.48 14.4 0 16.43-5.71.84-2.37 3.5-1.77 3.18.58-.44 3.21-.85 6.43-1.23 9.64 0 .36-.16 2.4-4.66 2.39-37.16-.08-34.54-.19-35.21-.31-2.72-.51-2.2-3 .22-3.45 1.1-.19 4 .54 4.16-2.56 2.44-56.22-.07-51.34-3.91-51.33zm-.41-109.52c2.46.61 3.13 1.76 2.95 4.65-.33 5.3-.34 9-.55 9.69-.66 2.23-3.15 2.12-3.34-.27-.38-4.81-3.05-7.82-7.57-9.15-26.28-7.73-32.81 15.46-27.17 30.22 5.88 15.41 22 15.92 28.86 13.78 5.92-1.85 5.88-6.5 6.91-7.58 1.23-1.3 2.25-1.84 3.12 1.1 0 .1.57 11.89-6 12.75-1.6.21-19.38 3.69-32.68-3.39-21-11.19-16.74-35.47-6.88-45.33 14-14.06 39.91-7.06 42.32-6.47zM289.8 280.14c3.28 0 3.66 3 .16 3.43-2.61.32-5-.42-5 5.46 0 2-.19 29.05.4 41.45.11 2.29 1.15 3.52 3.44 3.65 22 1.21 14.95-1.65 18.79-6.34 1.83-2.24 2.76.84 2.76 1.08.35 13.62-4 12.39-5.19 12.4l-38.16-.19c-1.93-.23-2.06-3-.42-3.38 2-.48 4.94.4 5.13-2.8 1-15.87.57-44.65.34-47.81-.27-3.77-2.8-3.27-5.68-3.71-2.47-.38-2-3.22.34-3.22 1.45-.02 17.97-.03 23.09-.02zm-31.63-57.79c.07 4.08 2.86 3.46 6 3.58 2.61.1 2.53 3.41-.07 3.43-6.48 0-13.7 0-21.61-.06-3.84 0-3.38-3.35 0-3.37 4.49 0 3.24 1.61 3.41-45.54 0-5.08-3.27-3.54-4.72-4.23-2.58-1.23-1.36-3.09.41-3.15 1.29 0 20.19-.41 21.17.21s1.87 1.65-.42 2.86c-1 .52-3.86-.28-4.15 2.47 0 .21-.82 1.63-.07 43.8zm-36.91 274.27a2.93 2.93 0 0 0 3.26 0c17-9.79 182-103.57 197.42-112.51-.14-.43 11.26-.18-181.52-.27-1.22 0-1.57.37-1.53 1.56 0 .1 1.25 44.51 1.22 50.38a28.33 28.33 0 0 1-1.36 7.71c-.55 1.83.38-.5-13.5 32.23-.73 1.72-1 2.21-2-.08-4.19-10.34-8.28-20.72-12.57-31a23.6 23.6 0 0 1-2-10.79c.16-2.46.8-16.12 1.51-48 0-1.95 0-2-2-2h-183c2.58 1.63 178.32 102.57 196 112.76zm-90.9-188.75c0 2.4.36 2.79 2.76 3 11.54 1.17 21 3.74 25.64-7.32 6-14.46 2.66-34.41-12.48-38.84-2-.59-16-2.76-15.94 1.51.05 8.04.01 11.61.02 41.65zm105.75-15.05c0 2.13 1.07 38.68 1.09 39.13.34 9.94-25.58 5.77-25.23-2.59.08-2 1.37-37.42 1.1-39.43-14.1 7.44-14.42 40.21 6.44 48.8a17.9 17.9 0 0 0 22.39-7.07c4.91-7.76 6.84-29.47-5.43-39a2.53 2.53 0 0 1-.36.12zm-12.28-198c-9.83 0-9.73 14.75-.07 14.87s10.1-14.88.07-14.91zm-80.15 103.83c0 1.8.41 2.4 2.17 2.58 13.62 1.39 12.51-11 12.16-13.36-1.69-11.22-14.38-10.2-14.35-7.81.05 4.5-.03 13.68.02 18.59zm212.32 6.4l-6.1-15.84c-2.16 5.48-4.16 10.57-6.23 15.84z"],
	"css3": [512, 512, [], "f13c", "M480 32l-64 368-223.3 80L0 400l19.6-94.8h82l-8 40.6L210 390.2l134.1-44.4 18.8-97.1H29.5l16-82h333.7l10.5-52.7H56.3l16.3-82H480z"],
	"css3-alt": [384, 512, [], "f38b", "M0 32l34.9 395.8L192 480l157.1-52.2L384 32H0zm313.1 80l-4.8 47.3L193 208.6l-.3.1h111.5l-12.8 146.6-98.2 28.7-98.8-29.2-6.4-73.9h48.9l3.2 38.3 52.6 13.3 54.7-15.4 3.7-61.6-166.3-.5v-.1l-.2.1-3.6-46.3L193.1 162l6.5-2.7H76.7L70.9 112h242.2z"],
	"cuttlefish": [440, 512, [], "f38c", "M344 305.5c-17.5 31.6-57.4 54.5-96 54.5-56.6 0-104-47.4-104-104s47.4-104 104-104c38.6 0 78.5 22.9 96 54.5 13.7-50.9 41.7-93.3 87-117.8C385.7 39.1 320.5 8 248 8 111 8 0 119 0 256s111 248 248 248c72.5 0 137.7-31.1 183-80.7-45.3-24.5-73.3-66.9-87-117.8z"],
	"d-and-d": [576, 512, [], "f38d", "M82.5 98.9c-.6-17.2 2-33.8 12.7-48.2.3 7.4 1.2 14.5 4.2 21.6 5.9-27.5 19.7-49.3 42.3-65.5-1.9 5.9-3.5 11.8-3 17.7 8.7-7.4 18.8-17.8 44.4-22.7 14.7-2.8 29.7-2 42.1 1 38.5 9.3 61 34.3 69.7 72.3 5.3 23.1.7 45-8.3 66.4-5.2 12.4-12 24.4-20.7 35.1-2-1.9-3.9-3.8-5.8-5.6-42.8-40.8-26.8-25.2-37.4-37.4-1.1-1.2-1-2.2-.1-3.6 8.3-13.5 11.8-28.2 10-44-1.1-9.8-4.3-18.9-11.3-26.2-14.5-15.3-39.2-15-53.5.6-11.4 12.5-14.1 27.4-10.9 43.6.2 1.3.4 2.7 0 3.9-3.4 13.7-4.6 27.6-2.5 41.6.1.5.1 1.1.1 1.6 0 .3-.1.5-.2 1.1-21.8-11-36-28.3-43.2-52.2-8.3 17.8-11.1 35.5-6.6 54.1-15.6-15.2-21.3-34.3-22-55.2zm469.6 123.2c-11.6-11.6-25-20.4-40.1-26.6-12.8-5.2-26-7.9-39.9-7.1-10 .6-19.6 3.1-29 6.4-2.5.9-5.1 1.6-7.7 2.2-4.9 1.2-7.3-3.1-4.7-6.8 3.2-4.6 3.4-4.2 15-12 .6-.4 1.2-.8 2.2-1.5h-2.5c-.6 0-1.2.2-1.9.3-19.3 3.3-30.7 15.5-48.9 29.6-10.4 8.1-13.8 3.8-12-.5 1.4-3.5 3.3-6.7 5.1-10 1-1.8 2.3-3.4 3.5-5.1-.2-.2-.5-.3-.7-.5-27 18.3-46.7 42.4-57.7 73.3.3.3.7.6 1 .9.3-.6.5-1.2.9-1.7 10.4-12.1 22.8-21.8 36.6-29.8 18.2-10.6 37.5-18.3 58.7-20.2 4.3-.4 8.7-.1 13.1-.1-1.8.7-3.5.9-5.3 1.1-18.5 2.4-35.5 9-51.5 18.5-30.2 17.9-54.5 42.2-75.1 70.4-.3.4-.4.9-.7 1.3 14.5 5.3 24 17.3 36.1 25.6.2-.1.3-.2.4-.4l1.2-2.7c12.2-26.9 27-52.3 46.7-74.5 16.7-18.8 38-25.3 62.5-20 5.9 1.3 11.4 4.4 17.2 6.8 2.3-1.4 5.1-3.2 8-4.7 8.4-4.3 17.4-7 26.7-9 14.7-3.1 29.5-4.9 44.5-1.3v-.5c-.5-.4-1.2-.8-1.7-1.4zM316.7 397.6c-39.4-33-22.8-19.5-42.7-35.6-.8.9 0-.2-1.9 3-11.2 19.1-25.5 35.3-44 47.6-10.3 6.8-21.5 11.8-34.1 11.8-21.6 0-38.2-9.5-49.4-27.8-12-19.5-13.3-40.7-8.2-62.6 7.8-33.8 30.1-55.2 38.6-64.3-18.7-6.2-33 1.7-46.4 13.9.8-13.9 4.3-26.2 11.8-37.3-24.3 10.6-45.9 25-64.8 43.9-.3-5.8 5.4-43.7 5.6-44.7.3-2.7-.6-5.3-3-7.4-24.2 24.7-44.5 51.8-56.1 84.6 7.4-5.9 14.9-11.4 23.6-16.2-8.3 22.3-19.6 52.8-7.8 101.1 4.6 19 11.9 36.8 24.1 52.3 2.9 3.7 6.3 6.9 9.5 10.3.2-.2.4-.3.6-.5-1.4-7-2.2-14.1-1.5-21.9 2.2 3.2 3.9 6 5.9 8.6 12.6 16 28.7 27.4 47.2 35.6 25 11.3 51.1 13.3 77.9 8.6 54.9-9.7 90.7-48.6 116-98.8 1-1.8.6-2.9-.9-4.2zm172-46.4c-9.5-3.1-22.2-4.2-28.7-2.9 9.9 4 14.1 6.6 18.8 12 12.6 14.4 10.4 34.7-5.4 45.6-11.7 8.1-24.9 10.5-38.9 9.1-1.2-.1-2.3-.4-3-.6 2.8-3.7 6-7 8.1-10.8 9.4-16.8 5.4-42.1-8.7-56.1-2.1-2.1-4.6-3.9-7-5.9-.3 1.3-.1 2.1.1 2.8 4.2 16.6-8.1 32.4-24.8 31.8-7.6-.3-13.9-3.8-19.6-8.5-19.5-16.1-39.1-32.1-58.5-48.3-5.9-4.9-12.5-8.1-20.1-8.7-4.6-.4-9.3-.6-13.9-.9-5.9-.4-8.8-2.8-10.4-8.4-.9-3.4-1.5-6.8-2.2-10.2-1.5-8.1-6.2-13-14.3-14.2-4.4-.7-8.9-1-13.3-1.5-13-1.4-19.8-7.4-22.6-20.3-5 11-1.6 22.4 7.3 29.9 4.5 3.8 9.3 7.3 13.8 11.2 4.6 3.8 7.4 8.7 7.9 14.8.4 4.7.8 9.5 1.8 14.1 2.2 10.6 8.9 18.4 17 25.1 16.5 13.7 33 27.3 49.5 41.1 17.9 15 13.9 32.8 13 56-.9 22.9 12.2 42.9 33.5 51.2 1 .4 2 .6 3.6 1.1-15.7-18.2-10.1-44.1.7-52.3.3 2.2.4 4.3.9 6.4 9.4 44.1 45.4 64.2 85 56.9 16-2.9 30.6-8.9 42.9-19.8 2-1.8 3.7-4.1 5.9-6.5-19.3 4.6-35.8.1-50.9-10.6.7-.3 1.3-.3 1.9-.3 21.3 1.8 40.6-3.4 57-17.4 19.5-16.6 26.6-42.9 17.4-66-8.3-20.1-23.6-32.3-43.8-38.9zM99.4 179.3c-5.3-9.2-13.2-15.6-22.1-21.3 13.7-.5 26.6.2 39.6 3.7-7-12.2-8.5-24.7-5-38.7 5.3 11.9 13.7 20.1 23.6 26.8 19.7 13.2 35.7 19.6 46.7 30.2 3.4 3.3 6.3 7.1 9.6 10.9-.8-2.1-1.4-4.1-2.2-6-5-10.6-13-18.6-22.6-25-1.8-1.2-2.8-2.5-3.4-4.5-3.3-12.5-3-25.1-.7-37.6 1-5.5 2.8-10.9 4.5-16.3.8-2.4 2.3-4.6 4-6.6.6 6.9 0 25.5 19.6 46 10.8 11.3 22.4 21.9 33.9 32.7 9 8.5 18.3 16.7 25.5 26.8 1.1 1.6 2.2 3.3 3.8 4.7-5-13-14.2-24.1-24.2-33.8-9.6-9.3-19.4-18.4-29.2-27.4-3.3-3-4.6-6.7-5.1-10.9-1.2-10.4 0-20.6 4.3-30.2.5-1 1.1-2 1.9-3.3.5 4.2.6 7.9 1.4 11.6 4.8 23.1 20.4 36.3 49.3 63.5 10 9.4 19.3 19.2 25.6 31.6 4.8 9.3 7.3 19 5.7 29.6-.1.6.5 1.7 1.1 2 6.2 2.6 10 6.9 9.7 14.3 7.7-2.6 12.5-8 16.4-14.5 4.2 20.2-9.1 50.3-27.2 58.7.4-4.5 5-23.4-16.5-27.7-6.8-1.3-12.8-1.3-22.9-2.1 4.7-9 10.4-20.6.5-22.4-24.9-4.6-52.8 1.9-57.8 4.6 8.2.4 16.3 1 23.5 3.3-2 6.5-4 12.7-5.8 18.9-1.9 6.5 2.1 14.6 9.3 9.6 1.2-.9 2.3-1.9 3.3-2.7-3.1 17.9-2.9 15.9-2.8 18.3.3 10.2 9.5 7.8 15.7 7.3-2.5 11.8-29.5 27.3-45.4 25.8 7-4.7 12.7-10.3 15.9-17.9-6.5.8-12.9 1.6-19.2 2.4l-.3-.9c4.7-3.4 8-7.8 10.2-13.1 8.7-21.1-3.6-38-25-39.9-9.1-.8-17.8.8-25.9 5.5 6.2-15.6 17.2-26.6 32.6-34.5-15.2-4.3-8.9-2.7-24.6-6.3 14.6-9.3 30.2-13.2 46.5-14.6-5.2-3.2-48.1-3.6-70.2 20.9 7.9 1.4 15.5 2.8 23.2 4.2-23.8 7-44 19.7-62.4 35.6 1.1-4.8 2.7-9.5 3.3-14.3.6-4.5.8-9.2.1-13.6-1.5-9.4-8.9-15.1-19.7-16.3-7.9-.9-15.6.1-23.3 1.3-.9.1-1.7.3-2.9 0 15.8-14.8 36-21.7 53.1-33.5 6-4.5 6.8-8.2 3-14.9zm128.4 26.8c3.3 16 12.6 25.5 23.8 24.3-4.6-11.3-12.1-19.5-23.8-24.3z"],
	"d-and-d-beyond": [640, 512, [], "f6ca", "M313.8 241.5c13.8 0 21-10.1 24.8-17.9-1-1.1-5-4.2-7.4-6.6-2.4 4.3-8.2 10.7-13.9 10.7-10.2 0-15.4-14.7-3.2-26.6-.5-.2-4.3-1.8-8 2.4 0-3 1-5.1 2.1-6.6-3.5 1.3-9.8 5.6-11.4 7.9.2-5.8 1.6-7.5.6-9l-.2-.2s-8.5 5.6-9.3 14.7c0 0 1.1-1.6 2.1-1.9.6-.3 1.3 0 .6 1.9-.2.6-5.8 15.7 5.1 26-.6-1.6-1.9-7.6 2.4-1.9-.3.1 5.8 7.1 15.7 7.1zm52.4-21.1c0-4-4.9-4.4-5.6-4.5 2 3.9.9 7.5.2 9 2.5-.4 5.4-1.6 5.4-4.5zm10.3 5.2c0-6.4-6.2-11.4-13.5-10.7 8 1.3 5.6 13.8-5 11.4 3.7-2.6 3.2-9.9-1.3-12.5 1.4 4.2-3 8.2-7.4 4.6-2.4-1.9-8-6.6-10.6-8.6-2.4-2.1-5.5-1-6.6-1.8-1.3-1.1-.5-3.8-2.2-5-1.6-.8-3-.3-4.8-1-1.6-.6-2.7-1.9-2.6-3.5-2.5 4.4 3.4 6.3 4.5 8.5 1 1.9-.8 4.8 4 8.5 14.8 11.6 9.1 8 10.4 18.1.6 4.3 4.2 6.7 6.4 7.4-2.1-1.9-2.9-6.4 0-9.3 0 13.9 19.2 13.3 23.1 6.4-2.4 1.1-7-.2-9-1.9 7.7 1 14.2-4.1 14.6-10.6zm-39.4-18.4c2 .8 1.6.7 6.4 4.5 10.2-24.5 21.7-15.7 22-15.5 2.2-1.9 9.8-3.8 13.8-2.7-2.4-2.7-7.5-6.2-13.3-6.2-4.7 0-7.4 2.2-8 1.3-.8-1.4 3.2-3.4 3.2-3.4-5.4.2-9.6 6.7-11.2 5.9-1.1-.5 1.4-3.7 1.4-3.7-5.1 2.9-9.3 9.1-10.2 13 4.6-5.8 13.8-9.8 19.7-9-10.5.5-19.5 9.7-23.8 15.8zm242.5 51.9c-20.7 0-40 1.3-50.3 2.1l7.4 8.2v77.2l-7.4 8.2c10.4.8 30.9 2.1 51.6 2.1 42.1 0 59.1-20.7 59.1-48.9 0-29.3-23.2-48.9-60.4-48.9zm-15.1 75.6v-53.3c30.1-3.3 46.8 3.8 46.8 26.3 0 25.6-21.4 30.2-46.8 27zM301.6 181c-1-3.4-.2-6.9 1.1-9.4 1 3 2.6 6.4 7.5 9-.5-2.4-.2-5.6.5-8-1.4-5.4 2.1-9.9 6.4-9.9 6.9 0 8.5 8.8 4.7 14.4 2.1 3.2 5.5 5.6 7.7 7.8 3.2-3.7 5.5-9.5 5.5-13.8 0-8.2-5.5-15.9-16.7-16.5-20-.9-20.2 16.6-20 18.9.5 5.2 3.4 7.8 3.3 7.5zm-.4 6c-.5 1.8-7 3.7-10.2 6.9 4.8-1 7-.2 7.8 1.8.5 1.4-.2 3.4-.5 5.6 1.6-1.8 7-5.5 11-6.2-1-.3-3.4-.8-4.3-.8 2.9-3.4 9.3-4.5 12.8-3.7-2.2-.2-6.7 1.1-8.5 2.6 1.6.3 3 .6 4.3 1.1-2.1.8-4.8 3.4-5.8 6.1 7-5 13.1 5.2 7 8.2.8.2 2.7 0 3.5-.5-.3 1.1-1.9 3-3 3.4 2.9 0 7-1.9 8.2-4.6 0 0-1.8.6-2.6-.2s.3-4.3.3-4.3c-2.3 2.9-3.4-1.3-1.3-4.2-1-.3-3.5-.6-4.6-.5 3.2-1.1 10.4-1.8 11.2-.3.6 1.1-1 3.4-1 3.4 4-.5 8.3 1.1 6.7 5.1 2.9-1.4 5.5-5.9 4.8-10.4-.3 1-1.6 2.4-2.9 2.7.2-1.4-1-2.2-1.9-2.6 1.7-9.6-14.6-14.2-14.1-23.9-1 1.3-1.8 5-.8 7.1 2.7 3.2 8.7 6.7 10.1 12.2-2.6-6.4-15.1-11.4-14.6-20.2-1.6 1.6-2.6 7.8-1.3 11 2.4 1.4 4.5 3.8 4.8 6.1-2.2-5.1-11.4-6.1-13.9-12.2-.6 2.2-.3 5 1 6.7 0 0-2.2-.8-7-.6 1.7.6 5.1 3.5 4.8 5.2zm25.9 7.4c-2.7 0-3.5-2.1-4.2-4.3 3.3 1.3 4.2 4.3 4.2 4.3zm38.9 3.7l-1-.6c-1.1-1-2.9-1.4-4.7-1.4-2.9 0-5.8 1.3-7.5 3.4-.8.8-1.4 1.8-2.1 2.6v15.7c3.5 2.6 7.1-2.9 3-7.2 1.5.3 4.6 2.7 5.1 3.2 0 0 2.6-.5 5-.5 2.1 0 3.9.3 5.6 1.1V196c-1.1.5-2.2 1-2.7 1.4zM79.9 305.9c17.2-4.6 16.2-18 16.2-19.9 0-20.6-24.1-25-37-25H3l8.3 8.6v29.5H0l11.4 14.6V346L3 354.6c61.7 0 73.8 1.5 86.4-5.9 6.7-4 9.9-9.8 9.9-17.6 0-5.1 2.6-18.8-19.4-25.2zm-41.3-27.5c20 0 29.6-.8 29.6 9.1v3c0 12.1-19 8.8-29.6 8.8zm0 59.2V315c12.2 0 32.7-2.3 32.7 8.8v4.5h.2c0 11.2-12.5 9.3-32.9 9.3zm101.2-19.3l23.1.2v-.2l14.1-21.2h-37.2v-14.9h52.4l-14.1-21v-.2l-73.5.2 7.4 8.2v77.1l-7.4 8.2h81.2l14.1-21.2-60.1.2zm214.7-60.1c-73.9 0-77.5 99.3-.3 99.3 77.9 0 74.1-99.3.3-99.3zm-.3 77.5c-37.4 0-36.9-55.3.2-55.3 36.8.1 38.8 55.3-.2 55.3zm-91.3-8.3l44.1-66.2h-41.7l6.1 7.2-20.5 37.2h-.3l-21-37.2 6.4-7.2h-44.9l44.1 65.8.2 19.4-7.7 8.2h42.6l-7.2-8.2zm-28.4-151.3c1.6 1.3 2.9 2.4 2.9 6.6v38.8c0 4.2-.8 5.3-2.7 6.4-.1.1-7.5 4.5-7.9 4.6h35.1c10 0 17.4-1.5 26-8.6-.6-5 .2-9.5.8-12 0-.2-1.8 1.4-2.7 3.5 0-5.7 1.6-15.4 9.6-20.5-.1 0-3.7-.8-9 1.1 2-3.1 10-7.9 10.4-7.9-8.2-26-38-22.9-32.2-22.9-30.9 0-32.6.3-39.9-4 .1.8.5 8.2 9.6 14.9zm21.5 5.5c4.6 0 23.1-3.3 23.1 17.3 0 20.7-18.4 17.3-23.1 17.3zm228.9 79.6l7 8.3V312h-.3c-5.4-14.4-42.3-41.5-45.2-50.9h-31.6l7.4 8.5v76.9l-7.2 8.3h39l-7.4-8.2v-47.4h.3c3.7 10.6 44.5 42.9 48.5 55.6h21.3v-85.2l7.4-8.3zm-106.7-96.1c-32.2 0-32.8.2-39.9-4 .1.7.5 8.3 9.6 14.9 3.1 2 2.9 4.3 2.9 9.5 1.8-1.1 3.8-2.2 6.1-3-1.1 1.1-2.7 2.7-3.5 4.5 1-1.1 7.5-5.1 14.6-3.5-1.6.3-4 1.1-6.1 2.9.1 0 2.1-1.1 7.5-.3v-4.3c4.7 0 23.1-3.4 23.1 17.3 0 20.5-18.5 17.3-19.7 17.3 5.7 4.4 5.8 12 2.2 16.3h.3c33.4 0 36.7-27.3 36.7-34 0-3.8-1.1-32-33.8-33.6z"],
	"dailymotion": [448, 512, [], "e052", "M298.93,267a48.4,48.4,0,0,0-24.36-6.21q-19.83,0-33.44,13.27t-13.61,33.42q0,21.16,13.28,34.6t33.43,13.44q20.5,0,34.11-13.78T322,307.47A47.13,47.13,0,0,0,315.9,284,44.13,44.13,0,0,0,298.93,267ZM0,32V480H448V32ZM374.71,405.26h-53.1V381.37h-.67q-15.79,26.2-55.78,26.2-27.56,0-48.89-13.1a88.29,88.29,0,0,1-32.94-35.77q-11.6-22.68-11.59-50.89,0-27.56,11.76-50.22a89.9,89.9,0,0,1,32.93-35.78q21.18-13.09,47.72-13.1a80.87,80.87,0,0,1,29.74,5.21q13.28,5.21,25,17V153l55.79-12.09Z"],
	"dashcube": [448, 512, [], "f210", "M326.6 104H110.4c-51.1 0-91.2 43.3-91.2 93.5V427c0 50.5 40.1 85 91.2 85h227.2c51.1 0 91.2-34.5 91.2-85V0L326.6 104zM153.9 416.5c-17.7 0-32.4-15.1-32.4-32.8V240.8c0-17.7 14.7-32.5 32.4-32.5h140.7c17.7 0 32 14.8 32 32.5v123.5l51.1 52.3H153.9z"],
	"deezer": [576, 512, [], "e077", "M451.46,244.71H576V172H451.46Zm0-173.89v72.67H576V70.82Zm0,275.06H576V273.2H451.46ZM0,447.09H124.54V374.42H0Zm150.47,0H275V374.42H150.47Zm150.52,0H425.53V374.42H301Zm150.47,0H576V374.42H451.46ZM301,345.88H425.53V273.2H301Zm-150.52,0H275V273.2H150.47Zm0-101.17H275V172H150.47Z"],
	"delicious": [448, 512, [], "f1a5", "M446.5 68c-.4-1.5-.9-3-1.4-4.5-.9-2.5-2-4.8-3.3-7.1-1.4-2.4-3-4.8-4.7-6.9-2.1-2.5-4.4-4.8-6.9-6.8-1.1-.9-2.2-1.7-3.3-2.5-1.3-.9-2.6-1.7-4-2.4-1.8-1-3.6-1.8-5.5-2.5-1.7-.7-3.5-1.3-5.4-1.7-3.8-1-7.9-1.5-12-1.5H48C21.5 32 0 53.5 0 80v352c0 4.1.5 8.2 1.5 12 2 7.7 5.8 14.6 11 20.3 1 1.1 2.1 2.2 3.3 3.3 5.7 5.2 12.6 9 20.3 11 3.8 1 7.9 1.5 12 1.5h352c26.5 0 48-21.5 48-48V80c-.1-4.1-.6-8.2-1.6-12zM416 432c0 8.8-7.2 16-16 16H224V256H32V80c0-8.8 7.2-16 16-16h176v192h192z"],
	"deploydog": [512, 512, [], "f38e", "M382.2 136h51.7v239.6h-51.7v-20.7c-19.8 24.8-52.8 24.1-73.8 14.7-26.2-11.7-44.3-38.1-44.3-71.8 0-29.8 14.8-57.9 43.3-70.8 20.2-9.1 52.7-10.6 74.8 12.9V136zm-64.7 161.8c0 18.2 13.6 33.5 33.2 33.5 19.8 0 33.2-16.4 33.2-32.9 0-17.1-13.7-33.2-33.2-33.2-19.6 0-33.2 16.4-33.2 32.6zM188.5 136h51.7v239.6h-51.7v-20.7c-19.8 24.8-52.8 24.1-73.8 14.7-26.2-11.7-44.3-38.1-44.3-71.8 0-29.8 14.8-57.9 43.3-70.8 20.2-9.1 52.7-10.6 74.8 12.9V136zm-64.7 161.8c0 18.2 13.6 33.5 33.2 33.5 19.8 0 33.2-16.4 33.2-32.9 0-17.1-13.7-33.2-33.2-33.2-19.7 0-33.2 16.4-33.2 32.6zM448 96c17.5 0 32 14.4 32 32v256c0 17.5-14.4 32-32 32H64c-17.5 0-32-14.4-32-32V128c0-17.5 14.4-32 32-32h384m0-32H64C28.8 64 0 92.8 0 128v256c0 35.2 28.8 64 64 64h384c35.2 0 64-28.8 64-64V128c0-35.2-28.8-64-64-64z"],
	"deskpro": [480, 512, [], "f38f", "M205.9 512l31.1-38.4c12.3-.2 25.6-1.4 36.5-6.6 38.9-18.6 38.4-61.9 38.3-63.8-.1-5-.8-4.4-28.9-37.4H362c-.2 50.1-7.3 68.5-10.2 75.7-9.4 23.7-43.9 62.8-95.2 69.4-8.7 1.1-32.8 1.2-50.7 1.1zm200.4-167.7c38.6 0 58.5-13.6 73.7-30.9l-175.5-.3-17.4 31.3 119.2-.1zm-43.6-223.9v168.3h-73.5l-32.7 55.5H250c-52.3 0-58.1-56.5-58.3-58.9-1.2-13.2-21.3-11.6-20.1 1.8 1.4 15.8 8.8 40 26.4 57.1h-91c-25.5 0-110.8-26.8-107-114V16.9C0 .9 9.7.3 15 .1h82c.2 0 .3.1.5.1 4.3-.4 50.1-2.1 50.1 43.7 0 13.3 20.2 13.4 20.2 0 0-18.2-5.5-32.8-15.8-43.7h84.2c108.7-.4 126.5 79.4 126.5 120.2zm-132.5 56l64 29.3c13.3-45.5-42.2-71.7-64-29.3z"],
	"dev": [448, 512, [], "f6cc", "M120.12 208.29c-3.88-2.9-7.77-4.35-11.65-4.35H91.03v104.47h17.45c3.88 0 7.77-1.45 11.65-4.35 3.88-2.9 5.82-7.25 5.82-13.06v-69.65c-.01-5.8-1.96-10.16-5.83-13.06zM404.1 32H43.9C19.7 32 .06 51.59 0 75.8v360.4C.06 460.41 19.7 480 43.9 480h360.2c24.21 0 43.84-19.59 43.9-43.8V75.8c-.06-24.21-19.7-43.8-43.9-43.8zM154.2 291.19c0 18.81-11.61 47.31-48.36 47.25h-46.4V172.98h47.38c35.44 0 47.36 28.46 47.37 47.28l.01 70.93zm100.68-88.66H201.6v38.42h32.57v29.57H201.6v38.41h53.29v29.57h-62.18c-11.16.29-20.44-8.53-20.72-19.69V193.7c-.27-11.15 8.56-20.41 19.71-20.69h63.19l-.01 29.52zm103.64 115.29c-13.2 30.75-36.85 24.63-47.44 0l-38.53-144.8h32.57l29.71 113.72 29.57-113.72h32.58l-38.46 144.8z"],
	"deviantart": [320, 512, [], "f1bd", "M320 93.2l-98.2 179.1 7.4 9.5H320v127.7H159.1l-13.5 9.2-43.7 84c-.3 0-8.6 8.6-9.2 9.2H0v-93.2l93.2-179.4-7.4-9.2H0V102.5h156l13.5-9.2 43.7-84c.3 0 8.6-8.6 9.2-9.2H320v93.1z"],
	"dhl": [640, 512, [], "f790", "M238 301.2h58.7L319 271h-58.7L238 301.2zM0 282.9v6.4h81.8l4.7-6.4H0zM172.9 271c-8.7 0-6-3.6-4.6-5.5 2.8-3.8 7.6-10.4 10.4-14.1 2.8-3.7 2.8-5.9-2.8-5.9h-51l-41.1 55.8h100.1c33.1 0 51.5-22.5 57.2-30.3h-68.2zm317.5-6.9l39.3-53.4h-62.2l-39.3 53.4h62.2zM95.3 271H0v6.4h90.6l4.7-6.4zm111-26.6c-2.8 3.8-7.5 10.4-10.3 14.2-1.4 2-4.1 5.5 4.6 5.5h45.6s7.3-10 13.5-18.4c8.4-11.4.7-35-29.2-35H112.6l-20.4 27.8h111.4c5.6 0 5.5 2.2 2.7 5.9zM0 301.2h73.1l4.7-6.4H0v6.4zm323 0h58.7L404 271h-58.7c-.1 0-22.3 30.2-22.3 30.2zm222 .1h95v-6.4h-90.3l-4.7 6.4zm22.3-30.3l-4.7 6.4H640V271h-72.7zm-13.5 18.3H640v-6.4h-81.5l-4.7 6.4zm-164.2-78.6l-22.5 30.6h-26.2l22.5-30.6h-58.7l-39.3 53.4H409l39.3-53.4h-58.7zm33.5 60.3s-4.3 5.9-6.4 8.7c-7.4 10-.9 21.6 23.2 21.6h94.3l22.3-30.3H423.1z"],
	"diaspora": [512, 512, [], "f791", "M251.64 354.55c-1.4 0-88 119.9-88.7 119.9S76.34 414 76 413.25s86.6-125.7 86.6-127.4c0-2.2-129.6-44-137.6-47.1-1.3-.5 31.4-101.8 31.7-102.1.6-.7 144.4 47 145.5 47 .4 0 .9-.6 1-1.3.4-2 1-148.6 1.7-149.6.8-1.2 104.5-.7 105.1-.3 1.5 1 3.5 156.1 6.1 156.1 1.4 0 138.7-47 139.3-46.3.8.9 31.9 102.2 31.5 102.6-.9.9-140.2 47.1-140.6 48.8-.3 1.4 82.8 122.1 82.5 122.9s-85.5 63.5-86.3 63.5c-1-.2-89-125.5-90.9-125.5z"],
	"digg": [512, 512, [], "f1a6", "M81.7 172.3H0v174.4h132.7V96h-51v76.3zm0 133.4H50.9v-92.3h30.8v92.3zm297.2-133.4v174.4h81.8v28.5h-81.8V416H512V172.3H378.9zm81.8 133.4h-30.8v-92.3h30.8v92.3zm-235.6 41h82.1v28.5h-82.1V416h133.3V172.3H225.1v174.4zm51.2-133.3h30.8v92.3h-30.8v-92.3zM153.3 96h51.3v51h-51.3V96zm0 76.3h51.3v174.4h-51.3V172.3z"],
	"digital-ocean": [512, 512, [], "f391", "M87 481.8h73.7v-73.6H87zM25.4 346.6v61.6H87v-61.6zm466.2-169.7c-23-74.2-82.4-133.3-156.6-156.6C164.9-32.8 8 93.7 8 255.9h95.8c0-101.8 101-180.5 208.1-141.7 39.7 14.3 71.5 46.1 85.8 85.7 39.1 107-39.7 207.8-141.4 208v.3h-.3V504c162.6 0 288.8-156.8 235.6-327.1zm-235.3 231v-95.3h-95.6v95.6H256v-.3z"],
	"discord": [448, 512, [], "f392", "M297.216 243.2c0 15.616-11.52 28.416-26.112 28.416-14.336 0-26.112-12.8-26.112-28.416s11.52-28.416 26.112-28.416c14.592 0 26.112 12.8 26.112 28.416zm-119.552-28.416c-14.592 0-26.112 12.8-26.112 28.416s11.776 28.416 26.112 28.416c14.592 0 26.112-12.8 26.112-28.416.256-15.616-11.52-28.416-26.112-28.416zM448 52.736V512c-64.494-56.994-43.868-38.128-118.784-107.776l13.568 47.36H52.48C23.552 451.584 0 428.032 0 398.848V52.736C0 23.552 23.552 0 52.48 0h343.04C424.448 0 448 23.552 448 52.736zm-72.96 242.688c0-82.432-36.864-149.248-36.864-149.248-36.864-27.648-71.936-26.88-71.936-26.88l-3.584 4.096c43.52 13.312 63.744 32.512 63.744 32.512-60.811-33.329-132.244-33.335-191.232-7.424-9.472 4.352-15.104 7.424-15.104 7.424s21.248-20.224 67.328-33.536l-2.56-3.072s-35.072-.768-71.936 26.88c0 0-36.864 66.816-36.864 149.248 0 0 21.504 37.12 78.08 38.912 0 0 9.472-11.52 17.152-21.248-32.512-9.728-44.8-30.208-44.8-30.208 3.766 2.636 9.976 6.053 10.496 6.4 43.21 24.198 104.588 32.126 159.744 8.96 8.96-3.328 18.944-8.192 29.44-15.104 0 0-12.8 20.992-46.336 30.464 7.68 9.728 16.896 20.736 16.896 20.736 56.576-1.792 78.336-38.912 78.336-38.912z"],
	"discourse": [448, 512, [], "f393", "M225.9 32C103.3 32 0 130.5 0 252.1 0 256 .1 480 .1 480l225.8-.2c122.7 0 222.1-102.3 222.1-223.9C448 134.3 348.6 32 225.9 32zM224 384c-19.4 0-37.9-4.3-54.4-12.1L88.5 392l22.9-75c-9.8-18.1-15.4-38.9-15.4-61 0-70.7 57.3-128 128-128s128 57.3 128 128-57.3 128-128 128z"],
	"dochub": [416, 512, [], "f394", "M397.9 160H256V19.6L397.9 160zM304 192v130c0 66.8-36.5 100.1-113.3 100.1H96V84.8h94.7c12 0 23.1.8 33.1 2.5v-84C212.9 1.1 201.4 0 189.2 0H0v512h189.2C329.7 512 400 447.4 400 318.1V192h-96z"],
	"docker": [640, 512, [], "f395", "M349.9 236.3h-66.1v-59.4h66.1v59.4zm0-204.3h-66.1v60.7h66.1V32zm78.2 144.8H362v59.4h66.1v-59.4zm-156.3-72.1h-66.1v60.1h66.1v-60.1zm78.1 0h-66.1v60.1h66.1v-60.1zm276.8 100c-14.4-9.7-47.6-13.2-73.1-8.4-3.3-24-16.7-44.9-41.1-63.7l-14-9.3-9.3 14c-18.4 27.8-23.4 73.6-3.7 103.8-8.7 4.7-25.8 11.1-48.4 10.7H2.4c-8.7 50.8 5.8 116.8 44 162.1 37.1 43.9 92.7 66.2 165.4 66.2 157.4 0 273.9-72.5 328.4-204.2 21.4.4 67.6.1 91.3-45.2 1.5-2.5 6.6-13.2 8.5-17.1l-13.3-8.9zm-511.1-27.9h-66v59.4h66.1v-59.4zm78.1 0h-66.1v59.4h66.1v-59.4zm78.1 0h-66.1v59.4h66.1v-59.4zm-78.1-72.1h-66.1v60.1h66.1v-60.1z"],
	"draft2digital": [480, 512, [], "f396", "M480 398.1l-144-82.2v64.7h-91.3c30.8-35 81.8-95.9 111.8-149.3 35.2-62.6 16.1-123.4-12.8-153.3-4.4-4.6-62.2-62.9-166-41.2-59.1 12.4-89.4 43.4-104.3 67.3-13.1 20.9-17 39.8-18.2 47.7-5.5 33 19.4 67.1 56.7 67.1 31.7 0 57.3-25.7 57.3-57.4 0-27.1-19.7-52.1-48-56.8 1.8-7.3 17.7-21.1 26.3-24.7 41.1-17.3 78 5.2 83.3 33.5 8.3 44.3-37.1 90.4-69.7 127.6C84.5 328.1 18.3 396.8 0 415.9l336-.1V480zM369.9 371l47.1 27.2-47.1 27.2zM134.2 161.4c0 12.4-10 22.4-22.4 22.4s-22.4-10-22.4-22.4 10-22.4 22.4-22.4 22.4 10.1 22.4 22.4zM82.5 380.5c25.6-27.4 97.7-104.7 150.8-169.9 35.1-43.1 40.3-82.4 28.4-112.7-7.4-18.8-17.5-30.2-24.3-35.7 45.3 2.1 68 23.4 82.2 38.3 0 0 42.4 48.2 5.8 113.3-37 65.9-110.9 147.5-128.5 166.7z"],
	"dribbble": [512, 512, [], "f17d", "M256 8C119.252 8 8 119.252 8 256s111.252 248 248 248 248-111.252 248-248S392.748 8 256 8zm163.97 114.366c29.503 36.046 47.369 81.957 47.835 131.955-6.984-1.477-77.018-15.682-147.502-6.818-5.752-14.041-11.181-26.393-18.617-41.614 78.321-31.977 113.818-77.482 118.284-83.523zM396.421 97.87c-3.81 5.427-35.697 48.286-111.021 76.519-34.712-63.776-73.185-116.168-79.04-124.008 67.176-16.193 137.966 1.27 190.061 47.489zm-230.48-33.25c5.585 7.659 43.438 60.116 78.537 122.509-99.087 26.313-186.36 25.934-195.834 25.809C62.38 147.205 106.678 92.573 165.941 64.62zM44.17 256.323c0-2.166.043-4.322.108-6.473 9.268.19 111.92 1.513 217.706-30.146 6.064 11.868 11.857 23.915 17.174 35.949-76.599 21.575-146.194 83.527-180.531 142.306C64.794 360.405 44.17 310.73 44.17 256.323zm81.807 167.113c22.127-45.233 82.178-103.622 167.579-132.756 29.74 77.283 42.039 142.053 45.189 160.638-68.112 29.013-150.015 21.053-212.768-27.882zm248.38 8.489c-2.171-12.886-13.446-74.897-41.152-151.033 66.38-10.626 124.7 6.768 131.947 9.055-9.442 58.941-43.273 109.844-90.795 141.978z"],
	"dribbble-square": [448, 512, [], "f397", "M90.2 228.2c8.9-42.4 37.4-77.7 75.7-95.7 3.6 4.9 28 38.8 50.7 79-64 17-120.3 16.8-126.4 16.7zM314.6 154c-33.6-29.8-79.3-41.1-122.6-30.6 3.8 5.1 28.6 38.9 51 80 48.6-18.3 69.1-45.9 71.6-49.4zM140.1 364c40.5 31.6 93.3 36.7 137.3 18-2-12-10-53.8-29.2-103.6-55.1 18.8-93.8 56.4-108.1 85.6zm98.8-108.2c-3.4-7.8-7.2-15.5-11.1-23.2C159.6 253 93.4 252.2 87.4 252c0 1.4-.1 2.8-.1 4.2 0 35.1 13.3 67.1 35.1 91.4 22.2-37.9 67.1-77.9 116.5-91.8zm34.9 16.3c17.9 49.1 25.1 89.1 26.5 97.4 30.7-20.7 52.5-53.6 58.6-91.6-4.6-1.5-42.3-12.7-85.1-5.8zm-20.3-48.4c4.8 9.8 8.3 17.8 12 26.8 45.5-5.7 90.7 3.4 95.2 4.4-.3-32.3-11.8-61.9-30.9-85.1-2.9 3.9-25.8 33.2-76.3 53.9zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-64 176c0-88.2-71.8-160-160-160S64 167.8 64 256s71.8 160 160 160 160-71.8 160-160z"],
	"dropbox": [528, 512, [], "f16b", "M264.4 116.3l-132 84.3 132 84.3-132 84.3L0 284.1l132.3-84.3L0 116.3 132.3 32l132.1 84.3zM131.6 395.7l132-84.3 132 84.3-132 84.3-132-84.3zm132.8-111.6l132-84.3-132-83.6L395.7 32 528 116.3l-132.3 84.3L528 284.8l-132.3 84.3-131.3-85z"],
	"drupal": [448, 512, [], "f1a9", "M319.5 114.7c-22.2-14-43.5-19.5-64.7-33.5-13-8.8-31.3-30-46.5-48.3-2.7 29.3-11.5 41.2-22 49.5-21.3 17-34.8 22.2-53.5 32.3C117 123 32 181.5 32 290.5 32 399.7 123.8 480 225.8 480 327.5 480 416 406 416 294c0-112.3-83-171-96.5-179.3zm2.5 325.6c-20.1 20.1-90.1 28.7-116.7 4.2-4.8-4.8.3-12 6.5-12 0 0 17 13.3 51.5 13.3 27 0 46-7.7 54.5-14 6.1-4.6 8.4 4.3 4.2 8.5zm-54.5-52.6c8.7-3.6 29-3.8 36.8 1.3 4.1 2.8 16.1 18.8 6.2 23.7-8.4 4.2-1.2-15.7-26.5-15.7-14.7 0-19.5 5.2-26.7 11-7 6-9.8 8-12.2 4.7-6-8.2 15.9-22.3 22.4-25zM360 405c-15.2-1-45.5-48.8-65-49.5-30.9-.9-104.1 80.7-161.3 42-38.8-26.6-14.6-104.8 51.8-105.2 49.5-.5 83.8 49 108.5 48.5 21.3-.3 61.8-41.8 81.8-41.8 48.7 0 23.3 109.3-15.8 106z"],
	"dyalog": [416, 512, [], "f399", "M0 32v119.2h64V96h107.2C284.6 96 352 176.2 352 255.9 352 332 293.4 416 171.2 416H0v64h171.2C331.9 480 416 367.3 416 255.9c0-58.7-22.1-113.4-62.3-154.3C308.9 56 245.7 32 171.2 32H0z"],
	"earlybirds": [480, 512, [], "f39a", "M313.2 47.5c1.2-13 21.3-14 36.6-8.7.9.3 26.2 9.7 19 15.2-27.9-7.4-56.4 18.2-55.6-6.5zm-201 6.9c30.7-8.1 62 20 61.1-7.1-1.3-14.2-23.4-15.3-40.2-9.6-1 .3-28.7 10.5-20.9 16.7zM319.4 160c-8.8 0-16 7.2-16 16s7.2 16 16 16 16-7.2 16-16-7.2-16-16-16zm-159.7 0c-8.8 0-16 7.2-16 16s7.2 16 16 16 16-7.2 16-16-7.2-16-16-16zm318.5 163.2c-9.9 24-40.7 11-63.9-1.2-13.5 69.1-58.1 111.4-126.3 124.2.3.9-2-.1 24 1 33.6 1.4 63.8-3.1 97.4-8-19.8-13.8-11.4-37.1-9.8-38.1 1.4-.9 14.7 1.7 21.6 11.5 8.6-12.5 28.4-14.8 30.2-13.6 1.6 1.1 6.6 20.9-6.9 34.6 4.7-.9 8.2-1.6 9.8-2.1 2.6-.8 17.7 11.3 3.1 13.3-14.3 2.3-22.6 5.1-47.1 10.8-45.9 10.7-85.9 11.8-117.7 12.8l1 11.6c3.8 18.1-23.4 24.3-27.6 6.2.8 17.9-27.1 21.8-28.4-1l-.5 5.3c-.7 18.4-28.4 17.9-28.3-.6-7.5 13.5-28.1 6.8-26.4-8.5l1.2-12.4c-36.7.9-59.7 3.1-61.8 3.1-20.9 0-20.9-31.6 0-31.6 2.4 0 27.7 1.3 63.2 2.8-61.1-15.5-103.7-55-114.9-118.2-25 12.8-57.5 26.8-68.2.8-10.5-25.4 21.5-42.6 66.8-73.4.7-6.6 1.6-13.3 2.7-19.8-14.4-19.6-11.6-36.3-16.1-60.4-16.8 2.4-23.2-9.1-23.6-23.1.3-7.3 2.1-14.9 2.4-15.4 1.1-1.8 10.1-2 12.7-2.6 6-31.7 50.6-33.2 90.9-34.5 19.7-21.8 45.2-41.5 80.9-48.3C203.3 29 215.2 8.5 216.2 8c1.7-.8 21.2 4.3 26.3 23.2 5.2-8.8 18.3-11.4 19.6-10.7 1.1.6 6.4 15-4.9 25.9 40.3 3.5 72.2 24.7 96 50.7 36.1 1.5 71.8 5.9 77.1 34 2.7.6 11.6.8 12.7 2.6.3.5 2.1 8.1 2.4 15.4-.5 13.9-6.8 25.4-23.6 23.1-3.2 17.3-2.7 32.9-8.7 47.7 2.4 11.7 4 23.8 4.8 36.4 37 25.4 70.3 42.5 60.3 66.9zM207.4 159.9c.9-44-37.9-42.2-78.6-40.3-21.7 1-38.9 1.9-45.5 13.9-11.4 20.9 5.9 92.9 23.2 101.2 9.8 4.7 73.4 7.9 86.3-7.1 8.2-9.4 15-49.4 14.6-67.7zm52 58.3c-4.3-12.4-6-30.1-15.3-32.7-2-.5-9-.5-11 0-10 2.8-10.8 22.1-17 37.2 15.4 0 19.3 9.7 23.7 9.7 4.3 0 6.3-11.3 19.6-14.2zm135.7-84.7c-6.6-12.1-24.8-12.9-46.5-13.9-40.2-1.9-78.2-3.8-77.3 40.3-.5 18.3 5 58.3 13.2 67.8 13 14.9 76.6 11.8 86.3 7.1 15.8-7.6 36.5-78.9 24.3-101.3z"],
	"ebay": [640, 512, [], "f4f4", "M606 189.5l-54.8 109.9-54.9-109.9h-37.5l10.9 20.6c-11.5-19-35.9-26-63.3-26-31.8 0-67.9 8.7-71.5 43.1h33.7c1.4-13.8 15.7-21.8 35-21.8 26 0 41 9.6 41 33v3.4c-12.7 0-28 .1-41.7.4-42.4.9-69.6 10-76.7 34.4 1-5.2 1.5-10.6 1.5-16.2 0-52.1-39.7-76.2-75.4-76.2-21.3 0-43 5.5-58.7 24.2v-80.6h-32.1v169.5c0 10.3-.6 22.9-1.1 33.1h31.5c.7-6.3 1.1-12.9 1.1-19.5 13.6 16.6 35.4 24.9 58.7 24.9 36.9 0 64.9-21.9 73.3-54.2-.5 2.8-.7 5.8-.7 9 0 24.1 21.1 45 60.6 45 26.6 0 45.8-5.7 61.9-25.5 0 6.6.3 13.3 1.1 20.2h29.8c-.7-8.2-1-17.5-1-26.8v-65.6c0-9.3-1.7-17.2-4.8-23.8l61.5 116.1-28.5 54.1h35.9L640 189.5zM243.7 313.8c-29.6 0-50.2-21.5-50.2-53.8 0-32.4 20.6-53.8 50.2-53.8 29.8 0 50.2 21.4 50.2 53.8 0 32.3-20.4 53.8-50.2 53.8zm200.9-47.3c0 30-17.9 48.4-51.6 48.4-25.1 0-35-13.4-35-25.8 0-19.1 18.1-24.4 47.2-25.3 13.1-.5 27.6-.6 39.4-.6zm-411.9 1.6h128.8v-8.5c0-51.7-33.1-75.4-78.4-75.4-56.8 0-83 30.8-83 77.6 0 42.5 25.3 74 82.5 74 31.4 0 68-11.7 74.4-46.1h-33.1c-12 35.8-87.7 36.7-91.2-21.6zm95-21.4H33.3c6.9-56.6 92.1-54.7 94.4 0z"],
	"edge": [512, 512, [], "f282", "M481.92,134.48C440.87,54.18,352.26,8,255.91,8,137.05,8,37.51,91.68,13.47,203.66c26-46.49,86.22-79.14,149.46-79.14,79.27,0,121.09,48.93,122.25,50.18,22,23.8,33,50.39,33,83.1,0,10.4-5.31,25.82-15.11,38.57-1.57,2-6.39,4.84-6.39,11,0,5.06,3.29,9.92,9.14,14,27.86,19.37,80.37,16.81,80.51,16.81A115.39,115.39,0,0,0,444.94,322a118.92,118.92,0,0,0,58.95-102.44C504.39,176.13,488.39,147.26,481.92,134.48ZM212.77,475.67a154.88,154.88,0,0,1-46.64-45c-32.94-47.42-34.24-95.6-20.1-136A155.5,155.5,0,0,1,203,215.75c59-45.2,94.84-5.65,99.06-1a80,80,0,0,0-4.89-10.14c-9.24-15.93-24-36.41-56.56-53.51-33.72-17.69-70.59-18.59-77.64-18.59-38.71,0-77.9,13-107.53,35.69C35.68,183.3,12.77,208.72,8.6,243c-1.08,12.31-2.75,62.8,23,118.27a248,248,0,0,0,248.3,141.61C241.78,496.26,214.05,476.24,212.77,475.67Zm250.72-98.33a7.76,7.76,0,0,0-7.92-.23,181.66,181.66,0,0,1-20.41,9.12,197.54,197.54,0,0,1-69.55,12.52c-91.67,0-171.52-63.06-171.52-144A61.12,61.12,0,0,1,200.61,228,168.72,168.72,0,0,0,161.85,278c-14.92,29.37-33,88.13,13.33,151.66,6.51,8.91,23,30,56,47.67,23.57,12.65,49,19.61,71.7,19.61,35.14,0,115.43-33.44,163-108.87A7.75,7.75,0,0,0,463.49,377.34Z"],
	"edge-legacy": [512, 512, [], "e078", "M25.71,228.16l.35-.48c0,.16,0,.32-.07.48Zm460.58,15.51c0-44-7.76-84.46-28.81-122.4C416.5,47.88,343.91,8,258.89,8,119,7.72,40.62,113.21,26.06,227.68c42.42-61.31,117.07-121.38,220.37-125,0,0,109.67,0,99.42,105H170c6.37-37.39,18.55-59,34.34-78.93-75.05,34.9-121.85,96.1-120.75,188.32.83,71.45,50.13,144.84,120.75,172,83.35,31.84,192.77,7.2,240.13-21.33V363.31C363.6,419.8,173.6,424.23,172.21,295.74H486.29V243.67Z"],
	"elementor": [448, 512, [], "f430", "M425.6 32H22.4C10 32 0 42 0 54.4v403.2C0 470 10 480 22.4 480h403.2c12.4 0 22.4-10 22.4-22.4V54.4C448 42 438 32 425.6 32M164.3 355.5h-39.8v-199h39.8v199zm159.3 0H204.1v-39.8h119.5v39.8zm0-79.6H204.1v-39.8h119.5v39.8zm0-79.7H204.1v-39.8h119.5v39.8z"],
	"ello": [496, 512, [], "f5f1", "M248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm143.84 285.2C375.31 358.51 315.79 404.8 248 404.8s-127.31-46.29-143.84-111.6c-1.65-7.44 2.48-15.71 9.92-17.36 7.44-1.65 15.71 2.48 17.36 9.92 14.05 52.91 62 90.11 116.56 90.11s102.51-37.2 116.56-90.11c1.65-7.44 9.92-12.4 17.36-9.92 7.44 1.65 12.4 9.92 9.92 17.36z"],
	"ember": [640, 512, [], "f423", "M639.9 254.6c-1.1-10.7-10.7-6.8-10.7-6.8s-15.6 12.1-29.3 10.7c-13.7-1.3-9.4-32-9.4-32s3-28.1-5.1-30.4c-8.1-2.4-18 7.3-18 7.3s-12.4 13.7-18.3 31.2l-1.6.5s1.9-30.6-.3-37.6c-1.6-3.5-16.4-3.2-18.8 3s-14.2 49.2-15 67.2c0 0-23.1 19.6-43.3 22.8s-25-9.4-25-9.4 54.8-15.3 52.9-59.1-44.2-27.6-49-24c-4.6 3.5-29.4 18.4-36.6 59.7-.2 1.4-.7 7.5-.7 7.5s-21.2 14.2-33 18c0 0 33-55.6-7.3-80.9-11.4-6.8-21.3-.5-27.2 5.3 13.6-17.3 46.4-64.2 36.9-105.2-5.8-24.4-18-27.1-29.2-23.1-17 6.7-23.5 16.7-23.5 16.7s-22 32-27.1 79.5-12.6 105.1-12.6 105.1-10.5 10.2-20.2 10.7-5.4-28.7-5.4-28.7 7.5-44.6 7-52.1-1.1-11.6-9.9-14.2c-8.9-2.7-18.5 8.6-18.5 8.6s-25.5 38.7-27.7 44.6l-1.3 2.4-1.3-1.6s18-52.7.8-53.5-28.5 18.8-28.5 18.8-19.6 32.8-20.4 36.5l-1.3-1.6s8.1-38.2 6.4-47.6c-1.6-9.4-10.5-7.5-10.5-7.5s-11.3-1.3-14.2 5.9-13.7 55.3-15 70.7c0 0-28.2 20.2-46.8 20.4-18.5.3-16.7-11.8-16.7-11.8s68-23.3 49.4-69.2c-8.3-11.8-18-15.5-31.7-15.3-13.7.3-30.3 8.6-41.3 33.3-5.3 11.8-6.8 23-7.8 31.5 0 0-12.3 2.4-18.8-2.9s-10 0-10 0-11.2 14-.1 18.3 28.1 6.1 28.1 6.1c1.6 7.5 6.2 19.5 19.6 29.7 20.2 15.3 58.8-1.3 58.8-1.3l15.9-8.8s.5 14.6 12.1 16.7 16.4 1 36.5-47.9c11.8-25 12.6-23.6 12.6-23.6l1.3-.3s-9.1 46.8-5.6 59.7C187.7 319.4 203 318 203 318s8.3 2.4 15-21.2 19.6-49.9 19.6-49.9h1.6s-5.6 48.1 3 63.7 30.9 5.3 30.9 5.3 15.6-7.8 18-10.2c0 0 18.5 15.8 44.6 12.9 58.3-11.5 79.1-25.9 79.1-25.9s10 24.4 41.1 26.7c35.5 2.7 54.8-18.6 54.8-18.6s-.3 13.5 12.1 18.6 20.7-22.8 20.7-22.8l20.7-57.2h1.9s1.1 37.3 21.5 43.2 47-13.7 47-13.7 6.4-3.5 5.3-14.3zm-578 5.3c.8-32 21.8-45.9 29-39 7.3 7 4.6 22-9.1 31.4-13.7 9.5-19.9 7.6-19.9 7.6zm272.8-123.8s19.1-49.7 23.6-25.5-40 96.2-40 96.2c.5-16.2 16.4-70.7 16.4-70.7zm22.8 138.4c-12.6 33-43.3 19.6-43.3 19.6s-3.5-11.8 6.4-44.9 33.3-20.2 33.3-20.2 16.2 12.4 3.6 45.5zm84.6-14.6s-3-10.5 8.1-30.6c11-20.2 19.6-9.1 19.6-9.1s9.4 10.2-1.3 25.5-26.4 14.2-26.4 14.2z"],
	"empire": [496, 512, [], "f1d1", "M287.6 54.2c-10.8-2.2-22.1-3.3-33.5-3.6V32.4c78.1 2.2 146.1 44 184.6 106.6l-15.8 9.1c-6.1-9.7-12.7-18.8-20.2-27.1l-18 15.5c-26-29.6-61.4-50.7-101.9-58.4l4.8-23.9zM53.4 322.4l23-7.7c-6.4-18.3-10-38.2-10-58.7s3.3-40.4 9.7-58.7l-22.7-7.7c3.6-10.8 8.3-21.3 13.6-31l-15.8-9.1C34 181 24.1 217.5 24.1 256s10 75 27.1 106.6l15.8-9.1c-5.3-10-9.7-20.3-13.6-31.1zM213.1 434c-40.4-8-75.8-29.1-101.9-58.7l-18 15.8c-7.5-8.6-14.4-17.7-20.2-27.4l-16 9.4c38.5 62.3 106.8 104.3 184.9 106.6v-18.3c-11.3-.3-22.7-1.7-33.5-3.6l4.7-23.8zM93.3 120.9l18 15.5c26-29.6 61.4-50.7 101.9-58.4l-4.7-23.8c10.8-2.2 22.1-3.3 33.5-3.6V32.4C163.9 34.6 95.9 76.4 57.4 139l15.8 9.1c6-9.7 12.6-18.9 20.1-27.2zm309.4 270.2l-18-15.8c-26 29.6-61.4 50.7-101.9 58.7l4.7 23.8c-10.8 1.9-22.1 3.3-33.5 3.6v18.3c78.1-2.2 146.4-44.3 184.9-106.6l-16.1-9.4c-5.7 9.7-12.6 18.8-20.1 27.4zM496 256c0 137-111 248-248 248S0 393 0 256 111 8 248 8s248 111 248 248zm-12.2 0c0-130.1-105.7-235.8-235.8-235.8S12.2 125.9 12.2 256 117.9 491.8 248 491.8 483.8 386.1 483.8 256zm-39-106.6l-15.8 9.1c5.3 9.7 10 20.2 13.6 31l-22.7 7.7c6.4 18.3 9.7 38.2 9.7 58.7s-3.6 40.4-10 58.7l23 7.7c-3.9 10.8-8.3 21-13.6 31l15.8 9.1C462 331 471.9 294.5 471.9 256s-9.9-75-27.1-106.6zm-183 177.7c16.3-3.3 30.4-11.6 40.7-23.5l51.2 44.8c11.9-13.6 21.3-29.3 27.1-46.8l-64.2-22.1c2.5-7.5 3.9-15.2 3.9-23.5s-1.4-16.1-3.9-23.5l64.5-22.1c-6.1-17.4-15.5-33.2-27.4-46.8l-51.2 44.8c-10.2-11.9-24.4-20.5-40.7-23.8l13.3-66.4c-8.6-1.9-17.7-2.8-27.1-2.8-9.4 0-18.5.8-27.1 2.8l13.3 66.4c-16.3 3.3-30.4 11.9-40.7 23.8l-51.2-44.8c-11.9 13.6-21.3 29.3-27.4 46.8l64.5 22.1c-2.5 7.5-3.9 15.2-3.9 23.5s1.4 16.1 3.9 23.5l-64.2 22.1c5.8 17.4 15.2 33.2 27.1 46.8l51.2-44.8c10.2 11.9 24.4 20.2 40.7 23.5l-13.3 66.7c8.6 1.7 17.7 2.8 27.1 2.8 9.4 0 18.5-1.1 27.1-2.8l-13.3-66.7z"],
	"envira": [448, 512, [], "f299", "M0 32c477.6 0 366.6 317.3 367.1 366.3L448 480h-26l-70.4-71.2c-39 4.2-124.4 34.5-214.4-37C47 300.3 52 214.7 0 32zm79.7 46c-49.7-23.5-5.2 9.2-5.2 9.2 45.2 31.2 66 73.7 90.2 119.9 31.5 60.2 79 139.7 144.2 167.7 65 28 34.2 12.5 6-8.5-28.2-21.2-68.2-87-91-130.2-31.7-60-61-118.6-144.2-158.1z"],
	"erlang": [640, 512, [], "f39d", "M87.2 53.5H0v405h100.4c-49.7-52.6-78.8-125.3-78.7-212.1-.1-76.7 24-142.7 65.5-192.9zm238.2 9.7c-45.9.1-85.1 33.5-89.2 83.2h169.9c-1.1-49.7-34.5-83.1-80.7-83.2zm230.7-9.6h.3l-.1-.1zm.3 0c31.4 42.7 48.7 97.5 46.2 162.7.5 6 .5 11.7 0 24.1H230.2c-.2 109.7 38.9 194.9 138.6 195.3 68.5-.3 118-51 151.9-106.1l96.4 48.2c-17.4 30.9-36.5 57.8-57.9 80.8H640v-405z"],
	"ethereum": [320, 512, [], "f42e", "M311.9 260.8L160 353.6 8 260.8 160 0l151.9 260.8zM160 383.4L8 290.6 160 512l152-221.4-152 92.8z"],
	"etsy": [384, 512, [], "f2d7", "M384 348c-1.75 10.75-13.75 110-15.5 132-117.879-4.299-219.895-4.743-368.5 0v-25.5c45.457-8.948 60.627-8.019 61-35.25 1.793-72.322 3.524-244.143 0-322-1.029-28.46-12.13-26.765-61-36v-25.5c73.886 2.358 255.933 8.551 362.999-3.75-3.5 38.25-7.75 126.5-7.75 126.5H332C320.947 115.665 313.241 68 277.25 68h-137c-10.25 0-10.75 3.5-10.75 9.75V241.5c58 .5 88.5-2.5 88.5-2.5 29.77-.951 27.56-8.502 40.75-65.251h25.75c-4.407 101.351-3.91 61.829-1.75 160.25H257c-9.155-40.086-9.065-61.045-39.501-61.5 0 0-21.5-2-88-2v139c0 26 14.25 38.25 44.25 38.25H263c63.636 0 66.564-24.996 98.751-99.75H384z"],
	"evernote": [384, 512, [], "f839", "M120.82 132.21c1.6 22.31-17.55 21.59-21.61 21.59-68.93 0-73.64-1-83.58 3.34-.56.22-.74 0-.37-.37L123.79 46.45c.38-.37.6-.22.38.37-4.35 9.99-3.35 15.09-3.35 85.39zm79 308c-14.68-37.08 13-76.93 52.52-76.62 17.49 0 22.6 23.21 7.95 31.42-6.19 3.3-24.95 1.74-25.14 19.2-.05 17.09 19.67 25 31.2 24.89A45.64 45.64 0 0 0 312 393.45v-.08c0-11.63-7.79-47.22-47.54-55.34-7.72-1.54-65-6.35-68.35-50.52-3.74 16.93-17.4 63.49-43.11 69.09-8.74 1.94-69.68 7.64-112.92-36.77 0 0-18.57-15.23-28.23-57.95-3.38-15.75-9.28-39.7-11.14-62 0-18 11.14-30.45 25.07-32.2 81 0 90 2.32 101-7.8 9.82-9.24 7.8-15.5 7.8-102.78 1-8.3 7.79-30.81 53.41-24.14 6 .86 31.91 4.18 37.48 30.64l64.26 11.15c20.43 3.71 70.94 7 80.6 57.94 22.66 121.09 8.91 238.46 7.8 238.46C362.15 485.53 267.06 480 267.06 480c-18.95-.23-54.25-9.4-67.27-39.83zm80.94-204.84c-1 1.92-2.2 6 .85 7 14.09 4.93 39.75 6.84 45.88 5.53 3.11-.25 3.05-4.43 2.48-6.65-3.53-21.85-40.83-26.5-49.24-5.92z"],
	"expeditedssl": [496, 512, [], "f23e", "M248 43.4C130.6 43.4 35.4 138.6 35.4 256S130.6 468.6 248 468.6 460.6 373.4 460.6 256 365.4 43.4 248 43.4zm-97.4 132.9c0-53.7 43.7-97.4 97.4-97.4s97.4 43.7 97.4 97.4v26.6c0 5-3.9 8.9-8.9 8.9h-17.7c-5 0-8.9-3.9-8.9-8.9v-26.6c0-82.1-124-82.1-124 0v26.6c0 5-3.9 8.9-8.9 8.9h-17.7c-5 0-8.9-3.9-8.9-8.9v-26.6zM389.7 380c0 9.7-8 17.7-17.7 17.7H124c-9.7 0-17.7-8-17.7-17.7V238.3c0-9.7 8-17.7 17.7-17.7h248c9.7 0 17.7 8 17.7 17.7V380zm-248-137.3v132.9c0 2.5-1.9 4.4-4.4 4.4h-8.9c-2.5 0-4.4-1.9-4.4-4.4V242.7c0-2.5 1.9-4.4 4.4-4.4h8.9c2.5 0 4.4 1.9 4.4 4.4zm141.7 48.7c0 13-7.2 24.4-17.7 30.4v31.6c0 5-3.9 8.9-8.9 8.9h-17.7c-5 0-8.9-3.9-8.9-8.9v-31.6c-10.5-6.1-17.7-17.4-17.7-30.4 0-19.7 15.8-35.4 35.4-35.4s35.5 15.8 35.5 35.4zM248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 478.3C121 486.3 17.7 383 17.7 256S121 25.7 248 25.7 478.3 129 478.3 256 375 486.3 248 486.3z"],
	"facebook": [512, 512, [], "f09a", "M504 256C504 119 393 8 256 8S8 119 8 256c0 123.78 90.69 226.38 209.25 245V327.69h-63V256h63v-54.64c0-62.15 37-96.48 93.67-96.48 27.14 0 55.52 4.84 55.52 4.84v61h-31.28c-30.8 0-40.41 19.12-40.41 38.73V256h68.78l-11 71.69h-57.78V501C413.31 482.38 504 379.78 504 256z"],
	"facebook-f": [320, 512, [], "f39e", "M279.14 288l14.22-92.66h-88.91v-60.13c0-25.35 12.42-50.06 52.24-50.06h40.42V6.26S260.43 0 225.36 0c-73.22 0-121.08 44.38-121.08 124.72v70.62H22.89V288h81.39v224h100.17V288z"],
	"facebook-messenger": [512, 512, [], "f39f", "M256.55 8C116.52 8 8 110.34 8 248.57c0 72.3 29.71 134.78 78.07 177.94 8.35 7.51 6.63 11.86 8.05 58.23A19.92 19.92 0 0 0 122 502.31c52.91-23.3 53.59-25.14 62.56-22.7C337.85 521.8 504 423.7 504 248.57 504 110.34 396.59 8 256.55 8zm149.24 185.13l-73 115.57a37.37 37.37 0 0 1-53.91 9.93l-58.08-43.47a15 15 0 0 0-18 0l-78.37 59.44c-10.46 7.93-24.16-4.6-17.11-15.67l73-115.57a37.36 37.36 0 0 1 53.91-9.93l58.06 43.46a15 15 0 0 0 18 0l78.41-59.38c10.44-7.98 24.14 4.54 17.09 15.62z"],
	"facebook-square": [448, 512, [], "f082", "M400 32H48A48 48 0 0 0 0 80v352a48 48 0 0 0 48 48h137.25V327.69h-63V256h63v-54.64c0-62.15 37-96.48 93.67-96.48 27.14 0 55.52 4.84 55.52 4.84v61h-31.27c-30.81 0-40.42 19.12-40.42 38.73V256h68.78l-11 71.69h-57.78V480H400a48 48 0 0 0 48-48V80a48 48 0 0 0-48-48z"],
	"fantasy-flight-games": [512, 512, [], "f6dc", "M256 32.86L32.86 256 256 479.14 479.14 256 256 32.86zM88.34 255.83c1.96-2 11.92-12.3 96.49-97.48 41.45-41.75 86.19-43.77 119.77-18.69 24.63 18.4 62.06 58.9 62.15 59 .68.74 1.07 2.86.58 3.38-11.27 11.84-22.68 23.54-33.5 34.69-34.21-32.31-40.52-38.24-48.51-43.95-17.77-12.69-41.4-10.13-56.98 5.1-2.17 2.13-1.79 3.43.12 5.35 2.94 2.95 28.1 28.33 35.09 35.78-11.95 11.6-23.66 22.97-35.69 34.66-12.02-12.54-24.48-25.53-36.54-38.11-21.39 21.09-41.69 41.11-61.85 60.99a42569.01 42569.01 0 0 1-41.13-40.72zm234.82 101.6c-35.49 35.43-78.09 38.14-106.99 20.47-22.08-13.5-39.38-32.08-72.93-66.84 12.05-12.37 23.79-24.42 35.37-36.31 33.02 31.91 37.06 36.01 44.68 42.09 18.48 14.74 42.52 13.67 59.32-1.8 3.68-3.39 3.69-3.64.14-7.24-10.59-10.73-21.19-21.44-31.77-32.18-1.32-1.34-3.03-2.48-.8-4.69 10.79-10.71 21.48-21.52 32.21-32.29.26-.26.65-.38 1.91-1.07 12.37 12.87 24.92 25.92 37.25 38.75 21.01-20.73 41.24-40.68 61.25-60.42 13.68 13.4 27.13 26.58 40.86 40.03-20.17 20.86-81.68 82.71-100.5 101.5zM256 0L0 256l256 256 256-256L256 0zM16 256L256 16l240 240-240 240L16 256z"],
	"fedex": [640, 512, [], "f797", "M586 284.5l53.3-59.9h-62.4l-21.7 24.8-22.5-24.8H414v-16h56.1v-48.1H318.9V236h-.5c-9.6-11-21.5-14.8-35.4-14.8-28.4 0-49.8 19.4-57.3 44.9-18-59.4-97.4-57.6-121.9-14v-24.2H49v-26.2h60v-41.1H0V345h49v-77.5h48.9c-1.5 5.7-2.3 11.8-2.3 18.2 0 73.1 102.6 91.4 130.2 23.7h-42c-14.7 20.9-45.8 8.9-45.8-14.6h85.5c3.7 30.5 27.4 56.9 60.1 56.9 14.1 0 27-6.9 34.9-18.6h.5V345h212.2l22.1-25 22.3 25H640l-54-60.5zm-446.7-16.6c6.1-26.3 41.7-25.6 46.5 0h-46.5zm153.4 48.9c-34.6 0-34-62.8 0-62.8 32.6 0 34.5 62.8 0 62.8zm167.8 19.1h-94.4V169.4h95v30.2H405v33.9h55.5v28.1h-56.1v44.7h56.1v29.6zm-45.9-39.8v-24.4h56.1v-44l50.7 57-50.7 57v-45.6h-56.1zm138.6 10.3l-26.1 29.5H489l45.6-51.2-45.6-51.2h39.7l26.6 29.3 25.6-29.3h38.5l-45.4 51 46 51.4h-40.5l-26.3-29.5z"],
	"fedora": [448, 512, [], "f798", "M225 32C101.3 31.7.8 131.7.4 255.4L0 425.7a53.6 53.6 0 0 0 53.6 53.9l170.2.4c123.7.3 224.3-99.7 224.6-223.4S348.7 32.3 225 32zm169.8 157.2L333 126.6c2.3-4.7 3.8-9.2 3.8-14.3v-1.6l55.2 56.1a101 101 0 0 1 2.8 22.4zM331 94.3a106.06 106.06 0 0 1 58.5 63.8l-54.3-54.6a26.48 26.48 0 0 0-4.2-9.2zM118.1 247.2a49.66 49.66 0 0 0-7.7 11.4l-8.5-8.5a85.78 85.78 0 0 1 16.2-2.9zM97 251.4l11.8 11.9-.9 8a34.74 34.74 0 0 0 2.4 12.5l-27-27.2a80.6 80.6 0 0 1 13.7-5.2zm-18.2 7.4l38.2 38.4a53.17 53.17 0 0 0-14.1 4.7L67.6 266a107 107 0 0 1 11.2-7.2zm-15.2 9.8l35.3 35.5a67.25 67.25 0 0 0-10.5 8.5L53.5 278a64.33 64.33 0 0 1 10.1-9.4zm-13.3 12.3l34.9 35a56.84 56.84 0 0 0-7.7 11.4l-35.8-35.9c2.8-3.8 5.7-7.2 8.6-10.5zm-11 14.3l36.4 36.6a48.29 48.29 0 0 0-3.6 15.2l-39.5-39.8a99.81 99.81 0 0 1 6.7-12zm-8.8 16.3l41.3 41.8a63.47 63.47 0 0 0 6.7 26.2L25.8 326c1.4-4.9 2.9-9.6 4.7-14.5zm-7.9 43l61.9 62.2a31.24 31.24 0 0 0-3.6 14.3v1.1l-55.4-55.7a88.27 88.27 0 0 1-2.9-21.9zm5.3 30.7l54.3 54.6a28.44 28.44 0 0 0 4.2 9.2 106.32 106.32 0 0 1-58.5-63.8zm-5.3-37a80.69 80.69 0 0 1 2.1-17l72.2 72.5a37.59 37.59 0 0 0-9.9 8.7zm253.3-51.8l-42.6-.1-.1 56c-.2 69.3-64.4 115.8-125.7 102.9-5.7 0-19.9-8.7-19.9-24.2a24.89 24.89 0 0 1 24.5-24.6c6.3 0 6.3 1.6 15.7 1.6a55.91 55.91 0 0 0 56.1-55.9l.1-47c0-4.5-4.5-9-8.9-9l-33.6-.1c-32.6-.1-32.5-49.4.1-49.3l42.6.1.1-56a105.18 105.18 0 0 1 105.6-105 86.35 86.35 0 0 1 20.2 2.3c11.2 1.8 19.9 11.9 19.9 24 0 15.5-14.9 27.8-30.3 23.9-27.4-5.9-65.9 14.4-66 54.9l-.1 47a8.94 8.94 0 0 0 8.9 9l33.6.1c32.5.2 32.4 49.5-.2 49.4zm23.5-.3a35.58 35.58 0 0 0 7.6-11.4l8.5 8.5a102 102 0 0 1-16.1 2.9zm21-4.2L308.6 280l.9-8.1a34.74 34.74 0 0 0-2.4-12.5l27 27.2a74.89 74.89 0 0 1-13.7 5.3zm18-7.4l-38-38.4c4.9-1.1 9.6-2.4 13.7-4.7l36.2 35.9c-3.8 2.5-7.9 5-11.9 7.2zm15.5-9.8l-35.3-35.5a61.06 61.06 0 0 0 10.5-8.5l34.9 35a124.56 124.56 0 0 1-10.1 9zm13.2-12.3l-34.9-35a63.18 63.18 0 0 0 7.7-11.4l35.8 35.9a130.28 130.28 0 0 1-8.6 10.5zm11-14.3l-36.4-36.6a48.29 48.29 0 0 0 3.6-15.2l39.5 39.8a87.72 87.72 0 0 1-6.7 12zm13.5-30.9a140.63 140.63 0 0 1-4.7 14.3L345.6 190a58.19 58.19 0 0 0-7.1-26.2zm1-5.6l-71.9-72.1a32 32 0 0 0 9.9-9.2l64.3 64.7a90.93 90.93 0 0 1-2.3 16.6z"],
	"figma": [384, 512, [], "f799", "M277 170.7A85.35 85.35 0 0 0 277 0H106.3a85.3 85.3 0 0 0 0 170.6 85.35 85.35 0 0 0 0 170.7 85.35 85.35 0 1 0 85.3 85.4v-256zm0 0a85.3 85.3 0 1 0 85.3 85.3 85.31 85.31 0 0 0-85.3-85.3z"],
	"firefox": [512, 512, [], "f269", "M503.52,241.48c-.12-1.56-.24-3.12-.24-4.68v-.12l-.36-4.68v-.12a245.86,245.86,0,0,0-7.32-41.15c0-.12,0-.12-.12-.24l-1.08-4c-.12-.24-.12-.48-.24-.6-.36-1.2-.72-2.52-1.08-3.72-.12-.24-.12-.6-.24-.84-.36-1.2-.72-2.4-1.08-3.48-.12-.36-.24-.6-.36-1-.36-1.2-.72-2.28-1.2-3.48l-.36-1.08c-.36-1.08-.84-2.28-1.2-3.36a8.27,8.27,0,0,0-.36-1c-.48-1.08-.84-2.28-1.32-3.36-.12-.24-.24-.6-.36-.84-.48-1.2-1-2.28-1.44-3.48,0-.12-.12-.24-.12-.36-1.56-3.84-3.24-7.68-5-11.4l-.36-.72c-.48-1-.84-1.8-1.32-2.64-.24-.48-.48-1.08-.72-1.56-.36-.84-.84-1.56-1.2-2.4-.36-.6-.6-1.2-1-1.8s-.84-1.44-1.2-2.28c-.36-.6-.72-1.32-1.08-1.92s-.84-1.44-1.2-2.16a18.07,18.07,0,0,0-1.2-2c-.36-.72-.84-1.32-1.2-2s-.84-1.32-1.2-2-.84-1.32-1.2-1.92-.84-1.44-1.32-2.16a15.63,15.63,0,0,0-1.2-1.8L463.2,119a15.63,15.63,0,0,0-1.2-1.8c-.48-.72-1.08-1.56-1.56-2.28-.36-.48-.72-1.08-1.08-1.56l-1.8-2.52c-.36-.48-.6-.84-1-1.32-1-1.32-1.8-2.52-2.76-3.72a248.76,248.76,0,0,0-23.51-26.64A186.82,186.82,0,0,0,412,62.46c-4-3.48-8.16-6.72-12.48-9.84a162.49,162.49,0,0,0-24.6-15.12c-2.4-1.32-4.8-2.52-7.2-3.72a254,254,0,0,0-55.43-19.56c-1.92-.36-3.84-.84-5.64-1.2h-.12c-1-.12-1.8-.36-2.76-.48a236.35,236.35,0,0,0-38-4H255.14a234.62,234.62,0,0,0-45.48,5c-33.59,7.08-63.23,21.24-82.91,39-1.08,1-1.92,1.68-2.4,2.16l-.48.48H124l-.12.12.12-.12a.12.12,0,0,0,.12-.12l-.12.12a.42.42,0,0,1,.24-.12c14.64-8.76,34.92-16,49.44-19.56l5.88-1.44c.36-.12.84-.12,1.2-.24,1.68-.36,3.36-.72,5.16-1.08.24,0,.6-.12.84-.12C250.94,20.94,319.34,40.14,367,85.61a171.49,171.49,0,0,1,26.88,32.76c30.36,49.2,27.48,111.11,3.84,147.59-34.44,53-111.35,71.27-159,24.84a84.19,84.19,0,0,1-25.56-59,74.05,74.05,0,0,1,6.24-31c1.68-3.84,13.08-25.67,18.24-24.59-13.08-2.76-37.55,2.64-54.71,28.19-15.36,22.92-14.52,58.2-5,83.28a132.85,132.85,0,0,1-12.12-39.24c-12.24-82.55,43.31-153,94.31-170.51-27.48-24-96.47-22.31-147.71,15.36-29.88,22-51.23,53.16-62.51,90.36,1.68-20.88,9.6-52.08,25.8-83.88-17.16,8.88-39,37-49.8,62.88-15.6,37.43-21,82.19-16.08,124.79.36,3.24.72,6.36,1.08,9.6,19.92,117.11,122,206.38,244.78,206.38C392.77,503.42,504,392.19,504,255,503.88,250.48,503.76,245.92,503.52,241.48Z"],
	"firefox-browser": [512, 512, [], "e007", "M189.37,152.86Zm-58.74-29.37C130.79,123.5,130.71,123.5,130.63,123.49Zm351.42,45.35c-10.61-25.5-32.08-53-48.94-61.73,13.72,26.89,21.67,53.88,24.7,74,0,0,0,.14.05.41-27.58-68.75-74.35-96.47-112.55-156.83-1.93-3.05-3.86-6.11-5.74-9.33-1-1.65-1.86-3.34-2.69-5.05A44.88,44.88,0,0,1,333.24.69a.63.63,0,0,0-.55-.66.9.9,0,0,0-.46,0l-.12.07-.18.1.1-.14c-54.23,31.77-76.72,87.38-82.5,122.78a130,130,0,0,0-48.33,12.33,6.25,6.25,0,0,0-3.09,7.75,6.13,6.13,0,0,0,7.79,3.79l.52-.21a117.84,117.84,0,0,1,42.11-11l1.42-.1c2-.12,4-.2,6-.22A122.61,122.61,0,0,1,291,140c.67.2,1.32.42,2,.63,1.89.57,3.76,1.2,5.62,1.87,1.36.5,2.71,1,4.05,1.58,1.09.44,2.18.88,3.25,1.35q2.52,1.13,5,2.35c.75.37,1.5.74,2.25,1.13q2.4,1.26,4.74,2.63,1.51.87,3,1.8a124.89,124.89,0,0,1,42.66,44.13c-13-9.15-36.35-18.19-58.82-14.28,87.74,43.86,64.18,194.9-57.39,189.2a108.43,108.43,0,0,1-31.74-6.12c-2.42-.91-4.8-1.89-7.16-2.93-1.38-.63-2.76-1.27-4.12-2C174.5,346,149.9,316.92,146.83,281.59c0,0,11.25-41.95,80.62-41.95,7.5,0,28.93-20.92,29.33-27-.09-2-42.54-18.87-59.09-35.18-8.85-8.71-13.05-12.91-16.77-16.06a69.58,69.58,0,0,0-6.31-4.77A113.05,113.05,0,0,1,173.92,97c-25.06,11.41-44.55,29.45-58.71,45.37h-.12c-9.67-12.25-9-52.65-8.43-61.08-.12-.53-7.22,3.68-8.15,4.31a178.54,178.54,0,0,0-23.84,20.43A214,214,0,0,0,51.9,133.36l0,0a.08.08,0,0,1,0,0,205.84,205.84,0,0,0-32.73,73.9c-.06.27-2.33,10.21-4,22.48q-.42,2.87-.78,5.74c-.57,3.69-1,7.71-1.44,14,0,.24,0,.48-.05.72-.18,2.71-.34,5.41-.49,8.12,0,.41,0,.82,0,1.24,0,134.7,109.21,243.89,243.92,243.89,120.64,0,220.82-87.58,240.43-202.62.41-3.12.74-6.26,1.11-9.41,4.85-41.83-.54-85.79-15.82-122.55Z"],
	"first-order": [448, 512, [], "f2b0", "M12.9 229.2c.1-.1.2-.3.3-.4 0 .1 0 .3-.1.4h-.2zM224 96.6c-7.1 0-14.6.6-21.4 1.7l3.7 67.4-22-64c-14.3 3.7-27.7 9.4-40 16.6l29.4 61.4-45.1-50.9c-11.4 8.9-21.7 19.1-30.6 30.9l50.6 45.4-61.1-29.7c-7.1 12.3-12.9 25.7-16.6 40l64.3 22.6-68-4c-.9 7.1-1.4 14.6-1.4 22s.6 14.6 1.4 21.7l67.7-4-64 22.6c3.7 14.3 9.4 27.7 16.6 40.3l61.1-29.7L97.7 352c8.9 11.7 19.1 22.3 30.9 30.9l44.9-50.9-29.5 61.4c12.3 7.4 25.7 13.1 40 16.9l22.3-64.6-4 68c7.1 1.1 14.6 1.7 21.7 1.7 7.4 0 14.6-.6 21.7-1.7l-4-68.6 22.6 65.1c14.3-4 27.7-9.4 40-16.9L274.9 332l44.9 50.9c11.7-8.9 22-19.1 30.6-30.9l-50.6-45.1 61.1 29.4c7.1-12.3 12.9-25.7 16.6-40.3l-64-22.3 67.4 4c1.1-7.1 1.4-14.3 1.4-21.7s-.3-14.9-1.4-22l-67.7 4 64-22.3c-3.7-14.3-9.1-28-16.6-40.3l-60.9 29.7 50.6-45.4c-8.9-11.7-19.1-22-30.6-30.9l-45.1 50.9 29.4-61.1c-12.3-7.4-25.7-13.1-40-16.9L241.7 166l4-67.7c-7.1-1.2-14.3-1.7-21.7-1.7zM443.4 128v256L224 512 4.6 384V128L224 0l219.4 128zm-17.1 10.3L224 20.9 21.7 138.3v235.1L224 491.1l202.3-117.7V138.3zM224 37.1l187.7 109.4v218.9L224 474.9 36.3 365.4V146.6L224 37.1zm0 50.9c-92.3 0-166.9 75.1-166.9 168 0 92.6 74.6 167.7 166.9 167.7 92 0 166.9-75.1 166.9-167.7 0-92.9-74.9-168-166.9-168z"],
	"first-order-alt": [496, 512, [], "f50a", "M248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm0 488.21C115.34 496.21 7.79 388.66 7.79 256S115.34 15.79 248 15.79 488.21 123.34 488.21 256 380.66 496.21 248 496.21zm0-459.92C126.66 36.29 28.29 134.66 28.29 256S126.66 475.71 248 475.71 467.71 377.34 467.71 256 369.34 36.29 248 36.29zm0 431.22c-116.81 0-211.51-94.69-211.51-211.51S131.19 44.49 248 44.49 459.51 139.19 459.51 256 364.81 467.51 248 467.51zm186.23-162.98a191.613 191.613 0 0 1-20.13 48.69l-74.13-35.88 61.48 54.82a193.515 193.515 0 0 1-37.2 37.29l-54.8-61.57 35.88 74.27a190.944 190.944 0 0 1-48.63 20.23l-27.29-78.47 4.79 82.93c-8.61 1.18-17.4 1.8-26.33 1.8s-17.72-.62-26.33-1.8l4.76-82.46-27.15 78.03a191.365 191.365 0 0 1-48.65-20.2l35.93-74.34-54.87 61.64a193.85 193.85 0 0 1-37.22-37.28l61.59-54.9-74.26 35.93a191.638 191.638 0 0 1-20.14-48.69l77.84-27.11-82.23 4.76c-1.16-8.57-1.78-17.32-1.78-26.21 0-9 .63-17.84 1.82-26.51l82.38 4.77-77.94-27.16a191.726 191.726 0 0 1 20.23-48.67l74.22 35.92-61.52-54.86a193.85 193.85 0 0 1 37.28-37.22l54.76 61.53-35.83-74.17a191.49 191.49 0 0 1 48.65-20.13l26.87 77.25-4.71-81.61c8.61-1.18 17.39-1.8 26.32-1.8s17.71.62 26.32 1.8l-4.74 82.16 27.05-77.76c17.27 4.5 33.6 11.35 48.63 20.17l-35.82 74.12 54.72-61.47a193.13 193.13 0 0 1 37.24 37.23l-61.45 54.77 74.12-35.86a191.515 191.515 0 0 1 20.2 48.65l-77.81 27.1 82.24-4.75c1.19 8.66 1.82 17.5 1.82 26.49 0 8.88-.61 17.63-1.78 26.19l-82.12-4.75 77.72 27.09z"],
	"firstdraft": [384, 512, [], "f3a1", "M384 192h-64v128H192v128H0v-25.6h166.4v-128h128v-128H384V192zm-25.6 38.4v128h-128v128H64V512h192V384h128V230.4h-25.6zm25.6 192h-89.6V512H320v-64h64v-25.6zM0 0v384h128V256h128V128h128V0H0z"],
	"flickr": [448, 512, [], "f16e", "M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM144.5 319c-35.1 0-63.5-28.4-63.5-63.5s28.4-63.5 63.5-63.5 63.5 28.4 63.5 63.5-28.4 63.5-63.5 63.5zm159 0c-35.1 0-63.5-28.4-63.5-63.5s28.4-63.5 63.5-63.5 63.5 28.4 63.5 63.5-28.4 63.5-63.5 63.5z"],
	"flipboard": [448, 512, [], "f44d", "M0 32v448h448V32H0zm358.4 179.2h-89.6v89.6h-89.6v89.6H89.6V121.6h268.8v89.6z"],
	"fly": [384, 512, [], "f417", "M197.8 427.8c12.9 11.7 33.7 33.3 33.2 50.7 0 .8-.1 1.6-.1 2.5-1.8 19.8-18.8 31.1-39.1 31-25-.1-39.9-16.8-38.7-35.8 1-16.2 20.5-36.7 32.4-47.6 2.3-2.1 2.7-2.7 5.6-3.6 3.4 0 3.9.3 6.7 2.8zM331.9 67.3c-16.3-25.7-38.6-40.6-63.3-52.1C243.1 4.5 214-.2 192 0c-44.1 0-71.2 13.2-81.1 17.3C57.3 45.2 26.5 87.2 28 158.6c7.1 82.2 97 176 155.8 233.8 1.7 1.6 4.5 4.5 6.2 5.1l3.3.1c2.1-.7 1.8-.5 3.5-2.1 52.3-49.2 140.7-145.8 155.9-215.7 7-39.2 3.1-72.5-20.8-112.5zM186.8 351.9c-28-51.1-65.2-130.7-69.3-189-3.4-47.5 11.4-131.2 69.3-136.7v325.7zM328.7 180c-16.4 56.8-77.3 128-118.9 170.3C237.6 298.4 275 217 277 158.4c1.6-45.9-9.8-105.8-48-131.4 88.8 18.3 115.5 98.1 99.7 153z"],
	"font-awesome": [448, 512, [], "f2b4", "M397.8 32H50.2C22.7 32 0 54.7 0 82.2v347.6C0 457.3 22.7 480 50.2 480h347.6c27.5 0 50.2-22.7 50.2-50.2V82.2c0-27.5-22.7-50.2-50.2-50.2zm-45.4 284.3c0 4.2-3.6 6-7.8 7.8-16.7 7.2-34.6 13.7-53.8 13.7-26.9 0-39.4-16.7-71.7-16.7-23.3 0-47.8 8.4-67.5 17.3-1.2.6-2.4.6-3.6 1.2V385c0 1.8 0 3.6-.6 4.8v1.2c-2.4 8.4-10.2 14.3-19.1 14.3-11.3 0-20.3-9-20.3-20.3V166.4c-7.8-6-13.1-15.5-13.1-26.3 0-18.5 14.9-33.5 33.5-33.5 18.5 0 33.5 14.9 33.5 33.5 0 10.8-4.8 20.3-13.1 26.3v18.5c1.8-.6 3.6-1.2 5.4-2.4 18.5-7.8 40.6-14.3 61.5-14.3 22.7 0 40.6 6 60.9 13.7 4.2 1.8 8.4 2.4 13.1 2.4 22.7 0 47.8-16.1 53.8-16.1 4.8 0 9 3.6 9 7.8v140.3z"],
	"font-awesome-alt": [448, 512, [], "f35c", "M339.3 171.2c-6 0-29.9 15.5-52.6 15.5-4.2 0-8.4-.6-12.5-2.4-19.7-7.8-37-13.7-59.1-13.7-20.3 0-41.8 6.6-59.7 13.7-1.8.6-3.6 1.2-4.8 1.8v-17.9c7.8-6 12.5-14.9 12.5-25.7 0-17.9-14.3-32.3-32.3-32.3s-32.3 14.3-32.3 32.3c0 10.2 4.8 19.7 12.5 25.7v212.1c0 10.8 9 19.7 19.7 19.7 9 0 16.1-6 18.5-13.7V385c.6-1.8.6-3 .6-4.8V336c1.2 0 2.4-.6 3-1.2 19.7-8.4 43-16.7 65.7-16.7 31.1 0 43 16.1 69.3 16.1 18.5 0 36.4-6.6 52-13.7 4.2-1.8 7.2-3.6 7.2-7.8V178.3c1.8-4.1-2.3-7.1-7.7-7.1zM397.8 32H50.2C22.7 32 0 54.7 0 82.2v347.6C0 457.3 22.7 480 50.2 480h347.6c27.5 0 50.2-22.7 50.2-50.2V82.2c0-27.5-22.7-50.2-50.2-50.2zm14.3 397.7c0 7.8-6.6 14.3-14.3 14.3H50.2c-7.8 0-14.3-6.6-14.3-14.3V82.2c0-7.8 6.6-14.3 14.3-14.3h347.6v-.1c7.8 0 14.3 6.6 14.3 14.3z"],
	"font-awesome-flag": [448, 512, [], "f425", "M444.373 359.424c0 7.168-6.144 10.24-13.312 13.312-28.672 12.288-59.392 23.552-92.16 23.552-46.08 0-67.584-28.672-122.88-28.672-39.936 0-81.92 14.336-115.712 29.696-2.048 1.024-4.096 1.024-6.144 2.048v77.824c0 21.405-16.122 34.816-33.792 34.816-19.456 0-34.816-15.36-34.816-34.816V102.4C12.245 92.16 3.029 75.776 3.029 57.344 3.029 25.6 28.629 0 60.373 0s57.344 25.6 57.344 57.344c0 18.432-8.192 34.816-22.528 45.056v31.744c4.124-1.374 58.768-28.672 114.688-28.672 65.27 0 97.676 27.648 126.976 27.648 38.912 0 81.92-27.648 92.16-27.648 8.192 0 15.36 6.144 15.36 13.312v240.64z"],
	"font-awesome-logo-full": [3992, 512, ["Font Awesome"], "f4e6", "M454.6 0H57.4C25.9 0 0 25.9 0 57.4v397.3C0 486.1 25.9 512 57.4 512h397.3c31.4 0 57.4-25.9 57.4-57.4V57.4C512 25.9 486.1 0 454.6 0zm-58.9 324.9c0 4.8-4.1 6.9-8.9 8.9-19.2 8.1-39.7 15.7-61.5 15.7-40.5 0-68.7-44.8-163.2 2.5v51.8c0 30.3-45.7 30.2-45.7 0v-250c-9-7-15-17.9-15-30.3 0-21 17.1-38.2 38.2-38.2 21 0 38.2 17.1 38.2 38.2 0 12.2-5.8 23.2-14.9 30.2v21c37.1-12 65.5-34.4 146.1-3.4 26.6 11.4 68.7-15.7 76.5-15.7 5.5 0 10.3 4.1 10.3 8.9v160.4zm432.9-174.2h-137v70.1H825c39.8 0 40.4 62.2 0 62.2H691.6v105.6c0 45.5-70.7 46.4-70.7 0V128.3c0-22 18-39.8 39.8-39.8h167.8c39.6 0 40.5 62.2.1 62.2zm191.1 23.4c-169.3 0-169.1 252.4 0 252.4 169.9 0 169.9-252.4 0-252.4zm0 196.1c-81.6 0-82.1-139.8 0-139.8 82.5 0 82.4 139.8 0 139.8zm372.4 53.4c-17.5 0-31.4-13.9-31.4-31.4v-117c0-62.4-72.6-52.5-99.1-16.4v133.4c0 41.5-63.3 41.8-63.3 0V208c0-40 63.1-41.6 63.1 0v3.4c43.3-51.6 162.4-60.4 162.4 39.3v141.5c.3 30.4-31.5 31.4-31.7 31.4zm179.7 2.9c-44.3 0-68.3-22.9-68.3-65.8V235.2H1488c-35.6 0-36.7-55.3 0-55.3h15.5v-37.3c0-41.3 63.8-42.1 63.8 0v37.5h24.9c35.4 0 35.7 55.3 0 55.3h-24.9v108.5c0 29.6 26.1 26.3 27.4 26.3 31.4 0 52.6 56.3-22.9 56.3zM1992 123c-19.5-50.2-95.5-50-114.5 0-107.3 275.7-99.5 252.7-99.5 262.8 0 42.8 58.3 51.2 72.1 14.4l13.5-35.9H2006l13 35.9c14.2 37.7 72.1 27.2 72.1-14.4 0-10.1 5.3 6.8-99.1-262.8zm-108.9 179.1l51.7-142.9 51.8 142.9h-103.5zm591.3-85.6l-53.7 176.3c-12.4 41.2-72 41-84 0l-42.3-135.9-42.3 135.9c-12.4 40.9-72 41.2-84.5 0l-54.2-176.3c-12.5-39.4 49.8-56.1 60.2-16.9L2213 342l45.3-139.5c10.9-32.7 59.6-34.7 71.2 0l45.3 139.5 39.3-142.4c10.3-38.3 72.6-23.8 60.3 16.9zm275.4 75.1c0-42.4-33.9-117.5-119.5-117.5-73.2 0-124.4 56.3-124.4 126 0 77.2 55.3 126.4 128.5 126.4 31.7 0 93-11.5 93-39.8 0-18.3-21.1-31.5-39.3-22.4-49.4 26.2-109 8.4-115.9-43.8h148.3c16.3 0 29.3-13.4 29.3-28.9zM2571 277.7c9.5-73.4 113.9-68.6 118.6 0H2571zm316.7 148.8c-31.4 0-81.6-10.5-96.6-31.9-12.4-17 2.5-39.8 21.8-39.8 16.3 0 36.8 22.9 77.7 22.9 27.4 0 40.4-11 40.4-25.8 0-39.8-142.9-7.4-142.9-102 0-40.4 35.3-75.7 98.6-75.7 31.4 0 74.1 9.9 87.6 29.4 10.8 14.8-1.4 36.2-20.9 36.2-15.1 0-26.7-17.3-66.2-17.3-22.9 0-37.8 10.5-37.8 23.8 0 35.9 142.4 6 142.4 103.1-.1 43.7-37.4 77.1-104.1 77.1zm266.8-252.4c-169.3 0-169.1 252.4 0 252.4 170.1 0 169.6-252.4 0-252.4zm0 196.1c-81.8 0-82-139.8 0-139.8 82.5 0 82.4 139.8 0 139.8zm476.9 22V268.7c0-53.8-61.4-45.8-85.7-10.5v134c0 41.3-63.8 42.1-63.8 0V268.7c0-52.1-59.5-47.4-85.7-10.1v133.6c0 41.5-63.3 41.8-63.3 0V208c0-40 63.1-41.6 63.1 0v3.4c9.9-14.4 41.8-37.3 78.6-37.3 35.3 0 57.7 16.4 66.7 43.8 13.9-21.8 45.8-43.8 82.6-43.8 44.3 0 70.7 23.4 70.7 72.7v145.3c.5 17.3-13.5 31.4-31.9 31.4 3.5.1-31.3 1.1-31.3-31.3zM3992 291.6c0-42.4-32.4-117.5-117.9-117.5-73.2 0-127.5 56.3-127.5 126 0 77.2 58.3 126.4 131.6 126.4 31.7 0 91.5-11.5 91.5-39.8 0-18.3-21.1-31.5-39.3-22.4-49.4 26.2-110.5 8.4-117.5-43.8h149.8c16.3 0 29.1-13.4 29.3-28.9zm-180.5-13.9c9.7-74.4 115.9-68.3 120.1 0h-120.1z"],
	"fonticons": [448, 512, [], "f280", "M0 32v448h448V32zm187 140.9c-18.4 0-19 9.9-19 27.4v23.3c0 2.4-3.5 4.4-.6 4.4h67.4l-11.1 37.3H168v112.9c0 5.8-2 6.7 3.2 7.3l43.5 4.1v25.1H84V389l21.3-2c5.2-.6 6.7-2.3 6.7-7.9V267.7c0-2.3-2.9-2.3-5.8-2.3H84V228h28v-21c0-49.6 26.5-70 77.3-70 34.1 0 64.7 8.2 64.7 52.8l-50.7 6.1c.3-18.7-4.4-23-16.3-23zm74.3 241.8v-25.1l20.4-2.6c5.2-.6 7.6-1.7 7.6-7.3V271.8c0-4.1-2.9-6.7-6.7-7.9l-24.2-6.4 6.7-29.5h80.2v151.7c0 5.8-2.6 6.4 2.9 7.3l15.7 2.6v25.1zm80.8-255.5l9 33.2-7.3 7.3-31.2-16.6-31.2 16.6-7.3-7.3 9-33.2-21.8-24.2 3.5-9.6h27.7l15.5-28h9.3l15.5 28h27.7l3.5 9.6z"],
	"fonticons-fi": [384, 512, [], "f3a2", "M114.4 224h92.4l-15.2 51.2h-76.4V433c0 8-2.8 9.2 4.4 10l59.6 5.6V483H0v-35.2l29.2-2.8c7.2-.8 9.2-3.2 9.2-10.8V278.4c0-3.2-4-3.2-8-3.2H0V224h38.4v-28.8c0-68 36.4-96 106-96 46.8 0 88.8 11.2 88.8 72.4l-69.6 8.4c.4-25.6-6-31.6-22.4-31.6-25.2 0-26 13.6-26 37.6v32c0 3.2-4.8 6-.8 6zM384 483H243.2v-34.4l28-3.6c7.2-.8 10.4-2.4 10.4-10V287c0-5.6-4-9.2-9.2-10.8l-33.2-8.8 9.2-40.4h110v208c0 8-3.6 8.8 4 10l21.6 3.6V483zm-30-347.2l12.4 45.6-10 10-42.8-22.8-42.8 22.8-10-10 12.4-45.6-30-36.4 4.8-10h38L307.2 51H320l21.2 38.4h38l4.8 13.2-30 33.2z"],
	"fort-awesome": [512, 512, [], "f286", "M489.2 287.9h-27.4c-2.6 0-4.6 2-4.6 4.6v32h-36.6V146.2c0-2.6-2-4.6-4.6-4.6h-27.4c-2.6 0-4.6 2-4.6 4.6v32h-36.6v-32c0-2.6-2-4.6-4.6-4.6h-27.4c-2.6 0-4.6 2-4.6 4.6v32h-36.6v-32c0-6-8-4.6-11.7-4.6v-38c8.3-2 17.1-3.4 25.7-3.4 10.9 0 20.9 4.3 31.4 4.3 4.6 0 27.7-1.1 27.7-8v-60c0-2.6-2-4.6-4.6-4.6-5.1 0-15.1 4.3-24 4.3-9.7 0-20.9-4.3-32.6-4.3-8 0-16 1.1-23.7 2.9v-4.9c5.4-2.6 9.1-8.3 9.1-14.3 0-20.7-31.4-20.8-31.4 0 0 6 3.7 11.7 9.1 14.3v111.7c-3.7 0-11.7-1.4-11.7 4.6v32h-36.6v-32c0-2.6-2-4.6-4.6-4.6h-27.4c-2.6 0-4.6 2-4.6 4.6v32H128v-32c0-2.6-2-4.6-4.6-4.6H96c-2.6 0-4.6 2-4.6 4.6v178.3H54.8v-32c0-2.6-2-4.6-4.6-4.6H22.8c-2.6 0-4.6 2-4.6 4.6V512h182.9v-96c0-72.6 109.7-72.6 109.7 0v96h182.9V292.5c.1-2.6-1.9-4.6-4.5-4.6zm-288.1-4.5c0 2.6-2 4.6-4.6 4.6h-27.4c-2.6 0-4.6-2-4.6-4.6v-64c0-2.6 2-4.6 4.6-4.6h27.4c2.6 0 4.6 2 4.6 4.6v64zm146.4 0c0 2.6-2 4.6-4.6 4.6h-27.4c-2.6 0-4.6-2-4.6-4.6v-64c0-2.6 2-4.6 4.6-4.6h27.4c2.6 0 4.6 2 4.6 4.6v64z"],
	"fort-awesome-alt": [512, 512, [], "f3a3", "M208 237.4h-22.2c-2.1 0-3.7 1.6-3.7 3.7v51.7c0 2.1 1.6 3.7 3.7 3.7H208c2.1 0 3.7-1.6 3.7-3.7v-51.7c0-2.1-1.6-3.7-3.7-3.7zm118.2 0H304c-2.1 0-3.7 1.6-3.7 3.7v51.7c0 2.1 1.6 3.7 3.7 3.7h22.2c2.1 0 3.7-1.6 3.7-3.7v-51.7c-.1-2.1-1.7-3.7-3.7-3.7zm132-125.1c-2.3-3.2-4.6-6.4-7.1-9.5-9.8-12.5-20.8-24-32.8-34.4-4.5-3.9-9.1-7.6-13.9-11.2-1.6-1.2-3.2-2.3-4.8-3.5C372 34.1 340.3 20 306 13c-16.2-3.3-32.9-5-50-5s-33.9 1.7-50 5c-34.3 7.1-66 21.2-93.3 40.8-1.6 1.1-3.2 2.3-4.8 3.5-4.8 3.6-9.4 7.3-13.9 11.2-3 2.6-5.9 5.3-8.8 8s-5.7 5.5-8.4 8.4c-5.5 5.7-10.7 11.8-15.6 18-2.4 3.1-4.8 6.3-7.1 9.5C25.2 153 8.3 202.5 8.3 256c0 2 .1 4 .1 6 .1.7.1 1.3.1 2 .1 1.3.1 2.7.2 4 0 .8.1 1.5.1 2.3 0 1.3.1 2.5.2 3.7.1.8.1 1.6.2 2.4.1 1.1.2 2.3.3 3.5 0 .8.1 1.6.2 2.4.1 1.2.3 2.4.4 3.6.1.8.2 1.5.3 2.3.1 1.3.3 2.6.5 3.9.1.6.2 1.3.3 1.9l.9 5.7c.1.6.2 1.1.3 1.7.3 1.3.5 2.7.8 4 .2.8.3 1.6.5 2.4.2 1 .5 2.1.7 3.2.2.9.4 1.7.6 2.6.2 1 .4 2 .7 3 .2.9.5 1.8.7 2.7.3 1 .5 1.9.8 2.9.3.9.5 1.8.8 2.7.2.9.5 1.9.8 2.8s.5 1.8.8 2.7c.3 1 .6 1.9.9 2.8.6 1.6 1.1 3.3 1.7 4.9.4 1 .7 1.9 1 2.8.3 1 .7 2 1.1 3 .3.8.6 1.5.9 2.3l1.2 3c.3.7.6 1.5.9 2.2.4 1 .9 2 1.3 3l.9 2.1c.5 1 .9 2 1.4 3 .3.7.6 1.3.9 2 .5 1 1 2.1 1.5 3.1.2.6.5 1.1.8 1.7.6 1.1 1.1 2.2 1.7 3.3.1.2.2.3.3.5 2.2 4.1 4.4 8.2 6.8 12.2.2.4.5.8.7 1.2.7 1.1 1.3 2.2 2 3.3.3.5.6.9.9 1.4.6 1.1 1.3 2.1 2 3.2.3.5.6.9.9 1.4.7 1.1 1.4 2.1 2.1 3.2.2.4.5.8.8 1.2.7 1.1 1.5 2.2 2.3 3.3.2.2.3.5.5.7 37.5 51.7 94.4 88.5 160 99.4.9.1 1.7.3 2.6.4 1 .2 2.1.4 3.1.5s1.9.3 2.8.4c1 .2 2 .3 3 .4.9.1 1.9.2 2.9.3s1.9.2 2.9.3 2.1.2 3.1.3c.9.1 1.8.1 2.7.2 1.1.1 2.3.1 3.4.2.8 0 1.7.1 2.5.1 1.3 0 2.6.1 3.9.1.7.1 1.4.1 2.1.1 2 .1 4 .1 6 .1s4-.1 6-.1c.7 0 1.4-.1 2.1-.1 1.3 0 2.6 0 3.9-.1.8 0 1.7-.1 2.5-.1 1.1-.1 2.3-.1 3.4-.2.9 0 1.8-.1 2.7-.2 1-.1 2.1-.2 3.1-.3s1.9-.2 2.9-.3c.9-.1 1.9-.2 2.9-.3s2-.3 3-.4 1.9-.3 2.8-.4c1-.2 2.1-.3 3.1-.5.9-.1 1.7-.3 2.6-.4 65.6-11 122.5-47.7 160.1-102.4.2-.2.3-.5.5-.7.8-1.1 1.5-2.2 2.3-3.3.2-.4.5-.8.8-1.2.7-1.1 1.4-2.1 2.1-3.2.3-.5.6-.9.9-1.4.6-1.1 1.3-2.1 2-3.2.3-.5.6-.9.9-1.4.7-1.1 1.3-2.2 2-3.3.2-.4.5-.8.7-1.2 2.4-4 4.6-8.1 6.8-12.2.1-.2.2-.3.3-.5.6-1.1 1.1-2.2 1.7-3.3.2-.6.5-1.1.8-1.7.5-1 1-2.1 1.5-3.1.3-.7.6-1.3.9-2 .5-1 1-2 1.4-3l.9-2.1c.5-1 .9-2 1.3-3 .3-.7.6-1.5.9-2.2l1.2-3c.3-.8.6-1.5.9-2.3.4-1 .7-2 1.1-3s.7-1.9 1-2.8c.6-1.6 1.2-3.3 1.7-4.9.3-1 .6-1.9.9-2.8s.5-1.8.8-2.7c.2-.9.5-1.9.8-2.8s.6-1.8.8-2.7c.3-1 .5-1.9.8-2.9.2-.9.5-1.8.7-2.7.2-1 .5-2 .7-3 .2-.9.4-1.7.6-2.6.2-1 .5-2.1.7-3.2.2-.8.3-1.6.5-2.4.3-1.3.6-2.7.8-4 .1-.6.2-1.1.3-1.7l.9-5.7c.1-.6.2-1.3.3-1.9.1-1.3.3-2.6.5-3.9.1-.8.2-1.5.3-2.3.1-1.2.3-2.4.4-3.6 0-.8.1-1.6.2-2.4.1-1.1.2-2.3.3-3.5.1-.8.1-1.6.2-2.4.1 1.7.1.5.2-.7 0-.8.1-1.5.1-2.3.1-1.3.2-2.7.2-4 .1-.7.1-1.3.1-2 .1-2 .1-4 .1-6 0-53.5-16.9-103-45.8-143.7zM448 371.5c-9.4 15.5-20.6 29.9-33.6 42.9-20.6 20.6-44.5 36.7-71.2 48-13.9 5.8-28.2 10.3-42.9 13.2v-75.8c0-58.6-88.6-58.6-88.6 0v75.8c-14.7-2.9-29-7.3-42.9-13.2-26.7-11.3-50.6-27.4-71.2-48-13-13-24.2-27.4-33.6-42.9v-71.3c0-2.1 1.6-3.7 3.7-3.7h22.1c2.1 0 3.7 1.6 3.7 3.7V326h29.6V182c0-2.1 1.6-3.7 3.7-3.7h22.1c2.1 0 3.7 1.6 3.7 3.7v25.9h29.5V182c0-2.1 1.6-3.7 3.7-3.7H208c2.1 0 3.7 1.6 3.7 3.7v25.9h29.5V182c0-4.8 6.5-3.7 9.5-3.7V88.1c-4.4-2-7.4-6.7-7.4-11.5 0-16.8 25.4-16.8 25.4 0 0 4.8-3 9.4-7.4 11.5V92c6.3-1.4 12.7-2.3 19.2-2.3 9.4 0 18.4 3.5 26.3 3.5 7.2 0 15.2-3.5 19.4-3.5 2.1 0 3.7 1.6 3.7 3.7v48.4c0 5.6-18.7 6.5-22.4 6.5-8.6 0-16.6-3.5-25.4-3.5-7 0-14.1 1.2-20.8 2.8v30.7c3 0 9.5-1.1 9.5 3.7v25.9h29.5V182c0-2.1 1.6-3.7 3.7-3.7h22.2c2.1 0 3.7 1.6 3.7 3.7v25.9h29.5V182c0-2.1 1.6-3.7 3.7-3.7h22.1c2.1 0 3.7 1.6 3.7 3.7v144h29.5v-25.8c0-2.1 1.6-3.7 3.7-3.7h22.2c2.1 0 3.7 1.6 3.7 3.7z"],
	"forumbee": [448, 512, [], "f211", "M5.8 309.7C2 292.7 0 275.5 0 258.3 0 135 99.8 35 223.1 35c16.6 0 33.3 2 49.3 5.5C149 87.5 51.9 186 5.8 309.7zm392.9-189.2C385 103 369 87.8 350.9 75.2c-149.6 44.3-266.3 162.1-309.7 312 12.5 18.1 28 35.6 45.2 49 43.1-151.3 161.2-271.7 312.3-315.7zm15.8 252.7c15.2-25.1 25.4-53.7 29.5-82.8-79.4 42.9-145 110.6-187.6 190.3 30-4.4 58.9-15.3 84.6-31.3 35 13.1 70.9 24.3 107 33.6-9.3-36.5-20.4-74.5-33.5-109.8zm29.7-145.5c-2.6-19.5-7.9-38.7-15.8-56.8C290.5 216.7 182 327.5 137.1 466c18.1 7.6 37 12.5 56.6 15.2C240 367.1 330.5 274.4 444.2 227.7z"],
	"foursquare": [368, 512, [], "f180", "M323.1 3H49.9C12.4 3 0 31.3 0 49.1v433.8c0 20.3 12.1 27.7 18.2 30.1 6.2 2.5 22.8 4.6 32.9-7.1C180 356.5 182.2 354 182.2 354c3.1-3.4 3.4-3.1 6.8-3.1h83.4c35.1 0 40.6-25.2 44.3-39.7l48.6-243C373.8 25.8 363.1 3 323.1 3zm-16.3 73.8l-11.4 59.7c-1.2 6.5-9.5 13.2-16.9 13.2H172.1c-12 0-20.6 8.3-20.6 20.3v13c0 12 8.6 20.6 20.6 20.6h90.4c8.3 0 16.6 9.2 14.8 18.2-1.8 8.9-10.5 53.8-11.4 58.8-.9 4.9-6.8 13.5-16.9 13.5h-73.5c-13.5 0-17.2 1.8-26.5 12.6 0 0-8.9 11.4-89.5 108.3-.9.9-1.8.6-1.8-.3V75.9c0-7.7 6.8-16.6 16.6-16.6h219c8.2 0 15.6 7.7 13.5 17.5z"],
	"free-code-camp": [576, 512, [], "f2c5", "M97.22,96.21c10.36-10.65,16-17.12,16-21.9,0-2.76-1.92-5.51-3.83-7.42A14.81,14.81,0,0,0,101,64.05c-8.48,0-20.92,8.79-35.84,25.69C23.68,137,2.51,182.81,3.37,250.34s17.47,117,54.06,161.87C76.22,435.86,90.62,448,100.9,448a13.55,13.55,0,0,0,8.37-3.84c1.91-2.76,3.81-5.63,3.81-8.38,0-5.63-3.86-12.2-13.2-20.55-44.45-42.33-67.32-97-67.48-165C32.25,188.8,54,137.83,97.22,96.21ZM239.47,420.07c.58.37.91.55.91.55Zm93.79.55.17-.13C333.24,420.62,333.17,420.67,333.26,420.62Zm3.13-158.18c-16.24-4.15,50.41-82.89-68.05-177.17,0,0,15.54,49.38-62.83,159.57-74.27,104.35,23.46,168.73,34,175.23-6.73-4.35-47.4-35.7,9.55-128.64,11-18.3,25.53-34.87,43.5-72.16,0,0,15.91,22.45,7.6,71.13C287.7,364,354,342.91,355,343.94c22.75,26.78-17.72,73.51-21.58,76.55,5.49-3.65,117.71-78,33-188.1C360.43,238.4,352.62,266.59,336.39,262.44ZM510.88,89.69C496,72.79,483.52,64,475,64a14.81,14.81,0,0,0-8.39,2.84c-1.91,1.91-3.83,4.66-3.83,7.42,0,4.78,5.6,11.26,16,21.9,43.23,41.61,65,92.59,64.82,154.06-.16,68-23,122.63-67.48,165-9.34,8.35-13.18,14.92-13.2,20.55,0,2.75,1.9,5.62,3.81,8.38A13.61,13.61,0,0,0,475.1,448c10.28,0,24.68-12.13,43.47-35.79,36.59-44.85,53.14-94.38,54.06-161.87S552.32,137,510.88,89.69Z"],
	"freebsd": [448, 512, [], "f3a4", "M303.7 96.2c11.1-11.1 115.5-77 139.2-53.2 23.7 23.7-42.1 128.1-53.2 139.2-11.1 11.1-39.4.9-63.1-22.9-23.8-23.7-34.1-52-22.9-63.1zM109.9 68.1C73.6 47.5 22 24.6 5.6 41.1c-16.6 16.6 7.1 69.4 27.9 105.7 18.5-32.2 44.8-59.3 76.4-78.7zM406.7 174c3.3 11.3 2.7 20.7-2.7 26.1-20.3 20.3-87.5-27-109.3-70.1-18-32.3-11.1-53.4 14.9-48.7 5.7-3.6 12.3-7.6 19.6-11.6-29.8-15.5-63.6-24.3-99.5-24.3-119.1 0-215.6 96.5-215.6 215.6 0 119 96.5 215.6 215.6 215.6S445.3 380.1 445.3 261c0-38.4-10.1-74.5-27.7-105.8-3.9 7-7.6 13.3-10.9 18.8z"],
	"fulcrum": [320, 512, [], "f50b", "M95.75 164.14l-35.38 43.55L25 164.14l35.38-43.55zM144.23 0l-20.54 198.18L72.72 256l51 57.82L144.23 512V300.89L103.15 256l41.08-44.89zm79.67 164.14l35.38 43.55 35.38-43.55-35.38-43.55zm-48.48 47L216.5 256l-41.08 44.89V512L196 313.82 247 256l-51-57.82L175.42 0z"],
	"galactic-republic": [496, 512, [], "f50c", "M248 504C111.25 504 0 392.75 0 256S111.25 8 248 8s248 111.25 248 248-111.25 248-248 248zm0-479.47C120.37 24.53 16.53 128.37 16.53 256S120.37 487.47 248 487.47 479.47 383.63 479.47 256 375.63 24.53 248 24.53zm27.62 21.81v24.62a185.933 185.933 0 0 1 83.57 34.54l17.39-17.36c-28.75-22.06-63.3-36.89-100.96-41.8zm-55.37.07c-37.64 4.94-72.16 19.8-100.88 41.85l17.28 17.36h.08c24.07-17.84 52.55-30.06 83.52-34.67V46.41zm12.25 50.17v82.87c-10.04 2.03-19.42 5.94-27.67 11.42l-58.62-58.59-21.93 21.93 58.67 58.67c-5.47 8.23-9.45 17.59-11.47 27.62h-82.9v31h82.9c2.02 10.02 6.01 19.31 11.47 27.54l-58.67 58.69 21.93 21.93 58.62-58.62a77.873 77.873 0 0 0 27.67 11.47v82.9h31v-82.9c10.05-2.03 19.37-6.06 27.62-11.55l58.67 58.69 21.93-21.93-58.67-58.69c5.46-8.23 9.47-17.52 11.5-27.54h82.87v-31h-82.87c-2.02-10.02-6.03-19.38-11.5-27.62l58.67-58.67-21.93-21.93-58.67 58.67c-8.25-5.49-17.57-9.47-27.62-11.5V96.58h-31zm183.24 30.72l-17.36 17.36a186.337 186.337 0 0 1 34.67 83.67h24.62c-4.95-37.69-19.83-72.29-41.93-101.03zm-335.55.13c-22.06 28.72-36.91 63.26-41.85 100.91h24.65c4.6-30.96 16.76-59.45 34.59-83.52l-17.39-17.39zM38.34 283.67c4.92 37.64 19.75 72.18 41.8 100.9l17.36-17.39c-17.81-24.07-29.92-52.57-34.51-83.52H38.34zm394.7 0c-4.61 30.99-16.8 59.5-34.67 83.6l17.36 17.36c22.08-28.74 36.98-63.29 41.93-100.96h-24.62zM136.66 406.38l-17.36 17.36c28.73 22.09 63.3 36.98 100.96 41.93v-24.64c-30.99-4.63-59.53-16.79-83.6-34.65zm222.53.05c-24.09 17.84-52.58 30.08-83.57 34.67v24.57c37.67-4.92 72.21-19.79 100.96-41.85l-17.31-17.39h-.08z"],
	"galactic-senate": [512, 512, [], "f50d", "M249.86 33.48v26.07C236.28 80.17 226 168.14 225.39 274.9c11.74-15.62 19.13-33.33 19.13-48.24v-16.88c-.03-5.32.75-10.53 2.19-15.65.65-2.14 1.39-4.08 2.62-5.82 1.23-1.75 3.43-3.79 6.68-3.79 3.24 0 5.45 2.05 6.68 3.79 1.23 1.75 1.97 3.68 2.62 5.82 1.44 5.12 2.22 10.33 2.19 15.65v16.88c0 14.91 7.39 32.62 19.13 48.24-.63-106.76-10.91-194.73-24.49-215.35V33.48h-12.28zm-26.34 147.77c-9.52 2.15-18.7 5.19-27.46 9.08 8.9 16.12 9.76 32.64 1.71 37.29-8 4.62-21.85-4.23-31.36-19.82-11.58 8.79-21.88 19.32-30.56 31.09 14.73 9.62 22.89 22.92 18.32 30.66-4.54 7.7-20.03 7.14-35.47-.96-5.78 13.25-9.75 27.51-11.65 42.42 9.68.18 18.67 2.38 26.18 6.04 17.78-.3 32.77-1.96 40.49-4.22 5.55-26.35 23.02-48.23 46.32-59.51.73-25.55 1.88-49.67 3.48-72.07zm64.96 0c1.59 22.4 2.75 46.52 3.47 72.07 23.29 11.28 40.77 33.16 46.32 59.51 7.72 2.26 22.71 3.92 40.49 4.22 7.51-3.66 16.5-5.85 26.18-6.04-1.9-14.91-5.86-29.17-11.65-42.42-15.44 8.1-30.93 8.66-35.47.96-4.57-7.74 3.6-21.05 18.32-30.66-8.68-11.77-18.98-22.3-30.56-31.09-9.51 15.59-23.36 24.44-31.36 19.82-8.05-4.65-7.19-21.16 1.71-37.29a147.49 147.49 0 0 0-27.45-9.08zm-32.48 8.6c-3.23 0-5.86 8.81-6.09 19.93h-.05v16.88c0 41.42-49.01 95.04-93.49 95.04-52 0-122.75-1.45-156.37 29.17v2.51c9.42 17.12 20.58 33.17 33.18 47.97C45.7 380.26 84.77 360.4 141.2 360c45.68 1.02 79.03 20.33 90.76 40.87.01.01-.01.04 0 .05 7.67 2.14 15.85 3.23 24.04 3.21 8.19.02 16.37-1.07 24.04-3.21.01-.01-.01-.04 0-.05 11.74-20.54 45.08-39.85 90.76-40.87 56.43.39 95.49 20.26 108.02 41.35 12.6-14.8 23.76-30.86 33.18-47.97v-2.51c-33.61-30.62-104.37-29.17-156.37-29.17-44.48 0-93.49-53.62-93.49-95.04v-16.88h-.05c-.23-11.12-2.86-19.93-6.09-19.93zm0 96.59c22.42 0 40.6 18.18 40.6 40.6s-18.18 40.65-40.6 40.65-40.6-18.23-40.6-40.65c0-22.42 18.18-40.6 40.6-40.6zm0 7.64c-18.19 0-32.96 14.77-32.96 32.96S237.81 360 256 360s32.96-14.77 32.96-32.96-14.77-32.96-32.96-32.96zm0 6.14c14.81 0 26.82 12.01 26.82 26.82s-12.01 26.82-26.82 26.82-26.82-12.01-26.82-26.82 12.01-26.82 26.82-26.82zm-114.8 66.67c-10.19.07-21.6.36-30.5 1.66.43 4.42 1.51 18.63 7.11 29.76 9.11-2.56 18.36-3.9 27.62-3.9 41.28.94 71.48 34.35 78.26 74.47l.11 4.7c10.4 1.91 21.19 2.94 32.21 2.94 11.03 0 21.81-1.02 32.21-2.94l.11-4.7c6.78-40.12 36.98-73.53 78.26-74.47 9.26 0 18.51 1.34 27.62 3.9 5.6-11.13 6.68-25.34 7.11-29.76-8.9-1.3-20.32-1.58-30.5-1.66-18.76.42-35.19 4.17-48.61 9.67-12.54 16.03-29.16 30.03-49.58 33.07-.09.02-.17.04-.27.05-.05.01-.11.04-.16.05-5.24 1.07-10.63 1.6-16.19 1.6-5.55 0-10.95-.53-16.19-1.6-.05-.01-.11-.04-.16-.05-.1-.02-.17-.04-.27-.05-20.42-3.03-37.03-17.04-49.58-33.07-13.42-5.49-29.86-9.25-48.61-9.67z"],
	"get-pocket": [448, 512, [], "f265", "M407.6 64h-367C18.5 64 0 82.5 0 104.6v135.2C0 364.5 99.7 464 224.2 464c124 0 223.8-99.5 223.8-224.2V104.6c0-22.4-17.7-40.6-40.4-40.6zm-162 268.5c-12.4 11.8-31.4 11.1-42.4 0C89.5 223.6 88.3 227.4 88.3 209.3c0-16.9 13.8-30.7 30.7-30.7 17 0 16.1 3.8 105.2 89.3 90.6-86.9 88.6-89.3 105.5-89.3 16.9 0 30.7 13.8 30.7 30.7 0 17.8-2.9 15.7-114.8 123.2z"],
	"gg": [512, 512, [], "f260", "M179.2 230.4l102.4 102.4-102.4 102.4L0 256 179.2 76.8l44.8 44.8-25.6 25.6-19.2-19.2-128 128 128 128 51.5-51.5-77.1-76.5 25.6-25.6zM332.8 76.8L230.4 179.2l102.4 102.4 25.6-25.6-77.1-76.5 51.5-51.5 128 128-128 128-19.2-19.2-25.6 25.6 44.8 44.8L512 256 332.8 76.8z"],
	"gg-circle": [512, 512, [], "f261", "M257 8C120 8 9 119 9 256s111 248 248 248 248-111 248-248S394 8 257 8zm-49.5 374.8L81.8 257.1l125.7-125.7 35.2 35.4-24.2 24.2-11.1-11.1-77.2 77.2 77.2 77.2 26.6-26.6-53.1-52.9 24.4-24.4 77.2 77.2-75 75.2zm99-2.2l-35.2-35.2 24.1-24.4 11.1 11.1 77.2-77.2-77.2-77.2-26.5 26.5 53.1 52.9-24.4 24.4-77.2-77.2 75-75L432.2 255 306.5 380.6z"],
	"git": [512, 512, [], "f1d3", "M216.29 158.39H137C97 147.9 6.51 150.63 6.51 233.18c0 30.09 15 51.23 35 61-25.1 23-37 33.85-37 49.21 0 11 4.47 21.14 17.89 26.81C8.13 383.61 0 393.35 0 411.65c0 32.11 28.05 50.82 101.63 50.82 70.75 0 111.79-26.42 111.79-73.18 0-58.66-45.16-56.5-151.63-63l13.43-21.55c27.27 7.58 118.7 10 118.7-67.89 0-18.7-7.73-31.71-15-41.07l37.41-2.84zm-63.42 241.9c0 32.06-104.89 32.1-104.89 2.43 0-8.14 5.27-15 10.57-21.54 77.71 5.3 94.32 3.37 94.32 19.11zm-50.81-134.58c-52.8 0-50.46-71.16 1.2-71.16 49.54 0 50.82 71.16-1.2 71.16zm133.3 100.51v-32.1c26.75-3.66 27.24-2 27.24-11V203.61c0-8.5-2.05-7.38-27.24-16.26l4.47-32.92H324v168.71c0 6.51.4 7.32 6.51 8.14l20.73 2.84v32.1zm52.45-244.31c-23.17 0-36.59-13.43-36.59-36.61s13.42-35.77 36.59-35.77c23.58 0 37 12.62 37 35.77s-13.42 36.61-37 36.61zM512 350.46c-17.49 8.53-43.1 16.26-66.28 16.26-48.38 0-66.67-19.5-66.67-65.46V194.75c0-5.42 1.05-4.06-31.71-4.06V154.5c35.78-4.07 50-22 54.47-66.27h38.63c0 65.83-1.34 61.81 3.26 61.81H501v40.65h-60.56v97.15c0 6.92-4.92 51.41 60.57 26.84z"],
	"git-alt": [448, 512, [], "f841", "M439.55 236.05L244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81z"],
	"git-square": [448, 512, [], "f1d2", "M100.59 334.24c48.57 3.31 58.95 2.11 58.95 11.94 0 20-65.55 20.06-65.55 1.52.01-5.09 3.29-9.4 6.6-13.46zm27.95-116.64c-32.29 0-33.75 44.47-.75 44.47 32.51 0 31.71-44.47.75-44.47zM448 80v352a48 48 0 0 1-48 48H48a48 48 0 0 1-48-48V80a48 48 0 0 1 48-48h352a48 48 0 0 1 48 48zm-227 69.31c0 14.49 8.38 22.88 22.86 22.88 14.74 0 23.13-8.39 23.13-22.88S258.62 127 243.88 127c-14.48 0-22.88 7.84-22.88 22.31zM199.18 195h-49.55c-25-6.55-81.56-4.85-81.56 46.75 0 18.8 9.4 32 21.85 38.11C74.23 294.23 66.8 301 66.8 310.6c0 6.87 2.79 13.22 11.18 16.76-8.9 8.4-14 14.48-14 25.92C64 373.35 81.53 385 127.52 385c44.22 0 69.87-16.51 69.87-45.73 0-36.67-28.23-35.32-94.77-39.38l8.38-13.43c17 4.74 74.19 6.23 74.19-42.43 0-11.69-4.83-19.82-9.4-25.67l23.38-1.78zm84.34 109.84l-13-1.78c-3.82-.51-4.07-1-4.07-5.09V192.52h-52.6l-2.79 20.57c15.75 5.55 17 4.86 17 10.17V298c0 5.62-.31 4.58-17 6.87v20.06h72.42zM384 315l-6.87-22.37c-40.93 15.37-37.85-12.41-37.85-16.73v-60.72h37.85v-25.41h-35.82c-2.87 0-2 2.52-2-38.63h-24.18c-2.79 27.7-11.68 38.88-34 41.42v22.62c20.47 0 19.82-.85 19.82 2.54v66.57c0 28.72 11.43 40.91 41.67 40.91 14.45 0 30.45-4.83 41.38-10.2z"],
	"github": [496, 512, [], "f09b", "M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"],
	"github-alt": [480, 512, [], "f113", "M186.1 328.7c0 20.9-10.9 55.1-36.7 55.1s-36.7-34.2-36.7-55.1 10.9-55.1 36.7-55.1 36.7 34.2 36.7 55.1zM480 278.2c0 31.9-3.2 65.7-17.5 95-37.9 76.6-142.1 74.8-216.7 74.8-75.8 0-186.2 2.7-225.6-74.8-14.6-29-20.2-63.1-20.2-95 0-41.9 13.9-81.5 41.5-113.6-5.2-15.8-7.7-32.4-7.7-48.8 0-21.5 4.9-32.3 14.6-51.8 45.3 0 74.3 9 108.8 36 29-6.9 58.8-10 88.7-10 27 0 54.2 2.9 80.4 9.2 34-26.7 63-35.2 107.8-35.2 9.8 19.5 14.6 30.3 14.6 51.8 0 16.4-2.6 32.7-7.7 48.2 27.5 32.4 39 72.3 39 114.2zm-64.3 50.5c0-43.9-26.7-82.6-73.5-82.6-18.9 0-37 3.4-56 6-14.9 2.3-29.8 3.2-45.1 3.2-15.2 0-30.1-.9-45.1-3.2-18.7-2.6-37-6-56-6-46.8 0-73.5 38.7-73.5 82.6 0 87.8 80.4 101.3 150.4 101.3h48.2c70.3 0 150.6-13.4 150.6-101.3zm-82.6-55.1c-25.8 0-36.7 34.2-36.7 55.1s10.9 55.1 36.7 55.1 36.7-34.2 36.7-55.1-10.9-55.1-36.7-55.1z"],
	"github-square": [448, 512, [], "f092", "M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM277.3 415.7c-8.4 1.5-11.5-3.7-11.5-8 0-5.4.2-33 .2-55.3 0-15.6-5.2-25.5-11.3-30.7 37-4.1 76-9.2 76-73.1 0-18.2-6.5-27.3-17.1-39 1.7-4.3 7.4-22-1.7-45-13.9-4.3-45.7 17.9-45.7 17.9-13.2-3.7-27.5-5.6-41.6-5.6-14.1 0-28.4 1.9-41.6 5.6 0 0-31.8-22.2-45.7-17.9-9.1 22.9-3.5 40.6-1.7 45-10.6 11.7-15.6 20.8-15.6 39 0 63.6 37.3 69 74.3 73.1-4.8 4.3-9.1 11.7-10.6 22.3-9.5 4.3-33.8 11.7-48.3-13.9-9.1-15.8-25.5-17.1-25.5-17.1-16.2-.2-1.1 10.2-1.1 10.2 10.8 5 18.4 24.2 18.4 24.2 9.7 29.7 56.1 19.7 56.1 19.7 0 13.9.2 36.5.2 40.6 0 4.3-3 9.5-11.5 8-66-22.1-112.2-84.9-112.2-158.3 0-91.8 70.2-161.5 162-161.5S388 165.6 388 257.4c.1 73.4-44.7 136.3-110.7 158.3zm-98.1-61.1c-1.9.4-3.7-.4-3.9-1.7-.2-1.5 1.1-2.8 3-3.2 1.9-.2 3.7.6 3.9 1.9.3 1.3-1 2.6-3 3zm-9.5-.9c0 1.3-1.5 2.4-3.5 2.4-2.2.2-3.7-.9-3.7-2.4 0-1.3 1.5-2.4 3.5-2.4 1.9-.2 3.7.9 3.7 2.4zm-13.7-1.1c-.4 1.3-2.4 1.9-4.1 1.3-1.9-.4-3.2-1.9-2.8-3.2.4-1.3 2.4-1.9 4.1-1.5 2 .6 3.3 2.1 2.8 3.4zm-12.3-5.4c-.9 1.1-2.8.9-4.3-.6-1.5-1.3-1.9-3.2-.9-4.1.9-1.1 2.8-.9 4.3.6 1.3 1.3 1.8 3.3.9 4.1zm-9.1-9.1c-.9.6-2.6 0-3.7-1.5s-1.1-3.2 0-3.9c1.1-.9 2.8-.2 3.7 1.3 1.1 1.5 1.1 3.3 0 4.1zm-6.5-9.7c-.9.9-2.4.4-3.5-.6-1.1-1.3-1.3-2.8-.4-3.5.9-.9 2.4-.4 3.5.6 1.1 1.3 1.3 2.8.4 3.5zm-6.7-7.4c-.4.9-1.7 1.1-2.8.4-1.3-.6-1.9-1.7-1.5-2.6.4-.6 1.5-.9 2.8-.4 1.3.7 1.9 1.8 1.5 2.6z"],
	"gitkraken": [592, 512, [], "f3a6", "M565.7 118.1c-2.3-6.1-9.3-9.2-15.3-6.6-5.7 2.4-8.5 8.9-6.3 14.6 10.9 29 16.9 60.5 16.9 93.3 0 134.6-100.3 245.7-230.2 262.7V358.4c7.9-1.5 15.5-3.6 23-6.2v104c106.7-25.9 185.9-122.1 185.9-236.8 0-91.8-50.8-171.8-125.8-213.3-5.7-3.2-13-.9-15.9 5-2.7 5.5-.6 12.2 4.7 15.1 67.9 37.6 113.9 110 113.9 193.2 0 93.3-57.9 173.1-139.8 205.4v-92.2c14.2-4.5 24.9-17.7 24.9-33.5 0-13.1-6.8-24.4-17.3-30.5 8.3-79.5 44.5-58.6 44.5-83.9V170c0-38-87.9-161.8-129-164.7-2.5-.2-5-.2-7.6 0C251.1 8.3 163.2 132 163.2 170v14.8c0 25.3 36.3 4.3 44.5 83.9-10.6 6.1-17.3 17.4-17.3 30.5 0 15.8 10.6 29 24.8 33.5v92.2c-81.9-32.2-139.8-112-139.8-205.4 0-83.1 46-155.5 113.9-193.2 5.4-3 7.4-9.6 4.7-15.1-2.9-5.9-10.1-8.2-15.9-5-75 41.5-125.8 121.5-125.8 213.3 0 114.7 79.2 210.8 185.9 236.8v-104c7.6 2.5 15.1 4.6 23 6.2v123.7C131.4 465.2 31 354.1 31 219.5c0-32.8 6-64.3 16.9-93.3 2.2-5.8-.6-12.2-6.3-14.6-6-2.6-13 .4-15.3 6.6C14.5 149.7 8 183.8 8 219.5c0 155.1 122.6 281.6 276.3 287.8V361.4c6.8.4 15 .5 23.4 0v145.8C461.4 501.1 584 374.6 584 219.5c0-35.7-6.5-69.8-18.3-101.4zM365.9 275.5c13 0 23.7 10.5 23.7 23.7 0 13.1-10.6 23.7-23.7 23.7-13 0-23.7-10.5-23.7-23.7 0-13.1 10.6-23.7 23.7-23.7zm-139.8 47.3c-13.2 0-23.7-10.7-23.7-23.7s10.5-23.7 23.7-23.7c13.1 0 23.7 10.6 23.7 23.7 0 13-10.5 23.7-23.7 23.7z"],
	"gitlab": [512, 512, [], "f296", "M105.2 24.9c-3.1-8.9-15.7-8.9-18.9 0L29.8 199.7h132c-.1 0-56.6-174.8-56.6-174.8zM.9 287.7c-2.6 8 .3 16.9 7.1 22l247.9 184-226.2-294zm160.8-88l94.3 294 94.3-294zm349.4 88l-28.8-88-226.3 294 247.9-184c6.9-5.1 9.7-14 7.2-22zM425.7 24.9c-3.1-8.9-15.7-8.9-18.9 0l-56.6 174.8h132z"],
	"gitter": [384, 512, [], "f426", "M66.4 322.5H16V0h50.4v322.5zM166.9 76.1h-50.4V512h50.4V76.1zm100.6 0h-50.4V512h50.4V76.1zM368 76h-50.4v247H368V76z"],
	"glide": [448, 512, [], "f2a5", "M252.8 148.6c0 8.8-1.6 17.7-3.4 26.4-5.8 27.8-11.6 55.8-17.3 83.6-1.4 6.3-8.3 4.9-13.7 4.9-23.8 0-30.5-26-30.5-45.5 0-29.3 11.2-68.1 38.5-83.1 4.3-2.5 9.2-4.2 14.1-4.2 11.4 0 12.3 8.3 12.3 17.9zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-64 187c0-5.1-20.8-37.7-25.5-39.5-2.2-.9-7.2-2.3-9.6-2.3-23.1 0-38.7 10.5-58.2 21.5l-.5-.5c4.3-29.4 14.6-57.2 14.6-87.4 0-44.6-23.8-62.7-67.5-62.7-71.7 0-108 70.8-108 123.5 0 54.7 32 85 86.3 85 7.5 0 6.9-.6 6.9 2.3-10.5 80.3-56.5 82.9-56.5 58.9 0-24.4 28-36.5 28.3-38-.2-7.6-29.3-17.2-36.7-17.2-21.1 0-32.7 33-32.7 50.6 0 32.3 20.4 54.7 53.3 54.7 48.2 0 83.4-49.7 94.3-91.7 9.4-37.7 7-39.4 12.3-42.1 20-10.1 35.8-16.8 58.4-16.8 11.1 0 19 2.3 36.7 5.2 1.8.1 4.1-1.7 4.1-3.5z"],
	"glide-g": [448, 512, [], "f2a6", "M407.1 211.2c-3.5-1.4-11.6-3.8-15.4-3.8-37.1 0-62.2 16.8-93.5 34.5l-.9-.9c7-47.3 23.5-91.9 23.5-140.4C320.8 29.1 282.6 0 212.4 0 97.3 0 39 113.7 39 198.4 39 286.3 90.3 335 177.6 335c12 0 11-1 11 3.8-16.9 128.9-90.8 133.1-90.8 94.6 0-39.2 45-58.6 45.5-61-.3-12.2-47-27.6-58.9-27.6-33.9.1-52.4 51.2-52.4 79.3C32 476 64.8 512 117.5 512c77.4 0 134-77.8 151.4-145.4 15.1-60.5 11.2-63.3 19.7-67.6 32.2-16.2 57.5-27 93.8-27 17.8 0 30.5 3.7 58.9 8.4 2.9 0 6.7-2.9 6.7-5.8 0-8-33.4-60.5-40.9-63.4zm-175.3-84.4c-9.3 44.7-18.6 89.6-27.8 134.3-2.3 10.2-13.3 7.8-22 7.8-38.3 0-49-41.8-49-73.1 0-47 18-109.3 61.8-133.4 7-4.1 14.8-6.7 22.6-6.7 18.6 0 20 13.3 20 28.7-.1 14.3-2.7 28.5-5.6 42.4z"],
	"gofore": [400, 512, [], "f3a7", "M324 319.8h-13.2v34.7c-24.5 23.1-56.3 35.8-89.9 35.8-73.2 0-132.4-60.2-132.4-134.4 0-74.1 59.2-134.4 132.4-134.4 35.3 0 68.6 14 93.6 39.4l62.3-63.3C335 55.3 279.7 32 220.7 32 98 32 0 132.6 0 256c0 122.5 97 224 220.7 224 63.2 0 124.5-26.2 171-82.5-2-27.6-13.4-77.7-67.7-77.7zm-12.1-112.5H205.6v89H324c33.5 0 60.5 15.1 76 41.8v-30.6c0-65.2-40.4-100.2-88.1-100.2z"],
	"goodreads": [448, 512, [], "f3a8", "M299.9 191.2c5.1 37.3-4.7 79-35.9 100.7-22.3 15.5-52.8 14.1-70.8 5.7-37.1-17.3-49.5-58.6-46.8-97.2 4.3-60.9 40.9-87.9 75.3-87.5 46.9-.2 71.8 31.8 78.2 78.3zM448 88v336c0 30.9-25.1 56-56 56H56c-30.9 0-56-25.1-56-56V88c0-30.9 25.1-56 56-56h336c30.9 0 56 25.1 56 56zM330 313.2s-.1-34-.1-217.3h-29v40.3c-.8.3-1.2-.5-1.6-1.2-9.6-20.7-35.9-46.3-76-46-51.9.4-87.2 31.2-100.6 77.8-4.3 14.9-5.8 30.1-5.5 45.6 1.7 77.9 45.1 117.8 112.4 115.2 28.9-1.1 54.5-17 69-45.2.5-1 1.1-1.9 1.7-2.9.2.1.4.1.6.2.3 3.8.2 30.7.1 34.5-.2 14.8-2 29.5-7.2 43.5-7.8 21-22.3 34.7-44.5 39.5-17.8 3.9-35.6 3.8-53.2-1.2-21.5-6.1-36.5-19-41.1-41.8-.3-1.6-1.3-1.3-2.3-1.3h-26.8c.8 10.6 3.2 20.3 8.5 29.2 24.2 40.5 82.7 48.5 128.2 37.4 49.9-12.3 67.3-54.9 67.4-106.3z"],
	"goodreads-g": [384, 512, [], "f3a9", "M42.6 403.3h2.8c12.7 0 25.5 0 38.2.1 1.6 0 3.1-.4 3.6 2.1 7.1 34.9 30 54.6 62.9 63.9 26.9 7.6 54.1 7.8 81.3 1.8 33.8-7.4 56-28.3 68-60.4 8-21.5 10.7-43.8 11-66.5.1-5.8.3-47-.2-52.8l-.9-.3c-.8 1.5-1.7 2.9-2.5 4.4-22.1 43.1-61.3 67.4-105.4 69.1-103 4-169.4-57-172-176.2-.5-23.7 1.8-46.9 8.3-69.7C58.3 47.7 112.3.6 191.6 0c61.3-.4 101.5 38.7 116.2 70.3.5 1.1 1.3 2.3 2.4 1.9V10.6h44.3c0 280.3.1 332.2.1 332.2-.1 78.5-26.7 143.7-103 162.2-69.5 16.9-159 4.8-196-57.2-8-13.5-11.8-28.3-13-44.5zM188.9 36.5c-52.5-.5-108.5 40.7-115 133.8-4.1 59 14.8 122.2 71.5 148.6 27.6 12.9 74.3 15 108.3-8.7 47.6-33.2 62.7-97 54.8-154-9.7-71.1-47.8-120-119.6-119.7z"],
	"google": [488, 512, [], "f1a0", "M488 261.8C488 403.3 391.1 504 248 504 110.8 504 0 393.2 0 256S110.8 8 248 8c66.8 0 123 24.5 166.3 64.9l-67.5 64.9C258.5 52.6 94.3 116.6 94.3 256c0 86.5 69.1 156.6 153.7 156.6 98.2 0 135-70.4 140.8-106.9H248v-85.3h236.1c2.3 12.7 3.9 24.9 3.9 41.4z"],
	"google-drive": [512, 512, [], "f3aa", "M339 314.9L175.4 32h161.2l163.6 282.9H339zm-137.5 23.6L120.9 480h310.5L512 338.5H201.5zM154.1 67.4L0 338.5 80.6 480 237 208.8 154.1 67.4z"],
	"google-pay": [640, 512, [], "e079", "M105.72,215v41.25h57.1a49.66,49.66,0,0,1-21.14,32.6c-9.54,6.55-21.72,10.28-36,10.28-27.6,0-50.93-18.91-59.3-44.22a65.61,65.61,0,0,1,0-41l0,0c8.37-25.46,31.7-44.37,59.3-44.37a56.43,56.43,0,0,1,40.51,16.08L176.47,155a101.24,101.24,0,0,0-70.75-27.84,105.55,105.55,0,0,0-94.38,59.11,107.64,107.64,0,0,0,0,96.18v.15a105.41,105.41,0,0,0,94.38,59c28.47,0,52.55-9.53,70-25.91,20-18.61,31.41-46.15,31.41-78.91A133.76,133.76,0,0,0,205.38,215Zm389.41-4c-10.13-9.38-23.93-14.14-41.39-14.14-22.46,0-39.34,8.34-50.5,24.86l20.85,13.26q11.45-17,31.26-17a34.05,34.05,0,0,1,22.75,8.79A28.14,28.14,0,0,1,487.79,248v5.51c-9.1-5.07-20.55-7.75-34.64-7.75-16.44,0-29.65,3.88-39.49,11.77s-14.82,18.31-14.82,31.56a39.74,39.74,0,0,0,13.94,31.27c9.25,8.34,21,12.51,34.79,12.51,16.29,0,29.21-7.3,39-21.89h1v17.72h22.61V250C510.25,233.45,505.26,220.34,495.13,211ZM475.9,300.3a37.32,37.32,0,0,1-26.57,11.16A28.61,28.61,0,0,1,431,305.21a19.41,19.41,0,0,1-7.77-15.63c0-7,3.22-12.81,9.54-17.42s14.53-7,24.07-7C470,265,480.3,268,487.64,273.94,487.64,284.07,483.68,292.85,475.9,300.3Zm-93.65-142A55.71,55.71,0,0,0,341.74,142H279.07V328.74H302.7V253.1h39c16,0,29.5-5.36,40.51-15.93.88-.89,1.76-1.79,2.65-2.68A54.45,54.45,0,0,0,382.25,158.26Zm-16.58,62.23a30.65,30.65,0,0,1-23.34,9.68H302.7V165h39.63a32,32,0,0,1,22.6,9.23A33.18,33.18,0,0,1,365.67,220.49ZM614.31,201,577.77,292.7h-.45L539.9,201H514.21L566,320.55l-29.35,64.32H561L640,201Z"],
	"google-play": [512, 512, [], "f3ab", "M325.3 234.3L104.6 13l280.8 161.2-60.1 60.1zM47 0C34 6.8 25.3 19.2 25.3 35.3v441.3c0 16.1 8.7 28.5 21.7 35.3l256.6-256L47 0zm425.2 225.6l-58.9-34.1-65.7 64.5 65.7 64.5 60.1-34.1c18-14.3 18-46.5-1.2-60.8zM104.6 499l280.8-161.2-60.1-60.1L104.6 499z"],
	"google-plus": [512, 512, [], "f2b3", "M256,8C119.1,8,8,119.1,8,256S119.1,504,256,504,504,392.9,504,256,392.9,8,256,8ZM185.3,380a124,124,0,0,1,0-248c31.3,0,60.1,11,83,32.3l-33.6,32.6c-13.2-12.9-31.3-19.1-49.4-19.1-42.9,0-77.2,35.5-77.2,78.1S142.3,334,185.3,334c32.6,0,64.9-19.1,70.1-53.3H185.3V238.1H302.2a109.2,109.2,0,0,1,1.9,20.7c0,70.8-47.5,121.2-118.8,121.2ZM415.5,273.8v35.5H380V273.8H344.5V238.3H380V202.8h35.5v35.5h35.2v35.5Z"],
	"google-plus-g": [640, 512, [], "f0d5", "M386.061 228.496c1.834 9.692 3.143 19.384 3.143 31.956C389.204 370.205 315.599 448 204.8 448c-106.084 0-192-85.915-192-192s85.916-192 192-192c51.864 0 95.083 18.859 128.611 50.292l-52.126 50.03c-14.145-13.621-39.028-29.599-76.485-29.599-65.484 0-118.92 54.221-118.92 121.277 0 67.056 53.436 121.277 118.92 121.277 75.961 0 104.513-54.745 108.965-82.773H204.8v-66.009h181.261zm185.406 6.437V179.2h-56.001v55.733h-55.733v56.001h55.733v55.733h56.001v-55.733H627.2v-56.001h-55.733z"],
	"google-plus-square": [448, 512, [], "f0d4", "M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM164 356c-55.3 0-100-44.7-100-100s44.7-100 100-100c27 0 49.5 9.8 67 26.2l-27.1 26.1c-7.4-7.1-20.3-15.4-39.8-15.4-34.1 0-61.9 28.2-61.9 63.2 0 34.9 27.8 63.2 61.9 63.2 39.6 0 54.4-28.5 56.8-43.1H164v-34.4h94.4c1 5 1.6 10.1 1.6 16.6 0 57.1-38.3 97.6-96 97.6zm220-81.8h-29v29h-29.2v-29h-29V245h29v-29H355v29h29v29.2z"],
	"google-wallet": [448, 512, [], "f1ee", "M156.8 126.8c37.6 60.6 64.2 113.1 84.3 162.5-8.3 33.8-18.8 66.5-31.3 98.3-13.2-52.3-26.5-101.3-56-148.5 6.5-36.4 2.3-73.6 3-112.3zM109.3 200H16.1c-6.5 0-10.5 7.5-6.5 12.7C51.8 267 81.3 330.5 101.3 400h103.5c-16.2-69.7-38.7-133.7-82.5-193.5-3-4-8-6.5-13-6.5zm47.8-88c68.5 108 130 234.5 138.2 368H409c-12-138-68.4-265-143.2-368H157.1zm251.8-68.5c-1.8-6.8-8.2-11.5-15.2-11.5h-88.3c-5.3 0-9 5-7.8 10.3 13.2 46.5 22.3 95.5 26.5 146 48.2 86.2 79.7 178.3 90.6 270.8 15.8-60.5 25.3-133.5 25.3-203 0-73.6-12.1-145.1-31.1-212.6z"],
	"gratipay": [496, 512, [], "f184", "M248 8C111.1 8 0 119.1 0 256s111.1 248 248 248 248-111.1 248-248S384.9 8 248 8zm114.6 226.4l-113 152.7-112.7-152.7c-8.7-11.9-19.1-50.4 13.6-72 28.1-18.1 54.6-4.2 68.5 11.9 15.9 17.9 46.6 16.9 61.7 0 13.9-16.1 40.4-30 68.1-11.9 32.9 21.6 22.6 60 13.8 72z"],
	"grav": [512, 512, [], "f2d6", "M301.1 212c4.4 4.4 4.4 11.9 0 16.3l-9.7 9.7c-4.4 4.7-11.9 4.7-16.6 0l-10.5-10.5c-4.4-4.7-4.4-11.9 0-16.6l9.7-9.7c4.4-4.4 11.9-4.4 16.6 0l10.5 10.8zm-30.2-19.7c3-3 3-7.8 0-10.5-2.8-3-7.5-3-10.5 0-2.8 2.8-2.8 7.5 0 10.5 3.1 2.8 7.8 2.8 10.5 0zm-26 5.3c-3 2.8-3 7.5 0 10.2 2.8 3 7.5 3 10.5 0 2.8-2.8 2.8-7.5 0-10.2-3-3-7.7-3-10.5 0zm72.5-13.3c-19.9-14.4-33.8-43.2-11.9-68.1 21.6-24.9 40.7-17.2 59.8.8 11.9 11.3 29.3 24.9 17.2 48.2-12.5 23.5-45.1 33.2-65.1 19.1zm47.7-44.5c-8.9-10-23.3 6.9-15.5 16.1 7.4 9 32.1 2.4 15.5-16.1zM504 256c0 137-111 248-248 248S8 393 8 256 119 8 256 8s248 111 248 248zm-66.2 42.6c2.5-16.1-20.2-16.6-25.2-25.7-13.6-24.1-27.7-36.8-54.5-30.4 11.6-8 23.5-6.1 23.5-6.1.3-6.4 0-13-9.4-24.9 3.9-12.5.3-22.4.3-22.4 15.5-8.6 26.8-24.4 29.1-43.2 3.6-31-18.8-59.2-49.8-62.8-22.1-2.5-43.7 7.7-54.3 25.7-23.2 40.1 1.4 70.9 22.4 81.4-14.4-1.4-34.3-11.9-40.1-34.3-6.6-25.7 2.8-49.8 8.9-61.4 0 0-4.4-5.8-8-8.9 0 0-13.8 0-24.6 5.3 11.9-15.2 25.2-14.4 25.2-14.4 0-6.4-.6-14.9-3.6-21.6-5.4-11-23.8-12.9-31.7 2.8.1-.2.3-.4.4-.5-5 11.9-1.1 55.9 16.9 87.2-2.5 1.4-9.1 6.1-13 10-21.6 9.7-56.2 60.3-56.2 60.3-28.2 10.8-77.2 50.9-70.6 79.7.3 3 1.4 5.5 3 7.5-2.8 2.2-5.5 5-8.3 8.3-11.9 13.8-5.3 35.2 17.7 24.4 15.8-7.2 29.6-20.2 36.3-30.4 0 0-5.5-5-16.3-4.4 27.7-6.6 34.3-9.4 46.2-9.1 8 3.9 8-34.3 8-34.3 0-14.7-2.2-31-11.1-41.5 12.5 12.2 29.1 32.7 28 60.6-.8 18.3-15.2 23-15.2 23-9.1 16.6-43.2 65.9-30.4 106 0 0-9.7-14.9-10.2-22.1-17.4 19.4-46.5 52.3-24.6 64.5 26.6 14.7 108.8-88.6 126.2-142.3 34.6-20.8 55.4-47.3 63.9-65 22 43.5 95.3 94.5 101.1 59z"],
	"gripfire": [384, 512, [], "f3ac", "M112.5 301.4c0-73.8 105.1-122.5 105.1-203 0-47.1-34-88-39.1-90.4.4 3.3.6 6.7.6 10C179.1 110.1 32 171.9 32 286.6c0 49.8 32.2 79.2 66.5 108.3 65.1 46.7 78.1 71.4 78.1 86.6 0 10.1-4.8 17-4.8 22.3 13.1-16.7 17.4-31.9 17.5-46.4 0-29.6-21.7-56.3-44.2-86.5-16-22.3-32.6-42.6-32.6-69.5zm205.3-39c-12.1-66.8-78-124.4-94.7-130.9l4 7.2c2.4 5.1 3.4 10.9 3.4 17.1 0 44.7-54.2 111.2-56.6 116.7-2.2 5.1-3.2 10.5-3.2 15.8 0 20.1 15.2 42.1 17.9 42.1 2.4 0 56.6-55.4 58.1-87.7 6.4 11.7 9.1 22.6 9.1 33.4 0 41.2-41.8 96.9-41.8 96.9 0 11.6 31.9 53.2 35.5 53.2 1 0 2.2-1.4 3.2-2.4 37.9-39.3 67.3-85 67.3-136.8 0-8-.7-16.2-2.2-24.6z"],
	"grunt": [384, 512, [], "f3ad", "M61.3 189.3c-1.1 10 5.2 19.1 5.2 19.1.7-7.5 2.2-12.8 4-16.6.4 10.3 3.2 23.5 12.8 34.1 6.9 7.6 35.6 23.3 54.9 6.1 1 2.4 2.1 5.3 3 8.5 2.9 10.3-2.7 25.3-2.7 25.3s15.1-17.1 13.9-32.5c10.8-.5 21.4-8.4 21.1-19.5 0 0-18.9 10.4-35.5-8.8-9.7-11.2-40.9-42-83.1-31.8 4.3 1 8.9 2.4 13.5 4.1h-.1c-4.2 2-6.5 7.1-7 12zm28.3-1.8c19.5 11 37.4 25.7 44.9 37-5.7 3.3-21.7 10.4-38-1.7-10.3-7.6-9.8-26.2-6.9-35.3zm142.1 45.8c-1.2 15.5 13.9 32.5 13.9 32.5s-5.6-15-2.7-25.3c.9-3.2 2-6 3-8.5 19.3 17.3 48 1.5 54.8-6.1 9.6-10.6 12.3-23.8 12.8-34.1 1.8 3.8 3.4 9.1 4 16.6 0 0 6.4-9.1 5.2-19.1-.6-5-2.9-10-7-11.8h-.1c4.6-1.8 9.2-3.2 13.5-4.1-42.3-10.2-73.4 20.6-83.1 31.8-16.7 19.2-35.5 8.8-35.5 8.8-.2 10.9 10.4 18.9 21.2 19.3zm62.7-45.8c3 9.1 3.4 27.7-7 35.4-16.3 12.1-32.2 5-37.9 1.6 7.5-11.4 25.4-26 44.9-37zM160 418.5h-29.4c-5.5 0-8.2 1.6-9.5 2.9-1.9 2-2.2 4.7-.9 8.1 3.5 9.1 11.4 16.5 13.7 18.6 3.1 2.7 7.5 4.3 11.8 4.3 4.4 0 8.3-1.7 11-4.6 7.5-8.2 11.9-17.1 13-19.8.6-1.5 1.3-4.5-.9-6.8-1.8-1.8-4.7-2.7-8.8-2.7zm189.2-101.2c-2.4 17.9-13 33.8-24.6 43.7-3.1-22.7-3.7-55.5-3.7-62.4 0-14.7 9.5-24.5 12.2-26.1 2.5-1.5 5.4-3 8.3-4.6 18-9.6 40.4-21.6 40.4-43.7 0-16.2-9.3-23.2-15.4-27.8-.8-.6-1.5-1.1-2.2-1.7-2.1-1.7-3.7-3-4.3-4.4-4.4-9.8-3.6-34.2-1.7-37.6.6-.6 16.7-20.9 11.8-39.2-2-7.4-6.9-13.3-14.1-17-5.3-2.7-11.9-4.2-19.5-4.5-.1-2-.5-3.9-.9-5.9-.6-2.6-1.1-5.3-.9-8.1.4-4.7.8-9 2.2-11.3 8.4-13.3 28.8-17.6 29-17.6l12.3-2.4-8.1-9.5c-.1-.2-17.3-17.5-46.3-17.5-7.9 0-16 1.3-24.1 3.9-24.2 7.8-42.9 30.5-49.4 39.3-3.1-1-6.3-1.9-9.6-2.7-4.2-15.8 9-38.5 9-38.5s-13.6-3-33.7 15.2c-2.6-6.5-8.1-20.5-1.8-37.2C184.6 10.1 177.2 26 175 40.4c-7.6-5.4-6.7-23.1-7.2-27.6-7.5.9-29.2 21.9-28.2 48.3-2 .5-3.9 1.1-5.9 1.7-6.5-8.8-25.1-31.5-49.4-39.3-7.9-2.2-16-3.5-23.9-3.5-29 0-46.1 17.3-46.3 17.5L6 46.9l12.3 2.4c.2 0 20.6 4.3 29 17.6 1.4 2.2 1.8 6.6 2.2 11.3.2 2.8-.4 5.5-.9 8.1-.4 1.9-.8 3.9-.9 5.9-7.7.3-14.2 1.8-19.5 4.5-7.2 3.7-12.1 9.6-14.1 17-5 18.2 11.2 38.5 11.8 39.2 1.9 3.4 2.7 27.8-1.7 37.6-.6 1.4-2.2 2.7-4.3 4.4-.7.5-1.4 1.1-2.2 1.7-6.1 4.6-15.4 11.7-15.4 27.8 0 22.1 22.4 34.1 40.4 43.7 3 1.6 5.8 3.1 8.3 4.6 2.7 1.6 12.2 11.4 12.2 26.1 0 6.9-.6 39.7-3.7 62.4-11.6-9.9-22.2-25.9-24.6-43.8 0 0-29.2 22.6-20.6 70.8 5.2 29.5 23.2 46.1 47 54.7 8.8 19.1 29.4 45.7 67.3 49.6C143 504.3 163 512 192.2 512h.2c29.1 0 49.1-7.7 63.6-19.5 37.9-3.9 58.5-30.5 67.3-49.6 23.8-8.7 41.7-25.2 47-54.7 8.2-48.4-21.1-70.9-21.1-70.9zM305.7 37.7c5.6-1.8 11.6-2.7 17.7-2.7 11 0 19.9 3 24.7 5-3.1 1.4-6.4 3.2-9.7 5.3-2.4-.4-5.6-.8-9.2-.8-10.5 0-20.5 3.1-28.7 8.9-12.3 8.7-18 16.9-20.7 22.4-2.2-1.3-4.5-2.5-7.1-3.7-1.6-.8-3.1-1.5-4.7-2.2 6.1-9.1 19.9-26.5 37.7-32.2zm21 18.2c-.8 1-1.6 2.1-2.3 3.2-3.3 5.2-3.9 11.6-4.4 17.8-.5 6.4-1.1 12.5-4.4 17-4.2.8-8.1 1.7-11.5 2.7-2.3-3.1-5.6-7-10.5-11.2 1.4-4.8 5.5-16.1 13.5-22.5 5.6-4.3 12.2-6.7 19.6-7zM45.6 45.3c-3.3-2.2-6.6-4-9.7-5.3 4.8-2 13.7-5 24.7-5 6.1 0 12 .9 17.7 2.7 17.8 5.8 31.6 23.2 37.7 32.1-1.6.7-3.2 1.4-4.8 2.2-2.5 1.2-4.9 2.5-7.1 3.7-2.6-5.4-8.3-13.7-20.7-22.4-8.3-5.8-18.2-8.9-28.8-8.9-3.4.1-6.6.5-9 .9zm44.7 40.1c-4.9 4.2-8.3 8-10.5 11.2-3.4-.9-7.3-1.9-11.5-2.7C65 89.5 64.5 83.4 64 77c-.5-6.2-1.1-12.6-4.4-17.8-.7-1.1-1.5-2.2-2.3-3.2 7.4.3 14 2.6 19.5 7 8 6.3 12.1 17.6 13.5 22.4zM58.1 259.9c-2.7-1.6-5.6-3.1-8.4-4.6-14.9-8-30.2-16.3-30.2-30.5 0-11.1 4.3-14.6 8.9-18.2l.5-.4c.7-.6 1.4-1.2 2.2-1.8-.9 7.2-1.9 13.3-2.7 14.9 0 0 12.1-15 15.7-44.3 1.4-11.5-1.1-34.3-5.1-43 .2 4.9 0 9.8-.3 14.4-.4-.8-.8-1.6-1.3-2.2-3.2-4-11.8-17.5-9.4-26.6.9-3.5 3.1-6 6.7-7.8 3.8-1.9 8.8-2.9 15.1-2.9 12.3 0 25.9 3.7 32.9 6 25.1 8 55.4 30.9 64.1 37.7.2.2.4.3.4.3l5.6 3.9-3.5-5.8c-.2-.3-19.1-31.4-53.2-46.5 2-2.9 7.4-8.1 21.6-15.1 21.4-10.5 46.5-15.8 74.3-15.8 27.9 0 52.9 5.3 74.3 15.8 14.2 6.9 19.6 12.2 21.6 15.1-34 15.1-52.9 46.2-53.1 46.5l-3.5 5.8 5.6-3.9s.2-.1.4-.3c8.7-6.8 39-29.8 64.1-37.7 7-2.2 20.6-6 32.9-6 6.3 0 11.3 1 15.1 2.9 3.5 1.8 5.7 4.4 6.7 7.8 2.5 9.1-6.1 22.6-9.4 26.6-.5.6-.9 1.3-1.3 2.2-.3-4.6-.5-9.5-.3-14.4-4 8.8-6.5 31.5-5.1 43 3.6 29.3 15.7 44.3 15.7 44.3-.8-1.6-1.8-7.7-2.7-14.9.7.6 1.5 1.2 2.2 1.8l.5.4c4.6 3.7 8.9 7.1 8.9 18.2 0 14.2-15.4 22.5-30.2 30.5-2.9 1.5-5.7 3.1-8.4 4.6-8.7 5-18 16.7-19.1 34.2-.9 14.6.9 49.9 3.4 75.9-12.4 4.8-26.7 6.4-39.7 6.8-2-4.1-3.9-8.5-5.5-13.1-.7-2-19.6-51.1-26.4-62.2 5.5 39 17.5 73.7 23.5 89.6-3.5-.5-7.3-.7-11.7-.7h-117c-4.4 0-8.3.3-11.7.7 6-15.9 18.1-50.6 23.5-89.6-6.8 11.2-25.7 60.3-26.4 62.2-1.6 4.6-3.5 9-5.5 13.1-13-.4-27.2-2-39.7-6.8 2.5-26 4.3-61.2 3.4-75.9-.9-17.4-10.3-29.2-19-34.2zM34.8 404.6c-12.1-20-8.7-54.1-3.7-59.1 10.9 34.4 47.2 44.3 74.4 45.4-2.7 4.2-5.2 7.6-7 10l-1.4 1.4c-7.2 7.8-8.6 18.5-4.1 31.8-22.7-.1-46.3-9.8-58.2-29.5zm45.7 43.5c6 1.1 12.2 1.9 18.6 2.4 3.5 8 7.4 15.9 12.3 23.1-14.4-5.9-24.4-16-30.9-25.5zM192 498.2c-60.6-.1-78.3-45.8-84.9-64.7-3.7-10.5-3.4-18.2.9-23.1 2.9-3.3 9.5-7.2 24.6-7.2h118.8c15.1 0 21.8 3.9 24.6 7.2 4.2 4.8 4.5 12.6.9 23.1-6.6 18.8-24.3 64.6-84.9 64.7zm80.6-24.6c4.9-7.2 8.8-15.1 12.3-23.1 6.4-.5 12.6-1.3 18.6-2.4-6.5 9.5-16.5 19.6-30.9 25.5zm76.6-69c-12 19.7-35.6 29.3-58.1 29.7 4.5-13.3 3.1-24.1-4.1-31.8-.4-.5-.9-1-1.4-1.5-1.8-2.4-4.3-5.8-7-10 27.2-1.2 63.5-11 74.4-45.4 5 5 8.4 39.1-3.8 59zM191.9 187.7h.2c12.7-.1 27.2-17.8 27.2-17.8-9.9 6-18.8 8.1-27.3 8.3-8.5-.2-17.4-2.3-27.3-8.3 0 0 14.5 17.6 27.2 17.8zm61.7 230.7h-29.4c-4.2 0-7.2.9-8.9 2.7-2.2 2.3-1.5 5.2-.9 6.7 1 2.6 5.5 11.3 13 19.3 2.7 2.9 6.6 4.5 11 4.5s8.7-1.6 11.8-4.2c2.3-2 10.2-9.2 13.7-18.1 1.3-3.3 1-6-.9-7.9-1.3-1.3-4-2.9-9.4-3z"],
	"guilded": [448, 512, [], "e07e", "M443.427,64H4.571c0,103.26,22.192,180.06,43.418,222.358C112.046,414.135,224,448,225.256,448a312.824,312.824,0,0,0,140.55-103.477c25.907-33.923,53.1-87.19,65.916-145.761H171.833c4.14,36.429,22.177,67.946,45.1,86.944h88.589c-17.012,28.213-48.186,54.4-80.456,69.482-31.232-13.259-69.09-46.544-96.548-98.362-26.726-53.833-27.092-105.883-27.092-105.883H437.573A625.91,625.91,0,0,0,443.427,64Z"],
	"gulp": [256, 512, [], "f3ae", "M209.8 391.1l-14.1 24.6-4.6 80.2c0 8.9-28.3 16.1-63.1 16.1s-63.1-7.2-63.1-16.1l-5.8-79.4-14.9-25.4c41.2 17.3 126 16.7 165.6 0zm-196-253.3l13.6 125.5c5.9-20 20.8-47 40-55.2 6.3-2.7 12.7-2.7 18.7.9 5.2 3 9.6 9.3 10.1 11.8 1.2 6.5-2 9.1-4.5 9.1-3 0-5.3-4.6-6.8-7.3-4.1-7.3-10.3-7.6-16.9-2.8-6.9 5-12.9 13.4-17.1 20.7-5.1 8.8-9.4 18.5-12 28.2-1.5 5.6-2.9 14.6-.6 19.9 1 2.2 2.5 3.6 4.9 3.6 5 0 12.3-6.6 15.8-10.1 4.5-4.5 10.3-11.5 12.5-16l5.2-15.5c2.6-6.8 9.9-5.6 9.9 0 0 10.2-3.7 13.6-10 34.7-5.8 19.5-7.6 25.8-7.6 25.8-.7 2.8-3.4 7.5-6.3 7.5-1.2 0-2.1-.4-2.6-1.2-1-1.4-.9-5.3-.8-6.3.2-3.2 6.3-22.2 7.3-25.2-2 2.2-4.1 4.4-6.4 6.6-5.4 5.1-14.1 11.8-21.5 11.8-3.4 0-5.6-.9-7.7-2.4l7.6 79.6c2 5 39.2 17.1 88.2 17.1 49.1 0 86.3-12.2 88.2-17.1l10.9-94.6c-5.7 5.2-12.3 11.6-19.6 14.8-5.4 2.3-17.4 3.8-17.4-5.7 0-5.2 9.1-14.8 14.4-21.5 1.4-1.7 4.7-5.9 4.7-8.1 0-2.9-6-2.2-11.7 2.5-3.2 2.7-6.2 6.3-8.7 9.7-4.3 6-6.6 11.2-8.5 15.5-6.2 14.2-4.1 8.6-9.1 22-5 13.3-4.2 11.8-5.2 14-.9 1.9-2.2 3.5-4 4.5-1.9 1-4.5.9-6.1-.3-.9-.6-1.3-1.9-1.3-3.7 0-.9.1-1.8.3-2.7 1.5-6.1 7.8-18.1 15-34.3 1.6-3.7 1-2.6.8-2.3-6.2 6-10.9 8.9-14.4 10.5-5.8 2.6-13 2.6-14.5-4.1-.1-.4-.1-.8-.2-1.2-11.8 9.2-24.3 11.7-20-8.1-4.6 8.2-12.6 14.9-22.4 14.9-4.1 0-7.1-1.4-8.6-5.1-2.3-5.5 1.3-14.9 4.6-23.8 1.7-4.5 4-9.9 7.1-16.2 1.6-3.4 4.2-5.4 7.6-4.5.6.2 1.1.4 1.6.7 2.6 1.8 1.6 4.5.3 7.2-3.8 7.5-7.1 13-9.3 20.8-.9 3.3-2 9 1.5 9 2.4 0 4.7-.8 6.9-2.4 4.6-3.4 8.3-8.5 11.1-13.5 2-3.6 4.4-8.3 5.6-12.3.5-1.7 1.1-3.3 1.8-4.8 1.1-2.5 2.6-5.1 5.2-5.1 1.3 0 2.4.5 3.2 1.5 1.7 2.2 1.3 4.5.4 6.9-2 5.6-4.7 10.6-6.9 16.7-1.3 3.5-2.7 8-2.7 11.7 0 3.4 3.7 2.6 6.8 1.2 2.4-1.1 4.8-2.8 6.8-4.5 1.2-4.9.9-3.8 26.4-68.2 1.3-3.3 3.7-4.7 6.1-4.7 1.2 0 2.2.4 3.2 1.1 1.7 1.3 1.7 4.1 1 6.2-.7 1.9-.6 1.3-4.5 10.5-5.2 12.1-8.6 20.8-13.2 31.9-1.9 4.6-7.7 18.9-8.7 22.3-.6 2.2-1.3 5.8 1 5.8 5.4 0 19.3-13.1 23.1-17 .2-.3.5-.4.9-.6.6-1.9 1.2-3.7 1.7-5.5 1.4-3.8 2.7-8.2 5.3-11.3.8-1 1.7-1.6 2.7-1.6 2.8 0 4.2 1.2 4.2 4 0 1.1-.7 5.1-1.1 6.2 1.4-1.5 2.9-3 4.5-4.5 15-13.9 25.7-6.8 25.7.2 0 7.4-8.9 17.7-13.8 23.4-1.6 1.9-4.9 5.4-5 6.4 0 1.3.9 1.8 2.2 1.8 2 0 6.4-3.5 8-4.7 5-3.9 11.8-9.9 16.6-14.1l14.8-136.8c-30.5 17.1-197.6 17.2-228.3.2zm229.7-8.5c0 21-231.2 21-231.2 0 0-8.8 51.8-15.9 115.6-15.9 9 0 17.8.1 26.3.4l12.6-48.7L228.1.6c1.4-1.4 5.8-.2 9.9 3.5s6.6 7.9 5.3 9.3l-.1.1L185.9 74l-10 40.7c39.9 2.6 67.6 8.1 67.6 14.6zm-69.4 4.6c0-.8-.9-1.5-2.5-2.1l-.2.8c0 1.3-5 2.4-11.1 2.4s-11.1-1.1-11.1-2.4c0-.1 0-.2.1-.3l.2-.7c-1.8.6-3 1.4-3 2.3 0 2.1 6.2 3.7 13.7 3.7 7.7.1 13.9-1.6 13.9-3.7z"],
	"hacker-news": [448, 512, [], "f1d4", "M0 32v448h448V32H0zm21.2 197.2H21c.1-.1.2-.3.3-.4 0 .1 0 .3-.1.4zm218 53.9V384h-31.4V281.3L128 128h37.3c52.5 98.3 49.2 101.2 59.3 125.6 12.3-27 5.8-24.4 60.6-125.6H320l-80.8 155.1z"],
	"hacker-news-square": [448, 512, [], "f3af", "M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM21.2 229.2H21c.1-.1.2-.3.3-.4 0 .1 0 .3-.1.4zm218 53.9V384h-31.4V281.3L128 128h37.3c52.5 98.3 49.2 101.2 59.3 125.6 12.3-27 5.8-24.4 60.6-125.6H320l-80.8 155.1z"],
	"hackerrank": [512, 512, [], "f5f7", "M477.5 128C463 103.05 285.13 0 256.16 0S49.25 102.79 34.84 128s-14.49 230.8 0 256 192.38 128 221.32 128S463 409.08 477.49 384s14.51-231 .01-256zM316.13 414.22c-4 0-40.91-35.77-38-38.69.87-.87 6.26-1.48 17.55-1.83 0-26.23.59-68.59.94-86.32 0-2-.44-3.43-.44-5.85h-79.93c0 7.1-.46 36.2 1.37 72.88.23 4.54-1.58 6-5.74 5.94-10.13 0-20.27-.11-30.41-.08-4.1 0-5.87-1.53-5.74-6.11.92-33.44 3-84-.15-212.67v-3.17c-9.67-.35-16.38-1-17.26-1.84-2.92-2.92 34.54-38.69 38.49-38.69s41.17 35.78 38.27 38.69c-.87.87-7.9 1.49-16.77 1.84v3.16c-2.42 25.75-2 79.59-2.63 105.39h80.26c0-4.55.39-34.74-1.2-83.64-.1-3.39.95-5.17 4.21-5.2 11.07-.08 22.15-.13 33.23-.06 3.46 0 4.57 1.72 4.5 5.38C333 354.64 336 341.29 336 373.69c8.87.35 16.82 1 17.69 1.84 2.88 2.91-33.62 38.69-37.58 38.69z"],
	"hips": [640, 512, [], "f452", "M251.6 157.6c0-1.9-.9-2.8-2.8-2.8h-40.9c-1.6 0-2.7 1.4-2.7 2.8v201.8c0 1.4 1.1 2.8 2.7 2.8h40.9c1.9 0 2.8-.9 2.8-2.8zM156.5 168c-16.1-11.8-36.3-17.9-60.3-18-18.1-.1-34.6 3.7-49.8 11.4V80.2c0-1.8-.9-2.7-2.8-2.7H2.7c-1.8 0-2.7.9-2.7 2.7v279.2c0 1.9.9 2.8 2.7 2.8h41c1.9 0 2.8-.9 2.8-2.8V223.3c0-.8-2.8-27 45.8-27 48.5 0 45.8 26.1 45.8 27v122.6c0 9 7.3 16.3 16.4 16.3h27.3c1.8 0 2.7-.9 2.7-2.8V223.3c0-23.4-9.3-41.8-28-55.3zm478.4 110.1c-6.8-15.7-18.4-27-34.9-34.1l-57.6-25.3c-8.6-3.6-9.2-11.2-2.6-16.1 7.4-5.5 44.3-13.9 84 6.8 1.7 1 4-.3 4-2.4v-44.7c0-1.3-.6-2.1-1.9-2.6-17.7-6.6-36.1-9.9-55.1-9.9-26.5 0-45.3 5.8-58.5 15.4-.5.4-28.4 20-22.7 53.7 3.4 19.6 15.8 34.2 37.2 43.6l53.6 23.5c11.6 5.1 15.2 13.3 12.2 21.2-3.7 9.1-13.2 13.6-36.5 13.6-24.3 0-44.7-8.9-58.4-19.1-2.1-1.4-4.4.2-4.4 2.3v34.4c0 10.4 4.9 17.3 14.6 20.7 15.6 5.5 31.6 8.2 48.2 8.2 12.7 0 25.8-1.2 36.3-4.3.7-.3 36-8.9 45.6-45.8 3.5-13.5 2.4-26.5-3.1-39.1zM376.2 149.8c-31.7 0-104.2 20.1-104.2 103.5v183.5c0 .8.6 2.7 2.7 2.7h40.9c1.9 0 2.8-.9 2.8-2.7V348c16.5 12.7 35.8 19.1 57.7 19.1 60.5 0 108.7-48.5 108.7-108.7.1-60.3-48.2-108.6-108.6-108.6zm0 170.9c-17.2 0-31.9-6.1-44-18.2-12.2-12.2-18.2-26.8-18.2-44 0-34.5 27.6-62.2 62.2-62.2 34.5 0 62.2 27.6 62.2 62.2.1 34.3-27.3 62.2-62.2 62.2zM228.3 72.5c-15.9 0-28.8 12.9-28.9 28.9 0 15.6 12.7 28.9 28.9 28.9s28.9-13.1 28.9-28.9c0-16.2-13-28.9-28.9-28.9z"],
	"hire-a-helper": [512, 512, [], "f3b0", "M443.1 0H71.9C67.9 37.3 37.4 67.8 0 71.7v371.5c37.4 4.9 66 32.4 71.9 68.8h372.2c3-36.4 32.5-65.8 67.9-69.8V71.7c-36.4-5.9-65-35.3-68.9-71.7zm-37 404.9c-36.3 0-18.8-2-55.1-2-35.8 0-21 2-56.1 2-5.9 0-4.9-8.2 0-9.8 22.8-7.6 22.9-10.2 24.6-12.8 10.4-15.6 5.9-83 5.9-113 0-5.3-6.4-12.8-13.8-12.8H200.4c-7.4 0-13.8 7.5-13.8 12.8 0 30-4.5 97.4 5.9 113 1.7 2.5 1.8 5.2 24.6 12.8 4.9 1.6 6 9.8 0 9.8-35.1 0-20.3-2-56.1-2-36.3 0-18.8 2-55.1 2-7.9 0-5.8-10.8 0-10.8 10.2-3.4 13.5-3.5 21.7-13.8 7.7-12.9 7.9-44.4 7.9-127.8V151.3c0-22.2-12.2-28.3-28.6-32.4-8.8-2.2-4-11.8 1-11.8 36.5 0 20.6 2 57.1 2 32.7 0 16.5-2 49.2-2 3.3 0 8.5 8.3 1 10.8-4.9 1.6-27.6 3.7-27.6 39.3 0 45.6-.2 55.8 1 68.8 0 1.3 2.3 12.8 12.8 12.8h109.2c10.5 0 12.8-11.5 12.8-12.8 1.2-13 1-23.2 1-68.8 0-35.6-22.7-37.7-27.6-39.3-7.5-2.5-2.3-10.8 1-10.8 32.7 0 16.5 2 49.2 2 36.5 0 20.6-2 57.1-2 4.9 0 9.9 9.6 1 11.8-16.4 4.1-28.6 10.3-28.6 32.4v101.2c0 83.4.1 114.9 7.9 127.8 8.2 10.2 11.4 10.4 21.7 13.8 5.8 0 7.8 10.8 0 10.8z"],
	"hive": [512, 512, [], "e07f", "M260.353,254.878,131.538,33.1a2.208,2.208,0,0,0-3.829.009L.3,254.887A2.234,2.234,0,0,0,.3,257.122L129.116,478.9a2.208,2.208,0,0,0,3.83-.009L260.358,257.113A2.239,2.239,0,0,0,260.353,254.878Zm39.078-25.713a2.19,2.19,0,0,0,1.9,1.111h66.509a2.226,2.226,0,0,0,1.9-3.341L259.115,33.111a2.187,2.187,0,0,0-1.9-1.111H190.707a2.226,2.226,0,0,0-1.9,3.341ZM511.7,254.886,384.9,33.112A2.2,2.2,0,0,0,382.99,32h-66.6a2.226,2.226,0,0,0-1.906,3.34L440.652,256,314.481,476.66a2.226,2.226,0,0,0,1.906,3.34h66.6a2.2,2.2,0,0,0,1.906-1.112L511.7,257.114A2.243,2.243,0,0,0,511.7,254.886ZM366.016,284.917H299.508a2.187,2.187,0,0,0-1.9,1.111l-108.8,190.631a2.226,2.226,0,0,0,1.9,3.341h66.509a2.187,2.187,0,0,0,1.9-1.111l108.8-190.631A2.226,2.226,0,0,0,366.016,284.917Z"],
	"hooli": [640, 512, [], "f427", "M144.5 352l38.3.8c-13.2-4.6-26-10.2-38.3-16.8zm57.7-5.3v5.3l-19.4.8c36.5 12.5 69.9 14.2 94.7 7.2-19.9.2-45.8-2.6-75.3-13.3zm408.9-115.2c15.9 0 28.9-12.9 28.9-28.9s-12.9-24.5-28.9-24.5c-15.9 0-28.9 8.6-28.9 24.5s12.9 28.9 28.9 28.9zm-29 120.5H640V241.5h-57.9zm-73.7 0h57.9V156.7L508.4 184zm-31-119.4c-18.2-18.2-50.4-17.1-50.4-17.1s-32.3-1.1-50.4 17.1c-18.2 18.2-16.8 33.9-16.8 52.6s-1.4 34.3 16.8 52.5 50.4 17.1 50.4 17.1 32.3 1.1 50.4-17.1c18.2-18.2 16.8-33.8 16.8-52.5-.1-18.8 1.3-34.5-16.8-52.6zm-39.8 71.9c0 3.6-1.8 12.5-10.7 12.5s-10.7-8.9-10.7-12.5v-40.4c0-8.7 7.3-10.9 10.7-10.9s10.7 2.1 10.7 10.9zm-106.2-71.9c-18.2-18.2-50.4-17.1-50.4-17.1s-32.2-1.1-50.4 17.1c-1.9 1.9-3.7 3.9-5.3 6-38.2-29.6-72.5-46.5-102.1-61.1v-20.7l-22.5 10.6c-54.4-22.1-89-18.2-97.3.1 0 0-24.9 32.8 61.8 110.8V352h57.9v-28.6c-6.5-4.2-13-8.7-19.4-13.6-14.8-11.2-27.4-21.6-38.4-31.4v-31c13.1 14.7 30.5 31.4 53.4 50.3l4.5 3.6v-29.8c0-6.9 1.7-18.2 10.8-18.2s10.6 6.9 10.6 15V317c18 12.2 37.3 22.1 57.7 29.6v-93.9c0-18.7-13.4-37.4-40.6-37.4-15.8-.1-30.5 8.2-38.5 21.9v-54.3c41.9 20.9 83.9 46.5 99.9 58.3-10.2 14.6-9.3 28.1-9.3 43.7 0 18.7-1.4 34.3 16.8 52.5s50.4 17.1 50.4 17.1 32.3 1.1 50.4-17.1c18.2-18.2 16.7-33.8 16.7-52.5 0-18.5 1.5-34.2-16.7-52.3zM65.2 184v63.3c-48.7-54.5-38.9-76-35.2-79.1 13.5-11.4 37.5-8 64.4 2.1zm226.5 120.5c0 3.6-1.8 12.5-10.7 12.5s-10.7-8.9-10.7-12.5v-40.4c0-8.7 7.3-10.9 10.7-10.9s10.7 2.1 10.7 10.9z"],
	"hornbill": [512, 512, [], "f592", "M76.38 370.3a37.8 37.8 0 1 1-32.07-32.42c-78.28-111.35 52-190.53 52-190.53-5.86 43-8.24 91.16-8.24 91.16-67.31 41.49.93 64.06 39.81 72.87a140.38 140.38 0 0 0 131.66 91.94c1.92 0 3.77-.21 5.67-.28l.11 18.86c-99.22 1.39-158.7-29.14-188.94-51.6zm108-327.7A37.57 37.57 0 0 0 181 21.45a37.95 37.95 0 1 0-31.17 54.22c-22.55 29.91-53.83 89.57-52.42 190l21.84-.15c0-.9-.14-1.77-.14-2.68A140.42 140.42 0 0 1 207 132.71c8-37.71 30.7-114.3 73.8-44.29 0 0 48.14 2.38 91.18 8.24 0 0-77.84-128-187.59-54.06zm304.19 134.17a37.94 37.94 0 1 0-53.84-28.7C403 126.13 344.89 99 251.28 100.33l.14 22.5c2.7-.15 5.39-.41 8.14-.41a140.37 140.37 0 0 1 130.49 88.76c39.1 9 105.06 31.58 38.46 72.54 0 0-2.34 48.13-8.21 91.16 0 0 133.45-81.16 49-194.61a37.45 37.45 0 0 0 19.31-3.5zM374.06 436.24c21.43-32.46 46.42-89.69 45.14-179.66l-19.52.14c.08 2.06.3 4.07.3 6.15a140.34 140.34 0 0 1-91.39 131.45c-8.85 38.95-31.44 106.66-72.77 39.49 0 0-48.12-2.34-91.19-8.22 0 0 79.92 131.34 191.9 51a37.5 37.5 0 0 0 3.64 14 37.93 37.93 0 1 0 33.89-54.29z"],
	"hotjar": [448, 512, [], "f3b1", "M414.9 161.5C340.2 29 121.1 0 121.1 0S222.2 110.4 93 197.7C11.3 252.8-21 324.4 14 402.6c26.8 59.9 83.5 84.3 144.6 93.4-29.2-55.1-6.6-122.4-4.1-129.6 57.1 86.4 165 0 110.8-93.9 71 15.4 81.6 138.6 27.1 215.5 80.5-25.3 134.1-88.9 148.8-145.6 15.5-59.3 3.7-127.9-26.3-180.9z"],
	"houzz": [448, 512, [], "f27c", "M275.9 330.7H171.3V480H17V32h109.5v104.5l305.1 85.6V480H275.9z"],
	"html5": [384, 512, [], "f13b", "M0 32l34.9 395.8L191.5 480l157.6-52.2L384 32H0zm308.2 127.9H124.4l4.1 49.4h175.6l-13.6 148.4-97.9 27v.3h-1.1l-98.7-27.3-6-75.8h47.7L138 320l53.5 14.5 53.7-14.5 6-62.2H84.3L71.5 112.2h241.1l-4.4 47.7z"],
	"hubspot": [512, 512, [], "f3b2", "M267.4 211.6c-25.1 23.7-40.8 57.3-40.8 94.6 0 29.3 9.7 56.3 26 78L203.1 434c-4.4-1.6-9.1-2.5-14-2.5-10.8 0-20.9 4.2-28.5 11.8-7.6 7.6-11.8 17.8-11.8 28.6s4.2 20.9 11.8 28.5c7.6 7.6 17.8 11.6 28.5 11.6 10.8 0 20.9-3.9 28.6-11.6 7.6-7.6 11.8-17.8 11.8-28.5 0-4.2-.6-8.2-1.9-12.1l50-50.2c22 16.9 49.4 26.9 79.3 26.9 71.9 0 130-58.3 130-130.2 0-65.2-47.7-119.2-110.2-128.7V116c17.5-7.4 28.2-23.8 28.2-42.9 0-26.1-20.9-47.9-47-47.9S311.2 47 311.2 73.1c0 19.1 10.7 35.5 28.2 42.9v61.2c-15.2 2.1-29.6 6.7-42.7 13.6-27.6-20.9-117.5-85.7-168.9-124.8 1.2-4.4 2-9 2-13.8C129.8 23.4 106.3 0 77.4 0 48.6 0 25.2 23.4 25.2 52.2c0 28.9 23.4 52.3 52.2 52.3 9.8 0 18.9-2.9 26.8-7.6l163.2 114.7zm89.5 163.6c-38.1 0-69-30.9-69-69s30.9-69 69-69 69 30.9 69 69-30.9 69-69 69z"],
	"ideal": [576, 512, [], "e013", "M125.61,165.48a49.07,49.07,0,1,0,49.06,49.06A49.08,49.08,0,0,0,125.61,165.48ZM86.15,425.84h78.94V285.32H86.15Zm151.46-211.6c0-20-10-22.53-18.74-22.53H204.82V237.5h14.05C228.62,237.5,237.61,234.69,237.61,214.24Zm201.69,46V168.93h22.75V237.5h33.69C486.5,113.08,388.61,86.19,299.67,86.19H204.84V169h14c25.6,0,41.5,17.35,41.5,45.26,0,28.81-15.52,46-41.5,46h-14V425.88h94.83c144.61,0,194.94-67.16,196.72-165.64Zm-109.75,0H273.3V169h54.43v22.73H296v10.58h30V225H296V237.5h33.51Zm74.66,0-5.16-17.67H369.31l-5.18,17.67H340.47L368,168.92h32.35l27.53,91.34ZM299.65,32H32V480H299.65c161.85,0,251-79.73,251-224.52C550.62,172,518,32,299.65,32Zm0,426.92H53.07V53.07H299.65c142.1,0,229.9,64.61,229.9,202.41C529.55,389.57,448.55,458.92,299.65,458.92Zm83.86-264.85L376,219.88H392.4l-7.52-25.81Z"],
	"imdb": [448, 512, [], "f2d8", "M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM21.3 229.2H21c.1-.1.2-.3.3-.4zM97 319.8H64V192h33zm113.2 0h-28.7v-86.4l-11.6 86.4h-20.6l-12.2-84.5v84.5h-29V192h42.8c3.3 19.8 6 39.9 8.7 59.9l7.6-59.9h43zm11.4 0V192h24.6c17.6 0 44.7-1.6 49 20.9 1.7 7.6 1.4 16.3 1.4 24.4 0 88.5 11.1 82.6-75 82.5zm160.9-29.2c0 15.7-2.4 30.9-22.2 30.9-9 0-15.2-3-20.9-9.8l-1.9 8.1h-29.8V192h31.7v41.7c6-6.5 12-9.2 20.9-9.2 21.4 0 22.2 12.8 22.2 30.1zM265 229.9c0-9.7 1.6-16-10.3-16v83.7c12.2.3 10.3-8.7 10.3-18.4zm85.5 26.1c0-5.4 1.1-12.7-6.2-12.7-6 0-4.9 8.9-4.9 12.7 0 .6-1.1 39.6 1.1 44.7.8 1.6 2.2 2.4 3.8 2.4 7.8 0 6.2-9 6.2-14.4z"],
	"innosoft": [448, 512, [], "e080", "M422.559,159.71a27.379,27.379,0,0,0-13.866-23.337,26.42,26.42,0,0,0-26.211.133L73.943,314.647V176.261a11.955,11.955,0,0,1,6.047-10.34L218.066,86.208a12.153,12.153,0,0,1,11.922.025l32.656,18.853L112.581,191.723v56L359.642,105.086,241.129,36.679c-10.992-6.129-22.3-6.255-33.8-.27l-164.6,95.026c-10.634,6.12-16.771,16.39-17.29,29.124l0,191.5c.17,10.135,5.08,18.672,13.474,23.428a27.037,27.037,0,0,0,26.736-.045L374.057,197.376V335.657a11.976,11.976,0,0,1-5.92,10.368L230.025,425.77a12.175,12.175,0,0,1-11.937.062l-32.723-18.9,150.051-86.627v-56L88.367,406.932l118.794,68.583a33.88,33.88,0,0,0,34.25-.327l164.527-94.995c10.746-6.631,16.649-17.118,16.624-29.528Z"],
	"instagram": [448, 512, [], "f16d", "M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z"],
	"instagram-square": [448, 512, [], "e055", "M224,202.66A53.34,53.34,0,1,0,277.36,256,53.38,53.38,0,0,0,224,202.66Zm124.71-41a54,54,0,0,0-30.41-30.41c-21-8.29-71-6.43-94.3-6.43s-73.25-1.93-94.31,6.43a54,54,0,0,0-30.41,30.41c-8.28,21-6.43,71.05-6.43,94.33S91,329.26,99.32,350.33a54,54,0,0,0,30.41,30.41c21,8.29,71,6.43,94.31,6.43s73.24,1.93,94.3-6.43a54,54,0,0,0,30.41-30.41c8.35-21,6.43-71.05,6.43-94.33S357.1,182.74,348.75,161.67ZM224,338a82,82,0,1,1,82-82A81.9,81.9,0,0,1,224,338Zm85.38-148.3a19.14,19.14,0,1,1,19.13-19.14A19.1,19.1,0,0,1,309.42,189.74ZM400,32H48A48,48,0,0,0,0,80V432a48,48,0,0,0,48,48H400a48,48,0,0,0,48-48V80A48,48,0,0,0,400,32ZM382.88,322c-1.29,25.63-7.14,48.34-25.85,67s-41.4,24.63-67,25.85c-26.41,1.49-105.59,1.49-132,0-25.63-1.29-48.26-7.15-67-25.85s-24.63-41.42-25.85-67c-1.49-26.42-1.49-105.61,0-132,1.29-25.63,7.07-48.34,25.85-67s41.47-24.56,67-25.78c26.41-1.49,105.59-1.49,132,0,25.63,1.29,48.33,7.15,67,25.85s24.63,41.42,25.85,67.05C384.37,216.44,384.37,295.56,382.88,322Z"],
	"instalod": [512, 512, [], "e081", "M153.384,480H387.113L502.554,275.765,204.229,333.211ZM504.726,240.078,387.113,32H155.669L360.23,267.9ZM124.386,48.809,7.274,256,123.236,461.154,225.627,165.561Z"],
	"intercom": [448, 512, [], "f7af", "M392 32H56C25.1 32 0 57.1 0 88v336c0 30.9 25.1 56 56 56h336c30.9 0 56-25.1 56-56V88c0-30.9-25.1-56-56-56zm-108.3 82.1c0-19.8 29.9-19.8 29.9 0v199.5c0 19.8-29.9 19.8-29.9 0V114.1zm-74.6-7.5c0-19.8 29.9-19.8 29.9 0v216.5c0 19.8-29.9 19.8-29.9 0V106.6zm-74.7 7.5c0-19.8 29.9-19.8 29.9 0v199.5c0 19.8-29.9 19.8-29.9 0V114.1zM59.7 144c0-19.8 29.9-19.8 29.9 0v134.3c0 19.8-29.9 19.8-29.9 0V144zm323.4 227.8c-72.8 63-241.7 65.4-318.1 0-15-12.8 4.4-35.5 19.4-22.7 65.9 55.3 216.1 53.9 279.3 0 14.9-12.9 34.3 9.8 19.4 22.7zm5.2-93.5c0 19.8-29.9 19.8-29.9 0V144c0-19.8 29.9-19.8 29.9 0v134.3z"],
	"internet-explorer": [512, 512, [], "f26b", "M483.049 159.706c10.855-24.575 21.424-60.438 21.424-87.871 0-72.722-79.641-98.371-209.673-38.577-107.632-7.181-211.221 73.67-237.098 186.457 30.852-34.862 78.271-82.298 121.977-101.158C125.404 166.85 79.128 228.002 43.992 291.725 23.246 329.651 0 390.94 0 436.747c0 98.575 92.854 86.5 180.251 42.006 31.423 15.43 66.559 15.573 101.695 15.573 97.124 0 184.249-54.294 216.814-146.022H377.927c-52.509 88.593-196.819 52.996-196.819-47.436H509.9c6.407-43.581-1.655-95.715-26.851-141.162zM64.559 346.877c17.711 51.15 53.703 95.871 100.266 123.304-88.741 48.94-173.267 29.096-100.266-123.304zm115.977-108.873c2-55.151 50.276-94.871 103.98-94.871 53.418 0 101.981 39.72 103.981 94.871H180.536zm184.536-187.6c21.425-10.287 48.563-22.003 72.558-22.003 31.422 0 54.274 21.717 54.274 53.722 0 20.003-7.427 49.007-14.569 67.867-26.28-42.292-65.986-81.584-112.263-99.586z"],
	"invision": [448, 512, [], "f7b0", "M407.4 32H40.6C18.2 32 0 50.2 0 72.6v366.8C0 461.8 18.2 480 40.6 480h366.8c22.4 0 40.6-18.2 40.6-40.6V72.6c0-22.4-18.2-40.6-40.6-40.6zM176.1 145.6c.4 23.4-22.4 27.3-26.6 27.4-14.9 0-27.1-12-27.1-27 .1-35.2 53.1-35.5 53.7-.4zM332.8 377c-65.6 0-34.1-74-25-106.6 14.1-46.4-45.2-59-59.9.7l-25.8 103.3H177l8.1-32.5c-31.5 51.8-94.6 44.4-94.6-4.3.1-14.3.9-14 23-104.1H81.7l9.7-35.6h76.4c-33.6 133.7-32.6 126.9-32.9 138.2 0 20.9 40.9 13.5 57.4-23.2l19.8-79.4h-32.3l9.7-35.6h68.8l-8.9 40.5c40.5-75.5 127.9-47.8 101.8 38-14.2 51.1-14.6 50.7-14.9 58.8 0 15.5 17.5 22.6 31.8-16.9L386 325c-10.5 36.7-29.4 52-53.2 52z"],
	"ioxhost": [640, 512, [], "f208", "M616 160h-67.3C511.2 70.7 422.9 8 320 8 183 8 72 119 72 256c0 16.4 1.6 32.5 4.7 48H24c-13.3 0-24 10.8-24 24 0 13.3 10.7 24 24 24h67.3c37.5 89.3 125.8 152 228.7 152 137 0 248-111 248-248 0-16.4-1.6-32.5-4.7-48H616c13.3 0 24-10.8 24-24 0-13.3-10.7-24-24-24zm-96 96c0 110.5-89.5 200-200 200-75.7 0-141.6-42-175.5-104H424c13.3 0 24-10.8 24-24 0-13.3-10.7-24-24-24H125.8c-3.8-15.4-5.8-31.4-5.8-48 0-110.5 89.5-200 200-200 75.7 0 141.6 42 175.5 104H216c-13.3 0-24 10.8-24 24 0 13.3 10.7 24 24 24h298.2c3.8 15.4 5.8 31.4 5.8 48zm-304-24h208c13.3 0 24 10.7 24 24 0 13.2-10.7 24-24 24H216c-13.3 0-24-10.7-24-24 0-13.2 10.7-24 24-24z"],
	"itch-io": [512, 512, [], "f83a", "M71.92 34.77C50.2 47.67 7.4 96.84 7 109.73v21.34c0 27.06 25.29 50.84 48.25 50.84 27.57 0 50.54-22.85 50.54-50 0 27.12 22.18 50 49.76 50s49-22.85 49-50c0 27.12 23.59 50 51.16 50h.5c27.57 0 51.16-22.85 51.16-50 0 27.12 21.47 50 49 50s49.76-22.85 49.76-50c0 27.12 23 50 50.54 50 23 0 48.25-23.78 48.25-50.84v-21.34c-.4-12.9-43.2-62.07-64.92-75C372.56 32.4 325.76 32 256 32S91.14 33.1 71.92 34.77zm132.32 134.39c-22 38.4-77.9 38.71-99.85.25-13.17 23.14-43.17 32.07-56 27.66-3.87 40.15-13.67 237.13 17.73 269.15 80 18.67 302.08 18.12 379.76 0 31.65-32.27 21.32-232 17.75-269.15-12.92 4.44-42.88-4.6-56-27.66-22 38.52-77.85 38.1-99.85-.24-7.1 12.49-23.05 28.94-51.76 28.94a57.54 57.54 0 0 1-51.75-28.94zm-41.58 53.77c16.47 0 31.09 0 49.22 19.78a436.91 436.91 0 0 1 88.18 0C318.22 223 332.85 223 349.31 223c52.33 0 65.22 77.53 83.87 144.45 17.26 62.15-5.52 63.67-33.95 63.73-42.15-1.57-65.49-32.18-65.49-62.79-39.25 6.43-101.93 8.79-155.55 0 0 30.61-23.34 61.22-65.49 62.79-28.42-.06-51.2-1.58-33.94-63.73 18.67-67 31.56-144.45 83.88-144.45zM256 270.79s-44.38 40.77-52.35 55.21l29-1.17v25.32c0 1.55 21.34.16 23.33.16 11.65.54 23.31 1 23.31-.16v-25.28l29 1.17c-8-14.48-52.35-55.24-52.35-55.24z"],
	"itunes": [448, 512, [], "f3b4", "M223.6 80.3C129 80.3 52.5 157 52.5 251.5S129 422.8 223.6 422.8s171.2-76.7 171.2-171.2c0-94.6-76.7-171.3-171.2-171.3zm79.4 240c-3.2 13.6-13.5 21.2-27.3 23.8-12.1 2.2-22.2 2.8-31.9-5-11.8-10-12-26.4-1.4-36.8 8.4-8 20.3-9.6 38-12.8 3-.5 5.6-1.2 7.7-3.7 3.2-3.6 2.2-2 2.2-80.8 0-5.6-2.7-7.1-8.4-6.1-4 .7-91.9 17.1-91.9 17.1-5 1.1-6.7 2.6-6.7 8.3 0 116.1.5 110.8-1.2 118.5-2.1 9-7.6 15.8-14.9 19.6-8.3 4.6-23.4 6.6-31.4 5.2-21.4-4-28.9-28.7-14.4-42.9 8.4-8 20.3-9.6 38-12.8 3-.5 5.6-1.2 7.7-3.7 5-5.7.9-127 2.6-133.7.4-2.6 1.5-4.8 3.5-6.4 2.1-1.7 5.8-2.7 6.7-2.7 101-19 113.3-21.4 115.1-21.4 5.7-.4 9 3 9 8.7-.1 170.6.4 161.4-1 167.6zM345.2 32H102.8C45.9 32 0 77.9 0 134.8v242.4C0 434.1 45.9 480 102.8 480h242.4c57 0 102.8-45.9 102.8-102.8V134.8C448 77.9 402.1 32 345.2 32zM223.6 444c-106.3 0-192.5-86.2-192.5-192.5S117.3 59 223.6 59s192.5 86.2 192.5 192.5S329.9 444 223.6 444z"],
	"itunes-note": [384, 512, [], "f3b5", "M381.9 388.2c-6.4 27.4-27.2 42.8-55.1 48-24.5 4.5-44.9 5.6-64.5-10.2-23.9-20.1-24.2-53.4-2.7-74.4 17-16.2 40.9-19.5 76.8-25.8 6-1.1 11.2-2.5 15.6-7.4 6.4-7.2 4.4-4.1 4.4-163.2 0-11.2-5.5-14.3-17-12.3-8.2 1.4-185.7 34.6-185.7 34.6-10.2 2.2-13.4 5.2-13.4 16.7 0 234.7 1.1 223.9-2.5 239.5-4.2 18.2-15.4 31.9-30.2 39.5-16.8 9.3-47.2 13.4-63.4 10.4-43.2-8.1-58.4-58-29.1-86.6 17-16.2 40.9-19.5 76.8-25.8 6-1.1 11.2-2.5 15.6-7.4 10.1-11.5 1.8-256.6 5.2-270.2.8-5.2 3-9.6 7.1-12.9 4.2-3.5 11.8-5.5 13.4-5.5 204-38.2 228.9-43.1 232.4-43.1 11.5-.8 18.1 6 18.1 17.6.2 344.5 1.1 326-1.8 338.5z"],
	"java": [384, 512, [], "f4e4", "M277.74 312.9c9.8-6.7 23.4-12.5 23.4-12.5s-38.7 7-77.2 10.2c-47.1 3.9-97.7 4.7-123.1 1.3-60.1-8 33-30.1 33-30.1s-36.1-2.4-80.6 19c-52.5 25.4 130 37 224.5 12.1zm-85.4-32.1c-19-42.7-83.1-80.2 0-145.8C296 53.2 242.84 0 242.84 0c21.5 84.5-75.6 110.1-110.7 162.6-23.9 35.9 11.7 74.4 60.2 118.2zm114.6-176.2c.1 0-175.2 43.8-91.5 140.2 24.7 28.4-6.5 54-6.5 54s62.7-32.4 33.9-72.9c-26.9-37.8-47.5-56.6 64.1-121.3zm-6.1 270.5a12.19 12.19 0 0 1-2 2.6c128.3-33.7 81.1-118.9 19.8-97.3a17.33 17.33 0 0 0-8.2 6.3 70.45 70.45 0 0 1 11-3c31-6.5 75.5 41.5-20.6 91.4zM348 437.4s14.5 11.9-15.9 21.2c-57.9 17.5-240.8 22.8-291.6.7-18.3-7.9 16-19 26.8-21.3 11.2-2.4 17.7-2 17.7-2-20.3-14.3-131.3 28.1-56.4 40.2C232.84 509.4 401 461.3 348 437.4zM124.44 396c-78.7 22 47.9 67.4 148.1 24.5a185.89 185.89 0 0 1-28.2-13.8c-44.7 8.5-65.4 9.1-106 4.5-33.5-3.8-13.9-15.2-13.9-15.2zm179.8 97.2c-78.7 14.8-175.8 13.1-233.3 3.6 0-.1 11.8 9.7 72.4 13.6 92.2 5.9 233.8-3.3 237.1-46.9 0 0-6.4 16.5-76.2 29.7zM260.64 353c-59.2 11.4-93.5 11.1-136.8 6.6-33.5-3.5-11.6-19.7-11.6-19.7-86.8 28.8 48.2 61.4 169.5 25.9a60.37 60.37 0 0 1-21.1-12.8z"],
	"jedi-order": [448, 512, [], "f50e", "M398.5 373.6c95.9-122.1 17.2-233.1 17.2-233.1 45.4 85.8-41.4 170.5-41.4 170.5 105-171.5-60.5-271.5-60.5-271.5 96.9 72.7-10.1 190.7-10.1 190.7 85.8 158.4-68.6 230.1-68.6 230.1s-.4-16.9-2.2-85.7c4.3 4.5 34.5 36.2 34.5 36.2l-24.2-47.4 62.6-9.1-62.6-9.1 20.2-55.5-31.4 45.9c-2.2-87.7-7.8-305.1-7.9-306.9v-2.4 1-1 2.4c0 1-5.6 219-7.9 306.9l-31.4-45.9 20.2 55.5-62.6 9.1 62.6 9.1-24.2 47.4 34.5-36.2c-1.8 68.8-2.2 85.7-2.2 85.7s-154.4-71.7-68.6-230.1c0 0-107-118.1-10.1-190.7 0 0-165.5 99.9-60.5 271.5 0 0-86.8-84.8-41.4-170.5 0 0-78.7 111 17.2 233.1 0 0-26.2-16.1-49.4-77.7 0 0 16.9 183.3 222 185.7h4.1c205-2.4 222-185.7 222-185.7-23.6 61.5-49.9 77.7-49.9 77.7z"],
	"jenkins": [512, 512, [], "f3b6", "M487.1 425c-1.4-11.2-19-23.1-28.2-31.9-5.1-5-29-23.1-30.4-29.9-1.4-6.6 9.7-21.5 13.3-28.9 5.1-10.7 8.8-23.7 11.3-32.6 18.8-66.1 20.7-156.9-6.2-211.2-10.2-20.6-38.6-49-56.4-62.5-42-31.7-119.6-35.3-170.1-16.6-14.1 5.2-27.8 9.8-40.1 17.1-33.1 19.4-68.3 32.5-78.1 71.6-24.2 10.8-31.5 41.8-30.3 77.8.2 7 4.1 15.8 2.7 22.4-.7 3.3-5.2 7.6-6.1 9.8-11.6 27.7-2.3 64 11.1 83.7 8.1 11.9 21.5 22.4 39.2 25.2.7 10.6 3.3 19.7 8.2 30.4 3.1 6.8 14.7 19 10.4 27.7-2.2 4.4-21 13.8-27.3 17.6C89 407.2 73.7 415 54.2 429c-12.6 9-32.3 10.2-29.2 31.1 2.1 14.1 10.1 31.6 14.7 45.8.7 2 1.4 4.1 2.1 6h422c4.9-15.3 9.7-30.9 14.6-47.2 3.4-11.4 10.2-27.8 8.7-39.7zM205.9 33.7c1.8-.5 3.4.7 4.9 2.4-.2 5.2-5.4 5.1-8.9 6.8-5.4 6.7-13.4 9.8-20 17.2-6.8 7.5-14.4 27.7-23.4 30-4.5 1.1-9.7-.8-13.6-.5-10.4.7-17.7 6-28.3 7.5 13.6-29.9 56.1-54 89.3-63.4zm-104.8 93.6c13.5-14.9 32.1-24.1 54.8-25.9 11.7 29.7-8.4 65-.9 97.6 2.3 9.9 10.2 25.4-2.4 25.7.3-28.3-34.8-46.3-61.3-29.6-1.8-21.5-4.9-51.7 9.8-67.8zm36.7 200.2c-1-4.1-2.7-12.9-2.3-15.1 1.6-8.7 17.1-12.5 11-24.7-11.3-.1-13.8 10.2-24.1 11.3-26.7 2.6-45.6-35.4-44.4-58.4 1-19.5 17.6-38.2 40.1-35.8 16 1.8 21.4 19.2 24.5 34.7 9.2.5 22.5-.4 26.9-7.6-.6-17.5-8.8-31.6-8.2-47.7 1-30.3 17.5-57.6 4.8-87.4 13.6-30.9 53.5-55.3 83.1-70 36.6-18.3 94.9-3.7 129.3 15.8 19.7 11.1 34.4 32.7 48.3 50.7-19.5-5.8-36.1 4.2-33.1 20.3 16.3-14.9 44.2-.2 52.5 16.4 7.9 15.8 7.8 39.3 9 62.8 2.9 57-10.4 115.9-39.1 157.1-7.7 11-14.1 23-24.9 30.6-26 18.2-65.4 34.7-99.2 23.4-44.7-15-65-44.8-89.5-78.8.7 18.7 13.8 34.1 26.8 48.4 11.3 12.5 25 26.6 39.7 32.4-12.3-2.9-31.1-3.8-36.2 7.2-28.6-1.9-55.1-4.8-68.7-24.2-10.6-15.4-21.4-41.4-26.3-61.4zm222 124.1c4.1-3 11.1-2.9 17.4-3.6-5.4-2.7-13-3.7-19.3-2.2-.1-4.2-2-6.8-3.2-10.2 10.6-3.8 35.5-28.5 49.6-20.3 6.7 3.9 9.5 26.2 10.1 37 .4 9-.8 18-4.5 22.8-18.8-.6-35.8-2.8-50.7-7 .9-6.1-1-12.1.6-16.5zm-17.2-20c-16.8.8-26-1.2-38.3-10.8.2-.8 1.4-.5 1.5-1.4 18 8 40.8-3.3 59-4.9-7.9 5.1-14.6 11.6-22.2 17.1zm-12.1 33.2c-1.6-9.4-3.5-12-2.8-20.2 25-16.6 29.7 28.6 2.8 20.2zM226 438.6c-11.6-.7-48.1-14-38.5-23.7 9.4 6.5 27.5 4.9 41.3 7.3.8 4.4-2.8 10.2-2.8 16.4zM57.7 497.1c-4.3-12.7-9.2-25.1-14.8-36.9 30.8-23.8 65.3-48.9 102.2-63.5 2.8-1.1 23.2 25.4 26.2 27.6 16.5 11.7 37 21 56.2 30.2 1.2 8.8 3.9 20.2 8.7 35.5.7 2.3 1.4 4.7 2.2 7.2H57.7zm240.6 5.7h-.8c.3-.2.5-.4.8-.5v.5zm7.5-5.7c2.1-1.4 4.3-2.8 6.4-4.3 1.1 1.4 2.2 2.8 3.2 4.3h-9.6zm15.1-24.7c-10.8 7.3-20.6 18.3-33.3 25.2-6 3.3-27 11.7-33.4 10.2-3.6-.8-3.9-5.3-5.4-9.5-3.1-9-10.1-23.4-10.8-37-.8-17.2-2.5-46 16-42.4 14.9 2.9 32.3 9.7 43.9 16.1 7.1 3.9 11.1 8.6 21.9 9.5-.1 1.4-.1 2.8-.2 4.3-5.9 3.9-15.3 3.8-21.8 7.1 9.5.4 17 2.7 23.5 5.9-.1 3.4-.3 7-.4 10.6zm53.4 24.7h-14c-.1-3.2-2.8-5.8-6.1-5.8s-5.9 2.6-6.1 5.8h-17.4c-2.8-4.4-5.7-8.6-8.9-12.5 2.1-2.2 4-4.7 6-6.9 9 3.7 14.8-4.9 21.7-4.2 7.9.8 14.2 11.7 25.4 11l-.6 12.6zm8.7 0c.2-4 .4-7.8.6-11.5 15.6-7.3 29 1.3 35.7 11.5H383zm83.4-37c-2.3 11.2-5.8 24-9.9 37.1-.2-.1-.4-.1-.6-.1H428c.6-1.1 1.2-2.2 1.9-3.3-2.6-6.1-9-8.7-10.9-15.5 12.1-22.7 6.5-93.4-24.2-78.5 4.3-6.3 15.6-11.5 20.8-19.3 13 10.4 20.8 20.3 33.2 31.4 6.8 6 20 13.3 21.4 23.1.8 5.5-2.6 18.9-3.8 25.1zM222.2 130.5c5.4-14.9 27.2-34.7 45-32 7.7 1.2 18 8.2 12.2 17.7-30.2-7-45.2 12.6-54.4 33.1-8.1-2-4.9-13.1-2.8-18.8zm184.1 63.1c8.2-3.6 22.4-.7 29.6-5.3-4.2-11.5-10.3-21.4-9.3-37.7.5 0 1 0 1.4.1 6.8 14.2 12.7 29.2 21.4 41.7-5.7 13.5-43.6 25.4-43.1 1.2zm20.4-43zm-117.2 45.7c-6.8-10.9-19-32.5-14.5-45.3 6.5 11.9 8.6 24.4 17.8 33.3 4.1 4 12.2 9 8.2 20.2-.9 2.7-7.8 8.6-11.7 9.7-14.4 4.3-47.9.9-36.6-17.1 11.9.7 27.9 7.8 36.8-.8zm27.3 70c3.8 6.6 1.4 18.7 12.1 20.6 20.2 3.4 43.6-12.3 58.1-17.8 9-15.2-.8-20.7-8.9-30.5-16.6-20-38.8-44.8-38-74.7 6.7-4.9 7.3 7.4 8.2 9.7 8.7 20.3 30.4 46.2 46.3 63.5 3.9 4.3 10.3 8.4 11 11.2 2.1 8.2-5.4 18-4.5 23.5-21.7 13.9-45.8 29.1-81.4 25.6-7.4-6.7-10.3-21.4-2.9-31.1zm-201.3-9.2c-6.8-3.9-8.4-21-16.4-21.4-11.4-.7-9.3 22.2-9.3 35.5-7.8-7.1-9.2-29.1-3.5-40.3-6.6-3.2-9.5 3.6-13.1 5.9 4.7-34.1 49.8-15.8 42.3 20.3zm299.6 28.8c-10.1 19.2-24.4 40.4-54 41-.6-6.2-1.1-15.6 0-19.4 22.7-2.2 36.6-13.7 54-21.6zm-141.9 12.4c18.9 9.9 53.6 11 79.3 10.2 1.4 5.6 1.3 12.6 1.4 19.4-33 1.8-72-6.4-80.7-29.6zm92.2 46.7c-1.7 4.3-5.3 9.3-9.8 11.1-12.1 4.9-45.6 8.7-62.4-.3-10.7-5.7-17.5-18.5-23.4-26-2.8-3.6-16.9-12.9-.2-12.9 13.1 32.7 58 29 95.8 28.1z"],
	"jira": [496, 512, [], "f7b1", "M490 241.7C417.1 169 320.6 71.8 248.5 0 83 164.9 6 241.7 6 241.7c-7.9 7.9-7.9 20.7 0 28.7C138.8 402.7 67.8 331.9 248.5 512c379.4-378 15.7-16.7 241.5-241.7 8-7.9 8-20.7 0-28.6zm-241.5 90l-76-75.7 76-75.7 76 75.7-76 75.7z"],
	"joget": [496, 512, [], "f3b7", "M378.1 45C337.6 19.9 292.6 8 248.2 8 165 8 83.8 49.9 36.9 125.9c-71.9 116.6-35.6 269.3 81 341.2s269.3 35.6 341.2-80.9c71.9-116.6 35.6-269.4-81-341.2zm51.8 323.2c-40.4 65.5-110.4 101.5-182 101.5-6.8 0-13.6-.4-20.4-1-9-13.6-19.9-33.3-23.7-42.4-5.7-13.7-27.2-45.6 31.2-67.1 51.7-19.1 176.7-16.5 208.8-17.6-4 9-8.6 17.9-13.9 26.6zm-200.8-86.3c-55.5-1.4-81.7-20.8-58.5-48.2s51.1-40.7 68.9-51.2c17.9-10.5 27.3-33.7-23.6-29.7C87.3 161.5 48.6 252.1 37.6 293c-8.8-49.7-.1-102.7 28.5-149.1C128 43.4 259.6 12.2 360.1 74.1c74.8 46.1 111.2 130.9 99.3 212.7-24.9-.5-179.3-3.6-230.3-4.9zm183.8-54.8c-22.7-6-57 11.3-86.7 27.2-29.7 15.8-31.1 8.2-31.1 8.2s40.2-28.1 50.7-34.5 31.9-14 13.4-24.6c-3.2-1.8-6.7-2.7-10.4-2.7-17.8 0-41.5 18.7-67.5 35.6-31.5 20.5-65.3 31.3-65.3 31.3l169.5-1.6 46.5-23.4s3.6-9.5-19.1-15.5z"],
	"joomla": [448, 512, [], "f1aa", "M.6 92.1C.6 58.8 27.4 32 60.4 32c30 0 54.5 21.9 59.2 50.2 32.6-7.6 67.1.6 96.5 30l-44.3 44.3c-20.5-20.5-42.6-16.3-55.4-3.5-14.3 14.3-14.3 37.9 0 52.2l99.5 99.5-44 44.3c-87.7-87.2-49.7-49.7-99.8-99.7-26.8-26.5-35-64.8-24.8-98.9C20.4 144.6.6 120.7.6 92.1zm129.5 116.4l44.3 44.3c10-10 89.7-89.7 99.7-99.8 14.3-14.3 37.6-14.3 51.9 0 12.8 12.8 17 35-3.5 55.4l44 44.3c31.2-31.2 38.5-67.6 28.9-101.2 29.2-4.1 51.9-29.2 51.9-59.5 0-33.2-26.8-60.1-59.8-60.1-30.3 0-55.4 22.5-59.5 51.6-33.8-9.9-71.7-1.5-98.3 25.1-18.3 19.1-71.1 71.5-99.6 99.9zm266.3 152.2c8.2-32.7-.9-68.5-26.3-93.9-11.8-12.2 5 4.7-99.5-99.7l-44.3 44.3 99.7 99.7c14.3 14.3 14.3 37.6 0 51.9-12.8 12.8-35 17-55.4-3.5l-44 44.3c27.6 30.2 68 38.8 102.7 28 5.5 27.4 29.7 48.1 58.9 48.1 33 0 59.8-26.8 59.8-60.1 0-30.2-22.5-55-51.6-59.1zm-84.3-53.1l-44-44.3c-87 86.4-50.4 50.4-99.7 99.8-14.3 14.3-37.6 14.3-51.9 0-13.1-13.4-16.9-35.3 3.2-55.4l-44-44.3c-30.2 30.2-38 65.2-29.5 98.3-26.7 6-46.2 29.9-46.2 58.2C0 453.2 26.8 480 59.8 480c28.6 0 52.5-19.8 58.6-46.7 32.7 8.2 68.5-.6 94.2-26 32.1-32 12.2-12.4 99.5-99.7z"],
	"js": [448, 512, [], "f3b8", "M0 32v448h448V32H0zm243.8 349.4c0 43.6-25.6 63.5-62.9 63.5-33.7 0-53.2-17.4-63.2-38.5l34.3-20.7c6.6 11.7 12.6 21.6 27.1 21.6 13.8 0 22.6-5.4 22.6-26.5V237.7h42.1v143.7zm99.6 63.5c-39.1 0-64.4-18.6-76.7-43l34.3-19.8c9 14.7 20.8 25.6 41.5 25.6 17.4 0 28.6-8.7 28.6-20.8 0-14.4-11.4-19.5-30.7-28l-10.5-4.5c-30.4-12.9-50.5-29.2-50.5-63.5 0-31.6 24.1-55.6 61.6-55.6 26.8 0 46 9.3 59.8 33.7L368 290c-7.2-12.9-15-18-27.1-18-12.3 0-20.1 7.8-20.1 18 0 12.6 7.8 17.7 25.9 25.6l10.5 4.5c35.8 15.3 55.9 31 55.9 66.2 0 37.8-29.8 58.6-69.7 58.6z"],
	"js-square": [448, 512, [], "f3b9", "M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM243.8 381.4c0 43.6-25.6 63.5-62.9 63.5-33.7 0-53.2-17.4-63.2-38.5l34.3-20.7c6.6 11.7 12.6 21.6 27.1 21.6 13.8 0 22.6-5.4 22.6-26.5V237.7h42.1v143.7zm99.6 63.5c-39.1 0-64.4-18.6-76.7-43l34.3-19.8c9 14.7 20.8 25.6 41.5 25.6 17.4 0 28.6-8.7 28.6-20.8 0-14.4-11.4-19.5-30.7-28l-10.5-4.5c-30.4-12.9-50.5-29.2-50.5-63.5 0-31.6 24.1-55.6 61.6-55.6 26.8 0 46 9.3 59.8 33.7L368 290c-7.2-12.9-15-18-27.1-18-12.3 0-20.1 7.8-20.1 18 0 12.6 7.8 17.7 25.9 25.6l10.5 4.5c35.8 15.3 55.9 31 55.9 66.2 0 37.8-29.8 58.6-69.7 58.6z"],
	"jsfiddle": [576, 512, [], "f1cc", "M510.634 237.462c-4.727-2.621-5.664-5.748-6.381-10.776-2.352-16.488-3.539-33.619-9.097-49.095-35.895-99.957-153.99-143.386-246.849-91.646-27.37 15.25-48.971 36.369-65.493 63.903-3.184-1.508-5.458-2.71-7.824-3.686-30.102-12.421-59.049-10.121-85.331 9.167-25.531 18.737-36.422 44.548-32.676 76.408.355 3.025-1.967 7.621-4.514 9.545-39.712 29.992-56.031 78.065-41.902 124.615 13.831 45.569 57.514 79.796 105.608 81.433 30.291 1.031 60.637.546 90.959.539 84.041-.021 168.09.531 252.12-.48 52.664-.634 96.108-36.873 108.212-87.293 11.54-48.074-11.144-97.3-56.832-122.634zm21.107 156.88c-18.23 22.432-42.343 35.253-71.28 35.65-56.874.781-113.767.23-170.652.23 0 .7-163.028.159-163.728.154-43.861-.332-76.739-19.766-95.175-59.995-18.902-41.245-4.004-90.848 34.186-116.106 9.182-6.073 12.505-11.566 10.096-23.136-5.49-26.361 4.453-47.956 26.42-62.981 22.987-15.723 47.422-16.146 72.034-3.083 10.269 5.45 14.607 11.564 22.198-2.527 14.222-26.399 34.557-46.727 60.671-61.294 97.46-54.366 228.37 7.568 230.24 132.697.122 8.15 2.412 12.428 9.848 15.894 57.56 26.829 74.456 96.122 35.142 144.497zm-87.789-80.499c-5.848 31.157-34.622 55.096-66.666 55.095-16.953-.001-32.058-6.545-44.079-17.705-27.697-25.713-71.141-74.98-95.937-93.387-20.056-14.888-41.99-12.333-60.272 3.782-49.996 44.071 15.859 121.775 67.063 77.188 4.548-3.96 7.84-9.543 12.744-12.844 8.184-5.509 20.766-.884 13.168 10.622-17.358 26.284-49.33 38.197-78.863 29.301-28.897-8.704-48.84-35.968-48.626-70.179 1.225-22.485 12.364-43.06 35.414-55.965 22.575-12.638 46.369-13.146 66.991 2.474C295.68 280.7 320.467 323.97 352.185 343.47c24.558 15.099 54.254 7.363 68.823-17.506 28.83-49.209-34.592-105.016-78.868-63.46-3.989 3.744-6.917 8.932-11.41 11.72-10.975 6.811-17.333-4.113-12.809-10.353 20.703-28.554 50.464-40.44 83.271-28.214 31.429 11.714 49.108 44.366 42.76 78.186z"],
	"kaggle": [320, 512, [], "f5fa", "M304.2 501.5L158.4 320.3 298.2 185c2.6-2.7 1.7-10.5-5.3-10.5h-69.2c-3.5 0-7 1.8-10.5 5.3L80.9 313.5V7.5q0-7.5-7.5-7.5H21.5Q14 0 14 7.5v497q0 7.5 7.5 7.5h51.9q7.5 0 7.5-7.5v-109l30.8-29.3 110.5 140.6c3 3.5 6.5 5.3 10.5 5.3h66.9q5.25 0 6-3z"],
	"keybase": [448, 512, [], "f4f5", "M286.17 419a18 18 0 1 0 18 18 18 18 0 0 0-18-18zm111.92-147.6c-9.5-14.62-39.37-52.45-87.26-73.71q-9.1-4.06-18.38-7.27a78.43 78.43 0 0 0-47.88-104.13c-12.41-4.1-23.33-6-32.41-5.77-.6-2-1.89-11 9.4-35L198.66 32l-5.48 7.56c-8.69 12.06-16.92 23.55-24.34 34.89a51 51 0 0 0-8.29-1.25c-41.53-2.45-39-2.33-41.06-2.33-50.61 0-50.75 52.12-50.75 45.88l-2.36 36.68c-1.61 27 19.75 50.21 47.63 51.85l8.93.54a214 214 0 0 0-46.29 35.54C14 304.66 14 374 14 429.77v33.64l23.32-29.8a148.6 148.6 0 0 0 14.56 37.56c5.78 10.13 14.87 9.45 19.64 7.33 4.21-1.87 10-6.92 3.75-20.11a178.29 178.29 0 0 1-15.76-53.13l46.82-59.83-24.66 74.11c58.23-42.4 157.38-61.76 236.25-38.59 34.2 10.05 67.45.69 84.74-23.84.72-1 1.2-2.16 1.85-3.22a156.09 156.09 0 0 1 2.8 28.43c0 23.3-3.69 52.93-14.88 81.64-2.52 6.46 1.76 14.5 8.6 15.74 7.42 1.57 15.33-3.1 18.37-11.15C429 443 434 414 434 382.32c0-38.58-13-77.46-35.91-110.92zM142.37 128.58l-15.7-.93-1.39 21.79 13.13.78a93 93 0 0 0 .32 19.57l-22.38-1.34a12.28 12.28 0 0 1-11.76-12.79L107 119c1-12.17 13.87-11.27 13.26-11.32l29.11 1.73a144.35 144.35 0 0 0-7 19.17zm148.42 172.18a10.51 10.51 0 0 1-14.35-1.39l-9.68-11.49-34.42 27a8.09 8.09 0 0 1-11.13-1.08l-15.78-18.64a7.38 7.38 0 0 1 1.34-10.34l34.57-27.18-14.14-16.74-17.09 13.45a7.75 7.75 0 0 1-10.59-1s-3.72-4.42-3.8-4.53a7.38 7.38 0 0 1 1.37-10.34L214 225.19s-18.51-22-18.6-22.14a9.56 9.56 0 0 1 1.74-13.42 10.38 10.38 0 0 1 14.3 1.37l81.09 96.32a9.58 9.58 0 0 1-1.74 13.44zM187.44 419a18 18 0 1 0 18 18 18 18 0 0 0-18-18z"],
	"keycdn": [512, 512, [], "f3ba", "M63.8 409.3l60.5-59c32.1 42.8 71.1 66 126.6 67.4 30.5.7 60.3-7 86.4-22.4 5.1 5.3 18.5 19.5 20.9 22-32.2 20.7-69.6 31.1-108.1 30.2-43.3-1.1-84.6-16.7-117.7-44.4.3-.6-38.2 37.5-38.6 37.9 9.5 29.8-13.1 62.4-46.3 62.4C20.7 503.3 0 481.7 0 454.9c0-34.3 33.1-56.6 63.8-45.6zm354.9-252.4c19.1 31.3 29.6 67.4 28.7 104-1.1 44.8-19 87.5-48.6 121 .3.3 23.8 25.2 24.1 25.5 9.6-1.3 19.2 2 25.9 9.1 11.3 12 10.9 30.9-1.1 42.4-12 11.3-30.9 10.9-42.4-1.1-6.7-7-9.4-16.8-7.6-26.3-24.9-26.6-44.4-47.2-44.4-47.2 42.7-34.1 63.3-79.6 64.4-124.2.7-28.9-7.2-57.2-21.1-82.2l22.1-21zM104 53.1c6.7 7 9.4 16.8 7.6 26.3l45.9 48.1c-4.7 3.8-13.3 10.4-22.8 21.3-25.4 28.5-39.6 64.8-40.7 102.9-.7 28.9 6.1 57.2 20 82.4l-22 21.5C72.7 324 63.1 287.9 64.2 250.9c1-44.6 18.3-87.6 47.5-121.1l-25.3-26.4c-9.6 1.3-19.2-2-25.9-9.1-11.3-12-10.9-30.9 1.1-42.4C73.5 40.7 92.2 41 104 53.1zM464.9 8c26 0 47.1 22.4 47.1 48.3S490.9 104 464.9 104c-6.3.1-14-1.1-15.9-1.8l-62.9 59.7c-32.7-43.6-76.7-65.9-126.9-67.2-30.5-.7-60.3 6.8-86.2 22.4l-21.1-22C184.1 74.3 221.5 64 260 64.9c43.3 1.1 84.6 16.7 117.7 44.6l41.1-38.6c-1.5-4.7-2.2-9.6-2.2-14.5C416.5 29.7 438.9 8 464.9 8zM256.7 113.4c5.5 0 10.9.4 16.4 1.1 78.1 9.8 133.4 81.1 123.8 159.1-9.8 78.1-81.1 133.4-159.1 123.8-78.1-9.8-133.4-81.1-123.8-159.2 9.3-72.4 70.1-124.6 142.7-124.8zm-59 119.4c.6 22.7 12.2 41.8 32.4 52.2l-11 51.7h73.7l-11-51.7c20.1-10.9 32.1-29 32.4-52.2-.4-32.8-25.8-57.5-58.3-58.3-32.1.8-57.3 24.8-58.2 58.3zM256 160"],
	"kickstarter": [448, 512, [], "f3bb", "M400 480H48c-26.4 0-48-21.6-48-48V80c0-26.4 21.6-48 48-48h352c26.4 0 48 21.6 48 48v352c0 26.4-21.6 48-48 48zM199.6 178.5c0-30.7-17.6-45.1-39.7-45.1-25.8 0-40 19.8-40 44.5v154.8c0 25.8 13.7 45.6 40.5 45.6 21.5 0 39.2-14 39.2-45.6v-41.8l60.6 75.7c12.3 14.9 39 16.8 55.8 0 14.6-15.1 14.8-36.8 4-50.4l-49.1-62.8 40.5-58.7c9.4-13.5 9.5-34.5-5.6-49.1-16.4-15.9-44.6-17.3-61.4 7l-44.8 64.7v-38.8z"],
	"kickstarter-k": [384, 512, [], "f3bc", "M147.3 114.4c0-56.2-32.5-82.4-73.4-82.4C26.2 32 0 68.2 0 113.4v283c0 47.3 25.3 83.4 74.9 83.4 39.8 0 72.4-25.6 72.4-83.4v-76.5l112.1 138.3c22.7 27.2 72.1 30.7 103.2 0 27-27.6 27.3-67.4 7.4-92.2l-90.8-114.8 74.9-107.4c17.4-24.7 17.5-63.1-10.4-89.8-30.3-29-82.4-31.6-113.6 12.8L147.3 185v-70.6z"],
	"korvue": [446, 512, [], "f42f", "M386.5 34h-327C26.8 34 0 60.8 0 93.5v327.1C0 453.2 26.8 480 59.5 480h327.1c33 0 59.5-26.8 59.5-59.5v-327C446 60.8 419.2 34 386.5 34zM87.1 120.8h96v116l61.8-116h110.9l-81.2 132H87.1v-132zm161.8 272.1l-65.7-113.6v113.6h-96V262.1h191.5l88.6 130.8H248.9z"],
	"laravel": [512, 512, [], "f3bd", "M504.4,115.83a5.72,5.72,0,0,0-.28-.68,8.52,8.52,0,0,0-.53-1.25,6,6,0,0,0-.54-.71,9.36,9.36,0,0,0-.72-.94c-.23-.22-.52-.4-.77-.6a8.84,8.84,0,0,0-.9-.68L404.4,55.55a8,8,0,0,0-8,0L300.12,111h0a8.07,8.07,0,0,0-.88.69,7.68,7.68,0,0,0-.78.6,8.23,8.23,0,0,0-.72.93c-.17.24-.39.45-.54.71a9.7,9.7,0,0,0-.52,1.25c-.08.23-.21.44-.28.68a8.08,8.08,0,0,0-.28,2.08V223.18l-80.22,46.19V63.44a7.8,7.8,0,0,0-.28-2.09c-.06-.24-.2-.45-.28-.68a8.35,8.35,0,0,0-.52-1.24c-.14-.26-.37-.47-.54-.72a9.36,9.36,0,0,0-.72-.94,9.46,9.46,0,0,0-.78-.6,9.8,9.8,0,0,0-.88-.68h0L115.61,1.07a8,8,0,0,0-8,0L11.34,56.49h0a6.52,6.52,0,0,0-.88.69,7.81,7.81,0,0,0-.79.6,8.15,8.15,0,0,0-.71.93c-.18.25-.4.46-.55.72a7.88,7.88,0,0,0-.51,1.24,6.46,6.46,0,0,0-.29.67,8.18,8.18,0,0,0-.28,2.1v329.7a8,8,0,0,0,4,6.95l192.5,110.84a8.83,8.83,0,0,0,1.33.54c.21.08.41.2.63.26a7.92,7.92,0,0,0,4.1,0c.2-.05.37-.16.55-.22a8.6,8.6,0,0,0,1.4-.58L404.4,400.09a8,8,0,0,0,4-6.95V287.88l92.24-53.11a8,8,0,0,0,4-7V117.92A8.63,8.63,0,0,0,504.4,115.83ZM111.6,17.28h0l80.19,46.15-80.2,46.18L31.41,63.44Zm88.25,60V278.6l-46.53,26.79-33.69,19.4V123.5l46.53-26.79Zm0,412.78L23.37,388.5V77.32L57.06,96.7l46.52,26.8V338.68a6.94,6.94,0,0,0,.12.9,8,8,0,0,0,.16,1.18h0a5.92,5.92,0,0,0,.38.9,6.38,6.38,0,0,0,.42,1v0a8.54,8.54,0,0,0,.6.78,7.62,7.62,0,0,0,.66.84l0,0c.23.22.52.38.77.58a8.93,8.93,0,0,0,.86.66l0,0,0,0,92.19,52.18Zm8-106.17-80.06-45.32,84.09-48.41,92.26-53.11,80.13,46.13-58.8,33.56Zm184.52,4.57L215.88,490.11V397.8L346.6,323.2l45.77-26.15Zm0-119.13L358.68,250l-46.53-26.79V131.79l33.69,19.4L392.37,178Zm8-105.28-80.2-46.17,80.2-46.16,80.18,46.15Zm8,105.28V178L455,151.19l33.68-19.4v91.39h0Z"],
	"lastfm": [512, 512, [], "f202", "M225.8 367.1l-18.8-51s-30.5 34-76.2 34c-40.5 0-69.2-35.2-69.2-91.5 0-72.1 36.4-97.9 72.1-97.9 66.5 0 74.8 53.3 100.9 134.9 18.8 56.9 54 102.6 155.4 102.6 72.7 0 122-22.3 122-80.9 0-72.9-62.7-80.6-115-92.1-25.8-5.9-33.4-16.4-33.4-34 0-19.9 15.8-31.7 41.6-31.7 28.2 0 43.4 10.6 45.7 35.8l58.6-7c-4.7-52.8-41.1-74.5-100.9-74.5-52.8 0-104.4 19.9-104.4 83.9 0 39.9 19.4 65.1 68 76.8 44.9 10.6 79.8 13.8 79.8 45.7 0 21.7-21.1 30.5-61 30.5-59.2 0-83.9-31.1-97.9-73.9-32-96.8-43.6-163-161.3-163C45.7 113.8 0 168.3 0 261c0 89.1 45.7 137.2 127.9 137.2 66.2 0 97.9-31.1 97.9-31.1z"],
	"lastfm-square": [448, 512, [], "f203", "M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-92.2 312.9c-63.4 0-85.4-28.6-97.1-64.1-16.3-51-21.5-84.3-63-84.3-22.4 0-45.1 16.1-45.1 61.2 0 35.2 18 57.2 43.3 57.2 28.6 0 47.6-21.3 47.6-21.3l11.7 31.9s-19.8 19.4-61.2 19.4c-51.3 0-79.9-30.1-79.9-85.8 0-57.9 28.6-92 82.5-92 73.5 0 80.8 41.4 100.8 101.9 8.8 26.8 24.2 46.2 61.2 46.2 24.9 0 38.1-5.5 38.1-19.1 0-19.9-21.8-22-49.9-28.6-30.4-7.3-42.5-23.1-42.5-48 0-40 32.3-52.4 65.2-52.4 37.4 0 60.1 13.6 63 46.6l-36.7 4.4c-1.5-15.8-11-22.4-28.6-22.4-16.1 0-26 7.3-26 19.8 0 11 4.8 17.6 20.9 21.3 32.7 7.1 71.8 12 71.8 57.5.1 36.7-30.7 50.6-76.1 50.6z"],
	"leanpub": [576, 512, [], "f212", "M386.539 111.485l15.096 248.955-10.979-.275c-36.232-.824-71.64 8.783-102.657 27.997-31.016-19.214-66.424-27.997-102.657-27.997-45.564 0-82.07 10.705-123.516 27.723L93.117 129.6c28.546-11.803 61.484-18.115 92.226-18.115 41.173 0 73.836 13.175 102.657 42.544 27.723-28.271 59.013-41.721 98.539-42.544zM569.07 448c-25.526 0-47.485-5.215-70.542-15.645-34.31-15.645-69.993-24.978-107.871-24.978-38.977 0-74.934 12.901-102.657 40.623-27.723-27.723-63.68-40.623-102.657-40.623-37.878 0-73.561 9.333-107.871 24.978C55.239 442.236 32.731 448 8.303 448H6.93L49.475 98.859C88.726 76.626 136.486 64 181.775 64 218.83 64 256.984 71.685 288 93.095 319.016 71.685 357.17 64 394.225 64c45.289 0 93.049 12.626 132.3 34.859L569.07 448zm-43.368-44.741l-34.036-280.246c-30.742-13.999-67.248-21.41-101.009-21.41-38.428 0-74.385 12.077-102.657 38.702-28.272-26.625-64.228-38.702-102.657-38.702-33.761 0-70.267 7.411-101.009 21.41L50.298 403.259c47.211-19.487 82.894-33.486 135.045-33.486 37.604 0 70.817 9.606 102.657 29.644 31.84-20.038 65.052-29.644 102.657-29.644 52.151 0 87.834 13.999 135.045 33.486z"],
	"less": [640, 512, [], "f41d", "M612.7 219c0-20.5 3.2-32.6 3.2-54.6 0-34.2-12.6-45.2-40.5-45.2h-20.5v24.2h6.3c14.2 0 17.3 4.7 17.3 22.1 0 16.3-1.6 32.6-1.6 51.5 0 24.2 7.9 33.6 23.6 37.3v1.6c-15.8 3.7-23.6 13.1-23.6 37.3 0 18.9 1.6 34.2 1.6 51.5 0 17.9-3.7 22.6-17.3 22.6v.5h-6.3V393h20.5c27.8 0 40.5-11 40.5-45.2 0-22.6-3.2-34.2-3.2-54.6 0-11 6.8-22.6 27.3-23.6v-27.3c-20.5-.7-27.3-12.3-27.3-23.3zm-105.6 32c-15.8-6.3-30.5-10-30.5-20.5 0-7.9 6.3-12.6 17.9-12.6s22.1 4.7 33.6 13.1l21-27.8c-13.1-10-31-20.5-55.2-20.5-35.7 0-59.9 20.5-59.9 49.4 0 25.7 22.6 38.9 41.5 46.2 16.3 6.3 32.1 11.6 32.1 22.1 0 7.9-6.3 13.1-20.5 13.1-13.1 0-26.3-5.3-40.5-16.3l-21 30.5c15.8 13.1 39.9 22.1 59.9 22.1 42 0 64.6-22.1 64.6-51s-22.5-41-43-47.8zm-358.9 59.4c-3.7 0-8.4-3.2-8.4-13.1V119.1H65.2c-28.4 0-41 11-41 45.2 0 22.6 3.2 35.2 3.2 54.6 0 11-6.8 22.6-27.3 23.6v27.3c20.5.5 27.3 12.1 27.3 23.1 0 19.4-3.2 31-3.2 53.6 0 34.2 12.6 45.2 40.5 45.2h20.5v-24.2h-6.3c-13.1 0-17.3-5.3-17.3-22.6s1.6-32.1 1.6-51.5c0-24.2-7.9-33.6-23.6-37.3v-1.6c15.8-3.7 23.6-13.1 23.6-37.3 0-18.9-1.6-34.2-1.6-51.5s3.7-22.1 17.3-22.1H93v150.8c0 32.1 11 53.1 43.1 53.1 10 0 17.9-1.6 23.6-3.7l-5.3-34.2c-3.1.8-4.6.8-6.2.8zM379.9 251c-16.3-6.3-31-10-31-20.5 0-7.9 6.3-12.6 17.9-12.6 11.6 0 22.1 4.7 33.6 13.1l21-27.8c-13.1-10-31-20.5-55.2-20.5-35.7 0-59.9 20.5-59.9 49.4 0 25.7 22.6 38.9 41.5 46.2 16.3 6.3 32.1 11.6 32.1 22.1 0 7.9-6.3 13.1-20.5 13.1-13.1 0-26.3-5.3-40.5-16.3l-20.5 30.5c15.8 13.1 39.9 22.1 59.9 22.1 42 0 64.6-22.1 64.6-51 .1-28.9-22.5-41-43-47.8zm-155-68.8c-38.4 0-75.1 32.1-74.1 82.5 0 52 34.2 82.5 79.3 82.5 18.9 0 39.9-6.8 56.2-17.9l-15.8-27.8c-11.6 6.8-22.6 10-34.2 10-21 0-37.3-10-41.5-34.2H290c.5-3.7 1.6-11 1.6-19.4.6-42.6-22.6-75.7-66.7-75.7zm-30 66.2c3.2-21 15.8-31 30.5-31 18.9 0 26.3 13.1 26.3 31h-56.8z"],
	"line": [448, 512, [], "f3c0", "M272.1 204.2v71.1c0 1.8-1.4 3.2-3.2 3.2h-11.4c-1.1 0-2.1-.6-2.6-1.3l-32.6-44v42.2c0 1.8-1.4 3.2-3.2 3.2h-11.4c-1.8 0-3.2-1.4-3.2-3.2v-71.1c0-1.8 1.4-3.2 3.2-3.2H219c1 0 2.1.5 2.6 1.4l32.6 44v-42.2c0-1.8 1.4-3.2 3.2-3.2h11.4c1.8-.1 3.3 1.4 3.3 3.1zm-82-3.2h-11.4c-1.8 0-3.2 1.4-3.2 3.2v71.1c0 1.8 1.4 3.2 3.2 3.2h11.4c1.8 0 3.2-1.4 3.2-3.2v-71.1c0-1.7-1.4-3.2-3.2-3.2zm-27.5 59.6h-31.1v-56.4c0-1.8-1.4-3.2-3.2-3.2h-11.4c-1.8 0-3.2 1.4-3.2 3.2v71.1c0 .9.3 1.6.9 2.2.6.5 1.3.9 2.2.9h45.7c1.8 0 3.2-1.4 3.2-3.2v-11.4c0-1.7-1.4-3.2-3.1-3.2zM332.1 201h-45.7c-1.7 0-3.2 1.4-3.2 3.2v71.1c0 1.7 1.4 3.2 3.2 3.2h45.7c1.8 0 3.2-1.4 3.2-3.2v-11.4c0-1.8-1.4-3.2-3.2-3.2H301v-12h31.1c1.8 0 3.2-1.4 3.2-3.2V234c0-1.8-1.4-3.2-3.2-3.2H301v-12h31.1c1.8 0 3.2-1.4 3.2-3.2v-11.4c-.1-1.7-1.5-3.2-3.2-3.2zM448 113.7V399c-.1 44.8-36.8 81.1-81.7 81H81c-44.8-.1-81.1-36.9-81-81.7V113c.1-44.8 36.9-81.1 81.7-81H367c44.8.1 81.1 36.8 81 81.7zm-61.6 122.6c0-73-73.2-132.4-163.1-132.4-89.9 0-163.1 59.4-163.1 132.4 0 65.4 58 120.2 136.4 130.6 19.1 4.1 16.9 11.1 12.6 36.8-.7 4.1-3.3 16.1 14.1 8.8 17.4-7.3 93.9-55.3 128.2-94.7 23.6-26 34.9-52.3 34.9-81.5z"],
	"linkedin": [448, 512, [], "f08c", "M416 32H31.9C14.3 32 0 46.5 0 64.3v383.4C0 465.5 14.3 480 31.9 480H416c17.6 0 32-14.5 32-32.3V64.3c0-17.8-14.4-32.3-32-32.3zM135.4 416H69V202.2h66.5V416zm-33.2-243c-21.3 0-38.5-17.3-38.5-38.5S80.9 96 102.2 96c21.2 0 38.5 17.3 38.5 38.5 0 21.3-17.2 38.5-38.5 38.5zm282.1 243h-66.4V312c0-24.8-.5-56.7-34.5-56.7-34.6 0-39.9 27-39.9 54.9V416h-66.4V202.2h63.7v29.2h.9c8.9-16.8 30.6-34.5 62.9-34.5 67.2 0 79.7 44.3 79.7 101.9V416z"],
	"linkedin-in": [448, 512, [], "f0e1", "M100.28 448H7.4V148.9h92.88zM53.79 108.1C24.09 108.1 0 83.5 0 53.8a53.79 53.79 0 0 1 107.58 0c0 29.7-24.1 54.3-53.79 54.3zM447.9 448h-92.68V302.4c0-34.7-.7-79.2-48.29-79.2-48.29 0-55.69 37.7-55.69 76.7V448h-92.78V148.9h89.08v40.8h1.3c12.4-23.5 42.69-48.3 87.88-48.3 94 0 111.28 61.9 111.28 142.3V448z"],
	"linode": [448, 512, [], "f2b8", "M437.4 226.3c-.3-.9-.9-1.4-1.4-2l-70-38.6c-.9-.6-2-.6-3.1 0l-58.9 36c-.9.6-1.4 1.7-1.4 2.6l-.9 31.4-24-16c-.9-.6-2.3-.6-3.1 0L240 260.9l-1.4-35.1c0-.9-.6-2-1.4-2.3l-36-24.3 33.7-17.4c1.1-.6 1.7-1.7 1.7-2.9l-5.7-132.3c0-.9-.9-2-1.7-2.6L138.6.3c-.9-.3-1.7-.3-2.3-.3L12.6 38.6c-1.4.6-2.3 2-2 3.7L38 175.4c.9 3.4 34 27.4 38.6 30.9l-26.9 12.9c-1.4.9-2 2.3-1.7 3.4l20.6 100.3c.6 2.9 23.7 23.1 27.1 26.3l-17.4 10.6c-.9.6-1.7 2-1.4 3.1 1.4 7.1 15.4 77.7 16.9 79.1l65.1 69.1c.6.6 1.4.6 2.3.9.6 0 1.1-.3 1.7-.6l83.7-66.9c.9-.6 1.1-1.4 1.1-2.3l-2-46 28 23.7c1.1.9 2.9.9 4 0l66.9-53.4c.9-.6 1.1-1.4 1.1-2.3l2.3-33.4 20.3 14c1.1.9 2.6.9 3.7 0l54.6-43.7c.6-.3 1.1-1.1 1.1-2 .9-6.5 10.3-70.8 9.7-72.8zm-204.8 4.8l4 92.6-90.6 61.2-14-96.6 100.6-57.2zm-7.7-180l5.4 126-106.6 55.4L104 97.7l120.9-46.6zM44 173.1L18 48l79.7 49.4 19.4 132.9L44 173.1zm30.6 147.8L55.7 230l70 58.3 13.7 93.4-64.8-60.8zm24.3 117.7l-13.7-67.1 61.7 60.9 9.7 67.4-57.7-61.2zm64.5 64.5l-10.6-70.9 85.7-61.4 3.1 70-78.2 62.3zm82-115.1c0-3.4.9-22.9-2-25.1l-24.3-20 22.3-14.9c2.3-1.7 1.1-5.7 1.1-8l29.4 22.6.6 68.3-27.1-22.9zm94.3-25.4l-60.9 48.6-.6-68.6 65.7-46.9-4.2 66.9zm27.7-25.7l-19.1-13.4 2-34c.3-.9-.3-2-1.1-2.6L308 259.7l.6-30 64.6 40.6-5.8 66.6zm54.6-39.8l-48.3 38.3 5.7-65.1 51.1-36.6-8.5 63.4z"],
	"linux": [448, 512, [], "f17c", "M220.8 123.3c1 .5 1.8 1.7 3 1.7 1.1 0 2.8-.4 2.9-1.5.2-1.4-1.9-2.3-3.2-2.9-1.7-.7-3.9-1-5.5-.1-.4.2-.8.7-.6 1.1.3 1.3 2.3 1.1 3.4 1.7zm-21.9 1.7c1.2 0 2-1.2 3-1.7 1.1-.6 3.1-.4 3.5-1.6.2-.4-.2-.9-.6-1.1-1.6-.9-3.8-.6-5.5.1-1.3.6-3.4 1.5-3.2 2.9.1 1 1.8 1.5 2.8 1.4zM420 403.8c-3.6-4-5.3-11.6-7.2-19.7-1.8-8.1-3.9-16.8-10.5-22.4-1.3-1.1-2.6-2.1-4-2.9-1.3-.8-2.7-1.5-4.1-2 9.2-27.3 5.6-54.5-3.7-79.1-11.4-30.1-31.3-56.4-46.5-74.4-17.1-21.5-33.7-41.9-33.4-72C311.1 85.4 315.7.1 234.8 0 132.4-.2 158 103.4 156.9 135.2c-1.7 23.4-6.4 41.8-22.5 64.7-18.9 22.5-45.5 58.8-58.1 96.7-6 17.9-8.8 36.1-6.2 53.3-6.5 5.8-11.4 14.7-16.6 20.2-4.2 4.3-10.3 5.9-17 8.3s-14 6-18.5 14.5c-2.1 3.9-2.8 8.1-2.8 12.4 0 3.9.6 7.9 1.2 11.8 1.2 8.1 2.5 15.7.8 20.8-5.2 14.4-5.9 24.4-2.2 31.7 3.8 7.3 11.4 10.5 20.1 12.3 17.3 3.6 40.8 2.7 59.3 12.5 19.8 10.4 39.9 14.1 55.9 10.4 11.6-2.6 21.1-9.6 25.9-20.2 12.5-.1 26.3-5.4 48.3-6.6 14.9-1.2 33.6 5.3 55.1 4.1.6 2.3 1.4 4.6 2.5 6.7v.1c8.3 16.7 23.8 24.3 40.3 23 16.6-1.3 34.1-11 48.3-27.9 13.6-16.4 36-23.2 50.9-32.2 7.4-4.5 13.4-10.1 13.9-18.3.4-8.2-4.4-17.3-15.5-29.7zM223.7 87.3c9.8-22.2 34.2-21.8 44-.4 6.5 14.2 3.6 30.9-4.3 40.4-1.6-.8-5.9-2.6-12.6-4.9 1.1-1.2 3.1-2.7 3.9-4.6 4.8-11.8-.2-27-9.1-27.3-7.3-.5-13.9 10.8-11.8 23-4.1-2-9.4-3.5-13-4.4-1-6.9-.3-14.6 2.9-21.8zM183 75.8c10.1 0 20.8 14.2 19.1 33.5-3.5 1-7.1 2.5-10.2 4.6 1.2-8.9-3.3-20.1-9.6-19.6-8.4.7-9.8 21.2-1.8 28.1 1 .8 1.9-.2-5.9 5.5-15.6-14.6-10.5-52.1 8.4-52.1zm-13.6 60.7c6.2-4.6 13.6-10 14.1-10.5 4.7-4.4 13.5-14.2 27.9-14.2 7.1 0 15.6 2.3 25.9 8.9 6.3 4.1 11.3 4.4 22.6 9.3 8.4 3.5 13.7 9.7 10.5 18.2-2.6 7.1-11 14.4-22.7 18.1-11.1 3.6-19.8 16-38.2 14.9-3.9-.2-7-1-9.6-2.1-8-3.5-12.2-10.4-20-15-8.6-4.8-13.2-10.4-14.7-15.3-1.4-4.9 0-9 4.2-12.3zm3.3 334c-2.7 35.1-43.9 34.4-75.3 18-29.9-15.8-68.6-6.5-76.5-21.9-2.4-4.7-2.4-12.7 2.6-26.4v-.2c2.4-7.6.6-16-.6-23.9-1.2-7.8-1.8-15 .9-20 3.5-6.7 8.5-9.1 14.8-11.3 10.3-3.7 11.8-3.4 19.6-9.9 5.5-5.7 9.5-12.9 14.3-18 5.1-5.5 10-8.1 17.7-6.9 8.1 1.2 15.1 6.8 21.9 16l19.6 35.6c9.5 19.9 43.1 48.4 41 68.9zm-1.4-25.9c-4.1-6.6-9.6-13.6-14.4-19.6 7.1 0 14.2-2.2 16.7-8.9 2.3-6.2 0-14.9-7.4-24.9-13.5-18.2-38.3-32.5-38.3-32.5-13.5-8.4-21.1-18.7-24.6-29.9s-3-23.3-.3-35.2c5.2-22.9 18.6-45.2 27.2-59.2 2.3-1.7.8 3.2-8.7 20.8-8.5 16.1-24.4 53.3-2.6 82.4.6-20.7 5.5-41.8 13.8-61.5 12-27.4 37.3-74.9 39.3-112.7 1.1.8 4.6 3.2 6.2 4.1 4.6 2.7 8.1 6.7 12.6 10.3 12.4 10 28.5 9.2 42.4 1.2 6.2-3.5 11.2-7.5 15.9-9 9.9-3.1 17.8-8.6 22.3-15 7.7 30.4 25.7 74.3 37.2 95.7 6.1 11.4 18.3 35.5 23.6 64.6 3.3-.1 7 .4 10.9 1.4 13.8-35.7-11.7-74.2-23.3-84.9-4.7-4.6-4.9-6.6-2.6-6.5 12.6 11.2 29.2 33.7 35.2 59 2.8 11.6 3.3 23.7.4 35.7 16.4 6.8 35.9 17.9 30.7 34.8-2.2-.1-3.2 0-4.2 0 3.2-10.1-3.9-17.6-22.8-26.1-19.6-8.6-36-8.6-38.3 12.5-12.1 4.2-18.3 14.7-21.4 27.3-2.8 11.2-3.6 24.7-4.4 39.9-.5 7.7-3.6 18-6.8 29-32.1 22.9-76.7 32.9-114.3 7.2zm257.4-11.5c-.9 16.8-41.2 19.9-63.2 46.5-13.2 15.7-29.4 24.4-43.6 25.5s-26.5-4.8-33.7-19.3c-4.7-11.1-2.4-23.1 1.1-36.3 3.7-14.2 9.2-28.8 9.9-40.6.8-15.2 1.7-28.5 4.2-38.7 2.6-10.3 6.6-17.2 13.7-21.1.3-.2.7-.3 1-.5.8 13.2 7.3 26.6 18.8 29.5 12.6 3.3 30.7-7.5 38.4-16.3 9-.3 15.7-.9 22.6 5.1 9.9 8.5 7.1 30.3 17.1 41.6 10.6 11.6 14 19.5 13.7 24.6zM173.3 148.7c2 1.9 4.7 4.5 8 7.1 6.6 5.2 15.8 10.6 27.3 10.6 11.6 0 22.5-5.9 31.8-10.8 4.9-2.6 10.9-7 14.8-10.4s5.9-6.3 3.1-6.6-2.6 2.6-6 5.1c-4.4 3.2-9.7 7.4-13.9 9.8-7.4 4.2-19.5 10.2-29.9 10.2s-18.7-4.8-24.9-9.7c-3.1-2.5-5.7-5-7.7-6.9-1.5-1.4-1.9-4.6-4.3-4.9-1.4-.1-1.8 3.7 1.7 6.5z"],
	"lyft": [512, 512, [], "f3c3", "M0 81.1h77.8v208.7c0 33.1 15 52.8 27.2 61-12.7 11.1-51.2 20.9-80.2-2.8C7.8 334 0 310.7 0 289V81.1zm485.9 173.5v-22h23.8v-76.8h-26.1c-10.1-46.3-51.2-80.7-100.3-80.7-56.6 0-102.7 46-102.7 102.7V357c16 2.3 35.4-.3 51.7-14 17.1-14 24.8-37.2 24.8-59v-6.7h38.8v-76.8h-38.8v-23.3c0-34.6 52.2-34.6 52.2 0v77.1c0 56.6 46 102.7 102.7 102.7v-76.5c-14.5 0-26.1-11.7-26.1-25.9zm-294.3-99v113c0 15.4-23.8 15.4-23.8 0v-113H91v132.7c0 23.8 8 54 45 63.9 37 9.8 58.2-10.6 58.2-10.6-2.1 13.4-14.5 23.3-34.9 25.3-15.5 1.6-35.2-3.6-45-7.8v70.3c25.1 7.5 51.5 9.8 77.6 4.7 47.1-9.1 76.8-48.4 76.8-100.8V155.1h-77.1v.5z"],
	"magento": [448, 512, [], "f3c4", "M445.7 127.9V384l-63.4 36.5V164.7L223.8 73.1 65.2 164.7l.4 255.9L2.3 384V128.1L224.2 0l221.5 127.9zM255.6 420.5L224 438.9l-31.8-18.2v-256l-63.3 36.6.1 255.9 94.9 54.9 95.1-54.9v-256l-63.4-36.6v255.9z"],
	"mailchimp": [448, 512, [], "f59e", "M330.61 243.52a36.15 36.15 0 0 1 9.3 0c1.66-3.83 1.95-10.43.45-17.61-2.23-10.67-5.25-17.14-11.48-16.13s-6.47 8.74-4.24 19.42c1.26 6 3.49 11.14 6 14.32zM277.05 252c4.47 2 7.2 3.26 8.28 2.13 1.89-1.94-3.48-9.39-12.12-13.09a31.44 31.44 0 0 0-30.61 3.68c-3 2.18-5.81 5.22-5.41 7.06.85 3.74 10-2.71 22.6-3.48 7-.44 12.8 1.75 17.26 3.71zm-9 5.13c-9.07 1.42-15 6.53-13.47 10.1.9.34 1.17.81 5.21-.81a37 37 0 0 1 18.72-1.95c2.92.34 4.31.52 4.94-.49 1.46-2.22-5.71-8-15.39-6.85zm54.17 17.1c3.38-6.87-10.9-13.93-14.3-7s10.92 13.88 14.32 6.97zm15.66-20.47c-7.66-.13-7.95 15.8-.26 15.93s7.98-15.81.28-15.96zm-218.79 78.9c-1.32.31-6 1.45-8.47-2.35-5.2-8 11.11-20.38 3-35.77-9.1-17.47-27.82-13.54-35.05-5.54-8.71 9.6-8.72 23.54-5 24.08 4.27.57 4.08-6.47 7.38-11.63a12.83 12.83 0 0 1 17.85-3.72c11.59 7.59 1.37 17.76 2.28 28.62 1.39 16.68 18.42 16.37 21.58 9a2.08 2.08 0 0 0-.2-2.33c.03.89.68-1.3-3.35-.39zm299.72-17.07c-3.35-11.73-2.57-9.22-6.78-20.52 2.45-3.67 15.29-24-3.07-43.25-10.4-10.92-33.9-16.54-41.1-18.54-1.5-11.39 4.65-58.7-21.52-83 20.79-21.55 33.76-45.29 33.73-65.65-.06-39.16-48.15-51-107.42-26.47l-12.55 5.33c-.06-.05-22.71-22.27-23.05-22.57C169.5-18-41.77 216.81 25.78 273.85l14.76 12.51a72.49 72.49 0 0 0-4.1 33.5c3.36 33.4 36 60.42 67.53 60.38 57.73 133.06 267.9 133.28 322.29 3 1.74-4.47 9.11-24.61 9.11-42.38s-10.09-25.27-16.53-25.27zm-316 48.16c-22.82-.61-47.46-21.15-49.91-45.51-6.17-61.31 74.26-75.27 84-12.33 4.54 29.64-4.67 58.49-34.12 57.81zM84.3 249.55C69.14 252.5 55.78 261.09 47.6 273c-4.88-4.07-14-12-15.59-15-13.01-24.85 14.24-73 33.3-100.21C112.42 90.56 186.19 39.68 220.36 48.91c5.55 1.57 23.94 22.89 23.94 22.89s-34.15 18.94-65.8 45.35c-42.66 32.85-74.89 80.59-94.2 132.4zM323.18 350.7s-35.74 5.3-69.51-7.07c6.21-20.16 27 6.1 96.4-13.81 15.29-4.38 35.37-13 51-25.35a102.85 102.85 0 0 1 7.12 24.28c3.66-.66 14.25-.52 11.44 18.1-3.29 19.87-11.73 36-25.93 50.84A106.86 106.86 0 0 1 362.55 421a132.45 132.45 0 0 1-20.34 8.58c-53.51 17.48-108.3-1.74-126-43a66.33 66.33 0 0 1-3.55-9.74c-7.53-27.2-1.14-59.83 18.84-80.37 1.23-1.31 2.48-2.85 2.48-4.79a8.45 8.45 0 0 0-1.92-4.54c-7-10.13-31.19-27.4-26.33-60.83 3.5-24 24.49-40.91 44.07-39.91l5 .29c8.48.5 15.89 1.59 22.88 1.88 11.69.5 22.2-1.19 34.64-11.56 4.2-3.5 7.57-6.54 13.26-7.51a17.45 17.45 0 0 1 13.6 2.24c10 6.64 11.4 22.73 11.92 34.49.29 6.72 1.1 23 1.38 27.63.63 10.67 3.43 12.17 9.11 14 3.19 1.05 6.15 1.83 10.51 3.06 13.21 3.71 21 7.48 26 12.31a16.38 16.38 0 0 1 4.74 9.29c1.56 11.37-8.82 25.4-36.31 38.16-46.71 21.68-93.68 14.45-100.48 13.68-20.15-2.71-31.63 23.32-19.55 41.15 22.64 33.41 122.4 20 151.37-21.35.69-1 .12-1.59-.73-1-41.77 28.58-97.06 38.21-128.46 26-4.77-1.85-14.73-6.44-15.94-16.67 43.6 13.49 71 .74 71 .74s2.03-2.79-.56-2.53zm-68.47-5.7zm-83.4-187.5c16.74-19.35 37.36-36.18 55.83-45.63a.73.73 0 0 1 1 1c-1.46 2.66-4.29 8.34-5.19 12.65a.75.75 0 0 0 1.16.79c11.49-7.83 31.48-16.22 49-17.3a.77.77 0 0 1 .52 1.38 41.86 41.86 0 0 0-7.71 7.74.75.75 0 0 0 .59 1.19c12.31.09 29.66 4.4 41 10.74.76.43.22 1.91-.64 1.72-69.55-15.94-123.08 18.53-134.5 26.83a.76.76 0 0 1-1-1.12z"],
	"mandalorian": [448, 512, [], "f50f", "M232.27 511.89c-1-3.26-1.69-15.83-1.39-24.58.55-15.89 1-24.72 1.4-28.76.64-6.2 2.87-20.72 3.28-21.38.6-1 .4-27.87-.24-33.13-.31-2.58-.63-11.9-.69-20.73-.13-16.47-.53-20.12-2.73-24.76-1.1-2.32-1.23-3.84-1-11.43a92.38 92.38 0 0 0-.34-12.71c-2-13-3.46-27.7-3.25-33.9s.43-7.15 2.06-9.67c3.05-4.71 6.51-14 8.62-23.27 2.26-9.86 3.88-17.18 4.59-20.74a109.54 109.54 0 0 1 4.42-15.05c2.27-6.25 2.49-15.39.37-15.39-.3 0-1.38 1.22-2.41 2.71s-4.76 4.8-8.29 7.36c-8.37 6.08-11.7 9.39-12.66 12.58s-1 7.23-.16 7.76c.34.21 1.29 2.4 2.11 4.88a28.83 28.83 0 0 1 .72 15.36c-.39 1.77-1 5.47-1.46 8.23s-1 6.46-1.25 8.22a9.85 9.85 0 0 1-1.55 4.26c-1 1-1.14.91-2.05-.53a14.87 14.87 0 0 1-1.44-4.75c-.25-1.74-1.63-7.11-3.08-11.93-3.28-10.9-3.52-16.15-1-21a14.24 14.24 0 0 0 1.67-4.61c0-2.39-2.2-5.32-7.41-9.89-7-6.18-8.63-7.92-10.23-11.3-1.71-3.6-3.06-4.06-4.54-1.54-1.78 3-2.6 9.11-3 22l-.34 12.19 2 2.25c3.21 3.7 12.07 16.45 13.78 19.83 3.41 6.74 4.34 11.69 4.41 23.56s.95 22.75 2 24.71c.36.66.51 1.35.34 1.52s.41 2.09 1.29 4.27a38.14 38.14 0 0 1 2.06 9 91 91 0 0 0 1.71 10.37c2.23 9.56 2.77 14.08 2.39 20.14-.2 3.27-.53 11.07-.73 17.32-1.31 41.76-1.85 58-2 61.21-.12 2-.39 11.51-.6 21.07-.36 16.3-1.3 27.37-2.42 28.65-.64.73-8.07-4.91-12.52-9.49-3.75-3.87-4-4.79-2.83-9.95.7-3 2.26-18.29 3.33-32.62.36-4.78.81-10.5 1-12.71.83-9.37 1.66-20.35 2.61-34.78.56-8.46 1.33-16.44 1.72-17.73s.89-9.89 1.13-19.11l.43-16.77-2.26-4.3c-1.72-3.28-4.87-6.94-13.22-15.34-6-6.07-11.84-12.3-12.91-13.85l-1.95-2.81.75-10.9c1.09-15.71 1.1-48.57 0-59.06l-.89-8.7-3.28-4.52c-5.86-8.08-5.8-7.75-6.22-33.27-.1-6.07-.38-11.5-.63-12.06-.83-1.87-3.05-2.66-8.54-3.05-8.86-.62-11-1.9-23.85-14.55-6.15-6-12.34-12-13.75-13.19-2.81-2.42-2.79-2-.56-9.63l1.35-4.65-1.69-3a32.22 32.22 0 0 0-2.59-4.07c-1.33-1.51-5.5-10.89-6-13.49a4.24 4.24 0 0 1 .87-3.9c2.23-2.86 3.4-5.68 4.45-10.73 2.33-11.19 7.74-26.09 10.6-29.22 3.18-3.47 7.7-1 9.41 5 1.34 4.79 1.37 9.79.1 18.55a101.2 101.2 0 0 0-1 11.11c0 4 .19 4.69 2.25 7.39 3.33 4.37 7.73 7.41 15.2 10.52a18.67 18.67 0 0 1 4.72 2.85c11.17 10.72 18.62 16.18 22.95 16.85 5.18.8 8 4.54 10 13.39 1.31 5.65 4 11.14 5.46 11.14a9.38 9.38 0 0 0 3.33-1.39c2-1.22 2.25-1.73 2.25-4.18a132.88 132.88 0 0 0-2-17.84c-.37-1.66-.78-4.06-.93-5.35s-.61-3.85-1-5.69c-2.55-11.16-3.65-15.46-4.1-16-1.55-2-4.08-10.2-4.93-15.92-1.64-11.11-4-14.23-12.91-17.39A43.15 43.15 0 0 1 165.24 78c-1.15-1-4-3.22-6.35-5.06s-4.41-3.53-4.6-3.76a22.7 22.7 0 0 0-2.69-2c-6.24-4.22-8.84-7-11.26-12l-2.44-5-.22-13-.22-13 6.91-6.55c3.95-3.75 8.48-7.35 10.59-8.43 3.31-1.69 4.45-1.89 11.37-2 8.53-.19 10.12 0 11.66 1.56s1.36 6.4-.29 8.5a6.66 6.66 0 0 0-1.34 2.32c0 .58-2.61 4.91-5.42 9a30.39 30.39 0 0 0-2.37 6.82c20.44 13.39 21.55 3.77 14.07 29L194 66.92c3.11-8.66 6.47-17.26 8.61-26.22.29-7.63-12-4.19-15.4-8.68-2.33-5.93 3.13-14.18 6.06-19.2 1.6-2.34 6.62-4.7 8.82-4.15.88.22 4.16-.35 7.37-1.28a45.3 45.3 0 0 1 7.55-1.68 29.57 29.57 0 0 0 6-1.29c3.65-1.11 4.5-1.17 6.35-.4a29.54 29.54 0 0 0 5.82 1.36 18.18 18.18 0 0 1 6 1.91 22.67 22.67 0 0 0 5 2.17c2.51.68 3 .57 7.05-1.67l4.35-2.4L268.32 5c10.44-.4 10.81-.47 15.26-2.68L288.16 0l2.46 1.43c1.76 1 3.14 2.73 4.85 6 2.36 4.51 2.38 4.58 1.37 7.37-.88 2.44-.89 3.3-.1 6.39a35.76 35.76 0 0 0 2.1 5.91 13.55 13.55 0 0 1 1.31 4c.31 4.33 0 5.3-2.41 6.92-2.17 1.47-7 7.91-7 9.34a14.77 14.77 0 0 1-1.07 3c-5 11.51-6.76 13.56-14.26 17-9.2 4.2-12.3 5.19-16.21 5.19-3.1 0-4 .25-4.54 1.26a18.33 18.33 0 0 1-4.09 3.71 13.62 13.62 0 0 0-4.38 4.78 5.89 5.89 0 0 1-2.49 2.91 6.88 6.88 0 0 0-2.45 1.71 67.62 67.62 0 0 1-7 5.38c-3.33 2.34-6.87 5-7.87 6A7.27 7.27 0 0 1 224 100a5.76 5.76 0 0 0-2.13 1.65c-1.31 1.39-1.49 2.11-1.14 4.6a36.45 36.45 0 0 0 1.42 5.88c1.32 3.8 1.31 7.86 0 10.57s-.89 6.65 1.35 9.59c2 2.63 2.16 4.56.71 8.84a33.45 33.45 0 0 0-1.06 8.91c0 4.88.22 6.28 1.46 8.38s1.82 2.48 3.24 2.32c2-.23 2.3-1.05 4.71-12.12 2.18-10 3.71-11.92 13.76-17.08 2.94-1.51 7.46-4 10-5.44s6.79-3.69 9.37-4.91a40.09 40.09 0 0 0 15.22-11.67c7.11-8.79 10-16.22 12.85-33.3a18.37 18.37 0 0 1 2.86-7.73 20.39 20.39 0 0 0 2.89-7.31c1-5.3 2.85-9.08 5.58-11.51 4.7-4.18 6-1.09 4.59 10.87-.46 3.86-1.1 10.33-1.44 14.38l-.61 7.36 4.45 4.09 4.45 4.09.11 8.42c.06 4.63.47 9.53.92 10.89l.82 2.47-6.43 6.28c-8.54 8.33-12.88 13.93-16.76 21.61-1.77 3.49-3.74 7.11-4.38 8-2.18 3.11-6.46 13-8.76 20.26l-2.29 7.22-7 6.49c-3.83 3.57-8 7.25-9.17 8.17-3.05 2.32-4.26 5.15-4.26 10a14.62 14.62 0 0 0 1.59 7.26 42 42 0 0 1 2.09 4.83 9.28 9.28 0 0 0 1.57 2.89c1.4 1.59 1.92 16.12.83 23.22-.68 4.48-3.63 12-4.7 12-1.79 0-4.06 9.27-5.07 20.74-.18 2-.62 5.94-1 8.7s-1 10-1.35 16.05c-.77 12.22-.19 18.77 2 23.15 3.41 6.69.52 12.69-11 22.84l-4 3.49.07 5.19a40.81 40.81 0 0 0 1.14 8.87c4.61 16 4.73 16.92 4.38 37.13-.46 26.4-.26 40.27.63 44.15a61.31 61.31 0 0 1 1.08 7c.17 2 .66 5.33 1.08 7.36.47 2.26.78 11 .79 22.74v19.06l-1.81 2.63c-2.71 3.91-15.11 13.54-15.49 12.29zm29.53-45.11c-.18-.3-.33-6.87-.33-14.59 0-14.06-.89-27.54-2.26-34.45-.4-2-.81-9.7-.9-17.06-.15-11.93-1.4-24.37-2.64-26.38-.66-1.07-3-17.66-3-21.3 0-4.23 1-6 5.28-9.13s4.86-3.14 5.48-.72c.28 1.1 1.45 5.62 2.6 10 3.93 15.12 4.14 16.27 4.05 21.74-.1 5.78-.13 6.13-1.74 17.73-1 7.07-1.17 12.39-1 28.43.17 19.4-.64 35.73-2 41.27-.71 2.78-2.8 5.48-3.43 4.43zm-71-37.58a101 101 0 0 1-1.73-10.79 100.5 100.5 0 0 0-1.73-10.79 37.53 37.53 0 0 1-1-6.49c-.31-3.19-.91-7.46-1.33-9.48-1-4.79-3.35-19.35-3.42-21.07 0-.74-.34-4.05-.7-7.36-.67-6.21-.84-27.67-.22-28.29 1-1 6.63 2.76 11.33 7.43l5.28 5.25-.45 6.47c-.25 3.56-.6 10.23-.78 14.83s-.49 9.87-.67 11.71-.61 9.36-.94 16.72c-.79 17.41-1.94 31.29-2.65 32a.62.62 0 0 1-1-.14zm-87.18-266.59c21.07 12.79 17.84 14.15 28.49 17.66 13 4.29 18.87 7.13 23.15 16.87C111.6 233.28 86.25 255 78.55 268c-31 52-6 101.59 62.75 87.21-14.18 29.23-78 28.63-98.68-4.9-24.68-39.95-22.09-118.3 61-187.66zm210.79 179c56.66 6.88 82.32-37.74 46.54-89.23 0 0-26.87-29.34-64.28-68 3-15.45 9.49-32.12 30.57-53.82 89.2 63.51 92 141.61 92.46 149.36 4.3 70.64-78.7 91.18-105.29 61.71z"],
	"markdown": [640, 512, [], "f60f", "M593.8 59.1H46.2C20.7 59.1 0 79.8 0 105.2v301.5c0 25.5 20.7 46.2 46.2 46.2h547.7c25.5 0 46.2-20.7 46.1-46.1V105.2c0-25.4-20.7-46.1-46.2-46.1zM338.5 360.6H277v-120l-61.5 76.9-61.5-76.9v120H92.3V151.4h61.5l61.5 76.9 61.5-76.9h61.5v209.2zm135.3 3.1L381.5 256H443V151.4h61.5V256H566z"],
	"mastodon": [448, 512, [], "f4f6", "M433 179.11c0-97.2-63.71-125.7-63.71-125.7-62.52-28.7-228.56-28.4-290.48 0 0 0-63.72 28.5-63.72 125.7 0 115.7-6.6 259.4 105.63 289.1 40.51 10.7 75.32 13 103.33 11.4 50.81-2.8 79.32-18.1 79.32-18.1l-1.7-36.9s-36.31 11.4-77.12 10.1c-40.41-1.4-83-4.4-89.63-54a102.54 102.54 0 0 1-.9-13.9c85.63 20.9 158.65 9.1 178.75 6.7 56.12-6.7 105-41.3 111.23-72.9 9.8-49.8 9-121.5 9-121.5zm-75.12 125.2h-46.63v-114.2c0-49.7-64-51.6-64 6.9v62.5h-46.33V197c0-58.5-64-56.6-64-6.9v114.2H90.19c0-122.1-5.2-147.9 18.41-175 25.9-28.9 79.82-30.8 103.83 6.1l11.6 19.5 11.6-19.5c24.11-37.1 78.12-34.8 103.83-6.1 23.71 27.3 18.4 53 18.4 175z"],
	"maxcdn": [512, 512, [], "f136", "M461.1 442.7h-97.4L415.6 200c2.3-10.2.9-19.5-4.4-25.7-5-6.1-13.7-9.6-24.2-9.6h-49.3l-59.5 278h-97.4l59.5-278h-83.4l-59.5 278H0l59.5-278-44.6-95.4H387c39.4 0 75.3 16.3 98.3 44.9 23.3 28.6 31.8 67.4 23.6 105.9l-47.8 222.6z"],
	"mdb": [576, 512, [], "f8ca", "M17.37 160.41L7 352h43.91l5.59-79.83L84.43 352h44.71l25.54-77.43 4.79 77.43H205l-12.79-191.59H146.7L106 277.74 63.67 160.41zm281 0h-47.9V352h47.9s95 .8 94.2-95.79c-.78-94.21-94.18-95.78-94.18-95.78zm-1.2 146.46V204.78s46 4.27 46.8 50.57-46.78 51.54-46.78 51.54zm238.29-74.24a56.16 56.16 0 0 0 8-38.31c-5.34-35.76-55.08-34.32-55.08-34.32h-51.9v191.58H482s87 4.79 87-63.85c0-43.14-33.52-55.08-33.52-55.08zm-51.9-31.94s13.57-1.59 16 9.59c1.43 6.66-4 12-4 12h-12v-21.57zm-.1 109.46l.1-24.92V267h.08s41.58-4.73 41.19 22.43c-.33 25.65-41.35 20.74-41.35 20.74z"],
	"medapps": [320, 512, [], "f3c6", "M118.3 238.4c3.5-12.5 6.9-33.6 13.2-33.6 8.3 1.8 9.6 23.4 18.6 36.6 4.6-23.5 5.3-85.1 14.1-86.7 9-.7 19.7 66.5 22 77.5 9.9 4.1 48.9 6.6 48.9 6.6 1.9 7.3-24 7.6-40 7.8-4.6 14.8-5.4 27.7-11.4 28-4.7.2-8.2-28.8-17.5-49.6l-9.4 65.5c-4.4 13-15.5-22.5-21.9-39.3-3.3-.1-62.4-1.6-47.6-7.8l31-5zM228 448c21.2 0 21.2-32 0-32H92c-21.2 0-21.2 32 0 32h136zm-24 64c21.2 0 21.2-32 0-32h-88c-21.2 0-21.2 32 0 32h88zm34.2-141.5c3.2-18.9 5.2-36.4 11.9-48.8 7.9-14.7 16.1-28.1 24-41 24.6-40.4 45.9-75.2 45.9-125.5C320 69.6 248.2 0 160 0S0 69.6 0 155.2c0 50.2 21.3 85.1 45.9 125.5 7.9 12.9 16 26.3 24 41 6.7 12.5 8.7 29.8 11.9 48.9 3.5 21 36.1 15.7 32.6-5.1-3.6-21.7-5.6-40.7-15.3-58.6C66.5 246.5 33 211.3 33 155.2 33 87.3 90 32 160 32s127 55.3 127 123.2c0 56.1-33.5 91.3-66.1 151.6-9.7 18-11.7 37.4-15.3 58.6-3.4 20.6 29 26.4 32.6 5.1z"],
	"medium": [448, 512, [], "f23a", "M0 32v448h448V32H0zm372.2 106.1l-24 23c-2.1 1.6-3.1 4.2-2.7 6.7v169.3c-.4 2.6.6 5.2 2.7 6.7l23.5 23v5.1h-118V367l24.3-23.6c2.4-2.4 2.4-3.1 2.4-6.7V199.8l-67.6 171.6h-9.1L125 199.8v115c-.7 4.8 1 9.7 4.4 13.2l31.6 38.3v5.1H71.2v-5.1l31.6-38.3c3.4-3.5 4.9-8.4 4.1-13.2v-133c.4-3.7-1-7.3-3.8-9.8L75 138.1V133h87.3l67.4 148L289 133.1h83.2v5z"],
	"medium-m": [512, 512, [], "f3c7", "M71.5 142.3c.6-5.9-1.7-11.8-6.1-15.8L20.3 72.1V64h140.2l108.4 237.7L364.2 64h133.7v8.1l-38.6 37c-3.3 2.5-5 6.7-4.3 10.8v272c-.7 4.1 1 8.3 4.3 10.8l37.7 37v8.1H307.3v-8.1l39.1-37.9c3.8-3.8 3.8-5 3.8-10.8V171.2L241.5 447.1h-14.7L100.4 171.2v184.9c-1.1 7.8 1.5 15.6 7 21.2l50.8 61.6v8.1h-144v-8L65 377.3c5.4-5.6 7.9-13.5 6.5-21.2V142.3z"],
	"medrt": [544, 512, [], "f3c8", "M113.7 256c0 121.8 83.9 222.8 193.5 241.1-18.7 4.5-38.2 6.9-58.2 6.9C111.4 504 0 393 0 256S111.4 8 248.9 8c20.1 0 39.6 2.4 58.2 6.9C197.5 33.2 113.7 134.2 113.7 256m297.4 100.3c-77.7 55.4-179.6 47.5-240.4-14.6 5.5 14.1 12.7 27.7 21.7 40.5 61.6 88.2 182.4 109.3 269.7 47 87.3-62.3 108.1-184.3 46.5-272.6-9-12.9-19.3-24.3-30.5-34.2 37.4 78.8 10.7 178.5-67 233.9m-218.8-244c-1.4 1-2.7 2.1-4 3.1 64.3-17.8 135.9 4 178.9 60.5 35.7 47 42.9 106.6 24.4 158 56.7-56.2 67.6-142.1 22.3-201.8-50-65.5-149.1-74.4-221.6-19.8M296 224c-4.4 0-8-3.6-8-8v-40c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v40c0 4.4-3.6 8-8 8h-40c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h40c4.4 0 8 3.6 8 8v40c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8v-40c0-4.4 3.6-8 8-8h40c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8h-40z"],
	"meetup": [512, 512, [], "f2e0", "M99 414.3c1.1 5.7-2.3 11.1-8 12.3-5.4 1.1-10.9-2.3-12-8-1.1-5.4 2.3-11.1 7.7-12.3 5.4-1.2 11.1 2.3 12.3 8zm143.1 71.4c-6.3 4.6-8 13.4-3.7 20 4.6 6.6 13.4 8.3 20 3.7 6.3-4.6 8-13.4 3.4-20-4.2-6.5-13.1-8.3-19.7-3.7zm-86-462.3c6.3-1.4 10.3-7.7 8.9-14-1.1-6.6-7.4-10.6-13.7-9.1-6.3 1.4-10.3 7.7-9.1 14 1.4 6.6 7.6 10.6 13.9 9.1zM34.4 226.3c-10-6.9-23.7-4.3-30.6 6-6.9 10-4.3 24 5.7 30.9 10 7.1 23.7 4.6 30.6-5.7 6.9-10.4 4.3-24.1-5.7-31.2zm272-170.9c10.6-6.3 13.7-20 7.7-30.3-6.3-10.6-19.7-14-30-7.7s-13.7 20-7.4 30.6c6 10.3 19.4 13.7 29.7 7.4zm-191.1 58c7.7-5.4 9.4-16 4.3-23.7s-15.7-9.4-23.1-4.3c-7.7 5.4-9.4 16-4.3 23.7 5.1 7.8 15.6 9.5 23.1 4.3zm372.3 156c-7.4 1.7-12.3 9.1-10.6 16.9 1.4 7.4 8.9 12.3 16.3 10.6 7.4-1.4 12.3-8.9 10.6-16.6-1.5-7.4-8.9-12.3-16.3-10.9zm39.7-56.8c-1.1-5.7-6.6-9.1-12-8-5.7 1.1-9.1 6.9-8 12.6 1.1 5.4 6.6 9.1 12.3 8 5.4-1.5 9.1-6.9 7.7-12.6zM447 138.9c-8.6 6-10.6 17.7-4.9 26.3 5.7 8.6 17.4 10.6 26 4.9 8.3-6 10.3-17.7 4.6-26.3-5.7-8.7-17.4-10.9-25.7-4.9zm-6.3 139.4c26.3 43.1 15.1 100-26.3 129.1-17.4 12.3-37.1 17.7-56.9 17.1-12 47.1-69.4 64.6-105.1 32.6-1.1.9-2.6 1.7-3.7 2.9-39.1 27.1-92.3 17.4-119.4-22.3-9.7-14.3-14.6-30.6-15.1-46.9-65.4-10.9-90-94-41.1-139.7-28.3-46.9.6-107.4 53.4-114.9C151.6 70 234.1 38.6 290.1 82c67.4-22.3 136.3 29.4 130.9 101.1 41.1 12.6 52.8 66.9 19.7 95.2zm-70 74.3c-3.1-20.6-40.9-4.6-43.1-27.1-3.1-32 43.7-101.1 40-128-3.4-24-19.4-29.1-33.4-29.4-13.4-.3-16.9 2-21.4 4.6-2.9 1.7-6.6 4.9-11.7-.3-6.3-6-11.1-11.7-19.4-12.9-12.3-2-17.7 2-26.6 9.7-3.4 2.9-12 12.9-20 9.1-3.4-1.7-15.4-7.7-24-11.4-16.3-7.1-40 4.6-48.6 20-12.9 22.9-38 113.1-41.7 125.1-8.6 26.6 10.9 48.6 36.9 47.1 11.1-.6 18.3-4.6 25.4-17.4 4-7.4 41.7-107.7 44.6-112.6 2-3.4 8.9-8 14.6-5.1 5.7 3.1 6.9 9.4 6 15.1-1.1 9.7-28 70.9-28.9 77.7-3.4 22.9 26.9 26.6 38.6 4 3.7-7.1 45.7-92.6 49.4-98.3 4.3-6.3 7.4-8.3 11.7-8 3.1 0 8.3.9 7.1 10.9-1.4 9.4-35.1 72.3-38.9 87.7-4.6 20.6 6.6 41.4 24.9 50.6 11.4 5.7 62.5 15.7 58.5-11.1zm5.7 92.3c-10.3 7.4-12.9 22-5.7 32.6 7.1 10.6 21.4 13.1 32 6 10.6-7.4 13.1-22 6-32.6-7.4-10.6-21.7-13.5-32.3-6z"],
	"megaport": [496, 512, [], "f5a3", "M214.5 209.6v66.2l33.5 33.5 33.3-33.3v-66.4l-33.4-33.4zM248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm145.1 414.4L367 441.6l-26-19.2v-65.5l-33.4-33.4-33.4 33.4v65.5L248 441.6l-26.1-19.2v-65.5l-33.4-33.4-33.5 33.4v65.5l-26.1 19.2-26.1-19.2v-87l59.5-59.5V188l59.5-59.5V52.9l26.1-19.2L274 52.9v75.6l59.5 59.5v87.6l59.7 59.7v87.1z"],
	"mendeley": [640, 512, [], "f7b3", "M624.6 325.2c-12.3-12.4-29.7-19.2-48.4-17.2-43.3-1-49.7-34.9-37.5-98.8 22.8-57.5-14.9-131.5-87.4-130.8-77.4.7-81.7 82-130.9 82-48.1 0-54-81.3-130.9-82-72.9-.8-110.1 73.3-87.4 130.8 12.2 63.9 5.8 97.8-37.5 98.8-21.2-2.3-37 6.5-53 22.5-19.9 19.7-19.3 94.8 42.6 102.6 47.1 5.9 81.6-42.9 61.2-87.8-47.3-103.7 185.9-106.1 146.5-8.2-.1.1-.2.2-.3.4-26.8 42.8 6.8 97.4 58.8 95.2 52.1 2.1 85.4-52.6 58.8-95.2-.1-.2-.2-.3-.3-.4-39.4-97.9 193.8-95.5 146.5 8.2-4.6 10-6.7 21.3-5.7 33 4.9 53.4 68.7 74.1 104.9 35.2 17.8-14.8 23.1-65.6 0-88.3zm-303.9-19.1h-.6c-43.4 0-62.8-37.5-62.8-62.8 0-34.7 28.2-62.8 62.8-62.8h.6c34.7 0 62.8 28.1 62.8 62.8 0 25-19.2 62.8-62.8 62.8z"],
	"microblog": [448, 512, [], "e01a", "M399.36,362.23c29.49-34.69,47.1-78.34,47.1-125.79C446.46,123.49,346.86,32,224,32S1.54,123.49,1.54,236.44,101.14,440.87,224,440.87a239.28,239.28,0,0,0,79.44-13.44,7.18,7.18,0,0,1,8.12,2.56c18.58,25.09,47.61,42.74,79.89,49.92a4.42,4.42,0,0,0,5.22-3.43,4.37,4.37,0,0,0-.85-3.62,87,87,0,0,1,3.69-110.69ZM329.52,212.4l-57.3,43.49L293,324.75a6.5,6.5,0,0,1-9.94,7.22L224,290.92,164.94,332a6.51,6.51,0,0,1-9.95-7.22l20.79-68.86-57.3-43.49a6.5,6.5,0,0,1,3.8-11.68l71.88-1.51,23.66-67.92a6.5,6.5,0,0,1,12.28,0l23.66,67.92,71.88,1.51a6.5,6.5,0,0,1,3.88,11.68Z"],
	"microsoft": [448, 512, [], "f3ca", "M0 32h214.6v214.6H0V32zm233.4 0H448v214.6H233.4V32zM0 265.4h214.6V480H0V265.4zm233.4 0H448V480H233.4V265.4z"],
	"mix": [448, 512, [], "f3cb", "M0 64v348.9c0 56.2 88 58.1 88 0V174.3c7.9-52.9 88-50.4 88 6.5v175.3c0 57.9 96 58 96 0V240c5.3-54.7 88-52.5 88 4.3v23.8c0 59.9 88 56.6 88 0V64H0z"],
	"mixcloud": [640, 512, [], "f289", "M424.43 219.729C416.124 134.727 344.135 68 256.919 68c-72.266 0-136.224 46.516-159.205 114.074-54.545 8.029-96.63 54.822-96.63 111.582 0 62.298 50.668 112.966 113.243 112.966h289.614c52.329 0 94.969-42.362 94.969-94.693 0-45.131-32.118-83.063-74.48-92.2zm-20.489 144.53H114.327c-39.04 0-70.881-31.564-70.881-70.604s31.841-70.604 70.881-70.604c18.827 0 36.548 7.475 49.838 20.766 19.963 19.963 50.133-10.227 30.18-30.18-14.675-14.398-32.672-24.365-52.053-29.349 19.935-44.3 64.79-73.926 114.628-73.926 69.496 0 125.979 56.483 125.979 125.702 0 13.568-2.215 26.857-6.369 39.594-8.943 27.517 32.133 38.939 40.147 13.29 2.769-8.306 4.984-16.889 6.369-25.472 19.381 7.476 33.502 26.303 33.502 48.453 0 28.795-23.535 52.33-52.607 52.33zm235.069-52.33c0 44.024-12.737 86.386-37.102 122.657-4.153 6.092-10.798 9.414-17.72 9.414-16.317 0-27.127-18.826-17.443-32.949 19.381-29.349 29.903-63.682 29.903-99.122s-10.521-69.773-29.903-98.845c-15.655-22.831 19.361-47.24 35.163-23.534 24.366 35.993 37.102 78.356 37.102 122.379zm-70.88 0c0 31.565-9.137 62.021-26.857 88.325-4.153 6.091-10.798 9.136-17.72 9.136-17.201 0-27.022-18.979-17.443-32.948 13.013-19.104 19.658-41.255 19.658-64.513 0-22.981-6.645-45.408-19.658-64.512-15.761-22.986 19.008-47.095 35.163-23.535 17.719 26.026 26.857 56.483 26.857 88.047z"],
	"mixer": [512, 512, [], "e056", "M114.57,76.07a45.71,45.71,0,0,0-67.51-6.41c-17.58,16.18-19,43.52-4.75,62.77l91.78,123L41.76,379.58c-14.23,19.25-13.11,46.59,4.74,62.77A45.71,45.71,0,0,0,114,435.94L242.89,262.7a12.14,12.14,0,0,0,0-14.23ZM470.24,379.58,377.91,255.45l91.78-123c14.22-19.25,12.83-46.59-4.75-62.77a45.71,45.71,0,0,0-67.51,6.41l-128,172.12a12.14,12.14,0,0,0,0,14.23L398,435.94a45.71,45.71,0,0,0,67.51,6.41C483.35,426.17,484.47,398.83,470.24,379.58Z"],
	"mizuni": [496, 512, [], "f3cc", "M248 8C111 8 0 119.1 0 256c0 137 111 248 248 248s248-111 248-248C496 119.1 385 8 248 8zm-80 351.9c-31.4 10.6-58.8 27.3-80 48.2V136c0-22.1 17.9-40 40-40s40 17.9 40 40v223.9zm120-9.9c-12.9-2-26.2-3.1-39.8-3.1-13.8 0-27.2 1.1-40.2 3.1V136c0-22.1 17.9-40 40-40s40 17.9 40 40v214zm120 57.7c-21.2-20.8-48.6-37.4-80-48V136c0-22.1 17.9-40 40-40s40 17.9 40 40v271.7z"],
	"modx": [448, 512, [], "f285", "M356 241.8l36.7 23.7V480l-133-83.8L356 241.8zM440 75H226.3l-23 37.8 153.5 96.5L440 75zm-89 142.8L55.2 32v214.5l46 29L351 217.8zM97 294.2L8 437h213.7l125-200.5L97 294.2z"],
	"monero": [496, 512, [], "f3d0", "M352 384h108.4C417 455.9 338.1 504 248 504S79 455.9 35.6 384H144V256.2L248 361l104-105v128zM88 336V128l159.4 159.4L408 128v208h74.8c8.5-25.1 13.2-52 13.2-80C496 119 385 8 248 8S0 119 0 256c0 28 4.6 54.9 13.2 80H88z"],
	"napster": [496, 512, [], "f3d2", "M298.3 373.6c-14.2 13.6-31.3 24.1-50.4 30.5-19-6.4-36.2-16.9-50.3-30.5h100.7zm44-199.6c20-16.9 43.6-29.2 69.6-36.2V299c0 219.4-328 217.6-328 .3V137.7c25.9 6.9 49.6 19.6 69.5 36.4 56.8-40 132.5-39.9 188.9-.1zm-208.8-58.5c64.4-60 164.3-60.1 228.9-.2-7.1 3.5-13.9 7.3-20.6 11.5-58.7-30.5-129.2-30.4-187.9.1-6.3-4-13.9-8.2-20.4-11.4zM43.8 93.2v69.3c-58.4 36.5-58.4 121.1.1 158.3 26.4 245.1 381.7 240.3 407.6 1.5l.3-1.7c58.7-36.3 58.9-121.7.2-158.2V93.2c-17.3.5-34 3-50.1 7.4-82-91.5-225.5-91.5-307.5.1-16.3-4.4-33.1-7-50.6-7.5zM259.2 352s36-.3 61.3-1.5c10.2-.5 21.1-4 25.5-6.5 26.3-15.1 25.4-39.2 26.2-47.4-79.5-.6-99.9-3.9-113 55.4zm-135.5-55.3c.8 8.2-.1 32.3 26.2 47.4 4.4 2.5 15.2 6 25.5 6.5 25.3 1.1 61.3 1.5 61.3 1.5-13.2-59.4-33.7-56.1-113-55.4zm169.1 123.4c-3.2-5.3-6.9-7.3-6.9-7.3-24.8 7.3-52.2 6.9-75.9 0 0 0-2.9 1.5-6.4 6.6-2.8 4.1-3.7 9.6-3.7 9.6 29.1 17.6 67.1 17.6 96.2 0-.1-.1-.3-4-3.3-8.9z"],
	"neos": [512, 512, [], "f612", "M415.44 512h-95.11L212.12 357.46v91.1L125.69 512H28V29.82L68.47 0h108.05l123.74 176.13V63.45L386.69 0h97.69v461.5zM38.77 35.27V496l72-52.88V194l215.5 307.64h84.79l52.35-38.17h-78.27L69 13zm82.54 466.61l80-58.78v-101l-79.76-114.4v220.94L49 501.89h72.34zM80.63 10.77l310.6 442.57h82.37V10.77h-79.75v317.56L170.91 10.77zM311 191.65l72 102.81V15.93l-72 53v122.72z"],
	"nimblr": [384, 512, [], "f5a8", "M246.6 299.29c15.57 0 27.15 11.46 27.15 27s-11.62 27-27.15 27c-15.7 0-27.15-11.57-27.15-27s11.55-27 27.15-27zM113 326.25c0-15.61 11.68-27 27.15-27s27.15 11.46 27.15 27-11.47 27-27.15 27c-15.44 0-27.15-11.31-27.15-27M191.76 159C157 159 89.45 178.77 59.25 227L14 0v335.48C14 433.13 93.61 512 191.76 512s177.76-78.95 177.76-176.52S290.13 159 191.76 159zm0 308.12c-73.27 0-132.51-58.9-132.51-131.59s59.24-131.59 132.51-131.59 132.51 58.86 132.51 131.54S265 467.07 191.76 467.07z"],
	"node": [640, 512, [], "f419", "M316.3 452c-2.1 0-4.2-.6-6.1-1.6L291 439c-2.9-1.6-1.5-2.2-.5-2.5 3.8-1.3 4.6-1.6 8.7-4 .4-.2 1-.1 1.4.1l14.8 8.8c.5.3 1.3.3 1.8 0L375 408c.5-.3.9-.9.9-1.6v-66.7c0-.7-.3-1.3-.9-1.6l-57.8-33.3c-.5-.3-1.2-.3-1.8 0l-57.8 33.3c-.6.3-.9 1-.9 1.6v66.7c0 .6.4 1.2.9 1.5l15.8 9.1c8.6 4.3 13.9-.8 13.9-5.8v-65.9c0-.9.7-1.7 1.7-1.7h7.3c.9 0 1.7.7 1.7 1.7v65.9c0 11.5-6.2 18-17.1 18-3.3 0-6 0-13.3-3.6l-15.2-8.7c-3.7-2.2-6.1-6.2-6.1-10.5v-66.7c0-4.3 2.3-8.4 6.1-10.5l57.8-33.4c3.7-2.1 8.5-2.1 12.1 0l57.8 33.4c3.7 2.2 6.1 6.2 6.1 10.5v66.7c0 4.3-2.3 8.4-6.1 10.5l-57.8 33.4c-1.7 1.1-3.8 1.7-6 1.7zm46.7-65.8c0-12.5-8.4-15.8-26.2-18.2-18-2.4-19.8-3.6-19.8-7.8 0-3.5 1.5-8.1 14.8-8.1 11.9 0 16.3 2.6 18.1 10.6.2.8.8 1.3 1.6 1.3h7.5c.5 0 .9-.2 1.2-.5.3-.4.5-.8.4-1.3-1.2-13.8-10.3-20.2-28.8-20.2-16.5 0-26.3 7-26.3 18.6 0 12.7 9.8 16.1 25.6 17.7 18.9 1.9 20.4 4.6 20.4 8.3 0 6.5-5.2 9.2-17.4 9.2-15.3 0-18.7-3.8-19.8-11.4-.1-.8-.8-1.4-1.7-1.4h-7.5c-.9 0-1.7.7-1.7 1.7 0 9.7 5.3 21.3 30.6 21.3 18.5 0 29-7.2 29-19.8zm54.5-50.1c0 6.1-5 11.1-11.1 11.1s-11.1-5-11.1-11.1c0-6.3 5.2-11.1 11.1-11.1 6-.1 11.1 4.8 11.1 11.1zm-1.8 0c0-5.2-4.2-9.3-9.4-9.3-5.1 0-9.3 4.1-9.3 9.3 0 5.2 4.2 9.4 9.3 9.4 5.2-.1 9.4-4.3 9.4-9.4zm-4.5 6.2h-2.6c-.1-.6-.5-3.8-.5-3.9-.2-.7-.4-1.1-1.3-1.1h-2.2v5h-2.4v-12.5h4.3c1.5 0 4.4 0 4.4 3.3 0 2.3-1.5 2.8-2.4 3.1 1.7.1 1.8 1.2 2.1 2.8.1 1 .3 2.7.6 3.3zm-2.8-8.8c0-1.7-1.2-1.7-1.8-1.7h-2v3.5h1.9c1.6 0 1.9-1.1 1.9-1.8zM137.3 191c0-2.7-1.4-5.1-3.7-6.4l-61.3-35.3c-1-.6-2.2-.9-3.4-1h-.6c-1.2 0-2.3.4-3.4 1L3.7 184.6C1.4 185.9 0 188.4 0 191l.1 95c0 1.3.7 2.5 1.8 3.2 1.1.7 2.5.7 3.7 0L42 268.3c2.3-1.4 3.7-3.8 3.7-6.4v-44.4c0-2.6 1.4-5.1 3.7-6.4l15.5-8.9c1.2-.7 2.4-1 3.7-1 1.3 0 2.6.3 3.7 1l15.5 8.9c2.3 1.3 3.7 3.8 3.7 6.4v44.4c0 2.6 1.4 5.1 3.7 6.4l36.4 20.9c1.1.7 2.6.7 3.7 0 1.1-.6 1.8-1.9 1.8-3.2l.2-95zM472.5 87.3v176.4c0 2.6-1.4 5.1-3.7 6.4l-61.3 35.4c-2.3 1.3-5.1 1.3-7.4 0l-61.3-35.4c-2.3-1.3-3.7-3.8-3.7-6.4v-70.8c0-2.6 1.4-5.1 3.7-6.4l61.3-35.4c2.3-1.3 5.1-1.3 7.4 0l15.3 8.8c1.7 1 3.9-.3 3.9-2.2v-94c0-2.8 3-4.6 5.5-3.2l36.5 20.4c2.3 1.2 3.8 3.7 3.8 6.4zm-46 128.9c0-.7-.4-1.3-.9-1.6l-21-12.2c-.6-.3-1.3-.3-1.9 0l-21 12.2c-.6.3-.9.9-.9 1.6v24.3c0 .7.4 1.3.9 1.6l21 12.1c.6.3 1.3.3 1.8 0l21-12.1c.6-.3.9-.9.9-1.6v-24.3zm209.8-.7c2.3-1.3 3.7-3.8 3.7-6.4V192c0-2.6-1.4-5.1-3.7-6.4l-60.9-35.4c-2.3-1.3-5.1-1.3-7.4 0l-61.3 35.4c-2.3 1.3-3.7 3.8-3.7 6.4v70.8c0 2.7 1.4 5.1 3.7 6.4l60.9 34.7c2.2 1.3 5 1.3 7.3 0l36.8-20.5c2.5-1.4 2.5-5 0-6.4L550 241.6c-1.2-.7-1.9-1.9-1.9-3.2v-22.2c0-1.3.7-2.5 1.9-3.2l19.2-11.1c1.1-.7 2.6-.7 3.7 0l19.2 11.1c1.1.7 1.9 1.9 1.9 3.2v17.4c0 2.8 3.1 4.6 5.6 3.2l36.7-21.3zM559 219c-.4.3-.7.7-.7 1.2v13.6c0 .5.3 1 .7 1.2l11.8 6.8c.4.3 1 .3 1.4 0L584 235c.4-.3.7-.7.7-1.2v-13.6c0-.5-.3-1-.7-1.2l-11.8-6.8c-.4-.3-1-.3-1.4 0L559 219zm-254.2 43.5v-70.4c0-2.6-1.6-5.1-3.9-6.4l-61.1-35.2c-2.1-1.2-5-1.4-7.4 0l-61.1 35.2c-2.3 1.3-3.9 3.7-3.9 6.4v70.4c0 2.8 1.9 5.2 4 6.4l61.2 35.2c2.4 1.4 5.2 1.3 7.4 0l61-35.2c1.8-1 3.1-2.7 3.6-4.7.1-.5.2-1.1.2-1.7zm-74.3-124.9l-.8.5h1.1l-.3-.5zm76.2 130.2l-.4-.7v.9l.4-.2z"],
	"node-js": [448, 512, [], "f3d3", "M224 508c-6.7 0-13.5-1.8-19.4-5.2l-61.7-36.5c-9.2-5.2-4.7-7-1.7-8 12.3-4.3 14.8-5.2 27.9-12.7 1.4-.8 3.2-.5 4.6.4l47.4 28.1c1.7 1 4.1 1 5.7 0l184.7-106.6c1.7-1 2.8-3 2.8-5V149.3c0-2.1-1.1-4-2.9-5.1L226.8 37.7c-1.7-1-4-1-5.7 0L36.6 144.3c-1.8 1-2.9 3-2.9 5.1v213.1c0 2 1.1 4 2.9 4.9l50.6 29.2c27.5 13.7 44.3-2.4 44.3-18.7V167.5c0-3 2.4-5.3 5.4-5.3h23.4c2.9 0 5.4 2.3 5.4 5.3V378c0 36.6-20 57.6-54.7 57.6-10.7 0-19.1 0-42.5-11.6l-48.4-27.9C8.1 389.2.7 376.3.7 362.4V149.3c0-13.8 7.4-26.8 19.4-33.7L204.6 9c11.7-6.6 27.2-6.6 38.8 0l184.7 106.7c12 6.9 19.4 19.8 19.4 33.7v213.1c0 13.8-7.4 26.7-19.4 33.7L243.4 502.8c-5.9 3.4-12.6 5.2-19.4 5.2zm149.1-210.1c0-39.9-27-50.5-83.7-58-57.4-7.6-63.2-11.5-63.2-24.9 0-11.1 4.9-25.9 47.4-25.9 37.9 0 51.9 8.2 57.7 33.8.5 2.4 2.7 4.2 5.2 4.2h24c1.5 0 2.9-.6 3.9-1.7s1.5-2.6 1.4-4.1c-3.7-44.1-33-64.6-92.2-64.6-52.7 0-84.1 22.2-84.1 59.5 0 40.4 31.3 51.6 81.8 56.6 60.5 5.9 65.2 14.8 65.2 26.7 0 20.6-16.6 29.4-55.5 29.4-48.9 0-59.6-12.3-63.2-36.6-.4-2.6-2.6-4.5-5.3-4.5h-23.9c-3 0-5.3 2.4-5.3 5.3 0 31.1 16.9 68.2 97.8 68.2 58.4-.1 92-23.2 92-63.4z"],
	"npm": [576, 512, [], "f3d4", "M288 288h-32v-64h32v64zm288-128v192H288v32H160v-32H0V160h576zm-416 32H32v128h64v-96h32v96h32V192zm160 0H192v160h64v-32h64V192zm224 0H352v128h64v-96h32v96h32v-96h32v96h32V192z"],
	"ns8": [640, 512, [], "f3d5", "M104.324,269.172h26.067V242.994H104.324Zm52.466-26.178-.055-26.178v-.941a39.325,39.325,0,0,0-78.644.941v.166h26.4v-.166a12.98,12.98,0,0,1,25.956,0v26.178Zm52.356,25.846a91.1,91.1,0,0,1-91.1,91.1h-.609a91.1,91.1,0,0,1-91.1-91.1H0v.166A117.33,117.33,0,0,0,117.44,386.28h.775A117.331,117.331,0,0,0,235.49,268.84V242.828H209.146Zm-157.233,0a65.362,65.362,0,0,0,130.723,0H156.292a39.023,39.023,0,0,1-78.035,0V242.883H51.968v-26.62A65.42,65.42,0,0,1,182.8,217.48v25.293h26.344V217.48a91.761,91.761,0,0,0-183.522,0v25.4H51.913Zm418.4-71.173c13.67,0,24.573,6.642,30.052,18.264l.719,1.549,23.245-11.511-.609-1.439c-8.025-19.26-28.5-31.27-53.407-31.27-23.134,0-43.611,11.4-50.972,28.447-.123,26.876-.158,23.9,0,24.85,4.7,11.013,14.555,19.37,28.668,24.241a102.033,102.033,0,0,0,19.813,3.984c5.479.72,10.626,1.384,15.829,3.1,6.364,2.1,10.46,5.257,12.84,9.851v9.851c-3.708,7.527-13.781,12.342-25.791,12.342-14.334,0-25.956-6.918-31.933-19.039l-.72-1.494L415.026,280.9l.553,1.439c7.915,19.426,29.609,32.044,55.289,32.044,23.632,0,44.608-11.4,52.3-28.447l.166-25.9-.166-.664c-4.87-11.014-15.219-19.647-28.944-24.241-7.693-2.712-14.335-3.6-20.7-4.427a83.777,83.777,0,0,1-14.832-2.878c-6.31-1.937-10.4-5.092-12.619-9.63v-8.412C449.45,202.427,458.969,197.667,470.315,197.667ZM287.568,311.344h26.067v-68.4H287.568Zm352.266-53.3c-2.933-6.254-8.3-12.01-15.441-16.714A37.99,37.99,0,0,0,637.4,226l.166-25.347-.166-.664C630.038,184,610.667,173.26,589.25,173.26S548.461,184,541.1,199.992l-.166,25.347.166.664a39.643,39.643,0,0,0,13.006,15.331c-7.2,4.7-12.508,10.46-15.441,16.714l-.166,28.889.166.72c7.582,15.994,27.893,26.731,50.585,26.731s43.057-10.737,50.584-26.731l.166-28.89Zm-73.22-50.806c3.6-6.31,12.563-10.516,22.58-10.516s19.038,4.206,22.636,10.516v13.725c-3.542,6.2-12.563,10.349-22.636,10.349s-19.094-4.15-22.58-10.349Zm47.319,72.169c-3.764,6.641-13.338,10.9-24.683,10.9-11.125,0-20.976-4.372-24.684-10.9V263.25c3.708-6.309,13.5-10.515,24.684-10.515,11.345,0,20.919,4.15,24.683,10.515ZM376.4,265.962l-59.827-89.713h-29v40.623h26.51v.387l62.539,94.085H402.3V176.249H376.4Z"],
	"nutritionix": [400, 512, [], "f3d6", "M88 8.1S221.4-.1 209 112.5c0 0 19.1-74.9 103-40.6 0 0-17.7 74-88 56 0 0 14.6-54.6 66.1-56.6 0 0-39.9-10.3-82.1 48.8 0 0-19.8-94.5-93.6-99.7 0 0 75.2 19.4 77.6 107.5 0 .1-106.4 7-104-119.8zm312 315.6c0 48.5-9.7 95.3-32 132.3-42.2 30.9-105 48-168 48-62.9 0-125.8-17.1-168-48C9.7 419 0 372.2 0 323.7 0 275.3 17.7 229 40 192c42.2-30.9 97.1-48.6 160-48.6 63 0 117.8 17.6 160 48.6 22.3 37 40 83.3 40 131.7zM120 428c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zM192 428c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zM264 428c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zM336 428c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm0-66.2c0-15.5-12.5-28-28-28s-28 12.5-28 28 12.5 28 28 28 28-12.5 28-28zm24-39.6c-4.8-22.3-7.4-36.9-16-56-38.8-19.9-90.5-32-144-32S94.8 180.1 56 200c-8.8 19.5-11.2 33.9-16 56 42.2-7.9 98.7-14.8 160-14.8s117.8 6.9 160 14.8z"],
	"octopus-deploy": [512, 512, [], "e082", "M455.6,349.2c-45.891-39.09-36.67-77.877-16.095-128.11C475.16,134.04,415.967,34.14,329.93,8.3,237.04-19.6,134.252,24.341,99.677,117.147a180.862,180.862,0,0,0-10.988,73.544c1.733,29.543,14.717,52.97,24.09,80.3,17.2,50.161-28.1,92.743-66.662,117.582-46.806,30.2-36.319,39.857-8.428,41.858,23.378,1.68,44.478-4.548,65.265-15.045,9.2-4.647,40.687-18.931,45.13-28.588C135.9,413.388,111.122,459.5,126.621,488.9c19.1,36.229,67.112-31.77,76.709-45.812,8.591-12.572,42.963-81.279,63.627-46.926,18.865,31.361,8.6,76.391,35.738,104.622,32.854,34.2,51.155-18.312,51.412-44.221.163-16.411-6.1-95.852,29.9-59.944C405.428,418,436.912,467.8,472.568,463.642c38.736-4.516-22.123-67.967-28.262-78.695,5.393,4.279,53.665,34.128,53.818,9.52C498.234,375.678,468.039,359.8,455.6,349.2Z"],
	"odnoklassniki": [320, 512, [], "f263", "M275.1 334c-27.4 17.4-65.1 24.3-90 26.9l20.9 20.6 76.3 76.3c27.9 28.6-17.5 73.3-45.7 45.7-19.1-19.4-47.1-47.4-76.3-76.6L84 503.4c-28.2 27.5-73.6-17.6-45.4-45.7 19.4-19.4 47.1-47.4 76.3-76.3l20.6-20.6c-24.6-2.6-62.9-9.1-90.6-26.9-32.6-21-46.9-33.3-34.3-59 7.4-14.6 27.7-26.9 54.6-5.7 0 0 36.3 28.9 94.9 28.9s94.9-28.9 94.9-28.9c26.9-21.1 47.1-8.9 54.6 5.7 12.4 25.7-1.9 38-34.5 59.1zM30.3 129.7C30.3 58 88.6 0 160 0s129.7 58 129.7 129.7c0 71.4-58.3 129.4-129.7 129.4s-129.7-58-129.7-129.4zm66 0c0 35.1 28.6 63.7 63.7 63.7s63.7-28.6 63.7-63.7c0-35.4-28.6-64-63.7-64s-63.7 28.6-63.7 64z"],
	"odnoklassniki-square": [448, 512, [], "f264", "M184.2 177.1c0-22.1 17.9-40 39.8-40s39.8 17.9 39.8 40c0 22-17.9 39.8-39.8 39.8s-39.8-17.9-39.8-39.8zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-305.1 97.1c0 44.6 36.4 80.9 81.1 80.9s81.1-36.2 81.1-80.9c0-44.8-36.4-81.1-81.1-81.1s-81.1 36.2-81.1 81.1zm174.5 90.7c-4.6-9.1-17.3-16.8-34.1-3.6 0 0-22.7 18-59.3 18s-59.3-18-59.3-18c-16.8-13.2-29.5-5.5-34.1 3.6-7.9 16.1 1.1 23.7 21.4 37 17.3 11.1 41.2 15.2 56.6 16.8l-12.9 12.9c-18.2 18-35.5 35.5-47.7 47.7-17.6 17.6 10.7 45.8 28.4 28.6l47.7-47.9c18.2 18.2 35.7 35.7 47.7 47.9 17.6 17.2 46-10.7 28.6-28.6l-47.7-47.7-13-12.9c15.5-1.6 39.1-5.9 56.2-16.8 20.4-13.3 29.3-21 21.5-37z"],
	"old-republic": [496, 512, [], "f510", "M235.76 10.23c7.5-.31 15-.28 22.5-.09 3.61.14 7.2.4 10.79.73 4.92.27 9.79 1.03 14.67 1.62 2.93.43 5.83.98 8.75 1.46 7.9 1.33 15.67 3.28 23.39 5.4 12.24 3.47 24.19 7.92 35.76 13.21 26.56 12.24 50.94 29.21 71.63 49.88 20.03 20.09 36.72 43.55 48.89 69.19 1.13 2.59 2.44 5.1 3.47 7.74 2.81 6.43 5.39 12.97 7.58 19.63 4.14 12.33 7.34 24.99 9.42 37.83.57 3.14 1.04 6.3 1.4 9.47.55 3.83.94 7.69 1.18 11.56.83 8.34.84 16.73.77 25.1-.07 4.97-.26 9.94-.75 14.89-.24 3.38-.51 6.76-.98 10.12-.39 2.72-.63 5.46-1.11 8.17-.9 5.15-1.7 10.31-2.87 15.41-4.1 18.5-10.3 36.55-18.51 53.63-15.77 32.83-38.83 62.17-67.12 85.12a246.503 246.503 0 0 1-56.91 34.86c-6.21 2.68-12.46 5.25-18.87 7.41-3.51 1.16-7.01 2.38-10.57 3.39-6.62 1.88-13.29 3.64-20.04 5-4.66.91-9.34 1.73-14.03 2.48-5.25.66-10.5 1.44-15.79 1.74-6.69.66-13.41.84-20.12.81-6.82.03-13.65-.12-20.45-.79-3.29-.23-6.57-.5-9.83-.95-2.72-.39-5.46-.63-8.17-1.11-4.12-.72-8.25-1.37-12.35-2.22-4.25-.94-8.49-1.89-12.69-3.02-8.63-2.17-17.08-5.01-25.41-8.13-10.49-4.12-20.79-8.75-30.64-14.25-2.14-1.15-4.28-2.29-6.35-3.57-11.22-6.58-21.86-14.1-31.92-22.34-34.68-28.41-61.41-66.43-76.35-108.7-3.09-8.74-5.71-17.65-7.8-26.68-1.48-6.16-2.52-12.42-3.58-18.66-.4-2.35-.61-4.73-.95-7.09-.6-3.96-.75-7.96-1.17-11.94-.8-9.47-.71-18.99-.51-28.49.14-3.51.34-7.01.7-10.51.31-3.17.46-6.37.92-9.52.41-2.81.65-5.65 1.16-8.44.7-3.94 1.3-7.9 2.12-11.82 3.43-16.52 8.47-32.73 15.26-48.18 1.15-2.92 2.59-5.72 3.86-8.59 8.05-16.71 17.9-32.56 29.49-47.06 20-25.38 45.1-46.68 73.27-62.47 7.5-4.15 15.16-8.05 23.07-11.37 15.82-6.88 32.41-11.95 49.31-15.38 3.51-.67 7.04-1.24 10.56-1.85 2.62-.47 5.28-.7 7.91-1.08 3.53-.53 7.1-.68 10.65-1.04 2.46-.24 4.91-.36 7.36-.51m8.64 24.41c-9.23.1-18.43.99-27.57 2.23-7.3 1.08-14.53 2.6-21.71 4.3-13.91 3.5-27.48 8.34-40.46 14.42-10.46 4.99-20.59 10.7-30.18 17.22-4.18 2.92-8.4 5.8-12.34 9.03-5.08 3.97-9.98 8.17-14.68 12.59-2.51 2.24-4.81 4.7-7.22 7.06-28.22 28.79-48.44 65.39-57.5 104.69-2.04 8.44-3.54 17.02-4.44 25.65-1.1 8.89-1.44 17.85-1.41 26.8.11 7.14.38 14.28 1.22 21.37.62 7.12 1.87 14.16 3.2 21.18 1.07 4.65 2.03 9.32 3.33 13.91 6.29 23.38 16.5 45.7 30.07 65.75 8.64 12.98 18.78 24.93 29.98 35.77 16.28 15.82 35.05 29.04 55.34 39.22 7.28 3.52 14.66 6.87 22.27 9.63 5.04 1.76 10.06 3.57 15.22 4.98 11.26 3.23 22.77 5.6 34.39 7.06 2.91.29 5.81.61 8.72.9 13.82 1.08 27.74 1 41.54-.43 4.45-.6 8.92-.99 13.35-1.78 3.63-.67 7.28-1.25 10.87-2.1 4.13-.98 8.28-1.91 12.36-3.07 26.5-7.34 51.58-19.71 73.58-36.2 15.78-11.82 29.96-25.76 42.12-41.28 3.26-4.02 6.17-8.31 9.13-12.55 3.39-5.06 6.58-10.25 9.6-15.54 2.4-4.44 4.74-8.91 6.95-13.45 5.69-12.05 10.28-24.62 13.75-37.49 2.59-10.01 4.75-20.16 5.9-30.45 1.77-13.47 1.94-27.1 1.29-40.65-.29-3.89-.67-7.77-1-11.66-2.23-19.08-6.79-37.91-13.82-55.8-5.95-15.13-13.53-29.63-22.61-43.13-12.69-18.8-28.24-35.68-45.97-49.83-25.05-20-54.47-34.55-85.65-42.08-7.78-1.93-15.69-3.34-23.63-4.45-3.91-.59-7.85-.82-11.77-1.24-7.39-.57-14.81-.72-22.22-.58zM139.26 83.53c13.3-8.89 28.08-15.38 43.3-20.18-3.17 1.77-6.44 3.38-9.53 5.29-11.21 6.68-21.52 14.9-30.38 24.49-6.8 7.43-12.76 15.73-17.01 24.89-3.29 6.86-5.64 14.19-6.86 21.71-.93 4.85-1.3 9.81-1.17 14.75.13 13.66 4.44 27.08 11.29 38.82 5.92 10.22 13.63 19.33 22.36 27.26 4.85 4.36 10.24 8.09 14.95 12.6 2.26 2.19 4.49 4.42 6.43 6.91 2.62 3.31 4.89 6.99 5.99 11.1.9 3.02.66 6.2.69 9.31.02 4.1-.04 8.2.03 12.3.14 3.54-.02 7.09.11 10.63.08 2.38.02 4.76.05 7.14.16 5.77.06 11.53.15 17.3.11 2.91.02 5.82.13 8.74.03 1.63.13 3.28-.03 4.91-.91.12-1.82.18-2.73.16-10.99 0-21.88-2.63-31.95-6.93-6-2.7-11.81-5.89-17.09-9.83-5.75-4.19-11.09-8.96-15.79-14.31-6.53-7.24-11.98-15.39-16.62-23.95-1.07-2.03-2.24-4.02-3.18-6.12-1.16-2.64-2.62-5.14-3.67-7.82-4.05-9.68-6.57-19.94-8.08-30.31-.49-4.44-1.09-8.88-1.2-13.35-.7-15.73.84-31.55 4.67-46.82 2.12-8.15 4.77-16.18 8.31-23.83 6.32-14.2 15.34-27.18 26.3-38.19 6.28-6.2 13.13-11.84 20.53-16.67zm175.37-20.12c2.74.74 5.41 1.74 8.09 2.68 6.36 2.33 12.68 4.84 18.71 7.96 13.11 6.44 25.31 14.81 35.82 24.97 10.2 9.95 18.74 21.6 25.14 34.34 1.28 2.75 2.64 5.46 3.81 8.26 6.31 15.1 10 31.26 11.23 47.57.41 4.54.44 9.09.45 13.64.07 11.64-1.49 23.25-4.3 34.53-1.97 7.27-4.35 14.49-7.86 21.18-3.18 6.64-6.68 13.16-10.84 19.24-6.94 10.47-15.6 19.87-25.82 27.22-10.48 7.64-22.64 13.02-35.4 15.38-3.51.69-7.08 1.08-10.66 1.21-1.85.06-3.72.16-5.56-.1-.28-2.15 0-4.31-.01-6.46-.03-3.73.14-7.45.1-11.17.19-7.02.02-14.05.21-21.07.03-2.38-.03-4.76.03-7.14.17-5.07-.04-10.14.14-15.21.1-2.99-.24-6.04.51-8.96.66-2.5 1.78-4.86 3.09-7.08 4.46-7.31 11.06-12.96 17.68-18.26 5.38-4.18 10.47-8.77 15.02-13.84 7.68-8.37 14.17-17.88 18.78-28.27 2.5-5.93 4.52-12.1 5.55-18.46.86-4.37 1.06-8.83 1.01-13.27-.02-7.85-1.4-15.65-3.64-23.17-1.75-5.73-4.27-11.18-7.09-16.45-3.87-6.93-8.65-13.31-13.96-19.2-9.94-10.85-21.75-19.94-34.6-27.1-1.85-1.02-3.84-1.82-5.63-2.97zm-100.8 58.45c.98-1.18 1.99-2.33 3.12-3.38-.61.93-1.27 1.81-1.95 2.68-3.1 3.88-5.54 8.31-7.03 13.06-.87 3.27-1.68 6.6-1.73 10-.07 2.52-.08 5.07.32 7.57 1.13 7.63 4.33 14.85 8.77 21.12 2 2.7 4.25 5.27 6.92 7.33 1.62 1.27 3.53 2.09 5.34 3.05 3.11 1.68 6.32 3.23 9.07 5.48 2.67 2.09 4.55 5.33 4.4 8.79-.01 73.67 0 147.34-.01 221.02 0 1.35-.08 2.7.04 4.04.13 1.48.82 2.83 1.47 4.15.86 1.66 1.78 3.34 3.18 4.62.85.77 1.97 1.4 3.15 1.24 1.5-.2 2.66-1.35 3.45-2.57.96-1.51 1.68-3.16 2.28-4.85.76-2.13.44-4.42.54-6.63.14-4.03-.02-8.06.14-12.09.03-5.89.03-11.77.06-17.66.14-3.62.03-7.24.11-10.86.15-4.03-.02-8.06.14-12.09.03-5.99.03-11.98.07-17.97.14-3.62.02-7.24.11-10.86.14-3.93-.02-7.86.14-11.78.03-5.99.03-11.98.06-17.97.16-3.94-.01-7.88.19-11.82.29 1.44.13 2.92.22 4.38.19 3.61.42 7.23.76 10.84.32 3.44.44 6.89.86 10.32.37 3.1.51 6.22.95 9.31.57 4.09.87 8.21 1.54 12.29 1.46 9.04 2.83 18.11 5.09 26.99 1.13 4.82 2.4 9.61 4 14.3 2.54 7.9 5.72 15.67 10.31 22.62 1.73 2.64 3.87 4.98 6.1 7.21.27.25.55.51.88.71.6.25 1.31-.07 1.7-.57.71-.88 1.17-1.94 1.7-2.93 4.05-7.8 8.18-15.56 12.34-23.31.7-1.31 1.44-2.62 2.56-3.61 1.75-1.57 3.84-2.69 5.98-3.63 2.88-1.22 5.9-2.19 9.03-2.42 6.58-.62 13.11.75 19.56 1.85 3.69.58 7.4 1.17 11.13 1.41 3.74.1 7.48.05 11.21-.28 8.55-.92 16.99-2.96 24.94-6.25 5.3-2.24 10.46-4.83 15.31-7.93 11.46-7.21 21.46-16.57 30.04-27.01 1.17-1.42 2.25-2.9 3.46-4.28-1.2 3.24-2.67 6.37-4.16 9.48-1.25 2.9-2.84 5.61-4.27 8.42-5.16 9.63-11.02 18.91-17.75 27.52-4.03 5.21-8.53 10.05-13.33 14.57-6.64 6.05-14.07 11.37-22.43 14.76-8.21 3.37-17.31 4.63-26.09 3.29-3.56-.58-7.01-1.69-10.41-2.88-2.79-.97-5.39-2.38-8.03-3.69-3.43-1.71-6.64-3.81-9.71-6.08 2.71 3.06 5.69 5.86 8.7 8.61 4.27 3.76 8.74 7.31 13.63 10.23 3.98 2.45 8.29 4.4 12.84 5.51 1.46.37 2.96.46 4.45.6-1.25 1.1-2.63 2.04-3.99 2.98-9.61 6.54-20.01 11.86-30.69 16.43-20.86 8.7-43.17 13.97-65.74 15.34-4.66.24-9.32.36-13.98.36-4.98-.11-9.97-.13-14.92-.65-11.2-.76-22.29-2.73-33.17-5.43-10.35-2.71-20.55-6.12-30.3-10.55-8.71-3.86-17.12-8.42-24.99-13.79-1.83-1.31-3.74-2.53-5.37-4.08 6.6-1.19 13.03-3.39 18.99-6.48 5.74-2.86 10.99-6.66 15.63-11.07 2.24-2.19 4.29-4.59 6.19-7.09-3.43 2.13-6.93 4.15-10.62 5.78-4.41 2.16-9.07 3.77-13.81 5.02-5.73 1.52-11.74 1.73-17.61 1.14-8.13-.95-15.86-4.27-22.51-8.98-4.32-2.94-8.22-6.43-11.96-10.06-9.93-10.16-18.2-21.81-25.66-33.86-3.94-6.27-7.53-12.75-11.12-19.22-1.05-2.04-2.15-4.05-3.18-6.1 2.85 2.92 5.57 5.97 8.43 8.88 8.99 8.97 18.56 17.44 29.16 24.48 7.55 4.9 15.67 9.23 24.56 11.03 3.11.73 6.32.47 9.47.81 2.77.28 5.56.2 8.34.3 5.05.06 10.11.04 15.16-.16 3.65-.16 7.27-.66 10.89-1.09 2.07-.25 4.11-.71 6.14-1.2 3.88-.95 8.11-.96 11.83.61 4.76 1.85 8.44 5.64 11.38 9.71 2.16 3.02 4.06 6.22 5.66 9.58 1.16 2.43 2.46 4.79 3.55 7.26 1 2.24 2.15 4.42 3.42 6.52.67 1.02 1.4 2.15 2.62 2.55 1.06-.75 1.71-1.91 2.28-3.03 2.1-4.16 3.42-8.65 4.89-13.05 2.02-6.59 3.78-13.27 5.19-20.02 2.21-9.25 3.25-18.72 4.54-28.13.56-3.98.83-7.99 1.31-11.97.87-10.64 1.9-21.27 2.24-31.94.08-1.86.24-3.71.25-5.57.01-4.35.25-8.69.22-13.03-.01-2.38-.01-4.76 0-7.13.05-5.07-.2-10.14-.22-15.21-.2-6.61-.71-13.2-1.29-19.78-.73-5.88-1.55-11.78-3.12-17.51-2.05-7.75-5.59-15.03-9.8-21.82-3.16-5.07-6.79-9.88-11.09-14.03-3.88-3.86-8.58-7.08-13.94-8.45-1.5-.41-3.06-.45-4.59-.64.07-2.99.7-5.93 1.26-8.85 1.59-7.71 3.8-15.3 6.76-22.6 1.52-4.03 3.41-7.9 5.39-11.72 3.45-6.56 7.62-12.79 12.46-18.46zm31.27 1.7c.35-.06.71-.12 1.07-.19.19 1.79.09 3.58.1 5.37v38.13c-.01 1.74.13 3.49-.15 5.22-.36-.03-.71-.05-1.06-.05-.95-3.75-1.72-7.55-2.62-11.31-.38-1.53-.58-3.09-1.07-4.59-1.7-.24-3.43-.17-5.15-.2-5.06-.01-10.13 0-15.19-.01-1.66-.01-3.32.09-4.98-.03-.03-.39-.26-.91.16-1.18 1.28-.65 2.72-.88 4.06-1.35 3.43-1.14 6.88-2.16 10.31-3.31 1.39-.48 2.9-.72 4.16-1.54.04-.56.02-1.13-.05-1.68-1.23-.55-2.53-.87-3.81-1.28-3.13-1.03-6.29-1.96-9.41-3.02-1.79-.62-3.67-1-5.41-1.79-.03-.37-.07-.73-.11-1.09 5.09-.19 10.2.06 15.3-.12 3.36-.13 6.73.08 10.09-.07.12-.39.26-.77.37-1.16 1.08-4.94 2.33-9.83 3.39-14.75zm5.97-.2c.36.05.72.12 1.08.2.98 3.85 1.73 7.76 2.71 11.61.36 1.42.56 2.88 1.03 4.27 2.53.18 5.07-.01 7.61.05 5.16.12 10.33.12 15.49.07.76-.01 1.52.03 2.28.08-.04.36-.07.72-.1 1.08-1.82.83-3.78 1.25-5.67 1.89-3.73 1.23-7.48 2.39-11.22 3.57-.57.17-1.12.42-1.67.64-.15.55-.18 1.12-.12 1.69.87.48 1.82.81 2.77 1.09 4.88 1.52 9.73 3.14 14.63 4.6.38.13.78.27 1.13.49.4.27.23.79.15 1.18-1.66.13-3.31.03-4.97.04-5.17.01-10.33-.01-15.5.01-1.61.03-3.22-.02-4.82.21-.52 1.67-.72 3.42-1.17 5.11-.94 3.57-1.52 7.24-2.54 10.78-.36.01-.71.02-1.06.06-.29-1.73-.15-3.48-.15-5.22v-38.13c.02-1.78-.08-3.58.11-5.37zM65.05 168.33c1.12-2.15 2.08-4.4 3.37-6.46-1.82 7.56-2.91 15.27-3.62 23-.8 7.71-.85 15.49-.54 23.23 1.05 19.94 5.54 39.83 14.23 57.88 2.99 5.99 6.35 11.83 10.5 17.11 6.12 7.47 12.53 14.76 19.84 21.09 4.8 4.1 9.99 7.78 15.54 10.8 3.27 1.65 6.51 3.39 9.94 4.68 5.01 2.03 10.19 3.61 15.42 4.94 3.83.96 7.78 1.41 11.52 2.71 5 1.57 9.47 4.61 13.03 8.43 4.93 5.23 8.09 11.87 10.2 18.67.99 2.9 1.59 5.91 2.17 8.92.15.75.22 1.52.16 2.29-6.5 2.78-13.26 5.06-20.26 6.18-4.11.78-8.29.99-12.46 1.08-10.25.24-20.47-1.76-30.12-5.12-3.74-1.42-7.49-2.85-11.03-4.72-8.06-3.84-15.64-8.7-22.46-14.46-2.92-2.55-5.83-5.13-8.4-8.03-9.16-9.83-16.3-21.41-21.79-33.65-2.39-5.55-4.61-11.18-6.37-16.96-1.17-3.94-2.36-7.89-3.26-11.91-.75-2.94-1.22-5.95-1.87-8.92-.46-2.14-.69-4.32-1.03-6.48-.85-5.43-1.28-10.93-1.33-16.43.11-6.18.25-12.37 1.07-18.5.4-2.86.67-5.74 1.15-8.6.98-5.7 2.14-11.37 3.71-16.93 3.09-11.65 7.48-22.95 12.69-33.84zm363.73-6.44c1.1 1.66 1.91 3.48 2.78 5.26 2.1 4.45 4.24 8.9 6.02 13.49 7.61 18.76 12.3 38.79 13.04 59.05.02 1.76.07 3.52.11 5.29.13 9.57-1.27 19.09-3.18 28.45-.73 3.59-1.54 7.17-2.58 10.69-4.04 14.72-10 29-18.41 41.78-8.21 12.57-19.01 23.55-31.84 31.41-5.73 3.59-11.79 6.64-18.05 9.19-5.78 2.19-11.71 4.03-17.8 5.11-6.4 1.05-12.91 1.52-19.4 1.23-7.92-.48-15.78-2.07-23.21-4.85-1.94-.8-3.94-1.46-5.84-2.33-.21-1.51.25-2.99.53-4.46 1.16-5.74 3.03-11.36 5.7-16.58 2.37-4.51 5.52-8.65 9.46-11.9 2.43-2.05 5.24-3.61 8.16-4.83 3.58-1.5 7.47-1.97 11.24-2.83 7.23-1.71 14.37-3.93 21.15-7 10.35-4.65 19.71-11.38 27.65-19.46 1.59-1.61 3.23-3.18 4.74-4.87 3.37-3.76 6.71-7.57 9.85-11.53 7.48-10.07 12.82-21.59 16.71-33.48 1.58-5.3 3.21-10.6 4.21-16.05.63-2.87 1.04-5.78 1.52-8.68.87-6.09 1.59-12.22 1.68-18.38.12-6.65.14-13.32-.53-19.94-.73-7.99-1.87-15.96-3.71-23.78z"],
	"opencart": [640, 512, [], "f23d", "M423.3 440.7c0 25.3-20.3 45.6-45.6 45.6s-45.8-20.3-45.8-45.6 20.6-45.8 45.8-45.8c25.4 0 45.6 20.5 45.6 45.8zm-253.9-45.8c-25.3 0-45.6 20.6-45.6 45.8s20.3 45.6 45.6 45.6 45.8-20.3 45.8-45.6-20.5-45.8-45.8-45.8zm291.7-270C158.9 124.9 81.9 112.1 0 25.7c34.4 51.7 53.3 148.9 373.1 144.2 333.3-5 130 86.1 70.8 188.9 186.7-166.7 319.4-233.9 17.2-233.9z"],
	"openid": [448, 512, [], "f19b", "M271.5 432l-68 32C88.5 453.7 0 392.5 0 318.2c0-71.5 82.5-131 191.7-144.3v43c-71.5 12.5-124 53-124 101.3 0 51 58.5 93.3 135.7 103v-340l68-33.2v384zM448 291l-131.3-28.5 36.8-20.7c-19.5-11.5-43.5-20-70-24.8v-43c46.2 5.5 87.7 19.5 120.3 39.3l35-19.8L448 291z"],
	"opera": [496, 512, [], "f26a", "M313.9 32.7c-170.2 0-252.6 223.8-147.5 355.1 36.5 45.4 88.6 75.6 147.5 75.6 36.3 0 70.3-11.1 99.4-30.4-43.8 39.2-101.9 63-165.3 63-3.9 0-8 0-11.9-.3C104.6 489.6 0 381.1 0 248 0 111 111 0 248 0h.8c63.1.3 120.7 24.1 164.4 63.1-29-19.4-63.1-30.4-99.3-30.4zm101.8 397.7c-40.9 24.7-90.7 23.6-132-5.8 56.2-20.5 97.7-91.6 97.7-176.6 0-84.7-41.2-155.8-97.4-176.6 41.8-29.2 91.2-30.3 132.9-5 105.9 98.7 105.5 265.7-1.2 364z"],
	"optin-monster": [576, 512, [], "f23c", "M572.6 421.4c5.6-9.5 4.7-15.2-5.4-11.6-3-4.9-7-9.5-11.1-13.8 2.9-9.7-.7-14.2-10.8-9.2-4.6-3.2-10.3-6.5-15.9-9.2 0-15.1-11.6-11.6-17.6-5.7-10.4-1.5-18.7-.3-26.8 5.7.3-6.5.3-13 .3-19.7 12.6 0 40.2-11 45.9-36.2 1.4-6.8 1.6-13.8-.3-21.9-3-13.5-14.3-21.3-25.1-25.7-.8-5.9-7.6-14.3-14.9-15.9s-12.4 4.9-14.1 10.3c-8.5 0-19.2 2.8-21.1 8.4-5.4-.5-11.1-1.4-16.8-1.9 2.7-1.9 5.4-3.5 8.4-4.6 5.4-9.2 14.6-11.4 25.7-11.6V256c19.5-.5 43-5.9 53.8-18.1 12.7-13.8 14.6-37.3 12.4-55.1-2.4-17.3-9.7-37.6-24.6-48.1-8.4-5.9-21.6-.8-22.7 9.5-2.2 19.6 1.2 30-38.6 25.1-10.3-23.8-24.6-44.6-42.7-60C341 49.6 242.9 55.5 166.4 71.7c19.7 4.6 41.1 8.6 59.7 16.5-26.2 2.4-52.7 11.3-76.2 23.2-32.8 17-44 29.9-56.7 42.4 14.9-2.2 28.9-5.1 43.8-3.8-9.7 5.4-18.4 12.2-26.5 20-25.8.9-23.8-5.3-26.2-25.9-1.1-10.5-14.3-15.4-22.7-9.7-28.1 19.9-33.5 79.9-12.2 103.5 10.8 12.2 35.1 17.3 54.9 17.8-.3 1.1-.3 1.9-.3 2.7 10.8.5 19.5 2.7 24.6 11.6 3 1.1 5.7 2.7 8.1 4.6-5.4.5-11.1 1.4-16.5 1.9-3.3-6.6-13.7-8.1-21.1-8.1-1.6-5.7-6.5-12.2-14.1-10.3-6.8 1.9-14.1 10-14.9 15.9-22.5 9.5-30.1 26.8-25.1 47.6 5.3 24.8 33 36.2 45.9 36.2v19.7c-6.6-5-14.3-7.5-26.8-5.7-5.5-5.5-17.3-10.1-17.3 5.7-5.9 2.7-11.4 5.9-15.9 9.2-9.8-4.9-13.6-1.7-11.1 9.2-4.1 4.3-7.8 8.6-11.1 13.8-10.2-3.7-11 2.2-5.4 11.6-1.1 3.5-1.6 7-1.9 10.8-.5 31.6 44.6 64 73.5 65.1 17.3.5 34.6-8.4 43-23.5 113.2 4.9 226.7 4.1 340.2 0 8.1 15.1 25.4 24.3 42.7 23.5 29.2-1.1 74.3-33.5 73.5-65.1.2-3.7-.7-7.2-1.7-10.7zm-73.8-254c1.1-3 2.4-8.4 2.4-14.6 0-5.9 6.8-8.1 14.1-.8 11.1 11.6 14.9 40.5 13.8 51.1-4.1-13.6-13-29-30.3-35.7zm-4.6 6.7c19.5 6.2 28.6 27.6 29.7 48.9-1.1 2.7-3 5.4-4.9 7.6-5.7 5.9-15.4 10-26.2 12.2 4.3-21.3.3-47.3-12.7-63 4.9-.8 10.9-2.4 14.1-5.7zm-24.1 6.8c13.8 11.9 20 39.2 14.1 63.5-4.1.5-8.1.8-11.6.8-1.9-21.9-6.8-44-14.3-64.6 3.7.3 8.1.3 11.8.3zM47.5 203c-1.1-10.5 2.4-39.5 13.8-51.1 7-7.3 14.1-5.1 14.1.8 0 6.2 1.4 11.6 2.4 14.6-17.3 6.8-26.2 22.2-30.3 35.7zm9.7 27.6c-1.9-2.2-3.5-4.9-4.9-7.6 1.4-21.3 10.3-42.7 29.7-48.9 3.2 3.2 9.2 4.9 14.1 5.7-13 15.7-17 41.6-12.7 63-10.8-2.2-20.5-6-26.2-12.2zm47.9 14.6c-4.1 0-8.1-.3-12.7-.8-4.6-18.6-1.9-38.9 5.4-53v.3l12.2-5.1c4.9-1.9 9.7-3.8 14.9-4.9-10.7 19.7-17.4 41.3-19.8 63.5zm184-162.7c41.9 0 76.2 34 76.2 75.9 0 42.2-34.3 76.2-76.2 76.2s-76.2-34-76.2-76.2c0-41.8 34.3-75.9 76.2-75.9zm115.6 174.3c-.3 17.8-7 48.9-23 57-13.2 6.6-6.5-7.5-16.5-58.1 13.3.3 26.6.3 39.5 1.1zm-54-1.6c.8 4.9 3.8 40.3-1.6 41.9-11.6 3.5-40 4.3-51.1-1.1-4.1-3-4.6-35.9-4.3-41.1v.3c18.9-.3 38.1-.3 57 0zM278.3 309c-13 3.5-41.6 4.1-54.6-1.6-6.5-2.7-3.8-42.4-1.9-51.6 19.2-.5 38.4-.5 57.8-.8v.3c1.1 8.3 3.3 51.2-1.3 53.7zm-106.5-51.1c12.2-.8 24.6-1.4 36.8-1.6-2.4 15.4-3 43.5-4.9 52.2-1.1 6.8-4.3 6.8-9.7 4.3-21.9-9.8-27.6-35.2-22.2-54.9zm-35.4 31.3c7.8-1.1 15.7-1.9 23.5-2.7 1.6 6.2 3.8 11.9 7 17.6 10 17 44 35.7 45.1 7 6.2 14.9 40.8 12.2 54.9 10.8 15.7-1.4 23.8-1.4 26.8-14.3 12.4 4.3 30.8 4.1 44 3 11.3-.8 20.8-.5 24.6-8.9 1.1 5.1 1.9 11.6 4.6 16.8 10.8 21.3 37.3 1.4 46.8-31.6 8.6.8 17.6 1.9 26.5 2.7-.4 1.3-3.8 7.3 7.3 11.6-47.6 47-95.7 87.8-163.2 107-63.2-20.8-112.1-59.5-155.9-106.5 9.6-3.4 10.4-8.8 8-12.5zm-21.6 172.5c-3.8 17.8-21.9 29.7-39.7 28.9-19.2-.8-46.5-17-59.2-36.5-2.7-31.1 43.8-61.3 66.2-54.6 14.9 4.3 27.8 30.8 33.5 54 0 3-.3 5.7-.8 8.2zm-8.7-66c-.5-13.5-.5-27-.3-40.5h.3c2.7-1.6 5.7-3.8 7.8-6.5 6.5-1.6 13-5.1 15.1-9.2 3.3-7.1-7-7.5-5.4-12.4 2.7-1.1 5.7-2.2 7.8-3.5 29.2 29.2 58.6 56.5 97.3 77-36.8 11.3-72.4 27.6-105.9 47-1.2-18.6-7.7-35.9-16.7-51.9zm337.6 64.6c-103 3.5-206.2 4.1-309.4 0 0 .3 0 .3-.3.3v-.3h.3c35.1-21.6 72.2-39.2 112.4-50.8 11.6 5.1 23 9.5 34.9 13.2 2.2.8 2.2.8 4.3 0 14.3-4.1 28.4-9.2 42.2-15.4 41.5 11.7 78.8 31.7 115.6 53zm10.5-12.4c-35.9-19.5-73-35.9-111.9-47.6 38.1-20 71.9-47.3 103.5-76.7 2.2 1.4 4.6 2.4 7.6 3.2 0 .8.3 1.9.5 2.4-4.6 2.7-7.8 6.2-5.9 10.3 2.2 3.8 8.6 7.6 15.1 8.9 2.4 2.7 5.1 5.1 8.1 6.8 0 13.8-.3 27.6-.8 41.3l.3-.3c-9.3 15.9-15.5 37-16.5 51.7zm105.9 6.2c-12.7 19.5-40 35.7-59.2 36.5-19.3.9-40.5-13.2-40.5-37 5.7-23.2 18.9-49.7 33.5-54 22.7-6.9 69.2 23.4 66.2 54.5zM372.9 75.2c-3.8-72.1-100.8-79.7-126-23.5 44.6-24.3 90.3-15.7 126 23.5zM74.8 407.1c-15.7 1.6-49.5 25.4-49.5 43.2 0 11.6 15.7 19.5 32.2 14.9 12.2-3.2 31.1-17.6 35.9-27.3 6-11.6-3.7-32.7-18.6-30.8zm215.9-176.2c28.6 0 51.9-21.6 51.9-48.4 0-36.1-40.5-58.1-72.2-44.3 9.5 3 16.5 11.6 16.5 21.6 0 23.3-33.3 32-46.5 11.3-7.3 34.1 19.4 59.8 50.3 59.8zM68 474.1c.5 6.5 12.2 12.7 21.6 9.5 6.8-2.7 14.6-10.5 17.3-16.2 3-7-1.1-20-9.7-18.4-8.9 1.6-29.7 16.7-29.2 25.1zm433.2-67c-14.9-1.9-24.6 19.2-18.9 30.8 4.9 9.7 24.1 24.1 36.2 27.3 16.5 4.6 32.2-3.2 32.2-14.9 0-17.8-33.8-41.6-49.5-43.2zM478.8 449c-8.4-1.6-12.4 11.3-9.5 18.4 2.4 5.7 10.3 13.5 17.3 16.2 9.2 3.2 21.1-3 21.3-9.5.9-8.4-20.2-23.5-29.1-25.1z"],
	"orcid": [512, 512, [], "f8d2", "M294.75 188.19h-45.92V342h47.47c67.62 0 83.12-51.34 83.12-76.91 0-41.64-26.54-76.9-84.67-76.9zM256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm-80.79 360.76h-29.84v-207.5h29.84zm-14.92-231.14a19.57 19.57 0 1 1 19.57-19.57 19.64 19.64 0 0 1-19.57 19.57zM300 369h-81V161.26h80.6c76.73 0 110.44 54.83 110.44 103.85C410 318.39 368.38 369 300 369z"],
	"osi": [512, 512, [], "f41a", "M8 266.44C10.3 130.64 105.4 34 221.8 18.34c138.8-18.6 255.6 75.8 278 201.1 21.3 118.8-44 230-151.6 274-9.3 3.8-14.4 1.7-18-7.7q-26.7-69.45-53.4-139c-3.1-8.1-1-13.2 7-16.8 24.2-11 39.3-29.4 43.3-55.8a71.47 71.47 0 0 0-64.5-82.2c-39-3.4-71.8 23.7-77.5 59.7-5.2 33 11.1 63.7 41.9 77.7 9.6 4.4 11.5 8.6 7.8 18.4q-26.85 69.9-53.7 139.9c-2.6 6.9-8.3 9.3-15.5 6.5-52.6-20.3-101.4-61-130.8-119-24.9-49.2-25.2-87.7-26.8-108.7zm20.9-1.9c.4 6.6.6 14.3 1.3 22.1 6.3 71.9 49.6 143.5 131 183.1 3.2 1.5 4.4.8 5.6-2.3q22.35-58.65 45-117.3c1.3-3.3.6-4.8-2.4-6.7-31.6-19.9-47.3-48.5-45.6-86 1-21.6 9.3-40.5 23.8-56.3 30-32.7 77-39.8 115.5-17.6a91.64 91.64 0 0 1 45.2 90.4c-3.6 30.6-19.3 53.9-45.7 69.8-2.7 1.6-3.5 2.9-2.3 6q22.8 58.8 45.2 117.7c1.2 3.1 2.4 3.8 5.6 2.3 35.5-16.6 65.2-40.3 88.1-72 34.8-48.2 49.1-101.9 42.3-161-13.7-117.5-119.4-214.8-255.5-198-106.1 13-195.3 102.5-197.1 225.8z"],
	"page4": [496, 512, [], "f3d7", "M248 504C111 504 0 393 0 256S111 8 248 8c20.9 0 41.3 2.6 60.7 7.5L42.3 392H248v112zm0-143.6V146.8L98.6 360.4H248zm96 31.6v92.7c45.7-19.2 84.5-51.7 111.4-92.7H344zm57.4-138.2l-21.2 8.4 21.2 8.3v-16.7zm-20.3 54.5c-6.7 0-8 6.3-8 12.9v7.7h16.2v-10c0-5.9-2.3-10.6-8.2-10.6zM496 256c0 37.3-8.2 72.7-23 104.4H344V27.3C433.3 64.8 496 153.1 496 256zM360.4 143.6h68.2V96h-13.9v32.6h-13.9V99h-13.9v29.6h-12.7V96h-13.9v47.6zm68.1 185.3H402v-11c0-15.4-5.6-25.2-20.9-25.2-15.4 0-20.7 10.6-20.7 25.9v25.3h68.2v-15zm0-103l-68.2 29.7V268l68.2 29.5v-16.6l-14.4-5.7v-26.5l14.4-5.9v-16.9zm-4.8-68.5h-35.6V184H402v-12.2h11c8.6 15.8 1.3 35.3-18.6 35.3-22.5 0-28.3-25.3-15.5-37.7l-11.6-10.6c-16.2 17.5-12.2 63.9 27.1 63.9 34 0 44.7-35.9 29.3-65.3z"],
	"pagelines": [384, 512, [], "f18c", "M384 312.7c-55.1 136.7-187.1 54-187.1 54-40.5 81.8-107.4 134.4-184.6 134.7-16.1 0-16.6-24.4 0-24.4 64.4-.3 120.5-42.7 157.2-110.1-41.1 15.9-118.6 27.9-161.6-82.2 109-44.9 159.1 11.2 178.3 45.5 9.9-24.4 17-50.9 21.6-79.7 0 0-139.7 21.9-149.5-98.1 119.1-47.9 152.6 76.7 152.6 76.7 1.6-16.7 3.3-52.6 3.3-53.4 0 0-106.3-73.7-38.1-165.2 124.6 43 61.4 162.4 61.4 162.4.5 1.6.5 23.8 0 33.4 0 0 45.2-89 136.4-57.5-4.2 134-141.9 106.4-141.9 106.4-4.4 27.4-11.2 53.4-20 77.5 0 0 83-91.8 172-20z"],
	"palfed": [576, 512, [], "f3d8", "M384.9 193.9c0-47.4-55.2-44.2-95.4-29.8-1.3 39.4-2.5 80.7-3 119.8.7 2.8 2.6 6.2 15.1 6.2 36.8 0 83.4-42.8 83.3-96.2zm-194.5 72.2c.2 0 6.5-2.7 11.2-2.7 26.6 0 20.7 44.1-14.4 44.1-21.5 0-37.1-18.1-37.1-43 0-42 42.9-95.6 100.7-126.5 1-12.4 3-22 10.5-28.2 11.2-9 26.6-3.5 29.5 11.1 72.2-22.2 135.2 1 135.2 72 0 77.9-79.3 152.6-140.1 138.2-.1 39.4.9 74.4 2.7 100v.2c.2 3.4.6 12.5-5.3 19.1-9.6 10.6-33.4 10-36.4-22.3-4.1-44.4.2-206.1 1.4-242.5-21.5 15-58.5 50.3-58.5 75.9.2 2.5.4 4 .6 4.6zM8 181.1s-.1 37.4 38.4 37.4h30l22.4 217.2s0 44.3 44.7 44.3h288.9s44.7-.4 44.7-44.3l22.4-217.2h30s38.4 1.2 38.4-37.4c0 0 .1-37.4-38.4-37.4h-30.1c-7.3-25.6-30.2-74.3-119.4-74.3h-28V50.3s-2.7-18.4-21.1-18.4h-85.8s-21.1 0-21.1 18.4v19.1h-28.1s-105 4.2-120.5 74.3h-29S8 142.5 8 181.1z"],
	"patreon": [512, 512, [], "f3d9", "M512 194.8c0 101.3-82.4 183.8-183.8 183.8-101.7 0-184.4-82.4-184.4-183.8 0-101.6 82.7-184.3 184.4-184.3C429.6 10.5 512 93.2 512 194.8zM0 501.5h90v-491H0v491z"],
	"paypal": [384, 512, [], "f1ed", "M111.4 295.9c-3.5 19.2-17.4 108.7-21.5 134-.3 1.8-1 2.5-3 2.5H12.3c-7.6 0-13.1-6.6-12.1-13.9L58.8 46.6c1.5-9.6 10.1-16.9 20-16.9 152.3 0 165.1-3.7 204 11.4 60.1 23.3 65.6 79.5 44 140.3-21.5 62.6-72.5 89.5-140.1 90.3-43.4.7-69.5-7-75.3 24.2zM357.1 152c-1.8-1.3-2.5-1.8-3 1.3-2 11.4-5.1 22.5-8.8 33.6-39.9 113.8-150.5 103.9-204.5 103.9-6.1 0-10.1 3.3-10.9 9.4-22.6 140.4-27.1 169.7-27.1 169.7-1 7.1 3.5 12.9 10.6 12.9h63.5c8.6 0 15.7-6.3 17.4-14.9.7-5.4-1.1 6.1 14.4-91.3 4.6-22 14.3-19.7 29.3-19.7 71 0 126.4-28.8 142.9-112.3 6.5-34.8 4.6-71.4-23.8-92.6z"],
	"penny-arcade": [640, 512, [], "f704", "M421.91 164.27c-4.49 19.45-1.4 6.06-15.1 65.29l39.73-10.61c-22.34-49.61-17.29-38.41-24.63-54.68zm-206.09 51.11c-20.19 5.4-11.31 3.03-39.63 10.58l4.46 46.19c28.17-7.59 20.62-5.57 34.82-9.34 42.3-9.79 32.85-56.42.35-47.43zm326.16-26.19l-45.47-99.2c-5.69-12.37-19.46-18.84-32.62-15.33-70.27 18.75-38.72 10.32-135.59 36.23a27.618 27.618 0 0 0-18.89 17.41C144.26 113.27 0 153.75 0 226.67c0 33.5 30.67 67.11 80.9 95.37l1.74 17.88a27.891 27.891 0 0 0-17.77 28.67l4.3 44.48c1.39 14.31 13.43 25.21 27.8 25.2 5.18-.01-3.01 1.78 122.53-31.76 12.57-3.37 21.12-15.02 20.58-28.02 216.59 45.5 401.99-5.98 399.89-84.83.01-28.15-22.19-66.56-97.99-104.47zM255.14 298.3l-21.91 5.88-48.44 12.91 2.46 23.55 20.53-5.51 4.51 44.51-115.31 30.78-4.3-44.52 20.02-5.35-11.11-114.64-20.12 5.39-4.35-44.5c178.15-47.54 170.18-46.42 186.22-46.65 56.66-1.13 64.15 71.84 42.55 104.43a86.7 86.7 0 0 1-50.75 33.72zm199.18 16.62l-3.89-39.49 14.9-3.98-6.61-14.68-57.76 15.42-4.1 17.54 19.2-5.12 4.05 39.54-112.85 30.07-4.46-44.43 20.99-5.59 33.08-126.47-17.15 4.56-4.2-44.48c93.36-24.99 65.01-17.41 135.59-36.24l66.67 145.47 20.79-5.56 4.3 44.48-108.55 28.96z"],
	"perbyte": [448, 512, [], "e083", "M305.314,284.578H246.6V383.3h58.711q24.423,0,38.193-13.77t13.77-36.11q0-21.826-14.032-35.335T305.314,284.578ZM149.435,128.7H90.724v98.723h58.711q24.42,0,38.19-13.773t13.77-36.107q0-21.826-14.029-35.338T149.435,128.7ZM366.647,32H81.353A81.445,81.445,0,0,0,0,113.352V398.647A81.445,81.445,0,0,0,81.353,480H366.647A81.445,81.445,0,0,0,448,398.647V113.352A81.445,81.445,0,0,0,366.647,32Zm63.635,366.647a63.706,63.706,0,0,1-63.635,63.635H81.353a63.706,63.706,0,0,1-63.635-63.635V113.352A63.706,63.706,0,0,1,81.353,49.718H366.647a63.706,63.706,0,0,1,63.635,63.634ZM305.314,128.7H246.6v98.723h58.711q24.423,0,38.193-13.773t13.77-36.107q0-21.826-14.032-35.338T305.314,128.7Z"],
	"periscope": [448, 512, [], "f3da", "M370 63.6C331.4 22.6 280.5 0 226.6 0 111.9 0 18.5 96.2 18.5 214.4c0 75.1 57.8 159.8 82.7 192.7C137.8 455.5 192.6 512 226.6 512c41.6 0 112.9-94.2 120.9-105 24.6-33.1 82-118.3 82-192.6 0-56.5-21.1-110.1-59.5-150.8zM226.6 493.9c-42.5 0-190-167.3-190-279.4 0-107.4 83.9-196.3 190-196.3 100.8 0 184.7 89 184.7 196.3.1 112.1-147.4 279.4-184.7 279.4zM338 206.8c0 59.1-51.1 109.7-110.8 109.7-100.6 0-150.7-108.2-92.9-181.8v.4c0 24.5 20.1 44.4 44.8 44.4 24.7 0 44.8-19.9 44.8-44.4 0-18.2-11.1-33.8-26.9-40.7 76.6-19.2 141 39.3 141 112.4z"],
	"phabricator": [496, 512, [], "f3db", "M323 262.1l-.1-13s21.7-19.8 21.1-21.2l-9.5-20c-.6-1.4-29.5-.5-29.5-.5l-9.4-9.3s.2-28.5-1.2-29.1l-20.1-9.2c-1.4-.6-20.7 21-20.7 21l-13.1-.2s-20.5-21.4-21.9-20.8l-20 8.3c-1.4.5.2 28.9.2 28.9l-9.1 9.1s-29.2-.9-29.7.4l-8.1 19.8c-.6 1.4 21 21 21 21l.1 12.9s-21.7 19.8-21.1 21.2l9.5 20c.6 1.4 29.5.5 29.5.5l9.4 9.3s-.2 31.8 1.2 32.3l20.1 8.3c1.4.6 20.7-23.5 20.7-23.5l13.1.2s20.5 23.8 21.8 23.3l20-7.5c1.4-.6-.2-32.1-.2-32.1l9.1-9.1s29.2.9 29.7-.5l8.1-19.8c.7-1.1-20.9-20.7-20.9-20.7zm-44.9-8.7c.7 17.1-12.8 31.6-30.1 32.4-17.3.8-32.1-12.5-32.8-29.6-.7-17.1 12.8-31.6 30.1-32.3 17.3-.8 32.1 12.5 32.8 29.5zm201.2-37.9l-97-97-.1.1c-75.1-73.3-195.4-72.8-269.8 1.6-50.9 51-27.8 27.9-95.7 95.3-22.3 22.3-22.3 58.7 0 81 69.9 69.4 46.4 46 97.4 97l.1-.1c75.1 73.3 195.4 72.9 269.8-1.6 51-50.9 27.9-27.9 95.3-95.3 22.3-22.3 22.3-58.7 0-81zM140.4 363.8c-59.6-59.5-59.6-156 0-215.5 59.5-59.6 156-59.5 215.6 0 59.5 59.5 59.6 156 0 215.6-59.6 59.5-156 59.4-215.6-.1z"],
	"phoenix-framework": [640, 512, [], "f3dc", "M212.9 344.3c3.8-.1 22.8-1.4 25.6-2.2-2.4-2.6-43.6-1-68-49.6-4.3-8.6-7.5-17.6-6.4-27.6 2.9-25.5 32.9-30 52-18.5 36 21.6 63.3 91.3 113.7 97.5 37 4.5 84.6-17 108.2-45.4-.6-.1-.8-.2-1-.1-.4.1-.8.2-1.1.3-33.3 12.1-94.3 9.7-134.7-14.8-37.6-22.8-53.1-58.7-51.8-74.6 1.8-21.3 22.9-23.2 35.9-19.6 14.4 3.9 24.4 17.6 38.9 27.4 15.6 10.4 32.9 13.7 51.3 10.3 14.9-2.7 34.4-12.3 36.5-14.5-1.1-.1-1.8-.1-2.5-.2-6.2-.6-12.4-.8-18.5-1.7C279.8 194.5 262.1 47.4 138.5 37.9 94.2 34.5 39.1 46 2.2 72.9c-.8.6-1.5 1.2-2.2 1.8.1.2.1.3.2.5.8 0 1.6-.1 2.4-.2 6.3-1 12.5-.8 18.7.3 23.8 4.3 47.7 23.1 55.9 76.5 5.3 34.3-.7 50.8 8 86.1 19 77.1 91 107.6 127.7 106.4zM75.3 64.9c-.9-1-.9-1.2-1.3-2 12.1-2.6 24.2-4.1 36.6-4.8-1.1 14.7-22.2 21.3-35.3 6.8zm196.9 350.5c-42.8 1.2-92-26.7-123.5-61.4-4.6-5-16.8-20.2-18.6-23.4l.4-.4c6.6 4.1 25.7 18.6 54.8 27 24.2 7 48.1 6.3 71.6-3.3 22.7-9.3 41-.5 43.1 2.9-18.5 3.8-20.1 4.4-24 7.9-5.1 4.4-4.6 11.7 7 17.2 26.2 12.4 63-2.8 97.2 25.4 2.4 2 8.1 7.8 10.1 10.7-.1.2-.3.3-.4.5-4.8-1.5-16.4-7.5-40.2-9.3-24.7-2-46.3 5.3-77.5 6.2zm174.8-252c16.4-5.2 41.3-13.4 66.5-3.3 16.1 6.5 26.2 18.7 32.1 34.6 3.5 9.4 5.1 19.7 5.1 28.7-.2 0-.4 0-.6.1-.2-.4-.4-.9-.5-1.3-5-22-29.9-43.8-67.6-29.9-50.2 18.6-130.4 9.7-176.9-48-.7-.9-2.4-1.7-1.3-3.2.1-.2 2.1.6 3 1.3 18.1 13.4 38.3 21.9 60.3 26.2 30.5 6.1 54.6 2.9 79.9-5.2zm102.7 117.5c-32.4.2-33.8 50.1-103.6 64.4-18.2 3.7-38.7 4.6-44.9 4.2v-.4c2.8-1.5 14.7-2.6 29.7-16.6 7.9-7.3 15.3-15.1 22.8-22.9 19.5-20.2 41.4-42.2 81.9-39 23.1 1.8 29.3 8.2 36.1 12.7.3.2.4.5.7.9-.5 0-.7.1-.9 0-7-2.7-14.3-3.3-21.8-3.3zm-12.3-24.1c-.1.2-.1.4-.2.6-28.9-4.4-48-7.9-68.5 4-17 9.9-31.4 20.5-62 24.4-27.1 3.4-45.1 2.4-66.1-8-.3-.2-.6-.4-1-.6 0-.2.1-.3.1-.5 24.9 3.8 36.4 5.1 55.5-5.8 22.3-12.9 40.1-26.6 71.3-31 29.6-4.1 51.3 2.5 70.9 16.9zM268.6 97.3c-.6-.6-1.1-1.2-2.1-2.3 7.6 0 29.7-1.2 53.4 8.4 19.7 8 32.2 21 50.2 32.9 11.1 7.3 23.4 9.3 36.4 8.1 4.3-.4 8.5-1.2 12.8-1.7.4-.1.9 0 1.5.3-.6.4-1.2.9-1.8 1.2-8.1 4-16.7 6.3-25.6 7.1-26.1 2.6-50.3-3.7-73.4-15.4-19.3-9.9-36.4-22.9-51.4-38.6zM640 335.7c-3.5 3.1-22.7 11.6-42.7 5.3-12.3-3.9-19.5-14.9-31.6-24.1-10-7.6-20.9-7.9-28.1-8.4.6-.8.9-1.2 1.2-1.4 14.8-9.2 30.5-12.2 47.3-6.5 12.5 4.2 19.2 13.5 30.4 24.2 10.8 10.4 21 9.9 23.1 10.5.1-.1.2 0 .4.4zm-212.5 137c2.2 1.2 1.6 1.5 1.5 2-18.5-1.4-33.9-7.6-46.8-22.2-21.8-24.7-41.7-27.9-48.6-29.7.5-.2.8-.4 1.1-.4 13.1.1 26.1.7 38.9 3.9 25.3 6.4 35 25.4 41.6 35.3 3.2 4.8 7.3 8.3 12.3 11.1z"],
	"phoenix-squadron": [512, 512, [], "f511", "M96 63.38C142.49 27.25 201.55 7.31 260.51 8.81c29.58-.38 59.11 5.37 86.91 15.33-24.13-4.63-49-6.34-73.38-2.45C231.17 27 191 48.84 162.21 80.87c5.67-1 10.78-3.67 16-5.86 18.14-7.87 37.49-13.26 57.23-14.83 19.74-2.13 39.64-.43 59.28 1.92-14.42 2.79-29.12 4.57-43 9.59-34.43 11.07-65.27 33.16-86.3 62.63-13.8 19.71-23.63 42.86-24.67 67.13-.35 16.49 5.22 34.81 19.83 44a53.27 53.27 0 0 0 37.52 6.74c15.45-2.46 30.07-8.64 43.6-16.33 11.52-6.82 22.67-14.55 32-24.25 3.79-3.22 2.53-8.45 2.62-12.79-2.12-.34-4.38-1.11-6.3.3a203 203 0 0 1-35.82 15.37c-20 6.17-42.16 8.46-62.1.78 12.79 1.73 26.06.31 37.74-5.44 20.23-9.72 36.81-25.2 54.44-38.77a526.57 526.57 0 0 1 88.9-55.31c25.71-12 52.94-22.78 81.57-24.12-15.63 13.72-32.15 26.52-46.78 41.38-14.51 14-27.46 29.5-40.11 45.18-3.52 4.6-8.95 6.94-13.58 10.16a150.7 150.7 0 0 0-51.89 60.1c-9.33 19.68-14.5 41.85-11.77 63.65 1.94 13.69 8.71 27.59 20.9 34.91 12.9 8 29.05 8.07 43.48 5.1 32.8-7.45 61.43-28.89 81-55.84 20.44-27.52 30.52-62.2 29.16-96.35-.52-7.5-1.57-15-1.66-22.49 8 19.48 14.82 39.71 16.65 60.83 2 14.28.75 28.76-1.62 42.9-1.91 11-5.67 21.51-7.78 32.43a165 165 0 0 0 39.34-81.07 183.64 183.64 0 0 0-14.21-104.64c20.78 32 32.34 69.58 35.71 107.48.49 12.73.49 25.51 0 38.23A243.21 243.21 0 0 1 482 371.34c-26.12 47.34-68 85.63-117.19 108-78.29 36.23-174.68 31.32-248-14.68A248.34 248.34 0 0 1 25.36 366 238.34 238.34 0 0 1 0 273.08v-31.34C3.93 172 40.87 105.82 96 63.38m222 80.33a79.13 79.13 0 0 0 16-4.48c5-1.77 9.24-5.94 10.32-11.22-8.96 4.99-17.98 9.92-26.32 15.7z"],
	"php": [640, 512, [], "f457", "M320 104.5c171.4 0 303.2 72.2 303.2 151.5S491.3 407.5 320 407.5c-171.4 0-303.2-72.2-303.2-151.5S148.7 104.5 320 104.5m0-16.8C143.3 87.7 0 163 0 256s143.3 168.3 320 168.3S640 349 640 256 496.7 87.7 320 87.7zM218.2 242.5c-7.9 40.5-35.8 36.3-70.1 36.3l13.7-70.6c38 0 63.8-4.1 56.4 34.3zM97.4 350.3h36.7l8.7-44.8c41.1 0 66.6 3 90.2-19.1 26.1-24 32.9-66.7 14.3-88.1-9.7-11.2-25.3-16.7-46.5-16.7h-70.7L97.4 350.3zm185.7-213.6h36.5l-8.7 44.8c31.5 0 60.7-2.3 74.8 10.7 14.8 13.6 7.7 31-8.3 113.1h-37c15.4-79.4 18.3-86 12.7-92-5.4-5.8-17.7-4.6-47.4-4.6l-18.8 96.6h-36.5l32.7-168.6zM505 242.5c-8 41.1-36.7 36.3-70.1 36.3l13.7-70.6c38.2 0 63.8-4.1 56.4 34.3zM384.2 350.3H421l8.7-44.8c43.2 0 67.1 2.5 90.2-19.1 26.1-24 32.9-66.7 14.3-88.1-9.7-11.2-25.3-16.7-46.5-16.7H417l-32.8 168.7z"],
	"pied-piper": [480, 512, [], "f2ae", "M455.93,23.2C429.23,30,387.79,51.69,341.35,90.66A206,206,0,0,0,240,64C125.13,64,32,157.12,32,272s93.13,208,208,208,208-93.13,208-208a207.25,207.25,0,0,0-58.75-144.81,155.35,155.35,0,0,0-17,27.4A176.16,176.16,0,0,1,417.1,272c0,97.66-79.44,177.11-177.09,177.11a175.81,175.81,0,0,1-87.63-23.4c82.94-107.33,150.79-37.77,184.31-226.65,5.79-32.62,28-94.26,126.23-160.18C471,33.45,465.35,20.8,455.93,23.2ZM125,406.4A176.66,176.66,0,0,1,62.9,272C62.9,174.34,142.35,94.9,240,94.9a174,174,0,0,1,76.63,17.75C250.64,174.76,189.77,265.52,125,406.4Z"],
	"pied-piper-alt": [576, 512, [], "f1a8", "M244 246c-3.2-2-6.3-2.9-10.1-2.9-6.6 0-12.6 3.2-19.3 3.7l1.7 4.9zm135.9 197.9c-19 0-64.1 9.5-79.9 19.8l6.9 45.1c35.7 6.1 70.1 3.6 106-9.8-4.8-10-23.5-55.1-33-55.1zM340.8 177c6.6 2.8 11.5 9.2 22.7 22.1 2-1.4 7.5-5.2 7.5-8.6 0-4.9-11.8-13.2-13.2-23 11.2-5.7 25.2-6 37.6-8.9 68.1-16.4 116.3-52.9 146.8-116.7C548.3 29.3 554 16.1 554.6 2l-2 2.6c-28.4 50-33 63.2-81.3 100-31.9 24.4-69.2 40.2-106.6 54.6l-6.3-.3v-21.8c-19.6 1.6-19.7-14.6-31.6-23-18.7 20.6-31.6 40.8-58.9 51.1-12.7 4.8-19.6 10-25.9 21.8 34.9-16.4 91.2-13.5 98.8-10zM555.5 0l-.6 1.1-.3.9.6-.6zm-59.2 382.1c-33.9-56.9-75.3-118.4-150-115.5l-.3-6c-1.1-13.5 32.8 3.2 35.1-31l-14.4 7.2c-19.8-45.7-8.6-54.3-65.5-54.3-14.7 0-26.7 1.7-41.4 4.6 2.9 18.6 2.2 36.7-10.9 50.3l19.5 5.5c-1.7 3.2-2.9 6.3-2.9 9.8 0 21 42.8 2.9 42.8 33.6 0 18.4-36.8 60.1-54.9 60.1-8 0-53.7-50-53.4-60.1l.3-4.6 52.3-11.5c13-2.6 12.3-22.7-2.9-22.7-3.7 0-43.1 9.2-49.4 10.6-2-5.2-7.5-14.1-13.8-14.1-3.2 0-6.3 3.2-9.5 4-9.2 2.6-31 2.9-21.5 20.1L15.9 298.5c-5.5 1.1-8.9 6.3-8.9 11.8 0 6 5.5 10.9 11.5 10.9 8 0 131.3-28.4 147.4-32.2 2.6 3.2 4.6 6.3 7.8 8.6 20.1 14.4 59.8 85.9 76.4 85.9 24.1 0 58-22.4 71.3-41.9 3.2-4.3 6.9-7.5 12.4-6.9.6 13.8-31.6 34.2-33 43.7-1.4 10.2-1 35.2-.3 41.1 26.7 8.1 52-3.6 77.9-2.9 4.3-21 10.6-41.9 9.8-63.5l-.3-9.5c-1.4-34.2-10.9-38.5-34.8-58.6-1.1-1.1-2.6-2.6-3.7-4 2.2-1.4 1.1-1 4.6-1.7 88.5 0 56.3 183.6 111.5 229.9 33.1-15 72.5-27.9 103.5-47.2-29-25.6-52.6-45.7-72.7-79.9zm-196.2 46.1v27.2l11.8-3.4-2.9-23.8zm-68.7-150.4l24.1 61.2 21-13.8-31.3-50.9zm84.4 154.9l2 12.4c9-1.5 58.4-6.6 58.4-14.1 0-1.4-.6-3.2-.9-4.6-26.8 0-36.9 3.8-59.5 6.3z"],
	"pied-piper-hat": [640, 512, [], "f4e5", "M640 24.9c-80.8 53.6-89.4 92.5-96.4 104.4-6.7 12.2-11.7 60.3-23.3 83.6-11.7 23.6-54.2 42.2-66.1 50-11.7 7.8-28.3 38.1-41.9 64.2-108.1-4.4-167.4 38.8-259.2 93.6 29.4-9.7 43.3-16.7 43.3-16.7 94.2-36 139.3-68.3 281.1-49.2 1.1 0 1.9.6 2.8.8 3.9 2.2 5.3 6.9 3.1 10.8l-53.9 95.8c-2.5 4.7-7.8 7.2-13.1 6.1-126.8-23.8-226.9 17.3-318.9 18.6C24.1 488 0 453.4 0 451.8c0-1.1.6-1.7 1.7-1.7 0 0 38.3 0 103.1-15.3C178.4 294.5 244 245.4 315.4 245.4c0 0 71.7 0 90.6 61.9 22.8-39.7 28.3-49.2 28.3-49.2 5.3-9.4 35-77.2 86.4-141.4 51.5-64 90.4-79.9 119.3-91.8z"],
	"pied-piper-pp": [448, 512, [], "f1a7", "M205.3 174.6c0 21.1-14.2 38.1-31.7 38.1-7.1 0-12.8-1.2-17.2-3.7v-68c4.4-2.7 10.1-4.2 17.2-4.2 17.5 0 31.7 16.9 31.7 37.8zm52.6 67c-7.1 0-12.8 1.5-17.2 4.2v68c4.4 2.5 10.1 3.7 17.2 3.7 17.4 0 31.7-16.9 31.7-37.8 0-21.1-14.3-38.1-31.7-38.1zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zM185 255.1c41 0 74.2-35.6 74.2-79.6 0-44-33.2-79.6-74.2-79.6-12 0-24.1 3.2-34.6 8.8h-45.7V311l51.8-10.1v-50.6c8.6 3.1 18.1 4.8 28.5 4.8zm158.4 25.3c0-44-33.2-79.6-73.9-79.6-3.2 0-6.4.2-9.6.7-3.7 12.5-10.1 23.8-19.2 33.4-13.8 15-32.2 23.8-51.8 24.8V416l51.8-10.1v-50.6c8.6 3.2 18.2 4.7 28.7 4.7 40.8 0 74-35.6 74-79.6z"],
	"pied-piper-square": [448, 512, [], "e01e", "M32 419L0 479.2l.8-328C.8 85.3 54 32 120 32h327.2c-93 28.9-189.9 94.2-253.9 168.6C122.7 282 82.6 338 32 419M448 32S305.2 98.8 261.6 199.1c-23.2 53.6-28.9 118.1-71 158.6-28.9 27.8-69.8 38.2-105.3 56.3-23.2 12-66.4 40.5-84.9 66h328.4c66 0 119.3-53.3 119.3-119.2-.1 0-.1-328.8-.1-328.8z"],
	"pinterest": [496, 512, [], "f0d2", "M496 256c0 137-111 248-248 248-25.6 0-50.2-3.9-73.4-11.1 10.1-16.5 25.2-43.5 30.8-65 3-11.6 15.4-59 15.4-59 8.1 15.4 31.7 28.5 56.8 28.5 74.8 0 128.7-68.8 128.7-154.3 0-81.9-66.9-143.2-152.9-143.2-107 0-163.9 71.8-163.9 150.1 0 36.4 19.4 81.7 50.3 96.1 4.7 2.2 7.2 1.2 8.3-3.3.8-3.4 5-20.3 6.9-28.1.6-2.5.3-4.7-1.7-7.1-10.1-12.5-18.3-35.3-18.3-56.6 0-54.7 41.4-107.6 112-107.6 60.9 0 103.6 41.5 103.6 100.9 0 67.1-33.9 113.6-78 113.6-24.3 0-42.6-20.1-36.7-44.8 7-29.5 20.5-61.3 20.5-82.6 0-19-10.2-34.9-31.4-34.9-24.9 0-44.9 25.7-44.9 60.2 0 22 7.4 36.8 7.4 36.8s-24.5 103.8-29 123.2c-5 21.4-3 51.6-.9 71.2C65.4 450.9 0 361.1 0 256 0 119 111 8 248 8s248 111 248 248z"],
	"pinterest-p": [384, 512, [], "f231", "M204 6.5C101.4 6.5 0 74.9 0 185.6 0 256 39.6 296 63.6 296c9.9 0 15.6-27.6 15.6-35.4 0-9.3-23.7-29.1-23.7-67.8 0-80.4 61.2-137.4 140.4-137.4 68.1 0 118.5 38.7 118.5 109.8 0 53.1-21.3 152.7-90.3 152.7-24.9 0-46.2-18-46.2-43.8 0-37.8 26.4-74.4 26.4-113.4 0-66.2-93.9-54.2-93.9 25.8 0 16.8 2.1 35.4 9.6 50.7-13.8 59.4-42 147.9-42 209.1 0 18.9 2.7 37.5 4.5 56.4 3.4 3.8 1.7 3.4 6.9 1.5 50.4-69 48.6-82.5 71.4-172.8 12.3 23.4 44.1 36 69.3 36 106.2 0 153.9-103.5 153.9-196.8C384 71.3 298.2 6.5 204 6.5z"],
	"pinterest-square": [448, 512, [], "f0d3", "M448 80v352c0 26.5-21.5 48-48 48H154.4c9.8-16.4 22.4-40 27.4-59.3 3-11.5 15.3-58.4 15.3-58.4 8 15.3 31.4 28.2 56.3 28.2 74.1 0 127.4-68.1 127.4-152.7 0-81.1-66.2-141.8-151.4-141.8-106 0-162.2 71.1-162.2 148.6 0 36 19.2 80.8 49.8 95.1 4.7 2.2 7.1 1.2 8.2-3.3.8-3.4 5-20.1 6.8-27.8.6-2.5.3-4.6-1.7-7-10.1-12.3-18.3-34.9-18.3-56 0-54.2 41-106.6 110.9-106.6 60.3 0 102.6 41.1 102.6 99.9 0 66.4-33.5 112.4-77.2 112.4-24.1 0-42.1-19.9-36.4-44.4 6.9-29.2 20.3-60.7 20.3-81.8 0-53-75.5-45.7-75.5 25 0 21.7 7.3 36.5 7.3 36.5-31.4 132.8-36.1 134.5-29.6 192.6l2.2.8H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48z"],
	"playstation": [576, 512, [], "f3df", "M570.9 372.3c-11.3 14.2-38.8 24.3-38.8 24.3L327 470.2v-54.3l150.9-53.8c17.1-6.1 19.8-14.8 5.8-19.4-13.9-4.6-39.1-3.3-56.2 2.9L327 381.1v-56.4c23.2-7.8 47.1-13.6 75.7-16.8 40.9-4.5 90.9.6 130.2 15.5 44.2 14 49.2 34.7 38 48.9zm-224.4-92.5v-139c0-16.3-3-31.3-18.3-35.6-11.7-3.8-19 7.1-19 23.4v347.9l-93.8-29.8V32c39.9 7.4 98 24.9 129.2 35.4C424.1 94.7 451 128.7 451 205.2c0 74.5-46 102.8-104.5 74.6zM43.2 410.2c-45.4-12.8-53-39.5-32.3-54.8 19.1-14.2 51.7-24.9 51.7-24.9l134.5-47.8v54.5l-96.8 34.6c-17.1 6.1-19.7 14.8-5.8 19.4 13.9 4.6 39.1 3.3 56.2-2.9l46.4-16.9v48.8c-51.6 9.3-101.4 7.3-153.9-10z"],
	"product-hunt": [512, 512, [], "f288", "M326.3 218.8c0 20.5-16.7 37.2-37.2 37.2h-70.3v-74.4h70.3c20.5 0 37.2 16.7 37.2 37.2zM504 256c0 137-111 248-248 248S8 393 8 256 119 8 256 8s248 111 248 248zm-128.1-37.2c0-47.9-38.9-86.8-86.8-86.8H169.2v248h49.6v-74.4h70.3c47.9 0 86.8-38.9 86.8-86.8z"],
	"pushed": [432, 512, [], "f3e1", "M407 111.9l-98.5-9 14-33.4c10.4-23.5-10.8-40.4-28.7-37L22.5 76.9c-15.1 2.7-26 18.3-21.4 36.6l105.1 348.3c6.5 21.3 36.7 24.2 47.7 7l35.3-80.8 235.2-231.3c16.4-16.8 4.3-42.9-17.4-44.8zM297.6 53.6c5.1-.7 7.5 2.5 5.2 7.4L286 100.9 108.6 84.6l189-31zM22.7 107.9c-3.1-5.1 1-10 6.1-9.1l248.7 22.7-96.9 230.7L22.7 107.9zM136 456.4c-2.6 4-7.9 3.1-9.4-1.2L43.5 179.7l127.7 197.6c-7 15-35.2 79.1-35.2 79.1zm272.8-314.5L210.1 337.3l89.7-213.7 106.4 9.7c4 1.1 5.7 5.3 2.6 8.6z"],
	"python": [448, 512, [], "f3e2", "M439.8 200.5c-7.7-30.9-22.3-54.2-53.4-54.2h-40.1v47.4c0 36.8-31.2 67.8-66.8 67.8H172.7c-29.2 0-53.4 25-53.4 54.3v101.8c0 29 25.2 46 53.4 54.3 33.8 9.9 66.3 11.7 106.8 0 26.9-7.8 53.4-23.5 53.4-54.3v-40.7H226.2v-13.6h160.2c31.1 0 42.6-21.7 53.4-54.2 11.2-33.5 10.7-65.7 0-108.6zM286.2 404c11.1 0 20.1 9.1 20.1 20.3 0 11.3-9 20.4-20.1 20.4-11 0-20.1-9.2-20.1-20.4.1-11.3 9.1-20.3 20.1-20.3zM167.8 248.1h106.8c29.7 0 53.4-24.5 53.4-54.3V91.9c0-29-24.4-50.7-53.4-55.6-35.8-5.9-74.7-5.6-106.8.1-45.2 8-53.4 24.7-53.4 55.6v40.7h106.9v13.6h-147c-31.1 0-58.3 18.7-66.8 54.2-9.8 40.7-10.2 66.1 0 108.6 7.6 31.6 25.7 54.2 56.8 54.2H101v-48.8c0-35.3 30.5-66.4 66.8-66.4zm-6.7-142.6c-11.1 0-20.1-9.1-20.1-20.3.1-11.3 9-20.4 20.1-20.4 11 0 20.1 9.2 20.1 20.4s-9 20.3-20.1 20.3z"],
	"qq": [448, 512, [], "f1d6", "M433.754 420.445c-11.526 1.393-44.86-52.741-44.86-52.741 0 31.345-16.136 72.247-51.051 101.786 16.842 5.192 54.843 19.167 45.803 34.421-7.316 12.343-125.51 7.881-159.632 4.037-34.122 3.844-152.316 8.306-159.632-4.037-9.045-15.25 28.918-29.214 45.783-34.415-34.92-29.539-51.059-70.445-51.059-101.792 0 0-33.334 54.134-44.859 52.741-5.37-.65-12.424-29.644 9.347-99.704 10.261-33.024 21.995-60.478 40.144-105.779C60.683 98.063 108.982.006 224 0c113.737.006 163.156 96.133 160.264 214.963 18.118 45.223 29.912 72.85 40.144 105.778 21.768 70.06 14.716 99.053 9.346 99.704z"],
	"quinscape": [512, 512, [], "f459", "M313.6 474.6h-1a158.1 158.1 0 0 1 0-316.2c94.9 0 168.2 83.1 157 176.6 4 5.1 8.2 9.6 11.2 15.3 13.4-30.3 20.3-62.4 20.3-97.7C501.1 117.5 391.6 8 256.5 8S12 117.5 12 252.6s109.5 244.6 244.5 244.6a237.36 237.36 0 0 0 70.4-10.1c-5.2-3.5-8.9-8.1-13.3-12.5zm-.1-.1l.4.1zm78.4-168.9a99.2 99.2 0 1 0 99.2 99.2 99.18 99.18 0 0 0-99.2-99.2z"],
	"quora": [448, 512, [], "f2c4", "M440.5 386.7h-29.3c-1.5 13.5-10.5 30.8-33 30.8-20.5 0-35.3-14.2-49.5-35.8 44.2-34.2 74.7-87.5 74.7-153C403.5 111.2 306.8 32 205 32 105.3 32 7.3 111.7 7.3 228.7c0 134.1 131.3 221.6 249 189C276 451.3 302 480 351.5 480c81.8 0 90.8-75.3 89-93.3zM297 329.2C277.5 300 253.3 277 205.5 277c-30.5 0-54.3 10-69 22.8l12.2 24.3c6.2-3 13-4 19.8-4 35.5 0 53.7 30.8 69.2 61.3-10 3-20.7 4.2-32.7 4.2-75 0-107.5-53-107.5-156.7C97.5 124.5 130 71 205 71c76.2 0 108.7 53.5 108.7 157.7.1 41.8-5.4 75.6-16.7 100.5z"],
	"r-project": [581, 512, [], "f4f7", "M581 226.6C581 119.1 450.9 32 290.5 32S0 119.1 0 226.6C0 322.4 103.3 402 239.4 418.1V480h99.1v-61.5c24.3-2.7 47.6-7.4 69.4-13.9L448 480h112l-67.4-113.7c54.5-35.4 88.4-84.9 88.4-139.7zm-466.8 14.5c0-73.5 98.9-133 220.8-133s211.9 40.7 211.9 133c0 50.1-26.5 85-70.3 106.4-2.4-1.6-4.7-2.9-6.4-3.7-10.2-5.2-27.8-10.5-27.8-10.5s86.6-6.4 86.6-92.7-90.6-87.9-90.6-87.9h-199V361c-74.1-21.5-125.2-67.1-125.2-119.9zm225.1 38.3v-55.6c57.8 0 87.8-6.8 87.8 27.3 0 36.5-38.2 28.3-87.8 28.3zm-.9 72.5H365c10.8 0 18.9 11.7 24 19.2-16.1 1.9-33 2.8-50.6 2.9v-22.1z"],
	"raspberry-pi": [407, 512, [], "f7bb", "M372 232.5l-3.7-6.5c.1-46.4-21.4-65.3-46.5-79.7 7.6-2 15.4-3.6 17.6-13.2 13.1-3.3 15.8-9.4 17.1-15.8 3.4-2.3 14.8-8.7 13.6-19.7 6.4-4.4 10-10.1 8.1-18.1 6.9-7.5 8.7-13.7 5.8-19.4 8.3-10.3 4.6-15.6 1.1-20.9 6.2-11.2.7-23.2-16.6-21.2-6.9-10.1-21.9-7.8-24.2-7.8-2.6-3.2-6-6-16.5-4.7-6.8-6.1-14.4-5-22.3-2.1-9.3-7.3-15.5-1.4-22.6.8C271.6.6 269 5.5 263.5 7.6c-12.3-2.6-16.1 3-22 8.9l-6.9-.1c-18.6 10.8-27.8 32.8-31.1 44.1-3.3-11.3-12.5-33.3-31.1-44.1l-6.9.1c-5.9-5.9-9.7-11.5-22-8.9-5.6-2-8.1-7-19.4-3.4-4.6-1.4-8.9-4.4-13.9-4.3-2.6.1-5.5 1-8.7 3.5-7.9-3-15.5-4-22.3 2.1-10.5-1.3-14 1.4-16.5 4.7-2.3 0-17.3-2.3-24.2 7.8C21.2 16 15.8 28 22 39.2c-3.5 5.4-7.2 10.7 1.1 20.9-2.9 5.7-1.1 11.9 5.8 19.4-1.8 8 1.8 13.7 8.1 18.1-1.2 11 10.2 17.4 13.6 19.7 1.3 6.4 4 12.4 17.1 15.8 2.2 9.5 10 11.2 17.6 13.2-25.1 14.4-46.6 33.3-46.5 79.7l-3.7 6.5c-28.8 17.2-54.7 72.7-14.2 117.7 2.6 14.1 7.1 24.2 11 35.4 5.9 45.2 44.5 66.3 54.6 68.8 14.9 11.2 30.8 21.8 52.2 29.2C159 504.2 181 512 203 512h1c22.1 0 44-7.8 64.2-28.4 21.5-7.4 37.3-18 52.2-29.2 10.2-2.5 48.7-23.6 54.6-68.8 3.9-11.2 8.4-21.3 11-35.4 40.6-45.1 14.7-100.5-14-117.7zm-22.2-8c-1.5 18.7-98.9-65.1-82.1-67.9 45.7-7.5 83.6 19.2 82.1 67.9zm-43 93.1c-24.5 15.8-59.8 5.6-78.8-22.8s-14.6-64.2 9.9-80c24.5-15.8 59.8-5.6 78.8 22.8s14.6 64.2-9.9 80zM238.9 29.3c.8 4.2 1.8 6.8 2.9 7.6 5.4-5.8 9.8-11.7 16.8-17.3 0 3.3-1.7 6.8 2.5 9.4 3.7-5 8.8-9.5 15.5-13.3-3.2 5.6-.6 7.3 1.2 9.6 5.1-4.4 10-8.8 19.4-12.3-2.6 3.1-6.2 6.2-2.4 9.8 5.3-3.3 10.6-6.6 23.1-8.9-2.8 3.1-8.7 6.3-5.1 9.4 6.6-2.5 14-4.4 22.1-5.4-3.9 3.2-7.1 6.3-3.9 8.8 7.1-2.2 16.9-5.1 26.4-2.6l-6 6.1c-.7.8 14.1.6 23.9.8-3.6 5-7.2 9.7-9.3 18.2 1 1 5.8.4 10.4 0-4.7 9.9-12.8 12.3-14.7 16.6 2.9 2.2 6.8 1.6 11.2.1-3.4 6.9-10.4 11.7-16 17.3 1.4 1 3.9 1.6 9.7.9-5.2 5.5-11.4 10.5-18.8 15 1.3 1.5 5.8 1.5 10 1.6-6.7 6.5-15.3 9.9-23.4 14.2 4 2.7 6.9 2.1 10 2.1-5.7 4.7-15.4 7.1-24.4 10 1.7 2.7 3.4 3.4 7.1 4.1-9.5 5.3-23.2 2.9-27 5.6.9 2.7 3.6 4.4 6.7 5.8-15.4.9-57.3-.6-65.4-32.3 15.7-17.3 44.4-37.5 93.7-62.6-38.4 12.8-73 30-102 53.5-34.3-15.9-10.8-55.9 5.8-71.8zm-34.4 114.6c24.2-.3 54.1 17.8 54 34.7-.1 15-21 27.1-53.8 26.9-32.1-.4-53.7-15.2-53.6-29.8 0-11.9 26.2-32.5 53.4-31.8zm-123-12.8c3.7-.7 5.4-1.5 7.1-4.1-9-2.8-18.7-5.3-24.4-10 3.1 0 6 .7 10-2.1-8.1-4.3-16.7-7.7-23.4-14.2 4.2-.1 8.7 0 10-1.6-7.4-4.5-13.6-9.5-18.8-15 5.8.7 8.3.1 9.7-.9-5.6-5.6-12.7-10.4-16-17.3 4.3 1.5 8.3 2 11.2-.1-1.9-4.2-10-6.7-14.7-16.6 4.6.4 9.4 1 10.4 0-2.1-8.5-5.8-13.3-9.3-18.2 9.8-.1 24.6 0 23.9-.8l-6-6.1c9.5-2.5 19.3.4 26.4 2.6 3.2-2.5-.1-5.6-3.9-8.8 8.1 1.1 15.4 2.9 22.1 5.4 3.5-3.1-2.3-6.3-5.1-9.4 12.5 2.3 17.8 5.6 23.1 8.9 3.8-3.6.2-6.7-2.4-9.8 9.4 3.4 14.3 7.9 19.4 12.3 1.7-2.3 4.4-4 1.2-9.6 6.7 3.8 11.8 8.3 15.5 13.3 4.1-2.6 2.5-6.2 2.5-9.4 7 5.6 11.4 11.5 16.8 17.3 1.1-.8 2-3.4 2.9-7.6 16.6 15.9 40.1 55.9 6 71.8-29-23.5-63.6-40.7-102-53.5 49.3 25 78 45.3 93.7 62.6-8 31.8-50 33.2-65.4 32.3 3.1-1.4 5.8-3.2 6.7-5.8-4-2.8-17.6-.4-27.2-5.6zm60.1 24.1c16.8 2.8-80.6 86.5-82.1 67.9-1.5-48.7 36.5-75.5 82.1-67.9zM38.2 342c-23.7-18.8-31.3-73.7 12.6-98.3 26.5-7 9 107.8-12.6 98.3zm91 98.2c-13.3 7.9-45.8 4.7-68.8-27.9-15.5-27.4-13.5-55.2-2.6-63.4 16.3-9.8 41.5 3.4 60.9 25.6 16.9 20 24.6 55.3 10.5 65.7zm-26.4-119.7c-24.5-15.8-28.9-51.6-9.9-80s54.3-38.6 78.8-22.8 28.9 51.6 9.9 80c-19.1 28.4-54.4 38.6-78.8 22.8zM205 496c-29.4 1.2-58.2-23.7-57.8-32.3-.4-12.7 35.8-22.6 59.3-22 23.7-1 55.6 7.5 55.7 18.9.5 11-28.8 35.9-57.2 35.4zm58.9-124.9c.2 29.7-26.2 53.8-58.8 54-32.6.2-59.2-23.8-59.4-53.4v-.6c-.2-29.7 26.2-53.8 58.8-54 32.6-.2 59.2 23.8 59.4 53.4v.6zm82.2 42.7c-25.3 34.6-59.6 35.9-72.3 26.3-13.3-12.4-3.2-50.9 15.1-72 20.9-23.3 43.3-38.5 58.9-26.6 10.5 10.3 16.7 49.1-1.7 72.3zm22.9-73.2c-21.5 9.4-39-105.3-12.6-98.3 43.9 24.7 36.3 79.6 12.6 98.3z"],
	"ravelry": [512, 512, [], "f2d9", "M498.252,234.223c-1.208-10.34-1.7-20.826-3.746-31a310.306,310.306,0,0,0-9.622-36.6,184.068,184.068,0,0,0-30.874-57.5,251.154,251.154,0,0,0-18.818-21.689,237.362,237.362,0,0,0-47.113-36.116A240.8,240.8,0,0,0,331.356,26.65c-11.018-3.1-22.272-5.431-33.515-7.615-6.78-1.314-13.749-1.667-20.627-2.482-.316-.036-.6-.358-.9-.553q-16.143.009-32.288.006c-2.41.389-4.808.925-7.236,1.15a179.331,179.331,0,0,0-34.256,7.1,221.5,221.5,0,0,0-39.768,16.355,281.385,281.385,0,0,0-38.08,24.158c-6.167,4.61-12.268,9.36-17.974,14.518C96.539,88.494,86.34,97.72,76.785,107.555a243.878,243.878,0,0,0-33.648,43.95,206.488,206.488,0,0,0-20.494,44.6,198.2,198.2,0,0,0-7.691,34.759A201.13,201.13,0,0,0,13.4,266.385a299.716,299.716,0,0,0,4.425,40.24,226.865,226.865,0,0,0,16.73,53.3,210.543,210.543,0,0,0,24,39.528,213.589,213.589,0,0,0,26.358,28.416A251.313,251.313,0,0,0,126.7,458.455a287.831,287.831,0,0,0,55.9,25.277,269.5,269.5,0,0,0,40.641,9.835c6.071,1.01,12.275,1.253,18.412,1.873a4.149,4.149,0,0,1,1.19.56h32.289c2.507-.389,5-.937,7.527-1.143,16.336-1.332,32.107-5.335,47.489-10.717A219.992,219.992,0,0,0,379.1,460.322c9.749-6.447,19.395-13.077,28.737-20.1,5.785-4.348,10.988-9.5,16.3-14.457,3.964-3.7,7.764-7.578,11.51-11.5a232.162,232.162,0,0,0,31.427-41.639c9.542-16.045,17.355-32.905,22.3-50.926,2.859-10.413,4.947-21.045,7.017-31.652,1.032-5.279,1.251-10.723,1.87-16.087.036-.317.358-.6.552-.9V236.005A9.757,9.757,0,0,1,498.252,234.223Zm-161.117-1.15s-16.572-2.98-28.47-2.98c-27.2,0-33.57,14.9-33.57,37.04V360.8H201.582V170.062H275.1v31.931c8.924-26.822,26.771-36.189,62.04-36.189Z"],
	"react": [512, 512, [], "f41b", "M418.2 177.2c-5.4-1.8-10.8-3.5-16.2-5.1.9-3.7 1.7-7.4 2.5-11.1 12.3-59.6 4.2-107.5-23.1-123.3-26.3-15.1-69.2.6-112.6 38.4-4.3 3.7-8.5 7.6-12.5 11.5-2.7-2.6-5.5-5.2-8.3-7.7-45.5-40.4-91.1-57.4-118.4-41.5-26.2 15.2-34 60.3-23 116.7 1.1 5.6 2.3 11.1 3.7 16.7-6.4 1.8-12.7 3.8-18.6 5.9C38.3 196.2 0 225.4 0 255.6c0 31.2 40.8 62.5 96.3 81.5 4.5 1.5 9 3 13.6 4.3-1.5 6-2.8 11.9-4 18-10.5 55.5-2.3 99.5 23.9 114.6 27 15.6 72.4-.4 116.6-39.1 3.5-3.1 7-6.3 10.5-9.7 4.4 4.3 9 8.4 13.6 12.4 42.8 36.8 85.1 51.7 111.2 36.6 27-15.6 35.8-62.9 24.4-120.5-.9-4.4-1.9-8.9-3-13.5 3.2-.9 6.3-1.9 9.4-2.9 57.7-19.1 99.5-50 99.5-81.7 0-30.3-39.4-59.7-93.8-78.4zM282.9 92.3c37.2-32.4 71.9-45.1 87.7-36 16.9 9.7 23.4 48.9 12.8 100.4-.7 3.4-1.4 6.7-2.3 10-22.2-5-44.7-8.6-67.3-10.6-13-18.6-27.2-36.4-42.6-53.1 3.9-3.7 7.7-7.2 11.7-10.7zM167.2 307.5c5.1 8.7 10.3 17.4 15.8 25.9-15.6-1.7-31.1-4.2-46.4-7.5 4.4-14.4 9.9-29.3 16.3-44.5 4.6 8.8 9.3 17.5 14.3 26.1zm-30.3-120.3c14.4-3.2 29.7-5.8 45.6-7.8-5.3 8.3-10.5 16.8-15.4 25.4-4.9 8.5-9.7 17.2-14.2 26-6.3-14.9-11.6-29.5-16-43.6zm27.4 68.9c6.6-13.8 13.8-27.3 21.4-40.6s15.8-26.2 24.4-38.9c15-1.1 30.3-1.7 45.9-1.7s31 .6 45.9 1.7c8.5 12.6 16.6 25.5 24.3 38.7s14.9 26.7 21.7 40.4c-6.7 13.8-13.9 27.4-21.6 40.8-7.6 13.3-15.7 26.2-24.2 39-14.9 1.1-30.4 1.6-46.1 1.6s-30.9-.5-45.6-1.4c-8.7-12.7-16.9-25.7-24.6-39s-14.8-26.8-21.5-40.6zm180.6 51.2c5.1-8.8 9.9-17.7 14.6-26.7 6.4 14.5 12 29.2 16.9 44.3-15.5 3.5-31.2 6.2-47 8 5.4-8.4 10.5-17 15.5-25.6zm14.4-76.5c-4.7-8.8-9.5-17.6-14.5-26.2-4.9-8.5-10-16.9-15.3-25.2 16.1 2 31.5 4.7 45.9 8-4.6 14.8-10 29.2-16.1 43.4zM256.2 118.3c10.5 11.4 20.4 23.4 29.6 35.8-19.8-.9-39.7-.9-59.5 0 9.8-12.9 19.9-24.9 29.9-35.8zM140.2 57c16.8-9.8 54.1 4.2 93.4 39 2.5 2.2 5 4.6 7.6 7-15.5 16.7-29.8 34.5-42.9 53.1-22.6 2-45 5.5-67.2 10.4-1.3-5.1-2.4-10.3-3.5-15.5-9.4-48.4-3.2-84.9 12.6-94zm-24.5 263.6c-4.2-1.2-8.3-2.5-12.4-3.9-21.3-6.7-45.5-17.3-63-31.2-10.1-7-16.9-17.8-18.8-29.9 0-18.3 31.6-41.7 77.2-57.6 5.7-2 11.5-3.8 17.3-5.5 6.8 21.7 15 43 24.5 63.6-9.6 20.9-17.9 42.5-24.8 64.5zm116.6 98c-16.5 15.1-35.6 27.1-56.4 35.3-11.1 5.3-23.9 5.8-35.3 1.3-15.9-9.2-22.5-44.5-13.5-92 1.1-5.6 2.3-11.2 3.7-16.7 22.4 4.8 45 8.1 67.9 9.8 13.2 18.7 27.7 36.6 43.2 53.4-3.2 3.1-6.4 6.1-9.6 8.9zm24.5-24.3c-10.2-11-20.4-23.2-30.3-36.3 9.6.4 19.5.6 29.5.6 10.3 0 20.4-.2 30.4-.7-9.2 12.7-19.1 24.8-29.6 36.4zm130.7 30c-.9 12.2-6.9 23.6-16.5 31.3-15.9 9.2-49.8-2.8-86.4-34.2-4.2-3.6-8.4-7.5-12.7-11.5 15.3-16.9 29.4-34.8 42.2-53.6 22.9-1.9 45.7-5.4 68.2-10.5 1 4.1 1.9 8.2 2.7 12.2 4.9 21.6 5.7 44.1 2.5 66.3zm18.2-107.5c-2.8.9-5.6 1.8-8.5 2.6-7-21.8-15.6-43.1-25.5-63.8 9.6-20.4 17.7-41.4 24.5-62.9 5.2 1.5 10.2 3.1 15 4.7 46.6 16 79.3 39.8 79.3 58 0 19.6-34.9 44.9-84.8 61.4zm-149.7-15c25.3 0 45.8-20.5 45.8-45.8s-20.5-45.8-45.8-45.8c-25.3 0-45.8 20.5-45.8 45.8s20.5 45.8 45.8 45.8z"],
	"reacteurope": [576, 512, [], "f75d", "M250.6 211.74l5.8-4.1 5.8 4.1-2.1-6.8 5.7-4.3-7.1-.1-2.3-6.8-2.3 6.8-7.2.1 5.7 4.3zm63.7 0l5.8-4.1 5.8 4.1-2.1-6.8 5.7-4.3-7.2-.1-2.3-6.8-2.3 6.8-7.2.1 5.7 4.3zm-91.3 50.5h-3.4c-4.8 0-3.8 4-3.8 12.1 0 4.7-2.3 6.1-5.8 6.1s-5.8-1.4-5.8-6.1v-36.6c0-4.7 2.3-6.1 5.8-6.1s5.8 1.4 5.8 6.1c0 7.2-.7 10.5 3.8 10.5h3.4c4.7-.1 3.8-3.9 3.8-12.3 0-9.9-6.7-14.1-16.8-14.1h-.2c-10.1 0-16.8 4.2-16.8 14.1V276c0 10.4 6.7 14.1 16.8 14.1h.2c10.1 0 16.8-3.8 16.8-14.1 0-9.86 1.1-13.76-3.8-13.76zm-80.7 17.4h-14.7v-19.3H139c2.5 0 3.8-1.3 3.8-3.8v-2.1c0-2.5-1.3-3.8-3.8-3.8h-11.4v-18.3H142c2.5 0 3.8-1.3 3.8-3.8v-2.1c0-2.5-1.3-3.8-3.8-3.8h-21.7c-2.4-.1-3.7 1.3-3.7 3.8v59.1c0 2.5 1.3 3.8 3.8 3.8h21.9c2.5 0 3.8-1.3 3.8-3.8v-2.1c0-2.5-1.3-3.8-3.8-3.8zm-42-18.5c4.6-2 7.3-6 7.3-12.4v-11.9c0-10.1-6.7-14.1-16.8-14.1H77.4c-2.5 0-3.8 1.3-3.8 3.8v59.1c0 2.5 1.3 3.8 3.8 3.8h3.4c2.5 0 3.8-1.3 3.8-3.8v-22.9h5.6l7.4 23.5a4.1 4.1 0 0 0 4.3 3.2h3.3c2.8 0 4-1.8 3.2-4.4zm-3.8-14c0 4.8-2.5 6.1-6.1 6.1h-5.8v-20.9h5.8c3.6 0 6.1 1.3 6.1 6.1zM176 226a3.82 3.82 0 0 0-4.2-3.4h-6.9a3.68 3.68 0 0 0-4 3.4l-11 59.2c-.5 2.7.9 4.1 3.4 4.1h3a3.74 3.74 0 0 0 4.1-3.5l1.8-11.3h12.2l1.8 11.3a3.74 3.74 0 0 0 4.1 3.5h3.5c2.6 0 3.9-1.4 3.4-4.1zm-12.3 39.3l4.7-29.7 4.7 29.7zm89.3 20.2v-53.2h7.5c2.5 0 3.8-1.3 3.8-3.8v-2.1c0-2.5-1.3-3.8-3.8-3.8h-25.8c-2.5 0-3.8 1.3-3.8 3.8v2.1c0 2.5 1.3 3.8 3.8 3.8h7.3v53.2c0 2.5 1.3 3.8 3.8 3.8h3.4c2.5.04 3.8-1.3 3.8-3.76zm248-.8h-19.4V258h16.1a1.89 1.89 0 0 0 2-2v-.8a1.89 1.89 0 0 0-2-2h-16.1v-25.8h19.1a1.89 1.89 0 0 0 2-2v-.8a1.77 1.77 0 0 0-2-1.9h-22.2a1.62 1.62 0 0 0-2 1.8v63a1.81 1.81 0 0 0 2 1.9H501a1.81 1.81 0 0 0 2-1.9v-.8a1.84 1.84 0 0 0-2-1.96zm-93.1-62.9h-.8c-10.1 0-15.3 4.7-15.3 14.1V276c0 9.3 5.2 14.1 15.3 14.1h.8c10.1 0 15.3-4.8 15.3-14.1v-40.1c0-9.36-5.2-14.06-15.3-14.06zm10.2 52.4c-.1 8-3 11.1-10.5 11.1s-10.5-3.1-10.5-11.1v-36.6c0-7.9 3-11.1 10.5-11.1s10.5 3.2 10.5 11.1zm-46.5-14.5c6.1-1.6 9.2-6.1 9.2-13.3v-9.7c0-9.4-5.2-14.1-15.3-14.1h-13.7a1.81 1.81 0 0 0-2 1.9v63a1.81 1.81 0 0 0 2 1.9h1.2a1.74 1.74 0 0 0 1.9-1.9v-26.9h11.6l10.4 27.2a2.32 2.32 0 0 0 2.3 1.5h1.5c1.4 0 2-1 1.5-2.3zm-6.4-3.9H355v-28.5h10.2c7.5 0 10.5 3.1 10.5 11.1v6.4c0 7.84-3 11.04-10.5 11.04zm85.9-33.1h-13.7a1.62 1.62 0 0 0-2 1.8v63a1.81 1.81 0 0 0 2 1.9h1.2a1.74 1.74 0 0 0 1.9-1.9v-26.1h10.6c10.1 0 15.3-4.8 15.3-14.1v-10.5c0-9.4-5.2-14.1-15.3-14.1zm10.2 22.8c0 7.9-3 11.1-10.5 11.1h-10.2v-29.2h10.2c7.5-.1 10.5 3.1 10.5 11zM259.5 308l-2.3-6.8-2.3 6.8-7.1.1 5.7 4.3-2.1 6.8 5.8-4.1 5.8 4.1-2.1-6.8 5.7-4.3zm227.6-136.1a364.42 364.42 0 0 0-35.6-11.3c19.6-78 11.6-134.7-22.3-153.9C394.7-12.66 343.3 11 291 61.94q5.1 4.95 10.2 10.2c82.5-80 119.6-53.5 120.9-52.8 22.4 12.7 36 55.8 15.5 137.8a587.83 587.83 0 0 0-84.6-13C281.1 43.64 212.4 2 170.8 2 140 2 127 23 123.2 29.74c-18.1 32-13.3 84.2.1 133.8-70.5 20.3-120.7 54.1-120.3 95 .5 59.6 103.2 87.8 122.1 92.8-20.5 81.9-10.1 135.6 22.3 153.9 28 15.8 75.1 6 138.2-55.2q-5.1-4.95-10.2-10.2c-82.5 80-119.7 53.5-120.9 52.8-22.3-12.6-36-55.6-15.5-137.9 12.4 2.9 41.8 9.5 84.6 13 71.9 100.4 140.6 142 182.1 142 30.8 0 43.8-21 47.6-27.7 18-31.9 13.3-84.1-.1-133.8 152.3-43.8 156.2-130.2 33.9-176.3zM135.9 36.84c2.9-5.1 11.9-20.3 34.9-20.3 36.8 0 98.8 39.6 163.3 126.2a714 714 0 0 0-93.9.9 547.76 547.76 0 0 1 42.2-52.4Q277.3 86 272.2 81a598.25 598.25 0 0 0-50.7 64.2 569.69 569.69 0 0 0-84.4 14.6c-.2-1.4-24.3-82.2-1.2-123zm304.8 438.3c-2.9 5.1-11.8 20.3-34.9 20.3-36.7 0-98.7-39.4-163.3-126.2a695.38 695.38 0 0 0 93.9-.9 547.76 547.76 0 0 1-42.2 52.4q5.1 5.25 10.2 10.2a588.47 588.47 0 0 0 50.7-64.2c47.3-4.7 80.3-13.5 84.4-14.6 22.7 84.4 4.5 117 1.2 123zm9.1-138.6c-3.6-11.9-7.7-24.1-12.4-36.4a12.67 12.67 0 0 1-10.7-5.7l-.1.1a19.61 19.61 0 0 1-5.4 3.6c5.7 14.3 10.6 28.4 14.7 42.2a535.3 535.3 0 0 1-72 13c3.5-5.3 17.2-26.2 32.2-54.2a24.6 24.6 0 0 1-6-3.2c-1.1 1.2-3.6 4.2-10.9 4.2-6.2 11.2-17.4 30.9-33.9 55.2a711.91 711.91 0 0 1-112.4 1c-7.9-11.2-21.5-31.1-36.8-57.8a21 21 0 0 1-3-1.5c-1.9 1.6-3.9 3.2-12.6 3.2 6.3 11.2 17.5 30.7 33.8 54.6a548.81 548.81 0 0 1-72.2-11.7q5.85-21 14.1-42.9c-3.2 0-5.4.2-8.4-1a17.58 17.58 0 0 1-6.9 1c-4.9 13.4-9.1 26.5-12.7 39.4C-31.7 297-12.1 216 126.7 175.64c3.6 11.9 7.7 24.1 12.4 36.4 10.4 0 12.9 3.4 14.4 5.3a12 12 0 0 1 2.3-2.2c-5.8-14.7-10.9-29.2-15.2-43.3 7-1.8 32.4-8.4 72-13-15.9 24.3-26.7 43.9-32.8 55.3a14.22 14.22 0 0 1 6.4 8 23.42 23.42 0 0 1 10.2-8.4c6.5-11.7 17.9-31.9 34.8-56.9a711.72 711.72 0 0 1 112.4-1c31.5 44.6 28.9 48.1 42.5 64.5a21.42 21.42 0 0 1 10.4-7.4c-6.4-11.4-17.6-31-34.3-55.5 40.4 4.1 65 10 72.2 11.7-4 14.4-8.9 29.2-14.6 44.2a20.74 20.74 0 0 1 6.8 4.3l.1.1a12.72 12.72 0 0 1 8.9-5.6c4.9-13.4 9.2-26.6 12.8-39.5a359.71 359.71 0 0 1 34.5 11c106.1 39.9 74 87.9 72.6 90.4-19.8 35.1-80.1 55.2-105.7 62.5zm-114.4-114h-1.2a1.74 1.74 0 0 0-1.9 1.9v49.8c0 7.9-2.6 11.1-10.1 11.1s-10.1-3.1-10.1-11.1v-49.8a1.69 1.69 0 0 0-1.9-1.9H309a1.81 1.81 0 0 0-2 1.9v51.5c0 9.6 5 14.1 15.1 14.1h.4c10.1 0 15.1-4.6 15.1-14.1v-51.5a2 2 0 0 0-2.2-1.9zM321.7 308l-2.3-6.8-2.3 6.8-7.1.1 5.7 4.3-2.1 6.8 5.8-4.1 5.8 4.1-2.1-6.8 5.7-4.3zm-31.1 7.4l-2.3-6.8-2.3 6.8-7.1.1 5.7 4.3-2.1 6.8 5.8-4.1 5.8 4.1-2.1-6.8 5.7-4.3zm5.1-30.8h-19.4v-26.7h16.1a1.89 1.89 0 0 0 2-2v-.8a1.89 1.89 0 0 0-2-2h-16.1v-25.8h19.1a1.89 1.89 0 0 0 2-2v-.8a1.77 1.77 0 0 0-2-1.9h-22.2a1.81 1.81 0 0 0-2 1.9v63a1.81 1.81 0 0 0 2 1.9h22.5a1.77 1.77 0 0 0 2-1.9v-.8a1.83 1.83 0 0 0-2-2.06zm-7.4-99.4L286 192l-7.1.1 5.7 4.3-2.1 6.8 5.8-4.1 5.8 4.1-2.1-6.8 5.7-4.3-7.1-.1z"],
	"readme": [576, 512, [], "f4d5", "M528.3 46.5H388.5c-48.1 0-89.9 33.3-100.4 80.3-10.6-47-52.3-80.3-100.4-80.3H48c-26.5 0-48 21.5-48 48v245.8c0 26.5 21.5 48 48 48h89.7c102.2 0 132.7 24.4 147.3 75 .7 2.8 5.2 2.8 6 0 14.7-50.6 45.2-75 147.3-75H528c26.5 0 48-21.5 48-48V94.6c0-26.4-21.3-47.9-47.7-48.1zM242 311.9c0 1.9-1.5 3.5-3.5 3.5H78.2c-1.9 0-3.5-1.5-3.5-3.5V289c0-1.9 1.5-3.5 3.5-3.5h160.4c1.9 0 3.5 1.5 3.5 3.5v22.9zm0-60.9c0 1.9-1.5 3.5-3.5 3.5H78.2c-1.9 0-3.5-1.5-3.5-3.5v-22.9c0-1.9 1.5-3.5 3.5-3.5h160.4c1.9 0 3.5 1.5 3.5 3.5V251zm0-60.9c0 1.9-1.5 3.5-3.5 3.5H78.2c-1.9 0-3.5-1.5-3.5-3.5v-22.9c0-1.9 1.5-3.5 3.5-3.5h160.4c1.9 0 3.5 1.5 3.5 3.5v22.9zm259.3 121.7c0 1.9-1.5 3.5-3.5 3.5H337.5c-1.9 0-3.5-1.5-3.5-3.5v-22.9c0-1.9 1.5-3.5 3.5-3.5h160.4c1.9 0 3.5 1.5 3.5 3.5v22.9zm0-60.9c0 1.9-1.5 3.5-3.5 3.5H337.5c-1.9 0-3.5-1.5-3.5-3.5V228c0-1.9 1.5-3.5 3.5-3.5h160.4c1.9 0 3.5 1.5 3.5 3.5v22.9zm0-60.9c0 1.9-1.5 3.5-3.5 3.5H337.5c-1.9 0-3.5-1.5-3.5-3.5v-22.8c0-1.9 1.5-3.5 3.5-3.5h160.4c1.9 0 3.5 1.5 3.5 3.5V190z"],
	"rebel": [512, 512, [], "f1d0", "M256.5 504C117.2 504 9 387.8 13.2 249.9 16 170.7 56.4 97.7 129.7 49.5c.3 0 1.9-.6 1.1.8-5.8 5.5-111.3 129.8-14.1 226.4 49.8 49.5 90 2.5 90 2.5 38.5-50.1-.6-125.9-.6-125.9-10-24.9-45.7-40.1-45.7-40.1l28.8-31.8c24.4 10.5 43.2 38.7 43.2 38.7.8-29.6-21.9-61.4-21.9-61.4L255.1 8l44.3 50.1c-20.5 28.8-21.9 62.6-21.9 62.6 13.8-23 43.5-39.3 43.5-39.3l28.5 31.8c-27.4 8.9-45.4 39.9-45.4 39.9-15.8 28.5-27.1 89.4.6 127.3 32.4 44.6 87.7-2.8 87.7-2.8 102.7-91.9-10.5-225-10.5-225-6.1-5.5.8-2.8.8-2.8 50.1 36.5 114.6 84.4 116.2 204.8C500.9 400.2 399 504 256.5 504z"],
	"red-river": [448, 512, [], "f3e3", "M353.2 32H94.8C42.4 32 0 74.4 0 126.8v258.4C0 437.6 42.4 480 94.8 480h258.4c52.4 0 94.8-42.4 94.8-94.8V126.8c0-52.4-42.4-94.8-94.8-94.8zM144.9 200.9v56.3c0 27-21.9 48.9-48.9 48.9V151.9c0-13.2 10.7-23.9 23.9-23.9h154.2c0 27-21.9 48.9-48.9 48.9h-56.3c-12.3-.6-24.6 11.6-24 24zm176.3 72h-56.3c-12.3-.6-24.6 11.6-24 24v56.3c0 27-21.9 48.9-48.9 48.9V247.9c0-13.2 10.7-23.9 23.9-23.9h154.2c0 27-21.9 48.9-48.9 48.9z"],
	"reddit": [512, 512, [], "f1a1", "M201.5 305.5c-13.8 0-24.9-11.1-24.9-24.6 0-13.8 11.1-24.9 24.9-24.9 13.6 0 24.6 11.1 24.6 24.9 0 13.6-11.1 24.6-24.6 24.6zM504 256c0 137-111 248-248 248S8 393 8 256 119 8 256 8s248 111 248 248zm-132.3-41.2c-9.4 0-17.7 3.9-23.8 10-22.4-15.5-52.6-25.5-86.1-26.6l17.4-78.3 55.4 12.5c0 13.6 11.1 24.6 24.6 24.6 13.8 0 24.9-11.3 24.9-24.9s-11.1-24.9-24.9-24.9c-9.7 0-18 5.8-22.1 13.8l-61.2-13.6c-3-.8-6.1 1.4-6.9 4.4l-19.1 86.4c-33.2 1.4-63.1 11.3-85.5 26.8-6.1-6.4-14.7-10.2-24.1-10.2-34.9 0-46.3 46.9-14.4 62.8-1.1 5-1.7 10.2-1.7 15.5 0 52.6 59.2 95.2 132 95.2 73.1 0 132.3-42.6 132.3-95.2 0-5.3-.6-10.8-1.9-15.8 31.3-16 19.8-62.5-14.9-62.5zM302.8 331c-18.2 18.2-76.1 17.9-93.6 0-2.2-2.2-6.1-2.2-8.3 0-2.5 2.5-2.5 6.4 0 8.6 22.8 22.8 87.3 22.8 110.2 0 2.5-2.2 2.5-6.1 0-8.6-2.2-2.2-6.1-2.2-8.3 0zm7.7-75c-13.6 0-24.6 11.1-24.6 24.9 0 13.6 11.1 24.6 24.6 24.6 13.8 0 24.9-11.1 24.9-24.6 0-13.8-11-24.9-24.9-24.9z"],
	"reddit-alien": [512, 512, [], "f281", "M440.3 203.5c-15 0-28.2 6.2-37.9 15.9-35.7-24.7-83.8-40.6-137.1-42.3L293 52.3l88.2 19.8c0 21.6 17.6 39.2 39.2 39.2 22 0 39.7-18.1 39.7-39.7s-17.6-39.7-39.7-39.7c-15.4 0-28.7 9.3-35.3 22l-97.4-21.6c-4.9-1.3-9.7 2.2-11 7.1L246.3 177c-52.9 2.2-100.5 18.1-136.3 42.8-9.7-10.1-23.4-16.3-38.4-16.3-55.6 0-73.8 74.6-22.9 100.1-1.8 7.9-2.6 16.3-2.6 24.7 0 83.8 94.4 151.7 210.3 151.7 116.4 0 210.8-67.9 210.8-151.7 0-8.4-.9-17.2-3.1-25.1 49.9-25.6 31.5-99.7-23.8-99.7zM129.4 308.9c0-22 17.6-39.7 39.7-39.7 21.6 0 39.2 17.6 39.2 39.7 0 21.6-17.6 39.2-39.2 39.2-22 .1-39.7-17.6-39.7-39.2zm214.3 93.5c-36.4 36.4-139.1 36.4-175.5 0-4-3.5-4-9.7 0-13.7 3.5-3.5 9.7-3.5 13.2 0 27.8 28.5 120 29 149 0 3.5-3.5 9.7-3.5 13.2 0 4.1 4 4.1 10.2.1 13.7zm-.8-54.2c-21.6 0-39.2-17.6-39.2-39.2 0-22 17.6-39.7 39.2-39.7 22 0 39.7 17.6 39.7 39.7-.1 21.5-17.7 39.2-39.7 39.2z"],
	"reddit-square": [448, 512, [], "f1a2", "M283.2 345.5c2.7 2.7 2.7 6.8 0 9.2-24.5 24.5-93.8 24.6-118.4 0-2.7-2.4-2.7-6.5 0-9.2 2.4-2.4 6.5-2.4 8.9 0 18.7 19.2 81 19.6 100.5 0 2.4-2.3 6.6-2.3 9 0zm-91.3-53.8c0-14.9-11.9-26.8-26.5-26.8-14.9 0-26.8 11.9-26.8 26.8 0 14.6 11.9 26.5 26.8 26.5 14.6 0 26.5-11.9 26.5-26.5zm90.7-26.8c-14.6 0-26.5 11.9-26.5 26.8 0 14.6 11.9 26.5 26.5 26.5 14.9 0 26.8-11.9 26.8-26.5 0-14.9-11.9-26.8-26.8-26.8zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-99.7 140.6c-10.1 0-19 4.2-25.6 10.7-24.1-16.7-56.5-27.4-92.5-28.6l18.7-84.2 59.5 13.4c0 14.6 11.9 26.5 26.5 26.5 14.9 0 26.8-12.2 26.8-26.8 0-14.6-11.9-26.8-26.8-26.8-10.4 0-19.3 6.2-23.8 14.9l-65.7-14.6c-3.3-.9-6.5 1.5-7.4 4.8l-20.5 92.8c-35.7 1.5-67.8 12.2-91.9 28.9-6.5-6.8-15.8-11-25.9-11-37.5 0-49.8 50.4-15.5 67.5-1.2 5.4-1.8 11-1.8 16.7 0 56.5 63.7 102.3 141.9 102.3 78.5 0 142.2-45.8 142.2-102.3 0-5.7-.6-11.6-2.1-17 33.6-17.2 21.2-67.2-16.1-67.2z"],
	"redhat": [512, 512, [], "f7bc", "M341.52 285.56c33.65 0 82.34-6.94 82.34-47 .22-6.74.86-1.82-20.88-96.24-4.62-19.15-8.68-27.84-42.31-44.65-26.09-13.34-82.92-35.37-99.73-35.37-15.66 0-20.2 20.17-38.87 20.17-18 0-31.31-15.06-48.12-15.06-16.14 0-26.66 11-34.78 33.62-27.5 77.55-26.28 74.27-26.12 78.27 0 24.8 97.64 106.11 228.47 106.11M429 254.84c4.65 22 4.65 24.35 4.65 27.25 0 37.66-42.33 58.56-98 58.56-125.74.08-235.91-73.65-235.91-122.33a49.55 49.55 0 0 1 4.06-19.72C58.56 200.86 0 208.93 0 260.63c0 84.67 200.63 189 359.49 189 121.79 0 152.51-55.08 152.51-98.58 0-34.21-29.59-73.05-82.93-96.24"],
	"renren": [512, 512, [], "f18b", "M214 169.1c0 110.4-61 205.4-147.6 247.4C30 373.2 8 317.7 8 256.6 8 133.9 97.1 32.2 214 12.5v156.6zM255 504c-42.9 0-83.3-11-118.5-30.4C193.7 437.5 239.9 382.9 255 319c15.5 63.9 61.7 118.5 118.8 154.7C338.7 493 298.3 504 255 504zm190.6-87.5C359 374.5 298 279.6 298 169.1V12.5c116.9 19.7 206 121.4 206 244.1 0 61.1-22 116.6-58.4 159.9z"],
	"replyd": [448, 512, [], "f3e6", "M320 480H128C57.6 480 0 422.4 0 352V160C0 89.6 57.6 32 128 32h192c70.4 0 128 57.6 128 128v192c0 70.4-57.6 128-128 128zM193.4 273.2c-6.1-2-11.6-3.1-16.4-3.1-7.2 0-13.5 1.9-18.9 5.6-5.4 3.7-9.6 9-12.8 15.8h-1.1l-4.2-18.3h-28v138.9h36.1v-89.7c1.5-5.4 4.4-9.8 8.7-13.2 4.3-3.4 9.8-5.1 16.2-5.1 4.6 0 9.8 1 15.6 3.1l4.8-34zm115.2 103.4c-3.2 2.4-7.7 4.8-13.7 7.1-6 2.3-12.8 3.5-20.4 3.5-12.2 0-21.1-3-26.5-8.9-5.5-5.9-8.5-14.7-9-26.4h83.3c.9-4.8 1.6-9.4 2.1-13.9.5-4.4.7-8.6.7-12.5 0-10.7-1.6-19.7-4.7-26.9-3.2-7.2-7.3-13-12.5-17.2-5.2-4.3-11.1-7.3-17.8-9.2-6.7-1.8-13.5-2.8-20.6-2.8-21.1 0-37.5 6.1-49.2 18.3s-17.5 30.5-17.5 55c0 22.8 5.2 40.7 15.6 53.7 10.4 13.1 26.8 19.6 49.2 19.6 10.7 0 20.9-1.5 30.4-4.6 9.5-3.1 17.1-6.8 22.6-11.2l-12-23.6zm-21.8-70.3c3.8 5.4 5.3 13.1 4.6 23.1h-51.7c.9-9.4 3.7-17 8.2-22.6 4.5-5.6 11.5-8.5 21-8.5 8.2-.1 14.1 2.6 17.9 8zm79.9 2.5c4.1 3.9 9.4 5.8 16.1 5.8 7 0 12.6-1.9 16.7-5.8s6.1-9.1 6.1-15.6-2-11.6-6.1-15.4c-4.1-3.8-9.6-5.7-16.7-5.7-6.7 0-12 1.9-16.1 5.7-4.1 3.8-6.1 8.9-6.1 15.4s2 11.7 6.1 15.6zm0 100.5c4.1 3.9 9.4 5.8 16.1 5.8 7 0 12.6-1.9 16.7-5.8s6.1-9.1 6.1-15.6-2-11.6-6.1-15.4c-4.1-3.8-9.6-5.7-16.7-5.7-6.7 0-12 1.9-16.1 5.7-4.1 3.8-6.1 8.9-6.1 15.4 0 6.6 2 11.7 6.1 15.6z"],
	"researchgate": [448, 512, [], "f4f8", "M0 32v448h448V32H0zm262.2 334.4c-6.6 3-33.2 6-50-14.2-9.2-10.6-25.3-33.3-42.2-63.6-8.9 0-14.7 0-21.4-.6v46.4c0 23.5 6 21.2 25.8 23.9v8.1c-6.9-.3-23.1-.8-35.6-.8-13.1 0-26.1.6-33.6.8v-8.1c15.5-2.9 22-1.3 22-23.9V225c0-22.6-6.4-21-22-23.9V193c25.8 1 53.1-.6 70.9-.6 31.7 0 55.9 14.4 55.9 45.6 0 21.1-16.7 42.2-39.2 47.5 13.6 24.2 30 45.6 42.2 58.9 7.2 7.8 17.2 14.7 27.2 14.7v7.3zm22.9-135c-23.3 0-32.2-15.7-32.2-32.2V167c0-12.2 8.8-30.4 34-30.4s30.4 17.9 30.4 17.9l-10.7 7.2s-5.5-12.5-19.7-12.5c-7.9 0-19.7 7.3-19.7 19.7v26.8c0 13.4 6.6 23.3 17.9 23.3 14.1 0 21.5-10.9 21.5-26.8h-17.9v-10.7h30.4c0 20.5 4.7 49.9-34 49.9zm-116.5 44.7c-9.4 0-13.6-.3-20-.8v-69.7c6.4-.6 15-.6 22.5-.6 23.3 0 37.2 12.2 37.2 34.5 0 21.9-15 36.6-39.7 36.6z"],
	"resolving": [496, 512, [], "f3e7", "M281.2 278.2c46-13.3 49.6-23.5 44-43.4L314 195.5c-6.1-20.9-18.4-28.1-71.1-12.8L54.7 236.8l28.6 98.6 197.9-57.2zM248.5 8C131.4 8 33.2 88.7 7.2 197.5l221.9-63.9c34.8-10.2 54.2-11.7 79.3-8.2 36.3 6.1 52.7 25 61.4 55.2l10.7 37.8c8.2 28.1 1 50.6-23.5 73.6-19.4 17.4-31.2 24.5-61.4 33.2L203 351.8l220.4 27.1 9.7 34.2-48.1 13.3-286.8-37.3 23 80.2c36.8 22 80.3 34.7 126.3 34.7 137 0 248.5-111.4 248.5-248.3C497 119.4 385.5 8 248.5 8zM38.3 388.6L0 256.8c0 48.5 14.3 93.4 38.3 131.8z"],
	"rev": [448, 512, [], "f5b2", "M289.67 274.89a65.57 65.57 0 1 1-65.56-65.56 65.64 65.64 0 0 1 65.56 65.56zm139.55-5.05h-.13a204.69 204.69 0 0 0-74.32-153l-45.38 26.2a157.07 157.07 0 0 1 71.81 131.84C381.2 361.5 310.73 432 224.11 432S67 361.5 67 274.88c0-81.88 63-149.27 143-156.43v39.12l108.77-62.79L210 32v38.32c-106.7 7.25-191 96-191 204.57 0 111.59 89.12 202.29 200.06 205v.11h210.16V269.84z"],
	"rocketchat": [576, 512, [], "f3e8", "M284.046,224.8a34.114,34.114,0,1,0,34.317,34.113A34.217,34.217,0,0,0,284.046,224.8Zm-110.45,0a34.114,34.114,0,1,0,34.317,34.113A34.217,34.217,0,0,0,173.6,224.8Zm220.923,0a34.114,34.114,0,1,0,34.317,34.113A34.215,34.215,0,0,0,394.519,224.8Zm153.807-55.319c-15.535-24.172-37.31-45.57-64.681-63.618-52.886-34.817-122.374-54-195.666-54a405.975,405.975,0,0,0-72.032,6.357,238.524,238.524,0,0,0-49.51-36.588C99.684-11.7,40.859.711,11.135,11.421A14.291,14.291,0,0,0,5.58,34.782C26.542,56.458,61.222,99.3,52.7,138.252c-33.142,33.9-51.112,74.776-51.112,117.337,0,43.372,17.97,84.248,51.112,118.148,8.526,38.956-26.154,81.816-47.116,103.491a14.284,14.284,0,0,0,5.555,23.34c29.724,10.709,88.549,23.147,155.324-10.2a238.679,238.679,0,0,0,49.51-36.589A405.972,405.972,0,0,0,288,460.14c73.313,0,142.8-19.159,195.667-53.975,27.371-18.049,49.145-39.426,64.679-63.619,17.309-26.923,26.07-55.916,26.07-86.125C574.394,225.4,565.634,196.43,548.326,169.485ZM284.987,409.9a345.65,345.65,0,0,1-89.446-11.5l-20.129,19.393a184.366,184.366,0,0,1-37.138,27.585,145.767,145.767,0,0,1-52.522,14.87c.983-1.771,1.881-3.563,2.842-5.356q30.258-55.68,16.325-100.078c-32.992-25.962-52.778-59.2-52.778-95.4,0-83.1,104.254-150.469,232.846-150.469s232.867,67.373,232.867,150.469C517.854,342.525,413.6,409.9,284.987,409.9Z"],
	"rockrms": [496, 512, [], "f3e9", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm157.4 419.5h-90l-112-131.3c-17.9-20.4-3.9-56.1 26.6-56.1h75.3l-84.6-99.3-84.3 98.9h-90L193.5 67.2c14.4-18.4 41.3-17.3 54.5 0l157.7 185.1c19 22.8 2 57.2-27.6 56.1-.6 0-74.2.2-74.2.2l101.5 118.9z"],
	"rust": [512, 512, [], "e07a", "M508.52,249.75,486.7,236.24c-.17-2-.34-3.93-.55-5.88l18.72-17.5a7.35,7.35,0,0,0-2.44-12.25l-24-9c-.54-1.88-1.08-3.78-1.67-5.64l15-20.83a7.35,7.35,0,0,0-4.79-11.54l-25.42-4.15c-.9-1.73-1.79-3.45-2.73-5.15l10.68-23.42a7.35,7.35,0,0,0-6.95-10.39l-25.82.91q-1.79-2.22-3.61-4.4L439,81.84A7.36,7.36,0,0,0,430.16,73L405,78.93q-2.17-1.83-4.4-3.61l.91-25.82a7.35,7.35,0,0,0-10.39-7L367.7,53.23c-1.7-.94-3.43-1.84-5.15-2.73L358.4,25.08a7.35,7.35,0,0,0-11.54-4.79L326,35.26c-1.86-.59-3.75-1.13-5.64-1.67l-9-24a7.35,7.35,0,0,0-12.25-2.44l-17.5,18.72c-1.95-.21-3.91-.38-5.88-.55L262.25,3.48a7.35,7.35,0,0,0-12.5,0L236.24,25.3c-2,.17-3.93.34-5.88.55L212.86,7.13a7.35,7.35,0,0,0-12.25,2.44l-9,24c-1.89.55-3.79,1.08-5.66,1.68l-20.82-15a7.35,7.35,0,0,0-11.54,4.79l-4.15,25.41c-1.73.9-3.45,1.79-5.16,2.73L120.88,42.55a7.35,7.35,0,0,0-10.39,7l.92,25.81c-1.49,1.19-3,2.39-4.42,3.61L81.84,73A7.36,7.36,0,0,0,73,81.84L78.93,107c-1.23,1.45-2.43,2.93-3.62,4.41l-25.81-.91a7.42,7.42,0,0,0-6.37,3.26,7.35,7.35,0,0,0-.57,7.13l10.66,23.41c-.94,1.7-1.83,3.43-2.73,5.16L25.08,153.6a7.35,7.35,0,0,0-4.79,11.54l15,20.82c-.59,1.87-1.13,3.77-1.68,5.66l-24,9a7.35,7.35,0,0,0-2.44,12.25l18.72,17.5c-.21,1.95-.38,3.91-.55,5.88L3.48,249.75a7.35,7.35,0,0,0,0,12.5L25.3,275.76c.17,2,.34,3.92.55,5.87L7.13,299.13a7.35,7.35,0,0,0,2.44,12.25l24,9c.55,1.89,1.08,3.78,1.68,5.65l-15,20.83a7.35,7.35,0,0,0,4.79,11.54l25.42,4.15c.9,1.72,1.79,3.45,2.73,5.14L42.56,391.12a7.35,7.35,0,0,0,.57,7.13,7.13,7.13,0,0,0,6.37,3.26l25.83-.91q1.77,2.22,3.6,4.4L73,430.16A7.36,7.36,0,0,0,81.84,439L107,433.07q2.18,1.83,4.41,3.61l-.92,25.82a7.35,7.35,0,0,0,10.39,6.95l23.43-10.68c1.69.94,3.42,1.83,5.14,2.73l4.15,25.42a7.34,7.34,0,0,0,11.54,4.78l20.83-15c1.86.6,3.76,1.13,5.65,1.68l9,24a7.36,7.36,0,0,0,12.25,2.44l17.5-18.72c1.95.21,3.92.38,5.88.55l13.51,21.82a7.35,7.35,0,0,0,12.5,0l13.51-21.82c2-.17,3.93-.34,5.88-.56l17.5,18.73a7.36,7.36,0,0,0,12.25-2.44l9-24c1.89-.55,3.78-1.08,5.65-1.68l20.82,15a7.34,7.34,0,0,0,11.54-4.78l4.15-25.42c1.72-.9,3.45-1.79,5.15-2.73l23.42,10.68a7.35,7.35,0,0,0,10.39-6.95l-.91-25.82q2.22-1.79,4.4-3.61L430.16,439a7.36,7.36,0,0,0,8.84-8.84L433.07,405q1.83-2.17,3.61-4.4l25.82.91a7.23,7.23,0,0,0,6.37-3.26,7.35,7.35,0,0,0,.58-7.13L458.77,367.7c.94-1.7,1.83-3.43,2.73-5.15l25.42-4.15a7.35,7.35,0,0,0,4.79-11.54l-15-20.83c.59-1.87,1.13-3.76,1.67-5.65l24-9a7.35,7.35,0,0,0,2.44-12.25l-18.72-17.5c.21-1.95.38-3.91.55-5.87l21.82-13.51a7.35,7.35,0,0,0,0-12.5Zm-151,129.08A13.91,13.91,0,0,0,341,389.51l-7.64,35.67A187.51,187.51,0,0,1,177,424.44l-7.64-35.66a13.87,13.87,0,0,0-16.46-10.68l-31.51,6.76a187.38,187.38,0,0,1-16.26-19.21H258.3c1.72,0,2.89-.29,2.89-1.91V309.55c0-1.57-1.17-1.91-2.89-1.91H213.47l.05-34.35H262c4.41,0,23.66,1.28,29.79,25.87,1.91,7.55,6.17,32.14,9.06,40,2.89,8.82,14.6,26.46,27.1,26.46H407a187.3,187.3,0,0,1-17.34,20.09Zm25.77,34.49A15.24,15.24,0,1,1,368,398.08h.44A15.23,15.23,0,0,1,383.24,413.32Zm-225.62-.68a15.24,15.24,0,1,1-15.25-15.25h.45A15.25,15.25,0,0,1,157.62,412.64ZM69.57,234.15l32.83-14.6a13.88,13.88,0,0,0,7.06-18.33L102.69,186h26.56V305.73H75.65A187.65,187.65,0,0,1,69.57,234.15ZM58.31,198.09a15.24,15.24,0,0,1,15.23-15.25H74a15.24,15.24,0,1,1-15.67,15.24Zm155.16,24.49.05-35.32h63.26c3.28,0,23.07,3.77,23.07,18.62,0,12.29-15.19,16.7-27.68,16.7ZM399,306.71c-9.8,1.13-20.63-4.12-22-10.09-5.78-32.49-15.39-39.4-30.57-51.4,18.86-11.95,38.46-29.64,38.46-53.26,0-25.52-17.49-41.59-29.4-49.48-16.76-11-35.28-13.23-40.27-13.23H116.32A187.49,187.49,0,0,1,221.21,70.06l23.47,24.6a13.82,13.82,0,0,0,19.6.44l26.26-25a187.51,187.51,0,0,1,128.37,91.43l-18,40.57A14,14,0,0,0,408,220.43l34.59,15.33a187.12,187.12,0,0,1,.4,32.54H423.71c-1.91,0-2.69,1.27-2.69,3.13v8.82C421,301,409.31,305.58,399,306.71ZM240,60.21A15.24,15.24,0,0,1,255.21,45h.45A15.24,15.24,0,1,1,240,60.21ZM436.84,214a15.24,15.24,0,1,1,0-30.48h.44a15.24,15.24,0,0,1-.44,30.48Z"],
	"safari": [512, 512, [], "f267", "M274.69,274.69l-37.38-37.38L166,346ZM256,8C119,8,8,119,8,256S119,504,256,504,504,393,504,256,393,8,256,8ZM411.85,182.79l14.78-6.13A8,8,0,0,1,437.08,181h0a8,8,0,0,1-4.33,10.46L418,197.57a8,8,0,0,1-10.45-4.33h0A8,8,0,0,1,411.85,182.79ZM314.43,94l6.12-14.78A8,8,0,0,1,331,74.92h0a8,8,0,0,1,4.33,10.45l-6.13,14.78a8,8,0,0,1-10.45,4.33h0A8,8,0,0,1,314.43,94ZM256,60h0a8,8,0,0,1,8,8V84a8,8,0,0,1-8,8h0a8,8,0,0,1-8-8V68A8,8,0,0,1,256,60ZM181,74.92a8,8,0,0,1,10.46,4.33L197.57,94a8,8,0,1,1-14.78,6.12l-6.13-14.78A8,8,0,0,1,181,74.92Zm-63.58,42.49h0a8,8,0,0,1,11.31,0L140,128.72A8,8,0,0,1,140,140h0a8,8,0,0,1-11.31,0l-11.31-11.31A8,8,0,0,1,117.41,117.41ZM60,256h0a8,8,0,0,1,8-8H84a8,8,0,0,1,8,8h0a8,8,0,0,1-8,8H68A8,8,0,0,1,60,256Zm40.15,73.21-14.78,6.13A8,8,0,0,1,74.92,331h0a8,8,0,0,1,4.33-10.46L94,314.43a8,8,0,0,1,10.45,4.33h0A8,8,0,0,1,100.15,329.21Zm4.33-136h0A8,8,0,0,1,94,197.57l-14.78-6.12A8,8,0,0,1,74.92,181h0a8,8,0,0,1,10.45-4.33l14.78,6.13A8,8,0,0,1,104.48,193.24ZM197.57,418l-6.12,14.78a8,8,0,0,1-14.79-6.12l6.13-14.78A8,8,0,1,1,197.57,418ZM264,444a8,8,0,0,1-8,8h0a8,8,0,0,1-8-8V428a8,8,0,0,1,8-8h0a8,8,0,0,1,8,8Zm67-6.92h0a8,8,0,0,1-10.46-4.33L314.43,418a8,8,0,0,1,4.33-10.45h0a8,8,0,0,1,10.45,4.33l6.13,14.78A8,8,0,0,1,331,437.08Zm63.58-42.49h0a8,8,0,0,1-11.31,0L372,383.28A8,8,0,0,1,372,372h0a8,8,0,0,1,11.31,0l11.31,11.31A8,8,0,0,1,394.59,394.59ZM286.25,286.25,110.34,401.66,225.75,225.75,401.66,110.34ZM437.08,331h0a8,8,0,0,1-10.45,4.33l-14.78-6.13a8,8,0,0,1-4.33-10.45h0A8,8,0,0,1,418,314.43l14.78,6.12A8,8,0,0,1,437.08,331ZM444,264H428a8,8,0,0,1-8-8h0a8,8,0,0,1,8-8h16a8,8,0,0,1,8,8h0A8,8,0,0,1,444,264Z"],
	"salesforce": [640, 512, [], "f83b", "M248.89 245.64h-26.35c.69-5.16 3.32-14.12 13.64-14.12 6.75 0 11.97 3.82 12.71 14.12zm136.66-13.88c-.47 0-14.11-1.77-14.11 20s13.63 20 14.11 20c13 0 14.11-13.54 14.11-20 0-21.76-13.66-20-14.11-20zm-243.22 23.76a8.63 8.63 0 0 0-3.29 7.29c0 4.78 2.08 6.05 3.29 7.05 4.7 3.7 15.07 2.12 20.93.95v-16.94c-5.32-1.07-16.73-1.96-20.93 1.65zM640 232c0 87.58-80 154.39-165.36 136.43-18.37 33-70.73 70.75-132.2 41.63-41.16 96.05-177.89 92.18-213.81-5.17C8.91 428.78-50.19 266.52 53.36 205.61 18.61 126.18 76 32 167.67 32a124.24 124.24 0 0 1 98.56 48.7c20.7-21.4 49.4-34.81 81.15-34.81 42.34 0 79 23.52 98.8 58.57C539 63.78 640 132.69 640 232zm-519.55 31.8c0-11.76-11.69-15.17-17.87-17.17-5.27-2.11-13.41-3.51-13.41-8.94 0-9.46 17-6.66 25.17-2.12 0 0 1.17.71 1.64-.47.24-.7 2.36-6.58 2.59-7.29a1.13 1.13 0 0 0-.7-1.41c-12.33-7.63-40.7-8.51-40.7 12.7 0 12.46 11.49 15.44 17.88 17.17 4.72 1.58 13.17 3 13.17 8.7 0 4-3.53 7.06-9.17 7.06a31.76 31.76 0 0 1-19-6.35c-.47-.23-1.42-.71-1.65.71l-2.4 7.47c-.47.94.23 1.18.23 1.41 1.75 1.4 10.3 6.59 22.82 6.59 13.17 0 21.4-7.06 21.4-18.11zm32-42.58c-10.13 0-18.66 3.17-21.4 5.18a1 1 0 0 0-.24 1.41l2.59 7.06a1 1 0 0 0 1.18.7c.65 0 6.8-4 16.93-4 4 0 7.06.71 9.18 2.36 3.6 2.8 3.06 8.29 3.06 10.58-4.79-.3-19.11-3.44-29.41 3.76a16.92 16.92 0 0 0-7.34 14.54c0 5.9 1.51 10.4 6.59 14.35 12.24 8.16 36.28 2 38.1 1.41 1.58-.32 3.53-.66 3.53-1.88v-33.88c.04-4.61.32-21.64-22.78-21.64zM199 200.24a1.11 1.11 0 0 0-1.18-1.18H188a1.11 1.11 0 0 0-1.17 1.18v79a1.11 1.11 0 0 0 1.17 1.18h9.88a1.11 1.11 0 0 0 1.18-1.18zm55.75 28.93c-2.1-2.31-6.79-7.53-17.65-7.53-3.51 0-14.16.23-20.7 8.94-6.35 7.63-6.58 18.11-6.58 21.41 0 3.12.15 14.26 7.06 21.17 2.64 2.91 9.06 8.23 22.81 8.23 10.82 0 16.47-2.35 18.58-3.76.47-.24.71-.71.24-1.88l-2.35-6.83a1.26 1.26 0 0 0-1.41-.7c-2.59.94-6.35 2.82-15.29 2.82-17.42 0-16.85-14.74-16.94-16.7h37.17a1.23 1.23 0 0 0 1.17-.94c-.29 0 2.07-14.7-6.09-24.23zm36.69 52.69c13.17 0 21.41-7.06 21.41-18.11 0-11.76-11.7-15.17-17.88-17.17-4.14-1.66-13.41-3.38-13.41-8.94 0-3.76 3.29-6.35 8.47-6.35a38.11 38.11 0 0 1 16.7 4.23s1.18.71 1.65-.47c.23-.7 2.35-6.58 2.58-7.29a1.13 1.13 0 0 0-.7-1.41c-7.91-4.9-16.74-4.94-20.23-4.94-12 0-20.46 7.29-20.46 17.64 0 12.46 11.48 15.44 17.87 17.17 6.11 2 13.17 3.26 13.17 8.7 0 4-3.52 7.06-9.17 7.06a31.8 31.8 0 0 1-19-6.35 1 1 0 0 0-1.65.71l-2.35 7.52c-.47.94.23 1.18.23 1.41 1.72 1.4 10.33 6.59 22.79 6.59zM357.09 224c0-.71-.24-1.18-1.18-1.18h-11.76c0-.14.94-8.94 4.47-12.47 4.16-4.15 11.76-1.64 12-1.64 1.17.47 1.41 0 1.64-.47l2.83-7.77c.7-.94 0-1.17-.24-1.41-5.09-2-17.35-2.87-24.46 4.24-5.48 5.48-7 13.92-8 19.52h-8.47a1.28 1.28 0 0 0-1.17 1.18l-1.42 7.76c0 .7.24 1.17 1.18 1.17h8.23c-8.51 47.9-8.75 50.21-10.35 55.52-1.08 3.62-3.29 6.9-5.88 7.76-.09 0-3.88 1.68-9.64-.24 0 0-.94-.47-1.41.71-.24.71-2.59 6.82-2.83 7.53s0 1.41.47 1.41c5.11 2 13 1.77 17.88 0 6.28-2.28 9.72-7.89 11.53-12.94 2.75-7.71 2.81-9.79 11.76-59.74h12.23a1.29 1.29 0 0 0 1.18-1.18zm53.39 16c-.56-1.68-5.1-18.11-25.17-18.11-15.25 0-23 10-25.16 18.11-1 3-3.18 14 0 23.52.09.3 4.41 18.12 25.16 18.12 14.95 0 22.9-9.61 25.17-18.12 3.21-9.61 1.01-20.52 0-23.52zm45.4-16.7c-5-1.65-16.62-1.9-22.11 5.41v-4.47a1.11 1.11 0 0 0-1.18-1.17h-9.4a1.11 1.11 0 0 0-1.18 1.17v55.28a1.12 1.12 0 0 0 1.18 1.18h9.64a1.12 1.12 0 0 0 1.18-1.18v-27.77c0-2.91.05-11.37 4.46-15.05 4.9-4.9 12-3.36 13.41-3.06a1.57 1.57 0 0 0 1.41-.94 74 74 0 0 0 3.06-8 1.16 1.16 0 0 0-.47-1.41zm46.81 54.1l-2.12-7.29c-.47-1.18-1.41-.71-1.41-.71-4.23 1.82-10.15 1.89-11.29 1.89-4.64 0-17.17-1.13-17.17-19.76 0-6.23 1.85-19.76 16.47-19.76a34.85 34.85 0 0 1 11.52 1.65s.94.47 1.18-.71c.94-2.59 1.64-4.47 2.59-7.53.23-.94-.47-1.17-.71-1.17-11.59-3.87-22.34-2.53-27.76 0-1.59.74-16.23 6.49-16.23 27.52 0 2.9-.58 30.11 28.94 30.11a44.45 44.45 0 0 0 15.52-2.83 1.3 1.3 0 0 0 .47-1.42zm53.87-39.52c-.8-3-5.37-16.23-22.35-16.23-16 0-23.52 10.11-25.64 18.59a38.58 38.58 0 0 0-1.65 11.76c0 25.87 18.84 29.4 29.88 29.4 10.82 0 16.46-2.35 18.58-3.76.47-.24.71-.71.24-1.88l-2.36-6.83a1.26 1.26 0 0 0-1.41-.7c-2.59.94-6.35 2.82-15.29 2.82-17.42 0-16.85-14.74-16.93-16.7h37.16a1.25 1.25 0 0 0 1.18-.94c-.24-.01.94-7.07-1.41-15.54zm-23.29-6.35c-10.33 0-13 9-13.64 14.12H546c-.88-11.92-7.62-14.13-12.73-14.13z"],
	"sass": [640, 512, [], "f41e", "M301.84 378.92c-.3.6-.6 1.08 0 0zm249.13-87a131.16 131.16 0 0 0-58 13.5c-5.9-11.9-12-22.3-13-30.1-1.2-9.1-2.5-14.5-1.1-25.3s7.7-26.1 7.6-27.2-1.4-6.6-14.3-6.7-24 2.5-25.29 5.9a122.83 122.83 0 0 0-5.3 19.1c-2.3 11.7-25.79 53.5-39.09 75.3-4.4-8.5-8.1-16-8.9-22-1.2-9.1-2.5-14.5-1.1-25.3s7.7-26.1 7.6-27.2-1.4-6.6-14.29-6.7-24 2.5-25.3 5.9-2.7 11.4-5.3 19.1-33.89 77.3-42.08 95.4c-4.2 9.2-7.8 16.6-10.4 21.6-.4.8-.7 1.3-.9 1.7.3-.5.5-1 .5-.8-2.2 4.3-3.5 6.7-3.5 6.7v.1c-1.7 3.2-3.6 6.1-4.5 6.1-.6 0-1.9-8.4.3-19.9 4.7-24.2 15.8-61.8 15.7-63.1-.1-.7 2.1-7.2-7.3-10.7-9.1-3.3-12.4 2.2-13.2 2.2s-1.4 2-1.4 2 10.1-42.4-19.39-42.4c-18.4 0-44 20.2-56.58 38.5-7.9 4.3-25 13.6-43 23.5-6.9 3.8-14 7.7-20.7 11.4-.5-.5-.9-1-1.4-1.5-35.79-38.2-101.87-65.2-99.07-116.5 1-18.7 7.5-67.8 127.07-127.4 98-48.8 176.35-35.4 189.84-5.6 19.4 42.5-41.89 121.6-143.66 133-38.79 4.3-59.18-10.7-64.28-16.3-5.3-5.9-6.1-6.2-8.1-5.1-3.3 1.8-1.2 7 0 10.1 3 7.9 15.5 21.9 36.79 28.9 18.7 6.1 64.18 9.5 119.17-11.8 61.78-23.8 109.87-90.1 95.77-145.6C386.52 18.32 293-.18 204.57 31.22c-52.69 18.7-109.67 48.1-150.66 86.4-48.69 45.6-56.48 85.3-53.28 101.9 11.39 58.9 92.57 97.3 125.06 125.7-1.6.9-3.1 1.7-4.5 2.5-16.29 8.1-78.18 40.5-93.67 74.7-17.5 38.8 2.9 66.6 16.29 70.4 41.79 11.6 84.58-9.3 107.57-43.6s20.2-79.1 9.6-99.5c-.1-.3-.3-.5-.4-.8 4.2-2.5 8.5-5 12.8-7.5 8.29-4.9 16.39-9.4 23.49-13.3-4 10.8-6.9 23.8-8.4 42.6-1.8 22 7.3 50.5 19.1 61.7 5.2 4.9 11.49 5 15.39 5 13.8 0 20-11.4 26.89-25 8.5-16.6 16-35.9 16-35.9s-9.4 52.2 16.3 52.2c9.39 0 18.79-12.1 23-18.3v.1s.2-.4.7-1.2c1-1.5 1.5-2.4 1.5-2.4v-.3c3.8-6.5 12.1-21.4 24.59-46 16.2-31.8 31.69-71.5 31.69-71.5a201.24 201.24 0 0 0 6.2 25.8c2.8 9.5 8.7 19.9 13.4 30-3.8 5.2-6.1 8.2-6.1 8.2a.31.31 0 0 0 .1.2c-3 4-6.4 8.3-9.9 12.5-12.79 15.2-28 32.6-30 37.6-2.4 5.9-1.8 10.3 2.8 13.7 3.4 2.6 9.4 3 15.69 2.5 11.5-.8 19.6-3.6 23.5-5.4a82.2 82.2 0 0 0 20.19-10.6c12.5-9.2 20.1-22.4 19.4-39.8-.4-9.6-3.5-19.2-7.3-28.2 1.1-1.6 2.3-3.3 3.4-5C434.8 301.72 450.1 270 450.1 270a201.24 201.24 0 0 0 6.2 25.8c2.4 8.1 7.09 17 11.39 25.7-18.59 15.1-30.09 32.6-34.09 44.1-7.4 21.3-1.6 30.9 9.3 33.1 4.9 1 11.9-1.3 17.1-3.5a79.46 79.46 0 0 0 21.59-11.1c12.5-9.2 24.59-22.1 23.79-39.6-.3-7.9-2.5-15.8-5.4-23.4 15.7-6.6 36.09-10.2 62.09-7.2 55.68 6.5 66.58 41.3 64.48 55.8s-13.8 22.6-17.7 25-5.1 3.3-4.8 5.1c.5 2.6 2.3 2.5 5.6 1.9 4.6-.8 29.19-11.8 30.29-38.7 1.6-34-31.09-71.4-89-71.1zm-429.18 144.7c-18.39 20.1-44.19 27.7-55.28 21.3C54.61 451 59.31 421.42 82 400c13.8-13 31.59-25 43.39-32.4 2.7-1.6 6.6-4 11.4-6.9.8-.5 1.2-.7 1.2-.7.9-.6 1.9-1.1 2.9-1.7 8.29 30.4.3 57.2-19.1 78.3zm134.36-91.4c-6.4 15.7-19.89 55.7-28.09 53.6-7-1.8-11.3-32.3-1.4-62.3 5-15.1 15.6-33.1 21.9-40.1 10.09-11.3 21.19-14.9 23.79-10.4 3.5 5.9-12.2 49.4-16.2 59.2zm111 53c-2.7 1.4-5.2 2.3-6.4 1.6-.9-.5 1.1-2.4 1.1-2.4s13.9-14.9 19.4-21.7c3.2-4 6.9-8.7 10.89-13.9 0 .5.1 1 .1 1.6-.13 17.9-17.32 30-25.12 34.8zm85.58-19.5c-2-1.4-1.7-6.1 5-20.7 2.6-5.7 8.59-15.3 19-24.5a36.18 36.18 0 0 1 1.9 10.8c-.1 22.5-16.2 30.9-25.89 34.4z"],
	"schlix": [448, 512, [], "f3ea", "M350.5 157.7l-54.2-46.1 73.4-39 78.3 44.2-97.5 40.9zM192 122.1l45.7-28.2 34.7 34.6-55.4 29-25-35.4zm-65.1 6.6l31.9-22.1L176 135l-36.7 22.5-12.4-28.8zm-23.3 88.2l-8.8-34.8 29.6-18.3 13.1 35.3-33.9 17.8zm-21.2-83.7l23.9-18.1 8.9 24-26.7 18.3-6.1-24.2zM59 206.5l-3.6-28.4 22.3-15.5 6.1 28.7L59 206.5zm-30.6 16.6l20.8-12.8 3.3 33.4-22.9 12-1.2-32.6zM1.4 268l19.2-10.2.4 38.2-21 8.8L1.4 268zm59.1 59.3l-28.3 8.3-1.6-46.8 25.1-10.7 4.8 49.2zM99 263.2l-31.1 13-5.2-40.8L90.1 221l8.9 42.2zM123.2 377l-41.6 5.9-8.1-63.5 35.2-10.8 14.5 68.4zm28.5-139.9l21.2 57.1-46.2 13.6-13.7-54.1 38.7-16.6zm85.7 230.5l-70.9-3.3-24.3-95.8 55.2-8.6 40 107.7zm-84.9-279.7l42.2-22.4 28 45.9-50.8 21.3-19.4-44.8zm41 94.9l61.3-18.7 52.8 86.6-79.8 11.3-34.3-79.2zm51.4-85.6l67.3-28.8 65.5 65.4-88.6 26.2-44.2-62.8z"],
	"scribd": [384, 512, [], "f28a", "M42.3 252.7c-16.1-19-24.7-45.9-24.8-79.9 0-100.4 75.2-153.1 167.2-153.1 98.6-1.6 156.8 49 184.3 70.6l-50.5 72.1-37.3-24.6 26.9-38.6c-36.5-24-79.4-36.5-123-35.8-50.7-.8-111.7 27.2-111.7 76.2 0 18.7 11.2 20.7 28.6 15.6 23.3-5.3 41.9.6 55.8 14 26.4 24.3 23.2 67.6-.7 91.9-29.2 29.5-85.2 27.3-114.8-8.4zm317.7 5.9c-15.5-18.8-38.9-29.4-63.2-28.6-38.1-2-71.1 28-70.5 67.2-.7 16.8 6 33 18.4 44.3 14.1 13.9 33 19.7 56.3 14.4 17.4-5.1 28.6-3.1 28.6 15.6 0 4.3-.5 8.5-1.4 12.7-16.7 40.9-59.5 64.4-121.4 64.4-51.9.2-102.4-16.4-144.1-47.3l33.7-39.4-35.6-27.4L0 406.3l15.4 13.8c52.5 46.8 120.4 72.5 190.7 72.2 51.4 0 94.4-10.5 133.6-44.1 57.1-51.4 54.2-149.2 20.3-189.6z"],
	"searchengin": [460, 512, [], "f3eb", "M220.6 130.3l-67.2 28.2V43.2L98.7 233.5l54.7-24.2v130.3l67.2-209.3zm-83.2-96.7l-1.3 4.7-15.2 52.9C80.6 106.7 52 145.8 52 191.5c0 52.3 34.3 95.9 83.4 105.5v53.6C57.5 340.1 0 272.4 0 191.6c0-80.5 59.8-147.2 137.4-158zm311.4 447.2c-11.2 11.2-23.1 12.3-28.6 10.5-5.4-1.8-27.1-19.9-60.4-44.4-33.3-24.6-33.6-35.7-43-56.7-9.4-20.9-30.4-42.6-57.5-52.4l-9.7-14.7c-24.7 16.9-53 26.9-81.3 28.7l2.1-6.6 15.9-49.5c46.5-11.9 80.9-54 80.9-104.2 0-54.5-38.4-102.1-96-107.1V32.3C254.4 37.4 320 106.8 320 191.6c0 33.6-11.2 64.7-29 90.4l14.6 9.6c9.8 27.1 31.5 48 52.4 57.4s32.2 9.7 56.8 43c24.6 33.2 42.7 54.9 44.5 60.3s.7 17.3-10.5 28.5zm-9.9-17.9c0-4.4-3.6-8-8-8s-8 3.6-8 8 3.6 8 8 8 8-3.6 8-8z"],
	"sellcast": [448, 512, [], "f2da", "M353.4 32H94.7C42.6 32 0 74.6 0 126.6v258.7C0 437.4 42.6 480 94.7 480h258.7c52.1 0 94.7-42.6 94.7-94.6V126.6c0-52-42.6-94.6-94.7-94.6zm-50 316.4c-27.9 48.2-89.9 64.9-138.2 37.2-22.9 39.8-54.9 8.6-42.3-13.2l15.7-27.2c5.9-10.3 19.2-13.9 29.5-7.9 18.6 10.8-.1-.1 18.5 10.7 27.6 15.9 63.4 6.3 79.4-21.3 15.9-27.6 6.3-63.4-21.3-79.4-17.8-10.2-.6-.4-18.6-10.6-24.6-14.2-3.4-51.9 21.6-37.5 18.6 10.8-.1-.1 18.5 10.7 48.4 28 65.1 90.3 37.2 138.5zm21.8-208.8c-17 29.5-16.3 28.8-19 31.5-6.5 6.5-16.3 8.7-26.5 3.6-18.6-10.8.1.1-18.5-10.7-27.6-15.9-63.4-6.3-79.4 21.3s-6.3 63.4 21.3 79.4c0 0 18.5 10.6 18.6 10.6 24.6 14.2 3.4 51.9-21.6 37.5-18.6-10.8.1.1-18.5-10.7-48.2-27.8-64.9-90.1-37.1-138.4 27.9-48.2 89.9-64.9 138.2-37.2l4.8-8.4c14.3-24.9 52-3.3 37.7 21.5z"],
	"sellsy": [640, 512, [], "f213", "M539.71 237.308c3.064-12.257 4.29-24.821 4.29-37.384C544 107.382 468.618 32 376.076 32c-77.22 0-144.634 53.012-163.02 127.781-15.322-13.176-34.934-20.53-55.157-20.53-46.271 0-83.962 37.69-83.962 83.961 0 7.354.92 15.015 3.065 22.369-42.9 20.225-70.785 63.738-70.785 111.234C6.216 424.843 61.68 480 129.401 480h381.198c67.72 0 123.184-55.157 123.184-123.184.001-56.384-38.916-106.025-94.073-119.508zM199.88 401.554c0 8.274-7.048 15.321-15.321 15.321H153.61c-8.274 0-15.321-7.048-15.321-15.321V290.626c0-8.273 7.048-15.321 15.321-15.321h30.949c8.274 0 15.321 7.048 15.321 15.321v110.928zm89.477 0c0 8.274-7.048 15.321-15.322 15.321h-30.949c-8.274 0-15.321-7.048-15.321-15.321V270.096c0-8.274 7.048-15.321 15.321-15.321h30.949c8.274 0 15.322 7.048 15.322 15.321v131.458zm89.477 0c0 8.274-7.047 15.321-15.321 15.321h-30.949c-8.274 0-15.322-7.048-15.322-15.321V238.84c0-8.274 7.048-15.321 15.322-15.321h30.949c8.274 0 15.321 7.048 15.321 15.321v162.714zm87.027 0c0 8.274-7.048 15.321-15.322 15.321h-28.497c-8.274 0-15.321-7.048-15.321-15.321V176.941c0-8.579 7.047-15.628 15.321-15.628h28.497c8.274 0 15.322 7.048 15.322 15.628v224.613z"],
	"servicestack": [496, 512, [], "f3ec", "M88 216c81.7 10.2 273.7 102.3 304 232H0c99.5-8.1 184.5-137 88-232zm32-152c32.3 35.6 47.7 83.9 46.4 133.6C249.3 231.3 373.7 321.3 400 448h96C455.3 231.9 222.8 79.5 120 64z"],
	"shirtsinbulk": [448, 512, [], "f214", "M100 410.3l30.6 13.4 4.4-9.9-30.6-13.4zm39.4 17.5l30.6 13.4 4.4-9.9-30.6-13.4zm172.1-14l4.4 9.9 30.6-13.4-4.4-9.9zM179.1 445l30.3 13.7 4.4-9.9-30.3-13.4zM60.4 392.8L91 406.2l4.4-9.6-30.6-13.7zm211.4 38.5l4.4 9.9 30.6-13.4-4.4-9.9zm-39.3 17.5l4.4 9.9 30.6-13.7-4.4-9.6zm118.4-52.2l4.4 9.6 30.6-13.4-4.4-9.9zM170 46.6h-33.5v10.5H170zm-47.2 0H89.2v10.5h33.5zm-47.3 0H42.3v10.5h33.3zm141.5 0h-33.2v10.5H217zm94.5 0H278v10.5h33.5zm47.3 0h-33.5v10.5h33.5zm-94.6 0H231v10.5h33.2zm141.5 0h-33.3v10.5h33.3zM52.8 351.1H42v33.5h10.8zm70-215.9H89.2v10.5h33.5zm-70 10.6h22.8v-10.5H42v33.5h10.8zm168.9 228.6c50.5 0 91.3-40.8 91.3-91.3 0-50.2-40.8-91.3-91.3-91.3-50.2 0-91.3 41.1-91.3 91.3 0 50.5 41.1 91.3 91.3 91.3zm-48.2-111.1c0-25.4 29.5-31.8 49.6-31.8 16.9 0 29.2 5.8 44.3 12l-8.8 16.9h-.9c-6.4-9.9-24.8-13.1-35.6-13.1-9 0-29.8 1.8-29.8 14.9 0 21.6 78.5-10.2 78.5 37.9 0 25.4-31.5 31.2-51 31.2-18.1 0-32.4-2.9-47.2-12.2l9-18.4h.9c6.1 12.2 23.6 14.9 35.9 14.9 8.7 0 32.7-1.2 32.7-14.3 0-26.1-77.6 6.3-77.6-38zM52.8 178.4H42V212h10.8zm342.4 206.2H406v-33.5h-10.8zM52.8 307.9H42v33.5h10.8zM0 3.7v406l221.7 98.6L448 409.7V3.7zm418.8 387.1L222 476.5 29.2 390.8V120.7h389.7v270.1zm0-299.3H29.2V32.9h389.7v58.6zm-366 130.1H42v33.5h10.8zm0 43.2H42v33.5h10.8zM170 135.2h-33.5v10.5H170zm225.2 163.1H406v-33.5h-10.8zm0-43.2H406v-33.5h-10.8zM217 135.2h-33.2v10.5H217zM395.2 212H406v-33.5h-10.8zm0 129.5H406V308h-10.8zm-131-206.3H231v10.5h33.2zm47.3 0H278v10.5h33.5zm83.7 33.6H406v-33.5h-33.5v10.5h22.8zm-36.4-33.6h-33.5v10.5h33.5z"],
	"shopify": [448, 512, [], "e057", "M388.32,104.1a4.66,4.66,0,0,0-4.4-4c-2,0-37.23-.8-37.23-.8s-21.61-20.82-29.62-28.83V503.2L442.76,472S388.72,106.5,388.32,104.1ZM288.65,70.47a116.67,116.67,0,0,0-7.21-17.61C271,32.85,255.42,22,237,22a15,15,0,0,0-4,.4c-.4-.8-1.2-1.2-1.6-2C223.4,11.63,213,7.63,200.58,8c-24,.8-48,18-67.25,48.83-13.61,21.62-24,48.84-26.82,70.06-27.62,8.4-46.83,14.41-47.23,14.81-14,4.4-14.41,4.8-16,18-1.2,10-38,291.82-38,291.82L307.86,504V65.67a41.66,41.66,0,0,0-4.4.4S297.86,67.67,288.65,70.47ZM233.41,87.69c-16,4.8-33.63,10.4-50.84,15.61,4.8-18.82,14.41-37.63,25.62-50,4.4-4.4,10.41-9.61,17.21-12.81C232.21,54.86,233.81,74.48,233.41,87.69ZM200.58,24.44A27.49,27.49,0,0,1,215,28c-6.4,3.2-12.81,8.41-18.81,14.41-15.21,16.42-26.82,42-31.62,66.45-14.42,4.41-28.83,8.81-42,12.81C131.33,83.28,163.75,25.24,200.58,24.44ZM154.15,244.61c1.6,25.61,69.25,31.22,73.25,91.66,2.8,47.64-25.22,80.06-65.65,82.47-48.83,3.2-75.65-25.62-75.65-25.62l10.4-44s26.82,20.42,48.44,18.82c14-.8,19.22-12.41,18.81-20.42-2-33.62-57.24-31.62-60.84-86.86-3.2-46.44,27.22-93.27,94.47-97.68,26-1.6,39.23,4.81,39.23,4.81L221.4,225.39s-17.21-8-37.63-6.4C154.15,221,153.75,239.8,154.15,244.61ZM249.42,82.88c0-12-1.6-29.22-7.21-43.63,18.42,3.6,27.22,24,31.23,36.43Q262.63,78.68,249.42,82.88Z"],
	"shopware": [512, 512, [], "f5b5", "M403.5 455.41A246.17 246.17 0 0 1 256 504C118.81 504 8 393 8 256 8 118.81 119 8 256 8a247.39 247.39 0 0 1 165.7 63.5 3.57 3.57 0 0 1-2.86 6.18A418.62 418.62 0 0 0 362.13 74c-129.36 0-222.4 53.47-222.4 155.35 0 109 92.13 145.88 176.83 178.73 33.64 13 65.4 25.36 87 41.59a3.58 3.58 0 0 1 0 5.72zM503 233.09a3.64 3.64 0 0 0-1.27-2.44c-51.76-43-93.62-60.48-144.48-60.48-84.13 0-80.25 52.17-80.25 53.63 0 42.6 52.06 62 112.34 84.49 31.07 11.59 63.19 23.57 92.68 39.93a3.57 3.57 0 0 0 5-1.82A249 249 0 0 0 503 233.09z"],
	"simplybuilt": [512, 512, [], "f215", "M481.2 64h-106c-14.5 0-26.6 11.8-26.6 26.3v39.6H163.3V90.3c0-14.5-12-26.3-26.6-26.3h-106C16.1 64 4.3 75.8 4.3 90.3v331.4c0 14.5 11.8 26.3 26.6 26.3h450.4c14.8 0 26.6-11.8 26.6-26.3V90.3c-.2-14.5-12-26.3-26.7-26.3zM149.8 355.8c-36.6 0-66.4-29.7-66.4-66.4 0-36.9 29.7-66.6 66.4-66.6 36.9 0 66.6 29.7 66.6 66.6 0 36.7-29.7 66.4-66.6 66.4zm212.4 0c-36.9 0-66.6-29.7-66.6-66.6 0-36.6 29.7-66.4 66.6-66.4 36.6 0 66.4 29.7 66.4 66.4 0 36.9-29.8 66.6-66.4 66.6z"],
	"sistrix": [448, 512, [], "f3ee", "M448 449L301.2 300.2c20-27.9 31.9-62.2 31.9-99.2 0-93.1-74.7-168.9-166.5-168.9C74.7 32 0 107.8 0 200.9s74.7 168.9 166.5 168.9c39.8 0 76.3-14.2 105-37.9l146 148.1 30.5-31zM166.5 330.8c-70.6 0-128.1-58.3-128.1-129.9S95.9 71 166.5 71s128.1 58.3 128.1 129.9-57.4 129.9-128.1 129.9z"],
	"sith": [448, 512, [], "f512", "M0 32l69.71 118.75-58.86-11.52 69.84 91.03a146.741 146.741 0 0 0 0 51.45l-69.84 91.03 58.86-11.52L0 480l118.75-69.71-11.52 58.86 91.03-69.84c17.02 3.04 34.47 3.04 51.48 0l91.03 69.84-11.52-58.86L448 480l-69.71-118.78 58.86 11.52-69.84-91.03c3.03-17.01 3.04-34.44 0-51.45l69.84-91.03-58.86 11.52L448 32l-118.75 69.71 11.52-58.9-91.06 69.87c-8.5-1.52-17.1-2.29-25.71-2.29s-17.21.78-25.71 2.29l-91.06-69.87 11.52 58.9L0 32zm224 99.78c31.8 0 63.6 12.12 87.85 36.37 48.5 48.5 48.49 127.21 0 175.7s-127.2 48.46-175.7-.03c-48.5-48.5-48.49-127.21 0-175.7 24.24-24.25 56.05-36.34 87.85-36.34zm0 36.66c-22.42 0-44.83 8.52-61.92 25.61-34.18 34.18-34.19 89.68 0 123.87s89.65 34.18 123.84 0c34.18-34.18 34.19-89.68 0-123.87-17.09-17.09-39.5-25.61-61.92-25.61z"],
	"sketch": [512, 512, [], "f7c6", "M27.5 162.2L9 187.1h90.5l6.9-130.7-78.9 105.8zM396.3 45.7L267.7 32l135.7 147.2-7.1-133.5zM112.2 218.3l-11.2-22H9.9L234.8 458zm2-31.2h284l-81.5-88.5L256.3 33zm297.3 9.1L277.6 458l224.8-261.7h-90.9zM415.4 69L406 56.4l.9 17.3 6.1 113.4h90.3zM113.5 93.5l-4.6 85.6L244.7 32 116.1 45.7zm287.7 102.7h-290l42.4 82.9L256.3 480l144.9-283.8z"],
	"skyatlas": [640, 512, [], "f216", "M640 329.3c0 65.9-52.5 114.4-117.5 114.4-165.9 0-196.6-249.7-359.7-249.7-146.9 0-147.1 212.2 5.6 212.2 42.5 0 90.9-17.8 125.3-42.5 5.6-4.1 16.9-16.3 22.8-16.3s10.9 5 10.9 10.9c0 7.8-13.1 19.1-18.7 24.1-40.9 35.6-100.3 61.2-154.7 61.2-83.4.1-154-59-154-144.9s67.5-149.1 152.8-149.1c185.3 0 222.5 245.9 361.9 245.9 99.9 0 94.8-139.7 3.4-139.7-17.5 0-35 11.6-46.9 11.6-8.4 0-15.9-7.2-15.9-15.6 0-11.6 5.3-23.7 5.3-36.3 0-66.6-50.9-114.7-116.9-114.7-53.1 0-80 36.9-88.8 36.9-6.2 0-11.2-5-11.2-11.2 0-5.6 4.1-10.3 7.8-14.4 25.3-28.8 64.7-43.7 102.8-43.7 79.4 0 139.1 58.4 139.1 137.8 0 6.9-.3 13.7-1.2 20.6 11.9-3.1 24.1-4.7 35.9-4.7 60.7 0 111.9 45.3 111.9 107.2z"],
	"skype": [448, 512, [], "f17e", "M424.7 299.8c2.9-14 4.7-28.9 4.7-43.8 0-113.5-91.9-205.3-205.3-205.3-14.9 0-29.7 1.7-43.8 4.7C161.3 40.7 137.7 32 112 32 50.2 32 0 82.2 0 144c0 25.7 8.7 49.3 23.3 68.2-2.9 14-4.7 28.9-4.7 43.8 0 113.5 91.9 205.3 205.3 205.3 14.9 0 29.7-1.7 43.8-4.7 19 14.6 42.6 23.3 68.2 23.3 61.8 0 112-50.2 112-112 .1-25.6-8.6-49.2-23.2-68.1zm-194.6 91.5c-65.6 0-120.5-29.2-120.5-65 0-16 9-30.6 29.5-30.6 31.2 0 34.1 44.9 88.1 44.9 25.7 0 42.3-11.4 42.3-26.3 0-18.7-16-21.6-42-28-62.5-15.4-117.8-22-117.8-87.2 0-59.2 58.6-81.1 109.1-81.1 55.1 0 110.8 21.9 110.8 55.4 0 16.9-11.4 31.8-30.3 31.8-28.3 0-29.2-33.5-75-33.5-25.7 0-42 7-42 22.5 0 19.8 20.8 21.8 69.1 33 41.4 9.3 90.7 26.8 90.7 77.6 0 59.1-57.1 86.5-112 86.5z"],
	"slack": [448, 512, [], "f198", "M94.12 315.1c0 25.9-21.16 47.06-47.06 47.06S0 341 0 315.1c0-25.9 21.16-47.06 47.06-47.06h47.06v47.06zm23.72 0c0-25.9 21.16-47.06 47.06-47.06s47.06 21.16 47.06 47.06v117.84c0 25.9-21.16 47.06-47.06 47.06s-47.06-21.16-47.06-47.06V315.1zm47.06-188.98c-25.9 0-47.06-21.16-47.06-47.06S139 32 164.9 32s47.06 21.16 47.06 47.06v47.06H164.9zm0 23.72c25.9 0 47.06 21.16 47.06 47.06s-21.16 47.06-47.06 47.06H47.06C21.16 243.96 0 222.8 0 196.9s21.16-47.06 47.06-47.06H164.9zm188.98 47.06c0-25.9 21.16-47.06 47.06-47.06 25.9 0 47.06 21.16 47.06 47.06s-21.16 47.06-47.06 47.06h-47.06V196.9zm-23.72 0c0 25.9-21.16 47.06-47.06 47.06-25.9 0-47.06-21.16-47.06-47.06V79.06c0-25.9 21.16-47.06 47.06-47.06 25.9 0 47.06 21.16 47.06 47.06V196.9zM283.1 385.88c25.9 0 47.06 21.16 47.06 47.06 0 25.9-21.16 47.06-47.06 47.06-25.9 0-47.06-21.16-47.06-47.06v-47.06h47.06zm0-23.72c-25.9 0-47.06-21.16-47.06-47.06 0-25.9 21.16-47.06 47.06-47.06h117.84c25.9 0 47.06 21.16 47.06 47.06 0 25.9-21.16 47.06-47.06 47.06H283.1z"],
	"slack-hash": [448, 512, [], "f3ef", "M446.2 270.4c-6.2-19-26.9-29.1-46-22.9l-45.4 15.1-30.3-90 45.4-15.1c19.1-6.2 29.1-26.8 23-45.9-6.2-19-26.9-29.1-46-22.9l-45.4 15.1-15.7-47c-6.2-19-26.9-29.1-46-22.9-19.1 6.2-29.1 26.8-23 45.9l15.7 47-93.4 31.2-15.7-47c-6.2-19-26.9-29.1-46-22.9-19.1 6.2-29.1 26.8-23 45.9l15.7 47-45.3 15c-19.1 6.2-29.1 26.8-23 45.9 5 14.5 19.1 24 33.6 24.6 6.8 1 12-1.6 57.7-16.8l30.3 90L78 354.8c-19 6.2-29.1 26.9-23 45.9 5 14.5 19.1 24 33.6 24.6 6.8 1 12-1.6 57.7-16.8l15.7 47c5.9 16.9 24.7 29 46 22.9 19.1-6.2 29.1-26.8 23-45.9l-15.7-47 93.6-31.3 15.7 47c5.9 16.9 24.7 29 46 22.9 19.1-6.2 29.1-26.8 23-45.9l-15.7-47 45.4-15.1c19-6 29.1-26.7 22.9-45.7zm-254.1 47.2l-30.3-90.2 93.5-31.3 30.3 90.2-93.5 31.3z"],
	"slideshare": [512, 512, [], "f1e7", "M187.7 153.7c-34 0-61.7 25.7-61.7 57.7 0 31.7 27.7 57.7 61.7 57.7s61.7-26 61.7-57.7c0-32-27.7-57.7-61.7-57.7zm143.4 0c-34 0-61.7 25.7-61.7 57.7 0 31.7 27.7 57.7 61.7 57.7 34.3 0 61.7-26 61.7-57.7.1-32-27.4-57.7-61.7-57.7zm156.6 90l-6 4.3V49.7c0-27.4-20.6-49.7-46-49.7H76.6c-25.4 0-46 22.3-46 49.7V248c-2-1.4-4.3-2.9-6.3-4.3-15.1-10.6-25.1 4-16 17.7 18.3 22.6 53.1 50.3 106.3 72C58.3 525.1 252 555.7 248.9 457.5c0-.7.3-56.6.3-96.6 5.1 1.1 9.4 2.3 13.7 3.1 0 39.7.3 92.8.3 93.5-3.1 98.3 190.6 67.7 134.3-124 53.1-21.7 88-49.4 106.3-72 9.1-13.8-.9-28.3-16.1-17.8zm-30.5 19.2c-68.9 37.4-128.3 31.1-160.6 29.7-23.7-.9-32.6 9.1-33.7 24.9-10.3-7.7-18.6-15.5-20.3-17.1-5.1-5.4-13.7-8-27.1-7.7-31.7 1.1-89.7 7.4-157.4-28V72.3c0-34.9 8.9-45.7 40.6-45.7h317.7c30.3 0 40.9 12.9 40.9 45.7v190.6z"],
	"snapchat": [496, 512, [], "f2ab", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm169.5 338.9c-3.5 8.1-18.1 14-44.8 18.2-1.4 1.9-2.5 9.8-4.3 15.9-1.1 3.7-3.7 5.9-8.1 5.9h-.2c-6.2 0-12.8-2.9-25.8-2.9-17.6 0-23.7 4-37.4 13.7-14.5 10.3-28.4 19.1-49.2 18.2-21 1.6-38.6-11.2-48.5-18.2-13.8-9.7-19.8-13.7-37.4-13.7-12.5 0-20.4 3.1-25.8 3.1-5.4 0-7.5-3.3-8.3-6-1.8-6.1-2.9-14.1-4.3-16-13.8-2.1-44.8-7.5-45.5-21.4-.2-3.6 2.3-6.8 5.9-7.4 46.3-7.6 67.1-55.1 68-57.1 0-.1.1-.2.2-.3 2.5-5 3-9.2 1.6-12.5-3.4-7.9-17.9-10.7-24-13.2-15.8-6.2-18-13.4-17-18.3 1.6-8.5 14.4-13.8 21.9-10.3 5.9 2.8 11.2 4.2 15.7 4.2 3.3 0 5.5-.8 6.6-1.4-1.4-23.9-4.7-58 3.8-77.1C183.1 100 230.7 96 244.7 96c.6 0 6.1-.1 6.7-.1 34.7 0 68 17.8 84.3 54.3 8.5 19.1 5.2 53.1 3.8 77.1 1.1.6 2.9 1.3 5.7 1.4 4.3-.2 9.2-1.6 14.7-4.2 4-1.9 9.6-1.6 13.6 0 6.3 2.3 10.3 6.8 10.4 11.9.1 6.5-5.7 12.1-17.2 16.6-1.4.6-3.1 1.1-4.9 1.7-6.5 2.1-16.4 5.2-19 11.5-1.4 3.3-.8 7.5 1.6 12.5.1.1.1.2.2.3.9 2 21.7 49.5 68 57.1 4 1 7.1 5.5 4.9 10.8z"],
	"snapchat-ghost": [512, 512, [], "f2ac", "M510.846 392.673c-5.211 12.157-27.239 21.089-67.36 27.318-2.064 2.786-3.775 14.686-6.507 23.956-1.625 5.566-5.623 8.869-12.128 8.869l-.297-.005c-9.395 0-19.203-4.323-38.852-4.323-26.521 0-35.662 6.043-56.254 20.588-21.832 15.438-42.771 28.764-74.027 27.399-31.646 2.334-58.025-16.908-72.871-27.404-20.714-14.643-29.828-20.582-56.241-20.582-18.864 0-30.736 4.72-38.852 4.72-8.073 0-11.213-4.922-12.422-9.04-2.703-9.189-4.404-21.263-6.523-24.13-20.679-3.209-67.31-11.344-68.498-32.15a10.627 10.627 0 0 1 8.877-11.069c69.583-11.455 100.924-82.901 102.227-85.934.074-.176.155-.344.237-.515 3.713-7.537 4.544-13.849 2.463-18.753-5.05-11.896-26.872-16.164-36.053-19.796-23.715-9.366-27.015-20.128-25.612-27.504 2.437-12.836 21.725-20.735 33.002-15.453 8.919 4.181 16.843 6.297 23.547 6.297 5.022 0 8.212-1.204 9.96-2.171-2.043-35.936-7.101-87.29 5.687-115.969C158.122 21.304 229.705 15.42 250.826 15.42c.944 0 9.141-.089 10.11-.089 52.148 0 102.254 26.78 126.723 81.643 12.777 28.65 7.749 79.792 5.695 116.009 1.582.872 4.357 1.942 8.599 2.139 6.397-.286 13.815-2.389 22.069-6.257 6.085-2.846 14.406-2.461 20.48.058l.029.01c9.476 3.385 15.439 10.215 15.589 17.87.184 9.747-8.522 18.165-25.878 25.018-2.118.835-4.694 1.655-7.434 2.525-9.797 3.106-24.6 7.805-28.616 17.271-2.079 4.904-1.256 11.211 2.46 18.748.087.168.166.342.239.515 1.301 3.03 32.615 74.46 102.23 85.934 6.427 1.058 11.163 7.877 7.725 15.859z"],
	"snapchat-square": [448, 512, [], "f2ad", "M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-6.5 314.9c-3.5 8.1-18.1 14-44.8 18.2-1.4 1.9-2.5 9.8-4.3 15.9-1.1 3.7-3.7 5.9-8.1 5.9h-.2c-6.2 0-12.8-2.9-25.8-2.9-17.6 0-23.7 4-37.4 13.7-14.5 10.3-28.4 19.1-49.2 18.2-21 1.6-38.6-11.2-48.5-18.2-13.8-9.7-19.8-13.7-37.4-13.7-12.5 0-20.4 3.1-25.8 3.1-5.4 0-7.5-3.3-8.3-6-1.8-6.1-2.9-14.1-4.3-16-13.8-2.1-44.8-7.5-45.5-21.4-.2-3.6 2.3-6.8 5.9-7.4 46.3-7.6 67.1-55.1 68-57.1 0-.1.1-.2.2-.3 2.5-5 3-9.2 1.6-12.5-3.4-7.9-17.9-10.7-24-13.2-15.8-6.2-18-13.4-17-18.3 1.6-8.5 14.4-13.8 21.9-10.3 5.9 2.8 11.2 4.2 15.7 4.2 3.3 0 5.5-.8 6.6-1.4-1.4-23.9-4.7-58 3.8-77.1C159.1 100 206.7 96 220.7 96c.6 0 6.1-.1 6.7-.1 34.7 0 68 17.8 84.3 54.3 8.5 19.1 5.2 53.1 3.8 77.1 1.1.6 2.9 1.3 5.7 1.4 4.3-.2 9.2-1.6 14.7-4.2 4-1.9 9.6-1.6 13.6 0 6.3 2.3 10.3 6.8 10.4 11.9.1 6.5-5.7 12.1-17.2 16.6-1.4.6-3.1 1.1-4.9 1.7-6.5 2.1-16.4 5.2-19 11.5-1.4 3.3-.8 7.5 1.6 12.5.1.1.1.2.2.3.9 2 21.7 49.5 68 57.1 4 1 7.1 5.5 4.9 10.8z"],
	"soundcloud": [640, 512, [], "f1be", "M111.4 256.3l5.8 65-5.8 68.3c-.3 2.5-2.2 4.4-4.4 4.4s-4.2-1.9-4.2-4.4l-5.6-68.3 5.6-65c0-2.2 1.9-4.2 4.2-4.2 2.2 0 4.1 2 4.4 4.2zm21.4-45.6c-2.8 0-4.7 2.2-5 5l-5 105.6 5 68.3c.3 2.8 2.2 5 5 5 2.5 0 4.7-2.2 4.7-5l5.8-68.3-5.8-105.6c0-2.8-2.2-5-4.7-5zm25.5-24.1c-3.1 0-5.3 2.2-5.6 5.3l-4.4 130 4.4 67.8c.3 3.1 2.5 5.3 5.6 5.3 2.8 0 5.3-2.2 5.3-5.3l5.3-67.8-5.3-130c0-3.1-2.5-5.3-5.3-5.3zM7.2 283.2c-1.4 0-2.2 1.1-2.5 2.5L0 321.3l4.7 35c.3 1.4 1.1 2.5 2.5 2.5s2.2-1.1 2.5-2.5l5.6-35-5.6-35.6c-.3-1.4-1.1-2.5-2.5-2.5zm23.6-21.9c-1.4 0-2.5 1.1-2.5 2.5l-6.4 57.5 6.4 56.1c0 1.7 1.1 2.8 2.5 2.8s2.5-1.1 2.8-2.5l7.2-56.4-7.2-57.5c-.3-1.4-1.4-2.5-2.8-2.5zm25.3-11.4c-1.7 0-3.1 1.4-3.3 3.3L47 321.3l5.8 65.8c.3 1.7 1.7 3.1 3.3 3.1 1.7 0 3.1-1.4 3.1-3.1l6.9-65.8-6.9-68.1c0-1.9-1.4-3.3-3.1-3.3zm25.3-2.2c-1.9 0-3.6 1.4-3.6 3.6l-5.8 70 5.8 67.8c0 2.2 1.7 3.6 3.6 3.6s3.6-1.4 3.9-3.6l6.4-67.8-6.4-70c-.3-2.2-2-3.6-3.9-3.6zm241.4-110.9c-1.1-.8-2.8-1.4-4.2-1.4-2.2 0-4.2.8-5.6 1.9-1.9 1.7-3.1 4.2-3.3 6.7v.8l-3.3 176.7 1.7 32.5 1.7 31.7c.3 4.7 4.2 8.6 8.9 8.6s8.6-3.9 8.6-8.6l3.9-64.2-3.9-177.5c-.4-3-2-5.8-4.5-7.2zm-26.7 15.3c-1.4-.8-2.8-1.4-4.4-1.4s-3.1.6-4.4 1.4c-2.2 1.4-3.6 3.9-3.6 6.7l-.3 1.7-2.8 160.8s0 .3 3.1 65.6v.3c0 1.7.6 3.3 1.7 4.7 1.7 1.9 3.9 3.1 6.4 3.1 2.2 0 4.2-1.1 5.6-2.5 1.7-1.4 2.5-3.3 2.5-5.6l.3-6.7 3.1-58.6-3.3-162.8c-.3-2.8-1.7-5.3-3.9-6.7zm-111.4 22.5c-3.1 0-5.8 2.8-5.8 6.1l-4.4 140.6 4.4 67.2c.3 3.3 2.8 5.8 5.8 5.8 3.3 0 5.8-2.5 6.1-5.8l5-67.2-5-140.6c-.2-3.3-2.7-6.1-6.1-6.1zm376.7 62.8c-10.8 0-21.1 2.2-30.6 6.1-6.4-70.8-65.8-126.4-138.3-126.4-17.8 0-35 3.3-50.3 9.4-6.1 2.2-7.8 4.4-7.8 9.2v249.7c0 5 3.9 8.6 8.6 9.2h218.3c43.3 0 78.6-35 78.6-78.3.1-43.6-35.2-78.9-78.5-78.9zm-296.7-60.3c-4.2 0-7.5 3.3-7.8 7.8l-3.3 136.7 3.3 65.6c.3 4.2 3.6 7.5 7.8 7.5 4.2 0 7.5-3.3 7.5-7.5l3.9-65.6-3.9-136.7c-.3-4.5-3.3-7.8-7.5-7.8zm-53.6-7.8c-3.3 0-6.4 3.1-6.4 6.7l-3.9 145.3 3.9 66.9c.3 3.6 3.1 6.4 6.4 6.4 3.6 0 6.4-2.8 6.7-6.4l4.4-66.9-4.4-145.3c-.3-3.6-3.1-6.7-6.7-6.7zm26.7 3.4c-3.9 0-6.9 3.1-6.9 6.9L227 321.3l3.9 66.4c.3 3.9 3.1 6.9 6.9 6.9s6.9-3.1 6.9-6.9l4.2-66.4-4.2-141.7c0-3.9-3-6.9-6.9-6.9z"],
	"sourcetree": [448, 512, [], "f7d3", "M427.2 203c0-112.1-90.9-203-203-203C112.1-.2 21.2 90.6 21 202.6A202.86 202.86 0 0 0 161.5 396v101.7a14.3 14.3 0 0 0 14.3 14.3h96.4a14.3 14.3 0 0 0 14.3-14.3V396.1A203.18 203.18 0 0 0 427.2 203zm-271.6 0c0-90.8 137.3-90.8 137.3 0-.1 89.9-137.3 91-137.3 0z"],
	"speakap": [448, 512, [], "f3f3", "M64 391.78C-15.41 303.59-8 167.42 80.64 87.64s224.8-73 304.21 15.24 72 224.36-16.64 304.14c-18.74 16.87 64 43.09 42 52.26-82.06 34.21-253.91 35-346.23-67.5zm213.31-211.6l38.5-40.86c-9.61-8.89-32-26.83-76.17-27.6-52.33-.91-95.86 28.3-96.77 80-.2 11.33.29 36.72 29.42 54.83 34.46 21.42 86.52 21.51 86 52.26-.37 21.28-26.42 25.81-38.59 25.6-3-.05-30.23-.46-47.61-24.62l-40 42.61c28.16 27 59 32.62 83.49 33.05 10.23.18 96.42.33 97.84-81 .28-15.81-2.07-39.72-28.86-56.59-34.36-21.64-85-19.45-84.43-49.75.41-23.25 31-25.37 37.53-25.26.43 0 26.62.26 39.62 17.37z"],
	"speaker-deck": [512, 512, [], "f83c", "M213.86 296H100a100 100 0 0 1 0-200h132.84a40 40 0 0 1 0 80H98c-26.47 0-26.45 40 0 40h113.82a100 100 0 0 1 0 200H40a40 40 0 0 1 0-80h173.86c26.48 0 26.46-40 0-40zM298 416a120.21 120.21 0 0 0 51.11-80h64.55a19.83 19.83 0 0 0 19.66-20V196a19.83 19.83 0 0 0-19.66-20H296.42a60.77 60.77 0 0 0 0-80h136.93c43.44 0 78.65 35.82 78.65 80v160c0 44.18-35.21 80-78.65 80z"],
	"spotify": [496, 512, [], "f1bc", "M248 8C111.1 8 0 119.1 0 256s111.1 248 248 248 248-111.1 248-248S384.9 8 248 8zm100.7 364.9c-4.2 0-6.8-1.3-10.7-3.6-62.4-37.6-135-39.2-206.7-24.5-3.9 1-9 2.6-11.9 2.6-9.7 0-15.8-7.7-15.8-15.8 0-10.3 6.1-15.2 13.6-16.8 81.9-18.1 165.6-16.5 237 26.2 6.1 3.9 9.7 7.4 9.7 16.5s-7.1 15.4-15.2 15.4zm26.9-65.6c-5.2 0-8.7-2.3-12.3-4.2-62.5-37-155.7-51.9-238.6-29.4-4.8 1.3-7.4 2.6-11.9 2.6-10.7 0-19.4-8.7-19.4-19.4s5.2-17.8 15.5-20.7c27.8-7.8 56.2-13.6 97.8-13.6 64.9 0 127.6 16.1 177 45.5 8.1 4.8 11.3 11 11.3 19.7-.1 10.8-8.5 19.5-19.4 19.5zm31-76.2c-5.2 0-8.4-1.3-12.9-3.9-71.2-42.5-198.5-52.7-280.9-29.7-3.6 1-8.1 2.6-12.9 2.6-13.2 0-23.3-10.3-23.3-23.6 0-13.6 8.4-21.3 17.4-23.9 35.2-10.3 74.6-15.2 117.5-15.2 73 0 149.5 15.2 205.4 47.8 7.8 4.5 12.9 10.7 12.9 22.6 0 13.6-11 23.3-23.2 23.3z"],
	"squarespace": [512, 512, [], "f5be", "M186.12 343.34c-9.65 9.65-9.65 25.29 0 34.94 9.65 9.65 25.29 9.65 34.94 0L378.24 221.1c19.29-19.29 50.57-19.29 69.86 0s19.29 50.57 0 69.86L293.95 445.1c19.27 19.29 50.53 19.31 69.82.04l.04-.04 119.25-119.24c38.59-38.59 38.59-101.14 0-139.72-38.59-38.59-101.15-38.59-139.72 0l-157.22 157.2zm244.53-104.8c-9.65-9.65-25.29-9.65-34.93 0l-157.2 157.18c-19.27 19.29-50.53 19.31-69.82.05l-.05-.05c-9.64-9.64-25.27-9.65-34.92-.01l-.01.01c-9.65 9.64-9.66 25.28-.02 34.93l.02.02c38.58 38.57 101.14 38.57 139.72 0l157.2-157.2c9.65-9.65 9.65-25.29.01-34.93zm-261.99 87.33l157.18-157.18c9.64-9.65 9.64-25.29 0-34.94-9.64-9.64-25.27-9.64-34.91 0L133.72 290.93c-19.28 19.29-50.56 19.3-69.85.01l-.01-.01c-19.29-19.28-19.31-50.54-.03-69.84l.03-.03L218.03 66.89c-19.28-19.29-50.55-19.3-69.85-.02l-.02.02L28.93 186.14c-38.58 38.59-38.58 101.14 0 139.72 38.6 38.59 101.13 38.59 139.73.01zm-87.33-52.4c9.64 9.64 25.27 9.64 34.91 0l157.21-157.19c19.28-19.29 50.55-19.3 69.84-.02l.02.02c9.65 9.65 25.29 9.65 34.93 0 9.65-9.65 9.65-25.29 0-34.93-38.59-38.59-101.13-38.59-139.72 0L81.33 238.54c-9.65 9.64-9.65 25.28-.01 34.93h.01z"],
	"stack-exchange": [448, 512, [], "f18d", "M17.7 332.3h412.7v22c0 37.7-29.3 68-65.3 68h-19L259.3 512v-89.7H83c-36 0-65.3-30.3-65.3-68v-22zm0-23.6h412.7v-85H17.7v85zm0-109.4h412.7v-85H17.7v85zM365 0H83C47 0 17.7 30.3 17.7 67.7V90h412.7V67.7C430.3 30.3 401 0 365 0z"],
	"stack-overflow": [384, 512, [], "f16c", "M290.7 311L95 269.7 86.8 309l195.7 41zm51-87L188.2 95.7l-25.5 30.8 153.5 128.3zm-31.2 39.7L129.2 179l-16.7 36.5L293.7 300zM262 32l-32 24 119.3 160.3 32-24zm20.5 328h-200v39.7h200zm39.7 80H42.7V320h-40v160h359.5V320h-40z"],
	"stackpath": [448, 512, [], "f842", "M244.6 232.4c0 8.5-4.26 20.49-21.34 20.49h-19.61v-41.47h19.61c17.13 0 21.34 12.36 21.34 20.98zM448 32v448H0V32zM151.3 287.84c0-21.24-12.12-34.54-46.72-44.85-20.57-7.41-26-10.91-26-18.63s7-14.61 20.41-14.61c14.09 0 20.79 8.45 20.79 18.35h30.7l.19-.57c.5-19.57-15.06-41.65-51.12-41.65-23.37 0-52.55 10.75-52.55 38.29 0 19.4 9.25 31.29 50.74 44.37 17.26 6.15 21.91 10.4 21.91 19.48 0 15.2-19.13 14.23-19.47 14.23-20.4 0-25.65-9.1-25.65-21.9h-30.8l-.18.56c-.68 31.32 28.38 45.22 56.63 45.22 29.98 0 51.12-13.55 51.12-38.29zm125.38-55.63c0-25.3-18.43-45.46-53.42-45.46h-51.78v138.18h32.17v-47.36h19.61c30.25 0 53.42-15.95 53.42-45.36zM297.94 325L347 186.78h-31.09L268 325zm106.52-138.22h-31.09L325.46 325h29.94z"],
	"staylinked": [440, 512, [], "f3f5", "M382.7 292.5l2.7 2.7-170-167.3c-3.5-3.5-9.7-3.7-13.8-.5L144.3 171c-4.2 3.2-4.6 8.7-1.1 12.2l68.1 64.3c3.6 3.5 9.9 3.7 14 .5l.1-.1c4.1-3.2 10.4-3 14 .5l84 81.3c3.6 3.5 3.2 9-.9 12.2l-93.2 74c-4.2 3.3-10.5 3.1-14.2-.4L63.2 268c-3.5-3.5-9.7-3.7-13.9-.5L3.5 302.4c-4.2 3.2-4.7 8.7-1.2 12.2L211 510.7s7.4 6.8 17.3-.8l198-163.9c4-3.2 4.4-8.7.7-12.2zm54.5-83.4L226.7 2.5c-1.5-1.2-8-5.5-16.3 1.1L3.6 165.7c-4.2 3.2-4.8 8.7-1.2 12.2l42.3 41.7 171.7 165.1c3.7 3.5 10.1 3.7 14.3.4l50.2-38.8-.3-.3 7.7-6c4.2-3.2 4.6-8.7.9-12.2l-57.1-54.4c-3.6-3.5-10-3.7-14.2-.5l-.1.1c-4.2 3.2-10.5 3.1-14.2-.4L109 180.8c-3.6-3.5-3.1-8.9 1.1-12.2l92.2-71.5c4.1-3.2 10.3-3 13.9.5l160.4 159c3.7 3.5 10 3.7 14.1.5l45.8-35.8c4.1-3.2 4.4-8.7.7-12.2z"],
	"steam": [496, 512, [], "f1b6", "M496 256c0 137-111.2 248-248.4 248-113.8 0-209.6-76.3-239-180.4l95.2 39.3c6.4 32.1 34.9 56.4 68.9 56.4 39.2 0 71.9-32.4 70.2-73.5l84.5-60.2c52.1 1.3 95.8-40.9 95.8-93.5 0-51.6-42-93.5-93.7-93.5s-93.7 42-93.7 93.5v1.2L176.6 279c-15.5-.9-30.7 3.4-43.5 12.1L0 236.1C10.2 108.4 117.1 8 247.6 8 384.8 8 496 119 496 256zM155.7 384.3l-30.5-12.6a52.79 52.79 0 0 0 27.2 25.8c26.9 11.2 57.8-1.6 69-28.4 5.4-13 5.5-27.3.1-40.3-5.4-13-15.5-23.2-28.5-28.6-12.9-5.4-26.7-5.2-38.9-.6l31.5 13c19.8 8.2 29.2 30.9 20.9 50.7-8.3 19.9-31 29.2-50.8 21zm173.8-129.9c-34.4 0-62.4-28-62.4-62.3s28-62.3 62.4-62.3 62.4 28 62.4 62.3-27.9 62.3-62.4 62.3zm.1-15.6c25.9 0 46.9-21 46.9-46.8 0-25.9-21-46.8-46.9-46.8s-46.9 21-46.9 46.8c.1 25.8 21.1 46.8 46.9 46.8z"],
	"steam-square": [448, 512, [], "f1b7", "M185.2 356.5c7.7-18.5-1-39.7-19.6-47.4l-29.5-12.2c11.4-4.3 24.3-4.5 36.4.5 12.2 5.1 21.6 14.6 26.7 26.7 5 12.2 5 25.6-.1 37.7-10.5 25.1-39.4 37-64.6 26.5-11.6-4.8-20.4-13.6-25.4-24.2l28.5 11.8c18.6 7.8 39.9-.9 47.6-19.4zM400 32H48C21.5 32 0 53.5 0 80v160.7l116.6 48.1c12-8.2 26.2-12.1 40.7-11.3l55.4-80.2v-1.1c0-48.2 39.3-87.5 87.6-87.5s87.6 39.3 87.6 87.5c0 49.2-40.9 88.7-89.6 87.5l-79 56.3c1.6 38.5-29.1 68.8-65.7 68.8-31.8 0-58.5-22.7-64.5-52.7L0 319.2V432c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-99.7 222.5c-32.2 0-58.4-26.1-58.4-58.3s26.2-58.3 58.4-58.3 58.4 26.2 58.4 58.3-26.2 58.3-58.4 58.3zm.1-14.6c24.2 0 43.9-19.6 43.9-43.8 0-24.2-19.6-43.8-43.9-43.8-24.2 0-43.9 19.6-43.9 43.8 0 24.2 19.7 43.8 43.9 43.8z"],
	"steam-symbol": [448, 512, [], "f3f6", "M395.5 177.5c0 33.8-27.5 61-61 61-33.8 0-61-27.3-61-61s27.3-61 61-61c33.5 0 61 27.2 61 61zm52.5.2c0 63-51 113.8-113.7 113.8L225 371.3c-4 43-40.5 76.8-84.5 76.8-40.5 0-74.7-28.8-83-67L0 358V250.7L97.2 290c15.1-9.2 32.2-13.3 52-11.5l71-101.7c.5-62.3 51.5-112.8 114-112.8C397 64 448 115 448 177.7zM203 363c0-34.7-27.8-62.5-62.5-62.5-4.5 0-9 .5-13.5 1.5l26 10.5c25.5 10.2 38 39 27.7 64.5-10.2 25.5-39.2 38-64.7 27.5-10.2-4-20.5-8.3-30.7-12.2 10.5 19.7 31.2 33.2 55.2 33.2 34.7 0 62.5-27.8 62.5-62.5zm207.5-185.3c0-42-34.3-76.2-76.2-76.2-42.3 0-76.5 34.2-76.5 76.2 0 42.2 34.3 76.2 76.5 76.2 41.9.1 76.2-33.9 76.2-76.2z"],
	"sticker-mule": [576, 512, [], "f3f7", "M561.7 199.6c-1.3.3.3 0 0 0zm-6.2-77.4c-7.7-22.3-5.1-7.2-13.4-36.9-1.6-6.5-3.6-14.5-6.2-20-4.4-8.7-4.6-7.5-4.6-9.5 0-5.3 30.7-45.3 19-46.9-5.7-.6-12.2 11.6-20.6 17-8.6 4.2-8 5-10.3 5-2.6 0-5.7-3-6.2-5-2-5.7 1.9-25.9-3.6-25.9-3.6 0-12.3 24.8-17 25.8-5.2 1.3-27.9-11.4-75.1 18-25.3 13.2-86.9 65.2-87 65.3-6.7 4.7-20 4.7-35.5 16-44.4 30.1-109.6 9.4-110.7 9-110.6-26.8-128-15.2-159 11.5-20.8 17.9-23.7 36.5-24.2 38.9-4.2 20.4 5.2 48.3 6.7 64.3 1.8 19.3-2.7 17.7 7.7 98.3.5 1 4.1 0 5.1 1.5 0 8.4-3.8 12.1-4.1 13-1.5 4.5-1.5 10.5 0 16 2.3 8.2 8.2 37.2 8.2 46.9 0 41.8.4 44 2.6 49.4 3.9 10 12.5 9.1 17 12 3.1 3.5-.5 8.5 1 12.5.5 2 3.6 4 6.2 5 9.2 3.6 27 .3 29.9-2.5 1.6-1.5.5-4.5 3.1-5 5.1 0 10.8-.5 14.4-2.5 5.1-2.5 4.1-6 1.5-10.5-.4-.8-7-13.3-9.8-16-2.1-2-5.1-3-7.2-4.5-5.8-4.9-10.3-19.4-10.3-19.5-4.6-19.4-10.3-46.3-4.1-66.8 4.6-17.2 39.5-87.7 39.6-87.8 4.1-6.5 17-11.5 27.3-7 6 1.9 19.3 22 65.4 30.9 47.9 8.7 97.4-2 112.2-2 2.8 2-1.9 13-.5 38.9 0 26.4-.4 13.7-4.1 29.9-2.2 9.7 3.4 23.2-1.5 46.9-1.4 9.8-9.9 32.7-8.2 43.4.5 1 1 2 1.5 3.5.5 4.5 1.5 8.5 4.6 10 7.3 3.6 12-3.5 9.8 11.5-.7 3.1-2.6 12 1.5 15 4.4 3.7 30.6 3.4 36.5.5 2.6-1.5 1.6-4.5 6.4-7.4 1.9-.9 11.3-.4 11.3-6.5.3-1.8-9.2-19.9-9.3-20-2.6-3.5-9.2-4.5-11.3-8-6.9-10.1-1.7-52.6.5-59.4 3-11 5.6-22.4 8.7-32.4 11-42.5 10.3-50.6 16.5-68.3.8-1.8 6.4-23.1 10.3-29.9 9.3-17 21.7-32.4 33.5-47.4 18-22.9 34-46.9 52-69.8 6.1-7 8.2-13.7 18-8 10.8 5.7 21.6 7 31.9 17 14.6 12.8 10.2 18.2 11.8 22.9 1.5 5 7.7 10.5 14.9 9.5 10.4-2 13-2.5 13.4-2.5 2.6-.5 5.7-5 7.2-8 3.1-5.5 7.2-9 7.2-16.5 0-7.7-.4-2.8-20.6-52.9z"],
	"strava": [384, 512, [], "f428", "M158.4 0L7 292h89.2l62.2-116.1L220.1 292h88.5zm150.2 292l-43.9 88.2-44.6-88.2h-67.6l112.2 220 111.5-220z"],
	"stripe": [640, 512, [], "f429", "M165 144.7l-43.3 9.2-.2 142.4c0 26.3 19.8 43.3 46.1 43.3 14.6 0 25.3-2.7 31.2-5.9v-33.8c-5.7 2.3-33.7 10.5-33.7-15.7V221h33.7v-37.8h-33.7zm89.1 51.6l-2.7-13.1H213v153.2h44.3V233.3c10.5-13.8 28.2-11.1 33.9-9.3v-40.8c-6-2.1-26.7-6-37.1 13.1zm92.3-72.3l-44.6 9.5v36.2l44.6-9.5zM44.9 228.3c0-6.9 5.8-9.6 15.1-9.7 13.5 0 30.7 4.1 44.2 11.4v-41.8c-14.7-5.8-29.4-8.1-44.1-8.1-36 0-60 18.8-60 50.2 0 49.2 67.5 41.2 67.5 62.4 0 8.2-7.1 10.9-17 10.9-14.7 0-33.7-6.1-48.6-14.2v40c16.5 7.1 33.2 10.1 48.5 10.1 36.9 0 62.3-15.8 62.3-47.8 0-52.9-67.9-43.4-67.9-63.4zM640 261.6c0-45.5-22-81.4-64.2-81.4s-67.9 35.9-67.9 81.1c0 53.5 30.3 78.2 73.5 78.2 21.2 0 37.1-4.8 49.2-11.5v-33.4c-12.1 6.1-26 9.8-43.6 9.8-17.3 0-32.5-6.1-34.5-26.9h86.9c.2-2.3.6-11.6.6-15.9zm-87.9-16.8c0-20 12.3-28.4 23.4-28.4 10.9 0 22.5 8.4 22.5 28.4zm-112.9-64.6c-17.4 0-28.6 8.2-34.8 13.9l-2.3-11H363v204.8l44.4-9.4.1-50.2c6.4 4.7 15.9 11.2 31.4 11.2 31.8 0 60.8-23.2 60.8-79.6.1-51.6-29.3-79.7-60.5-79.7zm-10.6 122.5c-10.4 0-16.6-3.8-20.9-8.4l-.3-66c4.6-5.1 11-8.8 21.2-8.8 16.2 0 27.4 18.2 27.4 41.4.1 23.9-10.9 41.8-27.4 41.8zm-126.7 33.7h44.6V183.2h-44.6z"],
	"stripe-s": [384, 512, [], "f42a", "M155.3 154.6c0-22.3 18.6-30.9 48.4-30.9 43.4 0 98.5 13.3 141.9 36.7V26.1C298.3 7.2 251.1 0 203.8 0 88.1 0 11 60.4 11 161.4c0 157.9 216.8 132.3 216.8 200.4 0 26.4-22.9 34.9-54.7 34.9-47.2 0-108.2-19.5-156.1-45.5v128.5a396.09 396.09 0 0 0 156 32.4c118.6 0 200.3-51 200.3-153.6 0-170.2-218-139.7-218-203.9z"],
	"studiovinari": [512, 512, [], "f3f8", "M480.3 187.7l4.2 28v28l-25.1 44.1-39.8 78.4-56.1 67.5-79.1 37.8-17.7 24.5-7.7 12-9.6 4s17.3-63.6 19.4-63.6c2.1 0 20.3.7 20.3.7l66.7-38.6-92.5 26.1-55.9 36.8-22.8 28-6.6 1.4 20.8-73.6 6.9-5.5 20.7 12.9 88.3-45.2 56.8-51.5 14.8-68.4-125.4 23.3 15.2-18.2-173.4-53.3 81.9-10.5-166-122.9L133.5 108 32.2 0l252.9 126.6-31.5-38L378 163 234.7 64l18.7 38.4-49.6-18.1L158.3 0l194.6 122L310 66.2l108 96.4 12-8.9-21-16.4 4.2-37.8L451 89.1l29.2 24.7 11.5 4.2-7 6.2 8.5 12-13.1 7.4-10.3 20.2 10.5 23.9z"],
	"stumbleupon": [512, 512, [], "f1a4", "M502.9 266v69.7c0 62.1-50.3 112.4-112.4 112.4-61.8 0-112.4-49.8-112.4-111.3v-70.2l34.3 16 51.1-15.2V338c0 14.7 12 26.5 26.7 26.5S417 352.7 417 338v-72h85.9zm-224.7-58.2l34.3 16 51.1-15.2V173c0-60.5-51.1-109-112.1-109-60.8 0-112.1 48.2-112.1 108.2v162.4c0 14.9-12 26.7-26.7 26.7S86 349.5 86 334.6V266H0v69.7C0 397.7 50.3 448 112.4 448c61.6 0 112.4-49.5 112.4-110.8V176.9c0-14.7 12-26.7 26.7-26.7s26.7 12 26.7 26.7v30.9z"],
	"stumbleupon-circle": [496, 512, [], "f1a3", "M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm0 177.5c-9.8 0-17.8 8-17.8 17.8v106.9c0 40.9-33.9 73.9-74.9 73.9-41.4 0-74.9-33.5-74.9-74.9v-46.5h57.3v45.8c0 10 8 17.8 17.8 17.8s17.8-7.9 17.8-17.8V200.1c0-40 34.2-72.1 74.7-72.1 40.7 0 74.7 32.3 74.7 72.6v23.7l-34.1 10.1-22.9-10.7v-20.6c.1-9.6-7.9-17.6-17.7-17.6zm167.6 123.6c0 41.4-33.5 74.9-74.9 74.9-41.2 0-74.9-33.2-74.9-74.2V263l22.9 10.7 34.1-10.1v47.1c0 9.8 8 17.6 17.8 17.6s17.8-7.9 17.8-17.6v-48h57.3c-.1 45.9-.1 46.4-.1 46.4z"],
	"superpowers": [448, 512, [], "f2dd", "M448 32c-83.3 11-166.8 22-250 33-92 12.5-163.3 86.7-169 180-3.3 55.5 18 109.5 57.8 148.2L0 480c83.3-11 166.5-22 249.8-33 91.8-12.5 163.3-86.8 168.7-179.8 3.5-55.5-18-109.5-57.7-148.2L448 32zm-79.7 232.3c-4.2 79.5-74 139.2-152.8 134.5-79.5-4.7-140.7-71-136.3-151 4.5-79.2 74.3-139.3 153-134.5 79.3 4.7 140.5 71 136.1 151z"],
	"supple": [640, 512, [], "f3f9", "M640 262.5c0 64.1-109 116.1-243.5 116.1-24.8 0-48.6-1.8-71.1-5 7.7.4 15.5.6 23.4.6 134.5 0 243.5-56.9 243.5-127.1 0-29.4-19.1-56.4-51.2-78 60 21.1 98.9 55.1 98.9 93.4zM47.7 227.9c-.1-70.2 108.8-127.3 243.3-127.6 7.9 0 15.6.2 23.3.5-22.5-3.2-46.3-4.9-71-4.9C108.8 96.3-.1 148.5 0 212.6c.1 38.3 39.1 72.3 99.3 93.3-32.3-21.5-51.5-48.6-51.6-78zm60.2 39.9s10.5 13.2 29.3 13.2c17.9 0 28.4-11.5 28.4-25.1 0-28-40.2-25.1-40.2-39.7 0-5.4 5.3-9.1 12.5-9.1 5.7 0 11.3 2.6 11.3 6.6v3.9h14.2v-7.9c0-12.1-15.4-16.8-25.4-16.8-16.5 0-28.5 10.2-28.5 24.1 0 26.6 40.2 25.4 40.2 39.9 0 6.6-5.8 10.1-12.3 10.1-11.9 0-20.7-10.1-20.7-10.1l-8.8 10.9zm120.8-73.6v54.4c0 11.3-7.1 17.8-17.8 17.8-10.7 0-17.8-6.5-17.8-17.7v-54.5h-15.8v55c0 18.9 13.4 31.9 33.7 31.9 20.1 0 33.4-13 33.4-31.9v-55h-15.7zm34.4 85.4h15.8v-29.5h15.5c16 0 27.2-11.5 27.2-28.1s-11.2-27.8-27.2-27.8h-39.1v13.4h7.8v72zm15.8-43v-29.1h12.9c8.7 0 13.7 5.7 13.7 14.4 0 8.9-5.1 14.7-14 14.7h-12.6zm57 43h15.8v-29.5h15.5c16 0 27.2-11.5 27.2-28.1s-11.2-27.8-27.2-27.8h-39.1v13.4h7.8v72zm15.7-43v-29.1h12.9c8.7 0 13.7 5.7 13.7 14.4 0 8.9-5 14.7-14 14.7h-12.6zm57.1 34.8c0 5.8 2.4 8.2 8.2 8.2h37.6c5.8 0 8.2-2.4 8.2-8.2v-13h-14.3v5.2c0 1.7-1 2.6-2.6 2.6h-18.6c-1.7 0-2.6-1-2.6-2.6v-61.2c0-5.7-2.4-8.2-8.2-8.2H401v13.4h5.2c1.7 0 2.6 1 2.6 2.6v61.2zm63.4 0c0 5.8 2.4 8.2 8.2 8.2H519c5.7 0 8.2-2.4 8.2-8.2v-13h-14.3v5.2c0 1.7-1 2.6-2.6 2.6h-19.7c-1.7 0-2.6-1-2.6-2.6v-20.3h27.7v-13.4H488v-22.4h19.2c1.7 0 2.6 1 2.6 2.6v5.2H524v-13c0-5.7-2.5-8.2-8.2-8.2h-51.6v13.4h7.8v63.9zm58.9-76v5.9h1.6v-5.9h2.7v-1.2h-7v1.2h2.7zm5.7-1.2v7.1h1.5v-5.7l2.3 5.7h1.3l2.3-5.7v5.7h1.5v-7.1h-2.3l-2.1 5.1-2.1-5.1h-2.4z"],
	"suse": [640, 512, [], "f7d6", "M471.08 102.66s-.3 18.3-.3 20.3c-9.1-3-74.4-24.1-135.7-26.3-51.9-1.8-122.8-4.3-223 57.3-19.4 12.4-73.9 46.1-99.6 109.7C7 277-.12 307 7 335.06a111 111 0 0 0 16.5 35.7c17.4 25 46.6 41.6 78.1 44.4 44.4 3.9 78.1-16 90-53.3 8.2-25.8 0-63.6-31.5-82.9-25.6-15.7-53.3-12.1-69.2-1.6-13.9 9.2-21.8 23.5-21.6 39.2.3 27.8 24.3 42.6 41.5 42.6a49 49 0 0 0 15.8-2.7c6.5-1.8 13.3-6.5 13.3-14.9 0-12.1-11.6-14.8-16.8-13.9-2.9.5-4.5 2-11.8 2.4-2-.2-12-3.1-12-14V316c.2-12.3 13.2-18 25.5-16.9 32.3 2.8 47.7 40.7 28.5 65.7-18.3 23.7-76.6 23.2-99.7-20.4-26-49.2 12.7-111.2 87-98.4 33.2 5.7 83.6 35.5 102.4 104.3h45.9c-5.7-17.6-8.9-68.3 42.7-68.3 56.7 0 63.9 39.9 79.8 68.3H460c-12.8-18.3-21.7-38.7-18.9-55.8 5.6-33.8 39.7-18.4 82.4-17.4 66.5.4 102.1-27 103.1-28 3.7-3.1 6.5-15.8 7-17.7 1.3-5.1-3.2-2.4-3.2-2.4-8.7 5.2-30.5 15.2-50.9 15.6-25.3.5-76.2-25.4-81.6-28.2-.3-.4.1 1.2-11-25.5 88.4 58.3 118.3 40.5 145.2 21.7.8-.6 4.3-2.9 3.6-5.7-13.8-48.1-22.4-62.7-34.5-69.6-37-21.6-125-34.7-129.2-35.3.1-.1-.9-.3-.9.7zm60.4 72.8a37.54 37.54 0 0 1 38.9-36.3c33.4 1.2 48.8 42.3 24.4 65.2-24.2 22.7-64.4 4.6-63.3-28.9zm38.6-25.3a26.27 26.27 0 1 0 25.4 27.2 26.19 26.19 0 0 0-25.4-27.2zm4.3 28.8c-15.4 0-15.4-15.6 0-15.6s15.4 15.64 0 15.64z"],
	"swift": [448, 512, [], "f8e1", "M448 156.09c0-4.51-.08-9-.2-13.52a196.31 196.31 0 0 0-2.58-29.42 99.62 99.62 0 0 0-9.22-28A94.08 94.08 0 0 0 394.84 44a99.17 99.17 0 0 0-28-9.22 195 195 0 0 0-29.43-2.59c-4.51-.12-9-.17-13.52-.2H124.14c-4.51 0-9 .08-13.52.2-2.45.07-4.91.15-7.37.27a171.68 171.68 0 0 0-22.06 2.32 103.06 103.06 0 0 0-21.21 6.1q-3.46 1.45-6.81 3.12a94.66 94.66 0 0 0-18.39 12.32c-1.88 1.61-3.69 3.28-5.43 5A93.86 93.86 0 0 0 12 85.17a99.45 99.45 0 0 0-9.22 28 196.31 196.31 0 0 0-2.54 29.4c-.13 4.51-.18 9-.21 13.52v199.83c0 4.51.08 9 .21 13.51a196.08 196.08 0 0 0 2.58 29.42 99.3 99.3 0 0 0 9.22 28A94.31 94.31 0 0 0 53.17 468a99.47 99.47 0 0 0 28 9.21 195 195 0 0 0 29.43 2.59c4.5.12 9 .17 13.52.2H323.91c4.51 0 9-.08 13.52-.2a196.59 196.59 0 0 0 29.44-2.59 99.57 99.57 0 0 0 28-9.21A94.22 94.22 0 0 0 436 426.84a99.3 99.3 0 0 0 9.22-28 194.79 194.79 0 0 0 2.59-29.42c.12-4.5.17-9 .2-13.51V172.14c-.01-5.35-.01-10.7-.01-16.05zm-69.88 241c-20-38.93-57.23-29.27-76.31-19.47-1.72 1-3.48 2-5.25 3l-.42.25c-39.5 21-92.53 22.54-145.85-.38A234.64 234.64 0 0 1 45 290.12a230.63 230.63 0 0 0 39.17 23.37c56.36 26.4 113 24.49 153 0-57-43.85-104.6-101-141.09-147.22a197.09 197.09 0 0 1-18.78-25.9c43.7 40 112.7 90.22 137.48 104.12-52.57-55.49-98.89-123.94-96.72-121.74 82.79 83.42 159.18 130.59 159.18 130.59 2.88 1.58 5 2.85 6.73 4a127.44 127.44 0 0 0 4.16-12.47c13.22-48.33-1.66-103.58-35.31-149.2C329.61 141.75 375 229.34 356.4 303.42c-.44 1.73-.95 3.4-1.44 5.09 38.52 47.4 28.04 98.17 23.13 88.59z"],
	"symfony": [512, 512, [], "f83d", "M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm133.74 143.54c-11.47.41-19.4-6.45-19.77-16.87-.27-9.18 6.68-13.44 6.53-18.85-.23-6.55-10.16-6.82-12.87-6.67-39.78 1.29-48.59 57-58.89 113.85 21.43 3.15 36.65-.72 45.14-6.22 12-7.75-3.34-15.72-1.42-24.56 4-18.16 32.55-19 32 5.3-.36 17.86-25.92 41.81-77.6 35.7-10.76 59.52-18.35 115-58.2 161.72-29 34.46-58.4 39.82-71.58 40.26-24.65.85-41-12.31-41.58-29.84-.56-17 14.45-26.26 24.31-26.59 21.89-.75 30.12 25.67 14.88 34-12.09 9.71.11 12.61 2.05 12.55 10.42-.36 17.34-5.51 22.18-9 24-20 33.24-54.86 45.35-118.35 8.19-49.66 17-78 18.23-82-16.93-12.75-27.08-28.55-49.85-34.72-15.61-4.23-25.12-.63-31.81 7.83-7.92 10-5.29 23 2.37 30.7l12.63 14c15.51 17.93 24 31.87 20.8 50.62-5.06 29.93-40.72 52.9-82.88 39.94-36-11.11-42.7-36.56-38.38-50.62 7.51-24.15 42.36-11.72 34.62 13.6-2.79 8.6-4.92 8.68-6.28 13.07-4.56 14.77 41.85 28.4 51-1.39 4.47-14.52-5.3-21.71-22.25-39.85-28.47-31.75-16-65.49 2.95-79.67C204.23 140.13 251.94 197 262 205.29c37.17-109 100.53-105.46 102.43-105.53 25.16-.81 44.19 10.59 44.83 28.65.25 7.69-4.17 22.59-19.52 23.13z"],
	"teamspeak": [512, 512, [], "f4f9", "M244.2 346.79c2.4-12.3-12-30-32.4-48.7-20.9-19.2-48.2-39.1-63.4-46.6-21.7-12-41.7-1.8-46.3 22.7-5 26.2 0 51.4 14.5 73.9 10.2 15.5 25.4 22.7 43.4 24 11.6.6 52.5 2.2 61.7-1 11.9-4.3 20.1-11.8 22.5-24.3zm205 20.8a5.22 5.22 0 0 0-8.3 2.4c-8 25.4-44.7 112.5-172.1 121.5-149.7 10.5 80.3 43.6 145.4-6.4 22.7-17.4 47.6-35 46.6-85.4-.4-10.1-4.9-26.69-11.6-32.1zm62-122.4c-.3-18.9-8.6-33.4-26-42.2-2.9-1.3-5-2.7-5.9-6.4A222.64 222.64 0 0 0 438.9 103c-1.1-1.5-3.5-3.2-2.2-5 8.5-11.5-.3-18-7-24.4Q321.4-31.11 177.4 13.09c-40.1 12.3-73.9 35.6-102 67.4-4 4.3-6.7 9.1-3 14.5 3 4 1.3 6.2-1 9.3C51.6 132 38.2 162.59 32.1 196c-.7 4.3-2.9 6-6.4 7.8-14.2 7-22.5 18.5-24.9 34L0 264.29v20.9c0 30.8 21 50.4 51.8 49 7.7-.3 11.7-4.3 12-11.5 2-77.5-2.4-95.4 3.7-125.8C92.1 72.39 234.3 5 345.3 65.39 411.4 102 445.7 159 447.6 234.79c.8 28.2 0 56.5 0 84.6 0 7 2.2 12.5 9.4 14.2 24.1 5 49.2-12 53.2-36.7 2.9-17.1 1-34.5 1-51.7zm-159.6 131.5c36.5 2.8 59.3-28.5 58.4-60.5-2.1-45.2-66.2-16.5-87.8-8-73.2 28.1-45 54.9-22.2 60.8z"],
	"telegram": [496, 512, [], "f2c6", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm121.8 169.9l-40.7 191.8c-3 13.6-11.1 16.9-22.4 10.5l-62-45.7-29.9 28.8c-3.3 3.3-6.1 6.1-12.5 6.1l4.4-63.1 114.9-103.8c5-4.4-1.1-6.9-7.7-2.5l-142 89.4-61.2-19.1c-13.3-4.2-13.6-13.3 2.8-19.7l239.1-92.2c11.1-4 20.8 2.7 17.2 19.5z"],
	"telegram-plane": [448, 512, [], "f3fe", "M446.7 98.6l-67.6 318.8c-5.1 22.5-18.4 28.1-37.3 17.5l-103-75.9-49.7 47.8c-5.5 5.5-10.1 10.1-20.7 10.1l7.4-104.9 190.9-172.5c8.3-7.4-1.8-11.5-12.9-4.1L117.8 284 16.2 252.2c-22.1-6.9-22.5-22.1 4.6-32.7L418.2 66.4c18.4-6.9 34.5 4.1 28.5 32.2z"],
	"tencent-weibo": [384, 512, [], "f1d5", "M72.3 495.8c1.4 19.9-27.6 22.2-29.7 2.9C31 368.8 73.7 259.2 144 185.5c-15.6-34 9.2-77.1 50.6-77.1 30.3 0 55.1 24.6 55.1 55.1 0 44-49.5 70.8-86.9 45.1-65.7 71.3-101.4 169.8-90.5 287.2zM192 .1C66.1.1-12.3 134.3 43.7 242.4 52.4 259.8 79 246.9 70 229 23.7 136.4 91 29.8 192 29.8c75.4 0 136.9 61.4 136.9 136.9 0 90.8-86.9 153.9-167.7 133.1-19.1-4.1-25.6 24.4-6.6 29.1 110.7 23.2 204-60 204-162.3C358.6 74.7 284 .1 192 .1z"],
	"the-red-yeti": [512, 512, [], "f69d", "M488.23 241.7l20.7 7.1c-9.6-23.9-23.9-37-31.7-44.8l7.1-18.2c.2 0 12.3-27.8-2.5-30.7-.6-11.3-6.6-27-18.4-27-7.6-10.6-17.7-12.3-30.7-5.9a122.2 122.2 0 0 0-25.3 16.5c-5.3-6.4-3 .4-3-29.8-37.1-24.3-45.4-11.7-74.8 3l.5.5a239.36 239.36 0 0 0-68.4-13.3c-5.5-8.7-18.6-19.1-25.1-25.1l24.8 7.1c-5.5-5.5-26.8-12.9-34.2-15.2 18.2-4.1 29.8-20.8 42.5-33-34.9-10.1-67.9-5.9-97.9 11.8l12-44.2L182 0c-31.6 24.2-33 41.9-33.7 45.5-.9-2.4-6.3-19.6-15.2-27a35.12 35.12 0 0 0-.5 25.3c3 8.4 5.9 14.8 8.4 18.9-16-3.3-28.3-4.9-49.2 0h-3.7l33 14.3a194.26 194.26 0 0 0-46.7 67.4l-1.7 8.4 1.7 1.7 7.6-4.7c-3.3 11.6-5.3 19.4-6.6 25.8a200.18 200.18 0 0 0-27.8 40.3c-15 1-31.8 10.8-40.3 14.3l3 3.4 28.8 1c-.5 1-.7 2.2-1.2 3.2-7.3 6.4-39.8 37.7-33 80.7l20.2-22.4c.5 1.7.7 3.4 1.2 5.2 0 25.5.4 89.6 64.9 150.5 43.6 40 96 60.2 157.5 60.2 121.7 0 223-87.3 223-211.5 6.8-9.7-1.2 3 16.7-25.1l13 14.3 2.5-.5A181.84 181.84 0 0 0 495 255a44.74 44.74 0 0 0-6.8-13.3zM398 111.2l-.5 21.9c5.5 18.1 16.9 17.2 22.4 17.2l-3.4-4.7 22.4-5.4a242.44 242.44 0 0 1-27 0c12.8-2.1 33.3-29 43-11.3 3.4 7.6 6.4 17.2 9.3 27.8l1.7-5.9a56.38 56.38 0 0 1-1.7-15.2c5.4.5 8.8 3.4 9.3 10.1.5 6.4 1.7 14.8 3.4 25.3l4.7-11.3c4.6 0 4.5-3.6-2.5 20.7-20.9-8.7-35.1-8.4-46.5-8.4l18.2-16c-25.3 8.2-33 10.8-54.8 20.9-1.1-5.4-5-13.5-16-19.9-3.2 3.8-2.8.9-.7 14.8h-2.5a62.32 62.32 0 0 0-8.4-23.1l4.2-3.4c8.4-7.1 11.8-14.3 10.6-21.9-.5-6.4-5.4-13.5-13.5-20.7 5.6-3.4 15.2-.4 28.3 8.5zm-39.6-10.1c2.7 1.9 11.4 5.4 18.9 17.2 4.2 8.4 4 9.8 3.4 11.1-.5 2.4-.5 4.3-3 7.1-1.7 2.5-5.4 4.7-11.8 7.6-7.6-13-16.5-23.6-27.8-31.2zM91 143.1l1.2-1.7c1.2-2.9 4.2-7.6 9.3-15.2l2.5-3.4-13 12.3 5.4-4.7-10.1 9.3-4.2 1.2c12.3-24.1 23.1-41.3 32.5-50.2 9.3-9.3 16-16 20.2-19.4l-6.4 1.2c-11.3-4.2-19.4-7.1-24.8-8.4 2.5-.5 3.7-.5 3.2-.5 10.3 0 17.5.5 20.9 1.2a52.35 52.35 0 0 0 16 2.5l.5-1.7-8.4-35.8 13.5 29a42.89 42.89 0 0 0 5.9-14.3c1.7-6.4 5.4-13 10.1-19.4s7.6-10.6 9.3-11.3a234.68 234.68 0 0 0-6.4 25.3l-1.7 7.1-.5 4.7 2.5 2.5C190.4 39.9 214 34 239.8 34.5l21.1.5c-11.8 13.5-27.8 21.9-48.5 24.8a201.26 201.26 0 0 1-23.4 2.9l-.2-.5-2.5-1.2a20.75 20.75 0 0 0-14 2c-2.5-.2-4.9-.5-7.1-.7l-2.5 1.7.5 1.2c2 .2 3.9.5 6.2.7l-2 3.4 3.4-.5-10.6 11.3c-4.2 3-5.4 6.4-4.2 9.3l5.4-3.4h1.2a39.4 39.4 0 0 1 25.3-15.2v-3c6.4.5 13 1 19.4 1.2 6.4 0 8.4.5 5.4 1.2a189.6 189.6 0 0 1 20.7 13.5c13.5 10.1 23.6 21.9 30 35.4 8.8 18.2 13.5 37.1 13.5 56.6a141.13 141.13 0 0 1-3 28.3 209.91 209.91 0 0 1-16 46l2.5.5c18.2-19.7 41.9-16 49.2-16l-6.4 5.9 22.4 17.7-1.7 30.7c-5.4-12.3-16.5-21.1-33-27.8 16.5 14.8 23.6 21.1 21.9 20.2-4.8-2.8-3.5-1.9-10.8-3.7 4.1 4.1 17.5 18.8 18.2 20.7l.2.2-.2.2c0 1.8 1.6-1.2-14 22.9-75.2-15.3-106.27-42.7-141.2-63.2l11.8 1.2c-11.8-18.5-15.6-17.7-38.4-26.1L149 225c-8.8-3-18.2-3-28.3.5l7.6-10.6-1.2-1.7c-14.9 4.3-19.8 9.2-22.6 11.3-1.1-5.5-2.8-12.4-12.3-28.8l-1.2 27-13.2-5c1.5-25.2 5.4-50.5 13.2-74.6zm276.5 330c-49.9 25-56.1 22.4-59 23.9-29.8-11.8-50.9-31.7-63.5-58.8l30 16.5c-9.8-9.3-18.3-16.5-38.4-44.3l11.8 23.1-17.7-7.6c14.2 21.1 23.5 51.7 66.6 73.5-120.8 24.2-199-72.1-200.9-74.3a262.57 262.57 0 0 0 35.4 24.8c3.4 1.7 7.1 2.5 10.1 1.2l-16-20.7c9.2 4.2 9.5 4.5 69.1 29-42.5-20.7-73.8-40.8-93.2-60.2-.5 6.4-1.2 10.1-1.2 10.1a80.25 80.25 0 0 1 20.7 26.6c-39-18.9-57.6-47.6-71.3-82.6 49.9 55.1 118.9 37.5 120.5 37.1 34.8 16.4 69.9 23.6 113.9 10.6 3.3 0 20.3 17 25.3 39.1l4.2-3-2.5-23.6c9 9 24.9 22.6 34.4 13-15.6-5.3-23.5-9.5-29.5-31.7 4.6 4.2 7.6 9 27.8 15l1.2-1.2-10.5-14.2c11.7-4.8-3.5 1 32-10.8 4.3 34.3 9 49.2.7 89.5zm115.3-214.4l-2.5.5 3 9.3c-3.5 5.9-23.7 44.3-71.6 79.7-39.5 29.8-76.6 39.1-80.9 40.3l-7.6-7.1-1.2 3 14.3 16-7.1-4.7 3.4 4.2h-1.2l-21.9-13.5 9.3 26.6-19-27.9-1.2 2.5 7.6 29c-6.1-8.2-21-32.6-56.8-39.6l32.5 21.2a214.82 214.82 0 0 1-93.2-6.4c-4.2-1.2-8.9-2.5-13.5-4.2l1.2-3-44.8-22.4 26.1 22.4c-57.7 9.1-113-25.4-126.4-83.4l-2.5-16.4-22.27 22.3c19.5-57.5 25.6-57.9 51.4-70.1-9.1-5.3-1.6-3.3-38.4-9.3 15.8-5.8 33-15.4 73 5.2a18.5 18.5 0 0 1 3.7-1.7c.6-3.2.4-.8 1-11.8 3.9 10 3.6 8.7 3 9.3l1.7.5c12.7-6.5 8.9-4.5 17-8.9l-5.4 13.5 22.3-5.8-8.4 8.4 2.5 2.5c4.5-1.8 30.3 3.4 40.8 16l-23.6-2.5c39.4 23 51.5 54 55.8 69.6l1.7-1.2c-2.8-22.3-12.4-33.9-16-40.1 4.2 5 39.2 34.6 110.4 46-11.3-.5-23.1 5.4-34.9 18.9l46.7-20.2-9.3 21.9c7.6-10.1 14.8-23.6 21.2-39.6v-.5l1.2-3-1.2 16c13.5-41.8 25.3-78.5 35.4-109.7l13.5-27.8v-2l-5.4-4.2h10.1l5.9 4.2 2.5-1.2-3.4-16 12.3 18.9 41.8-20.2-14.8 13 .5 2.9 17.7-.5a184 184 0 0 1 33 4.2l-23.6 2.5-1.2 3 26.6 23.1a254.21 254.21 0 0 1 27 32c-11.2-3.3-10.3-3.4-21.2-3.4l12.3 32.5zm-6.1-71.3l-3.9 13-14.3-11.8zm-254.8 7.1c1.7 10.6 4.7 17.7 8.8 21.9-9.3 6.6-27.5 13.9-46.5 16l.5 1.2a50.22 50.22 0 0 0 24.8-2.5l-7.1 13c4.2-1.7 10.1-7.1 17.7-14.8 11.9-5.5 12.7-5.1 20.2-16-12.7-6.4-15.7-13.7-18.4-18.8zm3.7-102.3c-6.4-3.4-10.6 3-12.3 18.9s2.5 29.5 11.8 39.6 18.2 10.6 26.1 3 3.4-23.6-11.3-47.7a39.57 39.57 0 0 0-14.27-13.8zm-4.7 46.3c5.4 2.2 10.5 1.9 12.3-10.6v-4.7l-1.2.5c-4.3-3.1-2.5-4.5-1.7-6.2l.5-.5c-.9-1.2-5-8.1-12.5 4.7-.5-13.5.5-21.9 3-24.8 1.2-2.5 4.7-1.2 11.3 4.2 6.4 5.4 11.3 16 15.2 32.5 6.5 28-19.8 26.2-26.9 4.9zm-45-5.5c1.6.3 9.3-1.1 9.3-14.8h-.5c-5.4-1.1-2.2-5.5-.7-5.9-1.7-3-3.4-4.2-5.4-4.7-8.1 0-11.6 12.7-8.1 21.2a7.51 7.51 0 0 0 5.43 4.2zM216 82.9l-2.5.5.5 3a48.94 48.94 0 0 1 26.1 5.9c-2.5-5.5-10-14.3-28.3-14.3l.5 2.5zm-71.8 49.4c21.7 16.8 16.5 21.4 46.5 23.6l-2.9-4.7a42.67 42.67 0 0 0 14.8-28.3c1.7-16-1.2-29.5-8.8-41.3l13-7.6a2.26 2.26 0 0 0-.5-1.7 14.21 14.21 0 0 0-13.5 1.7c-12.7 6.7-28 20.9-29 22.4-1.7 1.7-3.4 5.9-5.4 13.5a99.61 99.61 0 0 0-2.9 23.6c-4.7-8-10.5-6.4-19.9-5.9l7.1 7.6c-16.5 0-23.3 15.4-23.6 16 6.8 0 4.6-7.6 30-12.3-4.3-6.3-3.3-5-4.9-6.6zm18.7-18.7c1.2-7.6 3.4-13 6.4-17.2 5.4-6.4 10.6-10.1 16-11.8 4.2-1.7 7.1 1.2 10.1 9.3a72.14 72.14 0 0 1 3 25.3c-.5 9.3-3.4 17.2-8.4 23.1-2.9 3.4-5.4 5.9-6.4 7.6a39.21 39.21 0 0 1-11.3-.5l-7.1-3.4-5.4-6.4c.8-10 1.3-18.8 3.1-26zm42 56.1c-34.8 14.4-34.7 14-36.1 14.3-20.8 4.7-19-24.4-18.9-24.8l5.9-1.2-.5-2.5c-20.2-2.6-31 4.2-32.5 4.9.5.5 3 3.4 5.9 9.3 4.2-6.4 8.8-10.1 15.2-10.6a83.47 83.47 0 0 0 1.7 33.7c.1.5 2.6 17.4 27.5 24.1 11.3 3 27 1.2 48.9-5.4l-9.2.5c-4.2-14.8-6.4-24.8-5.9-29.5 11.3-8.8 21.9-11.3 30.7-7.6h2.5l-11.8-7.6-7.1.5c-5.9 1.2-12.3 4.2-19.4 8.4z"],
	"themeco": [448, 512, [], "f5c6", "M202.9 8.43c9.9-5.73 26-5.82 35.95-.21L430 115.85c10 5.6 18 19.44 18 30.86V364c0 11.44-8.06 25.29-18 31L238.81 503.74c-9.93 5.66-26 5.57-35.85-.21L17.86 395.12C8 389.34 0 375.38 0 364V146.71c0-11.44 8-25.36 17.91-31.08zm-77.4 199.83c-15.94 0-31.89.14-47.83.14v101.45H96.8V280h28.7c49.71 0 49.56-71.74 0-71.74zm140.14 100.29l-30.73-34.64c37-7.51 34.8-65.23-10.87-65.51-16.09 0-32.17-.14-48.26-.14v101.59h19.13v-33.91h18.41l29.56 33.91h22.76zm-41.59-82.32c23.34 0 23.26 32.46 0 32.46h-29.13v-32.46zm-95.56-1.6c21.18 0 21.11 38.85 0 38.85H96.18v-38.84zm192.65-18.25c-68.46 0-71 105.8 0 105.8 69.48-.01 69.41-105.8 0-105.8zm0 17.39c44.12 0 44.8 70.86 0 70.86s-44.43-70.86 0-70.86z"],
	"themeisle": [512, 512, [], "f2b2", "M208 88.286c0-10 6.286-21.714 17.715-21.714 11.142 0 17.714 11.714 17.714 21.714 0 10.285-6.572 21.714-17.714 21.714C214.286 110 208 98.571 208 88.286zm304 160c0 36.001-11.429 102.286-36.286 129.714-22.858 24.858-87.428 61.143-120.857 70.572l-1.143.286v32.571c0 16.286-12.572 30.571-29.143 30.571-10 0-19.429-5.714-24.572-14.286-5.427 8.572-14.856 14.286-24.856 14.286-10 0-19.429-5.714-24.858-14.286-5.142 8.572-14.571 14.286-24.57 14.286-10.286 0-19.429-5.714-24.858-14.286-5.143 8.572-14.571 14.286-24.571 14.286-18.857 0-29.429-15.714-29.429-32.857-16.286 12.285-35.715 19.428-56.571 19.428-22 0-43.429-8.285-60.286-22.857 10.285-.286 20.571-2.286 30.285-5.714-20.857-5.714-39.428-18.857-52-36.286 21.37 4.645 46.209 1.673 67.143-11.143-22-22-56.571-58.857-68.572-87.428C1.143 321.714 0 303.714 0 289.429c0-49.714 20.286-160 86.286-160 10.571 0 18.857 4.858 23.143 14.857a158.792 158.792 0 0 1 12-15.428c2-2.572 5.714-5.429 7.143-8.286 7.999-12.571 11.714-21.142 21.714-34C182.571 45.428 232 17.143 285.143 17.143c6 0 12 .285 17.714 1.143C313.714 6.571 328.857 0 344.572 0c14.571 0 29.714 6 40 16.286.857.858 1.428 2.286 1.428 3.428 0 3.714-10.285 13.429-12.857 16.286 4.286 1.429 15.714 6.858 15.714 12 0 2.857-2.857 5.143-4.571 7.143 31.429 27.714 49.429 67.143 56.286 108 4.286-5.143 10.285-8.572 17.143-8.572 10.571 0 20.857 7.144 28.571 14.001C507.143 187.143 512 221.714 512 248.286zM188 89.428c0 18.286 12.571 37.143 32.286 37.143 19.714 0 32.285-18.857 32.285-37.143 0-18-12.571-36.857-32.285-36.857-19.715 0-32.286 18.858-32.286 36.857zM237.714 194c0-19.714 3.714-39.143 8.571-58.286-52.039 79.534-13.531 184.571 68.858 184.571 21.428 0 42.571-7.714 60-20 2-7.429 3.714-14.857 3.714-22.572 0-14.286-6.286-21.428-20.572-21.428-4.571 0-9.143.857-13.429 1.714-63.343 12.668-107.142 3.669-107.142-63.999zm-41.142 254.858c0-11.143-8.858-20.857-20.286-20.857-11.429 0-20 9.715-20 20.857v32.571c0 11.143 8.571 21.142 20 21.142 11.428 0 20.286-9.715 20.286-21.142v-32.571zm49.143 0c0-11.143-8.572-20.857-20-20.857-11.429 0-20.286 9.715-20.286 20.857v32.571c0 11.143 8.857 21.142 20.286 21.142 11.428 0 20-10 20-21.142v-32.571zm49.713 0c0-11.143-8.857-20.857-20.285-20.857-11.429 0-20.286 9.715-20.286 20.857v32.571c0 11.143 8.857 21.142 20.286 21.142 11.428 0 20.285-9.715 20.285-21.142v-32.571zm49.715 0c0-11.143-8.857-20.857-20.286-20.857-11.428 0-20.286 9.715-20.286 20.857v32.571c0 11.143 8.858 21.142 20.286 21.142 11.429 0 20.286-10 20.286-21.142v-32.571zM421.714 286c-30.857 59.142-90.285 102.572-158.571 102.572-96.571 0-160.571-84.572-160.571-176.572 0-16.857 2-33.429 6-49.714-20 33.715-29.714 72.572-29.714 111.429 0 60.286 24.857 121.715 71.429 160.857 5.143-9.714 14.857-16.286 26-16.286 10 0 19.428 5.714 24.571 14.286 5.429-8.571 14.571-14.286 24.858-14.286 10 0 19.428 5.714 24.571 14.286 5.429-8.571 14.857-14.286 24.858-14.286 10 0 19.428 5.714 24.857 14.286 5.143-8.571 14.571-14.286 24.572-14.286 10.857 0 20.857 6.572 25.714 16 43.427-36.286 68.569-92 71.426-148.286zm10.572-99.714c0-53.714-34.571-105.714-92.572-105.714-30.285 0-58.571 15.143-78.857 36.857C240.862 183.812 233.41 254 302.286 254c28.805 0 97.357-28.538 84.286 36.857 28.857-26 45.714-65.714 45.714-104.571z"],
	"think-peaks": [576, 512, [], "f731", "M465.4 409.4l87.1-150.2-32-.3-55.1 95L259.2 0 23 407.4l32 .3L259.2 55.6zm-355.3-44.1h32.1l117.4-202.5L463 511.9l32.5.1-235.8-404.6z"],
	"tiktok": [448, 512, [], "e07b", "M448,209.91a210.06,210.06,0,0,1-122.77-39.25V349.38A162.55,162.55,0,1,1,185,188.31V278.2a74.62,74.62,0,1,0,52.23,71.18V0l88,0a121.18,121.18,0,0,0,1.86,22.17h0A122.18,122.18,0,0,0,381,102.39a121.43,121.43,0,0,0,67,20.14Z"],
	"trade-federation": [496, 512, [], "f513", "M248 8.8c-137 0-248 111-248 248s111 248 248 248 248-111 248-248-111-248-248-248zm0 482.8c-129.7 0-234.8-105.1-234.8-234.8S118.3 22 248 22s234.8 105.1 234.8 234.8S377.7 491.6 248 491.6zm155.1-328.5v-46.8H209.3V198H54.2l36.7 46h117.7v196.8h48.8V245h83.3v-47h-83.3v-34.8h145.7zm-73.3 45.1v23.9h-82.9v197.4h-26.8V232.1H96.3l-20.1-23.9h143.9v-80.6h171.8V152h-145v56.2zm-161.3-69l-12.4-20.7 2.1 23.8-23.5 5.4 23.3 5.4-2.1 24 12.3-20.5 22.2 9.5-15.7-18.1 15.8-18.1zm-29.6-19.7l9.3-11.5-12.7 5.9-8-12.4 1.7 13.9-14.3 3.8 13.7 2.7-.8 14.7 6.8-12.2 13.8 5.3zm165.4 145.2l-13.1 5.6-7.3-12.2 1.3 14.2-13.9 3.2 13.9 3.2-1.2 14.2 7.3-12.2 13.1 5.5-9.4-10.7zm106.9-77.2l-20.9 9.1-12-19.6 2.2 22.7-22.3 5.4 22.2 4.9-1.8 22.9 11.5-19.6 21.2 8.8-15.1-17zM248 29.9c-125.3 0-226.9 101.6-226.9 226.9S122.7 483.7 248 483.7s226.9-101.6 226.9-226.9S373.3 29.9 248 29.9zM342.6 196v51h-83.3v195.7h-52.7V245.9H89.9l-40-49.9h157.4v-81.6h197.8v50.7H259.4V196zM248 43.2c60.3 0 114.8 25 153.6 65.2H202.5V190H45.1C73.1 104.8 153.4 43.2 248 43.2zm0 427.1c-117.9 0-213.6-95.6-213.6-213.5 0-21.2 3.1-41.8 8.9-61.1L87.1 252h114.7v196.8h64.6V253h83.3v-62.7h-83.2v-19.2h145.6v-50.8c30.8 37 49.3 84.6 49.3 136.5.1 117.9-95.5 213.5-213.4 213.5zM178.8 275l-11-21.4 1.7 24.5-23.7 3.9 23.8 5.9-3.7 23.8 13-20.9 21.5 10.8-15.8-18.8 16.9-17.1z"],
	"trello": [448, 512, [], "f181", "M392.3 32H56.1C25.1 32 0 57.1 0 88c-.1 0 0-4 0 336 0 30.9 25.1 56 56 56h336.2c30.8-.2 55.7-25.2 55.7-56V88c.1-30.8-24.8-55.8-55.6-56zM197 371.3c-.2 14.7-12.1 26.6-26.9 26.6H87.4c-14.8.1-26.9-11.8-27-26.6V117.1c0-14.8 12-26.9 26.9-26.9h82.9c14.8 0 26.9 12 26.9 26.9v254.2zm193.1-112c0 14.8-12 26.9-26.9 26.9h-81c-14.8 0-26.9-12-26.9-26.9V117.2c0-14.8 12-26.9 26.8-26.9h81.1c14.8 0 26.9 12 26.9 26.9v142.1z"],
	"tripadvisor": [576, 512, [], "f262", "M528.91,178.82,576,127.58H471.66a326.11,326.11,0,0,0-367,0H0l47.09,51.24A143.911,143.911,0,0,0,241.86,390.73L288,440.93l46.11-50.17A143.94,143.94,0,0,0,575.88,285.18h-.03A143.56,143.56,0,0,0,528.91,178.82ZM144.06,382.57a97.39,97.39,0,1,1,97.39-97.39A97.39,97.39,0,0,1,144.06,382.57ZM288,282.37c0-64.09-46.62-119.08-108.09-142.59a281,281,0,0,1,216.17,0C334.61,163.3,288,218.29,288,282.37Zm143.88,100.2h-.01a97.405,97.405,0,1,1,.01,0ZM144.06,234.12h-.01a51.06,51.06,0,1,0,51.06,51.06v-.11A51,51,0,0,0,144.06,234.12Zm287.82,0a51.06,51.06,0,1,0,51.06,51.06A51.06,51.06,0,0,0,431.88,234.12Z"],
	"tumblr": [320, 512, [], "f173", "M309.8 480.3c-13.6 14.5-50 31.7-97.4 31.7-120.8 0-147-88.8-147-140.6v-144H17.9c-5.5 0-10-4.5-10-10v-68c0-7.2 4.5-13.6 11.3-16 62-21.8 81.5-76 84.3-117.1.8-11 6.5-16.3 16.1-16.3h70.9c5.5 0 10 4.5 10 10v115.2h83c5.5 0 10 4.4 10 9.9v81.7c0 5.5-4.5 10-10 10h-83.4V360c0 34.2 23.7 53.6 68 35.8 4.8-1.9 9-3.2 12.7-2.2 3.5.9 5.8 3.4 7.4 7.9l22 64.3c1.8 5 3.3 10.6-.4 14.5z"],
	"tumblr-square": [448, 512, [], "f174", "M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-82.3 364.2c-8.5 9.1-31.2 19.8-60.9 19.8-75.5 0-91.9-55.5-91.9-87.9v-90h-29.7c-3.4 0-6.2-2.8-6.2-6.2v-42.5c0-4.5 2.8-8.5 7.1-10 38.8-13.7 50.9-47.5 52.7-73.2.5-6.9 4.1-10.2 10-10.2h44.3c3.4 0 6.2 2.8 6.2 6.2v72h51.9c3.4 0 6.2 2.8 6.2 6.2v51.1c0 3.4-2.8 6.2-6.2 6.2h-52.1V321c0 21.4 14.8 33.5 42.5 22.4 3-1.2 5.6-2 8-1.4 2.2.5 3.6 2.1 4.6 4.9l13.8 40.2c1 3.2 2 6.7-.3 9.1z"],
	"twitch": [512, 512, [], "f1e8", "M391.17,103.47H352.54v109.7h38.63ZM285,103H246.37V212.75H285ZM120.83,0,24.31,91.42V420.58H140.14V512l96.53-91.42h77.25L487.69,256V0ZM449.07,237.75l-77.22,73.12H294.61l-67.6,64v-64H140.14V36.58H449.07Z"],
	"twitter": [512, 512, [], "f099", "M459.37 151.716c.325 4.548.325 9.097.325 13.645 0 138.72-105.583 298.558-298.558 298.558-59.452 0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055 0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421 0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391 0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04 0-57.828 46.782-104.934 104.934-104.934 30.213 0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253z"],
	"twitter-square": [448, 512, [], "f081", "M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-48.9 158.8c.2 2.8.2 5.7.2 8.5 0 86.7-66 186.6-186.6 186.6-37.2 0-71.7-10.8-100.7-29.4 5.3.6 10.4.8 15.8.8 30.7 0 58.9-10.4 81.4-28-28.8-.6-53-19.5-61.3-45.5 10.1 1.5 19.2 1.5 29.6-1.2-30-6.1-52.5-32.5-52.5-64.4v-.8c8.7 4.9 18.9 7.9 29.6 8.3a65.447 65.447 0 0 1-29.2-54.6c0-12.2 3.2-23.4 8.9-33.1 32.3 39.8 80.8 65.8 135.2 68.6-9.3-44.5 24-80.6 64-80.6 18.9 0 35.9 7.9 47.9 20.7 14.8-2.8 29-8.3 41.6-15.8-4.9 15.2-15.2 28-28.8 36.1 13.2-1.4 26-5.1 37.8-10.2-8.9 13.1-20.1 24.7-32.9 34z"],
	"typo3": [448, 512, [], "f42b", "M178.7 78.4c0-24.7 5.4-32.4 13.9-39.4-69.5 8.5-149.3 34-176.3 66.4-5.4 7.7-9.3 20.8-9.3 37.1C7 246 113.8 480 191.1 480c36.3 0 97.3-59.5 146.7-139-7 2.3-11.6 2.3-18.5 2.3-57.2 0-140.6-198.5-140.6-264.9zM301.5 32c-30.1 0-41.7 5.4-41.7 36.3 0 66.4 53.8 198.5 101.7 198.5 26.3 0 78.8-99.7 78.8-182.3 0-40.9-67-52.5-138.8-52.5z"],
	"uber": [448, 512, [], "f402", "M414.1 32H33.9C15.2 32 0 47.2 0 65.9V446c0 18.8 15.2 34 33.9 34H414c18.7 0 33.9-15.2 33.9-33.9V65.9C448 47.2 432.8 32 414.1 32zM237.6 391.1C163 398.6 96.4 344.2 88.9 269.6h94.4V290c0 3.7 3 6.8 6.8 6.8H258c3.7 0 6.8-3 6.8-6.8v-67.9c0-3.7-3-6.8-6.8-6.8h-67.9c-3.7 0-6.8 3-6.8 6.8v20.4H88.9c7-69.4 65.4-122.2 135.1-122.2 69.7 0 128.1 52.8 135.1 122.2 7.5 74.5-46.9 141.1-121.5 148.6z"],
	"ubuntu": [496, 512, [], "f7df", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm52.7 93c8.8-15.2 28.3-20.5 43.5-11.7 15.3 8.8 20.5 28.3 11.7 43.6-8.8 15.2-28.3 20.5-43.5 11.7-15.3-8.9-20.5-28.4-11.7-43.6zM87.4 287.9c-17.6 0-31.9-14.3-31.9-31.9 0-17.6 14.3-31.9 31.9-31.9 17.6 0 31.9 14.3 31.9 31.9 0 17.6-14.3 31.9-31.9 31.9zm28.1 3.1c22.3-17.9 22.4-51.9 0-69.9 8.6-32.8 29.1-60.7 56.5-79.1l23.7 39.6c-51.5 36.3-51.5 112.5 0 148.8L172 370c-27.4-18.3-47.8-46.3-56.5-79zm228.7 131.7c-15.3 8.8-34.7 3.6-43.5-11.7-8.8-15.3-3.6-34.8 11.7-43.6 15.2-8.8 34.7-3.6 43.5 11.7 8.8 15.3 3.6 34.8-11.7 43.6zm.3-69.5c-26.7-10.3-56.1 6.6-60.5 35-5.2 1.4-48.9 14.3-96.7-9.4l22.5-40.3c57 26.5 123.4-11.7 128.9-74.4l46.1.7c-2.3 34.5-17.3 65.5-40.3 88.4zm-5.9-105.3c-5.4-62-71.3-101.2-128.9-74.4l-22.5-40.3c47.9-23.7 91.5-10.8 96.7-9.4 4.4 28.3 33.8 45.3 60.5 35 23.1 22.9 38 53.9 40.2 88.5l-46 .6z"],
	"uikit": [448, 512, [], "f403", "M443.9 128v256L218 512 0 384V169.7l87.6 45.1v117l133.5 75.5 135.8-75.5v-151l-101.1-57.6 87.6-53.1L443.9 128zM308.6 49.1L223.8 0l-88.6 54.8 86 47.3 87.4-53z"],
	"umbraco": [510, 512, [], "f8e8", "M255.35 8C118.36 7.83 7.14 118.72 7 255.68c-.07 137 111 248.2 248 248.27 136.85 0 247.82-110.7 248-247.67S392.34 8.17 255.35 8zm145 266q-1.14 40.68-14 65t-43.51 35q-30.61 10.7-85.45 10.47h-4.6q-54.78.22-85.44-10.47t-43.52-35q-12.85-24.36-14-65a224.81 224.81 0 0 1 0-30.71 418.37 418.37 0 0 1 3.6-43.88c1.88-13.39 3.57-22.58 5.4-32 1-4.88 1.28-6.42 1.82-8.45a5.09 5.09 0 0 1 4.9-3.89h.69l32 5a5.07 5.07 0 0 1 4.16 5 5 5 0 0 1 0 .77l-1.7 8.78q-2.41 13.25-4.84 33.68a380.62 380.62 0 0 0-2.64 42.15q-.28 40.43 8.13 59.83a43.87 43.87 0 0 0 31.31 25.18A243 243 0 0 0 250 340.6h10.25a242.64 242.64 0 0 0 57.27-5.16 43.86 43.86 0 0 0 31.15-25.23q8.53-19.42 8.13-59.78a388 388 0 0 0-2.6-42.15q-2.48-20.38-4.89-33.68l-1.69-8.78a5 5 0 0 1 0-.77 5 5 0 0 1 4.2-5l32-5h.82a5 5 0 0 1 4.9 3.89c.55 2.05.81 3.57 1.83 8.45 1.82 9.62 3.52 18.78 5.39 32a415.71 415.71 0 0 1 3.61 43.88 228.06 228.06 0 0 1-.04 30.73z"],
	"uncharted": [448, 512, [], "e084", "M171.73,232.813A5.381,5.381,0,0,0,176.7,229.5,48.081,48.081,0,0,1,191.6,204.244c1.243-.828,1.657-2.484,1.657-4.141a4.22,4.22,0,0,0-2.071-3.312L74.429,128.473,148.958,85a9.941,9.941,0,0,0,4.968-8.281,9.108,9.108,0,0,0-4.968-8.281L126.6,55.6a9.748,9.748,0,0,0-9.523,0l-100.2,57.966a9.943,9.943,0,0,0-4.969,8.281V236.954a9.109,9.109,0,0,0,4.969,8.281L39.235,258.07a8.829,8.829,0,0,0,4.968,1.242,9.4,9.4,0,0,0,6.625-2.484,10.8,10.8,0,0,0,2.9-7.039V164.5L169.66,232.4A4.5,4.5,0,0,0,171.73,232.813ZM323.272,377.73a12.478,12.478,0,0,0-4.969,1.242l-74.528,43.062V287.882c0-2.9-2.9-5.8-6.211-4.555a53.036,53.036,0,0,1-28.984.414,4.86,4.86,0,0,0-6.21,4.555V421.619l-74.529-43.061a8.83,8.83,0,0,0-4.969-1.242,9.631,9.631,0,0,0-9.523,9.523v26.085a9.107,9.107,0,0,0,4.969,8.281l100.2,57.553A8.829,8.829,0,0,0,223.486,480a11.027,11.027,0,0,0,4.969-1.242l100.2-57.553a9.941,9.941,0,0,0,4.968-8.281V386.839C332.8,382.285,328.24,377.73,323.272,377.73ZM286.007,78a23,23,0,1,0-23-23A23,23,0,0,0,286.007,78Zm63.627-10.086a23,23,0,1,0,23,23A23,23,0,0,0,349.634,67.914ZM412.816,151.6a23,23,0,1,0-23-23A23,23,0,0,0,412.816,151.6Zm-63.182-9.2a23,23,0,1,0,23,23A23,23,0,0,0,349.634,142.4Zm-63.627,83.244a23,23,0,1,0-23-23A23,23,0,0,0,286.007,225.648Zm-62.074,36.358a23,23,0,1,0-23-23A23,23,0,0,0,223.933,262.006Zm188.883-82.358a23,23,0,1,0,23,23A23,23,0,0,0,412.816,179.648Zm0,72.272a23,23,0,1,0,23,23A23,23,0,0,0,412.816,251.92Z"],
	"uniregistry": [384, 512, [], "f404", "M192 480c39.5 0 76.2-11.8 106.8-32.2H85.3C115.8 468.2 152.5 480 192 480zm-89.1-193.1v-12.4H0v12.4c0 2.5 0 5 .1 7.4h103.1c-.2-2.4-.3-4.9-.3-7.4zm20.5 57H8.5c2.6 8.5 5.8 16.8 9.6 24.8h138.3c-12.9-5.7-24.1-14.2-33-24.8zm-17.7-34.7H1.3c.9 7.6 2.2 15 3.9 22.3h109.7c-4-6.9-7.2-14.4-9.2-22.3zm-2.8-69.3H0v17.3h102.9zm0-173.2H0v4.9h102.9zm0-34.7H0v2.5h102.9zm0 69.3H0v7.4h102.9zm0 104H0v14.8h102.9zm0-69.3H0v9.9h102.9zm0 34.6H0V183h102.9zm166.2 160.9h109.7c1.8-7.3 3.1-14.7 3.9-22.3H278.3c-2.1 7.9-5.2 15.4-9.2 22.3zm12-185.7H384V136H281.1zm0 37.2H384v-12.4H281.1zm0-74.3H384v-7.4H281.1zm0-76.7v2.5H384V32zm-203 410.9h227.7c11.8-8.7 22.7-18.6 32.2-29.7H44.9c9.6 11 21.4 21 33.2 29.7zm203-371.3H384v-4.9H281.1zm0 148.5H384v-14.8H281.1zM38.8 405.7h305.3c6.7-8.5 12.6-17.6 17.8-27.2H23c5.2 9.6 9.2 18.7 15.8 27.2zm188.8-37.1H367c3.7-8 5.8-16.2 8.5-24.8h-115c-8.8 10.7-20.1 19.2-32.9 24.8zm53.5-81.7c0 2.5-.1 5-.4 7.4h103.1c.1-2.5.2-4.9.2-7.4v-12.4H281.1zm0-29.7H384v-17.3H281.1z"],
	"unity": [576, 512, [], "e049", "M498.11,206.4,445.31,14.72,248.2,66.08,219,116.14l-59.2-.43L15.54,256,159.82,396.32l59.17-.43,29.24,50,197.08,51.36,52.8-191.62-30-49.63ZM223.77,124.2,374.55,86.51,288,232.33H114.87Zm0,263.63L114.87,279.71H288l86.55,145.81Zm193,14L330.17,256l86.58-145.84L458.56,256Z"],
	"unsplash": [448, 512, [], "e07c", "M448,230.17V480H0V230.17H141.13V355.09H306.87V230.17ZM306.87,32H141.13V156.91H306.87Z"],
	"untappd": [640, 512, [], "f405", "M401.3 49.9c-79.8 160.1-84.6 152.5-87.9 173.2l-5.2 32.8c-1.9 12-6.6 23.5-13.7 33.4L145.6 497.1c-7.6 10.6-20.4 16.2-33.4 14.6-40.3-5-77.8-32.2-95.3-68.5-5.7-11.8-4.5-25.8 3.1-36.4l148.9-207.9c7.1-9.9 16.4-18 27.2-23.7l29.3-15.5c18.5-9.8 9.7-11.9 135.6-138.9 1-4.8 1-7.3 3.6-8 3-.7 6.6-1 6.3-4.6l-.4-4.6c-.2-1.9 1.3-3.6 3.2-3.6 4.5-.1 13.2 1.2 25.6 10 12.3 8.9 16.4 16.8 17.7 21.1.6 1.8-.6 3.7-2.4 4.2l-4.5 1.1c-3.4.9-2.5 4.4-2.3 7.4.1 2.8-2.3 3.6-6.5 6.1zM230.1 36.4c3.4.9 2.5 4.4 2.3 7.4-.2 2.7 2.1 3.5 6.4 6 7.9 15.9 15.3 30.5 22.2 44 .7 1.3 2.3 1.5 3.3.5 11.2-12 24.6-26.2 40.5-42.6 1.3-1.4 1.4-3.5.1-4.9-8-8.2-16.5-16.9-25.6-26.1-1-4.7-1-7.3-3.6-8-3-.8-6.6-1-6.3-4.6.3-3.3 1.4-8.1-2.8-8.2-4.5-.1-13.2 1.1-25.6 10-12.3 8.9-16.4 16.8-17.7 21.1-1.4 4.2 3.6 4.6 6.8 5.4zM620 406.7L471.2 198.8c-13.2-18.5-26.6-23.4-56.4-39.1-11.2-5.9-14.2-10.9-30.5-28.9-1-1.1-2.9-.9-3.6.5-46.3 88.8-47.1 82.8-49 94.8-1.7 10.7-1.3 20 .3 29.8 1.9 12 6.6 23.5 13.7 33.4l148.9 207.9c7.6 10.6 20.2 16.2 33.1 14.7 40.3-4.9 78-32 95.7-68.6 5.4-11.9 4.3-25.9-3.4-36.6z"],
	"ups": [384, 512, [], "f7e0", "M103.2 303c-5.2 3.6-32.6 13.1-32.6-19V180H37.9v102.6c0 74.9 80.2 51.1 97.9 39V180h-32.6zM4 74.82v220.9c0 103.7 74.9 135.2 187.7 184.1 112.4-48.9 187.7-80.2 187.7-184.1V74.82c-116.3-61.6-281.8-49.6-375.4 0zm358.1 220.9c0 86.6-53.2 113.6-170.4 165.3-117.5-51.8-170.5-78.7-170.5-165.3v-126.4c102.3-93.8 231.6-100 340.9-89.8zm-209.6-107.4v212.8h32.7v-68.7c24.4 7.3 71.7-2.6 71.7-78.5 0-97.4-80.7-80.92-104.4-65.6zm32.7 117.3v-100.3c8.4-4.2 38.4-12.7 38.4 49.3 0 67.9-36.4 51.8-38.4 51zm79.1-86.4c.1 47.3 51.6 42.5 52.2 70.4.6 23.5-30.4 23-50.8 4.9v30.1c36.2 21.5 81.9 8.1 83.2-33.5 1.7-51.5-54.1-46.6-53.4-73.2.6-20.3 30.6-20.5 48.5-2.2v-28.4c-28.5-22-79.9-9.2-79.7 31.9z"],
	"usb": [640, 512, [], "f287", "M641.5 256c0 3.1-1.7 6.1-4.5 7.5L547.9 317c-1.4.8-2.8 1.4-4.5 1.4-1.4 0-3.1-.3-4.5-1.1-2.8-1.7-4.5-4.5-4.5-7.8v-35.6H295.7c25.3 39.6 40.5 106.9 69.6 106.9H392V354c0-5 3.9-8.9 8.9-8.9H490c5 0 8.9 3.9 8.9 8.9v89.1c0 5-3.9 8.9-8.9 8.9h-89.1c-5 0-8.9-3.9-8.9-8.9v-26.7h-26.7c-75.4 0-81.1-142.5-124.7-142.5H140.3c-8.1 30.6-35.9 53.5-69 53.5C32 327.3 0 295.3 0 256s32-71.3 71.3-71.3c33.1 0 61 22.8 69 53.5 39.1 0 43.9 9.5 74.6-60.4C255 88.7 273 95.7 323.8 95.7c7.5-20.9 27-35.6 50.4-35.6 29.5 0 53.5 23.9 53.5 53.5s-23.9 53.5-53.5 53.5c-23.4 0-42.9-14.8-50.4-35.6H294c-29.1 0-44.3 67.4-69.6 106.9h310.1v-35.6c0-3.3 1.7-6.1 4.5-7.8 2.8-1.7 6.4-1.4 8.9.3l89.1 53.5c2.8 1.1 4.5 4.1 4.5 7.2z"],
	"usps": [576, 512, [], "f7e1", "M460.3 241.7c25.8-41.3 15.2-48.8-11.7-48.8h-27c-.1 0-1.5-1.4-10.9 8-11.2 5.6-37.9 6.3-37.9 8.7 0 4.5 70.3-3.1 88.1 0 9.5 1.5-1.5 20.4-4.4 32-.5 4.5 2.4 2.3 3.8.1zm-112.1 22.6c64-21.3 97.3-23.9 102-26.2 4.4-2.9-4.4-6.6-26.2-5.8-51.7 2.2-137.6 37.1-172.6 53.9l-30.7-93.3h196.6c-2.7-28.2-152.9-22.6-337.9-22.6L27 415.8c196.4-97.3 258.9-130.3 321.2-151.5zM94.7 96c253.3 53.7 330 65.7 332.1 85.2 36.4 0 45.9 0 52.4 6.6 21.1 19.7-14.6 67.7-14.6 67.7-4.4 2.9-406.4 160.2-406.4 160.2h423.1L549 96z"],
	"ussunnah": [512, 512, [], "f407", "M156.8 285.1l5.7 14.4h-8.2c-1.3-3.2-3.1-7.7-3.8-9.5-2.5-6.3-1.1-8.4 0-10 1.9-2.7 3.2-4.4 3.6-5.2 0 2.2.8 5.7 2.7 10.3zm297.3 18.8c-2.1 13.8-5.7 27.1-10.5 39.7l43 23.4-44.8-18.8c-5.3 13.2-12 25.6-19.9 37.2l34.2 30.2-36.8-26.4c-8.4 11.8-18 22.6-28.7 32.3l24.9 34.7-28.1-31.8c-11 9.6-23.1 18-36.1 25.1l15.7 37.2-19.3-35.3c-13.1 6.8-27 12.1-41.6 15.9l6.7 38.4-10.5-37.4c-14.3 3.4-29.2 5.3-44.5 5.4L256 512l-1.9-38.4c-15.3-.1-30.2-2-44.5-5.3L199 505.6l6.7-38.2c-14.6-3.7-28.6-9.1-41.7-15.8l-19.2 35.1 15.6-37c-13-7-25.2-15.4-36.2-25.1l-27.9 31.6 24.7-34.4c-10.7-9.7-20.4-20.5-28.8-32.3l-36.5 26.2 33.9-29.9c-7.9-11.6-14.6-24.1-20-37.3l-44.4 18.7L67.8 344c-4.8-12.7-8.4-26.1-10.5-39.9l-51 9 50.3-14.2c-1.1-8.5-1.7-17.1-1.7-25.9 0-4.7.2-9.4.5-14.1L0 256l56-2.8c1.3-13.1 3.8-25.8 7.5-38.1L6.4 199l58.9 10.4c4-12 9.1-23.5 15.2-34.4l-55.1-30 58.3 24.6C90 159 97.2 149.2 105.3 140L55.8 96.4l53.9 38.7c8.1-8.6 17-16.5 26.6-23.6l-40-55.6 45.6 51.6c9.5-6.6 19.7-12.3 30.3-17.2l-27.3-64.9 33.8 62.1c10.5-4.4 21.4-7.9 32.7-10.4L199 6.4l19.5 69.2c11-2.1 22.3-3.2 33.8-3.4L256 0l3.6 72.2c11.5.2 22.8 1.4 33.8 3.5L313 6.4l-12.4 70.7c11.3 2.6 22.2 6.1 32.6 10.5l33.9-62.2-27.4 65.1c10.6 4.9 20.7 10.7 30.2 17.2l45.8-51.8-40.1 55.9c9.5 7.1 18.4 15 26.5 23.6l54.2-38.9-49.7 43.9c8 9.1 15.2 18.9 21.5 29.4l58.7-24.7-55.5 30.2c6.1 10.9 11.1 22.3 15.1 34.3l59.3-10.4-57.5 16.2c3.7 12.2 6.2 24.9 7.5 37.9L512 256l-56 2.8c.3 4.6.5 9.3.5 14.1 0 8.7-.6 17.3-1.6 25.8l50.7 14.3-51.5-9.1zm-21.8-31c0-97.5-79-176.5-176.5-176.5s-176.5 79-176.5 176.5 79 176.5 176.5 176.5 176.5-79 176.5-176.5zm-24 0c0 84.3-68.3 152.6-152.6 152.6s-152.6-68.3-152.6-152.6 68.3-152.6 152.6-152.6 152.6 68.3 152.6 152.6zM195 241c0 2.1 1.3 3.8 3.6 5.1 3.3 1.9 6.2 4.6 8.2 8.2 2.8-5.7 4.3-9.5 4.3-11.2 0-2.2-1.1-4.4-3.2-7-2.1-2.5-3.2-5.2-3.3-7.7-6.5 6.8-9.6 10.9-9.6 12.6zm-40.7-19c0 2.1 1.3 3.8 3.6 5.1 3.5 1.9 6.2 4.6 8.2 8.2 2.8-5.7 4.3-9.5 4.3-11.2 0-2.2-1.1-4.4-3.2-7-2.1-2.5-3.2-5.2-3.3-7.7-6.5 6.8-9.6 10.9-9.6 12.6zm-19 0c0 2.1 1.3 3.8 3.6 5.1 3.3 1.9 6.2 4.6 8.2 8.2 2.8-5.7 4.3-9.5 4.3-11.2 0-2.2-1.1-4.4-3.2-7-2.1-2.5-3.2-5.2-3.3-7.7-6.4 6.8-9.6 10.9-9.6 12.6zm204.9 87.9c-8.4-3-8.7-6.8-8.7-15.6V182c-8.2 12.5-14.2 18.6-18 18.6 6.3 14.4 9.5 23.9 9.5 28.3v64.3c0 2.2-2.2 6.5-4.7 6.5h-18c-2.8-7.5-10.2-26.9-15.3-40.3-2 2.5-7.2 9.2-10.7 13.7 2.4 1.6 4.1 3.6 5.2 6.3 2.6 6.7 6.4 16.5 7.9 20.2h-9.2c-3.9-10.4-9.6-25.4-11.8-31.1-2 2.5-7.2 9.2-10.7 13.7 2.4 1.6 4.1 3.6 5.2 6.3.8 2 2.8 7.3 4.3 10.9H256c-1.5-4.1-5.6-14.6-8.4-22-2 2.5-7.2 9.2-10.7 13.7 2.5 1.6 4.3 3.6 5.2 6.3.2.6.5 1.4.6 1.7H225c-4.6-13.9-11.4-27.7-11.4-34.1 0-2.2.3-5.1 1.1-8.2-8.8 10.8-14 15.9-14 25 0 7.5 10.4 28.3 10.4 33.3 0 1.7-.5 3.3-1.4 4.9-9.6-12.7-15.5-20.7-18.8-20.7h-12l-11.2-28c-3.8-9.6-5.7-16-5.7-18.8 0-3.8.5-7.7 1.7-12.2-1 1.3-3.7 4.7-5.5 7.1-.8-2.1-3.1-7.7-4.6-11.5-2.1 2.5-7.5 9.1-11.2 13.6.9 2.3 3.3 8.1 4.9 12.2-2.5 3.3-9.1 11.8-13.6 17.7-4 5.3-5.8 13.3-2.7 21.8 2.5 6.7 2 7.9-1.7 14.1H191c5.5 0 14.3 14 15.5 22 13.2-16 15.4-19.6 16.8-21.6h107c3.9 0 7.2-1.9 9.9-5.8zm20.1-26.6V181.7c-9 12.5-15.9 18.6-20.7 18.6 7.1 14.4 10.7 23.9 10.7 28.3v66.3c0 17.5 8.6 20.4 24 20.4 8.1 0 12.5-.8 13.7-2.7-4.3-1.6-7.6-2.5-9.9-3.3-8.1-3.2-17.8-7.4-17.8-26z"],
	"vaadin": [448, 512, [], "f408", "M224.5 140.7c1.5-17.6 4.9-52.7 49.8-52.7h98.6c20.7 0 32.1-7.8 32.1-21.6V54.1c0-12.2 9.3-22.1 21.5-22.1S448 41.9 448 54.1v36.5c0 42.9-21.5 62-66.8 62H280.7c-30.1 0-33 14.7-33 27.1 0 1.3-.1 2.5-.2 3.7-.7 12.3-10.9 22.2-23.4 22.2s-22.7-9.8-23.4-22.2c-.1-1.2-.2-2.4-.2-3.7 0-12.3-3-27.1-33-27.1H66.8c-45.3 0-66.8-19.1-66.8-62V54.1C0 41.9 9.4 32 21.6 32s21.5 9.9 21.5 22.1v12.3C43.1 80.2 54.5 88 75.2 88h98.6c44.8 0 48.3 35.1 49.8 52.7h.9zM224 456c11.5 0 21.4-7 25.7-16.3 1.1-1.8 97.1-169.6 98.2-171.4 11.9-19.6-3.2-44.3-27.2-44.3-13.9 0-23.3 6.4-29.8 20.3L224 362l-66.9-117.7c-6.4-13.9-15.9-20.3-29.8-20.3-24 0-39.1 24.6-27.2 44.3 1.1 1.9 97.1 169.6 98.2 171.4 4.3 9.3 14.2 16.3 25.7 16.3z"],
	"viacoin": [384, 512, [], "f237", "M384 32h-64l-80.7 192h-94.5L64 32H0l48 112H0v48h68.5l13.8 32H0v48h102.8L192 480l89.2-208H384v-48h-82.3l13.8-32H384v-48h-48l48-112zM192 336l-27-64h54l-27 64z"],
	"viadeo": [448, 512, [], "f2a9", "M276.2 150.5v.7C258.3 98.6 233.6 47.8 205.4 0c43.3 29.2 67 100 70.8 150.5zm32.7 121.7c7.6 18.2 11 37.5 11 57 0 77.7-57.8 141-137.8 139.4l3.8-.3c74.2-46.7 109.3-118.6 109.3-205.1 0-38.1-6.5-75.9-18.9-112 1 11.7 1 23.7 1 35.4 0 91.8-18.1 241.6-116.6 280C95 455.2 49.4 398 49.4 329.2c0-75.6 57.4-142.3 135.4-142.3 16.8 0 33.7 3.1 49.1 9.6 1.7-15.1 6.5-29.9 13.4-43.3-19.9-7.2-41.2-10.7-62.5-10.7-161.5 0-238.7 195.9-129.9 313.7 67.9 74.6 192 73.9 259.8 0 56.6-61.3 60.9-142.4 36.4-201-12.7 8-27.1 13.9-42.2 17zM418.1 11.7c-31 66.5-81.3 47.2-115.8 80.1-12.4 12-20.6 34-20.6 50.5 0 14.1 4.5 27.1 12 38.8 47.4-11 98.3-46 118.2-90.7-.7 5.5-4.8 14.4-7.2 19.2-20.3 35.7-64.6 65.6-99.7 84.9 14.8 14.4 33.7 25.8 55 25.8 79 0 110.1-134.6 58.1-208.6z"],
	"viadeo-square": [448, 512, [], "f2aa", "M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM280.7 381.2c-42.4 46.2-120 46.6-162.4 0-68-73.6-19.8-196.1 81.2-196.1 13.3 0 26.6 2.1 39.1 6.7-4.3 8.4-7.3 17.6-8.4 27.1-9.7-4.1-20.2-6-30.7-6-48.8 0-84.6 41.7-84.6 88.9 0 43 28.5 78.7 69.5 85.9 61.5-24 72.9-117.6 72.9-175 0-7.3 0-14.8-.6-22.1-11.2-32.9-26.6-64.6-44.2-94.5 27.1 18.3 41.9 62.5 44.2 94.1v.4c7.7 22.5 11.8 46.2 11.8 70 0 54.1-21.9 99-68.3 128.2l-2.4.2c50 1 86.2-38.6 86.2-87.2 0-12.2-2.1-24.3-6.9-35.7 9.5-1.9 18.5-5.6 26.4-10.5 15.3 36.6 12.6 87.3-22.8 125.6zM309 233.7c-13.3 0-25.1-7.1-34.4-16.1 21.9-12 49.6-30.7 62.3-53 1.5-3 4.1-8.6 4.5-12-12.5 27.9-44.2 49.8-73.9 56.7-4.7-7.3-7.5-15.5-7.5-24.3 0-10.3 5.2-24.1 12.9-31.6 21.6-20.5 53-8.5 72.4-50 32.5 46.2 13.1 130.3-36.3 130.3z"],
	"viber": [512, 512, [], "f409", "M444 49.9C431.3 38.2 379.9.9 265.3.4c0 0-135.1-8.1-200.9 52.3C27.8 89.3 14.9 143 13.5 209.5c-1.4 66.5-3.1 191.1 117 224.9h.1l-.1 51.6s-.8 20.9 13 25.1c16.6 5.2 26.4-10.7 42.3-27.8 8.7-9.4 20.7-23.2 29.8-33.7 82.2 6.9 145.3-8.9 152.5-11.2 16.6-5.4 110.5-17.4 125.7-142 15.8-128.6-7.6-209.8-49.8-246.5zM457.9 287c-12.9 104-89 110.6-103 115.1-6 1.9-61.5 15.7-131.2 11.2 0 0-52 62.7-68.2 79-5.3 5.3-11.1 4.8-11-5.7 0-6.9.4-85.7.4-85.7-.1 0-.1 0 0 0-101.8-28.2-95.8-134.3-94.7-189.8 1.1-55.5 11.6-101 42.6-131.6 55.7-50.5 170.4-43 170.4-43 96.9.4 143.3 29.6 154.1 39.4 35.7 30.6 53.9 103.8 40.6 211.1zm-139-80.8c.4 8.6-12.5 9.2-12.9.6-1.1-22-11.4-32.7-32.6-33.9-8.6-.5-7.8-13.4.7-12.9 27.9 1.5 43.4 17.5 44.8 46.2zm20.3 11.3c1-42.4-25.5-75.6-75.8-79.3-8.5-.6-7.6-13.5.9-12.9 58 4.2 88.9 44.1 87.8 92.5-.1 8.6-13.1 8.2-12.9-.3zm47 13.4c.1 8.6-12.9 8.7-12.9.1-.6-81.5-54.9-125.9-120.8-126.4-8.5-.1-8.5-12.9 0-12.9 73.7.5 133 51.4 133.7 139.2zM374.9 329v.2c-10.8 19-31 40-51.8 33.3l-.2-.3c-21.1-5.9-70.8-31.5-102.2-56.5-16.2-12.8-31-27.9-42.4-42.4-10.3-12.9-20.7-28.2-30.8-46.6-21.3-38.5-26-55.7-26-55.7-6.7-20.8 14.2-41 33.3-51.8h.2c9.2-4.8 18-3.2 23.9 3.9 0 0 12.4 14.8 17.7 22.1 5 6.8 11.7 17.7 15.2 23.8 6.1 10.9 2.3 22-3.7 26.6l-12 9.6c-6.1 4.9-5.3 14-5.3 14s17.8 67.3 84.3 84.3c0 0 9.1.8 14-5.3l9.6-12c4.6-6 15.7-9.8 26.6-3.7 14.7 8.3 33.4 21.2 45.8 32.9 7 5.7 8.6 14.4 3.8 23.6z"],
	"vimeo": [448, 512, [], "f40a", "M403.2 32H44.8C20.1 32 0 52.1 0 76.8v358.4C0 459.9 20.1 480 44.8 480h358.4c24.7 0 44.8-20.1 44.8-44.8V76.8c0-24.7-20.1-44.8-44.8-44.8zM377 180.8c-1.4 31.5-23.4 74.7-66 129.4-44 57.2-81.3 85.8-111.7 85.8-18.9 0-34.8-17.4-47.9-52.3-25.5-93.3-36.4-148-57.4-148-2.4 0-10.9 5.1-25.4 15.2l-15.2-19.6c37.3-32.8 72.9-69.2 95.2-71.2 25.2-2.4 40.7 14.8 46.5 51.7 20.7 131.2 29.9 151 67.6 91.6 13.5-21.4 20.8-37.7 21.8-48.9 3.5-33.2-25.9-30.9-45.8-22.4 15.9-52.1 46.3-77.4 91.2-76 33.3.9 49 22.5 47.1 64.7z"],
	"vimeo-square": [448, 512, [], "f194", "M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-16.2 149.6c-1.4 31.1-23.2 73.8-65.3 127.9-43.5 56.5-80.3 84.8-110.4 84.8-18.7 0-34.4-17.2-47.3-51.6-25.2-92.3-35.9-146.4-56.7-146.4-2.4 0-10.8 5-25.1 15.1L64 192c36.9-32.4 72.1-68.4 94.1-70.4 24.9-2.4 40.2 14.6 46 51.1 20.5 129.6 29.6 149.2 66.8 90.5 13.4-21.2 20.6-37.2 21.5-48.3 3.4-32.8-25.6-30.6-45.2-22.2 15.7-51.5 45.8-76.5 90.1-75.1 32.9 1 48.4 22.4 46.5 64z"],
	"vimeo-v": [448, 512, [], "f27d", "M447.8 153.6c-2 43.6-32.4 103.3-91.4 179.1-60.9 79.2-112.4 118.8-154.6 118.8-26.1 0-48.2-24.1-66.3-72.3C100.3 250 85.3 174.3 56.2 174.3c-3.4 0-15.1 7.1-35.2 21.1L0 168.2c51.6-45.3 100.9-95.7 131.8-98.5 34.9-3.4 56.3 20.5 64.4 71.5 28.7 181.5 41.4 208.9 93.6 126.7 18.7-29.6 28.8-52.1 30.2-67.6 4.8-45.9-35.8-42.8-63.3-31 22-72.1 64.1-107.1 126.2-105.1 45.8 1.2 67.5 31.1 64.9 89.4z"],
	"vine": [384, 512, [], "f1ca", "M384 254.7v52.1c-18.4 4.2-36.9 6.1-52.1 6.1-36.9 77.4-103 143.8-125.1 156.2-14 7.9-27.1 8.4-42.7-.8C137 452 34.2 367.7 0 102.7h74.5C93.2 261.8 139 343.4 189.3 404.5c27.9-27.9 54.8-65.1 75.6-106.9-49.8-25.3-80.1-80.9-80.1-145.6 0-65.6 37.7-115.1 102.2-115.1 114.9 0 106.2 127.9 81.6 181.5 0 0-46.4 9.2-63.5-20.5 3.4-11.3 8.2-30.8 8.2-48.5 0-31.3-11.3-46.6-28.4-46.6-18.2 0-30.8 17.1-30.8 50 .1 79.2 59.4 118.7 129.9 101.9z"],
	"vk": [576, 512, [], "f189", "M545 117.7c3.7-12.5 0-21.7-17.8-21.7h-58.9c-15 0-21.9 7.9-25.6 16.7 0 0-30 73.1-72.4 120.5-13.7 13.7-20 18.1-27.5 18.1-3.7 0-9.4-4.4-9.4-16.9V117.7c0-15-4.2-21.7-16.6-21.7h-92.6c-9.4 0-15 7-15 13.5 0 14.2 21.2 17.5 23.4 57.5v86.8c0 19-3.4 22.5-10.9 22.5-20 0-68.6-73.4-97.4-157.4-5.8-16.3-11.5-22.9-26.6-22.9H38.8c-16.8 0-20.2 7.9-20.2 16.7 0 15.6 20 93.1 93.1 195.5C160.4 378.1 229 416 291.4 416c37.5 0 42.1-8.4 42.1-22.9 0-66.8-3.4-73.1 15.4-73.1 8.7 0 23.7 4.4 58.7 38.1 40 40 46.6 57.9 69 57.9h58.9c16.8 0 25.3-8.4 20.4-25-11.2-34.9-86.9-106.7-90.3-111.5-8.7-11.2-6.2-16.2 0-26.2.1-.1 72-101.3 79.4-135.6z"],
	"vnv": [640, 512, [], "f40b", "M104.9 352c-34.1 0-46.4-30.4-46.4-30.4L2.6 210.1S-7.8 192 13 192h32.8c10.4 0 13.2 8.7 18.8 18.1l36.7 74.5s5.2 13.1 21.1 13.1 21.1-13.1 21.1-13.1l36.7-74.5c5.6-9.5 8.4-18.1 18.8-18.1h32.8c20.8 0 10.4 18.1 10.4 18.1l-55.8 111.5S174.2 352 140 352h-35.1zm395 0c-34.1 0-46.4-30.4-46.4-30.4l-55.9-111.5S387.2 192 408 192h32.8c10.4 0 13.2 8.7 18.8 18.1l36.7 74.5s5.2 13.1 21.1 13.1 21.1-13.1 21.1-13.1l36.8-74.5c5.6-9.5 8.4-18.1 18.8-18.1H627c20.8 0 10.4 18.1 10.4 18.1l-55.9 111.5S569.3 352 535.1 352h-35.2zM337.6 192c34.1 0 46.4 30.4 46.4 30.4l55.9 111.5s10.4 18.1-10.4 18.1h-32.8c-10.4 0-13.2-8.7-18.8-18.1l-36.7-74.5s-5.2-13.1-21.1-13.1c-15.9 0-21.1 13.1-21.1 13.1l-36.7 74.5c-5.6 9.4-8.4 18.1-18.8 18.1h-32.9c-20.8 0-10.4-18.1-10.4-18.1l55.9-111.5s12.2-30.4 46.4-30.4h35.1z"],
	"vuejs": [448, 512, [], "f41f", "M356.9 64.3H280l-56 88.6-48-88.6H0L224 448 448 64.3h-91.1zm-301.2 32h53.8L224 294.5 338.4 96.3h53.8L224 384.5 55.7 96.3z"],
	"watchman-monitoring": [512, 512, [], "e087", "M256,16C123.452,16,16,123.452,16,256S123.452,496,256,496,496,388.548,496,256,388.548,16,256,16ZM121.69,429.122C70.056,388.972,36.741,326.322,36.741,256a218.519,218.519,0,0,1,9.587-64.122l102.9-17.895-.121,10.967-13.943,2.013s-.144,12.5-.144,19.549a12.778,12.778,0,0,0,4.887,10.349l9.468,7.4Zm105.692-283.27,8.48-7.618s6.934-5.38-.143-9.344c-7.188-4.024-39.53-34.5-39.53-34.5-5.348-5.477-8.257-7.347-15.46,0,0,0-32.342,30.474-39.529,34.5-7.078,3.964-.144,9.344-.144,9.344l8.481,7.618-.048,4.369L75.982,131.045c39.644-56.938,105.532-94.3,180.018-94.3A218.754,218.754,0,0,1,420.934,111.77l-193.512,37.7Zm34.063,329.269-33.9-250.857,9.467-7.4a12.778,12.778,0,0,0,4.888-10.349c0-7.044-.144-19.549-.144-19.549l-13.943-2.013-.116-10.474,241.711,31.391A218.872,218.872,0,0,1,475.259,256C475.259,375.074,379.831,472.212,261.445,475.121Z"],
	"waze": [512, 512, [], "f83f", "M502.17 201.67C516.69 287.53 471.23 369.59 389 409.8c13 34.1-12.4 70.2-48.32 70.2a51.68 51.68 0 0 1-51.57-49c-6.44.19-64.2 0-76.33-.64A51.69 51.69 0 0 1 159 479.92c-33.86-1.36-57.95-34.84-47-67.92-37.21-13.11-72.54-34.87-99.62-70.8-13-17.28-.48-41.8 20.84-41.8 46.31 0 32.22-54.17 43.15-110.26C94.8 95.2 193.12 32 288.09 32c102.48 0 197.15 70.67 214.08 169.67zM373.51 388.28c42-19.18 81.33-56.71 96.29-102.14 40.48-123.09-64.15-228-181.71-228-83.45 0-170.32 55.42-186.07 136-9.53 48.91 5 131.35-68.75 131.35C58.21 358.6 91.6 378.11 127 389.54c24.66-21.8 63.87-15.47 79.83 14.34 14.22 1 79.19 1.18 87.9.82a51.69 51.69 0 0 1 78.78-16.42zM205.12 187.13c0-34.74 50.84-34.75 50.84 0s-50.84 34.74-50.84 0zm116.57 0c0-34.74 50.86-34.75 50.86 0s-50.86 34.75-50.86 0zm-122.61 70.69c-3.44-16.94 22.18-22.18 25.62-5.21l.06.28c4.14 21.42 29.85 44 64.12 43.07 35.68-.94 59.25-22.21 64.11-42.77 4.46-16.05 28.6-10.36 25.47 6-5.23 22.18-31.21 62-91.46 62.9-42.55 0-80.88-27.84-87.9-64.25z"],
	"weebly": [512, 512, [], "f5cc", "M425.09 65.83c-39.88 0-73.28 25.73-83.66 64.33-18.16-58.06-65.5-64.33-84.95-64.33-19.78 0-66.8 6.28-85.28 64.33-10.38-38.6-43.45-64.33-83.66-64.33C38.59 65.83 0 99.72 0 143.03c0 28.96 4.18 33.27 77.17 233.48 22.37 60.57 67.77 69.35 92.74 69.35 39.23 0 70.04-19.46 85.93-53.98 15.89 34.83 46.69 54.29 85.93 54.29 24.97 0 70.36-9.1 92.74-69.67 76.55-208.65 77.5-205.58 77.5-227.2.63-48.32-36.01-83.47-86.92-83.47zm26.34 114.81l-65.57 176.44c-7.92 21.49-21.22 37.22-46.24 37.22-23.44 0-37.38-12.41-44.03-33.9l-39.28-117.42h-.95L216.08 360.4c-6.96 21.5-20.9 33.6-44.02 33.6-25.02 0-38.33-15.74-46.24-37.22L60.88 181.55c-5.38-14.83-7.92-23.91-7.92-34.5 0-16.34 15.84-29.36 38.33-29.36 18.69 0 31.99 11.8 36.11 29.05l44.03 139.82h.95l44.66-136.79c6.02-19.67 16.47-32.08 38.96-32.08s32.94 12.11 38.96 32.08l44.66 136.79h.95l44.03-139.82c4.12-17.25 17.42-29.05 36.11-29.05 22.17 0 38.33 13.32 38.33 35.71-.32 7.87-4.12 16.04-7.61 27.24z"],
	"weibo": [512, 512, [], "f18a", "M407 177.6c7.6-24-13.4-46.8-37.4-41.7-22 4.8-28.8-28.1-7.1-32.8 50.1-10.9 92.3 37.1 76.5 84.8-6.8 21.2-38.8 10.8-32-10.3zM214.8 446.7C108.5 446.7 0 395.3 0 310.4c0-44.3 28-95.4 76.3-143.7C176 67 279.5 65.8 249.9 161c-4 13.1 12.3 5.7 12.3 6 79.5-33.6 140.5-16.8 114 51.4-3.7 9.4 1.1 10.9 8.3 13.1 135.7 42.3 34.8 215.2-169.7 215.2zm143.7-146.3c-5.4-55.7-78.5-94-163.4-85.7-84.8 8.6-148.8 60.3-143.4 116s78.5 94 163.4 85.7c84.8-8.6 148.8-60.3 143.4-116zM347.9 35.1c-25.9 5.6-16.8 43.7 8.3 38.3 72.3-15.2 134.8 52.8 111.7 124-7.4 24.2 29.1 37 37.4 12 31.9-99.8-55.1-195.9-157.4-174.3zm-78.5 311c-17.1 38.8-66.8 60-109.1 46.3-40.8-13.1-58-53.4-40.3-89.7 17.7-35.4 63.1-55.4 103.4-45.1 42 10.8 63.1 50.2 46 88.5zm-86.3-30c-12.9-5.4-30 .3-38 12.9-8.3 12.9-4.3 28 8.6 34 13.1 6 30.8.3 39.1-12.9 8-13.1 3.7-28.3-9.7-34zm32.6-13.4c-5.1-1.7-11.4.6-14.3 5.4-2.9 5.1-1.4 10.6 3.7 12.9 5.1 2 11.7-.3 14.6-5.4 2.8-5.2 1.1-10.9-4-12.9z"],
	"weixin": [576, 512, [], "f1d7", "M385.2 167.6c6.4 0 12.6.3 18.8 1.1C387.4 90.3 303.3 32 207.7 32 100.5 32 13 104.8 13 197.4c0 53.4 29.3 97.5 77.9 131.6l-19.3 58.6 68-34.1c24.4 4.8 43.8 9.7 68.2 9.7 6.2 0 12.1-.3 18.3-.8-4-12.9-6.2-26.6-6.2-40.8-.1-84.9 72.9-154 165.3-154zm-104.5-52.9c14.5 0 24.2 9.7 24.2 24.4 0 14.5-9.7 24.2-24.2 24.2-14.8 0-29.3-9.7-29.3-24.2.1-14.7 14.6-24.4 29.3-24.4zm-136.4 48.6c-14.5 0-29.3-9.7-29.3-24.2 0-14.8 14.8-24.4 29.3-24.4 14.8 0 24.4 9.7 24.4 24.4 0 14.6-9.6 24.2-24.4 24.2zM563 319.4c0-77.9-77.9-141.3-165.4-141.3-92.7 0-165.4 63.4-165.4 141.3S305 460.7 397.6 460.7c19.3 0 38.9-5.1 58.6-9.9l53.4 29.3-14.8-48.6C534 402.1 563 363.2 563 319.4zm-219.1-24.5c-9.7 0-19.3-9.7-19.3-19.6 0-9.7 9.7-19.3 19.3-19.3 14.8 0 24.4 9.7 24.4 19.3 0 10-9.7 19.6-24.4 19.6zm107.1 0c-9.7 0-19.3-9.7-19.3-19.6 0-9.7 9.7-19.3 19.3-19.3 14.5 0 24.4 9.7 24.4 19.3.1 10-9.9 19.6-24.4 19.6z"],
	"whatsapp": [448, 512, [], "f232", "M380.9 97.1C339 55.1 283.2 32 223.9 32c-122.4 0-222 99.6-222 222 0 39.1 10.2 77.3 29.6 111L0 480l117.7-30.9c32.4 17.7 68.9 27 106.1 27h.1c122.3 0 224.1-99.6 224.1-222 0-59.3-25.2-115-67.1-157zm-157 341.6c-33.2 0-65.7-8.9-94-25.7l-6.7-4-69.8 18.3L72 359.2l-4.4-7c-18.5-29.4-28.2-63.3-28.2-98.2 0-101.7 82.8-184.5 184.6-184.5 49.3 0 95.6 19.2 130.4 54.1 34.8 34.9 56.2 81.2 56.1 130.5 0 101.8-84.9 184.6-186.6 184.6zm101.2-138.2c-5.5-2.8-32.8-16.2-37.9-18-5.1-1.9-8.8-2.8-12.5 2.8-3.7 5.6-14.3 18-17.6 21.8-3.2 3.7-6.5 4.2-12 1.4-32.6-16.3-54-29.1-75.5-66-5.7-9.8 5.7-9.1 16.3-30.3 1.8-3.7.9-6.9-.5-9.7-1.4-2.8-12.5-30.1-17.1-41.2-4.5-10.8-9.1-9.3-12.5-9.5-3.2-.2-6.9-.2-10.6-.2-3.7 0-9.7 1.4-14.8 6.9-5.1 5.6-19.4 19-19.4 46.3 0 27.3 19.9 53.7 22.6 57.4 2.8 3.7 39.1 59.7 94.8 83.8 35.2 15.2 49 16.5 66.6 13.9 10.7-1.6 32.8-13.4 37.4-26.4 4.6-13 4.6-24.1 3.2-26.4-1.3-2.5-5-3.9-10.5-6.6z"],
	"whatsapp-square": [448, 512, [], "f40c", "M224 122.8c-72.7 0-131.8 59.1-131.9 131.8 0 24.9 7 49.2 20.2 70.1l3.1 5-13.3 48.6 49.9-13.1 4.8 2.9c20.2 12 43.4 18.4 67.1 18.4h.1c72.6 0 133.3-59.1 133.3-131.8 0-35.2-15.2-68.3-40.1-93.2-25-25-58-38.7-93.2-38.7zm77.5 188.4c-3.3 9.3-19.1 17.7-26.7 18.8-12.6 1.9-22.4.9-47.5-9.9-39.7-17.2-65.7-57.2-67.7-59.8-2-2.6-16.2-21.5-16.2-41s10.2-29.1 13.9-33.1c3.6-4 7.9-5 10.6-5 2.6 0 5.3 0 7.6.1 2.4.1 5.7-.9 8.9 6.8 3.3 7.9 11.2 27.4 12.2 29.4s1.7 4.3.3 6.9c-7.6 15.2-15.7 14.6-11.6 21.6 15.3 26.3 30.6 35.4 53.9 47.1 4 2 6.3 1.7 8.6-1 2.3-2.6 9.9-11.6 12.5-15.5 2.6-4 5.3-3.3 8.9-2 3.6 1.3 23.1 10.9 27.1 12.9s6.6 3 7.6 4.6c.9 1.9.9 9.9-2.4 19.1zM400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM223.9 413.2c-26.6 0-52.7-6.7-75.8-19.3L64 416l22.5-82.2c-13.9-24-21.2-51.3-21.2-79.3C65.4 167.1 136.5 96 223.9 96c42.4 0 82.2 16.5 112.2 46.5 29.9 30 47.9 69.8 47.9 112.2 0 87.4-72.7 158.5-160.1 158.5z"],
	"whmcs": [448, 512, [], "f40d", "M448 161v-21.3l-28.5-8.8-2.2-10.4 20.1-20.7L427 80.4l-29 7.5-7.2-7.5 7.5-28.2-19.1-11.6-21.3 21-10.7-3.2-7-26.4h-22.6l-6.2 26.4-12.1 3.2-19.7-21-19.4 11 8.1 27.7-8.1 8.4-28.5-7.5-11 19.1 20.7 21-2.9 10.4-28.5 7.8-.3 21.7 28.8 7.5 2.4 12.1-20.1 19.9 10.4 18.5 29.6-7.5 7.2 8.6-8.1 26.9 19.9 11.6 19.4-20.4 11.6 2.9 6.7 28.5 22.6.3 6.7-28.8 11.6-3.5 20.7 21.6 20.4-12.1-8.8-28 7.8-8.1 28.8 8.8 10.3-20.1-20.9-18.8 2.2-12.1 29.1-7zm-119.2 45.2c-31.3 0-56.8-25.4-56.8-56.8s25.4-56.8 56.8-56.8 56.8 25.4 56.8 56.8c0 31.5-25.4 56.8-56.8 56.8zm72.3 16.4l46.9 14.5V277l-55.1 13.4-4.1 22.7 38.9 35.3-19.2 37.9-54-16.7-14.6 15.2 16.7 52.5-38.3 22.7-38.9-40.5-21.7 6.6-12.6 54-42.4-.5-12.6-53.6-21.7-5.6-36.4 38.4-37.4-21.7 15.2-50.5-13.7-16.1-55.5 14.1-19.7-34.8 37.9-37.4-4.8-22.8-54-14.1.5-40.9L54 219.9l5.7-19.7-38.9-39.4L41.5 125l53.6 14.1 15.2-15.7-15.2-52 36.4-20.7 36.8 39.4L191 84l11.6-52H245l11.6 45.9L234 72l-6.3-1.7-3.3 5.7-11 19.1-3.3 5.6 4.6 4.6 17.2 17.4-.3 1-23.8 6.5-6.2 1.7-.1 6.4-.2 12.9C153.8 161.6 118 204 118 254.7c0 58.3 47.3 105.7 105.7 105.7 50.5 0 92.7-35.4 103.2-82.8l13.2.2 6.9.1 1.6-6.7 5.6-24 1.9-.6 17.1 17.8 4.7 4.9 5.8-3.4 20.4-12.1 5.8-3.5-2-6.5-6.8-21.2z"],
	"wikipedia-w": [640, 512, [], "f266", "M640 51.2l-.3 12.2c-28.1.8-45 15.8-55.8 40.3-25 57.8-103.3 240-155.3 358.6H415l-81.9-193.1c-32.5 63.6-68.3 130-99.2 193.1-.3.3-15 0-15-.3C172 352.3 122.8 243.4 75.8 133.4 64.4 106.7 26.4 63.4.2 63.7c0-3.1-.3-10-.3-14.2h161.9v13.9c-19.2 1.1-52.8 13.3-43.3 34.2 21.9 49.7 103.6 240.3 125.6 288.6 15-29.7 57.8-109.2 75.3-142.8-13.9-28.3-58.6-133.9-72.8-160-9.7-17.8-36.1-19.4-55.8-19.7V49.8l142.5.3v13.1c-19.4.6-38.1 7.8-29.4 26.1 18.9 40 30.6 68.1 48.1 104.7 5.6-10.8 34.7-69.4 48.1-100.8 8.9-20.6-3.9-28.6-38.6-29.4.3-3.6 0-10.3.3-13.6 44.4-.3 111.1-.3 123.1-.6v13.6c-22.5.8-45.8 12.8-58.1 31.7l-59.2 122.8c6.4 16.1 63.3 142.8 69.2 156.7L559.2 91.8c-8.6-23.1-36.4-28.1-47.2-28.3V49.6l127.8 1.1.2.5z"],
	"windows": [448, 512, [], "f17a", "M0 93.7l183.6-25.3v177.4H0V93.7zm0 324.6l183.6 25.3V268.4H0v149.9zm203.8 28L448 480V268.4H203.8v177.9zm0-380.6v180.1H448V32L203.8 65.7z"],
	"wix": [640, 512, [], "f5cf", "M393.38 131.69c0 13.03 2.08 32.69-28.68 43.83-9.52 3.45-15.95 9.66-15.95 9.66 0-31 4.72-42.22 17.4-48.86 9.75-5.11 27.23-4.63 27.23-4.63zm-115.8 35.54l-34.24 132.66-28.48-108.57c-7.69-31.99-20.81-48.53-48.43-48.53-27.37 0-40.66 16.18-48.43 48.53L89.52 299.89 55.28 167.23C49.73 140.51 23.86 128.96 0 131.96l65.57 247.93s21.63 1.56 32.46-3.96c14.22-7.25 20.98-12.84 29.59-46.57 7.67-30.07 29.11-118.41 31.12-124.7 4.76-14.94 11.09-13.81 15.4 0 1.97 6.3 23.45 94.63 31.12 124.7 8.6 33.73 15.37 39.32 29.59 46.57 10.82 5.52 32.46 3.96 32.46 3.96l65.57-247.93c-24.42-3.07-49.82 8.93-55.3 35.27zm115.78 5.21s-4.1 6.34-13.46 11.57c-6.01 3.36-11.78 5.64-17.97 8.61-15.14 7.26-13.18 13.95-13.18 35.2v152.07s16.55 2.09 27.37-3.43c13.93-7.1 17.13-13.95 17.26-44.78V181.41l-.02.01v-8.98zm163.44 84.08L640 132.78s-35.11-5.98-52.5 9.85c-13.3 12.1-24.41 29.55-54.18 72.47-.47.73-6.25 10.54-13.07 0-29.29-42.23-40.8-60.29-54.18-72.47-17.39-15.83-52.5-9.85-52.5-9.85l83.2 123.74-82.97 123.36s36.57 4.62 53.95-11.21c11.49-10.46 17.58-20.37 52.51-70.72 6.81-10.52 12.57-.77 13.07 0 29.4 42.38 39.23 58.06 53.14 70.72 17.39 15.83 53.32 11.21 53.32 11.21L556.8 256.52z"],
	"wizards-of-the-coast": [640, 512, [], "f730", "M219.19 345.69c-1.9 1.38-11.07 8.44-.26 23.57 4.64 6.42 14.11 12.79 21.73 6.55 6.5-4.88 7.35-12.92.26-23.04-5.47-7.76-14.28-12.88-21.73-7.08zm336.75 75.94c-.34 1.7-.55 1.67.79 0 2.09-4.19 4.19-10.21 4.98-19.9 3.14-38.49-40.33-71.49-101.34-78.03-54.73-6.02-124.38 9.17-188.8 60.49l-.26 1.57c2.62 4.98 4.98 10.74 3.4 21.21l.79.26c63.89-58.4 131.19-77.25 184.35-73.85 58.4 3.67 100.03 34.04 100.03 68.08-.01 9.96-2.63 15.72-3.94 20.17zM392.28 240.42c.79 7.07 4.19 10.21 9.17 10.47 5.5.26 9.43-2.62 10.47-6.55.79-3.4 2.09-29.85 2.09-29.85s-11.26 6.55-14.93 10.47c-3.66 3.68-7.33 8.39-6.8 15.46zm-50.02-151.1C137.75 89.32 13.1 226.8.79 241.2c-1.05.52-1.31.79.79 1.31 60.49 16.5 155.81 81.18 196.13 202.16l1.05.26c55.25-69.92 140.88-128.05 236.99-128.05 80.92 0 130.15 42.16 130.15 80.39 0 18.33-6.55 33.52-22.26 46.35 0 .96-.2.79.79.79 14.66-10.74 27.5-28.8 27.5-48.18 0-22.78-12.05-38.23-12.05-38.23 7.07 7.07 10.74 16.24 10.74 16.24 5.76-40.85 26.97-62.32 26.97-62.32-2.36-9.69-6.81-17.81-6.81-17.81 7.59 8.12 14.4 27.5 14.4 41.37 0 10.47-3.4 22.78-12.57 31.95l.26.52c8.12-4.98 16.5-16.76 16.5-37.97 0-15.71-4.71-25.92-4.71-25.92 5.76-5.24 11.26-9.17 15.97-11.78.79 3.4 2.09 9.69 2.36 14.93 0 1.05.79 1.83 1.05 0 .79-5.76-.26-16.24-.26-16.5 6.02-3.14 9.69-4.45 9.69-4.45C617.74 176 489.43 89.32 342.26 89.32zm-99.24 289.62c-11.06 8.99-24.2 4.08-30.64-4.19-7.45-9.58-6.76-24.09 4.19-32.47 14.85-11.35 27.08-.49 31.16 5.5.28.39 12.13 16.57-4.71 31.16zm2.09-136.43l9.43-17.81 11.78 70.96-12.57 6.02-24.62-28.8 14.14-26.71 3.67 4.45-1.83-8.11zm18.59 117.58l-.26-.26c2.05-4.1-2.5-6.61-17.54-31.69-1.31-2.36-3.14-2.88-4.45-2.62l-.26-.52c7.86-5.76 15.45-10.21 25.4-15.71l.52.26c1.31 1.83 2.09 2.88 3.4 4.71l-.26.52c-1.05-.26-2.36-.79-5.24.26-2.09.79-7.86 3.67-12.31 7.59v1.31c1.57 2.36 3.93 6.55 5.76 9.69h.26c10.05-6.28 7.56-4.55 11.52-7.86h.26c.52 1.83.52 1.83 1.83 5.5l-.26.26c-3.06.61-4.65.34-11.52 5.5v.26c9.46 17.02 11.01 16.75 12.57 15.97l.26.26c-2.34 1.59-6.27 4.21-9.68 6.57zm55.26-32.47c-3.14 1.57-6.02 2.88-9.95 4.98l-.26-.26c1.29-2.59 1.16-2.71-11.78-32.47l-.26-.26c-.15 0-8.9 3.65-9.95 7.33h-.52l-1.05-5.76.26-.52c7.29-4.56 25.53-11.64 27.76-12.57l.52.26 3.14 4.98-.26.52c-3.53-1.76-7.35.76-12.31 2.62v.26c12.31 32.01 12.67 30.64 14.66 30.64v.25zm44.77-16.5c-4.19 1.05-5.24 1.31-9.69 2.88l-.26-.26.52-4.45c-1.05-3.4-3.14-11.52-3.67-13.62l-.26-.26c-3.4.79-8.9 2.62-12.83 3.93l-.26.26c.79 2.62 3.14 9.95 4.19 13.88.79 2.36 1.83 2.88 2.88 3.14v.52c-3.67 1.05-7.07 2.62-10.21 3.93l-.26-.26c1.05-1.31 1.05-2.88.26-4.98-1.05-3.14-8.12-23.83-9.17-27.23-.52-1.83-1.57-3.14-2.62-3.14v-.52c3.14-1.05 6.02-2.09 10.74-3.4l.26.26-.26 4.71c1.31 3.93 2.36 7.59 3.14 9.69h.26c3.93-1.31 9.43-2.88 12.83-3.93l.26-.26-2.62-9.43c-.52-1.83-1.05-3.4-2.62-3.93v-.26c4.45-1.05 7.33-1.83 10.74-2.36l.26.26c-1.05 1.31-1.05 2.88-.52 4.45 1.57 6.28 4.71 20.43 6.28 26.45.54 2.62 1.85 3.41 2.63 3.93zm32.21-6.81l-.26.26c-4.71.52-14.14 2.36-22.52 4.19l-.26-.26.79-4.19c-1.57-7.86-3.4-18.59-4.98-26.19-.26-1.83-.79-2.88-2.62-3.67l.79-.52c9.17-1.57 20.16-2.36 24.88-2.62l.26.26c.52 2.36.79 3.14 1.57 5.5l-.26.26c-1.14-1.14-3.34-3.2-16.24-.79l-.26.26c.26 1.57 1.05 6.55 1.57 9.95l.26.26c9.52-1.68 4.76-.06 10.74-2.36h.26c0 1.57-.26 1.83-.26 5.24h-.26c-4.81-1.03-2.15-.9-10.21 0l-.26.26c.26 2.09 1.57 9.43 2.09 12.57l.26.26c1.15.38 14.21-.65 16.24-4.71h.26c-.53 2.38-1.05 4.21-1.58 6.04zm10.74-44.51c-4.45 2.36-8.12 2.88-11 2.88-.25.02-11.41 1.09-17.54-9.95-6.74-10.79-.98-25.2 5.5-31.69 8.8-8.12 23.35-10.1 28.54-17.02 8.03-10.33-13.04-22.31-29.59-5.76l-2.62-2.88 5.24-16.24c25.59-1.57 45.2-3.04 50.02 16.24.79 3.14 0 9.43-.26 12.05 0 2.62-1.83 18.85-2.09 23.04-.52 4.19-.79 18.33-.79 20.69.26 2.36.52 4.19 1.57 5.5 1.57 1.83 5.76 1.83 5.76 1.83l-.79 4.71c-11.82-1.07-10.28-.59-20.43-1.05-3.22-5.15-2.23-3.28-4.19-7.86 0 .01-4.19 3.94-7.33 5.51zm37.18 21.21c-6.35-10.58-19.82-7.16-21.73 5.5-2.63 17.08 14.3 19.79 20.69 10.21l.26.26c-.52 1.83-1.83 6.02-1.83 6.28l-.52.52c-10.3 6.87-28.5-2.5-25.66-18.59 1.94-10.87 14.44-18.93 28.8-9.95l.26.52c0 1.06-.27 3.41-.27 5.25zm5.77-87.73v-6.55c.69 0 19.65 3.28 27.76 7.33l-1.57 17.54s10.21-9.43 15.45-10.74c5.24-1.57 14.93 7.33 14.93 7.33l-11.26 11.26c-12.07-6.35-19.59-.08-20.69.79-5.29 38.72-8.6 42.17 4.45 46.09l-.52 4.71c-17.55-4.29-18.53-4.5-36.92-7.33l.79-4.71c7.25 0 7.48-5.32 7.59-6.81 0 0 4.98-53.16 4.98-55.25-.02-2.87-4.99-3.66-4.99-3.66zm10.99 114.44c-8.12-2.09-14.14-11-10.74-20.69 3.14-9.43 12.31-12.31 18.85-10.21 9.17 2.62 12.83 11.78 10.74 19.38-2.61 8.9-9.42 13.87-18.85 11.52zm42.16 9.69c-2.36-.52-7.07-2.36-8.64-2.88v-.26l1.57-1.83c.59-8.24.59-7.27.26-7.59-4.82-1.81-6.66-2.36-7.07-2.36-1.31 1.83-2.88 4.45-3.67 5.5l-.79 3.4v.26c-1.31-.26-3.93-1.31-6.02-1.57v-.26l2.62-1.83c3.4-4.71 9.95-14.14 13.88-20.16v-2.09l.52-.26c2.09.79 5.5 2.09 7.59 2.88.48.48.18-1.87-1.05 25.14-.24 1.81.02 2.6.8 3.91zm-4.71-89.82c11.25-18.27 30.76-16.19 34.04-3.4L539.7 198c2.34-6.25-2.82-9.9-4.45-11.26l1.83-3.67c12.22 10.37 16.38 13.97 22.52 20.43-25.91 73.07-30.76 80.81-24.62 84.32l-1.83 4.45c-6.37-3.35-8.9-4.42-17.81-8.64l2.09-6.81c-.26-.26-3.93 3.93-9.69 3.67-19.06-1.3-22.89-31.75-9.67-52.9zm29.33 79.34c0-5.71-6.34-7.89-7.86-5.24-1.31 2.09 1.05 4.98 2.88 8.38 1.57 2.62 2.62 6.28 1.05 9.43-2.64 6.34-12.4 5.31-15.45-.79 0-.7-.27.09 1.83-4.71l.79-.26c-.57 5.66 6.06 9.61 8.38 4.98 1.05-2.09-.52-5.5-2.09-8.38-1.57-2.62-3.67-6.28-1.83-9.69 2.72-5.06 11.25-4.47 14.66 2.36v.52l-2.36 3.4zm21.21 13.36c-1.96-3.27-.91-2.14-4.45-4.71h-.26c-2.36 4.19-5.76 10.47-8.64 16.24-1.31 2.36-1.05 3.4-.79 3.93l-.26.26-5.76-4.45.26-.26 2.09-1.31c3.14-5.76 6.55-12.05 9.17-17.02v-.26c-2.64-1.98-1.22-1.51-6.02-1.83v-.26l3.14-3.4h.26c3.67 2.36 9.95 6.81 12.31 8.9l.26.26-1.31 3.91zm27.23-44.26l-2.88-2.88c.79-2.36 1.83-4.98 2.09-7.59.75-9.74-11.52-11.84-11.52-4.98 0 4.98 7.86 19.38 7.86 27.76 0 10.21-5.76 15.71-13.88 16.5-8.38.79-20.16-10.47-20.16-10.47l4.98-14.4 2.88 2.09c-2.97 17.8 17.68 20.37 13.35 5.24-1.06-4.02-18.75-34.2 2.09-38.23 13.62-2.36 23.04 16.5 23.04 16.5l-7.85 10.46zm35.62-10.21c-11-30.38-60.49-127.53-191.95-129.62-53.42-1.05-94.27 15.45-132.76 37.97l85.63-9.17-91.39 20.69 25.14 19.64-3.93-16.5c7.5-1.71 39.15-8.45 66.77-8.9l-22.26 80.39c13.61-.7 18.97-8.98 19.64-22.78l4.98-1.05.26 26.71c-22.46 3.21-37.3 6.69-49.49 9.95l13.09-43.21-61.54-36.66 2.36 8.12 10.21 4.98c6.28 18.59 19.38 56.56 20.43 58.66 1.95 4.28 3.16 5.78 12.05 4.45l1.05 4.98c-16.08 4.86-23.66 7.61-39.02 14.4l-2.36-4.71c4.4-2.94 8.73-3.94 5.5-12.83-23.7-62.5-21.48-58.14-22.78-59.44l2.36-4.45 33.52 67.3c-3.84-11.87 1.68 1.69-32.99-78.82l-41.9 88.51 4.71-13.88-35.88-42.16 27.76 93.48-11.78 8.38C95 228.58 101.05 231.87 93.23 231.52c-5.5-.26-13.62 5.5-13.62 5.5L74.63 231c30.56-23.53 31.62-24.33 58.4-42.68l4.19 7.07s-5.76 4.19-7.86 7.07c-5.9 9.28 1.67 13.28 61.8 75.68l-18.85-58.92 39.8-10.21 25.66 30.64 4.45-12.31-4.98-24.62 13.09-3.4.52 3.14 3.67-10.47-94.27 29.33 11.26-4.98-13.62-42.42 17.28-9.17 30.11 36.14 28.54-13.09c-1.41-7.47-2.47-14.5-4.71-19.64l17.28 13.88 4.71-2.09-59.18-42.68 23.08 11.5c18.98-6.07 25.23-7.47 32.21-9.69l2.62 11c-12.55 12.55 1.43 16.82 6.55 19.38l-13.62-61.01 12.05 28.28c4.19-1.31 7.33-2.09 7.33-2.09l2.62 8.64s-3.14 1.05-6.28 2.09l8.9 20.95 33.78-65.73-20.69 61.01c42.42-24.09 81.44-36.66 131.98-35.88 67.04 1.05 167.33 40.85 199.8 139.83.78 2.1-.01 2.63-.79.27zM203.48 152.43s1.83-.52 4.19-1.31l9.43 7.59c-.4 0-3.44-.25-11.26 2.36l-2.36-8.64zm143.76 38.5c-1.57-.6-26.46-4.81-33.26 20.69l21.73 17.02 11.53-37.71zM318.43 67.07c-58.4 0-106.05 12.05-114.96 14.4v.79c8.38 2.09 14.4 4.19 21.21 11.78l1.57.26c6.55-1.83 48.97-13.88 110.24-13.88 180.16 0 301.67 116.79 301.67 223.37v9.95c0 1.31.79 2.62 1.05.52.52-2.09.79-8.64.79-19.64.26-83.79-96.63-227.55-321.57-227.55zm211.06 169.68c1.31-5.76 0-12.31-7.33-13.09-9.62-1.13-16.14 23.79-17.02 33.52-.79 5.5-1.31 14.93 6.02 14.93 4.68-.01 9.72-.91 18.33-35.36zm-61.53 42.95c-2.62-.79-9.43-.79-12.57 10.47-1.83 6.81.52 13.35 6.02 14.66 3.67 1.05 8.9.52 11.78-10.74 2.62-9.94-1.83-13.61-5.23-14.39zM491 300.65c1.83.52 3.14 1.05 5.76 1.83 0-1.83.52-8.38.79-12.05-1.05 1.31-5.5 8.12-6.55 9.95v.27z"],
	"wodu": [640, 512, [], "e088", "M178.414 339.706H141.1L112.166 223.475h-.478L83.228 339.706H45.2L0 168.946H37.548L64.574 285.177h.478L94.707 168.946h35.157l29.178 117.667h.479L187.5 168.946h36.831zM271.4 212.713c38.984 0 64.1 25.828 64.1 65.291 0 39.222-25.111 65.05-64.1 65.05-38.743 0-63.855-25.828-63.855-65.05C207.547 238.541 232.659 212.713 271.4 212.713zm0 104.753c23.2 0 30.133-19.852 30.133-39.462 0-19.852-6.934-39.7-30.133-39.7-27.7 0-29.894 19.85-29.894 39.7C241.508 297.614 248.443 317.466 271.4 317.466zM435.084 323.922h-.478c-7.893 13.392-21.765 19.132-37.548 19.132-37.31 0-55.485-32.045-55.485-66.246 0-33.243 18.415-64.095 54.767-64.095 14.589 0 28.938 6.218 36.831 18.416h.24V168.946h33.96v170.76H435.084zM405.428 238.3c-22.24 0-29.894 19.134-29.894 39.463 0 19.371 8.848 39.7 29.894 39.7 22.482 0 29.178-19.613 29.178-39.94C434.606 257.436 427.432 238.3 405.428 238.3zM592.96 339.706H560.673V322.487h-.718c-8.609 13.87-23.436 20.567-37.786 20.567-36.113 0-45.2-20.328-45.2-50.941V216.061h33.959V285.9c0 20.329 5.979 30.372 21.765 30.372 18.415 0 26.306-10.283 26.306-35.393V216.061H592.96zM602.453 302.876H640v36.83H602.453z"],
	"wolf-pack-battalion": [512, 512, [], "f514", "M267.73 471.53l10.56 15.84 5.28-12.32 5.28 7V512c21.06-7.92 21.11-66.86 25.51-97.21 4.62-31.89-.88-92.81 81.37-149.11-8.88-23.61-12-49.43-2.64-80.05C421 189 447 196.21 456.43 239.73l-30.35 8.36c11.15 23 17 46.76 13.2 72.14L412 313.18l-6.16 33.43-18.47-7-8.8 33.39-19.35-7 26.39 21.11 8.8-28.15L419 364.2l7-35.63 26.39 14.52c.25-20 7-58.06-8.8-84.45l26.39 5.28c4-22.07-2.38-39.21-7.92-56.74l22.43 9.68c-.44-25.07-29.94-56.79-61.58-58.5-20.22-1.09-56.74-25.17-54.1-51.9 2-19.87 17.45-42.62 43.11-49.7-44 36.51-9.68 67.3 5.28 73.46 4.4-11.44 17.54-69.08 0-130.2-40.39 22.87-89.65 65.1-93.2 147.79l-58 38.71-3.52 93.25L369.78 220l7 7-17.59 3.52-44 38.71-15.84-5.28-28.1 49.25-3.52 119.64 21.11 15.84-32.55 15.84-32.55-15.84 21.11-15.84-3.52-119.64-28.15-49.26-15.84 5.28-44-38.71-17.58-3.51 7-7 107.33 59.82-3.52-93.25-58.06-38.71C185 65.1 135.77 22.87 95.3 0c-17.54 61.12-4.4 118.76 0 130.2 15-6.16 49.26-36.95 5.28-73.46 25.66 7.08 41.15 29.83 43.11 49.7 2.63 26.74-33.88 50.81-54.1 51.9-31.65 1.72-61.15 33.44-61.59 58.51l22.43-9.68c-5.54 17.53-11.91 34.67-7.92 56.74l26.39-5.28c-15.76 26.39-9.05 64.43-8.8 84.45l26.39-14.52 7 35.63 24.63-5.28 8.8 28.15L153.35 366 134 373l-8.8-33.43-18.47 7-6.16-33.43-27.27 7c-3.82-25.38 2-49.1 13.2-72.14l-30.35-8.36c9.4-43.52 35.47-50.77 63.34-54.1 9.36 30.62 6.24 56.45-2.64 80.05 82.25 56.3 76.75 117.23 81.37 149.11 4.4 30.35 4.45 89.29 25.51 97.21v-29.83l5.28-7 5.28 12.32 10.56-15.84 11.44 21.11 11.43-21.1zm79.17-95L331.06 366c7.47-4.36 13.76-8.42 19.35-12.32-.6 7.22-.27 13.84-3.51 22.84zm28.15-49.26c-.4 10.94-.9 21.66-1.76 31.67-7.85-1.86-15.57-3.8-21.11-7 8.24-7.94 15.55-16.32 22.87-24.68zm24.63 5.28c0-13.43-2.05-24.21-5.28-33.43a235 235 0 0 1-18.47 27.27zm3.52-80.94c19.44 12.81 27.8 33.66 29.91 56.3-12.32-4.53-24.63-9.31-36.95-10.56 5.06-12 6.65-28.14 7-45.74zm-1.76-45.74c.81 14.3 1.84 28.82 1.76 42.23 19.22-8.11 29.78-9.72 44-14.08-10.61-18.96-27.2-25.53-45.76-28.16zM165.68 376.52L181.52 366c-7.47-4.36-13.76-8.42-19.35-12.32.6 7.26.27 13.88 3.51 22.88zm-28.15-49.26c.4 10.94.9 21.66 1.76 31.67 7.85-1.86 15.57-3.8 21.11-7-8.24-7.93-15.55-16.31-22.87-24.67zm-24.64 5.28c0-13.43 2-24.21 5.28-33.43a235 235 0 0 0 18.47 27.27zm-3.52-80.94c-19.44 12.81-27.8 33.66-29.91 56.3 12.32-4.53 24.63-9.31 37-10.56-5-12-6.65-28.14-7-45.74zm1.76-45.74c-.81 14.3-1.84 28.82-1.76 42.23-19.22-8.11-29.78-9.72-44-14.08 10.63-18.95 27.23-25.52 45.76-28.15z"],
	"wordpress": [512, 512, [], "f19a", "M61.7 169.4l101.5 278C92.2 413 43.3 340.2 43.3 256c0-30.9 6.6-60.1 18.4-86.6zm337.9 75.9c0-26.3-9.4-44.5-17.5-58.7-10.8-17.5-20.9-32.4-20.9-49.9 0-19.6 14.8-37.8 35.7-37.8.9 0 1.8.1 2.8.2-37.9-34.7-88.3-55.9-143.7-55.9-74.3 0-139.7 38.1-177.8 95.9 5 .2 9.7.3 13.7.3 22.2 0 56.7-2.7 56.7-2.7 11.5-.7 12.8 16.2 1.4 17.5 0 0-11.5 1.3-24.3 2l77.5 230.4L249.8 247l-33.1-90.8c-11.5-.7-22.3-2-22.3-2-11.5-.7-10.1-18.2 1.3-17.5 0 0 35.1 2.7 56 2.7 22.2 0 56.7-2.7 56.7-2.7 11.5-.7 12.8 16.2 1.4 17.5 0 0-11.5 1.3-24.3 2l76.9 228.7 21.2-70.9c9-29.4 16-50.5 16-68.7zm-139.9 29.3l-63.8 185.5c19.1 5.6 39.2 8.7 60.1 8.7 24.8 0 48.5-4.3 70.6-12.1-.6-.9-1.1-1.9-1.5-2.9l-65.4-179.2zm183-120.7c.9 6.8 1.4 14 1.4 21.9 0 21.6-4 45.8-16.2 76.2l-65 187.9C426.2 403 468.7 334.5 468.7 256c0-37-9.4-71.8-26-102.1zM504 256c0 136.8-111.3 248-248 248C119.2 504 8 392.7 8 256 8 119.2 119.2 8 256 8c136.7 0 248 111.2 248 248zm-11.4 0c0-130.5-106.2-236.6-236.6-236.6C125.5 19.4 19.4 125.5 19.4 256S125.6 492.6 256 492.6c130.5 0 236.6-106.1 236.6-236.6z"],
	"wordpress-simple": [512, 512, [], "f411", "M256 8C119.3 8 8 119.2 8 256c0 136.7 111.3 248 248 248s248-111.3 248-248C504 119.2 392.7 8 256 8zM33 256c0-32.3 6.9-63 19.3-90.7l106.4 291.4C84.3 420.5 33 344.2 33 256zm223 223c-21.9 0-43-3.2-63-9.1l66.9-194.4 68.5 187.8c.5 1.1 1 2.1 1.6 3.1-23.1 8.1-48 12.6-74 12.6zm30.7-327.5c13.4-.7 25.5-2.1 25.5-2.1 12-1.4 10.6-19.1-1.4-18.4 0 0-36.1 2.8-59.4 2.8-21.9 0-58.7-2.8-58.7-2.8-12-.7-13.4 17.7-1.4 18.4 0 0 11.4 1.4 23.4 2.1l34.7 95.2L200.6 393l-81.2-241.5c13.4-.7 25.5-2.1 25.5-2.1 12-1.4 10.6-19.1-1.4-18.4 0 0-36.1 2.8-59.4 2.8-4.2 0-9.1-.1-14.4-.3C109.6 73 178.1 33 256 33c58 0 110.9 22.2 150.6 58.5-1-.1-1.9-.2-2.9-.2-21.9 0-37.4 19.1-37.4 39.6 0 18.4 10.6 33.9 21.9 52.3 8.5 14.8 18.4 33.9 18.4 61.5 0 19.1-7.3 41.2-17 72.1l-22.2 74.3-80.7-239.6zm81.4 297.2l68.1-196.9c12.7-31.8 17-57.2 17-79.9 0-8.2-.5-15.8-1.5-22.9 17.4 31.8 27.3 68.2 27.3 107 0 82.3-44.6 154.1-110.9 192.7z"],
	"wpbeginner": [512, 512, [], "f297", "M462.799 322.374C519.01 386.682 466.961 480 370.944 480c-39.602 0-78.824-17.687-100.142-50.04-6.887.356-22.702.356-29.59 0C219.848 462.381 180.588 480 141.069 480c-95.49 0-148.348-92.996-91.855-157.626C-29.925 190.523 80.479 32 256.006 32c175.632 0 285.87 158.626 206.793 290.374zm-339.647-82.972h41.529v-58.075h-41.529v58.075zm217.18 86.072v-23.839c-60.506 20.915-132.355 9.198-187.589-33.971l.246 24.897c51.101 46.367 131.746 57.875 187.343 32.913zm-150.753-86.072h166.058v-58.075H189.579v58.075z"],
	"wpexplorer": [512, 512, [], "f2de", "M512 256c0 141.2-114.7 256-256 256C114.8 512 0 397.3 0 256S114.7 0 256 0s256 114.7 256 256zm-32 0c0-123.2-100.3-224-224-224C132.5 32 32 132.5 32 256s100.5 224 224 224 224-100.5 224-224zM160.9 124.6l86.9 37.1-37.1 86.9-86.9-37.1 37.1-86.9zm110 169.1l46.6 94h-14.6l-50-100-48.9 100h-14l51.1-106.9-22.3-9.4 6-14 68.6 29.1-6 14.3-16.5-7.1zm-11.8-116.3l68.6 29.4-29.4 68.3L230 246l29.1-68.6zm80.3 42.9l54.6 23.1-23.4 54.3-54.3-23.1 23.1-54.3z"],
	"wpforms": [448, 512, [], "f298", "M448 75.2v361.7c0 24.3-19 43.2-43.2 43.2H43.2C19.3 480 0 461.4 0 436.8V75.2C0 51.1 18.8 32 43.2 32h361.7c24 0 43.1 18.8 43.1 43.2zm-37.3 361.6V75.2c0-3-2.6-5.8-5.8-5.8h-9.3L285.3 144 224 94.1 162.8 144 52.5 69.3h-9.3c-3.2 0-5.8 2.8-5.8 5.8v361.7c0 3 2.6 5.8 5.8 5.8h361.7c3.2.1 5.8-2.7 5.8-5.8zM150.2 186v37H76.7v-37h73.5zm0 74.4v37.3H76.7v-37.3h73.5zm11.1-147.3l54-43.7H96.8l64.5 43.7zm210 72.9v37h-196v-37h196zm0 74.4v37.3h-196v-37.3h196zm-84.6-147.3l64.5-43.7H232.8l53.9 43.7zM371.3 335v37.3h-99.4V335h99.4z"],
	"wpressr": [496, 512, [], "f3e4", "M248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm171.33 158.6c-15.18 34.51-30.37 69.02-45.63 103.5-2.44 5.51-6.89 8.24-12.97 8.24-23.02-.01-46.03.06-69.05-.05-5.12-.03-8.25 1.89-10.34 6.72-10.19 23.56-20.63 47-30.95 70.5-1.54 3.51-4.06 5.29-7.92 5.29-45.94-.01-91.87-.02-137.81 0-3.13 0-5.63-1.15-7.72-3.45-11.21-12.33-22.46-24.63-33.68-36.94-2.69-2.95-2.79-6.18-1.21-9.73 8.66-19.54 17.27-39.1 25.89-58.66 12.93-29.35 25.89-58.69 38.75-88.08 1.7-3.88 4.28-5.68 8.54-5.65 14.24.1 28.48.02 42.72.05 6.24.01 9.2 4.84 6.66 10.59-13.6 30.77-27.17 61.55-40.74 92.33-5.72 12.99-11.42 25.99-17.09 39-3.91 8.95 7.08 11.97 10.95 5.6.23-.37-1.42 4.18 30.01-67.69 1.36-3.1 3.41-4.4 6.77-4.39 15.21.08 30.43.02 45.64.04 5.56.01 7.91 3.64 5.66 8.75-8.33 18.96-16.71 37.9-24.98 56.89-4.98 11.43 8.08 12.49 11.28 5.33.04-.08 27.89-63.33 32.19-73.16 2.02-4.61 5.44-6.51 10.35-6.5 26.43.05 52.86 0 79.29.05 12.44.02 13.93-13.65 3.9-13.64-25.26.03-50.52.02-75.78.02-6.27 0-7.84-2.47-5.27-8.27 5.78-13.06 11.59-26.11 17.3-39.21 1.73-3.96 4.52-5.79 8.84-5.78 23.09.06 25.98.02 130.78.03 6.08-.01 8.03 2.79 5.62 8.27z"],
	"xbox": [512, 512, [], "f412", "M369.9 318.2c44.3 54.3 64.7 98.8 54.4 118.7-7.9 15.1-56.7 44.6-92.6 55.9-29.6 9.3-68.4 13.3-100.4 10.2-38.2-3.7-76.9-17.4-110.1-39C93.3 445.8 87 438.3 87 423.4c0-29.9 32.9-82.3 89.2-142.1 32-33.9 76.5-73.7 81.4-72.6 9.4 2.1 84.3 75.1 112.3 109.5zM188.6 143.8c-29.7-26.9-58.1-53.9-86.4-63.4-15.2-5.1-16.3-4.8-28.7 8.1-29.2 30.4-53.5 79.7-60.3 122.4-5.4 34.2-6.1 43.8-4.2 60.5 5.6 50.5 17.3 85.4 40.5 120.9 9.5 14.6 12.1 17.3 9.3 9.9-4.2-11-.3-37.5 9.5-64 14.3-39 53.9-112.9 120.3-194.4zm311.6 63.5C483.3 127.3 432.7 77 425.6 77c-7.3 0-24.2 6.5-36 13.9-23.3 14.5-41 31.4-64.3 52.8C367.7 197 427.5 283.1 448.2 346c6.8 20.7 9.7 41.1 7.4 52.3-1.7 8.5-1.7 8.5 1.4 4.6 6.1-7.7 19.9-31.3 25.4-43.5 7.4-16.2 15-40.2 18.6-58.7 4.3-22.5 3.9-70.8-.8-93.4zM141.3 43C189 40.5 251 77.5 255.6 78.4c.7.1 10.4-4.2 21.6-9.7 63.9-31.1 94-25.8 107.4-25.2-63.9-39.3-152.7-50-233.9-11.7-23.4 11.1-24 11.9-9.4 11.2z"],
	"xing": [384, 512, [], "f168", "M162.7 210c-1.8 3.3-25.2 44.4-70.1 123.5-4.9 8.3-10.8 12.5-17.7 12.5H9.8c-7.7 0-12.1-7.5-8.5-14.4l69-121.3c.2 0 .2-.1 0-.3l-43.9-75.6c-4.3-7.8.3-14.1 8.5-14.1H100c7.3 0 13.3 4.1 18 12.2l44.7 77.5zM382.6 46.1l-144 253v.3L330.2 466c3.9 7.1.2 14.1-8.5 14.1h-65.2c-7.6 0-13.6-4-18-12.2l-92.4-168.5c3.3-5.8 51.5-90.8 144.8-255.2 4.6-8.1 10.4-12.2 17.5-12.2h65.7c8 0 12.3 6.7 8.5 14.1z"],
	"xing-square": [448, 512, [], "f169", "M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM140.4 320.2H93.8c-5.5 0-8.7-5.3-6-10.3l49.3-86.7c.1 0 .1-.1 0-.2l-31.4-54c-3-5.6.2-10.1 6-10.1h46.6c5.2 0 9.5 2.9 12.9 8.7l31.9 55.3c-1.3 2.3-18 31.7-50.1 88.2-3.5 6.2-7.7 9.1-12.6 9.1zm219.7-214.1L257.3 286.8v.2l65.5 119c2.8 5.1.1 10.1-6 10.1h-46.6c-5.5 0-9.7-2.9-12.9-8.7l-66-120.3c2.3-4.1 36.8-64.9 103.4-182.3 3.3-5.8 7.4-8.7 12.5-8.7h46.9c5.7-.1 8.8 4.7 6 10z"],
	"y-combinator": [448, 512, [], "f23b", "M448 32v448H0V32h448zM236 287.5L313.5 142h-32.7L235 233c-4.7 9.3-9 18.3-12.8 26.8L210 233l-45.2-91h-35l76.7 143.8v94.5H236v-92.8z"],
	"yahoo": [512, 512, [], "f19e", "M223.69,141.06,167,284.23,111,141.06H14.93L120.76,390.19,82.19,480h94.17L317.27,141.06Zm105.4,135.79a58.22,58.22,0,1,0,58.22,58.22A58.22,58.22,0,0,0,329.09,276.85ZM394.65,32l-93,223.47H406.44L499.07,32Z"],
	"yammer": [512, 512, [], "f840", "M421.78 152.17A23.06 23.06 0 0 0 400.9 112c-.83.43-1.71.9-2.63 1.4-15.25 8.4-118.33 80.62-106.69 88.77s82.04-23.61 130.2-50zm0 217.17c-48.16-26.38-118.64-58.1-130.2-50s91.42 80.35 106.69 88.74c.92.51 1.8 1 2.63 1.41a23.07 23.07 0 0 0 20.88-40.15zM464.21 237c-.95 0-1.95-.06-3-.06-17.4 0-142.52 13.76-136.24 26.51s83.3 18.74 138.21 18.76a23 23 0 0 0 1-45.21zM31 96.65a24.88 24.88 0 0 1 46.14-18.4l81 205.06h1.21l77-203.53a23.52 23.52 0 0 1 44.45 15.27L171.2 368.44C152.65 415.66 134.08 448 77.91 448a139.67 139.67 0 0 1-23.81-1.95 21.31 21.31 0 0 1 6.9-41.77c.66.06 10.91.66 13.86.66 30.47 0 43.74-18.94 58.07-59.41z"],
	"yandex": [256, 512, [], "f413", "M153.1 315.8L65.7 512H2l96-209.8c-45.1-22.9-75.2-64.4-75.2-141.1C22.7 53.7 90.8 0 171.7 0H254v512h-55.1V315.8h-45.8zm45.8-269.3h-29.4c-44.4 0-87.4 29.4-87.4 114.6 0 82.3 39.4 108.8 87.4 108.8h29.4V46.5z"],
	"yandex-international": [320, 512, [], "f414", "M129.5 512V345.9L18.5 48h55.8l81.8 229.7L250.2 0h51.3L180.8 347.8V512h-51.3z"],
	"yarn": [496, 512, [], "f7e3", "M393.9 345.2c-39 9.3-48.4 32.1-104 47.4 0 0-2.7 4-10.4 5.8-13.4 3.3-63.9 6-68.5 6.1-12.4.1-19.9-3.2-22-8.2-6.4-15.3 9.2-22 9.2-22-8.1-5-9-9.9-9.8-8.1-2.4 5.8-3.6 20.1-10.1 26.5-8.8 8.9-25.5 5.9-35.3.8-10.8-5.7.8-19.2.8-19.2s-5.8 3.4-10.5-3.6c-6-9.3-17.1-37.3 11.5-62-1.3-10.1-4.6-53.7 40.6-85.6 0 0-20.6-22.8-12.9-43.3 5-13.4 7-13.3 8.6-13.9 5.7-2.2 11.3-4.6 15.4-9.1 20.6-22.2 46.8-18 46.8-18s12.4-37.8 23.9-30.4c3.5 2.3 16.3 30.6 16.3 30.6s13.6-7.9 15.1-5c8.2 16 9.2 46.5 5.6 65.1-6.1 30.6-21.4 47.1-27.6 57.5-1.4 2.4 16.5 10 27.8 41.3 10.4 28.6 1.1 52.7 2.8 55.3.8 1.4 13.7.8 36.4-13.2 12.8-7.9 28.1-16.9 45.4-17 16.7-.5 17.6 19.2 4.9 22.2zM496 256c0 136.9-111.1 248-248 248S0 392.9 0 256 111.1 8 248 8s248 111.1 248 248zm-79.3 75.2c-1.7-13.6-13.2-23-28-22.8-22 .3-40.5 11.7-52.8 19.2-4.8 3-8.9 5.2-12.4 6.8 3.1-44.5-22.5-73.1-28.7-79.4 7.8-11.3 18.4-27.8 23.4-53.2 4.3-21.7 3-55.5-6.9-74.5-1.6-3.1-7.4-11.2-21-7.4-9.7-20-13-22.1-15.6-23.8-1.1-.7-23.6-16.4-41.4 28-12.2.9-31.3 5.3-47.5 22.8-2 2.2-5.9 3.8-10.1 5.4h.1c-8.4 3-12.3 9.9-16.9 22.3-6.5 17.4.2 34.6 6.8 45.7-17.8 15.9-37 39.8-35.7 82.5-34 36-11.8 73-5.6 79.6-1.6 11.1 3.7 19.4 12 23.8 12.6 6.7 30.3 9.6 43.9 2.8 4.9 5.2 13.8 10.1 30 10.1 6.8 0 58-2.9 72.6-6.5 6.8-1.6 11.5-4.5 14.6-7.1 9.8-3.1 36.8-12.3 62.2-28.7 18-11.7 24.2-14.2 37.6-17.4 12.9-3.2 21-15.1 19.4-28.2z"],
	"yelp": [384, 512, [], "f1e9", "M42.9 240.32l99.62 48.61c19.2 9.4 16.2 37.51-4.5 42.71L30.5 358.45a22.79 22.79 0 0 1-28.21-19.6 197.16 197.16 0 0 1 9-85.32 22.8 22.8 0 0 1 31.61-13.21zm44 239.25a199.45 199.45 0 0 0 79.42 32.11A22.78 22.78 0 0 0 192.94 490l3.9-110.82c.7-21.3-25.5-31.91-39.81-16.1l-74.21 82.4a22.82 22.82 0 0 0 4.09 34.09zm145.34-109.92l58.81 94a22.93 22.93 0 0 0 34 5.5 198.36 198.36 0 0 0 52.71-67.61A23 23 0 0 0 364.17 370l-105.42-34.26c-20.31-6.5-37.81 15.8-26.51 33.91zm148.33-132.23a197.44 197.44 0 0 0-50.41-69.31 22.85 22.85 0 0 0-34 4.4l-62 91.92c-11.9 17.7 4.7 40.61 25.2 34.71L366 268.63a23 23 0 0 0 14.61-31.21zM62.11 30.18a22.86 22.86 0 0 0-9.9 32l104.12 180.44c11.7 20.2 42.61 11.9 42.61-11.4V22.88a22.67 22.67 0 0 0-24.5-22.8 320.37 320.37 0 0 0-112.33 30.1z"],
	"yoast": [448, 512, [], "f2b1", "M91.3 76h186l-7 18.9h-179c-39.7 0-71.9 31.6-71.9 70.3v205.4c0 35.4 24.9 70.3 84 70.3V460H91.3C41.2 460 0 419.8 0 370.5V165.2C0 115.9 40.7 76 91.3 76zm229.1-56h66.5C243.1 398.1 241.2 418.9 202.2 459.3c-20.8 21.6-49.3 31.7-78.3 32.7v-51.1c49.2-7.7 64.6-49.9 64.6-75.3 0-20.1.6-12.6-82.1-223.2h61.4L218.2 299 320.4 20zM448 161.5V460H234c6.6-9.6 10.7-16.3 12.1-19.4h182.5V161.5c0-32.5-17.1-51.9-48.2-62.9l6.7-17.6c41.7 13.6 60.9 43.1 60.9 80.5z"],
	"youtube": [576, 512, [], "f167", "M549.655 124.083c-6.281-23.65-24.787-42.276-48.284-48.597C458.781 64 288 64 288 64S117.22 64 74.629 75.486c-23.497 6.322-42.003 24.947-48.284 48.597-11.412 42.867-11.412 132.305-11.412 132.305s0 89.438 11.412 132.305c6.281 23.65 24.787 41.5 48.284 47.821C117.22 448 288 448 288 448s170.78 0 213.371-11.486c23.497-6.321 42.003-24.171 48.284-47.821 11.412-42.867 11.412-132.305 11.412-132.305s0-89.438-11.412-132.305zm-317.51 213.508V175.185l142.739 81.205-142.739 81.201z"],
	"youtube-square": [448, 512, [], "f431", "M186.8 202.1l95.2 54.1-95.2 54.1V202.1zM448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zm-42 176.3s0-59.6-7.6-88.2c-4.2-15.8-16.5-28.2-32.2-32.4C337.9 128 224 128 224 128s-113.9 0-142.2 7.7c-15.7 4.2-28 16.6-32.2 32.4-7.6 28.5-7.6 88.2-7.6 88.2s0 59.6 7.6 88.2c4.2 15.8 16.5 27.7 32.2 31.9C110.1 384 224 384 224 384s113.9 0 142.2-7.7c15.7-4.2 28-16.1 32.2-31.9 7.6-28.5 7.6-88.1 7.6-88.1z"],
	"zhihu": [640, 512, [], "f63f", "M170.54 148.13v217.54l23.43.01 7.71 26.37 42.01-26.37h49.53V148.13H170.54zm97.75 193.93h-27.94l-27.9 17.51-5.08-17.47-11.9-.04V171.75h72.82v170.31zm-118.46-94.39H97.5c1.74-27.1 2.2-51.59 2.2-73.46h51.16s1.97-22.56-8.58-22.31h-88.5c3.49-13.12 7.87-26.66 13.12-40.67 0 0-24.07 0-32.27 21.57-3.39 8.9-13.21 43.14-30.7 78.12 5.89-.64 25.37-1.18 36.84-22.21 2.11-5.89 2.51-6.66 5.14-14.53h28.87c0 10.5-1.2 66.88-1.68 73.44H20.83c-11.74 0-15.56 23.62-15.56 23.62h65.58C66.45 321.1 42.83 363.12 0 396.34c20.49 5.85 40.91-.93 51-9.9 0 0 22.98-20.9 35.59-69.25l53.96 64.94s7.91-26.89-1.24-39.99c-7.58-8.92-28.06-33.06-36.79-41.81L87.9 311.95c4.36-13.98 6.99-27.55 7.87-40.67h61.65s-.09-23.62-7.59-23.62v.01zm412.02-1.6c20.83-25.64 44.98-58.57 44.98-58.57s-18.65-14.8-27.38-4.06c-6 8.15-36.83 48.2-36.83 48.2l19.23 14.43zm-150.09-59.09c-9.01-8.25-25.91 2.13-25.91 2.13s39.52 55.04 41.12 57.45l19.46-13.73s-25.67-37.61-34.66-45.86h-.01zM640 258.35c-19.78 0-130.91.93-131.06.93v-101c4.81 0 12.42-.4 22.85-1.2 40.88-2.41 70.13-4 87.77-4.81 0 0 12.22-27.19-.59-33.44-3.07-1.18-23.17 4.58-23.17 4.58s-165.22 16.49-232.36 18.05c1.6 8.82 7.62 17.08 15.78 19.55 13.31 3.48 22.69 1.7 49.15.89 24.83-1.6 43.68-2.43 56.51-2.43v99.81H351.41s2.82 22.31 25.51 22.85h107.94v70.92c0 13.97-11.19 21.99-24.48 21.12-14.08.11-26.08-1.15-41.69-1.81 1.99 3.97 6.33 14.39 19.31 21.84 9.88 4.81 16.17 6.57 26.02 6.57 29.56 0 45.67-17.28 44.89-45.31v-73.32h122.36c9.68 0 8.7-23.78 8.7-23.78l.03-.01z"]
  	}
  }
assets/lib/font-awesome/json/solid.json000064400002254320151327220410014203 0ustar00{
  "icons": {
	"ad": [512, 512, [], "f641", "M157.52 272h36.96L176 218.78 157.52 272zM352 256c-13.23 0-24 10.77-24 24s10.77 24 24 24 24-10.77 24-24-10.77-24-24-24zM464 64H48C21.5 64 0 85.5 0 112v288c0 26.5 21.5 48 48 48h416c26.5 0 48-21.5 48-48V112c0-26.5-21.5-48-48-48zM250.58 352h-16.94c-6.81 0-12.88-4.32-15.12-10.75L211.15 320h-70.29l-7.38 21.25A16 16 0 0 1 118.36 352h-16.94c-11.01 0-18.73-10.85-15.12-21.25L140 176.12A23.995 23.995 0 0 1 162.67 160h26.66A23.99 23.99 0 0 1 212 176.13l53.69 154.62c3.61 10.4-4.11 21.25-15.11 21.25zM424 336c0 8.84-7.16 16-16 16h-16c-4.85 0-9.04-2.27-11.98-5.68-8.62 3.66-18.09 5.68-28.02 5.68-39.7 0-72-32.3-72-72s32.3-72 72-72c8.46 0 16.46 1.73 24 4.42V176c0-8.84 7.16-16 16-16h16c8.84 0 16 7.16 16 16v160z"],
	"address-book": [448, 512, [], "f2b9", "M436 160c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-20V48c0-26.5-21.5-48-48-48H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h320c26.5 0 48-21.5 48-48v-48h20c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-20v-64h20c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-20v-64h20zm-228-32c35.3 0 64 28.7 64 64s-28.7 64-64 64-64-28.7-64-64 28.7-64 64-64zm112 236.8c0 10.6-10 19.2-22.4 19.2H118.4C106 384 96 375.4 96 364.8v-19.2c0-31.8 30.1-57.6 67.2-57.6h5c12.3 5.1 25.7 8 39.8 8s27.6-2.9 39.8-8h5c37.1 0 67.2 25.8 67.2 57.6v19.2z"],
	"address-card": [576, 512, [], "f2bb", "M528 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-352 96c35.3 0 64 28.7 64 64s-28.7 64-64 64-64-28.7-64-64 28.7-64 64-64zm112 236.8c0 10.6-10 19.2-22.4 19.2H86.4C74 384 64 375.4 64 364.8v-19.2c0-31.8 30.1-57.6 67.2-57.6h5c12.3 5.1 25.7 8 39.8 8s27.6-2.9 39.8-8h5c37.1 0 67.2 25.8 67.2 57.6v19.2zM512 312c0 4.4-3.6 8-8 8H360c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h144c4.4 0 8 3.6 8 8v16zm0-64c0 4.4-3.6 8-8 8H360c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h144c4.4 0 8 3.6 8 8v16zm0-64c0 4.4-3.6 8-8 8H360c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h144c4.4 0 8 3.6 8 8v16z"],
	"adjust": [512, 512, [], "f042", "M8 256c0 136.966 111.033 248 248 248s248-111.034 248-248S392.966 8 256 8 8 119.033 8 256zm248 184V72c101.705 0 184 82.311 184 184 0 101.705-82.311 184-184 184z"],
	"air-freshener": [384, 512, [], "f5d0", "M378.94 321.41L284.7 224h49.22c15.3 0 23.66-16.6 13.86-27.53L234.45 69.96c3.43-6.61 5.55-14 5.55-21.96 0-26.51-21.49-48-48-48s-48 21.49-48 48c0 7.96 2.12 15.35 5.55 21.96L36.22 196.47C26.42 207.4 34.78 224 50.08 224H99.3L5.06 321.41C-6.69 333.56 3.34 352 21.7 352H160v32H48c-8.84 0-16 7.16-16 16v96c0 8.84 7.16 16 16 16h288c8.84 0 16-7.16 16-16v-96c0-8.84-7.16-16-16-16H224v-32h138.3c18.36 0 28.39-18.44 16.64-30.59zM192 31.98c8.85 0 16.02 7.17 16.02 16.02 0 8.84-7.17 16.02-16.02 16.02S175.98 56.84 175.98 48c0-8.85 7.17-16.02 16.02-16.02zM304 432v32H80v-32h224z"],
	"align-center": [448, 512, [], "f037", "M432 160H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0 256H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zM108.1 96h231.81A12.09 12.09 0 0 0 352 83.9V44.09A12.09 12.09 0 0 0 339.91 32H108.1A12.09 12.09 0 0 0 96 44.09V83.9A12.1 12.1 0 0 0 108.1 96zm231.81 256A12.09 12.09 0 0 0 352 339.9v-39.81A12.09 12.09 0 0 0 339.91 288H108.1A12.09 12.09 0 0 0 96 300.09v39.81a12.1 12.1 0 0 0 12.1 12.1z"],
	"align-justify": [448, 512, [], "f039", "M432 416H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-128H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-128H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-128H16A16 16 0 0 0 0 48v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16z"],
	"align-left": [448, 512, [], "f036", "M12.83 352h262.34A12.82 12.82 0 0 0 288 339.17v-38.34A12.82 12.82 0 0 0 275.17 288H12.83A12.82 12.82 0 0 0 0 300.83v38.34A12.82 12.82 0 0 0 12.83 352zm0-256h262.34A12.82 12.82 0 0 0 288 83.17V44.83A12.82 12.82 0 0 0 275.17 32H12.83A12.82 12.82 0 0 0 0 44.83v38.34A12.82 12.82 0 0 0 12.83 96zM432 160H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0 256H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16z"],
	"align-right": [448, 512, [], "f038", "M16 224h416a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm416 192H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm3.17-384H172.83A12.82 12.82 0 0 0 160 44.83v38.34A12.82 12.82 0 0 0 172.83 96h262.34A12.82 12.82 0 0 0 448 83.17V44.83A12.82 12.82 0 0 0 435.17 32zm0 256H172.83A12.82 12.82 0 0 0 160 300.83v38.34A12.82 12.82 0 0 0 172.83 352h262.34A12.82 12.82 0 0 0 448 339.17v-38.34A12.82 12.82 0 0 0 435.17 288z"],
	"allergies": [448, 512, [], "f461", "M416 112c-17.6 0-32 14.4-32 32v72c0 4.4-3.6 8-8 8h-16c-4.4 0-8-3.6-8-8V64c0-17.6-14.4-32-32-32s-32 14.4-32 32v152c0 4.4-3.6 8-8 8h-16c-4.4 0-8-3.6-8-8V32c0-17.6-14.4-32-32-32s-32 14.4-32 32v184c0 4.4-3.6 8-8 8h-16c-4.4 0-8-3.6-8-8V64c0-17.6-14.4-32-32-32S96 46.4 96 64v241l-23.6-32.5c-13-17.9-38-21.8-55.9-8.8s-21.8 38-8.8 55.9l125.6 172.7c9 12.4 23.5 19.8 38.8 19.8h197.6c22.3 0 41.6-15.3 46.7-37l26.5-112.7c3.2-13.7 4.9-28.3 5.1-42.3V144c0-17.6-14.4-32-32-32zM176 416c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zm0-96c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zm64 128c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zm0-96c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zm64 32c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zm32 64c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zm32-128c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16z"],
	"ambulance": [640, 512, [], "f0f9", "M624 352h-16V243.9c0-12.7-5.1-24.9-14.1-33.9L494 110.1c-9-9-21.2-14.1-33.9-14.1H416V48c0-26.5-21.5-48-48-48H48C21.5 0 0 21.5 0 48v320c0 26.5 21.5 48 48 48h16c0 53 43 96 96 96s96-43 96-96h128c0 53 43 96 96 96s96-43 96-96h48c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zM160 464c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm144-248c0 4.4-3.6 8-8 8h-56v56c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8v-56h-56c-4.4 0-8-3.6-8-8v-48c0-4.4 3.6-8 8-8h56v-56c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v56h56c4.4 0 8 3.6 8 8v48zm176 248c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm80-208H416V144h44.1l99.9 99.9V256z"],
	"american-sign-language-interpreting": [640, 512, [], "f2a3", "M290.547 189.039c-20.295-10.149-44.147-11.199-64.739-3.89 42.606 0 71.208 20.475 85.578 50.576 8.576 17.899-5.148 38.071-23.617 38.071 18.429 0 32.211 20.136 23.617 38.071-14.725 30.846-46.123 50.854-80.298 50.854-.557 0-94.471-8.615-94.471-8.615l-66.406 33.347c-9.384 4.693-19.815.379-23.895-7.781L1.86 290.747c-4.167-8.615-1.111-18.897 6.946-23.621l58.072-33.069L108 159.861c6.39-57.245 34.731-109.767 79.743-146.726 11.391-9.448 28.341-7.781 37.51 3.613 9.446 11.394 7.78 28.067-3.612 37.516-12.503 10.559-23.618 22.509-32.509 35.57 21.672-14.729 46.679-24.732 74.186-28.067 14.725-1.945 28.063 8.336 29.73 23.065 1.945 14.728-8.336 28.067-23.062 29.734-16.116 1.945-31.12 7.503-44.178 15.284 26.114-5.713 58.712-3.138 88.079 11.115 13.336 6.669 18.893 22.509 12.224 35.848-6.389 13.06-22.504 18.617-35.564 12.226zm-27.229 69.472c-6.112-12.505-18.338-20.286-32.231-20.286a35.46 35.46 0 0 0-35.565 35.57c0 21.428 17.808 35.57 35.565 35.57 13.893 0 26.119-7.781 32.231-20.286 4.446-9.449 13.614-15.006 23.339-15.284-9.725-.277-18.893-5.835-23.339-15.284zm374.821-37.237c4.168 8.615 1.111 18.897-6.946 23.621l-58.071 33.069L532 352.16c-6.39 57.245-34.731 109.767-79.743 146.726-10.932 9.112-27.799 8.144-37.51-3.613-9.446-11.394-7.78-28.067 3.613-37.516 12.503-10.559 23.617-22.509 32.508-35.57-21.672 14.729-46.679 24.732-74.186 28.067-10.021 2.506-27.552-5.643-29.73-23.065-1.945-14.728 8.336-28.067 23.062-29.734 16.116-1.946 31.12-7.503 44.178-15.284-26.114 5.713-58.712 3.138-88.079-11.115-13.336-6.669-18.893-22.509-12.224-35.848 6.389-13.061 22.505-18.619 35.565-12.227 20.295 10.149 44.147 11.199 64.739 3.89-42.606 0-71.208-20.475-85.578-50.576-8.576-17.899 5.148-38.071 23.617-38.071-18.429 0-32.211-20.136-23.617-38.071 14.033-29.396 44.039-50.887 81.966-50.854l92.803 8.615 66.406-33.347c9.408-4.704 19.828-.354 23.894 7.781l44.455 88.926zm-229.227-18.618c-13.893 0-26.119 7.781-32.231 20.286-4.446 9.449-13.614 15.006-23.339 15.284 9.725.278 18.893 5.836 23.339 15.284 6.112 12.505 18.338 20.286 32.231 20.286a35.46 35.46 0 0 0 35.565-35.57c0-21.429-17.808-35.57-35.565-35.57z"],
	"anchor": [576, 512, [], "f13d", "M12.971 352h32.394C67.172 454.735 181.944 512 288 512c106.229 0 220.853-57.38 242.635-160h32.394c10.691 0 16.045-12.926 8.485-20.485l-67.029-67.029c-4.686-4.686-12.284-4.686-16.971 0l-67.029 67.029c-7.56 7.56-2.206 20.485 8.485 20.485h35.146c-20.29 54.317-84.963 86.588-144.117 94.015V256h52c6.627 0 12-5.373 12-12v-40c0-6.627-5.373-12-12-12h-52v-5.47c37.281-13.178 63.995-48.725 64-90.518C384.005 43.772 341.605.738 289.37.01 235.723-.739 192 42.525 192 96c0 41.798 26.716 77.35 64 90.53V192h-52c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h52v190.015c-58.936-7.399-123.82-39.679-144.117-94.015h35.146c10.691 0 16.045-12.926 8.485-20.485l-67.029-67.029c-4.686-4.686-12.284-4.686-16.971 0L4.485 331.515C-3.074 339.074 2.28 352 12.971 352zM288 64c17.645 0 32 14.355 32 32s-14.355 32-32 32-32-14.355-32-32 14.355-32 32-32z"],
	"angle-double-down": [320, 512, [], "f103", "M143 256.3L7 120.3c-9.4-9.4-9.4-24.6 0-33.9l22.6-22.6c9.4-9.4 24.6-9.4 33.9 0l96.4 96.4 96.4-96.4c9.4-9.4 24.6-9.4 33.9 0L313 86.3c9.4 9.4 9.4 24.6 0 33.9l-136 136c-9.4 9.5-24.6 9.5-34 .1zm34 192l136-136c9.4-9.4 9.4-24.6 0-33.9l-22.6-22.6c-9.4-9.4-24.6-9.4-33.9 0L160 352.1l-96.4-96.4c-9.4-9.4-24.6-9.4-33.9 0L7 278.3c-9.4 9.4-9.4 24.6 0 33.9l136 136c9.4 9.5 24.6 9.5 34 .1z"],
	"angle-double-left": [448, 512, [], "f100", "M223.7 239l136-136c9.4-9.4 24.6-9.4 33.9 0l22.6 22.6c9.4 9.4 9.4 24.6 0 33.9L319.9 256l96.4 96.4c9.4 9.4 9.4 24.6 0 33.9L393.7 409c-9.4 9.4-24.6 9.4-33.9 0l-136-136c-9.5-9.4-9.5-24.6-.1-34zm-192 34l136 136c9.4 9.4 24.6 9.4 33.9 0l22.6-22.6c9.4-9.4 9.4-24.6 0-33.9L127.9 256l96.4-96.4c9.4-9.4 9.4-24.6 0-33.9L201.7 103c-9.4-9.4-24.6-9.4-33.9 0l-136 136c-9.5 9.4-9.5 24.6-.1 34z"],
	"angle-double-right": [448, 512, [], "f101", "M224.3 273l-136 136c-9.4 9.4-24.6 9.4-33.9 0l-22.6-22.6c-9.4-9.4-9.4-24.6 0-33.9l96.4-96.4-96.4-96.4c-9.4-9.4-9.4-24.6 0-33.9L54.3 103c9.4-9.4 24.6-9.4 33.9 0l136 136c9.5 9.4 9.5 24.6.1 34zm192-34l-136-136c-9.4-9.4-24.6-9.4-33.9 0l-22.6 22.6c-9.4 9.4-9.4 24.6 0 33.9l96.4 96.4-96.4 96.4c-9.4 9.4-9.4 24.6 0 33.9l22.6 22.6c9.4 9.4 24.6 9.4 33.9 0l136-136c9.4-9.2 9.4-24.4 0-33.8z"],
	"angle-double-up": [320, 512, [], "f102", "M177 255.7l136 136c9.4 9.4 9.4 24.6 0 33.9l-22.6 22.6c-9.4 9.4-24.6 9.4-33.9 0L160 351.9l-96.4 96.4c-9.4 9.4-24.6 9.4-33.9 0L7 425.7c-9.4-9.4-9.4-24.6 0-33.9l136-136c9.4-9.5 24.6-9.5 34-.1zm-34-192L7 199.7c-9.4 9.4-9.4 24.6 0 33.9l22.6 22.6c9.4 9.4 24.6 9.4 33.9 0l96.4-96.4 96.4 96.4c9.4 9.4 24.6 9.4 33.9 0l22.6-22.6c9.4-9.4 9.4-24.6 0-33.9l-136-136c-9.2-9.4-24.4-9.4-33.8 0z"],
	"angle-down": [320, 512, [], "f107", "M143 352.3L7 216.3c-9.4-9.4-9.4-24.6 0-33.9l22.6-22.6c9.4-9.4 24.6-9.4 33.9 0l96.4 96.4 96.4-96.4c9.4-9.4 24.6-9.4 33.9 0l22.6 22.6c9.4 9.4 9.4 24.6 0 33.9l-136 136c-9.2 9.4-24.4 9.4-33.8 0z"],
	"angle-left": [256, 512, [], "f104", "M31.7 239l136-136c9.4-9.4 24.6-9.4 33.9 0l22.6 22.6c9.4 9.4 9.4 24.6 0 33.9L127.9 256l96.4 96.4c9.4 9.4 9.4 24.6 0 33.9L201.7 409c-9.4 9.4-24.6 9.4-33.9 0l-136-136c-9.5-9.4-9.5-24.6-.1-34z"],
	"angle-right": [256, 512, [], "f105", "M224.3 273l-136 136c-9.4 9.4-24.6 9.4-33.9 0l-22.6-22.6c-9.4-9.4-9.4-24.6 0-33.9l96.4-96.4-96.4-96.4c-9.4-9.4-9.4-24.6 0-33.9L54.3 103c9.4-9.4 24.6-9.4 33.9 0l136 136c9.5 9.4 9.5 24.6.1 34z"],
	"angle-up": [320, 512, [], "f106", "M177 159.7l136 136c9.4 9.4 9.4 24.6 0 33.9l-22.6 22.6c-9.4 9.4-24.6 9.4-33.9 0L160 255.9l-96.4 96.4c-9.4 9.4-24.6 9.4-33.9 0L7 329.7c-9.4-9.4-9.4-24.6 0-33.9l136-136c9.4-9.5 24.6-9.5 34-.1z"],
	"angry": [496, 512, [], "f556", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zM136 240c0-9.3 4.1-17.5 10.5-23.4l-31-9.3c-8.5-2.5-13.3-11.5-10.7-19.9 2.5-8.5 11.4-13.2 19.9-10.7l80 24c8.5 2.5 13.3 11.5 10.7 19.9-2.1 6.9-8.4 11.4-15.3 11.4-.5 0-1.1-.2-1.7-.2.7 2.7 1.7 5.3 1.7 8.2 0 17.7-14.3 32-32 32S136 257.7 136 240zm168 154.2c-27.8-33.4-84.2-33.4-112.1 0-13.5 16.3-38.2-4.2-24.6-20.5 20-24 49.4-37.8 80.6-37.8s60.6 13.8 80.6 37.8c13.8 16.5-11.1 36.6-24.5 20.5zm76.6-186.9l-31 9.3c6.3 5.8 10.5 14.1 10.5 23.4 0 17.7-14.3 32-32 32s-32-14.3-32-32c0-2.9.9-5.6 1.7-8.2-.6.1-1.1.2-1.7.2-6.9 0-13.2-4.5-15.3-11.4-2.5-8.5 2.3-17.4 10.7-19.9l80-24c8.4-2.5 17.4 2.3 19.9 10.7 2.5 8.5-2.3 17.4-10.8 19.9z"],
	"ankh": [320, 512, [], "f644", "M296 256h-44.62C272.46 222.01 288 181.65 288 144 288 55.63 230.69 0 160 0S32 55.63 32 144c0 37.65 15.54 78.01 36.62 112H24c-13.25 0-24 10.74-24 24v32c0 13.25 10.75 24 24 24h96v152c0 13.25 10.75 24 24 24h32c13.25 0 24-10.75 24-24V336h96c13.25 0 24-10.75 24-24v-32c0-13.26-10.75-24-24-24zM160 80c29.61 0 48 24.52 48 64 0 34.66-27.14 78.14-48 100.87-20.86-22.72-48-66.21-48-100.87 0-39.48 18.39-64 48-64z"],
	"apple-alt": [448, 512, [], "f5d1", "M350.85 129c25.97 4.67 47.27 18.67 63.92 42 14.65 20.67 24.64 46.67 29.96 78 4.67 28.67 4.32 57.33-1 86-7.99 47.33-23.97 87-47.94 119-28.64 38.67-64.59 58-107.87 58-10.66 0-22.3-3.33-34.96-10-8.66-5.33-18.31-8-28.97-8s-20.3 2.67-28.97 8c-12.66 6.67-24.3 10-34.96 10-43.28 0-79.23-19.33-107.87-58-23.97-32-39.95-71.67-47.94-119-5.32-28.67-5.67-57.33-1-86 5.32-31.33 15.31-57.33 29.96-78 16.65-23.33 37.95-37.33 63.92-42 15.98-2.67 37.95-.33 65.92 7 23.97 6.67 44.28 14.67 60.93 24 16.65-9.33 36.96-17.33 60.93-24 27.98-7.33 49.96-9.67 65.94-7zm-54.94-41c-9.32 8.67-21.65 15-36.96 19-10.66 3.33-22.3 5-34.96 5l-14.98-1c-1.33-9.33-1.33-20 0-32 2.67-24 10.32-42.33 22.97-55 9.32-8.67 21.65-15 36.96-19 10.66-3.33 22.3-5 34.96-5l14.98 1 1 15c0 12.67-1.67 24.33-4.99 35-3.99 15.33-10.31 27.67-18.98 37z"],
	"archive": [512, 512, [], "f187", "M32 448c0 17.7 14.3 32 32 32h384c17.7 0 32-14.3 32-32V160H32v288zm160-212c0-6.6 5.4-12 12-12h104c6.6 0 12 5.4 12 12v8c0 6.6-5.4 12-12 12H204c-6.6 0-12-5.4-12-12v-8zM480 32H32C14.3 32 0 46.3 0 64v48c0 8.8 7.2 16 16 16h480c8.8 0 16-7.2 16-16V64c0-17.7-14.3-32-32-32z"],
	"archway": [576, 512, [], "f557", "M560 448h-16V96H32v352H16.02c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16H176c8.84 0 16-7.16 16-16V320c0-53.02 42.98-96 96-96s96 42.98 96 96l.02 160v16c0 8.84 7.16 16 16 16H560c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zm0-448H16C7.16 0 0 7.16 0 16v32c0 8.84 7.16 16 16 16h544c8.84 0 16-7.16 16-16V16c0-8.84-7.16-16-16-16z"],
	"arrow-alt-circle-down": [512, 512, [], "f358", "M504 256c0 137-111 248-248 248S8 393 8 256 119 8 256 8s248 111 248 248zM212 140v116h-70.9c-10.7 0-16.1 13-8.5 20.5l114.9 114.3c4.7 4.7 12.2 4.7 16.9 0l114.9-114.3c7.6-7.6 2.2-20.5-8.5-20.5H300V140c0-6.6-5.4-12-12-12h-64c-6.6 0-12 5.4-12 12z"],
	"arrow-alt-circle-left": [512, 512, [], "f359", "M256 504C119 504 8 393 8 256S119 8 256 8s248 111 248 248-111 248-248 248zm116-292H256v-70.9c0-10.7-13-16.1-20.5-8.5L121.2 247.5c-4.7 4.7-4.7 12.2 0 16.9l114.3 114.9c7.6 7.6 20.5 2.2 20.5-8.5V300h116c6.6 0 12-5.4 12-12v-64c0-6.6-5.4-12-12-12z"],
	"arrow-alt-circle-right": [512, 512, [], "f35a", "M256 8c137 0 248 111 248 248S393 504 256 504 8 393 8 256 119 8 256 8zM140 300h116v70.9c0 10.7 13 16.1 20.5 8.5l114.3-114.9c4.7-4.7 4.7-12.2 0-16.9l-114.3-115c-7.6-7.6-20.5-2.2-20.5 8.5V212H140c-6.6 0-12 5.4-12 12v64c0 6.6 5.4 12 12 12z"],
	"arrow-alt-circle-up": [512, 512, [], "f35b", "M8 256C8 119 119 8 256 8s248 111 248 248-111 248-248 248S8 393 8 256zm292 116V256h70.9c10.7 0 16.1-13 8.5-20.5L264.5 121.2c-4.7-4.7-12.2-4.7-16.9 0l-115 114.3c-7.6 7.6-2.2 20.5 8.5 20.5H212v116c0 6.6 5.4 12 12 12h64c6.6 0 12-5.4 12-12z"],
	"arrow-circle-down": [512, 512, [], "f0ab", "M504 256c0 137-111 248-248 248S8 393 8 256 119 8 256 8s248 111 248 248zm-143.6-28.9L288 302.6V120c0-13.3-10.7-24-24-24h-16c-13.3 0-24 10.7-24 24v182.6l-72.4-75.5c-9.3-9.7-24.8-9.9-34.3-.4l-10.9 11c-9.4 9.4-9.4 24.6 0 33.9L239 404.3c9.4 9.4 24.6 9.4 33.9 0l132.7-132.7c9.4-9.4 9.4-24.6 0-33.9l-10.9-11c-9.5-9.5-25-9.3-34.3.4z"],
	"arrow-circle-left": [512, 512, [], "f0a8", "M256 504C119 504 8 393 8 256S119 8 256 8s248 111 248 248-111 248-248 248zm28.9-143.6L209.4 288H392c13.3 0 24-10.7 24-24v-16c0-13.3-10.7-24-24-24H209.4l75.5-72.4c9.7-9.3 9.9-24.8.4-34.3l-11-10.9c-9.4-9.4-24.6-9.4-33.9 0L107.7 239c-9.4 9.4-9.4 24.6 0 33.9l132.7 132.7c9.4 9.4 24.6 9.4 33.9 0l11-10.9c9.5-9.5 9.3-25-.4-34.3z"],
	"arrow-circle-right": [512, 512, [], "f0a9", "M256 8c137 0 248 111 248 248S393 504 256 504 8 393 8 256 119 8 256 8zm-28.9 143.6l75.5 72.4H120c-13.3 0-24 10.7-24 24v16c0 13.3 10.7 24 24 24h182.6l-75.5 72.4c-9.7 9.3-9.9 24.8-.4 34.3l11 10.9c9.4 9.4 24.6 9.4 33.9 0L404.3 273c9.4-9.4 9.4-24.6 0-33.9L271.6 106.3c-9.4-9.4-24.6-9.4-33.9 0l-11 10.9c-9.5 9.6-9.3 25.1.4 34.4z"],
	"arrow-circle-up": [512, 512, [], "f0aa", "M8 256C8 119 119 8 256 8s248 111 248 248-111 248-248 248S8 393 8 256zm143.6 28.9l72.4-75.5V392c0 13.3 10.7 24 24 24h16c13.3 0 24-10.7 24-24V209.4l72.4 75.5c9.3 9.7 24.8 9.9 34.3.4l10.9-11c9.4-9.4 9.4-24.6 0-33.9L273 107.7c-9.4-9.4-24.6-9.4-33.9 0L106.3 240.4c-9.4 9.4-9.4 24.6 0 33.9l10.9 11c9.6 9.5 25.1 9.3 34.4-.4z"],
	"arrow-down": [448, 512, [], "f063", "M413.1 222.5l22.2 22.2c9.4 9.4 9.4 24.6 0 33.9L241 473c-9.4 9.4-24.6 9.4-33.9 0L12.7 278.6c-9.4-9.4-9.4-24.6 0-33.9l22.2-22.2c9.5-9.5 25-9.3 34.3.4L184 343.4V56c0-13.3 10.7-24 24-24h32c13.3 0 24 10.7 24 24v287.4l114.8-120.5c9.3-9.8 24.8-10 34.3-.4z"],
	"arrow-left": [448, 512, [], "f060", "M257.5 445.1l-22.2 22.2c-9.4 9.4-24.6 9.4-33.9 0L7 273c-9.4-9.4-9.4-24.6 0-33.9L201.4 44.7c9.4-9.4 24.6-9.4 33.9 0l22.2 22.2c9.5 9.5 9.3 25-.4 34.3L136.6 216H424c13.3 0 24 10.7 24 24v32c0 13.3-10.7 24-24 24H136.6l120.5 114.8c9.8 9.3 10 24.8.4 34.3z"],
	"arrow-right": [448, 512, [], "f061", "M190.5 66.9l22.2-22.2c9.4-9.4 24.6-9.4 33.9 0L441 239c9.4 9.4 9.4 24.6 0 33.9L246.6 467.3c-9.4 9.4-24.6 9.4-33.9 0l-22.2-22.2c-9.5-9.5-9.3-25 .4-34.3L311.4 296H24c-13.3 0-24-10.7-24-24v-32c0-13.3 10.7-24 24-24h287.4L190.9 101.2c-9.8-9.3-10-24.8-.4-34.3z"],
	"arrow-up": [448, 512, [], "f062", "M34.9 289.5l-22.2-22.2c-9.4-9.4-9.4-24.6 0-33.9L207 39c9.4-9.4 24.6-9.4 33.9 0l194.3 194.3c9.4 9.4 9.4 24.6 0 33.9L413 289.4c-9.5 9.5-25 9.3-34.3-.4L264 168.6V456c0 13.3-10.7 24-24 24h-32c-13.3 0-24-10.7-24-24V168.6L69.2 289.1c-9.3 9.8-24.8 10-34.3.4z"],
	"arrows-alt": [512, 512, [], "f0b2", "M352.201 425.775l-79.196 79.196c-9.373 9.373-24.568 9.373-33.941 0l-79.196-79.196c-15.119-15.119-4.411-40.971 16.971-40.97h51.162L228 284H127.196v51.162c0 21.382-25.851 32.09-40.971 16.971L7.029 272.937c-9.373-9.373-9.373-24.569 0-33.941L86.225 159.8c15.119-15.119 40.971-4.411 40.971 16.971V228H228V127.196h-51.23c-21.382 0-32.09-25.851-16.971-40.971l79.196-79.196c9.373-9.373 24.568-9.373 33.941 0l79.196 79.196c15.119 15.119 4.411 40.971-16.971 40.971h-51.162V228h100.804v-51.162c0-21.382 25.851-32.09 40.97-16.971l79.196 79.196c9.373 9.373 9.373 24.569 0 33.941L425.773 352.2c-15.119 15.119-40.971 4.411-40.97-16.971V284H284v100.804h51.23c21.382 0 32.09 25.851 16.971 40.971z"],
	"arrows-alt-h": [512, 512, [], "f337", "M377.941 169.941V216H134.059v-46.059c0-21.382-25.851-32.09-40.971-16.971L7.029 239.029c-9.373 9.373-9.373 24.568 0 33.941l86.059 86.059c15.119 15.119 40.971 4.411 40.971-16.971V296h243.882v46.059c0 21.382 25.851 32.09 40.971 16.971l86.059-86.059c9.373-9.373 9.373-24.568 0-33.941l-86.059-86.059c-15.119-15.12-40.971-4.412-40.971 16.97z"],
	"arrows-alt-v": [256, 512, [], "f338", "M214.059 377.941H168V134.059h46.059c21.382 0 32.09-25.851 16.971-40.971L144.971 7.029c-9.373-9.373-24.568-9.373-33.941 0L24.971 93.088c-15.119 15.119-4.411 40.971 16.971 40.971H88v243.882H41.941c-21.382 0-32.09 25.851-16.971 40.971l86.059 86.059c9.373 9.373 24.568 9.373 33.941 0l86.059-86.059c15.12-15.119 4.412-40.971-16.97-40.971z"],
	"assistive-listening-systems": [512, 512, [], "f2a2", "M216 260c0 15.464-12.536 28-28 28s-28-12.536-28-28c0-44.112 35.888-80 80-80s80 35.888 80 80c0 15.464-12.536 28-28 28s-28-12.536-28-28c0-13.234-10.767-24-24-24s-24 10.766-24 24zm24-176c-97.047 0-176 78.953-176 176 0 15.464 12.536 28 28 28s28-12.536 28-28c0-66.168 53.832-120 120-120s120 53.832 120 120c0 75.164-71.009 70.311-71.997 143.622L288 404c0 28.673-23.327 52-52 52-15.464 0-28 12.536-28 28s12.536 28 28 28c59.475 0 107.876-48.328 108-107.774.595-34.428 72-48.24 72-144.226 0-97.047-78.953-176-176-176zm-80 236c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32zM32 448c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32zm480-187.993c0-1.518-.012-3.025-.045-4.531C510.076 140.525 436.157 38.47 327.994 1.511c-14.633-4.998-30.549 2.809-35.55 17.442-5 14.633 2.81 30.549 17.442 35.55 85.906 29.354 144.61 110.513 146.077 201.953l.003.188c.026 1.118.033 2.236.033 3.363 0 15.464 12.536 28 28 28s28.001-12.536 28.001-28zM152.971 439.029l-80-80L39.03 392.97l80 80 33.941-33.941z"],
	"asterisk": [512, 512, [], "f069", "M478.21 334.093L336 256l142.21-78.093c11.795-6.477 15.961-21.384 9.232-33.037l-19.48-33.741c-6.728-11.653-21.72-15.499-33.227-8.523L296 186.718l3.475-162.204C299.763 11.061 288.937 0 275.48 0h-38.96c-13.456 0-24.283 11.061-23.994 24.514L216 186.718 77.265 102.607c-11.506-6.976-26.499-3.13-33.227 8.523l-19.48 33.741c-6.728 11.653-2.562 26.56 9.233 33.037L176 256 33.79 334.093c-11.795 6.477-15.961 21.384-9.232 33.037l19.48 33.741c6.728 11.653 21.721 15.499 33.227 8.523L216 325.282l-3.475 162.204C212.237 500.939 223.064 512 236.52 512h38.961c13.456 0 24.283-11.061 23.995-24.514L296 325.282l138.735 84.111c11.506 6.976 26.499 3.13 33.227-8.523l19.48-33.741c6.728-11.653 2.563-26.559-9.232-33.036z"],
	"at": [512, 512, [], "f1fa", "M256 8C118.941 8 8 118.919 8 256c0 137.059 110.919 248 248 248 48.154 0 95.342-14.14 135.408-40.223 12.005-7.815 14.625-24.288 5.552-35.372l-10.177-12.433c-7.671-9.371-21.179-11.667-31.373-5.129C325.92 429.757 291.314 440 256 440c-101.458 0-184-82.542-184-184S154.542 72 256 72c100.139 0 184 57.619 184 160 0 38.786-21.093 79.742-58.17 83.693-17.349-.454-16.91-12.857-13.476-30.024l23.433-121.11C394.653 149.75 383.308 136 368.225 136h-44.981a13.518 13.518 0 0 0-13.432 11.993l-.01.092c-14.697-17.901-40.448-21.775-59.971-21.775-74.58 0-137.831 62.234-137.831 151.46 0 65.303 36.785 105.87 96 105.87 26.984 0 57.369-15.637 74.991-38.333 9.522 34.104 40.613 34.103 70.71 34.103C462.609 379.41 504 307.798 504 232 504 95.653 394.023 8 256 8zm-21.68 304.43c-22.249 0-36.07-15.623-36.07-40.771 0-44.993 30.779-72.729 58.63-72.729 22.292 0 35.601 15.241 35.601 40.77 0 45.061-33.875 72.73-58.161 72.73z"],
	"atlas": [448, 512, [], "f558", "M318.38 208h-39.09c-1.49 27.03-6.54 51.35-14.21 70.41 27.71-13.24 48.02-39.19 53.3-70.41zm0-32c-5.29-31.22-25.59-57.17-53.3-70.41 7.68 19.06 12.72 43.38 14.21 70.41h39.09zM224 97.31c-7.69 7.45-20.77 34.42-23.43 78.69h46.87c-2.67-44.26-15.75-71.24-23.44-78.69zm-41.08 8.28c-27.71 13.24-48.02 39.19-53.3 70.41h39.09c1.49-27.03 6.53-51.35 14.21-70.41zm0 172.82c-7.68-19.06-12.72-43.38-14.21-70.41h-39.09c5.28 31.22 25.59 57.17 53.3 70.41zM247.43 208h-46.87c2.66 44.26 15.74 71.24 23.43 78.69 7.7-7.45 20.78-34.43 23.44-78.69zM448 358.4V25.6c0-16-9.6-25.6-25.6-25.6H96C41.6 0 0 41.6 0 96v320c0 54.4 41.6 96 96 96h326.4c12.8 0 25.6-9.6 25.6-25.6v-16c0-6.4-3.2-12.8-9.6-19.2-3.2-16-3.2-60.8 0-73.6 6.4-3.2 9.6-9.6 9.6-19.2zM224 64c70.69 0 128 57.31 128 128s-57.31 128-128 128S96 262.69 96 192 153.31 64 224 64zm160 384H96c-19.2 0-32-12.8-32-32s16-32 32-32h288v64z"],
	"atom": [448, 512, [], "f5d2", "M223.99908,224a32,32,0,1,0,32.00782,32A32.06431,32.06431,0,0,0,223.99908,224Zm214.172-96c-10.877-19.5-40.50979-50.75-116.27544-41.875C300.39168,34.875,267.63386,0,223.99908,0s-76.39066,34.875-97.89653,86.125C50.3369,77.375,20.706,108.5,9.82907,128-6.54984,157.375-5.17484,201.125,34.958,256-5.17484,310.875-6.54984,354.625,9.82907,384c29.13087,52.375,101.64652,43.625,116.27348,41.875C147.60842,477.125,180.36429,512,223.99908,512s76.3926-34.875,97.89652-86.125c14.62891,1.75,87.14456,10.5,116.27544-41.875C454.55,354.625,453.175,310.875,413.04017,256,453.175,201.125,454.55,157.375,438.171,128ZM63.33886,352c-4-7.25-.125-24.75,15.00391-48.25,6.87695,6.5,14.12891,12.875,21.88087,19.125,1.625,13.75,4,27.125,6.75,40.125C82.34472,363.875,67.09081,358.625,63.33886,352Zm36.88478-162.875c-7.752,6.25-15.00392,12.625-21.88087,19.125-15.12891-23.5-19.00392-41-15.00391-48.25,3.377-6.125,16.37891-11.5,37.88478-11.5,1.75,0,3.875.375,5.75.375C104.09864,162.25,101.84864,175.625,100.22364,189.125ZM223.99908,64c9.50195,0,22.25586,13.5,33.88282,37.25-11.252,3.75-22.50391,8-33.88282,12.875-11.377-4.875-22.62892-9.125-33.88283-12.875C201.74516,77.5,214.49712,64,223.99908,64Zm0,384c-9.502,0-22.25392-13.5-33.88283-37.25,11.25391-3.75,22.50587-8,33.88283-12.875C235.378,402.75,246.62994,407,257.8819,410.75,246.25494,434.5,233.501,448,223.99908,448Zm0-112a80,80,0,1,1,80-80A80.00023,80.00023,0,0,1,223.99908,336ZM384.6593,352c-3.625,6.625-19.00392,11.875-43.63479,11,2.752-13,5.127-26.375,6.752-40.125,7.75195-6.25,15.00391-12.625,21.87891-19.125C384.7843,327.25,388.6593,344.75,384.6593,352ZM369.65538,208.25c-6.875-6.5-14.127-12.875-21.87891-19.125-1.625-13.5-3.875-26.875-6.752-40.25,1.875,0,4.002-.375,5.752-.375,21.50391,0,34.50782,5.375,37.88283,11.5C388.6593,167.25,384.7843,184.75,369.65538,208.25Z"],
	"audio-description": [512, 512, [], "f29e", "M162.925 238.709l8.822 30.655h-25.606l9.041-30.652c1.277-4.421 2.651-9.994 3.872-15.245 1.22 5.251 2.594 10.823 3.871 15.242zm166.474-32.099h-14.523v98.781h14.523c29.776 0 46.175-17.678 46.175-49.776 0-32.239-17.49-49.005-46.175-49.005zM512 112v288c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48V112c0-26.51 21.49-48 48-48h416c26.51 0 48 21.49 48 48zM245.459 336.139l-57.097-168A12.001 12.001 0 0 0 177 160h-35.894a12.001 12.001 0 0 0-11.362 8.139l-57.097 168C70.003 343.922 75.789 352 84.009 352h29.133a12 12 0 0 0 11.535-8.693l8.574-29.906h51.367l8.793 29.977A12 12 0 0 0 204.926 352h29.172c8.22 0 14.006-8.078 11.361-15.861zm184.701-80.525c0-58.977-37.919-95.614-98.96-95.614h-57.366c-6.627 0-12 5.373-12 12v168c0 6.627 5.373 12 12 12H331.2c61.041 0 98.96-36.933 98.96-96.386z"],
	"award": [384, 512, [], "f559", "M97.12 362.63c-8.69-8.69-4.16-6.24-25.12-11.85-9.51-2.55-17.87-7.45-25.43-13.32L1.2 448.7c-4.39 10.77 3.81 22.47 15.43 22.03l52.69-2.01L105.56 507c8 8.44 22.04 5.81 26.43-4.96l52.05-127.62c-10.84 6.04-22.87 9.58-35.31 9.58-19.5 0-37.82-7.59-51.61-21.37zM382.8 448.7l-45.37-111.24c-7.56 5.88-15.92 10.77-25.43 13.32-21.07 5.64-16.45 3.18-25.12 11.85-13.79 13.78-32.12 21.37-51.62 21.37-12.44 0-24.47-3.55-35.31-9.58L252 502.04c4.39 10.77 18.44 13.4 26.43 4.96l36.25-38.28 52.69 2.01c11.62.44 19.82-11.27 15.43-22.03zM263 340c15.28-15.55 17.03-14.21 38.79-20.14 13.89-3.79 24.75-14.84 28.47-28.98 7.48-28.4 5.54-24.97 25.95-45.75 10.17-10.35 14.14-25.44 10.42-39.58-7.47-28.38-7.48-24.42 0-52.83 3.72-14.14-.25-29.23-10.42-39.58-20.41-20.78-18.47-17.36-25.95-45.75-3.72-14.14-14.58-25.19-28.47-28.98-27.88-7.61-24.52-5.62-44.95-26.41-10.17-10.35-25-14.4-38.89-10.61-27.87 7.6-23.98 7.61-51.9 0-13.89-3.79-28.72.25-38.89 10.61-20.41 20.78-17.05 18.8-44.94 26.41-13.89 3.79-24.75 14.84-28.47 28.98-7.47 28.39-5.54 24.97-25.95 45.75-10.17 10.35-14.15 25.44-10.42 39.58 7.47 28.36 7.48 24.4 0 52.82-3.72 14.14.25 29.23 10.42 39.59 20.41 20.78 18.47 17.35 25.95 45.75 3.72 14.14 14.58 25.19 28.47 28.98C104.6 325.96 106.27 325 121 340c13.23 13.47 33.84 15.88 49.74 5.82a39.676 39.676 0 0 1 42.53 0c15.89 10.06 36.5 7.65 49.73-5.82zM97.66 175.96c0-53.03 42.24-96.02 94.34-96.02s94.34 42.99 94.34 96.02-42.24 96.02-94.34 96.02-94.34-42.99-94.34-96.02z"],
	"baby": [384, 512, [], "f77c", "M192 160c44.2 0 80-35.8 80-80S236.2 0 192 0s-80 35.8-80 80 35.8 80 80 80zm-53.4 248.8l25.6-32-61.5-51.2L56.8 383c-11.4 14.2-11.7 34.4-.8 49l48 64c7.9 10.5 19.9 16 32 16 8.3 0 16.8-2.6 24-8 17.7-13.2 21.2-38.3 8-56l-29.4-39.2zm142.7-83.2l-61.5 51.2 25.6 32L216 448c-13.2 17.7-9.7 42.8 8 56 7.2 5.4 15.6 8 24 8 12.2 0 24.2-5.5 32-16l48-64c10.9-14.6 10.6-34.8-.8-49l-45.9-57.4zM376.7 145c-12.7-18.1-37.6-22.4-55.7-9.8l-40.6 28.5c-52.7 37-124.2 37-176.8 0L63 135.3C44.9 122.6 20 127 7.3 145-5.4 163.1-1 188 17 200.7l40.6 28.5c17 11.9 35.4 20.9 54.4 27.9V288h160v-30.8c19-7 37.4-16 54.4-27.9l40.6-28.5c18.1-12.8 22.4-37.7 9.7-55.8z"],
	"baby-carriage": [512, 512, [], "f77d", "M144.8 17c-11.3-17.8-37.2-22.8-54-9.4C35.3 51.9 0 118 0 192h256L144.8 17zM496 96h-48c-35.3 0-64 28.7-64 64v64H0c0 50.6 23 96.4 60.3 130.7C25.7 363.6 0 394.7 0 432c0 44.2 35.8 80 80 80s80-35.8 80-80c0-8.9-1.8-17.2-4.4-25.2 21.6 5.9 44.6 9.2 68.4 9.2s46.9-3.3 68.4-9.2c-2.7 8-4.4 16.3-4.4 25.2 0 44.2 35.8 80 80 80s80-35.8 80-80c0-37.3-25.7-68.4-60.3-77.3C425 320.4 448 274.6 448 224v-64h48c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zM80 464c-17.6 0-32-14.4-32-32s14.4-32 32-32 32 14.4 32 32-14.4 32-32 32zm320-32c0 17.6-14.4 32-32 32s-32-14.4-32-32 14.4-32 32-32 32 14.4 32 32z"],
	"backspace": [640, 512, [], "f55a", "M576 64H205.26A63.97 63.97 0 0 0 160 82.75L9.37 233.37c-12.5 12.5-12.5 32.76 0 45.25L160 429.25c12 12 28.28 18.75 45.25 18.75H576c35.35 0 64-28.65 64-64V128c0-35.35-28.65-64-64-64zm-84.69 254.06c6.25 6.25 6.25 16.38 0 22.63l-22.62 22.62c-6.25 6.25-16.38 6.25-22.63 0L384 301.25l-62.06 62.06c-6.25 6.25-16.38 6.25-22.63 0l-22.62-22.62c-6.25-6.25-6.25-16.38 0-22.63L338.75 256l-62.06-62.06c-6.25-6.25-6.25-16.38 0-22.63l22.62-22.62c6.25-6.25 16.38-6.25 22.63 0L384 210.75l62.06-62.06c6.25-6.25 16.38-6.25 22.63 0l22.62 22.62c6.25 6.25 6.25 16.38 0 22.63L429.25 256l62.06 62.06z"],
	"backward": [512, 512, [], "f04a", "M11.5 280.6l192 160c20.6 17.2 52.5 2.8 52.5-24.6V96c0-27.4-31.9-41.8-52.5-24.6l-192 160c-15.3 12.8-15.3 36.4 0 49.2zm256 0l192 160c20.6 17.2 52.5 2.8 52.5-24.6V96c0-27.4-31.9-41.8-52.5-24.6l-192 160c-15.3 12.8-15.3 36.4 0 49.2z"],
	"bacon": [576, 512, [], "f7e5", "M218.92 336.39c34.89-34.89 44.2-59.7 54.05-86 10.61-28.29 21.59-57.54 61.37-97.34s69.05-50.77 97.35-61.38c23.88-9 46.64-17.68 76.79-45.37L470.81 8.91a31 31 0 0 0-40.18-2.83c-13.64 10.1-25.15 14.39-41 20.3C247 79.52 209.26 191.29 200.65 214.1c-29.75 78.83-89.55 94.68-98.72 98.09-24.86 9.26-54.73 20.38-91.07 50.36C-3 374-3.63 395 9.07 407.61l35.76 35.51C80 410.52 107 400.15 133 390.39c26.27-9.84 51.06-19.12 85.92-54zm348-232l-35.75-35.51c-35.19 32.63-62.18 43-88.25 52.79-26.26 9.85-51.06 19.16-85.95 54s-44.19 59.69-54 86C292.33 290 281.34 319.22 241.55 359s-69 50.73-97.3 61.32c-23.86 9-46.61 17.66-76.72 45.33l37.68 37.43a31 31 0 0 0 40.18 2.82c13.6-10.06 25.09-14.34 40.94-20.24 142.2-53 180-164.1 188.94-187.69C405 219.18 464.8 203.3 474 199.86c24.87-9.27 54.74-20.4 91.11-50.41 13.89-11.4 14.52-32.45 1.82-45.05z"],
	"bacteria": [640, 512, [], "e059", "M272.35,226.4A17.71,17.71,0,0,0,281.46,203l-4-9.08a121.29,121.29,0,0,1,12.36-3.08A83.34,83.34,0,0,0,323.57,177l10,9a17.76,17.76,0,1,0,23.92-26.27l-9.72-8.76a83.12,83.12,0,0,0,11.65-48.18l11.85-3.51a17.73,17.73,0,1,0-10.15-34l-11.34,3.36a84,84,0,0,0-36.38-35.57l2.84-10.85a17.8,17.8,0,0,0-34.47-8.93l-2.82,10.78a83.25,83.25,0,0,0-16.74,1.1C250.83,27,240,30.22,229.1,33.39l-3.38-9.46a17.8,17.8,0,0,0-33.56,11.89l3.49,9.8a286.74,286.74,0,0,0-43.94,23.57l-6.32-8.43a17.9,17.9,0,0,0-24.94-3.6A17.69,17.69,0,0,0,116.84,82l6.45,8.61a286.59,286.59,0,0,0-34.95,35.33l-8.82-6.42a17.84,17.84,0,0,0-24.89,3.86,17.66,17.66,0,0,0,3.88,24.77l8.88,6.47a286.6,286.6,0,0,0-23,43.91l-10.48-3.59a17.73,17.73,0,1,0-11.59,33.52L32.67,232c-2.79,10-5.79,19.84-7.52,30.22a83.16,83.16,0,0,0-.82,19l-11.58,3.43a17.73,17.73,0,1,0,10.13,34l11.27-3.33a83.51,83.51,0,0,0,36.39,35.43l-2.88,11.06a17.81,17.81,0,0,0,34.48,8.92l2.87-11c1,0,2.07.26,3.1.26a83.39,83.39,0,0,0,45.65-13.88l8.59,8.8a17.77,17.77,0,0,0,25.56-24.7l-9.14-9.37a83.41,83.41,0,0,0,12.08-31.05,119.08,119.08,0,0,1,3.87-15.53l9,4.22a17.74,17.74,0,1,0,15.15-32.09l-8.8-4.11c.67-1,1.2-2.08,1.9-3.05a119.89,119.89,0,0,1,7.87-9.41,121.73,121.73,0,0,1,11.65-11.4,119.49,119.49,0,0,1,9.94-7.82c1.12-.77,2.32-1.42,3.47-2.15l3.92,8.85a17.86,17.86,0,0,0,16.32,10.58A18.14,18.14,0,0,0,272.35,226.4ZM128,256a32,32,0,1,1,32-32A32,32,0,0,1,128,256Zm80-96a16,16,0,1,1,16-16A16,16,0,0,1,208,160Zm431.26,45.3a17.79,17.79,0,0,0-17.06-12.69,17.55,17.55,0,0,0-5.08.74l-11.27,3.33a83.61,83.61,0,0,0-36.39-35.43l2.88-11.06a17.81,17.81,0,0,0-34.48-8.91l-2.87,11c-1,0-2.07-.26-3.1-.26a83.32,83.32,0,0,0-45.65,13.89l-8.59-8.81a17.77,17.77,0,0,0-25.56,24.7l9.14,9.37a83.28,83.28,0,0,0-12.08,31.06,119.34,119.34,0,0,1-3.87,15.52l-9-4.22a17.74,17.74,0,1,0-15.15,32.09l8.8,4.11c-.67,1-1.2,2.08-1.89,3.05a117.71,117.71,0,0,1-7.94,9.47,119,119,0,0,1-11.57,11.33,121.59,121.59,0,0,1-10,7.83c-1.12.77-2.32,1.42-3.47,2.15l-3.92-8.85a17.86,17.86,0,0,0-16.32-10.58,18.14,18.14,0,0,0-7.18,1.5A17.71,17.71,0,0,0,358.54,309l4,9.08a118.71,118.71,0,0,1-12.36,3.08,83.34,83.34,0,0,0-33.77,13.9l-10-9a17.77,17.77,0,1,0-23.92,26.28l9.72,8.75a83.12,83.12,0,0,0-11.65,48.18l-11.86,3.51a17.73,17.73,0,1,0,10.16,34l11.34-3.36A84,84,0,0,0,326.61,479l-2.84,10.85a17.8,17.8,0,0,0,34.47,8.93L361.06,488a83.3,83.3,0,0,0,16.74-1.1c11.37-1.89,22.24-5.07,33.1-8.24l3.38,9.46a17.8,17.8,0,0,0,33.56-11.89l-3.49-9.79a287.66,287.66,0,0,0,43.94-23.58l6.32,8.43a17.88,17.88,0,0,0,24.93,3.6A17.67,17.67,0,0,0,523.16,430l-6.45-8.61a287.37,287.37,0,0,0,34.95-35.34l8.82,6.42a17.76,17.76,0,1,0,21-28.63l-8.88-6.46a287.17,287.17,0,0,0,23-43.92l10.48,3.59a17.73,17.73,0,1,0,11.59-33.52L607.33,280c2.79-10,5.79-19.84,7.52-30.21a83.27,83.27,0,0,0,.82-19.05l11.58-3.43A17.7,17.7,0,0,0,639.26,205.3ZM416,416a32,32,0,1,1,32-32A32,32,0,0,1,416,416Z"],
	"bacterium": [512, 512, [], "e05a", "M511,102.93A23.76,23.76,0,0,0,481.47,87l-15.12,4.48a111.85,111.85,0,0,0-48.5-47.42l3.79-14.47a23.74,23.74,0,0,0-46-11.91l-3.76,14.37a111.94,111.94,0,0,0-22.33,1.47,386.74,386.74,0,0,0-44.33,10.41l-4.3-12a23.74,23.74,0,0,0-44.75,15.85l4.3,12.05a383.4,383.4,0,0,0-58.69,31.83l-8-10.63a23.85,23.85,0,0,0-33.24-4.8,23.57,23.57,0,0,0-4.83,33.09l8,10.63a386.14,386.14,0,0,0-46.7,47.44l-11-8a23.68,23.68,0,1,0-28,38.17l11.09,8.06a383.45,383.45,0,0,0-30.92,58.75l-12.93-4.43a23.65,23.65,0,1,0-15.47,44.69l13,4.48a385.81,385.81,0,0,0-9.3,40.53A111.58,111.58,0,0,0,32.44,375L17,379.56a23.64,23.64,0,0,0,13.51,45.31l15-4.44a111.49,111.49,0,0,0,48.53,47.24l-3.85,14.75a23.66,23.66,0,0,0,17,28.83,24.7,24.7,0,0,0,6,.75,23.73,23.73,0,0,0,23-17.7L140,479.67c1.37.05,2.77.35,4.13.35A111.22,111.22,0,0,0,205,461.5l11.45,11.74a23.7,23.7,0,0,0,34.08-32.93l-12.19-12.5a111,111,0,0,0,16.11-41.4,158.69,158.69,0,0,1,5.16-20.71l12,5.64a23.66,23.66,0,1,0,20.19-42.79l-11.72-5.49c.89-1.32,1.59-2.77,2.52-4.06a157.86,157.86,0,0,1,10.46-12.49,159.5,159.5,0,0,1,15.59-15.28,162.18,162.18,0,0,1,13.23-10.4c1.5-1,3.1-1.89,4.63-2.87l5.23,11.8a23.74,23.74,0,0,0,43.48-19.08l-5.36-12.11a158.87,158.87,0,0,1,16.49-4.1,111,111,0,0,0,45-18.54l13.33,12a23.69,23.69,0,1,0,31.88-35l-12.94-11.67A110.83,110.83,0,0,0,479.21,137L495,132.32A23.61,23.61,0,0,0,511,102.93ZM160,368a48,48,0,1,1,48-48A48,48,0,0,1,160,368Zm80-136a24,24,0,1,1,24-24A24,24,0,0,1,240,232Z"],
	"bahai": [512, 512, [], "f666", "M496.25 202.52l-110-15.44 41.82-104.34c6.67-16.64-11.6-32.18-26.59-22.63L307.44 120 273.35 12.82C270.64 4.27 263.32 0 256 0c-7.32 0-14.64 4.27-17.35 12.82l-34.09 107.19-94.04-59.89c-14.99-9.55-33.25 5.99-26.59 22.63l41.82 104.34-110 15.43c-17.54 2.46-21.68 26.27-6.03 34.67l98.16 52.66-74.48 83.54c-10.92 12.25-1.72 30.93 13.29 30.93 1.31 0 2.67-.14 4.07-.45l108.57-23.65-4.11 112.55c-.43 11.65 8.87 19.22 18.41 19.22 5.15 0 10.39-2.21 14.2-7.18l68.18-88.9 68.18 88.9c3.81 4.97 9.04 7.18 14.2 7.18 9.54 0 18.84-7.57 18.41-19.22l-4.11-112.55 108.57 23.65c17.36 3.76 29.21-17.2 17.35-30.49l-74.48-83.54 98.16-52.66c15.64-8.39 11.5-32.2-6.04-34.66zM338.51 311.68l-51.89-11.3 1.97 53.79L256 311.68l-32.59 42.49 1.96-53.79-51.89 11.3 35.6-39.93-46.92-25.17 52.57-7.38-19.99-49.87 44.95 28.62L256 166.72l16.29 51.23 44.95-28.62-19.99 49.87 52.57 7.38-46.92 25.17 35.61 39.93z"],
	"balance-scale": [640, 512, [], "f24e", "M256 336h-.02c0-16.18 1.34-8.73-85.05-181.51-17.65-35.29-68.19-35.36-85.87 0C-2.06 328.75.02 320.33.02 336H0c0 44.18 57.31 80 128 80s128-35.82 128-80zM128 176l72 144H56l72-144zm511.98 160c0-16.18 1.34-8.73-85.05-181.51-17.65-35.29-68.19-35.36-85.87 0-87.12 174.26-85.04 165.84-85.04 181.51H384c0 44.18 57.31 80 128 80s128-35.82 128-80h-.02zM440 320l72-144 72 144H440zm88 128H352V153.25c23.51-10.29 41.16-31.48 46.39-57.25H528c8.84 0 16-7.16 16-16V48c0-8.84-7.16-16-16-16H383.64C369.04 12.68 346.09 0 320 0s-49.04 12.68-63.64 32H112c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h129.61c5.23 25.76 22.87 46.96 46.39 57.25V448H112c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h416c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16z"],
	"balance-scale-left": [640, 512, [], "f515", "M528 448H352V153.25c20.42-8.94 36.1-26.22 43.38-47.47l132-44.26c8.38-2.81 12.89-11.88 10.08-20.26l-10.17-30.34C524.48 2.54 515.41-1.97 507.03.84L389.11 40.37C375.3 16.36 349.69 0 320 0c-44.18 0-80 35.82-80 80 0 3.43.59 6.71 1.01 10.03l-128.39 43.05c-8.38 2.81-12.89 11.88-10.08 20.26l10.17 30.34c2.81 8.38 11.88 12.89 20.26 10.08l142.05-47.63c4.07 2.77 8.43 5.12 12.99 7.12V496c0 8.84 7.16 16 16 16h224c8.84 0 16-7.16 16-16v-32c-.01-8.84-7.17-16-16.01-16zm111.98-144c0-16.18 1.34-8.73-85.05-181.51-17.65-35.29-68.19-35.36-85.87 0-87.12 174.26-85.04 165.84-85.04 181.51H384c0 44.18 57.31 80 128 80s128-35.82 128-80h-.02zM440 288l72-144 72 144H440zm-269.07-37.51c-17.65-35.29-68.19-35.36-85.87 0C-2.06 424.75.02 416.33.02 432H0c0 44.18 57.31 80 128 80s128-35.82 128-80h-.02c0-16.18 1.34-8.73-85.05-181.51zM56 416l72-144 72 144H56z"],
	"balance-scale-right": [640, 512, [], "f516", "M96 464v32c0 8.84 7.16 16 16 16h224c8.84 0 16-7.16 16-16V153.25c4.56-2 8.92-4.35 12.99-7.12l142.05 47.63c8.38 2.81 17.45-1.71 20.26-10.08l10.17-30.34c2.81-8.38-1.71-17.45-10.08-20.26l-128.4-43.05c.42-3.32 1.01-6.6 1.01-10.03 0-44.18-35.82-80-80-80-29.69 0-55.3 16.36-69.11 40.37L132.96.83c-8.38-2.81-17.45 1.71-20.26 10.08l-10.17 30.34c-2.81 8.38 1.71 17.45 10.08 20.26l132 44.26c7.28 21.25 22.96 38.54 43.38 47.47V448H112c-8.84 0-16 7.16-16 16zM0 304c0 44.18 57.31 80 128 80s128-35.82 128-80h-.02c0-15.67 2.08-7.25-85.05-181.51-17.68-35.36-68.22-35.29-85.87 0C-1.32 295.27.02 287.82.02 304H0zm56-16l72-144 72 144H56zm328.02 144H384c0 44.18 57.31 80 128 80s128-35.82 128-80h-.02c0-15.67 2.08-7.25-85.05-181.51-17.68-35.36-68.22-35.29-85.87 0-86.38 172.78-85.04 165.33-85.04 181.51zM440 416l72-144 72 144H440z"],
	"ban": [512, 512, [], "f05e", "M256 8C119.034 8 8 119.033 8 256s111.034 248 248 248 248-111.034 248-248S392.967 8 256 8zm130.108 117.892c65.448 65.448 70 165.481 20.677 235.637L150.47 105.216c70.204-49.356 170.226-44.735 235.638 20.676zM125.892 386.108c-65.448-65.448-70-165.481-20.677-235.637L361.53 406.784c-70.203 49.356-170.226 44.736-235.638-20.676z"],
	"band-aid": [640, 512, [], "f462", "M0 160v192c0 35.3 28.7 64 64 64h96V96H64c-35.3 0-64 28.7-64 64zm576-64h-96v320h96c35.3 0 64-28.7 64-64V160c0-35.3-28.7-64-64-64zM192 416h256V96H192v320zm176-232c13.3 0 24 10.7 24 24s-10.7 24-24 24-24-10.7-24-24 10.7-24 24-24zm0 96c13.3 0 24 10.7 24 24s-10.7 24-24 24-24-10.7-24-24 10.7-24 24-24zm-96-96c13.3 0 24 10.7 24 24s-10.7 24-24 24-24-10.7-24-24 10.7-24 24-24zm0 96c13.3 0 24 10.7 24 24s-10.7 24-24 24-24-10.7-24-24 10.7-24 24-24z"],
	"barcode": [512, 512, [], "f02a", "M0 448V64h18v384H0zm26.857-.273V64H36v383.727h-9.143zm27.143 0V64h8.857v383.727H54zm44.857 0V64h8.857v383.727h-8.857zm36 0V64h17.714v383.727h-17.714zm44.857 0V64h8.857v383.727h-8.857zm18 0V64h8.857v383.727h-8.857zm18 0V64h8.857v383.727h-8.857zm35.715 0V64h18v383.727h-18zm44.857 0V64h18v383.727h-18zm35.999 0V64h18.001v383.727h-18.001zm36.001 0V64h18.001v383.727h-18.001zm26.857 0V64h18v383.727h-18zm45.143 0V64h26.857v383.727h-26.857zm35.714 0V64h9.143v383.727H476zm18 .273V64h18v384h-18z"],
	"bars": [448, 512, [], "f0c9", "M16 132h416c8.837 0 16-7.163 16-16V76c0-8.837-7.163-16-16-16H16C7.163 60 0 67.163 0 76v40c0 8.837 7.163 16 16 16zm0 160h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16zm0 160h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16z"],
	"baseball-ball": [496, 512, [], "f433", "M368.5 363.9l28.8-13.9c11.1 22.9 26 43.2 44.1 60.9 34-42.5 54.5-96.3 54.5-154.9 0-58.5-20.4-112.2-54.2-154.6-17.8 17.3-32.6 37.1-43.6 59.5l-28.7-14.1c12.8-26 30-49 50.8-69C375.6 34.7 315 8 248 8 181.1 8 120.5 34.6 75.9 77.7c20.7 19.9 37.9 42.9 50.7 68.8l-28.7 14.1c-11-22.3-25.7-42.1-43.5-59.4C20.4 143.7 0 197.4 0 256c0 58.6 20.4 112.3 54.4 154.7 18.2-17.7 33.2-38 44.3-61l28.8 13.9c-12.9 26.7-30.3 50.3-51.5 70.7 44.5 43.1 105.1 69.7 172 69.7 66.8 0 127.3-26.5 171.9-69.5-21.1-20.4-38.5-43.9-51.4-70.6zm-228.3-32l-30.5-9.8c14.9-46.4 12.7-93.8-.6-134l30.4-10c15 45.6 18 99.9.7 153.8zm216.3-153.4l30.4 10c-13.2 40.1-15.5 87.5-.6 134l-30.5 9.8c-17.3-54-14.3-108.3.7-153.8z"],
	"basketball-ball": [496, 512, [], "f434", "M212.3 10.3c-43.8 6.3-86.2 24.1-122.2 53.8l77.4 77.4c27.8-35.8 43.3-81.2 44.8-131.2zM248 222L405.9 64.1c-42.4-35-93.6-53.5-145.5-56.1-1.2 63.9-21.5 122.3-58.7 167.7L248 222zM56.1 98.1c-29.7 36-47.5 78.4-53.8 122.2 50-1.5 95.5-17 131.2-44.8L56.1 98.1zm272.2 204.2c45.3-37.1 103.7-57.4 167.7-58.7-2.6-51.9-21.1-103.1-56.1-145.5L282 256l46.3 46.3zM248 290L90.1 447.9c42.4 34.9 93.6 53.5 145.5 56.1 1.3-64 21.6-122.4 58.7-167.7L248 290zm191.9 123.9c29.7-36 47.5-78.4 53.8-122.2-50.1 1.6-95.5 17.1-131.2 44.8l77.4 77.4zM167.7 209.7C122.3 246.9 63.9 267.3 0 268.4c2.6 51.9 21.1 103.1 56.1 145.5L214 256l-46.3-46.3zm116 292c43.8-6.3 86.2-24.1 122.2-53.8l-77.4-77.4c-27.7 35.7-43.2 81.2-44.8 131.2z"],
	"bath": [512, 512, [], "f2cd", "M32,384a95.4,95.4,0,0,0,32,71.09V496a16,16,0,0,0,16,16h32a16,16,0,0,0,16-16V480H384v16a16,16,0,0,0,16,16h32a16,16,0,0,0,16-16V455.09A95.4,95.4,0,0,0,480,384V336H32ZM496,256H80V69.25a21.26,21.26,0,0,1,36.28-15l19.27,19.26c-13.13,29.88-7.61,59.11,8.62,79.73l-.17.17A16,16,0,0,0,144,176l11.31,11.31a16,16,0,0,0,22.63,0L283.31,81.94a16,16,0,0,0,0-22.63L272,48a16,16,0,0,0-22.62,0l-.17.17c-20.62-16.23-49.83-21.75-79.73-8.62L150.22,20.28A69.25,69.25,0,0,0,32,69.25V256H16A16,16,0,0,0,0,272v16a16,16,0,0,0,16,16H496a16,16,0,0,0,16-16V272A16,16,0,0,0,496,256Z"],
	"battery-empty": [640, 512, [], "f244", "M544 160v64h32v64h-32v64H64V160h480m16-64H48c-26.51 0-48 21.49-48 48v224c0 26.51 21.49 48 48 48h512c26.51 0 48-21.49 48-48v-16h8c13.255 0 24-10.745 24-24V184c0-13.255-10.745-24-24-24h-8v-16c0-26.51-21.49-48-48-48z"],
	"battery-full": [640, 512, [], "f240", "M544 160v64h32v64h-32v64H64V160h480m16-64H48c-26.51 0-48 21.49-48 48v224c0 26.51 21.49 48 48 48h512c26.51 0 48-21.49 48-48v-16h8c13.255 0 24-10.745 24-24V184c0-13.255-10.745-24-24-24h-8v-16c0-26.51-21.49-48-48-48zm-48 96H96v128h416V192z"],
	"battery-half": [640, 512, [], "f242", "M544 160v64h32v64h-32v64H64V160h480m16-64H48c-26.51 0-48 21.49-48 48v224c0 26.51 21.49 48 48 48h512c26.51 0 48-21.49 48-48v-16h8c13.255 0 24-10.745 24-24V184c0-13.255-10.745-24-24-24h-8v-16c0-26.51-21.49-48-48-48zm-240 96H96v128h224V192z"],
	"battery-quarter": [640, 512, [], "f243", "M544 160v64h32v64h-32v64H64V160h480m16-64H48c-26.51 0-48 21.49-48 48v224c0 26.51 21.49 48 48 48h512c26.51 0 48-21.49 48-48v-16h8c13.255 0 24-10.745 24-24V184c0-13.255-10.745-24-24-24h-8v-16c0-26.51-21.49-48-48-48zm-336 96H96v128h128V192z"],
	"battery-three-quarters": [640, 512, [], "f241", "M544 160v64h32v64h-32v64H64V160h480m16-64H48c-26.51 0-48 21.49-48 48v224c0 26.51 21.49 48 48 48h512c26.51 0 48-21.49 48-48v-16h8c13.255 0 24-10.745 24-24V184c0-13.255-10.745-24-24-24h-8v-16c0-26.51-21.49-48-48-48zm-144 96H96v128h320V192z"],
	"bed": [640, 512, [], "f236", "M176 256c44.11 0 80-35.89 80-80s-35.89-80-80-80-80 35.89-80 80 35.89 80 80 80zm352-128H304c-8.84 0-16 7.16-16 16v144H64V80c0-8.84-7.16-16-16-16H16C7.16 64 0 71.16 0 80v352c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-48h512v48c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16V240c0-61.86-50.14-112-112-112z"],
	"beer": [448, 512, [], "f0fc", "M368 96h-48V56c0-13.255-10.745-24-24-24H24C10.745 32 0 42.745 0 56v400c0 13.255 10.745 24 24 24h272c13.255 0 24-10.745 24-24v-42.11l80.606-35.977C429.396 365.063 448 336.388 448 304.86V176c0-44.112-35.888-80-80-80zm16 208.86a16.018 16.018 0 0 1-9.479 14.611L320 343.805V160h48c8.822 0 16 7.178 16 16v128.86zM208 384c-8.836 0-16-7.164-16-16V144c0-8.836 7.164-16 16-16s16 7.164 16 16v224c0 8.836-7.164 16-16 16zm-96 0c-8.836 0-16-7.164-16-16V144c0-8.836 7.164-16 16-16s16 7.164 16 16v224c0 8.836-7.164 16-16 16z"],
	"bell": [448, 512, [], "f0f3", "M224 512c35.32 0 63.97-28.65 63.97-64H160.03c0 35.35 28.65 64 63.97 64zm215.39-149.71c-19.32-20.76-55.47-51.99-55.47-154.29 0-77.7-54.48-139.9-127.94-155.16V32c0-17.67-14.32-32-31.98-32s-31.98 14.33-31.98 32v20.84C118.56 68.1 64.08 130.3 64.08 208c0 102.3-36.15 133.53-55.47 154.29-6 6.45-8.66 14.16-8.61 21.71.11 16.4 12.98 32 32.1 32h383.8c19.12 0 32-15.6 32.1-32 .05-7.55-2.61-15.27-8.61-21.71z"],
	"bell-slash": [640, 512, [], "f1f6", "M633.82 458.1l-90.62-70.05c.19-1.38.8-2.66.8-4.06.05-7.55-2.61-15.27-8.61-21.71-19.32-20.76-55.47-51.99-55.47-154.29 0-77.7-54.48-139.9-127.94-155.16V32c0-17.67-14.32-32-31.98-32s-31.98 14.33-31.98 32v20.84c-40.33 8.38-74.66 31.07-97.59 62.57L45.47 3.37C38.49-2.05 28.43-.8 23.01 6.18L3.37 31.45C-2.05 38.42-.8 48.47 6.18 53.9l588.35 454.73c6.98 5.43 17.03 4.17 22.46-2.81l19.64-25.27c5.42-6.97 4.17-17.02-2.81-22.45zM157.23 251.54c-8.61 67.96-36.41 93.33-52.62 110.75-6 6.45-8.66 14.16-8.61 21.71.11 16.4 12.98 32 32.1 32h241.92L157.23 251.54zM320 512c35.32 0 63.97-28.65 63.97-64H256.03c0 35.35 28.65 64 63.97 64z"],
	"bezier-curve": [640, 512, [], "f55b", "M368 32h-96c-17.67 0-32 14.33-32 32v96c0 17.67 14.33 32 32 32h96c17.67 0 32-14.33 32-32V64c0-17.67-14.33-32-32-32zM208 88h-84.75C113.75 64.56 90.84 48 64 48 28.66 48 0 76.65 0 112s28.66 64 64 64c26.84 0 49.75-16.56 59.25-40h79.73c-55.37 32.52-95.86 87.32-109.54 152h49.4c11.3-41.61 36.77-77.21 71.04-101.56-3.7-8.08-5.88-16.99-5.88-26.44V88zm-48 232H64c-17.67 0-32 14.33-32 32v96c0 17.67 14.33 32 32 32h96c17.67 0 32-14.33 32-32v-96c0-17.67-14.33-32-32-32zM576 48c-26.84 0-49.75 16.56-59.25 40H432v72c0 9.45-2.19 18.36-5.88 26.44 34.27 24.35 59.74 59.95 71.04 101.56h49.4c-13.68-64.68-54.17-119.48-109.54-152h79.73c9.5 23.44 32.41 40 59.25 40 35.34 0 64-28.65 64-64s-28.66-64-64-64zm0 272h-96c-17.67 0-32 14.33-32 32v96c0 17.67 14.33 32 32 32h96c17.67 0 32-14.33 32-32v-96c0-17.67-14.33-32-32-32z"],
	"bible": [448, 512, [], "f647", "M448 358.4V25.6c0-16-9.6-25.6-25.6-25.6H96C41.6 0 0 41.6 0 96v320c0 54.4 41.6 96 96 96h326.4c12.8 0 25.6-9.6 25.6-25.6v-16c0-6.4-3.2-12.8-9.6-19.2-3.2-16-3.2-60.8 0-73.6 6.4-3.2 9.6-9.6 9.6-19.2zM144 144c0-8.84 7.16-16 16-16h48V80c0-8.84 7.16-16 16-16h32c8.84 0 16 7.16 16 16v48h48c8.84 0 16 7.16 16 16v32c0 8.84-7.16 16-16 16h-48v112c0 8.84-7.16 16-16 16h-32c-8.84 0-16-7.16-16-16V192h-48c-8.84 0-16-7.16-16-16v-32zm236.8 304H96c-19.2 0-32-12.8-32-32s16-32 32-32h284.8v64z"],
	"bicycle": [640, 512, [], "f206", "M512.509 192.001c-16.373-.064-32.03 2.955-46.436 8.495l-77.68-125.153A24 24 0 0 0 368.001 64h-64c-8.837 0-16 7.163-16 16v16c0 8.837 7.163 16 16 16h50.649l14.896 24H256.002v-16c0-8.837-7.163-16-16-16h-87.459c-13.441 0-24.777 10.999-24.536 24.437.232 13.044 10.876 23.563 23.995 23.563h48.726l-29.417 47.52c-13.433-4.83-27.904-7.483-42.992-7.52C58.094 191.83.412 249.012.002 319.236-.413 390.279 57.055 448 128.002 448c59.642 0 109.758-40.793 123.967-96h52.033a24 24 0 0 0 20.406-11.367L410.37 201.77l14.938 24.067c-25.455 23.448-41.385 57.081-41.307 94.437.145 68.833 57.899 127.051 126.729 127.719 70.606.685 128.181-55.803 129.255-125.996 1.086-70.941-56.526-129.72-127.476-129.996zM186.75 265.772c9.727 10.529 16.673 23.661 19.642 38.228h-43.306l23.664-38.228zM128.002 400c-44.112 0-80-35.888-80-80s35.888-80 80-80c5.869 0 11.586.653 17.099 1.859l-45.505 73.509C89.715 331.327 101.213 352 120.002 352h81.3c-12.37 28.225-40.562 48-73.3 48zm162.63-96h-35.624c-3.96-31.756-19.556-59.894-42.383-80.026L237.371 184h127.547l-74.286 120zm217.057 95.886c-41.036-2.165-74.049-35.692-75.627-76.755-.812-21.121 6.633-40.518 19.335-55.263l44.433 71.586c4.66 7.508 14.524 9.816 22.032 5.156l13.594-8.437c7.508-4.66 9.817-14.524 5.156-22.032l-44.468-71.643a79.901 79.901 0 0 1 19.858-2.497c44.112 0 80 35.888 80 80-.001 45.54-38.252 82.316-84.313 79.885z"],
	"biking": [640, 512, [], "f84a", "M400 96a48 48 0 1 0-48-48 48 48 0 0 0 48 48zm-4 121a31.9 31.9 0 0 0 20 7h64a32 32 0 0 0 0-64h-52.78L356 103a31.94 31.94 0 0 0-40.81.68l-112 96a32 32 0 0 0 3.08 50.92L288 305.12V416a32 32 0 0 0 64 0V288a32 32 0 0 0-14.25-26.62l-41.36-27.57 58.25-49.92zm116 39a128 128 0 1 0 128 128 128 128 0 0 0-128-128zm0 192a64 64 0 1 1 64-64 64 64 0 0 1-64 64zM128 256a128 128 0 1 0 128 128 128 128 0 0 0-128-128zm0 192a64 64 0 1 1 64-64 64 64 0 0 1-64 64z"],
	"binoculars": [512, 512, [], "f1e5", "M416 48c0-8.84-7.16-16-16-16h-64c-8.84 0-16 7.16-16 16v48h96V48zM63.91 159.99C61.4 253.84 3.46 274.22 0 404v44c0 17.67 14.33 32 32 32h96c17.67 0 32-14.33 32-32V288h32V128H95.84c-17.63 0-31.45 14.37-31.93 31.99zm384.18 0c-.48-17.62-14.3-31.99-31.93-31.99H320v160h32v160c0 17.67 14.33 32 32 32h96c17.67 0 32-14.33 32-32v-44c-3.46-129.78-61.4-150.16-63.91-244.01zM176 32h-64c-8.84 0-16 7.16-16 16v48h96V48c0-8.84-7.16-16-16-16zm48 256h64V128h-64v160z"],
	"biohazard": [576, 512, [], "f780", "M287.9 112c18.6 0 36.2 3.8 52.8 9.6 13.3-10.3 23.6-24.3 29.5-40.7-25.2-10.9-53-17-82.2-17-29.1 0-56.9 6-82.1 16.9 5.9 16.4 16.2 30.4 29.5 40.7 16.5-5.7 34-9.5 52.5-9.5zM163.6 438.7c12-11.8 20.4-26.4 24.5-42.4-32.9-26.4-54.8-65.3-58.9-109.6-8.5-2.8-17.2-4.6-26.4-4.6-7.6 0-15.2 1-22.5 3.1 4.1 62.8 35.8 118 83.3 153.5zm224.2-42.6c4.1 16 12.5 30.7 24.5 42.5 47.4-35.5 79.1-90.7 83-153.5-7.2-2-14.7-3-22.2-3-9.2 0-18 1.9-26.6 4.7-4.1 44.2-26 82.9-58.7 109.3zm113.5-205c-17.6-10.4-36.3-16.6-55.3-19.9 6-17.7 10-36.4 10-56.2 0-41-14.5-80.8-41-112.2-2.5-3-6.6-3.7-10-1.8-3.3 1.9-4.8 6-3.6 9.7 4.5 13.8 6.6 26.3 6.6 38.5 0 67.8-53.8 122.9-120 122.9S168 117 168 49.2c0-12.1 2.2-24.7 6.6-38.5 1.2-3.7-.3-7.8-3.6-9.7-3.4-1.9-7.5-1.2-10 1.8C134.6 34.2 120 74 120 115c0 19.8 3.9 38.5 10 56.2-18.9 3.3-37.7 9.5-55.3 19.9-34.6 20.5-61 53.3-74.3 92.4-1.3 3.7.2 7.7 3.5 9.8 3.3 2 7.5 1.3 10-1.6 9.4-10.8 19-19.1 29.2-25.1 57.3-33.9 130.8-13.7 163.9 45 33.1 58.7 13.4 134-43.9 167.9-10.2 6.1-22 10.4-35.8 13.4-3.7.8-6.4 4.2-6.4 8.1.1 4 2.7 7.3 6.5 8 39.7 7.8 80.6.8 115.2-19.7 18-10.6 32.9-24.5 45.3-40.1 12.4 15.6 27.3 29.5 45.3 40.1 34.6 20.5 75.5 27.5 115.2 19.7 3.8-.7 6.4-4 6.5-8 0-3.9-2.6-7.3-6.4-8.1-13.9-2.9-25.6-7.3-35.8-13.4-57.3-33.9-77-109.2-43.9-167.9s106.6-78.9 163.9-45c10.2 6.1 19.8 14.3 29.2 25.1 2.5 2.9 6.7 3.6 10 1.6s4.8-6.1 3.5-9.8c-13.1-39.1-39.5-72-74.1-92.4zm-213.4 129c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48z"],
	"birthday-cake": [448, 512, [], "f1fd", "M448 384c-28.02 0-31.26-32-74.5-32-43.43 0-46.825 32-74.75 32-27.695 0-31.454-32-74.75-32-42.842 0-47.218 32-74.5 32-28.148 0-31.202-32-74.75-32-43.547 0-46.653 32-74.75 32v-80c0-26.5 21.5-48 48-48h16V112h64v144h64V112h64v144h64V112h64v144h16c26.5 0 48 21.5 48 48v80zm0 128H0v-96c43.356 0 46.767-32 74.75-32 27.951 0 31.253 32 74.75 32 42.843 0 47.217-32 74.5-32 28.148 0 31.201 32 74.75 32 43.357 0 46.767-32 74.75-32 27.488 0 31.252 32 74.5 32v96zM96 96c-17.75 0-32-14.25-32-32 0-31 32-23 32-64 12 0 32 29.5 32 56s-14.25 40-32 40zm128 0c-17.75 0-32-14.25-32-32 0-31 32-23 32-64 12 0 32 29.5 32 56s-14.25 40-32 40zm128 0c-17.75 0-32-14.25-32-32 0-31 32-23 32-64 12 0 32 29.5 32 56s-14.25 40-32 40z"],
	"blender": [512, 512, [], "f517", "M416 384H160c-35.35 0-64 28.65-64 64v32c0 17.67 14.33 32 32 32h320c17.67 0 32-14.33 32-32v-32c0-35.35-28.65-64-64-64zm-128 96c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm40-416h166.54L512 0H48C21.49 0 0 21.49 0 48v160c0 26.51 21.49 48 48 48h103.27l8.73 96h256l17.46-64H328c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h114.18l17.46-64H328c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h140.36l17.46-64H328c-4.42 0-8-3.58-8-8V72c0-4.42 3.58-8 8-8zM64 192V64h69.82l11.64 128H64z"],
	"blender-phone": [576, 512, [], "f6b6", "M392 64h166.54L576 0H192v352h288l17.46-64H392c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h114.18l17.46-64H392c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h140.36l17.46-64H392c-4.42 0-8-3.58-8-8V72c0-4.42 3.58-8 8-8zM158.8 335.01l-25.78-63.26c-2.78-6.81-9.8-10.99-17.24-10.26l-45.03 4.42c-17.28-46.94-17.65-99.78 0-147.72l45.03 4.42c7.43.73 14.46-3.46 17.24-10.26l25.78-63.26c3.02-7.39.2-15.85-6.68-20.07l-39.28-24.1C98.51-3.87 80.09-.5 68.95 11.97c-92.57 103.6-92 259.55 2.1 362.49 9.87 10.8 29.12 12.48 41.65 4.8l39.41-24.18c6.89-4.22 9.7-12.67 6.69-20.07zM480 384H192c-35.35 0-64 28.65-64 64v32c0 17.67 14.33 32 32 32h352c17.67 0 32-14.33 32-32v-32c0-35.35-28.65-64-64-64zm-144 96c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z"],
	"blind": [384, 512, [], "f29d", "M380.15 510.837a8 8 0 0 1-10.989-2.687l-125.33-206.427a31.923 31.923 0 0 0 12.958-9.485l126.048 207.608a8 8 0 0 1-2.687 10.991zM142.803 314.338l-32.54 89.485 36.12 88.285c6.693 16.36 25.377 24.192 41.733 17.501 16.357-6.692 24.193-25.376 17.501-41.734l-62.814-153.537zM96 88c24.301 0 44-19.699 44-44S120.301 0 96 0 52 19.699 52 44s19.699 44 44 44zm154.837 169.128l-120-152c-4.733-5.995-11.75-9.108-18.837-9.112V96H80v.026c-7.146.003-14.217 3.161-18.944 9.24L0 183.766v95.694c0 13.455 11.011 24.791 24.464 24.536C37.505 303.748 48 293.1 48 280v-79.766l16-20.571v140.698L9.927 469.055c-6.04 16.609 2.528 34.969 19.138 41.009 16.602 6.039 34.968-2.524 41.009-19.138L136 309.638V202.441l-31.406-39.816a4 4 0 1 1 6.269-4.971l102.3 129.217c9.145 11.584 24.368 11.339 33.708 3.965 10.41-8.216 12.159-23.334 3.966-33.708z"],
	"blog": [512, 512, [], "f781", "M172.2 226.8c-14.6-2.9-28.2 8.9-28.2 23.8V301c0 10.2 7.1 18.4 16.7 22 18.2 6.8 31.3 24.4 31.3 45 0 26.5-21.5 48-48 48s-48-21.5-48-48V120c0-13.3-10.7-24-24-24H24c-13.3 0-24 10.7-24 24v248c0 89.5 82.1 160.2 175 140.7 54.4-11.4 98.3-55.4 109.7-109.7 17.4-82.9-37-157.2-112.5-172.2zM209 0c-9.2-.5-17 6.8-17 16v31.6c0 8.5 6.6 15.5 15 15.9 129.4 7 233.4 112 240.9 241.5.5 8.4 7.5 15 15.9 15h32.1c9.2 0 16.5-7.8 16-17C503.4 139.8 372.2 8.6 209 0zm.3 96c-9.3-.7-17.3 6.7-17.3 16.1v32.1c0 8.4 6.5 15.3 14.8 15.9 76.8 6.3 138 68.2 144.9 145.2.8 8.3 7.6 14.7 15.9 14.7h32.2c9.3 0 16.8-8 16.1-17.3-8.4-110.1-96.5-198.2-206.6-206.7z"],
	"bold": [384, 512, [], "f032", "M333.49 238a122 122 0 0 0 27-65.21C367.87 96.49 308 32 233.42 32H34a16 16 0 0 0-16 16v48a16 16 0 0 0 16 16h31.87v288H34a16 16 0 0 0-16 16v48a16 16 0 0 0 16 16h209.32c70.8 0 134.14-51.75 141-122.4 4.74-48.45-16.39-92.06-50.83-119.6zM145.66 112h87.76a48 48 0 0 1 0 96h-87.76zm87.76 288h-87.76V288h87.76a56 56 0 0 1 0 112z"],
	"bolt": [320, 512, [], "f0e7", "M296 160H180.6l42.6-129.8C227.2 15 215.7 0 200 0H56C44 0 33.8 8.9 32.2 20.8l-32 240C-1.7 275.2 9.5 288 24 288h118.7L96.6 482.5c-3.6 15.2 8 29.5 23.3 29.5 8.4 0 16.4-4.4 20.8-12l176-304c9.3-15.9-2.2-36-20.7-36z"],
	"bomb": [512, 512, [], "f1e2", "M440.5 88.5l-52 52L415 167c9.4 9.4 9.4 24.6 0 33.9l-17.4 17.4c11.8 26.1 18.4 55.1 18.4 85.6 0 114.9-93.1 208-208 208S0 418.9 0 304 93.1 96 208 96c30.5 0 59.5 6.6 85.6 18.4L311 97c9.4-9.4 24.6-9.4 33.9 0l26.5 26.5 52-52 17.1 17zM500 60h-24c-6.6 0-12 5.4-12 12s5.4 12 12 12h24c6.6 0 12-5.4 12-12s-5.4-12-12-12zM440 0c-6.6 0-12 5.4-12 12v24c0 6.6 5.4 12 12 12s12-5.4 12-12V12c0-6.6-5.4-12-12-12zm33.9 55l17-17c4.7-4.7 4.7-12.3 0-17-4.7-4.7-12.3-4.7-17 0l-17 17c-4.7 4.7-4.7 12.3 0 17 4.8 4.7 12.4 4.7 17 0zm-67.8 0c4.7 4.7 12.3 4.7 17 0 4.7-4.7 4.7-12.3 0-17l-17-17c-4.7-4.7-12.3-4.7-17 0-4.7 4.7-4.7 12.3 0 17l17 17zm67.8 34c-4.7-4.7-12.3-4.7-17 0-4.7 4.7-4.7 12.3 0 17l17 17c4.7 4.7 12.3 4.7 17 0 4.7-4.7 4.7-12.3 0-17l-17-17zM112 272c0-35.3 28.7-64 64-64 8.8 0 16-7.2 16-16s-7.2-16-16-16c-52.9 0-96 43.1-96 96 0 8.8 7.2 16 16 16s16-7.2 16-16z"],
	"bone": [640, 512, [], "f5d7", "M598.88 244.56c25.2-12.6 41.12-38.36 41.12-66.53v-7.64C640 129.3 606.7 96 565.61 96c-32.02 0-60.44 20.49-70.57 50.86-7.68 23.03-11.6 45.14-38.11 45.14H183.06c-27.38 0-31.58-25.54-38.11-45.14C134.83 116.49 106.4 96 74.39 96 33.3 96 0 129.3 0 170.39v7.64c0 28.17 15.92 53.93 41.12 66.53 9.43 4.71 9.43 18.17 0 22.88C15.92 280.04 0 305.8 0 333.97v7.64C0 382.7 33.3 416 74.38 416c32.02 0 60.44-20.49 70.57-50.86 7.68-23.03 11.6-45.14 38.11-45.14h273.87c27.38 0 31.58 25.54 38.11 45.14C505.17 395.51 533.6 416 565.61 416c41.08 0 74.38-33.3 74.38-74.39v-7.64c0-28.18-15.92-53.93-41.12-66.53-9.42-4.71-9.42-18.17.01-22.88z"],
	"bong": [448, 512, [], "f55c", "M302.5 512c23.18 0 44.43-12.58 56-32.66C374.69 451.26 384 418.75 384 384c0-36.12-10.08-69.81-27.44-98.62L400 241.94l9.38 9.38c6.25 6.25 16.38 6.25 22.63 0l11.3-11.32c6.25-6.25 6.25-16.38 0-22.63l-52.69-52.69c-6.25-6.25-16.38-6.25-22.63 0l-11.31 11.31c-6.25 6.25-6.25 16.38 0 22.63l9.38 9.38-39.41 39.41c-11.56-11.37-24.53-21.33-38.65-29.51V63.74l15.97-.02c8.82-.01 15.97-7.16 15.98-15.98l.04-31.72C320 7.17 312.82-.01 303.97 0L80.03.26c-8.82.01-15.97 7.16-15.98 15.98l-.04 31.73c-.01 8.85 7.17 16.02 16.02 16.01L96 63.96v153.93C38.67 251.1 0 312.97 0 384c0 34.75 9.31 67.27 25.5 95.34C37.08 499.42 58.33 512 81.5 512h221zM120.06 259.43L144 245.56V63.91l96-.11v181.76l23.94 13.87c24.81 14.37 44.12 35.73 56.56 60.57h-257c12.45-24.84 31.75-46.2 56.56-60.57z"],
	"book": [448, 512, [], "f02d", "M448 360V24c0-13.3-10.7-24-24-24H96C43 0 0 43 0 96v320c0 53 43 96 96 96h328c13.3 0 24-10.7 24-24v-16c0-7.5-3.5-14.3-8.9-18.7-4.2-15.4-4.2-59.3 0-74.7 5.4-4.3 8.9-11.1 8.9-18.6zM128 134c0-3.3 2.7-6 6-6h212c3.3 0 6 2.7 6 6v20c0 3.3-2.7 6-6 6H134c-3.3 0-6-2.7-6-6v-20zm0 64c0-3.3 2.7-6 6-6h212c3.3 0 6 2.7 6 6v20c0 3.3-2.7 6-6 6H134c-3.3 0-6-2.7-6-6v-20zm253.4 250H96c-17.7 0-32-14.3-32-32 0-17.6 14.4-32 32-32h285.4c-1.9 17.1-1.9 46.9 0 64z"],
	"book-dead": [448, 512, [], "f6b7", "M272 136c8.8 0 16-7.2 16-16s-7.2-16-16-16-16 7.2-16 16 7.2 16 16 16zm176 222.4V25.6c0-16-9.6-25.6-25.6-25.6H96C41.6 0 0 41.6 0 96v320c0 54.4 41.6 96 96 96h326.4c12.8 0 25.6-9.6 25.6-25.6v-16c0-6.4-3.2-12.8-9.6-19.2-3.2-16-3.2-60.8 0-73.6 6.4-3.2 9.6-9.6 9.6-19.2zM240 56c44.2 0 80 28.7 80 64 0 20.9-12.7 39.2-32 50.9V184c0 8.8-7.2 16-16 16h-64c-8.8 0-16-7.2-16-16v-13.1c-19.3-11.7-32-30-32-50.9 0-35.3 35.8-64 80-64zM124.8 223.3l6.3-14.7c1.7-4.1 6.4-5.9 10.5-4.2l98.3 42.1 98.4-42.1c4.1-1.7 8.8.1 10.5 4.2l6.3 14.7c1.7 4.1-.1 8.8-4.2 10.5L280.6 264l70.3 30.1c4.1 1.7 5.9 6.4 4.2 10.5l-6.3 14.7c-1.7 4.1-6.4 5.9-10.5 4.2L240 281.4l-98.3 42.2c-4.1 1.7-8.8-.1-10.5-4.2l-6.3-14.7c-1.7-4.1.1-8.8 4.2-10.5l70.4-30.1-70.5-30.3c-4.1-1.7-5.9-6.4-4.2-10.5zm256 224.7H96c-19.2 0-32-12.8-32-32s16-32 32-32h284.8zM208 136c8.8 0 16-7.2 16-16s-7.2-16-16-16-16 7.2-16 16 7.2 16 16 16z"],
	"book-medical": [448, 512, [], "f7e6", "M448 358.4V25.6c0-16-9.6-25.6-25.6-25.6H96C41.6 0 0 41.6 0 96v320c0 54.4 41.6 96 96 96h326.4c12.8 0 25.6-9.6 25.6-25.6v-16q0-9.6-9.6-19.2c-3.2-16-3.2-60.8 0-73.6q9.6-4.8 9.6-19.2zM144 168a8 8 0 0 1 8-8h56v-56a8 8 0 0 1 8-8h48a8 8 0 0 1 8 8v56h56a8 8 0 0 1 8 8v48a8 8 0 0 1-8 8h-56v56a8 8 0 0 1-8 8h-48a8 8 0 0 1-8-8v-56h-56a8 8 0 0 1-8-8zm236.8 280H96c-19.2 0-32-12.8-32-32s16-32 32-32h284.8z"],
	"book-open": [576, 512, [], "f518", "M542.22 32.05c-54.8 3.11-163.72 14.43-230.96 55.59-4.64 2.84-7.27 7.89-7.27 13.17v363.87c0 11.55 12.63 18.85 23.28 13.49 69.18-34.82 169.23-44.32 218.7-46.92 16.89-.89 30.02-14.43 30.02-30.66V62.75c.01-17.71-15.35-31.74-33.77-30.7zM264.73 87.64C197.5 46.48 88.58 35.17 33.78 32.05 15.36 31.01 0 45.04 0 62.75V400.6c0 16.24 13.13 29.78 30.02 30.66 49.49 2.6 149.59 12.11 218.77 46.95 10.62 5.35 23.21-1.94 23.21-13.46V100.63c0-5.29-2.62-10.14-7.27-12.99z"],
	"book-reader": [512, 512, [], "f5da", "M352 96c0-53.02-42.98-96-96-96s-96 42.98-96 96 42.98 96 96 96 96-42.98 96-96zM233.59 241.1c-59.33-36.32-155.43-46.3-203.79-49.05C13.55 191.13 0 203.51 0 219.14v222.8c0 14.33 11.59 26.28 26.49 27.05 43.66 2.29 131.99 10.68 193.04 41.43 9.37 4.72 20.48-1.71 20.48-11.87V252.56c-.01-4.67-2.32-8.95-6.42-11.46zm248.61-49.05c-48.35 2.74-144.46 12.73-203.78 49.05-4.1 2.51-6.41 6.96-6.41 11.63v245.79c0 10.19 11.14 16.63 20.54 11.9 61.04-30.72 149.32-39.11 192.97-41.4 14.9-.78 26.49-12.73 26.49-27.06V219.14c-.01-15.63-13.56-28.01-29.81-27.09z"],
	"bookmark": [384, 512, [], "f02e", "M0 512V48C0 21.49 21.49 0 48 0h288c26.51 0 48 21.49 48 48v464L192 400 0 512z"],
	"border-all": [448, 512, [], "f84c", "M416 32H32A32 32 0 0 0 0 64v384a32 32 0 0 0 32 32h384a32 32 0 0 0 32-32V64a32 32 0 0 0-32-32zm-32 64v128H256V96zm-192 0v128H64V96zM64 416V288h128v128zm192 0V288h128v128z"],
	"border-none": [448, 512, [], "f850", "M240 224h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm96 0h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm96 0h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm-288 0h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm96 192h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm96 0h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm96 0h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-96h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-192h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zM240 320h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-192h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm-96 288h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm96-384h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zm96 0h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zm96 0h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zM48 224H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0 192H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-96H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-192H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-96H16A16 16 0 0 0 0 48v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zm96 0h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16z"],
	"border-style": [448, 512, [], "f853", "M240 416h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm-96 0h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm192 0h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm96-192h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0 96h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0 96h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-288h-32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-96H32A32 32 0 0 0 0 64v400a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V96h368a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16z"],
	"bowling-ball": [496, 512, [], "f436", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zM120 192c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm64-96c0-17.7 14.3-32 32-32s32 14.3 32 32-14.3 32-32 32-32-14.3-32-32zm48 144c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32z"],
	"box": [512, 512, [], "f466", "M509.5 184.6L458.9 32.8C452.4 13.2 434.1 0 413.4 0H272v192h238.7c-.4-2.5-.4-5-1.2-7.4zM240 0H98.6c-20.7 0-39 13.2-45.5 32.8L2.5 184.6c-.8 2.4-.8 4.9-1.2 7.4H240V0zM0 224v240c0 26.5 21.5 48 48 48h416c26.5 0 48-21.5 48-48V224H0z"],
	"box-open": [640, 512, [], "f49e", "M425.7 256c-16.9 0-32.8-9-41.4-23.4L320 126l-64.2 106.6c-8.7 14.5-24.6 23.5-41.5 23.5-4.5 0-9-.6-13.3-1.9L64 215v178c0 14.7 10 27.5 24.2 31l216.2 54.1c10.2 2.5 20.9 2.5 31 0L551.8 424c14.2-3.6 24.2-16.4 24.2-31V215l-137 39.1c-4.3 1.3-8.8 1.9-13.3 1.9zm212.6-112.2L586.8 41c-3.1-6.2-9.8-9.8-16.7-8.9L320 64l91.7 152.1c3.8 6.3 11.4 9.3 18.5 7.3l197.9-56.5c9.9-2.9 14.7-13.9 10.2-23.1zM53.2 41L1.7 143.8c-4.6 9.2.3 20.2 10.1 23l197.9 56.5c7.1 2 14.7-1 18.5-7.3L320 64 69.8 32.1c-6.9-.8-13.5 2.7-16.6 8.9z"],
	"box-tissue": [512, 512, [], "e05b", "M383.88,287.82l64-192H338.47a70.2,70.2,0,0,1-66.59-48,70.21,70.21,0,0,0-66.6-48H63.88l64,288Zm-384,192a32,32,0,0,0,32,32h448a32,32,0,0,0,32-32v-64H-.12Zm480-256H438.94l-21.33,64h14.27a16,16,0,0,1,0,32h-352a16,16,0,1,1,0-32H95.09l-14.22-64h-49a32,32,0,0,0-32,32v128h512v-128A32,32,0,0,0,479.88,223.82Z"],
	"boxes": [576, 512, [], "f468", "M560 288h-80v96l-32-21.3-32 21.3v-96h-80c-8.8 0-16 7.2-16 16v192c0 8.8 7.2 16 16 16h224c8.8 0 16-7.2 16-16V304c0-8.8-7.2-16-16-16zm-384-64h224c8.8 0 16-7.2 16-16V16c0-8.8-7.2-16-16-16h-80v96l-32-21.3L256 96V0h-80c-8.8 0-16 7.2-16 16v192c0 8.8 7.2 16 16 16zm64 64h-80v96l-32-21.3L96 384v-96H16c-8.8 0-16 7.2-16 16v192c0 8.8 7.2 16 16 16h224c8.8 0 16-7.2 16-16V304c0-8.8-7.2-16-16-16z"],
	"braille": [640, 512, [], "f2a1", "M128 256c0 35.346-28.654 64-64 64S0 291.346 0 256s28.654-64 64-64 64 28.654 64 64zM64 384c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32zm0-352C28.654 32 0 60.654 0 96s28.654 64 64 64 64-28.654 64-64-28.654-64-64-64zm160 192c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32zm0 160c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32zm0-352c-35.346 0-64 28.654-64 64s28.654 64 64 64 64-28.654 64-64-28.654-64-64-64zm224 192c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32zm0 160c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32zm0-352c-35.346 0-64 28.654-64 64s28.654 64 64 64 64-28.654 64-64-28.654-64-64-64zm160 192c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32zm0 160c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32zm0-320c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32z"],
	"brain": [576, 512, [], "f5dc", "M208 0c-29.9 0-54.7 20.5-61.8 48.2-.8 0-1.4-.2-2.2-.2-35.3 0-64 28.7-64 64 0 4.8.6 9.5 1.7 14C52.5 138 32 166.6 32 200c0 12.6 3.2 24.3 8.3 34.9C16.3 248.7 0 274.3 0 304c0 33.3 20.4 61.9 49.4 73.9-.9 4.6-1.4 9.3-1.4 14.1 0 39.8 32.2 72 72 72 4.1 0 8.1-.5 12-1.2 9.6 28.5 36.2 49.2 68 49.2 39.8 0 72-32.2 72-72V64c0-35.3-28.7-64-64-64zm368 304c0-29.7-16.3-55.3-40.3-69.1 5.2-10.6 8.3-22.3 8.3-34.9 0-33.4-20.5-62-49.7-74 1-4.5 1.7-9.2 1.7-14 0-35.3-28.7-64-64-64-.8 0-1.5.2-2.2.2C422.7 20.5 397.9 0 368 0c-35.3 0-64 28.6-64 64v376c0 39.8 32.2 72 72 72 31.8 0 58.4-20.7 68-49.2 3.9.7 7.9 1.2 12 1.2 39.8 0 72-32.2 72-72 0-4.8-.5-9.5-1.4-14.1 29-12 49.4-40.6 49.4-73.9z"],
	"bread-slice": [576, 512, [], "f7ec", "M288 0C108 0 0 93.4 0 169.14 0 199.44 24.24 224 64 224v256c0 17.67 16.12 32 36 32h376c19.88 0 36-14.33 36-32V224c39.76 0 64-24.56 64-54.86C576 93.4 468 0 288 0z"],
	"briefcase": [512, 512, [], "f0b1", "M320 336c0 8.84-7.16 16-16 16h-96c-8.84 0-16-7.16-16-16v-48H0v144c0 25.6 22.4 48 48 48h416c25.6 0 48-22.4 48-48V288H320v48zm144-208h-80V80c0-25.6-22.4-48-48-48H176c-25.6 0-48 22.4-48 48v48H48c-25.6 0-48 22.4-48 48v80h512v-80c0-25.6-22.4-48-48-48zm-144 0H192V96h128v32z"],
	"briefcase-medical": [512, 512, [], "f469", "M464 128h-80V80c0-26.5-21.5-48-48-48H176c-26.5 0-48 21.5-48 48v48H48c-26.5 0-48 21.5-48 48v288c0 26.5 21.5 48 48 48h416c26.5 0 48-21.5 48-48V176c0-26.5-21.5-48-48-48zM192 96h128v32H192V96zm160 248c0 4.4-3.6 8-8 8h-56v56c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8v-56h-56c-4.4 0-8-3.6-8-8v-48c0-4.4 3.6-8 8-8h56v-56c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v56h56c4.4 0 8 3.6 8 8v48z"],
	"broadcast-tower": [640, 512, [], "f519", "M150.94 192h33.73c11.01 0 18.61-10.83 14.86-21.18-4.93-13.58-7.55-27.98-7.55-42.82s2.62-29.24 7.55-42.82C203.29 74.83 195.68 64 184.67 64h-33.73c-7.01 0-13.46 4.49-15.41 11.23C130.64 92.21 128 109.88 128 128c0 18.12 2.64 35.79 7.54 52.76 1.94 6.74 8.39 11.24 15.4 11.24zM89.92 23.34C95.56 12.72 87.97 0 75.96 0H40.63c-6.27 0-12.14 3.59-14.74 9.31C9.4 45.54 0 85.65 0 128c0 24.75 3.12 68.33 26.69 118.86 2.62 5.63 8.42 9.14 14.61 9.14h34.84c12.02 0 19.61-12.74 13.95-23.37-49.78-93.32-16.71-178.15-.17-209.29zM614.06 9.29C611.46 3.58 605.6 0 599.33 0h-35.42c-11.98 0-19.66 12.66-14.02 23.25 18.27 34.29 48.42 119.42.28 209.23-5.72 10.68 1.8 23.52 13.91 23.52h35.23c6.27 0 12.13-3.58 14.73-9.29C630.57 210.48 640 170.36 640 128s-9.42-82.48-25.94-118.71zM489.06 64h-33.73c-11.01 0-18.61 10.83-14.86 21.18 4.93 13.58 7.55 27.98 7.55 42.82s-2.62 29.24-7.55 42.82c-3.76 10.35 3.85 21.18 14.86 21.18h33.73c7.02 0 13.46-4.49 15.41-11.24 4.9-16.97 7.53-34.64 7.53-52.76 0-18.12-2.64-35.79-7.54-52.76-1.94-6.75-8.39-11.24-15.4-11.24zm-116.3 100.12c7.05-10.29 11.2-22.71 11.2-36.12 0-35.35-28.63-64-63.96-64-35.32 0-63.96 28.65-63.96 64 0 13.41 4.15 25.83 11.2 36.12l-130.5 313.41c-3.4 8.15.46 17.52 8.61 20.92l29.51 12.31c8.15 3.4 17.52-.46 20.91-8.61L244.96 384h150.07l49.2 118.15c3.4 8.16 12.76 12.01 20.91 8.61l29.51-12.31c8.15-3.4 12-12.77 8.61-20.92l-130.5-313.41zM271.62 320L320 203.81 368.38 320h-96.76z"],
	"broom": [640, 512, [], "f51a", "M256.47 216.77l86.73 109.18s-16.6 102.36-76.57 150.12C206.66 523.85 0 510.19 0 510.19s3.8-23.14 11-55.43l94.62-112.17c3.97-4.7-.87-11.62-6.65-9.5l-60.4 22.09c14.44-41.66 32.72-80.04 54.6-97.47 59.97-47.76 163.3-40.94 163.3-40.94zM636.53 31.03l-19.86-25c-5.49-6.9-15.52-8.05-22.41-2.56l-232.48 177.8-34.14-42.97c-5.09-6.41-15.14-5.21-18.59 2.21l-25.33 54.55 86.73 109.18 58.8-12.45c8-1.69 11.42-11.2 6.34-17.6l-34.09-42.92 232.48-177.8c6.89-5.48 8.04-15.53 2.55-22.44z"],
	"brush": [384, 512, [], "f55d", "M352 0H32C14.33 0 0 14.33 0 32v224h384V32c0-17.67-14.33-32-32-32zM0 320c0 35.35 28.66 64 64 64h64v64c0 35.35 28.66 64 64 64s64-28.65 64-64v-64h64c35.34 0 64-28.65 64-64v-32H0v32zm192 104c13.25 0 24 10.74 24 24 0 13.25-10.75 24-24 24s-24-10.75-24-24c0-13.26 10.75-24 24-24z"],
	"bug": [512, 512, [], "f188", "M511.988 288.9c-.478 17.43-15.217 31.1-32.653 31.1H424v16c0 21.864-4.882 42.584-13.6 61.145l60.228 60.228c12.496 12.497 12.496 32.758 0 45.255-12.498 12.497-32.759 12.496-45.256 0l-54.736-54.736C345.886 467.965 314.351 480 280 480V236c0-6.627-5.373-12-12-12h-24c-6.627 0-12 5.373-12 12v244c-34.351 0-65.886-12.035-90.636-32.108l-54.736 54.736c-12.498 12.497-32.759 12.496-45.256 0-12.496-12.497-12.496-32.758 0-45.255l60.228-60.228C92.882 378.584 88 357.864 88 336v-16H32.666C15.23 320 .491 306.33.013 288.9-.484 270.816 14.028 256 32 256h56v-58.745l-46.628-46.628c-12.496-12.497-12.496-32.758 0-45.255 12.498-12.497 32.758-12.497 45.256 0L141.255 160h229.489l54.627-54.627c12.498-12.497 32.758-12.497 45.256 0 12.496 12.497 12.496 32.758 0 45.255L424 197.255V256h56c17.972 0 32.484 14.816 31.988 32.9zM257 0c-61.856 0-112 50.144-112 112h224C369 50.144 318.856 0 257 0z"],
	"building": [448, 512, [], "f1ad", "M436 480h-20V24c0-13.255-10.745-24-24-24H56C42.745 0 32 10.745 32 24v456H12c-6.627 0-12 5.373-12 12v20h448v-20c0-6.627-5.373-12-12-12zM128 76c0-6.627 5.373-12 12-12h40c6.627 0 12 5.373 12 12v40c0 6.627-5.373 12-12 12h-40c-6.627 0-12-5.373-12-12V76zm0 96c0-6.627 5.373-12 12-12h40c6.627 0 12 5.373 12 12v40c0 6.627-5.373 12-12 12h-40c-6.627 0-12-5.373-12-12v-40zm52 148h-40c-6.627 0-12-5.373-12-12v-40c0-6.627 5.373-12 12-12h40c6.627 0 12 5.373 12 12v40c0 6.627-5.373 12-12 12zm76 160h-64v-84c0-6.627 5.373-12 12-12h40c6.627 0 12 5.373 12 12v84zm64-172c0 6.627-5.373 12-12 12h-40c-6.627 0-12-5.373-12-12v-40c0-6.627 5.373-12 12-12h40c6.627 0 12 5.373 12 12v40zm0-96c0 6.627-5.373 12-12 12h-40c-6.627 0-12-5.373-12-12v-40c0-6.627 5.373-12 12-12h40c6.627 0 12 5.373 12 12v40zm0-96c0 6.627-5.373 12-12 12h-40c-6.627 0-12-5.373-12-12V76c0-6.627 5.373-12 12-12h40c6.627 0 12 5.373 12 12v40z"],
	"bullhorn": [576, 512, [], "f0a1", "M576 240c0-23.63-12.95-44.04-32-55.12V32.01C544 23.26 537.02 0 512 0c-7.12 0-14.19 2.38-19.98 7.02l-85.03 68.03C364.28 109.19 310.66 128 256 128H64c-35.35 0-64 28.65-64 64v96c0 35.35 28.65 64 64 64h33.7c-1.39 10.48-2.18 21.14-2.18 32 0 39.77 9.26 77.35 25.56 110.94 5.19 10.69 16.52 17.06 28.4 17.06h74.28c26.05 0 41.69-29.84 25.9-50.56-16.4-21.52-26.15-48.36-26.15-77.44 0-11.11 1.62-21.79 4.41-32H256c54.66 0 108.28 18.81 150.98 52.95l85.03 68.03a32.023 32.023 0 0 0 19.98 7.02c24.92 0 32-22.78 32-32V295.13C563.05 284.04 576 263.63 576 240zm-96 141.42l-33.05-26.44C392.95 311.78 325.12 288 256 288v-96c69.12 0 136.95-23.78 190.95-66.98L480 98.58v282.84z"],
	"bullseye": [496, 512, [], "f140", "M248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm0 432c-101.69 0-184-82.29-184-184 0-101.69 82.29-184 184-184 101.69 0 184 82.29 184 184 0 101.69-82.29 184-184 184zm0-312c-70.69 0-128 57.31-128 128s57.31 128 128 128 128-57.31 128-128-57.31-128-128-128zm0 192c-35.29 0-64-28.71-64-64s28.71-64 64-64 64 28.71 64 64-28.71 64-64 64z"],
	"burn": [384, 512, [], "f46a", "M192 0C79.7 101.3 0 220.9 0 300.5 0 425 79 512 192 512s192-87 192-211.5c0-79.9-80.2-199.6-192-300.5zm0 448c-56.5 0-96-39-96-94.8 0-13.5 4.6-61.5 96-161.2 91.4 99.7 96 147.7 96 161.2 0 55.8-39.5 94.8-96 94.8z"],
	"bus": [512, 512, [], "f207", "M488 128h-8V80c0-44.8-99.2-80-224-80S32 35.2 32 80v48h-8c-13.25 0-24 10.74-24 24v80c0 13.25 10.75 24 24 24h8v160c0 17.67 14.33 32 32 32v32c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-32h192v32c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-32h6.4c16 0 25.6-12.8 25.6-25.6V256h8c13.25 0 24-10.75 24-24v-80c0-13.26-10.75-24-24-24zM112 400c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm16-112c-17.67 0-32-14.33-32-32V128c0-17.67 14.33-32 32-32h256c17.67 0 32 14.33 32 32v128c0 17.67-14.33 32-32 32H128zm272 112c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z"],
	"bus-alt": [512, 512, [], "f55e", "M488 128h-8V80c0-44.8-99.2-80-224-80S32 35.2 32 80v48h-8c-13.25 0-24 10.74-24 24v80c0 13.25 10.75 24 24 24h8v160c0 17.67 14.33 32 32 32v32c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-32h192v32c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-32h6.4c16 0 25.6-12.8 25.6-25.6V256h8c13.25 0 24-10.75 24-24v-80c0-13.26-10.75-24-24-24zM160 72c0-4.42 3.58-8 8-8h176c4.42 0 8 3.58 8 8v16c0 4.42-3.58 8-8 8H168c-4.42 0-8-3.58-8-8V72zm-48 328c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm128-112H128c-17.67 0-32-14.33-32-32v-96c0-17.67 14.33-32 32-32h112v160zm32 0V128h112c17.67 0 32 14.33 32 32v96c0 17.67-14.33 32-32 32H272zm128 112c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z"],
	"business-time": [640, 512, [], "f64a", "M496 224c-79.59 0-144 64.41-144 144s64.41 144 144 144 144-64.41 144-144-64.41-144-144-144zm64 150.29c0 5.34-4.37 9.71-9.71 9.71h-60.57c-5.34 0-9.71-4.37-9.71-9.71v-76.57c0-5.34 4.37-9.71 9.71-9.71h12.57c5.34 0 9.71 4.37 9.71 9.71V352h38.29c5.34 0 9.71 4.37 9.71 9.71v12.58zM496 192c5.4 0 10.72.33 16 .81V144c0-25.6-22.4-48-48-48h-80V48c0-25.6-22.4-48-48-48H176c-25.6 0-48 22.4-48 48v48H48c-25.6 0-48 22.4-48 48v80h395.12c28.6-20.09 63.35-32 100.88-32zM320 96H192V64h128v32zm6.82 224H208c-8.84 0-16-7.16-16-16v-48H0v144c0 25.6 22.4 48 48 48h291.43C327.1 423.96 320 396.82 320 368c0-16.66 2.48-32.72 6.82-48z"],
	"calculator": [448, 512, [], "f1ec", "M400 0H48C22.4 0 0 22.4 0 48v416c0 25.6 22.4 48 48 48h352c25.6 0 48-22.4 48-48V48c0-25.6-22.4-48-48-48zM128 435.2c0 6.4-6.4 12.8-12.8 12.8H76.8c-6.4 0-12.8-6.4-12.8-12.8v-38.4c0-6.4 6.4-12.8 12.8-12.8h38.4c6.4 0 12.8 6.4 12.8 12.8v38.4zm0-128c0 6.4-6.4 12.8-12.8 12.8H76.8c-6.4 0-12.8-6.4-12.8-12.8v-38.4c0-6.4 6.4-12.8 12.8-12.8h38.4c6.4 0 12.8 6.4 12.8 12.8v38.4zm128 128c0 6.4-6.4 12.8-12.8 12.8h-38.4c-6.4 0-12.8-6.4-12.8-12.8v-38.4c0-6.4 6.4-12.8 12.8-12.8h38.4c6.4 0 12.8 6.4 12.8 12.8v38.4zm0-128c0 6.4-6.4 12.8-12.8 12.8h-38.4c-6.4 0-12.8-6.4-12.8-12.8v-38.4c0-6.4 6.4-12.8 12.8-12.8h38.4c6.4 0 12.8 6.4 12.8 12.8v38.4zm128 128c0 6.4-6.4 12.8-12.8 12.8h-38.4c-6.4 0-12.8-6.4-12.8-12.8V268.8c0-6.4 6.4-12.8 12.8-12.8h38.4c6.4 0 12.8 6.4 12.8 12.8v166.4zm0-256c0 6.4-6.4 12.8-12.8 12.8H76.8c-6.4 0-12.8-6.4-12.8-12.8V76.8C64 70.4 70.4 64 76.8 64h294.4c6.4 0 12.8 6.4 12.8 12.8v102.4z"],
	"calendar": [448, 512, [], "f133", "M12 192h424c6.6 0 12 5.4 12 12v260c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V204c0-6.6 5.4-12 12-12zm436-44v-36c0-26.5-21.5-48-48-48h-48V12c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v52H160V12c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v52H48C21.5 64 0 85.5 0 112v36c0 6.6 5.4 12 12 12h424c6.6 0 12-5.4 12-12z"],
	"calendar-alt": [448, 512, [], "f073", "M0 464c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V192H0v272zm320-196c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-40zm0 128c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-40zM192 268c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-40zm0 128c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-40zM64 268c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12H76c-6.6 0-12-5.4-12-12v-40zm0 128c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12H76c-6.6 0-12-5.4-12-12v-40zM400 64h-48V16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v48H160V16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v48H48C21.5 64 0 85.5 0 112v48h448v-48c0-26.5-21.5-48-48-48z"],
	"calendar-check": [448, 512, [], "f274", "M436 160H12c-6.627 0-12-5.373-12-12v-36c0-26.51 21.49-48 48-48h48V12c0-6.627 5.373-12 12-12h40c6.627 0 12 5.373 12 12v52h128V12c0-6.627 5.373-12 12-12h40c6.627 0 12 5.373 12 12v52h48c26.51 0 48 21.49 48 48v36c0 6.627-5.373 12-12 12zM12 192h424c6.627 0 12 5.373 12 12v260c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48V204c0-6.627 5.373-12 12-12zm333.296 95.947l-28.169-28.398c-4.667-4.705-12.265-4.736-16.97-.068L194.12 364.665l-45.98-46.352c-4.667-4.705-12.266-4.736-16.971-.068l-28.397 28.17c-4.705 4.667-4.736 12.265-.068 16.97l82.601 83.269c4.667 4.705 12.265 4.736 16.97.068l142.953-141.805c4.705-4.667 4.736-12.265.068-16.97z"],
	"calendar-day": [448, 512, [], "f783", "M0 464c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V192H0v272zm64-192c0-8.8 7.2-16 16-16h96c8.8 0 16 7.2 16 16v96c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16v-96zM400 64h-48V16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v48H160V16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v48H48C21.5 64 0 85.5 0 112v48h448v-48c0-26.5-21.5-48-48-48z"],
	"calendar-minus": [448, 512, [], "f272", "M436 160H12c-6.6 0-12-5.4-12-12v-36c0-26.5 21.5-48 48-48h48V12c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v52h128V12c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v52h48c26.5 0 48 21.5 48 48v36c0 6.6-5.4 12-12 12zM12 192h424c6.6 0 12 5.4 12 12v260c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V204c0-6.6 5.4-12 12-12zm304 192c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12H132c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h184z"],
	"calendar-plus": [448, 512, [], "f271", "M436 160H12c-6.6 0-12-5.4-12-12v-36c0-26.5 21.5-48 48-48h48V12c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v52h128V12c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v52h48c26.5 0 48 21.5 48 48v36c0 6.6-5.4 12-12 12zM12 192h424c6.6 0 12 5.4 12 12v260c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V204c0-6.6 5.4-12 12-12zm316 140c0-6.6-5.4-12-12-12h-60v-60c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v60h-60c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h60v60c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12v-60h60c6.6 0 12-5.4 12-12v-40z"],
	"calendar-times": [448, 512, [], "f273", "M436 160H12c-6.6 0-12-5.4-12-12v-36c0-26.5 21.5-48 48-48h48V12c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v52h128V12c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v52h48c26.5 0 48 21.5 48 48v36c0 6.6-5.4 12-12 12zM12 192h424c6.6 0 12 5.4 12 12v260c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V204c0-6.6 5.4-12 12-12zm257.3 160l48.1-48.1c4.7-4.7 4.7-12.3 0-17l-28.3-28.3c-4.7-4.7-12.3-4.7-17 0L224 306.7l-48.1-48.1c-4.7-4.7-12.3-4.7-17 0l-28.3 28.3c-4.7 4.7-4.7 12.3 0 17l48.1 48.1-48.1 48.1c-4.7 4.7-4.7 12.3 0 17l28.3 28.3c4.7 4.7 12.3 4.7 17 0l48.1-48.1 48.1 48.1c4.7 4.7 12.3 4.7 17 0l28.3-28.3c4.7-4.7 4.7-12.3 0-17L269.3 352z"],
	"calendar-week": [448, 512, [], "f784", "M0 464c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V192H0v272zm64-192c0-8.8 7.2-16 16-16h288c8.8 0 16 7.2 16 16v64c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16v-64zM400 64h-48V16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v48H160V16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v48H48C21.5 64 0 85.5 0 112v48h448v-48c0-26.5-21.5-48-48-48z"],
	"camera": [512, 512, [], "f030", "M512 144v288c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V144c0-26.5 21.5-48 48-48h88l12.3-32.9c7-18.7 24.9-31.1 44.9-31.1h125.5c20 0 37.9 12.4 44.9 31.1L376 96h88c26.5 0 48 21.5 48 48zM376 288c0-66.2-53.8-120-120-120s-120 53.8-120 120 53.8 120 120 120 120-53.8 120-120zm-32 0c0 48.5-39.5 88-88 88s-88-39.5-88-88 39.5-88 88-88 88 39.5 88 88z"],
	"camera-retro": [512, 512, [], "f083", "M48 32C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h416c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48H48zm0 32h106c3.3 0 6 2.7 6 6v20c0 3.3-2.7 6-6 6H38c-3.3 0-6-2.7-6-6V80c0-8.8 7.2-16 16-16zm426 96H38c-3.3 0-6-2.7-6-6v-36c0-3.3 2.7-6 6-6h138l30.2-45.3c1.1-1.7 3-2.7 5-2.7H464c8.8 0 16 7.2 16 16v74c0 3.3-2.7 6-6 6zM256 424c-66.2 0-120-53.8-120-120s53.8-120 120-120 120 53.8 120 120-53.8 120-120 120zm0-208c-48.5 0-88 39.5-88 88s39.5 88 88 88 88-39.5 88-88-39.5-88-88-88zm-48 104c-8.8 0-16-7.2-16-16 0-35.3 28.7-64 64-64 8.8 0 16 7.2 16 16s-7.2 16-16 16c-17.6 0-32 14.4-32 32 0 8.8-7.2 16-16 16z"],
	"campground": [640, 512, [], "f6bb", "M624 448h-24.68L359.54 117.75l53.41-73.55c5.19-7.15 3.61-17.16-3.54-22.35l-25.9-18.79c-7.15-5.19-17.15-3.61-22.35 3.55L320 63.3 278.83 6.6c-5.19-7.15-15.2-8.74-22.35-3.55l-25.88 18.8c-7.15 5.19-8.74 15.2-3.54 22.35l53.41 73.55L40.68 448H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h608c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zM320 288l116.36 160H203.64L320 288z"],
	"candy-cane": [512, 512, [], "f786", "M497.5 92C469.6 33.1 411.8 0 352.4 0c-27.9 0-56.2 7.3-81.8 22.6L243.1 39c-15.2 9.1-20.1 28.7-11 43.9l32.8 54.9c6 10 16.6 15.6 27.5 15.6 5.6 0 11.2-1.5 16.4-4.5l27.5-16.4c5.1-3.1 10.8-4.5 16.4-4.5 10.9 0 21.5 5.6 27.5 15.6 9.1 15.1 4.1 34.8-11 43.9L15.6 397.6c-15.2 9.1-20.1 28.7-11 43.9l32.8 54.9c6 10 16.6 15.6 27.5 15.6 5.6 0 11.2-1.5 16.4-4.5L428.6 301c71.7-42.9 104.6-133.5 68.9-209zm-177.7 13l-2.5 1.5L296.8 45c9.7-4.7 19.8-8.1 30.3-10.2l20.6 61.8c-9.8.8-19.4 3.3-27.9 8.4zM145.9 431.8l-60.5-38.5 30.8-18.3 60.5 38.5-30.8 18.3zm107.5-63.9l-60.5-38.5 30.8-18.3 60.5 38.5-30.8 18.3zM364.3 302l-60.5-38.5 30.8-18.3 60.5 38.5-30.8 18.3zm20.4-197.3l46-46c8.4 6.5 16 14.1 22.6 22.6L407.6 127c-5.7-9.3-13.7-16.9-22.9-22.3zm82.1 107.8l-59.5-19.8c3.2-5.3 5.8-10.9 7.4-17.1 1.1-4.5 1.7-9.1 1.8-13.6l60.4 20.1c-2.1 10.4-5.5 20.6-10.1 30.4z"],
	"cannabis": [512, 512, [], "f55f", "M503.47 360.25c-1.56-.82-32.39-16.89-76.78-25.81 64.25-75.12 84.05-161.67 84.93-165.64 1.18-5.33-.44-10.9-4.3-14.77-3.03-3.04-7.12-4.7-11.32-4.7-1.14 0-2.29.12-3.44.38-3.88.85-86.54 19.59-160.58 79.76.01-1.46.01-2.93.01-4.4 0-118.79-59.98-213.72-62.53-217.7A15.973 15.973 0 0 0 256 0c-5.45 0-10.53 2.78-13.47 7.37-2.55 3.98-62.53 98.91-62.53 217.7 0 1.47.01 2.94.01 4.4-74.03-60.16-156.69-78.9-160.58-79.76-1.14-.25-2.29-.38-3.44-.38-4.2 0-8.29 1.66-11.32 4.7A15.986 15.986 0 0 0 .38 168.8c.88 3.97 20.68 90.52 84.93 165.64-44.39 8.92-75.21 24.99-76.78 25.81a16.003 16.003 0 0 0-.02 28.29c2.45 1.29 60.76 31.72 133.49 31.72 6.14 0 11.96-.1 17.5-.31-11.37 22.23-16.52 38.31-16.81 39.22-1.8 5.68-.29 11.89 3.91 16.11a16.019 16.019 0 0 0 16.1 3.99c1.83-.57 37.72-11.99 77.3-39.29V504c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-64.01c39.58 27.3 75.47 38.71 77.3 39.29a16.019 16.019 0 0 0 16.1-3.99c4.2-4.22 5.71-10.43 3.91-16.11-.29-.91-5.45-16.99-16.81-39.22 5.54.21 11.37.31 17.5.31 72.72 0 131.04-30.43 133.49-31.72 5.24-2.78 8.52-8.22 8.51-14.15-.01-5.94-3.29-11.39-8.53-14.15z"],
	"capsules": [576, 512, [], "f46b", "M555.3 300.1L424.2 112.8C401.9 81 366.4 64 330.4 64c-22.6 0-45.5 6.7-65.5 20.7-19.7 13.8-33.7 32.8-41.5 53.8C220.5 79.2 172 32 112 32 50.1 32 0 82.1 0 144v224c0 61.9 50.1 112 112 112s112-50.1 112-112V218.9c3.3 8.6 7.3 17.1 12.8 25L368 431.2c22.2 31.8 57.7 48.8 93.8 48.8 22.7 0 45.5-6.7 65.5-20.7 51.7-36.2 64.2-107.5 28-159.2zM160 256H64V144c0-26.5 21.5-48 48-48s48 21.5 48 48v112zm194.8 44.9l-65.6-93.7c-7.7-11-10.7-24.4-8.3-37.6 2.3-13.2 9.7-24.8 20.7-32.5 8.5-6 18.5-9.1 28.8-9.1 16.5 0 31.9 8 41.3 21.5l65.6 93.7-82.5 57.7z"],
	"car": [512, 512, [], "f1b9", "M499.99 176h-59.87l-16.64-41.6C406.38 91.63 365.57 64 319.5 64h-127c-46.06 0-86.88 27.63-103.99 70.4L71.87 176H12.01C4.2 176-1.53 183.34.37 190.91l6 24C7.7 220.25 12.5 224 18.01 224h20.07C24.65 235.73 16 252.78 16 272v48c0 16.12 6.16 30.67 16 41.93V416c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-32h256v32c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-54.07c9.84-11.25 16-25.8 16-41.93v-48c0-19.22-8.65-36.27-22.07-48H494c5.51 0 10.31-3.75 11.64-9.09l6-24c1.89-7.57-3.84-14.91-11.65-14.91zm-352.06-17.83c7.29-18.22 24.94-30.17 44.57-30.17h127c19.63 0 37.28 11.95 44.57 30.17L384 208H128l19.93-49.83zM96 319.8c-19.2 0-32-12.76-32-31.9S76.8 256 96 256s48 28.71 48 47.85-28.8 15.95-48 15.95zm320 0c-19.2 0-48 3.19-48-15.95S396.8 256 416 256s32 12.76 32 31.9-12.8 31.9-32 31.9z"],
	"car-alt": [480, 512, [], "f5de", "M438.66 212.33l-11.24-28.1-19.93-49.83C390.38 91.63 349.57 64 303.5 64h-127c-46.06 0-86.88 27.63-103.99 70.4l-19.93 49.83-11.24 28.1C17.22 221.5 0 244.66 0 272v48c0 16.12 6.16 30.67 16 41.93V416c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-32h256v32c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-54.07c9.84-11.25 16-25.8 16-41.93v-48c0-27.34-17.22-50.5-41.34-59.67zm-306.73-54.16c7.29-18.22 24.94-30.17 44.57-30.17h127c19.63 0 37.28 11.95 44.57 30.17L368 208H112l19.93-49.83zM80 319.8c-19.2 0-32-12.76-32-31.9S60.8 256 80 256s48 28.71 48 47.85-28.8 15.95-48 15.95zm320 0c-19.2 0-48 3.19-48-15.95S380.8 256 400 256s32 12.76 32 31.9-12.8 31.9-32 31.9z"],
	"car-battery": [512, 512, [], "f5df", "M480 128h-32V80c0-8.84-7.16-16-16-16h-96c-8.84 0-16 7.16-16 16v48H192V80c0-8.84-7.16-16-16-16H80c-8.84 0-16 7.16-16 16v48H32c-17.67 0-32 14.33-32 32v256c0 17.67 14.33 32 32 32h448c17.67 0 32-14.33 32-32V160c0-17.67-14.33-32-32-32zM192 264c0 4.42-3.58 8-8 8H72c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h112c4.42 0 8 3.58 8 8v16zm256 0c0 4.42-3.58 8-8 8h-40v40c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8v-40h-40c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h40v-40c0-4.42 3.58-8 8-8h16c4.42 0 8 3.58 8 8v40h40c4.42 0 8 3.58 8 8v16z"],
	"car-crash": [640, 512, [], "f5e1", "M143.25 220.81l-12.42 46.37c-3.01 11.25-3.63 22.89-2.41 34.39l-35.2 28.98c-6.57 5.41-16.31-.43-14.62-8.77l15.44-76.68c1.06-5.26-2.66-10.28-8-10.79l-77.86-7.55c-8.47-.82-11.23-11.83-4.14-16.54l65.15-43.3c4.46-2.97 5.38-9.15 1.98-13.29L21.46 93.22c-5.41-6.57.43-16.3 8.78-14.62l76.68 15.44c5.26 1.06 10.28-2.66 10.8-8l7.55-77.86c.82-8.48 11.83-11.23 16.55-4.14l43.3 65.14c2.97 4.46 9.15 5.38 13.29 1.98l60.4-49.71c6.57-5.41 16.3.43 14.62 8.77L262.1 86.38c-2.71 3.05-5.43 6.09-7.91 9.4l-32.15 42.97-10.71 14.32c-32.73 8.76-59.18 34.53-68.08 67.74zm494.57 132.51l-12.42 46.36c-3.13 11.68-9.38 21.61-17.55 29.36a66.876 66.876 0 0 1-8.76 7l-13.99 52.23c-1.14 4.27-3.1 8.1-5.65 11.38-7.67 9.84-20.74 14.68-33.54 11.25L515 502.62c-17.07-4.57-27.2-22.12-22.63-39.19l8.28-30.91-247.28-66.26-8.28 30.91c-4.57 17.07-22.12 27.2-39.19 22.63l-30.91-8.28c-12.8-3.43-21.7-14.16-23.42-26.51-.57-4.12-.35-8.42.79-12.68l13.99-52.23a66.62 66.62 0 0 1-4.09-10.45c-3.2-10.79-3.65-22.52-.52-34.2l12.42-46.37c5.31-19.8 19.36-34.83 36.89-42.21a64.336 64.336 0 0 1 18.49-4.72l18.13-24.23 32.15-42.97c3.45-4.61 7.19-8.9 11.2-12.84 8-7.89 17.03-14.44 26.74-19.51 4.86-2.54 9.89-4.71 15.05-6.49 10.33-3.58 21.19-5.63 32.24-6.04 11.05-.41 22.31.82 33.43 3.8l122.68 32.87c11.12 2.98 21.48 7.54 30.85 13.43a111.11 111.11 0 0 1 34.69 34.5c8.82 13.88 14.64 29.84 16.68 46.99l6.36 53.29 3.59 30.05a64.49 64.49 0 0 1 22.74 29.93c4.39 11.88 5.29 25.19 1.75 38.39zM255.58 234.34c-18.55-4.97-34.21 4.04-39.17 22.53-4.96 18.49 4.11 34.12 22.65 39.09 18.55 4.97 45.54 15.51 50.49-2.98 4.96-18.49-15.43-53.67-33.97-58.64zm290.61 28.17l-6.36-53.29c-.58-4.87-1.89-9.53-3.82-13.86-5.8-12.99-17.2-23.01-31.42-26.82l-122.68-32.87a48.008 48.008 0 0 0-50.86 17.61l-32.15 42.97 172 46.08 75.29 20.18zm18.49 54.65c-18.55-4.97-53.8 15.31-58.75 33.79-4.95 18.49 23.69 22.86 42.24 27.83 18.55 4.97 34.21-4.04 39.17-22.53 4.95-18.48-4.11-34.12-22.66-39.09z"],
	"car-side": [640, 512, [], "f5e4", "M544 192h-16L419.22 56.02A64.025 64.025 0 0 0 369.24 32H155.33c-26.17 0-49.7 15.93-59.42 40.23L48 194.26C20.44 201.4 0 226.21 0 256v112c0 8.84 7.16 16 16 16h48c0 53.02 42.98 96 96 96s96-42.98 96-96h128c0 53.02 42.98 96 96 96s96-42.98 96-96h48c8.84 0 16-7.16 16-16v-80c0-53.02-42.98-96-96-96zM160 432c-26.47 0-48-21.53-48-48s21.53-48 48-48 48 21.53 48 48-21.53 48-48 48zm72-240H116.93l38.4-96H232v96zm48 0V96h89.24l76.8 96H280zm200 240c-26.47 0-48-21.53-48-48s21.53-48 48-48 48 21.53 48 48-21.53 48-48 48z"],
	"caravan": [640, 512, [], "f8ff", "M416,208a16,16,0,1,0,16,16A16,16,0,0,0,416,208ZM624,320H576V160A160,160,0,0,0,416,0H64A64,64,0,0,0,0,64V320a64,64,0,0,0,64,64H96a96,96,0,0,0,192,0H624a16,16,0,0,0,16-16V336A16,16,0,0,0,624,320ZM192,432a48,48,0,1,1,48-48A48.05,48.05,0,0,1,192,432Zm64-240a32,32,0,0,1-32,32H96a32,32,0,0,1-32-32V128A32,32,0,0,1,96,96H224a32,32,0,0,1,32,32ZM448,320H320V128a32,32,0,0,1,32-32h64a32,32,0,0,1,32,32Z"],
	"caret-down": [320, 512, [], "f0d7", "M31.3 192h257.3c17.8 0 26.7 21.5 14.1 34.1L174.1 354.8c-7.8 7.8-20.5 7.8-28.3 0L17.2 226.1C4.6 213.5 13.5 192 31.3 192z"],
	"caret-left": [192, 512, [], "f0d9", "M192 127.338v257.324c0 17.818-21.543 26.741-34.142 14.142L29.196 270.142c-7.81-7.81-7.81-20.474 0-28.284l128.662-128.662c12.599-12.6 34.142-3.676 34.142 14.142z"],
	"caret-right": [192, 512, [], "f0da", "M0 384.662V127.338c0-17.818 21.543-26.741 34.142-14.142l128.662 128.662c7.81 7.81 7.81 20.474 0 28.284L34.142 398.804C21.543 411.404 0 402.48 0 384.662z"],
	"caret-square-down": [448, 512, [], "f150", "M448 80v352c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48zM92.5 220.5l123 123c4.7 4.7 12.3 4.7 17 0l123-123c7.6-7.6 2.2-20.5-8.5-20.5H101c-10.7 0-16.1 12.9-8.5 20.5z"],
	"caret-square-left": [448, 512, [], "f191", "M400 480H48c-26.51 0-48-21.49-48-48V80c0-26.51 21.49-48 48-48h352c26.51 0 48 21.49 48 48v352c0 26.51-21.49 48-48 48zM259.515 124.485l-123.03 123.03c-4.686 4.686-4.686 12.284 0 16.971l123.029 123.029c7.56 7.56 20.485 2.206 20.485-8.485V132.971c.001-10.691-12.925-16.045-20.484-8.486z"],
	"caret-square-right": [448, 512, [], "f152", "M48 32h352c26.51 0 48 21.49 48 48v352c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48V80c0-26.51 21.49-48 48-48zm140.485 355.515l123.029-123.029c4.686-4.686 4.686-12.284 0-16.971l-123.029-123.03c-7.56-7.56-20.485-2.206-20.485 8.485v246.059c0 10.691 12.926 16.045 20.485 8.486z"],
	"caret-square-up": [448, 512, [], "f151", "M0 432V80c0-26.51 21.49-48 48-48h352c26.51 0 48 21.49 48 48v352c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48zm355.515-140.485l-123.03-123.03c-4.686-4.686-12.284-4.686-16.971 0L92.485 291.515c-7.56 7.56-2.206 20.485 8.485 20.485h246.059c10.691 0 16.045-12.926 8.486-20.485z"],
	"caret-up": [320, 512, [], "f0d8", "M288.662 352H31.338c-17.818 0-26.741-21.543-14.142-34.142l128.662-128.662c7.81-7.81 20.474-7.81 28.284 0l128.662 128.662c12.6 12.599 3.676 34.142-14.142 34.142z"],
	"carrot": [512, 512, [], "f787", "M298.2 156.6c-52.7-25.7-114.5-10.5-150.2 32.8l55.2 55.2c6.3 6.3 6.3 16.4 0 22.6-3.1 3.1-7.2 4.7-11.3 4.7s-8.2-1.6-11.3-4.7L130.4 217 2.3 479.7c-2.9 6-3.1 13.3 0 19.7 5.4 11.1 18.9 15.7 30 10.3l133.6-65.2-49.2-49.2c-6.3-6.2-6.3-16.4 0-22.6 6.3-6.2 16.4-6.2 22.6 0l57 57 102-49.8c24-11.7 44.5-31.3 57.1-57.1 30.1-61.7 4.5-136.1-57.2-166.2zm92.1-34.9C409.8 81 399.7 32.9 360 0c-50.3 41.7-52.5 107.5-7.9 151.9l8 8c44.4 44.6 110.3 42.4 151.9-7.9-32.9-39.7-81-49.8-121.7-30.3z"],
	"cart-arrow-down": [576, 512, [], "f218", "M504.717 320H211.572l6.545 32h268.418c15.401 0 26.816 14.301 23.403 29.319l-5.517 24.276C523.112 414.668 536 433.828 536 456c0 31.202-25.519 56.444-56.824 55.994-29.823-.429-54.35-24.631-55.155-54.447-.44-16.287 6.085-31.049 16.803-41.548H231.176C241.553 426.165 248 440.326 248 456c0 31.813-26.528 57.431-58.67 55.938-28.54-1.325-51.751-24.385-53.251-52.917-1.158-22.034 10.436-41.455 28.051-51.586L93.883 64H24C10.745 64 0 53.255 0 40V24C0 10.745 10.745 0 24 0h102.529c11.401 0 21.228 8.021 23.513 19.19L159.208 64H551.99c15.401 0 26.816 14.301 23.403 29.319l-47.273 208C525.637 312.246 515.923 320 504.717 320zM403.029 192H360v-60c0-6.627-5.373-12-12-12h-24c-6.627 0-12 5.373-12 12v60h-43.029c-10.691 0-16.045 12.926-8.485 20.485l67.029 67.029c4.686 4.686 12.284 4.686 16.971 0l67.029-67.029c7.559-7.559 2.205-20.485-8.486-20.485z"],
	"cart-plus": [576, 512, [], "f217", "M504.717 320H211.572l6.545 32h268.418c15.401 0 26.816 14.301 23.403 29.319l-5.517 24.276C523.112 414.668 536 433.828 536 456c0 31.202-25.519 56.444-56.824 55.994-29.823-.429-54.35-24.631-55.155-54.447-.44-16.287 6.085-31.049 16.803-41.548H231.176C241.553 426.165 248 440.326 248 456c0 31.813-26.528 57.431-58.67 55.938-28.54-1.325-51.751-24.385-53.251-52.917-1.158-22.034 10.436-41.455 28.051-51.586L93.883 64H24C10.745 64 0 53.255 0 40V24C0 10.745 10.745 0 24 0h102.529c11.401 0 21.228 8.021 23.513 19.19L159.208 64H551.99c15.401 0 26.816 14.301 23.403 29.319l-47.273 208C525.637 312.246 515.923 320 504.717 320zM408 168h-48v-40c0-8.837-7.163-16-16-16h-16c-8.837 0-16 7.163-16 16v40h-48c-8.837 0-16 7.163-16 16v16c0 8.837 7.163 16 16 16h48v40c0 8.837 7.163 16 16 16h16c8.837 0 16-7.163 16-16v-40h48c8.837 0 16-7.163 16-16v-16c0-8.837-7.163-16-16-16z"],
	"cash-register": [512, 512, [], "f788", "M511.1 378.8l-26.7-160c-2.6-15.4-15.9-26.7-31.6-26.7H208v-64h96c8.8 0 16-7.2 16-16V16c0-8.8-7.2-16-16-16H48c-8.8 0-16 7.2-16 16v96c0 8.8 7.2 16 16 16h96v64H59.1c-15.6 0-29 11.3-31.6 26.7L.8 378.7c-.6 3.5-.9 7-.9 10.5V480c0 17.7 14.3 32 32 32h448c17.7 0 32-14.3 32-32v-90.7c.1-3.5-.2-7-.8-10.5zM280 248c0-8.8 7.2-16 16-16h16c8.8 0 16 7.2 16 16v16c0 8.8-7.2 16-16 16h-16c-8.8 0-16-7.2-16-16v-16zm-32 64h16c8.8 0 16 7.2 16 16v16c0 8.8-7.2 16-16 16h-16c-8.8 0-16-7.2-16-16v-16c0-8.8 7.2-16 16-16zm-32-80c8.8 0 16 7.2 16 16v16c0 8.8-7.2 16-16 16h-16c-8.8 0-16-7.2-16-16v-16c0-8.8 7.2-16 16-16h16zM80 80V48h192v32H80zm40 200h-16c-8.8 0-16-7.2-16-16v-16c0-8.8 7.2-16 16-16h16c8.8 0 16 7.2 16 16v16c0 8.8-7.2 16-16 16zm16 64v-16c0-8.8 7.2-16 16-16h16c8.8 0 16 7.2 16 16v16c0 8.8-7.2 16-16 16h-16c-8.8 0-16-7.2-16-16zm216 112c0 4.4-3.6 8-8 8H168c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h176c4.4 0 8 3.6 8 8v16zm24-112c0 8.8-7.2 16-16 16h-16c-8.8 0-16-7.2-16-16v-16c0-8.8 7.2-16 16-16h16c8.8 0 16 7.2 16 16v16zm48-80c0 8.8-7.2 16-16 16h-16c-8.8 0-16-7.2-16-16v-16c0-8.8 7.2-16 16-16h16c8.8 0 16 7.2 16 16v16z"],
	"cat": [512, 512, [], "f6be", "M290.59 192c-20.18 0-106.82 1.98-162.59 85.95V192c0-52.94-43.06-96-96-96-17.67 0-32 14.33-32 32s14.33 32 32 32c17.64 0 32 14.36 32 32v256c0 35.3 28.7 64 64 64h176c8.84 0 16-7.16 16-16v-16c0-17.67-14.33-32-32-32h-32l128-96v144c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16V289.86c-10.29 2.67-20.89 4.54-32 4.54-61.81 0-113.52-44.05-125.41-102.4zM448 96h-64l-64-64v134.4c0 53.02 42.98 96 96 96s96-42.98 96-96V32l-64 64zm-72 80c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16zm80 0c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16z"],
	"certificate": [512, 512, [], "f0a3", "M458.622 255.92l45.985-45.005c13.708-12.977 7.316-36.039-10.664-40.339l-62.65-15.99 17.661-62.015c4.991-17.838-11.829-34.663-29.661-29.671l-61.994 17.667-15.984-62.671C337.085.197 313.765-6.276 300.99 7.228L256 53.57 211.011 7.229c-12.63-13.351-36.047-7.234-40.325 10.668l-15.984 62.671-61.995-17.667C74.87 57.907 58.056 74.738 63.046 92.572l17.661 62.015-62.65 15.99C.069 174.878-6.31 197.944 7.392 210.915l45.985 45.005-45.985 45.004c-13.708 12.977-7.316 36.039 10.664 40.339l62.65 15.99-17.661 62.015c-4.991 17.838 11.829 34.663 29.661 29.671l61.994-17.667 15.984 62.671c4.439 18.575 27.696 24.018 40.325 10.668L256 458.61l44.989 46.001c12.5 13.488 35.987 7.486 40.325-10.668l15.984-62.671 61.994 17.667c17.836 4.994 34.651-11.837 29.661-29.671l-17.661-62.015 62.65-15.99c17.987-4.302 24.366-27.367 10.664-40.339l-45.984-45.004z"],
	"chair": [448, 512, [], "f6c0", "M112 128c0-29.5 16.2-55 40-68.9V256h48V48h48v208h48V59.1c23.8 13.9 40 39.4 40 68.9v128h48V128C384 57.3 326.7 0 256 0h-64C121.3 0 64 57.3 64 128v128h48zm334.3 213.9l-10.7-32c-4.4-13.1-16.6-21.9-30.4-21.9H42.7c-13.8 0-26 8.8-30.4 21.9l-10.7 32C-5.2 362.6 10.2 384 32 384v112c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V384h256v112c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V384c21.8 0 37.2-21.4 30.3-42.1z"],
	"chalkboard": [640, 512, [], "f51b", "M96 64h448v352h64V40c0-22.06-17.94-40-40-40H72C49.94 0 32 17.94 32 40v376h64V64zm528 384H480v-64H288v64H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h608c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16z"],
	"chalkboard-teacher": [640, 512, [], "f51c", "M208 352c-2.39 0-4.78.35-7.06 1.09C187.98 357.3 174.35 360 160 360c-14.35 0-27.98-2.7-40.95-6.91-2.28-.74-4.66-1.09-7.05-1.09C49.94 352-.33 402.48 0 464.62.14 490.88 21.73 512 48 512h224c26.27 0 47.86-21.12 48-47.38.33-62.14-49.94-112.62-112-112.62zm-48-32c53.02 0 96-42.98 96-96s-42.98-96-96-96-96 42.98-96 96 42.98 96 96 96zM592 0H208c-26.47 0-48 22.25-48 49.59V96c23.42 0 45.1 6.78 64 17.8V64h352v288h-64v-64H384v64h-76.24c19.1 16.69 33.12 38.73 39.69 64H592c26.47 0 48-22.25 48-49.59V49.59C640 22.25 618.47 0 592 0z"],
	"charging-station": [576, 512, [], "f5e7", "M336 448H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h320c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zm208-320V80c0-8.84-7.16-16-16-16s-16 7.16-16 16v48h-32V80c0-8.84-7.16-16-16-16s-16 7.16-16 16v48h-16c-8.84 0-16 7.16-16 16v32c0 35.76 23.62 65.69 56 75.93v118.49c0 13.95-9.5 26.92-23.26 29.19C431.22 402.5 416 388.99 416 372v-28c0-48.6-39.4-88-88-88h-8V64c0-35.35-28.65-64-64-64H96C60.65 0 32 28.65 32 64v352h288V304h8c22.09 0 40 17.91 40 40v24.61c0 39.67 28.92 75.16 68.41 79.01C481.71 452.05 520 416.41 520 372V251.93c32.38-10.24 56-40.17 56-75.93v-32c0-8.84-7.16-16-16-16h-16zm-283.91 47.76l-93.7 139c-2.2 3.33-6.21 5.24-10.39 5.24-7.67 0-13.47-6.28-11.67-12.92L167.35 224H108c-7.25 0-12.85-5.59-11.89-11.89l16-107C112.9 99.9 117.98 96 124 96h68c7.88 0 13.62 6.54 11.6 13.21L192 160h57.7c9.24 0 15.01 8.78 10.39 15.76z"],
	"chart-area": [512, 512, [], "f1fe", "M500 384c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12H12c-6.6 0-12-5.4-12-12V76c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v308h436zM372.7 159.5L288 216l-85.3-113.7c-5.1-6.8-15.5-6.3-19.9 1L96 248v104h384l-89.9-187.8c-3.2-6.5-11.4-8.7-17.4-4.7z"],
	"chart-bar": [512, 512, [], "f080", "M332.8 320h38.4c6.4 0 12.8-6.4 12.8-12.8V172.8c0-6.4-6.4-12.8-12.8-12.8h-38.4c-6.4 0-12.8 6.4-12.8 12.8v134.4c0 6.4 6.4 12.8 12.8 12.8zm96 0h38.4c6.4 0 12.8-6.4 12.8-12.8V76.8c0-6.4-6.4-12.8-12.8-12.8h-38.4c-6.4 0-12.8 6.4-12.8 12.8v230.4c0 6.4 6.4 12.8 12.8 12.8zm-288 0h38.4c6.4 0 12.8-6.4 12.8-12.8v-70.4c0-6.4-6.4-12.8-12.8-12.8h-38.4c-6.4 0-12.8 6.4-12.8 12.8v70.4c0 6.4 6.4 12.8 12.8 12.8zm96 0h38.4c6.4 0 12.8-6.4 12.8-12.8V108.8c0-6.4-6.4-12.8-12.8-12.8h-38.4c-6.4 0-12.8 6.4-12.8 12.8v198.4c0 6.4 6.4 12.8 12.8 12.8zM496 384H64V80c0-8.84-7.16-16-16-16H16C7.16 64 0 71.16 0 80v336c0 17.67 14.33 32 32 32h464c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16z"],
	"chart-line": [512, 512, [], "f201", "M496 384H64V80c0-8.84-7.16-16-16-16H16C7.16 64 0 71.16 0 80v336c0 17.67 14.33 32 32 32h464c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zM464 96H345.94c-21.38 0-32.09 25.85-16.97 40.97l32.4 32.4L288 242.75l-73.37-73.37c-12.5-12.5-32.76-12.5-45.25 0l-68.69 68.69c-6.25 6.25-6.25 16.38 0 22.63l22.62 22.62c6.25 6.25 16.38 6.25 22.63 0L192 237.25l73.37 73.37c12.5 12.5 32.76 12.5 45.25 0l96-96 32.4 32.4c15.12 15.12 40.97 4.41 40.97-16.97V112c.01-8.84-7.15-16-15.99-16z"],
	"chart-pie": [544, 512, [], "f200", "M527.79 288H290.5l158.03 158.03c6.04 6.04 15.98 6.53 22.19.68 38.7-36.46 65.32-85.61 73.13-140.86 1.34-9.46-6.51-17.85-16.06-17.85zm-15.83-64.8C503.72 103.74 408.26 8.28 288.8.04 279.68-.59 272 7.1 272 16.24V240h223.77c9.14 0 16.82-7.68 16.19-16.8zM224 288V50.71c0-9.55-8.39-17.4-17.84-16.06C86.99 51.49-4.1 155.6.14 280.37 4.5 408.51 114.83 513.59 243.03 511.98c50.4-.63 96.97-16.87 135.26-44.03 7.9-5.6 8.42-17.23 1.57-24.08L224 288z"],
	"check": [512, 512, [], "f00c", "M173.898 439.404l-166.4-166.4c-9.997-9.997-9.997-26.206 0-36.204l36.203-36.204c9.997-9.998 26.207-9.998 36.204 0L192 312.69 432.095 72.596c9.997-9.997 26.207-9.997 36.204 0l36.203 36.204c9.997 9.997 9.997 26.206 0 36.204l-294.4 294.401c-9.998 9.997-26.207 9.997-36.204-.001z"],
	"check-circle": [512, 512, [], "f058", "M504 256c0 136.967-111.033 248-248 248S8 392.967 8 256 119.033 8 256 8s248 111.033 248 248zM227.314 387.314l184-184c6.248-6.248 6.248-16.379 0-22.627l-22.627-22.627c-6.248-6.249-16.379-6.249-22.628 0L216 308.118l-70.059-70.059c-6.248-6.248-16.379-6.248-22.628 0l-22.627 22.627c-6.248 6.248-6.248 16.379 0 22.627l104 104c6.249 6.249 16.379 6.249 22.628.001z"],
	"check-double": [512, 512, [], "f560", "M505 174.8l-39.6-39.6c-9.4-9.4-24.6-9.4-33.9 0L192 374.7 80.6 263.2c-9.4-9.4-24.6-9.4-33.9 0L7 302.9c-9.4 9.4-9.4 24.6 0 34L175 505c9.4 9.4 24.6 9.4 33.9 0l296-296.2c9.4-9.5 9.4-24.7.1-34zm-324.3 106c6.2 6.3 16.4 6.3 22.6 0l208-208.2c6.2-6.3 6.2-16.4 0-22.6L366.1 4.7c-6.2-6.3-16.4-6.3-22.6 0L192 156.2l-55.4-55.5c-6.2-6.3-16.4-6.3-22.6 0L68.7 146c-6.2 6.3-6.2 16.4 0 22.6l112 112.2z"],
	"check-square": [448, 512, [], "f14a", "M400 480H48c-26.51 0-48-21.49-48-48V80c0-26.51 21.49-48 48-48h352c26.51 0 48 21.49 48 48v352c0 26.51-21.49 48-48 48zm-204.686-98.059l184-184c6.248-6.248 6.248-16.379 0-22.627l-22.627-22.627c-6.248-6.248-16.379-6.249-22.628 0L184 302.745l-70.059-70.059c-6.248-6.248-16.379-6.248-22.628 0l-22.627 22.627c-6.248 6.248-6.248 16.379 0 22.627l104 104c6.249 6.25 16.379 6.25 22.628.001z"],
	"cheese": [512, 512, [], "f7ef", "M0 288v160a32 32 0 0 0 32 32h448a32 32 0 0 0 32-32V288zM299.83 32a32 32 0 0 0-21.13 7L0 256h512c0-119.89-94-217.8-212.17-224z"],
	"chess": [512, 512, [], "f439", "M74 208H64a16 16 0 0 0-16 16v16a16 16 0 0 0 16 16h15.94A535.78 535.78 0 0 1 64 384h128a535.78 535.78 0 0 1-15.94-128H192a16 16 0 0 0 16-16v-16a16 16 0 0 0-16-16h-10l33.89-90.38a16 16 0 0 0-15-21.62H144V64h24a8 8 0 0 0 8-8V40a8 8 0 0 0-8-8h-24V8a8 8 0 0 0-8-8h-16a8 8 0 0 0-8 8v24H88a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h24v32H55.09a16 16 0 0 0-15 21.62zm173.16 251.58L224 448v-16a16 16 0 0 0-16-16H48a16 16 0 0 0-16 16v16L8.85 459.58A16 16 0 0 0 0 473.89V496a16 16 0 0 0 16 16h224a16 16 0 0 0 16-16v-22.11a16 16 0 0 0-8.84-14.31zm92.77-157.78l-3.29 82.2h126.72l-3.29-82.21 24.6-20.79A32 32 0 0 0 496 256.54V198a6 6 0 0 0-6-6h-26.38a6 6 0 0 0-6 6v26h-24.71v-26a6 6 0 0 0-6-6H373.1a6 6 0 0 0-6 6v26h-24.71v-26a6 6 0 0 0-6-6H310a6 6 0 0 0-6 6v58.6a32 32 0 0 0 11.36 24.4zM384 304a16 16 0 0 1 32 0v32h-32zm119.16 155.58L480 448v-16a16 16 0 0 0-16-16H336a16 16 0 0 0-16 16v16l-23.15 11.58a16 16 0 0 0-8.85 14.31V496a16 16 0 0 0 16 16h192a16 16 0 0 0 16-16v-22.11a16 16 0 0 0-8.84-14.31z"],
	"chess-bishop": [320, 512, [], "f43a", "M8 287.88c0 51.64 22.14 73.83 56 84.6V416h192v-43.52c33.86-10.77 56-33 56-84.6 0-30.61-10.73-67.1-26.69-102.56L185 285.65a8 8 0 0 1-11.31 0l-11.31-11.31a8 8 0 0 1 0-11.31L270.27 155.1c-20.8-37.91-46.47-72.1-70.87-92.59C213.4 59.09 224 47.05 224 32a32 32 0 0 0-32-32h-64a32 32 0 0 0-32 32c0 15 10.6 27.09 24.6 30.51C67.81 106.8 8 214.5 8 287.88zM304 448H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h288a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16z"],
	"chess-board": [512, 512, [], "f43c", "M255.9.2h-64v64h64zM0 64.17v64h64v-64zM128 .2H64v64h64zm64 255.9v64h64v-64zM0 192.12v64h64v-64zM383.85.2h-64v64h64zm128 0h-64v64h64zM128 256.1H64v64h64zM511.8 448v-64h-64v64zm0-128v-64h-64v64zM383.85 512h64v-64h-64zm128-319.88v-64h-64v64zM128 512h64v-64h-64zM0 512h64v-64H0zm255.9 0h64v-64h-64zM0 320.07v64h64v-64zm319.88-191.92v-64h-64v64zm-64 128h64v-64h-64zm-64 128v64h64v-64zm128-64h64v-64h-64zm0-127.95h64v-64h-64zm0 191.93v64h64v-64zM64 384.05v64h64v-64zm128-255.9v-64h-64v64zm191.92 255.9h64v-64h-64zm-128-191.93v-64h-64v64zm128-127.95v64h64v-64zm-128 255.9v64h64v-64zm-64-127.95H128v64h64zm191.92 64h64v-64h-64zM128 128.15H64v64h64zm0 191.92v64h64v-64z"],
	"chess-king": [448, 512, [], "f43f", "M400 448H48a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h352a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm16-288H256v-48h40a8 8 0 0 0 8-8V56a8 8 0 0 0-8-8h-40V8a8 8 0 0 0-8-8h-48a8 8 0 0 0-8 8v40h-40a8 8 0 0 0-8 8v48a8 8 0 0 0 8 8h40v48H32a32 32 0 0 0-30.52 41.54L74.56 416h298.88l73.08-214.46A32 32 0 0 0 416 160z"],
	"chess-knight": [384, 512, [], "f441", "M19 272.47l40.63 18.06a32 32 0 0 0 24.88.47l12.78-5.12a32 32 0 0 0 18.76-20.5l9.22-30.65a24 24 0 0 1 12.55-15.65L159.94 208v50.33a48 48 0 0 1-26.53 42.94l-57.22 28.65A80 80 0 0 0 32 401.48V416h319.86V224c0-106-85.92-192-191.92-192H12A12 12 0 0 0 0 44a16.9 16.9 0 0 0 1.79 7.58L16 80l-9 9a24 24 0 0 0-7 17v137.21a32 32 0 0 0 19 29.26zM52 128a20 20 0 1 1-20 20 20 20 0 0 1 20-20zm316 320H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h352a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16z"],
	"chess-pawn": [320, 512, [], "f443", "M105.1 224H80a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h16v5.49c0 44-4.14 86.6-24 122.51h176c-19.89-35.91-24-78.51-24-122.51V288h16a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-25.1c29.39-18.38 49.1-50.78 49.1-88a104 104 0 0 0-208 0c0 37.22 19.71 69.62 49.1 88zM304 448H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h288a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16z"],
	"chess-queen": [512, 512, [], "f445", "M256 112a56 56 0 1 0-56-56 56 56 0 0 0 56 56zm176 336H80a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h352a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm72.87-263.84l-28.51-15.92c-7.44-5-16.91-2.46-22.29 4.68a47.59 47.59 0 0 1-47.23 18.23C383.7 186.86 368 164.93 368 141.4a13.4 13.4 0 0 0-13.4-13.4h-38.77c-6 0-11.61 4-12.86 9.91a48 48 0 0 1-93.94 0c-1.25-5.92-6.82-9.91-12.86-9.91H157.4a13.4 13.4 0 0 0-13.4 13.4c0 25.69-19 48.75-44.67 50.49a47.5 47.5 0 0 1-41.54-19.15c-5.28-7.09-14.73-9.45-22.09-4.54l-28.57 16a16 16 0 0 0-5.44 20.47L104.24 416h303.52l102.55-211.37a16 16 0 0 0-5.44-20.47z"],
	"chess-rook": [384, 512, [], "f447", "M368 32h-56a16 16 0 0 0-16 16v48h-48V48a16 16 0 0 0-16-16h-80a16 16 0 0 0-16 16v48H88.1V48a16 16 0 0 0-16-16H16A16 16 0 0 0 0 48v176l64 32c0 48.33-1.54 95-13.21 160h282.42C321.54 351 320 303.72 320 256l64-32V48a16 16 0 0 0-16-16zM224 320h-64v-64a32 32 0 0 1 64 0zm144 128H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h352a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16z"],
	"chevron-circle-down": [512, 512, [], "f13a", "M504 256c0 137-111 248-248 248S8 393 8 256 119 8 256 8s248 111 248 248zM273 369.9l135.5-135.5c9.4-9.4 9.4-24.6 0-33.9l-17-17c-9.4-9.4-24.6-9.4-33.9 0L256 285.1 154.4 183.5c-9.4-9.4-24.6-9.4-33.9 0l-17 17c-9.4 9.4-9.4 24.6 0 33.9L239 369.9c9.4 9.4 24.6 9.4 34 0z"],
	"chevron-circle-left": [512, 512, [], "f137", "M256 504C119 504 8 393 8 256S119 8 256 8s248 111 248 248-111 248-248 248zM142.1 273l135.5 135.5c9.4 9.4 24.6 9.4 33.9 0l17-17c9.4-9.4 9.4-24.6 0-33.9L226.9 256l101.6-101.6c9.4-9.4 9.4-24.6 0-33.9l-17-17c-9.4-9.4-24.6-9.4-33.9 0L142.1 239c-9.4 9.4-9.4 24.6 0 34z"],
	"chevron-circle-right": [512, 512, [], "f138", "M256 8c137 0 248 111 248 248S393 504 256 504 8 393 8 256 119 8 256 8zm113.9 231L234.4 103.5c-9.4-9.4-24.6-9.4-33.9 0l-17 17c-9.4 9.4-9.4 24.6 0 33.9L285.1 256 183.5 357.6c-9.4 9.4-9.4 24.6 0 33.9l17 17c9.4 9.4 24.6 9.4 33.9 0L369.9 273c9.4-9.4 9.4-24.6 0-34z"],
	"chevron-circle-up": [512, 512, [], "f139", "M8 256C8 119 119 8 256 8s248 111 248 248-111 248-248 248S8 393 8 256zm231-113.9L103.5 277.6c-9.4 9.4-9.4 24.6 0 33.9l17 17c9.4 9.4 24.6 9.4 33.9 0L256 226.9l101.6 101.6c9.4 9.4 24.6 9.4 33.9 0l17-17c9.4-9.4 9.4-24.6 0-33.9L273 142.1c-9.4-9.4-24.6-9.4-34 0z"],
	"chevron-down": [448, 512, [], "f078", "M207.029 381.476L12.686 187.132c-9.373-9.373-9.373-24.569 0-33.941l22.667-22.667c9.357-9.357 24.522-9.375 33.901-.04L224 284.505l154.745-154.021c9.379-9.335 24.544-9.317 33.901.04l22.667 22.667c9.373 9.373 9.373 24.569 0 33.941L240.971 381.476c-9.373 9.372-24.569 9.372-33.942 0z"],
	"chevron-left": [320, 512, [], "f053", "M34.52 239.03L228.87 44.69c9.37-9.37 24.57-9.37 33.94 0l22.67 22.67c9.36 9.36 9.37 24.52.04 33.9L131.49 256l154.02 154.75c9.34 9.38 9.32 24.54-.04 33.9l-22.67 22.67c-9.37 9.37-24.57 9.37-33.94 0L34.52 272.97c-9.37-9.37-9.37-24.57 0-33.94z"],
	"chevron-right": [320, 512, [], "f054", "M285.476 272.971L91.132 467.314c-9.373 9.373-24.569 9.373-33.941 0l-22.667-22.667c-9.357-9.357-9.375-24.522-.04-33.901L188.505 256 34.484 101.255c-9.335-9.379-9.317-24.544.04-33.901l22.667-22.667c9.373-9.373 24.569-9.373 33.941 0L285.475 239.03c9.373 9.372 9.373 24.568.001 33.941z"],
	"chevron-up": [448, 512, [], "f077", "M240.971 130.524l194.343 194.343c9.373 9.373 9.373 24.569 0 33.941l-22.667 22.667c-9.357 9.357-24.522 9.375-33.901.04L224 227.495 69.255 381.516c-9.379 9.335-24.544 9.317-33.901-.04l-22.667-22.667c-9.373-9.373-9.373-24.569 0-33.941L207.03 130.525c9.372-9.373 24.568-9.373 33.941-.001z"],
	"child": [384, 512, [], "f1ae", "M120 72c0-39.765 32.235-72 72-72s72 32.235 72 72c0 39.764-32.235 72-72 72s-72-32.236-72-72zm254.627 1.373c-12.496-12.497-32.758-12.497-45.254 0L242.745 160H141.254L54.627 73.373c-12.496-12.497-32.758-12.497-45.254 0-12.497 12.497-12.497 32.758 0 45.255L104 213.254V480c0 17.673 14.327 32 32 32h16c17.673 0 32-14.327 32-32V368h16v112c0 17.673 14.327 32 32 32h16c17.673 0 32-14.327 32-32V213.254l94.627-94.627c12.497-12.497 12.497-32.757 0-45.254z"],
	"church": [640, 512, [], "f51d", "M464.46 246.68L352 179.2V128h48c8.84 0 16-7.16 16-16V80c0-8.84-7.16-16-16-16h-48V16c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16v48h-48c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h48v51.2l-112.46 67.48A31.997 31.997 0 0 0 160 274.12V512h96v-96c0-35.35 28.65-64 64-64s64 28.65 64 64v96h96V274.12c0-11.24-5.9-21.66-15.54-27.44zM0 395.96V496c0 8.84 7.16 16 16 16h112V320L19.39 366.54A32.024 32.024 0 0 0 0 395.96zm620.61-29.42L512 320v192h112c8.84 0 16-7.16 16-16V395.96c0-12.8-7.63-24.37-19.39-29.42z"],
	"circle": [512, 512, [], "f111", "M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8z"],
	"circle-notch": [512, 512, [], "f1ce", "M288 39.056v16.659c0 10.804 7.281 20.159 17.686 23.066C383.204 100.434 440 171.518 440 256c0 101.689-82.295 184-184 184-101.689 0-184-82.295-184-184 0-84.47 56.786-155.564 134.312-177.219C216.719 75.874 224 66.517 224 55.712V39.064c0-15.709-14.834-27.153-30.046-23.234C86.603 43.482 7.394 141.206 8.003 257.332c.72 137.052 111.477 246.956 248.531 246.667C393.255 503.711 504 392.788 504 256c0-115.633-79.14-212.779-186.211-240.236C302.678 11.889 288 23.456 288 39.056z"],
	"city": [640, 512, [], "f64f", "M616 192H480V24c0-13.26-10.74-24-24-24H312c-13.26 0-24 10.74-24 24v72h-64V16c0-8.84-7.16-16-16-16h-16c-8.84 0-16 7.16-16 16v80h-64V16c0-8.84-7.16-16-16-16H80c-8.84 0-16 7.16-16 16v80H24c-13.26 0-24 10.74-24 24v360c0 17.67 14.33 32 32 32h576c17.67 0 32-14.33 32-32V216c0-13.26-10.75-24-24-24zM128 404c0 6.63-5.37 12-12 12H76c-6.63 0-12-5.37-12-12v-40c0-6.63 5.37-12 12-12h40c6.63 0 12 5.37 12 12v40zm0-96c0 6.63-5.37 12-12 12H76c-6.63 0-12-5.37-12-12v-40c0-6.63 5.37-12 12-12h40c6.63 0 12 5.37 12 12v40zm0-96c0 6.63-5.37 12-12 12H76c-6.63 0-12-5.37-12-12v-40c0-6.63 5.37-12 12-12h40c6.63 0 12 5.37 12 12v40zm128 192c0 6.63-5.37 12-12 12h-40c-6.63 0-12-5.37-12-12v-40c0-6.63 5.37-12 12-12h40c6.63 0 12 5.37 12 12v40zm0-96c0 6.63-5.37 12-12 12h-40c-6.63 0-12-5.37-12-12v-40c0-6.63 5.37-12 12-12h40c6.63 0 12 5.37 12 12v40zm0-96c0 6.63-5.37 12-12 12h-40c-6.63 0-12-5.37-12-12v-40c0-6.63 5.37-12 12-12h40c6.63 0 12 5.37 12 12v40zm160 96c0 6.63-5.37 12-12 12h-40c-6.63 0-12-5.37-12-12v-40c0-6.63 5.37-12 12-12h40c6.63 0 12 5.37 12 12v40zm0-96c0 6.63-5.37 12-12 12h-40c-6.63 0-12-5.37-12-12v-40c0-6.63 5.37-12 12-12h40c6.63 0 12 5.37 12 12v40zm0-96c0 6.63-5.37 12-12 12h-40c-6.63 0-12-5.37-12-12V76c0-6.63 5.37-12 12-12h40c6.63 0 12 5.37 12 12v40zm160 288c0 6.63-5.37 12-12 12h-40c-6.63 0-12-5.37-12-12v-40c0-6.63 5.37-12 12-12h40c6.63 0 12 5.37 12 12v40zm0-96c0 6.63-5.37 12-12 12h-40c-6.63 0-12-5.37-12-12v-40c0-6.63 5.37-12 12-12h40c6.63 0 12 5.37 12 12v40z"],
	"clinic-medical": [576, 512, [], "f7f2", "M288 115L69.47 307.71c-1.62 1.46-3.69 2.14-5.47 3.35V496a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16V311.1c-1.7-1.16-3.72-1.82-5.26-3.2zm96 261a8 8 0 0 1-8 8h-56v56a8 8 0 0 1-8 8h-48a8 8 0 0 1-8-8v-56h-56a8 8 0 0 1-8-8v-48a8 8 0 0 1 8-8h56v-56a8 8 0 0 1 8-8h48a8 8 0 0 1 8 8v56h56a8 8 0 0 1 8 8zm186.69-139.72l-255.94-226a39.85 39.85 0 0 0-53.45 0l-256 226a16 16 0 0 0-1.21 22.6L25.5 282.7a16 16 0 0 0 22.6 1.21L277.42 81.63a16 16 0 0 1 21.17 0L527.91 283.9a16 16 0 0 0 22.6-1.21l21.4-23.82a16 16 0 0 0-1.22-22.59z"],
	"clipboard": [384, 512, [], "f328", "M384 112v352c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48V112c0-26.51 21.49-48 48-48h80c0-35.29 28.71-64 64-64s64 28.71 64 64h80c26.51 0 48 21.49 48 48zM192 40c-13.255 0-24 10.745-24 24s10.745 24 24 24 24-10.745 24-24-10.745-24-24-24m96 114v-20a6 6 0 0 0-6-6H102a6 6 0 0 0-6 6v20a6 6 0 0 0 6 6h180a6 6 0 0 0 6-6z"],
	"clipboard-check": [384, 512, [], "f46c", "M336 64h-80c0-35.3-28.7-64-64-64s-64 28.7-64 64H48C21.5 64 0 85.5 0 112v352c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V112c0-26.5-21.5-48-48-48zM192 40c13.3 0 24 10.7 24 24s-10.7 24-24 24-24-10.7-24-24 10.7-24 24-24zm121.2 231.8l-143 141.8c-4.7 4.7-12.3 4.6-17-.1l-82.6-83.3c-4.7-4.7-4.6-12.3.1-17L99.1 285c4.7-4.7 12.3-4.6 17 .1l46 46.4 106-105.2c4.7-4.7 12.3-4.6 17 .1l28.2 28.4c4.7 4.8 4.6 12.3-.1 17z"],
	"clipboard-list": [384, 512, [], "f46d", "M336 64h-80c0-35.3-28.7-64-64-64s-64 28.7-64 64H48C21.5 64 0 85.5 0 112v352c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V112c0-26.5-21.5-48-48-48zM96 424c-13.3 0-24-10.7-24-24s10.7-24 24-24 24 10.7 24 24-10.7 24-24 24zm0-96c-13.3 0-24-10.7-24-24s10.7-24 24-24 24 10.7 24 24-10.7 24-24 24zm0-96c-13.3 0-24-10.7-24-24s10.7-24 24-24 24 10.7 24 24-10.7 24-24 24zm96-192c13.3 0 24 10.7 24 24s-10.7 24-24 24-24-10.7-24-24 10.7-24 24-24zm128 368c0 4.4-3.6 8-8 8H168c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h144c4.4 0 8 3.6 8 8v16zm0-96c0 4.4-3.6 8-8 8H168c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h144c4.4 0 8 3.6 8 8v16zm0-96c0 4.4-3.6 8-8 8H168c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h144c4.4 0 8 3.6 8 8v16z"],
	"clock": [512, 512, [], "f017", "M256,8C119,8,8,119,8,256S119,504,256,504,504,393,504,256,393,8,256,8Zm92.49,313h0l-20,25a16,16,0,0,1-22.49,2.5h0l-67-49.72a40,40,0,0,1-15-31.23V112a16,16,0,0,1,16-16h32a16,16,0,0,1,16,16V256l58,42.5A16,16,0,0,1,348.49,321Z"],
	"clone": [512, 512, [], "f24d", "M464 0c26.51 0 48 21.49 48 48v288c0 26.51-21.49 48-48 48H176c-26.51 0-48-21.49-48-48V48c0-26.51 21.49-48 48-48h288M176 416c-44.112 0-80-35.888-80-80V128H48c-26.51 0-48 21.49-48 48v288c0 26.51 21.49 48 48 48h288c26.51 0 48-21.49 48-48v-48H176z"],
	"closed-captioning": [512, 512, [], "f20a", "M464 64H48C21.5 64 0 85.5 0 112v288c0 26.5 21.5 48 48 48h416c26.5 0 48-21.5 48-48V112c0-26.5-21.5-48-48-48zM218.1 287.7c2.8-2.5 7.1-2.1 9.2.9l19.5 27.7c1.7 2.4 1.5 5.6-.5 7.7-53.6 56.8-172.8 32.1-172.8-67.9 0-97.3 121.7-119.5 172.5-70.1 2.1 2 2.5 3.2 1 5.7l-17.5 30.5c-1.9 3.1-6.2 4-9.1 1.7-40.8-32-94.6-14.9-94.6 31.2.1 48 51.1 70.5 92.3 32.6zm190.4 0c2.8-2.5 7.1-2.1 9.2.9l19.5 27.7c1.7 2.4 1.5 5.6-.5 7.7-53.5 56.9-172.7 32.1-172.7-67.9 0-97.3 121.7-119.5 172.5-70.1 2.1 2 2.5 3.2 1 5.7L420 222.2c-1.9 3.1-6.2 4-9.1 1.7-40.8-32-94.6-14.9-94.6 31.2 0 48 51 70.5 92.2 32.6z"],
	"cloud": [640, 512, [], "f0c2", "M537.6 226.6c4.1-10.7 6.4-22.4 6.4-34.6 0-53-43-96-96-96-19.7 0-38.1 6-53.3 16.2C367 64.2 315.3 32 256 32c-88.4 0-160 71.6-160 160 0 2.7.1 5.4.2 8.1C40.2 219.8 0 273.2 0 336c0 79.5 64.5 144 144 144h368c70.7 0 128-57.3 128-128 0-61.9-44-113.6-102.4-125.4z"],
	"cloud-download-alt": [640, 512, [], "f381", "M537.6 226.6c4.1-10.7 6.4-22.4 6.4-34.6 0-53-43-96-96-96-19.7 0-38.1 6-53.3 16.2C367 64.2 315.3 32 256 32c-88.4 0-160 71.6-160 160 0 2.7.1 5.4.2 8.1C40.2 219.8 0 273.2 0 336c0 79.5 64.5 144 144 144h368c70.7 0 128-57.3 128-128 0-61.9-44-113.6-102.4-125.4zm-132.9 88.7L299.3 420.7c-6.2 6.2-16.4 6.2-22.6 0L171.3 315.3c-10.1-10.1-2.9-27.3 11.3-27.3H248V176c0-8.8 7.2-16 16-16h48c8.8 0 16 7.2 16 16v112h65.4c14.2 0 21.4 17.2 11.3 27.3z"],
	"cloud-meatball": [512, 512, [], "f73b", "M48 352c-26.5 0-48 21.5-48 48s21.5 48 48 48 48-21.5 48-48-21.5-48-48-48zm416 0c-26.5 0-48 21.5-48 48s21.5 48 48 48 48-21.5 48-48-21.5-48-48-48zm-119 11.1c4.6-14.5 1.6-30.8-9.8-42.3-11.5-11.5-27.8-14.4-42.3-9.9-7-13.5-20.7-23-36.9-23s-29.9 9.5-36.9 23c-14.5-4.6-30.8-1.6-42.3 9.9-11.5 11.5-14.4 27.8-9.9 42.3-13.5 7-23 20.7-23 36.9s9.5 29.9 23 36.9c-4.6 14.5-1.6 30.8 9.9 42.3 8.2 8.2 18.9 12.3 29.7 12.3 4.3 0 8.5-1.1 12.6-2.5 7 13.5 20.7 23 36.9 23s29.9-9.5 36.9-23c4.1 1.3 8.3 2.5 12.6 2.5 10.8 0 21.5-4.1 29.7-12.3 11.5-11.5 14.4-27.8 9.8-42.3 13.5-7 23-20.7 23-36.9s-9.5-29.9-23-36.9zM512 224c0-53-43-96-96-96-.6 0-1.1.2-1.6.2 1.1-5.2 1.6-10.6 1.6-16.2 0-44.2-35.8-80-80-80-24.6 0-46.3 11.3-61 28.8C256.4 24.8 219.3 0 176 0 114.1 0 64 50.1 64 112c0 7.3.8 14.3 2.1 21.2C27.8 145.8 0 181.5 0 224c0 53 43 96 96 96h43.4c3.6-8 8.4-15.4 14.8-21.8 13.5-13.5 31.5-21.1 50.8-21.3 13.5-13.2 31.7-20.9 51-20.9s37.5 7.7 51 20.9c19.3.2 37.3 7.8 50.8 21.3 6.4 6.4 11.3 13.8 14.8 21.8H416c53 0 96-43 96-96z"],
	"cloud-moon": [576, 512, [], "f6c3", "M342.8 352.7c5.7-9.6 9.2-20.7 9.2-32.7 0-35.3-28.7-64-64-64-17.2 0-32.8 6.9-44.3 17.9-16.3-29.6-47.5-49.9-83.7-49.9-53 0-96 43-96 96 0 2 .5 3.8.6 5.7C27.1 338.8 0 374.1 0 416c0 53 43 96 96 96h240c44.2 0 80-35.8 80-80 0-41.9-32.3-75.8-73.2-79.3zm222.5-54.3c-93.1 17.7-178.5-53.7-178.5-147.7 0-54.2 29-104 76.1-130.8 7.3-4.1 5.4-15.1-2.8-16.7C448.4 1.1 436.7 0 425 0 319.1 0 233.1 85.9 233.1 192c0 8.5.7 16.8 1.8 25 5.9 4.3 11.6 8.9 16.7 14.2 11.4-4.7 23.7-7.2 36.4-7.2 52.9 0 96 43.1 96 96 0 3.6-.2 7.2-.6 10.7 23.6 10.8 42.4 29.5 53.5 52.6 54.4-3.4 103.7-29.3 137.1-70.4 5.3-6.5-.5-16.1-8.7-14.5z"],
	"cloud-moon-rain": [576, 512, [], "f73c", "M350.5 225.5c-6.9-37.2-39.3-65.5-78.5-65.5-12.3 0-23.9 3-34.3 8-17.4-24.1-45.6-40-77.7-40-53 0-96 43-96 96 0 .5.2 1.1.2 1.6C27.6 232.9 0 265.2 0 304c0 44.2 35.8 80 80 80h256c44.2 0 80-35.8 80-80 0-39.2-28.2-71.7-65.5-78.5zm217.4-1.7c-70.4 13.3-135-40.3-135-110.8 0-40.6 21.9-78 57.5-98.1 5.5-3.1 4.1-11.4-2.1-12.5C479.6.8 470.7 0 461.8 0c-77.9 0-141.1 61.2-144.4 137.9 26.7 11.9 48.2 33.8 58.9 61.7 37.1 14.3 64 47.4 70.2 86.8 5.1.5 10 1.5 15.2 1.5 44.7 0 85.6-20.2 112.6-53.3 4.2-4.8-.2-12-6.4-10.8zM364.5 418.1c-7.6-4.3-17.4-1.8-21.8 6l-36.6 64c-4.4 7.7-1.7 17.4 6 21.8 2.5 1.4 5.2 2.1 7.9 2.1 5.5 0 10.9-2.9 13.9-8.1l36.6-64c4.3-7.7 1.7-17.4-6-21.8zm-96 0c-7.6-4.3-17.4-1.8-21.8 6l-36.6 64c-4.4 7.7-1.7 17.4 6 21.8 2.5 1.4 5.2 2.1 7.9 2.1 5.5 0 10.9-2.9 13.9-8.1l36.6-64c4.3-7.7 1.7-17.4-6-21.8zm-96 0c-7.6-4.3-17.4-1.8-21.8 6l-36.6 64c-4.4 7.7-1.7 17.4 6 21.8 2.5 1.4 5.2 2.1 7.9 2.1 5.5 0 10.9-2.9 13.9-8.1l36.6-64c4.3-7.7 1.7-17.4-6-21.8zm-96 0c-7.6-4.3-17.4-1.8-21.8 6l-36.6 64c-4.4 7.7-1.7 17.4 6 21.8 2.5 1.4 5.2 2.1 7.9 2.1 5.5 0 10.9-2.9 13.9-8.1l36.6-64c4.3-7.7 1.7-17.4-6-21.8z"],
	"cloud-rain": [512, 512, [], "f73d", "M416 128c-.6 0-1.1.2-1.6.2 1.1-5.2 1.6-10.6 1.6-16.2 0-44.2-35.8-80-80-80-24.6 0-46.3 11.3-61 28.8C256.4 24.8 219.3 0 176 0 114.1 0 64 50.1 64 112c0 7.3.8 14.3 2.1 21.2C27.8 145.8 0 181.5 0 224c0 53 43 96 96 96h320c53 0 96-43 96-96s-43-96-96-96zM88 374.2c-12.8 44.4-40 56.4-40 87.7 0 27.7 21.5 50.1 48 50.1s48-22.4 48-50.1c0-31.4-27.2-43.1-40-87.7-2.2-8.1-13.5-8.5-16 0zm160 0c-12.8 44.4-40 56.4-40 87.7 0 27.7 21.5 50.1 48 50.1s48-22.4 48-50.1c0-31.4-27.2-43.1-40-87.7-2.2-8.1-13.5-8.5-16 0zm160 0c-12.8 44.4-40 56.4-40 87.7 0 27.7 21.5 50.1 48 50.1s48-22.4 48-50.1c0-31.4-27.2-43.1-40-87.7-2.2-8.1-13.5-8.5-16 0z"],
	"cloud-showers-heavy": [512, 512, [], "f740", "M183.9 370.1c-7.6-4.4-17.4-1.8-21.8 6l-64 112c-4.4 7.7-1.7 17.5 6 21.8 2.5 1.4 5.2 2.1 7.9 2.1 5.5 0 10.9-2.9 13.9-8.1l64-112c4.4-7.6 1.7-17.4-6-21.8zm96 0c-7.6-4.4-17.4-1.8-21.8 6l-64 112c-4.4 7.7-1.7 17.5 6 21.8 2.5 1.4 5.2 2.1 7.9 2.1 5.5 0 10.9-2.9 13.9-8.1l64-112c4.4-7.6 1.7-17.4-6-21.8zm-192 0c-7.6-4.4-17.4-1.8-21.8 6l-64 112c-4.4 7.7-1.7 17.5 6 21.8 2.5 1.4 5.2 2.1 7.9 2.1 5.5 0 10.9-2.9 13.9-8.1l64-112c4.4-7.6 1.7-17.4-6-21.8zm384 0c-7.6-4.4-17.4-1.8-21.8 6l-64 112c-4.4 7.7-1.7 17.5 6 21.8 2.5 1.4 5.2 2.1 7.9 2.1 5.5 0 10.9-2.9 13.9-8.1l64-112c4.4-7.6 1.7-17.4-6-21.8zm-96 0c-7.6-4.4-17.4-1.8-21.8 6l-64 112c-4.4 7.7-1.7 17.5 6 21.8 2.5 1.4 5.2 2.1 7.9 2.1 5.5 0 10.9-2.9 13.9-8.1l64-112c4.4-7.6 1.7-17.4-6-21.8zM416 128c-.6 0-1.1.2-1.6.2 1.1-5.2 1.6-10.6 1.6-16.2 0-44.2-35.8-80-80-80-24.6 0-46.3 11.3-61 28.8C256.4 24.8 219.3 0 176 0 114.2 0 64 50.1 64 112c0 7.3.8 14.3 2.1 21.2C27.8 145.8 0 181.5 0 224c0 53 43 96 96 96h320c53 0 96-43 96-96s-43-96-96-96z"],
	"cloud-sun": [640, 512, [], "f6c4", "M575.2 325.7c.2-1.9.8-3.7.8-5.6 0-35.3-28.7-64-64-64-12.6 0-24.2 3.8-34.1 10-17.6-38.8-56.5-66-101.9-66-61.8 0-112 50.1-112 112 0 3 .7 5.8.9 8.7-49.6 3.7-88.9 44.7-88.9 95.3 0 53 43 96 96 96h272c53 0 96-43 96-96 0-42.1-27.2-77.4-64.8-90.4zm-430.4-22.6c-43.7-43.7-43.7-114.7 0-158.3 43.7-43.7 114.7-43.7 158.4 0 9.7 9.7 16.9 20.9 22.3 32.7 9.8-3.7 20.1-6 30.7-7.5L386 81.1c4-11.9-7.3-23.1-19.2-19.2L279 91.2 237.5 8.4C232-2.8 216-2.8 210.4 8.4L169 91.2 81.1 61.9C69.3 58 58 69.3 61.9 81.1l29.3 87.8-82.8 41.5c-11.2 5.6-11.2 21.5 0 27.1l82.8 41.4-29.3 87.8c-4 11.9 7.3 23.1 19.2 19.2l76.1-25.3c6.1-12.4 14-23.7 23.6-33.5-13.1-5.4-25.4-13.4-36-24zm-4.8-79.2c0 40.8 29.3 74.8 67.9 82.3 8-4.7 16.3-8.8 25.2-11.7 5.4-44.3 31-82.5 67.4-105C287.3 160.4 258 140 224 140c-46.3 0-84 37.6-84 83.9z"],
	"cloud-sun-rain": [576, 512, [], "f743", "M510.5 225.5c-6.9-37.2-39.3-65.5-78.5-65.5-12.3 0-23.9 3-34.3 8-17.4-24.1-45.6-40-77.7-40-53 0-96 43-96 96 0 .5.2 1.1.2 1.6C187.6 233 160 265.2 160 304c0 44.2 35.8 80 80 80h256c44.2 0 80-35.8 80-80 0-39.2-28.2-71.7-65.5-78.5zm-386.4 34.4c-37.4-37.4-37.4-98.3 0-135.8 34.6-34.6 89.1-36.8 126.7-7.4 20-12.9 43.6-20.7 69.2-20.7.7 0 1.3.2 2 .2l8.9-26.7c3.4-10.2-6.3-19.8-16.5-16.4l-75.3 25.1-35.5-71c-4.8-9.6-18.5-9.6-23.3 0l-35.5 71-75.3-25.1c-10.2-3.4-19.8 6.3-16.4 16.5l25.1 75.3-71 35.5c-9.6 4.8-9.6 18.5 0 23.3l71 35.5-25.1 75.3c-3.4 10.2 6.3 19.8 16.5 16.5l59.2-19.7c-.2-2.4-.7-4.7-.7-7.2 0-12.5 2.3-24.5 6.2-35.9-3.6-2.7-7.1-5.2-10.2-8.3zm69.8-58c4.3-24.5 15.8-46.4 31.9-64-9.8-6.2-21.4-9.9-33.8-9.9-35.3 0-64 28.7-64 64 0 18.7 8.2 35.4 21.1 47.1 11.3-15.9 26.6-28.9 44.8-37.2zm330.6 216.2c-7.6-4.3-17.4-1.8-21.8 6l-36.6 64c-4.4 7.7-1.7 17.4 6 21.8 2.5 1.4 5.2 2.1 7.9 2.1 5.5 0 10.9-2.9 13.9-8.1l36.6-64c4.3-7.7 1.7-17.4-6-21.8zm-96 0c-7.6-4.3-17.4-1.8-21.8 6l-36.6 64c-4.4 7.7-1.7 17.4 6 21.8 2.5 1.4 5.2 2.1 7.9 2.1 5.5 0 10.9-2.9 13.9-8.1l36.6-64c4.3-7.7 1.7-17.4-6-21.8zm-96 0c-7.6-4.3-17.4-1.8-21.8 6l-36.6 64c-4.4 7.7-1.7 17.4 6 21.8 2.5 1.4 5.2 2.1 7.9 2.1 5.5 0 10.9-2.9 13.9-8.1l36.6-64c4.3-7.7 1.7-17.4-6-21.8zm-96 0c-7.6-4.3-17.4-1.8-21.8 6l-36.6 64c-4.4 7.7-1.7 17.4 6 21.8 2.5 1.4 5.2 2.1 7.9 2.1 5.5 0 10.9-2.9 13.9-8.1l36.6-64c4.3-7.7 1.7-17.4-6-21.8z"],
	"cloud-upload-alt": [640, 512, [], "f382", "M537.6 226.6c4.1-10.7 6.4-22.4 6.4-34.6 0-53-43-96-96-96-19.7 0-38.1 6-53.3 16.2C367 64.2 315.3 32 256 32c-88.4 0-160 71.6-160 160 0 2.7.1 5.4.2 8.1C40.2 219.8 0 273.2 0 336c0 79.5 64.5 144 144 144h368c70.7 0 128-57.3 128-128 0-61.9-44-113.6-102.4-125.4zM393.4 288H328v112c0 8.8-7.2 16-16 16h-48c-8.8 0-16-7.2-16-16V288h-65.4c-14.3 0-21.4-17.2-11.3-27.3l105.4-105.4c6.2-6.2 16.4-6.2 22.6 0l105.4 105.4c10.1 10.1 2.9 27.3-11.3 27.3z"],
	"cocktail": [576, 512, [], "f561", "M296 464h-56V338.78l168.74-168.73c15.52-15.52 4.53-42.05-17.42-42.05H24.68c-21.95 0-32.94 26.53-17.42 42.05L176 338.78V464h-56c-22.09 0-40 17.91-40 40 0 4.42 3.58 8 8 8h240c4.42 0 8-3.58 8-8 0-22.09-17.91-40-40-40zM432 0c-62.61 0-115.35 40.2-135.18 96h52.54c16.65-28.55 47.27-48 82.64-48 52.93 0 96 43.06 96 96s-43.07 96-96 96c-14.04 0-27.29-3.2-39.32-8.64l-35.26 35.26C379.23 279.92 404.59 288 432 288c79.53 0 144-64.47 144-144S511.53 0 432 0z"],
	"code": [640, 512, [], "f121", "M278.9 511.5l-61-17.7c-6.4-1.8-10-8.5-8.2-14.9L346.2 8.7c1.8-6.4 8.5-10 14.9-8.2l61 17.7c6.4 1.8 10 8.5 8.2 14.9L293.8 503.3c-1.9 6.4-8.5 10.1-14.9 8.2zm-114-112.2l43.5-46.4c4.6-4.9 4.3-12.7-.8-17.2L117 256l90.6-79.7c5.1-4.5 5.5-12.3.8-17.2l-43.5-46.4c-4.5-4.8-12.1-5.1-17-.5L3.8 247.2c-5.1 4.7-5.1 12.8 0 17.5l144.1 135.1c4.9 4.6 12.5 4.4 17-.5zm327.2.6l144.1-135.1c5.1-4.7 5.1-12.8 0-17.5L492.1 112.1c-4.8-4.5-12.4-4.3-17 .5L431.6 159c-4.6 4.9-4.3 12.7.8 17.2L523 256l-90.6 79.7c-5.1 4.5-5.5 12.3-.8 17.2l43.5 46.4c4.5 4.9 12.1 5.1 17 .6z"],
	"code-branch": [384, 512, [], "f126", "M384 144c0-44.2-35.8-80-80-80s-80 35.8-80 80c0 36.4 24.3 67.1 57.5 76.8-.6 16.1-4.2 28.5-11 36.9-15.4 19.2-49.3 22.4-85.2 25.7-28.2 2.6-57.4 5.4-81.3 16.9v-144c32.5-10.2 56-40.5 56-76.3 0-44.2-35.8-80-80-80S0 35.8 0 80c0 35.8 23.5 66.1 56 76.3v199.3C23.5 365.9 0 396.2 0 432c0 44.2 35.8 80 80 80s80-35.8 80-80c0-34-21.2-63.1-51.2-74.6 3.1-5.2 7.8-9.8 14.9-13.4 16.2-8.2 40.4-10.4 66.1-12.8 42.2-3.9 90-8.4 118.2-43.4 14-17.4 21.1-39.8 21.6-67.9 31.6-10.8 54.4-40.7 54.4-75.9zM80 64c8.8 0 16 7.2 16 16s-7.2 16-16 16-16-7.2-16-16 7.2-16 16-16zm0 384c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zm224-320c8.8 0 16 7.2 16 16s-7.2 16-16 16-16-7.2-16-16 7.2-16 16-16z"],
	"coffee": [640, 512, [], "f0f4", "M192 384h192c53 0 96-43 96-96h32c70.6 0 128-57.4 128-128S582.6 32 512 32H120c-13.3 0-24 10.7-24 24v232c0 53 43 96 96 96zM512 96c35.3 0 64 28.7 64 64s-28.7 64-64 64h-32V96h32zm47.7 384H48.3c-47.6 0-61-64-36-64h583.3c25 0 11.8 64-35.9 64z"],
	"cog": [512, 512, [], "f013", "M487.4 315.7l-42.6-24.6c4.3-23.2 4.3-47 0-70.2l42.6-24.6c4.9-2.8 7.1-8.6 5.5-14-11.1-35.6-30-67.8-54.7-94.6-3.8-4.1-10-5.1-14.8-2.3L380.8 110c-17.9-15.4-38.5-27.3-60.8-35.1V25.8c0-5.6-3.9-10.5-9.4-11.7-36.7-8.2-74.3-7.8-109.2 0-5.5 1.2-9.4 6.1-9.4 11.7V75c-22.2 7.9-42.8 19.8-60.8 35.1L88.7 85.5c-4.9-2.8-11-1.9-14.8 2.3-24.7 26.7-43.6 58.9-54.7 94.6-1.7 5.4.6 11.2 5.5 14L67.3 221c-4.3 23.2-4.3 47 0 70.2l-42.6 24.6c-4.9 2.8-7.1 8.6-5.5 14 11.1 35.6 30 67.8 54.7 94.6 3.8 4.1 10 5.1 14.8 2.3l42.6-24.6c17.9 15.4 38.5 27.3 60.8 35.1v49.2c0 5.6 3.9 10.5 9.4 11.7 36.7 8.2 74.3 7.8 109.2 0 5.5-1.2 9.4-6.1 9.4-11.7v-49.2c22.2-7.9 42.8-19.8 60.8-35.1l42.6 24.6c4.9 2.8 11 1.9 14.8-2.3 24.7-26.7 43.6-58.9 54.7-94.6 1.5-5.5-.7-11.3-5.6-14.1zM256 336c-44.1 0-80-35.9-80-80s35.9-80 80-80 80 35.9 80 80-35.9 80-80 80z"],
	"cogs": [640, 512, [], "f085", "M512.1 191l-8.2 14.3c-3 5.3-9.4 7.5-15.1 5.4-11.8-4.4-22.6-10.7-32.1-18.6-4.6-3.8-5.8-10.5-2.8-15.7l8.2-14.3c-6.9-8-12.3-17.3-15.9-27.4h-16.5c-6 0-11.2-4.3-12.2-10.3-2-12-2.1-24.6 0-37.1 1-6 6.2-10.4 12.2-10.4h16.5c3.6-10.1 9-19.4 15.9-27.4l-8.2-14.3c-3-5.2-1.9-11.9 2.8-15.7 9.5-7.9 20.4-14.2 32.1-18.6 5.7-2.1 12.1.1 15.1 5.4l8.2 14.3c10.5-1.9 21.2-1.9 31.7 0L552 6.3c3-5.3 9.4-7.5 15.1-5.4 11.8 4.4 22.6 10.7 32.1 18.6 4.6 3.8 5.8 10.5 2.8 15.7l-8.2 14.3c6.9 8 12.3 17.3 15.9 27.4h16.5c6 0 11.2 4.3 12.2 10.3 2 12 2.1 24.6 0 37.1-1 6-6.2 10.4-12.2 10.4h-16.5c-3.6 10.1-9 19.4-15.9 27.4l8.2 14.3c3 5.2 1.9 11.9-2.8 15.7-9.5 7.9-20.4 14.2-32.1 18.6-5.7 2.1-12.1-.1-15.1-5.4l-8.2-14.3c-10.4 1.9-21.2 1.9-31.7 0zm-10.5-58.8c38.5 29.6 82.4-14.3 52.8-52.8-38.5-29.7-82.4 14.3-52.8 52.8zM386.3 286.1l33.7 16.8c10.1 5.8 14.5 18.1 10.5 29.1-8.9 24.2-26.4 46.4-42.6 65.8-7.4 8.9-20.2 11.1-30.3 5.3l-29.1-16.8c-16 13.7-34.6 24.6-54.9 31.7v33.6c0 11.6-8.3 21.6-19.7 23.6-24.6 4.2-50.4 4.4-75.9 0-11.5-2-20-11.9-20-23.6V418c-20.3-7.2-38.9-18-54.9-31.7L74 403c-10 5.8-22.9 3.6-30.3-5.3-16.2-19.4-33.3-41.6-42.2-65.7-4-10.9.4-23.2 10.5-29.1l33.3-16.8c-3.9-20.9-3.9-42.4 0-63.4L12 205.8c-10.1-5.8-14.6-18.1-10.5-29 8.9-24.2 26-46.4 42.2-65.8 7.4-8.9 20.2-11.1 30.3-5.3l29.1 16.8c16-13.7 34.6-24.6 54.9-31.7V57.1c0-11.5 8.2-21.5 19.6-23.5 24.6-4.2 50.5-4.4 76-.1 11.5 2 20 11.9 20 23.6v33.6c20.3 7.2 38.9 18 54.9 31.7l29.1-16.8c10-5.8 22.9-3.6 30.3 5.3 16.2 19.4 33.2 41.6 42.1 65.8 4 10.9.1 23.2-10 29.1l-33.7 16.8c3.9 21 3.9 42.5 0 63.5zm-117.6 21.1c59.2-77-28.7-164.9-105.7-105.7-59.2 77 28.7 164.9 105.7 105.7zm243.4 182.7l-8.2 14.3c-3 5.3-9.4 7.5-15.1 5.4-11.8-4.4-22.6-10.7-32.1-18.6-4.6-3.8-5.8-10.5-2.8-15.7l8.2-14.3c-6.9-8-12.3-17.3-15.9-27.4h-16.5c-6 0-11.2-4.3-12.2-10.3-2-12-2.1-24.6 0-37.1 1-6 6.2-10.4 12.2-10.4h16.5c3.6-10.1 9-19.4 15.9-27.4l-8.2-14.3c-3-5.2-1.9-11.9 2.8-15.7 9.5-7.9 20.4-14.2 32.1-18.6 5.7-2.1 12.1.1 15.1 5.4l8.2 14.3c10.5-1.9 21.2-1.9 31.7 0l8.2-14.3c3-5.3 9.4-7.5 15.1-5.4 11.8 4.4 22.6 10.7 32.1 18.6 4.6 3.8 5.8 10.5 2.8 15.7l-8.2 14.3c6.9 8 12.3 17.3 15.9 27.4h16.5c6 0 11.2 4.3 12.2 10.3 2 12 2.1 24.6 0 37.1-1 6-6.2 10.4-12.2 10.4h-16.5c-3.6 10.1-9 19.4-15.9 27.4l8.2 14.3c3 5.2 1.9 11.9-2.8 15.7-9.5 7.9-20.4 14.2-32.1 18.6-5.7 2.1-12.1-.1-15.1-5.4l-8.2-14.3c-10.4 1.9-21.2 1.9-31.7 0zM501.6 431c38.5 29.6 82.4-14.3 52.8-52.8-38.5-29.6-82.4 14.3-52.8 52.8z"],
	"coins": [512, 512, [], "f51e", "M0 405.3V448c0 35.3 86 64 192 64s192-28.7 192-64v-42.7C342.7 434.4 267.2 448 192 448S41.3 434.4 0 405.3zM320 128c106 0 192-28.7 192-64S426 0 320 0 128 28.7 128 64s86 64 192 64zM0 300.4V352c0 35.3 86 64 192 64s192-28.7 192-64v-51.6c-41.3 34-116.9 51.6-192 51.6S41.3 334.4 0 300.4zm416 11c57.3-11.1 96-31.7 96-55.4v-42.7c-23.2 16.4-57.3 27.6-96 34.5v63.6zM192 160C86 160 0 195.8 0 240s86 80 192 80 192-35.8 192-80-86-80-192-80zm219.3 56.3c60-10.8 100.7-32 100.7-56.3v-42.7c-35.5 25.1-96.5 38.6-160.7 41.8 29.5 14.3 51.2 33.5 60 57.2z"],
	"columns": [512, 512, [], "f0db", "M464 32H48C21.49 32 0 53.49 0 80v352c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V80c0-26.51-21.49-48-48-48zM224 416H64V160h160v256zm224 0H288V160h160v256z"],
	"comment": [512, 512, [], "f075", "M256 32C114.6 32 0 125.1 0 240c0 49.6 21.4 95 57 130.7C44.5 421.1 2.7 466 2.2 466.5c-2.2 2.3-2.8 5.7-1.5 8.7S4.8 480 8 480c66.3 0 116-31.8 140.6-51.4 32.7 12.3 69 19.4 107.4 19.4 141.4 0 256-93.1 256-208S397.4 32 256 32z"],
	"comment-alt": [512, 512, [], "f27a", "M448 0H64C28.7 0 0 28.7 0 64v288c0 35.3 28.7 64 64 64h96v84c0 9.8 11.2 15.5 19.1 9.7L304 416h144c35.3 0 64-28.7 64-64V64c0-35.3-28.7-64-64-64z"],
	"comment-dollar": [512, 512, [], "f651", "M256 32C114.62 32 0 125.12 0 240c0 49.56 21.41 95.01 57.02 130.74C44.46 421.05 2.7 465.97 2.2 466.5A7.995 7.995 0 0 0 8 480c66.26 0 115.99-31.75 140.6-51.38C181.29 440.93 217.59 448 256 448c141.38 0 256-93.12 256-208S397.38 32 256 32zm24 302.44V352c0 8.84-7.16 16-16 16h-16c-8.84 0-16-7.16-16-16v-17.73c-11.42-1.35-22.28-5.19-31.78-11.46-6.22-4.11-6.82-13.11-1.55-18.38l17.52-17.52c3.74-3.74 9.31-4.24 14.11-2.03 3.18 1.46 6.66 2.22 10.26 2.22h32.78c4.66 0 8.44-3.78 8.44-8.42 0-3.75-2.52-7.08-6.12-8.11l-50.07-14.3c-22.25-6.35-40.01-24.71-42.91-47.67-4.05-32.07 19.03-59.43 49.32-63.05V128c0-8.84 7.16-16 16-16h16c8.84 0 16 7.16 16 16v17.73c11.42 1.35 22.28 5.19 31.78 11.46 6.22 4.11 6.82 13.11 1.55 18.38l-17.52 17.52c-3.74 3.74-9.31 4.24-14.11 2.03a24.516 24.516 0 0 0-10.26-2.22h-32.78c-4.66 0-8.44 3.78-8.44 8.42 0 3.75 2.52 7.08 6.12 8.11l50.07 14.3c22.25 6.36 40.01 24.71 42.91 47.67 4.05 32.06-19.03 59.42-49.32 63.04z"],
	"comment-dots": [512, 512, [], "f4ad", "M256 32C114.6 32 0 125.1 0 240c0 49.6 21.4 95 57 130.7C44.5 421.1 2.7 466 2.2 466.5c-2.2 2.3-2.8 5.7-1.5 8.7S4.8 480 8 480c66.3 0 116-31.8 140.6-51.4 32.7 12.3 69 19.4 107.4 19.4 141.4 0 256-93.1 256-208S397.4 32 256 32zM128 272c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm128 0c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm128 0c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32z"],
	"comment-medical": [512, 512, [], "f7f5", "M256 32C114.62 32 0 125.12 0 240c0 49.56 21.41 95 57 130.74C44.46 421.05 2.7 466 2.2 466.5A8 8 0 0 0 8 480c66.26 0 116-31.75 140.6-51.38A304.66 304.66 0 0 0 256 448c141.39 0 256-93.12 256-208S397.39 32 256 32zm96 232a8 8 0 0 1-8 8h-56v56a8 8 0 0 1-8 8h-48a8 8 0 0 1-8-8v-56h-56a8 8 0 0 1-8-8v-48a8 8 0 0 1 8-8h56v-56a8 8 0 0 1 8-8h48a8 8 0 0 1 8 8v56h56a8 8 0 0 1 8 8z"],
	"comment-slash": [640, 512, [], "f4b3", "M64 240c0 49.6 21.4 95 57 130.7-12.6 50.3-54.3 95.2-54.8 95.8-2.2 2.3-2.8 5.7-1.5 8.7 1.3 2.9 4.1 4.8 7.3 4.8 66.3 0 116-31.8 140.6-51.4 32.7 12.3 69 19.4 107.4 19.4 27.4 0 53.7-3.6 78.4-10L72.9 186.4c-5.6 17.1-8.9 35-8.9 53.6zm569.8 218.1l-114.4-88.4C554.6 334.1 576 289.2 576 240c0-114.9-114.6-208-256-208-65.1 0-124.2 20.1-169.4 52.7L45.5 3.4C38.5-2 28.5-.8 23 6.2L3.4 31.4c-5.4 7-4.2 17 2.8 22.4l588.4 454.7c7 5.4 17 4.2 22.5-2.8l19.6-25.3c5.4-6.8 4.1-16.9-2.9-22.3z"],
	"comments": [576, 512, [], "f086", "M416 192c0-88.4-93.1-160-208-160S0 103.6 0 192c0 34.3 14.1 65.9 38 92-13.4 30.2-35.5 54.2-35.8 54.5-2.2 2.3-2.8 5.7-1.5 8.7S4.8 352 8 352c36.6 0 66.9-12.3 88.7-25 32.2 15.7 70.3 25 111.3 25 114.9 0 208-71.6 208-160zm122 220c23.9-26 38-57.7 38-92 0-66.9-53.5-124.2-129.3-148.1.9 6.6 1.3 13.3 1.3 20.1 0 105.9-107.7 192-240 192-10.8 0-21.3-.8-31.7-1.9C207.8 439.6 281.8 480 368 480c41 0 79.1-9.2 111.3-25 21.8 12.7 52.1 25 88.7 25 3.2 0 6.1-1.9 7.3-4.8 1.3-2.9.7-6.3-1.5-8.7-.3-.3-22.4-24.2-35.8-54.5z"],
	"comments-dollar": [576, 512, [], "f653", "M416 192c0-88.37-93.12-160-208-160S0 103.63 0 192c0 34.27 14.13 65.95 37.97 91.98C24.61 314.22 2.52 338.16 2.2 338.5A7.995 7.995 0 0 0 8 352c36.58 0 66.93-12.25 88.73-24.98C128.93 342.76 167.02 352 208 352c114.88 0 208-71.63 208-160zm-224 96v-16.29c-11.29-.58-22.27-4.52-31.37-11.35-3.9-2.93-4.1-8.77-.57-12.14l11.75-11.21c2.77-2.64 6.89-2.76 10.13-.73 3.87 2.42 8.26 3.72 12.82 3.72h28.11c6.5 0 11.8-5.92 11.8-13.19 0-5.95-3.61-11.19-8.77-12.73l-45-13.5c-18.59-5.58-31.58-23.42-31.58-43.39 0-24.52 19.05-44.44 42.67-45.07V96c0-4.42 3.58-8 8-8h16c4.42 0 8 3.58 8 8v16.29c11.29.58 22.27 4.51 31.37 11.35 3.9 2.93 4.1 8.77.57 12.14l-11.75 11.21c-2.77 2.64-6.89 2.76-10.13.73-3.87-2.43-8.26-3.72-12.82-3.72h-28.11c-6.5 0-11.8 5.92-11.8 13.19 0 5.95 3.61 11.19 8.77 12.73l45 13.5c18.59 5.58 31.58 23.42 31.58 43.39 0 24.53-19.05 44.44-42.67 45.07V288c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8zm346.01 123.99C561.87 385.96 576 354.27 576 320c0-66.94-53.49-124.2-129.33-148.07.86 6.6 1.33 13.29 1.33 20.07 0 105.87-107.66 192-240 192-10.78 0-21.32-.77-31.73-1.88C207.8 439.63 281.77 480 368 480c40.98 0 79.07-9.24 111.27-24.98C501.07 467.75 531.42 480 568 480c3.2 0 6.09-1.91 7.34-4.84 1.27-2.94.66-6.34-1.55-8.67-.31-.33-22.42-24.24-35.78-54.5z"],
	"compact-disc": [496, 512, [], "f51f", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zM88 256H56c0-105.9 86.1-192 192-192v32c-88.2 0-160 71.8-160 160zm160 96c-53 0-96-43-96-96s43-96 96-96 96 43 96 96-43 96-96 96zm0-128c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32z"],
	"compass": [496, 512, [], "f14e", "M225.38 233.37c-12.5 12.5-12.5 32.76 0 45.25 12.49 12.5 32.76 12.5 45.25 0 12.5-12.5 12.5-32.76 0-45.25-12.5-12.49-32.76-12.49-45.25 0zM248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm126.14 148.05L308.17 300.4a31.938 31.938 0 0 1-15.77 15.77l-144.34 65.97c-16.65 7.61-33.81-9.55-26.2-26.2l65.98-144.35a31.938 31.938 0 0 1 15.77-15.77l144.34-65.97c16.65-7.6 33.8 9.55 26.19 26.2z"],
	"compress": [448, 512, [], "f066", "M436 192H312c-13.3 0-24-10.7-24-24V44c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v84h84c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12zm-276-24V44c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v84H12c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h124c13.3 0 24-10.7 24-24zm0 300V344c0-13.3-10.7-24-24-24H12c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h84v84c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12zm192 0v-84h84c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12H312c-13.3 0-24 10.7-24 24v124c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12z"],
	"compress-alt": [448, 512, [], "f422", "M4.686 427.314L104 328l-32.922-31.029C55.958 281.851 66.666 256 88.048 256h112C213.303 256 224 266.745 224 280v112c0 21.382-25.803 32.09-40.922 16.971L152 376l-99.314 99.314c-6.248 6.248-16.379 6.248-22.627 0L4.686 449.941c-6.248-6.248-6.248-16.379 0-22.627zM443.314 84.686L344 184l32.922 31.029c15.12 15.12 4.412 40.971-16.97 40.971h-112C234.697 256 224 245.255 224 232V120c0-21.382 25.803-32.09 40.922-16.971L296 136l99.314-99.314c6.248-6.248 16.379-6.248 22.627 0l25.373 25.373c6.248 6.248 6.248 16.379 0 22.627z"],
	"compress-arrows-alt": [512, 512, [], "f78c", "M200 288H88c-21.4 0-32.1 25.8-17 41l32.9 31-99.2 99.3c-6.2 6.2-6.2 16.4 0 22.6l25.4 25.4c6.2 6.2 16.4 6.2 22.6 0L152 408l31.1 33c15.1 15.1 40.9 4.4 40.9-17V312c0-13.3-10.7-24-24-24zm112-64h112c21.4 0 32.1-25.9 17-41l-33-31 99.3-99.3c6.2-6.2 6.2-16.4 0-22.6L481.9 4.7c-6.2-6.2-16.4-6.2-22.6 0L360 104l-31.1-33C313.8 55.9 288 66.6 288 88v112c0 13.3 10.7 24 24 24zm96 136l33-31.1c15.1-15.1 4.4-40.9-17-40.9H312c-13.3 0-24 10.7-24 24v112c0 21.4 25.9 32.1 41 17l31-32.9 99.3 99.3c6.2 6.2 16.4 6.2 22.6 0l25.4-25.4c6.2-6.2 6.2-16.4 0-22.6L408 360zM183 71.1L152 104 52.7 4.7c-6.2-6.2-16.4-6.2-22.6 0L4.7 30.1c-6.2 6.2-6.2 16.4 0 22.6L104 152l-33 31.1C55.9 198.2 66.6 224 88 224h112c13.3 0 24-10.7 24-24V88c0-21.3-25.9-32-41-16.9z"],
	"concierge-bell": [512, 512, [], "f562", "M288 130.54V112h16c8.84 0 16-7.16 16-16V80c0-8.84-7.16-16-16-16h-96c-8.84 0-16 7.16-16 16v16c0 8.84 7.16 16 16 16h16v18.54C115.49 146.11 32 239.18 32 352h448c0-112.82-83.49-205.89-192-221.46zM496 384H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h480c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16z"],
	"cookie": [512, 512, [], "f563", "M510.37 254.79l-12.08-76.26a132.493 132.493 0 0 0-37.16-72.95l-54.76-54.75c-19.73-19.72-45.18-32.7-72.71-37.05l-76.7-12.15c-27.51-4.36-55.69.11-80.52 12.76L107.32 49.6a132.25 132.25 0 0 0-57.79 57.8l-35.1 68.88a132.602 132.602 0 0 0-12.82 80.94l12.08 76.27a132.493 132.493 0 0 0 37.16 72.95l54.76 54.75a132.087 132.087 0 0 0 72.71 37.05l76.7 12.14c27.51 4.36 55.69-.11 80.52-12.75l69.12-35.21a132.302 132.302 0 0 0 57.79-57.8l35.1-68.87c12.71-24.96 17.2-53.3 12.82-80.96zM176 368c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm32-160c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm160 128c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z"],
	"cookie-bite": [512, 512, [], "f564", "M510.52 255.82c-69.97-.85-126.47-57.69-126.47-127.86-70.17 0-127-56.49-127.86-126.45-27.26-4.14-55.13.3-79.72 12.82l-69.13 35.22a132.221 132.221 0 0 0-57.79 57.81l-35.1 68.88a132.645 132.645 0 0 0-12.82 80.95l12.08 76.27a132.521 132.521 0 0 0 37.16 72.96l54.77 54.76a132.036 132.036 0 0 0 72.71 37.06l76.71 12.15c27.51 4.36 55.7-.11 80.53-12.76l69.13-35.21a132.273 132.273 0 0 0 57.79-57.81l35.1-68.88c12.56-24.64 17.01-52.58 12.91-79.91zM176 368c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm32-160c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm160 128c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z"],
	"copy": [448, 512, [], "f0c5", "M320 448v40c0 13.255-10.745 24-24 24H24c-13.255 0-24-10.745-24-24V120c0-13.255 10.745-24 24-24h72v296c0 30.879 25.121 56 56 56h168zm0-344V0H152c-13.255 0-24 10.745-24 24v368c0 13.255 10.745 24 24 24h272c13.255 0 24-10.745 24-24V128H344c-13.2 0-24-10.8-24-24zm120.971-31.029L375.029 7.029A24 24 0 0 0 358.059 0H352v96h96v-6.059a24 24 0 0 0-7.029-16.97z"],
	"copyright": [512, 512, [], "f1f9", "M256 8C119.033 8 8 119.033 8 256s111.033 248 248 248 248-111.033 248-248S392.967 8 256 8zm117.134 346.753c-1.592 1.867-39.776 45.731-109.851 45.731-84.692 0-144.484-63.26-144.484-145.567 0-81.303 62.004-143.401 143.762-143.401 66.957 0 101.965 37.315 103.422 38.904a12 12 0 0 1 1.238 14.623l-22.38 34.655c-4.049 6.267-12.774 7.351-18.234 2.295-.233-.214-26.529-23.88-61.88-23.88-46.116 0-73.916 33.575-73.916 76.082 0 39.602 25.514 79.692 74.277 79.692 38.697 0 65.28-28.338 65.544-28.625 5.132-5.565 14.059-5.033 18.508 1.053l24.547 33.572a12.001 12.001 0 0 1-.553 14.866z"],
	"couch": [640, 512, [], "f4b8", "M160 224v64h320v-64c0-35.3 28.7-64 64-64h32c0-53-43-96-96-96H160c-53 0-96 43-96 96h32c35.3 0 64 28.7 64 64zm416-32h-32c-17.7 0-32 14.3-32 32v96H128v-96c0-17.7-14.3-32-32-32H64c-35.3 0-64 28.7-64 64 0 23.6 13 44 32 55.1V432c0 8.8 7.2 16 16 16h64c8.8 0 16-7.2 16-16v-16h384v16c0 8.8 7.2 16 16 16h64c8.8 0 16-7.2 16-16V311.1c19-11.1 32-31.5 32-55.1 0-35.3-28.7-64-64-64z"],
	"credit-card": [576, 512, [], "f09d", "M0 432c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48V256H0v176zm192-68c0-6.6 5.4-12 12-12h136c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12H204c-6.6 0-12-5.4-12-12v-40zm-128 0c0-6.6 5.4-12 12-12h72c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12H76c-6.6 0-12-5.4-12-12v-40zM576 80v48H0V80c0-26.5 21.5-48 48-48h480c26.5 0 48 21.5 48 48z"],
	"crop": [512, 512, [], "f125", "M488 352h-40V109.25l59.31-59.31c6.25-6.25 6.25-16.38 0-22.63L484.69 4.69c-6.25-6.25-16.38-6.25-22.63 0L402.75 64H192v96h114.75L160 306.75V24c0-13.26-10.75-24-24-24H88C74.75 0 64 10.74 64 24v40H24C10.75 64 0 74.74 0 88v48c0 13.25 10.75 24 24 24h40v264c0 13.25 10.75 24 24 24h232v-96H205.25L352 205.25V488c0 13.25 10.75 24 24 24h48c13.25 0 24-10.75 24-24v-40h40c13.25 0 24-10.75 24-24v-48c0-13.26-10.75-24-24-24z"],
	"crop-alt": [512, 512, [], "f565", "M488 352h-40V96c0-17.67-14.33-32-32-32H192v96h160v328c0 13.25 10.75 24 24 24h48c13.25 0 24-10.75 24-24v-40h40c13.25 0 24-10.75 24-24v-48c0-13.26-10.75-24-24-24zM160 24c0-13.26-10.75-24-24-24H88C74.75 0 64 10.74 64 24v40H24C10.75 64 0 74.74 0 88v48c0 13.25 10.75 24 24 24h40v256c0 17.67 14.33 32 32 32h224v-96H160V24z"],
	"cross": [384, 512, [], "f654", "M352 128h-96V32c0-17.67-14.33-32-32-32h-64c-17.67 0-32 14.33-32 32v96H32c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h96v224c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32V256h96c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32z"],
	"crosshairs": [512, 512, [], "f05b", "M500 224h-30.364C455.724 130.325 381.675 56.276 288 42.364V12c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v30.364C130.325 56.276 56.276 130.325 42.364 224H12c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h30.364C56.276 381.675 130.325 455.724 224 469.636V500c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12v-30.364C381.675 455.724 455.724 381.675 469.636 288H500c6.627 0 12-5.373 12-12v-40c0-6.627-5.373-12-12-12zM288 404.634V364c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40.634C165.826 392.232 119.783 346.243 107.366 288H148c6.627 0 12-5.373 12-12v-40c0-6.627-5.373-12-12-12h-40.634C119.768 165.826 165.757 119.783 224 107.366V148c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12v-40.634C346.174 119.768 392.217 165.757 404.634 224H364c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40.634C392.232 346.174 346.243 392.217 288 404.634zM288 256c0 17.673-14.327 32-32 32s-32-14.327-32-32c0-17.673 14.327-32 32-32s32 14.327 32 32z"],
	"crow": [640, 512, [], "f520", "M544 32h-16.36C513.04 12.68 490.09 0 464 0c-44.18 0-80 35.82-80 80v20.98L12.09 393.57A30.216 30.216 0 0 0 0 417.74c0 22.46 23.64 37.07 43.73 27.03L165.27 384h96.49l44.41 120.1c2.27 6.23 9.15 9.44 15.38 7.17l22.55-8.21c6.23-2.27 9.44-9.15 7.17-15.38L312.94 384H352c1.91 0 3.76-.23 5.66-.29l44.51 120.38c2.27 6.23 9.15 9.44 15.38 7.17l22.55-8.21c6.23-2.27 9.44-9.15 7.17-15.38l-41.24-111.53C485.74 352.8 544 279.26 544 192v-80l96-16c0-35.35-42.98-64-96-64zm-80 72c-13.25 0-24-10.75-24-24 0-13.26 10.75-24 24-24s24 10.74 24 24c0 13.25-10.75 24-24 24z"],
	"crown": [640, 512, [], "f521", "M528 448H112c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h416c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zm64-320c-26.5 0-48 21.5-48 48 0 7.1 1.6 13.7 4.4 19.8L476 239.2c-15.4 9.2-35.3 4-44.2-11.6L350.3 85C361 76.2 368 63 368 48c0-26.5-21.5-48-48-48s-48 21.5-48 48c0 15 7 28.2 17.7 37l-81.5 142.6c-8.9 15.6-28.9 20.8-44.2 11.6l-72.3-43.4c2.7-6 4.4-12.7 4.4-19.8 0-26.5-21.5-48-48-48S0 149.5 0 176s21.5 48 48 48c2.6 0 5.2-.4 7.7-.8L128 416h384l72.3-192.8c2.5.4 5.1.8 7.7.8 26.5 0 48-21.5 48-48s-21.5-48-48-48z"],
	"crutch": [512, 512, [], "f7f7", "M507.31 185.71l-181-181a16 16 0 0 0-22.62 0L281 27.31a16 16 0 0 0 0 22.63l181 181a16 16 0 0 0 22.63 0l22.62-22.63a16 16 0 0 0 .06-22.6zm-179.54 66.41l-67.89-67.89 55.1-55.1-45.25-45.25-109.67 109.67a96.08 96.08 0 0 0-25.67 46.29L106.65 360.1l-102 102a16 16 0 0 0 0 22.63l22.62 22.62a16 16 0 0 0 22.63 0l102-102 120.25-27.75a95.88 95.88 0 0 0 46.29-25.65l109.68-109.68L382.87 197zm-54.57 54.57a32 32 0 0 1-15.45 8.54l-79.3 18.32 18.3-79.3a32.22 32.22 0 0 1 8.56-15.45l9.31-9.31 67.89 67.89z"],
	"cube": [512, 512, [], "f1b2", "M239.1 6.3l-208 78c-18.7 7-31.1 25-31.1 45v225.1c0 18.2 10.3 34.8 26.5 42.9l208 104c13.5 6.8 29.4 6.8 42.9 0l208-104c16.3-8.1 26.5-24.8 26.5-42.9V129.3c0-20-12.4-37.9-31.1-44.9l-208-78C262 2.2 250 2.2 239.1 6.3zM256 68.4l192 72v1.1l-192 78-192-78v-1.1l192-72zm32 356V275.5l160-65v133.9l-160 80z"],
	"cubes": [512, 512, [], "f1b3", "M488.6 250.2L392 214V105.5c0-15-9.3-28.4-23.4-33.7l-100-37.5c-8.1-3.1-17.1-3.1-25.3 0l-100 37.5c-14.1 5.3-23.4 18.7-23.4 33.7V214l-96.6 36.2C9.3 255.5 0 268.9 0 283.9V394c0 13.6 7.7 26.1 19.9 32.2l100 50c10.1 5.1 22.1 5.1 32.2 0l103.9-52 103.9 52c10.1 5.1 22.1 5.1 32.2 0l100-50c12.2-6.1 19.9-18.6 19.9-32.2V283.9c0-15-9.3-28.4-23.4-33.7zM358 214.8l-85 31.9v-68.2l85-37v73.3zM154 104.1l102-38.2 102 38.2v.6l-102 41.4-102-41.4v-.6zm84 291.1l-85 42.5v-79.1l85-38.8v75.4zm0-112l-102 41.4-102-41.4v-.6l102-38.2 102 38.2v.6zm240 112l-85 42.5v-79.1l85-38.8v75.4zm0-112l-102 41.4-102-41.4v-.6l102-38.2 102 38.2v.6z"],
	"cut": [448, 512, [], "f0c4", "M278.06 256L444.48 89.57c4.69-4.69 4.69-12.29 0-16.97-32.8-32.8-85.99-32.8-118.79 0L210.18 188.12l-24.86-24.86c4.31-10.92 6.68-22.81 6.68-35.26 0-53.02-42.98-96-96-96S0 74.98 0 128s42.98 96 96 96c4.54 0 8.99-.32 13.36-.93L142.29 256l-32.93 32.93c-4.37-.61-8.83-.93-13.36-.93-53.02 0-96 42.98-96 96s42.98 96 96 96 96-42.98 96-96c0-12.45-2.37-24.34-6.68-35.26l24.86-24.86L325.69 439.4c32.8 32.8 85.99 32.8 118.79 0 4.69-4.68 4.69-12.28 0-16.97L278.06 256zM96 160c-17.64 0-32-14.36-32-32s14.36-32 32-32 32 14.36 32 32-14.36 32-32 32zm0 256c-17.64 0-32-14.36-32-32s14.36-32 32-32 32 14.36 32 32-14.36 32-32 32z"],
	"database": [448, 512, [], "f1c0", "M448 73.143v45.714C448 159.143 347.667 192 224 192S0 159.143 0 118.857V73.143C0 32.857 100.333 0 224 0s224 32.857 224 73.143zM448 176v102.857C448 319.143 347.667 352 224 352S0 319.143 0 278.857V176c48.125 33.143 136.208 48.572 224 48.572S399.874 209.143 448 176zm0 160v102.857C448 479.143 347.667 512 224 512S0 479.143 0 438.857V336c48.125 33.143 136.208 48.572 224 48.572S399.874 369.143 448 336z"],
	"deaf": [512, 512, [], "f2a4", "M216 260c0 15.464-12.536 28-28 28s-28-12.536-28-28c0-44.112 35.888-80 80-80s80 35.888 80 80c0 15.464-12.536 28-28 28s-28-12.536-28-28c0-13.234-10.767-24-24-24s-24 10.766-24 24zm24-176c-97.047 0-176 78.953-176 176 0 15.464 12.536 28 28 28s28-12.536 28-28c0-66.168 53.832-120 120-120s120 53.832 120 120c0 75.164-71.009 70.311-71.997 143.622L288 404c0 28.673-23.327 52-52 52-15.464 0-28 12.536-28 28s12.536 28 28 28c59.475 0 107.876-48.328 108-107.774.595-34.428 72-48.24 72-144.226 0-97.047-78.953-176-176-176zm268.485-52.201L480.2 3.515c-4.687-4.686-12.284-4.686-16.971 0L376.2 90.544c-4.686 4.686-4.686 12.284 0 16.971l28.285 28.285c4.686 4.686 12.284 4.686 16.97 0l87.03-87.029c4.687-4.688 4.687-12.286 0-16.972zM168.97 314.745c-4.686-4.686-12.284-4.686-16.97 0L3.515 463.23c-4.686 4.686-4.686 12.284 0 16.971L31.8 508.485c4.687 4.686 12.284 4.686 16.971 0L197.256 360c4.686-4.686 4.686-12.284 0-16.971l-28.286-28.284z"],
	"democrat": [640, 512, [], "f747", "M637.3 256.9l-19.6-29.4c-28.2-42.3-75.3-67.5-126.1-67.5H256l-81.2-81.2c20.1-20.1 22.6-51.1 7.5-73.9-3.4-5.2-10.8-5.9-15.2-1.5l-41.8 41.8L82.4 2.4c-3.6-3.6-9.6-3-12.4 1.2-12.3 18.6-10.3 44 6.1 60.4 3.3 3.3 7.3 5.3 11.3 7.5-2.2 1.7-4.7 3.1-6.4 5.4L6.4 176.2c-7.3 9.7-8.4 22.7-3 33.5l14.3 28.6c5.4 10.8 16.5 17.7 28.6 17.7h31c8.5 0 16.6-3.4 22.6-9.4L138 212l54 108h352v-77.8c16.2 12.2 18.3 17.6 40.1 50.3 4.9 7.4 14.8 9.3 22.2 4.4l26.6-17.7c7.3-5 9.3-14.9 4.4-22.3zm-341.1-13.6l-16.5 16.1 3.9 22.7c.7 4.1-3.6 7.2-7.2 5.3L256 276.7l-20.4 10.7c-3.6 1.9-7.9-1.2-7.2-5.3l3.9-22.7-16.5-16.1c-3-2.9-1.3-7.9 2.8-8.5l22.8-3.3 10.2-20.7c1.8-3.7 7.1-3.7 9 0l10.2 20.7 22.8 3.3c4 .6 5.6 5.6 2.6 8.5zm112 0l-16.5 16.1 3.9 22.7c.7 4.1-3.6 7.2-7.2 5.3L368 276.7l-20.4 10.7c-3.6 1.9-7.9-1.2-7.2-5.3l3.9-22.7-16.5-16.1c-3-2.9-1.3-7.9 2.8-8.5l22.8-3.3 10.2-20.7c1.8-3.7 7.1-3.7 9 0l10.2 20.7 22.8 3.3c4 .6 5.6 5.6 2.6 8.5zm112 0l-16.5 16.1 3.9 22.7c.7 4.1-3.6 7.2-7.2 5.3L480 276.7l-20.4 10.7c-3.6 1.9-7.9-1.2-7.2-5.3l3.9-22.7-16.5-16.1c-3-2.9-1.3-7.9 2.8-8.5l22.8-3.3 10.2-20.7c1.8-3.7 7.1-3.7 9 0l10.2 20.7 22.8 3.3c4 .6 5.6 5.6 2.6 8.5zM192 496c0 8.8 7.2 16 16 16h64c8.8 0 16-7.2 16-16v-80h160v80c0 8.8 7.2 16 16 16h64c8.8 0 16-7.2 16-16V352H192v144z"],
	"desktop": [576, 512, [], "f108", "M528 0H48C21.5 0 0 21.5 0 48v320c0 26.5 21.5 48 48 48h192l-16 48h-72c-13.3 0-24 10.7-24 24s10.7 24 24 24h272c13.3 0 24-10.7 24-24s-10.7-24-24-24h-72l-16-48h192c26.5 0 48-21.5 48-48V48c0-26.5-21.5-48-48-48zm-16 352H64V64h448v288z"],
	"dharmachakra": [512, 512, [], "f655", "M495 225.06l-17.22 1.08c-5.27-39.49-20.79-75.64-43.86-105.84l12.95-11.43c6.92-6.11 7.25-16.79.73-23.31L426.44 64.4c-6.53-6.53-17.21-6.19-23.31.73L391.7 78.07c-30.2-23.06-66.35-38.58-105.83-43.86L286.94 17c.58-9.21-6.74-17-15.97-17h-29.94c-9.23 0-16.54 7.79-15.97 17l1.08 17.22c-39.49 5.27-75.64 20.79-105.83 43.86l-11.43-12.95c-6.11-6.92-16.79-7.25-23.31-.73L64.4 85.56c-6.53 6.53-6.19 17.21.73 23.31l12.95 11.43c-23.06 30.2-38.58 66.35-43.86 105.84L17 225.06c-9.21-.58-17 6.74-17 15.97v29.94c0 9.23 7.79 16.54 17 15.97l17.22-1.08c5.27 39.49 20.79 75.64 43.86 105.83l-12.95 11.43c-6.92 6.11-7.25 16.79-.73 23.31l21.17 21.17c6.53 6.53 17.21 6.19 23.31-.73l11.43-12.95c30.2 23.06 66.35 38.58 105.84 43.86L225.06 495c-.58 9.21 6.74 17 15.97 17h29.94c9.23 0 16.54-7.79 15.97-17l-1.08-17.22c39.49-5.27 75.64-20.79 105.84-43.86l11.43 12.95c6.11 6.92 16.79 7.25 23.31.73l21.17-21.17c6.53-6.53 6.19-17.21-.73-23.31l-12.95-11.43c23.06-30.2 38.58-66.35 43.86-105.83l17.22 1.08c9.21.58 17-6.74 17-15.97v-29.94c-.01-9.23-7.8-16.54-17.01-15.97zM281.84 98.61c24.81 4.07 47.63 13.66 67.23 27.78l-42.62 48.29c-8.73-5.44-18.32-9.54-28.62-11.95l4.01-64.12zm-51.68 0l4.01 64.12c-10.29 2.41-19.89 6.52-28.62 11.95l-42.62-48.29c19.6-14.12 42.42-23.71 67.23-27.78zm-103.77 64.33l48.3 42.61c-5.44 8.73-9.54 18.33-11.96 28.62l-64.12-4.01c4.07-24.81 13.66-47.62 27.78-67.22zm-27.78 118.9l64.12-4.01c2.41 10.29 6.52 19.89 11.95 28.62l-48.29 42.62c-14.12-19.6-23.71-42.42-27.78-67.23zm131.55 131.55c-24.81-4.07-47.63-13.66-67.23-27.78l42.61-48.3c8.73 5.44 18.33 9.54 28.62 11.96l-4 64.12zM256 288c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm25.84 125.39l-4.01-64.12c10.29-2.41 19.89-6.52 28.62-11.96l42.61 48.3c-19.6 14.12-42.41 23.71-67.22 27.78zm103.77-64.33l-48.29-42.62c5.44-8.73 9.54-18.32 11.95-28.62l64.12 4.01c-4.07 24.82-13.66 47.64-27.78 67.23zm-36.34-114.89c-2.41-10.29-6.52-19.89-11.96-28.62l48.3-42.61c14.12 19.6 23.71 42.42 27.78 67.23l-64.12 4z"],
	"diagnoses": [640, 512, [], "f470", "M496 256c8.8 0 16-7.2 16-16s-7.2-16-16-16-16 7.2-16 16 7.2 16 16 16zm-176-80c48.5 0 88-39.5 88-88S368.5 0 320 0s-88 39.5-88 88 39.5 88 88 88zM59.8 364c10.2 15.3 29.3 17.8 42.9 9.8 16.2-9.6 56.2-31.7 105.3-48.6V416h224v-90.7c49.1 16.8 89.1 39 105.3 48.6 13.6 8 32.7 5.3 42.9-9.8l17.8-26.7c8.8-13.2 7.6-34.6-10-45.1-11.9-7.1-29.7-17-51.1-27.4-28.1 46.1-99.4 17.8-87.7-35.1C409.3 217.2 365.1 208 320 208c-57 0-112.9 14.5-160 32.2-.2 40.2-47.6 63.3-79.2 36-11.2 6-21.3 11.6-28.7 16-17.6 10.5-18.8 31.8-10 45.1L59.8 364zM368 344c13.3 0 24 10.7 24 24s-10.7 24-24 24-24-10.7-24-24 10.7-24 24-24zm-96-96c13.3 0 24 10.7 24 24s-10.7 24-24 24-24-10.7-24-24 10.7-24 24-24zm-160 8c8.8 0 16-7.2 16-16s-7.2-16-16-16-16 7.2-16 16 7.2 16 16 16zm512 192H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h608c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16z"],
	"dice": [640, 512, [], "f522", "M592 192H473.26c12.69 29.59 7.12 65.2-17 89.32L320 417.58V464c0 26.51 21.49 48 48 48h224c26.51 0 48-21.49 48-48V240c0-26.51-21.49-48-48-48zM480 376c-13.25 0-24-10.75-24-24 0-13.26 10.75-24 24-24s24 10.74 24 24c0 13.25-10.75 24-24 24zm-46.37-186.7L258.7 14.37c-19.16-19.16-50.23-19.16-69.39 0L14.37 189.3c-19.16 19.16-19.16 50.23 0 69.39L189.3 433.63c19.16 19.16 50.23 19.16 69.39 0L433.63 258.7c19.16-19.17 19.16-50.24 0-69.4zM96 248c-13.25 0-24-10.75-24-24 0-13.26 10.75-24 24-24s24 10.74 24 24c0 13.25-10.75 24-24 24zm128 128c-13.25 0-24-10.75-24-24 0-13.26 10.75-24 24-24s24 10.74 24 24c0 13.25-10.75 24-24 24zm0-128c-13.25 0-24-10.75-24-24 0-13.26 10.75-24 24-24s24 10.74 24 24c0 13.25-10.75 24-24 24zm0-128c-13.25 0-24-10.75-24-24 0-13.26 10.75-24 24-24s24 10.74 24 24c0 13.25-10.75 24-24 24zm128 128c-13.25 0-24-10.75-24-24 0-13.26 10.75-24 24-24s24 10.74 24 24c0 13.25-10.75 24-24 24z"],
	"dice-d20": [480, 512, [], "f6cf", "M106.75 215.06L1.2 370.95c-3.08 5 .1 11.5 5.93 12.14l208.26 22.07-108.64-190.1zM7.41 315.43L82.7 193.08 6.06 147.1c-2.67-1.6-6.06.32-6.06 3.43v162.81c0 4.03 5.29 5.53 7.41 2.09zM18.25 423.6l194.4 87.66c5.3 2.45 11.35-1.43 11.35-7.26v-65.67l-203.55-22.3c-4.45-.5-6.23 5.59-2.2 7.57zm81.22-257.78L179.4 22.88c4.34-7.06-3.59-15.25-10.78-11.14L17.81 110.35c-2.47 1.62-2.39 5.26.13 6.78l81.53 48.69zM240 176h109.21L253.63 7.62C250.5 2.54 245.25 0 240 0s-10.5 2.54-13.63 7.62L130.79 176H240zm233.94-28.9l-76.64 45.99 75.29 122.35c2.11 3.44 7.41 1.94 7.41-2.1V150.53c0-3.11-3.39-5.03-6.06-3.43zm-93.41 18.72l81.53-48.7c2.53-1.52 2.6-5.16.13-6.78l-150.81-98.6c-7.19-4.11-15.12 4.08-10.78 11.14l79.93 142.94zm79.02 250.21L256 438.32v65.67c0 5.84 6.05 9.71 11.35 7.26l194.4-87.66c4.03-1.97 2.25-8.06-2.2-7.56zm-86.3-200.97l-108.63 190.1 208.26-22.07c5.83-.65 9.01-7.14 5.93-12.14L373.25 215.06zM240 208H139.57L240 383.75 340.43 208H240z"],
	"dice-d6": [448, 512, [], "f6d1", "M422.19 109.95L256.21 9.07c-19.91-12.1-44.52-12.1-64.43 0L25.81 109.95c-5.32 3.23-5.29 11.27.06 14.46L224 242.55l198.14-118.14c5.35-3.19 5.38-11.22.05-14.46zm13.84 44.63L240 271.46v223.82c0 12.88 13.39 20.91 24.05 14.43l152.16-92.48c19.68-11.96 31.79-33.94 31.79-57.7v-197.7c0-6.41-6.64-10.43-11.97-7.25zM0 161.83v197.7c0 23.77 12.11 45.74 31.79 57.7l152.16 92.47c10.67 6.48 24.05-1.54 24.05-14.43V271.46L11.97 154.58C6.64 151.4 0 155.42 0 161.83z"],
	"dice-five": [448, 512, [], "f523", "M384 32H64C28.65 32 0 60.65 0 96v320c0 35.35 28.65 64 64 64h320c35.35 0 64-28.65 64-64V96c0-35.35-28.65-64-64-64zM128 384c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm0-192c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm96 96c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm96 96c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm0-192c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z"],
	"dice-four": [448, 512, [], "f524", "M384 32H64C28.65 32 0 60.65 0 96v320c0 35.35 28.65 64 64 64h320c35.35 0 64-28.65 64-64V96c0-35.35-28.65-64-64-64zM128 384c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm0-192c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm192 192c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm0-192c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z"],
	"dice-one": [448, 512, [], "f525", "M384 32H64C28.65 32 0 60.65 0 96v320c0 35.35 28.65 64 64 64h320c35.35 0 64-28.65 64-64V96c0-35.35-28.65-64-64-64zM224 288c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z"],
	"dice-six": [448, 512, [], "f526", "M384 32H64C28.65 32 0 60.65 0 96v320c0 35.35 28.65 64 64 64h320c35.35 0 64-28.65 64-64V96c0-35.35-28.65-64-64-64zM128 384c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm0-96c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm0-96c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm192 192c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm0-96c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm0-96c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z"],
	"dice-three": [448, 512, [], "f527", "M384 32H64C28.65 32 0 60.65 0 96v320c0 35.35 28.65 64 64 64h320c35.35 0 64-28.65 64-64V96c0-35.35-28.65-64-64-64zM128 192c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm96 96c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm96 96c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z"],
	"dice-two": [448, 512, [], "f528", "M384 32H64C28.65 32 0 60.65 0 96v320c0 35.35 28.65 64 64 64h320c35.35 0 64-28.65 64-64V96c0-35.35-28.65-64-64-64zM128 192c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm192 192c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z"],
	"digital-tachograph": [640, 512, [], "f566", "M608 96H32c-17.67 0-32 14.33-32 32v256c0 17.67 14.33 32 32 32h576c17.67 0 32-14.33 32-32V128c0-17.67-14.33-32-32-32zM304 352c0 4.42-3.58 8-8 8H72c-4.42 0-8-3.58-8-8v-8c0-4.42 3.58-8 8-8h224c4.42 0 8 3.58 8 8v8zM72 288v-16c0-4.42 3.58-8 8-8h16c4.42 0 8 3.58 8 8v16c0 4.42-3.58 8-8 8H80c-4.42 0-8-3.58-8-8zm64 0v-16c0-4.42 3.58-8 8-8h16c4.42 0 8 3.58 8 8v16c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8zm64 0v-16c0-4.42 3.58-8 8-8h16c4.42 0 8 3.58 8 8v16c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8zm64 0v-16c0-4.42 3.58-8 8-8h16c4.42 0 8 3.58 8 8v16c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8zm40-64c0 8.84-7.16 16-16 16H80c-8.84 0-16-7.16-16-16v-48c0-8.84 7.16-16 16-16h208c8.84 0 16 7.16 16 16v48zm272 128c0 4.42-3.58 8-8 8H344c-4.42 0-8-3.58-8-8v-8c0-4.42 3.58-8 8-8h224c4.42 0 8 3.58 8 8v8z"],
	"directions": [512, 512, [], "f5eb", "M502.61 233.32L278.68 9.39c-12.52-12.52-32.83-12.52-45.36 0L9.39 233.32c-12.52 12.53-12.52 32.83 0 45.36l223.93 223.93c12.52 12.53 32.83 12.53 45.36 0l223.93-223.93c12.52-12.53 12.52-32.83 0-45.36zm-100.98 12.56l-84.21 77.73c-5.12 4.73-13.43 1.1-13.43-5.88V264h-96v64c0 4.42-3.58 8-8 8h-32c-4.42 0-8-3.58-8-8v-80c0-17.67 14.33-32 32-32h112v-53.73c0-6.97 8.3-10.61 13.43-5.88l84.21 77.73c3.43 3.17 3.43 8.59 0 11.76z"],
	"disease": [512, 512, [], "f7fa", "M472.29 195.9l-67.06-23c-19.28-6.6-33.54-20.92-38.14-38.31l-16-60.45c-11.58-43.77-76.57-57.13-110-22.62L195 99.24c-13.26 13.71-33.54 20.93-54.2 19.31l-71.9-5.62c-52-4.07-86.93 44.89-59 82.84l38.54 52.42c11.08 15.07 12.82 33.86 4.64 50.24l-28.43 57C4 396.67 47.46 440.29 98.11 429.23l70-15.28c20.11-4.39 41.45 0 57.07 11.73l54.32 40.83c39.32 29.56 101 7.57 104.45-37.22l4.7-61.86c1.35-17.8 12.8-33.87 30.63-43l62-31.74c44.84-22.96 39.55-80.17-8.99-96.79zM160 256a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm128 96a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm16-128a16 16 0 1 1 16-16 16 16 0 0 1-16 16z"],
	"divide": [448, 512, [], "f529", "M224 352c-35.35 0-64 28.65-64 64s28.65 64 64 64 64-28.65 64-64-28.65-64-64-64zm0-192c35.35 0 64-28.65 64-64s-28.65-64-64-64-64 28.65-64 64 28.65 64 64 64zm192 48H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h384c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z"],
	"dizzy": [496, 512, [], "f567", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm-96 206.6l-28.7 28.7c-14.8 14.8-37.8-7.5-22.6-22.6l28.7-28.7-28.7-28.7c-15-15 7.7-37.6 22.6-22.6l28.7 28.7 28.7-28.7c15-15 37.6 7.7 22.6 22.6L174.6 192l28.7 28.7c15.2 15.2-7.9 37.4-22.6 22.6L152 214.6zM248 416c-35.3 0-64-28.7-64-64s28.7-64 64-64 64 28.7 64 64-28.7 64-64 64zm147.3-195.3c15.2 15.2-7.9 37.4-22.6 22.6L344 214.6l-28.7 28.7c-14.8 14.8-37.8-7.5-22.6-22.6l28.7-28.7-28.7-28.7c-15-15 7.7-37.6 22.6-22.6l28.7 28.7 28.7-28.7c15-15 37.6 7.7 22.6 22.6L366.6 192l28.7 28.7z"],
	"dna": [448, 512, [], "f471", "M.1 494.1c-1.1 9.5 6.3 17.8 15.9 17.8l32.3.1c8.1 0 14.9-5.9 16-13.9.7-4.9 1.8-11.1 3.4-18.1H380c1.6 6.9 2.9 13.2 3.5 18.1 1.1 8 7.9 14 16 13.9l32.3-.1c9.6 0 17.1-8.3 15.9-17.8-4.6-37.9-25.6-129-118.9-207.7-17.6 12.4-37.1 24.2-58.5 35.4 6.2 4.6 11.4 9.4 17 14.2H159.7c21.3-18.1 47-35.6 78.7-51.4C410.5 199.1 442.1 65.8 447.9 17.9 449 8.4 441.6.1 432 .1L399.6 0c-8.1 0-14.9 5.9-16 13.9-.7 4.9-1.8 11.1-3.4 18.1H67.8c-1.6-7-2.7-13.1-3.4-18.1-1.1-8-7.9-14-16-13.9L16.1.1C6.5.1-1 8.4.1 17.9 5.3 60.8 31.4 171.8 160 256 31.5 340.2 5.3 451.2.1 494.1zM224 219.6c-25.1-13.7-46.4-28.4-64.3-43.6h128.5c-17.8 15.2-39.1 30-64.2 43.6zM355.1 96c-5.8 10.4-12.8 21.1-21 32H114c-8.3-10.9-15.3-21.6-21-32h262.1zM92.9 416c5.8-10.4 12.8-21.1 21-32h219.4c8.3 10.9 15.4 21.6 21.2 32H92.9z"],
	"dog": [576, 512, [], "f6d3", "M298.06,224,448,277.55V496a16,16,0,0,1-16,16H368a16,16,0,0,1-16-16V384H192V496a16,16,0,0,1-16,16H112a16,16,0,0,1-16-16V282.09C58.84,268.84,32,233.66,32,192a32,32,0,0,1,64,0,32.06,32.06,0,0,0,32,32ZM544,112v32a64,64,0,0,1-64,64H448v35.58L320,197.87V48c0-14.25,17.22-21.39,27.31-11.31L374.59,64h53.63c10.91,0,23.75,7.92,28.62,17.69L464,96h64A16,16,0,0,1,544,112Zm-112,0a16,16,0,1,0-16,16A16,16,0,0,0,432,112Z"],
	"dollar-sign": [288, 512, [], "f155", "M209.2 233.4l-108-31.6C88.7 198.2 80 186.5 80 173.5c0-16.3 13.2-29.5 29.5-29.5h66.3c12.2 0 24.2 3.7 34.2 10.5 6.1 4.1 14.3 3.1 19.5-2l34.8-34c7.1-6.9 6.1-18.4-1.8-24.5C238 74.8 207.4 64.1 176 64V16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v48h-2.5C45.8 64-5.4 118.7.5 183.6c4.2 46.1 39.4 83.6 83.8 96.6l102.5 30c12.5 3.7 21.2 15.3 21.2 28.3 0 16.3-13.2 29.5-29.5 29.5h-66.3C100 368 88 364.3 78 357.5c-6.1-4.1-14.3-3.1-19.5 2l-34.8 34c-7.1 6.9-6.1 18.4 1.8 24.5 24.5 19.2 55.1 29.9 86.5 30v48c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-48.2c46.6-.9 90.3-28.6 105.7-72.7 21.5-61.6-14.6-124.8-72.5-141.7z"],
	"dolly": [576, 512, [], "f472", "M294.2 277.7c18 5 34.7 13.4 49.5 24.7l161.5-53.8c8.4-2.8 12.9-11.9 10.1-20.2L454.9 47.2c-2.8-8.4-11.9-12.9-20.2-10.1l-61.1 20.4 33.1 99.4L346 177l-33.1-99.4-61.6 20.5c-8.4 2.8-12.9 11.9-10.1 20.2l53 159.4zm281 48.7L565 296c-2.8-8.4-11.9-12.9-20.2-10.1l-213.5 71.2c-17.2-22-43.6-36.4-73.5-37L158.4 21.9C154 8.8 141.8 0 128 0H16C7.2 0 0 7.2 0 16v32c0 8.8 7.2 16 16 16h88.9l92.2 276.7c-26.1 20.4-41.7 53.6-36 90.5 6.1 39.4 37.9 72.3 77.3 79.2 60.2 10.7 112.3-34.8 113.4-92.6l213.3-71.2c8.3-2.8 12.9-11.8 10.1-20.2zM256 464c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48z"],
	"dolly-flatbed": [640, 512, [], "f474", "M208 320h384c8.8 0 16-7.2 16-16V48c0-8.8-7.2-16-16-16H448v128l-48-32-48 32V32H208c-8.8 0-16 7.2-16 16v256c0 8.8 7.2 16 16 16zm416 64H128V16c0-8.8-7.2-16-16-16H16C7.2 0 0 7.2 0 16v32c0 8.8 7.2 16 16 16h48v368c0 8.8 7.2 16 16 16h82.9c-1.8 5-2.9 10.4-2.9 16 0 26.5 21.5 48 48 48s48-21.5 48-48c0-5.6-1.2-11-2.9-16H451c-1.8 5-2.9 10.4-2.9 16 0 26.5 21.5 48 48 48s48-21.5 48-48c0-5.6-1.2-11-2.9-16H624c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16z"],
	"donate": [512, 512, [], "f4b9", "M256 416c114.9 0 208-93.1 208-208S370.9 0 256 0 48 93.1 48 208s93.1 208 208 208zM233.8 97.4V80.6c0-9.2 7.4-16.6 16.6-16.6h11.1c9.2 0 16.6 7.4 16.6 16.6v17c15.5.8 30.5 6.1 43 15.4 5.6 4.1 6.2 12.3 1.2 17.1L306 145.6c-3.8 3.7-9.5 3.8-14 1-5.4-3.4-11.4-5.1-17.8-5.1h-38.9c-9 0-16.3 8.2-16.3 18.3 0 8.2 5 15.5 12.1 17.6l62.3 18.7c25.7 7.7 43.7 32.4 43.7 60.1 0 34-26.4 61.5-59.1 62.4v16.8c0 9.2-7.4 16.6-16.6 16.6h-11.1c-9.2 0-16.6-7.4-16.6-16.6v-17c-15.5-.8-30.5-6.1-43-15.4-5.6-4.1-6.2-12.3-1.2-17.1l16.3-15.5c3.8-3.7 9.5-3.8 14-1 5.4 3.4 11.4 5.1 17.8 5.1h38.9c9 0 16.3-8.2 16.3-18.3 0-8.2-5-15.5-12.1-17.6l-62.3-18.7c-25.7-7.7-43.7-32.4-43.7-60.1.1-34 26.4-61.5 59.1-62.4zM480 352h-32.5c-19.6 26-44.6 47.7-73 64h63.8c5.3 0 9.6 3.6 9.6 8v16c0 4.4-4.3 8-9.6 8H73.6c-5.3 0-9.6-3.6-9.6-8v-16c0-4.4 4.3-8 9.6-8h63.8c-28.4-16.3-53.3-38-73-64H32c-17.7 0-32 14.3-32 32v96c0 17.7 14.3 32 32 32h448c17.7 0 32-14.3 32-32v-96c0-17.7-14.3-32-32-32z"],
	"door-closed": [640, 512, [], "f52a", "M624 448H512V50.8C512 22.78 490.47 0 464 0H175.99c-26.47 0-48 22.78-48 50.8V448H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h608c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zM415.99 288c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32c.01 17.67-14.32 32-32 32z"],
	"door-open": [640, 512, [], "f52b", "M624 448h-80V113.45C544 86.19 522.47 64 496 64H384v64h96v384h144c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zM312.24 1.01l-192 49.74C105.99 54.44 96 67.7 96 82.92V448H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h336V33.18c0-21.58-19.56-37.41-39.76-32.17zM264 288c-13.25 0-24-14.33-24-32s10.75-32 24-32 24 14.33 24 32-10.75 32-24 32z"],
	"dot-circle": [512, 512, [], "f192", "M256 8C119.033 8 8 119.033 8 256s111.033 248 248 248 248-111.033 248-248S392.967 8 256 8zm80 248c0 44.112-35.888 80-80 80s-80-35.888-80-80 35.888-80 80-80 80 35.888 80 80z"],
	"dove": [512, 512, [], "f4ba", "M288 167.2v-28.1c-28.2-36.3-47.1-79.3-54.1-125.2-2.1-13.5-19-18.8-27.8-8.3-21.1 24.9-37.7 54.1-48.9 86.5 34.2 38.3 80 64.6 130.8 75.1zM400 64c-44.2 0-80 35.9-80 80.1v59.4C215.6 197.3 127 133 87 41.8c-5.5-12.5-23.2-13.2-29-.9C41.4 76 32 115.2 32 156.6c0 70.8 34.1 136.9 85.1 185.9 13.2 12.7 26.1 23.2 38.9 32.8l-143.9 36C1.4 414-3.4 426.4 2.6 435.7 20 462.6 63 508.2 155.8 512c8 .3 16-2.6 22.1-7.9l65.2-56.1H320c88.4 0 160-71.5 160-159.9V128l32-64H400zm0 96.1c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16z"],
	"download": [512, 512, [], "f019", "M216 0h80c13.3 0 24 10.7 24 24v168h87.7c17.8 0 26.7 21.5 14.1 34.1L269.7 378.3c-7.5 7.5-19.8 7.5-27.3 0L90.1 226.1c-12.6-12.6-3.7-34.1 14.1-34.1H192V24c0-13.3 10.7-24 24-24zm296 376v112c0 13.3-10.7 24-24 24H24c-13.3 0-24-10.7-24-24V376c0-13.3 10.7-24 24-24h146.7l49 49c20.1 20.1 52.5 20.1 72.6 0l49-49H488c13.3 0 24 10.7 24 24zm-124 88c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20zm64 0c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20z"],
	"drafting-compass": [512, 512, [], "f568", "M457.01 344.42c-25.05 20.33-52.63 37.18-82.54 49.05l54.38 94.19 53.95 23.04c9.81 4.19 20.89-2.21 22.17-12.8l7.02-58.25-54.98-95.23zm42.49-94.56c4.86-7.67 1.89-17.99-6.05-22.39l-28.07-15.57c-7.48-4.15-16.61-1.46-21.26 5.72C403.01 281.15 332.25 320 256 320c-23.93 0-47.23-4.25-69.41-11.53l67.36-116.68c.7.02 1.34.21 2.04.21s1.35-.19 2.04-.21l51.09 88.5c31.23-8.96 59.56-25.75 82.61-48.92l-51.79-89.71C347.39 128.03 352 112.63 352 96c0-53.02-42.98-96-96-96s-96 42.98-96 96c0 16.63 4.61 32.03 12.05 45.66l-68.3 118.31c-12.55-11.61-23.96-24.59-33.68-39-4.79-7.1-13.97-9.62-21.38-5.33l-27.75 16.07c-7.85 4.54-10.63 14.9-5.64 22.47 15.57 23.64 34.69 44.21 55.98 62.02L0 439.66l7.02 58.25c1.28 10.59 12.36 16.99 22.17 12.8l53.95-23.04 70.8-122.63C186.13 377.28 220.62 384 256 384c99.05 0 190.88-51.01 243.5-134.14zM256 64c17.67 0 32 14.33 32 32s-14.33 32-32 32-32-14.33-32-32 14.33-32 32-32z"],
	"dragon": [640, 512, [], "f6d5", "M18.32 255.78L192 223.96l-91.28 68.69c-10.08 10.08-2.94 27.31 11.31 27.31h222.7c-9.44-26.4-14.73-54.47-14.73-83.38v-42.27l-119.73-87.6c-23.82-15.88-55.29-14.01-77.06 4.59L5.81 227.64c-12.38 10.33-3.45 30.42 12.51 28.14zm556.87 34.1l-100.66-50.31A47.992 47.992 0 0 1 448 196.65v-36.69h64l28.09 22.63c6 6 14.14 9.37 22.63 9.37h30.97a32 32 0 0 0 28.62-17.69l14.31-28.62a32.005 32.005 0 0 0-3.02-33.51l-74.53-99.38C553.02 4.7 543.54 0 533.47 0H296.02c-7.13 0-10.7 8.57-5.66 13.61L352 63.96 292.42 88.8c-5.9 2.95-5.9 11.36 0 14.31L352 127.96v108.62c0 72.08 36.03 139.39 96 179.38-195.59 6.81-344.56 41.01-434.1 60.91C5.78 478.67 0 485.88 0 494.2 0 504 7.95 512 17.76 512h499.08c63.29.01 119.61-47.56 122.99-110.76 2.52-47.28-22.73-90.4-64.64-111.36zM489.18 66.25l45.65 11.41c-2.75 10.91-12.47 18.89-24.13 18.26-12.96-.71-25.85-12.53-21.52-29.67z"],
	"draw-polygon": [448, 512, [], "f5ee", "M384 352c-.35 0-.67.1-1.02.1l-39.2-65.32c5.07-9.17 8.22-19.56 8.22-30.78s-3.14-21.61-8.22-30.78l39.2-65.32c.35.01.67.1 1.02.1 35.35 0 64-28.65 64-64s-28.65-64-64-64c-23.63 0-44.04 12.95-55.12 32H119.12C108.04 44.95 87.63 32 64 32 28.65 32 0 60.65 0 96c0 23.63 12.95 44.04 32 55.12v209.75C12.95 371.96 0 392.37 0 416c0 35.35 28.65 64 64 64 23.63 0 44.04-12.95 55.12-32h209.75c11.09 19.05 31.49 32 55.12 32 35.35 0 64-28.65 64-64 .01-35.35-28.64-64-63.99-64zm-288 8.88V151.12A63.825 63.825 0 0 0 119.12 128h208.36l-38.46 64.1c-.35-.01-.67-.1-1.02-.1-35.35 0-64 28.65-64 64s28.65 64 64 64c.35 0 .67-.1 1.02-.1l38.46 64.1H119.12A63.748 63.748 0 0 0 96 360.88zM272 256c0-8.82 7.18-16 16-16s16 7.18 16 16-7.18 16-16 16-16-7.18-16-16zM400 96c0 8.82-7.18 16-16 16s-16-7.18-16-16 7.18-16 16-16 16 7.18 16 16zM64 80c8.82 0 16 7.18 16 16s-7.18 16-16 16-16-7.18-16-16 7.18-16 16-16zM48 416c0-8.82 7.18-16 16-16s16 7.18 16 16-7.18 16-16 16-16-7.18-16-16zm336 16c-8.82 0-16-7.18-16-16s7.18-16 16-16 16 7.18 16 16-7.18 16-16 16z"],
	"drum": [512, 512, [], "f569", "M431.34 122.05l73.53-47.42a16 16 0 0 0 4.44-22.19l-8.87-13.31a16 16 0 0 0-22.19-4.44l-110.06 71C318.43 96.91 271.22 96 256 96 219.55 96 0 100.55 0 208.15v160.23c0 30.27 27.5 57.68 72 77.86v-101.9a24 24 0 1 1 48 0v118.93c33.05 9.11 71.07 15.06 112 16.73V376.39a24 24 0 1 1 48 0V480c40.93-1.67 78.95-7.62 112-16.73V344.34a24 24 0 1 1 48 0v101.9c44.5-20.18 72-47.59 72-77.86V208.15c0-43.32-35.76-69.76-80.66-86.1zM256 272.24c-114.88 0-208-28.69-208-64.09s93.12-64.08 208-64.08c17.15 0 33.73.71 49.68 1.91l-72.81 47a16 16 0 0 0-4.43 22.19l8.87 13.31a16 16 0 0 0 22.19 4.44l118.64-76.52C430.09 168 464 186.84 464 208.15c0 35.4-93.13 64.09-208 64.09z"],
	"drum-steelpan": [576, 512, [], "f56a", "M288 32C128.94 32 0 89.31 0 160v192c0 70.69 128.94 128 288 128s288-57.31 288-128V160c0-70.69-128.94-128-288-128zm-82.99 158.36c-4.45 16.61-14.54 30.57-28.31 40.48C100.23 217.46 48 190.78 48 160c0-30.16 50.11-56.39 124.04-70.03l25.6 44.34c9.86 17.09 12.48 36.99 7.37 56.05zM288 240c-21.08 0-41.41-1-60.89-2.7 8.06-26.13 32.15-45.3 60.89-45.3s52.83 19.17 60.89 45.3C329.41 239 309.08 240 288 240zm64-144c0 35.29-28.71 64-64 64s-64-28.71-64-64V82.96c20.4-1.88 41.8-2.96 64-2.96s43.6 1.08 64 2.96V96zm46.93 134.9c-13.81-9.91-23.94-23.9-28.4-40.54-5.11-19.06-2.49-38.96 7.38-56.04l25.65-44.42C477.72 103.5 528 129.79 528 160c0 30.83-52.4 57.54-129.07 70.9z"],
	"drumstick-bite": [512, 512, [], "f6d7", "M462.8 49.57a169.44 169.44 0 0 0-239.5 0C187.82 85 160.13 128 160.13 192v85.83l-40.62 40.59c-9.7 9.69-24 11.07-36.78 6a60.33 60.33 0 0 0-65 98.72C33 438.39 54.24 442.7 73.85 438.21c-4.5 19.6-.18 40.83 15.1 56.1a60.35 60.35 0 0 0 98.8-65c-5.09-12.73-3.72-27 6-36.75L234.36 352h85.89a187.87 187.87 0 0 0 61.89-10c-39.64-43.89-39.83-110.23 1.05-151.07 34.38-34.36 86.76-39.46 128.74-16.8 1.3-44.96-14.81-90.28-49.13-124.56z"],
	"dumbbell": [640, 512, [], "f44b", "M104 96H56c-13.3 0-24 10.7-24 24v104H8c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h24v104c0 13.3 10.7 24 24 24h48c13.3 0 24-10.7 24-24V120c0-13.3-10.7-24-24-24zm528 128h-24V120c0-13.3-10.7-24-24-24h-48c-13.3 0-24 10.7-24 24v272c0 13.3 10.7 24 24 24h48c13.3 0 24-10.7 24-24V288h24c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8zM456 32h-48c-13.3 0-24 10.7-24 24v168H256V56c0-13.3-10.7-24-24-24h-48c-13.3 0-24 10.7-24 24v400c0 13.3 10.7 24 24 24h48c13.3 0 24-10.7 24-24V288h128v168c0 13.3 10.7 24 24 24h48c13.3 0 24-10.7 24-24V56c0-13.3-10.7-24-24-24z"],
	"dumpster": [576, 512, [], "f793", "M560 160c10.4 0 18-9.8 15.5-19.9l-24-96C549.7 37 543.3 32 536 32h-98.9l25.6 128H560zM272 32H171.5l-25.6 128H272V32zm132.5 0H304v128h126.1L404.5 32zM16 160h97.3l25.6-128H40c-7.3 0-13.7 5-15.5 12.1l-24 96C-2 150.2 5.6 160 16 160zm544 64h-20l4-32H32l4 32H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h28l20 160v16c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-16h320v16c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-16l20-160h28c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16z"],
	"dumpster-fire": [640, 512, [], "f794", "M418.7 104.1l.2-.2-14.4-72H304v128h60.8c16.2-19.3 34.2-38.2 53.9-55.8zM272 32H171.5l-25.6 128H272V32zm189.3 72.1c18.2 16.3 35.5 33.7 51.1 51.5 5.7-5.6 11.4-11.1 17.3-16.3l21.3-19 21.3 19c1.1.9 2.1 2.1 3.1 3.1-.1-.8.2-1.5 0-2.3l-24-96C549.7 37 543.3 32 536 32h-98.9l12.3 61.5 11.9 10.6zM16 160h97.3l25.6-128H40c-7.3 0-13.7 5-15.5 12.1l-24 96C-2 150.2 5.6 160 16 160zm324.6 32H32l4 32H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h28l20 160v16c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-16h208.8c-30.2-33.7-48.8-77.9-48.8-126.4 0-35.9 19.9-82.9 52.6-129.6zm210.5-28.8c-14.9 13.3-28.3 27.2-40.2 41.2-19.5-25.8-43.6-52-71-76.4-70.2 62.7-120 144.3-120 193.6 0 87.5 71.6 158.4 160 158.4s160-70.9 160-158.4c.1-36.6-37-112.2-88.8-158.4zm-18.6 229.4c-14.7 10.7-32.9 17-52.5 17-49 0-88.9-33.5-88.9-88 0-27.1 16.5-51 49.4-91.9 4.7 5.6 67.1 88.1 67.1 88.1l39.8-47c2.8 4.8 5.4 9.5 7.7 14 18.6 36.7 10.8 83.6-22.6 107.8z"],
	"dungeon": [512, 512, [], "f6d9", "M128.73 195.32l-82.81-51.76c-8.04-5.02-18.99-2.17-22.93 6.45A254.19 254.19 0 0 0 .54 239.28C-.05 248.37 7.59 256 16.69 256h97.13c7.96 0 14.08-6.25 15.01-14.16 1.09-9.33 3.24-18.33 6.24-26.94 2.56-7.34.25-15.46-6.34-19.58zM319.03 8C298.86 2.82 277.77 0 256 0s-42.86 2.82-63.03 8c-9.17 2.35-13.91 12.6-10.39 21.39l37.47 104.03A16.003 16.003 0 0 0 235.1 144h41.8c6.75 0 12.77-4.23 15.05-10.58l37.47-104.03c3.52-8.79-1.22-19.03-10.39-21.39zM112 288H16c-8.84 0-16 7.16-16 16v64c0 8.84 7.16 16 16 16h96c8.84 0 16-7.16 16-16v-64c0-8.84-7.16-16-16-16zm0 128H16c-8.84 0-16 7.16-16 16v64c0 8.84 7.16 16 16 16h96c8.84 0 16-7.16 16-16v-64c0-8.84-7.16-16-16-16zm77.31-283.67l-36.32-90.8c-3.53-8.83-14.13-12.99-22.42-8.31a257.308 257.308 0 0 0-71.61 59.89c-6.06 7.32-3.85 18.48 4.22 23.52l82.93 51.83c6.51 4.07 14.66 2.62 20.11-2.79 5.18-5.15 10.79-9.85 16.79-14.05 6.28-4.41 9.15-12.17 6.3-19.29zM398.18 256h97.13c9.1 0 16.74-7.63 16.15-16.72a254.135 254.135 0 0 0-22.45-89.27c-3.94-8.62-14.89-11.47-22.93-6.45l-82.81 51.76c-6.59 4.12-8.9 12.24-6.34 19.58 3.01 8.61 5.15 17.62 6.24 26.94.93 7.91 7.05 14.16 15.01 14.16zm54.85-162.89a257.308 257.308 0 0 0-71.61-59.89c-8.28-4.68-18.88-.52-22.42 8.31l-36.32 90.8c-2.85 7.12.02 14.88 6.3 19.28 6 4.2 11.61 8.9 16.79 14.05 5.44 5.41 13.6 6.86 20.11 2.79l82.93-51.83c8.07-5.03 10.29-16.19 4.22-23.51zM496 288h-96c-8.84 0-16 7.16-16 16v64c0 8.84 7.16 16 16 16h96c8.84 0 16-7.16 16-16v-64c0-8.84-7.16-16-16-16zm0 128h-96c-8.84 0-16 7.16-16 16v64c0 8.84 7.16 16 16 16h96c8.84 0 16-7.16 16-16v-64c0-8.84-7.16-16-16-16zM240 177.62V472c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V177.62c-5.23-.89-10.52-1.62-16-1.62s-10.77.73-16 1.62zm-64 41.51V472c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V189.36c-12.78 7.45-23.84 17.47-32 29.77zm128-29.77V472c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8V219.13c-8.16-12.3-19.22-22.32-32-29.77z"],
	"edit": [576, 512, [], "f044", "M402.6 83.2l90.2 90.2c3.8 3.8 3.8 10 0 13.8L274.4 405.6l-92.8 10.3c-12.4 1.4-22.9-9.1-21.5-21.5l10.3-92.8L388.8 83.2c3.8-3.8 10-3.8 13.8 0zm162-22.9l-48.8-48.8c-15.2-15.2-39.9-15.2-55.2 0l-35.4 35.4c-3.8 3.8-3.8 10 0 13.8l90.2 90.2c3.8 3.8 10 3.8 13.8 0l35.4-35.4c15.2-15.3 15.2-40 0-55.2zM384 346.2V448H64V128h229.8c3.2 0 6.2-1.3 8.5-3.5l40-40c7.6-7.6 2.2-20.5-8.5-20.5H48C21.5 64 0 85.5 0 112v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V306.2c0-10.7-12.9-16-20.5-8.5l-40 40c-2.2 2.3-3.5 5.3-3.5 8.5z"],
	"egg": [384, 512, [], "f7fb", "M192 0C86 0 0 214 0 320s86 192 192 192 192-86 192-192S298 0 192 0z"],
	"eject": [448, 512, [], "f052", "M448 384v64c0 17.673-14.327 32-32 32H32c-17.673 0-32-14.327-32-32v-64c0-17.673 14.327-32 32-32h384c17.673 0 32 14.327 32 32zM48.053 320h351.886c41.651 0 63.581-49.674 35.383-80.435L259.383 47.558c-19.014-20.743-51.751-20.744-70.767 0L12.67 239.565C-15.475 270.268 6.324 320 48.053 320z"],
	"ellipsis-h": [512, 512, [], "f141", "M328 256c0 39.8-32.2 72-72 72s-72-32.2-72-72 32.2-72 72-72 72 32.2 72 72zm104-72c-39.8 0-72 32.2-72 72s32.2 72 72 72 72-32.2 72-72-32.2-72-72-72zm-352 0c-39.8 0-72 32.2-72 72s32.2 72 72 72 72-32.2 72-72-32.2-72-72-72z"],
	"ellipsis-v": [192, 512, [], "f142", "M96 184c39.8 0 72 32.2 72 72s-32.2 72-72 72-72-32.2-72-72 32.2-72 72-72zM24 80c0 39.8 32.2 72 72 72s72-32.2 72-72S135.8 8 96 8 24 40.2 24 80zm0 352c0 39.8 32.2 72 72 72s72-32.2 72-72-32.2-72-72-72-72 32.2-72 72z"],
	"envelope": [512, 512, [], "f0e0", "M502.3 190.8c3.9-3.1 9.7-.2 9.7 4.7V400c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V195.6c0-5 5.7-7.8 9.7-4.7 22.4 17.4 52.1 39.5 154.1 113.6 21.1 15.4 56.7 47.8 92.2 47.6 35.7.3 72-32.8 92.3-47.6 102-74.1 131.6-96.3 154-113.7zM256 320c23.2.4 56.6-29.2 73.4-41.4 132.7-96.3 142.8-104.7 173.4-128.7 5.8-4.5 9.2-11.5 9.2-18.9v-19c0-26.5-21.5-48-48-48H48C21.5 64 0 85.5 0 112v19c0 7.4 3.4 14.3 9.2 18.9 30.6 23.9 40.7 32.4 173.4 128.7 16.8 12.2 50.2 41.8 73.4 41.4z"],
	"envelope-open": [512, 512, [], "f2b6", "M512 464c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48V200.724a48 48 0 0 1 18.387-37.776c24.913-19.529 45.501-35.365 164.2-121.511C199.412 29.17 232.797-.347 256 .003c23.198-.354 56.596 29.172 73.413 41.433 118.687 86.137 139.303 101.995 164.2 121.512A48 48 0 0 1 512 200.724V464zm-65.666-196.605c-2.563-3.728-7.7-4.595-11.339-1.907-22.845 16.873-55.462 40.705-105.582 77.079-16.825 12.266-50.21 41.781-73.413 41.43-23.211.344-56.559-29.143-73.413-41.43-50.114-36.37-82.734-60.204-105.582-77.079-3.639-2.688-8.776-1.821-11.339 1.907l-9.072 13.196a7.998 7.998 0 0 0 1.839 10.967c22.887 16.899 55.454 40.69 105.303 76.868 20.274 14.781 56.524 47.813 92.264 47.573 35.724.242 71.961-32.771 92.263-47.573 49.85-36.179 82.418-59.97 105.303-76.868a7.998 7.998 0 0 0 1.839-10.967l-9.071-13.196z"],
	"envelope-open-text": [512, 512, [], "f658", "M176 216h160c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16H176c-8.84 0-16 7.16-16 16v16c0 8.84 7.16 16 16 16zm-16 80c0 8.84 7.16 16 16 16h160c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16H176c-8.84 0-16 7.16-16 16v16zm96 121.13c-16.42 0-32.84-5.06-46.86-15.19L0 250.86V464c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V250.86L302.86 401.94c-14.02 10.12-30.44 15.19-46.86 15.19zm237.61-254.18c-8.85-6.94-17.24-13.47-29.61-22.81V96c0-26.51-21.49-48-48-48h-77.55c-3.04-2.2-5.87-4.26-9.04-6.56C312.6 29.17 279.2-.35 256 0c-23.2-.35-56.59 29.17-73.41 41.44-3.17 2.3-6 4.36-9.04 6.56H96c-26.51 0-48 21.49-48 48v44.14c-12.37 9.33-20.76 15.87-29.61 22.81A47.995 47.995 0 0 0 0 200.72v10.65l96 69.35V96h320v184.72l96-69.35v-10.65c0-14.74-6.78-28.67-18.39-37.77z"],
	"envelope-square": [448, 512, [], "f199", "M400 32H48C21.49 32 0 53.49 0 80v352c0 26.51 21.49 48 48 48h352c26.51 0 48-21.49 48-48V80c0-26.51-21.49-48-48-48zM178.117 262.104C87.429 196.287 88.353 196.121 64 177.167V152c0-13.255 10.745-24 24-24h272c13.255 0 24 10.745 24 24v25.167c-24.371 18.969-23.434 19.124-114.117 84.938-10.5 7.655-31.392 26.12-45.883 25.894-14.503.218-35.367-18.227-45.883-25.895zM384 217.775V360c0 13.255-10.745 24-24 24H88c-13.255 0-24-10.745-24-24V217.775c13.958 10.794 33.329 25.236 95.303 70.214 14.162 10.341 37.975 32.145 64.694 32.01 26.887.134 51.037-22.041 64.72-32.025 61.958-44.965 81.325-59.406 95.283-70.199z"],
	"equals": [448, 512, [], "f52c", "M416 304H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h384c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32zm0-192H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h384c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z"],
	"eraser": [512, 512, [], "f12d", "M497.941 273.941c18.745-18.745 18.745-49.137 0-67.882l-160-160c-18.745-18.745-49.136-18.746-67.883 0l-256 256c-18.745 18.745-18.745 49.137 0 67.882l96 96A48.004 48.004 0 0 0 144 480h356c6.627 0 12-5.373 12-12v-40c0-6.627-5.373-12-12-12H355.883l142.058-142.059zm-302.627-62.627l137.373 137.373L265.373 416H150.628l-80-80 124.686-124.686z"],
	"ethernet": [512, 512, [], "f796", "M496 192h-48v-48c0-8.8-7.2-16-16-16h-48V80c0-8.8-7.2-16-16-16H144c-8.8 0-16 7.2-16 16v48H80c-8.8 0-16 7.2-16 16v48H16c-8.8 0-16 7.2-16 16v224c0 8.8 7.2 16 16 16h80V320h32v128h64V320h32v128h64V320h32v128h64V320h32v128h80c8.8 0 16-7.2 16-16V208c0-8.8-7.2-16-16-16z"],
	"euro-sign": [320, 512, [], "f153", "M310.706 413.765c-1.314-6.63-7.835-10.872-14.424-9.369-10.692 2.439-27.422 5.413-45.426 5.413-56.763 0-101.929-34.79-121.461-85.449h113.689a12 12 0 0 0 11.708-9.369l6.373-28.36c1.686-7.502-4.019-14.631-11.708-14.631H115.22c-1.21-14.328-1.414-28.287.137-42.245H261.95a12 12 0 0 0 11.723-9.434l6.512-29.755c1.638-7.484-4.061-14.566-11.723-14.566H130.184c20.633-44.991 62.69-75.03 117.619-75.03 14.486 0 28.564 2.25 37.851 4.145 6.216 1.268 12.347-2.498 14.002-8.623l11.991-44.368c1.822-6.741-2.465-13.616-9.326-14.917C290.217 34.912 270.71 32 249.635 32 152.451 32 74.03 92.252 45.075 176H12c-6.627 0-12 5.373-12 12v29.755c0 6.627 5.373 12 12 12h21.569c-1.009 13.607-1.181 29.287-.181 42.245H12c-6.627 0-12 5.373-12 12v28.36c0 6.627 5.373 12 12 12h30.114C67.139 414.692 145.264 480 249.635 480c26.301 0 48.562-4.544 61.101-7.788 6.167-1.595 10.027-7.708 8.788-13.957l-8.818-44.49z"],
	"exchange-alt": [512, 512, [], "f362", "M0 168v-16c0-13.255 10.745-24 24-24h360V80c0-21.367 25.899-32.042 40.971-16.971l80 80c9.372 9.373 9.372 24.569 0 33.941l-80 80C409.956 271.982 384 261.456 384 240v-48H24c-13.255 0-24-10.745-24-24zm488 152H128v-48c0-21.314-25.862-32.08-40.971-16.971l-80 80c-9.372 9.373-9.372 24.569 0 33.941l80 80C102.057 463.997 128 453.437 128 432v-48h360c13.255 0 24-10.745 24-24v-16c0-13.255-10.745-24-24-24z"],
	"exclamation": [192, 512, [], "f12a", "M176 432c0 44.112-35.888 80-80 80s-80-35.888-80-80 35.888-80 80-80 80 35.888 80 80zM25.26 25.199l13.6 272C39.499 309.972 50.041 320 62.83 320h66.34c12.789 0 23.331-10.028 23.97-22.801l13.6-272C167.425 11.49 156.496 0 142.77 0H49.23C35.504 0 24.575 11.49 25.26 25.199z"],
	"exclamation-circle": [512, 512, [], "f06a", "M504 256c0 136.997-111.043 248-248 248S8 392.997 8 256C8 119.083 119.043 8 256 8s248 111.083 248 248zm-248 50c-25.405 0-46 20.595-46 46s20.595 46 46 46 46-20.595 46-46-20.595-46-46-46zm-43.673-165.346l7.418 136c.347 6.364 5.609 11.346 11.982 11.346h48.546c6.373 0 11.635-4.982 11.982-11.346l7.418-136c.375-6.874-5.098-12.654-11.982-12.654h-63.383c-6.884 0-12.356 5.78-11.981 12.654z"],
	"exclamation-triangle": [576, 512, [], "f071", "M569.517 440.013C587.975 472.007 564.806 512 527.94 512H48.054c-36.937 0-59.999-40.055-41.577-71.987L246.423 23.985c18.467-32.009 64.72-31.951 83.154 0l239.94 416.028zM288 354c-25.405 0-46 20.595-46 46s20.595 46 46 46 46-20.595 46-46-20.595-46-46-46zm-43.673-165.346l7.418 136c.347 6.364 5.609 11.346 11.982 11.346h48.546c6.373 0 11.635-4.982 11.982-11.346l7.418-136c.375-6.874-5.098-12.654-11.982-12.654h-63.383c-6.884 0-12.356 5.78-11.981 12.654z"],
	"expand": [448, 512, [], "f065", "M0 180V56c0-13.3 10.7-24 24-24h124c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12H64v84c0 6.6-5.4 12-12 12H12c-6.6 0-12-5.4-12-12zM288 44v40c0 6.6 5.4 12 12 12h84v84c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12V56c0-13.3-10.7-24-24-24H300c-6.6 0-12 5.4-12 12zm148 276h-40c-6.6 0-12 5.4-12 12v84h-84c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h124c13.3 0 24-10.7 24-24V332c0-6.6-5.4-12-12-12zM160 468v-40c0-6.6-5.4-12-12-12H64v-84c0-6.6-5.4-12-12-12H12c-6.6 0-12 5.4-12 12v124c0 13.3 10.7 24 24 24h124c6.6 0 12-5.4 12-12z"],
	"expand-alt": [448, 512, [], "f424", "M212.686 315.314L120 408l32.922 31.029c15.12 15.12 4.412 40.971-16.97 40.971h-112C10.697 480 0 469.255 0 456V344c0-21.382 25.803-32.09 40.922-16.971L72 360l92.686-92.686c6.248-6.248 16.379-6.248 22.627 0l25.373 25.373c6.249 6.248 6.249 16.378 0 22.627zm22.628-118.628L328 104l-32.922-31.029C279.958 57.851 290.666 32 312.048 32h112C437.303 32 448 42.745 448 56v112c0 21.382-25.803 32.09-40.922 16.971L376 152l-92.686 92.686c-6.248 6.248-16.379 6.248-22.627 0l-25.373-25.373c-6.249-6.248-6.249-16.378 0-22.627z"],
	"expand-arrows-alt": [448, 512, [], "f31e", "M448 344v112a23.94 23.94 0 0 1-24 24H312c-21.39 0-32.09-25.9-17-41l36.2-36.2L224 295.6 116.77 402.9 153 439c15.09 15.1 4.39 41-17 41H24a23.94 23.94 0 0 1-24-24V344c0-21.4 25.89-32.1 41-17l36.19 36.2L184.46 256 77.18 148.7 41 185c-15.1 15.1-41 4.4-41-17V56a23.94 23.94 0 0 1 24-24h112c21.39 0 32.09 25.9 17 41l-36.2 36.2L224 216.4l107.23-107.3L295 73c-15.09-15.1-4.39-41 17-41h112a23.94 23.94 0 0 1 24 24v112c0 21.4-25.89 32.1-41 17l-36.19-36.2L263.54 256l107.28 107.3L407 327.1c15.1-15.2 41-4.5 41 16.9z"],
	"external-link-alt": [512, 512, [], "f35d", "M432,320H400a16,16,0,0,0-16,16V448H64V128H208a16,16,0,0,0,16-16V80a16,16,0,0,0-16-16H48A48,48,0,0,0,0,112V464a48,48,0,0,0,48,48H400a48,48,0,0,0,48-48V336A16,16,0,0,0,432,320ZM488,0h-128c-21.37,0-32.05,25.91-17,41l35.73,35.73L135,320.37a24,24,0,0,0,0,34L157.67,377a24,24,0,0,0,34,0L435.28,133.32,471,169c15,15,41,4.5,41-17V24A24,24,0,0,0,488,0Z"],
	"external-link-square-alt": [448, 512, [], "f360", "M448 80v352c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48V80c0-26.51 21.49-48 48-48h352c26.51 0 48 21.49 48 48zm-88 16H248.029c-21.313 0-32.08 25.861-16.971 40.971l31.984 31.987L67.515 364.485c-4.686 4.686-4.686 12.284 0 16.971l31.029 31.029c4.687 4.686 12.285 4.686 16.971 0l195.526-195.526 31.988 31.991C358.058 263.977 384 253.425 384 231.979V120c0-13.255-10.745-24-24-24z"],
	"eye": [576, 512, [], "f06e", "M572.52 241.4C518.29 135.59 410.93 64 288 64S57.68 135.64 3.48 241.41a32.35 32.35 0 0 0 0 29.19C57.71 376.41 165.07 448 288 448s230.32-71.64 284.52-177.41a32.35 32.35 0 0 0 0-29.19zM288 400a144 144 0 1 1 144-144 143.93 143.93 0 0 1-144 144zm0-240a95.31 95.31 0 0 0-25.31 3.79 47.85 47.85 0 0 1-66.9 66.9A95.78 95.78 0 1 0 288 160z"],
	"eye-dropper": [512, 512, [], "f1fb", "M50.75 333.25c-12 12-18.75 28.28-18.75 45.26V424L0 480l32 32 56-32h45.49c16.97 0 33.25-6.74 45.25-18.74l126.64-126.62-128-128L50.75 333.25zM483.88 28.12c-37.47-37.5-98.28-37.5-135.75 0l-77.09 77.09-13.1-13.1c-9.44-9.44-24.65-9.31-33.94 0l-40.97 40.97c-9.37 9.37-9.37 24.57 0 33.94l161.94 161.94c9.44 9.44 24.65 9.31 33.94 0L419.88 288c9.37-9.37 9.37-24.57 0-33.94l-13.1-13.1 77.09-77.09c37.51-37.48 37.51-98.26.01-135.75z"],
	"eye-slash": [640, 512, [], "f070", "M320 400c-75.85 0-137.25-58.71-142.9-133.11L72.2 185.82c-13.79 17.3-26.48 35.59-36.72 55.59a32.35 32.35 0 0 0 0 29.19C89.71 376.41 197.07 448 320 448c26.91 0 52.87-4 77.89-10.46L346 397.39a144.13 144.13 0 0 1-26 2.61zm313.82 58.1l-110.55-85.44a331.25 331.25 0 0 0 81.25-102.07 32.35 32.35 0 0 0 0-29.19C550.29 135.59 442.93 64 320 64a308.15 308.15 0 0 0-147.32 37.7L45.46 3.37A16 16 0 0 0 23 6.18L3.37 31.45A16 16 0 0 0 6.18 53.9l588.36 454.73a16 16 0 0 0 22.46-2.81l19.64-25.27a16 16 0 0 0-2.82-22.45zm-183.72-142l-39.3-30.38A94.75 94.75 0 0 0 416 256a94.76 94.76 0 0 0-121.31-92.21A47.65 47.65 0 0 1 304 192a46.64 46.64 0 0 1-1.54 10l-73.61-56.89A142.31 142.31 0 0 1 320 112a143.92 143.92 0 0 1 144 144c0 21.63-5.29 41.79-13.9 60.11z"],
	"fan": [512, 512, [], "f863", "M352.57 128c-28.09 0-54.09 4.52-77.06 12.86l12.41-123.11C289 7.31 279.81-1.18 269.33.13 189.63 10.13 128 77.64 128 159.43c0 28.09 4.52 54.09 12.86 77.06L17.75 224.08C7.31 223-1.18 232.19.13 242.67c10 79.7 77.51 141.33 159.3 141.33 28.09 0 54.09-4.52 77.06-12.86l-12.41 123.11c-1.05 10.43 8.11 18.93 18.59 17.62 79.7-10 141.33-77.51 141.33-159.3 0-28.09-4.52-54.09-12.86-77.06l123.11 12.41c10.44 1.05 18.93-8.11 17.62-18.59-10-79.7-77.51-141.33-159.3-141.33zM256 288a32 32 0 1 1 32-32 32 32 0 0 1-32 32z"],
	"fast-backward": [512, 512, [], "f049", "M0 436V76c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v151.9L235.5 71.4C256.1 54.3 288 68.6 288 96v131.9L459.5 71.4C480.1 54.3 512 68.6 512 96v320c0 27.4-31.9 41.7-52.5 24.6L288 285.3V416c0 27.4-31.9 41.7-52.5 24.6L64 285.3V436c0 6.6-5.4 12-12 12H12c-6.6 0-12-5.4-12-12z"],
	"fast-forward": [512, 512, [], "f050", "M512 76v360c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12V284.1L276.5 440.6c-20.6 17.2-52.5 2.8-52.5-24.6V284.1L52.5 440.6C31.9 457.8 0 443.4 0 416V96c0-27.4 31.9-41.7 52.5-24.6L224 226.8V96c0-27.4 31.9-41.7 52.5-24.6L448 226.8V76c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12z"],
	"faucet": [512, 512, [], "e005", "M352,256H313.39c-15.71-13.44-35.46-23.07-57.39-28V180.44l-32-3.38-32,3.38V228c-21.93,5-41.68,14.6-57.39,28H16A16,16,0,0,0,0,272v96a16,16,0,0,0,16,16h92.79C129.38,421.73,173,448,224,448s94.62-26.27,115.21-64H352a32,32,0,0,1,32,32,32,32,0,0,0,32,32h64a32,32,0,0,0,32-32A160,160,0,0,0,352,256ZM81.59,159.91l142.41-15,142.41,15c9.42,1,17.59-6.81,17.59-16.8V112.89c0-10-8.17-17.8-17.59-16.81L256,107.74V80a16,16,0,0,0-16-16H208a16,16,0,0,0-16,16v27.74L81.59,96.08C72.17,95.09,64,102.9,64,112.89v30.22C64,153.1,72.17,160.91,81.59,159.91Z"],
	"fax": [512, 512, [], "f1ac", "M480 160V77.25a32 32 0 0 0-9.38-22.63L425.37 9.37A32 32 0 0 0 402.75 0H160a32 32 0 0 0-32 32v448a32 32 0 0 0 32 32h320a32 32 0 0 0 32-32V192a32 32 0 0 0-32-32zM288 432a16 16 0 0 1-16 16h-32a16 16 0 0 1-16-16v-32a16 16 0 0 1 16-16h32a16 16 0 0 1 16 16zm0-128a16 16 0 0 1-16 16h-32a16 16 0 0 1-16-16v-32a16 16 0 0 1 16-16h32a16 16 0 0 1 16 16zm128 128a16 16 0 0 1-16 16h-32a16 16 0 0 1-16-16v-32a16 16 0 0 1 16-16h32a16 16 0 0 1 16 16zm0-128a16 16 0 0 1-16 16h-32a16 16 0 0 1-16-16v-32a16 16 0 0 1 16-16h32a16 16 0 0 1 16 16zm0-112H192V64h160v48a16 16 0 0 0 16 16h48zM64 128H32a32 32 0 0 0-32 32v320a32 32 0 0 0 32 32h32a32 32 0 0 0 32-32V160a32 32 0 0 0-32-32z"],
	"feather": [512, 512, [], "f52d", "M467.14 44.84c-62.55-62.48-161.67-64.78-252.28 25.73-78.61 78.52-60.98 60.92-85.75 85.66-60.46 60.39-70.39 150.83-63.64 211.17l178.44-178.25c6.26-6.25 16.4-6.25 22.65 0s6.25 16.38 0 22.63L7.04 471.03c-9.38 9.37-9.38 24.57 0 33.94 9.38 9.37 24.6 9.37 33.98 0l66.1-66.03C159.42 454.65 279 457.11 353.95 384h-98.19l147.57-49.14c49.99-49.93 36.38-36.18 46.31-46.86h-97.78l131.54-43.8c45.44-74.46 34.31-148.84-16.26-199.36z"],
	"feather-alt": [512, 512, [], "f56b", "M512 0C460.22 3.56 96.44 38.2 71.01 287.61c-3.09 26.66-4.84 53.44-5.99 80.24l178.87-178.69c6.25-6.25 16.4-6.25 22.65 0s6.25 16.38 0 22.63L7.04 471.03c-9.38 9.37-9.38 24.57 0 33.94 9.38 9.37 24.59 9.37 33.98 0l57.13-57.07c42.09-.14 84.15-2.53 125.96-7.36 53.48-5.44 97.02-26.47 132.58-56.54H255.74l146.79-48.88c11.25-14.89 21.37-30.71 30.45-47.12h-81.14l106.54-53.21C500.29 132.86 510.19 26.26 512 0z"],
	"female": [256, 512, [], "f182", "M128 0c35.346 0 64 28.654 64 64s-28.654 64-64 64c-35.346 0-64-28.654-64-64S92.654 0 128 0m119.283 354.179l-48-192A24 24 0 0 0 176 144h-11.36c-22.711 10.443-49.59 10.894-73.28 0H80a24 24 0 0 0-23.283 18.179l-48 192C4.935 369.305 16.383 384 32 384h56v104c0 13.255 10.745 24 24 24h32c13.255 0 24-10.745 24-24V384h56c15.591 0 27.071-14.671 23.283-29.821z"],
	"fighter-jet": [640, 512, [], "f0fb", "M544 224l-128-16-48-16h-24L227.158 44h39.509C278.333 44 288 41.375 288 38s-9.667-6-21.333-6H152v12h16v164h-48l-66.667-80H18.667L8 138.667V208h8v16h48v2.666l-64 8v42.667l64 8V288H16v16H8v69.333L18.667 384h34.667L120 304h48v164h-16v12h114.667c11.667 0 21.333-2.625 21.333-6s-9.667-6-21.333-6h-39.509L344 320h24l48-16 128-16c96-21.333 96-26.583 96-32 0-5.417 0-10.667-96-32z"],
	"file": [384, 512, [], "f15b", "M224 136V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H248c-13.2 0-24-10.8-24-24zm160-14.1v6.1H256V0h6.1c6.4 0 12.5 2.5 17 7l97.9 98c4.5 4.5 7 10.6 7 16.9z"],
	"file-alt": [384, 512, [], "f15c", "M224 136V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H248c-13.2 0-24-10.8-24-24zm64 236c0 6.6-5.4 12-12 12H108c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h168c6.6 0 12 5.4 12 12v8zm0-64c0 6.6-5.4 12-12 12H108c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h168c6.6 0 12 5.4 12 12v8zm0-72v8c0 6.6-5.4 12-12 12H108c-6.6 0-12-5.4-12-12v-8c0-6.6 5.4-12 12-12h168c6.6 0 12 5.4 12 12zm96-114.1v6.1H256V0h6.1c6.4 0 12.5 2.5 17 7l97.9 98c4.5 4.5 7 10.6 7 16.9z"],
	"file-archive": [384, 512, [], "f1c6", "M377 105L279.1 7c-4.5-4.5-10.6-7-17-7H256v128h128v-6.1c0-6.3-2.5-12.4-7-16.9zM128.4 336c-17.9 0-32.4 12.1-32.4 27 0 15 14.6 27 32.5 27s32.4-12.1 32.4-27-14.6-27-32.5-27zM224 136V0h-63.6v32h-32V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H248c-13.2 0-24-10.8-24-24zM95.9 32h32v32h-32zm32.3 384c-33.2 0-58-30.4-51.4-62.9L96.4 256v-32h32v-32h-32v-32h32v-32h-32V96h32V64h32v32h-32v32h32v32h-32v32h32v32h-32v32h22.1c5.7 0 10.7 4.1 11.8 9.7l17.3 87.7c6.4 32.4-18.4 62.6-51.4 62.6z"],
	"file-audio": [384, 512, [], "f1c7", "M224 136V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H248c-13.2 0-24-10.8-24-24zm-64 268c0 10.7-12.9 16-20.5 8.5L104 376H76c-6.6 0-12-5.4-12-12v-56c0-6.6 5.4-12 12-12h28l35.5-36.5c7.6-7.6 20.5-2.2 20.5 8.5v136zm33.2-47.6c9.1-9.3 9.1-24.1 0-33.4-22.1-22.8 12.2-56.2 34.4-33.5 27.2 27.9 27.2 72.4 0 100.4-21.8 22.3-56.9-10.4-34.4-33.5zm86-117.1c54.4 55.9 54.4 144.8 0 200.8-21.8 22.4-57-10.3-34.4-33.5 36.2-37.2 36.3-96.5 0-133.8-22.1-22.8 12.3-56.3 34.4-33.5zM384 121.9v6.1H256V0h6.1c6.4 0 12.5 2.5 17 7l97.9 98c4.5 4.5 7 10.6 7 16.9z"],
	"file-code": [384, 512, [], "f1c9", "M384 121.941V128H256V0h6.059c6.365 0 12.47 2.529 16.971 7.029l97.941 97.941A24.005 24.005 0 0 1 384 121.941zM248 160c-13.2 0-24-10.8-24-24V0H24C10.745 0 0 10.745 0 24v464c0 13.255 10.745 24 24 24h336c13.255 0 24-10.745 24-24V160H248zM123.206 400.505a5.4 5.4 0 0 1-7.633.246l-64.866-60.812a5.4 5.4 0 0 1 0-7.879l64.866-60.812a5.4 5.4 0 0 1 7.633.246l19.579 20.885a5.4 5.4 0 0 1-.372 7.747L101.65 336l40.763 35.874a5.4 5.4 0 0 1 .372 7.747l-19.579 20.884zm51.295 50.479l-27.453-7.97a5.402 5.402 0 0 1-3.681-6.692l61.44-211.626a5.402 5.402 0 0 1 6.692-3.681l27.452 7.97a5.4 5.4 0 0 1 3.68 6.692l-61.44 211.626a5.397 5.397 0 0 1-6.69 3.681zm160.792-111.045l-64.866 60.812a5.4 5.4 0 0 1-7.633-.246l-19.58-20.885a5.4 5.4 0 0 1 .372-7.747L284.35 336l-40.763-35.874a5.4 5.4 0 0 1-.372-7.747l19.58-20.885a5.4 5.4 0 0 1 7.633-.246l64.866 60.812a5.4 5.4 0 0 1-.001 7.879z"],
	"file-contract": [384, 512, [], "f56c", "M224 136V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H248c-13.2 0-24-10.8-24-24zM64 72c0-4.42 3.58-8 8-8h80c4.42 0 8 3.58 8 8v16c0 4.42-3.58 8-8 8H72c-4.42 0-8-3.58-8-8V72zm0 64c0-4.42 3.58-8 8-8h80c4.42 0 8 3.58 8 8v16c0 4.42-3.58 8-8 8H72c-4.42 0-8-3.58-8-8v-16zm192.81 248H304c8.84 0 16 7.16 16 16s-7.16 16-16 16h-47.19c-16.45 0-31.27-9.14-38.64-23.86-2.95-5.92-8.09-6.52-10.17-6.52s-7.22.59-10.02 6.19l-7.67 15.34a15.986 15.986 0 0 1-14.31 8.84c-.38 0-.75-.02-1.14-.05-6.45-.45-12-4.75-14.03-10.89L144 354.59l-10.61 31.88c-5.89 17.66-22.38 29.53-41 29.53H80c-8.84 0-16-7.16-16-16s7.16-16 16-16h12.39c4.83 0 9.11-3.08 10.64-7.66l18.19-54.64c3.3-9.81 12.44-16.41 22.78-16.41s19.48 6.59 22.77 16.41l13.88 41.64c19.77-16.19 54.05-9.7 66 14.16 2.02 4.06 5.96 6.5 10.16 6.5zM377 105L279.1 7c-4.5-4.5-10.6-7-17-7H256v128h128v-6.1c0-6.3-2.5-12.4-7-16.9z"],
	"file-csv": [384, 512, [], "f6dd", "M224 136V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H248c-13.2 0-24-10.8-24-24zm-96 144c0 4.42-3.58 8-8 8h-8c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h8c4.42 0 8 3.58 8 8v16c0 4.42-3.58 8-8 8h-8c-26.51 0-48-21.49-48-48v-32c0-26.51 21.49-48 48-48h8c4.42 0 8 3.58 8 8v16zm44.27 104H160c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h12.27c5.95 0 10.41-3.5 10.41-6.62 0-1.3-.75-2.66-2.12-3.84l-21.89-18.77c-8.47-7.22-13.33-17.48-13.33-28.14 0-21.3 19.02-38.62 42.41-38.62H200c4.42 0 8 3.58 8 8v16c0 4.42-3.58 8-8 8h-12.27c-5.95 0-10.41 3.5-10.41 6.62 0 1.3.75 2.66 2.12 3.84l21.89 18.77c8.47 7.22 13.33 17.48 13.33 28.14.01 21.29-19 38.62-42.39 38.62zM256 264v20.8c0 20.27 5.7 40.17 16 56.88 10.3-16.7 16-36.61 16-56.88V264c0-4.42 3.58-8 8-8h16c4.42 0 8 3.58 8 8v20.8c0 35.48-12.88 68.89-36.28 94.09-3.02 3.25-7.27 5.11-11.72 5.11s-8.7-1.86-11.72-5.11c-23.4-25.2-36.28-58.61-36.28-94.09V264c0-4.42 3.58-8 8-8h16c4.42 0 8 3.58 8 8zm121-159L279.1 7c-4.5-4.5-10.6-7-17-7H256v128h128v-6.1c0-6.3-2.5-12.4-7-16.9z"],
	"file-download": [384, 512, [], "f56d", "M224 136V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H248c-13.2 0-24-10.8-24-24zm76.45 211.36l-96.42 95.7c-6.65 6.61-17.39 6.61-24.04 0l-96.42-95.7C73.42 337.29 80.54 320 94.82 320H160v-80c0-8.84 7.16-16 16-16h32c8.84 0 16 7.16 16 16v80h65.18c14.28 0 21.4 17.29 11.27 27.36zM377 105L279.1 7c-4.5-4.5-10.6-7-17-7H256v128h128v-6.1c0-6.3-2.5-12.4-7-16.9z"],
	"file-excel": [384, 512, [], "f1c3", "M224 136V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H248c-13.2 0-24-10.8-24-24zm60.1 106.5L224 336l60.1 93.5c5.1 8-.6 18.5-10.1 18.5h-34.9c-4.4 0-8.5-2.4-10.6-6.3C208.9 405.5 192 373 192 373c-6.4 14.8-10 20-36.6 68.8-2.1 3.9-6.1 6.3-10.5 6.3H110c-9.5 0-15.2-10.5-10.1-18.5l60.3-93.5-60.3-93.5c-5.2-8 .6-18.5 10.1-18.5h34.8c4.4 0 8.5 2.4 10.6 6.3 26.1 48.8 20 33.6 36.6 68.5 0 0 6.1-11.7 36.6-68.5 2.1-3.9 6.2-6.3 10.6-6.3H274c9.5-.1 15.2 10.4 10.1 18.4zM384 121.9v6.1H256V0h6.1c6.4 0 12.5 2.5 17 7l97.9 98c4.5 4.5 7 10.6 7 16.9z"],
	"file-export": [576, 512, [], "f56e", "M384 121.9c0-6.3-2.5-12.4-7-16.9L279.1 7c-4.5-4.5-10.6-7-17-7H256v128h128zM571 308l-95.7-96.4c-10.1-10.1-27.4-3-27.4 11.3V288h-64v64h64v65.2c0 14.3 17.3 21.4 27.4 11.3L571 332c6.6-6.6 6.6-17.4 0-24zm-379 28v-32c0-8.8 7.2-16 16-16h176V160H248c-13.2 0-24-10.8-24-24V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V352H208c-8.8 0-16-7.2-16-16z"],
	"file-image": [384, 512, [], "f1c5", "M384 121.941V128H256V0h6.059a24 24 0 0 1 16.97 7.029l97.941 97.941a24.002 24.002 0 0 1 7.03 16.971zM248 160c-13.2 0-24-10.8-24-24V0H24C10.745 0 0 10.745 0 24v464c0 13.255 10.745 24 24 24h336c13.255 0 24-10.745 24-24V160H248zm-135.455 16c26.51 0 48 21.49 48 48s-21.49 48-48 48-48-21.49-48-48 21.491-48 48-48zm208 240h-256l.485-48.485L104.545 328c4.686-4.686 11.799-4.201 16.485.485L160.545 368 264.06 264.485c4.686-4.686 12.284-4.686 16.971 0L320.545 304v112z"],
	"file-import": [512, 512, [], "f56f", "M16 288c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h112v-64zm489-183L407.1 7c-4.5-4.5-10.6-7-17-7H384v128h128v-6.1c0-6.3-2.5-12.4-7-16.9zm-153 31V0H152c-13.3 0-24 10.7-24 24v264h128v-65.2c0-14.3 17.3-21.4 27.4-11.3L379 308c6.6 6.7 6.6 17.4 0 24l-95.7 96.4c-10.1 10.1-27.4 3-27.4-11.3V352H128v136c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H376c-13.2 0-24-10.8-24-24z"],
	"file-invoice": [384, 512, [], "f570", "M288 256H96v64h192v-64zm89-151L279.1 7c-4.5-4.5-10.6-7-17-7H256v128h128v-6.1c0-6.3-2.5-12.4-7-16.9zm-153 31V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H248c-13.2 0-24-10.8-24-24zM64 72c0-4.42 3.58-8 8-8h80c4.42 0 8 3.58 8 8v16c0 4.42-3.58 8-8 8H72c-4.42 0-8-3.58-8-8V72zm0 64c0-4.42 3.58-8 8-8h80c4.42 0 8 3.58 8 8v16c0 4.42-3.58 8-8 8H72c-4.42 0-8-3.58-8-8v-16zm256 304c0 4.42-3.58 8-8 8h-80c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h80c4.42 0 8 3.58 8 8v16zm0-200v96c0 8.84-7.16 16-16 16H80c-8.84 0-16-7.16-16-16v-96c0-8.84 7.16-16 16-16h224c8.84 0 16 7.16 16 16z"],
	"file-invoice-dollar": [384, 512, [], "f571", "M377 105L279.1 7c-4.5-4.5-10.6-7-17-7H256v128h128v-6.1c0-6.3-2.5-12.4-7-16.9zm-153 31V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H248c-13.2 0-24-10.8-24-24zM64 72c0-4.42 3.58-8 8-8h80c4.42 0 8 3.58 8 8v16c0 4.42-3.58 8-8 8H72c-4.42 0-8-3.58-8-8V72zm0 80v-16c0-4.42 3.58-8 8-8h80c4.42 0 8 3.58 8 8v16c0 4.42-3.58 8-8 8H72c-4.42 0-8-3.58-8-8zm144 263.88V440c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8v-24.29c-11.29-.58-22.27-4.52-31.37-11.35-3.9-2.93-4.1-8.77-.57-12.14l11.75-11.21c2.77-2.64 6.89-2.76 10.13-.73 3.87 2.42 8.26 3.72 12.82 3.72h28.11c6.5 0 11.8-5.92 11.8-13.19 0-5.95-3.61-11.19-8.77-12.73l-45-13.5c-18.59-5.58-31.58-23.42-31.58-43.39 0-24.52 19.05-44.44 42.67-45.07V232c0-4.42 3.58-8 8-8h16c4.42 0 8 3.58 8 8v24.29c11.29.58 22.27 4.51 31.37 11.35 3.9 2.93 4.1 8.77.57 12.14l-11.75 11.21c-2.77 2.64-6.89 2.76-10.13.73-3.87-2.43-8.26-3.72-12.82-3.72h-28.11c-6.5 0-11.8 5.92-11.8 13.19 0 5.95 3.61 11.19 8.77 12.73l45 13.5c18.59 5.58 31.58 23.42 31.58 43.39 0 24.53-19.05 44.44-42.67 45.07z"],
	"file-medical": [384, 512, [], "f477", "M377 105L279.1 7c-4.5-4.5-10.6-7-17-7H256v128h128v-6.1c0-6.3-2.5-12.4-7-16.9zm-153 31V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H248c-13.2 0-24-10.8-24-24zm64 160v48c0 4.4-3.6 8-8 8h-56v56c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8v-56h-56c-4.4 0-8-3.6-8-8v-48c0-4.4 3.6-8 8-8h56v-56c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v56h56c4.4 0 8 3.6 8 8z"],
	"file-medical-alt": [448, 512, [], "f478", "M288 136V0H88C74.7 0 64 10.7 64 24v232H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h140.9c3 0 5.8 1.7 7.2 4.4l19.9 39.8 56.8-113.7c2.9-5.9 11.4-5.9 14.3 0l34.7 69.5H352c8.8 0 16 7.2 16 16s-7.2 16-16 16h-89.9L240 275.8l-56.8 113.7c-2.9 5.9-11.4 5.9-14.3 0L134.1 320H64v168c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H312c-13.2 0-24-10.8-24-24zm153-31L343.1 7c-4.5-4.5-10.6-7-17-7H320v128h128v-6.1c0-6.3-2.5-12.4-7-16.9z"],
	"file-pdf": [384, 512, [], "f1c1", "M181.9 256.1c-5-16-4.9-46.9-2-46.9 8.4 0 7.6 36.9 2 46.9zm-1.7 47.2c-7.7 20.2-17.3 43.3-28.4 62.7 18.3-7 39-17.2 62.9-21.9-12.7-9.6-24.9-23.4-34.5-40.8zM86.1 428.1c0 .8 13.2-5.4 34.9-40.2-6.7 6.3-29.1 24.5-34.9 40.2zM248 160h136v328c0 13.3-10.7 24-24 24H24c-13.3 0-24-10.7-24-24V24C0 10.7 10.7 0 24 0h200v136c0 13.2 10.8 24 24 24zm-8 171.8c-20-12.2-33.3-29-42.7-53.8 4.5-18.5 11.6-46.6 6.2-64.2-4.7-29.4-42.4-26.5-47.8-6.8-5 18.3-.4 44.1 8.1 77-11.6 27.6-28.7 64.6-40.8 85.8-.1 0-.1.1-.2.1-27.1 13.9-73.6 44.5-54.5 68 5.6 6.9 16 10 21.5 10 17.9 0 35.7-18 61.1-61.8 25.8-8.5 54.1-19.1 79-23.2 21.7 11.8 47.1 19.5 64 19.5 29.2 0 31.2-32 19.7-43.4-13.9-13.6-54.3-9.7-73.6-7.2zM377 105L279 7c-4.5-4.5-10.6-7-17-7h-6v128h128v-6.1c0-6.3-2.5-12.4-7-16.9zm-74.1 255.3c4.1-2.7-2.5-11.9-42.8-9 37.1 15.8 42.8 9 42.8 9z"],
	"file-powerpoint": [384, 512, [], "f1c4", "M193.7 271.2c8.8 0 15.5 2.7 20.3 8.1 9.6 10.9 9.8 32.7-.2 44.1-4.9 5.6-11.9 8.5-21.1 8.5h-26.9v-60.7h27.9zM377 105L279 7c-4.5-4.5-10.6-7-17-7h-6v128h128v-6.1c0-6.3-2.5-12.4-7-16.9zm-153 31V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H248c-13.2 0-24-10.8-24-24zm53 165.2c0 90.3-88.8 77.6-111.1 77.6V436c0 6.6-5.4 12-12 12h-30.8c-6.6 0-12-5.4-12-12V236.2c0-6.6 5.4-12 12-12h81c44.5 0 72.9 32.8 72.9 77z"],
	"file-prescription": [384, 512, [], "f572", "M224 136V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H248c-13.2 0-24-10.8-24-24zm68.53 179.48l11.31 11.31c6.25 6.25 6.25 16.38 0 22.63l-29.9 29.9L304 409.38c6.25 6.25 6.25 16.38 0 22.63l-11.31 11.31c-6.25 6.25-16.38 6.25-22.63 0L240 413.25l-30.06 30.06c-6.25 6.25-16.38 6.25-22.63 0L176 432c-6.25-6.25-6.25-16.38 0-22.63l30.06-30.06L146.74 320H128v48c0 8.84-7.16 16-16 16H96c-8.84 0-16-7.16-16-16V208c0-8.84 7.16-16 16-16h80c35.35 0 64 28.65 64 64 0 24.22-13.62 45.05-33.46 55.92L240 345.38l29.9-29.9c6.25-6.25 16.38-6.25 22.63 0zM176 272h-48v-32h48c8.82 0 16 7.18 16 16s-7.18 16-16 16zm208-150.1v6.1H256V0h6.1c6.4 0 12.5 2.5 17 7l97.9 98c4.5 4.5 7 10.6 7 16.9z"],
	"file-signature": [576, 512, [], "f573", "M218.17 424.14c-2.95-5.92-8.09-6.52-10.17-6.52s-7.22.59-10.02 6.19l-7.67 15.34c-6.37 12.78-25.03 11.37-29.48-2.09L144 386.59l-10.61 31.88c-5.89 17.66-22.38 29.53-41 29.53H80c-8.84 0-16-7.16-16-16s7.16-16 16-16h12.39c4.83 0 9.11-3.08 10.64-7.66l18.19-54.64c3.3-9.81 12.44-16.41 22.78-16.41s19.48 6.59 22.77 16.41l13.88 41.64c19.75-16.19 54.06-9.7 66 14.16 1.89 3.78 5.49 5.95 9.36 6.26v-82.12l128-127.09V160H248c-13.2 0-24-10.8-24-24V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24v-40l-128-.11c-16.12-.31-30.58-9.28-37.83-23.75zM384 121.9c0-6.3-2.5-12.4-7-16.9L279.1 7c-4.5-4.5-10.6-7-17-7H256v128h128v-6.1zm-96 225.06V416h68.99l161.68-162.78-67.88-67.88L288 346.96zm280.54-179.63l-31.87-31.87c-9.94-9.94-26.07-9.94-36.01 0l-27.25 27.25 67.88 67.88 27.25-27.25c9.95-9.94 9.95-26.07 0-36.01z"],
	"file-upload": [384, 512, [], "f574", "M224 136V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H248c-13.2 0-24-10.8-24-24zm65.18 216.01H224v80c0 8.84-7.16 16-16 16h-32c-8.84 0-16-7.16-16-16v-80H94.82c-14.28 0-21.41-17.29-11.27-27.36l96.42-95.7c6.65-6.61 17.39-6.61 24.04 0l96.42 95.7c10.15 10.07 3.03 27.36-11.25 27.36zM377 105L279.1 7c-4.5-4.5-10.6-7-17-7H256v128h128v-6.1c0-6.3-2.5-12.4-7-16.9z"],
	"file-video": [384, 512, [], "f1c8", "M384 121.941V128H256V0h6.059c6.365 0 12.47 2.529 16.971 7.029l97.941 97.941A24.005 24.005 0 0 1 384 121.941zM224 136V0H24C10.745 0 0 10.745 0 24v464c0 13.255 10.745 24 24 24h336c13.255 0 24-10.745 24-24V160H248c-13.2 0-24-10.8-24-24zm96 144.016v111.963c0 21.445-25.943 31.998-40.971 16.971L224 353.941V392c0 13.255-10.745 24-24 24H88c-13.255 0-24-10.745-24-24V280c0-13.255 10.745-24 24-24h112c13.255 0 24 10.745 24 24v38.059l55.029-55.013c15.011-15.01 40.971-4.491 40.971 16.97z"],
	"file-word": [384, 512, [], "f1c2", "M224 136V0H24C10.7 0 0 10.7 0 24v464c0 13.3 10.7 24 24 24h336c13.3 0 24-10.7 24-24V160H248c-13.2 0-24-10.8-24-24zm57.1 120H305c7.7 0 13.4 7.1 11.7 14.7l-38 168c-1.2 5.5-6.1 9.3-11.7 9.3h-38c-5.5 0-10.3-3.8-11.6-9.1-25.8-103.5-20.8-81.2-25.6-110.5h-.5c-1.1 14.3-2.4 17.4-25.6 110.5-1.3 5.3-6.1 9.1-11.6 9.1H117c-5.6 0-10.5-3.9-11.7-9.4l-37.8-168c-1.7-7.5 4-14.6 11.7-14.6h24.5c5.7 0 10.7 4 11.8 9.7 15.6 78 20.1 109.5 21 122.2 1.6-10.2 7.3-32.7 29.4-122.7 1.3-5.4 6.1-9.1 11.7-9.1h29.1c5.6 0 10.4 3.8 11.7 9.2 24 100.4 28.8 124 29.6 129.4-.2-11.2-2.6-17.8 21.6-129.2 1-5.6 5.9-9.5 11.5-9.5zM384 121.9v6.1H256V0h6.1c6.4 0 12.5 2.5 17 7l97.9 98c4.5 4.5 7 10.6 7 16.9z"],
	"fill": [512, 512, [], "f575", "M502.63 217.06L294.94 9.37C288.69 3.12 280.5 0 272.31 0s-16.38 3.12-22.62 9.37l-81.58 81.58L81.93 4.77c-6.24-6.25-16.38-6.25-22.62 0L36.69 27.38c-6.24 6.25-6.24 16.38 0 22.63l86.19 86.18-94.76 94.76c-37.49 37.49-37.49 98.26 0 135.75l117.19 117.19c18.75 18.74 43.31 28.12 67.87 28.12 24.57 0 49.13-9.37 67.88-28.12l221.57-221.57c12.49-12.5 12.49-32.76 0-45.26zm-116.22 70.97H65.93c1.36-3.84 3.57-7.98 7.43-11.83l13.15-13.15 81.61-81.61 58.61 58.6c12.49 12.49 32.75 12.49 45.24 0 12.49-12.49 12.49-32.75 0-45.24l-58.61-58.6 58.95-58.95 162.45 162.44-48.35 48.34z"],
	"fill-drip": [576, 512, [], "f576", "M512 320s-64 92.65-64 128c0 35.35 28.66 64 64 64s64-28.65 64-64-64-128-64-128zm-9.37-102.94L294.94 9.37C288.69 3.12 280.5 0 272.31 0s-16.38 3.12-22.62 9.37l-81.58 81.58L81.93 4.76c-6.25-6.25-16.38-6.25-22.62 0L36.69 27.38c-6.24 6.25-6.24 16.38 0 22.62l86.19 86.18-94.76 94.76c-37.49 37.48-37.49 98.26 0 135.75l117.19 117.19c18.74 18.74 43.31 28.12 67.87 28.12 24.57 0 49.13-9.37 67.87-28.12l221.57-221.57c12.5-12.5 12.5-32.75.01-45.25zm-116.22 70.97H65.93c1.36-3.84 3.57-7.98 7.43-11.83l13.15-13.15 81.61-81.61 58.6 58.6c12.49 12.49 32.75 12.49 45.24 0s12.49-32.75 0-45.24l-58.6-58.6 58.95-58.95 162.44 162.44-48.34 48.34z"],
	"film": [512, 512, [], "f008", "M488 64h-8v20c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12V64H96v20c0 6.6-5.4 12-12 12H44c-6.6 0-12-5.4-12-12V64h-8C10.7 64 0 74.7 0 88v336c0 13.3 10.7 24 24 24h8v-20c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v20h320v-20c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v20h8c13.3 0 24-10.7 24-24V88c0-13.3-10.7-24-24-24zM96 372c0 6.6-5.4 12-12 12H44c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40zm0-96c0 6.6-5.4 12-12 12H44c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40zm0-96c0 6.6-5.4 12-12 12H44c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40zm272 208c0 6.6-5.4 12-12 12H156c-6.6 0-12-5.4-12-12v-96c0-6.6 5.4-12 12-12h200c6.6 0 12 5.4 12 12v96zm0-168c0 6.6-5.4 12-12 12H156c-6.6 0-12-5.4-12-12v-96c0-6.6 5.4-12 12-12h200c6.6 0 12 5.4 12 12v96zm112 152c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40zm0-96c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40zm0-96c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40z"],
	"filter": [512, 512, [], "f0b0", "M487.976 0H24.028C2.71 0-8.047 25.866 7.058 40.971L192 225.941V432c0 7.831 3.821 15.17 10.237 19.662l80 55.98C298.02 518.69 320 507.493 320 487.98V225.941l184.947-184.97C520.021 25.896 509.338 0 487.976 0z"],
	"fingerprint": [512, 512, [], "f577", "M256.12 245.96c-13.25 0-24 10.74-24 24 1.14 72.25-8.14 141.9-27.7 211.55-2.73 9.72 2.15 30.49 23.12 30.49 10.48 0 20.11-6.92 23.09-17.52 13.53-47.91 31.04-125.41 29.48-224.52.01-13.25-10.73-24-23.99-24zm-.86-81.73C194 164.16 151.25 211.3 152.1 265.32c.75 47.94-3.75 95.91-13.37 142.55-2.69 12.98 5.67 25.69 18.64 28.36 13.05 2.67 25.67-5.66 28.36-18.64 10.34-50.09 15.17-101.58 14.37-153.02-.41-25.95 19.92-52.49 54.45-52.34 31.31.47 57.15 25.34 57.62 55.47.77 48.05-2.81 96.33-10.61 143.55-2.17 13.06 6.69 25.42 19.76 27.58 19.97 3.33 26.81-15.1 27.58-19.77 8.28-50.03 12.06-101.21 11.27-152.11-.88-55.8-47.94-101.88-104.91-102.72zm-110.69-19.78c-10.3-8.34-25.37-6.8-33.76 3.48-25.62 31.5-39.39 71.28-38.75 112 .59 37.58-2.47 75.27-9.11 112.05-2.34 13.05 6.31 25.53 19.36 27.89 20.11 3.5 27.07-14.81 27.89-19.36 7.19-39.84 10.5-80.66 9.86-121.33-.47-29.88 9.2-57.88 28-80.97 8.35-10.28 6.79-25.39-3.49-33.76zm109.47-62.33c-15.41-.41-30.87 1.44-45.78 4.97-12.89 3.06-20.87 15.98-17.83 28.89 3.06 12.89 16 20.83 28.89 17.83 11.05-2.61 22.47-3.77 34-3.69 75.43 1.13 137.73 61.5 138.88 134.58.59 37.88-1.28 76.11-5.58 113.63-1.5 13.17 7.95 25.08 21.11 26.58 16.72 1.95 25.51-11.88 26.58-21.11a929.06 929.06 0 0 0 5.89-119.85c-1.56-98.75-85.07-180.33-186.16-181.83zm252.07 121.45c-2.86-12.92-15.51-21.2-28.61-18.27-12.94 2.86-21.12 15.66-18.26 28.61 4.71 21.41 4.91 37.41 4.7 61.6-.11 13.27 10.55 24.09 23.8 24.2h.2c13.17 0 23.89-10.61 24-23.8.18-22.18.4-44.11-5.83-72.34zm-40.12-90.72C417.29 43.46 337.6 1.29 252.81.02 183.02-.82 118.47 24.91 70.46 72.94 24.09 119.37-.9 181.04.14 246.65l-.12 21.47c-.39 13.25 10.03 24.31 23.28 24.69.23.02.48.02.72.02 12.92 0 23.59-10.3 23.97-23.3l.16-23.64c-.83-52.5 19.16-101.86 56.28-139 38.76-38.8 91.34-59.67 147.68-58.86 69.45 1.03 134.73 35.56 174.62 92.39 7.61 10.86 22.56 13.45 33.42 5.86 10.84-7.62 13.46-22.59 5.84-33.43z"],
	"fire": [384, 512, [], "f06d", "M216 23.86c0-23.8-30.65-32.77-44.15-13.04C48 191.85 224 200 224 288c0 35.63-29.11 64.46-64.85 63.99-35.17-.45-63.15-29.77-63.15-64.94v-85.51c0-21.7-26.47-32.23-41.43-16.5C27.8 213.16 0 261.33 0 320c0 105.87 86.13 192 192 192s192-86.13 192-192c0-170.29-168-193-168-296.14z"],
	"fire-alt": [448, 512, [], "f7e4", "M323.56 51.2c-20.8 19.3-39.58 39.59-56.22 59.97C240.08 73.62 206.28 35.53 168 0 69.74 91.17 0 209.96 0 281.6 0 408.85 100.29 512 224 512s224-103.15 224-230.4c0-53.27-51.98-163.14-124.44-230.4zm-19.47 340.65C282.43 407.01 255.72 416 226.86 416 154.71 416 96 368.26 96 290.75c0-38.61 24.31-72.63 72.79-130.75 6.93 7.98 98.83 125.34 98.83 125.34l58.63-66.88c4.14 6.85 7.91 13.55 11.27 19.97 27.35 52.19 15.81 118.97-33.43 153.42z"],
	"fire-extinguisher": [448, 512, [], "f134", "M434.027 26.329l-168 28C254.693 56.218 256 67.8 256 72h-58.332C208.353 36.108 181.446 0 144 0c-39.435 0-66.368 39.676-52.228 76.203-52.039 13.051-75.381 54.213-90.049 90.884-4.923 12.307 1.063 26.274 13.37 31.197 12.317 4.926 26.279-1.075 31.196-13.37C75.058 112.99 106.964 120 168 120v27.076c-41.543 10.862-72 49.235-72 94.129V488c0 13.255 10.745 24 24 24h144c13.255 0 24-10.745 24-24V240c0-44.731-30.596-82.312-72-92.97V120h40c0 2.974-1.703 15.716 10.027 17.671l168 28C441.342 166.89 448 161.25 448 153.834V38.166c0-7.416-6.658-13.056-13.973-11.837zM144 72c-8.822 0-16-7.178-16-16s7.178-16 16-16 16 7.178 16 16-7.178 16-16 16z"],
	"first-aid": [576, 512, [], "f479", "M0 80v352c0 26.5 21.5 48 48 48h48V32H48C21.5 32 0 53.5 0 80zm128 400h320V32H128v448zm64-248c0-4.4 3.6-8 8-8h56v-56c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v56h56c4.4 0 8 3.6 8 8v48c0 4.4-3.6 8-8 8h-56v56c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8v-56h-56c-4.4 0-8-3.6-8-8v-48zM528 32h-48v448h48c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48z"],
	"fish": [576, 512, [], "f578", "M327.1 96c-89.97 0-168.54 54.77-212.27 101.63L27.5 131.58c-12.13-9.18-30.24.6-27.14 14.66L24.54 256 .35 365.77c-3.1 14.06 15.01 23.83 27.14 14.66l87.33-66.05C158.55 361.23 237.13 416 327.1 416 464.56 416 576 288 576 256S464.56 96 327.1 96zm87.43 184c-13.25 0-24-10.75-24-24 0-13.26 10.75-24 24-24 13.26 0 24 10.74 24 24 0 13.25-10.75 24-24 24z"],
	"fist-raised": [384, 512, [], "f6de", "M255.98 160V16c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16v146.93c5.02-1.78 10.34-2.93 15.97-2.93h48.03zm128 95.99c-.01-35.34-28.66-63.99-63.99-63.99H207.85c-8.78 0-15.9 7.07-15.9 15.85v.56c0 26.27 21.3 47.59 47.57 47.59h35.26c9.68 0 13.2 3.58 13.2 8v16.2c0 4.29-3.59 7.78-7.88 8-44.52 2.28-64.16 24.71-96.05 72.55l-6.31 9.47a7.994 7.994 0 0 1-11.09 2.22l-13.31-8.88a7.994 7.994 0 0 1-2.22-11.09l6.31-9.47c15.73-23.6 30.2-43.26 47.31-58.08-17.27-5.51-31.4-18.12-38.87-34.45-6.59 3.41-13.96 5.52-21.87 5.52h-32c-12.34 0-23.49-4.81-32-12.48C71.48 251.19 60.33 256 48 256H16c-5.64 0-10.97-1.15-16-2.95v77.93c0 33.95 13.48 66.5 37.49 90.51L63.99 448v64h255.98v-63.96l35.91-35.92A96.035 96.035 0 0 0 384 344.21l-.02-88.22zm-32.01-90.09V48c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16v112h32c11.28 0 21.94 2.31 32 5.9zM16 224h32c8.84 0 16-7.16 16-16V80c0-8.84-7.16-16-16-16H16C7.16 64 0 71.16 0 80v128c0 8.84 7.16 16 16 16zm95.99 0h32c8.84 0 16-7.16 16-16V48c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16v160c0 8.84 7.16 16 16 16z"],
	"flag": [512, 512, [], "f024", "M349.565 98.783C295.978 98.783 251.721 64 184.348 64c-24.955 0-47.309 4.384-68.045 12.013a55.947 55.947 0 0 0 3.586-23.562C118.117 24.015 94.806 1.206 66.338.048 34.345-1.254 8 24.296 8 56c0 19.026 9.497 35.825 24 45.945V488c0 13.255 10.745 24 24 24h16c13.255 0 24-10.745 24-24v-94.4c28.311-12.064 63.582-22.122 114.435-22.122 53.588 0 97.844 34.783 165.217 34.783 48.169 0 86.667-16.294 122.505-40.858C506.84 359.452 512 349.571 512 339.045v-243.1c0-23.393-24.269-38.87-45.485-29.016-34.338 15.948-76.454 31.854-116.95 31.854z"],
	"flag-checkered": [512, 512, [], "f11e", "M243.2 189.9V258c26.1 5.9 49.3 15.6 73.6 22.3v-68.2c-26-5.8-49.4-15.5-73.6-22.2zm223.3-123c-34.3 15.9-76.5 31.9-117 31.9C296 98.8 251.7 64 184.3 64c-25 0-47.3 4.4-68 12 2.8-7.3 4.1-15.2 3.6-23.6C118.1 24 94.8 1.2 66.3 0 34.3-1.3 8 24.3 8 56c0 19 9.5 35.8 24 45.9V488c0 13.3 10.7 24 24 24h16c13.3 0 24-10.7 24-24v-94.4c28.3-12.1 63.6-22.1 114.4-22.1 53.6 0 97.8 34.8 165.2 34.8 48.2 0 86.7-16.3 122.5-40.9 8.7-6 13.8-15.8 13.8-26.4V95.9c.1-23.3-24.2-38.8-45.4-29zM169.6 325.5c-25.8 2.7-50 8.2-73.6 16.6v-70.5c26.2-9.3 47.5-15 73.6-17.4zM464 191c-23.6 9.8-46.3 19.5-73.6 23.9V286c24.8-3.4 51.4-11.8 73.6-26v70.5c-25.1 16.1-48.5 24.7-73.6 27.1V286c-27 3.7-47.9 1.5-73.6-5.6v67.4c-23.9-7.4-47.3-16.7-73.6-21.3V258c-19.7-4.4-40.8-6.8-73.6-3.8v-70c-22.4 3.1-44.6 10.2-73.6 20.9v-70.5c33.2-12.2 50.1-19.8 73.6-22v71.6c27-3.7 48.4-1.3 73.6 5.7v-67.4c23.7 7.4 47.2 16.7 73.6 21.3v68.4c23.7 5.3 47.6 6.9 73.6 2.7V143c27-4.8 52.3-13.6 73.6-22.5z"],
	"flag-usa": [512, 512, [], "f74d", "M32 0C14.3 0 0 14.3 0 32v464c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V32C64 14.3 49.7 0 32 0zm267.9 303.6c-57.2-15.1-111.7-28.8-203.9 11.1V384c185.7-92.2 221.7 53.3 397.5-23.1 11.4-5 18.5-16.5 18.5-28.8v-36c-43.6 17.3-80.2 24.1-112.1 24.1-37.4-.1-68.9-8.4-100-16.6zm0-96c-57.2-15.1-111.7-28.8-203.9 11.1v61.5c94.8-37.6 154.6-22.7 212.1-7.6 57.2 15.1 111.7 28.8 203.9-11.1V200c-43.6 17.3-80.2 24.1-112.1 24.1-37.4 0-68.9-8.3-100-16.5zm9.5-125.9c51.8 15.6 97.4 29 202.6-20.1V30.8c0-25.1-26.8-38.1-49.4-26.6C291.3 91.5 305.4-62.2 96 32.4v151.9c94.8-37.5 154.6-22.7 212.1-7.6 57.2 15 111.7 28.7 203.9-11.1V96.7c-53.6 23.5-93.3 31.4-126.1 31.4s-59-7.8-85.7-15.9c-4-1.2-8.1-2.4-12.1-3.5V75.5c7.2 2 14.3 4.1 21.3 6.2zM160 128.1c-8.8 0-16-7.1-16-16 0-8.8 7.2-16 16-16s16 7.1 16 16-7.2 16-16 16zm0-55.8c-8.8 0-16-7.1-16-16 0-8.8 7.2-16 16-16s16 7.1 16 16c0 8.8-7.2 16-16 16zm64 47.9c-8.8 0-16-7.1-16-16 0-8.8 7.2-16 16-16s16 7.1 16 16c0 8.8-7.2 16-16 16zm0-55.9c-8.8 0-16-7.1-16-16 0-8.8 7.2-16 16-16s16 7.1 16 16c0 8.8-7.2 16-16 16z"],
	"flask": [448, 512, [], "f0c3", "M437.2 403.5L320 215V64h8c13.3 0 24-10.7 24-24V24c0-13.3-10.7-24-24-24H120c-13.3 0-24 10.7-24 24v16c0 13.3 10.7 24 24 24h8v151L10.8 403.5C-18.5 450.6 15.3 512 70.9 512h306.2c55.7 0 89.4-61.5 60.1-108.5zM137.9 320l48.2-77.6c3.7-5.2 5.8-11.6 5.8-18.4V64h64v160c0 6.9 2.2 13.2 5.8 18.4l48.2 77.6h-172z"],
	"flushed": [496, 512, [], "f579", "M344 200c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zm-192 0c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zM248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zM80 224c0-39.8 32.2-72 72-72s72 32.2 72 72-32.2 72-72 72-72-32.2-72-72zm232 176H184c-21.2 0-21.2-32 0-32h128c21.2 0 21.2 32 0 32zm32-104c-39.8 0-72-32.2-72-72s32.2-72 72-72 72 32.2 72 72-32.2 72-72 72z"],
	"folder": [512, 512, [], "f07b", "M464 128H272l-64-64H48C21.49 64 0 85.49 0 112v288c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V176c0-26.51-21.49-48-48-48z"],
	"folder-minus": [512, 512, [], "f65d", "M464 128H272l-64-64H48C21.49 64 0 85.49 0 112v288c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V176c0-26.51-21.49-48-48-48zm-96 168c0 8.84-7.16 16-16 16H160c-8.84 0-16-7.16-16-16v-16c0-8.84 7.16-16 16-16h192c8.84 0 16 7.16 16 16v16z"],
	"folder-open": [576, 512, [], "f07c", "M572.694 292.093L500.27 416.248A63.997 63.997 0 0 1 444.989 448H45.025c-18.523 0-30.064-20.093-20.731-36.093l72.424-124.155A64 64 0 0 1 152 256h399.964c18.523 0 30.064 20.093 20.73 36.093zM152 224h328v-48c0-26.51-21.49-48-48-48H272l-64-64H48C21.49 64 0 85.49 0 112v278.046l69.077-118.418C86.214 242.25 117.989 224 152 224z"],
	"folder-plus": [512, 512, [], "f65e", "M464,128H272L208,64H48A48,48,0,0,0,0,112V400a48,48,0,0,0,48,48H464a48,48,0,0,0,48-48V176A48,48,0,0,0,464,128ZM359.5,296a16,16,0,0,1-16,16h-64v64a16,16,0,0,1-16,16h-16a16,16,0,0,1-16-16V312h-64a16,16,0,0,1-16-16V280a16,16,0,0,1,16-16h64V200a16,16,0,0,1,16-16h16a16,16,0,0,1,16,16v64h64a16,16,0,0,1,16,16Z"],
	"font": [448, 512, [], "f031", "M432 416h-23.41L277.88 53.69A32 32 0 0 0 247.58 32h-47.16a32 32 0 0 0-30.3 21.69L39.41 416H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h128a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-19.58l23.3-64h152.56l23.3 64H304a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h128a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zM176.85 272L224 142.51 271.15 272z"],
	"font-awesome-logo-full": [3992, 512, ["Font Awesome"], "f4e6", "M454.6 0H57.4C25.9 0 0 25.9 0 57.4v397.3C0 486.1 25.9 512 57.4 512h397.3c31.4 0 57.4-25.9 57.4-57.4V57.4C512 25.9 486.1 0 454.6 0zm-58.9 324.9c0 4.8-4.1 6.9-8.9 8.9-19.2 8.1-39.7 15.7-61.5 15.7-40.5 0-68.7-44.8-163.2 2.5v51.8c0 30.3-45.7 30.2-45.7 0v-250c-9-7-15-17.9-15-30.3 0-21 17.1-38.2 38.2-38.2 21 0 38.2 17.1 38.2 38.2 0 12.2-5.8 23.2-14.9 30.2v21c37.1-12 65.5-34.4 146.1-3.4 26.6 11.4 68.7-15.7 76.5-15.7 5.5 0 10.3 4.1 10.3 8.9v160.4zm432.9-174.2h-137v70.1H825c39.8 0 40.4 62.2 0 62.2H691.6v105.6c0 45.5-70.7 46.4-70.7 0V128.3c0-22 18-39.8 39.8-39.8h167.8c39.6 0 40.5 62.2.1 62.2zm191.1 23.4c-169.3 0-169.1 252.4 0 252.4 169.9 0 169.9-252.4 0-252.4zm0 196.1c-81.6 0-82.1-139.8 0-139.8 82.5 0 82.4 139.8 0 139.8zm372.4 53.4c-17.5 0-31.4-13.9-31.4-31.4v-117c0-62.4-72.6-52.5-99.1-16.4v133.4c0 41.5-63.3 41.8-63.3 0V208c0-40 63.1-41.6 63.1 0v3.4c43.3-51.6 162.4-60.4 162.4 39.3v141.5c.3 30.4-31.5 31.4-31.7 31.4zm179.7 2.9c-44.3 0-68.3-22.9-68.3-65.8V235.2H1488c-35.6 0-36.7-55.3 0-55.3h15.5v-37.3c0-41.3 63.8-42.1 63.8 0v37.5h24.9c35.4 0 35.7 55.3 0 55.3h-24.9v108.5c0 29.6 26.1 26.3 27.4 26.3 31.4 0 52.6 56.3-22.9 56.3zM1992 123c-19.5-50.2-95.5-50-114.5 0-107.3 275.7-99.5 252.7-99.5 262.8 0 42.8 58.3 51.2 72.1 14.4l13.5-35.9H2006l13 35.9c14.2 37.7 72.1 27.2 72.1-14.4 0-10.1 5.3 6.8-99.1-262.8zm-108.9 179.1l51.7-142.9 51.8 142.9h-103.5zm591.3-85.6l-53.7 176.3c-12.4 41.2-72 41-84 0l-42.3-135.9-42.3 135.9c-12.4 40.9-72 41.2-84.5 0l-54.2-176.3c-12.5-39.4 49.8-56.1 60.2-16.9L2213 342l45.3-139.5c10.9-32.7 59.6-34.7 71.2 0l45.3 139.5 39.3-142.4c10.3-38.3 72.6-23.8 60.3 16.9zm275.4 75.1c0-42.4-33.9-117.5-119.5-117.5-73.2 0-124.4 56.3-124.4 126 0 77.2 55.3 126.4 128.5 126.4 31.7 0 93-11.5 93-39.8 0-18.3-21.1-31.5-39.3-22.4-49.4 26.2-109 8.4-115.9-43.8h148.3c16.3 0 29.3-13.4 29.3-28.9zM2571 277.7c9.5-73.4 113.9-68.6 118.6 0H2571zm316.7 148.8c-31.4 0-81.6-10.5-96.6-31.9-12.4-17 2.5-39.8 21.8-39.8 16.3 0 36.8 22.9 77.7 22.9 27.4 0 40.4-11 40.4-25.8 0-39.8-142.9-7.4-142.9-102 0-40.4 35.3-75.7 98.6-75.7 31.4 0 74.1 9.9 87.6 29.4 10.8 14.8-1.4 36.2-20.9 36.2-15.1 0-26.7-17.3-66.2-17.3-22.9 0-37.8 10.5-37.8 23.8 0 35.9 142.4 6 142.4 103.1-.1 43.7-37.4 77.1-104.1 77.1zm266.8-252.4c-169.3 0-169.1 252.4 0 252.4 170.1 0 169.6-252.4 0-252.4zm0 196.1c-81.8 0-82-139.8 0-139.8 82.5 0 82.4 139.8 0 139.8zm476.9 22V268.7c0-53.8-61.4-45.8-85.7-10.5v134c0 41.3-63.8 42.1-63.8 0V268.7c0-52.1-59.5-47.4-85.7-10.1v133.6c0 41.5-63.3 41.8-63.3 0V208c0-40 63.1-41.6 63.1 0v3.4c9.9-14.4 41.8-37.3 78.6-37.3 35.3 0 57.7 16.4 66.7 43.8 13.9-21.8 45.8-43.8 82.6-43.8 44.3 0 70.7 23.4 70.7 72.7v145.3c.5 17.3-13.5 31.4-31.9 31.4 3.5.1-31.3 1.1-31.3-31.3zM3992 291.6c0-42.4-32.4-117.5-117.9-117.5-73.2 0-127.5 56.3-127.5 126 0 77.2 58.3 126.4 131.6 126.4 31.7 0 91.5-11.5 91.5-39.8 0-18.3-21.1-31.5-39.3-22.4-49.4 26.2-110.5 8.4-117.5-43.8h149.8c16.3 0 29.1-13.4 29.3-28.9zm-180.5-13.9c9.7-74.4 115.9-68.3 120.1 0h-120.1z"],
	"football-ball": [496, 512, [], "f44e", "M481.5 60.3c-4.8-18.2-19.1-32.5-37.3-37.4C420.3 16.5 383 8.9 339.4 8L496 164.8c-.8-43.5-8.2-80.6-14.5-104.5zm-467 391.4c4.8 18.2 19.1 32.5 37.3 37.4 23.9 6.4 61.2 14 104.8 14.9L0 347.2c.8 43.5 8.2 80.6 14.5 104.5zM4.2 283.4L220.4 500c132.5-19.4 248.8-118.7 271.5-271.4L275.6 12C143.1 31.4 26.8 130.7 4.2 283.4zm317.3-123.6c3.1-3.1 8.2-3.1 11.3 0l11.3 11.3c3.1 3.1 3.1 8.2 0 11.3l-28.3 28.3 28.3 28.3c3.1 3.1 3.1 8.2 0 11.3l-11.3 11.3c-3.1 3.1-8.2 3.1-11.3 0l-28.3-28.3-22.6 22.7 28.3 28.3c3.1 3.1 3.1 8.2 0 11.3l-11.3 11.3c-3.1 3.1-8.2 3.1-11.3 0L248 278.6l-22.6 22.6 28.3 28.3c3.1 3.1 3.1 8.2 0 11.3l-11.3 11.3c-3.1 3.1-8.2 3.1-11.3 0l-28.3-28.3-28.3 28.3c-3.1 3.1-8.2 3.1-11.3 0l-11.3-11.3c-3.1-3.1-3.1-8.2 0-11.3l28.3-28.3-28.3-28.2c-3.1-3.1-3.1-8.2 0-11.3l11.3-11.3c3.1-3.1 8.2-3.1 11.3 0l28.3 28.3 22.6-22.6-28.3-28.3c-3.1-3.1-3.1-8.2 0-11.3l11.3-11.3c3.1-3.1 8.2-3.1 11.3 0l28.3 28.3 22.6-22.6-28.3-28.3c-3.1-3.1-3.1-8.2 0-11.3l11.3-11.3c3.1-3.1 8.2-3.1 11.3 0l28.3 28.3 28.3-28.5z"],
	"forward": [512, 512, [], "f04e", "M500.5 231.4l-192-160C287.9 54.3 256 68.6 256 96v320c0 27.4 31.9 41.8 52.5 24.6l192-160c15.3-12.8 15.3-36.4 0-49.2zm-256 0l-192-160C31.9 54.3 0 68.6 0 96v320c0 27.4 31.9 41.8 52.5 24.6l192-160c15.3-12.8 15.3-36.4 0-49.2z"],
	"frog": [576, 512, [], "f52e", "M446.53 97.43C439.67 60.23 407.19 32 368 32c-39.23 0-71.72 28.29-78.54 65.54C126.75 112.96-.5 250.12 0 416.98.11 451.9 29.08 480 64 480h304c8.84 0 16-7.16 16-16 0-17.67-14.33-32-32-32h-79.49l35.8-48.33c24.14-36.23 10.35-88.28-33.71-106.6-23.89-9.93-51.55-4.65-72.24 10.88l-32.76 24.59c-7.06 5.31-17.09 3.91-22.41-3.19-5.3-7.08-3.88-17.11 3.19-22.41l34.78-26.09c36.84-27.66 88.28-27.62 125.13 0 10.87 8.15 45.87 39.06 40.8 93.21L469.62 480H560c8.84 0 16-7.16 16-16 0-17.67-14.33-32-32-32h-53.63l-98.52-104.68 154.44-86.65A58.16 58.16 0 0 0 576 189.94c0-21.4-11.72-40.95-30.48-51.23-40.56-22.22-98.99-41.28-98.99-41.28zM368 136c-13.26 0-24-10.75-24-24 0-13.26 10.74-24 24-24 13.25 0 24 10.74 24 24 0 13.25-10.75 24-24 24z"],
	"frown": [496, 512, [], "f119", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm80 168c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32zm-160 0c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32zm170.2 218.2C315.8 367.4 282.9 352 248 352s-67.8 15.4-90.2 42.2c-13.5 16.3-38.1-4.2-24.6-20.5C161.7 339.6 203.6 320 248 320s86.3 19.6 114.7 53.8c13.6 16.2-11 36.7-24.5 20.4z"],
	"frown-open": [496, 512, [], "f57a", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zM136 208c0-17.7 14.3-32 32-32s32 14.3 32 32-14.3 32-32 32-32-14.3-32-32zm187.3 183.3c-31.2-9.6-59.4-15.3-75.3-15.3s-44.1 5.7-75.3 15.3c-11.5 3.5-22.5-6.3-20.5-18.1 7-40 60.1-61.2 95.8-61.2s88.8 21.3 95.8 61.2c2 11.9-9.1 21.6-20.5 18.1zM328 240c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32z"],
	"funnel-dollar": [640, 512, [], "f662", "M433.46 165.94l101.2-111.87C554.61 34.12 540.48 0 512.26 0H31.74C3.52 0-10.61 34.12 9.34 54.07L192 256v155.92c0 12.59 5.93 24.44 16 32l79.99 60c20.86 15.64 48.47 6.97 59.22-13.57C310.8 455.38 288 406.35 288 352c0-89.79 62.05-165.17 145.46-186.06zM480 192c-88.37 0-160 71.63-160 160s71.63 160 160 160 160-71.63 160-160-71.63-160-160-160zm16 239.88V448c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8v-16.29c-11.29-.58-22.27-4.52-31.37-11.35-3.9-2.93-4.1-8.77-.57-12.14l11.75-11.21c2.77-2.64 6.89-2.76 10.13-.73 3.87 2.42 8.26 3.72 12.82 3.72h28.11c6.5 0 11.8-5.92 11.8-13.19 0-5.95-3.61-11.19-8.77-12.73l-45-13.5c-18.59-5.58-31.58-23.42-31.58-43.39 0-24.52 19.05-44.44 42.67-45.07V256c0-4.42 3.58-8 8-8h16c4.42 0 8 3.58 8 8v16.29c11.29.58 22.27 4.51 31.37 11.35 3.9 2.93 4.1 8.77.57 12.14l-11.75 11.21c-2.77 2.64-6.89 2.76-10.13.73-3.87-2.43-8.26-3.72-12.82-3.72h-28.11c-6.5 0-11.8 5.92-11.8 13.19 0 5.95 3.61 11.19 8.77 12.73l45 13.5c18.59 5.58 31.58 23.42 31.58 43.39 0 24.53-19.04 44.44-42.67 45.07z"],
	"futbol": [512, 512, [], "f1e3", "M504 256c0 136.967-111.033 248-248 248S8 392.967 8 256 119.033 8 256 8s248 111.033 248 248zm-48 0l-.003-.282-26.064 22.741-62.679-58.5 16.454-84.355 34.303 3.072c-24.889-34.216-60.004-60.089-100.709-73.141l13.651 31.939L256 139l-74.953-41.525 13.651-31.939c-40.631 13.028-75.78 38.87-100.709 73.141l34.565-3.073 16.192 84.355-62.678 58.5-26.064-22.741-.003.282c0 43.015 13.497 83.952 38.472 117.991l7.704-33.897 85.138 10.447 36.301 77.826-29.902 17.786c40.202 13.122 84.29 13.148 124.572 0l-29.902-17.786 36.301-77.826 85.138-10.447 7.704 33.897C442.503 339.952 456 299.015 456 256zm-248.102 69.571l-29.894-91.312L256 177.732l77.996 56.527-29.622 91.312h-96.476z"],
	"gamepad": [640, 512, [], "f11b", "M480.07 96H160a160 160 0 1 0 114.24 272h91.52A160 160 0 1 0 480.07 96zM248 268a12 12 0 0 1-12 12h-52v52a12 12 0 0 1-12 12h-24a12 12 0 0 1-12-12v-52H84a12 12 0 0 1-12-12v-24a12 12 0 0 1 12-12h52v-52a12 12 0 0 1 12-12h24a12 12 0 0 1 12 12v52h52a12 12 0 0 1 12 12zm216 76a40 40 0 1 1 40-40 40 40 0 0 1-40 40zm64-96a40 40 0 1 1 40-40 40 40 0 0 1-40 40z"],
	"gas-pump": [512, 512, [], "f52f", "M336 448H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h320c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zm157.2-340.7l-81-81c-6.2-6.2-16.4-6.2-22.6 0l-11.3 11.3c-6.2 6.2-6.2 16.4 0 22.6L416 97.9V160c0 28.1 20.9 51.3 48 55.2V376c0 13.2-10.8 24-24 24s-24-10.8-24-24v-32c0-48.6-39.4-88-88-88h-8V64c0-35.3-28.7-64-64-64H96C60.7 0 32 28.7 32 64v352h288V304h8c22.1 0 40 17.9 40 40v27.8c0 37.7 27 72 64.5 75.9 43 4.3 79.5-29.5 79.5-71.7V152.6c0-17-6.8-33.3-18.8-45.3zM256 192H96V64h160v128z"],
	"gavel": [512, 512, [], "f0e3", "M504.971 199.362l-22.627-22.627c-9.373-9.373-24.569-9.373-33.941 0l-5.657 5.657L329.608 69.255l5.657-5.657c9.373-9.373 9.373-24.569 0-33.941L312.638 7.029c-9.373-9.373-24.569-9.373-33.941 0L154.246 131.48c-9.373 9.373-9.373 24.569 0 33.941l22.627 22.627c9.373 9.373 24.569 9.373 33.941 0l5.657-5.657 39.598 39.598-81.04 81.04-5.657-5.657c-12.497-12.497-32.758-12.497-45.255 0L9.373 412.118c-12.497 12.497-12.497 32.758 0 45.255l45.255 45.255c12.497 12.497 32.758 12.497 45.255 0l114.745-114.745c12.497-12.497 12.497-32.758 0-45.255l-5.657-5.657 81.04-81.04 39.598 39.598-5.657 5.657c-9.373 9.373-9.373 24.569 0 33.941l22.627 22.627c9.373 9.373 24.569 9.373 33.941 0l124.451-124.451c9.372-9.372 9.372-24.568 0-33.941z"],
	"gem": [576, 512, [], "f3a5", "M485.5 0L576 160H474.9L405.7 0h79.8zm-128 0l69.2 160H149.3L218.5 0h139zm-267 0h79.8l-69.2 160H0L90.5 0zM0 192h100.7l123 251.7c1.5 3.1-2.7 5.9-5 3.3L0 192zm148.2 0h279.6l-137 318.2c-1 2.4-4.5 2.4-5.5 0L148.2 192zm204.1 251.7l123-251.7H576L357.3 446.9c-2.3 2.7-6.5-.1-5-3.2z"],
	"genderless": [288, 512, [], "f22d", "M144 176c44.1 0 80 35.9 80 80s-35.9 80-80 80-80-35.9-80-80 35.9-80 80-80m0-64C64.5 112 0 176.5 0 256s64.5 144 144 144 144-64.5 144-144-64.5-144-144-144z"],
	"ghost": [384, 512, [], "f6e2", "M186.1.09C81.01 3.24 0 94.92 0 200.05v263.92c0 14.26 17.23 21.39 27.31 11.31l24.92-18.53c6.66-4.95 16-3.99 21.51 2.21l42.95 48.35c6.25 6.25 16.38 6.25 22.63 0l40.72-45.85c6.37-7.17 17.56-7.17 23.92 0l40.72 45.85c6.25 6.25 16.38 6.25 22.63 0l42.95-48.35c5.51-6.2 14.85-7.17 21.51-2.21l24.92 18.53c10.08 10.08 27.31 2.94 27.31-11.31V192C384 84 294.83-3.17 186.1.09zM128 224c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm128 0c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z"],
	"gift": [512, 512, [], "f06b", "M32 448c0 17.7 14.3 32 32 32h160V320H32v128zm256 32h160c17.7 0 32-14.3 32-32V320H288v160zm192-320h-42.1c6.2-12.1 10.1-25.5 10.1-40 0-48.5-39.5-88-88-88-41.6 0-68.5 21.3-103 68.3-34.5-47-61.4-68.3-103-68.3-48.5 0-88 39.5-88 88 0 14.5 3.8 27.9 10.1 40H32c-17.7 0-32 14.3-32 32v80c0 8.8 7.2 16 16 16h480c8.8 0 16-7.2 16-16v-80c0-17.7-14.3-32-32-32zm-326.1 0c-22.1 0-40-17.9-40-40s17.9-40 40-40c19.9 0 34.6 3.3 86.1 80h-86.1zm206.1 0h-86.1c51.4-76.5 65.7-80 86.1-80 22.1 0 40 17.9 40 40s-17.9 40-40 40z"],
	"gifts": [640, 512, [], "f79c", "M240.6 194.1c1.9-30.8 17.3-61.2 44-79.8C279.4 103.5 268.7 96 256 96h-29.4l30.7-22c7.2-5.1 8.9-15.1 3.7-22.3l-9.3-13c-5.1-7.2-15.1-8.9-22.3-3.7l-32 22.9 11.5-30.6c3.1-8.3-1.1-17.5-9.4-20.6l-15-5.6c-8.3-3.1-17.5 1.1-20.6 9.4l-19.9 53-19.9-53.1C121 2.1 111.8-2.1 103.5 1l-15 5.6C80.2 9.7 76 19 79.2 27.2l11.5 30.6L58.6 35c-7.2-5.1-17.2-3.5-22.3 3.7l-9.3 13c-5.1 7.2-3.5 17.2 3.7 22.3l30.7 22H32c-17.7 0-32 14.3-32 32v352c0 17.7 14.3 32 32 32h168.9c-5.5-9.5-8.9-20.3-8.9-32V256c0-29.9 20.8-55 48.6-61.9zM224 480c0 17.7 14.3 32 32 32h160V384H224v96zm224 32h160c17.7 0 32-14.3 32-32v-96H448v128zm160-288h-20.4c2.6-7.6 4.4-15.5 4.4-23.8 0-35.5-27-72.2-72.1-72.2-48.1 0-75.9 47.7-87.9 75.3-12.1-27.6-39.9-75.3-87.9-75.3-45.1 0-72.1 36.7-72.1 72.2 0 8.3 1.7 16.2 4.4 23.8H256c-17.7 0-32 14.3-32 32v96h192V224h15.3l.7-.2.7.2H448v128h192v-96c0-17.7-14.3-32-32-32zm-272 0c-2.7-1.4-5.1-3-7.2-4.8-7.3-6.4-8.8-13.8-8.8-19 0-9.7 6.4-24.2 24.1-24.2 18.7 0 35.6 27.4 44.5 48H336zm199.2-4.8c-2.1 1.8-4.5 3.4-7.2 4.8h-52.6c8.8-20.3 25.8-48 44.5-48 17.7 0 24.1 14.5 24.1 24.2 0 5.2-1.5 12.6-8.8 19z"],
	"glass-cheers": [640, 512, [], "f79f", "M639.4 433.6c-8.4-20.4-31.8-30.1-52.2-21.6l-22.1 9.2-38.7-101.9c47.9-35 64.8-100.3 34.5-152.8L474.3 16c-8-13.9-25.1-19.7-40-13.6L320 49.8 205.7 2.4c-14.9-6.2-32-.3-40 13.6L79.1 166.5C48.9 219 65.7 284.3 113.6 319.2L74.9 421.1l-22.1-9.2c-20.4-8.5-43.7 1.2-52.2 21.6-1.7 4.1.2 8.8 4.3 10.5l162.3 67.4c4.1 1.7 8.7-.2 10.4-4.3 8.4-20.4-1.2-43.8-21.6-52.3l-22.1-9.2L173.3 342c4.4.5 8.8 1.3 13.1 1.3 51.7 0 99.4-33.1 113.4-85.3l20.2-75.4 20.2 75.4c14 52.2 61.7 85.3 113.4 85.3 4.3 0 8.7-.8 13.1-1.3L506 445.6l-22.1 9.2c-20.4 8.5-30.1 31.9-21.6 52.3 1.7 4.1 6.4 6 10.4 4.3L635.1 444c4-1.7 6-6.3 4.3-10.4zM275.9 162.1l-112.1-46.5 36.5-63.4 94.5 39.2-18.9 70.7zm88.2 0l-18.9-70.7 94.5-39.2 36.5 63.4-112.1 46.5z"],
	"glass-martini": [512, 512, [], "f000", "M502.05 57.6C523.3 36.34 508.25 0 478.2 0H33.8C3.75 0-11.3 36.34 9.95 57.6L224 271.64V464h-56c-22.09 0-40 17.91-40 40 0 4.42 3.58 8 8 8h240c4.42 0 8-3.58 8-8 0-22.09-17.91-40-40-40h-56V271.64L502.05 57.6z"],
	"glass-martini-alt": [512, 512, [], "f57b", "M502.05 57.6C523.3 36.34 508.25 0 478.2 0H33.8C3.75 0-11.3 36.34 9.95 57.6L224 271.64V464h-56c-22.09 0-40 17.91-40 40 0 4.42 3.58 8 8 8h240c4.42 0 8-3.58 8-8 0-22.09-17.91-40-40-40h-56V271.64L502.05 57.6zM443.77 48l-48 48H116.24l-48-48h375.53z"],
	"glass-whiskey": [512, 512, [], "f7a0", "M480 32H32C12.5 32-2.4 49.2.3 68.5l56 356.5c4.5 31.5 31.5 54.9 63.4 54.9h273c31.8 0 58.9-23.4 63.4-54.9l55.6-356.5C514.4 49.2 499.5 32 480 32zm-37.4 64l-30 192h-313L69.4 96h373.2z"],
	"glasses": [576, 512, [], "f530", "M574.1 280.37L528.75 98.66c-5.91-23.7-21.59-44.05-43-55.81-21.44-11.73-46.97-14.11-70.19-6.33l-15.25 5.08c-8.39 2.79-12.92 11.86-10.12 20.24l5.06 15.18c2.79 8.38 11.85 12.91 20.23 10.12l13.18-4.39c10.87-3.62 23-3.57 33.16 1.73 10.29 5.37 17.57 14.56 20.37 25.82l38.46 153.82c-22.19-6.81-49.79-12.46-81.2-12.46-34.77 0-73.98 7.02-114.85 26.74h-73.18c-40.87-19.74-80.08-26.75-114.86-26.75-31.42 0-59.02 5.65-81.21 12.46l38.46-153.83c2.79-11.25 10.09-20.45 20.38-25.81 10.16-5.3 22.28-5.35 33.15-1.73l13.17 4.39c8.38 2.79 17.44-1.74 20.23-10.12l5.06-15.18c2.8-8.38-1.73-17.45-10.12-20.24l-15.25-5.08c-23.22-7.78-48.75-5.41-70.19 6.33-21.41 11.77-37.09 32.11-43 55.8L1.9 280.37A64.218 64.218 0 0 0 0 295.86v70.25C0 429.01 51.58 480 115.2 480h37.12c60.28 0 110.37-45.94 114.88-105.37l2.93-38.63h35.75l2.93 38.63C313.31 434.06 363.4 480 423.68 480h37.12c63.62 0 115.2-50.99 115.2-113.88v-70.25c0-5.23-.64-10.43-1.9-15.5zm-370.72 89.42c-1.97 25.91-24.4 46.21-51.06 46.21H115.2C86.97 416 64 393.62 64 366.11v-37.54c18.12-6.49 43.42-12.92 72.58-12.92 23.86 0 47.26 4.33 69.93 12.92l-3.13 41.22zM512 366.12c0 27.51-22.97 49.88-51.2 49.88h-37.12c-26.67 0-49.1-20.3-51.06-46.21l-3.13-41.22c22.67-8.59 46.08-12.92 69.95-12.92 29.12 0 54.43 6.44 72.55 12.93v37.54z"],
	"globe": [496, 512, [], "f0ac", "M336.5 160C322 70.7 287.8 8 248 8s-74 62.7-88.5 152h177zM152 256c0 22.2 1.2 43.5 3.3 64h185.3c2.1-20.5 3.3-41.8 3.3-64s-1.2-43.5-3.3-64H155.3c-2.1 20.5-3.3 41.8-3.3 64zm324.7-96c-28.6-67.9-86.5-120.4-158-141.6 24.4 33.8 41.2 84.7 50 141.6h108zM177.2 18.4C105.8 39.6 47.8 92.1 19.3 160h108c8.7-56.9 25.5-107.8 49.9-141.6zM487.4 192H372.7c2.1 21 3.3 42.5 3.3 64s-1.2 43-3.3 64h114.6c5.5-20.5 8.6-41.8 8.6-64s-3.1-43.5-8.5-64zM120 256c0-21.5 1.2-43 3.3-64H8.6C3.2 212.5 0 233.8 0 256s3.2 43.5 8.6 64h114.6c-2-21-3.2-42.5-3.2-64zm39.5 96c14.5 89.3 48.7 152 88.5 152s74-62.7 88.5-152h-177zm159.3 141.6c71.4-21.2 129.4-73.7 158-141.6h-108c-8.8 56.9-25.6 107.8-50 141.6zM19.3 352c28.6 67.9 86.5 120.4 158 141.6-24.4-33.8-41.2-84.7-50-141.6h-108z"],
	"globe-africa": [496, 512, [], "f57c", "M248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm160 215.5v6.93c0 5.87-3.32 11.24-8.57 13.86l-15.39 7.7a15.485 15.485 0 0 1-15.53-.97l-18.21-12.14a15.52 15.52 0 0 0-13.5-1.81l-2.65.88c-9.7 3.23-13.66 14.79-7.99 23.3l13.24 19.86c2.87 4.31 7.71 6.9 12.89 6.9h8.21c8.56 0 15.5 6.94 15.5 15.5v11.34c0 3.35-1.09 6.62-3.1 9.3l-18.74 24.98c-1.42 1.9-2.39 4.1-2.83 6.43l-4.3 22.83c-.62 3.29-2.29 6.29-4.76 8.56a159.608 159.608 0 0 0-25 29.16l-13.03 19.55a27.756 27.756 0 0 1-23.09 12.36c-10.51 0-20.12-5.94-24.82-15.34a78.902 78.902 0 0 1-8.33-35.29V367.5c0-8.56-6.94-15.5-15.5-15.5h-25.88c-14.49 0-28.38-5.76-38.63-16a54.659 54.659 0 0 1-16-38.63v-14.06c0-17.19 8.1-33.38 21.85-43.7l27.58-20.69a54.663 54.663 0 0 1 32.78-10.93h.89c8.48 0 16.85 1.97 24.43 5.77l14.72 7.36c3.68 1.84 7.93 2.14 11.83.84l47.31-15.77c6.33-2.11 10.6-8.03 10.6-14.7 0-8.56-6.94-15.5-15.5-15.5h-10.09c-4.11 0-8.05-1.63-10.96-4.54l-6.92-6.92a15.493 15.493 0 0 0-10.96-4.54H199.5c-8.56 0-15.5-6.94-15.5-15.5v-4.4c0-7.11 4.84-13.31 11.74-15.04l14.45-3.61c3.74-.94 7-3.23 9.14-6.44l8.08-12.11c2.87-4.31 7.71-6.9 12.89-6.9h24.21c8.56 0 15.5-6.94 15.5-15.5v-21.7C359.23 71.63 422.86 131.02 441.93 208H423.5c-8.56 0-15.5 6.94-15.5 15.5z"],
	"globe-americas": [496, 512, [], "f57d", "M248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm82.29 357.6c-3.9 3.88-7.99 7.95-11.31 11.28-2.99 3-5.1 6.7-6.17 10.71-1.51 5.66-2.73 11.38-4.77 16.87l-17.39 46.85c-13.76 3-28 4.69-42.65 4.69v-27.38c1.69-12.62-7.64-36.26-22.63-51.25-6-6-9.37-14.14-9.37-22.63v-32.01c0-11.64-6.27-22.34-16.46-27.97-14.37-7.95-34.81-19.06-48.81-26.11-11.48-5.78-22.1-13.14-31.65-21.75l-.8-.72a114.792 114.792 0 0 1-18.06-20.74c-9.38-13.77-24.66-36.42-34.59-51.14 20.47-45.5 57.36-82.04 103.2-101.89l24.01 12.01C203.48 89.74 216 82.01 216 70.11v-11.3c7.99-1.29 16.12-2.11 24.39-2.42l28.3 28.3c6.25 6.25 6.25 16.38 0 22.63L264 112l-10.34 10.34c-3.12 3.12-3.12 8.19 0 11.31l4.69 4.69c3.12 3.12 3.12 8.19 0 11.31l-8 8a8.008 8.008 0 0 1-5.66 2.34h-8.99c-2.08 0-4.08.81-5.58 2.27l-9.92 9.65a8.008 8.008 0 0 0-1.58 9.31l15.59 31.19c2.66 5.32-1.21 11.58-7.15 11.58h-5.64c-1.93 0-3.79-.7-5.24-1.96l-9.28-8.06a16.017 16.017 0 0 0-15.55-3.1l-31.17 10.39a11.95 11.95 0 0 0-8.17 11.34c0 4.53 2.56 8.66 6.61 10.69l11.08 5.54c9.41 4.71 19.79 7.16 30.31 7.16s22.59 27.29 32 32h66.75c8.49 0 16.62 3.37 22.63 9.37l13.69 13.69a30.503 30.503 0 0 1 8.93 21.57 46.536 46.536 0 0 1-13.72 32.98zM417 274.25c-5.79-1.45-10.84-5-14.15-9.97l-17.98-26.97a23.97 23.97 0 0 1 0-26.62l19.59-29.38c2.32-3.47 5.5-6.29 9.24-8.15l12.98-6.49C440.2 193.59 448 223.87 448 256c0 8.67-.74 17.16-1.82 25.54L417 274.25z"],
	"globe-asia": [496, 512, [], "f57e", "M248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm-11.34 240.23c-2.89 4.82-8.1 7.77-13.72 7.77h-.31c-4.24 0-8.31 1.69-11.31 4.69l-5.66 5.66c-3.12 3.12-3.12 8.19 0 11.31l5.66 5.66c3 3 4.69 7.07 4.69 11.31V304c0 8.84-7.16 16-16 16h-6.11c-6.06 0-11.6-3.42-14.31-8.85l-22.62-45.23c-2.44-4.88-8.95-5.94-12.81-2.08l-19.47 19.46c-3 3-7.07 4.69-11.31 4.69H50.81C49.12 277.55 48 266.92 48 256c0-110.28 89.72-200 200-200 21.51 0 42.2 3.51 61.63 9.82l-50.16 38.53c-5.11 3.41-4.63 11.06.86 13.81l10.83 5.41c5.42 2.71 8.84 8.25 8.84 14.31V216c0 4.42-3.58 8-8 8h-3.06c-3.03 0-5.8-1.71-7.15-4.42-1.56-3.12-5.96-3.29-7.76-.3l-17.37 28.95zM408 358.43c0 4.24-1.69 8.31-4.69 11.31l-9.57 9.57c-3 3-7.07 4.69-11.31 4.69h-15.16c-4.24 0-8.31-1.69-11.31-4.69l-13.01-13.01a26.767 26.767 0 0 0-25.42-7.04l-21.27 5.32c-1.27.32-2.57.48-3.88.48h-10.34c-4.24 0-8.31-1.69-11.31-4.69l-11.91-11.91a8.008 8.008 0 0 1-2.34-5.66v-10.2c0-3.27 1.99-6.21 5.03-7.43l39.34-15.74c1.98-.79 3.86-1.82 5.59-3.05l23.71-16.89a7.978 7.978 0 0 1 4.64-1.48h12.09c3.23 0 6.15 1.94 7.39 4.93l5.35 12.85a4 4 0 0 0 3.69 2.46h3.8c1.78 0 3.35-1.18 3.84-2.88l4.2-14.47c.5-1.71 2.06-2.88 3.84-2.88h6.06c2.21 0 4 1.79 4 4v12.93c0 2.12.84 4.16 2.34 5.66l11.91 11.91c3 3 4.69 7.07 4.69 11.31v24.6z"],
	"globe-europe": [496, 512, [], "f7a2", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm200 248c0 22.5-3.9 44.2-10.8 64.4h-20.3c-4.3 0-8.4-1.7-11.4-4.8l-32-32.6c-4.5-4.6-4.5-12.1.1-16.7l12.5-12.5v-8.7c0-3-1.2-5.9-3.3-8l-9.4-9.4c-2.1-2.1-5-3.3-8-3.3h-16c-6.2 0-11.3-5.1-11.3-11.3 0-3 1.2-5.9 3.3-8l9.4-9.4c2.1-2.1 5-3.3 8-3.3h32c6.2 0 11.3-5.1 11.3-11.3v-9.4c0-6.2-5.1-11.3-11.3-11.3h-36.7c-8.8 0-16 7.2-16 16v4.5c0 6.9-4.4 13-10.9 15.2l-31.6 10.5c-3.3 1.1-5.5 4.1-5.5 7.6v2.2c0 4.4-3.6 8-8 8h-16c-4.4 0-8-3.6-8-8s-3.6-8-8-8H247c-3 0-5.8 1.7-7.2 4.4l-9.4 18.7c-2.7 5.4-8.2 8.8-14.3 8.8H194c-8.8 0-16-7.2-16-16V199c0-4.2 1.7-8.3 4.7-11.3l20.1-20.1c4.6-4.6 7.2-10.9 7.2-17.5 0-3.4 2.2-6.5 5.5-7.6l40-13.3c1.7-.6 3.2-1.5 4.4-2.7l26.8-26.8c2.1-2.1 3.3-5 3.3-8 0-6.2-5.1-11.3-11.3-11.3H258l-16 16v8c0 4.4-3.6 8-8 8h-16c-4.4 0-8-3.6-8-8v-20c0-2.5 1.2-4.9 3.2-6.4l28.9-21.7c1.9-.1 3.8-.3 5.7-.3C358.3 56 448 145.7 448 256zM130.1 149.1c0-3 1.2-5.9 3.3-8l25.4-25.4c2.1-2.1 5-3.3 8-3.3 6.2 0 11.3 5.1 11.3 11.3v16c0 3-1.2 5.9-3.3 8l-9.4 9.4c-2.1 2.1-5 3.3-8 3.3h-16c-6.2 0-11.3-5.1-11.3-11.3zm128 306.4v-7.1c0-8.8-7.2-16-16-16h-20.2c-10.8 0-26.7-5.3-35.4-11.8l-22.2-16.7c-11.5-8.6-18.2-22.1-18.2-36.4v-23.9c0-16 8.4-30.8 22.1-39l42.9-25.7c7.1-4.2 15.2-6.5 23.4-6.5h31.2c10.9 0 21.4 3.9 29.6 10.9l43.2 37.1h18.3c8.5 0 16.6 3.4 22.6 9.4l17.3 17.3c3.4 3.4 8.1 5.3 12.9 5.3H423c-32.4 58.9-93.8 99.5-164.9 103.1z"],
	"golf-ball": [416, 512, [], "f450", "M96 416h224c0 17.7-14.3 32-32 32h-16c-17.7 0-32 14.3-32 32v20c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-20c0-17.7-14.3-32-32-32h-16c-17.7 0-32-14.3-32-32zm320-208c0 74.2-39 139.2-97.5 176h-221C39 347.2 0 282.2 0 208 0 93.1 93.1 0 208 0s208 93.1 208 208zm-180.1 43.9c18.3 0 33.1-14.8 33.1-33.1 0-14.4-9.3-26.3-22.1-30.9 9.6 26.8-15.6 51.3-41.9 41.9 4.6 12.8 16.5 22.1 30.9 22.1zm49.1 46.9c0-14.4-9.3-26.3-22.1-30.9 9.6 26.8-15.6 51.3-41.9 41.9 4.6 12.8 16.5 22.1 30.9 22.1 18.3 0 33.1-14.9 33.1-33.1zm64-64c0-14.4-9.3-26.3-22.1-30.9 9.6 26.8-15.6 51.3-41.9 41.9 4.6 12.8 16.5 22.1 30.9 22.1 18.3 0 33.1-14.9 33.1-33.1z"],
	"gopuram": [512, 512, [], "f664", "M496 352h-16V240c0-8.8-7.2-16-16-16h-16v-80c0-8.8-7.2-16-16-16h-16V16c0-8.8-7.2-16-16-16s-16 7.2-16 16v16h-64V16c0-8.8-7.2-16-16-16s-16 7.2-16 16v16h-64V16c0-8.8-7.2-16-16-16s-16 7.2-16 16v16h-64V16c0-8.8-7.2-16-16-16S96 7.2 96 16v112H80c-8.8 0-16 7.2-16 16v80H48c-8.8 0-16 7.2-16 16v112H16c-8.8 0-16 7.2-16 16v128c0 8.8 7.2 16 16 16h80V352h32V224h32v-96h32v96h-32v128h-32v160h80v-80c0-8.8 7.2-16 16-16h64c8.8 0 16 7.2 16 16v80h80V352h-32V224h-32v-96h32v96h32v128h32v160h80c8.8 0 16-7.2 16-16V368c0-8.8-7.2-16-16-16zM232 176c0-8.8 7.2-16 16-16h16c8.8 0 16 7.2 16 16v48h-48zm56 176h-64v-64c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16z"],
	"graduation-cap": [640, 512, [], "f19d", "M622.34 153.2L343.4 67.5c-15.2-4.67-31.6-4.67-46.79 0L17.66 153.2c-23.54 7.23-23.54 38.36 0 45.59l48.63 14.94c-10.67 13.19-17.23 29.28-17.88 46.9C38.78 266.15 32 276.11 32 288c0 10.78 5.68 19.85 13.86 25.65L20.33 428.53C18.11 438.52 25.71 448 35.94 448h56.11c10.24 0 17.84-9.48 15.62-19.47L82.14 313.65C90.32 307.85 96 298.78 96 288c0-11.57-6.47-21.25-15.66-26.87.76-15.02 8.44-28.3 20.69-36.72L296.6 284.5c9.06 2.78 26.44 6.25 46.79 0l278.95-85.7c23.55-7.24 23.55-38.36 0-45.6zM352.79 315.09c-28.53 8.76-52.84 3.92-65.59 0l-145.02-44.55L128 384c0 35.35 85.96 64 192 64s192-28.65 192-64l-14.18-113.47-145.03 44.56z"],
	"greater-than": [384, 512, [], "f531", "M365.52 209.85L59.22 67.01c-16.06-7.49-35.15-.54-42.64 15.52L3.01 111.61c-7.49 16.06-.54 35.15 15.52 42.64L236.96 256.1 18.49 357.99C2.47 365.46-4.46 384.5 3.01 400.52l13.52 29C24 445.54 43.04 452.47 59.06 445l306.47-142.91a32.003 32.003 0 0 0 18.48-29v-34.23c-.01-12.45-7.21-23.76-18.49-29.01z"],
	"greater-than-equal": [448, 512, [], "f532", "M55.22 107.69l175.56 68.09-175.44 68.05c-18.39 6.03-27.88 24.39-21.2 41l12.09 30.08c6.68 16.61 26.99 25.19 45.38 19.15L393.02 214.2c13.77-4.52 22.98-16.61 22.98-30.17v-15.96c0-13.56-9.21-25.65-22.98-30.17L91.3 17.92c-18.29-6-38.51 2.53-45.15 19.06L34.12 66.9c-6.64 16.53 2.81 34.79 21.1 40.79zM424 400H24c-13.25 0-24 10.74-24 24v48c0 13.25 10.75 24 24 24h400c13.25 0 24-10.75 24-24v-48c0-13.26-10.75-24-24-24z"],
	"grimace": [496, 512, [], "f57f", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zM144 400h-8c-17.7 0-32-14.3-32-32v-8h40v40zm0-56h-40v-8c0-17.7 14.3-32 32-32h8v40zm-8-136c0-17.7 14.3-32 32-32s32 14.3 32 32-14.3 32-32 32-32-14.3-32-32zm72 192h-48v-40h48v40zm0-56h-48v-40h48v40zm64 56h-48v-40h48v40zm0-56h-48v-40h48v40zm64 56h-48v-40h48v40zm0-56h-48v-40h48v40zm-8-104c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm64 128c0 17.7-14.3 32-32 32h-8v-40h40v8zm0-24h-40v-40h8c17.7 0 32 14.3 32 32v8z"],
	"grin": [496, 512, [], "f580", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm80 168c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32zm-160 0c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32zm80 256c-60.6 0-134.5-38.3-143.8-93.3-2-11.8 9.3-21.6 20.7-17.9C155.1 330.5 200 336 248 336s92.9-5.5 123.1-15.2c11.3-3.7 22.6 6.1 20.7 17.9-9.3 55-83.2 93.3-143.8 93.3z"],
	"grin-alt": [496, 512, [], "f581", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm63.7 128.7c7.6-11.4 24.7-11.7 32.7 0 12.4 18.4 15.1 36.9 15.7 55.3-.5 18.4-3.3 36.9-15.7 55.3-7.6 11.4-24.7 11.7-32.7 0-12.4-18.4-15.1-36.9-15.7-55.3.5-18.4 3.3-36.9 15.7-55.3zm-160 0c7.6-11.4 24.7-11.7 32.7 0 12.4 18.4 15.1 36.9 15.7 55.3-.5 18.4-3.3 36.9-15.7 55.3-7.6 11.4-24.7 11.7-32.7 0-12.4-18.4-15.1-36.9-15.7-55.3.5-18.4 3.3-36.9 15.7-55.3zM248 432c-60.6 0-134.5-38.3-143.8-93.3-2-11.8 9.3-21.6 20.7-17.9C155.1 330.5 200 336 248 336s92.9-5.5 123.1-15.2c11.4-3.7 22.6 6.1 20.7 17.9-9.3 55-83.2 93.3-143.8 93.3z"],
	"grin-beam": [496, 512, [], "f582", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm80 144c23.8 0 52.7 29.3 56 71.4.7 8.6-10.8 11.9-14.9 4.5l-9.5-17c-7.7-13.7-19.2-21.6-31.5-21.6s-23.8 7.9-31.5 21.6l-9.5 17c-4.1 7.3-15.6 4-14.9-4.5 3.1-42.1 32-71.4 55.8-71.4zm-160 0c23.8 0 52.7 29.3 56 71.4.7 8.6-10.8 11.9-14.9 4.5l-9.5-17c-7.7-13.7-19.2-21.6-31.5-21.6s-23.8 7.9-31.5 21.6l-9.5 17c-4.2 7.4-15.6 4-14.9-4.5 3.1-42.1 32-71.4 55.8-71.4zm80 280c-60.6 0-134.5-38.3-143.8-93.3-2-11.9 9.4-21.6 20.7-17.9C155.1 330.5 200 336 248 336s92.9-5.5 123.1-15.2c11.4-3.7 22.6 6.1 20.7 17.9-9.3 55-83.2 93.3-143.8 93.3z"],
	"grin-beam-sweat": [504, 512, [], "f583", "M456 128c26.5 0 48-21 48-47 0-20-28.5-60.4-41.6-77.8-3.2-4.3-9.6-4.3-12.8 0C436.5 20.6 408 61 408 81c0 26 21.5 47 48 47zm0 32c-44.1 0-80-35.4-80-79 0-4.4.3-14.2 8.1-32.2C345 23.1 298.3 8 248 8 111 8 0 119 0 256s111 248 248 248 248-111 248-248c0-35.1-7.4-68.4-20.5-98.6-6.3 1.5-12.7 2.6-19.5 2.6zm-128-8c23.8 0 52.7 29.3 56 71.4.7 8.6-10.8 12-14.9 4.5l-9.5-17c-7.7-13.7-19.2-21.6-31.5-21.6s-23.8 7.9-31.5 21.6l-9.5 17c-4.1 7.4-15.6 4-14.9-4.5 3.1-42.1 32-71.4 55.8-71.4zm-160 0c23.8 0 52.7 29.3 56 71.4.7 8.6-10.8 12-14.9 4.5l-9.5-17c-7.7-13.7-19.2-21.6-31.5-21.6s-23.8 7.9-31.5 21.6l-9.5 17c-4.2 7.4-15.6 4-14.9-4.5 3.1-42.1 32-71.4 55.8-71.4zm80 280c-60.6 0-134.5-38.3-143.8-93.3-2-11.8 9.3-21.6 20.7-17.9C155.1 330.5 200 336 248 336s92.9-5.5 123.1-15.2c11.5-3.7 22.6 6.2 20.7 17.9-9.3 55-83.2 93.3-143.8 93.3z"],
	"grin-hearts": [496, 512, [], "f584", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zM90.4 183.6c6.7-17.6 26.7-26.7 44.9-21.9l7.1 1.9 2-7.1c5-18.1 22.8-30.9 41.5-27.9 21.4 3.4 34.4 24.2 28.8 44.5L195.3 243c-1.2 4.5-5.9 7.2-10.5 6l-70.2-18.2c-20.4-5.4-31.9-27-24.2-47.2zM248 432c-60.6 0-134.5-38.3-143.8-93.3-2-11.8 9.2-21.5 20.7-17.9C155.1 330.5 200 336 248 336s92.9-5.5 123.1-15.2c11.4-3.6 22.6 6.1 20.7 17.9-9.3 55-83.2 93.3-143.8 93.3zm133.4-201.3l-70.2 18.2c-4.5 1.2-9.2-1.5-10.5-6L281.3 173c-5.6-20.3 7.4-41.1 28.8-44.5 18.6-3 36.4 9.8 41.5 27.9l2 7.1 7.1-1.9c18.2-4.7 38.2 4.3 44.9 21.9 7.7 20.3-3.8 41.9-24.2 47.2z"],
	"grin-squint": [496, 512, [], "f585", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm33.8 189.7l80-48c11.6-6.9 24 7.7 15.4 18L343.6 208l33.6 40.3c8.7 10.4-3.9 24.8-15.4 18l-80-48c-7.7-4.7-7.7-15.9 0-20.6zm-163-30c-8.6-10.3 3.8-24.9 15.4-18l80 48c7.8 4.7 7.8 15.9 0 20.6l-80 48c-11.5 6.8-24-7.6-15.4-18l33.6-40.3-33.6-40.3zM248 432c-60.6 0-134.5-38.3-143.8-93.3-2-11.9 9.4-21.6 20.7-17.9C155.1 330.5 200 336 248 336s92.9-5.5 123.1-15.2c11.5-3.7 22.6 6.2 20.7 17.9-9.3 55-83.2 93.3-143.8 93.3z"],
	"grin-squint-tears": [512, 512, [], "f586", "M409.6 111.9c22.6-3.2 73.5-12 88.3-26.8 19.2-19.2 18.9-50.6-.7-70.2S446-5 426.9 14.2c-14.8 14.8-23.5 65.7-26.8 88.3-.8 5.5 3.9 10.2 9.5 9.4zM102.4 400.1c-22.6 3.2-73.5 12-88.3 26.8-19.1 19.1-18.8 50.6.8 70.2s51 19.9 70.2.7c14.8-14.8 23.5-65.7 26.8-88.3.8-5.5-3.9-10.2-9.5-9.4zm311.7-256.5c-33 3.9-48.6-25.1-45.7-45.7 3.4-24 7.4-42.1 11.5-56.5C285.1-13.4 161.8-.5 80.6 80.6-.5 161.7-13.4 285 41.4 379.9c14.4-4.1 32.4-8 56.5-11.5 33.2-3.9 48.6 25.2 45.7 45.7-3.4 24-7.4 42.1-11.5 56.5 94.8 54.8 218.1 41.9 299.3-39.2s94-204.4 39.2-299.3c-14.4 4.1-32.5 8-56.5 11.5zM255.7 106c3.3-13.2 22.4-11.5 23.6 1.8l4.8 52.3 52.3 4.8c13.4 1.2 14.9 20.3 1.8 23.6l-90.5 22.6c-8.9 2.2-16.7-5.9-14.5-14.5l22.5-90.6zm-90.9 230.3L160 284l-52.3-4.8c-13.4-1.2-14.9-20.3-1.8-23.6l90.5-22.6c8.8-2.2 16.7 5.8 14.5 14.5L188.3 338c-3.1 13.2-22.2 11.7-23.5-1.7zm215.7 44.2c-29.3 29.3-75.7 50.4-116.7 50.4-18.9 0-36.6-4.5-51-14.7-9.8-6.9-8.7-21.8 2-27.2 28.3-14.6 63.9-42.4 97.8-76.3s61.7-69.6 76.3-97.8c5.4-10.5 20.2-11.9 27.3-2 32.3 45.3 7.1 124.7-35.7 167.6z"],
	"grin-stars": [496, 512, [], "f587", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zM94.6 168.9l34.9-5 15.5-31.6c2.9-5.8 11-5.8 13.9 0l15.5 31.6 34.9 5c6.2 1 8.9 8.6 4.3 13.2l-25.4 24.6 6 34.9c1 6.2-5.3 11-11 7.9L152 233.3l-31.3 16.3c-5.7 3.1-12-1.7-11-7.9l6-34.9-25.4-24.6c-4.6-4.7-1.9-12.3 4.3-13.3zM248 432c-60.6 0-134.5-38.3-143.8-93.3-2-11.8 9.3-21.5 20.7-17.9C155.1 330.5 200 336 248 336s92.9-5.5 123.1-15.2c11.5-3.7 22.6 6.1 20.7 17.9-9.3 55-83.2 93.3-143.8 93.3zm157.7-249.9l-25.4 24.6 6 34.9c1 6.2-5.3 11-11 7.9L344 233.3l-31.3 16.3c-5.7 3.1-12-1.7-11-7.9l6-34.9-25.4-24.6c-4.5-4.6-1.9-12.2 4.3-13.2l34.9-5 15.5-31.6c2.9-5.8 11-5.8 13.9 0l15.5 31.6 34.9 5c6.3.9 9 8.5 4.4 13.1z"],
	"grin-tears": [640, 512, [], "f588", "M102.4 256.1c-22.6 3.2-73.5 12-88.3 26.8-19.1 19.1-18.8 50.6.8 70.2s51 19.9 70.2.7c14.8-14.8 23.5-65.7 26.8-88.3.8-5.5-3.9-10.2-9.5-9.4zm523.4 26.8c-14.8-14.8-65.7-23.5-88.3-26.8-5.5-.8-10.3 3.9-9.5 9.5 3.2 22.6 12 73.5 26.8 88.3 19.2 19.2 50.6 18.9 70.2-.7s20-51.2.8-70.3zm-129.4-12.8c-3.8-26.6 19.1-49.5 45.7-45.7 8.9 1.3 16.8 2.7 24.3 4.1C552.7 104.5 447.7 8 320 8S87.3 104.5 73.6 228.5c7.5-1.4 15.4-2.8 24.3-4.1 33.2-3.9 48.6 25.3 45.7 45.7-11.8 82.3-29.9 100.4-35.8 106.4-.9.9-2 1.6-3 2.5 42.7 74.6 123 125 215.2 125s172.5-50.4 215.2-125.1c-1-.9-2.1-1.5-3-2.5-5.9-5.9-24-24-35.8-106.3zM400 152c23.8 0 52.7 29.3 56 71.4.7 8.6-10.8 12-14.9 4.5l-9.5-17c-7.7-13.7-19.2-21.6-31.5-21.6s-23.8 7.9-31.5 21.6l-9.5 17c-4.2 7.4-15.6 4-14.9-4.5 3.1-42.1 32-71.4 55.8-71.4zm-160 0c23.8 0 52.7 29.3 56 71.4.7 8.6-10.8 12-14.9 4.5l-9.5-17c-7.7-13.7-19.2-21.6-31.5-21.6s-23.8 7.9-31.5 21.6l-9.5 17c-4.2 7.4-15.6 4-14.9-4.5 3.1-42.1 32-71.4 55.8-71.4zm80 280c-60.6 0-134.5-38.3-143.8-93.3-2-11.7 9.2-21.6 20.7-17.9C227.1 330.5 272 336 320 336s92.9-5.5 123.1-15.2c11.4-3.7 22.6 6.1 20.7 17.9-9.3 55-83.2 93.3-143.8 93.3z"],
	"grin-tongue": [496, 512, [], "f589", "M248 8C111 8 0 119 0 256c0 106.3 67 196.7 161 232-5.6-12.2-9-25.7-9-40v-45.5c-24.7-16.2-43.5-38.1-47.8-63.8-2-11.8 9.3-21.5 20.7-17.9C155.1 330.5 200 336 248 336s92.9-5.5 123.1-15.2c11.4-3.6 22.6 6.1 20.7 17.9-4.3 25.7-23.1 47.6-47.8 63.8V448c0 14.3-3.4 27.8-9 40 94-35.3 161-125.7 161-232C496 119 385 8 248 8zm-80 232c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm160 0c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm-34.9 134.6c-14.4-6.5-31.1 2.2-34.6 17.6l-1.8 7.8c-2.1 9.2-15.2 9.2-17.3 0l-1.8-7.8c-3.5-15.4-20.2-24.1-34.6-17.6-.9.4.3-.2-18.9 9.4v63c0 35.2 28 64.5 63.1 64.9 35.7.5 64.9-28.4 64.9-64v-64c-19.5-9.6-18.2-8.9-19-9.3z"],
	"grin-tongue-squint": [496, 512, [], "f58a", "M293.1 374.6c-14.4-6.5-31.1 2.2-34.6 17.6l-1.8 7.8c-2.1 9.2-15.2 9.2-17.3 0l-1.8-7.8c-3.5-15.4-20.2-24.1-34.6-17.6-.9.4.3-.2-18.9 9.4v63c0 35.2 28 64.5 63.1 64.9 35.7.5 64.9-28.4 64.9-64v-64c-19.5-9.6-18.2-8.9-19-9.3zM248 8C111 8 0 119 0 256c0 106.3 67 196.7 161 232-5.6-12.2-9-25.7-9-40v-45.5c-24.7-16.2-43.5-38.1-47.8-63.8-2-11.8 9.2-21.5 20.7-17.9C155.1 330.5 200 336 248 336s92.9-5.5 123.1-15.2c11.4-3.7 22.6 6.1 20.7 17.9-4.3 25.7-23.1 47.6-47.8 63.8V448c0 14.3-3.4 27.8-9 40 94-35.3 161-125.7 161-232C496 119 385 8 248 8zm-33.8 210.3l-80 48c-11.5 6.8-24-7.6-15.4-18l33.6-40.3-33.6-40.3c-8.6-10.3 3.8-24.9 15.4-18l80 48c7.7 4.7 7.7 15.9 0 20.6zm163 30c8.7 10.4-3.9 24.8-15.4 18l-80-48c-7.8-4.7-7.8-15.9 0-20.6l80-48c11.7-6.9 23.9 7.7 15.4 18L343.6 208l33.6 40.3z"],
	"grin-tongue-wink": [496, 512, [], "f58b", "M344 184c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zM248 8C111 8 0 119 0 256c0 106.3 67 196.7 161 232-5.6-12.2-9-25.7-9-40v-45.5c-24.7-16.2-43.5-38.1-47.8-63.8-2-11.8 9.3-21.5 20.7-17.9C155.1 330.5 200 336 248 336s92.9-5.5 123.1-15.2c11.5-3.7 22.6 6.1 20.7 17.9-4.3 25.7-23.1 47.6-47.8 63.8V448c0 14.3-3.4 27.8-9 40 94-35.3 161-125.7 161-232C496 119 385 8 248 8zm-56 225l-9.5-8.5c-14.8-13.2-46.2-13.2-61 0L112 233c-8.5 7.4-21.6.3-19.8-10.8 4-25.2 34.2-42.1 59.9-42.1S208 197 212 222.2c1.6 11.1-11.6 18.2-20 10.8zm152 39c-35.3 0-64-28.7-64-64s28.7-64 64-64 64 28.7 64 64-28.7 64-64 64zm-50.9 102.6c-14.4-6.5-31.1 2.2-34.6 17.6l-1.8 7.8c-2.1 9.2-15.2 9.2-17.3 0l-1.8-7.8c-3.5-15.4-20.2-24.1-34.6-17.6-.9.4.3-.2-18.9 9.4v63c0 35.2 28 64.5 63.1 64.9 35.7.5 64.9-28.4 64.9-64v-64c-19.5-9.6-18.2-8.9-19-9.3z"],
	"grin-wink": [496, 512, [], "f58c", "M0 256c0 137 111 248 248 248s248-111 248-248S385 8 248 8 0 119 0 256zm200-48c0 17.7-14.3 32-32 32s-32-14.3-32-32 14.3-32 32-32 32 14.3 32 32zm168 25l-9.5-8.5c-14.8-13.2-46.2-13.2-61 0L288 233c-8.3 7.4-21.6.4-19.8-10.8 4-25.2 34.2-42.1 59.9-42.1S384 197 388 222.2c1.6 11-11.5 18.2-20 10.8zm-243.1 87.8C155.1 330.5 200 336 248 336s92.9-5.5 123.1-15.2c11.3-3.7 22.6 6 20.7 17.9-9.2 55-83.2 93.3-143.8 93.3s-134.5-38.3-143.8-93.3c-2-11.9 9.3-21.6 20.7-17.9z"],
	"grip-horizontal": [448, 512, [], "f58d", "M96 288H32c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm160 0h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm160 0h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zM96 96H32c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm160 0h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm160 0h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32z"],
	"grip-lines": [512, 512, [], "f7a4", "M496 288H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h480c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zm0-128H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h480c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16z"],
	"grip-lines-vertical": [256, 512, [], "f7a5", "M96 496V16c0-8.8-7.2-16-16-16H48c-8.8 0-16 7.2-16 16v480c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16zm128 0V16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v480c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16z"],
	"grip-vertical": [320, 512, [], "f58e", "M96 32H32C14.33 32 0 46.33 0 64v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32V64c0-17.67-14.33-32-32-32zm0 160H32c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm0 160H32c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zM288 32h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32V64c0-17.67-14.33-32-32-32zm0 160h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32zm0 160h-64c-17.67 0-32 14.33-32 32v64c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-64c0-17.67-14.33-32-32-32z"],
	"guitar": [512, 512, [], "f7a6", "M502.63 39L473 9.37a32 32 0 0 0-45.26 0L381.46 55.7a35.14 35.14 0 0 0-8.53 13.79L360.77 106l-76.26 76.26c-12.16-8.76-25.5-15.74-40.1-19.14-33.45-7.78-67-.88-89.88 22a82.45 82.45 0 0 0-20.24 33.47c-6 18.56-23.21 32.69-42.15 34.46-23.7 2.27-45.73 11.45-62.61 28.44C-16.11 327-7.9 409 47.58 464.45S185 528 230.56 482.52c17-16.88 26.16-38.9 28.45-62.71 1.76-18.85 15.89-36.13 34.43-42.14a82.6 82.6 0 0 0 33.48-20.25c22.87-22.88 29.74-56.36 22-89.75-3.39-14.64-10.37-28-19.16-40.2L406 151.23l36.48-12.16a35.14 35.14 0 0 0 13.79-8.53l46.33-46.32a32 32 0 0 0 .03-45.22zM208 352a48 48 0 1 1 48-48 48 48 0 0 1-48 48z"],
	"h-square": [448, 512, [], "f0fd", "M448 80v352c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48V80c0-26.51 21.49-48 48-48h352c26.51 0 48 21.49 48 48zm-112 48h-32c-8.837 0-16 7.163-16 16v80H160v-80c0-8.837-7.163-16-16-16h-32c-8.837 0-16 7.163-16 16v224c0 8.837 7.163 16 16 16h32c8.837 0 16-7.163 16-16v-80h128v80c0 8.837 7.163 16 16 16h32c8.837 0 16-7.163 16-16V144c0-8.837-7.163-16-16-16z"],
	"hamburger": [512, 512, [], "f805", "M464 256H48a48 48 0 0 0 0 96h416a48 48 0 0 0 0-96zm16 128H32a16 16 0 0 0-16 16v16a64 64 0 0 0 64 64h352a64 64 0 0 0 64-64v-16a16 16 0 0 0-16-16zM58.64 224h394.72c34.57 0 54.62-43.9 34.82-75.88C448 83.2 359.55 32.1 256 32c-103.54.1-192 51.2-232.18 116.11C4 180.09 24.07 224 58.64 224zM384 112a16 16 0 1 1-16 16 16 16 0 0 1 16-16zM256 80a16 16 0 1 1-16 16 16 16 0 0 1 16-16zm-128 32a16 16 0 1 1-16 16 16 16 0 0 1 16-16z"],
	"hammer": [576, 512, [], "f6e3", "M571.31 193.94l-22.63-22.63c-6.25-6.25-16.38-6.25-22.63 0l-11.31 11.31-28.9-28.9c5.63-21.31.36-44.9-16.35-61.61l-45.25-45.25c-62.48-62.48-163.79-62.48-226.28 0l90.51 45.25v18.75c0 16.97 6.74 33.25 18.75 45.25l49.14 49.14c16.71 16.71 40.3 21.98 61.61 16.35l28.9 28.9-11.31 11.31c-6.25 6.25-6.25 16.38 0 22.63l22.63 22.63c6.25 6.25 16.38 6.25 22.63 0l90.51-90.51c6.23-6.24 6.23-16.37-.02-22.62zm-286.72-15.2c-3.7-3.7-6.84-7.79-9.85-11.95L19.64 404.96c-25.57 23.88-26.26 64.19-1.53 88.93s65.05 24.05 88.93-1.53l238.13-255.07c-3.96-2.91-7.9-5.87-11.44-9.41l-49.14-49.14z"],
	"hamsa": [512, 512, [], "f665", "M509.34 307.25C504.28 295.56 492.75 288 480 288h-64V80c0-22-18-40-40-40s-40 18-40 40v134c0 5.52-4.48 10-10 10h-20c-5.52 0-10-4.48-10-10V40c0-22-18-40-40-40s-40 18-40 40v174c0 5.52-4.48 10-10 10h-20c-5.52 0-10-4.48-10-10V80c0-22-18-40-40-40S96 58 96 80v208H32c-12.75 0-24.28 7.56-29.34 19.25a31.966 31.966 0 0 0 5.94 34.58l102.69 110.03C146.97 490.08 199.69 512 256 512s109.03-21.92 144.72-60.14L503.4 341.83a31.966 31.966 0 0 0 5.94-34.58zM256 416c-53.02 0-96-64-96-64s42.98-64 96-64 96 64 96 64-42.98 64-96 64zm0-96c-17.67 0-32 14.33-32 32s14.33 32 32 32 32-14.33 32-32-14.33-32-32-32z"],
	"hand-holding": [576, 512, [], "f4bd", "M565.3 328.1c-11.8-10.7-30.2-10-42.6 0L430.3 402c-11.3 9.1-25.4 14-40 14H272c-8.8 0-16-7.2-16-16s7.2-16 16-16h78.3c15.9 0 30.7-10.9 33.3-26.6 3.3-20-12.1-37.4-31.6-37.4H192c-27 0-53.1 9.3-74.1 26.3L71.4 384H16c-8.8 0-16 7.2-16 16v96c0 8.8 7.2 16 16 16h356.8c14.5 0 28.6-4.9 40-14L564 377c15.2-12.1 16.4-35.3 1.3-48.9z"],
	"hand-holding-heart": [576, 512, [], "f4be", "M275.3 250.5c7 7.4 18.4 7.4 25.5 0l108.9-114.2c31.6-33.2 29.8-88.2-5.6-118.8-30.8-26.7-76.7-21.9-104.9 7.7L288 36.9l-11.1-11.6C248.7-4.4 202.8-9.2 172 17.5c-35.3 30.6-37.2 85.6-5.6 118.8l108.9 114.2zm290 77.6c-11.8-10.7-30.2-10-42.6 0L430.3 402c-11.3 9.1-25.4 14-40 14H272c-8.8 0-16-7.2-16-16s7.2-16 16-16h78.3c15.9 0 30.7-10.9 33.3-26.6 3.3-20-12.1-37.4-31.6-37.4H192c-27 0-53.1 9.3-74.1 26.3L71.4 384H16c-8.8 0-16 7.2-16 16v96c0 8.8 7.2 16 16 16h356.8c14.5 0 28.6-4.9 40-14L564 377c15.2-12.1 16.4-35.3 1.3-48.9z"],
	"hand-holding-medical": [576, 512, [], "e05c", "M159.88,175.82h64v64a16,16,0,0,0,16,16h64a16,16,0,0,0,16-16v-64h64a16,16,0,0,0,16-16v-64a16,16,0,0,0-16-16h-64v-64a16,16,0,0,0-16-16h-64a16,16,0,0,0-16,16v64h-64a16,16,0,0,0-16,16v64A16,16,0,0,0,159.88,175.82ZM568.07,336.13a39.91,39.91,0,0,0-55.93-8.47L392.47,415.84H271.86a16,16,0,0,1,0-32H350.1c16,0,30.75-10.87,33.37-26.61a32.06,32.06,0,0,0-31.62-37.38h-160a117.7,117.7,0,0,0-74.12,26.25l-46.5,37.74H15.87a16.11,16.11,0,0,0-16,16v96a16.11,16.11,0,0,0,16,16h347a104.8,104.8,0,0,0,61.7-20.27L559.6,392A40,40,0,0,0,568.07,336.13Z"],
	"hand-holding-usd": [576, 512, [], "f4c0", "M271.06,144.3l54.27,14.3a8.59,8.59,0,0,1,6.63,8.1c0,4.6-4.09,8.4-9.12,8.4h-35.6a30,30,0,0,1-11.19-2.2c-5.24-2.2-11.28-1.7-15.3,2l-19,17.5a11.68,11.68,0,0,0-2.25,2.66,11.42,11.42,0,0,0,3.88,15.74,83.77,83.77,0,0,0,34.51,11.5V240c0,8.8,7.83,16,17.37,16h17.37c9.55,0,17.38-7.2,17.38-16V222.4c32.93-3.6,57.84-31,53.5-63-3.15-23-22.46-41.3-46.56-47.7L282.68,97.4a8.59,8.59,0,0,1-6.63-8.1c0-4.6,4.09-8.4,9.12-8.4h35.6A30,30,0,0,1,332,83.1c5.23,2.2,11.28,1.7,15.3-2l19-17.5A11.31,11.31,0,0,0,368.47,61a11.43,11.43,0,0,0-3.84-15.78,83.82,83.82,0,0,0-34.52-11.5V16c0-8.8-7.82-16-17.37-16H295.37C285.82,0,278,7.2,278,16V33.6c-32.89,3.6-57.85,31-53.51,63C227.63,119.6,247,137.9,271.06,144.3ZM565.27,328.1c-11.8-10.7-30.2-10-42.6,0L430.27,402a63.64,63.64,0,0,1-40,14H272a16,16,0,0,1,0-32h78.29c15.9,0,30.71-10.9,33.25-26.6a31.2,31.2,0,0,0,.46-5.46A32,32,0,0,0,352,320H192a117.66,117.66,0,0,0-74.1,26.29L71.4,384H16A16,16,0,0,0,0,400v96a16,16,0,0,0,16,16H372.77a64,64,0,0,0,40-14L564,377a32,32,0,0,0,1.28-48.9Z"],
	"hand-holding-water": [576, 512, [], "f4c1", "M288 256c53 0 96-42.1 96-94 0-40-57.1-120.7-83.2-155.6-6.4-8.5-19.2-8.5-25.6 0C249.1 41.3 192 122 192 162c0 51.9 43 94 96 94zm277.3 72.1c-11.8-10.7-30.2-10-42.6 0L430.3 402c-11.3 9.1-25.4 14-40 14H272c-8.8 0-16-7.2-16-16s7.2-16 16-16h78.3c15.9 0 30.7-10.9 33.3-26.6 3.3-20-12.1-37.4-31.6-37.4H192c-27 0-53.1 9.3-74.1 26.3L71.4 384H16c-8.8 0-16 7.2-16 16v96c0 8.8 7.2 16 16 16h356.8c14.5 0 28.6-4.9 40-14L564 377c15.2-12.1 16.4-35.3 1.3-48.9z"],
	"hand-lizard": [576, 512, [], "f258", "M384 480h192V363.778a95.998 95.998 0 0 0-14.833-51.263L398.127 54.368A48 48 0 0 0 357.544 32H24C10.745 32 0 42.745 0 56v16c0 30.928 25.072 56 56 56h229.981c12.844 0 21.556 13.067 16.615 24.923l-21.41 51.385A32 32 0 0 1 251.648 224H128c-35.346 0-64 28.654-64 64v8c0 13.255 10.745 24 24 24h147.406a47.995 47.995 0 0 1 25.692 7.455l111.748 70.811A24.001 24.001 0 0 1 384 418.539V480z"],
	"hand-middle-finger": [512, 512, [], "f806", "M479.93 317.12a37.33 37.33 0 0 0-28.28-36.19L416 272v-49.59c0-11.44-9.69-21.29-23.15-23.54l-38.4-6.4C336.63 189.5 320 200.86 320 216v32a8 8 0 0 1-16 0V50c0-26.28-20.25-49.2-46.52-50A48 48 0 0 0 208 48v200a8 8 0 0 1-16 0v-32c0-15.15-16.63-26.51-34.45-23.54l-30.68 5.12c-18 3-30.87 16.12-30.87 31.38V376a8 8 0 0 1-16 0v-76l-27.36 15A37.34 37.34 0 0 0 32 348.4v73.47a37.31 37.31 0 0 0 10.93 26.39l30.93 30.93A112 112 0 0 0 153.05 512h215A112 112 0 0 0 480 400z"],
	"hand-paper": [448, 512, [], "f256", "M408.781 128.007C386.356 127.578 368 146.36 368 168.79V256h-8V79.79c0-22.43-18.356-41.212-40.781-40.783C297.488 39.423 280 57.169 280 79v177h-8V40.79C272 18.36 253.644-.422 231.219.007 209.488.423 192 18.169 192 40v216h-8V80.79c0-22.43-18.356-41.212-40.781-40.783C121.488 40.423 104 58.169 104 80v235.992l-31.648-43.519c-12.993-17.866-38.009-21.817-55.877-8.823-17.865 12.994-21.815 38.01-8.822 55.877l125.601 172.705A48 48 0 0 0 172.073 512h197.59c22.274 0 41.622-15.324 46.724-37.006l26.508-112.66a192.011 192.011 0 0 0 5.104-43.975V168c.001-21.831-17.487-39.577-39.218-39.993z"],
	"hand-peace": [448, 512, [], "f25b", "M408 216c-22.092 0-40 17.909-40 40h-8v-32c0-22.091-17.908-40-40-40s-40 17.909-40 40v32h-8V48c0-26.51-21.49-48-48-48s-48 21.49-48 48v208h-13.572L92.688 78.449C82.994 53.774 55.134 41.63 30.461 51.324 5.787 61.017-6.356 88.877 3.337 113.551l74.765 190.342-31.09 24.872c-15.381 12.306-19.515 33.978-9.741 51.081l64 112A39.998 39.998 0 0 0 136 512h240c18.562 0 34.686-12.77 38.937-30.838l32-136A39.97 39.97 0 0 0 448 336v-80c0-22.091-17.908-40-40-40z"],
	"hand-point-down": [384, 512, [], "f0a7", "M91.826 467.2V317.966c-8.248 5.841-16.558 10.57-24.918 14.153C35.098 345.752-.014 322.222 0 288c.008-18.616 10.897-32.203 29.092-40 28.286-12.122 64.329-78.648 77.323-107.534 7.956-17.857 25.479-28.453 43.845-28.464l.001-.002h171.526c11.812 0 21.897 8.596 23.703 20.269 7.25 46.837 38.483 61.76 38.315 123.731-.007 2.724.195 13.254.195 16 0 50.654-22.122 81.574-71.263 72.6-9.297 18.597-39.486 30.738-62.315 16.45-21.177 24.645-53.896 22.639-70.944 6.299V467.2c0 24.15-20.201 44.8-43.826 44.8-23.283 0-43.826-21.35-43.826-44.8zM112 72V24c0-13.255 10.745-24 24-24h192c13.255 0 24 10.745 24 24v48c0 13.255-10.745 24-24 24H136c-13.255 0-24-10.745-24-24zm212-24c0-11.046-8.954-20-20-20s-20 8.954-20 20 8.954 20 20 20 20-8.954 20-20z"],
	"hand-point-left": [512, 512, [], "f0a5", "M44.8 155.826h149.234c-5.841-8.248-10.57-16.558-14.153-24.918C166.248 99.098 189.778 63.986 224 64c18.616.008 32.203 10.897 40 29.092 12.122 28.286 78.648 64.329 107.534 77.323 17.857 7.956 28.453 25.479 28.464 43.845l.002.001v171.526c0 11.812-8.596 21.897-20.269 23.703-46.837 7.25-61.76 38.483-123.731 38.315-2.724-.007-13.254.195-16 .195-50.654 0-81.574-22.122-72.6-71.263-18.597-9.297-30.738-39.486-16.45-62.315-24.645-21.177-22.639-53.896-6.299-70.944H44.8c-24.15 0-44.8-20.201-44.8-43.826 0-23.283 21.35-43.826 44.8-43.826zM440 176h48c13.255 0 24 10.745 24 24v192c0 13.255-10.745 24-24 24h-48c-13.255 0-24-10.745-24-24V200c0-13.255 10.745-24 24-24zm24 212c11.046 0 20-8.954 20-20s-8.954-20-20-20-20 8.954-20 20 8.954 20 20 20z"],
	"hand-point-right": [512, 512, [], "f0a4", "M512 199.652c0 23.625-20.65 43.826-44.8 43.826h-99.851c16.34 17.048 18.346 49.766-6.299 70.944 14.288 22.829 2.147 53.017-16.45 62.315C353.574 425.878 322.654 448 272 448c-2.746 0-13.276-.203-16-.195-61.971.168-76.894-31.065-123.731-38.315C120.596 407.683 112 397.599 112 385.786V214.261l.002-.001c.011-18.366 10.607-35.889 28.464-43.845 28.886-12.994 95.413-49.038 107.534-77.323 7.797-18.194 21.384-29.084 40-29.092 34.222-.014 57.752 35.098 44.119 66.908-3.583 8.359-8.312 16.67-14.153 24.918H467.2c23.45 0 44.8 20.543 44.8 43.826zM96 200v192c0 13.255-10.745 24-24 24H24c-13.255 0-24-10.745-24-24V200c0-13.255 10.745-24 24-24h48c13.255 0 24 10.745 24 24zM68 368c0-11.046-8.954-20-20-20s-20 8.954-20 20 8.954 20 20 20 20-8.954 20-20z"],
	"hand-point-up": [384, 512, [], "f0a6", "M135.652 0c23.625 0 43.826 20.65 43.826 44.8v99.851c17.048-16.34 49.766-18.346 70.944 6.299 22.829-14.288 53.017-2.147 62.315 16.45C361.878 158.426 384 189.346 384 240c0 2.746-.203 13.276-.195 16 .168 61.971-31.065 76.894-38.315 123.731C343.683 391.404 333.599 400 321.786 400H150.261l-.001-.002c-18.366-.011-35.889-10.607-43.845-28.464C93.421 342.648 57.377 276.122 29.092 264 10.897 256.203.008 242.616 0 224c-.014-34.222 35.098-57.752 66.908-44.119 8.359 3.583 16.67 8.312 24.918 14.153V44.8c0-23.45 20.543-44.8 43.826-44.8zM136 416h192c13.255 0 24 10.745 24 24v48c0 13.255-10.745 24-24 24H136c-13.255 0-24-10.745-24-24v-48c0-13.255 10.745-24 24-24zm168 28c-11.046 0-20 8.954-20 20s8.954 20 20 20 20-8.954 20-20-8.954-20-20-20z"],
	"hand-pointer": [448, 512, [], "f25a", "M448 240v96c0 3.084-.356 6.159-1.063 9.162l-32 136C410.686 499.23 394.562 512 376 512H168a40.004 40.004 0 0 1-32.35-16.473l-127.997-176c-12.993-17.866-9.043-42.883 8.822-55.876 17.867-12.994 42.884-9.043 55.877 8.823L104 315.992V40c0-22.091 17.908-40 40-40s40 17.909 40 40v200h8v-40c0-22.091 17.908-40 40-40s40 17.909 40 40v40h8v-24c0-22.091 17.908-40 40-40s40 17.909 40 40v24h8c0-22.091 17.908-40 40-40s40 17.909 40 40zm-256 80h-8v96h8v-96zm88 0h-8v96h8v-96zm88 0h-8v96h8v-96z"],
	"hand-rock": [512, 512, [], "f255", "M464.8 80c-26.9-.4-48.8 21.2-48.8 48h-8V96.8c0-26.3-20.9-48.3-47.2-48.8-26.9-.4-48.8 21.2-48.8 48v32h-8V80.8c0-26.3-20.9-48.3-47.2-48.8-26.9-.4-48.8 21.2-48.8 48v48h-8V96.8c0-26.3-20.9-48.3-47.2-48.8-26.9-.4-48.8 21.2-48.8 48v136l-8-7.1v-48.1c0-26.3-20.9-48.3-47.2-48.8C21.9 127.6 0 149.2 0 176v66.4c0 27.4 11.7 53.5 32.2 71.8l111.7 99.3c10.2 9.1 16.1 22.2 16.1 35.9v6.7c0 13.3 10.7 24 24 24h240c13.3 0 24-10.7 24-24v-2.9c0-12.8 2.6-25.5 7.5-37.3l49-116.3c5-11.8 7.5-24.5 7.5-37.3V128.8c0-26.3-20.9-48.4-47.2-48.8z"],
	"hand-scissors": [512, 512, [], "f257", "M216 440c0-22.092 17.909-40 40-40v-8h-32c-22.091 0-40-17.908-40-40s17.909-40 40-40h32v-8H48c-26.51 0-48-21.49-48-48s21.49-48 48-48h208v-13.572l-177.551-69.74c-24.674-9.694-36.818-37.555-27.125-62.228 9.693-24.674 37.554-36.817 62.228-27.124l190.342 74.765 24.872-31.09c12.306-15.381 33.978-19.515 51.081-9.741l112 64A40.002 40.002 0 0 1 512 168v240c0 18.562-12.77 34.686-30.838 38.937l-136 32A39.982 39.982 0 0 1 336 480h-80c-22.091 0-40-17.908-40-40z"],
	"hand-sparkles": [640, 512, [], "e05d", "M106.66,170.64l.09,0,49.55-20.65a7.32,7.32,0,0,0,3.68-6h0a7.29,7.29,0,0,0-3.68-6l-49.57-20.67-.07,0L86,67.68a6.66,6.66,0,0,0-11.92,0l-20.7,49.63-.05,0L3.7,138A7.29,7.29,0,0,0,0,144H0a7.32,7.32,0,0,0,3.68,6L53.27,170.6l.07,0L74,220.26a6.65,6.65,0,0,0,11.92,0l20.69-49.62ZM471.38,467.41l-1-.42-1-.5a38.67,38.67,0,0,1,0-69.14l1-.49,1-.43,37.49-15.63,15.63-37.48.41-1,.47-.95c3.85-7.74,10.58-13.63,18.35-17.34,0-1.33.25-2.69.27-4V144a32,32,0,0,0-64,0v72a8,8,0,0,1-8,8H456a8,8,0,0,1-8-8V64a32,32,0,0,0-64,0V216a8,8,0,0,1-8,8H360a8,8,0,0,1-8-8V32a32,32,0,0,0-64,0V216a8,8,0,0,1-8,8H264a8,8,0,0,1-8-8V64a32,32,0,0,0-64,0v241l-23.59-32.49a40,40,0,0,0-64.71,47.09L229.3,492.21A48.07,48.07,0,0,0,268.09,512H465.7c19.24,0,35.65-11.73,43.24-28.79l-.07-.17ZM349.79,339.52,320,351.93l-12.42,29.78a4,4,0,0,1-7.15,0L288,351.93l-29.79-12.41a4,4,0,0,1,0-7.16L288,319.94l12.42-29.78a4,4,0,0,1,7.15,0L320,319.94l29.79,12.42a4,4,0,0,1,0,7.16ZM640,431.91a7.28,7.28,0,0,0-3.68-6l-49.57-20.67-.07,0L566,355.63a6.66,6.66,0,0,0-11.92,0l-20.7,49.63-.05,0L483.7,426a7.28,7.28,0,0,0-3.68,6h0a7.29,7.29,0,0,0,3.68,5.95l49.57,20.67.07,0L554,508.21a6.65,6.65,0,0,0,11.92,0l20.69-49.62h0l.09,0,49.55-20.66a7.29,7.29,0,0,0,3.68-5.95h0Z"],
	"hand-spock": [512, 512, [], "f259", "M510.9005,145.27027,442.604,432.09391A103.99507,103.99507,0,0,1,341.43745,512H214.074a135.96968,135.96968,0,0,1-93.18489-36.95291L12.59072,373.12723a39.992,39.992,0,0,1,54.8122-58.24988l60.59342,57.02528v0a283.24849,283.24849,0,0,0-11.6703-80.46734L73.63726,147.36011a40.00575,40.00575,0,1,1,76.71833-22.7187l37.15458,125.39477a8.33113,8.33113,0,0,0,16.05656-4.4414L153.26183,49.95406A39.99638,39.99638,0,1,1,230.73015,30.0166l56.09491,218.15825a10.42047,10.42047,0,0,0,20.30018-.501L344.80766,63.96966a40.052,40.052,0,0,1,51.30245-30.0893c19.86073,6.2998,30.86262,27.67378,26.67564,48.08487l-33.83869,164.966a7.55172,7.55172,0,0,0,14.74406,3.2666l29.3973-123.45874a39.99414,39.99414,0,1,1,77.81208,18.53121Z"],
	"hands": [640, 512, [], "f4c2", "M204.8 230.4c-10.6-14.1-30.7-17-44.8-6.4-14.1 10.6-17 30.7-6.4 44.8l38.1 50.8c4.8 6.4 4.1 15.3-1.5 20.9l-12.8 12.8c-6.7 6.7-17.6 6.2-23.6-1.1L64 244.4V96c0-17.7-14.3-32-32-32S0 78.3 0 96v218.4c0 10.9 3.7 21.5 10.5 30l104.1 134.3c5 6.5 8.4 13.9 10.4 21.7 1.8 6.9 8.1 11.6 15.3 11.6H272c8.8 0 16-7.2 16-16V384c0-27.7-9-54.6-25.6-76.8l-57.6-76.8zM608 64c-17.7 0-32 14.3-32 32v148.4l-89.8 107.8c-6 7.2-17 7.7-23.6 1.1l-12.8-12.8c-5.6-5.6-6.3-14.5-1.5-20.9l38.1-50.8c10.6-14.1 7.7-34.2-6.4-44.8-14.1-10.6-34.2-7.7-44.8 6.4l-57.6 76.8C361 329.4 352 356.3 352 384v112c0 8.8 7.2 16 16 16h131.7c7.1 0 13.5-4.7 15.3-11.6 2-7.8 5.4-15.2 10.4-21.7l104.1-134.3c6.8-8.5 10.5-19.1 10.5-30V96c0-17.7-14.3-32-32-32z"],
	"hands-helping": [640, 512, [], "f4c4", "M488 192H336v56c0 39.7-32.3 72-72 72s-72-32.3-72-72V126.4l-64.9 39C107.8 176.9 96 197.8 96 220.2v47.3l-80 46.2C.7 322.5-4.6 342.1 4.3 357.4l80 138.6c8.8 15.3 28.4 20.5 43.7 11.7L231.4 448H368c35.3 0 64-28.7 64-64h16c17.7 0 32-14.3 32-32v-64h8c13.3 0 24-10.7 24-24v-48c0-13.3-10.7-24-24-24zm147.7-37.4L555.7 16C546.9.7 527.3-4.5 512 4.3L408.6 64H306.4c-12 0-23.7 3.4-33.9 9.7L239 94.6c-9.4 5.8-15 16.1-15 27.1V248c0 22.1 17.9 40 40 40s40-17.9 40-40v-88h184c30.9 0 56 25.1 56 56v28.5l80-46.2c15.3-8.9 20.5-28.4 11.7-43.7z"],
	"hands-wash": [576, 512, [], "e05e", "M496,224a48,48,0,1,0-48-48A48,48,0,0,0,496,224ZM311.47,178.45A56.77,56.77,0,0,1,328,176a56,56,0,0,1,19,3.49l15.35-48.61A24,24,0,0,0,342,99.74c-11.53-1.35-22.21,6.44-25.71,17.51l-20.9,66.17ZM93.65,386.33c.8-.19,1.54-.54,2.35-.71V359.93a156,156,0,0,1,107.06-148l73.7-22.76L310.92,81.05a24,24,0,0,0-20.33-31.11c-11.53-1.34-22.22,6.45-25.72,17.52L231.42,173.88a8,8,0,0,1-15.26-4.83L259.53,31.26A24,24,0,0,0,239.2.15C227.67-1.19,217,6.6,213.49,17.66L165.56,169.37a8,8,0,1,1-15.26-4.82l38.56-122a24,24,0,0,0-20.33-31.11C157,10,146.32,17.83,142.82,28.9l-60,189.85L80.76,168.7A24,24,0,0,0,56.9,144.55c-13.23-.05-24.72,10.54-24.9,23.86V281.14A123.69,123.69,0,0,0,93.65,386.33ZM519.1,336H360a8,8,0,0,1,0-16H488a24,24,0,0,0,23.54-28.76C509.35,279.84,498.71,272,487.1,272H288l47.09-17.06a24,24,0,0,0-14.18-45.88L213.19,242.31A123.88,123.88,0,0,0,128,360v25.65a79.78,79.78,0,0,1,58,108.63A118.9,118.9,0,0,0,248,512H456a24,24,0,0,0,23.54-28.76C477.35,471.84,466.71,464,455.1,464H360a8,8,0,0,1,0-16H488a24,24,0,0,0,23.54-28.76C509.35,407.84,498.71,400,487.1,400H360a8,8,0,0,1,0-16H520a24,24,0,0,0,23.54-28.76C541.35,343.84,530.71,336,519.1,336ZM416,64a32,32,0,1,0-32-32A32,32,0,0,0,416,64ZM112,416a48,48,0,1,0,48,48A48,48,0,0,0,112,416Z"],
	"handshake": [640, 512, [], "f2b5", "M434.7 64h-85.9c-8 0-15.7 3-21.6 8.4l-98.3 90c-.1.1-.2.3-.3.4-16.6 15.6-16.3 40.5-2.1 56 12.7 13.9 39.4 17.6 56.1 2.7.1-.1.3-.1.4-.2l79.9-73.2c6.5-5.9 16.7-5.5 22.6 1 6 6.5 5.5 16.6-1 22.6l-26.1 23.9L504 313.8c2.9 2.4 5.5 5 7.9 7.7V128l-54.6-54.6c-5.9-6-14.1-9.4-22.6-9.4zM544 128.2v223.9c0 17.7 14.3 32 32 32h64V128.2h-96zm48 223.9c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zM0 384h64c17.7 0 32-14.3 32-32V128.2H0V384zm48-63.9c8.8 0 16 7.2 16 16s-7.2 16-16 16-16-7.2-16-16c0-8.9 7.2-16 16-16zm435.9 18.6L334.6 217.5l-30 27.5c-29.7 27.1-75.2 24.5-101.7-4.4-26.9-29.4-24.8-74.9 4.4-101.7L289.1 64h-83.8c-8.5 0-16.6 3.4-22.6 9.4L128 128v223.9h18.3l90.5 81.9c27.4 22.3 67.7 18.1 90-9.3l.2-.2 17.9 15.5c15.9 13 39.4 10.5 52.3-5.4l31.4-38.6 5.4 4.4c13.7 11.1 33.9 9.1 45-4.7l9.5-11.7c11.2-13.8 9.1-33.9-4.6-45.1z"],
	"handshake-alt-slash": [640, 512, [], "e05f", "M358.59,195.6,504.2,313.8a63.4,63.4,0,0,1,22.21,37.91H624a16.05,16.05,0,0,0,16-16V143.91A16,16,0,0,0,624,128H512L457.41,73.41A32,32,0,0,0,434.8,64H348.91a32,32,0,0,0-21.61,8.41l-88.12,80.68-25.69-19.85L289.09,64H205.3a32,32,0,0,0-22.6,9.41l-20.34,20.3L45.47,3.38A16,16,0,0,0,23,6.19L3.38,31.46A16,16,0,0,0,6.19,53.91L594.54,508.63A16,16,0,0,0,617,505.82l19.64-25.27a16,16,0,0,0-2.81-22.45L303.4,202.72l32.69-29.92,27-24.7a16,16,0,0,1,21.61,23.61ZM16,128A16.05,16.05,0,0,0,0,144V335.91a16,16,0,0,0,16,16H146.3l90.5,81.89a64,64,0,0,0,90-9.3l.2-.2,17.91,15.5a37.16,37.16,0,0,0,52.29-5.39l8.8-10.82L23.56,128Z"],
	"handshake-slash": [640, 512, [], "e060", "M0,128.21V384H64a32,32,0,0,0,32-32V184L23.83,128.21ZM48,320.1a16,16,0,1,1-16,16A16,16,0,0,1,48,320.1Zm80,31.81h18.3l90.5,81.89a64,64,0,0,0,90-9.3l.2-.2,17.91,15.5a37.16,37.16,0,0,0,52.29-5.39l8.8-10.82L128,208.72Zm416-223.7V352.1a32,32,0,0,0,32,32h64V128.21ZM592,352.1a16,16,0,1,1,16-16A16,16,0,0,1,592,352.1ZM303.33,202.67l59.58-54.57a16,16,0,0,1,21.59,23.61L358.41,195.6,504,313.8a73.08,73.08,0,0,1,7.91,7.7V128L457.3,73.41A31.76,31.76,0,0,0,434.7,64H348.8a31.93,31.93,0,0,0-21.6,8.41l-88.07,80.64-25.64-19.81L289.09,64H205.3a32,32,0,0,0-22.6,9.41L162.36,93.72,45.47,3.38A16,16,0,0,0,23,6.19L3.38,31.46A16,16,0,0,0,6.19,53.91L594.53,508.63A16,16,0,0,0,617,505.82l19.65-25.27a16,16,0,0,0-2.82-22.45Z"],
	"hanukiah": [640, 512, [], "f6e6", "M232 160c-4.42 0-8 3.58-8 8v120h32V168c0-4.42-3.58-8-8-8h-16zm-64 0c-4.42 0-8 3.58-8 8v120h32V168c0-4.42-3.58-8-8-8h-16zm224 0c-4.42 0-8 3.58-8 8v120h32V168c0-4.42-3.58-8-8-8h-16zm64 0c-4.42 0-8 3.58-8 8v120h32V168c0-4.42-3.58-8-8-8h-16zm88 8c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v120h32V168zm-440-8c-4.42 0-8 3.58-8 8v120h32V168c0-4.42-3.58-8-8-8h-16zm520 0h-32c-8.84 0-16 7.16-16 16v112c0 17.67-14.33 32-32 32H352V128c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16v192H96c-17.67 0-32-14.33-32-32V176c0-8.84-7.16-16-16-16H16c-8.84 0-16 7.16-16 16v112c0 53.02 42.98 96 96 96h192v64H112c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h416c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16H352v-64h192c53.02 0 96-42.98 96-96V176c0-8.84-7.16-16-16-16zm-16-32c13.25 0 24-11.94 24-26.67S608 48 608 48s-24 38.61-24 53.33S594.75 128 608 128zm-576 0c13.25 0 24-11.94 24-26.67S32 48 32 48 8 86.61 8 101.33 18.75 128 32 128zm288-48c13.25 0 24-11.94 24-26.67S320 0 320 0s-24 38.61-24 53.33S306.75 80 320 80zm-208 48c13.25 0 24-11.94 24-26.67S112 48 112 48s-24 38.61-24 53.33S98.75 128 112 128zm64 0c13.25 0 24-11.94 24-26.67S176 48 176 48s-24 38.61-24 53.33S162.75 128 176 128zm64 0c13.25 0 24-11.94 24-26.67S240 48 240 48s-24 38.61-24 53.33S226.75 128 240 128zm160 0c13.25 0 24-11.94 24-26.67S400 48 400 48s-24 38.61-24 53.33S386.75 128 400 128zm64 0c13.25 0 24-11.94 24-26.67S464 48 464 48s-24 38.61-24 53.33S450.75 128 464 128zm64 0c13.25 0 24-11.94 24-26.67S528 48 528 48s-24 38.61-24 53.33S514.75 128 528 128z"],
	"hard-hat": [512, 512, [], "f807", "M480 288c0-80.25-49.28-148.92-119.19-177.62L320 192V80a16 16 0 0 0-16-16h-96a16 16 0 0 0-16 16v112l-40.81-81.62C81.28 139.08 32 207.75 32 288v64h448zm16 96H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h480a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16z"],
	"hashtag": [448, 512, [], "f292", "M440.667 182.109l7.143-40c1.313-7.355-4.342-14.109-11.813-14.109h-74.81l14.623-81.891C377.123 38.754 371.468 32 363.997 32h-40.632a12 12 0 0 0-11.813 9.891L296.175 128H197.54l14.623-81.891C213.477 38.754 207.822 32 200.35 32h-40.632a12 12 0 0 0-11.813 9.891L132.528 128H53.432a12 12 0 0 0-11.813 9.891l-7.143 40C33.163 185.246 38.818 192 46.289 192h74.81L98.242 320H19.146a12 12 0 0 0-11.813 9.891l-7.143 40C-1.123 377.246 4.532 384 12.003 384h74.81L72.19 465.891C70.877 473.246 76.532 480 84.003 480h40.632a12 12 0 0 0 11.813-9.891L151.826 384h98.634l-14.623 81.891C234.523 473.246 240.178 480 247.65 480h40.632a12 12 0 0 0 11.813-9.891L315.472 384h79.096a12 12 0 0 0 11.813-9.891l7.143-40c1.313-7.355-4.342-14.109-11.813-14.109h-74.81l22.857-128h79.096a12 12 0 0 0 11.813-9.891zM261.889 320h-98.634l22.857-128h98.634l-22.857 128z"],
	"hat-cowboy": [640, 512, [], "f8c0", "M490 296.9C480.51 239.51 450.51 64 392.3 64c-14 0-26.49 5.93-37 14a58.21 58.21 0 0 1-70.58 0c-10.51-8-23-14-37-14-58.2 0-88.2 175.47-97.71 232.88C188.81 309.47 243.73 320 320 320s131.23-10.51 170-23.1zm142.9-37.18a16 16 0 0 0-19.75 1.5c-1 .9-101.27 90.78-293.16 90.78-190.82 0-292.22-89.94-293.24-90.84A16 16 0 0 0 1 278.53C1.73 280.55 78.32 480 320 480s318.27-199.45 319-201.47a16 16 0 0 0-6.09-18.81z"],
	"hat-cowboy-side": [640, 512, [], "f8c1", "M260.8 291.06c-28.63-22.94-62-35.06-96.4-35.06C87 256 21.47 318.72 1.43 412.06c-3.55 16.6-.43 33.83 8.57 47.3C18.75 472.47 31.83 480 45.88 480H592c-103.21 0-155-37.07-233.19-104.46zm234.65-18.29L468.4 116.2A64 64 0 0 0 392 64.41L200.85 105a64 64 0 0 0-50.35 55.79L143.61 226c6.9-.83 13.7-2 20.79-2 41.79 0 82 14.55 117.29 42.82l98 84.48C450.76 412.54 494.9 448 592 448a48 48 0 0 0 48-48c0-25.39-29.6-119.33-144.55-127.23z"],
	"hat-wizard": [512, 512, [], "f6e8", "M496 448H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h480c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zm-304-64l-64-32 64-32 32-64 32 64 64 32-64 32-16 32h208l-86.41-201.63a63.955 63.955 0 0 1-1.89-45.45L416 0 228.42 107.19a127.989 127.989 0 0 0-53.46 59.15L64 416h144l-16-32zm64-224l16-32 16 32 32 16-32 16-16 32-16-32-32-16 32-16z"],
	"hdd": [576, 512, [], "f0a0", "M576 304v96c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48v-96c0-26.51 21.49-48 48-48h480c26.51 0 48 21.49 48 48zm-48-80a79.557 79.557 0 0 1 30.777 6.165L462.25 85.374A48.003 48.003 0 0 0 422.311 64H153.689a48 48 0 0 0-39.938 21.374L17.223 230.165A79.557 79.557 0 0 1 48 224h480zm-48 96c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32zm-96 0c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32z"],
	"head-side-cough": [640, 512, [], "e061", "M616,304a24,24,0,1,0-24-24A24,24,0,0,0,616,304ZM552,416a24,24,0,1,0,24,24A24,24,0,0,0,552,416Zm-64-56a24,24,0,1,0,24,24A24,24,0,0,0,488,360ZM616,464a24,24,0,1,0,24,24A24,24,0,0,0,616,464Zm0-104a24,24,0,1,0,24,24A24,24,0,0,0,616,360Zm-64-40a24,24,0,1,0,24,24A24,24,0,0,0,552,320Zm-74.78-45c-21-47.12-48.5-151.75-73.12-186.75A208.13,208.13,0,0,0,234.1,0H192C86,0,0,86,0,192c0,56.75,24.75,107.62,64,142.88V512H288V480h64a64,64,0,0,0,64-64H320a32,32,0,0,1,0-64h96V320h32A32,32,0,0,0,477.22,275ZM288,224a32,32,0,1,1,32-32A32.07,32.07,0,0,1,288,224Z"],
	"head-side-cough-slash": [640, 512, [], "e062", "M454.11,319.21c19.56-3.81,31.62-25,23.11-44.21-21-47.12-48.5-151.75-73.12-186.75A208.13,208.13,0,0,0,234.1,0H192A190.64,190.64,0,0,0,84.18,33.3L45.46,3.38A16,16,0,0,0,23,6.19L3.37,31.46A16,16,0,0,0,6.18,53.91L594.53,508.63A16,16,0,0,0,617,505.82l19.64-25.27a16,16,0,0,0-2.81-22.45ZM313.39,210.45,263.61,172c5.88-7.14,14.43-12,24.36-12a32.06,32.06,0,0,1,32,32C320,199,317.24,205.17,313.39,210.45ZM616,304a24,24,0,1,0-24-24A24,24,0,0,0,616,304Zm-64,64a24,24,0,1,0-24-24A24,24,0,0,0,552,368ZM288,384a32,32,0,0,1,32-32h19.54L20.73,105.59A190.86,190.86,0,0,0,0,192c0,56.75,24.75,107.62,64,142.88V512H288V480h64a64,64,0,0,0,64-64H320A32,32,0,0,1,288,384Zm328-24a24,24,0,1,0,24,24A24,24,0,0,0,616,360Z"],
	"head-side-mask": [512, 512, [], "e063", "M.15,184.42C-2.17,244.21,23,298.06,64,334.88V512H224V316.51L3.67,156.25A182.28,182.28,0,0,0,.15,184.42ZM509.22,275c-21-47.12-48.5-151.75-73.12-186.75A208.11,208.11,0,0,0,266.11,0H200C117,0,42.48,50.57,13.25,123.65L239.21,288H511.76A31.35,31.35,0,0,0,509.22,275ZM320,224a32,32,0,1,1,32-32A32.07,32.07,0,0,1,320,224Zm16,144H496l16-48H256V512H401.88a64,64,0,0,0,60.71-43.76L464,464H336a16,16,0,0,1,0-32H474.67l10.67-32H336a16,16,0,0,1,0-32Z"],
	"head-side-virus": [512, 512, [], "e064", "M272,240a16,16,0,1,0,16,16A16,16,0,0,0,272,240Zm-64-64a16,16,0,1,0,16,16A16,16,0,0,0,208,176Zm301.2,99c-20.93-47.12-48.43-151.73-73.07-186.75A207.9,207.9,0,0,0,266.09,0H192C86,0,0,86,0,192A191.23,191.23,0,0,0,64,334.81V512H320V448h64a64,64,0,0,0,64-64V320H480A32,32,0,0,0,509.2,275ZM368,240H355.88c-28.51,0-42.79,34.47-22.63,54.63l8.58,8.57a16,16,0,1,1-22.63,22.63l-8.57-8.58C290.47,297.09,256,311.37,256,339.88V352a16,16,0,0,1-32,0V339.88c0-28.51-34.47-42.79-54.63-22.63l-8.57,8.58a16,16,0,0,1-22.63-22.63l8.58-8.57c20.16-20.16,5.88-54.63-22.63-54.63H112a16,16,0,0,1,0-32h12.12c28.51,0,42.79-34.47,22.63-54.63l-8.58-8.57a16,16,0,0,1,22.63-22.63l8.57,8.58c20.16,20.16,54.63,5.88,54.63-22.63V96a16,16,0,0,1,32,0v12.12c0,28.51,34.47,42.79,54.63,22.63l8.57-8.58a16,16,0,0,1,22.63,22.63l-8.58,8.57C313.09,173.53,327.37,208,355.88,208H368a16,16,0,0,1,0,32Z"],
	"heading": [512, 512, [], "f1dc", "M448 96v320h32a16 16 0 0 1 16 16v32a16 16 0 0 1-16 16H320a16 16 0 0 1-16-16v-32a16 16 0 0 1 16-16h32V288H160v128h32a16 16 0 0 1 16 16v32a16 16 0 0 1-16 16H32a16 16 0 0 1-16-16v-32a16 16 0 0 1 16-16h32V96H32a16 16 0 0 1-16-16V48a16 16 0 0 1 16-16h160a16 16 0 0 1 16 16v32a16 16 0 0 1-16 16h-32v128h192V96h-32a16 16 0 0 1-16-16V48a16 16 0 0 1 16-16h160a16 16 0 0 1 16 16v32a16 16 0 0 1-16 16z"],
	"headphones": [512, 512, [], "f025", "M256 32C114.52 32 0 146.496 0 288v48a32 32 0 0 0 17.689 28.622l14.383 7.191C34.083 431.903 83.421 480 144 480h24c13.255 0 24-10.745 24-24V280c0-13.255-10.745-24-24-24h-24c-31.342 0-59.671 12.879-80 33.627V288c0-105.869 86.131-192 192-192s192 86.131 192 192v1.627C427.671 268.879 399.342 256 368 256h-24c-13.255 0-24 10.745-24 24v176c0 13.255 10.745 24 24 24h24c60.579 0 109.917-48.098 111.928-108.187l14.382-7.191A32 32 0 0 0 512 336v-48c0-141.479-114.496-256-256-256z"],
	"headphones-alt": [512, 512, [], "f58f", "M160 288h-16c-35.35 0-64 28.7-64 64.12v63.76c0 35.41 28.65 64.12 64 64.12h16c17.67 0 32-14.36 32-32.06V320.06c0-17.71-14.33-32.06-32-32.06zm208 0h-16c-17.67 0-32 14.35-32 32.06v127.88c0 17.7 14.33 32.06 32 32.06h16c35.35 0 64-28.71 64-64.12v-63.76c0-35.41-28.65-64.12-64-64.12zM256 32C112.91 32 4.57 151.13 0 288v112c0 8.84 7.16 16 16 16h16c8.84 0 16-7.16 16-16V288c0-114.67 93.33-207.8 208-207.82 114.67.02 208 93.15 208 207.82v112c0 8.84 7.16 16 16 16h16c8.84 0 16-7.16 16-16V288C507.43 151.13 399.09 32 256 32z"],
	"headset": [512, 512, [], "f590", "M192 208c0-17.67-14.33-32-32-32h-16c-35.35 0-64 28.65-64 64v48c0 35.35 28.65 64 64 64h16c17.67 0 32-14.33 32-32V208zm176 144c35.35 0 64-28.65 64-64v-48c0-35.35-28.65-64-64-64h-16c-17.67 0-32 14.33-32 32v112c0 17.67 14.33 32 32 32h16zM256 0C113.18 0 4.58 118.83 0 256v16c0 8.84 7.16 16 16 16h16c8.84 0 16-7.16 16-16v-16c0-114.69 93.31-208 208-208s208 93.31 208 208h-.12c.08 2.43.12 165.72.12 165.72 0 23.35-18.93 42.28-42.28 42.28H320c0-26.51-21.49-48-48-48h-32c-26.51 0-48 21.49-48 48s21.49 48 48 48h181.72c49.86 0 90.28-40.42 90.28-90.28V256C507.42 118.83 398.82 0 256 0z"],
	"heart": [512, 512, [], "f004", "M462.3 62.6C407.5 15.9 326 24.3 275.7 76.2L256 96.5l-19.7-20.3C186.1 24.3 104.5 15.9 49.7 62.6c-62.8 53.6-66.1 149.8-9.9 207.9l193.5 199.8c12.5 12.9 32.8 12.9 45.3 0l193.5-199.8c56.3-58.1 53-154.3-9.8-207.9z"],
	"heart-broken": [512, 512, [], "f7a9", "M473.7 73.8l-2.4-2.5c-46-47-118-51.7-169.6-14.8L336 159.9l-96 64 48 128-144-144 96-64-28.6-86.5C159.7 19.6 87 24 40.7 71.4l-2.4 2.4C-10.4 123.6-12.5 202.9 31 256l212.1 218.6c7.1 7.3 18.6 7.3 25.7 0L481 255.9c43.5-53 41.4-132.3-7.3-182.1z"],
	"heartbeat": [512, 512, [], "f21e", "M320.2 243.8l-49.7 99.4c-6 12.1-23.4 11.7-28.9-.6l-56.9-126.3-30 71.7H60.6l182.5 186.5c7.1 7.3 18.6 7.3 25.7 0L451.4 288H342.3l-22.1-44.2zM473.7 73.9l-2.4-2.5c-51.5-52.6-135.8-52.6-187.4 0L256 100l-27.9-28.5c-51.5-52.7-135.9-52.7-187.4 0l-2.4 2.4C-10.4 123.7-12.5 203 31 256h102.4l35.9-86.2c5.4-12.9 23.6-13.2 29.4-.4l58.2 129.3 49-97.9c5.9-11.8 22.7-11.8 28.6 0l27.6 55.2H481c43.5-53 41.4-132.3-7.3-182.1z"],
	"helicopter": [640, 512, [], "f533", "M304 384h272c17.67 0 32-14.33 32-32 0-123.71-100.29-224-224-224V64h176c8.84 0 16-7.16 16-16V16c0-8.84-7.16-16-16-16H144c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h176v64H112L68.8 70.4C65.78 66.37 61.03 64 56 64H16.01C5.6 64-2.04 73.78.49 83.88L32 192l160 64 86.4 115.2A31.992 31.992 0 0 0 304 384zm112-188.49C478.55 208.3 528.03 257.44 540.79 320H416V195.51zm219.37 263.3l-22.15-22.2c-6.25-6.26-16.24-6.1-22.64.01-7.09 6.77-13.84 11.25-24.64 11.25H240c-8.84 0-16 7.18-16 16.03v32.06c0 8.85 7.16 16.03 16 16.03h325.94c14.88 0 35.3-.47 68.45-29.52 7.02-6.14 7.57-17.05.98-23.66z"],
	"highlighter": [544, 512, [], "f591", "M0 479.98L99.92 512l35.45-35.45-67.04-67.04L0 479.98zm124.61-240.01a36.592 36.592 0 0 0-10.79 38.1l13.05 42.83-50.93 50.94 96.23 96.23 50.86-50.86 42.74 13.08c13.73 4.2 28.65-.01 38.15-10.78l35.55-41.64-173.34-173.34-41.52 35.44zm403.31-160.7l-63.2-63.2c-20.49-20.49-53.38-21.52-75.12-2.35L190.55 183.68l169.77 169.78L530.27 154.4c19.18-21.74 18.15-54.63-2.35-75.13z"],
	"hiking": [384, 512, [], "f6ec", "M80.95 472.23c-4.28 17.16 6.14 34.53 23.28 38.81 2.61.66 5.22.95 7.8.95 14.33 0 27.37-9.7 31.02-24.23l25.24-100.97-52.78-52.78-34.56 138.22zm14.89-196.12L137 117c2.19-8.42-3.14-16.95-11.92-19.06-43.88-10.52-88.35 15.07-99.32 57.17L.49 253.24c-2.19 8.42 3.14 16.95 11.92 19.06l63.56 15.25c8.79 2.1 17.68-3.02 19.87-11.44zM368 160h-16c-8.84 0-16 7.16-16 16v16h-34.75l-46.78-46.78C243.38 134.11 228.61 128 212.91 128c-27.02 0-50.47 18.3-57.03 44.52l-26.92 107.72a32.012 32.012 0 0 0 8.42 30.39L224 397.25V480c0 17.67 14.33 32 32 32s32-14.33 32-32v-82.75c0-17.09-6.66-33.16-18.75-45.25l-46.82-46.82c.15-.5.49-.89.62-1.41l19.89-79.57 22.43 22.43c6 6 14.14 9.38 22.62 9.38h48v240c0 8.84 7.16 16 16 16h16c8.84 0 16-7.16 16-16V176c.01-8.84-7.15-16-15.99-16zM240 96c26.51 0 48-21.49 48-48S266.51 0 240 0s-48 21.49-48 48 21.49 48 48 48z"],
	"hippo": [640, 512, [], "f6ed", "M581.12 96.2c-27.67-.15-52.5 17.58-76.6 26.62C489.98 88.27 455.83 64 416 64c-11.28 0-21.95 2.3-32 5.88V56c0-13.26-10.75-24-24-24h-16c-13.25 0-24 10.74-24 24v48.98C286.01 79.58 241.24 64 192 64 85.96 64 0 135.64 0 224v240c0 8.84 7.16 16 16 16h64c8.84 0 16-7.16 16-16v-70.79C128.35 407.57 166.72 416 208 416s79.65-8.43 112-22.79V464c0 8.84 7.16 16 16 16h64c8.84 0 16-7.16 16-16V288h128v32c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-32c17.67 0 32-14.33 32-32v-92.02c0-34.09-24.79-67.59-58.88-67.78zM448 176c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16z"],
	"history": [512, 512, [], "f1da", "M504 255.531c.253 136.64-111.18 248.372-247.82 248.468-59.015.042-113.223-20.53-155.822-54.911-11.077-8.94-11.905-25.541-1.839-35.607l11.267-11.267c8.609-8.609 22.353-9.551 31.891-1.984C173.062 425.135 212.781 440 256 440c101.705 0 184-82.311 184-184 0-101.705-82.311-184-184-184-48.814 0-93.149 18.969-126.068 49.932l50.754 50.754c10.08 10.08 2.941 27.314-11.313 27.314H24c-8.837 0-16-7.163-16-16V38.627c0-14.254 17.234-21.393 27.314-11.314l49.372 49.372C129.209 34.136 189.552 8 256 8c136.81 0 247.747 110.78 248 247.531zm-180.912 78.784l9.823-12.63c8.138-10.463 6.253-25.542-4.21-33.679L288 256.349V152c0-13.255-10.745-24-24-24h-16c-13.255 0-24 10.745-24 24v135.651l65.409 50.874c10.463 8.137 25.541 6.253 33.679-4.21z"],
	"hockey-puck": [512, 512, [], "f453", "M0 160c0-53 114.6-96 256-96s256 43 256 96-114.6 96-256 96S0 213 0 160zm0 82.2V352c0 53 114.6 96 256 96s256-43 256-96V242.2c-113.4 82.3-398.5 82.4-512 0z"],
	"holly-berry": [448, 512, [], "f7aa", "M144 192c26.5 0 48-21.5 48-48s-21.5-48-48-48-48 21.5-48 48 21.5 48 48 48zm112-48c0 26.5 21.5 48 48 48s48-21.5 48-48-21.5-48-48-48-48 21.5-48 48zm-32-48c26.5 0 48-21.5 48-48S250.5 0 224 0s-48 21.5-48 48 21.5 48 48 48zm-16.2 139.1c.1-12.4-13.1-20.1-23.8-13.7-34.3 20.3-71.4 32.7-108.7 36.2-9.7.9-15.6 11.3-11.6 20.2 6.2 13.9 11.1 28.6 14.7 43.8 3.6 15.2-5.3 30.6-20.2 35.1-14.9 4.5-30.1 7.6-45.3 9.1-9.7 1-15.7 11.3-11.7 20.2 15 32.8 22.9 69.5 23 107.7.1 14.4 15.2 23.1 27.6 16 33.2-19 68.9-30.5 104.8-33.9 9.7-.9 15.6-11.3 11.6-20.2-6.2-13.9-11.1-28.6-14.7-43.8-3.6-15.2 5.3-30.6 20.2-35.1 14.9-4.5 30.1-7.6 45.3-9.1 9.7-1 15.7-11.3 11.7-20.2-15.5-34.2-23.3-72.5-22.9-112.3zM435 365.6c-15.2-1.6-30.3-4.7-45.3-9.1-14.9-4.5-23.8-19.9-20.2-35.1 3.6-15.2 8.5-29.8 14.7-43.8 4-8.9-1.9-19.3-11.6-20.2-37.3-3.5-74.4-15.9-108.7-36.2-10.7-6.3-23.9 1.4-23.8 13.7 0 1.6-.2 3.2-.2 4.9.2 33.3 7 65.7 19.9 94 5.7 12.4 5.2 26.6-.6 38.9 4.9 1.2 9.9 2.2 14.8 3.7 14.9 4.5 23.8 19.9 20.2 35.1-3.6 15.2-8.5 29.8-14.7 43.8-4 8.9 1.9 19.3 11.6 20.2 35.9 3.4 71.6 14.9 104.8 33.9 12.5 7.1 27.6-1.6 27.6-16 .2-38.2 8-75 23-107.7 4.3-8.7-1.8-19.1-11.5-20.1z"],
	"home": [576, 512, [], "f015", "M280.37 148.26L96 300.11V464a16 16 0 0 0 16 16l112.06-.29a16 16 0 0 0 15.92-16V368a16 16 0 0 1 16-16h64a16 16 0 0 1 16 16v95.64a16 16 0 0 0 16 16.05L464 480a16 16 0 0 0 16-16V300L295.67 148.26a12.19 12.19 0 0 0-15.3 0zM571.6 251.47L488 182.56V44.05a12 12 0 0 0-12-12h-56a12 12 0 0 0-12 12v72.61L318.47 43a48 48 0 0 0-61 0L4.34 251.47a12 12 0 0 0-1.6 16.9l25.5 31A12 12 0 0 0 45.15 301l235.22-193.74a12.19 12.19 0 0 1 15.3 0L530.9 301a12 12 0 0 0 16.9-1.6l25.5-31a12 12 0 0 0-1.7-16.93z"],
	"horse": [576, 512, [], "f6f0", "M575.92 76.6c-.01-8.13-3.02-15.87-8.58-21.8-3.78-4.03-8.58-9.12-13.69-14.5 11.06-6.84 19.5-17.49 22.18-30.66C576.85 4.68 572.96 0 567.9 0H447.92c-70.69 0-128 57.31-128 128H160c-28.84 0-54.4 12.98-72 33.11V160c-48.53 0-88 39.47-88 88v56c0 8.84 7.16 16 16 16h16c8.84 0 16-7.16 16-16v-56c0-13.22 6.87-24.39 16.78-31.68-.21 2.58-.78 5.05-.78 7.68 0 27.64 11.84 52.36 30.54 69.88l-25.72 68.6a63.945 63.945 0 0 0-2.16 37.99l24.85 99.41A15.982 15.982 0 0 0 107.02 512h65.96c10.41 0 18.05-9.78 15.52-19.88l-26.31-105.26 23.84-63.59L320 345.6V496c0 8.84 7.16 16 16 16h64c8.84 0 16-7.16 16-16V318.22c19.74-20.19 32-47.75 32-78.22 0-.22-.07-.42-.08-.64V136.89l16 7.11 18.9 37.7c7.45 14.87 25.05 21.55 40.49 15.37l32.55-13.02a31.997 31.997 0 0 0 20.12-29.74l-.06-77.71zm-64 19.4c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16z"],
	"horse-head": [512, 512, [], "f7ab", "M509.8 332.5l-69.9-164.3c-14.9-41.2-50.4-71-93-79.2 18-10.6 46.3-35.9 34.2-82.3-1.3-5-7.1-7.9-12-6.1L166.9 76.3C35.9 123.4 0 238.9 0 398.8V480c0 17.7 14.3 32 32 32h236.2c23.8 0 39.3-25 28.6-46.3L256 384v-.7c-45.6-3.5-84.6-30.7-104.3-69.6-1.6-3.1-.9-6.9 1.6-9.3l12.1-12.1c3.9-3.9 10.6-2.7 12.9 2.4 14.8 33.7 48.2 57.4 87.4 57.4 17.2 0 33-5.1 46.8-13.2l46 63.9c6 8.4 15.7 13.3 26 13.3h50.3c8.5 0 16.6-3.4 22.6-9.4l45.3-39.8c8.9-9.1 11.7-22.6 7.1-34.4zM328 224c-13.3 0-24-10.7-24-24s10.7-24 24-24 24 10.7 24 24-10.7 24-24 24z"],
	"hospital": [448, 512, [], "f0f8", "M448 492v20H0v-20c0-6.627 5.373-12 12-12h20V120c0-13.255 10.745-24 24-24h88V24c0-13.255 10.745-24 24-24h112c13.255 0 24 10.745 24 24v72h88c13.255 0 24 10.745 24 24v360h20c6.627 0 12 5.373 12 12zM308 192h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12v-40c0-6.627-5.373-12-12-12zm-168 64h40c6.627 0 12-5.373 12-12v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12zm104 128h-40c-6.627 0-12 5.373-12 12v84h64v-84c0-6.627-5.373-12-12-12zm64-96h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12v-40c0-6.627-5.373-12-12-12zm-116 12c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12v-40zM182 96h26v26a6 6 0 0 0 6 6h20a6 6 0 0 0 6-6V96h26a6 6 0 0 0 6-6V70a6 6 0 0 0-6-6h-26V38a6 6 0 0 0-6-6h-20a6 6 0 0 0-6 6v26h-26a6 6 0 0 0-6 6v20a6 6 0 0 0 6 6z"],
	"hospital-alt": [576, 512, [], "f47d", "M544 96H416V32c0-17.7-14.3-32-32-32H192c-17.7 0-32 14.3-32 32v64H32c-17.7 0-32 14.3-32 32v368c0 8.8 7.2 16 16 16h544c8.8 0 16-7.2 16-16V128c0-17.7-14.3-32-32-32zM160 436c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40zm0-128c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40zm160 128c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40zm0-128c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40zm16-170c0 3.3-2.7 6-6 6h-26v26c0 3.3-2.7 6-6 6h-20c-3.3 0-6-2.7-6-6v-26h-26c-3.3 0-6-2.7-6-6v-20c0-3.3 2.7-6 6-6h26V86c0-3.3 2.7-6 6-6h20c3.3 0 6 2.7 6 6v26h26c3.3 0 6 2.7 6 6v20zm144 298c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40zm0-128c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h40c6.6 0 12 5.4 12 12v40z"],
	"hospital-symbol": [512, 512, [], "f47e", "M256 0C114.6 0 0 114.6 0 256s114.6 256 256 256 256-114.6 256-256S397.4 0 256 0zm112 376c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8v-88h-96v88c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V136c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v88h96v-88c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v240z"],
	"hospital-user": [640, 512, [], "f80d", "M480 320a96 96 0 1 0-96-96 96 96 0 0 0 96 96zm48 32a22.88 22.88 0 0 0-7.06 1.09 124.76 124.76 0 0 1-81.89 0A22.82 22.82 0 0 0 432 352a112 112 0 0 0-112 112.62c.14 26.26 21.73 47.38 48 47.38h224c26.27 0 47.86-21.12 48-47.38A112 112 0 0 0 528 352zm-198.09 10.45A145.19 145.19 0 0 1 352 344.62V128a32 32 0 0 0-32-32h-32V32a32 32 0 0 0-32-32H96a32 32 0 0 0-32 32v64H32a32 32 0 0 0-32 32v368a16 16 0 0 0 16 16h288.31A78.62 78.62 0 0 1 288 464.79a143.06 143.06 0 0 1 41.91-102.34zM144 404a12 12 0 0 1-12 12H92a12 12 0 0 1-12-12v-40a12 12 0 0 1 12-12h40a12 12 0 0 1 12 12zm0-128a12 12 0 0 1-12 12H92a12 12 0 0 1-12-12v-40a12 12 0 0 1 12-12h40a12 12 0 0 1 12 12zm48-122a6 6 0 0 1-6 6h-20a6 6 0 0 1-6-6v-26h-26a6 6 0 0 1-6-6v-20a6 6 0 0 1 6-6h26V70a6 6 0 0 1 6-6h20a6 6 0 0 1 6 6v26h26a6 6 0 0 1 6 6v20a6 6 0 0 1-6 6h-26zm80 250a12 12 0 0 1-12 12h-40a12 12 0 0 1-12-12v-40a12 12 0 0 1 12-12h40a12 12 0 0 1 12 12zm0-128a12 12 0 0 1-12 12h-40a12 12 0 0 1-12-12v-40a12 12 0 0 1 12-12h40a12 12 0 0 1 12 12z"],
	"hot-tub": [512, 512, [], "f593", "M414.21 177.65c1.02 8.21 7.75 14.35 15.75 14.35h16.12c9.51 0 17.08-8.57 16-18.35-4.34-39.11-22.4-74.53-50.13-97.16-17.37-14.17-28.82-36.75-31.98-62.15C378.96 6.14 372.22 0 364.23 0h-16.12c-9.51 0-17.09 8.57-16 18.35 4.34 39.11 22.4 74.53 50.13 97.16 17.36 14.17 28.82 36.75 31.97 62.14zm-108 0c1.02 8.21 7.75 14.35 15.75 14.35h16.12c9.51 0 17.08-8.57 16-18.35-4.34-39.11-22.4-74.53-50.13-97.16-17.37-14.17-28.82-36.75-31.98-62.15C270.96 6.14 264.22 0 256.23 0h-16.12c-9.51 0-17.09 8.57-16 18.35 4.34 39.11 22.4 74.53 50.13 97.16 17.36 14.17 28.82 36.75 31.97 62.14zM480 256H256l-110.93-83.2a63.99 63.99 0 0 0-38.4-12.8H64c-35.35 0-64 28.65-64 64v224c0 35.35 28.65 64 64 64h384c35.35 0 64-28.65 64-64V288c0-17.67-14.33-32-32-32zM128 440c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8V328c0-4.42 3.58-8 8-8h16c4.42 0 8 3.58 8 8v112zm96 0c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8V328c0-4.42 3.58-8 8-8h16c4.42 0 8 3.58 8 8v112zm96 0c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8V328c0-4.42 3.58-8 8-8h16c4.42 0 8 3.58 8 8v112zm96 0c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8V328c0-4.42 3.58-8 8-8h16c4.42 0 8 3.58 8 8v112zM64 128c35.35 0 64-28.65 64-64S99.35 0 64 0 0 28.65 0 64s28.65 64 64 64z"],
	"hotdog": [512, 512, [], "f80f", "M488.56 23.44a80 80 0 0 0-113.12 0l-352 352a80 80 0 1 0 113.12 113.12l352-352a80 80 0 0 0 0-113.12zm-49.93 95.19c-19.6 19.59-37.52 22.67-51.93 25.14C373.76 146 364.4 147.6 352 160s-14 21.76-16.23 34.71c-2.48 14.4-5.55 32.33-25.15 51.92s-37.52 22.67-51.92 25.15C245.75 274 236.4 275.6 224 288s-14 21.75-16.23 34.7c-2.47 14.4-5.54 32.33-25.14 51.92s-37.53 22.68-51.93 25.15C117.76 402 108.4 403.6 96 416a16 16 0 0 1-22.63-22.63c19.6-19.59 37.52-22.67 51.92-25.14 13-2.22 22.3-3.82 34.71-16.23s14-21.75 16.22-34.7c2.48-14.4 5.55-32.33 25.15-51.92s37.52-22.67 51.92-25.14c13-2.22 22.3-3.83 34.7-16.23s14-21.76 16.24-34.71c2.47-14.4 5.54-32.33 25.14-51.92s37.52-22.68 51.92-25.15C394.24 110 403.59 108.41 416 96a16 16 0 0 1 22.63 22.63zM31.44 322.18L322.18 31.44l-11.54-11.55c-25-25-63.85-26.66-86.79-3.72L16.17 223.85c-22.94 22.94-21.27 61.79 3.72 86.78zm449.12-132.36L189.82 480.56l11.54 11.55c25 25 63.85 26.66 86.79 3.72l207.68-207.68c22.94-22.94 21.27-61.79-3.72-86.79z"],
	"hotel": [576, 512, [], "f594", "M560 64c8.84 0 16-7.16 16-16V16c0-8.84-7.16-16-16-16H16C7.16 0 0 7.16 0 16v32c0 8.84 7.16 16 16 16h15.98v384H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h240v-80c0-8.8 7.2-16 16-16h32c8.8 0 16 7.2 16 16v80h240c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16h-16V64h16zm-304 44.8c0-6.4 6.4-12.8 12.8-12.8h38.4c6.4 0 12.8 6.4 12.8 12.8v38.4c0 6.4-6.4 12.8-12.8 12.8h-38.4c-6.4 0-12.8-6.4-12.8-12.8v-38.4zm0 96c0-6.4 6.4-12.8 12.8-12.8h38.4c6.4 0 12.8 6.4 12.8 12.8v38.4c0 6.4-6.4 12.8-12.8 12.8h-38.4c-6.4 0-12.8-6.4-12.8-12.8v-38.4zm-128-96c0-6.4 6.4-12.8 12.8-12.8h38.4c6.4 0 12.8 6.4 12.8 12.8v38.4c0 6.4-6.4 12.8-12.8 12.8h-38.4c-6.4 0-12.8-6.4-12.8-12.8v-38.4zM179.2 256h-38.4c-6.4 0-12.8-6.4-12.8-12.8v-38.4c0-6.4 6.4-12.8 12.8-12.8h38.4c6.4 0 12.8 6.4 12.8 12.8v38.4c0 6.4-6.4 12.8-12.8 12.8zM192 384c0-53.02 42.98-96 96-96s96 42.98 96 96H192zm256-140.8c0 6.4-6.4 12.8-12.8 12.8h-38.4c-6.4 0-12.8-6.4-12.8-12.8v-38.4c0-6.4 6.4-12.8 12.8-12.8h38.4c6.4 0 12.8 6.4 12.8 12.8v38.4zm0-96c0 6.4-6.4 12.8-12.8 12.8h-38.4c-6.4 0-12.8-6.4-12.8-12.8v-38.4c0-6.4 6.4-12.8 12.8-12.8h38.4c6.4 0 12.8 6.4 12.8 12.8v38.4z"],
	"hourglass": [384, 512, [], "f254", "M360 64c13.255 0 24-10.745 24-24V24c0-13.255-10.745-24-24-24H24C10.745 0 0 10.745 0 24v16c0 13.255 10.745 24 24 24 0 90.965 51.016 167.734 120.842 192C75.016 280.266 24 357.035 24 448c-13.255 0-24 10.745-24 24v16c0 13.255 10.745 24 24 24h336c13.255 0 24-10.745 24-24v-16c0-13.255-10.745-24-24-24 0-90.965-51.016-167.734-120.842-192C308.984 231.734 360 154.965 360 64z"],
	"hourglass-end": [384, 512, [], "f253", "M360 64c13.255 0 24-10.745 24-24V24c0-13.255-10.745-24-24-24H24C10.745 0 0 10.745 0 24v16c0 13.255 10.745 24 24 24 0 90.965 51.016 167.734 120.842 192C75.016 280.266 24 357.035 24 448c-13.255 0-24 10.745-24 24v16c0 13.255 10.745 24 24 24h336c13.255 0 24-10.745 24-24v-16c0-13.255-10.745-24-24-24 0-90.965-51.016-167.734-120.842-192C308.984 231.734 360 154.965 360 64zM192 208c-57.787 0-104-66.518-104-144h208c0 77.945-46.51 144-104 144z"],
	"hourglass-half": [384, 512, [], "f252", "M360 0H24C10.745 0 0 10.745 0 24v16c0 13.255 10.745 24 24 24 0 90.965 51.016 167.734 120.842 192C75.016 280.266 24 357.035 24 448c-13.255 0-24 10.745-24 24v16c0 13.255 10.745 24 24 24h336c13.255 0 24-10.745 24-24v-16c0-13.255-10.745-24-24-24 0-90.965-51.016-167.734-120.842-192C308.984 231.734 360 154.965 360 64c13.255 0 24-10.745 24-24V24c0-13.255-10.745-24-24-24zm-75.078 384H99.08c17.059-46.797 52.096-80 92.92-80 40.821 0 75.862 33.196 92.922 80zm.019-256H99.078C91.988 108.548 88 86.748 88 64h208c0 22.805-3.987 44.587-11.059 64z"],
	"hourglass-start": [384, 512, [], "f251", "M360 0H24C10.745 0 0 10.745 0 24v16c0 13.255 10.745 24 24 24 0 90.965 51.016 167.734 120.842 192C75.016 280.266 24 357.035 24 448c-13.255 0-24 10.745-24 24v16c0 13.255 10.745 24 24 24h336c13.255 0 24-10.745 24-24v-16c0-13.255-10.745-24-24-24 0-90.965-51.016-167.734-120.842-192C308.984 231.734 360 154.965 360 64c13.255 0 24-10.745 24-24V24c0-13.255-10.745-24-24-24zm-64 448H88c0-77.458 46.204-144 104-144 57.786 0 104 66.517 104 144z"],
	"house-damage": [576, 512, [], "f6f1", "M288 114.96L69.47 307.71c-1.62 1.46-3.69 2.14-5.47 3.35V496c0 8.84 7.16 16 16 16h149.23L192 439.19l104.11-64-60.16-119.22L384 392.75l-104.11 64L319.81 512H496c8.84 0 16-7.16 16-16V311.1c-1.7-1.16-3.72-1.82-5.26-3.2L288 114.96zm282.69 121.32L512 184.45V48c0-8.84-7.16-16-16-16h-64c-8.84 0-16 7.16-16 16v51.69L314.75 10.31C307.12 3.45 297.56.01 288 0s-19.1 3.41-26.7 10.27L5.31 236.28c-6.57 5.91-7.12 16.02-1.21 22.6l21.4 23.82c5.9 6.57 16.02 7.12 22.6 1.21L277.42 81.63c6.05-5.33 15.12-5.33 21.17 0L527.91 283.9c6.57 5.9 16.69 5.36 22.6-1.21l21.4-23.82c5.9-6.57 5.36-16.69-1.22-22.59z"],
	"house-user": [576, 512, [], "e065", "M570.69,236.27,512,184.44V48a16,16,0,0,0-16-16H432a16,16,0,0,0-16,16V99.67L314.78,10.3C308.5,4.61,296.53,0,288,0s-20.46,4.61-26.74,10.3l-256,226A18.27,18.27,0,0,0,0,248.2a18.64,18.64,0,0,0,4.09,10.71L25.5,282.7a21.14,21.14,0,0,0,12,5.3,21.67,21.67,0,0,0,10.69-4.11l15.9-14V480a32,32,0,0,0,32,32H480a32,32,0,0,0,32-32V269.88l15.91,14A21.94,21.94,0,0,0,538.63,288a20.89,20.89,0,0,0,11.87-5.31l21.41-23.81A21.64,21.64,0,0,0,576,248.19,21,21,0,0,0,570.69,236.27ZM288,176a64,64,0,1,1-64,64A64,64,0,0,1,288,176ZM400,448H176a16,16,0,0,1-16-16,96,96,0,0,1,96-96h64a96,96,0,0,1,96,96A16,16,0,0,1,400,448Z"],
	"hryvnia": [384, 512, [], "f6f2", "M368 240c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16h-41.86c13.41-28.63 13.74-63.33-4.13-94.05C303.34 49.84 267.1 32 229.96 32h-78.82c-24.32 0-47.86 8.53-66.54 24.09L72.83 65.9c-10.18 8.49-11.56 23.62-3.07 33.8l20.49 24.59c8.49 10.19 23.62 11.56 33.81 3.07l11.73-9.78c4.32-3.6 9.77-5.57 15.39-5.57h83.62c11.69 0 21.2 9.52 21.2 21.2 0 5.91-2.48 11.58-6.81 15.58L219.7 176H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h134.37l-34.67 32H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h41.86c-13.41 28.63-13.74 63.33 4.13 94.05C80.66 462.15 116.9 480 154.04 480h78.82c24.32 0 47.86-8.53 66.54-24.09l11.77-9.81c10.18-8.49 11.56-23.62 3.07-33.8l-20.49-24.59c-8.49-10.19-23.62-11.56-33.81-3.07l-11.75 9.8a23.992 23.992 0 0 1-15.36 5.56H149.2c-11.69 0-21.2-9.52-21.2-21.2 0-5.91 2.48-11.58 6.81-15.58L164.3 336H368c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16H233.63l34.67-32H368z"],
	"i-cursor": [256, 512, [], "f246", "M256 52.048V12.065C256 5.496 250.726.148 244.158.066 211.621-.344 166.469.011 128 37.959 90.266.736 46.979-.114 11.913.114 5.318.157 0 5.519 0 12.114v39.645c0 6.687 5.458 12.078 12.145 11.998C38.111 63.447 96 67.243 96 112.182V224H60c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h36v112c0 44.932-56.075 48.031-83.95 47.959C5.404 447.942 0 453.306 0 459.952v39.983c0 6.569 5.274 11.917 11.842 11.999 32.537.409 77.689.054 116.158-37.894 37.734 37.223 81.021 38.073 116.087 37.845 6.595-.043 11.913-5.405 11.913-12V460.24c0-6.687-5.458-12.078-12.145-11.998C217.889 448.553 160 444.939 160 400V288h36c6.627 0 12-5.373 12-12v-40c0-6.627-5.373-12-12-12h-36V112.182c0-44.932 56.075-48.213 83.95-48.142 6.646.018 12.05-5.346 12.05-11.992z"],
	"ice-cream": [448, 512, [], "f810", "M368 160h-.94a144 144 0 1 0-286.12 0H80a48 48 0 0 0 0 96h288a48 48 0 0 0 0-96zM195.38 493.69a31.52 31.52 0 0 0 57.24 0L352 288H96z"],
	"icicles": [512, 512, [], "f7ad", "M511.4 37.9C515.1 18.2 500 0 480 0H32C10.6 0-4.8 20.7 1.4 41.2l87.1 273.4c2.5 7.2 12.7 7.2 15.1 0L140 190.5l44.2 187.3c1.9 8.3 13.7 8.3 15.6 0l46.5-196.9 34.1 133.4c2.3 7.6 13 7.6 15.3 0l45.8-172.5 66.7 363.8c1.7 8.6 14 8.6 15.7 0l87.5-467.7z"],
	"icons": [512, 512, [], "f86d", "M116.65 219.35a15.68 15.68 0 0 0 22.65 0l96.75-99.83c28.15-29 26.5-77.1-4.91-103.88C203.75-7.7 163-3.5 137.86 22.44L128 32.58l-9.85-10.14C93.05-3.5 52.25-7.7 24.86 15.64c-31.41 26.78-33 74.85-5 103.88zm143.92 100.49h-48l-7.08-14.24a27.39 27.39 0 0 0-25.66-17.78h-71.71a27.39 27.39 0 0 0-25.66 17.78l-7 14.24h-48A27.45 27.45 0 0 0 0 347.3v137.25A27.44 27.44 0 0 0 27.43 512h233.14A27.45 27.45 0 0 0 288 484.55V347.3a27.45 27.45 0 0 0-27.43-27.46zM144 468a52 52 0 1 1 52-52 52 52 0 0 1-52 52zm355.4-115.9h-60.58l22.36-50.75c2.1-6.65-3.93-13.21-12.18-13.21h-75.59c-6.3 0-11.66 3.9-12.5 9.1l-16.8 106.93c-1 6.3 4.88 11.89 12.5 11.89h62.31l-24.2 83c-1.89 6.65 4.2 12.9 12.23 12.9a13.26 13.26 0 0 0 10.92-5.25l92.4-138.91c4.88-6.91-1.16-15.7-10.87-15.7zM478.08.33L329.51 23.17C314.87 25.42 304 38.92 304 54.83V161.6a83.25 83.25 0 0 0-16-1.7c-35.35 0-64 21.48-64 48s28.65 48 64 48c35.2 0 63.73-21.32 64-47.66V99.66l112-17.22v47.18a83.25 83.25 0 0 0-16-1.7c-35.35 0-64 21.48-64 48s28.65 48 64 48c35.2 0 63.73-21.32 64-47.66V32c0-19.48-16-34.42-33.92-31.67z"],
	"id-badge": [384, 512, [], "f2c1", "M336 0H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V48c0-26.5-21.5-48-48-48zM144 32h96c8.8 0 16 7.2 16 16s-7.2 16-16 16h-96c-8.8 0-16-7.2-16-16s7.2-16 16-16zm48 128c35.3 0 64 28.7 64 64s-28.7 64-64 64-64-28.7-64-64 28.7-64 64-64zm112 236.8c0 10.6-10 19.2-22.4 19.2H102.4C90 416 80 407.4 80 396.8v-19.2c0-31.8 30.1-57.6 67.2-57.6h5c12.3 5.1 25.7 8 39.8 8s27.6-2.9 39.8-8h5c37.1 0 67.2 25.8 67.2 57.6v19.2z"],
	"id-card": [576, 512, [], "f2c2", "M528 32H48C21.5 32 0 53.5 0 80v16h576V80c0-26.5-21.5-48-48-48zM0 432c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48V128H0v304zm352-232c0-4.4 3.6-8 8-8h144c4.4 0 8 3.6 8 8v16c0 4.4-3.6 8-8 8H360c-4.4 0-8-3.6-8-8v-16zm0 64c0-4.4 3.6-8 8-8h144c4.4 0 8 3.6 8 8v16c0 4.4-3.6 8-8 8H360c-4.4 0-8-3.6-8-8v-16zm0 64c0-4.4 3.6-8 8-8h144c4.4 0 8 3.6 8 8v16c0 4.4-3.6 8-8 8H360c-4.4 0-8-3.6-8-8v-16zM176 192c35.3 0 64 28.7 64 64s-28.7 64-64 64-64-28.7-64-64 28.7-64 64-64zM67.1 396.2C75.5 370.5 99.6 352 128 352h8.2c12.3 5.1 25.7 8 39.8 8s27.6-2.9 39.8-8h8.2c28.4 0 52.5 18.5 60.9 44.2 3.2 9.9-5.2 19.8-15.6 19.8H82.7c-10.4 0-18.8-10-15.6-19.8z"],
	"id-card-alt": [576, 512, [], "f47f", "M528 64H384v96H192V64H48C21.5 64 0 85.5 0 112v352c0 26.5 21.5 48 48 48h480c26.5 0 48-21.5 48-48V112c0-26.5-21.5-48-48-48zM288 224c35.3 0 64 28.7 64 64s-28.7 64-64 64-64-28.7-64-64 28.7-64 64-64zm93.3 224H194.7c-10.4 0-18.8-10-15.6-19.8 8.3-25.6 32.4-44.2 60.9-44.2h8.2c12.3 5.1 25.7 8 39.8 8s27.6-2.9 39.8-8h8.2c28.4 0 52.5 18.5 60.9 44.2 3.2 9.8-5.2 19.8-15.6 19.8zM352 32c0-17.7-14.3-32-32-32h-64c-17.7 0-32 14.3-32 32v96h128V32z"],
	"igloo": [576, 512, [], "f7ae", "M320 33.9c-10.5-1.2-21.2-1.9-32-1.9-99.8 0-187.8 50.8-239.4 128H320V33.9zM96 192H30.3C11.1 230.6 0 274 0 320h96V192zM352 39.4V160h175.4C487.2 99.9 424.8 55.9 352 39.4zM480 320h96c0-46-11.1-89.4-30.3-128H480v128zm-64 64v96h128c17.7 0 32-14.3 32-32v-96H411.5c2.6 10.3 4.5 20.9 4.5 32zm32-192H128v128h49.8c22.2-38.1 63-64 110.2-64s88 25.9 110.2 64H448V192zM0 448c0 17.7 14.3 32 32 32h128v-96c0-11.1 1.9-21.7 4.5-32H0v96zm288-160c-53 0-96 43-96 96v96h192v-96c0-53-43-96-96-96z"],
	"image": [512, 512, [], "f03e", "M464 448H48c-26.51 0-48-21.49-48-48V112c0-26.51 21.49-48 48-48h416c26.51 0 48 21.49 48 48v288c0 26.51-21.49 48-48 48zM112 120c-30.928 0-56 25.072-56 56s25.072 56 56 56 56-25.072 56-56-25.072-56-56-56zM64 384h384V272l-87.515-87.515c-4.686-4.686-12.284-4.686-16.971 0L208 320l-55.515-55.515c-4.686-4.686-12.284-4.686-16.971 0L64 336v48z"],
	"images": [576, 512, [], "f302", "M480 416v16c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48V176c0-26.51 21.49-48 48-48h16v208c0 44.112 35.888 80 80 80h336zm96-80V80c0-26.51-21.49-48-48-48H144c-26.51 0-48 21.49-48 48v256c0 26.51 21.49 48 48 48h384c26.51 0 48-21.49 48-48zM256 128c0 26.51-21.49 48-48 48s-48-21.49-48-48 21.49-48 48-48 48 21.49 48 48zm-96 144l55.515-55.515c4.686-4.686 12.284-4.686 16.971 0L272 256l135.515-135.515c4.686-4.686 12.284-4.686 16.971 0L512 208v112H160v-48z"],
	"inbox": [576, 512, [], "f01c", "M567.938 243.908L462.25 85.374A48.003 48.003 0 0 0 422.311 64H153.689a48 48 0 0 0-39.938 21.374L8.062 243.908A47.994 47.994 0 0 0 0 270.533V400c0 26.51 21.49 48 48 48h480c26.51 0 48-21.49 48-48V270.533a47.994 47.994 0 0 0-8.062-26.625zM162.252 128h251.497l85.333 128H376l-32 64H232l-32-64H76.918l85.334-128z"],
	"indent": [448, 512, [], "f03c", "M27.31 363.3l96-96a16 16 0 0 0 0-22.62l-96-96C17.27 138.66 0 145.78 0 160v192c0 14.31 17.33 21.3 27.31 11.3zM432 416H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm3.17-128H204.83A12.82 12.82 0 0 0 192 300.83v38.34A12.82 12.82 0 0 0 204.83 352h230.34A12.82 12.82 0 0 0 448 339.17v-38.34A12.82 12.82 0 0 0 435.17 288zm0-128H204.83A12.82 12.82 0 0 0 192 172.83v38.34A12.82 12.82 0 0 0 204.83 224h230.34A12.82 12.82 0 0 0 448 211.17v-38.34A12.82 12.82 0 0 0 435.17 160zM432 32H16A16 16 0 0 0 0 48v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16z"],
	"industry": [512, 512, [], "f275", "M475.115 163.781L336 252.309v-68.28c0-18.916-20.931-30.399-36.885-20.248L160 252.309V56c0-13.255-10.745-24-24-24H24C10.745 32 0 42.745 0 56v400c0 13.255 10.745 24 24 24h464c13.255 0 24-10.745 24-24V184.029c0-18.917-20.931-30.399-36.885-20.248z"],
	"infinity": [640, 512, [], "f534", "M471.1 96C405 96 353.3 137.3 320 174.6 286.7 137.3 235 96 168.9 96 75.8 96 0 167.8 0 256s75.8 160 168.9 160c66.1 0 117.8-41.3 151.1-78.6 33.3 37.3 85 78.6 151.1 78.6 93.1 0 168.9-71.8 168.9-160S564.2 96 471.1 96zM168.9 320c-40.2 0-72.9-28.7-72.9-64s32.7-64 72.9-64c38.2 0 73.4 36.1 94 64-20.4 27.6-55.9 64-94 64zm302.2 0c-38.2 0-73.4-36.1-94-64 20.4-27.6 55.9-64 94-64 40.2 0 72.9 28.7 72.9 64s-32.7 64-72.9 64z"],
	"info": [192, 512, [], "f129", "M20 424.229h20V279.771H20c-11.046 0-20-8.954-20-20V212c0-11.046 8.954-20 20-20h112c11.046 0 20 8.954 20 20v212.229h20c11.046 0 20 8.954 20 20V492c0 11.046-8.954 20-20 20H20c-11.046 0-20-8.954-20-20v-47.771c0-11.046 8.954-20 20-20zM96 0C56.235 0 24 32.235 24 72s32.235 72 72 72 72-32.235 72-72S135.764 0 96 0z"],
	"info-circle": [512, 512, [], "f05a", "M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z"],
	"italic": [320, 512, [], "f033", "M320 48v32a16 16 0 0 1-16 16h-62.76l-80 320H208a16 16 0 0 1 16 16v32a16 16 0 0 1-16 16H16a16 16 0 0 1-16-16v-32a16 16 0 0 1 16-16h62.76l80-320H112a16 16 0 0 1-16-16V48a16 16 0 0 1 16-16h192a16 16 0 0 1 16 16z"],
	"jedi": [576, 512, [], "f669", "M535.95308,352c-42.64069,94.17188-137.64086,160-247.9848,160q-6.39844,0-12.84377-.29688C171.15558,506.9375,81.26481,442.23438,40.01474,352H79.93668L21.3272,293.40625a264.82522,264.82522,0,0,1-5.10938-39.42187,273.6653,273.6653,0,0,1,.5-29.98438H63.93665L22.546,182.625A269.79782,269.79782,0,0,1,130.51489,20.54688a16.06393,16.06393,0,0,1,9.28127-3,16.36332,16.36332,0,0,1,13.5,7.25,16.02739,16.02739,0,0,1,1.625,15.09374,138.387,138.387,0,0,0-9.84376,51.26563c0,45.10937,21.04691,86.57813,57.71884,113.73437a16.29989,16.29989,0,0,1,1.20313,25.39063c-26.54692,23.98437-41.17194,56.5-41.17194,91.57813,0,60.03124,42.95319,110.28124,99.89079,121.92187l2.5-65.26563L238.062,397a8.33911,8.33911,0,0,1-10-.75,8.025,8.025,0,0,1-1.39063-9.9375l20.125-33.76562-42.06257-8.73438a7.9898,7.9898,0,0,1,0-15.65625l42.06257-8.71875-20.10941-33.73438a7.99122,7.99122,0,0,1,11.35939-10.71874L268.437,295.64062,279.95265,7.67188a7.97138,7.97138,0,0,1,8-7.67188h.04687a8.02064,8.02064,0,0,1,7.95314,7.70312L307.48394,295.625l30.39068-20.67188a8.08327,8.08327,0,0,1,10,.8125,7.99866,7.99866,0,0,1,1.39062,9.90626L329.12461,319.4375l42.07819,8.73438a7.99373,7.99373,0,0,1,0,15.65624l-42.07819,8.71876,20.1094,33.73437a7.97791,7.97791,0,0,1-1.32812,9.92187A8.25739,8.25739,0,0,1,337.87462,397L310.7027,378.53125l2.5,65.34375c48.48446-9.40625,87.57828-48.15625,97.31267-96.5A123.52652,123.52652,0,0,0,371.9528,230.29688a16.30634,16.30634,0,0,1,1.20313-25.42188c36.65631-27.17188,57.6876-68.60938,57.6876-113.73438a138.01689,138.01689,0,0,0-9.85939-51.3125,15.98132,15.98132,0,0,1,1.60937-15.09374,16.36914,16.36914,0,0,1,13.5-7.23438,16.02453,16.02453,0,0,1,9.25,2.98438A271.26947,271.26947,0,0,1,553.25,182.76562L511.99992,224h46.9532C559.3125,229.76562,560,235.45312,560,241.26562a270.092,270.092,0,0,1-5.125,51.85938L495.98427,352Z"],
	"joint": [640, 512, [], "f595", "M444.34 181.1c22.38 15.68 35.66 41.16 35.66 68.59V280c0 4.42 3.58 8 8 8h48c4.42 0 8-3.58 8-8v-30.31c0-43.24-21.01-83.41-56.34-108.06C463.85 125.02 448 99.34 448 70.31V8c0-4.42-3.58-8-8-8h-48c-4.42 0-8 3.58-8 8v66.4c0 43.69 24.56 81.63 60.34 106.7zM194.97 358.98C126.03 370.07 59.69 394.69 0 432c83.65 52.28 180.3 80 278.94 80h88.57L254.79 380.49c-14.74-17.2-37.45-25.11-59.82-21.51zM553.28 87.09c-5.67-3.8-9.28-9.96-9.28-16.78V8c0-4.42-3.58-8-8-8h-48c-4.42 0-8 3.58-8 8v62.31c0 22.02 10.17 43.41 28.64 55.39C550.79 153.04 576 199.54 576 249.69V280c0 4.42 3.58 8 8 8h48c4.42 0 8-3.58 8-8v-30.31c0-65.44-32.41-126.19-86.72-162.6zM360.89 352.05c-34.4.06-86.81.15-88.21.17l117.8 137.43A63.987 63.987 0 0 0 439.07 512h88.45L409.57 374.4a63.955 63.955 0 0 0-48.68-22.35zM616 352H432l117.99 137.65A63.987 63.987 0 0 0 598.58 512H616c13.25 0 24-10.75 24-24V376c0-13.26-10.75-24-24-24z"],
	"journal-whills": [448, 512, [], "f66a", "M438.40625,377.59375c-3.20313,12.8125-3.20313,57.60937,0,73.60937Q447.9922,460.78907,448,470.40625v16c0,16-12.79688,25.59375-25.59375,25.59375H96c-54.40625,0-96-41.59375-96-96V96C0,41.59375,41.59375,0,96,0H422.40625C438.40625,0,448,9.59375,448,25.59375v332.8125Q448,372.79688,438.40625,377.59375ZM380.79688,384H96c-16,0-32,12.79688-32,32s12.79688,32,32,32H380.79688ZM128.01562,176.01562c0,.51563.14063.98438.14063,1.5l37.10937,32.46876A7.99954,7.99954,0,0,1,160,224h-.01562a9.17678,9.17678,0,0,1-5.25-1.98438L131.14062,201.375C142.6875,250.95312,186.90625,288,240,288s97.3125-37.04688,108.875-86.625l-23.59375,20.64062a8.02516,8.02516,0,0,1-5.26563,1.96876H320a9.14641,9.14641,0,0,1-6.01562-2.71876A9.26508,9.26508,0,0,1,312,216a9.097,9.097,0,0,1,2.73438-6.01562l37.10937-32.46876c.01563-.53124.15625-1,.15625-1.51562,0-11.04688-2.09375-21.51562-5.06251-31.59375l-21.26562,21.25a8.00467,8.00467,0,0,1-11.32812-11.3125l26.42187-26.40625a111.81517,111.81517,0,0,0-46.35937-49.26562,63.02336,63.02336,0,0,1-14.0625,82.64062A55.83846,55.83846,0,0,1,251.625,254.73438l-1.42188-34.28126,12.67188,8.625a3.967,3.967,0,0,0,2.25.6875,3.98059,3.98059,0,0,0,3.43749-6.03124l-8.53124-14.3125,17.90625-3.71876a4.00647,4.00647,0,0,0,0-7.84374l-17.90625-3.71876,8.53124-14.3125a3.98059,3.98059,0,0,0-3.43749-6.03124,4.726,4.726,0,0,0-2.25.67187L248.6875,184.125,244,71.82812a4.00386,4.00386,0,0,0-8,0l-4.625,110.8125-12-8.15624a4.003,4.003,0,0,0-5.68751,5.35937l8.53126,14.3125L204.3125,197.875a3.99686,3.99686,0,0,0,0,7.82812l17.90625,3.73438-8.53126,14.29688a4.72469,4.72469,0,0,0-.56249,2.04687,4.59547,4.59547,0,0,0,1.25,2.90625,4.01059,4.01059,0,0,0,2.75,1.09375,4.09016,4.09016,0,0,0,2.25-.6875l10.35937-7.04687L228.375,254.76562a55.86414,55.86414,0,0,1-28.71875-93.45312,63.01119,63.01119,0,0,1-14.04688-82.65625,111.93158,111.93158,0,0,0-46.375,49.26563l26.42187,26.42187a7.99917,7.99917,0,0,1-11.3125,11.3125l-21.26563-21.26563C130.09375,154.48438,128,164.95312,128.01562,176.01562Z"],
	"kaaba": [576, 512, [], "f66b", "M554.12 83.51L318.36 4.93a95.962 95.962 0 0 0-60.71 0L21.88 83.51A32.006 32.006 0 0 0 0 113.87v49.01l265.02-79.51c15.03-4.5 30.92-4.5 45.98 0l265 79.51v-49.01c0-13.77-8.81-26-21.88-30.36zm-279.9 30.52L0 196.3v228.38c0 15 10.42 27.98 25.06 31.24l242.12 53.8a95.937 95.937 0 0 0 41.65 0l242.12-53.8c14.64-3.25 25.06-16.24 25.06-31.24V196.29l-274.2-82.26c-9.04-2.72-18.59-2.72-27.59 0zM128 230.11c0 3.61-2.41 6.77-5.89 7.72l-80 21.82C37.02 261.03 32 257.2 32 251.93v-16.58c0-3.61 2.41-6.77 5.89-7.72l80-21.82c5.09-1.39 10.11 2.44 10.11 7.72v16.58zm144-39.28c0 3.61-2.41 6.77-5.89 7.72l-96 26.18c-5.09 1.39-10.11-2.44-10.11-7.72v-16.58c0-3.61 2.41-6.77 5.89-7.72l96-26.18c5.09-1.39 10.11 2.44 10.11 7.72v16.58zm176 22.7c0-5.28 5.02-9.11 10.11-7.72l80 21.82c3.48.95 5.89 4.11 5.89 7.72v16.58c0 5.28-5.02 9.11-10.11 7.72l-80-21.82a7.997 7.997 0 0 1-5.89-7.72v-16.58zm-144-39.27c0-5.28 5.02-9.11 10.11-7.72l96 26.18c3.48.95 5.89 4.11 5.89 7.72v16.58c0 5.28-5.02 9.11-10.11 7.72l-96-26.18a7.997 7.997 0 0 1-5.89-7.72v-16.58z"],
	"key": [512, 512, [], "f084", "M512 176.001C512 273.203 433.202 352 336 352c-11.22 0-22.19-1.062-32.827-3.069l-24.012 27.014A23.999 23.999 0 0 1 261.223 384H224v40c0 13.255-10.745 24-24 24h-40v40c0 13.255-10.745 24-24 24H24c-13.255 0-24-10.745-24-24v-78.059c0-6.365 2.529-12.47 7.029-16.971l161.802-161.802C163.108 213.814 160 195.271 160 176 160 78.798 238.797.001 335.999 0 433.488-.001 512 78.511 512 176.001zM336 128c0 26.51 21.49 48 48 48s48-21.49 48-48-21.49-48-48-48-48 21.49-48 48z"],
	"keyboard": [576, 512, [], "f11c", "M528 448H48c-26.51 0-48-21.49-48-48V112c0-26.51 21.49-48 48-48h480c26.51 0 48 21.49 48 48v288c0 26.51-21.49 48-48 48zM128 180v-40c0-6.627-5.373-12-12-12H76c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm-336 96v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm-336 96v-40c0-6.627-5.373-12-12-12H76c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm288 0v-40c0-6.627-5.373-12-12-12H172c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h232c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12z"],
	"khanda": [512, 512, [], "f66d", "M415.81 66c-6.37-3.5-14.37-2.33-19.36 3.02a15.974 15.974 0 0 0-1.91 19.52c16.49 26.16 25.2 56.39 25.2 87.41-.19 53.25-26.77 102.69-71.27 132.41l-76.63 53.35v-20.1l44.05-36.09c3.92-4.2 5-10.09 2.81-15.28L310.85 273c33.84-19.26 56.94-55.25 56.94-96.99 0-40.79-22.02-76.13-54.59-95.71l5.22-11.44c2.34-5.53.93-11.83-3.57-16.04L255.86 0l-58.99 52.81c-4.5 4.21-5.9 10.51-3.57 16.04l5.22 11.44c-32.57 19.58-54.59 54.93-54.59 95.72 0 41.75 23.09 77.73 56.94 96.99l-7.85 17.24c-2.19 5.18-1.1 11.07 2.81 15.28l44.05 36.09v19.9l-76.59-53.33C119.02 278.62 92.44 229.19 92.26 176c0-31.08 8.71-61.31 25.2-87.47 3.87-6.16 2.4-13.77-2.59-19.08-5-5.34-13.68-6.2-20.02-2.7C16.32 109.6-22.3 205.3 13.36 295.99c7.07 17.99 17.89 34.38 30.46 49.06l55.97 65.36c4.87 5.69 13.04 7.24 19.65 3.72l79.35-42.23L228 392.23l-47.08 32.78c-1.67-.37-3.23-1.01-5.01-1.01-13.25 0-23.99 10.74-23.99 24 0 13.25 10.74 24 23.99 24 12.1 0 21.69-9.11 23.33-20.76l40.63-28.28v29.95c-9.39 5.57-15.99 15.38-15.99 27.1 0 17.67 14.32 32 31.98 32s31.98-14.33 31.98-32c0-11.71-6.61-21.52-15.99-27.1v-30.15l40.91 28.48C314.41 462.89 324 472 336.09 472c13.25 0 23.99-10.75 23.99-24 0-13.26-10.74-24-23.99-24-1.78 0-3.34.64-5.01 1.01L284 392.23l29.21-20.34 79.35 42.23c6.61 3.52 14.78 1.97 19.65-3.71l52.51-61.31c18.87-22.02 34-47.5 41.25-75.59 21.62-83.66-16.45-167.27-90.16-207.51zm-95.99 110c0 22.3-11.49 41.92-28.83 53.38l-5.65-12.41c-8.75-24.52-8.75-51.04 0-75.56l7.83-17.18c16.07 11.65 26.65 30.45 26.65 51.77zm-127.93 0c0-21.32 10.58-40.12 26.66-51.76l7.83 17.18c8.75 24.52 8.75 51.03 0 75.56l-5.65 12.41c-17.34-11.46-28.84-31.09-28.84-53.39z"],
	"kiss": [496, 512, [], "f596", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm-80 232c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm136 156c0 19.2-28.7 41.5-71.5 44-8.5.8-12.1-11.8-3.6-15.4l17-7.2c13-5.5 20.8-13.5 20.8-21.5s-7.8-16-20.8-21.5l-17-7.2c-6-2.5-6.1-12.2 0-14.8l17-7.2c13-5.5 20.8-13.5 20.8-21.5s-7.8-16-20.8-21.5l-17-7.2c-8.6-3.6-4.8-16.5 3.6-15.4 42.8 2.5 71.5 24.8 71.5 44 0 13-13.4 27.3-35.2 36C290.6 368.7 304 383 304 396zm24-156c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32z"],
	"kiss-beam": [496, 512, [], "f597", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm-39 219.9l-9.5-17c-7.7-13.7-19.2-21.6-31.5-21.6s-23.8 7.9-31.5 21.6l-9.5 17c-4.2 7.4-15.6 4-14.9-4.5 3.3-42.1 32.2-71.4 56-71.4s52.7 29.3 56 71.4c.5 8.5-10.9 12-15.1 4.5zM304 396c0 19.2-28.7 41.5-71.5 44-8.5.8-12.1-11.8-3.6-15.4l17-7.2c13-5.5 20.8-13.5 20.8-21.5s-7.8-16-20.8-21.5l-17-7.2c-6-2.5-6.1-12.2 0-14.8l17-7.2c13-5.5 20.8-13.5 20.8-21.5s-7.8-16-20.8-21.5l-17-7.2c-8.6-3.6-4.8-16.5 3.6-15.4 42.8 2.5 71.5 24.8 71.5 44 0 13-13.4 27.3-35.2 36C290.6 368.7 304 383 304 396zm65-168.1l-9.5-17c-7.7-13.7-19.2-21.6-31.5-21.6s-23.8 7.9-31.5 21.6l-9.5 17c-4.1 7.3-15.6 4-14.9-4.5 3.3-42.1 32.2-71.4 56-71.4s52.7 29.3 56 71.4c.5 8.5-10.9 12-15.1 4.5z"],
	"kiss-wink-heart": [504, 512, [], "f598", "M501.1 402.5c-8-20.8-31.5-31.5-53.1-25.9l-8.4 2.2-2.3-8.4c-5.9-21.4-27-36.5-49-33-25.2 4-40.6 28.6-34 52.6l22.9 82.6c1.5 5.3 7 8.5 12.4 7.1l83-21.5c24.1-6.3 37.7-31.8 28.5-55.7zm-177.6-4c-5.6-20.3-2.3-42 9-59.7 29.7-46.3 98.7-45.5 127.8 4.3 6.4.1 12.6 1.4 18.6 2.9 10.9-27.9 17.1-58.2 17.1-90C496 119 385 8 248 8S0 119 0 256s111 248 248 248c35.4 0 68.9-7.5 99.4-20.9-.3-.7-23.9-84.6-23.9-84.6zM168 240c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm120 156c0 19.2-28.7 41.5-71.5 44-8.5.8-12.1-11.8-3.6-15.4l17-7.2c13-5.5 20.8-13.5 20.8-21.5s-7.8-16-20.8-21.5l-17-7.2c-6-2.5-5.7-12.3 0-14.8l17-7.2c13-5.5 20.8-13.5 20.8-21.5s-7.8-16-20.8-21.5l-17-7.2c-8.8-3.7-4.6-16.6 3.6-15.4 42.8 2.5 71.5 24.8 71.5 44 0 13-13.4 27.3-35.2 36C274.6 368.7 288 383 288 396zm16-179c-8.3 7.4-21.6.4-19.8-10.8 4-25.2 34.2-42.1 59.9-42.1S400 181 404 206.2c1.7 11.1-11.3 18.3-19.8 10.8l-9.5-8.5c-14.8-13.2-46.2-13.2-61 0L304 217z"],
	"kiwi-bird": [576, 512, [], "f535", "M575.81 217.98C572.64 157.41 518.28 112 457.63 112h-9.37c-52.82 0-104.25-16.25-147.74-46.24-41.99-28.96-96.04-41.62-153.21-28.7C129.3 41.12-.08 78.24 0 224c.04 70.95 38.68 132.8 95.99 166.01V464c0 8.84 7.16 16 16 16h16c8.84 0 16-7.16 16-16v-54.26c15.36 3.96 31.4 6.26 48 6.26 5.44 0 10.68-.73 16-1.18V464c0 8.84 7.16 16 16 16h16c8.84 0 16-7.16 16-16v-59.43c14.24-5.06 27.88-11.39 40.34-19.51C342.07 355.25 393.86 336 448.46 336c25.48 0 16.01-.31 23.05-.78l74.41 136.44c2.86 5.23 8.3 8.34 14.05 8.34 1.31 0 2.64-.16 3.95-.5 7.09-1.8 12.05-8.19 12.05-15.5 0 0 .14-240.24-.16-246.02zM463.97 248c-13.25 0-24-10.75-24-24 0-13.26 10.75-24 24-24s24 10.74 24 24c0 13.25-10.75 24-24 24zm80 153.25l-39.86-73.08c15.12-5.83 28.73-14.6 39.86-25.98v99.06z"],
	"landmark": [512, 512, [], "f66f", "M501.62 92.11L267.24 2.04a31.958 31.958 0 0 0-22.47 0L10.38 92.11A16.001 16.001 0 0 0 0 107.09V144c0 8.84 7.16 16 16 16h480c8.84 0 16-7.16 16-16v-36.91c0-6.67-4.14-12.64-10.38-14.98zM64 192v160H48c-8.84 0-16 7.16-16 16v48h448v-48c0-8.84-7.16-16-16-16h-16V192h-64v160h-96V192h-64v160h-96V192H64zm432 256H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h480c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16z"],
	"language": [640, 512, [], "f1ab", "M152.1 236.2c-3.5-12.1-7.8-33.2-7.8-33.2h-.5s-4.3 21.1-7.8 33.2l-11.1 37.5H163zM616 96H336v320h280c13.3 0 24-10.7 24-24V120c0-13.3-10.7-24-24-24zm-24 120c0 6.6-5.4 12-12 12h-11.4c-6.9 23.6-21.7 47.4-42.7 69.9 8.4 6.4 17.1 12.5 26.1 18 5.5 3.4 7.3 10.5 4.1 16.2l-7.9 13.9c-3.4 5.9-10.9 7.8-16.7 4.3-12.6-7.8-24.5-16.1-35.4-24.9-10.9 8.7-22.7 17.1-35.4 24.9-5.8 3.5-13.3 1.6-16.7-4.3l-7.9-13.9c-3.2-5.6-1.4-12.8 4.2-16.2 9.3-5.7 18-11.7 26.1-18-7.9-8.4-14.9-17-21-25.7-4-5.7-2.2-13.6 3.7-17.1l6.5-3.9 7.3-4.3c5.4-3.2 12.4-1.7 16 3.4 5 7 10.8 14 17.4 20.9 13.5-14.2 23.8-28.9 30-43.2H412c-6.6 0-12-5.4-12-12v-16c0-6.6 5.4-12 12-12h64v-16c0-6.6 5.4-12 12-12h16c6.6 0 12 5.4 12 12v16h64c6.6 0 12 5.4 12 12zM0 120v272c0 13.3 10.7 24 24 24h280V96H24c-13.3 0-24 10.7-24 24zm58.9 216.1L116.4 167c1.7-4.9 6.2-8.1 11.4-8.1h32.5c5.1 0 9.7 3.3 11.4 8.1l57.5 169.1c2.6 7.8-3.1 15.9-11.4 15.9h-22.9a12 12 0 0 1-11.5-8.6l-9.4-31.9h-60.2l-9.1 31.8c-1.5 5.1-6.2 8.7-11.5 8.7H70.3c-8.2 0-14-8.1-11.4-15.9z"],
	"laptop": [640, 512, [], "f109", "M624 416H381.54c-.74 19.81-14.71 32-32.74 32H288c-18.69 0-33.02-17.47-32.77-32H16c-8.8 0-16 7.2-16 16v16c0 35.2 28.8 64 64 64h512c35.2 0 64-28.8 64-64v-16c0-8.8-7.2-16-16-16zM576 48c0-26.4-21.6-48-48-48H112C85.6 0 64 21.6 64 48v336h512V48zm-64 272H128V64h384v256z"],
	"laptop-code": [640, 512, [], "f5fc", "M255.03 261.65c6.25 6.25 16.38 6.25 22.63 0l11.31-11.31c6.25-6.25 6.25-16.38 0-22.63L253.25 192l35.71-35.72c6.25-6.25 6.25-16.38 0-22.63l-11.31-11.31c-6.25-6.25-16.38-6.25-22.63 0l-58.34 58.34c-6.25 6.25-6.25 16.38 0 22.63l58.35 58.34zm96.01-11.3l11.31 11.31c6.25 6.25 16.38 6.25 22.63 0l58.34-58.34c6.25-6.25 6.25-16.38 0-22.63l-58.34-58.34c-6.25-6.25-16.38-6.25-22.63 0l-11.31 11.31c-6.25 6.25-6.25 16.38 0 22.63L386.75 192l-35.71 35.72c-6.25 6.25-6.25 16.38 0 22.63zM624 416H381.54c-.74 19.81-14.71 32-32.74 32H288c-18.69 0-33.02-17.47-32.77-32H16c-8.8 0-16 7.2-16 16v16c0 35.2 28.8 64 64 64h512c35.2 0 64-28.8 64-64v-16c0-8.8-7.2-16-16-16zM576 48c0-26.4-21.6-48-48-48H112C85.6 0 64 21.6 64 48v336h512V48zm-64 272H128V64h384v256z"],
	"laptop-house": [640, 512, [], "e066", "M272,288H208a16,16,0,0,1-16-16V208a16,16,0,0,1,16-16h64a16,16,0,0,1,16,16v37.12C299.11,232.24,315,224,332.8,224H469.74l6.65-7.53A16.51,16.51,0,0,0,480,207a16.31,16.31,0,0,0-4.75-10.61L416,144V48a16,16,0,0,0-16-16H368a16,16,0,0,0-16,16V87.3L263.5,8.92C258,4,247.45,0,240.05,0s-17.93,4-23.47,8.92L4.78,196.42A16.15,16.15,0,0,0,0,207a16.4,16.4,0,0,0,3.55,9.39L22.34,237.7A16.22,16.22,0,0,0,33,242.48,16.51,16.51,0,0,0,42.34,239L64,219.88V384a32,32,0,0,0,32,32H272ZM629.33,448H592V288c0-17.67-12.89-32-28.8-32H332.8c-15.91,0-28.8,14.33-28.8,32V448H266.67A10.67,10.67,0,0,0,256,458.67v10.66A42.82,42.82,0,0,0,298.6,512H597.4A42.82,42.82,0,0,0,640,469.33V458.67A10.67,10.67,0,0,0,629.33,448ZM544,448H352V304H544Z"],
	"laptop-medical": [640, 512, [], "f812", "M232 224h56v56a8 8 0 0 0 8 8h48a8 8 0 0 0 8-8v-56h56a8 8 0 0 0 8-8v-48a8 8 0 0 0-8-8h-56v-56a8 8 0 0 0-8-8h-48a8 8 0 0 0-8 8v56h-56a8 8 0 0 0-8 8v48a8 8 0 0 0 8 8zM576 48a48.14 48.14 0 0 0-48-48H112a48.14 48.14 0 0 0-48 48v336h512zm-64 272H128V64h384zm112 96H381.54c-.74 19.81-14.71 32-32.74 32H288c-18.69 0-33-17.47-32.77-32H16a16 16 0 0 0-16 16v16a64.19 64.19 0 0 0 64 64h512a64.19 64.19 0 0 0 64-64v-16a16 16 0 0 0-16-16z"],
	"laugh": [496, 512, [], "f599", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm80 152c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32zm-160 0c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32zm88 272h-16c-73.4 0-134-55-142.9-126-1.2-9.5 6.3-18 15.9-18h270c9.6 0 17.1 8.4 15.9 18-8.9 71-69.5 126-142.9 126z"],
	"laugh-beam": [496, 512, [], "f59a", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm24 199.4c3.3-42.1 32.2-71.4 56-71.4s52.7 29.3 56 71.4c.7 8.6-10.8 11.9-14.9 4.5l-9.5-17c-7.7-13.7-19.2-21.6-31.5-21.6s-23.8 7.9-31.5 21.6l-9.5 17c-4.2 7.4-15.8 4.1-15.1-4.5zm-160 0c3.3-42.1 32.2-71.4 56-71.4s52.7 29.3 56 71.4c.7 8.6-10.8 11.9-14.9 4.5l-9.5-17c-7.7-13.7-19.2-21.6-31.5-21.6s-23.8 7.9-31.5 21.6l-9.5 17c-4.3 7.4-15.8 4-15.1-4.5zM398.9 306C390 377 329.4 432 256 432h-16c-73.4 0-134-55-142.9-126-1.2-9.5 6.3-18 15.9-18h270c9.6 0 17.1 8.4 15.9 18z"],
	"laugh-squint": [496, 512, [], "f59b", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm33.8 161.7l80-48c11.6-6.9 24 7.7 15.4 18L343.6 180l33.6 40.3c8.7 10.4-3.9 24.8-15.4 18l-80-48c-7.7-4.7-7.7-15.9 0-20.6zm-163-30c-8.6-10.3 3.8-24.9 15.4-18l80 48c7.8 4.7 7.8 15.9 0 20.6l-80 48c-11.5 6.8-24-7.6-15.4-18l33.6-40.3-33.6-40.3zM398.9 306C390 377 329.4 432 256 432h-16c-73.4 0-134-55-142.9-126-1.2-9.5 6.3-18 15.9-18h270c9.6 0 17.1 8.4 15.9 18z"],
	"laugh-wink": [496, 512, [], "f59c", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm20.1 198.1c4-25.2 34.2-42.1 59.9-42.1s55.9 16.9 59.9 42.1c1.7 11.1-11.4 18.3-19.8 10.8l-9.5-8.5c-14.8-13.2-46.2-13.2-61 0L288 217c-8.4 7.4-21.6.3-19.9-10.9zM168 160c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32zm230.9 146C390 377 329.4 432 256 432h-16c-73.4 0-134-55-142.9-126-1.2-9.5 6.3-18 15.9-18h270c9.6 0 17.1 8.4 15.9 18z"],
	"layer-group": [512, 512, [], "f5fd", "M12.41 148.02l232.94 105.67c6.8 3.09 14.49 3.09 21.29 0l232.94-105.67c16.55-7.51 16.55-32.52 0-40.03L266.65 2.31a25.607 25.607 0 0 0-21.29 0L12.41 107.98c-16.55 7.51-16.55 32.53 0 40.04zm487.18 88.28l-58.09-26.33-161.64 73.27c-7.56 3.43-15.59 5.17-23.86 5.17s-16.29-1.74-23.86-5.17L70.51 209.97l-58.1 26.33c-16.55 7.5-16.55 32.5 0 40l232.94 105.59c6.8 3.08 14.49 3.08 21.29 0L499.59 276.3c16.55-7.5 16.55-32.5 0-40zm0 127.8l-57.87-26.23-161.86 73.37c-7.56 3.43-15.59 5.17-23.86 5.17s-16.29-1.74-23.86-5.17L70.29 337.87 12.41 364.1c-16.55 7.5-16.55 32.5 0 40l232.94 105.59c6.8 3.08 14.49 3.08 21.29 0L499.59 404.1c16.55-7.5 16.55-32.5 0-40z"],
	"leaf": [576, 512, [], "f06c", "M546.2 9.7c-5.6-12.5-21.6-13-28.3-1.2C486.9 62.4 431.4 96 368 96h-80C182 96 96 182 96 288c0 7 .8 13.7 1.5 20.5C161.3 262.8 253.4 224 384 224c8.8 0 16 7.2 16 16s-7.2 16-16 16C132.6 256 26 410.1 2.4 468c-6.6 16.3 1.2 34.9 17.5 41.6 16.4 6.8 35-1.1 41.8-17.3 1.5-3.6 20.9-47.9 71.9-90.6 32.4 43.9 94 85.8 174.9 77.2C465.5 467.5 576 326.7 576 154.3c0-50.2-10.8-102.2-29.8-144.6z"],
	"lemon": [512, 512, [], "f094", "M489.038 22.963C465.944-.13 434.648-5.93 413.947 6.129c-58.906 34.312-181.25-53.077-321.073 86.746S40.441 355.041 6.129 413.945c-12.059 20.702-6.26 51.999 16.833 75.093 23.095 23.095 54.392 28.891 75.095 16.832 58.901-34.31 181.246 53.079 321.068-86.743S471.56 156.96 505.871 98.056c12.059-20.702 6.261-51.999-16.833-75.093zM243.881 95.522c-58.189 14.547-133.808 90.155-148.358 148.358-1.817 7.27-8.342 12.124-15.511 12.124-1.284 0-2.59-.156-3.893-.481-8.572-2.144-13.784-10.83-11.642-19.403C81.901 166.427 166.316 81.93 236.119 64.478c8.575-2.143 17.261 3.069 19.403 11.642s-3.069 17.259-11.641 19.402z"],
	"less-than": [384, 512, [], "f536", "M365.46 357.74L147.04 255.89l218.47-101.88c16.02-7.47 22.95-26.51 15.48-42.53l-13.52-29C360 66.46 340.96 59.53 324.94 67L18.48 209.91a32.014 32.014 0 0 0-18.48 29v34.24c0 12.44 7.21 23.75 18.48 29l306.31 142.83c16.06 7.49 35.15.54 42.64-15.52l13.56-29.08c7.49-16.06.54-35.15-15.53-42.64z"],
	"less-than-equal": [448, 512, [], "f537", "M54.98 214.2l301.41 119.87c18.39 6.03 38.71-2.54 45.38-19.15l12.09-30.08c6.68-16.61-2.82-34.97-21.21-41l-175.44-68.05 175.56-68.09c18.29-6 27.74-24.27 21.1-40.79l-12.03-29.92c-6.64-16.53-26.86-25.06-45.15-19.06L54.98 137.89C41.21 142.41 32 154.5 32 168.07v15.96c0 13.56 9.21 25.65 22.98 30.17zM424 400H24c-13.25 0-24 10.74-24 24v48c0 13.25 10.75 24 24 24h400c13.25 0 24-10.75 24-24v-48c0-13.26-10.75-24-24-24z"],
	"level-down-alt": [320, 512, [], "f3be", "M313.553 392.331L209.587 504.334c-9.485 10.214-25.676 10.229-35.174 0L70.438 392.331C56.232 377.031 67.062 352 88.025 352H152V80H68.024a11.996 11.996 0 0 1-8.485-3.515l-56-56C-4.021 12.926 1.333 0 12.024 0H208c13.255 0 24 10.745 24 24v328h63.966c20.878 0 31.851 24.969 17.587 40.331z"],
	"level-up-alt": [320, 512, [], "f3bf", "M313.553 119.669L209.587 7.666c-9.485-10.214-25.676-10.229-35.174 0L70.438 119.669C56.232 134.969 67.062 160 88.025 160H152v272H68.024a11.996 11.996 0 0 0-8.485 3.515l-56 56C-4.021 499.074 1.333 512 12.024 512H208c13.255 0 24-10.745 24-24V160h63.966c20.878 0 31.851-24.969 17.587-40.331z"],
	"life-ring": [512, 512, [], "f1cd", "M256 8C119.033 8 8 119.033 8 256s111.033 248 248 248 248-111.033 248-248S392.967 8 256 8zm173.696 119.559l-63.399 63.399c-10.987-18.559-26.67-34.252-45.255-45.255l63.399-63.399a218.396 218.396 0 0 1 45.255 45.255zM256 352c-53.019 0-96-42.981-96-96s42.981-96 96-96 96 42.981 96 96-42.981 96-96 96zM127.559 82.304l63.399 63.399c-18.559 10.987-34.252 26.67-45.255 45.255l-63.399-63.399a218.372 218.372 0 0 1 45.255-45.255zM82.304 384.441l63.399-63.399c10.987 18.559 26.67 34.252 45.255 45.255l-63.399 63.399a218.396 218.396 0 0 1-45.255-45.255zm302.137 45.255l-63.399-63.399c18.559-10.987 34.252-26.67 45.255-45.255l63.399 63.399a218.403 218.403 0 0 1-45.255 45.255z"],
	"lightbulb": [352, 512, [], "f0eb", "M96.06 454.35c.01 6.29 1.87 12.45 5.36 17.69l17.09 25.69a31.99 31.99 0 0 0 26.64 14.28h61.71a31.99 31.99 0 0 0 26.64-14.28l17.09-25.69a31.989 31.989 0 0 0 5.36-17.69l.04-38.35H96.01l.05 38.35zM0 176c0 44.37 16.45 84.85 43.56 115.78 16.52 18.85 42.36 58.23 52.21 91.45.04.26.07.52.11.78h160.24c.04-.26.07-.51.11-.78 9.85-33.22 35.69-72.6 52.21-91.45C335.55 260.85 352 220.37 352 176 352 78.61 272.91-.3 175.45 0 73.44.31 0 82.97 0 176zm176-80c-44.11 0-80 35.89-80 80 0 8.84-7.16 16-16 16s-16-7.16-16-16c0-61.76 50.24-112 112-112 8.84 0 16 7.16 16 16s-7.16 16-16 16z"],
	"link": [512, 512, [], "f0c1", "M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z"],
	"lira-sign": [384, 512, [], "f195", "M371.994 256h-48.019C317.64 256 312 260.912 312 267.246 312 368 230.179 416 144 416V256.781l134.603-29.912A12 12 0 0 0 288 215.155v-40.976c0-7.677-7.109-13.38-14.603-11.714L144 191.219V160.78l134.603-29.912A12 12 0 0 0 288 119.154V78.179c0-7.677-7.109-13.38-14.603-11.714L144 95.219V44c0-6.627-5.373-12-12-12H76c-6.627 0-12 5.373-12 12v68.997L9.397 125.131A12 12 0 0 0 0 136.845v40.976c0 7.677 7.109 13.38 14.603 11.714L64 178.558v30.439L9.397 221.131A12 12 0 0 0 0 232.845v40.976c0 7.677 7.109 13.38 14.603 11.714L64 274.558V468c0 6.627 5.373 12 12 12h79.583c134.091 0 223.255-77.834 228.408-211.592.261-6.782-5.211-12.408-11.997-12.408z"],
	"list": [512, 512, [], "f03a", "M80 368H16a16 16 0 0 0-16 16v64a16 16 0 0 0 16 16h64a16 16 0 0 0 16-16v-64a16 16 0 0 0-16-16zm0-320H16A16 16 0 0 0 0 64v64a16 16 0 0 0 16 16h64a16 16 0 0 0 16-16V64a16 16 0 0 0-16-16zm0 160H16a16 16 0 0 0-16 16v64a16 16 0 0 0 16 16h64a16 16 0 0 0 16-16v-64a16 16 0 0 0-16-16zm416 176H176a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h320a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-320H176a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h320a16 16 0 0 0 16-16V80a16 16 0 0 0-16-16zm0 160H176a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h320a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16z"],
	"list-alt": [512, 512, [], "f022", "M464 480H48c-26.51 0-48-21.49-48-48V80c0-26.51 21.49-48 48-48h416c26.51 0 48 21.49 48 48v352c0 26.51-21.49 48-48 48zM128 120c-22.091 0-40 17.909-40 40s17.909 40 40 40 40-17.909 40-40-17.909-40-40-40zm0 96c-22.091 0-40 17.909-40 40s17.909 40 40 40 40-17.909 40-40-17.909-40-40-40zm0 96c-22.091 0-40 17.909-40 40s17.909 40 40 40 40-17.909 40-40-17.909-40-40-40zm288-136v-32c0-6.627-5.373-12-12-12H204c-6.627 0-12 5.373-12 12v32c0 6.627 5.373 12 12 12h200c6.627 0 12-5.373 12-12zm0 96v-32c0-6.627-5.373-12-12-12H204c-6.627 0-12 5.373-12 12v32c0 6.627 5.373 12 12 12h200c6.627 0 12-5.373 12-12zm0 96v-32c0-6.627-5.373-12-12-12H204c-6.627 0-12 5.373-12 12v32c0 6.627 5.373 12 12 12h200c6.627 0 12-5.373 12-12z"],
	"list-ol": [512, 512, [], "f0cb", "M61.77 401l17.5-20.15a19.92 19.92 0 0 0 5.07-14.19v-3.31C84.34 356 80.5 352 73 352H16a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8h22.83a157.41 157.41 0 0 0-11 12.31l-5.61 7c-4 5.07-5.25 10.13-2.8 14.88l1.05 1.93c3 5.76 6.29 7.88 12.25 7.88h4.73c10.33 0 15.94 2.44 15.94 9.09 0 4.72-4.2 8.22-14.36 8.22a41.54 41.54 0 0 1-15.47-3.12c-6.49-3.88-11.74-3.5-15.6 3.12l-5.59 9.31c-3.72 6.13-3.19 11.72 2.63 15.94 7.71 4.69 20.38 9.44 37 9.44 34.16 0 48.5-22.75 48.5-44.12-.03-14.38-9.12-29.76-28.73-34.88zM496 224H176a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h320a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-160H176a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h320a16 16 0 0 0 16-16V80a16 16 0 0 0-16-16zm0 320H176a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h320a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zM16 160h64a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8H64V40a8 8 0 0 0-8-8H32a8 8 0 0 0-7.14 4.42l-8 16A8 8 0 0 0 24 64h8v64H16a8 8 0 0 0-8 8v16a8 8 0 0 0 8 8zm-3.91 160H80a8 8 0 0 0 8-8v-16a8 8 0 0 0-8-8H41.32c3.29-10.29 48.34-18.68 48.34-56.44 0-29.06-25-39.56-44.47-39.56-21.36 0-33.8 10-40.46 18.75-4.37 5.59-3 10.84 2.8 15.37l8.58 6.88c5.61 4.56 11 2.47 16.12-2.44a13.44 13.44 0 0 1 9.46-3.84c3.33 0 9.28 1.56 9.28 8.75C51 248.19 0 257.31 0 304.59v4C0 316 5.08 320 12.09 320z"],
	"list-ul": [512, 512, [], "f0ca", "M48 48a48 48 0 1 0 48 48 48 48 0 0 0-48-48zm0 160a48 48 0 1 0 48 48 48 48 0 0 0-48-48zm0 160a48 48 0 1 0 48 48 48 48 0 0 0-48-48zm448 16H176a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h320a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-320H176a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h320a16 16 0 0 0 16-16V80a16 16 0 0 0-16-16zm0 160H176a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h320a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16z"],
	"location-arrow": [512, 512, [], "f124", "M444.52 3.52L28.74 195.42c-47.97 22.39-31.98 92.75 19.19 92.75h175.91v175.91c0 51.17 70.36 67.17 92.75 19.19l191.9-415.78c15.99-38.39-25.59-79.97-63.97-63.97z"],
	"lock": [448, 512, [], "f023", "M400 224h-24v-72C376 68.2 307.8 0 224 0S72 68.2 72 152v72H48c-26.5 0-48 21.5-48 48v192c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V272c0-26.5-21.5-48-48-48zm-104 0H152v-72c0-39.7 32.3-72 72-72s72 32.3 72 72v72z"],
	"lock-open": [576, 512, [], "f3c1", "M423.5 0C339.5.3 272 69.5 272 153.5V224H48c-26.5 0-48 21.5-48 48v192c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V272c0-26.5-21.5-48-48-48h-48v-71.1c0-39.6 31.7-72.5 71.3-72.9 40-.4 72.7 32.1 72.7 72v80c0 13.3 10.7 24 24 24h32c13.3 0 24-10.7 24-24v-80C576 68 507.5-.3 423.5 0z"],
	"long-arrow-alt-down": [256, 512, [], "f309", "M168 345.941V44c0-6.627-5.373-12-12-12h-56c-6.627 0-12 5.373-12 12v301.941H41.941c-21.382 0-32.09 25.851-16.971 40.971l86.059 86.059c9.373 9.373 24.569 9.373 33.941 0l86.059-86.059c15.119-15.119 4.411-40.971-16.971-40.971H168z"],
	"long-arrow-alt-left": [448, 512, [], "f30a", "M134.059 296H436c6.627 0 12-5.373 12-12v-56c0-6.627-5.373-12-12-12H134.059v-46.059c0-21.382-25.851-32.09-40.971-16.971L7.029 239.029c-9.373 9.373-9.373 24.569 0 33.941l86.059 86.059c15.119 15.119 40.971 4.411 40.971-16.971V296z"],
	"long-arrow-alt-right": [448, 512, [], "f30b", "M313.941 216H12c-6.627 0-12 5.373-12 12v56c0 6.627 5.373 12 12 12h301.941v46.059c0 21.382 25.851 32.09 40.971 16.971l86.059-86.059c9.373-9.373 9.373-24.569 0-33.941l-86.059-86.059c-15.119-15.119-40.971-4.411-40.971 16.971V216z"],
	"long-arrow-alt-up": [256, 512, [], "f30c", "M88 166.059V468c0 6.627 5.373 12 12 12h56c6.627 0 12-5.373 12-12V166.059h46.059c21.382 0 32.09-25.851 16.971-40.971l-86.059-86.059c-9.373-9.373-24.569-9.373-33.941 0l-86.059 86.059c-15.119 15.119-4.411 40.971 16.971 40.971H88z"],
	"low-vision": [576, 512, [], "f2a8", "M569.344 231.631C512.96 135.949 407.81 72 288 72c-28.468 0-56.102 3.619-82.451 10.409L152.778 10.24c-7.601-10.858-22.564-13.5-33.423-5.9l-13.114 9.178c-10.86 7.601-13.502 22.566-5.9 33.426l43.131 58.395C89.449 131.73 40.228 174.683 6.682 231.581c-.01.017-.023.033-.034.05-8.765 14.875-8.964 33.528 0 48.739 38.5 65.332 99.742 115.862 172.859 141.349L55.316 244.302A272.194 272.194 0 0 1 83.61 208.39l119.4 170.58h.01l40.63 58.04a330.055 330.055 0 0 0 78.94 1.17l-189.98-271.4a277.628 277.628 0 0 1 38.777-21.563l251.836 356.544c7.601 10.858 22.564 13.499 33.423 5.9l13.114-9.178c10.86-7.601 13.502-22.567 5.9-33.426l-43.12-58.377-.007-.009c57.161-27.978 104.835-72.04 136.81-126.301a47.938 47.938 0 0 0 .001-48.739zM390.026 345.94l-19.066-27.23c24.682-32.567 27.711-76.353 8.8-111.68v.03c0 23.65-19.17 42.82-42.82 42.82-23.828 0-42.82-19.349-42.82-42.82 0-23.65 19.17-42.82 42.82-42.82h.03c-24.75-13.249-53.522-15.643-79.51-7.68l-19.068-27.237C253.758 123.306 270.488 120 288 120c75.162 0 136 60.826 136 136 0 34.504-12.833 65.975-33.974 89.94z"],
	"luggage-cart": [640, 512, [], "f59d", "M224 320h32V96h-32c-17.67 0-32 14.33-32 32v160c0 17.67 14.33 32 32 32zm352-32V128c0-17.67-14.33-32-32-32h-32v224h32c17.67 0 32-14.33 32-32zm48 96H128V16c0-8.84-7.16-16-16-16H16C7.16 0 0 7.16 0 16v32c0 8.84 7.16 16 16 16h48v368c0 8.84 7.16 16 16 16h82.94c-1.79 5.03-2.94 10.36-2.94 16 0 26.51 21.49 48 48 48s48-21.49 48-48c0-5.64-1.15-10.97-2.94-16h197.88c-1.79 5.03-2.94 10.36-2.94 16 0 26.51 21.49 48 48 48s48-21.49 48-48c0-5.64-1.15-10.97-2.94-16H624c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zM480 96V48c0-26.51-21.49-48-48-48h-96c-26.51 0-48 21.49-48 48v272h192V96zm-48 0h-96V48h96v48z"],
	"lungs": [640, 512, [], "f604", "M636.11 390.15C614.44 308.85 580.07 231 534.1 159.13 511.98 124.56 498.03 96 454.05 96 415.36 96 384 125.42 384 161.71v60.11l-32.88-21.92a15.996 15.996 0 0 1-7.12-13.31V16c0-8.84-7.16-16-16-16h-16c-8.84 0-16 7.16-16 16v170.59c0 5.35-2.67 10.34-7.12 13.31L256 221.82v-60.11C256 125.42 224.64 96 185.95 96c-43.98 0-57.93 28.56-80.05 63.13C59.93 231 25.56 308.85 3.89 390.15 1.3 399.84 0 409.79 0 419.78c0 61.23 62.48 105.44 125.24 88.62l59.5-15.95c42.18-11.3 71.26-47.47 71.26-88.62v-87.49l-85.84 57.23a7.992 7.992 0 0 1-11.09-2.22l-8.88-13.31a7.992 7.992 0 0 1 2.22-11.09L320 235.23l167.59 111.72a7.994 7.994 0 0 1 2.22 11.09l-8.88 13.31a7.994 7.994 0 0 1-11.09 2.22L384 316.34v87.49c0 41.15 29.08 77.31 71.26 88.62l59.5 15.95C577.52 525.22 640 481.01 640 419.78c0-9.99-1.3-19.94-3.89-29.63z"],
	"lungs-virus": [640, 512, [], "e067", "M344,150.68V16A16,16,0,0,0,328,0H312a16,16,0,0,0-16,16V150.68a46.45,46.45,0,0,1,48,0ZM195.54,444.46a48.06,48.06,0,0,1,0-67.88l8.58-8.58H192a48,48,0,0,1,0-96h12.12l-8.58-8.57a48,48,0,0,1,60.46-74V161.75C256,125.38,224.62,96,186,96c-44,0-58,28.5-80.12,63.13a819.52,819.52,0,0,0-102,231A113.16,113.16,0,0,0,0,419.75C0,481,62.5,525.26,125.25,508.38l59.5-15.87a98.51,98.51,0,0,0,52.5-34.75,46.49,46.49,0,0,1-41.71-13.3Zm226.29-22.63a16,16,0,0,0,0-22.62l-8.58-8.58C393.09,370.47,407.37,336,435.88,336H448a16,16,0,0,0,0-32H435.88c-28.51,0-42.79-34.47-22.63-54.62l8.58-8.58a16,16,0,0,0-22.63-22.63l-8.57,8.58C370.47,246.91,336,232.63,336,204.12V192a16,16,0,0,0-32,0v12.12c0,28.51-34.47,42.79-54.63,22.63l-8.57-8.58a16,16,0,0,0-22.63,22.63l8.58,8.58c20.16,20.15,5.88,54.62-22.63,54.62H192a16,16,0,0,0,0,32h12.12c28.51,0,42.79,34.47,22.63,54.63l-8.58,8.58a16,16,0,1,0,22.63,22.62l8.57-8.57C269.53,393.1,304,407.38,304,435.88V448a16,16,0,0,0,32,0V435.88c0-28.5,34.47-42.78,54.63-22.62l8.57,8.57a16,16,0,0,0,22.63,0ZM288,304a16,16,0,1,1,16-16A16,16,0,0,1,288,304Zm64,64a16,16,0,1,1,16-16A16,16,0,0,1,352,368Zm284.12,22.13a819.52,819.52,0,0,0-102-231C512,124.5,498,96,454,96c-38.62,0-70,29.38-70,65.75v27.72a48,48,0,0,1,60.46,74L435.88,272H448a48,48,0,0,1,0,96H435.88l8.58,8.58a47.7,47.7,0,0,1-41.71,81.18,98.51,98.51,0,0,0,52.5,34.75l59.5,15.87C577.5,525.26,640,481,640,419.75A113.16,113.16,0,0,0,636.12,390.13Z"],
	"magic": [512, 512, [], "f0d0", "M224 96l16-32 32-16-32-16-16-32-16 32-32 16 32 16 16 32zM80 160l26.66-53.33L160 80l-53.34-26.67L80 0 53.34 53.33 0 80l53.34 26.67L80 160zm352 128l-26.66 53.33L352 368l53.34 26.67L432 448l26.66-53.33L512 368l-53.34-26.67L432 288zm70.62-193.77L417.77 9.38C411.53 3.12 403.34 0 395.15 0c-8.19 0-16.38 3.12-22.63 9.38L9.38 372.52c-12.5 12.5-12.5 32.76 0 45.25l84.85 84.85c6.25 6.25 14.44 9.37 22.62 9.37 8.19 0 16.38-3.12 22.63-9.37l363.14-363.15c12.5-12.48 12.5-32.75 0-45.24zM359.45 203.46l-50.91-50.91 86.6-86.6 50.91 50.91-86.6 86.6z"],
	"magnet": [512, 512, [], "f076", "M164.07 148.1H12a12 12 0 0 1-12-12v-80a36 36 0 0 1 36-36h104a36 36 0 0 1 36 36v80a11.89 11.89 0 0 1-11.93 12zm347.93-12V56a36 36 0 0 0-36-36H372a36 36 0 0 0-36 36v80a12 12 0 0 0 12 12h152a11.89 11.89 0 0 0 12-11.9zm-164 44a12 12 0 0 0-12 12v52c0 128.1-160 127.9-160 0v-52a12 12 0 0 0-12-12H12.1a12 12 0 0 0-12 12.1c.1 21.4.6 40.3 0 53.3 0 150.6 136.17 246.6 256.75 246.6s255-96 255-246.7c-.6-12.8-.2-33 0-53.2a12 12 0 0 0-12-12.1z"],
	"mail-bulk": [576, 512, [], "f674", "M160 448c-25.6 0-51.2-22.4-64-32-64-44.8-83.2-60.8-96-70.4V480c0 17.67 14.33 32 32 32h256c17.67 0 32-14.33 32-32V345.6c-12.8 9.6-32 25.6-96 70.4-12.8 9.6-38.4 32-64 32zm128-192H32c-17.67 0-32 14.33-32 32v16c25.6 19.2 22.4 19.2 115.2 86.4 9.6 6.4 28.8 25.6 44.8 25.6s35.2-19.2 44.8-22.4c92.8-67.2 89.6-67.2 115.2-86.4V288c0-17.67-14.33-32-32-32zm256-96H224c-17.67 0-32 14.33-32 32v32h96c33.21 0 60.59 25.42 63.71 57.82l.29-.22V416h192c17.67 0 32-14.33 32-32V192c0-17.67-14.33-32-32-32zm-32 128h-64v-64h64v64zm-352-96c0-35.29 28.71-64 64-64h224V32c0-17.67-14.33-32-32-32H96C78.33 0 64 14.33 64 32v192h96v-32z"],
	"male": [192, 512, [], "f183", "M96 0c35.346 0 64 28.654 64 64s-28.654 64-64 64-64-28.654-64-64S60.654 0 96 0m48 144h-11.36c-22.711 10.443-49.59 10.894-73.28 0H48c-26.51 0-48 21.49-48 48v136c0 13.255 10.745 24 24 24h16v136c0 13.255 10.745 24 24 24h64c13.255 0 24-10.745 24-24V352h16c13.255 0 24-10.745 24-24V192c0-26.51-21.49-48-48-48z"],
	"map": [576, 512, [], "f279", "M0 117.66v346.32c0 11.32 11.43 19.06 21.94 14.86L160 416V32L20.12 87.95A32.006 32.006 0 0 0 0 117.66zM192 416l192 64V96L192 32v384zM554.06 33.16L416 96v384l139.88-55.95A31.996 31.996 0 0 0 576 394.34V48.02c0-11.32-11.43-19.06-21.94-14.86z"],
	"map-marked": [576, 512, [], "f59f", "M288 0c-69.59 0-126 56.41-126 126 0 56.26 82.35 158.8 113.9 196.02 6.39 7.54 17.82 7.54 24.2 0C331.65 284.8 414 182.26 414 126 414 56.41 357.59 0 288 0zM20.12 215.95A32.006 32.006 0 0 0 0 245.66v250.32c0 11.32 11.43 19.06 21.94 14.86L160 448V214.92c-8.84-15.98-16.07-31.54-21.25-46.42L20.12 215.95zM288 359.67c-14.07 0-27.38-6.18-36.51-16.96-19.66-23.2-40.57-49.62-59.49-76.72v182l192 64V266c-18.92 27.09-39.82 53.52-59.49 76.72-9.13 10.77-22.44 16.95-36.51 16.95zm266.06-198.51L416 224v288l139.88-55.95A31.996 31.996 0 0 0 576 426.34V176.02c0-11.32-11.43-19.06-21.94-14.86z"],
	"map-marked-alt": [576, 512, [], "f5a0", "M288 0c-69.59 0-126 56.41-126 126 0 56.26 82.35 158.8 113.9 196.02 6.39 7.54 17.82 7.54 24.2 0C331.65 284.8 414 182.26 414 126 414 56.41 357.59 0 288 0zm0 168c-23.2 0-42-18.8-42-42s18.8-42 42-42 42 18.8 42 42-18.8 42-42 42zM20.12 215.95A32.006 32.006 0 0 0 0 245.66v250.32c0 11.32 11.43 19.06 21.94 14.86L160 448V214.92c-8.84-15.98-16.07-31.54-21.25-46.42L20.12 215.95zM288 359.67c-14.07 0-27.38-6.18-36.51-16.96-19.66-23.2-40.57-49.62-59.49-76.72v182l192 64V266c-18.92 27.09-39.82 53.52-59.49 76.72-9.13 10.77-22.44 16.95-36.51 16.95zm266.06-198.51L416 224v288l139.88-55.95A31.996 31.996 0 0 0 576 426.34V176.02c0-11.32-11.43-19.06-21.94-14.86z"],
	"map-marker": [384, 512, [], "f041", "M172.268 501.67C26.97 291.031 0 269.413 0 192 0 85.961 85.961 0 192 0s192 85.961 192 192c0 77.413-26.97 99.031-172.268 309.67-9.535 13.774-29.93 13.773-39.464 0z"],
	"map-marker-alt": [384, 512, [], "f3c5", "M172.268 501.67C26.97 291.031 0 269.413 0 192 0 85.961 85.961 0 192 0s192 85.961 192 192c0 77.413-26.97 99.031-172.268 309.67-9.535 13.774-29.93 13.773-39.464 0zM192 272c44.183 0 80-35.817 80-80s-35.817-80-80-80-80 35.817-80 80 35.817 80 80 80z"],
	"map-pin": [288, 512, [], "f276", "M112 316.94v156.69l22.02 33.02c4.75 7.12 15.22 7.12 19.97 0L176 473.63V316.94c-10.39 1.92-21.06 3.06-32 3.06s-21.61-1.14-32-3.06zM144 0C64.47 0 0 64.47 0 144s64.47 144 144 144 144-64.47 144-144S223.53 0 144 0zm0 76c-37.5 0-68 30.5-68 68 0 6.62-5.38 12-12 12s-12-5.38-12-12c0-50.73 41.28-92 92-92 6.62 0 12 5.38 12 12s-5.38 12-12 12z"],
	"map-signs": [512, 512, [], "f277", "M507.31 84.69L464 41.37c-6-6-14.14-9.37-22.63-9.37H288V16c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16v16H56c-13.25 0-24 10.75-24 24v80c0 13.25 10.75 24 24 24h385.37c8.49 0 16.62-3.37 22.63-9.37l43.31-43.31c6.25-6.26 6.25-16.38 0-22.63zM224 496c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16V384h-64v112zm232-272H288v-32h-64v32H70.63c-8.49 0-16.62 3.37-22.63 9.37L4.69 276.69c-6.25 6.25-6.25 16.38 0 22.63L48 342.63c6 6 14.14 9.37 22.63 9.37H456c13.25 0 24-10.75 24-24v-80c0-13.25-10.75-24-24-24z"],
	"marker": [512, 512, [], "f5a1", "M93.95 290.03A327.038 327.038 0 0 0 .17 485.11l-.03.23c-1.7 15.28 11.21 28.2 26.49 26.51a327.02 327.02 0 0 0 195.34-93.8l75.4-75.4-128.02-128.02-75.4 75.4zM485.49 26.51c-35.35-35.35-92.67-35.35-128.02 0l-21.76 21.76-36.56-36.55c-15.62-15.62-40.95-15.62-56.56 0L138.47 115.84c-6.25 6.25-6.25 16.38 0 22.63l22.62 22.62c6.25 6.25 16.38 6.25 22.63 0l87.15-87.15 19.59 19.59L191.98 192 320 320.02l165.49-165.49c35.35-35.35 35.35-92.66 0-128.02z"],
	"mars": [384, 512, [], "f222", "M372 64h-79c-10.7 0-16 12.9-8.5 20.5l16.9 16.9-80.7 80.7c-22.2-14-48.5-22.1-76.7-22.1C64.5 160 0 224.5 0 304s64.5 144 144 144 144-64.5 144-144c0-28.2-8.1-54.5-22.1-76.7l80.7-80.7 16.9 16.9c7.6 7.6 20.5 2.2 20.5-8.5V76c0-6.6-5.4-12-12-12zM144 384c-44.1 0-80-35.9-80-80s35.9-80 80-80 80 35.9 80 80-35.9 80-80 80z"],
	"mars-double": [512, 512, [], "f227", "M340 0h-79c-10.7 0-16 12.9-8.5 20.5l16.9 16.9-48.7 48.7C198.5 72.1 172.2 64 144 64 64.5 64 0 128.5 0 208s64.5 144 144 144 144-64.5 144-144c0-28.2-8.1-54.5-22.1-76.7l48.7-48.7 16.9 16.9c2.4 2.4 5.5 3.5 8.4 3.5 6.2 0 12.1-4.8 12.1-12V12c0-6.6-5.4-12-12-12zM144 288c-44.1 0-80-35.9-80-80s35.9-80 80-80 80 35.9 80 80-35.9 80-80 80zm356-128.1h-79c-10.7 0-16 12.9-8.5 20.5l16.9 16.9-48.7 48.7c-18.2-11.4-39-18.9-61.5-21.3-2.1 21.8-8.2 43.3-18.4 63.3 1.1 0 2.2-.1 3.2-.1 44.1 0 80 35.9 80 80s-35.9 80-80 80-80-35.9-80-80c0-1.1 0-2.2.1-3.2-20 10.2-41.5 16.4-63.3 18.4C168.4 455.6 229.6 512 304 512c79.5 0 144-64.5 144-144 0-28.2-8.1-54.5-22.1-76.7l48.7-48.7 16.9 16.9c2.4 2.4 5.4 3.5 8.4 3.5 6.2 0 12.1-4.8 12.1-12v-79c0-6.7-5.4-12.1-12-12.1z"],
	"mars-stroke": [384, 512, [], "f229", "M372 64h-79c-10.7 0-16 12.9-8.5 20.5l16.9 16.9-17.5 17.5-14.1-14.1c-4.7-4.7-12.3-4.7-17 0L224.5 133c-4.7 4.7-4.7 12.3 0 17l14.1 14.1-18 18c-22.2-14-48.5-22.1-76.7-22.1C64.5 160 0 224.5 0 304s64.5 144 144 144 144-64.5 144-144c0-28.2-8.1-54.5-22.1-76.7l18-18 14.1 14.1c4.7 4.7 12.3 4.7 17 0l28.3-28.3c4.7-4.7 4.7-12.3 0-17L329.2 164l17.5-17.5 16.9 16.9c7.6 7.6 20.5 2.2 20.5-8.5V76c-.1-6.6-5.5-12-12.1-12zM144 384c-44.1 0-80-35.9-80-80s35.9-80 80-80 80 35.9 80 80-35.9 80-80 80z"],
	"mars-stroke-h": [480, 512, [], "f22b", "M476.2 247.5l-55.9-55.9c-7.6-7.6-20.5-2.2-20.5 8.5V224H376v-20c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12v20h-27.6c-5.8-25.6-18.7-49.9-38.6-69.8C189.6 98 98.4 98 42.2 154.2c-56.2 56.2-56.2 147.4 0 203.6 56.2 56.2 147.4 56.2 203.6 0 19.9-19.9 32.8-44.2 38.6-69.8H312v20c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12v-20h23.9v23.9c0 10.7 12.9 16 20.5 8.5l55.9-55.9c4.6-4.7 4.6-12.3-.1-17zm-275.6 65.1c-31.2 31.2-81.9 31.2-113.1 0-31.2-31.2-31.2-81.9 0-113.1 31.2-31.2 81.9-31.2 113.1 0 31.2 31.1 31.2 81.9 0 113.1z"],
	"mars-stroke-v": [288, 512, [], "f22a", "M245.8 234.2c-19.9-19.9-44.2-32.8-69.8-38.6v-25.4h20c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-20V81.4h23.9c10.7 0 16-12.9 8.5-20.5L152.5 5.1c-4.7-4.7-12.3-4.7-17 0L79.6 61c-7.6 7.6-2.2 20.5 8.5 20.5H112v24.7H92c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h20v25.4c-25.6 5.8-49.9 18.7-69.8 38.6-56.2 56.2-56.2 147.4 0 203.6 56.2 56.2 147.4 56.2 203.6 0 56.3-56.2 56.3-147.4 0-203.6zm-45.2 158.4c-31.2 31.2-81.9 31.2-113.1 0-31.2-31.2-31.2-81.9 0-113.1 31.2-31.2 81.9-31.2 113.1 0 31.2 31.1 31.2 81.9 0 113.1z"],
	"mask": [640, 512, [], "f6fa", "M320.67 64c-442.6 0-357.57 384-158.46 384 39.9 0 77.47-20.69 101.42-55.86l25.73-37.79c15.66-22.99 46.97-22.99 62.63 0l25.73 37.79C401.66 427.31 439.23 448 479.13 448c189.86 0 290.63-384-158.46-384zM184 308.36c-41.06 0-67.76-25.66-80.08-41.05-5.23-6.53-5.23-16.09 0-22.63 12.32-15.4 39.01-41.05 80.08-41.05s67.76 25.66 80.08 41.05c5.23 6.53 5.23 16.09 0 22.63-12.32 15.4-39.02 41.05-80.08 41.05zm272 0c-41.06 0-67.76-25.66-80.08-41.05-5.23-6.53-5.23-16.09 0-22.63 12.32-15.4 39.01-41.05 80.08-41.05s67.76 25.66 80.08 41.05c5.23 6.53 5.23 16.09 0 22.63-12.32 15.4-39.02 41.05-80.08 41.05z"],
	"medal": [512, 512, [], "f5a2", "M223.75 130.75L154.62 15.54A31.997 31.997 0 0 0 127.18 0H16.03C3.08 0-4.5 14.57 2.92 25.18l111.27 158.96c29.72-27.77 67.52-46.83 109.56-53.39zM495.97 0H384.82c-11.24 0-21.66 5.9-27.44 15.54l-69.13 115.21c42.04 6.56 79.84 25.62 109.56 53.38L509.08 25.18C516.5 14.57 508.92 0 495.97 0zM256 160c-97.2 0-176 78.8-176 176s78.8 176 176 176 176-78.8 176-176-78.8-176-176-176zm92.52 157.26l-37.93 36.96 8.97 52.22c1.6 9.36-8.26 16.51-16.65 12.09L256 393.88l-46.9 24.65c-8.4 4.45-18.25-2.74-16.65-12.09l8.97-52.22-37.93-36.96c-6.82-6.64-3.05-18.23 6.35-19.59l52.43-7.64 23.43-47.52c2.11-4.28 6.19-6.39 10.28-6.39 4.11 0 8.22 2.14 10.33 6.39l23.43 47.52 52.43 7.64c9.4 1.36 13.17 12.95 6.35 19.59z"],
	"medkit": [512, 512, [], "f0fa", "M96 480h320V128h-32V80c0-26.51-21.49-48-48-48H176c-26.51 0-48 21.49-48 48v48H96v352zm96-384h128v32H192V96zm320 80v256c0 26.51-21.49 48-48 48h-16V128h16c26.51 0 48 21.49 48 48zM64 480H48c-26.51 0-48-21.49-48-48V176c0-26.51 21.49-48 48-48h16v352zm288-208v32c0 8.837-7.163 16-16 16h-48v48c0 8.837-7.163 16-16 16h-32c-8.837 0-16-7.163-16-16v-48h-48c-8.837 0-16-7.163-16-16v-32c0-8.837 7.163-16 16-16h48v-48c0-8.837 7.163-16 16-16h32c8.837 0 16 7.163 16 16v48h48c8.837 0 16 7.163 16 16z"],
	"meh": [496, 512, [], "f11a", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm-80 168c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32zm176 192H152c-21.2 0-21.2-32 0-32h192c21.2 0 21.2 32 0 32zm-16-128c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32z"],
	"meh-blank": [496, 512, [], "f5a4", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm-80 232c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm160 0c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32z"],
	"meh-rolling-eyes": [496, 512, [], "f5a5", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zM88 224c0-24.3 13.7-45.2 33.6-56-.7 2.6-1.6 5.2-1.6 8 0 17.7 14.3 32 32 32s32-14.3 32-32c0-2.8-.9-5.4-1.6-8 19.9 10.8 33.6 31.7 33.6 56 0 35.3-28.7 64-64 64s-64-28.7-64-64zm224 176H184c-21.2 0-21.2-32 0-32h128c21.2 0 21.2 32 0 32zm32-112c-35.3 0-64-28.7-64-64 0-24.3 13.7-45.2 33.6-56-.7 2.6-1.6 5.2-1.6 8 0 17.7 14.3 32 32 32s32-14.3 32-32c0-2.8-.9-5.4-1.6-8 19.9 10.8 33.6 31.7 33.6 56 0 35.3-28.7 64-64 64z"],
	"memory": [640, 512, [], "f538", "M640 130.94V96c0-17.67-14.33-32-32-32H32C14.33 64 0 78.33 0 96v34.94c18.6 6.61 32 24.19 32 45.06s-13.4 38.45-32 45.06V320h640v-98.94c-18.6-6.61-32-24.19-32-45.06s13.4-38.45 32-45.06zM224 256h-64V128h64v128zm128 0h-64V128h64v128zm128 0h-64V128h64v128zM0 448h64v-26.67c0-8.84 7.16-16 16-16s16 7.16 16 16V448h128v-26.67c0-8.84 7.16-16 16-16s16 7.16 16 16V448h128v-26.67c0-8.84 7.16-16 16-16s16 7.16 16 16V448h128v-26.67c0-8.84 7.16-16 16-16s16 7.16 16 16V448h64v-96H0v96z"],
	"menorah": [640, 512, [], "f676", "M144 128h-32c-8.84 0-16 7.16-16 16v144h64V144c0-8.84-7.16-16-16-16zm96 0h-32c-8.84 0-16 7.16-16 16v144h64V144c0-8.84-7.16-16-16-16zm192 0h-32c-8.84 0-16 7.16-16 16v144h64V144c0-8.84-7.16-16-16-16zm96 0h-32c-8.84 0-16 7.16-16 16v144h64V144c0-8.84-7.16-16-16-16zm80-32c17.67 0 32-14.33 32-32S608 0 608 0s-32 46.33-32 64 14.33 32 32 32zm-96 0c17.67 0 32-14.33 32-32S512 0 512 0s-32 46.33-32 64 14.33 32 32 32zm-96 0c17.67 0 32-14.33 32-32S416 0 416 0s-32 46.33-32 64 14.33 32 32 32zm-96 0c17.67 0 32-14.33 32-32S320 0 320 0s-32 46.33-32 64 14.33 32 32 32zm-96 0c17.67 0 32-14.33 32-32S224 0 224 0s-32 46.33-32 64 14.33 32 32 32zm-96 0c17.67 0 32-14.33 32-32S128 0 128 0 96 46.33 96 64s14.33 32 32 32zm-96 0c17.67 0 32-14.33 32-32S32 0 32 0 0 46.33 0 64s14.33 32 32 32zm544 192c0 17.67-14.33 32-32 32H352V144c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16v176H96c-17.67 0-32-14.33-32-32V144c0-8.84-7.16-16-16-16H16c-8.84 0-16 7.16-16 16v144c0 53.02 42.98 96 96 96h192v64H112c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h416c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16H352v-64h192c53.02 0 96-42.98 96-96V144c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16v144z"],
	"mercury": [288, 512, [], "f223", "M288 208c0-44.2-19.9-83.7-51.2-110.1 2.5-1.8 4.9-3.8 7.2-5.8 24.7-21.2 39.8-48.8 43.2-78.8.9-7.1-4.7-13.3-11.9-13.3h-40.5C229 0 224.1 4.1 223 9.8c-2.4 12.5-9.6 24.3-20.7 33.8C187 56.8 166.3 64 144 64s-43-7.2-58.4-20.4C74.5 34.1 67.4 22.3 64.9 9.8 63.8 4.1 58.9 0 53.2 0H12.7C5.5 0-.1 6.2.8 13.3 4.2 43.4 19.2 71 44 92.2c2.3 2 4.7 3.9 7.2 5.8C19.9 124.3 0 163.8 0 208c0 68.5 47.9 125.9 112 140.4V400H76c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h36v36c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12v-36h36c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-36v-51.6c64.1-14.5 112-71.9 112-140.4zm-224 0c0-44.1 35.9-80 80-80s80 35.9 80 80-35.9 80-80 80-80-35.9-80-80z"],
	"meteor": [512, 512, [], "f753", "M511.328,20.8027c-11.60759,38.70264-34.30724,111.70173-61.30311,187.70077,6.99893,2.09372,13.4042,4,18.60653,5.59368a16.06158,16.06158,0,0,1,9.49854,22.906c-22.106,42.29635-82.69047,152.795-142.47819,214.40356-.99984,1.09373-1.99969,2.5-2.99954,3.49995A194.83046,194.83046,0,1,1,57.085,179.41009c.99985-1,2.40588-2,3.49947-3,61.59994-59.90549,171.97367-120.40473,214.37343-142.4982a16.058,16.058,0,0,1,22.90274,9.49988c1.59351,5.09368,3.49947,11.5936,5.5929,18.59351C379.34818,35.00565,452.43074,12.30281,491.12794.70921A16.18325,16.18325,0,0,1,511.328,20.8027ZM319.951,320.00207A127.98041,127.98041,0,1,0,191.97061,448.00046,127.97573,127.97573,0,0,0,319.951,320.00207Zm-127.98041-31.9996a31.9951,31.9951,0,1,1-31.9951-31.9996A31.959,31.959,0,0,1,191.97061,288.00247Zm31.9951,79.999a15.99755,15.99755,0,1,1-15.99755-15.9998A16.04975,16.04975,0,0,1,223.96571,368.00147Z"],
	"microchip": [512, 512, [], "f2db", "M416 48v416c0 26.51-21.49 48-48 48H144c-26.51 0-48-21.49-48-48V48c0-26.51 21.49-48 48-48h224c26.51 0 48 21.49 48 48zm96 58v12a6 6 0 0 1-6 6h-18v6a6 6 0 0 1-6 6h-42V88h42a6 6 0 0 1 6 6v6h18a6 6 0 0 1 6 6zm0 96v12a6 6 0 0 1-6 6h-18v6a6 6 0 0 1-6 6h-42v-48h42a6 6 0 0 1 6 6v6h18a6 6 0 0 1 6 6zm0 96v12a6 6 0 0 1-6 6h-18v6a6 6 0 0 1-6 6h-42v-48h42a6 6 0 0 1 6 6v6h18a6 6 0 0 1 6 6zm0 96v12a6 6 0 0 1-6 6h-18v6a6 6 0 0 1-6 6h-42v-48h42a6 6 0 0 1 6 6v6h18a6 6 0 0 1 6 6zM30 376h42v48H30a6 6 0 0 1-6-6v-6H6a6 6 0 0 1-6-6v-12a6 6 0 0 1 6-6h18v-6a6 6 0 0 1 6-6zm0-96h42v48H30a6 6 0 0 1-6-6v-6H6a6 6 0 0 1-6-6v-12a6 6 0 0 1 6-6h18v-6a6 6 0 0 1 6-6zm0-96h42v48H30a6 6 0 0 1-6-6v-6H6a6 6 0 0 1-6-6v-12a6 6 0 0 1 6-6h18v-6a6 6 0 0 1 6-6zm0-96h42v48H30a6 6 0 0 1-6-6v-6H6a6 6 0 0 1-6-6v-12a6 6 0 0 1 6-6h18v-6a6 6 0 0 1 6-6z"],
	"microphone": [352, 512, [], "f130", "M176 352c53.02 0 96-42.98 96-96V96c0-53.02-42.98-96-96-96S80 42.98 80 96v160c0 53.02 42.98 96 96 96zm160-160h-16c-8.84 0-16 7.16-16 16v48c0 74.8-64.49 134.82-140.79 127.38C96.71 376.89 48 317.11 48 250.3V208c0-8.84-7.16-16-16-16H16c-8.84 0-16 7.16-16 16v40.16c0 89.64 63.97 169.55 152 181.69V464H96c-8.84 0-16 7.16-16 16v16c0 8.84 7.16 16 16 16h160c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16h-56v-33.77C285.71 418.47 352 344.9 352 256v-48c0-8.84-7.16-16-16-16z"],
	"microphone-alt": [352, 512, [], "f3c9", "M336 192h-16c-8.84 0-16 7.16-16 16v48c0 74.8-64.49 134.82-140.79 127.38C96.71 376.89 48 317.11 48 250.3V208c0-8.84-7.16-16-16-16H16c-8.84 0-16 7.16-16 16v40.16c0 89.64 63.97 169.55 152 181.69V464H96c-8.84 0-16 7.16-16 16v16c0 8.84 7.16 16 16 16h160c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16h-56v-33.77C285.71 418.47 352 344.9 352 256v-48c0-8.84-7.16-16-16-16zM176 352c53.02 0 96-42.98 96-96h-85.33c-5.89 0-10.67-3.58-10.67-8v-16c0-4.42 4.78-8 10.67-8H272v-32h-85.33c-5.89 0-10.67-3.58-10.67-8v-16c0-4.42 4.78-8 10.67-8H272v-32h-85.33c-5.89 0-10.67-3.58-10.67-8v-16c0-4.42 4.78-8 10.67-8H272c0-53.02-42.98-96-96-96S80 42.98 80 96v160c0 53.02 42.98 96 96 96z"],
	"microphone-alt-slash": [640, 512, [], "f539", "M633.82 458.1L476.26 336.33C488.74 312.21 496 284.98 496 256v-48c0-8.84-7.16-16-16-16h-16c-8.84 0-16 7.16-16 16v48c0 17.92-3.96 34.8-10.72 50.2l-26.55-20.52c3.1-9.4 5.28-19.22 5.28-29.67h-43.67l-41.4-32H416v-32h-85.33c-5.89 0-10.67-3.58-10.67-8v-16c0-4.42 4.78-8 10.67-8H416v-32h-85.33c-5.89 0-10.67-3.58-10.67-8v-16c0-4.42 4.78-8 10.67-8H416c0-53.02-42.98-96-96-96s-96 42.98-96 96v45.36L45.47 3.37C38.49-2.05 28.43-.8 23.01 6.18L3.37 31.45C-2.05 38.42-.8 48.47 6.18 53.9l588.36 454.73c6.98 5.43 17.03 4.17 22.46-2.81l19.64-25.27c5.41-6.97 4.16-17.02-2.82-22.45zM400 464h-56v-33.78c11.71-1.62 23.1-4.28 33.96-8.08l-50.4-38.96c-6.71.4-13.41.87-20.35.2-55.85-5.45-98.74-48.63-111.18-101.85L144 241.31v6.85c0 89.64 63.97 169.55 152 181.69V464h-56c-8.84 0-16 7.16-16 16v16c0 8.84 7.16 16 16 16h160c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16z"],
	"microphone-slash": [640, 512, [], "f131", "M633.82 458.1l-157.8-121.96C488.61 312.13 496 285.01 496 256v-48c0-8.84-7.16-16-16-16h-16c-8.84 0-16 7.16-16 16v48c0 17.92-3.96 34.8-10.72 50.2l-26.55-20.52c3.1-9.4 5.28-19.22 5.28-29.67V96c0-53.02-42.98-96-96-96s-96 42.98-96 96v45.36L45.47 3.37C38.49-2.05 28.43-.8 23.01 6.18L3.37 31.45C-2.05 38.42-.8 48.47 6.18 53.9l588.36 454.73c6.98 5.43 17.03 4.17 22.46-2.81l19.64-25.27c5.41-6.97 4.16-17.02-2.82-22.45zM400 464h-56v-33.77c11.66-1.6 22.85-4.54 33.67-8.31l-50.11-38.73c-6.71.4-13.41.87-20.35.2-55.85-5.45-98.74-48.63-111.18-101.85L144 241.31v6.85c0 89.64 63.97 169.55 152 181.69V464h-56c-8.84 0-16 7.16-16 16v16c0 8.84 7.16 16 16 16h160c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16z"],
	"microscope": [512, 512, [], "f610", "M160 320h12v16c0 8.84 7.16 16 16 16h40c8.84 0 16-7.16 16-16v-16h12c17.67 0 32-14.33 32-32V64c0-17.67-14.33-32-32-32V16c0-8.84-7.16-16-16-16h-64c-8.84 0-16 7.16-16 16v16c-17.67 0-32 14.33-32 32v224c0 17.67 14.33 32 32 32zm304 128h-1.29C493.24 413.99 512 369.2 512 320c0-105.88-86.12-192-192-192v64c70.58 0 128 57.42 128 128s-57.42 128-128 128H48c-26.51 0-48 21.49-48 48 0 8.84 7.16 16 16 16h480c8.84 0 16-7.16 16-16 0-26.51-21.49-48-48-48zm-360-32h208c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8H104c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8z"],
	"minus": [448, 512, [], "f068", "M416 208H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h384c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z"],
	"minus-circle": [512, 512, [], "f056", "M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zM124 296c-6.6 0-12-5.4-12-12v-56c0-6.6 5.4-12 12-12h264c6.6 0 12 5.4 12 12v56c0 6.6-5.4 12-12 12H124z"],
	"minus-square": [448, 512, [], "f146", "M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM92 296c-6.6 0-12-5.4-12-12v-56c0-6.6 5.4-12 12-12h264c6.6 0 12 5.4 12 12v56c0 6.6-5.4 12-12 12H92z"],
	"mitten": [448, 512, [], "f7b5", "M368 416H48c-8.8 0-16 7.2-16 16v64c0 8.8 7.2 16 16 16h320c8.8 0 16-7.2 16-16v-64c0-8.8-7.2-16-16-16zm57-209.1c-27.2-22.6-67.5-19-90.1 8.2l-20.9 25-29.6-128.4c-18-77.5-95.4-125.9-172.8-108C34.2 21.6-14.2 98.9 3.7 176.4L51.6 384h309l72.5-87c22.7-27.2 19-67.5-8.1-90.1z"],
	"mobile": [320, 512, [], "f10b", "M272 0H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h224c26.5 0 48-21.5 48-48V48c0-26.5-21.5-48-48-48zM160 480c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32z"],
	"mobile-alt": [320, 512, [], "f3cd", "M272 0H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h224c26.5 0 48-21.5 48-48V48c0-26.5-21.5-48-48-48zM160 480c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm112-108c0 6.6-5.4 12-12 12H60c-6.6 0-12-5.4-12-12V60c0-6.6 5.4-12 12-12h200c6.6 0 12 5.4 12 12v312z"],
	"money-bill": [640, 512, [], "f0d6", "M608 64H32C14.33 64 0 78.33 0 96v320c0 17.67 14.33 32 32 32h576c17.67 0 32-14.33 32-32V96c0-17.67-14.33-32-32-32zM48 400v-64c35.35 0 64 28.65 64 64H48zm0-224v-64h64c0 35.35-28.65 64-64 64zm272 176c-44.19 0-80-42.99-80-96 0-53.02 35.82-96 80-96s80 42.98 80 96c0 53.03-35.83 96-80 96zm272 48h-64c0-35.35 28.65-64 64-64v64zm0-224c-35.35 0-64-28.65-64-64h64v64z"],
	"money-bill-alt": [640, 512, [], "f3d1", "M352 288h-16v-88c0-4.42-3.58-8-8-8h-13.58c-4.74 0-9.37 1.4-13.31 4.03l-15.33 10.22a7.994 7.994 0 0 0-2.22 11.09l8.88 13.31a7.994 7.994 0 0 0 11.09 2.22l.47-.31V288h-16c-4.42 0-8 3.58-8 8v16c0 4.42 3.58 8 8 8h64c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zM608 64H32C14.33 64 0 78.33 0 96v320c0 17.67 14.33 32 32 32h576c17.67 0 32-14.33 32-32V96c0-17.67-14.33-32-32-32zM48 400v-64c35.35 0 64 28.65 64 64H48zm0-224v-64h64c0 35.35-28.65 64-64 64zm272 192c-53.02 0-96-50.15-96-112 0-61.86 42.98-112 96-112s96 50.14 96 112c0 61.87-43 112-96 112zm272 32h-64c0-35.35 28.65-64 64-64v64zm0-224c-35.35 0-64-28.65-64-64h64v64z"],
	"money-bill-wave": [640, 512, [], "f53a", "M621.16 54.46C582.37 38.19 543.55 32 504.75 32c-123.17-.01-246.33 62.34-369.5 62.34-30.89 0-61.76-3.92-92.65-13.72-3.47-1.1-6.95-1.62-10.35-1.62C15.04 79 0 92.32 0 110.81v317.26c0 12.63 7.23 24.6 18.84 29.46C57.63 473.81 96.45 480 135.25 480c123.17 0 246.34-62.35 369.51-62.35 30.89 0 61.76 3.92 92.65 13.72 3.47 1.1 6.95 1.62 10.35 1.62 17.21 0 32.25-13.32 32.25-31.81V83.93c-.01-12.64-7.24-24.6-18.85-29.47zM48 132.22c20.12 5.04 41.12 7.57 62.72 8.93C104.84 170.54 79 192.69 48 192.69v-60.47zm0 285v-47.78c34.37 0 62.18 27.27 63.71 61.4-22.53-1.81-43.59-6.31-63.71-13.62zM320 352c-44.19 0-80-42.99-80-96 0-53.02 35.82-96 80-96s80 42.98 80 96c0 53.03-35.83 96-80 96zm272 27.78c-17.52-4.39-35.71-6.85-54.32-8.44 5.87-26.08 27.5-45.88 54.32-49.28v57.72zm0-236.11c-30.89-3.91-54.86-29.7-55.81-61.55 19.54 2.17 38.09 6.23 55.81 12.66v48.89z"],
	"money-bill-wave-alt": [640, 512, [], "f53b", "M621.16 54.46C582.37 38.19 543.55 32 504.75 32c-123.17-.01-246.33 62.34-369.5 62.34-30.89 0-61.76-3.92-92.65-13.72-3.47-1.1-6.95-1.62-10.35-1.62C15.04 79 0 92.32 0 110.81v317.26c0 12.63 7.23 24.6 18.84 29.46C57.63 473.81 96.45 480 135.25 480c123.17 0 246.34-62.35 369.51-62.35 30.89 0 61.76 3.92 92.65 13.72 3.47 1.1 6.95 1.62 10.35 1.62 17.21 0 32.25-13.32 32.25-31.81V83.93c-.01-12.64-7.24-24.6-18.85-29.47zM320 352c-44.19 0-80-42.99-80-96 0-53.02 35.82-96 80-96s80 42.98 80 96c0 53.03-35.83 96-80 96z"],
	"money-check": [640, 512, [], "f53c", "M0 448c0 17.67 14.33 32 32 32h576c17.67 0 32-14.33 32-32V128H0v320zm448-208c0-8.84 7.16-16 16-16h96c8.84 0 16 7.16 16 16v32c0 8.84-7.16 16-16 16h-96c-8.84 0-16-7.16-16-16v-32zm0 120c0-4.42 3.58-8 8-8h112c4.42 0 8 3.58 8 8v16c0 4.42-3.58 8-8 8H456c-4.42 0-8-3.58-8-8v-16zM64 264c0-4.42 3.58-8 8-8h304c4.42 0 8 3.58 8 8v16c0 4.42-3.58 8-8 8H72c-4.42 0-8-3.58-8-8v-16zm0 96c0-4.42 3.58-8 8-8h176c4.42 0 8 3.58 8 8v16c0 4.42-3.58 8-8 8H72c-4.42 0-8-3.58-8-8v-16zM624 32H16C7.16 32 0 39.16 0 48v48h640V48c0-8.84-7.16-16-16-16z"],
	"money-check-alt": [640, 512, [], "f53d", "M608 32H32C14.33 32 0 46.33 0 64v384c0 17.67 14.33 32 32 32h576c17.67 0 32-14.33 32-32V64c0-17.67-14.33-32-32-32zM176 327.88V344c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8v-16.29c-11.29-.58-22.27-4.52-31.37-11.35-3.9-2.93-4.1-8.77-.57-12.14l11.75-11.21c2.77-2.64 6.89-2.76 10.13-.73 3.87 2.42 8.26 3.72 12.82 3.72h28.11c6.5 0 11.8-5.92 11.8-13.19 0-5.95-3.61-11.19-8.77-12.73l-45-13.5c-18.59-5.58-31.58-23.42-31.58-43.39 0-24.52 19.05-44.44 42.67-45.07V152c0-4.42 3.58-8 8-8h16c4.42 0 8 3.58 8 8v16.29c11.29.58 22.27 4.51 31.37 11.35 3.9 2.93 4.1 8.77.57 12.14l-11.75 11.21c-2.77 2.64-6.89 2.76-10.13.73-3.87-2.43-8.26-3.72-12.82-3.72h-28.11c-6.5 0-11.8 5.92-11.8 13.19 0 5.95 3.61 11.19 8.77 12.73l45 13.5c18.59 5.58 31.58 23.42 31.58 43.39 0 24.53-19.05 44.44-42.67 45.07zM416 312c0 4.42-3.58 8-8 8H296c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h112c4.42 0 8 3.58 8 8v16zm160 0c0 4.42-3.58 8-8 8h-80c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h80c4.42 0 8 3.58 8 8v16zm0-96c0 4.42-3.58 8-8 8H296c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h272c4.42 0 8 3.58 8 8v16z"],
	"monument": [384, 512, [], "f5a6", "M368 448H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h352c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zm-78.86-347.26a31.97 31.97 0 0 0-9.21-19.44L203.31 4.69c-6.25-6.25-16.38-6.25-22.63 0l-76.6 76.61a31.97 31.97 0 0 0-9.21 19.44L64 416h256l-30.86-315.26zM240 307.2c0 6.4-6.4 12.8-12.8 12.8h-70.4c-6.4 0-12.8-6.4-12.8-12.8v-38.4c0-6.4 6.4-12.8 12.8-12.8h70.4c6.4 0 12.8 6.4 12.8 12.8v38.4z"],
	"moon": [512, 512, [], "f186", "M283.211 512c78.962 0 151.079-35.925 198.857-94.792 7.068-8.708-.639-21.43-11.562-19.35-124.203 23.654-238.262-71.576-238.262-196.954 0-72.222 38.662-138.635 101.498-174.394 9.686-5.512 7.25-20.197-3.756-22.23A258.156 258.156 0 0 0 283.211 0c-141.309 0-256 114.511-256 256 0 141.309 114.511 256 256 256z"],
	"mortar-pestle": [512, 512, [], "f5a7", "M501.54 60.91c17.22-17.22 12.51-46.25-9.27-57.14a35.696 35.696 0 0 0-37.37 3.37L251.09 160h151.37l99.08-99.09zM496 192H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h16c0 80.98 50.2 150.11 121.13 178.32-12.76 16.87-21.72 36.8-24.95 58.69-1.46 9.92 6.04 18.98 16.07 18.98h223.5c10.03 0 17.53-9.06 16.07-18.98-3.22-21.89-12.18-41.82-24.95-58.69C429.8 406.11 480 336.98 480 256h16c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16z"],
	"mosque": [640, 512, [], "f678", "M0 480c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32V160H0v320zm579.16-192c17.86-17.39 28.84-37.34 28.84-58.91 0-52.86-41.79-93.79-87.92-122.9-41.94-26.47-80.63-57.77-111.96-96.22L400 0l-8.12 9.97c-31.33 38.45-70.01 69.76-111.96 96.22C233.79 135.3 192 176.23 192 229.09c0 21.57 10.98 41.52 28.84 58.91h358.32zM608 320H192c-17.67 0-32 14.33-32 32v128c0 17.67 14.33 32 32 32h32v-64c0-17.67 14.33-32 32-32s32 14.33 32 32v64h64v-72c0-48 48-72 48-72s48 24 48 72v72h64v-64c0-17.67 14.33-32 32-32s32 14.33 32 32v64h32c17.67 0 32-14.33 32-32V352c0-17.67-14.33-32-32-32zM64 0S0 32 0 96v32h128V96c0-64-64-96-64-96z"],
	"motorcycle": [640, 512, [], "f21c", "M512.9 192c-14.9-.1-29.1 2.3-42.4 6.9L437.6 144H520c13.3 0 24-10.7 24-24V88c0-13.3-10.7-24-24-24h-45.3c-6.8 0-13.3 2.9-17.8 7.9l-37.5 41.7-22.8-38C392.2 68.4 384.4 64 376 64h-80c-8.8 0-16 7.2-16 16v16c0 8.8 7.2 16 16 16h66.4l19.2 32H227.9c-17.7-23.1-44.9-40-99.9-40H72.5C59 104 47.7 115 48 128.5c.2 13 10.9 23.5 24 23.5h56c24.5 0 38.7 10.9 47.8 24.8l-11.3 20.5c-13-3.9-26.9-5.7-41.3-5.2C55.9 194.5 1.6 249.6 0 317c-1.6 72.1 56.3 131 128 131 59.6 0 109.7-40.8 124-96h84.2c13.7 0 24.6-11.4 24-25.1-2.1-47.1 17.5-93.7 56.2-125l12.5 20.8c-27.6 23.7-45.1 58.9-44.8 98.2.5 69.6 57.2 126.5 126.8 127.1 71.6.7 129.8-57.5 129.2-129.1-.7-69.6-57.6-126.4-127.2-126.9zM128 400c-44.1 0-80-35.9-80-80s35.9-80 80-80c4.2 0 8.4.3 12.5 1L99 316.4c-8.8 16 2.8 35.6 21 35.6h81.3c-12.4 28.2-40.6 48-73.3 48zm463.9-75.6c-2.2 40.6-35 73.4-75.5 75.5-46.1 2.5-84.4-34.3-84.4-79.9 0-21.4 8.4-40.8 22.1-55.1l49.4 82.4c4.5 7.6 14.4 10 22 5.5l13.7-8.2c7.6-4.5 10-14.4 5.5-22l-48.6-80.9c5.2-1.1 10.5-1.6 15.9-1.6 45.6-.1 82.3 38.2 79.9 84.3z"],
	"mountain": [640, 512, [], "f6fc", "M634.92 462.7l-288-448C341.03 5.54 330.89 0 320 0s-21.03 5.54-26.92 14.7l-288 448a32.001 32.001 0 0 0-1.17 32.64A32.004 32.004 0 0 0 32 512h576c11.71 0 22.48-6.39 28.09-16.67a31.983 31.983 0 0 0-1.17-32.63zM320 91.18L405.39 224H320l-64 64-38.06-38.06L320 91.18z"],
	"mouse": [384, 512, [], "f8cc", "M0 352a160 160 0 0 0 160 160h64a160 160 0 0 0 160-160V224H0zM176 0h-16A160 160 0 0 0 0 160v32h176zm48 0h-16v192h176v-32A160 160 0 0 0 224 0z"],
	"mouse-pointer": [320, 512, [], "f245", "M302.189 329.126H196.105l55.831 135.993c3.889 9.428-.555 19.999-9.444 23.999l-49.165 21.427c-9.165 4-19.443-.571-23.332-9.714l-53.053-129.136-86.664 89.138C18.729 472.71 0 463.554 0 447.977V18.299C0 1.899 19.921-6.096 30.277 5.443l284.412 292.542c11.472 11.179 3.007 31.141-12.5 31.141z"],
	"mug-hot": [512, 512, [], "f7b6", "M127.1 146.5c1.3 7.7 8 13.5 16 13.5h16.5c9.8 0 17.6-8.5 16.3-18-3.8-28.2-16.4-54.2-36.6-74.7-14.4-14.7-23.6-33.3-26.4-53.5C111.8 5.9 105 0 96.8 0H80.4C70.6 0 63 8.5 64.1 18c3.9 31.9 18 61.3 40.6 84.4 12 12.2 19.7 27.5 22.4 44.1zm112 0c1.3 7.7 8 13.5 16 13.5h16.5c9.8 0 17.6-8.5 16.3-18-3.8-28.2-16.4-54.2-36.6-74.7-14.4-14.7-23.6-33.3-26.4-53.5C223.8 5.9 217 0 208.8 0h-16.4c-9.8 0-17.5 8.5-16.3 18 3.9 31.9 18 61.3 40.6 84.4 12 12.2 19.7 27.5 22.4 44.1zM400 192H32c-17.7 0-32 14.3-32 32v192c0 53 43 96 96 96h192c53 0 96-43 96-96h16c61.8 0 112-50.2 112-112s-50.2-112-112-112zm0 160h-16v-96h16c26.5 0 48 21.5 48 48s-21.5 48-48 48z"],
	"music": [512, 512, [], "f001", "M470.38 1.51L150.41 96A32 32 0 0 0 128 126.51v261.41A139 139 0 0 0 96 384c-53 0-96 28.66-96 64s43 64 96 64 96-28.66 96-64V214.32l256-75v184.61a138.4 138.4 0 0 0-32-3.93c-53 0-96 28.66-96 64s43 64 96 64 96-28.65 96-64V32a32 32 0 0 0-41.62-30.49z"],
	"network-wired": [640, 512, [], "f6ff", "M640 264v-16c0-8.84-7.16-16-16-16H344v-40h72c17.67 0 32-14.33 32-32V32c0-17.67-14.33-32-32-32H224c-17.67 0-32 14.33-32 32v128c0 17.67 14.33 32 32 32h72v40H16c-8.84 0-16 7.16-16 16v16c0 8.84 7.16 16 16 16h104v40H64c-17.67 0-32 14.33-32 32v128c0 17.67 14.33 32 32 32h160c17.67 0 32-14.33 32-32V352c0-17.67-14.33-32-32-32h-56v-40h304v40h-56c-17.67 0-32 14.33-32 32v128c0 17.67 14.33 32 32 32h160c17.67 0 32-14.33 32-32V352c0-17.67-14.33-32-32-32h-56v-40h104c8.84 0 16-7.16 16-16zM256 128V64h128v64H256zm-64 320H96v-64h96v64zm352 0h-96v-64h96v64z"],
	"neuter": [288, 512, [], "f22c", "M288 176c0-79.5-64.5-144-144-144S0 96.5 0 176c0 68.5 47.9 125.9 112 140.4V468c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12V316.4c64.1-14.5 112-71.9 112-140.4zm-144 80c-44.1 0-80-35.9-80-80s35.9-80 80-80 80 35.9 80 80-35.9 80-80 80z"],
	"newspaper": [576, 512, [], "f1ea", "M552 64H88c-13.255 0-24 10.745-24 24v8H24c-13.255 0-24 10.745-24 24v272c0 30.928 25.072 56 56 56h472c26.51 0 48-21.49 48-48V88c0-13.255-10.745-24-24-24zM56 400a8 8 0 0 1-8-8V144h16v248a8 8 0 0 1-8 8zm236-16H140c-6.627 0-12-5.373-12-12v-8c0-6.627 5.373-12 12-12h152c6.627 0 12 5.373 12 12v8c0 6.627-5.373 12-12 12zm208 0H348c-6.627 0-12-5.373-12-12v-8c0-6.627 5.373-12 12-12h152c6.627 0 12 5.373 12 12v8c0 6.627-5.373 12-12 12zm-208-96H140c-6.627 0-12-5.373-12-12v-8c0-6.627 5.373-12 12-12h152c6.627 0 12 5.373 12 12v8c0 6.627-5.373 12-12 12zm208 0H348c-6.627 0-12-5.373-12-12v-8c0-6.627 5.373-12 12-12h152c6.627 0 12 5.373 12 12v8c0 6.627-5.373 12-12 12zm0-96H140c-6.627 0-12-5.373-12-12v-40c0-6.627 5.373-12 12-12h360c6.627 0 12 5.373 12 12v40c0 6.627-5.373 12-12 12z"],
	"not-equal": [448, 512, [], "f53e", "M416 208c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32h-23.88l51.87-66.81c5.37-7.02 4.04-17.06-2.97-22.43L415.61 3.3c-7.02-5.38-17.06-4.04-22.44 2.97L311.09 112H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h204.56l-74.53 96H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h55.49l-51.87 66.81c-5.37 7.01-4.04 17.05 2.97 22.43L64 508.7c7.02 5.38 17.06 4.04 22.43-2.97L168.52 400H416c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32H243.05l74.53-96H416z"],
	"notes-medical": [384, 512, [], "f481", "M336 64h-80c0-35.3-28.7-64-64-64s-64 28.7-64 64H48C21.5 64 0 85.5 0 112v352c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V112c0-26.5-21.5-48-48-48zM192 40c13.3 0 24 10.7 24 24s-10.7 24-24 24-24-10.7-24-24 10.7-24 24-24zm96 304c0 4.4-3.6 8-8 8h-56v56c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8v-56h-56c-4.4 0-8-3.6-8-8v-48c0-4.4 3.6-8 8-8h56v-56c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v56h56c4.4 0 8 3.6 8 8v48zm0-192c0 4.4-3.6 8-8 8H104c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h176c4.4 0 8 3.6 8 8v16z"],
	"object-group": [512, 512, [], "f247", "M480 128V96h20c6.627 0 12-5.373 12-12V44c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v20H64V44c0-6.627-5.373-12-12-12H12C5.373 32 0 37.373 0 44v40c0 6.627 5.373 12 12 12h20v320H12c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12v-20h384v20c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12v-40c0-6.627-5.373-12-12-12h-20V128zM96 276V140c0-6.627 5.373-12 12-12h168c6.627 0 12 5.373 12 12v136c0 6.627-5.373 12-12 12H108c-6.627 0-12-5.373-12-12zm320 96c0 6.627-5.373 12-12 12H236c-6.627 0-12-5.373-12-12v-52h72c13.255 0 24-10.745 24-24v-72h84c6.627 0 12 5.373 12 12v136z"],
	"object-ungroup": [576, 512, [], "f248", "M64 320v26a6 6 0 0 1-6 6H6a6 6 0 0 1-6-6v-52a6 6 0 0 1 6-6h26V96H6a6 6 0 0 1-6-6V38a6 6 0 0 1 6-6h52a6 6 0 0 1 6 6v26h288V38a6 6 0 0 1 6-6h52a6 6 0 0 1 6 6v52a6 6 0 0 1-6 6h-26v192h26a6 6 0 0 1 6 6v52a6 6 0 0 1-6 6h-52a6 6 0 0 1-6-6v-26H64zm480-64v-32h26a6 6 0 0 0 6-6v-52a6 6 0 0 0-6-6h-52a6 6 0 0 0-6 6v26H408v72h8c13.255 0 24 10.745 24 24v64c0 13.255-10.745 24-24 24h-64c-13.255 0-24-10.745-24-24v-8H192v72h-26a6 6 0 0 0-6 6v52a6 6 0 0 0 6 6h52a6 6 0 0 0 6-6v-26h288v26a6 6 0 0 0 6 6h52a6 6 0 0 0 6-6v-52a6 6 0 0 0-6-6h-26V256z"],
	"oil-can": [640, 512, [], "f613", "M629.8 160.31L416 224l-50.49-25.24a64.07 64.07 0 0 0-28.62-6.76H280v-48h56c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16H176c-8.84 0-16 7.16-16 16v16c0 8.84 7.16 16 16 16h56v48h-56L37.72 166.86a31.9 31.9 0 0 0-5.79-.53C14.67 166.33 0 180.36 0 198.34v94.95c0 15.46 11.06 28.72 26.28 31.48L96 337.46V384c0 17.67 14.33 32 32 32h274.63c8.55 0 16.75-3.42 22.76-9.51l212.26-214.75c1.5-1.5 2.34-3.54 2.34-5.66V168c.01-5.31-5.08-9.15-10.19-7.69zM96 288.67l-48-8.73v-62.43l48 8.73v62.43zm453.33 84.66c0 23.56 19.1 42.67 42.67 42.67s42.67-19.1 42.67-42.67S592 288 592 288s-42.67 61.77-42.67 85.33z"],
	"om": [512, 512, [], "f679", "M360.6 60.94a10.43 10.43 0 0 0 14.76 0l21.57-21.56a10.43 10.43 0 0 0 0-14.76L375.35 3.06c-4.08-4.07-10.68-4.07-14.76 0l-21.57 21.56a10.43 10.43 0 0 0 0 14.76l21.58 21.56zM412.11 192c-26.69 0-51.77 10.39-70.64 29.25l-24.25 24.25c-6.78 6.77-15.78 10.5-25.38 10.5H245c10.54-22.1 14.17-48.11 7.73-75.23-10.1-42.55-46.36-76.11-89.52-83.19-36.15-5.93-70.9 5.04-96.01 28.78-7.36 6.96-6.97 18.85 1.12 24.93l26.15 19.63c5.72 4.3 13.66 4.32 19.2-.21 8.45-6.9 19.02-10.71 30.27-10.71 26.47 0 48.01 21.53 48.01 48s-21.54 48-48.01 48h-31.9c-11.96 0-19.74 12.58-14.39 23.28l16.09 32.17c2.53 5.06 7.6 8.1 13.17 8.55h33.03c35.3 0 64.01 28.7 64.01 64s-28.71 64-64.01 64c-96.02 0-122.35-54.02-145.15-92.03-4.53-7.55-14.77-3.58-14.79 5.22C-.09 416 41.13 512 159.94 512c70.59 0 128.02-57.42 128.02-128 0-23.42-6.78-45.1-17.81-64h21.69c26.69 0 51.77-10.39 70.64-29.25l24.25-24.25c6.78-6.77 15.78-10.5 25.38-10.5 19.78 0 35.88 16.09 35.88 35.88V392c0 13.23-18.77 24-32.01 24-39.4 0-66.67-24.24-81.82-42.89-4.77-5.87-14.2-2.54-14.2 5.02V416s0 64 96.02 64c48.54 0 96.02-39.47 96.02-88V291.88c0-55.08-44.8-99.88-99.89-99.88zm42.18-124.73c-85.55 65.12-169.05 2.75-172.58.05-6.02-4.62-14.44-4.38-20.14.55-5.74 4.92-7.27 13.17-3.66 19.8 1.61 2.95 40.37 72.34 118.8 72.34 79.92 0 98.78-31.36 101.75-37.66 1.02-2.12 1.53-4.47 1.53-6.83V80c0-13.22-15.14-20.69-25.7-12.73z"],
	"otter": [640, 512, [], "f700", "M608 32h-32l-13.25-13.25A63.97 63.97 0 0 0 517.49 0H497c-11.14 0-22.08 2.91-31.75 8.43L312 96h-56C149.96 96 64 181.96 64 288v1.61c0 32.75-16 62.14-39.56 84.89-18.19 17.58-28.1 43.68-23.19 71.8 6.76 38.8 42.9 65.7 82.28 65.7H192c17.67 0 32-14.33 32-32s-14.33-32-32-32H80c-8.83 0-16-7.17-16-16s7.17-16 16-16h224c8.84 0 16-7.16 16-16v-16c0-17.67-14.33-32-32-32h-64l149.49-80.5L448 416h80c8.84 0 16-7.16 16-16v-16c0-17.67-14.33-32-32-32h-28.22l-55.11-110.21L521.14 192H544c53.02 0 96-42.98 96-96V64c0-17.67-14.33-32-32-32zm-96 16c8.84 0 16 7.16 16 16s-7.16 16-16 16-16-7.16-16-16 7.16-16 16-16zm32 96h-34.96L407.2 198.84l-13.77-27.55L512 112h77.05c-6.62 18.58-24.22 32-45.05 32z"],
	"outdent": [448, 512, [], "f03b", "M100.69 363.29c10 10 27.31 2.93 27.31-11.31V160c0-14.32-17.33-21.31-27.31-11.31l-96 96a16 16 0 0 0 0 22.62zM432 416H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm3.17-128H204.83A12.82 12.82 0 0 0 192 300.83v38.34A12.82 12.82 0 0 0 204.83 352h230.34A12.82 12.82 0 0 0 448 339.17v-38.34A12.82 12.82 0 0 0 435.17 288zm0-128H204.83A12.82 12.82 0 0 0 192 172.83v38.34A12.82 12.82 0 0 0 204.83 224h230.34A12.82 12.82 0 0 0 448 211.17v-38.34A12.82 12.82 0 0 0 435.17 160zM432 32H16A16 16 0 0 0 0 48v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16z"],
	"pager": [512, 512, [], "f815", "M448 64H64a64 64 0 0 0-64 64v256a64 64 0 0 0 64 64h384a64 64 0 0 0 64-64V128a64 64 0 0 0-64-64zM160 368H80a16 16 0 0 1-16-16v-16a16 16 0 0 1 16-16h80zm128-16a16 16 0 0 1-16 16h-80v-48h80a16 16 0 0 1 16 16zm160-128a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32v-64a32 32 0 0 1 32-32h320a32 32 0 0 1 32 32z"],
	"paint-brush": [512, 512, [], "f1fc", "M167.02 309.34c-40.12 2.58-76.53 17.86-97.19 72.3-2.35 6.21-8 9.98-14.59 9.98-11.11 0-45.46-27.67-55.25-34.35C0 439.62 37.93 512 128 512c75.86 0 128-43.77 128-120.19 0-3.11-.65-6.08-.97-9.13l-88.01-73.34zM457.89 0c-15.16 0-29.37 6.71-40.21 16.45C213.27 199.05 192 203.34 192 257.09c0 13.7 3.25 26.76 8.73 38.7l63.82 53.18c7.21 1.8 14.64 3.03 22.39 3.03 62.11 0 98.11-45.47 211.16-256.46 7.38-14.35 13.9-29.85 13.9-45.99C512 20.64 486 0 457.89 0z"],
	"paint-roller": [512, 512, [], "f5aa", "M416 128V32c0-17.67-14.33-32-32-32H32C14.33 0 0 14.33 0 32v96c0 17.67 14.33 32 32 32h352c17.67 0 32-14.33 32-32zm32-64v128c0 17.67-14.33 32-32 32H256c-35.35 0-64 28.65-64 64v32c-17.67 0-32 14.33-32 32v128c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32V352c0-17.67-14.33-32-32-32v-32h160c53.02 0 96-42.98 96-96v-64c0-35.35-28.65-64-64-64z"],
	"palette": [512, 512, [], "f53f", "M204.3 5C104.9 24.4 24.8 104.3 5.2 203.4c-37 187 131.7 326.4 258.8 306.7 41.2-6.4 61.4-54.6 42.5-91.7-23.1-45.4 9.9-98.4 60.9-98.4h79.7c35.8 0 64.8-29.6 64.9-65.3C511.5 97.1 368.1-26.9 204.3 5zM96 320c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm32-128c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm128-64c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm128 64c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32z"],
	"pallet": [640, 512, [], "f482", "M144 256h352c8.8 0 16-7.2 16-16V16c0-8.8-7.2-16-16-16H384v128l-64-32-64 32V0H144c-8.8 0-16 7.2-16 16v224c0 8.8 7.2 16 16 16zm480 128c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h48v64H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h608c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16h-48v-64h48zm-336 64H128v-64h160v64zm224 0H352v-64h160v64z"],
	"paper-plane": [512, 512, [], "f1d8", "M476 3.2L12.5 270.6c-18.1 10.4-15.8 35.6 2.2 43.2L121 358.4l287.3-253.2c5.5-4.9 13.3 2.6 8.6 8.3L176 407v80.5c0 23.6 28.5 32.9 42.5 15.8L282 426l124.6 52.2c14.2 6 30.4-2.9 33-18.2l72-432C515 7.8 493.3-6.8 476 3.2z"],
	"paperclip": [448, 512, [], "f0c6", "M43.246 466.142c-58.43-60.289-57.341-157.511 1.386-217.581L254.392 34c44.316-45.332 116.351-45.336 160.671 0 43.89 44.894 43.943 117.329 0 162.276L232.214 383.128c-29.855 30.537-78.633 30.111-107.982-.998-28.275-29.97-27.368-77.473 1.452-106.953l143.743-146.835c6.182-6.314 16.312-6.422 22.626-.241l22.861 22.379c6.315 6.182 6.422 16.312.241 22.626L171.427 319.927c-4.932 5.045-5.236 13.428-.648 18.292 4.372 4.634 11.245 4.711 15.688.165l182.849-186.851c19.613-20.062 19.613-52.725-.011-72.798-19.189-19.627-49.957-19.637-69.154 0L90.39 293.295c-34.763 35.56-35.299 93.12-1.191 128.313 34.01 35.093 88.985 35.137 123.058.286l172.06-175.999c6.177-6.319 16.307-6.433 22.626-.256l22.877 22.364c6.319 6.177 6.434 16.307.256 22.626l-172.06 175.998c-59.576 60.938-155.943 60.216-214.77-.485z"],
	"parachute-box": [512, 512, [], "f4cd", "M511.9 175c-9.1-75.6-78.4-132.4-158.3-158.7C390 55.7 416 116.9 416 192h28.1L327.5 321.5c-2.5-.6-4.8-1.5-7.5-1.5h-48V192h112C384 76.8 315.1 0 256 0S128 76.8 128 192h112v128h-48c-2.7 0-5 .9-7.5 1.5L67.9 192H96c0-75.1 26-136.3 62.4-175.7C78.5 42.7 9.2 99.5.1 175c-1.1 9.1 6.8 17 16 17h8.7l136.7 151.9c-.7 2.6-1.6 5.2-1.6 8.1v128c0 17.7 14.3 32 32 32h128c17.7 0 32-14.3 32-32V352c0-2.9-.9-5.4-1.6-8.1L487.1 192h8.7c9.3 0 17.2-7.8 16.1-17z"],
	"paragraph": [448, 512, [], "f1dd", "M448 48v32a16 16 0 0 1-16 16h-48v368a16 16 0 0 1-16 16h-32a16 16 0 0 1-16-16V96h-32v368a16 16 0 0 1-16 16h-32a16 16 0 0 1-16-16V352h-32a160 160 0 0 1 0-320h240a16 16 0 0 1 16 16z"],
	"parking": [448, 512, [], "f540", "M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM240 320h-48v48c0 8.8-7.2 16-16 16h-32c-8.8 0-16-7.2-16-16V144c0-8.8 7.2-16 16-16h96c52.9 0 96 43.1 96 96s-43.1 96-96 96zm0-128h-48v64h48c17.6 0 32-14.4 32-32s-14.4-32-32-32z"],
	"passport": [448, 512, [], "f5ab", "M129.62 176h39.09c1.49-27.03 6.54-51.35 14.21-70.41-27.71 13.24-48.02 39.19-53.3 70.41zm0 32c5.29 31.22 25.59 57.17 53.3 70.41-7.68-19.06-12.72-43.38-14.21-70.41h-39.09zM224 286.69c7.69-7.45 20.77-34.42 23.43-78.69h-46.87c2.67 44.26 15.75 71.24 23.44 78.69zM200.57 176h46.87c-2.66-44.26-15.74-71.24-23.43-78.69-7.7 7.45-20.78 34.43-23.44 78.69zm64.51 102.41c27.71-13.24 48.02-39.19 53.3-70.41h-39.09c-1.49 27.03-6.53 51.35-14.21 70.41zM416 0H64C28.65 0 0 28.65 0 64v384c0 35.35 28.65 64 64 64h352c17.67 0 32-14.33 32-32V32c0-17.67-14.33-32-32-32zm-80 416H112c-8.8 0-16-7.2-16-16s7.2-16 16-16h224c8.8 0 16 7.2 16 16s-7.2 16-16 16zm-112-96c-70.69 0-128-57.31-128-128S153.31 64 224 64s128 57.31 128 128-57.31 128-128 128zm41.08-214.41c7.68 19.06 12.72 43.38 14.21 70.41h39.09c-5.28-31.22-25.59-57.17-53.3-70.41z"],
	"pastafarianism": [640, 512, [], "f67b", "M624.54 347.67c-32.7-12.52-57.36 4.25-75.37 16.45-17.06 11.53-23.25 14.42-31.41 11.36-8.12-3.09-10.83-9.38-15.89-29.38-3.33-13.15-7.44-29.32-17.95-42.65 2.24-2.91 4.43-5.79 6.38-8.57C500.47 304.45 513.71 312 532 312c33.95 0 50.87-25.78 62.06-42.83 10.59-16.14 15-21.17 21.94-21.17 13.25 0 24-10.75 24-24s-10.75-24-24-24c-33.95 0-50.87 25.78-62.06 42.83-10.6 16.14-15 21.17-21.94 21.17-17.31 0-37.48-61.43-97.26-101.91l17.25-34.5C485.43 125.5 512 97.98 512 64c0-35.35-28.65-64-64-64s-64 28.65-64 64c0 13.02 3.94 25.1 10.62 35.21l-18.15 36.3c-16.98-4.6-35.6-7.51-56.46-7.51s-39.49 2.91-56.46 7.51l-18.15-36.3C252.06 89.1 256 77.02 256 64c0-35.35-28.65-64-64-64s-64 28.65-64 64c0 33.98 26.56 61.5 60.02 63.6l17.25 34.5C145.68 202.44 125.15 264 108 264c-6.94 0-11.34-5.03-21.94-21.17C74.88 225.78 57.96 200 24 200c-13.25 0-24 10.75-24 24s10.75 24 24 24c6.94 0 11.34 5.03 21.94 21.17C57.13 286.22 74.05 312 108 312c18.29 0 31.53-7.55 41.7-17.11 1.95 2.79 4.14 5.66 6.38 8.57-10.51 13.33-14.62 29.5-17.95 42.65-5.06 20-7.77 26.28-15.89 29.38-8.11 3.06-14.33.17-31.41-11.36-18.03-12.2-42.72-28.92-75.37-16.45-12.39 4.72-18.59 18.58-13.87 30.97 4.72 12.41 18.61 18.61 30.97 13.88 8.16-3.09 14.34-.19 31.39 11.36 13.55 9.16 30.83 20.86 52.42 20.84 7.17 0 14.83-1.28 22.97-4.39 32.66-12.44 39.98-41.33 45.33-62.44 2.21-8.72 3.99-14.49 5.95-18.87 16.62 13.61 36.95 25.88 61.64 34.17-9.96 37-32.18 90.8-60.26 90.8-13.25 0-24 10.75-24 24s10.75 24 24 24c66.74 0 97.05-88.63 107.42-129.14 6.69.6 13.42 1.14 20.58 1.14s13.89-.54 20.58-1.14C350.95 423.37 381.26 512 448 512c13.25 0 24-10.75 24-24s-10.75-24-24-24c-27.94 0-50.21-53.81-60.22-90.81 24.69-8.29 45-20.56 61.62-34.16 1.96 4.38 3.74 10.15 5.95 18.87 5.34 21.11 12.67 50 45.33 62.44 8.14 3.11 15.8 4.39 22.97 4.39 21.59 0 38.87-11.69 52.42-20.84 17.05-11.55 23.28-14.45 31.39-11.36 12.39 4.75 26.27-1.47 30.97-13.88 4.71-12.4-1.49-26.26-13.89-30.98zM448 48c8.82 0 16 7.18 16 16s-7.18 16-16 16-16-7.18-16-16 7.18-16 16-16zm-256 0c8.82 0 16 7.18 16 16s-7.18 16-16 16-16-7.18-16-16 7.18-16 16-16z"],
	"paste": [448, 512, [], "f0ea", "M128 184c0-30.879 25.122-56 56-56h136V56c0-13.255-10.745-24-24-24h-80.61C204.306 12.89 183.637 0 160 0s-44.306 12.89-55.39 32H24C10.745 32 0 42.745 0 56v336c0 13.255 10.745 24 24 24h104V184zm32-144c13.255 0 24 10.745 24 24s-10.745 24-24 24-24-10.745-24-24 10.745-24 24-24zm184 248h104v200c0 13.255-10.745 24-24 24H184c-13.255 0-24-10.745-24-24V184c0-13.255 10.745-24 24-24h136v104c0 13.2 10.8 24 24 24zm104-38.059V256h-96v-96h6.059a24 24 0 0 1 16.97 7.029l65.941 65.941a24.002 24.002 0 0 1 7.03 16.971z"],
	"pause": [448, 512, [], "f04c", "M144 479H48c-26.5 0-48-21.5-48-48V79c0-26.5 21.5-48 48-48h96c26.5 0 48 21.5 48 48v352c0 26.5-21.5 48-48 48zm304-48V79c0-26.5-21.5-48-48-48h-96c-26.5 0-48 21.5-48 48v352c0 26.5 21.5 48 48 48h96c26.5 0 48-21.5 48-48z"],
	"pause-circle": [512, 512, [], "f28b", "M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm-16 328c0 8.8-7.2 16-16 16h-48c-8.8 0-16-7.2-16-16V176c0-8.8 7.2-16 16-16h48c8.8 0 16 7.2 16 16v160zm112 0c0 8.8-7.2 16-16 16h-48c-8.8 0-16-7.2-16-16V176c0-8.8 7.2-16 16-16h48c8.8 0 16 7.2 16 16v160z"],
	"paw": [512, 512, [], "f1b0", "M256 224c-79.41 0-192 122.76-192 200.25 0 34.9 26.81 55.75 71.74 55.75 48.84 0 81.09-25.08 120.26-25.08 39.51 0 71.85 25.08 120.26 25.08 44.93 0 71.74-20.85 71.74-55.75C448 346.76 335.41 224 256 224zm-147.28-12.61c-10.4-34.65-42.44-57.09-71.56-50.13-29.12 6.96-44.29 40.69-33.89 75.34 10.4 34.65 42.44 57.09 71.56 50.13 29.12-6.96 44.29-40.69 33.89-75.34zm84.72-20.78c30.94-8.14 46.42-49.94 34.58-93.36s-46.52-72.01-77.46-63.87-46.42 49.94-34.58 93.36c11.84 43.42 46.53 72.02 77.46 63.87zm281.39-29.34c-29.12-6.96-61.15 15.48-71.56 50.13-10.4 34.65 4.77 68.38 33.89 75.34 29.12 6.96 61.15-15.48 71.56-50.13 10.4-34.65-4.77-68.38-33.89-75.34zm-156.27 29.34c30.94 8.14 65.62-20.45 77.46-63.87 11.84-43.42-3.64-85.21-34.58-93.36s-65.62 20.45-77.46 63.87c-11.84 43.42 3.64 85.22 34.58 93.36z"],
	"peace": [496, 512, [], "f67c", "M248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm184 248c0 31.93-8.2 61.97-22.57 88.17L280 240.63V74.97c86.23 15.21 152 90.5 152 181.03zM216 437.03c-33.86-5.97-64.49-21.2-89.29-43.02L216 322.57v114.46zm64-114.46L369.29 394c-24.8 21.82-55.43 37.05-89.29 43.02V322.57zm-64-247.6v165.66L86.57 344.17C72.2 317.97 64 287.93 64 256c0-90.53 65.77-165.82 152-181.03z"],
	"pen": [512, 512, [], "f304", "M290.74 93.24l128.02 128.02-277.99 277.99-114.14 12.6C11.35 513.54-1.56 500.62.14 485.34l12.7-114.22 277.9-277.88zm207.2-19.06l-60.11-60.11c-18.75-18.75-49.16-18.75-67.91 0l-56.55 56.55 128.02 128.02 56.55-56.55c18.75-18.76 18.75-49.16 0-67.91z"],
	"pen-alt": [512, 512, [], "f305", "M497.94 74.17l-60.11-60.11c-18.75-18.75-49.16-18.75-67.91 0l-56.55 56.55 128.02 128.02 56.55-56.55c18.75-18.75 18.75-49.15 0-67.91zm-246.8-20.53c-15.62-15.62-40.94-15.62-56.56 0L75.8 172.43c-6.25 6.25-6.25 16.38 0 22.62l22.63 22.63c6.25 6.25 16.38 6.25 22.63 0l101.82-101.82 22.63 22.62L93.95 290.03A327.038 327.038 0 0 0 .17 485.11l-.03.23c-1.7 15.28 11.21 28.2 26.49 26.51a327.02 327.02 0 0 0 195.34-93.8l196.79-196.79-82.77-82.77-84.85-84.85z"],
	"pen-fancy": [512, 512, [], "f5ac", "M79.18 282.94a32.005 32.005 0 0 0-20.24 20.24L0 480l4.69 4.69 92.89-92.89c-.66-2.56-1.57-5.03-1.57-7.8 0-17.67 14.33-32 32-32s32 14.33 32 32-14.33 32-32 32c-2.77 0-5.24-.91-7.8-1.57l-92.89 92.89L32 512l176.82-58.94a31.983 31.983 0 0 0 20.24-20.24l33.07-84.07-98.88-98.88-84.07 33.07zM369.25 28.32L186.14 227.81l97.85 97.85 199.49-183.11C568.4 67.48 443.73-55.94 369.25 28.32z"],
	"pen-nib": [512, 512, [], "f5ad", "M136.6 138.79a64.003 64.003 0 0 0-43.31 41.35L0 460l14.69 14.69L164.8 324.58c-2.99-6.26-4.8-13.18-4.8-20.58 0-26.51 21.49-48 48-48s48 21.49 48 48-21.49 48-48 48c-7.4 0-14.32-1.81-20.58-4.8L37.31 497.31 52 512l279.86-93.29a64.003 64.003 0 0 0 41.35-43.31L416 224 288 96l-151.4 42.79zm361.34-64.62l-60.11-60.11c-18.75-18.75-49.16-18.75-67.91 0l-56.55 56.55 128.02 128.02 56.55-56.55c18.75-18.75 18.75-49.15 0-67.91z"],
	"pen-square": [448, 512, [], "f14b", "M400 480H48c-26.5 0-48-21.5-48-48V80c0-26.5 21.5-48 48-48h352c26.5 0 48 21.5 48 48v352c0 26.5-21.5 48-48 48zM238.1 177.9L102.4 313.6l-6.3 57.1c-.8 7.6 5.6 14.1 13.3 13.3l57.1-6.3L302.2 242c2.3-2.3 2.3-6.1 0-8.5L246.7 178c-2.5-2.4-6.3-2.4-8.6-.1zM345 165.1L314.9 135c-9.4-9.4-24.6-9.4-33.9 0l-23.1 23.1c-2.3 2.3-2.3 6.1 0 8.5l55.5 55.5c2.3 2.3 6.1 2.3 8.5 0L345 199c9.3-9.3 9.3-24.5 0-33.9z"],
	"pencil-alt": [512, 512, [], "f303", "M497.9 142.1l-46.1 46.1c-4.7 4.7-12.3 4.7-17 0l-111-111c-4.7-4.7-4.7-12.3 0-17l46.1-46.1c18.7-18.7 49.1-18.7 67.9 0l60.1 60.1c18.8 18.7 18.8 49.1 0 67.9zM284.2 99.8L21.6 362.4.4 483.9c-2.9 16.4 11.4 30.6 27.8 27.8l121.5-21.3 262.6-262.6c4.7-4.7 4.7-12.3 0-17l-111-111c-4.8-4.7-12.4-4.7-17.1 0zM124.1 339.9c-5.5-5.5-5.5-14.3 0-19.8l154-154c5.5-5.5 14.3-5.5 19.8 0s5.5 14.3 0 19.8l-154 154c-5.5 5.5-14.3 5.5-19.8 0zM88 424h48v36.3l-64.5 11.3-31.1-31.1L51.7 376H88v48z"],
	"pencil-ruler": [512, 512, [], "f5ae", "M109.46 244.04l134.58-134.56-44.12-44.12-61.68 61.68a7.919 7.919 0 0 1-11.21 0l-11.21-11.21c-3.1-3.1-3.1-8.12 0-11.21l61.68-61.68-33.64-33.65C131.47-3.1 111.39-3.1 99 9.29L9.29 99c-12.38 12.39-12.39 32.47 0 44.86l100.17 100.18zm388.47-116.8c18.76-18.76 18.75-49.17 0-67.93l-45.25-45.25c-18.76-18.76-49.18-18.76-67.95 0l-46.02 46.01 113.2 113.2 46.02-46.03zM316.08 82.71l-297 296.96L.32 487.11c-2.53 14.49 10.09 27.11 24.59 24.56l107.45-18.84L429.28 195.9 316.08 82.71zm186.63 285.43l-33.64-33.64-61.68 61.68c-3.1 3.1-8.12 3.1-11.21 0l-11.21-11.21c-3.09-3.1-3.09-8.12 0-11.21l61.68-61.68-44.14-44.14L267.93 402.5l100.21 100.2c12.39 12.39 32.47 12.39 44.86 0l89.71-89.7c12.39-12.39 12.39-32.47 0-44.86z"],
	"people-arrows": [576, 512, [], "e068", "M96,128A64,64,0,1,0,32,64,64,64,0,0,0,96,128Zm0,176.08a44.11,44.11,0,0,1,13.64-32L181.77,204c1.65-1.55,3.77-2.31,5.61-3.57A63.91,63.91,0,0,0,128,160H64A64,64,0,0,0,0,224v96a32,32,0,0,0,32,32V480a32,32,0,0,0,32,32h64a32,32,0,0,0,32-32V383.61l-50.36-47.53A44.08,44.08,0,0,1,96,304.08ZM480,128a64,64,0,1,0-64-64A64,64,0,0,0,480,128Zm32,32H448a63.91,63.91,0,0,0-59.38,40.42c1.84,1.27,4,2,5.62,3.59l72.12,68.06a44.37,44.37,0,0,1,0,64L416,383.62V480a32,32,0,0,0,32,32h64a32,32,0,0,0,32-32V352a32,32,0,0,0,32-32V224A64,64,0,0,0,512,160ZM444.4,295.34l-72.12-68.06A12,12,0,0,0,352,236v36H224V236a12,12,0,0,0-20.28-8.73L131.6,295.34a12.4,12.4,0,0,0,0,17.47l72.12,68.07A12,12,0,0,0,224,372.14V336H352v36.14a12,12,0,0,0,20.28,8.74l72.12-68.07A12.4,12.4,0,0,0,444.4,295.34Z"],
	"people-carry": [640, 512, [], "f4ce", "M128 96c26.5 0 48-21.5 48-48S154.5 0 128 0 80 21.5 80 48s21.5 48 48 48zm384 0c26.5 0 48-21.5 48-48S538.5 0 512 0s-48 21.5-48 48 21.5 48 48 48zm125.7 372.1l-44-110-41.1 46.4-2 18.2 27.7 69.2c5 12.5 17 20.1 29.7 20.1 4 0 8-.7 11.9-2.3 16.4-6.6 24.4-25.2 17.8-41.6zm-34.2-209.8L585 178.1c-4.6-20-18.6-36.8-37.5-44.9-18.5-8-39-6.7-56.1 3.3-22.7 13.4-39.7 34.5-48.1 59.4L432 229.8 416 240v-96c0-8.8-7.2-16-16-16H240c-8.8 0-16 7.2-16 16v96l-16.1-10.2-11.3-33.9c-8.3-25-25.4-46-48.1-59.4-17.2-10-37.6-11.3-56.1-3.3-18.9 8.1-32.9 24.9-37.5 44.9l-18.4 80.2c-4.6 20 .7 41.2 14.4 56.7l67.2 75.9 10.1 92.6C130 499.8 143.8 512 160 512c1.2 0 2.3-.1 3.5-.2 17.6-1.9 30.2-17.7 28.3-35.3l-10.1-92.8c-1.5-13-6.9-25.1-15.6-35l-43.3-49 17.6-70.3 6.8 20.4c4.1 12.5 11.9 23.4 24.5 32.6l51.1 32.5c4.6 2.9 12.1 4.6 17.2 5h160c5.1-.4 12.6-2.1 17.2-5l51.1-32.5c12.6-9.2 20.4-20 24.5-32.6l6.8-20.4 17.6 70.3-43.3 49c-8.7 9.9-14.1 22-15.6 35l-10.1 92.8c-1.9 17.6 10.8 33.4 28.3 35.3 1.2.1 2.3.2 3.5.2 16.1 0 30-12.1 31.8-28.5l10.1-92.6 67.2-75.9c13.6-15.5 19-36.7 14.4-56.7zM46.3 358.1l-44 110c-6.6 16.4 1.4 35 17.8 41.6 16.8 6.6 35.1-1.7 41.6-17.8l27.7-69.2-2-18.2-41.1-46.4z"],
	"pepper-hot": [512, 512, [], "f816", "M330.67 263.12V173.4l-52.75-24.22C219.44 218.76 197.58 400 56 400a56 56 0 0 0 0 112c212.64 0 370.65-122.87 419.18-210.34l-37.05-38.54zm131.09-128.37C493.92 74.91 477.18 26.48 458.62 3a8 8 0 0 0-11.93-.59l-22.9 23a8.06 8.06 0 0 0-.89 10.23c6.86 10.36 17.05 35.1-1.4 72.32A142.85 142.85 0 0 0 364.34 96c-28 0-54 8.54-76.34 22.59l74.67 34.29v78.24h89.09L506.44 288c3.26-12.62 5.56-25.63 5.56-39.31a154 154 0 0 0-50.24-113.94z"],
	"percent": [448, 512, [], "f295", "M112 224c61.9 0 112-50.1 112-112S173.9 0 112 0 0 50.1 0 112s50.1 112 112 112zm0-160c26.5 0 48 21.5 48 48s-21.5 48-48 48-48-21.5-48-48 21.5-48 48-48zm224 224c-61.9 0-112 50.1-112 112s50.1 112 112 112 112-50.1 112-112-50.1-112-112-112zm0 160c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zM392.3.2l31.6-.1c19.4-.1 30.9 21.8 19.7 37.8L77.4 501.6a23.95 23.95 0 0 1-19.6 10.2l-33.4.1c-19.5 0-30.9-21.9-19.7-37.8l368-463.7C377.2 4 384.5.2 392.3.2z"],
	"percentage": [384, 512, [], "f541", "M109.25 173.25c24.99-24.99 24.99-65.52 0-90.51-24.99-24.99-65.52-24.99-90.51 0-24.99 24.99-24.99 65.52 0 90.51 25 25 65.52 25 90.51 0zm256 165.49c-24.99-24.99-65.52-24.99-90.51 0-24.99 24.99-24.99 65.52 0 90.51 24.99 24.99 65.52 24.99 90.51 0 25-24.99 25-65.51 0-90.51zm-1.94-231.43l-22.62-22.62c-12.5-12.5-32.76-12.5-45.25 0L20.69 359.44c-12.5 12.5-12.5 32.76 0 45.25l22.62 22.62c12.5 12.5 32.76 12.5 45.25 0l274.75-274.75c12.5-12.49 12.5-32.75 0-45.25z"],
	"person-booth": [576, 512, [], "f756", "M192 496c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V320h-64v176zm32-272h-50.9l-45.2-45.3C115.8 166.6 99.7 160 82.7 160H64c-17.1 0-33.2 6.7-45.3 18.8C6.7 190.9 0 207 0 224.1L.2 320 0 480c0 17.7 14.3 32 31.9 32 17.6 0 32-14.3 32-32l.1-100.7c.9.5 1.6 1.3 2.5 1.7l29.1 43v56c0 17.7 14.3 32 32 32s32-14.3 32-32v-56.5c0-9.9-2.3-19.8-6.7-28.6l-41.2-61.3V253l20.9 20.9c9.1 9.1 21.1 14.1 33.9 14.1H224c17.7 0 32-14.3 32-32s-14.3-32-32-32zM64 128c26.5 0 48-21.5 48-48S90.5 32 64 32 16 53.5 16 80s21.5 48 48 48zm224-96l31.5 223.1-30.9 154.6c-4.3 21.6 13 38.3 31.4 38.3 15.2 0 28-9.1 32.3-30.4.9 16.9 14.6 30.4 31.7 30.4 17.7 0 32-14.3 32-32 0 17.7 14.3 32 32 32s32-14.3 32-32V0H288v32zm-96 0v160h64V0h-32c-17.7 0-32 14.3-32 32zM544 0h-32v496c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V32c0-17.7-14.3-32-32-32z"],
	"phone": [512, 512, [], "f095", "M493.4 24.6l-104-24c-11.3-2.6-22.9 3.3-27.5 13.9l-48 112c-4.2 9.8-1.4 21.3 6.9 28l60.6 49.6c-36 76.7-98.9 140.5-177.2 177.2l-49.6-60.6c-6.8-8.3-18.2-11.1-28-6.9l-112 48C3.9 366.5-2 378.1.6 389.4l24 104C27.1 504.2 36.7 512 48 512c256.1 0 464-207.5 464-464 0-11.2-7.7-20.9-18.6-23.4z"],
	"phone-alt": [512, 512, [], "f879", "M497.39 361.8l-112-48a24 24 0 0 0-28 6.9l-49.6 60.6A370.66 370.66 0 0 1 130.6 204.11l60.6-49.6a23.94 23.94 0 0 0 6.9-28l-48-112A24.16 24.16 0 0 0 122.6.61l-104 24A24 24 0 0 0 0 48c0 256.5 207.9 464 464 464a24 24 0 0 0 23.4-18.6l24-104a24.29 24.29 0 0 0-14.01-27.6z"],
	"phone-slash": [640, 512, [], "f3dd", "M268.2 381.4l-49.6-60.6c-6.8-8.3-18.2-11.1-28-6.9l-112 48c-10.7 4.6-16.5 16.1-13.9 27.5l24 104c2.5 10.8 12.1 18.6 23.4 18.6 100.7 0 193.7-32.4 269.7-86.9l-80-61.8c-10.9 6.5-22.1 12.7-33.6 18.1zm365.6 76.7L475.1 335.5C537.9 256.4 576 156.9 576 48c0-11.2-7.7-20.9-18.6-23.4l-104-24c-11.3-2.6-22.9 3.3-27.5 13.9l-48 112c-4.2 9.8-1.4 21.3 6.9 28l60.6 49.6c-12.2 26.1-27.9 50.3-46 72.8L45.5 3.4C38.5-2 28.5-.8 23 6.2L3.4 31.4c-5.4 7-4.2 17 2.8 22.4l588.4 454.7c7 5.4 17 4.2 22.5-2.8l19.6-25.3c5.4-6.8 4.1-16.9-2.9-22.3z"],
	"phone-square": [448, 512, [], "f098", "M400 32H48C21.49 32 0 53.49 0 80v352c0 26.51 21.49 48 48 48h352c26.51 0 48-21.49 48-48V80c0-26.51-21.49-48-48-48zM94 416c-7.033 0-13.057-4.873-14.616-11.627l-14.998-65a15 15 0 0 1 8.707-17.16l69.998-29.999a15 15 0 0 1 17.518 4.289l30.997 37.885c48.944-22.963 88.297-62.858 110.781-110.78l-37.886-30.997a15.001 15.001 0 0 1-4.289-17.518l30-69.998a15 15 0 0 1 17.16-8.707l65 14.998A14.997 14.997 0 0 1 384 126c0 160.292-129.945 290-290 290z"],
	"phone-square-alt": [448, 512, [], "f87b", "M400 32H48A48 48 0 0 0 0 80v352a48 48 0 0 0 48 48h352a48 48 0 0 0 48-48V80a48 48 0 0 0-48-48zm-16.39 307.37l-15 65A15 15 0 0 1 354 416C194 416 64 286.29 64 126a15.7 15.7 0 0 1 11.63-14.61l65-15A18.23 18.23 0 0 1 144 96a16.27 16.27 0 0 1 13.79 9.09l30 70A17.9 17.9 0 0 1 189 181a17 17 0 0 1-5.5 11.61l-37.89 31a231.91 231.91 0 0 0 110.78 110.78l31-37.89A17 17 0 0 1 299 291a17.85 17.85 0 0 1 5.91 1.21l70 30A16.25 16.25 0 0 1 384 336a17.41 17.41 0 0 1-.39 3.37z"],
	"phone-volume": [384, 512, [], "f2a0", "M97.333 506.966c-129.874-129.874-129.681-340.252 0-469.933 5.698-5.698 14.527-6.632 21.263-2.422l64.817 40.513a17.187 17.187 0 0 1 6.849 20.958l-32.408 81.021a17.188 17.188 0 0 1-17.669 10.719l-55.81-5.58c-21.051 58.261-20.612 122.471 0 179.515l55.811-5.581a17.188 17.188 0 0 1 17.669 10.719l32.408 81.022a17.188 17.188 0 0 1-6.849 20.958l-64.817 40.513a17.19 17.19 0 0 1-21.264-2.422zM247.126 95.473c11.832 20.047 11.832 45.008 0 65.055-3.95 6.693-13.108 7.959-18.718 2.581l-5.975-5.726c-3.911-3.748-4.793-9.622-2.261-14.41a32.063 32.063 0 0 0 0-29.945c-2.533-4.788-1.65-10.662 2.261-14.41l5.975-5.726c5.61-5.378 14.768-4.112 18.718 2.581zm91.787-91.187c60.14 71.604 60.092 175.882 0 247.428-4.474 5.327-12.53 5.746-17.552.933l-5.798-5.557c-4.56-4.371-4.977-11.529-.93-16.379 49.687-59.538 49.646-145.933 0-205.422-4.047-4.85-3.631-12.008.93-16.379l5.798-5.557c5.022-4.813 13.078-4.394 17.552.933zm-45.972 44.941c36.05 46.322 36.108 111.149 0 157.546-4.39 5.641-12.697 6.251-17.856 1.304l-5.818-5.579c-4.4-4.219-4.998-11.095-1.285-15.931 26.536-34.564 26.534-82.572 0-117.134-3.713-4.836-3.115-11.711 1.285-15.931l5.818-5.579c5.159-4.947 13.466-4.337 17.856 1.304z"],
	"photo-video": [640, 512, [], "f87c", "M608 0H160a32 32 0 0 0-32 32v96h160V64h192v320h128a32 32 0 0 0 32-32V32a32 32 0 0 0-32-32zM232 103a9 9 0 0 1-9 9h-30a9 9 0 0 1-9-9V73a9 9 0 0 1 9-9h30a9 9 0 0 1 9 9zm352 208a9 9 0 0 1-9 9h-30a9 9 0 0 1-9-9v-30a9 9 0 0 1 9-9h30a9 9 0 0 1 9 9zm0-104a9 9 0 0 1-9 9h-30a9 9 0 0 1-9-9v-30a9 9 0 0 1 9-9h30a9 9 0 0 1 9 9zm0-104a9 9 0 0 1-9 9h-30a9 9 0 0 1-9-9V73a9 9 0 0 1 9-9h30a9 9 0 0 1 9 9zm-168 57H32a32 32 0 0 0-32 32v288a32 32 0 0 0 32 32h384a32 32 0 0 0 32-32V192a32 32 0 0 0-32-32zM96 224a32 32 0 1 1-32 32 32 32 0 0 1 32-32zm288 224H64v-32l64-64 32 32 128-128 96 96z"],
	"piggy-bank": [576, 512, [], "f4d3", "M560 224h-29.5c-8.8-20-21.6-37.7-37.4-52.5L512 96h-32c-29.4 0-55.4 13.5-73 34.3-7.6-1.1-15.1-2.3-23-2.3H256c-77.4 0-141.9 55-156.8 128H56c-14.8 0-26.5-13.5-23.5-28.8C34.7 215.8 45.4 208 57 208h1c3.3 0 6-2.7 6-6v-20c0-3.3-2.7-6-6-6-28.5 0-53.9 20.4-57.5 48.6C-3.9 258.8 22.7 288 56 288h40c0 52.2 25.4 98.1 64 127.3V496c0 8.8 7.2 16 16 16h64c8.8 0 16-7.2 16-16v-48h128v48c0 8.8 7.2 16 16 16h64c8.8 0 16-7.2 16-16v-80.7c11.8-8.9 22.3-19.4 31.3-31.3H560c8.8 0 16-7.2 16-16V240c0-8.8-7.2-16-16-16zm-128 64c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zM256 96h128c5.4 0 10.7.4 15.9.8 0-.3.1-.5.1-.8 0-53-43-96-96-96s-96 43-96 96c0 2.1.5 4.1.6 6.2 15.2-3.9 31-6.2 47.4-6.2z"],
	"pills": [576, 512, [], "f484", "M112 32C50.1 32 0 82.1 0 144v224c0 61.9 50.1 112 112 112s112-50.1 112-112V144c0-61.9-50.1-112-112-112zm48 224H64V144c0-26.5 21.5-48 48-48s48 21.5 48 48v112zm139.7-29.7c-3.5-3.5-9.4-3.1-12.3.8-45.3 62.5-40.4 150.1 15.9 206.4 56.3 56.3 143.9 61.2 206.4 15.9 4-2.9 4.3-8.8.8-12.3L299.7 226.3zm229.8-19c-56.3-56.3-143.9-61.2-206.4-15.9-4 2.9-4.3 8.8-.8 12.3l210.8 210.8c3.5 3.5 9.4 3.1 12.3-.8 45.3-62.6 40.5-150.1-15.9-206.4z"],
	"pizza-slice": [512, 512, [], "f818", "M158.87.15c-16.16-1.52-31.2 8.42-35.33 24.12l-14.81 56.27c187.62 5.49 314.54 130.61 322.48 317l56.94-15.78c15.72-4.36 25.49-19.68 23.62-35.9C490.89 165.08 340.78 17.32 158.87.15zm-58.47 112L.55 491.64a16.21 16.21 0 0 0 20 19.75l379-105.1c-4.27-174.89-123.08-292.14-299.15-294.1zM128 416a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm48-152a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm104 104a32 32 0 1 1 32-32 32 32 0 0 1-32 32z"],
	"place-of-worship": [640, 512, [], "f67f", "M620.61 366.55L512 320v192h112c8.84 0 16-7.16 16-16V395.96a32 32 0 0 0-19.39-29.41zM0 395.96V496c0 8.84 7.16 16 16 16h112V320L19.39 366.55A32 32 0 0 0 0 395.96zm464.46-149.28L416 217.6V102.63c0-8.49-3.37-16.62-9.38-22.63L331.31 4.69c-6.25-6.25-16.38-6.25-22.62 0L233.38 80c-6 6-9.38 14.14-9.38 22.63V217.6l-48.46 29.08A31.997 31.997 0 0 0 160 274.12V512h96v-96c0-35.35 28.66-64 64-64s64 28.65 64 64v96h96V274.12c0-11.24-5.9-21.66-15.54-27.44z"],
	"plane": [576, 512, [], "f072", "M480 192H365.71L260.61 8.06A16.014 16.014 0 0 0 246.71 0h-65.5c-10.63 0-18.3 10.17-15.38 20.39L214.86 192H112l-43.2-57.6c-3.02-4.03-7.77-6.4-12.8-6.4H16.01C5.6 128-2.04 137.78.49 147.88L32 256 .49 364.12C-2.04 374.22 5.6 384 16.01 384H56c5.04 0 9.78-2.37 12.8-6.4L112 320h102.86l-49.03 171.6c-2.92 10.22 4.75 20.4 15.38 20.4h65.5c5.74 0 11.04-3.08 13.89-8.06L365.71 320H480c35.35 0 96-28.65 96-64s-60.65-64-96-64z"],
	"plane-arrival": [640, 512, [], "f5af", "M624 448H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h608c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zM44.81 205.66l88.74 80a62.607 62.607 0 0 0 25.47 13.93l287.6 78.35c26.48 7.21 54.56 8.72 81 1.36 29.67-8.27 43.44-21.21 47.25-35.71 3.83-14.5-1.73-32.71-23.37-54.96-19.28-19.82-44.35-32.79-70.83-40l-97.51-26.56L282.8 30.22c-1.51-5.81-5.95-10.35-11.66-11.91L206.05.58c-10.56-2.88-20.9 5.32-20.71 16.44l47.92 164.21-102.2-27.84-27.59-67.88c-1.93-4.89-6.01-8.57-11.02-9.93L52.72 64.75c-10.34-2.82-20.53 5-20.72 15.88l.23 101.78c.19 8.91 6.03 17.34 12.58 23.25z"],
	"plane-departure": [640, 512, [], "f5b0", "M624 448H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h608c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zM80.55 341.27c6.28 6.84 15.1 10.72 24.33 10.71l130.54-.18a65.62 65.62 0 0 0 29.64-7.12l290.96-147.65c26.74-13.57 50.71-32.94 67.02-58.31 18.31-28.48 20.3-49.09 13.07-63.65-7.21-14.57-24.74-25.27-58.25-27.45-29.85-1.94-59.54 5.92-86.28 19.48l-98.51 49.99-218.7-82.06a17.799 17.799 0 0 0-18-1.11L90.62 67.29c-10.67 5.41-13.25 19.65-5.17 28.53l156.22 98.1-103.21 52.38-72.35-36.47a17.804 17.804 0 0 0-16.07.02L9.91 230.22c-10.44 5.3-13.19 19.12-5.57 28.08l76.21 82.97z"],
	"plane-slash": [640, 512, [], "e069", "M32.48,147.88,64,256,32.48,364.13A16,16,0,0,0,48,384H88a16,16,0,0,0,12.8-6.41L144,320H246.85l-49,171.59A16,16,0,0,0,213.2,512h65.5a16,16,0,0,0,13.89-8.06l66.6-116.54L34.35,136.34A15.47,15.47,0,0,0,32.48,147.88ZM633.82,458.09,455.14,320H512c35.34,0,96-28.66,96-64s-60.66-64-96-64H397.7L292.61,8.06C290.06,3.61,283.84,0,278.71,0H213.2a16,16,0,0,0-15.38,20.39l36.94,129.29L45.46,3.38A16,16,0,0,0,23,6.19L3.37,31.45A16,16,0,0,0,6.18,53.91L594.54,508.63A16,16,0,0,0,617,505.81l19.64-25.26A16,16,0,0,0,633.82,458.09Z"],
	"play": [448, 512, [], "f04b", "M424.4 214.7L72.4 6.6C43.8-10.3 0 6.1 0 47.9V464c0 37.5 40.7 60.1 72.4 41.3l352-208c31.4-18.5 31.5-64.1 0-82.6z"],
	"play-circle": [512, 512, [], "f144", "M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm115.7 272l-176 101c-15.8 8.8-35.7-2.5-35.7-21V152c0-18.4 19.8-29.8 35.7-21l176 107c16.4 9.2 16.4 32.9 0 42z"],
	"plug": [384, 512, [], "f1e6", "M320,32a32,32,0,0,0-64,0v96h64Zm48,128H16A16,16,0,0,0,0,176v32a16,16,0,0,0,16,16H32v32A160.07,160.07,0,0,0,160,412.8V512h64V412.8A160.07,160.07,0,0,0,352,256V224h16a16,16,0,0,0,16-16V176A16,16,0,0,0,368,160ZM128,32a32,32,0,0,0-64,0v96h64Z"],
	"plus": [448, 512, [], "f067", "M416 208H272V64c0-17.67-14.33-32-32-32h-32c-17.67 0-32 14.33-32 32v144H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h144v144c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32V304h144c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z"],
	"plus-circle": [512, 512, [], "f055", "M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm144 276c0 6.6-5.4 12-12 12h-92v92c0 6.6-5.4 12-12 12h-56c-6.6 0-12-5.4-12-12v-92h-92c-6.6 0-12-5.4-12-12v-56c0-6.6 5.4-12 12-12h92v-92c0-6.6 5.4-12 12-12h56c6.6 0 12 5.4 12 12v92h92c6.6 0 12 5.4 12 12v56z"],
	"plus-square": [448, 512, [], "f0fe", "M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-32 252c0 6.6-5.4 12-12 12h-92v92c0 6.6-5.4 12-12 12h-56c-6.6 0-12-5.4-12-12v-92H92c-6.6 0-12-5.4-12-12v-56c0-6.6 5.4-12 12-12h92v-92c0-6.6 5.4-12 12-12h56c6.6 0 12 5.4 12 12v92h92c6.6 0 12 5.4 12 12v56z"],
	"podcast": [448, 512, [], "f2ce", "M267.429 488.563C262.286 507.573 242.858 512 224 512c-18.857 0-38.286-4.427-43.428-23.437C172.927 460.134 160 388.898 160 355.75c0-35.156 31.142-43.75 64-43.75s64 8.594 64 43.75c0 32.949-12.871 104.179-20.571 132.813zM156.867 288.554c-18.693-18.308-29.958-44.173-28.784-72.599 2.054-49.724 42.395-89.956 92.124-91.881C274.862 121.958 320 165.807 320 220c0 26.827-11.064 51.116-28.866 68.552-2.675 2.62-2.401 6.986.628 9.187 9.312 6.765 16.46 15.343 21.234 25.363 1.741 3.654 6.497 4.66 9.449 1.891 28.826-27.043 46.553-65.783 45.511-108.565-1.855-76.206-63.595-138.208-139.793-140.369C146.869 73.753 80 139.215 80 220c0 41.361 17.532 78.7 45.55 104.989 2.953 2.771 7.711 1.77 9.453-1.887 4.774-10.021 11.923-18.598 21.235-25.363 3.029-2.2 3.304-6.566.629-9.185zM224 0C100.204 0 0 100.185 0 224c0 89.992 52.602 165.647 125.739 201.408 4.333 2.118 9.267-1.544 8.535-6.31-2.382-15.512-4.342-30.946-5.406-44.339-.146-1.836-1.149-3.486-2.678-4.512-47.4-31.806-78.564-86.016-78.187-147.347.592-96.237 79.29-174.648 175.529-174.899C320.793 47.747 400 126.797 400 224c0 61.932-32.158 116.49-80.65 147.867-.999 14.037-3.069 30.588-5.624 47.23-.732 4.767 4.203 8.429 8.535 6.31C395.227 389.727 448 314.187 448 224 448 100.205 347.815 0 224 0zm0 160c-35.346 0-64 28.654-64 64s28.654 64 64 64 64-28.654 64-64-28.654-64-64-64z"],
	"poll": [448, 512, [], "f681", "M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM160 368c0 8.84-7.16 16-16 16h-32c-8.84 0-16-7.16-16-16V240c0-8.84 7.16-16 16-16h32c8.84 0 16 7.16 16 16v128zm96 0c0 8.84-7.16 16-16 16h-32c-8.84 0-16-7.16-16-16V144c0-8.84 7.16-16 16-16h32c8.84 0 16 7.16 16 16v224zm96 0c0 8.84-7.16 16-16 16h-32c-8.84 0-16-7.16-16-16v-64c0-8.84 7.16-16 16-16h32c8.84 0 16 7.16 16 16v64z"],
	"poll-h": [448, 512, [], "f682", "M448 432V80c0-26.5-21.5-48-48-48H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48zM112 192c-8.84 0-16-7.16-16-16v-32c0-8.84 7.16-16 16-16h128c8.84 0 16 7.16 16 16v32c0 8.84-7.16 16-16 16H112zm0 96c-8.84 0-16-7.16-16-16v-32c0-8.84 7.16-16 16-16h224c8.84 0 16 7.16 16 16v32c0 8.84-7.16 16-16 16H112zm0 96c-8.84 0-16-7.16-16-16v-32c0-8.84 7.16-16 16-16h64c8.84 0 16 7.16 16 16v32c0 8.84-7.16 16-16 16h-64z"],
	"poo": [512, 512, [], "f2fe", "M451.4 369.1C468.7 356 480 335.4 480 312c0-39.8-32.2-72-72-72h-14.1c13.4-11.7 22.1-28.8 22.1-48 0-35.3-28.7-64-64-64h-5.9c3.6-10.1 5.9-20.7 5.9-32 0-53-43-96-96-96-5.2 0-10.2.7-15.1 1.5C250.3 14.6 256 30.6 256 48c0 44.2-35.8 80-80 80h-16c-35.3 0-64 28.7-64 64 0 19.2 8.7 36.3 22.1 48H104c-39.8 0-72 32.2-72 72 0 23.4 11.3 44 28.6 57.1C26.3 374.6 0 404.1 0 440c0 39.8 32.2 72 72 72h368c39.8 0 72-32.2 72-72 0-35.9-26.3-65.4-60.6-70.9zM192 256c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32zm159.5 139C341 422.9 293 448 256 448s-85-25.1-95.5-53c-2-5.3 2-11 7.8-11h175.4c5.8 0 9.8 5.7 7.8 11zM320 320c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32z"],
	"poo-storm": [448, 512, [], "f75a", "M308 336h-57.7l17.3-64.9c2-7.6-3.7-15.1-11.6-15.1h-68c-6 0-11.1 4.5-11.9 10.4l-16 120c-1 7.2 4.6 13.6 11.9 13.6h59.3l-23 97.2c-1.8 7.6 4 14.8 11.7 14.8 4.2 0 8.2-2.2 10.4-6l88-152c4.6-8-1.2-18-10.4-18zm66.4-111.3c5.9-9.6 9.6-20.6 9.6-32.7 0-35.3-28.7-64-64-64h-5.9c3.6-10.1 5.9-20.7 5.9-32 0-53-43-96-96-96-5.2 0-10.2.7-15.1 1.5C218.3 14.6 224 30.6 224 48c0 44.2-35.8 80-80 80h-16c-35.3 0-64 28.7-64 64 0 12.1 3.7 23.1 9.6 32.7C32.6 228 0 262.2 0 304c0 44 36 80 80 80h48.3c.1-.6 0-1.2 0-1.8l16-120c3-21.8 21.7-38.2 43.7-38.2h68c13.8 0 26.5 6.3 34.9 17.2s11.2 24.8 7.6 38.1l-6.6 24.7h16c15.7 0 30.3 8.4 38.1 22 7.8 13.6 7.8 30.5 0 44l-8.1 14h30c44 0 80-36 80-80 .1-41.8-32.5-76-73.5-79.3z"],
	"poop": [512, 512, [], "f619", "M451.36 369.14C468.66 355.99 480 335.41 480 312c0-39.77-32.24-72-72-72h-14.07c13.42-11.73 22.07-28.78 22.07-48 0-35.35-28.65-64-64-64h-5.88c3.57-10.05 5.88-20.72 5.88-32 0-53.02-42.98-96-96-96-5.17 0-10.15.74-15.11 1.52C250.31 14.64 256 30.62 256 48c0 44.18-35.82 80-80 80h-16c-35.35 0-64 28.65-64 64 0 19.22 8.65 36.27 22.07 48H104c-39.76 0-72 32.23-72 72 0 23.41 11.34 43.99 28.64 57.14C26.31 374.62 0 404.12 0 440c0 39.76 32.24 72 72 72h368c39.76 0 72-32.24 72-72 0-35.88-26.31-65.38-60.64-70.86z"],
	"portrait": [384, 512, [], "f3e0", "M336 0H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V48c0-26.5-21.5-48-48-48zM192 128c35.3 0 64 28.7 64 64s-28.7 64-64 64-64-28.7-64-64 28.7-64 64-64zm112 236.8c0 10.6-10 19.2-22.4 19.2H102.4C90 384 80 375.4 80 364.8v-19.2c0-31.8 30.1-57.6 67.2-57.6h5c12.3 5.1 25.7 8 39.8 8s27.6-2.9 39.8-8h5c37.1 0 67.2 25.8 67.2 57.6v19.2z"],
	"pound-sign": [320, 512, [], "f154", "M308 352h-45.495c-6.627 0-12 5.373-12 12v50.848H128V288h84c6.627 0 12-5.373 12-12v-40c0-6.627-5.373-12-12-12h-84v-63.556c0-32.266 24.562-57.086 61.792-57.086 23.658 0 45.878 11.505 57.652 18.849 5.151 3.213 11.888 2.051 15.688-2.685l28.493-35.513c4.233-5.276 3.279-13.005-2.119-17.081C273.124 54.56 236.576 32 187.931 32 106.026 32 48 84.742 48 157.961V224H20c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h28v128H12c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h296c6.627 0 12-5.373 12-12V364c0-6.627-5.373-12-12-12z"],
	"power-off": [512, 512, [], "f011", "M400 54.1c63 45 104 118.6 104 201.9 0 136.8-110.8 247.7-247.5 248C120 504.3 8.2 393 8 256.4 7.9 173.1 48.9 99.3 111.8 54.2c11.7-8.3 28-4.8 35 7.7L162.6 90c5.9 10.5 3.1 23.8-6.6 31-41.5 30.8-68 79.6-68 134.9-.1 92.3 74.5 168.1 168 168.1 91.6 0 168.6-74.2 168-169.1-.3-51.8-24.7-101.8-68.1-134-9.7-7.2-12.4-20.5-6.5-30.9l15.8-28.1c7-12.4 23.2-16.1 34.8-7.8zM296 264V24c0-13.3-10.7-24-24-24h-32c-13.3 0-24 10.7-24 24v240c0 13.3 10.7 24 24 24h32c13.3 0 24-10.7 24-24z"],
	"pray": [384, 512, [], "f683", "M256 128c35.35 0 64-28.65 64-64S291.35 0 256 0s-64 28.65-64 64 28.65 64 64 64zm-30.63 169.75c14.06 16.72 39 19.09 55.97 5.22l88-72.02c17.09-13.98 19.59-39.19 5.62-56.28-13.97-17.11-39.19-19.59-56.31-5.62l-57.44 47-38.91-46.31c-15.44-18.39-39.22-27.92-64-25.33-24.19 2.48-45.25 16.27-56.37 36.92l-49.37 92.03c-23.4 43.64-8.69 96.37 34.19 123.75L131.56 432H40c-22.09 0-40 17.91-40 40s17.91 40 40 40h208c34.08 0 53.77-42.79 28.28-68.28L166.42 333.86l34.8-64.87 24.15 28.76z"],
	"praying-hands": [640, 512, [], "f684", "M272 191.91c-17.6 0-32 14.4-32 32v80c0 8.84-7.16 16-16 16s-16-7.16-16-16v-76.55c0-17.39 4.72-34.47 13.69-49.39l77.75-129.59c9.09-15.16 4.19-34.81-10.97-43.91-14.45-8.67-32.72-4.3-42.3 9.21-.2.23-.62.21-.79.48l-117.26 175.9C117.56 205.9 112 224.31 112 243.29v80.23l-90.12 30.04A31.974 31.974 0 0 0 0 383.91v96c0 10.82 8.52 32 32 32 2.69 0 5.41-.34 8.06-1.03l179.19-46.62C269.16 449.99 304 403.8 304 351.91v-128c0-17.6-14.4-32-32-32zm346.12 161.73L528 323.6v-80.23c0-18.98-5.56-37.39-16.12-53.23L394.62 14.25c-.18-.27-.59-.24-.79-.48-9.58-13.51-27.85-17.88-42.3-9.21-15.16 9.09-20.06 28.75-10.97 43.91l77.75 129.59c8.97 14.92 13.69 32 13.69 49.39V304c0 8.84-7.16 16-16 16s-16-7.16-16-16v-80c0-17.6-14.4-32-32-32s-32 14.4-32 32v128c0 51.89 34.84 98.08 84.75 112.34l179.19 46.62c2.66.69 5.38 1.03 8.06 1.03 23.48 0 32-21.18 32-32v-96c0-13.77-8.81-25.99-21.88-30.35z"],
	"prescription": [384, 512, [], "f5b1", "M301.26 352l78.06-78.06c6.25-6.25 6.25-16.38 0-22.63l-22.63-22.63c-6.25-6.25-16.38-6.25-22.63 0L256 306.74l-83.96-83.96C219.31 216.8 256 176.89 256 128c0-53.02-42.98-96-96-96H16C7.16 32 0 39.16 0 48v256c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-80h18.75l128 128-78.06 78.06c-6.25 6.25-6.25 16.38 0 22.63l22.63 22.63c6.25 6.25 16.38 6.25 22.63 0L256 397.25l78.06 78.06c6.25 6.25 16.38 6.25 22.63 0l22.63-22.63c6.25-6.25 6.25-16.38 0-22.63L301.26 352zM64 96h96c17.64 0 32 14.36 32 32s-14.36 32-32 32H64V96z"],
	"prescription-bottle": [384, 512, [], "f485", "M32 192h120c4.4 0 8 3.6 8 8v16c0 4.4-3.6 8-8 8H32v64h120c4.4 0 8 3.6 8 8v16c0 4.4-3.6 8-8 8H32v64h120c4.4 0 8 3.6 8 8v16c0 4.4-3.6 8-8 8H32v64c0 17.6 14.4 32 32 32h256c17.6 0 32-14.4 32-32V128H32v64zM360 0H24C10.8 0 0 10.8 0 24v48c0 13.2 10.8 24 24 24h336c13.2 0 24-10.8 24-24V24c0-13.2-10.8-24-24-24z"],
	"prescription-bottle-alt": [384, 512, [], "f486", "M360 0H24C10.8 0 0 10.8 0 24v48c0 13.2 10.8 24 24 24h336c13.2 0 24-10.8 24-24V24c0-13.2-10.8-24-24-24zM32 480c0 17.6 14.4 32 32 32h256c17.6 0 32-14.4 32-32V128H32v352zm64-184c0-4.4 3.6-8 8-8h56v-56c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v56h56c4.4 0 8 3.6 8 8v48c0 4.4-3.6 8-8 8h-56v56c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8v-56h-56c-4.4 0-8-3.6-8-8v-48z"],
	"print": [512, 512, [], "f02f", "M448 192V77.25c0-8.49-3.37-16.62-9.37-22.63L393.37 9.37c-6-6-14.14-9.37-22.63-9.37H96C78.33 0 64 14.33 64 32v160c-35.35 0-64 28.65-64 64v112c0 8.84 7.16 16 16 16h48v96c0 17.67 14.33 32 32 32h320c17.67 0 32-14.33 32-32v-96h48c8.84 0 16-7.16 16-16V256c0-35.35-28.65-64-64-64zm-64 256H128v-96h256v96zm0-224H128V64h192v48c0 8.84 7.16 16 16 16h48v96zm48 72c-13.25 0-24-10.75-24-24 0-13.26 10.75-24 24-24s24 10.74 24 24c0 13.25-10.75 24-24 24z"],
	"procedures": [640, 512, [], "f487", "M528 224H272c-8.8 0-16 7.2-16 16v144H64V144c0-8.8-7.2-16-16-16H16c-8.8 0-16 7.2-16 16v352c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-48h512v48c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V336c0-61.9-50.1-112-112-112zM136 96h126.1l27.6 55.2c5.9 11.8 22.7 11.8 28.6 0L368 51.8 390.1 96H512c8.8 0 16-7.2 16-16s-7.2-16-16-16H409.9L382.3 8.8C376.4-3 359.6-3 353.7 8.8L304 108.2l-19.9-39.8c-1.4-2.7-4.1-4.4-7.2-4.4H136c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8zm24 256c35.3 0 64-28.7 64-64s-28.7-64-64-64-64 28.7-64 64 28.7 64 64 64z"],
	"project-diagram": [640, 512, [], "f542", "M384 320H256c-17.67 0-32 14.33-32 32v128c0 17.67 14.33 32 32 32h128c17.67 0 32-14.33 32-32V352c0-17.67-14.33-32-32-32zM192 32c0-17.67-14.33-32-32-32H32C14.33 0 0 14.33 0 32v128c0 17.67 14.33 32 32 32h95.72l73.16 128.04C211.98 300.98 232.4 288 256 288h.28L192 175.51V128h224V64H192V32zM608 0H480c-17.67 0-32 14.33-32 32v128c0 17.67 14.33 32 32 32h128c17.67 0 32-14.33 32-32V32c0-17.67-14.33-32-32-32z"],
	"pump-medical": [384, 512, [], "e06a", "M235.51,159.82H84.24A64,64,0,0,0,20.51,218L.14,442a64,64,0,0,0,63.74,69.8h192A64,64,0,0,0,319.61,442L299.24,218A64,64,0,0,0,235.51,159.82Zm4.37,173.33a13.35,13.35,0,0,1-13.34,13.34h-40v40a13.33,13.33,0,0,1-13.33,13.33H146.54a13.33,13.33,0,0,1-13.33-13.33v-40h-40a13.34,13.34,0,0,1-13.33-13.34V306.49a13.33,13.33,0,0,1,13.33-13.34h40v-40a13.33,13.33,0,0,1,13.33-13.33h26.67a13.33,13.33,0,0,1,13.33,13.33v40h40a13.34,13.34,0,0,1,13.34,13.34ZM379.19,93.88,335.87,50.56a64,64,0,0,0-45.24-18.74H223.88a32,32,0,0,0-32-32h-64a32,32,0,0,0-32,32v96h128v-32h66.75l43.31,43.31a16,16,0,0,0,22.63,0l22.62-22.62A16,16,0,0,0,379.19,93.88Z"],
	"pump-soap": [384, 512, [], "e06b", "M235.63,160H84.37a64,64,0,0,0-63.74,58.21L.27,442.21A64,64,0,0,0,64,512H256a64,64,0,0,0,63.74-69.79l-20.36-224A64,64,0,0,0,235.63,160ZM160,416c-33.12,0-60-26.33-60-58.75,0-25,35.7-75.47,52-97.27A10,10,0,0,1,168,260c16.33,21.8,52,72.27,52,97.27C220,389.67,193.12,416,160,416ZM379.31,94.06,336,50.74A64,64,0,0,0,290.75,32H224A32,32,0,0,0,192,0H128A32,32,0,0,0,96,32v96H224V96h66.75l43.31,43.31a16,16,0,0,0,22.63,0l22.62-22.62A16,16,0,0,0,379.31,94.06Z"],
	"puzzle-piece": [576, 512, [], "f12e", "M519.442 288.651c-41.519 0-59.5 31.593-82.058 31.593C377.409 320.244 432 144 432 144s-196.288 80-196.288-3.297c0-35.827 36.288-46.25 36.288-85.985C272 19.216 243.885 0 210.539 0c-34.654 0-66.366 18.891-66.366 56.346 0 41.364 31.711 59.277 31.711 81.75C175.885 207.719 0 166.758 0 166.758v333.237s178.635 41.047 178.635-28.662c0-22.473-40-40.107-40-81.471 0-37.456 29.25-56.346 63.577-56.346 33.673 0 61.788 19.216 61.788 54.717 0 39.735-36.288 50.158-36.288 85.985 0 60.803 129.675 25.73 181.23 25.73 0 0-34.725-120.101 25.827-120.101 35.962 0 46.423 36.152 86.308 36.152C556.712 416 576 387.99 576 354.443c0-34.199-18.962-65.792-56.558-65.792z"],
	"qrcode": [448, 512, [], "f029", "M0 224h192V32H0v192zM64 96h64v64H64V96zm192-64v192h192V32H256zm128 128h-64V96h64v64zM0 480h192V288H0v192zm64-128h64v64H64v-64zm352-64h32v128h-96v-32h-32v96h-64V288h96v32h64v-32zm0 160h32v32h-32v-32zm-64 0h32v32h-32v-32z"],
	"question": [384, 512, [], "f128", "M202.021 0C122.202 0 70.503 32.703 29.914 91.026c-7.363 10.58-5.093 25.086 5.178 32.874l43.138 32.709c10.373 7.865 25.132 6.026 33.253-4.148 25.049-31.381 43.63-49.449 82.757-49.449 30.764 0 68.816 19.799 68.816 49.631 0 22.552-18.617 34.134-48.993 51.164-35.423 19.86-82.299 44.576-82.299 106.405V320c0 13.255 10.745 24 24 24h72.471c13.255 0 24-10.745 24-24v-5.773c0-42.86 125.268-44.645 125.268-160.627C377.504 66.256 286.902 0 202.021 0zM192 373.459c-38.196 0-69.271 31.075-69.271 69.271 0 38.195 31.075 69.27 69.271 69.27s69.271-31.075 69.271-69.271-31.075-69.27-69.271-69.27z"],
	"question-circle": [512, 512, [], "f059", "M504 256c0 136.997-111.043 248-248 248S8 392.997 8 256C8 119.083 119.043 8 256 8s248 111.083 248 248zM262.655 90c-54.497 0-89.255 22.957-116.549 63.758-3.536 5.286-2.353 12.415 2.715 16.258l34.699 26.31c5.205 3.947 12.621 3.008 16.665-2.122 17.864-22.658 30.113-35.797 57.303-35.797 20.429 0 45.698 13.148 45.698 32.958 0 14.976-12.363 22.667-32.534 33.976C247.128 238.528 216 254.941 216 296v4c0 6.627 5.373 12 12 12h56c6.627 0 12-5.373 12-12v-1.333c0-28.462 83.186-29.647 83.186-106.667 0-58.002-60.165-102-116.531-102zM256 338c-25.365 0-46 20.635-46 46 0 25.364 20.635 46 46 46s46-20.636 46-46c0-25.365-20.635-46-46-46z"],
	"quidditch": [640, 512, [], "f458", "M256.5 216.8L343.2 326s-16.6 102.4-76.6 150.1C206.7 523.8 0 510.2 0 510.2s3.8-23.1 11-55.4l94.6-112.2c4-4.7-.9-11.6-6.6-9.5l-60.4 22.1c14.4-41.7 32.7-80 54.6-97.5 59.9-47.8 163.3-40.9 163.3-40.9zm238 135c-44 0-79.8 35.8-79.8 79.9 0 44.1 35.7 79.9 79.8 79.9 44.1 0 79.8-35.8 79.8-79.9 0-44.2-35.8-79.9-79.8-79.9zM636.5 31L616.7 6c-5.5-6.9-15.5-8-22.4-2.6L361.8 181.3l-34.1-43c-5.1-6.4-15.1-5.2-18.6 2.2l-25.3 54.6 86.7 109.2 58.8-12.4c8-1.7 11.4-11.2 6.3-17.6l-34.1-42.9L634 53.5c6.9-5.5 8-15.6 2.5-22.5z"],
	"quote-left": [512, 512, [], "f10d", "M464 256h-80v-64c0-35.3 28.7-64 64-64h8c13.3 0 24-10.7 24-24V56c0-13.3-10.7-24-24-24h-8c-88.4 0-160 71.6-160 160v240c0 26.5 21.5 48 48 48h128c26.5 0 48-21.5 48-48V304c0-26.5-21.5-48-48-48zm-288 0H96v-64c0-35.3 28.7-64 64-64h8c13.3 0 24-10.7 24-24V56c0-13.3-10.7-24-24-24h-8C71.6 32 0 103.6 0 192v240c0 26.5 21.5 48 48 48h128c26.5 0 48-21.5 48-48V304c0-26.5-21.5-48-48-48z"],
	"quote-right": [512, 512, [], "f10e", "M464 32H336c-26.5 0-48 21.5-48 48v128c0 26.5 21.5 48 48 48h80v64c0 35.3-28.7 64-64 64h-8c-13.3 0-24 10.7-24 24v48c0 13.3 10.7 24 24 24h8c88.4 0 160-71.6 160-160V80c0-26.5-21.5-48-48-48zm-288 0H48C21.5 32 0 53.5 0 80v128c0 26.5 21.5 48 48 48h80v64c0 35.3-28.7 64-64 64h-8c-13.3 0-24 10.7-24 24v48c0 13.3 10.7 24 24 24h8c88.4 0 160-71.6 160-160V80c0-26.5-21.5-48-48-48z"],
	"quran": [448, 512, [], "f687", "M448 358.4V25.6c0-16-9.6-25.6-25.6-25.6H96C41.6 0 0 41.6 0 96v320c0 54.4 41.6 96 96 96h326.4c12.8 0 25.6-9.6 25.6-25.6v-16c0-6.4-3.2-12.8-9.6-19.2-3.2-16-3.2-60.8 0-73.6 6.4-3.2 9.6-9.6 9.6-19.2zM301.08 145.82c.6-1.21 1.76-1.82 2.92-1.82s2.32.61 2.92 1.82l11.18 22.65 25 3.63c2.67.39 3.74 3.67 1.81 5.56l-18.09 17.63 4.27 24.89c.36 2.11-1.31 3.82-3.21 3.82-.5 0-1.02-.12-1.52-.38L304 211.87l-22.36 11.75c-.5.26-1.02.38-1.52.38-1.9 0-3.57-1.71-3.21-3.82l4.27-24.89-18.09-17.63c-1.94-1.89-.87-5.17 1.81-5.56l24.99-3.63 11.19-22.65zm-57.89-69.01c13.67 0 27.26 2.49 40.38 7.41a6.775 6.775 0 1 1-2.38 13.12c-.67 0-3.09-.21-4.13-.21-52.31 0-94.86 42.55-94.86 94.86 0 52.3 42.55 94.86 94.86 94.86 1.03 0 3.48-.21 4.13-.21 3.93 0 6.8 3.14 6.8 6.78 0 2.98-1.94 5.51-4.62 6.42-13.07 4.87-26.59 7.34-40.19 7.34C179.67 307.19 128 255.51 128 192c0-63.52 51.67-115.19 115.19-115.19zM380.8 448H96c-19.2 0-32-12.8-32-32s16-32 32-32h284.8v64z"],
	"radiation": [496, 512, [], "f7b9", "M328.2 255.8h151.6c9.1 0 16.8-7.7 16.2-16.8-5.1-75.8-44.4-142.2-102.5-184.2-7.4-5.3-17.9-2.9-22.7 4.8L290.4 188c22.6 14.3 37.8 39.2 37.8 67.8zm-37.8 67.7c-12.3 7.7-26.8 12.4-42.4 12.4-15.6 0-30-4.7-42.4-12.4L125.2 452c-4.8 7.7-2.4 18.1 5.6 22.4C165.7 493.2 205.6 504 248 504s82.3-10.8 117.2-29.6c8-4.3 10.4-14.8 5.6-22.4l-80.4-128.5zM248 303.8c26.5 0 48-21.5 48-48s-21.5-48-48-48-48 21.5-48 48 21.5 48 48 48zm-231.8-48h151.6c0-28.6 15.2-53.5 37.8-67.7L125.2 59.7c-4.8-7.7-15.3-10.2-22.7-4.8C44.4 96.9 5.1 163.3 0 239.1c-.6 9 7.1 16.7 16.2 16.7z"],
	"radiation-alt": [496, 512, [], "f7ba", "M312 256h79.1c9.2 0 16.9-7.7 16-16.8-4.6-43.6-27-81.8-59.5-107.8-7.6-6.1-18.8-4.5-24 3.8L281.9 202c18 11.2 30.1 31.2 30.1 54zm-97.8 54.1L172.4 377c-4.9 7.8-2.4 18.4 5.8 22.5 21.1 10.4 44.7 16.5 69.8 16.5s48.7-6.1 69.9-16.5c8.2-4.1 10.6-14.7 5.8-22.5l-41.8-66.9c-9.8 6.2-21.4 9.9-33.8 9.9s-24.1-3.7-33.9-9.9zM104.9 256H184c0-22.8 12.1-42.8 30.2-54.1l-41.7-66.8c-5.2-8.3-16.4-9.9-24-3.8-32.6 26-54.9 64.2-59.5 107.8-1.1 9.2 6.7 16.9 15.9 16.9zM248 504c137 0 248-111 248-248S385 8 248 8 0 119 0 256s111 248 248 248zm0-432c101.5 0 184 82.5 184 184s-82.5 184-184 184S64 357.5 64 256 146.5 72 248 72zm0 216c17.7 0 32-14.3 32-32s-14.3-32-32-32-32 14.3-32 32 14.3 32 32 32z"],
	"rainbow": [576, 512, [], "f75b", "M268.3 32.7C115.4 42.9 0 176.9 0 330.2V464c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V320C64 186.8 180.9 80.3 317.5 97.9 430.4 112.4 512 214 512 327.8V464c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V320c0-165.3-140-298.6-307.7-287.3zm-5.6 96.9C166 142 96 229.1 96 326.7V464c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V320c0-74.8 64.5-134.8 140.8-127.4 66.5 6.5 115.2 66.2 115.2 133.1V464c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V320c0-114.2-100.2-205.4-217.3-190.4zm6.2 96.3c-45.6 8.9-76.9 51.5-76.9 97.9V464c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V320c0-17.6 14.3-32 32-32s32 14.4 32 32v144c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V320c0-59.2-53.8-106-115.1-94.1z"],
	"random": [512, 512, [], "f074", "M504.971 359.029c9.373 9.373 9.373 24.569 0 33.941l-80 79.984c-15.01 15.01-40.971 4.49-40.971-16.971V416h-58.785a12.004 12.004 0 0 1-8.773-3.812l-70.556-75.596 53.333-57.143L352 336h32v-39.981c0-21.438 25.943-31.998 40.971-16.971l80 79.981zM12 176h84l52.781 56.551 53.333-57.143-70.556-75.596A11.999 11.999 0 0 0 122.785 96H12c-6.627 0-12 5.373-12 12v56c0 6.627 5.373 12 12 12zm372 0v39.984c0 21.46 25.961 31.98 40.971 16.971l80-79.984c9.373-9.373 9.373-24.569 0-33.941l-80-79.981C409.943 24.021 384 34.582 384 56.019V96h-58.785a12.004 12.004 0 0 0-8.773 3.812L96 336H12c-6.627 0-12 5.373-12 12v56c0 6.627 5.373 12 12 12h110.785c3.326 0 6.503-1.381 8.773-3.812L352 176h32z"],
	"receipt": [384, 512, [], "f543", "M358.4 3.2L320 48 265.6 3.2a15.9 15.9 0 0 0-19.2 0L192 48 137.6 3.2a15.9 15.9 0 0 0-19.2 0L64 48 25.6 3.2C15-4.7 0 2.8 0 16v480c0 13.2 15 20.7 25.6 12.8L64 464l54.4 44.8a15.9 15.9 0 0 0 19.2 0L192 464l54.4 44.8a15.9 15.9 0 0 0 19.2 0L320 464l38.4 44.8c10.5 7.9 25.6.4 25.6-12.8V16c0-13.2-15-20.7-25.6-12.8zM320 360c0 4.4-3.6 8-8 8H72c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h240c4.4 0 8 3.6 8 8v16zm0-96c0 4.4-3.6 8-8 8H72c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h240c4.4 0 8 3.6 8 8v16zm0-96c0 4.4-3.6 8-8 8H72c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h240c4.4 0 8 3.6 8 8v16z"],
	"record-vinyl": [512, 512, [], "f8d9", "M256 152a104 104 0 1 0 104 104 104 104 0 0 0-104-104zm0 128a24 24 0 1 1 24-24 24 24 0 0 1-24 24zm0-272C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm0 376a128 128 0 1 1 128-128 128 128 0 0 1-128 128z"],
	"recycle": [512, 512, [], "f1b8", "M184.561 261.903c3.232 13.997-12.123 24.635-24.068 17.168l-40.736-25.455-50.867 81.402C55.606 356.273 70.96 384 96.012 384H148c6.627 0 12 5.373 12 12v40c0 6.627-5.373 12-12 12H96.115c-75.334 0-121.302-83.048-81.408-146.88l50.822-81.388-40.725-25.448c-12.081-7.547-8.966-25.961 4.879-29.158l110.237-25.45c8.611-1.988 17.201 3.381 19.189 11.99l25.452 110.237zm98.561-182.915l41.289 66.076-40.74 25.457c-12.051 7.528-9 25.953 4.879 29.158l110.237 25.45c8.672 1.999 17.215-3.438 19.189-11.99l25.45-110.237c3.197-13.844-11.99-24.719-24.068-17.168l-40.687 25.424-41.263-66.082c-37.521-60.033-125.209-60.171-162.816 0l-17.963 28.766c-3.51 5.62-1.8 13.021 3.82 16.533l33.919 21.195c5.62 3.512 13.024 1.803 16.536-3.817l17.961-28.743c12.712-20.341 41.973-19.676 54.257-.022zM497.288 301.12l-27.515-44.065c-3.511-5.623-10.916-7.334-16.538-3.821l-33.861 21.159c-5.62 3.512-7.33 10.915-3.818 16.536l27.564 44.112c13.257 21.211-2.057 48.96-27.136 48.96H320V336.02c0-14.213-17.242-21.383-27.313-11.313l-80 79.981c-6.249 6.248-6.249 16.379 0 22.627l80 79.989C302.689 517.308 320 510.3 320 495.989V448h95.88c75.274 0 121.335-82.997 81.408-146.88z"],
	"redo": [512, 512, [], "f01e", "M500.33 0h-47.41a12 12 0 0 0-12 12.57l4 82.76A247.42 247.42 0 0 0 256 8C119.34 8 7.9 119.53 8 256.19 8.1 393.07 119.1 504 256 504a247.1 247.1 0 0 0 166.18-63.91 12 12 0 0 0 .48-17.43l-34-34a12 12 0 0 0-16.38-.55A176 176 0 1 1 402.1 157.8l-101.53-4.87a12 12 0 0 0-12.57 12v47.41a12 12 0 0 0 12 12h200.33a12 12 0 0 0 12-12V12a12 12 0 0 0-12-12z"],
	"redo-alt": [512, 512, [], "f2f9", "M256.455 8c66.269.119 126.437 26.233 170.859 68.685l35.715-35.715C478.149 25.851 504 36.559 504 57.941V192c0 13.255-10.745 24-24 24H345.941c-21.382 0-32.09-25.851-16.971-40.971l41.75-41.75c-30.864-28.899-70.801-44.907-113.23-45.273-92.398-.798-170.283 73.977-169.484 169.442C88.764 348.009 162.184 424 256 424c41.127 0 79.997-14.678 110.629-41.556 4.743-4.161 11.906-3.908 16.368.553l39.662 39.662c4.872 4.872 4.631 12.815-.482 17.433C378.202 479.813 319.926 504 256 504 119.034 504 8.001 392.967 8 256.002 7.999 119.193 119.646 7.755 256.455 8z"],
	"registered": [512, 512, [], "f25d", "M285.363 207.475c0 18.6-9.831 28.431-28.431 28.431h-29.876v-56.14h23.378c28.668 0 34.929 8.773 34.929 27.709zM504 256c0 136.967-111.033 248-248 248S8 392.967 8 256 119.033 8 256 8s248 111.033 248 248zM363.411 360.414c-46.729-84.825-43.299-78.636-44.702-80.98 23.432-15.172 37.945-42.979 37.945-74.486 0-54.244-31.5-89.252-105.498-89.252h-70.667c-13.255 0-24 10.745-24 24V372c0 13.255 10.745 24 24 24h22.567c13.255 0 24-10.745 24-24v-71.663h25.556l44.129 82.937a24.001 24.001 0 0 0 21.188 12.727h24.464c18.261-.001 29.829-19.591 21.018-35.587z"],
	"remove-format": [640, 512, [], "f87d", "M336 416h-11.17l9.26-27.77L267 336.4 240.49 416H208a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h128a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm297.82 42.1L377 259.59 426.17 112H544v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16H176a16 16 0 0 0-16 16v43.9L45.46 3.38A16 16 0 0 0 23 6.19L3.37 31.46a16 16 0 0 0 2.81 22.45l588.36 454.72a16 16 0 0 0 22.46-2.81l19.64-25.27a16 16 0 0 0-2.82-22.45zM309.91 207.76L224 141.36V112h117.83z"],
	"reply": [512, 512, [], "f3e5", "M8.309 189.836L184.313 37.851C199.719 24.546 224 35.347 224 56.015v80.053c160.629 1.839 288 34.032 288 186.258 0 61.441-39.581 122.309-83.333 154.132-13.653 9.931-33.111-2.533-28.077-18.631 45.344-145.012-21.507-183.51-176.59-185.742V360c0 20.7-24.3 31.453-39.687 18.164l-176.004-152c-11.071-9.562-11.086-26.753 0-36.328z"],
	"reply-all": [576, 512, [], "f122", "M136.309 189.836L312.313 37.851C327.72 24.546 352 35.348 352 56.015v82.763c129.182 10.231 224 52.212 224 183.548 0 61.441-39.582 122.309-83.333 154.132-13.653 9.931-33.111-2.533-28.077-18.631 38.512-123.162-3.922-169.482-112.59-182.015v84.175c0 20.701-24.3 31.453-39.687 18.164L136.309 226.164c-11.071-9.561-11.086-26.753 0-36.328zm-128 36.328L184.313 378.15C199.7 391.439 224 380.687 224 359.986v-15.818l-108.606-93.785A55.96 55.96 0 0 1 96 207.998a55.953 55.953 0 0 1 19.393-42.38L224 71.832V56.015c0-20.667-24.28-31.469-39.687-18.164L8.309 189.836c-11.086 9.575-11.071 26.767 0 36.328z"],
	"republican": [640, 512, [], "f75e", "M544 192c0-88.4-71.6-160-160-160H160C71.6 32 0 103.6 0 192v64h544v-64zm-367.7-21.6l-19.8 19.3 4.7 27.3c.8 4.9-4.3 8.6-8.7 6.3L128 210.4l-24.5 12.9c-4.3 2.3-9.5-1.4-8.7-6.3l4.7-27.3-19.8-19.3c-3.6-3.5-1.6-9.5 3.3-10.2l27.4-4 12.2-24.8c2.2-4.5 8.6-4.4 10.7 0l12.2 24.8 27.4 4c5 .7 6.9 6.7 3.4 10.2zm144 0l-19.8 19.3 4.7 27.3c.8 4.9-4.3 8.6-8.7 6.3L272 210.4l-24.5 12.9c-4.3 2.3-9.5-1.4-8.7-6.3l4.7-27.3-19.8-19.3c-3.6-3.5-1.6-9.5 3.3-10.2l27.4-4 12.2-24.8c2.2-4.5 8.6-4.4 10.7 0l12.2 24.8 27.4 4c5 .7 6.9 6.7 3.4 10.2zm144 0l-19.8 19.3 4.7 27.3c.8 4.9-4.3 8.6-8.7 6.3L416 210.4l-24.5 12.9c-4.3 2.3-9.5-1.4-8.7-6.3l4.7-27.3-19.8-19.3c-3.6-3.5-1.6-9.5 3.3-10.2l27.4-4 12.2-24.8c2.2-4.5 8.6-4.4 10.7 0l12.2 24.8 27.4 4c5 .7 6.9 6.7 3.4 10.2zM624 320h-32c-8.8 0-16 7.2-16 16v64c0 8.8-7.2 16-16 16s-16-7.2-16-16V288H0v176c0 8.8 7.2 16 16 16h96c8.8 0 16-7.2 16-16v-80h192v80c0 8.8 7.2 16 16 16h96c8.8 0 16-7.2 16-16V352h32v43.3c0 41.8 30 80.1 71.6 84.3 47.8 4.9 88.4-32.7 88.4-79.6v-64c0-8.8-7.2-16-16-16z"],
	"restroom": [640, 512, [], "f7bd", "M128 128c35.3 0 64-28.7 64-64S163.3 0 128 0 64 28.7 64 64s28.7 64 64 64zm384 0c35.3 0 64-28.7 64-64S547.3 0 512 0s-64 28.7-64 64 28.7 64 64 64zm127.3 226.5l-45.6-185.8c-3.3-13.5-15.5-23-29.8-24.2-15 9.7-32.8 15.5-52 15.5-19.2 0-37-5.8-52-15.5-14.3 1.2-26.5 10.7-29.8 24.2l-45.6 185.8C381 369.6 393 384 409.2 384H464v104c0 13.3 10.7 24 24 24h48c13.3 0 24-10.7 24-24V384h54.8c16.2 0 28.2-14.4 24.5-29.5zM336 0h-32c-8.8 0-16 7.2-16 16v480c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V16c0-8.8-7.2-16-16-16zM180.1 144.4c-15 9.8-32.9 15.6-52.1 15.6-19.2 0-37.1-5.8-52.1-15.6C51.3 146.5 32 166.9 32 192v136c0 13.3 10.7 24 24 24h8v136c0 13.3 10.7 24 24 24h80c13.3 0 24-10.7 24-24V352h8c13.3 0 24-10.7 24-24V192c0-25.1-19.3-45.5-43.9-47.6z"],
	"retweet": [640, 512, [], "f079", "M629.657 343.598L528.971 444.284c-9.373 9.372-24.568 9.372-33.941 0L394.343 343.598c-9.373-9.373-9.373-24.569 0-33.941l10.823-10.823c9.562-9.562 25.133-9.34 34.419.492L480 342.118V160H292.451a24.005 24.005 0 0 1-16.971-7.029l-16-16C244.361 121.851 255.069 96 276.451 96H520c13.255 0 24 10.745 24 24v222.118l40.416-42.792c9.285-9.831 24.856-10.054 34.419-.492l10.823 10.823c9.372 9.372 9.372 24.569-.001 33.941zm-265.138 15.431A23.999 23.999 0 0 0 347.548 352H160V169.881l40.416 42.792c9.286 9.831 24.856 10.054 34.419.491l10.822-10.822c9.373-9.373 9.373-24.569 0-33.941L144.971 67.716c-9.373-9.373-24.569-9.373-33.941 0L10.343 168.402c-9.373 9.373-9.373 24.569 0 33.941l10.822 10.822c9.562 9.562 25.133 9.34 34.419-.491L96 169.881V392c0 13.255 10.745 24 24 24h243.549c21.382 0 32.09-25.851 16.971-40.971l-16.001-16z"],
	"ribbon": [448, 512, [], "f4d6", "M6.1 444.3c-9.6 10.8-7.5 27.6 4.5 35.7l68.8 27.9c9.9 6.7 23.3 5 31.3-3.8l91.8-101.9-79.2-87.9-117.2 130zm435.8 0s-292-324.6-295.4-330.1c15.4-8.4 40.2-17.9 77.5-17.9s62.1 9.5 77.5 17.9c-3.3 5.6-56 64.6-56 64.6l79.1 87.7 34.2-38c28.7-31.9 33.3-78.6 11.4-115.5l-43.7-73.5c-4.3-7.2-9.9-13.3-16.8-18-40.7-27.6-127.4-29.7-171.4 0-6.9 4.7-12.5 10.8-16.8 18l-43.6 73.2c-1.5 2.5-37.1 62.2 11.5 116L337.5 504c8 8.9 21.4 10.5 31.3 3.8l68.8-27.9c11.9-8 14-24.8 4.3-35.6z"],
	"ring": [512, 512, [], "f70b", "M256 64C110.06 64 0 125.91 0 208v98.13C0 384.48 114.62 448 256 448s256-63.52 256-141.87V208c0-82.09-110.06-144-256-144zm0 64c106.04 0 192 35.82 192 80 0 9.26-3.97 18.12-10.91 26.39C392.15 208.21 328.23 192 256 192s-136.15 16.21-181.09 42.39C67.97 226.12 64 217.26 64 208c0-44.18 85.96-80 192-80zM120.43 264.64C155.04 249.93 201.64 240 256 240s100.96 9.93 135.57 24.64C356.84 279.07 308.93 288 256 288s-100.84-8.93-135.57-23.36z"],
	"road": [576, 512, [], "f018", "M573.19 402.67l-139.79-320C428.43 71.29 417.6 64 405.68 64h-97.59l2.45 23.16c.5 4.72-3.21 8.84-7.96 8.84h-29.16c-4.75 0-8.46-4.12-7.96-8.84L267.91 64h-97.59c-11.93 0-22.76 7.29-27.73 18.67L2.8 402.67C-6.45 423.86 8.31 448 30.54 448h196.84l10.31-97.68c.86-8.14 7.72-14.32 15.91-14.32h68.8c8.19 0 15.05 6.18 15.91 14.32L348.62 448h196.84c22.23 0 36.99-24.14 27.73-45.33zM260.4 135.16a8 8 0 0 1 7.96-7.16h39.29c4.09 0 7.53 3.09 7.96 7.16l4.6 43.58c.75 7.09-4.81 13.26-11.93 13.26h-40.54c-7.13 0-12.68-6.17-11.93-13.26l4.59-43.58zM315.64 304h-55.29c-9.5 0-16.91-8.23-15.91-17.68l5.07-48c.86-8.14 7.72-14.32 15.91-14.32h45.15c8.19 0 15.05 6.18 15.91 14.32l5.07 48c1 9.45-6.41 17.68-15.91 17.68z"],
	"robot": [640, 512, [], "f544", "M32,224H64V416H32A31.96166,31.96166,0,0,1,0,384V256A31.96166,31.96166,0,0,1,32,224Zm512-48V448a64.06328,64.06328,0,0,1-64,64H160a64.06328,64.06328,0,0,1-64-64V176a79.974,79.974,0,0,1,80-80H288V32a32,32,0,0,1,64,0V96H464A79.974,79.974,0,0,1,544,176ZM264,256a40,40,0,1,0-40,40A39.997,39.997,0,0,0,264,256Zm-8,128H192v32h64Zm96,0H288v32h64ZM456,256a40,40,0,1,0-40,40A39.997,39.997,0,0,0,456,256Zm-8,128H384v32h64ZM640,256V384a31.96166,31.96166,0,0,1-32,32H576V224h32A31.96166,31.96166,0,0,1,640,256Z"],
	"rocket": [512, 512, [], "f135", "M505.12019,19.09375c-1.18945-5.53125-6.65819-11-12.207-12.1875C460.716,0,435.507,0,410.40747,0,307.17523,0,245.26909,55.20312,199.05238,128H94.83772c-16.34763.01562-35.55658,11.875-42.88664,26.48438L2.51562,253.29688A28.4,28.4,0,0,0,0,264a24.00867,24.00867,0,0,0,24.00582,24H127.81618l-22.47457,22.46875c-11.36521,11.36133-12.99607,32.25781,0,45.25L156.24582,406.625c11.15623,11.1875,32.15619,13.15625,45.27726,0l22.47457-22.46875V488a24.00867,24.00867,0,0,0,24.00581,24,28.55934,28.55934,0,0,0,10.707-2.51562l98.72834-49.39063c14.62888-7.29687,26.50776-26.5,26.50776-42.85937V312.79688c72.59753-46.3125,128.03493-108.40626,128.03493-211.09376C512.07526,76.5,512.07526,51.29688,505.12019,19.09375ZM384.04033,168A40,40,0,1,1,424.05,128,40.02322,40.02322,0,0,1,384.04033,168Z"],
	"route": [512, 512, [], "f4d7", "M416 320h-96c-17.6 0-32-14.4-32-32s14.4-32 32-32h96s96-107 96-160-43-96-96-96-96 43-96 96c0 25.5 22.2 63.4 45.3 96H320c-52.9 0-96 43.1-96 96s43.1 96 96 96h96c17.6 0 32 14.4 32 32s-14.4 32-32 32H185.5c-16 24.8-33.8 47.7-47.3 64H416c52.9 0 96-43.1 96-96s-43.1-96-96-96zm0-256c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32zM96 256c-53 0-96 43-96 96s96 160 96 160 96-107 96-160-43-96-96-96zm0 128c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32z"],
	"rss": [448, 512, [], "f09e", "M128.081 415.959c0 35.369-28.672 64.041-64.041 64.041S0 451.328 0 415.959s28.672-64.041 64.041-64.041 64.04 28.673 64.04 64.041zm175.66 47.25c-8.354-154.6-132.185-278.587-286.95-286.95C7.656 175.765 0 183.105 0 192.253v48.069c0 8.415 6.49 15.472 14.887 16.018 111.832 7.284 201.473 96.702 208.772 208.772.547 8.397 7.604 14.887 16.018 14.887h48.069c9.149.001 16.489-7.655 15.995-16.79zm144.249.288C439.596 229.677 251.465 40.445 16.503 32.01 7.473 31.686 0 38.981 0 48.016v48.068c0 8.625 6.835 15.645 15.453 15.999 191.179 7.839 344.627 161.316 352.465 352.465.353 8.618 7.373 15.453 15.999 15.453h48.068c9.034-.001 16.329-7.474 16.005-16.504z"],
	"rss-square": [448, 512, [], "f143", "M400 32H48C21.49 32 0 53.49 0 80v352c0 26.51 21.49 48 48 48h352c26.51 0 48-21.49 48-48V80c0-26.51-21.49-48-48-48zM112 416c-26.51 0-48-21.49-48-48s21.49-48 48-48 48 21.49 48 48-21.49 48-48 48zm157.533 0h-34.335c-6.011 0-11.051-4.636-11.442-10.634-5.214-80.05-69.243-143.92-149.123-149.123-5.997-.39-10.633-5.431-10.633-11.441v-34.335c0-6.535 5.468-11.777 11.994-11.425 110.546 5.974 198.997 94.536 204.964 204.964.352 6.526-4.89 11.994-11.425 11.994zm103.027 0h-34.334c-6.161 0-11.175-4.882-11.427-11.038-5.598-136.535-115.204-246.161-251.76-251.76C68.882 152.949 64 147.935 64 141.774V107.44c0-6.454 5.338-11.664 11.787-11.432 167.83 6.025 302.21 141.191 308.205 308.205.232 6.449-4.978 11.787-11.432 11.787z"],
	"ruble-sign": [384, 512, [], "f158", "M239.36 320C324.48 320 384 260.542 384 175.071S324.48 32 239.36 32H76c-6.627 0-12 5.373-12 12v206.632H12c-6.627 0-12 5.373-12 12V308c0 6.627 5.373 12 12 12h52v32H12c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h52v52c0 6.627 5.373 12 12 12h58.56c6.627 0 12-5.373 12-12v-52H308c6.627 0 12-5.373 12-12v-40c0-6.627-5.373-12-12-12H146.56v-32h92.8zm-92.8-219.252h78.72c46.72 0 74.88 29.11 74.88 74.323 0 45.832-28.16 75.561-76.16 75.561h-77.44V100.748z"],
	"ruler": [640, 512, [], "f545", "M635.7 167.2L556.1 31.7c-8.8-15-28.3-20.1-43.5-11.5l-69 39.1L503.3 161c2.2 3.8.9 8.5-2.9 10.7l-13.8 7.8c-3.8 2.2-8.7.9-10.9-2.9L416 75l-55.2 31.3 27.9 47.4c2.2 3.8.9 8.5-2.9 10.7l-13.8 7.8c-3.8 2.2-8.7.9-10.9-2.9L333.2 122 278 153.3 337.8 255c2.2 3.7.9 8.5-2.9 10.7l-13.8 7.8c-3.8 2.2-8.7.9-10.9-2.9l-59.7-101.7-55.2 31.3 27.9 47.4c2.2 3.8.9 8.5-2.9 10.7l-13.8 7.8c-3.8 2.2-8.7.9-10.9-2.9l-27.9-47.5-55.2 31.3 59.7 101.7c2.2 3.7.9 8.5-2.9 10.7l-13.8 7.8c-3.8 2.2-8.7.9-10.9-2.9L84.9 262.9l-69 39.1C.7 310.7-4.6 329.8 4.2 344.8l79.6 135.6c8.8 15 28.3 20.1 43.5 11.5L624.1 210c15.2-8.6 20.4-27.8 11.6-42.8z"],
	"ruler-combined": [512, 512, [], "f546", "M160 288h-56c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h56v-64h-56c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h56V96h-56c-4.42 0-8-3.58-8-8V72c0-4.42 3.58-8 8-8h56V32c0-17.67-14.33-32-32-32H32C14.33 0 0 14.33 0 32v448c0 2.77.91 5.24 1.57 7.8L160 329.38V288zm320 64h-32v56c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8v-56h-64v56c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8v-56h-64v56c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8v-56h-41.37L24.2 510.43c2.56.66 5.04 1.57 7.8 1.57h448c17.67 0 32-14.33 32-32v-96c0-17.67-14.33-32-32-32z"],
	"ruler-horizontal": [576, 512, [], "f547", "M544 128h-48v88c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8v-88h-64v88c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8v-88h-64v88c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8v-88h-64v88c0 4.42-3.58 8-8 8h-16c-4.42 0-8-3.58-8-8v-88h-64v88c0 4.42-3.58 8-8 8H88c-4.42 0-8-3.58-8-8v-88H32c-17.67 0-32 14.33-32 32v192c0 17.67 14.33 32 32 32h512c17.67 0 32-14.33 32-32V160c0-17.67-14.33-32-32-32z"],
	"ruler-vertical": [256, 512, [], "f548", "M168 416c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h88v-64h-88c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h88v-64h-88c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h88v-64h-88c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h88V32c0-17.67-14.33-32-32-32H32C14.33 0 0 14.33 0 32v448c0 17.67 14.33 32 32 32h192c17.67 0 32-14.33 32-32v-64h-88z"],
	"running": [416, 512, [], "f70c", "M272 96c26.51 0 48-21.49 48-48S298.51 0 272 0s-48 21.49-48 48 21.49 48 48 48zM113.69 317.47l-14.8 34.52H32c-17.67 0-32 14.33-32 32s14.33 32 32 32h77.45c19.25 0 36.58-11.44 44.11-29.09l8.79-20.52-10.67-6.3c-17.32-10.23-30.06-25.37-37.99-42.61zM384 223.99h-44.03l-26.06-53.25c-12.5-25.55-35.45-44.23-61.78-50.94l-71.08-21.14c-28.3-6.8-57.77-.55-80.84 17.14l-39.67 30.41c-14.03 10.75-16.69 30.83-5.92 44.86s30.84 16.66 44.86 5.92l39.69-30.41c7.67-5.89 17.44-8 25.27-6.14l14.7 4.37-37.46 87.39c-12.62 29.48-1.31 64.01 26.3 80.31l84.98 50.17-27.47 87.73c-5.28 16.86 4.11 34.81 20.97 40.09 3.19 1 6.41 1.48 9.58 1.48 13.61 0 26.23-8.77 30.52-22.45l31.64-101.06c5.91-20.77-2.89-43.08-21.64-54.39l-61.24-36.14 31.31-78.28 20.27 41.43c8 16.34 24.92 26.89 43.11 26.89H384c17.67 0 32-14.33 32-32s-14.33-31.99-32-31.99z"],
	"rupee-sign": [320, 512, [], "f156", "M308 96c6.627 0 12-5.373 12-12V44c0-6.627-5.373-12-12-12H12C5.373 32 0 37.373 0 44v44.748c0 6.627 5.373 12 12 12h85.28c27.308 0 48.261 9.958 60.97 27.252H12c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h158.757c-6.217 36.086-32.961 58.632-74.757 58.632H12c-6.627 0-12 5.373-12 12v53.012c0 3.349 1.4 6.546 3.861 8.818l165.052 152.356a12.001 12.001 0 0 0 8.139 3.182h82.562c10.924 0 16.166-13.408 8.139-20.818L116.871 319.906c76.499-2.34 131.144-53.395 138.318-127.906H308c6.627 0 12-5.373 12-12v-40c0-6.627-5.373-12-12-12h-58.69c-3.486-11.541-8.28-22.246-14.252-32H308z"],
	"sad-cry": [496, 512, [], "f5b3", "M248 8C111 8 0 119 0 256c0 90.1 48.2 168.7 120 212.1V288c0-8.8 7.2-16 16-16s16 7.2 16 16v196.7c29.5 12.4 62 19.3 96 19.3s66.5-6.9 96-19.3V288c0-8.8 7.2-16 16-16s16 7.2 16 16v180.1C447.8 424.7 496 346 496 256 496 119 385 8 248 8zm-65.5 216.5c-14.8-13.2-46.2-13.2-61 0L112 233c-3.8 3.3-9.3 4-13.7 1.6-4.4-2.4-6.9-7.4-6.1-12.4 4-25.2 34.2-42.1 59.9-42.1S208 197 212 222.2c.8 5-1.7 10-6.1 12.4-5.8 3.1-11.2.7-13.7-1.6l-9.7-8.5zM248 416c-26.5 0-48-28.7-48-64s21.5-64 48-64 48 28.7 48 64-21.5 64-48 64zm149.8-181.5c-5.8 3.1-11.2.7-13.7-1.6l-9.5-8.5c-14.8-13.2-46.2-13.2-61 0L304 233c-3.8 3.3-9.3 4-13.7 1.6-4.4-2.4-6.9-7.4-6.1-12.4 4-25.2 34.2-42.1 59.9-42.1S400 197 404 222.2c.6 4.9-1.8 9.9-6.2 12.3z"],
	"sad-tear": [496, 512, [], "f5b4", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm80 168c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32zM152 416c-26.5 0-48-21-48-47 0-20 28.5-60.4 41.6-77.8 3.2-4.3 9.6-4.3 12.8 0C171.5 308.6 200 349 200 369c0 26-21.5 47-48 47zm16-176c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm170.2 154.2C315.8 367.4 282.9 352 248 352c-21.2 0-21.2-32 0-32 44.4 0 86.3 19.6 114.7 53.8 13.8 16.4-11.2 36.5-24.5 20.4z"],
	"satellite": [512, 512, [], "f7bf", "M502.60969,310.04206l-96.70393,96.71625a31.88151,31.88151,0,0,1-45.00765,0L280.572,326.34115l-9.89231,9.90759a190.56343,190.56343,0,0,1-5.40716,168.52287c-4.50077,8.50115-16.39342,9.59505-23.20707,2.79725L134.54715,400.05428l-17.7999,17.79929c.70324,2.60972,1.60965,5.00067,1.60965,7.79793a32.00544,32.00544,0,1,1-32.00544-32.00434c2.79735,0,5.18838.90637,7.7982,1.60959l17.7999-17.79929L4.43129,269.94287c-6.798-6.81342-5.70409-18.6119,2.79735-23.20627a190.58161,190.58161,0,0,1,168.52864-5.407l9.79854-9.79821-80.31053-80.41716a32.002,32.002,0,0,1,0-45.09987L201.96474,9.29814A31.62639,31.62639,0,0,1,224.46868,0a31.99951,31.99951,0,0,1,22.59759,9.29814l80.32615,80.30777,47.805-47.89713a33.6075,33.6075,0,0,1,47.50808,0l47.50807,47.50645a33.63308,33.63308,0,0,1,0,47.50644l-47.805,47.89713L502.71908,265.036A31.78938,31.78938,0,0,1,502.60969,310.04206ZM219.56159,197.433l73.82505-73.82252-68.918-68.9-73.80942,73.80689Zm237.74352,90.106-68.90233-68.9156-73.825,73.82252,68.918,68.9Z"],
	"satellite-dish": [512, 512, [], "f7c0", "M305.44954,462.59c7.39157,7.29792,6.18829,20.09661-3.00038,25.00356-77.713,41.80281-176.72559,29.9105-242.34331-35.7082C-5.49624,386.28227-17.404,287.362,24.41381,209.554c4.89125-9.095,17.68975-10.29834,25.00318-3.00043L166.22872,323.36708l27.39411-27.39452c-.68759-2.60974-1.594-5.00071-1.594-7.81361a32.00407,32.00407,0,1,1,32.00407,32.00455c-2.79723,0-5.20378-.89075-7.79786-1.594l-27.40974,27.41015ZM511.9758,303.06732a16.10336,16.10336,0,0,1-16.002,17.00242H463.86031a15.96956,15.96956,0,0,1-15.89265-15.00213C440.46671,175.5492,336.45348,70.53427,207.03078,63.53328a15.84486,15.84486,0,0,1-15.00191-15.90852V16.02652A16.09389,16.09389,0,0,1,209.031.02425C372.25491,8.61922,503.47472,139.841,511.9758,303.06732Zm-96.01221-.29692a16.21093,16.21093,0,0,1-16.11142,17.29934H367.645a16.06862,16.06862,0,0,1-15.89265-14.70522c-6.90712-77.01094-68.118-138.91037-144.92467-145.22376a15.94,15.94,0,0,1-14.79876-15.89289V112.13393a16.134,16.134,0,0,1,17.29908-16.096C319.45132,104.5391,407.55627,192.64538,415.96359,302.7704Z"],
	"save": [448, 512, [], "f0c7", "M433.941 129.941l-83.882-83.882A48 48 0 0 0 316.118 32H48C21.49 32 0 53.49 0 80v352c0 26.51 21.49 48 48 48h352c26.51 0 48-21.49 48-48V163.882a48 48 0 0 0-14.059-33.941zM224 416c-35.346 0-64-28.654-64-64 0-35.346 28.654-64 64-64s64 28.654 64 64c0 35.346-28.654 64-64 64zm96-304.52V212c0 6.627-5.373 12-12 12H76c-6.627 0-12-5.373-12-12V108c0-6.627 5.373-12 12-12h228.52c3.183 0 6.235 1.264 8.485 3.515l3.48 3.48A11.996 11.996 0 0 1 320 111.48z"],
	"school": [640, 512, [], "f549", "M0 224v272c0 8.84 7.16 16 16 16h80V192H32c-17.67 0-32 14.33-32 32zm360-48h-24v-40c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v64c0 4.42 3.58 8 8 8h48c4.42 0 8-3.58 8-8v-16c0-4.42-3.58-8-8-8zm137.75-63.96l-160-106.67a32.02 32.02 0 0 0-35.5 0l-160 106.67A32.002 32.002 0 0 0 128 138.66V512h128V368c0-8.84 7.16-16 16-16h96c8.84 0 16 7.16 16 16v144h128V138.67c0-10.7-5.35-20.7-14.25-26.63zM320 256c-44.18 0-80-35.82-80-80s35.82-80 80-80 80 35.82 80 80-35.82 80-80 80zm288-64h-64v320h80c8.84 0 16-7.16 16-16V224c0-17.67-14.33-32-32-32z"],
	"screwdriver": [512, 512, [], "f54a", "M448 0L320 96v62.06l-83.03 83.03c6.79 4.25 13.27 9.06 19.07 14.87 5.8 5.8 10.62 12.28 14.87 19.07L353.94 192H416l96-128-64-64zM128 278.59L10.92 395.67c-14.55 14.55-14.55 38.15 0 52.71l52.7 52.7c14.56 14.56 38.15 14.56 52.71 0L233.41 384c29.11-29.11 29.11-76.3 0-105.41s-76.3-29.11-105.41 0z"],
	"scroll": [640, 512, [], "f70e", "M48 0C21.53 0 0 21.53 0 48v64c0 8.84 7.16 16 16 16h80V48C96 21.53 74.47 0 48 0zm208 412.57V352h288V96c0-52.94-43.06-96-96-96H111.59C121.74 13.41 128 29.92 128 48v368c0 38.87 34.65 69.65 74.75 63.12C234.22 474 256 444.46 256 412.57zM288 384v32c0 52.93-43.06 96-96 96h336c61.86 0 112-50.14 112-112 0-8.84-7.16-16-16-16H288z"],
	"sd-card": [384, 512, [], "f7c2", "M320 0H128L0 128v320c0 35.3 28.7 64 64 64h256c35.3 0 64-28.7 64-64V64c0-35.3-28.7-64-64-64zM160 160h-48V64h48v96zm80 0h-48V64h48v96zm80 0h-48V64h48v96z"],
	"search": [512, 512, [], "f002", "M505 442.7L405.3 343c-4.5-4.5-10.6-7-17-7H372c27.6-35.3 44-79.7 44-128C416 93.1 322.9 0 208 0S0 93.1 0 208s93.1 208 208 208c48.3 0 92.7-16.4 128-44v16.3c0 6.4 2.5 12.5 7 17l99.7 99.7c9.4 9.4 24.6 9.4 33.9 0l28.3-28.3c9.4-9.4 9.4-24.6.1-34zM208 336c-70.7 0-128-57.2-128-128 0-70.7 57.2-128 128-128 70.7 0 128 57.2 128 128 0 70.7-57.2 128-128 128z"],
	"search-dollar": [512, 512, [], "f688", "M505.04 442.66l-99.71-99.69c-4.5-4.5-10.6-7-17-7h-16.3c27.6-35.3 44-79.69 44-127.99C416.03 93.09 322.92 0 208.02 0S0 93.09 0 207.98s93.11 207.98 208.02 207.98c48.3 0 92.71-16.4 128.01-44v16.3c0 6.4 2.5 12.5 7 17l99.71 99.69c9.4 9.4 24.6 9.4 33.9 0l28.3-28.3c9.4-9.4 9.4-24.59.1-33.99zm-297.02-90.7c-79.54 0-144-64.34-144-143.98 0-79.53 64.35-143.98 144-143.98 79.54 0 144 64.34 144 143.98 0 79.53-64.35 143.98-144 143.98zm27.11-152.54l-45.01-13.5c-5.16-1.55-8.77-6.78-8.77-12.73 0-7.27 5.3-13.19 11.8-13.19h28.11c4.56 0 8.96 1.29 12.82 3.72 3.24 2.03 7.36 1.91 10.13-.73l11.75-11.21c3.53-3.37 3.33-9.21-.57-12.14-9.1-6.83-20.08-10.77-31.37-11.35V112c0-4.42-3.58-8-8-8h-16c-4.42 0-8 3.58-8 8v16.12c-23.63.63-42.68 20.55-42.68 45.07 0 19.97 12.99 37.81 31.58 43.39l45.01 13.5c5.16 1.55 8.77 6.78 8.77 12.73 0 7.27-5.3 13.19-11.8 13.19h-28.1c-4.56 0-8.96-1.29-12.82-3.72-3.24-2.03-7.36-1.91-10.13.73l-11.75 11.21c-3.53 3.37-3.33 9.21.57 12.14 9.1 6.83 20.08 10.77 31.37 11.35V304c0 4.42 3.58 8 8 8h16c4.42 0 8-3.58 8-8v-16.12c23.63-.63 42.68-20.54 42.68-45.07 0-19.97-12.99-37.81-31.59-43.39z"],
	"search-location": [512, 512, [], "f689", "M505.04 442.66l-99.71-99.69c-4.5-4.5-10.6-7-17-7h-16.3c27.6-35.3 44-79.69 44-127.99C416.03 93.09 322.92 0 208.02 0S0 93.09 0 207.98s93.11 207.98 208.02 207.98c48.3 0 92.71-16.4 128.01-44v16.3c0 6.4 2.5 12.5 7 17l99.71 99.69c9.4 9.4 24.6 9.4 33.9 0l28.3-28.3c9.4-9.4 9.4-24.59.1-33.99zm-297.02-90.7c-79.54 0-144-64.34-144-143.98 0-79.53 64.35-143.98 144-143.98 79.54 0 144 64.34 144 143.98 0 79.53-64.35 143.98-144 143.98zm.02-239.96c-40.78 0-73.84 33.05-73.84 73.83 0 32.96 48.26 93.05 66.75 114.86a9.24 9.24 0 0 0 14.18 0c18.49-21.81 66.75-81.89 66.75-114.86 0-40.78-33.06-73.83-73.84-73.83zm0 96c-13.26 0-24-10.75-24-24 0-13.26 10.75-24 24-24s24 10.74 24 24c0 13.25-10.75 24-24 24z"],
	"search-minus": [512, 512, [], "f010", "M304 192v32c0 6.6-5.4 12-12 12H124c-6.6 0-12-5.4-12-12v-32c0-6.6 5.4-12 12-12h168c6.6 0 12 5.4 12 12zm201 284.7L476.7 505c-9.4 9.4-24.6 9.4-33.9 0L343 405.3c-4.5-4.5-7-10.6-7-17V372c-35.3 27.6-79.7 44-128 44C93.1 416 0 322.9 0 208S93.1 0 208 0s208 93.1 208 208c0 48.3-16.4 92.7-44 128h16.3c6.4 0 12.5 2.5 17 7l99.7 99.7c9.3 9.4 9.3 24.6 0 34zM344 208c0-75.2-60.8-136-136-136S72 132.8 72 208s60.8 136 136 136 136-60.8 136-136z"],
	"search-plus": [512, 512, [], "f00e", "M304 192v32c0 6.6-5.4 12-12 12h-56v56c0 6.6-5.4 12-12 12h-32c-6.6 0-12-5.4-12-12v-56h-56c-6.6 0-12-5.4-12-12v-32c0-6.6 5.4-12 12-12h56v-56c0-6.6 5.4-12 12-12h32c6.6 0 12 5.4 12 12v56h56c6.6 0 12 5.4 12 12zm201 284.7L476.7 505c-9.4 9.4-24.6 9.4-33.9 0L343 405.3c-4.5-4.5-7-10.6-7-17V372c-35.3 27.6-79.7 44-128 44C93.1 416 0 322.9 0 208S93.1 0 208 0s208 93.1 208 208c0 48.3-16.4 92.7-44 128h16.3c6.4 0 12.5 2.5 17 7l99.7 99.7c9.3 9.4 9.3 24.6 0 34zM344 208c0-75.2-60.8-136-136-136S72 132.8 72 208s60.8 136 136 136 136-60.8 136-136z"],
	"seedling": [512, 512, [], "f4d8", "M64 96H0c0 123.7 100.3 224 224 224v144c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V320C288 196.3 187.7 96 64 96zm384-64c-84.2 0-157.4 46.5-195.7 115.2 27.7 30.2 48.2 66.9 59 107.6C424 243.1 512 147.9 512 32h-64z"],
	"server": [512, 512, [], "f233", "M480 160H32c-17.673 0-32-14.327-32-32V64c0-17.673 14.327-32 32-32h448c17.673 0 32 14.327 32 32v64c0 17.673-14.327 32-32 32zm-48-88c-13.255 0-24 10.745-24 24s10.745 24 24 24 24-10.745 24-24-10.745-24-24-24zm-64 0c-13.255 0-24 10.745-24 24s10.745 24 24 24 24-10.745 24-24-10.745-24-24-24zm112 248H32c-17.673 0-32-14.327-32-32v-64c0-17.673 14.327-32 32-32h448c17.673 0 32 14.327 32 32v64c0 17.673-14.327 32-32 32zm-48-88c-13.255 0-24 10.745-24 24s10.745 24 24 24 24-10.745 24-24-10.745-24-24-24zm-64 0c-13.255 0-24 10.745-24 24s10.745 24 24 24 24-10.745 24-24-10.745-24-24-24zm112 248H32c-17.673 0-32-14.327-32-32v-64c0-17.673 14.327-32 32-32h448c17.673 0 32 14.327 32 32v64c0 17.673-14.327 32-32 32zm-48-88c-13.255 0-24 10.745-24 24s10.745 24 24 24 24-10.745 24-24-10.745-24-24-24zm-64 0c-13.255 0-24 10.745-24 24s10.745 24 24 24 24-10.745 24-24-10.745-24-24-24z"],
	"shapes": [512, 512, [], "f61f", "M128,256A128,128,0,1,0,256,384,128,128,0,0,0,128,256Zm379-54.86L400.07,18.29a37.26,37.26,0,0,0-64.14,0L229,201.14C214.76,225.52,232.58,256,261.09,256H474.91C503.42,256,521.24,225.52,507,201.14ZM480,288H320a32,32,0,0,0-32,32V480a32,32,0,0,0,32,32H480a32,32,0,0,0,32-32V320A32,32,0,0,0,480,288Z"],
	"share": [512, 512, [], "f064", "M503.691 189.836L327.687 37.851C312.281 24.546 288 35.347 288 56.015v80.053C127.371 137.907 0 170.1 0 322.326c0 61.441 39.581 122.309 83.333 154.132 13.653 9.931 33.111-2.533 28.077-18.631C66.066 312.814 132.917 274.316 288 272.085V360c0 20.7 24.3 31.453 39.687 18.164l176.004-152c11.071-9.562 11.086-26.753 0-36.328z"],
	"share-alt": [448, 512, [], "f1e0", "M352 320c-22.608 0-43.387 7.819-59.79 20.895l-102.486-64.054a96.551 96.551 0 0 0 0-41.683l102.486-64.054C308.613 184.181 329.392 192 352 192c53.019 0 96-42.981 96-96S405.019 0 352 0s-96 42.981-96 96c0 7.158.79 14.13 2.276 20.841L155.79 180.895C139.387 167.819 118.608 160 96 160c-53.019 0-96 42.981-96 96s42.981 96 96 96c22.608 0 43.387-7.819 59.79-20.895l102.486 64.054A96.301 96.301 0 0 0 256 416c0 53.019 42.981 96 96 96s96-42.981 96-96-42.981-96-96-96z"],
	"share-alt-square": [448, 512, [], "f1e1", "M448 80v352c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48V80c0-26.51 21.49-48 48-48h352c26.51 0 48 21.49 48 48zM304 296c-14.562 0-27.823 5.561-37.783 14.671l-67.958-40.775a56.339 56.339 0 0 0 0-27.793l67.958-40.775C276.177 210.439 289.438 216 304 216c30.928 0 56-25.072 56-56s-25.072-56-56-56-56 25.072-56 56c0 4.797.605 9.453 1.74 13.897l-67.958 40.775C171.823 205.561 158.562 200 144 200c-30.928 0-56 25.072-56 56s25.072 56 56 56c14.562 0 27.823-5.561 37.783-14.671l67.958 40.775a56.088 56.088 0 0 0-1.74 13.897c0 30.928 25.072 56 56 56s56-25.072 56-56C360 321.072 334.928 296 304 296z"],
	"share-square": [576, 512, [], "f14d", "M568.482 177.448L424.479 313.433C409.3 327.768 384 317.14 384 295.985v-71.963c-144.575.97-205.566 35.113-164.775 171.353 4.483 14.973-12.846 26.567-25.006 17.33C155.252 383.105 120 326.488 120 269.339c0-143.937 117.599-172.5 264-173.312V24.012c0-21.174 25.317-31.768 40.479-17.448l144.003 135.988c10.02 9.463 10.028 25.425 0 34.896zM384 379.128V448H64V128h50.916a11.99 11.99 0 0 0 8.648-3.693c14.953-15.568 32.237-27.89 51.014-37.676C185.708 80.83 181.584 64 169.033 64H48C21.49 64 0 85.49 0 112v352c0 26.51 21.49 48 48 48h352c26.51 0 48-21.49 48-48v-88.806c0-8.288-8.197-14.066-16.011-11.302a71.83 71.83 0 0 1-34.189 3.377c-7.27-1.046-13.8 4.514-13.8 11.859z"],
	"shekel-sign": [448, 512, [], "f20b", "M248 168v168c0 8.84 7.16 16 16 16h48c8.84 0 16-7.16 16-16V168c0-75.11-60.89-136-136-136H24C10.75 32 0 42.74 0 56v408c0 8.84 7.16 16 16 16h48c8.84 0 16-7.16 16-16V112h112c30.93 0 56 25.07 56 56zM432 32h-48c-8.84 0-16 7.16-16 16v296c0 30.93-25.07 56-56 56H200V176c0-8.84-7.16-16-16-16h-48c-8.84 0-16 7.16-16 16v280c0 13.25 10.75 24 24 24h168c75.11 0 136-60.89 136-136V48c0-8.84-7.16-16-16-16z"],
	"shield-alt": [512, 512, [], "f3ed", "M466.5 83.7l-192-80a48.15 48.15 0 0 0-36.9 0l-192 80C27.7 91.1 16 108.6 16 128c0 198.5 114.5 335.7 221.5 380.3 11.8 4.9 25.1 4.9 36.9 0C360.1 472.6 496 349.3 496 128c0-19.4-11.7-36.9-29.5-44.3zM256.1 446.3l-.1-381 175.9 73.3c-3.3 151.4-82.1 261.1-175.8 307.7z"],
	"shield-virus": [512, 512, [], "e06c", "M224,192a16,16,0,1,0,16,16A16,16,0,0,0,224,192ZM466.5,83.68l-192-80A57.4,57.4,0,0,0,256.05,0a57.4,57.4,0,0,0-18.46,3.67l-192,80A47.93,47.93,0,0,0,16,128C16,326.5,130.5,463.72,237.5,508.32a48.09,48.09,0,0,0,36.91,0C360.09,472.61,496,349.3,496,128A48,48,0,0,0,466.5,83.68ZM384,256H371.88c-28.51,0-42.79,34.47-22.63,54.63l8.58,8.57a16,16,0,1,1-22.63,22.63l-8.57-8.58C306.47,313.09,272,327.37,272,355.88V368a16,16,0,0,1-32,0V355.88c0-28.51-34.47-42.79-54.63-22.63l-8.57,8.58a16,16,0,0,1-22.63-22.63l8.58-8.57c20.16-20.16,5.88-54.63-22.63-54.63H128a16,16,0,0,1,0-32h12.12c28.51,0,42.79-34.47,22.63-54.63l-8.58-8.57a16,16,0,0,1,22.63-22.63l8.57,8.58c20.16,20.16,54.63,5.88,54.63-22.63V112a16,16,0,0,1,32,0v12.12c0,28.51,34.47,42.79,54.63,22.63l8.57-8.58a16,16,0,0,1,22.63,22.63l-8.58,8.57C329.09,189.53,343.37,224,371.88,224H384a16,16,0,0,1,0,32Zm-96,0a16,16,0,1,0,16,16A16,16,0,0,0,288,256Z"],
	"ship": [640, 512, [], "f21a", "M496.616 372.639l70.012-70.012c16.899-16.9 9.942-45.771-12.836-53.092L512 236.102V96c0-17.673-14.327-32-32-32h-64V24c0-13.255-10.745-24-24-24H248c-13.255 0-24 10.745-24 24v40h-64c-17.673 0-32 14.327-32 32v140.102l-41.792 13.433c-22.753 7.313-29.754 36.173-12.836 53.092l70.012 70.012C125.828 416.287 85.587 448 24 448c-13.255 0-24 10.745-24 24v16c0 13.255 10.745 24 24 24 61.023 0 107.499-20.61 143.258-59.396C181.677 487.432 216.021 512 256 512h128c39.979 0 74.323-24.568 88.742-59.396C508.495 491.384 554.968 512 616 512c13.255 0 24-10.745 24-24v-16c0-13.255-10.745-24-24-24-60.817 0-101.542-31.001-119.384-75.361zM192 128h256v87.531l-118.208-37.995a31.995 31.995 0 0 0-19.584 0L192 215.531V128z"],
	"shipping-fast": [640, 512, [], "f48b", "M624 352h-16V243.9c0-12.7-5.1-24.9-14.1-33.9L494 110.1c-9-9-21.2-14.1-33.9-14.1H416V48c0-26.5-21.5-48-48-48H112C85.5 0 64 21.5 64 48v48H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h272c4.4 0 8 3.6 8 8v16c0 4.4-3.6 8-8 8H40c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h208c4.4 0 8 3.6 8 8v16c0 4.4-3.6 8-8 8H8c-4.4 0-8 3.6-8 8v16c0 4.4 3.6 8 8 8h208c4.4 0 8 3.6 8 8v16c0 4.4-3.6 8-8 8H64v128c0 53 43 96 96 96s96-43 96-96h128c0 53 43 96 96 96s96-43 96-96h48c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zM160 464c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm320 0c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm80-208H416V144h44.1l99.9 99.9V256z"],
	"shoe-prints": [640, 512, [], "f54b", "M192 160h32V32h-32c-35.35 0-64 28.65-64 64s28.65 64 64 64zM0 416c0 35.35 28.65 64 64 64h32V352H64c-35.35 0-64 28.65-64 64zm337.46-128c-34.91 0-76.16 13.12-104.73 32-24.79 16.38-44.52 32-104.73 32v128l57.53 15.97c26.21 7.28 53.01 13.12 80.31 15.05 32.69 2.31 65.6.67 97.58-6.2C472.9 481.3 512 429.22 512 384c0-64-84.18-96-174.54-96zM491.42 7.19C459.44.32 426.53-1.33 393.84.99c-27.3 1.93-54.1 7.77-80.31 15.04L256 32v128c60.2 0 79.94 15.62 104.73 32 28.57 18.88 69.82 32 104.73 32C555.82 224 640 192 640 128c0-45.22-39.1-97.3-148.58-120.81z"],
	"shopping-bag": [448, 512, [], "f290", "M352 160v-32C352 57.42 294.579 0 224 0 153.42 0 96 57.42 96 128v32H0v272c0 44.183 35.817 80 80 80h288c44.183 0 80-35.817 80-80V160h-96zm-192-32c0-35.29 28.71-64 64-64s64 28.71 64 64v32H160v-32zm160 120c-13.255 0-24-10.745-24-24s10.745-24 24-24 24 10.745 24 24-10.745 24-24 24zm-192 0c-13.255 0-24-10.745-24-24s10.745-24 24-24 24 10.745 24 24-10.745 24-24 24z"],
	"shopping-basket": [576, 512, [], "f291", "M576 216v16c0 13.255-10.745 24-24 24h-8l-26.113 182.788C514.509 462.435 494.257 480 470.37 480H105.63c-23.887 0-44.139-17.565-47.518-41.212L32 256h-8c-13.255 0-24-10.745-24-24v-16c0-13.255 10.745-24 24-24h67.341l106.78-146.821c10.395-14.292 30.407-17.453 44.701-7.058 14.293 10.395 17.453 30.408 7.058 44.701L170.477 192h235.046L326.12 82.821c-10.395-14.292-7.234-34.306 7.059-44.701 14.291-10.395 34.306-7.235 44.701 7.058L484.659 192H552c13.255 0 24 10.745 24 24zM312 392V280c0-13.255-10.745-24-24-24s-24 10.745-24 24v112c0 13.255 10.745 24 24 24s24-10.745 24-24zm112 0V280c0-13.255-10.745-24-24-24s-24 10.745-24 24v112c0 13.255 10.745 24 24 24s24-10.745 24-24zm-224 0V280c0-13.255-10.745-24-24-24s-24 10.745-24 24v112c0 13.255 10.745 24 24 24s24-10.745 24-24z"],
	"shopping-cart": [576, 512, [], "f07a", "M528.12 301.319l47.273-208C578.806 78.301 567.391 64 551.99 64H159.208l-9.166-44.81C147.758 8.021 137.93 0 126.529 0H24C10.745 0 0 10.745 0 24v16c0 13.255 10.745 24 24 24h69.883l70.248 343.435C147.325 417.1 136 435.222 136 456c0 30.928 25.072 56 56 56s56-25.072 56-56c0-15.674-6.447-29.835-16.824-40h209.647C430.447 426.165 424 440.326 424 456c0 30.928 25.072 56 56 56s56-25.072 56-56c0-22.172-12.888-41.332-31.579-50.405l5.517-24.276c3.413-15.018-8.002-29.319-23.403-29.319H218.117l-6.545-32h293.145c11.206 0 20.92-7.754 23.403-18.681z"],
	"shower": [512, 512, [], "f2cc", "M304,320a16,16,0,1,0,16,16A16,16,0,0,0,304,320Zm32-96a16,16,0,1,0,16,16A16,16,0,0,0,336,224Zm32,64a16,16,0,1,0-16-16A16,16,0,0,0,368,288Zm-32,32a16,16,0,1,0-16-16A16,16,0,0,0,336,320Zm-32-64a16,16,0,1,0,16,16A16,16,0,0,0,304,256Zm128-32a16,16,0,1,0-16-16A16,16,0,0,0,432,224Zm-48,16a16,16,0,1,0,16-16A16,16,0,0,0,384,240Zm-16-48a16,16,0,1,0,16,16A16,16,0,0,0,368,192Zm96,32a16,16,0,1,0,16,16A16,16,0,0,0,464,224Zm32-32a16,16,0,1,0,16,16A16,16,0,0,0,496,192Zm-64,64a16,16,0,1,0,16,16A16,16,0,0,0,432,256Zm-32,32a16,16,0,1,0,16,16A16,16,0,0,0,400,288Zm-64,64a16,16,0,1,0,16,16A16,16,0,0,0,336,352Zm-32,32a16,16,0,1,0,16,16A16,16,0,0,0,304,384Zm64-64a16,16,0,1,0,16,16A16,16,0,0,0,368,320Zm21.65-218.35-11.3-11.31a16,16,0,0,0-22.63,0L350.05,96A111.19,111.19,0,0,0,272,64c-19.24,0-37.08,5.3-52.9,13.85l-10-10A121.72,121.72,0,0,0,123.44,32C55.49,31.5,0,92.91,0,160.85V464a16,16,0,0,0,16,16H48a16,16,0,0,0,16-16V158.4c0-30.15,21-58.2,51-61.93a58.38,58.38,0,0,1,48.93,16.67l10,10C165.3,138.92,160,156.76,160,176a111.23,111.23,0,0,0,32,78.05l-5.66,5.67a16,16,0,0,0,0,22.62l11.3,11.31a16,16,0,0,0,22.63,0L389.65,124.28A16,16,0,0,0,389.65,101.65Z"],
	"shuttle-van": [640, 512, [], "f5b6", "M628.88 210.65L494.39 49.27A48.01 48.01 0 0 0 457.52 32H32C14.33 32 0 46.33 0 64v288c0 17.67 14.33 32 32 32h32c0 53.02 42.98 96 96 96s96-42.98 96-96h128c0 53.02 42.98 96 96 96s96-42.98 96-96h32c17.67 0 32-14.33 32-32V241.38c0-11.23-3.94-22.1-11.12-30.73zM64 192V96h96v96H64zm96 240c-26.51 0-48-21.49-48-48s21.49-48 48-48 48 21.49 48 48-21.49 48-48 48zm160-240h-96V96h96v96zm160 240c-26.51 0-48-21.49-48-48s21.49-48 48-48 48 21.49 48 48-21.49 48-48 48zm-96-240V96h66.02l80 96H384z"],
	"sign": [512, 512, [], "f4d9", "M496 64H128V16c0-8.8-7.2-16-16-16H80c-8.8 0-16 7.2-16 16v48H16C7.2 64 0 71.2 0 80v32c0 8.8 7.2 16 16 16h48v368c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V128h368c8.8 0 16-7.2 16-16V80c0-8.8-7.2-16-16-16zM160 384h320V160H160v224z"],
	"sign-in-alt": [512, 512, [], "f2f6", "M416 448h-84c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h84c17.7 0 32-14.3 32-32V160c0-17.7-14.3-32-32-32h-84c-6.6 0-12-5.4-12-12V76c0-6.6 5.4-12 12-12h84c53 0 96 43 96 96v192c0 53-43 96-96 96zm-47-201L201 79c-15-15-41-4.5-41 17v96H24c-13.3 0-24 10.7-24 24v96c0 13.3 10.7 24 24 24h136v96c0 21.5 26 32 41 17l168-168c9.3-9.4 9.3-24.6 0-34z"],
	"sign-language": [448, 512, [], "f2a7", "M91.434 483.987c-.307-16.018 13.109-29.129 29.13-29.129h62.293v-5.714H56.993c-16.021 0-29.437-13.111-29.13-29.129C28.16 404.491 40.835 392 56.428 392h126.429v-5.714H29.136c-16.021 0-29.437-13.111-29.13-29.129.297-15.522 12.973-28.013 28.566-28.013h154.286v-5.714H57.707c-16.021 0-29.437-13.111-29.13-29.129.297-15.522 12.973-28.013 28.566-28.013h168.566l-31.085-22.606c-12.762-9.281-15.583-27.149-6.302-39.912 9.281-12.761 27.15-15.582 39.912-6.302l123.361 89.715a34.287 34.287 0 0 1 14.12 27.728v141.136c0 15.91-10.946 29.73-26.433 33.374l-80.471 18.934a137.16 137.16 0 0 1-31.411 3.646H120c-15.593-.001-28.269-12.492-28.566-28.014zm73.249-225.701h36.423l-11.187-8.136c-18.579-13.511-20.313-40.887-3.17-56.536l-13.004-16.7c-9.843-12.641-28.43-15.171-40.88-5.088-12.065 9.771-14.133 27.447-4.553 39.75l36.371 46.71zm283.298-2.103l-5.003-152.452c-.518-15.771-13.722-28.136-29.493-27.619-15.773.518-28.137 13.722-27.619 29.493l1.262 38.415L283.565 11.019c-9.58-12.303-27.223-14.63-39.653-5.328-12.827 9.599-14.929 28.24-5.086 40.881l76.889 98.745-4.509 3.511-94.79-121.734c-9.58-12.303-27.223-14.63-39.653-5.328-12.827 9.599-14.929 28.24-5.086 40.881l94.443 121.288-4.509 3.511-77.675-99.754c-9.58-12.303-27.223-14.63-39.653-5.328-12.827 9.599-14.929 28.24-5.086 40.881l52.053 66.849c12.497-8.257 29.055-8.285 41.69.904l123.36 89.714c10.904 7.93 17.415 20.715 17.415 34.198v16.999l61.064-47.549a34.285 34.285 0 0 0 13.202-28.177z"],
	"sign-out-alt": [512, 512, [], "f2f5", "M497 273L329 441c-15 15-41 4.5-41-17v-96H152c-13.3 0-24-10.7-24-24v-96c0-13.3 10.7-24 24-24h136V88c0-21.4 25.9-32 41-17l168 168c9.3 9.4 9.3 24.6 0 34zM192 436v-40c0-6.6-5.4-12-12-12H96c-17.7 0-32-14.3-32-32V160c0-17.7 14.3-32 32-32h84c6.6 0 12-5.4 12-12V76c0-6.6-5.4-12-12-12H96c-53 0-96 43-96 96v192c0 53 43 96 96 96h84c6.6 0 12-5.4 12-12z"],
	"signal": [640, 512, [], "f012", "M216 288h-48c-8.84 0-16 7.16-16 16v192c0 8.84 7.16 16 16 16h48c8.84 0 16-7.16 16-16V304c0-8.84-7.16-16-16-16zM88 384H40c-8.84 0-16 7.16-16 16v96c0 8.84 7.16 16 16 16h48c8.84 0 16-7.16 16-16v-96c0-8.84-7.16-16-16-16zm256-192h-48c-8.84 0-16 7.16-16 16v288c0 8.84 7.16 16 16 16h48c8.84 0 16-7.16 16-16V208c0-8.84-7.16-16-16-16zm128-96h-48c-8.84 0-16 7.16-16 16v384c0 8.84 7.16 16 16 16h48c8.84 0 16-7.16 16-16V112c0-8.84-7.16-16-16-16zM600 0h-48c-8.84 0-16 7.16-16 16v480c0 8.84 7.16 16 16 16h48c8.84 0 16-7.16 16-16V16c0-8.84-7.16-16-16-16z"],
	"signature": [640, 512, [], "f5b7", "M623.2 192c-51.8 3.5-125.7 54.7-163.1 71.5-29.1 13.1-54.2 24.4-76.1 24.4-22.6 0-26-16.2-21.3-51.9 1.1-8 11.7-79.2-42.7-76.1-25.1 1.5-64.3 24.8-169.5 126L192 182.2c30.4-75.9-53.2-151.5-129.7-102.8L7.4 116.3C0 121-2.2 130.9 2.5 138.4l17.2 27c4.7 7.5 14.6 9.7 22.1 4.9l58-38.9c18.4-11.7 40.7 7.2 32.7 27.1L34.3 404.1C27.5 421 37 448 64 448c8.3 0 16.5-3.2 22.6-9.4 42.2-42.2 154.7-150.7 211.2-195.8-2.2 28.5-2.1 58.9 20.6 83.8 15.3 16.8 37.3 25.3 65.5 25.3 35.6 0 68-14.6 102.3-30 33-14.8 99-62.6 138.4-65.8 8.5-.7 15.2-7.3 15.2-15.8v-32.1c.2-9.1-7.5-16.8-16.6-16.2z"],
	"sim-card": [384, 512, [], "f7c4", "M0 64v384c0 35.3 28.7 64 64 64h256c35.3 0 64-28.7 64-64V128L256 0H64C28.7 0 0 28.7 0 64zm224 192h-64v-64h64v64zm96 0h-64v-64h32c17.7 0 32 14.3 32 32v32zm-64 128h64v32c0 17.7-14.3 32-32 32h-32v-64zm-96 0h64v64h-64v-64zm-96 0h64v64H96c-17.7 0-32-14.3-32-32v-32zm0-96h256v64H64v-64zm0-64c0-17.7 14.3-32 32-32h32v64H64v-32z"],
	"sink": [512, 512, [], "e06d", "M32,416a96,96,0,0,0,96,96H384a96,96,0,0,0,96-96V384H32ZM496,288H400V256h64a16,16,0,0,0,16-16V224a16,16,0,0,0-16-16H384a32,32,0,0,0-32,32v48H288V96a32,32,0,0,1,64,0v16a16,16,0,0,0,16,16h32a16,16,0,0,0,16-16V96A96.16,96.16,0,0,0,300.87,1.86C255.29,10.71,224,53.36,224,99.79V288H160V240a32,32,0,0,0-32-32H48a16,16,0,0,0-16,16v16a16,16,0,0,0,16,16h64v32H16A16,16,0,0,0,0,304v32a16,16,0,0,0,16,16H496a16,16,0,0,0,16-16V304A16,16,0,0,0,496,288Z"],
	"sitemap": [640, 512, [], "f0e8", "M128 352H32c-17.67 0-32 14.33-32 32v96c0 17.67 14.33 32 32 32h96c17.67 0 32-14.33 32-32v-96c0-17.67-14.33-32-32-32zm-24-80h192v48h48v-48h192v48h48v-57.59c0-21.17-17.23-38.41-38.41-38.41H344v-64h40c17.67 0 32-14.33 32-32V32c0-17.67-14.33-32-32-32H256c-17.67 0-32 14.33-32 32v96c0 17.67 14.33 32 32 32h40v64H94.41C73.23 224 56 241.23 56 262.41V320h48v-48zm264 80h-96c-17.67 0-32 14.33-32 32v96c0 17.67 14.33 32 32 32h96c17.67 0 32-14.33 32-32v-96c0-17.67-14.33-32-32-32zm240 0h-96c-17.67 0-32 14.33-32 32v96c0 17.67 14.33 32 32 32h96c17.67 0 32-14.33 32-32v-96c0-17.67-14.33-32-32-32z"],
	"skating": [448, 512, [], "f7c5", "M400 0c-26.5 0-48 21.5-48 48s21.5 48 48 48 48-21.5 48-48-21.5-48-48-48zm0 448c-8.8 0-16 7.2-16 16s-7.2 16-16 16h-96c-8.8 0-16 7.2-16 16s7.2 16 16 16h96c26.5 0 48-21.5 48-48 0-8.8-7.2-16-16-16zm-282.2 8.6c-6.2 6.2-16.4 6.3-22.6 0l-67.9-67.9c-6.2-6.2-16.4-6.2-22.6 0s-6.2 16.4 0 22.6l67.9 67.9c9.4 9.4 21.7 14 34 14s24.6-4.7 33.9-14c6.2-6.2 6.2-16.4 0-22.6s-16.4-6.3-22.7 0zm56.1-179.8l-93.7 93.7c-12.5 12.5-12.5 32.8 0 45.2 6.2 6.2 14.4 9.4 22.6 9.4s16.4-3.1 22.6-9.4l91.9-91.9-30.2-30.2c-5-5-9.4-10.7-13.2-16.8zM128 160h105.5l-20.1 17.2c-13.5 11.5-21.6 28.4-22.3 46.1-.7 17.8 6.1 35.2 18.7 47.7l78.2 78.2V432c0 17.7 14.3 32 32 32s32-14.3 32-32v-89.4c0-12.6-5.1-25-14.1-33.9l-61-61c.5-.4 1.2-.6 1.7-1.1l82.3-82.3c11.5-11.5 14.9-28.6 8.7-43.6-6.2-15-20.7-24.7-37-24.7H128c-17.7 0-32 14.3-32 32s14.3 32 32 32z"],
	"skiing": [512, 512, [], "f7c9", "M432 96c26.5 0 48-21.5 48-48S458.5 0 432 0s-48 21.5-48 48 21.5 48 48 48zm73 356.1c-9.4-9.4-24.6-9.4-33.9 0-12.1 12.1-30.5 15.4-45.1 8.7l-135.8-70.2 49.2-73.8c12.7-19 10.2-44.5-6-60.6L293 215.7l-107-53.1c-2.9 19.9 3.4 40 17.7 54.4l75.1 75.2-45.9 68.8L35 258.7c-11.7-6-26.2-1.5-32.3 10.3-6.1 11.8-1.5 26.3 10.3 32.3l391.9 202.5c11.9 5.5 24.5 8.1 37.1 8.1 23.2 0 46-9 63-26 9.3-9.3 9.3-24.5 0-33.8zM120 91.6l-11.5 22.5c14.4 7.3 31.2 4.9 42.8-4.8l47.2 23.4c-.1.1-.1.2-.2.3l114.5 56.8 32.4-13 6.4 19.1c4 12.1 12.6 22 24 27.7l58.1 29c15.9 7.9 35 1.5 42.9-14.3 7.9-15.8 1.5-35-14.3-42.9l-52.1-26.1-17.1-51.2c-8.1-24.2-40.9-56.6-84.5-39.2l-81.2 32.5-62.5-31c.3-14.5-7.2-28.6-20.9-35.6l-11.1 21.7h-.2l-34.4-7c-1.8-.4-3.7.2-5 1.7-1.9 2.2-1.7 5.5.5 7.4l26.2 23z"],
	"skiing-nordic": [576, 512, [], "f7ca", "M336 96c26.5 0 48-21.5 48-48S362.5 0 336 0s-48 21.5-48 48 21.5 48 48 48zm216 320c-13.2 0-24 10.7-24 24 0 13.2-10.8 24-24 24h-69.5L460 285.6c11.7-4.7 20.1-16.2 20.1-29.6 0-17.7-14.3-32-32-32h-44L378 170.8c-12.5-25.5-35.5-44.2-61.8-50.9L245 98.7c-28.3-6.8-57.8-.5-80.8 17.1l-39.7 30.4c-14 10.7-16.7 30.8-5.9 44.9.7.9 1.7 1.3 2.4 2.1L66.9 464H24c-13.2 0-24 10.7-24 24s10.8 24 24 24h480c39.7 0 72-32.3 72-72 0-13.2-10.8-24-24-24zm-260.5 48h-96.9l43.1-91-22-13c-12.1-7.2-21.9-16.9-29.5-27.8L123.7 464H99.5l52.3-261.4c4.1-1 8.1-2.9 11.7-5.6l39.7-30.4c7.7-5.9 17.4-8 25.3-6.1l14.7 4.4-37.5 87.4c-12.6 29.5-1.3 64 26.3 80.3l85 50.2-25.5 81.2zm110.6 0h-43.6l23.6-75.5c5.9-20.8-2.9-43.1-21.6-54.4L299.3 298l31.3-78.3 20.3 41.4c8 16.3 24.9 26.9 43.1 26.9h33.3l-25.2 176z"],
	"skull": [512, 512, [], "f54c", "M256 0C114.6 0 0 100.3 0 224c0 70.1 36.9 132.6 94.5 173.7 9.6 6.9 15.2 18.1 13.5 29.9l-9.4 66.2c-1.4 9.6 6 18.2 15.7 18.2H192v-56c0-4.4 3.6-8 8-8h16c4.4 0 8 3.6 8 8v56h64v-56c0-4.4 3.6-8 8-8h16c4.4 0 8 3.6 8 8v56h77.7c9.7 0 17.1-8.6 15.7-18.2l-9.4-66.2c-1.7-11.7 3.8-23 13.5-29.9C475.1 356.6 512 294.1 512 224 512 100.3 397.4 0 256 0zm-96 320c-35.3 0-64-28.7-64-64s28.7-64 64-64 64 28.7 64 64-28.7 64-64 64zm192 0c-35.3 0-64-28.7-64-64s28.7-64 64-64 64 28.7 64 64-28.7 64-64 64z"],
	"skull-crossbones": [448, 512, [], "f714", "M439.15 453.06L297.17 384l141.99-69.06c7.9-3.95 11.11-13.56 7.15-21.46L432 264.85c-3.95-7.9-13.56-11.11-21.47-7.16L224 348.41 37.47 257.69c-7.9-3.95-17.51-.75-21.47 7.16L1.69 293.48c-3.95 7.9-.75 17.51 7.15 21.46L150.83 384 8.85 453.06c-7.9 3.95-11.11 13.56-7.15 21.47l14.31 28.63c3.95 7.9 13.56 11.11 21.47 7.15L224 419.59l186.53 90.72c7.9 3.95 17.51.75 21.47-7.15l14.31-28.63c3.95-7.91.74-17.52-7.16-21.47zM150 237.28l-5.48 25.87c-2.67 12.62 5.42 24.85 16.45 24.85h126.08c11.03 0 19.12-12.23 16.45-24.85l-5.5-25.87c41.78-22.41 70-62.75 70-109.28C368 57.31 303.53 0 224 0S80 57.31 80 128c0 46.53 28.22 86.87 70 109.28zM280 112c17.65 0 32 14.35 32 32s-14.35 32-32 32-32-14.35-32-32 14.35-32 32-32zm-112 0c17.65 0 32 14.35 32 32s-14.35 32-32 32-32-14.35-32-32 14.35-32 32-32z"],
	"slash": [640, 512, [], "f715", "M594.53 508.63L6.18 53.9c-6.97-5.42-8.23-15.47-2.81-22.45L23.01 6.18C28.43-.8 38.49-2.06 45.47 3.37L633.82 458.1c6.97 5.42 8.23 15.47 2.81 22.45l-19.64 25.27c-5.42 6.98-15.48 8.23-22.46 2.81z"],
	"sleigh": [640, 512, [], "f7cc", "M612.7 350.7l-9.3-7.4c-6.9-5.5-17-4.4-22.5 2.5l-10 12.5c-5.5 6.9-4.4 17 2.5 22.5l9.3 7.4c5.9 4.7 9.2 11.7 9.2 19.2 0 13.6-11 24.6-24.6 24.6H48c-8.8 0-16 7.2-16 16v16c0 8.8 7.2 16 16 16h516c39 0 73.7-29.3 75.9-68.3 1.4-23.8-8.7-46.3-27.2-61zM32 224c0 59.6 40.9 109.2 96 123.5V400h64v-48h192v48h64v-48c53 0 96-43 96-96v-96c17.7 0 32-14.3 32-32s-14.3-32-32-32h-96v64c0 35.3-28.7 64-64 64h-20.7c-65.8 0-125.9-37.2-155.3-96-29.4-58.8-89.6-96-155.3-96H32C14.3 32 0 46.3 0 64s14.3 32 32 32v128z"],
	"sliders-h": [512, 512, [], "f1de", "M496 384H160v-16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v16H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h80v16c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-16h336c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zm0-160h-80v-16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v16H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h336v16c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-16h80c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zm0-160H288V48c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v16H16C7.2 64 0 71.2 0 80v32c0 8.8 7.2 16 16 16h208v16c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-16h208c8.8 0 16-7.2 16-16V80c0-8.8-7.2-16-16-16z"],
	"smile": [496, 512, [], "f118", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm80 168c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32zm-160 0c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32zm194.8 170.2C334.3 380.4 292.5 400 248 400s-86.3-19.6-114.8-53.8c-13.6-16.3 11-36.7 24.6-20.5 22.4 26.9 55.2 42.2 90.2 42.2s67.8-15.4 90.2-42.2c13.4-16.2 38.1 4.2 24.6 20.5z"],
	"smile-beam": [496, 512, [], "f5b8", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zM112 223.4c3.3-42.1 32.2-71.4 56-71.4s52.7 29.3 56 71.4c.7 8.6-10.8 11.9-14.9 4.5l-9.5-17c-7.7-13.7-19.2-21.6-31.5-21.6s-23.8 7.9-31.5 21.6l-9.5 17c-4.3 7.4-15.8 4-15.1-4.5zm250.8 122.8C334.3 380.4 292.5 400 248 400s-86.3-19.6-114.8-53.8c-13.5-16.3 11-36.7 24.6-20.5 22.4 26.9 55.2 42.2 90.2 42.2s67.8-15.4 90.2-42.2c13.6-16.2 38.1 4.3 24.6 20.5zm6.2-118.3l-9.5-17c-7.7-13.7-19.2-21.6-31.5-21.6s-23.8 7.9-31.5 21.6l-9.5 17c-4.1 7.3-15.6 4-14.9-4.5 3.3-42.1 32.2-71.4 56-71.4s52.7 29.3 56 71.4c.6 8.6-11 11.9-15.1 4.5z"],
	"smile-wink": [496, 512, [], "f4da", "M0 256c0 137 111 248 248 248s248-111 248-248S385 8 248 8 0 119 0 256zm200-48c0 17.7-14.3 32-32 32s-32-14.3-32-32 14.3-32 32-32 32 14.3 32 32zm158.5 16.5c-14.8-13.2-46.2-13.2-61 0L288 233c-8.3 7.4-21.6.4-19.8-10.8 4-25.2 34.2-42.1 59.9-42.1S384 197 388 222.2c1.7 11.1-11.4 18.3-19.8 10.8l-9.7-8.5zM157.8 325.8C180.2 352.7 213 368 248 368s67.8-15.4 90.2-42.2c13.6-16.2 38.1 4.2 24.6 20.5C334.3 380.4 292.5 400 248 400s-86.3-19.6-114.8-53.8c-13.5-16.3 11.2-36.7 24.6-20.4z"],
	"smog": [640, 512, [], "f75f", "M624 368H80c-8.8 0-16 7.2-16 16v16c0 8.8 7.2 16 16 16h544c8.8 0 16-7.2 16-16v-16c0-8.8-7.2-16-16-16zm-480 96H16c-8.8 0-16 7.2-16 16v16c0 8.8 7.2 16 16 16h128c8.8 0 16-7.2 16-16v-16c0-8.8-7.2-16-16-16zm416 0H224c-8.8 0-16 7.2-16 16v16c0 8.8 7.2 16 16 16h336c8.8 0 16-7.2 16-16v-16c0-8.8-7.2-16-16-16zM144 288h156.1c22.5 19.7 51.6 32 83.9 32s61.3-12.3 83.9-32H528c61.9 0 112-50.1 112-112S589.9 64 528 64c-18 0-34.7 4.6-49.7 12.1C454 31 406.8 0 352 0c-41 0-77.8 17.3-104 44.8C221.8 17.3 185 0 144 0 64.5 0 0 64.5 0 144s64.5 144 144 144z"],
	"smoking": [640, 512, [], "f48d", "M632 352h-48c-4.4 0-8 3.6-8 8v144c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V360c0-4.4-3.6-8-8-8zM553.3 87.1c-5.7-3.8-9.3-10-9.3-16.8V8c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v62.3c0 22 10.2 43.4 28.6 55.4 42.2 27.3 67.4 73.8 67.4 124V280c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8v-30.3c0-65.5-32.4-126.2-86.7-162.6zM432 352H48c-26.5 0-48 21.5-48 48v64c0 26.5 21.5 48 48 48h384c8.8 0 16-7.2 16-16V368c0-8.8-7.2-16-16-16zm-32 112H224v-64h176v64zm87.7-322.4C463.8 125 448 99.3 448 70.3V8c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v66.4c0 43.7 24.6 81.6 60.3 106.7 22.4 15.7 35.7 41.2 35.7 68.6V280c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8v-30.3c0-43.3-21-83.4-56.3-108.1zM536 352h-48c-4.4 0-8 3.6-8 8v144c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V360c0-4.4-3.6-8-8-8z"],
	"smoking-ban": [512, 512, [], "f54d", "M96 304c0 8.8 7.2 16 16 16h117.5l-96-96H112c-8.8 0-16 7.2-16 16v64zM256 0C114.6 0 0 114.6 0 256s114.6 256 256 256 256-114.6 256-256S397.4 0 256 0zm0 448c-105.9 0-192-86.1-192-192 0-41.4 13.3-79.7 35.7-111.1l267.4 267.4C335.7 434.7 297.4 448 256 448zm45.2-192H384v32h-50.8l-32-32zm111.1 111.1L365.2 320H400c8.8 0 16-7.2 16-16v-64c0-8.8-7.2-16-16-16H269.2L144.9 99.7C176.3 77.3 214.6 64 256 64c105.9 0 192 86.1 192 192 0 41.4-13.3 79.7-35.7 111.1zM320.6 128c-15.6 0-28.6-11.2-31.4-25.9-.7-3.6-4-6.1-7.7-6.1h-16.2c-5 0-8.7 4.5-8 9.4 4.6 30.9 31.2 54.6 63.3 54.6 15.6 0 28.6 11.2 31.4 25.9.7 3.6 4 6.1 7.7 6.1h16.2c5 0 8.7-4.5 8-9.4-4.6-30.9-31.2-54.6-63.3-54.6z"],
	"sms": [512, 512, [], "f7cd", "M256 32C114.6 32 0 125.1 0 240c0 49.6 21.4 95 57 130.7C44.5 421.1 2.7 466 2.2 466.5c-2.2 2.3-2.8 5.7-1.5 8.7 1.3 3 4.1 4.8 7.3 4.8 66.3 0 116-31.8 140.6-51.4 32.7 12.3 69 19.4 107.4 19.4 141.4 0 256-93.1 256-208S397.4 32 256 32zM128.2 304H116c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h12.3c6 0 10.4-3.5 10.4-6.6 0-1.3-.8-2.7-2.1-3.8l-21.9-18.8c-8.5-7.2-13.3-17.5-13.3-28.1 0-21.3 19-38.6 42.4-38.6H156c4.4 0 8 3.6 8 8v16c0 4.4-3.6 8-8 8h-12.3c-6 0-10.4 3.5-10.4 6.6 0 1.3.8 2.7 2.1 3.8l21.9 18.8c8.5 7.2 13.3 17.5 13.3 28.1.1 21.3-19 38.6-42.4 38.6zm191.8-8c0 4.4-3.6 8-8 8h-16c-4.4 0-8-3.6-8-8v-68.2l-24.8 55.8c-2.9 5.9-11.4 5.9-14.3 0L224 227.8V296c0 4.4-3.6 8-8 8h-16c-4.4 0-8-3.6-8-8V192c0-8.8 7.2-16 16-16h16c6.1 0 11.6 3.4 14.3 8.8l17.7 35.4 17.7-35.4c2.7-5.4 8.3-8.8 14.3-8.8h16c8.8 0 16 7.2 16 16v104zm48.3 8H356c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h12.3c6 0 10.4-3.5 10.4-6.6 0-1.3-.8-2.7-2.1-3.8l-21.9-18.8c-8.5-7.2-13.3-17.5-13.3-28.1 0-21.3 19-38.6 42.4-38.6H396c4.4 0 8 3.6 8 8v16c0 4.4-3.6 8-8 8h-12.3c-6 0-10.4 3.5-10.4 6.6 0 1.3.8 2.7 2.1 3.8l21.9 18.8c8.5 7.2 13.3 17.5 13.3 28.1.1 21.3-18.9 38.6-42.3 38.6z"],
	"snowboarding": [512, 512, [], "f7ce", "M432 96c26.5 0 48-21.5 48-48S458.5 0 432 0s-48 21.5-48 48 21.5 48 48 48zm28.8 153.6c5.8 4.3 12.5 6.4 19.2 6.4 9.7 0 19.3-4.4 25.6-12.8 10.6-14.1 7.8-34.2-6.4-44.8l-111.4-83.5c-13.8-10.3-29.1-18.4-45.4-23.8l-63.7-21.2-26.1-52.1C244.7 2 225.5-4.4 209.7 3.5c-15.8 7.9-22.2 27.1-14.3 42.9l29.1 58.1c5.7 11.4 15.6 19.9 27.7 24l16.4 5.5-41.2 20.6c-21.8 10.9-35.4 32.8-35.4 57.2v53.1l-74.1 24.7c-16.8 5.6-25.8 23.7-20.2 40.5 1.7 5.2 4.9 9.4 8.7 12.9l-38.7-14.1c-9.7-3.5-17.4-10.6-21.8-20-5.6-12-19.9-17.2-31.9-11.6s-17.2 19.9-11.6 31.9c9.8 21 27.1 36.9 48.9 44.8l364.8 132.7c9.7 3.5 19.7 5.3 29.7 5.3 12.5 0 24.9-2.7 36.5-8.2 12-5.6 17.2-19.9 11.6-31.9S474 454.7 462 460.3c-9.3 4.4-19.8 4.8-29.5 1.3l-90.8-33.1c8.7-4.1 15.6-11.8 17.8-21.9l21.9-102c3.9-18.2-3.2-37.2-18.1-48.4l-52-39 66-30.5 83.5 62.9zm-144.4 51.7l-19.7 92c-1.5 7.1-.1 13.9 2.8 20l-169.4-61.6c2.7-.2 5.4-.4 8-1.3l85-28.4c19.6-6.5 32.8-24.8 32.8-45.5V256l60.5 45.3z"],
	"snowflake": [448, 512, [], "f2dc", "M440.3 345.2l-33.8-19.5 26-7c8.2-2.2 13.1-10.7 10.9-18.9l-4-14.9c-2.2-8.2-10.7-13.1-18.9-10.9l-70.8 19-63.9-37 63.8-36.9 70.8 19c8.2 2.2 16.7-2.7 18.9-10.9l4-14.9c2.2-8.2-2.7-16.7-10.9-18.9l-26-7 33.8-19.5c7.4-4.3 9.9-13.7 5.7-21.1L430.4 119c-4.3-7.4-13.7-9.9-21.1-5.7l-33.8 19.5 7-26c2.2-8.2-2.7-16.7-10.9-18.9l-14.9-4c-8.2-2.2-16.7 2.7-18.9 10.9l-19 70.8-62.8 36.2v-77.5l53.7-53.7c6.2-6.2 6.2-16.4 0-22.6l-11.3-11.3c-6.2-6.2-16.4-6.2-22.6 0L256 56.4V16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v40.4l-19.7-19.7c-6.2-6.2-16.4-6.2-22.6 0L138.3 48c-6.3 6.2-6.3 16.4 0 22.6l53.7 53.7v77.5l-62.8-36.2-19-70.8c-2.2-8.2-10.7-13.1-18.9-10.9l-14.9 4c-8.2 2.2-13.1 10.7-10.9 18.9l7 26-33.8-19.5c-7.4-4.3-16.8-1.7-21.1 5.7L2.1 145.7c-4.3 7.4-1.7 16.8 5.7 21.1l33.8 19.5-26 7c-8.3 2.2-13.2 10.7-11 19l4 14.9c2.2 8.2 10.7 13.1 18.9 10.9l70.8-19 63.8 36.9-63.8 36.9-70.8-19c-8.2-2.2-16.7 2.7-18.9 10.9l-4 14.9c-2.2 8.2 2.7 16.7 10.9 18.9l26 7-33.8 19.6c-7.4 4.3-9.9 13.7-5.7 21.1l15.5 26.8c4.3 7.4 13.7 9.9 21.1 5.7l33.8-19.5-7 26c-2.2 8.2 2.7 16.7 10.9 18.9l14.9 4c8.2 2.2 16.7-2.7 18.9-10.9l19-70.8 62.8-36.2v77.5l-53.7 53.7c-6.3 6.2-6.3 16.4 0 22.6l11.3 11.3c6.2 6.2 16.4 6.2 22.6 0l19.7-19.7V496c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-40.4l19.7 19.7c6.2 6.2 16.4 6.2 22.6 0l11.3-11.3c6.2-6.2 6.2-16.4 0-22.6L256 387.7v-77.5l62.8 36.2 19 70.8c2.2 8.2 10.7 13.1 18.9 10.9l14.9-4c8.2-2.2 13.1-10.7 10.9-18.9l-7-26 33.8 19.5c7.4 4.3 16.8 1.7 21.1-5.7l15.5-26.8c4.3-7.3 1.8-16.8-5.6-21z"],
	"snowman": [512, 512, [], "f7d0", "M510.9 152.3l-5.9-14.5c-3.3-8-12.6-11.9-20.8-8.7L456 140.6v-29c0-8.6-7.2-15.6-16-15.6h-16c-8.8 0-16 7-16 15.6v46.9c0 .5.3 1 .3 1.5l-56.4 23c-5.9-10-13.3-18.9-22-26.6 13.6-16.6 22-37.4 22-60.5 0-53-43-96-96-96s-96 43-96 96c0 23.1 8.5 43.9 22 60.5-8.7 7.7-16 16.6-22 26.6l-56.4-23c.1-.5.3-1 .3-1.5v-46.9C104 103 96.8 96 88 96H72c-8.8 0-16 7-16 15.6v29l-28.1-11.5c-8.2-3.2-17.5.7-20.8 8.7l-5.9 14.5c-3.3 8 .7 17.1 8.9 20.3l135.2 55.2c-.4 4-1.2 8-1.2 12.2 0 10.1 1.7 19.6 4.2 28.9C120.9 296.4 104 334.2 104 376c0 54 28.4 100.9 70.8 127.8 9.3 5.9 20.3 8.2 31.3 8.2h99.2c13.3 0 26.3-4.1 37.2-11.7 46.5-32.3 74.4-89.4 62.9-152.6-5.5-30.2-20.5-57.6-41.6-79 2.5-9.2 4.2-18.7 4.2-28.7 0-4.2-.8-8.1-1.2-12.2L502 172.6c8.1-3.1 12.1-12.2 8.9-20.3zM224 96c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zm32 272c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zm0-64c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zm0-64c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16zm0-88s-16-23.2-16-32 7.2-16 16-16 16 7.2 16 16-16 32-16 32zm32-56c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16z"],
	"snowplow": [640, 512, [], "f7d2", "M120 376c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zm80 0c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zm80 0c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zm80 0c-13.3 0-24 10.7-24 24s10.7 24 24 24 24-10.7 24-24-10.7-24-24-24zm238.6 49.4c-14.5-14.5-22.6-34.1-22.6-54.6V269.2c0-20.5 8.1-40.1 22.6-54.6l36.7-36.7c6.2-6.2 6.2-16.4 0-22.6l-22.6-22.6c-6.2-6.2-16.4-6.2-22.6 0l-36.7 36.7c-26.5 26.5-41.4 62.4-41.4 99.9V288h-64v-50.9c0-8.7-1.8-17.2-5.2-25.2L364.5 29.1C356.9 11.4 339.6 0 320.3 0H176c-26.5 0-48 21.5-48 48v112h-16c-26.5 0-48 21.5-48 48v91.2C26.3 317.2 0 355.4 0 400c0 61.9 50.1 112 112 112h256c61.9 0 112-50.1 112-112 0-17.3-4.2-33.4-11.2-48H512v18.7c0 37.5 14.9 73.4 41.4 99.9l36.7 36.7c6.2 6.2 16.4 6.2 22.6 0l22.6-22.6c6.2-6.2 6.2-16.4 0-22.6l-36.7-36.7zM192 64h117.8l68.6 160H256l-64-64V64zm176 384H112c-26.5 0-48-21.5-48-48s21.5-48 48-48h256c26.5 0 48 21.5 48 48s-21.5 48-48 48z"],
	"soap": [512, 512, [], "e06e", "M416,192a95.42,95.42,0,0,1-30.94,70.21A95.8,95.8,0,0,1,352,448H160a96,96,0,0,1,0-192h88.91A95.3,95.3,0,0,1,224,192H96A96,96,0,0,0,0,288V416a96,96,0,0,0,96,96H416a96,96,0,0,0,96-96V288A96,96,0,0,0,416,192Zm-96,64a64,64,0,1,0-64-64A64,64,0,0,0,320,256ZM208,96a48,48,0,1,0-48-48A48,48,0,0,0,208,96ZM384,64a32,32,0,1,0-32-32A32,32,0,0,0,384,64ZM160,288a64,64,0,0,0,0,128H352a64,64,0,0,0,0-128Z"],
	"socks": [512, 512, [], "f696", "M214.66 311.01L288 256V96H128v176l-86.65 64.61c-39.4 29.56-53.86 84.42-29.21 127.06C30.39 495.25 63.27 512 96.08 512c20.03 0 40.25-6.25 57.52-19.2l21.86-16.39c-29.85-55.38-13.54-125.84 39.2-165.4zM288 32c0-11.05 3.07-21.3 8.02-30.38C293.4.92 290.85 0 288 0H160c-17.67 0-32 14.33-32 32v32h160V32zM480 0H352c-17.67 0-32 14.33-32 32v32h192V32c0-17.67-14.33-32-32-32zM320 272l-86.13 64.61c-39.4 29.56-53.86 84.42-29.21 127.06 18.25 31.58 50.61 48.33 83.42 48.33 20.03 0 40.25-6.25 57.52-19.2l115.2-86.4A127.997 127.997 0 0 0 512 304V96H320v176z"],
	"solar-panel": [640, 512, [], "f5ba", "M431.98 448.01l-47.97.05V416h-128v32.21l-47.98.05c-8.82.01-15.97 7.16-15.98 15.99l-.05 31.73c-.01 8.85 7.17 16.03 16.02 16.02l223.96-.26c8.82-.01 15.97-7.16 15.98-15.98l.04-31.73c.01-8.85-7.17-16.03-16.02-16.02zM585.2 26.74C582.58 11.31 568.99 0 553.06 0H86.93C71 0 57.41 11.31 54.79 26.74-3.32 369.16.04 348.08.03 352c-.03 17.32 14.29 32 32.6 32h574.74c18.23 0 32.51-14.56 32.59-31.79.02-4.08 3.35 16.95-54.76-325.47zM259.83 64h120.33l9.77 96H250.06l9.77-96zm-75.17 256H71.09L90.1 208h105.97l-11.41 112zm16.29-160H98.24l16.29-96h96.19l-9.77 96zm32.82 160l11.4-112h149.65l11.4 112H233.77zm195.5-256h96.19l16.29 96H439.04l-9.77-96zm26.06 256l-11.4-112H549.9l19.01 112H455.33z"],
	"sort": [320, 512, [], "f0dc", "M41 288h238c21.4 0 32.1 25.9 17 41L177 448c-9.4 9.4-24.6 9.4-33.9 0L24 329c-15.1-15.1-4.4-41 17-41zm255-105L177 64c-9.4-9.4-24.6-9.4-33.9 0L24 183c-15.1 15.1-4.4 41 17 41h238c21.4 0 32.1-25.9 17-41z"],
	"sort-alpha-down": [448, 512, [], "f15d", "M176 352h-48V48a16 16 0 0 0-16-16H80a16 16 0 0 0-16 16v304H16c-14.19 0-21.36 17.24-11.29 27.31l80 96a16 16 0 0 0 22.62 0l80-96C197.35 369.26 190.22 352 176 352zm240-64H288a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h56l-61.26 70.45A32 32 0 0 0 272 446.37V464a16 16 0 0 0 16 16h128a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-56l61.26-70.45A32 32 0 0 0 432 321.63V304a16 16 0 0 0-16-16zm31.06-85.38l-59.27-160A16 16 0 0 0 372.72 32h-41.44a16 16 0 0 0-15.07 10.62l-59.27 160A16 16 0 0 0 272 224h24.83a16 16 0 0 0 15.23-11.08l4.42-12.92h71l4.41 12.92A16 16 0 0 0 407.16 224H432a16 16 0 0 0 15.06-21.38zM335.61 144L352 96l16.39 48z"],
	"sort-alpha-down-alt": [448, 512, [], "f881", "M176 352h-48V48a16 16 0 0 0-16-16H80a16 16 0 0 0-16 16v304H16c-14.19 0-21.36 17.24-11.29 27.31l80 96a16 16 0 0 0 22.62 0l80-96C197.35 369.26 190.22 352 176 352zm112-128h128a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-56l61.26-70.45A32 32 0 0 0 432 65.63V48a16 16 0 0 0-16-16H288a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h56l-61.26 70.45A32 32 0 0 0 272 190.37V208a16 16 0 0 0 16 16zm159.06 234.62l-59.27-160A16 16 0 0 0 372.72 288h-41.44a16 16 0 0 0-15.07 10.62l-59.27 160A16 16 0 0 0 272 480h24.83a16 16 0 0 0 15.23-11.08l4.42-12.92h71l4.41 12.92A16 16 0 0 0 407.16 480H432a16 16 0 0 0 15.06-21.38zM335.61 400L352 352l16.39 48z"],
	"sort-alpha-up": [448, 512, [], "f15e", "M16 160h48v304a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V160h48c14.21 0 21.38-17.24 11.31-27.31l-80-96a16 16 0 0 0-22.62 0l-80 96C-5.35 142.74 1.78 160 16 160zm400 128H288a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h56l-61.26 70.45A32 32 0 0 0 272 446.37V464a16 16 0 0 0 16 16h128a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-56l61.26-70.45A32 32 0 0 0 432 321.63V304a16 16 0 0 0-16-16zm31.06-85.38l-59.27-160A16 16 0 0 0 372.72 32h-41.44a16 16 0 0 0-15.07 10.62l-59.27 160A16 16 0 0 0 272 224h24.83a16 16 0 0 0 15.23-11.08l4.42-12.92h71l4.41 12.92A16 16 0 0 0 407.16 224H432a16 16 0 0 0 15.06-21.38zM335.61 144L352 96l16.39 48z"],
	"sort-alpha-up-alt": [448, 512, [], "f882", "M16 160h48v304a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V160h48c14.21 0 21.38-17.24 11.31-27.31l-80-96a16 16 0 0 0-22.62 0l-80 96C-5.35 142.74 1.78 160 16 160zm272 64h128a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-56l61.26-70.45A32 32 0 0 0 432 65.63V48a16 16 0 0 0-16-16H288a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h56l-61.26 70.45A32 32 0 0 0 272 190.37V208a16 16 0 0 0 16 16zm159.06 234.62l-59.27-160A16 16 0 0 0 372.72 288h-41.44a16 16 0 0 0-15.07 10.62l-59.27 160A16 16 0 0 0 272 480h24.83a16 16 0 0 0 15.23-11.08l4.42-12.92h71l4.41 12.92A16 16 0 0 0 407.16 480H432a16 16 0 0 0 15.06-21.38zM335.61 400L352 352l16.39 48z"],
	"sort-amount-down": [512, 512, [], "f160", "M304 416h-64a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h64a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm-128-64h-48V48a16 16 0 0 0-16-16H80a16 16 0 0 0-16 16v304H16c-14.19 0-21.37 17.24-11.29 27.31l80 96a16 16 0 0 0 22.62 0l80-96C197.35 369.26 190.22 352 176 352zm256-192H240a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h192a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm-64 128H240a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h128a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zM496 32H240a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h256a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16z"],
	"sort-amount-down-alt": [512, 512, [], "f884", "M240 96h64a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16h-64a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm0 128h128a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16H240a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm256 192H240a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h256a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm-256-64h192a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16H240a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm-64 0h-48V48a16 16 0 0 0-16-16H80a16 16 0 0 0-16 16v304H16c-14.19 0-21.37 17.24-11.29 27.31l80 96a16 16 0 0 0 22.62 0l80-96C197.35 369.26 190.22 352 176 352z"],
	"sort-amount-up": [512, 512, [], "f161", "M304 416h-64a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h64a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zM16 160h48v304a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V160h48c14.21 0 21.38-17.24 11.31-27.31l-80-96a16 16 0 0 0-22.62 0l-80 96C-5.35 142.74 1.77 160 16 160zm416 0H240a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h192a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm-64 128H240a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h128a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zM496 32H240a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h256a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16z"],
	"sort-amount-up-alt": [512, 512, [], "f885", "M240 96h64a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16h-64a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm0 128h128a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16H240a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm256 192H240a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h256a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm-256-64h192a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16H240a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zM16 160h48v304a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V160h48c14.21 0 21.39-17.24 11.31-27.31l-80-96a16 16 0 0 0-22.62 0l-80 96C-5.35 142.74 1.78 160 16 160z"],
	"sort-down": [320, 512, [], "f0dd", "M41 288h238c21.4 0 32.1 25.9 17 41L177 448c-9.4 9.4-24.6 9.4-33.9 0L24 329c-15.1-15.1-4.4-41 17-41z"],
	"sort-numeric-down": [448, 512, [], "f162", "M304 96h16v64h-16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h96a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-16V48a16 16 0 0 0-16-16h-48a16 16 0 0 0-14.29 8.83l-16 32A16 16 0 0 0 304 96zm26.15 162.91a79 79 0 0 0-55 54.17c-14.25 51.05 21.21 97.77 68.85 102.53a84.07 84.07 0 0 1-20.85 12.91c-7.57 3.4-10.8 12.47-8.18 20.34l9.9 20c2.87 8.63 12.53 13.49 20.9 9.91 58-24.76 86.25-61.61 86.25-132V336c-.02-51.21-48.4-91.34-101.85-77.09zM352 356a20 20 0 1 1 20-20 20 20 0 0 1-20 20zm-176-4h-48V48a16 16 0 0 0-16-16H80a16 16 0 0 0-16 16v304H16c-14.19 0-21.36 17.24-11.29 27.31l80 96a16 16 0 0 0 22.62 0l80-96C197.35 369.26 190.22 352 176 352z"],
	"sort-numeric-down-alt": [448, 512, [], "f886", "M176 352h-48V48a16 16 0 0 0-16-16H80a16 16 0 0 0-16 16v304H16c-14.19 0-21.36 17.24-11.29 27.31l80 96a16 16 0 0 0 22.62 0l80-96C197.35 369.26 190.22 352 176 352zm224 64h-16V304a16 16 0 0 0-16-16h-48a16 16 0 0 0-14.29 8.83l-16 32A16 16 0 0 0 304 352h16v64h-16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h96a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zM330.17 34.91a79 79 0 0 0-55 54.17c-14.27 51.05 21.19 97.77 68.83 102.53a84.07 84.07 0 0 1-20.85 12.91c-7.57 3.4-10.8 12.47-8.18 20.34l9.9 20c2.87 8.63 12.53 13.49 20.9 9.91 58-24.77 86.25-61.61 86.25-132V112c-.02-51.21-48.4-91.34-101.85-77.09zM352 132a20 20 0 1 1 20-20 20 20 0 0 1-20 20z"],
	"sort-numeric-up": [448, 512, [], "f163", "M330.17 258.91a79 79 0 0 0-55 54.17c-14.27 51.05 21.19 97.77 68.83 102.53a84.07 84.07 0 0 1-20.85 12.91c-7.57 3.4-10.8 12.47-8.18 20.34l9.9 20c2.87 8.63 12.53 13.49 20.9 9.91 58-24.76 86.25-61.61 86.25-132V336c-.02-51.21-48.4-91.34-101.85-77.09zM352 356a20 20 0 1 1 20-20 20 20 0 0 1-20 20zM304 96h16v64h-16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h96a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-16V48a16 16 0 0 0-16-16h-48a16 16 0 0 0-14.29 8.83l-16 32A16 16 0 0 0 304 96zM107.31 36.69a16 16 0 0 0-22.62 0l-80 96C-5.35 142.74 1.78 160 16 160h48v304a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V160h48c14.21 0 21.38-17.24 11.31-27.31z"],
	"sort-numeric-up-alt": [448, 512, [], "f887", "M107.31 36.69a16 16 0 0 0-22.62 0l-80 96C-5.35 142.74 1.78 160 16 160h48v304a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V160h48c14.21 0 21.38-17.24 11.31-27.31zM400 416h-16V304a16 16 0 0 0-16-16h-48a16 16 0 0 0-14.29 8.83l-16 32A16 16 0 0 0 304 352h16v64h-16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h96a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zM330.17 34.91a79 79 0 0 0-55 54.17c-14.27 51.05 21.19 97.77 68.83 102.53a84.07 84.07 0 0 1-20.85 12.91c-7.57 3.4-10.8 12.47-8.18 20.34l9.9 20c2.87 8.63 12.53 13.49 20.9 9.91 58-24.77 86.25-61.61 86.25-132V112c-.02-51.21-48.4-91.34-101.85-77.09zM352 132a20 20 0 1 1 20-20 20 20 0 0 1-20 20z"],
	"sort-up": [320, 512, [], "f0de", "M279 224H41c-21.4 0-32.1-25.9-17-41L143 64c9.4-9.4 24.6-9.4 33.9 0l119 119c15.2 15.1 4.5 41-16.9 41z"],
	"spa": [576, 512, [], "f5bb", "M568.25 192c-29.04.13-135.01 6.16-213.84 83-33.12 29.63-53.36 63.3-66.41 94.86-13.05-31.56-33.29-65.23-66.41-94.86-78.83-76.84-184.8-82.87-213.84-83-4.41-.02-7.79 3.4-7.75 7.82.23 27.92 7.14 126.14 88.77 199.3C172.79 480.94 256 480 288 480s115.19.95 199.23-80.88c81.64-73.17 88.54-171.38 88.77-199.3.04-4.42-3.34-7.84-7.75-7.82zM287.98 302.6c12.82-18.85 27.6-35.78 44.09-50.52 19.09-18.61 39.58-33.3 60.26-45.18-16.44-70.5-51.72-133.05-96.73-172.22-4.11-3.58-11.02-3.58-15.14 0-44.99 39.14-80.27 101.63-96.74 172.07 20.37 11.7 40.5 26.14 59.22 44.39a282.768 282.768 0 0 1 45.04 51.46z"],
	"space-shuttle": [640, 512, [], "f197", "M592.604 208.244C559.735 192.836 515.777 184 472 184H186.327c-4.952-6.555-10.585-11.978-16.72-16H376C229.157 137.747 219.403 32 96.003 32H96v128H80V32c-26.51 0-48 28.654-48 64v64c-23.197 0-32 10.032-32 24v40c0 13.983 8.819 24 32 24v16c-23.197 0-32 10.032-32 24v40c0 13.983 8.819 24 32 24v64c0 35.346 21.49 64 48 64V352h16v128h.003c123.4 0 133.154-105.747 279.997-136H169.606c6.135-4.022 11.768-9.445 16.72-16H472c43.777 0 87.735-8.836 120.604-24.244C622.282 289.845 640 271.992 640 256s-17.718-33.845-47.396-47.756zM488 296a8 8 0 0 1-8-8v-64a8 8 0 0 1 8-8c31.909 0 31.942 80 0 80z"],
	"spell-check": [576, 512, [], "f891", "M272 256h91.36c43.2 0 82-32.2 84.51-75.34a79.82 79.82 0 0 0-25.26-63.07 79.81 79.81 0 0 0 9.06-44.91C427.9 30.57 389.3 0 347 0h-75a16 16 0 0 0-16 16v224a16 16 0 0 0 16 16zm40-200h40a24 24 0 0 1 0 48h-40zm0 96h56a24 24 0 0 1 0 48h-56zM155.12 22.25A32 32 0 0 0 124.64 0H99.36a32 32 0 0 0-30.48 22.25L.59 235.73A16 16 0 0 0 16 256h24.93a16 16 0 0 0 15.42-11.73L68.29 208h87.42l11.94 36.27A16 16 0 0 0 183.07 256H208a16 16 0 0 0 15.42-20.27zM89.37 144L112 75.3l22.63 68.7zm482 132.48l-45.21-45.3a15.88 15.88 0 0 0-22.59 0l-151.5 151.5-55.41-55.5a15.88 15.88 0 0 0-22.59 0l-45.3 45.3a16 16 0 0 0 0 22.59l112 112.21a15.89 15.89 0 0 0 22.6 0l208-208.21a16 16 0 0 0-.02-22.59z"],
	"spider": [576, 512, [], "f717", "M151.17 167.35L177.1 176h4.67l5.22-26.12c.72-3.58 1.8-7.58 3.21-11.79l-20.29-40.58 23.8-71.39c2.79-8.38-1.73-17.44-10.12-20.24L168.42.82c-8.38-2.8-17.45 1.73-20.24 10.12l-25.89 77.68a32.04 32.04 0 0 0 1.73 24.43l27.15 54.3zm422.14 182.03l-52.75-79.12a32.002 32.002 0 0 0-26.62-14.25H416l68.99-24.36a32.03 32.03 0 0 0 16.51-12.61l53.6-80.41c4.9-7.35 2.91-17.29-4.44-22.19l-13.31-8.88c-7.35-4.9-17.29-2.91-22.19 4.44l-50.56 75.83L404.1 208H368l-10.37-51.85C355.44 145.18 340.26 96 288 96c-52.26 0-67.44 49.18-69.63 60.15L208 208h-36.1l-60.49-20.17L60.84 112c-4.9-7.35-14.83-9.34-22.19-4.44l-13.31 8.88c-7.35 4.9-9.34 14.83-4.44 22.19l53.6 80.41a32.03 32.03 0 0 0 16.51 12.61L160 256H82.06a32.02 32.02 0 0 0-26.63 14.25L2.69 349.38c-4.9 7.35-2.92 17.29 4.44 22.19l13.31 8.88c7.35 4.9 17.29 2.91 22.19-4.44l48-72h47.06l-60.83 97.33A31.988 31.988 0 0 0 72 418.3V496c0 8.84 7.16 16 16 16h16c8.84 0 16-7.16 16-16v-73.11l74.08-118.53c-1.01 14.05-2.08 28.11-2.08 42.21C192 399.64 232.76 448 288 448s96-48.36 96-101.43c0-14.1-1.08-28.16-2.08-42.21L456 422.89V496c0 8.84 7.16 16 16 16h16c8.84 0 16-7.16 16-16v-77.71c0-6-1.69-11.88-4.86-16.96L438.31 304h47.06l48 72c4.9 7.35 14.84 9.34 22.19 4.44l13.31-8.88c7.36-4.9 9.34-14.83 4.44-22.18zM406.09 97.51l-20.29 40.58c1.41 4.21 2.49 8.21 3.21 11.79l5.22 26.12h4.67l25.93-8.65 27.15-54.3a31.995 31.995 0 0 0 1.73-24.43l-25.89-77.68C425.03 2.56 415.96-1.98 407.58.82l-15.17 5.06c-8.38 2.8-12.91 11.86-10.12 20.24l23.8 71.39z"],
	"spinner": [512, 512, [], "f110", "M304 48c0 26.51-21.49 48-48 48s-48-21.49-48-48 21.49-48 48-48 48 21.49 48 48zm-48 368c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48zm208-208c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48zM96 256c0-26.51-21.49-48-48-48S0 229.49 0 256s21.49 48 48 48 48-21.49 48-48zm12.922 99.078c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48c0-26.509-21.491-48-48-48zm294.156 0c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48c0-26.509-21.49-48-48-48zM108.922 60.922c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.491-48-48-48z"],
	"splotch": [512, 512, [], "f5bc", "M472.29 195.89l-67.06-22.95c-19.28-6.6-33.54-20.92-38.14-38.3L351.1 74.19c-11.58-43.77-76.57-57.13-109.98-22.62l-46.14 47.67c-13.26 13.71-33.54 20.93-54.2 19.31l-71.88-5.62c-52.05-4.07-86.93 44.88-59.03 82.83l38.54 52.42c11.08 15.07 12.82 33.86 4.64 50.24L24.62 355.4c-20.59 41.25 22.84 84.87 73.49 73.81l69.96-15.28c20.11-4.39 41.45 0 57.07 11.73l54.32 40.83c39.32 29.56 101.04 7.57 104.45-37.22l4.7-61.86c1.35-17.79 12.8-33.86 30.63-42.99l62-31.74c44.88-22.96 39.59-80.17-8.95-96.79z"],
	"spray-can": [512, 512, [], "f5bd", "M224 32c0-17.67-14.33-32-32-32h-64c-17.67 0-32 14.33-32 32v96h128V32zm256 96c-17.67 0-32 14.33-32 32s14.33 32 32 32 32-14.33 32-32-14.33-32-32-32zm-256 32H96c-53.02 0-96 42.98-96 96v224c0 17.67 14.33 32 32 32h256c17.67 0 32-14.33 32-32V256c0-53.02-42.98-96-96-96zm-64 256c-44.18 0-80-35.82-80-80s35.82-80 80-80 80 35.82 80 80-35.82 80-80 80zM480 96c17.67 0 32-14.33 32-32s-14.33-32-32-32-32 14.33-32 32 14.33 32 32 32zm-96 32c-17.67 0-32 14.33-32 32s14.33 32 32 32 32-14.33 32-32-14.33-32-32-32zm-96-96c-17.67 0-32 14.33-32 32s14.33 32 32 32 32-14.33 32-32-14.33-32-32-32zm96 0c-17.67 0-32 14.33-32 32s14.33 32 32 32 32-14.33 32-32-14.33-32-32-32zm96 192c-17.67 0-32 14.33-32 32s14.33 32 32 32 32-14.33 32-32-14.33-32-32-32z"],
	"square": [448, 512, [], "f0c8", "M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48z"],
	"square-full": [512, 512, [], "f45c", "M512 512H0V0h512v512z"],
	"square-root-alt": [576, 512, [], "f698", "M571.31 251.31l-22.62-22.62c-6.25-6.25-16.38-6.25-22.63 0L480 274.75l-46.06-46.06c-6.25-6.25-16.38-6.25-22.63 0l-22.62 22.62c-6.25 6.25-6.25 16.38 0 22.63L434.75 320l-46.06 46.06c-6.25 6.25-6.25 16.38 0 22.63l22.62 22.62c6.25 6.25 16.38 6.25 22.63 0L480 365.25l46.06 46.06c6.25 6.25 16.38 6.25 22.63 0l22.62-22.62c6.25-6.25 6.25-16.38 0-22.63L525.25 320l46.06-46.06c6.25-6.25 6.25-16.38 0-22.63zM552 0H307.65c-14.54 0-27.26 9.8-30.95 23.87l-84.79 322.8-58.41-106.1A32.008 32.008 0 0 0 105.47 224H24c-13.25 0-24 10.74-24 24v48c0 13.25 10.75 24 24 24h43.62l88.88 163.73C168.99 503.5 186.3 512 204.94 512c17.27 0 44.44-9 54.28-41.48L357.03 96H552c13.25 0 24-10.75 24-24V24c0-13.26-10.75-24-24-24z"],
	"stamp": [512, 512, [], "f5bf", "M32 512h448v-64H32v64zm384-256h-66.56c-16.26 0-29.44-13.18-29.44-29.44v-9.46c0-27.37 8.88-53.41 21.46-77.72 9.11-17.61 12.9-38.39 9.05-60.42-6.77-38.78-38.47-70.7-77.26-77.45C212.62-9.04 160 37.33 160 96c0 14.16 3.12 27.54 8.69 39.58C182.02 164.43 192 194.7 192 226.49v.07c0 16.26-13.18 29.44-29.44 29.44H96c-53.02 0-96 42.98-96 96v32c0 17.67 14.33 32 32 32h448c17.67 0 32-14.33 32-32v-32c0-53.02-42.98-96-96-96z"],
	"star": [576, 512, [], "f005", "M259.3 17.8L194 150.2 47.9 171.5c-26.2 3.8-36.7 36.1-17.7 54.6l105.7 103-25 145.5c-4.5 26.3 23.2 46 46.4 33.7L288 439.6l130.7 68.7c23.2 12.2 50.9-7.4 46.4-33.7l-25-145.5 105.7-103c19-18.5 8.5-50.8-17.7-54.6L382 150.2 316.7 17.8c-11.7-23.6-45.6-23.9-57.4 0z"],
	"star-and-crescent": [512, 512, [], "f699", "M340.47 466.36c-1.45 0-6.89.46-9.18.46-116.25 0-210.82-94.57-210.82-210.82S215.04 45.18 331.29 45.18c2.32 0 7.7.46 9.18.46 7.13 0 13.33-5.03 14.75-12.07 1.46-7.25-2.55-14.49-9.47-17.09C316.58 5.54 286.39 0 256 0 114.84 0 0 114.84 0 256s114.84 256 256 256c30.23 0 60.28-5.49 89.32-16.32 5.96-2.02 10.28-7.64 10.28-14.26 0-8.09-6.39-15.06-15.13-15.06zm162.99-252.5l-76.38-11.1-34.16-69.21c-1.83-3.7-5.38-5.55-8.93-5.55s-7.1 1.85-8.93 5.55l-34.16 69.21-76.38 11.1c-8.17 1.18-11.43 11.22-5.52 16.99l55.27 53.87-13.05 76.07c-1.11 6.44 4.01 11.66 9.81 11.66 1.53 0 3.11-.36 4.64-1.17L384 335.37l68.31 35.91c1.53.8 3.11 1.17 4.64 1.17 5.8 0 10.92-5.23 9.81-11.66l-13.05-76.07 55.27-53.87c5.91-5.77 2.65-15.81-5.52-16.99z"],
	"star-half": [576, 512, [], "f089", "M288 0c-11.4 0-22.8 5.9-28.7 17.8L194 150.2 47.9 171.4c-26.2 3.8-36.7 36.1-17.7 54.6l105.7 103-25 145.5c-4.5 26.1 23 46 46.4 33.7L288 439.6V0z"],
	"star-half-alt": [536, 512, [], "f5c0", "M508.55 171.51L362.18 150.2 296.77 17.81C290.89 5.98 279.42 0 267.95 0c-11.4 0-22.79 5.9-28.69 17.81l-65.43 132.38-146.38 21.29c-26.25 3.8-36.77 36.09-17.74 54.59l105.89 103-25.06 145.48C86.98 495.33 103.57 512 122.15 512c4.93 0 10-1.17 14.87-3.75l130.95-68.68 130.94 68.7c4.86 2.55 9.92 3.71 14.83 3.71 18.6 0 35.22-16.61 31.66-37.4l-25.03-145.49 105.91-102.98c19.04-18.5 8.52-50.8-17.73-54.6zm-121.74 123.2l-18.12 17.62 4.28 24.88 19.52 113.45-102.13-53.59-22.38-11.74.03-317.19 51.03 103.29 11.18 22.63 25.01 3.64 114.23 16.63-82.65 80.38z"],
	"star-of-david": [464, 512, [], "f69a", "M405.68 256l53.21-89.39C473.3 142.4 455.48 112 426.88 112H319.96l-55.95-93.98C256.86 6.01 244.43 0 232 0s-24.86 6.01-32.01 18.02L144.04 112H37.11c-28.6 0-46.42 30.4-32.01 54.61L58.32 256 5.1 345.39C-9.31 369.6 8.51 400 37.11 400h106.93l55.95 93.98C207.14 505.99 219.57 512 232 512s24.86-6.01 32.01-18.02L319.96 400h106.93c28.6 0 46.42-30.4 32.01-54.61L405.68 256zm-12.78-88l-19.8 33.26L353.3 168h39.6zm-52.39 88l-52.39 88H175.88l-52.39-88 52.38-88h112.25l52.39 88zM232 73.72L254.79 112h-45.57L232 73.72zM71.1 168h39.6l-19.8 33.26L71.1 168zm0 176l19.8-33.26L110.7 344H71.1zM232 438.28L209.21 400h45.57L232 438.28zM353.29 344l19.8-33.26L392.9 344h-39.61z"],
	"star-of-life": [480, 512, [], "f621", "M471.99 334.43L336.06 256l135.93-78.43c7.66-4.42 10.28-14.2 5.86-21.86l-32.02-55.43c-4.42-7.65-14.21-10.28-21.87-5.86l-135.93 78.43V16c0-8.84-7.17-16-16.01-16h-64.04c-8.84 0-16.01 7.16-16.01 16v156.86L56.04 94.43c-7.66-4.42-17.45-1.79-21.87 5.86L2.15 155.71c-4.42 7.65-1.8 17.44 5.86 21.86L143.94 256 8.01 334.43c-7.66 4.42-10.28 14.21-5.86 21.86l32.02 55.43c4.42 7.65 14.21 10.27 21.87 5.86l135.93-78.43V496c0 8.84 7.17 16 16.01 16h64.04c8.84 0 16.01-7.16 16.01-16V339.14l135.93 78.43c7.66 4.42 17.45 1.8 21.87-5.86l32.02-55.43c4.42-7.65 1.8-17.43-5.86-21.85z"],
	"step-backward": [448, 512, [], "f048", "M64 468V44c0-6.6 5.4-12 12-12h48c6.6 0 12 5.4 12 12v176.4l195.5-181C352.1 22.3 384 36.6 384 64v384c0 27.4-31.9 41.7-52.5 24.6L136 292.7V468c0 6.6-5.4 12-12 12H76c-6.6 0-12-5.4-12-12z"],
	"step-forward": [448, 512, [], "f051", "M384 44v424c0 6.6-5.4 12-12 12h-48c-6.6 0-12-5.4-12-12V291.6l-195.5 181C95.9 489.7 64 475.4 64 448V64c0-27.4 31.9-41.7 52.5-24.6L312 219.3V44c0-6.6 5.4-12 12-12h48c6.6 0 12 5.4 12 12z"],
	"stethoscope": [512, 512, [], "f0f1", "M447.1 112c-34.2.5-62.3 28.4-63 62.6-.5 24.3 12.5 45.6 32 56.8V344c0 57.3-50.2 104-112 104-60 0-109.2-44.1-111.9-99.2C265 333.8 320 269.2 320 192V36.6c0-11.4-8.1-21.3-19.3-23.5L237.8.5c-13-2.6-25.6 5.8-28.2 18.8L206.4 35c-2.6 13 5.8 25.6 18.8 28.2l30.7 6.1v121.4c0 52.9-42.2 96.7-95.1 97.2-53.4.5-96.9-42.7-96.9-96V69.4l30.7-6.1c13-2.6 21.4-15.2 18.8-28.2l-3.1-15.7C107.7 6.4 95.1-2 82.1.6L19.3 13C8.1 15.3 0 25.1 0 36.6V192c0 77.3 55.1 142 128.1 156.8C130.7 439.2 208.6 512 304 512c97 0 176-75.4 176-168V231.4c19.1-11.1 32-31.7 32-55.4 0-35.7-29.2-64.5-64.9-64zm.9 80c-8.8 0-16-7.2-16-16s7.2-16 16-16 16 7.2 16 16-7.2 16-16 16z"],
	"sticky-note": [448, 512, [], "f249", "M312 320h136V56c0-13.3-10.7-24-24-24H24C10.7 32 0 42.7 0 56v400c0 13.3 10.7 24 24 24h264V344c0-13.2 10.8-24 24-24zm129 55l-98 98c-4.5 4.5-10.6 7-17 7h-6V352h128v6.1c0 6.3-2.5 12.4-7 16.9z"],
	"stop": [448, 512, [], "f04d", "M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48z"],
	"stop-circle": [512, 512, [], "f28d", "M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm96 328c0 8.8-7.2 16-16 16H176c-8.8 0-16-7.2-16-16V176c0-8.8 7.2-16 16-16h160c8.8 0 16 7.2 16 16v160z"],
	"stopwatch": [448, 512, [], "f2f2", "M432 304c0 114.9-93.1 208-208 208S16 418.9 16 304c0-104 76.3-190.2 176-205.5V64h-28c-6.6 0-12-5.4-12-12V12c0-6.6 5.4-12 12-12h120c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12h-28v34.5c37.5 5.8 71.7 21.6 99.7 44.6l27.5-27.5c4.7-4.7 12.3-4.7 17 0l28.3 28.3c4.7 4.7 4.7 12.3 0 17l-29.4 29.4-.6.6C419.7 223.3 432 262.2 432 304zm-176 36V188.5c0-6.6-5.4-12-12-12h-40c-6.6 0-12 5.4-12 12V340c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12z"],
	"stopwatch-20": [448, 512, [], "e06f", "M398.5,190.91l.59-.61,26.59-26.58a16,16,0,0,0,0-22.63L403,118.41a16,16,0,0,0-22.63,0l-24.68,24.68A206.68,206.68,0,0,0,256,98.5V64h32a16,16,0,0,0,16-16V16A16,16,0,0,0,288,0H160a16.05,16.05,0,0,0-16,16V48a16.05,16.05,0,0,0,16,16h32V98.5A207.92,207.92,0,0,0,16.09,297.57C12.64,411.5,106.76,510.22,220.72,512,337.13,513.77,432,420,432,304A206,206,0,0,0,398.5,190.91ZM204.37,377.55a8.2,8.2,0,0,1,8.32,8.07v22.31a8.2,8.2,0,0,1-8.32,8.07H121.52a16.46,16.46,0,0,1-16.61-17.62c2.78-35.22,14.67-57.41,38.45-91.37,20.42-29.19,27.1-37.32,27.1-62.34,0-16.92-1.79-24.27-12.21-24.27-9.39,0-12.69,7.4-12.69,22.68v5.23a8.2,8.2,0,0,1-8.33,8.07h-24.9a8.2,8.2,0,0,1-8.33-8.07v-4.07c0-27.3,8.48-60.24,56.43-60.24,43,0,55.57,25.85,55.57,61,0,35.58-12.44,51.21-34.35,81.31-11.56,15-24.61,35.57-26.41,51.2ZM344,352.32c0,35.16-12.3,63.68-57.23,63.68C243.19,416,232,386.48,232,352.55V247.22c0-40.73,19.58-63.22,56.2-63.22C325,184,344,206.64,344,245.3ZM287.87,221.73c-9.41,0-13.23,7.5-13.23,20V357.68c0,13.11,3.59,20.59,13.23,20.59s13-8,13-21.27V241.06C300.89,229.79,297.88,221.73,287.87,221.73Z"],
	"store": [616, 512, [], "f54e", "M602 118.6L537.1 15C531.3 5.7 521 0 510 0H106C95 0 84.7 5.7 78.9 15L14 118.6c-33.5 53.5-3.8 127.9 58.8 136.4 4.5.6 9.1.9 13.7.9 29.6 0 55.8-13 73.8-33.1 18 20.1 44.3 33.1 73.8 33.1 29.6 0 55.8-13 73.8-33.1 18 20.1 44.3 33.1 73.8 33.1 29.6 0 55.8-13 73.8-33.1 18.1 20.1 44.3 33.1 73.8 33.1 4.7 0 9.2-.3 13.7-.9 62.8-8.4 92.6-82.8 59-136.4zM529.5 288c-10 0-19.9-1.5-29.5-3.8V384H116v-99.8c-9.6 2.2-19.5 3.8-29.5 3.8-6 0-12.1-.4-18-1.2-5.6-.8-11.1-2.1-16.4-3.6V480c0 17.7 14.3 32 32 32h448c17.7 0 32-14.3 32-32V283.2c-5.4 1.6-10.8 2.9-16.4 3.6-6.1.8-12.1 1.2-18.2 1.2z"],
	"store-alt": [640, 512, [], "f54f", "M320 384H128V224H64v256c0 17.7 14.3 32 32 32h256c17.7 0 32-14.3 32-32V224h-64v160zm314.6-241.8l-85.3-128c-6-8.9-16-14.2-26.7-14.2H117.4c-10.7 0-20.7 5.3-26.6 14.2l-85.3 128c-14.2 21.3 1 49.8 26.6 49.8H608c25.5 0 40.7-28.5 26.6-49.8zM512 496c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V224h-64v272z"],
	"store-alt-slash": [640, 512, [], "e070", "M17.89,123.62,5.51,142.2c-14.2,21.3,1,49.8,26.59,49.8h74.26ZM576,413.42V224H512V364L384,265V224H330.92l-41.4-32H608c25.5,0,40.7-28.5,26.59-49.8l-85.29-128A32.18,32.18,0,0,0,522.6,0H117.42A31.87,31.87,0,0,0,90.81,14.2l-10.66,16L45.46,3.38A16,16,0,0,0,23,6.19L3.37,31.46A16,16,0,0,0,6.18,53.91L594.53,508.63A16,16,0,0,0,617,505.81l19.64-25.26a16,16,0,0,0-2.81-22.45ZM320,384H128V224H64V480a32,32,0,0,0,32,32H352a32,32,0,0,0,32-32V406.59l-64-49.47Z"],
	"store-slash": [640, 512, [], "e071", "M121.51,384V284.2a119.43,119.43,0,0,1-28,3.8,123.46,123.46,0,0,1-17.1-1.2,114.88,114.88,0,0,1-15.58-3.6V480c0,17.7,13.59,32,30.4,32H505.75L348.42,384Zm-28-128.09c25.1,0,47.29-10.72,64-27.24L24,120.05c-30.52,53.39-2.45,126.53,56.49,135A95.68,95.68,0,0,0,93.48,255.91ZM602.13,458.09,547.2,413.41V283.2a93.5,93.5,0,0,1-15.57,3.6,127.31,127.31,0,0,1-17.29,1.2,114.89,114.89,0,0,1-28-3.8v79.68L348.52,251.77a88.06,88.06,0,0,0,25.41,4.14c28.11,0,53-13,70.11-33.11,17.19,20.11,42.08,33.11,70.11,33.11a94.31,94.31,0,0,0,13-.91c59.66-8.41,88-82.8,56.06-136.4L521.55,15A30.1,30.1,0,0,0,495.81,0H112A30.11,30.11,0,0,0,86.27,15L76.88,30.78,43.19,3.38A14.68,14.68,0,0,0,21.86,6.19L3.2,31.45A16.58,16.58,0,0,0,5.87,53.91L564.81,508.63a14.69,14.69,0,0,0,21.33-2.82l18.66-25.26A16.58,16.58,0,0,0,602.13,458.09Z"],
	"stream": [512, 512, [], "f550", "M16 128h416c8.84 0 16-7.16 16-16V48c0-8.84-7.16-16-16-16H16C7.16 32 0 39.16 0 48v64c0 8.84 7.16 16 16 16zm480 80H80c-8.84 0-16 7.16-16 16v64c0 8.84 7.16 16 16 16h416c8.84 0 16-7.16 16-16v-64c0-8.84-7.16-16-16-16zm-64 176H16c-8.84 0-16 7.16-16 16v64c0 8.84 7.16 16 16 16h416c8.84 0 16-7.16 16-16v-64c0-8.84-7.16-16-16-16z"],
	"street-view": [512, 512, [], "f21d", "M367.9 329.76c-4.62 5.3-9.78 10.1-15.9 13.65v22.94c66.52 9.34 112 28.05 112 49.65 0 30.93-93.12 56-208 56S48 446.93 48 416c0-21.6 45.48-40.3 112-49.65v-22.94c-6.12-3.55-11.28-8.35-15.9-13.65C58.87 345.34 0 378.05 0 416c0 53.02 114.62 96 256 96s256-42.98 256-96c0-37.95-58.87-70.66-144.1-86.24zM256 128c35.35 0 64-28.65 64-64S291.35 0 256 0s-64 28.65-64 64 28.65 64 64 64zm-64 192v96c0 17.67 14.33 32 32 32h64c17.67 0 32-14.33 32-32v-96c17.67 0 32-14.33 32-32v-96c0-26.51-21.49-48-48-48h-11.8c-11.07 5.03-23.26 8-36.2 8s-25.13-2.97-36.2-8H208c-26.51 0-48 21.49-48 48v96c0 17.67 14.33 32 32 32z"],
	"strikethrough": [512, 512, [], "f0cc", "M496 224H293.9l-87.17-26.83A43.55 43.55 0 0 1 219.55 112h66.79A49.89 49.89 0 0 1 331 139.58a16 16 0 0 0 21.46 7.15l42.94-21.47a16 16 0 0 0 7.16-21.46l-.53-1A128 128 0 0 0 287.51 32h-68a123.68 123.68 0 0 0-123 135.64c2 20.89 10.1 39.83 21.78 56.36H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h480a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm-180.24 96A43 43 0 0 1 336 356.45 43.59 43.59 0 0 1 292.45 400h-66.79A49.89 49.89 0 0 1 181 372.42a16 16 0 0 0-21.46-7.15l-42.94 21.47a16 16 0 0 0-7.16 21.46l.53 1A128 128 0 0 0 224.49 480h68a123.68 123.68 0 0 0 123-135.64 114.25 114.25 0 0 0-5.34-24.36z"],
	"stroopwafel": [512, 512, [], "f551", "M188.12 210.74L142.86 256l45.25 45.25L233.37 256l-45.25-45.26zm113.13-22.62L256 142.86l-45.25 45.25L256 233.37l45.25-45.25zm-90.5 135.76L256 369.14l45.26-45.26L256 278.63l-45.25 45.25zM256 0C114.62 0 0 114.62 0 256s114.62 256 256 256 256-114.62 256-256S397.38 0 256 0zm186.68 295.6l-11.31 11.31c-3.12 3.12-8.19 3.12-11.31 0l-28.29-28.29-45.25 45.25 33.94 33.94 16.97-16.97c3.12-3.12 8.19-3.12 11.31 0l11.31 11.31c3.12 3.12 3.12 8.19 0 11.31l-16.97 16.97 16.97 16.97c3.12 3.12 3.12 8.19 0 11.31l-11.31 11.31c-3.12 3.12-8.19 3.12-11.31 0l-16.97-16.97-16.97 16.97c-3.12 3.12-8.19 3.12-11.31 0l-11.31-11.31c-3.12-3.12-3.12-8.19 0-11.31l16.97-16.97-33.94-33.94-45.26 45.26 28.29 28.29c3.12 3.12 3.12 8.19 0 11.31l-11.31 11.31c-3.12 3.12-8.19 3.12-11.31 0L256 414.39l-28.29 28.29c-3.12 3.12-8.19 3.12-11.31 0l-11.31-11.31c-3.12-3.12-3.12-8.19 0-11.31l28.29-28.29-45.25-45.26-33.94 33.94 16.97 16.97c3.12 3.12 3.12 8.19 0 11.31l-11.31 11.31c-3.12 3.12-8.19 3.12-11.31 0l-16.97-16.97-16.97 16.97c-3.12 3.12-8.19 3.12-11.31 0l-11.31-11.31c-3.12-3.12-3.12-8.19 0-11.31l16.97-16.97-16.97-16.97c-3.12-3.12-3.12-8.19 0-11.31l11.31-11.31c3.12-3.12 8.19-3.12 11.31 0l16.97 16.97 33.94-33.94-45.25-45.25-28.29 28.29c-3.12 3.12-8.19 3.12-11.31 0L69.32 295.6c-3.12-3.12-3.12-8.19 0-11.31L97.61 256l-28.29-28.29c-3.12-3.12-3.12-8.19 0-11.31l11.31-11.31c3.12-3.12 8.19-3.12 11.31 0l28.29 28.29 45.25-45.26-33.94-33.94-16.97 16.97c-3.12 3.12-8.19 3.12-11.31 0l-11.31-11.31c-3.12-3.12-3.12-8.19 0-11.31l16.97-16.97-16.97-16.97c-3.12-3.12-3.12-8.19 0-11.31l11.31-11.31c3.12-3.12 8.19-3.12 11.31 0l16.97 16.97 16.97-16.97c3.12-3.12 8.19-3.12 11.31 0l11.31 11.31c3.12 3.12 3.12 8.19 0 11.31l-16.97 16.97 33.94 33.94 45.26-45.25-28.29-28.29c-3.12-3.12-3.12-8.19 0-11.31l11.31-11.31c3.12-3.12 8.19-3.12 11.31 0L256 97.61l28.29-28.29c3.12-3.12 8.19-3.12 11.31 0l11.31 11.31c3.12 3.12 3.12 8.19 0 11.31l-28.29 28.29 45.26 45.25 33.94-33.94-16.97-16.97c-3.12-3.12-3.12-8.19 0-11.31l11.31-11.31c3.12-3.12 8.19-3.12 11.31 0l16.97 16.97 16.97-16.97c3.12-3.12 8.19-3.12 11.31 0l11.31 11.31c3.12 3.12 3.12 8.19 0 11.31l-16.97 16.97 16.97 16.97c3.12 3.12 3.12 8.19 0 11.31l-11.31 11.31c-3.12 3.12-8.19 3.12-11.31 0l-16.97-16.97-33.94 33.94 45.25 45.26 28.29-28.29c3.12-3.12 8.19-3.12 11.31 0l11.31 11.31c3.12 3.12 3.12 8.19 0 11.31L414.39 256l28.29 28.28a8.015 8.015 0 0 1 0 11.32zM278.63 256l45.26 45.25L369.14 256l-45.25-45.26L278.63 256z"],
	"subscript": [512, 512, [], "f12c", "M496 448h-16V304a16 16 0 0 0-16-16h-48a16 16 0 0 0-14.29 8.83l-16 32A16 16 0 0 0 400 352h16v96h-16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h96a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zM336 64h-67a16 16 0 0 0-13.14 6.87l-79.9 115-79.9-115A16 16 0 0 0 83 64H16A16 16 0 0 0 0 80v48a16 16 0 0 0 16 16h33.48l77.81 112-77.81 112H16a16 16 0 0 0-16 16v48a16 16 0 0 0 16 16h67a16 16 0 0 0 13.14-6.87l79.9-115 79.9 115A16 16 0 0 0 269 448h67a16 16 0 0 0 16-16v-48a16 16 0 0 0-16-16h-33.48l-77.81-112 77.81-112H336a16 16 0 0 0 16-16V80a16 16 0 0 0-16-16z"],
	"subway": [448, 512, [], "f239", "M448 96v256c0 51.815-61.624 96-130.022 96l62.98 49.721C386.905 502.417 383.562 512 376 512H72c-7.578 0-10.892-9.594-4.957-14.279L130.022 448C61.82 448 0 403.954 0 352V96C0 42.981 64 0 128 0h192c65 0 128 42.981 128 96zM200 232V120c0-13.255-10.745-24-24-24H72c-13.255 0-24 10.745-24 24v112c0 13.255 10.745 24 24 24h104c13.255 0 24-10.745 24-24zm200 0V120c0-13.255-10.745-24-24-24H272c-13.255 0-24 10.745-24 24v112c0 13.255 10.745 24 24 24h104c13.255 0 24-10.745 24-24zm-48 56c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48zm-256 0c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48z"],
	"suitcase": [512, 512, [], "f0f2", "M128 480h256V80c0-26.5-21.5-48-48-48H176c-26.5 0-48 21.5-48 48v400zm64-384h128v32H192V96zm320 80v256c0 26.5-21.5 48-48 48h-48V128h48c26.5 0 48 21.5 48 48zM96 480H48c-26.5 0-48-21.5-48-48V176c0-26.5 21.5-48 48-48h48v352z"],
	"suitcase-rolling": [384, 512, [], "f5c1", "M336 160H48c-26.51 0-48 21.49-48 48v224c0 26.51 21.49 48 48 48h16v16c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-16h128v16c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-16h16c26.51 0 48-21.49 48-48V208c0-26.51-21.49-48-48-48zm-16 216c0 4.42-3.58 8-8 8H72c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h240c4.42 0 8 3.58 8 8v16zm0-96c0 4.42-3.58 8-8 8H72c-4.42 0-8-3.58-8-8v-16c0-4.42 3.58-8 8-8h240c4.42 0 8 3.58 8 8v16zM144 48h96v80h48V48c0-26.51-21.49-48-48-48h-96c-26.51 0-48 21.49-48 48v80h48V48z"],
	"sun": [512, 512, [], "f185", "M256 160c-52.9 0-96 43.1-96 96s43.1 96 96 96 96-43.1 96-96-43.1-96-96-96zm246.4 80.5l-94.7-47.3 33.5-100.4c4.5-13.6-8.4-26.5-21.9-21.9l-100.4 33.5-47.4-94.8c-6.4-12.8-24.6-12.8-31 0l-47.3 94.7L92.7 70.8c-13.6-4.5-26.5 8.4-21.9 21.9l33.5 100.4-94.7 47.4c-12.8 6.4-12.8 24.6 0 31l94.7 47.3-33.5 100.5c-4.5 13.6 8.4 26.5 21.9 21.9l100.4-33.5 47.3 94.7c6.4 12.8 24.6 12.8 31 0l47.3-94.7 100.4 33.5c13.6 4.5 26.5-8.4 21.9-21.9l-33.5-100.4 94.7-47.3c13-6.5 13-24.7.2-31.1zm-155.9 106c-49.9 49.9-131.1 49.9-181 0-49.9-49.9-49.9-131.1 0-181 49.9-49.9 131.1-49.9 181 0 49.9 49.9 49.9 131.1 0 181z"],
	"superscript": [512, 512, [], "f12b", "M496 160h-16V16a16 16 0 0 0-16-16h-48a16 16 0 0 0-14.29 8.83l-16 32A16 16 0 0 0 400 64h16v96h-16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h96a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zM336 64h-67a16 16 0 0 0-13.14 6.87l-79.9 115-79.9-115A16 16 0 0 0 83 64H16A16 16 0 0 0 0 80v48a16 16 0 0 0 16 16h33.48l77.81 112-77.81 112H16a16 16 0 0 0-16 16v48a16 16 0 0 0 16 16h67a16 16 0 0 0 13.14-6.87l79.9-115 79.9 115A16 16 0 0 0 269 448h67a16 16 0 0 0 16-16v-48a16 16 0 0 0-16-16h-33.48l-77.81-112 77.81-112H336a16 16 0 0 0 16-16V80a16 16 0 0 0-16-16z"],
	"surprise": [496, 512, [], "f5c2", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zM136 208c0-17.7 14.3-32 32-32s32 14.3 32 32-14.3 32-32 32-32-14.3-32-32zm112 208c-35.3 0-64-28.7-64-64s28.7-64 64-64 64 28.7 64 64-28.7 64-64 64zm80-176c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32z"],
	"swatchbook": [512, 512, [], "f5c3", "M434.66,167.71h0L344.5,77.36a31.83,31.83,0,0,0-45-.07h0l-.07.07L224,152.88V424L434.66,212.9A32,32,0,0,0,434.66,167.71ZM480,320H373.09L186.68,506.51c-2.06,2.07-4.5,3.58-6.68,5.49H480a32,32,0,0,0,32-32V352A32,32,0,0,0,480,320ZM192,32A32,32,0,0,0,160,0H32A32,32,0,0,0,0,32V416a96,96,0,0,0,192,0ZM96,440a24,24,0,1,1,24-24A24,24,0,0,1,96,440Zm32-184H64V192h64Zm0-128H64V64h64Z"],
	"swimmer": [640, 512, [], "f5c4", "M189.61 310.58c3.54 3.26 15.27 9.42 34.39 9.42s30.86-6.16 34.39-9.42c16.02-14.77 34.5-22.58 53.46-22.58h16.3c18.96 0 37.45 7.81 53.46 22.58 3.54 3.26 15.27 9.42 34.39 9.42s30.86-6.16 34.39-9.42c14.86-13.71 31.88-21.12 49.39-22.16l-112.84-80.6 18-12.86c3.64-2.58 8.28-3.52 12.62-2.61l100.35 21.53c25.91 5.53 51.44-10.97 57-36.88 5.55-25.92-10.95-51.44-36.88-57L437.68 98.47c-30.73-6.58-63.02.12-88.56 18.38l-80.02 57.17c-10.38 7.39-19.36 16.44-26.72 26.94L173.75 299c5.47 3.23 10.82 6.93 15.86 11.58zM624 352h-16c-26.04 0-45.8-8.42-56.09-17.9-8.9-8.21-19.66-14.1-31.77-14.1h-16.3c-12.11 0-22.87 5.89-31.77 14.1C461.8 343.58 442.04 352 416 352s-45.8-8.42-56.09-17.9c-8.9-8.21-19.66-14.1-31.77-14.1h-16.3c-12.11 0-22.87 5.89-31.77 14.1C269.8 343.58 250.04 352 224 352s-45.8-8.42-56.09-17.9c-8.9-8.21-19.66-14.1-31.77-14.1h-16.3c-12.11 0-22.87 5.89-31.77 14.1C77.8 343.58 58.04 352 32 352H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h16c38.62 0 72.72-12.19 96-31.84 23.28 19.66 57.38 31.84 96 31.84s72.72-12.19 96-31.84c23.28 19.66 57.38 31.84 96 31.84s72.72-12.19 96-31.84c23.28 19.66 57.38 31.84 96 31.84h16c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zm-512-96c44.18 0 80-35.82 80-80s-35.82-80-80-80-80 35.82-80 80 35.82 80 80 80z"],
	"swimming-pool": [640, 512, [], "f5c5", "M624 416h-16c-26.04 0-45.8-8.42-56.09-17.9-8.9-8.21-19.66-14.1-31.77-14.1h-16.3c-12.11 0-22.87 5.89-31.77 14.1C461.8 407.58 442.04 416 416 416s-45.8-8.42-56.09-17.9c-8.9-8.21-19.66-14.1-31.77-14.1h-16.3c-12.11 0-22.87 5.89-31.77 14.1C269.8 407.58 250.04 416 224 416s-45.8-8.42-56.09-17.9c-8.9-8.21-19.66-14.1-31.77-14.1h-16.3c-12.11 0-22.87 5.89-31.77 14.1C77.8 407.58 58.04 416 32 416H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h16c38.62 0 72.72-12.19 96-31.84 23.28 19.66 57.38 31.84 96 31.84s72.72-12.19 96-31.84c23.28 19.66 57.38 31.84 96 31.84s72.72-12.19 96-31.84c23.28 19.66 57.38 31.84 96 31.84h16c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zm-400-32v-96h192v96c19.12 0 30.86-6.16 34.39-9.42 9.17-8.46 19.2-14.34 29.61-18.07V128c0-17.64 14.36-32 32-32s32 14.36 32 32v16c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-16c0-52.94-43.06-96-96-96s-96 43.06-96 96v96H224v-96c0-17.64 14.36-32 32-32s32 14.36 32 32v16c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-16c0-52.94-43.06-96-96-96s-96 43.06-96 96v228.5c10.41 3.73 20.44 9.62 29.61 18.07 3.53 3.27 15.27 9.43 34.39 9.43z"],
	"synagogue": [640, 512, [], "f69b", "M70 196.51L6.67 268.29A26.643 26.643 0 0 0 0 285.93V512h128V239.58l-38-43.07c-5.31-6.01-14.69-6.01-20 0zm563.33 71.78L570 196.51c-5.31-6.02-14.69-6.02-20 0l-38 43.07V512h128V285.93c0-6.5-2.37-12.77-6.67-17.64zM339.99 7.01c-11.69-9.35-28.29-9.35-39.98 0l-128 102.4A32.005 32.005 0 0 0 160 134.4V512h96v-92.57c0-31.88 21.78-61.43 53.25-66.55C349.34 346.35 384 377.13 384 416v96h96V134.4c0-9.72-4.42-18.92-12.01-24.99l-128-102.4zm52.07 215.55c1.98 3.15-.29 7.24-4 7.24h-38.94L324 269.79c-1.85 2.95-6.15 2.95-8 0l-25.12-39.98h-38.94c-3.72 0-5.98-4.09-4-7.24l19.2-30.56-19.2-30.56c-1.98-3.15.29-7.24 4-7.24h38.94l25.12-40c1.85-2.95 6.15-2.95 8 0l25.12 39.98h38.95c3.71 0 5.98 4.09 4 7.24L372.87 192l19.19 30.56z"],
	"sync": [512, 512, [], "f021", "M440.65 12.57l4 82.77A247.16 247.16 0 0 0 255.83 8C134.73 8 33.91 94.92 12.29 209.82A12 12 0 0 0 24.09 224h49.05a12 12 0 0 0 11.67-9.26 175.91 175.91 0 0 1 317-56.94l-101.46-4.86a12 12 0 0 0-12.57 12v47.41a12 12 0 0 0 12 12H500a12 12 0 0 0 12-12V12a12 12 0 0 0-12-12h-47.37a12 12 0 0 0-11.98 12.57zM255.83 432a175.61 175.61 0 0 1-146-77.8l101.8 4.87a12 12 0 0 0 12.57-12v-47.4a12 12 0 0 0-12-12H12a12 12 0 0 0-12 12V500a12 12 0 0 0 12 12h47.35a12 12 0 0 0 12-12.6l-4.15-82.57A247.17 247.17 0 0 0 255.83 504c121.11 0 221.93-86.92 243.55-201.82a12 12 0 0 0-11.8-14.18h-49.05a12 12 0 0 0-11.67 9.26A175.86 175.86 0 0 1 255.83 432z"],
	"sync-alt": [512, 512, [], "f2f1", "M370.72 133.28C339.458 104.008 298.888 87.962 255.848 88c-77.458.068-144.328 53.178-162.791 126.85-1.344 5.363-6.122 9.15-11.651 9.15H24.103c-7.498 0-13.194-6.807-11.807-14.176C33.933 94.924 134.813 8 256 8c66.448 0 126.791 26.136 171.315 68.685L463.03 40.97C478.149 25.851 504 36.559 504 57.941V192c0 13.255-10.745 24-24 24H345.941c-21.382 0-32.09-25.851-16.971-40.971l41.75-41.749zM32 296h134.059c21.382 0 32.09 25.851 16.971 40.971l-41.75 41.75c31.262 29.273 71.835 45.319 114.876 45.28 77.418-.07 144.315-53.144 162.787-126.849 1.344-5.363 6.122-9.15 11.651-9.15h57.304c7.498 0 13.194 6.807 11.807 14.176C478.067 417.076 377.187 504 256 504c-66.448 0-126.791-26.136-171.315-68.685L48.97 471.03C33.851 486.149 8 475.441 8 454.059V320c0-13.255 10.745-24 24-24z"],
	"syringe": [512, 512, [], "f48e", "M201.5 174.8l55.7 55.8c3.1 3.1 3.1 8.2 0 11.3l-11.3 11.3c-3.1 3.1-8.2 3.1-11.3 0l-55.7-55.8-45.3 45.3 55.8 55.8c3.1 3.1 3.1 8.2 0 11.3l-11.3 11.3c-3.1 3.1-8.2 3.1-11.3 0L111 265.2l-26.4 26.4c-17.3 17.3-25.6 41.1-23 65.4l7.1 63.6L2.3 487c-3.1 3.1-3.1 8.2 0 11.3l11.3 11.3c3.1 3.1 8.2 3.1 11.3 0l66.3-66.3 63.6 7.1c23.9 2.6 47.9-5.4 65.4-23l181.9-181.9-135.7-135.7-64.9 65zm308.2-93.3L430.5 2.3c-3.1-3.1-8.2-3.1-11.3 0l-11.3 11.3c-3.1 3.1-3.1 8.2 0 11.3l28.3 28.3-45.3 45.3-56.6-56.6-17-17c-3.1-3.1-8.2-3.1-11.3 0l-33.9 33.9c-3.1 3.1-3.1 8.2 0 11.3l17 17L424.8 223l17 17c3.1 3.1 8.2 3.1 11.3 0l33.9-34c3.1-3.1 3.1-8.2 0-11.3l-73.5-73.5 45.3-45.3 28.3 28.3c3.1 3.1 8.2 3.1 11.3 0l11.3-11.3c3.1-3.2 3.1-8.2 0-11.4z"],
	"table": [512, 512, [], "f0ce", "M464 32H48C21.49 32 0 53.49 0 80v352c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V80c0-26.51-21.49-48-48-48zM224 416H64v-96h160v96zm0-160H64v-96h160v96zm224 160H288v-96h160v96zm0-160H288v-96h160v96z"],
	"table-tennis": [512, 512, [], "f45d", "M496.2 296.5C527.7 218.7 512 126.2 449 63.1 365.1-21 229-21 145.1 63.1l-56 56.1 211.5 211.5c46.1-62.1 131.5-77.4 195.6-34.2zm-217.9 79.7L57.9 155.9c-27.3 45.3-21.7 105 17.3 144.1l34.5 34.6L6.7 424c-8.6 7.5-9.1 20.7-1 28.8l53.4 53.5c8 8.1 21.2 7.6 28.7-1L177.1 402l35.7 35.7c19.7 19.7 44.6 30.5 70.3 33.3-7.1-17-11-35.6-11-55.1-.1-13.8 2.5-27 6.2-39.7zM416 320c-53 0-96 43-96 96s43 96 96 96 96-43 96-96-43-96-96-96z"],
	"tablet": [448, 512, [], "f10a", "M400 0H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V48c0-26.5-21.5-48-48-48zM224 480c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32z"],
	"tablet-alt": [448, 512, [], "f3fa", "M400 0H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V48c0-26.5-21.5-48-48-48zM224 480c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm176-108c0 6.6-5.4 12-12 12H60c-6.6 0-12-5.4-12-12V60c0-6.6 5.4-12 12-12h328c6.6 0 12 5.4 12 12v312z"],
	"tablets": [640, 512, [], "f490", "M160 192C78.9 192 12.5 250.5.1 326.7c-.8 4.8 3.3 9.3 8.3 9.3h303.3c5 0 9.1-4.5 8.3-9.3C307.5 250.5 241.1 192 160 192zm151.6 176H8.4c-5 0-9.1 4.5-8.3 9.3C12.5 453.5 78.9 512 160 512s147.5-58.5 159.9-134.7c.8-4.8-3.3-9.3-8.3-9.3zM593.4 46.6c-56.5-56.5-144.2-61.4-206.9-16-4 2.9-4.3 8.9-.8 12.3L597 254.3c3.5 3.5 9.5 3.2 12.3-.8 45.5-62.7 40.6-150.4-15.9-206.9zM363 65.7c-3.5-3.5-9.5-3.2-12.3.8-45.4 62.7-40.5 150.4 15.9 206.9 56.5 56.5 144.2 61.4 206.9 15.9 4-2.9 4.3-8.9.8-12.3L363 65.7z"],
	"tachometer-alt": [576, 512, [], "f3fd", "M288 32C128.94 32 0 160.94 0 320c0 52.8 14.25 102.26 39.06 144.8 5.61 9.62 16.3 15.2 27.44 15.2h443c11.14 0 21.83-5.58 27.44-15.2C561.75 422.26 576 372.8 576 320c0-159.06-128.94-288-288-288zm0 64c14.71 0 26.58 10.13 30.32 23.65-1.11 2.26-2.64 4.23-3.45 6.67l-9.22 27.67c-5.13 3.49-10.97 6.01-17.64 6.01-17.67 0-32-14.33-32-32S270.33 96 288 96zM96 384c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm48-160c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm246.77-72.41l-61.33 184C343.13 347.33 352 364.54 352 384c0 11.72-3.38 22.55-8.88 32H232.88c-5.5-9.45-8.88-20.28-8.88-32 0-33.94 26.5-61.43 59.9-63.59l61.34-184.01c4.17-12.56 17.73-19.45 30.36-15.17 12.57 4.19 19.35 17.79 15.17 30.36zm14.66 57.2l15.52-46.55c3.47-1.29 7.13-2.23 11.05-2.23 17.67 0 32 14.33 32 32s-14.33 32-32 32c-11.38-.01-20.89-6.28-26.57-15.22zM480 384c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z"],
	"tag": [512, 512, [], "f02b", "M0 252.118V48C0 21.49 21.49 0 48 0h204.118a48 48 0 0 1 33.941 14.059l211.882 211.882c18.745 18.745 18.745 49.137 0 67.882L293.823 497.941c-18.745 18.745-49.137 18.745-67.882 0L14.059 286.059A48 48 0 0 1 0 252.118zM112 64c-26.51 0-48 21.49-48 48s21.49 48 48 48 48-21.49 48-48-21.49-48-48-48z"],
	"tags": [640, 512, [], "f02c", "M497.941 225.941L286.059 14.059A48 48 0 0 0 252.118 0H48C21.49 0 0 21.49 0 48v204.118a48 48 0 0 0 14.059 33.941l211.882 211.882c18.744 18.745 49.136 18.746 67.882 0l204.118-204.118c18.745-18.745 18.745-49.137 0-67.882zM112 160c-26.51 0-48-21.49-48-48s21.49-48 48-48 48 21.49 48 48-21.49 48-48 48zm513.941 133.823L421.823 497.941c-18.745 18.745-49.137 18.745-67.882 0l-.36-.36L527.64 323.522c16.999-16.999 26.36-39.6 26.36-63.64s-9.362-46.641-26.36-63.64L331.397 0h48.721a48 48 0 0 1 33.941 14.059l211.882 211.882c18.745 18.745 18.745 49.137 0 67.882z"],
	"tape": [640, 512, [], "f4db", "M224 192c-35.3 0-64 28.7-64 64s28.7 64 64 64 64-28.7 64-64-28.7-64-64-64zm400 224H380.6c41.5-40.7 67.4-97.3 67.4-160 0-123.7-100.3-224-224-224S0 132.3 0 256s100.3 224 224 224h400c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zm-400-64c-53 0-96-43-96-96s43-96 96-96 96 43 96 96-43 96-96 96z"],
	"tasks": [512, 512, [], "f0ae", "M139.61 35.5a12 12 0 0 0-17 0L58.93 98.81l-22.7-22.12a12 12 0 0 0-17 0L3.53 92.41a12 12 0 0 0 0 17l47.59 47.4a12.78 12.78 0 0 0 17.61 0l15.59-15.62L156.52 69a12.09 12.09 0 0 0 .09-17zm0 159.19a12 12 0 0 0-17 0l-63.68 63.72-22.7-22.1a12 12 0 0 0-17 0L3.53 252a12 12 0 0 0 0 17L51 316.5a12.77 12.77 0 0 0 17.6 0l15.7-15.69 72.2-72.22a12 12 0 0 0 .09-16.9zM64 368c-26.49 0-48.59 21.5-48.59 48S37.53 464 64 464a48 48 0 0 0 0-96zm432 16H208a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h288a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16zm0-320H208a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h288a16 16 0 0 0 16-16V80a16 16 0 0 0-16-16zm0 160H208a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h288a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16z"],
	"taxi": [512, 512, [], "f1ba", "M462 241.64l-22-84.84c-9.6-35.2-41.6-60.8-76.8-60.8H352V64c0-17.67-14.33-32-32-32H192c-17.67 0-32 14.33-32 32v32h-11.2c-35.2 0-67.2 25.6-76.8 60.8l-22 84.84C21.41 248.04 0 273.47 0 304v48c0 23.63 12.95 44.04 32 55.12V448c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-32h256v32c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32v-40.88c19.05-11.09 32-31.5 32-55.12v-48c0-30.53-21.41-55.96-50-62.36zM96 352c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm20.55-112l17.2-66.36c2.23-8.16 9.59-13.64 15.06-13.64h214.4c5.47 0 12.83 5.48 14.85 12.86L395.45 240h-278.9zM416 352c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z"],
	"teeth": [640, 512, [], "f62e", "M544 0H96C42.98 0 0 42.98 0 96v320c0 53.02 42.98 96 96 96h448c53.02 0 96-42.98 96-96V96c0-53.02-42.98-96-96-96zM160 368c0 26.51-21.49 48-48 48s-48-21.49-48-48v-64c0-8.84 7.16-16 16-16h64c8.84 0 16 7.16 16 16v64zm0-128c0 8.84-7.16 16-16 16H80c-8.84 0-16-7.16-16-16v-64c0-26.51 21.49-48 48-48s48 21.49 48 48v64zm144 120c0 30.93-25.07 56-56 56s-56-25.07-56-56v-56c0-8.84 7.16-16 16-16h80c8.84 0 16 7.16 16 16v56zm0-120c0 8.84-7.16 16-16 16h-80c-8.84 0-16-7.16-16-16v-88c0-30.93 25.07-56 56-56s56 25.07 56 56v88zm144 120c0 30.93-25.07 56-56 56s-56-25.07-56-56v-56c0-8.84 7.16-16 16-16h80c8.84 0 16 7.16 16 16v56zm0-120c0 8.84-7.16 16-16 16h-80c-8.84 0-16-7.16-16-16v-88c0-30.93 25.07-56 56-56s56 25.07 56 56v88zm128 128c0 26.51-21.49 48-48 48s-48-21.49-48-48v-64c0-8.84 7.16-16 16-16h64c8.84 0 16 7.16 16 16v64zm0-128c0 8.84-7.16 16-16 16h-64c-8.84 0-16-7.16-16-16v-64c0-26.51 21.49-48 48-48s48 21.49 48 48v64z"],
	"teeth-open": [640, 512, [], "f62f", "M544 0H96C42.98 0 0 42.98 0 96v64c0 35.35 28.66 64 64 64h512c35.34 0 64-28.65 64-64V96c0-53.02-42.98-96-96-96zM160 176c0 8.84-7.16 16-16 16H80c-8.84 0-16-7.16-16-16v-32c0-26.51 21.49-48 48-48s48 21.49 48 48v32zm144 0c0 8.84-7.16 16-16 16h-80c-8.84 0-16-7.16-16-16v-56c0-30.93 25.07-56 56-56s56 25.07 56 56v56zm144 0c0 8.84-7.16 16-16 16h-80c-8.84 0-16-7.16-16-16v-56c0-30.93 25.07-56 56-56s56 25.07 56 56v56zm128 0c0 8.84-7.16 16-16 16h-64c-8.84 0-16-7.16-16-16v-32c0-26.51 21.49-48 48-48s48 21.49 48 48v32zm0 144H64c-35.34 0-64 28.65-64 64v32c0 53.02 42.98 96 96 96h448c53.02 0 96-42.98 96-96v-32c0-35.35-28.66-64-64-64zm-416 80c0 26.51-21.49 48-48 48s-48-21.49-48-48v-32c0-8.84 7.16-16 16-16h64c8.84 0 16 7.16 16 16v32zm144-8c0 30.93-25.07 56-56 56s-56-25.07-56-56v-24c0-8.84 7.16-16 16-16h80c8.84 0 16 7.16 16 16v24zm144 0c0 30.93-25.07 56-56 56s-56-25.07-56-56v-24c0-8.84 7.16-16 16-16h80c8.84 0 16 7.16 16 16v24zm128 8c0 26.51-21.49 48-48 48s-48-21.49-48-48v-32c0-8.84 7.16-16 16-16h64c8.84 0 16 7.16 16 16v32z"],
	"temperature-high": [512, 512, [], "f769", "M416 0c-52.9 0-96 43.1-96 96s43.1 96 96 96 96-43.1 96-96-43.1-96-96-96zm0 128c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm-160-16C256 50.1 205.9 0 144 0S32 50.1 32 112v166.5C12.3 303.2 0 334 0 368c0 79.5 64.5 144 144 144s144-64.5 144-144c0-34-12.3-64.9-32-89.5V112zM144 448c-44.1 0-80-35.9-80-80 0-25.5 12.2-48.9 32-63.8V112c0-26.5 21.5-48 48-48s48 21.5 48 48v192.2c19.8 14.8 32 38.3 32 63.8 0 44.1-35.9 80-80 80zm16-125.1V112c0-8.8-7.2-16-16-16s-16 7.2-16 16v210.9c-18.6 6.6-32 24.2-32 45.1 0 26.5 21.5 48 48 48s48-21.5 48-48c0-20.9-13.4-38.5-32-45.1z"],
	"temperature-low": [512, 512, [], "f76b", "M416 0c-52.9 0-96 43.1-96 96s43.1 96 96 96 96-43.1 96-96-43.1-96-96-96zm0 128c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm-160-16C256 50.1 205.9 0 144 0S32 50.1 32 112v166.5C12.3 303.2 0 334 0 368c0 79.5 64.5 144 144 144s144-64.5 144-144c0-34-12.3-64.9-32-89.5V112zM144 448c-44.1 0-80-35.9-80-80 0-25.5 12.2-48.9 32-63.8V112c0-26.5 21.5-48 48-48s48 21.5 48 48v192.2c19.8 14.8 32 38.3 32 63.8 0 44.1-35.9 80-80 80zm16-125.1V304c0-8.8-7.2-16-16-16s-16 7.2-16 16v18.9c-18.6 6.6-32 24.2-32 45.1 0 26.5 21.5 48 48 48s48-21.5 48-48c0-20.9-13.4-38.5-32-45.1z"],
	"tenge": [384, 512, [], "f7d7", "M372 160H12c-6.6 0-12 5.4-12 12v56c0 6.6 5.4 12 12 12h140v228c0 6.6 5.4 12 12 12h56c6.6 0 12-5.4 12-12V240h140c6.6 0 12-5.4 12-12v-56c0-6.6-5.4-12-12-12zm0-128H12C5.4 32 0 37.4 0 44v56c0 6.6 5.4 12 12 12h360c6.6 0 12-5.4 12-12V44c0-6.6-5.4-12-12-12z"],
	"terminal": [640, 512, [], "f120", "M257.981 272.971L63.638 467.314c-9.373 9.373-24.569 9.373-33.941 0L7.029 444.647c-9.357-9.357-9.375-24.522-.04-33.901L161.011 256 6.99 101.255c-9.335-9.379-9.317-24.544.04-33.901l22.667-22.667c9.373-9.373 24.569-9.373 33.941 0L257.981 239.03c9.373 9.372 9.373 24.568 0 33.941zM640 456v-32c0-13.255-10.745-24-24-24H312c-13.255 0-24 10.745-24 24v32c0 13.255 10.745 24 24 24h304c13.255 0 24-10.745 24-24z"],
	"text-height": [576, 512, [], "f034", "M304 32H16A16 16 0 0 0 0 48v96a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-32h56v304H80a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h160a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-40V112h56v32a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zm256 336h-48V144h48c14.31 0 21.33-17.31 11.31-27.31l-80-80a16 16 0 0 0-22.62 0l-80 80C379.36 126 384.36 144 400 144h48v224h-48c-14.31 0-21.32 17.31-11.31 27.31l80 80a16 16 0 0 0 22.62 0l80-80C580.64 386 575.64 368 560 368z"],
	"text-width": [448, 512, [], "f035", "M432 32H16A16 16 0 0 0 0 48v80a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16v-16h120v112h-24a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h128a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-24V112h120v16a16 16 0 0 0 16 16h32a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zm-68.69 260.69C354 283.36 336 288.36 336 304v48H112v-48c0-14.31-17.31-21.32-27.31-11.31l-80 80a16 16 0 0 0 0 22.62l80 80C94 484.64 112 479.64 112 464v-48h224v48c0 14.31 17.31 21.33 27.31 11.31l80-80a16 16 0 0 0 0-22.62z"],
	"th": [512, 512, [], "f00a", "M149.333 56v80c0 13.255-10.745 24-24 24H24c-13.255 0-24-10.745-24-24V56c0-13.255 10.745-24 24-24h101.333c13.255 0 24 10.745 24 24zm181.334 240v-80c0-13.255-10.745-24-24-24H205.333c-13.255 0-24 10.745-24 24v80c0 13.255 10.745 24 24 24h101.333c13.256 0 24.001-10.745 24.001-24zm32-240v80c0 13.255 10.745 24 24 24H488c13.255 0 24-10.745 24-24V56c0-13.255-10.745-24-24-24H386.667c-13.255 0-24 10.745-24 24zm-32 80V56c0-13.255-10.745-24-24-24H205.333c-13.255 0-24 10.745-24 24v80c0 13.255 10.745 24 24 24h101.333c13.256 0 24.001-10.745 24.001-24zm-205.334 56H24c-13.255 0-24 10.745-24 24v80c0 13.255 10.745 24 24 24h101.333c13.255 0 24-10.745 24-24v-80c0-13.255-10.745-24-24-24zM0 376v80c0 13.255 10.745 24 24 24h101.333c13.255 0 24-10.745 24-24v-80c0-13.255-10.745-24-24-24H24c-13.255 0-24 10.745-24 24zm386.667-56H488c13.255 0 24-10.745 24-24v-80c0-13.255-10.745-24-24-24H386.667c-13.255 0-24 10.745-24 24v80c0 13.255 10.745 24 24 24zm0 160H488c13.255 0 24-10.745 24-24v-80c0-13.255-10.745-24-24-24H386.667c-13.255 0-24 10.745-24 24v80c0 13.255 10.745 24 24 24zM181.333 376v80c0 13.255 10.745 24 24 24h101.333c13.255 0 24-10.745 24-24v-80c0-13.255-10.745-24-24-24H205.333c-13.255 0-24 10.745-24 24z"],
	"th-large": [512, 512, [], "f009", "M296 32h192c13.255 0 24 10.745 24 24v160c0 13.255-10.745 24-24 24H296c-13.255 0-24-10.745-24-24V56c0-13.255 10.745-24 24-24zm-80 0H24C10.745 32 0 42.745 0 56v160c0 13.255 10.745 24 24 24h192c13.255 0 24-10.745 24-24V56c0-13.255-10.745-24-24-24zM0 296v160c0 13.255 10.745 24 24 24h192c13.255 0 24-10.745 24-24V296c0-13.255-10.745-24-24-24H24c-13.255 0-24 10.745-24 24zm296 184h192c13.255 0 24-10.745 24-24V296c0-13.255-10.745-24-24-24H296c-13.255 0-24 10.745-24 24v160c0 13.255 10.745 24 24 24z"],
	"th-list": [512, 512, [], "f00b", "M149.333 216v80c0 13.255-10.745 24-24 24H24c-13.255 0-24-10.745-24-24v-80c0-13.255 10.745-24 24-24h101.333c13.255 0 24 10.745 24 24zM0 376v80c0 13.255 10.745 24 24 24h101.333c13.255 0 24-10.745 24-24v-80c0-13.255-10.745-24-24-24H24c-13.255 0-24 10.745-24 24zM125.333 32H24C10.745 32 0 42.745 0 56v80c0 13.255 10.745 24 24 24h101.333c13.255 0 24-10.745 24-24V56c0-13.255-10.745-24-24-24zm80 448H488c13.255 0 24-10.745 24-24v-80c0-13.255-10.745-24-24-24H205.333c-13.255 0-24 10.745-24 24v80c0 13.255 10.745 24 24 24zm-24-424v80c0 13.255 10.745 24 24 24H488c13.255 0 24-10.745 24-24V56c0-13.255-10.745-24-24-24H205.333c-13.255 0-24 10.745-24 24zm24 264H488c13.255 0 24-10.745 24-24v-80c0-13.255-10.745-24-24-24H205.333c-13.255 0-24 10.745-24 24v80c0 13.255 10.745 24 24 24z"],
	"theater-masks": [640, 512, [], "f630", "M206.86 245.15c-35.88 10.45-59.95 41.2-57.53 74.1 11.4-12.72 28.81-23.7 49.9-30.92l7.63-43.18zM95.81 295L64.08 115.49c-.29-1.62.28-2.62.24-2.65 57.76-32.06 123.12-49.01 189.01-49.01 1.61 0 3.23.17 4.85.19 13.95-13.47 31.73-22.83 51.59-26 18.89-3.02 38.05-4.55 57.18-5.32-9.99-13.95-24.48-24.23-41.77-27C301.27 1.89 277.24 0 253.32 0 176.66 0 101.02 19.42 33.2 57.06 9.03 70.48-3.92 98.48 1.05 126.58l31.73 179.51c14.23 80.52 136.33 142.08 204.45 142.08 3.59 0 6.75-.46 10.01-.8-13.52-17.08-28.94-40.48-39.5-67.58-47.61-12.98-106.06-51.62-111.93-84.79zm97.55-137.46c-.73-4.12-2.23-7.87-4.07-11.4-8.25 8.91-20.67 15.75-35.32 18.32-14.65 2.58-28.67.4-39.48-5.17-.52 3.94-.64 7.98.09 12.1 3.84 21.7 24.58 36.19 46.34 32.37 21.75-3.82 36.28-24.52 32.44-46.22zM606.8 120.9c-88.98-49.38-191.43-67.41-291.98-51.35-27.31 4.36-49.08 26.26-54.04 54.36l-31.73 179.51c-15.39 87.05 95.28 196.27 158.31 207.35 63.03 11.09 204.47-53.79 219.86-140.84l31.73-179.51c4.97-28.11-7.98-56.11-32.15-69.52zm-273.24 96.8c3.84-21.7 24.58-36.19 46.34-32.36 21.76 3.83 36.28 24.52 32.45 46.22-.73 4.12-2.23 7.87-4.07 11.4-8.25-8.91-20.67-15.75-35.32-18.32-14.65-2.58-28.67-.4-39.48 5.17-.53-3.95-.65-7.99.08-12.11zm70.47 198.76c-55.68-9.79-93.52-59.27-89.04-112.9 20.6 25.54 56.21 46.17 99.49 53.78 43.28 7.61 83.82.37 111.93-16.6-14.18 51.94-66.71 85.51-122.38 75.72zm130.3-151.34c-8.25-8.91-20.68-15.75-35.33-18.32-14.65-2.58-28.67-.4-39.48 5.17-.52-3.94-.64-7.98.09-12.1 3.84-21.7 24.58-36.19 46.34-32.37 21.75 3.83 36.28 24.52 32.45 46.22-.73 4.13-2.23 7.88-4.07 11.4z"],
	"thermometer": [512, 512, [], "f491", "M476.8 20.4c-37.5-30.7-95.5-26.3-131.9 10.2l-45.7 46 50.5 50.5c3.1 3.1 3.1 8.2 0 11.3l-11.3 11.3c-3.1 3.1-8.2 3.1-11.3 0l-50.4-50.5-45.1 45.4 50.3 50.4c3.1 3.1 3.1 8.2 0 11.3l-11.3 11.3c-3.1 3.1-8.2 3.1-11.3 0L209 167.4l-45.1 45.4L214 263c3.1 3.1 3.1 8.2 0 11.3l-11.3 11.3c-3.1 3.1-8.2 3.1-11.3 0l-50.1-50.2L96 281.1V382L7 471c-9.4 9.4-9.4 24.6 0 33.9 9.4 9.4 24.6 9.4 33.9 0l89-89h99.9L484 162.6c34.9-34.9 42.2-101.5-7.2-142.2z"],
	"thermometer-empty": [256, 512, [], "f2cb", "M192 384c0 35.346-28.654 64-64 64s-64-28.654-64-64c0-35.346 28.654-64 64-64s64 28.654 64 64zm32-84.653c19.912 22.563 32 52.194 32 84.653 0 70.696-57.303 128-128 128-.299 0-.609-.001-.909-.003C56.789 511.509-.357 453.636.002 383.333.166 351.135 12.225 321.755 32 299.347V96c0-53.019 42.981-96 96-96s96 42.981 96 96v203.347zM208 384c0-34.339-19.37-52.19-32-66.502V96c0-26.467-21.533-48-48-48S80 69.533 80 96v221.498c-12.732 14.428-31.825 32.1-31.999 66.08-.224 43.876 35.563 80.116 79.423 80.42L128 464c44.112 0 80-35.888 80-80z"],
	"thermometer-full": [256, 512, [], "f2c7", "M224 96c0-53.019-42.981-96-96-96S32 42.981 32 96v203.347C12.225 321.756.166 351.136.002 383.333c-.359 70.303 56.787 128.176 127.089 128.664.299.002.61.003.909.003 70.698 0 128-57.304 128-128 0-32.459-12.088-62.09-32-84.653V96zm-96 368l-.576-.002c-43.86-.304-79.647-36.544-79.423-80.42.173-33.98 19.266-51.652 31.999-66.08V96c0-26.467 21.533-48 48-48s48 21.533 48 48v221.498c12.63 14.312 32 32.164 32 66.502 0 44.112-35.888 80-80 80zm64-80c0 35.346-28.654 64-64 64s-64-28.654-64-64c0-23.685 12.876-44.349 32-55.417V96c0-17.673 14.327-32 32-32s32 14.327 32 32v232.583c19.124 11.068 32 31.732 32 55.417z"],
	"thermometer-half": [256, 512, [], "f2c9", "M192 384c0 35.346-28.654 64-64 64s-64-28.654-64-64c0-23.685 12.876-44.349 32-55.417V224c0-17.673 14.327-32 32-32s32 14.327 32 32v104.583c19.124 11.068 32 31.732 32 55.417zm32-84.653c19.912 22.563 32 52.194 32 84.653 0 70.696-57.303 128-128 128-.299 0-.609-.001-.909-.003C56.789 511.509-.357 453.636.002 383.333.166 351.135 12.225 321.755 32 299.347V96c0-53.019 42.981-96 96-96s96 42.981 96 96v203.347zM208 384c0-34.339-19.37-52.19-32-66.502V96c0-26.467-21.533-48-48-48S80 69.533 80 96v221.498c-12.732 14.428-31.825 32.1-31.999 66.08-.224 43.876 35.563 80.116 79.423 80.42L128 464c44.112 0 80-35.888 80-80z"],
	"thermometer-quarter": [256, 512, [], "f2ca", "M192 384c0 35.346-28.654 64-64 64s-64-28.654-64-64c0-23.685 12.876-44.349 32-55.417V288c0-17.673 14.327-32 32-32s32 14.327 32 32v40.583c19.124 11.068 32 31.732 32 55.417zm32-84.653c19.912 22.563 32 52.194 32 84.653 0 70.696-57.303 128-128 128-.299 0-.609-.001-.909-.003C56.789 511.509-.357 453.636.002 383.333.166 351.135 12.225 321.755 32 299.347V96c0-53.019 42.981-96 96-96s96 42.981 96 96v203.347zM208 384c0-34.339-19.37-52.19-32-66.502V96c0-26.467-21.533-48-48-48S80 69.533 80 96v221.498c-12.732 14.428-31.825 32.1-31.999 66.08-.224 43.876 35.563 80.116 79.423 80.42L128 464c44.112 0 80-35.888 80-80z"],
	"thermometer-three-quarters": [256, 512, [], "f2c8", "M192 384c0 35.346-28.654 64-64 64-35.346 0-64-28.654-64-64 0-23.685 12.876-44.349 32-55.417V160c0-17.673 14.327-32 32-32s32 14.327 32 32v168.583c19.124 11.068 32 31.732 32 55.417zm32-84.653c19.912 22.563 32 52.194 32 84.653 0 70.696-57.303 128-128 128-.299 0-.609-.001-.909-.003C56.789 511.509-.357 453.636.002 383.333.166 351.135 12.225 321.755 32 299.347V96c0-53.019 42.981-96 96-96s96 42.981 96 96v203.347zM208 384c0-34.339-19.37-52.19-32-66.502V96c0-26.467-21.533-48-48-48S80 69.533 80 96v221.498c-12.732 14.428-31.825 32.1-31.999 66.08-.224 43.876 35.563 80.116 79.423 80.42L128 464c44.112 0 80-35.888 80-80z"],
	"thumbs-down": [512, 512, [], "f165", "M0 56v240c0 13.255 10.745 24 24 24h80c13.255 0 24-10.745 24-24V56c0-13.255-10.745-24-24-24H24C10.745 32 0 42.745 0 56zm40 200c0-13.255 10.745-24 24-24s24 10.745 24 24-10.745 24-24 24-24-10.745-24-24zm272 256c-20.183 0-29.485-39.293-33.931-57.795-5.206-21.666-10.589-44.07-25.393-58.902-32.469-32.524-49.503-73.967-89.117-113.111a11.98 11.98 0 0 1-3.558-8.521V59.901c0-6.541 5.243-11.878 11.783-11.998 15.831-.29 36.694-9.079 52.651-16.178C256.189 17.598 295.709.017 343.995 0h2.844c42.777 0 93.363.413 113.774 29.737 8.392 12.057 10.446 27.034 6.148 44.632 16.312 17.053 25.063 48.863 16.382 74.757 17.544 23.432 19.143 56.132 9.308 79.469l.11.11c11.893 11.949 19.523 31.259 19.439 49.197-.156 30.352-26.157 58.098-59.553 58.098H350.723C358.03 364.34 384 388.132 384 430.548 384 504 336 512 312 512z"],
	"thumbs-up": [512, 512, [], "f164", "M104 224H24c-13.255 0-24 10.745-24 24v240c0 13.255 10.745 24 24 24h80c13.255 0 24-10.745 24-24V248c0-13.255-10.745-24-24-24zM64 472c-13.255 0-24-10.745-24-24s10.745-24 24-24 24 10.745 24 24-10.745 24-24 24zM384 81.452c0 42.416-25.97 66.208-33.277 94.548h101.723c33.397 0 59.397 27.746 59.553 58.098.084 17.938-7.546 37.249-19.439 49.197l-.11.11c9.836 23.337 8.237 56.037-9.308 79.469 8.681 25.895-.069 57.704-16.382 74.757 4.298 17.598 2.244 32.575-6.148 44.632C440.202 511.587 389.616 512 346.839 512l-2.845-.001c-48.287-.017-87.806-17.598-119.56-31.725-15.957-7.099-36.821-15.887-52.651-16.178-6.54-.12-11.783-5.457-11.783-11.998v-213.77c0-3.2 1.282-6.271 3.558-8.521 39.614-39.144 56.648-80.587 89.117-113.111 14.804-14.832 20.188-37.236 25.393-58.902C282.515 39.293 291.817 0 312 0c24 0 72 8 72 81.452z"],
	"thumbtack": [384, 512, [], "f08d", "M298.028 214.267L285.793 96H328c13.255 0 24-10.745 24-24V24c0-13.255-10.745-24-24-24H56C42.745 0 32 10.745 32 24v48c0 13.255 10.745 24 24 24h42.207L85.972 214.267C37.465 236.82 0 277.261 0 328c0 13.255 10.745 24 24 24h136v104.007c0 1.242.289 2.467.845 3.578l24 48c2.941 5.882 11.364 5.893 14.311 0l24-48a8.008 8.008 0 0 0 .845-3.578V352h136c13.255 0 24-10.745 24-24-.001-51.183-37.983-91.42-85.973-113.733z"],
	"ticket-alt": [576, 512, [], "f3ff", "M128 160h320v192H128V160zm400 96c0 26.51 21.49 48 48 48v96c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48v-96c26.51 0 48-21.49 48-48s-21.49-48-48-48v-96c0-26.51 21.49-48 48-48h480c26.51 0 48 21.49 48 48v96c-26.51 0-48 21.49-48 48zm-48-104c0-13.255-10.745-24-24-24H120c-13.255 0-24 10.745-24 24v208c0 13.255 10.745 24 24 24h336c13.255 0 24-10.745 24-24V152z"],
	"times": [352, 512, [], "f00d", "M242.72 256l100.07-100.07c12.28-12.28 12.28-32.19 0-44.48l-22.24-22.24c-12.28-12.28-32.19-12.28-44.48 0L176 189.28 75.93 89.21c-12.28-12.28-32.19-12.28-44.48 0L9.21 111.45c-12.28 12.28-12.28 32.19 0 44.48L109.28 256 9.21 356.07c-12.28 12.28-12.28 32.19 0 44.48l22.24 22.24c12.28 12.28 32.2 12.28 44.48 0L176 322.72l100.07 100.07c12.28 12.28 32.2 12.28 44.48 0l22.24-22.24c12.28-12.28 12.28-32.19 0-44.48L242.72 256z"],
	"times-circle": [512, 512, [], "f057", "M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm121.6 313.1c4.7 4.7 4.7 12.3 0 17L338 377.6c-4.7 4.7-12.3 4.7-17 0L256 312l-65.1 65.6c-4.7 4.7-12.3 4.7-17 0L134.4 338c-4.7-4.7-4.7-12.3 0-17l65.6-65-65.6-65.1c-4.7-4.7-4.7-12.3 0-17l39.6-39.6c4.7-4.7 12.3-4.7 17 0l65 65.7 65.1-65.6c4.7-4.7 12.3-4.7 17 0l39.6 39.6c4.7 4.7 4.7 12.3 0 17L312 256l65.6 65.1z"],
	"tint": [352, 512, [], "f043", "M205.22 22.09c-7.94-28.78-49.44-30.12-58.44 0C100.01 179.85 0 222.72 0 333.91 0 432.35 78.72 512 176 512s176-79.65 176-178.09c0-111.75-99.79-153.34-146.78-311.82zM176 448c-61.75 0-112-50.25-112-112 0-8.84 7.16-16 16-16s16 7.16 16 16c0 44.11 35.89 80 80 80 8.84 0 16 7.16 16 16s-7.16 16-16 16z"],
	"tint-slash": [640, 512, [], "f5c7", "M633.82 458.1L494.97 350.78c.52-5.57 1.03-11.16 1.03-16.87 0-111.76-99.79-153.34-146.78-311.82-7.94-28.78-49.44-30.12-58.44 0-15.52 52.34-36.87 91.96-58.49 125.68L45.47 3.37C38.49-2.05 28.43-.8 23.01 6.18L3.37 31.45C-2.05 38.42-.8 48.47 6.18 53.9l588.36 454.73c6.98 5.43 17.03 4.17 22.46-2.81l19.64-25.27c5.41-6.97 4.16-17.02-2.82-22.45zM144 333.91C144 432.35 222.72 512 320 512c44.71 0 85.37-16.96 116.4-44.7L162.72 255.78c-11.41 23.5-18.72 48.35-18.72 78.13z"],
	"tired": [496, 512, [], "f5c8", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm33.8 189.7l80-48c11.6-6.9 24 7.7 15.4 18L343.6 208l33.6 40.3c8.7 10.4-3.9 24.8-15.4 18l-80-48c-7.7-4.7-7.7-15.9 0-20.6zm-163-30c-8.6-10.3 3.8-24.9 15.4-18l80 48c7.8 4.7 7.8 15.9 0 20.6l-80 48c-11.5 6.8-24-7.6-15.4-18l33.6-40.3-33.6-40.3zM248 288c51.9 0 115.3 43.8 123.2 106.7 1.7 13.6-8 24.6-17.7 20.4-25.9-11.1-64.4-17.4-105.5-17.4s-79.6 6.3-105.5 17.4c-9.8 4.2-19.4-7-17.7-20.4C132.7 331.8 196.1 288 248 288z"],
	"toggle-off": [576, 512, [], "f204", "M384 64H192C85.961 64 0 149.961 0 256s85.961 192 192 192h192c106.039 0 192-85.961 192-192S490.039 64 384 64zM64 256c0-70.741 57.249-128 128-128 70.741 0 128 57.249 128 128 0 70.741-57.249 128-128 128-70.741 0-128-57.249-128-128zm320 128h-48.905c65.217-72.858 65.236-183.12 0-256H384c70.741 0 128 57.249 128 128 0 70.74-57.249 128-128 128z"],
	"toggle-on": [576, 512, [], "f205", "M384 64H192C86 64 0 150 0 256s86 192 192 192h192c106 0 192-86 192-192S490 64 384 64zm0 320c-70.8 0-128-57.3-128-128 0-70.8 57.3-128 128-128 70.8 0 128 57.3 128 128 0 70.8-57.3 128-128 128z"],
	"toilet": [384, 512, [], "f7d8", "M368 48c8.8 0 16-7.2 16-16V16c0-8.8-7.2-16-16-16H16C7.2 0 0 7.2 0 16v16c0 8.8 7.2 16 16 16h16v156.7C11.8 214.8 0 226.9 0 240c0 67.2 34.6 126.2 86.8 160.5l-21.4 70.2C59.1 491.2 74.5 512 96 512h192c21.5 0 36.9-20.8 30.6-41.3l-21.4-70.2C349.4 366.2 384 307.2 384 240c0-13.1-11.8-25.2-32-35.3V48h16zM80 72c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v16c0 4.4-3.6 8-8 8H88c-4.4 0-8-3.6-8-8V72zm112 200c-77.1 0-139.6-14.3-139.6-32s62.5-32 139.6-32 139.6 14.3 139.6 32-62.5 32-139.6 32z"],
	"toilet-paper": [576, 512, [], "f71e", "M128 0C74.98 0 32 85.96 32 192v172.07c0 41.12-9.8 62.77-31.17 126.87C-2.62 501.3 5.09 512 16.01 512h280.92c13.77 0 26-8.81 30.36-21.88 12.83-38.48 24.71-72.4 24.71-126.05V192c0-83.6 23.67-153.52 60.44-192H128zM96 224c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16zm64 0c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16zm64 0c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16zm64 0c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16zM480 0c-53.02 0-96 85.96-96 192s42.98 192 96 192 96-85.96 96-192S533.02 0 480 0zm0 256c-17.67 0-32-28.65-32-64s14.33-64 32-64 32 28.65 32 64-14.33 64-32 64z"],
	"toilet-paper-slash": [640, 512, [], "e072", "M64,192V364.13c0,41.12-9.75,62.75-31.12,126.87A16,16,0,0,0,48,512H328.86a31.87,31.87,0,0,0,30.38-21.87c9.31-27.83,18-53.35,22.18-85.55l-316-244.25C64.53,170.66,64,181.19,64,192ZM633.82,458.09l-102-78.81C575.28,360.91,608,284.32,608,192,608,86,565,0,512,0s-96,86-96,192c0,42,7,80.4,18.43,112L384,265V192c0-83.62,23.63-153.5,60.5-192H160c-23.33,0-44.63,16.83-61.26,44.53L45.46,3.38A16,16,0,0,0,23,6.19L3.37,31.45A16,16,0,0,0,6.18,53.91L594.54,508.63A16,16,0,0,0,617,505.81l19.64-25.26A16,16,0,0,0,633.82,458.09ZM512,256c-17.63,0-32-28.62-32-64s14.37-64,32-64,32,28.63,32,64S529.62,256,512,256Z"],
	"toolbox": [512, 512, [], "f552", "M502.63 214.63l-45.25-45.25c-6-6-14.14-9.37-22.63-9.37H384V80c0-26.51-21.49-48-48-48H176c-26.51 0-48 21.49-48 48v80H77.25c-8.49 0-16.62 3.37-22.63 9.37L9.37 214.63c-6 6-9.37 14.14-9.37 22.63V320h128v-16c0-8.84 7.16-16 16-16h32c8.84 0 16 7.16 16 16v16h128v-16c0-8.84 7.16-16 16-16h32c8.84 0 16 7.16 16 16v16h128v-82.75c0-8.48-3.37-16.62-9.37-22.62zM320 160H192V96h128v64zm64 208c0 8.84-7.16 16-16 16h-32c-8.84 0-16-7.16-16-16v-16H192v16c0 8.84-7.16 16-16 16h-32c-8.84 0-16-7.16-16-16v-16H0v96c0 17.67 14.33 32 32 32h448c17.67 0 32-14.33 32-32v-96H384v16z"],
	"tools": [512, 512, [], "f7d9", "M501.1 395.7L384 278.6c-23.1-23.1-57.6-27.6-85.4-13.9L192 158.1V96L64 0 0 64l96 128h62.1l106.6 106.6c-13.6 27.8-9.2 62.3 13.9 85.4l117.1 117.1c14.6 14.6 38.2 14.6 52.7 0l52.7-52.7c14.5-14.6 14.5-38.2 0-52.7zM331.7 225c28.3 0 54.9 11 74.9 31l19.4 19.4c15.8-6.9 30.8-16.5 43.8-29.5 37.1-37.1 49.7-89.3 37.9-136.7-2.2-9-13.5-12.1-20.1-5.5l-74.4 74.4-67.9-11.3L334 98.9l74.4-74.4c6.6-6.6 3.4-17.9-5.7-20.2-47.4-11.7-99.6.9-136.6 37.9-28.5 28.5-41.9 66.1-41.2 103.6l82.1 82.1c8.1-1.9 16.5-2.9 24.7-2.9zm-103.9 82l-56.7-56.7L18.7 402.8c-25 25-25 65.5 0 90.5s65.5 25 90.5 0l123.6-123.6c-7.6-19.9-9.9-41.6-5-62.7zM64 472c-13.2 0-24-10.8-24-24 0-13.3 10.7-24 24-24s24 10.7 24 24c0 13.2-10.7 24-24 24z"],
	"tooth": [448, 512, [], "f5c9", "M443.98 96.25c-11.01-45.22-47.11-82.06-92.01-93.72-32.19-8.36-63 5.1-89.14 24.33-3.25 2.39-6.96 3.73-10.5 5.48l28.32 18.21c7.42 4.77 9.58 14.67 4.8 22.11-4.46 6.95-14.27 9.86-22.11 4.8L162.83 12.84c-20.7-10.85-43.38-16.4-66.81-10.31-44.9 11.67-81 48.5-92.01 93.72-10.13 41.62-.42 80.81 21.5 110.43 23.36 31.57 32.68 68.66 36.29 107.35 4.4 47.16 10.33 94.16 20.94 140.32l7.8 33.95c3.19 13.87 15.49 23.7 29.67 23.7 13.97 0 26.15-9.55 29.54-23.16l34.47-138.42c4.56-18.32 20.96-31.16 39.76-31.16s35.2 12.85 39.76 31.16l34.47 138.42c3.39 13.61 15.57 23.16 29.54 23.16 14.18 0 26.48-9.83 29.67-23.7l7.8-33.95c10.61-46.15 16.53-93.16 20.94-140.32 3.61-38.7 12.93-75.78 36.29-107.35 21.95-29.61 31.66-68.8 21.53-110.43z"],
	"torah": [640, 512, [], "f6a0", "M320.05 366.48l17.72-29.64h-35.46zm99.21-166H382.4l18.46 30.82zM48 0C21.49 0 0 14.33 0 32v448c0 17.67 21.49 32 48 32s48-14.33 48-32V32C96 14.33 74.51 0 48 0zm172.74 311.5h36.85l-18.46-30.82zm161.71 0h36.86l-18.45-30.8zM128 464h384V48H128zm66.77-278.13a21.22 21.22 0 0 1 18.48-10.71h59.45l29.13-48.71a21.13 21.13 0 0 1 18.22-10.37A20.76 20.76 0 0 1 338 126.29l29.25 48.86h59.52a21.12 21.12 0 0 1 18.1 32L415.63 256 445 305a20.69 20.69 0 0 1 .24 21.12 21.25 21.25 0 0 1-18.48 10.72h-59.47l-29.13 48.7a21.13 21.13 0 0 1-18.16 10.4 20.79 20.79 0 0 1-18-10.22l-29.25-48.88h-59.5a21.11 21.11 0 0 1-18.1-32L224.36 256 195 207a20.7 20.7 0 0 1-.23-21.13zM592 0c-26.51 0-48 14.33-48 32v448c0 17.67 21.49 32 48 32s48-14.33 48-32V32c0-17.67-21.49-32-48-32zM320 145.53l-17.78 29.62h35.46zm-62.45 55h-36.81l18.44 30.8zm29.58 111h65.79L386.09 256l-33.23-55.52h-65.79L253.9 256z"],
	"torii-gate": [512, 512, [], "f6a1", "M376.45 32h-240.9A303.17 303.17 0 0 1 0 0v96c0 17.67 14.33 32 32 32h32v64H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h48v240c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16V256h256v240c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16V256h48c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16h-48v-64h32c17.67 0 32-14.33 32-32V0a303.17 303.17 0 0 1-135.55 32zM128 128h96v64h-96v-64zm256 64h-96v-64h96v64z"],
	"tractor": [640, 512, [], "f722", "M528 336c-48.6 0-88 39.4-88 88s39.4 88 88 88 88-39.4 88-88-39.4-88-88-88zm0 112c-13.23 0-24-10.77-24-24s10.77-24 24-24 24 10.77 24 24-10.77 24-24 24zm80-288h-64v-40.2c0-14.12 4.7-27.76 13.15-38.84 4.42-5.8 3.55-14.06-1.32-19.49L534.2 37.3c-6.66-7.45-18.32-6.92-24.7.78C490.58 60.9 480 89.81 480 119.8V160H377.67L321.58 29.14A47.914 47.914 0 0 0 277.45 0H144c-26.47 0-48 21.53-48 48v146.52c-8.63-6.73-20.96-6.46-28.89 1.47L36 227.1c-8.59 8.59-8.59 22.52 0 31.11l5.06 5.06c-4.99 9.26-8.96 18.82-11.91 28.72H22c-12.15 0-22 9.85-22 22v44c0 12.15 9.85 22 22 22h7.14c2.96 9.91 6.92 19.46 11.91 28.73l-5.06 5.06c-8.59 8.59-8.59 22.52 0 31.11L67.1 476c8.59 8.59 22.52 8.59 31.11 0l5.06-5.06c9.26 4.99 18.82 8.96 28.72 11.91V490c0 12.15 9.85 22 22 22h44c12.15 0 22-9.85 22-22v-7.14c9.9-2.95 19.46-6.92 28.72-11.91l5.06 5.06c8.59 8.59 22.52 8.59 31.11 0l31.11-31.11c8.59-8.59 8.59-22.52 0-31.11l-5.06-5.06c4.99-9.26 8.96-18.82 11.91-28.72H330c12.15 0 22-9.85 22-22v-6h80.54c21.91-28.99 56.32-48 95.46-48 18.64 0 36.07 4.61 51.8 12.2l50.82-50.82c6-6 9.37-14.14 9.37-22.63V192c.01-17.67-14.32-32-31.99-32zM176 416c-44.18 0-80-35.82-80-80s35.82-80 80-80 80 35.82 80 80-35.82 80-80 80zm22-256h-38V64h106.89l41.15 96H198z"],
	"trademark": [640, 512, [], "f25c", "M260.6 96H12c-6.6 0-12 5.4-12 12v43.1c0 6.6 5.4 12 12 12h85.1V404c0 6.6 5.4 12 12 12h54.3c6.6 0 12-5.4 12-12V163.1h85.1c6.6 0 12-5.4 12-12V108c.1-6.6-5.3-12-11.9-12zM640 403l-24-296c-.5-6.2-5.7-11-12-11h-65.4c-5.1 0-9.7 3.3-11.3 8.1l-43.8 127.1c-7.2 20.6-16.1 52.8-16.1 52.8h-.9s-8.9-32.2-16.1-52.8l-43.8-127.1c-1.7-4.8-6.2-8.1-11.3-8.1h-65.4c-6.2 0-11.4 4.8-12 11l-24.4 296c-.6 7 4.9 13 12 13H360c6.3 0 11.5-4.9 12-11.2l9.1-132.9c1.8-24.2 0-53.7 0-53.7h.9s10.7 33.6 17.9 53.7l30.7 84.7c1.7 4.7 6.2 7.9 11.3 7.9h50.3c5.1 0 9.6-3.2 11.3-7.9l30.7-84.7c7.2-20.1 17.9-53.7 17.9-53.7h.9s-1.8 29.5 0 53.7l9.1 132.9c.4 6.3 5.7 11.2 12 11.2H628c7 0 12.5-6 12-13z"],
	"traffic-light": [384, 512, [], "f637", "M384 192h-64v-37.88c37.2-13.22 64-48.38 64-90.12h-64V32c0-17.67-14.33-32-32-32H96C78.33 0 64 14.33 64 32v32H0c0 41.74 26.8 76.9 64 90.12V192H0c0 41.74 26.8 76.9 64 90.12V320H0c0 42.84 28.25 78.69 66.99 91.05C79.42 468.72 130.6 512 192 512s112.58-43.28 125.01-100.95C355.75 398.69 384 362.84 384 320h-64v-37.88c37.2-13.22 64-48.38 64-90.12zM192 416c-26.51 0-48-21.49-48-48s21.49-48 48-48 48 21.49 48 48-21.49 48-48 48zm0-128c-26.51 0-48-21.49-48-48s21.49-48 48-48 48 21.49 48 48-21.49 48-48 48zm0-128c-26.51 0-48-21.49-48-48s21.49-48 48-48 48 21.49 48 48-21.49 48-48 48z"],
	"trailer": [640, 512, [], "e041", "M624,320H544V80a16,16,0,0,0-16-16H16A16,16,0,0,0,0,80V368a16,16,0,0,0,16,16H65.61c7.83-54.21,54-96,110.39-96s102.56,41.79,110.39,96H624a16,16,0,0,0,16-16V336A16,16,0,0,0,624,320ZM96,243.68a176.29,176.29,0,0,0-32,20.71V136a8,8,0,0,1,8-8H88a8,8,0,0,1,8,8Zm96-18.54c-5.31-.49-10.57-1.14-16-1.14s-10.69.65-16,1.14V136a8,8,0,0,1,8-8h16a8,8,0,0,1,8,8Zm96,39.25a176.29,176.29,0,0,0-32-20.71V136a8,8,0,0,1,8-8h16a8,8,0,0,1,8,8ZM384,320H352V136a8,8,0,0,1,8-8h16a8,8,0,0,1,8,8Zm96,0H448V136a8,8,0,0,1,8-8h16a8,8,0,0,1,8,8Zm-304,0a80,80,0,1,0,80,80A80,80,0,0,0,176,320Zm0,112a32,32,0,1,1,32-32A32,32,0,0,1,176,432Z"],
	"train": [448, 512, [], "f238", "M448 96v256c0 51.815-61.624 96-130.022 96l62.98 49.721C386.905 502.417 383.562 512 376 512H72c-7.578 0-10.892-9.594-4.957-14.279L130.022 448C61.82 448 0 403.954 0 352V96C0 42.981 64 0 128 0h192c65 0 128 42.981 128 96zm-48 136V120c0-13.255-10.745-24-24-24H72c-13.255 0-24 10.745-24 24v112c0 13.255 10.745 24 24 24h304c13.255 0 24-10.745 24-24zm-176 64c-30.928 0-56 25.072-56 56s25.072 56 56 56 56-25.072 56-56-25.072-56-56-56z"],
	"tram": [512, 512, [], "f7da", "M288 64c17.7 0 32-14.3 32-32S305.7 0 288 0s-32 14.3-32 32 14.3 32 32 32zm223.5-12.1c-2.3-8.6-11-13.6-19.6-11.3l-480 128c-8.5 2.3-13.6 11-11.3 19.6C2.5 195.3 8.9 200 16 200c1.4 0 2.8-.2 4.1-.5L240 140.8V224H64c-17.7 0-32 14.3-32 32v224c0 17.7 14.3 32 32 32h384c17.7 0 32-14.3 32-32V256c0-17.7-14.3-32-32-32H272v-91.7l228.1-60.8c8.6-2.3 13.6-11.1 11.4-19.6zM176 384H80v-96h96v96zm160-96h96v96h-96v-96zm-32 0v96h-96v-96h96zM192 96c17.7 0 32-14.3 32-32s-14.3-32-32-32-32 14.3-32 32 14.3 32 32 32z"],
	"transgender": [384, 512, [], "f224", "M372 0h-79c-10.7 0-16 12.9-8.5 20.5l16.9 16.9-80.7 80.7C198.5 104.1 172.2 96 144 96 64.5 96 0 160.5 0 240c0 68.5 47.9 125.9 112 140.4V408H76c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h36v28c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12v-28h36c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-36v-27.6c64.1-14.6 112-71.9 112-140.4 0-28.2-8.1-54.5-22.1-76.7l80.7-80.7 16.9 16.9c7.6 7.6 20.5 2.2 20.5-8.5V12c0-6.6-5.4-12-12-12zM144 320c-44.1 0-80-35.9-80-80s35.9-80 80-80 80 35.9 80 80-35.9 80-80 80z"],
	"transgender-alt": [480, 512, [], "f225", "M468 0h-79c-10.7 0-16 12.9-8.5 20.5l16.9 16.9-80.7 80.7C294.5 104.1 268.2 96 240 96c-28.2 0-54.5 8.1-76.7 22.1l-16.5-16.5 19.8-19.8c4.7-4.7 4.7-12.3 0-17l-28.3-28.3c-4.7-4.7-12.3-4.7-17 0l-19.8 19.8-19-19 16.9-16.9C107.1 12.9 101.7 0 91 0H12C5.4 0 0 5.4 0 12v79c0 10.7 12.9 16 20.5 8.5l16.9-16.9 19 19-19.8 19.8c-4.7 4.7-4.7 12.3 0 17l28.3 28.3c4.7 4.7 12.3 4.7 17 0l19.8-19.8 16.5 16.5C104.1 185.5 96 211.8 96 240c0 68.5 47.9 125.9 112 140.4V408h-36c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h36v28c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12v-28h36c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-36v-27.6c64.1-14.6 112-71.9 112-140.4 0-28.2-8.1-54.5-22.1-76.7l80.7-80.7 16.9 16.9c7.6 7.6 20.5 2.2 20.5-8.5V12c0-6.6-5.4-12-12-12zM240 320c-44.1 0-80-35.9-80-80s35.9-80 80-80 80 35.9 80 80-35.9 80-80 80z"],
	"trash": [448, 512, [], "f1f8", "M432 32H312l-9.4-18.7A24 24 0 0 0 281.1 0H166.8a23.72 23.72 0 0 0-21.4 13.3L136 32H16A16 16 0 0 0 0 48v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zM53.2 467a48 48 0 0 0 47.9 45h245.8a48 48 0 0 0 47.9-45L416 128H32z"],
	"trash-alt": [448, 512, [], "f2ed", "M32 464a48 48 0 0 0 48 48h288a48 48 0 0 0 48-48V128H32zm272-256a16 16 0 0 1 32 0v224a16 16 0 0 1-32 0zm-96 0a16 16 0 0 1 32 0v224a16 16 0 0 1-32 0zm-96 0a16 16 0 0 1 32 0v224a16 16 0 0 1-32 0zM432 32H312l-9.4-18.7A24 24 0 0 0 281.1 0H166.8a23.72 23.72 0 0 0-21.4 13.3L136 32H16A16 16 0 0 0 0 48v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16z"],
	"trash-restore": [448, 512, [], "f829", "M53.2 467a48 48 0 0 0 47.9 45h245.8a48 48 0 0 0 47.9-45L416 128H32zm70.11-175.8l89.38-94.26a15.41 15.41 0 0 1 22.62 0l89.38 94.26c10.08 10.62 2.94 28.8-11.32 28.8H256v112a16 16 0 0 1-16 16h-32a16 16 0 0 1-16-16V320h-57.37c-14.26 0-21.4-18.18-11.32-28.8zM432 32H312l-9.4-18.7A24 24 0 0 0 281.1 0H166.8a23.72 23.72 0 0 0-21.4 13.3L136 32H16A16 16 0 0 0 0 48v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16z"],
	"trash-restore-alt": [448, 512, [], "f82a", "M32 464a48 48 0 0 0 48 48h288a48 48 0 0 0 48-48V128H32zm91.31-172.8l89.38-94.26a15.41 15.41 0 0 1 22.62 0l89.38 94.26c10.08 10.62 2.94 28.8-11.32 28.8H256v112a16 16 0 0 1-16 16h-32a16 16 0 0 1-16-16V320h-57.37c-14.26 0-21.4-18.18-11.32-28.8zM432 32H312l-9.4-18.7A24 24 0 0 0 281.1 0H166.8a23.72 23.72 0 0 0-21.4 13.3L136 32H16A16 16 0 0 0 0 48v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16z"],
	"tree": [384, 512, [], "f1bb", "M378.31 378.49L298.42 288h30.63c9.01 0 16.98-5 20.78-13.06 3.8-8.04 2.55-17.26-3.28-24.05L268.42 160h28.89c9.1 0 17.3-5.35 20.86-13.61 3.52-8.13 1.86-17.59-4.24-24.08L203.66 4.83c-6.03-6.45-17.28-6.45-23.32 0L70.06 122.31c-6.1 6.49-7.75 15.95-4.24 24.08C69.38 154.65 77.59 160 86.69 160h28.89l-78.14 90.91c-5.81 6.78-7.06 15.99-3.27 24.04C37.97 283 45.93 288 54.95 288h30.63L5.69 378.49c-6 6.79-7.36 16.09-3.56 24.26 3.75 8.05 12 13.25 21.01 13.25H160v24.45l-30.29 48.4c-5.32 10.64 2.42 23.16 14.31 23.16h95.96c11.89 0 19.63-12.52 14.31-23.16L224 440.45V416h136.86c9.01 0 17.26-5.2 21.01-13.25 3.8-8.17 2.44-17.47-3.56-24.26z"],
	"trophy": [576, 512, [], "f091", "M552 64H448V24c0-13.3-10.7-24-24-24H152c-13.3 0-24 10.7-24 24v40H24C10.7 64 0 74.7 0 88v56c0 35.7 22.5 72.4 61.9 100.7 31.5 22.7 69.8 37.1 110 41.7C203.3 338.5 240 360 240 360v72h-48c-35.3 0-64 20.7-64 56v12c0 6.6 5.4 12 12 12h296c6.6 0 12-5.4 12-12v-12c0-35.3-28.7-56-64-56h-48v-72s36.7-21.5 68.1-73.6c40.3-4.6 78.6-19 110-41.7 39.3-28.3 61.9-65 61.9-100.7V88c0-13.3-10.7-24-24-24zM99.3 192.8C74.9 175.2 64 155.6 64 144v-16h64.2c1 32.6 5.8 61.2 12.8 86.2-15.1-5.2-29.2-12.4-41.7-21.4zM512 144c0 16.1-17.7 36.1-35.3 48.8-12.5 9-26.7 16.2-41.8 21.4 7-25 11.8-53.6 12.8-86.2H512v16z"],
	"truck": [640, 512, [], "f0d1", "M624 352h-16V243.9c0-12.7-5.1-24.9-14.1-33.9L494 110.1c-9-9-21.2-14.1-33.9-14.1H416V48c0-26.5-21.5-48-48-48H48C21.5 0 0 21.5 0 48v320c0 26.5 21.5 48 48 48h16c0 53 43 96 96 96s96-43 96-96h128c0 53 43 96 96 96s96-43 96-96h48c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zM160 464c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm320 0c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48zm80-208H416V144h44.1l99.9 99.9V256z"],
	"truck-loading": [640, 512, [], "f4de", "M50.2 375.6c2.3 8.5 11.1 13.6 19.6 11.3l216.4-58c8.5-2.3 13.6-11.1 11.3-19.6l-49.7-185.5c-2.3-8.5-11.1-13.6-19.6-11.3L151 133.3l24.8 92.7-61.8 16.5-24.8-92.7-77.3 20.7C3.4 172.8-1.7 181.6.6 190.1l49.6 185.5zM384 0c-17.7 0-32 14.3-32 32v323.6L5.9 450c-4.3 1.2-6.8 5.6-5.6 9.8l12.6 46.3c1.2 4.3 5.6 6.8 9.8 5.6l393.7-107.4C418.8 464.1 467.6 512 528 512c61.9 0 112-50.1 112-112V0H384zm144 448c-26.5 0-48-21.5-48-48s21.5-48 48-48 48 21.5 48 48-21.5 48-48 48z"],
	"truck-monster": [640, 512, [], "f63b", "M624 224h-16v-64c0-17.67-14.33-32-32-32h-73.6L419.22 24.02A64.025 64.025 0 0 0 369.24 0H256c-17.67 0-32 14.33-32 32v96H48c-8.84 0-16 7.16-16 16v80H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h16.72c29.21-38.65 75.1-64 127.28-64s98.07 25.35 127.28 64h65.45c29.21-38.65 75.1-64 127.28-64s98.07 25.35 127.28 64H624c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zm-336-96V64h81.24l51.2 64H288zm304 224h-5.2c-2.2-7.33-5.07-14.28-8.65-20.89l3.67-3.67c6.25-6.25 6.25-16.38 0-22.63l-22.63-22.63c-6.25-6.25-16.38-6.25-22.63 0l-3.67 3.67A110.85 110.85 0 0 0 512 277.2V272c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16v5.2c-7.33 2.2-14.28 5.07-20.89 8.65l-3.67-3.67c-6.25-6.25-16.38-6.25-22.63 0l-22.63 22.63c-6.25 6.25-6.25 16.38 0 22.63l3.67 3.67A110.85 110.85 0 0 0 373.2 352H368c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h5.2c2.2 7.33 5.07 14.28 8.65 20.89l-3.67 3.67c-6.25 6.25-6.25 16.38 0 22.63l22.63 22.63c6.25 6.25 16.38 6.25 22.63 0l3.67-3.67c6.61 3.57 13.57 6.45 20.9 8.65v5.2c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-5.2c7.33-2.2 14.28-5.07 20.9-8.65l3.67 3.67c6.25 6.25 16.38 6.25 22.63 0l22.63-22.63c6.25-6.25 6.25-16.38 0-22.63l-3.67-3.67a110.85 110.85 0 0 0 8.65-20.89h5.2c8.84 0 16-7.16 16-16v-32c-.02-8.84-7.18-16-16.02-16zm-112 80c-26.51 0-48-21.49-48-48s21.49-48 48-48 48 21.49 48 48-21.49 48-48 48zm-208-80h-5.2c-2.2-7.33-5.07-14.28-8.65-20.89l3.67-3.67c6.25-6.25 6.25-16.38 0-22.63l-22.63-22.63c-6.25-6.25-16.38-6.25-22.63 0l-3.67 3.67A110.85 110.85 0 0 0 192 277.2V272c0-8.84-7.16-16-16-16h-32c-8.84 0-16 7.16-16 16v5.2c-7.33 2.2-14.28 5.07-20.89 8.65l-3.67-3.67c-6.25-6.25-16.38-6.25-22.63 0L58.18 304.8c-6.25 6.25-6.25 16.38 0 22.63l3.67 3.67a110.85 110.85 0 0 0-8.65 20.89H48c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h5.2c2.2 7.33 5.07 14.28 8.65 20.89l-3.67 3.67c-6.25 6.25-6.25 16.38 0 22.63l22.63 22.63c6.25 6.25 16.38 6.25 22.63 0l3.67-3.67c6.61 3.57 13.57 6.45 20.9 8.65v5.2c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-5.2c7.33-2.2 14.28-5.07 20.9-8.65l3.67 3.67c6.25 6.25 16.38 6.25 22.63 0l22.63-22.63c6.25-6.25 6.25-16.38 0-22.63l-3.67-3.67a110.85 110.85 0 0 0 8.65-20.89h5.2c8.84 0 16-7.16 16-16v-32C288 359.16 280.84 352 272 352zm-112 80c-26.51 0-48-21.49-48-48s21.49-48 48-48 48 21.49 48 48-21.49 48-48 48z"],
	"truck-moving": [640, 512, [], "f4df", "M621.3 237.3l-58.5-58.5c-12-12-28.3-18.7-45.3-18.7H480V64c0-17.7-14.3-32-32-32H32C14.3 32 0 46.3 0 64v336c0 44.2 35.8 80 80 80 26.3 0 49.4-12.9 64-32.4 14.6 19.6 37.7 32.4 64 32.4 44.2 0 80-35.8 80-80 0-5.5-.6-10.8-1.6-16h163.2c-1.1 5.2-1.6 10.5-1.6 16 0 44.2 35.8 80 80 80s80-35.8 80-80c0-5.5-.6-10.8-1.6-16H624c8.8 0 16-7.2 16-16v-85.5c0-17-6.7-33.2-18.7-45.2zM80 432c-17.6 0-32-14.4-32-32s14.4-32 32-32 32 14.4 32 32-14.4 32-32 32zm128 0c-17.6 0-32-14.4-32-32s14.4-32 32-32 32 14.4 32 32-14.4 32-32 32zm272-224h37.5c4.3 0 8.3 1.7 11.3 4.7l43.3 43.3H480v-48zm48 224c-17.6 0-32-14.4-32-32s14.4-32 32-32 32 14.4 32 32-14.4 32-32 32z"],
	"truck-pickup": [640, 512, [], "f63c", "M624 288h-16v-64c0-17.67-14.33-32-32-32h-48L419.22 56.02A64.025 64.025 0 0 0 369.24 32H256c-17.67 0-32 14.33-32 32v128H64c-17.67 0-32 14.33-32 32v64H16c-8.84 0-16 7.16-16 16v32c0 8.84 7.16 16 16 16h49.61c-.76 5.27-1.61 10.52-1.61 16 0 61.86 50.14 112 112 112s112-50.14 112-112c0-5.48-.85-10.73-1.61-16h67.23c-.76 5.27-1.61 10.52-1.61 16 0 61.86 50.14 112 112 112s112-50.14 112-112c0-5.48-.85-10.73-1.61-16H624c8.84 0 16-7.16 16-16v-32c0-8.84-7.16-16-16-16zM288 96h81.24l76.8 96H288V96zM176 416c-26.47 0-48-21.53-48-48s21.53-48 48-48 48 21.53 48 48-21.53 48-48 48zm288 0c-26.47 0-48-21.53-48-48s21.53-48 48-48 48 21.53 48 48-21.53 48-48 48z"],
	"tshirt": [640, 512, [], "f553", "M631.2 96.5L436.5 0C416.4 27.8 371.9 47.2 320 47.2S223.6 27.8 203.5 0L8.8 96.5c-7.9 4-11.1 13.6-7.2 21.5l57.2 114.5c4 7.9 13.6 11.1 21.5 7.2l56.6-27.7c10.6-5.2 23 2.5 23 14.4V480c0 17.7 14.3 32 32 32h256c17.7 0 32-14.3 32-32V226.3c0-11.8 12.4-19.6 23-14.4l56.6 27.7c7.9 4 17.5.8 21.5-7.2L638.3 118c4-7.9.8-17.6-7.1-21.5z"],
	"tty": [512, 512, [], "f1e4", "M5.37 103.822c138.532-138.532 362.936-138.326 501.262 0 6.078 6.078 7.074 15.496 2.583 22.681l-43.214 69.138a18.332 18.332 0 0 1-22.356 7.305l-86.422-34.569a18.335 18.335 0 0 1-11.434-18.846L351.741 90c-62.145-22.454-130.636-21.986-191.483 0l5.953 59.532a18.331 18.331 0 0 1-11.434 18.846l-86.423 34.568a18.334 18.334 0 0 1-22.356-7.305L2.787 126.502a18.333 18.333 0 0 1 2.583-22.68zM96 308v-40c0-6.627-5.373-12-12-12H44c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm-336 96v-40c0-6.627-5.373-12-12-12H92c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zM96 500v-40c0-6.627-5.373-12-12-12H44c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm288 0v-40c0-6.627-5.373-12-12-12H140c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h232c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12z"],
	"tv": [640, 512, [], "f26c", "M592 0H48A48 48 0 0 0 0 48v320a48 48 0 0 0 48 48h240v32H112a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16H352v-32h240a48 48 0 0 0 48-48V48a48 48 0 0 0-48-48zm-16 352H64V64h512z"],
	"umbrella": [576, 512, [], "f0e9", "M575.7 280.8C547.1 144.5 437.3 62.6 320 49.9V32c0-17.7-14.3-32-32-32s-32 14.3-32 32v17.9C138.3 62.6 29.5 144.5.3 280.8c-2.2 10.1 8.5 21.3 18.7 11.4 52-55 107.7-52.4 158.6 37 5.3 9.5 14.9 8.6 19.7 0 20.2-35.4 44.9-73.2 90.7-73.2 58.5 0 88.2 68.8 90.7 73.2 4.8 8.6 14.4 9.5 19.7 0 51-89.5 107.1-91.4 158.6-37 10.3 10 20.9-1.3 18.7-11.4zM256 301.7V432c0 8.8-7.2 16-16 16-7.8 0-13.2-5.3-15.1-10.7-5.9-16.7-24.1-25.4-40.8-19.5-16.7 5.9-25.4 24.2-19.5 40.8 11.2 31.9 41.6 53.3 75.4 53.3 44.1 0 80-35.9 80-80V301.6c-9.1-7.9-19.8-13.6-32-13.6-12.3.1-22.4 4.8-32 13.7z"],
	"umbrella-beach": [640, 512, [], "f5ca", "M115.38 136.9l102.11 37.18c35.19-81.54 86.21-144.29 139-173.7-95.88-4.89-188.78 36.96-248.53 111.8-6.69 8.4-2.66 21.05 7.42 24.72zm132.25 48.16l238.48 86.83c35.76-121.38 18.7-231.66-42.63-253.98-7.4-2.7-15.13-4-23.09-4-58.02.01-128.27 69.17-172.76 171.15zM521.48 60.5c6.22 16.3 10.83 34.6 13.2 55.19 5.74 49.89-1.42 108.23-18.95 166.98l102.62 37.36c10.09 3.67 21.31-3.43 21.57-14.17 2.32-95.69-41.91-187.44-118.44-245.36zM560 447.98H321.06L386 269.5l-60.14-21.9-72.9 200.37H16c-8.84 0-16 7.16-16 16.01v32.01C0 504.83 7.16 512 16 512h544c8.84 0 16-7.17 16-16.01v-32.01c0-8.84-7.16-16-16-16z"],
	"underline": [448, 512, [], "f0cd", "M32 64h32v160c0 88.22 71.78 160 160 160s160-71.78 160-160V64h32a16 16 0 0 0 16-16V16a16 16 0 0 0-16-16H272a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h32v160a80 80 0 0 1-160 0V64h32a16 16 0 0 0 16-16V16a16 16 0 0 0-16-16H32a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16zm400 384H16a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16z"],
	"undo": [512, 512, [], "f0e2", "M212.333 224.333H12c-6.627 0-12-5.373-12-12V12C0 5.373 5.373 0 12 0h48c6.627 0 12 5.373 12 12v78.112C117.773 39.279 184.26 7.47 258.175 8.007c136.906.994 246.448 111.623 246.157 248.532C504.041 393.258 393.12 504 256.333 504c-64.089 0-122.496-24.313-166.51-64.215-5.099-4.622-5.334-12.554-.467-17.42l33.967-33.967c4.474-4.474 11.662-4.717 16.401-.525C170.76 415.336 211.58 432 256.333 432c97.268 0 176-78.716 176-176 0-97.267-78.716-176-176-176-58.496 0-110.28 28.476-142.274 72.333h98.274c6.627 0 12 5.373 12 12v48c0 6.627-5.373 12-12 12z"],
	"undo-alt": [512, 512, [], "f2ea", "M255.545 8c-66.269.119-126.438 26.233-170.86 68.685L48.971 40.971C33.851 25.851 8 36.559 8 57.941V192c0 13.255 10.745 24 24 24h134.059c21.382 0 32.09-25.851 16.971-40.971l-41.75-41.75c30.864-28.899 70.801-44.907 113.23-45.273 92.398-.798 170.283 73.977 169.484 169.442C423.236 348.009 349.816 424 256 424c-41.127 0-79.997-14.678-110.63-41.556-4.743-4.161-11.906-3.908-16.368.553L89.34 422.659c-4.872 4.872-4.631 12.815.482 17.433C133.798 479.813 192.074 504 256 504c136.966 0 247.999-111.033 248-247.998C504.001 119.193 392.354 7.755 255.545 8z"],
	"universal-access": [512, 512, [], "f29a", "M256 48c114.953 0 208 93.029 208 208 0 114.953-93.029 208-208 208-114.953 0-208-93.029-208-208 0-114.953 93.029-208 208-208m0-40C119.033 8 8 119.033 8 256s111.033 248 248 248 248-111.033 248-248S392.967 8 256 8zm0 56C149.961 64 64 149.961 64 256s85.961 192 192 192 192-85.961 192-192S362.039 64 256 64zm0 44c19.882 0 36 16.118 36 36s-16.118 36-36 36-36-16.118-36-36 16.118-36 36-36zm117.741 98.023c-28.712 6.779-55.511 12.748-82.14 15.807.851 101.023 12.306 123.052 25.037 155.621 3.617 9.26-.957 19.698-10.217 23.315-9.261 3.617-19.699-.957-23.316-10.217-8.705-22.308-17.086-40.636-22.261-78.549h-9.686c-5.167 37.851-13.534 56.208-22.262 78.549-3.615 9.255-14.05 13.836-23.315 10.217-9.26-3.617-13.834-14.056-10.217-23.315 12.713-32.541 24.185-54.541 25.037-155.621-26.629-3.058-53.428-9.027-82.141-15.807-8.6-2.031-13.926-10.648-11.895-19.249s10.647-13.926 19.249-11.895c96.686 22.829 124.283 22.783 220.775 0 8.599-2.03 17.218 3.294 19.249 11.895 2.029 8.601-3.297 17.219-11.897 19.249z"],
	"university": [512, 512, [], "f19c", "M496 128v16a8 8 0 0 1-8 8h-24v12c0 6.627-5.373 12-12 12H60c-6.627 0-12-5.373-12-12v-12H24a8 8 0 0 1-8-8v-16a8 8 0 0 1 4.941-7.392l232-88a7.996 7.996 0 0 1 6.118 0l232 88A8 8 0 0 1 496 128zm-24 304H40c-13.255 0-24 10.745-24 24v16a8 8 0 0 0 8 8h464a8 8 0 0 0 8-8v-16c0-13.255-10.745-24-24-24zM96 192v192H60c-6.627 0-12 5.373-12 12v20h416v-20c0-6.627-5.373-12-12-12h-36V192h-64v192h-64V192h-64v192h-64V192H96z"],
	"unlink": [512, 512, [], "f127", "M304.083 405.907c4.686 4.686 4.686 12.284 0 16.971l-44.674 44.674c-59.263 59.262-155.693 59.266-214.961 0-59.264-59.265-59.264-155.696 0-214.96l44.675-44.675c4.686-4.686 12.284-4.686 16.971 0l39.598 39.598c4.686 4.686 4.686 12.284 0 16.971l-44.675 44.674c-28.072 28.073-28.072 73.75 0 101.823 28.072 28.072 73.75 28.073 101.824 0l44.674-44.674c4.686-4.686 12.284-4.686 16.971 0l39.597 39.598zm-56.568-260.216c4.686 4.686 12.284 4.686 16.971 0l44.674-44.674c28.072-28.075 73.75-28.073 101.824 0 28.072 28.073 28.072 73.75 0 101.823l-44.675 44.674c-4.686 4.686-4.686 12.284 0 16.971l39.598 39.598c4.686 4.686 12.284 4.686 16.971 0l44.675-44.675c59.265-59.265 59.265-155.695 0-214.96-59.266-59.264-155.695-59.264-214.961 0l-44.674 44.674c-4.686 4.686-4.686 12.284 0 16.971l39.597 39.598zm234.828 359.28l22.627-22.627c9.373-9.373 9.373-24.569 0-33.941L63.598 7.029c-9.373-9.373-24.569-9.373-33.941 0L7.029 29.657c-9.373 9.373-9.373 24.569 0 33.941l441.373 441.373c9.373 9.372 24.569 9.372 33.941 0z"],
	"unlock": [448, 512, [], "f09c", "M400 256H152V152.9c0-39.6 31.7-72.5 71.3-72.9 40-.4 72.7 32.1 72.7 72v16c0 13.3 10.7 24 24 24h32c13.3 0 24-10.7 24-24v-16C376 68 307.5-.3 223.5 0 139.5.3 72 69.5 72 153.5V256H48c-26.5 0-48 21.5-48 48v160c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V304c0-26.5-21.5-48-48-48z"],
	"unlock-alt": [448, 512, [], "f13e", "M400 256H152V152.9c0-39.6 31.7-72.5 71.3-72.9 40-.4 72.7 32.1 72.7 72v16c0 13.3 10.7 24 24 24h32c13.3 0 24-10.7 24-24v-16C376 68 307.5-.3 223.5 0 139.5.3 72 69.5 72 153.5V256H48c-26.5 0-48 21.5-48 48v160c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V304c0-26.5-21.5-48-48-48zM264 408c0 22.1-17.9 40-40 40s-40-17.9-40-40v-48c0-22.1 17.9-40 40-40s40 17.9 40 40v48z"],
	"upload": [512, 512, [], "f093", "M296 384h-80c-13.3 0-24-10.7-24-24V192h-87.7c-17.8 0-26.7-21.5-14.1-34.1L242.3 5.7c7.5-7.5 19.8-7.5 27.3 0l152.2 152.2c12.6 12.6 3.7 34.1-14.1 34.1H320v168c0 13.3-10.7 24-24 24zm216-8v112c0 13.3-10.7 24-24 24H24c-13.3 0-24-10.7-24-24V376c0-13.3 10.7-24 24-24h136v8c0 30.9 25.1 56 56 56h80c30.9 0 56-25.1 56-56v-8h136c13.3 0 24 10.7 24 24zm-124 88c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20zm64 0c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20z"],
	"user": [448, 512, [], "f007", "M224 256c70.7 0 128-57.3 128-128S294.7 0 224 0 96 57.3 96 128s57.3 128 128 128zm89.6 32h-16.7c-22.2 10.2-46.9 16-72.9 16s-50.6-5.8-72.9-16h-16.7C60.2 288 0 348.2 0 422.4V464c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48v-41.6c0-74.2-60.2-134.4-134.4-134.4z"],
	"user-alt": [512, 512, [], "f406", "M256 288c79.5 0 144-64.5 144-144S335.5 0 256 0 112 64.5 112 144s64.5 144 144 144zm128 32h-55.1c-22.2 10.2-46.9 16-72.9 16s-50.6-5.8-72.9-16H128C57.3 320 0 377.3 0 448v16c0 26.5 21.5 48 48 48h416c26.5 0 48-21.5 48-48v-16c0-70.7-57.3-128-128-128z"],
	"user-alt-slash": [640, 512, [], "f4fa", "M633.8 458.1L389.6 269.3C433.8 244.7 464 198.1 464 144 464 64.5 399.5 0 320 0c-67.1 0-123 46.1-139 108.2L45.5 3.4C38.5-2 28.5-.8 23 6.2L3.4 31.4c-5.4 7-4.2 17 2.8 22.4l588.4 454.7c7 5.4 17 4.2 22.5-2.8l19.6-25.3c5.4-6.8 4.1-16.9-2.9-22.3zM198.4 320C124.2 320 64 380.2 64 454.4v9.6c0 26.5 21.5 48 48 48h382.2L245.8 320h-47.4z"],
	"user-astronaut": [448, 512, [], "f4fb", "M64 224h13.5c24.7 56.5 80.9 96 146.5 96s121.8-39.5 146.5-96H384c8.8 0 16-7.2 16-16v-96c0-8.8-7.2-16-16-16h-13.5C345.8 39.5 289.6 0 224 0S102.2 39.5 77.5 96H64c-8.8 0-16 7.2-16 16v96c0 8.8 7.2 16 16 16zm40-88c0-22.1 21.5-40 48-40h144c26.5 0 48 17.9 48 40v24c0 53-43 96-96 96h-48c-53 0-96-43-96-96v-24zm72 72l12-36 36-12-36-12-12-36-12 36-36 12 36 12 12 36zm151.6 113.4C297.7 340.7 262.2 352 224 352s-73.7-11.3-103.6-30.6C52.9 328.5 0 385 0 454.4v9.6c0 26.5 21.5 48 48 48h80v-64c0-17.7 14.3-32 32-32h128c17.7 0 32 14.3 32 32v64h80c26.5 0 48-21.5 48-48v-9.6c0-69.4-52.9-125.9-120.4-133zM272 448c-8.8 0-16 7.2-16 16s7.2 16 16 16 16-7.2 16-16-7.2-16-16-16zm-96 0c-8.8 0-16 7.2-16 16v48h32v-48c0-8.8-7.2-16-16-16z"],
	"user-check": [640, 512, [], "f4fc", "M224 256c70.7 0 128-57.3 128-128S294.7 0 224 0 96 57.3 96 128s57.3 128 128 128zm89.6 32h-16.7c-22.2 10.2-46.9 16-72.9 16s-50.6-5.8-72.9-16h-16.7C60.2 288 0 348.2 0 422.4V464c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48v-41.6c0-74.2-60.2-134.4-134.4-134.4zm323-128.4l-27.8-28.1c-4.6-4.7-12.1-4.7-16.8-.1l-104.8 104-45.5-45.8c-4.6-4.7-12.1-4.7-16.8-.1l-28.1 27.9c-4.7 4.6-4.7 12.1-.1 16.8l81.7 82.3c4.6 4.7 12.1 4.7 16.8.1l141.3-140.2c4.6-4.7 4.7-12.2.1-16.8z"],
	"user-circle": [496, 512, [], "f2bd", "M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zm0 96c48.6 0 88 39.4 88 88s-39.4 88-88 88-88-39.4-88-88 39.4-88 88-88zm0 344c-58.7 0-111.3-26.6-146.5-68.2 18.8-35.4 55.6-59.8 98.5-59.8 2.4 0 4.8.4 7.1 1.1 13 4.2 26.6 6.9 40.9 6.9 14.3 0 28-2.7 40.9-6.9 2.3-.7 4.7-1.1 7.1-1.1 42.9 0 79.7 24.4 98.5 59.8C359.3 421.4 306.7 448 248 448z"],
	"user-clock": [640, 512, [], "f4fd", "M496 224c-79.6 0-144 64.4-144 144s64.4 144 144 144 144-64.4 144-144-64.4-144-144-144zm64 150.3c0 5.3-4.4 9.7-9.7 9.7h-60.6c-5.3 0-9.7-4.4-9.7-9.7v-76.6c0-5.3 4.4-9.7 9.7-9.7h12.6c5.3 0 9.7 4.4 9.7 9.7V352h38.3c5.3 0 9.7 4.4 9.7 9.7v12.6zM320 368c0-27.8 6.7-54.1 18.2-77.5-8-1.5-16.2-2.5-24.6-2.5h-16.7c-22.2 10.2-46.9 16-72.9 16s-50.6-5.8-72.9-16h-16.7C60.2 288 0 348.2 0 422.4V464c0 26.5 21.5 48 48 48h347.1c-45.3-31.9-75.1-84.5-75.1-144zm-96-112c70.7 0 128-57.3 128-128S294.7 0 224 0 96 57.3 96 128s57.3 128 128 128z"],
	"user-cog": [640, 512, [], "f4fe", "M610.5 373.3c2.6-14.1 2.6-28.5 0-42.6l25.8-14.9c3-1.7 4.3-5.2 3.3-8.5-6.7-21.6-18.2-41.2-33.2-57.4-2.3-2.5-6-3.1-9-1.4l-25.8 14.9c-10.9-9.3-23.4-16.5-36.9-21.3v-29.8c0-3.4-2.4-6.4-5.7-7.1-22.3-5-45-4.8-66.2 0-3.3.7-5.7 3.7-5.7 7.1v29.8c-13.5 4.8-26 12-36.9 21.3l-25.8-14.9c-2.9-1.7-6.7-1.1-9 1.4-15 16.2-26.5 35.8-33.2 57.4-1 3.3.4 6.8 3.3 8.5l25.8 14.9c-2.6 14.1-2.6 28.5 0 42.6l-25.8 14.9c-3 1.7-4.3 5.2-3.3 8.5 6.7 21.6 18.2 41.1 33.2 57.4 2.3 2.5 6 3.1 9 1.4l25.8-14.9c10.9 9.3 23.4 16.5 36.9 21.3v29.8c0 3.4 2.4 6.4 5.7 7.1 22.3 5 45 4.8 66.2 0 3.3-.7 5.7-3.7 5.7-7.1v-29.8c13.5-4.8 26-12 36.9-21.3l25.8 14.9c2.9 1.7 6.7 1.1 9-1.4 15-16.2 26.5-35.8 33.2-57.4 1-3.3-.4-6.8-3.3-8.5l-25.8-14.9zM496 400.5c-26.8 0-48.5-21.8-48.5-48.5s21.8-48.5 48.5-48.5 48.5 21.8 48.5 48.5-21.7 48.5-48.5 48.5zM224 256c70.7 0 128-57.3 128-128S294.7 0 224 0 96 57.3 96 128s57.3 128 128 128zm201.2 226.5c-2.3-1.2-4.6-2.6-6.8-3.9l-7.9 4.6c-6 3.4-12.8 5.3-19.6 5.3-10.9 0-21.4-4.6-28.9-12.6-18.3-19.8-32.3-43.9-40.2-69.6-5.5-17.7 1.9-36.4 17.9-45.7l7.9-4.6c-.1-2.6-.1-5.2 0-7.8l-7.9-4.6c-16-9.2-23.4-28-17.9-45.7.9-2.9 2.2-5.8 3.2-8.7-3.8-.3-7.5-1.2-11.4-1.2h-16.7c-22.2 10.2-46.9 16-72.9 16s-50.6-5.8-72.9-16h-16.7C60.2 288 0 348.2 0 422.4V464c0 26.5 21.5 48 48 48h352c10.1 0 19.5-3.2 27.2-8.5-1.2-3.8-2-7.7-2-11.8v-9.2z"],
	"user-edit": [640, 512, [], "f4ff", "M224 256c70.7 0 128-57.3 128-128S294.7 0 224 0 96 57.3 96 128s57.3 128 128 128zm89.6 32h-16.7c-22.2 10.2-46.9 16-72.9 16s-50.6-5.8-72.9-16h-16.7C60.2 288 0 348.2 0 422.4V464c0 26.5 21.5 48 48 48h274.9c-2.4-6.8-3.4-14-2.6-21.3l6.8-60.9 1.2-11.1 7.9-7.9 77.3-77.3c-24.5-27.7-60-45.5-99.9-45.5zm45.3 145.3l-6.8 61c-1.1 10.2 7.5 18.8 17.6 17.6l60.9-6.8 137.9-137.9-71.7-71.7-137.9 137.8zM633 268.9L595.1 231c-9.3-9.3-24.5-9.3-33.8 0l-37.8 37.8-4.1 4.1 71.8 71.7 41.8-41.8c9.3-9.4 9.3-24.5 0-33.9z"],
	"user-friends": [640, 512, [], "f500", "M192 256c61.9 0 112-50.1 112-112S253.9 32 192 32 80 82.1 80 144s50.1 112 112 112zm76.8 32h-8.3c-20.8 10-43.9 16-68.5 16s-47.6-6-68.5-16h-8.3C51.6 288 0 339.6 0 403.2V432c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48v-28.8c0-63.6-51.6-115.2-115.2-115.2zM480 256c53 0 96-43 96-96s-43-96-96-96-96 43-96 96 43 96 96 96zm48 32h-3.8c-13.9 4.8-28.6 8-44.2 8s-30.3-3.2-44.2-8H432c-20.4 0-39.2 5.9-55.7 15.4 24.4 26.3 39.7 61.2 39.7 99.8v38.4c0 2.2-.5 4.3-.6 6.4H592c26.5 0 48-21.5 48-48 0-61.9-50.1-112-112-112z"],
	"user-graduate": [448, 512, [], "f501", "M319.4 320.6L224 416l-95.4-95.4C57.1 323.7 0 382.2 0 454.4v9.6c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48v-9.6c0-72.2-57.1-130.7-128.6-133.8zM13.6 79.8l6.4 1.5v58.4c-7 4.2-12 11.5-12 20.3 0 8.4 4.6 15.4 11.1 19.7L3.5 242c-1.7 6.9 2.1 14 7.6 14h41.8c5.5 0 9.3-7.1 7.6-14l-15.6-62.3C51.4 175.4 56 168.4 56 160c0-8.8-5-16.1-12-20.3V87.1l66 15.9c-8.6 17.2-14 36.4-14 57 0 70.7 57.3 128 128 128s128-57.3 128-128c0-20.6-5.3-39.8-14-57l96.3-23.2c18.2-4.4 18.2-27.1 0-31.5l-190.4-46c-13-3.1-26.7-3.1-39.7 0L13.6 48.2c-18.1 4.4-18.1 27.2 0 31.6z"],
	"user-injured": [448, 512, [], "f728", "M277.37 11.98C261.08 4.47 243.11 0 224 0c-53.69 0-99.5 33.13-118.51 80h81.19l90.69-68.02zM342.51 80c-7.9-19.47-20.67-36.2-36.49-49.52L239.99 80h102.52zM224 256c70.69 0 128-57.31 128-128 0-5.48-.95-10.7-1.61-16H97.61c-.67 5.3-1.61 10.52-1.61 16 0 70.69 57.31 128 128 128zM80 299.7V512h128.26l-98.45-221.52A132.835 132.835 0 0 0 80 299.7zM0 464c0 26.51 21.49 48 48 48V320.24C18.88 344.89 0 381.26 0 422.4V464zm256-48h-55.38l42.67 96H256c26.47 0 48-21.53 48-48s-21.53-48-48-48zm57.6-128h-16.71c-22.24 10.18-46.88 16-72.89 16s-50.65-5.82-72.89-16h-7.37l42.67 96H256c44.11 0 80 35.89 80 80 0 18.08-6.26 34.59-16.41 48H400c26.51 0 48-21.49 48-48v-41.6c0-74.23-60.17-134.4-134.4-134.4z"],
	"user-lock": [640, 512, [], "f502", "M224 256A128 128 0 1 0 96 128a128 128 0 0 0 128 128zm96 64a63.08 63.08 0 0 1 8.1-30.5c-4.8-.5-9.5-1.5-14.5-1.5h-16.7a174.08 174.08 0 0 1-145.8 0h-16.7A134.43 134.43 0 0 0 0 422.4V464a48 48 0 0 0 48 48h280.9a63.54 63.54 0 0 1-8.9-32zm288-32h-32v-80a80 80 0 0 0-160 0v80h-32a32 32 0 0 0-32 32v160a32 32 0 0 0 32 32h224a32 32 0 0 0 32-32V320a32 32 0 0 0-32-32zM496 432a32 32 0 1 1 32-32 32 32 0 0 1-32 32zm32-144h-64v-80a32 32 0 0 1 64 0z"],
	"user-md": [448, 512, [], "f0f0", "M224 256c70.7 0 128-57.3 128-128S294.7 0 224 0 96 57.3 96 128s57.3 128 128 128zM104 424c0 13.3 10.7 24 24 24s24-10.7 24-24-10.7-24-24-24-24 10.7-24 24zm216-135.4v49c36.5 7.4 64 39.8 64 78.4v41.7c0 7.6-5.4 14.2-12.9 15.7l-32.2 6.4c-4.3.9-8.5-1.9-9.4-6.3l-3.1-15.7c-.9-4.3 1.9-8.6 6.3-9.4l19.3-3.9V416c0-62.8-96-65.1-96 1.9v26.7l19.3 3.9c4.3.9 7.1 5.1 6.3 9.4l-3.1 15.7c-.9 4.3-5.1 7.1-9.4 6.3l-31.2-4.2c-7.9-1.1-13.8-7.8-13.8-15.9V416c0-38.6 27.5-70.9 64-78.4v-45.2c-2.2.7-4.4 1.1-6.6 1.9-18 6.3-37.3 9.8-57.4 9.8s-39.4-3.5-57.4-9.8c-7.4-2.6-14.9-4.2-22.6-5.2v81.6c23.1 6.9 40 28.1 40 53.4 0 30.9-25.1 56-56 56s-56-25.1-56-56c0-25.3 16.9-46.5 40-53.4v-80.4C48.5 301 0 355.8 0 422.4v44.8C0 491.9 20.1 512 44.8 512h358.4c24.7 0 44.8-20.1 44.8-44.8v-44.8c0-72-56.8-130.3-128-133.8z"],
	"user-minus": [640, 512, [], "f503", "M624 208H432c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h192c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zm-400 48c70.7 0 128-57.3 128-128S294.7 0 224 0 96 57.3 96 128s57.3 128 128 128zm89.6 32h-16.7c-22.2 10.2-46.9 16-72.9 16s-50.6-5.8-72.9-16h-16.7C60.2 288 0 348.2 0 422.4V464c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48v-41.6c0-74.2-60.2-134.4-134.4-134.4z"],
	"user-ninja": [448, 512, [], "f504", "M325.4 289.2L224 390.6 122.6 289.2C54 295.3 0 352.2 0 422.4V464c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48v-41.6c0-70.2-54-127.1-122.6-133.2zM32 192c27.3 0 51.8-11.5 69.2-29.7 15.1 53.9 64 93.7 122.8 93.7 70.7 0 128-57.3 128-128S294.7 0 224 0c-50.4 0-93.6 29.4-114.5 71.8C92.1 47.8 64 32 32 32c0 33.4 17.1 62.8 43.1 80-26 17.2-43.1 46.6-43.1 80zm144-96h96c17.7 0 32 14.3 32 32H144c0-17.7 14.3-32 32-32z"],
	"user-nurse": [448, 512, [], "f82f", "M319.41,320,224,415.39,128.59,320C57.1,323.1,0,381.6,0,453.79A58.21,58.21,0,0,0,58.21,512H389.79A58.21,58.21,0,0,0,448,453.79C448,381.6,390.9,323.1,319.41,320ZM224,304A128,128,0,0,0,352,176V65.82a32,32,0,0,0-20.76-30L246.47,4.07a64,64,0,0,0-44.94,0L116.76,35.86A32,32,0,0,0,96,65.82V176A128,128,0,0,0,224,304ZM184,71.67a5,5,0,0,1,5-5h21.67V45a5,5,0,0,1,5-5h16.66a5,5,0,0,1,5,5V66.67H259a5,5,0,0,1,5,5V88.33a5,5,0,0,1-5,5H237.33V115a5,5,0,0,1-5,5H215.67a5,5,0,0,1-5-5V93.33H189a5,5,0,0,1-5-5ZM144,160H304v16a80,80,0,0,1-160,0Z"],
	"user-plus": [640, 512, [], "f234", "M624 208h-64v-64c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v64h-64c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h64v64c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-64h64c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zm-400 48c70.7 0 128-57.3 128-128S294.7 0 224 0 96 57.3 96 128s57.3 128 128 128zm89.6 32h-16.7c-22.2 10.2-46.9 16-72.9 16s-50.6-5.8-72.9-16h-16.7C60.2 288 0 348.2 0 422.4V464c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48v-41.6c0-74.2-60.2-134.4-134.4-134.4z"],
	"user-secret": [448, 512, [], "f21b", "M383.9 308.3l23.9-62.6c4-10.5-3.7-21.7-15-21.7h-58.5c11-18.9 17.8-40.6 17.8-64v-.3c39.2-7.8 64-19.1 64-31.7 0-13.3-27.3-25.1-70.1-33-9.2-32.8-27-65.8-40.6-82.8-9.5-11.9-25.9-15.6-39.5-8.8l-27.6 13.8c-9 4.5-19.6 4.5-28.6 0L182.1 3.4c-13.6-6.8-30-3.1-39.5 8.8-13.5 17-31.4 50-40.6 82.8-42.7 7.9-70 19.7-70 33 0 12.6 24.8 23.9 64 31.7v.3c0 23.4 6.8 45.1 17.8 64H56.3c-11.5 0-19.2 11.7-14.7 22.3l25.8 60.2C27.3 329.8 0 372.7 0 422.4v44.8C0 491.9 20.1 512 44.8 512h358.4c24.7 0 44.8-20.1 44.8-44.8v-44.8c0-48.4-25.8-90.4-64.1-114.1zM176 480l-41.6-192 49.6 32 24 40-32 120zm96 0l-32-120 24-40 49.6-32L272 480zm41.7-298.5c-3.9 11.9-7 24.6-16.5 33.4-10.1 9.3-48 22.4-64-25-2.8-8.4-15.4-8.4-18.3 0-17 50.2-56 32.4-64 25-9.5-8.8-12.7-21.5-16.5-33.4-.8-2.5-6.3-5.7-6.3-5.8v-10.8c28.3 3.6 61 5.8 96 5.8s67.7-2.1 96-5.8v10.8c-.1.1-5.6 3.2-6.4 5.8z"],
	"user-shield": [640, 512, [], "f505", "M622.3 271.1l-115.2-45c-4.1-1.6-12.6-3.7-22.2 0l-115.2 45c-10.7 4.2-17.7 14-17.7 24.9 0 111.6 68.7 188.8 132.9 213.9 9.6 3.7 18 1.6 22.2 0C558.4 489.9 640 420.5 640 296c0-10.9-7-20.7-17.7-24.9zM496 462.4V273.3l95.5 37.3c-5.6 87.1-60.9 135.4-95.5 151.8zM224 256c70.7 0 128-57.3 128-128S294.7 0 224 0 96 57.3 96 128s57.3 128 128 128zm96 40c0-2.5.8-4.8 1.1-7.2-2.5-.1-4.9-.8-7.5-.8h-16.7c-22.2 10.2-46.9 16-72.9 16s-50.6-5.8-72.9-16h-16.7C60.2 288 0 348.2 0 422.4V464c0 26.5 21.5 48 48 48h352c6.8 0 13.3-1.5 19.2-4-54-42.9-99.2-116.7-99.2-212z"],
	"user-slash": [640, 512, [], "f506", "M633.8 458.1L362.3 248.3C412.1 230.7 448 183.8 448 128 448 57.3 390.7 0 320 0c-67.1 0-121.5 51.8-126.9 117.4L45.5 3.4C38.5-2 28.5-.8 23 6.2L3.4 31.4c-5.4 7-4.2 17 2.8 22.4l588.4 454.7c7 5.4 17 4.2 22.5-2.8l19.6-25.3c5.4-6.8 4.1-16.9-2.9-22.3zM96 422.4V464c0 26.5 21.5 48 48 48h350.2L207.4 290.3C144.2 301.3 96 356 96 422.4z"],
	"user-tag": [640, 512, [], "f507", "M630.6 364.9l-90.3-90.2c-12-12-28.3-18.7-45.3-18.7h-79.3c-17.7 0-32 14.3-32 32v79.2c0 17 6.7 33.2 18.7 45.2l90.3 90.2c12.5 12.5 32.8 12.5 45.3 0l92.5-92.5c12.6-12.5 12.6-32.7.1-45.2zm-182.8-21c-13.3 0-24-10.7-24-24s10.7-24 24-24 24 10.7 24 24c0 13.2-10.7 24-24 24zm-223.8-88c70.7 0 128-57.3 128-128C352 57.3 294.7 0 224 0S96 57.3 96 128c0 70.6 57.3 127.9 128 127.9zm127.8 111.2V294c-12.2-3.6-24.9-6.2-38.2-6.2h-16.7c-22.2 10.2-46.9 16-72.9 16s-50.6-5.8-72.9-16h-16.7C60.2 287.9 0 348.1 0 422.3v41.6c0 26.5 21.5 48 48 48h352c15.5 0 29.1-7.5 37.9-18.9l-58-58c-18.1-18.1-28.1-42.2-28.1-67.9z"],
	"user-tie": [448, 512, [], "f508", "M224 256c70.7 0 128-57.3 128-128S294.7 0 224 0 96 57.3 96 128s57.3 128 128 128zm95.8 32.6L272 480l-32-136 32-56h-96l32 56-32 136-47.8-191.4C56.9 292 0 350.3 0 422.4V464c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48v-41.6c0-72.1-56.9-130.4-128.2-133.8z"],
	"user-times": [640, 512, [], "f235", "M589.6 240l45.6-45.6c6.3-6.3 6.3-16.5 0-22.8l-22.8-22.8c-6.3-6.3-16.5-6.3-22.8 0L544 194.4l-45.6-45.6c-6.3-6.3-16.5-6.3-22.8 0l-22.8 22.8c-6.3 6.3-6.3 16.5 0 22.8l45.6 45.6-45.6 45.6c-6.3 6.3-6.3 16.5 0 22.8l22.8 22.8c6.3 6.3 16.5 6.3 22.8 0l45.6-45.6 45.6 45.6c6.3 6.3 16.5 6.3 22.8 0l22.8-22.8c6.3-6.3 6.3-16.5 0-22.8L589.6 240zM224 256c70.7 0 128-57.3 128-128S294.7 0 224 0 96 57.3 96 128s57.3 128 128 128zm89.6 32h-16.7c-22.2 10.2-46.9 16-72.9 16s-50.6-5.8-72.9-16h-16.7C60.2 288 0 348.2 0 422.4V464c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48v-41.6c0-74.2-60.2-134.4-134.4-134.4z"],
	"users": [640, 512, [], "f0c0", "M96 224c35.3 0 64-28.7 64-64s-28.7-64-64-64-64 28.7-64 64 28.7 64 64 64zm448 0c35.3 0 64-28.7 64-64s-28.7-64-64-64-64 28.7-64 64 28.7 64 64 64zm32 32h-64c-17.6 0-33.5 7.1-45.1 18.6 40.3 22.1 68.9 62 75.1 109.4h66c17.7 0 32-14.3 32-32v-32c0-35.3-28.7-64-64-64zm-256 0c61.9 0 112-50.1 112-112S381.9 32 320 32 208 82.1 208 144s50.1 112 112 112zm76.8 32h-8.3c-20.8 10-43.9 16-68.5 16s-47.6-6-68.5-16h-8.3C179.6 288 128 339.6 128 403.2V432c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48v-28.8c0-63.6-51.6-115.2-115.2-115.2zm-223.7-13.4C161.5 263.1 145.6 256 128 256H64c-35.3 0-64 28.7-64 64v32c0 17.7 14.3 32 32 32h65.9c6.3-47.4 34.9-87.3 75.2-109.4z"],
	"users-cog": [640, 512, [], "f509", "M610.5 341.3c2.6-14.1 2.6-28.5 0-42.6l25.8-14.9c3-1.7 4.3-5.2 3.3-8.5-6.7-21.6-18.2-41.2-33.2-57.4-2.3-2.5-6-3.1-9-1.4l-25.8 14.9c-10.9-9.3-23.4-16.5-36.9-21.3v-29.8c0-3.4-2.4-6.4-5.7-7.1-22.3-5-45-4.8-66.2 0-3.3.7-5.7 3.7-5.7 7.1v29.8c-13.5 4.8-26 12-36.9 21.3l-25.8-14.9c-2.9-1.7-6.7-1.1-9 1.4-15 16.2-26.5 35.8-33.2 57.4-1 3.3.4 6.8 3.3 8.5l25.8 14.9c-2.6 14.1-2.6 28.5 0 42.6l-25.8 14.9c-3 1.7-4.3 5.2-3.3 8.5 6.7 21.6 18.2 41.1 33.2 57.4 2.3 2.5 6 3.1 9 1.4l25.8-14.9c10.9 9.3 23.4 16.5 36.9 21.3v29.8c0 3.4 2.4 6.4 5.7 7.1 22.3 5 45 4.8 66.2 0 3.3-.7 5.7-3.7 5.7-7.1v-29.8c13.5-4.8 26-12 36.9-21.3l25.8 14.9c2.9 1.7 6.7 1.1 9-1.4 15-16.2 26.5-35.8 33.2-57.4 1-3.3-.4-6.8-3.3-8.5l-25.8-14.9zM496 368.5c-26.8 0-48.5-21.8-48.5-48.5s21.8-48.5 48.5-48.5 48.5 21.8 48.5 48.5-21.7 48.5-48.5 48.5zM96 224c35.3 0 64-28.7 64-64s-28.7-64-64-64-64 28.7-64 64 28.7 64 64 64zm224 32c1.9 0 3.7-.5 5.6-.6 8.3-21.7 20.5-42.1 36.3-59.2 7.4-8 17.9-12.6 28.9-12.6 6.9 0 13.7 1.8 19.6 5.3l7.9 4.6c.8-.5 1.6-.9 2.4-1.4 7-14.6 11.2-30.8 11.2-48 0-61.9-50.1-112-112-112S208 82.1 208 144c0 61.9 50.1 112 112 112zm105.2 194.5c-2.3-1.2-4.6-2.6-6.8-3.9-8.2 4.8-15.3 9.8-27.5 9.8-10.9 0-21.4-4.6-28.9-12.6-18.3-19.8-32.3-43.9-40.2-69.6-10.7-34.5 24.9-49.7 25.8-50.3-.1-2.6-.1-5.2 0-7.8l-7.9-4.6c-3.8-2.2-7-5-9.8-8.1-3.3.2-6.5.6-9.8.6-24.6 0-47.6-6-68.5-16h-8.3C179.6 288 128 339.6 128 403.2V432c0 26.5 21.5 48 48 48h255.4c-3.7-6-6.2-12.8-6.2-20.3v-9.2zM173.1 274.6C161.5 263.1 145.6 256 128 256H64c-35.3 0-64 28.7-64 64v32c0 17.7 14.3 32 32 32h65.9c6.3-47.4 34.9-87.3 75.2-109.4z"],
	"users-slash": [640, 512, [], "e073", "M132.65,212.32,36.21,137.78A63.4,63.4,0,0,0,32,160a63.84,63.84,0,0,0,100.65,52.32Zm40.44,62.28A63.79,63.79,0,0,0,128,256H64A64.06,64.06,0,0,0,0,320v32a32,32,0,0,0,32,32H97.91A146.62,146.62,0,0,1,173.09,274.6ZM544,224a64,64,0,1,0-64-64A64.06,64.06,0,0,0,544,224ZM500.56,355.11a114.24,114.24,0,0,0-84.47-65.28L361,247.23c41.46-16.3,71-55.92,71-103.23A111.93,111.93,0,0,0,320,32c-57.14,0-103.69,42.83-110.6,98.08L45.46,3.38A16,16,0,0,0,23,6.19L3.37,31.46A16,16,0,0,0,6.18,53.91L594.53,508.63A16,16,0,0,0,617,505.82l19.64-25.27a16,16,0,0,0-2.81-22.45ZM128,403.21V432a48,48,0,0,0,48,48H464a47.45,47.45,0,0,0,12.57-1.87L232,289.13C173.74,294.83,128,343.42,128,403.21ZM576,256H512a63.79,63.79,0,0,0-45.09,18.6A146.29,146.29,0,0,1,542,384h66a32,32,0,0,0,32-32V320A64.06,64.06,0,0,0,576,256Z"],
	"utensil-spoon": [512, 512, [], "f2e5", "M480.1 31.9c-55-55.1-164.9-34.5-227.8 28.5-49.3 49.3-55.1 110-28.8 160.4L9 413.2c-11.6 10.5-12.1 28.5-1 39.5L59.3 504c11 11 29.1 10.5 39.5-1.1l192.4-214.4c50.4 26.3 111.1 20.5 160.4-28.8 63-62.9 83.6-172.8 28.5-227.8z"],
	"utensils": [416, 512, [], "f2e7", "M207.9 15.2c.8 4.7 16.1 94.5 16.1 128.8 0 52.3-27.8 89.6-68.9 104.6L168 486.7c.7 13.7-10.2 25.3-24 25.3H80c-13.7 0-24.7-11.5-24-25.3l12.9-238.1C27.7 233.6 0 196.2 0 144 0 109.6 15.3 19.9 16.1 15.2 19.3-5.1 61.4-5.4 64 16.3v141.2c1.3 3.4 15.1 3.2 16 0 1.4-25.3 7.9-139.2 8-141.8 3.3-20.8 44.7-20.8 47.9 0 .2 2.7 6.6 116.5 8 141.8.9 3.2 14.8 3.4 16 0V16.3c2.6-21.6 44.8-21.4 48-1.1zm119.2 285.7l-15 185.1c-1.2 14 9.9 26 23.9 26h56c13.3 0 24-10.7 24-24V24c0-13.2-10.7-24-24-24-82.5 0-221.4 178.5-64.9 300.9z"],
	"vector-square": [512, 512, [], "f5cb", "M512 128V32c0-17.67-14.33-32-32-32h-96c-17.67 0-32 14.33-32 32H160c0-17.67-14.33-32-32-32H32C14.33 0 0 14.33 0 32v96c0 17.67 14.33 32 32 32v192c-17.67 0-32 14.33-32 32v96c0 17.67 14.33 32 32 32h96c17.67 0 32-14.33 32-32h192c0 17.67 14.33 32 32 32h96c17.67 0 32-14.33 32-32v-96c0-17.67-14.33-32-32-32V160c17.67 0 32-14.33 32-32zm-96-64h32v32h-32V64zM64 64h32v32H64V64zm32 384H64v-32h32v32zm352 0h-32v-32h32v32zm-32-96h-32c-17.67 0-32 14.33-32 32v32H160v-32c0-17.67-14.33-32-32-32H96V160h32c17.67 0 32-14.33 32-32V96h192v32c0 17.67 14.33 32 32 32h32v192z"],
	"venus": [288, 512, [], "f221", "M288 176c0-79.5-64.5-144-144-144S0 96.5 0 176c0 68.5 47.9 125.9 112 140.4V368H76c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h36v36c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12v-36h36c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-36v-51.6c64.1-14.5 112-71.9 112-140.4zm-224 0c0-44.1 35.9-80 80-80s80 35.9 80 80-35.9 80-80 80-80-35.9-80-80z"],
	"venus-double": [512, 512, [], "f226", "M288 176c0-79.5-64.5-144-144-144S0 96.5 0 176c0 68.5 47.9 125.9 112 140.4V368H76c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h36v36c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12v-36h36c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-36v-51.6c64.1-14.5 112-71.9 112-140.4zm-224 0c0-44.1 35.9-80 80-80s80 35.9 80 80-35.9 80-80 80-80-35.9-80-80zm336 140.4V368h36c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12h-36v36c0 6.6-5.4 12-12 12h-40c-6.6 0-12-5.4-12-12v-36h-36c-6.6 0-12-5.4-12-12v-40c0-6.6 5.4-12 12-12h36v-51.6c-21.2-4.8-40.6-14.3-57.2-27.3 14-16.7 25-36 32.1-57.1 14.5 14.8 34.7 24 57.1 24 44.1 0 80-35.9 80-80s-35.9-80-80-80c-22.3 0-42.6 9.2-57.1 24-7.1-21.1-18-40.4-32.1-57.1C303.4 43.6 334.3 32 368 32c79.5 0 144 64.5 144 144 0 68.5-47.9 125.9-112 140.4z"],
	"venus-mars": [576, 512, [], "f228", "M564 0h-79c-10.7 0-16 12.9-8.5 20.5l16.9 16.9-48.7 48.7C422.5 72.1 396.2 64 368 64c-33.7 0-64.6 11.6-89.2 30.9 14 16.7 25 36 32.1 57.1 14.5-14.8 34.7-24 57.1-24 44.1 0 80 35.9 80 80s-35.9 80-80 80c-22.3 0-42.6-9.2-57.1-24-7.1 21.1-18 40.4-32.1 57.1 24.5 19.4 55.5 30.9 89.2 30.9 79.5 0 144-64.5 144-144 0-28.2-8.1-54.5-22.1-76.7l48.7-48.7 16.9 16.9c2.4 2.4 5.4 3.5 8.4 3.5 6.2 0 12.1-4.8 12.1-12V12c0-6.6-5.4-12-12-12zM144 64C64.5 64 0 128.5 0 208c0 68.5 47.9 125.9 112 140.4V400H76c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h36v36c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12v-36h36c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-36v-51.6c64.1-14.6 112-71.9 112-140.4 0-79.5-64.5-144-144-144zm0 224c-44.1 0-80-35.9-80-80s35.9-80 80-80 80 35.9 80 80-35.9 80-80 80z"],
	"vest": [448, 512, [], "e085", "M437.252,239.877,384,160V32A32,32,0,0,0,352,0H320a24.021,24.021,0,0,0-13.312,4.031l-25,16.672a103.794,103.794,0,0,1-115.376,0l-25-16.672A24.021,24.021,0,0,0,128,0H96A32,32,0,0,0,64,32V160L10.748,239.877A64,64,0,0,0,0,275.377V480a32,32,0,0,0,32,32H192V288a31.987,31.987,0,0,1,1.643-10.119L207.135,237.4,150.188,66.564A151.518,151.518,0,0,0,224,86.234a151.55,151.55,0,0,0,73.812-19.672L224,288V512H416a32,32,0,0,0,32-32V275.377A64,64,0,0,0,437.252,239.877ZM131.312,371.312l-48,48a16,16,0,0,1-22.624-22.624l48-48a16,16,0,0,1,22.624,22.624Zm256,48a15.992,15.992,0,0,1-22.624,0l-48-48a16,16,0,0,1,22.624-22.624l48,48A15.993,15.993,0,0,1,387.312,419.312Z"],
	"vest-patches": [448, 512, [], "e086", "M437.252,239.877,384,160V32A32,32,0,0,0,352,0H320a23.982,23.982,0,0,0-13.312,4.031l-25,16.672a103.794,103.794,0,0,1-115.376,0l-25-16.672A23.982,23.982,0,0,0,128,0H96A32,32,0,0,0,64,32V160L10.748,239.877A64,64,0,0,0,0,275.377V480a32,32,0,0,0,32,32H192V288a31.987,31.987,0,0,1,1.643-10.119L207.135,237.4,150.188,66.561A151.579,151.579,0,0,0,224,86.234a151.565,151.565,0,0,0,73.811-19.668L224,288V512H416a32,32,0,0,0,32-32V275.377A64,64,0,0,0,437.252,239.877ZM63.5,272.484a12.01,12.01,0,0,1,17-16.968l15.5,15.5,15.5-15.5a12.01,12.01,0,0,1,17,16.968L112.984,288,128.5,303.516a12.01,12.01,0,0,1-17,16.968L96,304.984l-15.5,15.5a12.01,12.01,0,0,1-17-16.968L79.016,288ZM96,456a40,40,0,1,1,40-40A40,40,0,0,1,96,456ZM359.227,335.785,310.7,336a6.671,6.671,0,0,1-6.7-6.7l.215-48.574A24.987,24.987,0,0,1,331.43,256.1c12.789,1.162,22.129,12.619,22.056,25.419l-.037,5.057,5.051-.037c12.826-.035,24.236,9.275,25.4,22.076A24.948,24.948,0,0,1,359.227,335.785Z"],
	"vial": [480, 512, [], "f492", "M477.7 186.1L309.5 18.3c-3.1-3.1-8.2-3.1-11.3 0l-34 33.9c-3.1 3.1-3.1 8.2 0 11.3l11.2 11.1L33 316.5c-38.8 38.7-45.1 102-9.4 143.5 20.6 24 49.5 36 78.4 35.9 26.4 0 52.8-10 72.9-30.1l246.3-245.7 11.2 11.1c3.1 3.1 8.2 3.1 11.3 0l34-33.9c3.1-3 3.1-8.1 0-11.2zM318 256H161l148-147.7 78.5 78.3L318 256z"],
	"vials": [640, 512, [], "f493", "M72 64h24v240c0 44.1 35.9 80 80 80s80-35.9 80-80V64h24c4.4 0 8-3.6 8-8V8c0-4.4-3.6-8-8-8H72c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8zm72 0h64v96h-64V64zm480 384H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h608c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zM360 64h24v240c0 44.1 35.9 80 80 80s80-35.9 80-80V64h24c4.4 0 8-3.6 8-8V8c0-4.4-3.6-8-8-8H360c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8zm72 0h64v96h-64V64z"],
	"video": [576, 512, [], "f03d", "M336.2 64H47.8C21.4 64 0 85.4 0 111.8v288.4C0 426.6 21.4 448 47.8 448h288.4c26.4 0 47.8-21.4 47.8-47.8V111.8c0-26.4-21.4-47.8-47.8-47.8zm189.4 37.7L416 177.3v157.4l109.6 75.5c21.2 14.6 50.4-.3 50.4-25.8V127.5c0-25.4-29.1-40.4-50.4-25.8z"],
	"video-slash": [640, 512, [], "f4e2", "M633.8 458.1l-55-42.5c15.4-1.4 29.2-13.7 29.2-31.1v-257c0-25.5-29.1-40.4-50.4-25.8L448 177.3v137.2l-32-24.7v-178c0-26.4-21.4-47.8-47.8-47.8H123.9L45.5 3.4C38.5-2 28.5-.8 23 6.2L3.4 31.4c-5.4 7-4.2 17 2.8 22.4L42.7 82 416 370.6l178.5 138c7 5.4 17 4.2 22.5-2.8l19.6-25.3c5.5-6.9 4.2-17-2.8-22.4zM32 400.2c0 26.4 21.4 47.8 47.8 47.8h288.4c11.2 0 21.4-4 29.6-10.5L32 154.7v245.5z"],
	"vihara": [640, 512, [], "f6a7", "M632.88 400.71L544 352v-64l55.16-17.69c11.79-5.9 11.79-22.72 0-28.62L480 192v-64l27.31-16.3c7.72-7.72 5.61-20.74-4.16-25.62L320 0 136.85 86.07c-9.77 4.88-11.88 17.9-4.16 25.62L160 128v64L40.84 241.69c-11.79 5.9-11.79 22.72 0 28.62L96 288v64L7.12 400.71c-5.42 3.62-7.7 9.63-7 15.29.62 5.01 3.57 9.75 8.72 12.33L64 448v48c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-48h160v48c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-48h160v48c0 8.84 7.16 16 16 16h32c8.84 0 16-7.16 16-16v-48l55.15-19.67c5.16-2.58 8.1-7.32 8.72-12.33.71-5.67-1.57-11.68-6.99-15.29zM224 128h192v64H224v-64zm-64 224v-64h320v64H160z"],
	"virus": [512, 512, [], "e074", "M483.55,227.55H462c-50.68,0-76.07-61.27-40.23-97.11L437,115.19A28.44,28.44,0,0,0,396.8,75L381.56,90.22c-35.84,35.83-97.11,10.45-97.11-40.23V28.44a28.45,28.45,0,0,0-56.9,0V50c0,50.68-61.27,76.06-97.11,40.23L115.2,75A28.44,28.44,0,0,0,75,115.19l15.25,15.25c35.84,35.84,10.45,97.11-40.23,97.11H28.45a28.45,28.45,0,1,0,0,56.89H50c50.68,0,76.07,61.28,40.23,97.12L75,396.8A28.45,28.45,0,0,0,115.2,437l15.24-15.25c35.84-35.84,97.11-10.45,97.11,40.23v21.54a28.45,28.45,0,0,0,56.9,0V462c0-50.68,61.27-76.07,97.11-40.23L396.8,437A28.45,28.45,0,0,0,437,396.8l-15.25-15.24c-35.84-35.84-10.45-97.12,40.23-97.12h21.54a28.45,28.45,0,1,0,0-56.89ZM224,272a48,48,0,1,1,48-48A48,48,0,0,1,224,272Zm80,56a24,24,0,1,1,24-24A24,24,0,0,1,304,328Z"],
	"virus-slash": [640, 512, [], "e075", "M114,227.6H92.4C76.7,227.6,64,240.3,64,256s12.7,28.4,28.4,28.4H114c50.7,0,76.1,61.3,40.2,97.1L139,396.8 c-11.5,10.7-12.2,28.7-1.6,40.2s28.7,12.2,40.2,1.6c0.5-0.5,1.1-1,1.6-1.6l15.2-15.2c35.8-35.8,97.1-10.5,97.1,40.2v21.5 c0,15.7,12.8,28.4,28.5,28.4c15.7,0,28.4-12.7,28.4-28.4V462c0-26.6,17-45.9,38.2-53.4l-244.5-189 C133.7,224.7,123.9,227.5,114,227.6z M617,505.8l19.6-25.3c5.4-7,4.2-17-2.8-22.5L470.6,332c4.2-25.4,24.9-47.5,55.4-47.5h21.5 c15.7,0,28.4-12.7,28.4-28.4s-12.7-28.4-28.4-28.4H526c-50.7,0-76.1-61.3-40.2-97.1l15.2-15.3c10.7-11.5,10-29.5-1.6-40.2 c-10.9-10.1-27.7-10.1-38.6,0l-15.2,15.2c-35.8,35.8-97.1,10.5-97.1-40.2V28.5C348.4,12.7,335.7,0,320,0 c-15.7,0-28.4,12.7-28.4,28.4V50c0,50.7-61.3,76.1-97.1,40.2L179.2,75c-11.1-11.1-29.4-10.6-40.5,0.5L45.5,3.4 c-7-5.4-17-4.2-22.5,2.8L3.4,31.5c-5.4,7-4.2,17,2.8,22.5l588.4,454.7C601.5,514.1,611.6,512.8,617,505.8z M335.4,227.5l-62.9-48.6 c4.9-1.8,10.2-2.8,15.4-2.9c26.5,0,48,21.5,48,48C336,225.2,335.5,226.3,335.4,227.5z"],
	"viruses": [640, 512, [], "e076", "M624,352H611.88c-28.51,0-42.79-34.47-22.63-54.63l8.58-8.57a16,16,0,1,0-22.63-22.63l-8.57,8.58C546.47,294.91,512,280.63,512,252.12V240a16,16,0,0,0-32,0v12.12c0,28.51-34.47,42.79-54.63,22.63l-8.57-8.58a16,16,0,0,0-22.63,22.63l8.58,8.57c20.16,20.16,5.88,54.63-22.63,54.63H368a16,16,0,0,0,0,32h12.12c28.51,0,42.79,34.47,22.63,54.63l-8.58,8.57a16,16,0,1,0,22.63,22.63l8.57-8.58c20.16-20.16,54.63-5.88,54.63,22.63V496a16,16,0,0,0,32,0V483.88c0-28.51,34.47-42.79,54.63-22.63l8.57,8.58a16,16,0,1,0,22.63-22.63l-8.58-8.57C569.09,418.47,583.37,384,611.88,384H624a16,16,0,0,0,0-32ZM480,384a32,32,0,1,1,32-32A32,32,0,0,1,480,384ZM346.51,213.33h16.16a21.33,21.33,0,0,0,0-42.66H346.51c-38,0-57.05-46-30.17-72.84l11.43-11.44A21.33,21.33,0,0,0,297.6,56.23L286.17,67.66c-26.88,26.88-72.84,7.85-72.84-30.17V21.33a21.33,21.33,0,0,0-42.66,0V37.49c0,38-46,57.05-72.84,30.17L86.4,56.23A21.33,21.33,0,0,0,56.23,86.39L67.66,97.83c26.88,26.88,7.85,72.84-30.17,72.84H21.33a21.33,21.33,0,0,0,0,42.66H37.49c38,0,57.05,46,30.17,72.84L56.23,297.6A21.33,21.33,0,1,0,86.4,327.77l11.43-11.43c26.88-26.88,72.84-7.85,72.84,30.17v16.16a21.33,21.33,0,0,0,42.66,0V346.51c0-38,46-57.05,72.84-30.17l11.43,11.43a21.33,21.33,0,0,0,30.17-30.17l-11.43-11.43C289.46,259.29,308.49,213.33,346.51,213.33ZM160,192a32,32,0,1,1,32-32A32,32,0,0,1,160,192Zm80,32a16,16,0,1,1,16-16A16,16,0,0,1,240,224Z"],
	"voicemail": [640, 512, [], "f897", "M496 128a144 144 0 0 0-119.74 224H263.74A144 144 0 1 0 144 416h352a144 144 0 0 0 0-288zM64 272a80 80 0 1 1 80 80 80 80 0 0 1-80-80zm432 80a80 80 0 1 1 80-80 80 80 0 0 1-80 80z"],
	"volleyball-ball": [512, 512, [], "f45f", "M231.39 243.48a285.56 285.56 0 0 0-22.7-105.7c-90.8 42.4-157.5 122.4-180.3 216.8a249 249 0 0 0 56.9 81.1 333.87 333.87 0 0 1 146.1-192.2zm-36.9-134.4a284.23 284.23 0 0 0-57.4-70.7c-91 49.8-144.8 152.9-125 262.2 33.4-83.1 98.4-152 182.4-191.5zm187.6 165.1c8.6-99.8-27.3-197.5-97.5-264.4-14.7-1.7-51.6-5.5-98.9 8.5A333.87 333.87 0 0 1 279.19 241a285 285 0 0 0 102.9 33.18zm-124.7 9.5a286.33 286.33 0 0 0-80.2 72.6c82 57.3 184.5 75.1 277.5 47.8a247.15 247.15 0 0 0 42.2-89.9 336.1 336.1 0 0 1-80.9 10.4c-54.6-.1-108.9-14.1-158.6-40.9zm-98.3 99.7c-15.2 26-25.7 54.4-32.1 84.2a247.07 247.07 0 0 0 289-22.1c-112.9 16.1-203.3-24.8-256.9-62.1zm180.3-360.6c55.3 70.4 82.5 161.2 74.6 253.6a286.59 286.59 0 0 0 89.7-14.2c0-2 .3-4 .3-6 0-107.8-68.7-199.1-164.6-233.4z"],
	"volume-down": [384, 512, [], "f027", "M215.03 72.04L126.06 161H24c-13.26 0-24 10.74-24 24v144c0 13.25 10.74 24 24 24h102.06l88.97 88.95c15.03 15.03 40.97 4.47 40.97-16.97V89.02c0-21.47-25.96-31.98-40.97-16.98zm123.2 108.08c-11.58-6.33-26.19-2.16-32.61 9.45-6.39 11.61-2.16 26.2 9.45 32.61C327.98 229.28 336 242.62 336 257c0 14.38-8.02 27.72-20.92 34.81-11.61 6.41-15.84 21-9.45 32.61 6.43 11.66 21.05 15.8 32.61 9.45 28.23-15.55 45.77-45 45.77-76.88s-17.54-61.32-45.78-76.87z"],
	"volume-mute": [512, 512, [], "f6a9", "M215.03 71.05L126.06 160H24c-13.26 0-24 10.74-24 24v144c0 13.25 10.74 24 24 24h102.06l88.97 88.95c15.03 15.03 40.97 4.47 40.97-16.97V88.02c0-21.46-25.96-31.98-40.97-16.97zM461.64 256l45.64-45.64c6.3-6.3 6.3-16.52 0-22.82l-22.82-22.82c-6.3-6.3-16.52-6.3-22.82 0L416 210.36l-45.64-45.64c-6.3-6.3-16.52-6.3-22.82 0l-22.82 22.82c-6.3 6.3-6.3 16.52 0 22.82L370.36 256l-45.63 45.63c-6.3 6.3-6.3 16.52 0 22.82l22.82 22.82c6.3 6.3 16.52 6.3 22.82 0L416 301.64l45.64 45.64c6.3 6.3 16.52 6.3 22.82 0l22.82-22.82c6.3-6.3 6.3-16.52 0-22.82L461.64 256z"],
	"volume-off": [256, 512, [], "f026", "M215 71l-89 89H24a24 24 0 0 0-24 24v144a24 24 0 0 0 24 24h102.06L215 441c15 15 41 4.47 41-17V88c0-21.47-26-32-41-17z"],
	"volume-up": [576, 512, [], "f028", "M215.03 71.05L126.06 160H24c-13.26 0-24 10.74-24 24v144c0 13.25 10.74 24 24 24h102.06l88.97 88.95c15.03 15.03 40.97 4.47 40.97-16.97V88.02c0-21.46-25.96-31.98-40.97-16.97zm233.32-51.08c-11.17-7.33-26.18-4.24-33.51 6.95-7.34 11.17-4.22 26.18 6.95 33.51 66.27 43.49 105.82 116.6 105.82 195.58 0 78.98-39.55 152.09-105.82 195.58-11.17 7.32-14.29 22.34-6.95 33.5 7.04 10.71 21.93 14.56 33.51 6.95C528.27 439.58 576 351.33 576 256S528.27 72.43 448.35 19.97zM480 256c0-63.53-32.06-121.94-85.77-156.24-11.19-7.14-26.03-3.82-33.12 7.46s-3.78 26.21 7.41 33.36C408.27 165.97 432 209.11 432 256s-23.73 90.03-63.48 115.42c-11.19 7.14-14.5 22.07-7.41 33.36 6.51 10.36 21.12 15.14 33.12 7.46C447.94 377.94 480 319.54 480 256zm-141.77-76.87c-11.58-6.33-26.19-2.16-32.61 9.45-6.39 11.61-2.16 26.2 9.45 32.61C327.98 228.28 336 241.63 336 256c0 14.38-8.02 27.72-20.92 34.81-11.61 6.41-15.84 21-9.45 32.61 6.43 11.66 21.05 15.8 32.61 9.45 28.23-15.55 45.77-45 45.77-76.88s-17.54-61.32-45.78-76.86z"],
	"vote-yea": [640, 512, [], "f772", "M608 320h-64v64h22.4c5.3 0 9.6 3.6 9.6 8v16c0 4.4-4.3 8-9.6 8H73.6c-5.3 0-9.6-3.6-9.6-8v-16c0-4.4 4.3-8 9.6-8H96v-64H32c-17.7 0-32 14.3-32 32v96c0 17.7 14.3 32 32 32h576c17.7 0 32-14.3 32-32v-96c0-17.7-14.3-32-32-32zm-96 64V64.3c0-17.9-14.5-32.3-32.3-32.3H160.4C142.5 32 128 46.5 128 64.3V384h384zM211.2 202l25.5-25.3c4.2-4.2 11-4.2 15.2.1l41.3 41.6 95.2-94.4c4.2-4.2 11-4.2 15.2.1l25.3 25.5c4.2 4.2 4.2 11-.1 15.2L300.5 292c-4.2 4.2-11 4.2-15.2-.1l-74.1-74.7c-4.3-4.2-4.2-11 0-15.2z"],
	"vr-cardboard": [640, 512, [], "f729", "M608 64H32C14.33 64 0 78.33 0 96v320c0 17.67 14.33 32 32 32h160.22c25.19 0 48.03-14.77 58.36-37.74l27.74-61.64C286.21 331.08 302.35 320 320 320s33.79 11.08 41.68 28.62l27.74 61.64C399.75 433.23 422.6 448 447.78 448H608c17.67 0 32-14.33 32-32V96c0-17.67-14.33-32-32-32zM160 304c-35.35 0-64-28.65-64-64s28.65-64 64-64 64 28.65 64 64-28.65 64-64 64zm320 0c-35.35 0-64-28.65-64-64s28.65-64 64-64 64 28.65 64 64-28.65 64-64 64z"],
	"walking": [320, 512, [], "f554", "M208 96c26.5 0 48-21.5 48-48S234.5 0 208 0s-48 21.5-48 48 21.5 48 48 48zm94.5 149.1l-23.3-11.8-9.7-29.4c-14.7-44.6-55.7-75.8-102.2-75.9-36-.1-55.9 10.1-93.3 25.2-21.6 8.7-39.3 25.2-49.7 46.2L17.6 213c-7.8 15.8-1.5 35 14.2 42.9 15.6 7.9 34.6 1.5 42.5-14.3L81 228c3.5-7 9.3-12.5 16.5-15.4l26.8-10.8-15.2 60.7c-5.2 20.8.4 42.9 14.9 58.8l59.9 65.4c7.2 7.9 12.3 17.4 14.9 27.7l18.3 73.3c4.3 17.1 21.7 27.6 38.8 23.3 17.1-4.3 27.6-21.7 23.3-38.8l-22.2-89c-2.6-10.3-7.7-19.9-14.9-27.7l-45.5-49.7 17.2-68.7 5.5 16.5c5.3 16.1 16.7 29.4 31.7 37l23.3 11.8c15.6 7.9 34.6 1.5 42.5-14.3 7.7-15.7 1.4-35.1-14.3-43zM73.6 385.8c-3.2 8.1-8 15.4-14.2 21.5l-50 50.1c-12.5 12.5-12.5 32.8 0 45.3s32.7 12.5 45.2 0l59.4-59.4c6.1-6.1 10.9-13.4 14.2-21.5l13.5-33.8c-55.3-60.3-38.7-41.8-47.4-53.7l-20.7 51.5z"],
	"wallet": [512, 512, [], "f555", "M461.2 128H80c-8.84 0-16-7.16-16-16s7.16-16 16-16h384c8.84 0 16-7.16 16-16 0-26.51-21.49-48-48-48H64C28.65 32 0 60.65 0 96v320c0 35.35 28.65 64 64 64h397.2c28.02 0 50.8-21.53 50.8-48V176c0-26.47-22.78-48-50.8-48zM416 336c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32z"],
	"warehouse": [640, 512, [], "f494", "M504 352H136.4c-4.4 0-8 3.6-8 8l-.1 48c0 4.4 3.6 8 8 8H504c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8zm0 96H136.1c-4.4 0-8 3.6-8 8l-.1 48c0 4.4 3.6 8 8 8h368c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8zm0-192H136.6c-4.4 0-8 3.6-8 8l-.1 48c0 4.4 3.6 8 8 8H504c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8zm106.5-139L338.4 3.7a48.15 48.15 0 0 0-36.9 0L29.5 117C11.7 124.5 0 141.9 0 161.3V504c0 4.4 3.6 8 8 8h80c4.4 0 8-3.6 8-8V256c0-17.6 14.6-32 32.6-32h382.8c18 0 32.6 14.4 32.6 32v248c0 4.4 3.6 8 8 8h80c4.4 0 8-3.6 8-8V161.3c0-19.4-11.7-36.8-29.5-44.3z"],
	"water": [576, 512, [], "f773", "M562.1 383.9c-21.5-2.4-42.1-10.5-57.9-22.9-14.1-11.1-34.2-11.3-48.2 0-37.9 30.4-107.2 30.4-145.7-1.5-13.5-11.2-33-9.1-46.7 1.8-38 30.1-106.9 30-145.2-1.7-13.5-11.2-33.3-8.9-47.1 2-15.5 12.2-36 20.1-57.7 22.4-7.9.8-13.6 7.8-13.6 15.7v32.2c0 9.1 7.6 16.8 16.7 16 28.8-2.5 56.1-11.4 79.4-25.9 56.5 34.6 137 34.1 192 0 56.5 34.6 137 34.1 192 0 23.3 14.2 50.9 23.3 79.1 25.8 9.1.8 16.7-6.9 16.7-16v-31.6c.1-8-5.7-15.4-13.8-16.3zm0-144c-21.5-2.4-42.1-10.5-57.9-22.9-14.1-11.1-34.2-11.3-48.2 0-37.9 30.4-107.2 30.4-145.7-1.5-13.5-11.2-33-9.1-46.7 1.8-38 30.1-106.9 30-145.2-1.7-13.5-11.2-33.3-8.9-47.1 2-15.5 12.2-36 20.1-57.7 22.4-7.9.8-13.6 7.8-13.6 15.7v32.2c0 9.1 7.6 16.8 16.7 16 28.8-2.5 56.1-11.4 79.4-25.9 56.5 34.6 137 34.1 192 0 56.5 34.6 137 34.1 192 0 23.3 14.2 50.9 23.3 79.1 25.8 9.1.8 16.7-6.9 16.7-16v-31.6c.1-8-5.7-15.4-13.8-16.3zm0-144C540.6 93.4 520 85.4 504.2 73 490.1 61.9 470 61.7 456 73c-37.9 30.4-107.2 30.4-145.7-1.5-13.5-11.2-33-9.1-46.7 1.8-38 30.1-106.9 30-145.2-1.7-13.5-11.2-33.3-8.9-47.1 2-15.5 12.2-36 20.1-57.7 22.4-7.9.8-13.6 7.8-13.6 15.7v32.2c0 9.1 7.6 16.8 16.7 16 28.8-2.5 56.1-11.4 79.4-25.9 56.5 34.6 137 34.1 192 0 56.5 34.6 137 34.1 192 0 23.3 14.2 50.9 23.3 79.1 25.8 9.1.8 16.7-6.9 16.7-16v-31.6c.1-8-5.7-15.4-13.8-16.3z"],
	"wave-square": [640, 512, [], "f83e", "M476 480H324a36 36 0 0 1-36-36V96h-96v156a36 36 0 0 1-36 36H16a16 16 0 0 1-16-16v-32a16 16 0 0 1 16-16h112V68a36 36 0 0 1 36-36h152a36 36 0 0 1 36 36v348h96V260a36 36 0 0 1 36-36h140a16 16 0 0 1 16 16v32a16 16 0 0 1-16 16H512v156a36 36 0 0 1-36 36z"],
	"weight": [512, 512, [], "f496", "M448 64h-25.98C438.44 92.28 448 125.01 448 160c0 105.87-86.13 192-192 192S64 265.87 64 160c0-34.99 9.56-67.72 25.98-96H64C28.71 64 0 92.71 0 128v320c0 35.29 28.71 64 64 64h384c35.29 0 64-28.71 64-64V128c0-35.29-28.71-64-64-64zM256 320c88.37 0 160-71.63 160-160S344.37 0 256 0 96 71.63 96 160s71.63 160 160 160zm-.3-151.94l33.58-78.36c3.5-8.17 12.94-11.92 21.03-8.41 8.12 3.48 11.88 12.89 8.41 21l-33.67 78.55C291.73 188 296 197.45 296 208c0 22.09-17.91 40-40 40s-40-17.91-40-40c0-21.98 17.76-39.77 39.7-39.94z"],
	"weight-hanging": [512, 512, [], "f5cd", "M510.28 445.86l-73.03-292.13c-3.8-15.19-16.44-25.72-30.87-25.72h-60.25c3.57-10.05 5.88-20.72 5.88-32 0-53.02-42.98-96-96-96s-96 42.98-96 96c0 11.28 2.3 21.95 5.88 32h-60.25c-14.43 0-27.08 10.54-30.87 25.72L1.72 445.86C-6.61 479.17 16.38 512 48.03 512h415.95c31.64 0 54.63-32.83 46.3-66.14zM256 128c-17.64 0-32-14.36-32-32s14.36-32 32-32 32 14.36 32 32-14.36 32-32 32z"],
	"wheelchair": [512, 512, [], "f193", "M496.101 385.669l14.227 28.663c3.929 7.915.697 17.516-7.218 21.445l-65.465 32.886c-16.049 7.967-35.556 1.194-43.189-15.055L331.679 320H192c-15.925 0-29.426-11.71-31.679-27.475C126.433 55.308 128.38 70.044 128 64c0-36.358 30.318-65.635 67.052-63.929 33.271 1.545 60.048 28.905 60.925 62.201.868 32.933-23.152 60.423-54.608 65.039l4.67 32.69H336c8.837 0 16 7.163 16 16v32c0 8.837-7.163 16-16 16H215.182l4.572 32H352a32 32 0 0 1 28.962 18.392L438.477 396.8l36.178-18.349c7.915-3.929 17.517-.697 21.446 7.218zM311.358 352h-24.506c-7.788 54.204-54.528 96-110.852 96-61.757 0-112-50.243-112-112 0-41.505 22.694-77.809 56.324-97.156-3.712-25.965-6.844-47.86-9.488-66.333C45.956 198.464 0 261.963 0 336c0 97.047 78.953 176 176 176 71.87 0 133.806-43.308 161.11-105.192L311.358 352z"],
	"wifi": [640, 512, [], "f1eb", "M634.91 154.88C457.74-8.99 182.19-8.93 5.09 154.88c-6.66 6.16-6.79 16.59-.35 22.98l34.24 33.97c6.14 6.1 16.02 6.23 22.4.38 145.92-133.68 371.3-133.71 517.25 0 6.38 5.85 16.26 5.71 22.4-.38l34.24-33.97c6.43-6.39 6.3-16.82-.36-22.98zM320 352c-35.35 0-64 28.65-64 64s28.65 64 64 64 64-28.65 64-64-28.65-64-64-64zm202.67-83.59c-115.26-101.93-290.21-101.82-405.34 0-6.9 6.1-7.12 16.69-.57 23.15l34.44 33.99c6 5.92 15.66 6.32 22.05.8 83.95-72.57 209.74-72.41 293.49 0 6.39 5.52 16.05 5.13 22.05-.8l34.44-33.99c6.56-6.46 6.33-17.06-.56-23.15z"],
	"wind": [512, 512, [], "f72e", "M156.7 256H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h142.2c15.9 0 30.8 10.9 33.4 26.6 3.3 20-12.1 37.4-31.6 37.4-14.1 0-26.1-9.2-30.4-21.9-2.1-6.3-8.6-10.1-15.2-10.1H81.6c-9.8 0-17.7 8.8-15.9 18.4 8.6 44.1 47.6 77.6 94.2 77.6 57.1 0 102.7-50.1 95.2-108.6C249 291 205.4 256 156.7 256zM16 224h336c59.7 0 106.8-54.8 93.8-116.7-7.6-36.2-36.9-65.5-73.1-73.1-55.4-11.6-105.1 24.9-114.9 75.5-1.9 9.6 6.1 18.3 15.8 18.3h32.8c6.7 0 13.1-3.8 15.2-10.1C325.9 105.2 337.9 96 352 96c19.4 0 34.9 17.4 31.6 37.4-2.6 15.7-17.4 26.6-33.4 26.6H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16zm384 32H243.7c19.3 16.6 33.2 38.8 39.8 64H400c26.5 0 48 21.5 48 48s-21.5 48-48 48c-17.9 0-33.3-9.9-41.6-24.4-2.9-5-8.7-7.6-14.5-7.6h-33.8c-10.9 0-19 10.8-15.3 21.1 17.8 50.6 70.5 84.8 129.4 72.3 41.2-8.7 75.1-41.6 84.7-82.7C526 321.5 470.5 256 400 256z"],
	"window-close": [512, 512, [], "f410", "M464 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h416c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-83.6 290.5c4.8 4.8 4.8 12.6 0 17.4l-40.5 40.5c-4.8 4.8-12.6 4.8-17.4 0L256 313.3l-66.5 67.1c-4.8 4.8-12.6 4.8-17.4 0l-40.5-40.5c-4.8-4.8-4.8-12.6 0-17.4l67.1-66.5-67.1-66.5c-4.8-4.8-4.8-12.6 0-17.4l40.5-40.5c4.8-4.8 12.6-4.8 17.4 0l66.5 67.1 66.5-67.1c4.8-4.8 12.6-4.8 17.4 0l40.5 40.5c4.8 4.8 4.8 12.6 0 17.4L313.3 256l67.1 66.5z"],
	"window-maximize": [512, 512, [], "f2d0", "M464 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h416c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zm-16 160H64v-84c0-6.6 5.4-12 12-12h360c6.6 0 12 5.4 12 12v84z"],
	"window-minimize": [512, 512, [], "f2d1", "M464 352H48c-26.5 0-48 21.5-48 48v32c0 26.5 21.5 48 48 48h416c26.5 0 48-21.5 48-48v-32c0-26.5-21.5-48-48-48z"],
	"window-restore": [512, 512, [], "f2d2", "M512 48v288c0 26.5-21.5 48-48 48h-48V176c0-44.1-35.9-80-80-80H128V48c0-26.5 21.5-48 48-48h288c26.5 0 48 21.5 48 48zM384 176v288c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V176c0-26.5 21.5-48 48-48h288c26.5 0 48 21.5 48 48zm-68 28c0-6.6-5.4-12-12-12H76c-6.6 0-12 5.4-12 12v52h252v-52z"],
	"wine-bottle": [512, 512, [], "f72f", "M507.31 72.57L439.43 4.69c-6.25-6.25-16.38-6.25-22.63 0l-22.63 22.63c-6.25 6.25-6.25 16.38 0 22.63l-76.67 76.67c-46.58-19.7-102.4-10.73-140.37 27.23L18.75 312.23c-24.99 24.99-24.99 65.52 0 90.51l90.51 90.51c24.99 24.99 65.52 24.99 90.51 0l158.39-158.39c37.96-37.96 46.93-93.79 27.23-140.37l76.67-76.67c6.25 6.25 16.38 6.25 22.63 0l22.63-22.63c6.24-6.24 6.24-16.37-.01-22.62zM179.22 423.29l-90.51-90.51 122.04-122.04 90.51 90.51-122.04 122.04z"],
	"wine-glass": [288, 512, [], "f4e3", "M216 464h-40V346.81c68.47-15.89 118.05-79.91 111.4-154.16l-15.95-178.1C270.71 6.31 263.9 0 255.74 0H32.26c-8.15 0-14.97 6.31-15.7 14.55L.6 192.66C-6.05 266.91 43.53 330.93 112 346.82V464H72c-22.09 0-40 17.91-40 40 0 4.42 3.58 8 8 8h208c4.42 0 8-3.58 8-8 0-22.09-17.91-40-40-40z"],
	"wine-glass-alt": [288, 512, [], "f5ce", "M216 464h-40V346.81c68.47-15.89 118.05-79.91 111.4-154.16l-15.95-178.1C270.71 6.31 263.9 0 255.74 0H32.26c-8.15 0-14.97 6.31-15.7 14.55L.6 192.66C-6.05 266.91 43.53 330.93 112 346.82V464H72c-22.09 0-40 17.91-40 40 0 4.42 3.58 8 8 8h208c4.42 0 8-3.58 8-8 0-22.09-17.91-40-40-40zM61.75 48h164.5l7.17 80H54.58l7.17-80z"],
	"won-sign": [576, 512, [], "f159", "M564 192c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-48l18.6-80.6c1.7-7.5-4-14.7-11.7-14.7h-46.1c-5.7 0-10.6 4-11.7 9.5L450.7 128H340.8l-19.7-86c-1.3-5.5-6.1-9.3-11.7-9.3h-44c-5.6 0-10.4 3.8-11.7 9.3l-20 86H125l-17.5-85.7c-1.1-5.6-6.1-9.6-11.8-9.6H53.6c-7.7 0-13.4 7.1-11.7 14.6L60 128H12c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h62.3l7.2 32H12c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h83.9l40.9 182.6c1.2 5.5 6.1 9.4 11.7 9.4h56.8c5.6 0 10.4-3.9 11.7-9.3L259.3 288h55.1l42.4 182.7c1.3 5.4 6.1 9.3 11.7 9.3h56.8c5.6 0 10.4-3.9 11.7-9.3L479.1 288H564c6.6 0 12-5.4 12-12v-40c0-6.6-5.4-12-12-12h-70.1l7.4-32zM183.8 342c-6.2 25.8-6.8 47.2-7.3 47.2h-1.1s-1.7-22-6.8-47.2l-11-54h38.8zm27.5-118h-66.8l-6.5-32h80.8zm62.9 0l2-8.6c1.9-8 3.5-16 4.8-23.4h11.8c1.3 7.4 2.9 15.4 4.8 23.4l2 8.6zm130.9 118c-5.1 25.2-6.8 47.2-6.8 47.2h-1.1c-.6 0-1.1-21.4-7.3-47.2l-12.4-54h39.1zm25.2-118h-67.4l-7.3-32h81.6z"],
	"wrench": [512, 512, [], "f0ad", "M507.73 109.1c-2.24-9.03-13.54-12.09-20.12-5.51l-74.36 74.36-67.88-11.31-11.31-67.88 74.36-74.36c6.62-6.62 3.43-17.9-5.66-20.16-47.38-11.74-99.55.91-136.58 37.93-39.64 39.64-50.55 97.1-34.05 147.2L18.74 402.76c-24.99 24.99-24.99 65.51 0 90.5 24.99 24.99 65.51 24.99 90.5 0l213.21-213.21c50.12 16.71 107.47 5.68 147.37-34.22 37.07-37.07 49.7-89.32 37.91-136.73zM64 472c-13.25 0-24-10.75-24-24 0-13.26 10.75-24 24-24s24 10.74 24 24c0 13.25-10.75 24-24 24z"],
	"x-ray": [640, 512, [], "f497", "M240 384c-8.8 0-16 7.2-16 16s7.2 16 16 16 16-7.2 16-16-7.2-16-16-16zm160 32c8.8 0 16-7.2 16-16s-7.2-16-16-16-16 7.2-16 16 7.2 16 16 16zM624 0H16C7.2 0 0 7.2 0 16v32c0 8.8 7.2 16 16 16h608c8.8 0 16-7.2 16-16V16c0-8.8-7.2-16-16-16zm0 448h-48V96H64v352H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h608c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zM480 248c0 4.4-3.6 8-8 8H336v32h104c4.4 0 8 3.6 8 8v16c0 4.4-3.6 8-8 8H336v32h64c26.5 0 48 21.5 48 48s-21.5 48-48 48-48-21.5-48-48v-16h-64v16c0 26.5-21.5 48-48 48s-48-21.5-48-48 21.5-48 48-48h64v-32H200c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h104v-32H168c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h136v-32H200c-4.4 0-8-3.6-8-8v-16c0-4.4 3.6-8 8-8h104v-24c0-4.4 3.6-8 8-8h16c4.4 0 8 3.6 8 8v24h104c4.4 0 8 3.6 8 8v16c0 4.4-3.6 8-8 8H336v32h136c4.4 0 8 3.6 8 8v16z"],
	"yen-sign": [384, 512, [], "f157", "M351.2 32h-65.3c-4.6 0-8.8 2.6-10.8 6.7l-55.4 113.2c-14.5 34.7-27.1 71.9-27.1 71.9h-1.3s-12.6-37.2-27.1-71.9L108.8 38.7c-2-4.1-6.2-6.7-10.8-6.7H32.8c-9.1 0-14.8 9.7-10.6 17.6L102.3 200H44c-6.6 0-12 5.4-12 12v32c0 6.6 5.4 12 12 12h88.2l19.8 37.2V320H44c-6.6 0-12 5.4-12 12v32c0 6.6 5.4 12 12 12h108v92c0 6.6 5.4 12 12 12h56c6.6 0 12-5.4 12-12v-92h108c6.6 0 12-5.4 12-12v-32c0-6.6-5.4-12-12-12H232v-26.8l19.8-37.2H340c6.6 0 12-5.4 12-12v-32c0-6.6-5.4-12-12-12h-58.3l80.1-150.4c4.3-7.9-1.5-17.6-10.6-17.6z"],
	"yin-yang": [496, 512, [], "f6ad", "M248 8C111.03 8 0 119.03 0 256s111.03 248 248 248 248-111.03 248-248S384.97 8 248 8zm0 376c-17.67 0-32-14.33-32-32s14.33-32 32-32 32 14.33 32 32-14.33 32-32 32zm0-128c-53.02 0-96 42.98-96 96s42.98 96 96 96c-106.04 0-192-85.96-192-192S141.96 64 248 64c53.02 0 96 42.98 96 96s-42.98 96-96 96zm0-128c-17.67 0-32 14.33-32 32s14.33 32 32 32 32-14.33 32-32-14.33-32-32-32z"]
  }
}
assets/shapes/pyramids-negative.svg000064400000000275151327220410013503 0ustar00<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 100" preserveAspectRatio="none">
	<path class="elementor-shape-fill" d="M761.9,40.6L643.1,24L333.9,93.8L0.1,1H0v99h1000V1"/>
</svg>assets/shapes/curve-negative.svg000064400000000325151327220410012773 0ustar00<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 100" preserveAspectRatio="none">
	<path class="elementor-shape-fill" d="M500,97C126.7,96.3,0.8,19.8,0,0v100l1000,0V1C1000,19.4,873.3,97.8,500,97z"/>
</svg>assets/shapes/split-negative.svg000064400000000331151327220410012777 0ustar00<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 20" preserveAspectRatio="none">
	<path class="elementor-shape-fill" d="M519.8,0.2c-11,0-19.8,8.5-19.8,19c0-10.4-8.8-19-19.8-19L0,0v20h1000V0.2H519.8z"/>
</svg>assets/shapes/clouds.svg000064400000002251151327220410011340 0ustar00<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 283.5 27.8" preserveAspectRatio="xMidYMax slice">
  <path class="elementor-shape-fill" d="M0 0v6.7c1.9-.8 4.7-1.4 8.5-1 9.5 1.1 11.1 6 11.1 6s2.1-.7 4.3-.2c2.1.5 2.8 2.6 2.8 2.6s.2-.5 1.4-.7c1.2-.2 1.7.2 1.7.2s0-2.1 1.9-2.8c1.9-.7 3.6.7 3.6.7s.7-2.9 3.1-4.1 4.7 0 4.7 0 1.2-.5 2.4 0 1.7 1.4 1.7 1.4h1.4c.7 0 1.2.7 1.2.7s.8-1.8 4-2.2c3.5-.4 5.3 2.4 6.2 4.4.4-.4 1-.7 1.8-.9 2.8-.7 4 .7 4 .7s1.7-5 11.1-6c9.5-1.1 12.3 3.9 12.3 3.9s1.2-4.8 5.7-5.7c4.5-.9 6.8 1.8 6.8 1.8s.6-.6 1.5-.9c.9-.2 1.9-.2 1.9-.2s5.2-6.4 12.6-3.3c7.3 3.1 4.7 9 4.7 9s1.9-.9 4 0 2.8 2.4 2.8 2.4 1.9-1.2 4.5-1.2 4.3 1.2 4.3 1.2.2-1 1.4-1.7 2.1-.7 2.1-.7-.5-3.1 2.1-5.5 5.7-1.4 5.7-1.4 1.5-2.3 4.2-1.1c2.7 1.2 1.7 5.2 1.7 5.2s.3-.1 1.3.5c.5.4.8.8.9 1.1.5-1.4 2.4-5.8 8.4-4 7.1 2.1 3.5 8.9 3.5 8.9s.8-.4 2 0 1.1 1.1 1.1 1.1 1.1-1.1 2.3-1.1 2.1.5 2.1.5 1.9-3.6 6.2-1.2 1.9 6.4 1.9 6.4 2.6-2.4 7.4 0c3.4 1.7 3.9 4.9 3.9 4.9s3.3-6.9 10.4-7.9 11.5 2.6 11.5 2.6.8 0 1.2.2c.4.2.9.9.9.9s4.4-3.1 8.3.2c1.9 1.7 1.5 5 1.5 5s.3-1.1 1.6-1.4c1.3-.3 2.3.2 2.3.2s-.1-1.2.5-1.9 1.9-.9 1.9-.9-4.7-9.3 4.4-13.4c5.6-2.5 9.2.9 9.2.9s5-6.2 15.9-6.2 16.1 8.1 16.1 8.1.7-.2 1.6-.4V0H0z"/>
</svg>
assets/shapes/drops.svg000064400000004447151327220410011207 0ustar00<svg xmlns="http://www.w3.org/2000/svg" height="100%" viewBox="0 0 283.5 27.8" preserveAspectRatio="xMidYMax slice">
	<path class="elementor-shape-fill" d="M0 0v1.4c.6.7 1.1 1.4 1.4 2 2 3.8 2.2 6.6 1.8 10.8-.3 3.3-2.4 9.4 0 12.3 1.7 2 3.7 1.4 4.6-.9 1.4-3.8-.7-8.2-.6-12 .1-3.7 3.2-5.5 6.9-4.9 4 .6 4.8 4 4.9 7.4.1 1.8-1.1 7 0 8.5.6.8 1.6 1.2 2.4.5 1.4-1.1.1-5.4.1-6.9.1-3.7.3-8.6 4.1-10.5 5-2.5 6.2 1.6 5.4 5.6-.4 1.7-1 9.2 2.9 6.3 1.5-1.1.7-3.5.5-4.9-.4-2.4-.4-4.3 1-6.5.9-1.4 2.4-3.1 4.2-3 2.4.1 2.7 2.2 4 3.7 1.5 1.8 1.8 2.2 3 .1 1.1-1.9 1.2-2.8 3.6-3.3 1.3-.3 4.8-1.4 5.9-.5 1.5 1.1.6 2.8.4 4.3-.2 1.1-.6 4 1.8 3.4 1.7-.4-.3-4.1.6-5.6 1.3-2.2 5.8-1.4 7 .5 1.3 2.1.5 5.8.1 8.1s-1.2 5-.6 7.4c1.3 5.1 4.4.9 4.3-2.4-.1-4.4-2-8.8-.5-13 .9-2.4 4.6-6.6 7.7-4.5 2.7 1.8.5 7.8.2 10.3-.2 1.7-.8 4.6.2 6.2.9 1.4 2 1.5 2.6-.3.5-1.5-.9-4.5-1-6.1-.2-1.7-.4-3.7.2-5.4 1.8-5.6 3.5 2.4 6.3.6 1.4-.9 4.3-9.4 6.1-3.1.6 2.2-1.3 7.8.7 8.9 4.2 2.3 1.5-7.1 2.2-8 3.1-4 4.7 3.8 6.1 4.1 3.1.7 2.8-7.9 8.1-4.5 1.7 1.1 2.9 3.3 3.2 5.2.4 2.2-1 4.5-.6 6.6 1 4.3 4.4 1.5 4.4-1.7 0-2.7-3-8.3 1.4-9.1 4.4-.9 7.3 3.5 7.8 6.9.3 2-1.5 10.9 1.3 11.3 4.1.6-3.2-15.7 4.8-15.8 4.7-.1 2.8 4.1 3.9 6.6 1 2.4 2.1 1 2.3-.8.3-1.9-.9-3.2 1.3-4.3 5.9-2.9 5.9 5.4 5.5 8.5-.3 2-1.7 8.4 2 8.1 6.9-.5-2.8-16.9 4.8-18.7 4.7-1.2 6.1 3.6 6.3 7.1.1 1.7-1.2 8.1.6 9.1 3.5 2 1.9-7 2-8.4.2-4 1.2-9.6 6.4-9.8 4.7-.2 3.2 4.6 2.7 7.5-.4 2.2 1.3 8.6 3.8 4.4 1.1-1.9-.3-4.1-.3-6 0-1.7.4-3.2 1.3-4.6 1-1.6 2.9-3.5 5.1-2.9 2.5.6 2.3 4.1 4.1 4.9 1.9.8 1.6-.9 2.3-2.1 1.2-2.1 2.1-2.1 4.4-2.4 1.4-.2 3.6-1.5 4.9-.5 2.3 1.7-.7 4.4.1 6.5.6 1.5 2.1 1.7 2.8.3.7-1.4-1.1-3.4-.3-4.8 1.4-2.5 6.2-1.2 7.2 1 2.3 4.8-3.3 12-.2 16.3 3 4.1 3.9-2.8 3.8-4.8-.4-4.3-2.1-8.9 0-13.1 1.3-2.5 5.9-5.7 7.9-2.4 2 3.2-1.3 9.8-.8 13.4.5 4.4 3.5 3.3 2.7-.8-.4-1.9-2.4-10 .6-11.1 3.7-1.4 2.8 7.2 6.5.4 2.2-4.1 4.9-3.1 5.2 1.2.1 1.5-.6 3.1-.4 4.6.2 1.9 1.8 3.7 3.3 1.3 1-1.6-2.6-10.4 2.9-7.3 2.6 1.5 1.6 6.5 4.8 2.7 1.3-1.5 1.7-3.6 4-3.7 2.2-.1 4 2.3 4.8 4.1 1.3 2.9-1.5 8.4.9 10.3 4.2 3.3 3-5.5 2.7-6.9-.6-3.9 1-7.2 5.5-5 4.1 2.1 4.3 7.7 4.1 11.6 0 .8-.6 9.5 2.5 5.2 1.2-1.7-.1-7.7.1-9.6.3-2.9 1.2-5.5 4.3-6.2 4.5-1 7.7 1.5 7.4 5.8-.2 3.5-1.8 7.7-.5 11.1 1 2.7 3.6 2.8 5 .2 1.6-3.1 0-8.3-.4-11.6-.4-4.2-.2-7 1.8-10.8 0 0-.1.1-.1.2-.2.4-.3.7-.4.8v.1c-.1.2-.1.2 0 0v-.1l.4-.8c0-.1.1-.1.1-.2.2-.4.5-.8.8-1.2V0H0zM282.7 3.4z"/>
</svg>assets/shapes/tilt.svg000064400000000240151327220410011017 0ustar00<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 100" preserveAspectRatio="none">
	<path class="elementor-shape-fill" d="M0,6V0h1000v100L0,6z"/>
</svg>assets/shapes/waves-negative.svg000064400000000646151327220410013002 0ustar00<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 100" preserveAspectRatio="none">
	<path class="elementor-shape-fill" d="M790.5,93.1c-59.3-5.3-116.8-18-192.6-50c-29.6-12.7-76.9-31-100.5-35.9c-23.6-4.9-52.6-7.8-75.5-5.3
	c-10.2,1.1-22.6,1.4-50.1,7.4c-27.2,6.3-58.2,16.6-79.4,24.7c-41.3,15.9-94.9,21.9-134,22.6C72,58.2,0,25.8,0,25.8V100h1000V65.3
	c0,0-51.5,19.4-106.2,25.7C839.5,97,814.1,95.2,790.5,93.1z"/>
</svg>assets/shapes/mountains.svg000064400000001414151327220410012064 0ustar00<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 100" preserveAspectRatio="none">
	<path class="elementor-shape-fill" opacity="0.33" d="M473,67.3c-203.9,88.3-263.1-34-320.3,0C66,119.1,0,59.7,0,59.7V0h1000v59.7 c0,0-62.1,26.1-94.9,29.3c-32.8,3.3-62.8-12.3-75.8-22.1C806,49.6,745.3,8.7,694.9,4.7S492.4,59,473,67.3z"/>
	<path class="elementor-shape-fill" opacity="0.66" d="M734,67.3c-45.5,0-77.2-23.2-129.1-39.1c-28.6-8.7-150.3-10.1-254,39.1 s-91.7-34.4-149.2,0C115.7,118.3,0,39.8,0,39.8V0h1000v36.5c0,0-28.2-18.5-92.1-18.5C810.2,18.1,775.7,67.3,734,67.3z"/>
	<path class="elementor-shape-fill" d="M766.1,28.9c-200-57.5-266,65.5-395.1,19.5C242,1.8,242,5.4,184.8,20.6C128,35.8,132.3,44.9,89.9,52.5C28.6,63.7,0,0,0,0 h1000c0,0-9.9,40.9-83.6,48.1S829.6,47,766.1,28.9z"/>
</svg>assets/shapes/arrow-negative.svg000064400000000264151327220410013003 0ustar00<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 700 10" preserveAspectRatio="none">
	<path class="elementor-shape-fill" d="M360 0L350 9.9 340 0 0 0 0 10 700 10 700 0"/>
</svg>assets/shapes/opacity-tilt.svg000064400000000542151327220410012472 0ustar00<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2600 131.1" preserveAspectRatio="none">
	<path class="elementor-shape-fill" d="M0 0L2600 0 2600 69.1 0 0z"/>
	<path class="elementor-shape-fill" style="opacity:0.5" d="M0 0L2600 0 2600 69.1 0 69.1z"/>
	<path class="elementor-shape-fill" style="opacity:0.25" d="M2600 0L0 0 0 130.1 2600 69.1z"/>
</svg>assets/shapes/book.svg000064400000000440151327220410010777 0ustar00<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 100" preserveAspectRatio="none">
	<path class="elementor-shape-fill" d="M194,99c186.7,0.7,305-78.3,306-97.2c1,18.9,119.3,97.9,306,97.2c114.3-0.3,194,0.3,194,0.3s0-91.7,0-100c0,0,0,0,0-0 L0,0v99.3C0,99.3,79.7,98.7,194,99z"/>
</svg>assets/shapes/waves-pattern.svg000064400000016201151327220410012647 0ustar00<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1047.1 3.7" preserveAspectRatio="xMidYMin slice">
	<path class="elementor-shape-fill" d="M1047.1,0C557,0,8.9,0,0,0v1.6c0,0,0.6-1.5,2.7-0.3C3.9,2,6.1,4.1,8.3,3.5c0.9-0.2,1.5-1.9,1.5-1.9	s0.6-1.5,2.7-0.3C13.8,2,16,4.1,18.2,3.5c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3C23.6,2,25.9,4.1,28,3.5c0.9-0.2,1.5-1.9,1.5-1.9	c0,0,0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9c0,0,0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2	c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3C63,2,65.3,4.1,67.4,3.5	C68.3,3.3,69,1.6,69,1.6s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9c0,0,0.6-1.5,2.7-0.3	C82.7,2,85,4.1,87.1,3.5c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3C92.6,2,94.8,4.1,97,3.5c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3	c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9	c0,0,0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9c0,0,0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2	c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3	c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9	c0,0,0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2	c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3	c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9c0,0,0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9	c0,0,0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2	c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3	c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9c0,0,0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9	s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2	c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9c0,0,0.6-1.5,2.7-0.3	c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9c0,0,0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9	s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2	c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9c0,0,0.6-1.5,2.7-0.3	c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9	s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2	c0.9-0.2,1.5-1.9,1.5-1.9c0,0,0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9c0,0,0.6-1.5,2.7-0.3	c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9	s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2	c0.9-0.2,1.5-1.9,1.5-1.9c0,0,0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3	c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9	s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9c0,0,0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2	c0.9-0.2,1.5-1.9,1.5-1.9c0,0,0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3	c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9	s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9c0,0,0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2	c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3	c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9	c0,0,0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9c0,0,0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2	c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3	c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9	c0,0,0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2	c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3	c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9c0,0,0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9	c0,0,0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2	c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3	c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9c0,0,0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9	s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2	c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9c0,0,0.6-1.5,2.7-0.3	c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9c0,0,0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9	s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2	c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9c0,0,0.6-1.5,2.7-0.3	c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9	s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2	c0.9-0.2,1.5-1.9,1.5-1.9c0,0,0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9c0,0,0.6-1.5,2.7-0.3	c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9	s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2	c0.9-0.2,1.5-1.9,1.5-1.9c0,0,0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3	c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9	s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9c0,0,0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2	c0.9-0.2,1.5-1.9,1.5-1.9c0,0,0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3	c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9	s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9c0,0,0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2	c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3	c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9	c0,0,0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9c0,0,0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2	c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.7-0.3	c1.2,0.7,3.5,2.8,5.6,2.2c0.9-0.2,1.5-1.9,1.5-1.9s0.6-1.5,2.6-0.4V0z M2.5,1.2C2.5,1.2,2.5,1.2,2.5,1.2C2.5,1.2,2.5,1.2,2.5,1.2z M2.7,1.4c0.1,0,0.1,0.1,0.1,0.1C2.8,1.4,2.8,1.4,2.7,1.4z"/>
</svg>assets/shapes/drops-negative.svg000064400000004334151327220410013002 0ustar00<svg xmlns="http://www.w3.org/2000/svg" height="100%" viewBox="0 0 283.5 27.8" preserveAspectRatio="xMidYMax slice">
	<path class="elementor-shape-fill" d="M282.7 3.4c-2 3.8-2.2 6.6-1.8 10.8.3 3.3 2 8.5.4 11.6-1.4 2.6-4 2.5-5-.2-1.2-3.4.3-7.6.5-11.1.3-4.3-2.9-6.9-7.4-5.8-3.1.7-4.1 3.3-4.3 6.2-.2 2 1.2 8-.1 9.6-3.1 4.3-2.5-4.5-2.5-5.2.1-4-.1-9.6-4.1-11.6-4.5-2.3-6.1 1-5.5 5 .2 1.4 1.5 10.2-2.7 6.9-2.5-1.9.4-7.5-.9-10.3-.8-1.8-2.6-4.2-4.8-4.1-2.4.1-2.7 2.2-4 3.7-3.3 3.8-2.2-1.2-4.8-2.7-5.5-3.1-2 5.6-2.9 7.3-1.4 2.4-3.1.6-3.3-1.3-.1-1.5.5-3.1.4-4.6-.3-4.3-2.9-5.3-5.2-1.2-3.7 6.7-2.8-1.9-6.5-.4-3 1.1-.9 9.2-.6 11.1.7 4.1-2.2 5.2-2.7.8-.4-3.6 2.8-10.2.8-13.4-2.1-3.3-6.7-.1-7.9 2.4-2.1 4.2-.4 8.7 0 13.1.2 2-.8 8.9-3.8 4.8-3.1-4.3 2.5-11.6.2-16.3-1.1-2.2-5.8-3.5-7.2-1-.8 1.4 1 3.4.3 4.8s-2.2 1.2-2.8-.3c-.8-2.1 2.2-4.8-.1-6.5-1.3-.9-3.5.3-4.9.5-2.4-.1-3.3 0-4.5 2-.7 1.2-.4 3-2.3 2.1-1.9-.8-1.7-4.3-4.1-4.9-2.1-.6-4 1.3-5.1 2.9-.9 1.4-1.3 3-1.3 4.6 0 1.9 1.4 4.2.3 6-2.4 4.2-4.2-2.2-3.8-4.4.5-2.9 2-7.7-2.7-7.5-5.2.3-6.1 5.8-6.4 9.8-.1 1.3 1.5 10.4-2 8.4-1.8-1-.5-7.5-.6-9.1-.1-3.5-1.6-8.3-6.3-7.1-7.6 1.9 2.1 18.2-4.8 18.7-3.7.3-2.3-6.2-2-8.1.5-3.1.5-11.4-5.5-8.5-2.2 1.1-1 2.3-1.3 4.3-.2 1.8-1.3 3.2-2.3.8-1.1-2.5.8-6.7-3.9-6.6-8 .1-.7 16.4-4.8 15.8-2.8-.4-1-9.3-1.3-11.3-.6-3.5-3.5-7.8-7.8-6.9-4.4.9-1.4 6.5-1.4 9.1 0 3.1-3.4 5.9-4.4 1.7-.5-2.2.9-4.4.6-6.6-.3-1.9-1.5-4.1-3.2-5.2-5.3-3.4-4.9 5.2-8.1 4.5-1.4-.3-3-8.1-6.1-4.1-.7.9 2 10.3-2.2 8-2-1.1-.1-6.7-.7-8.9-1.8-6.2-4.7 2.3-6.1 3.1-2.9 1.7-4.6-6.2-6.3-.6-.5 1.7-.4 3.7-.2 5.4.2 1.6 1.5 4.6 1 6.1-.6 1.8-1.7 1.7-2.6.3-1-1.6-.4-4.5-.2-6.2.3-2.5 2.4-8.4-.2-10.3-3.1-2.1-6.8 2.1-7.7 4.5-1.5 4.3.3 8.7.5 13 .1 3.2-3 7.5-4.3 2.4-.6-2.4.2-5.1.6-7.4.4-2.3 1.2-6-.1-8.1-1.2-1.9-5.8-2.7-7-.5-.9 1.6 1.2 5.2-.6 5.6-2.4.6-2-2.3-1.8-3.4.3-1.5 1.1-3.2-.4-4.3-1.2-.9-4.7.3-5.9.5-2.4.5-2.5 1.4-3.6 3.3-1.2 2.1-1.4 1.7-3-.1-1.3-1.5-1.7-3.6-4-3.7-1.8-.1-3.4 1.7-4.2 3-1.4 2.2-1.3 4.1-1 6.5.2 1.4 1 3.8-.5 4.9-3.9 2.9-3.2-4.6-2.9-6.3.8-3.9-.4-8.1-5.4-5.6-3.8 1.9-4.1 6.7-4.1 10.5 0 1.6 1.2 5.8-.1 6.9-.8.7-1.8.3-2.4-.5-1.1-1.5.1-6.7 0-8.5-.1-3.5-.9-6.9-4.9-7.4-3.6-.6-6.7 1.2-6.8 4.9-.1 3.9 2 8.2.6 12-.9 2.4-2.9 2.9-4.6.9-2.4-2.8-.4-9 0-12.3.4-4.2.2-7-1.8-10.8C1.1 2.8.6 2.1 0 1.4v26.4h283.5V2.2c-.3.4-.6.8-.8 1.2z"/>
</svg>assets/shapes/triangle-asymmetrical-negative.svg000064400000000262151327220410016144 0ustar00<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 100" preserveAspectRatio="none">
	<path class="elementor-shape-fill" d="M737.9,94.7L0,0v100h1000V0L737.9,94.7z"/>
</svg>assets/shapes/curve-asymmetrical-negative.svg000064400000000327151327220410015465 0ustar00<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 100" preserveAspectRatio="none">
	<path class="elementor-shape-fill" d="M615.2,96.7C240.2,97.8,0,18.9,0,0v100h1000V0C1000,19.2,989.8,96,615.2,96.7z"/>
</svg>assets/shapes/opacity-fan.svg000064400000000750151327220410012263 0ustar00<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 283.5 19.6" preserveAspectRatio="none">
	<path class="elementor-shape-fill" style="opacity:0.33" d="M0 0L0 18.8 141.8 4.1 283.5 18.8 283.5 0z"/>
	<path class="elementor-shape-fill" style="opacity:0.33" d="M0 0L0 12.6 141.8 4 283.5 12.6 283.5 0z"/>
	<path class="elementor-shape-fill" style="opacity:0.33" d="M0 0L0 6.4 141.8 4 283.5 6.4 283.5 0z"/>
	<path class="elementor-shape-fill" d="M0 0L0 1.2 141.8 4 283.5 1.2 283.5 0z"/>
</svg>assets/shapes/curve.svg000064400000000320151327220410011166 0ustar00<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 100" preserveAspectRatio="none">
    <path class="elementor-shape-fill" d="M1000,4.3V0H0v4.3C0.9,23.1,126.7,99.2,500,100S1000,22.7,1000,4.3z"/>
</svg>assets/shapes/zigzag.svg000064400000005413151327220410011345 0ustar00<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1800 5.8" preserveAspectRatio="none">
  <path class="elementor-shape-fill" d="M5.4.4l5.4 5.3L16.5.4l5.4 5.3L27.5.4 33 5.7 38.6.4l5.5 5.4h.1L49.9.4l5.4 5.3L60.9.4l5.5 5.3L72 .4l5.5 5.3L83.1.4l5.4 5.3L94.1.4l5.5 5.4h.2l5.6-5.4 5.5 5.3 5.6-5.3 5.4 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.5 5.4h.2l5.6-5.4 5.4 5.3L161 .4l5.4 5.3L172 .4l5.5 5.3 5.6-5.3 5.4 5.3 5.7-5.3 5.4 5.4h.2l5.6-5.4 5.5 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.4 5.3 5.6-5.3 5.5 5.4h.2l5.6-5.4 5.5 5.3L261 .4l5.4 5.3L272 .4l5.5 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.5 5.4h.1l5.7-5.4 5.4 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.4 5.3 5.7-5.3 5.4 5.4h.2l5.6-5.4 5.5 5.3L361 .4l5.5 5.3 5.6-5.3 5.4 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.5 5.4h.1l5.7-5.4 5.4 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.5 5.4h.1l5.6-5.4 5.5 5.3L461 .4l5.5 5.3 5.6-5.3 5.4 5.3 5.7-5.3 5.4 5.3 5.6-5.3 5.5 5.4h.2l5.6-5.4 5.5 5.3 5.6-5.3 5.4 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.5 5.4h.1L550 .4l5.4 5.3L561 .4l5.5 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.4 5.3 5.6-5.3 5.5 5.4h.2l5.6-5.4 5.5 5.3 5.6-5.3 5.4 5.3 5.7-5.3 5.4 5.3 5.6-5.3 5.5 5.4h.2L650 .4l5.5 5.3 5.6-5.3 5.4 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.4 5.4h.2l5.6-5.4 5.5 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.4 5.3 5.6-5.3 5.5 5.4h.2L750 .4l5.5 5.3 5.6-5.3 5.4 5.3 5.7-5.3 5.4 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.5 5.4h.1l5.7-5.4 5.4 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.4 5.4h.2L850 .4l5.5 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.4 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.5 5.4h.2l5.6-5.4 5.4 5.3 5.7-5.3 5.4 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.5 5.4h.1l5.7-5.4 5.4 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.4 5.3 5.6-5.3 5.5 5.4h.2l5.6-5.4 5.5 5.3 5.6-5.3 5.4 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.5 5.4h.2l5.6-5.4 5.4 5.3 5.7-5.3 5.4 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.4 5.4h.2l5.6-5.4 5.5 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.4 5.3 5.6-5.3 5.5 5.4h.2l5.6-5.4 5.5 5.3 5.6-5.3 5.4 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.5 5.4h.1l5.7-5.4 5.4 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.4 5.4h.2l5.6-5.4 5.5 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.4 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.5 5.4h.2l5.6-5.4 5.4 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.5 5.4h.1l5.7-5.4 5.4 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.4 5.3 5.6-5.3 5.5 5.4h.2l5.6-5.4 5.5 5.3 5.6-5.3 5.4 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.5 5.4h.2l5.6-5.4 5.4 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.4 5.3 5.7-5.3 5.4 5.4h.2l5.6-5.4 5.5 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.4 5.3 5.6-5.3 5.5 5.4h.2l5.6-5.4 5.5 5.3 5.6-5.3 5.4 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.5 5.4h.1l5.6-5.4 5.5 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.4 5.3 5.7-5.3 5.4 5.4h.2l5.6-5.4 5.5 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.4 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.5 5.4h.1l5.7-5.4 5.4 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.5 5.4h.1l5.6-5.4 5.5 5.3 5.6-5.3 5.5 5.3 5.6-5.3 5.4 5.3 5.7-5.3 5.4 5.3 5.6-5.3 5.5 5.4V0H-.2v5.8z"/>
</svg>
assets/shapes/book-negative.svg000064400000000473151327220410012605 0ustar00<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 100" preserveAspectRatio="none">
	<path class="elementor-shape-fill" d="M806,94.7C619.5,90,500,20.3,500,1.7c-1,18.6-117.5,88.3-306,93C92,97.2,0,97.9,0,97.9v-0l0,0v2.3h1000v-2.3 C1000,97.7,920.3,97.6,806,94.7z M350,65.1L350,65.1L350,65.1L350,65.1z"/>
</svg>
assets/shapes/triangle-asymmetrical.svg000064400000000252151327220410014343 0ustar00<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 100" preserveAspectRatio="none">
	<path class="elementor-shape-fill" d="M738,99l262-93V0H0v5.6L738,99z"/>
</svg>assets/shapes/triangle-negative.svg000064400000000262151327220410013454 0ustar00<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 100" preserveAspectRatio="none">
	<path class="elementor-shape-fill" d="M500.2,94.7L0,0v100h1000V0L500.2,94.7z"/>
</svg>assets/shapes/triangle.svg000064400000000260151327220410011652 0ustar00<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 100" preserveAspectRatio="none">
	<path class="elementor-shape-fill" d="M500,98.9L0,6.1V0h1000v6.1L500,98.9z"/>
</svg>assets/shapes/wave-brush.svg000064400000006061151327220410012135 0ustar00<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 283.5 27.8" preserveAspectRatio="none">
	<path class="elementor-shape-fill" d="M283.5,9.7c0,0-7.3,4.3-14,4.6c-6.8,0.3-12.6,0-20.9-1.5c-11.3-2-33.1-10.1-44.7-5.7	s-12.1,4.6-18,7.4c-6.6,3.2-20,9.6-36.6,9.3C131.6,23.5,99.5,7.2,86.3,8c-1.4,0.1-6.6,0.8-10.5,2c-3.8,1.2-9.4,3.8-17,4.7	c-3.2,0.4-8.3,1.1-14.2,0.9c-1.5-0.1-6.3-0.4-12-1.6c-5.7-1.2-11-3.1-15.8-3.7C6.5,9.2,0,10.8,0,10.8V0h283.5V9.7z M260.8,11.3	c-0.7-1-2-0.4-4.3-0.4c-2.3,0-6.1-1.2-5.8-1.1c0.3,0.1,3.1,1.5,6,1.9C259.7,12.2,261.4,12.3,260.8,11.3z M242.4,8.6	c0,0-2.4-0.2-5.6-0.9c-3.2-0.8-10.3-2.8-15.1-3.5c-8.2-1.1-15.8,0-15.1,0.1c0.8,0.1,9.6-0.6,17.6,1.1c3.3,0.7,9.3,2.2,12.4,2.7	C239.9,8.7,242.4,8.6,242.4,8.6z M185.2,8.5c1.7-0.7-13.3,4.7-18.5,6.1c-2.1,0.6-6.2,1.6-10,2c-3.9,0.4-8.9,0.4-8.8,0.5	c0,0.2,5.8,0.8,11.2,0c5.4-0.8,5.2-1.1,7.6-1.6C170.5,14.7,183.5,9.2,185.2,8.5z M199.1,6.9c0.2,0-0.8-0.4-4.8,1.1	c-4,1.5-6.7,3.5-6.9,3.7c-0.2,0.1,3.5-1.8,6.6-3C197,7.5,199,6.9,199.1,6.9z M283,6c-0.1,0.1-1.9,1.1-4.8,2.5s-6.9,2.8-6.7,2.7	c0.2,0,3.5-0.6,7.4-2.5C282.8,6.8,283.1,5.9,283,6z M31.3,11.6c0.1-0.2-1.9-0.2-4.5-1.2s-5.4-1.6-7.8-2C15,7.6,7.3,8.5,7.7,8.6	C8,8.7,15.9,8.3,20.2,9.3c2.2,0.5,2.4,0.5,5.7,1.6S31.2,11.9,31.3,11.6z M73,9.2c0.4-0.1,3.5-1.6,8.4-2.6c4.9-1.1,8.9-0.5,8.9-0.8	c0-0.3-1-0.9-6.2-0.3S72.6,9.3,73,9.2z M71.6,6.7C71.8,6.8,75,5.4,77.3,5c2.3-0.3,1.9-0.5,1.9-0.6c0-0.1-1.1-0.2-2.7,0.2	C74.8,5.1,71.4,6.6,71.6,6.7z M93.6,4.4c0.1,0.2,3.5,0.8,5.6,1.8c2.1,1,1.8,0.6,1.9,0.5c0.1-0.1-0.8-0.8-2.4-1.3	C97.1,4.8,93.5,4.2,93.6,4.4z M65.4,11.1c-0.1,0.3,0.3,0.5,1.9-0.2s2.6-1.3,2.2-1.2s-0.9,0.4-2.5,0.8C65.3,10.9,65.5,10.8,65.4,11.1	z M34.5,12.4c-0.2,0,2.1,0.8,3.3,0.9c1.2,0.1,2,0.1,2-0.2c0-0.3-0.1-0.5-1.6-0.4C36.6,12.8,34.7,12.4,34.5,12.4z M152.2,21.1	c-0.1,0.1-2.4-0.3-7.5-0.3c-5,0-13.6-2.4-17.2-3.5c-3.6-1.1,10,3.9,16.5,4.1C150.5,21.6,152.3,21,152.2,21.1z"/>
	<path class="elementor-shape-fill" d="M269.6,18c-0.1-0.1-4.6,0.3-7.2,0c-7.3-0.7-17-3.2-16.6-2.9c0.4,0.3,13.7,3.1,17,3.3	C267.7,18.8,269.7,18,269.6,18z"/>
	<path class="elementor-shape-fill" d="M227.4,9.8c-0.2-0.1-4.5-1-9.5-1.2c-5-0.2-12.7,0.6-12.3,0.5c0.3-0.1,5.9-1.8,13.3-1.2	S227.6,9.9,227.4,9.8z"/>
	<path class="elementor-shape-fill" d="M204.5,13.4c-0.1-0.1,2-1,3.2-1.1c1.2-0.1,2,0,2,0.3c0,0.3-0.1,0.5-1.6,0.4	C206.4,12.9,204.6,13.5,204.5,13.4z"/>
	<path class="elementor-shape-fill" d="M201,10.6c0-0.1-4.4,1.2-6.3,2.2c-1.9,0.9-6.2,3.1-6.1,3.1c0.1,0.1,4.2-1.6,6.3-2.6	S201,10.7,201,10.6z"/>
	<path class="elementor-shape-fill" d="M154.5,26.7c-0.1-0.1-4.6,0.3-7.2,0c-7.3-0.7-17-3.2-16.6-2.9c0.4,0.3,13.7,3.1,17,3.3	C152.6,27.5,154.6,26.8,154.5,26.7z"/>
	<path class="elementor-shape-fill" d="M41.9,19.3c0,0,1.2-0.3,2.9-0.1c1.7,0.2,5.8,0.9,8.2,0.7c4.2-0.4,7.4-2.7,7-2.6	c-0.4,0-4.3,2.2-8.6,1.9c-1.8-0.1-5.1-0.5-6.7-0.4S41.9,19.3,41.9,19.3z"/>
	<path class="elementor-shape-fill" d="M75.5,12.6c0.2,0.1,2-0.8,4.3-1.1c2.3-0.2,2.1-0.3,2.1-0.5c0-0.1-1.8-0.4-3.4,0	C76.9,11.5,75.3,12.5,75.5,12.6z"/>
	<path class="elementor-shape-fill" d="M15.6,13.2c0-0.1,4.3,0,6.7,0.5c2.4,0.5,5,1.9,5,2c0,0.1-2.7-0.8-5.1-1.4	C19.9,13.7,15.7,13.3,15.6,13.2z"/>
</svg>assets/shapes/arrow.svg000064400000000242151327220410011177 0ustar00<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 700 10" preserveAspectRatio="none">
	<path class="elementor-shape-fill" d="M350,10L340,0h20L350,10z"/>
</svg>assets/shapes/pyramids.svg000064400000000276151327220410011704 0ustar00<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 100" preserveAspectRatio="none">
	<path class="elementor-shape-fill" d="M761.9,44.1L643.1,27.2L333.8,98L0,3.8V0l1000,0v3.9"/>
</svg>assets/shapes/split.svg000064400000000362151327220410011203 0ustar00<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 20" preserveAspectRatio="none">
	<path class="elementor-shape-fill" d="M0,0v3c0,0,393.8,0,483.4,0c9.2,0,16.6,7.4,16.6,16.6c0-9.1,7.4-16.6,16.6-16.6C606.2,3,1000,3,1000,3V0H0z"/>
</svg>assets/shapes/curve-asymmetrical.svg000064400000000352151327220410013663 0ustar00<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 100" preserveAspectRatio="none">
	<path class="elementor-shape-fill" d="M0,0c0,0,0,6,0,6.7c0,18,240.2,93.6,615.2,92.6C989.8,98.5,1000,25,1000,6.7c0-0.7,0-6.7,0-6.7H0z"/>
</svg>assets/shapes/clouds-negative.svg000064400000002344151327220410013143 0ustar00<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 283.5 27.8" preserveAspectRatio="xMidYMax slice">
	<path class="elementor-shape-fill" d="M265.8 3.5c-10.9 0-15.9 6.2-15.9 6.2s-3.6-3.5-9.2-.9c-9.1 4.1-4.4 13.4-4.4 13.4s-1.2.2-1.9.9c-.6.7-.5 1.9-.5 1.9s-1-.5-2.3-.2c-1.3.3-1.6 1.4-1.6 1.4s.4-3.4-1.5-5c-3.9-3.4-8.3-.2-8.3-.2s-.6-.7-.9-.9c-.4-.2-1.2-.2-1.2-.2s-4.4-3.6-11.5-2.6-10.4 7.9-10.4 7.9-.5-3.3-3.9-4.9c-4.8-2.4-7.4 0-7.4 0s2.4-4.1-1.9-6.4-6.2 1.2-6.2 1.2-.9-.5-2.1-.5-2.3 1.1-2.3 1.1.1-.7-1.1-1.1c-1.2-.4-2 0-2 0s3.6-6.8-3.5-8.9c-6-1.8-7.9 2.6-8.4 4-.1-.3-.4-.7-.9-1.1-1-.7-1.3-.5-1.3-.5s1-4-1.7-5.2c-2.7-1.2-4.2 1.1-4.2 1.1s-3.1-1-5.7 1.4-2.1 5.5-2.1 5.5-.9 0-2.1.7-1.4 1.7-1.4 1.7-1.7-1.2-4.3-1.2c-2.6 0-4.5 1.2-4.5 1.2s-.7-1.5-2.8-2.4c-2.1-.9-4 0-4 0s2.6-5.9-4.7-9c-7.3-3.1-12.6 3.3-12.6 3.3s-.9 0-1.9.2c-.9.2-1.5.9-1.5.9S99.4 3 94.9 3.9c-4.5.9-5.7 5.7-5.7 5.7s-2.8-5-12.3-3.9-11.1 6-11.1 6-1.2-1.4-4-.7c-.8.2-1.3.5-1.8.9-.9-2.1-2.7-4.9-6.2-4.4-3.2.4-4 2.2-4 2.2s-.5-.7-1.2-.7h-1.4s-.5-.9-1.7-1.4-2.4 0-2.4 0-2.4-1.2-4.7 0-3.1 4.1-3.1 4.1-1.7-1.4-3.6-.7c-1.9.7-1.9 2.8-1.9 2.8s-.5-.5-1.7-.2c-1.2.2-1.4.7-1.4.7s-.7-2.3-2.8-2.8c-2.1-.5-4.3.2-4.3.2s-1.7-5-11.1-6c-3.8-.4-6.6.2-8.5 1v21.2h283.5V11.1c-.9.2-1.6.4-1.6.4s-5.2-8-16.1-8z"/>
</svg>
assets/shapes/waves.svg000064400000000643151327220410011177 0ustar00<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 100" preserveAspectRatio="none">
	<path class="elementor-shape-fill" d="M421.9,6.5c22.6-2.5,51.5,0.4,75.5,5.3c23.6,4.9,70.9,23.5,100.5,35.7c75.8,32.2,133.7,44.5,192.6,49.7
	c23.6,2.1,48.7,3.5,103.4-2.5c54.7-6,106.2-25.6,106.2-25.6V0H0v30.3c0,0,72,32.6,158.4,30.5c39.2-0.7,92.8-6.7,134-22.4
	c21.2-8.1,52.2-18.2,79.7-24.2C399.3,7.9,411.6,7.5,421.9,6.5z"/>
</svg>assets/images/placeholder.png000064400000014002151327220410012275 0ustar00�PNG


IHDR� >k06PLTE�����������������������������������������������������\��Y�IDATx���
à߿��h"���!, CX@���a�2�d��!, CX@���a�2�d��!, CX@���a�2�d��!, CX@���a�2�d��!, CX@���a�2�d��!, CX@���a�2�d��!,`��	������7�l��!,`CX����
a�6�l��!,`CX����
a�6�l��!,`CX����
a�6�l��!,`CX����
a�6�l��!,`CX����
a�6�l��!,`CX����
a�6�l��N�������
a�6�l��!,`CX����
a�6�l��!,`CX����
a�6�l��!,`CX����
a�6�l��!,`CX����
a�6�l��!,`CX����
a�6�l��!,`CX����
a�6�E��	������aCX����
a�6�l��!,`CX����
a�6�l��!,`CX����
a�6�l��!,`CX����
a�6�l��!,`CX����
a�6�l��!,`CX����
a�6�l��!,`CX����
a�Ν&�
FD�i��}�wS���wp�|�8M+11111�����4��w�2�bcc+��`�I1g^r%!5�G�ۆar�S>DZ�p$��{kB��
u�B[� �e�8�feH̶�@�pOm�f[..�{#X��:gv�:NZ�"X��&�+?0��
��ћԙ��>nÆb�S"��,܃M�9��Y[#X�����)|d#~K��bN���,(g�3g���o�`A�6�K�;v�@��X��:|䘵��Z���y��
��R�r�☵��J�I���E���p���Ta�uҵs��q3\�`A��	��v XP����ì},(b#��6�􈵑���g�h/�x��'Y X�vF*��>���� �Z�`A�F�*�Z�`A<io�+���`A��������z�`A6ǫo��D��0k�ç$�t�z��,���eǫǃ�<���Q��YB��w����`A�Q�j�k���D� ��i;��w,��:�"��$��A��f,���:Ƚp��0���Y,�2j��]u��`A�`�dzG��`A��Af��	������I�0Z����/k4�d����{�C|�ۖ�H�}e�`��Y�jY���ȸ}e�5!X�D��+���b����"K�X����c�Y�Ex�lӢY
�E|�~�����	�%�=8���d&XĖ�r�3/�����]�Ӆ�E`���^� X�5����Y��,��_p,�0~e�}L�ko����`U��d��	A�.�,b�+s��EHz峰F��H�|V	9��oa�`�^�,l,��+��-�E4zu��~��`�^]�y��`�^]��@�D�\93G����M�	���0��|�<�"��
��"����|#K���p��>�#X��>Y��܇l"��Eޛ�����z,��ꗣ�K��?x����E�w>1C�@���P�c�}�`�ݱ�ϭ~���>#�����\(3e�}�`ѓ�U��[�� ��I��io`�������M~6�F�,�,z10:���
��XK�NqN��奰�x�{���&�Qx0��/��ٞ>Ol�X# �_�omoi4�#Xx�r0�p�`��|�/�K���;���Zӡ�"�0��.M֢���ڣv���D9�ahj@��s=��\;�s�9���8��Z�#�+�R�r96ʼIWA��"���o���`-�0Z����'���7��Z�y0���Ϲ9�\:1B����5�K�	e�Dλ�N�`�s�DR�AWn4`��5S���c^ ],�5�n�T��!(��$X�f��L�76^�DB���*vh�~c��a��tV�k��.�-�*��O'V�F���`��2��ʾXD/}V�%�9m���}�h�`�8'^w���/��
�m����Ƌ���E�
�����Jz˻	�_of{0��^����1�c1���J?����oc����b�"X^���/��X)�X��Ӯ��%8�R&6��
	����0;ܣ��?����-�_`EC|J�"X>����T����[,��}�h�K|4U�N����>��&FE��`y�l=B�{��b,���g�<y"R,����zRS!�<�и+$X{��d��1�E�X��bk:5��ɳ�b,�dkj����Y��+���l��z�'ς��`���;��KR��~+�ɦ0;:�,QыE��%{�!�$�d/�ʶ�	�ObKW�o��l{��@��	����"X�z�©�#v`i��Mh���b���,q��E��
�[�n��]^�k���h��3��W`h�"X�:{@���8���X+[��U��=P����V���"�F�:��|[_�˙\<ɩ�O��;u�°��7�z��Z��I�,����ȑd�]6V$+#9��+Z+OQ^a$����#o�VFr���X�#���s�k�1�����V$G�1�㎹˿�H���b$�!kSX�6�^�H��dl����23�hp��z,+�f���e3V$V$��	|��l����%��d�3C��V,��z�
���&����)��C���93�M+Wտ2
\�2M`%��GX�hq��L ���ϓMc�`dH��J0�
�?a�X�WC:V�^0�L�{%:
�V�An�|s�� ���!+E#whs����@� ���$���7���&�/��$G�FV��WE����Js���=lg�Ž2C�D`��
=
lq��9("���'X����6�XɚV���5�Ѹ��B�1�!��
���Qff���؎E`e���P*f�k�Z�d߫5ii`�VSPB`���
Bf��u
:�,����bCPA`eizo3�(�v�<��ٖ�t�u��X�ƶ�wf��RX���_�LAX9�v,+۹�K#?
6��#��mۚ��(���@`-0ve��.�Vd���^��}?HA��k�� �.�_QB����Zh�o'
B(57XK����>��hmn �����(�u����f�4�b��~�P��%�V1N)qUt5(��MH`�"!����*4\��yXk5�M/s�M��W_(�����Z����C�w�� ��Bke�a��Q;
��B� ��4����p�.��k���O�a[pO�-
B��*$�����{w��(Q�BHa���Qf��8`�#ݳ��˸�����B>����B�(�8�S!��LB�����B
!LX�C!����P�a)��B,��B���ſ
	,d��1�C`a�Nft,,��Ɍ��EBx��!���B73:�P��vC`a��l/�P����<
!>v�}XX@!���ws(�pu�N`a��.�	,̺
�s�N`aNU���œA��U3&Q�m���B�Z5C`a
��v�X�t�k�;��	B��x'�0�����;B�������k�t�C�B����ih�ǥ28D!DW+J����cԂx��ͣ78B!���
��T];}�N͕�Bx\� �Cߤ�	9�e8�]���
�Ҫ.�ڪNG�SP��tq�����ro9i�B�����Su��
����#Q����k
�CL�!(��G�RdETm�~�u
!~�~TV@?�Ff}/
!���K��%�=2�;5��~T�Q�t��.�����A˶i��U7<�*�B�����m�E/$�g�E!�wcв����q�}���K�Zt"�Y�P1���,����K���b��k,Y_ǫ�"�p
!r8���l?�
��%�~�4-[��t�Ӭ�(�8��6�}�����(�ػ���a
��o-��w:�;S(I����>[�q"�HA�0��2�G��W� D�Hm,���_͑U���"���:a?���0,FA���Xr�C��Ճ�#��Q��ƒ�M_qd�!�Eicɿ����Ȫ��Q��f�j�i�ywrYs(�v�W���}x�ԕ��9�dUЯ�ג�p^I�#G�K�����gMů�l�F��a�i�n,���\��X�3
B�q�:r���'�H��
B�r�*��+��(��k�_�<�he��z\�Y�ƒ�n�+I#�ߗ����+���.�MA����'���~�ن���\MݟW�vԅ��g7���_�K(�'���wW�R��Jڲ���9�������&�}�&+O?��;!�ٹ�2M�1���4���*�s4���њ�k(Y{����A(u#:�S���O�]�iwW�_;�z^���'E�������`	�8��R~Ce�u!3��bDGI�����ءmW�R�/Y�<#��)o<'�KV�=J4�xDG��c��B"�et��G���&�
�$��h��E��F�:��)R"���J^,l3�H;��Ie#:JxA�=E��7F�. ��z�i.UИ��)�!��H4 ���E��pO�{O֤DC�^$��|٦ɽ��q�D4c�%)s�h���ឮ,�Z�
;/��L�,v4 ���)}�=�8t�{�ѓ�g�ˣ�}��C��hķx�Gy�¼��h��sD�9�ma�[`4c�"��嶐�0��O4��,O桄F��&j�${���w/��A@�A��w���n�M�`	)r��;DY��1����5`�c匏}�j��_a+g�hd�����M�c%�Q��C��+̡�n)2��k�Wif��>�W��2Ț�:��M�,�z�Ц�X3d��AG�
�k���
����?Ȳ����uM`����֪���3��ZW�]vՖ�(���%�u�׮�wwZ[����Ъ�;�=���#���uN`%wH5��o]gVp�TÝ��V��ݢ~�����sF�c}X��w+eq�S(�RG�����Vh��!A6�A`e���d�T�V���CHD��;��pƛ������pF��4?�+�Ѝg�l���Sۚ*�ғhY	���•B��~
V�a��Jd2��J`=`���Q�"ֲJ`=dr7��p'�b_+�P^��T+�f��;і�Q�	��G��^`�<e�I/ҝVL�A^��5����.<3j�!w��Х� ��.�yt�m�t�7�+�K�A^]�
��@�z�����_S��_��_hRoX���a�s�a0��i��R��e�o�`LF�J�"J���N�
�y�f�>��M�k�!�4'Ǐ����f�� ��U�.;i&Ӄ@��b� �t�.�������''i�-�)�Y��i���z\ivN�� p��Ի�p��BV*�W��}ہ���Ѥ3������5�%�t�t�j<���0,���SQj63�J�[�V??rf�:�]-���8)�!�e�c�+��Фa:�s)9�e���W ����6�������������������������������������������������������������@��������������������������������������������������������������*���k#�����������������������������������������������������������J{p  ��z�+���3^���ֱIEND�B`�assets/images/eyedropper.svg000064400000003413151327220410012210 0ustar00<?xml version="1.0" encoding="UTF-8"?>
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="16pt" height="16pt" viewBox="0 0 16 16" version="1.1">
	<g id="surface1">
		<path style="fill:#FFF; stroke: #000; stroke-width: .7px;" d="M 12.273438 1.265625 C 12.929688 1.265625 13.472656 1.472656 13.9375 1.9375 C 14.398438 2.398438 14.609375 2.929688 14.609375 3.601562 C 14.609375 4.273438 14.464844 4.863281 14 5.328125 L 12.335938 6.992188 L 13.136719 7.792969 C 13.199219 7.871094 13.199219 7.9375 13.199219 8 C 13.199219 8.0625 13.199219 8.128906 13.136719 8.191406 L 11.601562 9.726562 C 11.535156 9.792969 11.472656 9.792969 11.40625 9.792969 C 11.34375 9.792969 11.265625 9.792969 11.199219 9.726562 L 10.398438 8.929688 L 5.871094 13.328125 C 5.664062 13.535156 5.472656 13.601562 5.199219 13.601562 L 3.726562 13.601562 L 1.9375 14.527344 C 1.871094 14.527344 1.808594 14.527344 1.808594 14.527344 L 1.472656 14.207031 C 1.328125 14.128906 1.328125 14.0625 1.40625 14 L 2.335938 12.191406 L 2.335938 10.671875 C 2.335938 10.398438 2.398438 10.191406 2.609375 10 L 7.070312 5.535156 L 6.273438 4.734375 C 6.207031 4.671875 6.207031 4.671875 6.207031 4.59375 C 6.207031 4.527344 6.207031 4.464844 6.273438 4.398438 L 7.808594 2.863281 C 7.871094 2.800781 7.9375 2.800781 8 2.800781 C 8.0625 2.800781 8.128906 2.800781 8.207031 2.863281 L 9.007812 3.664062 L 10.671875 2 C 11.070312 1.472656 11.601562 1.265625 12.273438 1.265625 Z M 5.199219 12.128906 L 9.472656 7.871094 L 8 6.464844 L 3.808594 10.671875 C 3.726562 10.734375 3.726562 10.800781 3.726562 10.863281 L 3.726562 12.0625 C 3.726562 12.128906 3.808594 12.191406 3.871094 12.191406 L 5.136719 12.191406 C 5.136719 12.191406 5.136719 12.191406 5.199219 12.128906 Z M 5.199219 12.128906 "/>
	</g>
</svg>
assets/images/no-search-results.svg000064400000013234151327220410013412 0ustar00<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="211" height="145">
    <style>
        <![CDATA[.B{fill:#fff}.C{stroke-linecap:round}.D{stroke-width:1.395}.E{stroke:#a4afb7}.F{fill-rule:nonzero}.G{stroke-linejoin:round}.H{fill:#d5dadf}]]></style>
    <g fill="none" fill-rule="evenodd">
        <path d="M53.803 136.846h122.8m3.907 0h5.58m-141.207 0h5.58m138.977 0h1.674m-150.696 0h1.674" class="C D E"/>
        <path d="M121.264 47.475c6.093 1.704 9.14 3.238 9.14 4.603" stroke="#170040" class="C D G"/>
        <path d="M3.093 132.455l-.3-33.292L1 98.633v-12.7l42.558-4.92 42.558 4.92v12.7l-1.783.53-.3 33.292-40.465 9.003z"
              class="D E H"/>
        <path fill-opacity=".5" fill="#c2cbd2" d="M1 86.62l42.558-4.92v62.122l-40.465-7.31-.3-37.35L1 98.633z"/>
        <g class="D E H">
            <path d="M3.093 136.513l-.3-37.35 40.775 5.6 40.775-5.6-.3 37.35-40.465 7.607z"/>
            <path d="M1 98.633V86.41l42.558 5.088 42.558-5.088v12.224l-42.558 6.12z"/>
        </g>
        <path fill-opacity=".5" d="M83.508 113.56v-13.6l-34.92 4.804zm1.9-26.454l-41.18 5.1.1 11.74 41.08-5.85z"
              fill="#c2cbd2"/>
        <g class="D E">
            <path d="M43.558 91.497v52.326"/>
            <g class="B F">
                <path d="M76.532 65.72c-6.107 5.778-16.427 9.333-18.62 13.24-1.628 2.9-2.144 7.78-1.874 11.144 3.335-.325 4.11-.45 6.436-.838-.273-3.572.4-5.742 1.16-6.798 2.537-3.484 18.037-7.733 18.303-11"
                      class="C G"/>
                <path d="M141.144 29.827L89.04 29.01c-3.54-.056-6.93 1.425-9.295 4.06l-2.888 3.216c-.724.806-1.365 1.684-1.912 2.62-1.976 3.378-2.985 5.908-3.04 7.53-.703 20.954-.858 36.17-.467 45.636.178 4.308.765 8.13 1.76 11.47a16.05 16.05 0 0 0 15.38 11.469h59.993a16.05 16.05 0 0 0 16.046-16.046v-49.83c0-6.943-4.466-13.1-11.066-15.254l-12.41-4.05z"/>
            </g>
        </g>
        <rect x="70.332" y="28.22" width="81.73" height="81.882" rx="21.767" class="B F"/>
        <g class="D E B F">
            <rect x="71.03" y="28.917" width="80.334" height="80.487" rx="16.744"/>
            <g class="C G">
                <use xlink:href="#B"/>
                <use xlink:href="#B" x="-23.441"/>
            </g>
        </g>
        <rect fill-opacity=".7" fill="#e6e9ec" x="75.291" y="32.893" width="71.86" height="71.86" rx="11.498"
              class="F"/>
        <path d="M97.123 72.242c0 1.8-2.25 3.28-5.023 3.28s-5.023-1.47-5.023-3.28 2.25-3.28 5.023-3.28 5.023 1.47 5.023 3.28m23.44 0c0 1.8 2.25 3.28 5.023 3.28s5.023-1.47 5.023-3.28-2.25-3.28-5.023-3.28-5.023 1.47-5.023 3.28"
              class="H"/>
        <g class="D E">
            <path d="M94.325 70.656c2.986 0 5.733-2.328 5.733-5.877s-2.328-5.654-5.315-5.654-5.5 2.547-5.5 6.095 2.094 5.436 5.08 5.436z"
                  class="B"/>
            <path d="M94.08 62.234c-.772 1.904-.772 3.548 0 4.932" class="C"/>
            <path d="M123.592 70.656c-2.986 0-5.733-2.328-5.733-5.877s2.328-5.654 5.315-5.654 5.5 2.547 5.5 6.095-2.094 5.436-5.08 5.436z"
                  class="B"/>
            <path d="M123.838 62.234c.772 1.904.772 3.548 0 4.932" class="C"/>
            <g class="B">
                <path d="M172.708 136.447h-7.356l-1.266-2.218-6.018-10.082-.083-.154c-.895-1.75-.653-3.892 1.096-4.788.14-.072.285-.133.434-.184a3.23 3.23 0 0 1 3.919 1.606c.044.088.102.226.173.414l2.072 6.425c-.09-.562-.566-4.083-1.427-10.565a4.38 4.38 0 0 1 3.985-4.737 4.34 4.34 0 0 1 .558-.012l.25.01c2.464.103 4.378 2.184 4.275 4.647-.003.084-.01.167-.018.25l-1.914 14.53c.024.8.697-1.637 2.02-7.308a2.66 2.66 0 0 1 3.782-1.39c1.49.83 1.588 2.23.763 3.724l-5.247 9.83z"/>
                <path d="M161.104 130.992c3.01 0 5.462 2.38 5.577 5.362l.003.218h-11.162c.001-3.01 2.382-5.46 5.362-5.576l.22-.004z"/>
            </g>
            <ellipse fill="#a4afb7" cx="108.789" cy="83.823" rx="5.233" ry="6.977"/>
            <g class="B">
                <path d="M108.8 81.023c2.9 0 4.255-.993 4.06-1.342-.96-1.73-2.422-2.834-4.06-2.834-1.594 0-3.022 1.046-3.982 2.695-.155.267 1.092 1.48 3.982 1.48z"/>
                <path d="M158.6 79.778c5.473 3.196 11.174 10.04 14.06 9.766 5.987-.57 6.628-9.173 7.166-17.228.674-10.082 6.255 1.37 9.17-5.638 1.505-3.617-5.528-7.05-9.17-5.5s-4.14 4.532-4.494 7.385c-.233 1.87-1.567 13.905-2.98 13.743-2.796-.32-9.738-10.83-13.75-11.65"
                      class="C F G"/>
            </g>
            <path d="M194.848 50.46c4.93 2.962 7.9 7.255 8.917 12.88m-.695-12.957c.56.286 4.166 2.128 4.5 6.606"
                  class="C"/>
        </g>
        <path d="M85.828 39.033c-2.26 1.377-3.86 3.128-4.802 5.253" stroke="#fff" stroke-width="3.349" class="C"/>
        <circle cx="79.408" cy="49.399" r="1.326" class="B"/>
        <g class="D E">
            <g class="C">
                <path d="M96.774 47.475c-6.093 1.704-9.14 3.238-9.14 4.603m34.884-4.603c6.093 1.704 9.14 3.238 9.14 4.603"
                      class="G"/>
                <path d="M23.195 55.836c.46 3.045 2.795 1.956 3.087 1.774 1.88-1.173 3.03-1.663 4.342-.56 2.022 1.7-1.555 4.872.66 6.486 2.658 1.937 3.704-3.687 6.936-1.772S36.7 67.4 42.388 67.9M49.52 2.425c2.207.194 4.164 1.2 4.164 3.22 0 2.44-4.174 2.955-3.376 5.577.957 3.146 4.952-.44 5.836 3.482s-7.248 3.923-1.817 7.837"/>
            </g>
            <g class="B">
                <path d="M47.182 41.33l9.2 2.19a.35.35 0 0 1 .166.586l-7 7a.35.35 0 0 1-.586-.166l-2.19-9.2a.35.35 0 0 1 .42-.42z"/>
                <circle cx="28.907" cy="32.893" r="4.884"/>
            </g>
        </g>
    </g>
    <defs>
        <path id="B"
              d="M123.276 112.706l.55 18.708h-1.3c-1.432 0-2.593 1.16-2.593 2.593s1.16 2.593 2.593 2.593h4.065a3.49 3.49 0 0 0 3.49-3.49c0-.594-1.432-9.597-1.126-20.405"/>
    </defs>
</svg>assets/images/library-connect/right-1.png000064400000243754151327220410014403 0ustar00�PNG


IHDRh'U��5PLTE������&46���(/��ܯ�����!-��z��������ٴ�Ġ�������ķ�������Ϡ����������α��"-��՛�����hfb�����������������������QPM���|ys������������������-���{wo���~ym
-������PNG-�~����������� ,~|���*OLF�z�~}|JH@������������!.���GE@������keX��fªvJH;176�xP��vl`C��[snx��y��zyjG1F(>R6K^������������������Ɏ������(''K[k<K\z�����\hu��ќ��������U[amz�--,Ybm����Ҙ���

������6��j���:::


������?>>���CCD��IGI��� !#
++."%*125���*&$���91)(���������LOSkjh��֠��da_4&��� jw����C<0ZWTs~����YRG@EN���NG=����t5;A���Vap���GUf���am|���lbNUZ_nrq�ø��&=t�����xm]�����ܼ����������������J4 ���������yd���\H/lU9���|zv��n��h��}�uLǾ�����{Pe?�Ԭ�������ȶ_������Is�c������ջ������Xٶ_��U�zPƩZ���Z���p�\=d5S��zKk�ի���_M19׵t}C,�ۑ���Ԕl�d���G�tRNS
	

JN!F&%5#2@09*A,*;,9@R2:"H-(KE2P3\X@E:<*YE?R5C*PJ4SU8SQVS&S?V5JC����L�ڿ���hy��o��t߇q�����͘ų���1�DIDATx����N�@�a�S� �#���V��--RX�X�j�P� �>v-o�a����wV���P�`���<!����93q<�,����f��ا��齌#�O>���@_Y�x���<f�4͂𰗿��"7�]є�sx6���O�C1�R�V�Q���NhB{E�X~t�A
�Nv�;Ä�b�:J��4K�7	���2Q�C�հ!j���L�tV�5:N�3j3�Wqu�h�&ޖj6jno������Hc�Z�'ߏ��֌}o%ͅޮ���$�}��3Gl�D��XM5�i�Zj�.8�k����bƖjΏ�Ӌr8�t��c�*����奚�4��L��:��A��#�}W��5�DqC�$1�6���[	qU��q��:Gt�G��1co%���������cđ���~�I��5D��޹{"b�n�hZD$��%&q�[�pX��y�y,3�Ts�ΐJ��:C��z�1�~��k����,��������,~��so9�����'��˔�[M*8Tj��o�m4-�xz��Q�?X���������𣓃9��S5@���=�g�F6	G��i�̚I
�#�s���U�V��H��
Q�Ya�-��'zqr���٩�f�F�U
�Nf�����5���Κ��k��FӺL���tU��V7��I>zGz?{}�i�k���R<a�;�F�Z驚S���)�8½���ke�3]���Oj|�E�>xA|/���X�EEE�
ݶ Ś�4+�vV�n�v�[�N�Ѥ~w11�P�1�
���(�}���ff��m6�fv2��җ�8�9�9AlNR���Fl��÷��&�Z�P�� 6+���?{#�Y�w�j�h���{��I�Kl��F�Zހ�YG�jRt�AlR�q)�g�7�ɻ!���p�iP3�S�	b ��n��t��eiE5��� 6ۮz�?4��T�=�F���{��M�M
.^�~�~�Gt%\{!�,UC�?D�����{��M��6|����	UCPя(a@#
M}��>|]\5H,��J7A�J��P.�S�pT�J��S�]54U� �E|���^ϮO4@��֍�O��!�~@�W
4�'��hO�8T_5񠆆�D?����}UhJ��z�V5�XR�:�b�Q���m����Mî4M�V��kbQ�뇝M����u�O8A�m5�A(�h��/�k�����(t
��*P�(��t���Y��Dzs�$�S5���L
A�} �ιl��k׮�?`���t7�]55��XPC�'��pq]����2���ҽC�K��@5�}���Cm����졄/4=�h&��O�ҽAuʼn���[O'Ls�t�ĺb����h�9A���t�H3��B/R5�[*�\5ŲS�E�����J���(
j⬣�
��۟G� <U���
ӬlQzFP��F.Z'��Y��AM�s�Ak�7`9[�x;d��8��T�V1@3�n=�0���F�D�4� A��DoQˆf�(4��鮕�U'̈́��7P��jT�n��p��4Z?�	��C�4W�BS��a�3�9>jF\�e=]U�,��Jݸ��T
A�]yAGԳӕ]5�]�	B�L�j�!(VԮ�H��BWF44=� z�,45S5�L4�
���4�v
S5f�T��ٮ����̪��+�0;s��z�K_u���z��)��f���d����:J�<{g�>$�
k������a4ӆj~���t��'�L.
h���`��*Z:�:zۦ�����da4
����s9�:�o�y����O�%5#.Mn5��饿?�D��Yu�OzG�jjH��ؔ@�!��F�F�����n�i�+�镂!�aHq��Q��~��D��MMw��]	�'�����%������zv[��L�E�S)e��P3	�񪞈l8�K?����[Yg��
ñ�
[-i,A�!
*�ߢ�/4���imW��,Lj�IP4�ӫ��~�j�sO.�r�V�דּW���k����&
P�m�!�31>�}�g#��jZ�L	<���$M��3Ӟ�!w�7
J�j<�a��Vs��
Jݷ%$����"��Pj�P�F�tn��$4;(�
�
��#�x��
�	/'O�,��ܕ������k�1�W�1�Vq�TM;Q
M�$��Lp�5�5o��<U��6��KB4Y�v˜�A��I�Da�#<K�}�0�QH�����'��Z ��PV� ZqN�٨���+As�rD��&��P�z���5���lq
���X�fi �岮�V�]5�X��f���h�,3qD6��j:�J`��eN�S��4�
1M�ȫ�'=�P���f�jt�%ԟ��A�t�IW�
�O��}5��r��'�Ԭ?+�i\3>4�B)
�(��@39�^���@���wre�%E5���q���v����Z�J@�P� �2����91��l���=zd�
�i0���F4��Q�z9������.p{�~!�㲀~n��6𱊫꾥�iT�lM5�E5�lyKR
��g�N�]	,�g�}����y�L�i���l�K^5En0�R5���'[�,6-�,X���4
B]	Q�2dfdGh��(u�:*����(�]����S�:3��l��]����>��Hf:WK�U�,դ���/��u�Q��&�
�wM\3��� ��lE|.N�LoR5�ٖ���㣣`���JOk�O��7^���h����~'�a��E/FR�FUuM&l�5�Y�8n)���Z�
PM�hEle��F����>�}3�V�鿿��������1�)��R�(N��֬�A6ԌO��4���i��H�J�"7cZl��9����4��T
e��-	He�p���v�|�v�J5��@`M<4~|�2y����)�}��5�����3>x4��c����~�aIg�ٖ
���z�aW�`<�A(%L�f���5��?��;�O>�IP���2,�:<~蠴 4#^'-2oY~i�<cA��^t2�*nN֌�^(N�NJՈ$��Yߕ�?N�;,�}��[��
Pb���(�f�q��Dz�~B�X�%8rp�ͣQ6X~��ŗ���9�L��k�� ��,Ǔ��]�}M�J�U<�_��0����j�k�4 �
[%~�hf��ﬥG맥?�@2�
Ms�̓=�&�Lޮ���d^}eOft���iY~ٟ��-#��Ԍ| ��I��GM�J0U��Q�u%��jL �R,.���P��'��[�:�KO��$M�]6N�Z�����c��2��k�ss3����Rփ��V
�`&�����v]+Y6ة�����i��F�n���̎�fz���X	S�x��g����]\\��ɼ��+^;a[��L`�f���3�H�d���߁��P��֧jT[+���d��]�մ1��v�[i0��v�P3q�t!�A��Xȼe��e�W��{`�� ��������Z^Ռ8�go��i�i�Y��M�V#�,�R7Y�
�V��S�X:V�f�]�X+g%�TBh0�?GAل��zvXhBz���0ZƜ7C,��g�ړ�����J��=2�ҿ���og2{�m������k��Y�%��oU�H^?9:�P5���]	�6)uӴb�`�Ahx`=IHռ�
���j,cZ&g^�S�'�2y�
����������).��+��j�Lfll���$l Qh�L��,�!��qY@Ww�g�aW�Ͱ����0����~��.���fz����F��L�g��j\;�ٿw҄���~�|��h�#�4����_�c���@삮��F8���G8L���Y	�5JդbP��?��懅 
�J��3q'���_�8�H��Y�� e��U�)Ŗe�5m&��=H6��3!N"A聄�x�ͮ���Z2��N�>����fތ����`F`^�٠���kv�<z~��(�P����qB��O�4�����T5}^9ȺWT���֌�~g�+�P=����$�����C)sCSr�8n���Y�B
yF3��o��
�QX�>ɗ���n�Ѹ�P�E���G�2����\��6�<}PCK�I�F�J�1���4����%���?�?=�<���n����`�JX�,CPsѵ^l6���·�TS�q��&5�
s=8�K��Y535ԕ�|�jL���?����\�ٔ3�-ռ�2s&�\v��JO��B��D5gO�BPMsH5A��'�ǜQc�9���J�"
� �ئ���9f���b�={��	�~��*\�gH4<���b0�=��� �X.C�4.��U�z�AN�yT8C@��/�0ϰ�D��+Ǫf��+l��(e�ÌM��R
-u{���m�-=i'�D�H�%��,�B����S�|`��`�,�g%�u-�F��G ���X,S�1���ߒ
���R
�n����a5��eP5>�)��܊�4��N5��gbM�2K�T6yK�ԕ�oН���5��q]	�n��>dF�h��f~�/�w��J��RH�
��D���E�ɉj����7a�9���!��sUs3���+a�B�e��(
~�����O��1�N��| B�ܭ:��ʉj��fh��RM��4$���o�\�OnW��a��L��K�cTc�4��~2!��J��N�`���0<
���r��ȓn�f^�o��B�@�Z��cP��b �I>8+	i���L�E/ugk�|�R��cK5�&l��!���&��[��f�Q�y��2���֟H3�E����Q5TV��6$��L��^0��:��c�Y�C�WhD#uYԬ]	cUc�4��R&���m��g�T��#Ӎ{��*�h�K���j\�$հ}t�A�-4���I�B�/ɛB/ug�UW�FcΏ0����~�W�
�g/z�L��=x"l��k�S�j��ەT͇2��c�N�Km�>h�T,8i2��y�N�R�a��ٻƝ aBÿHI
�6���v�F���S�IK5�}�s-��k�OB�
$��V�'j�ਚN��K�Qo�N#����C��D���`�^�M;�gv՘����P*�Ȟ7�(b���̦h��@x<<t�긡u�R��.���t�{�v['QW��[���̻4d��8�D�+!�Ƅi���,Հd�A5��RRcҎ�"�j=)��PW��»�{-'d‹"_�`�*��
9�C���jä��D�Ss�p��˗qG= �>�=�T�w��l��R�T�Os̙X�BRʄ3���"�j�+�2��q�m˖i��;h9���8���`� �v]�OG�ׯ������O#ϼ|����
��5���)�#u2��T3���j̅,�"R�4�@��m3�̟�+A�ź�d�k[U��H�s�	��\S��nXN�!�i�hZGC(ӂ`��w��4�#��
?�\��kp���YꞺ�[w%��O�Rc( ���&u���U5�ʖt@2n��9�F3���^|�k,wo���p�U]���t�w�[("R�p@r����^lv�6����4:�8[��s���(������s<3����N��`�;����t�(E�CGY6Ɇ���Ku��3'۷��|�h���`�,�rM�<^i�q�hb�u��1a�$0��Tc��F<��X�����<:��|�&�:ߑƓdVU'IXR�u�V��j���[-Ț�4Q?
g8ґ�cA�$�[;u��f�r͐jFw%�1|3�q�ڼS�5�NCa�,6-��Ǿ��G�MC|z86K��@:�	��!��(���z��Z�V�Ѯ�CT<��3��L��aȄ�et
�,7z��ft��|&��\����9�Vc(&p�࿹��W��J5O��f<xš8�{=�@3d�Ղ*��|��L5��&!����*�5�/z�xH6�,���j��1m���RJ0w�ֿ�ʟ&Wͣ��.�z�Q�]siS����@I�B�Q�g���ˤ�΄J3��v8�ґp
�����A���W��ΪS6�C�@�藹ԟ]��Jx��'o^<��J�V�]Ij�S��5S'ʹ�>C�$�XiF{&R�؎�� $;���Vn��X�F�O�����-Ԙ�†S���?��k���R��WO�>y�h�]	��ΏPq~��B�!�@�tE��9�l�K���IBU��D�!��t8��}����k���V
���1�i��gLe(s��B���k#�n���~��ɓ��y�“+Y���&�,S�'Y����4�!�P4�)�ۼ;"���n
UC�I�5�w�jV�Vͼ��1E��Ol�d�)LvGpF\'q㏄�ʁ��Dr"�Nd%��l�MKh�rC�ե�2(kZP	�Հ���T���}?'��v4u9�q�d������>�~_��i>��w1M�i�����O�v���lS����xq0s�(s�G3�ؽ�9����`F/�\6f��et����;`������D�;��������+L%��s��&Ȅ�O�
��O��ȹ�$��O���^���&Vol��6�੄�����}v�Cagfg�2�|GS[w�pf���._CO�d�$�
�P"��G^�h��Q
���&Ȅ������I�%ɒ����c��i�մ6�~걁Dʻ⚉��,��;�$0C�e��M���f�25{{%|��*�,�e�Ъa��&����s��2A"���|�;���*�ҁ��tS	m�6z�f�4�;��z�,Ofh���I��g�
]`�8�ރ����P%�&��+��)*��V�J���将��+����w�ƺ��~�0��+j�&��j!!it4aSs䩄f{g�n�~rQsU��?����,]�K�e�C��J��ZɌ��f�nS*��._i.;�!����R�E��PC��y�6��^������{;0�Ը�&ب&�����rz��(8T��$~̩e����S	�ݍ��/SԬ����0ӹ�"�!�XA�;;�言�`7�$�a�3�z�ߵ3jj��LE��5<1lPl��EV	%�d���GF�l��y�Wb���57ZRO�������&?��H�jV�2	-!E�Մd����G�jv[�;���gTC���	$���XV��ZI�"�*ǝj ��aK�X%��'�g���`�m�q����j)�M�e�1�5`�{`�0��r,S	^��6�wb&ا&�	i@�n�s|S(�M(�VF��d5ٍj�{����O��j6�?�}�^�:��q�$6cF,f1`0t���ɠj���-)��t�͗� �7�3�[8�6�{�y /�7ᨣ@
��+<G����\��r=M�r/��j��|:�M�%�������B!!+�B!$���CT�n��=�����V���c����$(b��S%���(�9s��I�f�� TUI!<���h����
�$Ԍb)�&?���'�=x��L�r/��rSa�X��25���"��"I]�S9")�ׄ
���h���O͝�y�Ϩ�J�B�bY�y�h���1���Ƣ�I��L304��a�j�dhL�:4$�����MB���xe��w��T�=������.��p�ռ�wI��h�����Br'j2���
ʛ�V�H�Ӌ>�a�W�{ǪT&��h"%�Œ�i�=�ᰆc[�0;�Q�fh�Ĥ)gLp�%P$�+5e��ϰ��EǛl��\�1#��'�h>QR��{
N~
t�$ͩ{�}V�$)�,+���ݮFC*�d���MU��9K�O}huo����6+�����i���e�L��:�E"�!Q֒2@�3�3?�"҈�JM�0M���se
kF��:6!�������g�Ե���/=��HJ���>�H�L&҉)��P4\�B
V�حnBͲt���٢Px��ejv��0��$�@x���h<��q7&����I=�3S��2�n"�8��HU�+���Ob����O��Ƴ��v&G䛼���^��U3)M�(Hb~_]�_jh���2n���~wHK$dwUͧ}��`k��P�c��[�N�=�S8�&gÐ�R�Tpf*�4�4���}.	�3
KC�+���a�C���U<���]+jG�D�z�͙[o�X/���$���̏�KK+�8�1��r�}v�p!#E��
3M�壟��U5���7�A�A��ij=�PB-��14��UO8�I<�r���!H��/�d�!��A_���kjz�4�݁���L7iNa*��	pB�r�*o������x���/xD5,%CP*�ʲ�i���D{#��մ����i{��=�pg[�D�I3�Τ�Կ��*
D1�c����#ah�;
�J��!0�Kj<�O�F���@>��'f��� ������%d)r��U��c���
��2y?j�UMV�5M�r��t��9�0�_l٩��n�G�{���������"�IGu�Ƣ�`�������"�j3gl�Oxz
����@�c�f\�<���5^�	��	�@�}�ӭ�N݉��#`&�E�|NE��&���B]�d�&R�f`xʚ�
��c-w�Htc;N���T�����FT�6����?����Yq�H��$p3Nlj5%�^"
s$�o���\F9��|���k�t.�6wfO�x�u�>CC��OS	�h4e"�I����͵����H��\='+9-��s5r�:�L��⩄���k��V��4�6v0���VU�nM��m��!��i���BE'�pݤ��FH��47����5*�F%�8�y�!~�Y��!�b�%�u/���<*'&�)�z�an%Q�7������a�]����¹j��WT#g��F�T�0Dz4������2��Mu�"��B��G�K��i��7�0t
Ӄ^g���F��1�:��	`�a����{A��y/���ihH�7��&̠�B�T�7�>�^�={�0��G�heff.+K=�B9!)H�#w�W����X��w�y jZ���w�[,��SXh�Cۈz� ���	/�q�	ڨN���y�̙3�q1�]<ki�*��z�fp���O%p�)�S������W��X�f};;G'٠]f���ֲ�V�d�Y�B]���,2eEC��|�l�v[�v�LsG;I�d�Ra&��v����_K#���@�kg|�7��9C���AM���n=�,�	t�r��ޜ�nS	7�h
e�u�o�.Ϳ��&�(����f3�h�����W����&Q�����4�\�U3������P�D������ފ<��3JHc��D����[AN�/4�����?�r9s�y��	���A�24�B�ߍ����Q3ML4����h$�ONZ��4(:L�Nmc̰V�)���G
F��JA��
6D�/�?��j����򯄚�o�����>+aw>�X��
�7�@��q�Y�S=��#���z���`�t����XLl��_����3���Q�M(cr5�
�^?����-efme:�N�Ԕ��0�`f����Y?)2��#o��(Օ��UkD��Q?�d�4��lzG5:v�g��i�	��3
H㠦2g���k��R�+��Ep�L�V��CơLw<�ah5��}V����Q\�A3[�U��Z��ͱ��4@��;�X����`p�8 3��bF���-I�nki�Ӕ����w��*����R��j����m��[�S��;��/���Ш�
�
;�NΠ㔚�3�
�е�z�k��	N����ќ�
���ӘJ�q�)��o?
/Ӹxq�t��U�Ǩ�M���4>����$Q�fi�ǯC�T�����O>�~���'&�V~��?�90�a�n�o�v�D͏���F�!��3�j�^bc�)��=���.�x���[��?�KL+u�E�Vc�k�B��pa\��01.uk|G�•K
-���J;-��3t`k�i��V�v���P���F�I�����t�Sf*(���C��D��/�;��o��`��/�A�8CBT��M��6˶[u��M�x<�P�$_�*��pU�g�I��'�f��z�M�\a*P�x98_��63}�W������>�g}a��")-���uw(����"S�!]~��3��ߟ��5P�a�q�kL1MW��v4��S"��;�|[	�YT�Ѕ�m]�x6�n���K*��'êZ�*J8]��GGF�9BMZ�L�VLbf���/lk����oP�W���F4�j��
���LT�V���I�"@��Uݜ�S@C��H�b:?u��y�|��X�j�n�0��:�y�}1�V�E�1��̠��q���;�����ťm(�/(�k��"χ�j�ը�7��0��姃y��א�`����O*1E5@M� h��fg �h���o0ȅ�X*�hj�f�9��GP?}����n�f�5X�����cS�����$��X^��FSfkL�4��;�/���X{_�`Ȝ�@�t7�X�D��B���#��R�)��o7�8�T��5J����'L�rC28���0��~���|�WT����?7�t��[i8A��Na��M���j��G�;�ѣ��n}�9�?Yn%T��@~��Ċ'�^���f06�̣��C
SģilGc�Z��&�����*'�3D���V78��u��H*�"�蜁�igS1�&�j6�VC���5|��?�%�
�uΤ�Rp���� ��b�n���;ΉhFM��li��4r�^�⏁�i���G۟9񣗪���I �|r��M�18â��t3O<�ģ�g�O3��S��W���l1�3P��mkCC����֢��0��~,��bP4������燎��f�w"�j	j�O:99��p�N���͌�9.|�B0���L�&,%4��$��ãޑ����y��j��8m��m
i���P�}�b����$ow_�#�F��3��{=z�m
3�2{p�rh�j>ؾSn�:�Xc��1G��t��n�]/������=g(�jR)��R�(�Q&����l���6jU�E���
�w�!��Bpz��803�H�J�J�[����P���i�?�A�<
�9�zR	��f]͂kM͏G�}�F{
h������9�Y�Ϡ�͇Ě�5��瀙�B
#M�֓�7��hl]�f�K���d�!�<��+/ ��F#�%Ґ���ahH�"���Qr�j8-�|Cc$az�kM�L��`tr�NTc�E��Ձn�3:#%�(�gxxx�3��TU�\�D�A��@1P�E5�LF�T���3��ډx�p�O2��+ftW�P��`3gHs��f����i��[�w�h��^�I�S$�`%�RP���l�5��t�b�=���:��35�$H�,����H~]F?���U��y=�ea��.J7n��Ƈ!��J.�K!>6@����Q��O�0����~�p4�n_��ɷ�}�1P�<�#]y0C
#�E���-�>Y�.�\�sb��� Z�T?�~�5�
��D�Ѵ���#h�b��}T-�|A��!7s�2�DZW1�q_�AE	��=Ш��O&�*b+�~#-��j������f
�9�>�����{���R���O��`fht7c$�xO�_�:f�1c��h�4M�a��C{��=[�������z�

��A��u��ng$�j 2q����, r�t$	'%@�q?�(���jHr�v��ډOHR"?���L?y/��U1]��h4�/V��������\^
��l,��N�(���2P���33����E5�/y^\���ω~�Oh4f�4�b�a��j��:�a�a��S[}�eǂ�

d���^ԣ�(V�]�\;��4��/�{
5�lA
��`]61KP�h�h$�(	`F���ռ��)�K��x��“�/��l,��FQe���6#[�z��<>���d�hA!X��+����1F
�UN��N����ُb�a)�&��������W��I��8릓�˞���	�!Լ����OQ�@j�19�������^A�Q?�4R�F_BFg;8?�_�r�W�-�RӢ,�3.g�122�
�}�=�G9	@���,,,|�������Zfk*_O1��EB�o����V���QM��FZ��0�m~��3Owq_��LܕҰ�����hl�M��1�ގ����L�kF��9����$���z��"��S�E]�ZQ���e9!̌�~0M{�A�m�����մ����uE�>��^7�>�Ȩ���	����+���G���(�:����x rD�4�A�}���G\��p�V�^�3,�YaF���3h4=
=�X���ˌ��_�+�3�(���j�|��|��:��Y�~z�^r�bd!����|I��g�7�o�ٶ��f
)`$˒�f�_	�L���P�W����u�����T
�6��iy���\4���f+W���4_V�V��"��+����q�(
h�I��J�[���~��5��hO��gQ
���2]��i̕������na�םl�C��w"z��fr43��<��chu�uM�t��b��.����Ҷ�jd€��.��1���4�6�SX.�����%�]y7��'
ѭ�-�Є��@�� ͣ�J~�HGB�^�t�Ӎh��NB���.�`��[��}���`p���O��G�y�0���5�a�G��,�	4����
��4�c4l�	����P���z�-5p�e1�0@)�Lj;drdICN�^��	I�/~����'pF&��齱��V�X-Ue����#��g���ִ��@$[�	2�&�L���}������L!�ű���Bdi(6��թ���o�ՠ�D�a��7#��0M�Ɠ)���a�(���g�M��`��P��N�?��F��_dS58���f� =�yQ�;�xp�A{NzP���ôgttf�R�03=�(��cSR%\�Ԩ3P��L��`]�T���k~z"���ڧ[�S�!��%BѶ��
�C5f�4Us��>U̐�!��̹�dB���a�m��؎�V�d>a����҉�N���҉H�ԙ��@��DILh��Au�����1ǐχ�Ώ�=nF'
j'�$�M���UHe�%���+�z�xM&�E%��̥���f�	6eI\�\ߙ������K�B
0Z��v<��V{+�_����o%|�0�з)�������O���w4����
0Gs�
d�������y��j����Z[O�wBP��EGN��*	�&dx�ď&A�[���ɥ�K����*���;�T���1n�N�F-�j����br]���y�8ѹR.���F��l��mD9n�&:�\�~b�CT����g31�X[�G�z��ڗ���۶�K�t����y𞎣�Pө��pѯ�t	=�H�Yǯl$I�9E���,)���»�b�`d��d�쬭UEY�K��9�O�����/�-�����xG����h��#�����2�[�B��ֆzh��S�5�;����7L�����4&G�,ͽ@ͥ����b�[��O3K�B8]�V�m%�6�F#�����YjG�Zex�<m�,.��g�c��t{������vx�<&�I�1��B�r��7Sqܷ:=�����yp�@sX��9�˟,+˟L�=��U5��5�����O�F�H��D袨檭���[	ll�QF�Ū�miiz�4�Ŷ�}���5i�R���Y��w�w�1B����!Q
��3�h���������^���9�s�!ED`���
�
;"aFB�JRS�Gr�F"qpZK������$�o�\.�;����\��;�c���GM--Zj�童ݰ@&��v
6'5���>G5��壚�X4cr4�woGΘ�'KKs��ا"l1�c2غt������
�q4��10��O/������3.��W�I^���ZZJ�&�^[#Ԁ4A<�0���F�466��^��f6#.g�!�M���r�UU��Qwq��jr'<�]EX���^_�X�&�%��� 
u���<�6�����q̰�8c�ĭƺ�dv4�0�o����׹7��`F�uh�>�h��@����O=�V������Z!+C��Ԩ��0���Z�b6������U�Q+\���O$9?�Qڜp�p�&��ЂC��P�\!	X�����
�p�`�x=^�%�Wksk;;S��O3z�D,�D5���f��&3dL�42�4挆]�4�4��+[�34�=��N�3K��N$3jޤ[����G�?ޡ��Z���.����J~g}��[+��S5�iZ]Š�{�1Ή�<�{.N�kj�)W�o����3���-��
�T���Ƅ�J�<���©h`��O��\��ǭM��C�N�g�{����W���c}�� ����EHc��@���6*�����
�3|<n����R5�F��R��m]�s��eD8Jn�r!��IO���+e�̜�T��M)@�RBY+��Iy^�������64�x2N��r�E#�hl��}�[���e���͘1��u;����ղs4V���`��[h#e�Y/� ��ҷ>�"��J��hV�E�ŗ���ŪokY1���n�SS�mC:jj��
�MۅLm]ۤ7����P�A�������q�4�e���ح�>���w���R�ƣ�t�%��!�"M+8�{��}Сg�+!���fy*U�&�JKe���@�!��ņ���Ci���v�#��Fo����kE>�\���_V��q0/�7��7���m�K�7?��ϖ�y8���̷J4E=�4
5�z��Q��_�z�a�<X
fG#P#�_�܌�4�->��1�S9�Y�;Z����G/v%�fߝƉ=<���t�*=��FGH�(yg�i�*e"a�$'�(�ب��b��/�黟~YM$
&���յ
�]���kp7'O��������'V�ʖ�=c)�C�O3P<Bw�i�x����	1X�����-
IR��yZ���t4W^�;_͖���q��I#-M�œ4<��u���"ր6������iʅ�qi�&�>qb��d8"̄eX����X�\K`��6��
��`6D(�����LM�jsg�h�0���a�r4I�O�<Ɖp�0@Bb���>^�'9��ai�͕����T1e��GH���X���4�4������ �2We�S���+(>Y�h���ʎ��ar3FP`��?%�p$��<Z�6~�X���B��I\G�@p5lb�C����$i�y���t2'N(�z��� �?i�t6N�Ԯ鉿 }\���`v4��徣���^oG#�{q�g���4�Lix��|���u��C����)t%L�/A͒����*4٘�g�Ef���M藟7��_RVǏ��
��'����#$�AW0M�-4F(���ݺa��+�L��O���o/�9ˈƭ{[�X)�8����Wij�EF�ǻ�
�@�#{XdinU�Fq��C�n|�R]	�<f<�g�iB�� 3I�i�h����څ&f��jp��6~�����XK$P7��0F&��&@눍�
�~"V�!RT���f�$��i�3�`��B�Œz$cdBè�� �+�e�6�����ɻ���E�(��߉,
����t5�<�L�8���h,�i����L����a-��
��t��-����Z:�,xy6����_C4�C}��Hbbe:A9��8��Xl:E�z�m�Kc!�N�?hj6ǀ%�4n�q��~^OH��m_M[���Ұ��o�j�&���9�}�g�+'#�R%������Q�+%#+���ܡ��u��k�r�-�YJ���`�f<m�03����1:�305��Լ���g1�NA�Q�Z8�a3H���G���x4b89G4���
��:�C�}	5�(�7h�f�jC �W�Ǝin�N�,OC��y��H�Tɍ�K8^c&!"���RQ�ΘY����_D5_o����?la4��D3��,���r6��S�
۹\!51��Tlp���A8'�w55��h����IV�8�aҸO����F�s`��wp�Z����gδZ��Hs�6KO=�tŜ���Uf���A�"
0�^hN3iv(u�tPճï�W���"�u����_�����R��Ji&
�d.��Ҵ��3Lv4������˚�<E�_��ibƐDH�y�����H<Ӵ��ف��i��R�y�obx<gf�SE-�4J�CG���J̨?k�?���QU�=�������:�1�\_+�0�ܬ�OeV�a���_9�[�^�����jv��-1#Qc=�����i�#�N�?:E��}5Z ��h<n��T��4�A�ilS��i�Y�������J\�W�{oz6�M�(��G.�f��S5�j��0��J�V�զ����ʳg��M`���&�j��F<��&�L�O��=�#%
�!s��;y�ƭ�ɽ��T�j�����g�ai��3x,�i8�!���S�I�,Cc��]F�9�M���|ƈ�w�g�
�z;�M
�O;�Ơ����Y�n,��&��*sg��&����F
�ϣ n��Kΰ~�u�|�v�[,�I� 7Nr�t�����Z'��j����kD9$����ij��d��3�L�Is�SG&҉\!;�ű�h���
����5�a���&Z2�4ڛ���h�\
��5�ZO������P�r��M��H�x;&�n�I4�2"����HG�7 �j��1�?�O�Yy�A�K�4����-���7��@;V`f轹�h���&��ĵ��h"�LH�f��
b��?�RwX�z-�^���K�J�R5�����j%k�g,�p/��4�v5�Z;J8ig��0g�Q0�t4NC#��}N��!N��6Q���4�@�i,�i,�,�w:l�tuw�v[םG���t\8��%=n\
��N)��τ�P~VW�raA[X�m�(u�	3u*�3��218�����`g�t^H߱vް���Ê2�e܈�4���2�%r`��6�����Q㫑�c?2�q
{���(�컞0ӆwi�(@�8�A�������=�5ScKA:�" ��E�g�$�J1�Rܣu�B2y�of��ŕ�����x��l�؟yJۍ�Fa�c�r��EG�ե���	
W���f��F&����� �Q�1
y��(�@m7�G��j�"�ܺ
5 �ei�z���\�VH�E4��I�拆�aH���?��
c�ޕ��� �Ϗ�8>\(�c�dT=[�Υv�T
0s�0�K}�6�^k KC����S�9#�DB#�+|5Z��G�K�(O��b��
�i%�t�w*Kc�
3x�::�.��ޣf����I-l����%�16ż�$�Q��>�Ǩ�]	Z$X,����+'Fߏ�ls��;��7��h�!��s��}�C:@cF�,�)�M��ih�K�|���#Hs�kJ#I��4�����ڦPcqF���!2 �E5�j��ҵ�.�h�d>��y=�ċƅR��Zp�JЂK�I̠�Z��n���F5�L��`����K�X��zX3�J��<C�mh�궯FI��<Hs�4��ãHӆ��rK�
ԥ�Ro_��J��\/����aC�S*��hz1�S5p5��%9�}0��fv��͘y��@
Kᆖ���Gf��̎10c���$f��&'����,_�ӆ�W���iH
�F��}6j`i�l�t�ۂ�!٠a�M��Z��h;F5�LQG*�����l�Kݰ5�Q��W4N65�̃�����y���F���2�/�4�X�n�!�̎���5+���n�j���`��Fv"�@X��'HYk��dM�5kZ�=8U��mO��9qCD5�<�7��2��u�FʊjTŹ��C�y�	00V‡Ę�8����1�8��44�<b>������dqB�҇ +O�0j��\�(u�1h�U�a��8�E�;��j�j�B�|>D�"Y
����FsW��>Sȩ�$8�ب�1C�Z=6h�Z5XvFè���}�L�3���;_����O��S�ix�t-���f�Qc��^B
>�j��d*���w�Y�@��}�F6Y�A:U�<P�������Ӈ36j��8-�����-�e���"&{��j���=���r��=�%�����!�����s��h�(���=O���,XSJ�w(us^c�Q�D�(:(�y��y�^2�9\��q
\a��>�'��$fH2��eh�y��� 64�}W�D�k��q��=M���kp�]�@�@D���<�W�油�ꩨV]	�!��AT̠ś��K�d����I��,�ih,�ȑ����r�K��?[�O����0
��\R#CI�-�8��W�}.1���u(Q"��Kr/I�HI�
H�c�����l��9�󬵎���w��޻h��(��Ӹ$�@�?����eI�d�*�(̨59��$|����?��M5��?v�G-�<�/���jl�jbf㲍���0�3픉8�[Ф�>0ҔM�d�i'͸�Fx���L0�Lv�8j�(2͐E5KI5�+�
��&PsX|z���O%�1��R͵S�,�O�����r^q~R���U���	f���#��fp�3E��"ҸM��i"�L�*�L�4e����8C�Ě�3�P�ZH8�������/��9�ǫ'�8?�U<��n��f�e�����b�{K*�8`h�r���_7!(��9�=��h���N(i�4�'̈́�j���ԩS���Q�3KUB�4�Pc�Ps��~�
��5 hy���/��p�~�UM�qF��v�rC�~�1��$6��}�U�38��6�1gZ�&�$��A(
4��%7��0;a�&P3y�d03iꔩCS��`�A����L�P#'�������7�p�����E�������8e��ȣ��m�ը	czp��]ʹog�1�<Cy��J�)�:�HC�g����L�Ѧf�di��hҔ����N�UC`�Y����35�{��\���V5����s\u�@M}�=\)�s�N�5N�~��zt
ř�֙InRF����gB@&�h�ӔE�R���[Ҍ3�@�xP��h��`S�f
-��UjL��gm�Y�|�J��s����I�{�X�袩!4��P�rԐj*[a�/ȢL����R�9��M��Д7�
@�j��xzm���P�&#q�ӓ4�J
Ԙ�� ��E͢à�ۗ�~�H�7:yp���ÉD��Xӣ�jA�\�D�3�L`&}�Ҷ����4����Ϣ��C�>ǝE�h��B�s+�t'O�:�;u�;4�i<ӄV�5Bͻo�?_=q��ժ�A�Ƀ�3)l܆���:�(�~(�	א�eV3��7�8O�_�NY�\4 u|2�T��	ա&�O�A������v�v�Mwh*��]�j.�=M(����|����˗o<������8xh�z4�>��f��0&~{�X�)�ej
bp�2���ij���vU^�Y�wub F[��%��F�H��&D�!�t)4d��4�Q#�8kZC�B��#ߞ_�q�ҝO79?٪f�ڱ��̰;Qc+�]ev���&0SfY0f��&y����<q&�S5E�R':R
�iFi�4ԠX�gh(��4U�a8i�
*e�JV5|y�٭G���$I0�w=J(��F�N��j��uS�3f
njEb�g�Ep�P3��E�T�%(CS�����8��*�P�T���&H3SB�%��?H�N�1��5��|~x�ޛ7o�>�w}0�f|*��b���<����=0���z5��) c���KmF�gү����~�?N�_��Pc�g�AB���MҠ!C�l�(e$�`gM6��U��;wA͛�O��[*�	5\4�]�>4L
kj$������e�ijuUJ3B��z�;v3�_�Q�1t3����l
H�(
s��jha���hfjjy���<�4Va�L��$�YH-:�����<��7z��iR��&a� cG'���Gf�*�V�1��?�r��FB�����LAM� �I�'�0w5!��3�?P3�&�(���IU�&B�:*{~B�߸󀏧���'��L�akgM@F�naƺ�VE��A�3M̄��L����&XS^�W4u��&H#�053F�]�M�ѝ�u��]@C9f�g�"Ԭ5��,�\u�����x:���T�Vn+�c%W�q���^�26e�1��L����=Ey��U��?P'�~�d��U��̨8c��,�8f,�̅4H�q�U��`CeW5{w_�x��ls�6M���F�QK����L��H�LX�b��	c���վ�噒h��4� �4��������E3,�Ȓ��Y�T��=
^Q�&	5s:���0��Py�Ȕ���41#�2�E�uN�CF%��<e\N3ʌ,�l
P����ojtUk��53�i֜��D�03��g̮-�u�Y�W?Asrמ�Œ۪mW�e}����P�e�F�g0tQa0�\������:�f��T��.���i�c�7�f\�P#ڨ]]����\�Mͺ�[�9jy�ʽ�w�P�/��̖jR���j�fݺ��qbV�2bL��L�nƌ�y�4�3�=�EW�N�]	�j7F�iƙ�M(X#i�b+lCvԠ
5�v���hZ+�X�ȟ��Px�Z�D#o��5��u�2�4U�!�`�P3�Xg�6��j��7����dn��^�56^�i���X3mڴ
5�<�hL��(�F�R�M��(!FV�t�_�d`���D#gQ�Q��/������N�a��X�gɡ�#�$<�L�3E���dӶ4���H#�D��l�w�H4A猵P�r�؇Y�B͞{~:��
0
��u13�h��~��l�(c��2�5B%[��f�c�3ԯ��7q��DS�_��,F~U��5
Ҁ�L�!Ҁ�3M��5�j�2j���4�_�jt��	�~&"�6aF�Y#�he�-�$�a8g��g�(c
�dL�(�bFb��)HS.���'u�ǩN*Hj�q
5X33Q�j<�dSM�fΏ�JZ�V5'3A����|A�l���.O4��:Z�Q��3aF�1����3���B�>����J5���P��1̨<���݌4��|��]�L"MpF�U�?��":%���l�L�<�6̨��(5�1C9f�4��`&Y�R�rfd���&��;{���HEq�…q�+E
J�v���4��a6�P�CaHo]�臘����y77�*U$��b��s�<��O��2C2���4:�3�&�H㪦�Jc�飦��I���4���U�ov<�����k��4�ּ2ʤ�!m]Ø�82�Qd:mF��m���d��*:a�èy��Wk5S���i M5t'|�|32����W5o�do4E���-�eт4N�c�!��)��^]��g���IE}��L��`V�R��Aֻ�����9�L�f�jZ���j�Y���Y��MB
�'��_����3?�&�
��y}'���F�I��`s���F,��q���f�sF|�_��z�Ux|
�G�`��O�L�	QgZ��AԄętQ㤙aMj5��t�V�j�������2#!�b0�Fӧ�%��2�2�]�i2?h�f:��r3�2Y�E�/v�Ռ'
�O��1���&Tar�&:
�{���f�\���[�o3���}�|���lu��5b����k"�E&0ØOr&��^��T+e�G���d��՚}�!�!����j짅539酣F���?�j��0C�-�(3��Z#�� �
2�Ŷ0�
3�r��$ΐcW3@�����$.둨�0��0e�� �(Q�=j��8?-�-����I#�X���6̎4W��[	|q�vO�r�_��e�Q3��0fN��4�h�����df��2�2f���.j��=͈�v�93��=m��JV�3��jҚfR^�������i3�8���Qm�;(l4[�Q�$��%��0�!f�dWg�#�L���d�p��TP����MW��<�������%Θ~�7�i�6���0��__��+�1�[���W
&w��0mm��3io3l��A��e���h\�Lt�&���y��)��G�B��
4Xlz��R�gH�R�zZE�glf�K��Ps���o%�����6`���r�F�&0� ��;c�i74<6�]�+�e����ƨ�hw��3S~�)�Ѫ�WX�[��F���5����T��3Nb�!�� 
��p�y�[�o��#�����IJ��JMs�r`�e6��`�PҀ�=l*9q+�DV���6#��`�ɟ�z�*<����Fי�3��T&!'͂�F��J���8�s~2])����gL~��cl���b�0�0$���2DxI��%Q&͆�0SU�{bn��t)3ș���YOV�V�rO�f�5&�-�7�sPsC@M��Hs�׳��J�߽����VO�d��-��Xz��`k2�ɖ�X�5�`4��Q�`d���!=ʜ�L�%��'����NNh�Fr9
A�@ʹ~R�v�`P#��
�1�����i��<��#�j�{�	̜T��m��0��V.��`�OAB��5F�^V�3F�T^fz�av5�}<�)��C!��5�f�G^j��wUs���ʎN+�Fn���55�i�檙�����g��OP;fLw�d;6��ʶ3L�%�l
3@��7�h3�#�M���'�B�R�]�L��&PW5��?��R�Y%�JC�37@� ���j�y3�V��?3ώA���;3��[���Ie�@Y�X��4���1�a��(:^fB3YOF�/���5�ˠ�f�Rӿ����UZ
&H�yn��4�4�f>�mBCou덦�j�?
3�B�1�NNx[��
���l,��XISY����L�L�>b���� �Pa�
���'��4J�#e̦�J�3��Y}.���Rc�{�q,ꔚƂ;��ii}�ed0[	�`�1f����jM��ʁ�1�J�yf�_k�z�j7�RS��*�jԺ>;8?�_f�N#;l�Mb�d��R�8�j�����O,yƂ0M���#�hB�e��ݲ^�h[SgDrXf:u���,kY��<��f<&&�}LpWÐ�m&�ɫ��Vj8%�wV�մUi*ƋM�3*4J����&u
j��
Ԁ>U�o4�0M��ă�"�~�Yjd�fwjj��3���e��\�	�N�b�SFω0À�� ��|�@+t&�骰q���v)̔8X�(f�t~Aΐ�
/ 
i	�$E��e4O�2�pUsf�Q�M�&x@K���!�v��Ը{��]�8g��1��k��H�����zOU�&Z��ץ�,أ�Td�1֐=j]�T�U��F�Y|��iL"M��jf>m�a��.)�w�(C�Iuá�\l����)c�icf!Ĭ���T�z�!��9a��.s��z�*����{�a#q�LNG�:@-�V�Z�n�YY�a�5^j� cN���3[�&j��3��]�(gd��̽;�
㪘�f�Xo�2���qZh,+N%H3:Uf򷴳�#ğ��XU�h�8l4D}�Q���i�L��-���s3�I[sM����A����j)�3�T��E�L��e�BkXC��2U2�FFk�9|1�ɏ�_��z�T�-���#�v�F�a�Z75��M
�3_�Lߒo�
ֈ4�k���@�(S	Q�N�����hLF��-&8��_�84���f���Fg�%��|5��Ճ��֔l��F{ԯ5c�J
��1u�hbZ�Ě �sP��0�9$hi9oj�#f�5K"�2	12�A��ٺT��l���̚6c�&�P3�9����3"��af4Pf�P��*�S{S�T({҈5�ƿ�H�efx|�!
c�I�f%Ҵj��X��"�D��b�2k���&s��d(�Le�)#��L3$��	%ΜQfR�cئD]0�%�0R��L�?�ˎ�@Ei%�g�V&�(%FbX��#!��e��?�s�\�M��fק���!H�|���Qy�de�݊��*���s8F�gB5~$l���x����A�i(�D�r���e��n��chO4fs�_��y��-�J�&'���1π�F�ifF��+��2N<�Pc$��j���ɦ�e��Ǘ �H3�$3J5'��F��_Sn������'p�x�9��=��G3J4�z�#�a�z�O��6dž��hF�a����s�Rɤo�j���8�)U㒑f�8Fpq��R�F��l6x�!��M�j�j>�*�I$�2U��
���eN��4ӿ�{�̽$�O-C�6��
X]�|vm�a��OQ��L�"Rq�c�����¦�m���3�j^R�4��9�?�J����\�I�qՄS����
�����$Co1
�]���R3I�VѠ&�e�'�L�8U*��������Ƒgh����e����Ts�\s7`��`��!��L�9��/�?�����+-c�cnϨ�M=�����U*?
53�x�-,֨��Ʋ	>"@4��<��0����k�4�r\��_��5�����$C�j��
Ӵ�f���a�ƪ�%���hW*?'E�3c���<��zFe�@5��.��;Ni�5p�1�����`��h���F<�>�`�3���[��/�{�g˴e���h`�	��C���oj�H��D#�0��"2���2v�x�t{�n[�
��6��\�����C��&��<c�$�}��K2��b�t׋&'�
C�|��=�f�D��7I3���g�*��Ij`�Q��*�
7X*2M�����hn;�e�u��F�y�j(;�93̀[ƤSĘ3�k�7L�cR�2K5�a��e(�Zi����p&5C�+�j6��_5U*���W�M��L3M5�i��w�5��j$�6�Fl�L#�7�L�rՠ� '.V&�<�|��d��� +0�l�d��,9˴�8��03��If��f���;��B���J��3�L��y��&_h�ל�+��f9�����p�t�mN5p�d�3;(�l,��0���Q���_-�pDŽe�dh9f�(Ӷ՘� ��9�\�h�$�%|�_�H��2���1�!BM��NU�	�,�H#ӘjZP�q�l��6�8���m�w�ڠ`	�,S:Ɠ�/��--�h�|8ӵ����}���"���8g�if>�30S�@�à�f*�_&Y%ƪ��)505
�h�L#^���3�4�qȶT�Q�f����/��8�z��-<�i3�ӪǬ��ey�q�fU�8�4�ډr�6M5�T*�g�)n,��I��4C��4׆�q�j��V�FՇjpd�D�9�p�t��2���z�2b�ǀ����e�0C�e���0��f�(3��4�F��-�I��8�c�_4�T�6�w�hSM#ը�4�<C�륉�:2
��ik�����=��S��I�"L@j�K&4��?�%�X�ח�{f�gx�P�����ya�m~1�<K	��t,5�T*�kf�LRM��1�4B�1<Ҕ���3�{�\�<��r���4�OkF���vw��L3k�3�kZeɬ��Ù�yk�
����J�I*��p�quՔ����4��5�)UR��M�|a�xYf�R3��<ӊ�E�5�H��gfg�(F��qfH3jՠ��<�R�+�:c�5#B5�e�1V��5LU�-USʦ�N\�M�f
�kw�2�:4sÖ��,W�0�p�<g���7M�&ْSM��O�@��{Ʃ&���26���|5P��/T�k�b�2�-c�g�}�3��7s}�fh혖p���FH3�ٌ�ۯJ}�T��-��e���M�;�*Xx��K�1C�y��0�/˦�*<��g�=�YgL38F��`,s4sUx�,q>�{�J��j���m��%L�jnn$�����:Y �OtQ��L��{X�׶i�ئ)�,G�j`.�D�i�̆�gT�3U*���:��4�P�<LS��U6�J78�q��
�@��2��F���:[+ɸf�h��f27B��,+�M<�4�����gr�4Z��.ݺg�T��X�,"y��)���)L�
 �j�n'�s�ů>�m�e׌Xaf�5��I��Lf�9#�9F��M2�[�8�I�l�R�פ�����B3�G��t�DbX��4b=�hw<&���C�L�xL2th�.5i�^�+�;3s��1S�H2F|�P�fd�ǂ+�E��_�`��?�M�H��c�j�m��x�3UJF�f<�8zch�,�h��g��
��g�f����O�*��h↛�
�Tc��^#��C5����p��B2Okˈ��g��5?�I4`o��Չ����R�_$
�7�A��4���g�
t&<QMk��j�їC1a���Ќ{F�e�Xf.�aF4j��˦���Iv��3؍��h���B�-�s��K�f�2�k����#-;{�þ�d���f�RM	j�Q�j�4�^5KRM���
�ر��ϗ���f���=��5���f����dnAȗ ��w�0�8H5S0;'�&���k�KH��(��@3s�h)f̃Ќ[F|ڄ@ca�
b����T$Z/�S�����i~"�d�@7�x��f���3��LX��y����[<2��^�=N�'#������4R
T���4�=����%�4��1�y����)�2�7k�c��e�|���$��ϟ�j��H�Z;���~���L�hmf�8cm��;,ә�+��|9�fP�	T
5���6V�U���r�	:����	�l����If�ᬉ�OG�,�lQ؉P3w�	%,g��ɚ?�43֌͛��p̈́@�!�цx���q�p���$ۜ4��f@�f��LgF>�G�Cp���fh��T�kb&e�zҶ�:�f*4�'�Ձft�&	�	���c��AhƎ�k��z��`������0!wA�x]M50M�2"	&G��y��U2�7��;!�;��t��]�D]�i�1��3Z��p�D�k�8E���ۦ�g��i9͌�L�E`�Ɲ�	�!��D�g`���5�����#�L���4sg��8!7F���:����X��Jy���LN3@F|C���ܐ���$�i.����*1i����̥4�Z����	���h��OTǃP6��qHF��㎫�	�x��ir_$�@PȪ���x�I��$�)��ڌ� ��	�?�K,���{ݐM[���1QӬ��fʅI��'�8C�p�h ��k@��WN�>yi��f�0?�Dȫ!ְ�c�T��LCi�Ւ`��鐒�e�7�g�9o�t�礚ҳ_�-Nsd�(lzjPN�f|�Yy5��r�@3]��>�f�.f/��*Q��r�L�&�!/�hw�9Pz��C5�l=�L�}��f��!/���y�ڹ�x�I@0'3� �;MP
��!�e��bd�H����€k�PAZ��zt?{=��yYcZ�,�p�2e�V.�^3��2v�3���e�v��(�jP����5�N�ɀ�Fi�qCR�����6\D����xܫUQ3�$k���z\+f�-`�ێ�U�.��vP%�$�xy|_�U�F[�0� fzG���^���d[BuJ��Q��Lj���R�2s�<�m��>�R�nYk�Rg˕e����+��/�bw������D���W�mU�Q��X�f��������&�C��:i3\PL��Z-�?͚J�|?>ԧ�ӑ�*�͖&���w�PY/洩�'!�N����"r0��%�Q-j�E�~��`���6b�eY�F�z��%�q�x�;�j�t7�v�j磥��b!0�DT�T�T�堚6��Kp+�n�=�5MN����L�G'���Z����.����<���	�ʘO�M�-�N����+����~sι�0�XL-3���K��0�������&��+kפ��ۋ|�Q[E[�T�T���;��OD�5LsG-xZά^�I&�����6ETY2k	��WX1����V���_���D�n�	�ޡ)�7��Ӿ[o���;4�屍�Z3�
��GO��1�H�&�=u9��%����%K��|�C�����S-�>��$�_�.�O0@��S�6� �*��X`E��!L�X5�.��j��sǺm�@�y8x�+�=:d*еO��(��=d+�ĥ�p832M)�����H����g���DL����K�_4yS�
{�T4�
��ԆƍG��)6LS�7>\Ѩ�lg��`(+��V+�3Y�g�Oc���H�#Q�/����A��)�V�4&ԯY�t�d,�a�=\��*B�4ko�o��7V8��wz�Oa�X��1�P�0�ZE���Ϗ�ͦvWWZ�E��X-UmG�D�ӥCO����^
Y��Z+�ٴ+C�(`-�z5��4N�v1>��6�Zx)�{'�*e��r�P���ьM�-�����î0�ԧ�}�����n��|�n�]a�Q�
i+��A%���v[G�˶�;5����ŌD�t��a�$tb�%uM�b�;�ྤ�,f���W#&�%Zȧ��a�QR;!|%R{,T��]����^~�<E�Ĩ��(���!y/�O-n�B9�W�KhF/��U2]/����gS�T�s����1�zJ��
�HB��l�v���M�S�L'j���c����MY���K�̍a��k� >�����)y��ܔXϥ���N�f��5ϻ?ǃ�Eͷv�&�9�5�r-�/��4��F����P��&M��qRĜ���b�����ߣ��VMȓ��QS��8J���g\��]O�ST3��;��H�0�og��D<r
��Ń��E<��~,]D��uʴc�L�m����10��,�*�<ƛW����}�y������m����'��*�|꭪��Tx�3�?��h<�2�j8g$ʘ, Ӱk^�RM�6`�j�}��Ƒ	��s*)�br�q8NI9�@-2�p��2�����bX1&�QTs��k@Y6���w~ziԕv��ѫ�W��Z����	���d�t��W�Y��4ŠZh�p��1>	�p�&{�k�T�CUhF�`]+��\��h�q�U��߅W���&�2���e`+4�&�0♳/5��M�R��4����S5�[��O[�lu��h�H��zi/�J�o�Y���	X�f�x���H2��E�1�e�2���f�N�5'���c���KPP�-*��ofPMY8�+�*Ѳ�I�,`th�S-3)�M4
���!��I��al�Y���-�c�)��4[�ԁ��O2�:w�-�iV3��[kʊ��
4��I�u]Moy�TP]����pU�(�z�h���zFLÉ��Y�f�	L�X)�#n�@3"܈N祳��eh�Xݜ�.�H~�O��N�f�I��i�@���)v8f�4��`�d��/�:�f�8̐j��Y3g_L��_?0�U���1f]z�a���)��6������$��3�'i�ҤWw8�ᘂ75�H+��&�^G�q�ΚD1�N�X3�h=[
3a,��P�1�4cMûjn��
��ht3
�R��wW�>Z�P����,��s�q8J���33M6s�(F�ϙ�E�Y�F�a�2��j8�#h��Ȧ�#��蓞J�PC�L�)�ƣ�[�R�.h�Q��l
�^�n5����P�(���H���[F@���Ζ����9+�t"�>��a�p�7Hvv_��@�j�MŎ���(�Ȋ��F)�Ш��Dc�p��7#�;�pT�D���%�Tk���e@aFfMXh
(�D��o�j:T�Q���̟���z<�D�h�[K5ҏY��4�`$<���j%�d���X�`�[u�q���ԓ�h�ffWX��^dY���M��aFaؔ�L����ff]:���;
�>:6�㱲)����6<�B1є��b�j����?��Xb�%�p	xn�N���A=�TT�HF5Cs&�$��P��:>�~��
��J�1]L���Lc�3J��h���AW�\JQ�
�gv�My�U�G�^'�p�r�W�p��2��Zf�R}ii���gH"�}����E�>QP��&���i�~d`]�"ڴR
��������
��Qа
F~Th�ͣ�K�|�Ɣ�Ls�%#�(iF��g�7~��	��(�Bv�w�b��M�'��f��a���D5|*!�kf����6*U��"���~�h\�q�?�r5{ܠ�X.s����H�f�3+�++9ͨe@���o��Fn����9������c��i��aͨi��[J���5���n��R4�D���J��G�K36��(�ХX�h}�޳ϯw�,J3kL�_M1*��S�i�?�ͧ�ɹ_z��T
6
��lp�\N���0x�e*4��@�p�#/k�Xh����B-CQfa)Y,�����u�]��Ea�����F��P��DI褐O�e�{�:�	|#��Pͨ��T��j�r�4�r�7�?�3��u鬂{��.h��zo�*�<o��nKVI3t�f����n�4�h�� ���v�(�tFa�PI8M3��Ù��6�L���U
�v��^�S��3:������B+��h�Y(�O��e.IF54�\A�!�E͠3,���f�nfm��[�u{ꙍ�d)L���n��
x�.	h��F��sw�R��5�H���5�����a�ה����d�r�a��fь���e�'5�8�̳��C3km�3���uR�<��
�"�~j:M���j���#��|)��`�e�U��f��Q�fQ$��
ǣ.��?��6���a}r[��<n5�>�<���%�e�83�D�
ͬ�x���^�[�������n�<�l���"Q�q�e(g�SX5:}��Pϟ�3���9/C��	�F�5�V�G��x�?'�X�hv���xn�����Q��ٰL1�,(��<4Þa�2��>���_�������l�v[m���v� �3aȅա��XӈjT3�͝��O4d��,�H�GȵTCØZ]��a��3D�T9sz?�B�~�^4�8��q��8|�J�xw�j&f�9�-C�f��kA0���
��Z7������~���0� ��Ɛj��4�֍�vjmnn�T�_�v�X�&�mY7�Η�෨�"��!���t�6����;��㡍Q�|Ǜ�X�iiF��Q��[�oe�h�y���zw�io�w[�].�t3�&��i2�BTd>W�"�)�Gk�`�ɚFi66��"cM��	���8Ԉj�6e�f�}�~"l�q�i�?�i�5��&�R�;�-�e��[�<�؅���Ggvwi��Zc�i�)V���a��a�S�f=�k""Q��l�a`߯�sN���	ڡz~��/�"�e4��_�\B}*�l���x����8�nl�&�5�{��?��&����S�:��M�F���yF����^&^�zck�'+��V���}��`8H�!"�zB,��"t��T5z����A�v6�5?g�(�����$�;p	�6���'40-����<�����P��x�Z�Ar�:���I��i���{F�W˰f,7<�������om�Ӕ��[ݮ��KCf���f��O0M�qݏ"�·�d���`�L��Z��e�sw�=��/bP�}K�<�M�<��<
m�LS�����9����l���qi��qFF��j���z��<o}�����i��y�j�i<�����Ŧ0FU��&ꮯG�Ԅ�s~��"�M�P��5&���������@�F'P��x��"W��f�Σ~׾��
4.�8��h�4��7�L��f�i��r������$�m��u&��ZR䧃����l�	�e"?�� Z_�#>��ڍnΛf�&cZ�LQh+0�*5>T�����Fe����VX�,�sF��ss�'�?Oi�4�D�㿂�f��š���NP�-cy�	h�̅O7�h�:�iv��_��=_J+!ř̏|�j4d	4B3�b��m2k[��F�M';w��TC��V5�y�>� �FQuh��O�i�	��L�t��r����ĩ��d�b�3:g*,4U��W>��0���e�8���
�l�0�D�K1<�MI�e�Qb��1�}P�aӠ�q��Z�3�P�$I5W�;�4
`�U6z�LɝJp�w��y���@��N�%jy��:���X3ռ�A�0�^����N�O����4H�UCՂ��GQ�	0�z�=Y�H5��0��*��h	J"�t�p���0W��t�A�6p�dSL4傌��9���F�*��%i���\����lM^�i: �`��46z\����u|>�$��q��ѯ��A��`լ��
{�_x��@�&o�lMc)nG�m��6��X݈kN����
	�ǿ��nϛJMbFEʥ(�\[��T�k_��ݾj��v+�'qH���&~0�,�AH�1@~*4sy�^;�i�"�:w�N�$�(d����@��/Y�����/���o�*���֟�6<V
��Y�=�l5S����hfF�֨i� B��ǽ�O�	M�@^(P�&�y�	�[�xo{��,�/��D�k���8&���i�m�A�\Q�:F�K�3Ϡ4�L~y�ۻ��U.i�i�\3�q}FXT�5s�S(����&�&#Ҵ;HRh&�p�[(��l�������òS"�9
��,�j�TC�aM�X��Pr�Xf�iԬ��X�v���o��T����P%��̢�ft��|�8�Ҹ�6H@߈bT5��|*�U)N5��T��|���������R
���z��ƚ���2U��N6r?�2��0�^�W���zP
S|�\�ʩ5^�&B��&A��ޱg��EM5M'��07L�V\$�tK)��Z%�A�H��;Y3�u
��I�W]u���gp�dCCu�A����q�^�T�gc5S�V��EfM���f�V�Յ����Mj�F+N�4D�\B�ٓ��{�%�	$���!
��a�p�5�i�3c^:{���f�:$�F�j
�QՔ���e���Y���4�n��OƓ~lX���4v�/x���<�mH�I��,��NB�*��`�l3&	�f�$Max�7����G)v�Xլj�a�5KԐ�X2�h�tdtp�UW\�����؇�����gd�Vz���;���sRZ%�f`�V����ˇf�u=�T\��{�dJƭ5lރm�!�@��la��a��{#��>�VP�!h���	����p�YŠ�Q���s't��2�=�}*��o
�o�]�@~���;��x�j� �PG���T˨kVVn�fNϫ_�jRn�
�a�5D�X��"��$!��a�w����L8�
H�|��(�X���C�i�Y�P�E5�ͼ@��&��}���k�k�9�X�M��Ns;���_�Vg��2p�8Fm�(��AY����=8yz�y��F:���L��)����S1xd� >��^����K?H
?"��a��&��H5���3�D#�Y⁘Wt
EM�"�t�TO�@�f��.�i���VEuw�L�^J3h��ヵ�P�*� �Q?C��\h�v�n�hZ1<A�@�I�>���$=�t��˗.s=��f0�a�Dc�L^5X��H�YY-�Fd���-l�9P�A��7w�ʹU8�S���g��ʳ��+PW��@��`]�p�����|r�b�/��z�L#�I�(�a�4[�z4�v���V�go�z� ]�t	��;�S)��L��$�?��9�����2pM^5�HCu��Tʦ�Ts����b�q_����婍�G��
V5��z�3�,��<9?\|�募|Q���82Y*�&��4q�>TC/���3o���F<���� 8@��k�q�&:::<���$��k���f��3,��i�b�ک��Fe���,\��ѩ��OB�L
�bЉ��l�1����f��Vrܣ�'�����ɓ�Mo�m:��f؏�F�
~�!��MX�f�P�9@����Zf��ivaTV��U�ʩ�U���&�A1Ӏ���ܔ�f*U3W)�Y�t�}r�a��B��f<<�d�sh��-�ꘂe�D�X=��;�X�~�SM��^3K��U�e��K��\�L��D�
�}w駟�*��lcw�#�l�j�lt�;/<�+�p)�z��Q�Ac�\
(��P�
Цօ�g?u�x.!/�
P��������D�nӌ=������f�1�1��m5�o^�ݦ�x�"嚋�&�2��0d#��Fc)�qk����
$�$��&����/_:�L:�6A��.�i��8�4�Ѡ�s���	�� ЈiT6i�3t������z
�4N�ilYxz�s���W�M膄"�g�d�4�0��]�_����b�����E-}���'?T��_�6�L&_0׍2�!�{�ڬ��dX!-KE�|O��UC��h�ӥ��`D�H5"���s���=H4Ԡ+��<0
g��U3�)�p
Ӕ�S(kw��_@�L��ݎQ��::i�"M�2ܔe�3��?D�Q�?�0�f�7/��L�œ(�TV���+5<�"��|v���5;��$���@5���.�d2��5�^�|d�����V�5�ܳJ��zO1�@5�
<C����T�L���K5�h�R�q_��K�&#
�z��~�DS/"a����gD/�]s�C�E�~����i.���
�y��'���z���n'�&�C$�l����q�ƭ��F%C�D�BĒ�f��O?�cM���I��!pko��O���WU5��5�fl�km���0�����d�P���\6ѨU���J�������¸�?+�	(��E��A�D	B>�(Z->Z�>	�0;ݿgw;��&��`��lUD\k�V�ֶ��ؾUi,RK!��s��ٻ���ԧ��;clŇ��;��so�k+�KyM����?�hT;�af�0��Оf$~*�^�\.W����[ٹr�$���8���������O^����8���,Yn��z�KM�# ��B�R�mOsi�>g�@��0h�GU1sڳP�T����=�Cs�&SF-�SljL�`����JK�\j������@�LX���s3���|f��'s�gg�,k�nY�zښ;XH�F��Dd�4w�ʨL��0B0k�P�}F��~��́�����ٿ9�U�����
!
��q6-��Y�-��8~���$M)�L�L�b

6���������jd&�P�]SKC���2�)3�W��Q��&mf����"�8j�:ճo�u25P��jVai�I/�p���\X S#�a�88��y��g+ͅ����J�,�P~ƔJ�:���}�P#��lc�ժ��� �F0�"�l�P���-�D��E�O#FPf0�%H��]+����2�gƌ�$d2�c�F_�	f�����=X�rٲ�~�F�u��D�jNV%~R��m�1 и�L����.o�C�
���T�������B'UM�@�A��w�"
�f��$[����Ƿ��5[#p#u(S�S5&_d>;�Ht파|�%����A�����Rώֆ�jr犹r�he��\�W�r�u�ȉCdl��kY<��?Q�d�gj��y�@%���z��Z�Ck@�C�4>8�� �B*�ך�4���'�ӈ�!ML2f��u�q��q5f�sCҌz(��IrRM�k��u{��CjB�c&ȴ3��<%��GNxv�ˌ��7떺)�#gSGʦX��◲4�M�Y��5����䊹^\4?_����@J�����nFHêy~_����05�F�����F
����&
S��kF��7JJ8|\Mr�p�͗y�Z(^2IcJ]3�!��I����|h03�f�#
�Nx�V�^�9ʭjN0n"Yu�S�z��i��/ f��,3��f0��WX���	��P��m��r��65�����)B�c�1C>�Ŏ��i��2ɽ��6[�sL��������VcF1F���v�P��Lه���OE�3n��#ZkV�S5��;��v+�-�ʨ�
q�$�)0iL��a�@mȆ����j53�}�4Z���f2`h�ي�@��f��15J�Xc�d�O�[Yme���F�3Q�����<`=}����ʟܰ+en�B��I�~n9����D�i2R*y�9��UX�^�Fm��@�ϐi�����,��QS��'C�)aIՈ�1oX��@a�����&į>���E		kmR1[���A��!C��1�B<$Z�Sd3Rώ��o��Q���0������+Z:S�i���%�PE�z�
� ��	�Ox�ЬZ��I,��y68ӥ�7u�5��4jZ�_�f�lW�Q�	q�\
`�i#�o��l��ib7%jB�>�0!ѦX��"
=�.!ʌ�&ehx�'�)�莦�:�ن�I5�so��u+��Z�3?��~P=��O�q�4:�KO�Pq
����8�F�A�6�������%����I���O�m��i�"���hi��ĺN�t2�M��T����M7�ta�la/Øm<6�������.oH�j��[�1e��J�j�|3蘒ifTr�P�=L�"���L�@����vKa����6�Z��̸��O�2Ф���  �0�/g\�1�45cx�G�un~���\���j#�>�4f������;,FP#z��W��i�G��T�N׋��{�(��*_��SM!M*�W����I��j��%o�UO,��\��І��[h2�O^���4-���������<��4jh*Ŋ��~c��ާp�&9+�U44i7�cf�����Af��L���E��.`f�:����9.s�沖AS��Z��v��a���Ou�����?���`�^����nH��P�xMi��R?i�7(~�>9�I�Q
��š(��	�h��;�\z�z_��D�����H��������^�P�#��_h���F���S���˴3�,��6H���Z
���hՌ��aj\שi��F�w� Rr�j�Ѭ)�8Ok���d����]�l'�7��lBǀ&B��a��kl$�D!Ƹ@���K�m�����a�&�E�L7
fD73Ŕ�z��M�}*�a�f.��j�x��d�9[�*�a��N���h|�wlp3���FTqݪ�����\�4X�-����~($��v��>��QÈ���6a�c}_#��Ӆ��ň�B?�0���,�d�E&3[`X7b��
dx���==z�n��+AıS�n9���K�\8�0#����sS���@��-N���̣&�������@
��x���<G�Yw��vX��_Ұ\
(ä1~��@Mp†&�#!Q<��袼�A���703`fR�>gR����f�s�]���mٖ�8g}����ʕ#jM�?V.^X�r�ʥC@�Y��ji<�vam��T38S+��5�j��b�L�
Д�n�!95�v<-|��*8s�R3�Q��L�̝5)����v��S�!��$	'���]k�fz��K��hȤ�z�����э�/d�ߔ2W���!�9�ކ�S.��]���?kk.\�r�K���h���X���λ�9O�`DN�VaXT2�����ɶq~��v�B�q=��-[�*��ݽOmW
�Fx���fh^8��pO��������W��D��ҁ.e��9Ob���I��h5����a&
��kj����.w��!(�]	���%\�r�"?k���9�5�� 
&��%��23,j�r�b�
�x��҄��R�Z͸��7��
���zB��o索��m�"D��&�֤4i��O[�b��#14��"FL,�n&lf ,H�-j3/?�(}6k�%M�u~[��|���FW±\Ȩw�~�ҥ50�҅�ϝ)�IEB�LV�+AM�����@-Kض�0ScSi6y�7l� �P�q��\W�g5
řF	?`����w�Ac���0do
S�AԄ[.S=�§X��%sR�ֿ7ɵ��F�=E�� #�&��L�ø[0�Ҙ��r:���L<5�ljwW���wc�	cx�s���޽��z���2i�:p��{]B
�v��FQ�I�P.���zk�U�L��q�ƶ����@g��^aFM��`�[�=��J`�(̚��ms#��45ㆫIiWsc�p5���C3ȗ�:�D�Č���j�E�f��9՞J1s�K�􀲧c֞�F#�MMw����ú�[^$p*f��gaepuB���l�8�N�t��7s�t@L*u�m��w(���/�ˇ�� F�d��M6��L>_�&em�LYF
q��֛{̈4h�`
�!T�45bj�5Z'}ƻ�R>$I��!$�ci�Ak��Q��ь� FL�2S�7c�~*O��V&�?��D�����	!͉3�"}�ld�kg��p��4��ai��ZdfO5YL��.��)do.)�6D��f�y{f�E��g\�`��奥˾簧Q�q���n�+��>f�0i�d��E��m���q5�5&it�;�6�����3>
�ii0Xשg�ՇQnf+45�DRR8B����Έs�v�0��1��dpcw��E�Q�.��K]����k��/ˈ�N~q�h��v�(q�R�UB�W���<�S"��!̾�*��e���,u:�Q���W��jW+{wNO3h�j��	���;	4����f�'��M�Ռ�SjF�4=%�R��1cG.�5E[�t�DN(fJ(31�<�^O�Zq2¥�=3������J7c��83:rʥϜ9�ݷ�|��_؁�ɖ�����.��b[�������s&j�}��%>\�K��L�f�3˃T�Z����|��6C.ÆQ�o��3gޱcz�=;vg��h�0l�2�M��D�љ`Z��j�',��2����
��8n\׳%l���T��L3��,n&R�v�,�l)SjK��+�,�;]�+�lbF[�by���gO����3���);�E<�9M�/�}��O?���!�)�^hB=��#��E�L&O�8}��i1_h�ds��<a*Q���׾�'Mc�4��`��BL�5�l
4A)I��Œ
�6�z�
W��/{��@�q/�bUP�R�X+�h�>�⃂����w�;��)$K�$H,�ECkІ�F�P��Bk[����Jj[k�H#-R-�������d���c�����Aԟ�9g�LG�`i�z&?�ϲ�s3B=h:SQ�1� ����b��Ф��8�t��FΠ�m�j$f
�)�d�T)����YIľ[�H(��P*��������YX��LdC!3~ZԌĭ(���y�*�u���KQ|xh��@n;q|Xa�Psm]�\|1�4)�(���<�燚.>�I8#��ܕۑo�W:�5>��Ҡ-}�XYg6�L(C�9�bԳ��x��<�r���JyLͮagx�]	A�@�����~1[��s��R�	BNf��0�Ϗ������zm>{��INI�4����/
��TԦ&�70��쌊��:Y�a�R�<	�p_���v�-��~,`�&�'�Ҁ1��B
�5�j�9_�\�p���Иۄ[��`�:�ߎ4��V��=7�d���P��L�
-�Z)=M�٨R�ž�X�?�`Ig3j1��ýÝJq��˗3�d�Z��a73=_)�,�ll���֦�6��
�
��8����A+�R��(5Y�#���L*8��k��R�OC���C�X-[�3�1ex3��hk�4%�R��B�>���Y��sC
Lk�'	�d�^�܎�̖[9�ӄ�֞�"Ƥ9ZXD<w��ݚ��v��SnҶsiF���v���
�b	g𲗳&j䟇;�Rig{b�R�;��R�nU�'֋˕�/W�P����Wc88+9m�&P.��j�\�)���A�<H�_�_���#/ύN�R)��K/[�/���N�f7S���@.f��3X��bp�B���a����P#2I#�j!x�xϦ��h::I��8�?f��(7��5� #f�|�g�.�i%+l驚�Z[�ef0��w�=��0*ۥD������a���L�pfb�\.;��Z)�_/n��Q��xAƀB��a�r��v�Y��!ؖh459i[H� Y��M���o8	�D���0cv&��ӷݦ0��t=&te�5�%`�u1@�X���R���㿧�9S�=u5ۍ �����3�#ehd���9n�8l���u��z.h	3��+���S5��Md)H����J6��Ge'�K�].i��`���v��W
#ٹ����Aun.��oom׾���NR0s�ʌR�4S3f;8�sd�)lt]3J�Q˲=��^�B%|�m{�e`��fh�����%
�J� 1j.1X��9@
R5>��ν�V<���0���;�m.Ƌ����xv�::OO���?R�����Wh)�<jR�J�)�(��:.ek�9��xށ�I��Dl������\������W_}�Hd2��H
OO0�o��_�#ǃɃ'u%�5cا����
_`
M
�����P��<����cF@#��a�"�6�+�3x�hn��0ij�ջ-��!Wc�Y���'|4=�)�O��t��n_�i`6�je��3�܌P��Bӓ����r+�ntt��I��3e�R5�$>���Y������N�W��zmso��bq�ha*�?����
JN᏷����<��Ml���/�O��np�a�hR�Q�M�An��!Qkp|�.`�%
���o`���m����I�*Sî�3���Q'���a���'�Hӂ��
��΍��Ttm��LP�ji2R��gy�t'[�[
hJ�6-�Ƣb���T\��t����&�Q�FP��~���{?o��}��CA���5�Z������;խ�|�+��gWG\Ԍ��q0,;Ų-@�03ΐ�M9��Mtli`i@�~F
sF'��@�EL���㲆^��9�E�yz��{�.X=M���ay떦�g�M���%��;m�,4�nFB�s@5N��0׃"z��\W��k4�iR.N��Ə?��mڄ��<3F8�/(�������V�vpx�bԺ=<��@�%��wv��r��>)���;���W�4�x�j�r6��
����a4��4�#<���ݭ(#��!�p�����1chx�'A
X�'r5�Ǩiܽ��e0���S�W#��}����m.o��������Lgt�&H�u7a̜���R�Y�X6,��^KU�.��!�r\?��f5��w�|jG,6��Y����Tf��<~��'�r��7�~�^.��֫�g��c zE��'�LLad����Љ�R
Ɵa�У`3@��S�k��� �(1j4�h�R5bj�9�4gbzD�����w�vΣig��
wN�S�6H�L��<o�ĺ��-+���֔m%U��)�R��ǦR����TM��7~ʯ�Ύ�./�n�,gee?C�%p�W>y=3^�����puK�$��'P��(cQ��sR����(����cO�
�`zĆ��f������^��G,�H�5�n����/d�j�4�o���^	Ľ'w�DhG��Ü��4�_�]�͘�l���`f.�:[Ō�H@S&ݜ��Ć��I�!���*G#J��а"����WK�N�K�Oqdlv<��4�|~n��/�t�sx���V�Rf҈��%1;�b5#u+�20C�p�0s7a��
;��~����N�^�5^θӨw�.1�2iD�3Q#�i�4���W�WD��5˫Ȩz�����Q���.�ߘQ�SK]	b`0�
�'�������w�j�T�	Ë(�꫅�����Jq��)n�|����<b�@b������ǵM\�p�6��_�-=	r"3?I��56wKMc&͘gh2l���r4O��c�\�8C�dښ�u֜�(=SҨ��D�t��1��4[�G���ޢTP���������'C��	��JИ��]5���0�I0(鈇q�A[���q�A��Ń?����b6,Uf��b�I�j2˕��ו���/���5����"���;㬔��y��3FO��@��aK�����^�����
j��dx����05J~��ы�-��y�N�tq��Ne7��=�_��\��f�4�8�z��_���Ψ�{��@ͨ�������e�k�q����o�sgz����~�R���Y�N8?U�t��ji����`��-�k�Qq���3�q471g�f��0԰�A��f�4==���2k4[s=.g7��*�����N�4�ҴxbD�+����S��9&F���+Mx5�i�w�i���Xf=;�1c�O��?jm�W*
C�K���bq�'���84�ٻ�>P%̄b�L��3=1��vy���B�Vy�����Uf��D�D��Q�"<�@FN7a@D�65��i�jz�&?�ɘ�I�FO�`5�՘�a��$
����b���rZy�ci�T�⁗��{�����������A��@���B��i5���	�q�g��jR�wOFW�ս���QS���p,��L���ʓ���x����.��?���_*y�LCS��3��P���>B������`�؈�9��w_�\��C�]MCC
T���4�a��=U�>���5F'wӕ'��tr5m%��:jL7s6�T��6(��Lc�龐��1�3�nN�Ƴ>m�4te��6�|b�)M6P�M|*~����%�&���T(S�B�ão�-Uwj�_8����;*`Gf|Ұ�
 ��f�٧u�0d�CC����!���׏Ɇ��z��z�zQ�CD����;�k�����Ҽs���vҩu�h�10#vƬg�cM�7N�����ϩ�̔7YF=nZ�*������j��/�)�B��K��#�']6J�3+HB�����N)��z�<������I�SdL�3�\cҘ���Hsq���3$�шz��z���{5�([c�����N
�̌0�V��i����tn�nG1b�(�(ހ0�3eD��IL�q2$���ّl��`p�R0�?� a�����~������2�L���'G�QS���P,ڂ��)��Y��A;�j �IN|=����I�2&]���Ao�ȏ��]7�!�`q'ƌ���g��������1�4]+�F35�'��O��1I�^aL�5nb�Z:��}$.�a�ad���â�	au������,4�|�4��l1Jȃ������Z�Uc�j��M��Y�,�O"~�y�QO�i�A���:�w�(���%Ct��*���ٮ	f�R���OZ�y�
����b���MC�����5 
a��F���j5f��o�ѓ�i��1As��j<;I�vR3u3S�^�jNȰ�a��cFkh2'
��t�a&�#I�r{QWc�OzW�����@;�b����򒽚�Z�)O�������E
���rL��1j���|��Wd�c3�1���QדO����r#'W��\��R�5�dh5X��0W����t�\p�pS�of��'���m{Gӹ�]D�ǜ�HQ�쌸�����33~R��z6H���E���7QlL�4 �O떆�v�@/�A��N�ғ��Z�j�/�Ғ�T�����R���%�����L��Lj@a3&jh���<�zX̚~�������d���İ�n�"(�<����'�MS��
k:Y��h��`CS�eg�;#�f��TjF5N�hi��
�$�I���JF<棏>��S5��:dklƌ%R�)tu[�S)O
�j6���h010yW��h���˯�`��d�2OQ�'| C�a��c��ik�K�k����8�d���ch�'#|:_c�1f|´����I#
K�:�&o0U�䪋��`�Eצ�&`��ɐ�2b&�7>�T�#�R!tG�#���>�H�'�T�RJ���!�"?)�8Q�K�.��>�2����W��E���M�4PF cbFK�J:1e�Q��F7C�A�Sa�q#��G�����2!ͅ�慊4��a[+�$hL�t
Om !����`U�����\�`^'n�i��K��*�󢖗�A�Ā�X"��S2�D	���Gf�Ƽ�R(��_�0��)m{�l5EU}��]	aB~�1%J��Or3L����[1:��`0e� tr
��Mk`g����^�h���h���fu�Ӝ֤�q�:��o��4&ε��.WŽ�Fs)ֺ�j��H��'������h��e�"��:�8�ԡKJ�S���\ڲ���E�**�p[E��<sx�}慩&������Po51���9�Y��R�q���Ecfqf˖�-��-�θ_�]/E�
vt4�����D]PS� ~B����ϼ��._]{WM�E��".��e�a������},�+,7��;l�
5:�kbFf#�+`���j�\0cF�Ny�|k���K��}m�k�1k ;ghhC�$���I焩C)�'���s���-Sfzf1�;d^ ���������G�̰�y�:�&w���
�z��+��љn��L��8P\	x%|j�jS㾫F ����ibj_5�NU��4��?�;�gD����l>FCF�'�&c5�$�h��ц�Q��0��Qq�
�5�Z�]5o�չK�2t�M�k��dfi�wz��~F\/�<��	�A����̛�d�3/6
M���Y��j������BAyy�[�'C�@enJ�Dl���W�9�PJ����8$2E7b��T�t]�Nu�1hX5=����P�I�Ɔ�1�d��Gt�ƖF?���
�`�:��
4�49ƾ)?IJ���ثOz۞�Y�l��yv�7`��2{h��b#�Ι�h�<�əl!
#F)yp�fƵ�l�N��:u�P}Ou�H}K�Po<�I�Ǝ�j|�`�Pc媀F��_��'�!�j
6���%`�0>��#���B�~f�h�&͚Uy�挰�������g$|"��ر�0��°�ƘAZ�X�f75 M���Y�-@Fi��u�Q���<�H?��^)q�ۯ2)�g�T؄�
2���s��f4��v3o�Je���ZhrÍ7O(�x�JK.���08
"�n�]77(u�ܔjW��q�y��4��Q�Fv��jP�+5Q�]5fx�-U�Ɏ4�h2�T��IL�lg���y�`����;����Z;aqd�T�r��0j��%<�a�=�$vzF
Gsϕ'��&��3R�,.v��d>6c!Πk�XXC��_�~�Ic'oO$�1�UW��{��8��5t�\�ܾ��� p(���j�OK��"�6q�Ya��
.�MC�T״ϩ�h�Bw���fD�IC�(�4
QF"��<dh�5�@
���lm5k��nf͛4g�5��JO����&����S�W�z���g��/4��Q3��y�,�t���W~ٽ��^�Ǚ2���c�N<Y���v&;�8���𤂇��N
{�k���7
^{��QfC�J�-!LեR�cZ���{��18#�z6(�A�u��CÌd�+�g0�A�gf�@nJ�g�@��lh��Y������vakFX�'�F�'��n�3O�i՝LK�9U�̐f��+f�i��lތ��$�tѦ7�^��b܏O�c`L,���$:X�h02�:{���/v�*� ����{�0��z���ɀǪp�>WȠaָ	5�.��jJ���0�J�Lk�����p3��*f��(�dYv�&�G{'u���ψ����ΐ!Ƽ�u�jH*'LC$�j޴��B�ٺji��EO�4bi�3��Q�&�k�.��NS�U�g�T��YV3fҠ�i�s3"pf;�3|��Q�^���?������
5v��Dc�[����޶����@��~�U�'XH�
a�X��N�
$��s}�~�]�@�{Ԅ&?!UӜL՘��R����n�%cq4f={�GY�b��1	f���3g Lo�	�;��u۴��A†[�q��Mr"�aO�I󨀆I��`#�q�q���1�4�Ɲ�o?�z
�����������-��׳�i9��imu�����i���4^���(Sn��b��XZ��霿q������U�^:���h�T�P-D���j���n�K���F����f�]�f�1c��2�3,0S�Œ�
h��4o�I,
GQ�159|ug�!&��I�ض'Y+i�q�ӽ4��JY�<�Z��mRF�h;��7�3e6I=۽�d�
Ą-P��:!bM���hw@��6�
��|�;j���B�)����=K�+�Y���"��yW1C�	v�*�\�@Ƥ
�w�8��9�z�?b��`�ՠ]�٩�|24j"+�11jv`��m�A�H~FĤA��3(�Zekk��A�	�0P�Ub'��դ�$�i�1�>[���=���< �p�i⎚��I$�A��`��������f�$�5�7�0J�	����n�1<?�5�x#��[�c'���ٱ�����;KK{f&���}MS��x��6ប����lJ�UԔ�I0#3P��1�LRh�Eb�`f��l*����F�E��ifM2hbC�b';j=�j�駜��i��`&K�&�F$�Ѡy���1/��N��Jq4�,M�~χU�Z��if��|��3,�0c�d��c����SӜ����S{<�������Lo"1=:??<<k�&�|n���`|tvil|||yϞ��;��vԷ��5ub��Ok�X�#r�*�
|"��Ѧ�U��~QaF9��o�k�kְ�1g����٘��j6nܨ'�ּ
��Q�#��IaB
8�t05=�,
�En��v�4��m{�[<ji�`M3�'�<�A'��(CCB�W�ShrFS���������FL�`J{Ǡ(��n���Ff8km���9�29;���9X_�kM}�ӣc�KK��K+KK7��`8��5=���'jT�'m�I܂�3�fVO�g��[�fx0iT�f��N��"�Ȁ�!ȼ�™��v`d0�4�2;�;�ˆ��Y�t�U�䰛����m���ʓ8s�([߀���1�KO�<tb �י���|t�fb
S�0���o�_h����T���NؙѾ�v��:�f�[��X8zjЛH���b�h�t������b�LJ8�D���++j���鞚�Y���B���<11q{b�1�*�_��K��";f�5�P��^hR�`�;z�?mh��eE�:m�Į�14���F
�D$h0i �i6�&�V�Y���6�ii�k�4�V̬_zB�l�y(��`-���|j5H�I�ФU\���7�Zc����S��Mu=��Ѧ����������������8�R�7Ɩ�g#�g�k�A�Z���6ﭬ����ī%M���]�]] ���3{��f�f�­Q�U�h�NƘ�LFM[��ņ�<���	f��h���@g�8��-ߎ�h\�fԼn���ٵ�!}�)G���SO,`Fy�G���0j�#O���JVv�O�bX�O�3��L�62��Hm3�7n#�]�c���Mr��g:C�mjj�����Sǚ4cs�c�s�^���b����@3>67?fp� ��U�)r�P��Й�x�KW�Y[{cvv�����=�'o���NL��|���kW"d�6�!
ݔ8�V����`fmI�&-���l���C;��
���v44����,
<
�FHР'�o�Z�4��`�
,\m�>��@�:�pg�J����	���Ftƌp惟3_�t/4��7���=!�;�t�\uGb����c�4�[rfc�t��`*�(��G�L�W�x��u�ġcO�l���:v��e����ٙ��ɽ���''ff.����qDL<	d\��1�afB<�2��7v�#&�23�3;1	jL?#��T�Xtj�6�Ba
�z3
u�x�=�f뛶��-
FR�lJ�y��酩�')q��q�4YK�0�Y�f6���ڮ��yqһ�Sp�H��4�p4��
#�	XÚ��j���&]�j�_���5� h�L�@���ԩ���'�|v��ݗ���0ޙ��7?y{���L"�u�2�(�d�_^��=���ˬj�tF��:zҰ������ZfR�wO��t4b���p#�h�(O����K��������[�MI��-�MKc�N�S�"χSi�f3Z
3�h�5��ۋ��&��'L�i�uk�i��\�������kh�疗��h��(@s�����M���H�ڎs3f��z�˯���IB�ų
ᆳu�O7�N�v��'gnv��j�׿�6Ū�ASJ?�5aH�
��f�����&	������4d�C�i3<i��0CF���ɡ�H���aG�M2K���nFONK�q�;��lgN<=<����͘���M���:�[}M����LO��
��U�w����j�DZ�nZ^�
b��M�j�-j�>���hS�hx[��f�g7���j���Sg��gv?q���-�<<��g���m�����<�/V�?Uftָ�ѓ:�1#��~�&f�.ܹ	f�3�i8�dD/Iָ)K��jT�	�(s�jO�!��aΰ��1i�$K�@ócs0��e=�M�_�
�h21�C&���#��E�f��Mg���u����:G۪D�s���+�݁�Y�F���y��S��<P3è����`l��<������{���PG�i���?��T��ko!d��53��kU�\����M�ƌ�4e�ɜ1�%�W�0] ,��0��]0C���Ψ�R���I[�(q6Z6:M���̱�A��v4I�lei잆��&4G���`i��;��3��!��3����01����Ë���cݍ�` �::2��Sjk�/���a\pOD8�8=�vnxff����U��I�hl1�p��όa�Cj��sffi�h�8H�4ԟ����T@��/΍����,�ix�
�g�x���&5š�f�9C����|�X��|�j��9#�?Í:qC�X��:'���4"M{Uz�$��FgiX/7,��Nj�-��,p;,M�ƒ�,�3�rnj�W�0�������*�����01c��G�%Ѐ�M##��ޡ���4�|g)�l�A#�Xc�ᾑ�Ι���E�����4M}��f�[�F���� @���^y���iv�����_�zL1��?��D��P��I�nP�Q�6��C)1�F8�]+?a�����33�n�4B�E����K>�dG
�HC�K�3)IC����F�۹�&��^�$e�D����Ì)&ͫ����0��|�!�U����I��/_�ӸĚ�Ɔc�-M^^�%H�Hď�Q�(�f�&�
���2'�L��|™'��P�ГG;������4t�����ݟ����W�����)ѿ��Rw�锘q����T�_7coI�EX�o�Oj���j�4X�:ċ��m�Fh��P����!��P�Di�&�`r4�,
��4��BK#/��w���
�Ԟ��}o�t#7��j
��_�IQIy%Z��Ez�&T�O�cF.�D6%��IL71�3��� )�#a���-�W#S@ͭ��ٛ䃂�By�	�aд\l�͕�C�:`h�u����^w�����R��HP�+�
���F&�Bh)M�ZB�|���1\�	�����SFfL�����Q�hԠٕ�f
� ��f营�N��A�,���`�4"3�4i�J�dL����n�	�jf�1S3����aƂn�����(+��������=�m3"��A�G�l�8��4�H$mm��S�Y�I��ֻ�XN�g��Ҝ=[�n4h��f����𾾾����b�K���D[\����&�ܷͨ@IGL"{�$�:�"6�8�N�:�F8ʠ1dkg0kQ�[F�4�:tR�y�X�W�,
�s4�j�4�����,�NO�^�j���s��Wq0Y�e:1#ASֺ1��͠Kr��hy�ZP�_���)�_RD?���gg�z6�����W�` �L
`�c L�x0��j,�[�1FM�1���5ǎ�j������2���B9�o�%S��[C+�֘�:�@���-)�3�1
MY;�	nG��z>/&�2y�2D4,/e�b����V.:��$���6�pl���
k�	�1�Ⱦ���)����>�J�a�dea�c
����w��=�'��n�*�h	�[h*�G%�S��4���i�@����g�0I���3�Q��A��0s&<��S�y�~2�o�ҿ�J�y�sjq~nn�Ξ�$g�N
�
�vSV��"�a���1���`I=�59���6Y��a�2�X/3Èc^��i3<�$�є�Ҏ&�
�̥'��0e���l���%n�l��`��ܺ[�$v�xz�dug�?��-���g9h+���h��/��-�FY�?e�d@ �"��������R5 
  A��Ebh@�
ڠG|�Orw@�n��_���R�ζѕIhfi�Ν;{�gn/N�>��߇'oͷ
\N�&j�<��4��RGz�%?#�1�HȘ��{ѐ!����XH�%���
�K��Ɨn�S�f#w5���6v4�h�,
�N�h(;���$
w�͋׋���8Jܮ���y�����M�jx�a���]j�3�X(ȼ�����,�@�4vը��,,�7oă����!�����![㡓�?6VIzּ��8�sQ���-������]��/���,�,#���{���ʞ����]��	�7��=���Q-:Tjn��a/4}Oɀ���a�pS�	o�a�kTGK#��J�h�3m$S#�
��؉1cdi��NR�O�����on��IY�U%И0
5�3�I�`���}3<I̤0���Ha�$
~R����?���
��B�T�Uj,�ć'&��i��������XwU�������P��k����Ksw�қ�;��y���m���'&������?	tՐ���	ǩd�?"�晐��]��b�UggD1�5&0F`��,��4g�	�v4��A�1�4
4��P�d��AS�F8�+܎����y��R��`�k���E�&13�lN��i�YR���̠д_�dm���'�v�I�
�QJ�x�>);Q����5�N@�7@
�SnL̘�	4�euwǻ��B{+�.��k�r<��p��__��pg��KJ�*���`VBY�5j"���`F������fФ�234�(���M����i�3�H���@�hB��4̙\��A��I0��R�AgK��Nh�$M'�7X���� ����1#"�d����Ȼ)43f�	��x�W~\"9`7�~UPt�רl�dP����~���^v�j|���D0�^���S��pE���ުʑ��1?�:S��`�kb��ڵq@�ڵkw�\�;���O���D\j�d�d��))Μѩƌ��]���_&b�+2qw�E�"�3\vB���kr1[�N��1�aiH̙���a+�ܳ�e);i�<[���㚬a�dn�y`���@M��
�2$fKQ�L67�9`�
M%E�&�!�
*�mO/~B��1����X��Wm�)�P"h*�L{���t�4����p�j��B_e�pW0|�f�gz&fn�\��[^�������-외�t9m�{���M{~{cE��i`�g�1܌����ɠkڸ�[��A5X��E�1jOD
�A����4�Ry�$�VtH;�UG�-�v4��=��v<���ٶ���B�ؙ,4�ԋ�I֬�V1�3�~Q�����9)ɩ����)F���Ɗ
')@�3��p�У���5������M���7���]���0�r���925��,����Fa`FS�AM{536Π+��X+)#������0_��`�Ph;c#��\t49])�Ɩ���F�F[��:�&�ћ��2���zn��m�h��d6�=���S�8f��eTc̰�Ir�,0cFh���N�!��O+US\H��P�.x�M���'f����,�€���9J县��;�;o表��������ű��uu#| ��z˴45�n����*��Ǐ,�e&L:1�.b��$�D�db���h���`E�8�3��҈��'i��`�q�G��!��7X0�9��}f*�@(c�f-;f��y7N4��)_#J]��؉���o��44������LȮC��!�`v�a�\*GR�S�5��Ѷ��Uva����+����P�����0�$ܺukj��ﬧF�B7�@�?�o�gD$�Q�wq3�Y!�3��*��0�DM�)+�Q���i��0g��Ҏ&�R�6�����<��`��S��<��ԘQ�&�3*nB`��AW�l[��:*P�F�P��� J�ްj<~�Zg-A���r|a*�{���/#+�
v�����s�7U�g�Lb�^�Rg��L�ƌ�tH�&V�,43N�`a�@)0�C(�V�dMҨ.�	kxv��H8�+���r�	9VH�'�)4�N�M$g��8^]1nv=�-�<��CLw�@eԬ%ws�	�1�b��Ek�F���U��S5dg��~�d\�*�z
S#(�?��XS5p5���K���P��L��Bo��p�ei����)�Lw<s��HB�M�f�M�u}������z�ߔ��R�m�j�V�o�T�I�&	14R�F�����wҸ[㴓qq0�^�)+ci���@ib�AϜ��y��]��$3FM%kk��
������O���Q�Ч�M1u��˃��D|X��ohB�tՑ�霝>�x��%ք.��]+���Fp�ޠ2v�pE�=���4e,��|�4��SM��Ȓ&hl��g���"�@ƌ�Шˎ�׽�8�؃'ŒX�Ѱ(I#�ms#���<��K�d�r���A� x�`!
0���մ��dA�2%���~���õ����H�jU�L{W���3I?����T���7�v�	zUM�	#G5�|7���O�[N���V�L�,3��f�"wC�ֈp��5 Ø�)/��ΐda�d�E�O	Y��|ҷ���YGMhj3#��0Œ3,�`4miT�.�!X���m�58��"���d����b�`�Bл!�^Y[�mq`ƪw��T��Q��f�)�����ߤ?�{*��k��#�ػ��������R�5Tw*�D�S�Ik#��������X���I\G|�k��M��MD�/|���5;A�T��-�.��Ёe�r��M���3m����I�*�r\L#U't�עo�9��Hy�C�qC���2�YuҠI�S�.�UY:=c��
,��`&�8c����a��o��?P$i��GT�S���)�pD����C�4w�x�8�)�CP�?���왞*-����C.y��P�j�w�/xB�@M���b��8��]��O?
�x�x���HH�0�uA�P&�y�V�/t!���)��̂�T��/��N�2g��e��{���AW�+�Д�I
�l<�`8��� �4�MY4X��fF�!5
346۩���W~��E3R�V�!	Fp
�~�v;�+TNj
�԰��S�!�˵#۟�SQS�+���e5��wC
�.)�
�[�Y�g��>x�������q74:���<�������}�Ν
2��\��6UkR§�l�� ���5C�H�Mn�¢�M���49�$�X�V!
��
6��<ϸ6X����`�������?��h2,��h3S�8KÃo�,"�V�:��"�+#a��PS��{���ʚ�e��41���G�{����S����qo��1"�(�S	�ѧ?�2M���a�3����z��NfS�FM�s�3�Bj`2"&;e�b�
M��@��eO��5g�5f��g��ݪN�Qz��`&ciRi���l�dgoق���t�I�����BE8֜�9@c�q��#���3�4i�7�y*��C�eoYMM��R�������ꜜ�eK$���W���T�Va�:����?�o}�(��3wn�C^c�5's�L�]��@B�TfF�T�!���n�h���\�k��ܲ�����6n�\��,��4�G�z���C�g���`�j8h�3��RQ^~�W���r�qRL�iJ6����?�։��p�����'T^��LE�����֮Xw����^�K�����~ޝcL�\��~*�G���B�D�є�b&n�,�&d��H�S�����qO��Y'�Ѹ`�
K6�i��y�l�C�$�:a9�5��w��dQK-BL���	eֲ3�f��v��h��Έ����I��L�$'|��N1	i8E��M��O1i
�R���z���2��5���?>S�L��o�zz�[���pa��2~�n
���`��T����	g�Un]22�X`3M;���'�4�91����2}��V!�I���B���q�N�4R9ǡJA
;t��'�Q�и�Nٮ����mLKs��XW�ؤ1��	�$��+����A��g6(�N���%c�F���q��9~.�$��g@�'�r�h�~���w?ђ�t!�R���_�Eñ�n�R7�…�/�gb��;f�
��,�BXt�D����q��g/�sw�iPtQ�2�MGC���h����s4���r�q4I�����闷3oo�eAkFM�J!fyDaҔy����ze��8���ʴj��}x|if��+g$~r��#mi�j���ٽ{w��Kg�hUY
HSRR�
�^���/�<~�䕖P�I��>�f�S	H՘̸�MDaf':&!�,J��d�z�y^�&}
V�+�6'7;�&3n�*�Q7O ��y{2����U;ͺ/��)	�L�X���3g���J]m�avC$�cзSK
��2�3I��)�i1Q�&
W�~=>7�|���lB�5ToT�H
��ǿj
cUe�.�p�С�h����ʃ55�-��j�����POusե�����n�y��T��yMj$hJ�ϠQ�S04�&]O�5��q������R��҆�����R��ijr�5V�I�CCP�0�<��4�,:��`������4�G������
�<Bڂ��&�̏~�'�om�p��2�#���,qP�PB������%<Vҕ(O=�Iޘ��'�Gjk�J�6�Ր**/�Hģ�X�޺su�����%������L�½��3	�D_�`u���2���0���$�V~�k���o�Q�f+�)`!
>��
�pu4�f�ah��m[щ����N��yCS����픎�Te�B����ј��0f�f��SF̼�K�����Qⓒ�PJ��\h�#��������i����������/B��(��[�.��d15�V��R5��VIM���vl��TT��[W}z߾�{����aCib ro��'/^	��O��|tJ�q����fvq�Ĕ#F��GSF�L�&��FC&k��85F^fM���D�63yظT�E2�h��mH�5h�WCl�
и���5�,��;��F�(�#�(�+���޹�)�]	*������7"�����ib�ig2IlSǘv*]���L[�f�6e��:R�(:j�*.�9_N�|�ۏ�.���.�[uD����s���G�Ɉ�3" �"�g�x��DX>ʥ�v���lj�c��{���ю����ߞ���TĈ�ڜmq^�"�Ps<�Ċ��@���rFѶ�~���vU���|>���H�����l�����`��D&�S	����4�������5�L-d��Ai$�;y������m4���v��)���m�Bi�
�NU޾C�[��~=�J�u2�?rRW`7�%?XqN��݁��С�]$d�C����ɧkB����|L��h"G"����;��ǎ������?2]��e�ٱB/;�6��
�2�<�٠��\�הn�O%�V��D�@6�NϤ�`o�|�<��c�B4�����˭�:Eۋlt�]��z��&�
Q�0Z�t���0�7sNFH"��_:j���Gs42e5�����L��G#�D�"���9G�{���mi꿝\��T����hem�C�ҥ`�ғO������t��tʉ(P�&�9@������O�����o�{{��֦f������DCnW ��i:��o�:]�ڤpﰅ4��0��<L�8ޘg�-��4�d���#�b,ݑ,�8֟�Cf	�y����{�h�?�'f^�y��
3ԅ���Bc3cDM��q�eL�]��ڿ�Q+�U���˫:-
8c���Cm�����F8�_�)�F���W�	�q��K�3,Kشf.��K�X�>��^M��wF)\��!�D�5�ư3c�����|l�����FG�mK�k������"��t�
�\P��k�#.���}���,�i���[P�����`�@��̀4�t$�twx1}<9?6v4֚�N.N��F�'��c[[}Ao�vW�d�f�lM��̙0S�����F'�1�h�g05��g��+O���gߴS�B�T��i趩�T͉%�����3|?9��h.2�N�w�ۅN���V��&7����7&�\
ؐ�Cx7%:����>R�aذ����UN�8�����`&˽��v�v�V΍}���1ꂑqj�!vCn7��ew��sH�ijN%�����I��ętk)������Y�35�+�'��-��Ld�A���@�{���{�6~f����;��2�3fXj�0fx"a�To�[�(���C;��{G��d>�}cm�IO����h���ȩ���K�F��9DR��f��Q�
��՝��(c�	�@���'Snwr�d�	��Wʓ����9���Adg"�g�E���	�>XE����:�o��΂���Rtg��3R��P�ۛLe������?)T�>�g�L�3J�V@����⫶�%�k�i���E`F'�`�Ԅ4Xg�9h�(l�f�-���R��!�=?�X������`c����a�w���:T�{z��xn� ������ƙ�/g���(%Z�T�OFx�ZO�(}��fO�o�X�g<���vttwg���Ϩ:ʼn4n�3JY�P2�&qX!C�9W>�I�jj�¡��ԝ����f�3��Ԝ��l6��[�ᇓӱ�7'cxG7C�ɥ���
T0ك�5��=fDfd-f��H��I�A���/fZ<��a�J՘��h�������%� d�])�Q[�h���Ԟ?j$p"q&ؾ�aF@#�F�Q�Ɓ����?Ü� ׏�HY��=ϼ��Z+�ӥT
p�Q\�&�P�h�h���������_?���t��^vg0ǵ6'���M4�d�9�x �����
�x[ʊ��X�3P�l$;���vzaY������D.741�Y���n���dW�-�T*�~�z+a��p�.I��Kժ��WL��L�-�,�!ʀ3<X��\I���bŎQnR��okǶ5��n{�M���1��Q����\U��U�3j��Ti6�i��T�^���*e,����'��C9/�;C��(m��)?4h-�s�w�B�Le}�/6�Ax�����WSK#m05� �j��<�3��y�^���J�x<��S\;���1g�H����S�H(r�����Fqx�0���/"]��C���l�'�O>�~�����}�3"��(�`یsl�V�յ�2�3�#�HaF(#D�����
-�Π;��zk�I���P�24,��Р��FS�iꋜ3��L��Qv���3�u�b�2�aFJ�a����Ń5'hj��s�R��'J�c3kn����߷��5����+˥L
焝� 9����B��H/,,�;�j\����ک�֡�L���Ύo�*�0�Q�J���!h"��Ҽ�����l��?�����zB�d޸.x7��8����^��O��b+jR����Qs����!�t�,��l9cF�t��|_�v9�����,WѠ���dh��~�RM��m����9 ]`����h.��zԳ���KA0=��	p�dV`�\k1�SH�|?��6=�_���g��{���_��3��p�������x�v��Յ��B�A
������X>kuGp��{}j����w(;;�Ι3g�Z3�����LKk:���u⯣Dvz���R�֥aKI�</��a�
�~�>�v�1<�cX1��Np�eC��@�#�kb�������v�k�m4��1�F6sz���I�!MM�I�	�h�9�`�
����V�Aΐ�s�zԳ��D*�l�F����|����.��7�
�����ߡ��OϮD�L�=�Jy� O��D��w��
�8��Y^-�R��S�;S9+Z�#ap��BP93q�뱍���W&c
�X^�0b�̇�a/��>�Ĉ�9�s�.ƌ��Ɩ=�0:Ԅ.�� O��i �8(j0G�>o�0��veP�J��\�v�Ӕz~��)XtKm��F�5����9��.log�ג����S�o���X9�0C'����j��'�B��e��|#�N/|����i��~_Y�
�P~�c6B�XA��9��f:�_����8b3!
���Z�&�
�|P:���t����O�$Z[b����'����fH����O�x���8�B�C�RcL��	
F��d,�����&{Ĉ���,M�JPF��!'����F�T0��(��v��~w��i��T�u�
4��3�e�H={�z��7,o8��.�?�tv ��s+K�N�>]!�
�ǎ��?HX<B姸�Eլx$�
8�?���~ṹ�f5o�eJ}��f��"�y�Z�N'ZZ	3k_�Z3�G�D��t����N&Ll��&=x�41bxR���2��;�90��0p�%�B�vL��"��=y,������C?w�GMZ���8��'8=rR�F74
4�>RIS����3u$h �3���V�6�*��󣕱bi�����)���H	/�N�´U�j���̨?���}��\�
O�q�q�)T��o�_�P����o୭Ï#��{�s������lZ2���<����c�;زFa��_�SՏ(�4)�܁&������pk�3]x"�@�K������]����9O#�k/��R�gf�0�as�I(�M+9�����Ss4��U��4JN&���`��3�R�Q�n�P��s:*���k���3��NN�����E�P�K~�	�x2J?{�ʟ�R���dj�SikVx�O��ahFF#���7UZ�ztfq1��@}�Ŵ
aZ�T�*49�v0f��&3X�#|���f�����!�	��H������4��ȏR����$zLؒz���/�r��$==�nŒ\�'�����]K.��A'��-gTm�Qr:(I��g��?��\B��'����M�2�����Й�EL�,N���ޜ=5�t��Z��F����R{��OW��Xq���`�Z�΍�z#N��{}�.����3�K����K��C>�^*l�L[4��˘a��P�F:�IȃQ�	‡�R�;^�A��d8l��4�2%��
4'�n`H�I~CN��4�m��T�d���kE*��K@�}֜x��04 �=�����3(4�*6�j�r�8Dt��5�N�*~|���T85��8�a���t�؛'OP�9LCM�®�`��o,ચ�9�K	o"E+ ��K��=5�?���|n�@��?ӡ���n=L�	�_0�0��"L0����0�\�տ+�VX�lЮj�+8~�H!��4X��7
<�O�1&�T	��6�&�V==Ac	����T����Q�`���m�9�{*�f��\L8��.д����[|`��f̳��a�%W�j��
��fR����0kj"O�\'N�c%0Ť ���_|��^./ SS���E�Vk�)t���t��ѪўH���p�g`6�[#2V�h�m�4�3e �E�
0���d!k�t,�5њ����ބ�	3/��8&�<�cf���$Iݘ�2�8l2�3����h̜�f��0�CN�RS��OXKN��~҉G�~���X��9s�?+4������jrɝ�	�e�lJ�)n�hj�9:?2r&��uXIt{�C�(��9��O�a�5��|�?u,��>�[)ͦ���lC�Ur-u��E8ØQlQ���/�@F
I@"K+rԟsnƯ��a�� &��o�+t	P�'<[��y�SF���h�o#W��֛L�ƀ�	5:h.�14���ҶN
Cs ��	�����O��}���>�=~����x�4r�'kvqq��155<=5�����7���B��s禆bE�%��;=�Y4P����B'�R-i�ނ����ٷ��ݕ�li`�'�UU��Ѐ��i3/=*p�X!��ClfH�%;C���7C��1�	f��[��NnF�K��;��ңf��wƂ�
�h" �I8���34Jun���.,�q��AI�nhf�M�y���lPS��2rY� DŽ����8���r	��a�fx"W�嗿?.�J1�(Ê���Z8��	��O�=S�&�sO[�?Ml�%��'+�<r�����،Nh����tp����Cc��ۅ2���<nnBo�	�`Cbʰ�I
�j��̲�v�h�?��عB(������5p4��РC��Q�Cc�8C�%�D�H~4���%���B#��7�h>��&~jIa�0�ࢤ(W�8@svi�8xta��WV��nc|���ʹ��_oI�W�="O{�}��qE��f�e��fWR+uW�N�ӛ􏎽��G��{o�l�2v{�Qhj�M��1l�O}����u}����ifh��ؐ��[:[tƈ��CYE�3�tG�^�V��-�F$��M���`	���7���^r̈���`�n۫�� ��Y�|2�Dpa�1ԈB�����i�{h{||yau=д��R�|q쪉8����kOu{\�R̚�IU�~�7ك=�����Mjƞ9��1<�q?�������nG�L�ɂ/&�:7$����X0f��jc=����Yi�&-;cs��YʇT�ɼQ�${���x<u��^%���@�f�
��DS�Y	j^���15�NDp�(��i�ڬ͎⥍�Sݥ��o���*q�|zx�\���V�&Ӳ��R4IYa���F
5�<oDK�$*�==ɾdOOl�=�ڦ=��<"���&���߾�Z�?���TW@#��D�Ĝ���4��K�i��Qrh����S=�����1o
��vS���Khk�.9馦ahL�91g�Q=�5�����,I�O���ͩ�x4�c��#�S�r5��-䦖
 M[y���b���S�L���g��_iI���
!Uu���2B���v*���@GO�df�@I
MB�
�j�~��8����Ο�x�I�C_��`�`�Ơc�B"'̷^��ah L�^l2y
1��=
̖v���`(][+-Ccz��U7h2`K�E���k�-
�M�����zθ���U�s�����O�`�$�n��d�Ժ��'Qm�.�Z�>���$�l,�O}Դ�˝y��2�®�`2�l�qAM4>fu.�ٱc�=R3-v��pcq�Dl�0c�t�x������g�0	
�Q�18s�C�
#�n��'	�xi���O��W6���=�m=GiE��7H;L)�������H�f�n��޹�F:�qD��a����4�4�…D� %""�p��$�p!���Θ�L�:�h��)�V�������DU"q��qh�����w^��O_������=�G�2n.x�;g��r �h�`5�
����7U�r��py���u���.��ᷱ;x~��Wˣ��/��~_�je���v�::��{wI��
�y4�M},�0Ɩ�?�b%�¾�y�[�z��@\!BF1�O�e�?E(��5820k�$����hС��O�h�$C�ik"[��߈�z,c��v?��3P(l�ֶ���U0Q�v��Wu2%�m�o�͔S�����\<����Ԝ�Rx�@H����c%�î�ڨu'��V����48S���*v�L�Y��R�T̛��6���T
.޹�j���)d��243�D]�30�~[
���ϔ�Q�2ݍ�蒮�z��f�j�n���3���q�M+)a��	����(g�\��̸��3�)kh���3��s�'�V2��;Ƕ�*�g�n���-ؙ�̃�TY��j �v%��G�}�'\5��bw��$I�|E�(H�s��e��PV⤠�{�WZ��<S=�'G�C����p!_xz�~��0h�nu>S�L&1�
)ӯ?r"d�*fz�����ٮ�`��bFp�4����o]t�V0��˲��W�����4�D�����s4�=4~�D6wB��Rޛh�3�-՝�\*/d��{pߪkK��2B
��Bmj�2p�����A�%^gF��e<�/��#ɩ��Տ>�-�����0���Or���33~sUo7����%g�1�t����>���4Č+���&����cf�`�d
|
�!So��}�a�̾*d��O3.k���ǵ
jH��n͗�q��o�Wc'4]�I�j�K�s4���N�=�<i����GPgT"�k�AfSw}�,�Q3$p�W*驅J�2�q���^pFOH��!���#ɥ~�\�����
�l�*�,/jP~*�|�/4A�B1�A)_0jg���v�b�P�ќ��CW�1��vi��4���Q�`��؀.2V:�Cg7d����q��5��2��an&dg0y�3N�F���,m����[�f��p��֭���P�d�l��d�*��$�|�41Q�ML�
�9���4㣣o>�}$=���5}��n����O���dE9Wmm�fll��ν[I�3��T]��f�42�4J�L�b� R��Gq)h���e����E�z%�F�A�/,�	2��%Mӭ���vd70��w�'Ac������l!�9dh:%nW���9����{��'3��d�Mަ6E>k9���=5�C����_�W��m
|�%��h5o>��m����Rm��\x���O�*�5E��"O�&[(�g-SȄ�'!2���1��3��.
<�~�7v=��FhcՃ�������55�vF�EV��_���aAs̄8��:cfRƽ�3bg"�&�
���D+N��.�q���M"eܚ9�:��-��3)&f9
�Km^էa_��B��a���J�K֘��a�8�]�����.��Z۽�/��V���X��v%#�!>���a��P~�s[g�x�I�b����1��	db��b��+a4�f�#���	�F���gD]���I���E��F@��
�^�1-�&t���6g���p~��
�Mo9|H}���N��
:T��Р��Q�@۶��I
6|�L�&l�ϝz(��ROPN�&4b����r<{��Z�OXݽ�{um}������־���'C��d�5�FW3��y�A��DiQhbrS�F�7f#�(��{Q�H�K)#��j���a��]f��	e�4X)�Ő�ni��l��I���&��q����"l"b<�2Vރ��P��hj�l��1N�&�h�U���NqU�7�����k�I}���pӆ&@���Z
h�t����kk=���<�Abl���G��4�)0�j���4�ܼ�DŽ1s�`�|%�N}h�1&��1�A��ܨ�!r���d�	^8Бhh ��邩ڄ��&_c���K%L�
A�w���3���M�͝�7"�&����,e��o6E�#t2�wVڡp���hg �j�.�TBk�e37hx������:�z@$�Y;����>_�ǝ�2TVO9h��&��j�x����	a��ET�L}댩0Q�B��s�U�`ҁ��i��f:x�С1�>,}��N}
J

aC��i3�g
%��E�� ZP�9`�Ϩ<C��K�M#'j���tM;�n�9��mHմO�;Qu�L�(v����v�_E����/�<xpmm}}����z����ReW5i��p���Ux��W��7C��ﻃ�QƠ�d�����̰��wK�HL*�:k�,�dm�7H���w!�2�Q��A
2�2.��͐FD�⁍�ez���q͌�u�}���a�"�&�'�Fg��ߪ׺�M�P�M猓G�p4�[GsT�ќ����T�%��S�T�Gz����7-?}��w�|��[o�x
��+��UOTqW`�����{I�f��P1�����3�kkLҕ,f�Rz@�iD�����숷a�5h��j�������g��Q7���)F��`\E���o0�7��;f9C� �N�QǸ�&�g(&hZ�H��14m�n14����N��?(3�<8�4��$j�w$8&5R�kx���1�*J���)��D�@Y٤C
g�*>֭ǟPz3^�$f�:cXbB�����J�%���PW�*z�~��S}���@ ����ti�ԋ�-B1t�O�@Y��~l�?c��0flfƉ�Z'g�')�q�1��y�&{�=�m_*��&,�w|Mt��;7E��9����i�r�$�(�N�l�V�dֵ���gff�xꩧ��)AS�)YfGv��jK�KE��&i�C����Py�."�n��TĮ�r(,�*Q��D'����k�Ҫ�f�G���n4�KӃ߯�����ol��[����fFf�jaN
����!Lo�SM�

�6a�4��1��s����ƿ_Ϻ��l�qՆ

��h�	hN����x�}���|ʋ���3dj�3����h5U}��+K��0�JSp48�P剚��T��
8��DC���XD�{_5�t
qS�X�V�tw3�]�����t�Ț��̨�T�tJ ��#RF�Q_⠋1�A�*�M�1&Y�Q��1s
1s�{5/���5�Om�2�;N�r�aGs8
��hN?Q���_6���MN%$$hB�&m^XiC��\ĩ'<,�‡33o���Lmvv��j�RY���K�/�D�?���!�
	g�& ��f�861�c�*_#�HF(���Ĭ/�R���9UV�s��O������,��6�ab���gz,ft\�ȰR^X�4U�����.ڹ-'�e<�'��[���$��L4
�d,g�����LsC�)GC�tNo{Ԏ����3h��vڿ���b<�AOe����{I�M�$�{����{�o�՗濮�L�o���@aZ�`*Q*�`B���J_��f'' 
��i	�ٗ�f.?���ѕ2�Q��2h�bƈ@9��@~����M�:�M���	f0(�����q�D^5��k�s��3~�@Q?C;sJ(C����YJ��S�дI44�zt4.hNhD(u��n&����M�q�.U���;	"Ch8�I�yg��ݷoem��w�|筕�_�UJ33�\<VY�(e�)����O����S�����&49T0�j����s�z�{���2FEΠ��D�]&�xY9���`���Y2���F��H���I�f�8���_��h#i��VN�I��2.fЭ�"ft�6��%
��>ʀ3-2�j�/����DQ������hș���	�ѕ<���.(��r|t��q�7���i0:fЙ�)<���w�\���w^���熞���SC@MQ1S�L	T�d��'���$�O�i��`��K�4� ]4��
 P"��A�+^@�L�5b��ͿE0ӡb̠l�	��[�"d(��
����M3�]̐3n�)79Y`rƒ&�P~�Ō�h<��	��se�+B�u4���t��m�R�������s{�ph9^~o>��ܫ�G��r:ahn7;�F�������/�������<���jۅb�Q�(Y7�JLՠ�$�h2
53�K/�Ðf`};����JҾLɠ�1F�axeM�ٺ�8�	�H�~t4�G&P&�����`"o�Ti�334���B��!d(R����s�&����~��4�@Ӳ�͋
�{!:�m�ڲ���qC'8�Ͷs�m�J����x����w�9�x5��W�ws�69��V+��p��l!+�y�zg�g�	iޚ�駗W>-eEx�?Qih`�ycj�����ј�ཆ2�3u73 m;M�ː3�gb��9mC'��c(f�ij��(gлc�~�h����@�b�X�pew$��Q��$L�w�[k2݊Q1�<������9��#�;�[oՓ14��N��'��D��t�f��,U�ٿ?���_ă�A<��wO�r{�V�=05Q��S�l�	L�HM��TC+�}���o��8���B�i}�.��K��1VҳSc�
�Z&�>�]_�8#���T��q4r�Qe�ؔ�id%�Q��c���\��3�4gI��[�����d�iB2��+<͖ԥ%r�cTB2�a�4�w��
|��Ţ��&�3:ܺ6�����-'~�)�v0�Q;-��hhi�4�4�[����[m^��_<;?�K�r��`��}c.������`08�H$��4�F洢F�h����Ž�W�NHU��"
W������&*ܯ������R�\�nF9���tݨߊ�!	`&$���F�8 CJIFu�K�(i?m���4��F�a
�>�f���Of2~�^���M��ʴL�҄)��3�aY���i�6Õα�v��h��q�N���u�T
 1l3x~e�ܞ\\�5�5��Ad2g���/�x�@�����3�(�:j,~��3��(4�3�h)=q�426�wIH��%��:Ō��"j�������!s���"�17W1c#���QЈ#�s�d!C�a&o5�4]c�1LXU]h�\Ȱ��fg�RS��6IK��
ܺ�$���*zSp'v�il����m�1��	rөMֳs�K.7��i�q\7>>����1�yPf�I�)�a޹Xv�)SL�X�[@�F�j��Q�X�w2un=p�u7�t�b��k(��hЯixH��~CNF[KYw�T:3�n�4acU��b4fA7��bB�\ٔ1�:l/T��fm7l"e"�ڙ��i�t�{^��i��iq�R׎�i�\K�;�D�����@�Rw��|n�z��(L����|��_���s_���?S ͸ˍ���aΨ%jDZ�2�IO�a��)vF}QS�!*Z�\q8)g���F̐3z�Ag�C�0P��&���$��`��0vB��)�iL�,tz�V�hj�4�E�x"�N�n�B�,1�e�8	`����S��a��M[;�O�����J'C�{�b���Hȩ�`B��v��("�n���$���l3f|3���lٱ��nn��MBjܸ`���;�F��Y����y��)��~޵��3鏟�}����;�「�3�I���z�����f���ޏ�އ+E�Ү�z�k��|=�
;���o�j6t��W�I�>j��7��E��b�S����Q�un���t0sݭ��E����Hu��o���f;R%X�8��08%�hG�
��Xm,�Hc��aj��	d!\�XG�
/}�5IH�1�4�
2�Y	i��)c��CF�=����7]I홣��W�T24�
4���[���q�9U[�����`��g-�j򨙯7�x�=胕��a����P=��ԋn�YL�.��|�}�5�_.�"�s֗�cY4��x�dgy�����奥E��-�̋�@�k�y�W���g���hi������ jJV&Ø�N@����T:Ur�3��djJRGxb4����CG��}�J^�X�GZ1���lM����Ѥ�� f�՟U���5��љ
��5z�
�5���?���`_;�&����K�X����.v^������W��lt���z�k�i ��#�d�t����&8C3��l�V��j,���̌�̠U�=��4��K�46W����`F��q��f��H7����fFv�RZRM'/�L��kNf01��R�F���R�q2q�ʔ���R����3L3L���1�4�����]Vf];ߠ��ې1��r�i�&�j'�"j�mY��fkk���vg�Ӄ�)�f��T�nf��2ʊ����{��;-/$���\�����b?�b�o8�@����y���@ ��i.��^��P�Рd:�FP洽�Q}4��΍��23��AH����D�$:�h��)��8)QF��8s&*�1gfm�3����am�T�;���N��m帺=���?�~�3�NT��6US7X�ft�w!Q��(�]Ф�[km���́�?j�����7���mgz�vEWxs	�%��9���!i�g��@�%x��~���f�B�������4FL���4��N�N�8�2����|�2���e�>i.���[~��&��k�Y�N524��0�br��x��c�!��d232�����)�OR�A�OP��h���r��㽥i���ҩ��OZ��M4v�w���4�֢�}x��2����Gd�|���aY���Կ\\���@P衻�@��ŗ�̄���$8���nUPW������!d.ƔH�ag&O"dF|�D��q�8-x�.v���$�&�7K`P��0.̺���,w3
����\2�`@�4cB��=��Lڜ	�l���n�d�����3�>��f��o�P4 M8��Asy�47�V�l瓕��1�E��@�O�l��2��>eНUG�6٬�hT�?�������p�u���VagX4����� �fz"b�����3!.��zL�M����<i;�agFF�dA�D0�����O+H�(A
aCc�ǘ�����y��,fl�N��P���_��a�aV�4e������F`2����(1$O�	��f�����H������9%m��\N�@�V���tv3
�뚵i4��`�	�f֥����7M����ilA�\��U3�.�i敠g(\Z�ۂ�C�K8o �f�+)��3 
E�� �U�is��c�)rf�I���9-m��Ld��y�5���I��f��	��=���ـ�*�1��A!#;3�VM�C�Q��N����<dt�iء��E6�S�4'@��hw�j'���]����ٕnt�
h�u�wp�A���@��BM�;p�.
�����+>��̒���WWg����
���4(�f��y�2���n�3�`j��,L���$�4���Ā3����s"�<�I��01�4�6�)Yo�ϣ��A�%$LF�
 c
�@CG#̸��i\�T�s��F�FB�Sϟo"e��3|@�;4�$A&�h2����~�Is�q����m�ԿD�(��u�O��z��^o����l�ԛh]��&j�����*>_}�5|hRtA��U�U4A@��O#�D1	e�b{�"�Q��DF	G���o"N�¯b|�U�A+�Z���L�hR@!�-�&J���M�22�K?��ɝ��q�q�q�g�p]`ߟ�^@S%��444��t�{PK�T��\�����ԪY�l�fPcpA����O�u6d����W���k~�ďz�^�l�l�L5[���l�꫱j"e��n�ϙ�ۃ�����-1��:e���&(#?cA؄�����Q�Z:&I"LHᑩ�NJ<
"���~b����&��r&�x2�rf̆��<��9��0���w����K�@�+�|��3�篡��C�����3 ك�K���ci�����L\Y��szc��]�F��������cG-׻�m�5m}�-��гi�5iw��bgg�1[q*���}���i^����#
N��� k�i�,e�,]d�QLR���bF�D
tܱ�0M�w7�sV���{/Y|�25������F�6Y	����`f��;Uc��(C̐0����SfD������!J�^�hb/�lh��N��������9�4�$��{�s���
|++߬
Ss�=���~�n��]���馵RG˸����N�� M�laC�e�� <�?��1CԀ26�g,O]ltQ%Ic�`|��!g��E�W�5p��+���&��=a�#��k
��D���F��e�1zUN�p2�.0Ff�?�
� �5ma&R�	�q�b� Wk_�����q�y&{iD��O�
�$V>�dw�t�z;�ٺR��`-�E�����QH��P^i>��vX�j~��1X~2[CO�������X��[�zv*��8 rA�`DȘ��v�Ii$4hD��F�:�c�B���ߡ�?��j�+<�'��Q�=5����i�M��_���Pʈ3e7s���0I�K���$'�5mD��@H�2m`�b��a�f����ז{��~0%�$�)�ﴳǺ�Pb��R���#08�V�)�[�Fj�uz��l����,/��]C�,/��,5/�DS*"F���!g�ĥ�a���
��e�Az�XP��#����AC��m�G�Y�g�;��i�\u9m
^Œ�G8=e�apX�0A��M
iē����M���3��3U�&�y�`u��2<���J-M��o�g+OV��KSB�Mq�����55�#X�T�5\��rڍ���zw��lԭ����|qy���egx��WH-4]1C�D�LYP3��gv5�pf\�fR��=��"o���j$PB�[~��%�Ԝ�P�� �i/9	3�R���VU����#Q���0Ĩj�+�)fH�b��c�Gd�iw
;)oi`R�O�Ms��{7��#G8�Vʹ8���Z#�@��3�+֣)��4Xr��;�z��j��ڶ����K��sp5�<������c�Ljg8������g4�A��p3�¬"��vz�b&��H��`V�I8�I�2�Ԝ�1\0�ڌ7{���X�3��0�2~b���0k��I������q�C�4Rn�W,ig0#
���vh�"�����l���Nl	���0BҪ����hyX���i�ۭ�6�$4@�%�R�b{��8O���^Y�^Y���ЙR�2�39���C�fJ�Ai"4,�����bzҠ��]7�����hQc�7B
D���X��h�ߦ���P�`���U��6�n��N��od����2q0Gܟw�.k�e<g�F8C1�-��3CC��r�&��-�DK�$�&ٸ\�y����|ߦޝ�;��|s�	��e���4]ϧ|�f
�b�!a�&1sp�\�A�D�`�1�g��x� b[���I�d��!i�j�p�4iK��jα!k��G�G),�Q��Y���Hc��$`��m��������ugBoQjͰf���d)����O�=M�Y��$P#���gt�),scP������kM��ԋ�����Y;������'���W3A��eHeʤ��tj�^F��0��I�X����#\#n�H
o 
<�+�N��[��Sd����P��A)�h@�!�I^���h�˴1�|��0	3����hr�RFn&���i೔H�[��AyG�4�6
=M��{�1��ӽ1�h��r���O�C��S}^�X�-���b��L$M�E��.��"���1��b�l3����~Bks��N�[���6yҜ̦0h�(���endo����L��m��W��I���慔��t�	)�XV���ψ.�����H&ӑ&_<�<iP=!��=�6j���>k9��)��L�=��w�{ `=��g3F�L�$�\��	tiο�P8�>)��X#xD�@y��ӄ��5�#��MKW�\O�J<MJQ*��"֐7Y�F]�G��P�T�L�,���cb��y�*�FV��PVM5�2^j� ����r�wJIS�iN`K��M5
[5Ӄ0��i��ӭ����f��m���t�e7K�ĢIU��b�(�fYG��+��^9�rh����F�B����S��@�sB��G
�<d��g0E4f@����ʜU�&���6��&-5��q��w\��Pf��Q��_��cء�_)�i/S<%�I�Ӕo+��ӄ35l��b����Wq�3w?p�33�3�LH��$�3S�2��"��]�#"fl$�g����>Ix���B\���yˊ>�)I���x�dB>G���fH�91��LL̂tgt3'�br��W`�!ò)Y�d��ac�g������
�>��ٓ�ɓF�AC��QCҔYF��T��n����k<��{�NwԀ!�3�l�$ڙKjlm��	�!s�Eld������A��A�B�"J[lX<��Sr��_}����ɚ�z:��$/�7�����Zd��d
`	x�kNfʔ�fȗ�Qs�a�3g8�`x�@drF�'���a��"ߥ�Xy�{��Un��ю����ת)\x0���!�����D�3��̹�3e	2Hg�26��4�� �0�!�'�����1Gf��H�j���Z0$�nx��0���Xs��ABv���eҳ"
!�(�{���3٪I&��
c���:Dr����q����a-sG�36��&jn���=�ȵ2��2�L��$�QP�
���=�F�ae�A�%�#4�Hr���)��@xX&}( 	��Y�S(�᳢z:��d�Q]
#�hہ
1E�&TY�3��+� ��f�iR��ڙ�5Õ&f��3JW7�#b|�������[��d�w"��(�F��CP0����l4$�%j|����F�i|��S�8[���:�D0}���P̨����������ʠ��'=+Z��!׹-�Լk�#Z5�]?�N�<y&)�bB�0���%ℤ	y��2�C�8a�G�Æ��S�J5�ABZ�ԋ��R���P��܉fM��'��)Ҩ��53�:e��
Ì-hg/�e��i	3t3��cǫ�l�%Affb?��Kti����
͠��"��"�v�\=�|J����#�J��z��s�>��������?����� ���Z�'-f�eU˟$�`��p΄�	fb����T=�G2?㒥�!�h�_P9Eoz4�B�VM���1o�q�7��,�P���
f,r�DF�{�يΌF�����I�����WO"��#��'�I�jZW�6`���燙�?{�䉞5G`�!^��$��2����2#�F�"��D��Ԟ��F��IX��N�5r6Y�MQ3D���0c\���3��0�
*f�aF��[g0�i�������L�d�a�c�+6��4*���_yu5͉nC��O�
5O�
�b��1� �f1ne0I�&J�Ӂ��~I�8�b�P��[i�87�SS?-�k�li֓#F��_]vf+33��e��d�7f�03��=f��ǰ�f���:�;,�t*�Y��@Z��t�;��ϝ7ުy.���_��D���9�1�ܜA^>��2�9�5�0�!SҤ�,
MMȗ�Z�H����T�D���S��x�b��i�&�A� l23�)0��R�&R�G
�o{2�ڪ�1��m�h�̐(�]m��K3�h�Y��5s5j�'-a��;��F��y����>�4O8���Q�3!����䨔�0� ędg�����Иn��ߔT=�-5��bSM&ͼA�B��pc�n�򲕙6	-)�/X,����@��A8�bg���;�1�{3ko�(]�Q��W�̘���Y���A꒦�Om�$���䮰��_㵖�B?������0CO��/C�2�W�8(LH����08gpq�ge�t[�1F�46���1KW"�k��|s	6O�c}A��/X��{1�bB0�\���`�=`���^yt��=�v�1p���b�����fw�x��M±$����(?��C	B�`c��?�U���o�g<7D
@�e|F��eheP90�	�998!f�p3��0k�Ѡ�&��|5����A
2�M
F�1'�t�w�N���f&�q�!�8_0Q��0'�2l�dz��A͙U�������h��ij�&�O���C�]���<(�@=橄��̙�n)���z3$�0���#fBT`f@f�0I1��uoR�ت��4�i�:������h���2u�E�Cax�bf�'04�f0�ʌڙ��B"Sf�=G�CM&Ϋ���'�;)�f��n��
SC�ܢF�+�NM�U��>�(����l`��+��B�z�~�1���a!̌Q�"d�f N�ג��:ºb_&��]�D�4ϝi�f#�Xc���Ȥ���h9;��L�3�dݝ'5��MG����s������)�'�W�Q%GS<M�4y�I���~ғ
�o�>G굖���/�\�2�8��`�/�����ψ2j��%δ"b0�#w�.k�zhT=EOXʨ�$��g9/�kcwNj(�n��h��#Ęhe�2�Ք��	�݌G�%Ȉ3�1�j�0����Ӊ�;�G�����bI�'�Al5��YK顣&���2�jp*a}̜^��H�	5�b���L��p�y�D���H1ì��Ȕ钆�Q#��Ӽ�x]O�S�Tm
�
����6H���a�l�`B]�`��ep�J^�)3'aZ;S9�~�L9<�����7���=��}�Y�49����u=M�'��t���D[CO����#K����������w�G��K�9#���X���\��� �m�4�l���dH�-Θ��j���չ�|��5�5��xn!1��0��}iH����*����q�Xl�˄z�f���Iey�^�0�z�aj�������������������p5�֐5�:�j~����Ⱥ�f5�,"��ao&(�h8��)c*f�Y���1+�1	�6uL�<M�����`H���B4�F�C�\xOɾ�<DaF���qT2	3�™���0�!���ە�u��y�t��#�`5jԬD�|�Q���Q#�<�%�]5k2jԪ�/4�BקW�@�i0�)c����L6���g@!	1��lb�μ�����]o?�
���eh*r
fH{�#�jjtߓ��@V�8d����;���;~�
̐1ND������VkC5S`�52�h`��;r3
��L���9�{���[�Q�'M�j��
5ni5��v�0O%t�H��5� =\�9��񡖳��g2��/�μL
I��QS��i�Y��Ӝ��~�{��
6�Ÿ�MY�1j͐0�����A�z33Y�L=�
ykF��3bf��v��i�����yKS=
`�O�jҡ�dj����vŻߪ���?8��C�5�Q\�3fj`e���LL1Ff��I�:ش‰�a�hd֋�2�LUu4�x�׹��F&ME�v־ ,
l�_Sdv&L�X�u,���/�l#�2,�*f8���!\��Fx�fCz���q2��oG
��(�������S5�
�L�w�6�US�>��V��F�L��Aڻ&3��C��9e�
Eδ~�l�5Af�O����
k��F@��,Z5MAM�5��)S|���_SS1�3�3233z�8Q#�Z�Qi�"^Rk��4�y�	-#fz`��LQA���:�����5DM:�[[5>���3�|p�)�x5�n�	s~�j�m#92����i(�׍A%�4�(*���2fz��55k�����hX�-�U�^N��1 ���^�[4�o��i�L~w�QP�a���P���K��8O��+��&�ֹI�~���kY���.��|��AQt7�~z�+܌8#ظĚ,xN�����	V��j�����qA09��+��� ��8�Xc*�OZ~Z�j(����J�Gx�� �w�`��9#��CM��|`�h_�[g�I�K~7���i��)9�ij�TICq�5P��j��a��4O��
Q�>e�t��>��n�� �s�^�
�4��M�1��344��Yfpf��YWK-�t�I-��n(�HӅM��q8y�@�-
kP3)3�\M�Z1�����ʘ2ڝ�{���W5m;#��A>\0�о��A��p��tQCs�%�6kx:���llz��g�B"d7���t�!� T0e�`"b�F�MA�
��Iٝ8��>��QS���Q=1�a����OM�v� C��0K�e��PYj�{���faZ���X6m�`&ܵ����T3����V��{�j�aА&�>H�^DO҄~��ߜq�����E�ܜf.�2�N,�8fB��f�3��h]،��̝�R?a�Qӯ���	��2��T2ŏoSl�,a�'ʝ0���ԓ�Iz�)+��K��Șޡ�le����i��}�v\�@
UI�C
��j�囹aP3��	s
� 8��y�K�������-4	3�D�(�!�(��-���I��v�Ig�\A���+�H�'�-���-�e���D�d�2a�s�L��1���T�ԃ���t��$mZX��&�j*i(4c�8#�DoA� 	��]KQ&tcq�ႝ�1#���	iA�,��e@F�f�ljՒD7�K�\*m�75�4��&�#�S�55�ZF�c�h�����g�2�9�"Q�&�6N�����
�٠/A*d�M��@�j �Ma�EMz��!��&�	�׳�ݳó3�=��{�5bt�D8e����2L*aF``e�`�eİ�f���Y�5��tL�D�p�^���=J�"cʟ�w�&�uv��ʘ+��]���afT:�V�Ȳ����;��]3hզ�������;I�M�7���]\��jpo��y�)	2�A�KI��rvkfZ�nf8eͤ���em�H��`h��jj�5�68��Eba��3��W*e�KTM��=O�������
#��ˑ�ė{���;�'b 3,($�!�V�E��x�\9r��ry���r؟�j��G��ӧ>9�v���j��1_#4�l��o�_oo��gi��˜�ڏ]i�I���\�!��h�B�+���>ԅ���䓱�H�f[���� s'�1����w� B��ы��s�U&�:�|�3��£e�(��jR����ީG��5A�Ew��l �̗���h��hЂ���8�+��v�A'c�_6J,
a�,i�?�x仅{�!��Q�&d��Ċ8}�h��f�y4“3��g}��NMrPm�f��$�UO�7�q��*��w25��q��(F �
��v[����>� �`�QYS�n��4�F�)����Ȥ��rGc[ŦSB��ϟ��)�ѳ5�h{W�^fK�H�27ü]�f�hjrf�ng��0�(�8���=75~�2g�Y����A�i��j��h���0�K8��J����
V�t�J�e�G���%��Y�s\�4k��m�3�BK�FM��ٲQ�H
yn��oKh��Q1=�E�)���I�In�-��[�g��WIx�;� �Tj67x�7�@�q-�a%����P��:��;�������)�2�"-f��5�e��a��^_�k�
��Ӹ�i3������8e�qB��S|[���T�o�zؙ2�0�Μx���I܌ �z�1[zJ:�~�I
K��tԐ5�J�@�\���E�Vb�f�~9�2A���Y�:��N�; *b��xI�E��KA�@�`>�^{j<USi�5Q���}��%cD���,�{3��L�0�^����Cbg�R��&��=�-}jҤp���j�;�
Z�XDM�k��@�%��8QW��
3��l�G�3/����(�����9�L����ёK�=��=+�юe�i�<l�e{�F1E	�d��22f^F����	�o�y�O�t\�������$�����~a�H��3/5i2��S&��&�&^�'�ћ>!�Ӹ�qָ���k\@{P&$�@�)�x��)�hkM{B��Ҡ�Y1���g(Ǽ��h��_�c	B�gw5T�FCM��5��%1	3�zehdfZ#�1q3&1fr���^��ќ���+�5w����܍�ѤIb"�j�l����ɽys��X��K�H�<=�sֺ����`M�ƽ
����g�D
1s@P��5��s�d��1Ԍ��Pfj�Ҧ���M�I�`p݅4�(<��t�(�f�9ϕ�Q]=iJT�j�r�S�߿�~��O%��A3_cb5F�w��jU��_��w�����Δh0��V��D��4��L
���7�F��� 2�`8�2|�RF�f����������g�����4����{��Mj�5�J3Ġ	6z��*jΫ�~���*fe6�f�]3
_f���>F$]יDY�d��9SG��11������1.Q����f��iT)#-g�#�;;e���2^e�f�������+(s}�@Fb%hi���zQ����h�I�A���}>2G�?��J`S��:ӶFiːKo}���Tlh)�	M�7�❳;�O�φ��O���Q�w5�z��&�F��1�7�(S�8�β��j�	̸��d�I���<�s5�Jό9zZ�� c"gLb��KN��`�oN���|���uk�L�V}���f�-HCؼf����R��eR��px��ˮ��=�a㓨��Ba�|I�I1#G��F3��̸Uf(��*��GM��|B�;�48SH�j/�HbF"m��r��&O���øs4��UcG-�/Z�8�b�#&dr�hw^���W����;r�C�������T�j�k�#WM��&���J�1�F��b�Y�I�̽s3�]~�iAo����O[&Kވm.���R7�ȭ��6����6�il�J?M'�R�LM�jC��?�)C3��5f�2�f4���M��4Mm�S	�l���@X�5-h�f.��7���X�v���L�/CBL̟:��X�I%��]�dJ#m���K�g�Z�)�y�b�6^��b��&M�y�:�Lw���Z�n�Jx)"�l��A��E�z�^�W�k�}�8 9t�G)#�X�w5~�����gg���5K$�,�θ��z6�1M�&r��Y�rԈ�6���~���}��3��3������2�P^��'P>�ֺ��3���B��Ʊ��Z���w�������o̎��*�u$�t���N�MK����w�0:��q6���D��46�
�-M�S��\M��P.h���Ψ�J3Ԧti6;3	3qj�Aa�	����<J�M�z:+LhE��2��
�Ҟ����eDww�
��دNe�W��7�M9�'3b��`f��Gִ����V���}
���;�cj�1Ӝ�>Y7e�~�ε4�,͙���N7W�-�A#fB�:iEJ���c���I��ʓ�J��†?[�I �,1�Q��q�Q�i(�Խ��M�5�3a�������)�+͗Ds���O�"������S�%�w���gL�a8�'7m_3t~��1M�H�j���m�>�Z���:R{��ܿ$�13!�t���=��G�cZ�Aq�ػ�Q�5�fm^4��<�������<�C��4SV,��;�*#?	zlK����6�[�L�3$��1�a>�#[��5w�U����8FO��C<C.����1���`[����9U�{r�J�h��a�tۆa :�@�����X�FPq������b�k_N�,��"�23���"(3��p*��D<x֢N
�b�JCp4QU\����H�L�#Mk��v�%��U���#PjkDw�l ;��Q��$v�������u�����̾�����Y'���&N&�SB��es�wJ�����yR��/�]���F�4Y$2��d�Aj\e�@�	�.K�lBik(A�&�=9�\gF�o�mh��
� ���@o����3���j_�c��`i��Pex,��F
�M�
Q0�U��͌[�^�~1�y74�.�¢5�Sy>!}g�C��b�a.S��M允�����.�O�r���ޢ�y
ݥ�u5�g�t*D���M�0ga���hrF�5�8Q{c|�Ơ��Z����za��H,J
C�&8�|K�D&Q��~��ֻ��I+.l�1�z�J��L�ϛ|uИ��@j&��x�i=���&�Lnk�7�|M'�P��[�i�IfbV�+J2�OÆ�PEX/�8�����r��1��ѯM6b���!�}�+��QR�P�櫝	q��+^�?M�A�ZCG�A���%�+��Q%����u.�9��D��k���5%4���\붖��!��g�oSU�y��%�|,���s��Zf���fAybX��/������8��k�z����Z��*���}#�
��r�J��l�:���0T�Z�`3fh��g|,r/����nwC�$�1JF�6*L*8���T~�+�w��/14jkdh��ΰ�',�ړPC�B6���x<����	���$������1^cr��/�U�R��ѷ������P��P���4/F�T�ب�O�B����L���
-g�PTm�W������f�,M�J�v3�->�Q�#���V&K�
�.562����o-.k�fx�]o��4�E�#+l�Xʄ�� �4}�jq���BD��6z�闝�yd��f�s/ќ�C�qۡ��C���b�Y`{�jvo�4�6����ܛ�4�a[��M�r�ј�8�ħ��Ҁ��Ti���]ĭ��&Ds"&��j
�yl�#�h�ڮjh,x��F٧7���^�2\�PZl��c�ӌ�����;���q�	��e��݉�Ю_O
nހI[��I4U�㵗X��)�b#��N���5N]({�L�6L�n�����	��5Pzxތ�{�c�G���rj��m�{�
�O��a�i�����a��k�YB�7�mނ%�Q���c
�O��3	�|Jv�6�f���c�\�K��,]}6v��c�}�~����|~�rn�i��	�/ĉPש2r�Ѻ�8_�_aR���r0�O����O�0u6��9Ak\�Pm�
��i.���@%b ��Z(�!NC���}�Z���:7;ۤьD(aT�(c�um��r����?Jۺ�q~��BkW��,
O:����&Ȧ�>�4������k�1�=+����s�U���"%�e�
��E�,`��_|꼂-�=�p��tF��W[J�ު28��7�r�����=�ٴr�������f|�9bfHR�D>n�(i��M�Ys��];�mf�Oj�F�-hi8%��^�+��D�U �m+�n�N��i�^��0���g��2�gʣ��K�QΦ��6����q-c��w>��|�5�s�`>�-�t��:��2��x��g9��4~��������dW�(������fΣ�џV&����bֆ�dD] OQ�]䮆1v�+I�$,�iJ2aD����ѸH��ʩ|y+�'�cgQE��IT#8:�K'^u��y�27�͆ƾ�}�#�����`{"���i�
L�Ly�4o�W��u����,�li�dHi&C�
���d�w��&C���~<�'T������+�����|hi����c041X�z������9<w���U�]0�W���J��I-��x9q7�,	P
!�ڃA�_�#T���*��΀b`IEND�B`�assets/images/library-connect/left-2.png000064400000276771151327220410014226 0ustar00�PNG


IHDRl��%$yPLTE=ER���DLY@��03;Zfw69AK��`kz���36=Yds~��N��bkwT��NYg14:<@GV��������]�����ehl��������Ja����dgoY��]��|��X\ei�����ruw/37/27Qd���TYaV[cZi����Uf~Te}SW`sssTW^RV^_��XhVgrrr���TX_UX`]l�suxu��X[cssrg�@@DAAEq��aeltvyilq_bhCCG &*P_s|||���\\[mmm���bv�55788<�����%��//3������+��3��������K{�������y�����dd`LLO.��wuo���^cd�����!�����!#)78=  !%&-004:;A+*0449MMS�����JJP* "���!FFL$).CCH??D��� �퍍�u�����~�����]Q-.C%9RSU���9?+05 4)$5L���f[5VX[X^b2?&/,CA5ors���hkm%_ei z�eeb���MJ7#>Tty|_^[���D3&SG&vjIDYlqd;t�ZS9���.G]������}rTRLD��o�&:H������]�Kat6BSX58Ú�h�_TJ0��7QfѮ�ʢ�Xj|�ſoYR��s������~٬ukc��xA�������ǀwp�thCQ]׺�R����e?Hi���ʹ��ONx<?�a]���e[���q����i�������/������b��B��1q����~�Գ��AS���U)϶��ܾ/"f�5�z��*b���`|����N�:��UnaK�t�j[�ltRNS		
	 &)3%#&-,=J$Yb6Y8-2MmPlDH=b67wW`TA>?0ydTGMlFUDgnuxfEv{L����������ف�cʬ�w��[ד��w����c�}�z<IDATx����n�0��z�"�Ք

!m�9i�vl/�2�l����/)їoM�A��%nB���H)=yrT U%�4�{��ң�UgU����NTV��_9rq����6�],s}��-�C.�r���	I�d�xy�gS)���r��8_�RO7k^]�ME>vfÒS~�\?�yn^��6���>�J��Qc�Ykg{��r�����䨒�Tp}�_=*n����&U�d�F�M��ǝM�Łk�9G��"O3o��ҭ��I� �V��
\���d�'K˛��5d���
�
\T��MN-R��O�wq���Ƨ��rZȌ�d�2��|�3��!g�;�p�C�*Q#m�M�n�9���*⸳9���߆���~8�{�V����ǩ���l��	*~�;���a
��,��+u��5z�9���I�
��8���I��LH}x�%�����i�%C���!��	L�\��}\����;^�E�	YDğj� �Z�o��r&�&����Ԧ�y	<�I�i�p���N���vN��fC��pUM�Uz�2�2Oe�
�#� �C؁s6�7����"MѨͽ��P���B���� B8%�[mR��G\xJo�D��rpD��$��҉�2�U����S�f��rD��<'3�ń#c�ԟ,��v
'�p��ǏoÎl2Nmꘐn�
�Ε�IdM^]Lȁ��=d9��K�2.�b��������}Ά�bB����^y�w4+3���*.#2�F�<�%w;���r�rp��5M�EbJ�Ӗ�J\F��p<w8�B��cܵ�&���$*;�H�"An��=Q@����"�6�|q�X�M�����AD�5 �ݛ�b~s$���V|R�ƧR�|��]��k1㭊�1��Kѭ��G4��)�)āކ���XXk���h����c
�(.!��KӢ7h	�c��GȻ���T0m�Lff��tS��)Qr�I�Bl�B>�bB�u6=�� ��'|i&�~�1s���e�+)��o�!dwLe:�j��V����s@d,/Z�~�[�f���|#�Bހ�L��i�τ*̋)~=սg����{kC�!d/�6�rg�m���g0�I[$��a�:�w��b$^enʍI�%~k��\���/u t��4����̾�
�FzB^�>�{�:v�34��S���zU��w��m�����n����!;HX,&�}�ܻ��͢�����@[05����������⩵����F.TBvp60u��S?�J�rET����������鿢���6�<���j�	���P�?{��4DQK�������o���2�L@`���mS��?�T�\Oojix��3=^�$�Z=�Y�����X�N��o�j
�OL�|��vy^��ۑA<�[���liS��K�i�…�8���T9��T���{x�F���8/��2�uR�*�*�-���5,lX�	�K�l�eM�W�M�/�>�W�j�=��y�<�j.����T�
Gm'
k�l�s)K���F�3���ލ�c�پ��e�{
s'�&rc����#r��Wō<SUX���T!����N(��D��g�8��-�ቆu���jF�>��w��j���~�x>���*8M��i2�Le���d�����q�Ӣ1߸͠U@��f�L��i�#~�v��jN��V�p,o�/�P]�:h���Ȭp�j����V�\�)�3��S�
�'E�h��l�F�u��E�p��np���x>G��7��5���0�� �!7�`.�qC��yb�&�Ŗ6~��q��_�[�p���T����H&ay>?��tܭ���5M�y���͈��n����"M\���N-�4��#��6��g�U5�/�w���
��=�6##1�藄��s(gV��f���j��N����&�-��0���o��5LM��
]�J%~5��ٴ)���ɠ�O:�#5�a�:X�DؤM��q����=C��
9��i�L䴼e-$��D�[���SU�B��5U#�M#����ayC�f8�D���K('/���V5��bً=	�s�`hª�~��3���#dLjh� N��n���b�10`̔a�
�6���iX�P1!Q6��,֜>P1�s�RȉY�:�;�C���N�c,��w�Uàlv��ӥ��������Xx,oZ�U=j	�IL�.�o�iC�ijĄ�Q��8���h��i0�܋���620�O�a�A�p�D5`�;D���3������	��:����`eds
��Q"�hI�0m}��'?��8m�_?@1=�]�A�kn0�7k�F�n��rZG՜�~�4��d1�U2TC���Tz6H�:G}#�O=�nx\8�+�q"�d�h���r�b	�p2�7�ϖP�%��f�Z�j0�����Ʉs4b���i��Jh�҈jD6
7�1/����W��Iyi�8��nY���d���nA�0�dDU��cS�6�祴�kU#|Y���&�`D�P7f���4��L��h���AH�:���)8�7�c�^Wc��@��S^4P�b�ݺIe�]�D5M���
,C�`P3�V�o&�C�iXӄԔMѩ��}�e��L9WOq	M����V7%ӱ�=N� ��F����Z�l�qM��3ʗ���ç�L�d��ol}�tR�A9��H�c�\V����)��@���a�G��S5�>�
20�_mh� �����t�T����l6�A3�J]�D�01R� %�$,%����5�������s���O����L�/��F2�a���P5��~c�����<c��ɳ��4t
Y��E�`��)m*blC�J*/��7޾q���|*"�?�f	�PC����j��XӀ[�&�Ҳ&&aK�l�5��<�3���FT�/�|~5L'��4����TLmᤶ)��4����,�;j:WԂ�ln17]a�˰G5#L���U4�^�ᾚ�E\#PHR��4ͣkD4�/>���bLCi��m�aTw�
1�)�R3OK�Ӎ߬�\3E�E���>
� �%W�(=�AHRՀu`e{6�(FD�'�ƪ�!�,���1d3F�����%ug}��ip���Ad�@$�e7�Q�c|�݁�G��7a��4H��FK�iش��p��j��3Z7�l�4�N��������'��
�@7���7��ηs}D��}ݲŐ)�Oo�ÚjF���w�����6�]B^�T��&�hd!�^ݲq3c���g0���a�i������o8U8����?���0�<Be����n�4�"%�
g~/�QMw�F��a0ii��F�,x�a��
�` �5��Fh܄\��i�̾2��3Oz���8׀����/k8R�t�@�i�{��O��Dn��=5'9v�5|���T�_�5���K���k0H��؆����c��
�>K�X�p�%vi�a�swq��⸣�[E� 
� ڈ����>�QXXX��y�d%�D0�JVɆU0n!�	DY�lD�,,RZX��ߙ��f�dv}�z?�ΝY]����sϹ����͉��vِ�$j�8;�5%,h�;m��p"���p%U��-�v,B�����#׳N4�!&��p���jݘ�����-K���Adz1G�AA��;5=�M>�0���5�3�VEM��՞�Z�eGYᴝ�a�
IT��9��*�]�4�fs�[�tr��N�P8���)
���`����67���(��lt�pcb��k�B�T��4�E�Zw�:)-�2�I���nZ��^]�f���������T��k��a6�@7�
�l
�
]�G��Z�-~q��?�ٸ�qmS{
��QM�Xu(\���1(�O���$i�DQ����F=��K��ɝ0�6�\��6�Q
�kϿ��)��t�p*U�7N���}Cϰ�
�[4�,��OA�r�%5�	�pp��ըd�Z��j:�Hr����$2Gr8J
-W4�Łݢ��*���f�<t�%�\e�M7��
9Ǹ���
�Q�q���|y��_�T�o�Ai��q
u![Ӟ�
?G��j�[iHL�7j���Bҩ
mZ@T���"g�ۦ�f��!��n\���
��F������J�[4��Hd�C�d�u"�����d�4�p��7ͦ�ٴ�R�ܺ�S%��A����(��o����%�u�G��z��9�j���ɨk���2����˯F3��n.f[�
#���gn��'{�;�bL���,sUͦ�q�Ӱ֍�&b0�N� ���1I!�T��t��ƙY����S'~���᡻����2u��Ѡ����� 	��F7jqW�ٔ�BМV�8ya�hjwv;a��͏t�85g�s��E���F�ע�"Ylh(�j�m��4��;at�a
�
�F7f>%�atcs���r3��
��T���/x�CX����1��(4-�Q�4��\v��u��A�`��N�c������j�0�	�_��O�n7K�����Kn���A���͵h0
�m\��i��ƝN�9T��ɔ�?��v�����y���8�',�p��6��E*�
sjt`4���4�U64��Ʀ�F:��44Ĩ����ꪫ.�n���Z�I�7NJk.�k0"¡o*hhS�}"�x�ϣ<����l�KK�jέR���jD5�u� 5��$�j�6*%I-�<�%VdC��;�[�K�L���WM/��n�'����1��c�n�5�6|�����ݚE��l�=����9��g�N�*hP͹|kP�i0�jd0�t
��r�&HoG)��<��ѯ�U̧�H����z�tLT�#�R�7�ݠ�N��1M�غa�o�O5�qKSM׃���=�+��tD��4,�;6Y��^5�j�#҈Ib��_y�}#�t�n���R�(q`�/�Q�m��m���Ѝ;�}�����}p
��+W������r\�@0d��IyN;A�j(��65�a�뚺��*8)a�)U��c�5�7�2%����~;�è��p��&Q��qu#��ֱt��ڝ��A}c��4tQ
NJm..us�MӞpW>~�����8�aD7�-�s��ՠ��\=c�u$)�7��WZ�W���*��M���+�XR٠�Nۆ���:H�47\�ܠ��]��6�o.��Rh����F՜Q>��̧�v)�)C���8�*hp͹�n��rYE5xL㰎�P�d=��#-BAKn��.����T�d�h���1�1��Ɖn.����U,#�F���)�����;��&ݠ��,��T,N�tYM�:R�}c�]n�&�y������^{��5M��n�a��a�vv{�&6��n�5Nl#ʹ��
F���QM�����sʰ�S?��LM��O��-wcY��F�dsHS�8�M��M��iڡS0�a�{kY�8�UM�P���{o��oD7nh�\���~q�m���(��V;g#�i�jT5ͮ��j�b7�K ��T������q�i%iCv�D��і�M^ش�m��S�X�)U�L^���'MpC�P7��\a�ƍm�k�࠹����xN�G��v�5M'��4ͪAw��(����e~Z�����opUq�yV��5ћ����|1cH�{3��I�T�(L�@7�̨Fx�S7�j�Ġ\N�`(tsE%Y�\~��F�Q2�CC=����0��-
M��FP�ֺU
8�eV��0La��Wx�\��0�E����$��ū��^$a
z-�|�(\���5��p��sk���m�mj|ö�\.�qkSk����G�R�r����S���׍�k��jP�s�PJH��2��!�r�:<<�W��a��E��\�(ݟ��&l��(�X��tK�`��
fg\� ��Z���O_���Z>j�+�<��a�؞I�m��R��a����K�=��@"<�lLN����AwT���
V0�g����4��� �����H�n�ƃ�|9�&u�-t�(���#n�sQ
�Ɖ�4�l��/<Wˣ�\�Zi
}�\^̥T7j�N���M�~>�9
hrؾ�����D����Z�֠�|A3�~8D\sp��	��ð��ܚJ
�O��޲g��CTy��Wl����ra'/,�Ivv����%�jxs%�q
�p��)��.����t
�D6�4M��}�	��fcrش�n�PN����a^�-��k��6L��Hݤ�,#�I�ǃ�b����À�P��S֣j2��QB[u
=���aǗ����&���K]��S)�0����j��Xu��$�A�WLyN���Ph����~�uՠKh��bF7L��:��gy����MWʹ�p1H���!V1(��F1b��%�i~ۥkz�8�&E�/uM2z��3Z�� �)c<T
G9_ˁ��;���>���m<�V�)ހ��i\�g�]�kݮj8p,9<�ݤ)E�B���S���U7����|�3��
ߘ�a����hrvy��,�SS�z�)��h[]���&��݄���5E�`hs%�p9Ûj��o�Dyj��R:�2x���1������?������z�A�\
@tcd#���f=���t	�e</�{�i��n������i?��dcR8Ĩ&��3�L�H��Z�Ҙ�Qݠ�+M�mJ���������J������E�W�{���E6'����
;W'hXcp��T"&ib3
B���c.�ɲ�*3�)tÆ�����tܝ3�e�X��a��F�䙡k¤�"gP�ϩjF�O$oTMc��ޔ�b�GS7��W6���'��m�\ZM�
dL{<�:��7����ݰjs�[#/�L��1����|���ܽ�D	�h9\L?o�ͨf4�^߈G��1�?�|*O�Ĩ&:R�ۖk8�5Ժ�yIR7
�My(��l�)�oj+>�(��v.��ݠ�3�<�V��p��PM��[�vO��Zw�i�}�):�R�ۨD���*+���|�����Q��K������A������OL�!QǨ��F9�.k��Ռ��F�uSt&o��b�����2���
����~ǔ�߈���"��˦�PVpk�b�b�ؤR�6����nݤqV$eq4���w�Qnr1I4^.��I���e�ۨ铯�?}��Q�fTSV�U5-3hZ8C5����:�D7��BwNՖ�ɑi$ss6�&�����/%p�=Y¦q���h�;wr5��qt��������"Ɛʲ����t1�����0
g�^γ�+�ø\V�����~���8�-.���X�E5Ѥ������I�0%3�Mep�ƹ"\�6��a��Z��wKy�]��]�
]U�9a��oX�v	��\�G�ʒ��5���#�b��m#��(z�?�Rn
�?��5?��_[��������f�5��X6[�!�\g/���B�9>t��wh�p00i��k@@�x�x���=�'8q�q5��ԩ&�r�I��B5tM��c�\ӝt��r�a�7O���~�è�I#��y������/��a��	׼m͢
���j�~M5���}#[�����b�"U\7��� �M��}y���b���Ws�[ms|n]j�.�;?l׀�cb��!�Eqo��O�����΃��x�?
�^8�|i������Uc��Yd˜���u��G-�;n����h��)��ԕ����^�5��O"�Ƒ
���>���)aS�m��5��x��n�ia�JZv��!�P5��0u���>�r`S�B�j���=M?��5F5�s��g�b���.L�h՛�N�Q��`\��u~0
�h��:�*6iVB�����e�"�1�l>Ư�N�?�x�i6�|8��)_�,�IU�
�����7eq(�	��I-vg�ŬK��l��
'�p�?(�"f�{���<���|�Y�ڭq��f��U����ad��ΥL��x�5�R�Lق���D
э��{�j��nX7l'lx8����TI�ssA(AMj�&�:��
��Kk [�_��,��62PP���oL��~`f���ޱ��ooW�.���>���OP5�TwL1],�9zUu#‘��lN�0��FS�@���p<��>~�:�\��kl��x��T+ީ4�\�0"��5�0[L�V'�OG���d���b9�Rf��k��~����|iT�j�qM�s�毀�'SL�,1W��[�28�Q
���l�R�t�qb4/_������q�U���
QM�mSdclFIA'�30��,F�	��g�n'�g���|^����S�P5クm��=	��6�㚖�A��7����U7נ9���p-E����
.Fpc�O�)�I~��CO���IT��:�ֺ]’ؽ|T�hn��;���L�B��;���3v�����o��oY�zk��FըkL\�MQ��K�;4���Y7
<���t���k38b5�l�,⛣�}	��A՜��]5M�kj��܌��&+Đe<�<9���N�~����	����x�����'.�����Z7O�QՈld��p����`�D
����Tt�h�!�9��ߠ�n4Sp%���p�?F ���p�4w����[T�Ǜi�U=Ω�����n�a�i�����(�/�8�o:��R��L�j>�L��`�mYMc�9Tk�����X7��\n/�9��AGS�T�u,��
x����G7��K�)gٸ���ZwXg�XZum
TC�\n�"�01{+���%t���no�?`�F|�|�Q��TM���
��$���مj�&t7�5�҃C�	��ᠺ�TJ`��"�3�
����?>��h�ۥנ5���{V�p�ŭ����N�4�ٛ���Ǹ���I��
���f���	7\����c�5�h����	S7�N�8������~Q1s����&$�������>o�G�O곩Y�װK�<B"d�f̋T�4��MUCL�͐wG;������&Ig��Y���޺jfİ���槏�P�ۡ����$�3��7r�5�,M]Sw��c�N�k���F�m��7��bb�߉s�9����JkݢW3��+P5��?�V'�"���j�%dۤ�t���M}[5��h<)t�b�W_~Aդ�i��kx_�?w�T
�@�`p�7�S7�x�x,ٰ�]٘Y̢�������7���	�͗|\�ԺC��	�y������F���r:��&��t�X���iKٛ���|Ļs1ej��f	�k��j\�͖�L�0��]S�NE7k3��.�]�DʞKA6M#��g��jT�O)��m�Չƺw�(@��H��|���V
�nv�oM����!B�	Ώ�{���fgB�P:{XT�H��\��h�F2��s�r���u��F����C��e�'@�F�Sz(���x��~�fנ׬���u�ٰYҩ����D�3X��O��ހ�Π�5�/���N���[;�!�A?N[z�9/�l�a
��?�Os������:�μ
;��sl�Tt#�t�TP̤���IP4�W�kj��)-����"ҩ��\��������tw�K�&�ݷf��|���h���fԟN��P͋G�瑖�0��ǻ�8�=�s=|��(G7�j�N� w��F]öݘQaX[w�p��Ư��=k�	��Q����$��pFym E�j=c��kT3}g��4��ٻ���,Cdf�Uc��t������&Ίk�܂8� q͇�jf��s��
�\+��~y1�goW߈`�e~�`/�1��T��N����6R�a\`��;		h���/pTPA(���!�l��"�X����V���R���%KNI����H�o�3��Y6��P�3��r�O����8������+?lݦ�lC��R6M	��!k�z}E��S��5G�hr�P�G*���P�gϑ�9n�v����f��6�_ �����n2y�x_��s�
G����2�iM
+P#�g��r7)fX��i�"n�\7�S��76�Z��(n�~��M:�=�����pڮFt0���\s���Ωn�LΚ8i6�$l�86����p����f'�>Sû�׺�x8�HQ�/+^��'���'o�pt$�Ii��2�o��/0�J�*w��S���5Xl�PK�Aԛ��`�j���lS#�1��Ͱ�Vfrr�j�nC�C�<=�^��p4�kl7��۪7��P`
.Mֈ����n�QK�u��4��?0
S��:x7t8��pdۍ�(]�HY
�qmRN�������0�l)�
͓`��N
��I]���Mgsd� Y��}�oQ��
T��F'����D�m������v����F�ؙ~x1��b��'�hJH�EkY
�"�@
I���k��Il���a��+$ݙ�?�uʩr-e�M�-o�c(̷��ظ�Բ=��%��0Q�E$�!A=���'#I����B����*,5�h6H�
���)����wx��f
���<m�8�S˙��D�tI	o$M�8k�d�u6"��(����M��e�4�lv8C.���:��L1/�:�����.o��n��;M"!E+�L�D����>;��Y�wL�M�paֆ�܈�*8�/LI?���S9�Z�%��q��M)j�G[墧g�V#~kS@	n�_l�<�^�@NN�-5�O��w����2��O��	���h1S-,v0h�ۇ����1t,�P
�*�)q7ygÅxQ�6)�v�9Y��.̼�w��47�6KA�_\��5mN��jR��U�ó�����ɚ��ul�.�Lg3���	��S�E��;4���qi�FxC�n��ڼ͑9�OW��P���_<.T������tҪ��\�]zjV�`	�n��6�66JD�q���\�ЉL�>aj��Z�wy}sh�'�~�t�8��G��?�� Z�S��<1�"��1pS�%���7K���p1����yٴ1TrQ2\s��!�匰��67���[�x����V����5���|�K1�:Q��#�y���܍�n8�N��PD
���ܤ��(�Y:��q[�����岝�kv��)�J���9M��E�`1��L�4I�qC������Y�;����x6_6��^^<���!;��Aܭ
5v��7�!�nT�V8X�2q�H�R�~(��8�J�@�;UL������ҫ�y!]��ͱ/o��q1/���`J��挼���u6�}�	��j�x6흟ݟ^�^�B�,@y~7�xw�V"9|��
W��.��1V8i�{K1�bo��,�/)JA��T9j���ʛ�қ�$�R(!cdp�7���lgՀ��w�D	��,�
��[�#^;'��N�BMw���`6O�*�"_���EwD}�S�&�6<�O㦰c��	�$s%17�����&O��������J	jlkc��U���{����
bE3��V3�Վ}�Y�p�+P�bH�etDd��|	�5�j��r1�Ƨ8�bA<��,q5�("r����+��5n�1�m��
B)7#�e#���j��bJ��!�&�\��u��5�fY�)�)��Qz�iXJ�C�-�"X�d��ṟ���@������`�;���{�
���	�9AU����č�L%��K]
YS��h�o�j�$sC�P��bLmp��^)5�v�:UK+iS�~��ټ��ŦES�M�Qci�n�5;z�.Kiꆵ�����`q#F�
{AĬ�ߊB �z����
�J8m
��Z.�5�kJ
5�m���9�+�X�E�N�l�u�4�"nD8Lk_���A
F����6�ÑU��yӀ��G:wԺ=��x2�x�6?�>����z�t7��7�F�n�f=q7��n�j��nH�FPåF䈹��-�����4M��'���C��v6W{G�]����FM�ѣgH݈��x9#��m���J	�˖I %�m��i���ڛ��3��٨7}��?�C�)��{*蝍�O�W�}Fk�)����Y�?Yr�F=P�LJhc[��O��t��f)�
@S�l�5�ǁ�9�G�
b)Q稭t|H�EP�
�>���L�R3a
���iP�u_�A���<�H����s��`z2�z��F] ��GD
����H��x�&^!m�AK%Q¦f҆e�)�L1���ė���*��g���#2Qc�mkԀ�~��I
�l)��.
�cw�	�P�]T���~�/�p�ԸA]
#/�#~��x�{��dT��~�}���K�gs^sy
�(}��@��R�R���Ԛ��*�M��F=�M�mԠ�,�Yb.T��3R�rG�9�7Ά�1U\�2+�y�l��!m�1�&p(��	q�:S	eR�P�����<�{t�M�P^��QW|>�r󡆠�4�"��������jz�^OpS��
T�<��Yܘ�L����S�{s�tF�w�`��F;����|sWӆ��d:�[B�F"�N��
$?4,���y_wߏ����$��E7u�@��0j����u�ͫ��껏����,
3|��n�V�4q1U\1��	o8�A �a:C%r
�N9��d#�k�֕oP�I�<z���]j���K�(��L™��">tLE�C��S7Z;�ɽ�́�A%�(x��_��'���ya<�ˁs�ꯟm}���lK=�TcM���f��`�܍���j�dMB)LNNbkܑ�Nw6xl��E�1�E�5�'_}�⦓�_����4
���C�DN�p����k87������:�V��AX����==���/?�Q�M���
Pjt��q�m�8k�O�֕����.���F�`o�|��7�
�Exc����^���a�JY�}��l�҆��rCR4M""%qC�-��ᄀ(
�hp�E*��ڳ�Q�y�E��{1�X�&j�Ϗ@z���sC����~oԓzU+�}�&o>�ة:�k�6
7�
H֬���p�5J�r��)��Q�Q����6dN��1~NU��e�Mg�*X9���!k(�R��4ۜ�*�~ b�o���T�uL�?z�Z��:<����+7��y/��)���V�x����˛�k�a��C�8��~IV��R}�Y��
��D����
3Ř++|H��HQ�p*��Oq���������A#��)�LM;��FQ��P:�jB�E�-���&��
��l�{�����o��ڑp��:������/�ګ�+�W���io֕���%�����Z�]�����?VS*�*G�dn���0�"k�#Q�Ґ5bnD	g�.q6������Q�a�4��d�kA��G���-Vԃ��(�?V�k3v�C�54䰈�@��Y-�[�56
�Z�I�6
=�C�����L�Nޝ]��<�;3�H�A><���Ա�|k�5٘�̓=8�XJ�`J�KHOw��x%�
y�2{p���������͘q��Eǒ_������oE�]��:��Z�_����a��5�X�d��!qT���Q��i��HCg�}��6x5Q,�>��̍��'u��g#�1t�ܖ��F*Q�<d
��>��-�"n�%�#��	��q����}�׾�ܾ�Z]�`�	��أ,���M+���8��G
5��4�#�*�ԍ�~��uX�"mjN7��
�M���Pc�T����L�U����FQ-��FE��n��
in�E����yކ��PE��/�T�
Y1W�4��,�}��5�R�P��Ū?�0/؁�1�#Ժ���u)�l��j�V�p�ր8D
v�����mD��M|XuV���A��&mH��\Tb�
6E�P�^'a�Fr�\J�1#Ic�Fx���n׺��`f�nZ�͇�\����[�}��;_r-���_�~�2��%{ӯP��)І�m��+����
7w��������۠5�uv�:��Wg�^���E�FK�6��
c)@F��E7dL8t9����A��o�o~�̶���}s��饒�����JS5������F�nT	���RXآ�in������B)�>�4�%m2���J��h��o6�M6qE��H�O
at�H�X�8Q$���n����V�'u�μow�7���.��h�=9V��N��t6�M�`��9D$����B
6$���$���
WV	ϔV���
#A�}Z�p�4�D��2���H�
r��z��I�����(��ME�q8�/u>�\N8�m"f�Dz)�c�j:�O��)�ʔBM����mn���i#h�JT2k8��Ręڊ�$姏�����sQq�$t�D��BK��%8�M��T<3�L�
.H���_\�p���Vr}�G��B��cY�x����j���J�mu\�6�n��<x����j��P����ܮ%G�B)Q�P��&;���옝
36��1ԢR;r6�q�>��r2�Zp��E�tp_���P��x�ҥ_��gm�v��LՔ�÷s�]+�y7�y�H8םF�a�(�C!h���R1�@��7��
\M��$�n�`���P���Nv6�9�ؐ7�
}�l���`ACO0ъ�M�.� P�zm1-jJ+�ӗ�Մ����Z�)h���r�]E�q�Gv�bFd�O�6h�#n�qHHp�[#�%]7"A��l�Dz�ʮ{�dD�9g�x�c��vXA�5"�Ͱ�nB7�q#G�m�]�S:������ى�꺿��>]Q���?���S���1)e�+v�?vH�N:tP�~;�Gq����
�7J�XA0�}7�jAL�7�a).16B��o�A��(o����L��6آ�c�ZE%�X�G36�*��"+�`��J>%jV������Ƈg*Й���z�j��ϿM�$�-�����ܢc��$dp4���H�O>�"ǘ�i�#n���n�����R��
q#��Cɛ�k�-WL�$���R7�R��e���%tk��QD��1y3<0<<��/y�C�n����G&�5/�������9�~��P���I�������+��Nj�45�'��{;{��Q2��n�������H,%��Rآ&nn���*t�qc�)��f2K�5n�8k��^��т(-;,�	h3|�I�6�)tƷҺDO���T����)�Z�^������i]���O��F�6�5����T���4�v��F��{�˂S�$#)
��Q�&���X#]~a,E�5��
6I�h�1��Ɋ���R���Z���6��g3 ���zJ�H�4���m�NTg'�?�O'�<ݺuv�Q��m8�]�����������R�O$͹�+V�ϝ#n���'���d����d�s�9I�ۈ"o�7_��u<j�';��T��Ny�7�����pW��l��A,ԥ3ܢ�Ԩ�mD��7&'����3����d�V�ب�W�I����jى��5��L�j6;B
ueWpcN�<Lo��d���9X�n�4���WQ_���ln7��L�9C����1�x~8^��p3�����bZ'�_Yk�LOOW&�}����3�Fi�m�S�];��V竾-����v�G�X�6�f�'�#�u��rkw��R"d�A�R��I�M���8�aŏ������.�IW�d�mL�Q����e���7�jK,%�I���R�n N*~	�)�H�l�VY�(V�mO�ۼf���/�Ug��a�g��r���aK�FP�\�S��M��J�ԍ𦟴�ρ7�ߨu"�7���Mo�%�W��s+�R��[Ά���è�'���\Ͱ�e�WD錄��Yk�5S�IŚɚ��I�*��ՔW_kԽ���5���u�n��09T�zL�O>��m!�545{D��ovS�n�c�&P?�
V���&����R�6�B�Q��$�q���)���9�����V�oC1*��/26�
�
%��m�0_oLT^q
��%k��4�ɦ��*k
ϫ�������~��s��Y�vJ6GI���J���)��d]�K��y�x
7��*EsW/��HJh#�9��`S�Ӊ�7�R;��Æ�F��%�V�Ă�`Q��u�`��luJ��f:����Hc��A�����l�1^����v��M��5�"Ya��a�B����t԰�m���^��
�nD���)��7�(��@��R�a�X�+�̍��œ��/��@��l�b�{��0�m6\���i�Ԫ�v�vv��`l�v�wvv��d��Z�YS���+[uod�7V�G;���ܼ#���n0B���y������!�:��
S7�
�M��^���Qi��L��Z��n��$�I��1�Ì�f�jΆ)Fq�y��12չ�������Kc��hS���ڪT��
o�[�� wuuU<�)`�s5�q�W6�t5WF5u��a,%"j�
D�o8�`�pF��DI����/��%��}6fg���9�5��ၣ�fk��ڤ��ܘW�v��v�=h124�����{�oll-���۶�y�J?��:#�%�08<R��7\��~�;�R�n���$o�$&k��;47A(u'�MLI����f�fң)�=���w����r6dMn�.�"�=�x{c8�=�KdX�<�Vi5�5c�9 ����T}v�6�u����_|��W�/�?�1�)�%��xc�Mw#�(:E
HGM[�u�Y6���R��
X#��Cs��+�����
a�uH=���	C E�d��d:�B�m>�7����YX�	���p�d��HC�~�vpc�n���.X��{ы�XW���������~*�A��1��r�(��_L�¥��5n�代]k��PV��/%�K��_�X�6��+o��
���n�,w�)���$[�^Ӥ�{c���pEֈ�9��
�ͣϷ�(.}8���>`�׵k�n���M���֗[Ђר���\�q\�|��˜z�
���׫?R��(���N��?ֺ��O����_�.|���͕�����Q)�&�6X!m��s���ð�P�)�/0/L<D/4�hL4�S���p��F����nw��۬�n���F�-**B�h��R��b[l��--�
T@o���w���ٝ��[���;���5��}�|3�gs�7��T�r7�T��+��ôw��qC��%�H#��H�Ȗ>��`@<�k�h�
�J����+W<x��WNO�6�
�5���Q��Ȍ�����4�`�_�g��y�����S�Op��4k4j��M��@3�l�Җ�NmJo����.����c)<"҆��QSp�H��b
5(w8���z�d�+����=v;�6��A|���Q��
X�47��R�7Ь��۟����_�CPx9�
[����z^{m}&��[�X��&�����ύ��6��ސ󤛸��qo�)/Wc7[R�Mp5�l�����"�we��YiO���q�༃Ahc�FD{�A�p*�h����cG�#}C�T�*>�Ue8��v�9��و�i�@��`�[�lg��ڲ����nU�m
��{���m����dƀ����ˁY(?>�c��n�-u0_�6��D��r�07��5V�U|&�l��o׷m[�o�k�<:zmg�{�7��47\�����׸q4L�כ	U���͘Μ�V��q�}�1��߮`ZL�ڗB�ֿA�Z�n��a���{ޜ��mo�5�x]<3s@:;��3�����lW�xG�;�&r�����Z�͚�Xn6�k���,P3x �oxKl���M��8���L��\�Q�*6y�y27��6��A	��q�*Q��ܢy��H�U6,��q%m�Oմ���0��(.�I˂R7�N�f���qp����7��6��}��G��P-Ckzj��fpndfxh|�k����2N���%���Ť�jwp�;%�fcS��#���Ρ:�	��_LoOu05����'L]$�)�y��
�/���in��6�T:3+ҡ��5��D��0�Q�f
�݉�@J�"oC- u��7�+�n���o�yS�#tM���r�"
��k����C_3�ǡ�NA���MO�k�i��Z��;���H@�����-C@
fρ�`h���ګ�\n�ou�!�5���@�@�]747K|���aQ����Gpsvq�fa���TE�x�;�v6�F����(�]e�R�
O�f#�󁁽��{�q\��4�%?12��3���잜m�����@�&w;��V�˯�~��~Ͽ�EN1�M"(6�X~�C#��#������sßFc�H$������A~�
&Q�͍�m���!�����
�Ť���ʡ��h�p)���
�l�m�Z1��7xco�!kL�<�RY�A�)p�`��D�5���C@
�B����`�\��
��4���9iS~��Я06���i��&�Ț�M���S=����d��@�H�yo*�ế�np�
'iS��JAj�{ů�)�S7U�M7��x�SZ��_�]ʹ��l�>k��u�9\
��iꙇK�n��GPC�`y;��(��LT�!����&�5~�
���ˑ_<r�������O����A�-N�Pj񚡉���0���#����L�<ȯ���
17X�����ld8�مr�w�T娛S\��Y��(��
�b��NL;�¤��6���q���7lƈ��q����A�E⨡��hV�|>�_�F��d�f�/���3�V_w�m��k��YS{��<�{D�SdDEc��B�$եbn@�����_#��Oa,Ū����h
r���Re��)�*L���`s���;���1�
�
�Mn8 ,��|)��E��Y�L{�Q���`-A>n��o斛РR~�u\���Gv��˯?z�K�}݀M(��Q��'mo_�}z��~��!�z/�*�ؔ�ә�º��Q��C䈳�cfnL֜]��r���[�J��)*���y!���۵�����M����r)�;�
�`
�N>mVy��
E�G<9r�,����}���AJ9��u���_v��)<�\׺A�ğ_S�͚�၃�J
�p�1Y�R�P2����*���_|k��д�0Q�d�&x[��T�$�SVV�Fw,8�(���>��yXŭ6����v6�1��n�#@iS���r#�J��Ą66�Q\Z���m�F���T~2�p� O���#G~�w�P�n���K�c^s�H�Ʊ_

���X�ѻ�ӻ�$SGѥ��y��5+�6K��]��)�
x#�17�DS�t#��9��O��Ԑ���ٔ�hc���v�-t6�[9b�4�y;�H�H ��
iӮ�
ǿ�C�F�6P���bQ~['28x�o�Z����#�~���M H,e�n�q�:~p��@���5k�C�]�{�J5��}1y���%�#V�A����A���)��)�7v�ؖ�ʗ
jNII8m�랺�wbB�����1}
�U�^.c�2x\X#�F`Ci�dYvBZ���yP�^y�&F�(s�}܁;+��Б,�X}�bn�~;���i�)t7v�v�=�����X��;�j o5R��Ը���|�FTzO1���5��ͩ&a�,g��;N���6WI�ۊ����0�Ҵ�D�,��B(F�53�Ͱ_���4u��V������W��"�Xs`�6�M�ܾ�_~<$[���-I������ߵ��#�40E3��T!J���`p�n� �����m|�p9ߌ�����T��G�q����y~�XU�{P9���\(�%I{���qc�94e0e����A���1*B��7H�@��<��j 6��&��?+���C�|G��@��g�/���y�M�Jݸ�Hgؗ�Lud�����,Q��#N
5|$o�)���*CES�����n8*��SC�`P���Q�֭۾�@���$n���Qӏ�09���NPØ�Fm%fxHY�9�)V�N�톹�޴7�6�
R���66�Mv�T_7��:���0/y]���~'n�j�I�49�Dȁ���%�䷂��Ds#�1pC�p'��,��	�G	j ���O���R���O���Q��Q>n��4\����ƍ��Ѵ��2�1a��#)���!e[��_)Z�vg��3;��,�U9b�f�"a��f���c' ���s�#��n�<*ep��.�0R��I	�BGY
�4^���n��b��|17F,E�X�������M�`2x*A�bW��u.�9�൓6���e���-o���P
�6G�5rd͜ϑ��7�X$:�İ���O�&�p�5��l��H�.j�ak��X}��$��QW��j��1�$lN�;�ڸ��`���/�Is�_�7\DrQ�(���E�F��9M�S������N�g��n���hm��z��)���q����D lf��Fф����L�XjΆ��7��*G�6�M[o������nB�
��N��&�㏓�Ɏ��+Ri}��3u#��K�<t�r7x �n�
�O���
n�Rr����PN�7R�€�!w�n*�Y�2�ۣ͂�3m��AM�̓$t6o(��~3u3&b��?��k<ڨf��fu��Ea���ƃ�6��컿�q�����ԑ���C)��]^�[Rq�6]��܀6�}_}Q�걻W��H��aR5:U��3�E��H�3�s747BcU���L᳒�YԲ�#�(w�O�q}f��SHc7i,{�Yc[���R���O�-
%:�E�9(Ai�6�B
+Rf�xv����}ݡ������-�l��5��'7	/us�0uӓ�o��'7
'�S����*���U	g��'u��������L�S��Eč��ݘ�Q���S�+�4F��ʞ�E-�k��M�������zi��lc\��Ax�P�5|t<�昿��Hڰ�$=��lH�#�v���a {x����,��������o�I��
M�'��MҊ�B�L��t:�#��bԤ�7��[G��s�T�����Y�T����ԭ`�/:�Rzg1�3�Vw�yU���^p���~��75�,r	u������0ʬ~i���H��	��i
pC��#�F��!H�	�5lά��QY�Ef��d��Q�Hr�����j�3���m�myo�`~|߱c
�S]�$��b���t0$3]dHW�Hܔ�QbM�m��t�>Nk�����Y��׹��o���HK���6���np-��j<�\�X�wJb(z���_�8��(G�Fr�v9
�b�n[��o3��
�#)�#.
�|�7�ލ����ԍx�����D�k�э��>�F�-�f�X���6e��WX�
D
�+����H8�@*�4��67�2x\6
a,�;6�mK��h�]}�����V�j��ٷq=���5�›L�n���OCLsPr��S
�Ts��)y�Në��KU��,vUUXww�mm�cϵ�!i0��ƙ"���Fx�q��
HR7džm0�����Bִ�+g�R?,�Ѵ9��
�
¨-'>|e�F.ѵ0��>�<OcÓ�����hcᦨ�!ԑb �LW�������N@��2��ߵ �hU�
7*w�m47�e~4%q#yb���>�@�E8ST�k�"ֆ��*b��n��m�h}m�P�5���ws@�0�߷��ߒ�ܐ7&nL�0F�p��	�I����Lج�6�9%M#i��Ҥ1X#(��Ļ�?�Q*����^~dd|�X�SЮ�TaC�!�Pog_G��a7j>�NN�������:׿��y�2����Q�9��<=���an�j-�&(QL�@��q�:R�;@S��bS�#�"o�/�4p#rm�a҆a�M�cZY�m0@��N�9cen�{��j����"�d
�a#�	?I��;��'
YC�f���4�;�ޖ�����t2�Lc��E�r;B�z�tu�_��D�Ժ� ,�"
kj���z������o��)i��<�9`
&�h��9̱:��.F�����JT�,NI��llkcף��S�+7��!pnc�F�����"m|s�A�0���#
C��@o��a���P"p��
�G�u6>�&�d�G��u��!ix���Ɔ��6����G&���?M��?)��C�ֿ�ڵ��t���`�g�lܖ�u����>ֺ�U��ᦶi�����k���P���̍��Gwc���wc��F�
Y��P 'DKÇke�͢R���2�e݌�D�G�ר���1s��i4X@��M�p`�.\M=@���m
䱆u)8�XN`5�gm��l�4�GnXm���٠�4�ӧ�]��Ó�Od���kG?�V��y|M�7઼Ҩ9�m5Ju�w��G��MK�݈��e)���78�{���j��΀�h�#�b-En��g.*/k��f
f�b{qЉ}�t�MF;�im��+tֆ����8��!rt,���z
ICc#��6k��7��N�Xݖ_߉�~l��Q�Mrlb|�n?
�����r��\.�ؙ.��W'�� ?�!ֶ�b3/j^?���)\�P��V�>�6�����)��܀4F,%�j�6:�2A�%��0�Ҙ��R|$kC�T���$)��8�
e�Gq܍�Lפ����6׉�!on�Ā��X��I��Z��ܧb��#�d1Y3��U�&�&v�9����E�jW�vB���ӣ�$�Yd�'�vg�~�SoH��q�P�P����n�j�Q�.Զ:ְ�)Zgۛh=RZ�ͧﶭ}���<z��
Ew#���y�9g�9��0QL���`��ⷬ��HBG(#��J4u�|q�0mkC��6�Z=,I�����"܈��NW�Ia��F��l�U�H���{���&�D���� ��
)t�Å��c��y�6^4�����&'as��yܮ7#��c�)�f˸Uw�WF�@��wE�c�v��Z�	G!E�&ܸ~��*�Ȯ��ȸ`�׽H����Ȏ�IaP�I��
Q�W��|q%�Z���q{���[m��1pS@����6l[�I���Ia�4:���1@�)��07�S���ذ%�{����m5�<�zY��p[�}z���҆��LMN}�7�+��
�Ӭ	�p�'��Nw��w0��Z��y�iã�V��6�㦹!
�ܰ:��*I�PL�{B�.L�ކ���)27�L5 s>}�1$N�@�@:G\�y�8��
1�L�c�g爃{��L���\G�\�A�pe��6n<c�Gp�y��
�5�7|�����q�5ìFI���77g����CF�:h����hs�f��$MW��P��dq���Z�;+�����i	7~.J�D�m�7�7���w�Q�Z��R��*�0m��SH���")H��EO�/�R�Ke���P�y1Gy�Qg{���oL)�/��a%�1I�I�\g8��&I�q6V,�p#��H����l���jUo�Q�F�Q^۶@��&5���[�������扐��I�a�m����j�_�5�M��ۛ��pCk� s�k�(�`�
7�<z7X�)
��B↨!q|�PE�FA���FG1(�'��hT��R�uЄ�l�)�s�!���(�%���ё��	��ՁV�6E���!-�ـ7C
5"?��f��F�N%���]ݽ�tvv��o��.da�&�ˠB��j~]ִyz����5�iDp����89UP�㭶�����H���\�R7Z:oC�h� ���!n�H
����*]�ʅ����fQ���z��e�QdM������(9 �č�7�1����W��
q��H$E���>�nxˮil�������}��j�t_<g+��	��	�r����]�vg����P�x��X
���5EA��di�I���Z��/�A��!�Rr��
�jo��<1d�3�܀7 #:���wA0o�Ey��+�9)�(G9��97�I e�����$n0���HJXk#)�n�ਏ咺�k�]�9�`,�gd��8��L�.@�M��u�����s����"Q�\M�&Gd�n�X*aֺ��#$Z[V75z�Qj����46����p3�9�z���ꢑ0��j��cy
S�kS�T����A��BԤ�<:s�a�B,E_��e�+�l*pY�I��=���JZ�%v �Ik�8���p^�9L!
W/�an�)�6�n�g#��Ќ�ڨ*��jܬѵn'jt�F�^�V�?�&�J�Nw�2B;�}5����H�����i$l4n��7�p3w�0�j&j"�����ZhUmm}�����(�\o��f���9_��|L5X�,o�����$��d�Me��ɮg�W�uu�4v�Cd�Q+�Hj�fׂ�H5Rl0
�0k�@t6�>o4m��ȸk�S����&b�F"�ҵn15V�ۡ�;u��Lv%�JTG����7П/�?�H�,@�͞S\(��������5a��Q��ho�Z#r����P������S�k�jY_Aڰ.��
��+���i��1�cY�eY�
�Ju�K����m[��`�ֆ�hٸ������U�CXs�PF")N8L���
�>��g
����1UV��5����Q��!t�;�/�7�n���̈́0@�258B"
)H�ZZ�a ��	�Q�������ƖH����v��N���G��p:x}h��f)�ҥj��R
�6���M��t��2�p�F��+}S'�
�Q���%[6xjlk��'�І9�$u��y�C).��1y��=sC_Å�a$%�k��V�u�S{�9J�<xxO:����p���G8��R5��SJ��giH�y���w�)�&�3q��M���45D�GQ�T3��z&�#�``��KCt7B���``J e�|Q�6&o*ٛE!�E����!USth�26+0(�ƣ�Q�j���p^q�(oQ���w#ɛ���F���O��I↰QZ�����[�NOwwo߾��vh�G{�VܮWK�{�_��K$;�!�e2��]9a���RYްR��F���]BG�`���1pm�!���z��}iCw�{�T�Q�Y�2e�mL���b��_S�:�e:{g�}7�F����.H�ްmA�T�=g�Q�l8j59(E�7@
�dl�`8w=�(*�h��k��ՖšP�`��j�ի�#�
�pl�9^lnRAe�.b�\��p2�)m�sz�w�u���y]��(d�kD���9�8E7J\��E�i�=�iDu.c E�(c�������a��@g1BHB�yyÝ~ʜ�21#���o�7�"�	�mCw���6d
O�"n�lX��5�bnܘ�Ά�Y�(	j� �R��>z��fK��mj�/���6�x~s���r8'F�Bv,e�nR�����s����N�~ڻM�˨u�wհ����6�'t807�n<�p�ȟ�(X�x�	��K��kWz����Fp#��PJJS����1)�����ӑ�wC�TN�8��EO��>GY9b+����5��ߦj��xކֆ���!o$��ib����H(%��4�����Pn
j��׶�=��
1\un���e���������=3=���g�,P|M_�
 Ժ����D
�"���6���H,%�Q���֨b��M$����@*������m4n�7����
�@� q��%5�J��3������Ib���ZmmX�5�d�Z|k�AڨAܘ������4L:<�o��Q���a�Y��o:�܌��'����hs����B���.͖�s������\F��	��h�"f�'[*I츉aQ��w7�5n����	GAL�R�uŨ�_��&����_���d U�)�$o.���m�
��-��e�Ԫ2��pг��6���o8��(J��� k��X��Ep��0}c�F�č!�Rw=Qm��%��u`z��W��dQۚ�50���
�����=����v�EO��P��jB�5��1�Ehؠ÷�$m`n��0��:\O�9A�!�Z�@�
")N�C����.V�o,ڜy.>�u�MU�ɩ*�6hD�fL��XG�i���e�I�L���V�F)y�F�
*S"���
q�C)�f������2����fU�=��.��\nR��F%�Xwo@Ndz;פ��¯���DD�p��M�!��W���҆��-��-���^�M�28��R�"kDB�7"r��Q�%P�\>���N�R�J�L��"h)im0yc��~�xiQ�YcxL�F*R�>n4on׼�`l�������8E�������r6�B���Z��-C#��jܺu@'ܶ��Kwt0$;��&�Q�N�"��"j
l���QnF�,�J��n4q𮄗�X}]jT�HS�%K�g��`Pt7�6&o.<�R��sԼ�����j��ֹ@�Z�YbQ%Ws��J;>�vL&��L��]�b$���!k$K̡X�7�A
�H
"pȚB�`B�͝$�5�z�y����<{7�Tpk3v��v͌���FW��
�|��k[F7���a��&��
�V�ܯI�Z�ې6_bamn0 P�H���`������8~C(��Mn�͍��J]R
�T_yi�1�\����`9�n)�T.?�03oς}Є66�)b҆y�F�8
���PJ﷑XJ�����
�F�Rn��t7w����r7��)mm�b���?�kh]i����j�X/HE��X���Q+���"ޯ(((��i�cR��3��S�L'
��Ic�6�j˄���$�0X�E�?|ֻ���쓝�X�y׷����!���.��x�fw5����������7n���/��oN�/5�m6x�\���j��� 	8��hç`�Z|�rl�
��7L�*9<7v�mW�zk���N����%�Dކ���`nָ̍����N�M���-'qF�	��H�n"c�@
��
�a�|Kf�ll
Ubx����D��k=$�!܈7�R�0�6����}^�ɧM���GX;��/�6�
?1���Э[��_��3e��y��9m�����W�����07;lD��6��PèT�*����L�7�@�9����w)���0���]�F����F-p&�M��<]Ub����v��V��m�*:�լa�_#vk��q9po�	k���Y�		7�Y�F��F��p��{g
�aV.�~C�
G`��BC۩��`����?��ƍ[���n_yh���:�3���]U�a�Ȣ�@��i )nx�\,��K��>|ä"+�:��"��Uha1��B�I�����+er�XP��x�B���%��n�6	t�7�+���Q���$֤��ؗI�r�ĞIA)v6	j��F�Q�0���fR��X#���4Rn@����l�Fa���&��;�l7,�˖n��m~	oZ�o��e�y����__�of�#�?�T�
�N.��3�iQ�u'o��^@�Im�	y��Ó��E�ő��e�1	7A�!-u~�\*h��Y�6��&��,�D�b��F����:���5v[Mu�LT06�=�e�]z_���R.P#�@��ĞJQ�I�
K���Bz)#����F��&��X� �yD�}�n6rbV�t󍁄6��=��u��Z��On���G:�����W���owi
^���b����	B�"@�����t�7��Z�wT(�i��q��@1:��F���M��ـ�
��xc�a��)���
ٔ;�{�
�.��TkTm	���^�]�l�M�	�F�]q��a2y��)�
!���ڼ���Q�X�a��q7�cz5�p4<	q��L�6��7�KeJ7��8Þo��[�۷ƙ�3��Vt]·��͖�z沄[I醳�6�������M�E9Tdn`Br7�,�a��_YZ���������_0��TFN�!v7M�.)AM�J7e���4�7�ڈ1�dR(���
/(���6L����R��з��0̕%�ļ�/���h�MȤ�l�P�F��P#���y�QxÐ�Ɣ+��a�y2%oCx���,�&�
�\�k�KU,ݜ�����n\��a~��"�7Z>�-��t��^w[W{�u2������;^/�j�2�6��ƫ6��qX3���j����~��R��#,*Nt\klR��o�n5�8�2�)�BppLʣb�d�R�Sx��}��fj)�֐�L�Y�(.g۔o[�v-XK*27oTK*-�8n�6I݆P�&J��޸�nbsÐ��L*�&�6���3�7�#�mp��K7Y=���˿�˯��^�`�o�kD����R�|C�l���~�Phh+v7Xy�h��&FCԑ
�f�L�\�>=>=a�^\YZ97�y��-aU�F�9��nL����޽M���g
�ᑫ��g_�K��6��"���x��)���7[N�œ�l����ƫ�I;�J7:� �H�#�ą��n$��h���'���p#o�h4��0���Q��m ��I�Ft�Cj�"�IP"Ŧ˼'�\V󵊽n��)�����D��m(x��5�	�fx~|||eq�b̈́D2��8��7��&��K���dQ��4Ŵi�և>�E����m)���b�@|kS֗R��h�ה"jwfn9ՅW%�d7d��wh��Fy�
p�F��W�j���1!�\�dR�LYs�RҤ�h4��0�x�H�t�����;7X��Y���jNq��Ҫo骖5.�������A���>����n�;J�
O�`�u�1l�5\�I%Ҍ/N�uz�so���Hfɕ�	7������{�JE�b�gR8s�ݍ+��ws'�3���t�����ț�J�}����roc�F����1��#�ļqe$�bg��ƢL��Ѥ4J�9s���ؾc�
�)8xn6�K�ׯ�`��轇�'�a�����gr~9S���\�{�`	�Xc�Am�P��jn�Ƃ������ϣT��՘�YY1֌�5�K++����;�x��C����jM�04vF�i��>�z�6�}ƛ�x"o���%RSȣ�r)�Ɲ��+�&D�ޭ�����_G�ӑ
�2��]�GyC��3�7D�o��Y�68=�H�I�F�1��;���7<G�1p5��M����Y���^�N��pF���ǩ�!%M>j|�
�{[Z@���jh+��J���P(��I�1#Ԍ/.�@�f����6n��x��9���pӘ,6:����n�N���\�_8n�ҏ(^z �d}��R7��G��a2�X� "��ʖ������Eij'�m
���Z�&.�������$M���8jT�!�
�	�&*ܼ�A��m�� ��n�}��s�N�L�&����S����z�|��9�
.����V��n8T��^��^7^F�1inA��&h��4�Z:��@�f�U5+�fi"a
й00u��e�7�$�t~sx���&[�C�|�w��bZWᦩ���D�F�h�l<�mp7�Ӭx#Τ��v�B��`m��I	2�IS�As�H�A�'۠�nZ 5EB۔�y�2�D�&�
!�ĥ�
Edm���U��!���!8bNN��k�nN�U��8�/S�9u�R���?�F�u'�z���$j�C�*�7
����}^�RC�$ԌC��i���O�O��-4��{�xq,z���	d��,k�3�M����
�t�ʍ�F�^���RH;08�Je�
#^⧢�=�{��붎�2��?I��,���
�!RwSnndm�-R��+��K�1p�M�b�8�#�Q�m�
�}ݘ��m�k�@��p<�f�F�P�5y�5�
�&�5��
��vU�36Njm��7<%p37m
��+�ҬL�/͎��g�vt9o����Q#�`k@���;���Ȼ�5<��~��&�7��a�� Ndll�&����=�j<֐8S;�x�(��E�ȿ�e�M8=l��g���ٕ��2)F�M^*�Ά��J!Mq�f��4ؚ*�����U�y�}��u	_O�'Tp5ߺ4;�ȩ
GH�WjԀ"��
��pS0܄���z�Ƒݱ[LL����y
�m�k�����~�F���2�ĮF�j ��&�u >�'�Kn���ndkx$��$�0�.��{���Umj�Ӗ����J��r۔��;V�mɫl�
C���S��As�P����c�F�†H��a5��������r�^w�?�# �5��Q�~�U��<�Yg:
�/��w��,�jn���ݡ}Iifo�HYx��	�e5קF�aMG�E�}t�2���VWB�2�@ᦉL���A�	7H���LF/3v��psc*;�O����UJ�fl���� w7��	�T�n㩔�D<��A5�MEs��ɥ
r��2r^�X
q�Y�f�O�*lb����L�~���Ps���!ƴ��7<r6
6��6&����r����H�
C���)�8Ɨp5#}}�F��:>�(Y�G��2j�6���4�̗���nD��RިL��&H�a '��6��	GΚ=p���}[D�l�r��눝6�&�ƝMԔ�4Λm6�\*��ހ�o�n,P�l
�m�t�ɥּ4���ӏV����w�>z��h���
��K�����Аx��+׮�7m\�����`�X�7j��/R6�M]_:=2Շ�\x�����<Pe�Ğ��71q=5��?h����I��I��i8D6�
�q���m���e/[D�L8����H����J�(&8ц)�m��,n6k��fo��7��9D"�q�# MGV��WݸN���t�Ҿ�v@=v���O}���*
��F���D�����O�SGf�R)6�
-s�{Z��^��5חO%�э����^
*�LdP���uш3��
�n<��O���6�
�)ϣ�B��{�<H�a"*[�j]�-"oJ9q�;R�x�M,o��9�I���n�5�7���	�T��o�!c
�A�5��1�J���R�n�h��y{�O]�ƩJ����u-Y�����78�
m,�ѹ���ݒ��ӵ�����!���nL�vPc
��v��k���_���6[3ti�ۊ?V�Q?�3��gPÐdl4M��*}����o����N.e�
8���p�ɱ6��B���i��wd:n2��K�	�ƻ�F�7{����8jV׉3��7��n����i�h#�hi<�J9fP�͆r��O/?u����Kȯ�5R���$���|Z�'-�8�+?���W���O���0Mn���J7�9L
�`V�P�AӋKח���zJ�C�������ڗ�N�&4�C���<}b��KU����nxc��I�r���gR<K7;��0\kdR��v��P#
i�����}��<
�y&Eц�%ўK	7�qܔ��X@F��k��6�6␀C8i
�
���5�Ѻ��܃���g�?P�׭͖25��-U�C����>,�j5J�Е������^kk��݇��l��:K��+�+�+��6�<uzyyn��sa���?]��놚�`k�*k@y�ƦEjS�ч>���(AMbnlnv�W��8�+�'f!���QyrO��k�
��#�m!C�|oøW�a���%��&|_f��hA1#cn�SY�&��{8c�IGJ(�-p�mb)�����2
�[y�by���"��'ːP���~ؑ� ~���O��������0������ҥ�SC����{.��aU$8+T�9'���UB
�X����ßUՆɝ
�fO�o�'�f{�6�w�b[��m�6�^��0����5���)Oc2� @M�J	5��R�nh�G̉�Sa��Q{\��a�8n��!��
��������2���n*�R�e5��6+����%`��ġ�
&
��=P-F�+߿v���|컏}�m�¨5v��b
�Q�@�� ��n3�S2��*<���	�5LQ��7�tk"z�S}ڴ���>�R�h�:�k��T�U%�qcϺ)��7�����U�S��6�lC*{Q&2c��$��R&E$�P-'.O�����@�P'ޛ���P���H�(��h���1�X H�sp7U�`�Q�P����5[�Ve�����\��ttĠ�b;��v�
�37���
/���>L΅!���"+n��t���vjR��7����=R���W�P�	-)�6�F�n���fR�l����\n#�Ԯ��R�_9�&��0�p#�t�L��eb�j7q�x�:���e})Hc3!s��pjo�™7�(��&t��76��)�f#���M���|�Ό��j�l�mH+��Ҧn�::ȼ؁�)j��)tw��'J5+�
;d��F�#��~tvqvva�jO��씫�5!��ROCx�I���!���i`���bo�R�C"%ڸ��V��v�ԖR��>���]2r�0v0�
�F�&H�2E��5Іٕ�p?��&^v�f��a�R{	�
C�9�&Չ5�8p�l�B1��M�m��Pߑ��}M�h��⣁���tX �UB�a3](6ۯ�F�6�W�ЀJO�9�/]�]^6sW�r�'����	'�P�ˡ�v�4
��$��)�E�6D�{	7ϻ�W��n��^�ڵ��b�
r�8m����yZ��� �{á����dJ�f����8p�L1��5o�7�7I�D�!s�[��6��璱�8�79������'��G���l�jq�(Sj*�@��H�F��]��>o����oٙEs8�b
������u��х��NP��wW\�`�.�
;-�h���>���D������
�aJ3)W�R^��ZO�^uIh�۸�S'&k,�_���D`#��Q���R\��4�G��?��c�W7��h�8�l��I�f�!h�a�Q�F���yG��Ty�Du��6�����f�����7�-��¡y��wC;�Y��^7�.��e�|jB7�3�k&ggg�ggGF{z.��\���Z��z	�"
����O?¼(�6W��@��Λh�M��
�By�.N�j��_�.��[J�m�яr�<
Ѐ���ڸ�c�F�F���ɤR�P#o����FΆn�L�ndo1G����&��7s��;t�_5����p�6!�$a۬Thә4��"�!�2��&疧igv�x����j�`Î�.�蚖	(�0??y��䂬�����Ξ��T�M��:����t�b[S$ʄx,h�OT$���L�H��N@�

�Lk�&���&.���J�c��a8m�)�T���~cMZ��5V��/�g7J��6N��^�T
��a827�;�9Ι}U��ɖn��;5��(v��-�k�5&p��gka��D,K�\do�hH�yjV8�F�՘l�%߽�����2��T3���{�毎��;j�.�]0<�=P�_m�`n^��ެ�kx�h�k��J�\kN�Ө]]���ɡM���X��m�ӎ�rm����;��@�J�	�	���M���R��Y��W�\�k��6��(�z�!�bHGl8r2�Y�np��s�_�ۀ��5�/�/;�,>s6vxřv�N�/
�b��bCbO��0�܈��)j��8sV�H��)�,�ր�����R��]���PS����/��/m7�ե�g:nw�'��a�r�
!oc�����g�%������*�a��mnnfmҮԽ�"ss�
O�K�51n��q�׉5J�06^'>|�͇��4{�$�:l��7^��\��
ȉd�F��ton}�^7��E�c��>7 ��-�F��q�ؐF�4]�Zӑ�[��g&eP�
�֙Z�_1W�5cW���e���nM�&�iP��w0�憈�
��ݍ7�x�۔�RĪ�����'#�ƫ6w7<^��n�d���ݘ���ިrC7�+�����M���=*�@��ݐO�W*ep�7�X
��fB�&F��M�n�
�1~�������p�=J�htT���g��3��ڨ	��i�1�ޥIH�H��;�t���pL���j�5cc̼�E��	aq���Y�u���z8q��@x���ĨQ&%�;�v��'���/�M]m3֦���Ie{�J�M�!�p�,s�a��ҍ-'&�l�)���$��A�p��9k4����S��L��m�0�lȤ��Dm�}�m�D&��Mu�� �ɽ.��?��ؠ���I�ima��]*�bWR(�E27-IŹ�m�f|izE�5�@
�����9���\4��(B�����M��o����G��
�z������/x��TJ�ٞ2���d�M��T]���
��1{�����G�T�6)F��WoȢ07V��L
ܸ��ۈ8p��ƭMH����6�
q�Sb
�氖��|j�Ky�J�1ڸ�٧p�8o<��&��7�*�������hS,��(?j�l-�����Kg�-��Q*e{4چ{ɝ��f#lH��F�$�e����YC59��_�3N����u���������W����޼��mJ��q��/km��A��x&�ȹ˪s��dMO�����|S�r�R���ͤ���m07Gub��D�D�>�0$�
���8o����2�A9�o�7nn�3��l�q��B1�j쑔G�)���
O5�`�R�?�93X(>�O�FwAy*u�s��=vgE�-�ђ�6H���bh\�(�2�L�J�+�A�X��Ջ���Q��
�]�ޥSU�S#�l7>�b�Mf�
�:Ru�l����Eb�&�l4�����\�"ѓ�/�^�������F��N#X�7�Q���v0 m��6�o��0��Q쑜7"N|ወc���H�y���ÞI�jT)vg������B�T��68Z�7���ӧό���o����P�'vՓ�H�i��.q��A
Z�gۥ
�ƍMi������t��ss�/bj(�$	�2�y�m
��E�)v5�b�eը���O_�7���ʥ8|����(O��A��ө�!�W���gFw1�y�3Fߘ'aF?����^:�V��Y�3�7�p�ʸ5	n�
N0��R.�g��	�ao��9(ܐN�lj,�r��p�8LW
k��̍t(؛�7����ɫ�P��ZB
:;202���D[�u��)�J�������Ξ��X������s�����2�S"����+�t�t��8�'l�$�ص+,���@1�k&�w�JJ8j������*��G��P��5���p����ƝMlmxָ�%�~�B��{pf�ݙ�}���ԎE��Xb^�)ųM��&逋6�n���i��N�����&�eRx�����m�kdl�l�!T���0��M�IY�)[�!��K�P���"�tf`��@�J榠���88c
��b3>i�\ss˓c�r�������Ec��]3V��43n�~�*F͸�&Pa��D��jF<n���Ps���l*�����mԔ"�i��Ċ��pS��T����m�l�����,0G���W �~����VVs��Q�7e���6IxWʴ�N,�8pvKdR���ak���n�XC������5�V�� @#o�@M:\sY�ʥ�jP����Mq�RŮ�p�L��\�)��چ�4d?p�T#nikmjjj-aw�{���__Yַ�fz���XOC�F�����8}�<�o��>�)�<��d�,�q�S=mt��i�D
o��&�QBMy.��_�l��9��DƔ�̼4��;Vu��M�Φ���r6��p̍�
�q�<C�	�!dnP���ņ�LI>g@���ƀc�f?�[�!Y�F�Qx�
�Ro��ҍ7�n��uи�!�j/<�a/�)�憙��XsiИ:yt��&�a��,Ed�������'AP�V��]�a�Lh�;��(���i��nD�۪4��sS�v6]�a�K�I�
�dQH�q�!�*_'R�����PAH��B�.@&��`r�uϦj��7
i�K��d
�H�n��.��7��%Ը�yeR�9pP�p#ޘ�9*�H+��7��
��#kh\B
|a���-�/ݨe�fjp�9��d�e����RbnJƒ�NC�M����̰�rx���fl��9��R����$cC��Ё���W�g�K�us���oU�/��u��G}�2(5�yW/J7/3g��7�&85�g
�k��D��r�Ɨ�lZOJX�	� ��&&<a?z�P\%r6�-S��L,�
�F��NL�U27dR��ؘ��%R�pcq`�~�Un�Ô��S�
�!�{<7s�/�8j�١3̑���s/eS[��y\�����nZI�|M�����LO���٩�}M�d����Q��S�VKoA��n�s�M����%�7��FM���F����3E�\Tm,P\#&*��nQ|Vӆ5�8J�LY�$>'��{�Z��I;���[���f[p7�SE�IK��X�7�5�3[_�K7�9�MZ�1�ܯn�P�TJi��\^�Q7�ub�T���5����2s3882�^�hH̍u�چ'�p&,�1�$��^]���4�0:ZZ��e45�y��3�
�R�'�)>�_�}	,�ٴn
/�Q���o�NmZj���F�y&��&ͤ|��NcMؐk����fU���8i����|�d��>ugῴ�������21�=*4��m�!��dJ�I̍�fwN2%ޤ��W<(�
������K�xˤ�����	�A�6Q2�7����s�������rsn�:07�MO�l�JB�����L���Bi�d_c�O�.�b�6b
��9�ؓE��K�ԧ^��%��5�̎�iy�F�TX�lB�6e֦�h���`k�/ڸ���h�F�d�Χ��]��G?f��>�����8�T�[�~�׎ܘ��c�U��d��j�;l7Պcܘ�
���7e}�8�n�o������0x<���)_u�/�M�
���
��i�o��P<848���m��)%*͍��N��]n��Ι���1�,,MM�6r�n���Xc�<уg�C��p-�t1��?�B��:��wA�fI�n��1��<ӝ���0��I�(߶�a��C_"Fp2O6�ff���@�����V�����)eR�ԪvE��#�l�J��a�i��)n"�0v��1���V��R�b�n^i��p���&H՛�5�p�tx� ���(ק��Ě��Z��Y�u�n�j7͝���W�o������[xs��uh�����-s�K�K�3��M���'���5f��bԬޏ@$���]��@K���A��6�pi{)p�Cm_w��h#fTollĜ�ի6�t������[��W�z�����u<�]x���.�Ue-*��޵�~U���Ѕ}���OJR�-��ӆ���Q�lg�I��T�p�TҘڏ�Q\{xԔ���!=����d��m� ��YVSQƙپ��gi��w�؅	%�kRB�
��1�����鎾�����mq�ѩ����BwC�	�ߴ�	 i-���7�O���Jv����>U���ҍW��(�<�Lʝ
/Y#���{�G�]��+oHm�NR~:�g��+�v�ƞ����������46o|�>������q��z����$�'u�N���o�~.+�TQ'V��k�Vx�6�
�����&�k��^�J����P��X@�0��!�q2������6[ť�-gϞ��P�=��qjJ#\Z9�/sӱ̹��Ԉi?-/4uh��(�/��dj~yj�B�������������^]�Q#���f���n?p��7�gg���򧻋�l�6��]p#_��]H�
g�ų�b�d��M.aF��5�vww���ƎK�<t��ɇ�_�p����ž�Ͽ�i;�7��p�ˌk��l�:9�N���&x�+m�괡rn�h=�+.cn^��=�wC`j�A�X��:L�8�[��mp8s����w�{�{j����,xAS��������|S(�o+tqv����2�A)^:�O����<�x��t/�rWT{��mc�p��aå��&,ʈ6���x���S������W�6j�%�υ2ڹ���I5⠝��m6ЏJ��R~�[��V)k\�~�GG���
���G�O����
}}]������H�2��Ԯ�ۀ�Դ6m��)do"=mU�xu�|�M�\ꠀc�!�����4�~��F
}��pĚʅ�rܬ���Swzݳ�Cg*Y��@��IQc*�w�5q,� ,�|}q�v��1X�3�xc���������������Mmm�^WZ�pLEc��D��i2$O�t2MV���R�#S����.��+�?�i�ŗ?�g�.�0��.Υp7��9f�4�fD澢��s>������6C����)~��k������;�O��	4D�
:�j��	9�N�N7��5D�G��+7��Hc!Y�����+;���7�W�U��>5����Y�6x�Pǀ��<��o��	�r��p��#�^_��׮��҅�M�M#�i�:����F\
Iו��ͺs��y�[��݄
M���O>�o<:;r�~���Ou���1���+��K��Q"�À5�����3��*�T�?���ى�L/�����;���\��_j�jS�hG��?��7�ͪr�׋kNJ�&^q�s�_5
���*ٛ�K1P��8o��n��ޙƸ7�a��[�� � "v� "��	>�A��5�N�k��4�*Z�:��&%� !�0t�"�[�o�}	_,<�u�{ϝkZ� �sNO;c�??ϻ�{��7�5|as7����Y�ݜ�͉.rDg���Ņ(s�6��-~Φ^o��м$��"�z�P��1=���I��\[��=Ӆ��L�i��I�[�I���u�����R��&[^�7�N�Z�pWs���7����k��Y���j�F��-n��k�y*��T�FiKJ�����_ޭW�R�	7�k�,���ҕn��@�F�f� nX��ףhj����{n\�����A�`ټ��
I�ݍ��!|aź�����b	��H��/7y�]�ro��h�t*��:�!ox6�l,~�������&��`�+x�
Rį�Ą�.f��_7�/`k0
n�R�S�3~B�:��3�P���N����k����G�A�'�=c��꫁is��/\��X
�a/�Qhd��&��X�~P�<T�p�j�l�
5�jfR�P'����D�[/�/?H������Q�x�7��2`o�V��Km���̍��
3Š
XÀ*KQ�Ѵ9�?��-j|w��sc9ÍC�R07�{�������T���X4��c�d&	�p%�
fX�Fw=��#zR�����Si�n�
P��J��hİe��Zk��ŵ��D�;��j�X?j���cmo�(�kOHZ����ڰ��JR����M
~�؜yA���RG�����xu��v�к��p[�������
��.u���"��OC' �s�C��6w���9j?�3G��`a��n��k�67n�_�]7X��`q�RW�-�/���3H�$!�I�N��co���+l�(�?€�	�y�,��������ƦjD�E�ՠ����l�qYA͓	�`p֙��(]����$��R�Q�q�6<�r#9s�U��8�b[�BjS��	��������L�;�X������&nF������67ڒ2�oX�Gɝ_�
�A�7:uCހ8x�5476�"ns捋��q�
%o����%v��'5�����PH�����Ig8�`�s��}k�	�5�w�7��L�,��Y�h��Ɲ�N�W'jMI����?�o.&)�@��'\��ԍ)�4X�*-)Gq��[�t�`1�(��a��`�"�h��.�w+�u+e`�Tn��^W����3�Ӹa�2�p�Δ��͚rQCܨz@s',9�,1VL�X���f�B.T��:8�������(Ԙ�������npjk��%��L7�C�����b޸�;c�J5#*<QčL#��
Pcn��$�O_{�y�A]���\��n:!����
A���q��K�606�R-�w�nG:u#�Lڀ6;��#R���A�BĈ����n���]a�;����'�h�i]6~�ō��(��u�\���ȪQÓ�T���.�7��1�SV��;�E)�F�"k��D1i"�NGL1h�,?�"Uf��5
5�Ogaq:CԐ.��R�|I�`�2��
YCeҨG�Rx��ݐA���w;m5�~��+��s��HR6��5C��@5%C
��b���-����n(����e�Q~�&>E,Yb�ЙM��{N�;��lw���
OsJ���5��u캙i_v��6^aj{�)�nƁF��h��7�l�m�%O�7���&��`��r��c������
�F�;��Cgn�'��������P�X<�ܠ�]/ u�]�-��L&i �%�&^|�6����wL-�@*����M�`q��y���שU[�fb=���>��>���/��5ܥ^�
y"q���㯔+�j��Q����l�#6k[]�V�&���+ɥ
n� 	�x�P�u�뛀/)|�g�������3���g�27P��l1���L��x�B
�����
����	I�R����7�w�eHcy�-���b���q�RXN|W��g�܈��"s.�֚N>�b	
/���P�a%�O�,��
�B�����>k�bcp���A�i,g��7��W�������처h�u��a����Z9��Z�+]���؜͞�6�481��m�
7��Ȋ�5;��Oe��(j�^6�Ly���f�!_o������FS�.M��M<v�������č�����IJ��&�.7{+w��͘27<��.JIaJ�;2sbpR72�	��Ԑ4t8��ɚ����EP��7�d�
�r�{i�F7��v�FQw O�PC��x�yu����W���<*W�([+g�F��/�r����Y n��X[CS�L
W�؍�j�;���e@I�f 5�����.��=}�li�´�|����L�8-���QN�M��`���Iܸ��Bu��������b�����qp����5s7��w�n��`"ipB�\��'����ek�}����&��`�_D���P�2��D�p�x�|�Fj��B��Ƌ�u�^_����iy�
��7��`�5;���&B�I���÷��Mr�����N nT��-�����qU),}
�e��J���މ�b��
�7X��)�6�/L�5���w��
�q��������q��8$��
�q�%^���Vajaq��<5ƩL]K�8��<�+T:���*n4j��
�G�F��;o����r�
ц�Fp���,j�+t��R�V�v�ꡔk�ͦ��B���#�Ѹk�U����ϕn�ԏY���w \b)�9������7:�j��ύ����
��Y�y�É���1���.#��1ٚ�t���j2�H&��f
�6a���ۧ���N����N�{�X�I����+�����kl�d"�P��,@Դ7�Z�gn��	��鹹�n%�n��<YR�VB/*=ܕ;>+�7*��M���i�����`J��O��o�����8
7�\�*%�57�y�1�y��|�X�S�@25f���H�l������	Æ�p�;�|�<�z���Q��-�{���ڸ�o9�5`�>5۠���\�S�k7#3bK�H+㤻���ɼIݴ.;���a,���7����\k�1ټ
��o��҆%p�-�qJ�©Iތ�"?������A�XEץ�7��qqC�x�6��rFp�8=���eIR��h_�O�M��;�����0�w�e�xd��BMb�i�!Q�'B�6;��6�)
4ⲹ�e���9s�]d�S�AMv"Q�]]�7Vj�iJ�RDZ4�0��n]v�Q�8���)�8�z"�����8tҘ��0�Y�y$�q�)����6ccc�a�����p�
I������!я`8�y#���:��US)A%����&��P�?ٖ�r���I��m5���K��A�����e�mݴ
�b��&4�$�P���*�Zw��Z�S�*E����[����\�)%S�'��r1#�j_u��w�L�cå@?*M��BݪE�o�l&�%OL��l�e)H�����( p�`�
����������Q��9�?���ڧqsA
�����$m���d�
�t�6�&8
:�r�^�4����|L鵉�� ����B�V:����U�F�fRP��[�ek�f��_�*C�;K��Vszn���M�uٕ'��FU���F�6��F)8OKވ�����d�qH�L�#���܍�')s��P#�1��RX�<1v�7�Sd
W\�Ά��E)7��$�U˞F
?z��7���&�^7y�����B��bii����冀F��-pE�K/��6x��K�{�8��w����%4��F����~����v�Vʒ/�r�V-%\Kh&ژ`�ԍ���G���p��y�.������[~!�9�I�Ơ���ᤊ�4mD`�u7��
@r7d��ե����t��%򆋸�ކ�����	ekHml�?l���6��
��6����-�Ġ|��,��9��l�.�Ke���!9�aEm}���Ԛ黸�1o�T��4�J�t2��Θ��\����^��5���N�74���7��jFm~Q����sA���r�x�y����)lm�)֤�A���1�
o����D��R��M��Q��l�n�8g�=��H�E����Sd��)���"΍7x���~h	5>���;���ro��Q���S7N1�P������@�d�h��|��G>efC�W#X�k������T���S�V+��l�Y�e���j�����'�*
�n��F���������4@�9aq|Gh���T�<�!��F����bGER�7�H@�
V\���&K�u)��J�nN�F�/�$5k�1KG�=aM���=���l�O>�������˻�_�nh�{�?K����8
���J
��Ɨ���V$j�nQ;Q�^�k{���R5�R�\�Q��U�!f	�*�cf��&�ȯ�j_y���iܠ�������h\F������u�ⷥ�7;�”��{�w':�
q�
�H0E���V���	en��D�K�R7bm��c)˚�w=�J˻opx�X*�zv���s�S��������;�f����Qs�
�l��Q��?�o.^�A�Ժy_>��SeF�V�b�r��^�/]]�Wޒ7q��_d0�T�T��0�`r,��G}�Y���N�[��ybn���c(�@���{�b���mx��L��Ia�u�h��>�m<�7���I�(�-�<t�f�(~�ֆ����̤�5–k&����&�7����O��d��ν�:П���/�T�ֽ��C7�m�")W��q�����B��Y�M��.�6s�Ƒ)3�˭b(��"��,(T��~��j%�CWn�L�n��0}Ʈ��ݨ:8�O��7��y�
��j
Wz�������S��uC���v�P��7��h�x�Q��K9�f�_Gvء��	�昿��1g�^2�qC�`3i��]�G���_|���ǟ�r�GM��g�x���~����P��x߄�Dmk�U(|P�Ф�}0U��&Qs2V�XXB�=V�s�~Fd�4��|U�m�9Qb~X�m�R�Ҫ�1�PG�}ީ�
�pch#���Q��Q}
N.��H�6$�RxA��F��Z��D1x3��PJ:���
�S7�e�xs��R���Hkl@Yags�y*X�k&���]6������Y~�se�������?�Pg��FR�R9�l�VL��{i��R(T
������_Zj͇��Ȗ�%�^Ȕ\�,qf�6�e�R6��8�������Ǎ�b�۔AodjJy
?┌anXu�Ȼ|�m�
S7~|�{���R�^t7�����Ѹ!j��M����Ka5�
6X#��܍@/x�ǜw!iB�8��<�Xc�~�t��~���׫�/����ޫ���B�P�x6�Ҡ�q�0f̂�aV�����l̙�+�5�xږk��rue��[J~C1Q�Zw.[cd���"���JER'R�^�\>Qὡ���F�FA�!Mi:Ά��)ކK5+y�f�X�"l��&?Ki�H�X�s�m�ԍ�
�:Z��X����,���3K	q�9f�E�&�����:��iX����%6����ӹ����P�N����5�
e{�w���d�L[.ǡ�&��k�4;�.�U��-KV�XŅ�R�*�kY?�S2�T���`��3����
��o��l!�����a<%}V�.U)�wci9���!o�����2�9$>u#��
�$s9���ֆ��˂���<��d�LB۫�0.��<� 
j�+Rgt�(�8Oݩ��lkm�Z��������H�M�ZQH�E-�M)��6Rŝ� ���ݓ�����_�E�{�KZԅ���sϹ��T�IXCMت����U��7p5}g��5������0��r�((
7�iQ8�dPt6ԓcS�1�Љ�_�y8��T�P� I��AV�5q9���M 
Zôg�Ϝ���K.����ܜh�
37�{d�S�C�/�UQB�P
WG��6�v*��[w��iuK�37�P*�_*�:��f���CkC���
?��'��@
P�������'g5��_�aC���i8�<���t�y���I�
�Թ�Ӟ{sl>��Pϖ���s���޲���~GV8H�
�U>ם#�LF�g.V�X�T��I�H��?Q�ry����CN�/گs�e�dܘ'�L
�����L�.Ρ��_7����[�6|]��9�McC����y����EGTL�P<�W����g�ߟ��O섐�{��<P��mʆ���ϣ.��g�/uQ�q���C��b(��o��s|�ݜ���5h�,@٢v�X�b�3g�}�g�t��wy}����^xt*̍�
�(�7�Y7Zr?�F4�̍57jؽ�L��P��`�G��	?l��57�I1W���q���Lqi�0u�
��!��
�r6X|AOLWl�B��kj�q_�L�w��>P��{{�25�'�NW�jH�s̒+��$1V��6�5�`n���tΦ�9>�R�r��ż����p<If��WhS7e�nε���6s7Mܜ08��<�j�~h���1#ˬ��e�&��7�n.�h@�F�R.o���bu���x��3
7$
��t7H�X���T������Ӑ��=<�;��-7��Ɔ�@��'���^�"j�K�l,oN��l�ⱓ(~����pn|j����\�S���s5�/����[q5a��v���n���
b)��H��
����N���M���0z����|��`Pu)'���
q�G��o�L�`J�SCm�f�~�R���ަ7B��&�n�٨�0q�ї����"������GH��5�{
�C��A���������!mZ:�kC���2�e
�����Bmt.�n��ߴ,���(k�d	i��r���X>c�n�ף���U\�77L�`SR�$o�fk	o�����.�M�P�V��q�3���6
7ܱ#��Q7\���6boF,o�ƥ��#fI���@S+�޻��(�Džhk�ϭ���w��Fc��/@m4?���N����������c��b
l
vZ˂�6
a�c�s��j��J��X',Iu)Ϡ�2��f�[������H��1�(H�F��!�����C7�>�;9c�u�?Q�L1>����6�ܹ�%�.U)l�fm�h�q��9��N/�����^X×]*�!��$lT�{��>������O�l�͈����yg�_�l�uې��&r5���w^��"�ֆ���޸��Ó6�h�oͳh��L/�o�MuS��C %��H�D
�'0EZ�A�0l��s=�c,.�e�ʅL��':����H8(��gn�����
�u5:����%n�^���I(Li�`+�1�J.o�n���ܐ7#bm4onhC�-|����f�F�&�_����������lE�ً�M�;���("f�~�"�V�\P�EI�XH�
o�PÕĘHgc�b(謇L��Buj��
x��6a�DMj���"��K�����޾�Q�A�����R7�6u#�!o�6�����'������nt�(Ը�'(}ȯc�v;jX���J�36�17n;8��#7���]?�1]�Qc���0��h>_a�;��K����k���ov����O�����M5��.a���{�xYW�a�CF��F�8�J� ���V�ёTgSC�p���
�-y����ru�P͎U��	����T�}�>��}��`j�XM�bT�_]��o|��ϰ��3g��Y2T7��
es7�A�\��R��r���EW��X��+�ݜ�&ݝ	ŀ#'��C��)ź
�-��m\�6\D�
 
���md��Q����x��w���yy���mv�횔1ܫ�k>m�o[Q�{��c5��
F��ajҏ�\|�E��وT�
vz��lFQ�5��
4Y}k�V{kn�c�8+%G��	�������V?fX��;���M���U�b�V�p��
b)��`SI
�*I��L֒ԍ��,�������	J�RB����%n��^)�ƹ�E��=�`�5Ia��0�"n�B(E�8B,��R�oK���7�~
�x=����{H0��[���k�3���o�(o�������iC��H�ۂ��YHI����ѹ�?9FܼU�G��º��4�R�ΕL^��OaI�-��Z�	�ai�S���b!���':?��H�25��65�/;R��#�	�D��#�HJ���<�e��a�~	jR2��t6C�m���6����a�I�2���j���@����Ϗ��=j�@ͻ���+k?���7�瑣��џ�!iDt6�
A��f�ӻ1����^��s�M��85]]��ڣ{�Y�FRF�K����L\�G�9bï����_�?���_�˘�3Y'n��6���,5H�PnM���5����[C(��(�0�&vK))�DKDc9'�9x���n��6
�5�!<�
�e
q�����-t7��b��-/>�'l~|�c��#���KO#��&WK�j�e��"I����47�#$.]��pCI�Br�8
7�����q����N/�S��� a��A�S5�(�ᙯ��N"��
67cp��8i<�<���ɹ�f��/?y�Y�6�����R�;S��F�}����렆+��M�T��N��6�Ҩ1�qhs�sװr7n�Ƣ&
�q"W�
�9"�G_�/;����?��x�W)�,�x�5G�׽�3]e�]�H�ۆQX-�!vw��~����8\�|߳��y{ɔ�ߚ�H:v��-G<�U%�]�LH]*�l�N�I�����A�o�pq<;Q(��
c�t�:�'O�pt!3��F�����}*u���RŦ0ؘ��p��1�0Ykؘ�anȐ�]D���n����rC)���^?�;�!��A�z�?�k��6�CM���T�\~��X���.�l����#��y� ��m�z���T�V���2c���8�}�ם���T���T0��{�)�#&� ��Ig�Yc�+y�iv0�Wy�F㦅�6��Mg��1��G��$[�RepJ�&�cJ�IK��m�Qˍ��Gk�nyC�5q#������K=l7�#�ѧn^|�xh㛳}�^gC���ם0��'�N�Vs9$�q�6�!bq67��Q��$��|���$�'1��Z�����M��g.
�fpM(3��ȯQ��0�F�ž�-���b��	��W�!�_���%�
�8�Fp3�ա.%�FŬL�ZƆ���֑�Y5�?w؍=u���t(��扁�R��!o�l������a�7X	z���
�Q������CER��n���I�6R�Jr6
^������uXca�t�ٷ2�ե�by�\�@�T�V���R���@�\5� ��M볹�{��:"Ϻ�&���W����a���M��It0�.J,�p���g�;yX�������O��	nT�>:��@�@1)z<N�+GŪ�\��F�Mdm �f���hm�qs��
v���y�{����nooG���KԐ41g��:↨q�R��	jtʦDAw�=�\&�)��
oWgߜ��;�[�	���PM��� ��0x~�AjZ�	���������z)O�A��37t���9��w��ɚn�{��A�����n��;%���SDN��qx��k�C�8�n����Č��0I0E܈�I�6��cO��?R�3�q�FN
w��5��q����q6f%�=���(†���3���d6;�21k:�+��K�!~��W�w�����j�KFM����������-(2������P���V�xP�:�4�}��'�}���4j���ƹ�!�n�5�7�yb}��Mc[
�M_��mOC#f+o�`c����I�y�nP@̆G�^���CaS.k(�;�'gs*�Qꈍ167�q���<
ؠ0U��̩�j�K��4A��co6��5
�A�K8l㵅O(l�M�}b��b�ͱc��v�7!p�>)���!8�f���Ƈ�%��Bo�Ft�{Ə"�Sx�}����:����w�����a�I�X��&K����<�JpT�dkkf��5L�2������F�26�*k�{1����.o���7�6w@��:؀6�K�S5�n�|7�&sݣ����(�<��&_Y�ώM[�u��uR�VޫW��7��9|b~z�'ڂ)�ƩK
�'J�)��2_.�~h�8�[*7:�rC)�2U�rp�L9u)�n��L�,��S��I�7J46\���Ѥn���j4����r���~c��j6�w5,@]u�f��
Yӱ��0��M�9�SFY�(c��(�t�ڌ�kK�{|��z�H�<�T�r�5%��V�S�)����/�����c��
�
�M�j:��pq�K
��a9���
��.a�`	jDK)�`'�)�Hϔ�Mr3�;���Fpí�6��yS��k�t��nI��Q�R[��3��믿z35�f�9}�޾*@��.QWc�(JP�ڸ�Q�(�a��"�{Ȇ���1����{�g���X��j�
n˜V�'�a�0,]��|?����>�jT��)V*���:���g�\��W����M��3��
n�|9�,�nK�hnN�G�D1kRx�����u)��8�l��C��Lu���h#�|E�ƊXc�)�����U�\sCڸe)�`�_���������lfĹ��Af�+7���ww3̉klڝ
6Q��8�sdu�l�x[��_#Ɔz���l�Z���.Ԧ��K%M�ty�~D��P�n�v3V��j�K�f�����m��+~����Z��&\Cd�)cn�H�X�(�@�*��c*.O�8�6dMԱ�F�*�h4Nw�����476�2]N4�؟�n�;A�
�cy3d��f$��܈�I47�`�6[�>n8�l<��l4�5D����PC�5؎�Ѩѵol-�j7؈��غ複�W��.kl`m������GQ�*�S7&u��q����05����c]	
5P�l�uT��h���M��Vfiye�O�����s>a:.��A
\�nT,5�ށ97K7xS����9Y�Ӻ������S�į|!nm�cE��}�n�F�
�
6��lA
_\57�l� ��������˝_vw��.���J��8
Y�m��V�[y���I��5��𞪥�����5���#/���N�k���jflna5��n��ˁ4—v�`kԐ5�6�6X�
P�Nڌ�.�W_���UI��F'��3�P?�4�n��Q�9q�(����ym���8V?V.ą.��~��VETt�nQԶ�mR�ƒ�T�bZJ�0y���SW��	��b101���݉����}fNs27����s�ܾ�
.ԟ�9�s3���
DФ�bo��3%�"i�>��\s�16���R��[7J'֥���h�I���p��xq7����:!u������-?�����O�s	���T����Z��5�<2@�]��/�p�K}泟���J�a���:g�S6R�����a�P(�B�_�o�8������ed�
P[k�ŭ�1m$�����\�s�R��/��s������nw��	�9_��ۀ���n.I���	pF�h�
���q�0��7/ё���a7č�L%�Ե�e)FR�D1q�>�Gw���hw��osb�&en���������G����[��;v��!ӯ���?�\��2+Ԑ5����l2���6���+,g��t-�n#�F�
a���[N�P,V��Z5��`�Ό���{�٨�(�">HA���YC��䋝�Z3\x?�"��L��`�L�K�Kܲ7dͤ��J�M�X���b�B��q�"f������9��2������]{�x����t��y��&�LAt6��w�O�R8F�n�h�Jݜ}D��ş�x�Z�/?
�FZ���E�n,g�J�
7DM��h��[ΆUo!��ƮEM�-)q6�67�Riy���Q�N�03��1X"}��A]Դٯ��T��?<$mr��ʫ]��o��w�Wj޺qj����%�����k1��~�N|
�T�:l_����֓�H�T�yC]u���et-��i�4j��Fpg���y��

��HY�eW����\��Ϭ��?ÜdI�� q�Մ�k5�em�+i�������p(icC����7�l�g�X���^ei�Z_.z��7d֧}��N�5��_±`�W�j���X����n~���ur徊�.�0|�t00us�m��h317Y�љ&&�U�9�����f�n���8Y�A����R8���),����ߕ�c�n$S�(���ܒ�F��~\��=��$�:�.b���w�y_w�!J�ߞ��o�R���q���Ɏ�Ұ1�/�ܯ��ѓO�<�a�(�}t0���=i�x2PC�`~	�-��O�ޗ���>%��*6j��Q��[hw۹��~Sݺ�5�g�>1���Pr�f2�&��(N��M2�F���фoƇ�qC�@��t��A�ؾR|Rs���<@wCk�#��A
>Ia�<1v��`����)n�Yc)&>\����ԩP�#ğ�w���ռW#�����(����YT�ب���|*J��]�R�a�
is��'����zeo�yu�^-;��a�jV�f}��F
Ys����n��|��V�rss����j/�z�j��-v�a>���Π>��/����r�f*yqvR��KT%\8�_�Dtr��3s��_�5›+�����n��a���k�io�B��np�
�F�w�O��Q��O�o��9�{�l��o����s	�N�~��[o�KP��MV����ڤR6v߷�՚6WJ~�J7�6:ALgc4�K�̕
�W�b��_�󙭏��ڠ-a$jV���٫��v��Nݩ�~�8��ڿ�č�f?8ﷺނ���c��R7]��բ�O��u}$��XJ���2���)��K�;4����o�D1>�F�l(�s];j��5�k��6čDQ�f�7D
>M.Ȟucw��!qΜ��Z�/D���W�g���k3���3&D�F��ͧe7+�·���'��T@!��W��^��Tȼu�	�z.֢�f
2����/�w۞E�UΨ:Vr���$�fw�_ʵ��A���B����zY�
ո��'�6�O�OޗR"^��)�W�;��8�����;3���0r�J�6�6\�2�9���hCMc�71p�l��k�7Éb7V���y�bl��H����Х�C�j�jݷ���d�l��j�~����bt�ۮFݨ�Q�
a#��v6�ͳϿU-�^����Ϭ��ٲ
P`����:~|^r���C?�N���`	wj�M�f=��^0�5��Y��|�~�K������dE�P�/����z�&ݙ'���)C�m�K�8�bw���w��a\n����X
��+řsC��L�X
��z�m��l�'��I�nN�La�Ά���O�d��E�L��1;+L�g$�JQ��dV���`[Q��F�l��m[��	b)|�%)q63ς6��)���Z��ķnV�46j�����_}q~�]s�0��v9�ݜ��R.���:�$�:�ʫ���f�z�f��t�އ��p�ߍ;V��v�ܺ)�174E�Z�����KL�xbmN��e$�L�����X�"k���p
���܈���l�����u�Vq*ucך6������j�il��6��@O5�7���z���&>x>���'j��B�S������u�&�%�Fxc;A
�kHP�l�zP��@��hg3���6�Z�X/����߱f1����_ַ���y�Q/����n'�X����l��#m��R��Z(�v�8��B��sgk�^xq�f��n.��39���S�~�q#������A#�A~��~������@1k snL�
�a��=е
�R#�O�l��i�"kb܈�a��r7��pe�n�|��� Z��� �NU�6+`�F�=�O��n��}��45r��g��
���&{��C��8�'�%n��937��w�:b�es�&��X��ȍzw���ۭ�aϏB�A6�Ǖ�'�������v�wʭfX��]�5�A>j�MI��Y�{]䒓��;��������#nE�5ȉ�����.�Ry�{��Q����ԍx��8�6I���vM��βT�I;H�f:>�aop�
k���X�͍Ǿ�ǥqÃ��'�Ը���k�š�P���Э�7���Jߖ��jX���x�a�$�ՙa�L��"gC�`b�b��Փ7�?���خ&��U
�#������Dck\׭���qr�f�S�7�����;�\���M]��C����{h�J���y��4m �R�����;�gL��Q���S�4X�
p�7�6L�`4�U���8I��������y0��x@�7��
�(�;��n��V
7){�,l%�R�1j��=>jn��%i�5���Y��(�5���_��F�8�R�.G�
�x„f�8��7/�6P�C���qWW2�‚���mֶ���{{��(
���v¶D���l��
��̻�z��
�n�xݾ�k6m����N��U{�K��v�B�C��v��nǸዎ_Df��IUj�b�T��MJR��bH27��+��
��/�
y��
�kn�)�fX��D�&�� ���(��fD,ee�E�qs�X괏�B�����(cC�X���l�j�7��(��h{þo}�F�Qv�۶63��!n�|��g�{~��̥R76ktԐ�V�mt<�z��w�Xߋ�����N/
6� ps8p��w�M��n3�9A�r��
���n��O����H� �*��3���T�5��6�FŜtck���gl��n�;�B���5�5j��27|�!]������V����66mDB�~N�Ʀ
u�A~��u_�9-j�(�p��}V-�g��s����:Z1qr�8v6�p6I#��ҷr6f��‹s1n�::��Ѷ�֬@?�6-�k�� g�5A���^g��t{��ۈV;~���*�(�k6���N�2x��[7��n�/ ��q%�v�7����7O�0us�a͕�
�
q#���&e�S�.���C),�
Bd�� U���p')K��H��fh�V�֍����K1��i�,��d��8otaʲ7�p�aA8�YJH�|�_\���,�nN�&j�aQ�d8�3����"ml�lg��V�>�����D/=�r��yϫ���'t�ebkkF���W����z.��(���}�m"�ẍN�u��v3:��0�4��ڍ\��]g��o�F��6q��y=�#S/$�'Ryb47��&m�1�)�r(��h���i��g����,����ӯ0���#�)17:s����0S,�������o�8Ǽ�kp�.3�7�n���j�揋nU�ᔭ�@�������b�66�B
3���l���Q}��
6�l���n�X*_wf=t0�Z��ek�4���Y��Z���y�hs�q�|���Ҧ�w:~'��F��W.�6k.��;�Y����j�I�ܼߏ>,c���+�;JU�
�J���������k$�,�-a���g����CEpv�K���a�>Ԕ�i�J�I�F���K~8S
S�3<���cl��4�~�;AM��ƍ.M�;�K��px�s�,l�����)5?��,��{O�������w��n�I�[ӳ�n�L�6����7QC6ԋ�KTq;_2�q\�5Hs0J�m
�w~{��}�g02�������F����f�B�Y�v�A��G��}`�i|7�F����X�~��1�vh�<�r��
i#yb�&�O�Mnx$؁6ҥ��KS�)yni�$k�m�I�K:�SSѯ�Gs�������q�X*q7��,��n ��d�2�31nf�n�~�o�~�k58�ی�Ś���66��m�n��Ά���6n�lS�F�m���7m����6��/Ʊ�\���|&�wH��Q#�Fp�U��nb d��6m|�����q���﷚^��u�����L��l��t�Q7�tۭ���L,�&�ά<���	m(FR�khm&��Ӽ�2��R�ub��JhC%�`�͢��I~*w�e��	��P���"�be��͕���<�
6�
�67���"pb5����1N�g�^<[��t�s	����(@��
xs�R�U�KPc�G�J�"��`٨1�mRC&t{���ߚB����4nt�&W3�����	l��x17bl��^�
�(2�9�466>�t\$|݆���M�����Z���7��l�5d͚b�1m>�M�O���h�� g�m2%�/���I���`Jx�N�+����,�p�є�usv��Fg�L�����˨La�*S�(k�
�@8�o�a��G4����k�|��۟���ss?�5��K0cV��,��0Y����[�%N�'mt�F[�~��삔�D/�B�T��r�/b���
���7p#���(2Y�N�r�n�]�h�n
�`cP�P�_b�VׄN�
B�~��CoO�&�k�-�������m(v.��5OF��"���&fNٗ��*�hmpJ��j�F�*�
SLq	n�l4n$m��ep�&q7D
S����nF�;'�FP	jp2�o�>6j���W��TVxlWcgl(����ߌ��(%M.16F6fx�,�ac��߶�Ѹ�y#�F�n�
޲)�W
;�M�.pC�pC��GN)������17n�DP.�F�(���o"\���F&]�����sv��l	j��(�{�T1�r��g`nt$%���4�"dpbK��ꖒKK�Z�q7�Io#�C*����n�87X�#�H�H��DS6o4j��I
��q���+֌,��Hp���͖�����ea��/�d��)[�ʾcc]�;՛Q�r��M��=��<l[�at��?S�f���1�y�{��5*q3��I,��W]v�h��^m�FpC�7����A&��߄�N�|�"_���N� q:�Dݮ�v=di��~贍�Q��l�[+��-�_�K%s�x8o#�>qIj�f������tt�CՌb2�F�5|�KwL���*8[4��7�L��no��8q��Up�Ӵ�j���n�j�3�m�s@l��fL,�x�Z�O��U�oյ��v��C����´KQ��dJ�,%����jB�^d���6���8���28�`�O8f�Ċ��"�X��V���F.��(�����ёi�l��?�>�v����n��.����5�M�l[+�%�n����\����%��ɖ<�+�pߧ~!ǥ�=;�MK�m�*S�F�G͟й���3$
)�&	��8�TǔE�l�mxh�ޜ�圡
�#�d�ۤqCIܮu�ɚ_�F��c�&M;_�Î���;;�C(�SX�ot�Ff��G1uA
�IX���
$�Ѵ�zQ:j�_�_��Yd&h#��;t��z>��#�tMj��|���nt1ll�G����4{�%.�v��qPC�;K��a�+��k��Qi�I�&�mp|RgP%񔢵�w�p$p�b%��a\O� n8�OhGSR�ks;�� hc�
~��ݨXJ����
��a��g��N��R㍐��=�a~�fK�k쪷N�u��(mlj�ٳl��9Q�p��*�u*k��oc�ml������]�Fx�P��W
��M����,m&e�M���ͯM��k2�Qc#D���%U���٨!n���^��x� `R�����{����8Yi�F���DbA�H���͐�����ؐ�v_cܕa��H�dh��q!�Ί�����U�ET7�7}���3�y}s&/���������i�=�P��(��(Ij�p�����7�'v�F$�5�n�n\<�X��K�h��27���n�.��I�
I����~�;��\��N/�F��1g�c�E�J7L-J:�tcTz�����,��q�+p6�yH1uS�x�Dv0|Os�i���捓CdkNO�-��i~G(u�^=<���С���������A
�.�X��/;�+�Vj��I��e7P���8�KIx��
yc�
��c�*87AN�|&��Fx��}")ȥ���4��i��'NJ!\IX��穷�@lO�]� i��
ѵ.%�8�/���653��8��(A
d��6eC��K��4�4m���>�ͽ6�"%iMH'n&����M�)�ox�Dn�;��$��xcۥd�]�aP�^��9��=gV�;$���:���2H��‚����rq��/͍�H
�a��QT'is6���5��Q�F>�����ǽby�n��ڈ$��Ȁ&�H�MER*Q̑ܞ)�Z,- ��[O��EȐ3�G�oM`}��Wgk�br�R붸1�s�����f�=ġ�
�A��F��J$pc�
R*k#�����(�L�
�M�\
c���,:��K��J,1[�t��[k�����Tadv��v�u���A�f����_G�EԜ�6���fe&���
��q�ۜ=M,�)lR����ϸ�n6�aK�!nH���t!�˗��ho���5��Ѽ1��4M�'���M�--��q��p8��ȧ��5�����3ɤ�HIshڤ�E��黋�8J�m4��/H��M�[�J�ͤ��q׏7�p�f3��n(|�?�ab\�T��Talv����6'O��R:��N�jbYa��g|�U�fr(IAQA�����i�7�(y��A�77J�)ּa�Fݯ�{�U7J�5SP��RØH3}��
R7&Q����0����ɸ�q�mL&u��MQ�|b���|DM����jL��`Ơ���Q�޶/
S�f�&��F�[�k����-^knl�a�x �Z�����::&w��xk��ak\�T����T�ZEMj�Zo��S5�_�G�s��q�'%���5�W�[ ����ߘ�n���%��"j �n|�X݈TY
đ:�0pC�H���F��D�!�ln2!j2�qオ�0�����t���b)�l�r�����L����|�ؘ���gl����XI���C�V��e�{��W�lUJ�rT�n���,S7��nU�榳?���uk�^-���d�28�H�`�Z]��i5V�������NղHg�+�ذ��oA�gm8��`��7��H+���F�M߰�S!o����SP���������q�EІ���No�0#�����Vp�^�Y�$�s�
�u6r����1�fYc#���麳�uu�Q����]�'��IٚT���w0�[�%��)K��FdK۷6���1n=Zn06�LP�UO�;�n�[G���E�����q��ɴ�8��tݙ��%Ά��'o�A��W�K{��c7�^Lenz5nt?x��>����X�F[,{��c�F�@�h�p�����pk2Oao8�$h���ORS7-t@�`Z��~�4cC���4�l0mz#�
���|�>��C�6k����������{n%t0\��ί5����R��bYX+,��f�����PΕ�W�zu���f���]��
j0Se����r�\q�����6QWO��ݒ��	�\���g���Č�͝r�Xδcb�#<nn�67�����`aj�ܸ�dO�y�`��I��Ƌ`'�X��8��4:26:�	�||N���4[�A	j��&��iv6Z�Ҥ�.�a�,h|E�h�k�6Hio�nn�6bo̩�������J��Q%�g���B��)��sqʹDN8���5��O)@��k�9�finn
���'��ڀ5��6޴'�P�!�)Ni��ҝi��t��4E�:��MSe�_����8�D����֥�Ru)���\k8��O���q�yq�0�����ی��>Fn�GM�35�^�U�G�n�0a������Y�8�m�0�p$Nt�H�[č�6��ё�O�h��376����|f!�{C7�ˇ�T���� W����r��������ֺh��-����W����L�2�P�ǟ�{�B����tu�Q�^�4�'6%&m4n����σ{o�+K��7�G27�L$�n�ic�RАg�!��qy�`7��
&�qS�
'��Q����G�`&��m}�B
7!
��3Sd�9��
��]#0�רaQ��M��>��I�̈́I'�n��󙮃��7փ<�M>�A��a�a��)h3+lQ��F�XJKs��%ؽ†qP�H�B�ٴq���Ʊ��N1s��L��`�.���m27�����4��>����9zC���Ѻ������c�ΐ$oܗ!�&Nd�T��q���o��i1u�k�#\4�A�=�g��4u�V����XZ��]�����a�O�ٓ�r�O���y������r��F�X�e�@!`*����*�.�0J��5��5���q�͒C��8`��MX�l�S�ڴQ���E���$�ɅM1�6Lq��C9@�����4en17a����ކ����W���7��:��Dڀ1Y�"�.��h܌��'r�No31�2�m�f�4O�Mp�P�,A�ؘf�J��
Ԗ�0,i8�b�oA
�Q�I��(�%�5pM���n�ەٵJ�{C�X��aF&@�;��M�8]XN�jU_ߜ�_-[�ܱS$k.���
lE	k�:������ݸ!G���_D
��6�0%�i��c<�۰
ڠ��6���L��g�/Nxb�1����`s��&:hFԸ]4�_�F�
'�2x+�IѠ
���1�����ޘ)qTZ�K�����g�E�ۀ6�.�*ƛ4�0WLMb�H�\>�����M�w0ܼ��5?U�ױ9�p��)��h��/�P-f�yAM��q��~���o�M��s}�K�>)�T����0U
?%���'����чn���
q�	{��9��37Oǻ�.f>�r�v_Ҧ�������z+���$j������S2��7Hݴ�N�Vr�&�؜�|˩o*�P��z�9M
9���h��FR��m�7�M&����n&ݐ�Meki�]>Q�)����B��丱��R�iM�n��άR!�_�\u���y�'��ɚ�6���
Etڴ�X��"�ȼ�+��I�>�=�6�7�T1D���c,5���''��r�_�x��j鋷I������M�)�Ȑ�M���W����FP��B�Y�r	,�.'����Uf�*���}���F̍�^P���S��qCR7s�
��թ���rqaa��k�o5�5-����:�,�Y���ak�����S}<��8u��8�*8�C�H�X�D��7�Rtzm��?x�fO�r7�;�4S(K�R��%!
�?�G�|ve�!m��Y��éH3䖶7ҳ��q���9�F�f��sA
dQ�lb�1=Q�Mᴌ�N�H��0x��
�lm��T���I%�s�X7gbJa�7blܼ���lTf�3�.�b0���-@K�A����iU�m̠5��8�������j���r�N �g(H1��Ϟ捿�)U�b{J�t;c����4��~DS��sÝ�{��y=WS'lB5A�S�^;�k8�0����� ~�ݤ�cX!ed��R�|�?YW�Ͷy۷v���|�~q7��,���LV%�����̍�F��K��Ob�6��>3��*��]�^Zv�il_wk��~��l�0���ͣ��7���l�^Gik�չ��]I_&7P�_Ќ��C$�Y����ƍS�7M�TNiw�	�8��m0=o��ymhb�
I#ֆ��د��&f�����7���A�(ܴ�֗cW�,͠95�-�,�}P�^r�6�+*�1�˭f�4��6�"�DR�4��Mz]J�
PC�p�n���R�1[.7~��>�y$/0��5-����m�f�Q�^�PS&j^!k6�����gӱ6m��N7������r����E���!o�����M�����M����l��Q��7�L
�԰��O`�~mo����#)�F���#�D͠P��� k�OZ@͠�j�6~(	k����D�]��-�٤\*�=g8�
5�?��7�ܐ7�,�Li�L��@*�\�7�S7���8}�{��"g�i�;+L]�Y)�.VJ�ŵ|5����k�@wF��9��}r�w~�|���z��wC�@��)�n ���oT��9��G����T�&fm^j"SC[�_gv�	�Zmw���{0��D�(e�2����h���#��㳡f�$j�[�N�����.�M�6�攍fMCq����~\�R��Fp�ŗ0H��؈���Jk�\1�o�9C]��i3+|�P.�,Vf���@�f���^�?a:��I�G���<ż
��/\�*�Ϣ��؍E�n��
���*s��pk�ȁb�L�����l��}��>��zm��{�����_�2I��5Ag;6
�G�	��K٬� ��q4\&3o�4��o�5�5`�z���al���lH�xa<)�a�7
7�(���䊡K��Qz������it0|�t
������Y��Z�A͇����|��2�Fh�SĐ\4�y?���X�l���pH��wwsA=p��|���a/��Q��+�L�7B�>�m��+���S�j ��`��V�����&�F@3�`�1�_"�C�]aܣ&r0�i����H��>�)�
Q��!�u6��`&5*�(�ؐ4�>FyMݻp��M�@q�����Z��K�6X^r��j�1��37~�k�h���&j*Y<�=S5M�\|
ǎ5��$�Q�mο
.�f�քREpQ\aꦛ�F�ᄋ��q&Zbn.p��F��/L���F�Rk2�W@�Z��qH٧�!jVQ�Z���H�^`��R/Y_	o0�e0rj�y|L�(���_���a���g������;l���Gl��p��
Z�
q�����]0�i27�6&��-���\�s���@�,�O̮�������@C��1��lm>_j�esE*�P������E�$[�G�zT'�:ǻn��fp7��P���PJ�6�V�j`oT�X�K�s�Sa��i�;����K�7n�9�A�6p5y����������jn�L�8�M�2�f@�Uhq���R<���N�G4��������C)W��{l��5�ӆQ�K���0MQʟ'ָѧn,m(�
���j0�5���nKm�|��7_��6p[
��j*�\����3�]|=�5��H�s��\�3�u6�)�o��b�lJx�/��:w7'�MR��hl�l	�5p�aU*��_�g��R�
IC[�?+5Pf�����W[�o��Ϻ��P�^�����pS4��j"�L�ݐ�8X��a,�jbu(L��ѽ������~$(F�X�R�R�*e27�nR7��
%�&��`n0��q��3�7���$G��fsh�o,����2��\~�z��Ѹ�w2I�!�DR�0K,��Y#�Q]�K��qĤ���B�$�FE��#���L�v0;��:�L�s1�5Q~'����*����V�++5�$q�&���U���P��0&�����a�l�I#���a-�FGQ�U:.C	q���D:V��x�kl��Ѹa�Xpc��C)'a�ێ42��xgk;p��o|�z_��k�,4Js����j�}�I�"j^6�FæӲ�{���X�q�V݉+��_ �qԪY�\(�:ua~L�Tg"�
�����5K���B�"����;���{����g����w_Z����{���Pz#�^
��|�6S�豎����u)M�pJ�RsâT\WԜ��خTp�(������.���;kkP07�`����U��5��%K�ۀ/`M�g�k0e(p��29�L�����D�w_j���f,�2�iޤ�k󍩉b��f�q27�w�
y�_�`*o�E��Z
T}y�"�gV?�轫+@Qs�n��힪���1j^��d��Q.i��Q�����r!���>���>?��Ķ����N+R�bm��9~rv��O��l�0]�:�o%7\�0���|���Jg#��6~£Ɔȉ)��F?�9��q��o����8���\������u6�cL9��+{rq���)Np�2U�q�gm�������߿���N���6��R�&jj	j^|FXCi�z�O>C���f��ᅰ�.`�/Z�A{s�
��1�Fi����6Ar������1g�����n�"B.��L��׌���|��jZG���u��(�1C�`�S o8ț�BG#?p^-iR���Ɨ�}3��R8p;���=yXG��KY���M7�Ӿ=3��A��
�)b���ܼ�\���؞�XA�����j��Ӎv�4�Ռ���|�]�lhm&��V��X1y�p�;�k���MӖ6�Yt�
�r6��<]8Y��.�v�MX�6��L��F��G�f�}��Ɏ>������)�8?�+��q�EݍD�',:�0@^�ph�X�P���Ϛt�����P��>�54�eA�ʼn��ΆJ���F5���;�nR�&�d-^�%��U�@�"X��2����Ed�C�uQ�̟�7�U�
|�75ŗ���;��:����=e�/�A#/�n��48��z�4I#��z+�3����y�o�lo�6��&$�F�
W�l�F�
��(���:i���	��W���\z�kk�
�@��	����6���QԸ����0��q%oLw\�:lP���?4�#��V~���X���L�X*�]���
��>���J��qޘPj�^Y����܇���^�J��ƹn��}݊�h)m\�&��@���5�'��tq��
N�5�����!i�R煊�����N�]-mo�%c3hT��EE @3G��&��/u�5��V;���(�EQ�!Њ�n��ؑ�&L�dx��ᐩ��7Ō��
J<P6j O�5��X�r�F9�ݨ`Q�	Ð�/(�݌5�g����31��n���6�+jl�f���ڇ���{�v��ݞo�O��W���5��"��i3q6�F����L'S#u�!t�!���y�\eP�@���fK��j�����R\bF��A��2�����sDS�
~E�k���䆣S}0�V����)�Flh�p
�	'LJ?a
�m� V��c�
F΅���;�I��ߥ����w`r@y�(�5�m�x��*%����R�܀6Og7L�2�}hcx�!S����JW��g?�AM�=�0�9����1���!k�F��fүp$"p�1r@���F&ؘ�6�+uk�6@�+���}����]A
ƀ�Zlm�oX�s�Dž���Z��H��H�f4��;�>t�\s" ��]7�;�7|�8�a���@�`(g����|i��jݹyaRVQ�'�X������*s�4�g."zX.���ɏ�,n���ԍߪ���y��z\�MЛz}�ٺ����/2N�A�%���E�ے�m55��5?��&?A<����*	��`�[�r��^�hnH={�j��I�F�	�[S��Bl��K�����nyF�j��
7���;�Q�+�˧�A��8�2<�e����!K�y�xB?	Q��‡+�'�j���0�C
�k\�%�����o��X�mqjf����U�'H�
���Ø��7*�X|HH�Q|��We�B�!R}e�u��{c��TP3w�l�j5�V����P�b�M��w6�_a���(4j��LO���5�J8�(��t�܊����U j�N5?��gn�Ô]�2�}|�7��q�ڴ�h��o������;%�9Uo�^\Y^�=��6\�֨w��h�7�4E�,�4���x�{�=ir�5�5��N��_f;���
b.��I�
�����n���g�8����
�/Rq6�
P�čK�P�K6LՖ��]~�}��r}�g���N5�w쀊Q��8[�>�O�h��9)p�?=��7�D��j!ys+$�a�B��3�16�R�ar@EXKa��:h�<M�Tg�W�z�G�
ëA��/�땳�+�Cх��4�]�L@e�D2�6ap�rL��8�NNU�rN�"k���T��-�Y5o-@j E��r���gn ����9���C�1U�qD�n �F�O�\�o�^�ʭ�ݍ����
��Kt��ҡ&����q���`39?�(����A3S��9�G^\Y�J2ķ&��'J��~�@��.-oB�j��a���=�W#P�]��5�V
���"�!Fy��o��\�5��D�>nI�/�EN�;��d�L
�•OJ3�1��WcQ�i[������Ɍ��8�0X�����o�����C��n�%n���}�6B�GbwCڐ5E�S��us��8�h��4<�Ɩrw�nPB��@�>���a3)F���p�w���T.o������5�!gs��'J��Yi~n����,--}}�	��:�U(6�
fw���zu�V�Uk�^��p��A�f/#���K)n�ıΆü��<��2�Ɠ���0NJPY��JT�٤�Y��p��#|��Tn!��or;�sp���
q�h�
��%�������yh������5�s/�͵��5�5��卍Z��:l&�k)0��Sc#��8�9b.�߷ɸ59#�Q�u'�����Ɵ�l��ll��A�JEa�gk���Ȏa&�M���ڪ$hZ���`�j�r���9���t���Qw�y(=aq�/��R��1<)А2٦F�L��/����DP��X�Xc� �5(�����߸�����|w�ؓ	n�6��dn��GH���q����8|B��n�jM$���5�s�[���_���96(k������Q�Lnབ��4�	s�<���K�Q�7c�
�����5;�����l��k���3�RXӬW�wX�A�n(��'[l�m��1nR�Uk�3�7x�����J^XT^(�����5J��c	h4%����53�,tsd�]bzW㌍�P�@���
�㛇���)f��fp(��S7��x�1����v�>���|�"o(ō��U�F$b鯪5��42DdMR���
Z�Jw+L=bM�ϱ�a(�������q���G͜�E�f;&
�;K�Í寿t6dC��%���A�;.zK U_��K�
��s?!����7�M_"(�F��f(���9<y����0��	���T�Ɠ&�ƺǮu6F��(ά���L^���������)sc37O�ܐ6`�HC�GD�������y�dQ)lBV�5��IJ�:Lʆ��l�NS��33�a�I�l(�c��4?�H�f��,���+]i��Q��5��Ba_t��e�_��X#��V�U%j��i�k^�	�f,u<53Y��L�B736D\g
	c�⠙���űƒF���4x,i�����M*��7]+^kl�r�<=�n�<���1�y��
�QԘl��n4��m�D
�ʘ��Q�3��}�m6���Q�o)�t��l����5AԜ�-]@[��Ɵ���&��Ͽ!_� JO��m6���
7��\���ڜ~۪�0A�r���&k�pc�
Ib�C	�x�O�9jh8U3vJVx&��#
V#
�|�ƒ�������\_�N����G/�ru)�)��g>&��S�7O��@��iC�`X�P��"y�ƛ��y��Z}S�Ojj���1�/Ei˷s66�˾�JSaIPq����i���%����=�A��4L�(��<\o�������Μ9�D��h�Y���
�V��i!�jt=jJ�jaJb)�&!	?مo�6r��#`�?C/�ؘ�2�ȉ��"����5V��a.n����F��a�Bh�.Q�p������{��'������
E�h��*����aeD3�����Ą���5��ɯEM�������A2�!mhl� ����h�i�܀�!d���]��F.�[�uY6ܲڈZ�3���\��]
"��O5���ꥩ�����ۛu7�1<$
y�f	���>3����AQ�
ŷ�y��/���]÷�y���=�o��;Zg0��n ��І�Q�p��*�We��V{H:~PW#��d
��zgel�a3}����
~���p~��;�5�>�TM��7��P[[�w���Lװ�-�K���ݝQ�:s����#@Ѧ�0�m��Obk>�����8��Z�K)Fe�$ihe�I��&c�E�Ǚ�4��8��bθ6(���_|y�|�F�W���¢y��r��権�s6����
���M6oB,7�}��:E҆"i$[�	i�Q�-�gl�	Į3jr����n�ёÚiLJ���N�
}seo{�;�&�fB��"��~�AyJ�@���ū<4=QH��ۋ��$j�(iT�aL�̍���EG�;XA�����Gx%�&!����s[k|�J�q��_��;�9-h�����qy�(p��E�
S1l�X��)75ELL�i4~b�ƒFm���\Eu����,frrĤL,I�5����@�6W��(l��˻�k4�zm@�
6�5�*:�y�n�@�����W�;��@\
m
V�o��<�7�N��q��.2�)w��25zi�5\�a�5.YsG��P7�!ʜ+�Y�}�
�1�lw0������ �MNa
�T��
��6�
UL�����	�7�h���
�\����Y��P1k&ǝ����ju=ݦ
�bႅ��
aIά����H����孭˗��MQ�
Ě�ڗ �ۈ�t֣3�y�-18�O�
�����DV��!07h���񢏀&���pI�U#�h8ٚ�\��B���g���[�����՛k�FSvLeg��n��Q�İ!n��(nohoT7����	(\&nH�PX��q�&�5��_��D�Z�-�Jj;�-,C�T���_{��e<��~n�Q���d���əY0:�4;�V�M�z����M|B�F���c���0���a��TAm�匾H֞0u	���Q�UH�%�k���Q\�����V��K�e�R�l��\Ô�i/�˕�7�6�M���S����jhH��h?�e
c(�k�aE�
����/i�"5x�<���kJ{�jD��6�`f�JW�LYvw�:9���r�.^�5x���(J��Z��8���+��!IpC�pu�b�#+��?�Q.z��ɋ�Q�p�H[.�4Z�rw�p�*��G
fvőB���ʤ[m'����>솼��1��?�����	��(d(f��s&����Ɵ�g��Kߔ��&�9z�7V��޷faj����ʕR�-����])m_���oA��n4��&�"��z��5�ᑈ���sCԴ��ŕ�rF�|8j�Wi����q�R�h܌�=|8j�xS)j\*�w�P��2f&jDq笫F]r��٦:�ӱ����i���S�+m|4�"�� �)���
|d
���_�����d�����k�eƝxCTD�R!^*��DP7�t���
��δML��$L�i���N�Ði&�d�L�0-�B
Q�ʀ+W�w���N��;�^���<�}�o��x�9�e��FD1)�}�~��J�8[�p8@
��MX������6�B�
g%S:�؀BS��c���	�ft�?,�X�h�5
9�ښ����8�iH��^d�F5�ię��*��  ol��mv'5�ˇ��F��p�i[������&Z(~����+2�.��|��GD�8OcPcX���ZUl��]6��D\S�zϚ[��F������lUP��Y
�&17ހ6s�F�`8�
:PߌB�$�l@�dB@t��#�Tah�X��j�"no8�/�T�'o�
a՞4;ps� ܦ���X�x�.���F\�&xd0R�Q�$�}2�ڐ
���+�
iCs��S/ǹ�W$7rA���
#���Z��+�v�p󴷿��s�$�"����s�MXƠ�{����s��fNʬo-5ΞEe*�Pr��92,���֋�0DYk�jT[�t���6�L�v�ʢ|����D����}A�А5
'u4�J�裗�ň{"
�+!Ɔ�Ng��!o0���my������
�
�
���
di�@J�W�8O�\
�D
��5DM��Q��g���'���Q0�	�4p4����lm��.-�M�6Ӎ���Y�2�8�o�5T�n�����R�A��:Q��beI�_=&P@L��@�H:��ߵ4�����j�6��p�uK�
�A�Z
��kC�7�n�Y��6���N�g�xܨ��9xT����7��8�g�>?�W��Č�!�+֘r�m{5�7�uu����^��P���QHc<M�j�ZZ�B�X2���t���;uThl�C8�	e�VB�T��P��q9)�E��&w�/�7�GB>{3҅r"R�/�`��D�4�˞4\����fP7��`�7�I�X�3:u4z��_�m�'�"���lL�ƻ�7z�p�aH���4or铲�eP5�͝��ޝA�W�v�e�C�Q�G�FB;�\��
3'���ɡ@˘pM�:,�m��p�9/�����<.%j0��ap��Qi�;���@_��&�N��}�\����DŽx�M�`�b�{�֚(kڼ��O_�l�z>׈�=�����XE�׈�)�����IQ/�t7�����צ^h0_�B�pQ1�0l�P�Kl�T����鴽�G]2[������/j�j5�	��'bƀ&L��aiP5�Y�}-06��~�Ia��-|^��=��R] ������Q�8�@U55d�P
I[�Hzd�I��
|�h<f�И�n�Ç��i�i�A�'
B�j\���HcA%"
o��g��ڞ`q}p=0Eݩ�F�
"�R�F��Q� �x��DA�ަ�mvش66]�jԥk|uӁ�?/N�/I�RҬ�4��Lc�kk��T�����&I�g6A���hJQ�3z*��Vw�T�EL��B�R}3�
��g=�5�"(a�DWcP[�۝J�	�E�L
�wJ{P�٘�wŸ�4����Ln̍4������p�
���X�@���W�yQ�Љ����&Qjl��jT��]�"�.�,��?�j��nq5�O�`%kHG}��4t�8+P�)�"��ɣ�P�PH��D
�Y&B��QWcq�Qj��IɃ�}#��&�2�˗>�����d��iU��}�pC�hx�ō��.�U�wBH2E��a�Zw���n��M���I�ր��8czP�����5<�ڱ6{���c������d7�
��Ojk~'k�i���E
W��a�&9,�n�FN\f�fg&�DM�N���6�T�Ya��&���Mǽ)�3�M*�IOr�M��;��p�E8��Ȁ�_w���Yk|�FA�m
Â�:�R�ݸ	@I��0�߄��݈��Ɯ����yI���G1��)�_�q9�/�DZQ�}��.F��������=uZ(�fN2�1\������-��Jxix'!��&�G5��5�(n��hP]s�"P��i6?�_����0��+++�2ҫ��Ǿj��&PV���Z0V�Դ����m���m�kʙ`U[��ٵ���ݠO)�_#nL�ƹͦ���];Q�I�x)e"�q��a�k\�[h���ҷ/ju�
�ō������6�C֬ͭ��5�s
������j�����
p�=��Ҧ����Dfh��%�05E�j�R�!j�0�>/10/�g����_���
%�U�<���W'�j�5�.�U��M���3��ol�0�\c��xfX*�=jt7��B��FqCڸ֔�PB�x�LGokڳF}M���4�����B��N���2���"zݦ�ďi?�I]W��6�C��B��\�H�����P��y�F9����dmLņb�f�%79�ҦWo
>��!�3E�|7[����'?c��
�����O&�ZM�.>���p��P��͎7����]�5T���47Z�kn��FXs�ͥ ����@�
B�N3^�ٖ4�ָ>YcN{cv.��%q�JJ5�u��3��3��6�F�4�x��}��Y�5ʚ��XN����(ōޏ�0<�Sq�Ҕ҆c"bn�7u|�f��Yɟ�O�p�1OZ��3+ 
PS��<9H�p N���&Q�7���leؓk{O����C�}�%�6���U�55\����5V��,17|���iT�&���ٹ���S�
�)�`!_�ӑƳ�٫��j<knw���N3j/��uM֘��O&j���EUׯģf#�t7C'��tz����^h�z�$Q?΃6À�Vo��`�f�T������֧IT���&�z=N/��M�Ӝ?1_B~�/Ol�Fq�y�'�BFF�Ǹx�(k,h"���5��8_��?���/�Mr�9�v�zM�a��%��������4K�M{���h�����4�q5$
]
�c
��U�t���sq[
F��+t���ru}��/�V^X�մ�j��P��i���QPEp��"m �SÂ�$m
3�57Xl"�I����&�.>\�a�,��̔�"i���rz�����y�]�606Z�񲍧�G���01�ӣ�?
�\�߾�'�� L��=	�;���l�����@��P���7zf*��X_���4��t�cà&�j��5-r(E����B��\����!S�=���rfe��rƂ�B��4$W���)���
{B(luCH��'�A9�3�,3�55)yW*�d�&�R
�'�OE15�R������bJ�2lj�ゞw>g�<AÊ
7��=q�l�
F�bM[g�oE�(��O�-�����6�R���F�ͭ,?��	MmM=�xN��A�(/�P�0b@cH�;�5�wh
�
ch#
��\��Ң��O���k����2��ji�X\S���s;`ctv�i`R��5*!��g��I��e*�55���D%S�d����Ԩ�A�������a��z$<T>РR3KS�+դ�M�h��!|�1�n�z�Lj~�InL�j4}2��A9�K�\<h<i,o��ݻ��D��ō57�scn*��%o�� 7���U�BM7m�d
m�)�(k��FTW8�.55ᥒͿ5���Ņ�z}}���o�r�t�
Q���6Ks�4��FB��=�&m�K��({�41^�TbES�IՅ6AiXMM_�p��8�)��Ca������8Ic���8��\��FkŠ�25~�0�75\��q�Ip�sG~�Æ���/ک�Mf��iL��n@��7�
�
�8Y�r�͟�%�Pc}��l����P{"�HUt6�C��ι��ԋ���c,f�//l֯6p��4�}D$
fߩl�⩋Y�
C	j���Y������1��TA,#���Rd�	��?��&2(�4�M�
49�)�{��I�7�(v��;�>g��<Qc�́��,ok�Յ2�4�d[���S��ս��D{�(m(�6�92ռ��h����c��3�n��]�!�\�k;�M����BX����9t��UK㧏[,Nl� �™(m�2��r_����ZmN]��"&v�`�Ś��5�G�57�����T��-�B�5�G
SS�p
#�Ū�O��.��9��!qdr"�jk}�ݾ��-�����?�€��支� �Q��t���ϻ#ͥnT��ͭ���\U�`(pT`	
�6{„�iH�5�k0��˝��l�u%Z����>s��څ�̙���_������M�c0���¡�1��;���}�0#��1����	��Z%8�
B�����`�Lj�Shjz�P3z8I�ܠ۽��	j򿧇�OZ��P�#���n�u6�Uy���pxS�*�j�>a��r��k�^��P���Z7������n��P�J���1���\h�3 
\M��������[�lm��¸�#���.��jt	��@��I�ͱ�c��:4x��g��\%x���fa�+��Z�FCVi~7����a9�9�[�@ɢ�|�_����J�Z.!I=S(U��J�c�������#����1}*�f�����j��)�p,\�@����o��e0�Aa����?:�I�����e\c����pמ�]7B7,��n!�������F�'�Mw7R'���OQc�M�:���r�FQ��o��p�¹c<tl����jϟ��6"\i�e)��R�R�M�F`CK���l�k�l4��PB��k5fB�jc���D�Ո����EW��O�$�����0���#����HS�7���9�)R�p,M��B�����>��i�sO

���vws5�F��L��x#�^��ؗ���
�#8��!n�r��5B��e�3�u�v�M�nw����qxw�d���w����.]:w���7��\�y������4�����O��FciN9#yTcZ�*fRPA�{1ȣ��M���P��&���jm����s�Ɂ�$J7����O��Z�����?�a�
��4\M2����b97�J�k�)e8�EA��	���|ȺM�l�4dZ��[ݺ��45���猆)�A��)pv�L��Ə����7��
dy##�1��{j�LE�C�=$����_8l[Q���5W ƻ���ؙ��j2u��\���^�7%��d�{������,��F�B��C�5�l�$��B�XK�ҥ�
��Je<?0�NO��̇���\�5�8��i�l�I�v��|i6��
�������'A��ơ��p#���7X��Ɔ�y���G
gl�>E�M�������?��^��\�P�pCg��mo�0�q����P�ƴ��4D
_וq5�{�:�D�#5�����w�7/\�TW�{�-���g������`X��dR=�
h.lA]�&?�0���% i�6�f�V��R#u)єO�O���RC��5A����`�^�h��}Ȥ�HU��(b�����.�i-��P�h+����]��H�|���ʃ���
s0"����M�~0l���=WB���	M����>�y�ސ8��g5��N�c�� u���d�&XL�\�cM�cj�b�\^[��(�"�`Ł�zQ�8p��?�A@*(>&�4m���������k�%i�BcS���Z�-� ��@D3�-t�����sV�NvN|`�������Ԫ(�s}߷����s��Cw?��ȥ����ÅO��2j ���C���l
���q�M���fӂ(&����O�^Ja��ݷv(�M���+�Y�899�} P��"Q��T�%��P��b��KƖ<l���7zp0k�X��o4�P�.���{�>���S��QEņPݣ(62����`����,����7*]S!o8qdhe8��@��R5~��5(o��`CT�t�;$�<��N{��:�K@b��8�#L�(*qX>>�q!>:]pE�l�Y��aW��{v�N���7+A�f��HK%�Q�8�sq�T:m�!i��2�cVp��c1�Q�����[��4##��k�5>t�J��ϐ6hr6�
I�qF-~U����a���V��E�������D�ݢ)݉��K���A;���J����tz��k�D�6'ۡ[��$�4��'_��p7�E�'ۺ��6��:��#�!O�@#g��|��Mpf�,L�b���E%ol[&�M%n��i���Ã�\��H�]Lb�e�,!��P�6�,d������b�!e�pM�D�/���p�n���&fE
�,��/A-v�%Ž$i\�@�B��5^��=��Pc�̇��pѷ���s?1���A�`��j�j����Tx�>���y��GV/5�����\��'�8m�-퍋�a]��ybmִ��Cm
Q���x�U�F*c���%>N;��T
��H͡�T���fQ�6� l2�$��
\C����py����p�uP�4���c��2AiJud�cjPŒ54��<1�ߺEP��־f�t�Mn��3`�qC�T�{�8�a�8�X
KO��3~��P.j��>���	���y�l������S����H2F��C�I_#��`��l��Y��!xB�p2��e3�R.p7�
c�щI�&9�1S�0����$'�fb�NPϼ��>jΏ@S��	��8]�>cs��(fl��Y:I#Ԉ5�"��\��P����� #�~:�C
�up�@�qxs��#F`E�A�x�^s?��=�՜���n�F�+ާ�_�R25^�C��~2�4�52UyPM$ ���Hq��	<�l�u�
P�iC�M׶H/��f�Ywc�R��	�ҙ�����&Rv�g�%�eɚ�dr=���qsf���H�pRC�4��77`
�
S6���r�ԟzﶌ;D�Մ����B��i�su�U~��xs][��A����������h�j:m�5���
�G��l6��E���36�sr1��}8�ffL�
_"_�&���ގ��i��{4���]�(u�Vq�A^��������RV8���[ŏ/͐2!oL���K�^�S7ZfsR�����"
���t�հ35���k�r�����1UpJDp�)4P6E_�"E�!hhhХ8S#[3X^�g�+��x��z�\�k�������܊� �Ť�M��f�����c��Z�<���%
_��S(/�;=�-�AT���+DO��3PҰ3��fG�c�o̾��������H�7�
kS����v0�6��'capI#��b�_��Ƅ���Oٍ�0����?�ȏ���Q�a"a�Y��3Q2��M�vΠ��9%��H*�u[EN�<z����z�y̵{�3xԸ��KpT�S�:q3���}#i�I��YT�Fj4����M~7W��I���|���L�̃1�.�d�{/as^[�|+W�QVX�|���@���3�XJ)��6w�9+�;�5T��3>k�?Y�A��i�)J��O�7"���@M8��p��>
��kjT_�;�|�����K����y�8���8z#pȝ�퓟��c֢�p��.�U�㇝��vJ�'�/��?�ҥ"q�����$0�ݕ��1"&�ye�Fg}wk���>Gb��i��h �>�83��G���.4�
I㭪�2�K��^�^��{�>�kb��.
��<1�`Dpe
��h�(~쁢��i��=���ﯞ?>��0HcK�#9痟Xt���Du�p·�(��
Ƥ-NZuI+�"��{R��Y��*��]i偕��	;A�G�M,d7���o� |����=H�C�QU��Ԉz�28�Ê��P����-��>u �w�'�U��pZ�M�k�W����F���8�l�!{i�i�4�؍'&~B�柖�
�w@��8������A{.X�$?��k���^��]T�$�l�	cҶ) �n0��<��+��P7��7��`Yቍ��ƢU��g���m!G�T�͖a�E�]")��y��N�U���}���Gy׳�չ�c�%|�0��n�gS7"
�Jx�r��|��V���§!4�c~�fp�g?�{�f�ő��
p&L['I<�H��@�r�9��s�q�.�a�vS2�J�]�N��F��ü�J�𰌳AK�H�N"1�)fm�Sjt�ɛ�˻H�5(@Epy�=F�<�������G�ja<��ě���p�vcB��w&��]<GG��u�k�ieN���MoB4
��T��$��C�-O��L�����_�G�أ��^m��9�o�5m�&��@�L����t����\�J�C
��C\*�6b
��)�h�T�fF"fLܝ��.^�!Z������b&��D��B���tr,Ҙ�)�9AƆ�z�՜�8��h���<�3w������,zK~��v[�y�r5,B�Igc��;
�_���eέ�!s��h@�x���ꇜ�^W��
Լ��r���fj0�K���$z���6����ށH������j��1�R�&+'�������[��r�`;T��Jj������u�X@�;��)�&x�=�C�pc}
<��я����
Pc���l��c�25l���#(ֺ�q�%�t�c�-�����M�5��%�aJy�n�&��Kk�i�_�_l�
��KAF�bx�ci�⊦&|�ą�8�O���C��ϵ1_���9�W����4Zwc�ă&����|r��.fvq
��n���+����7[:|��=y�E]D	�oM흱P�Nk�FS)�_�����K���AÁu۳��iÍN6� 1w{À
�/1FB,M���Қ>��벚��Ra,�os����5�-	2j���f�\���N�|`_A�-ॊ�
l�e�AH��0't��z��Y[J��4�m�/�m��L�ݭJ%�2�� ����&��$�C���9�d�X�ق�%q���ϐ5&p��q꧿�/n��@�����?dl�n���AG<xᔂ!P$r8����<Qf|[38b��:.����瞭'�M;���	��B
^8���(mSo4���u���T�N�*PӪ6�:���jܦ��M�k�R����.����o�����Q��+H[N�D-	5j&�GS�f.\.�P'o�7?x
�ޔe�A~r6�2�a↬����;~�56�<,����~�eo�%�n0��*�	?
�	M�~��`�e_�����Ft	�O�̈́�eT�&nڵl�2�O����Dum��fy��Z�^cj���~Ǵ,̤��6���ج�@�Q���k� ��Y7�L�_J�.L�R��bv�7H�"Q�8���8�Q��:p�-�q���O?r��|�ԍ��p5w�5�&�E��g�����A�5�\��䞅"�'�V��F"$�J�*b:�l�R���`�p�յ�}�gV_��� �a�e�dcl�Y�R�m7���f��,��W��5L��~�_�"q1L*ڀ(J��f�(i��/��AtІ����s�����&j�wˠ�7:���\��ܱ�V(�Ӫ��z��#z\�����9wކ�A�fX;<gsb
��㌹-F����Ο��?�Ohr�W��׮�i�I�606���c��z�Β�vu��1GÑi�m�4H�`~�7���R=�Z#fЖk�B	��Fi�ؚV��	�+�8屷��QNf%�6��Cn�u��{�}����|[�-0'�Q	/�ua�%
��1���_>MW�WJ^��87�8x�d�����p6F�a���1�q�� J���/����^*��X�TG9\[8�b$����}R̚�x���o��%	�j9a�wa�S�^�����ս������Sk�Wk@M�bp�o�-�j��-�Km;%�ސ��p
^
7�+Q�A�Y1[��|��Q�Kx7=�3P���J��Ά���q���o��+�Tp�z�Ja�C��F&v�ɍ�����s�5A�xؚP�\�_����R��0|�s6^ȯd��u�/�幚��<���K�۟��GՋ�	��Mb�(7��dؗѩ������_d��V��x�WӲ\M��Z�TR�$1���́��+S�'�3+6�4@��7H�)j��ź<���rG���/��7�l&��\�r��􏏕μ������
v0X54�M.m�<E�n>^���:��_��I݀�/�;>d�������G̓���'��7è*yC��C�H�4�|����ZvPS\��AŻf�)Հ��%n�<��m +F�{�u
�jRFJy�fk�X�k6�H���>�i0Fpѧ���3?|���_�)\	�-4g�

z�c;�X�Â(c
����oe��"(�� �)�doks�c(�9��/�F`
;�<q�!`����3̟���Mٙ8X���á]���^���������>�P9�'o�By^�9�H8qf�c��`�B�D�f�L
U�H����D^��A��
5s����ǟ~rp��7W�Wp�/�[��4���ϵ.z��*������6���F��V�O6�A:>����:Z����U�8H��M�}�C���
�����;܍w�;H��sy}9�2q��5�3�[u�1�|���d�^yy-�K��y��(C�8i�h��7V�x,����*�JDM)�>QC�֦7oP�*㾻��Ͼj��O���W�3��&1�?Џ��c�;�7�
�͵���(_�=�=_�����x�o���>*
{%��飄�LNY[P�Hd����5\�Ъ1U#�� -�)���Z�5�C�r82x,��}*��$b����콤���9%k0�A����T4�ds�u+)����{�\����|��'���>����O�ss@��R��ތ���o�ף��1&�oc �(j((E
�čx���Y=H���àx�K��/��\��wf��TQ�
w�]|���D|QApED�ԤIk��&�n���6�l�Ӥ�I�'	��T[�kAܪ�>��O"��93'����]��on���wι玭u�
s��u��DK�!a��3cc�r���T�>�����D�&26��Z*˵���"�h�4������Gy%���Y�`*��S>���ɾ4��*57�S__3���n/�[���9��)�-Zp��>�`��n�S����q�%)��� ~���<��a[M'9#��H����a�_��S��(�i`�F���)��Va�q�ެ�ӱ��+M�@�-�Ǭ�Ms?�b���cYL S���u3�U>�-?��qo��k�v�@h��bF&��(�A�����f���\mU��6xS,%犯~
�iG���`4�\y뱿F�uC��ET�:���A��n0,U({[7�Rœ�gN���[�{v�?#��+���W s��
c0ۥ�f7�X}�zs�R�j��Q��PM]��K]�k
�gÂ����^���’�	0b�Դ��4���D[m�X��M62�Q��^�\M���V.�T[����x��v�U�"sS
E�-�zo�ObF2��`n.�$G|>	���n���x���޽?qȖpDV��/����wJ"]A�-��q�[&��$A��ך�bǩ�����jҪ13�5X�#�������f�~��#ۅ�#G"(CI�
S�S��R�ȣ}$�9��D
;��R.Y��i?;��\�Vs�d�uRy�]�i���*27U�O20T��i�H,u�%���@��i���4L,!�
5r�{�ķ��m5�S�����⦃�AY�5�t�[@
PA���ي�1h�����j�S͙���h
!ӛ�T��1�4���|S����d@z���n��ۄ���†^���s���x������F��P��l�V��*���\��V�Ro|Azi��U���N�ͫj|~�ׯ����Po��Ҡ��
G��ن��	���M�Jy�f��	ٳ5����֛�n�K�4�T�$t25�5�ت�����uYΌa�06Ҁ1�Dz���`���Efy�
	��Ɍ���!T��:Ʀ�SC�8>�k��;�kdyaؚdus�U]�&�|����hp�O�+,��zj'9G�jr@
�����o��K�ې�~���R�y��\2�����5�C.%`r���$��8鲛��y�*�“c�fL�Po��G�c{�&?�����ޭSwš�x��lj��=�X^
�8@	�F���n�؈ξa������j�FHUb��o��5�D&'�7>̭�r�j(Z���L����4��)}�y��@L�3>���"CY0�©�K�l�7�3�8�d�=9|�t\���v����_S5'\q�#t������\��5���Z7��.a#+�mr�%պM�G}���R�@���d����b�*L�.jj�y$�'���p_�3W"��Y
��>2�q!=
�L�?\mU�[�gK��g����R�A��4�
z|^/�3_�Pc�?ddrr6�'p����IC��� lΰ��s����	�F���W%E��/����dË0F��(�ZM�^˒�i���P�j�N��pB{:�͌&:����k�9r�'��YZV*�
jR(@9�f���4Ҷ?��
�Gb�
�݋Ln���sϷ>��Ӆ���V���]9��G�	k�.F�����e�~K���{Q����,���1qs�p��Hs��L��쟃"�/[�:�2�͉W���n`����˳�p�SV�|5zX�ө�ƃ�MM����p�]�M|ȥ,I�I15qԺ��}Po��R�������������ji=W|�����F���wZ����@_b�!
�4p��о��'��Eԍ����+/m��$�bQ4u��a�ظ�qu��)E]y�+����<��P���B�P�zI%oϐ����cA���x�cK�4[rR�L
�'�Ji�5\�rFM����in��;����6��P�(�"�B{s����Et\���V���aj�mn��q�$�E<<���&��.o���"us�I!�b���;�Ը:��4_�}��1�2Τ�:�
Pf�d,������3�x4)�>9C+SG��r�p��e��Q��e�2�t�_��*��ta<_p���c������b|�^���j��[)B�vi.:���_~��_6	1&edb�C34ꔺڨ6Ƃ Yd����$n�ٜ��m�D���.>W�	�_�B��#���?+:�����Pʆ+�Y�v<
|	�7�\X�Ϯ�ﯯ�I��j&�M2���&���q�>�눚��z��V͌�r��Q�|̿X,�^��B�).<ˬI�~2����ބ�a!e#t�E&z�ˤ�zHT#k�wla��H5F��d�6�/x��KW�IY�/��/�����5��/���jt�í��ƴUf��e�Ϛ�����^�'!��L�dM�ЕG��5�t��F���&��
wp��Qc�^H�rs�@�[-���VZ �g��7Q385ƽU���yQdr@�3�ފ�;/7p��a�5'[�Q��qu(u_�w�����1���"��_�B?�h�{S	��i���z6��S�0�@y|`��B����n�IƮQi)��F,
w@9��R1��1}4=2�P�B����-L���nӅ�B��\29����eb|"�W#RF�[I[%��Rk��"#��8���FR��ϳ��߫�����~�r��E&\Vyi Yèiƛ	-��}�3a���|m�f�h��l�*�B�J`�����uO��Py~ޞ:+���{���n|c�]�	7��_z:v��N��)�(K��ږ��|^����A�VӢ�a��b�N�Q�B��t�uøao#���cl\ܸ:|RR6':�S�z�A�|;c�bXdM��4L��C-bs_<^�!�V�	5����k�n�3f��daS#��Ue�}�-#�J�����N�g{�X����ow2<�c�M��'�$�s�V��`�����5;jƒQ�V�&o4o&Fx��cl��W7Hݐ(k�q7����ա��×���Y9���&a���Z3�M��15�(���Q��^4�sif�-�&I���k����N4F���B}4Uo؂,�0�4�w|L #� UL��d�Ul�����������׮@(����p<:*H�OMJ���5|�t;ijY��Q͍�#r.������^E
��Sϼ����!�IQ�~��	d����Ph3�����G5��=|?��95)��FP��Re�u�h:��z==r ���)~zg��w�Jb)l�!1l7�2Z��'��^�ij&j�+��	������!�4܄�b�-U#�\彵�BN�N���u6���vXS*l@��o~d�7��D[8��h3�pb@k:�a�|
u]���\�B�du9�����]�}3AP����%R��v(P5���aa���Ǥ�����&]X�v,W�OP�����&:�p�^_8<4ء����)k[�z�<Y���`���X�6G�OW�9���5�
hs�u<4��c���F�(��ɧ7O/H��t5>u��-�)�FI	3i�������d*����y���_3)#�������If
<R��ar5,���1Du��f}�&���2x�9]c[Y�'��z�(��[�vu�t�bmNR�
�:��{�/�&���K�Q	�4�͘B͢� �YaC#�ݒ�1v���J�7A�i�|ڧ�"Ӎl��;�ȳl��n��|�A�g�5�KQ�P_�x���f�y�
{��P�P�x@e��L4�UqS�� ×�4�EV���Px�6-��@]r�~�]�͙�sϽ�گ��Bi��1��y�Q$�	mfʹ��.JT��tr¼{�g��x�j�:��Ӎ�x#ޘq�u�7�5�X�ҳX�ݷ;���N}<��<zfgpt0o3��=�Z�	"�R�if�
2�@���,v�s�}����Ƶ6���ͩcC���G�~�a��
��c�F��5�0i�3����Y9�\|O�
�ʦF<�(kd�o�8��*�rc�q[M�5H	m05���k��M�2`N`�ʿ�}q=��F�Q�x�
��
�466Hۨh��TcK�(��ZQSĂ7k��0����y���C��(�3�5�nxb�$���Ok|h�xd��E�T��J�[5��/�e_�2�rjĩ��a���`
P��!�,9��~�H]���F���!���ad����l6����Xl�Zz���FV6�(��Ↄ(�7��,�
vcC�a�\uӽ�g��z1op'�p3��!ǫ͌a"R��FP#��ϰ�a1k:���i��_�e>6�5��5[o��H��沏�S��GW������W�	���f�8:+��-�F5�8���jD����M/lܾ(W�Q'��5J��D
`s�U7?�c?�����P\�z��-r:�����ʬy��P�����vIõ�?��P�f	l��|���/揿�u7[,����d<]	<.�Ƙ�8�P��I`~�1�1�h|��0p�ǧs�@���Ȭyםd��n�}6�~a��B�+�0�t�]QE7�B+�M-DQA]TP�҆:z�r�&M�<5����i��FR���r�� ��	���� z�W_ϧ���\X���:3E�x��#I�fa��k�>��[z}Yp�Y��P��^�8�)�"�,����Sn7A�KOV���Ĝ��ʽ��U�h�4Ue�rzq��n�~��;��ʫ���O�z9���!�"�d?:8	/2j�;��kW(��<�3�ʣE�Q�IW�s2*j�\��
��!��	b[s+kS��(Άt�}�`o�8�mj(u�	b�[��x����S�?����`�Z.��'���:y��><�?~\�}��~*�䓿��
��zw�)�5{1Y��n$��+�dP���1(U�1^��aKC�
5��X��Z�/r�59��(�=����Q�跭��T�"�Q$XC�!ܜu��u�5xK�u4�k��͢[|���?�jx!PÉ�l�HC�`�\.7Z��jbΩA���@eM{�/��b�7�5��[+�Ù��p3$0�є?��uϛ͕�j��?�M��Ԏ�>El>�,���fڃw`�
����Qv���IM�ȅo�G��YW���Q����0�g8�!���
.r3����!Oæ���B�o�3���L���&t�Յ
���|6O60hj^�@	�x�*F��a�{�Di9$iP��GErYͩEJ�%q���4�K����ɨ�F4���([s#>�X����agӣ
tޭ�E�.��N7oÕ�E��7���ф�y�g��%M�G,�4�2�بş���i�%oƍ�
��~��O{{�{I�
��8C� ޸q�\�߷[�9ٵ�D�>�+"x�y��O��kE#,aF&�����F�F\=k��7�ٚ/-LS����l7��5V!j/�J9����1f�ѝ���Y�<����1i��(8SM[ц�j@�w_}�d�׽'�`Ԭ��!���X�[�[��.J��\:Fu��b���X�EW�Sڲ���L�>
E�qR'�L���lX��]��5gb���P��Rhs�u���4��#�����mL:-�`�?E�>�,�J�YP5Z]N���(*�y���z�"��A�à��՗;mpK��uwS�>�&]�y���h����13i�E�dq�����'|��@�D���;B킔�y�2��Q�67�u�5�>���Y�ѨE����
���¬�gt��a��҈^��ʨ)��\
f�d(���Ƽ�(��щo�uْ	�_d��Ά��U2|�T����@���$O��	�)հ(IF
����?����PE���Q��KV$E�!I�a�Z�o<�����ej�4xu�5�������`�/zR��ojʖ���
��DVx6%�ZOG�y�գ�����慷w���&qf��G|�&����Q����B�BM)푎E����k�o>bg3dm����ؚC-�u��Q�e��nο/�9ŋ��<�'/�!���3�k ��=���AƦ:���,��������9qӣ�W��h~eE}㻫@+؟`Pi��@�VX����O�˄1(5gjXk�6v���y�B����qĴ���M�x�d�!
���(7P���,p���
�O�.i��IM�Z�vZ���8�R�\~�w	�1ęA���[=j��]/����)�Ʉ����p��-�dk3���k�g��nN!�0m���Q�m��l͗����Q��f��mkCz�!�RBO�n��EL=��y���2��|�����	�顦
e���#�z�ͨ�k�m8>�R7t[�Rxw��{lP����4��	r�\��L�WЃr�޿��8&��X��8C,.{���ЂR�;� 'md�\{_NX��^t�:06@A����0��VF�b'��26뫨Q3��7\�˞R��wW���[��0ij=���8ٴh�F#Qr����PZ��ODY�7��]�z/+�$l�2��)���lNS�
4GkGQ��H�ͤI�㹭��(�ې.�n�g�.&����z����r�/�4YH`f=�b=~�
}W�|΅�ѳ�U��o�t굸�Z�i3��b�_'P��ڈ��H�4'VHD|�$p?unF�l
QjJM�.@�u�g����i��Rvek�D�9j|[���Ǵa]{�c.��4�
f6�"�'1�Ġ��lh}}5ߛ����Z�׿�m�n�0��t?���"k�h��b���z��C�ʊ�_,�;̣Y�t"���)=��{	7�&�oYo�%��u_֌�
�7��6��Gٚ+j���v6@�Hk����I4{ɠ���]��"Moiy��@�H��Tb=[(���������?h��
���c)akp��ﭢ�C ��*�\=Լ��[�q&KL�b���Ě`0�_v�V�C@ͥg�N�ц4���(��>��֜�
R�g1�6�������A-�B��\�^C��4p4��A����Nj��ƮY��[;�\��*�f���)o42OH�7��з�>�%!���ʻ/��^���9]��ϩ��.�\�6y����'%mf�����R��٨I�6��>[�֤�o�F�����\���X7�4U�1S�@#H��3V��6�f�L��7v[��F;Q)oTZf}{���/w��S7�o��o
�0C�
Up5�_(�8�8d�?�9��E��. �(Ά�(f���G��c�6b[s$5E���@��ȩ͊�(��M�S.�f���fLﭼ5ö�մ���o��k��v"Q�4�@���F:����~�
��nt�Ձ�1��o4��R��a���j�
l�X3%m�I}��95B`�lm,g��F-~�&l͙�y�1)b��&�e�a ^���i�=Ҥ��͌��QS�P��і�Ζ��m>_���Y[�vڛ�l�W�)��t���_�����M�U��H����p����8#{n0��0f�f����@�P?����0J���l͕�.�Y������j���֫�R�L���	�О��7VV���Ϧ�V�P7[��z������W����N�]�>�o�;[�ԍr;�AX�W�aϧ���)�\#���Ԥiǔ
��d���@L�!�p��4r<�(��mk�$Y�8:JMۜ5@���#^ai��D�҄���Pj����e��+����I��lm�?h�����>�:�[����꬯/9��r��~�F/�&����4�I
߹4�G�&��CS0�S�`8��3.���b
n����mlkck~��}�)b�ی��p��[z�i��f����F����̲@��1X=+h�T�����Z춟~���>��P,$��m)ZmW�m���S�T�B̤eK
y�(��	��V�l+|��I�f�x��VH�}3�q#'�';�۶�֜iA9bAa
[�6
nP/Pi[��A�P żyogcn�?���5��ϥ��Hv#�}��s�N�v+��2�dp�������&��ƍ?�F�$Ng�zl�(@i�lz(�r{J�L�v�-π1�x*�	v�"�h�ٜ!���Ac���kl�MĶ�J5r�FM��Ԃ:$�&nX7�WIS�Ġ�`c}��a[M8�~vyy��	�m�̓����u�k����_�)#s���*ج�X�W2<�=b
��`Z���HS>do���3f!��Œ��F�a�R���L�P���H3�+cӝ�T�Qj��X�2��N��Hk�%Z�L�kK=�e���fY!7�D�c ���㕥%��%b���
*P뚫]ynWO�7��5�y_����.��x�@�{�31
ըR�?��ج�IT���Qu�)=:�L�;�@�O�P�fR�����36��N���9bic�J
�mp��X
ep^�'Q�9+j���l���-/�2������}�S����f{{��{�`��d0��h �"Ԩ}�����lg#hQbL,��f�"���>�L�b�fS37�Q�ҍT�N�3��6�fìag#���>��֜Jr6j%�>gڨ%p7�`���D2�Z�V'��Sk�N�oS�<��D������=�i�������=_3]7Z/P#���
�V,�C^�/���sE��h��r1j�g�q�%�%=èA>8	WO�����F��i�F
�,ksע콠��J�`)+�xل���(�^�>�΄��<����Ѭ:��S���6K��ַ��%���Yʗ��֫��>j�F��(a�����=�uߢ���3
x��l�L�Y:�k/2A�~2R�MϤ8+,Ѧ'y2j��7��r6��
��R�^��Ƚ�2mpɡ���y�ŧ�6�C������������^�nln`����\[[YA�Ɵ���ho�����w�l��(�BUn��풳�nbو���"���J�Y���V���C0&�u(Cԡ��;�W%�Ȍ�����^Clk�0zS�6�n��RM���6dm�g�A�Fkwwo�����J5�����_~����?�y�Yow��
4Տ�9x�e�T�&�%ĚʹB�@
��\Z�gx}Mp�*���3�Y�h�`v���q��M���j�|�2�����]��5�R�16r\�6'�3m��}�}Uq|�n��o6v�Vfo��9sw�P�X#ڐ>?����Ex���g}v�g�*w0A�\�_���'��h#�L�G��@���<�pNg��vF�Qu݈�N�q����^zx8c��Q'�lcck�e��)ib�(��f���koz`����U�3-�0�Ԍ_�7�bC��ҳ�
�|��[��j����^��qpۧ�C
6Fٕ�������\����f��������r�g�̺���������P� ޸�=̚_3�=l����E�ʷ� �5��R�eo��C�^�g5��u7|�s�Ca���:�,�����M=�ɤRƑ�͍�F~��(�狷�~��PBňs��.���I��ob��^a=hԋ-��|�zӰjݻF��Q�B;�TԌ���	��� J����5�bg3�6�(��37��Q��{�5��&���]^]ʿ�gt/�6_/#1�/����g~��"X,lF��k���\�(ҌO�L#Q2�F=��N�4[�~*n�.a��'E�'���\�VC(y؛XC�ag3i���0ak����+���4��(������ÚZ�o����J�����_u��v��f�������)$�ʨE4�H���ř�9z���KV�ijݎx-Q2㙺�|��0�*(R5�
�xK���
Μ�װ����Ҩ1wբ�([�*F
K�6j�$X�6��8�ݜ����n��N{u��������!cw+l6�zz#��\B��,���빼/���S���s�|ӡ&SOR)3B͟A��PH���;���"��jpS�F	�8���^@l�?!�Ͱ�9fmN��u)eэ��wţ��>�f���e@�_�_��6PS����G��O+���j<�7��:=.:
��2,[������	�K�TL7j��?���?����CS�b����AI�uK��(�@�[�`C��H�Lh���vA��i4|D&n7�եp]è�K�lnXO����=H777߃�A�<w�y\����!�k/x�����-�+�h!/�"�b|�1���MS�<�h�L5�a�_���"���H���x���4��M��K��kk�����M6��Z���F�
�nN�\��
��u͵�����C;��I�'p�5�4���U�N4C9�-o���Z?2�b��+�r��)��h"5�B�P)e*��>�sB
��
-�J�x7����D��^D�
 C���a_���-�፠���5Dz���ndި�Q'�2���q#hs��w�v�d*���M�����Ҟ��y��W��?�Ų͛�ix���f��&ɣَiLM]�d�`j��	5���%|"�L��P�u�H�P��"�<���A���O´5��UZ2m��Fݩ%ե�`JO��-u�H6�]u��s�^z�%'�V�4��8!l2�gC�sw̌O[�7-�j6C�L�,�=�T�R52l`k.8�K=��F�5')	���m6��R̍�nHJ]JH�
t�Y��f]����u���`�Ma�fa@&��M#~��YN����*5v�O(���d����\B��|���B��2<�֨��a#���m͵�ڨ�Fn(�qsB�>�.u��,�w�yw�<,sӪD�5>M��Jg���E�+�U����S���'�F(a�\M���������D1j,�@�92i8~b֌�5�T�V�������`
��d���L\c���7m���-�&��*�4
S�X�`*��X�@)�^!Q�j��Q��nP:��t��?�
hÿ�baF
��'����j+ފ�Q}�����LJ��4�x5S�0m��뼫λ��{7�on<�b���cY��|�b.W:�)���P���
�\�G��F��gH�!���un��H��R�հ�4J�F��˶5��[�p����x���%��ˮ��K�ՇKe�p��EJ!����
�D0��bT��13���u�O5M3�8Ac�N�ɖ*j�ICRH��B���kgll�״���s�.��[�ϖ{��`겳���ˮoz���{�pR,U+yF�jJ!�ߧEb1�G�B@�Ǜ�ņ�6dN�jf"�H4ꉡ¸��W}���4*jTW#e�e_3�acgll�W�����Rj��`W�e�qnz����ϼ��b�fԭ�jB�����f#^�4�<�R�C@
�I�TD�%�R3��H)v�d��FE�L5/,.%]�1�� L[�Y-�[�K)k���R7�|&цYC�!Ԑ�<�28o�c��&�hɟ�-���;���KW���;�í��*j��c��X�uO$
�F��d֨�F
D���t��hc�?$B
^S�ns3���/>�b��U�\r�՗�6H�8	7����"Z�eK��J!�ۅB�R�*�3��B��C�}A�{�9ӢF�u�v5'
T�����s[�m)�cݍL��\|6PC��t	��is�!�nr��A�E��T6���ei�]��b�t2���0�F���Z�B\��4���D�Q]�A�x��5ve���!����Ժ�鲋/��.���sΡ�n�f�_�Φ�tw���\Q��e�g�3��
I#|ǽ�PЈ��V���s5'��QP3��gOG�/j6�̍�R�g��u9��qs�ŗ��וW_�e�ٕ�=^����8�.P
Ȩ���S�È���	�AoJJE
��Q39UC�9�Q3�j�5C��l����s�)
��!q�B�2��HD��1��B��@B��[��V��H�V�/�)k����9��;���]{D�|��^�߭�%~��S7ԕ�W�]I�u�i#�ǹv��h���ǧ���g�����R5
�:�u5�4�
T�4D��5%Ԩ�}��[�P�K�fJ�7Ys���5-o���M0�����Q�ǒ�5�T
P��4M�%�H���2�5����5�q��77��M�
�$]�np�㌂��u���˖ۡF"i$�f��C��XW��-i�t�25'p\����s8�kR�K�6�X���Bֈ6�A|K'i��͛/z=a��dM
Qs���1���Z
5;]�,�I�dMk�����?"
0H7�7G�÷S�N��?s�J��.�p[g��4��[=Ԍ�j^���L
TE�O[W#ֈ6;)+�\
Nv5���xB���Mmܧ��=u���SgZ]<�A
��|��#�n�wb�Q
P>|j�zj |*w��\�`s���fk�؄�-՚n|���ѣ�pO%�������\͊g�X���4��G��l���Ʀ��QӲ&���
>��jjh:��jO����r��
n��6Щ��(y�F�Iw��sW��?�ûOn�<߶%҈36�*���P8R4;��@sr����i���ޚп��R7E��b)���L��r���@D���cvݼ��-S5d�E�\M5>U�#(�J�‹@uY�NQK%B�����Ç�:B�6��EЦY�ؤs]��W(=�����+�o�n[j:uK�D��AWCS��j�I�&��A��0]
�P�#	��A���X�p���#��#��i@��IwI_C�\ǷݯQІ���Z�ɚ�AYOC���:4���VJ��LVxA�� W�\M��DN8���5�
�R�)��.Ps�i`m��%�
��7
��#���E,5j�i��aKRƅOP�eL
N.?UM�|
}|�_�Mu�����iH���jvqc�ghA���࣌%�C��
mrʹ��\7�@�Fj6�f���B��9ᛅ~Ą���^�:p�@K�9�����,��^\�7體���Xj�:|:OS�
�5��][V�T
�C�tL
]ͬ�T#�4���"�L���@�Xj����q���
7q�`���-P-n���7@ͭAԐ4	4n3����KP��l�Ot55����	��P����IvE��$�5�@�6�����c�ߝ��jj��ƛ���*@��{�	�j���5�3�alB��&escqswGژ\�fI�@7��oOݴEn_馩y��
P�ոjp��MZ��Z�Oe�����^���,�ƺ��B�I�9-oC5���������O����
��1}|[M��5,@-6��D��kݓx9!�_k���߻/�f��A��9�$�6��W&�27Pi`j�TMo!�]�Ѱ�S����B[���RV��*P-j�Y5�K(�b�lnf-n�'�$�7��ŧ�����fu�gn~q׍P���1�~}��P��Π?Q4�%͎
Pj�å��G=U;?C��&�'f��'�p�J��=K	����nҽ�7�P��V��M5��TҪ;l��Hӝ�^��Q�fV25� T(T��#pf`ui�f0l 5���U�x�&���X�^
4�c�W�k��L@A�5`M:�35��*
�Ş7�4�ى��7m�B��2ol��҆�ԋ_@����D�4��m5,A�+P��k	
�Z�,p�]Wc�'ȧj���P�������L��9�/2_s����`�q��c������5���a���'�Ƶ�̛M���R��Ax�7�B��p�4m���m��s&��
n$~	��ԯ�Z4v}�R5���4�LMaڲ��a�p��V�ƍ%X�DWM(T��t�>��mnv�2�*�����T�2mp��Zښt����p���������h�O�PIS�nh�1u��Y67��$W�r�&����׼��W���5miQ�.P�ހr{�'q@�	(��/�C��I�3Sj2��!n�6��57�67L��805����!g����M
ז�45&W�*-�Q#G3�
T(T�Į� e����I���6�7s�m�/�e�;�?�z�
�P�J�U���i�
�C͂$��)Ժ#/
�4�e�@27S�F�assI��U�3n�5�x�aL������V�߀j�j��t�ygB�Zq�gƮ|����7sS���	�����fxؒ�Fia��R�f��k_KX$�j�����M�&�
��_S^FR��l:;hp�/;ʛ���i#���Qq�XXZ�]�LM�B7n^!�aCW�y�Y��
�~�8�ͤ�m�r�`#�(S��|&����Y�,>�+_�]
V�j:}5��$�h[
5���FN8�	1�iX#�̈s\��цQ��ͅ,��;.j|���^�M
�4�!�\M�S���)�uO�m�P�d瓕$ndnңHF̸��)�Ss�R7c�&�׻���Mj̲�.jT=� ��D�	����ÇKS&���P*ץnc�&֪u;�xW�j�^�k���j��@45�*6
�B�ɥ�2��:yp�7�	��57����n�P��RU-v�4o[⣃�#����
mS�����(n\�dnV�6[�R�j<i��0K��72
�>�P�
�I�&�9�b,�͍I�y#܌��yuK������覅�Rw3��q���-y�D�^(42rz�T67��
N/us��n������]�����x�fa��Y�5W�0��'S��6�Ph4c�����91��)-��o��7?����-.P�7���P��m��-M@Ŷ�Ph\�@��&F!����Z��n���|��w5>)����j��9:���p�
��ir�
����q󙔬
��'꨹�����9[t5��yڒ�@KO[��Q����s�,����>u#�”�`��<j.�&�_�4#P�4��E�]�(r�B^��Sč2�>u�&��F�),�F�(�3��M�y.G�jX�+$2nH�I$�C�_%}ayk�MW3�>ucݍ�2��j��c�7r�P�y�۾l	�ݖ�6|�?b�;�Uf��s����M~�6�7=����W�`X�B���zYațjn�T�h�ÖBM�%�B�K�B��z���x�ҏ�[�HJݸ��}��Lɺi��jT�2c	��p*c	�HՄB�O"�A��M��7�9͏�Z��P|C�ƣ����PsG�q+�\��j�i��*\k�	c
�j�~7/�q�ƥ�����!C:/P�ъ�I�IWZ�\�'�}��s]M!����B�?�)�z��z��up��'9ܘ4K��ܾۂ�p��3�V�YSr5���{Y�@����ēs��Ҵ��.�"jp�S�>aW��7�`��tA�<?ˮƷ՘��,��X�k���6�5���M\ԧ�m0�G�Zt�n.<�u�
�7�i<j����,vK i�^��/�
҄BT�R\�����8�H��t�#�!�55�,j��b�K}c�L���� :Ա�8� ��\}��D�rgK�-���Yf�/R�
�+q5+�qZ���MkufJ	G���i�9;�5"W�*�)�	1B
��?1>H7V�imz֍_� ߜ������`w@�	��/A�}궄�Ps�X88����I��U7�cJ�������_Ds�I�7&�J5B��IU��O��
p'D�8bۭ�K41%�6�7��H�F�����_�y��*s���DR
��9�B�����u��r��U��VM%��p*�Z�Tӹ���-8
��>��!ݬN����!�T�gV�
Z*|�j�Y��-��`қ�F������&Qy�zf=�ԛ\siתa�����O�>5.�؊b_S|C�9K;z3Ӹj�A?Opz[�<q��2
��y)�f5��p�|���\�c�2�t�|<��q���ǺٝR�Zv��A5�\��'�!�O@1����x��K�n��0M�4u��+5U5�0g�0����R�6�槢��x���f<�d+H��g�b�m�j�p	�(�x��SKI8�x���nۺ�jD
5�Uc����
a�D!ߧG�,VݸoL3i��6b�tU
�j��y��R�{&�	�H�Q5�j��v[��5�L���y���Ro�a��Ps(��Ls��u<0Q?�VX�nT+H7���fV��jZ�8W
���]%dU�q�dK,�h<�T��b�n�o�D�|+x�ƷL�7K>y��4Q���E-���_�l�f-�j��7��J&��Dv}�/)��',�f��F��W���8���|s�h^��*C+�1�N#NB��j�f8V�	�n�n�y�F�)�3R��@-bM���<3�^[��k7�t��Ԛ���l.��s����>9ZK�7�^<�����@����`[�S�8j[э/�Y'�So�����^K
<9��|���8ܘo��M��H4�G'i�=�/E9u3}Ӎ`��u� �~�P��'���n�x9�Z:���(g��&C5}�&Ѱ��U�l9��\7��y����u�����F����Y���q�쇪	��kX��„ҍ�pT)Vk�<#Y�歽z�F?�|/ɾ���V�)�r�9F-;�R7�j8���]�M�u�2�I
2Ѩ�Zc��u	N�7��/#иj�kڋr0�ȾO6ѥ�K�RJ5�M���	�e����BMt״7&�`O��)
��M�
Ť� �@�]!}H8k��6��Q9��p��}�2�J����5EzF>ʐj��귢�*���-J��fީu�[��‰j
��k�|�R��"
�p�o�*�ء
UR
��߽fJIۘj�՞p��@��b?5X*�>�r�%�)�ֻT�5	��z������}�?�x�TR
�j෉�V,�R�>`�;Q�!5ڈ�s��p;|k�[rpL8����nIEND�B`�assets/images/library-connect/left-1.png000064400000136240151327220410014207 0ustar00�PNG


IHDRp�8��PLTE�[i����Sd���ua�Um��ȼVq�Yrž��i����ƌ�rWXmWWü�oST�Rn������������������hQR����^c���hTT��ȃ��eUU�W�������dWW���gZZ����Kujbb~������]a���ohhf^]�fi�Gq����^b���y���������Jq���}efv���Ps�mv�q|���|P��V�nn�V��T�~T��w�����a|����sr�t���رU�����w�W���嬡������������ݏ���ⸯ���������쳿��ʳ������b��������^P�kc�K�]�����p�ꩮ�{������D�����V��S��SG�O������Z����������59���2?�_v���������O@����L���Ǚ������ef�9W�D7��}����YP��牋�������m��������z{v�Xw���������AY��z���J��]]�������>V���455 !%��t>HI�������2MTA8�>.����Rp�9AUTR�@F����PW��X�HM[fepln\��e���s��6Xas��nA�f��X9�Hi�=]����P�œ��t��o\X�����M�wk�|�pF4Er����zy���w���kg�j���{ħ�?d|���_��ņW����fAg�����x��ί{��e~��Z�dZ��qM~������ڞۭ��2�b��ki������m�¼���@w���]��gʀ�9�o�Y�����Сý�Ji>otRNS
	.7.$-,&%7"N7I#CRN`%bB@7ZkXO90CcWBkFAZbUC7Q`#gB2QN`cj^\��\`����ו�N�n��������ؙت������ֽ����IDATx���1nA��yO;r�K��r��\�J�K�
MJs	��%$Z��e޾��6�$V���۝c��~=9��4�4I��-/%A�3K�w��[���W�Ê�L�'�%�|�^����lx���xo	�	�G<���x�b��
љm�\L<�*�o�DlE����$�ǁ�)������0��Ojѝ��_)�xvcs��ޙmњ2=����aD��)#���C5M����j��I�^�DaÄ�Z�Y���R���u���HՖ��9}H֊�,�
0������֔������T�C�s��w��2��{��f��ģMI�
�Y~�FnN�/^��yS�Z�&%8;�L��iv͔o�����/���\]]��g�`<2�C.��i۶�/_�u�Y�x��cr9k�p��cYT��Dk�����l6��n�Ե&z�S'�y%c7M|� �JS�{��}-���6�����]�#�vu9��n뷕ʜ��R[т���LN�m��]�u�W��~���Jr%7��
�(g�����n������n����Yזغ�����p���\�V�qX-<��}sF{�$YrE&�_�;�Q�=����xADV����)V�k-��b��Od�`�	�@@� JD�(����XX���@�}�˹e�Rc<�L&�QQ��;�73���p٦��ض4ݺ�qv�*|������8�x�No@K%2�(�:��r����]`�Z2
�N�����t�kW�ׄ�mƈn:�Xn���e��ܳ�?�$q���m��n��k�q�F�6�
�H/ �dNb��<	ߴ�9���F�]���#׮%�4ܐm��e-&9�d���v��NhW���I�?�У�O��Brٶ}���$�לm�Q"��A7p�tH��r���R.���YD�m�`o���ȶT����]�ِ���4.*gN;=w�0~]�KK��e�>�!?�!�Ƙh��m#��!M�@s�-�ܣYwc��-ۺ١y���U¸�9�:�r{}��=��uE�H��_��
���$�Uò�W�����6OBqI#uەe
K�E^�e֎B�d+L2��Mt;��5���
nv�8O�r':D�8��߃c�� ����3��%Wpu�o�%����[H�(�F��v`iW,����A3N�r�sQ]Yȋf8���3k��n��x��t�VF�ƺyN߂1M��6r����B�ՠjq)ʝt�)!��x#�d�2�B�%�4-mb�6I7���5�,�6ZF�{腣��tڸ��K9�r�qE��+�(r]�Y6�κ�2խKk�����w��୻�����gk�)M���\�*�g�o�u�7&
7�n�:%>����j�9�-
9:&�qӦI}K�r��u'��G�g��mI����<pns�rF�rwӺ2Nەگ�1�90�,�(QY�/=�Ä�Q6MًM��؀�ݬ�����.$Z�2��3������yߴ�$����2�(R���Fmc����m��v���S�˦�-�]�M�(���O&���07Nl���>��5.?�9�Oa���wJ@�n�Ӎ��Ѐ󊵅KKJ�ž�f`�^æ�ֵ�����\�-�c���#�R�rҔ~���^�o�'O�P�ԩ8�R���X.�p0mG�n�`PP3��%Y�T�~�+uRaJS�ʓ̿��M�ƔFD+\-	ݘ�ג=�v��֤{��
[��e@��*zv^C��qJ4��Π��+�~|C�!�s�3�j\)�$6G��-����Ԏ�R����-0���8@���ф;�\��M�+{��(=n*����2���F���C�l�T�m����9���N.dvy�hS�l@#����4��q�];:���ϰ�^퉃ɾeV��A5�N�n
�
D�i1�ie�ւR�9���KJ�-W�f\VJ���
(׺�R�~�ɽ��J��&�d�[/v�[?�
��5��a�aI�q�J˾)u@VpSk}�������rܬĎ���eV��_,)��ˆ=-&��u��	A7m�D8�<�Ui+'���u���������;��ќ�t�G���If��K�i��t�|�m�A%
�|���Q����7K[ WǨcY���6/��M��p!�"6��RY��*A�I�ځԶ�֒�"�vX�19��DX��n��>�+>K��{L�͹�6��^�8�-��tM�݊3������-�Te?Ԓ�Mt�x����{������]K벶gs���X��%����).��6��R��)G&�2��̪o��c�>m}ט�l��[���;�ŗw����G�޾}�k�i�O���j�!�I�����\?#�>�!0.�^��\��_|RV�Jn�\nZfV��JwQI�J�x�V��^�Щ�/���O߿S�T$��m��(��R�@�[�7b��Q��L�y���vdd)�� .,q�#��_����[:u�Vŵ$^�m����?������PTz�l�8���n=����Ӎ��y͐Wk8t�Y������r��+K�"X7ㆌ�̟GkI�^����F�uH�+��d�b��{x��/'����mPnA?���(g[��e� [\
��ݴ3	�ķF
���^iÒ���!�E9�oP��� ���[8C���n:t���_?_�q�_=}���oߞ�nψK<����BK�fI��Fu�^u�����s�(é�
�oo_;�ʉqA� �o���i��ı�"���lӵ�OP��'�jT�}��Vy�fٻgo��<�������AwD�L{�ÆN�c2T����,�Lp{�ו� (ǕeɈp@�9�2#�!���T���iK�@y����ym�
ø
�B�B%*.��[q�{ѥ�QDn�����7��Dۆ�P�����!Hca��@&:��B��X��΍��y?�=���Q�<�~�:n��<��9綿�-�0�O��
�$��n��b���.���ABE�?H���fT������f{��n�ȩd�#-�<�X�����
~�`�������y�rX Z7����Q8h��;�N����} "j��Wm�����FMp#�Ny7�4�Tfޠ$�4&��cr[>��zX�噔�9��j�`�,
�1i�h?enj7��^ώ!�&�F��&��X�	�q09�	�
����4E�.BTr��'�V��!GwD���q%�|*�P�����s�,�vݍbIW%��1�mm
K����]}�K�<��67c�D!�bz�ULn��q?q�b4��\;B)h@���H���[I	ljn|	0>}A���7�	��$�f��}#��jFwtlm�����i �mwwk��6J��-��K����Ҩ��sj'=(��6�N<��((۰u8#�5%w�6�7���(h�E�Zp].%���o~���T��$^��'�-&5�����=��g[Pq}=�ď�V��FP����Lz��v�͹8V��
�"����A�5�p�f&{S�	�a�(
��r��9�\NgXz��f,����H&��ܞ~�C��9|f̖\���3��jw�n�ܮSD�< )X����$a�h�qp�C�N�E�.pT���暈�A�� 7#��z��Q:��^ �|�O��z0�A����v���*/�'��@!W"���2�,A�欥3�TlvF5p߿�����������qӒ� �b���MiHR}a��,
��cnQ��q<l|�er��EN�4{⼦JJ�暛&n*C����k�}�\Τp_�Э�L'�C�Y'5�CGG{�~���8��ݛ̙J�I&�xÕ�C�fp+�������I!/��/^��9!΍,1�)͏���k��f}_um�[>�,���$���
@�R��|aY��&D�a0o��'�vs��(�
��=��ܯ���F��Ox����0�k11n��?z����y���zp����sh���p��=!�	rw@��3��҈0U�[��i��Ჸ���i@���hg�f�o�M���TF��Ӻ&�
�Ia2�����F��>~�e��r��7���kJ�JRK�|"857Hp{��F��<% �){d�:_����R���v"����o$�\ȑ�)Qh�F�AY��}o��8�Dt��769N岹�*'F��y輮jn��)ir9�@[����u�@	��5U���MHq}L�	Ii�E�\h�ȵ�7�܍�X�T��8���q�I[�����p���ĕt(s�%���j��Ue*%"���mQx3��gp�c��K�ʝ�SY�V������-6���Hx3���Q�cS�q�R���O��Ub��	��bY䒸RR9S�4��.��9m|up��mQYS�
4Ay�M`��4�dԔ0[�RqZĕ ��8,���)r�P�7�v�:] ��(e�:�'����[u��JH�e�m\*��fp�f��G��N)����ss�
�bB�2�w�71���V�N�4��m6n8D�w%�Ai�Uc�~b�c�zX2^�;�Ȁ\�=BNE9!�X�2E
W
�9������69C�[�T��qZ;�
��%J��Y�m���HS�-���n7���Uw��.��?��hS���p3��t�q5�9,H�3��E��8q�����7�39�-�#��T�a��fR9eN�S�cY���	������Ts��p[T��˅'�}k�~��o&�Y��X�C��&�a`a�Y�-�L��/	9]�+[m��舉��Ab�Fm W��\Z9�
��E��zvp�T\���Y��0�����^����.Sڠ�\>�����o}}�g$��V���f�&�k�ꉃ8QtHĉ�ڃA|�h�H��'��1]�V��,I/��
�%}y��u��
ȹ�nx��j��{���-ڰ�����߿���J`������^Y��e�H�fx3=�$�T�@��gx�d,��u��֠}J����Φ�1�i�@K$�X
��$�iW.Wf
����ͯ	�+u7G�6Ң�[�灛ѵ{�gr��+��QO��6x��3�d�MwH��=	{ʚ�:�GM 7�Z�5��9WQu8	n&��v�^fs/Xz]�Y2�K*�6��E�m�PXz�����fn��n��n%�u,⌻m2i�[����ʕ:��[�w�=dqGGԡ��#�*J���Vk�@ʛ+�R2A\�j&�t'���+}P�5��laRqS��%���D�Z��$��:oo��c��
�f�%�A��Y�D�KS��LA�TN�Kڈ���j�R���������qe��9��p��d�N�ֹ���njo.q6mtɫ��my�]TJ�յ��g������$�4���%��ySƛ2��h�����`M����J���e
�Z��܇�@�pp�<�tLNeʕ�]�l���++�,�gysqC�p�X��羽O3�I8����f�������(��;�eK��Ƈ���x�VeP�H����L*'>g3ǟ*��+��/K&u���E���<��>�n��=��L�LI*%2�mfp+YR�՝�ͽ[�d0w��Ĵ7�o�*%���Z��J�S(��m9�3�d&u3�I�
��ޖ�7���5��������{��T�$�jly"��z�,u4E����V�MEH�^��^9kKZE��Ό�|Cc��������9��0��̅�+��=iroRp���tV�팹��C���1^G�E��@^3rS�ͤrn&����x�����f�7��44}�� �Tͳ��
��_U׾j��N�.ڰ�	9�Ƭ� �d���\�6h룠�OJ ~у,��*rf�I�ܬAN��ar��r%@2<�8��籛hzW(�XR����;o]���q6x}�������f����t�.ԡh��.\a��������p�p�O�7#�Gq�係܌�Ҍ�$wE0}囊�	)Ǚ�<�M�w�<n׫�;��R�׊e3�����
z��MUOF=M���f1��D�2KVs�v@�Z�V낿6f^��[v����fS�r8D�n�:�KF��bz�����4y9�7�n)o����}��k������2�݆��.#�v�
®lj%Eb+%.QQ���\�lu��H:�LP�n*����\�g���eX2�w8�h��Օ�K&Yw3��>��<
��v�/����~����q�vA��fn�L�*g�q�|��Ox�ap
Y�*����͍+�f��p��q���2��pe�L.d���+����q�|W�����	0�����m���w�;_��n��oG�]���o�	7����e�HC
�D��2�/ND�ۯ�P�UT�<p�t��er.r�p�����Хx����AtU�7�C}t�~E�%7��۸`�I�.�[c��X���n���W1�뵯��+Ǖ�R/�Oo+p��ם���p�� ܚl��6���ʗ�w9HM��K��x�2�X����2���Nt��R���OhU��*I��F��ԋ��'�x�K�T�1,�\�
�]b%�n�$˶T�2cX;�
�{2��01�,x���RP#T��~��{o��d��z��;;of7�`��ߟ��$B.tI���n�%i�r"U݊��Z�+l4ʲfR���^m�]ɖ���ޠD����QklI"]�ǀ����|���	ʃG�q�m�)�d2��2=�A��Pؙ�(�pF�Z���G�h�eU�d�h���ݚ�W�Z�����s��R���.#�+7��(l�+�1r8�'���#�8�hS�F��)q|*��Ǽ��ʴ#�W�ИF꙯|�p)�����Ի�loSs�$u�v��lW�Hۖ
�
�V�mz��ʯ4�V5����.q��"Q��,�9�
� hcw��w7{��q9�+��/�tؑ���������v	�5{�ycܦ�&KM�[ܕ����o�Ֆ�5�x~�sH��^m�F��
~>5��a�xmq}����[B���Ǖ���qF.!dz�R�Ǎ��@)��AG���ɲ7R��$䬯�7X	U�"��c�.��`r�^��L�tc�,r��M��M��a�DM�-��[��n
��?��r��S���S�8��,V��D~����쬢Σ�8㦘����R����Zw��
<��ب���^G4��K��wx��w��9�A����������n������q�p�v�t�;H�f�\�"����ơ��Wލ|nĚ��I�������=��i���b{3�-��j�[u�ֲ���4����:�9'��0���-��J��6o�
چ��n޼q�'�S�m�����������fr�07��c�#q���5�Q��U�����g��?ٗ��?��asf<І#%n��J���
�y�Ia��U|�nHߖ��)�s�����׌�H����‡�Ҋ7����<�0y�x�z�̹���O��8�k}�-�1i���o�VI�-�R��k��]�����F�dtGg�Z���I��ȥu�����>R��׽֊�(�|M�2)�?�/�Lc����0�K����qBw��X&.��K�����(��n&M�9��'N�]�V.�ᆓ������#��K�v�o���zq�~�ʙ�9���y�&ưDN���1w����ച~�w�{7���$KNU׉H���P��[ML���Uw�$
;�rޤ`��.�.GkK�cmu�0*��6�Mŕ'$r��q����|�W���zf����'��nJ�+��B�8Aw����`o������^������ר���j�YյZ��5�Ès����"��Z-`U�3�~��ȅ�F�'��x,@��ynvH�����t:��p
����q�@�-�Z���6�T9#��h�{\���k��<�})�:��`�h�jF�@�x�J�(��R._��\�tr����BJW�	n�^�
��m�b\θH�/��o[�>3w���q�nI��~���p��A�p���D�wt���NN���r��Q���]n��`��cS�h����!�8�r��%^���������dk)��%͊����Xv�2���1l�睍�W/�;���ԭ����3F� �B��N�4%��`w��ORL�{`[�\�dW)o߾�7�N~C�Ao�	�����
�����E7ӄ�M�2R9�"]��i��Я$�:px1nj�r��[��b�\�|�[�.��Em���tʖW�������S̒������P�D���ZMD�ى�v�ַ��O��K۳�㶠;�W2t����t��39~��o�h�E��S'O_=/���2��g�S_eXc�����y�Ĝ�
���%��~@��l�[srk^MBTr��U����=ۈ=�s8���:q���NA�v���[fwm����η�S�I�lI1d|ß"��1r��
�)7/6�Q&/��cs�����D w_�N�Ci&p��V9���J��f��.ͭV[��X��[=���|�� ���s��^�
7�
��E{� �oT2��t{�$��|%�
/q�@#Ї��+!W���N2��[(u��ٚ8����bNAG7��6��fTP�7���Z��R8�VGr#�+�+Yr��W�e�nG�
_,9ɷi^ags��\`�To8�n}K��� �\4t��1��k�G�W��a}oX"��5�>벅ij�q[�x#�H?Y=y����]t�R�O�t^���ɘ�t?��*���|�����B_�P��#]N�� ����^V�F�ѕ�k
�}���%Z|DI�-��#H��=��;�{���c��E\濶��Y���1 |�F'n�~;@͆��Zύ��Ֆj�o<c�u��w�(�ۢ��BIEF��r�-�_�� �K�6
'4��(S�6\L��5Ě۳��R,�c�;fNc-H�&�zeT�21qz�fAf�f3&_��"N��2�ןa�~��9Ս�sv��%9� �p�h鉮�-�Z6�f@���/�/Xa�
r��}��p0)���
�ɀ!N�-���ONrc����p�M�������6ʝ��B���%nWu�p�pS�-��K+��1�at�U2ɘ{�N�5t��U�Nږ��J�5'�ͧ�mQ�m�x!�`����Ơa����F-6:��;_�0�|�2�� ��R;�d��-��f��(y#�7�e�0 N��f\�œ�Hu�<�w��^,���G*'Ww�&/7Z&W#��SL�n*L��`�I�w
�Ym7�?�+�	��G7�ŕD��q�4{�$,L��%/����(L^��qW�����J�-�?N��3�W4���� ��u��o���v��'��k5?�0Y�̓6'՟Zj�6>�{���>n�p3*%`.�0�"H��R��P��|c���=�p�4ݫ`{�6�z��6J}��Y ����ӆWPI(�GŕL�)�<$�F���eަ�M@���tA`y5o|�yY�J����F���^ݏYʭZk��17�	��{R�E�(��97a�1�q����u��Ԝ�
҉c.�\@���2} ��B.�h9d�4��+U2�
�5�jn~@rJbW�����
�ބ�{����S��<�R��n�I=_��6m���:�k���M�rD�B�7!��J�r�cz��>���C��l��g�{�O�rb��]�c��[}8�ʙǼ�MMLMQ*׷�b.�9\�Q�]nm�\a�%�(��@(L������C%OBM^�4>1��A�r����"�q#tƬ`��Em��0n�Π��7"��K'?8��1�Gm�����*��
c80J����_�059�0Yt�G��spp�O.�oT\��
��Ξ�w$wp�v:]Zp��7��n�/��6)S4b���M��d�:��J+�ZD��)2q�Eۣӄ��0�-�����]����5:jǕ��f5#�Aj[�!�fi8\OD�$��[��*bI�p;�^�సr-�mo�S)Q�}��v;)�h�n��f�a��F'����͹)���Ś�?6�-�Ӓ#2���f���Z*{kk�>��y��c�ij\�DL��'��<Wx�k��fp��W\�w��Sm�1�+�<�	�X�C��>���c�fo�U�v�kg�.�\T�v;W!)�8��e�HoW�Y\P�4<�ض<l�^�nn�S�^{)
7w��+��F�K��p��c��QE[8rd����Y�(͐R94�_W�]s%���n�%H�n�p��]ޢ���,l^9�pB�Ӹ�¤./B�=3E�ِ�l�8�4,Neq̝���Ȟ��nD������H�#�"�.Z�q�q�Pxc�T��������1o n����YR����-����q㍁$f��^970�P�<�jldJ��-D����M��8bN��F[����L�QlT��g�r*�\6xc*�"А���.�!08��ºpS:q�����i8n�I�\
�r	6Ԣ���Ι3�nU���7��K�b|�[]��F�&[q�p2����$��p	K�D��/޻~5�6����m��2���Na{0D!g��)L�d���^5��
��
�
Nh���������%,}�	RK�>���>�Q�Æ�-����f�^EJm���)��a�p�p7̘����_���{_F#g��0r�@ �8�8v8YK�kw�c�%dfs#ȩ���c�.��zG�p��ĕ���F�$F�K�[�i���_�M��r-��4��E���������~S�ʇz���8�2���.L"u;}����%p�\��݉+�7��%Z���b�{��q8�,q�[8��{F:o�F�Q5J�7epBO����!i2�"�cNP��nvI�.L�ZTX��p����ݹ��Z�a��J,A���((�(��pQ�؅����PA
��PV3�t;(�6���0�a!"�"�D���;�������}��}�Z��ϡ����N�������i�?�f�i���8��4��ܯ<�����R�\_#oP���!�T����˗��3�\��z"�����;Oc���7ƔF�uX�Ӊ
.kS�>ٞ2S����o$�p��.�aȯ��!C�ز���_��Hw��Mb�\!�/�2��ڴ�3&�Z�T����6�{#�9�e��^��������-�PM�'���A�7���>=�Fٯ�F�7%.�
�]q���r�~��[�����]���g6n�c(���K`d���~�/F�[�8..Tj�6�rw�n
q��.�q��Eqe����Ak�9�8%q��)qa'��Lu�:5w!v�u��A���r8�M��j���'�g�=����e��*C��E��	�
��OE4���}�e"G�4�-�UBo���}'����D�ӈ�Tr��%�.�8���À�h�]��z�x�ÝF������!nQ��	pW]7=�I��&ۗlz���p���?�
�^郘��F���=uj15@ҙ�s���
e��jp��Eĩ��v�q��$���WE\Y���v�9�L�5)rN�#rڕ��	( N,ηmo����]��_+Ъ/`w�H�m�����	r͞�ET�ю�N-��0hi�j����ئ��+�$qaLI�H\F(��#�Ԟ{��F�,�4ࠚY<�9�\Кi�V/	��a��!�\?딄�k��.e_��*K�"�S)nƛwU'�\����F{�	�;��8�$93V�($�|��ey��~a��+�.���"9��ݍ}��s/p�™��*���ȅr��%�8�z
r���g(
,��\��jC$�4�)-�fv��<�����zK庯����[(�%ƒ�T��%Д�a��W��た�-n�6ζ[&1K����J�2 ����	CL�^xB��Z��70�bx��.f��Q��[$nh�!%��9�p(l.x� o����}���&�TJ���,��M�+�mu������T�"$�Q $pTby������jblQ@��\x!N�$q�䆂�@�o�Xr3&7naY�ÇB�]�Uη�5��\�\�R�]��+X��6�J�u�ᔵ t���_�$o1r��AAP	ܮ��G��7n�
o��q�:�����pE�1�|����1��R��72r�-n0����ߧF��q����Т��U�dM�����Y��V[���!G�������9��8G���_�D���J���Z�?Uq��*(���Wf��~���в�t7Kތ��WR�%h���\�Z�ZɃ�]z)�#rA7���?�lÍ�+N�ic������y�V��岦pU��d����e�k5��!��8U���e�M��Jlb��Ե
\]�ڜ`��1w��M`�O=1�8s8*".���⺊��>[��]J�Rr��*D,�89qr �&���@\i^K
�S�
���T�W*p*}�{���U���6��܂۫u��Lj��9=��)=
.�\M��������,�S���8C�Ľ�������Ŋ�r'�	o8 Ƒ>q�V�>'�����>^��)��� �Y���u�"�	��G�؆+�R�*I�f�HeL�M���\*��X)�@��iT
�.�FxNxqP��P�^)k�d���6Ѳ ƜU���HK'�L�#c�`Yp@��8��OJM���]P��ʽ��OB�w'ǫ�ę˙`s�����$2��&Ⴘ�NI�cH�"�T�۸e���6����J=[��W�xh���F�2q�J"&Ѩ�A=|�5���l2�޷��!8\B���Y�Ĵ7LP&n8����8ܪ�()u��W���9���8�/�t:���1&ny���+wܙh��^�`"|I3��W�;/��:��ƉS9ƕݯ�p�
ܰu‹}r�]�n�X2{��JP§�{��חw^R=��۩S��\��ʀ1ʟ��=��,.�(�����(Tr
�����6=@YD�xet�:CLglrc���9�ju�+��]��Kg�� VX�s6�Y%�ɡ�F�/BHI�K&�"��A��P�g��0��.{
�%q�Py�w��|G��O����9�R9�����&S�}��L����K;�߁WE�
.ze�$c]�_�ϖ2��7�བྷ_���é����.KND�b7�09N�R��ru�w��dr��xM{��2LN)�US��c�9R����9�9y���I�JS�bGż��z�9�(Uѫ|��(�8��T2��^a2��N|�"��VN�t��m�[�� ����
h�D�vp��GG��򙤼���&�]�����Y��é2����ESe���.�(isb��A��L/�ctI�@�_9y�vK�
9-������l��hK�FM�l�w�ŅA������\��f�����G�'>��u
�,�X�M/;�;���9A�������ظ%�m�bqeIӸ��fg�<N�S䆆H�yF\�����D2��may��)48���+]��)Wu�� \��W�`?��7S��D�K�\��[�J�zu�Ws��fI�0y-�
z�W7���r�������/7���8*%3��U0p8����_ߙȘ�!��#�ܸ���-���6zh#q���V�����ߩ�l���n�0��f�0W��b8��8���p���5J����9��m��0}�q����l���{�f��s���B���9�3=��	�l['��7��n��E��0��~���'y�%���WKܘ����.'r�o7��8܈UM ��0�J�p;����"g�J�jr���
m9��7S������+,���%M�ʋ��D����=9��gI\�������T�qjrH�:��F��&��d��U�4��Ov>i�_bI��e�������p#p��7���]v~�|�|N�8(�VWW�\�����@���*�}��<i�9:c�!�X��ܫ-���J��p*�Aw���
�\�jG��ωW��G�\{��W�l��~I��;���nxM��7*���^8�df��8�����z��l�}$�p�GqS����8�2�sG��mzU��F�XXXXݢ����4��(o/8�F�t&
�À�i��{ܗ�Œl�4����bJ��Z���^L��q���g�\�'(ߦ��	��f��ٸ!!�ƶrI�~u�����d���Xa2K�B�%n�m�J-RF7"�o �u�D)efoI���Zmms��J�#m�CA#p�͸cw�&G:��L�1��W"�4�Y����FA3��k�wW���pD&G�EP얻QY�� Kߴ�n(T�P{��=�o4��(5Q&nm�
�6(J�f����Zܠ�<�2�+[([P6!���˵�W�*i��g�%�Ɓ'�O�.K��Z�n{����N����Š%����❄T�d "N�<��5%�]��	ʝ��F������wI)��J{�;��K��A�q
N�-N�.�S�s9�ݕ���������n�p���^��������
�5N�K���D��q4DЗ��](��/ĕ�iT�������M/=R�L
=��*�)�q7�,������JI��t)7ֹ�,�D���4y҇����?o��ԍ�ZUJ�ŶJ�ӣ7�m�����J9�9C�\��0��B]�p���.�m������f6�P�`Li.G7�X�"|'K�zk�o���W���hX6�&�l��i�o�`&p-9Cn����E�,��~-��Vr�8�n;�����fJ1�­��w��
m�7��#��n$nP�ũH�R8?���	 ���N{��A���6�;9G܊�f��"��A�ۿ��{L�k��2�a�����s�\��U�G�,͖���Y\H�{���y.7z��ޘ�uy�n���U������O�|��/Er�pQ�w^��b�V�8���g���t�%�Koc�K�ndDY�S,�e.�ܵ��q��6��ȍ��n��w'��q7-,׏�8(]�;s��C�&�I�X��'nM���MF,�;�5'��
=�Z��G�¨2�82g&G��a�Į�MP����M�Y�f��t�5���|�XZ���9g�ű��ꕢ{.��#�rŷ�w�p�"m8=ؘ��@ϻ�r8�񆪉2��\�l��j�������W6�w����M2����$J�?�O�[D���i�����:�&��^����s�MK�z�Z����n��\�qjr7����¸�-��]�›o�9!���9��׍���ތR0���_���~�7'㵒y��{gy᝱b���
ҫ�':`p(%�#q�
�

(n�
�f�ږ �R����ɉ��-E��11�����ƕ�'�77ɛ���Fv��!2��T��xP�lΐkE\�:IcJ�qV��7�'r�F^�r���(����4=�	�]S���wSO��������XZW� ��LP��X��
|9�>n���aq�o���b�;���0�Ț�
.l
��J9�!n�-'���ߴR2;;[�	W�|s3�6&�7�V7�/Rc��YY�:yrk��fowѷ<�)j�&o�Ʈ��(9B�[5[�2N�B�q�r�959��B��r�?�T��`�̥ܿ�TD���R#?g����R���^y�S�n�/*W�����wob��I��x��J�fę�a�f�LN=n���[�`�f�L`iR��؞��7S��;�zr˫���U����V=��si\	��!�^���(���J���8�z'���ɸ�ۺL��d��慣�D��U�4G�>�q+�����t���b5�y<��69-�1y�pS���Z�1�Q^�5JF�F�X�p��N���r�n�nl�~�¤klZ[.� �1�QGP��fM.+%�5��:sT��u&�r�	rCՓ�9�"KVU!C.��8���JMN��	�{�K�1u�ކ��Ie�n@��+������G���y2������<�6\�<�\��p��A7�8�(�7�e���TJ��� ����7�Z��v�ggQ-��I9e�r�H�A*�rdm��>n����K��E�4�d�j��a��'��ŕJ�ƅ�-�A�y\����5��ƨ'���O��n0���Ya��6�T�}"wO���co��w.�,��kaE�mQ���;��M�4J;�F����Q��K�[N�G$����%�2f��g�6)\�&���Qp+�
q�b���!h��KW��uSl0��ˊ+���Z9��4�"r��\��:��TSwv!Ҏag#�R����LH��l�zە԰��Δ���Ɂh�M�L��w�X�KR�Q
IiS��	���s��3�N����5(o��}��=W�z�~
��6��F��258�g\�­��2=EĎM-L֤%��yc���ho�����W��m�qet�w����c�hpV<q�`[��m6ބ%G���&2�dJ
�N?�U��t��9V,��������%A��p��xJ].탓8|�S�A�q7�fW���L{�c�w��7�����5��Ykf&��V��V&�<����݌5'+�-XEɞ��y����R�� O�Wz�����di	xS�X2��p�g�#����v���o�����5cG�K��n1���
)���&��uI��u8��1�T��r�ܙ�g�3��X)1�p@y���fZ�T�`/~���y���j��g�N
7T#al�k���t���L��&�qRĭ긅��'ip�m\h��>@$�7�ہ���ͻan,m՗�9r��X�B�s���d��zc �]�T���EՓT����b�۽VI�76<���z���J�8�9�|Aq�d+&e�2�6�9q3�I���=�čUJ�N�bqhx7��Z!n׀�T���5���[.�6)���%�A_���C��"�p�����n� Аo;o�6"���M�M�[�c���$F�c9כ%��`�c\y��\�
KzN�]���dr�(��ĕ����v�)�͟�1??�������&��.��=w]����?�b��H]���
�ڵ�Mr9p�M�Ɏ��K��[�q�
�:b�p�_�n�uX5������s�p	���y>�_@Li��0\�(�Y�q�����~��F��8sl�\٧���!�)������匹]&G����[y\	�j�1w� �� ��?\8#~Lt�[?��Z����]��&lLC�up۬��x)��I��n�'i�\U�†#�7�p�G��w����^������r�����'��Y����������,�s؜7$��m�M�v�/ �26�'/�ĩU�A�E�#A��J��Lnܐs�����CdI�T>�Ca�����ͣ�ؖxs�����E��ɬ��`��>�ޛ��p���p)k�m��-���-7�����
;BWL�'t�R.�<��cM7[�,�}��#)`����[�L��q['n1p��c���E���a��+߅�'˽�2�Lb�$�t�#r^<�ܼ+W�EXY��9yCq+��-�%�9AWJRJYX4	j$z���Q[߇���-	#; �ц�	�mQ��q��;Cb�3r�hn�]�M����M!7v����:0˅���—�H��g��4��l��k�S{�=ݳ��������K*�S��\�ʥ��*��6���\Lܨw�3��+�䪊�m���i�\*�>@`k��U��z	���C?o���O��E~K�X1)�&pˤ%�¹ٮ�`�������&�d"ni����q���s�'t�۴C�R�$�D�D��2���l��n�տ�6���Y<�
,����EJL.m����\}��^�%M�������a�k7#_���Bb����ft�e�F�6��N��y�C$p�۷��h�*���Z�%�e+Jݸ@����ga���o�M�-�
���&�I�G�!���Fhf�u��9rN���2moo^|1�P�t7��4Ԁ�u���+{��y]s���2�W��Eȩ�s �ȝ"�͐�����Q�n�(�́�]�rb��޶��Y��ŧ?�hk�;�7(��2)���\M���$�4�$eU�[� �Q�Dn2��$��\p�e����D�7T$!|�J�]9�Q%����dR���W\\ēp�fC
���ƕ4���ˡ�f(^w�N�'��\O&"� N�&���R���W�1)���R9�~�Mʕ�|���{�������v��@���C�?���_��$pͦ�(ۭr�N�k���Q�?���B�59��B�7�AY@��m28����6�ۀ��
 �&i��S�>�M��l76s�ցS*��}��o��h"��)��\�+��_�<(dn8��X7�9�rǧq%�'49gq��LG�LH�6nB��v�+�ʇVk����J�sa�dWvj�ˢ�R\�$n�M�7�a��7��ܦ7�~�M%�I�A�Ƨ2y\�B�:q[�OI\x�fj@ζgr��m3ŭ!�����\Е;r��s��B�p������;z�"M`���2��*�l6�� r2�9��r���r$�˟��/2n5�賯�����+ �M7��LR4iԚia��F܂PRN'���)�64�0�+n��2��8��'ʴ6Ƨ�u[�Ϡ
�G�>���y;�]
'X4�[$�/�3Tp�	�V{�F�+5�4�ލ�Fv���+�
[���Mc�)sSc1qՊ@�fΝ�?WXs���ʽ�!�졥�f���Q�j_?��ˢW_�<��e��DAdV|g2��]�nQ,I�8N�K%�mLi�F7b���f:
�ɔ5^y
/{A�����)�ʀ�
"`%���#�ʑ+O��ŭ�®���TW�ʼ�/q^��sI�r{,���+'�1�S��
���U���T�
x+B*�wpC��"st5Lkġ0)��V]�}.���i>�z
����O��#�,q)%J(�����%�U��0�,`��dq���9�r缑��̉�!��&��ρ5,�l��O��b�F&Nf�!���[	��09�+��W:n\妱#��'čb�zR�r� ����r�ܔ0'����9�y�����R9&c�x��MA{�v��me��g��뭬��S�k�V� ���4A������J[ʛ$n89u7�o���6��9��$�q07��K�p؜:^�����Z�x��������T��4�[@����'g�ȵ�38^�U��E�S��"p���C�q,�ʽM�xm8s���I����V�"r��,���9��
`���>[(L
V��X�K�x�nR����_~�Wqn+ˏ��&G���Y��7���� �6�m�h�R[����fp�]�>@��2%.�<g�6l�
�>'��ʯO{wܶ>�S�Գ����	|m�54wCs �C�� Ը�/���W=�a�(c�#o=\�L��M�j/ g&'�	r��JE��s19JR�R�@Y],BΟ�d]��;>�,�3�:/-���xu�7X\�-��S�('�� n'b���HP��۴���
��Q[�8����'�ͱ�p����No�4��!rq�YϚ�okX�RpB0�鹕�Ug7y��q�er� r��ް)��LI��W{��tb&��T4�)�6���,-N����T.y �F��cKy`U2������Y��DPu��y\E�o)q/��#�ɳ��[E�
��[HS7��Z[��M��;00{�h��9q��i+�'�+K����_害E�Z��Yo6�P�N�4�4�n�6(܈�m�W��at�2B�ػ(Y�<:��	���qP�ܤ���Ĵ���sjq�
S��n2!�M���m�bK�H�J��+��H9�	�=%��_�Ҵ�E|���a^(G�.���9nnnƛF�!mc%��Uc@-Y�Ŷ�w�6��Ld.�.�N֒���9L_�	n0�=�����bT��(���Y�H�Rwc�r��!��[���7O��ʸ��9�s��A�2w��������:k�:{��7;�6�#�7)L�2>�s9C��ݳf�Q�������g�&�N��)!N�n7^Ek;?��B�;�}7����-g
7���7b�+�+O��83���ŸR$ܱR�����M�i8L
�S�a�f��
7�6`]�,K땮��=��Z<ҽZ)����;&�T�M�	dnzjq婂�	�*G����)*�Cd8tѤk�޵����X�M��(����C�k_�Zf���J����ܪbn2'0��{��O���dr�mt�\�ܺ�Fw�۰��ȥ����eu��8�&�\����T�ȍ��l����3d>GCv�LNu��5)���7nnbnjznj�ٳ��HiK��A��׻x�K�gku�5�@�������7��o��^y�=0��2NqinoN[�P�45����H�E��p+�m�\���xf�Ǹ�s�nC�&�:��?�[…���\�|Kݤ�7>\
t���F��O����q����+,��z)n(Y�G��s��l�����,�K\ΑKS9o��YH�=���a
Z�,���j��k�x��V�Sf�Ys�'���]�wP/�hȽ�j�_���\E��>�����
M��M��M����M
��`�����.�~��Q�66�@9j��|ȟ�E.��3�.M�����1��sL]N(��;8I���,7����v��*�l6n�M���90�1;Ǩ�\�ȱR��'��-|,�
 
�pcXI��{�}Q;ۦ���Ĥ�����on›�Fg3{���,i�霘b��Xo�9n�n��)m<a���Mc�u�Gɽ�Tz�V_{h�����M����ũ�%V�p�Weq%�+[���
����
FYWnT�q��y���dN܄w�0W(���
��$`V��X��p�d�a�58Zk����V'��d�y+n���nƛ�V�Aomq1���$i�ky��($[���.�����a�sڣS޺/Ӫ�*o��V. �\��&����]��z ���yC�r�:溻wҋ�Cdi�E�	o���7'ĉfe79����n�
�ц���8��n�w?��cI#�Or��d<	�$z�Z-��
w;��ȝ�����6�X)!oZ(o�E�\'G�@�J�+}z;��T�ܪ��_�������	q�OT��4O�C�:$P��2�2�b�X	q8�\N����JƕB�@G��2�r�J29� 	Z�|�4���K��Hh#tz�A=]�I���R�J��G�c��m1i����:	h�l:J��E�I�o�D�x�t銸��mܾYFIp��z�Z=�dܾ����'�xj��E�E�w����f��)sq�ҴO┹��'���x��&祓2䐢�'�D�	������TH���g '����[R&�n�Ӗ&*%�%jn3g(n��<�a#nN�.g�1��˯w�\�,�m����yi�:,}��w����������D����T��pr>$4��8؜І�5�7J]���9�;ā�I��C�B��M����Խ�]]K��)`vv-�"xн�`Cڶ%���9n���د)r.57�f=n�
�c!Ц��7TJ����й��L�����&@[�I�[�co�_��]�x˵�hC��*i���qo/�!�&rqO����1�#tq.�T���.��W��/���i�[�ɕǸ�l�����X*7����9>�u~o�|��j������6��"m�M��Mk,����e	םBٝ)u)~>�V��큛� ��D�7�t��������fu\2m��z�\}8�͑U��rq&whlr��˃�su�H�z�N�Jq��R�r'r`Φ2"�Е�r�������-��$�7�9�ך���J�ټ��F�.<��,��``����ɉ1}'�aN��9l�b���CTƜ/�\���p�F%�8~�������5�/�Ŗ��?�VO�`9,��KV{�ѣ$���ʃ�]����憯~��r�s���r��M�Ĕs2A[Z�Ĉ�K�J�6�<z�;�%�u�����pl�%���7�ە���ހH�p�<&�6�$��Y��cfS\�4����!r�S�zA� ���ƥ�'<���-�!�
�=Fd�0I�ˁ����6�L땘���QD� ����"3��^&�F�x�KN��K�m�茳�n��`18����78�L2��l��C\�����ĸ�H�nW��r�Q��傺��~�޽s����!��/��4ľ1��w,3��%FӼ ��Dd%d�ٲe�N��Bq���-d�5�h��!�q�If��dɒ��Ҕ�|��{��<�;��c�u�<�;��?/��[��9�TGi"�+0�A��5^�[��%$N�sc2ǀ�S-��J"g�L���X����HR���.B��P�	��q�����M�H�hzG�>��*Bg�1��߭)�$q6ʑSڮ�:#���p{3=XBL��)nuJ7vG��I�ُ�Q�q'�Q�`TY�ؐ���t�N�v��8��`cCnӐܶ�A�<r n�.G�0���QG��c7
���6�d�Z�%!��l{q#e��Ef�p�Dw�u��;�%;p�]��E'r�
�d�>Y����J����Aa�\a��frc�4�	q���>l����W/]. 7�ȍQGbB9�O�rL����Tf��
^)�+�y�L�h�`k,���5�Mu���ɓg�e�(�+�9+��}��k�y��7��7w?#�k�-�v��t�;ϟ\��$rg�n�܀UN`q����u��o*F͒ȁ�!�)!���ܑ��8�\�K.���E�؟+~��4n>u��6
��8�!mV(	�ܶ��jmT�L��0�{����7�C&Tk#�r�)	�j�^����[��Eӭ���
�lQ��l8@Πr@MX��r���s�+q�,��
G�s�^zB�|�Du���]vq�K<m'����ǹ�C�758a���6Ӆ�h�����#�\lo.�k��`
2����|�AM�Y=�V^$�A�)Y�?��]1�cQz�-�Ӌ򸁁����
n@]Τ����3OڅTa"n��D��Hs�M�2�N���feT\Aq����x;���� o�{``��d�C7��0�mDNΘ�†a���F��Y��H�u�ە,L��g��S��Q�:���J�9�o�%y�;w�?ה��h���^[lQt��\E�RD�.ׯ�z#?d�jl���s
�r鮜m0�w�39�w�s7���	k{�؄7�x�i2C�}p7r�jd��}��nMC��K���q7W�L(�~�]�Z$�R$�+�M_��˭܌c��5{+TO��8�'&fq�ipq�R&#ʈ97L�HFY`�z�W9sc�����m�,�3�҅IL����n�`�F��hI��
%�[���N�9a��Pz���1j�;�vUu1������Y�5���VS�����c���ʑ�Mn�m�"��ӭ���ʱ�X�H���PUz�[X�\��ᆁT.^�U\?�J��%����q(pS�6��gK7%
� &7
6�n�/'m��:ޭ7f��Bܘ������),:/�Ϥ����yՎ�[]�5����r�q��]�ȅв؏���>t:{9����!��s���E�7Lĕ77��_%�����-�Fs;T���`�$X`k�nJd�mn# .h���Me �r�\B��-�訷W6~�}���G�YN���DB��n(ɭ��ܭ�����)nҋ�4�,"G���a%��V���!'F7�K�rG��]N�;X��8KO�PH��*LZ���C�;ha� �� ��&��&Y@����	Ʀ��s��č�u�栨�b�9�[�}�o"�r� Bh�?�y
�!�̸'��R�|���A������q4���
8��@܆� g�9�"���	��a"���z/�f_x�
�a(m�)s0���q�曝P(Q�ڴ��2�$hBڦ�q�ĕ�\�k�Ȝ_pI�k�x#n^8��Յ��X3r�$n�p|�U�Ӿr,o�7��e������7/�w�%r��6�(o��놝U]9^��A]ΐ�29ו�M�o����.g����J	��t7����#(D��Ɂ�^���L���mĉ���\kp�gt����������n��K��s����'��_�B�3`V?!�^h��V��J9^1y;����
ZTI�\�t�>]�E�(�bq��Pe�O��	?�.�T��!q!�#l|b��+M��݈h��Jxi*�[{���a�R��٦��~�WΛ�)���<�pk���]^�9��f�3e�\׃J�3r�J��&')D
�^�F}w�V+A��-"���--�D6W���!g��>�ɻ��P�(E����7_�$l�6L�&���=��;�4��
7��3�i:7qЁWrZ>W�t����'28�K��,?0a/-?�.ձ�����dy��f܄/M��A��.���I�z��G� 9��\}Y�����,��һ�+�\��Q��戝��G��]�l87s�2s���Ki��o�2Z�!q#n�I�B�"�K��r�{��+���P�9܊�qB
��D.����s�,��
5H��u-L�+��U��N*Ca��므�bV˻w�2��ж�<�y���w�
l18PPI���͵F8d�'��9�+�+r��
�8��ÀW^l����m��i@�h����,$n����
��7�9\�
�a�v��	m��E7S�����:|R����^���A%�(�
��J�[��b�8ߝ�Z���=�_Wm�8z�4{�+�/��u酛IT�+r8n]D���r�U��P�e&�V�2�è��^����<lq]��F{ވ��kkbnԨڛƋ�A�>��Š�F�6%�@TO���S��hz^���
����!��{yb�n���e�MZ�-zk�39�u%Qg��̲����1g�#o�*4�.��O��E���M[G�޼��M%�,WB�zXWIiW�Cv�cȂ�2�K!�&_䈺"@�I(�+7��%m;�`�d��hn�@Lq�]a��A���$kjo�D���f��u��9����
q�R�Fy*g�-t��A%�q7�Ĉ���W���6��~{u�YM������Ŧ:��P��<?���'_9!�����V��QpK!w�a.Q;Y'�Ti���Q{��|[N�#u�*rz��cp䘺]��qzo#o���p�č�1u��h-0�m�
��n��&C�J#�L,ɠ���2"�5c���Fq�߼�'�9�,S:uk6�js~�+nὍ�����y�笠������O=V�����^{�vҖ@�-����-:���{�:�\�m(O�]�%e.7�3����G��a(n�M����!�D�dR�f�F�(�Id��Q�v �9�pf��&�ALenS�-�anî�a�QTxz7L�
q���I�g��?��p��ŃJt$���D�$놛��[MNVLjw[+%�Nq��5=9�����~��S��D.�m��HoÅ)#��w��
�V#�NVx������9U�����`0�� ��قis��>���r�@�v�mT��(36ؚ��3Xf�$��0w#r�8�>4��9��`s��H�L�ԕDž��8WM8��ɊI�On��V����XM(���n��Eiw�r�v���Ҭ�>�O>~��+}�MI+"Ԓ6�T�J�
��m=9���1fp9ost9��r��Q$Np�R�+��+l>u�$�$o��6���2siP����
���I#J�6L刚=RKQ6#���O�7��a]]wt�9�,+�t-�#qKY�9k^+,"�q�,�K�F�j�MM^;999�˗�M㽵O�V�\&�k���9��T09"W�n=u�W��-69�F�pu�G��.0�3 i!�+��[�Ț�I���8����6�4܊%6�͠#o�
��e!%��f�r&!͐����Ԍ�kuM�pP�>f�sӿ��
�;��{��|M�f��1���O*%��$2�[��]���&L՟{
�!{�z���^���~J��Ҳŕ�L�E�8quJ�vo�關�3�1���)q���E��f�d9�&s�0 "稓�AV��h+�F�ˀ��bIp��z��\ń��7(�����E�ƭ7���6�U�ϣFZ�5�'�x�	�j�ܺ�櫋Hܚ(���|��Y)n����u3y�z�ݴR��S�7�gS--�]�K�>�a��,7$n�p�ɍ&�{iW��qe+N�W��w�T�n�Y_���܉]n���a�8I�s����gI��0o�芒�%w#n��0pS�p�H��E�2��8�ۆ��c-^F��}���F�
��V���79�|������	-����b�~z��'JWL�J��M��A~W�j�0)��W����~��~��\E?l�I@Y���9��dNR9��:l����
9
�%]���%Wd��^��ѕ"Ǐq �h��vw�e��d$1��v
���a�mc]v�7�6ܦa����9ƕ>��T��w�
���VH��p�Y��P�Ԯ��>�$G,ٽ��y���C��L�=�h�����T�6�	������r�q���7�0��pz�X6y�g��1���ƝV*�n�>�@g�o���>)�+��pcn�Y
s���Bg2蜌6�z�37����Xr�p`�[�Nh���nfp2b���I�m�}���@"�E�#
�p�(
Ƴ�*J��;`>��ʝ�C3yJ�Ͼ�@_��f}��驧Z�����ʟ����9	%A��artč�]��#�V�]���.��֒k�8M�|��-�R����r;S�\��Ӌ��`+��v$cIЦo��6\�m@f�?��aZ
����x3�Wj*����a���xN�A%R��`���pe�5�0֌kL���ܷ��x]�
I۔�F�^������@+ssY�TT%�d�A����S��(�󧜾�O㔶�S�t�1��-B'�08�G�)c��=.��ǕC'�n��ʛn�
s���p�(��W���5��D9�k{{�ۇ�	rI� Z�%��erP��0��ᦀ�\���}iܰ�����T����v�_B ��_?��晖N��fb����O��ZR�6�n���������hr���r���grd�6�����r��搣�����37��!�n[w�B��F܆��HdMATv$�%pĭ<���p��d7,��M�<X\1�?
=+L�7�n&nK�/AJ����B���멧���{��un�|�EN��)p���[�[���(�^_�M<w���+@\	�X;���&o��i����Ĝ<si���E]��J�GG�nc@n�$�����Mm����AM�j�ʸ�M�"�	�0��*	��ҩ\�p�S�2�e����v�mw�#p��}?���_~pﯧ���������}�[�m���Vf�S^~F�Gʈ��pRF��n��U���.^��-�n]���"W�X�
m��D���y�R�g�m5nG��0G5�Ā�n�o��HHS7jC�W"9������s�"�Lh��yں#��ԍG%�3e-�f?���gߟ�jiIi[xuaa����}���g��p���6`����=�Ὑ�W�X<��I�I�ɄZG��<e��3E����p}���5�L�'�8`G١�<N��
W�&ƜI�*��ӛ&���mˀ~�����62�j�p�]�m�p9W�ΕI�|*���?��պw����=���o���w>��‡�|���׿��ғ?<�$h�W�#3�<���I*�g�����g�%<�pk�����ǭo���W"�C��&�LΈn!88�h�Pgr6G��*O��i�PRS7�ml��7E
B��/8�)�Ɉ3�p��(�6�9���m�K�s7n��7��>���Yh�U��7�FDEPo�pQ\�wd��z�xS�oq#bj�X
UK;���I�H��)�������\�������z�$�Vg:�9���qA��[Βp��K��ؾd�Z�z�<���g�Rcj���_{^���Z|���'p��\3�|�;y��(�8+SZDy��L�#�aq�����br�DN%�����6�9:�4��n$�p;���2<�� ��tdžJHi�!��bJnp"o�.�G�E*O�EɿW�������άnc�rO^���3Ӆ�F���Z���ۻ���|~��H�LQٵ5����.��*�|q�P�\s�팓$i�p��aڊ,�m
�a�.��}uY:�q6�3)7>r����`�tH;���6���'Jo�ȯ�Å�L��7�戣nAW�c�S����p�׿�n\����ұN+%�;�s����j�����Tܨ�����\�s�bq��3�����XFs�}��9�%r���$�gq�����&ڊ3�<�9�8�&�x��:b�O�ϛ�<�
7G�H�y�ڰ�n
q�"Ť�$nC���� ���=�n��wQ�M�ܿ{�"V��,К}Ou�q˒3��Lc�5�x����5ܠ%�-�����&&�u|k���Ŧ���;��r�H��ۃg7��'nGY��}�2Y�T���rF��)e
�#u<���V��0)�F�6��IrLA͓]�ײH�(����&�ȱ��m�Ǖ�����[:o���I
�9���*4S-� `UF��i�.�V��B"�\.�������덩��lq��FG޼�ckʅ��r�8K�}"�T�NLJ�ř���r�sz��1
��u��a�:WI#m�
̍�$p���0��	��y�C�;:)�hB��"e@�G�ĕom_�����xʝ�6�+�dkǸ
T��&�z�p����TCx��#]P�ј��_���<P[�ϭק����_}W���)nD�>�ɵ7:��O��쓡�(z,�o
�:�A��vpi��ۄ�@�������\�ˆZhn�5�湛�/C�I-�xG��$Z����AR����&�S{o��؊�o�b�3]�Ǯ�.K�<�4==]]pKq(�r_BL�ԪH�+o���u������|�4������EО8.���3��9��6�t�N\+�;LOE��kN5qt���27
$[��D5U���]��!��m����st8q��r�<*߰}P	"I���-�A"L+Y��1>耫MM!�q@�W�+V�&p��!���L�co|�q4r�0y�9'��8���;Q��Nr��	��o�>Ր;����B��ZG��F���0<�hn(y��~�8Rw0oTT
�I�,�Tި��}��S�HW^G�]r5�V�h�$��,'�U�T�o3��l.�D��C֧�g��u�mW�R����wm�|����M�xOr�|z�}W��L�,.���q�;r���G�M9�;�\Έ#u����Fi$I�3o�c��?S�ÅG⨖)��s�<�ԡ%�6��n��ӭq��`��3�]�C�L�RɡY�ZB2;^ͣ&R�fkR�/L���n=-T˫?�V�޿��gPqy��2=m[���w���9��"�w�۾��;Z���~*�&�%>r�P�Hg#n�+%�a�j�J�7ޣ�i���$XH�J���[�?�bJ9ҕ[�_����@�p�>�Y���¶�»��$e�#��rv|<����Ku��ܵޘ�N��M��7��˳�5��y㳏�%��X�#&�>]q��a�1eSn��u�y���鋹�q2("g�e�Й��37�'Q3܈�� R���t�<��E�;*�HiG��t�}�L\���&�]j_�ܺ�@���T����[�K7�P���/�nJ���x���E�O��/
��!g��9�_� �8��@\Ȝb�c�I&r�X�]��1����B�0[���"�<Q�ͺ�t6�p�1���?ny��eZ����\�p�\{ˡ��[�̃��u��]�h�xPI<oc �J�T5ԒKn�Q���@���Oqk�[�7�p۳��y���;��s�$O
|�]9�(?t��›Y��qqފʃuxn���7���r�=��"]��@�d
r7����d�����@K�ڝgƔt����?�6�e�)Ք���ꠒ�D:=�T�22���H�^�6��S
f�ߡT�	pUt*�����v��җڭt}��A�K�b��,*
q�k���+���tw90w�9��7+TF�C=���G"q�&�p�������B�jR|�Wm򦨙H	~av2(��N���V�ѹùq�C�?����o3M�^�����ˏ��錄��C�������^�ד�&� 
)�껋/,������[-9]�AyT[6���'���c�T*�my2�yCW{a��c�M���a��0˜�2�l�u��P��,�4��Y&���!q��ס�l�"n8�ds��8R�;�2�Q�$qR��]���+��@�W�~`H��NPx�;bK�����%�"�
\)s��j8@�%����w�}whhx�
�+���;��KK3	�q$ƒ�p����1b1���O��Ap��)s��y9\���n��p�K����x0+��:E���0�
�
�1{����$�p�Ǚ�a����¦/���"����u��r�{�ޘu�e*�ɭ`N%W��Y������~;8���Eď�پ�V<�0�	r��dJpKȄ�7�g_|��v	�3�o��&����`ޑA%mR�:��:����S�5�&	�Ѷ�756��v��J~2E��T������a��?������K��6��ܽ�~���'��[��$�hSSs��	o#@�p�V��&�q��5����j�mN4en��MS_�$p���x�뮻�:�I�#o��oA�ۈ;|�������1�ahy��a����?�`�X�37�YJ9�9�;N}[�ĝ Ê&aΐ3{Vv��pD�mD��&x�"٭_�)�e8[������o���{+s�?CSS33�*�
B���
C�����EpW(VK�j��Ȟ:�'n|!���&�x�:�$���8a.��Nh{��t8�Id*`��G���,�kc(�¢9�-��݌7�K�<?����N�8(�P��$��&�[�/���4�tsG��=�Oo�br Ѽ��6)�Q��[����^�Z�����`�X-�-/p�C`���L�$��P()�R�y��x�*���a�1�����wK�;r�U���#t4:<��a򘭝�P��n�-��X��4Y��8\S���n��G���9>m����ې�qM��/��)YL��y�
q{���
K&���&n{VP�w�C�y���_G��]�va�%>�={��"�-�#c�ٔK�\�Ww�o�?n�
��'ĵ]��Y��n�������V�$r$	̝���S��l:�5��bH���/"�7hq�E7�"�q����+��[9�j� �-����R��nl��}��d"���%p������d8K�杺�����g%�	�͚n��m���m�	��
2���8L∜��Q�tv�õ��)'�s0q���(Ҫ�n��0Ɛ!jq^AD4�:��D�B��>��jXK�&1�{��\�U��ӟ����V�c}��}��h�9�`DK�^:��%\�JB\v��Mek�|��~��>���:�$z$n�>�ן���K/��K1��0!)U�~:&d�ʒ� ��ʔ;�JIk�d*G���ZB�
͉?��`�I(r�w�4�����`qWg�Qݵ�rJ/�ܦTN]M��ˍo']n�)\� n.]+�����'?��Ր�/Ԓ_.���\��a��D6[^+�j/8�
��[��%Kq��x��V@�Gp�țC�z 7�
#�jmp;�g"A��"D��hًS���[�\��[�n��E���a%f�,�+�r��Ɲn�1�
��򍠍���v����{�*n�v�
����G����Q���YN�S��Zo)Y('KJ�!l�v�6ڶP"�Ii��)wq���O<~��vƥ�	o�&�1�,���-:�#��(�&�c� ��	tak�I㋊v8Zi�x�������muJ�8_۲�kL�����&�wM��T�m5~	�������9ֵ�5��[Ȗ��d2�J�2����$*%�-��*!NWB�6��)%Ss8"�e�GnG`
�6����r��Qg�O���E܌��w�!o��3��XP ������hD���
}�X�=7��j��ag˃�ˎ5y��oq_
'�nɯ�N� ��V�o�m�y5��*n��ϳ�(n��x����	o�:��pQ'-���##�4���ɇ������%���;j�����iqA݄gY\r�ʡ����rmy�rnlC����Mb�vJ�������egln��׎�r�"��מ��2i�-�܀͍�%J&�}�<v�m�SޤLy��P��#s�p�I�o�E.j��Z�Ҽ~@g�/**�UM��=q��`=%��-�#��M�@�Qi�尬du����x���\�9��{��G�byV��`�,�[�ˤ+���FY(o�MIÃ�K��R��]aw�(/��ig�f�|�Z�4�9�D�h�<L���Qf�y��HZ��M�ܣ�U��f1�G\�\x���y�<�ܶ���7_Ό
nT�
�'����w{����q����B��ƪ��K`�d%��n���YR"�Qqȅ�%TJ7�Ɯ8ܥN�k:p��)r�;��cʋ�YqkY�
�#���l�f'��+"p�3�T���;����]�U�4�u�N�H�F��k��J���ڀ���z^�z�~|	�
�h����za=넼����-n�%���Xc�Di��A
p�lj��۾[:�Q;串X�HQ��ߑe��e�/�4E\�M�|�=.lƅ�aʸ��mGNicuI(��TKpWc���N�=�m$5���Ǟ�?9ഽ]�*p7���Q�
%���`�o<��Ā�Fڮ�0���a��ۦbL:�_49RS8C��)7��/��U>��c>mxH[�Mq��!e�����r�m�rc��J;�$�%\�4��@�ɽ��|����{@֘@K3Pjf�'�š(���hr,�۸��I3�0	]�&y��7�0�+�'���m̵?�*U�>g{	:F��6���p��Y��Z8\��7n��	����9cN'���A�pÊɴ쾑�[+����$����
�������r�>��z��\^v�#���-K%*�&_:���6��C7�vۍ�w��o48w�Ɉ��2t�7�A=�|��d�u�t��Ϋw�7�X�/��\6	�8kD�%d��	9Ц�lʛ���n���kn��Q$m���b�r*�/�'��JPmaa?x��DnA����`57����,�-������KR)�����0��po�`���M�08�(!�pP�p!rm,�Xj�'{g�y��� 0���()�^,
�U�"�"J"�H�?!����^�����a	"C�١$�I�%�&��r�R�]�h�.� ���9��9���篷ٴv��<?�6������8�E�O:9C�(3M�f� �lq2�4��n:�u�-�
˲[zn� ��*���O�u��}����I�𦒷����~�ښ/�rA%	s�d�6�H�D�ς�A��61�[o���;�f%%��������&�q;�jɀ6.�������&:���3�3��&�
�Q�������!R�S��I������<��;e������g��p?�:�]��8�&dž�q���p�oRy��nn�K�3-Y̧�YK��xS���d�$`S{��V��`r�M�Yܶ�]u=�IqK��B�KȝRӔ�
���rT��hga���ҳ82G9ނ��u�vbq��}��_�6��$>�a��	8�Y�..�1�#�Ӡk��W_}�3˵����'�x���ힾ�?�����Ϊ��&}ܤs�smY��˃7�n� p3	jHΙHXEI�����9�ᬉ��i���R���QD��a��$���������=��;`��˜l�;�o��Z����D1�2����]X_ǹ��̒}}����	 7�B���	��D9S���ǖ@�t�$EXJ����9�0�"G]E���M=NP�7G���Qᜉ�o��n��,������g���~�5�Q��
�T�ڀ�ܷ!����B�S�K0�ܡ�~p��L�(�@���S����[�:9y���Q�/_�}��IX�D�
�V��[�o[�J�6�V]X���	W�~R�ܤ��$JIvn���w�&�p���nU��1��� Ǖo���޾�Ep��)��+��K�ʿ�Q��k�w	q�R��.�d�I�t�a�v�#��tw;B\N~�M��'�@8.�G8үͮ�/�+o�~��k�_�6�l䪢���֫�_����x��׾::�>���Vغɰ���\p˨��
���ݼY�����248�-�8��w8�)���/,0��k��l�����b�}��q�[x���6NBhӚ���ͤ��&��U95���+K�_7�8�I�M�����
���ɉ���%ܶ��T\m�6�����O���s�n!n��2�6l$[���}�@R�͈��V�\ r�p~��ñ�;�L��O>T���1�0k��#n�Mq#q�������{������J%L.�_�����!��r�h�I��.��Qob٭���U�<�~w���++8�p��e�P�pF�5$x�Sܮ�Yc5i_P��73�p�;����Q���s������
.��qߊ��Jd���"���&"490����^ܫ<��������_N�n�ˇ�C���U�6*��3�8�p�7��C��̏��G���8��y
��+f]�VG
i�76��ɫ�[]�z��Ք��)oDn�U���[8I:\��DVĻ"��R�p�	"�f*RT�Ł5�6M�8���a�O/(� m���ѫr\8��Kem�V=:Q9�ˡCXmù�5�66zh��S+ge��$��m�Ç�{����:@6;N�亻��|�k���oFU�S����j^�4����F�3��.�ጹS��QJ�G(6q6O��,\��
�;P�N�cQ��C��q��^0����
C�\�î���������RmeWqǏ�*[
\�4)pDK�����[��G^�P.N�E��1��hp��'́���]�3gcp�Ʈ�+MB�3�O���2������-��ǁ�n$���Ě�Fw`C�9��x�#�����k�j�﯁����AMN6&�9��L�+a�[*��Y۸�|��<�ݸ9Y2�%��&&m$NJ��+���ak��FY=)��Qo$.@��#mZ��nY�-̱�⒏
����<���2��tq=B��At8�l�]W��:�]������Hexu%���lv��1����&��xc�=���D��^y� fJ��(n�
ChC@!s��U;[�V�[q�-t�����8N��`�����p�$r�V�`��y@i3��9Ц)�fĝ��rnxllduudxהTp�d��*�i8o�ۢr��B!�6J0�`H�:!N�r����nu&G�6��lG�ډ�.�jS&�e�q祥�(�D��*��{��T�͜�n�8$�����v�z�9�6���H�ICn���V����l��W	\��؉�/s1JqxN�/�&p��.�kP�KpyNLR�(�obn�n7�_K讧����7��%m\�_�>���d���o��pK���̉ ��9Q�80��Q� �e򓉺�F�*����kC�`6��U���ȉӟ��ru��hI�m*
��a'�[_b�"}6XnN�ps�&����RՎ��9���Fq���x�{�[?gH8����_���2�3���oa>KƮS���AB\��f�Q=�
�i���<�u⠓��=���Аx��P�Z�8��ml<�h	W�O���!;�b���V�p�G���u�m�
2q���Z�çc1��5⦴�#]ؔ9�q}���up�]��kQި�5���p����J��D�;=�9�n�/���™]G A�d�ץ�ȑ��^P��ĺ��6��� 4P[�4�2b��^���c�WD�q�&���K�����m� ����\��rqz���kc���]�M��&���1_�Aڈ�w��p3��51�;y�gpnȺ��#sa#׍p��U� �ҀyC��	s>t7�����l�wG�<;70X�*����kO�>::{����+TX�6���Kr��͙�Kɵ(مL��O����oH�Fk�a�s�!������V�)/r;�������TF\��J�ַEhp�Ted��.?=ΐ����ۄ9�1�ӃT��0��n��&��ԕG��������8˽��9���ӯ���+bkܷ���8%7��ٜ8�Y�[;�Kp:�m��x�@[���q��&��b�izp�á����Z��Z��s2'���f���-�Q��t���}�S��'rʜ��F�C8�S�jqG�Mu
���W/=�⋂\�cw��-/�T��cӟ����+��In��7N���,䳙�xn	��O���Z7�ͅI�
��6����D5yٵ�_.	��JD�^8\s�r��#���Ǒ8++����!��07����u �5���7d�[���xz�A�#���Uq>�X�����+�yǿ*l���L��9���������a��+]-���Ajr�^N���h=يo�o͛�f&�7cҬ%�\����5��hrVWv�83��H��N���s�]G:�3�{�޿}��K�͐C+�7���4omY�t�e�*:�̔\��ܜ���6#NhSؘ��Zڛ�
ܵ���7I7e���7NQ8����e����������
'�qfrzee�����n���)q`M��MNaç��)nt��rG�"nDεrG&�8Ub��X��̣�,���_[|'���s�L�&�
e
�!IqiH_!��6-����I�(��ۖ�e8��}&{%ڛ�(�(�����9s�N�N�U��6͞dD
\��$ir���_���3u�"ueߑ�w3E�W��7/*��&f數����re���+��!ip�4�p��1�6�����l��c��_N6n(�@�N�xA�q49�
)��\�X\7	I�rX������������7L�mѺ��;���c����V �XZ�6�
l����:@XM���@[�5�6�k �&�m���&�����p8k��X�M��+�s�ۯ*��h��;���]!���BG�#s��u {{.W괼s������u��M>C� �#>�ԕ�9��2z�S��ū߲{+��,��&.3+�q�M"���I�Mǵ�i����Il�o|�83�m�8�i����yu}�.�ǭ�#�������Ct�Ӊ�#rč�]��r|:z�N<��r�h�F��֢Ÿ��Fr�B� ��ۼA�ͬ�,f�|y�xom�� �$ԒF\D�N�������0�t��U,N�Mu1�7,�!��<EyZs[�>P*�(*uf�ٸ��<��:1����
>d.���8��!�:ސ�?Z"x�K$,�Ξ|��#�L�X���ߖ�z�&=3���?���ג�{�@����]&�+J���7ڛЦ���)l�[��!=5�u�����.pC.���e������։r�89`�.wq���w9LV&�rP�D�XM��$��7\"�7�N7_���q������q�i�֦��F�l	��	n��6�Vg���@��۸�k�a�ve��;�~�����VV���X*�8�N2�!�1�SGN�S	t�͔�\�\��o�$a|�}�ʤ�F�@ .SX��R�֏?s<�uS��-�
a�	k:�%yS�<Ӹ�Փ�ǤE�Crʄ2�0��?����lΐ�y����
�� u8��.�Ӎ]]�J^����ѡ6Gޒ��V.y���%x�����2Y׻��d�;WJ�_�.���]�Mqc@$q}��k��j��)q�o
���S�&�`�i�n(r��S�qq�Q�9L��;q������.%A	q=�p�oHȐ3���D�8Yb���Ɛ���W�2YǜM�`�2[�ō��6�ތ5��9���My�j�
�!�P��.	xS&T
�t���T�z�OM.��;;�r �ڀ�	�	l�`�'���0D. i�!$m�׽�+�/k�e%�3⤕C])W��.w��4^R�u�U��8O�H�̍�	n08�6�(�7q86p%x�ZXN"w1�p�)�㾒U��ee0Y���Q�fr�9w��M�)Aܺ�u��}~�i����z�r�ə�Ya��*��h3��S�>����$p�3��i���ɝ�$�����&��I5I{��I�o�7�fg�ZXP�����;{ɪ �c���a����*+;�����؉��؃�����M\A���H�
���?ǧ��uOםKc4=ܷ��M�gߪ:��{�5 ����2rQUN�qM��S9I%%��]N}��s�\�օ\��Ò��5�5�<!�ӯ���ߠ�S+n�ܺ%ڤ�͖f��K��pto�F�o^M:o>�n�')'�7y�8�0�x�=�Fi��p����d_��S���S���� u����^
�8��9n���\�D���4>�T.�
���`0�\�����o�k�}w=n��ɤ�ƪq#�{��2����I'΋I�
ޘ�Xܐh�ז�eS��#�ӧ�%�1�=N6'MN�����r��(*�~���ҙ;;;�5�n����e>"�(����N�~�?W+��?N����6�|��\Kn!z�Eq��
n�v�,m\bK'������%�	��S<����e�Na�C�vZL�.,��g������d��f�����ً31�ǵ�\\=���#��pcۘ8�sW���om�u�s��
n5s�Mz�p�C��݂?W�fЭ
�0��Ɓ���W�7Vr8��FN��K5rԖ��sG�7��L3�HBGa)r��rdF.�-� �����N����-O%�`R��ג�ք�u�M��t�0�ӷ�:p����4�7VPt�=���m�$e�̹&�l;	m$�h��&�	�,�!7����,'�uOO>�c8p�%�2q�%��t&kޒ��k%�V�[���7�Mz�eΆ:w8���pk?H�ֿ<��J�J��n��C!wj��C����İ�ʼn8�gX�5t�nĽnd͜L.7r�\:"�C�I���{��lo�Ȏ���-
&s)I�h��Y-�BO��,���Z�o,�7�5�	%�����E��h�j�@�V.g�Vbo����؅ǩ���s�+��.G�5���yr��&�F�����xK��
7��&_wܤ� ����n�f��ࢢ�#o��Z�z��zz��G�O�m[7)y���\i�*���)i%%	o����x���*�\�|������߲�% ����n�$r�|u? Ժ͍�G%���i�6�7���H�[epdS�s7]�	�F0'	���Kx}ɴ��d21��YsS'��8�c�;���tF�\����W ץl�Ǐ>�d!����iki݈�s���gE�d�$�j��A���ù�ո��yo�V̭s�81g&G"�	��sfq����s�iAnz,��{��\.�\:��h �i�M��Ay���;�&��Rr�
6�V���	6m���7��L���l���]������7�!6a7��Y�nq�09,Α+u���M���%au僯�)7F��y�����)�X��j���7ֵդ��f�FHO�\�Ҹ��݊b^�q��s�%�z�I1���9sȝN$�C�M��+䦖SdUe��fD2��s/'��m/�s38Z�.��A�}�\ ��O�%�l����&QLo��Ł���F�-����Qn�k�	���3�w�C��.'��8B7=��o��K�+����Z�
��c�n�RN.�dn	7Enݺq�u�qC7h�X�*����>{$�P�)xB���}��nʂ�/G�ug:U]	oD�[0��']7,!N�&��j3�ʱ�#�26��Y��i�R��n��6іq�Լ!vU���ù�Y�������V)
��Twr����ɑ���9s���2r���̝{a)䜸�&���G������-�n锛UO&3o,�ͧ��䴱'����������6�
5E{Y9"Fa��B�v�j�+�8mw��@.��%�f���ȑ�\�9�r+���G>�h���_��FG�$���6����I�7¤z��
��w*�jޢu�{�m���$�F,Cn���}s�}'.wr��09��Z�#�#��9�c9r�p,�A��`�67�)�%Š-�[>u˗��$ܭ�͂,*���m\U�(;\�1�m�@i���m8��I���BUU��aphJ�@���P>���|\�rK�n�|�qC��&ڜ��df-P��M�y �"-�
�H�toD�`"�z�E-$ԒF$�
8Ru��k��Q��;����\@�M���S'�p8Ӓ\Օ���܂k�l��o�����S�ln�����߈U59~ܢ�c�vw�[��������6q�
K�ÆΙ{ard.t��r�)
,s�1�&r�qR�F��#����&���nm��[G%�[��X�M���b.	mr�ϛ��*��0���X �aqCgn����a�7��=Y���HG�j���(,Y­���s[����$�.9>
G����b�YB���9O�n��ʢ-&C:	H�&ذ7��ͬZiS=ٟ�m��ZǕ;;4r#�rho�C��&'�r��Z9Ǎ��'1�$Qr9"��t�`�$���\\\,,B�
��mn g2���
��\2Ӗq���\J� �V8�������~b����3g�ہ7�:�%{xk�ac��ar$�
s�T.��rasd��7�⋂\L:nE�݊�i��jw�
.�pl���bR���֤�y������~q�5�F��� n�[�E]Y#�&�#��J�+I��Wf��ӓ7�#��i8�q	rv���.�e�f�[ps�+�!`���1�X#�i#���Z2$�7x3�X1/�j��+���&�9$QS�!G]��p���\�󨐫�J"��{��I����L�F�ғx������;�h	cr9��3n�Y�Zƍh���q�2n^K��$!�-B�a��6ʼ�O��
H��%��Ns�]!���G��(+cz�\���՗O 
�6��V�������V�e�M���w� �@#�e�v��m�mغ��ζ�ۈt���%�k�o�W9t�8xSY.G8p��i��q�'�;
�v���aA��+s G��'�s�.;�Jƞp[�5�{en���O�-$��u�[n�P07&�6�]�d[��_�eҼ��lMȍ�Mm$������њ�rk�]N��׽�	UG�H��Iȭh[l��/�$[�foom��6����a%s��hsE-�q�-�&�|C�˃n�v��R�ɉ9
v������br**���	!��`����x�`�h"'o[��4'���Y���ބܻ�R��1)��ke�˶Q\���;��S��؁9�IgM�0���mȅ9xs�Xu'�/X9}�����5$��Ě~�:r
6�D!��XRh�3o��V��:k�ݼ�wڛ�O�&
֨�q��+A�N��N�o{Ҥ"��'�K&��<��ɽ(�`���y�lJ�L\��[���)R��}a�n	�kV�Ԙ�q9j���<,�����mҪ'��z�r�� ��-.�������k�`9#�|,m$a�	6v�M��2n�-p0r��[I8j�WJ�\K�N�l�l�6���[p7����^�p�z��L�.U�nE\�\x\{aI��j�%�����Ox�h�W�s�9�ǘs�7J68t#Ҡ$]�L�V�&��Z�}��{��TQ����D��ˎ�C���p�(��2����o��Q�}OF-~�$�q�ij��@�H����2s�)�o ǔ;z�ىۅ��s�8��E�b��i�y��݉��;Jhe+�������p��Q
nb�ܩ<�
��5�f��~�4�[�X&o$�{A��\9�#GCGZiƝ1	�>�?�1�vp�,H=XC,��m�J[�Y��U7���z覲�L�ڧpƭ\��f���
quc	o$yˍ%����D�ё��-�;��d�@���g�y��ĠQt0�����݁�7���
&��d�V�L�h���m�ۿ.�J?��)�����L��2�S�H���K,!��9��3�����>�ĝ�[1��
� �|%��E7\fU��z�JZ�]�T���S��&ʚUD&-r��yK�ʶ�y�r��3�7�8֮R̙6�FTl%w��,�XhN�a&[��e���C7��yI�
mT�V�i4�����L��W�72]�ƌ�+qRg�y�%qT]��!�ɰvo�ěuj;��}ܨ��-��ti�Ϻ��P&�[������f�"��L�_�A���T����9��M��W尐Cj0��ȡhҎ�\XYF-v������K���ӒN�Kz�d+đ;�@��8+��	�RS�Mġ���F��u�v��"B�h�IG<��Vp�V'����nƨĭ�`���a[>UBYƭ�7`�b���������U�w�9ʢ8b���č
�,(3qg�aM&�u��6�����g�u�T��d9tki˩��)�I���q�5S�y#-n��Q�N��Px}�	�	-g\򦖺��@-�r⍠m�V�iվa2��榪�%l�F�X�l��wA��:&��-q�Ts��W��c�+��6�Sa
����@o$�l"��Go��o���w�֎71Z�ژpC��\�W�S��9T�{�'ψy�sȝ/pM!;��[�v7z�[;�L[�-q��UoP��IZ�3j5��YYR��Ҽ��ab�0��Y����DNJ�5��sT;UL�o�����3ܨrѭ{�[���Jw.�3ѧ����9����K*��meθ�\E�0섛Z�V-|��Z�Fp�Nn�$	F�ֿ�$w�,���j�حnZt	@�]@oxj�K��Z�H"�s�쉙������q��#K"g�hb���8�䍼���m�/�E6\i�57�F����m\������zw�$q��r�Sn�a�،96��������~�
��T��[$q3q�[��$�k�|%����jC�Ig�ʐ+S�Cw��9��p��/�a��#9J́�1���[����h������-�#I��J��m���Mz���S΂7��X�|�qvl(U�(�P� ��5t[m�t(aۂ�L7�{�
��8@
�����G�nC?�qw�1����]빐K����D��u{�
䀎��e���\����\>t3gZ����țoߺ���ה����J�p}:�a={Br�uCz?�ZٿX�\��L>E�9
�hir!�:x��V�[o�4�MU�[T��6�W&��b�?y%��DN��z���{o���#N2s$hs�u���%,���d$m^�&�UQ�%m��M�>
೒�׍��~V3��⦶t�J]�X^}tg�1u�(	nt"F�8/�5A�}������Խdn%{�걛by��~���64�#���BZ�D]a��}ȅ��>:�ŜC4��ZJ�QЦ�#��v��Ӡ
]���������2���u�q��Я˜�
*ЕC9��-_7s�����L8�F5sɛf77pvn�a�����$y�}�
ܜ�K=��ɿ����Яh.�-m+�C�UϞ$q�����nk��EN�I˛Z�0�W�v��M��X���`SK���&��Mr�6<^	4��I5G��іϞ�up5�W�j!��ΟP�3s�e�
�`hc�_AE'�f�ف���l7'y�ϔ����R��]�uw�
v�[O�]r1�@λJ)��Q�^�Z`F��Gm7�@M��&om[�2����V��@�p��6u�=4��Q�Tp�ϲ|(����\a5��W�ᆹ��?d(���v��r8a{]~Rp{���:�R��I�P�YOs��{�Hr8����%nO�k腼F������Sl�:��f�2�f,*X�W����r�+�����1�~���sJe�~9���{�3΂:M�Ԟ�ל��j0'�ԑ8k�^�kё�ʰ��~���Fk4y7)����Zס?�[��VF�+�r~
tI�p3r	]���6��ۦZ��民�6�&�'��{�-����xc�П�|��^�}�8�]~\.�#���)���
�!M����4�U����gܞ�"�Q��tmU���jCE�;ֲ<��9JC'm9p��F�\R'��kH�0{Kb�S�Ų�'D��^���4ږ����P̶|��s%C77��\}�3�L���:��P�c."�k��{���]_+x��׆J����w���8��ݬi�)�[�Us6�rg���M�G{j�4� �
��F�E7shú�=��i+`[ů�E�$`{��Pbս�(����O�ێ�@D�	�>�"�����t�Hg2�r�X����x�"qTc�8Y��f蒵��s�H���7�`�t��Z�d/0�vYKf����K�Ϫ�6�Z���6S׋���Rw͟"������X�E�&�Q��N�d"˴1�k&MF_h�FS+�����	#n�9�|��c5�����TW't#n��1�g�`�p�1	9ٸi��-f��A��dM�}�Mܺ�ly�i�G�����:|A'=l��Q�Rў#s�n���1�;
:*�9#g�Y�_D�4��ū/B�i*s��K5��_�F+�p=Ƶ���X;;s�Z�xz���ӹ�sx�ר��XC�戳�yД�m�4���T�����T�6�� f��Jo�>�+�;0w}��12�>��̜�sC�t����)�֗�,�
��Bݼa�J͟-@��A��Vw3����|)��7���k�^�l�U~E+�1V��e��%
����Wn�n��cܥ�~�#sԥ9%]��!�`m"�Ip���v��9�4�4h��pjx{��YZ������׵G��eȅt�����k�c�V�b�zU6�f�V�'���
�<�P2ǛZ����^�ҝ�o{�)��3p,�{b�S��J�Q/iQ�n	�l�>Q2�-BM3��1��m���{JJ���6l�{WB�y&�Rȩ�$N�ZW��?�N}ng�n��p;ܤ�b�/��+K���	�����R)e���&kRj�nh�h[6�6k���l��,����Jw�����k��ZL�=S��Wx��*��{�Hc,kpƸ�p�v�q3dO��Oo�F�Z=9�t����t�F%s��)��9ߨ}-j
�4@NV����p`��q3k��.�Jw�~�p9�+[���Եe�u�otZ�\�7|��6���(c��-ܚ���T�Q��L��M�h�3.��v�6Qq}���\�/�p��3Z��lfІ-�?�ro��Cn>I��������g�е֔q-F�֞�Nҁ
cA�#�M	1�an�p�9ۄ[&\}5@��Ք���Uޘ{�pylp�%ʴ���-Y�Y��Y2*icXm6��n()=��r�����ܞ�#���9tDLn��J�9�s$��������j��Ve���z+ݷ��[��嫸�`�:�5�gș9�ܯH��!ژ��i�[m=P�O�T]��֨�!�t���(9��E���g�,�R���dir=ѵ�ꚩkꚉ��1,">zm�]Ӧ�5���y�Ƽ�P�"��l���n=ѵ��.Fx�ę�c:�H8����3�l�-Ў�u�h���$��Ld���c���Pzl��d�1��h��,'�F�.�uaJ?�&ܤ6K���k������Y
)�9�ġ���4�m ӈ�T����LZ��2�[�Z���}f.�k���|1ס1&-�Q��GI�F�QF����>4�y��4�*ښYۏ���7�n%=�P�p+�5c�X�cOn�:�-�-ok�X{E�5}x�wW�CYz�I](��c�m9�M�T-L���ue�cJJ�N=�N�5��˨=�������+�J�һS���,��y{	%w�y�/oÆ3��KJ�O
O�K�{�)��0���!L�F�^a�>	P�?�
ZKw����Ju昚91��ɔ\O�,�c��?�;�nA7��g�~ʜ!�[JJ��څ��9��'2c1�@�[�-%�ۻ��� 
��t����@B,_8g�nH�>���~6�hr����f���{�� _�>.��$w���ԥ }Do��T
F���3��RSFU&��Į��:)'����UG�u��t&u���\K�(�Z�F�5e>s��u3�CD���9՜��%�����<��$'sʝX��^R
k��ݩpp\�z^3������-G�˶[�D�G�3c���t�tw�C��݊�12m+���/F��ʈ}�˩�I��+�T8�n�5�2JV�F�Z�_�&��:dK���8�/�^U�gT���IEND�B`�assets/images/library-connect/right-2.png000064400000221600151327220410014366 0ustar00�PNG


IHDR�-^�PLTEy�����������������r�����������������������������������������������������l�����������v��t��y�����������{��������������y�����y��������{��|����������������{�����������������z�����8hs���}�����HW\������inpMbh������   ����788(+,rz{ehh���hmnbdd���#$$'''Rc���'()
FY&((���STTJII�������>S������������������������������ߪ����������������bcb�������������##"������������И�������������ǒ��������������ݫ�n/-)���*ZhGY��߱�ۻ�����onk�߼����iRb���YYX�8yxw�����������񋍏���PPN��GFE�Ļg�⛝�<<;����Ӆ�Ю�y��䕰������m|���u�ͤ�s���������������reh��Jr
��Q��U��Q�����򮵻6��g��SJ5=�����ev�tgQ+��
����ʻ��@<&<UZc[Cy�����˻����f���*e.��q�������%ELS�������Ү�3��Obl�z>�ѻ�����\7G�ƚ��V[�Y�[�����]3�tk�M>�xI��}}>/)�S`�呂�"Aku��y�랮��:Esˬ;��?P�\tRNS
$+gwr9m@1Y'{A5:+#zH-`;QT2N3Gu`�Brf&m{0L]={znX��[������m����ϧ-��ɼ�Ϲ��M�u���cuI�IDATx���͋�@�I�� *��(~!V].쮮X�������BH6�P14�L�@襰��ْ����_��"�~����B��<��δ����*�����,&��E�Z��8�
�o�_�S,�O�i�D��Lĝt���(��5��g�?1�v6�^f� ���a֎�_Qo��i`yk܍������9w}ek?�&����-s�����A���댷���0��?����Ĉ����`.=X�����'�kw��f����$�^+�?>�`�<Z��:��A��x�H��'̋k��b���Q'��3�g����;:����C#��9����z�o[�R�n��*�Yv����a�|���V�Am��u��%b��cԠf?�NԮn<c0���,��I��C�E��HNҮ�?QS�	$��\�e��q5�sa�bd����7V��`V���Z�N(y.�/����N���Q03J��oJt�(������Os� xUQ�$P����t;�P�w�L��\|�%۲|�4��(�W���gل�$�tR.?L���n�r!q!>}�Mi�5���s�hr���G^��YU��FD`�\OdH9�9<}۶,˶���n(o��͈��Ɠ�*A^�Y�>��6�b��	rn��?Yؖ6}7-K��n�R��a1J�W��kBEL�gZ�ۊ:	r�-9����MWFAQؾkr�]������K���c�a(�%L�R�ݠx:�h䜋bֻfʡ�ۗY`;	;�-��i�
�|AqSm�J�(
�_z�_�;�ֶ�0���z��~�\�IKYae�c0O9�#�	r#)V:;��h�r�4�����*q�bFr1rQ<X�� ����������lk�$秣�8)�������f�������e(�%P\�L3�y.��Ƙ�3ۦ�Y6m�pO6.,�`�ĀvJ�H��ܸ���B&[aP9�b3
 \�@��7m��	�x�]�ۖ���Lq��G����pdC�D�q�ƭ��b�wPq���O@�4���.)��\	:��eS� �j�n���M�����D��%���I�u��Nf����e�-�BtT` ��f�����T��1g��»�� ��K9�H�ɫ7��2�a���r��6�B�fp…�5�$0;h����h*���@
����� �@"y{\�yk.^	R��*ЅY@���i:�4=0
��A�7;�<>�����a����� �C�H����bn��q���U��w���r10���+r\߅(P��`��^�hYNL� 6�R���R�4drQ"yK\���ܝL\D���G;k�k�?�b2���-s�VC����U��
o]�l�Ul��!S�d�������
bu�7l@eɡ � �
$�7��u0����+k�O�����ۋ��#�
;�b�V��S�_?����Ӫ�С�#�X�a۾��ö^O
�&De�$b$e�@"y��K"��ɕ�ç�&q
��[L���̤e�+�Vv�=޻����xmzL��5��*��Tu����Q6x7!���a達��_'9r�������D��{���ͻw����������-[�b�J�������8:����v�bk�kڦN��NqV�X�I���2.��A��doYrB�%�7�U��0�V����3-؄@���י�)�a������/�����6�(�A}
�I��a w�TZju��qK�3L��H��@�"���nI�I	��fb1��d�� �`��W�@
`@r^�3��ߞ�9�q1�@��6=�5L�,�%˲j���.�NZ�Q���#CQ����L�J�b��ЋK��D��҅L&�u��W�p�bp�Q��彠S�d�'_�x����_��:��R��h��I()JN;M��%߸�R@��+�UONKb�g4�J\��D��4��'2�L������75k��Z���xv
Z�q�v~]'-�*R�̶cP��4�)f%u�I>�
%��YIX�==q�:�T�q1�B]���j�N�G�Q:!Q�A�/��eF��j��[Mg�~�`@h_K;6�ޚ�{�虢�&&Z
n��r�.��&�"��j 6���? �]��-�,���s��{��ؖd���j��d�j3�B�	�`�j$���Rf��k��X�H;*�d����- i2F�B�\��r��p�1	^��"b�!���vc�Il z@#���
;�\�܉/,��:W������̌+���,,���b�Z���Ӈ��gW{��s�r-=Q��
t�h�3���C}K&+Y��F��4�˧	 ���A"�j1�,C����h�'_��OЈ���s�	�%�sd��1��z��lNVkD����d�vzuuzzr���S��x�
l��-����i�d�YV[Ap�h4������boP�\��j2rį��K W�Cl�K�)����"I�+O�W��G}�)�	�/z��5����AJ���0��>ކ>�V�^�L;�AyKw���T���@�1�iuhA�A%��/�NQؠHa�Y�f�9��ILo�@�(��4���³L.�y�J�D�j�Z�<{ؾ7��^�=��é�UdsyP��{Z�:��4�A�V��Cb��?�Z�D�*⤹Jub����㣆�e�E�%'�u� W:�!.-�7�	��;'�?������p�����p�CN�Z�~�6����M��Z�-'��\��4����F�.Ԍ��U7 |��o�7���j�l
(�BV��3s�V�<�fVI
�R@���a�A��]�D�w����g����8pS T��G�?�n�y�]�?*�{������w��ړ�"�}�V5���i�	r�M a�<�
1�}�sUG7s�x��g8��Y�c��-}๮M�s�b��#�_�*��{��>����"���'~��WM�8��&9�D$���sB�.��4 \{����� �^Y���6lÅ@	�p�0: ]�)�6V0�-3�d�:-��WQHt�Tf*63�9p�S1q��U�Q��x_E��|UqbR�aH#tą��L�F�56@G�4���Q�2np�@��"���y���U�H��h��w�U�
4�Ռa6���k�k�th6`p2t�U�V�I�븅x�4Z�X��m��-���˒E��rO˒��q= �Dl�1@��3�8�VH��
~LJ�=�\�G���Eu���Z��C$�v�}R|�Z�
0�	���t
4)j�1U�Cf�� ���֢����ɚ )�!�-�Ū��+�D��
n�'�ި�Q�&��8�&�b.��-�^�}��ȅzy�&!E�l��4?ߧ���`@j�0C�	�/x�4�c�p)PH	�J.-/ XP�������4n��+����V����]�dOZ�h�7l@eɑ
\� w�K��Ƕ]�:�.�%�,|a=	#�����p�/��*9�����,�0�H�u��8::j��Oj�`��,��:�8Y@7����.`"�
����`0�Bh�5�le��(�R@���Q"����Z�d��w���D��X
dc���"+��R��.�1<�8U"O�5�i�k�B�-����j۪����:@W�O�Qo�&���!P�`t��
�3	�I�G�I
z�	�����B�@XK0�
���-F�\�]95��c�w�AQ�u��~�Tӏ������N7�ThVSMM�g���:x\wAz�`������..uଶ�F����	t�ѩ��)�'*�)�F��\��|��>+�(Z�����絟��{_�%u��$�\���??�/hookB����&��b�@"_?HA@���X�X1��*X�r@�s6��E
i$����%[,8C\��@�Y��_�4=Ɔ��Z5��
u� �.~��+�j�AdtY�i�{Z�V�̆>nu�$�
���q��eC���^��<��ɦ�q�R��D��DM����ns+.T\�|�…˗s�'�.�W��=~(ςH�����)�`�qJ��l��l��u0jORi��� ,0�]� I��|�ѽ����fhX(B����g��|L��h8���0HG
���B�I��\\�&X�����/�|ۅ��_~�b��NSϘ\q�DV�EJ�b5*K6"~eɜ�ҝ����>ň
8if<�`�00r�]�z
��]-1]�Z��	OP�^��WY���M\�	�e*���z	�N�v�i�1U��0�����&�A��.�.����J�
m
.D?G��Y3�Ia��K	S�ů����$"4;,ĎM�8f�(B���|���T�#�`�Z��p�[~���S��Y@���E��U�W�Ȯ�鋞��Àp���_��~���"l����"~�5XYR��H�O�8xZ*MH�f�	�6X�q}x��$e�E 80,4���ii������{LKW�Q��Ye�	���A���Ǫ@]
[8`����f�!�8eSB.n�xV���=����-�O��8
���8MH�kj6`ۀ
��
�~����������b���Txx<ة��]X���P�yڦ�@lt2�9H�L|н��H�ˈ�,��m��3D�<�SQ ��	 zl���@��"�-o+��q�
����um�{~���~�L���8||(�ɒ.��(�(��#�eB,���O�*�)�L����[������UE�)f/恱���
sGa�I��GL��t@X5�������(��>1��=�)d��	�@�DuA}N}��FD��J��@�Qx���(ۈ'��m�����׭[�7��G��L�W"��R�`�?Bk.)C4)����/K����̠�������7�o`��)O�-�<��gA��^Wʲ�eLC�5PV��_����s��:<�2�bǡo֞��191yc�l@����� �Xw�Yp!d�0��y�6T4��d�z�ۛ���(�bS�0
�8�X�4�����<��f��(�k
��m������Pp`n��0�4��`�T����Q�?�0�h�ژ]#�\
�C2�(��4����]��N襗N�f�vr[=��#0
B�jvA���ߗ�����
��(�R0)U��Y3���D���x0��i��!HD���3� �A��-h5L�����R͇
�ʭ���*@���EVK
d>d���Ĺ��]�׮]#�= ��@'�w,H����"�d�s%��Xr��cB�/,�@����8l��js�u3ӳ�(x`�!&
3�t �T��F`�.��?���EKq��g�26
��s����8i��޺�HܚM ��%iaU	0����X�.��!*F��ON���������_�͍ɓ��S.2B|���ӯ\����<>;3��v8P][m�'�S+p b�6�D6��5w��`V���ES�f~�f�����d�@�3v
�,����啠����I4ߪ�R�Rt"ΐ:0SԪ�a�k���pP=�K����y�Y;��:Fxi�ґ?�	W�`�'�V�vTt�9}��W��%�Cx���Ƒ����J�޽����;
:E�lP�]24
�� f��rS���8= @H*.�����:
���)дd�7ҡ�+��7F��98k$���gZDCA�۰	b��:�=F�ƀa�/�3�.+�ώ�Q�h�&�����r��5XW��[���P��DF�b�j��?u���\|n��*`� ��v�g��:�K���|n�P�A.�+(��v
3�(l0+�,�����(<h�	L�i��	�+d�W�CN'�+������,��Ik��m~���L��G3�ڄVE)��oc�p"8����`���	��
������W�
,?B�����8�$\�Z���Ne�#�r�_����*j���**u�.?�P�����c���+�!_��As9n`Q0M��~w��t����X�}�֣��C�O����(Ң�b1�-4�4-]
!�JW��GR
q0sj����(�g���QXTr[6+�мYF�8`� ��c� ��#̂l�����k/�\�t�&�����X@ŃVJ2JM�nB���1~��.�z�{�m�W��s���
�ڨ�Y8#�aP$%B�Ku2٣���f3y4��LN^��/�")y�8�,
�Y���,��3mD��P���2��(OLV�{\�|�/�t���K�"ﭧ���M<��C?���TɈ'��%��PEc��k`�ɓC':whn��%)�����Wֻ�q9i���Ƀ�����Ŝ�C���˭zZ���I�" J���
�A
g#@V�"A�X�,�z؀�0�i��:�H �w�I(A�@@@�903�J����K%M7�\}�	�jDR�>���/-4�?JnU���b�G�A�Q ZĘb��q���+����D�1Y�J�t\�/�`�����[Q�J�c:��o�M���q�����:�"������M��1�a�Pଢ��	27)PA�q�x�
������	<)I��s��N�@u�O�ӱ�]�Thq2R_�h����X�(�8�È��i ,���wS�5.3bx$Ȉ��*��49�F�N�J�H�,h��+��Zd4�˧���ls5=76>v����uQ7	Y��,bS�
�@]�@���PO�M�3�.�,�u"�A�"ɨg��Ѭ�O:��R��~I(��C��L�&2�u`���1�W��-B::
��a�`�4�k�R�
�g%���S�A�� +� �g����aD\2b�]���#x�;�ڐ&�5�
����Vr�d�b�ȑ��dL	(�=��H$R
�`�O<�K���CCA������,�P��2��pf�����
؏��l�)���v@t�H@!aq�b�	���Z�N'A~P�Apj�ୋئ�<l�4`�1o�%���;�nHT\h�H~;��aQ�#D6;�����8���_>����־�:s�`@��ާ�;?1q��ĕun.JF�!��3�
��u�W�=~�,�CC=�	{#Q �(p*$jc�"~tD�ND4v�GY��������S���,}�6	��I�b��E#��"~�����Y!���8���ŠEB3��"r�"i:�<�~�Qڭ����Mp��"� hRߐ]��rw��@7�M���ȍO,�b�{w������N��N�2p׃�%ě�d�`�����'�<��/��VF��`"1T���;��}���ߐZ�-�F��6Xʍ��+y?���a6���-�;�:�ͫ�7��I'�G@(0
B�������ڼ����6��"M�}`�S��L��	�ޗ��{TK�D,2�D�5e9լ�͸�V��$�畋~ee��G�Iv��H��P����##�#c#�c�p?�͋���4™=[�?}��`[kxsoG�s�X�,p�
�X�O
���� p
G$%ZZ��$p��c������M)K�~k3C�������O�eDS����� 6��&	�P`}��mmm>$,��J�A~�l�
lS��L=����H���Y�qi�b8g��EK���8b�mwG�N��U�x��A	��g,�0
�]�(hx�J���Ϗ_�6z��n+ơ�~d�u���u��w�j�z+}@� ���C�+��<<<|�JlR#�� B\Q�ǩ�iKD�`ւ�@���X���C�`��9 (X�0��Ja8�,��,z�۾���Ϸ���2����al�oll�
��;�6���]�L�dO�$l��:w���z�s�-���ȼҁ%��l�,�,�1�Ҁv:
˼[ �%:�O D02r���������G��W~��ARd�#�������(ֵ�E��Rt@���FG��k#ÿ82$�#�e����iGN;J��Ýe�\4��셣�.l�L�{���B~��B88 ��YA��6���(x
��jh>����_�(c� !� /��ͫm�����4����l���)�o�?�="���:�+
h�MY�޲/� ��4$�u�� X���B�Αkã��Ɔ�}u����ӧ	�������
��7���:��9��-���?�C�L��":�JJ2�?�RhW"�x�f��DҌ�%{�V�Uk��~�-��TJ~��K��"�&��E L���4� �=��u+�TT����|`�����+j0������@4��7�ֳi�W�(�݀)��S�1��_��v��,�� �3����Y�/�R"�G�B��]�,�$��$�Q
2�cW��hn��"�{���<��N\��)�����3a��T�x��i#�dH�2@��$���}�z�Z!ن�D�-"��+=WS3
�t*�kD�$z���م@�`q�T�I��ͫ�>oQE����jЀa�"lؐ�
�o0B�6�,y�.sO�(h f�N��ng%�Ue��Giw�V*.�M}7��`em�4� �cѩ�Xa�K���:>>~d��:�FX����[0�p�L2��������x��:��"5C��e��8?622>6L�����ʕ��
�pOl�DY]��A��_���v�b60�
J���f�|�=�^L�v��@_�X3H�-@�b$� ��|��T�}>���i0����|@E9B���t�����(�0�+(l`�U
�K�@X�,��������h@1<s�!%ܒ��6Ej�u��Tb����격!�G�5u�~�WI�R0�+
�*6���j���(E���qp`T�v�ҹ��	�C^�|0��
*@�AY;��4P=��'Ϛ	iI��/&k�G!���J�'��gi7I�J��I@�b�2�����x�|��Р�@#Ey9EH*"��4������(n`0�`8n�ܠ0���-
1D�0���"Z�e\�l��n�P0l��ں)�
������z��O~�WhU�t��Q���:�o9sl�c�����1��G7<?<znb��~1��9X��(�8	�x;q��d`�X�_�n曖`��D�
s��"$�N7	�:
T� �.:	@:����*�|5eE�
�*}^O�
:�;��O`��@�	ȳ�RfAH�m6Xb`�"�@�
I�_La�JA�(1�Np��u��,rz����%�&� ��6Wq/f��8��g�}�eG�LsL$�@"�o�s�[�F������pA�`��0J��G11i�RO��%l�"e�D" �X����aZ� �t����i��v���*b� �f2�F&����=�p
�>�A��������h ���A� N����?Pc��t����,�� P�fAD7�@���f��(��5��}�$@��-���Je�@� �P�,v���xA�@�.C�8�	vT�vt}�^���I�l!�d����ˑn�s0r��U�Ȁ�a�9�8\݊,�%d��#;$$M�,��<�.�,���9`�w3{�0���X�S�����ڇ�K�&Ф��`	�`a
��V��,�y��=�2�
<��pM���M�>�2t�ꨑT�XG�� h��Ǝ’%HO��4�n�O>������o��d��nYQIjk��IQ4P��� 8�R�|��xp���W�6u��S8LVBC~B�P���Ά�{�?;6r���5Z���.��z�
(N8Q� �j���Y��b�C#��h(;p��Y������sKՁ�z�����ZM�Nô��TlF�B'A���2�WV��|e5�
z|5=�
�8���_j�44�a#�
������B��%K]�Ʀ�(�zG��
-|+�`�]@��[�A�bI�3�*�l(��;qtfѠ��3/\'�eWC�]/c���7�A�ST�
`Egg���G��!�� �>��+$Y\�6$8�"��A�Q���v��)�@x�[3f]���(�MK֣s���{�@�5�#����G,��6�p�N'�ҕ_.��QPx|��+�驩*}�p�@��Q��Zx�KKK��ϟ.6�%�8�Zo�i�1�gt�
���e+o{��.�Hk6e��-deiX�x5 �G>;S���=��:�e��� ��|�_*U�8�|�B�ĕ���]�H�{l�zu���cÈ�G�`d�p� I��t�dD���>s삦����F'�3b�%#�<l�l�X�G����
EL1�	h�l虖A\��Q���G	�>�� �e@��_�H(

��þ��8
D���V�zn1H��@�*��6d��� ��E�L��K��R�l�i,`�i�㸛oj6ԒU�	J�:Ȁ��22W��f	ܖ�����S�+.Y���N�=�\�#d�0¬��A�"��(|���/�
.'���Q�=d4(��6�k�826����!Ꮝ!��:���=4[Gd�f$�1���
���/�8�hjY���ܿh�̒��a�y(��-{�IP½G|��
���}�<�����bTT���#���ۿ���
	��/��A�&G^5/���m(-),ܘ]�{��kӉ�X��5I���
L�c5;4S�VUx�d�[��g	�ր�m3bPFƦ�,7,�E<��;
�]�vă{~��!v:��r�L�X{�^^�����0��^>��q
G���"�� q)r��<���n�!q	Nm�>�8�t���	�V.]q%LRj�W/�gEfÈI����2$�s��ۛ�m�Z��2��7�x
���_��4@�A-[�=$9��6/P��~=�2�ۡ����@���	"��Җb�u�	I���
�	�	�&е6c.��Q�%��)�h�`�y{�`������(�
p��Jgw��l�c��^k���+���[�;:�<�|�k�cG�o?��(s�,�2
B�}�f��={�(�,�vT)�m�!��BB#�hd��$��YG
�(�4XF�H���n��tS'q���b#�(�A�Jp�@ �o?E$`T�0
4	(��9
d�5�! 
t"��z	��A}}Nކ��f���	&��|��%$����A"� �{�U�����	6�S�Y�	�w�Y"��I$�!'?�8�byg`<��?�,�����N�Gd5"ş��\J*���*n�t��c۞��kk�6�=����.�p��nL���{	$�����)�d���G��Xm���[�
aH��?���$…�K��b�*:	^��G7?E��ڶ��
�X���'���/��a��>Р~BL���W��\BIa�:�E�`�
�|k�m`�^�V���Q��<�G��|sb��`�j#����
�
��%��]N�F�ʀE��ϜH�(hnk��f��*�g��O�	�Z���°`�Sd$pPl����Q2
��7&k2�+/*�3�S���ğ�9c�1D�7sK��+���)60^�lj?�����o%/{�4�@ջ���,�۶mۼog
L�"O��-
�W詩��)�0�nf�
8j������Q��A�@�U�B��k@���C4����T-x��/U ��qGR04V�mf���AR�H
-f"<u�<w^@9�B˳����L���w�{��3�q���@\@$�j��EoAבCW�q��-�4��O�i�ꍓ���הħ�/��~
Y�Q�&�+T(�қ_+"Z
�J��T�h663�I`�6��[�X���~�N�XWa_KO ��"�$b.�p��WQ�J8h��by9�� ��;���6
�
L�%�S�uK���z��#+++�P9�H�+s�P@YD�EM1J�U
$Bw��%�:�T���?�Q�0ȃ
k�йu_',+��<�;��J��.x
���ѝ��4N~���d.��(g|ᮐ$�tg�Go!lPR^��I˪`J����jA<EfF� ��|�� �ͪtG!�i�
8y!a��xPyԲ�����aa��NXd0	�I0pJT��F
�l��n<�Å��BtLȀ�t�u�(E�S\ �E�vїD���'�Mtz�e�������1��T��Z�`!��W��������1B��<u����q^�d���|
��YN�!��C�č5�1�E�S��=9��
�\� �1HM���h�U�izM��	�~���Oi8�m���VA"�xjj���+����}��zV=�~ݺl��@r�"4Kh%�l��yJA�Ab���z���W�˼F�GisL"�+3����/��

bn;���,�@Ńd���?B�����x�aA)Q;@�ˤ�~�<��Ԟ
�!"?��O�
&�7�鍭~L(xᤗWjf��O '6��d�N�E���=6�6(�������U���j��́)xl� ��:
�nNH`a[u����4@�àzG����.Qmp��-����A�:���:�
1D���4`�%yq0 ��}HWd}��&(4	�@/�F�ŴY��N��}�Q̮>rv'(��~�N�D?�bk-���9s�.|��(�
��?ΐ�NNHm|$�����,Ӎ�����G���I��a�8�<��I�!�����F��;ˠ�Иi���~�5“ս���r���ڎ��,XȻ)h��,�.� Y�)l��@�@5
�@�;�(��0�� ��EQ{4М��	��׳�P�Q��7;���K�~~J��O�^�l�\m�;f�Ä�;H�	sM���o��$3�T
�*f6xF�D����%�-'}b�
�\����$��X���G�{��\N����+VUn;�B�-d`?�)��:�"4�C&˚�?�C���
<�W$)��ɚ�mG���\(�\z��A���I�0
x�I���&�D�p�a�|T��0
��(��4@�r8\U��r���hА'L�l6
�a��]��+�c�R��dDL�E��U�e���Gþ�\��I�Loi��ũ�7N���/ff2rgD�YaD�Ɲ����.0 1	<�}����l��C��z;�ښNP��;����hC��ɯNP��0����7@��d�"6^�	<��\�]f������H��>���q�ޤPZ��'���Up'cZ�bJ=y���A�i���~�[~`�o�f쬡�!k��z��ߡ����-�!�p�S
}�d�'eCn� &a�>����2
��Ϊ��Y�n�|X�Qx�;+�sN�"u���e���(�񦩶��Ξ<{�d�����c
>�y���yu�{�,Y�Ԣ+2�痿�?v��:�gK��������̕���s�o619��o��#�5#�b�Yq��?�����w����li�~���g���0�@�dQ��xD�k�v��a�l4�&�
�;>�^�`���9�I��CJ�� �9�o�&�y�G>��zuF�4Ap�!�t"��q����*x8xPT�ڱuG��&���{6��:��lw�{�n7G{��n
&C�˒�h`5X0-��I5
���7�&��=u��@W�I��̒��~}���^8y��)������_��&�I$����g�P�ۻ���h*�:�{� p���A�.�?���4�e��_G#���qq�(8މ��u� �Mm��Q�!���e@YI5�AB⏡ȴ�\������6��
}���izZ�nf~��XUA�a�9x���M�%�k�"H@��45
���1��%2��4(+(-�BD �@���'�l	״�TV�R�QC/9

2
���6�0��(�@��A��~«�f"�@�K���@�,��-�*+
J�&0�:`�	2�df��e�|��/�LH�%dfΡ,9FV�+���<�?���3���:��<y�� ��"�*��պysǎ��8׈���U�X������Ǩuqߎަ:W(��_����û!��_tӍ�Y$
�P���Ї��k��̆H(,��.f?A�
�2՘ϺU vc����EP��S*���`[:
��->�A���.ؽe������;��*9����G�X �~�GQ��l7kw�,�X6X��+p����`�^d	�kX�a�|$@����������չ^_Q�jA�l�2�6�el�>�p�;�ʊE�
�M.<�Z����P��D�i��r�`$T)7�?7:�����c��߆��a
��:�����hNl!��iEB��ޱ���([�����T��F-�_�Ge��]��r�h��U(�6��F�(�4��k�K���T&�6�\� �(u �>ݔ7��%B+���?��8l��
t�`g'(4�k	�CKU�
*�`�m��[˖�P7hbf��ʈ����$�`��A%"�uG�A^t�u�x���[�1�0��P�PkJ
�J�d�xK
g_n�<�9���,w9��h��m��h3�o���!��0��d���n�F:qo=Ee�' R0:�`�Ozv7�/]	 $%��MwչlPz0�s���e;z���r���
�<V���m�6&�O�mQ���qӀY���v[̄iM
ު�4�	ܞmps����#� �h��+��z����4�y	��* H�v/<X9�C�*7�ٵ���w��b��^� *
����?\�
b��S��7�"�60Z���2`<ȫ+-z㣕H"ޑ܁y9Ai ����puf��LuN���pv����Ď�lI� �G$�)?s�~��C�;z<mj�Q�A^4��I�����=�Y�����Ĥ/��B�
y�6l�t�$��6?���3���q\�Jݒ��(�M9�(���/�E
47���U�
Tו."��g�gW\�`�I�7����h$�H`��Ο��
6�t0v��I��#T(WT�i�	���]-�-���A���Р5O
�[G�!`�$�.��!hj~�y�J��S�e�d��<H�)�ӣ����S�����O[���L��z�J�]��t��ﭝ���Au\p�+��_�P���p��0�!�ϲ,8x����s4�xtxˆӿ���O�G��j��.��� �m8�Z�/�8s�J�b��/�gs�P~+�dH��p僄���t�pm��if�CZ	2
��5˴%f%L� H1'�Q� ���I �Yk�_��C�x�A�?�6@1"�)x*��d����lA�ÐԞ��F����u�Fv�ݬX,H���˒�M�̶���Ca�{>QU9�ԁ΂���㠠�"i%E����>�a
N�=�f�Wf�(X�[cI$pr� �1H�lj�0��ȍ���������[=�eh�ı�˷�~��FF�nٲuߎ�Bv�EZH"8�<���S}�̀c���ݍ�eq~0�u���{��}���5<�U�DTp�MLKB�c�,6�
�}���'7ϼ�G�&�8`'X��lƩ��D�]�ߔ�E��4TS����*p��j������09�E�Qk�|�J6��>���� <�Ƣ��Q7��D~�˘���W�;
���)T���|�Q�`�6��16!�'n���kr��e��z1�4�n�g�E�bJH�ǀ�A4�D����K�:W,ܗL�N�a��(
:�w���o��-�۶����Ut�b��)���o�Ʉ�P�����x���A�ݿ}��Ý��z[C���o��ڟ�>�w/z#q}<�O!a�p�4��r=�UX�Y�Fj�Kʌك���b>˔0��(s����(�8��6�ʒ���e��G��zKKq�D�<�U��`}��W��ShEsD�%����o||7�V��17���e�7Ah�GL-R�ۃB�W��U�914tn
"���Ũƈ�_iff�˭df�y�r'O�8y��b�c��Ml�9�Q~;�N-J�:nL�[�_�d�����br��_>���v������]��>:�aF��I�` x�b��-A�BA	G�m;;�	��~�ꨫK�@���c�!t�!��<~�CI�{^a-"#���$`�fԿh<��S�5�b���A��@z���H�=L��q�\9Ӫ
��a�#�=KL����D�*�G<5H%T��4����=O��Q`�Uq�A��T~$B��[�9
Z��q��q�Q�Xz���pQa��m]���r�ި^A��-L
J�](,Кp�,Wj�dIJ�[+�
��L_��7h�)���:�����'.
u5�K6T����[��k���d��7���6�
�/=ES�����޺��I�Lw��)��&ȸ����4��J�P�RNb�Q0�I|y)G%VRH^YE�[Z��x�݋[�S!�0��u�n�WfG(�19l���'�7~��@�rԠ������+f�>�׋%�»v�����@&BU'��sM2`@;-���
�0�Ƭ�7���$O:у�3:
L��?�hU�\�Bk�✄��57���A,a1��z
r3��M[�[�+P�,����ǜ��,�	gO�˯ ��NE�~q[G����4:���˷H��h���6��m�
��z��?�q���.F 0�$9�vl�L�@�f#�n��K1�`"Yg�R{���h�&�gI80�.�
1)1��{��� =�xJ.K~�s���x�Tm��̂?���T�JKK*��* �ޱYuuˮ�ꪪ����E�@?�ͪ�b�	Gq��}|cVF�cL�
D��<�e�3��E�7y����c���8>�RF�(Z5m�[5u[7oc����ֽt/��6��&���8��68�b��N㤱	i��$�����De�!4ia�/��	ic�4iZ�}��~��Ͼ����{�s��x+����q�/�"Ӽ�o��2c�x��#�%HG�
���#��b0B��i��v��'0
��e��[���Ԯ�Ԅ�������{
ÿ��_���ձ>��rvџDO�a��=]��tl`Æ�[|f�40D/=ޫu|�ݟ�B�xBp���D���Z�4���^�p��&8���ݔCQ�,��2Gvd��bb�PN 3��h���%	dq�Z��(��r��*��2���&��
~@!�4�0� EX����z'����/��+�G�#N�A7���[�J�(�b��c'�/t&���Sa�,_�6\F �-�a72���/����@U\���\s5���Q��Wp�r|�؍^_���{0�x'�J���%֬�Q@�h��n��X���,�
N?�\gc+<���\߄�EX+A���j ^�t�F�bx��/e36<�:�.R4�����
n_��A�s���Zb9�@�Гw���b�E9��h�@j�H`]����Ȧ��s���Q��^A��>�����'�Gz�Ɏ.,�!
�mװ�n<���6`S@T�'Ҍ,�a��V)	�	�9A���1��E� p�v"➷�
�o�zVO�=
G������ ѥ���``O����l�Z54���a�K�<Z�����<W�z��68�}��c�1:�ކ5z�rՊձ 	���
��322zh7��Q%!!���*uD ��
�9�Vb!�y�����	�UH�00U�6v�':��X�LW��H�8��o�����<��L��G)%�,y�ґ�#�
ʒ� 4�	�(�z<��d�G�Q�J�U�LM�m�������d�/�*\��B/��n/碢A�fΏ7
 �%��j����_N��!��w��C�(�U�4
�,�"�|^UU��!X�C%�-
à���1�a�չ�ƕ\4�����	<X��d�XFB]ס
�&���#�e�,ز���y=����Tc�|�=(\A�~�
i	���Z��:�MZM�+�1��2hmx��S��W����9m�r��n�dz�=�B?���qZ��?�
I���9XH�Ge�yX�
���GF6�n�\@���P"�"<

�(V(�F�^Lvutu�ӝ��t݋��7h/�C�A����sh��`�� ��8�J��Ѽ(������s�!�9�P�D4w(&��G�0La7\?"z=����?�Z���}(�4pv����y���S���t��>����3*�^��V�I�'+�(A�~r�6��
�{�+�lYA����F�R�A+����N��u�	��ߜ��M�l��Ox �@�EN:��QmW1{`���)�E�e�r~�>CW��v�;�$	(�X�jFrh0�t�e7��A��\����h�7�Bo'��T�����?��1��mQ05L�W����K��,���
���x �
�o�0`�D|ק�-{���]f�L��\�%���=B��,$�;�z)�By�<e����l�ӧ>6�pOX���*�4��(H��ޅ>WSy N�9n���z?‰%�#��V�����K�nMX�U�k	*dS���j�8%�p1t`�#�c�V���tu��ܵ�gy���Wrm���&�s+l���j�<��<Ȳ�9�##G��
|!D�@� ��g�h�…,P��C����?��qm������0�	`�����9�Y��-Ѿ��(�4�6(�^d
x�Y�6�|�}1��:P��q�U~�r�
�h���f#�̼,�<4�Z�[p���O��" j�G���l Ђ$!?�
�E	�x	�4��'���j	�ܪЊ<6�_^��)��V\�`�~/�D��#Q
��.��N�q:
���oe�@��6"���߹�RrH.r`��bT��#���"�B�D,W������ܔ�_�"N�4
�6@�h��{h�|�O��8Ϥz{Q�y�����*y!�k�Ӷ��ev
f�4�D��'���|�Ip�?d�e��a�.��A'�j Ş��b)t�C��}�A�B��oE�0��҆dx\��Ӓq��#1V���G-pߺ�S
�l��#@0 ����B+,�rkE��B�HP
s��%MM�}�i�8ȁ�	0U�����yS��+�� �}��
��_Aa���9e��7�)�/B��)�0@8�y�hr��#�}��2
a/�P�R(HB�<�68�G���6�A��@v33"�"r�D�9o��O�&�����2�_�(r
�X$<d�DށRlɒ=
h��&�y���G�!��V��JX�����6T,����j����aڞB�H�
28k,Y��
pԫ���͍ <�ˁ?��w��Y7@��(w>O8x�x\V,m�PD�`'�_��?�
y s���d��+bا�W͑�������Ҝ�"�C�S
�O�⚷v``���O�F�6�i���:�qf�C����F~B(�
"W!�j9:(x��$�6C_Yl�(�b9�v�H߾�ipˏ��R�<��>���!{d�v$0G*KM/v����n�9��>vlk�[�H4�]�^b�@;	�mD�1"��ӕ��[0�D@
����A�%�^T����Ā���ӧσd<��aK#I=N���[�[I!iD����?��Tgia$�,�/ۉ|lÒ%� K�$z��C�'Nm�Ap)�y	dq&�)T%#�866�C5ZX��(T�Vݤ��j�X���(�B�!�/R�	���q�y���3�+��L��~��vڄ
�$<�m�������X�-mT]�S�*Dף엧�`^���Yʖk�8a�t=�.��\Kb@H"6!$�W��3�<i��	H��N�, ��p�Z�	�GU�ԁM�M�s'�`緿c?�*�$�6
d����\#�8[�@Y޸��԰��#�}d��/rq�hЗ|��ёKo����9��
��L:�J���ɡް;��9Q�Qeuu%���!��hE�c���m@+���!��ϛ޶�;����&l�����;��#Ed�%��	кdC�ʵb(XMc���;�4����d^ˌ����kV�4uA�J!^���Ł�H`�6�&T��&P��xݪ�co�����6
'ᙃ��!�08�괬'G;�mu;I��_}������fD�r�\��A������V�����.�)��ܿ���'LM�i0�:5z��	�R�'�0p��sp��Gy�q#�^J)����jZ�\I�R)��pxW&+yɒ9��.�����
��m7��]�Rq:�4(�90�.×b^!M(s���Z�(�Kuِ��T�	6)��x�@δ���:�{
{�qg��E�꫐i�:���f��c�d�o{&�B�M�V�ߤk��m���5�"H	���t��%��%���g6@�(�٠X�D�w��@�v�/,���J7	 �8�|A��r�ٚn��
5�j�n|m��ܰ����d�L.N
Ph8��і@��q��#�/&O��Ʈ�_OD'&����Pm�i55Ս��ю�`8�#R)r���J��8�K6����ta�<(Rk *�ގ�F��w����C��9	!��^�h2�R�Z�<�ɻЊ�@&�f8T}��0-��|t0$r����#A�q�
h5ŏѰB3���D�`�VX���z~����
,`T������7�����{�$�pW�N��%�Ri¤��8��z��r�����`A3�M%�	�U�t�hI6l��D�fT��݀�ʚ�:5�7�Z/�&Y���&L�м�h"�!���Q�+&/�)�7�:��Cp�	���0�G�����kgN�G�S�7W]]�ʋ؁��]��l�^���wN���_q���$b�]�	4��~�����T��;�ZܥO�
�-�vȰ����>/^�@D� �P9?�R
Ň#;���=�T��.Q�V�n^_��.2�I�%�Ohf��`�^7PU��iE��S��yt
r��C���a���L�t4�t9��!?jl�:~��?�.I���_���s�IP'�	��>��h;�W��{���U��~�{x{N�`�#�6��f�fT0
��x0�	�a��`��?�.Q;s*=9�G1�-M��ܺ�Lve�y��Ě��UAd��:��,�-8��kHÀ�ٳ��/u	��@Ҡ�M�T�a�&V;�I /�_�mմ�h��L��$�TO���y�!�?]hv��0�bu�]J׳�#BX��l,�#��y�
"̶)�pk�Ƃ�:(�6���l�}�^�)��U�e.!�"��G@f����N�r�@"�Ѷ�&�P�uF�Z:�U`B�!`�9(�Q.�T���ve��C]�]>�H���ܲ���##�7�=�ˑ#h08���(����J�;���d���
�4,�S�t[`�5�g�?jh�*k����^�7 `t5�
��0 'AX���󦵷Dz�y��QW"�I9�Zz���А����Iu8/�̱=U��N~A~R����l�
��iG9l��S�h��!����>�%K�O<�F���]���d�5�d�F��f��8
D�+���
f&M;a�+@,�o�+y4bMU=�$p�� ���P��W��lNiر ��H���@�IDٖ�Ƈ�(�h���.UUk��Ew����ܲ�b"��lLE�8`!dؙ�E1��P�E���!��:a�e:XIc���`Xhܽ�v�*�O�����)ly@:
89���<�HP�d�x۔}�G��3���R�QJA���s�1�i��5�4�K��I�²�F�&��x��h�b�;�j��`�zv�S��°_M�!�Ч5�F��@"�-���M"*p�Z�*��FU�|�3����?�gE�b�:�%@��X|��s�L��

��)1P�7��Z����e	�|�hǃ-�߸��:
�p����KGL����Q�P���h�Y'n�(J�0.5�oM�{1+�`�����ֆ�a�hl�0��j�A��5/�"��_+�� C��O`?��MsQ�|N�"t"�n�Y%�uN��D��C�n�^�>�Tsz��RN�*��W���8D҂�KD�JG�l�X�A���+�m�-x�[i�@?�� L�!�j�ox��`�t�B
*X��4A�_?��L�l�ޅ;�b�����#�᥂ `
�a�R_�mO���Wd���|	�A��o�=cx�R��p����RӒ%рR~B`h�>R���0�##���DgۋH��* �3��>jë�n�`_�r�6�&���m`��O��\��H'�1�p�,�i4`SbX"�{`G���y}��!�Q�h���/�t2�z��ha����q���!�J���
��nf�����0|H�X��h-���м�u���Ϗ\8�7lL�Y,f@5G��P��c�D�b}�&`�����|����ؒ�9����k��S��?��cw���U��;)�!*�c֬�]>-
*s�۷oټy�)��me����dLDS������?1���Π8�`@��2�Ȝ�aQ;�,�t	�+?��Nj���+x��O����Tm��.yo�n_�c�D.�t4����$�4(�(0	�B-�*A
�
1�ħ��"x�I}��>U�	/����#��>M��kUT�d	�*��|攱�ٜ\)L�b쩸�9�CLHl]����¥v��Y���4U+��y@UI�.k�@C5-RF���� ��8���|a���?z����3�؁f#qR���xK�fF⑜�G��I�2�ꝚL�
NM��]��>mB����T&�2g�q&�վq�/ud2]!�
*�𢺶�բ�V�������f�
 �24���������F���M��t��E42
B<�ԏX�\��݈��D�8�%�wq`�
��6.	�P���m���2�;Z�`�{��ը?����zB�Ԅ��=[��f�<��mX͢A77�`��
�?p����A���F���&4?�t�?Y����0A�����G<��4��ڒ�ͺ{5�������9a��#��!n6�%�.�uF=��7��khL
i�Dt(��T�7�9y��W�Ϥ16���C��İ�
��C�����L+���-8r�n�-	$�ӥ��&��1��x-M?�Ài��`���A�b5��U�D���X�H^�}�b��9*���HIi^��	�8�n�e�ȡ������v��L��Ї���qk=7���z:��u�Ƣ�{��Yz��
X�G��pI��:����"�-\x�6�܋��M��	�Zw$�`�2R�2���H��+Ғ�Ӈ-����U
Ԇ:-L��X��4Z��+�
h�P��|��ŋ�x��OeN�IcR2����!�;�3
�J�hk����Q���5�[����(Bd	��������v��͙�]m�"5밁E����YL/u�Ț�ݧ>�]�)6<%�����@.Y�ª�e�w�����V(�Ax���|�~���b��t���h:"��؁%q���b�:?ܺ�qKccuu?��Pn�*	�(�c4�A�N"" ���!H@�[I%$���yⰈ�I�
��y��\=��,
��1&-��C��!��.��^չa���GG��OK�;F�S�
Bֈ��/�1�$
��ϤYLuRib ��̣�������`��
�`�f��g�8#й�;na�e`Yf�o��3��y��Ƙ��$�9
,-b�ѳN#*�v��4�O)�/��6C�͖�rzh�I�4/���Jƥ�ytp~ц����+����UD�5\#�O#ڳO!�q��h �t�ȹ�n��� M��[� �Z*1��{׭��v�4���� �Ph
����]d��P]CɁ(KVV5T64L;�h�4
�G�G�qh
AN)Pa
��(CJ@9H�I�~tv�5.0
c;�p-�z耮��
�EF�W1H�~���2
���9�k�!;��
�$x���=�x_H���E``��[x�2��K5*t�64U
yxt�؍���2K(oS��4�`��9rɒ��Q����n����W,Y��g��iPƖ%g�z\.A����tT�)<�E/�&C���l'=���Z�U9(�p9-���	����w0
~��O�V��8M��D�b@�(�A:�$(�&0;
� l`��	�|	�������ǝ;-[U��,K� ޱ�RFA":ի�"��74�u�֛��x�hE�(G��=����ٳ����	,�0�����X�_���gd�[��H�g�Mu�DfA{�m���Q�i ZL�Ky��8B��!"�C9#-�C*�( l`��3� ���X�C�$r�a�-U���	x�l��ͪvf��`@i�n�ޢP��uǠ
D8HcɎ��7�+j+b@�ϟ?
ei�y���4U_�B?��~��*e"l��Q�$x7��wgqP�'��d�@�.��ĀL"��]��$@�a%�	�4�LWH��r�0WK.K޾yd���⣐�d���N�BJ��☍��M&ziO;�iƨ�8� 1ؑJ�N��gρ�l�J�>����-���\@�M�:����[Ѳ�����?��#u���c�a%x��]*��(4U1��MAD���KP��G�;59����Y������'K��0�����]��c�+�n%4�td��) ^���q$4�Ǒ�f��F���(����6�'�$`�僟~�]w��.�AV�yaI��|1���s�����t���
��>��s̓���,W��4�ȴdi�&#�ؖ�dt?3�8�H'��𨳣��C�
Į%֯��Z����
�:t�ܹ���:��b���C3)x	,lc�UG7��I�bdC/|o&� ɂ�7�ŋ��Ҡpt)��
(�1u���4ph>t1��B�)2����pЍ,�?�Z����aZ��n�[l�[X߶F+��P�[�ƕ�[+��x
F�$ap�t����i�D	�@���<�я��ap`��Q@4�K)�0"C�:��3\��-H�h�$P�b�E���Q��#a6�W�t(El��44P�_���:�^��("H0�h�J�4�b�
A��
��d[[go$Ǝ6�ﯭ�&_�q�+��A%` ���򋀁`�M.�-����0�I��n��D�@�j)�xŸ��>���C��[uPu�4$P���?-oC�"�M��	bkފH-��ġ�A�8�'�q/Y�ap~`��oRP��3��!��i�t�~�F�u�QЃ��D�/����c����V[��:�����d?r�IDUU�	'A�K���`��º��Vj��6p�,�Brɒ�ɼ7MV���Po|4��q������q"�Q9"C�p��4
�ZE��Z��a��� �v0`�@L���!���vEa���]m��~e�,Ma�[n<�Q!8HE��;��6��!6
2f�b73]d��zg���k����,y�2�`%Y+xt62
�#<������v�$$B��$#�����`�u�Pc�$��N����a�ǭ&ܶ0��g	�/�30'
�&���*u@ ����_O6	� �L_XU�΃j�+G�@ �
�gio��Ih0�}�X0��a�O0�"Y-ڕ�J�������
0
<��ja�V�W�U`������$c�ɼ��C�@n�&�yӽ���@�]��NE�l��b�Ӆa�	�R�Q����6;�7.��Q�ȁy��"�C'%�B�ݰD��k��eE"���0\0��#Rx��s++X��a0�%�P}�j��w¤�jg|��|��	��$C��4�	��!��k��Zt"�A�^μ��CV>3�ݩTQ�\�L���li�����KuF#}/Ѥ�1?�'D�$|��]���4Ѥ�#����6�U{L��Z�&��Bk�>t.���(�D�8����,�7Msr܄���q]�v$#�4�'Cq�Lܧ����
K��V���Nu��ӝVa��F j	{��͘�PZ�I+���A���>�x��%�� ��AN�,82rn�J�M� �w� �����N���y�@��A��4�)h@���nf*@�8�$�.u�2	܊c��-���s4@RHS�Gp���y�jt;�u3ۇ
����,Lv&�`
b$�lB��?V�w���90
�D��C��*x�=���A�\�0%��2�X`�:�����&HH|Sg�#w�%<nq���%:
J������%��+z�
)��f�6�#9��醗����R�I@���g$v�;�Ɨp	Nlq��@��~��.�T�4$�$��aP����~�@7
�&�YR��$���;	B	���;;"��m�
�>ڵ戮�w��K)uɒ��*�ADda����>��G|A4�Al[�"1LP����`�E����Z�G��`����F��ZM-��d *N�"ӊ����W
盦�rh�<�����x؝{ӗ�_��؆�b���d��e�7�X�
�]Z�S�z�i�,��W3&��V�M
���qQh�}��Ѩ:������=0��p�g7�8�'�$��t8�,
�O1� �a�.I��oi,�e�l8nG0�no��m��]�e����A
i�6@8��%Kvz��`�0�7u�"��F<��A\��U5�@�6~8�q���j}�A-�K� �@��PM�D`<�H�M�g2d���~8�͙h"�s?�i��o2
p�K�
{6�(���|XX�J��,q��Q�Cfْ��b�lP�b��]
-.�[T/X�>/9:���)�,u\�S�֣%KH[�-{��A��.xB?����܎�a i���ViH�t���8�"�C�HeRu�v��� O�L��-3�
���tA�ZIR���:
���ۨ�X�u�����������#ͣ��N�b�s(qB8
�w�x�����0h�*�eK-`�a��Y���\c�IqC9g5�t�!�DЀL�>cS�㺄
���a�K�2u�?oOV�����G ²"$��}dI�tj涁�枼��n�]zd�Pl@�4�b�����x�!mP�ϔ�J��&u��I���� P�00���% �.
�B A�8X�G�$�ƿ�L�-=6uyj�$y	�":|Uu�n�I.�4p�<M؀J
x��Xggg��O��Ž	�~�"�g�Ӣ��SPG�GC��\�
j��Nx
>��s`@��%[Xz~Q��n.4�:d=��ƋQ��@�?~�#��;������vżO�	�$bq9^�m
nE�GA�ӳ�v/+�}�Qp8��A7v��T����J���G�a�y���c�FUU+:�Yջ��n�b�Pb�C����{	�4�a�D�0 ݺ(7j y {�1���:p���;�R麺3h�z���d][H�������[�d��#%���Ӈ
�2���)�E��|����m	�<��0
�
��w
xb2�&bGa����F&}�m�V�[Xzؠ b0G�	78x(�8����fM���B����D�LiP�#�����8�z��cN��k�OV�K}E�u��3��nA�a%��eapZߔ~�ǖ08�4|�B	�t[1D1�k�$����8t��
h M�wge��6�O���W�/((�nśh۱k�:LOg��SS�e�.�fMШ$�.%I��&l�&�}�)�]��Ą��ǽ��e�|�`��i�02+;p�ԥv�AGg"���a���e}�6h��xjJ��c���
�A�^
1P��w-K�ą)D\�
���2
��bӎ%�@��q0}rϨTUi""�m�,��A��c/�6����2��ЃF���0 @�ͫ@�-�i�!^=zzO��
�L��DB��w�M,����d���4lb��b)��p���R2�߹q'�%�2�c'S�_zq�E���,��;T���؞!.f)����j���'`�6/G!`D��h��*4քb����:r
¬�d�d�!Etv,�F��}�j��Q��y5�6 A�o|>QpCX��B��Bd� ��߱Ē��w�[��9����5�]�r!�]:=rT��"�[���G��rJ��^�������@\Mt��ٳ���G��V��F?�w��a�L�^�dH��wf3
w�h��Q�p�mo"�Py�j�k|�c�m���3c/NM^��@w>
ZfS{	�vo/��r�nf)�d�S
4*��LR ��M�8�0�	ax��#tI����

�:�����Yz��ì8l�N�J�9L>n
d�P�
�8I��<�(<�N��uɸ�.f8fP���%�?r�h�������b��궮6(�>*
�TO�+��n�F��a~8Kj�j�D�J�%������܉��A��rHp�݆�e ��ω!	�;X�����E-��/N)��2�d�v=��Xf�����:R@���6�ړ@~i��i�D޽�E����EEr$�a@2�0��K�p��!�x�ԥ:8�N�/� l@Ɓ�������<�֚�Z�(�t��P��L���k��<�+\�	�@8
��B9
V(�,�|��Ƅܞ栢z���^�eh�9,=y�>�i�PR1�){�rh3�c�x���%����"�\��L�z��f:�/?������8�O �@(3��8r��YH̚/���,'P�=8�w�xf�L��m���)����O;�wɗӒ�i�M�`��pВ�`��z5�%��Bsz�`���DU%�?7�ȶ����
\k@k׀�F#l��V]	�x�������'V5��Ӏ�Ŏ>lB�D�ÊE]�� 9��<x�a�F[��&��UU�j��,V��N�AY25)�#A%;,,P����2������cWw����O=u����]�w��}Bw�/,��g�DzȠ�H/R��@�f``��|�@1TgFN`����\��+�'Oc���Hp1�LGUU5�@��&A�*�d����q�h�b�3��0������ ��x�h�Z���a"�h�q�Ȋ4"��@�[�a��w�0`�y���
��ɦ;
�0
�wz��1�j����[��{OB�n�����Z�����E�&a%�3��:x�#oЉJ�Y�4�E�jj<��]���6Ш��ٵփ�)�ؗ[N�,�<`��^��,�4�0�C$�1|H-�Ϣ�H�1#�M��4�v��'�8v�h}��TfG]j�M0>~��G��j��S�
�#�Uͯ7�Z�d���4�2�<>,]��=��J�R@�}�2��K��wԵw��:�0�D�
�~� 2���������< ,�#�ՇoJm�L!0 �}��� �0
Su;-�r��oB�L��5�^�*�S|j;���!�({-į��{U�7!?�)�2�q�=4�`�S��ɀ�"Z9Ng����w?'H ���W$��`6
 B=t	�ey	8�K��g����C��Y|����^*=���^��CS/^��*{&�����i��F���|��n�W�_�E�D���V����=!��E ѫi@A�i�;�u��AG&��r~a�HD��nB��E��4fM��?�P&���~�C�|� K��!�����060���Ri��\���^
+���� �z��y݉Z�,Y�I������hZrC������&ߨ�%K=��hΊ=��%ǫ���1	>�8N�e�
�2x���K`0�K0h��N&�&��I��̥*4�Y�~�:��o8x�#}�:�`�
��:y�
`p%5z(/l�=
T�/:[I�(�f^�G��<��q�.����l�p��DAx
�6.&�"ZH�<�&ҟ��{�D<L�������wG`@��:	,F"np�@v!p�"r��-�(0
 �A[2�/6۠$(��%!��#7�)t�AUQޮ"vpv�J-����n�+��p�U/��*�!6@T �_��I��z�7�����vZ�.�04�>�Y�}8̖���0����2 p�0�J�	R�(����&�q���ҽf�l�F�eՆ=�ۮ]���x��$j�/n��hfrB�Յ4�T��`�	���u9`��i˒_����H�}QA3`��ġ��}	�PC����h�.��'���P��GF�l_��04h�3
j7j���Ņ7CVv�
7��P�.�m�b�w�u:$>D�KG0�*e�N�+��4{��f�0
x�&��i㚣�f"A��A�>ভ̴P%䋅�7#�@z
�ڭ����Ӣ��f�0�A�|V��NA38��-��|w��K�4�-�u�W��x� �lĥ��Z-�/��2�GL.��B�E~�����ޫ��n[�6��C/�P���^K,7��3��WeY2�	P:=���h�
�f�Ƈ�~�,b�@ "hБ����#Ѐ��6�Vf~�Ɲ �/�+o��lP�v�/������/ʀ��!���z�	�%[����
Tq�>$eѭ��"~Mu�y�a1�Q��i �/�ˢ��B(6��6A,m��"n`k��V��0�i*0DO���1��'�qO
�C�{�^�aA�ņ� i �$`��U�j�	 b
us7�G�5ٺ�ԵG�3���!h0��r�ѽ�d�eY�2�������b1,���<\ּ�
��]���`�+�k�E7��D$�hV���p`"�U�/��|H��@�6(�U���F8l�4��!�,�e����ϕC�M	<Y�7���Q�!eڽ�i ,��K��E�njV�=T���V�匮��d�VE	g�h�E�%K�-K�0@]�K����E
^��!o6l�7q�,Y*��#J"�1	L0�C�~dm2��a�~:����n,X,��B|���p�8��* X@�n��ve���Nn˜I����+���!�g�AD.'pA�3nxj��zG��J�p�\�����7�@�9��%�
x�A:�9EeQ�K����}>��}�DWG��-���l l L\��>䫟�eY`ЀdnPҏ ٫�s`Z��u˻
r�Q_^�`�Ӓ�7�ECLӒ�
���ȶ���z9��#�6���V3:	.��$�,)!MQ��rG4�+
4pAN�$p��$����J�G�B�&����X���	� �8XL4X�G6
D�0��W�M�@]p?FOO��@��3'O^��9���ū�{��M�r`0C�@%��4p���
/�%ʞ�����W/O�,g6l��Ȱ�at�H�)��L��Z�|\��Q0��)
��N�B<p�b�(6
�A�,~�\�`��Y�BΛtv}!�Ɔa��`8�9+l�dG!7lGA���v��̇�I�
+��
`^q�9��u��8
��i�vn �.2]�Z����P��4�]�F�a�oP�Q�/'u�.���>��`
�O�'�?��8og���b���
���:`1
T�!�3P����aгo`��3'_���G���]�:\{���
$	\��==n��vc躢�W�QG���U��2�d�f��8�tMd�O>�h@@|0Ђa�����:�����ضD��a���G�o<@����M������d5�`�3
u�"!wqӠ�&��i������p~1e3
�,P�Bv���fg��i�n���0�IV��1�~�|@�D�%s{�?���}F�g
�A���@�<`�G�n�ZL�k����E|p�@������Y]�.Vw��a�к�����k������|�b��̐�hc�ӥo?�q#h�c����Un7��3\��/_�����T�,��č�\m�4��Dz4�nvnh�|�!O(H����O����<!��cٯ��,[��v�(7��#A �܆ ;��MPh���C�4H��h0��#H��x��oMae��3ws�Z*w<�G����*ț�|�,r#�A{���W�7	A-b�?��g>�!d��}yADYj���'
>�{(�h����r��#`Hj(`�x䰡�7�����p��a_i;��$`p�̙�ұLf��`eɒP�����T�X
>�#'j�C�����Ջ�C^D&.^���[��M�Q���h�.�1�(�Q�{��X���H7�(n�G�RW�
4�ĺ5��;�o�M���`�)����;��f�X>�A� �(l��D��.� 8f\�,W#>M�}����� ���b�C���
�n5[��rD�h+a@uG��5咀���%a�>'�$�4
�·�Ѐ�	��͖�@? �&A�|я��Ł�����5^�X�@qeaаv��ȩ��]/�6�1>v�*�
.?�n=�u3K��ߤ]k#�DW<:84�NS�ErBAJ8�|ѡX�}=��+���A6h�M<R��4�<�"Dnm�Eк@
�\{��L�~�[o[p`�vK&�y&r�u��F�0_Y�daH�r��4��ō�(lPD��N�+׸H��a��
D�Ѧ�ȶI��󇺟�w���Y�|�褊��y�-��;�C��2�D������|Ba�:
 f�G���I�<XL���I�m/n}*ڕvA~�F��Jg���J�j��zб	��|�
�g2����'_a �D�/UT�	^�����Pg{zߙ3�c���ē�/������]�g���a�@�
�_d	)*c><��!��̢�3G"TB@	ƾ��:
�{�Pp[>�� �f�F,R�s�q��!҉�I���A�+�^�i`r�����a��u�b7�����@/]}�Zlt�j�k-�u
��R���Px�/^��:��S'��>��O~�IPh�`�G>��a p��|4 	��_Y�0�X�IP��8�rx�T����ʚU
E˒6����
�/�v�9y��Ž׮=�(@�x�dH���j�;�� y��_O�e�pf ��	f���ӿ��Q�&6x���(��{�)h�KN`6jt(��d�Pb�Ar|D�=Jg�?��N��,��D��9�I9v��hK�_-�٫Ea�بǂq����g�
v���,�T{4�~�zF�S�%�9Hw�
�0�L�o�7
�iw3�w�Ƀ�*X��k8����/	�a�Yz��8�	F�G>�BA!
�	����a�SZ�`����dy�>�ӳ:N��Y�,�(d��xZ����8p��g�g)u����˗��q���G����xrgW4�Ýh!@�`N}���o��X{�=&�E~��2l ��_|��Ӓt0��#G�C�Ԟ@c���?��		'��_��{߻��,�i�#0l�躏0��!q�VA���?��,��2��n������Q3�6�(��^	�k���V!�hh�h"�M���mT��j��b*��`�ȼ̃����s|w�5M�ߛ�:jq��9��|�+8l�F1�t�j=�>�a���=��<��xbI�A�m�NY3��S�;K���H�'`T4��m�(4��<R�h`�$��o��n���!<==��ᶈA���LP�J��3�#k��<�$
�m�1����`�o�Xv��������Di�m�z~Oژ��Cq����u�	�"l%K��;X6j�4c�hK���i����v���ZlP^z3A0�u����(4�}�p�U��"�$E�\���$P�41?�C�Xl\�A���:~�$
%
���
op�y��hD׹z��0�0��c(�w����uۀe�1�����	"I���"�5�x�(�r�'�v����Oj�7��.���4�Y���������J�P�M�M�u�
URHƃ�D�O����
�m5�ap4�	�vC�|cJ��H`�}O��(����2*|�	M.^�Ҙ�b����3t��r���j�QH�m�B5ͬD,�`d0��}G�oT�`Ij�l9��!���đ�X�l!G�B�^T�i��8��ǝ��e�Yy�봉�(�"���b�q�@�
����miDz��&��d#޶� GdYݱ�Ɂ��E�O<����x���c�W\�u�@���E����֛�Y*0`��Z�ߪ�G�	k��+qY���"&:>
Ѐ�vIa:^�����ڵ����+��w��^�=��w����wB@�1+ �| 젋�d�^��+	�Z�^$c�Xb\,��,6�*b<��3���/�m��w-Ac5���uTy�>�y�&�A�Ht�B��+Lj���@��n#���{���1Ȋ��1E���I (#Z���B�ڒ����Y�v�G�'�飅�l!�e��n����%90*�:�RUH@1�MA�$
QH�7��,��,P4
.��hx:�$H
�2L	T+�>��Ο����).k�ƒ�B�SN����d2�jKV�~
F��7WW���Z}o��ow�j������;�BZ��v�
�z|�;�
�R�\-��2�B�Z�62Pqn�:J�Z�X
�n����mȣ��Iϳ�Yv`�X�o8W�ðR.��C P-a��3ǎ:D$P��n���=�K���@�}�t�:��O6	$*��	X'�m�DAڒK�trH�Ew�%��?R��!��-����e������xK�좁N����C�l�"�	 I.�&
����pV���(H`�F�X&?ޱkl��#�͔'g�r�<�xtU���"Y`A4����?۶
�Z;�wA0[?����a8|l��i��*Vj��\�T,d
�*?� �(+�ިaĮ��b��eР�C�P_�A%��p��	�7��;�
�(t�}���54�DQCI���a�D,ѷydB��E'�N��2��MI�Y��0���O�@4�H0�v���]ED�Dg�h��f!���x��9.��$P0���x4
G����	OI� 0Ў�3���̛֤͒y�G~�^k�+9��zr
6y���&^���/�i��*>��Ӿ�Wֱꤵ�����f	t� 
�;�n���/Q`_È�\[�֙�-V3�aL]��lf�E��2���M�C-i�`�X@�@Ij�~u�
C�� q��P���(8�-ޗ7f�@l��:h0�$
AQ�!����ޖ�G�����0�K���$2要_`p���L���6e��Q‚iDJ�|=XT;�$
F
m�	�=6��}�Gh�l�.��x��w�����<��{W�">�G�LX�4�q����:+-����诋s�r�A_��X{�� h6k��G4c~�G�\Ph��`i&��U��L"������6�?v��Iz�J� �Ά~���)A{����#*`9���'��0���;�h����%6�GBp��l$�6M,+t����'dh��t8`�klIQbM�Y��@ѷ�0=�QN��ޠH���Q 0��2���y�����m�E�A�˯)����X���n��מ{���?|�^}��WZϿ��"P��]��o�1��4l���ԓ�z�\,���"T��6���a|X(aL|���s�^o�x$
ӟ�ܝΥEbA�E*$f2����4�	����YЕ!��`�ơ}��
{����q�Bth0B4�FD�%{�u��z;���y9w��9�B3M�����=�G�	�Uk�M��+�X��h K
ps\ , �y��֛�J�(���Ѹ�=��@�@l���L�4�����hԖl^m�K/����_<��:�C�
w.b�K�`�SF�m�$L��F����`�8�M�D�@�e|�_�V[F&A `%L/��j�Y�	��T
7n=n���.�l�] ~��b#ў$(~A�j"ɫ��^^��(P0PBC��M#[.�^�
JEI\p��G��a:i+�t��Z� �#�~���5��O�0;�"bEDG;���y�@���ϊ�Q*'���*�b�6
�D�,��r���'9��g;Q� ���)�hK�gH�щx2<�~��~(�v��\}�դA"�3�cft"d Q@�rqj����^c�<|�R�r�N8)S��`	9�if�Ѐڒm�G�g�7=��4���NXp�
h��ST�z��������D�P�܂=���,��,У�#X��۲���6��bQڒ��B�f��	��v<�����D�2��A����z���E
������ED��5p�b�]�>�G����ko�
Y��a�+vj	�ږ�%40�=�b���!�*o�`Xj�	�����<���/�H��Ε���\UD3k�[<:�WA�Ž)�����l��T���>?_�_��h�J��o��R��)��Y�?=]*��{�1��G(T�;��p�����(����r���~��C��5	H�F�A�u�3*8B�s���@l�/`���_��V>�l�@�`���/�5�?*�����Ơ>���Ko��ۇ��;2�K�ܑ,I��k'c�r�� ��wH,p�I� +\����h��M�m'졲�y�dpg��k�=�����?�����UwL`b��Z�����Ń�%��nT��H���=4_Y��ɨ�Dz|���y`|@���HX�u����]822b
'KX�a�A�^��к�r�Q��������'*pnߖ(4���󍹂���YLo5jt-G��6��)���6�i�.�kK����Y!�1�C5$��_L �����B�uǀu$X@/����`"LJ�V4׆n4D����
P_T�ӔD!/>o���͇蓱ɠ�c�Q�G�}��>�<���TA)C&ۇ�������j��$�@�����o���m��K�(߾���=�P���@NC?,�����b0��2"n���!�.`(��H aA@����3��f���UP�("H�WXp�ұ
$Q����6Y�z[��
]���C,�3�NB�a"*t[�|�R�K�i�FH��#�:�%��"b0|��u$�[��$8�����6�
�1Ȳe@a��I%�/�'��6�r�f�� 3�|�%�p���y��G�x�9�g3IӢG�^��)�f���`>�8�Ae�7V�j>nA��Ukj�ț4�d	�9����/amfQA��!�)�>n@���
�]�RE6��I�	���,�t�������ږlQ�I}�*W��`�c��$��p �/�m�ͤ,CNj��?�%G�\H�^^fB���T�Zlܱ	�= Q�Գ���&��M�#��0
p�0`� ;���^2|7�
�H�˚I%�,mE\p���Cϼ�3�&Q��5�b��A
��%ZX�D�|���I�nؤ/�+X���iִ�~2|ڒ�$P(�:�$M�'(tP �b臮�7����RG����3�O��Yp2�@P~��Z�۠2��e������!_�$�kE
<q�D��Ѱ��g��`4)4P{��F���b�4�j�����%�t�9*x1	�>��3��(�8K��9��Cp�B*�~�˦�1Tix�3(-&3i���È���τL��̷m+:���4��9�P��bЀ@3I-�‚��	r0	4�і|�[� dc�a���F"��OK��}�QE�%��t��D&��.(��/���q&
�j1b�I���	���N!c�0���8��/�}��{@��N�Ƞ�-1�z�8ip����S@�p` B\�Չ��R��cV�l�;����r@B��ldw��¥fID���H��%���D,���,r>Q`��P���n��`���n �
��������<������8��������a�9L�,P(@���!4�l$
bX����,�t�Eã	�u�2�8���d��:r�WР�m ��5`�`�\��0N>48׽�․	��m� .�A�9I���(D�� H��`�`���!���hn�e�#V>ĕ��SS�I+pB:_����Zz���6?��
��!KRP�$�@�:~��,���9��7�j4t�H QA�HU�iڲS�?�%����:�4	
l۠V��b�`�*�>�
@e�9�?�����D:DO�j��cU�I
��O��
�	r�N�("^�/�x=$�b\;5�VĜa���|�J�@q�Z����[@H�f"M1�sdI"�K������`�2�ɷ����->�d9o�GiKV$
����h1	��Ka_I�s���l�Q$��^�v��
��@��Q�&-*�!8����Da�Aڶ
����
=ضdh���k @*�m`bD�NɁ~E��_EaV<�!��Aq�3&�/A�����%��&��r�S�fI��
��6�@ ��S��fb�=�	z`md�¢�g�f"-��&b{	�Sl`<�9�i�@��&���6BRD�G�6��˶[t ? ��(�@8.��"����e\CO$.�o/��d=܂�ܾ!�ֱm(�h ��]�{	Z�\m�۝F+����!��if��D��6	:т�er��Y�,
4�F�&ED)Hd��������mj�T8��%�A�6����o�*�m�(�����HZ���>��>�&�Fޠm�d�'�v�3��L$�l���VG���t�Q��Ky!A�2o�$�P�˶
�@� *��� �$.P���U������$,p����MN��u���}hp5�����,�i��m�c��
�˲6�.Y_]�ޝ��M�F'�S}��J���X$���-1��Ÿ�$P���@���	N�k� 4��w�$�6����e�'���U-TvM+���R�>$͍j&R��D:k&�؆��7�����i�Ƿ�!��Z
3��bְ����kF�"`@�;A�%QKV	��l.�ai@��S���n����;��c������Àip`�UQ�p��&`��D6�;����04�6HZhK�2��~|I��,"��$��U�Ρ�@�<ӄs=�	�K��8����@hsu�m� �` ����+Q0�y5�р�����?��UJ������2��	����9:ƨ���F�2�&� 	�na�Ec�a{$�'

H��(,�
�i�x���_�(`��q�'
dXY2Y`"�&��W���u�g_�Ӡ\(�%�1�؝Ι�$
4&�%� �ᘲ"��m0F� �r.1p��{P�p�z����fd�=�͑��w�8�A��"���d(!ˎ���W� �A?2��gC��/$Q�m��C#���SP�T�ju�J�*3Lk�$8]�@����N���R(�@�{�Q��Y(���Ep���(�Cؤ2:���֦���G���bhP�ʼ������6p�xb�&�A��<,C3�3)
��f�E^�GSn �� �:��@�mJ]�ໟ��&�0��V�.(L$�͇QGX��B䁾dX�l/W������>��9iQ�!3�F2���:gK噐����NH���mz=�cl����*E�>��KT䡍(��ʒ!x�<)�t$t�ٜ(��B��X)�552��@&�e��<�ēt
��"I�&���	B��`A'���B�T��.e�w�/	��ATkC
Y<Ú_`�#+��sh�YD�h�.�)��qH�A��"Vt"�lK�)"�)�3�
�t�W����Ď�U�k���@����)�6���li9�܂��(���
N�
X�\x��(��Nlh

�(�68C�[Ԓ9jN6�F�a�3u��v1Iy��G�����=�iF&}�"��	�_ �W�*	���}��k.�V�g-!~�
X��ɿ�K��I*�Gή(X���
��� tè"�#A���(�
	l8��i�ԩ�
	$?�o/;����{ݩ��d=,0
$*P48��=�:N J�q}�7B�,:�x��w̛��
ma�`KQ:�2��"��@ݐDA4��5��M%�	Z\�D]�"H�!��
:�p;��%�\!VV�4�l�vX 4H�1���f�Iӱ�x�'
��uc$�ҁ€��Н��6%(��H���2�$'���qx ш�]��b�,6;��"���8G9�46$*`��U�u�o�m��|��@h�G#F\g��$�H�N=��?�Rp�	xB�X=��`�I I����.dI�mh�!��Mh0�m�i*�0(��
�
@����L�T�6�o�aE�Ӷ���JT���*�Qq�����fAgS�V>�]�n5R�F�־�	�K�����M�H���+*87t�)�u��( W���L&��h�`l�ӵ<YR�=�K�H���ҀE�œ>tqG�w(\ �����=�|I7	&�jk�+E���ir�B�.+R�0nX�{�<r�`b7ɿ��YhkU����,�Z�:\QkE�'T|s}+�[DZh�`�&H�5
!���\OCK���MS�ZL���� A�}������Y�=9jM�vO��������{'��	��
��+'a�+�4z����v��:�
K�0ݒ��cwS�a���w��C�(���V��G8�}_pVK�q���@ق42f���/�[閣(Tl �EР=:K��B���u�:�B렜�'x�A�0@=���C'	�ض�~�����#8c�4&�@k#(q�������T�8@.��̇H�?���@]pj�x�P[�p7���5�3W��f�
�o��%�u��	��
�XN\+��$��m
XO�]��^�{� �6&��`��
AH (��@����C��"=����{������>�⋏�Ϥv-0�w4�:<H<�ֿ�vV�K��@:���oh�!��
 �Lʛ�+zct�Q+�Qz��<��|6���
�r%��ųI�'4?����l�����?C�A8�o�f�_��v�O����	����F�k�cC��r�>���Ӕ`��B�8Y�&�}֜���l��� ƀip�Q�A��7�<�����ܤ�_t

�::�P�-��ڐ�_�7��X���A���(�l��cXμ@nL��!�����i$��\b�*TCA5���_������2��L_��[Ε=�(8�M�3~�F�fpƌ���c�D���7�A�;�(�h�j
n���@��zZP�C#�2e�$[��H�#�ۣI��b���DP���`"$_ �����U(Ph����\k���X�wd,�Mzq�����?��:���Po��?j@D$x�)`�/���s�HH`��|y�*$�qo1�OL#gx���~������&2��3��0X�����`y>����H���LVz��������[��˞;�4���@�HNW�C����JX uBW%����礑�/d\�(`_�77i��@��f�@k �A��c��4����w":v�֣I0�G#���Bz��I?�+`�8f��
J$&�(HP��?�b:cd�����8�!*԰/t��x
�i,y�F��"��X�	n0�&�[[�P��߫�¾�Dz==^�����w��ac:��;K��\�wܓ��0
X���P����D#q꣋W#��}�I���/	 �j)z�Lb�@Hp��

n�c���bW��6V�
�I�5��G|az+	�
ԫU��!�]�����
|��	i���A�4J�ͫԈ��D��	�t&W6��:��96�:
��X��F�f��W7���{[������\�֗�������í�:��Ę�o�'GM�@��j��ͅ�&"��	\s��?гB�bA�-+(8�n�Ke��ے���c�l8X�*b���ָ�׎�l-nW�!	$[�����/gk���&��9�vnL��w3C����@��~�Ѡ"�z�q�7�Z��&wS ,����8�� ��'�#`LŰ����n�T�Q_�7�t.�&�Vt8V���T%
��96���[��(U���˘��*9�4b$�#_�5�&‡�:�"��H�MD��>[D$��#
�@H�P`�͓�-W �V�g/@�
'��@��R�P��,���9v"ܡ�u[ 08�࣪��
��;�zQ4$�E��LY��i��:Af�zPnO�N="85��ց"�OH����G�bW���$�Y����|2�5��D.Y�C����Na"@4P!�����[�r�6�'Û?
������S�xW�7C�x*�V�˭J,��S,nG�_
���	e8�?"\w^D�� 8��{p�Q�
!�v)�kqR �%u��+;tީ�@ӆ���>��a�r3.�[ %�� �؂[���
D�D�m����ƪ��
]���4C��s/���`�bЇ~�`�]N�<�/�P����C���1�d�C��x��/�"��҉`g��O�C4m�h0�����/59@��}l@fb(�	[_ٔ��y$���lמ�[�M������`A�R���ߎ��NCi�X�� �}z�^ 8CC��@��v�J�@_�E��|�ڎ=.�����,�@�@��l���@�-P4t��v7s��
�
����a�l�M�	����x����"��k�_�4×J�q�(8��,��oM���ٌQ,ҹ?�`*�<?�~1��F�kk�D�D�p"�b�����-�@���X����	08
����fh>�'G�%k�\vsff&�2�T(�V��{��S@��G�Ǵ�tG$��N��X��xX��G���= 		nd0��Z�w��zp�v�ʝIX�Z����F��Yp��;	v\���%ł���,P���K����h��̸d������P���	:�&M��&	���'��~�qv�)௠^�q!C�ߒ\��N��$��rv],<B�@j�@n6��{
�L�0U6׼�J-�/� E��v�hN�XYXX��+�o���A�cS`�S����B�X=����I܂�[����F���c'�P�����ݎn+D3��
:%c�^�
zL��"�6B�B`T0t���8��
�䆢�OĻ���k�|��&�ǍP__pw$:�C۬L�
�I@��4�h`�m�M�%K��;K�d���Cqo��e�A��~� ?�q�w���
tO�Fi':F�a�L8nTį�
LgS��t�T�0�s^�H���
so��+��0Nj�ǣ��Ƿ�6jCo�
X�����"�6j7��߮�U},��@�`xj
L�ch(.�K�
�PN�k>O�V�%c� mVX�B!'������ �A/֭�$ߣ�4 ��j}��Q�H@Ң��l.�y!� 5g$��G�Hݤ�<ɤ�%/8O���,��n#�^Ǿj��-_pˁ�P�����|Y�|=� � �X�w"�90LC���'	$A$	�6	nr'��+����}_�3-�b�8�<��f!�|�Tn:�3���L��J�M���	��
;
�At.~�墥�E�ʂ#��2�},Y� �Aa�t6�����`�G��S�!d�Z-�kh?K�ll����I�b��/4on���!X�GX֝Hrұ�	���ײ�6�ҳF'z�Q]����a���#��j?�E*/���ԡ�*0_�%B	l�-$��I�@�
�2����!b76��]�,�4(��32�P0(8�"��@'��

	�
�9p�txkB`"03�Ý!F��es�J�B�'�Q�r�Y�H݆��bcu���֧��!4�,�TK`Gl@G
S�i�h���b�(��S|�H�gf��L�������O[[_���Q�O{��&�m����ב[{	LH �@
Z[�B�����}�MD�P:C=zd����t,��@���|���-�SL���v�F�r���A�
�&�,v����+��S9E/y��%(������
��;����;����,҃mI�7[0�%ە�d��6#��t8���!ބ�3���a��uob�����<�s�;�tqng���Ĩ���+�o�/y���!i��*�F��~�n���p80��܌�>���9�,'�O}����nmhV%df�tҀ��	�	ps�0�Y~c�U�?Jg�6	4��gDĮN����AX 5B_�a��@t:]����4d�J�؅B���a��lR:�5y��;#)n(!0��i	�^x1
�K
��Ka������!��I0��H?G�7���~v�R03�l���� �_|�ǟlP�O�0M��
�CoY���*2�q뻭��
C�)hz&D�����c��X2�]�*�4M!o�~���_��f5�x,���Gn�,KH@� �����j�	T`�����G�
�.ލp�}��	2_ ��y$a�f��T$��/��F��N[p)���<0m�ͥ$6f��x�N1�!0t�@�A38�I �Q�?��,��_䫃����
۹,穧[�n�	����e�7�ax>W�~�����:E�(�fʻ���?��5�EB��>��z!b�?4L4`'���XXH�ǒ
�j@�af��	M�R�d�V+Cf�4�s鄙���w�����XG����%w[h�x����,	���A�`)��@k `�(h@�@|��ݗB���G����)_`��X������b.�}����
�d����i��u\H �'�Y~x
�L���r��:�C�N
���y� ���|(D�/���#��M�?�7{*����2
v3�t$�����ߡܠh&�Og2����Nn�ƒ�x<U��¤Рml�g�L��f�R���X�P���\,C‚9t5�|t{��������D��4@�S��/��F<	������R �����n�l<��Ip���._��(`�!g��#���B���6<w*c��g`��]\�G���K.a<���V%�7�g�r���Q籁k�\�&�7��0�����5���C���7}"�)p���?����|2�;;
3��>��
�4������ƺ����?�l7�����s����Q�T�z4�R�؀Viq��{�vn�A���Y8����<A����AÛ�� 6����a��~���u%Y2݅Z��R/��
	�?Ҫ�#}}M�Su`������s�/P-+pdg��=�6	�FB�v�)����$/��H�@B�]e%�(��}�%B.��8ļ���B�Cb/2i(oy4�^�A�2A���G���(N悃�����G�2C_;h�蹡�	JUȄ�:�ШÃm�T��!(�Pl����q����X<q|.�5�5sm����L����$"���櫖<�M�x� 8�A��AG�����i\w�1v���.���n4=O%�)f��_ĝ���	`���}}�@/V�j�,�8�6Q�#�M��s٣��Yr˺�� _�y���zS�j,"��e���;�0�j�5`��,'��40
ə	}ˢ�
�;C����I�&�5��/p�a��1�j��A�M�����D톎}�E��1�N�$xkt�����%��F�(�*�4�R��Y�8�����/�?x��Z�P���y�	X#|�
�@i�����+
kj7m�D�I�!`��Si�,���]N+d�(jI}������!�t>I��!�&��Q�p`�/!'�&}��U*4H/Q�
��c�/��@3*;dH`p�:��j8���$/
��C�Z`�.=`�Tl���c�`�_�Q����8H�5����~�
�lHrș������"�F��nz���|�A�[f��Z $�8'�
����+���j�+a�l2���!�Q�W��BD)�?<3���I7yXw����]#
��8��W&o�.LM�g�kc������56�N�T*�x��X%�قZ.c�fl�#A�����4��q�0�H`�:�������,W ��h$�A 0�MI����|`��u���G��ܥ�p�lM�*$�Xpa����/��?�7�|��!��m��8�i�0`�h4�`4�m,����{1�-�<�γ'd���FP �	b���A������Y_	Hk%�AC�Fe��C��

�*}_�sm�^�h��������Υ3�P�p��=?o�\02�����r��bެժKe�N{3j#o�5xݷTZY|mX���Y�%��c�Exf� 9ș��I[��	� �hNtJ�Gx��X��#���@���ܜ,�@3DN���Q�W�0
t�A��~2��B���@(P��	4����lc�!d�\e�,�
��r
P�
�n��οb�,ӄ!� o�,`��/�TO� ?2	��ze
���$“/�JWK��	�8�,o�Bl
�
� ���hP>'�4��:�z243���Dz�*��Jx[�d{sQ���"N�_*�f�A#Ʊ��diiei_�=6�@J����`��
`U
F�[<�0�A������A��O$]F������">"(	� +T��9��(�jt!���s��
�N�1P�!^0�|�0`�/hbVz��&�Y$
tcp	��A
NX�A�s�%������x�!��r� o��e��n��"����'8z��}ܧJ��,Y�@�H����D�����a�����S�A`tEр�`k�������k��y}m�,���x���9c��hX�tѨ�7��s�IV��/wgǘn�
^ǎ���a�s�@�%���Q($�A2�re�3 ��*T鰾�MN�O�_<�,��		�XWb���	
����zl�[�C�NgHV�
N�1��,p``�@����5zx00�N�f a��1�/�#�`К68�T�Y����sk��:ȚD����]��A�M*Z�@
q2��#�'P h��+ڐ�#3tل0&(����L,����P���UK���3�	�`f7����N�L$
��'GGOB=T
%��P@�[�xsT�Aɳ��h{���q�
�˅Tl��Q�iR�Ւ�4�Hj�/6	��7�2�.L?<�u���	M�."���l!�}�u���@q@`@���>S �@ۨ|:�c�v`�g�d]t_��@(��,�N%I�9dH��Z�C�6m�TL�)�X���Cbr�@q$@q`�~yA��n����@�*�G4�$�e	4X+)�˝r��#,X\�me�㠁�ןcV�vV����� <���IGX��̈́7���A�[8i�ӓ'�O���C�P��J��t�ǒm,��^^�0	H���H�B���;S@�@
�M֨VH�%�������"��7�O<�X�"�e�
,���. P� ��&>4HF���&��@l��f�f%�Jbp.��{�5�*����0��І�w(�2P�9��uc`��R���(�\*D�	3>��GH9��ۦ��Դb
X��!\Қ"^���lQ�*�m
��ӊN=�d1��2R ��Y�J����Uy,�֢͂�V��]]���ǩeK��v�[�j��0����D&�,�nd~��&
F	}+���b�t=8ą��k��K�%��4xˇ�0���B��dr<X��L)�b,ΙS#�	Ii">�7��0� �\�X�z�u@�>h	�S ���_�&)�u�%�#`	
$=�
	��}�t�Z��2z�R&8[	�c���X�c�V��LNs^�,���$�$��x�W}��RZG�ۂK[|4����JA=�|�EI
hu�#r�pB^��gt�N�)4.�[a|�ʄUd������������Ϥ���++����_N�?
�N�M�L�˙�����7�SZ�P�,.�`	�
#�zJ�)<�%��B�`�+��m� �tP�8����(\y8  �HLG�D��/�|o��rn�{m �}:���
�y���r��`T���D'Ʉ��vW��|��Ig`�@+�h�@���@h`�m�7sg�X�a�wq�]P\q_�V����GqAQ�H��+.�`[[�B�%m$�HR�
�NJ~J�t:"BQA�((����/���{����{�=7�:y�sN���I����ۖ��4M`z��~�l���य़��"xx	Z
��[^�$�Q%"������p��Z��[ ��v�$
�B�������?��o1�X���S�6�o��>�q�i��/efJ�\ic���=,0�ZH_N���ry��M4蘯���(8�}�}E�أ?�YZ_zuxxlv���,-�U����xq�$`��#��0`�:(�`�
�!h	7#���uP�T����*pG�B�|����}��X�O�@���t΀Q�K�XW��b@D����H� J
S<�`{%����	h	���}`88A|,�e�/0�/S�af�	]lj��ۖ609��c�j�R���w�Wj���x��s�
�~c�#Ã_|�����ZmPP���S)$��S���[>�D�ov���5���!4<4���$�{����{;�6ѠV��j���(xt�
yi�+�#��1�&�^~����CHH�/��(8�:΄��5�˃/-���$8�����ʼn0��?�#�,��� c�;%���0�(b��=t������(���t�6x�&bw33d�J�at��a3MP<���$��&�(����&�M�`(
NPȢB�@��,� ,"�x�4Hͳ��%�|�\��2�w�R����e� <밯ox�ȸt

�}X"��
�`�*���Zolܲ{�����K3�L	��r���t
�� �!��WQ_lo�ta�*����N�m�}=� ]9���K�9fF�cR���	C�@P`�ƉF����@�Xí��DDI�=���8���2'"r1BR��eEE�����ƀQ…a�@D3��.Ph� ?>Թ�cb�I�: �(�2�O�C�~
�����j	DMȗ-��ޚ6 01�u��� � 	�=F�h�����]TpAʐ\]�Bn�T���;�b㋍��E����am��;'�'����R6�����ñ��d��,,�Ҡ8Y�ߨ̮>�����N�A�3qi�{QPĉȸS��\XIȼ*?�7J�HH�jQ�`-�LG��б
�1�GAt[�N�	��}:��ԡ����R���Z���$<����9g@xk@�(O}@�1�
b������k�n�b��c�QD�s�π�H-�H>���+	��1��5�s�L FH�"��b���^oh
�Z��z�$��8a��@t��������Ti����%�P��3��@	��������K�L��	��b?CN64#�S&���������!
��Ã�H`s®�|YI�}Aj
�(	,Fd�	���$W���%P�@��"�14ǁ|R�e�0y��B��0�f@c��@Q��"�k	�� ��0b
N�7x�a$%�Yߖ��D1O04��t!D�/$�؂ӕ
)<:N� 8æ8�(0��f�Wޞr����o�9S�JbL1�_���`IT%PpBڠ��KAiZ"
�60�~(z%[,d�(L.�Bhu����J�28@�5��h� �+�?��ӡ�=�NSl}��%��%8��R��rn��U:H��K�"CՂs�bHp,��@�I@�� �d�'�ؠ�%$�qȘjBl2A���A�VV�100Jp�Â��� �A$	��5H1�A����ֱ��6����]��@'�� ��^�Z���t5]C
)�嚛��G\���^���~���#r�a�V��W���փ;U_DY_Z	�ϡ�o����Q�1!�rB)=�Òذ��&K��Ji�Ζ%�K����Mk`�%kڠ`F=���!��r;�� �Q��A�P@��D	�D�r�$�/�f8��؁ ><`���6 ���&$�18<�~��9gGʊPP�K)��

j�5�ȴ����6�&@���䲢(�іCH=���:0��`@X)� �7
�|д��{�PիB�T�;�'����@/:�z
�z�j['�c�Ѻ8��X�ݻo0��N��3�X<5�I�)�[�eN�A��Wѩ��L��T��>�A;�]��D�i�׆Љ����F��5a��(h���p\K��P'a���$��1`!	����"02Q&�^�.�è1 |)�G	����xQКt�I�7�Ҡ��E&�Jf��V:(B����H2_�}�
d��E���������� Bo4
��+�]6߫�?�_���C0�9@��9��`�>#3��*��]G��
>�᠃����d.;)����2;ywN�Z܏CHVJ���l'�pn�g((
T��z6n7sg�@�����j	d	B]�9Qp�If	 G�ü/0�J$�������H9�$�{��+�=4������$'1C%�Nߒ60I��}	!WJH��4��1S���) 	�
d
I�	�y���M�y &���a�A��N`�����F�}<�<<�X�{kU�����~��΀}�/����*:k�!�`pK���E),��
��<X�޿����2>`az�(z6�p���Şn�F<bw3�����tm���O�!"	� �՛L�I�	_��<	,@�-��"��wE�3�n�~�>e[�o���T�ϣ3��VҀ)���`�A9�w$B�x�S��0AP�s$`pP����a�"49`$؋�g��~����(���|R�j[��ȋ��)�P��� �3�j7�H���(@r��|5�-��H���63PZȧ39�����ta�Jn���b	�/�pf�(�F����}ڠ������@���
 O�H�@�r�r���A<�}�������Ey݌��ƀ,���|�@Q@��D:��zx��@����J�L@���ݞDf�( 
n�* 
N��GP@M�y�L���)
�A[��
�8g��8�$R�G�}$��RA��lR 
o��C��0��*P�:�g�-�`�v4����*Z>ʭ�
��B@%�@�X)g38���f�w�%�t(
,_U[����Z:���><81��&����FU�)���(8$BCA���Xt�7D(���"�=	�3�&Ќ��4�h�Q��.N��uD����K"2k��‘�T�V�>4�Z��,��,"n�Lo	l��V���@8�q�,0h}�ۯ��o�[��oTP(�Z[k`Z0iHx��W��`���e�A^f�)���c ���R�bc��[�p{~�b,P�	�'��󳯾��Š\|���`y4(��3
8�4�V��r�C}4HT��
�v���A@O��pp58`�����:
"
 ��Эg�+�F��\<9)DT�f�ãeE�7j��G	gG󇐇ێ�A�	1Y�4�@�):^v%\��"bVHPƀ|�`{D%�A�.����j��yjd1G`$�4�F���v�:��*�0xcR��DL���j	�AX��`O��g����JB�V	�{v�޽g���� ������NO���룅�\nen��d��N.g��1�N
&������H$��
v*�0dl@)
�	,:0F�#Y�@��( _���d�������b�1P[`�����X�18\}��@ipt|��U1�I�x�ΠI�V&
�+i�n���A��7)L�:�@!B��|. A�?O�2	0e���V�:������V��b�<<*��xo�x�#o�H��@}����a)C�K�`
�W	�}�,P��_TY��؍����vW�)�.��صT_/M�y���L6�RLPS"�Ѩ���K��d&�z��hv�nZ�	0�6�[$yO�Cf��%�Z���`p��"r��@�o&���C�����P���x6;7+�nŭ��H�@e�3d�E���3��Bd� ����/�	�{�%?�W��}y�/v'�S��I���hbC�G��y�T����i��b
��0O��S�x��&��7�o7q�t����3�=U܌�0� &�{b@��Ziv鋵���i�4R��z!�1hP@@1A�����w���e9��C��>Z.����6�$��F�oO�;-4`�!�B��!��D�j+	�Z�C6�2�Dh� z����P}�@7(���f���h�&0��4`��SN��0��8py�8�7@��,����ޱ]C�G�ȮF�'y���8 	h�%p(��[t �`u2�N� �e ���Zoh
8�C/�	�m݃Ձ�	V_�6�@�q�#j氶{	�A��&��[�.�e�E��Z̬૯��L.S�2��yl~.��嗟l#���g�Z�Ї�ALt�b ����҅G3<L����( 	dHl�!%� �z��'��C� �$0c����(	���p�+&���.%��`� ��8���Ĵ�u
��A1;51�ꮡ�:;;����G/O��e�$��1�`gy�iV(��)�J)~@h��@u�J_꺍��@��c����7ߨķr@�$^2 �mo�]Þf������Ri(,I+b�}*�h��礮N����+�Ra�����G���p�Ay�@.�4����+�@A��fA �Y��"��@n;��A]�088IH`4�%0O@�H�&]����J4(aW�
��u�W�;!�d7)Cc�?4g_�?��#���zߐ�[�5�C�Ò�
 &�M��2n�yy7� e%��j	0QD܁�'�$
|x�$A��@�}��@�R�*��>��@�,m��7R���'�o֫���w�6LHTqv�lUP��b~4�46�"������u�@r?V���G��h�����,/�(���s��V[ȍtvEB�?vN]��+i�$04Yp��XDA�) 
�XD��Eq;iH�?	b���v�/%Al�}x��Ar;2�=�B�]2���>D/��h��ӽ�L����_ya��Be������B�M�$��El��9����1e�؇�^g39m `��+ 4"YC�v,TI��qRE�p����y�/?Z΍���K�ng�����z����0�7����w�zt`e�Z����M���;�sA�H� tNm�/n�	n=����'���P@��@@8S��B �f�-�؂�����G�`�1�g�yc��
VW�:�
��4Y
��j5�,'GE�Y`|�,Ơ(� ��v;cDƂb���QO`d2�C)	L�@(a��@I  �/�>J?Á�.m`�@h���7�4��ϑ��A�CAh	(�
��_��i�g���3��2��-M�@X����`q�����'t������E�'������� q�$(����ɮ�ڮ�ț�xZ�g	0XD��`[`��+$	U���X�O=���a`��&B�10)є�9���
h
�5h%\�L&4�����f4�@���d��I�6^>>�JX�ay�L�8Y e��F��>\h$бi�6���A�Ru�(�8H�H��0<�(��� |��z�!Ժ�Р���r���
5�����r��7�	�A��ә�l��K���ʼn��H�x���͜XD��H&	l�E$��� ��M$Ap��	h
*��
b�/���tX��%l[��3�L�6��3�H�-�5@�A�#���!&�
0�$�}����c���oک%��%𞀡$�OJÃ��`m��T���``$`G R@ޖ6�<�?�QV0,�D�"1i�U��b
z�ō�8�dk����~9P,b�Gi����}x��Q����^��f3+���\���‚�I��܋�Xt��a���/	n8�H�	�h�I����Xx@���v���p�AWJp��΀g�8�f|
�ߜ�(��V�
�{���<‚�c�޶3أ�/��t4%��d�fH&�%���X�¤�	��p mɖ$�@��b#
�^k/j��@%�a�O��ܨ����@��H���?�ee���3�0"(I��0���Mzz��M+2���9h�r��;�g9�6u�^<-�&4����"��0d�`��$p �H�O@�0��Ax��<,+�t�Xcpd����6&�����L�w��h��
��H��#��k�
�{���@�==v�m;�B#6O I��@�1�$�	
��:Ⱦ��nbQh���K�Ѧ��&	0���m�/��Gc��q�68 �E5������~����2��ҧM��H�%Կ;;���8��`ew�XGh�NnC����d=�t	�U`��C;������Ip�A�?���0$���"�%wE�*5k7����1J0�0
�3a
�ppEHf
���0p%�V
���F���{�~睷ݴ�CV�̎$�	h	L���u[�$��^��A	�
o6�?���^�7�6�+������_~�u��o�/>L�
zz��m�+
�}��K&�f�#!�Z�~S�姧���i���_4���H��@��JV�K8�Q(�I%��J�c�R$GD=�	�����d�FE��D҇ܗ`�+�����D2�����dP�ٱ��~�\�A⡈7"�b��0��ƃK���@$:@Cd����bρ�u3���7)�:(��@�]Ѧ ��ǿ��������d��Ba7�`w��5ho�~�o6=�/���),xmE��-X���]���pIc
8�Ŵ�?�0 �
‚`
�C���ҁ��%0p��x��"���[��/h�`�Œ��	Ӈ��9�m�s���+Y��f�
�A�o�x��q��� �2 ):�@s-�X�AGP�bp�bY�Ƴ1� iz�7q���z���`�i
�˿������Qr�I �	�[�ùr�.$�����Z$X]}~t.�:�djV��6,O��ŗv�v�"�9y =�\9 �AxN	S�:3�'�8S@$z��#�9���儂����H�p�9%�	4�Qg�<πq
<�h�yd�n�B�!h$Bx��N�
/n:p$p� �(�t �Y����0O�K�*��6����#�h�Z�Oɏ*ݮ�H=��ߏ���+o����}��'�����
� ^��
^.��*�Ш�.�W���N0ȣ�(,�M�tБ�		l���$��ɂ�z�����A�'848��	C<4���Y�ƒ�m�0�0c���	�l�$Ƞ|9�`�	!gp�&	��p�F�AbI����m퀼�v���$�
.�$@| 4�$P�!�b�a�~<���{ݵ��F
�|����v�Рk_�"O����q�S{�`E�
��(�-yW~$�Rk3��K��S�f� ��4���,"zu8_�c{�-ED���N�ټX?�q������63F�1f���"R�����y�dj<d
+,�/$�����P�Bɂ"��J����~�}�u��9(3|��w�y�$/��{��O�
$C�o��<P0�	P�L_(8�W;+�ʾ X�O�8`���2M�x�������4m�M��_lY��\�{=�=�6`�S
�҃
�zF$pS�(��	|���v 8��&i�o���a�l`�s
�>�a��yp�������h����o�"<��f���wݳc#�v	��X�N3?��w�N��ݽ/t�wo����/ٝ%Ͼ����+�mm�4�&"�@$�#0�&�ڲ'P�
���>$� kdk\�J8�,!n5�d0��\K��`+F
.�h
��Ҵ�
߾�`2�a`@1e|n�@J�/6��L�P��`H���Y�
�
 X�����zҰ�/�#��~��yW�	�m�<���ͺ�;���αɲ���|u���_�ڣ��T�Pi“���K����c�r�hR�Lo
��M�{���U���(�, �i�x0P1��s����=A܁��A�J���$�L@�,��A1j
�����Qh���b,9h&����&a"c�A0Z�@��S�a$�\�8�@���u��� �8H�mZ&���د%�
Ҍ�]�=�ce�����z�޶�%�<A3L�>���+�-h_Y��ړ/���w�K�b)�=��`Lsg���8��A�Z�Kp�D��-�$H�-{%)��`�
c!˯G�"�C:�X�	�$
�P��PPi(($�,�
�A�FD�
J���_�A�uP�	6z�	F�������Q0��UE��: ؅#O	���;8>ft��������k��]k�؀�'�M88�}߭����gOw ��`���w�y�1N�g�8���3	����Er���sx�&	�Nʚ0.f	'8E�+� �8�9K҄N�3 M��P66(�A�C�7�"r�������4�`�� h�S�%A�%{p@�p
hK
���0	�����g�~�4�Q��i��?�����Ͽ��]h&
�mzQ7�y{�S��$8
��ǟ�y�&b���°�op�� 0���_{RT��	��uHЪ�$���m1��_h�Wu�f0�����Dkq^� pp��|``Z
��yBL!J手ADp�4�\�x�G2iԠq/bY,м�SP6�#eO�
����V'C���8��.��"Ib�*���m�ҡ!��HO�-�@0�yN�����Q����X�U��@r��_}����ID@P�(����M7xq�'����@��q���bX� Ԯ��-T/��PM��P��%ʇ~��9‚l�x���T6�^���K�H�/c��B��y�,B�$�G)BX�q	��18΋O�M ��\6`�6�KC���:���'6��.��@�K_���h�ݫ��$�b�9�6���H�2��sF=.n5�\�����kh�L��@�Ӂ?|Pf��ò�`��[L88�V�F0�@:
�;�����{UH�E\[�[�Lx�)@�.^9��V�I��]��i�OU��v������SI`&�G�a���v��*<�W�l߽�]�%b�x�� 
�+n	@A��Y�3E.�h/Qp$��KH������:n��tG��`�A@Ҟ�*��$k��%j���i�8�
�\CL-�֋ڙ?�I�S�!`P0�$�8	�%�d.�����)�`@�p[A����۽kFP6��=�
�E
�/p�K��uРA^Cچ99�S���#�W�ZmA��'��@�>�A���4�B:X���jH����&�AA�X�%Y�U�Z�f=
�ް�3��7Ђ3��@�CP`��$�
P3�P&��༅�ѢM���a�-EEU P=�D!�=��_u�����G~	ZJ���I��5�n�2(�g�R���%	�"tr���~�@kT'�_�'4�Y	L�W,F/�q�+��������Aij-���7�$�����2�.'���qI[�++k	�-��(�� �`U��͔�U=P(Q��@�voF�G�gOG���ڣ���=��ÃE�:XP�(���j�V0��I��?��{��_+��R��IՒ��0�O O��(pM��	�7(;��3KIuo�
@ЦG�'�b�(_X���6���`�H�K�Ĵl$��Z��D�iU��I���C�7`�[m(I�e�۲0��̊��ۺ��\�h�ip,b&O���
g����@&�	��΁t��:X4�	��w��C�j�A܋,0��p�UZF�����o��A8�櫙�*w� Z|��+@F��r���\$��#�/��@��"��8������� �AƁG���(�9�	?�U�����E|z���fԴ�(�		���9@�:�	! в�s��E�
�.HQ'�8���ߒB�1���%�1��(�	�A���/\\��!�Qh_�ȴ���A���9�<�3h�(�&�x��:�6�
�@!K�`yyK�P &�֌��8`�~�"������Q6��$��R�/~t����%���}x�G
�C�� �@O�`X��#�Կ��r$�HP?w@��'����\1ThΎ�\��b�΢���J!��E�/��
�GZ�K�lM;��4�_~Ѐ����:jCL�
LX�L��Z���g��"���0���(dP6�|* �6����!`��1ö&O@E�����&�P+@�ƌ�B(p�Q�Ўd�nXYGD��<��O�'Q`���	z��
�i��4����zT�a�	�	D��	�$O A�E�jY�DŽ/X�� p��e1��P�?�/w2	�5y�/���
'0���!�D\O��B�$��������1\g�T.����$U��&��a���o�<&�AL ��
���uk������R���I�K�(��A�
�"9P�q�(J(��Z���8X[Z�Zr�G� V� doP�@+�
j�i�H�@�G�-��<��t�}�<�e[�AH&(`�x�����a	�]%�X�X1g��E�?¬@��yw�P��j�z�"bi
�!�)"z�
���tti@t!(��u�-h�b!�e	���'Xس�\��
�(��S����e�i���>�#X���:|W�t����:��A�bc8@�`�Lr��n,����h&���D�nB�O�x�C���Q@��
*����]'�L!�?��Q���
Aӈ��,�H�.�h
Lk�k�!���N�е���-�D���)�0�$��hѤJ�OP$c2��!H0�:��E4��]�b`*�����	� ڋN�@�E�W�d}�.^I�f�	r�@O�ab�?�l˳��#`	�$X�I��w�H�b�kiXkb2U��\��e��Ͳa<�l6�=�L�`X;7��/��0�@�#Ђ�.ق���I�E��'�`8�@<�g�g���

N5�\<�"S���"O Q����U?�����B���>�r���	C�X� ۞�2/��	{M��퀀i�BOU��<�����D���?:�,�`�)@[�S�ӝ?2���	�$@��0L���D0����t�O M!���\@�vB�-*u�H0(P��UM�wܰ��H�@�
y�H1���
p��$(�)�)�h�@H3᝜��t���Ъ�^Kl��[ډ�^�HE��<��=�b8
	��FZ$
4I��
G L3ah��EG�{��[������z�P$
��T�h��#žw%��n�i����-���¬Td�8r�4v��`��� H0���9���8�&�@��t�i)E�q�@������r�P1<i�G����V�+
��4z#HN<A�E��AAdx�I�
D��`�pz�Щ�'�A�BCԂ㚀A>����~5�b�Ax�~��
��UT	hX'A�@q�% ;����@��8`�}�]�y���i�s�Kn�
��쀍��}��K�.1�.�ESy���H��*�L�'���ӈ3рU��o4N�e���|z1�_�րD��R�'���R���b��	c8@�X�&I�����q%ey��J�,r(�
6�r���A����_d�����f�3�A$0f���0���2#���2A�:S�	�
����e�᭦g΀_6h�� ���4
b���p�7H�Bh�x�@�8-�����d7E��'0A,�gA�Q�#Ao
� �D
�y�V𠎃�+l�HdO�`����uf\]�������f�P
��6Y�8�6R�����S�h�Q s��h((R���G�
r�P�
�9���(�d6�@�a���
A�fr	�z�<�Ke����:���6�@T[��j��R�.dh) Ae� �U��f��G�?ߥT���)҃�)C.1��`A�z!����%���F��Rbf@�h�ҨFx�/6�]�k8����|B���^��k
�`d
�R�Pwl�� �t��1@�<���"A��h���A��C������Tp:h+D=1��e��D��_��dF�
5T�v�h�`xv$��ö'p
J�X0|�������o�����J{ѭA�@�/ U
�G8�j��e��7Xf�H�n�:
�`L4��x(P���0L$XvO@�h��H0��\<����0��;����l,��w����Mƒs�c���c�7��:��!b	
��T ���	F*�	<7�#�@˄/���W��'{��#�EqUڇ�@�#�FtЈH:!!�O��b*�sc31%151b"��3���{W��gwi�G�u�=��>]�o��9g5�8���\�hp3��6�t����`�<�i�d��b
��9�8k@���$��'��`,"B'K���A�F(��9�Y71	�@?�@o>�Մ}��I���%�Nýj<AOLh���&���� ��;�[1�0����x��E���X�%�"``Ս�R:׀4�5
8v��i`$k@D�N
do��)G	ӫ$M���X<BA��(	
Dt@H���fF�hp�@7c̋><�7�����~=���X~�p:�6��+ߎ��ED���L0����Xn&�j�	d�[1��_��w�I�Y`�a��h�T!
�gOP_���
�
t��h �)�]T�����$x�iG���r@ܽ�����|���@�����&V�i�~~��0��ۥ-ٕa���i�P��gA�����=A��*�ǔ�t0�2F`t�T���� �9P%k�d�+U܆�)����%��%m�X.02�wA����@��^x�1PA y�pC<�
��ܣE ؐS2բ{�!	I����(��J����ے��e���(|ô����,��V�t@[12�4
�E�d	�	��tB���#<3���R��2J`$�i�9�ID<�6&�Ҩ/�����萸�('L�bD�)�jh�9�G���p)�Y�{�&0��H�{gnN�^���i$��Q��%
�_��OL���(���;�\�qJ-�"A�A�
��!ƶjl�|!��2��;/��q={�8��4(mɧ��``<Cw s�!=1PhpPb�N�P p��0tl@�΃���Ex�,)� ��.$��A�<��h��������9m��?:m�C��j\A����G>�-H��#�X@�-
��ǔ@�ND9����ܢ?��ٱ��AR�u�"��H�Y��d&<�Ak�X�
0Z� 
�
��A�~99]u�*4�`0����去� V�k�a$tL̃6��xL��-�K|�ξ�хHo�$@,5b��)��98h=A�0��;�]�?�1�l��w%��yǒ�0�I"�HA��*0�z��E�����b��T�PK��.?ԧ�9G�<�I@�aM�� �_B�@�g.�1�#�6����N|v�1��@C�����C9��
� ���h�I�]��A�H@\�S�*c��@]�;aiP���Q`�,[(�@�5xl*0XO
EK�ǀ�v�h)��$H x8F�B��Hr�$G`K`�� G�e��PH o���[k��40m���O.ܞ�0�QJ/o��Lɕ�����]wb-����;�x�݈����D9�j*
{_�������}I�d(<�"Ҡ�
����'`TT�� � MY@����E(H��ƌ �@<0���>T��|��R_dڀ��ܖ����n*�ED��0�B�a�(8ϖ�$�L��&�-A�4�
��{/A/'Q0:�l�`Ж,k�����.mp��H��C��� �),4x�<�����H�
,S��#���H�V� f�1���[��bhU�A˃rA��닑6�~Q[�8c�bb_D�'��
q����A�&hk��(yup�Q�CA0
,��ߤ�Ӏ2
��@�(���LILh	�b�O<��
O9P1PI@%P

�tGԝx��� 	z�'p5
����{̃r��w3��d~�OKnێ
�z��Ē+&�+��`����p6�����G A."���˟���
�:���
�j}q	Z�y �ۡ������
���h�)6�#��8&��x�Ip:���Nl����(���BI"jt�`g_s��ےYKP����-m�J. Fp��|4
�	C��@��W�28R�>��Ki%U8L(%��F��z0Ӏڎ0}(�}!���0ЃA�3 `
�է����;�gp���9M@�`M���hxK�{��G���0
r[��i�;��"à�?��:֥Z<��w$�4	Þ�rk����ӽGL&��G���Gx�L� �	�X ��c�;�p` ��p�?�(2j°�;s1�!6���!�N��u�9��n>�	L(wu�]_�b[�;
<�'XJxL���Q�&����d.�tЂ�$����s��sr�_������I:�h�QM�PmEz�6�"
ay&h$ 
b�l9�7'|j�$( ���ԁ�*N�%(>H�%�L���,"�v9��$:L�2�0r�
:}��A�DL �#�%�G���%z��LГ��m�a�џ�3���n To`����A�6C����͂���O"p��
��	�G��86��)��n@��~7�vB�O�A�A�6x<�b|�^����N�L�`�� L�^�~G�TI�w�\s�:؂�b�p���̀�p�bA*)����1j�RѢ�@HOq�ب�"�>8�H�`��m�e0a�����(0�0����{ g�L���"c�Ac
�0m�_�$7��
��Ȗ@G����ʁ�T&� �9�������?�\��bԿM���w"����r��\���l
(�@ID��4�&!+h���p���%��Z��)��S
�.ʡ�mzn��
�$�i�h����7��>5�¶��V<�3����i������ 8P�%IPH`����'X9<��Á^B�֦Q�Y�R`���ZW`�o�+�!y��2�I԰Z
p��B[�T'KP� ܼ�`���|�Ta ��j.����8�Jڀc�D<3
�	^���J�f��8L�t����I��Z��J��r��ᰢ���Ѓ���� ���

�78!����҈�/������{_jp0L}�l��n���m��àX�Ĭ�@`!zCopf���
~��;
	0��B��_xަ	�MVI4����wG�^�|�<�nM��}mn7��6�{��'
����rx��.ip�
T`��O$H?ӕބ�!&�j��$�֐>�J��e9�(�@	=
�z]3�@`�`��kڠ��a,	�Q��]l`@{,A�`��I`{�^�\O�OK���*M��/��0�1
+�րy�4 �dh1�@��(W�$Xt�ʁD�y��@��(��>H:V~\P���2V�;��r��n�f�Rq�1���^��|�.��z	:l8*	��>ahp�o0/�UZr��Y��d�4hNKNi��𨓨ߝ," ��TŁ��O/r��%����oN8aH�\3h	`
l��'��e##��$�?�hv1�5R8�?���.m�K���#���2zTO���0��6j'X@��?�yre�O�i�-��=���o��ӳ50
����BL`fT ��s_�{�
b,�k�8@8I��"����J�f�?�"�mG�s�swb�U!E
�@4�T���(m�+Od�V�_h�H{7"��$X��P���ՁW�t9{וL��૙o�A(��`�/�D	'��K�T`��S����-�I�I����L�ҍ��Hp��%XP��@�"��{��� |&����7��5�� ���~��0�ҥ
�|��L��?�#�8�{��n:X�D�X
�Բ:�up�"��6�R�̀jK8��xNNr�`$���cR���|�
�/bH��(��ږ EvRDD�~�)��V�F�`ݹ,�7!u�m�V�~�(��x�]<�
o�N�p� @�El	Ʒ]�ܢU����a��ߤ�E��dIU3�%�����%mP�����Ww#��/�}�ؑ1����&�kН"�Q��fȞ�ȞX���m.VK�A�,}��4�i�@�8x�8p�$x��g[b'�W��}p�w��E+Q:t]�
g���E�����E�ZP�r�`�h�c㠕@Ջ�LȖ��xB�N�Dt��"L��r��'p0�O�V+C�BK�|��#��!�a݂��o�npX���S�d4i��p��- 
�<�����I��{ڒ1)�_,<P=�� �4�g:e<�@�
Z(��t;�'`Dc�֑<S�'�f���z�`w/��Z
j
BASRhip���|v��o��p ��>��@9�t\90�ࠊ����+և��J@�v3s*]n��#J%�@[~@�>�``w0������'6�}�eq�YA�x��S� 0�ҁ(�+��aU��I$BZ�M
��G@�yp�<�	i�@�M�`n�ؙ��ؠ�[�%Y��A�N�����Cx�Ϫ+.Zv��7(�G}Ia��:3D֠�D�^����Kz��
�z_�;Y̔%Hс�	,`���J�7z-@M�v�W�O?�Ng�$sp< ���,��_��s��(��WL��[��`^.M�_@r�p3�?��N#bߖ̴��iP�Kv�@`�\BlRN�Á%��Ra|���E���%P���2
f��@EĈ�!9�	T.� ��wp�y
5F�.o�SR�8 �NBg�
�N	Ȁ�m�Vi5n,���S/��Hf�@0XN5�G��	�HDF�C�6
����@@��:rR�A�‹#�"MKg	v/����r�(��I��?�*�s#b%_=
|�����j鴓�I!��4��@!� 8�yz��TE�+1ƽƜ�76X�b�
���oS�I��x�Nv���m�	A[����71u ���V����� �"B�-C�T�#�0�ַϵa�0f1��$�AL��8P�`s����G�N1��	'\N�W��1rlГ�6t疩��^}D�ʈ�pp��m��:��}�QG���ֺ����
��J��uv\e� ��I.��M�)88.�A��
�GZ$���1\]�rW�چ���<��d	8�L���XYߥ�dFmP�^hOP/:��ݨ�\r���:P������"�.k�^��A�̼s��`��4��)=�,�'�!܋��!>s��5�i
�~s<��v�;i��"J���ِ�������a�4�i��.�����΁Q�p�Ih�1	0�#(�`�I�@��5l��8i,G���t���%�x
i�Թv�oP�<2
B��ꇐ����לP����?��`
TKp����$��[�ZS��m�08��hx���0ti�f�R��t�K
҃�@S����w��?X�3��3p���\*	��ҁ���*���.��z�����ހR��q�	����{��S�W>��x~�绱�q<3��AE58P�cKv�PM�s�˶`�U\3��ޠ�4p��Ֆ��x L`�'x�A`9C�����7����<�
ҕ�
�����q��
8ؖ�M���
���qI$��Ϟa`tz�ϼ�t��5�eO�D��lr�"�b]�55"�"��V���R�A1ޱ�������i�(��L�01�)�'�"bC�VB�p

	�.a�^m�[F8L��Q+�>���\S�i5&Ӥ��p`�x����l����-E�M�m.*)M@H"����1櫾9bZ��\FMH
�
�1�1����r�"�����
��>R:6
L�K�	ܗ��r
�jzg��K��n�M�s1*
x������=h"4&���P`��v�;$`�@����
	J���\�Vk�k�(Hހk��l�	 H<�D���I�����&h����88���Z�f;�TWs[�^��4��asI�ch��*�c�K`�����\vK�Y;,0jd�4"q��00�@��Lio��ܖ�Xg\oQh�1<p࿡��U��l
n
���<0���i�r&1��r!��( �H-�5_�e	�����_�:Tg��9qPq0�
>��g����ߍڥ	����?4�
W�
�]9����fy����|$b�)��g�>�2
�\�@m����\���L��7�<�ڿF�����z7J�˧�e"ti〚��5����E~��C��.D�I�n�n%W�Z�/W��&mgsp��A
f�K$Ы��n�s���\8��l�iX3��rs���C��%k��g28,���×)�8k�d�3�;7�K�:|���r���7��'�{����H$X����v�
S�j���B�%$��1�%��(H�O� �͗�_Z�T��;���qpG�$=�S$�F
���!�QK�� $G��y�9�?)��,I7���D�m@��Ё�u,�X�s��:���tMhb�f��%h�	�n�?����,�1�Gw�K��8�<8�Ak
6��J���Kx��טXs(<8��]��4ڢ�����z4�q�ᒤ�^ZE��Z7�nKJ�möfh͎��
��������@�
�3
0�C��D(�+&J8�1 0�((�f��־nn:О����sֻ�������h@��#
�d� �����9����jlSp{�4��0���r���o6�8X�!ڻ�Lꌃ�]x0��`�#5�~� �Q�fj�`�9��k����r�U
��Q�5A8�hS���B�)`4 hM������`6W�%��5�
zB�r�$����.ȑA9���s�uM�

�^�=��j��AK�N8o``&&T�E���h�Y���pa��v۰�jk o��Q`�N|��}���V>�`�
������ێ�u8��hU[g����@�m��
�:�<��P��5�`|Z�}dt�s�/��5��|��YOQ�i�@�K0VD�2a��@�G��T,���b�B�!E�[l��B��VI΀4����N�d!�8���>!�@o	����zrYBڤ��r
^��&�b��v�8��ք	S��=�W�6�t��֊�	ƥU�������m�kZ�
����x���gP�@���P�&��,��K|t�a��@��WDx�u����U���>w�C7�
��Z0vTj�Y.�rZ��ex���7Y%�@�@��H�G�!S�+u��@�1�qw�7��;����|�l	8�u����r�IOك;��! ,�<�D[@n$GP)�<�b�ҁO(����V�C*@�4`BQ��$@w�t�g�1n��V��kJ�PF/�I���f�l�i�ܓJ����Hя�c�

褚�!d�Ƣ�����F!�z�An>Œ7i`�3׵
����z8j�k݈(���W*���p�@��5���)�g޻Y�*,�+�'��&��aµӪ:�9!�%�ٓ��@� �1�J��!&�X�������1�Ʀ@���3��hw�ٴ"
5R�;�2�2,àT�i��7!&p����nE�����R��p�d7�B��
1�aV�n��-�9u���W
��l+�N�P7�U
�0�
Ak��*iD!��	��@1�z!Џt�~�DA�3�52y�S�*D�?*+�h��-To��8�����.��`QC���t�j��C��Ci�孙���0ze�p���QY�C�BP�r�=���������d��Gy"�8B
�G4)�tG�y�����(Lg�Ę��΂�ꑹ��u�#A� Z%m.�6��%�%k�D	:S`MV�>�[*��"�Bg
+�� �ľQt��j��e	���ri�]�:Xy@�e�ހ�p�M!ΪjbG: OgJ�u�K�&H	�+�5���R��75VX� ��3ƩkԳ(hQA����
� #�n�%�>F9�ަG�`
���R����J�4#�Ŭ����K�J���P���a��u�!��W=��Q�3S��hգ�E�c	;	f�g9�� p܋e@A_�H�B��-�մA
���'��͊�-;�J�yT%ة���9���H���2��m
�\�H��4��	_�Y�T\��Y�?��qy�ҼV+�_���&@�� �
��@_�D�
F��磑_H?�E,l�.�ܫ7��'���Y?Z���*��<\�
�ۖ:k��N�:��@�v����S
L�j�ԃ�Ʈ������7��H� �����@�Ŵp� �?��~Yu�1Ø]�ٳJ�q^R6fV9h��I-`H�������64ʁ_:�hv:/��Y'��v٨��_��X��Wha	�*ܱ��������z3�⊟[A��a�)��Cna�\�Y2����Q�J
{�*��ܒlx4�ߵc΋㝥T5� �D�-��[[�Th	��e�*�(8��M��ʶ2^؅΅פW�#:���!<`q��N���j�v>!�
�@�9`�	D���	�
�H�3�hɂ�A�8���/�Md�01Ļ�:��շ,�'��.`�V]�wa��d3.�4H�>p
��M�y�A�q�/�.�a9wT��p�!����!m@���H������P	pb�JE�L
&i.-x���(���c�Q76K�� ��}��&���A�@��֎�}Z�p�y�
��@Q���\R0����V���tM��q	!�u����D3x���w�T�Љ*�mr�&��8VRz~]�w�y�`>-}�#��y0��3?���t���w8@m���G���S�X�:\��pF��hys�O~��jr/�q�L'pv�|A���-52pb�xN�:{�����Є7e���`������q��0y����9��.[6_�ى�!�]�ч�}�݆P:���b�In1���CϻN�ղ�F~��\ y��
d���ϡ��q}A~i�<��MjNRn�`��n�B�X|���f��>jYD���e�0����I
�˯W�c1y�A��j?}A)}��7�V-�|))������0��4� ������t���em!p����싨�^�R%�Y�ɷP���g�ޤJN�y��h�
@�>=��	�m�D
�ݸ)x�=�����O������3�q0\ch�dAm�q�1x����Q}w�C=�:o�L��G�~���'�:/Л�F��E�����0+
v�p�?aV��܉8��bc3�_�cb��k�A��!���*���co:]��x�s��Te��&������Ձ�?��`>~o�c�z�`�!�^b���Ho8rxY�(�3��'y�0o�f�eбI���
��i7Dx[���R�Mb�=�Mܠ��^g.0�|?�eJ�c�BK������/(�At�+<��4&ȳ��D�!��M��r0
A��"��!S����:o`��/{w�� �Q�����
�0��v�z�.��қ�Mc:Ʒ�H�m#�*p�?��L��?2٭�Bw/�z�m�|74��^<��|ք��4���}W���V|�g�[d��/��oV誹q2�!`����ٚ@k��SV��@��c#�Iz~�V�1�{����
�ء�ؖ��v�ǐw����v��<�]j)^�r7�-�`���B���Tm@p��!@�1{��l�	��x�� ���f~�EƟ
��4׏���P9gF��2�}
��K�;
e�1/(��a<�ѳ;Fu�.�	�,�k����HgUX���(,��HKI�]����ؗ0���m�.ՒDҋ\'I�$I�$I�$I�$I�$I�$I�$I�_{pH �kO�E'5�	{>IEND�B`�assets/images/ajax-loader.gif000064400000010122151327220410012162 0ustar00GIF89a  �������������������~~~������������������⸸������쮮����>>>VVV```|||������JJJlll���������,,,^^^LLL���!�Created with ajaxload.info!�
!�NETSCAPE2.0,  �@�pH$8Gq�$N�A�3(
�L	��V�K|P(���:(r�Bь�_@X!/�BxBnb}Eg�orEg�^	oWD	cJCgoqmo���	�E�{p~
��r��D�}ŠM�d������K���r����񋇅o�
��|�����̩ò�]�q�āӤ` 9C�f)�$'�=�Ê}�C�^u�-�H.!��ܻ�ݧ��
	�O�K"1����5.&{j�T� �BBo�e���6��<�@�B?��1
�)�G�bK�� !�
,  �@�pH$&4Bq�$D�b(����V���[4_��:t:"r�qh@��a��)ȉgBk_oEg~�#rJDgxloWF	C	~mg		oD

B�wK!��
�C��ɶwE� �ʢd�X��������r������
��s'��xM
&T$$��|M��C�ڟ� A���Bl�d��ڵ�Kd�V��?oFl-X� �L[�J*�Ξ6�!�"��	5\@���p�oIm
��N!Q�Xm�@ק%2u:uH2�\�R�#�a!�
,  �@�pH$
�Bq�$&D���(�L��V�
[$���:4P(
r�s��_���IȉgBxBoE gw^	r�FgW�oWDcB

��g	oD%#��
v JEin�E�
~"�#�L	��d$��L
�X"yrv�E�����ͻ�d�����)xWO�<2���I�&��1a���"��UJ�(q�z�	�+��kQ�\" ����*�tRj��O�}C���7":�s�dE& �R*�"#��-����=�L���֯Q�2s:d+q�V����� !�
,  �@�pH$.Aq�4�B��d&"t ��jQ�P(��.�q8���Hy�"�3\HV$�QBm{Oeu
pzBeRumTDC�
�W
�mDCe
�t�B]�c�~�	
�aV�jU�U�f{
����L���{[H��øU����{���������i�98�\q���*��3��n�%��L\�@��0������2�T��*	9��}�t��I�*D9�x�6�ϴ�F]l"���!M�!0ըT,D�*�FT׮pq!�
,  �@�pH,*��rILGA��\&�g�L�E�B*���.F�C�Уv���~,$�wSGIrjmgBGTrjTD��G�WH��j\CG
v�B	d�a�
zw%��V��`�
�E|m%�mv�L�ي�`	�����L��䩻w�����ہ��K�U�b�Ȁ�-�FA�;!:t�p�_3G�8� �C�E69<�A��N�踁�;"�,H�@�#"8H�Y��M498���EB[ɒo�.96d�0NRU�A�tU�DX�8�l*��M��!�
,  �@�pH,*��rILGAQ�T&�g�XP$�ӭ���p1r�͙�Z����9��|�jfBGi~WeF
C�
��}R�iCyq�N��N	�aGus �L�
�`���K]�K	 �L�`�E�΃�U��]���K��
���`���
���z��չ���W�D�Jl��X�@A�d�pESB`A
X�	��!1P�!"��MZ� �:� A��&�:�ED�!HP��ϖ5:�p��H?��@������A�4���(Y��СD�V����.!�
,  �@�pH,*��rILGAQ�T&�g�XP$�ӭ���p1r�͙�Z����9��|�jfBGi~WeE	y�
��}R�inlHCq�N��N]�aGuz���C�
�`��L��j���z���ƒ�`���d���L������K������U����ϿW�D�c��j
���s�0R%��+q���"�lQbw�
Р�F�.С�
0�s3�SIH�D����svV�<	�+��4
�9�
���BT��~A�2�$O!(\���*ח8�!�
,  �@�pH,*��rILGAQ�T&�g�XP$�ӭ���p1r�͙�Z����9��|�jfBGi~WeE	y�
��}R�inlHCq�N��N]�aGuz���C�
�`��L��j���z���ƒ���Īɹsd�Ϊ�L���Ŀ���C�ҿW�E�O��j�������B��B!J`*��"�lm��8p���4��!(P0�EM(PC�!ʐ#�48���I�2�=���!4�CC�
q@�ïB�*�6�p
�$�
��!�
,  �@�pH,*��rILGAQ�T&�g�XP$�ӭ���p1r�͙�Z����9��|�jfBGi~WeE	y�
��}R�inlHCq�N��N]�aGuz���C�
�`��L��j���z���ƒ���Īɹsd�Ϊ�L���Ŀ���Cؿ̫`##s��E�s�G��#%B	�)�M���p`
&0 EDba���7pp�@7g���dD#Kv[@�ï!�(@B�$O1�0oV��!OO�>P�����d�8@��,9J��,7�p
+�A�`�!�
	,  �@�pH,*��rILGAQ�T&�g�XP$�ӭ���p1r�͙�Z����9��|�jfBGi~WeE	y�
��}R�inlHCq�N��N]�aGuz���C�
�`��L��j���z�L���g��R���d������z��
����z�ʽD��U	sP�Ls��J�6L���HQV0��'��hZ%��8@@�.�ED�tC
l�V`X�S������?X�	q��!�+����@*-�҄�FxB�����\�F�3�֮��
]!�

,  �@�pH,*��rILGAQ�T&�g�XP$�ӭ���p1r�͙�Z����9��|�jEGi~WeE	y#D�}R�
inlHB!�$CfCN]�E��j�
���$s��L�j�Nsz�E���g�����dG�
����z��
����z��\�U
�j�cb��������� �Ӫ\] 2!d��ZnV��Tg��L0 ��F2�T��ȇ �
`�Ǖ�2Fj�����k
�XT�.5X:)
��5,'R��,�tPuyz�*R0|�!�
,  �@�pH,*��rI4����8e*�TJ,(�"�Ӂ��*�GN����y#���`xDdk\GnEd�i	�C	�Dd�SGm}GI��B$J�^�E��a�
jD	�x��K�n��x��E���x��
����G������nh����a�C�
J��V8pI�h�>���KE�8�D\�2$���C�!"�Хj1��YB� ӂS
��T@D��5d8���52��^I�$����?�*aij�'T5U�*���G�
N:�J�lӱ#�2a�-;assets/images/contrast.png000064400000002302151327220410011650 0ustar00�PNG


IHDR �:TtEXtSoftwareAdobe ImageReadyq�e<�iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.6-c111 79.158325, 2015/09/10-01:10:20        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmpMM:OriginalDocumentID="xmp.did:5f19003a-dcc9-4eab-8abe-c4bf9e6f5090" xmpMM:DocumentID="xmp.did:9A94306A98AC11E889419A42B15F0EEE" xmpMM:InstanceID="xmp.iid:9A94306998AC11E889419A42B15F0EEE" xmp:CreatorTool="Adobe Photoshop CC 2015 (Macintosh)"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:9bf7e211-5fc7-45ca-ba37-45eb3604319a" stRef:documentID="adobe:docid:photoshop:0342a0e4-e06c-117b-be27-9dd96b580a60"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>0W�`PLTE��닋�{{{��ι�ggiYZ\��󮮮������FIM��Ͳ�� ���%)0,17���:>BORT '>AE���05;!'.noo���uuu���pppvvv��YfIDATxڄ��@0P�}ߊ���K�1�*9�c���a�4F�ű��}�1�@���2!Q�C�y��j��Mc�jY_����"T�(�0\���M�C�2}�ƴ$IEND�B`�assets/images/go-pro.svg000064400000014044151327220410011237 0ustar00<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="168" height="135"><style><![CDATA[.B{fill:#fff}.C{stroke-width:1.408}.D{fill-rule:nonzero}.E{stroke:#a4afb7}.F{stroke-linecap:round}.G{stroke-linejoin:round}.H{fill:#a4afb7}.I{stroke-width:1.267}.J{stroke-width:1.672}]]></style><defs><rect id="A" width="14.493" height="14.455" rx="4.459"/><rect id="B" width="14.493" height="14.455" rx="4.459"/><linearGradient x1="50%" y1="0%" x2="0%" y2="93.8736994%" id="C"><stop stop-color="#a4afb7" offset="0%"/><stop stop-color="#c2cbd2" offset="100%"/></linearGradient><path id="D" d="M100.83 108.385l.554 18.824h-1.302c-1.445 0-2.616 1.168-2.616 2.61s1.17 2.61 2.616 2.61h4.1c1.944 0 3.52-1.572 3.52-3.512 0-.597-1.445-9.657-1.136-20.53"/><path id="E" d="M11.135 0v3.063H5.99v4.72H1.46v6.32h2.102v-3.076H8.64V6.774h4.873V0z"/></defs><g transform="translate(1 1)" fill="none" fill-rule="evenodd"><g class="B E"><g class="F"><path d="M29.07 43.93c-2.13 8.208-9.47 17.322-6.54 22.51 1.894 3.354 14.002 5.943 18.816 10.392 2.908 2.688 3.7 3.997 4.436 5.207 2.205 3.675 1.927 5.295 3.683 5.203 2.277-.12 2.536-5.112-2.78-10.096-.375-.35 4.29 4.632 5.364 5.86 1.187 1.36 2.493 2.633 3.774 1.848 2.147-1.316.222-4.06-2.162-5.828-2.105-1.562-4.615-3.263-3.438-2.66 2.51 1.286 4.448-2.302 4.8-3.658s.367-3.746-1.155-4.458c-.843-.395-1.623-.1-2.142.904-.667 1.278-.887 3.906-2.97 4.495-1.444.408-3.083-.45-1.404-2.965 1.023-1.532 2.973-.68 4.172-2.31s.537-3.42-1.282-3.325c-6.042.317-6.897 5.094-7.282 4.893-3.638-1.902-10.493-5.202-11.647-6.228-5.507-4.898 8.703-14.112 7.188-17.05" transform="matrix(-.052336 -.99863 -.99863 .052336 106.856172 101.402721)" class="C D G"/><path d="M2.815 2.106l2.815 3.5M10.205 0v4.212M0 9.828l3.52.702" class="I"/></g><path d="M118.854 24.995l-52.57-.822c-3.566-.056-6.982 1.433-9.37 4.084l-2.9 3.233c-.733.814-1.38 1.7-1.935 2.644-1.99 3.396-3.007 5.94-3.062 7.57-.71 21.084-.866 36.392-.47 45.917.18 4.318.768 8.153 1.763 11.503A16.19 16.19 0 0 0 65.818 110.7h60.53a16.19 16.19 0 0 0 16.187-16.187V44.46a16.19 16.19 0 0 0-11.175-15.392l-12.506-4.072z" class="C D"/></g><rect x="47.42" y="23.376" width="82.448" height="82.388" rx="21.959" class="B D"/><g class="C E B D"><rect x="48.124" y="24.08" width="81.041" height="80.981" rx="16.891"/><g class="F G"><use xlink:href="#D"/><use xlink:href="#D" x="-23.648"/></g></g><rect fill-opacity=".7" fill="#e6e9ec" x="52.423" y="28.079" width="72.491" height="72.304" rx="11.599" class="D"/><g class="C E"><g class="B"><path d="M49.353 127.26c2.722-.001 4.878 2.238 4.878 4.72H32.656c0-4.652 3.36-8.067 8.026-8.067 3.135 0 4.762 1.088 6.677 3.646.04.054-1.592 1.252-1.55 1.307-.2.427 1.38-1.606 3.544-1.606zm98.187 4.6h-7.42l-1.278-2.232-6.07-10.145-.084-.155c-.903-1.76-.658-3.916 1.106-4.817a3.26 3.26 0 0 1 4.391 1.431 4.68 4.68 0 0 1 .174.416l2.1 6.465c-.092-.565-.57-4.1-1.44-10.63a4.41 4.41 0 0 1 4.02-4.766 4.39 4.39 0 0 1 .563-.012l.253.01a4.5 4.5 0 0 1 4.313 4.676 4.48 4.48 0 0 1-.018.252l-1.93 14.62c.024.804.704-1.647 2.04-7.353.52-1.384 2.066-2.085 3.453-1.566.125.047.246.102.362.167 1.504.834 1.602 2.244.77 3.747l-5.293 9.9z"/><path d="M135.833 126.363c3.1 0 5.63 2.514 5.63 5.616h-11.26c0-3.102 2.52-5.616 5.63-5.616z"/></g><g class="F"><path d="M27.6 132.253h123.87m3.94 0h5.63m-142.45 0h5.63m140.198 0h1.7m-152.022 0h1.7"/><path d="M134.353 71.04c5.52 3.216 16.792 8.128 14.183 9.827-6.753 4.398-9.23 2.818-9.23 8.114 0 9.62 6.307 10.877 9.23 8.343s.318-9.902-3.357-8.343 10.22-5.397 10.22-9.37-17-16.924-21.046-17.748" class="B D G"/></g></g><path d="M63.052 34.256c-2.28 1.386-3.893 3.148-4.845 5.286" stroke="#fff" stroke-width="3.378" class="F"/><ellipse cx="56.575" cy="44.687" rx="1.337" ry="1.334" class="B"/><path d="M74.884 68.092c0 2.015-2.27 3.65-5.067 3.65s-5.067-1.635-5.067-3.65 2.27-3.65 5.067-3.65 5.067 1.635 5.067 3.65m23.648 0c0 2.015 2.27 3.65 5.067 3.65s5.067-1.635 5.067-3.65-2.27-3.65-5.067-3.65-5.067 1.635-5.067 3.65" fill-opacity=".1" fill="#f210c3"/><g class="C D E"><path d="M77.617 79.604c2.003 3.512 4.954 5.268 8.853 5.268s6.85-1.756 8.853-5.268c1.16-2.607 1.16-4.13 0-4.566-1.74-.655-4.426 1.23-8.853 1.23s-7.2-1.854-8.853-1.23c-1.102.415-1.102 1.937 0 4.566z" class="H"/><g class="B"><path d="M80.49 82.987c1.654 1.257 3.647 1.885 5.98 1.885 2.66 0 4.88-.818 6.658-2.454.827-.76-2.2-2.532-6.637-2.532s-7.112 2.256-6.002 3.1z"/><path d="M99.238 46.33c6.147 1.975 9.22 3.752 9.22 5.333M74.533 46.33c-6.147 1.975-9.22 3.752-9.22 5.333" class="F G"/></g></g><g stroke="#170040" class="C"><path d="M101.225 66.828c-3.012 0-5.784-2.48-5.784-6.26s2.35-6.024 5.36-6.024 5.548 2.713 5.548 6.493-2.113 5.79-5.125 5.79z" class="B"/><path d="M6.065 5.684c-1.125.575-1.746 1.338-1.863 2.29-.15 1.23.058 1.998 1.098 2.987" transform="matrix(.121869 -.992546 -.992546 -.121869 108.876214 68.953705)" class="F"/><path d="M72.062 66.828c3.012 0 5.784-2.48 5.784-6.26s-2.35-6.024-5.36-6.024-5.548 2.713-5.548 6.493 2.113 5.79 5.125 5.79z" class="B"/><path d="M69.313 62.24c.707 1.047 1.54 1.57 2.5 1.57 1.24 0 1.976-.3 2.83-1.454" class="F"/></g><g class="E"><path d="M74.845 49.138a7.25 7.25 0 0 1 6.893 5.004H91.92a7.25 7.25 0 0 1 6.893-5.004h10.59a7.25 7.25 0 0 1 7.246 7.246V66.9a7.25 7.25 0 0 1-7.246 7.246h-10.59a7.25 7.25 0 0 1-7.246-7.246v-4.985H82.09V66.9a7.25 7.25 0 0 1-7.246 7.246h-10.59a7.25 7.25 0 0 1-7.246-7.246V56.385a7.25 7.25 0 0 1 7.246-7.246h10.59z" class="B C"/><rect x="94.912" y="53.586" width="15.607" height="15.567" rx="4.459" class="H J"/></g><g transform="translate(95.469 54.142)" class="B"><mask id="F"><use xlink:href="#A"/></mask><use xlink:href="#E" mask="url(#F)"/></g><rect x="60.352" y="53.586" width="15.607" height="15.567" rx="4.459" class="E H J"/><g transform="translate(60.91 54.142)" class="B"><mask id="G"><use xlink:href="#B"/></mask><use xlink:href="#E" mask="url(#G)"/></g><g class="E"><path d="M84.878 54.142h-7.246m8.638 7.784h-6.913" class="C"/><rect fill="url(#C)" x="7.418" y="8.803" width="32.691" height="32.691" rx="3.269" class="I"/></g><path d="M15.93 17.316h3.405v15.9H15.93zm6.812 3.406v-3.405h9.08v3.405zm0 6.243V23.56h9.08v3.405zm0 6.243v-3.405h9.08v3.405z" class="B"/></g></svg>assets/images/blur.png000064400000026515151327220410010773 0ustar00�PNG


IHDR dI���tEXtSoftwareAdobe ImageReadyq�e<�iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.6-c111 79.158325, 2015/09/10-01:10:20        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmpMM:OriginalDocumentID="xmp.did:5f19003a-dcc9-4eab-8abe-c4bf9e6f5090" xmpMM:DocumentID="xmp.did:90E72AB598AD11E889419A42B15F0EEE" xmpMM:InstanceID="xmp.iid:90E72AB498AD11E889419A42B15F0EEE" xmp:CreatorTool="Adobe Photoshop CC 2015 (Macintosh)"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:35d7e995-c9b4-4c98-883f-72e4ca665214" stRef:documentID="adobe:docid:photoshop:0dfa65db-e068-117b-be27-9dd96b580a60"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>GOZ�0PLTE���Z^c��٬�����9=CFKP������orv��������16<05;���Yl�=)!IDATx��]	���S��	��/��j��q��M�؈�F����ۥO؞}�=O��x<����pz�ק����i}U�ן|v\�.�T��w�N��f991�Ǎm<p?�ϊ��4�㲖�o��7O�q ?���k��B��
;�8�>�~\>/~�`~�����G�������{���o��	?�O���6�0���qb�u/�xnֿ��i>�{O�z?.��:�?N���������q�<�j?-��� _۟��K���L����'��F���{���L�~����"@�@ԅ�J�����/�`����d�]:�8o��O��t��	 �~�ӝ��ض�Bw��
:m����y��Л�����3�tU�㾾�q�~��HM�H��ǽΫm��k���
B�� �	g���9���>�b�����F/'�/��`��(�CI/~��t�z�;���Nz�&߿t���6|�@���H���z��ׅ6�|���<�F�q;�t^<��G���󦈮�8�bhk���,�`�����8m��2������/�R��x�kN�B�@z��@AN����0lA���H�G
a
I�~���z���g��/~�������΋r@�"t��q�A!	r��uf��q�y���I	!���O2HwU�d��A�K�q�44�� *�/0�z�YS��a��4�(Y�uv",�s�PL4E�/t�1E0��V���`��އx���y�Ǟ��D�>"��!$mo#��OL��z�5x|�A�S
�&��.@:	��f0�5���^�H�to��/�X1$j[H��xt���@��ϓ�וc��(4��k����W��ED�y!�''�B�(]i���u���8$��;4�)���r�
��2�4�$�X�`G�X/�� ��\3B���LQ��B,$�=$ʚ�ʒ��<a�h�)$�i��1!���,��ዟB�[��9(�!�u�ׁ$#$H>�A�����W4�Gdc����Xgrbm�g�#Ě�o4i} eeQ��A�qU�r�Ŏ�Y!=d��x�'	bE��z
��a1H��@��?ːJ�x^F\�G��w|Ȑ�������ź� u���]
RH)�+m@�S
r�At֩T� �`3�-^Y'*\u��7�A���� ��REC3�
D�X�Ȓ�����a"�!� �d|�y9��L��}�$|�A���\a�\gX�`.x!��yO�D0H;��7��!V�C�-lvki��u��V�W��o>j� ��g�C0HkED�I�؏e�5%�Ut�=d�8��P�u
R%
R� �C��,ĺ�Ax�"��1Ȗ�:fyc]+!=U	�J�X�pQC�-�Iٱ���&�h��o�A����I�)�U"$\�b]� ��śħ�Y,�6�T6��GP��$B��%H��fa�f
L��A�I���f0�NY5@��$2�XU�8l�����Y��!�5�@�~�[,�5ȟe��|�.d��~!���sI1C��i��Ծ
��0MxZV�D�B!�A4D�A�o9e|PBl�Y��<�Q
r�A�)��{���MI��X�'g����$�Az� Ǒ���5�#�f��`�UH������c�(d���d�u0X���A>X��� �k/�{W� ��sEj�A^�N��j.A8�,� }EI,Q(�q�� ���Az�Ax�;#�Ҳ#�eE^��j�!+(��L�rȭ_� ��� �ϳX\���oׅ���h�A��H�< �5�N
V+V#B�$@��*��)*{����^`��]�!G�� +�� � x�.�'d�6&�~��O5H��A.g���ެ�ؔdf�,
�!@RgH>2�Bz� G�5��� ��b���m
�Q�)�`����L�H����RK�Xt��gyB�r�N�;� �߷�2���5kOgY,��%
23
�C�t� �ݜnh�����t� �l���I���#���A����:ȅ,�M
>�A<	�Vą+�$���y�$�!2ĂƐ.��^d�R�f+j^*�
���[G�pQ-J	 (B�
�,o��R��c!3+a�
rz�_��
N�7��A���{�|
R���@��"��f^!�%���dq5�*|�,�(N��aM6��>pmN�f����:H�s
rܚ�Z��P$�ً�^h5��A"��c�%
�� =���B�=ԚK{�A �R�&�.��&B��0k�,/g�:�c����
0�Y�X7�?�A��A�	��W�Ye"[�GdS�O��-�i5&W�դ�� �p��Zu��N>��k�Gm1�l1A��0�|[d�s
�8���y�3
�Y��0��,VrRI�Zz�0��� ghŚ4���)b�"��Qd��K��iBi��#d~�A~M/��B��7�ZE�e٠��A�PH͊��2D҃=�D�1�4:!��V�>���Wd�ey!Ě��L�� q�����:�I��;� �1��q��:c��*��B�т�Ū�4��A*HbU&@�� ��A�CS��/�!�4�W��R�5"]C4�o�Ū?=Q���I
���A�͊C���y�W2��b�U���2�U(Dt�ɂ�A*Q�9*v��bM�@P���H!|p�< 돨�l��I�Yy|�y�"�����Y,b%��Jz6=�Š� �4�Lc�"�4�dade�
j�P�.0Ȫ$k� 3%��X���pg&����r
 75����QI'cE�A�D %	�e����ͼ�A1݄&�A&0fC�2�R�[C���0�:�dYl|�>�2�:��N���{�§�A"�ܯ�|�A��A�� T�;��2��AB����5���w&��*��k
٤Ho�u���E��̘��&�y�B� �(�d����P������,֩Q�,֟j��
���{�x�ы����:��� 
��,
����w.�9@H��0���N���y��A�Y8>R)�1�\4��:ȟσt}��5��S����f��9���ݼ�㲩	TҹKOǽ�=�h� ʆ�����;��>�Hgy�%��e�*�����,���:uV|o���O�A�#�AF?��� �T��y�D�4�QRIt���bI�`o�h�X]���Pu���̓�����d��3X��!u�̤S�ɥy�e���Z�Q�byu��A�_�¨A<����\(�6pT6����w.TV�r���N<)[��@|Q�#@HC��ǡ9���U�fүW�oΤ�/���5��b�Sb����m�� +�9U�Y�������h�P֛.��G�JX���E����O"�Įu�M�Ď `���(�[5��Y�Fn/����:Hw�A���� j�6��-8��ؕ�t��t�s��u.�:�wj�u=��L3L�r�	��X"�i�HO"$	!��̶��^��g�|��tw��]���d��hC"f҃A �AR�7���)n��C���kd1��� �o䢰�4�j�Ӳc���L ��f��X�@�̳3�C��2���<1�^��� ��� ee9�F]o��D�W�L͊�)t��S�X!rF��Y˦g�!��[���J[!��wJ�~D�	�xC�?�!�i��G�y��,��A��2Mo������+�1��c@�H�~/�fU��M0He�Ҹ�
`�Mrc���V/pb&X��z����aɢ�uZswH�
"$�[&&
�2������r�J������A����b�qx�K6�����DI4��P"`ǎ�NW��K ����:le_~���v��[�\��=,�M�7$%�v\��jF!��q����f9���r DB�w�>�ϤO�A�jHij���x
$0�`c���C5{dŒL@,�o~rB��&ؑIV�|�Gm�|e��!��S��(�͜B�uz�W&��""aa�I�� ���%Nj�1�{�4�!b]tw����8�\�;'om�H��y�XW� c��l��yDv��
�b�ǀF�P���k.�+�p��e��Lu�@��IR����Kz�O�}D@>�4d�����}�AR��{�Š�R%Gns�Ń}
�3���mA�R���sDQ�{����W�c�׆.$* Bc`��/�!d���S�J��p
��U݂�;�4�T�@ �f:-�c,�ہ��(�<nm�
�'KpO}���P(����>aD����#��طCD�A*ַ��oz�u2���}�
͠TEb~#["Ƚ�z~��I�
{|\��j�N�xؽN\TO~�	�E��t��eV�:�AD��H��B��1�?0���Ϭ_�j��`�B:� <�7z�:��whc��?5�[�����}�첊�S=��/~�9R�z�iYBHm0-[9�I���u2|"I�hWvH�z��q-�ĉj\��(�c��<�, �[_~��W:�8œ��m�F�U��䧱��<Vd��B:��k]�,�UA�^��Ҳ'���ž�%I5��0.4�h|��O�0o�\i���<rʼn=o�1X���Y���h�[�������;=���И����_#<�y>�,e�k{�0����D�c��!
�T�ud�����F$��[��	_�比��}�A��Y3/����r���=�z�a��鵇D���ma�ݲ�fbQ*R�%�ʁ�B�Z�`��1 ��ܤ�x��_��(��c�7����@�5v����@`w�^31���Q
˛y���l�-�чfXK��D�{Z�u�ˇ�Y�%r>"�
�>�����p��BL�{N�CA�,�g�ؕ�O��+]��B����Cc�u�sфMfs�������Hz�Y㨸�]�'\��il�1���I��*T9�q�4�kD�uX7���W.��Կ���4�{��,���n�:C��;*P��?n�gx�����<$0&I���b����"O�`�ac��={��D
|����'�z���x���ޯ�/r�GZ
�O��2��+L(�Ɓ��c1��/����r��D�ЮhmF+�e�|��L!̘~�W�m�!ݞ�|�E3�s�"�?�㿈��q���U���?:�
�v���\L�n���9��/�
�t�Ӂ�iJ��>���C�������l��8�?�춈G��Z�4ǿ���
��Q=�1&�g�p��݋k:o/��0�}��[�o���?o)V6X�.���"%�c�R,FW��o/|�����O���O�/�年���HH����My���f4*  !i��Bw
�=��,�]�g1��8�@��PR�y�sM�m-f��(fe�tl[Q��c�4��KW�
�HȞ7U�-��
-@��|�L
��<x��Q���I�d6�Zيv��I��?�ȩZ�{�1��jC�9�*v*G���s3Ԋ��Q�t����աw��am�T���Ͽ2���Y`�V��m���a�f���SIo?a�-/*����,)
�A��#��-?���ݬ`��|��|s!;5���S�WG8ɶҽN�� cY�&�sT����VA�Y��m�ܝ�ܥ����%��vl_}���D��
!իiC��]Ӝ��}R�Tߘx�֫�>�
ff6�X�<i���I��Z>橜�E�%�n���MF-#�V���
ny�j����Y��V��+�����:�g�ԉ�D��y����^r0����{I<�Y�\�Xiڼ**�{��Y������w���	U��&VODWt����j�����U�Y��ħU[}�.��w�Ŕ�%'-$#t��%�Y�`�h�9���r2D�K	��e�����ZQ��u!�����</
BQK���&n:(d�M�!W$	%��z� �1��V�����{6�_���m�g��)+�k;����śa�S��}�O5��k��V��Y�A�P{�27�I����ʐ�DHW�!1J*��{9krE!��h�
=�0����~�X�7�< ���	�6��閭}�cF7�����5g][�����`W�����҅Sk�>�j{��~��r�gK�H;A�⸢C�S�'����Q-[2f38)���c5�R�6d"�>%��t�6C
���n�b�V9f{&���Ճ�TqP��Nx���i��:6�u�[�&���93f�;}A!͹�.��D�8���i�r��9#��df�w�Z������66����IA1��l#�`��b�J�#�dD�Η$�:����]H�!9��z1�j���v��dRl��Ys�� ��l4<��ĂX�)���U1��k�-,gn%V��|�U�-`�6�~�=���i���N�l�h��w
�H#G��
��h��'>X�un�~ �S�MFl�^g�",����� �c�=z�(�ef�$���qs��
�Uo����W��Rvp�܈�4����p��ir�V�!�����؄C
�@��*�e�'sG�3�>@��Җ�I!�)�lY��T
1H��7y;D�#;��9�tH�A���8���B�[�=���NFs.ƙ�d�r�5]�W�k�[����j���յ���*!qG8���v%
�ҵ�5f���}�A�)�0��K�� Q���A6�k!�
!���11���Q��-NB��V�?g���������!�0w�{?j�ٱ�=�O*�����1�;ڞ�ja���_Oi�d.j���Ik��p�$W��� ���� ��0�'�AJ'&�}�]���\Hx㖢�e)j����v���4d�B�a�$��o��a�ո9P%�4ܳ=Hsf)j�ROjv]ٟ��(��Ҫ����`�R{�&2ҟ�#�
�
�,)�X+�X�,� [�sĀxE�<|C��
�,�Y�i���X�F�#b�?��w��s����������V���K�ԫ��\�v�[3��y�
���C���h�;���v��
���(A�Eقܺ�D�g�]ۓ�n�x�Ճ�c��dEJ¢RFH�4L�ǎ�YW��A����;uL1I��1\�vR�\��6J��Uږ�ˣf�<��Ii� @�o� ��A�<�z�A�_�5�4��O���*� ��)$k�������P+-J��S��wA�Zi�?��d�k:0�݃��F;0N����=(W���(9:,��Xs���	r
�N$���,և�1�%�W��
�.׷4��4H%7�(BB
�6�@]���="ʢT� �AR�u?z\s��ڪ����9Y]��n�\;�NJRc,)�
�Rl���s2Y��?�*
0��4 ߧA���b}�AR�@.3�0=�VJx���Xz�����A(�DU���)ƒ�گ.^�X��+�j���DV�+&솨���Y�٭��B��,��y:�Dŝ��a���A�rQ�ԯ�u{���� ��m�rNo���7�Y,�*�v�j?R�̟��Sk5L��1{�ޮ���;�GdY�ڣ�<BY��UF ��"���xvzadV,M�
?E�\b��=)dq� �lhq�� g�k��5,TW�p��QEX��yi�}�AbA$W
��LO�{j%B,��xY)Ě��2y+M��b�j36��L�xV4z�'x�4�Ŧ���:e��b+2��}�2�>�$lf���7Q-���Ѻ���[��ˊ�+M�X�0/�M�l� �F�h����-�
I�f�NJ=��l��£�/:�~�D��dk�
R�3�t$lwD�d�w��RN�6Q	|�Z����k�8�v`�� �9C���Z�����Bc_fh�����ʵ��vc�-rb��l�MY��j�� �A.i7�eGl� ����kK�@�e�*I肍�|��Rb����Y�J(l�����I��^�ZWf� z�!��*rX�{{���D�A��^D1�jϊu��Y�@����m�"�#����`�AX�
��
w��3P��Q��'@�X,+�"Br�3*��'5��<O�[��Df���A6���
O�(�H
�k
��!��7!L����|I� �2�m�=3Y`������'��-k̬��̏Ǹ���A�� �2�E
b3��<qeJ��Z<J����{I�8��4ooGX� m���k�[
>\��Gs�[
��rݪ�]G��|P�ԯy� �$�e�f�A�f�>� l��e� �ޯ�B�A��Xrz5�d3H/��*3�go3�� k���!���Di^$z +Z�3��_ԋ��c��-
�bI�tr�W�m6�0
�`RA�	'�M�y�A|Tj�\%m���<M�/Ea��A����\��)�u��7�|�D�?� ׻yKy#��i��Y��� �� �*�1
��A����5�7D���26�	����g�dq���;X��D�U�Š_ԋ�R���Y��[IW��q|��:�d��1��Am#ݜ,��wxE
�
9PǖO�1HU��uWt�[�R�1� b1�9����,��rK��Wz��5�	Ћ�^� "��>�r���%�8���֖i�2H���AҀ"/��u+���s+Cd�'�
��̛[��?U��f��FXW���h�q�<ÇdJ�F�,/�X� V�5�B!���,�d���c,dJ��8e�veW	A!V�QW�|��d��ًUb�W����>�A��ź�A�W�6��H�z�%R�b���$@��ee�?���[bakW��(L�A���X���$�-��A܉��$8�Ft�bd�T��� �[(\��J�.)(�{��WN(�y��9�͏S�u!����b�\�o�A�J:̤�b��gf��"��S�@�WI��5����2H05g���a;67�K.�D��2E��Ar��M(N��B�vFY%�d���k���ź�A6/�U� �ͫ�$�X�YR��[M�2M�0_�i�$ѕ��n�׽��o8�Q��,�}
rq&�����|
�ݼ!X� z���V� [bd�&2He�3�� 5��s�.)CH/b,�Ap���{-X�����6n��#�����,���0rW�HٜRz���t��DhpE�"��	j��A�]�
�<�V�>4��Š� 5�u ?����A�`�+�]�A�K��XذR�ayޠ�AL3SO��R�g�`�g˰�M �����w}����b�j����{�4<6bVᛈ�<3��f��+����s!�$H�J:����F�m�5�Wf�Z��J7�*+���k&
/T��� ���
ҟ������f�u0���L�� �I�u����� j�[ 5�^aR�R�>BWIJ�[Wf��(�K�$�|�"L��A���S
㬿�� �I��]�A6�BD%]��� ���|�^�3sj|�]�.01���Fe�b+���1�5Y��� %
�|Q��T���i��d�d=Zfb��Ax���bɍUF�7(1D:����@X$�>9m��9� ��-Bn��s�.�;��_�e3H�i�f��~�A�BᔲX��l�p�Ȝ�{� \�,|c��f4H_�hz���!��e.[�g��֮��5Z�}�f�#!�U	��^�74��~��d�(��_� kQ�\� �-�n5�����#l�oR�Kya[n���B^��d����ρS���G�;�QW')����4��b��`��Ab��3�7V-�\�xi߈���.�H��i"+�g�j�oDH�7b,䱖�Z[x�-��^��Q�!w�>/�EAl+"��e�N�@�-��̫��&
r ������ef���ԅ,V"��o$/?��Lq߈U��Fta=T�	�7�	dc�B���"���pOm����xF[�M��/��L91�yY{ls�q�*�.2Z���[n/5+^f��/�_ǝ0H0�0D��{-4
l��X����aKF�c �e̸gp�U�F���6��u�ϻ���»�{�E�q|�X	��:ݵ�Y7�/�Ϣf����b�b�1ȳ��A6p5��:n�IoW}�l����k��4M�Ͱ���4�4��އ�Ӎo�%��Z�
KF��*�N!u��M(FFZ�����9̚q���Fe֏�׮�^cL#D�o�@o�̓t.�rPt�$�?Hy�$��H_fŶ��a��Ͱ��ihD�%p�!+��Bf�dD���������ϼ�<"+���%.�h���̂�#h���L��V��Y��k�'�j{<��H�IEND�B`�assets/images/go-pro-wp-dashboard.svg000064400000014571151327220410013615 0ustar00<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="166" height="133"><style><![CDATA[.B{stroke-width:1.386}.C{fill:#fff}.D{stroke-linecap:round}.E{stroke:#170040}.F{fill-rule:nonzero}.G{stroke:#0e013d}.H{stroke-linejoin:round}.I{fill:#170040}.J{stroke-width:1.247}.K{stroke-width:1.647}]]></style><defs><rect id="A" width="14.27" height="14.233" rx="4.391"/><rect id="B" width="14.27" height="14.233" rx="4.391"/><linearGradient x1="50%" y1="0%" x2="0%" y2="93.8736994%" id="C"><stop stop-color="#ff1ece" offset="0%"/><stop stop-color="#5857a0" offset="100%"/></linearGradient><path id="D" d="M10.964 0v3.016H5.9v4.648h-4.46v6.223h2.07v-3.03h5V6.67h4.798V0z"/></defs><g transform="translate(1 1)" fill="none" fill-rule="evenodd"><g class="D E"><path d="M28.625 43.256c-2.097 8.082-9.324 17.056-6.44 22.163 1.865 3.302 13.787 5.852 18.527 10.233 2.863 2.647 3.653 3.935 4.368 5.127 2.17 3.618 1.897 5.213 3.626 5.123 2.242-.118 2.497-5.034-2.74-9.94-.37-.346 4.225 4.56 5.28 5.77 1.17 1.338 2.455 2.593 3.716 1.82 2.114-1.295.218-3.998-2.128-5.74-2.073-1.538-4.545-3.213-3.385-2.62 2.472 1.266 4.38-2.266 4.725-3.602s.36-3.69-1.138-4.4c-.83-.388-1.598-.088-2.11.9-.657 1.258-.874 3.846-2.925 4.426-1.422.402-3.036-.444-1.382-2.92 1.007-1.508 2.928-.668 4.108-2.276s.53-3.368-1.262-3.274c-5.95.312-6.792 5.015-7.17 4.818-3.582-1.873-10.332-5.122-11.468-6.133-5.422-4.823 8.57-13.896 7.078-16.79" transform="matrix(-.052336 -.99863 -.99863 .052336 105.216436 99.846669)" class="B C F H"/><path d="M2.772 2.074L5.544 5.53M10.05 0v4.147M0 9.677l3.465.7" class="J"/></g><g class="C F"><path d="M117.03 24.612l-51.763-.8c-3.51-.055-6.875 1.41-9.225 4.02l-2.866 3.183a15.94 15.94 0 0 0-1.905 2.604c-1.96 3.344-2.96 5.848-3.015 7.454-.698 20.76-.852 35.834-.463 45.213.176 4.252.756 8.028 1.736 11.326a15.94 15.94 0 0 0 15.279 11.398h59.6c8.803 0 15.94-7.136 15.94-15.94V43.777a15.94 15.94 0 0 0-11.004-15.156l-12.314-4z" class="B G"/><rect x="46.693" y="23.018" width="81.183" height="81.124" rx="21.622"/><g class="B G"><rect x="47.386" y="23.711" width="79.797" height="79.738" rx="16.632"/><path d="M99.282 106.722l.546 18.535h-1.282c-1.423 0-2.576 1.15-2.576 2.57s1.153 2.57 2.576 2.57h4.037c1.915 0 3.467-1.548 3.467-3.458 0-.588-1.423-9.5-1.118-20.216m-28.934-.001l.546 18.535h-1.282c-1.423 0-2.576 1.15-2.576 2.57s1.153 2.57 2.576 2.57H79.3c1.915 0 3.467-1.548 3.467-3.458 0-.588-1.423-9.5-1.118-20.216" class="D H"/></g></g><rect fill="#ece4ff" x="51.618" y="27.648" width="71.379" height="71.194" rx="11.421" class="F"/><path d="M48.595 125.307c2.68-.001 4.803 2.204 4.803 4.647H32.155c0-4.58 3.3-7.943 7.903-7.943 3.087 0 4.69 1.07 6.574 3.6.04.054-1.567 1.232-1.527 1.287-.188.42 1.358-1.58 3.5-1.58z" fill="#f1efff" class="B G"/><g class="B"><path d="M145.275 129.827h-7.307l-1.258-2.198-5.978-9.99-.083-.152c-.89-1.733-.648-3.856 1.09-4.743a3.21 3.21 0 0 1 4.324 1.409c.044.087.1.224.172.4l2.058 6.366c-.1-.557-.563-4.046-1.417-10.467a4.34 4.34 0 0 1 3.959-4.693c.184-.016.37-.02.554-.012l.25.01a4.43 4.43 0 0 1 4.246 4.604c-.003.083-.01.166-.017.248l-1.9 14.397c.024.79.693-1.622 2.008-7.24.512-1.362 2.034-2.053 3.4-1.542.123.046.242.1.356.164 1.48.822 1.577 2.2.758 3.7l-5.212 9.738z" stroke="#110543" fill="#c5fff3"/><path d="M133.75 124.424c3.062 0 5.544 2.476 5.544 5.53h-11.088c0-3.054 2.482-5.53 5.544-5.53z" fill="#f1efff" class="G"/><g class="G D"><path d="M27.166 130.223h121.968m3.88 0h5.544m-140.263 0h5.544m138.046 0h1.663m-149.688 0h1.663"/><path d="M132.29 69.95c5.436 3.166 16.534 8.003 13.965 9.676-6.65 4.33-9.088 2.775-9.088 8 0 9.473 6.2 10.7 9.088 8.215s.314-9.75-3.306-8.215 10.064-5.315 10.064-9.226-16.74-16.665-20.723-17.476" class="C F H"/></g></g><path d="M62.085 33.73c-2.244 1.364-3.834 3.1-4.77 5.205" stroke="#fff" stroke-width="3.326" class="D"/><ellipse cx="55.707" cy="44.001" rx="1.317" ry="1.313" class="C"/><path d="M73.735 67.047c0 1.984-2.235 3.594-5 3.594s-5-1.6-5-3.594 2.235-3.594 5-3.594 5 1.6 5 3.594m23.285 0c0 1.984 2.235 3.594 5 3.594s5-1.6 5-3.594-2.235-3.594-5-3.594-5 1.6-5 3.594" fill-opacity=".1" fill="#f210c3"/><g class="E B"><g class="F"><path d="M76.425 78.383c1.972 3.458 4.878 5.187 8.717 5.187s6.745-1.73 8.717-5.187c1.142-2.567 1.142-4.065 0-4.496-1.713-.645-4.36 1.213-8.717 1.213s-7.1-1.825-8.717-1.213c-1.085.41-1.085 1.907 0 4.496z" class="I"/><path d="M79.254 81.713c1.63 1.238 3.59 1.856 5.888 1.856 2.62 0 4.806-.805 6.556-2.416.814-.75-2.176-2.493-6.535-2.493s-7.003 2.222-5.9 3.053z" fill="#ff0da0"/></g><path d="M97.714 45.62c6.052 1.944 9.08 3.695 9.08 5.25M73.4 45.62c-6.052 1.944-9.08 3.695-9.08 5.25" class="D H"/><path d="M99.67 65.802c-2.966 0-5.695-2.443-5.695-6.165s2.313-5.93 5.28-5.93 5.462 2.672 5.462 6.394-2.08 5.702-5.047 5.702z" class="C"/><path d="M5.972 5.596c-1.108.566-1.72 1.318-1.835 2.256-.15 1.21.057 1.968 1.082 2.94" transform="matrix(.121869 -.992546 -.992546 -.121869 107.20548 67.895591)" class="D"/><path d="M70.957 65.802c2.966 0 5.695-2.443 5.695-6.165s-2.313-5.93-5.28-5.93S65.9 56.378 65.9 60.1s2.08 5.702 5.047 5.702z" class="C"/><path d="M68.25 61.286c.697 1.03 1.518 1.546 2.463 1.546 1.22 0 1.946-.296 2.788-1.432" class="D"/></g><g transform="translate(56.133 48.384)"><g class="E"><path d="M17.563 0a7.14 7.14 0 0 1 6.787 4.926h10.028A7.14 7.14 0 0 1 41.164 0h10.428c3.94 0 7.135 3.195 7.135 7.135V17.5c0 3.94-3.195 7.135-7.135 7.135H41.164c-3.94 0-7.135-3.195-7.135-7.135V12.6h-9.33l.001 4.91c0 3.94-3.195 7.135-7.135 7.135H7.135C3.195 24.635 0 21.44 0 17.5V7.135C0 3.195 3.195 0 7.135 0h10.428z" fill="#afaae8" class="B"/><rect x="37.322" y="4.379" width="15.368" height="15.328" rx="4.391" class="I K"/></g><g transform="translate(37.871 4.927)" class="C"><mask id="E"><use xlink:href="#A"/></mask><use xlink:href="#D" mask="url(#E)"/></g><rect x="3.293" y="4.379" width="15.368" height="15.328" rx="4.391" class="E I K"/><g transform="translate(3.842 4.927)" class="C"><mask id="F"><use xlink:href="#B"/></mask><use xlink:href="#D" mask="url(#F)"/></g><path d="M27.443 4.927h-7.135m8.505 7.663h-6.807" class="B E"/></g><g transform="matrix(.996195 -.087156 .087156 .996195 4.071073 8.5446)"><rect fill="url(#C)" transform="matrix(.996195 .087156 -.087156 .996195 1.622819 -1.48704)" x="1.746" y="1.746" width="32.189" height="32.189" rx="3.219" class="E J"/><path d="M10.83 9.486l3.34.292-1.364 15.588-3.34-.292zm6.4 3.924l.292-3.34 8.907.78-.292 3.34zm-.537 6.125l.292-3.34 8.907.78-.292 3.34zm-.536 6.123l.292-3.34 8.907.78-.292 3.34z" class="C"/></g></g></svg>assets/images/logo-icon.png000064400000003116151327220410011705 0ustar00�PNG


IHDR&(ۙtEXtSoftwareAdobe ImageReadyq�e<"iTXtXML:com.adobe.xmp<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.6-c111 79.158325, 2015/09/10-01:10:20        "> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmlns:xmp="http://ns.adobe.com/xap/1.0/" xmpMM:DocumentID="xmp.did:8035CEF0CDBA11E692EAB26F07EE40CF" xmpMM:InstanceID="xmp.iid:8035CEEFCDBA11E692EAB26F07EE40CF" xmp:CreatorTool="Adobe Photoshop CS6 (Windows)"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:65F17FD427C611E6AC69A0C86DFA46E3" stRef:documentID="xmp.did:65F17FD527C611E6AC69A0C86DFA46E3"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>�J�\�IDATxڤU�kA�73{w�ŏ��	�`���� BZ�"�6v��X�E��H����ͥ�:b��xA�E�g��>vv�ogwog?�D\���μ}���-<�v�^]t8H�$CB�#�^m�W^q��8�1�3̿��f,��x��פ'��Fs`c���A����)=v�Q�0�F�c�@Ҙ��D_�kr����_t���Ji�P�
5���!z�y� �&��̦G�C�u������/�����sE�9@�cc��c�6�#8zf����__���偱�'Y�jO��=�T���Ly�mw��v��bkcki�*�hBc���Y]��C�3��0dFh���\߬�z(k
��)[����Xi
Pc��T&�%� t��Z���0�o#�����\~v[8Ү]�m}av.�d��!�j�@1�
Q*�h�Ӽ�F��d���l����'(Ma�d�9Wqْ�k*��y��Z��������r0|����,Z�%����:#�	�B������K��:�;ߣ(��Gt�.Uv]�y1U����'/#�=��çw��݃_W��#[-we������*��޷f���J6��_:@�����`����Lg	�?���jv��9��Ev�3`�7��q��<����`���~#�MT�<�(YEؑw�4��>�!�f�	U4��A�g���>�G����(�RbIEND�B`�assets/images/logo-panel.svg000064400000006577151327220410012105 0ustar00<svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1599.38 208.29" fill="#ffffff"><path d="M1019.17,548l-31.7,7.55-22.1,5h-.2a76.27,76.27,0,0,1,1.86-18c1.84-7.42,5.85-16.08,12.81-19.88a29.52,29.52,0,0,1,24.86-1.42c8.31,3.3,12.12,11.31,13.76,19.63.45,2.31.76,4.65,1,7Zm57.6,12.57c0-57.62-36.3-82.4-82.68-82.4-52.43,0-85.28,36.3-85.28,82.69,0,50.41,28,83.26,88.16,83.26,32.55,0,51-5.77,72.89-16.71l-8.36-37.74c-16.71,7.48-32.27,12.09-53,12.09-22.76,0-35.72-8.64-40.62-24.77h107.46a79.89,79.89,0,0,0,1.44-16.42" transform="translate(-160.31 -435.85)"/><path d="M537,548l-31.71,7.55-22.1,5H483a75.76,75.76,0,0,1,1.87-18c1.83-7.42,5.85-16.08,12.8-19.88a29.54,29.54,0,0,1,24.87-1.42c8.3,3.3,12.12,11.31,13.75,19.63a68.71,68.71,0,0,1,1,7Zm57.59,12.57c0-57.62-36.3-82.4-82.68-82.4-52.43,0-85.27,36.3-85.27,82.69,0,50.41,27.94,83.26,88.15,83.26,32.56,0,51-5.77,72.89-16.71L579.3,589.7c-16.71,7.48-32.27,12.09-53,12.09-22.76,0-35.73-8.64-40.62-24.77H593.12a79.89,79.89,0,0,0,1.44-16.42" transform="translate(-160.31 -435.85)"/><rect x="190.52" width="53.21" height="202.53"/><path d="M1088,483.39h55.89l11.76,35.8c7.36-17.66,23.93-40.41,53.3-40.41,40.33,0,62.22,20.45,62.22,73.18v86.42h-55.89q0-27,.06-54c0-8.25-.13-16.52,0-24.77.09-7.62.63-15.49-3.43-22.33-2.75-4.63-7.25-8-12.11-10.34a33.06,33.06,0,0,0-30.24.46c-2.38,1.24-13.88,7.47-13.88,10.35V638.38h-55.89V525.21Z" transform="translate(-160.31 -435.85)"/><path d="M1313.46,524h-25.64V483.39h25.64V458l55.89-13.16v38.56h56.18V524h-56.18v45.52c0,17.86,8.64,26.22,21.61,26.22,13.25,0,20.74-1.73,32-5.48l6.62,42.06c-15.27,6.63-34.28,9.8-53.58,9.8-40.62,0-62.52-19.3-62.52-56.76Z" transform="translate(-160.31 -435.85)"/><path d="M1530.1,598.05c20.45,0,32.55-14.69,32.55-38.32s-11.52-37.16-31.68-37.16c-20.46,0-32.27,13.54-32.27,38,0,23,11.52,37.45,31.4,37.45m.58-120.71c52.43,0,90.74,32.84,90.74,83.83,0,51.28-38.31,82.11-91.32,82.11-52.72,0-90.17-31.69-90.17-82.11,0-51,37.16-83.83,90.75-83.83" transform="translate(-160.31 -435.85)"/><path d="M858.75,482.92A61.28,61.28,0,0,0,827,478.86a52.37,52.37,0,0,0-15.69,4.8c-13.54,6.69-24.11,21.94-29.77,35.54-3.72-15.66-14.56-29.75-30.41-36.28a61.28,61.28,0,0,0-31.76-4.06,52.2,52.2,0,0,0-15.69,4.8c-13.51,6.67-24,21.86-29.73,35.42v-1l-11.4-34.7H606.65l11.76,41.82V638.38h55.53V537.28c.2-.74,2.67-2.15,3.11-2.47,6.51-4.62,14.15-9.38,22.3-10,8.31-.62,16.49,3.6,21.44,10.2a23.88,23.88,0,0,1,1.49,2.22c4.06,6.84,3.52,14.71,3.43,22.33-.11,8.25,0,16.52,0,24.77q0,27-.06,54h55.89V552c0-.42,0-.86,0-1.29V537.32c.11-.73,2.67-2.19,3.13-2.51,6.51-4.62,14.15-9.38,22.29-10,8.31-.62,16.5,3.6,21.45,10.2a23.78,23.78,0,0,1,1.48,2.22c4.06,6.84,3.52,14.71,3.43,22.33-.1,8.25,0,16.52,0,24.77q0,27,0,54h55.89V552c0-25.35-3.64-58-30.46-69" transform="translate(-160.31 -435.85)"/><path d="M1753.6,478.78c-29.37,0-45.93,22.75-53.3,40.41l-11.76-35.8h-55.89l11.76,41.82V638.38h55.89V533.8c8-1.41,51.2,6.56,59.39,9.55V479c-2-.11-4-.2-6.09-.2" transform="translate(-160.31 -435.85)"/><path d="M270.67,548,239,555.58l-22.1,5h-.2a75.75,75.75,0,0,1,1.86-18c1.84-7.42,5.85-16.08,12.81-19.88a29.52,29.52,0,0,1,24.86-1.42c8.31,3.3,12.12,11.31,13.76,19.63.45,2.31.76,4.65,1,7Zm57.6,12.57c0-57.62-36.3-82.4-82.69-82.4-52.43,0-85.27,36.3-85.27,82.69,0,50.41,27.95,83.26,88.16,83.26,32.55,0,51-5.77,72.88-16.71L313,589.7c-16.71,7.48-32.27,12.09-53,12.09-22.76,0-35.72-8.64-40.62-24.77H326.83a80.61,80.61,0,0,0,1.44-16.42" transform="translate(-160.31 -435.85)"/></svg>assets/images/information.svg000064400000013264151327220410012364 0ustar00<svg xmlns="http://www.w3.org/2000/svg" width="162" height="134"><style><![CDATA[.B{fill:#fff}.C{fill-rule:nonzero}.D{stroke-linecap:round}.E{stroke:#a4afb7}.F{stroke-linejoin:round}.G{stroke-width:1.397}.H{stroke-width:1.398}.I{fill:#a4afb7}]]></style><g fill="none" fill-rule="evenodd"><g class="E"><g class="G"><path d="M61.98 75.275c-8.022 2.542-16.67 10.308-21.96 7.668-3.42-1.707-6.616-13.6-11.274-18.15-2.814-2.75-4.152-3.477-5.39-4.136-3.755-2-5.346-1.638-5.346-3.387 0-2.268 4.933-2.786 10.147 2.237.368.354-4.812-4.02-6.085-5.023-1.408-1.108-2.738-2.34-2.027-3.653 1.192-2.2 4.01-.432 5.886 1.844 1.657 2 3.473 4.415 2.814 3.276-1.404-2.427 2.05-4.538 3.375-4.957s3.693-.56 4.477.916c.435.817.173 1.607-.785 2.174-1.23.73-3.824 1.085-4.3 3.185-.33 1.456.607 3.04 3.01 1.24 1.465-1.096.518-2.99 2.073-4.264s3.36-.71 3.36 1.1c0 6.018-4.688 7.117-4.47 7.488 2.073 3.515 5.7 10.152 6.776 11.245 5.14 5.215 13.53-9.38 16.52-8.028" class="B C D F"/><path d="M37.3 9.38a4.19 4.19 0 0 1 4.19 4.19V37.9a4.19 4.19 0 0 1-4.19 4.19L35.5 42.1v4.162a.84.84 0 0 1-.128.445l-.07.095a.84.84 0 0 1-1.181.101L28.408 42.1l-15.537.001a4.19 4.19 0 0 1-4.19-4.19V13.57a4.19 4.19 0 0 1 4.19-4.19H37.3z" fill="#c2cbd2"/></g><path d="M3.793 3.095l2.793 3.5M11.125 1v4.2M1 10.776l3.5.698" stroke-width="1.257" class="D"/><path d="M118.92 25.86l-52.147-.818c-3.543-.056-6.936 1.426-9.303 4.062l-2.9 3.218a16.06 16.06 0 0 0-1.914 2.622c-1.978 3.38-2.987 5.913-3.042 7.537-.703 20.972-.86 36.2-.467 45.675.178 4.312.766 8.138 1.76 11.48a16.06 16.06 0 0 0 15.393 11.479h60.045c8.87 0 16.06-7.2 16.06-16.06V45.183a16.06 16.06 0 0 0-11.076-15.267l-12.42-4.055z" class="B C G"/></g><rect x="48.047" y="24.253" width="81.799" height="81.952" rx="21.786" class="B C"/><g class="E G B C"><rect x="48.745" y="24.951" width="80.403" height="80.556" rx="16.758"/><path d="M101.036 108.812l.55 18.724h-1.292c-1.433 0-2.596 1.162-2.596 2.596s1.162 2.596 2.596 2.596h4.068c1.93 0 3.493-1.564 3.493-3.493 0-.594-1.434-9.606-1.127-20.422m-29.153-.001l.55 18.724h-1.292c-1.433 0-2.596 1.162-2.596 2.596s1.162 2.596 2.596 2.596H80.9c1.93 0 3.493-1.564 3.493-3.493 0-.594-1.434-9.606-1.127-20.422" class="D F"/></g><rect fill-opacity=".7" fill="#e6e9ec" x="53.01" y="28.93" width="71.921" height="71.921" rx="11.507" class="C"/><g class="E G"><g class="B"><path d="M49.964 127.586c2.7-.001 4.84 2.226 4.84 4.694H33.4c0-4.628 3.335-8.024 7.963-8.024 3.1 0 4.725 1.082 6.624 3.627.04.054-1.58 1.245-1.54 1.3-.2.424 1.37-1.597 3.517-1.598zm97.414 4.567h-7.362l-1.268-2.22-6.023-10.1-.084-.154c-.896-1.75-.653-3.896 1.097-4.792a3.23 3.23 0 0 1 4.357 1.424 4.79 4.79 0 0 1 .173.414l2.074 6.43c-.1-.562-.567-4.087-1.428-10.574a4.38 4.38 0 0 1 3.989-4.741c.186-.016.372-.02.56-.012l.25.01a4.47 4.47 0 0 1 4.261 4.902l-1.915 14.544c.024.8.698-1.64 2.023-7.314a2.66 2.66 0 0 1 3.785-1.392c1.493.83 1.6 2.232.764 3.727l-5.252 9.837z"/><path d="M135.764 126.694a5.59 5.59 0 0 1 5.582 5.367l.003.218h-11.17a5.59 5.59 0 0 1 5.367-5.581l.22-.004z"/></g><g class="D"><path d="M28.372 132.552h122.894m3.9 0h5.586m-141.328 0h5.586m-10.055 0h1.676"/><path d="M134.296 71.665c5.477 3.2 16.66 8.085 14.07 9.774-6.7 4.374-9.157 2.803-9.157 8.07 0 9.57 6.257 10.82 9.157 8.3s.316-9.85-3.33-8.3 10.14-5.37 10.14-9.32-16.866-16.835-20.88-17.654" class="B C F"/></g></g><g stroke="#fff" stroke-width="3.352" class="D"><path d="M63.556 35.075c-2.26 1.378-3.863 3.13-4.807 5.258"/><path d="M18.088 25.943l5.258 4.807 10.197-11.173" class="F"/></g><g class="B"><circle cx="57.13" cy="45.451" r="1.327"/><path d="M101.596 52.937c3.58 0 6.59 3.053 6.59 7.305 0 2.072-.596 3.67-1.62 4.767-1.658-1.006-3.604-1.584-5.685-1.584-1.456 0-2.846.283-4.117.797-.95-1.174-1.54-2.7-1.54-4.508 0-4.253 2.79-6.777 6.37-6.777z" class="E H"/></g><circle cx="100.882" cy="60.928" r="2.996" class="I"/><path d="M71.563 52.937c-3.58 0-6.59 3.053-6.59 7.305 0 2.072.596 3.67 1.62 4.767 1.658-1.006 3.604-1.584 5.685-1.584 1.456 0 2.846.283 4.117.797.95-1.174 1.54-2.7 1.54-4.508 0-4.253-2.79-6.777-6.37-6.777z" class="B E H"/><circle transform="matrix(-1 0 0 1 143.553672 1)" cx="71.277" cy="59.928" r="2.996" class="I"/><g class="E"><path d="M74.6 43.95c-6.086 1.702-9.13 3.235-9.13 4.597m34.844-4.597c6.086 1.702 9.13 3.235 9.13 4.597" stroke-width="1.394" class="D F"/><path d="M88.415 80.868c5.056 0 8.045-2.648 10.374-4.956-2.76 1.2-4.824 2.66-10.892 2.66s-8.434-1.048-10.987-2.238c3.266 2.986 6.45 4.534 11.505 4.534z" stroke-width=".999" class="F I"/><g class="B H"><path d="M82.732 78.487l4.788.25-.157 2.992a1.8 1.8 0 0 1-1.889 1.701l-1.197-.063a1.8 1.8 0 0 1-1.701-1.889l.157-2.992z"/><path d="M6.006 1H10.8v2.996a1.8 1.8 0 0 1-1.798 1.798h-1.2a1.8 1.8 0 0 1-1.798-1.798V1z" transform="matrix(-.99863 .052336 .052336 .99863 98.220958 77.17487)"/></g><path d="M104.49 48.955c8.74.196 13.197 1.28 13.37 3.252v3.705c-1.065.337-1.67.955-1.816 1.854-1.542 9.527-4.236 13.15-11.877 13.15-7.723 0-14.822-3.84-15.763-14.117-.05-.558-.72-.854-2.006-.887l-.22.01c-1.142.06-1.738.353-1.786.878-.94 10.278-8.04 14.117-15.763 14.117-7.64 0-10.335-3.624-11.877-13.15-.136-.84-.672-1.434-1.61-1.783l-.207-.07v-3.705c.173-1.972 4.63-3.055 13.37-3.252 6.485-.146 11.384.91 14.684 2.67.674.36 1.702.553 3.083.58l.325.003c1.546 0 2.682-.194 3.408-.582 3.3-1.76 8.2-2.815 14.684-2.67zm-34.136 3.068c-4.59-.1-7.715.117-9.076 1.91-.996 1.312-.837 3.45-.603 5.302.298 2.368 1.022 4.483 1.964 5.722 1.06 1.395 3.033 2.556 6.496 2.556 3.87 0 7.5-1.41 9.37-3.605.894-1.056 3.71-5.835 2.478-8.687-.207-.48-.735-2.96-10.628-3.196zm41.316 1.91c-1.36-1.792-4.487-2.02-9.076-1.91-9.893.237-10.42 2.716-10.628 3.196-1.23 2.853 1.584 7.63 2.478 8.687 1.86 2.196 5.5 3.605 9.37 3.605 3.463 0 5.436-1.16 6.496-2.556.942-1.24 1.666-3.354 1.964-5.722.234-1.853.393-4-.603-5.302z" stroke-width="1.119" class="B"/></g></g></svg>assets/images/app/site-editor/products.svg000064400000141730151327220410014712 0ustar00<svg width="230" height="223" viewBox="0 0 230 223" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect y="0.171875" width="229.827" height="222" fill="white"/>
<path d="M22 26.5C22 23.4624 24.4624 21 27.5 21H59.5C62.5376 21 65 23.4624 65 26.5C65 29.5376 62.5376 32 59.5 32H27.5C24.4624 32 22 29.5376 22 26.5Z" fill="#F1F3F5"/>
<rect x="54.4941" y="21.0625" width="10.8866" height="10.8866" rx="5.44328" fill="#D5DADF"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M61.2349 27.2392C61.4787 26.9105 61.6229 26.5035 61.6229 26.0629C61.6229 24.9713 60.738 24.0864 59.6464 24.0864C58.5548 24.0864 57.6699 24.9713 57.6699 26.0629C57.6699 27.1545 58.5548 28.0394 59.6464 28.0394C60.0867 28.0394 60.4934 27.8954 60.8219 27.652L61.7069 28.537C61.8209 28.651 62.0058 28.651 62.1198 28.537C62.2338 28.4229 62.2338 28.2381 62.1198 28.124L61.2349 27.2392ZM59.6455 27.4554C58.8764 27.4554 58.253 26.832 58.253 26.0629C58.253 25.2938 58.8764 24.6704 59.6455 24.6704C60.4146 24.6704 61.038 25.2938 61.038 26.0629C61.038 26.832 60.4146 27.4554 59.6455 27.4554Z" fill="white"/>
<path d="M82.8193 27.9873H79.958V31H78.7227V23.8906H83.2393V24.8867H79.958V27.001H82.8193V27.9873ZM86.3252 31.0977C85.5732 31.0977 84.9629 30.8617 84.4941 30.3896C84.0286 29.9144 83.7959 29.2829 83.7959 28.4951V28.3486C83.7959 27.8213 83.8968 27.3509 84.0986 26.9375C84.3037 26.5208 84.5902 26.1969 84.958 25.9658C85.3258 25.7347 85.736 25.6191 86.1885 25.6191C86.9079 25.6191 87.4629 25.8486 87.8535 26.3076C88.2474 26.7666 88.4443 27.416 88.4443 28.2559V28.7344H84.9922C85.028 29.1706 85.1729 29.5156 85.4268 29.7695C85.6839 30.0234 86.0062 30.1504 86.3936 30.1504C86.9372 30.1504 87.3799 29.9307 87.7217 29.4912L88.3613 30.1016C88.1497 30.4173 87.8665 30.6631 87.5117 30.8389C87.1602 31.0114 86.7646 31.0977 86.3252 31.0977ZM86.1836 26.5713C85.8581 26.5713 85.5944 26.6852 85.3926 26.9131C85.194 27.141 85.0671 27.4583 85.0117 27.8652H87.2725V27.7773C87.2464 27.3802 87.1406 27.0807 86.9551 26.8789C86.7695 26.6738 86.5124 26.5713 86.1836 26.5713ZM92.5264 31C92.4743 30.8991 92.4287 30.7347 92.3896 30.5068C92.012 30.9007 91.5498 31.0977 91.0029 31.0977C90.4723 31.0977 90.0394 30.9463 89.7041 30.6436C89.3688 30.3408 89.2012 29.9665 89.2012 29.5205C89.2012 28.9574 89.4095 28.526 89.8262 28.2266C90.2461 27.9238 90.8451 27.7725 91.623 27.7725H92.3506V27.4258C92.3506 27.1523 92.2741 26.9342 92.1211 26.7715C91.9681 26.6055 91.7354 26.5225 91.4229 26.5225C91.1527 26.5225 90.9313 26.5908 90.7588 26.7275C90.5863 26.861 90.5 27.0319 90.5 27.2402H89.3135C89.3135 26.9505 89.4095 26.6803 89.6016 26.4297C89.7936 26.1758 90.054 25.9772 90.3828 25.834C90.7148 25.6908 91.0843 25.6191 91.4912 25.6191C92.1097 25.6191 92.6029 25.7754 92.9707 26.0879C93.3385 26.3971 93.5273 26.8333 93.5371 27.3965V29.7793C93.5371 30.2546 93.6038 30.6338 93.7373 30.917V31H92.5264ZM91.2227 30.1455C91.457 30.1455 91.6768 30.0885 91.8818 29.9746C92.0902 29.8607 92.2464 29.7077 92.3506 29.5156V28.5195H91.7109C91.2715 28.5195 90.9411 28.596 90.7197 28.749C90.4984 28.902 90.3877 29.1185 90.3877 29.3984C90.3877 29.6263 90.4626 29.8086 90.6123 29.9453C90.7653 30.0788 90.9688 30.1455 91.2227 30.1455ZM96.2666 24.4326V25.7168H97.1992V26.5957H96.2666V29.5449C96.2666 29.7467 96.3057 29.8932 96.3838 29.9844C96.4652 30.0723 96.6084 30.1162 96.8135 30.1162C96.9502 30.1162 97.0885 30.0999 97.2285 30.0674V30.9854C96.9583 31.0602 96.6979 31.0977 96.4473 31.0977C95.5358 31.0977 95.0801 30.5947 95.0801 29.5889V26.5957H94.2109V25.7168H95.0801V24.4326H96.2666ZM101.311 30.4824C100.962 30.8926 100.467 31.0977 99.8262 31.0977C99.2533 31.0977 98.8187 30.93 98.5225 30.5947C98.2295 30.2594 98.083 29.7744 98.083 29.1396V25.7168H99.2695V29.125C99.2695 29.7956 99.5479 30.1309 100.104 30.1309C100.681 30.1309 101.07 29.9242 101.271 29.5107V25.7168H102.458V31H101.34L101.311 30.4824ZM106.433 26.8008C106.276 26.7747 106.115 26.7617 105.949 26.7617C105.406 26.7617 105.039 26.9701 104.851 27.3867V31H103.664V25.7168H104.797L104.826 26.3076C105.113 25.8486 105.51 25.6191 106.018 25.6191C106.187 25.6191 106.327 25.6419 106.438 25.6875L106.433 26.8008ZM109.411 31.0977C108.659 31.0977 108.049 30.8617 107.58 30.3896C107.115 29.9144 106.882 29.2829 106.882 28.4951V28.3486C106.882 27.8213 106.983 27.3509 107.185 26.9375C107.39 26.5208 107.676 26.1969 108.044 25.9658C108.412 25.7347 108.822 25.6191 109.274 25.6191C109.994 25.6191 110.549 25.8486 110.939 26.3076C111.333 26.7666 111.53 27.416 111.53 28.2559V28.7344H108.078C108.114 29.1706 108.259 29.5156 108.513 29.7695C108.77 30.0234 109.092 30.1504 109.479 30.1504C110.023 30.1504 110.466 29.9307 110.808 29.4912L111.447 30.1016C111.236 30.4173 110.952 30.6631 110.598 30.8389C110.246 31.0114 109.851 31.0977 109.411 31.0977ZM109.27 26.5713C108.944 26.5713 108.68 26.6852 108.479 26.9131C108.28 27.141 108.153 27.4583 108.098 27.8652H110.358V27.7773C110.332 27.3802 110.227 27.0807 110.041 26.8789C109.855 26.6738 109.598 26.5713 109.27 26.5713ZM112.233 28.3193C112.233 27.5055 112.422 26.8529 112.8 26.3613C113.177 25.8665 113.684 25.6191 114.318 25.6191C114.878 25.6191 115.331 25.8145 115.676 26.2051V23.5H116.862V31H115.788L115.729 30.4531C115.375 30.8828 114.901 31.0977 114.309 31.0977C113.69 31.0977 113.189 30.8486 112.805 30.3506C112.424 29.8525 112.233 29.1755 112.233 28.3193ZM113.42 28.4219C113.42 28.959 113.522 29.3789 113.728 29.6816C113.936 29.9811 114.23 30.1309 114.611 30.1309C115.096 30.1309 115.451 29.9144 115.676 29.4814V27.2256C115.458 26.8024 115.106 26.5908 114.621 26.5908C114.237 26.5908 113.941 26.7438 113.732 27.0498C113.524 27.3525 113.42 27.8099 113.42 28.4219ZM121.94 28.3584V31H120.705V23.8906H123.425C124.219 23.8906 124.849 24.0973 125.314 24.5107C125.783 24.9242 126.018 25.471 126.018 26.1514C126.018 26.848 125.788 27.39 125.329 27.7773C124.873 28.1647 124.234 28.3584 123.41 28.3584H121.94ZM121.94 27.3672H123.425C123.864 27.3672 124.2 27.2646 124.431 27.0596C124.662 26.8512 124.777 26.5518 124.777 26.1611C124.777 25.777 124.66 25.471 124.426 25.2432C124.191 25.012 123.869 24.8932 123.459 24.8867H121.94V27.3672ZM129.753 26.8008C129.597 26.7747 129.436 26.7617 129.27 26.7617C128.726 26.7617 128.36 26.9701 128.171 27.3867V31H126.984V25.7168H128.117L128.146 26.3076C128.433 25.8486 128.83 25.6191 129.338 25.6191C129.507 25.6191 129.647 25.6419 129.758 25.6875L129.753 26.8008ZM130.104 28.3096C130.104 27.792 130.207 27.3265 130.412 26.9131C130.617 26.4964 130.905 26.1774 131.276 25.9561C131.647 25.7314 132.074 25.6191 132.556 25.6191C133.269 25.6191 133.846 25.8486 134.289 26.3076C134.735 26.7666 134.976 27.3753 135.012 28.1338L135.017 28.4121C135.017 28.9329 134.916 29.3984 134.714 29.8086C134.515 30.2188 134.229 30.5361 133.854 30.7607C133.483 30.9854 133.054 31.0977 132.565 31.0977C131.82 31.0977 131.223 30.8503 130.773 30.3555C130.327 29.8574 130.104 29.195 130.104 28.3682V28.3096ZM131.291 28.4121C131.291 28.9557 131.403 29.3822 131.628 29.6914C131.853 29.9974 132.165 30.1504 132.565 30.1504C132.966 30.1504 133.277 29.9941 133.498 29.6816C133.723 29.3691 133.835 28.9118 133.835 28.3096C133.835 27.7757 133.719 27.3525 133.488 27.04C133.26 26.7275 132.95 26.5713 132.556 26.5713C132.168 26.5713 131.861 26.7259 131.633 27.0352C131.405 27.3411 131.291 27.8001 131.291 28.4121ZM135.798 28.3193C135.798 27.5055 135.987 26.8529 136.364 26.3613C136.742 25.8665 137.248 25.6191 137.883 25.6191C138.443 25.6191 138.895 25.8145 139.24 26.2051V23.5H140.427V31H139.353L139.294 30.4531C138.939 30.8828 138.465 31.0977 137.873 31.0977C137.255 31.0977 136.753 30.8486 136.369 30.3506C135.988 29.8525 135.798 29.1755 135.798 28.3193ZM136.984 28.4219C136.984 28.959 137.087 29.3789 137.292 29.6816C137.5 29.9811 137.795 30.1309 138.176 30.1309C138.661 30.1309 139.016 29.9144 139.24 29.4814V27.2256C139.022 26.8024 138.671 26.5908 138.186 26.5908C137.801 26.5908 137.505 26.7438 137.297 27.0498C137.089 27.3525 136.984 27.8099 136.984 28.4219ZM144.865 30.4824C144.517 30.8926 144.022 31.0977 143.381 31.0977C142.808 31.0977 142.373 30.93 142.077 30.5947C141.784 30.2594 141.638 29.7744 141.638 29.1396V25.7168H142.824V29.125C142.824 29.7956 143.103 30.1309 143.659 30.1309C144.235 30.1309 144.624 29.9242 144.826 29.5107V25.7168H146.013V31H144.895L144.865 30.4824ZM149.392 30.1504C149.688 30.1504 149.934 30.0641 150.129 29.8916C150.324 29.7191 150.428 29.5059 150.441 29.252H151.56C151.547 29.5807 151.444 29.8883 151.252 30.1748C151.06 30.458 150.799 30.6826 150.471 30.8486C150.142 31.0146 149.787 31.0977 149.406 31.0977C148.667 31.0977 148.081 30.8584 147.648 30.3799C147.215 29.9014 146.999 29.2406 146.999 28.3975V28.2754C146.999 27.4714 147.214 26.8285 147.644 26.3467C148.073 25.8617 148.659 25.6191 149.401 25.6191C150.03 25.6191 150.541 25.8031 150.935 26.1709C151.332 26.5355 151.54 27.0156 151.56 27.6113H150.441C150.428 27.3086 150.324 27.0596 150.129 26.8643C149.937 26.6689 149.691 26.5713 149.392 26.5713C149.007 26.5713 148.711 26.7113 148.503 26.9912C148.295 27.2679 148.189 27.6895 148.186 28.2559V28.4463C148.186 29.0192 148.288 29.4473 148.493 29.7305C148.701 30.0104 149.001 30.1504 149.392 30.1504ZM153.942 24.4326V25.7168H154.875V26.5957H153.942V29.5449C153.942 29.7467 153.981 29.8932 154.06 29.9844C154.141 30.0723 154.284 30.1162 154.489 30.1162C154.626 30.1162 154.764 30.0999 154.904 30.0674V30.9854C154.634 31.0602 154.374 31.0977 154.123 31.0977C153.212 31.0977 152.756 30.5947 152.756 29.5889V26.5957H151.887V25.7168H152.756V24.4326H153.942ZM158.747 29.5645C158.747 29.3529 158.659 29.1917 158.483 29.0811C158.311 28.9704 158.023 28.8727 157.619 28.7881C157.215 28.7035 156.879 28.596 156.608 28.4658C156.016 28.1794 155.72 27.7643 155.72 27.2207C155.72 26.765 155.912 26.3841 156.296 26.0781C156.68 25.7721 157.168 25.6191 157.761 25.6191C158.392 25.6191 158.902 25.7754 159.289 26.0879C159.68 26.4004 159.875 26.8057 159.875 27.3037H158.688C158.688 27.0758 158.604 26.887 158.435 26.7373C158.265 26.5843 158.041 26.5078 157.761 26.5078C157.5 26.5078 157.287 26.568 157.121 26.6885C156.958 26.8089 156.877 26.9701 156.877 27.1719C156.877 27.3542 156.953 27.4958 157.106 27.5967C157.259 27.6976 157.569 27.8001 158.034 27.9043C158.5 28.0052 158.864 28.1273 159.128 28.2705C159.395 28.4105 159.592 28.5798 159.719 28.7783C159.849 28.9769 159.914 29.2178 159.914 29.501C159.914 29.9762 159.717 30.362 159.323 30.6582C158.929 30.9512 158.413 31.0977 157.775 31.0977C157.342 31.0977 156.957 31.0195 156.618 30.8633C156.28 30.707 156.016 30.4922 155.827 30.2188C155.638 29.9453 155.544 29.6507 155.544 29.335H156.696C156.713 29.6149 156.818 29.8314 157.014 29.9844C157.209 30.1341 157.468 30.209 157.79 30.209C158.103 30.209 158.34 30.1504 158.503 30.0332C158.666 29.9128 158.747 29.7565 158.747 29.5645Z" fill="#A4AFB7"/>
<path d="M80.3994 88.8867C80.3994 88.7207 80.3467 88.584 80.2412 88.4766C80.1357 88.3672 79.96 88.2695 79.7139 88.1836C79.4678 88.0957 79.2764 88.0146 79.1396 87.9404C78.6846 87.6963 78.457 87.335 78.457 86.8564C78.457 86.5322 78.5557 86.2656 78.7529 86.0566C78.9502 85.8477 79.2178 85.7236 79.5557 85.6846V85.0459H80.0244V85.6904C80.3643 85.7393 80.627 85.8838 80.8125 86.124C80.998 86.3623 81.0908 86.6729 81.0908 87.0557H80.3818C80.3818 86.8096 80.3262 86.6162 80.2148 86.4756C80.1055 86.333 79.9561 86.2617 79.7666 86.2617C79.5791 86.2617 79.4326 86.3125 79.3271 86.4141C79.2217 86.5156 79.1689 86.6611 79.1689 86.8506C79.1689 87.0205 79.2207 87.1572 79.3242 87.2607C79.4297 87.3623 79.6074 87.459 79.8574 87.5508C80.1074 87.6426 80.3037 87.7275 80.4463 87.8057C80.5889 87.8838 80.709 87.9736 80.8066 88.0752C80.9043 88.1748 80.9795 88.29 81.0322 88.4209C81.085 88.5518 81.1113 88.7051 81.1113 88.8809C81.1113 89.2109 81.0098 89.4785 80.8066 89.6836C80.6055 89.8887 80.3242 90.0098 79.9629 90.0469V90.6182H79.4971V90.0498C79.1104 90.0068 78.8125 89.8682 78.6035 89.6338C78.3965 89.3994 78.293 89.0889 78.293 88.7021H79.0049C79.0049 88.9482 79.0664 89.1387 79.1895 89.2734C79.3145 89.4082 79.4902 89.4756 79.7168 89.4756C79.9395 89.4756 80.1084 89.4219 80.2236 89.3145C80.3408 89.207 80.3994 89.0645 80.3994 88.8867ZM82.2527 87.542H82.6863C82.9051 87.54 83.0779 87.4834 83.2049 87.3721C83.3338 87.2607 83.3982 87.0996 83.3982 86.8887C83.3982 86.6855 83.3445 86.5283 83.2371 86.417C83.1316 86.3037 82.9695 86.2471 82.7508 86.2471C82.5594 86.2471 82.4021 86.3027 82.2791 86.4141C82.1561 86.5234 82.0945 86.667 82.0945 86.8447H81.3826C81.3826 86.626 81.4402 86.4268 81.5555 86.2471C81.6727 86.0674 81.8348 85.9277 82.0418 85.8281C82.2508 85.7266 82.4842 85.6758 82.742 85.6758C83.1678 85.6758 83.5018 85.7832 83.7439 85.998C83.9881 86.2109 84.1102 86.5078 84.1102 86.8887C84.1102 87.0801 84.0486 87.2607 83.9256 87.4307C83.8045 87.5986 83.6473 87.7256 83.4539 87.8115C83.6883 87.8916 83.866 88.0176 83.9871 88.1895C84.1102 88.3613 84.1717 88.5664 84.1717 88.8047C84.1717 89.1875 84.0398 89.4922 83.7762 89.7188C83.5145 89.9453 83.1697 90.0586 82.742 90.0586C82.3318 90.0586 81.9959 89.9492 81.7342 89.7305C81.4725 89.5117 81.3416 89.2207 81.3416 88.8574H82.0535C82.0535 89.0449 82.116 89.1973 82.241 89.3145C82.368 89.4316 82.5379 89.4902 82.7508 89.4902C82.9715 89.4902 83.1453 89.4316 83.2723 89.3145C83.3992 89.1973 83.4627 89.0273 83.4627 88.8047C83.4627 88.5801 83.3963 88.4072 83.2635 88.2861C83.1307 88.165 82.9334 88.1045 82.6717 88.1045H82.2527V87.542ZM87.3199 88.2041C87.3199 88.8174 87.2047 89.2803 86.9742 89.5928C86.7457 89.9033 86.3971 90.0586 85.9283 90.0586C85.4674 90.0586 85.1197 89.9072 84.8854 89.6045C84.6529 89.2998 84.5338 88.8496 84.5279 88.2539V87.5156C84.5279 86.9023 84.6422 86.4424 84.8707 86.1357C85.1012 85.8291 85.4518 85.6758 85.9225 85.6758C86.3893 85.6758 86.7369 85.8252 86.9654 86.124C87.1959 86.4229 87.3141 86.8701 87.3199 87.4658V88.2041ZM86.608 87.4072C86.608 87.0068 86.5533 86.7139 86.4439 86.5283C86.3346 86.3408 86.1607 86.2471 85.9225 86.2471C85.69 86.2471 85.5191 86.3359 85.4098 86.5137C85.3004 86.6895 85.2428 86.9648 85.2369 87.3398V88.3066C85.2369 88.7051 85.2926 89.002 85.4039 89.1973C85.5152 89.3926 85.69 89.4902 85.9283 89.4902C86.1568 89.4902 86.3258 89.4004 86.4352 89.2207C86.5445 89.0391 86.6021 88.7559 86.608 88.3711V87.4072Z" fill="#A4AFB7"/>
<path d="M80.3994 144.887C80.3994 144.721 80.3467 144.584 80.2412 144.477C80.1357 144.367 79.96 144.27 79.7139 144.184C79.4678 144.096 79.2764 144.015 79.1396 143.94C78.6846 143.696 78.457 143.335 78.457 142.856C78.457 142.532 78.5557 142.266 78.7529 142.057C78.9502 141.848 79.2178 141.724 79.5557 141.685V141.046H80.0244V141.69C80.3643 141.739 80.627 141.884 80.8125 142.124C80.998 142.362 81.0908 142.673 81.0908 143.056H80.3818C80.3818 142.81 80.3262 142.616 80.2148 142.476C80.1055 142.333 79.9561 142.262 79.7666 142.262C79.5791 142.262 79.4326 142.312 79.3271 142.414C79.2217 142.516 79.1689 142.661 79.1689 142.851C79.1689 143.021 79.2207 143.157 79.3242 143.261C79.4297 143.362 79.6074 143.459 79.8574 143.551C80.1074 143.643 80.3037 143.728 80.4463 143.806C80.5889 143.884 80.709 143.974 80.8066 144.075C80.9043 144.175 80.9795 144.29 81.0322 144.421C81.085 144.552 81.1113 144.705 81.1113 144.881C81.1113 145.211 81.0098 145.479 80.8066 145.684C80.6055 145.889 80.3242 146.01 79.9629 146.047V146.618H79.4971V146.05C79.1104 146.007 78.8125 145.868 78.6035 145.634C78.3965 145.399 78.293 145.089 78.293 144.702H79.0049C79.0049 144.948 79.0664 145.139 79.1895 145.273C79.3145 145.408 79.4902 145.476 79.7168 145.476C79.9395 145.476 80.1084 145.422 80.2236 145.314C80.3408 145.207 80.3994 145.064 80.3994 144.887ZM82.2527 143.542H82.6863C82.9051 143.54 83.0779 143.483 83.2049 143.372C83.3338 143.261 83.3982 143.1 83.3982 142.889C83.3982 142.686 83.3445 142.528 83.2371 142.417C83.1316 142.304 82.9695 142.247 82.7508 142.247C82.5594 142.247 82.4021 142.303 82.2791 142.414C82.1561 142.523 82.0945 142.667 82.0945 142.845H81.3826C81.3826 142.626 81.4402 142.427 81.5555 142.247C81.6727 142.067 81.8348 141.928 82.0418 141.828C82.2508 141.727 82.4842 141.676 82.742 141.676C83.1678 141.676 83.5018 141.783 83.7439 141.998C83.9881 142.211 84.1102 142.508 84.1102 142.889C84.1102 143.08 84.0486 143.261 83.9256 143.431C83.8045 143.599 83.6473 143.726 83.4539 143.812C83.6883 143.892 83.866 144.018 83.9871 144.189C84.1102 144.361 84.1717 144.566 84.1717 144.805C84.1717 145.188 84.0398 145.492 83.7762 145.719C83.5145 145.945 83.1697 146.059 82.742 146.059C82.3318 146.059 81.9959 145.949 81.7342 145.73C81.4725 145.512 81.3416 145.221 81.3416 144.857H82.0535C82.0535 145.045 82.116 145.197 82.241 145.314C82.368 145.432 82.5379 145.49 82.7508 145.49C82.9715 145.49 83.1453 145.432 83.2723 145.314C83.3992 145.197 83.4627 145.027 83.4627 144.805C83.4627 144.58 83.3963 144.407 83.2635 144.286C83.1307 144.165 82.9334 144.104 82.6717 144.104H82.2527V143.542ZM87.3199 144.204C87.3199 144.817 87.2047 145.28 86.9742 145.593C86.7457 145.903 86.3971 146.059 85.9283 146.059C85.4674 146.059 85.1197 145.907 84.8854 145.604C84.6529 145.3 84.5338 144.85 84.5279 144.254V143.516C84.5279 142.902 84.6422 142.442 84.8707 142.136C85.1012 141.829 85.4518 141.676 85.9225 141.676C86.3893 141.676 86.7369 141.825 86.9654 142.124C87.1959 142.423 87.3141 142.87 87.3199 143.466V144.204ZM86.608 143.407C86.608 143.007 86.5533 142.714 86.4439 142.528C86.3346 142.341 86.1607 142.247 85.9225 142.247C85.69 142.247 85.5191 142.336 85.4098 142.514C85.3004 142.689 85.2428 142.965 85.2369 143.34V144.307C85.2369 144.705 85.2926 145.002 85.4039 145.197C85.5152 145.393 85.69 145.49 85.9283 145.49C86.1568 145.49 86.3258 145.4 86.4352 145.221C86.5445 145.039 86.6021 144.756 86.608 144.371V143.407Z" fill="#A4AFB7"/>
<path d="M80.3994 200.887C80.3994 200.721 80.3467 200.584 80.2412 200.477C80.1357 200.367 79.96 200.27 79.7139 200.184C79.4678 200.096 79.2764 200.015 79.1396 199.94C78.6846 199.696 78.457 199.335 78.457 198.856C78.457 198.532 78.5557 198.266 78.7529 198.057C78.9502 197.848 79.2178 197.724 79.5557 197.685V197.046H80.0244V197.69C80.3643 197.739 80.627 197.884 80.8125 198.124C80.998 198.362 81.0908 198.673 81.0908 199.056H80.3818C80.3818 198.81 80.3262 198.616 80.2148 198.476C80.1055 198.333 79.9561 198.262 79.7666 198.262C79.5791 198.262 79.4326 198.312 79.3271 198.414C79.2217 198.516 79.1689 198.661 79.1689 198.851C79.1689 199.021 79.2207 199.157 79.3242 199.261C79.4297 199.362 79.6074 199.459 79.8574 199.551C80.1074 199.643 80.3037 199.728 80.4463 199.806C80.5889 199.884 80.709 199.974 80.8066 200.075C80.9043 200.175 80.9795 200.29 81.0322 200.421C81.085 200.552 81.1113 200.705 81.1113 200.881C81.1113 201.211 81.0098 201.479 80.8066 201.684C80.6055 201.889 80.3242 202.01 79.9629 202.047V202.618H79.4971V202.05C79.1104 202.007 78.8125 201.868 78.6035 201.634C78.3965 201.399 78.293 201.089 78.293 200.702H79.0049C79.0049 200.948 79.0664 201.139 79.1895 201.273C79.3145 201.408 79.4902 201.476 79.7168 201.476C79.9395 201.476 80.1084 201.422 80.2236 201.314C80.3408 201.207 80.3994 201.064 80.3994 200.887ZM82.2527 199.542H82.6863C82.9051 199.54 83.0779 199.483 83.2049 199.372C83.3338 199.261 83.3982 199.1 83.3982 198.889C83.3982 198.686 83.3445 198.528 83.2371 198.417C83.1316 198.304 82.9695 198.247 82.7508 198.247C82.5594 198.247 82.4021 198.303 82.2791 198.414C82.1561 198.523 82.0945 198.667 82.0945 198.845H81.3826C81.3826 198.626 81.4402 198.427 81.5555 198.247C81.6727 198.067 81.8348 197.928 82.0418 197.828C82.2508 197.727 82.4842 197.676 82.742 197.676C83.1678 197.676 83.5018 197.783 83.7439 197.998C83.9881 198.211 84.1102 198.508 84.1102 198.889C84.1102 199.08 84.0486 199.261 83.9256 199.431C83.8045 199.599 83.6473 199.726 83.4539 199.812C83.6883 199.892 83.866 200.018 83.9871 200.189C84.1102 200.361 84.1717 200.566 84.1717 200.805C84.1717 201.188 84.0398 201.492 83.7762 201.719C83.5145 201.945 83.1697 202.059 82.742 202.059C82.3318 202.059 81.9959 201.949 81.7342 201.73C81.4725 201.512 81.3416 201.221 81.3416 200.857H82.0535C82.0535 201.045 82.116 201.197 82.241 201.314C82.368 201.432 82.5379 201.49 82.7508 201.49C82.9715 201.49 83.1453 201.432 83.2723 201.314C83.3992 201.197 83.4627 201.027 83.4627 200.805C83.4627 200.58 83.3963 200.407 83.2635 200.286C83.1307 200.165 82.9334 200.104 82.6717 200.104H82.2527V199.542ZM87.3199 200.204C87.3199 200.817 87.2047 201.28 86.9742 201.593C86.7457 201.903 86.3971 202.059 85.9283 202.059C85.4674 202.059 85.1197 201.907 84.8854 201.604C84.6529 201.3 84.5338 200.85 84.5279 200.254V199.516C84.5279 198.902 84.6422 198.442 84.8707 198.136C85.1012 197.829 85.4518 197.676 85.9225 197.676C86.3893 197.676 86.7369 197.825 86.9654 198.124C87.1959 198.423 87.3141 198.87 87.3199 199.466V200.204ZM86.608 199.407C86.608 199.007 86.5533 198.714 86.4439 198.528C86.3346 198.341 86.1607 198.247 85.9225 198.247C85.69 198.247 85.5191 198.336 85.4098 198.514C85.3004 198.689 85.2428 198.965 85.2369 199.34V200.307C85.2369 200.705 85.2926 201.002 85.4039 201.197C85.5152 201.393 85.69 201.49 85.9283 201.49C86.1568 201.49 86.3258 201.4 86.4352 201.221C86.5445 201.039 86.6021 200.756 86.608 200.371V199.407Z" fill="#A4AFB7"/>
<path d="M172.399 88.8867C172.399 88.7207 172.347 88.584 172.241 88.4766C172.136 88.3672 171.96 88.2695 171.714 88.1836C171.468 88.0957 171.276 88.0146 171.14 87.9404C170.685 87.6963 170.457 87.335 170.457 86.8564C170.457 86.5322 170.556 86.2656 170.753 86.0566C170.95 85.8477 171.218 85.7236 171.556 85.6846V85.0459H172.024V85.6904C172.364 85.7393 172.627 85.8838 172.812 86.124C172.998 86.3623 173.091 86.6729 173.091 87.0557H172.382C172.382 86.8096 172.326 86.6162 172.215 86.4756C172.105 86.333 171.956 86.2617 171.767 86.2617C171.579 86.2617 171.433 86.3125 171.327 86.4141C171.222 86.5156 171.169 86.6611 171.169 86.8506C171.169 87.0205 171.221 87.1572 171.324 87.2607C171.43 87.3623 171.607 87.459 171.857 87.5508C172.107 87.6426 172.304 87.7275 172.446 87.8057C172.589 87.8838 172.709 87.9736 172.807 88.0752C172.904 88.1748 172.979 88.29 173.032 88.4209C173.085 88.5518 173.111 88.7051 173.111 88.8809C173.111 89.2109 173.01 89.4785 172.807 89.6836C172.605 89.8887 172.324 90.0098 171.963 90.0469V90.6182H171.497V90.0498C171.11 90.0068 170.812 89.8682 170.604 89.6338C170.396 89.3994 170.293 89.0889 170.293 88.7021H171.005C171.005 88.9482 171.066 89.1387 171.189 89.2734C171.314 89.4082 171.49 89.4756 171.717 89.4756C171.939 89.4756 172.108 89.4219 172.224 89.3145C172.341 89.207 172.399 89.0645 172.399 88.8867ZM176.298 90H173.429V89.5107L174.85 87.9609C175.055 87.7324 175.201 87.542 175.287 87.3896C175.375 87.2354 175.419 87.0811 175.419 86.9268C175.419 86.7236 175.361 86.5596 175.246 86.4346C175.133 86.3096 174.979 86.2471 174.786 86.2471C174.555 86.2471 174.377 86.3174 174.25 86.458C174.123 86.5986 174.059 86.791 174.059 87.0352H173.347C173.347 86.7754 173.406 86.542 173.523 86.335C173.642 86.126 173.811 85.9639 174.03 85.8486C174.251 85.7334 174.505 85.6758 174.792 85.6758C175.206 85.6758 175.532 85.7803 175.77 85.9893C176.011 86.1963 176.131 86.4834 176.131 86.8506C176.131 87.0635 176.07 87.2871 175.949 87.5215C175.83 87.7539 175.634 88.0186 175.36 88.3154L174.317 89.4316H176.298V90ZM179.408 90H176.54V89.5107L177.961 87.9609C178.166 87.7324 178.311 87.542 178.397 87.3896C178.485 87.2354 178.529 87.0811 178.529 86.9268C178.529 86.7236 178.471 86.5596 178.356 86.4346C178.243 86.3096 178.089 86.2471 177.896 86.2471C177.666 86.2471 177.487 86.3174 177.36 86.458C177.233 86.5986 177.17 86.791 177.17 87.0352H176.458C176.458 86.7754 176.516 86.542 176.633 86.335C176.753 86.126 176.921 85.9639 177.14 85.8486C177.361 85.7334 177.615 85.6758 177.902 85.6758C178.316 85.6758 178.642 85.7803 178.88 85.9893C179.121 86.1963 179.241 86.4834 179.241 86.8506C179.241 87.0635 179.18 87.2871 179.059 87.5215C178.94 87.7539 178.744 88.0186 178.47 88.3154L177.427 89.4316H179.408V90Z" fill="#A4AFB7"/>
<path d="M172.399 144.887C172.399 144.721 172.347 144.584 172.241 144.477C172.136 144.367 171.96 144.27 171.714 144.184C171.468 144.096 171.276 144.015 171.14 143.94C170.685 143.696 170.457 143.335 170.457 142.856C170.457 142.532 170.556 142.266 170.753 142.057C170.95 141.848 171.218 141.724 171.556 141.685V141.046H172.024V141.69C172.364 141.739 172.627 141.884 172.812 142.124C172.998 142.362 173.091 142.673 173.091 143.056H172.382C172.382 142.81 172.326 142.616 172.215 142.476C172.105 142.333 171.956 142.262 171.767 142.262C171.579 142.262 171.433 142.312 171.327 142.414C171.222 142.516 171.169 142.661 171.169 142.851C171.169 143.021 171.221 143.157 171.324 143.261C171.43 143.362 171.607 143.459 171.857 143.551C172.107 143.643 172.304 143.728 172.446 143.806C172.589 143.884 172.709 143.974 172.807 144.075C172.904 144.175 172.979 144.29 173.032 144.421C173.085 144.552 173.111 144.705 173.111 144.881C173.111 145.211 173.01 145.479 172.807 145.684C172.605 145.889 172.324 146.01 171.963 146.047V146.618H171.497V146.05C171.11 146.007 170.812 145.868 170.604 145.634C170.396 145.399 170.293 145.089 170.293 144.702H171.005C171.005 144.948 171.066 145.139 171.189 145.273C171.314 145.408 171.49 145.476 171.717 145.476C171.939 145.476 172.108 145.422 172.224 145.314C172.341 145.207 172.399 145.064 172.399 144.887ZM176.298 146H173.429V145.511L174.85 143.961C175.055 143.732 175.201 143.542 175.287 143.39C175.375 143.235 175.419 143.081 175.419 142.927C175.419 142.724 175.361 142.56 175.246 142.435C175.133 142.31 174.979 142.247 174.786 142.247C174.555 142.247 174.377 142.317 174.25 142.458C174.123 142.599 174.059 142.791 174.059 143.035H173.347C173.347 142.775 173.406 142.542 173.523 142.335C173.642 142.126 173.811 141.964 174.03 141.849C174.251 141.733 174.505 141.676 174.792 141.676C175.206 141.676 175.532 141.78 175.77 141.989C176.011 142.196 176.131 142.483 176.131 142.851C176.131 143.063 176.07 143.287 175.949 143.521C175.83 143.754 175.634 144.019 175.36 144.315L174.317 145.432H176.298V146ZM179.408 146H176.54V145.511L177.961 143.961C178.166 143.732 178.311 143.542 178.397 143.39C178.485 143.235 178.529 143.081 178.529 142.927C178.529 142.724 178.471 142.56 178.356 142.435C178.243 142.31 178.089 142.247 177.896 142.247C177.666 142.247 177.487 142.317 177.36 142.458C177.233 142.599 177.17 142.791 177.17 143.035H176.458C176.458 142.775 176.516 142.542 176.633 142.335C176.753 142.126 176.921 141.964 177.14 141.849C177.361 141.733 177.615 141.676 177.902 141.676C178.316 141.676 178.642 141.78 178.88 141.989C179.121 142.196 179.241 142.483 179.241 142.851C179.241 143.063 179.18 143.287 179.059 143.521C178.94 143.754 178.744 144.019 178.47 144.315L177.427 145.432H179.408V146Z" fill="#A4AFB7"/>
<path d="M172.399 200.887C172.399 200.721 172.347 200.584 172.241 200.477C172.136 200.367 171.96 200.27 171.714 200.184C171.468 200.096 171.276 200.015 171.14 199.94C170.685 199.696 170.457 199.335 170.457 198.856C170.457 198.532 170.556 198.266 170.753 198.057C170.95 197.848 171.218 197.724 171.556 197.685V197.046H172.024V197.69C172.364 197.739 172.627 197.884 172.812 198.124C172.998 198.362 173.091 198.673 173.091 199.056H172.382C172.382 198.81 172.326 198.616 172.215 198.476C172.105 198.333 171.956 198.262 171.767 198.262C171.579 198.262 171.433 198.312 171.327 198.414C171.222 198.516 171.169 198.661 171.169 198.851C171.169 199.021 171.221 199.157 171.324 199.261C171.43 199.362 171.607 199.459 171.857 199.551C172.107 199.643 172.304 199.728 172.446 199.806C172.589 199.884 172.709 199.974 172.807 200.075C172.904 200.175 172.979 200.29 173.032 200.421C173.085 200.552 173.111 200.705 173.111 200.881C173.111 201.211 173.01 201.479 172.807 201.684C172.605 201.889 172.324 202.01 171.963 202.047V202.618H171.497V202.05C171.11 202.007 170.812 201.868 170.604 201.634C170.396 201.399 170.293 201.089 170.293 200.702H171.005C171.005 200.948 171.066 201.139 171.189 201.273C171.314 201.408 171.49 201.476 171.717 201.476C171.939 201.476 172.108 201.422 172.224 201.314C172.341 201.207 172.399 201.064 172.399 200.887ZM176.298 202H173.429V201.511L174.85 199.961C175.055 199.732 175.201 199.542 175.287 199.39C175.375 199.235 175.419 199.081 175.419 198.927C175.419 198.724 175.361 198.56 175.246 198.435C175.133 198.31 174.979 198.247 174.786 198.247C174.555 198.247 174.377 198.317 174.25 198.458C174.123 198.599 174.059 198.791 174.059 199.035H173.347C173.347 198.775 173.406 198.542 173.523 198.335C173.642 198.126 173.811 197.964 174.03 197.849C174.251 197.733 174.505 197.676 174.792 197.676C175.206 197.676 175.532 197.78 175.77 197.989C176.011 198.196 176.131 198.483 176.131 198.851C176.131 199.063 176.07 199.287 175.949 199.521C175.83 199.754 175.634 200.019 175.36 200.315L174.317 201.432H176.298V202ZM179.408 202H176.54V201.511L177.961 199.961C178.166 199.732 178.311 199.542 178.397 199.39C178.485 199.235 178.529 199.081 178.529 198.927C178.529 198.724 178.471 198.56 178.356 198.435C178.243 198.31 178.089 198.247 177.896 198.247C177.666 198.247 177.487 198.317 177.36 198.458C177.233 198.599 177.17 198.791 177.17 199.035H176.458C176.458 198.775 176.516 198.542 176.633 198.335C176.753 198.126 176.921 197.964 177.14 197.849C177.361 197.733 177.615 197.676 177.902 197.676C178.316 197.676 178.642 197.78 178.88 197.989C179.121 198.196 179.241 198.483 179.241 198.851C179.241 199.063 179.18 199.287 179.059 199.521C178.94 199.754 178.744 200.019 178.47 200.315L177.427 201.432H179.408V202Z" fill="#A4AFB7"/>
<path d="M126.399 88.8867C126.399 88.7207 126.347 88.584 126.241 88.4766C126.136 88.3672 125.96 88.2695 125.714 88.1836C125.468 88.0957 125.276 88.0146 125.14 87.9404C124.685 87.6963 124.457 87.335 124.457 86.8564C124.457 86.5322 124.556 86.2656 124.753 86.0566C124.95 85.8477 125.218 85.7236 125.556 85.6846V85.0459H126.024V85.6904C126.364 85.7393 126.627 85.8838 126.812 86.124C126.998 86.3623 127.091 86.6729 127.091 87.0557H126.382C126.382 86.8096 126.326 86.6162 126.215 86.4756C126.105 86.333 125.956 86.2617 125.767 86.2617C125.579 86.2617 125.433 86.3125 125.327 86.4141C125.222 86.5156 125.169 86.6611 125.169 86.8506C125.169 87.0205 125.221 87.1572 125.324 87.2607C125.43 87.3623 125.607 87.459 125.857 87.5508C126.107 87.6426 126.304 87.7275 126.446 87.8057C126.589 87.8838 126.709 87.9736 126.807 88.0752C126.904 88.1748 126.979 88.29 127.032 88.4209C127.085 88.5518 127.111 88.7051 127.111 88.8809C127.111 89.2109 127.01 89.4785 126.807 89.6836C126.605 89.8887 126.324 90.0098 125.963 90.0469V90.6182H125.497V90.0498C125.11 90.0068 124.812 89.8682 124.604 89.6338C124.396 89.3994 124.293 89.0889 124.293 88.7021H125.005C125.005 88.9482 125.066 89.1387 125.189 89.2734C125.314 89.4082 125.49 89.4756 125.717 89.4756C125.939 89.4756 126.108 89.4219 126.224 89.3145C126.341 89.207 126.399 89.0645 126.399 88.8867ZM129.357 90H128.648V86.5752L127.602 86.9326V86.332L129.266 85.7197H129.357V90ZM130.73 87.8848L130.962 85.7344H133.253V86.3496H131.553L131.436 87.3691C131.633 87.2559 131.856 87.1992 132.104 87.1992C132.51 87.1992 132.826 87.3291 133.05 87.5889C133.277 87.8486 133.39 88.1982 133.39 88.6377C133.39 89.0713 133.265 89.417 133.015 89.6748C132.765 89.9307 132.422 90.0586 131.987 90.0586C131.596 90.0586 131.272 89.9482 131.014 89.7275C130.758 89.5049 130.62 89.2119 130.598 88.8486H131.287C131.314 89.0557 131.388 89.2148 131.509 89.3262C131.63 89.4355 131.789 89.4902 131.984 89.4902C132.203 89.4902 132.373 89.4121 132.494 89.2559C132.617 89.0996 132.678 88.8867 132.678 88.6172C132.678 88.3574 132.611 88.1523 132.476 88.002C132.341 87.8496 132.156 87.7734 131.92 87.7734C131.791 87.7734 131.681 87.791 131.591 87.8262C131.502 87.8594 131.404 87.9258 131.298 88.0254L130.73 87.8848Z" fill="#A4AFB7"/>
<path d="M126.399 144.887C126.399 144.721 126.347 144.584 126.241 144.477C126.136 144.367 125.96 144.27 125.714 144.184C125.468 144.096 125.276 144.015 125.14 143.94C124.685 143.696 124.457 143.335 124.457 142.856C124.457 142.532 124.556 142.266 124.753 142.057C124.95 141.848 125.218 141.724 125.556 141.685V141.046H126.024V141.69C126.364 141.739 126.627 141.884 126.812 142.124C126.998 142.362 127.091 142.673 127.091 143.056H126.382C126.382 142.81 126.326 142.616 126.215 142.476C126.105 142.333 125.956 142.262 125.767 142.262C125.579 142.262 125.433 142.312 125.327 142.414C125.222 142.516 125.169 142.661 125.169 142.851C125.169 143.021 125.221 143.157 125.324 143.261C125.43 143.362 125.607 143.459 125.857 143.551C126.107 143.643 126.304 143.728 126.446 143.806C126.589 143.884 126.709 143.974 126.807 144.075C126.904 144.175 126.979 144.29 127.032 144.421C127.085 144.552 127.111 144.705 127.111 144.881C127.111 145.211 127.01 145.479 126.807 145.684C126.605 145.889 126.324 146.01 125.963 146.047V146.618H125.497V146.05C125.11 146.007 124.812 145.868 124.604 145.634C124.396 145.399 124.293 145.089 124.293 144.702H125.005C125.005 144.948 125.066 145.139 125.189 145.273C125.314 145.408 125.49 145.476 125.717 145.476C125.939 145.476 126.108 145.422 126.224 145.314C126.341 145.207 126.399 145.064 126.399 144.887ZM129.357 146H128.648V142.575L127.602 142.933V142.332L129.266 141.72H129.357V146ZM130.73 143.885L130.962 141.734H133.253V142.35H131.553L131.436 143.369C131.633 143.256 131.856 143.199 132.104 143.199C132.51 143.199 132.826 143.329 133.05 143.589C133.277 143.849 133.39 144.198 133.39 144.638C133.39 145.071 133.265 145.417 133.015 145.675C132.765 145.931 132.422 146.059 131.987 146.059C131.596 146.059 131.272 145.948 131.014 145.728C130.758 145.505 130.62 145.212 130.598 144.849H131.287C131.314 145.056 131.388 145.215 131.509 145.326C131.63 145.436 131.789 145.49 131.984 145.49C132.203 145.49 132.373 145.412 132.494 145.256C132.617 145.1 132.678 144.887 132.678 144.617C132.678 144.357 132.611 144.152 132.476 144.002C132.341 143.85 132.156 143.773 131.92 143.773C131.791 143.773 131.681 143.791 131.591 143.826C131.502 143.859 131.404 143.926 131.298 144.025L130.73 143.885Z" fill="#A4AFB7"/>
<path d="M126.399 200.887C126.399 200.721 126.347 200.584 126.241 200.477C126.136 200.367 125.96 200.27 125.714 200.184C125.468 200.096 125.276 200.015 125.14 199.94C124.685 199.696 124.457 199.335 124.457 198.856C124.457 198.532 124.556 198.266 124.753 198.057C124.95 197.848 125.218 197.724 125.556 197.685V197.046H126.024V197.69C126.364 197.739 126.627 197.884 126.812 198.124C126.998 198.362 127.091 198.673 127.091 199.056H126.382C126.382 198.81 126.326 198.616 126.215 198.476C126.105 198.333 125.956 198.262 125.767 198.262C125.579 198.262 125.433 198.312 125.327 198.414C125.222 198.516 125.169 198.661 125.169 198.851C125.169 199.021 125.221 199.157 125.324 199.261C125.43 199.362 125.607 199.459 125.857 199.551C126.107 199.643 126.304 199.728 126.446 199.806C126.589 199.884 126.709 199.974 126.807 200.075C126.904 200.175 126.979 200.29 127.032 200.421C127.085 200.552 127.111 200.705 127.111 200.881C127.111 201.211 127.01 201.479 126.807 201.684C126.605 201.889 126.324 202.01 125.963 202.047V202.618H125.497V202.05C125.11 202.007 124.812 201.868 124.604 201.634C124.396 201.399 124.293 201.089 124.293 200.702H125.005C125.005 200.948 125.066 201.139 125.189 201.273C125.314 201.408 125.49 201.476 125.717 201.476C125.939 201.476 126.108 201.422 126.224 201.314C126.341 201.207 126.399 201.064 126.399 200.887ZM129.357 202H128.648V198.575L127.602 198.933V198.332L129.266 197.72H129.357V202ZM130.73 199.885L130.962 197.734H133.253V198.35H131.553L131.436 199.369C131.633 199.256 131.856 199.199 132.104 199.199C132.51 199.199 132.826 199.329 133.05 199.589C133.277 199.849 133.39 200.198 133.39 200.638C133.39 201.071 133.265 201.417 133.015 201.675C132.765 201.931 132.422 202.059 131.987 202.059C131.596 202.059 131.272 201.948 131.014 201.728C130.758 201.505 130.62 201.212 130.598 200.849H131.287C131.314 201.056 131.388 201.215 131.509 201.326C131.63 201.436 131.789 201.49 131.984 201.49C132.203 201.49 132.373 201.412 132.494 201.256C132.617 201.1 132.678 200.887 132.678 200.617C132.678 200.357 132.611 200.152 132.476 200.002C132.341 199.85 132.156 199.773 131.92 199.773C131.791 199.773 131.681 199.791 131.591 199.826C131.502 199.859 131.404 199.926 131.298 200.025L130.73 199.885Z" fill="#A4AFB7"/>
<rect x="22" y="43" width="39" height="2" rx="1" fill="#D5DADF"/>
<rect x="22" y="93" width="39" height="2" rx="1" fill="#D5DADF"/>
<rect x="22" y="63" width="36" height="2" rx="1" fill="#D5DADF"/>
<rect x="22" y="113" width="36" height="2" rx="1" fill="#D5DADF"/>
<rect x="22" y="83" width="36" height="2" rx="1" fill="#D5DADF"/>
<rect x="22" y="133" width="36" height="2" rx="1" fill="#D5DADF"/>
<rect x="22" y="53" width="33" height="2" rx="1" fill="#D5DADF"/>
<rect x="22" y="103" width="33" height="2" rx="1" fill="#D5DADF"/>
<rect x="22" y="73" width="33" height="2" rx="1" fill="#D5DADF"/>
<rect x="22" y="123" width="33" height="2" rx="1" fill="#D5DADF"/>
<rect width="28" height="2" rx="1" transform="matrix(1 0 0 -1 78 82)" fill="#D5DADF"/>
<rect width="28" height="2" rx="1" transform="matrix(1 0 0 -1 78 138)" fill="#D5DADF"/>
<rect width="28" height="2" rx="1" transform="matrix(1 0 0 -1 78 194)" fill="#D5DADF"/>
<rect width="28" height="2" rx="1" transform="matrix(1 0 0 -1 170 82)" fill="#D5DADF"/>
<rect width="28" height="2" rx="1" transform="matrix(1 0 0 -1 170 138)" fill="#D5DADF"/>
<rect width="28" height="2" rx="1" transform="matrix(1 0 0 -1 170 194)" fill="#D5DADF"/>
<rect width="28" height="2" rx="1" transform="matrix(1 0 0 -1 124 82)" fill="#D5DADF"/>
<rect width="28" height="2" rx="1" transform="matrix(1 0 0 -1 124 138)" fill="#D5DADF"/>
<rect width="28" height="2" rx="1" transform="matrix(1 0 0 -1 124 194)" fill="#D5DADF"/>
<rect width="36" height="2" rx="1" transform="matrix(1 0 0 -1 78 76)" fill="#D5DADF"/>
<rect width="36" height="2" rx="1" transform="matrix(1 0 0 -1 78 132)" fill="#D5DADF"/>
<rect width="36" height="2" rx="1" transform="matrix(1 0 0 -1 78 188)" fill="#D5DADF"/>
<rect width="36" height="2" rx="1" transform="matrix(1 0 0 -1 170 76)" fill="#D5DADF"/>
<rect width="36" height="2" rx="1" transform="matrix(1 0 0 -1 170 132)" fill="#D5DADF"/>
<rect width="36" height="2" rx="1" transform="matrix(1 0 0 -1 170 188)" fill="#D5DADF"/>
<rect width="36" height="2" rx="1" transform="matrix(1 0 0 -1 124 76)" fill="#D5DADF"/>
<rect width="36" height="2" rx="1" transform="matrix(1 0 0 -1 124 132)" fill="#D5DADF"/>
<rect width="36" height="2" rx="1" transform="matrix(1 0 0 -1 124 188)" fill="#D5DADF"/>
<mask id="mask0" mask-type="alpha" maskUnits="userSpaceOnUse" x="78" y="43" width="38" height="25">
<path fill-rule="evenodd" clip-rule="evenodd" d="M78 43H115.687V68H78V43Z" fill="white"/>
</mask>
<g mask="url(#mask0)">
<rect x="77.3535" y="42.8481" width="39.8401" height="26.0088" fill="#E6E9EC"/>
<mask id="mask1" mask-type="alpha" maskUnits="userSpaceOnUse" x="77" y="42" width="41" height="27">
<rect x="77.3535" y="42.8481" width="39.8401" height="26.0088" fill="white"/>
</mask>
<g mask="url(#mask1)">
<path d="M123.588 71.1911C123.588 71.1911 113.151 51.3424 105.253 49.7305C97.3549 48.1186 94.2614 63.7362 89.5351 61.6648C88.6572 61.2801 83.8176 55.7863 79.9102 57.3276C77.0997 58.4362 71.1094 71.2637 71.1094 71.2637H123.588V71.1911Z" fill="#F8F9FA"/>
<path d="M89.0631 56.0466C89.9716 56.0466 90.7082 55.3191 90.7082 54.4217C90.7082 53.5244 89.9716 52.7969 89.0631 52.7969C88.1545 52.7969 87.418 53.5244 87.418 54.4217C87.418 55.3191 88.1545 56.0466 89.0631 56.0466Z" fill="#F8F9FA"/>
</g>
</g>
<mask id="mask2" mask-type="alpha" maskUnits="userSpaceOnUse" x="78" y="99" width="38" height="25">
<path fill-rule="evenodd" clip-rule="evenodd" d="M78 99H115.687V124H78V99Z" fill="white"/>
</mask>
<g mask="url(#mask2)">
<rect x="77.3535" y="98.8481" width="39.8401" height="26.0088" fill="#E6E9EC"/>
<mask id="mask3" mask-type="alpha" maskUnits="userSpaceOnUse" x="77" y="98" width="41" height="27">
<rect x="77.3535" y="98.8481" width="39.8401" height="26.0088" fill="white"/>
</mask>
<g mask="url(#mask3)">
<path d="M123.588 127.191C123.588 127.191 113.151 107.342 105.253 105.73C97.3549 104.119 94.2614 119.736 89.5351 117.665C88.6572 117.28 83.8176 111.786 79.9102 113.328C77.0997 114.436 71.1094 127.264 71.1094 127.264H123.588V127.191Z" fill="#F8F9FA"/>
<path d="M89.0631 112.047C89.9716 112.047 90.7082 111.319 90.7082 110.422C90.7082 109.524 89.9716 108.797 89.0631 108.797C88.1545 108.797 87.418 109.524 87.418 110.422C87.418 111.319 88.1545 112.047 89.0631 112.047Z" fill="#F8F9FA"/>
</g>
</g>
<mask id="mask4" mask-type="alpha" maskUnits="userSpaceOnUse" x="78" y="155" width="38" height="25">
<path fill-rule="evenodd" clip-rule="evenodd" d="M78 155H115.687V180H78V155Z" fill="white"/>
</mask>
<g mask="url(#mask4)">
<rect x="77.3535" y="154.848" width="39.8401" height="26.0088" fill="#E6E9EC"/>
<mask id="mask5" mask-type="alpha" maskUnits="userSpaceOnUse" x="77" y="154" width="41" height="27">
<rect x="77.3535" y="154.848" width="39.8401" height="26.0088" fill="white"/>
</mask>
<g mask="url(#mask5)">
<path d="M123.588 183.191C123.588 183.191 113.151 163.342 105.253 161.73C97.3549 160.119 94.2614 175.736 89.5351 173.665C88.6572 173.28 83.8176 167.786 79.9102 169.328C77.0997 170.436 71.1094 183.264 71.1094 183.264H123.588V183.191Z" fill="#F8F9FA"/>
<path d="M89.0631 168.047C89.9716 168.047 90.7082 167.319 90.7082 166.422C90.7082 165.524 89.9716 164.797 89.0631 164.797C88.1545 164.797 87.418 165.524 87.418 166.422C87.418 167.319 88.1545 168.047 89.0631 168.047Z" fill="#F8F9FA"/>
</g>
</g>
<mask id="mask6" mask-type="alpha" maskUnits="userSpaceOnUse" x="78" y="211" width="38" height="11">
<path fill-rule="evenodd" clip-rule="evenodd" d="M78 211H116V222H78V211Z" fill="white"/>
</mask>
<g mask="url(#mask6)">
<rect x="77.3535" y="210.848" width="39.8401" height="26.0088" fill="#E6E9EC"/>
<mask id="mask7" mask-type="alpha" maskUnits="userSpaceOnUse" x="77" y="210" width="41" height="27">
<rect x="77.3535" y="210.848" width="39.8401" height="26.0088" fill="white"/>
</mask>
<g mask="url(#mask7)">
<path d="M123.588 239.191C123.588 239.191 113.151 219.342 105.253 217.73C97.3549 216.119 94.2614 231.736 89.5351 229.665C88.6572 229.28 83.8176 223.786 79.9102 225.328C77.0997 226.436 71.1094 239.264 71.1094 239.264H123.588V239.191Z" fill="#F8F9FA"/>
<path d="M89.0631 224.047C89.9716 224.047 90.7082 223.319 90.7082 222.422C90.7082 221.524 89.9716 220.797 89.0631 220.797C88.1545 220.797 87.418 221.524 87.418 222.422C87.418 223.319 88.1545 224.047 89.0631 224.047Z" fill="#F8F9FA"/>
</g>
</g>
<mask id="mask8" mask-type="alpha" maskUnits="userSpaceOnUse" x="124" y="211" width="38" height="11">
<path fill-rule="evenodd" clip-rule="evenodd" d="M124 211H162V222H124V211Z" fill="white"/>
</mask>
<g mask="url(#mask8)">
<rect x="123.354" y="210.848" width="39.8401" height="26.0088" fill="#E6E9EC"/>
<mask id="mask9" mask-type="alpha" maskUnits="userSpaceOnUse" x="123" y="210" width="41" height="27">
<rect x="123.354" y="210.848" width="39.8401" height="26.0088" fill="white"/>
</mask>
<g mask="url(#mask9)">
<path d="M169.588 239.191C169.588 239.191 159.151 219.342 151.253 217.73C143.355 216.119 140.261 231.736 135.535 229.665C134.657 229.28 129.818 223.786 125.91 225.328C123.1 226.436 117.109 239.264 117.109 239.264H169.588V239.191Z" fill="#F8F9FA"/>
<path d="M135.063 224.047C135.972 224.047 136.708 223.319 136.708 222.422C136.708 221.524 135.972 220.797 135.063 220.797C134.155 220.797 133.418 221.524 133.418 222.422C133.418 223.319 134.155 224.047 135.063 224.047Z" fill="#F8F9FA"/>
</g>
</g>
<mask id="mask10" mask-type="alpha" maskUnits="userSpaceOnUse" x="170" y="211" width="38" height="11">
<path fill-rule="evenodd" clip-rule="evenodd" d="M170 211H208V222H170V211Z" fill="white"/>
</mask>
<g mask="url(#mask10)">
<rect x="169.354" y="210.848" width="39.8401" height="26.0088" fill="#E6E9EC"/>
<mask id="mask11" mask-type="alpha" maskUnits="userSpaceOnUse" x="169" y="210" width="41" height="27">
<rect x="169.354" y="210.848" width="39.8401" height="26.0088" fill="white"/>
</mask>
<g mask="url(#mask11)">
<path d="M215.588 239.191C215.588 239.191 205.151 219.342 197.253 217.73C189.355 216.119 186.261 231.736 181.535 229.665C180.657 229.28 175.818 223.786 171.91 225.328C169.1 226.436 163.109 239.264 163.109 239.264H215.588V239.191Z" fill="#F8F9FA"/>
<path d="M181.063 224.047C181.972 224.047 182.708 223.319 182.708 222.422C182.708 221.524 181.972 220.797 181.063 220.797C180.155 220.797 179.418 221.524 179.418 222.422C179.418 223.319 180.155 224.047 181.063 224.047Z" fill="#F8F9FA"/>
</g>
</g>
<mask id="mask12" mask-type="alpha" maskUnits="userSpaceOnUse" x="170" y="43" width="38" height="25">
<path fill-rule="evenodd" clip-rule="evenodd" d="M170 43H207.687V68H170V43Z" fill="white"/>
</mask>
<g mask="url(#mask12)">
<rect x="169.354" y="42.8481" width="39.8401" height="26.0088" fill="#E6E9EC"/>
<mask id="mask13" mask-type="alpha" maskUnits="userSpaceOnUse" x="169" y="42" width="41" height="27">
<rect x="169.354" y="42.8481" width="39.8401" height="26.0088" fill="white"/>
</mask>
<g mask="url(#mask13)">
<path d="M215.588 71.1911C215.588 71.1911 205.151 51.3424 197.253 49.7305C189.355 48.1186 186.261 63.7362 181.535 61.6648C180.657 61.2801 175.818 55.7863 171.91 57.3276C169.1 58.4362 163.109 71.2637 163.109 71.2637H215.588V71.1911Z" fill="#F8F9FA"/>
<path d="M181.063 56.0466C181.972 56.0466 182.708 55.3191 182.708 54.4217C182.708 53.5244 181.972 52.7969 181.063 52.7969C180.155 52.7969 179.418 53.5244 179.418 54.4217C179.418 55.3191 180.155 56.0466 181.063 56.0466Z" fill="#F8F9FA"/>
</g>
</g>
<mask id="mask14" mask-type="alpha" maskUnits="userSpaceOnUse" x="170" y="99" width="38" height="25">
<path fill-rule="evenodd" clip-rule="evenodd" d="M170 99H207.687V124H170V99Z" fill="white"/>
</mask>
<g mask="url(#mask14)">
<rect x="169.354" y="98.8481" width="39.8401" height="26.0088" fill="#E6E9EC"/>
<mask id="mask15" mask-type="alpha" maskUnits="userSpaceOnUse" x="169" y="98" width="41" height="27">
<rect x="169.354" y="98.8481" width="39.8401" height="26.0088" fill="white"/>
</mask>
<g mask="url(#mask15)">
<path d="M215.588 127.191C215.588 127.191 205.151 107.342 197.253 105.73C189.355 104.119 186.261 119.736 181.535 117.665C180.657 117.28 175.818 111.786 171.91 113.328C169.1 114.436 163.109 127.264 163.109 127.264H215.588V127.191Z" fill="#F8F9FA"/>
<path d="M181.063 112.047C181.972 112.047 182.708 111.319 182.708 110.422C182.708 109.524 181.972 108.797 181.063 108.797C180.155 108.797 179.418 109.524 179.418 110.422C179.418 111.319 180.155 112.047 181.063 112.047Z" fill="#F8F9FA"/>
</g>
</g>
<mask id="mask16" mask-type="alpha" maskUnits="userSpaceOnUse" x="170" y="155" width="38" height="25">
<path fill-rule="evenodd" clip-rule="evenodd" d="M170 155H207.687V180H170V155Z" fill="white"/>
</mask>
<g mask="url(#mask16)">
<rect x="169.354" y="154.848" width="39.8401" height="26.0088" fill="#E6E9EC"/>
<mask id="mask17" mask-type="alpha" maskUnits="userSpaceOnUse" x="169" y="154" width="41" height="27">
<rect x="169.354" y="154.848" width="39.8401" height="26.0088" fill="white"/>
</mask>
<g mask="url(#mask17)">
<path d="M215.588 183.191C215.588 183.191 205.151 163.342 197.253 161.73C189.355 160.119 186.261 175.736 181.535 173.665C180.657 173.28 175.818 167.786 171.91 169.328C169.1 170.436 163.109 183.264 163.109 183.264H215.588V183.191Z" fill="#F8F9FA"/>
<path d="M181.063 168.047C181.972 168.047 182.708 167.319 182.708 166.422C182.708 165.524 181.972 164.797 181.063 164.797C180.155 164.797 179.418 165.524 179.418 166.422C179.418 167.319 180.155 168.047 181.063 168.047Z" fill="#F8F9FA"/>
</g>
</g>
<mask id="mask18" mask-type="alpha" maskUnits="userSpaceOnUse" x="124" y="43" width="38" height="25">
<path fill-rule="evenodd" clip-rule="evenodd" d="M124 43H161.687V68H124V43Z" fill="white"/>
</mask>
<g mask="url(#mask18)">
<rect x="123.354" y="42.8481" width="39.8401" height="26.0088" fill="#E6E9EC"/>
<mask id="mask19" mask-type="alpha" maskUnits="userSpaceOnUse" x="123" y="42" width="41" height="27">
<rect x="123.354" y="42.8481" width="39.8401" height="26.0088" fill="white"/>
</mask>
<g mask="url(#mask19)">
<path d="M169.588 71.1911C169.588 71.1911 159.151 51.3424 151.253 49.7305C143.355 48.1186 140.261 63.7362 135.535 61.6648C134.657 61.2801 129.818 55.7863 125.91 57.3276C123.1 58.4362 117.109 71.2637 117.109 71.2637H169.588V71.1911Z" fill="#F8F9FA"/>
<path d="M135.063 56.0466C135.972 56.0466 136.708 55.3191 136.708 54.4217C136.708 53.5244 135.972 52.7969 135.063 52.7969C134.155 52.7969 133.418 53.5244 133.418 54.4217C133.418 55.3191 134.155 56.0466 135.063 56.0466Z" fill="#F8F9FA"/>
</g>
</g>
<mask id="mask20" mask-type="alpha" maskUnits="userSpaceOnUse" x="124" y="99" width="38" height="25">
<path fill-rule="evenodd" clip-rule="evenodd" d="M124 99H161.687V124H124V99Z" fill="white"/>
</mask>
<g mask="url(#mask20)">
<rect x="123.354" y="98.8481" width="39.8401" height="26.0088" fill="#E6E9EC"/>
<mask id="mask21" mask-type="alpha" maskUnits="userSpaceOnUse" x="123" y="98" width="41" height="27">
<rect x="123.354" y="98.8481" width="39.8401" height="26.0088" fill="white"/>
</mask>
<g mask="url(#mask21)">
<path d="M169.588 127.191C169.588 127.191 159.151 107.342 151.253 105.73C143.355 104.119 140.261 119.736 135.535 117.665C134.657 117.28 129.818 111.786 125.91 113.328C123.1 114.436 117.109 127.264 117.109 127.264H169.588V127.191Z" fill="#F8F9FA"/>
<path d="M135.063 112.047C135.972 112.047 136.708 111.319 136.708 110.422C136.708 109.524 135.972 108.797 135.063 108.797C134.155 108.797 133.418 109.524 133.418 110.422C133.418 111.319 134.155 112.047 135.063 112.047Z" fill="#F8F9FA"/>
</g>
</g>
<mask id="mask22" mask-type="alpha" maskUnits="userSpaceOnUse" x="124" y="155" width="38" height="25">
<path fill-rule="evenodd" clip-rule="evenodd" d="M124 155H161.687V180H124V155Z" fill="white"/>
</mask>
<g mask="url(#mask22)">
<rect x="123.354" y="154.848" width="39.8401" height="26.0088" fill="#E6E9EC"/>
<mask id="mask23" mask-type="alpha" maskUnits="userSpaceOnUse" x="123" y="154" width="41" height="27">
<rect x="123.354" y="154.848" width="39.8401" height="26.0088" fill="white"/>
</mask>
<g mask="url(#mask23)">
<path d="M169.588 183.191C169.588 183.191 159.151 163.342 151.253 161.73C143.355 160.119 140.261 175.736 135.535 173.665C134.657 173.28 129.818 167.786 125.91 169.328C123.1 170.436 117.109 183.264 117.109 183.264H169.588V183.191Z" fill="#F8F9FA"/>
<path d="M135.063 168.047C135.972 168.047 136.708 167.319 136.708 166.422C136.708 165.524 135.972 164.797 135.063 164.797C134.155 164.797 133.418 165.524 133.418 166.422C133.418 167.319 134.155 168.047 135.063 168.047Z" fill="#F8F9FA"/>
</g>
</g>
</svg>
assets/images/app/site-editor/footer.svg000064400000010347151327220410014344 0ustar00<svg width="229" height="222" viewBox="0 0 229 222" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect x="0.327703" y="0.327703" width="228.345" height="221.345" fill="white" stroke="#F1F3F5" stroke-width="0.655405"/>
<rect x="0.327703" y="182.328" width="228.345" height="39.3446" fill="#F1F3F5" stroke="#F1F3F5" stroke-width="0.655405"/>
<rect x="62" y="192" width="26" height="2" rx="1" fill="#D5DADF"/>
<rect x="62" y="204" width="26" height="2" rx="1" fill="#D5DADF"/>
<rect x="138" y="192" width="26" height="2" rx="1" fill="#D5DADF"/>
<rect x="138" y="204" width="26" height="2" rx="1" fill="#D5DADF"/>
<rect x="101" y="198" width="26" height="2" rx="1" fill="#D5DADF"/>
<rect x="101" y="210" width="26" height="2" rx="1" fill="#D5DADF"/>
<rect x="178" y="198" width="26" height="2" rx="1" fill="#D5DADF"/>
<rect x="178" y="210" width="26" height="2" rx="1" fill="#D5DADF"/>
<rect x="101" y="192" width="22" height="2" rx="1" fill="#D5DADF"/>
<rect x="101" y="204" width="22" height="2" rx="1" fill="#D5DADF"/>
<rect x="178" y="192" width="22" height="2" rx="1" fill="#D5DADF"/>
<rect x="178" y="204" width="22" height="2" rx="1" fill="#D5DADF"/>
<rect x="138" y="198" width="22" height="2" rx="1" fill="#D5DADF"/>
<rect x="138" y="210" width="22" height="2" rx="1" fill="#D5DADF"/>
<rect x="62" y="198" width="22" height="2" rx="1" fill="#D5DADF"/>
<rect x="62" y="211" width="22" height="2" rx="1" fill="#D5DADF"/>
<path d="M9.95801 198.014H13.1855V199H8.72266V191.891H9.95801V198.014ZM13.7959 196.31C13.7959 195.792 13.8984 195.326 14.1035 194.913C14.3086 194.496 14.5967 194.177 14.9678 193.956C15.3389 193.731 15.7653 193.619 16.2471 193.619C16.96 193.619 17.5378 193.849 17.9805 194.308C18.4264 194.767 18.6673 195.375 18.7031 196.134L18.708 196.412C18.708 196.933 18.6071 197.398 18.4053 197.809C18.2067 198.219 17.9202 198.536 17.5459 198.761C17.1748 198.985 16.7451 199.098 16.2568 199.098C15.5114 199.098 14.9141 198.85 14.4648 198.355C14.0189 197.857 13.7959 197.195 13.7959 196.368V196.31ZM14.9824 196.412C14.9824 196.956 15.0947 197.382 15.3193 197.691C15.5439 197.997 15.8564 198.15 16.2568 198.15C16.6572 198.15 16.9681 197.994 17.1895 197.682C17.4141 197.369 17.5264 196.912 17.5264 196.31C17.5264 195.776 17.4108 195.353 17.1797 195.04C16.9518 194.728 16.641 194.571 16.2471 194.571C15.8597 194.571 15.5521 194.726 15.3242 195.035C15.0964 195.341 14.9824 195.8 14.9824 196.412ZM19.5039 196.319C19.5039 195.499 19.696 194.845 20.0801 194.356C20.4674 193.865 20.9801 193.619 21.6182 193.619C22.2204 193.619 22.694 193.829 23.0391 194.249L23.0928 193.717H24.1621V198.839C24.1621 199.532 23.9456 200.079 23.5127 200.479C23.083 200.88 22.502 201.08 21.7695 201.08C21.3822 201.08 21.0029 200.999 20.6318 200.836C20.264 200.676 19.984 200.466 19.792 200.206L20.3535 199.493C20.7181 199.926 21.1673 200.143 21.7012 200.143C22.0951 200.143 22.4059 200.035 22.6338 199.82C22.8617 199.609 22.9756 199.296 22.9756 198.883V198.526C22.6338 198.907 22.1781 199.098 21.6084 199.098C20.9899 199.098 20.4837 198.852 20.0898 198.36C19.6992 197.869 19.5039 197.188 19.5039 196.319ZM20.6855 196.422C20.6855 196.952 20.793 197.371 21.0078 197.677C21.2259 197.979 21.527 198.131 21.9111 198.131C22.3896 198.131 22.7445 197.926 22.9756 197.516V195.191C22.751 194.791 22.3994 194.591 21.9209 194.591C21.5303 194.591 21.2259 194.745 21.0078 195.055C20.793 195.364 20.6855 195.82 20.6855 196.422ZM25.1631 196.31C25.1631 195.792 25.2656 195.326 25.4707 194.913C25.6758 194.496 25.9639 194.177 26.335 193.956C26.7061 193.731 27.1325 193.619 27.6143 193.619C28.3271 193.619 28.9049 193.849 29.3477 194.308C29.7936 194.767 30.0345 195.375 30.0703 196.134L30.0752 196.412C30.0752 196.933 29.9743 197.398 29.7725 197.809C29.5739 198.219 29.2874 198.536 28.9131 198.761C28.542 198.985 28.1123 199.098 27.624 199.098C26.8786 199.098 26.2812 198.85 25.832 198.355C25.3861 197.857 25.1631 197.195 25.1631 196.368V196.31ZM26.3496 196.412C26.3496 196.956 26.4619 197.382 26.6865 197.691C26.9111 197.997 27.2236 198.15 27.624 198.15C28.0244 198.15 28.3353 197.994 28.5566 197.682C28.7812 197.369 28.8936 196.912 28.8936 196.31C28.8936 195.776 28.778 195.353 28.5469 195.04C28.319 194.728 28.0081 194.571 27.6143 194.571C27.2269 194.571 26.9193 194.726 26.6914 195.035C26.4635 195.341 26.3496 195.8 26.3496 196.412Z" fill="#A4AFB7"/>
</svg>
assets/images/app/site-editor/single-page.svg000064400000017273151327220410015246 0ustar00<svg width="230" height="222" viewBox="0 0 230 222" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="229" height="222" fill="white"/>
<rect y="172" width="229.13" height="50" fill="#F1F3F5"/>
<path d="M111.147 187.127C111.076 187.886 110.796 188.478 110.308 188.905C109.819 189.328 109.17 189.539 108.359 189.539C107.793 189.539 107.293 189.406 106.86 189.139C106.431 188.869 106.099 188.486 105.864 187.991C105.63 187.497 105.508 186.922 105.498 186.268V185.604C105.498 184.933 105.617 184.342 105.854 183.831C106.092 183.32 106.432 182.926 106.875 182.65C107.321 182.373 107.835 182.235 108.418 182.235C109.202 182.235 109.834 182.448 110.312 182.874C110.791 183.301 111.069 183.903 111.147 184.681H109.917C109.858 184.17 109.709 183.802 109.468 183.577C109.23 183.35 108.88 183.236 108.418 183.236C107.881 183.236 107.467 183.433 107.178 183.826C106.891 184.217 106.745 184.792 106.738 185.55V186.18C106.738 186.948 106.875 187.534 107.148 187.938C107.425 188.341 107.829 188.543 108.359 188.543C108.844 188.543 109.209 188.434 109.453 188.216C109.697 187.998 109.852 187.635 109.917 187.127H111.147ZM117.246 183.328H115.029V189.442H113.804V183.328H111.606V182.332H117.246V183.328ZM121.577 187.786H118.823L118.247 189.442H116.963L119.648 182.332H120.757L123.447 189.442H122.158L121.577 187.786ZM119.17 186.79H121.23L120.2 183.841L119.17 186.79Z" fill="#A4AFB7"/>
<rect x="53.0625" y="198.178" width="123.006" height="10.8535" rx="5.42676" fill="white"/>
<rect x="150.744" y="198.178" width="25.3249" height="10.8535" rx="5.42676" fill="#D5DADF"/>
<rect y="0.509766" width="229.13" height="71.1508" fill="#F1F3F5"/>
<mask id="mask0" mask-type="alpha" maskUnits="userSpaceOnUse" x="0" y="35" width="229" height="85">
<path fill-rule="evenodd" clip-rule="evenodd" d="M0 35H229V120H0V35Z" fill="white"/>
</mask>
<g mask="url(#mask0)">
<rect x="22" y="19.4436" width="185" height="123.096" fill="#E6E9EC"/>
<mask id="mask1" mask-type="alpha" maskUnits="userSpaceOnUse" x="22" y="19" width="185" height="124">
<rect x="22" y="19.4436" width="185" height="123.096" fill="white"/>
</mask>
<g mask="url(#mask1)">
<path d="M236.688 153.587C236.688 153.587 188.224 59.6454 151.548 52.0167C114.873 44.3879 100.508 118.304 78.5612 108.5C74.4848 106.679 52.0116 80.6779 33.8672 87.9728C20.8164 93.2197 -6.99962 153.93 -6.99962 153.93H236.688V153.587Z" fill="#F8F9FA"/>
<path d="M76.3735 81.9096C80.5924 81.9096 84.0126 78.4666 84.0126 74.2193C84.0126 69.9721 80.5924 66.5291 76.3735 66.5291C72.1545 66.5291 68.7344 69.9721 68.7344 74.2193C68.7344 78.4666 72.1545 81.9096 76.3735 81.9096Z" fill="#F8F9FA"/>
</g>
</g>
<path d="M94.958 18.3394V20.981H93.7227V13.8716H96.4424C97.2367 13.8716 97.8665 14.0783 98.332 14.4917C98.8008 14.9051 99.0352 15.452 99.0352 16.1323C99.0352 16.8289 98.8057 17.3709 98.3467 17.7583C97.891 18.1457 97.2513 18.3394 96.4277 18.3394H94.958ZM94.958 17.3481H96.4424C96.8818 17.3481 97.2171 17.2456 97.4482 17.0405C97.6794 16.8322 97.7949 16.5327 97.7949 16.1421C97.7949 15.758 97.6777 15.452 97.4434 15.2241C97.209 14.993 96.8867 14.8742 96.4766 14.8677H94.958V17.3481ZM103.103 20.981C103.05 20.88 103.005 20.7157 102.966 20.4878C102.588 20.8817 102.126 21.0786 101.579 21.0786C101.049 21.0786 100.616 20.9272 100.28 20.6245C99.945 20.3218 99.7773 19.9474 99.7773 19.5015C99.7773 18.9383 99.9857 18.507 100.402 18.2075C100.822 17.9048 101.421 17.7534 102.199 17.7534H102.927V17.4067C102.927 17.1333 102.85 16.9152 102.697 16.7524C102.544 16.5864 102.312 16.5034 101.999 16.5034C101.729 16.5034 101.507 16.5718 101.335 16.7085C101.162 16.842 101.076 17.0129 101.076 17.2212H99.8896C99.8896 16.9315 99.9857 16.6613 100.178 16.4106C100.37 16.1567 100.63 15.9582 100.959 15.8149C101.291 15.6717 101.66 15.6001 102.067 15.6001C102.686 15.6001 103.179 15.7563 103.547 16.0688C103.915 16.3781 104.104 16.8143 104.113 17.3774V19.7603C104.113 20.2355 104.18 20.6147 104.313 20.8979V20.981H103.103ZM101.799 20.1265C102.033 20.1265 102.253 20.0695 102.458 19.9556C102.666 19.8416 102.823 19.6886 102.927 19.4966V18.5005H102.287C101.848 18.5005 101.517 18.577 101.296 18.73C101.075 18.883 100.964 19.0994 100.964 19.3794C100.964 19.6073 101.039 19.7896 101.188 19.9263C101.341 20.0597 101.545 20.1265 101.799 20.1265ZM105.148 18.3003C105.148 17.48 105.34 16.8257 105.725 16.3374C106.112 15.8459 106.625 15.6001 107.263 15.6001C107.865 15.6001 108.339 15.8101 108.684 16.23L108.737 15.6978H109.807V20.8198C109.807 21.5132 109.59 22.0601 109.157 22.4604C108.728 22.8608 108.146 23.061 107.414 23.061C107.027 23.061 106.647 22.9797 106.276 22.8169C105.909 22.6574 105.629 22.4474 105.437 22.187L105.998 21.4741C106.363 21.9071 106.812 22.1235 107.346 22.1235C107.74 22.1235 108.05 22.0161 108.278 21.8013C108.506 21.5897 108.62 21.2772 108.62 20.8638V20.5073C108.278 20.8882 107.823 21.0786 107.253 21.0786C106.634 21.0786 106.128 20.8328 105.734 20.3413C105.344 19.8498 105.148 19.1694 105.148 18.3003ZM106.33 18.4028C106.33 18.9334 106.438 19.3517 106.652 19.6577C106.87 19.9604 107.172 20.1118 107.556 20.1118C108.034 20.1118 108.389 19.9067 108.62 19.4966V17.1724C108.396 16.772 108.044 16.5718 107.565 16.5718C107.175 16.5718 106.87 16.7264 106.652 17.0356C106.438 17.3449 106.33 17.8006 106.33 18.4028ZM113.356 21.0786C112.604 21.0786 111.994 20.8426 111.525 20.3706C111.06 19.8953 110.827 19.2638 110.827 18.4761V18.3296C110.827 17.8022 110.928 17.3319 111.13 16.9185C111.335 16.5018 111.621 16.1779 111.989 15.9468C112.357 15.7157 112.767 15.6001 113.22 15.6001C113.939 15.6001 114.494 15.8296 114.885 16.2886C115.279 16.7476 115.476 17.397 115.476 18.2368V18.7153H112.023C112.059 19.1515 112.204 19.4966 112.458 19.7505C112.715 20.0044 113.037 20.1313 113.425 20.1313C113.968 20.1313 114.411 19.9116 114.753 19.4722L115.393 20.0825C115.181 20.3983 114.898 20.644 114.543 20.8198C114.191 20.9924 113.796 21.0786 113.356 21.0786ZM113.215 16.5522C112.889 16.5522 112.626 16.6662 112.424 16.894C112.225 17.1219 112.098 17.4393 112.043 17.8462H114.304V17.7583C114.278 17.3612 114.172 17.0617 113.986 16.8599C113.801 16.6548 113.544 16.5522 113.215 16.5522ZM123.85 14.8677H121.633V20.981H120.407V14.8677H118.21V13.8716H123.85V14.8677ZM125.935 20.981H124.748V15.6978H125.935V20.981ZM124.675 14.3257C124.675 14.1434 124.732 13.992 124.846 13.8716C124.963 13.7511 125.129 13.6909 125.344 13.6909C125.559 13.6909 125.725 13.7511 125.842 13.8716C125.959 13.992 126.018 14.1434 126.018 14.3257C126.018 14.5047 125.959 14.6545 125.842 14.7749C125.725 14.8921 125.559 14.9507 125.344 14.9507C125.129 14.9507 124.963 14.8921 124.846 14.7749C124.732 14.6545 124.675 14.5047 124.675 14.3257ZM128.718 14.4136V15.6978H129.65V16.5767H128.718V19.5259C128.718 19.7277 128.757 19.8742 128.835 19.9653C128.916 20.0532 129.06 20.0972 129.265 20.0972C129.401 20.0972 129.54 20.0809 129.68 20.0483V20.9663C129.41 21.0412 129.149 21.0786 128.898 21.0786C127.987 21.0786 127.531 20.5757 127.531 19.5698V16.5767H126.662V15.6978H127.531V14.4136H128.718ZM131.823 20.981H130.637V13.481H131.823V20.981ZM135.446 21.0786C134.694 21.0786 134.084 20.8426 133.615 20.3706C133.15 19.8953 132.917 19.2638 132.917 18.4761V18.3296C132.917 17.8022 133.018 17.3319 133.22 16.9185C133.425 16.5018 133.711 16.1779 134.079 15.9468C134.447 15.7157 134.857 15.6001 135.31 15.6001C136.029 15.6001 136.584 15.8296 136.975 16.2886C137.368 16.7476 137.565 17.397 137.565 18.2368V18.7153H134.113C134.149 19.1515 134.294 19.4966 134.548 19.7505C134.805 20.0044 135.127 20.1313 135.515 20.1313C136.058 20.1313 136.501 19.9116 136.843 19.4722L137.482 20.0825C137.271 20.3983 136.988 20.644 136.633 20.8198C136.281 20.9924 135.886 21.0786 135.446 21.0786ZM135.305 16.5522C134.979 16.5522 134.715 16.6662 134.514 16.894C134.315 17.1219 134.188 17.4393 134.133 17.8462H136.394V17.7583C136.368 17.3612 136.262 17.0617 136.076 16.8599C135.891 16.6548 135.633 16.5522 135.305 16.5522Z" fill="#A4AFB7"/>
</svg>
assets/images/app/site-editor/search-results.svg000064400000056375151327220410016025 0ustar00<svg width="230" height="223" viewBox="0 0 230 223" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect y="0.171875" width="229.827" height="222" fill="white"/>
<rect width="229.827" height="26.4604" fill="#F1F3F5"/>
<rect x="35" y="7.9375" width="160" height="10.8866" rx="5.44328" fill="white"/>
<rect x="184.494" y="7.9375" width="10.8866" height="10.8866" rx="5.44328" fill="#D5DADF"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M191.235 14.1142C191.479 13.7855 191.623 13.3785 191.623 12.9379C191.623 11.8463 190.738 10.9614 189.646 10.9614C188.555 10.9614 187.67 11.8463 187.67 12.9379C187.67 14.0295 188.555 14.9144 189.646 14.9144C190.087 14.9144 190.493 14.7704 190.822 14.527L191.707 15.412C191.821 15.526 192.006 15.526 192.12 15.412C192.234 15.2979 192.234 15.1131 192.12 14.999L191.235 14.1142ZM189.645 14.3304C188.876 14.3304 188.253 13.707 188.253 12.9379C188.253 12.1688 188.876 11.5454 189.645 11.5454C190.415 11.5454 191.038 12.1688 191.038 12.9379C191.038 13.707 190.415 14.3304 189.645 14.3304Z" fill="white"/>
<path d="M43.1299 14.1069C43.1299 13.9194 43.0635 13.7749 42.9307 13.6733C42.7998 13.5718 42.5625 13.4692 42.2188 13.3657C41.875 13.2622 41.6016 13.147 41.3984 13.02C41.0098 12.7759 40.8154 12.4575 40.8154 12.0649C40.8154 11.7212 40.9551 11.438 41.2344 11.2153C41.5156 10.9927 41.8799 10.8813 42.3271 10.8813C42.624 10.8813 42.8887 10.936 43.1211 11.0454C43.3535 11.1548 43.5361 11.311 43.6689 11.5142C43.8018 11.7153 43.8682 11.939 43.8682 12.1851H43.1299C43.1299 11.9624 43.0596 11.7886 42.9189 11.6636C42.7803 11.5366 42.5811 11.4731 42.3213 11.4731C42.0791 11.4731 41.8906 11.5249 41.7559 11.6284C41.623 11.7319 41.5566 11.8765 41.5566 12.062C41.5566 12.2183 41.6289 12.3491 41.7734 12.4546C41.918 12.5581 42.1562 12.6597 42.4883 12.7593C42.8203 12.8569 43.0869 12.9692 43.2881 13.0962C43.4893 13.2212 43.6367 13.3657 43.7305 13.5298C43.8242 13.6919 43.8711 13.8823 43.8711 14.1011C43.8711 14.4565 43.7344 14.7397 43.4609 14.9507C43.1895 15.1597 42.8203 15.2642 42.3535 15.2642C42.0449 15.2642 41.7607 15.2075 41.501 15.0942C41.2432 14.979 41.042 14.8208 40.8975 14.6196C40.7549 14.4185 40.6836 14.1841 40.6836 13.9165H41.4248C41.4248 14.1587 41.5049 14.3462 41.665 14.479C41.8252 14.6118 42.0547 14.6782 42.3535 14.6782C42.6113 14.6782 42.8047 14.6265 42.9336 14.5229C43.0645 14.4175 43.1299 14.2788 43.1299 14.1069ZM45.8486 15.2642C45.3975 15.2642 45.0312 15.1226 44.75 14.8394C44.4707 14.5542 44.3311 14.1753 44.3311 13.7026V13.6147C44.3311 13.2983 44.3916 13.0161 44.5127 12.7681C44.6357 12.5181 44.8076 12.3237 45.0283 12.1851C45.249 12.0464 45.4951 11.9771 45.7666 11.9771C46.1982 11.9771 46.5312 12.1147 46.7656 12.3901C47.002 12.6655 47.1201 13.0552 47.1201 13.5591V13.8462H45.0488C45.0703 14.1079 45.1572 14.3149 45.3096 14.4673C45.4639 14.6196 45.6572 14.6958 45.8896 14.6958C46.2158 14.6958 46.4814 14.564 46.6865 14.3003L47.0703 14.6665C46.9434 14.856 46.7734 15.0034 46.5605 15.1089C46.3496 15.2124 46.1123 15.2642 45.8486 15.2642ZM45.7637 12.5483C45.5684 12.5483 45.4102 12.6167 45.2891 12.7534C45.1699 12.8901 45.0938 13.0806 45.0605 13.3247H46.417V13.272C46.4014 13.0337 46.3379 12.854 46.2266 12.7329C46.1152 12.6099 45.9609 12.5483 45.7637 12.5483ZM49.5693 15.2056C49.5381 15.145 49.5107 15.0464 49.4873 14.9097C49.2607 15.146 48.9834 15.2642 48.6553 15.2642C48.3369 15.2642 48.0771 15.1733 47.876 14.9917C47.6748 14.8101 47.5742 14.5854 47.5742 14.3179C47.5742 13.98 47.6992 13.7212 47.9492 13.5415C48.2012 13.3599 48.5605 13.269 49.0273 13.269H49.4639V13.061C49.4639 12.897 49.418 12.7661 49.3262 12.6685C49.2344 12.5688 49.0947 12.519 48.9072 12.519C48.7451 12.519 48.6123 12.5601 48.5088 12.6421C48.4053 12.7222 48.3535 12.8247 48.3535 12.9497H47.6416C47.6416 12.7759 47.6992 12.6138 47.8145 12.4634C47.9297 12.311 48.0859 12.1919 48.2832 12.106C48.4824 12.02 48.7041 11.9771 48.9482 11.9771C49.3193 11.9771 49.6152 12.0708 49.8359 12.2583C50.0566 12.4438 50.1699 12.7056 50.1758 13.0435V14.4731C50.1758 14.7583 50.2158 14.9858 50.2959 15.1558V15.2056H49.5693ZM48.7871 14.6929C48.9277 14.6929 49.0596 14.6587 49.1826 14.5903C49.3076 14.522 49.4014 14.4302 49.4639 14.3149V13.7173H49.0801C48.8164 13.7173 48.6182 13.7632 48.4854 13.855C48.3525 13.9468 48.2861 14.0767 48.2861 14.2446C48.2861 14.3813 48.3311 14.4907 48.4209 14.5728C48.5127 14.6528 48.6348 14.6929 48.7871 14.6929ZM52.5811 12.686C52.4873 12.6704 52.3906 12.6626 52.291 12.6626C51.9648 12.6626 51.7451 12.7876 51.6318 13.0376V15.2056H50.9199V12.0356H51.5996L51.6172 12.3901C51.7891 12.1147 52.0273 11.9771 52.332 11.9771C52.4336 11.9771 52.5176 11.9907 52.584 12.0181L52.5811 12.686ZM54.2744 14.6958C54.4521 14.6958 54.5996 14.644 54.7168 14.5405C54.834 14.437 54.8965 14.3091 54.9043 14.1567H55.5752C55.5674 14.354 55.5059 14.5386 55.3906 14.7104C55.2754 14.8804 55.1191 15.0151 54.9219 15.1147C54.7246 15.2144 54.5117 15.2642 54.2832 15.2642C53.8398 15.2642 53.4883 15.1206 53.2285 14.8335C52.9688 14.5464 52.8389 14.1499 52.8389 13.644V13.5708C52.8389 13.0884 52.9678 12.7026 53.2256 12.4136C53.4834 12.1226 53.835 11.9771 54.2803 11.9771C54.6572 11.9771 54.9639 12.0874 55.2002 12.3081C55.4385 12.5269 55.5635 12.8149 55.5752 13.1724H54.9043C54.8965 12.9907 54.834 12.8413 54.7168 12.7241C54.6016 12.6069 54.4541 12.5483 54.2744 12.5483C54.0439 12.5483 53.8662 12.6323 53.7412 12.8003C53.6162 12.9663 53.5527 13.2192 53.5508 13.5591V13.6733C53.5508 14.0171 53.6123 14.2739 53.7354 14.4438C53.8604 14.6118 54.04 14.6958 54.2744 14.6958ZM56.8145 12.3813C57.0469 12.1118 57.3408 11.9771 57.6963 11.9771C58.3721 11.9771 58.7148 12.3628 58.7246 13.1343V15.2056H58.0127V13.1606C58.0127 12.9419 57.9648 12.7876 57.8691 12.6978C57.7754 12.606 57.6367 12.5601 57.4531 12.5601C57.168 12.5601 56.9551 12.687 56.8145 12.9409V15.2056H56.1025V10.7056H56.8145V12.3813ZM63.3975 14.2124H61.7451L61.3994 15.2056H60.6289L62.2402 10.9399H62.9053L64.5195 15.2056H63.7461L63.3975 14.2124ZM61.9531 13.6147H63.1895L62.5713 11.8452L61.9531 13.6147ZM65.457 12.0356L65.4775 12.4019C65.7119 12.1187 66.0195 11.9771 66.4004 11.9771C67.0605 11.9771 67.3965 12.355 67.4082 13.1108V15.2056H66.6963V13.1519C66.6963 12.9507 66.6523 12.8022 66.5645 12.7065C66.4785 12.6089 66.3369 12.5601 66.1396 12.5601C65.8525 12.5601 65.6387 12.6899 65.498 12.9497V15.2056H64.7861V12.0356H65.457ZM69.2451 14.186L69.8896 12.0356H70.6484L69.3887 15.686C69.1953 16.2192 68.8672 16.4858 68.4043 16.4858C68.3008 16.4858 68.1865 16.4683 68.0615 16.4331V15.8823L68.1963 15.8911C68.376 15.8911 68.5107 15.8579 68.6006 15.7915C68.6924 15.7271 68.7646 15.6177 68.8174 15.4634L68.9199 15.1909L67.8066 12.0356H68.5742L69.2451 14.186ZM71.9521 11.2651V12.0356H72.5117V12.563H71.9521V14.3325C71.9521 14.4536 71.9756 14.5415 72.0225 14.5962C72.0713 14.6489 72.1572 14.6753 72.2803 14.6753C72.3623 14.6753 72.4453 14.6655 72.5293 14.646V15.1968C72.3672 15.2417 72.2109 15.2642 72.0605 15.2642C71.5137 15.2642 71.2402 14.9624 71.2402 14.3589V12.563H70.7188V12.0356H71.2402V11.2651H71.9521ZM73.7598 12.3813C73.9922 12.1118 74.2861 11.9771 74.6416 11.9771C75.3174 11.9771 75.6602 12.3628 75.6699 13.1343V15.2056H74.958V13.1606C74.958 12.9419 74.9102 12.7876 74.8145 12.6978C74.7207 12.606 74.582 12.5601 74.3984 12.5601C74.1133 12.5601 73.9004 12.687 73.7598 12.9409V15.2056H73.0479V10.7056H73.7598V12.3813ZM77.1494 15.2056H76.4375V12.0356H77.1494V15.2056ZM76.3936 11.2124C76.3936 11.103 76.4277 11.0122 76.4961 10.9399C76.5664 10.8677 76.666 10.8315 76.7949 10.8315C76.9238 10.8315 77.0234 10.8677 77.0938 10.9399C77.1641 11.0122 77.1992 11.103 77.1992 11.2124C77.1992 11.3198 77.1641 11.4097 77.0938 11.4819C77.0234 11.5522 76.9238 11.5874 76.7949 11.5874C76.666 11.5874 76.5664 11.5522 76.4961 11.4819C76.4277 11.4097 76.3936 11.3198 76.3936 11.2124ZM78.5879 12.0356L78.6084 12.4019C78.8428 12.1187 79.1504 11.9771 79.5312 11.9771C80.1914 11.9771 80.5273 12.355 80.5391 13.1108V15.2056H79.8271V13.1519C79.8271 12.9507 79.7832 12.8022 79.6953 12.7065C79.6094 12.6089 79.4678 12.5601 79.2705 12.5601C78.9834 12.5601 78.7695 12.6899 78.6289 12.9497V15.2056H77.917V12.0356H78.5879ZM81.1426 13.5972C81.1426 13.105 81.2578 12.7124 81.4883 12.4194C81.7207 12.1245 82.0283 11.9771 82.4111 11.9771C82.7725 11.9771 83.0566 12.103 83.2637 12.355L83.2959 12.0356H83.9375V15.1089C83.9375 15.5249 83.8076 15.853 83.5479 16.0933C83.29 16.3335 82.9414 16.4536 82.502 16.4536C82.2695 16.4536 82.042 16.4048 81.8193 16.3071C81.5986 16.2114 81.4307 16.0854 81.3154 15.9292L81.6523 15.5015C81.8711 15.7612 82.1406 15.8911 82.4609 15.8911C82.6973 15.8911 82.8838 15.8267 83.0205 15.6978C83.1572 15.5708 83.2256 15.3833 83.2256 15.1353V14.9214C83.0205 15.1499 82.7471 15.2642 82.4053 15.2642C82.0342 15.2642 81.7305 15.1167 81.4941 14.8218C81.2598 14.5269 81.1426 14.1187 81.1426 13.5972ZM81.8516 13.6587C81.8516 13.9771 81.916 14.228 82.0449 14.4116C82.1758 14.5933 82.3564 14.6841 82.5869 14.6841C82.874 14.6841 83.0869 14.561 83.2256 14.3149V12.9204C83.0908 12.6802 82.8799 12.5601 82.5928 12.5601C82.3584 12.5601 82.1758 12.6528 82.0449 12.8384C81.916 13.0239 81.8516 13.2974 81.8516 13.6587Z" fill="#A4AFB7"/>
<path d="M24.7451 50.5H23.5635V44.792L21.8203 45.3877V44.3867L24.5938 43.3662H24.7451V50.5ZM31.9961 50.5H27.2158V49.6846L29.584 47.1016C29.9258 46.7207 30.1683 46.4033 30.3115 46.1494C30.458 45.8923 30.5312 45.6351 30.5312 45.3779C30.5312 45.0394 30.4352 44.766 30.2432 44.5576C30.0544 44.3493 29.7988 44.2451 29.4766 44.2451C29.0924 44.2451 28.7946 44.3623 28.583 44.5967C28.3714 44.8311 28.2656 45.1517 28.2656 45.5586H27.0791C27.0791 45.1257 27.1768 44.7367 27.3721 44.3916C27.5706 44.0433 27.8522 43.7731 28.2168 43.5811C28.5846 43.389 29.0078 43.293 29.4863 43.293C30.1764 43.293 30.7201 43.4671 31.1172 43.8154C31.5176 44.1605 31.7178 44.639 31.7178 45.251C31.7178 45.6058 31.6169 45.9785 31.415 46.3691C31.2165 46.7565 30.8893 47.1976 30.4336 47.6924L28.6953 49.5527H31.9961V50.5ZM37.1816 43.3906L39.2324 48.8398L41.2783 43.3906H42.875V50.5H41.6445V48.1562L41.7666 45.0215L39.667 50.5H38.7832L36.6885 45.0264L36.8105 48.1562V50.5H35.5801V43.3906H37.1816ZM47.3818 50.5C47.3298 50.3991 47.2842 50.2347 47.2451 50.0068C46.8675 50.4007 46.4053 50.5977 45.8584 50.5977C45.3278 50.5977 44.8949 50.4463 44.5596 50.1436C44.2243 49.8408 44.0566 49.4665 44.0566 49.0205C44.0566 48.4574 44.265 48.026 44.6816 47.7266C45.1016 47.4238 45.7005 47.2725 46.4785 47.2725H47.2061V46.9258C47.2061 46.6523 47.1296 46.4342 46.9766 46.2715C46.8236 46.1055 46.5908 46.0225 46.2783 46.0225C46.0081 46.0225 45.7868 46.0908 45.6143 46.2275C45.4417 46.361 45.3555 46.5319 45.3555 46.7402H44.1689C44.1689 46.4505 44.265 46.1803 44.457 45.9297C44.6491 45.6758 44.9095 45.4772 45.2383 45.334C45.5703 45.1908 45.9398 45.1191 46.3467 45.1191C46.9652 45.1191 47.4583 45.2754 47.8262 45.5879C48.194 45.8971 48.3828 46.3333 48.3926 46.8965V49.2793C48.3926 49.7546 48.4593 50.1338 48.5928 50.417V50.5H47.3818ZM46.0781 49.6455C46.3125 49.6455 46.5322 49.5885 46.7373 49.4746C46.9456 49.3607 47.1019 49.2077 47.2061 49.0156V48.0195H46.5664C46.127 48.0195 45.7965 48.096 45.5752 48.249C45.3538 48.402 45.2432 48.6185 45.2432 48.8984C45.2432 49.1263 45.318 49.3086 45.4678 49.4453C45.6208 49.5788 45.8242 49.6455 46.0781 49.6455ZM51.8057 49.6504C52.1019 49.6504 52.3477 49.5641 52.543 49.3916C52.7383 49.2191 52.8424 49.0059 52.8555 48.752H53.9736C53.9606 49.0807 53.8581 49.3883 53.666 49.6748C53.474 49.958 53.2135 50.1826 52.8848 50.3486C52.556 50.5146 52.2012 50.5977 51.8203 50.5977C51.0814 50.5977 50.4954 50.3584 50.0625 49.8799C49.6296 49.4014 49.4131 48.7406 49.4131 47.8975V47.7754C49.4131 46.9714 49.6279 46.3285 50.0576 45.8467C50.4873 45.3617 51.0732 45.1191 51.8154 45.1191C52.4437 45.1191 52.9548 45.3031 53.3486 45.6709C53.7458 46.0355 53.9541 46.5156 53.9736 47.1113H52.8555C52.8424 46.8086 52.7383 46.5596 52.543 46.3643C52.3509 46.1689 52.1051 46.0713 51.8057 46.0713C51.4215 46.0713 51.1253 46.2113 50.917 46.4912C50.7087 46.7679 50.6029 47.1895 50.5996 47.7559V47.9463C50.5996 48.5192 50.7021 48.9473 50.9072 49.2305C51.1156 49.5104 51.415 49.6504 51.8057 49.6504ZM56.0391 45.793C56.4264 45.3438 56.9163 45.1191 57.5088 45.1191C58.6351 45.1191 59.2064 45.762 59.2227 47.0479V50.5H58.0361V47.0918C58.0361 46.7272 57.9564 46.4701 57.7969 46.3203C57.6406 46.1673 57.4095 46.0908 57.1035 46.0908C56.6283 46.0908 56.2734 46.3024 56.0391 46.7256V50.5H54.8525V43H56.0391V45.793ZM61.6885 50.5H60.502V45.2168H61.6885V50.5ZM60.4287 43.8447C60.4287 43.6624 60.4857 43.5111 60.5996 43.3906C60.7168 43.2702 60.8828 43.21 61.0977 43.21C61.3125 43.21 61.4785 43.2702 61.5957 43.3906C61.7129 43.5111 61.7715 43.6624 61.7715 43.8447C61.7715 44.0238 61.7129 44.1735 61.5957 44.2939C61.4785 44.4111 61.3125 44.4697 61.0977 44.4697C60.8828 44.4697 60.7168 44.4111 60.5996 44.2939C60.4857 44.1735 60.4287 44.0238 60.4287 43.8447ZM64.0859 45.2168L64.1201 45.8271C64.5107 45.3551 65.0234 45.1191 65.6582 45.1191C66.7585 45.1191 67.3184 45.749 67.3379 47.0088V50.5H66.1514V47.0771C66.1514 46.7419 66.0781 46.4945 65.9316 46.335C65.7884 46.1722 65.5524 46.0908 65.2236 46.0908C64.7451 46.0908 64.3887 46.3073 64.1543 46.7402V50.5H62.9678V45.2168H64.0859ZM68.3438 47.8193C68.3438 46.999 68.5358 46.3447 68.9199 45.8564C69.3073 45.3649 69.82 45.1191 70.458 45.1191C71.0602 45.1191 71.5339 45.3291 71.8789 45.749L71.9326 45.2168H73.002V50.3389C73.002 51.0322 72.7855 51.5791 72.3525 51.9795C71.9229 52.3799 71.3418 52.5801 70.6094 52.5801C70.222 52.5801 69.8428 52.4987 69.4717 52.3359C69.1038 52.1764 68.8239 51.9665 68.6318 51.7061L69.1934 50.9932C69.5579 51.4261 70.0072 51.6426 70.541 51.6426C70.9349 51.6426 71.2458 51.5352 71.4736 51.3203C71.7015 51.1087 71.8154 50.7962 71.8154 50.3828V50.0264C71.4736 50.4072 71.0179 50.5977 70.4482 50.5977C69.8298 50.5977 69.3236 50.3519 68.9297 49.8604C68.5391 49.3688 68.3438 48.6885 68.3438 47.8193ZM69.5254 47.9219C69.5254 48.4525 69.6328 48.8708 69.8477 49.1768C70.0658 49.4795 70.3669 49.6309 70.751 49.6309C71.2295 49.6309 71.5843 49.4258 71.8154 49.0156V46.6914C71.5908 46.291 71.2393 46.0908 70.7607 46.0908C70.3701 46.0908 70.0658 46.2454 69.8477 46.5547C69.6328 46.8639 69.5254 47.3197 69.5254 47.9219ZM79.4424 47.7607H78.0654V50.5H76.8301V43.3906H79.3301C80.1504 43.3906 80.7835 43.5745 81.2295 43.9424C81.6755 44.3102 81.8984 44.8424 81.8984 45.5391C81.8984 46.0143 81.7829 46.4131 81.5518 46.7354C81.3239 47.0544 81.0049 47.3001 80.5947 47.4727L82.1914 50.4365V50.5H80.8682L79.4424 47.7607ZM78.0654 46.7695H79.335C79.7516 46.7695 80.0771 46.6654 80.3115 46.457C80.5459 46.2454 80.6631 45.9574 80.6631 45.5928C80.6631 45.2119 80.554 44.9173 80.3359 44.709C80.1211 44.5007 79.7988 44.3932 79.3691 44.3867H78.0654V46.7695ZM85.2822 50.5977C84.5303 50.5977 83.9199 50.3617 83.4512 49.8896C82.9857 49.4144 82.7529 48.7829 82.7529 47.9951V47.8486C82.7529 47.3213 82.8538 46.8509 83.0557 46.4375C83.2607 46.0208 83.5472 45.6969 83.915 45.4658C84.2829 45.2347 84.693 45.1191 85.1455 45.1191C85.8649 45.1191 86.4199 45.3486 86.8105 45.8076C87.2044 46.2666 87.4014 46.916 87.4014 47.7559V48.2344H83.9492C83.985 48.6706 84.1299 49.0156 84.3838 49.2695C84.641 49.5234 84.9632 49.6504 85.3506 49.6504C85.8942 49.6504 86.3369 49.4307 86.6787 48.9912L87.3184 49.6016C87.1068 49.9173 86.8236 50.1631 86.4688 50.3389C86.1172 50.5114 85.7217 50.5977 85.2822 50.5977ZM85.1406 46.0713C84.8151 46.0713 84.5514 46.1852 84.3496 46.4131C84.151 46.641 84.0241 46.9583 83.9688 47.3652H86.2295V47.2773C86.2035 46.8802 86.0977 46.5807 85.9121 46.3789C85.7266 46.1738 85.4694 46.0713 85.1406 46.0713ZM91.2881 49.0645C91.2881 48.8529 91.2002 48.6917 91.0244 48.5811C90.8519 48.4704 90.5638 48.3727 90.1602 48.2881C89.7565 48.2035 89.4196 48.096 89.1494 47.9658C88.557 47.6794 88.2607 47.2643 88.2607 46.7207C88.2607 46.265 88.4528 45.8841 88.8369 45.5781C89.221 45.2721 89.7093 45.1191 90.3018 45.1191C90.9333 45.1191 91.4427 45.2754 91.8301 45.5879C92.2207 45.9004 92.416 46.3057 92.416 46.8037H91.2295C91.2295 46.5758 91.1449 46.387 90.9756 46.2373C90.8063 46.0843 90.5817 46.0078 90.3018 46.0078C90.0413 46.0078 89.8281 46.068 89.6621 46.1885C89.4993 46.3089 89.418 46.4701 89.418 46.6719C89.418 46.8542 89.4945 46.9958 89.6475 47.0967C89.8005 47.1976 90.1097 47.3001 90.5752 47.4043C91.0407 47.5052 91.4053 47.6273 91.6689 47.7705C91.9359 47.9105 92.1328 48.0798 92.2598 48.2783C92.39 48.4769 92.4551 48.7178 92.4551 49.001C92.4551 49.4762 92.2581 49.862 91.8643 50.1582C91.4704 50.4512 90.9544 50.5977 90.3164 50.5977C89.8835 50.5977 89.4977 50.5195 89.1592 50.3633C88.8206 50.207 88.557 49.9922 88.3682 49.7188C88.1794 49.4453 88.085 49.1507 88.085 48.835H89.2373C89.2536 49.1149 89.3594 49.3314 89.5547 49.4844C89.75 49.6341 90.0088 49.709 90.3311 49.709C90.6436 49.709 90.8812 49.6504 91.0439 49.5332C91.2067 49.4128 91.2881 49.2565 91.2881 49.0645ZM96.6934 49.9824C96.3451 50.3926 95.8503 50.5977 95.209 50.5977C94.6361 50.5977 94.2015 50.43 93.9053 50.0947C93.6123 49.7594 93.4658 49.2744 93.4658 48.6396V45.2168H94.6523V48.625C94.6523 49.2956 94.9307 49.6309 95.4873 49.6309C96.0635 49.6309 96.4525 49.4242 96.6543 49.0107V45.2168H97.8408V50.5H96.7227L96.6934 49.9824ZM100.312 50.5H99.125V43H100.312V50.5ZM103.095 43.9326V45.2168H104.027V46.0957H103.095V49.0449C103.095 49.2467 103.134 49.3932 103.212 49.4844C103.293 49.5723 103.437 49.6162 103.642 49.6162C103.778 49.6162 103.917 49.5999 104.057 49.5674V50.4854C103.786 50.5602 103.526 50.5977 103.275 50.5977C102.364 50.5977 101.908 50.0947 101.908 49.0889V46.0957H101.039V45.2168H101.908V43.9326H103.095ZM107.899 49.0645C107.899 48.8529 107.812 48.6917 107.636 48.5811C107.463 48.4704 107.175 48.3727 106.771 48.2881C106.368 48.2035 106.031 48.096 105.761 47.9658C105.168 47.6794 104.872 47.2643 104.872 46.7207C104.872 46.265 105.064 45.8841 105.448 45.5781C105.832 45.2721 106.321 45.1191 106.913 45.1191C107.545 45.1191 108.054 45.2754 108.441 45.5879C108.832 45.9004 109.027 46.3057 109.027 46.8037H107.841C107.841 46.5758 107.756 46.387 107.587 46.2373C107.418 46.0843 107.193 46.0078 106.913 46.0078C106.653 46.0078 106.439 46.068 106.273 46.1885C106.111 46.3089 106.029 46.4701 106.029 46.6719C106.029 46.8542 106.106 46.9958 106.259 47.0967C106.412 47.1976 106.721 47.3001 107.187 47.4043C107.652 47.5052 108.017 47.6273 108.28 47.7705C108.547 47.9105 108.744 48.0798 108.871 48.2783C109.001 48.4769 109.066 48.7178 109.066 49.001C109.066 49.4762 108.869 49.862 108.476 50.1582C108.082 50.4512 107.566 50.5977 106.928 50.5977C106.495 50.5977 106.109 50.5195 105.771 50.3633C105.432 50.207 105.168 49.9922 104.979 49.7188C104.791 49.4453 104.696 49.1507 104.696 48.835H105.849C105.865 49.1149 105.971 49.3314 106.166 49.4844C106.361 49.6341 106.62 49.709 106.942 49.709C107.255 49.709 107.493 49.6504 107.655 49.5332C107.818 49.4128 107.899 49.2565 107.899 49.0645Z" fill="#A4AFB7"/>
<rect x="72" y="79" width="136" height="2" rx="1" fill="#D5DADF"/>
<rect x="72" y="117" width="136" height="2" rx="1" fill="#D5DADF"/>
<rect x="72" y="155" width="136" height="2" rx="1" fill="#D5DADF"/>
<rect x="72" y="193" width="136" height="2" rx="1" fill="#D5DADF"/>
<rect x="72" y="91" width="136" height="2" rx="1" fill="#D5DADF"/>
<rect x="72" y="129" width="136" height="2" rx="1" fill="#D5DADF"/>
<rect x="72" y="167" width="136" height="2" rx="1" fill="#D5DADF"/>
<rect x="72" y="205" width="136" height="2" rx="1" fill="#D5DADF"/>
<rect x="72" y="70" width="60" height="4" rx="2" fill="#D5DADF"/>
<rect x="72" y="108" width="60" height="4" rx="2" fill="#D5DADF"/>
<rect x="72" y="146" width="60" height="4" rx="2" fill="#D5DADF"/>
<rect x="72" y="184" width="60" height="4" rx="2" fill="#D5DADF"/>
<rect x="72" y="85" width="115" height="2" rx="1" fill="#D5DADF"/>
<rect x="72" y="123" width="115" height="2" rx="1" fill="#D5DADF"/>
<rect x="72" y="161" width="115" height="2" rx="1" fill="#D5DADF"/>
<rect x="72" y="199" width="115" height="2" rx="1" fill="#D5DADF"/>
<mask id="mask0" mask-type="alpha" maskUnits="userSpaceOnUse" x="22" y="68" width="44" height="28">
<path fill-rule="evenodd" clip-rule="evenodd" d="M22 68H66V96H22V68Z" fill="white"/>
</mask>
<g mask="url(#mask0)">
<rect x="21.2441" y="67.8228" width="46.5143" height="30.3659" fill="#E6E9EC"/>
<mask id="mask1" mask-type="alpha" maskUnits="userSpaceOnUse" x="21" y="67" width="47" height="32">
<rect x="21.2441" y="67.8228" width="46.5143" height="30.3659" fill="white"/>
</mask>
<g mask="url(#mask1)">
<path d="M75.2246 100.914C75.2246 100.914 63.0395 77.7399 53.8182 75.858C44.5969 73.9761 40.9852 92.21 35.4671 89.7916C34.4422 89.3424 28.7918 82.9283 24.2298 84.7278C20.9485 86.0221 13.9547 100.999 13.9547 100.999H75.2246V100.914Z" fill="#F8F9FA"/>
<path d="M34.9168 83.2321C35.9775 83.2321 36.8375 82.3828 36.8375 81.3351C36.8375 80.2873 35.9775 79.438 34.9168 79.438C33.856 79.438 32.9961 80.2873 32.9961 81.3351C32.9961 82.3828 33.856 83.2321 34.9168 83.2321Z" fill="#F8F9FA"/>
</g>
</g>
<mask id="mask2" mask-type="alpha" maskUnits="userSpaceOnUse" x="22" y="106" width="44" height="28">
<path fill-rule="evenodd" clip-rule="evenodd" d="M22 106H66V134H22V106Z" fill="white"/>
</mask>
<g mask="url(#mask2)">
<rect x="21.2441" y="105.823" width="46.5143" height="30.3659" fill="#E6E9EC"/>
<mask id="mask3" mask-type="alpha" maskUnits="userSpaceOnUse" x="21" y="105" width="47" height="32">
<rect x="21.2441" y="105.823" width="46.5143" height="30.3659" fill="white"/>
</mask>
<g mask="url(#mask3)">
<path d="M75.2246 138.914C75.2246 138.914 63.0395 115.74 53.8182 113.858C44.5969 111.976 40.9852 130.21 35.4671 127.792C34.4422 127.342 28.7918 120.928 24.2298 122.728C20.9485 124.022 13.9547 138.999 13.9547 138.999H75.2246V138.914Z" fill="#F8F9FA"/>
<path d="M34.9168 121.232C35.9775 121.232 36.8375 120.383 36.8375 119.335C36.8375 118.287 35.9775 117.438 34.9168 117.438C33.856 117.438 32.9961 118.287 32.9961 119.335C32.9961 120.383 33.856 121.232 34.9168 121.232Z" fill="#F8F9FA"/>
</g>
</g>
<mask id="mask4" mask-type="alpha" maskUnits="userSpaceOnUse" x="22" y="144" width="44" height="28">
<path fill-rule="evenodd" clip-rule="evenodd" d="M22 144H66V172H22V144Z" fill="white"/>
</mask>
<g mask="url(#mask4)">
<rect x="21.2441" y="143.823" width="46.5143" height="30.3659" fill="#E6E9EC"/>
<mask id="mask5" mask-type="alpha" maskUnits="userSpaceOnUse" x="21" y="143" width="47" height="32">
<rect x="21.2441" y="143.823" width="46.5143" height="30.3659" fill="white"/>
</mask>
<g mask="url(#mask5)">
<path d="M75.2246 176.914C75.2246 176.914 63.0395 153.74 53.8182 151.858C44.5969 149.976 40.9852 168.21 35.4671 165.792C34.4422 165.342 28.7918 158.928 24.2298 160.728C20.9485 162.022 13.9547 176.999 13.9547 176.999H75.2246V176.914Z" fill="#F8F9FA"/>
<path d="M34.9168 159.232C35.9775 159.232 36.8375 158.383 36.8375 157.335C36.8375 156.287 35.9775 155.438 34.9168 155.438C33.856 155.438 32.9961 156.287 32.9961 157.335C32.9961 158.383 33.856 159.232 34.9168 159.232Z" fill="#F8F9FA"/>
</g>
</g>
<mask id="mask6" mask-type="alpha" maskUnits="userSpaceOnUse" x="22" y="182" width="44" height="28">
<path fill-rule="evenodd" clip-rule="evenodd" d="M22 182H66V210H22V182Z" fill="white"/>
</mask>
<g mask="url(#mask6)">
<rect x="21.2441" y="181.823" width="46.5143" height="30.3659" fill="#E6E9EC"/>
<mask id="mask7" mask-type="alpha" maskUnits="userSpaceOnUse" x="21" y="181" width="47" height="32">
<rect x="21.2441" y="181.823" width="46.5143" height="30.3659" fill="white"/>
</mask>
<g mask="url(#mask7)">
<path d="M75.2246 214.914C75.2246 214.914 63.0395 191.74 53.8182 189.858C44.5969 187.976 40.9852 206.21 35.4671 203.792C34.4422 203.342 28.7918 196.928 24.2298 198.728C20.9485 200.022 13.9547 214.999 13.9547 214.999H75.2246V214.914Z" fill="#F8F9FA"/>
<path d="M34.9168 197.232C35.9775 197.232 36.8375 196.383 36.8375 195.335C36.8375 194.287 35.9775 193.438 34.9168 193.438C33.856 193.438 32.9961 194.287 32.9961 195.335C32.9961 196.383 33.856 197.232 34.9168 197.232Z" fill="#F8F9FA"/>
</g>
</g>
</svg>
assets/images/app/site-editor/single-post.svg000064400000023437151327220410015316 0ustar00<svg width="229" height="222" viewBox="0 0 229 222" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="229" height="222" fill="white"/>
<rect x="20" y="68" width="25.3249" height="10.8535" rx="5.42676" fill="#D5DADF"/>
<rect x="51" y="68" width="25.3249" height="10.8535" rx="5.42676" fill="#D5DADF"/>
<rect x="83" y="68" width="25.3249" height="10.8535" rx="5.42676" fill="#D5DADF"/>
<rect x="113" y="68" width="25.3249" height="10.8535" rx="5.42676" fill="#D5DADF"/>
<mask id="mask0" mask-type="alpha" maskUnits="userSpaceOnUse" x="21" y="34" width="20" height="20">
<path fill-rule="evenodd" clip-rule="evenodd" d="M21 43.9844C21 38.4702 25.4702 34 30.9844 34C36.4986 34 40.9688 38.4702 40.9688 43.9844C40.9688 49.4986 36.4986 53.9688 30.9844 53.9688C25.4702 53.9688 21 49.4986 21 43.9844Z" fill="white"/>
</mask>
<g mask="url(#mask0)">
<rect x="18.9141" y="27.168" width="48.1517" height="32.0394" fill="#E6E9EC"/>
<mask id="mask1" mask-type="alpha" maskUnits="userSpaceOnUse" x="18" y="27" width="50" height="33">
<rect x="18.9141" y="27.168" width="48.1517" height="32.0394" fill="white"/>
</mask>
<g mask="url(#mask1)">
<path d="M74.5879 62.0827C74.5879 62.0827 61.9738 37.6316 52.4279 35.646C42.882 33.6604 39.1432 52.8992 33.4308 50.3476C32.3698 49.8736 26.5205 43.106 21.7979 45.0047C18.4011 46.3703 11.1611 62.1721 11.1611 62.1721H74.5879V62.0827Z" fill="#F8F9FA"/>
<path d="M32.8613 43.4266C33.9595 43.4266 34.8496 42.5304 34.8496 41.425C34.8496 40.3195 33.9595 39.4233 32.8613 39.4233C31.7632 39.4233 30.873 40.3195 30.873 41.425C30.873 42.5304 31.7632 43.4266 32.8613 43.4266Z" fill="#F8F9FA"/>
</g>
</g>
<path d="M21.958 18.3394V20.981H20.7227V13.8716H23.4424C24.2367 13.8716 24.8665 14.0783 25.332 14.4917C25.8008 14.9051 26.0352 15.452 26.0352 16.1323C26.0352 16.8289 25.8057 17.3709 25.3467 17.7583C24.891 18.1457 24.2513 18.3394 23.4277 18.3394H21.958ZM21.958 17.3481H23.4424C23.8818 17.3481 24.2171 17.2456 24.4482 17.0405C24.6794 16.8322 24.7949 16.5327 24.7949 16.1421C24.7949 15.758 24.6777 15.452 24.4434 15.2241C24.209 14.993 23.8867 14.8742 23.4766 14.8677H21.958V17.3481ZM26.7139 18.2905C26.7139 17.7729 26.8164 17.3075 27.0215 16.894C27.2266 16.4774 27.5146 16.1584 27.8857 15.937C28.2568 15.7124 28.6833 15.6001 29.165 15.6001C29.8779 15.6001 30.4557 15.8296 30.8984 16.2886C31.3444 16.7476 31.5853 17.3563 31.6211 18.1147L31.626 18.3931C31.626 18.9139 31.5251 19.3794 31.3232 19.7896C31.1247 20.1997 30.8382 20.5171 30.4639 20.7417C30.0928 20.9663 29.6631 21.0786 29.1748 21.0786C28.4294 21.0786 27.832 20.8312 27.3828 20.3364C26.9368 19.8384 26.7139 19.1759 26.7139 18.3491V18.2905ZM27.9004 18.3931C27.9004 18.9367 28.0127 19.3631 28.2373 19.6724C28.4619 19.9784 28.7744 20.1313 29.1748 20.1313C29.5752 20.1313 29.8861 19.9751 30.1074 19.6626C30.332 19.3501 30.4443 18.8927 30.4443 18.2905C30.4443 17.7567 30.3288 17.3335 30.0977 17.021C29.8698 16.7085 29.5589 16.5522 29.165 16.5522C28.7777 16.5522 28.4701 16.7069 28.2422 17.0161C28.0143 17.3221 27.9004 17.7811 27.9004 18.3931ZM35.5908 19.5454C35.5908 19.3338 35.5029 19.1727 35.3271 19.062C35.1546 18.9513 34.8665 18.8537 34.4629 18.769C34.0592 18.6844 33.7223 18.577 33.4521 18.4468C32.8597 18.1603 32.5635 17.7453 32.5635 17.2017C32.5635 16.7459 32.7555 16.3651 33.1396 16.0591C33.5238 15.7531 34.012 15.6001 34.6045 15.6001C35.236 15.6001 35.7454 15.7563 36.1328 16.0688C36.5234 16.3813 36.7188 16.7866 36.7188 17.2847H35.5322C35.5322 17.0568 35.4476 16.868 35.2783 16.7183C35.109 16.5653 34.8844 16.4888 34.6045 16.4888C34.3441 16.4888 34.1309 16.549 33.9648 16.6694C33.8021 16.7899 33.7207 16.951 33.7207 17.1528C33.7207 17.3351 33.7972 17.4767 33.9502 17.5776C34.1032 17.6785 34.4124 17.7811 34.8779 17.8853C35.3434 17.9862 35.708 18.1082 35.9717 18.2515C36.2386 18.3914 36.4355 18.5607 36.5625 18.7593C36.6927 18.9578 36.7578 19.1987 36.7578 19.4819C36.7578 19.9572 36.5609 20.3429 36.167 20.6392C35.7731 20.9321 35.2572 21.0786 34.6191 21.0786C34.1862 21.0786 33.8005 21.0005 33.4619 20.8442C33.1234 20.688 32.8597 20.4731 32.6709 20.1997C32.4821 19.9263 32.3877 19.6317 32.3877 19.3159H33.54C33.5563 19.5959 33.6621 19.8123 33.8574 19.9653C34.0527 20.1151 34.3115 20.1899 34.6338 20.1899C34.9463 20.1899 35.1839 20.1313 35.3467 20.0142C35.5094 19.8937 35.5908 19.7375 35.5908 19.5454ZM39.2822 14.4136V15.6978H40.2148V16.5767H39.2822V19.5259C39.2822 19.7277 39.3213 19.8742 39.3994 19.9653C39.4808 20.0532 39.624 20.0972 39.8291 20.0972C39.9658 20.0972 40.1042 20.0809 40.2441 20.0483V20.9663C39.974 21.0412 39.7135 21.0786 39.4629 21.0786C38.5514 21.0786 38.0957 20.5757 38.0957 19.5698V16.5767H37.2266V15.6978H38.0957V14.4136H39.2822ZM48.5742 14.8677H46.3574V20.981H45.1318V14.8677H42.9346V13.8716H48.5742V14.8677ZM50.6592 20.981H49.4727V15.6978H50.6592V20.981ZM49.3994 14.3257C49.3994 14.1434 49.4564 13.992 49.5703 13.8716C49.6875 13.7511 49.8535 13.6909 50.0684 13.6909C50.2832 13.6909 50.4492 13.7511 50.5664 13.8716C50.6836 13.992 50.7422 14.1434 50.7422 14.3257C50.7422 14.5047 50.6836 14.6545 50.5664 14.7749C50.4492 14.8921 50.2832 14.9507 50.0684 14.9507C49.8535 14.9507 49.6875 14.8921 49.5703 14.7749C49.4564 14.6545 49.3994 14.5047 49.3994 14.3257ZM53.4424 14.4136V15.6978H54.375V16.5767H53.4424V19.5259C53.4424 19.7277 53.4814 19.8742 53.5596 19.9653C53.641 20.0532 53.7842 20.0972 53.9893 20.0972C54.126 20.0972 54.2643 20.0809 54.4043 20.0483V20.9663C54.1341 21.0412 53.8737 21.0786 53.623 21.0786C52.7116 21.0786 52.2559 20.5757 52.2559 19.5698V16.5767H51.3867V15.6978H52.2559V14.4136H53.4424ZM56.5479 20.981H55.3613V13.481H56.5479V20.981ZM60.1709 21.0786C59.4189 21.0786 58.8086 20.8426 58.3398 20.3706C57.8743 19.8953 57.6416 19.2638 57.6416 18.4761V18.3296C57.6416 17.8022 57.7425 17.3319 57.9443 16.9185C58.1494 16.5018 58.4359 16.1779 58.8037 15.9468C59.1715 15.7157 59.5817 15.6001 60.0342 15.6001C60.7536 15.6001 61.3086 15.8296 61.6992 16.2886C62.0931 16.7476 62.29 17.397 62.29 18.2368V18.7153H58.8379C58.8737 19.1515 59.0186 19.4966 59.2725 19.7505C59.5296 20.0044 59.8519 20.1313 60.2393 20.1313C60.7829 20.1313 61.2256 19.9116 61.5674 19.4722L62.207 20.0825C61.9954 20.3983 61.7122 20.644 61.3574 20.8198C61.0059 20.9924 60.6104 21.0786 60.1709 21.0786ZM60.0293 16.5522C59.7038 16.5522 59.4401 16.6662 59.2383 16.894C59.0397 17.1219 58.9128 17.4393 58.8574 17.8462H61.1182V17.7583C61.0921 17.3612 60.9863 17.0617 60.8008 16.8599C60.6152 16.6548 60.3581 16.5522 60.0293 16.5522Z" fill="#A4AFB7"/>
<path d="M50.7617 43.6758H48.5586L48.0977 45H47.0703L49.2188 39.3125H50.1055L52.2578 45H51.2266L50.7617 43.6758ZM48.8359 42.8789H50.4844L49.6602 40.5195L48.8359 42.8789ZM55.3281 44.5859C55.0495 44.9141 54.6536 45.0781 54.1406 45.0781C53.6823 45.0781 53.3346 44.944 53.0977 44.6758C52.8633 44.4076 52.7461 44.0195 52.7461 43.5117V40.7734H53.6953V43.5C53.6953 44.0365 53.918 44.3047 54.3633 44.3047C54.8242 44.3047 55.1354 44.1393 55.2969 43.8086V40.7734H56.2461V45H55.3516L55.3281 44.5859ZM58.4023 39.7461V40.7734H59.1484V41.4766H58.4023V43.8359C58.4023 43.9974 58.4336 44.1146 58.4961 44.1875C58.5612 44.2578 58.6758 44.293 58.8398 44.293C58.9492 44.293 59.0599 44.2799 59.1719 44.2539V44.9883C58.9557 45.0482 58.7474 45.0781 58.5469 45.0781C57.8177 45.0781 57.4531 44.6758 57.4531 43.8711V41.4766H56.7578V40.7734H57.4531V39.7461H58.4023ZM60.8125 41.2344C61.1224 40.875 61.5143 40.6953 61.9883 40.6953C62.8893 40.6953 63.3464 41.2096 63.3594 42.2383V45H62.4102V42.2734C62.4102 41.9818 62.3464 41.776 62.2188 41.6562C62.0938 41.5339 61.9089 41.4727 61.6641 41.4727C61.2839 41.4727 61 41.6419 60.8125 41.9805V45H59.8633V39H60.8125V41.2344ZM64.1445 42.8477C64.1445 42.4336 64.2266 42.0612 64.3906 41.7305C64.5547 41.3971 64.7852 41.1419 65.082 40.9648C65.3789 40.7852 65.7201 40.6953 66.1055 40.6953C66.6758 40.6953 67.138 40.8789 67.4922 41.2461C67.849 41.6133 68.0417 42.1003 68.0703 42.707L68.0742 42.9297C68.0742 43.3464 67.9935 43.7188 67.832 44.0469C67.6732 44.375 67.444 44.6289 67.1445 44.8086C66.8477 44.9883 66.5039 45.0781 66.1133 45.0781C65.5169 45.0781 65.0391 44.8802 64.6797 44.4844C64.3229 44.0859 64.1445 43.556 64.1445 42.8945V42.8477ZM65.0938 42.9297C65.0938 43.3646 65.1836 43.7057 65.3633 43.9531C65.543 44.1979 65.793 44.3203 66.1133 44.3203C66.4336 44.3203 66.6823 44.1953 66.8594 43.9453C67.0391 43.6953 67.1289 43.3294 67.1289 42.8477C67.1289 42.4206 67.0365 42.082 66.8516 41.832C66.6693 41.582 66.4206 41.457 66.1055 41.457C65.7956 41.457 65.5495 41.5807 65.3672 41.8281C65.1849 42.0729 65.0938 42.4401 65.0938 42.9297ZM71.0898 41.6406C70.9648 41.6198 70.8359 41.6094 70.7031 41.6094C70.2682 41.6094 69.9753 41.776 69.8242 42.1094V45H68.875V40.7734H69.7812L69.8047 41.2461C70.0339 40.8789 70.3516 40.6953 70.7578 40.6953C70.8932 40.6953 71.0052 40.7135 71.0938 40.75L71.0898 41.6406Z" fill="#A4AFB7"/>
<rect x="20" y="201" width="190" height="2" rx="1" fill="#D5DADF"/>
<rect x="20" y="213" width="190" height="2" rx="1" fill="#D5DADF"/>
<rect x="20" y="192" width="84" height="4" rx="2" fill="#D5DADF"/>
<rect x="20" y="207" width="161" height="2" rx="1" fill="#D5DADF"/>
<mask id="mask2" mask-type="alpha" maskUnits="userSpaceOnUse" x="0" y="90" width="229" height="85">
<path fill-rule="evenodd" clip-rule="evenodd" d="M0 90H229V175H0V90Z" fill="white"/>
</mask>
<g mask="url(#mask2)">
<rect x="22" y="74.4436" width="185" height="123.096" fill="#E6E9EC"/>
<mask id="mask3" mask-type="alpha" maskUnits="userSpaceOnUse" x="22" y="74" width="185" height="124">
<rect x="22" y="74.4436" width="185" height="123.096" fill="white"/>
</mask>
<g mask="url(#mask3)">
<path d="M236.688 208.587C236.688 208.587 188.224 114.645 151.548 107.017C114.873 99.3879 100.508 173.304 78.5612 163.5C74.4848 161.679 52.0116 135.678 33.8672 142.973C20.8164 148.22 -6.99962 208.93 -6.99962 208.93H236.688V208.587Z" fill="#F8F9FA"/>
<path d="M76.3735 136.91C80.5924 136.91 84.0126 133.467 84.0126 129.219C84.0126 124.972 80.5924 121.529 76.3735 121.529C72.1545 121.529 68.7344 124.972 68.7344 129.219C68.7344 133.467 72.1545 136.91 76.3735 136.91Z" fill="#F8F9FA"/>
</g>
</g>
</svg>
assets/images/app/site-editor/archive.svg000064400000040017151327220410014464 0ustar00<svg width="229" height="222" viewBox="0 0 229 222" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="229" height="222" fill="white"/>
<path d="M24.7021 19.3257H21.9482L21.3721 20.981H20.0879L22.7734 13.8716H23.8818L26.5723 20.981H25.2832L24.7021 19.3257ZM22.2949 18.3296H24.3555L23.3252 15.3804L22.2949 18.3296ZM30.0342 16.7817C29.8779 16.7557 29.7168 16.7427 29.5508 16.7427C29.0072 16.7427 28.641 16.951 28.4521 17.3677V20.981H27.2656V15.6978H28.3984L28.4277 16.2886C28.7142 15.8296 29.1113 15.6001 29.6191 15.6001C29.7884 15.6001 29.9284 15.6229 30.0391 15.6685L30.0342 16.7817ZM32.8564 20.1313C33.1527 20.1313 33.3984 20.0451 33.5938 19.8726C33.7891 19.7 33.8932 19.4868 33.9062 19.2329H35.0244C35.0114 19.5617 34.9089 19.8693 34.7168 20.1558C34.5247 20.439 34.2643 20.6636 33.9355 20.8296C33.6068 20.9956 33.252 21.0786 32.8711 21.0786C32.1322 21.0786 31.5462 20.8394 31.1133 20.3608C30.6803 19.8823 30.4639 19.2215 30.4639 18.3784V18.2563C30.4639 17.4523 30.6787 16.8094 31.1084 16.3276C31.5381 15.8426 32.124 15.6001 32.8662 15.6001C33.4945 15.6001 34.0055 15.784 34.3994 16.1519C34.7965 16.5164 35.0049 16.9966 35.0244 17.5923H33.9062C33.8932 17.2896 33.7891 17.0405 33.5938 16.8452C33.4017 16.6499 33.1559 16.5522 32.8564 16.5522C32.4723 16.5522 32.1761 16.6922 31.9678 16.9722C31.7594 17.2489 31.6536 17.6704 31.6504 18.2368V18.4272C31.6504 19.0002 31.7529 19.4282 31.958 19.7114C32.1663 19.9914 32.4658 20.1313 32.8564 20.1313ZM37.0898 16.2739C37.4772 15.8247 37.9671 15.6001 38.5596 15.6001C39.6859 15.6001 40.2572 16.243 40.2734 17.5288V20.981H39.0869V17.5728C39.0869 17.2082 39.0072 16.951 38.8477 16.8013C38.6914 16.6483 38.4603 16.5718 38.1543 16.5718C37.679 16.5718 37.3242 16.7834 37.0898 17.2065V20.981H35.9033V13.481H37.0898V16.2739ZM42.7393 20.981H41.5527V15.6978H42.7393V20.981ZM41.4795 14.3257C41.4795 14.1434 41.5365 13.992 41.6504 13.8716C41.7676 13.7511 41.9336 13.6909 42.1484 13.6909C42.3633 13.6909 42.5293 13.7511 42.6465 13.8716C42.7637 13.992 42.8223 14.1434 42.8223 14.3257C42.8223 14.5047 42.7637 14.6545 42.6465 14.7749C42.5293 14.8921 42.3633 14.9507 42.1484 14.9507C41.9336 14.9507 41.7676 14.8921 41.6504 14.7749C41.5365 14.6545 41.4795 14.5047 41.4795 14.3257ZM45.8984 19.4771L47.0166 15.6978H48.2422L46.4111 20.981H45.3809L43.5352 15.6978H44.7656L45.8984 19.4771ZM51.2451 21.0786C50.4932 21.0786 49.8828 20.8426 49.4141 20.3706C48.9486 19.8953 48.7158 19.2638 48.7158 18.4761V18.3296C48.7158 17.8022 48.8167 17.3319 49.0186 16.9185C49.2236 16.5018 49.5101 16.1779 49.8779 15.9468C50.2458 15.7157 50.6559 15.6001 51.1084 15.6001C51.8278 15.6001 52.3828 15.8296 52.7734 16.2886C53.1673 16.7476 53.3643 17.397 53.3643 18.2368V18.7153H49.9121C49.9479 19.1515 50.0928 19.4966 50.3467 19.7505C50.6038 20.0044 50.9261 20.1313 51.3135 20.1313C51.8571 20.1313 52.2998 19.9116 52.6416 19.4722L53.2812 20.0825C53.0697 20.3983 52.7865 20.644 52.4316 20.8198C52.0801 20.9924 51.6846 21.0786 51.2451 21.0786ZM51.1035 16.5522C50.778 16.5522 50.5143 16.6662 50.3125 16.894C50.1139 17.1219 49.987 17.4393 49.9316 17.8462H52.1924V17.7583C52.1663 17.3612 52.0605 17.0617 51.875 16.8599C51.6895 16.6548 51.4323 16.5522 51.1035 16.5522ZM61.7383 14.8677H59.5215V20.981H58.2959V14.8677H56.0986V13.8716H61.7383V14.8677ZM63.8232 20.981H62.6367V15.6978H63.8232V20.981ZM62.5635 14.3257C62.5635 14.1434 62.6204 13.992 62.7344 13.8716C62.8516 13.7511 63.0176 13.6909 63.2324 13.6909C63.4473 13.6909 63.6133 13.7511 63.7305 13.8716C63.8477 13.992 63.9062 14.1434 63.9062 14.3257C63.9062 14.5047 63.8477 14.6545 63.7305 14.7749C63.6133 14.8921 63.4473 14.9507 63.2324 14.9507C63.0176 14.9507 62.8516 14.8921 62.7344 14.7749C62.6204 14.6545 62.5635 14.5047 62.5635 14.3257ZM66.6064 14.4136V15.6978H67.5391V16.5767H66.6064V19.5259C66.6064 19.7277 66.6455 19.8742 66.7236 19.9653C66.805 20.0532 66.9482 20.0972 67.1533 20.0972C67.29 20.0972 67.4284 20.0809 67.5684 20.0483V20.9663C67.2982 21.0412 67.0378 21.0786 66.7871 21.0786C65.8757 21.0786 65.4199 20.5757 65.4199 19.5698V16.5767H64.5508V15.6978H65.4199V14.4136H66.6064ZM69.7119 20.981H68.5254V13.481H69.7119V20.981ZM73.335 21.0786C72.583 21.0786 71.9727 20.8426 71.5039 20.3706C71.0384 19.8953 70.8057 19.2638 70.8057 18.4761V18.3296C70.8057 17.8022 70.9066 17.3319 71.1084 16.9185C71.3135 16.5018 71.5999 16.1779 71.9678 15.9468C72.3356 15.7157 72.7458 15.6001 73.1982 15.6001C73.9176 15.6001 74.4727 15.8296 74.8633 16.2886C75.2572 16.7476 75.4541 17.397 75.4541 18.2368V18.7153H72.002C72.0378 19.1515 72.1826 19.4966 72.4365 19.7505C72.6937 20.0044 73.016 20.1313 73.4033 20.1313C73.9469 20.1313 74.3896 19.9116 74.7314 19.4722L75.3711 20.0825C75.1595 20.3983 74.8763 20.644 74.5215 20.8198C74.1699 20.9924 73.7744 21.0786 73.335 21.0786ZM73.1934 16.5522C72.8678 16.5522 72.6042 16.6662 72.4023 16.894C72.2038 17.1219 72.0768 17.4393 72.0215 17.8462H74.2822V17.7583C74.2562 17.3612 74.1504 17.0617 73.9648 16.8599C73.7793 16.6548 73.5221 16.5522 73.1934 16.5522Z" fill="#A4AFB7"/>
<rect x="22" y="76" width="38" height="2" rx="1" fill="#D5DADF"/>
<rect x="22" y="96" width="32" height="2" rx="1" fill="#D5DADF"/>
<rect x="22" y="86" width="47" height="2" rx="1" fill="#D5DADF"/>
<rect x="22" y="81" width="53" height="2" rx="1" fill="#D5DADF"/>
<rect x="22" y="91" width="53" height="2" rx="1" fill="#D5DADF"/>
<mask id="mask0" mask-type="alpha" maskUnits="userSpaceOnUse" x="22" y="42" width="53" height="30">
<path fill-rule="evenodd" clip-rule="evenodd" d="M22 42H75V72H22V42Z" fill="white"/>
</mask>
<g mask="url(#mask0)">
<rect x="21.0918" y="39.3774" width="56.0286" height="36.5771" fill="#E6E9EC"/>
<mask id="mask1" mask-type="alpha" maskUnits="userSpaceOnUse" x="21" y="39" width="57" height="37">
<rect x="21.0918" y="39.3774" width="56.0286" height="36.5771" fill="white"/>
</mask>
<g mask="url(#mask1)">
<path d="M86.1133 79.2374C86.1133 79.2374 71.4357 51.3234 60.3283 49.0566C49.2209 46.7897 44.8704 68.7533 38.2236 65.8403C36.989 65.2992 30.1828 57.573 24.6877 59.7407C20.7352 61.2998 12.3109 79.3395 12.3109 79.3395H86.1133V79.2374Z" fill="#F8F9FA"/>
<path d="M37.5596 57.9391C38.8374 57.9391 39.8732 56.916 39.8732 55.654C39.8732 54.392 38.8374 53.3689 37.5596 53.3689C36.2819 53.3689 35.2461 54.392 35.2461 55.654C35.2461 56.916 36.2819 57.9391 37.5596 57.9391Z" fill="#F8F9FA"/>
</g>
</g>
<rect x="22" y="145" width="38" height="2" rx="1" fill="#D5DADF"/>
<rect x="22" y="165" width="32" height="2" rx="1" fill="#D5DADF"/>
<rect x="22" y="155" width="47" height="2" rx="1" fill="#D5DADF"/>
<rect x="22" y="150" width="53" height="2" rx="1" fill="#D5DADF"/>
<rect x="22" y="160" width="53" height="2" rx="1" fill="#D5DADF"/>
<mask id="mask2" mask-type="alpha" maskUnits="userSpaceOnUse" x="22" y="111" width="53" height="30">
<path fill-rule="evenodd" clip-rule="evenodd" d="M22 111H75V141H22V111Z" fill="white"/>
</mask>
<g mask="url(#mask2)">
<rect x="21.0918" y="108.377" width="56.0286" height="36.5771" fill="#E6E9EC"/>
<mask id="mask3" mask-type="alpha" maskUnits="userSpaceOnUse" x="21" y="108" width="57" height="37">
<rect x="21.0918" y="108.377" width="56.0286" height="36.5771" fill="white"/>
</mask>
<g mask="url(#mask3)">
<path d="M86.1133 148.237C86.1133 148.237 71.4357 120.323 60.3283 118.057C49.2209 115.79 44.8704 137.753 38.2236 134.84C36.989 134.299 30.1828 126.573 24.6877 128.741C20.7352 130.3 12.3109 148.34 12.3109 148.34H86.1133V148.237Z" fill="#F8F9FA"/>
<path d="M37.5596 126.939C38.8374 126.939 39.8732 125.916 39.8732 124.654C39.8732 123.392 38.8374 122.369 37.5596 122.369C36.2819 122.369 35.2461 123.392 35.2461 124.654C35.2461 125.916 36.2819 126.939 37.5596 126.939Z" fill="#F8F9FA"/>
</g>
</g>
<rect x="22" y="214" width="38" height="2" rx="1" fill="#D5DADF"/>
<rect x="22" y="219" width="53" height="2" rx="1" fill="#D5DADF"/>
<mask id="mask4" mask-type="alpha" maskUnits="userSpaceOnUse" x="22" y="180" width="53" height="30">
<path fill-rule="evenodd" clip-rule="evenodd" d="M22 180H75V210H22V180Z" fill="white"/>
</mask>
<g mask="url(#mask4)">
<rect x="21.0918" y="177.377" width="56.0286" height="36.5771" fill="#E6E9EC"/>
<mask id="mask5" mask-type="alpha" maskUnits="userSpaceOnUse" x="21" y="177" width="57" height="37">
<rect x="21.0918" y="177.377" width="56.0286" height="36.5771" fill="white"/>
</mask>
<g mask="url(#mask5)">
<path d="M86.1133 217.237C86.1133 217.237 71.4357 189.323 60.3283 187.057C49.2209 184.79 44.8704 206.753 38.2236 203.84C36.989 203.299 30.1828 195.573 24.6877 197.741C20.7352 199.3 12.3109 217.34 12.3109 217.34H86.1133V217.237Z" fill="#F8F9FA"/>
<path d="M37.5596 195.939C38.8374 195.939 39.8732 194.916 39.8732 193.654C39.8732 192.392 38.8374 191.369 37.5596 191.369C36.2819 191.369 35.2461 192.392 35.2461 193.654C35.2461 194.916 36.2819 195.939 37.5596 195.939Z" fill="#F8F9FA"/>
</g>
</g>
<rect x="88" y="76" width="38" height="2" rx="1" fill="#D5DADF"/>
<rect x="88" y="96" width="32" height="2" rx="1" fill="#D5DADF"/>
<rect x="88" y="86" width="47" height="2" rx="1" fill="#D5DADF"/>
<rect x="88" y="81" width="53" height="2" rx="1" fill="#D5DADF"/>
<rect x="88" y="91" width="53" height="2" rx="1" fill="#D5DADF"/>
<mask id="mask6" mask-type="alpha" maskUnits="userSpaceOnUse" x="88" y="42" width="53" height="30">
<path fill-rule="evenodd" clip-rule="evenodd" d="M88 42H141V72H88V42Z" fill="white"/>
</mask>
<g mask="url(#mask6)">
<rect x="87.0918" y="39.3774" width="56.0286" height="36.5771" fill="#E6E9EC"/>
<mask id="mask7" mask-type="alpha" maskUnits="userSpaceOnUse" x="87" y="39" width="57" height="37">
<rect x="87.0918" y="39.3774" width="56.0286" height="36.5771" fill="white"/>
</mask>
<g mask="url(#mask7)">
<path d="M152.113 79.2374C152.113 79.2374 137.436 51.3234 126.328 49.0566C115.221 46.7897 110.87 68.7533 104.224 65.8403C102.989 65.2992 96.1828 57.573 90.6877 59.7407C86.7352 61.2998 78.3109 79.3395 78.3109 79.3395H152.113V79.2374Z" fill="#F8F9FA"/>
<path d="M103.56 57.9391C104.837 57.9391 105.873 56.916 105.873 55.654C105.873 54.392 104.837 53.3689 103.56 53.3689C102.282 53.3689 101.246 54.392 101.246 55.654C101.246 56.916 102.282 57.9391 103.56 57.9391Z" fill="#F8F9FA"/>
</g>
</g>
<rect x="88" y="145" width="38" height="2" rx="1" fill="#D5DADF"/>
<rect x="88" y="165" width="32" height="2" rx="1" fill="#D5DADF"/>
<rect x="88" y="155" width="47" height="2" rx="1" fill="#D5DADF"/>
<rect x="88" y="150" width="53" height="2" rx="1" fill="#D5DADF"/>
<rect x="88" y="160" width="53" height="2" rx="1" fill="#D5DADF"/>
<mask id="mask8" mask-type="alpha" maskUnits="userSpaceOnUse" x="88" y="111" width="53" height="30">
<path fill-rule="evenodd" clip-rule="evenodd" d="M88 111H141V141H88V111Z" fill="white"/>
</mask>
<g mask="url(#mask8)">
<rect x="87.0918" y="108.377" width="56.0286" height="36.5771" fill="#E6E9EC"/>
<mask id="mask9" mask-type="alpha" maskUnits="userSpaceOnUse" x="87" y="108" width="57" height="37">
<rect x="87.0918" y="108.377" width="56.0286" height="36.5771" fill="white"/>
</mask>
<g mask="url(#mask9)">
<path d="M152.113 148.237C152.113 148.237 137.436 120.323 126.328 118.057C115.221 115.79 110.87 137.753 104.224 134.84C102.989 134.299 96.1828 126.573 90.6877 128.741C86.7352 130.3 78.3109 148.34 78.3109 148.34H152.113V148.237Z" fill="#F8F9FA"/>
<path d="M103.56 126.939C104.837 126.939 105.873 125.916 105.873 124.654C105.873 123.392 104.837 122.369 103.56 122.369C102.282 122.369 101.246 123.392 101.246 124.654C101.246 125.916 102.282 126.939 103.56 126.939Z" fill="#F8F9FA"/>
</g>
</g>
<rect x="88" y="214" width="38" height="2" rx="1" fill="#D5DADF"/>
<rect x="88" y="219" width="53" height="2" rx="1" fill="#D5DADF"/>
<mask id="mask10" mask-type="alpha" maskUnits="userSpaceOnUse" x="88" y="180" width="53" height="30">
<path fill-rule="evenodd" clip-rule="evenodd" d="M88 180H141V210H88V180Z" fill="white"/>
</mask>
<g mask="url(#mask10)">
<rect x="87.0918" y="177.377" width="56.0286" height="36.5771" fill="#E6E9EC"/>
<mask id="mask11" mask-type="alpha" maskUnits="userSpaceOnUse" x="87" y="177" width="57" height="37">
<rect x="87.0918" y="177.377" width="56.0286" height="36.5771" fill="white"/>
</mask>
<g mask="url(#mask11)">
<path d="M152.113 217.237C152.113 217.237 137.436 189.323 126.328 187.057C115.221 184.79 110.87 206.753 104.224 203.84C102.989 203.299 96.1828 195.573 90.6877 197.741C86.7352 199.3 78.3109 217.34 78.3109 217.34H152.113V217.237Z" fill="#F8F9FA"/>
<path d="M103.56 195.939C104.837 195.939 105.873 194.916 105.873 193.654C105.873 192.392 104.837 191.369 103.56 191.369C102.282 191.369 101.246 192.392 101.246 193.654C101.246 194.916 102.282 195.939 103.56 195.939Z" fill="#F8F9FA"/>
</g>
</g>
<rect x="154" y="76" width="38" height="2" rx="1" fill="#D5DADF"/>
<rect x="154" y="96" width="32" height="2" rx="1" fill="#D5DADF"/>
<rect x="154" y="86" width="47" height="2" rx="1" fill="#D5DADF"/>
<rect x="154" y="81" width="53" height="2" rx="1" fill="#D5DADF"/>
<rect x="154" y="91" width="53" height="2" rx="1" fill="#D5DADF"/>
<mask id="mask12" mask-type="alpha" maskUnits="userSpaceOnUse" x="154" y="42" width="53" height="30">
<path fill-rule="evenodd" clip-rule="evenodd" d="M154 42H207V72H154V42Z" fill="white"/>
</mask>
<g mask="url(#mask12)">
<rect x="153.092" y="39.3774" width="56.0286" height="36.5771" fill="#E6E9EC"/>
<mask id="mask13" mask-type="alpha" maskUnits="userSpaceOnUse" x="153" y="39" width="57" height="37">
<rect x="153.092" y="39.3774" width="56.0286" height="36.5771" fill="white"/>
</mask>
<g mask="url(#mask13)">
<path d="M218.113 79.2374C218.113 79.2374 203.436 51.3234 192.328 49.0566C181.221 46.7897 176.87 68.7533 170.224 65.8403C168.989 65.2992 162.183 57.573 156.688 59.7407C152.735 61.2998 144.311 79.3395 144.311 79.3395H218.113V79.2374Z" fill="#F8F9FA"/>
<path d="M169.56 57.9391C170.837 57.9391 171.873 56.916 171.873 55.654C171.873 54.392 170.837 53.3689 169.56 53.3689C168.282 53.3689 167.246 54.392 167.246 55.654C167.246 56.916 168.282 57.9391 169.56 57.9391Z" fill="#F8F9FA"/>
</g>
</g>
<rect x="154" y="145" width="38" height="2" rx="1" fill="#D5DADF"/>
<rect x="154" y="165" width="32" height="2" rx="1" fill="#D5DADF"/>
<rect x="154" y="155" width="47" height="2" rx="1" fill="#D5DADF"/>
<rect x="154" y="150" width="53" height="2" rx="1" fill="#D5DADF"/>
<rect x="154" y="160" width="53" height="2" rx="1" fill="#D5DADF"/>
<mask id="mask14" mask-type="alpha" maskUnits="userSpaceOnUse" x="154" y="111" width="53" height="30">
<path fill-rule="evenodd" clip-rule="evenodd" d="M154 111H207V141H154V111Z" fill="white"/>
</mask>
<g mask="url(#mask14)">
<rect x="153.092" y="108.377" width="56.0286" height="36.5771" fill="#E6E9EC"/>
<mask id="mask15" mask-type="alpha" maskUnits="userSpaceOnUse" x="153" y="108" width="57" height="37">
<rect x="153.092" y="108.377" width="56.0286" height="36.5771" fill="white"/>
</mask>
<g mask="url(#mask15)">
<path d="M218.113 148.237C218.113 148.237 203.436 120.323 192.328 118.057C181.221 115.79 176.87 137.753 170.224 134.84C168.989 134.299 162.183 126.573 156.688 128.741C152.735 130.3 144.311 148.34 144.311 148.34H218.113V148.237Z" fill="#F8F9FA"/>
<path d="M169.56 126.939C170.837 126.939 171.873 125.916 171.873 124.654C171.873 123.392 170.837 122.369 169.56 122.369C168.282 122.369 167.246 123.392 167.246 124.654C167.246 125.916 168.282 126.939 169.56 126.939Z" fill="#F8F9FA"/>
</g>
</g>
<rect x="154" y="214" width="38" height="2" rx="1" fill="#D5DADF"/>
<rect x="154" y="219" width="53" height="2" rx="1" fill="#D5DADF"/>
<mask id="mask16" mask-type="alpha" maskUnits="userSpaceOnUse" x="154" y="180" width="53" height="30">
<path fill-rule="evenodd" clip-rule="evenodd" d="M154 180H207V210H154V180Z" fill="white"/>
</mask>
<g mask="url(#mask16)">
<rect x="153.092" y="177.377" width="56.0286" height="36.5771" fill="#E6E9EC"/>
<mask id="mask17" mask-type="alpha" maskUnits="userSpaceOnUse" x="153" y="177" width="57" height="37">
<rect x="153.092" y="177.377" width="56.0286" height="36.5771" fill="white"/>
</mask>
<g mask="url(#mask17)">
<path d="M218.113 217.237C218.113 217.237 203.436 189.323 192.328 187.057C181.221 184.79 176.87 206.753 170.224 203.84C168.989 203.299 162.183 195.573 156.688 197.741C152.735 199.3 144.311 217.34 144.311 217.34H218.113V217.237Z" fill="#F8F9FA"/>
<path d="M169.56 195.939C170.837 195.939 171.873 194.916 171.873 193.654C171.873 192.392 170.837 191.369 169.56 191.369C168.282 191.369 167.246 192.392 167.246 193.654C167.246 194.916 168.282 195.939 169.56 195.939Z" fill="#F8F9FA"/>
</g>
</g>
</svg>
assets/images/app/site-editor/product.svg000064400000074157151327220410014537 0ustar00<svg width="230" height="223" viewBox="0 0 230 223" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect y="0.171875" width="229.827" height="222" fill="white"/>
<rect x="140" y="97" width="40" height="10.8866" rx="5.44328" fill="#D5DADF"/>
<path d="M141.958 28.3584V31H140.723V23.8906H143.442C144.237 23.8906 144.867 24.0973 145.332 24.5107C145.801 24.9242 146.035 25.471 146.035 26.1514C146.035 26.848 145.806 27.39 145.347 27.7773C144.891 28.1647 144.251 28.3584 143.428 28.3584H141.958ZM141.958 27.3672H143.442C143.882 27.3672 144.217 27.2646 144.448 27.0596C144.679 26.8512 144.795 26.5518 144.795 26.1611C144.795 25.777 144.678 25.471 144.443 25.2432C144.209 25.012 143.887 24.8932 143.477 24.8867H141.958V27.3672ZM149.771 26.8008C149.614 26.7747 149.453 26.7617 149.287 26.7617C148.743 26.7617 148.377 26.9701 148.188 27.3867V31H147.002V25.7168H148.135L148.164 26.3076C148.451 25.8486 148.848 25.6191 149.355 25.6191C149.525 25.6191 149.665 25.6419 149.775 25.6875L149.771 26.8008ZM150.122 28.3096C150.122 27.792 150.225 27.3265 150.43 26.9131C150.635 26.4964 150.923 26.1774 151.294 25.9561C151.665 25.7314 152.091 25.6191 152.573 25.6191C153.286 25.6191 153.864 25.8486 154.307 26.3076C154.753 26.7666 154.993 27.3753 155.029 28.1338L155.034 28.4121C155.034 28.9329 154.933 29.3984 154.731 29.8086C154.533 30.2188 154.246 30.5361 153.872 30.7607C153.501 30.9854 153.071 31.0977 152.583 31.0977C151.838 31.0977 151.24 30.8503 150.791 30.3555C150.345 29.8574 150.122 29.195 150.122 28.3682V28.3096ZM151.309 28.4121C151.309 28.9557 151.421 29.3822 151.646 29.6914C151.87 29.9974 152.183 30.1504 152.583 30.1504C152.983 30.1504 153.294 29.9941 153.516 29.6816C153.74 29.3691 153.853 28.9118 153.853 28.3096C153.853 27.7757 153.737 27.3525 153.506 27.04C153.278 26.7275 152.967 26.5713 152.573 26.5713C152.186 26.5713 151.878 26.7259 151.65 27.0352C151.423 27.3411 151.309 27.8001 151.309 28.4121ZM155.815 28.3193C155.815 27.5055 156.004 26.8529 156.382 26.3613C156.759 25.8665 157.266 25.6191 157.9 25.6191C158.46 25.6191 158.913 25.8145 159.258 26.2051V23.5H160.444V31H159.37L159.312 30.4531C158.957 30.8828 158.483 31.0977 157.891 31.0977C157.272 31.0977 156.771 30.8486 156.387 30.3506C156.006 29.8525 155.815 29.1755 155.815 28.3193ZM157.002 28.4219C157.002 28.959 157.104 29.3789 157.31 29.6816C157.518 29.9811 157.812 30.1309 158.193 30.1309C158.678 30.1309 159.033 29.9144 159.258 29.4814V27.2256C159.04 26.8024 158.688 26.5908 158.203 26.5908C157.819 26.5908 157.523 26.7438 157.314 27.0498C157.106 27.3525 157.002 27.8099 157.002 28.4219ZM164.883 30.4824C164.535 30.8926 164.04 31.0977 163.398 31.0977C162.826 31.0977 162.391 30.93 162.095 30.5947C161.802 30.2594 161.655 29.7744 161.655 29.1396V25.7168H162.842V29.125C162.842 29.7956 163.12 30.1309 163.677 30.1309C164.253 30.1309 164.642 29.9242 164.844 29.5107V25.7168H166.03V31H164.912L164.883 30.4824ZM169.409 30.1504C169.705 30.1504 169.951 30.0641 170.146 29.8916C170.342 29.7191 170.446 29.5059 170.459 29.252H171.577C171.564 29.5807 171.462 29.8883 171.27 30.1748C171.077 30.458 170.817 30.6826 170.488 30.8486C170.16 31.0146 169.805 31.0977 169.424 31.0977C168.685 31.0977 168.099 30.8584 167.666 30.3799C167.233 29.9014 167.017 29.2406 167.017 28.3975V28.2754C167.017 27.4714 167.231 26.8285 167.661 26.3467C168.091 25.8617 168.677 25.6191 169.419 25.6191C170.047 25.6191 170.558 25.8031 170.952 26.1709C171.349 26.5355 171.558 27.0156 171.577 27.6113H170.459C170.446 27.3086 170.342 27.0596 170.146 26.8643C169.954 26.6689 169.709 26.5713 169.409 26.5713C169.025 26.5713 168.729 26.7113 168.521 26.9912C168.312 27.2679 168.206 27.6895 168.203 28.2559V28.4463C168.203 29.0192 168.306 29.4473 168.511 29.7305C168.719 30.0104 169.019 30.1504 169.409 30.1504ZM173.96 24.4326V25.7168H174.893V26.5957H173.96V29.5449C173.96 29.7467 173.999 29.8932 174.077 29.9844C174.159 30.0723 174.302 30.1162 174.507 30.1162C174.644 30.1162 174.782 30.0999 174.922 30.0674V30.9854C174.652 31.0602 174.391 31.0977 174.141 31.0977C173.229 31.0977 172.773 30.5947 172.773 29.5889V26.5957H171.904V25.7168H172.773V24.4326H173.96ZM183.252 24.8867H181.035V31H179.81V24.8867H177.612V23.8906H183.252V24.8867ZM185.337 31H184.15V25.7168H185.337V31ZM184.077 24.3447C184.077 24.1624 184.134 24.0111 184.248 23.8906C184.365 23.7702 184.531 23.71 184.746 23.71C184.961 23.71 185.127 23.7702 185.244 23.8906C185.361 24.0111 185.42 24.1624 185.42 24.3447C185.42 24.5238 185.361 24.6735 185.244 24.7939C185.127 24.9111 184.961 24.9697 184.746 24.9697C184.531 24.9697 184.365 24.9111 184.248 24.7939C184.134 24.6735 184.077 24.5238 184.077 24.3447ZM188.12 24.4326V25.7168H189.053V26.5957H188.12V29.5449C188.12 29.7467 188.159 29.8932 188.237 29.9844C188.319 30.0723 188.462 30.1162 188.667 30.1162C188.804 30.1162 188.942 30.0999 189.082 30.0674V30.9854C188.812 31.0602 188.551 31.0977 188.301 31.0977C187.389 31.0977 186.934 30.5947 186.934 29.5889V26.5957H186.064V25.7168H186.934V24.4326H188.12ZM191.226 31H190.039V23.5H191.226V31ZM194.849 31.0977C194.097 31.0977 193.486 30.8617 193.018 30.3896C192.552 29.9144 192.319 29.2829 192.319 28.4951V28.3486C192.319 27.8213 192.42 27.3509 192.622 26.9375C192.827 26.5208 193.114 26.1969 193.481 25.9658C193.849 25.7347 194.259 25.6191 194.712 25.6191C195.431 25.6191 195.986 25.8486 196.377 26.3076C196.771 26.7666 196.968 27.416 196.968 28.2559V28.7344H193.516C193.551 29.1706 193.696 29.5156 193.95 29.7695C194.207 30.0234 194.53 30.1504 194.917 30.1504C195.461 30.1504 195.903 29.9307 196.245 29.4912L196.885 30.1016C196.673 30.4173 196.39 30.6631 196.035 30.8389C195.684 31.0114 195.288 31.0977 194.849 31.0977ZM194.707 26.5713C194.382 26.5713 194.118 26.6852 193.916 26.9131C193.717 27.141 193.59 27.4583 193.535 27.8652H195.796V27.7773C195.77 27.3802 195.664 27.0807 195.479 26.8789C195.293 26.6738 195.036 26.5713 194.707 26.5713Z" fill="#A4AFB7"/>
<path d="M81.5508 164.535C81.5508 164.285 81.4622 164.092 81.2852 163.957C81.1107 163.822 80.7943 163.685 80.3359 163.547C79.8776 163.409 79.513 163.255 79.2422 163.086C78.724 162.76 78.4648 162.336 78.4648 161.812C78.4648 161.354 78.651 160.977 79.0234 160.68C79.3984 160.383 79.8841 160.234 80.4805 160.234C80.8763 160.234 81.2292 160.307 81.5391 160.453C81.849 160.599 82.0924 160.807 82.2695 161.078C82.4466 161.346 82.5352 161.645 82.5352 161.973H81.5508C81.5508 161.676 81.457 161.444 81.2695 161.277C81.0846 161.108 80.819 161.023 80.4727 161.023C80.1497 161.023 79.8984 161.092 79.7188 161.23C79.5417 161.368 79.4531 161.561 79.4531 161.809C79.4531 162.017 79.5495 162.191 79.7422 162.332C79.9349 162.47 80.2526 162.605 80.6953 162.738C81.138 162.868 81.4935 163.018 81.7617 163.188C82.0299 163.354 82.2266 163.547 82.3516 163.766C82.4766 163.982 82.5391 164.236 82.5391 164.527C82.5391 165.001 82.3568 165.379 81.9922 165.66C81.6302 165.939 81.138 166.078 80.5156 166.078C80.1042 166.078 79.7253 166.003 79.3789 165.852C79.0352 165.698 78.7669 165.487 78.5742 165.219C78.3841 164.951 78.2891 164.638 78.2891 164.281H79.2773C79.2773 164.604 79.3841 164.854 79.5977 165.031C79.8112 165.208 80.1172 165.297 80.5156 165.297C80.8594 165.297 81.1172 165.228 81.2891 165.09C81.4635 164.949 81.5508 164.764 81.5508 164.535ZM85.875 165.586C85.5964 165.914 85.2005 166.078 84.6875 166.078C84.2292 166.078 83.8815 165.944 83.6445 165.676C83.4102 165.408 83.293 165.02 83.293 164.512V161.773H84.2422V164.5C84.2422 165.036 84.4648 165.305 84.9102 165.305C85.3711 165.305 85.6823 165.139 85.8438 164.809V161.773H86.793V166H85.8984L85.875 165.586ZM87.5938 163.855C87.5938 163.199 87.7474 162.676 88.0547 162.285C88.3646 161.892 88.7747 161.695 89.2852 161.695C89.7669 161.695 90.1458 161.863 90.4219 162.199L90.4648 161.773H91.3203V165.871C91.3203 166.426 91.1471 166.863 90.8008 167.184C90.457 167.504 89.9922 167.664 89.4062 167.664C89.0964 167.664 88.793 167.599 88.4961 167.469C88.2018 167.341 87.9779 167.173 87.8242 166.965L88.2734 166.395C88.5651 166.741 88.9245 166.914 89.3516 166.914C89.6667 166.914 89.9154 166.828 90.0977 166.656C90.2799 166.487 90.3711 166.237 90.3711 165.906V165.621C90.0977 165.926 89.7331 166.078 89.2773 166.078C88.7826 166.078 88.3776 165.882 88.0625 165.488C87.75 165.095 87.5938 164.551 87.5938 163.855ZM88.5391 163.938C88.5391 164.362 88.625 164.697 88.7969 164.941C88.9714 165.184 89.2122 165.305 89.5195 165.305C89.9023 165.305 90.1862 165.141 90.3711 164.812V162.953C90.1914 162.633 89.9102 162.473 89.5273 162.473C89.2148 162.473 88.9714 162.596 88.7969 162.844C88.625 163.091 88.5391 163.456 88.5391 163.938ZM92.1328 163.855C92.1328 163.199 92.2865 162.676 92.5938 162.285C92.9036 161.892 93.3138 161.695 93.8242 161.695C94.306 161.695 94.6849 161.863 94.9609 162.199L95.0039 161.773H95.8594V165.871C95.8594 166.426 95.6862 166.863 95.3398 167.184C94.9961 167.504 94.5312 167.664 93.9453 167.664C93.6354 167.664 93.332 167.599 93.0352 167.469C92.7409 167.341 92.5169 167.173 92.3633 166.965L92.8125 166.395C93.1042 166.741 93.4635 166.914 93.8906 166.914C94.2057 166.914 94.4544 166.828 94.6367 166.656C94.819 166.487 94.9102 166.237 94.9102 165.906V165.621C94.6367 165.926 94.2721 166.078 93.8164 166.078C93.3216 166.078 92.9167 165.882 92.6016 165.488C92.2891 165.095 92.1328 164.551 92.1328 163.855ZM93.0781 163.938C93.0781 164.362 93.1641 164.697 93.3359 164.941C93.5104 165.184 93.7513 165.305 94.0586 165.305C94.4414 165.305 94.7253 165.141 94.9102 164.812V162.953C94.7305 162.633 94.4492 162.473 94.0664 162.473C93.7539 162.473 93.5104 162.596 93.3359 162.844C93.1641 163.091 93.0781 163.456 93.0781 163.938ZM98.6992 166.078C98.0977 166.078 97.6094 165.889 97.2344 165.512C96.862 165.132 96.6758 164.626 96.6758 163.996V163.879C96.6758 163.457 96.7565 163.081 96.918 162.75C97.082 162.417 97.3112 162.158 97.6055 161.973C97.8997 161.788 98.2279 161.695 98.5898 161.695C99.1654 161.695 99.6094 161.879 99.9219 162.246C100.237 162.613 100.395 163.133 100.395 163.805V164.188H97.6328C97.6615 164.536 97.7773 164.812 97.9805 165.016C98.1862 165.219 98.444 165.32 98.7539 165.32C99.1888 165.32 99.543 165.145 99.8164 164.793L100.328 165.281C100.159 165.534 99.9323 165.73 99.6484 165.871C99.3672 166.009 99.0508 166.078 98.6992 166.078ZM98.5859 162.457C98.3255 162.457 98.1146 162.548 97.9531 162.73C97.7943 162.913 97.6927 163.167 97.6484 163.492H99.457V163.422C99.4362 163.104 99.3516 162.865 99.2031 162.703C99.0547 162.539 98.849 162.457 98.5859 162.457ZM103.504 164.852C103.504 164.682 103.434 164.553 103.293 164.465C103.155 164.376 102.924 164.298 102.602 164.23C102.279 164.163 102.009 164.077 101.793 163.973C101.319 163.743 101.082 163.411 101.082 162.977C101.082 162.612 101.236 162.307 101.543 162.062C101.85 161.818 102.241 161.695 102.715 161.695C103.22 161.695 103.628 161.82 103.938 162.07C104.25 162.32 104.406 162.645 104.406 163.043H103.457C103.457 162.861 103.389 162.71 103.254 162.59C103.118 162.467 102.939 162.406 102.715 162.406C102.507 162.406 102.336 162.454 102.203 162.551C102.073 162.647 102.008 162.776 102.008 162.938C102.008 163.083 102.069 163.197 102.191 163.277C102.314 163.358 102.561 163.44 102.934 163.523C103.306 163.604 103.598 163.702 103.809 163.816C104.022 163.928 104.18 164.064 104.281 164.223C104.385 164.382 104.438 164.574 104.438 164.801C104.438 165.181 104.28 165.49 103.965 165.727C103.65 165.961 103.237 166.078 102.727 166.078C102.38 166.078 102.072 166.016 101.801 165.891C101.53 165.766 101.319 165.594 101.168 165.375C101.017 165.156 100.941 164.921 100.941 164.668H101.863C101.876 164.892 101.961 165.065 102.117 165.188C102.273 165.307 102.48 165.367 102.738 165.367C102.988 165.367 103.178 165.32 103.309 165.227C103.439 165.13 103.504 165.005 103.504 164.852ZM106.457 160.746V161.773H107.203V162.477H106.457V164.836C106.457 164.997 106.488 165.115 106.551 165.188C106.616 165.258 106.73 165.293 106.895 165.293C107.004 165.293 107.115 165.28 107.227 165.254V165.988C107.01 166.048 106.802 166.078 106.602 166.078C105.872 166.078 105.508 165.676 105.508 164.871V162.477H104.812V161.773H105.508V160.746H106.457ZM109.793 166.078C109.191 166.078 108.703 165.889 108.328 165.512C107.956 165.132 107.77 164.626 107.77 163.996V163.879C107.77 163.457 107.85 163.081 108.012 162.75C108.176 162.417 108.405 162.158 108.699 161.973C108.993 161.788 109.322 161.695 109.684 161.695C110.259 161.695 110.703 161.879 111.016 162.246C111.331 162.613 111.488 163.133 111.488 163.805V164.188H108.727C108.755 164.536 108.871 164.812 109.074 165.016C109.28 165.219 109.538 165.32 109.848 165.32C110.283 165.32 110.637 165.145 110.91 164.793L111.422 165.281C111.253 165.534 111.026 165.73 110.742 165.871C110.461 166.009 110.145 166.078 109.793 166.078ZM109.68 162.457C109.419 162.457 109.208 162.548 109.047 162.73C108.888 162.913 108.786 163.167 108.742 163.492H110.551V163.422C110.53 163.104 110.445 162.865 110.297 162.703C110.148 162.539 109.943 162.457 109.68 162.457ZM112.051 163.855C112.051 163.204 112.202 162.682 112.504 162.289C112.806 161.893 113.211 161.695 113.719 161.695C114.167 161.695 114.529 161.852 114.805 162.164V160H115.754V166H114.895L114.848 165.562C114.564 165.906 114.185 166.078 113.711 166.078C113.216 166.078 112.815 165.879 112.508 165.48C112.203 165.082 112.051 164.54 112.051 163.855ZM113 163.938C113 164.367 113.082 164.703 113.246 164.945C113.413 165.185 113.648 165.305 113.953 165.305C114.341 165.305 114.625 165.132 114.805 164.785V162.98C114.63 162.642 114.349 162.473 113.961 162.473C113.654 162.473 113.417 162.595 113.25 162.84C113.083 163.082 113 163.448 113 163.938ZM119.816 163.887V166H118.828V160.312H121.004C121.639 160.312 122.143 160.478 122.516 160.809C122.891 161.139 123.078 161.577 123.078 162.121C123.078 162.678 122.895 163.112 122.527 163.422C122.163 163.732 121.651 163.887 120.992 163.887H119.816ZM119.816 163.094H121.004C121.355 163.094 121.624 163.012 121.809 162.848C121.993 162.681 122.086 162.441 122.086 162.129C122.086 161.822 121.992 161.577 121.805 161.395C121.617 161.21 121.359 161.115 121.031 161.109H119.816V163.094ZM126.066 162.641C125.941 162.62 125.812 162.609 125.68 162.609C125.245 162.609 124.952 162.776 124.801 163.109V166H123.852V161.773H124.758L124.781 162.246C125.01 161.879 125.328 161.695 125.734 161.695C125.87 161.695 125.982 161.714 126.07 161.75L126.066 162.641ZM126.348 163.848C126.348 163.434 126.43 163.061 126.594 162.73C126.758 162.397 126.988 162.142 127.285 161.965C127.582 161.785 127.923 161.695 128.309 161.695C128.879 161.695 129.341 161.879 129.695 162.246C130.052 162.613 130.245 163.1 130.273 163.707L130.277 163.93C130.277 164.346 130.197 164.719 130.035 165.047C129.876 165.375 129.647 165.629 129.348 165.809C129.051 165.988 128.707 166.078 128.316 166.078C127.72 166.078 127.242 165.88 126.883 165.484C126.526 165.086 126.348 164.556 126.348 163.895V163.848ZM127.297 163.93C127.297 164.365 127.387 164.706 127.566 164.953C127.746 165.198 127.996 165.32 128.316 165.32C128.637 165.32 128.885 165.195 129.062 164.945C129.242 164.695 129.332 164.329 129.332 163.848C129.332 163.421 129.24 163.082 129.055 162.832C128.872 162.582 128.624 162.457 128.309 162.457C127.999 162.457 127.753 162.581 127.57 162.828C127.388 163.073 127.297 163.44 127.297 163.93ZM130.902 163.855C130.902 163.204 131.053 162.682 131.355 162.289C131.658 161.893 132.062 161.695 132.57 161.695C133.018 161.695 133.38 161.852 133.656 162.164V160H134.605V166H133.746L133.699 165.562C133.415 165.906 133.036 166.078 132.562 166.078C132.068 166.078 131.667 165.879 131.359 165.48C131.055 165.082 130.902 164.54 130.902 163.855ZM131.852 163.938C131.852 164.367 131.934 164.703 132.098 164.945C132.264 165.185 132.5 165.305 132.805 165.305C133.193 165.305 133.477 165.132 133.656 164.785V162.98C133.482 162.642 133.201 162.473 132.812 162.473C132.505 162.473 132.268 162.595 132.102 162.84C131.935 163.082 131.852 163.448 131.852 163.938ZM138.156 165.586C137.878 165.914 137.482 166.078 136.969 166.078C136.51 166.078 136.163 165.944 135.926 165.676C135.691 165.408 135.574 165.02 135.574 164.512V161.773H136.523V164.5C136.523 165.036 136.746 165.305 137.191 165.305C137.652 165.305 137.964 165.139 138.125 164.809V161.773H139.074V166H138.18L138.156 165.586ZM141.777 165.32C142.014 165.32 142.211 165.251 142.367 165.113C142.523 164.975 142.607 164.805 142.617 164.602H143.512C143.501 164.865 143.419 165.111 143.266 165.34C143.112 165.566 142.904 165.746 142.641 165.879C142.378 166.012 142.094 166.078 141.789 166.078C141.198 166.078 140.729 165.887 140.383 165.504C140.036 165.121 139.863 164.592 139.863 163.918V163.82C139.863 163.177 140.035 162.663 140.379 162.277C140.723 161.889 141.191 161.695 141.785 161.695C142.288 161.695 142.697 161.842 143.012 162.137C143.329 162.428 143.496 162.812 143.512 163.289H142.617C142.607 163.047 142.523 162.848 142.367 162.691C142.214 162.535 142.017 162.457 141.777 162.457C141.47 162.457 141.233 162.569 141.066 162.793C140.9 163.014 140.815 163.352 140.812 163.805V163.957C140.812 164.415 140.895 164.758 141.059 164.984C141.225 165.208 141.465 165.32 141.777 165.32ZM145.418 160.746V161.773H146.164V162.477H145.418V164.836C145.418 164.997 145.449 165.115 145.512 165.188C145.577 165.258 145.691 165.293 145.855 165.293C145.965 165.293 146.076 165.28 146.188 165.254V165.988C145.971 166.048 145.763 166.078 145.562 166.078C144.833 166.078 144.469 165.676 144.469 164.871V162.477H143.773V161.773H144.469V160.746H145.418ZM149.262 164.852C149.262 164.682 149.191 164.553 149.051 164.465C148.913 164.376 148.682 164.298 148.359 164.23C148.036 164.163 147.767 164.077 147.551 163.973C147.077 163.743 146.84 163.411 146.84 162.977C146.84 162.612 146.993 162.307 147.301 162.062C147.608 161.818 147.999 161.695 148.473 161.695C148.978 161.695 149.385 161.82 149.695 162.07C150.008 162.32 150.164 162.645 150.164 163.043H149.215C149.215 162.861 149.147 162.71 149.012 162.59C148.876 162.467 148.697 162.406 148.473 162.406C148.264 162.406 148.094 162.454 147.961 162.551C147.831 162.647 147.766 162.776 147.766 162.938C147.766 163.083 147.827 163.197 147.949 163.277C148.072 163.358 148.319 163.44 148.691 163.523C149.064 163.604 149.355 163.702 149.566 163.816C149.78 163.928 149.938 164.064 150.039 164.223C150.143 164.382 150.195 164.574 150.195 164.801C150.195 165.181 150.038 165.49 149.723 165.727C149.408 165.961 148.995 166.078 148.484 166.078C148.138 166.078 147.829 166.016 147.559 165.891C147.288 165.766 147.077 165.594 146.926 165.375C146.775 165.156 146.699 164.921 146.699 164.668H147.621C147.634 164.892 147.719 165.065 147.875 165.188C148.031 165.307 148.238 165.367 148.496 165.367C148.746 165.367 148.936 165.32 149.066 165.227C149.197 165.13 149.262 165.005 149.262 164.852Z" fill="#A4AFB7"/>
<path d="M25.168 191.2C25.104 191.2 25.04 191.213 24.976 191.24C24.9173 191.267 24.8693 191.299 24.832 191.336L22.464 193.736C22.3787 193.821 22.336 193.944 22.336 194.104C22.336 194.259 22.3787 194.379 22.464 194.464L24.832 197.032C24.8907 197.091 24.944 197.133 24.992 197.16C25.0453 197.187 25.104 197.2 25.168 197.2C25.3227 197.2 25.4453 197.155 25.536 197.064C25.584 197.016 25.624 196.96 25.656 196.896C25.688 196.827 25.704 196.76 25.704 196.696C25.704 196.541 25.648 196.421 25.536 196.336L23.504 194.096L25.536 192C25.6213 191.915 25.664 191.813 25.664 191.696C25.664 191.541 25.6213 191.421 25.536 191.336C25.4667 191.283 25.4053 191.248 25.352 191.232C25.2987 191.211 25.2373 191.2 25.168 191.2Z" fill="#D5DADF"/>
<path d="M203.832 191.2C203.896 191.2 203.96 191.213 204.024 191.24C204.083 191.267 204.131 191.299 204.168 191.336L206.536 193.736C206.621 193.821 206.664 193.944 206.664 194.104C206.664 194.259 206.621 194.379 206.536 194.464L204.168 197.032C204.109 197.091 204.056 197.133 204.008 197.16C203.955 197.187 203.896 197.2 203.832 197.2C203.677 197.2 203.555 197.155 203.464 197.064C203.416 197.016 203.376 196.96 203.344 196.896C203.312 196.827 203.296 196.76 203.296 196.696C203.296 196.541 203.352 196.421 203.464 196.336L205.496 194.096L203.464 192C203.379 191.915 203.336 191.813 203.336 191.696C203.336 191.541 203.379 191.421 203.464 191.336C203.533 191.283 203.595 191.248 203.648 191.232C203.701 191.211 203.763 191.2 203.832 191.2Z" fill="#D5DADF"/>
<path d="M143.199 46.5156C143.199 46.2943 143.129 46.112 142.988 45.9688C142.848 45.8229 142.613 45.6927 142.285 45.5781C141.957 45.4609 141.702 45.3529 141.52 45.2539C140.913 44.9284 140.609 44.4466 140.609 43.8086C140.609 43.3763 140.741 43.0208 141.004 42.7422C141.267 42.4635 141.624 42.2982 142.074 42.2461V41.3945H142.699V42.2539C143.152 42.319 143.503 42.5117 143.75 42.832C143.997 43.1497 144.121 43.5638 144.121 44.0742H143.176C143.176 43.7461 143.102 43.4883 142.953 43.3008C142.807 43.1107 142.608 43.0156 142.355 43.0156C142.105 43.0156 141.91 43.0833 141.77 43.2188C141.629 43.3542 141.559 43.5482 141.559 43.8008C141.559 44.0273 141.628 44.2096 141.766 44.3477C141.906 44.4831 142.143 44.612 142.477 44.7344C142.81 44.8568 143.072 44.9701 143.262 45.0742C143.452 45.1784 143.612 45.2982 143.742 45.4336C143.872 45.5664 143.973 45.7201 144.043 45.8945C144.113 46.069 144.148 46.2734 144.148 46.5078C144.148 46.9479 144.013 47.3047 143.742 47.5781C143.474 47.8516 143.099 48.013 142.617 48.0625V48.8242H141.996V48.0664C141.48 48.0091 141.083 47.8242 140.805 47.5117C140.529 47.1992 140.391 46.7852 140.391 46.2695H141.34C141.34 46.5977 141.422 46.8516 141.586 47.0312C141.753 47.2109 141.987 47.3008 142.289 47.3008C142.586 47.3008 142.811 47.2292 142.965 47.0859C143.121 46.9427 143.199 46.7526 143.199 46.5156ZM146.07 44.7227H146.648C146.94 44.7201 147.171 44.6445 147.34 44.4961C147.512 44.3477 147.598 44.1328 147.598 43.8516C147.598 43.5807 147.526 43.3711 147.383 43.2227C147.242 43.0716 147.026 42.9961 146.734 42.9961C146.479 42.9961 146.27 43.0703 146.105 43.2188C145.941 43.3646 145.859 43.556 145.859 43.793H144.91C144.91 43.5013 144.987 43.2357 145.141 42.9961C145.297 42.7565 145.513 42.5703 145.789 42.4375C146.068 42.3021 146.379 42.2344 146.723 42.2344C147.29 42.2344 147.736 42.3776 148.059 42.6641C148.384 42.9479 148.547 43.3438 148.547 43.8516C148.547 44.1068 148.465 44.3477 148.301 44.5742C148.139 44.7982 147.93 44.9674 147.672 45.082C147.984 45.1888 148.221 45.3568 148.383 45.5859C148.547 45.8151 148.629 46.0885 148.629 46.4062C148.629 46.9167 148.453 47.3229 148.102 47.625C147.753 47.9271 147.293 48.0781 146.723 48.0781C146.176 48.0781 145.728 47.9323 145.379 47.6406C145.03 47.349 144.855 46.9609 144.855 46.4766H145.805C145.805 46.7266 145.888 46.9297 146.055 47.0859C146.224 47.2422 146.451 47.3203 146.734 47.3203C147.029 47.3203 147.26 47.2422 147.43 47.0859C147.599 46.9297 147.684 46.7031 147.684 46.4062C147.684 46.1068 147.595 45.8763 147.418 45.7148C147.241 45.5534 146.978 45.4727 146.629 45.4727H146.07V44.7227ZM153.227 45.6055C153.227 46.4232 153.073 47.0404 152.766 47.457C152.461 47.8711 151.996 48.0781 151.371 48.0781C150.757 48.0781 150.293 47.8763 149.98 47.4727C149.671 47.0664 149.512 46.4661 149.504 45.6719V44.6875C149.504 43.8698 149.656 43.2565 149.961 42.8477C150.268 42.4388 150.736 42.2344 151.363 42.2344C151.986 42.2344 152.449 42.4336 152.754 42.832C153.061 43.2305 153.219 43.8268 153.227 44.6211V45.6055ZM152.277 44.543C152.277 44.0091 152.204 43.6185 152.059 43.3711C151.913 43.1211 151.681 42.9961 151.363 42.9961C151.053 42.9961 150.826 43.1146 150.68 43.3516C150.534 43.5859 150.457 43.9531 150.449 44.4531V45.7422C150.449 46.2734 150.523 46.6693 150.672 46.9297C150.82 47.1901 151.053 47.3203 151.371 47.3203C151.676 47.3203 151.901 47.2005 152.047 46.9609C152.193 46.7188 152.27 46.3411 152.277 45.8281V44.543Z" fill="#A4AFB7"/>
<rect x="140" y="59" width="65" height="2" rx="1" fill="#D5DADF"/>
<rect x="140" y="71" width="61" height="2" rx="1" fill="#D5DADF"/>
<rect x="140" y="83" width="61" height="2" rx="1" fill="#D5DADF"/>
<rect x="140" y="65" width="55" height="2" rx="1" fill="#D5DADF"/>
<rect x="140" y="77" width="55" height="2" rx="1" fill="#D5DADF"/>
<path d="M0 140H229.5" stroke="#F1F3F5"/>
<mask id="mask0" mask-type="alpha" maskUnits="userSpaceOnUse" x="22" y="20" width="101" height="67">
<path fill-rule="evenodd" clip-rule="evenodd" d="M22 20H123V87H22V20Z" fill="white"/>
</mask>
<g mask="url(#mask0)">
<rect x="20.2656" y="19.5933" width="106.771" height="69.7036" fill="#E6E9EC"/>
<mask id="mask1" mask-type="alpha" maskUnits="userSpaceOnUse" x="20" y="19" width="108" height="71">
<rect x="20.2656" y="19.5933" width="106.771" height="69.7036" fill="white"/>
</mask>
<g mask="url(#mask1)">
<path d="M144.176 95.5523C144.176 95.5523 116.205 42.3576 95.0383 38.0378C73.8714 33.718 65.5809 75.573 52.9143 70.0218C50.5616 68.9908 37.5914 54.2673 27.1195 58.3981C19.5873 61.3692 3.53349 95.7468 3.53349 95.7468H144.176V95.5523Z" fill="#F8F9FA"/>
<path d="M51.651 54.9649C54.086 54.9649 56.0599 53.0153 56.0599 50.6103C56.0599 48.2053 54.086 46.2556 51.651 46.2556C49.2161 46.2556 47.2422 48.2053 47.2422 50.6103C47.2422 53.0153 49.2161 54.9649 51.651 54.9649Z" fill="#F8F9FA"/>
</g>
</g>
<mask id="mask2" mask-type="alpha" maskUnits="userSpaceOnUse" x="22" y="91" width="31" height="21">
<path fill-rule="evenodd" clip-rule="evenodd" d="M22 91H53V111.564H22V91Z" fill="white"/>
</mask>
<g mask="url(#mask2)">
<rect x="21.4668" y="90.875" width="32.7714" height="21.3942" fill="#E6E9EC"/>
<mask id="mask3" mask-type="alpha" maskUnits="userSpaceOnUse" x="21" y="90" width="34" height="23">
<rect x="21.4668" y="90.875" width="32.7714" height="21.3942" fill="white"/>
</mask>
<g mask="url(#mask3)">
<path d="M59.5 114.189C59.5 114.189 50.915 97.8623 44.4182 96.5364C37.9214 95.2105 35.3768 108.057 31.4891 106.353C30.7669 106.037 26.786 101.518 23.5718 102.786C21.26 103.698 16.3326 114.249 16.3326 114.249H59.5V114.189Z" fill="#F8F9FA"/>
<path d="M31.1013 101.732C31.8486 101.732 32.4545 101.133 32.4545 100.395C32.4545 99.657 31.8486 99.0586 31.1013 99.0586C30.3539 99.0586 29.748 99.657 29.748 100.395C29.748 101.133 30.3539 101.732 31.1013 101.732Z" fill="#F8F9FA"/>
</g>
</g>
<mask id="mask4" mask-type="alpha" maskUnits="userSpaceOnUse" x="32" y="178" width="50" height="34">
<path fill-rule="evenodd" clip-rule="evenodd" d="M32 178H82V211.168H32V178Z" fill="white"/>
</mask>
<g mask="url(#mask4)">
<rect x="31.1387" y="177.798" width="52.8571" height="34.5067" fill="#E6E9EC"/>
<mask id="mask5" mask-type="alpha" maskUnits="userSpaceOnUse" x="31" y="177" width="53" height="36">
<rect x="31.1387" y="177.798" width="52.8571" height="34.5067" fill="white"/>
</mask>
<g mask="url(#mask5)">
<path d="M92.4805 215.402C92.4805 215.402 78.6337 189.068 68.155 186.929C57.6763 184.791 53.5721 205.511 47.3015 202.763C46.1368 202.253 39.7159 194.964 34.5318 197.009C30.803 198.48 22.8556 215.498 22.8556 215.498H92.4805V215.402Z" fill="#F8F9FA"/>
<path d="M46.6748 195.309C47.8802 195.309 48.8574 194.344 48.8574 193.153C48.8574 191.963 47.8802 190.998 46.6748 190.998C45.4694 190.998 44.4922 191.963 44.4922 193.153C44.4922 194.344 45.4694 195.309 46.6748 195.309Z" fill="#F8F9FA"/>
</g>
</g>
<mask id="mask6" mask-type="alpha" maskUnits="userSpaceOnUse" x="90" y="178" width="50" height="34">
<path fill-rule="evenodd" clip-rule="evenodd" d="M90 178H140V211.168H90V178Z" fill="white"/>
</mask>
<g mask="url(#mask6)">
<rect x="89.1387" y="177.798" width="52.8571" height="34.5067" fill="#E6E9EC"/>
<mask id="mask7" mask-type="alpha" maskUnits="userSpaceOnUse" x="89" y="177" width="53" height="36">
<rect x="89.1387" y="177.798" width="52.8571" height="34.5067" fill="white"/>
</mask>
<g mask="url(#mask7)">
<path d="M150.48 215.402C150.48 215.402 136.634 189.068 126.155 186.929C115.676 184.791 111.572 205.511 105.302 202.763C104.137 202.253 97.7159 194.964 92.5318 197.009C88.803 198.48 80.8556 215.498 80.8556 215.498H150.48V215.402Z" fill="#F8F9FA"/>
<path d="M104.675 195.309C105.88 195.309 106.857 194.344 106.857 193.153C106.857 191.963 105.88 190.998 104.675 190.998C103.469 190.998 102.492 191.963 102.492 193.153C102.492 194.344 103.469 195.309 104.675 195.309Z" fill="#F8F9FA"/>
</g>
</g>
<mask id="mask8" mask-type="alpha" maskUnits="userSpaceOnUse" x="148" y="178" width="50" height="34">
<path fill-rule="evenodd" clip-rule="evenodd" d="M148 178H198V211.168H148V178Z" fill="white"/>
</mask>
<g mask="url(#mask8)">
<rect x="147.139" y="177.798" width="52.8571" height="34.5067" fill="#E6E9EC"/>
<mask id="mask9" mask-type="alpha" maskUnits="userSpaceOnUse" x="147" y="177" width="53" height="36">
<rect x="147.139" y="177.798" width="52.8571" height="34.5067" fill="white"/>
</mask>
<g mask="url(#mask9)">
<path d="M208.48 215.402C208.48 215.402 194.634 189.068 184.155 186.929C173.676 184.791 169.572 205.511 163.302 202.763C162.137 202.253 155.716 194.964 150.532 197.009C146.803 198.48 138.856 215.498 138.856 215.498H208.48V215.402Z" fill="#F8F9FA"/>
<path d="M162.675 195.309C163.88 195.309 164.857 194.344 164.857 193.153C164.857 191.963 163.88 190.998 162.675 190.998C161.469 190.998 160.492 191.963 160.492 193.153C160.492 194.344 161.469 195.309 162.675 195.309Z" fill="#F8F9FA"/>
</g>
</g>
<mask id="mask10" mask-type="alpha" maskUnits="userSpaceOnUse" x="57" y="91" width="31" height="21">
<path fill-rule="evenodd" clip-rule="evenodd" d="M57 91H88V111.564H57V91Z" fill="white"/>
</mask>
<g mask="url(#mask10)">
<rect x="56.4668" y="90.875" width="32.7714" height="21.3942" fill="#E6E9EC"/>
<mask id="mask11" mask-type="alpha" maskUnits="userSpaceOnUse" x="56" y="90" width="34" height="23">
<rect x="56.4668" y="90.875" width="32.7714" height="21.3942" fill="white"/>
</mask>
<g mask="url(#mask11)">
<path d="M94.5 114.189C94.5 114.189 85.915 97.8623 79.4182 96.5364C72.9214 95.2105 70.3768 108.057 66.4891 106.353C65.7669 106.037 61.786 101.518 58.5718 102.786C56.26 103.698 51.3326 114.249 51.3326 114.249H94.5V114.189Z" fill="#F8F9FA"/>
<path d="M66.1013 101.732C66.8486 101.732 67.4545 101.133 67.4545 100.395C67.4545 99.657 66.8486 99.0586 66.1013 99.0586C65.3539 99.0586 64.748 99.657 64.748 100.395C64.748 101.133 65.3539 101.732 66.1013 101.732Z" fill="#F8F9FA"/>
</g>
</g>
<mask id="mask12" mask-type="alpha" maskUnits="userSpaceOnUse" x="92" y="91" width="31" height="21">
<path fill-rule="evenodd" clip-rule="evenodd" d="M92 91H123V111.564H92V91Z" fill="white"/>
</mask>
<g mask="url(#mask12)">
<rect x="91.4668" y="90.875" width="32.7714" height="21.3942" fill="#E6E9EC"/>
<mask id="mask13" mask-type="alpha" maskUnits="userSpaceOnUse" x="91" y="90" width="34" height="23">
<rect x="91.4668" y="90.875" width="32.7714" height="21.3942" fill="white"/>
</mask>
<g mask="url(#mask13)">
<path d="M129.5 114.189C129.5 114.189 120.915 97.8623 114.418 96.5364C107.921 95.2105 105.377 108.057 101.489 106.353C100.767 106.037 96.786 101.518 93.5718 102.786C91.26 103.698 86.3326 114.249 86.3326 114.249H129.5V114.189Z" fill="#F8F9FA"/>
<path d="M101.101 101.732C101.849 101.732 102.454 101.133 102.454 100.395C102.454 99.657 101.849 99.0586 101.101 99.0586C100.354 99.0586 99.748 99.657 99.748 100.395C99.748 101.133 100.354 101.732 101.101 101.732Z" fill="#F8F9FA"/>
</g>
</g>
</svg>
assets/images/app/site-editor/error-404.svg000064400000026435151327220410014511 0ustar00<svg width="230" height="223" viewBox="0 0 230 223" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect y="0.171875" width="229.827" height="222" fill="white"/>
<path d="M71.958 26.3584V29H70.7227V21.8906H73.4424C74.2367 21.8906 74.8665 22.0973 75.332 22.5107C75.8008 22.9242 76.0352 23.471 76.0352 24.1514C76.0352 24.848 75.8057 25.39 75.3467 25.7773C74.891 26.1647 74.2513 26.3584 73.4277 26.3584H71.958ZM71.958 25.3672H73.4424C73.8818 25.3672 74.2171 25.2646 74.4482 25.0596C74.6794 24.8512 74.7949 24.5518 74.7949 24.1611C74.7949 23.777 74.6777 23.471 74.4434 23.2432C74.209 23.012 73.8867 22.8932 73.4766 22.8867H71.958V25.3672ZM80.1025 29C80.0505 28.8991 80.0049 28.7347 79.9658 28.5068C79.5882 28.9007 79.126 29.0977 78.5791 29.0977C78.0485 29.0977 77.6156 28.9463 77.2803 28.6436C76.945 28.3408 76.7773 27.9665 76.7773 27.5205C76.7773 26.9574 76.9857 26.526 77.4023 26.2266C77.8223 25.9238 78.4212 25.7725 79.1992 25.7725H79.9268V25.4258C79.9268 25.1523 79.8503 24.9342 79.6973 24.7715C79.5443 24.6055 79.3115 24.5225 78.999 24.5225C78.7288 24.5225 78.5075 24.5908 78.335 24.7275C78.1624 24.861 78.0762 25.0319 78.0762 25.2402H76.8896C76.8896 24.9505 76.9857 24.6803 77.1777 24.4297C77.3698 24.1758 77.6302 23.9772 77.959 23.834C78.291 23.6908 78.6605 23.6191 79.0674 23.6191C79.6859 23.6191 80.179 23.7754 80.5469 24.0879C80.9147 24.3971 81.1035 24.8333 81.1133 25.3965V27.7793C81.1133 28.2546 81.18 28.6338 81.3135 28.917V29H80.1025ZM78.7988 28.1455C79.0332 28.1455 79.2529 28.0885 79.458 27.9746C79.6663 27.8607 79.8226 27.7077 79.9268 27.5156V26.5195H79.2871C78.8477 26.5195 78.5173 26.596 78.2959 26.749C78.0745 26.902 77.9639 27.1185 77.9639 27.3984C77.9639 27.6263 78.0387 27.8086 78.1885 27.9453C78.3415 28.0788 78.5449 28.1455 78.7988 28.1455ZM82.1484 26.3193C82.1484 25.499 82.3405 24.8447 82.7246 24.3564C83.112 23.8649 83.6247 23.6191 84.2627 23.6191C84.8649 23.6191 85.3385 23.8291 85.6836 24.249L85.7373 23.7168H86.8066V28.8389C86.8066 29.5322 86.5902 30.0791 86.1572 30.4795C85.7275 30.8799 85.1465 31.0801 84.4141 31.0801C84.0267 31.0801 83.6475 30.9987 83.2764 30.8359C82.9085 30.6764 82.6286 30.4665 82.4365 30.2061L82.998 29.4932C83.3626 29.9261 83.8118 30.1426 84.3457 30.1426C84.7396 30.1426 85.0505 30.0352 85.2783 29.8203C85.5062 29.6087 85.6201 29.2962 85.6201 28.8828V28.5264C85.2783 28.9072 84.8226 29.0977 84.2529 29.0977C83.6344 29.0977 83.1283 28.8519 82.7344 28.3604C82.3438 27.8688 82.1484 27.1885 82.1484 26.3193ZM83.3301 26.4219C83.3301 26.9525 83.4375 27.3708 83.6523 27.6768C83.8704 27.9795 84.1715 28.1309 84.5557 28.1309C85.0342 28.1309 85.389 27.9258 85.6201 27.5156V25.1914C85.3955 24.791 85.0439 24.5908 84.5654 24.5908C84.1748 24.5908 83.8704 24.7454 83.6523 25.0547C83.4375 25.3639 83.3301 25.8197 83.3301 26.4219ZM90.3564 29.0977C89.6045 29.0977 88.9941 28.8617 88.5254 28.3896C88.0599 27.9144 87.8271 27.2829 87.8271 26.4951V26.3486C87.8271 25.8213 87.9281 25.3509 88.1299 24.9375C88.335 24.5208 88.6214 24.1969 88.9893 23.9658C89.3571 23.7347 89.7673 23.6191 90.2197 23.6191C90.9391 23.6191 91.4941 23.8486 91.8848 24.3076C92.2786 24.7666 92.4756 25.416 92.4756 26.2559V26.7344H89.0234C89.0592 27.1706 89.2041 27.5156 89.458 27.7695C89.7152 28.0234 90.0374 28.1504 90.4248 28.1504C90.9684 28.1504 91.4111 27.9307 91.7529 27.4912L92.3926 28.1016C92.181 28.4173 91.8978 28.6631 91.543 28.8389C91.1914 29.0114 90.7959 29.0977 90.3564 29.0977ZM90.2148 24.5713C89.8893 24.5713 89.6257 24.6852 89.4238 24.9131C89.2253 25.141 89.0983 25.4583 89.043 25.8652H91.3037V25.7773C91.2777 25.3802 91.1719 25.0807 90.9863 24.8789C90.8008 24.6738 90.5436 24.5713 90.2148 24.5713ZM100.532 27.3643L101.372 23.7168H102.529L101.089 29H100.112L98.9795 25.3721L97.8662 29H96.8896L95.4443 23.7168H96.6016L97.4561 27.3252L98.54 23.7168H99.4336L100.532 27.3643ZM106.479 29C106.427 28.8991 106.382 28.7347 106.343 28.5068C105.965 28.9007 105.503 29.0977 104.956 29.0977C104.425 29.0977 103.993 28.9463 103.657 28.6436C103.322 28.3408 103.154 27.9665 103.154 27.5205C103.154 26.9574 103.363 26.526 103.779 26.2266C104.199 25.9238 104.798 25.7725 105.576 25.7725H106.304V25.4258C106.304 25.1523 106.227 24.9342 106.074 24.7715C105.921 24.6055 105.688 24.5225 105.376 24.5225C105.106 24.5225 104.884 24.5908 104.712 24.7275C104.539 24.861 104.453 25.0319 104.453 25.2402H103.267C103.267 24.9505 103.363 24.6803 103.555 24.4297C103.747 24.1758 104.007 23.9772 104.336 23.834C104.668 23.6908 105.037 23.6191 105.444 23.6191C106.063 23.6191 106.556 23.7754 106.924 24.0879C107.292 24.3971 107.48 24.8333 107.49 25.3965V27.7793C107.49 28.2546 107.557 28.6338 107.69 28.917V29H106.479ZM105.176 28.1455C105.41 28.1455 105.63 28.0885 105.835 27.9746C106.043 27.8607 106.2 27.7077 106.304 27.5156V26.5195H105.664C105.225 26.5195 104.894 26.596 104.673 26.749C104.451 26.902 104.341 27.1185 104.341 27.3984C104.341 27.6263 104.416 27.8086 104.565 27.9453C104.718 28.0788 104.922 28.1455 105.176 28.1455ZM111.694 27.5645C111.694 27.3529 111.606 27.1917 111.431 27.0811C111.258 26.9704 110.97 26.8727 110.566 26.7881C110.163 26.7035 109.826 26.596 109.556 26.4658C108.963 26.1794 108.667 25.7643 108.667 25.2207C108.667 24.765 108.859 24.3841 109.243 24.0781C109.627 23.7721 110.116 23.6191 110.708 23.6191C111.34 23.6191 111.849 23.7754 112.236 24.0879C112.627 24.4004 112.822 24.8057 112.822 25.3037H111.636C111.636 25.0758 111.551 24.887 111.382 24.7373C111.213 24.5843 110.988 24.5078 110.708 24.5078C110.448 24.5078 110.234 24.568 110.068 24.6885C109.906 24.8089 109.824 24.9701 109.824 25.1719C109.824 25.3542 109.901 25.4958 110.054 25.5967C110.207 25.6976 110.516 25.8001 110.981 25.9043C111.447 26.0052 111.812 26.1273 112.075 26.2705C112.342 26.4105 112.539 26.5798 112.666 26.7783C112.796 26.9769 112.861 27.2178 112.861 27.501C112.861 27.9762 112.664 28.362 112.271 28.6582C111.877 28.9512 111.361 29.0977 110.723 29.0977C110.29 29.0977 109.904 29.0195 109.565 28.8633C109.227 28.707 108.963 28.4922 108.774 28.2188C108.586 27.9453 108.491 27.6507 108.491 27.335H109.644C109.66 27.6149 109.766 27.8314 109.961 27.9844C110.156 28.1341 110.415 28.209 110.737 28.209C111.05 28.209 111.287 28.1504 111.45 28.0332C111.613 27.9128 111.694 27.7565 111.694 27.5645ZM117.49 23.7168L117.524 24.3271C117.915 23.8551 118.428 23.6191 119.062 23.6191C120.163 23.6191 120.723 24.249 120.742 25.5088V29H119.556V25.5771C119.556 25.2419 119.482 24.9945 119.336 24.835C119.193 24.6722 118.957 24.5908 118.628 24.5908C118.149 24.5908 117.793 24.8073 117.559 25.2402V29H116.372V23.7168H117.49ZM121.733 26.3096C121.733 25.792 121.836 25.3265 122.041 24.9131C122.246 24.4964 122.534 24.1774 122.905 23.9561C123.276 23.7314 123.703 23.6191 124.185 23.6191C124.897 23.6191 125.475 23.8486 125.918 24.3076C126.364 24.7666 126.605 25.3753 126.641 26.1338L126.646 26.4121C126.646 26.9329 126.545 27.3984 126.343 27.8086C126.144 28.2188 125.858 28.5361 125.483 28.7607C125.112 28.9854 124.683 29.0977 124.194 29.0977C123.449 29.0977 122.852 28.8503 122.402 28.3555C121.956 27.8574 121.733 27.195 121.733 26.3682V26.3096ZM122.92 26.4121C122.92 26.9557 123.032 27.3822 123.257 27.6914C123.481 27.9974 123.794 28.1504 124.194 28.1504C124.595 28.1504 124.906 27.9941 125.127 27.6816C125.352 27.3691 125.464 26.9118 125.464 26.3096C125.464 25.7757 125.348 25.3525 125.117 25.04C124.889 24.7275 124.578 24.5713 124.185 24.5713C123.797 24.5713 123.49 24.7259 123.262 25.0352C123.034 25.3411 122.92 25.8001 122.92 26.4121ZM129.136 22.4326V23.7168H130.068V24.5957H129.136V27.5449C129.136 27.7467 129.175 27.8932 129.253 27.9844C129.334 28.0723 129.478 28.1162 129.683 28.1162C129.819 28.1162 129.958 28.0999 130.098 28.0674V28.9854C129.827 29.0602 129.567 29.0977 129.316 29.0977C128.405 29.0977 127.949 28.5947 127.949 27.5889V24.5957H127.08V23.7168H127.949V22.4326H129.136ZM133.887 29V24.5957H133.081V23.7168H133.887V23.2334C133.887 22.6475 134.049 22.195 134.375 21.876C134.701 21.557 135.156 21.3975 135.742 21.3975C135.951 21.3975 136.172 21.4268 136.406 21.4854L136.377 22.4131C136.247 22.387 136.095 22.374 135.923 22.374C135.356 22.374 135.073 22.6654 135.073 23.248V23.7168H136.147V24.5957H135.073V29H133.887ZM136.792 26.3096C136.792 25.792 136.895 25.3265 137.1 24.9131C137.305 24.4964 137.593 24.1774 137.964 23.9561C138.335 23.7314 138.761 23.6191 139.243 23.6191C139.956 23.6191 140.534 23.8486 140.977 24.3076C141.423 24.7666 141.663 25.3753 141.699 26.1338L141.704 26.4121C141.704 26.9329 141.603 27.3984 141.401 27.8086C141.203 28.2188 140.916 28.5361 140.542 28.7607C140.171 28.9854 139.741 29.0977 139.253 29.0977C138.507 29.0977 137.91 28.8503 137.461 28.3555C137.015 27.8574 136.792 27.195 136.792 26.3682V26.3096ZM137.979 26.4121C137.979 26.9557 138.091 27.3822 138.315 27.6914C138.54 27.9974 138.853 28.1504 139.253 28.1504C139.653 28.1504 139.964 27.9941 140.186 27.6816C140.41 27.3691 140.522 26.9118 140.522 26.3096C140.522 25.7757 140.407 25.3525 140.176 25.04C139.948 24.7275 139.637 24.5713 139.243 24.5713C138.856 24.5713 138.548 24.7259 138.32 25.0352C138.092 25.3411 137.979 25.8001 137.979 26.4121ZM145.908 28.4824C145.56 28.8926 145.065 29.0977 144.424 29.0977C143.851 29.0977 143.416 28.93 143.12 28.5947C142.827 28.2594 142.681 27.7744 142.681 27.1396V23.7168H143.867V27.125C143.867 27.7956 144.146 28.1309 144.702 28.1309C145.278 28.1309 145.667 27.9242 145.869 27.5107V23.7168H147.056V29H145.938L145.908 28.4824ZM149.365 23.7168L149.399 24.3271C149.79 23.8551 150.303 23.6191 150.938 23.6191C152.038 23.6191 152.598 24.249 152.617 25.5088V29H151.431V25.5771C151.431 25.2419 151.357 24.9945 151.211 24.835C151.068 24.6722 150.832 24.5908 150.503 24.5908C150.024 24.5908 149.668 24.8073 149.434 25.2402V29H148.247V23.7168H149.365ZM153.608 26.3193C153.608 25.5055 153.797 24.8529 154.175 24.3613C154.552 23.8665 155.059 23.6191 155.693 23.6191C156.253 23.6191 156.706 23.8145 157.051 24.2051V21.5H158.237V29H157.163L157.104 28.4531C156.75 28.8828 156.276 29.0977 155.684 29.0977C155.065 29.0977 154.564 28.8486 154.18 28.3506C153.799 27.8525 153.608 27.1755 153.608 26.3193ZM154.795 26.4219C154.795 26.959 154.897 27.3789 155.103 27.6816C155.311 27.9811 155.605 28.1309 155.986 28.1309C156.471 28.1309 156.826 27.9144 157.051 27.4814V25.2256C156.833 24.8024 156.481 24.5908 155.996 24.5908C155.612 24.5908 155.316 24.7438 155.107 25.0498C154.899 25.3525 154.795 25.8099 154.795 26.4219Z" fill="#A4AFB7"/>
<path d="M90.2754 87.7949H95.5781V93.5078H90.2754V103H83.1562V93.5078H64.7285L64.5234 89.1719L82.9219 60.3438H90.2754V87.7949ZM71.9941 87.7949H83.1562V69.9824L82.6289 70.9199L71.9941 87.7949ZM128.098 85.041C128.098 91.1738 126.945 95.8027 124.641 98.9277C122.355 102.033 118.869 103.586 114.182 103.586C109.572 103.586 106.096 102.072 103.752 99.0449C101.428 95.998 100.236 91.4961 100.178 85.5391V78.1562C100.178 72.0234 101.32 67.4238 103.605 64.3574C105.91 61.291 109.416 59.7578 114.123 59.7578C118.791 59.7578 122.268 61.252 124.553 64.2402C126.857 67.2285 128.039 71.7012 128.098 77.6582V85.041ZM120.979 77.0723C120.979 73.0684 120.432 70.1387 119.338 68.2832C118.244 66.4082 116.506 65.4707 114.123 65.4707C111.799 65.4707 110.09 66.3594 108.996 68.1367C107.902 69.8945 107.326 72.6484 107.268 76.3984V86.0664C107.268 90.0508 107.824 93.0195 108.938 94.9727C110.051 96.9258 111.799 97.9023 114.182 97.9023C116.467 97.9023 118.156 97.0039 119.25 95.207C120.344 93.3906 120.92 90.5586 120.979 86.7109V77.0723ZM158.479 87.7949H163.781V93.5078H158.479V103H151.359V93.5078H132.932L132.727 89.1719L151.125 60.3438H158.479V87.7949ZM140.197 87.7949H151.359V69.9824L150.832 70.9199L140.197 87.7949Z" fill="#A4AFB7"/>
</svg>
assets/images/app/site-editor/header.svg000064400000015357151327220410014304 0ustar00<svg width="229" height="222" viewBox="0 0 229 222" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect x="0.327703" y="0.327703" width="228.345" height="221.345" fill="white" stroke="#F1F3F5" stroke-width="0.655405"/>
<rect x="0.327703" y="0.327703" width="228.345" height="19.3446" fill="#E6E9EC" stroke="#F1F3F5" stroke-width="0.655405"/>
<rect x="0.327703" y="0.327703" width="228.345" height="19.3446" fill="#F1F3F5" stroke="#F1F3F5" stroke-width="0.655405"/>
<rect x="50" y="10" width="22" height="2" rx="1" fill="#D5DADF"/>
<rect x="50" y="10" width="22" height="2" rx="1" fill="#D5DADF"/>
<rect x="110" y="10" width="22" height="2" rx="1" fill="#D5DADF"/>
<rect x="110" y="10" width="22" height="2" rx="1" fill="#D5DADF"/>
<rect x="80" y="10" width="22" height="2" rx="1" fill="#D5DADF"/>
<rect x="80" y="10" width="22" height="2" rx="1" fill="#D5DADF"/>
<rect x="140" y="10" width="22" height="2" rx="1" fill="#D5DADF"/>
<rect x="140" y="10" width="22" height="2" rx="1" fill="#D5DADF"/>
<rect x="170" y="10" width="22" height="2" rx="1" fill="#D5DADF"/>
<path d="M9.95801 12.0137H13.1855V13H8.72266V5.89062H9.95801V12.0137ZM13.7959 10.3096C13.7959 9.79199 13.8984 9.3265 14.1035 8.91309C14.3086 8.49642 14.5967 8.17741 14.9678 7.95605C15.3389 7.73145 15.7653 7.61914 16.2471 7.61914C16.96 7.61914 17.5378 7.84863 17.9805 8.30762C18.4264 8.7666 18.6673 9.37533 18.7031 10.1338L18.708 10.4121C18.708 10.9329 18.6071 11.3984 18.4053 11.8086C18.2067 12.2188 17.9202 12.5361 17.5459 12.7607C17.1748 12.9854 16.7451 13.0977 16.2568 13.0977C15.5114 13.0977 14.9141 12.8503 14.4648 12.3555C14.0189 11.8574 13.7959 11.195 13.7959 10.3682V10.3096ZM14.9824 10.4121C14.9824 10.9557 15.0947 11.3822 15.3193 11.6914C15.5439 11.9974 15.8564 12.1504 16.2568 12.1504C16.6572 12.1504 16.9681 11.9941 17.1895 11.6816C17.4141 11.3691 17.5264 10.9118 17.5264 10.3096C17.5264 9.77572 17.4108 9.35254 17.1797 9.04004C16.9518 8.72754 16.641 8.57129 16.2471 8.57129C15.8597 8.57129 15.5521 8.72591 15.3242 9.03516C15.0964 9.34115 14.9824 9.80013 14.9824 10.4121ZM19.5039 10.3193C19.5039 9.49902 19.696 8.84473 20.0801 8.35645C20.4674 7.86491 20.9801 7.61914 21.6182 7.61914C22.2204 7.61914 22.694 7.8291 23.0391 8.24902L23.0928 7.7168H24.1621V12.8389C24.1621 13.5322 23.9456 14.0791 23.5127 14.4795C23.083 14.8799 22.502 15.0801 21.7695 15.0801C21.3822 15.0801 21.0029 14.9987 20.6318 14.8359C20.264 14.6764 19.984 14.4665 19.792 14.2061L20.3535 13.4932C20.7181 13.9261 21.1673 14.1426 21.7012 14.1426C22.0951 14.1426 22.4059 14.0352 22.6338 13.8203C22.8617 13.6087 22.9756 13.2962 22.9756 12.8828V12.5264C22.6338 12.9072 22.1781 13.0977 21.6084 13.0977C20.9899 13.0977 20.4837 12.8519 20.0898 12.3604C19.6992 11.8688 19.5039 11.1885 19.5039 10.3193ZM20.6855 10.4219C20.6855 10.9525 20.793 11.3708 21.0078 11.6768C21.2259 11.9795 21.527 12.1309 21.9111 12.1309C22.3896 12.1309 22.7445 11.9258 22.9756 11.5156V9.19141C22.751 8.79102 22.3994 8.59082 21.9209 8.59082C21.5303 8.59082 21.2259 8.74544 21.0078 9.05469C20.793 9.36393 20.6855 9.81966 20.6855 10.4219ZM25.1631 10.3096C25.1631 9.79199 25.2656 9.3265 25.4707 8.91309C25.6758 8.49642 25.9639 8.17741 26.335 7.95605C26.7061 7.73145 27.1325 7.61914 27.6143 7.61914C28.3271 7.61914 28.9049 7.84863 29.3477 8.30762C29.7936 8.7666 30.0345 9.37533 30.0703 10.1338L30.0752 10.4121C30.0752 10.9329 29.9743 11.3984 29.7725 11.8086C29.5739 12.2188 29.2874 12.5361 28.9131 12.7607C28.542 12.9854 28.1123 13.0977 27.624 13.0977C26.8786 13.0977 26.2812 12.8503 25.832 12.3555C25.3861 11.8574 25.1631 11.195 25.1631 10.3682V10.3096ZM26.3496 10.4121C26.3496 10.9557 26.4619 11.3822 26.6865 11.6914C26.9111 11.9974 27.2236 12.1504 27.624 12.1504C28.0244 12.1504 28.3353 11.9941 28.5566 11.6816C28.7812 11.3691 28.8936 10.9118 28.8936 10.3096C28.8936 9.77572 28.778 9.35254 28.5469 9.04004C28.319 8.72754 28.0081 8.57129 27.6143 8.57129C27.2269 8.57129 26.9193 8.72591 26.6914 9.03516C26.4635 9.34115 26.3496 9.80013 26.3496 10.4121Z" fill="#C2CBD2"/>
<path d="M9.95801 12.0137H13.1855V13H8.72266V5.89062H9.95801V12.0137ZM13.7959 10.3096C13.7959 9.79199 13.8984 9.3265 14.1035 8.91309C14.3086 8.49642 14.5967 8.17741 14.9678 7.95605C15.3389 7.73145 15.7653 7.61914 16.2471 7.61914C16.96 7.61914 17.5378 7.84863 17.9805 8.30762C18.4264 8.7666 18.6673 9.37533 18.7031 10.1338L18.708 10.4121C18.708 10.9329 18.6071 11.3984 18.4053 11.8086C18.2067 12.2188 17.9202 12.5361 17.5459 12.7607C17.1748 12.9854 16.7451 13.0977 16.2568 13.0977C15.5114 13.0977 14.9141 12.8503 14.4648 12.3555C14.0189 11.8574 13.7959 11.195 13.7959 10.3682V10.3096ZM14.9824 10.4121C14.9824 10.9557 15.0947 11.3822 15.3193 11.6914C15.5439 11.9974 15.8564 12.1504 16.2568 12.1504C16.6572 12.1504 16.9681 11.9941 17.1895 11.6816C17.4141 11.3691 17.5264 10.9118 17.5264 10.3096C17.5264 9.77572 17.4108 9.35254 17.1797 9.04004C16.9518 8.72754 16.641 8.57129 16.2471 8.57129C15.8597 8.57129 15.5521 8.72591 15.3242 9.03516C15.0964 9.34115 14.9824 9.80013 14.9824 10.4121ZM19.5039 10.3193C19.5039 9.49902 19.696 8.84473 20.0801 8.35645C20.4674 7.86491 20.9801 7.61914 21.6182 7.61914C22.2204 7.61914 22.694 7.8291 23.0391 8.24902L23.0928 7.7168H24.1621V12.8389C24.1621 13.5322 23.9456 14.0791 23.5127 14.4795C23.083 14.8799 22.502 15.0801 21.7695 15.0801C21.3822 15.0801 21.0029 14.9987 20.6318 14.8359C20.264 14.6764 19.984 14.4665 19.792 14.2061L20.3535 13.4932C20.7181 13.9261 21.1673 14.1426 21.7012 14.1426C22.0951 14.1426 22.4059 14.0352 22.6338 13.8203C22.8617 13.6087 22.9756 13.2962 22.9756 12.8828V12.5264C22.6338 12.9072 22.1781 13.0977 21.6084 13.0977C20.9899 13.0977 20.4837 12.8519 20.0898 12.3604C19.6992 11.8688 19.5039 11.1885 19.5039 10.3193ZM20.6855 10.4219C20.6855 10.9525 20.793 11.3708 21.0078 11.6768C21.2259 11.9795 21.527 12.1309 21.9111 12.1309C22.3896 12.1309 22.7445 11.9258 22.9756 11.5156V9.19141C22.751 8.79102 22.3994 8.59082 21.9209 8.59082C21.5303 8.59082 21.2259 8.74544 21.0078 9.05469C20.793 9.36393 20.6855 9.81966 20.6855 10.4219ZM25.1631 10.3096C25.1631 9.79199 25.2656 9.3265 25.4707 8.91309C25.6758 8.49642 25.9639 8.17741 26.335 7.95605C26.7061 7.73145 27.1325 7.61914 27.6143 7.61914C28.3271 7.61914 28.9049 7.84863 29.3477 8.30762C29.7936 8.7666 30.0345 9.37533 30.0703 10.1338L30.0752 10.4121C30.0752 10.9329 29.9743 11.3984 29.7725 11.8086C29.5739 12.2188 29.2874 12.5361 28.9131 12.7607C28.542 12.9854 28.1123 13.0977 27.624 13.0977C26.8786 13.0977 26.2812 12.8503 25.832 12.3555C25.3861 11.8574 25.1631 11.195 25.1631 10.3682V10.3096ZM26.3496 10.4121C26.3496 10.9557 26.4619 11.3822 26.6865 11.6914C26.9111 11.9974 27.2236 12.1504 27.624 12.1504C28.0244 12.1504 28.3353 11.9941 28.5566 11.6816C28.7812 11.3691 28.8936 10.9118 28.8936 10.3096C28.8936 9.77572 28.778 9.35254 28.5469 9.04004C28.319 8.72754 28.0081 8.57129 27.6143 8.57129C27.2269 8.57129 26.9193 8.72591 26.6914 9.03516C26.4635 9.34115 26.3496 9.80013 26.3496 10.4121Z" fill="#A4AFB7"/>
</svg>
assets/svg-paths/oval.svg000064400000000423151327220410011440 0ustar00<svg xmlns="http://www.w3.org/2000/svg" width="250.5" height="125.75" viewBox="0 0 250.5 125.75"><path class="b473dc75-7459-43a5-8a1c-89caf910da53" d="M.25,62.875C.25,28.2882,56.2144.25,125.25.25s125,28.0382,125,62.625-55.9644,62.625-125,62.625S.25,97.4619.25,62.875"/></svg>assets/svg-paths/wave.svg000064400000000347151327220410011446 0ustar00<svg xmlns="http://www.w3.org/2000/svg" width="250" height="42.4994" viewBox="0 0 250 42.4994"><path d="M0,42.2494C62.5,42.2494,62.5.25,125,.25s62.5,41.9994,125,41.9994"/><path d="M-41.6693,49.25"/><path d="M-208.3307-6.75"/></svg>assets/svg-paths/circle.svg000064400000000250151327220410011736 0ustar00<svg xmlns="http://www.w3.org/2000/svg" width="250.5" height="250.5" viewBox="0 0 250.5 250.5"><path d="M.25,125.25a125,125,0,1,1,125,125,125,125,0,0,1-125-125"/></svg>assets/svg-paths/arc.svg000064400000000222151327220410011241 0ustar00<svg xmlns="http://www.w3.org/2000/svg" width="250.5" height="125.25" viewBox="0 0 250.5 125.25"><path d="M.25,125.25a125,125,0,0,1,250,0"/></svg>assets/svg-paths/spiral.svg000064400000000435151327220410011774 0ustar00<svg xmlns="http://www.w3.org/2000/svg" width="250.4348" height="239.4454" viewBox="0 0 250.4348 239.4454"><path d="M.1848,49.0219a149.3489,149.3489,0,0,1,210.9824-9.8266,119.479,119.479,0,0,1,7.8613,168.786A95.5831,95.5831,0,0,1,84,214.27a76.4666,76.4666,0,0,1-5.0312-108.023"/></svg>assets/svg-paths/line.svg000064400000000170151327220410011425 0ustar00<svg xmlns="http://www.w3.org/2000/svg" width="250" height="22" viewBox="0 0 250 22"><path d="M 0 27 l 250 -22"/></svg>
assets/css/widget-counter.min.css000064400000001144151327220410013067 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-counter .elementor-counter-number-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;font-size:69px;font-weight:600;line-height:1}.elementor-counter .elementor-counter-number-prefix,.elementor-counter .elementor-counter-number-suffix{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;white-space:pre-wrap}.elementor-counter .elementor-counter-number-prefix{text-align:right}.elementor-counter .elementor-counter-number-suffix{text-align:left}.elementor-counter .elementor-counter-title{text-align:center;font-size:19px;font-weight:400;line-height:2.5}assets/css/app-base-rtl.css000064400000004130151327220410011632 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
:root {
  --color-box-shadow-color: rgba(0, 0, 0, 0.05); }

.eps-theme-dark {
  --color-box-shadow-color: rgba(0, 0, 0, 0.1); }

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0; }

@media screen and (min-width: 480px) {
  .text-start-sm {
    text-align: start; } }

@media screen and (min-width: 480px) {
  .text-center-sm {
    text-align: center; } }

@media screen and (min-width: 480px) {
  .text-end-sm {
    text-align: end; } }

@media screen and (min-width: 768px) {
  .text-start-md {
    text-align: start; } }

@media screen and (min-width: 768px) {
  .text-center-md {
    text-align: center; } }

@media screen and (min-width: 768px) {
  .text-end-md {
    text-align: end; } }

@media screen and (min-width: 1025px) {
  .text-start-lg {
    text-align: start; } }

@media screen and (min-width: 1025px) {
  .text-center-lg {
    text-align: center; } }

@media screen and (min-width: 1025px) {
  .text-end-lg {
    text-align: end; } }

@media screen and (min-width: 1440px) {
  .text-start-xl {
    text-align: start; } }

@media screen and (min-width: 1440px) {
  .text-center-xl {
    text-align: center; } }

@media screen and (min-width: 1440px) {
  .text-end-xl {
    text-align: end; } }

@media screen and (min-width: 1600px) {
  .text-start-xxl {
    text-align: start; } }

@media screen and (min-width: 1600px) {
  .text-center-xxl {
    text-align: center; } }

@media screen and (min-width: 1600px) {
  .text-end-xxl {
    text-align: end; } }

@-webkit-keyframes eps-animation-pop {
  from {
    -webkit-transform: scale(0.75);
            transform: scale(0.75);
    opacity: 0; }
  to {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1; } }

@keyframes eps-animation-pop {
  from {
    -webkit-transform: scale(0.75);
            transform: scale(0.75);
    opacity: 0; }
  to {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1; } }
/*# sourceMappingURL=app-base-rtl.css.map */assets/css/common.min.css000064400000027706151327220410011433 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.dialog-widget-content{background-color:#fff;position:absolute;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);overflow:hidden}.dialog-message{font-size:12px;line-height:1.5;-webkit-box-sizing:border-box;box-sizing:border-box}.dialog-type-lightbox{position:fixed;height:100%;width:100%;bottom:0;left:0;background-color:rgba(0,0,0,.8);z-index:9999;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.dialog-type-lightbox .dialog-widget-content{margin:auto;width:375px}.dialog-type-lightbox .dialog-header{font-size:15px;color:#495157;padding:30px 0 10px;font-weight:500}.dialog-type-lightbox .dialog-message{padding:0 30px 30px;min-height:50px}.dialog-type-lightbox:not(.elementor-popup-modal) .dialog-header,.dialog-type-lightbox:not(.elementor-popup-modal) .dialog-message{text-align:center}.dialog-type-lightbox .dialog-buttons-wrapper{border-top:1px solid #e6e9ec;text-align:center}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;width:50%;border:none;background:none;color:#6d7882;font-size:15px;cursor:pointer;padding:13px 0;outline:0}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button:hover{background-color:#f4f6f7}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button.dialog-ok{color:#b01b1b}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button.dialog-take_over{color:#39b54a}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button:active{background-color:rgba(230,233,236,.5)}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button::-moz-focus-inner{border:0}.dialog-close-button{cursor:pointer;position:absolute;margin-top:15px;right:15px;font-size:15px;line-height:1}.dialog-close-button:not(:hover){opacity:.4}.dialog-alert-widget .dialog-buttons-wrapper>button{width:100%}.dialog-confirm-widget .dialog-button:first-child{border-right:1px solid #e6e9ec}.dialog-prevent-scroll{overflow:hidden;max-height:100vh}@media (min-width:1024px){body.admin-bar .dialog-lightbox-widget{height:calc(100vh - 32px)}}@media (max-width:1024px){body.admin-bar .dialog-type-lightbox{position:-webkit-sticky;position:sticky;height:100vh}}.elementor-aspect-ratio-219 .elementor-fit-aspect-ratio{padding-bottom:42.8571%}.elementor-aspect-ratio-169 .elementor-fit-aspect-ratio{padding-bottom:56.25%}.elementor-aspect-ratio-43 .elementor-fit-aspect-ratio{padding-bottom:75%}.elementor-aspect-ratio-32 .elementor-fit-aspect-ratio{padding-bottom:66.6666%}.elementor-aspect-ratio-11 .elementor-fit-aspect-ratio{padding-bottom:100%}.elementor-aspect-ratio-916 .elementor-fit-aspect-ratio{padding-bottom:177.8%}.elementor-fit-aspect-ratio{position:relative;height:0}.elementor-fit-aspect-ratio iframe{position:absolute;top:0;left:0;height:100%;width:100%;border:0;background-color:#000}.elementor-fit-aspect-ratio video{width:100%}.flatpickr-calendar{width:280px}.flatpickr-calendar .flatpickr-current-month span.cur-month{font-weight:300}.flatpickr-calendar .dayContainer{width:280px;min-width:280px;max-width:280px}.flatpickr-calendar .flatpickr-days{width:280px}.flatpickr-calendar .flatpickr-day{max-width:37px;height:37px;line-height:37px}.elementor-templates-modal .dialog-widget-content{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;background-color:#f1f3f5;width:100%}@media (max-width:1439px){.elementor-templates-modal .dialog-widget-content{max-width:990px}}@media (min-width:1440px){.elementor-templates-modal .dialog-widget-content{max-width:1200px}}.elementor-templates-modal .dialog-header{padding:0;z-index:1}.elementor-templates-modal .dialog-buttons-wrapper,.elementor-templates-modal .dialog-header{background-color:#fff;-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1);position:relative}.elementor-templates-modal .dialog-buttons-wrapper{border:none;display:none;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;padding:5px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button{height:40px;margin-left:5px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success{padding:12px 36px;color:#fff;width:auto;font-size:15px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success:hover{background-color:#39b54a}.elementor-templates-modal .dialog-message{height:750px;max-height:85vh;overflow:auto;padding-top:25px}.elementor-templates-modal .dialog-content{height:100%}.elementor-templates-modal .dialog-loading{display:none}.elementor-templates-modal__header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;height:50px}.elementor-templates-modal__header__logo{line-height:1;text-transform:uppercase;font-weight:700;cursor:pointer}.elementor-templates-modal__header__logo-area{text-align:left;padding-left:15px}.elementor-templates-modal__header__logo-area>*{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-templates-modal__header__logo__icon-wrapper{margin-right:10px;font-size:12px}.elementor-templates-modal__header__logo__title{padding-top:2px}.elementor-templates-modal__header__items-area{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-templates-modal__header__item{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-templates-modal__header__item>i{font-size:20px;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;cursor:pointer}.elementor-templates-modal__header__item>i:not(:hover){color:#a4afb7}.elementor-templates-modal__header__close--normal{width:47px;border-left:1px solid #e6e9ec}.elementor-templates-modal__header__close--normal i{font-size:18px}.elementor-templates-modal__header__close--skip{padding:10px 10px 10px 20px;margin-right:10px;color:#fff;background-color:#a4afb7;font-size:11px;font-weight:400;line-height:1;text-transform:uppercase;-webkit-border-radius:2px;border-radius:2px;cursor:pointer}.elementor-templates-modal__header__close--skip>i{font-size:inherit;padding-left:10px;margin-left:15px;border-left:1px solid}.elementor-templates-modal__header__close--skip>i:not(:hover){color:#fff}.elementor-templates-modal__sidebar{-ms-flex-negative:0;flex-shrink:0;width:25%;background-color:hsla(0,0%,100%,.3)}.elementor-templates-modal__content{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-webkit-box-shadow:0 0 13px inset rgba(0,0,0,.05);box-shadow:inset 0 0 13px rgba(0,0,0,.05)}#wpadminbar #wp-admin-bar-elementor_edit_page .elementor-general-section+.elementor-second-section{border-top:1px solid #464b50;margin-top:6px}.elementor-hidden{display:none}.elementor-screen-only,.screen-reader-text,.screen-reader-text span,.ui-helper-hidden-accessible{position:absolute;top:-10000em;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.elementor-clearfix:after{content:"";display:block;clear:both;width:0;height:0}.e-logo-wrapper{background:#93003c;display:inline-block;padding:.75em;-webkit-border-radius:50%;border-radius:50%;line-height:1}.e-logo-wrapper i{color:#fff;font-size:1em}#elementor-finder__modal{background:none;z-index:99999}#elementor-finder__modal .dialog-widget-content{width:650px;max-width:98%;top:18vh;left:calc(50% - 650px / 2)}#elementor-finder__modal .dialog-message{height:auto;min-height:0;padding:0;text-align:left}#elementor-finder__search{padding:14px 15px 14px 21px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-shadow:0 -3px 15px 6px rgba(0,0,0,.03);box-shadow:0 -3px 15px 6px rgba(0,0,0,.03)}#elementor-finder__search i{font-size:16px;color:#a4afb7;font-weight:700;margin-right:15px}#elementor-finder__search__input{border:none;background:none;outline:none;padding:0;margin:0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;font-size:14px;color:#495157;-webkit-box-shadow:none;box-shadow:none}#elementor-finder__search__input::-webkit-input-placeholder{color:#a4afb7;font-style:italic;font-weight:300}#elementor-finder__search__input::-moz-placeholder{color:#a4afb7;font-style:italic;font-weight:300}#elementor-finder__search__input::-ms-input-placeholder{color:#a4afb7;font-style:italic;font-weight:300}#elementor-finder__search__input::placeholder{color:#a4afb7;font-style:italic;font-weight:300}#elementor-finder__results{max-height:50vh;overflow:auto}#elementor-finder__no-results{display:none;padding:20px;color:#a4afb7}.elementor-finder__results__category{position:relative}.elementor-finder__results__category__title{padding:5px 25px;color:#6d7882;background-color:#e6e9ec;font-size:9px;text-transform:uppercase}.elementor-finder__results__category--dynamic .elementor-finder__results__category__items{min-height:26px}.elementor-finder__results__category .eicon-loading{display:none;position:absolute;right:10px;top:30px;color:#71d7f7;font-size:14px}.elementor-finder__results__item{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-finder__results__item a{text-decoration:none;-webkit-box-shadow:none;box-shadow:none;outline:none}.elementor-finder__results__item.elementor-active{background-color:#71d7f7;-webkit-box-shadow:none;box-shadow:none;outline:none}.elementor-finder__results__item.elementor-active *{color:#fff}.elementor-finder__results__item:not(.elementor-active) .elementor-finder__results__item__actions{display:none}.elementor-finder__results__item__link{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:35px;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-finder__results__item__icon{width:60px;text-align:center;color:#6d7882;font-size:17px}.elementor-finder__results__item__title{color:#6d7882;font-size:13px}.elementor-finder__results__item__description{margin-left:5px;color:#a4afb7;font-style:italic}.elementor-finder__results__item__action,.elementor-finder__results__item__actions{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-finder__results__item__action{-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;height:100%;width:35px}.elementor-finder__results__item__action:hover{background-color:rgba(0,0,0,.07)}.tipsy{font-size:10px;position:absolute;padding:5px;z-index:100000}.tipsy-inner{background-color:#000;color:#fff;font-weight:500;max-width:200px;padding:5px 12px;text-align:center;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 0 5px 0 rgba(0,0,0,.5);box-shadow:0 0 5px 0 rgba(0,0,0,.5)}.tipsy-arrow{position:absolute;width:0;height:0;line-height:0;border:5px dashed #000}.tipsy-arrow-n{border-bottom-color:#000}.tipsy-arrow-s{border-top-color:#000}.tipsy-arrow-e{border-left-color:#000}.tipsy-arrow-w{border-right-color:#000}.tipsy-n .tipsy-arrow,.tipsy-nw .tipsy-arrow{border-left-color:transparent;border-right-color:transparent;top:0;border-bottom-style:solid;border-top:none}.tipsy-n .tipsy-arrow{left:50%;margin-left:-5px}.tipsy-nw .tipsy-arrow{left:10px}.tipsy-ne .tipsy-arrow{top:0;right:10px;border-bottom-style:solid;border-top:none;border-left-color:transparent;border-right-color:transparent}.tipsy-s .tipsy-arrow,.tipsy-se .tipsy-arrow,.tipsy-sw .tipsy-arrow{bottom:0;border-top-style:solid;border-bottom:none;border-left-color:transparent;border-right-color:transparent}.tipsy-s .tipsy-arrow{left:50%;margin-left:-5px}.tipsy-sw .tipsy-arrow{left:10px}.tipsy-se .tipsy-arrow{right:10px}.tipsy-e .tipsy-arrow,.tipsy-w .tipsy-arrow{top:50%;margin-top:-5px;border-top-color:transparent;border-bottom-color:transparent}.tipsy-e .tipsy-arrow{right:0;border-left-style:solid;border-right:none}.tipsy-w .tipsy-arrow{left:0;border-right-style:solid;border-left:none}assets/css/admin-top-bar.min.css000064400000010722151327220410012563 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
#e-dashboard-widget-admin-top-bar{position:absolute;opacity:0;pointer-events:none}#e-admin-top-bar-root{right:0;background:#fff;-webkit-box-shadow:0 4px 6px rgba(0,0,0,.0394871);box-shadow:0 4px 6px rgba(0,0,0,.0394871);display:none;position:absolute;top:0;width:calc(100% - 160px);z-index:1}#e-admin-top-bar-root .e-admin-top-bar{display:-webkit-box;display:-ms-flexbox;display:flex;height:50px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding:0 16px}#e-admin-top-bar-root .page-title-action{background:#f7f7f7;border:1px solid #0275d8;-webkit-border-radius:3px;border-radius:3px;-webkit-box-sizing:border-box;box-sizing:border-box;color:#0275d8;cursor:pointer;display:inline-block;line-height:30px;margin:0 4px;min-height:30px;padding:0 10px;text-decoration:none}#e-admin-top-bar-root .page-title-action:hover{background:#eceeef;border-color:#1b607f;color:#1b607f}#e-admin-top-bar-root .e-admin-top-bar__heading{-webkit-margin-end:40px;margin-inline-end:40px}#e-admin-top-bar-root .e-admin-top-bar__heading,#e-admin-top-bar-root .e-admin-top-bar__main-area{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}#e-admin-top-bar-root .e-admin-top-bar__main-area button{margin:0 4px}#e-admin-top-bar-root .e-admin-top-bar__secondary-area{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}#e-admin-top-bar-root .e-admin-top-bar__heading-logo{width:30px;background:#93003c;-webkit-border-radius:15px;border-radius:15px;color:#fff;display:inline-block;font-size:.875rem;height:1.875rem;line-height:1.875rem;text-align:center;width:1.875rem}#e-admin-top-bar-root .e-admin-top-bar__heading-title{color:#495157;font-size:15px;font-weight:700;font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;padding:0 8px;line-height:normal;text-transform:uppercase}#e-admin-top-bar-root.e-admin-top-bar--active{display:block}#e-admin-top-bar-root.e-admin-top-bar--active~#wpbody #wpbody-content{margin-top:50px}#e-admin-top-bar-root.e-admin-top-bar--active~#wpbody .wrap{clear:both;padding-top:10px}#e-admin-top-bar-root.e-admin-top-bar--active~#wpbody .wrap h1{display:none}#e-admin-top-bar-root:not(.e-admin-top-bar--active)~#wpbody .wrap .page-title-action,#e-admin-top-bar-root:not(.e-admin-top-bar--active)~#wpbody .wrap h1{display:inline-block}#e-admin-top-bar-root .e-admin-top-bar__bar-button{-webkit-box-align:center;-ms-flex-align:center;align-items:center;cursor:pointer;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;margin:0 10px;text-decoration:none;color:#6d7882}#e-admin-top-bar-root .e-admin-top-bar__bar-button .e-admin-top-bar__bar-button-title{color:#6d7882}#e-admin-top-bar-root .e-admin-top-bar__bar-button .e-admin-top-bar__bar-button-icon{margin:0 4px}#e-admin-top-bar-root .e-admin-top-bar__bar-button:hover .e-admin-top-bar__bar-button-icon,#e-admin-top-bar-root .e-admin-top-bar__bar-button:hover .e-admin-top-bar__bar-button-title{color:#93003c}#e-admin-top-bar-root .e-admin-top-bar__bar-button-title{font-size:13px;font-weight:500;font-family:Roboto;margin:0 4px;line-height:normal}#e-admin-top-bar-root~#wpbody .wrap .page-title-action,#e-admin-top-bar-root~#wpbody .wrap h1{display:none}@media screen and (max-width:960px){#e-admin-top-bar-root{width:calc(100% - 36px)}}@media screen and (max-width:782px){#e-admin-top-bar-root{width:100%}}@media screen and (max-width:600px){#e-admin-top-bar-root{top:46px}}@media (max-width:768px){#e-admin-top-bar-root{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}#e-admin-top-bar-root .e-admin-top-bar__main-area-buttons{position:absolute;top:calc(100% + 10px)}#e-admin-top-bar-root .e-admin-top-bar__secondary-area .e-admin-top-bar__secondary-area-buttons,#e-admin-top-bar-root .e-admin-top-bar__secondary-area>.e-admin-top-bar__bar-button .e-admin-top-bar__bar-button-title{display:none}}@media (min-width:768px){#e-admin-top-bar-root .e-admin-top-bar__secondary-area .e-admin-top-bar__secondary-area-buttons{display:-webkit-box;display:-ms-flexbox;display:flex}}assets/css/widget-divider.min.css000064400000007217151327220410013045 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-widget-divider{--divider-border-style:none;--divider-border-width:1px;--divider-color:#2c2c2c;--divider-icon-size:20px;--divider-element-spacing:10px;--divider-pattern-height:24px;--divider-pattern-size:20px;--divider-pattern-url:none;--divider-pattern-repeat:repeat-x}.elementor-widget-divider .elementor-divider{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget-divider .elementor-divider__text{font-size:15px;line-height:1;max-width:95%}.elementor-widget-divider .elementor-divider__element{margin:0 var(--divider-element-spacing);-ms-flex-negative:0;flex-shrink:0}.elementor-widget-divider .elementor-icon{font-size:var(--divider-icon-size)}.elementor-widget-divider .elementor-divider-separator{display:-webkit-box;display:-ms-flexbox;display:flex;margin:0;direction:ltr}.elementor-widget-divider--view-line_icon .elementor-divider-separator,.elementor-widget-divider--view-line_text .elementor-divider-separator{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-widget-divider--view-line_icon .elementor-divider-separator:after,.elementor-widget-divider--view-line_icon .elementor-divider-separator:before,.elementor-widget-divider--view-line_text .elementor-divider-separator:after,.elementor-widget-divider--view-line_text .elementor-divider-separator:before{display:block;content:"";border-bottom:0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;border-top:var(--divider-border-width) var(--divider-border-style) var(--divider-color)}.elementor-widget-divider--element-align-left .elementor-divider .elementor-divider-separator>.elementor-divider__svg:first-of-type{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:100;flex-shrink:100}.elementor-widget-divider--element-align-left .elementor-divider-separator:before{content:none}.elementor-widget-divider--element-align-left .elementor-divider__element{margin-left:0}.elementor-widget-divider--element-align-right .elementor-divider .elementor-divider-separator>.elementor-divider__svg:last-of-type{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:100;flex-shrink:100}.elementor-widget-divider--element-align-right .elementor-divider-separator:after{content:none}.elementor-widget-divider--element-align-right .elementor-divider__element{margin-right:0}.elementor-widget-divider:not(.elementor-widget-divider--view-line_text):not(.elementor-widget-divider--view-line_icon) .elementor-divider-separator{border-top:var(--divider-border-width) var(--divider-border-style) var(--divider-color)}.elementor-widget-divider--separator-type-pattern{--divider-border-style:none}.elementor-widget-divider--separator-type-pattern.elementor-widget-divider--view-line .elementor-divider-separator,.elementor-widget-divider--separator-type-pattern:not(.elementor-widget-divider--view-line) .elementor-divider-separator:after,.elementor-widget-divider--separator-type-pattern:not(.elementor-widget-divider--view-line) .elementor-divider-separator:before,.elementor-widget-divider--separator-type-pattern:not([class*=elementor-widget-divider--view]) .elementor-divider-separator{width:100%;min-height:var(--divider-pattern-height);-webkit-mask-size:var(--divider-pattern-size) 100%;mask-size:var(--divider-pattern-size) 100%;-webkit-mask-repeat:var(--divider-pattern-repeat);mask-repeat:var(--divider-pattern-repeat);background-color:var(--divider-color);-webkit-mask-image:var(--divider-pattern-url);mask-image:var(--divider-pattern-url)}.elementor-widget-divider--no-spacing{--divider-pattern-size:auto}.elementor-widget-divider--bg-round{--divider-pattern-repeat:round}.rtl .elementor-widget-divider .elementor-divider__text{direction:rtl}assets/css/app.min.css000064400000230530151327220410010712 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
@import "//fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap";.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media screen and (min-width:480px){.text-start-sm{text-align:start}}@media screen and (min-width:480px){.text-center-sm{text-align:center}}@media screen and (min-width:480px){.text-end-sm{text-align:end}}@media screen and (min-width:768px){.text-start-md{text-align:start}}@media screen and (min-width:768px){.text-center-md{text-align:center}}@media screen and (min-width:768px){.text-end-md{text-align:end}}@media screen and (min-width:1025px){.text-start-lg{text-align:start}}@media screen and (min-width:1025px){.text-center-lg{text-align:center}}@media screen and (min-width:1025px){.text-end-lg{text-align:end}}@media screen and (min-width:1440px){.text-start-xl{text-align:start}}@media screen and (min-width:1440px){.text-center-xl{text-align:center}}@media screen and (min-width:1440px){.text-end-xl{text-align:end}}@media screen and (min-width:1600px){.text-start-xxl{text-align:start}}@media screen and (min-width:1600px){.text-center-xxl{text-align:center}}@media screen and (min-width:1600px){.text-end-xxl{text-align:end}}@-webkit-keyframes eps-animation-pop{0%{-webkit-transform:scale(.75);transform:scale(.75);opacity:0}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}@keyframes eps-animation-pop{0%{-webkit-transform:scale(.75);transform:scale(.75);opacity:0}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}.eps-button{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;--button-line-height:16px;--button-padding-y:0.5em;--button-padding-x:1.5em;--button-primary-background-color:#39b54a;--button-primary-hover-background-color:#33a242;--button-primary-active-background-color:#35a945;--button-primary-color:#fff;--button-secondary-background-color:#a4afb7;--button-secondary-hover-background-color:#96a2ac;--button-secondary-active-background-color:#9ba7b0;--button-secondary-color:#fff;--button-danger-background-color:#b01b1b;--button-danger-hover-background-color:#9a1818;--button-danger-active-background-color:#a31919;--button-danger-color:#fff;--button-cta-background-color:#93003f;--button-cta-hover-background-color:#7a0034;--button-cta-active-background-color:#840038;--button-cta-color:#fff;--button-link-background-color:#58d0f5;--button-link-hover-background-color:#40c9f4;--button-link-active-background-color:#4accf4;--button-link-color:#fff;--button-disabled-background-color:#c2cbd2;--button-disabled-hover-background-color:#b3bec7;--button-disabled-active-background-color:#b9c3cc;--button-disabled-color:#fff;color:var(--button-background-color,currentColor);font-size:var(--button-font-size,inherit);font-weight:500;line-height:var(--button-line-height);cursor:pointer}.eps-button:active{--button-background-color:var(--button-active-background-color,transparent)}.eps-button:hover{--button-background-color:var(--button-hover-background-color)}.eps-theme-dark .eps-button{--button-primary-background-color:#39b54a;--button-primary-color:#fff;--button-primary-hover-background-color:#33a242;--button-primary-active-background-color:#35a945;--button-secondary-background-color:#b4b5b7;--button-secondary-color:#fff;--button-secondary-hover-background-color:#a7a8ab;--button-secondary-active-background-color:#acadb0;--button-cta-background-color:#93003f;--button-cta-hover-background-color:#7a0034;--button-cta-active-background-color:#840038;--button-cta-color:#fff;--button-link-background-color:#58d0f5;--button-link-hover-background-color:#40c9f4;--button-link-active-background-color:#4accf4;--button-link-color:#fff;--button-disabled-background-color:#64666a;--button-disabled-hover-background-color:#58595d;--button-disabled-active-background-color:#5d5e62;--button-disabled-color:#fff}.eps-button--contained{padding:var(--button-padding-y) var(--button-padding-x);background-color:var(--button-background-color,transparent);border:1px solid var(--button-background-color)}.eps-button--contained,.eps-button--contained:hover{color:var(--button-color)}.eps-button--outlined{display:block;padding:var(--button-padding-y) var(--button-padding-x);border:1px solid var(--button-background-color)}.eps-button--contained,.eps-button--outlined{-webkit-border-radius:.1875rem;border-radius:.1875rem}.eps-button--underlined{text-decoration:underline}.eps-button--sm{--button-font-size:0.75rem;--button-line-height:14px}.eps-button--lg{--button-font-size:0.9375rem;--button-line-height:18px}.eps-button--primary{--button-color:var(--button-primary-color);--button-background-color:var(--button-primary-background-color);--button-hover-background-color:var(--button-primary-hover-background-color);--button-active-background-color:var(--button-primary-active-background-color)}.eps-button--secondary{--button-color:var(--buton-secondary-color);--button-background-color:var(--button-secondary-background-color);--button-hover-background-color:var(--button-secondary-hover-background-color);--button-active-background-color:var(--button-secondary-active-background-color)}.eps-button--danger{--button-color:var(--buton-danger-color);--button-background-color:var(--button-danger-background-color);--button-hover-background-color:var(--button-danger-hover-background-color);--button-active-background-color:var(--button-danger-active-background-color)}.eps-button--cta{--button-color:var(--button-cta-color);--button-background-color:var(--button-cta-background-color);--button-hover-background-color:var(--button-cta-hover-background-color);--button-active-background-color:var(--button-cta-active-background-color)}.eps-button--link{--button-color:var(--button-link-color);--button-background-color:var(--button-link-background-color);--button-hover-background-color:var(--button-link-hover-background-color);--button-active-background-color:var(--button-link-active-background-color)}.eps-button--disabled,.eps-button[disabled]{--button-color:var(--button-disabled-color);--button-background-color:var(--button-disabled-background-color);--button-hover-background-color:var(--button-disabled-hover-background-color);--button-active-background-color:var(--button-disabled-active-background-color);cursor:default}:root{--app-background-color:#f1f3f5;--app-box-shadow-color:rgba(var(--box-shadow-color,rgba(0,0,0,0.15)),0.2);--app-header-background-color:#fff;--app-header-color:#495157;--app-sidebar-background-color:hsla(0,0%,100%,0.5);--app-header-buttons-separator-color:#d5dadf;--app-header-buttons-color:#a4afb7;--app-lightbox-background-color:rgba(0,0,0,0.8)}.eps-theme-dark{--app-background-color:#34383c;--app-box-shadow-color:rgba(var(--box-shadow-color,rgba(0,0,0,0.15)),0.2);--app-header-background-color:#26292c;--app-header-color:#e0e1e3;--app-sidebar-background-color:#34383c;--app-header-buttons-separator-color:#64666a;--app-header-buttons-color:#b4b5b7;--app-lightbox-background-color:rgba(0,0,0,0.8)}:root{--text-muted:#d5dadf;--disabled:#c2cbd2;--danger:#b01b1b;--body-color:#6d7882;--hr-color:#d5dadf;--box-shadow-color:theme-colors(dark);--display-1-color:#495157;--display-2-color:#495157;--display-3-color:#6d7882;--display-4-color:#495157;--h1-color:#6d7882;--h2-color:#6d7882;--h3-color:#495157;--h4-color:#495157;--h5-color:#495157;--h6-color:#495157;--text-base-color:#495157;--text-xl-color:#495157;--text-lg-color:#495157;--text-sm-color:#495157;--text-xs-color:#495157;--text-xxs-color:#495157;--gray-800:#495157;--gray-700:#556068;--gray-600:#6d7882;--gray-500:#a4afb7;--gray-400:#c2cbd2;--gray-300:#d5dadf;--gray-200:#f1f3f5;--gray-100:#fcfcfc}.eps-theme-dark,:root{--light:#fff;--dark:#000;--info:#58d0f5;--cta:#93003f;--success:#39b54a;--warning:#fcb92c;--link-color:#58d0f5;--link-hover-color:#10bcf1}.eps-theme-dark{--text-muted:#7d7e82;--disabled:#64666a;--accent:#58d0f5;--danger:#f84343;--body-color:#e0e1e3;--body-bg:#fff;--hr-color:#4c4f56;--box-shadow-color:rgba(0,0,0,0.15);--display-1-color:#e0e1e3;--display-2-color:#e0e1e3;--display-3-color:#e0e1e3;--display-4-color:#e0e1e3;--h1-color:#e0e1e3;--h2-color:#e0e1e3;--h3-color:#e0e1e3;--h4-color:#e0e1e3;--h5-color:#e0e1e3;--h6-color:#e0e1e3;--text-base-color:#b4b5b7;--text-xl-color:#b4b5b7;--text-lg-color:#b4b5b7;--text-sm-color:#b4b5b7;--text-xs-color:#b4b5b7;--text-xxs-color:#b4b5b7;--gray-800:#26292c;--gray-700:#34383c;--gray-600:#404349;--gray-500:#4c4f56;--gray-400:#64666a;--gray-300:#7d7e82;--gray-200:#b4b5b7;--gray-100:#e0e1e3}*,:after,:before{-webkit-box-sizing:border-box;box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0)}article,aside,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{margin:0;font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;font-size:.875rem;font-weight:400;line-height:1.5;color:var(--body-color);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--body-bg)}::-moz-selection{background-color:rgba(147,0,63,.5)}::selection{background-color:rgba(147,0,63,.5)}[tabindex="-1"]:focus:not(:focus-visible){outline:0!important}h1,h2,h3,h4,h5,h6{font-size:100%;margin:0;padding:0;line-height:inherit;font-weight:400}p{margin-top:0}b,strong{font-weight:700}small{font-size:80%}a{--eps-link-color:$eps-link-color;color:var(--eps-link-color);background-color:transparent}a,a:active,a:focus,a:hover{text-decoration:none}a:focus,a:hover{--eps-link-color:$eps-link-hover-color}a:not([href]),a:not([href]):hover{color:inherit;text-decoration:none}code,kbd,pre,samp{font-family:monospace;font-size:1em}figure{margin:0}img{border-style:none}img,svg{vertical-align:middle}svg{overflow:hidden}button{-webkit-border-radius:0;border-radius:0}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}[role=button]{cursor:pointer}select{word-wrap:normal}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}input[type=checkbox],input[type=radio]{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}textarea{overflow:auto;resize:vertical}[hidden]{display:none!important}hr{border:0;border-bottom:1px solid var(--hr-color)}.eps-display-1{color:var(--display-1-color)}.eps-display-1,.eps-display-2{font-size:1.85rem;margin-top:.5rem;margin-bottom:.5rem}.eps-display-2{color:var(--display-2-color)}.eps-display-3{font-size:1.85rem;color:var(--display-3-color);margin-top:0;margin-bottom:1.25rem}.eps-display-4{font-size:1.85rem;color:var(--display-4-color);margin-top:.5rem;margin-bottom:.5rem}.eps-h1,h1{font-size:1.625rem;line-height:1;color:var(--h1-color);margin-bottom:1.25rem;font-weight:500}.eps-h2,h2{font-size:1.25rem;color:var(--h2-color);margin-bottom:1.25rem}.eps-h2,.eps-h3,h2,h3{line-height:1.2;margin-top:0;font-weight:500}.eps-h3,h3{font-size:1rem;color:var(--h3-color);margin-bottom:.5rem}.eps-h4,h4{font-size:.9375rem;color:var(--h4-color)}.eps-h4,.eps-h5,h4,h5{margin-top:0;margin-bottom:.5rem}.eps-h5,h5{font-size:.875rem;color:var(--h5-color)}.eps-h6,h6{font-size:.875rem;color:var(--h-6-color);margin-top:0;margin-bottom:.5rem;font-weight:700}.eps-text-xxs{line-height:1.2;color:var(--text-xxs-color)}.eps-text-xs,.eps-text-xxs{font-size:.75rem;font-weight:400}.eps-text-xs{line-height:1.5;color:var(--text-xs-color)}.eps-text{font-size:.875rem;color:var(--text-base-color)}.eps-text,.eps-text-sm{line-height:1.5;font-weight:400}.eps-text-sm{font-size:.8125rem;color:var(--text-sm-color)}.eps-text-lg{font-size:.9375rem;color:var(--text-lg-color)}.eps-text-lg,.eps-text-xl{line-height:1.5;font-weight:400}.eps-text-xl{font-size:1rem;color:var(--text-xl-color)}.video-wrapper{position:relative;padding-bottom:56.25%;height:0}.video-wrapper iframe{position:absolute;top:0;left:0;width:100%;height:100%}.eps-separator{margin-bottom:2.75rem}.eps-theme-dark{--e-app-back-button-color:#b4b5b7}.back-button,.e-app-back-button{--button-background-color:var(--e-app-back-button-color,#a4afb7);margin-bottom:1.5rem}.back-button .eps-icon,.e-app-back-button .eps-icon{-webkit-margin-end:.3125rem;margin-inline-end:.3125rem}.eps-theme-dark{--input-border-color:--hr-color}.eps-input{border:1px solid var(--hr-color);-webkit-border-radius:.1875rem;border-radius:.1875rem;background:transparent;color:inherit;height:1.875rem;padding:0 .3125rem}.eps-input--block{width:100%}.eps-app{height:100vh;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;color:var(--body-color);background-color:var(--app-background-color);position:absolute;-webkit-border-radius:0;border-radius:0;-webkit-box-shadow:2px 8px 23px 3px var(--color-box-shadow-color);box-shadow:2px 8px 23px 3px var(--color-box-shadow-color);overflow:hidden;font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;max-width:100%}.eps-app,.eps-app__lightbox{display:-webkit-box;display:-ms-flexbox;display:flex;width:100%}.eps-app__lightbox{-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;position:fixed;height:100%;background-color:var(--app-lightbox-background-color);z-index:1040;bottom:0;left:0}.eps-app__header{-ms-flex-negative:0;flex-shrink:0;font-size:.9375rem;color:var(--app-header-color);background-color:var(--app-header-background-color);-webkit-box-shadow:0 4px 10px var(--color-box-shadow-color);box-shadow:0 4px 10px var(--color-box-shadow-color);position:relative;z-index:3;height:3.125rem;padding:0 1rem}.eps-app__header-buttons{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;font-size:1.125rem}.eps-app__header-btn{--button-background-color:var(--app-header-buttons-color);-webkit-padding-start:1rem;padding-inline-start:1rem;font-size:1.125rem;line-height:1.25rem}.eps-app__header-btn:first-child{-webkit-border-start:1px solid var(--app-header-buttons-separator-color);border-inline-start:1px solid var(--app-header-buttons-separator-color)}.eps-app__header-btn:not(:first-child){-webkit-padding-end:1rem;padding-inline-end:1rem}.eps-app__logo-title-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.eps-app__logo{display:block;width:1.75rem;height:1.75rem;line-height:1.75rem;text-align:center;font-size:calc(.4 * 1.75rem);-webkit-border-radius:50%;border-radius:50%;color:#fff;background-color:#93003f}.eps-app__logo:not(:last-child){-webkit-margin-end:.625rem;margin-inline-end:.625rem}.eps-app__title{font-size:.9375rem;font-weight:700;text-transform:uppercase;margin-bottom:0}.eps-app__main{display:-webkit-box;display:-ms-flexbox;display:flex;overflow:hidden;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.eps-app__sidebar{background-color:var(--app-sidebar-background-color);padding-top:1.25rem;width:30%;max-width:17.1875rem;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;overflow-y:auto;-webkit-box-shadow:2px 8px 23px 3px var(--color-box-shadow-color);box-shadow:2px 8px 23px 3px var(--color-box-shadow-color);z-index:4}.eps-app__content{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;position:relative;padding:2.75rem;height:100%;overflow-y:auto}.e-app-upload-file__input{display:none}.e-app-drop-zone{--e-app-drop-zone-icon-color:#c2cbd2;--e-app-drop-zone-text-color:#a4afb7;--e-app-drop-zone-secondary-text-color:#6d7882}.e-app-drop-zone__icon{margin-bottom:2.75rem;color:var(--e-app-drop-zone-icon-color);font-size:60px}.e-app-drop-zone__text{color:var(--e-app-drop-zone-text-color)}.e-app-drop-zone__secondary-text{color:var(--e-app-drop-zone-secondary-text-color)}.eps-theme-dark .e-app-drop-zone{--e-app-drop-zone-icon-color:#c2cbd2;--e-app-drop-zone-text-color:#b4b5b7;--e-app-drop-zone-secondary-text-color:#e0e1e3}:root{--info-toggle-color:#d5dadf;--info-toggle-hover-color:#a4afb7}.eps-theme-dark{--placeholder-filter:invert(0.8) sepia(1) saturate(0.2) hue-rotate(180deg) contrast(1.25) brightness(1.2);--info-toggle-color:#64666a;--info-toggle-hover-color:#b4b5b7}.e-site-part .eps-card__image{-webkit-filter:var(--placeholder-filter,none);filter:var(--placeholder-filter,none)}.e-site-part__info-toggle{color:var(--info-toggle-color)}.e-site-part__info-toggle:hover{--info-toggle-color:var(--info-toggle-hover-color)}.e-site-editor__header{margin-bottom:2.75rem;border-bottom:1px solid var(--hr-color)}:root{--e-elementor-loader-container-background-color:#f1f3f5;--e-elementor-loader-background-color:hsla(0,0%,100%,0.9)}.eps-theme-dark{--e-elementor-loader-container-background-color:#34383c;--e-elementor-loader-background-color:#4c4f56}.elementor-loading{background-color:var(--e-elementor-loader-container-background-color);height:100vh}.elementor-loader-wrapper{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);width:300px;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-loader{-webkit-border-radius:50%;border-radius:50%;padding:40px;height:150px;width:150px;background-color:var(--e-elementor-loader-background-color);-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-box-shadow:2px 2px 20px 4px rgba(0,0,0,.02);box-shadow:2px 2px 20px 4px rgba(0,0,0,.02)}.elementor-loader-boxes{height:100%;width:100%;position:relative}.elementor-loader-box{position:absolute;background-color:#d5dadf;-webkit-animation:load 1.8s linear infinite;animation:load 1.8s linear infinite}.elementor-loader-box:first-of-type{width:20%;height:100%;left:0;top:0}.elementor-loader-box:not(:first-of-type){right:0;height:20%;width:60%}.elementor-loader-box:nth-of-type(2){top:0;-webkit-animation-delay:-.45s;animation-delay:-.45s}.elementor-loader-box:nth-of-type(3){top:40%;-webkit-animation-delay:-.9s;animation-delay:-.9s}.elementor-loader-box:nth-of-type(4){bottom:0;-webkit-animation-delay:-1.35s;animation-delay:-1.35s}.elementor-loading-title{color:#a4afb7;text-align:center;text-transform:uppercase;margin-top:30px;letter-spacing:7px;text-indent:7px;font-size:10px;width:100%}@-webkit-keyframes load{0%{opacity:.3}50%{opacity:1}to{opacity:.3}}@keyframes load{0%{opacity:.3}50%{opacity:1}to{opacity:.3}}.eps-menu__title{margin-top:2.75rem;margin-bottom:1rem}.e-app-import{--e-app-import-back-to-library-color:#a4afb7}.e-app-import__drop-zone{margin-top:1.25rem}.e-app-import__back-to-library{color:var(--e-app-import-back-to-library-color);margin-bottom:1.5rem}.e-app-import__back-to-library>i{-webkit-margin-end:.5rem;margin-inline-end:.5rem}.eps-theme-dark .e-app-import{--e-app-import-back-to-library-color:#b4b5b7}.e-site-editor__promotion-overlay__link{display:-webkit-box;display:-ms-flexbox;display:flex;width:100%;height:100%;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;text-decoration:none}.e-site-editor__promotion-overlay__icon{font-size:1.25rem;color:#fff;margin-bottom:1rem}.e-app-import-export-wizard-step{--e-app-import-export-wizard-step-icon-color:#c2cbd2;--e-app-import-export-wizard-step-text-color:#a4afb7;--e-app-import-export-wizard-step-bottom-text-color:#a4afb7;height:100%;position:relative;text-align:center}.e-app-import-export-wizard-step__media-container{height:140px;margin:5.5rem 0 2.75rem}.e-app-import-export-wizard-step__icon{color:var(--e-app-import-export-wizard-step-icon-color);font-size:50px}.e-app-import-export-wizard-step__icon.eicon-loading{font-size:1.85rem}.e-app-import-export-wizard-step__heading{margin-bottom:1.5rem}.e-app-import-export-wizard-step__description{color:var(--e-app-import-export-wizard-step-text-color)}.e-app-import-export-wizard-step__content{text-align:initial;margin-bottom:1.25rem}.e-app-import-export-wizard-step__notice{display:block;position:-webkit-sticky;position:sticky;top:100%;color:var(--e-app-import-export-wizard-step-bottom-text-color);font-style:italic;margin-bottom:0}.eps-theme-dark .e-app-import-export-wizard-step{--e-app-import-export-wizard-step-icon-color:#64666a;--e-app-import-export-wizard-step-text-color:#b4b5b7;--e-app-import-export-wizard-step-bottom-text-color:#b4b5b7}.e-app-import-export-page-header{--e-app-import-export-page-header-border-bottom-color:#d5dadf;--e-app-import-export-page-header-heading-color:#6d7882;--e-app-import-export-page-header-description-color:#a4afb7;border-bottom:1px solid var(--e-app-import-export-page-header-border-bottom-color);margin-bottom:2.75rem}.e-app-import-export-page-header__content-wrapper{max-width:645px}.e-app-import-export-page-header__heading{color:var(--e-app-import-export-page-header-heading-color)}.e-app-import-export-page-header__description{color:var(--e-app-import-export-page-header-description-color);margin-top:1.25rem}.eps-theme-dark .e-app-import-export-page-header{--e-app-import-export-page-header-border-bottom-color:#4c4f56;--e-app-import-export-page-header-heading-color:#e0e1e3;--e-app-import-export-page-header-description-color:#e0e1e3}.e-app-wizard-footer{--e-app-wizard-footer-border-color:#d5dadf;padding:.5rem}.e-app-wizard-footer__separator{border-top:1px solid var(--e-app-wizard-footer-border-color)}.eps-theme-dark .e-app-wizard-footer{--e-app-wizard-footer-border-color:#4c4f56}.e-app-export-templates-features__locked{--e-app-export-templates-features-locked-color:#a4afb7;color:var(--e-app-export-templates-features-locked-color)}.eps-theme-dark .e-app-export-templates-features__locked{--e-app-export-templates-features-locked-color:#7d7e82}:root{--color-box-shadow-color:rgba(0,0,0,0.05)}.eps-theme-dark{--color-box-shadow-color:rgba(0,0,0,0.1)}:root{--card-background-color:hsla(0,0%,100%,0.5);--card-background-color-hover:#fff;--card-box-shadow:0 4px 10px var(--color-box-shadow-color);--card-header-footer-border:1px solid #f1f3f5;--card-header-footer-active-border:2px solid #e2e6ea;--card-headline-color:#6d7882;--card-figure-background-color:#f1f3f5;--card-image-overlay-background-color:rgba(0,0,0,0.2)}.eps-theme-dark{--card-background-color:#404349;--card-background-color-hover:rgba(76,79,86,0.8);--card-box-shadow:0 3px 6px var(--color-box-shadow-color);--card-header-footer-border:1px solid #34383c;--card-header-footer-active-border:1px solid #26292c;--card-headline-color:#e0e1e3;--card-figure-background-color:#34383c;--card-image-overlay-background-color:rgba(52,56,60,0.5)}.eps-card{background-color:var(--card-background-color);-webkit-box-shadow:0 4px 10px var(--color-box-shadow-color);box-shadow:0 4px 10px var(--color-box-shadow-color);-webkit-border-radius:.1875rem;border-radius:.1875rem;-webkit-transition:.3s;-o-transition:.3s;transition:.3s;font-size:.75rem}.eps-card__header{padding:.625rem;border-bottom:var(--card-header-footer-border);min-height:2.5rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.eps-card__header--padding{padding:var(--eps-card-header-padding)}.eps-card__headline{color:var(--card-headline-color);margin-bottom:0;font-weight:500;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis;white-space:nowrap}.eps-card__body{padding:.625rem}.eps-card__body--padding{padding:var(--eps-card-body-padding)}.eps-card__figure{background-color:var(--card-figure-background-color);position:relative;padding-bottom:var(--card-image-aspect-ratio,95.6%);overflow:hidden;height:0}.eps-card__image{width:100%;-o-object-fit:contain;object-fit:contain;-o-object-position:top;object-position:top;position:absolute;top:0;left:0}.eps-card__image-overlay{position:absolute;top:0;background-color:var(--card-image-overlay-background-color);z-index:1;width:100%;height:100%;opacity:0;-webkit-transition:.3s;-o-transition:.3s;transition:.3s}.eps-card__image-overlay:hover{opacity:1}.eps-card__footer{padding:.625rem;border-top:var(--card-header-footer-border);font-size:.6875rem}.eps-card__footer--padding{padding:var(--eps-card-footer-padding)}.eps-card:hover{background-color:var(--card-background-color-hover)}:root{--menu-item-color:#6d7882;--menu-item-color-hover:#556068;--menu-item-background-color-active:#fff;--menu-item-icon-color:#a4afb7;--menu-item-action-button-color:#d5dadf}.eps-theme-dark{--menu-item-color:#e0e1e3;--menu-item-color-hover:#e0e1e3;--menu-item-background-color-active:#404349;--menu-item-icon-color:#b4b5b7;--menu-item-action-button-color:#64666a}.eps-menu-item{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:relative;-webkit-transition:.3s;-o-transition:.3s;transition:.3s;--action-button-opacity:0}.eps-menu-item:before{content:"";display:block;position:absolute;top:0;inset-inline-start:0;height:100%;width:var(--menu-item-pointer-width);background-color:#58d0f5}.eps-menu-item:hover{--action-button-opacity:1}.eps-menu-item--active,.eps-menu-item:hover{--menu-item-color:var(--menu-item-color-hover);--eps-link-color:var(--menu-item-color-hover);--menu-item-icon-color:#58d0f5}.eps-menu-item--active{background-color:var(--menu-item-background-color-active)}.eps-menu-item__link{padding:.5rem 1.875rem;min-height:2.75rem;font-size:.75rem;line-height:1.2;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:var(--menu-item-color);--eps-link-color:var(--menu-item-color)}.eps-menu-item__link:not(:last-child){-webkit-padding-end:0;padding-inline-end:0}.eps-menu-item__link .eps-icon{font-size:1.125rem;color:var(--menu-item-icon-color);-webkit-margin-end:.75rem;margin-inline-end:.75rem}.eps-menu-item__action-button{color:var(--menu-item-action-button-color);opacity:var(--action-button-opacity);padding:.625rem;-webkit-transition:.3s;-o-transition:.3s;transition:.3s;-webkit-margin-end:1.25rem;margin-inline-end:1.25rem}.eps-menu-item--active{--menu-item-pointer-width:0.3125rem;-webkit-box-shadow:0 3px 6px var(--color-box-shadow-color);box-shadow:0 3px 6px var(--color-box-shadow-color)}.eps-menu-item--active .eps-menu-item__link .eps-icon{color:#58d0f5}.eps-grid-container{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;width:100%}.eps-grid-container--no-wrap{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.eps-grid-container--wrap-reverse{-ms-flex-wrap:wrap-reverse;flex-wrap:wrap-reverse}.eps-grid-container--spacing{--grid-row-gutter:calc(-1 * calc(var(--grid-spacing-gutter) * 0.0625rem));width:var(--grid-spacing-width);margin:var(--grid-row-gutter)}.eps-grid-container--spacing>.eps-grid-item{padding:var(--grid-spacing-gutter)}.eps-grid--direction-row{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.eps-grid--direction-row-reverse{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.eps-grid--direction-column{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.eps-grid--direction-column-reverse{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse}.eps-grid--justify-stretch{-webkit-box-pack:stretch;-ms-flex-pack:stretch;justify-content:stretch}.eps-grid--justify-start{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.eps-grid--justify-center{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.eps-grid--justify-end{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.eps-grid--justify-space-between{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.eps-grid--justify-space-around{-ms-flex-pack:distribute;justify-content:space-around}.eps-grid--justify-space-evenly{-webkit-box-pack:space-evenly;-ms-flex-pack:space-evenly;justify-content:space-evenly}.eps-grid--align-content-stretch{-ms-flex-line-pack:stretch;align-content:stretch}.eps-grid--align-content-start{-ms-flex-line-pack:start;align-content:flex-start}.eps-grid--align-content-center{-ms-flex-line-pack:center;align-content:center}.eps-grid--align-content-end{-ms-flex-line-pack:end;align-content:flex-end}.eps-grid--align-content-space-between{-ms-flex-line-pack:justify;align-content:space-between}.eps-grid--align-items-start{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.eps-grid--align-items-center{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.eps-grid--align-items-end{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.eps-grid--align-items-baseline{-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.eps-grid--align-items-stretch{-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch}.eps-grid-item--zero-min-width{min-width:0}@media screen and (min-width:480px){.eps-grid-item-sm{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:100%;-ms-flex-preferred-size:0;flex-basis:0}}@media screen and (min-width:768px){.eps-grid-item-md{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:100%;-ms-flex-preferred-size:0;flex-basis:0}}@media screen and (min-width:1025px){.eps-grid-item-lg{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:100%;-ms-flex-preferred-size:0;flex-basis:0}}@media screen and (min-width:1440px){.eps-grid-item-xl{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:100%;-ms-flex-preferred-size:0;flex-basis:0}}@media screen and (min-width:1600px){.eps-grid-item-xxl{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:100%;-ms-flex-preferred-size:0;flex-basis:0}}.eps-grid-item-xs-1{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:8.3333333333%;-ms-flex-preferred-size:8.3333333333%;flex-basis:8.3333333333%}.eps-grid-item-xs-2{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:16.6666666667%;-ms-flex-preferred-size:16.6666666667%;flex-basis:16.6666666667%}.eps-grid-item-xs-3{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:25%;-ms-flex-preferred-size:25%;flex-basis:25%}.eps-grid-item-xs-4{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:33.3333333333%;-ms-flex-preferred-size:33.3333333333%;flex-basis:33.3333333333%}.eps-grid-item-xs-5{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:41.6666666667%;-ms-flex-preferred-size:41.6666666667%;flex-basis:41.6666666667%}.eps-grid-item-xs-6{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:50%;-ms-flex-preferred-size:50%;flex-basis:50%}.eps-grid-item-xs-7{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:58.3333333333%;-ms-flex-preferred-size:58.3333333333%;flex-basis:58.3333333333%}.eps-grid-item-xs-8{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:66.6666666667%;-ms-flex-preferred-size:66.6666666667%;flex-basis:66.6666666667%}.eps-grid-item-xs-9{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:75%;-ms-flex-preferred-size:75%;flex-basis:75%}.eps-grid-item-xs-10{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:83.3333333333%;-ms-flex-preferred-size:83.3333333333%;flex-basis:83.3333333333%}.eps-grid-item-xs-11{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:91.6666666667%;-ms-flex-preferred-size:91.6666666667%;flex-basis:91.6666666667%}.eps-grid-item-xs-12{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:100%;-ms-flex-preferred-size:100%;flex-basis:100%}@media screen and (min-width:480px){.eps-grid-item-sm-1{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:8.3333333333%;-ms-flex-preferred-size:8.3333333333%;flex-basis:8.3333333333%}.eps-grid-item-sm-2{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:16.6666666667%;-ms-flex-preferred-size:16.6666666667%;flex-basis:16.6666666667%}.eps-grid-item-sm-3{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:25%;-ms-flex-preferred-size:25%;flex-basis:25%}.eps-grid-item-sm-4{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:33.3333333333%;-ms-flex-preferred-size:33.3333333333%;flex-basis:33.3333333333%}.eps-grid-item-sm-5{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:41.6666666667%;-ms-flex-preferred-size:41.6666666667%;flex-basis:41.6666666667%}.eps-grid-item-sm-6{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:50%;-ms-flex-preferred-size:50%;flex-basis:50%}.eps-grid-item-sm-7{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:58.3333333333%;-ms-flex-preferred-size:58.3333333333%;flex-basis:58.3333333333%}.eps-grid-item-sm-8{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:66.6666666667%;-ms-flex-preferred-size:66.6666666667%;flex-basis:66.6666666667%}.eps-grid-item-sm-9{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:75%;-ms-flex-preferred-size:75%;flex-basis:75%}.eps-grid-item-sm-10{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:83.3333333333%;-ms-flex-preferred-size:83.3333333333%;flex-basis:83.3333333333%}.eps-grid-item-sm-11{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:91.6666666667%;-ms-flex-preferred-size:91.6666666667%;flex-basis:91.6666666667%}.eps-grid-item-sm-12{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:100%;-ms-flex-preferred-size:100%;flex-basis:100%}}@media screen and (min-width:768px){.eps-grid-item-md-1{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:8.3333333333%;-ms-flex-preferred-size:8.3333333333%;flex-basis:8.3333333333%}.eps-grid-item-md-2{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:16.6666666667%;-ms-flex-preferred-size:16.6666666667%;flex-basis:16.6666666667%}.eps-grid-item-md-3{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:25%;-ms-flex-preferred-size:25%;flex-basis:25%}.eps-grid-item-md-4{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:33.3333333333%;-ms-flex-preferred-size:33.3333333333%;flex-basis:33.3333333333%}.eps-grid-item-md-5{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:41.6666666667%;-ms-flex-preferred-size:41.6666666667%;flex-basis:41.6666666667%}.eps-grid-item-md-6{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:50%;-ms-flex-preferred-size:50%;flex-basis:50%}.eps-grid-item-md-7{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:58.3333333333%;-ms-flex-preferred-size:58.3333333333%;flex-basis:58.3333333333%}.eps-grid-item-md-8{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:66.6666666667%;-ms-flex-preferred-size:66.6666666667%;flex-basis:66.6666666667%}.eps-grid-item-md-9{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:75%;-ms-flex-preferred-size:75%;flex-basis:75%}.eps-grid-item-md-10{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:83.3333333333%;-ms-flex-preferred-size:83.3333333333%;flex-basis:83.3333333333%}.eps-grid-item-md-11{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:91.6666666667%;-ms-flex-preferred-size:91.6666666667%;flex-basis:91.6666666667%}.eps-grid-item-md-12{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:100%;-ms-flex-preferred-size:100%;flex-basis:100%}}@media screen and (min-width:1025px){.eps-grid-item-lg-1{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:8.3333333333%;-ms-flex-preferred-size:8.3333333333%;flex-basis:8.3333333333%}.eps-grid-item-lg-2{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:16.6666666667%;-ms-flex-preferred-size:16.6666666667%;flex-basis:16.6666666667%}.eps-grid-item-lg-3{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:25%;-ms-flex-preferred-size:25%;flex-basis:25%}.eps-grid-item-lg-4{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:33.3333333333%;-ms-flex-preferred-size:33.3333333333%;flex-basis:33.3333333333%}.eps-grid-item-lg-5{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:41.6666666667%;-ms-flex-preferred-size:41.6666666667%;flex-basis:41.6666666667%}.eps-grid-item-lg-6{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:50%;-ms-flex-preferred-size:50%;flex-basis:50%}.eps-grid-item-lg-7{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:58.3333333333%;-ms-flex-preferred-size:58.3333333333%;flex-basis:58.3333333333%}.eps-grid-item-lg-8{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:66.6666666667%;-ms-flex-preferred-size:66.6666666667%;flex-basis:66.6666666667%}.eps-grid-item-lg-9{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:75%;-ms-flex-preferred-size:75%;flex-basis:75%}.eps-grid-item-lg-10{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:83.3333333333%;-ms-flex-preferred-size:83.3333333333%;flex-basis:83.3333333333%}.eps-grid-item-lg-11{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:91.6666666667%;-ms-flex-preferred-size:91.6666666667%;flex-basis:91.6666666667%}.eps-grid-item-lg-12{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:100%;-ms-flex-preferred-size:100%;flex-basis:100%}}@media screen and (min-width:1440px){.eps-grid-item-xl-1{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:8.3333333333%;-ms-flex-preferred-size:8.3333333333%;flex-basis:8.3333333333%}.eps-grid-item-xl-2{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:16.6666666667%;-ms-flex-preferred-size:16.6666666667%;flex-basis:16.6666666667%}.eps-grid-item-xl-3{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:25%;-ms-flex-preferred-size:25%;flex-basis:25%}.eps-grid-item-xl-4{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:33.3333333333%;-ms-flex-preferred-size:33.3333333333%;flex-basis:33.3333333333%}.eps-grid-item-xl-5{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:41.6666666667%;-ms-flex-preferred-size:41.6666666667%;flex-basis:41.6666666667%}.eps-grid-item-xl-6{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:50%;-ms-flex-preferred-size:50%;flex-basis:50%}.eps-grid-item-xl-7{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:58.3333333333%;-ms-flex-preferred-size:58.3333333333%;flex-basis:58.3333333333%}.eps-grid-item-xl-8{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:66.6666666667%;-ms-flex-preferred-size:66.6666666667%;flex-basis:66.6666666667%}.eps-grid-item-xl-9{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:75%;-ms-flex-preferred-size:75%;flex-basis:75%}.eps-grid-item-xl-10{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:83.3333333333%;-ms-flex-preferred-size:83.3333333333%;flex-basis:83.3333333333%}.eps-grid-item-xl-11{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:91.6666666667%;-ms-flex-preferred-size:91.6666666667%;flex-basis:91.6666666667%}.eps-grid-item-xl-12{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:100%;-ms-flex-preferred-size:100%;flex-basis:100%}}@media screen and (min-width:1600px){.eps-grid-item-xxl-1{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:8.3333333333%;-ms-flex-preferred-size:8.3333333333%;flex-basis:8.3333333333%}.eps-grid-item-xxl-2{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:16.6666666667%;-ms-flex-preferred-size:16.6666666667%;flex-basis:16.6666666667%}.eps-grid-item-xxl-3{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:25%;-ms-flex-preferred-size:25%;flex-basis:25%}.eps-grid-item-xxl-4{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:33.3333333333%;-ms-flex-preferred-size:33.3333333333%;flex-basis:33.3333333333%}.eps-grid-item-xxl-5{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:41.6666666667%;-ms-flex-preferred-size:41.6666666667%;flex-basis:41.6666666667%}.eps-grid-item-xxl-6{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:50%;-ms-flex-preferred-size:50%;flex-basis:50%}.eps-grid-item-xxl-7{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:58.3333333333%;-ms-flex-preferred-size:58.3333333333%;flex-basis:58.3333333333%}.eps-grid-item-xxl-8{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:66.6666666667%;-ms-flex-preferred-size:66.6666666667%;flex-basis:66.6666666667%}.eps-grid-item-xxl-9{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:75%;-ms-flex-preferred-size:75%;flex-basis:75%}.eps-grid-item-xxl-10{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:83.3333333333%;-ms-flex-preferred-size:83.3333333333%;flex-basis:83.3333333333%}.eps-grid-item-xxl-11{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:91.6666666667%;-ms-flex-preferred-size:91.6666666667%;flex-basis:91.6666666667%}.eps-grid-item-xxl-12{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:100%;-ms-flex-preferred-size:100%;flex-basis:100%}}.eps-theme-dark,:root{--menu-title-color:#6d7882}.eps-menu ul{list-style:none;padding:0;margin:0}.eps-menu ul li{display:-webkit-box;display:-ms-flexbox;display:flex}.eps-menu__title{padding:.5rem 1.875rem;font-size:.6875rem;line-height:1.2;text-transform:uppercase;font-weight:400;color:var(--menu-title-color)}:root{--eps-modal-background-color:#fff;--eps-modal-header-background-color:#58d0f5}.eps-theme-dark{--eps-modal-background-color:#34383c;--eps-modal-header-background-color:#58d0f5}.eps-modal{max-width:43.75rem;background:var(--eps-modal-background-color);-webkit-border-radius:.1875rem;border-radius:.1875rem;-webkit-animation:eps-animation-pop .15s cubic-bezier(.57,.53,.71,1.47) forwards;animation:eps-animation-pop .15s cubic-bezier(.57,.53,.71,1.47) forwards}.eps-modal__overlay{background:rgba(0,0,0,.5);position:fixed;display:-webkit-box;display:-ms-flexbox;display:flex;top:0;left:0;width:100%;height:100%;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;z-index:1030}.eps-modal__header{font-size:.875rem;background:var(--eps-modal-header-background-color);height:2.75rem;padding:.625rem 1rem;-webkit-border-radius:.1875rem;border-radius:.1875rem}.eps-modal__header,.eps-modal__header .title{color:#fff}.eps-modal__icon{-webkit-margin-end:.625rem;margin-inline-end:.625rem}.eps-modal__body{padding:1.875rem}.eps-modal .eps-tip,.eps-modal__tip{-webkit-padding-start:.75rem;padding-inline-start:.75rem;-webkit-border-start:3px solid #58d0f5;border-inline-start:3px solid #58d0f5}.eps-modal .eps-tip:not(:last-child),.eps-modal__tip:not(:last-child){margin-bottom:1.875rem}.eps-modal .eps-tip:not(:first-child),.eps-modal__section:not(:first-child),.eps-modal__tip:not(:first-child){margin-top:1.875rem}.eps-modal__close-wrapper{-webkit-padding-start:1rem;padding-inline-start:1rem;-webkit-border-start:solid 1px #fff;border-inline-start:solid 1px #fff}.eps-add-new-button{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;--eps-add-new-button-size:1.5rem;line-height:var(--eps-add-new-button-size);cursor:pointer}.eps-add-new-button .eps-icon{background-color:#58d0f5;color:#fff;width:var(--eps-add-new-button-size);height:var(--eps-add-new-button-size);-webkit-border-radius:100%;border-radius:100%;font-size:calc(var(--eps-add-new-button-size) * .75);text-align:center;line-height:var(--eps-add-new-button-size)}.eps-add-new-button span:not(.sr-only){-webkit-margin-start:.625rem;margin-inline-start:.625rem;font-weight:500}.eps-add-new-button--sm{--eps-add-new-button-size:1rem}:root{--select2-selection-background-color:#fff;--select2-selection-color:#6d7882;--select2-selection-border-color:#d5dadf;--select2-selection-opened-focused-border-color:#f1f3f5;--select2-single-selection-rendered-color:#6d7882;--select2-default-single-selection-background-color:#fff;--select2-default-single-selection-border-color:#d5dadf;--select2-default-multiple-selection-background-color:#fff;--select2-default-multiple-selection-choice-background-color:#f1f3f5;--select2-default-multiple-selection-choice-color:#6d7882;--select2-default-multiple-selection-choice-border-color:#f1f3f5;--select2-default-multiple-selection-choice-remove-color:#a4afb7;--select2-default-multiple-selection-choice-remove-hover-color:#6d7882;--select2-default-results-selected-option-background-color:#fff;--select2-default-results-selected-option-color:#6d7882;--select2-default-results-highlighted-option-background-color:#5897fb;--select2-default-results-highlighted-option-color:#fff;--select2-results-selected-option-background-color:#5897fb;--select2-results-selected-option-color:#fff;--select2-dropdown-background-color:#fff;--select2-dropdown-border-color:#d5dadf}.eps-theme-dark{--select2-selection-background-color:#34383c;--select2-selection-color:#e0e1e3;--select2-selection-border-color:#64666a;--select2-selection-opened-focused-border-color:#7d7e82;--select2-single-selection-rendered-color:#e0e1e3;--select2-default-single-selection-background-color:#34383c;--select2-default-single-selection-border-color:#4c4f56;--select2-default-multiple-selection-background-color:#34383c;--select2-default-multiple-selection-choice-background-color:#4c4f56;--select2-default-multiple-selection-choice-color:#e0e1e3;--select2-default-multiple-selection-choice-border-color:#4c4f56;--select2-default-multiple-selection-choice-remove-color:#b4b5b7;--select2-default-multiple-selection-choice-remove-hover-color:#e0e1e3;--select2-default-results-selected-option-background-color:#34383c;--select2-default-results-selected-option-color:#e0e1e3;--select2-default-results-highlighted-option-background-color:#4c4f56;--select2-default-results-highlighted-option-color:#e0e1e3;--select2-results-selected-option-background-color:#4c4f56;--select2-results-selected-option-color:#e0e1e3;--select2-dropdown-background-color:#34383c;--select2-dropdown-border-color:#64666a}.select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--multiple,.select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--single{background-color:var(--select2-selection-background-color);color:var(--select2-selection-color);border-color:var(--select2-selection-border-color)}.select2-container.select2-container--focus .select2-selection--multiple,.select2-container.select2-container--focus .select2-selection--single,.select2-container.select2-container--open .select2-selection--multiple,.select2-container.select2-container--open .select2-selection--single{border-color:var(--select2-selection-opened-focused-border-color)}.select2-container.select2-container--default .select2-selection--single .select2-selection__rendered{color:var(--select2-single-selection-rendered-color)}.select2-container--default .select2-selection--single{background-color:var(--select2-default-single-selection-background-color);border-color:var(--select2-default-single-selection-border-color)}.select2-container--default .select2-selection--multiple{background-color:var(--select2-default-multiple-selection-background-color)}.select2-container--default .select2-selection--multiple .select2-selection__choice{background-color:var(--select2-default-multiple-selection-choice-background-color);color:var(--select2-default-multiple-selection-choice-color);border-color:var(--select2-default-multiple-selection-choice-border-color)}.select2-container--default .select2-selection--multiple .select2-selection__choice__remove{color:var(--select2-default-multiple-selection-choice-remove-color)}.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover{color:var(--select2-default-multiple-selection-choice-remove-hover-color)}.select2-container--default .select2-results__option[aria-selected]{background-color:var(--select2-default-results-selected-option-background-color);color:var(--select2-default-results-selected-option-color)}.select2-container--default .select2-results__option--highlighted[aria-selected]{background-color:var(--select2-default-results-highlighted-option-background-color);color:var(--select2-default-results-highlighted-option-color)}.select2-container .select2-results__option[aria-selected=true]{background-color:var(--select2-results-selected-option-background-color);color:var(--select2-results-selected-option-color)}.select2-container .select2-dropdown{background-color:var(--select2-dropdown-background-color);border-color:var(--select2-dropdown-border-color)}.eps-notice{--eps-box-notice-color:#a4afb7;--eps-box-notice-background-color:#fcfcfc;padding:.625rem 1rem;-webkit-box-shadow:0 2px 3px 1px var(--color-box-shadow-color);box-shadow:0 2px 3px 1px var(--color-box-shadow-color);background-color:var(--eps-box-notice-background-color)}.eps-notice--warning{-webkit-border-start:3px solid #fcb92c;border-inline-start:3px solid #fcb92c}.eps-notice__text{margin:0;padding:0;color:var(--eps-box-notice-color);font-style:italic}.eps-theme-dark .eps-notice{--eps-box-notice-color:#b4b5b7;--eps-box-notice-background-color:#404349}.eps-list{--eps-list-item-separated-border-color:#f1f3f5;padding:0;margin:0;list-style-type:none}.eps-list--padding{padding:var(--eps-list-padding)}.eps-list__item{padding:0}.eps-list__item--padding{padding:var(--eps-list-item-padding)}.eps-list--separated .eps-list__item:not(:last-child){border-bottom:1px solid var(--eps-list-item-separated-border-color)}.eps-theme-dark .eps-list{--eps-list-item-separated-border-color:#34383c}:root{--popover-background-color:#fff;--popover-item-color:#6d7882;--popover-item-hover-color:#556068;--popover-item-danger-hover-color:#b01b1b;--popover-item-background-color:#fff;--popover-box-shadow-color:rgba(0,0,0,0.15);--popover-box-shadow-size:0px 1px 20px;--popover-arrow-color:#fff}.eps-theme-dark{--popover-background-color:#4c4f56;--popover-item-color:#fff;--popover-item-hover-color:#e0e1e3;--popover-item-danger-hover-color:#f84343;--popover-item-background-color:#4c4f56;--popover-box-shadow-color:rgba(0,0,0,0.15);--popover-box-shadow-size:0px 1px 20px;--popover-arrow-color:#4c4f56}.eps-popover{padding:10px 0;background-color:var(--popover-background-color);-webkit-box-shadow:var(--popover-box-shadow-size) var(--popover-box-shadow-color);box-shadow:var(--popover-box-shadow-size) var(--popover-box-shadow-color);list-style:none;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;min-width:120px;-webkit-border-radius:.1875rem;border-radius:.1875rem;position:absolute;z-index:1050;margin-top:9px;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);left:.25rem}.eps-popover__background{position:fixed;top:0;bottom:0;left:0;right:0;z-index:1030}.eps-popover__container{position:relative}.eps-popover:before{content:"";display:block;position:absolute;width:16px;height:9px;margin:0 .1875rem 9px;top:-9px;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);border-left:8px solid transparent;border-right:8px solid transparent;border-top:0 solid transparent;border-bottom:9px solid transparent;border-bottom-color:var(--popover-arrow-color)}.eps-popover__item{padding:.3125rem 1rem;background-color:var(--popover-item-background-color);color:var(--popover-item-color);font-size:.6875rem;font-weight:500;line-height:.8125rem;width:100%;-webkit-box-align:center;-ms-flex-align:center;align-items:center;cursor:pointer}.eps-popover__item:hover{color:var(--popover-item-hover-color)}.eps-popover__item--danger:hover{color:var(--popover-item-danger-hover-color)}.eps-popover__item .eps-icon{font-size:inherit;-webkit-margin-end:.3125rem;margin-inline-end:.3125rem}.eps-css-grid{display:grid;grid-template-columns:repeat(var(--eps-grid-columns,auto-fill),minmax(var(--eps-grid-col-min-width,1fr),var(--eps-grid-col-max-width,1fr)));grid-gap:var(--eps-grid-spacing)}.eps-box{--eps-box-background-color:#fff;--eps-box-color:#495157;--eps-box-input-color:#495157;padding:0;-webkit-border-radius:.1875rem;border-radius:.1875rem;background-color:var(--eps-box-background-color);color:var(--eps-box-color)}.eps-box--padding{padding:var(--eps-box-padding)}.eps-box>input{width:100%;outline:0;border:0;background-color:var(--eps-box-background-color);color:var(--eps-box-input-color)}.eps-theme-dark .eps-box{--eps-box-background-color:#404349;--eps-box-color:#e0e1e3;--eps-box-input-color:#e0e1e3}:root{--checkbox-border-color:#d5dadf;--checkbox-hover-border-color:#c7cdd4;--checkbox-active-border-color:#e3e7ea;--checkbox-background-color:#fff;--checkbox-checked-background-color:#39b54a;--checkbox-checked-hover-background-color:#33a242;--checkbox-checked-active-background-color:#44c455;--checkbox-indicator-color:#fff}.eps-theme-dark{--checkbox-background-color:transparent}.eps-checkbox{-webkit-appearance:none;-webkit-border-radius:.1875rem;border-radius:.1875rem;width:15px;height:15px;outline:0;background-color:var(--checkbox-background-color);display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;border:1px solid var(--checkbox-border-color)}.eps-checkbox:after{display:inline-block;margin-bottom:12.5%;content:" ";width:3px;height:6px;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.eps-checkbox:hover{--checkbox-border-color:var(--checkbox-hover-border-color)}.eps-checkbox:active{--checkbox-border-color:var(--checkbox-active-border-color)}.eps-checkbox:checked{--checkbox-background-color:var(--checkbox-checked-background-color);--checkbox-border-color:var(--checkbox-checked-background-color)}.eps-checkbox:checked:after{border:solid #fff;border-width:0 1px 1px 0}.eps-checkbox:checked:hover{--checkbox-background-color:var(--checkbox-checked-hover-background-color);--checkbox-border-color:var(--checkbox-checked-hover-background-color)}.eps-checkbox:checked:active{--checkbox-background-color:var(--checkbox-checked-active-background-color);--checkbox-border-color:var(--checkbox-checked-active-background-color)}.eps-checkbox--rounded{-webkit-border-radius:50%;border-radius:50%}:root{--e-app-drag-drop-background-color:#fff;--e-app-drag-drop-outline-color:#d5dadf}.eps-theme-dark{--e-app-drag-drop-background-color:#404349;--e-app-drag-drop-outline-color:#7d7e82}.e-app-drag-drop{background-color:var(--e-app-drag-drop-background-color);outline:2px dashed var(--e-app-drag-drop-outline-color);outline-offset:-.75rem;margin-bottom:1.5rem;padding:4.125rem;text-align:center}.e-app-drag-drop--drag-over{outline-color:#58d0f5}.eps-dialog{-webkit-border-radius:3px;border-radius:3px;width:375px}.eps-dialog__close-button{position:absolute;top:-2.75rem;right:-2.75rem;margin-top:.625rem;margin-right:.625rem;z-index:1040;font-size:1.25rem;color:#fff}.eps-dialog__content{padding:1.5rem 1.875rem 1rem;font-size:.75rem}.eps-dialog__text,.eps-dialog__title{text-align:center}.eps-dialog__buttons{display:-webkit-box;display:-ms-flexbox;display:flex}.eps-dialog__button{-webkit-box-flex:1;-ms-flex:1;flex:1;border-top:1px solid var(--hr-color);line-height:2.75rem;text-align:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.eps-dialog__button:last-child:not(:first-child){-webkit-border-start:1px solid var(--hr-color);border-inline-start:1px solid var(--hr-color)}.eps-inline-link{color:var(--eps-inline-link-color);background-color:initial;border:0;padding:0}.eps-inline-link--color-primary{--eps-inline-link-color:#39b54a}.eps-inline-link--color-secondary{--eps-inline-link-color:#c2cbd2}.eps-inline-link--color-danger{--eps-inline-link-color:#b01b1b}.eps-inline-link--color-cta{--eps-inline-link-color:#93003f}.eps-inline-link--color-link{--eps-inline-link-color:#58d0f5}.eps-inline-link--color-disabled{--eps-inline-link-color:#c2cbd2}.eps-inline-link--underline-always,.eps-inline-link--underline-always:hover,.eps-inline-link--underline-hover:hover{text-decoration:underline}.eps-inline-link--italic{font-style:italic}.eps-inline-link,.eps-inline-link:focus{outline:none}.eps-text-field{--eps-text-field-color:#6d7882;--eps-text-field-background-color:#fff;--eps-text-field-placeholder-color:#a4afb7;--eps-text-field-outlined-border-color:#d5dadf;--eps-text-field-outlined-focus-border-color:#c2cbd2;width:100%;color:var(--eps-text-field-color);background-color:var(--eps-text-field-background-color);border:0;outline:none;font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;font-size:.875rem;font-weight:400;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.eps-text-field--outlined{-webkit-border-radius:.1875rem;border-radius:.1875rem;border:1px solid var(--eps-text-field-outlined-border-color);padding:.625rem}.eps-text-field--outlined:focus{border-color:var(--eps-text-field-outlined-focus-border-color)}.eps-text-field::-webkit-input-placeholder{color:var(--eps-text-field-placeholder-color);font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;font-size:.875rem;font-weight:400;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.eps-text-field::-moz-placeholder{color:var(--eps-text-field-placeholder-color);font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;font-size:.875rem;font-weight:400;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.eps-text-field::-ms-input-placeholder{color:var(--eps-text-field-placeholder-color);font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;font-size:.875rem;font-weight:400;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.eps-text-field::placeholder{color:var(--eps-text-field-placeholder-color);font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;font-size:.875rem;font-weight:400;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.eps-theme-dark .eps-text-field{--eps-text-field-color:#b4b5b7;--eps-text-field-background-color:#34383c;--eps-text-field-placeholder-color:#7d7e82;--eps-text-field-outlined-border-color:#64666a;--eps-text-field-outlined-focus-border-color:#7d7e82}.e-app-import-export-content-layout{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;height:100%}.e-app-import-export-content-layout__container{-ms-flex-preferred-size:1075px;flex-basis:1075px}.e-app-export-complete__kit-content-title{margin:2.75rem 0 .625rem}.e-app-export-kit-content{--e-app-export-kit-content-title-color:#556068;--e-app-export-kit-content-description-color:#6d7882}.e-app-export-kit-content__checkbox{-ms-flex-negative:0;flex-shrink:0;-webkit-margin-end:.75rem;margin-inline-end:.75rem}.e-app-export-kit-content__title{color:var(--e-app-export-kit-content-title-color)}.e-app-export-kit-content__description{color:var(--e-app-export-kit-content-description-color);-webkit-margin-end:1.25rem;margin-inline-end:1.25rem}.e-app-export-kit-content__notice{margin-top:1rem}.eps-theme-dark .e-app-export-kit-content{--e-app-export-kit-content-title-color:#e0e1e3;--e-app-export-kit-content-description-color:#b4b5b7}.e-app-export-complete-kit-data-list{--e-app-export-complete-kit-data-border-color:#d5dadf}.e-app-export-complete-kit-data-list__item{padding:.625rem 0;border-bottom:1px solid var(--e-app-export-complete-kit-data-border-color)}.eps-theme-dark .e-app-export-complete-kit-data-list{--e-app-export-complete-kit-data-border-color:#4c4f56}.e-app-import-resolver{--e-app-import-resolver-panel-header-background-color:#fff;--e-app-import-resolver-panel-body-background-color:hsla(0,0%,100%,0.5);--e-app-import-resolver-conflicts-asset-border-color:#c2cbd2;--e-app-import-resolver-conflicts-asset-inactive-color:#a4afb7;padding-bottom:1.25rem}.e-app-import-resolver__notice{margin-bottom:1.25rem}.e-app-import-resolver__panel,.e-app-import-resolver__panel:hover{background-color:initial}.e-app-import-resolver__panel-header{background-color:var(--e-app-import-resolver-panel-header-background-color)}.e-app-import-resolver__panel-body{background-color:var(--e-app-import-resolver-panel-body-background-color)}.e-app-import-resolver-conflicts__container{-webkit-box-shadow:0 2px 3px 1px var(--color-box-shadow-color);box-shadow:0 2px 3px 1px var(--color-box-shadow-color)}.e-app-import-resolver-conflicts__checkbox{-ms-flex-negative:0;flex-shrink:0;-webkit-margin-end:.75rem;margin-inline-end:.75rem}.e-app-import-resolver-conflicts__title{line-height:1}.e-app-import-resolver-conflicts__asset:not(:first-child){-webkit-border-start:2px solid var(--e-app-import-resolver-conflicts-asset-border-color);border-inline-start:2px solid var(--e-app-import-resolver-conflicts-asset-border-color);-webkit-padding-start:1rem;padding-inline-start:1rem;-webkit-margin-start:1rem;margin-inline-start:1rem}.e-app-import-resolver-conflicts__asset:not(.active){color:var(--e-app-import-resolver-conflicts-asset-inactive-color)}.e-app-import-resolver-conflicts__edit-template{-webkit-margin-start:.3125rem;margin-inline-start:.3125rem}.eps-theme-dark .e-app-import-resolver{--e-app-import-resolver-panel-header-background-color:#4c4f56;--e-app-import-resolver-panel-body-background-color:rgba(0,0,0,0.05);--e-app-import-resolver-conflicts-asset-border-color:#64666a;--e-app-import-resolver-conflicts-asset-inactive-color:#7d7e82}.e-app-import-export-panel{--e-app-import-export-panel-header-background-color:#fff;--e-app-import-export-panel-body-background-color:hsla(0,0%,100%,0.5)}.e-app-import-export-panel,.e-app-import-export-panel:hover{background-color:initial}.e-app-import-export-panel__header{background-color:var(--e-app-import-export-panel-header-background-color);-webkit-border-radius:.1875rem;border-radius:.1875rem}.e-app-import-export-panel__body{background-color:var(--e-app-import-export-panel-body-background-color);-webkit-border-radius:0 0 .1875rem .1875rem;border-radius:0 0 .1875rem .1875rem}.eps-theme-dark .e-app-import-export-panel{--e-app-import-export-panel-header-background-color:#404349;--e-app-import-export-panel-body-background-color:rgba(64,67,73,0.5)}.e-app-export-kit{padding-bottom:1.25rem}.e-app-export-kit-information{margin-top:1.25rem}.e-app-export-kit-information__field-header{margin-bottom:.625rem}.e-app-export-kit-information__label{margin:0}.e-app-export-kit-information__info-icon{-webkit-margin-start:.625rem;margin-inline-start:.625rem}.e-app-export-kit-info-modal__icon{-webkit-padding-start:.625rem;padding-inline-start:.625rem}.e-app-export-kit-info-modal__heading{margin-bottom:1.25rem}.e-app-import-export-info-modal__section:not(:first-child){margin-top:1.875rem}.e-app-import-export-info-modal__heading{margin-bottom:1.25rem}:root{--eps-badge-background-color:#fff}.eps-theme-dark{--eps-badge-background-color:#404349}.eps-badge{display:inline-block;background:var(--eps-badge-background-color);padding:0 .5rem;line-height:1.8;-webkit-box-shadow:0 3px 6px var(--color-box-shadow-color);box-shadow:0 3px 6px var(--color-box-shadow-color);-webkit-border-radius:4px;border-radius:4px;font-size:.75rem}.eps-badge--sm{font-size:.625rem;-webkit-border-radius:3px;border-radius:3px;padding:0 .3125rem;line-height:1.5}.eps-collapse__title{cursor:pointer;padding:.3125rem 0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;width:100%;background:transparent;border:none;color:inherit}.eps-collapse__title:focus{outline:none}.eps-collapse__icon{-webkit-transition:all .15s;-o-transition:all .15s;transition:all .15s;-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg)}.eps-collapse__content{margin-top:.625rem;display:none}.eps-collapse[data-open] .eps-collapse__content{display:block}.eps-collapse[data-open] .eps-collapse__icon{-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.e-kit-library-bottom-promotion{--e-kit-library-bottom-promotion-color:tints(600)}.eps-theme-dark .e-kit-library-bottom-promotion{--e-kit-library-bottom-promotion-color:dark-tints(400)}.e-kit-library-bottom-promotion{width:100%;text-align:center;margin-top:1.875rem;color:var(--e-kit-library-bottom-promotion-color)}.e-kit-library__error-screen{margin-top:2.75rem}.e-kit-library__error-screen-title{margin-top:2.75rem;margin-bottom:0}.e-kit-library__error-screen-description{margin-top:1.5rem;color:#a4afb7;text-align:center;max-width:520px}.e-kit-library__kit-favorite-actions{padding:.3125rem;-webkit-transition:all .3s;-o-transition:.3s all;transition:all .3s;-webkit-border-radius:4px;border-radius:4px}.e-kit-library__kit-favorite-actions--active{color:#b01b1b}.e-kit-library__kit-favorite-actions--loading{opacity:1%;cursor:default}.e-kit-library__kit-favorite-actions:hover{background-color:rgba(176,27,27,.1)}.e-kit-library__filter-indication{margin-top:1.5rem}.e-kit-library__filter-indication,.e-kit-library__filter-indication-text{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.e-kit-library__filter-indication-text{margin-bottom:0}.e-kit-library__filter-indication-badge{margin-left:.3125rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.e-kit-library__filter-indication-badge-remove{margin-left:.3125rem;font-size:.875rem}.e-kit-library__filter-indication-button{margin-left:1.5rem}#eps-app-header-btn-apply,#eps-app-header-btn-connect,#eps-app-header-btn-promotion{margin-left:.625rem;margin-right:.625rem}.e-kit-library__apply-button{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;gap:.3125rem}.e-kit-library__kit-item{--e-kit-library-kit-item-overlay-promotion-button-background-color:#fcfcfc}.eps-theme-dark .e-kit-library__kit-item{--e-kit-library-kit-item-overlay-promotion-button-background-color:#404349}.e-kit-library__kit-item-overlay{height:100%}.e-kit-library__kit-item-overlay>:first-child{-webkit-box-flex:1;-ms-flex:1;flex:1}.e-kit-library__kit-item-overlay-overview-button{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;color:#fff;height:100%;width:100%}.e-kit-library__kit-item-overlay-overview-button>i{font-size:2rem;margin-bottom:5px}.e-kit-library__kit-item-overlay-overview-button>span{font-size:.9rem}.e-kit-library__kit-item-overlay-promotion-button{display:-webkit-box;display:-ms-flexbox;display:flex;width:100%;background:#fff;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:10px;font-size:13px;color:#93003f;background:var(--e-kit-library-kit-item-overlay-promotion-button-background-color)}.e-kit-library__kit-item-overlay-promotion-button>*{margin:0 3px}.e-kit-library__kit-item-subscription-plan-badge{position:absolute;top:0;right:0;margin:.3125rem;color:#fff;text-transform:uppercase}:root{--e-kit-library-header-back-border:1px solid #f1f3f5;--e-kit-library-header-back-color:#a4afb7}.eps-theme-dark{--e-kit-library-header-back-border:1px solid #64666a;--e-kit-library-header-back-color:#b4b5b7}.e-kit-library__header-back{color:var(--e-kit-library-header-back-color);padding-right:1.25rem;padding-left:.3125rem;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:100%;border-right:var(--e-kit-library-header-back-border)}.e-kit-library__header-back-container{-webkit-box-flex:1;-ms-flex:1;flex:1;height:100%}.e-kit-library__header-back .eps-icon{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg)}.e-kit-library__page-loader{width:100%;height:100%;display:grid;place-items:center;font-size:1.85rem;color:#a4afb7}.eps-search-input{--eps-search-input-background-color:#fcfcfc;--eps-search-input-background-color-focus:#fff;--eps-search-input-color:#556068;--eps-search-input-placeholder-color:#a4afb7}.eps-theme-dark .eps-search-input{--eps-search-input-background-color:#404349;--eps-search-input-background-color-focus:#4c4f56;--eps-search-input-color:#b4b5b7;--eps-search-input-placeholder-color:#b4b5b7}.eps-search-input{width:100%;font-size:.9375rem;padding:.625rem 2.75rem;border:none;background:var(--eps-search-input-background-color);outline:none;color:var(--eps-search-input-color);line-height:1;height:2.75rem}.eps-search-input--sm{font-size:.8125rem;padding:.5rem 1.875rem}.eps-search-input:focus{background:var(--eps-search-input-background-color-focus)}.eps-search-input::-webkit-input-placeholder{color:var(--eps-search-input-placeholder-color);font-style:italic}.eps-search-input::-moz-placeholder{color:var(--eps-search-input-placeholder-color);font-style:italic}.eps-search-input::-ms-input-placeholder{color:var(--eps-search-input-placeholder-color);font-style:italic}.eps-search-input::placeholder{color:var(--eps-search-input-placeholder-color);font-style:italic}.eps-search-input__container{position:relative}.eps-search-input__icon{font-size:1.25rem;padding:.625rem;color:#a4afb7;position:absolute;top:0;inset-inline-start:0;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.eps-search-input__icon--sm{font-size:.75rem}.eps-search-input__clear-icon{font-size:.875rem;padding:.625rem;color:#a4afb7;position:absolute;top:0;right:0;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.eps-search-input__clear-icon--sm{font-size:.6875rem}:root{--eps-sort-select-select-background-color:#fcfcfc;--eps-sort-select-select-color:#556068;--eps-sort-select-button-background-color:#fcfcfc;--eps-sort-select-button-border:1px solid #f1f3f5}.eps-theme-dark{--eps-sort-select-select-background-color:#404349;--eps-sort-select-select-color:#b4b5b7;--eps-sort-select-button-background-color:#404349;--eps-sort-select-button-border:1px solid #26292c}.eps-sort-select{width:100%;font-size:.9375rem;display:-webkit-box;display:-ms-flexbox;display:flex}.eps-sort-select__select-wrapper{-webkit-box-flex:1;-ms-flex:1;flex:1;position:relative}.eps-sort-select__select-wrapper:after{content:"\e8ad";font-family:eicons;position:absolute;right:.625rem;top:0;bottom:0;color:#a4afb7;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;pointer-events:none}.eps-sort-select__select{width:100%;padding:.625rem;border:none;background:var(--eps-sort-select-select-background-color);outline:none;color:var(--eps-sort-select-select-color);line-height:1;cursor:pointer;height:2.75rem;-moz-appearance:none;appearance:none;-webkit-appearance:none;-webkit-border-radius:0;border-radius:0}.eps-sort-select__button{padding:.75rem;background:var(--eps-sort-select-button-background-color);border-left:var(--eps-sort-select-button-border);line-height:1;color:#a4afb7}.e-kit-library__tags-filter{--e-kit-library-tags-filter-list-search-background-color:#fff}.eps-theme-dark .e-kit-library__tags-filter{--e-kit-library-tags-filter-list-search-background-color:#404349}.e-kit-library__tags-filter{margin-top:2.75rem}.e-kit-library__tags-filter-list{margin-bottom:2.75rem}.e-kit-library__tags-filter-list .eps-collapse__title{padding-right:1.875rem;padding-left:1.875rem;text-transform:uppercase}.e-kit-library__tags-filter-list .eps-collapse__content{margin:.3125rem 1.875rem}.e-kit-library__tags-filter-list-container{max-height:250px;overflow:auto}.e-kit-library__tags-filter-list-search{margin-bottom:.625rem}.e-kit-library__tags-filter-list-search .eps-search-input{background:var(--e-kit-library-tags-filter-list-search-background-color)}.e-kit-library__tags-filter-list-item{padding:.625rem 0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-weight:500}.e-kit-library__tags-filter-list-item input{margin-right:.3125rem}.e-kit-library #eps-app-header-btn-refetch{padding:0}.e-kit-library-header-info-modal-container{margin-bottom:2.75rem}.e-kit-library__index-layout-container{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;overflow-y:auto;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.e-kit-library__index-layout-top-area{padding:1.875rem 2.75rem;position:-webkit-sticky;position:sticky;top:-1px;width:100%;z-index:2;background-color:var(--app-background-color);gap:1.5rem}.e-kit-library__index-layout-top-area-search,.e-kit-library__index-layout-top-area-sort{min-width:265px}.e-kit-library__index-layout-top-area-search{-webkit-box-flex:1;-ms-flex:1;flex:1}.e-kit-library__index-layout-main{padding-top:0;padding-bottom:1.5rem;overflow-y:hidden;height:auto;-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.e-kit-library__tags-filter{--e-kit-library-item-sidebar-header-title-color:#6d7882;--e-kit-library-item-sidebar-description-color:#6d7882;--e-kit-library-item-information-text-color:#6d7882}.eps-theme-dark .e-kit-library__tags-filter{--e-kit-library-item-sidebar-header-title-color:#b4b5b7;--e-kit-library-item-sidebar-description-color:#b4b5b7;--e-kit-library-item-information-text-color:#b4b5b7}.e-kit-library__item-sidebar{padding:1.5rem 1.875rem}.e-kit-library__item-sidebar-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.e-kit-library__item-sidebar-header-title{color:var(--e-kit-library-item-sidebar-header-title-color);margin-bottom:0}.e-kit-library__item-sidebar-thumbnail{margin-top:1.5rem;-webkit-box-shadow:0 4px 10px var(--color-box-shadow-color);box-shadow:0 4px 10px var(--color-box-shadow-color)}.e-kit-library__item-sidebar-description{margin-top:1.5rem;color:var(--e-kit-library-item-sidebar-description-color)}.e-kit-library__item-sidebar-collapse-tags{margin-top:2.75rem}.e-kit-library__item-sidebar-collapse-info{margin-top:1.875rem}.e-kit-library__item-sidebar-tags-container{gap:.625rem}.e-kit-library__item-information-text{font-size:.8125rem;color:var(--e-kit-library-item-information-text-color);margin-bottom:.3125rem}.e-kit-library{--e-kit-library-content-overview-group-title-color:#6d7882}.eps-theme-dark .e-kit-library{--e-kit-library-content-overview-group-title-color:#b4b5b7}.e-kit-library__content-overview-group-item{margin-bottom:2.75rem}.e-kit-library__content-overview-group-title{margin-bottom:1.875rem;color:var(--e-kit-library-content-overview-group-title-color)}.e-kit-library__preview-responsive-controls{width:auto}.e-kit-library__preview-responsive-controls-item{margin:0 .3125rem;color:#a4afb7;padding:.3125rem}.e-kit-library__preview-responsive-controls-item:hover{background:rgba(88,208,245,.1);-webkit-border-radius:3px;border-radius:3px;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.e-kit-library__preview-responsive-controls-item--active{color:#58d0f5}.e-kit-library__preview-loader{position:absolute;top:0;left:0;z-index:0}.e-kit-library__preview-iframe{border:none;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;-webkit-box-shadow:0 4px 10px var(--color-box-shadow-color);box-shadow:0 4px 10px var(--color-box-shadow-color)}.e-kit-library__preview-iframe-container{overflow-y:auto;position:relative;z-index:1}.e-app-collapse{--e-app-collapse-icon-color:#6d7882}.e-app-collapse-toggle{position:relative}.e-app-collapse-toggle--active{cursor:pointer}.e-app-collapse-toggle__icon{color:var(--e-app-collapse-icon-color);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;font-size:.875rem;position:absolute;top:50%;right:var(--e-app-collapse-toggle-icon-spacing);-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}.e-app-collapse-toggle__icon:before{-webkit-transition:all .2s linear;-o-transition:all .2s linear;transition:all .2s linear}.e-app-collapse-content{display:none}.e-app-collapse--opened .e-app-collapse-toggle__icon:before{-webkit-transform:rotate(-180deg);-ms-transform:rotate(-180deg);transform:rotate(-180deg)}.e-app-collapse--opened .e-app-collapse-content{display:block}[dir=rtl] .e-app-collapse-toggle__icon{right:auto;left:var(--e-app-collapse-toggle-icon-spacing)}.eps-theme-dark .e-app-collapse{--e-app-collapse-icon-color:#b4b5b7}assets/css/widget-alert.min.css000064400000001725151327220410012524 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-alert{padding:15px;border-left:5px solid transparent;position:relative;text-align:left}.elementor-alert .elementor-alert-title{display:block;font-weight:700}.elementor-alert .elementor-alert-description{font-size:13px}.elementor-alert button.elementor-alert-dismiss{position:absolute;right:10px;top:10px;padding:3px;font-size:20px;line-height:1;background:transparent;color:inherit;border:none;cursor:pointer}.elementor-alert.elementor-alert-info{color:#31708f;background-color:#d9edf7;border-color:#bcdff1}.elementor-alert.elementor-alert-success{color:#3c763d;background-color:#dff0d8;border-color:#cae6be}.elementor-alert.elementor-alert-warning{color:#8a6d3b;background-color:#fcf8e3;border-color:#f9f0c3}.elementor-alert.elementor-alert-danger{color:#a94442;background-color:#f2dede;border-color:#e8c4c4}@media (max-width:767px){.elementor-alert{padding:10px}.elementor-alert button.elementor-alert-dismiss{right:7px;top:7px}}assets/css/widget-tabs-rtl.min.css000064400000010520151327220410013136 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-wrapper{width:25%;-ms-flex-negative:0;flex-shrink:0}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active{border-left-style:none}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:after,.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:before{height:999em;width:0;left:0;border-left-style:solid}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:before{top:0;-webkit-transform:translateY(-100%);-ms-transform:translateY(-100%);transform:translateY(-100%)}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:after{top:100%}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title{display:table-cell}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active{border-bottom-style:none}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:after,.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:before{bottom:0;height:0;width:999em;border-bottom-style:solid}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:before{right:100%}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:after{left:100%}.elementor-widget-tabs .elementor-tab-content,.elementor-widget-tabs .elementor-tab-title,.elementor-widget-tabs .elementor-tab-title:after,.elementor-widget-tabs .elementor-tab-title:before,.elementor-widget-tabs .elementor-tabs-content-wrapper{border:1px #d4d4d4}.elementor-widget-tabs .elementor-tabs{text-align:right}.elementor-widget-tabs .elementor-tabs-wrapper{overflow:hidden}.elementor-widget-tabs .elementor-tab-title{cursor:pointer;outline:var(--focus-outline,none)}.elementor-widget-tabs .elementor-tab-desktop-title{position:relative;padding:20px 25px;font-weight:700;line-height:1;border:solid transparent}.elementor-widget-tabs .elementor-tab-desktop-title.elementor-active{border-color:#d4d4d4}.elementor-widget-tabs .elementor-tab-desktop-title.elementor-active:after,.elementor-widget-tabs .elementor-tab-desktop-title.elementor-active:before{display:block;content:"";position:absolute}.elementor-widget-tabs .elementor-tab-mobile-title{padding:10px;cursor:pointer}.elementor-widget-tabs .elementor-tab-content{padding:20px;display:none}@media (max-width:767px){.elementor-tabs .elementor-tab-content,.elementor-tabs .elementor-tab-title{border-style:solid solid none}.elementor-tabs .elementor-tabs-wrapper{display:none}.elementor-tabs .elementor-tabs-content-wrapper{border-bottom-style:solid}.elementor-tabs .elementor-tab-content{padding:10px}}@media (min-width:768px){.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-wrapper{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-content-wrapper{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;border-style:solid none solid solid}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-content{border-style:none solid solid}.elementor-widget-tabs.elementor-tabs-alignment-center .elementor-tabs-wrapper,.elementor-widget-tabs.elementor-tabs-alignment-end .elementor-tabs-wrapper,.elementor-widget-tabs.elementor-tabs-alignment-stretch .elementor-tabs-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget-tabs.elementor-tabs-alignment-center .elementor-tabs-wrapper{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-widget-tabs.elementor-tabs-alignment-end .elementor-tabs-wrapper{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-widget-tabs.elementor-tabs-alignment-stretch.elementor-tabs-view-horizontal .elementor-tab-title{width:100%}.elementor-widget-tabs.elementor-tabs-alignment-stretch.elementor-tabs-view-vertical .elementor-tab-title{height:100%}.elementor-tabs .elementor-tab-mobile-title{display:none}}assets/css/editor-preview-legacy-rtl.css000064400000001234151327220410014353 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-edit-area-active .elementor-top-section > .elementor-container > .elementor-row {
  min-height: 40px; }

.elementor-edit-area-active .elementor-inner-section > .elementor-container > .elementor-row {
  min-height: 40px; }

.elementor-edit-area-active .elementor-column-wrap.elementor-element-empty .elementor-widget-wrap {
  min-height: 30px; }
  @media (min-width: 768px) {
    .elementor-edit-area-active .elementor-column-wrap.elementor-element-empty .elementor-widget-wrap {
      margin: 10px; } }

.elementor-edit-area-active .handle {
  display: none; }
/*# sourceMappingURL=editor-preview-legacy-rtl.css.map */assets/css/editor.css000064400000576022151327220410010647 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
@charset "UTF-8";
.elementor-control-unit-1 {
  width: 27px; }

.elementor-control-unit-2 {
  width: 54px; }

.elementor-control-unit-3 {
  width: 81px; }

.elementor-control-unit-4 {
  width: 108px; }

.elementor-control-unit-5 {
  max-width: 400px;
  width: 52%; }

*, :before, :after {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

body,
html {
  height: 100%; }

html {
  background-color: #F1F1F1; }

iframe,
img {
  border: 0 none; }

li {
  list-style: none; }

a {
  text-decoration: none; }

body {
  color: #6d7882;
  font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
  font-size: 13px;
  font-weight: normal;
  line-height: 1;
  text-decoration: none;
  text-transform: none;
  overflow: hidden; }
  body:after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    width: 0;
    background-color: #71d7f7;
    -webkit-transition: width .5s;
    -o-transition: width .5s;
    transition: width .5s; }
  body a {
    color: #71d7f7; }
    body a:hover {
      color: #93003c; }
  body.elementor-editor-active #elementor-mode-switcher-preview .eicon:before {
    content: ""; }
  body.elementor-editor-preview {
    --e-preview-width: 100%; }
    body.elementor-editor-preview #elementor-mode-switcher-preview .eicon:before {
      content: ""; }
  body.elementor-navigator--dock-hint:after {
    width: 30px; }

#elementor-editor-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 100vh; }

#elementor-panel:not(.ui-resizable-resizing),
#elementor-preview:not(.ui-resizable-resizing) {
  -webkit-transition: margin .5s ease-in-out, width .5s ease-in-out;
  -o-transition: margin .5s ease-in-out, width .5s ease-in-out;
  transition: margin .5s ease-in-out, width .5s ease-in-out; }

#elementor-loading {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background: #f1f3f5;
  z-index: 9999; }

#elementor-preview-loading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff; }
  #elementor-preview-loading i {
    color: #d5dadf;
    font-size: 50px; }

#elementor-fatal-error-dialog button.dialog-ok {
  color: #71d7f7; }

#elementor-fatal-error-dialog .dialog-header {
  color: #6d7882; }

#elementor-flexbox-attention-dialog .dialog-cancel {
  color: #39b54a; }

#elementor-flexbox-attention-dialog .dialog-ok {
  color: #6d7882; }

.elementor-nerd-box {
  padding: 30px;
  text-align: center; }
  .elementor-nerd-box-icon {
    width: 100px;
    margin-right: 10px; }
  .elementor-nerd-box-title {
    margin-top: 20px;
    font-size: 16px;
    font-weight: bold;
    line-height: 1.4; }
  .elementor-nerd-box-message {
    margin-top: 5px;
    line-height: 1.8;
    font-size: 11px; }
  .elementor-nerd-box .elementor-button.elementor-nerd-box-link {
    background-color: #93003c;
    color: #ffffff;
    padding: 7px 25px;
    margin-top: 20px;
    -webkit-box-shadow: 0 0 1px rgba(0, 0, 0, 0.1), 0 2px 2px rgba(0, 0, 0, 0.1);
            box-shadow: 0 0 1px rgba(0, 0, 0, 0.1), 0 2px 2px rgba(0, 0, 0, 0.1);
    -webkit-transition: .5s;
    -o-transition: .5s;
    transition: .5s; }
    .elementor-nerd-box .elementor-button.elementor-nerd-box-link:hover {
      background-color: #c60051; }

.eicon-nerd:hover:before {
  content: '\e8b7'; }

.eicon-nerd:active:before {
  content: '\e8b6'; }

.e-group-control-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: bold;
  font-size: 12px;
  padding: 10px;
  -webkit-box-shadow: 0px 2px 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0px 2px 8px rgba(0, 0, 0, 0.1);
  margin-bottom: 15px; }

.e-control-tools {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.e-control-tool {
  width: 20px;
  height: 20px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  margin: 0 3px 0;
  border: 0;
  position: relative;
  background-color: #fff; }
  .e-control-tool:not(.e-control-tool-disabled) {
    -webkit-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.1);
            box-shadow: 0 1px 5px rgba(0, 0, 0, 0.1);
    cursor: pointer; }
  .e-control-tool-disabled {
    background: #e6e9ec;
    pointer-events: none; }
    .e-control-tool-disabled i {
      color: #fff; }
  .e-control-tool i {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
        -ms-transform: translateX(-50%) translateY(-50%);
            transform: translateX(-50%) translateY(-50%);
    color: #6d7882;
    font-size: 13px; }

#e-enable-unfiltered-files-dialog .dialog-confirm-ok {
  color: #39b54a; }

i.eicon-tilted {
  -webkit-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
          transform: rotate(90deg); }

.elementor-loader-wrapper {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 300px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.elementor-loader {
  -webkit-border-radius: 50%;
          border-radius: 50%;
  padding: 40px;
  height: 150px;
  width: 150px;
  background-color: rgba(255, 255, 255, 0.9);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-box-shadow: 2px 2px 20px 4px rgba(0, 0, 0, 0.02);
          box-shadow: 2px 2px 20px 4px rgba(0, 0, 0, 0.02); }

.elementor-loader-boxes {
  height: 100%;
  width: 100%;
  position: relative; }

.elementor-loader-box {
  position: absolute;
  background-color: #d5dadf;
  -webkit-animation: load 1.8s linear infinite;
          animation: load 1.8s linear infinite; }
  .elementor-loader-box:nth-of-type(1) {
    width: 20%;
    height: 100%;
    left: 0;
    top: 0; }
  .elementor-loader-box:not(:nth-of-type(1)) {
    right: 0;
    height: 20%;
    width: 60%; }
  .elementor-loader-box:nth-of-type(2) {
    top: 0;
    -webkit-animation-delay: -0.45s;
            animation-delay: -0.45s; }
  .elementor-loader-box:nth-of-type(3) {
    top: 40%;
    -webkit-animation-delay: -0.9s;
            animation-delay: -0.9s; }
  .elementor-loader-box:nth-of-type(4) {
    bottom: 0;
    -webkit-animation-delay: -1.35s;
            animation-delay: -1.35s; }

.elementor-loading-title {
  color: #a4afb7;
  text-align: center;
  text-transform: uppercase;
  margin-top: 30px;
  letter-spacing: 7px;
  text-indent: 7px;
  font-size: 10px;
  width: 100%; }

.elementor-button {
  font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
  font-weight: 500;
  text-transform: uppercase;
  outline: none;
  border: none;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  -webkit-transition-property: background, color, opacity, -webkit-box-shadow;
  transition-property: background, color, opacity, -webkit-box-shadow;
  -o-transition-property: background, color, box-shadow, opacity;
  transition-property: background, color, box-shadow, opacity;
  transition-property: background, color, box-shadow, opacity, -webkit-box-shadow;
  -webkit-transition-duration: .3s;
       -o-transition-duration: .3s;
          transition-duration: .3s; }
  .elementor-button:hover {
    border: none; }
  .elementor-button:not([disabled]) {
    cursor: pointer; }
  .elementor-button:not(.elementor-button-state) .elementor-state-icon {
    display: none; }
  .elementor-button.elementor-button-success {
    color: #fff; }
    .elementor-button.elementor-button-success[disabled] {
      background-color: #c2cbd2; }
    .elementor-button.elementor-button-success:not([disabled]) {
      background-color: #39b54a; }
      .elementor-button.elementor-button-success:not([disabled]):hover {
        opacity: 0.85;
        -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
                box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); }
      .elementor-button.elementor-button-success:not([disabled]):active {
        -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
                box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); }
  .elementor-button.elementor-button-warning {
    background-color: #a4afb7;
    color: #fff; }
    .elementor-button.elementor-button-warning[disabled] {
      background-color: #c2cbd2; }
    .elementor-button.elementor-button-warning:not([disabled]):hover {
      background-color: #b01b1b;
      opacity: 0.85;
      -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
              box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); }
    .elementor-button.elementor-button-warning:not([disabled]):active {
      -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
              box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); }
  .elementor-button.elementor-button-danger {
    background-color: #d72b3f;
    color: #fff; }
    .elementor-button.elementor-button-danger[disabled] {
      background-color: #c2cbd2; }
    .elementor-button.elementor-button-danger:not([disabled]):hover {
      opacity: 0.85;
      -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
              box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); }
    .elementor-button.elementor-button-danger:not([disabled]):active {
      -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
              box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); }
  .elementor-button.elementor-edit-template {
    display: inline-block;
    margin-top: 15px;
    color: #fff; }
  .elementor-button.elementor-button-default {
    background-color: #a4afb7;
    color: #fff;
    font-size: 11px;
    padding: 7px 21px; }
    .elementor-button.elementor-button-default:hover {
      background-color: #6d7882;
      -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
              box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); }
    .elementor-button.elementor-button-default:active {
      -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
              box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); }
    .elementor-button.elementor-button-default:visited {
      color: #fff; }
  .elementor-button.elementor-button-go-pro {
    background-color: #93003c; }
  .elementor-button i {
    margin-right: 10px; }

input, select, textarea, .elementor-input-style {
  -webkit-border-radius: 3px;
          border-radius: 3px;
  font-size: 12px;
  width: 100%;
  background: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  color: #6d7882;
  border: 1px solid;
  outline: none; }
  input:not(:focus), select:not(:focus), textarea:not(:focus), .elementor-input-style:not(:focus) {
    border-color: #d5dadf; }
  input:focus, input:focus + .elementor-control-dynamic-switcher, select:focus, select:focus + .elementor-control-dynamic-switcher, textarea:focus, textarea:focus + .elementor-control-dynamic-switcher, .elementor-input-style:focus, .elementor-input-style:focus + .elementor-control-dynamic-switcher {
    border-color: #a4afb7; }
  input::-webkit-input-placeholder, select::-webkit-input-placeholder, textarea::-webkit-input-placeholder, .elementor-input-style::-webkit-input-placeholder {
    color: #a4afb7; }
  input::-moz-placeholder, select::-moz-placeholder, textarea::-moz-placeholder, .elementor-input-style::-moz-placeholder {
    color: #a4afb7; }
  input::-ms-input-placeholder, select::-ms-input-placeholder, textarea::-ms-input-placeholder, .elementor-input-style::-ms-input-placeholder {
    color: #a4afb7; }
  input::placeholder, select::placeholder, textarea::placeholder, .elementor-input-style::placeholder {
    color: #a4afb7; }

.elementor-error input, .elementor-error select, .elementor-error textarea {
  border-color: #b01b1b; }

input {
  min-width: 0; }

input, textarea, .elementor-input-style {
  padding: 5px; }

textarea, .elementor-input-style {
  resize: vertical; }

input[type="checkbox"],
input[type="radio"] {
  height: auto;
  width: auto; }

input[disabled] {
  background-color: #e6e9ec;
  cursor: not-allowed;
  opacity: 1; }

select {
  outline: none;
  height: 27px; }

/*
 * Container style
 */
.ps {
  overflow: hidden !important;
  overflow-anchor: none;
  -ms-touch-action: auto;
      touch-action: auto; }

/*
 * Scrollbar rail styles
 */
.ps__rail-y {
  display: none;
  opacity: 0;
  -webkit-transition: background-color .2s linear, opacity .2s linear;
  -o-transition: background-color .2s linear, opacity .2s linear;
  transition: background-color .2s linear, opacity .2s linear;
  width: 15px;
  /* there must be 'right' or 'left' for ps__rail-y */
  right: 0;
  left: initial !important;
  /* please don't change 'position' */
  position: absolute; }

.ps--active-y > .ps__rail-y {
  display: block;
  background-color: transparent; }

.ps:hover > .ps__rail-y,
.ps--focus > .ps__rail-y,
.ps--scrolling-y > .ps__rail-y {
  opacity: 0.6; }

.ps .ps__rail-y:hover,
.ps .ps__rail-y:focus,
.ps .ps__rail-y.ps--clicking {
  opacity: 0.9; }

.ps__thumb-y {
  background-color: #aaa;
  -webkit-border-radius: 6px;
          border-radius: 6px;
  -webkit-transition: background-color .2s linear, width .2s ease-in-out;
  -o-transition: background-color .2s linear, width .2s ease-in-out;
  transition: background-color .2s linear, width .2s ease-in-out;
  width: 6px;
  /* there must be 'right' for ps__thumb-y */
  right: 2px;
  /* please don't change 'position' */
  position: absolute; }

.ps__rail-y:hover > .ps__thumb-y,
.ps__rail-y:focus > .ps__thumb-y,
.ps__rail-y.ps--clicking .ps__thumb-y {
  background-color: #999;
  width: 6px; }

/* Make clicks pass-through */
#nprogress {
  pointer-events: none; }

#nprogress .bar {
  background: #39b54a;
  position: fixed;
  z-index: 1031;
  top: 0;
  left: 0;
  width: 100%;
  height: 2px; }

/* Fancy blur effect */
#nprogress .peg {
  display: block;
  position: absolute;
  right: 0;
  width: 100px;
  height: 100%;
  -webkit-box-shadow: 0 0 10px #39b54a, 0 0 5px #39b54a;
          box-shadow: 0 0 10px #39b54a, 0 0 5px #39b54a;
  opacity: 1.0;
  -webkit-transform: rotate(3deg) translate(0px, -4px);
      -ms-transform: rotate(3deg) translate(0px, -4px);
          transform: rotate(3deg) translate(0px, -4px); }

/* Remove these to get rid of the spinner */
#nprogress .spinner {
  display: none;
  position: fixed;
  z-index: 1031;
  top: 15px;
  right: 15px; }

#nprogress .spinner-icon {
  width: 18px;
  height: 18px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: solid 2px transparent;
  border-top-color: #39b54a;
  border-left-color: #39b54a;
  -webkit-border-radius: 50%;
          border-radius: 50%;
  -webkit-animation: nprogress-spinner 400ms linear infinite;
          animation: nprogress-spinner 400ms linear infinite; }

.nprogress-custom-parent {
  overflow: hidden;
  position: relative; }

.nprogress-custom-parent #nprogress .spinner,
.nprogress-custom-parent #nprogress .bar {
  position: absolute; }

@-webkit-keyframes nprogress-spinner {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

@keyframes nprogress-spinner {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

#nprogress .bar,
#nprogress .spinner {
  z-index: 100000; }

:root {
  --e-is-preview-mode: 0; }
  @media (max-width: 1439px) {
    :root {
      --e-editor-panel-width: 280px; } }
  @media (min-width: 1440px) {
    :root {
      --e-editor-panel-width: 300px; } }

.elementor-panel {
  position: relative;
  height: 100%;
  -webkit-margin-start: calc(-1 * var(--e-editor-panel-width) * var(--e-is-preview-mode));
          margin-inline-start: calc(-1 * var(--e-editor-panel-width) * var(--e-is-preview-mode));
  width: var(--e-editor-panel-width);
  overflow: visible;
  background-color: #e6e9ec;
  z-index: 1;
  font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
  font-size: 13px;
  left: 0; }
  .elementor-editor-preview .elementor-panel {
    --e-is-preview-mode: 1; }
    .elementor-editor-preview .elementor-panel > .ui-resizable-e, .elementor-editor-preview .elementor-panel > .ui-resizable-w {
      display: none; }
  .elementor-panel .ps__rail-y {
    z-index: 2; }
  .elementor-panel .elementor-responsive-panel {
    padding: 5px 10px;
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(auto-fill, minmax(Min(135px, calc( 50% - 5px)), 1fr)); }
    .elementor-panel .elementor-responsive-panel > .e-responsive-panel-stretch {
      grid-column: 1 / -1; }
  .elementor-panel ::-moz-selection {
    background: #5bc0de;
    color: #ffffff; }
  .elementor-panel ::selection {
    background: #5bc0de;
    color: #ffffff; }
  .elementor-panel a {
    color: #93003c; }
  .elementor-panel h1,
  .elementor-panel h2,
  .elementor-panel h3,
  .elementor-panel h4,
  .elementor-panel h5,
  .elementor-panel h6 {
    font-size: 100%;
    font-weight: normal; }
  .elementor-panel abbr,
  .elementor-panel acronym {
    border: 0;
    font-variant: normal; }
  .elementor-panel sup {
    vertical-align: text-top; }
  .elementor-panel sub {
    vertical-align: text-bottom; }
  .elementor-panel img {
    max-width: 100%;
    height: auto;
    border: 0; }
  .elementor-panel ::-moz-focus-inner {
    padding: 0;
    border: 0; }
  .elementor-panel :focus {
    outline: 0; }
  .elementor-panel .elementor-panel-box {
    margin-top: 10px;
    background-color: #fff; }
  .elementor-panel .elementor-panel-box-content {
    padding: 20px 20px 10px; }
  .elementor-panel .elementor-button {
    display: inline-block; }
  .elementor-panel .elementor-panel-alert {
    background-color: #fcfcfc;
    padding: 15px;
    border-left: 3px solid transparent;
    position: relative;
    font-size: 12px;
    font-weight: 300;
    font-style: italic;
    line-height: 1.5;
    text-align: left;
    -webkit-border-radius: 0 3px 3px 0;
            border-radius: 0 3px 3px 0;
    -webkit-box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.07);
            box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.07); }
    .elementor-panel .elementor-panel-alert a {
      color: inherit; }
    .elementor-panel .elementor-panel-alert.elementor-panel-alert-info {
      border-color: #71d7f7;
      background-color: #f3fcff; }
    .elementor-panel .elementor-panel-alert.elementor-panel-alert-success {
      border-color: #39b54a; }
    .elementor-panel .elementor-panel-alert.elementor-panel-alert-warning {
      border-color: #fcb92c; }
    .elementor-panel .elementor-panel-alert.elementor-panel-alert-danger {
      border-color: #d72b3f; }
  .elementor-panel .elementor-label {
    display: inline;
    padding: .2em .6em .3em;
    font-size: 75%;
    font-weight: 700;
    line-height: 1;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    -webkit-border-radius: .25em;
            border-radius: .25em;
    text-transform: capitalize; }
    .elementor-panel .elementor-label.elementor-label-default {
      background-color: #a4afb7; }
    .elementor-panel .elementor-label.elementor-label-info {
      background-color: #5bc0de; }
    .elementor-panel .elementor-label.elementor-label-success {
      background-color: #5cb85c; }
    .elementor-panel .elementor-label.elementor-label-warning {
      background-color: #f0ad4e; }
    .elementor-panel .elementor-label.elementor-label-danger {
      background-color: #d9534f; }
  .elementor-panel .elementor-descriptor, .elementor-panel .elementor-control-field-description {
    font-size: 11px;
    font-style: italic;
    line-height: 1.4;
    color: #a4afb7; }
  .elementor-panel .elementor-controls-popover {
    display: none;
    position: absolute;
    -webkit-box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3);
            box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3);
    -webkit-border-radius: 3px;
            border-radius: 3px;
    left: 0;
    right: 0;
    margin: -4px auto 5px;
    padding-top: 15px;
    width: 90%;
    z-index: 10000;
    background-color: #fff; }
    .elementor-panel .elementor-controls-popover:before {
      content: '';
      position: absolute;
      top: -16px;
      right: 22px;
      border: 8px solid transparent;
      border-bottom-color: #fff; }
    .elementor-panel .elementor-controls-popover div.elementor-control {
      background-color: transparent; }
      .elementor-panel .elementor-controls-popover div.elementor-control:before {
        content: none; }
  .elementor-panel #elementor-controls .pojo-widget-button-collapse {
    display: none; }
  .elementor-panel #elementor-panel-global .elementor-nerd-box .elementor-nerd-box-icon {
    margin-top: 20px; }
  .elementor-panel #elementor-panel-header {
    display: table;
    height: 40px;
    width: 100%;
    background-color: #93003c;
    color: #fff; }
    .elementor-panel #elementor-panel-header > * {
      display: table-cell;
      vertical-align: middle;
      text-align: center; }
  .elementor-panel .elementor-header-button {
    width: 40px; }
    .elementor-panel .elementor-header-button .elementor-icon {
      cursor: pointer;
      display: block;
      font-size: 19px;
      height: 40px;
      line-height: 40px;
      -webkit-transition: all 0.3s;
      -o-transition: all 0.3s;
      transition: all 0.3s; }
      .elementor-panel .elementor-header-button .elementor-icon.eicon-menu-bar {
        font-size: 18px; }
      .elementor-panel .elementor-header-button .elementor-icon:hover {
        color: #d5dadf; }
  .elementor-panel #elementor-panel-header-title {
    font-size: 15px; }
    .elementor-panel #elementor-panel-header-title img {
      width: 90px; }
  .elementor-panel #elementor-panel-elements-categories {
    padding-bottom: 10px; }
  .elementor-panel .elementor-panel-category {
    position: relative; }
    .elementor-panel .elementor-panel-category:first-child .elementor-panel-category-title {
      padding-top: 14px; }
    .elementor-panel .elementor-panel-category.elementor-active .elementor-panel-category-title:before {
      -webkit-transform: rotate(90deg);
          -ms-transform: rotate(90deg);
              transform: rotate(90deg); }
    .elementor-panel .elementor-panel-category:not(.elementor-active):after {
      content: '';
      position: absolute;
      left: 15px;
      right: 15px;
      bottom: 0;
      height: 8px;
      background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.03)), to(transparent));
      background: -webkit-linear-gradient(rgba(0, 0, 0, 0.03), transparent);
      background: -o-linear-gradient(rgba(0, 0, 0, 0.03), transparent);
      background: linear-gradient(rgba(0, 0, 0, 0.03), transparent);
      -webkit-transform: translateY(100%);
          -ms-transform: translateY(100%);
              transform: translateY(100%); }
    .elementor-panel .elementor-panel-category-title {
      margin: 0 15px;
      padding: 20px 0;
      position: relative;
      text-transform: uppercase;
      font-size: 11px;
      cursor: pointer; }
      .elementor-panel .elementor-panel-category-title:before {
        content: "";
        font-family: eicons;
        position: absolute;
        right: 0;
        -webkit-transition: -webkit-transform .3s;
        transition: -webkit-transform .3s;
        -o-transition: transform .3s;
        transition: transform .3s;
        transition: transform .3s, -webkit-transform .3s; }
    .elementor-panel .elementor-panel-category-items {
      padding: 0 10px; }
  .elementor-panel .elementor-panel-scheme-title {
    padding: 10px 20px;
    margin-top: 10px; }
  .elementor-panel .elementor-panel-scheme-description {
    padding: 20px 20px 0; }
  .elementor-panel .elementor-panel-scheme-buttons {
    padding: 0 20px;
    display: table;
    table-layout: fixed;
    width: 100%;
    height: 40px;
    background-color: #fff;
    -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
            box-shadow: 0 0 8px rgba(0, 0, 0, 0.1); }
    .elementor-panel .elementor-panel-scheme-buttons .elementor-button {
      font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
      font-size: 11px;
      font-weight: 400; }
  .elementor-panel .elementor-panel-scheme-button-wrapper {
    display: table-cell;
    vertical-align: middle;
    text-align: center; }
    .elementor-panel .elementor-panel-scheme-button-wrapper:first-child {
      text-align: left; }
    .elementor-panel .elementor-panel-scheme-button-wrapper:last-child {
      text-align: right; }
  .elementor-panel .elementor-panel-scheme-save .elementor-button {
    padding: 6px 18px; }
  .elementor-panel .elementor-panel-scheme-reset .elementor-button, .elementor-panel .elementor-panel-scheme-discard .elementor-button {
    color: #a4afb7;
    background: none; }
  .elementor-panel .elementor-panel-scheme-color .elementor-panel-scheme-items {
    position: relative;
    display: grid;
    grid-template-columns: repeat(4, 27px);
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
  .elementor-panel .elementor-panel-scheme-color-title {
    text-align: center;
    text-transform: uppercase;
    margin: 10px 0;
    color: #c2cbd2;
    font-size: 8px; }
  .elementor-panel .elementor-panel-scheme-typography-item {
    display: table;
    table-layout: fixed;
    width: 100%;
    margin-bottom: 15px; }
    .elementor-panel .elementor-panel-scheme-typography-item > * {
      display: table-cell;
      vertical-align: middle; }
  .elementor-panel .elementor-panel-scheme-typography-item-value select, .elementor-panel .elementor-panel-scheme-typography-item-value input {
    width: 100%; }
  .elementor-panel .elementor-panel-scheme-item:not(.elementor-open) .elementor-panel-scheme-typography-items {
    display: none; }
  .elementor-panel .elementor-panel-scheme-color-system-scheme {
    margin-bottom: 10px; }
    .elementor-panel .elementor-panel-scheme-color-system-scheme .elementor-title {
      font-size: 11px;
      color: #a4afb7;
      font-style: italic;
      margin-top: 5px; }
  .elementor-panel .elementor-panel-scheme-color-system-items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-transition: border .5s;
    -o-transition: border .5s;
    transition: border .5s;
    overflow: hidden;
    padding: 3px;
    -webkit-border-radius: 3px;
            border-radius: 3px;
    border: 1px solid #d5dadf;
    cursor: pointer; }
    .elementor-panel .elementor-panel-scheme-color-system-items:hover {
      border: 1px solid #a4afb7; }
  .elementor-panel .elementor-panel-scheme-color-system-item {
    height: 20px;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }
  .elementor-panel #elementor-panel-schemes-disabled a {
    color: #39b54a; }
    .elementor-panel #elementor-panel-schemes-disabled a:hover {
      text-decoration: underline; }
  .elementor-panel #elementor-panel-schemes-disabled .elementor-nerd-box-icon {
    margin-top: 20px; }
  .elementor-panel #elementor-panel-page-menu {
    padding: 25px 15px; }
  .elementor-panel .elementor-panel-menu-group-title {
    text-transform: uppercase;
    font-size: 11px; }
  .elementor-panel .elementor-panel-menu-items {
    margin: 15px 0 25px;
    -webkit-border-radius: 5px;
            border-radius: 5px;
    overflow: hidden; }
  .elementor-panel .elementor-panel-menu-item {
    display: table;
    width: 100%;
    height: 40px;
    cursor: pointer;
    margin-bottom: 1px;
    background-color: #fff; }
    .elementor-panel .elementor-panel-menu-item:hover {
      background-color: rgba(255, 255, 255, 0.8); }
    .elementor-panel .elementor-panel-menu-item > * {
      display: table-cell;
      vertical-align: middle; }
    .elementor-panel .elementor-panel-menu-item-icon {
      text-align: center;
      width: 50px;
      color: #a4afb7;
      font-size: 19px; }
      .elementor-panel .elementor-panel-menu-item-icon .eicon-editor-external-link {
        font-size: 18px; }
    .elementor-panel .elementor-panel-menu-item-title {
      font-weight: 500; }
      .elementor-panel .elementor-panel-menu-item-title > span {
        color: #39b54a; }
    .elementor-panel .elementor-panel-menu-item a {
      color: #6d7882; }
    .elementor-panel .elementor-panel-menu-item-exit-to-dashboard {
      background-color: #0085ba;
      color: #fff;
      text-transform: uppercase;
      font-size: 12px; }
      .elementor-panel .elementor-panel-menu-item-exit-to-dashboard:hover {
        background-color: #0073a1; }
      .elementor-panel .elementor-panel-menu-item-exit-to-dashboard .elementor-panel-menu-item-title,
      .elementor-panel .elementor-panel-menu-item-exit-to-dashboard .elementor-panel-menu-item-icon {
        color: #fff; }
    .elementor-panel .elementor-panel-menu-item-settings-additional-settings {
      background-color: #f1f3f5; }
  .elementor-panel .elementor-control.elementor-control-clear_page {
    background-color: transparent; }
    .elementor-panel .elementor-control.elementor-control-clear_page .elementor-control-raw-html {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between; }
  .elementor-panel .elementor-panel-navigation {
    background-color: #ffffff;
    -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
            box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
    display: table;
    table-layout: fixed;
    width: 100%; }
    .elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab {
      display: table-cell; }
      .elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab.elementor-active {
        background-image: -webkit-gradient(linear, left top, left bottom, from(#f1f3f5), to(#fff));
        background-image: -webkit-linear-gradient(top, #f1f3f5, #fff);
        background-image: -o-linear-gradient(top, #f1f3f5, #fff);
        background-image: linear-gradient(to bottom, #f1f3f5, #fff);
        border-bottom: 3px solid #93003c; }
      .elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab a {
        display: block;
        text-align: center;
        padding: 12px 0 8px;
        font-size: 10px;
        color: #6d7882; }
        .elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab a:before {
          font-family: eicons;
          font-size: 16px;
          display: block;
          margin-bottom: 6px; }
  .elementor-panel .elementor-tab-control-content a:before {
    content: '\e92c'; }
  .elementor-panel .elementor-tab-control-style a:before {
    content: '\e921'; }
  .elementor-panel .elementor-tab-control-advanced a:before, .elementor-panel .elementor-tab-control-settings a:before, .elementor-panel .elementor-tab-control-general_style a:before {
    content: '\e916'; }
  .elementor-panel .elementor-tab-control-responsive a:before {
    content: '\e885'; }
  .elementor-panel .elementor-tab-control-layout a:before, .elementor-panel .elementor-tab-control-column a:before {
    content: '\e899'; }
  .elementor-panel .elementor-tab-control-lightbox a:before {
    content: '\e922'; }
  .elementor-panel #elementor-panel__editor__help {
    padding: 50px 25px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .elementor-panel #elementor-panel__editor__help__link {
      display: -webkit-inline-box;
      display: -ms-inline-flexbox;
      display: inline-flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      color: #6d7882;
      font-size: 12px;
      font-weight: 500;
      -webkit-transition: all 0.3s;
      -o-transition: all 0.3s;
      transition: all 0.3s; }
      .elementor-panel #elementor-panel__editor__help__link i {
        padding: 0 5px;
        color: #a4afb7;
        font-size: 18px;
        position: relative; }
        .elementor-panel #elementor-panel__editor__help__link i:after {
          content: '';
          position: absolute;
          height: 13px;
          width: 13px;
          top: 3px;
          bottom: 0;
          left: 8px;
          right: 0;
          -webkit-border-radius: 50%;
                  border-radius: 50%;
          z-index: -1; }
      .elementor-panel #elementor-panel__editor__help__link:hover {
        color: #495157; }
        .elementor-panel #elementor-panel__editor__help__link:hover i {
          color: #71d7f7; }
          .elementor-panel #elementor-panel__editor__help__link:hover i:before {
            content: '\e941'; }
          .elementor-panel #elementor-panel__editor__help__link:hover i:after {
            background: #fff; }
  .elementor-panel #elementor-panel-footer {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 40px;
    background-color: #495157; }
  .elementor-panel #elementor-panel-footer-tools {
    display: table;
    table-layout: fixed;
    width: 100%;
    height: 100%; }
  .elementor-panel .elementor-panel-footer-tool {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    cursor: pointer;
    color: #a4afb7;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s; }
    .elementor-panel .elementor-panel-footer-tool #elementor-panel-saver-button-update {
      border-right: 1px solid #2d8739;
      -webkit-border-radius: 3px 0 0 3px;
              border-radius: 3px 0 0 3px; }
      .elementor-panel .elementor-panel-footer-tool #elementor-panel-saver-button-update i {
        margin-right: 5px; }
    .elementor-panel .elementor-panel-footer-tool #elementor-panel-saver-button-save-options {
      float: left;
      -webkit-border-radius: 0 3px 3px 0;
              border-radius: 0 3px 3px 0; }
      .elementor-panel .elementor-panel-footer-tool #elementor-panel-saver-button-save-options i {
        margin: auto; }
    .elementor-panel .elementor-panel-footer-tool.elementor-open {
      color: #fff; }
    .elementor-panel .elementor-panel-footer-tool:not(.elementor-open):hover {
      color: #d5dadf; }
    .elementor-panel .elementor-panel-footer-tool:not(.elementor-open) .elementor-panel-footer-sub-menu-wrapper {
      display: none; }
  .elementor-panel .elementor-panel-footer-sub-menu-wrapper {
    position: absolute;
    bottom: 100%;
    left: 0;
    width: 100%;
    background-color: #556068;
    padding: 10px;
    -webkit-box-shadow: -2px -5px 8px rgba(0, 0, 0, 0.1);
            box-shadow: -2px -5px 8px rgba(0, 0, 0, 0.1);
    cursor: default;
    z-index: 10000; }
  .elementor-panel .elementor-panel-footer-sub-menu {
    -webkit-border-radius: 5px;
            border-radius: 5px;
    overflow: hidden; }
  .elementor-panel .elementor-panel-footer-sub-menu-item {
    background-color: #495157;
    display: table;
    table-layout: fixed;
    width: 100%;
    cursor: pointer; }
    .elementor-panel .elementor-panel-footer-sub-menu-item.elementor-disabled .elementor-icon,
    .elementor-panel .elementor-panel-footer-sub-menu-item.elementor-disabled .elementor-title {
      color: #6d7882; }
    .elementor-panel .elementor-panel-footer-sub-menu-item:not(:last-child) {
      margin-bottom: 1px; }
    .elementor-panel .elementor-panel-footer-sub-menu-item:hover {
      background-color: rgba(0, 0, 0, 0.2); }
    .elementor-panel .elementor-panel-footer-sub-menu-item.active {
      background-color: rgba(0, 0, 0, 0.3); }
    .elementor-panel .elementor-panel-footer-sub-menu-item > * {
      display: table-cell;
      height: 40px;
      vertical-align: middle; }
    .elementor-panel .elementor-panel-footer-sub-menu-item .elementor-icon {
      width: 40px;
      color: #a4afb7; }
    .elementor-panel .elementor-panel-footer-sub-menu-item .elementor-title {
      text-align: left;
      color: #d5dadf; }
    .elementor-panel .elementor-panel-footer-sub-menu-item .elementor-description {
      width: 95px;
      text-align: left;
      font-size: 11px;
      font-style: italic;
      color: #a4afb7; }
  .elementor-panel #elementor-panel-footer-help-title {
    text-align: left;
    padding: 10px 0;
    color: #d5dadf; }
  .elementor-panel #elementor-panel-footer-responsive > i {
    display: block;
    height: 100%;
    line-height: 40px; }
  .elementor-panel #elementor-panel-footer-saver-publish {
    width: 80px; }
    .elementor-panel #elementor-panel-footer-saver-publish .elementor-button-state i {
      margin-right: 0; }
    .elementor-panel #elementor-panel-footer-saver-publish .elementor-button-state #elementor-panel-saver-button-publish-label {
      display: none; }
  .elementor-panel #elementor-panel-footer-saver-options {
    width: 35px;
    border-left: 1px solid #495157; }
    .elementor-panel #elementor-panel-footer-saver-options .elementor-last-edited-wrapper {
      font-size: 11px;
      font-style: italic;
      color: #a4afb7;
      padding: 5px 0 15px; }
      .elementor-panel #elementor-panel-footer-saver-options .elementor-last-edited-wrapper:not(.elementor-state-active) .elementor-state-icon {
        display: none; }
      .elementor-panel #elementor-panel-footer-saver-options .elementor-last-edited-wrapper time {
        border-bottom: 1px dotted transparent;
        -webkit-transition: all ease-in-out .3s;
        -o-transition: all ease-in-out .3s;
        transition: all ease-in-out .3s;
        cursor: pointer; }
        .elementor-panel #elementor-panel-footer-saver-options .elementor-last-edited-wrapper time:hover {
          border-bottom-color: inherit; }
  .elementor-panel .elementor-disabled {
    cursor: default; }
  .elementor-panel #elementor-panel-saver-button-preview a {
    color: #a4afb7; }
  .elementor-panel #elementor-panel-saver-button-publish, .elementor-panel #elementor-panel-saver-button-save-options {
    font-size: 11px;
    text-transform: uppercase;
    height: 26px; }
    .elementor-panel #elementor-panel-saver-button-publish.elementor-disabled, .elementor-panel #elementor-panel-saver-button-save-options.elementor-disabled {
      background-color: #556068;
      color: #a4afb7; }
  .elementor-panel #elementor-panel-saver-button-publish {
    width: 100%;
    -webkit-border-radius: 3px 0 0 3px;
            border-radius: 3px 0 0 3px; }
  .elementor-panel #elementor-panel-saver-button-save-options {
    width: 25px; }

#elementor-panel-elements-navigation .elementor-panel-navigation-tab {
  text-align: center;
  padding: 10px 0;
  font-size: 11px;
  text-transform: uppercase;
  cursor: pointer; }

#elementor-panel-elements {
  overflow: hidden; }

#elementor-panel-state-loading {
  display: none; }
  body.elementor-panel-loading #elementor-panel-state-loading {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    background-color: rgba(255, 255, 255, 0.5);
    z-index: 2; }
  #elementor-panel-state-loading .eicon-loading {
    font-size: 25px;
    color: #71d7f7; }

#elementor-panel-elements-search-area {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  padding: 10px;
  background-color: #e6e9ec;
  z-index: 1; }

#elementor-panel-elements-search-wrapper {
  position: relative; }

#elementor-panel-elements-search-input {
  background-color: rgba(255, 255, 255, 0.7);
  font-size: 11px;
  padding: 10px 10px 10px 29px;
  font-style: italic;
  color: #a4afb7;
  border: none;
  -webkit-transition: all 1s;
  -o-transition: all 1s;
  transition: all 1s;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none; }
  #elementor-panel-elements-search-input + i {
    position: absolute;
    left: 10px;
    top: 50%;
    color: #a4afb7;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); }
  #elementor-panel-elements-search-input:focus {
    background-color: white;
    padding-right: 15px; }

.elementor-panel .elementor-element {
  -webkit-border-radius: 3px;
          border-radius: 3px;
  background-color: #fff;
  cursor: move;
  position: relative; }
  .elementor-panel .elementor-element-wrapper {
    text-align: center;
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
  .elementor-panel .elementor-element--promotion .elementor-element {
    cursor: pointer;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none; }
  .elementor-panel .elementor-element .icon,
  .elementor-panel .elementor-element .title {
    color: #556068;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s; }
  .elementor-panel .elementor-element:hover {
    -webkit-box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
            box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2); }
    .elementor-panel .elementor-element:hover .icon, .elementor-panel .elementor-element:hover .title {
      color: #93003c; }
  .elementor-panel .elementor-element .icon {
    font-size: 28px;
    padding-top: 15px; }
  .elementor-panel .elementor-element .elementor-element-title-wrapper {
    display: table;
    width: 100%; }
  .elementor-panel .elementor-element .title {
    font-size: 11px;
    display: table-cell;
    vertical-align: middle;
    height: 40px; }
  .elementor-panel .elementor-element > .eicon-lock {
    position: absolute;
    top: 5px;
    right: 5px;
    color: #e6e9ec; }

#elementor-element--promotion__dialog {
  position: absolute;
  width: 300px;
  z-index: 1;
  background-color: #fff;
  -webkit-box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3);
          box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3);
  -webkit-border-radius: 3px;
          border-radius: 3px; }
  #elementor-element--promotion__dialog:after {
    content: '';
    position: absolute;
    top: 15px;
    right: 100%;
    -webkit-transform: scaleY(0.7);
        -ms-transform: scaleY(0.7);
            transform: scaleY(0.7);
    border: 10px solid transparent;
    border-right-color: #fff; }
  #elementor-element--promotion__dialog__title {
    font-size: 14px; }
  #elementor-element--promotion__dialog .dialog-header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 20px;
    color: #495157;
    border-bottom: 1px solid #e6e9ec;
    font-weight: 500; }
    #elementor-element--promotion__dialog .dialog-header i {
      color: #a4afb7; }
    #elementor-element--promotion__dialog .dialog-header .eicon-pro-icon {
      -webkit-box-flex: 1;
          -ms-flex-positive: 1;
              flex-grow: 1;
      margin-left: 10px;
      font-size: 14px; }
    #elementor-element--promotion__dialog .dialog-header .eicon-close {
      cursor: pointer; }
  #elementor-element--promotion__dialog .dialog-message {
    padding: 20px; }
  #elementor-element--promotion__dialog .dialog-buttons-wrapper {
    padding: 0 20px 20px 20px; }
  #elementor-element--promotion__dialog .dialog-button {
    width: 100%;
    padding: 6.5px;
    font-size: 12px; }
    #elementor-element--promotion__dialog .dialog-button::-moz-focus-inner {
      border: 0; }

#elementor-panel-inner {
  position: relative;
  height: 100%;
  -webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.2); }

#elementor-panel-content-wrapper {
  position: absolute;
  bottom: 40px;
  top: 40px;
  left: 0;
  width: 100%; }

.elementor-panel-container {
  clear: both;
  padding-left: 15px;
  padding-right: 15px; }

.media-modal.wp-core-ui input {
  width: auto; }

.media-modal.wp-core-ui select {
  width: initial; }

.media-modal.wp-core-ui fieldset {
  padding: 0;
  border: 0; }

.media-modal.wp-core-ui .wp-clearfix::after {
  content: '';
  display: table;
  clear: both; }

.media-modal.wp-core-ui .e-wp-media-elements-removed {
  /* Hack to change the media button selection text, because for some reason the text gets changed when switching tabs. */ }
  .media-modal.wp-core-ui .e-wp-media-elements-removed .embed-link-settings,
  .media-modal.wp-core-ui .e-wp-media-elements-removed .embed-media-settings > :not(.wp-clearfix):not(.alt-text):not(#alt-text-description) {
    display: none; }
  .media-modal.wp-core-ui .e-wp-media-elements-removed #embed-url-field {
    width: 70%; }
  .media-modal.wp-core-ui .e-wp-media-elements-removed .media-embed .thumbnail {
    margin-top: 20px; }
    .media-modal.wp-core-ui .e-wp-media-elements-removed .media-embed .thumbnail,
    .media-modal.wp-core-ui .e-wp-media-elements-removed .media-embed .thumbnail img {
      max-height: initial; }
    .media-modal.wp-core-ui .e-wp-media-elements-removed .media-embed .thumbnail::after {
      -webkit-box-shadow: none;
              box-shadow: none; }
  .media-modal.wp-core-ui .e-wp-media-elements-removed .media-button-select {
    font-size: 0; }
    .media-modal.wp-core-ui .e-wp-media-elements-removed .media-button-select::before {
      content: var(--button-text);
      font-size: 13px; }

#elementor-panel-get-pro-elements .elementor-nerd-box-message {
  margin-top: 10px; }

#elementor-panel-get-pro-elements .elementor-nerd-box-icon {
  margin-top: 20px; }

.elementor-control {
  --control-title-size: 12px;
  background-color: #fff;
  position: relative;
  padding: 0 20px 15px; }
  .elementor-control a {
    font-weight: 500;
    text-decoration: none;
    border-bottom: 1px dotted transparent;
    -webkit-transition: all ease-in-out .3s;
    -o-transition: all ease-in-out .3s;
    transition: all ease-in-out .3s; }
    .elementor-control a:hover {
      border-bottom-color: inherit; }
    .elementor-control a.elementor-responsive-switcher {
      border-bottom: 0; }
  .elementor-control .elementor-control-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
  .elementor-control .elementor-control-title {
    font-size: var(--control-title-size);
    line-height: 1;
    margin-right: 5px; }
  .elementor-control .elementor-control-spinner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .elementor-control.elementor-control-type-divider {
    padding: 0;
    background-color: transparent; }
    .elementor-control.elementor-control-type-divider .elementor-control-content {
      border-width: 0;
      border-color: #e6e9ec;
      border-style: solid;
      border-top-width: 1px;
      background-color: #ffffff;
      height: 15px; }
  .elementor-control.elementor-control-separator-default:not(.elementor-control-type-divider).elementor-control-wp {
    margin-top: 15px; }
    .elementor-control.elementor-control-separator-default:not(.elementor-control-type-divider).elementor-control-wp:before {
      content: '';
      height: 1px;
      display: block;
      margin-bottom: 15px;
      background-color: transparent; }
  .elementor-control.elementor-control-separator-before {
    padding-top: 15px; }
    .elementor-control.elementor-control-separator-before:before {
      content: '';
      position: absolute;
      height: 1px;
      width: 100%;
      top: 0;
      left: 0;
      background-color: #e6e9ec; }
  .elementor-control.elementor-control-separator-after:after {
    content: '';
    position: absolute;
    height: 1px;
    width: 100%;
    bottom: 0;
    left: 0;
    background-color: #e6e9ec; }
  .elementor-control.elementor-control-separator-after + .elementor-control-type-tabs + .elementor-control-separator-default, .elementor-control.elementor-control-separator-after:not(.elementor-hidden-control) + .elementor-control-separator-default {
    padding-top: 15px; }
  .elementor-control.elementor-control-deprecated {
    color: #b01b1b; }
    .elementor-control.elementor-control-deprecated .elementor-control-field-description {
      color: #b01b1b; }
  .elementor-control.elementor-control-hidden-label > * > .elementor-control-title, .elementor-control.elementor-control-hidden-label > * > * > .elementor-control-title {
    display: none; }
  .elementor-control.elementor-hidden-control {
    display: none; }
  .elementor-control.elementor-control-type-heading .elementor-control-title {
    font-weight: bold;
    margin: 0; }
  body:not(.elementor-device-widescreen) .elementor-control.elementor-control-responsive-widescreen {
    display: none; }
  body:not(.elementor-device-desktop) .elementor-control.elementor-control-responsive-desktop {
    display: none; }
  body:not(.elementor-device-laptop) .elementor-control.elementor-control-responsive-laptop {
    display: none; }
  body:not(.elementor-device-tablet_extra) .elementor-control.elementor-control-responsive-tablet_extra {
    display: none; }
  body:not(.elementor-device-tablet) .elementor-control.elementor-control-responsive-tablet {
    display: none; }
  body:not(.elementor-device-mobile_extra) .elementor-control.elementor-control-responsive-mobile_extra {
    display: none; }
  body:not(.elementor-device-mobile) .elementor-control.elementor-control-responsive-mobile {
    display: none; }
  .elementor-control.elementor-control-type-select .elementor-control-input-wrapper {
    position: relative; }
    .elementor-control.elementor-control-type-select .elementor-control-input-wrapper select {
      appearance: none;
      -webkit-appearance: none;
      -moz-appearance: none;
      font-size: 12px;
      font-family: inherit;
      font-weight: inherit;
      font-style: inherit;
      text-transform: inherit;
      letter-spacing: inherit;
      line-height: inherit;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
      padding-left: 5px;
      padding-right: 20px;
      cursor: pointer; }
      .elementor-control.elementor-control-type-select .elementor-control-input-wrapper select.e-select-placeholder {
        color: #a4afb7; }
    .elementor-control.elementor-control-type-select .elementor-control-input-wrapper option.e-option-placeholder {
      display: none; }
    .elementor-control.elementor-control-type-select .elementor-control-input-wrapper:after {
      font-family: eicons;
      content: '\e8ad';
      font-size: 12px;
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      right: 5px;
      pointer-events: none; }
  .elementor-control-custom_css_pro .elementor-nerd-box-message, .elementor-control-custom_attributes_pro .elementor-nerd-box-message {
    margin-top: 5px; }
  .elementor-control.elementor-control-custom_css_title {
    font-size: 12px; }

.elementor-control.elementor-open .elementor-panel-heading-toggle .eicon:before,
.elementor-panel-scheme-item.elementor-open .elementor-panel-heading-toggle .eicon:before {
  content: '\e92a'; }

.elementor-control:not(.elementor-open) .elementor-panel-heading-toggle .eicon:before,
.elementor-panel-scheme-item:not(.elementor-open) .elementor-panel-heading-toggle .eicon:before {
  content: ""; }

.elementor-panel-heading {
  display: table;
  table-layout: fixed;
  height: 40px;
  padding: 0 20px;
  width: 100%;
  border-bottom: 1px solid #e6e9ec;
  cursor: pointer; }
  .elementor-panel-heading > * {
    display: table-cell;
    vertical-align: middle; }
  .elementor-panel-heading-toggle {
    width: 20px;
    color: #495157; }
  .elementor-panel-heading-title {
    color: #495157;
    font-weight: bold; }

.elementor-control-wp {
  line-height: 1.5; }
  .elementor-control-wp p {
    margin: 15px 0; }

.elementor-control-field {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.elementor-label-block > .elementor-control-content > .elementor-control-field {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .elementor-label-block > .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper {
    width: 100%;
    margin-top: 10px; }

.elementor-label-block.elementor-control-hidden-label:not(.elementor-control-dynamic) > .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper {
  margin-top: 0; }

.elementor-label-block.elementor-control-hidden-label.elementor-label-block > .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper {
  margin-top: 0; }

.elementor-label-inline > .elementor-control-content > .elementor-control-field > .elementor-control-title {
  -ms-flex-negative: 0;
      flex-shrink: 0; }

.elementor-label-inline > .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper {
  margin-left: auto; }

.elementor-control-field-description {
  margin-top: 10px; }

.elementor-group-control-attachment_alert .elementor-control-field-description {
  margin-top: 0; }

.elementor-required {
  color: #b01b1b; }

.elementor-units-choices {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  text-align: right; }
  .elementor-units-choices input {
    display: none; }
    .elementor-units-choices input:not(:checked) + label {
      color: #a4afb7; }
    .elementor-units-choices input.e-units-placeholder + label {
      color: #c2cbd2;
      text-decoration: underline; }
    .elementor-units-choices input:checked + label {
      text-decoration: underline; }
  .elementor-units-choices label {
    cursor: pointer;
    padding: 0 2px;
    text-transform: uppercase;
    font-size: 9px; }

.elementor-control-responsive-switchers {
  --selected-option: 0;
  --pointer-position: var(--selected-option);
  position: relative;
  width: 2em;
  height: 2em;
  margin: calc( -2em + var(--control-title-size)) 0;
  margin-right: 5px; }
  .elementor-control-responsive-switchers__holder {
    position: absolute;
    width: 100%;
    top: 0;
    background-color: #fff;
    -webkit-border-radius: 3px;
            border-radius: 3px;
    -webkit-transition: 0.15s;
    -o-transition: 0.15s;
    transition: 0.15s;
    border: 1px transparent solid; }
  .elementor-control-responsive-switchers.elementor-responsive-switchers-open {
    z-index: 11000; }
    .elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-responsive-switcher {
      height: 2em;
      -webkit-transform: scale(1);
          -ms-transform: scale(1);
              transform: scale(1);
      opacity: 1; }
      .elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-responsive-switcher:hover {
        color: #71d7f7; }
    .elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-control-responsive-switchers__holder {
      top: calc(-1 * var(--selected-option) * 2em);
      -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.2);
              box-shadow: 0 0 3px rgba(0, 0, 0, 0.2); }

.elementor-responsive-switcher {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  z-index: 2;
  cursor: pointer;
  height: 0;
  -webkit-transform: scale(0);
      -ms-transform: scale(0);
          transform: scale(0);
  opacity: 0;
  -webkit-transition: 0.15s;
  -o-transition: 0.15s;
  transition: 0.15s;
  font-size: 12px; }

a.elementor-responsive-switcher {
  color: #a4afb7; }
  a.elementor-responsive-switcher:hover {
    color: #71d7f7; }

.elementor-device-widescreen .elementor-responsive-switcher.elementor-responsive-switcher-widescreen {
  height: 2em;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.elementor-device-widescreen .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-widescreen {
  color: #71d7f7; }

.elementor-device-desktop .elementor-responsive-switcher.elementor-responsive-switcher-desktop {
  height: 2em;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.elementor-device-desktop .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-desktop {
  color: #71d7f7; }

.elementor-device-laptop .elementor-responsive-switcher.elementor-responsive-switcher-laptop {
  height: 2em;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.elementor-device-laptop .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-laptop {
  color: #71d7f7; }

.elementor-device-tablet_extra .elementor-responsive-switcher.elementor-responsive-switcher-tablet_extra {
  height: 2em;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.elementor-device-tablet_extra .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-tablet_extra {
  color: #71d7f7; }

.elementor-device-tablet .elementor-responsive-switcher.elementor-responsive-switcher-tablet {
  height: 2em;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.elementor-device-tablet .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-tablet {
  color: #71d7f7; }

.elementor-device-mobile_extra .elementor-responsive-switcher.elementor-responsive-switcher-mobile_extra {
  height: 2em;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.elementor-device-mobile_extra .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-mobile_extra {
  color: #71d7f7; }

.elementor-device-mobile .elementor-responsive-switcher.elementor-responsive-switcher-mobile {
  height: 2em;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.elementor-device-mobile .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-mobile {
  color: #71d7f7; }

.elementor-update-preview {
  margin: 15px 15px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.elementor-update-preview-button-wrapper {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  text-align: right; }

.elementor-update-preview-button {
  padding: 8px 15px;
  text-transform: uppercase; }

.elementor-control-direction-ltr input,
.elementor-control-direction-ltr textarea {
  direction: ltr; }

.elementor-control-direction-rtl input,
.elementor-control-direction-rtl textarea {
  direction: rtl; }

.elementor-control-type-button .elementor-control-input-wrapper {
  text-align: right; }

.elementor-control-type-button .elementor-button {
  width: auto;
  height: 26px; }

.elementor-control-type-choose.elementor-label-block .elementor-choices {
  width: 100%; }

.elementor-choices {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 27px;
  line-height: 27px;
  text-align: center;
  border-spacing: 1px;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  overflow: hidden; }
  .elementor-choices .elementor-choices-label {
    border-top: 1px solid #d5dadf;
    border-bottom: 1px solid #d5dadf;
    border-left: 1px solid #d5dadf;
    border-right: none;
    font-size: 12px;
    -webkit-transition: all .5s;
    -o-transition: all .5s;
    transition: all .5s;
    cursor: pointer;
    overflow: hidden; }
    .elementor-choices .elementor-choices-label:nth-child(2) {
      -webkit-border-top-left-radius: 3px;
              border-top-left-radius: 3px;
      -webkit-border-bottom-left-radius: 3px;
              border-bottom-left-radius: 3px; }
    .elementor-choices .elementor-choices-label:last-child {
      border-right: 1px solid #d5dadf;
      -webkit-border-top-right-radius: 3px;
              border-top-right-radius: 3px;
      -webkit-border-bottom-right-radius: 3px;
              border-bottom-right-radius: 3px; }
  .elementor-choices input {
    display: none; }
    .elementor-choices input.e-choose-placeholder + .elementor-choices-label {
      color: #ffffff;
      background-color: #c2cbd2;
      border-color: #c2cbd2; }
    .elementor-choices input:checked + .elementor-choices-label {
      color: #fff;
      background-color: #a4afb7;
      border-color: #a4afb7; }

.elementor-label-inline .elementor-choices {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.rtl .elementor-control-text_align .elementor-choices,
.rtl .elementor-control-align .elementor-choices,
.rtl .elementor-control-position .elementor-choices {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse; }
  .rtl .elementor-control-text_align .elementor-choices .elementor-choices-label:nth-child(2),
  .rtl .elementor-control-align .elementor-choices .elementor-choices-label:nth-child(2),
  .rtl .elementor-control-position .elementor-choices .elementor-choices-label:nth-child(2) {
    border-right: 1px solid #d5dadf;
    -webkit-border-radius: 3px 0 0 3px;
            border-radius: 3px 0 0 3px; }
  .rtl .elementor-control-text_align .elementor-choices .elementor-choices-label:last-child,
  .rtl .elementor-control-align .elementor-choices .elementor-choices-label:last-child,
  .rtl .elementor-control-position .elementor-choices .elementor-choices-label:last-child {
    border-right: none;
    -webkit-border-radius: 0 3px 3px 0;
            border-radius: 0 3px 3px 0; }

.elementor-control-type-color.e-control-global .e-global__popover-toggle ~ .pickr {
  -webkit-border-radius: 0px 3px 3px 0;
          border-radius: 0px 3px 3px 0;
  -ms-flex-negative: 0;
      flex-shrink: 0; }

.elementor-control-type-color .elementor-control-title {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1; }

.elementor-control-type-color .elementor-control-input-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.elementor-control-type-color .elementor-control-dynamic-switcher {
  border-left-width: 0;
  -webkit-border-radius: 0 3px 3px 0;
          border-radius: 0 3px 3px 0; }

.elementor-control-type-color.elementor-control-dynamic .pickr {
  -webkit-border-radius: 3px 0 0 3px;
          border-radius: 3px 0 0 3px; }

.elementor-group-control-css-filter .elementor-slider {
  height: 6px;
  -webkit-box-shadow: 0 0 1px 1px inset rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 1px 1px inset rgba(0, 0, 0, 0.2); }

.elementor-group-control-css-filter .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper {
  margin-top: 0;
  margin-bottom: 5px; }

.elementor-group-control-blur .elementor-slider {
  background: url("../images/blur.png");
  -webkit-background-size: cover;
          background-size: cover;
  background-position: center; }

.elementor-group-control-contrast .elementor-slider {
  background: url("../images/contrast.png");
  -webkit-background-size: 100% 100%;
          background-size: 100% 100%; }

.elementor-group-control-hue .elementor-slider {
  background-image: -webkit-gradient(linear, left top, right top, from(red), color-stop(orange), color-stop(yellow), color-stop(greenyellow), color-stop(limegreen), color-stop(deepskyblue), color-stop(blue), color-stop(95%, darkviolet));
  background-image: -webkit-linear-gradient(left, red, orange, yellow, greenyellow, limegreen, deepskyblue, blue, darkviolet 95%);
  background-image: -o-linear-gradient(left, red, orange, yellow, greenyellow, limegreen, deepskyblue, blue, darkviolet 95%);
  background-image: linear-gradient(to right, red, orange, yellow, greenyellow, limegreen, deepskyblue, blue, darkviolet 95%); }

.elementor-group-control-saturate .elementor-slider {
  background-image: -webkit-gradient(linear, left top, right top, from(gray), to(red));
  background-image: -webkit-linear-gradient(left, gray, red);
  background-image: -o-linear-gradient(left, gray, red);
  background-image: linear-gradient(to right, gray, red); }

.elementor-group-control-brightness .elementor-slider {
  background-image: -webkit-gradient(linear, left top, right top, from(black), to(white));
  background-image: -webkit-linear-gradient(left, black, white);
  background-image: -o-linear-gradient(left, black, white);
  background-image: linear-gradient(to right, black, white); }

.elementor-control-type-dimensions .elementor-control-dimensions {
  overflow: hidden; }

.elementor-control-type-dimensions li {
  float: left;
  width: 20%; }
  .elementor-control-type-dimensions li input,
  .elementor-control-type-dimensions li .elementor-link-dimensions {
    display: block;
    text-align: center;
    width: 100%;
    border-color: #d5dadf;
    height: 27px; }
  .elementor-control-type-dimensions li input {
    border-left: none;
    -webkit-border-radius: 0;
            border-radius: 0;
    padding: 4px 0; }
    .elementor-control-type-dimensions li input:focus {
      border-left: solid 1px;
      border-color: #a4afb7;
      margin-left: -1px;
      width: calc(100% + 1px); }
      .elementor-control-type-dimensions li input:focus + .elementor-control-dimension-label {
        color: #a4afb7; }
  .elementor-control-type-dimensions li .elementor-link-dimensions {
    border: 1px solid #d5dadf;
    border-left: none;
    background-color: #fff;
    padding: 0;
    outline: none;
    -webkit-border-radius: 0 3px 3px 0;
            border-radius: 0 3px 3px 0;
    cursor: pointer; }
  .elementor-control-type-dimensions li:first-child input {
    border-left: 1px solid #d5dadf;
    -webkit-border-radius: 3px 0 0 3px;
            border-radius: 3px 0 0 3px; }
    .elementor-control-type-dimensions li:first-child input:focus {
      border-color: #a4afb7;
      margin-left: 0;
      width: 100%; }

.elementor-control-type-dimensions .elementor-control-dimension-label {
  display: block;
  text-align: center;
  color: #d5dadf;
  font-size: 9px;
  text-transform: uppercase;
  padding-top: 5px; }

.elementor-control-type-dimensions .elementor-link-dimensions.unlinked {
  background-color: #fff; }
  .elementor-control-type-dimensions .elementor-link-dimensions.unlinked .elementor-linked {
    display: none; }

.elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked) {
  background-color: #a4afb7;
  border-color: #a4afb7; }
  .elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked) .elementor-unlinked {
    display: none; }

.elementor-control-type-dimensions .elementor-link-dimensions .elementor-linked {
  color: #fff; }

.elementor-control-type-icons .elementor-control-media__preview > * {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%); }

.elementor-control-type-icons .elementor-control-media__preview i {
  font-size: 70px;
  color: #6d7882; }

.elementor-control-type-icons .elementor-control-media__preview svg {
  height: 75%; }

.elementor-control-type-icons .elementor-control-icons--inline__svg i.eicon-upload {
  font-size: 15px; }

.elementor-control-type-gallery .elementor-control-media__content {
  border: 1px solid #d5dadf;
  -webkit-border-radius: 3px;
          border-radius: 3px; }

.elementor-control-type-gallery .elementor-control-gallery-status {
  font-size: 12px;
  height: 27px;
  padding-left: 10px;
  border-bottom: 1px solid #d5dadf;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  .elementor-control-type-gallery .elementor-control-gallery-status > * {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .elementor-control-type-gallery .elementor-control-gallery-status-title {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }

.elementor-control-type-gallery .elementor-control-gallery-content {
  position: relative;
  overflow: hidden; }
  .elementor-control-type-gallery .elementor-control-gallery-content:not(:hover) .elementor-control-gallery-edit {
    opacity: 0; }

.elementor-control-type-gallery .elementor-control-gallery-thumbnails {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(48px, 1fr));
  grid-gap: 10px;
  cursor: pointer;
  padding: 10px; }

.elementor-control-type-gallery .elementor-control-gallery-thumbnail {
  width: 48px;
  height: 48px;
  -webkit-background-size: cover;
          background-size: cover;
  background-position: 50% 50%; }

.elementor-control-type-gallery .elementor-control-gallery-edit {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: rgba(109, 120, 130, 0.3);
  padding: 10px;
  font-size: 11px;
  -webkit-transition: all .3s ease-in-out;
  -o-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
  pointer-events: none;
  cursor: pointer;
  opacity: 1; }
  .elementor-control-type-gallery .elementor-control-gallery-edit span {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 21px;
    height: 21px;
    background-color: rgba(255, 255, 255, 0.9);
    color: #a4afb7;
    -webkit-box-shadow: 0 0 7px 0 rgba(0, 0, 0, 0.2);
            box-shadow: 0 0 7px 0 rgba(0, 0, 0, 0.2);
    -webkit-border-radius: 3px;
            border-radius: 3px; }
    .elementor-control-type-gallery .elementor-control-gallery-edit span i {
      font-size: 11px;
      padding: 5px; }

.elementor-control-type-gallery .elementor-control-gallery-add {
  width: 48px;
  height: 48px;
  color: #fff;
  background-color: #d5dadf;
  font-size: 14px;
  -webkit-border-radius: 0;
          border-radius: 0; }
  .elementor-control-type-gallery .elementor-control-gallery-add:hover {
    background-color: #c2cbd2; }
  .elementor-control-type-gallery .elementor-control-gallery-add i {
    margin: 0;
    color: #a4afb7; }

.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-clear,
.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-thumbnails,
.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-edit {
  display: none; }

.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-content {
  padding: 10px; }

.elementor-control-type-gallery.elementor-gallery-has-images .elementor-control-gallery-add {
  display: none; }

.elementor-control-type-gallery.elementor-control-dynamic .elementor-control-gallery-clear {
  border-left: 1px solid #d5dadf; }

.elementor-control-type-gallery .elementor-control-gallery-clear {
  cursor: pointer;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .elementor-control-type-gallery .elementor-control-gallery-clear:hover {
    color: #b01b1b; }

.elementor-control-type-gallery .elementor-control-dynamic-switcher {
  border: none;
  border-bottom: 1px solid #d5dadf;
  border-left: 1px solid #d5dadf;
  -webkit-border-radius: 0 3px 0 0;
          border-radius: 0 3px 0 0; }

.e-global__popover {
  width: 288px;
  z-index: 1;
  font-size: 12px;
  padding-left: 10px; }
  .e-global__popover-toggle {
    border: 1px solid #d5dadf;
    border-right: 0;
    -webkit-border-radius: 3px 0 0 3px;
            border-radius: 3px 0 0 3px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    cursor: pointer; }
    .e-global__popover-toggle--active i {
      color: #71d7f7; }
  .e-global__popover-container {
    -webkit-box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3);
            box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3);
    -webkit-border-radius: 3px;
            border-radius: 3px;
    background-color: #fff;
    padding-bottom: 5px; }
  .e-global__popover-title {
    padding: 15px 20px;
    font-weight: 500;
    color: #6d7882;
    border-bottom: 1px solid #e6e9ec;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .e-global__popover-title > i {
      margin-right: 5px;
      color: #d5dadf; }
    .e-global__popover-title-text {
      -webkit-box-flex: 1;
          -ms-flex-positive: 1;
              flex-grow: 1; }
  .e-global__popover-info {
    margin-right: 5px;
    display: inline-block; }
    .e-global__popover-info-tooltip {
      width: 270px;
      z-index: 1;
      background-color: rgba(0, 0, 0, 0.9);
      color: #fff;
      padding: 20px;
      -webkit-border-radius: 3px;
              border-radius: 3px; }
      .e-global__popover-info-tooltip:after {
        content: '';
        position: absolute;
        bottom: -17px;
        left: 16px;
        border: 10px solid transparent;
        border-top-color: rgba(0, 0, 0, 0.9); }
    .e-global__popover-info i {
      color: #d5dadf;
      font-size: 13px; }

.e-global__preview-items-container {
  max-height: 260px;
  overflow-y: auto;
  margin-top: 5px; }
  .e-global__preview-items-container::-webkit-scrollbar {
    width: 7px; }
  .e-global__preview-items-container::-webkit-scrollbar-thumb {
    background-color: #c2cbd2;
    -webkit-border-radius: 10px;
            border-radius: 10px; }

.e-global__manage-button {
  font-weight: 500;
  cursor: pointer; }
  .e-global__manage-button:hover i {
    color: #4ab7f4; }
  .e-global__manage-button i {
    color: #6d7882; }

.e-global__typography {
  padding: 5px 10px 5px 35px;
  white-space: nowrap;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  overflow: hidden; }
  .e-global__typography.e-global__preview-item--selected:before {
    font-family: 'eicons';
    font-size: 13px;
    content: '\e90e';
    position: absolute;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    top: 50%;
    left: 12px; }

.e-global__color {
  margin: 5px auto;
  padding: 5px 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .e-global__color:first-child {
    margin-top: 5px; }
  .e-global__color:last-child {
    margin-bottom: 10px; }
  .e-global__color-preview-container {
    height: 20px;
    width: 20px;
    -webkit-border-radius: 3px;
            border-radius: 3px;
    border: 1px solid rgba(0, 0, 0, 0.1);
    margin-right: 10px;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    position: relative; }
  .e-global__color-preview-color, .e-global__color-preview-transparent-bg {
    -webkit-border-radius: 3px;
            border-radius: 3px;
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0; }
  .e-global__color-preview-transparent-bg {
    background-image: -webkit-linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd), -webkit-linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd);
    background-image: -o-linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd), -o-linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd);
    background-image: linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd), linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd);
    -webkit-background-size: 12px 12px;
            background-size: 12px 12px;
    background-position: 0 0, 6px 6px; }
  .e-global__color-title {
    font-weight: 500;
    color: #6d7882;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    white-space: nowrap;
    -o-text-overflow: ellipsis;
       text-overflow: ellipsis;
    overflow: hidden;
    padding-right: 10px; }
  .e-global__color-hex {
    font-size: 10px;
    font-weight: 500;
    color: #c2cbd2; }
  .e-global__color .pcr-button {
    background-color: #fff; }
  .e-global__color.e-global__preview-item--selected .e-global__color-preview-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    color: #ffffff; }
    .e-global__color.e-global__preview-item--selected .e-global__color-preview-container:before {
      font-family: 'eicons';
      font-size: 13px;
      content: '\e90e';
      text-shadow: 0px 0px 1px #000;
      z-index: 1; }

.e-global__preview-item {
  cursor: pointer;
  position: relative; }
  .e-global__preview-item:hover {
    background-color: #f1f3f5; }
    .e-global__preview-item:hover .e-global__color-hex {
      color: #a4afb7; }

.e-global__confirm-add .dialog-buttons-wrapper > .dialog-button.dialog-confirm-ok {
  color: #39b54a; }

.e-global__confirm-delete i {
  color: #b01b1b; }

.e-global__confirm-message-text i {
  color: #fcb92c; }

.e-global__confirm-input-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid #a4afb7;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  margin-top: 10px;
  padding: 2px; }
  .e-global__confirm-input-wrapper input {
    font-family: Roboto, Arial, sans-serif;
    font-weight: 500;
    font-size: 12px;
    padding: 2px;
    border: 0; }

.e-control-global .elementor-control-input-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  max-width: 135px;
  width: 100%; }

.e-control-global.elementor-control .elementor-control-input-wrapper {
  direction: ltr; }

.e-control-global .elementor-control-spinner {
  margin-right: 4px; }

.elementor-control-type-hidden {
  display: none !important; }

.elementor-control-type-icon .select2-selection__rendered .eicon {
  margin-right: 3px; }

.elementor-control-type-image_dimensions .elementor-control-field-description {
  margin: 0 0 15px;
  line-height: 1.4; }

.elementor-control-type-image_dimensions .elementor-control-input-wrapper {
  overflow: hidden; }

.elementor-control-type-image_dimensions .elementor-image-dimensions-field {
  width: 65px;
  float: left; }
  .elementor-control-type-image_dimensions .elementor-image-dimensions-field input:focus + .elementor-image-dimensions-field-description {
    color: #a4afb7; }

.elementor-control-type-image_dimensions .elementor-image-dimensions-separator {
  width: 20px;
  text-align: center;
  float: left;
  padding-top: 4px; }

.elementor-control-type-image_dimensions .elementor-image-dimensions-field-description {
  display: block;
  text-transform: uppercase;
  margin-top: 5px;
  color: #d5dadf;
  font-size: 9px;
  text-align: center; }

.elementor-control-type-image_dimensions .elementor-image-dimensions-apply-button {
  float: right;
  height: 27px;
  width: 65px; }

.elementor-control-media.elementor-media-empty .elementor-control-media-area .elementor-control-media__remove, .elementor-control-media.elementor-media-empty .elementor-control-media-area .elementor-control-media__content__remove {
  display: none; }

.elementor-control-media:not(.elementor-media-empty) .elementor-control-media__content__upload-button {
  display: none; }

.elementor-control-media .elementor-control-input-wrapper {
  border: 1px solid #d5dadf; }

.elementor-control-media .eicon-plus-circle {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  color: #fff;
  font-size: 20px; }

.elementor-control-media__content__upload-button {
  background-color: #d5dadf; }

.elementor-control-media__preview {
  height: 100%;
  -webkit-background-size: cover;
          background-size: cover;
  background-position: center; }

.elementor-control-media-area {
  background-image: -webkit-linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd), -webkit-linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd);
  background-image: -o-linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd), -o-linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd);
  background-image: linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd), linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd);
  -webkit-background-size: 16px 16px;
          background-size: 16px 16px;
  background-position: 0 0, 8px 8px;
  background-color: #f6f6f6; }
  .elementor-control-media-area:not(:hover) .elementor-control-media__remove {
    display: none; }
  .elementor-control-media-area .eicon-video-camera {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    color: rgba(255, 255, 255, 0.7);
    font-size: 21px; }

.elementor-control-media .elementor-control-media__content {
  cursor: pointer;
  overflow: hidden; }
  .elementor-control-media .elementor-control-media__content:hover:after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: rgba(0, 0, 0, 0.2);
    pointer-events: none; }
  .elementor-control-media .elementor-control-media__content:not(:hover) .elementor-control-media__tools {
    bottom: -30px; }

.elementor-control-media__content {
  -webkit-transition: all .2s ease-in-out;
  -o-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out; }

.elementor-control-media__tools {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 27px;
  -webkit-transition: all .2s ease-in-out;
  -o-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out; }
  .elementor-control-media__tools > *:not(:first-child) {
    margin-left: 1px; }

.elementor-control-media__tool {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  color: #fff;
  background-color: rgba(109, 120, 130, 0.85);
  font-size: 11px;
  -webkit-transition: background .3s;
  -o-transition: background .3s;
  transition: background .3s; }
  .elementor-control-media__tool:hover {
    background-color: rgba(109, 120, 130, 0.95); }

.elementor-control-media__remove {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-transition: all .3s ease-in-out;
  -o-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out; }

.elementor-control-media__content__remove {
  position: absolute;
  z-index: 1;
  top: 10px;
  right: 10px;
  width: 20px;
  height: 20px;
  font-size: 11px;
  color: #a4afb7;
  background-color: rgba(255, 255, 255, 0.9);
  -webkit-border-radius: 3px;
          border-radius: 3px;
  -webkit-box-shadow: 0 0 7px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 7px 0 rgba(0, 0, 0, 0.1); }
  .elementor-control-media__content__remove:hover {
    background-color: white;
    -webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.4);
            box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.4); }

.elementor-control-media.elementor-media-empty .elementor-control-file-area {
  display: none; }

.elementor-control-media__file {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  margin-top: 10px;
  border: 1px solid #d5dadf; }
  .elementor-control-media__file__content {
    padding-left: 5px;
    font-size: 12px; }
    .elementor-control-media__file__content__label {
      color: #a4afb7; }
    .elementor-control-media__file__content__info {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      font-weight: 500; }
      .elementor-control-media__file__content__info__icon {
        margin-right: 5px; }
  .elementor-control-media__file__controls {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-left: 1px solid #d5dadf; }
    .elementor-control-media__file__controls__upload-button, .elementor-control-media__file__controls__remove {
      width: 27px;
      height: 27px;
      cursor: pointer;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
    .elementor-control-media__file__controls__upload-button {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; }
    .elementor-control-media__file__controls__remove {
      border-right: 1px solid #d5dadf; }

.elementor-control-media:not(.elementor-media-empty) .elementor-control-media__file__content__label {
  display: none; }

.elementor-control-media.elementor-media-empty .elementor-control-media__file__content__info {
  display: none; }

.elementor-control-media.elementor-media-empty .elementor-control-media__file__controls__remove {
  display: none; }

.elementor-control-media .elementor-control-dynamic-switcher {
  border: none;
  -webkit-border-radius: 0;
          border-radius: 0;
  background-color: rgba(109, 120, 130, 0.85);
  color: #fff; }
  .elementor-control-media .elementor-control-dynamic-switcher:hover {
    background-color: rgba(109, 120, 130, 0.95); }

.elementor-control-type-media.elementor-control-dynamic-value .elementor-control-input-wrapper {
  border: none; }

.elementor-control-type-number.elementor-control-dynamic input {
  -webkit-border-radius: 3px 0 0 3px;
          border-radius: 3px 0 0 3px;
  border-right: none; }

.elementor-control-type-number.elementor-control-dynamic .elementor-control-dynamic-switcher {
  -webkit-border-radius: 0 3px 3px 0;
          border-radius: 0 3px 3px 0; }

.elementor-control-type-order .elementor-control-oreder-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.elementor-control-type-order input {
  display: none; }
  .elementor-control-type-order input:checked + .elementor-control-order-label {
    -webkit-transform: scale(1, -1);
        -ms-transform: scale(1, -1);
            transform: scale(1, -1); }

.elementor-control-type-order select {
  -webkit-border-radius: 3px 0 0 3px;
          border-radius: 3px 0 0 3px; }
  .elementor-control-type-order select:not(:focus) ~ .elementor-control-order-label {
    border-color: #d5dadf; }
  .elementor-control-type-order select:focus ~ .elementor-control-order-label {
    border-color: #a4afb7; }

.elementor-control-type-order .elementor-control-order-label {
  position: relative;
  padding: 0;
  width: 40px;
  border: 1px solid;
  font-size: 10px;
  -webkit-border-radius: 0 3px 3px 0;
          border-radius: 0 3px 3px 0;
  margin-left: -3px;
  background-color: #fff;
  cursor: pointer; }
  .elementor-control-type-order .elementor-control-order-label i {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }

.elementor-control-type-popover_toggle input {
  display: none; }

.elementor-control-type-popover_toggle label {
  cursor: pointer; }

.elementor-control-type-popover_toggle .elementor-control-input-wrapper {
  direction: rtl; }

.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle:checked + .elementor-control-popover-toggle-toggle-label {
  color: #71d7f7; }

.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle:not(:checked) ~ .elementor-control-popover-toggle-reset-label {
  display: none; }

.elementor-control-type-popover_toggle .elementor-control-popover-toggle-reset-label {
  color: #c2cbd2;
  margin-right: 5px; }

.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle-label {
  height: 27px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  border: 1px solid #d5dadf; }

.elementor-controls-popover.e-controls-popover--typography {
  padding-top: 0; }

.e-control-global .elementor-control-popover-toggle-toggle-label {
  -webkit-border-radius: 0 3px 3px 0;
          border-radius: 0 3px 3px 0;
  -ms-flex-negative: 0;
      flex-shrink: 0; }

.elementor-control-type-repeater .elementor-control:not(.elementor-control-type-tab) {
  padding-right: 10px;
  padding-left: 10px;
  padding-bottom: 10px; }

.elementor-control-type-repeater.elementor-repeater-has-minimum-rows .elementor-repeater-tool-remove {
  display: none; }

.elementor-control-type-repeater .elementor-repeater-fields {
  margin: 10px 0; }

.elementor-control-type-repeater .elementor-repeater-row-controls {
  border: 1px solid #d5dadf;
  border-top-width: 0;
  padding-top: 15px; }
  .elementor-control-type-repeater .elementor-repeater-row-controls:not(.editable) {
    display: none; }

.elementor-control-type-repeater .elementor-repeater-row-tools {
  display: table;
  table-layout: fixed;
  width: 100%;
  color: #556068;
  background-color: #d5dadf;
  height: 40px;
  border-spacing: 1px;
  -webkit-transition: all .5s;
  -o-transition: all .5s;
  transition: all .5s; }
  .elementor-control-type-repeater .elementor-repeater-row-tools:hover {
    background-color: #a4afb7; }
  .elementor-control-type-repeater .elementor-repeater-row-tools > div {
    display: table-cell;
    text-align: center;
    vertical-align: middle;
    cursor: pointer; }
    .elementor-control-type-repeater .elementor-repeater-row-tools > div:not(.elementor-repeater-row-handle-sortable) {
      background-color: #fff; }
    .elementor-control-type-repeater .elementor-repeater-row-tools > div:hover {
      opacity: .95; }
  .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title {
    text-align: left;
    padding: 0 10px;
    font-size: 12px;
    white-space: nowrap;
    -o-text-overflow: ellipsis;
       text-overflow: ellipsis;
    overflow: hidden; }
    .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title .eicon,
    .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title i,
    .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title svg {
      margin-right: 5px; }
    .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title img[src$="svg"] {
      width: 1em; }
  .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-tool {
    width: 40px; }
  .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-handle-sortable {
    cursor: move;
    width: 10px;
    color: #fff; }

.elementor-control-type-repeater .elementor-button-wrapper {
  text-align: center;
  padding-top: 5px; }

.elementor-control-type-section {
  margin-top: 10px;
  padding: 0; }
  .elementor-control-type-section.elementor-open {
    padding-bottom: 15px; }
  .elementor-control-type-section + .elementor-control:not(.elementor-control-type-section):before {
    display: none; }

.elementor-shadow-box .elementor-shadow-slider {
  margin-top: 10px; }

.elementor-shadow-box .elementor-color-picker-wrapper .elementor-control-title {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1; }

.elementor-control-type-slider.elementor-control-dynamic input {
  -webkit-border-radius: 3px 0 0 3px;
          border-radius: 3px 0 0 3px; }

.elementor-control-type-slider .elementor-control-unit-2 {
  width: 21%; }

.elementor-control-type-slider.elementor-control-type-slider--multiple .elementor-control-input-wrapper {
  display: block; }

.elementor-control-type-slider--multiple {
  padding-bottom: 40px; }
  .elementor-control-type-slider--multiple .elementor-slider {
    margin-top: 12px;
    width: 98%; }

.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle {
  -webkit-border-radius: 0;
          border-radius: 0;
  width: 10px;
  -webkit-transform: translateY(calc(50% - 14px)) translateX(4px);
      -ms-transform: translateY(calc(50% - 14px)) translateX(4px);
          transform: translateY(calc(50% - 14px)) translateX(4px); }
  .elementor-control-type-slider--handles-range .elementor-slider .noUi-handle:after {
    content: '';
    position: absolute;
    top: 2px;
    height: 12px;
    width: 11px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    background-color: #fff;
    -webkit-border-radius: 3px;
            border-radius: 3px; }
  .elementor-control-type-slider--handles-range .elementor-slider .noUi-handle-lower:after {
    left: 5px;
    -webkit-box-shadow: 2px -2px 3px 0px rgba(0, 0, 0, 0.1);
            box-shadow: 2px -2px 3px 0px rgba(0, 0, 0, 0.1); }
  .elementor-control-type-slider--handles-range .elementor-slider .noUi-handle-upper:after {
    right: 5px;
    -webkit-box-shadow: -2px 2px 3px 0px rgba(0, 0, 0, 0.1);
            box-shadow: -2px 2px 3px 0px rgba(0, 0, 0, 0.1); }

.elementor-control-type-slider .elementor-control-dynamic-switcher {
  border-left-width: 0;
  -webkit-border-radius: 0 3px 3px 0;
          border-radius: 0 3px 3px 0; }

.elementor-control-type-slider .elementor-control-input-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.elementor-control-type-slider .elementor-dynamic-cover {
  margin-top: 10px; }

.elementor-slider {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  height: 4px;
  background-color: #d5dadf;
  -webkit-border-radius: 5px;
          border-radius: 5px;
  position: relative;
  cursor: pointer; }
  .elementor-slider-input {
    width: 21%;
    min-width: 54px;
    margin-left: 12px; }
  .elementor-slider__extra {
    position: relative; }
  .elementor-slider__labels {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
  .elementor-slider__label {
    font-size: 9px;
    color: #c2cbd2; }
  .elementor-slider__scales {
    position: absolute;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: space-evenly;
        -ms-flex-pack: space-evenly;
            justify-content: space-evenly;
    width: 100%;
    margin-top: 4px; }
  .elementor-slider__scale {
    width: 1px;
    height: 21px;
    background-color: #a4afb7; }
  .elementor-slider .noUi-handle {
    height: 16px;
    width: 16px;
    background-color: #fff;
    right: 0;
    -webkit-transform: translateY(calc(50% - 14px)) translateX(8px);
        -ms-transform: translateY(calc(50% - 14px)) translateX(8px);
            transform: translateY(calc(50% - 14px)) translateX(8px);
    position: absolute;
    -webkit-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.3);
            box-shadow: 0 1px 5px rgba(0, 0, 0, 0.3);
    -webkit-border-radius: 50%;
            border-radius: 50%; }
  .elementor-slider .noUi-connects {
    position: absolute;
    width: 100%;
    height: 4px; }
  .elementor-slider .noUi-connect {
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    will-change: transform;
    -webkit-transform-origin: 0 0;
        -ms-transform-origin: 0 0;
            transform-origin: 0 0;
    background-color: #a4afb7; }
  .elementor-slider .noUi-tooltip {
    position: absolute;
    top: calc(100% + 5px);
    left: calc(50% - 4px);
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    font-size: 10px; }

.elementor-control-type-structure .elementor-control-field {
  display: initial; }

.elementor-control-type-structure .elementor-control-structure-preset {
  padding: 3px;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  display: inline-block;
  cursor: pointer;
  height: 50px; }
  .elementor-control-type-structure .elementor-control-structure-preset svg {
    height: 100%; }
  .elementor-control-type-structure .elementor-control-structure-preset path {
    fill: #e6e9ec; }

.elementor-control-type-structure .elementor-control-structure-reset {
  padding: 15px 20px 0;
  font-size: 11px;
  cursor: pointer;
  color: #a4afb7;
  border-top: 1px solid #e6e9ec;
  margin: 0 -20px; }

.elementor-control-type-structure .elementor-control-structure-title {
  margin: 10px -20px 0; }
  .elementor-control-type-structure .elementor-control-structure-title:before {
    height: 10px;
    -webkit-box-shadow: inset 0 2px 4px rgba(127, 127, 127, 0.1);
            box-shadow: inset 0 2px 4px rgba(127, 127, 127, 0.1); }

.elementor-control-type-structure .elementor-control-structure-presets {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .elementor-control-type-structure .elementor-control-structure-presets input {
    display: none; }
    .elementor-control-type-structure .elementor-control-structure-presets input:checked + .elementor-control-structure-preset path {
      fill: #a4afb7; }

.elementor-control-type-structure .elementor-control-structure-preset-wrapper {
  margin-bottom: 15px; }

.elementor-control-type-structure .elementor-control-structure-preset-title {
  text-align: center;
  padding-top: 5px;
  font-style: italic;
  font-size: 11px;
  color: #a4afb7; }

.elementor-control-type-switcher .elementor-control-input-wrapper {
  text-align: right; }

.elementor-control-type-switcher .elementor-switch {
  position: relative;
  display: inline-block;
  vertical-align: top;
  height: 20px;
  background-color: white;
  -webkit-border-radius: 18px;
          border-radius: 18px;
  cursor: pointer; }

.elementor-control-type-switcher .elementor-switch-input {
  display: none; }

.elementor-control-type-switcher .elementor-switch-label {
  position: relative;
  display: block;
  height: inherit;
  font-size: 7px;
  text-transform: uppercase;
  background: #eceeef;
  -webkit-border-radius: inherit;
          border-radius: inherit;
  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.12), inset 0 0 2px rgba(0, 0, 0, 0.15);
          box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.12), inset 0 0 2px rgba(0, 0, 0, 0.15);
  -webkit-transition: 0.15s ease-out;
  -o-transition: 0.15s ease-out;
  transition: 0.15s ease-out;
  -webkit-transition-property: opacity, background;
  -o-transition-property: opacity, background;
  transition-property: opacity, background; }

.elementor-control-type-switcher .elementor-switch-label:before, .elementor-control-type-switcher .elementor-switch-label:after {
  position: absolute;
  top: 0;
  width: 50%;
  text-align: center;
  line-height: 20px;
  -webkit-transition: inherit;
  -o-transition: inherit;
  transition: inherit; }

.elementor-control-type-switcher .elementor-switch-label:before {
  content: attr(data-off);
  right: 3px;
  color: #a4afb7;
  text-shadow: 0 1px rgba(255, 255, 255, 0.5); }

.elementor-control-type-switcher .elementor-switch-label:after {
  content: attr(data-on);
  left: 3px;
  color: white;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
  opacity: 0; }

.elementor-control-type-switcher .elementor-switch-input:checked ~ .elementor-switch-label {
  background: #71d7f7;
  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.15), inset 0 0 3px rgba(0, 0, 0, 0.2);
          box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.15), inset 0 0 3px rgba(0, 0, 0, 0.2); }
  .elementor-control-type-switcher .elementor-switch-input:checked ~ .elementor-switch-label:before {
    opacity: 0; }
  .elementor-control-type-switcher .elementor-switch-input:checked ~ .elementor-switch-label:after {
    opacity: 1; }

.elementor-control-type-switcher .elementor-switch-handle {
  position: absolute;
  top: 1px;
  left: 1px;
  width: 18px;
  height: 18px;
  background: white;
  -webkit-border-radius: 10px;
          border-radius: 10px;
  -webkit-transition: left 0.15s ease-out;
  -o-transition: left 0.15s ease-out;
  transition: left 0.15s ease-out; }

.elementor-control-type-switcher .elementor-switch-input:checked ~ .elementor-switch-handle {
  left: initial;
  right: 1px;
  -webkit-box-shadow: -1px 1px 5px rgba(0, 0, 0, 0.2);
          box-shadow: -1px 1px 5px rgba(0, 0, 0, 0.2); }

.elementor-control-type-tabs {
  font-size: 0.8em;
  text-transform: uppercase;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.elementor-control-type-tab {
  text-align: center;
  width: 100%;
  padding: 0;
  line-height: 25px;
  border-top: 1px solid #d5dadf;
  border-bottom: 1px solid #d5dadf;
  border-right: 1px solid #d5dadf;
  cursor: pointer; }
  .elementor-control-type-tab:first-child {
    border-left: 1px solid #d5dadf;
    -webkit-border-top-left-radius: 3px;
            border-top-left-radius: 3px;
    -webkit-border-bottom-left-radius: 3px;
            border-bottom-left-radius: 3px; }
  .elementor-control-type-tab:last-child {
    -webkit-border-top-right-radius: 3px;
            border-top-right-radius: 3px;
    -webkit-border-bottom-right-radius: 3px;
            border-bottom-right-radius: 3px; }
  .elementor-control-type-tab.elementor-tab-active {
    background-color: #a4afb7;
    border-color: #a4afb7;
    color: #ffffff; }

.elementor-tab-close {
  display: none !important; }

.elementor-control-type-textarea.elementor-control-dynamic-value .elementor-control-dynamic-switcher,
.elementor-control-type-code.elementor-control-dynamic-value .elementor-control-dynamic-switcher {
  -webkit-border-radius: 0 3px 3px 0;
          border-radius: 0 3px 3px 0;
  border-left-width: 0; }

.elementor-control-type-textarea .elementor-control-dynamic-switcher,
.elementor-control-type-code .elementor-control-dynamic-switcher {
  -webkit-border-radius: 0px 3px;
          border-radius: 0px 3px; }

.elementor-control-type-textarea:not(.elementor-control-dynamic-value) .elementor-control-dynamic-switcher,
.elementor-control-type-code:not(.elementor-control-dynamic-value) .elementor-control-dynamic-switcher {
  position: absolute;
  top: 0;
  z-index: 1;
  right: 0; }

.elementor-control-type-textarea .elementor-control-input-wrapper,
.elementor-control-type-code .elementor-control-input-wrapper {
  position: relative; }

.elementor-control-type-textarea textarea,
.elementor-control-type-code textarea {
  display: block;
  font-family: inherit; }
  .elementor-control-type-textarea textarea:focus + .elementor-control-dynamic-switcher,
  .elementor-control-type-code textarea:focus + .elementor-control-dynamic-switcher {
    display: none; }

.elementor-control-type-textarea pre:focus-within + .elementor-control-dynamic-switcher,
.elementor-control-type-code pre:focus-within + .elementor-control-dynamic-switcher {
  display: none; }

.elementor-control-type-url.elementor-control-dynamic .elementor-input {
  -webkit-border-radius: 3px 0 0 3px;
          border-radius: 3px 0 0 3px; }

.elementor-control-type-url .elementor-control-field {
  position: relative; }

.elementor-control-type-url:not(.elementor-control-dynamic) .elementor-control-url-more, .elementor-control-type-url.elementor-control-dynamic-value .elementor-control-url-more {
  -webkit-border-radius: 0 3px 3px 0;
          border-radius: 0 3px 3px 0; }

.elementor-control-type-url .elementor-control-input-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row; }

.elementor-control-type-url .elementor-control-url-more {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  border: 1px solid #d5dadf;
  border-left: none;
  cursor: pointer; }
  .elementor-control-type-url .elementor-control-url-more i {
    font-size: 12px; }
  .elementor-control-type-url .elementor-control-url-more-options {
    display: none;
    padding-top: 10px; }
    .elementor-control-type-url .elementor-control-url-more-options .elementor-control-field-description {
      margin-top: 10px; }

.elementor-control-type-url .elementor-control-url-option {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .elementor-control-type-url .elementor-control-url-option:not(:last-child) {
    padding-bottom: 10px; }
  .elementor-control-type-url .elementor-control-url-option input,
  .elementor-control-type-url .elementor-control-url-option label {
    cursor: pointer; }
  .elementor-control-type-url .elementor-control-url-option-input {
    margin: 0;
    padding: 0;
    -webkit-border-radius: 2px;
            border-radius: 2px;
    margin-right: 5px;
    -webkit-appearance: none;
    -moz-appearance: none;
    outline: none;
    content: none;
    height: 15px;
    width: 15px;
    border: 1px solid #d5dadf;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .elementor-control-type-url .elementor-control-url-option-input:checked {
      background: #71d7f7;
      border: none; }
      .elementor-control-type-url .elementor-control-url-option-input:checked:before {
        display: block;
        content: "";
        width: 4px;
        height: 7px;
        border: solid white;
        border-width: 0 2px 2px 0;
        -webkit-transform: rotate(45deg);
            -ms-transform: rotate(45deg);
                transform: rotate(45deg); }
  .elementor-control-type-url .elementor-control-url-option label {
    font-size: 12px; }

.elementor-control-type-url .elementor-control-url-external-hide .elementor-control-url-more {
  display: none; }

.elementor-control-type-url .elementor-control-url-external-show .elementor-input,
.elementor-control-type-url .elementor-control-url-external-show .elementor-dynamic-cover {
  -webkit-border-radius: 3px 0 0 3px;
          border-radius: 3px 0 0 3px; }

.elementor-control-type-url .elementor-control-url-autocomplete-spinner {
  display: none;
  position: absolute;
  top: 5px;
  right: 0px;
  width: 10px;
  height: 10px;
  font-size: 10px;
  color: #D4D4D4; }

.elementor-control-type-url .elementor-control-url__custom-attributes {
  margin-top: 5px; }
  .elementor-control-type-url .elementor-control-url__custom-attributes label {
    font-size: 12px; }
  .elementor-control-type-url .elementor-control-url__custom-attributes input {
    width: 100%;
    margin-top: 10px; }

.elementor-control-type-url .elementor-input {
  direction: ltr; }
  .elementor-control-type-url .elementor-input:not(:focus) + .elementor-control-url-more {
    border-color: #d5dadf; }
  .elementor-control-type-url .elementor-input:focus ~ div {
    border-color: #a4afb7; }

.elementor-control-type-url .elementor-control-dynamic-switcher {
  border-left: none;
  -webkit-border-radius: 0 3px 3px 0;
          border-radius: 0 3px 3px 0; }

.elementor-autocomplete-menu {
  position: absolute;
  background: #fff;
  color: #495157;
  border: 1px solid #a4afb7;
  margin: 0;
  list-style: none;
  padding: 4px 0;
  height: auto;
  width: 100%;
  min-width: 260px;
  max-width: 300px;
  max-height: 200px;
  overflow-y: auto;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  -webkit-transition: all .3s ease-in-out;
  -o-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
  cursor: default;
  z-index: 1; }
  .elementor-autocomplete-menu .ui-menu-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-item-align: baseline;
        align-self: baseline;
    padding: 5px 8px;
    font-size: 12px;
    width: 100%;
    line-height: 1.2;
    cursor: pointer; }
    .elementor-autocomplete-menu .ui-menu-item.ui-state-hover, .elementor-autocomplete-menu .ui-menu-item.ui-state-active, .elementor-autocomplete-menu .ui-menu-item.ui-state-focus {
      background: #e6e9ec; }
  .elementor-autocomplete-menu .elementor-autocomplete-item-info {
    font-size: 10px;
    padding-top: 2px; }

.elementor-control-type-wp_widget .widget-inside {
  display: block; }

.elementor-control-type-wp_widget .quicktags-toolbar input {
  width: auto; }

.elementor-control-type-wysiwyg * {
  -webkit-box-sizing: content-box;
          box-sizing: content-box; }

.elementor-control-type-wysiwyg .wp-editor-container {
  border: 1px solid #e6e9ec; }

.elementor-control-type-wysiwyg .wp-editor-tabs {
  border: 1px solid #d5dadf;
  border-bottom: none;
  -webkit-border-radius: 3px 3px 0 0;
          border-radius: 3px 3px 0 0; }

.elementor-control-type-wysiwyg #insert-media-button {
  height: initial;
  line-height: 24px;
  font-size: 10px;
  color: #6d7882;
  border-color: #d5dadf;
  background-color: #e6e9ec;
  min-height: initial; }

.elementor-control-type-wysiwyg .ed_button {
  height: 22px;
  width: initial; }

.elementor-control-type-wysiwyg .wp-media-buttons-icon {
  height: 14px;
  margin: 0; }
  .elementor-control-type-wysiwyg .wp-media-buttons-icon:before {
    font-size: 14px; }

.elementor-control-type-wysiwyg .wp-switch-editor {
  position: static;
  border: none;
  margin: 0;
  color: #6d7882;
  font-size: 10px;
  padding: 3px 9px 4px; }

.elementor-control-type-wysiwyg .switch-html {
  border: solid #d5dadf;
  border-width: 0 1px; }

.elementor-control-type-wysiwyg .html-active .switch-tmce {
  background-color: transparent; }

.elementor-control-type-wysiwyg .html-active .switch-html {
  background-color: #e6e9ec; }

.elementor-control-type-wysiwyg .tmce-active .switch-tmce {
  background-color: #e6e9ec; }

.elementor-control-type-wysiwyg .tmce-active .switch-html {
  background-color: transparent; }

.elementor-control-type-wysiwyg .mce-toolbar-grp, .elementor-control-type-wysiwyg .quicktags-toolbar {
  background-color: #e6e9ec; }

.elementor-control-type-wysiwyg .mce-toolbar-grp > div {
  padding: 0 3px; }

.elementor-control-type-wysiwyg .elementor-wp-editor {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

.elementor-control-type-wysiwyg .mce-ico {
  color: #6d7882;
  font-size: 16px; }

.elementor-control-type-wysiwyg .mce-btn {
  margin-right: 0;
  margin-left: 0; }
  .elementor-control-type-wysiwyg .mce-btn:hover, .elementor-control-type-wysiwyg .mce-btn:active, .elementor-control-type-wysiwyg .mce-btn.mce-active {
    border-color: #d5dadf; }

.elementor-control-type-wysiwyg .mce-path {
  padding: 5px 10px; }

.elementor-control-type-wysiwyg .mce-path-item {
  font-size: 12px;
  color: #6d7882; }

.elementor-control-type-wysiwyg .elementor-control-dynamic-switcher {
  border: none; }

.elementor-control-type-text .elementor-control-dynamic-switcher {
  border-left-width: 0;
  -webkit-border-radius: 0 3px 3px 0;
          border-radius: 0 3px 3px 0; }

.elementor-control-type-text.elementor-control-dynamic input {
  -webkit-border-radius: 3px 0 0 3px;
          border-radius: 3px 0 0 3px; }

#elementor-mode-switcher {
  position: absolute;
  left: 100%;
  top: 50%;
  width: 15px;
  height: 50px;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  background-color: #e6e9ec;
  font-size: 15px;
  -webkit-box-shadow: 3px 1px 5px rgba(0, 0, 0, 0.1);
          box-shadow: 3px 1px 5px rgba(0, 0, 0, 0.1);
  cursor: pointer; }
  #elementor-mode-switcher:hover {
    background-color: #93003c;
    color: #FFFFFF; }

#elementor-mode-switcher-inner, #elementor-mode-switcher-preview {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0; }

#elementor-mode-switcher-preview {
  cursor: pointer; }
  #elementor-mode-switcher-preview .eicon {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }

#elementor-mode-switcher-preview-input {
  display: none; }

:root {
  --e-is-device-mode: 0; }

.e-is-device-mode {
  --e-is-device-mode: 1; }

#elementor-responsive-bar {
  position: -webkit-sticky;
  position: sticky;
  height: calc(40px * var(--e-is-device-mode));
  -ms-flex-item-align: stretch;
      align-self: stretch;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -webkit-transition: height .2s ease-in-out, opacity .1s;
  -o-transition: height .2s ease-in-out, opacity .1s;
  transition: height .2s ease-in-out, opacity .1s;
  left: 0;
  top: 0;
  z-index: 100;
  opacity: var(--e-is-device-mode);
  -webkit-box-shadow: 0 0 10px 2px rgba(0, 0, 0, 0.33), 0 0 2px 1px rgba(0, 0, 0, 0.25), 0 0 6px -3px rgba(255, 255, 255, 0.5);
          box-shadow: 0 0 10px 2px rgba(0, 0, 0, 0.33), 0 0 2px 1px rgba(0, 0, 0, 0.25), 0 0 6px -3px rgba(255, 255, 255, 0.5); }
  #elementor-responsive-bar:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    -webkit-transform: scaleX(var(--e-preview-scale, 1));
        -ms-transform: scaleX(var(--e-preview-scale, 1));
            transform: scaleX(var(--e-preview-scale, 1)); }

.e-responsive-bar-switcher__option {
  cursor: pointer;
  text-align: center;
  width: 22px;
  height: 22px;
  margin: 0 4px;
  line-height: 22px;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  font-size: 16px;
  -webkit-transition: background-color .3s ease-out;
  -o-transition: background-color .3s ease-out;
  transition: background-color .3s ease-out; }
  .e-responsive-bar-switcher__option:hover, .e-responsive-bar-switcher__option[aria-selected="true"] {
    color: #c2cbd2;
    background-color: rgba(255, 255, 255, 0.1); }
  .e-responsive-bar-switcher__option input {
    display: none; }
    .e-responsive-bar-switcher__option input:checked + i {
      color: #71d7f7; }
  .e-responsive-bar-switcher__option:not(:last-child) {
    -webkit-margin-end: 6px;
            margin-inline-end: 6px; }

.e-responsive-bar__button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: none;
  border: 0 none;
  cursor: pointer;
  color: inherit; }
  .e-responsive-bar__button:focus:not(:focus-visible) {
    outline: none; }
  .e-responsive-bar__button:hover {
    color: #c2cbd2;
    background-color: rgba(255, 255, 255, 0.1); }

.e-responsive-bar--pipe {
  position: relative; }
  .e-responsive-bar--pipe::before {
    content: '';
    display: block;
    height: 20px;
    width: 1px;
    background-color: #6d7882;
    position: absolute;
    right: -5px;
    top: calc(50% - 10px); }

.e-responsive-bar__input-size {
  background-color: transparent;
  color: #a4afb7;
  border: 1px solid #6d7882 !important;
  padding: 0 3px;
  width: 60px;
  font-size: 12px;
  line-height: 16px;
  height: 18px;
  margin: auto 8px auto 4px; }
  .e-responsive-bar__input-size-separator {
    color: #6d7882; }

#e-responsive-bar {
  width: 100%;
  margin-top: calc(-40px + (40px * var(--e-is-device-mode)));
  z-index: 1;
  -webkit-transition: margin-top .2s ease-in-out;
  -o-transition: margin-top .2s ease-in-out;
  transition: margin-top .2s ease-in-out;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  color: #a4afb7;
  background-color: #495157; }
  #e-responsive-bar__center, #e-responsive-bar__end, #e-responsive-bar-scale, #e-responsive-bar-switcher {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 13px;
    background-color: #495157;
    padding: 2px 0; }
  @media (min-width: 1400px) {
    #e-responsive-bar__center {
      margin-left: 50%;
      -webkit-transform: translate(-50%, 0);
          -ms-transform: translate(-50%, 0);
              transform: translate(-50%, 0); } }
  #e-responsive-bar__close-button, #e-responsive-bar__settings-button {
    width: 22px;
    height: 22px;
    -webkit-border-radius: 3px;
            border-radius: 3px;
    margin: 7px 5px;
    font-size: 16px; }
  #e-responsive-bar__size-inputs-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-margin-end: 8px;
            margin-inline-end: 8px;
    color: #6d7882; }
  #e-responsive-bar-switcher {
    padding: 0 20px; }
  #e-responsive-bar-scale {
    padding: 0 20px; }
    #e-responsive-bar-scale__value-wrapper {
      margin: 0 14px;
      min-width: 32px;
      text-align: center; }
    #e-responsive-bar-scale__plus, #e-responsive-bar-scale__minus, #e-responsive-bar-scale__reset {
      cursor: pointer;
      width: 20px;
      height: 20px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; }
    #e-responsive-bar-scale__minus:before {
      content: "";
      display: block;
      width: 13px;
      height: 2px;
      background: #a4afb7;
      -webkit-border-radius: 3px;
              border-radius: 3px; }
    #e-responsive-bar-scale__reset {
      margin: 0px 8px; }

.elementor-revision-item__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid #d5dadf;
  padding: 10px 15px;
  margin-bottom: 10px;
  font-size: 11px;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s; }
  .elementor-revision-item__wrapper.current {
    font-weight: bold; }
  .elementor-revision-item__wrapper .elementor-revision-item__tools-current {
    color: #71d7f7; }

.elementor-revision-item:hover:not(.elementor-revision-current-preview) {
  background-color: rgba(230, 233, 236, 0.3); }

.elementor-revision-item-loading .elementor-revision-item__tools-current {
  display: none; }

.elementor-revision-item:not(.elementor-revision-item-loading) .elementor-revision-item__tools-spinner {
  display: none; }

.elementor-revision-item__gravatar {
  -webkit-border-radius: 50%;
          border-radius: 50%;
  overflow: hidden; }
  .elementor-revision-item__gravatar img {
    display: block; }

.elementor-revision-item__details {
  padding-left: 15px;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  cursor: pointer; }

.elementor-revision-meta {
  padding-top: 5px;
  font-size: 10px;
  font-weight: bold; }

.elementor-revision-current-preview {
  background-color: #e6e9ec; }

#elementor-restore-autosave-dialog.dialog-widget {
  background-color: rgba(0, 0, 0, 0.3); }

#elementor-panel-revisions-loading {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%); }
  #elementor-panel-revisions-loading .eicon-loading {
    font-size: 50px;
    color: #a4afb7; }

.elementor-history-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid #d5dadf;
  padding: 10px 15px;
  margin-bottom: 10px;
  font-size: 11px;
  line-height: 1.4;
  cursor: pointer;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s; }
  .elementor-history-item:hover {
    background-color: rgba(230, 233, 236, 0.3); }
    .elementor-history-item:hover .elementor-history-item__icon .eicon:before {
      content: '\e924'; }
  .elementor-history-item-applied {
    color: #a4afb7; }
  .elementor-history-item-current {
    background: #e6e9ec;
    cursor: default; }
    .elementor-history-item-current .elementor-history-item__icon .eicon:before, .elementor-history-item-current:hover .elementor-history-item__icon .eicon:before {
      content: '\e90e'; }
  .elementor-history-item__details {
    width: 95%; }
  .elementor-history-item__title {
    font-weight: bold; }
  .elementor-history-item__subtitle, .elementor-history-item__action {
    font-weight: lighter; }
  .elementor-history-item__action {
    font-style: italic;
    text-decoration: underline; }
  .elementor-history-item .__icon {
    float: right; }

.elementor-history-revisions-message {
  font-size: 11px;
  text-align: center;
  padding-top: 5px; }

#elementor-panel-history {
  padding: 20px 20px 15px; }
  #elementor-panel-history.elementor-empty .elementor-history-revisions-message {
    padding-top: 20px; }
  #elementor-panel-history:not(.elementor-empty) {
    background-color: #fff;
    margin-top: 10px; }

#elementor-panel-history-no-items,
#elementor-panel-revisions-no-revisions {
  text-align: center; }
  #elementor-panel-history-no-items .elementor-nerd-box-icon,
  #elementor-panel-revisions-no-revisions .elementor-nerd-box-icon {
    margin-top: 20px; }

.elementor-panel #elementor-panel-header #elementor-panel-header-kit-close,
.elementor-panel #elementor-panel-header #elementor-panel-header-kit-back {
  display: none; }

.elementor-editor-kit .elementor-panel #elementor-panel-header {
  background-color: #4ab7f4; }
  .elementor-editor-kit .elementor-panel #elementor-panel-header #elementor-panel-header-kit-close,
  .elementor-editor-kit .elementor-panel #elementor-panel-header #elementor-panel-header-kit-back {
    display: table-cell; }
  body:not(.e-routes-has-history) #elementor-panel-header-kit-back {
    pointer-events: none;
    opacity: 0.4; }
    body:not(.e-routes-has-history) #elementor-panel-header-kit-back:hover .elementor-icon {
      cursor: inherit;
      color: inherit; }

.elementor-editor-kit .elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab.elementor-active {
  border-bottom-color: #4ab7f4; }

.elementor-editor-kit .elementor-panel #elementor-panel-page-settings .elementor-panel-navigation {
  display: none; }

.elementor-editor-kit .elementor-panel #elementor-panel-saver-button-publish.elementor-button.elementor-button-success:not(.elementor-disabled),
.elementor-editor-kit .elementor-panel #elementor-panel-saver-button-save-options.elementor-button.elementor-button-success:not(.elementor-disabled) {
  background-color: #4ab7f4; }

.elementor-editor-kit .elementor-panel #elementor-panel-page-menu {
  padding: 25px 15px 0; }

.elementor-editor-kit #elementor-panel-header-add-button,
.elementor-editor-kit #elementor-panel-header-menu-button,
.elementor-editor-kit #elementor-panel-footer-sub-menu-item-save-template,
.elementor-editor-kit #elementor-panel-footer-navigator {
  display: none; }

.elementor-control-type-global-style-repeater .elementor-repeater-fields {
  margin-bottom: 15px;
  position: relative; }

.elementor-control-type-global-style-repeater .elementor-repeater-row-controls {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.elementor-control-type-global-style-repeater .elementor-repeater-row-tool {
  cursor: pointer;
  color: #d5dadf;
  padding: 5px; }

.elementor-control-type-global-style-repeater .elementor-control {
  padding: 0; }
  .elementor-control-type-global-style-repeater .elementor-control-title {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }
    .elementor-control-type-global-style-repeater .elementor-control-title input {
      max-width: 135px; }
      .elementor-control-type-global-style-repeater .elementor-control-title input:not(:focus) {
        background: none;
        border: none; }
  .elementor-control-type-global-style-repeater .elementor-control-input-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    min-width: 81px; }
    .elementor-control-type-global-style-repeater .elementor-control-input-wrapper:hover .e-global-colors__color-value {
      display: none; }
    .elementor-control-type-global-style-repeater .elementor-control-input-wrapper:not(:hover) .elementor-repeater-tool-remove,
    .elementor-control-type-global-style-repeater .elementor-control-input-wrapper:not(:hover) .elementor-repeater-tool-remove--disabled {
      display: none; }

.elementor-control-type-global-style-repeater .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper {
  margin-top: 0; }

.elementor-control-type-global-style-repeater .elementor-controls-popover {
  -ms-flex-item-align: end;
      align-self: end;
  margin-top: 35px;
  top: 0;
  width: 100%; }
  .elementor-control-type-global-style-repeater .elementor-controls-popover:before {
    right: 5px; }
  .elementor-control-type-global-style-repeater .elementor-controls-popover .elementor-control {
    padding: 0 20px 15px; }
    .elementor-control-type-global-style-repeater .elementor-controls-popover .elementor-control-title {
      -webkit-box-flex: initial;
          -ms-flex-positive: initial;
              flex-grow: initial; }

.elementor-control-type-global-style-repeater .elementor-button-wrapper {
  text-align: center;
  border-top: 1px solid #e6e9ec;
  max-width: 260px;
  padding-top: 15px; }

.elementor-control-type-global-style-repeater .pickr,
.elementor-control-type-global-style-repeater .elementor-control-popover-toggle-toggle-label {
  margin-left: 5px; }

.elementor-control-system_colors, .elementor-control-system_typography {
  padding-bottom: 0; }

.e-global-colors__color-value {
  color: #d5dadf;
  font-size: 10px;
  padding: 0 5px;
  text-align: right;
  white-space: nowrap;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  overflow: hidden; }

@-webkit-keyframes load {
  0% {
    opacity: .3; }
  50% {
    opacity: 1; }
  100% {
    opacity: .3; } }

@keyframes load {
  0% {
    opacity: .3; }
  50% {
    opacity: 1; }
  100% {
    opacity: .3; } }

@-webkit-keyframes fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@keyframes fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@-webkit-keyframes mover {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0); }
  100% {
    -webkit-transform: translateY(-5px);
            transform: translateY(-5px); } }

@keyframes mover {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0); }
  100% {
    -webkit-transform: translateY(-5px);
            transform: translateY(-5px); } }

@-webkit-keyframes slideDown {
  0% {
    -webkit-transform: translateY(-30px);
            transform: translateY(-30px); }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

@keyframes slideDown {
  0% {
    -webkit-transform: translateY(-30px);
            transform: translateY(-30px); }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

body {
  --e-preview-width: calc(100% - var(--e-editor-panel-width, 300px)); }
  body.elementor-navigator-docked {
    --e-preview-width: calc(100% - var(--e-editor-panel-width, 300px) - var(--e-editor-navigator-width, 0px)); }
  body.elementor-device-desktop #elementor-preview {
    overflow-y: hidden;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start; }
  body:not(.elementor-device-desktop) body {
    overflow-y: auto; }

#elementor-preview {
  overflow: auto;
  background-color: #333;
  height: 100%;
  border: 0;
  width: var(--e-preview-width);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative; }

#elementor-preview-responsive-wrapper {
  -webkit-transform-origin: top center;
      -ms-transform-origin: top center;
          transform-origin: top center;
  padding: 20px;
  -webkit-transform: scale(var(--e-preview-scale, 1));
      -ms-transform: scale(var(--e-preview-scale, 1));
          transform: scale(var(--e-preview-scale, 1)); }
  .elementor-device-desktop #elementor-preview-responsive-wrapper {
    min-width: 1025px;
    width: 100%;
    height: 100%;
    padding: 0;
    position: relative; }
  body.e-is-device-mode:not(.elementor-device-desktop) #elementor-preview-responsive-wrapper {
    width: var(--e-editor-preview-width);
    height: var(--e-editor-preview-height);
    margin: 0 Max(calc((100vw - var(--e-editor-panel-width) - var(--e-editor-preview-width)) / 2), 20px);
    -webkit-box-sizing: content-box;
            box-sizing: content-box;
    position: relative;
    max-height: calc(100vh - 80px); }
    body.e-is-device-mode:not(.elementor-device-desktop) #elementor-preview-responsive-wrapper .ui-resizable-handle {
      display: -webkit-box !important;
      display: -ms-flexbox !important;
      display: flex !important; }
  #elementor-preview-responsive-wrapper:not(.ui-resizable-resizing) {
    -webkit-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out; }
  #elementor-preview-responsive-wrapper .ui-resizable-handle {
    top: 0; }
    #elementor-preview-responsive-wrapper .ui-resizable-handle.ui-resizable-s {
      top: auto;
      bottom: 0; }
  #elementor-preview-responsive-wrapper .ui-resizable-n, #elementor-preview-responsive-wrapper .ui-resizable-s {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    height: 20px; }
    #elementor-preview-responsive-wrapper .ui-resizable-n:before, #elementor-preview-responsive-wrapper .ui-resizable-s:before {
      content: '';
      display: block;
      background-color: rgba(255, 255, 255, 0.2);
      width: 50px;
      height: 4px;
      -webkit-border-radius: 3px;
              border-radius: 3px;
      -webkit-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      transition: all 0.2s ease-in-out; }
    #elementor-preview-responsive-wrapper .ui-resizable-n:hover:before, #elementor-preview-responsive-wrapper .ui-resizable-s:hover:before {
      background-color: rgba(255, 255, 255, 0.6);
      width: 100px; }
  #elementor-preview-responsive-wrapper .ui-resizable-e, #elementor-preview-responsive-wrapper .ui-resizable-w {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 20px; }
    #elementor-preview-responsive-wrapper .ui-resizable-e:before, #elementor-preview-responsive-wrapper .ui-resizable-w:before {
      content: '';
      display: block;
      background-color: rgba(255, 255, 255, 0.2);
      width: 4px;
      height: 50px;
      -webkit-border-radius: 3px;
              border-radius: 3px;
      -webkit-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      transition: all 0.2s ease-in-out; }
    #elementor-preview-responsive-wrapper .ui-resizable-e:hover:before, #elementor-preview-responsive-wrapper .ui-resizable-w:hover:before {
      background-color: rgba(255, 255, 255, 0.6);
      height: 100px; }
  #elementor-preview-responsive-wrapper.ui-resizable-resizing .ui-resizable-handle:before {
    background-color: rgba(255, 255, 255, 0.9); }
  #elementor-preview-responsive-wrapper .ui-resizable-s {
    bottom: 0; }
  #elementor-preview-responsive-wrapper .ui-resizable-e {
    right: 0; }
  #elementor-preview-responsive-wrapper .ui-resizable-w {
    left: 0; }

#elementor-preview-iframe {
  width: 100%;
  height: 100%;
  background-color: #fff;
  -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.3), 0 0 20px rgba(0, 0, 0, 0.15);
          box-shadow: 0 0 3px rgba(0, 0, 0, 0.3), 0 0 20px rgba(0, 0, 0, 0.15); }

#elementor-template-library-modal a.elementor-template-library-blank-footer-link {
  font-style: normal;
  text-decoration: underline;
  color: #39b54a; }
  #elementor-template-library-modal a.elementor-template-library-blank-footer-link:hover {
    color: #2d8e3a; }

#elementor-template-library-modal .dialog-buttons-wrapper {
  display: none; }

#elementor-template-library-modal .select2-container {
  z-index: 0; }

#elementor-template-library-header-menu {
  text-align: center;
  color: #6d7882;
  font-size: 13px; }

.elementor-template-library-menu-item {
  display: inline-block;
  padding: 17px 0;
  width: 115px;
  cursor: pointer; }
  .elementor-template-library-menu-item.elementor-active {
    background-image: -webkit-gradient(linear, left top, left bottom, from(#f1f3f5), to(#fff));
    background-image: -webkit-linear-gradient(top, #f1f3f5, #fff);
    background-image: -o-linear-gradient(top, #f1f3f5, #fff);
    background-image: linear-gradient(to bottom, #f1f3f5, #fff);
    border-bottom: 3px solid #93003c; }

#elementor-template-library-header-actions {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  #elementor-template-library-header-actions > div {
    padding-right: 16px; }

#elementor-template-library-header-preview-insert-wrapper {
  cursor: default;
  padding: 0 10px; }
  #elementor-template-library-header-preview-insert-wrapper .elementor-button {
    padding: 8px 14px;
    font-size: 11px; }
  #elementor-template-library-header-preview-insert-wrapper .elementor-template-library-template-insert {
    color: #fff;
    background-color: #39b54a; }
  #elementor-template-library-header-preview-insert-wrapper .elementor-go-pro {
    background-color: #93003c;
    color: #fff; }

#elementor-template-library-header-preview-back {
  padding: 16.5px 16.5px 15px 0;
  border-right: 1px solid #e6e9ec;
  cursor: pointer;
  -webkit-transition: color .5s;
  -o-transition: color .5s;
  transition: color .5s; }
  #elementor-template-library-header-preview-back:not(:hover) {
    color: #a4afb7; }
  #elementor-template-library-header-preview-back i {
    padding-right: 10px;
    font-size: 18px; }
    #elementor-template-library-header-preview-back i:before {
      content: ""; }

#elementor-template-library-templates {
  padding: 0 15px; }
  #elementor-template-library-templates[data-template-source="local"] #elementor-template-library-templates-container {
    -webkit-box-shadow: 1px 1px 20px 0 rgba(0, 0, 0, 0.03);
            box-shadow: 1px 1px 20px 0 rgba(0, 0, 0, 0.03);
    margin-top: 10px;
    margin-bottom: 45px; }
  #elementor-template-library-templates[data-template-source="local"] .elementor-template-library-order-input:checked + .elementor-template-library-order-label {
    color: #6d7882; }
  #elementor-template-library-templates[data-template-source="remote"] #elementor-template-library-templates-container {
    margin: 10px -15px 0; }
  #elementor-template-library-templates[data-template-source="remote"] .elementor-template-library-order-input:checked + .elementor-template-library-order-label {
    color: #495157; }
  #elementor-template-library-templates[data-template-source="empty"] #elementor-template-library-order-toolbar-local, #elementor-template-library-templates[data-template-source="empty"] #elementor-template-library-footer-banner {
    display: none; }
  #elementor-template-library-templates.elementor-templates-filter-active #elementor-template-library-footer-banner {
    display: none; }
  #elementor-template-library-templates .elementor-template-library-order-input {
    display: none; }
    #elementor-template-library-templates .elementor-template-library-order-input:checked + .elementor-template-library-order-label {
      padding-right: 8px; }
      #elementor-template-library-templates .elementor-template-library-order-input:checked + .elementor-template-library-order-label:after {
        font-family: eicons;
        content: '\e8ae';
        margin-left: 3px; }
    #elementor-template-library-templates .elementor-template-library-order-input:checked.elementor-template-library-order-reverse + .elementor-template-library-order-label:after {
      content: '\e8ad'; }

#elementor-template-library-templates-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; }
  #elementor-template-library-templates-container .elementor-template-library-template-local .elementor-template-library-template-insert {
    text-transform: none;
    font-size: 12px; }

#elementor-template-library-toolbar {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.elementor-template-library-filter-toolbar {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

#elementor-template-library-filter-toolbar-remote {
  font-size: 11px; }

#elementor-template-library-order {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-right: 1px solid #d5dadf; }

.elementor-template-library-order-label {
  text-transform: uppercase;
  padding-right: 22px;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none; }

label.elementor-template-library-order-label {
  cursor: pointer; }
  label.elementor-template-library-order-label:hover {
    color: #556068; }

#elementor-template-library-filter .select2 {
  text-align: left;
  width: calc(27px * 5) !important; }

#elementor-template-library-filter .select2-selection__rendered {
  text-transform: capitalize; }

#select2-elementor-template-library-filter-subtype-results .select2-results__option {
  text-transform: capitalize;
  text-align: left;
  padding-left: 5px; }

#elementor-template-library-my-favorites {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  text-align: left;
  padding-left: 20px; }

#elementor-template-library-filter-my-favorites {
  display: none; }
  #elementor-template-library-filter-my-favorites:checked + #elementor-template-library-filter-my-favorites-label {
    color: #495157; }
    #elementor-template-library-filter-my-favorites:checked + #elementor-template-library-filter-my-favorites-label i:after {
      color: #93003c;
      content: '\e93f'; }

#elementor-template-library-filter-my-favorites-label {
  cursor: pointer;
  text-transform: uppercase; }
  #elementor-template-library-filter-my-favorites-label:hover {
    color: #556068; }
    #elementor-template-library-filter-my-favorites-label:hover i:after {
      color: #93003c; }
  #elementor-template-library-filter-my-favorites-label i {
    padding-right: 5px; }
    #elementor-template-library-filter-my-favorites-label i:after {
      color: #a4afb7;
      content: '\e923'; }

#elementor-template-library-filter-text-wrapper {
  width: 200px;
  position: relative; }
  #elementor-template-library-filter-text-wrapper i {
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); }

#elementor-template-library-filter-text {
  border: none;
  border-bottom: 1px solid #d5dadf;
  -webkit-border-radius: 0;
          border-radius: 0;
  font-size: 11px;
  padding: 8px 15px 8px 0;
  -webkit-transition: border 0.5s;
  -o-transition: border 0.5s;
  transition: border 0.5s; }
  #elementor-template-library-filter-text:focus {
    border-color: #c2cbd2; }
  #elementor-template-library-filter-text::-webkit-input-placeholder {
    font-weight: 300;
    text-transform: uppercase; }
  #elementor-template-library-filter-text::-moz-placeholder {
    font-weight: 300;
    text-transform: uppercase; }
  #elementor-template-library-filter-text::-ms-input-placeholder {
    font-weight: 300;
    text-transform: uppercase; }
  #elementor-template-library-filter-text::placeholder {
    font-weight: 300;
    text-transform: uppercase; }
  #elementor-template-library-filter-text:focus {
    border-color: #c2cbd2; }

.elementor-template-library-template-remote {
  margin: 15px;
  padding: 8px;
  background-color: #fff;
  -webkit-box-shadow: 0 1px 20px 0 rgba(0, 0, 0, 0.07);
          box-shadow: 0 1px 20px 0 rgba(0, 0, 0, 0.07);
  -webkit-border-radius: 3px;
          border-radius: 3px; }
  .elementor-template-library-template-remote:hover .elementor-template-library-template-name {
    display: none; }
  .elementor-template-library-template-remote:not(:hover) .elementor-template-library-template-preview {
    opacity: 0; }
  .elementor-template-library-template-remote:not(:hover) .elementor-template-library-favorite,
  .elementor-template-library-template-remote:not(:hover) .elementor-template-library-template-action {
    display: none; }
  .elementor-template-library-template-remote.elementor-template-library-pro-template .elementor-template-library-template-body:before {
    content: var(--elementor-template-library-subscription-plan-label);
    background-color: var(--elementor-template-library-subscription-plan-color);
    color: #d5dadf;
    position: absolute;
    text-transform: uppercase;
    top: 5px;
    right: 5px;
    padding: 2px 4px 0;
    font-size: 9px;
    -webkit-border-radius: 2px;
            border-radius: 2px; }
  .elementor-template-library-template-remote:not(.elementor-template-library-template-page):not(.elementor-template-library-template-lp) {
    position: relative;
    width: calc(33.333% - 30px);
    overflow: hidden; }
    .elementor-template-library-template-remote:not(.elementor-template-library-template-page):not(.elementor-template-library-template-lp) img {
      display: block;
      width: 100%; }
    .elementor-template-library-template-remote:not(.elementor-template-library-template-page):not(.elementor-template-library-template-lp) .elementor-template-library-template-footer {
      position: absolute;
      width: 100%;
      bottom: 0;
      left: 0;
      padding: 10px;
      background-color: #fff;
      -webkit-transition: -webkit-transform .5s;
      transition: -webkit-transform .5s;
      -o-transition: transform .5s;
      transition: transform .5s;
      transition: transform .5s, -webkit-transform .5s; }
    .elementor-template-library-template-remote:not(.elementor-template-library-template-page):not(.elementor-template-library-template-lp) .elementor-template-library-template-name {
      display: none; }
    .elementor-template-library-template-remote:not(.elementor-template-library-template-page):not(.elementor-template-library-template-lp):not(:hover) .elementor-template-library-template-footer {
      -webkit-transform: translateY(100%);
          -ms-transform: translateY(100%);
              transform: translateY(100%); }
  .elementor-template-library-template-remote .elementor-template-library-template-body {
    position: relative; }
  @media (max-width: 1025px) {
    .elementor-template-library-template-remote .elementor-template-library-template-body {
      height: 300px; } }
  .elementor-template-library-template-remote .elementor-template-library-template-screenshot {
    height: 100%;
    -webkit-background-size: cover;
            background-size: cover;
    background-position-x: 50%;
    -webkit-box-shadow: inset 0px -2px 15px -6px rgba(0, 0, 0, 0.07);
            box-shadow: inset 0px -2px 15px -6px rgba(0, 0, 0, 0.07); }
  .elementor-template-library-template-remote .elementor-template-library-template-preview {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    -webkit-transition: opacity .5s;
    -o-transition: opacity .5s;
    transition: opacity .5s;
    cursor: pointer; }
    .elementor-template-library-template-remote .elementor-template-library-template-preview i {
      font-size: 20px;
      color: #d5dadf;
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
          -ms-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%); }
  .elementor-template-library-template-remote .elementor-template-library-template-insert {
    color: #39b54a; }
  .elementor-template-library-template-remote .elementor-go-pro {
    color: #93003c; }
  .elementor-template-library-template-remote .elementor-template-library-template-footer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-top: 10px;
    font-size: 11px;
    line-height: 1; }
  .elementor-template-library-template-remote .elementor-template-library-template-name {
    text-align: left;
    color: #6d7882;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    white-space: nowrap;
    -o-text-overflow: ellipsis;
       text-overflow: ellipsis;
    overflow: hidden;
    padding-right: 5px; }
  .elementor-template-library-template-remote .elementor-template-library-template-favorite-input {
    display: none; }
    .elementor-template-library-template-remote .elementor-template-library-template-favorite-input:checked + .elementor-template-library-template-favorite-label i:before {
      content: '\e93f';
      color: #93003c; }
  .elementor-template-library-template-remote .elementor-template-library-template-favorite-label {
    cursor: pointer; }
    .elementor-template-library-template-remote .elementor-template-library-template-favorite-label:hover i {
      color: #93003c; }

@media (max-width: 1439px) {
  .elementor-template-library-template-page,
  .elementor-template-library-template-lp {
    width: calc(25% - 30px); } }

@media (min-width: 1440px) {
  .elementor-template-library-template-page,
  .elementor-template-library-template-lp {
    width: calc(20% - 30px); } }

@media (max-width: 1025px) {
  .elementor-template-library-template-page,
  .elementor-template-library-template-lp {
    width: calc(33.333% - 30px); } }

.elementor-template-library-template-page .elementor-template-library-template-body,
.elementor-template-library-template-lp .elementor-template-library-template-body {
  height: 200px; }

#elementor-template-library-order-toolbar-local,
.elementor-template-library-template-local {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 25px;
  text-align: left; }

#elementor-template-library-order-toolbar-local {
  margin-top: 30px; }
  #elementor-template-library-order-toolbar-local .elementor-template-library-order-label {
    line-height: 1;
    font-size: 10px;
    font-weight: 500; }
    #elementor-template-library-order-toolbar-local .elementor-template-library-order-label:not(:hover) {
      color: #a4afb7; }

.elementor-template-library-template-local {
  height: 50px;
  width: 100%;
  margin-top: 1px;
  background-color: #fff;
  -webkit-transition: background-color .3s linear;
  -o-transition: background-color .3s linear;
  transition: background-color .3s linear; }
  .elementor-template-library-template-local:hover {
    background-color: #fafbfb; }
  .elementor-template-library-template-local:not(:hover) .elementor-template-library-template-insert {
    background: none;
    color: #a4afb7; }
  .elementor-template-library-template-local:first-child {
    -webkit-border-radius: 3px 3px 0 0;
            border-radius: 3px 3px 0 0; }
  .elementor-template-library-template-local:last-child {
    -webkit-border-radius: 0 0 3px 3px;
            border-radius: 0 0 3px 3px; }
  .elementor-template-library-template-local .elementor-template-library-template-name {
    font-weight: 500; }
  .elementor-template-library-template-local .elementor-template-library-template-name,
  .elementor-template-library-template-local .elementor-template-library-template-meta {
    padding-right: 20px; }
  .elementor-template-library-template-local .elementor-template-library-template-meta {
    color: #a4afb7; }
  .elementor-template-library-template-local .elementor-template-library-template-name,
  .elementor-template-library-template-local .elementor-template-library-template-meta,
  .elementor-template-library-template-local .elementor-template-library-template-preview,
  .elementor-template-library-template-local .elementor-template-library-template-action {
    white-space: nowrap;
    -o-text-overflow: ellipsis;
       text-overflow: ellipsis;
    overflow: hidden; }
  .elementor-template-library-template-local .elementor-template-library-template-controls {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .elementor-template-library-template-local .elementor-template-library-template-controls,
    .elementor-template-library-template-local .elementor-template-library-template-controls a {
      color: #a4afb7; }
    .elementor-template-library-template-local .elementor-template-library-template-controls > div {
      cursor: pointer;
      -webkit-transition: color .5s;
      -o-transition: color .5s;
      transition: color .5s; }
  .elementor-template-library-template-local .elementor-template-library-template-insert i {
    margin-right: 3px; }
  .elementor-template-library-template-local .elementor-template-library-template-control-title {
    margin-left: 6px; }
  .elementor-template-library-template-local .elementor-template-library-template-more:hover,
  .elementor-template-library-template-local .elementor-template-library-template-more a:hover {
    color: #556068; }
  .elementor-template-library-template-local .elementor-template-library-template-more .elementor-template-library-template-delete:hover {
    color: #d72b3f; }
  .elementor-template-library-template-local .elementor-template-library-template-action {
    padding: 8px 18px;
    margin: 0 5%; }
  .elementor-template-library-template-local .elementor-template-library-template-more {
    display: none;
    position: absolute;
    background-color: #fff;
    padding: 3px 20px;
    -webkit-border-radius: 3px;
            border-radius: 3px;
    -webkit-box-shadow: 1px 3px 11px rgba(0, 0, 0, 0.3);
            box-shadow: 1px 3px 11px rgba(0, 0, 0, 0.3);
    top: 100%;
    right: 0;
    -webkit-transform: translateX(65%) translateY(-7px);
        -ms-transform: translateX(65%) translateY(-7px);
            transform: translateX(65%) translateY(-7px);
    z-index: 1; }
    .elementor-template-library-template-local .elementor-template-library-template-more:before {
      content: '';
      position: absolute;
      border: solid transparent;
      border-width: 8px 4px;
      border-bottom-color: #fff;
      -webkit-transform: translateY(-100%);
          -ms-transform: translateY(-100%);
              transform: translateY(-100%); }
    .elementor-template-library-template-local .elementor-template-library-template-more > div {
      margin: 10px 0;
      font-size: 11px; }
  .elementor-template-library-template-local .elementor-template-library-template-more-toggle {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    text-align: right; }
    .elementor-template-library-template-local .elementor-template-library-template-more-toggle i {
      font-size: 16px; }

#elementor-template-library-preview {
  height: 100%;
  overflow: hidden; }
  #elementor-template-library-preview iframe {
    height: 150%;
    -webkit-transform: scale(0.666) translateX(-25%) translateY(-25%);
        -ms-transform: scale(0.666) translateX(-25%) translateY(-25%);
            transform: scale(0.666) translateX(-25%) translateY(-25%); }
    @media (max-width: 1439px) {
      #elementor-template-library-preview iframe {
        width: 1440px; } }
    @media (min-width: 1440px) {
      #elementor-template-library-preview iframe {
        width: 1710px; } }

.elementor-template-library-blank-icon {
  font-size: 65px;
  margin-top: 45px;
  color: #c2cbd2;
  line-height: 1; }
  .elementor-template-library-blank-icon img {
    width: 70px; }
  .elementor-template-library-blank-icon .elementor-template-library-no-results {
    width: 200px; }

.elementor-template-library-blank-title {
  font-size: 30px;
  margin-top: 40px; }
  @media (max-width: 1439px) {
    .elementor-template-library-blank-title {
      font-size: 25px; } }

.elementor-template-library-blank-message {
  font-size: 18px;
  color: #a4afb7;
  margin-top: 15px;
  font-weight: 300; }
  @media (max-width: 1439px) {
    .elementor-template-library-blank-message {
      font-size: 16px;
      margin-top: 10px; } }

#elementor-template-library-save-template-form {
  margin-top: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  #elementor-template-library-save-template-form > * {
    height: 55px;
    font-size: 16px; }

#elementor-template-library-save-template-name {
  width: 500px;
  background-color: #fff;
  font-weight: 300;
  color: #a4afb7;
  padding-left: 25px;
  -webkit-border-radius: 3px 0 0 3px;
          border-radius: 3px 0 0 3px;
  border: none; }

#elementor-template-library-save-template-submit {
  width: 150px;
  -webkit-border-radius: 0 3px 3px 0;
          border-radius: 0 3px 3px 0; }
  #elementor-template-library-save-template-submit:hover {
    -webkit-box-shadow: none;
            box-shadow: none; }

#elementor-template-library-import-form {
  width: 95%;
  background-color: rgba(255, 255, 255, 0.5);
  padding: 60px;
  border: 2px dashed #d5dadf;
  margin: 35px auto;
  -webkit-transition: background-color 0.5s;
  -o-transition: background-color 0.5s;
  transition: background-color 0.5s; }
  #elementor-template-library-import-form:hover {
    background-color: rgba(255, 255, 255, 0.9); }
  #elementor-template-library-import-form-or {
    margin-top: 15px;
    font-size: 18px; }
  #elementor-template-library-import-form-label {
    margin-top: 20px;
    padding: 15px 35px;
    display: inline-block; }
  #elementor-template-library-import-form-input {
    display: none; }
  #elementor-template-library-import-form.elementor-drag-over {
    border: 3px dashed #71d7f7; }

#elementor-template-library-import .elementor-template-library-blank-icon {
  margin-top: 0; }

#elementor-template-library-import .elementor-template-library-blank-message {
  margin-top: 20px; }

.e-route-library-connect #elementor-template-library-modal .dialog-message {
  max-height: 95vh;
  padding: 100px 0 0;
  min-height: 550px; }

#elementor-template-library-connect-logo {
  font-size: 20px; }

#elementor-template-library-connect__button {
  display: inline-block;
  position: relative;
  z-index: 1;
  margin-top: 25px;
  padding: 12px 24px;
  font-size: 14px; }

#elementor-template-library-connect__background-image-left-1 {
  right: 22.4%;
  bottom: -29%;
  -webkit-animation: 1.5s fadeIn, 1.5s slideDown, 3.5s mover 1.5s infinite alternate;
          animation: 1.5s fadeIn, 1.5s slideDown, 3.5s mover 1.5s infinite alternate; }

#elementor-template-library-connect__background-image-left-2 {
  right: 46.25%;
  bottom: -15.5%;
  -webkit-animation: 3s fadeIn, 3s slideDown, 2s mover 3s infinite alternate;
          animation: 3s fadeIn, 3s slideDown, 2s mover 3s infinite alternate; }

#elementor-template-library-connect__background-image-right-1 {
  left: 37%;
  bottom: -41%;
  -webkit-animation: 2.5s fadeIn, 2.5s slideDown, 2s mover 2.5s infinite alternate;
          animation: 2.5s fadeIn, 2.5s slideDown, 2s mover 2.5s infinite alternate; }

#elementor-template-library-connect__background-image-right-2 {
  left: 48%;
  bottom: -12.5%;
  -webkit-animation: 1.5s fadeIn, 1.5s slideDown, 1.5s mover 1.5s infinite alternate;
          animation: 1.5s fadeIn, 1.5s slideDown, 1.5s mover 1.5s infinite alternate; }

.elementor-template-library-connect__background-image {
  position: absolute; }

.elementor-template-library-blank-footer {
  position: absolute;
  bottom: 70px;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  color: #a4afb7;
  font-style: italic; }
  @media (max-height: 700px) {
    .elementor-template-library-blank-footer {
      display: none; } }

#elementor-template-library-footer-banner {
  padding-bottom: 45px; }
  #elementor-template-library-footer-banner i {
    color: #c2cbd2;
    font-size: 56px;
    margin-top: 40px; }
  #elementor-template-library-footer-banner .elementor-nerd-box-icon {
    margin-top: 70px; }
  #elementor-template-library-footer-banner .elementor-excerpt {
    color: #a4afb7;
    font-size: 15px;
    font-weight: 500;
    margin-top: 20px; }

#elementor-template-library-templates-empty {
  width: 100%;
  margin-top: 40px; }

#elementor-template-library-error-dialog .dialog-message {
  text-align: start; }

#elementor-template-library-error-info {
  margin-top: 10px; }

@media (max-width: 1439px) {
  .elementor-template-library-local-column-1 {
    width: 33%; }
  .elementor-template-library-local-column-2 {
    width: 10%; }
  .elementor-template-library-local-column-3 {
    width: 15%; }
  .elementor-template-library-local-column-4 {
    width: 15%; }
  .elementor-template-library-local-column-5 {
    width: 27%; } }

@media (min-width: 1440px) {
  .elementor-template-library-local-column-1 {
    width: 25%; }
  .elementor-template-library-local-column-2 {
    width: 17%; }
  .elementor-template-library-local-column-3 {
    width: 17%; }
  .elementor-template-library-local-column-4 {
    width: 17%; }
  .elementor-template-library-local-column-5 {
    width: 24%; } }

@media (max-width: 1024px) {
  .elementor-template-library-local-column-3 {
    display: none; }
  .elementor-template-library-local-column-5 {
    width: 41%; } }

.elementor-tags-list {
  display: none;
  position: absolute;
  width: 260px;
  max-height: 300px;
  overflow: auto;
  padding-bottom: 5px;
  background-color: #fff;
  border: 1px solid #a4afb7;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  z-index: 10000; }
  .elementor-tags-list__group-title {
    color: #495157;
    font-weight: bold;
    font-size: 12px;
    padding: 10px 15px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .elementor-tags-list__group-title .eicon-info-circle {
      padding-right: 5px;
      color: #71d7f7;
      font-size: 14px; }
  .elementor-tags-list__item {
    font-size: 10px;
    padding: 6px 15px;
    cursor: pointer; }
    .elementor-tags-list__item:before {
      content: '>';
      font-size: 8px;
      padding-right: 5px; }
    .elementor-tags-list__item:hover {
      background-color: #e6e9ec; }
  .elementor-tags-list__teaser {
    border-top: 2px solid #d5dadf;
    padding-top: 4px;
    margin-top: 4px; }
    .elementor-tags-list__teaser-title {
      color: #6d7882; }
    .elementor-tags-list__teaser-text {
      padding: 2px 15px 8px;
      line-height: 1.5;
      font-size: 12px; }
    .elementor-tags-list__teaser-link {
      color: #93003c;
      text-decoration: underline;
      font-style: italic;
      font-weight: bold; }

.elementor-dynamic-cover {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 27px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }
  .elementor-dynamic-cover__title {
    padding: 0 8px;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    white-space: nowrap;
    -o-text-overflow: ellipsis;
       text-overflow: ellipsis;
    overflow: hidden; }
  .elementor-dynamic-cover__settings, .elementor-dynamic-cover__remove {
    color: #c2cbd2;
    cursor: pointer;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s; }
    .elementor-dynamic-cover__settings:hover, .elementor-dynamic-cover__remove:hover {
      color: #a4afb7; }
  .elementor-control-type-wysiwyg .elementor-dynamic-cover {
    margin-top: 10px; }

.elementor-tag-settings-popup {
  position: absolute;
  width: 260px;
  background-color: #e6e9ec;
  -webkit-box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.3);
          box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.3);
  z-index: 1; }
  .elementor-tag-settings-popup:before {
    content: '';
    position: absolute;
    top: -20px;
    left: 5px;
    border: 10px solid transparent;
    border-bottom-color: #fff; }
  .elementor-tag-settings-popup .elementor-control-type-section:first-child {
    margin: 0; }

.elementor-tag-controls-stack-empty {
  background-color: #fff;
  padding: 10px;
  font-size: 13px;
  text-align: center; }

.elementor-control-dynamic-switcher {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  height: 27px;
  cursor: pointer;
  border: 1px solid #d5dadf;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  background: #fff; }
  .elementor-control-dynamic-switcher.e-control-tool {
    height: 20px;
    border: 0; }
  .elementor-control-dynamic-switcher-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .elementor-control-dynamic-switcher .eicon-database {
    font-size: 12px; }

.elementor-control-dynamic-value .elementor-control-tag-area,
.elementor-control-dynamic-value .elementor-control-dynamic-switcher,
.elementor-control-dynamic-value .e-global__popover-toggle {
  display: none; }

#elementor-toast {
  position: absolute;
  width: 280px;
  padding: 20px;
  -webkit-border-radius: 5px;
          border-radius: 5px;
  color: #d5dadf;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 10000; }
  #elementor-toast .dialog-message {
    font-size: 13px; }
  #elementor-toast .dialog-buttons-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    margin-top: 15px; }
  #elementor-toast .dialog-button {
    color: #fcb92c;
    margin: 0 5px;
    text-transform: uppercase;
    cursor: pointer; }
    #elementor-toast .dialog-button:last-child {
      margin-right: 0; }

.elementor-context-menu {
  position: absolute;
  width: 200px;
  background-color: #fff;
  border: 1px solid #e6e9ec;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  -webkit-box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.09);
          box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.09);
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  z-index: 101; }
  .elementor-context-menu-list__group {
    padding: 5px 0; }
    .elementor-context-menu-list__group:not(:last-child) {
      border-bottom: 1px solid #e6e9ec; }
  .elementor-context-menu-list__item {
    padding: 5px 10px;
    padding-right: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    cursor: pointer; }
    .elementor-context-menu-list__item--disabled {
      cursor: default;
      color: #d5dadf; }
    .elementor-context-menu-list__item:not(.elementor-context-menu-list__item--disabled):hover {
      background-color: #71d7f7; }
      .elementor-context-menu-list__item:not(.elementor-context-menu-list__item--disabled):hover > * {
        color: #fff; }
    .elementor-context-menu-list__item__icon {
      width: 20px;
      color: #c2cbd2; }
    .elementor-context-menu-list__item__title {
      -webkit-box-flex: 1;
          -ms-flex-positive: 1;
              flex-grow: 1;
      white-space: nowrap;
      -o-text-overflow: ellipsis;
         text-overflow: ellipsis;
      overflow: hidden; }
    .elementor-context-menu-list__item__shortcut {
      color: #d5dadf; }
    .elementor-context-menu-list__item.elementor-context-menu-list__item-delete:not(.elementor-context-menu-list__item--disabled):hover {
      background-color: #d72b3f; }
  .elementor-context-menu .eicon-pro-icon {
    color: #fcb92c; }

#elementor-hotkeys {
  text-align: left; }
  #elementor-hotkeys__content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    overflow: hidden;
    margin-bottom: 30px; }
    @media (max-width: 1024px) {
      #elementor-hotkeys__content {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column; } }
  #elementor-hotkeys__actions .elementor-hotkeys__list {
    -webkit-border-radius: 3px 0 0 3px;
            border-radius: 3px 0 0 3px; }
    @media (max-width: 1024px) {
      #elementor-hotkeys__actions .elementor-hotkeys__list {
        -webkit-border-radius: 3px;
                border-radius: 3px; } }
  @media (min-width: 1025px) {
    #elementor-hotkeys__actions .elementor-hotkeys__header,
    #elementor-hotkeys__actions .elementor-hotkeys__list {
      padding-right: 25px; } }
  @media (min-width: 1440px) {
    #elementor-hotkeys__actions .elementor-hotkeys__header,
    #elementor-hotkeys__actions .elementor-hotkeys__list {
      padding-right: 50px; } }
  #elementor-hotkeys__navigation .elementor-hotkeys__list {
    -webkit-border-radius: 0 3px 3px 0;
            border-radius: 0 3px 3px 0; }
    @media (max-width: 1024px) {
      #elementor-hotkeys__navigation .elementor-hotkeys__list {
        -webkit-border-radius: 3px;
                border-radius: 3px; } }
  @media (min-width: 1025px) {
    #elementor-hotkeys__navigation .elementor-hotkeys__header {
      padding-left: 25px; } }
  @media (min-width: 1440px) {
    #elementor-hotkeys__navigation .elementor-hotkeys__header {
      padding-left: 50px; } }
  @media (min-width: 1025px) {
    #elementor-hotkeys__navigation .elementor-hotkeys__list {
      padding-left: 15px; } }
  @media (min-width: 1440px) {
    #elementor-hotkeys__navigation .elementor-hotkeys__list {
      padding-left: 40px; } }

.elementor-hotkeys__col {
  width: 50%; }
  @media (max-width: 1024px) {
    .elementor-hotkeys__col {
      width: 100%; } }

.elementor-hotkeys__header, .elementor-hotkeys__list {
  width: 100%; }

.elementor-hotkeys__header {
  padding: 10px 30px;
  font-weight: 500; }
  @media (max-width: 479px) {
    .elementor-hotkeys__header {
      padding-right: 10px;
      padding-left: 10px; } }

.elementor-hotkeys__list {
  background-color: #ffffff;
  height: calc(100% - 42px);
  padding: 10px 20px; }
  @media (max-width: 479px) {
    .elementor-hotkeys__list {
      padding: 0; } }
  @media (max-width: 1024px) {
    .elementor-hotkeys__list {
      margin-bottom: 30px; } }
  @media (max-width: 1024px) {
    .elementor-hotkeys__list {
      height: auto; } }

.elementor-hotkeys__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 20px 10px;
  border-bottom: 1px solid #eceeef; }
  .elementor-hotkeys__item:last-child {
    margin-bottom: 30px; }
    @media (max-width: 479px) {
      .elementor-hotkeys__item:last-child {
        margin-bottom: 0; } }
  .elementor-hotkeys__item--label {
    font-size: 13px;
    font-weight: 400;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }
  .elementor-hotkeys__item--shortcut {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .elementor-hotkeys__item--shortcut span {
      position: relative;
      background-color: #eceeef;
      padding: 5px 12px;
      margin-right: 27px;
      -webkit-border-radius: 3px;
              border-radius: 3px; }
      @media (max-width: 479px) {
        .elementor-hotkeys__item--shortcut span {
          padding: 4px 9px;
          margin-right: 23px; } }
      .elementor-hotkeys__item--shortcut span:after {
        content: '+';
        position: absolute;
        right: -18px;
        width: 9px;
        text-align: center; }
        @media (max-width: 479px) {
          .elementor-hotkeys__item--shortcut span:after {
            right: -16px; } }
      .elementor-hotkeys__item--shortcut span:last-child {
        margin-right: 0; }
        .elementor-hotkeys__item--shortcut span:last-child:after {
          display: none; }

.ui-resizable-n {
  top: -5px; }

.ui-resizable-e {
  right: -5px; }

.ui-resizable-s {
  bottom: -5px; }

.ui-resizable-w {
  left: -5px; }

.ui-resizable-ne {
  top: -5px;
  right: -5px; }

.ui-resizable-nw {
  top: -5px;
  left: -5px; }

.ui-resizable-se {
  bottom: -5px;
  right: -5px; }

.ui-resizable-sw {
  bottom: -5px;
  left: -5px; }

.ui-resizable-n, .ui-resizable-s {
  left: 0;
  height: 10px;
  width: 100%;
  cursor: ns-resize; }

.ui-resizable-e, .ui-resizable-w {
  top: 0;
  height: 100%;
  width: 10px;
  cursor: ew-resize; }

.ui-resizable-ne, .ui-resizable-nw, .ui-resizable-se, .ui-resizable-sw {
  height: 15px;
  width: 15px; }

.ui-resizable-nw, .ui-resizable-se {
  cursor: nwse-resize; }

.ui-resizable-ne, .ui-resizable-sw {
  cursor: nesw-resize; }

.ui-resizable-handle {
  position: absolute; }

.ui-resizable-resizing {
  pointer-events: none; }

body {
  --e-editor-navigator-width: 240px; }

#elementor-navigator {
  position: fixed;
  top: 100px;
  width: var(--e-editor-navigator-width);
  height: 50vh;
  right: 30px;
  background-color: #fff;
  -webkit-box-shadow: 0 2px 20px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 2px 20px 0 rgba(0, 0, 0, 0.1);
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  overflow: hidden;
  z-index: 100;
  display: none; }
  body.elementor-navigator-docked #elementor-navigator {
    top: 0;
    right: 0;
    height: 100%; }
  body:not(.elementor-navigator-docked) #elementor-navigator {
    -webkit-border-radius: 5px;
            border-radius: 5px; }
  #elementor-navigator__inner {
    height: 100%;
    background-color: #e6e9ec; }
  #elementor-navigator__header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 12px 10px;
    background-color: #fff;
    border-bottom: 1px solid #e6e9ec;
    cursor: move; }
  #elementor-navigator__close, #elementor-navigator__toggle-all {
    -webkit-transition: color .5s;
    -o-transition: color .5s;
    transition: color .5s;
    cursor: pointer; }
    #elementor-navigator__close:not(:hover), #elementor-navigator__toggle-all:not(:hover) {
      color: #a4afb7; }
  #elementor-navigator__toggle-all {
    font-size: 13px; }
  #elementor-navigator__close {
    font-size: 11px; }
  #elementor-navigator__elements {
    height: calc(100% - 49px);
    overflow: auto;
    position: relative; }
    .elementor-navigator-docked #elementor-navigator__elements {
      height: calc(100% - 35px); }
    #elementor-navigator__elements .elementor-nerd-box {
      padding: 25px; }
  #elementor-navigator__footer {
    position: absolute;
    width: 100%;
    left: 0;
    bottom: 0;
    text-align: center;
    background-color: #fff;
    border-top: 1px solid #e6e9ec;
    color: #a4afb7; }
    .elementor-navigator-docked #elementor-navigator__footer {
      display: none; }

.elementor-navigator__item {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 30px;
  font-size: 11px;
  border-bottom: 1px solid #e6e9ec;
  cursor: pointer;
  -webkit-transition: padding .5s linear;
  -o-transition: padding .5s linear;
  transition: padding .5s linear;
  overflow: hidden; }
  .elementor-navigator__item:not(.elementor-active) .elementor-navigator__element__list-toggle i {
    -webkit-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
            transform: rotate(-90deg); }
  .elementor-navigator__item > * {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .elementor-navigator__item + .elementor-navigator__elements {
    display: none; }

.elementor-navigator__elements .elementor-empty-view {
  padding: 10px;
  border-bottom: 1px solid #e6e9ec; }
  .elementor-navigator__elements .elementor-empty-view__title {
    margin-left: 23px;
    color: #c2cbd2;
    font-size: 10px;
    font-style: italic; }

.elementor-navigator__elements .ui-sortable-helper {
  background-color: #fff;
  -webkit-box-shadow: 1px 2px 5px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 1px 2px 5px 0 rgba(0, 0, 0, 0.1);
  -webkit-transform: rotate(4deg);
      -ms-transform: rotate(4deg);
          transform: rotate(4deg);
  border: 1px solid #e6e9ec;
  pointer-events: none; }

.elementor-navigator__elements .ui-sortable-placeholder {
  background-color: #f1f3f5; }

.elementor-navigator__element.elementor-dragging-on-child > .elementor-navigator__elements > .elementor-empty-view {
  border-top: 2px solid #71d7f7; }
  .elementor-navigator__element.elementor-dragging-on-child > .elementor-navigator__elements > .elementor-empty-view .elementor-empty-view__title {
    display: none; }
  .elementor-navigator__element.elementor-dragging-on-child > .elementor-navigator__elements > .elementor-empty-view + .ui-sortable-placeholder {
    display: none; }

.elementor-navigator__element:not(.elementor-navigator__element--has-children) .elementor-navigator__element__list-toggle {
  visibility: hidden; }

.elementor-navigator__element:not(.elementor-navigator__element--hidden) > .elementor-navigator__item .elementor-navigator__element__toggle {
  color: #71d7f7; }

.elementor-navigator__element:not(.elementor-navigator__element--hidden) > .elementor-navigator__item:not(:hover) .elementor-navigator__element__toggle {
  display: none; }

.elementor-navigator__element:not(.elementor-navigator__element--hidden) > .elementor-navigator__item.elementor-editing {
  background-color: #71d7f7; }
  .elementor-navigator__element:not(.elementor-navigator__element--hidden) > .elementor-navigator__item.elementor-editing > * {
    color: #fff; }

.elementor-navigator__element__list-toggle {
  margin-right: 7px;
  -webkit-transition: -webkit-transform .3s;
  transition: -webkit-transform .3s;
  -o-transition: transform .3s;
  transition: transform .3s;
  transition: transform .3s, -webkit-transform .3s;
  color: #a4afb7; }

.elementor-navigator__element__element-type {
  margin-right: 8px; }

.elementor-navigator__element__title {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  overflow: hidden; }
  .elementor-navigator__element__title__text {
    white-space: nowrap;
    -webkit-user-select: text; }
    .elementor-navigator__element__title__text[contenteditable="true"] {
      outline: none;
      color: #6d7882;
      background-color: #fff;
      padding: 2px 3px;
      -webkit-box-shadow: 0 0 4px rgba(0, 0, 0, 0.2);
              box-shadow: 0 0 4px rgba(0, 0, 0, 0.2); }
    .elementor-navigator__element__title__text:not([contenteditable="true"]) {
      white-space: nowrap;
      -o-text-overflow: ellipsis;
         text-overflow: ellipsis;
      overflow: hidden; }

.elementor-navigator__element__toggle {
  position: absolute;
  right: 15px;
  height: 100%;
  z-index: 0;
  font-size: 13px; }

.elementor-navigator__element__indicators {
  position: relative;
  -webkit-transition: -webkit-transform .5s;
  transition: -webkit-transform .5s;
  -o-transition: transform .5s;
  transition: transform .5s;
  transition: transform .5s, -webkit-transform .5s;
  padding-left: 5px;
  z-index: 91; }
  .elementor-navigator__element__indicators:not(:hover) {
    -webkit-transform: translateX(calc(100% - 8px));
        -ms-transform: translateX(calc(100% - 8px));
            transform: translateX(calc(100% - 8px)); }

.elementor-navigator__element__indicator {
  height: 100%;
  width: 31px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #6d7882;
  background-color: #fff;
  border-left: 1px solid #e6e9ec; }
  .elementor-navigator__element__indicator:first-child {
    border-left: 3px solid #71d7f7; }
    .elementor-editing .elementor-navigator__element__indicator:first-child {
      border-color: #41c9f4; }
  .elementor-navigator__element__indicator:hover {
    color: #495157; }

.elementor-navigator__element--hidden .elementor-navigator__element__title,
.elementor-navigator__element--hidden .elementor-navigator__element__toggle {
  opacity: .5; }

.elementor-navigator__element-column {
  background-color: #fafbfb; }
  .elementor-navigator__element-column > .elementor-navigator__item .elementor-navigator__element__element-type {
    color: #a4afb7; }

.elementor-navigator__element-section {
  background-color: #fff; }

#elementor-notice-bar {
  position: absolute;
  width: 100%;
  bottom: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 40px;
  color: #fff;
  background-color: #6d7882;
  padding: 0 50px; }
  #elementor-notice-bar__message {
    padding-left: 15px;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }
    #elementor-notice-bar__message a {
      text-decoration: underline; }
  #elementor-notice-bar__action {
    text-transform: uppercase; }
  #elementor-notice-bar__close {
    margin: 0 20px;
    cursor: pointer; }
  #elementor-notice-bar i {
    font-size: 16px;
    opacity: .9; }
  #elementor-notice-bar a {
    color: #fff; }
  #elementor-notice-bar a,
  #elementor-notice-bar i {
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s; }
    #elementor-notice-bar a:hover,
    #elementor-notice-bar i:hover {
      color: #D4D4D4; }

body:not(.elementor-device-desktop) #elementor-notice-bar {
  display: none; }

#elementor-fatal-error-dialog.elementor-preview-loading-error .dialog-header {
  color: #495157; }

#elementor-fatal-error-dialog.elementor-preview-loading-error .dialog-message a {
  color: #6d7882;
  text-decoration: underline;
  font-style: italic; }

#elementor-preview-debug-link-text {
  display: inline-block; }

#elementor-icons-manager-modal .dialog-message {
  padding: 0;
  height: 700px; }

#elementor-icons-manager-modal .dialog-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

#elementor-icons-manager-modal .dialog-buttons-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

#elementor-icons-manager__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

@media (max-width: 479px) {
  #elementor-icons-manager__sidebar {
    display: none; } }

#elementor-icons-manager__tab-links {
  margin-top: 30px; }

#elementor-icons-manager__upload {
  margin: 20px 45px;
  padding-top: 35px;
  border-top: 1px solid #e6e9ec;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  @media (max-width: 1439px) {
    #elementor-icons-manager__upload {
      margin: 20px 25px; } }
  #elementor-icons-manager__upload__title {
    color: #a4afb7;
    font-size: 11px;
    text-transform: uppercase; }

#elementor-icons-manager__main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 30px 80px 0; }
  @media (max-width: 1439px) {
    #elementor-icons-manager__main {
      padding: 30px 50px 0; } }
  @media (max-width: 479px) {
    #elementor-icons-manager__main {
      width: 100%; } }

#elementor-icons-manager__search {
  position: relative; }
  #elementor-icons-manager__search input {
    padding: 8px 15px;
    background-color: #fff;
    border: none; }
    #elementor-icons-manager__search input::-webkit-input-placeholder {
      font-style: italic; }
    #elementor-icons-manager__search input::-moz-placeholder {
      font-style: italic; }
    #elementor-icons-manager__search input::-ms-input-placeholder {
      font-style: italic; }
    #elementor-icons-manager__search input::placeholder {
      font-style: italic; }
  #elementor-icons-manager__search i {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    right: 15px; }

#elementor-icons-manager__tab__wrapper {
  overflow: auto;
  margin: 25px -15px 0;
  padding: 0 15px 15px; }

#elementor-icons-manager__tab__title {
  color: #556068;
  font-size: 16px;
  font-weight: 500;
  text-align: left; }
  @media (max-width: 479px) {
    #elementor-icons-manager__tab__title {
      display: none; } }

#elementor-icons-manager__tab__content {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  grid-gap: 20px;
  margin: 20px 0; }
  @media (max-width: 1439px) {
    #elementor-icons-manager__tab__content {
      grid-template-columns: repeat(6, 1fr); } }
  @media (max-width: 1024px) {
    #elementor-icons-manager__tab__content {
      grid-template-columns: repeat(5, 1fr); } }
  @media (max-width: 767px) {
    #elementor-icons-manager__tab__content {
      grid-template-columns: repeat(4, 1fr); } }
  @media (max-width: 479px) {
    #elementor-icons-manager__tab__content {
      grid-template-columns: repeat(3, 1fr); } }

#elementor-icons-manager__promotion {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding-top: 70px; }
  #elementor-icons-manager__promotion__icon {
    font-size: 60px;
    color: #c2cbd2; }
  #elementor-icons-manager__promotion__text {
    width: 300px;
    font-size: 16px;
    padding-top: 25px; }
  #elementor-icons-manager__promotion__link {
    margin-top: 20px; }

.elementor-icons-manager__tab-link {
  padding: 15px 0 15px 45px;
  font-size: 14px;
  color: #6d7882;
  text-align: left;
  cursor: pointer;
  position: relative; }
  .elementor-icons-manager__tab-link i {
    font-size: 20px;
    padding-right: 15px;
    color: #a4afb7; }
  @media (max-width: 1439px) {
    .elementor-icons-manager__tab-link {
      padding: 15px 15px 15px 25px;
      font-size: 11px; }
      .elementor-icons-manager__tab-link i {
        font-size: 15px; } }
  @media (max-width: 1024px) {
    .elementor-icons-manager__tab-link i {
      display: none; } }
  .elementor-icons-manager__tab-link.elementor-active {
    background-color: #fff;
    -webkit-box-shadow: 0 6px 20px 0 rgba(0, 0, 0, 0.1);
            box-shadow: 0 6px 20px 0 rgba(0, 0, 0, 0.1); }
    .elementor-icons-manager__tab-link.elementor-active:after {
      content: '';
      position: absolute;
      height: 100%;
      width: 5px;
      top: 0;
      left: 0;
      background-color: #71d7f7; }
    .elementor-icons-manager__tab-link.elementor-active i {
      color: #71d7f7; }

.elementor-icons-manager__tab__item {
  position: relative;
  height: 0;
  padding-bottom: 100%;
  background-color: #fff;
  -webkit-box-shadow: 0 1px 12px rgba(0, 0, 0, 0.05);
          box-shadow: 0 1px 12px rgba(0, 0, 0, 0.05);
  -webkit-border-radius: 3px;
          border-radius: 3px;
  cursor: pointer;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  overflow: hidden; }
  .elementor-icons-manager__tab__item:hover {
    -webkit-box-shadow: 0 1px 14px rgba(0, 0, 0, 0.16);
            box-shadow: 0 1px 14px rgba(0, 0, 0, 0.16); }
  .elementor-icons-manager__tab__item.elementor-selected {
    -webkit-box-shadow: 0 1px 12px rgba(0, 0, 0, 0.05), 0 0 0 3px #71d7f7;
            box-shadow: 0 1px 12px rgba(0, 0, 0, 0.05), 0 0 0 3px #71d7f7; }
  .elementor-icons-manager__tab__item__content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    padding: 1px; }
  .elementor-icons-manager__tab__item__icon {
    font-size: 25px;
    color: #6d7882; }
  .elementor-icons-manager__tab__item__name {
    color: #c2cbd2;
    font-size: 11px;
    padding: 13px 20px 0;
    max-width: 100%;
    white-space: nowrap;
    -o-text-overflow: ellipsis;
       text-overflow: ellipsis;
    overflow: hidden; }

#elementor-enable-fa5-dialog a {
  font-style: italic;
  text-decoration: underline; }

#elementor-enable-fa5-dialog .dialog-confirm-ok {
  color: #39b54a; }

.elementor-color-picker__header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: bold;
  padding: 10px;
  -webkit-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); }

.e-color-picker__tools {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.e-control-color--no-value .pcr-button {
  background-image: -webkit-linear-gradient(315deg, transparent 46%, #ff3030 50%, transparent 54%);
  background-image: -o-linear-gradient(315deg, transparent 46%, #ff3030 50%, transparent 54%);
  background-image: linear-gradient(135deg, transparent 46%, #ff3030 50%, transparent 54%);
  -webkit-background-size: cover;
          background-size: cover;
  background-color: transparent;
  border: 1px solid #d5dadf; }

.pcr-app[data-theme=monolith] {
  padding: 0; }

.pcr-result {
  border-right-width: 1px;
  -webkit-border-radius: 3px;
          border-radius: 3px; }

.pcr-selection, .pcr-interaction {
  padding: 0 20px; }

.pcr-interaction {
  padding-bottom: 20px; }

.pcr .elementor-control-dynamic-switcher {
  height: 20px;
  border: 0; }

.select2-container {
  width: 100% !important;
  outline: none;
  z-index: 9999;
  font-size: 12px; }
  .select2-container .e-select2-placeholder {
    color: #a4afb7; }
  .select2-container.select2-container--default .select2-selection--single {
    height: 27px; }
    .select2-container.select2-container--default .select2-selection--single .select2-selection__rendered {
      color: #6d7882;
      line-height: 27px; }
  .select2-container.select2-container--default .select2-selection--multiple {
    min-height: 27px;
    line-height: 0; }
    .select2-container.select2-container--default .select2-selection--multiple .select2-selection__clear {
      display: none; }
    .select2-container.select2-container--default .select2-selection--multiple .select2-selection__choice {
      background-color: #f1f3f5;
      line-height: 1.2;
      font-size: 10px;
      border: none;
      -webkit-border-radius: 0;
              border-radius: 0;
      padding: 2px 3px; }
      .select2-container.select2-container--default .select2-selection--multiple .select2-selection__choice.select2-selection__e-plus-button {
        cursor: pointer;
        width: 16.67px;
        text-indent: -9999px;
        position: relative; }
        .select2-container.select2-container--default .select2-selection--multiple .select2-selection__choice.select2-selection__e-plus-button:after {
          content: '\e815';
          font-family: "eicons";
          color: #a4afb7;
          text-indent: 0;
          position: absolute;
          left: 0;
          top: 0;
          width: 100%;
          height: 100%;
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-pack: center;
              -ms-flex-pack: center;
                  justify-content: center;
          -webkit-box-align: center;
              -ms-flex-align: center;
                  align-items: center; }
    .select2-container.select2-container--default .select2-selection--multiple .select2-selection__rendered {
      padding-bottom: 5px; }
    .select2-container.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
      color: #a4afb7;
      margin-right: 3px; }
  .select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--single,
  .select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--multiple {
    border-color: #d5dadf; }
  .select2-container.select2-container--open .select2-selection--single,
  .select2-container.select2-container--open .select2-selection--multiple, .select2-container.select2-container--focus .select2-selection--single,
  .select2-container.select2-container--focus .select2-selection--multiple {
    border-color: #a4afb7; }

.select2-selection {
  outline: none; }
  .select2-selection--single {
    height: 27px; }

.select2-selection__arrow {
  height: 27px;
  top: 0; }

.select2-results__option[aria-selected=true] {
  color: #495157; }
  .select2-results__option[aria-selected=true]:not(.select2-results__option--highlighted) {
    background-color: initial; }

.select2-dropdown {
  border-color: #a4afb7; }
  .select2-dropdown .select2-search__field {
    outline: none; }
/*# sourceMappingURL=editor.css.map */assets/css/editor-preview-rtl.min.css000064400000270430151327220410013701 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
@charset "UTF-8";.elementor-control-unit-1{width:27px}.elementor-control-unit-2{width:54px}.elementor-control-unit-3{width:81px}.elementor-control-unit-4{width:108px}.elementor-control-unit-5{max-width:400px;width:52%}.elementor-tags-list{display:none;position:absolute;width:260px;max-height:300px;overflow:auto;padding-bottom:5px;background-color:#fff;border:1px solid #a4afb7;-webkit-border-radius:3px;border-radius:3px;z-index:10000}.elementor-tags-list__group-title{color:#495157;font-weight:700;font-size:12px;padding:10px 15px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-tags-list__group-title .eicon-info-circle{padding-left:5px;color:#71d7f7;font-size:14px}.elementor-tags-list__item{font-size:10px;padding:6px 15px;cursor:pointer}.elementor-tags-list__item:before{content:">";font-size:8px;padding-left:5px}.elementor-tags-list__item:hover{background-color:#e6e9ec}.elementor-tags-list__teaser{border-top:2px solid #d5dadf;padding-top:4px;margin-top:4px}.elementor-tags-list__teaser-title{color:#6d7882}.elementor-tags-list__teaser-text{padding:2px 15px 8px;line-height:1.5;font-size:12px}.elementor-tags-list__teaser-link{color:#93003c;text-decoration:underline;font-style:italic;font-weight:700}.elementor-dynamic-cover{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%;height:27px;-webkit-box-sizing:border-box;box-sizing:border-box}.elementor-dynamic-cover__title{padding:0 8px;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}.elementor-dynamic-cover__remove,.elementor-dynamic-cover__settings{color:#c2cbd2;cursor:pointer;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.elementor-dynamic-cover__remove:hover,.elementor-dynamic-cover__settings:hover{color:#a4afb7}.elementor-control-type-wysiwyg .elementor-dynamic-cover{margin-top:10px}.elementor-tag-settings-popup{position:absolute;width:260px;background-color:#e6e9ec;-webkit-box-shadow:1px 1px 10px rgba(0,0,0,.3);box-shadow:1px 1px 10px rgba(0,0,0,.3);z-index:1}.elementor-tag-settings-popup:before{content:"";position:absolute;top:-20px;right:5px;border:10px solid transparent;border-bottom-color:#fff}.elementor-tag-settings-popup .elementor-control-type-section:first-child{margin:0}.elementor-tag-controls-stack-empty{background-color:#fff;padding:10px;font-size:13px;text-align:center}.elementor-control-dynamic-switcher{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-ms-flex-negative:0;flex-shrink:0;height:27px;cursor:pointer;border:1px solid #d5dadf;-webkit-border-radius:3px;border-radius:3px;background:#fff}.elementor-control-dynamic-switcher.e-control-tool{height:20px;border:0}.elementor-control-dynamic-switcher-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-control-dynamic-switcher .eicon-database{font-size:12px}.elementor-control-dynamic-value .e-global__popover-toggle,.elementor-control-dynamic-value .elementor-control-dynamic-switcher,.elementor-control-dynamic-value .elementor-control-tag-area{display:none}.elementor-panel-box{margin-top:10px;background-color:#fff}.elementor-panel-box-content{padding:20px 20px 10px}.elementor-button{display:inline-block}.elementor-panel-alert{background-color:#fcfcfc;padding:15px;border-right:3px solid transparent;position:relative;font-size:12px;font-weight:300;font-style:italic;line-height:1.5;text-align:right;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px;-webkit-box-shadow:0 1px 4px 0 rgba(0,0,0,.07);box-shadow:0 1px 4px 0 rgba(0,0,0,.07)}.elementor-panel-alert a{color:inherit}.elementor-panel-alert.elementor-panel-alert-info{border-color:#71d7f7;background-color:#f3fcff}.elementor-panel-alert.elementor-panel-alert-success{border-color:#39b54a}.elementor-panel-alert.elementor-panel-alert-warning{border-color:#fcb92c}.elementor-panel-alert.elementor-panel-alert-danger{border-color:#d72b3f}.elementor-label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;-webkit-border-radius:.25em;border-radius:.25em;text-transform:capitalize}.elementor-label.elementor-label-default{background-color:#a4afb7}.elementor-label.elementor-label-info{background-color:#5bc0de}.elementor-label.elementor-label-success{background-color:#5cb85c}.elementor-label.elementor-label-warning{background-color:#f0ad4e}.elementor-label.elementor-label-danger{background-color:#d9534f}.elementor-control-field-description,.elementor-descriptor{font-size:11px;font-style:italic;line-height:1.4;color:#a4afb7}.elementor-controls-popover{display:none;position:absolute;-webkit-box-shadow:0 2px 15px rgba(0,0,0,.3);box-shadow:0 2px 15px rgba(0,0,0,.3);-webkit-border-radius:3px;border-radius:3px;left:0;right:0;margin:-4px auto 5px;padding-top:15px;width:90%;z-index:10000;background-color:#fff}.elementor-controls-popover:before{content:"";position:absolute;top:-16px;left:22px;border:8px solid transparent;border-bottom-color:#fff}.elementor-controls-popover div.elementor-control{background-color:transparent}.elementor-controls-popover div.elementor-control:before{content:none}#elementor-controls .pojo-widget-button-collapse{display:none}#elementor-panel-global .elementor-nerd-box .elementor-nerd-box-icon{margin-top:20px}.elementor-control{--control-title-size:12px;background-color:#fff;position:relative;padding:0 20px 15px}.elementor-control a{font-weight:500;text-decoration:none;border-bottom:1px dotted transparent;-webkit-transition:all .3s ease-in-out;-o-transition:all ease-in-out .3s;transition:all .3s ease-in-out}.elementor-control a:hover{border-bottom-color:inherit}.elementor-control a.elementor-responsive-switcher{border-bottom:0}.elementor-control .elementor-control-content{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.elementor-control .elementor-control-title{font-size:var(--control-title-size);line-height:1;margin-left:5px}.elementor-control .elementor-control-spinner{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-control.elementor-control-type-divider{padding:0;background-color:transparent}.elementor-control.elementor-control-type-divider .elementor-control-content{border:solid #e6e9ec;border-width:1px 0 0;background-color:#fff;height:15px}.elementor-control.elementor-control-separator-default:not(.elementor-control-type-divider).elementor-control-wp{margin-top:15px}.elementor-control.elementor-control-separator-default:not(.elementor-control-type-divider).elementor-control-wp:before{content:"";height:1px;display:block;margin-bottom:15px;background-color:transparent}.elementor-control.elementor-control-separator-before{padding-top:15px}.elementor-control.elementor-control-separator-before:before{content:"";position:absolute;height:1px;width:100%;top:0;left:0;background-color:#e6e9ec}.elementor-control.elementor-control-separator-after:after{content:"";position:absolute;height:1px;width:100%;bottom:0;left:0;background-color:#e6e9ec}.elementor-control.elementor-control-separator-after+.elementor-control-type-tabs+.elementor-control-separator-default,.elementor-control.elementor-control-separator-after:not(.elementor-hidden-control)+.elementor-control-separator-default{padding-top:15px}.elementor-control.elementor-control-deprecated,.elementor-control.elementor-control-deprecated .elementor-control-field-description{color:#b01b1b}.elementor-control.elementor-control-hidden-label>*>*>.elementor-control-title,.elementor-control.elementor-control-hidden-label>*>.elementor-control-title,.elementor-control.elementor-hidden-control{display:none}.elementor-control.elementor-control-type-heading .elementor-control-title{font-weight:700;margin:0}body:not(.elementor-device-desktop) .elementor-control.elementor-control-responsive-desktop,body:not(.elementor-device-laptop) .elementor-control.elementor-control-responsive-laptop,body:not(.elementor-device-mobile) .elementor-control.elementor-control-responsive-mobile,body:not(.elementor-device-mobile_extra) .elementor-control.elementor-control-responsive-mobile_extra,body:not(.elementor-device-tablet) .elementor-control.elementor-control-responsive-tablet,body:not(.elementor-device-tablet_extra) .elementor-control.elementor-control-responsive-tablet_extra,body:not(.elementor-device-widescreen) .elementor-control.elementor-control-responsive-widescreen{display:none}.elementor-control.elementor-control-type-select .elementor-control-input-wrapper{position:relative}.elementor-control.elementor-control-type-select .elementor-control-input-wrapper select{appearance:none;-webkit-appearance:none;-moz-appearance:none;font-size:12px;font-family:inherit;font-weight:inherit;font-style:inherit;text-transform:inherit;letter-spacing:inherit;line-height:inherit;-ms-flex-preferred-size:100%;flex-basis:100%;padding-right:5px;padding-left:20px;cursor:pointer}.elementor-control.elementor-control-type-select .elementor-control-input-wrapper select.e-select-placeholder{color:#a4afb7}.elementor-control.elementor-control-type-select .elementor-control-input-wrapper option.e-option-placeholder{display:none}.elementor-control.elementor-control-type-select .elementor-control-input-wrapper:after{font-family:eicons;content:"\e8ad";font-size:12px;position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);left:5px;pointer-events:none}.elementor-control-custom_attributes_pro .elementor-nerd-box-message,.elementor-control-custom_css_pro .elementor-nerd-box-message{margin-top:5px}.elementor-control.elementor-control-custom_css_title{font-size:12px}.elementor-control.elementor-open .elementor-panel-heading-toggle .eicon:before,.elementor-panel-scheme-item.elementor-open .elementor-panel-heading-toggle .eicon:before{content:"\e92a"}.elementor-control:not(.elementor-open) .elementor-panel-heading-toggle .eicon:before,.elementor-panel-scheme-item:not(.elementor-open) .elementor-panel-heading-toggle .eicon:before{content:""}.elementor-panel-heading{display:table;table-layout:fixed;height:40px;padding:0 20px;width:100%;border-bottom:1px solid #e6e9ec;cursor:pointer}.elementor-panel-heading>*{display:table-cell;vertical-align:middle}.elementor-panel-heading-toggle{width:20px;color:#495157}.elementor-panel-heading-title{color:#495157;font-weight:700}.elementor-control-wp{line-height:1.5}.elementor-control-wp p{margin:15px 0}.elementor-control-field{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-label-block>.elementor-control-content>.elementor-control-field{-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-label-block>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{width:100%;margin-top:10px}.elementor-label-block.elementor-control-hidden-label.elementor-label-block>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper,.elementor-label-block.elementor-control-hidden-label:not(.elementor-control-dynamic)>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{margin-top:0}.elementor-label-inline>.elementor-control-content>.elementor-control-field>.elementor-control-title{-ms-flex-negative:0;flex-shrink:0}.elementor-label-inline>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{margin-right:auto}.elementor-control-field-description{margin-top:10px}.elementor-group-control-attachment_alert .elementor-control-field-description{margin-top:0}.elementor-required{color:#b01b1b}.elementor-units-choices{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;text-align:left}.elementor-units-choices input{display:none}.elementor-units-choices input:not(:checked)+label{color:#a4afb7}.elementor-units-choices input.e-units-placeholder+label{color:#c2cbd2;text-decoration:underline}.elementor-units-choices input:checked+label{text-decoration:underline}.elementor-units-choices label{cursor:pointer;padding:0 2px;text-transform:uppercase;font-size:9px}.elementor-control-start-end .eicon-h-align-left,.elementor-control-start-end .eicon-h-align-right{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.elementor-control-responsive-switchers{--selected-option:0;--pointer-position:var(--selected-option);position:relative;width:2em;height:2em;margin:calc(-2em + var(--control-title-size)) 0;margin-left:5px}.elementor-control-responsive-switchers__holder{position:absolute;width:100%;top:0;background-color:#fff;-webkit-border-radius:3px;border-radius:3px;-webkit-transition:.15s;-o-transition:.15s;transition:.15s;border:1px solid transparent}.elementor-control-responsive-switchers.elementor-responsive-switchers-open{z-index:11000}.elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-responsive-switcher{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-responsive-switcher:hover{color:#71d7f7}.elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-control-responsive-switchers__holder{top:calc(-1 * var(--selected-option) * 2em);-webkit-box-shadow:0 0 3px rgba(0,0,0,.2);box-shadow:0 0 3px rgba(0,0,0,.2)}.elementor-responsive-switcher{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;position:relative;z-index:2;cursor:pointer;height:0;-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);opacity:0;-webkit-transition:.15s;-o-transition:.15s;transition:.15s;font-size:12px}a.elementor-responsive-switcher{color:#a4afb7}a.elementor-responsive-switcher:hover{color:#71d7f7}.elementor-device-widescreen .elementor-responsive-switcher.elementor-responsive-switcher-widescreen{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-widescreen .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-widescreen{color:#71d7f7}.elementor-device-desktop .elementor-responsive-switcher.elementor-responsive-switcher-desktop{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-desktop .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-desktop{color:#71d7f7}.elementor-device-laptop .elementor-responsive-switcher.elementor-responsive-switcher-laptop{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-laptop .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-laptop{color:#71d7f7}.elementor-device-tablet_extra .elementor-responsive-switcher.elementor-responsive-switcher-tablet_extra{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-tablet_extra .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-tablet_extra{color:#71d7f7}.elementor-device-tablet .elementor-responsive-switcher.elementor-responsive-switcher-tablet{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-tablet .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-tablet{color:#71d7f7}.elementor-device-mobile_extra .elementor-responsive-switcher.elementor-responsive-switcher-mobile_extra{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-mobile_extra .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-mobile_extra{color:#71d7f7}.elementor-device-mobile .elementor-responsive-switcher.elementor-responsive-switcher-mobile{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-mobile .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-mobile{color:#71d7f7}.elementor-update-preview{margin:15px 15px 0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-update-preview-button-wrapper{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;text-align:left}.elementor-update-preview-button{padding:8px 15px;text-transform:uppercase}.elementor-control-direction-ltr input,.elementor-control-direction-ltr textarea{direction:ltr}.elementor-control-direction-rtl input,.elementor-control-direction-rtl textarea{direction:rtl}.elementor-control-type-button .elementor-control-input-wrapper{text-align:left}.elementor-control-type-button .elementor-button{width:auto;height:26px}.elementor-control-type-choose.elementor-label-block .elementor-choices{width:100%}.elementor-choices{display:-webkit-box;display:-ms-flexbox;display:flex;height:27px;line-height:27px;text-align:center;border-spacing:1px;-webkit-border-radius:3px;border-radius:3px;overflow:hidden}.elementor-choices .elementor-choices-label{border:1px solid #d5dadf;border-left:none;font-size:12px;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s;cursor:pointer;overflow:hidden}.elementor-choices .elementor-choices-label:nth-child(2){-webkit-border-top-right-radius:3px;border-top-right-radius:3px;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px}.elementor-choices .elementor-choices-label:last-child{border-left:1px solid #d5dadf;-webkit-border-top-left-radius:3px;border-top-left-radius:3px;-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px}.elementor-choices input{display:none}.elementor-choices input.e-choose-placeholder+.elementor-choices-label{color:#fff;background-color:#c2cbd2;border-color:#c2cbd2}.elementor-choices input:checked+.elementor-choices-label{color:#fff;background-color:#a4afb7;border-color:#a4afb7}.elementor-label-inline .elementor-choices{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.rtl .elementor-control-align .elementor-choices,.rtl .elementor-control-position .elementor-choices,.rtl .elementor-control-text_align .elementor-choices{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.rtl .elementor-control-align .elementor-choices .elementor-choices-label:nth-child(2),.rtl .elementor-control-position .elementor-choices .elementor-choices-label:nth-child(2),.rtl .elementor-control-text_align .elementor-choices .elementor-choices-label:nth-child(2){border-left:1px solid #d5dadf;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.rtl .elementor-control-align .elementor-choices .elementor-choices-label:last-child,.rtl .elementor-control-position .elementor-choices .elementor-choices-label:last-child,.rtl .elementor-control-text_align .elementor-choices .elementor-choices-label:last-child{border-left:none;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-control-type-color.e-control-global .e-global__popover-toggle~.pickr{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px;-ms-flex-negative:0;flex-shrink:0}.elementor-control-type-color .elementor-control-title{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-control-type-color .elementor-control-input-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-control-type-color .elementor-control-dynamic-switcher{border-right-width:0;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-color.elementor-control-dynamic .pickr{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-group-control-css-filter .elementor-slider{height:6px;-webkit-box-shadow:0 0 1px 1px inset rgba(0,0,0,.2);box-shadow:inset 0 0 1px 1px rgba(0,0,0,.2)}.elementor-group-control-css-filter .elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{margin-top:0;margin-bottom:5px}.elementor-group-control-blur .elementor-slider{background:url(../images/blur.png);-webkit-background-size:cover;background-size:cover;background-position:50%}.elementor-group-control-contrast .elementor-slider{background:url(../images/contrast.png);-webkit-background-size:100% 100%;background-size:100% 100%}.elementor-group-control-hue .elementor-slider{background-image:-webkit-gradient(linear,left top,right top,from(red),color-stop(orange),color-stop(#ff0),color-stop(#adff2f),color-stop(#32cd32),color-stop(#00bfff),color-stop(#00f),color-stop(95%,#9400d3));background-image:-webkit-linear-gradient(left,red,orange,#ff0,#adff2f,#32cd32,#00bfff,#00f,#9400d3 95%);background-image:-o-linear-gradient(left,red,orange,#ff0,#adff2f,#32cd32,#00bfff,#00f,#9400d3 95%);background-image:linear-gradient(90deg,red,orange,#ff0,#adff2f,#32cd32,#00bfff,#00f,#9400d3 95%)}.elementor-group-control-saturate .elementor-slider{background-image:-webkit-gradient(linear,left top,right top,from(grey),to(red));background-image:-webkit-linear-gradient(left,grey,red);background-image:-o-linear-gradient(left,grey,red);background-image:linear-gradient(90deg,grey,red)}.elementor-group-control-brightness .elementor-slider{background-image:-webkit-gradient(linear,left top,right top,from(#000),to(#fff));background-image:-webkit-linear-gradient(left,#000,#fff);background-image:-o-linear-gradient(left,#000,#fff);background-image:linear-gradient(90deg,#000,#fff)}.elementor-control-type-dimensions .elementor-control-dimensions{overflow:hidden}.elementor-control-type-dimensions li{float:left;width:20%}.elementor-control-type-dimensions li .elementor-link-dimensions,.elementor-control-type-dimensions li input{display:block;text-align:center;width:100%;border-color:#d5dadf;height:27px}.elementor-control-type-dimensions li input{border-left:none;-webkit-border-radius:0;border-radius:0;padding:4px 0}.elementor-control-type-dimensions li input:focus{border-left:1px solid;border-color:#a4afb7;margin-left:-1px;width:calc(100% + 1px)}.elementor-control-type-dimensions li input:focus+.elementor-control-dimension-label{color:#a4afb7}.elementor-control-type-dimensions li .elementor-link-dimensions{border:1px solid #d5dadf;border-left:none;background-color:#fff;padding:0;outline:none;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;cursor:pointer}.elementor-control-type-dimensions li:first-child input{border-left:1px solid #d5dadf;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-dimensions li:first-child input:focus{border-color:#a4afb7;margin-left:0;width:100%}.elementor-control-type-dimensions .elementor-control-dimension-label{display:block;text-align:center;color:#d5dadf;font-size:9px;text-transform:uppercase;padding-top:5px}.elementor-control-type-dimensions .elementor-link-dimensions.unlinked{background-color:#fff}.elementor-control-type-dimensions .elementor-link-dimensions.unlinked .elementor-linked{display:none}.elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked){background-color:#a4afb7;border-color:#a4afb7}.elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked) .elementor-unlinked{display:none}.elementor-control-type-dimensions .elementor-link-dimensions .elementor-linked{color:#fff}.elementor-control-type-icons .elementor-control-media__preview>*{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor-control-type-icons .elementor-control-media__preview i{font-size:70px;color:#6d7882}.elementor-control-type-icons .elementor-control-media__preview svg{height:75%}.elementor-control-type-icons .elementor-control-icons--inline__svg i.eicon-upload{font-size:15px}.elementor-control-type-gallery .elementor-control-media__content{border:1px solid #d5dadf;-webkit-border-radius:3px;border-radius:3px}.elementor-control-type-gallery .elementor-control-gallery-status{font-size:12px;height:27px;padding-right:10px;border-bottom:1px solid #d5dadf;display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-control-type-gallery .elementor-control-gallery-status>*{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-control-type-gallery .elementor-control-gallery-status-title{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-control-type-gallery .elementor-control-gallery-content{position:relative;overflow:hidden}.elementor-control-type-gallery .elementor-control-gallery-content:not(:hover) .elementor-control-gallery-edit{opacity:0}.elementor-control-type-gallery .elementor-control-gallery-thumbnails{display:grid;grid-template-columns:repeat(auto-fill,minmax(48px,1fr));grid-gap:10px;cursor:pointer;padding:10px}.elementor-control-type-gallery .elementor-control-gallery-thumbnail{width:48px;height:48px;-webkit-background-size:cover;background-size:cover;background-position:50% 50%}.elementor-control-type-gallery .elementor-control-gallery-edit{position:absolute;top:0;bottom:0;left:0;right:0;background-color:rgba(109,120,130,.3);padding:10px;font-size:11px;-webkit-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;transition:all .3s ease-in-out;pointer-events:none;cursor:pointer;opacity:1}.elementor-control-type-gallery .elementor-control-gallery-edit span{position:absolute;top:10px;left:10px;width:21px;height:21px;background-color:hsla(0,0%,100%,.9);color:#a4afb7;-webkit-box-shadow:0 0 7px 0 rgba(0,0,0,.2);box-shadow:0 0 7px 0 rgba(0,0,0,.2);-webkit-border-radius:3px;border-radius:3px}.elementor-control-type-gallery .elementor-control-gallery-edit span i{font-size:11px;padding:5px}.elementor-control-type-gallery .elementor-control-gallery-add{width:48px;height:48px;color:#fff;background-color:#d5dadf;font-size:14px;-webkit-border-radius:0;border-radius:0}.elementor-control-type-gallery .elementor-control-gallery-add:hover{background-color:#c2cbd2}.elementor-control-type-gallery .elementor-control-gallery-add i{margin:0;color:#a4afb7}.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-clear,.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-edit,.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-thumbnails{display:none}.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-content{padding:10px}.elementor-control-type-gallery.elementor-gallery-has-images .elementor-control-gallery-add{display:none}.elementor-control-type-gallery.elementor-control-dynamic .elementor-control-gallery-clear{border-right:1px solid #d5dadf}.elementor-control-type-gallery .elementor-control-gallery-clear{cursor:pointer;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-control-type-gallery .elementor-control-gallery-clear:hover{color:#b01b1b}.elementor-control-type-gallery .elementor-control-dynamic-switcher{border:1px solid #d5dadf;border-top:none;border-left:none;-webkit-border-radius:3px 0 0 0;border-radius:3px 0 0 0}.e-global__popover{width:288px;z-index:1;font-size:12px;padding-right:10px}.e-global__popover-toggle{border:1px solid #d5dadf;border-left:0;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;cursor:pointer}.e-global__popover-toggle--active i{color:#71d7f7}.e-global__popover-container{-webkit-box-shadow:0 2px 15px rgba(0,0,0,.3);box-shadow:0 2px 15px rgba(0,0,0,.3);-webkit-border-radius:3px;border-radius:3px;background-color:#fff;padding-bottom:5px}.e-global__popover-title{padding:15px 20px;font-weight:500;color:#6d7882;border-bottom:1px solid #e6e9ec;display:-webkit-box;display:-ms-flexbox;display:flex}.e-global__popover-title>i{margin-left:5px;color:#d5dadf}.e-global__popover-title-text{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.e-global__popover-info{margin-left:5px;display:inline-block}.e-global__popover-info-tooltip{width:270px;z-index:1;background-color:rgba(0,0,0,.9);color:#fff;padding:20px;-webkit-border-radius:3px;border-radius:3px}.e-global__popover-info-tooltip:after{content:"";position:absolute;bottom:-17px;right:16px;border:10px solid transparent;border-top-color:rgba(0,0,0,.9)}.e-global__popover-info i{color:#d5dadf;font-size:13px}.e-global__preview-items-container{max-height:260px;overflow-y:auto;margin-top:5px}.e-global__preview-items-container::-webkit-scrollbar{width:7px}.e-global__preview-items-container::-webkit-scrollbar-thumb{background-color:#c2cbd2;-webkit-border-radius:10px;border-radius:10px}.e-global__manage-button{font-weight:500;cursor:pointer}.e-global__manage-button:hover i{color:#4ab7f4}.e-global__manage-button i{color:#6d7882}.e-global__typography{padding:5px 35px 5px 10px;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}.e-global__typography.e-global__preview-item--selected:before{font-family:eicons;font-size:13px;content:"\e90e";position:absolute;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);top:50%;left:12px}.e-global__color{margin:5px auto;padding:5px 20px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.e-global__color:first-child{margin-top:5px}.e-global__color:last-child{margin-bottom:10px}.e-global__color-preview-container{height:20px;width:20px;-webkit-border-radius:3px;border-radius:3px;border:1px solid rgba(0,0,0,.1);margin-left:10px;-ms-flex-negative:0;flex-shrink:0;position:relative}.e-global__color-preview-color,.e-global__color-preview-transparent-bg{-webkit-border-radius:3px;border-radius:3px;height:100%;width:100%;position:absolute;top:0;left:0}.e-global__color-preview-transparent-bg{background-image:-webkit-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd),-webkit-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd);background-image:-o-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd),-o-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd);background-image:linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd),linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd);-webkit-background-size:12px 12px;background-size:12px 12px;background-position:0 0,6px 6px}.e-global__color-title{font-weight:500;color:#6d7882;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;padding-left:10px}.e-global__color-hex{font-size:10px;font-weight:500;color:#c2cbd2}.e-global__color .pcr-button{background-color:#fff}.e-global__color.e-global__preview-item--selected .e-global__color-preview-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:#fff}.e-global__color.e-global__preview-item--selected .e-global__color-preview-container:before{font-family:eicons;font-size:13px;content:"\e90e";text-shadow:0 0 1px #000;z-index:1}.e-global__preview-item{cursor:pointer;position:relative}.e-global__preview-item:hover{background-color:#f1f3f5}.e-global__preview-item:hover .e-global__color-hex{color:#a4afb7}.e-global__confirm-add .dialog-buttons-wrapper>.dialog-button.dialog-confirm-ok{color:#39b54a}.e-global__confirm-delete i{color:#b01b1b}.e-global__confirm-message-text i{color:#fcb92c}.e-global__confirm-input-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;border:1px solid #a4afb7;-webkit-border-radius:3px;border-radius:3px;margin-top:10px;padding:2px}.e-global__confirm-input-wrapper input{font-family:Roboto,Arial,sans-serif;font-weight:500;font-size:12px;padding:2px;border:0}.e-control-global .elementor-control-input-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;max-width:135px;width:100%}.e-control-global.elementor-control .elementor-control-input-wrapper{direction:rtl}.e-control-global .elementor-control-spinner{margin-left:4px}.elementor-control-type-hidden{display:none!important}.elementor-control-type-icon .select2-selection__rendered .eicon{margin-right:3px}.elementor-control-type-image_dimensions .elementor-control-field-description{margin:0 0 15px;line-height:1.4}.elementor-control-type-image_dimensions .elementor-control-input-wrapper{overflow:hidden}.elementor-control-type-image_dimensions .elementor-image-dimensions-field{width:65px;float:right}.elementor-control-type-image_dimensions .elementor-image-dimensions-field input:focus+.elementor-image-dimensions-field-description{color:#a4afb7}.elementor-control-type-image_dimensions .elementor-image-dimensions-separator{width:20px;text-align:center;float:right;padding-top:4px}.elementor-control-type-image_dimensions .elementor-image-dimensions-field-description{display:block;text-transform:uppercase;margin-top:5px;color:#d5dadf;font-size:9px;text-align:center}.elementor-control-type-image_dimensions .elementor-image-dimensions-apply-button{float:left;height:27px;width:65px}.elementor-control-media.elementor-media-empty .elementor-control-media-area .elementor-control-media__content__remove,.elementor-control-media.elementor-media-empty .elementor-control-media-area .elementor-control-media__remove,.elementor-control-media:not(.elementor-media-empty) .elementor-control-media__content__upload-button{display:none}.elementor-control-media .elementor-control-input-wrapper{border:1px solid #d5dadf}.elementor-control-media .eicon-plus-circle{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);color:#fff;font-size:20px}.elementor-control-media__content__upload-button{background-color:#d5dadf}.elementor-control-media__preview{height:100%;-webkit-background-size:cover;background-size:cover;background-position:50%}.elementor-control-media-area{background-image:-webkit-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd),-webkit-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd);background-image:-o-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd),-o-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd);background-image:linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd),linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd);-webkit-background-size:16px 16px;background-size:16px 16px;background-position:0 0,8px 8px;background-color:#f6f6f6}.elementor-control-media-area:not(:hover) .elementor-control-media__remove{display:none}.elementor-control-media-area .eicon-video-camera{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);color:hsla(0,0%,100%,.7);font-size:21px}.elementor-control-media .elementor-control-media__content{cursor:pointer;overflow:hidden}.elementor-control-media .elementor-control-media__content:hover:after{content:"";position:absolute;top:0;bottom:0;left:0;right:0;background-color:rgba(0,0,0,.2);pointer-events:none}.elementor-control-media .elementor-control-media__content:not(:hover) .elementor-control-media__tools{bottom:-30px}.elementor-control-media__content,.elementor-control-media__tools{-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.elementor-control-media__tools{position:absolute;bottom:0;left:0;right:0;height:27px}.elementor-control-media__tools>:not(:first-child){margin-right:1px}.elementor-control-media__tool{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;color:#fff;background-color:rgba(109,120,130,.85);font-size:11px;-webkit-transition:background .3s;-o-transition:background .3s;transition:background .3s}.elementor-control-media__tool:hover{background-color:rgba(109,120,130,.95)}.elementor-control-media__remove{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;transition:all .3s ease-in-out}.elementor-control-media__content__remove{position:absolute;z-index:1;top:10px;left:10px;width:20px;height:20px;font-size:11px;color:#a4afb7;background-color:hsla(0,0%,100%,.9);-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 0 7px 0 rgba(0,0,0,.1);box-shadow:0 0 7px 0 rgba(0,0,0,.1)}.elementor-control-media__content__remove:hover{background-color:#fff;-webkit-box-shadow:0 0 5px 0 rgba(0,0,0,.4);box-shadow:0 0 5px 0 rgba(0,0,0,.4)}.elementor-control-media.elementor-media-empty .elementor-control-file-area{display:none}.elementor-control-media__file{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%;margin-top:10px;border:1px solid #d5dadf}.elementor-control-media__file__content{padding-right:5px;font-size:12px}.elementor-control-media__file__content__label{color:#a4afb7}.elementor-control-media__file__content__info{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-weight:500}.elementor-control-media__file__content__info__icon{margin-left:5px}.elementor-control-media__file__controls{display:-webkit-box;display:-ms-flexbox;display:flex;border-right:1px solid #d5dadf}.elementor-control-media__file__controls__remove,.elementor-control-media__file__controls__upload-button{width:27px;height:27px;cursor:pointer;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-control-media__file__controls__upload-button{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-control-media__file__controls__remove{border-left:1px solid #d5dadf}.elementor-control-media.elementor-media-empty .elementor-control-media__file__content__info,.elementor-control-media.elementor-media-empty .elementor-control-media__file__controls__remove,.elementor-control-media:not(.elementor-media-empty) .elementor-control-media__file__content__label{display:none}.elementor-control-media .elementor-control-dynamic-switcher{border:none;-webkit-border-radius:0;border-radius:0;background-color:rgba(109,120,130,.85);color:#fff}.elementor-control-media .elementor-control-dynamic-switcher:hover{background-color:rgba(109,120,130,.95)}.elementor-control-type-media.elementor-control-dynamic-value .elementor-control-input-wrapper{border:none}.elementor-control-type-number.elementor-control-dynamic input{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;border-left:none}.elementor-control-type-number.elementor-control-dynamic .elementor-control-dynamic-switcher{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-order .elementor-control-oreder-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-control-type-order input{display:none}.elementor-control-type-order input:checked+.elementor-control-order-label{-webkit-transform:scaleY(-1);-ms-transform:scaleY(-1);transform:scaleY(-1)}.elementor-control-type-order select{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-order select:not(:focus)~.elementor-control-order-label{border-color:#d5dadf}.elementor-control-type-order select:focus~.elementor-control-order-label{border-color:#a4afb7}.elementor-control-type-order .elementor-control-order-label{position:relative;padding:0;width:40px;border:1px solid;font-size:10px;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;margin-left:-3px;background-color:#fff;cursor:pointer}.elementor-control-type-order .elementor-control-order-label i{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor-control-type-popover_toggle input{display:none}.elementor-control-type-popover_toggle label{cursor:pointer}.elementor-control-type-popover_toggle .elementor-control-input-wrapper{direction:ltr}.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle:checked+.elementor-control-popover-toggle-toggle-label{color:#71d7f7}.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle:not(:checked)~.elementor-control-popover-toggle-reset-label{display:none}.elementor-control-type-popover_toggle .elementor-control-popover-toggle-reset-label{color:#c2cbd2;margin-left:5px}.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle-label{height:27px;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-border-radius:3px;border-radius:3px;border:1px solid #d5dadf}.elementor-controls-popover.e-controls-popover--typography{padding-top:0}.e-control-global .elementor-control-popover-toggle-toggle-label{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px;-ms-flex-negative:0;flex-shrink:0}.elementor-control-type-repeater .elementor-control:not(.elementor-control-type-tab){padding-right:10px;padding-left:10px;padding-bottom:10px}.elementor-control-type-repeater.elementor-repeater-has-minimum-rows .elementor-repeater-tool-remove{display:none}.elementor-control-type-repeater .elementor-repeater-fields{margin:10px 0}.elementor-control-type-repeater .elementor-repeater-row-controls{border:1px solid #d5dadf;border-top:0 solid #d5dadf;padding-top:15px}.elementor-control-type-repeater .elementor-repeater-row-controls:not(.editable){display:none}.elementor-control-type-repeater .elementor-repeater-row-tools{display:table;table-layout:fixed;width:100%;color:#556068;background-color:#d5dadf;height:40px;border-spacing:1px;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-control-type-repeater .elementor-repeater-row-tools:hover{background-color:#a4afb7}.elementor-control-type-repeater .elementor-repeater-row-tools>div{display:table-cell;text-align:center;vertical-align:middle;cursor:pointer}.elementor-control-type-repeater .elementor-repeater-row-tools>div:not(.elementor-repeater-row-handle-sortable){background-color:#fff}.elementor-control-type-repeater .elementor-repeater-row-tools>div:hover{opacity:.95}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title{text-align:right;padding:0 10px;font-size:12px;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title .eicon,.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title i,.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title svg{margin-left:5px}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title img[src$=svg]{width:1em}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-tool{width:40px}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-handle-sortable{cursor:move;width:10px;color:#fff}.elementor-control-type-repeater .elementor-button-wrapper{text-align:center;padding-top:5px}.elementor-control-type-section{margin-top:10px;padding:0}.elementor-control-type-section.elementor-open{padding-bottom:15px}.elementor-control-type-section+.elementor-control:not(.elementor-control-type-section):before{display:none}.elementor-shadow-box .elementor-shadow-slider{margin-top:10px}.elementor-shadow-box .elementor-color-picker-wrapper .elementor-control-title{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-control-type-slider.elementor-control-dynamic input{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-control-type-slider .elementor-control-unit-2{width:21%}.elementor-control-type-slider.elementor-control-type-slider--multiple .elementor-control-input-wrapper{display:block}.elementor-control-type-slider--multiple{padding-bottom:40px}.elementor-control-type-slider--multiple .elementor-slider{margin-top:12px;width:98%}.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle{-webkit-border-radius:0;border-radius:0;width:10px;-webkit-transform:translateY(calc(50% - 14px)) translateX(-4px);-ms-transform:translateY(calc(50% - 14px)) translateX(-4px);transform:translateY(calc(50% - 14px)) translateX(-4px)}.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle:after{content:"";position:absolute;top:2px;height:12px;width:11px;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg);background-color:#fff;-webkit-border-radius:3px;border-radius:3px}.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle-lower:after{left:5px;-webkit-box-shadow:2px -2px 3px 0 rgba(0,0,0,.1);box-shadow:2px -2px 3px 0 rgba(0,0,0,.1)}.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle-upper:after{right:5px;-webkit-box-shadow:-2px 2px 3px 0 rgba(0,0,0,.1);box-shadow:-2px 2px 3px 0 rgba(0,0,0,.1)}.elementor-control-type-slider .elementor-control-dynamic-switcher{border-right-width:0;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-slider .elementor-control-input-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-control-type-slider .elementor-dynamic-cover{margin-top:10px}.elementor-slider{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;height:4px;background-color:#d5dadf;-webkit-border-radius:5px;border-radius:5px;position:relative;cursor:pointer}.elementor-slider-input{width:21%;min-width:54px;margin-right:12px}.elementor-slider__extra{position:relative}.elementor-slider__labels{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.elementor-slider__label{font-size:9px;color:#c2cbd2}.elementor-slider__scales{position:absolute;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:space-evenly;-ms-flex-pack:space-evenly;justify-content:space-evenly;width:100%;margin-top:4px}.elementor-slider__scale{width:1px;height:21px;background-color:#a4afb7}.elementor-slider .noUi-handle{height:16px;width:16px;background-color:#fff;left:0;-webkit-transform:translateY(calc(50% - 14px)) translateX(-8px);-ms-transform:translateY(calc(50% - 14px)) translateX(-8px);transform:translateY(calc(50% - 14px)) translateX(-8px);position:absolute;-webkit-box-shadow:0 1px 5px rgba(0,0,0,.3);box-shadow:0 1px 5px rgba(0,0,0,.3);-webkit-border-radius:50%;border-radius:50%}.elementor-slider .noUi-connects{position:absolute;width:100%;height:4px}.elementor-slider .noUi-connect{position:absolute;z-index:0;top:0;left:0;height:100%;width:100%;will-change:transform;-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0;background-color:#a4afb7}.elementor-slider .noUi-tooltip{position:absolute;top:calc(100% + 5px);left:calc(50% - 4px);-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);font-size:10px}.elementor-control-type-structure .elementor-control-field{display:initial}.elementor-control-type-structure .elementor-control-structure-preset{padding:3px;-webkit-border-radius:3px;border-radius:3px;display:inline-block;cursor:pointer;height:50px}.elementor-control-type-structure .elementor-control-structure-preset svg{height:100%}.elementor-control-type-structure .elementor-control-structure-preset path{fill:#e6e9ec}.elementor-control-type-structure .elementor-control-structure-reset{padding:15px 20px 0;font-size:11px;cursor:pointer;color:#a4afb7;border-top:1px solid #e6e9ec;margin:0 -20px}.elementor-control-type-structure .elementor-control-structure-title{margin:10px -20px 0}.elementor-control-type-structure .elementor-control-structure-title:before{height:10px;-webkit-box-shadow:inset 0 2px 4px hsla(0,0%,49.8%,.1);box-shadow:inset 0 2px 4px hsla(0,0%,49.8%,.1)}.elementor-control-type-structure .elementor-control-structure-presets{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.elementor-control-type-structure .elementor-control-structure-presets input{display:none}.elementor-control-type-structure .elementor-control-structure-presets input:checked+.elementor-control-structure-preset path{fill:#a4afb7}.elementor-control-type-structure .elementor-control-structure-preset-wrapper{margin-bottom:15px}.elementor-control-type-structure .elementor-control-structure-preset-title{text-align:center;padding-top:5px;font-style:italic;font-size:11px;color:#a4afb7}.elementor-control-type-switcher .elementor-control-input-wrapper{text-align:left}.elementor-control-type-switcher .elementor-switch{position:relative;display:inline-block;vertical-align:top;height:20px;background-color:#fff;-webkit-border-radius:18px;border-radius:18px;cursor:pointer}.elementor-control-type-switcher .elementor-switch-input{display:none}.elementor-control-type-switcher .elementor-switch-label{position:relative;display:block;height:inherit;font-size:7px;text-transform:uppercase;background:#eceeef;-webkit-border-radius:inherit;border-radius:inherit;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.12),inset 0 0 2px rgba(0,0,0,.15);box-shadow:inset 0 1px 2px rgba(0,0,0,.12),inset 0 0 2px rgba(0,0,0,.15);-webkit-transition:.15s ease-out;-o-transition:.15s ease-out;transition:.15s ease-out;-webkit-transition-property:opacity,background;-o-transition-property:opacity,background;transition-property:opacity,background}.elementor-control-type-switcher .elementor-switch-label:after,.elementor-control-type-switcher .elementor-switch-label:before{position:absolute;top:0;width:50%;text-align:center;line-height:20px;-webkit-transition:inherit;-o-transition:inherit;transition:inherit}.elementor-control-type-switcher .elementor-switch-label:before{content:attr(data-off);right:3px;color:#a4afb7;text-shadow:0 1px hsla(0,0%,100%,.5)}.elementor-control-type-switcher .elementor-switch-label:after{content:attr(data-on);left:3px;color:#fff;text-shadow:0 1px rgba(0,0,0,.2);opacity:0}.elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-label{background:#71d7f7;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.15),inset 0 0 3px rgba(0,0,0,.2);box-shadow:inset 0 1px 2px rgba(0,0,0,.15),inset 0 0 3px rgba(0,0,0,.2)}.elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-label:before{opacity:0}.elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-label:after{opacity:1}.elementor-control-type-switcher .elementor-switch-handle{position:absolute;top:1px;left:1px;width:18px;height:18px;background:#fff;-webkit-border-radius:10px;border-radius:10px;-webkit-transition:left .15s ease-out;-o-transition:left .15s ease-out;transition:left .15s ease-out}.elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-handle{left:auto;right:1px;-webkit-box-shadow:-1px 1px 5px rgba(0,0,0,.2);box-shadow:-1px 1px 5px rgba(0,0,0,.2)}.elementor-control-type-tabs{font-size:.8em;text-transform:uppercase;display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-control-type-tab{text-align:center;width:100%;padding:0;line-height:25px;border-top:1px solid #d5dadf;border-bottom:1px solid #d5dadf;border-left:1px solid #d5dadf;cursor:pointer}.elementor-control-type-tab:first-child{border-right:1px solid #d5dadf;-webkit-border-top-right-radius:3px;border-top-right-radius:3px;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px}.elementor-control-type-tab:last-child{-webkit-border-top-left-radius:3px;border-top-left-radius:3px;-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px}.elementor-control-type-tab.elementor-tab-active{background-color:#a4afb7;border-color:#a4afb7;color:#fff}.elementor-tab-close{display:none!important}.elementor-control-type-code.elementor-control-dynamic-value .elementor-control-dynamic-switcher,.elementor-control-type-textarea.elementor-control-dynamic-value .elementor-control-dynamic-switcher{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px;border-right-width:0}.elementor-control-type-code .elementor-control-dynamic-switcher,.elementor-control-type-textarea .elementor-control-dynamic-switcher{-webkit-border-radius:0 3px;border-radius:0 3px}.elementor-control-type-code:not(.elementor-control-dynamic-value) .elementor-control-dynamic-switcher,.elementor-control-type-textarea:not(.elementor-control-dynamic-value) .elementor-control-dynamic-switcher{position:absolute;top:0;z-index:1;left:0}.elementor-control-type-code .elementor-control-input-wrapper,.elementor-control-type-textarea .elementor-control-input-wrapper{position:relative}.elementor-control-type-code textarea,.elementor-control-type-textarea textarea{display:block;font-family:inherit}.elementor-control-type-code textarea:focus+.elementor-control-dynamic-switcher,.elementor-control-type-textarea textarea:focus+.elementor-control-dynamic-switcher{display:none}.elementor-control-type-code pre:focus-within+.elementor-control-dynamic-switcher,.elementor-control-type-textarea pre:focus-within+.elementor-control-dynamic-switcher{display:none}.elementor-control-type-url.elementor-control-dynamic .elementor-input{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-url .elementor-control-field{position:relative}.elementor-control-type-url.elementor-control-dynamic-value .elementor-control-url-more,.elementor-control-type-url:not(.elementor-control-dynamic) .elementor-control-url-more{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-control-type-url .elementor-control-input-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-control-type-url .elementor-control-url-more{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-ms-flex-negative:0;flex-shrink:0;border:1px solid #d5dadf;border-left:none;cursor:pointer}.elementor-control-type-url .elementor-control-url-more i{font-size:12px}.elementor-control-type-url .elementor-control-url-more-options{display:none;padding-top:10px}.elementor-control-type-url .elementor-control-url-more-options .elementor-control-field-description{margin-top:10px}.elementor-control-type-url .elementor-control-url-option{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-control-type-url .elementor-control-url-option:not(:last-child){padding-bottom:10px}.elementor-control-type-url .elementor-control-url-option input,.elementor-control-type-url .elementor-control-url-option label{cursor:pointer}.elementor-control-type-url .elementor-control-url-option-input{padding:0;-webkit-border-radius:2px;border-radius:2px;margin:0 0 0 5px;-webkit-appearance:none;-moz-appearance:none;outline:none;content:none;height:15px;width:15px;border:1px solid #d5dadf;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-control-type-url .elementor-control-url-option-input:checked{background:#71d7f7;border:none}.elementor-control-type-url .elementor-control-url-option-input:checked:before{display:block;content:"";width:4px;height:7px;border:solid #fff;border-width:0 2px 2px 0;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.elementor-control-type-url .elementor-control-url-option label{font-size:12px}.elementor-control-type-url .elementor-control-url-external-hide .elementor-control-url-more{display:none}.elementor-control-type-url .elementor-control-url-external-show .elementor-dynamic-cover,.elementor-control-type-url .elementor-control-url-external-show .elementor-input{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-url .elementor-control-url-autocomplete-spinner{display:none;position:absolute;top:5px;right:0;width:10px;height:10px;font-size:10px;color:#d4d4d4}.elementor-control-type-url .elementor-control-url__custom-attributes{margin-top:5px}.elementor-control-type-url .elementor-control-url__custom-attributes label{font-size:12px}.elementor-control-type-url .elementor-control-url__custom-attributes input{width:100%;margin-top:10px}.elementor-control-type-url .elementor-input{direction:ltr}.elementor-control-type-url .elementor-input:not(:focus)+.elementor-control-url-more{border-color:#d5dadf}.elementor-control-type-url .elementor-input:focus~div{border-color:#a4afb7}.elementor-control-type-url .elementor-control-dynamic-switcher{border-left:none;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-autocomplete-menu{position:absolute;background:#fff;color:#495157;border:1px solid #a4afb7;margin:0;list-style:none;padding:4px 0;height:auto;width:100%;min-width:260px;max-width:300px;max-height:200px;overflow-y:auto;-webkit-border-radius:3px;border-radius:3px;-webkit-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;transition:all .3s ease-in-out;cursor:default;z-index:1}.elementor-autocomplete-menu .ui-menu-item{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-item-align:baseline;align-self:baseline;padding:5px 8px;font-size:12px;width:100%;line-height:1.2;cursor:pointer}.elementor-autocomplete-menu .ui-menu-item.ui-state-active,.elementor-autocomplete-menu .ui-menu-item.ui-state-focus,.elementor-autocomplete-menu .ui-menu-item.ui-state-hover{background:#e6e9ec}.elementor-autocomplete-menu .elementor-autocomplete-item-info{font-size:10px;padding-top:2px}.elementor-control-type-wp_widget .widget-inside{display:block}.elementor-control-type-wp_widget .quicktags-toolbar input{width:auto}.elementor-control-type-wysiwyg *{-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-control-type-wysiwyg .wp-editor-container{border:1px solid #e6e9ec}.elementor-control-type-wysiwyg .wp-editor-tabs{border:1px solid #d5dadf;border-bottom:none;-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0}.elementor-control-type-wysiwyg #insert-media-button{height:auto;line-height:24px;font-size:10px;color:#6d7882;border-color:#d5dadf;background-color:#e6e9ec;min-height:0}.elementor-control-type-wysiwyg .ed_button{height:22px;width:auto}.elementor-control-type-wysiwyg .wp-media-buttons-icon{height:14px;margin:0}.elementor-control-type-wysiwyg .wp-media-buttons-icon:before{font-size:14px}.elementor-control-type-wysiwyg .wp-switch-editor{position:static;border:none;margin:0;color:#6d7882;font-size:10px;padding:3px 9px 4px}.elementor-control-type-wysiwyg .switch-html{border:solid #d5dadf;border-width:0 1px}.elementor-control-type-wysiwyg .html-active .switch-tmce{background-color:transparent}.elementor-control-type-wysiwyg .html-active .switch-html,.elementor-control-type-wysiwyg .tmce-active .switch-tmce{background-color:#e6e9ec}.elementor-control-type-wysiwyg .tmce-active .switch-html{background-color:transparent}.elementor-control-type-wysiwyg .mce-toolbar-grp,.elementor-control-type-wysiwyg .quicktags-toolbar{background-color:#e6e9ec}.elementor-control-type-wysiwyg .mce-toolbar-grp>div{padding:0 3px}.elementor-control-type-wysiwyg .elementor-wp-editor{-webkit-box-sizing:border-box;box-sizing:border-box}.elementor-control-type-wysiwyg .mce-ico{color:#6d7882;font-size:16px}.elementor-control-type-wysiwyg .mce-btn{margin-right:0;margin-left:0}.elementor-control-type-wysiwyg .mce-btn.mce-active,.elementor-control-type-wysiwyg .mce-btn:active,.elementor-control-type-wysiwyg .mce-btn:hover{border-color:#d5dadf}.elementor-control-type-wysiwyg .mce-path{padding:5px 10px}.elementor-control-type-wysiwyg .mce-path-item{font-size:12px;color:#6d7882}.elementor-control-type-wysiwyg .elementor-control-dynamic-switcher{border:none}.elementor-control-type-text .elementor-control-dynamic-switcher{border-right-width:0;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-text.elementor-control-dynamic input{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.ui-resizable-n{top:-5px}.ui-resizable-e{right:-5px}.ui-resizable-s{bottom:-5px}.ui-resizable-w{left:-5px}.ui-resizable-ne{top:-5px;right:-5px}.ui-resizable-nw{top:-5px;left:-5px}.ui-resizable-se{bottom:-5px;right:-5px}.ui-resizable-sw{bottom:-5px;left:-5px}.ui-resizable-n,.ui-resizable-s{left:0;height:10px;width:100%;cursor:ns-resize}.ui-resizable-e,.ui-resizable-w{top:0;height:100%;width:10px;cursor:ew-resize}.ui-resizable-ne,.ui-resizable-nw,.ui-resizable-se,.ui-resizable-sw{height:15px;width:15px}.ui-resizable-nw,.ui-resizable-se{cursor:nwse-resize}.ui-resizable-ne,.ui-resizable-sw{cursor:nesw-resize}.ui-resizable-handle{position:absolute}.ui-resizable-resizing{pointer-events:none}@-webkit-keyframes placeholder-section{0%{height:0;opacity:0}to{height:40px;opacity:.9}}@keyframes placeholder-section{0%{height:0;opacity:0}to{height:40px;opacity:.9}}@-webkit-keyframes placeholder-widget{0%{height:0;opacity:0}to{height:10px;opacity:.9}}@keyframes placeholder-widget{0%{height:0;opacity:0}to{height:10px;opacity:.9}}@-webkit-keyframes section-outline{0%{opacity:0}to{opacity:1}}@keyframes section-outline{0%{opacity:0}to{opacity:1}}body.elementor-editor-active .elementor.elementor-edit-mode .article,body.elementor-editor-active .elementor.elementor-edit-mode.layout-section .entry-content{overflow:visible}body.elementor-editor-active .elementor.elementor-edit-mode .elementor-element-overlay .elementor-editor-element-settings{clear:unset}body.elementor-editor-active .elementor.elementor-edit-mode .elementor-element.elementor-section{overflow:visible}.elementor-edit-area .animated{-webkit-animation-fill-mode:none!important;animation-fill-mode:none!important}.elementor-edit-area ul.elementor-editor-element-settings{word-break:normal;padding:0}.elementor-edit-area .gallery{opacity:1}.pen{position:relative;outline:none}.pen:not([data-elementor-inline-editing-toolbar=advanced]){white-space:pre-wrap}.pen-menu{-webkit-box-shadow:1px 2px 3px -2px #222;box-shadow:1px 2px 3px -2px #222;background-color:#6d7882;position:fixed;overflow:hidden;-webkit-border-radius:3px;border-radius:3px;z-index:9999}.pen-menu:after{top:100%;content:"";position:absolute;border:6px solid transparent;border-top-color:#6d7882;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.pen-menu-below:after{top:0;-webkit-transform:translateX(-50%) translateY(-100%) rotate(180deg);-ms-transform:translateX(-50%) translateY(-100%) rotate(180deg);transform:translateX(-50%) translateY(-100%) rotate(180deg)}.pen-icon{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;height:35px;padding:0 10px;font-size:21px;color:#d5dadf;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.pen-icon:hover{background:#556068}.pen-icon[data-action=closeGroup],.pen-icon[data-group]{display:none}.pen-icon[data-action=close]:before{content:"";position:absolute;right:0;height:60%;width:1px;background-color:#556068}.pen-icon.active{background-color:#556068;-webkit-box-shadow:inset 2px 2px 4px #556068;box-shadow:inset 2px 2px 4px #556068}.pen-group-icon:after{font-family:eicons;font-size:12px;content:"\e92a";padding-left:4px;color:#71d7f7}.pen-input-wrapper{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.pen-input-wrapper .pen-url-input{font-size:12px;line-height:1.5;padding:0 10px;width:250px;direction:ltr}.pen-input-wrapper .pen-url-input,.pen-input-wrapper .pen-url-input:focus{background-color:transparent;border:none;outline:none;-webkit-box-shadow:none;box-shadow:none;color:#fff}.pen-input-wrapper .pen-url-input::-webkit-input-placeholder{color:#d5dadf}.pen-input-wrapper .pen-url-input::-moz-placeholder{color:#d5dadf}.pen-input-wrapper .pen-url-input::-ms-input-placeholder{color:#d5dadf}.pen-input-wrapper .pen-url-input::placeholder{color:#d5dadf}.pen-input-label{margin:0 0 0 -1px}.pen-placeholder:before{content:attr(data-pen-placeholder);position:absolute;font-weight:400;color:#757575;opacity:.6}.pen-external-url-checkbox{display:none}.pen-external-url-checkbox:checked+i{color:#fff}.elementor-inline-editing i:not([class]){font-style:italic}.elementor-inline-editing b{font-weight:700}.elementor-inline-editing u{text-decoration:underline}.e-element-color-picker{--primary-color:#71d7f7;--swatch-size:25px;cursor:default;display:-webkit-box;display:-ms-flexbox;display:flex;position:absolute;width:calc(calc(var(--count) + 1) * var(--swatch-size));height:var(--swatch-size);top:var(--top);left:var(--left);right:var(--right,unset);-webkit-border-radius:3px;border-radius:3px;z-index:9998;background-color:var(--primary-color);padding:1px;-webkit-box-sizing:content-box;box-sizing:content-box;-webkit-transition:opacity .3s,width .3s;-o-transition:opacity .3s,width .3s;transition:opacity .3s,width .3s}.e-element-color-picker,.e-element-color-picker.e-picker-hidden{opacity:0;pointer-events:none}.e-element-color-picker:before{content:"";-webkit-box-flex:0;-ms-flex:0 1 var(--swatch-size);flex:0 1 var(--swatch-size);max-width:100%;height:100%;-webkit-box-sizing:border-box;box-sizing:border-box;text-align:center}.e-element-color-picker:after{content:"\e91e";font-family:eicons;color:#fff;font-size:1rem;line-height:var(--swatch-size);position:absolute;left:.3rem;z-index:-1}.e-element-color-picker__swatch{-webkit-box-flex:1;-ms-flex:1 0 var(--swatch-size);flex:1 0 var(--swatch-size);max-width:100%;height:100%;cursor:pointer;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;position:relative;overflow:hidden;-webkit-border-radius:inherit;border-radius:inherit;background:-webkit-gradient(linear,left top,left bottom,from(var(--color)),to(var(--color))),-webkit-gradient(linear,left top,left bottom,from(var(--primary-color)),to(var(--primary-color)));background:-webkit-linear-gradient(var(--color),var(--color)),-webkit-linear-gradient(var(--primary-color),var(--primary-color));background:-o-linear-gradient(var(--color),var(--color)),-o-linear-gradient(var(--primary-color),var(--primary-color));background:linear-gradient(var(--color),var(--color)),linear-gradient(var(--primary-color),var(--primary-color))}.e-element-color-picker__swatch:not(:first-child){border-left:1px solid var(--primary-color)}.e-element-color-picker__swatch:before{content:attr(data-text);position:absolute;left:50%;top:50%;opacity:0;color:var(--color);font-size:10px;font-weight:300;font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-filter:hue-rotate(180deg) grayscale(1) contrast(999) invert(1);filter:hue-rotate(180deg) grayscale(1) contrast(999) invert(1);-webkit-transition:inherit;-o-transition:inherit;transition:inherit}.e-element-color-picker__swatch:hover{-ms-flex-preferred-size:calc(2 * var(--swatch-size));flex-basis:calc(2 * var(--swatch-size));-ms-flex-negative:0;flex-shrink:0}.e-element-color-picker__swatch:hover:before{opacity:1}.elementor-editor__ui-state__color-picker :not(.e-element-color-picker__swatch){cursor:url(../images/eyedropper.svg) 0 20,pointer}.elementor-editor__ui-state__color-picker .e-element-color-picker:not(.e-picker-hidden):hover,.elementor-editor__ui-state__color-picker .elementor-element:hover>.e-element-color-picker:not(.e-picker-hidden),.elementor-editor__ui-state__color-picker .elementor-widget-container:hover+.e-element-color-picker:not(.e-picker-hidden){opacity:1;pointer-events:all}.elementor-editor__ui-state__color-picker .elementor-section:hover{outline:1px solid #71d7f7}html.elementor-html{margin-top:0!important}.elementor-edit-area{position:relative}.elementor.loading{opacity:.5}.elementor-edit-area-active .elementor-inner-section:first-child{margin-top:15px}.elementor-edit-area-active .elementor-widget-wrap.elementor-element-empty{min-height:30px}@media (min-width:768px){.elementor-edit-area-active .elementor-widget-wrap.elementor-element-empty{margin:10px}}.elementor-edit-area-active .elementor-column{min-width:25px}.elementor-edit-area-active .elementor-widget.elementor-loading{opacity:.3}.elementor-edit-area-active .elementor-widget.elementor-element-edit-mode:hover,.elementor-edit-area-active .elementor-widget.elementor-element-editable{-webkit-box-shadow:0 0 0 1px #71d7f7;box-shadow:0 0 0 1px #71d7f7}.elementor-edit-area-active .elementor-widget:not(:hover) .elementor-editor-element-settings{display:none}.elementor-edit-area-active .elementor-widget.ui-draggable-dragging{pointer-events:none}.elementor-edit-area-active .elementor-editor-element-setting{cursor:pointer;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:0;margin:0;font-size:11px;color:#fff;width:25px;-webkit-transition:margin .3s,width .3s,font .3s;-o-transition:margin .3s,width .3s,font .3s;transition:margin .3s,width .3s,font .3s}.elementor-edit-area-active .elementor-inline-editing{min-height:15px}.elementor-edit-area-active .elementor-edit-hidden{display:none}.elementor-section-wrap:empty{min-height:25px}.elementor-element>.elementor-element-overlay{position:absolute;top:0;left:0;letter-spacing:0;z-index:9998;pointer-events:none}.elementor-element-empty .elementor-sortable-placeholder{display:none}.elementor-element.elementor-widget-empty{background-color:rgba(213,218,223,.8)}.elementor-element.elementor-widget-empty .elementor-widget-empty-icon{color:#c2cbd2;font-size:22px;display:block;text-align:center;padding:10px 0}.elementor-element:not(:hover):not(.elementor-element-editable)>.elementor-element-overlay .elementor-editor-element-settings{display:none}.elementor-element--toggle-edit-tools>.elementor-element-overlay .elementor-editor-element-edit:not(.elementor-active)~*{width:0;font-size:0}.elementor-element[data-side=bottom]+.elementor-element:before,.elementor-element[data-side=bottom]:last-child:after,.elementor-element[data-side=top]:before{content:"";background-color:#71d7f7;-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out;opacity:.9;height:10px;-webkit-animation:placeholder-widget .5s;animation:placeholder-widget .5s;display:block}.elementor-element.elementor-absolute,.elementor-element.elementor-fixed{cursor:-webkit-grab;cursor:grab}.elementor-element.elementor-absolute:active,.elementor-element.elementor-fixed:active{cursor:-webkit-grabbing;cursor:grabbing}.elementor-element.elementor-absolute .eicon-edit:before,.elementor-element.elementor-fixed .eicon-edit:before{content:"\e902"}.elementor-section>.elementor-element-overlay{right:0;bottom:0}.elementor-section>.elementor-element-overlay:after{position:absolute;left:2px;right:2px;top:2px;bottom:2px;outline:2px solid #71d7f7;-webkit-animation:section-outline .75s;animation:section-outline .75s}.elementor-section.elementor-element-editable>.elementor-element-overlay:after,.elementor-section:hover>.elementor-element-overlay:after{content:""}.elementor-section-filled .elementor-sortable-placeholder.elementor-column{display:none}.elementor-section-filled .elementor-row.elementor-draggable-over{border:1px solid #d72b3f}.elementor-column>.elementor-element-overlay{right:0;bottom:0}.elementor-column>.elementor-element-overlay:after{position:absolute;left:0;right:0;top:0;bottom:0;outline:1px dashed #6d7882}.elementor-column.elementor-element-editable>.elementor-element-overlay,.elementor-column:hover>.elementor-element-overlay{border:1px solid #fff}.elementor-column.elementor-element-editable>.elementor-element-overlay:after,.elementor-column:hover>.elementor-element-overlay:after{content:""}.elementor-column.elementor-dragging-on-child>.elementor-element-overlay{border:1px solid #71d7f7}.elementor-column.elementor-dragging-on-child>.elementor-element-overlay:after{display:none}.elementor-column>.ui-resizable-e,.elementor-column>.ui-resizable-w{cursor:col-resize;width:7px;position:absolute;left:-5px;top:0;height:100%}.elementor-column:last-of-type>.ui-resizable-e,.elementor-column:last-of-type>.ui-resizable-w{display:none!important}@media (max-width:1024px){.elementor-column>.ui-resizable-e,.elementor-column>.ui-resizable-w{display:none!important}}.elementor-editor-element-settings{position:absolute;display:-webkit-box;display:-ms-flexbox;display:flex;height:26px;list-style:none;margin:0;padding:0;font-family:Arial,Helvetica,sans-serif;font-size:13px;font-weight:400;font-style:normal;line-height:1;z-index:1;pointer-events:all}@media (min-width:1025px){.elementor-editor-element-edit{cursor:move}}.elementor-editor-section-settings{height:24px;top:1px;right:50%;-webkit-transform:translateX(50%) translateY(-100%);-ms-transform:translateX(50%) translateY(-100%);transform:translateX(50%) translateY(-100%);background-color:#71d7f7;-webkit-border-radius:5px 5px 0 0;border-radius:5px 5px 0 0;-webkit-box-shadow:0 -2px 8px rgba(0,0,0,.05);box-shadow:0 -2px 8px rgba(0,0,0,.05)}.elementor-editor-section-settings i.eicon-handle{font-size:16px}.elementor-editor-section-settings .elementor-editor-element-setting:hover{background-color:#10bcf2}.elementor-editor-section-settings .elementor-editor-element-setting:first-child{-webkit-border-radius:0 5px 0 0;border-radius:0 5px 0 0}.elementor-editor-section-settings .elementor-editor-element-setting:first-child:before{content:"";position:absolute;top:2px;border:solid transparent;border-left:solid #71d7f7;border-width:22px 0 0 12px;left:calc(100% - 1px)}.elementor-editor-section-settings .elementor-editor-element-setting:first-child:hover:before{border-left-color:#10bcf2}.elementor-editor-section-settings .elementor-editor-element-setting:last-child{-webkit-border-radius:5px 0 0 0;border-radius:5px 0 0 0}.elementor-editor-section-settings .elementor-editor-element-setting:last-child:after{content:"";position:absolute;top:2px;border:solid transparent;border-right:solid #71d7f7;border-width:22px 12px 0 0;right:calc(100% - 1px)}.elementor-editor-section-settings .elementor-editor-element-setting:last-child:hover:after{border-right-color:#10bcf2}.elementor-section--handles-inside .elementor-editor-section-settings{-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);-webkit-border-radius:0 0 5px 5px;border-radius:0 0 5px 5px}.elementor-section--handles-inside .elementor-editor-section-settings .elementor-editor-element-setting:first-child{-webkit-border-radius:0 0 5px 0;border-radius:0 0 5px 0}.elementor-section--handles-inside .elementor-editor-section-settings .elementor-editor-element-setting:first-child:before{top:0;border-width:0 0 22px 12px}.elementor-section--handles-inside .elementor-editor-section-settings .elementor-editor-element-setting:last-child{-webkit-border-radius:0 0 0 5px;border-radius:0 0 0 5px}.elementor-section--handles-inside .elementor-editor-section-settings .elementor-editor-element-setting:last-child:after{top:0;border-width:0 12px 22px 0}.elementor-editor-column-settings{top:-1px;right:-1px;-webkit-border-radius:0 0 0 3px;border-radius:0 0 0 3px;overflow:hidden}.elementor-editor-column-settings .elementor-editor-element-setting{background-color:#495157}.elementor-editor-column-settings .elementor-editor-element-setting:not(:hover){background-image:-webkit-gradient(linear,left top,left bottom,from(#6d7882),to(#556068));background-image:-webkit-linear-gradient(top,#6d7882,#556068);background-image:-o-linear-gradient(top,#6d7882,#556068);background-image:linear-gradient(180deg,#6d7882,#556068)}.elementor-editor-widget-settings{z-index:2;top:-1px;left:-1px;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;-webkit-border-radius:0 0 3px 0;border-radius:0 0 3px 0;overflow:hidden}.elementor-editor-widget-settings .elementor-editor-element-setting{background-color:#10bcf2}.elementor-editor-widget-settings .elementor-editor-element-setting:not(:hover){background-image:-webkit-gradient(linear,left bottom,left top,from(#41c9f4),to(#71d7f7));background-image:-webkit-linear-gradient(bottom,#41c9f4,#71d7f7);background-image:-o-linear-gradient(bottom,#41c9f4,#71d7f7);background-image:linear-gradient(0deg,#41c9f4,#71d7f7)}.elementor-empty-view{position:absolute;top:0;bottom:0;left:0;right:0;z-index:1}.elementor-first-add{text-align:center;border:1px dashed #d5dadf;display:-webkit-box;display:-ms-flexbox;display:flex;height:100%;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-first-add .elementor-icon{font-size:19px;color:#a4afb7;cursor:pointer}.elementor-sortable-helper{position:absolute;-webkit-border-radius:3px;border-radius:3px;background-color:#fff;text-align:center;color:#556068;-webkit-box-shadow:0 2px 6px rgba(0,0,0,.2);box-shadow:0 2px 6px rgba(0,0,0,.2);cursor:move}.elementor-sortable-helper .icon{font-size:28px;padding-top:15px;line-height:1}.elementor-sortable-helper .elementor-element-title-wrapper{display:table;width:100%}.elementor-sortable-helper .title{font-size:11px;font-family:Arial,Helvetica,sans-serif;font-weight:400;font-style:normal;display:table-cell;vertical-align:middle;height:40px}.elementor-editor-content-only .elementor-column.elementor-element-editable>.elementor-element-overlay:after,.elementor-editor-content-only .elementor-column:hover>.elementor-element-overlay:after,.elementor-editor-content-only .elementor-column>.elementor-element-overlay,.elementor-editor-content-only .elementor-column>.elementor-element-overlay:after,.elementor-editor-content-only .elementor-first-add,.elementor-editor-content-only .elementor-section.elementor-element-editable>.elementor-element-overlay:after,.elementor-editor-content-only .elementor-section:hover>.elementor-element-overlay:after,.elementor-editor-content-only .elementor-section>.elementor-element-overlay,.elementor-editor-content-only .elementor-section>.elementor-element-overlay:after{display:none}@media (min-width:1025px){.elementor-editor-content-only .elementor-editor-element-edit{cursor:pointer}}.elementor-sortable-placeholder:not(.elementor-column-placeholder){background-color:#71d7f7;-webkit-animation-duration:.25s;animation-duration:.25s;opacity:.9;width:100%;-ms-flex-item-align:stretch;align-self:stretch}.elementor-section-placeholder{height:40px;-webkit-animation-name:placeholder-section;animation-name:placeholder-section}.elementor-column-placeholder{position:relative}.elementor-column-placeholder:after,.elementor-column-placeholder:before{content:"";position:absolute;top:10px;bottom:10px;right:10px;left:10px}.elementor-column-placeholder:before{border:1px solid #6d7882}.elementor-column-placeholder:after{border:1px dashed #fff}.elementor-widget-placeholder{height:10px;-webkit-animation-name:placeholder-widget;animation-name:placeholder-widget}.elementor-draggable-over:not([data-dragged-element=section]):not([data-dragged-is-inner=true])>.elementor-empty-view>.elementor-first-add:after,.elementor-first-add.elementor-html5dnd-current-element:after{content:"";background-color:#71d7f7;-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out;opacity:.9;height:10px;-webkit-animation:placeholder-widget .5s;animation:placeholder-widget .5s;width:100%}.elementor-draggable-over:not([data-dragged-element=section]):not([data-dragged-is-inner=true])>.elementor-empty-view>.elementor-first-add .elementor-icon,.elementor-draggable-over[data-dragged-element=section][data-dragged-is-inner=true] .elementor-inner-column .elementor-sortable-placeholder,.elementor-first-add.elementor-html5dnd-current-element .elementor-icon{display:none}.elementor-add-section{all:initial;display:-webkit-box;display:-ms-flexbox;display:flex;max-width:1160px;position:relative}.elementor-add-section:not(.elementor-dragging-on-child) .elementor-add-section-inner{border:2px dashed #d5dadf;background-color:hsla(0,0%,100%,.5)}.elementor-add-section.elementor-dragging-on-child .elementor-add-section-inner{border:3px dashed #71d7f7}.elementor-add-section[data-view=choose-action] .elementor-select-preset,.elementor-add-section[data-view=select-preset] .elementor-add-new-section{display:none}.elementor-add-section-inner{text-align:center;margin:20px;padding:40px 0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-add-new-section{display:inline-block}.elementor-add-new-section .elementor-add-section-area-button{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;height:40px;width:40px;color:#fff;font-size:16px;-webkit-border-radius:50%;border-radius:50%;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;cursor:pointer}.elementor-add-new-section .elementor-add-section-area-button:hover{opacity:.85;-webkit-box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2);box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2)}.elementor-add-new-section .elementor-add-section-area-button:active{-webkit-box-shadow:0 10px 20px rgba(0,0,0,.19),0 6px 6px rgba(0,0,0,.1);box-shadow:0 10px 20px rgba(0,0,0,.19),0 6px 6px rgba(0,0,0,.1)}.elementor-add-new-section .elementor-add-section-button{background-color:#93003c}.elementor-add-new-section .elementor-add-template-button{background-color:#6d7882;margin-right:5px}.elementor-add-section-drag-title{font-family:Arial,Helvetica,sans-serif;font-size:13px;font-weight:400;font-style:italic;line-height:1;color:#556068;margin-top:15px}.elementor-add-section-close{position:absolute;right:40px;top:40px;font-size:20px;cursor:pointer;line-height:1;color:#d5dadf}.elementor-add-section-close:hover{color:#6d7882}.elementor-select-preset-title{font-family:Arial,Helvetica,sans-serif;font-size:13px;font-weight:500;font-style:normal;text-transform:uppercase;color:#556068}.elementor-select-preset-list{list-style:none;padding:0 25px;margin:20px auto 0;overflow:hidden;max-width:700px}.elementor-select-preset-list .elementor-preset{cursor:pointer;margin:0;padding:10px;float:right;max-width:33.333%}.elementor-select-preset-list .elementor-preset:hover path{fill:#6d7882}.elementor-select-preset-list .elementor-preset:not(:hover) path{fill:#d5dadf}.elementor-select-preset-list .elementor-preset svg{height:50px;width:100%;-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}#elementor-add-new-section{margin:60px auto}#elementor-add-new-section[data-view=choose-action] .elementor-add-section-close{display:none}.elementor-add-section-inline{margin:10px auto}.elementor-column-percents-tooltip{position:absolute;display:none;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);color:#fff;font-size:10px;background-color:#556068;width:40px;padding:3.5px 0;text-align:center;z-index:1;line-height:1}.elementor-column-percents-tooltip:after{content:"";position:absolute;width:0;height:0;border:8.5px solid transparent;top:0}.elementor-column-percents-tooltip[data-side=left]{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px;right:15px}.elementor-column-percents-tooltip[data-side=left]:after{left:100%;border-left-color:#556068;border-right-width:0}.elementor-column-percents-tooltip[data-side=right]{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;left:15px}.elementor-column-percents-tooltip[data-side=right]:after{right:100%;border-right-color:#556068;border-left-width:0}.elementor-editor-preview .elementor-add-section,.elementor-editor-preview .elementor-add-section-inline,.elementor-editor-preview .elementor-element-overlay,.elementor-editor-preview .elementor-empty,.elementor-editor-preview .elementor-empty-view,.elementor-editor-preview .elementor-widget-empty{display:none}.e-preview--show-hidden-elements[data-elementor-device-mode=desktop] .elementor-edit-area-active .elementor-hidden-desktop,.e-preview--show-hidden-elements[data-elementor-device-mode=laptop] .elementor-edit-area-active .elementor-hidden-laptop,.e-preview--show-hidden-elements[data-elementor-device-mode=mobile] .elementor-edit-area-active .elementor-hidden-mobile,.e-preview--show-hidden-elements[data-elementor-device-mode=mobile_extra] .elementor-edit-area-active .elementor-hidden-mobile_extra,.e-preview--show-hidden-elements[data-elementor-device-mode=tablet] .elementor-edit-area-active .elementor-hidden-tablet,.e-preview--show-hidden-elements[data-elementor-device-mode=tablet_extra] .elementor-edit-area-active .elementor-hidden-tablet_extra,.e-preview--show-hidden-elements[data-elementor-device-mode=widescreen] .elementor-edit-area-active .elementor-hidden-widescreen{display:inherit;background:-webkit-repeating-linear-gradient(325deg,rgba(0,0,0,.05),rgba(0,0,0,.05) 1px,transparent 2px,transparent 9px);background:-o-repeating-linear-gradient(325deg,rgba(0,0,0,.05),rgba(0,0,0,.05) 1px,transparent 2px,transparent 9px);background:repeating-linear-gradient(125deg,rgba(0,0,0,.05),rgba(0,0,0,.05) 1px,transparent 2px,transparent 9px);border:1px solid rgba(0,0,0,.02)}.e-preview--show-hidden-elements[data-elementor-device-mode=desktop] .elementor-edit-area-active .elementor-hidden-desktop.elementor-section>.elementor-element-overlay,.e-preview--show-hidden-elements[data-elementor-device-mode=laptop] .elementor-edit-area-active .elementor-hidden-laptop.elementor-section>.elementor-element-overlay,.e-preview--show-hidden-elements[data-elementor-device-mode=mobile] .elementor-edit-area-active .elementor-hidden-mobile.elementor-section>.elementor-element-overlay,.e-preview--show-hidden-elements[data-elementor-device-mode=mobile_extra] .elementor-edit-area-active .elementor-hidden-mobile_extra.elementor-section>.elementor-element-overlay,.e-preview--show-hidden-elements[data-elementor-device-mode=tablet] .elementor-edit-area-active .elementor-hidden-tablet.elementor-section>.elementor-element-overlay,.e-preview--show-hidden-elements[data-elementor-device-mode=tablet_extra] .elementor-edit-area-active .elementor-hidden-tablet_extra.elementor-section>.elementor-element-overlay,.e-preview--show-hidden-elements[data-elementor-device-mode=widescreen] .elementor-edit-area-active .elementor-hidden-widescreen.elementor-section>.elementor-element-overlay{background-color:#d5dadf;mix-blend-mode:color}.e-preview--show-hidden-elements[data-elementor-device-mode=desktop] .elementor-edit-area-active .elementor-hidden-desktop.elementor-section:before,.e-preview--show-hidden-elements[data-elementor-device-mode=laptop] .elementor-edit-area-active .elementor-hidden-laptop.elementor-section:before,.e-preview--show-hidden-elements[data-elementor-device-mode=mobile] .elementor-edit-area-active .elementor-hidden-mobile.elementor-section:before,.e-preview--show-hidden-elements[data-elementor-device-mode=mobile_extra] .elementor-edit-area-active .elementor-hidden-mobile_extra.elementor-section:before,.e-preview--show-hidden-elements[data-elementor-device-mode=tablet] .elementor-edit-area-active .elementor-hidden-tablet.elementor-section:before,.e-preview--show-hidden-elements[data-elementor-device-mode=tablet_extra] .elementor-edit-area-active .elementor-hidden-tablet_extra.elementor-section:before,.e-preview--show-hidden-elements[data-elementor-device-mode=widescreen] .elementor-edit-area-active .elementor-hidden-widescreen.elementor-section:before{content:"";display:block;position:absolute;top:0;left:0;width:100%;height:100%;background-color:hsla(0,0%,100%,.6);z-index:9997}.e-preview--show-hidden-elements[data-elementor-device-mode=desktop] .elementor-edit-area-active .elementor-hidden-desktop.elementor-inner-section .elementor-container,.e-preview--show-hidden-elements[data-elementor-device-mode=laptop] .elementor-edit-area-active .elementor-hidden-laptop.elementor-inner-section .elementor-container,.e-preview--show-hidden-elements[data-elementor-device-mode=mobile] .elementor-edit-area-active .elementor-hidden-mobile.elementor-inner-section .elementor-container,.e-preview--show-hidden-elements[data-elementor-device-mode=mobile_extra] .elementor-edit-area-active .elementor-hidden-mobile_extra.elementor-inner-section .elementor-container,.e-preview--show-hidden-elements[data-elementor-device-mode=tablet] .elementor-edit-area-active .elementor-hidden-tablet.elementor-inner-section .elementor-container,.e-preview--show-hidden-elements[data-elementor-device-mode=tablet_extra] .elementor-edit-area-active .elementor-hidden-tablet_extra.elementor-inner-section .elementor-container,.e-preview--show-hidden-elements[data-elementor-device-mode=widescreen] .elementor-edit-area-active .elementor-hidden-widescreen.elementor-inner-section .elementor-container{width:100%}.e-preview--show-hidden-elements[data-elementor-device-mode=desktop] .elementor-edit-area-active .elementor-hidden-desktop>.elementor-widget-container,.e-preview--show-hidden-elements[data-elementor-device-mode=desktop] .elementor-edit-area-active .elementor-hidden-desktop>.elementor-widget-wrap,.e-preview--show-hidden-elements[data-elementor-device-mode=laptop] .elementor-edit-area-active .elementor-hidden-laptop>.elementor-widget-container,.e-preview--show-hidden-elements[data-elementor-device-mode=laptop] .elementor-edit-area-active .elementor-hidden-laptop>.elementor-widget-wrap,.e-preview--show-hidden-elements[data-elementor-device-mode=mobile] .elementor-edit-area-active .elementor-hidden-mobile>.elementor-widget-container,.e-preview--show-hidden-elements[data-elementor-device-mode=mobile] .elementor-edit-area-active .elementor-hidden-mobile>.elementor-widget-wrap,.e-preview--show-hidden-elements[data-elementor-device-mode=mobile_extra] .elementor-edit-area-active .elementor-hidden-mobile_extra>.elementor-widget-container,.e-preview--show-hidden-elements[data-elementor-device-mode=mobile_extra] .elementor-edit-area-active .elementor-hidden-mobile_extra>.elementor-widget-wrap,.e-preview--show-hidden-elements[data-elementor-device-mode=tablet] .elementor-edit-area-active .elementor-hidden-tablet>.elementor-widget-container,.e-preview--show-hidden-elements[data-elementor-device-mode=tablet] .elementor-edit-area-active .elementor-hidden-tablet>.elementor-widget-wrap,.e-preview--show-hidden-elements[data-elementor-device-mode=tablet_extra] .elementor-edit-area-active .elementor-hidden-tablet_extra>.elementor-widget-container,.e-preview--show-hidden-elements[data-elementor-device-mode=tablet_extra] .elementor-edit-area-active .elementor-hidden-tablet_extra>.elementor-widget-wrap,.e-preview--show-hidden-elements[data-elementor-device-mode=widescreen] .elementor-edit-area-active .elementor-hidden-widescreen>.elementor-widget-container,.e-preview--show-hidden-elements[data-elementor-device-mode=widescreen] .elementor-edit-area-active .elementor-hidden-widescreen>.elementor-widget-wrap{-webkit-filter:opacity(.4) saturate(0);filter:opacity(.4) saturate(0)}.e-preview--show-hidden-elements[data-elementor-device-mode=desktop] .elementor-edit-area-active .elementor-hidden-desktop.elementor-edit-hidden,.e-preview--show-hidden-elements[data-elementor-device-mode=laptop] .elementor-edit-area-active .elementor-hidden-laptop.elementor-edit-hidden,.e-preview--show-hidden-elements[data-elementor-device-mode=mobile] .elementor-edit-area-active .elementor-hidden-mobile.elementor-edit-hidden,.e-preview--show-hidden-elements[data-elementor-device-mode=mobile_extra] .elementor-edit-area-active .elementor-hidden-mobile_extra.elementor-edit-hidden,.e-preview--show-hidden-elements[data-elementor-device-mode=tablet] .elementor-edit-area-active .elementor-hidden-tablet.elementor-edit-hidden,.e-preview--show-hidden-elements[data-elementor-device-mode=tablet_extra] .elementor-edit-area-active .elementor-hidden-tablet_extra.elementor-edit-hidden,.e-preview--show-hidden-elements[data-elementor-device-mode=widescreen] .elementor-edit-area-active .elementor-hidden-widescreen.elementor-edit-hidden{display:none}assets/css/editor-preview.min.css000064400000267773151327220410013122 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
@charset "UTF-8";.elementor-control-unit-1{width:27px}.elementor-control-unit-2{width:54px}.elementor-control-unit-3{width:81px}.elementor-control-unit-4{width:108px}.elementor-control-unit-5{max-width:400px;width:52%}.elementor-tags-list{display:none;position:absolute;width:260px;max-height:300px;overflow:auto;padding-bottom:5px;background-color:#fff;border:1px solid #a4afb7;-webkit-border-radius:3px;border-radius:3px;z-index:10000}.elementor-tags-list__group-title{color:#495157;font-weight:700;font-size:12px;padding:10px 15px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-tags-list__group-title .eicon-info-circle{padding-right:5px;color:#71d7f7;font-size:14px}.elementor-tags-list__item{font-size:10px;padding:6px 15px;cursor:pointer}.elementor-tags-list__item:before{content:">";font-size:8px;padding-right:5px}.elementor-tags-list__item:hover{background-color:#e6e9ec}.elementor-tags-list__teaser{border-top:2px solid #d5dadf;padding-top:4px;margin-top:4px}.elementor-tags-list__teaser-title{color:#6d7882}.elementor-tags-list__teaser-text{padding:2px 15px 8px;line-height:1.5;font-size:12px}.elementor-tags-list__teaser-link{color:#93003c;text-decoration:underline;font-style:italic;font-weight:700}.elementor-dynamic-cover{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%;height:27px;-webkit-box-sizing:border-box;box-sizing:border-box}.elementor-dynamic-cover__title{padding:0 8px;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}.elementor-dynamic-cover__remove,.elementor-dynamic-cover__settings{color:#c2cbd2;cursor:pointer;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.elementor-dynamic-cover__remove:hover,.elementor-dynamic-cover__settings:hover{color:#a4afb7}.elementor-control-type-wysiwyg .elementor-dynamic-cover{margin-top:10px}.elementor-tag-settings-popup{position:absolute;width:260px;background-color:#e6e9ec;-webkit-box-shadow:1px 1px 10px rgba(0,0,0,.3);box-shadow:1px 1px 10px rgba(0,0,0,.3);z-index:1}.elementor-tag-settings-popup:before{content:"";position:absolute;top:-20px;left:5px;border:10px solid transparent;border-bottom-color:#fff}.elementor-tag-settings-popup .elementor-control-type-section:first-child{margin:0}.elementor-tag-controls-stack-empty{background-color:#fff;padding:10px;font-size:13px;text-align:center}.elementor-control-dynamic-switcher{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-ms-flex-negative:0;flex-shrink:0;height:27px;cursor:pointer;border:1px solid #d5dadf;-webkit-border-radius:3px;border-radius:3px;background:#fff}.elementor-control-dynamic-switcher.e-control-tool{height:20px;border:0}.elementor-control-dynamic-switcher-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-control-dynamic-switcher .eicon-database{font-size:12px}.elementor-control-dynamic-value .e-global__popover-toggle,.elementor-control-dynamic-value .elementor-control-dynamic-switcher,.elementor-control-dynamic-value .elementor-control-tag-area{display:none}.elementor-panel-box{margin-top:10px;background-color:#fff}.elementor-panel-box-content{padding:20px 20px 10px}.elementor-button{display:inline-block}.elementor-panel-alert{background-color:#fcfcfc;padding:15px;border-left:3px solid transparent;position:relative;font-size:12px;font-weight:300;font-style:italic;line-height:1.5;text-align:left;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;-webkit-box-shadow:0 1px 4px 0 rgba(0,0,0,.07);box-shadow:0 1px 4px 0 rgba(0,0,0,.07)}.elementor-panel-alert a{color:inherit}.elementor-panel-alert.elementor-panel-alert-info{border-color:#71d7f7;background-color:#f3fcff}.elementor-panel-alert.elementor-panel-alert-success{border-color:#39b54a}.elementor-panel-alert.elementor-panel-alert-warning{border-color:#fcb92c}.elementor-panel-alert.elementor-panel-alert-danger{border-color:#d72b3f}.elementor-label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;-webkit-border-radius:.25em;border-radius:.25em;text-transform:capitalize}.elementor-label.elementor-label-default{background-color:#a4afb7}.elementor-label.elementor-label-info{background-color:#5bc0de}.elementor-label.elementor-label-success{background-color:#5cb85c}.elementor-label.elementor-label-warning{background-color:#f0ad4e}.elementor-label.elementor-label-danger{background-color:#d9534f}.elementor-control-field-description,.elementor-descriptor{font-size:11px;font-style:italic;line-height:1.4;color:#a4afb7}.elementor-controls-popover{display:none;position:absolute;-webkit-box-shadow:0 2px 15px rgba(0,0,0,.3);box-shadow:0 2px 15px rgba(0,0,0,.3);-webkit-border-radius:3px;border-radius:3px;left:0;right:0;margin:-4px auto 5px;padding-top:15px;width:90%;z-index:10000;background-color:#fff}.elementor-controls-popover:before{content:"";position:absolute;top:-16px;right:22px;border:8px solid transparent;border-bottom-color:#fff}.elementor-controls-popover div.elementor-control{background-color:transparent}.elementor-controls-popover div.elementor-control:before{content:none}#elementor-controls .pojo-widget-button-collapse{display:none}#elementor-panel-global .elementor-nerd-box .elementor-nerd-box-icon{margin-top:20px}.elementor-control{--control-title-size:12px;background-color:#fff;position:relative;padding:0 20px 15px}.elementor-control a{font-weight:500;text-decoration:none;border-bottom:1px dotted transparent;-webkit-transition:all .3s ease-in-out;-o-transition:all ease-in-out .3s;transition:all .3s ease-in-out}.elementor-control a:hover{border-bottom-color:inherit}.elementor-control a.elementor-responsive-switcher{border-bottom:0}.elementor-control .elementor-control-content{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.elementor-control .elementor-control-title{font-size:var(--control-title-size);line-height:1;margin-right:5px}.elementor-control .elementor-control-spinner{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-control.elementor-control-type-divider{padding:0;background-color:transparent}.elementor-control.elementor-control-type-divider .elementor-control-content{border:solid #e6e9ec;border-width:1px 0 0;background-color:#fff;height:15px}.elementor-control.elementor-control-separator-default:not(.elementor-control-type-divider).elementor-control-wp{margin-top:15px}.elementor-control.elementor-control-separator-default:not(.elementor-control-type-divider).elementor-control-wp:before{content:"";height:1px;display:block;margin-bottom:15px;background-color:transparent}.elementor-control.elementor-control-separator-before{padding-top:15px}.elementor-control.elementor-control-separator-before:before{content:"";position:absolute;height:1px;width:100%;top:0;left:0;background-color:#e6e9ec}.elementor-control.elementor-control-separator-after:after{content:"";position:absolute;height:1px;width:100%;bottom:0;left:0;background-color:#e6e9ec}.elementor-control.elementor-control-separator-after+.elementor-control-type-tabs+.elementor-control-separator-default,.elementor-control.elementor-control-separator-after:not(.elementor-hidden-control)+.elementor-control-separator-default{padding-top:15px}.elementor-control.elementor-control-deprecated,.elementor-control.elementor-control-deprecated .elementor-control-field-description{color:#b01b1b}.elementor-control.elementor-control-hidden-label>*>*>.elementor-control-title,.elementor-control.elementor-control-hidden-label>*>.elementor-control-title,.elementor-control.elementor-hidden-control{display:none}.elementor-control.elementor-control-type-heading .elementor-control-title{font-weight:700;margin:0}body:not(.elementor-device-desktop) .elementor-control.elementor-control-responsive-desktop,body:not(.elementor-device-laptop) .elementor-control.elementor-control-responsive-laptop,body:not(.elementor-device-mobile) .elementor-control.elementor-control-responsive-mobile,body:not(.elementor-device-mobile_extra) .elementor-control.elementor-control-responsive-mobile_extra,body:not(.elementor-device-tablet) .elementor-control.elementor-control-responsive-tablet,body:not(.elementor-device-tablet_extra) .elementor-control.elementor-control-responsive-tablet_extra,body:not(.elementor-device-widescreen) .elementor-control.elementor-control-responsive-widescreen{display:none}.elementor-control.elementor-control-type-select .elementor-control-input-wrapper{position:relative}.elementor-control.elementor-control-type-select .elementor-control-input-wrapper select{appearance:none;-webkit-appearance:none;-moz-appearance:none;font-size:12px;font-family:inherit;font-weight:inherit;font-style:inherit;text-transform:inherit;letter-spacing:inherit;line-height:inherit;-ms-flex-preferred-size:100%;flex-basis:100%;padding-left:5px;padding-right:20px;cursor:pointer}.elementor-control.elementor-control-type-select .elementor-control-input-wrapper select.e-select-placeholder{color:#a4afb7}.elementor-control.elementor-control-type-select .elementor-control-input-wrapper option.e-option-placeholder{display:none}.elementor-control.elementor-control-type-select .elementor-control-input-wrapper:after{font-family:eicons;content:"\e8ad";font-size:12px;position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);right:5px;pointer-events:none}.elementor-control-custom_attributes_pro .elementor-nerd-box-message,.elementor-control-custom_css_pro .elementor-nerd-box-message{margin-top:5px}.elementor-control.elementor-control-custom_css_title{font-size:12px}.elementor-control.elementor-open .elementor-panel-heading-toggle .eicon:before,.elementor-panel-scheme-item.elementor-open .elementor-panel-heading-toggle .eicon:before{content:"\e92a"}.elementor-control:not(.elementor-open) .elementor-panel-heading-toggle .eicon:before,.elementor-panel-scheme-item:not(.elementor-open) .elementor-panel-heading-toggle .eicon:before{content:""}.elementor-panel-heading{display:table;table-layout:fixed;height:40px;padding:0 20px;width:100%;border-bottom:1px solid #e6e9ec;cursor:pointer}.elementor-panel-heading>*{display:table-cell;vertical-align:middle}.elementor-panel-heading-toggle{width:20px;color:#495157}.elementor-panel-heading-title{color:#495157;font-weight:700}.elementor-control-wp{line-height:1.5}.elementor-control-wp p{margin:15px 0}.elementor-control-field{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-label-block>.elementor-control-content>.elementor-control-field{-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-label-block>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{width:100%;margin-top:10px}.elementor-label-block.elementor-control-hidden-label.elementor-label-block>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper,.elementor-label-block.elementor-control-hidden-label:not(.elementor-control-dynamic)>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{margin-top:0}.elementor-label-inline>.elementor-control-content>.elementor-control-field>.elementor-control-title{-ms-flex-negative:0;flex-shrink:0}.elementor-label-inline>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{margin-left:auto}.elementor-control-field-description{margin-top:10px}.elementor-group-control-attachment_alert .elementor-control-field-description{margin-top:0}.elementor-required{color:#b01b1b}.elementor-units-choices{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;text-align:right}.elementor-units-choices input{display:none}.elementor-units-choices input:not(:checked)+label{color:#a4afb7}.elementor-units-choices input.e-units-placeholder+label{color:#c2cbd2;text-decoration:underline}.elementor-units-choices input:checked+label{text-decoration:underline}.elementor-units-choices label{cursor:pointer;padding:0 2px;text-transform:uppercase;font-size:9px}.elementor-control-responsive-switchers{--selected-option:0;--pointer-position:var(--selected-option);position:relative;width:2em;height:2em;margin:calc(-2em + var(--control-title-size)) 0;margin-right:5px}.elementor-control-responsive-switchers__holder{position:absolute;width:100%;top:0;background-color:#fff;-webkit-border-radius:3px;border-radius:3px;-webkit-transition:.15s;-o-transition:.15s;transition:.15s;border:1px solid transparent}.elementor-control-responsive-switchers.elementor-responsive-switchers-open{z-index:11000}.elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-responsive-switcher{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-responsive-switcher:hover{color:#71d7f7}.elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-control-responsive-switchers__holder{top:calc(-1 * var(--selected-option) * 2em);-webkit-box-shadow:0 0 3px rgba(0,0,0,.2);box-shadow:0 0 3px rgba(0,0,0,.2)}.elementor-responsive-switcher{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;position:relative;z-index:2;cursor:pointer;height:0;-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);opacity:0;-webkit-transition:.15s;-o-transition:.15s;transition:.15s;font-size:12px}a.elementor-responsive-switcher{color:#a4afb7}a.elementor-responsive-switcher:hover{color:#71d7f7}.elementor-device-widescreen .elementor-responsive-switcher.elementor-responsive-switcher-widescreen{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-widescreen .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-widescreen{color:#71d7f7}.elementor-device-desktop .elementor-responsive-switcher.elementor-responsive-switcher-desktop{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-desktop .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-desktop{color:#71d7f7}.elementor-device-laptop .elementor-responsive-switcher.elementor-responsive-switcher-laptop{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-laptop .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-laptop{color:#71d7f7}.elementor-device-tablet_extra .elementor-responsive-switcher.elementor-responsive-switcher-tablet_extra{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-tablet_extra .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-tablet_extra{color:#71d7f7}.elementor-device-tablet .elementor-responsive-switcher.elementor-responsive-switcher-tablet{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-tablet .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-tablet{color:#71d7f7}.elementor-device-mobile_extra .elementor-responsive-switcher.elementor-responsive-switcher-mobile_extra{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-mobile_extra .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-mobile_extra{color:#71d7f7}.elementor-device-mobile .elementor-responsive-switcher.elementor-responsive-switcher-mobile{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-mobile .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-mobile{color:#71d7f7}.elementor-update-preview{margin:15px 15px 0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-update-preview-button-wrapper{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;text-align:right}.elementor-update-preview-button{padding:8px 15px;text-transform:uppercase}.elementor-control-direction-ltr input,.elementor-control-direction-ltr textarea{direction:ltr}.elementor-control-direction-rtl input,.elementor-control-direction-rtl textarea{direction:rtl}.elementor-control-type-button .elementor-control-input-wrapper{text-align:right}.elementor-control-type-button .elementor-button{width:auto;height:26px}.elementor-control-type-choose.elementor-label-block .elementor-choices{width:100%}.elementor-choices{display:-webkit-box;display:-ms-flexbox;display:flex;height:27px;line-height:27px;text-align:center;border-spacing:1px;-webkit-border-radius:3px;border-radius:3px;overflow:hidden}.elementor-choices .elementor-choices-label{border:1px solid #d5dadf;border-right:none;font-size:12px;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s;cursor:pointer;overflow:hidden}.elementor-choices .elementor-choices-label:nth-child(2){-webkit-border-top-left-radius:3px;border-top-left-radius:3px;-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px}.elementor-choices .elementor-choices-label:last-child{border-right:1px solid #d5dadf;-webkit-border-top-right-radius:3px;border-top-right-radius:3px;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px}.elementor-choices input{display:none}.elementor-choices input.e-choose-placeholder+.elementor-choices-label{color:#fff;background-color:#c2cbd2;border-color:#c2cbd2}.elementor-choices input:checked+.elementor-choices-label{color:#fff;background-color:#a4afb7;border-color:#a4afb7}.elementor-label-inline .elementor-choices{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.rtl .elementor-control-align .elementor-choices,.rtl .elementor-control-position .elementor-choices,.rtl .elementor-control-text_align .elementor-choices{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.rtl .elementor-control-align .elementor-choices .elementor-choices-label:nth-child(2),.rtl .elementor-control-position .elementor-choices .elementor-choices-label:nth-child(2),.rtl .elementor-control-text_align .elementor-choices .elementor-choices-label:nth-child(2){border-right:1px solid #d5dadf;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.rtl .elementor-control-align .elementor-choices .elementor-choices-label:last-child,.rtl .elementor-control-position .elementor-choices .elementor-choices-label:last-child,.rtl .elementor-control-text_align .elementor-choices .elementor-choices-label:last-child{border-right:none;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-control-type-color.e-control-global .e-global__popover-toggle~.pickr{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;-ms-flex-negative:0;flex-shrink:0}.elementor-control-type-color .elementor-control-title{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-control-type-color .elementor-control-input-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-control-type-color .elementor-control-dynamic-switcher{border-left-width:0;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-control-type-color.elementor-control-dynamic .pickr{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-group-control-css-filter .elementor-slider{height:6px;-webkit-box-shadow:0 0 1px 1px inset rgba(0,0,0,.2);box-shadow:inset 0 0 1px 1px rgba(0,0,0,.2)}.elementor-group-control-css-filter .elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{margin-top:0;margin-bottom:5px}.elementor-group-control-blur .elementor-slider{background:url(../images/blur.png);-webkit-background-size:cover;background-size:cover;background-position:50%}.elementor-group-control-contrast .elementor-slider{background:url(../images/contrast.png);-webkit-background-size:100% 100%;background-size:100% 100%}.elementor-group-control-hue .elementor-slider{background-image:-webkit-gradient(linear,left top,right top,from(red),color-stop(orange),color-stop(#ff0),color-stop(#adff2f),color-stop(#32cd32),color-stop(#00bfff),color-stop(#00f),color-stop(95%,#9400d3));background-image:-webkit-linear-gradient(left,red,orange,#ff0,#adff2f,#32cd32,#00bfff,#00f,#9400d3 95%);background-image:-o-linear-gradient(left,red,orange,#ff0,#adff2f,#32cd32,#00bfff,#00f,#9400d3 95%);background-image:linear-gradient(90deg,red,orange,#ff0,#adff2f,#32cd32,#00bfff,#00f,#9400d3 95%)}.elementor-group-control-saturate .elementor-slider{background-image:-webkit-gradient(linear,left top,right top,from(grey),to(red));background-image:-webkit-linear-gradient(left,grey,red);background-image:-o-linear-gradient(left,grey,red);background-image:linear-gradient(90deg,grey,red)}.elementor-group-control-brightness .elementor-slider{background-image:-webkit-gradient(linear,left top,right top,from(#000),to(#fff));background-image:-webkit-linear-gradient(left,#000,#fff);background-image:-o-linear-gradient(left,#000,#fff);background-image:linear-gradient(90deg,#000,#fff)}.elementor-control-type-dimensions .elementor-control-dimensions{overflow:hidden}.elementor-control-type-dimensions li{float:left;width:20%}.elementor-control-type-dimensions li .elementor-link-dimensions,.elementor-control-type-dimensions li input{display:block;text-align:center;width:100%;border-color:#d5dadf;height:27px}.elementor-control-type-dimensions li input{border-left:none;-webkit-border-radius:0;border-radius:0;padding:4px 0}.elementor-control-type-dimensions li input:focus{border-left:1px solid;border-color:#a4afb7;margin-left:-1px;width:calc(100% + 1px)}.elementor-control-type-dimensions li input:focus+.elementor-control-dimension-label{color:#a4afb7}.elementor-control-type-dimensions li .elementor-link-dimensions{border:1px solid #d5dadf;border-left:none;background-color:#fff;padding:0;outline:none;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;cursor:pointer}.elementor-control-type-dimensions li:first-child input{border-left:1px solid #d5dadf;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-dimensions li:first-child input:focus{border-color:#a4afb7;margin-left:0;width:100%}.elementor-control-type-dimensions .elementor-control-dimension-label{display:block;text-align:center;color:#d5dadf;font-size:9px;text-transform:uppercase;padding-top:5px}.elementor-control-type-dimensions .elementor-link-dimensions.unlinked{background-color:#fff}.elementor-control-type-dimensions .elementor-link-dimensions.unlinked .elementor-linked{display:none}.elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked){background-color:#a4afb7;border-color:#a4afb7}.elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked) .elementor-unlinked{display:none}.elementor-control-type-dimensions .elementor-link-dimensions .elementor-linked{color:#fff}.elementor-control-type-icons .elementor-control-media__preview>*{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor-control-type-icons .elementor-control-media__preview i{font-size:70px;color:#6d7882}.elementor-control-type-icons .elementor-control-media__preview svg{height:75%}.elementor-control-type-icons .elementor-control-icons--inline__svg i.eicon-upload{font-size:15px}.elementor-control-type-gallery .elementor-control-media__content{border:1px solid #d5dadf;-webkit-border-radius:3px;border-radius:3px}.elementor-control-type-gallery .elementor-control-gallery-status{font-size:12px;height:27px;padding-left:10px;border-bottom:1px solid #d5dadf;display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-control-type-gallery .elementor-control-gallery-status>*{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-control-type-gallery .elementor-control-gallery-status-title{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-control-type-gallery .elementor-control-gallery-content{position:relative;overflow:hidden}.elementor-control-type-gallery .elementor-control-gallery-content:not(:hover) .elementor-control-gallery-edit{opacity:0}.elementor-control-type-gallery .elementor-control-gallery-thumbnails{display:grid;grid-template-columns:repeat(auto-fill,minmax(48px,1fr));grid-gap:10px;cursor:pointer;padding:10px}.elementor-control-type-gallery .elementor-control-gallery-thumbnail{width:48px;height:48px;-webkit-background-size:cover;background-size:cover;background-position:50% 50%}.elementor-control-type-gallery .elementor-control-gallery-edit{position:absolute;top:0;bottom:0;left:0;right:0;background-color:rgba(109,120,130,.3);padding:10px;font-size:11px;-webkit-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;transition:all .3s ease-in-out;pointer-events:none;cursor:pointer;opacity:1}.elementor-control-type-gallery .elementor-control-gallery-edit span{position:absolute;top:10px;right:10px;width:21px;height:21px;background-color:hsla(0,0%,100%,.9);color:#a4afb7;-webkit-box-shadow:0 0 7px 0 rgba(0,0,0,.2);box-shadow:0 0 7px 0 rgba(0,0,0,.2);-webkit-border-radius:3px;border-radius:3px}.elementor-control-type-gallery .elementor-control-gallery-edit span i{font-size:11px;padding:5px}.elementor-control-type-gallery .elementor-control-gallery-add{width:48px;height:48px;color:#fff;background-color:#d5dadf;font-size:14px;-webkit-border-radius:0;border-radius:0}.elementor-control-type-gallery .elementor-control-gallery-add:hover{background-color:#c2cbd2}.elementor-control-type-gallery .elementor-control-gallery-add i{margin:0;color:#a4afb7}.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-clear,.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-edit,.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-thumbnails{display:none}.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-content{padding:10px}.elementor-control-type-gallery.elementor-gallery-has-images .elementor-control-gallery-add{display:none}.elementor-control-type-gallery.elementor-control-dynamic .elementor-control-gallery-clear{border-left:1px solid #d5dadf}.elementor-control-type-gallery .elementor-control-gallery-clear{cursor:pointer;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-control-type-gallery .elementor-control-gallery-clear:hover{color:#b01b1b}.elementor-control-type-gallery .elementor-control-dynamic-switcher{border:1px solid #d5dadf;border-top:none;border-right:none;-webkit-border-radius:0 3px 0 0;border-radius:0 3px 0 0}.e-global__popover{width:288px;z-index:1;font-size:12px;padding-left:10px}.e-global__popover-toggle{border:1px solid #d5dadf;border-right:0;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;cursor:pointer}.e-global__popover-toggle--active i{color:#71d7f7}.e-global__popover-container{-webkit-box-shadow:0 2px 15px rgba(0,0,0,.3);box-shadow:0 2px 15px rgba(0,0,0,.3);-webkit-border-radius:3px;border-radius:3px;background-color:#fff;padding-bottom:5px}.e-global__popover-title{padding:15px 20px;font-weight:500;color:#6d7882;border-bottom:1px solid #e6e9ec;display:-webkit-box;display:-ms-flexbox;display:flex}.e-global__popover-title>i{margin-right:5px;color:#d5dadf}.e-global__popover-title-text{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.e-global__popover-info{margin-right:5px;display:inline-block}.e-global__popover-info-tooltip{width:270px;z-index:1;background-color:rgba(0,0,0,.9);color:#fff;padding:20px;-webkit-border-radius:3px;border-radius:3px}.e-global__popover-info-tooltip:after{content:"";position:absolute;bottom:-17px;left:16px;border:10px solid transparent;border-top-color:rgba(0,0,0,.9)}.e-global__popover-info i{color:#d5dadf;font-size:13px}.e-global__preview-items-container{max-height:260px;overflow-y:auto;margin-top:5px}.e-global__preview-items-container::-webkit-scrollbar{width:7px}.e-global__preview-items-container::-webkit-scrollbar-thumb{background-color:#c2cbd2;-webkit-border-radius:10px;border-radius:10px}.e-global__manage-button{font-weight:500;cursor:pointer}.e-global__manage-button:hover i{color:#4ab7f4}.e-global__manage-button i{color:#6d7882}.e-global__typography{padding:5px 10px 5px 35px;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}.e-global__typography.e-global__preview-item--selected:before{font-family:eicons;font-size:13px;content:"\e90e";position:absolute;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);top:50%;left:12px}.e-global__color{margin:5px auto;padding:5px 20px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.e-global__color:first-child{margin-top:5px}.e-global__color:last-child{margin-bottom:10px}.e-global__color-preview-container{height:20px;width:20px;-webkit-border-radius:3px;border-radius:3px;border:1px solid rgba(0,0,0,.1);margin-right:10px;-ms-flex-negative:0;flex-shrink:0;position:relative}.e-global__color-preview-color,.e-global__color-preview-transparent-bg{-webkit-border-radius:3px;border-radius:3px;height:100%;width:100%;position:absolute;top:0;left:0}.e-global__color-preview-transparent-bg{background-image:-webkit-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd),-webkit-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd);background-image:-o-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd),-o-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd);background-image:linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd),linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd);-webkit-background-size:12px 12px;background-size:12px 12px;background-position:0 0,6px 6px}.e-global__color-title{font-weight:500;color:#6d7882;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;padding-right:10px}.e-global__color-hex{font-size:10px;font-weight:500;color:#c2cbd2}.e-global__color .pcr-button{background-color:#fff}.e-global__color.e-global__preview-item--selected .e-global__color-preview-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:#fff}.e-global__color.e-global__preview-item--selected .e-global__color-preview-container:before{font-family:eicons;font-size:13px;content:"\e90e";text-shadow:0 0 1px #000;z-index:1}.e-global__preview-item{cursor:pointer;position:relative}.e-global__preview-item:hover{background-color:#f1f3f5}.e-global__preview-item:hover .e-global__color-hex{color:#a4afb7}.e-global__confirm-add .dialog-buttons-wrapper>.dialog-button.dialog-confirm-ok{color:#39b54a}.e-global__confirm-delete i{color:#b01b1b}.e-global__confirm-message-text i{color:#fcb92c}.e-global__confirm-input-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;border:1px solid #a4afb7;-webkit-border-radius:3px;border-radius:3px;margin-top:10px;padding:2px}.e-global__confirm-input-wrapper input{font-family:Roboto,Arial,sans-serif;font-weight:500;font-size:12px;padding:2px;border:0}.e-control-global .elementor-control-input-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;max-width:135px;width:100%}.e-control-global.elementor-control .elementor-control-input-wrapper{direction:ltr}.e-control-global .elementor-control-spinner{margin-right:4px}.elementor-control-type-hidden{display:none!important}.elementor-control-type-icon .select2-selection__rendered .eicon{margin-right:3px}.elementor-control-type-image_dimensions .elementor-control-field-description{margin:0 0 15px;line-height:1.4}.elementor-control-type-image_dimensions .elementor-control-input-wrapper{overflow:hidden}.elementor-control-type-image_dimensions .elementor-image-dimensions-field{width:65px;float:left}.elementor-control-type-image_dimensions .elementor-image-dimensions-field input:focus+.elementor-image-dimensions-field-description{color:#a4afb7}.elementor-control-type-image_dimensions .elementor-image-dimensions-separator{width:20px;text-align:center;float:left;padding-top:4px}.elementor-control-type-image_dimensions .elementor-image-dimensions-field-description{display:block;text-transform:uppercase;margin-top:5px;color:#d5dadf;font-size:9px;text-align:center}.elementor-control-type-image_dimensions .elementor-image-dimensions-apply-button{float:right;height:27px;width:65px}.elementor-control-media.elementor-media-empty .elementor-control-media-area .elementor-control-media__content__remove,.elementor-control-media.elementor-media-empty .elementor-control-media-area .elementor-control-media__remove,.elementor-control-media:not(.elementor-media-empty) .elementor-control-media__content__upload-button{display:none}.elementor-control-media .elementor-control-input-wrapper{border:1px solid #d5dadf}.elementor-control-media .eicon-plus-circle{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);color:#fff;font-size:20px}.elementor-control-media__content__upload-button{background-color:#d5dadf}.elementor-control-media__preview{height:100%;-webkit-background-size:cover;background-size:cover;background-position:50%}.elementor-control-media-area{background-image:-webkit-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd),-webkit-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd);background-image:-o-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd),-o-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd);background-image:linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd),linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd);-webkit-background-size:16px 16px;background-size:16px 16px;background-position:0 0,8px 8px;background-color:#f6f6f6}.elementor-control-media-area:not(:hover) .elementor-control-media__remove{display:none}.elementor-control-media-area .eicon-video-camera{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);color:hsla(0,0%,100%,.7);font-size:21px}.elementor-control-media .elementor-control-media__content{cursor:pointer;overflow:hidden}.elementor-control-media .elementor-control-media__content:hover:after{content:"";position:absolute;top:0;bottom:0;left:0;right:0;background-color:rgba(0,0,0,.2);pointer-events:none}.elementor-control-media .elementor-control-media__content:not(:hover) .elementor-control-media__tools{bottom:-30px}.elementor-control-media__content,.elementor-control-media__tools{-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.elementor-control-media__tools{position:absolute;bottom:0;left:0;right:0;height:27px}.elementor-control-media__tools>:not(:first-child){margin-left:1px}.elementor-control-media__tool{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;color:#fff;background-color:rgba(109,120,130,.85);font-size:11px;-webkit-transition:background .3s;-o-transition:background .3s;transition:background .3s}.elementor-control-media__tool:hover{background-color:rgba(109,120,130,.95)}.elementor-control-media__remove{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;transition:all .3s ease-in-out}.elementor-control-media__content__remove{position:absolute;z-index:1;top:10px;right:10px;width:20px;height:20px;font-size:11px;color:#a4afb7;background-color:hsla(0,0%,100%,.9);-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 0 7px 0 rgba(0,0,0,.1);box-shadow:0 0 7px 0 rgba(0,0,0,.1)}.elementor-control-media__content__remove:hover{background-color:#fff;-webkit-box-shadow:0 0 5px 0 rgba(0,0,0,.4);box-shadow:0 0 5px 0 rgba(0,0,0,.4)}.elementor-control-media.elementor-media-empty .elementor-control-file-area{display:none}.elementor-control-media__file{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%;margin-top:10px;border:1px solid #d5dadf}.elementor-control-media__file__content{padding-left:5px;font-size:12px}.elementor-control-media__file__content__label{color:#a4afb7}.elementor-control-media__file__content__info{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-weight:500}.elementor-control-media__file__content__info__icon{margin-right:5px}.elementor-control-media__file__controls{display:-webkit-box;display:-ms-flexbox;display:flex;border-left:1px solid #d5dadf}.elementor-control-media__file__controls__remove,.elementor-control-media__file__controls__upload-button{width:27px;height:27px;cursor:pointer;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-control-media__file__controls__upload-button{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-control-media__file__controls__remove{border-right:1px solid #d5dadf}.elementor-control-media.elementor-media-empty .elementor-control-media__file__content__info,.elementor-control-media.elementor-media-empty .elementor-control-media__file__controls__remove,.elementor-control-media:not(.elementor-media-empty) .elementor-control-media__file__content__label{display:none}.elementor-control-media .elementor-control-dynamic-switcher{border:none;-webkit-border-radius:0;border-radius:0;background-color:rgba(109,120,130,.85);color:#fff}.elementor-control-media .elementor-control-dynamic-switcher:hover{background-color:rgba(109,120,130,.95)}.elementor-control-type-media.elementor-control-dynamic-value .elementor-control-input-wrapper{border:none}.elementor-control-type-number.elementor-control-dynamic input{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px;border-right:none}.elementor-control-type-number.elementor-control-dynamic .elementor-control-dynamic-switcher{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-control-type-order .elementor-control-oreder-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-control-type-order input{display:none}.elementor-control-type-order input:checked+.elementor-control-order-label{-webkit-transform:scaleY(-1);-ms-transform:scaleY(-1);transform:scaleY(-1)}.elementor-control-type-order select{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-order select:not(:focus)~.elementor-control-order-label{border-color:#d5dadf}.elementor-control-type-order select:focus~.elementor-control-order-label{border-color:#a4afb7}.elementor-control-type-order .elementor-control-order-label{position:relative;padding:0;width:40px;border:1px solid;font-size:10px;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;margin-left:-3px;background-color:#fff;cursor:pointer}.elementor-control-type-order .elementor-control-order-label i{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor-control-type-popover_toggle input{display:none}.elementor-control-type-popover_toggle label{cursor:pointer}.elementor-control-type-popover_toggle .elementor-control-input-wrapper{direction:rtl}.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle:checked+.elementor-control-popover-toggle-toggle-label{color:#71d7f7}.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle:not(:checked)~.elementor-control-popover-toggle-reset-label{display:none}.elementor-control-type-popover_toggle .elementor-control-popover-toggle-reset-label{color:#c2cbd2;margin-right:5px}.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle-label{height:27px;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-border-radius:3px;border-radius:3px;border:1px solid #d5dadf}.elementor-controls-popover.e-controls-popover--typography{padding-top:0}.e-control-global .elementor-control-popover-toggle-toggle-label{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;-ms-flex-negative:0;flex-shrink:0}.elementor-control-type-repeater .elementor-control:not(.elementor-control-type-tab){padding-right:10px;padding-left:10px;padding-bottom:10px}.elementor-control-type-repeater.elementor-repeater-has-minimum-rows .elementor-repeater-tool-remove{display:none}.elementor-control-type-repeater .elementor-repeater-fields{margin:10px 0}.elementor-control-type-repeater .elementor-repeater-row-controls{border:1px solid #d5dadf;border-top:0 solid #d5dadf;padding-top:15px}.elementor-control-type-repeater .elementor-repeater-row-controls:not(.editable){display:none}.elementor-control-type-repeater .elementor-repeater-row-tools{display:table;table-layout:fixed;width:100%;color:#556068;background-color:#d5dadf;height:40px;border-spacing:1px;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-control-type-repeater .elementor-repeater-row-tools:hover{background-color:#a4afb7}.elementor-control-type-repeater .elementor-repeater-row-tools>div{display:table-cell;text-align:center;vertical-align:middle;cursor:pointer}.elementor-control-type-repeater .elementor-repeater-row-tools>div:not(.elementor-repeater-row-handle-sortable){background-color:#fff}.elementor-control-type-repeater .elementor-repeater-row-tools>div:hover{opacity:.95}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title{text-align:left;padding:0 10px;font-size:12px;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title .eicon,.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title i,.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title svg{margin-right:5px}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title img[src$=svg]{width:1em}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-tool{width:40px}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-handle-sortable{cursor:move;width:10px;color:#fff}.elementor-control-type-repeater .elementor-button-wrapper{text-align:center;padding-top:5px}.elementor-control-type-section{margin-top:10px;padding:0}.elementor-control-type-section.elementor-open{padding-bottom:15px}.elementor-control-type-section+.elementor-control:not(.elementor-control-type-section):before{display:none}.elementor-shadow-box .elementor-shadow-slider{margin-top:10px}.elementor-shadow-box .elementor-color-picker-wrapper .elementor-control-title{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-control-type-slider.elementor-control-dynamic input{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-slider .elementor-control-unit-2{width:21%}.elementor-control-type-slider.elementor-control-type-slider--multiple .elementor-control-input-wrapper{display:block}.elementor-control-type-slider--multiple{padding-bottom:40px}.elementor-control-type-slider--multiple .elementor-slider{margin-top:12px;width:98%}.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle{-webkit-border-radius:0;border-radius:0;width:10px;-webkit-transform:translateY(calc(50% - 14px)) translateX(4px);-ms-transform:translateY(calc(50% - 14px)) translateX(4px);transform:translateY(calc(50% - 14px)) translateX(4px)}.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle:after{content:"";position:absolute;top:2px;height:12px;width:11px;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg);background-color:#fff;-webkit-border-radius:3px;border-radius:3px}.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle-lower:after{left:5px;-webkit-box-shadow:2px -2px 3px 0 rgba(0,0,0,.1);box-shadow:2px -2px 3px 0 rgba(0,0,0,.1)}.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle-upper:after{right:5px;-webkit-box-shadow:-2px 2px 3px 0 rgba(0,0,0,.1);box-shadow:-2px 2px 3px 0 rgba(0,0,0,.1)}.elementor-control-type-slider .elementor-control-dynamic-switcher{border-left-width:0;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-control-type-slider .elementor-control-input-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-control-type-slider .elementor-dynamic-cover{margin-top:10px}.elementor-slider{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;height:4px;background-color:#d5dadf;-webkit-border-radius:5px;border-radius:5px;position:relative;cursor:pointer}.elementor-slider-input{width:21%;min-width:54px;margin-left:12px}.elementor-slider__extra{position:relative}.elementor-slider__labels{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.elementor-slider__label{font-size:9px;color:#c2cbd2}.elementor-slider__scales{position:absolute;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:space-evenly;-ms-flex-pack:space-evenly;justify-content:space-evenly;width:100%;margin-top:4px}.elementor-slider__scale{width:1px;height:21px;background-color:#a4afb7}.elementor-slider .noUi-handle{height:16px;width:16px;background-color:#fff;right:0;-webkit-transform:translateY(calc(50% - 14px)) translateX(8px);-ms-transform:translateY(calc(50% - 14px)) translateX(8px);transform:translateY(calc(50% - 14px)) translateX(8px);position:absolute;-webkit-box-shadow:0 1px 5px rgba(0,0,0,.3);box-shadow:0 1px 5px rgba(0,0,0,.3);-webkit-border-radius:50%;border-radius:50%}.elementor-slider .noUi-connects{position:absolute;width:100%;height:4px}.elementor-slider .noUi-connect{position:absolute;z-index:0;top:0;left:0;height:100%;width:100%;will-change:transform;-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0;background-color:#a4afb7}.elementor-slider .noUi-tooltip{position:absolute;top:calc(100% + 5px);left:calc(50% - 4px);-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);font-size:10px}.elementor-control-type-structure .elementor-control-field{display:initial}.elementor-control-type-structure .elementor-control-structure-preset{padding:3px;-webkit-border-radius:3px;border-radius:3px;display:inline-block;cursor:pointer;height:50px}.elementor-control-type-structure .elementor-control-structure-preset svg{height:100%}.elementor-control-type-structure .elementor-control-structure-preset path{fill:#e6e9ec}.elementor-control-type-structure .elementor-control-structure-reset{padding:15px 20px 0;font-size:11px;cursor:pointer;color:#a4afb7;border-top:1px solid #e6e9ec;margin:0 -20px}.elementor-control-type-structure .elementor-control-structure-title{margin:10px -20px 0}.elementor-control-type-structure .elementor-control-structure-title:before{height:10px;-webkit-box-shadow:inset 0 2px 4px hsla(0,0%,49.8%,.1);box-shadow:inset 0 2px 4px hsla(0,0%,49.8%,.1)}.elementor-control-type-structure .elementor-control-structure-presets{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.elementor-control-type-structure .elementor-control-structure-presets input{display:none}.elementor-control-type-structure .elementor-control-structure-presets input:checked+.elementor-control-structure-preset path{fill:#a4afb7}.elementor-control-type-structure .elementor-control-structure-preset-wrapper{margin-bottom:15px}.elementor-control-type-structure .elementor-control-structure-preset-title{text-align:center;padding-top:5px;font-style:italic;font-size:11px;color:#a4afb7}.elementor-control-type-switcher .elementor-control-input-wrapper{text-align:right}.elementor-control-type-switcher .elementor-switch{position:relative;display:inline-block;vertical-align:top;height:20px;background-color:#fff;-webkit-border-radius:18px;border-radius:18px;cursor:pointer}.elementor-control-type-switcher .elementor-switch-input{display:none}.elementor-control-type-switcher .elementor-switch-label{position:relative;display:block;height:inherit;font-size:7px;text-transform:uppercase;background:#eceeef;-webkit-border-radius:inherit;border-radius:inherit;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.12),inset 0 0 2px rgba(0,0,0,.15);box-shadow:inset 0 1px 2px rgba(0,0,0,.12),inset 0 0 2px rgba(0,0,0,.15);-webkit-transition:.15s ease-out;-o-transition:.15s ease-out;transition:.15s ease-out;-webkit-transition-property:opacity,background;-o-transition-property:opacity,background;transition-property:opacity,background}.elementor-control-type-switcher .elementor-switch-label:after,.elementor-control-type-switcher .elementor-switch-label:before{position:absolute;top:0;width:50%;text-align:center;line-height:20px;-webkit-transition:inherit;-o-transition:inherit;transition:inherit}.elementor-control-type-switcher .elementor-switch-label:before{content:attr(data-off);right:3px;color:#a4afb7;text-shadow:0 1px hsla(0,0%,100%,.5)}.elementor-control-type-switcher .elementor-switch-label:after{content:attr(data-on);left:3px;color:#fff;text-shadow:0 1px rgba(0,0,0,.2);opacity:0}.elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-label{background:#71d7f7;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.15),inset 0 0 3px rgba(0,0,0,.2);box-shadow:inset 0 1px 2px rgba(0,0,0,.15),inset 0 0 3px rgba(0,0,0,.2)}.elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-label:before{opacity:0}.elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-label:after{opacity:1}.elementor-control-type-switcher .elementor-switch-handle{position:absolute;top:1px;left:1px;width:18px;height:18px;background:#fff;-webkit-border-radius:10px;border-radius:10px;-webkit-transition:left .15s ease-out;-o-transition:left .15s ease-out;transition:left .15s ease-out}.elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-handle{left:auto;right:1px;-webkit-box-shadow:-1px 1px 5px rgba(0,0,0,.2);box-shadow:-1px 1px 5px rgba(0,0,0,.2)}.elementor-control-type-tabs{font-size:.8em;text-transform:uppercase;display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-control-type-tab{text-align:center;width:100%;padding:0;line-height:25px;border-top:1px solid #d5dadf;border-bottom:1px solid #d5dadf;border-right:1px solid #d5dadf;cursor:pointer}.elementor-control-type-tab:first-child{border-left:1px solid #d5dadf;-webkit-border-top-left-radius:3px;border-top-left-radius:3px;-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px}.elementor-control-type-tab:last-child{-webkit-border-top-right-radius:3px;border-top-right-radius:3px;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px}.elementor-control-type-tab.elementor-tab-active{background-color:#a4afb7;border-color:#a4afb7;color:#fff}.elementor-tab-close{display:none!important}.elementor-control-type-code.elementor-control-dynamic-value .elementor-control-dynamic-switcher,.elementor-control-type-textarea.elementor-control-dynamic-value .elementor-control-dynamic-switcher{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;border-left-width:0}.elementor-control-type-code .elementor-control-dynamic-switcher,.elementor-control-type-textarea .elementor-control-dynamic-switcher{-webkit-border-radius:0 3px;border-radius:0 3px}.elementor-control-type-code:not(.elementor-control-dynamic-value) .elementor-control-dynamic-switcher,.elementor-control-type-textarea:not(.elementor-control-dynamic-value) .elementor-control-dynamic-switcher{position:absolute;top:0;z-index:1;right:0}.elementor-control-type-code .elementor-control-input-wrapper,.elementor-control-type-textarea .elementor-control-input-wrapper{position:relative}.elementor-control-type-code textarea,.elementor-control-type-textarea textarea{display:block;font-family:inherit}.elementor-control-type-code textarea:focus+.elementor-control-dynamic-switcher,.elementor-control-type-textarea textarea:focus+.elementor-control-dynamic-switcher{display:none}.elementor-control-type-code pre:focus-within+.elementor-control-dynamic-switcher,.elementor-control-type-textarea pre:focus-within+.elementor-control-dynamic-switcher{display:none}.elementor-control-type-url.elementor-control-dynamic .elementor-input{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-url .elementor-control-field{position:relative}.elementor-control-type-url.elementor-control-dynamic-value .elementor-control-url-more,.elementor-control-type-url:not(.elementor-control-dynamic) .elementor-control-url-more{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-control-type-url .elementor-control-input-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.elementor-control-type-url .elementor-control-url-more{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-ms-flex-negative:0;flex-shrink:0;border:1px solid #d5dadf;border-left:none;cursor:pointer}.elementor-control-type-url .elementor-control-url-more i{font-size:12px}.elementor-control-type-url .elementor-control-url-more-options{display:none;padding-top:10px}.elementor-control-type-url .elementor-control-url-more-options .elementor-control-field-description{margin-top:10px}.elementor-control-type-url .elementor-control-url-option{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-control-type-url .elementor-control-url-option:not(:last-child){padding-bottom:10px}.elementor-control-type-url .elementor-control-url-option input,.elementor-control-type-url .elementor-control-url-option label{cursor:pointer}.elementor-control-type-url .elementor-control-url-option-input{padding:0;-webkit-border-radius:2px;border-radius:2px;margin:0 5px 0 0;-webkit-appearance:none;-moz-appearance:none;outline:none;content:none;height:15px;width:15px;border:1px solid #d5dadf;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-control-type-url .elementor-control-url-option-input:checked{background:#71d7f7;border:none}.elementor-control-type-url .elementor-control-url-option-input:checked:before{display:block;content:"";width:4px;height:7px;border:solid #fff;border-width:0 2px 2px 0;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.elementor-control-type-url .elementor-control-url-option label{font-size:12px}.elementor-control-type-url .elementor-control-url-external-hide .elementor-control-url-more{display:none}.elementor-control-type-url .elementor-control-url-external-show .elementor-dynamic-cover,.elementor-control-type-url .elementor-control-url-external-show .elementor-input{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-url .elementor-control-url-autocomplete-spinner{display:none;position:absolute;top:5px;right:0;width:10px;height:10px;font-size:10px;color:#d4d4d4}.elementor-control-type-url .elementor-control-url__custom-attributes{margin-top:5px}.elementor-control-type-url .elementor-control-url__custom-attributes label{font-size:12px}.elementor-control-type-url .elementor-control-url__custom-attributes input{width:100%;margin-top:10px}.elementor-control-type-url .elementor-input{direction:ltr}.elementor-control-type-url .elementor-input:not(:focus)+.elementor-control-url-more{border-color:#d5dadf}.elementor-control-type-url .elementor-input:focus~div{border-color:#a4afb7}.elementor-control-type-url .elementor-control-dynamic-switcher{border-left:none;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-autocomplete-menu{position:absolute;background:#fff;color:#495157;border:1px solid #a4afb7;margin:0;list-style:none;padding:4px 0;height:auto;width:100%;min-width:260px;max-width:300px;max-height:200px;overflow-y:auto;-webkit-border-radius:3px;border-radius:3px;-webkit-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;transition:all .3s ease-in-out;cursor:default;z-index:1}.elementor-autocomplete-menu .ui-menu-item{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-item-align:baseline;align-self:baseline;padding:5px 8px;font-size:12px;width:100%;line-height:1.2;cursor:pointer}.elementor-autocomplete-menu .ui-menu-item.ui-state-active,.elementor-autocomplete-menu .ui-menu-item.ui-state-focus,.elementor-autocomplete-menu .ui-menu-item.ui-state-hover{background:#e6e9ec}.elementor-autocomplete-menu .elementor-autocomplete-item-info{font-size:10px;padding-top:2px}.elementor-control-type-wp_widget .widget-inside{display:block}.elementor-control-type-wp_widget .quicktags-toolbar input{width:auto}.elementor-control-type-wysiwyg *{-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-control-type-wysiwyg .wp-editor-container{border:1px solid #e6e9ec}.elementor-control-type-wysiwyg .wp-editor-tabs{border:1px solid #d5dadf;border-bottom:none;-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0}.elementor-control-type-wysiwyg #insert-media-button{height:auto;line-height:24px;font-size:10px;color:#6d7882;border-color:#d5dadf;background-color:#e6e9ec;min-height:0}.elementor-control-type-wysiwyg .ed_button{height:22px;width:auto}.elementor-control-type-wysiwyg .wp-media-buttons-icon{height:14px;margin:0}.elementor-control-type-wysiwyg .wp-media-buttons-icon:before{font-size:14px}.elementor-control-type-wysiwyg .wp-switch-editor{position:static;border:none;margin:0;color:#6d7882;font-size:10px;padding:3px 9px 4px}.elementor-control-type-wysiwyg .switch-html{border:solid #d5dadf;border-width:0 1px}.elementor-control-type-wysiwyg .html-active .switch-tmce{background-color:transparent}.elementor-control-type-wysiwyg .html-active .switch-html,.elementor-control-type-wysiwyg .tmce-active .switch-tmce{background-color:#e6e9ec}.elementor-control-type-wysiwyg .tmce-active .switch-html{background-color:transparent}.elementor-control-type-wysiwyg .mce-toolbar-grp,.elementor-control-type-wysiwyg .quicktags-toolbar{background-color:#e6e9ec}.elementor-control-type-wysiwyg .mce-toolbar-grp>div{padding:0 3px}.elementor-control-type-wysiwyg .elementor-wp-editor{-webkit-box-sizing:border-box;box-sizing:border-box}.elementor-control-type-wysiwyg .mce-ico{color:#6d7882;font-size:16px}.elementor-control-type-wysiwyg .mce-btn{margin-right:0;margin-left:0}.elementor-control-type-wysiwyg .mce-btn.mce-active,.elementor-control-type-wysiwyg .mce-btn:active,.elementor-control-type-wysiwyg .mce-btn:hover{border-color:#d5dadf}.elementor-control-type-wysiwyg .mce-path{padding:5px 10px}.elementor-control-type-wysiwyg .mce-path-item{font-size:12px;color:#6d7882}.elementor-control-type-wysiwyg .elementor-control-dynamic-switcher{border:none}.elementor-control-type-text .elementor-control-dynamic-switcher{border-left-width:0;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-control-type-text.elementor-control-dynamic input{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.ui-resizable-n{top:-5px}.ui-resizable-e{right:-5px}.ui-resizable-s{bottom:-5px}.ui-resizable-w{left:-5px}.ui-resizable-ne{top:-5px;right:-5px}.ui-resizable-nw{top:-5px;left:-5px}.ui-resizable-se{bottom:-5px;right:-5px}.ui-resizable-sw{bottom:-5px;left:-5px}.ui-resizable-n,.ui-resizable-s{left:0;height:10px;width:100%;cursor:ns-resize}.ui-resizable-e,.ui-resizable-w{top:0;height:100%;width:10px;cursor:ew-resize}.ui-resizable-ne,.ui-resizable-nw,.ui-resizable-se,.ui-resizable-sw{height:15px;width:15px}.ui-resizable-nw,.ui-resizable-se{cursor:nwse-resize}.ui-resizable-ne,.ui-resizable-sw{cursor:nesw-resize}.ui-resizable-handle{position:absolute}.ui-resizable-resizing{pointer-events:none}@-webkit-keyframes placeholder-section{0%{height:0;opacity:0}to{height:40px;opacity:.9}}@keyframes placeholder-section{0%{height:0;opacity:0}to{height:40px;opacity:.9}}@-webkit-keyframes placeholder-widget{0%{height:0;opacity:0}to{height:10px;opacity:.9}}@keyframes placeholder-widget{0%{height:0;opacity:0}to{height:10px;opacity:.9}}@-webkit-keyframes section-outline{0%{opacity:0}to{opacity:1}}@keyframes section-outline{0%{opacity:0}to{opacity:1}}body.elementor-editor-active .elementor.elementor-edit-mode .article,body.elementor-editor-active .elementor.elementor-edit-mode.layout-section .entry-content{overflow:visible}body.elementor-editor-active .elementor.elementor-edit-mode .elementor-element-overlay .elementor-editor-element-settings{clear:unset}body.elementor-editor-active .elementor.elementor-edit-mode .elementor-element.elementor-section{overflow:visible}.elementor-edit-area .animated{-webkit-animation-fill-mode:none!important;animation-fill-mode:none!important}.elementor-edit-area ul.elementor-editor-element-settings{word-break:normal;padding:0}.elementor-edit-area .gallery{opacity:1}.pen{position:relative;outline:none}.pen:not([data-elementor-inline-editing-toolbar=advanced]){white-space:pre-wrap}.pen-menu{-webkit-box-shadow:1px 2px 3px -2px #222;box-shadow:1px 2px 3px -2px #222;background-color:#6d7882;position:fixed;overflow:hidden;-webkit-border-radius:3px;border-radius:3px;z-index:9999}.pen-menu:after{top:100%;content:"";position:absolute;border:6px solid transparent;border-top-color:#6d7882;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.pen-menu-below:after{top:0;-webkit-transform:translateX(-50%) translateY(-100%) rotate(180deg);-ms-transform:translateX(-50%) translateY(-100%) rotate(180deg);transform:translateX(-50%) translateY(-100%) rotate(180deg)}.pen-icon{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;height:35px;padding:0 10px;font-size:21px;color:#d5dadf;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.pen-icon:hover{background:#556068}.pen-icon[data-action=closeGroup],.pen-icon[data-group]{display:none}.pen-icon[data-action=close]:before{content:"";position:absolute;left:0;height:60%;width:1px;background-color:#556068}.pen-icon.active{background-color:#556068;-webkit-box-shadow:inset 2px 2px 4px #556068;box-shadow:inset 2px 2px 4px #556068}.pen-group-icon:after{font-family:eicons;font-size:12px;content:"\e92a";padding-left:4px;color:#71d7f7}.pen-input-wrapper{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.pen-input-wrapper .pen-url-input{font-size:12px;line-height:1.5;padding:0 10px;width:250px;direction:ltr}.pen-input-wrapper .pen-url-input,.pen-input-wrapper .pen-url-input:focus{background-color:transparent;border:none;outline:none;-webkit-box-shadow:none;box-shadow:none;color:#fff}.pen-input-wrapper .pen-url-input::-webkit-input-placeholder{color:#d5dadf}.pen-input-wrapper .pen-url-input::-moz-placeholder{color:#d5dadf}.pen-input-wrapper .pen-url-input::-ms-input-placeholder{color:#d5dadf}.pen-input-wrapper .pen-url-input::placeholder{color:#d5dadf}.pen-input-label{margin:0 -1px 0 0}.pen-placeholder:before{content:attr(data-pen-placeholder);position:absolute;font-weight:400;color:#757575;opacity:.6}.pen-external-url-checkbox{display:none}.pen-external-url-checkbox:checked+i{color:#fff}.elementor-inline-editing i:not([class]){font-style:italic}.elementor-inline-editing b{font-weight:700}.elementor-inline-editing u{text-decoration:underline}.e-element-color-picker{--primary-color:#71d7f7;--swatch-size:25px;cursor:default;display:-webkit-box;display:-ms-flexbox;display:flex;position:absolute;width:calc(calc(var(--count) + 1) * var(--swatch-size));height:var(--swatch-size);top:var(--top);left:var(--left);right:var(--right,unset);-webkit-border-radius:3px;border-radius:3px;z-index:9998;background-color:var(--primary-color);padding:1px;-webkit-box-sizing:content-box;box-sizing:content-box;-webkit-transition:opacity .3s,width .3s;-o-transition:opacity .3s,width .3s;transition:opacity .3s,width .3s}.e-element-color-picker,.e-element-color-picker.e-picker-hidden{opacity:0;pointer-events:none}.e-element-color-picker:before{content:"";-webkit-box-flex:0;-ms-flex:0 1 var(--swatch-size);flex:0 1 var(--swatch-size);max-width:100%;height:100%;-webkit-box-sizing:border-box;box-sizing:border-box;text-align:center}.e-element-color-picker:after{content:"\e91e";font-family:eicons;color:#fff;font-size:1rem;line-height:var(--swatch-size);position:absolute;left:.3rem;z-index:-1}.e-element-color-picker__swatch{-webkit-box-flex:1;-ms-flex:1 0 var(--swatch-size);flex:1 0 var(--swatch-size);max-width:100%;height:100%;cursor:pointer;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;position:relative;overflow:hidden;-webkit-border-radius:inherit;border-radius:inherit;background:-webkit-gradient(linear,left top,left bottom,from(var(--color)),to(var(--color))),-webkit-gradient(linear,left top,left bottom,from(var(--primary-color)),to(var(--primary-color)));background:-webkit-linear-gradient(var(--color),var(--color)),-webkit-linear-gradient(var(--primary-color),var(--primary-color));background:-o-linear-gradient(var(--color),var(--color)),-o-linear-gradient(var(--primary-color),var(--primary-color));background:linear-gradient(var(--color),var(--color)),linear-gradient(var(--primary-color),var(--primary-color))}.e-element-color-picker__swatch:not(:first-child){border-left:1px solid var(--primary-color)}.e-element-color-picker__swatch:before{content:attr(data-text);position:absolute;left:50%;top:50%;opacity:0;color:var(--color);font-size:10px;font-weight:300;font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-filter:hue-rotate(180deg) grayscale(1) contrast(999) invert(1);filter:hue-rotate(180deg) grayscale(1) contrast(999) invert(1);-webkit-transition:inherit;-o-transition:inherit;transition:inherit}.e-element-color-picker__swatch:hover{-ms-flex-preferred-size:calc(2 * var(--swatch-size));flex-basis:calc(2 * var(--swatch-size));-ms-flex-negative:0;flex-shrink:0}.e-element-color-picker__swatch:hover:before{opacity:1}.elementor-editor__ui-state__color-picker :not(.e-element-color-picker__swatch){cursor:url(../images/eyedropper.svg) 0 20,pointer}.elementor-editor__ui-state__color-picker .e-element-color-picker:not(.e-picker-hidden):hover,.elementor-editor__ui-state__color-picker .elementor-element:hover>.e-element-color-picker:not(.e-picker-hidden),.elementor-editor__ui-state__color-picker .elementor-widget-container:hover+.e-element-color-picker:not(.e-picker-hidden){opacity:1;pointer-events:all}.elementor-editor__ui-state__color-picker .elementor-section:hover{outline:1px solid #71d7f7}html.elementor-html{margin-top:0!important}.elementor-edit-area{position:relative}.elementor.loading{opacity:.5}.elementor-edit-area-active .elementor-inner-section:first-child{margin-top:15px}.elementor-edit-area-active .elementor-widget-wrap.elementor-element-empty{min-height:30px}@media (min-width:768px){.elementor-edit-area-active .elementor-widget-wrap.elementor-element-empty{margin:10px}}.elementor-edit-area-active .elementor-column{min-width:25px}.elementor-edit-area-active .elementor-widget.elementor-loading{opacity:.3}.elementor-edit-area-active .elementor-widget.elementor-element-edit-mode:hover,.elementor-edit-area-active .elementor-widget.elementor-element-editable{-webkit-box-shadow:0 0 0 1px #71d7f7;box-shadow:0 0 0 1px #71d7f7}.elementor-edit-area-active .elementor-widget:not(:hover) .elementor-editor-element-settings{display:none}.elementor-edit-area-active .elementor-widget.ui-draggable-dragging{pointer-events:none}.elementor-edit-area-active .elementor-editor-element-setting{cursor:pointer;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:0;margin:0;font-size:11px;color:#fff;width:25px;-webkit-transition:margin .3s,width .3s,font .3s;-o-transition:margin .3s,width .3s,font .3s;transition:margin .3s,width .3s,font .3s}.elementor-edit-area-active .elementor-inline-editing{min-height:15px}.elementor-edit-area-active .elementor-edit-hidden{display:none}.elementor-section-wrap:empty{min-height:25px}.elementor-element>.elementor-element-overlay{position:absolute;top:0;right:0;letter-spacing:0;z-index:9998;pointer-events:none}.elementor-element-empty .elementor-sortable-placeholder{display:none}.elementor-element.elementor-widget-empty{background-color:rgba(213,218,223,.8)}.elementor-element.elementor-widget-empty .elementor-widget-empty-icon{color:#c2cbd2;font-size:22px;display:block;text-align:center;padding:10px 0}.elementor-element:not(:hover):not(.elementor-element-editable)>.elementor-element-overlay .elementor-editor-element-settings{display:none}.elementor-element--toggle-edit-tools>.elementor-element-overlay .elementor-editor-element-edit:not(.elementor-active)~*{width:0;font-size:0}.elementor-element[data-side=bottom]+.elementor-element:before,.elementor-element[data-side=bottom]:last-child:after,.elementor-element[data-side=top]:before{content:"";background-color:#71d7f7;-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out;opacity:.9;height:10px;-webkit-animation:placeholder-widget .5s;animation:placeholder-widget .5s;display:block}.elementor-element.elementor-absolute,.elementor-element.elementor-fixed{cursor:-webkit-grab;cursor:grab}.elementor-element.elementor-absolute:active,.elementor-element.elementor-fixed:active{cursor:-webkit-grabbing;cursor:grabbing}.elementor-element.elementor-absolute .eicon-edit:before,.elementor-element.elementor-fixed .eicon-edit:before{content:"\e902"}.elementor-section>.elementor-element-overlay{left:0;bottom:0}.elementor-section>.elementor-element-overlay:after{position:absolute;left:2px;right:2px;top:2px;bottom:2px;outline:2px solid #71d7f7;-webkit-animation:section-outline .75s;animation:section-outline .75s}.elementor-section.elementor-element-editable>.elementor-element-overlay:after,.elementor-section:hover>.elementor-element-overlay:after{content:""}.elementor-section-filled .elementor-sortable-placeholder.elementor-column{display:none}.elementor-section-filled .elementor-row.elementor-draggable-over{border:1px solid #d72b3f}.elementor-column>.elementor-element-overlay{left:0;bottom:0}.elementor-column>.elementor-element-overlay:after{position:absolute;left:0;right:0;top:0;bottom:0;outline:1px dashed #6d7882}.elementor-column.elementor-element-editable>.elementor-element-overlay,.elementor-column:hover>.elementor-element-overlay{border:1px solid #fff}.elementor-column.elementor-element-editable>.elementor-element-overlay:after,.elementor-column:hover>.elementor-element-overlay:after{content:""}.elementor-column.elementor-dragging-on-child>.elementor-element-overlay{border:1px solid #71d7f7}.elementor-column.elementor-dragging-on-child>.elementor-element-overlay:after{display:none}.elementor-column>.ui-resizable-e,.elementor-column>.ui-resizable-w{cursor:col-resize;width:7px;position:absolute;right:-5px;top:0;height:100%}.elementor-column:last-of-type>.ui-resizable-e,.elementor-column:last-of-type>.ui-resizable-w{display:none!important}@media (max-width:1024px){.elementor-column>.ui-resizable-e,.elementor-column>.ui-resizable-w{display:none!important}}.elementor-editor-element-settings{position:absolute;display:-webkit-box;display:-ms-flexbox;display:flex;height:26px;list-style:none;margin:0;padding:0;font-family:Arial,Helvetica,sans-serif;font-size:13px;font-weight:400;font-style:normal;line-height:1;z-index:1;pointer-events:all}@media (min-width:1025px){.elementor-editor-element-edit{cursor:move}}.elementor-editor-section-settings{height:24px;top:1px;left:50%;-webkit-transform:translateX(-50%) translateY(-100%);-ms-transform:translateX(-50%) translateY(-100%);transform:translateX(-50%) translateY(-100%);background-color:#71d7f7;-webkit-border-radius:5px 5px 0 0;border-radius:5px 5px 0 0;-webkit-box-shadow:0 -2px 8px rgba(0,0,0,.05);box-shadow:0 -2px 8px rgba(0,0,0,.05)}.elementor-editor-section-settings i.eicon-handle{font-size:16px}.elementor-editor-section-settings .elementor-editor-element-setting:hover{background-color:#10bcf2}.elementor-editor-section-settings .elementor-editor-element-setting:first-child{-webkit-border-radius:5px 0 0 0;border-radius:5px 0 0 0}.elementor-editor-section-settings .elementor-editor-element-setting:first-child:before{content:"";position:absolute;top:2px;border:solid transparent;border-right:solid #71d7f7;border-width:22px 12px 0 0;right:calc(100% - 1px)}.elementor-editor-section-settings .elementor-editor-element-setting:first-child:hover:before{border-right-color:#10bcf2}.elementor-editor-section-settings .elementor-editor-element-setting:last-child{-webkit-border-radius:0 5px 0 0;border-radius:0 5px 0 0}.elementor-editor-section-settings .elementor-editor-element-setting:last-child:after{content:"";position:absolute;top:2px;border:solid transparent;border-left:solid #71d7f7;border-width:22px 0 0 12px;left:calc(100% - 1px)}.elementor-editor-section-settings .elementor-editor-element-setting:last-child:hover:after{border-left-color:#10bcf2}.elementor-section--handles-inside .elementor-editor-section-settings{-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);-webkit-border-radius:0 0 5px 5px;border-radius:0 0 5px 5px}.elementor-section--handles-inside .elementor-editor-section-settings .elementor-editor-element-setting:first-child{-webkit-border-radius:0 0 0 5px;border-radius:0 0 0 5px}.elementor-section--handles-inside .elementor-editor-section-settings .elementor-editor-element-setting:first-child:before{top:0;border-width:0 12px 22px 0}.elementor-section--handles-inside .elementor-editor-section-settings .elementor-editor-element-setting:last-child{-webkit-border-radius:0 0 5px 0;border-radius:0 0 5px 0}.elementor-section--handles-inside .elementor-editor-section-settings .elementor-editor-element-setting:last-child:after{top:0;border-width:0 0 22px 12px}.elementor-editor-column-settings{top:-1px;left:-1px;-webkit-border-radius:0 0 3px 0;border-radius:0 0 3px 0;overflow:hidden}.elementor-editor-column-settings .elementor-editor-element-setting{background-color:#495157}.elementor-editor-column-settings .elementor-editor-element-setting:not(:hover){background-image:-webkit-gradient(linear,left top,left bottom,from(#6d7882),to(#556068));background-image:-webkit-linear-gradient(top,#6d7882,#556068);background-image:-o-linear-gradient(top,#6d7882,#556068);background-image:linear-gradient(180deg,#6d7882,#556068)}.elementor-editor-widget-settings{z-index:2;top:-1px;right:-1px;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;-webkit-border-radius:0 0 0 3px;border-radius:0 0 0 3px;overflow:hidden}.elementor-editor-widget-settings .elementor-editor-element-setting{background-color:#10bcf2}.elementor-editor-widget-settings .elementor-editor-element-setting:not(:hover){background-image:-webkit-gradient(linear,left bottom,left top,from(#41c9f4),to(#71d7f7));background-image:-webkit-linear-gradient(bottom,#41c9f4,#71d7f7);background-image:-o-linear-gradient(bottom,#41c9f4,#71d7f7);background-image:linear-gradient(0deg,#41c9f4,#71d7f7)}.elementor-empty-view{position:absolute;top:0;bottom:0;left:0;right:0;z-index:1}.elementor-first-add{text-align:center;border:1px dashed #d5dadf;display:-webkit-box;display:-ms-flexbox;display:flex;height:100%;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-first-add .elementor-icon{font-size:19px;color:#a4afb7;cursor:pointer}.elementor-sortable-helper{position:absolute;-webkit-border-radius:3px;border-radius:3px;background-color:#fff;text-align:center;color:#556068;-webkit-box-shadow:0 2px 6px rgba(0,0,0,.2);box-shadow:0 2px 6px rgba(0,0,0,.2);cursor:move}.elementor-sortable-helper .icon{font-size:28px;padding-top:15px;line-height:1}.elementor-sortable-helper .elementor-element-title-wrapper{display:table;width:100%}.elementor-sortable-helper .title{font-size:11px;font-family:Arial,Helvetica,sans-serif;font-weight:400;font-style:normal;display:table-cell;vertical-align:middle;height:40px}.elementor-editor-content-only .elementor-column.elementor-element-editable>.elementor-element-overlay:after,.elementor-editor-content-only .elementor-column:hover>.elementor-element-overlay:after,.elementor-editor-content-only .elementor-column>.elementor-element-overlay,.elementor-editor-content-only .elementor-column>.elementor-element-overlay:after,.elementor-editor-content-only .elementor-first-add,.elementor-editor-content-only .elementor-section.elementor-element-editable>.elementor-element-overlay:after,.elementor-editor-content-only .elementor-section:hover>.elementor-element-overlay:after,.elementor-editor-content-only .elementor-section>.elementor-element-overlay,.elementor-editor-content-only .elementor-section>.elementor-element-overlay:after{display:none}@media (min-width:1025px){.elementor-editor-content-only .elementor-editor-element-edit{cursor:pointer}}.elementor-sortable-placeholder:not(.elementor-column-placeholder){background-color:#71d7f7;-webkit-animation-duration:.25s;animation-duration:.25s;opacity:.9;width:100%;-ms-flex-item-align:stretch;align-self:stretch}.elementor-section-placeholder{height:40px;-webkit-animation-name:placeholder-section;animation-name:placeholder-section}.elementor-column-placeholder{position:relative}.elementor-column-placeholder:after,.elementor-column-placeholder:before{content:"";position:absolute;top:10px;bottom:10px;right:10px;left:10px}.elementor-column-placeholder:before{border:1px solid #6d7882}.elementor-column-placeholder:after{border:1px dashed #fff}.elementor-widget-placeholder{height:10px;-webkit-animation-name:placeholder-widget;animation-name:placeholder-widget}.elementor-draggable-over:not([data-dragged-element=section]):not([data-dragged-is-inner=true])>.elementor-empty-view>.elementor-first-add:after,.elementor-first-add.elementor-html5dnd-current-element:after{content:"";background-color:#71d7f7;-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out;opacity:.9;height:10px;-webkit-animation:placeholder-widget .5s;animation:placeholder-widget .5s;width:100%}.elementor-draggable-over:not([data-dragged-element=section]):not([data-dragged-is-inner=true])>.elementor-empty-view>.elementor-first-add .elementor-icon,.elementor-draggable-over[data-dragged-element=section][data-dragged-is-inner=true] .elementor-inner-column .elementor-sortable-placeholder,.elementor-first-add.elementor-html5dnd-current-element .elementor-icon{display:none}.elementor-add-section{all:initial;display:-webkit-box;display:-ms-flexbox;display:flex;max-width:1160px;position:relative}.elementor-add-section:not(.elementor-dragging-on-child) .elementor-add-section-inner{border:2px dashed #d5dadf;background-color:hsla(0,0%,100%,.5)}.elementor-add-section.elementor-dragging-on-child .elementor-add-section-inner{border:3px dashed #71d7f7}.elementor-add-section[data-view=choose-action] .elementor-select-preset,.elementor-add-section[data-view=select-preset] .elementor-add-new-section{display:none}.elementor-add-section-inner{text-align:center;margin:20px;padding:40px 0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-add-new-section{display:inline-block}.elementor-add-new-section .elementor-add-section-area-button{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;height:40px;width:40px;color:#fff;font-size:16px;-webkit-border-radius:50%;border-radius:50%;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;cursor:pointer}.elementor-add-new-section .elementor-add-section-area-button:hover{opacity:.85;-webkit-box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2);box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2)}.elementor-add-new-section .elementor-add-section-area-button:active{-webkit-box-shadow:0 10px 20px rgba(0,0,0,.19),0 6px 6px rgba(0,0,0,.1);box-shadow:0 10px 20px rgba(0,0,0,.19),0 6px 6px rgba(0,0,0,.1)}.elementor-add-new-section .elementor-add-section-button{background-color:#93003c}.elementor-add-new-section .elementor-add-template-button{background-color:#6d7882;margin-left:5px}.elementor-add-section-drag-title{font-family:Arial,Helvetica,sans-serif;font-size:13px;font-weight:400;font-style:italic;line-height:1;color:#556068;margin-top:15px}.elementor-add-section-close{position:absolute;right:40px;top:40px;font-size:20px;cursor:pointer;line-height:1;color:#d5dadf}.elementor-add-section-close:hover{color:#6d7882}.elementor-select-preset-title{font-family:Arial,Helvetica,sans-serif;font-size:13px;font-weight:500;font-style:normal;text-transform:uppercase;color:#556068}.elementor-select-preset-list{list-style:none;padding:0 25px;margin:20px auto 0;overflow:hidden;max-width:700px}.elementor-select-preset-list .elementor-preset{cursor:pointer;margin:0;padding:10px;float:left;max-width:33.333%}.elementor-select-preset-list .elementor-preset:hover path{fill:#6d7882}.elementor-select-preset-list .elementor-preset:not(:hover) path{fill:#d5dadf}.elementor-select-preset-list .elementor-preset svg{height:50px;width:100%}#elementor-add-new-section{margin:60px auto}#elementor-add-new-section[data-view=choose-action] .elementor-add-section-close{display:none}.elementor-add-section-inline{margin:10px auto}.elementor-column-percents-tooltip{position:absolute;display:none;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);color:#fff;font-size:10px;background-color:#556068;width:40px;padding:3.5px 0;text-align:center;z-index:1;line-height:1}.elementor-column-percents-tooltip:after{content:"";position:absolute;width:0;height:0;border:8.5px solid transparent;top:0}.elementor-column-percents-tooltip[data-side=left]{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px;right:15px}.elementor-column-percents-tooltip[data-side=left]:after{left:100%;border-left-color:#556068;border-right-width:0}.elementor-column-percents-tooltip[data-side=right]{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;left:15px}.elementor-column-percents-tooltip[data-side=right]:after{right:100%;border-right-color:#556068;border-left-width:0}.elementor-editor-preview .elementor-add-section,.elementor-editor-preview .elementor-add-section-inline,.elementor-editor-preview .elementor-element-overlay,.elementor-editor-preview .elementor-empty,.elementor-editor-preview .elementor-empty-view,.elementor-editor-preview .elementor-widget-empty{display:none}.e-preview--show-hidden-elements[data-elementor-device-mode=desktop] .elementor-edit-area-active .elementor-hidden-desktop,.e-preview--show-hidden-elements[data-elementor-device-mode=laptop] .elementor-edit-area-active .elementor-hidden-laptop,.e-preview--show-hidden-elements[data-elementor-device-mode=mobile] .elementor-edit-area-active .elementor-hidden-mobile,.e-preview--show-hidden-elements[data-elementor-device-mode=mobile_extra] .elementor-edit-area-active .elementor-hidden-mobile_extra,.e-preview--show-hidden-elements[data-elementor-device-mode=tablet] .elementor-edit-area-active .elementor-hidden-tablet,.e-preview--show-hidden-elements[data-elementor-device-mode=tablet_extra] .elementor-edit-area-active .elementor-hidden-tablet_extra,.e-preview--show-hidden-elements[data-elementor-device-mode=widescreen] .elementor-edit-area-active .elementor-hidden-widescreen{display:inherit;background:-webkit-repeating-linear-gradient(325deg,rgba(0,0,0,.05),rgba(0,0,0,.05) 1px,transparent 2px,transparent 9px);background:-o-repeating-linear-gradient(325deg,rgba(0,0,0,.05),rgba(0,0,0,.05) 1px,transparent 2px,transparent 9px);background:repeating-linear-gradient(125deg,rgba(0,0,0,.05),rgba(0,0,0,.05) 1px,transparent 2px,transparent 9px);border:1px solid rgba(0,0,0,.02)}.e-preview--show-hidden-elements[data-elementor-device-mode=desktop] .elementor-edit-area-active .elementor-hidden-desktop.elementor-section>.elementor-element-overlay,.e-preview--show-hidden-elements[data-elementor-device-mode=laptop] .elementor-edit-area-active .elementor-hidden-laptop.elementor-section>.elementor-element-overlay,.e-preview--show-hidden-elements[data-elementor-device-mode=mobile] .elementor-edit-area-active .elementor-hidden-mobile.elementor-section>.elementor-element-overlay,.e-preview--show-hidden-elements[data-elementor-device-mode=mobile_extra] .elementor-edit-area-active .elementor-hidden-mobile_extra.elementor-section>.elementor-element-overlay,.e-preview--show-hidden-elements[data-elementor-device-mode=tablet] .elementor-edit-area-active .elementor-hidden-tablet.elementor-section>.elementor-element-overlay,.e-preview--show-hidden-elements[data-elementor-device-mode=tablet_extra] .elementor-edit-area-active .elementor-hidden-tablet_extra.elementor-section>.elementor-element-overlay,.e-preview--show-hidden-elements[data-elementor-device-mode=widescreen] .elementor-edit-area-active .elementor-hidden-widescreen.elementor-section>.elementor-element-overlay{background-color:#d5dadf;mix-blend-mode:color}.e-preview--show-hidden-elements[data-elementor-device-mode=desktop] .elementor-edit-area-active .elementor-hidden-desktop.elementor-section:before,.e-preview--show-hidden-elements[data-elementor-device-mode=laptop] .elementor-edit-area-active .elementor-hidden-laptop.elementor-section:before,.e-preview--show-hidden-elements[data-elementor-device-mode=mobile] .elementor-edit-area-active .elementor-hidden-mobile.elementor-section:before,.e-preview--show-hidden-elements[data-elementor-device-mode=mobile_extra] .elementor-edit-area-active .elementor-hidden-mobile_extra.elementor-section:before,.e-preview--show-hidden-elements[data-elementor-device-mode=tablet] .elementor-edit-area-active .elementor-hidden-tablet.elementor-section:before,.e-preview--show-hidden-elements[data-elementor-device-mode=tablet_extra] .elementor-edit-area-active .elementor-hidden-tablet_extra.elementor-section:before,.e-preview--show-hidden-elements[data-elementor-device-mode=widescreen] .elementor-edit-area-active .elementor-hidden-widescreen.elementor-section:before{content:"";display:block;position:absolute;top:0;left:0;width:100%;height:100%;background-color:hsla(0,0%,100%,.6);z-index:9997}.e-preview--show-hidden-elements[data-elementor-device-mode=desktop] .elementor-edit-area-active .elementor-hidden-desktop.elementor-inner-section .elementor-container,.e-preview--show-hidden-elements[data-elementor-device-mode=laptop] .elementor-edit-area-active .elementor-hidden-laptop.elementor-inner-section .elementor-container,.e-preview--show-hidden-elements[data-elementor-device-mode=mobile] .elementor-edit-area-active .elementor-hidden-mobile.elementor-inner-section .elementor-container,.e-preview--show-hidden-elements[data-elementor-device-mode=mobile_extra] .elementor-edit-area-active .elementor-hidden-mobile_extra.elementor-inner-section .elementor-container,.e-preview--show-hidden-elements[data-elementor-device-mode=tablet] .elementor-edit-area-active .elementor-hidden-tablet.elementor-inner-section .elementor-container,.e-preview--show-hidden-elements[data-elementor-device-mode=tablet_extra] .elementor-edit-area-active .elementor-hidden-tablet_extra.elementor-inner-section .elementor-container,.e-preview--show-hidden-elements[data-elementor-device-mode=widescreen] .elementor-edit-area-active .elementor-hidden-widescreen.elementor-inner-section .elementor-container{width:100%}.e-preview--show-hidden-elements[data-elementor-device-mode=desktop] .elementor-edit-area-active .elementor-hidden-desktop>.elementor-widget-container,.e-preview--show-hidden-elements[data-elementor-device-mode=desktop] .elementor-edit-area-active .elementor-hidden-desktop>.elementor-widget-wrap,.e-preview--show-hidden-elements[data-elementor-device-mode=laptop] .elementor-edit-area-active .elementor-hidden-laptop>.elementor-widget-container,.e-preview--show-hidden-elements[data-elementor-device-mode=laptop] .elementor-edit-area-active .elementor-hidden-laptop>.elementor-widget-wrap,.e-preview--show-hidden-elements[data-elementor-device-mode=mobile] .elementor-edit-area-active .elementor-hidden-mobile>.elementor-widget-container,.e-preview--show-hidden-elements[data-elementor-device-mode=mobile] .elementor-edit-area-active .elementor-hidden-mobile>.elementor-widget-wrap,.e-preview--show-hidden-elements[data-elementor-device-mode=mobile_extra] .elementor-edit-area-active .elementor-hidden-mobile_extra>.elementor-widget-container,.e-preview--show-hidden-elements[data-elementor-device-mode=mobile_extra] .elementor-edit-area-active .elementor-hidden-mobile_extra>.elementor-widget-wrap,.e-preview--show-hidden-elements[data-elementor-device-mode=tablet] .elementor-edit-area-active .elementor-hidden-tablet>.elementor-widget-container,.e-preview--show-hidden-elements[data-elementor-device-mode=tablet] .elementor-edit-area-active .elementor-hidden-tablet>.elementor-widget-wrap,.e-preview--show-hidden-elements[data-elementor-device-mode=tablet_extra] .elementor-edit-area-active .elementor-hidden-tablet_extra>.elementor-widget-container,.e-preview--show-hidden-elements[data-elementor-device-mode=tablet_extra] .elementor-edit-area-active .elementor-hidden-tablet_extra>.elementor-widget-wrap,.e-preview--show-hidden-elements[data-elementor-device-mode=widescreen] .elementor-edit-area-active .elementor-hidden-widescreen>.elementor-widget-container,.e-preview--show-hidden-elements[data-elementor-device-mode=widescreen] .elementor-edit-area-active .elementor-hidden-widescreen>.elementor-widget-wrap{-webkit-filter:opacity(.4) saturate(0);filter:opacity(.4) saturate(0)}.e-preview--show-hidden-elements[data-elementor-device-mode=desktop] .elementor-edit-area-active .elementor-hidden-desktop.elementor-edit-hidden,.e-preview--show-hidden-elements[data-elementor-device-mode=laptop] .elementor-edit-area-active .elementor-hidden-laptop.elementor-edit-hidden,.e-preview--show-hidden-elements[data-elementor-device-mode=mobile] .elementor-edit-area-active .elementor-hidden-mobile.elementor-edit-hidden,.e-preview--show-hidden-elements[data-elementor-device-mode=mobile_extra] .elementor-edit-area-active .elementor-hidden-mobile_extra.elementor-edit-hidden,.e-preview--show-hidden-elements[data-elementor-device-mode=tablet] .elementor-edit-area-active .elementor-hidden-tablet.elementor-edit-hidden,.e-preview--show-hidden-elements[data-elementor-device-mode=tablet_extra] .elementor-edit-area-active .elementor-hidden-tablet_extra.elementor-edit-hidden,.e-preview--show-hidden-elements[data-elementor-device-mode=widescreen] .elementor-edit-area-active .elementor-hidden-widescreen.elementor-edit-hidden{display:none}assets/css/editor.min.css000064400000466265151327220410011440 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
@charset "UTF-8";.elementor-control-unit-1{width:27px}.elementor-control-unit-2{width:54px}.elementor-control-unit-3{width:81px}.elementor-control-unit-4{width:108px}.elementor-control-unit-5{max-width:400px;width:52%}*,:after,:before{margin:0;padding:0;-webkit-box-sizing:border-box;box-sizing:border-box}body,html{height:100%}html{background-color:#f1f1f1}iframe,img{border:0}li{list-style:none}a,body{text-decoration:none}body{color:#6d7882;font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;font-size:13px;font-weight:400;line-height:1;text-transform:none;overflow:hidden}body:after{content:"";position:absolute;top:0;right:0;height:100%;width:0;background-color:#71d7f7;-webkit-transition:width .5s;-o-transition:width .5s;transition:width .5s}body a{color:#71d7f7}body a:hover{color:#93003c}body.elementor-editor-active #elementor-mode-switcher-preview .eicon:before{content:""}body.elementor-editor-preview{--e-preview-width:100%}body.elementor-editor-preview #elementor-mode-switcher-preview .eicon:before{content:""}body.elementor-navigator--dock-hint:after{width:30px}#elementor-editor-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;width:100%;height:100vh}#elementor-panel:not(.ui-resizable-resizing),#elementor-preview:not(.ui-resizable-resizing){-webkit-transition:margin .5s ease-in-out,width .5s ease-in-out;-o-transition:margin .5s ease-in-out,width .5s ease-in-out;transition:margin .5s ease-in-out,width .5s ease-in-out}#elementor-loading{position:fixed;top:0;left:0;bottom:0;right:0;background:#f1f3f5;z-index:9999}#elementor-preview-loading{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;position:absolute;top:0;left:0;width:100%;height:100%;background-color:#fff}#elementor-preview-loading i{color:#d5dadf;font-size:50px}#elementor-fatal-error-dialog button.dialog-ok{color:#71d7f7}#elementor-fatal-error-dialog .dialog-header{color:#6d7882}#elementor-flexbox-attention-dialog .dialog-cancel{color:#39b54a}#elementor-flexbox-attention-dialog .dialog-ok{color:#6d7882}.elementor-nerd-box{padding:30px;text-align:center}.elementor-nerd-box-icon{width:100px;margin-right:10px}.elementor-nerd-box-title{margin-top:20px;font-size:16px;font-weight:700;line-height:1.4}.elementor-nerd-box-message{margin-top:5px;line-height:1.8;font-size:11px}.elementor-nerd-box .elementor-button.elementor-nerd-box-link{background-color:#93003c;color:#fff;padding:7px 25px;margin-top:20px;-webkit-box-shadow:0 0 1px rgba(0,0,0,.1),0 2px 2px rgba(0,0,0,.1);box-shadow:0 0 1px rgba(0,0,0,.1),0 2px 2px rgba(0,0,0,.1);-webkit-transition:.5s;-o-transition:.5s;transition:.5s}.elementor-nerd-box .elementor-button.elementor-nerd-box-link:hover{background-color:#c60051}.eicon-nerd:hover:before{content:"\e8b7"}.eicon-nerd:active:before{content:"\e8b6"}.e-group-control-header{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-weight:700;font-size:12px;padding:10px;-webkit-box-shadow:0 2px 8px rgba(0,0,0,.1);box-shadow:0 2px 8px rgba(0,0,0,.1);margin-bottom:15px}.e-control-tools,.e-group-control-header{display:-webkit-box;display:-ms-flexbox;display:flex}.e-control-tool{width:20px;height:20px;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-border-radius:3px;border-radius:3px;margin:0 3px;border:0;position:relative;background-color:#fff}.e-control-tool:not(.e-control-tool-disabled){-webkit-box-shadow:0 1px 5px rgba(0,0,0,.1);box-shadow:0 1px 5px rgba(0,0,0,.1);cursor:pointer}.e-control-tool-disabled{background:#e6e9ec;pointer-events:none}.e-control-tool-disabled i{color:#fff}.e-control-tool i{position:absolute;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);color:#6d7882;font-size:13px}#e-enable-unfiltered-files-dialog .dialog-confirm-ok{color:#39b54a}i.eicon-tilted{-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.elementor-loader-wrapper{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);width:300px;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-loader{-webkit-border-radius:50%;border-radius:50%;padding:40px;height:150px;width:150px;background-color:hsla(0,0%,100%,.9);-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-box-shadow:2px 2px 20px 4px rgba(0,0,0,.02);box-shadow:2px 2px 20px 4px rgba(0,0,0,.02)}.elementor-loader-boxes{height:100%;width:100%;position:relative}.elementor-loader-box{position:absolute;background-color:#d5dadf;-webkit-animation:load 1.8s linear infinite;animation:load 1.8s linear infinite}.elementor-loader-box:first-of-type{width:20%;height:100%;left:0;top:0}.elementor-loader-box:not(:first-of-type){right:0;height:20%;width:60%}.elementor-loader-box:nth-of-type(2){top:0;-webkit-animation-delay:-.45s;animation-delay:-.45s}.elementor-loader-box:nth-of-type(3){top:40%;-webkit-animation-delay:-.9s;animation-delay:-.9s}.elementor-loader-box:nth-of-type(4){bottom:0;-webkit-animation-delay:-1.35s;animation-delay:-1.35s}.elementor-loading-title{color:#a4afb7;text-align:center;text-transform:uppercase;margin-top:30px;letter-spacing:7px;text-indent:7px;font-size:10px;width:100%}.elementor-button{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;font-weight:500;text-transform:uppercase;outline:none;border:none;-webkit-border-radius:3px;border-radius:3px;-webkit-transition-property:background,color,opacity,-webkit-box-shadow;transition-property:background,color,opacity,-webkit-box-shadow;-o-transition-property:background,color,box-shadow,opacity;transition-property:background,color,box-shadow,opacity;transition-property:background,color,box-shadow,opacity,-webkit-box-shadow;-webkit-transition-duration:.3s;-o-transition-duration:.3s;transition-duration:.3s}.elementor-button:hover{border:none}.elementor-button:not([disabled]){cursor:pointer}.elementor-button:not(.elementor-button-state) .elementor-state-icon{display:none}.elementor-button.elementor-button-success{color:#fff}.elementor-button.elementor-button-success[disabled]{background-color:#c2cbd2}.elementor-button.elementor-button-success:not([disabled]){background-color:#39b54a}.elementor-button.elementor-button-success:not([disabled]):hover{opacity:.85;-webkit-box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2);box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2)}.elementor-button.elementor-button-success:not([disabled]):active{-webkit-box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1);box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1)}.elementor-button.elementor-button-warning{background-color:#a4afb7;color:#fff}.elementor-button.elementor-button-warning[disabled]{background-color:#c2cbd2}.elementor-button.elementor-button-warning:not([disabled]):hover{background-color:#b01b1b;opacity:.85;-webkit-box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2);box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2)}.elementor-button.elementor-button-warning:not([disabled]):active{-webkit-box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1);box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1)}.elementor-button.elementor-button-danger{background-color:#d72b3f;color:#fff}.elementor-button.elementor-button-danger[disabled]{background-color:#c2cbd2}.elementor-button.elementor-button-danger:not([disabled]):hover{opacity:.85;-webkit-box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2);box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2)}.elementor-button.elementor-button-danger:not([disabled]):active{-webkit-box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1);box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1)}.elementor-button.elementor-edit-template{display:inline-block;margin-top:15px;color:#fff}.elementor-button.elementor-button-default{background-color:#a4afb7;color:#fff;font-size:11px;padding:7px 21px}.elementor-button.elementor-button-default:hover{background-color:#6d7882;-webkit-box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2);box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2)}.elementor-button.elementor-button-default:active{-webkit-box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1);box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1)}.elementor-button.elementor-button-default:visited{color:#fff}.elementor-button.elementor-button-go-pro{background-color:#93003c}.elementor-button i{margin-right:10px}.elementor-input-style,input,select,textarea{-webkit-border-radius:3px;border-radius:3px;font-size:12px;width:100%;background:none;-webkit-box-shadow:none;box-shadow:none;color:#6d7882;border:1px solid;outline:none}.elementor-input-style:not(:focus),input:not(:focus),select:not(:focus),textarea:not(:focus){border-color:#d5dadf}.elementor-input-style:focus,.elementor-input-style:focus+.elementor-control-dynamic-switcher,input:focus,input:focus+.elementor-control-dynamic-switcher,select:focus,select:focus+.elementor-control-dynamic-switcher,textarea:focus,textarea:focus+.elementor-control-dynamic-switcher{border-color:#a4afb7}.elementor-input-style::-webkit-input-placeholder,input::-webkit-input-placeholder,select::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#a4afb7}.elementor-input-style::-moz-placeholder,input::-moz-placeholder,select::-moz-placeholder,textarea::-moz-placeholder{color:#a4afb7}.elementor-input-style::-ms-input-placeholder,input::-ms-input-placeholder,select::-ms-input-placeholder,textarea::-ms-input-placeholder{color:#a4afb7}.elementor-input-style::placeholder,input::placeholder,select::placeholder,textarea::placeholder{color:#a4afb7}.elementor-error input,.elementor-error select,.elementor-error textarea{border-color:#b01b1b}input{min-width:0}.elementor-input-style,input,textarea{padding:5px}.elementor-input-style,textarea{resize:vertical}input[type=checkbox],input[type=radio]{height:auto;width:auto}input[disabled]{background-color:#e6e9ec;cursor:not-allowed;opacity:1}select{outline:none;height:27px}.ps{overflow:hidden!important;overflow-anchor:none;-ms-touch-action:auto;touch-action:auto}.ps__rail-y{display:none;opacity:0;-webkit-transition:background-color .2s linear,opacity .2s linear;-o-transition:background-color .2s linear,opacity .2s linear;transition:background-color .2s linear,opacity .2s linear;width:15px;right:0;left:auto!important;position:absolute}.ps--active-y>.ps__rail-y{display:block;background-color:transparent}.ps--focus>.ps__rail-y,.ps--scrolling-y>.ps__rail-y,.ps:hover>.ps__rail-y{opacity:.6}.ps .ps__rail-y.ps--clicking,.ps .ps__rail-y:focus,.ps .ps__rail-y:hover{opacity:.9}.ps__thumb-y{background-color:#aaa;-webkit-border-radius:6px;border-radius:6px;-webkit-transition:background-color .2s linear,width .2s ease-in-out;-o-transition:background-color .2s linear,width .2s ease-in-out;transition:background-color .2s linear,width .2s ease-in-out;width:6px;right:2px;position:absolute}.ps__rail-y.ps--clicking .ps__thumb-y,.ps__rail-y:focus>.ps__thumb-y,.ps__rail-y:hover>.ps__thumb-y{background-color:#999;width:6px}#nprogress{pointer-events:none}#nprogress .bar{background:#39b54a;position:fixed;z-index:1031;top:0;left:0;width:100%;height:2px}#nprogress .peg{display:block;position:absolute;right:0;width:100px;height:100%;-webkit-box-shadow:0 0 10px #39b54a,0 0 5px #39b54a;box-shadow:0 0 10px #39b54a,0 0 5px #39b54a;opacity:1;-webkit-transform:rotate(3deg) translateY(-4px);-ms-transform:rotate(3deg) translateY(-4px);transform:rotate(3deg) translateY(-4px)}#nprogress .spinner{display:none;position:fixed;z-index:1031;top:15px;right:15px}#nprogress .spinner-icon{width:18px;height:18px;-webkit-box-sizing:border-box;box-sizing:border-box;border-color:#39b54a transparent transparent #39b54a;border-style:solid;border-width:2px;-webkit-border-radius:50%;border-radius:50%;-webkit-animation:nprogress-spinner .4s linear infinite;animation:nprogress-spinner .4s linear infinite}.nprogress-custom-parent{overflow:hidden;position:relative}.nprogress-custom-parent #nprogress .bar,.nprogress-custom-parent #nprogress .spinner{position:absolute}@-webkit-keyframes nprogress-spinner{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes nprogress-spinner{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}#nprogress .bar,#nprogress .spinner{z-index:100000}:root{--e-is-preview-mode:0}@media (max-width:1439px){:root{--e-editor-panel-width:280px}}@media (min-width:1440px){:root{--e-editor-panel-width:300px}}.elementor-panel{position:relative;height:100%;-webkit-margin-start:calc(-1 * var(--e-editor-panel-width) * var(--e-is-preview-mode));margin-inline-start:calc(-1 * var(--e-editor-panel-width) * var(--e-is-preview-mode));width:var(--e-editor-panel-width);overflow:visible;background-color:#e6e9ec;z-index:1;font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;font-size:13px;left:0}.elementor-editor-preview .elementor-panel{--e-is-preview-mode:1}.elementor-editor-preview .elementor-panel>.ui-resizable-e,.elementor-editor-preview .elementor-panel>.ui-resizable-w{display:none}.elementor-panel .ps__rail-y{z-index:2}.elementor-panel .elementor-responsive-panel{padding:5px 10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(Min(135px,calc(50% - 5px)),1fr))}.elementor-panel .elementor-responsive-panel>.e-responsive-panel-stretch{grid-column:1/-1}.elementor-panel ::-moz-selection{background:#5bc0de;color:#fff}.elementor-panel ::selection{background:#5bc0de;color:#fff}.elementor-panel a{color:#93003c}.elementor-panel h1,.elementor-panel h2,.elementor-panel h3,.elementor-panel h4,.elementor-panel h5,.elementor-panel h6{font-size:100%;font-weight:400}.elementor-panel abbr,.elementor-panel acronym{border:0;font-variant:normal}.elementor-panel sup{vertical-align:text-top}.elementor-panel sub{vertical-align:text-bottom}.elementor-panel img{max-width:100%;height:auto;border:0}.elementor-panel ::-moz-focus-inner{padding:0;border:0}.elementor-panel :focus{outline:0}.elementor-panel .elementor-panel-box{margin-top:10px;background-color:#fff}.elementor-panel .elementor-panel-box-content{padding:20px 20px 10px}.elementor-panel .elementor-button{display:inline-block}.elementor-panel .elementor-panel-alert{background-color:#fcfcfc;padding:15px;border-left:3px solid transparent;position:relative;font-size:12px;font-weight:300;font-style:italic;line-height:1.5;text-align:left;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;-webkit-box-shadow:0 1px 4px 0 rgba(0,0,0,.07);box-shadow:0 1px 4px 0 rgba(0,0,0,.07)}.elementor-panel .elementor-panel-alert a{color:inherit}.elementor-panel .elementor-panel-alert.elementor-panel-alert-info{border-color:#71d7f7;background-color:#f3fcff}.elementor-panel .elementor-panel-alert.elementor-panel-alert-success{border-color:#39b54a}.elementor-panel .elementor-panel-alert.elementor-panel-alert-warning{border-color:#fcb92c}.elementor-panel .elementor-panel-alert.elementor-panel-alert-danger{border-color:#d72b3f}.elementor-panel .elementor-label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;-webkit-border-radius:.25em;border-radius:.25em;text-transform:capitalize}.elementor-panel .elementor-label.elementor-label-default{background-color:#a4afb7}.elementor-panel .elementor-label.elementor-label-info{background-color:#5bc0de}.elementor-panel .elementor-label.elementor-label-success{background-color:#5cb85c}.elementor-panel .elementor-label.elementor-label-warning{background-color:#f0ad4e}.elementor-panel .elementor-label.elementor-label-danger{background-color:#d9534f}.elementor-panel .elementor-control-field-description,.elementor-panel .elementor-descriptor{font-size:11px;font-style:italic;line-height:1.4;color:#a4afb7}.elementor-panel .elementor-controls-popover{display:none;position:absolute;-webkit-box-shadow:0 2px 15px rgba(0,0,0,.3);box-shadow:0 2px 15px rgba(0,0,0,.3);-webkit-border-radius:3px;border-radius:3px;left:0;right:0;margin:-4px auto 5px;padding-top:15px;width:90%;z-index:10000;background-color:#fff}.elementor-panel .elementor-controls-popover:before{content:"";position:absolute;top:-16px;right:22px;border:8px solid transparent;border-bottom-color:#fff}.elementor-panel .elementor-controls-popover div.elementor-control{background-color:transparent}.elementor-panel .elementor-controls-popover div.elementor-control:before{content:none}.elementor-panel #elementor-controls .pojo-widget-button-collapse{display:none}.elementor-panel #elementor-panel-global .elementor-nerd-box .elementor-nerd-box-icon{margin-top:20px}.elementor-panel #elementor-panel-header{display:table;height:40px;width:100%;background-color:#93003c;color:#fff}.elementor-panel #elementor-panel-header>*{display:table-cell;vertical-align:middle;text-align:center}.elementor-panel .elementor-header-button{width:40px}.elementor-panel .elementor-header-button .elementor-icon{cursor:pointer;display:block;font-size:19px;height:40px;line-height:40px;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.elementor-panel .elementor-header-button .elementor-icon.eicon-menu-bar{font-size:18px}.elementor-panel .elementor-header-button .elementor-icon:hover{color:#d5dadf}.elementor-panel #elementor-panel-header-title{font-size:15px}.elementor-panel #elementor-panel-header-title img{width:90px}.elementor-panel #elementor-panel-elements-categories{padding-bottom:10px}.elementor-panel .elementor-panel-category{position:relative}.elementor-panel .elementor-panel-category:first-child .elementor-panel-category-title{padding-top:14px}.elementor-panel .elementor-panel-category.elementor-active .elementor-panel-category-title:before{-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.elementor-panel .elementor-panel-category:not(.elementor-active):after{content:"";position:absolute;left:15px;right:15px;bottom:0;height:8px;background:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,.03)),to(transparent));background:-webkit-linear-gradient(rgba(0,0,0,.03),transparent);background:-o-linear-gradient(rgba(0,0,0,.03),transparent);background:linear-gradient(rgba(0,0,0,.03),transparent);-webkit-transform:translateY(100%);-ms-transform:translateY(100%);transform:translateY(100%)}.elementor-panel .elementor-panel-category-title{margin:0 15px;padding:20px 0;position:relative;text-transform:uppercase;font-size:11px;cursor:pointer}.elementor-panel .elementor-panel-category-title:before{content:"";font-family:eicons;position:absolute;right:0;-webkit-transition:-webkit-transform .3s;transition:-webkit-transform .3s;-o-transition:transform .3s;transition:transform .3s;transition:transform .3s,-webkit-transform .3s}.elementor-panel .elementor-panel-category-items{padding:0 10px}.elementor-panel .elementor-panel-scheme-title{padding:10px 20px;margin-top:10px}.elementor-panel .elementor-panel-scheme-description{padding:20px 20px 0}.elementor-panel .elementor-panel-scheme-buttons{padding:0 20px;display:table;table-layout:fixed;width:100%;height:40px;background-color:#fff;-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1)}.elementor-panel .elementor-panel-scheme-buttons .elementor-button{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;font-size:11px;font-weight:400}.elementor-panel .elementor-panel-scheme-button-wrapper{display:table-cell;vertical-align:middle;text-align:center}.elementor-panel .elementor-panel-scheme-button-wrapper:first-child{text-align:left}.elementor-panel .elementor-panel-scheme-button-wrapper:last-child{text-align:right}.elementor-panel .elementor-panel-scheme-save .elementor-button{padding:6px 18px}.elementor-panel .elementor-panel-scheme-discard .elementor-button,.elementor-panel .elementor-panel-scheme-reset .elementor-button{color:#a4afb7;background:none}.elementor-panel .elementor-panel-scheme-color .elementor-panel-scheme-items{position:relative;display:grid;grid-template-columns:repeat(4,27px);-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.elementor-panel .elementor-panel-scheme-color-title{text-align:center;text-transform:uppercase;margin:10px 0;color:#c2cbd2;font-size:8px}.elementor-panel .elementor-panel-scheme-typography-item{display:table;table-layout:fixed;width:100%;margin-bottom:15px}.elementor-panel .elementor-panel-scheme-typography-item>*{display:table-cell;vertical-align:middle}.elementor-panel .elementor-panel-scheme-typography-item-value input,.elementor-panel .elementor-panel-scheme-typography-item-value select{width:100%}.elementor-panel .elementor-panel-scheme-item:not(.elementor-open) .elementor-panel-scheme-typography-items{display:none}.elementor-panel .elementor-panel-scheme-color-system-scheme{margin-bottom:10px}.elementor-panel .elementor-panel-scheme-color-system-scheme .elementor-title{font-size:11px;color:#a4afb7;font-style:italic;margin-top:5px}.elementor-panel .elementor-panel-scheme-color-system-items{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-transition:border .5s;-o-transition:border .5s;transition:border .5s;overflow:hidden;padding:3px;-webkit-border-radius:3px;border-radius:3px;border:1px solid #d5dadf;cursor:pointer}.elementor-panel .elementor-panel-scheme-color-system-items:hover{border:1px solid #a4afb7}.elementor-panel .elementor-panel-scheme-color-system-item{height:20px;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-panel #elementor-panel-schemes-disabled a{color:#39b54a}.elementor-panel #elementor-panel-schemes-disabled a:hover{text-decoration:underline}.elementor-panel #elementor-panel-schemes-disabled .elementor-nerd-box-icon{margin-top:20px}.elementor-panel #elementor-panel-page-menu{padding:25px 15px}.elementor-panel .elementor-panel-menu-group-title{text-transform:uppercase;font-size:11px}.elementor-panel .elementor-panel-menu-items{margin:15px 0 25px;-webkit-border-radius:5px;border-radius:5px;overflow:hidden}.elementor-panel .elementor-panel-menu-item{display:table;width:100%;height:40px;cursor:pointer;margin-bottom:1px;background-color:#fff}.elementor-panel .elementor-panel-menu-item:hover{background-color:hsla(0,0%,100%,.8)}.elementor-panel .elementor-panel-menu-item>*{display:table-cell;vertical-align:middle}.elementor-panel .elementor-panel-menu-item-icon{text-align:center;width:50px;color:#a4afb7;font-size:19px}.elementor-panel .elementor-panel-menu-item-icon .eicon-editor-external-link{font-size:18px}.elementor-panel .elementor-panel-menu-item-title{font-weight:500}.elementor-panel .elementor-panel-menu-item-title>span{color:#39b54a}.elementor-panel .elementor-panel-menu-item a{color:#6d7882}.elementor-panel .elementor-panel-menu-item-exit-to-dashboard{background-color:#0085ba;color:#fff;text-transform:uppercase;font-size:12px}.elementor-panel .elementor-panel-menu-item-exit-to-dashboard:hover{background-color:#0073a1}.elementor-panel .elementor-panel-menu-item-exit-to-dashboard .elementor-panel-menu-item-icon,.elementor-panel .elementor-panel-menu-item-exit-to-dashboard .elementor-panel-menu-item-title{color:#fff}.elementor-panel .elementor-panel-menu-item-settings-additional-settings{background-color:#f1f3f5}.elementor-panel .elementor-control.elementor-control-clear_page{background-color:transparent}.elementor-panel .elementor-control.elementor-control-clear_page .elementor-control-raw-html{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.elementor-panel .elementor-panel-navigation{background-color:#fff;-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1);display:table;table-layout:fixed;width:100%}.elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab{display:table-cell}.elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab.elementor-active{background-image:-webkit-gradient(linear,left top,left bottom,from(#f1f3f5),to(#fff));background-image:-webkit-linear-gradient(top,#f1f3f5,#fff);background-image:-o-linear-gradient(top,#f1f3f5,#fff);background-image:linear-gradient(180deg,#f1f3f5,#fff);border-bottom:3px solid #93003c}.elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab a{display:block;text-align:center;padding:12px 0 8px;font-size:10px;color:#6d7882}.elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab a:before{font-family:eicons;font-size:16px;display:block;margin-bottom:6px}.elementor-panel .elementor-tab-control-content a:before{content:"\e92c"}.elementor-panel .elementor-tab-control-style a:before{content:"\e921"}.elementor-panel .elementor-tab-control-advanced a:before,.elementor-panel .elementor-tab-control-general_style a:before,.elementor-panel .elementor-tab-control-settings a:before{content:"\e916"}.elementor-panel .elementor-tab-control-responsive a:before{content:"\e885"}.elementor-panel .elementor-tab-control-column a:before,.elementor-panel .elementor-tab-control-layout a:before{content:"\e899"}.elementor-panel .elementor-tab-control-lightbox a:before{content:"\e922"}.elementor-panel #elementor-panel__editor__help{padding:50px 25px;display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-panel #elementor-panel__editor__help,.elementor-panel #elementor-panel__editor__help__link{-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-panel #elementor-panel__editor__help__link{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;color:#6d7882;font-size:12px;font-weight:500;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.elementor-panel #elementor-panel__editor__help__link i{padding:0 5px;color:#a4afb7;font-size:18px;position:relative}.elementor-panel #elementor-panel__editor__help__link i:after{content:"";position:absolute;height:13px;width:13px;top:3px;bottom:0;left:8px;right:0;-webkit-border-radius:50%;border-radius:50%;z-index:-1}.elementor-panel #elementor-panel__editor__help__link:hover{color:#495157}.elementor-panel #elementor-panel__editor__help__link:hover i{color:#71d7f7}.elementor-panel #elementor-panel__editor__help__link:hover i:before{content:"\e941"}.elementor-panel #elementor-panel__editor__help__link:hover i:after{background:#fff}.elementor-panel #elementor-panel-footer{position:absolute;bottom:0;left:0;right:0;height:40px;background-color:#495157}.elementor-panel #elementor-panel-footer-tools{display:table;table-layout:fixed;width:100%;height:100%}.elementor-panel .elementor-panel-footer-tool{display:table-cell;vertical-align:middle;text-align:center;cursor:pointer;color:#a4afb7;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.elementor-panel .elementor-panel-footer-tool #elementor-panel-saver-button-update{border-right:1px solid #2d8739;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-panel .elementor-panel-footer-tool #elementor-panel-saver-button-update i{margin-right:5px}.elementor-panel .elementor-panel-footer-tool #elementor-panel-saver-button-save-options{float:left;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-panel .elementor-panel-footer-tool #elementor-panel-saver-button-save-options i{margin:auto}.elementor-panel .elementor-panel-footer-tool.elementor-open{color:#fff}.elementor-panel .elementor-panel-footer-tool:not(.elementor-open):hover{color:#d5dadf}.elementor-panel .elementor-panel-footer-tool:not(.elementor-open) .elementor-panel-footer-sub-menu-wrapper{display:none}.elementor-panel .elementor-panel-footer-sub-menu-wrapper{position:absolute;bottom:100%;left:0;width:100%;background-color:#556068;padding:10px;-webkit-box-shadow:-2px -5px 8px rgba(0,0,0,.1);box-shadow:-2px -5px 8px rgba(0,0,0,.1);cursor:default;z-index:10000}.elementor-panel .elementor-panel-footer-sub-menu{-webkit-border-radius:5px;border-radius:5px;overflow:hidden}.elementor-panel .elementor-panel-footer-sub-menu-item{background-color:#495157;display:table;table-layout:fixed;width:100%;cursor:pointer}.elementor-panel .elementor-panel-footer-sub-menu-item.elementor-disabled .elementor-icon,.elementor-panel .elementor-panel-footer-sub-menu-item.elementor-disabled .elementor-title{color:#6d7882}.elementor-panel .elementor-panel-footer-sub-menu-item:not(:last-child){margin-bottom:1px}.elementor-panel .elementor-panel-footer-sub-menu-item:hover{background-color:rgba(0,0,0,.2)}.elementor-panel .elementor-panel-footer-sub-menu-item.active{background-color:rgba(0,0,0,.3)}.elementor-panel .elementor-panel-footer-sub-menu-item>*{display:table-cell;height:40px;vertical-align:middle}.elementor-panel .elementor-panel-footer-sub-menu-item .elementor-icon{width:40px;color:#a4afb7}.elementor-panel .elementor-panel-footer-sub-menu-item .elementor-title{text-align:left;color:#d5dadf}.elementor-panel .elementor-panel-footer-sub-menu-item .elementor-description{width:95px;text-align:left;font-size:11px;font-style:italic;color:#a4afb7}.elementor-panel #elementor-panel-footer-help-title{text-align:left;padding:10px 0;color:#d5dadf}.elementor-panel #elementor-panel-footer-responsive>i{display:block;height:100%;line-height:40px}.elementor-panel #elementor-panel-footer-saver-publish{width:80px}.elementor-panel #elementor-panel-footer-saver-publish .elementor-button-state i{margin-right:0}.elementor-panel #elementor-panel-footer-saver-publish .elementor-button-state #elementor-panel-saver-button-publish-label{display:none}.elementor-panel #elementor-panel-footer-saver-options{width:35px;border-left:1px solid #495157}.elementor-panel #elementor-panel-footer-saver-options .elementor-last-edited-wrapper{font-size:11px;font-style:italic;color:#a4afb7;padding:5px 0 15px}.elementor-panel #elementor-panel-footer-saver-options .elementor-last-edited-wrapper:not(.elementor-state-active) .elementor-state-icon{display:none}.elementor-panel #elementor-panel-footer-saver-options .elementor-last-edited-wrapper time{border-bottom:1px dotted transparent;-webkit-transition:all .3s ease-in-out;-o-transition:all ease-in-out .3s;transition:all .3s ease-in-out;cursor:pointer}.elementor-panel #elementor-panel-footer-saver-options .elementor-last-edited-wrapper time:hover{border-bottom-color:inherit}.elementor-panel .elementor-disabled{cursor:default}.elementor-panel #elementor-panel-saver-button-preview a{color:#a4afb7}.elementor-panel #elementor-panel-saver-button-publish,.elementor-panel #elementor-panel-saver-button-save-options{font-size:11px;text-transform:uppercase;height:26px}.elementor-panel #elementor-panel-saver-button-publish.elementor-disabled,.elementor-panel #elementor-panel-saver-button-save-options.elementor-disabled{background-color:#556068;color:#a4afb7}.elementor-panel #elementor-panel-saver-button-publish{width:100%;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-panel #elementor-panel-saver-button-save-options{width:25px}#elementor-panel-elements-navigation .elementor-panel-navigation-tab{text-align:center;padding:10px 0;font-size:11px;text-transform:uppercase;cursor:pointer}#elementor-panel-elements{overflow:hidden}#elementor-panel-state-loading{display:none}body.elementor-panel-loading #elementor-panel-state-loading{position:absolute;top:0;left:0;height:100%;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;background-color:hsla(0,0%,100%,.5);z-index:2}#elementor-panel-state-loading .eicon-loading{font-size:25px;color:#71d7f7}#elementor-panel-elements-search-area{position:-webkit-sticky;position:sticky;top:0;padding:10px;background-color:#e6e9ec;z-index:1}#elementor-panel-elements-search-wrapper{position:relative}#elementor-panel-elements-search-input{background-color:hsla(0,0%,100%,.7);font-size:11px;padding:10px 10px 10px 29px;font-style:italic;color:#a4afb7;border:none;-webkit-transition:all 1s;-o-transition:all 1s;transition:all 1s;-webkit-border-radius:3px;border-radius:3px;appearance:none;-webkit-appearance:none;-moz-appearance:none}#elementor-panel-elements-search-input+i{position:absolute;left:10px;top:50%;color:#a4afb7;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}#elementor-panel-elements-search-input:focus{background-color:#fff;padding-right:15px}.elementor-panel .elementor-element{-webkit-border-radius:3px;border-radius:3px;background-color:#fff;cursor:move;position:relative}.elementor-panel .elementor-element-wrapper{text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box}.elementor-panel .elementor-element--promotion .elementor-element{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.elementor-panel .elementor-element .icon,.elementor-panel .elementor-element .title{color:#556068;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.elementor-panel .elementor-element:hover{-webkit-box-shadow:0 2px 6px rgba(0,0,0,.2);box-shadow:0 2px 6px rgba(0,0,0,.2)}.elementor-panel .elementor-element:hover .icon,.elementor-panel .elementor-element:hover .title{color:#93003c}.elementor-panel .elementor-element .icon{font-size:28px;padding-top:15px}.elementor-panel .elementor-element .elementor-element-title-wrapper{display:table;width:100%}.elementor-panel .elementor-element .title{font-size:11px;display:table-cell;vertical-align:middle;height:40px}.elementor-panel .elementor-element>.eicon-lock{position:absolute;top:5px;right:5px;color:#e6e9ec}#elementor-element--promotion__dialog{position:absolute;width:300px;z-index:1;background-color:#fff;-webkit-box-shadow:0 2px 15px rgba(0,0,0,.3);box-shadow:0 2px 15px rgba(0,0,0,.3);-webkit-border-radius:3px;border-radius:3px}#elementor-element--promotion__dialog:after{content:"";position:absolute;top:15px;right:100%;-webkit-transform:scaleY(.7);-ms-transform:scaleY(.7);transform:scaleY(.7);border:10px solid transparent;border-right-color:#fff}#elementor-element--promotion__dialog__title{font-size:14px}#elementor-element--promotion__dialog .dialog-header{display:-webkit-box;display:-ms-flexbox;display:flex;padding:20px;color:#495157;border-bottom:1px solid #e6e9ec;font-weight:500}#elementor-element--promotion__dialog .dialog-header i{color:#a4afb7}#elementor-element--promotion__dialog .dialog-header .eicon-pro-icon{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;margin-left:10px;font-size:14px}#elementor-element--promotion__dialog .dialog-header .eicon-close{cursor:pointer}#elementor-element--promotion__dialog .dialog-message{padding:20px}#elementor-element--promotion__dialog .dialog-buttons-wrapper{padding:0 20px 20px}#elementor-element--promotion__dialog .dialog-button{width:100%;padding:6.5px;font-size:12px}#elementor-element--promotion__dialog .dialog-button::-moz-focus-inner{border:0}#elementor-panel-inner{position:relative;height:100%;-webkit-box-shadow:0 0 5px 0 rgba(0,0,0,.2);box-shadow:0 0 5px 0 rgba(0,0,0,.2)}#elementor-panel-content-wrapper{position:absolute;bottom:40px;top:40px;left:0;width:100%}.elementor-panel-container{clear:both;padding-left:15px;padding-right:15px}.media-modal.wp-core-ui input,.media-modal.wp-core-ui select{width:auto}.media-modal.wp-core-ui fieldset{padding:0;border:0}.media-modal.wp-core-ui .wp-clearfix:after{content:"";display:table;clear:both}.media-modal.wp-core-ui .e-wp-media-elements-removed .embed-link-settings,.media-modal.wp-core-ui .e-wp-media-elements-removed .embed-media-settings>:not(.wp-clearfix):not(.alt-text):not(#alt-text-description){display:none}.media-modal.wp-core-ui .e-wp-media-elements-removed #embed-url-field{width:70%}.media-modal.wp-core-ui .e-wp-media-elements-removed .media-embed .thumbnail{margin-top:20px}.media-modal.wp-core-ui .e-wp-media-elements-removed .media-embed .thumbnail,.media-modal.wp-core-ui .e-wp-media-elements-removed .media-embed .thumbnail img{max-height:none}.media-modal.wp-core-ui .e-wp-media-elements-removed .media-embed .thumbnail:after{-webkit-box-shadow:none;box-shadow:none}.media-modal.wp-core-ui .e-wp-media-elements-removed .media-button-select{font-size:0}.media-modal.wp-core-ui .e-wp-media-elements-removed .media-button-select:before{content:var(--button-text);font-size:13px}#elementor-panel-get-pro-elements .elementor-nerd-box-message{margin-top:10px}#elementor-panel-get-pro-elements .elementor-nerd-box-icon{margin-top:20px}.elementor-control{--control-title-size:12px;background-color:#fff;position:relative;padding:0 20px 15px}.elementor-control a{font-weight:500;text-decoration:none;border-bottom:1px dotted transparent;-webkit-transition:all .3s ease-in-out;-o-transition:all ease-in-out .3s;transition:all .3s ease-in-out}.elementor-control a:hover{border-bottom-color:inherit}.elementor-control a.elementor-responsive-switcher{border-bottom:0}.elementor-control .elementor-control-content{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.elementor-control .elementor-control-title{font-size:var(--control-title-size);line-height:1;margin-right:5px}.elementor-control .elementor-control-spinner{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-control.elementor-control-type-divider{padding:0;background-color:transparent}.elementor-control.elementor-control-type-divider .elementor-control-content{border:solid #e6e9ec;border-width:1px 0 0;background-color:#fff;height:15px}.elementor-control.elementor-control-separator-default:not(.elementor-control-type-divider).elementor-control-wp{margin-top:15px}.elementor-control.elementor-control-separator-default:not(.elementor-control-type-divider).elementor-control-wp:before{content:"";height:1px;display:block;margin-bottom:15px;background-color:transparent}.elementor-control.elementor-control-separator-before{padding-top:15px}.elementor-control.elementor-control-separator-before:before{content:"";position:absolute;height:1px;width:100%;top:0;left:0;background-color:#e6e9ec}.elementor-control.elementor-control-separator-after:after{content:"";position:absolute;height:1px;width:100%;bottom:0;left:0;background-color:#e6e9ec}.elementor-control.elementor-control-separator-after+.elementor-control-type-tabs+.elementor-control-separator-default,.elementor-control.elementor-control-separator-after:not(.elementor-hidden-control)+.elementor-control-separator-default{padding-top:15px}.elementor-control.elementor-control-deprecated,.elementor-control.elementor-control-deprecated .elementor-control-field-description{color:#b01b1b}.elementor-control.elementor-control-hidden-label>*>*>.elementor-control-title,.elementor-control.elementor-control-hidden-label>*>.elementor-control-title,.elementor-control.elementor-hidden-control{display:none}.elementor-control.elementor-control-type-heading .elementor-control-title{font-weight:700;margin:0}body:not(.elementor-device-desktop) .elementor-control.elementor-control-responsive-desktop,body:not(.elementor-device-laptop) .elementor-control.elementor-control-responsive-laptop,body:not(.elementor-device-mobile) .elementor-control.elementor-control-responsive-mobile,body:not(.elementor-device-mobile_extra) .elementor-control.elementor-control-responsive-mobile_extra,body:not(.elementor-device-tablet) .elementor-control.elementor-control-responsive-tablet,body:not(.elementor-device-tablet_extra) .elementor-control.elementor-control-responsive-tablet_extra,body:not(.elementor-device-widescreen) .elementor-control.elementor-control-responsive-widescreen{display:none}.elementor-control.elementor-control-type-select .elementor-control-input-wrapper{position:relative}.elementor-control.elementor-control-type-select .elementor-control-input-wrapper select{appearance:none;-webkit-appearance:none;-moz-appearance:none;font-size:12px;font-family:inherit;font-weight:inherit;font-style:inherit;text-transform:inherit;letter-spacing:inherit;line-height:inherit;-ms-flex-preferred-size:100%;flex-basis:100%;padding-left:5px;padding-right:20px;cursor:pointer}.elementor-control.elementor-control-type-select .elementor-control-input-wrapper select.e-select-placeholder{color:#a4afb7}.elementor-control.elementor-control-type-select .elementor-control-input-wrapper option.e-option-placeholder{display:none}.elementor-control.elementor-control-type-select .elementor-control-input-wrapper:after{font-family:eicons;content:"\e8ad";font-size:12px;position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);right:5px;pointer-events:none}.elementor-control-custom_attributes_pro .elementor-nerd-box-message,.elementor-control-custom_css_pro .elementor-nerd-box-message{margin-top:5px}.elementor-control.elementor-control-custom_css_title{font-size:12px}.elementor-control.elementor-open .elementor-panel-heading-toggle .eicon:before,.elementor-panel-scheme-item.elementor-open .elementor-panel-heading-toggle .eicon:before{content:"\e92a"}.elementor-control:not(.elementor-open) .elementor-panel-heading-toggle .eicon:before,.elementor-panel-scheme-item:not(.elementor-open) .elementor-panel-heading-toggle .eicon:before{content:""}.elementor-panel-heading{display:table;table-layout:fixed;height:40px;padding:0 20px;width:100%;border-bottom:1px solid #e6e9ec;cursor:pointer}.elementor-panel-heading>*{display:table-cell;vertical-align:middle}.elementor-panel-heading-toggle{width:20px;color:#495157}.elementor-panel-heading-title{color:#495157;font-weight:700}.elementor-control-wp{line-height:1.5}.elementor-control-wp p{margin:15px 0}.elementor-control-field{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-label-block>.elementor-control-content>.elementor-control-field{-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-label-block>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{width:100%;margin-top:10px}.elementor-label-block.elementor-control-hidden-label.elementor-label-block>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper,.elementor-label-block.elementor-control-hidden-label:not(.elementor-control-dynamic)>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{margin-top:0}.elementor-label-inline>.elementor-control-content>.elementor-control-field>.elementor-control-title{-ms-flex-negative:0;flex-shrink:0}.elementor-label-inline>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{margin-left:auto}.elementor-control-field-description{margin-top:10px}.elementor-group-control-attachment_alert .elementor-control-field-description{margin-top:0}.elementor-required{color:#b01b1b}.elementor-units-choices{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;text-align:right}.elementor-units-choices input{display:none}.elementor-units-choices input:not(:checked)+label{color:#a4afb7}.elementor-units-choices input.e-units-placeholder+label{color:#c2cbd2;text-decoration:underline}.elementor-units-choices input:checked+label{text-decoration:underline}.elementor-units-choices label{cursor:pointer;padding:0 2px;text-transform:uppercase;font-size:9px}.elementor-control-responsive-switchers{--selected-option:0;--pointer-position:var(--selected-option);position:relative;width:2em;height:2em;margin:calc(-2em + var(--control-title-size)) 0;margin-right:5px}.elementor-control-responsive-switchers__holder{position:absolute;width:100%;top:0;background-color:#fff;-webkit-border-radius:3px;border-radius:3px;-webkit-transition:.15s;-o-transition:.15s;transition:.15s;border:1px solid transparent}.elementor-control-responsive-switchers.elementor-responsive-switchers-open{z-index:11000}.elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-responsive-switcher{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-responsive-switcher:hover{color:#71d7f7}.elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-control-responsive-switchers__holder{top:calc(-1 * var(--selected-option) * 2em);-webkit-box-shadow:0 0 3px rgba(0,0,0,.2);box-shadow:0 0 3px rgba(0,0,0,.2)}.elementor-responsive-switcher{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;position:relative;z-index:2;cursor:pointer;height:0;-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);opacity:0;-webkit-transition:.15s;-o-transition:.15s;transition:.15s;font-size:12px}a.elementor-responsive-switcher{color:#a4afb7}a.elementor-responsive-switcher:hover{color:#71d7f7}.elementor-device-widescreen .elementor-responsive-switcher.elementor-responsive-switcher-widescreen{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-widescreen .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-widescreen{color:#71d7f7}.elementor-device-desktop .elementor-responsive-switcher.elementor-responsive-switcher-desktop{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-desktop .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-desktop{color:#71d7f7}.elementor-device-laptop .elementor-responsive-switcher.elementor-responsive-switcher-laptop{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-laptop .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-laptop{color:#71d7f7}.elementor-device-tablet_extra .elementor-responsive-switcher.elementor-responsive-switcher-tablet_extra{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-tablet_extra .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-tablet_extra{color:#71d7f7}.elementor-device-tablet .elementor-responsive-switcher.elementor-responsive-switcher-tablet{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-tablet .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-tablet{color:#71d7f7}.elementor-device-mobile_extra .elementor-responsive-switcher.elementor-responsive-switcher-mobile_extra{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-mobile_extra .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-mobile_extra{color:#71d7f7}.elementor-device-mobile .elementor-responsive-switcher.elementor-responsive-switcher-mobile{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-mobile .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-mobile{color:#71d7f7}.elementor-update-preview{margin:15px 15px 0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-update-preview-button-wrapper{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;text-align:right}.elementor-update-preview-button{padding:8px 15px;text-transform:uppercase}.elementor-control-direction-ltr input,.elementor-control-direction-ltr textarea{direction:ltr}.elementor-control-direction-rtl input,.elementor-control-direction-rtl textarea{direction:rtl}.elementor-control-type-button .elementor-control-input-wrapper{text-align:right}.elementor-control-type-button .elementor-button{width:auto;height:26px}.elementor-control-type-choose.elementor-label-block .elementor-choices{width:100%}.elementor-choices{display:-webkit-box;display:-ms-flexbox;display:flex;height:27px;line-height:27px;text-align:center;border-spacing:1px;-webkit-border-radius:3px;border-radius:3px;overflow:hidden}.elementor-choices .elementor-choices-label{border:1px solid #d5dadf;border-right:none;font-size:12px;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s;cursor:pointer;overflow:hidden}.elementor-choices .elementor-choices-label:nth-child(2){-webkit-border-top-left-radius:3px;border-top-left-radius:3px;-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px}.elementor-choices .elementor-choices-label:last-child{border-right:1px solid #d5dadf;-webkit-border-top-right-radius:3px;border-top-right-radius:3px;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px}.elementor-choices input{display:none}.elementor-choices input.e-choose-placeholder+.elementor-choices-label{color:#fff;background-color:#c2cbd2;border-color:#c2cbd2}.elementor-choices input:checked+.elementor-choices-label{color:#fff;background-color:#a4afb7;border-color:#a4afb7}.elementor-label-inline .elementor-choices{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.rtl .elementor-control-align .elementor-choices,.rtl .elementor-control-position .elementor-choices,.rtl .elementor-control-text_align .elementor-choices{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.rtl .elementor-control-align .elementor-choices .elementor-choices-label:nth-child(2),.rtl .elementor-control-position .elementor-choices .elementor-choices-label:nth-child(2),.rtl .elementor-control-text_align .elementor-choices .elementor-choices-label:nth-child(2){border-right:1px solid #d5dadf;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.rtl .elementor-control-align .elementor-choices .elementor-choices-label:last-child,.rtl .elementor-control-position .elementor-choices .elementor-choices-label:last-child,.rtl .elementor-control-text_align .elementor-choices .elementor-choices-label:last-child{border-right:none;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-control-type-color.e-control-global .e-global__popover-toggle~.pickr{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;-ms-flex-negative:0;flex-shrink:0}.elementor-control-type-color .elementor-control-title{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-control-type-color .elementor-control-input-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-control-type-color .elementor-control-dynamic-switcher{border-left-width:0;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-control-type-color.elementor-control-dynamic .pickr{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-group-control-css-filter .elementor-slider{height:6px;-webkit-box-shadow:0 0 1px 1px inset rgba(0,0,0,.2);box-shadow:inset 0 0 1px 1px rgba(0,0,0,.2)}.elementor-group-control-css-filter .elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{margin-top:0;margin-bottom:5px}.elementor-group-control-blur .elementor-slider{background:url(../images/blur.png);-webkit-background-size:cover;background-size:cover;background-position:50%}.elementor-group-control-contrast .elementor-slider{background:url(../images/contrast.png);-webkit-background-size:100% 100%;background-size:100% 100%}.elementor-group-control-hue .elementor-slider{background-image:-webkit-gradient(linear,left top,right top,from(red),color-stop(orange),color-stop(#ff0),color-stop(#adff2f),color-stop(#32cd32),color-stop(#00bfff),color-stop(#00f),color-stop(95%,#9400d3));background-image:-webkit-linear-gradient(left,red,orange,#ff0,#adff2f,#32cd32,#00bfff,#00f,#9400d3 95%);background-image:-o-linear-gradient(left,red,orange,#ff0,#adff2f,#32cd32,#00bfff,#00f,#9400d3 95%);background-image:linear-gradient(90deg,red,orange,#ff0,#adff2f,#32cd32,#00bfff,#00f,#9400d3 95%)}.elementor-group-control-saturate .elementor-slider{background-image:-webkit-gradient(linear,left top,right top,from(grey),to(red));background-image:-webkit-linear-gradient(left,grey,red);background-image:-o-linear-gradient(left,grey,red);background-image:linear-gradient(90deg,grey,red)}.elementor-group-control-brightness .elementor-slider{background-image:-webkit-gradient(linear,left top,right top,from(#000),to(#fff));background-image:-webkit-linear-gradient(left,#000,#fff);background-image:-o-linear-gradient(left,#000,#fff);background-image:linear-gradient(90deg,#000,#fff)}.elementor-control-type-dimensions .elementor-control-dimensions{overflow:hidden}.elementor-control-type-dimensions li{float:left;width:20%}.elementor-control-type-dimensions li .elementor-link-dimensions,.elementor-control-type-dimensions li input{display:block;text-align:center;width:100%;border-color:#d5dadf;height:27px}.elementor-control-type-dimensions li input{border-left:none;-webkit-border-radius:0;border-radius:0;padding:4px 0}.elementor-control-type-dimensions li input:focus{border-left:1px solid;border-color:#a4afb7;margin-left:-1px;width:calc(100% + 1px)}.elementor-control-type-dimensions li input:focus+.elementor-control-dimension-label{color:#a4afb7}.elementor-control-type-dimensions li .elementor-link-dimensions{border:1px solid #d5dadf;border-left:none;background-color:#fff;padding:0;outline:none;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;cursor:pointer}.elementor-control-type-dimensions li:first-child input{border-left:1px solid #d5dadf;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-dimensions li:first-child input:focus{border-color:#a4afb7;margin-left:0;width:100%}.elementor-control-type-dimensions .elementor-control-dimension-label{display:block;text-align:center;color:#d5dadf;font-size:9px;text-transform:uppercase;padding-top:5px}.elementor-control-type-dimensions .elementor-link-dimensions.unlinked{background-color:#fff}.elementor-control-type-dimensions .elementor-link-dimensions.unlinked .elementor-linked{display:none}.elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked){background-color:#a4afb7;border-color:#a4afb7}.elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked) .elementor-unlinked{display:none}.elementor-control-type-dimensions .elementor-link-dimensions .elementor-linked{color:#fff}.elementor-control-type-icons .elementor-control-media__preview>*{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor-control-type-icons .elementor-control-media__preview i{font-size:70px;color:#6d7882}.elementor-control-type-icons .elementor-control-media__preview svg{height:75%}.elementor-control-type-icons .elementor-control-icons--inline__svg i.eicon-upload{font-size:15px}.elementor-control-type-gallery .elementor-control-media__content{border:1px solid #d5dadf;-webkit-border-radius:3px;border-radius:3px}.elementor-control-type-gallery .elementor-control-gallery-status{font-size:12px;height:27px;padding-left:10px;border-bottom:1px solid #d5dadf;display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-control-type-gallery .elementor-control-gallery-status>*{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-control-type-gallery .elementor-control-gallery-status-title{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-control-type-gallery .elementor-control-gallery-content{position:relative;overflow:hidden}.elementor-control-type-gallery .elementor-control-gallery-content:not(:hover) .elementor-control-gallery-edit{opacity:0}.elementor-control-type-gallery .elementor-control-gallery-thumbnails{display:grid;grid-template-columns:repeat(auto-fill,minmax(48px,1fr));grid-gap:10px;cursor:pointer;padding:10px}.elementor-control-type-gallery .elementor-control-gallery-thumbnail{width:48px;height:48px;-webkit-background-size:cover;background-size:cover;background-position:50% 50%}.elementor-control-type-gallery .elementor-control-gallery-edit{position:absolute;top:0;bottom:0;left:0;right:0;background-color:rgba(109,120,130,.3);padding:10px;font-size:11px;-webkit-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;transition:all .3s ease-in-out;pointer-events:none;cursor:pointer;opacity:1}.elementor-control-type-gallery .elementor-control-gallery-edit span{position:absolute;top:10px;right:10px;width:21px;height:21px;background-color:hsla(0,0%,100%,.9);color:#a4afb7;-webkit-box-shadow:0 0 7px 0 rgba(0,0,0,.2);box-shadow:0 0 7px 0 rgba(0,0,0,.2);-webkit-border-radius:3px;border-radius:3px}.elementor-control-type-gallery .elementor-control-gallery-edit span i{font-size:11px;padding:5px}.elementor-control-type-gallery .elementor-control-gallery-add{width:48px;height:48px;color:#fff;background-color:#d5dadf;font-size:14px;-webkit-border-radius:0;border-radius:0}.elementor-control-type-gallery .elementor-control-gallery-add:hover{background-color:#c2cbd2}.elementor-control-type-gallery .elementor-control-gallery-add i{margin:0;color:#a4afb7}.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-clear,.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-edit,.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-thumbnails{display:none}.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-content{padding:10px}.elementor-control-type-gallery.elementor-gallery-has-images .elementor-control-gallery-add{display:none}.elementor-control-type-gallery.elementor-control-dynamic .elementor-control-gallery-clear{border-left:1px solid #d5dadf}.elementor-control-type-gallery .elementor-control-gallery-clear{cursor:pointer;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-control-type-gallery .elementor-control-gallery-clear:hover{color:#b01b1b}.elementor-control-type-gallery .elementor-control-dynamic-switcher{border:1px solid #d5dadf;border-top:none;border-right:none;-webkit-border-radius:0 3px 0 0;border-radius:0 3px 0 0}.e-global__popover{width:288px;z-index:1;font-size:12px;padding-left:10px}.e-global__popover-toggle{border:1px solid #d5dadf;border-right:0;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;cursor:pointer}.e-global__popover-toggle--active i{color:#71d7f7}.e-global__popover-container{-webkit-box-shadow:0 2px 15px rgba(0,0,0,.3);box-shadow:0 2px 15px rgba(0,0,0,.3);-webkit-border-radius:3px;border-radius:3px;background-color:#fff;padding-bottom:5px}.e-global__popover-title{padding:15px 20px;font-weight:500;color:#6d7882;border-bottom:1px solid #e6e9ec;display:-webkit-box;display:-ms-flexbox;display:flex}.e-global__popover-title>i{margin-right:5px;color:#d5dadf}.e-global__popover-title-text{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.e-global__popover-info{margin-right:5px;display:inline-block}.e-global__popover-info-tooltip{width:270px;z-index:1;background-color:rgba(0,0,0,.9);color:#fff;padding:20px;-webkit-border-radius:3px;border-radius:3px}.e-global__popover-info-tooltip:after{content:"";position:absolute;bottom:-17px;left:16px;border:10px solid transparent;border-top-color:rgba(0,0,0,.9)}.e-global__popover-info i{color:#d5dadf;font-size:13px}.e-global__preview-items-container{max-height:260px;overflow-y:auto;margin-top:5px}.e-global__preview-items-container::-webkit-scrollbar{width:7px}.e-global__preview-items-container::-webkit-scrollbar-thumb{background-color:#c2cbd2;-webkit-border-radius:10px;border-radius:10px}.e-global__manage-button{font-weight:500;cursor:pointer}.e-global__manage-button:hover i{color:#4ab7f4}.e-global__manage-button i{color:#6d7882}.e-global__typography{padding:5px 10px 5px 35px;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}.e-global__typography.e-global__preview-item--selected:before{font-family:eicons;font-size:13px;content:"\e90e";position:absolute;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);top:50%;left:12px}.e-global__color{margin:5px auto;padding:5px 20px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.e-global__color:first-child{margin-top:5px}.e-global__color:last-child{margin-bottom:10px}.e-global__color-preview-container{height:20px;width:20px;-webkit-border-radius:3px;border-radius:3px;border:1px solid rgba(0,0,0,.1);margin-right:10px;-ms-flex-negative:0;flex-shrink:0;position:relative}.e-global__color-preview-color,.e-global__color-preview-transparent-bg{-webkit-border-radius:3px;border-radius:3px;height:100%;width:100%;position:absolute;top:0;left:0}.e-global__color-preview-transparent-bg{background-image:-webkit-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd),-webkit-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd);background-image:-o-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd),-o-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd);background-image:linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd),linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd);-webkit-background-size:12px 12px;background-size:12px 12px;background-position:0 0,6px 6px}.e-global__color-title{font-weight:500;color:#6d7882;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;padding-right:10px}.e-global__color-hex{font-size:10px;font-weight:500;color:#c2cbd2}.e-global__color .pcr-button{background-color:#fff}.e-global__color.e-global__preview-item--selected .e-global__color-preview-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:#fff}.e-global__color.e-global__preview-item--selected .e-global__color-preview-container:before{font-family:eicons;font-size:13px;content:"\e90e";text-shadow:0 0 1px #000;z-index:1}.e-global__preview-item{cursor:pointer;position:relative}.e-global__preview-item:hover{background-color:#f1f3f5}.e-global__preview-item:hover .e-global__color-hex{color:#a4afb7}.e-global__confirm-add .dialog-buttons-wrapper>.dialog-button.dialog-confirm-ok{color:#39b54a}.e-global__confirm-delete i{color:#b01b1b}.e-global__confirm-message-text i{color:#fcb92c}.e-global__confirm-input-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;border:1px solid #a4afb7;-webkit-border-radius:3px;border-radius:3px;margin-top:10px;padding:2px}.e-global__confirm-input-wrapper input{font-family:Roboto,Arial,sans-serif;font-weight:500;font-size:12px;padding:2px;border:0}.e-control-global .elementor-control-input-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;max-width:135px;width:100%}.e-control-global.elementor-control .elementor-control-input-wrapper{direction:ltr}.e-control-global .elementor-control-spinner{margin-right:4px}.elementor-control-type-hidden{display:none!important}.elementor-control-type-icon .select2-selection__rendered .eicon{margin-right:3px}.elementor-control-type-image_dimensions .elementor-control-field-description{margin:0 0 15px;line-height:1.4}.elementor-control-type-image_dimensions .elementor-control-input-wrapper{overflow:hidden}.elementor-control-type-image_dimensions .elementor-image-dimensions-field{width:65px;float:left}.elementor-control-type-image_dimensions .elementor-image-dimensions-field input:focus+.elementor-image-dimensions-field-description{color:#a4afb7}.elementor-control-type-image_dimensions .elementor-image-dimensions-separator{width:20px;text-align:center;float:left;padding-top:4px}.elementor-control-type-image_dimensions .elementor-image-dimensions-field-description{display:block;text-transform:uppercase;margin-top:5px;color:#d5dadf;font-size:9px;text-align:center}.elementor-control-type-image_dimensions .elementor-image-dimensions-apply-button{float:right;height:27px;width:65px}.elementor-control-media.elementor-media-empty .elementor-control-media-area .elementor-control-media__content__remove,.elementor-control-media.elementor-media-empty .elementor-control-media-area .elementor-control-media__remove,.elementor-control-media:not(.elementor-media-empty) .elementor-control-media__content__upload-button{display:none}.elementor-control-media .elementor-control-input-wrapper{border:1px solid #d5dadf}.elementor-control-media .eicon-plus-circle{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);color:#fff;font-size:20px}.elementor-control-media__content__upload-button{background-color:#d5dadf}.elementor-control-media__preview{height:100%;-webkit-background-size:cover;background-size:cover;background-position:50%}.elementor-control-media-area{background-image:-webkit-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd),-webkit-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd);background-image:-o-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd),-o-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd);background-image:linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd),linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd);-webkit-background-size:16px 16px;background-size:16px 16px;background-position:0 0,8px 8px;background-color:#f6f6f6}.elementor-control-media-area:not(:hover) .elementor-control-media__remove{display:none}.elementor-control-media-area .eicon-video-camera{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);color:hsla(0,0%,100%,.7);font-size:21px}.elementor-control-media .elementor-control-media__content{cursor:pointer;overflow:hidden}.elementor-control-media .elementor-control-media__content:hover:after{content:"";position:absolute;top:0;bottom:0;left:0;right:0;background-color:rgba(0,0,0,.2);pointer-events:none}.elementor-control-media .elementor-control-media__content:not(:hover) .elementor-control-media__tools{bottom:-30px}.elementor-control-media__content,.elementor-control-media__tools{-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.elementor-control-media__tools{position:absolute;bottom:0;left:0;right:0;height:27px}.elementor-control-media__tools>:not(:first-child){margin-left:1px}.elementor-control-media__tool{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;color:#fff;background-color:rgba(109,120,130,.85);font-size:11px;-webkit-transition:background .3s;-o-transition:background .3s;transition:background .3s}.elementor-control-media__tool:hover{background-color:rgba(109,120,130,.95)}.elementor-control-media__remove{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;transition:all .3s ease-in-out}.elementor-control-media__content__remove{position:absolute;z-index:1;top:10px;right:10px;width:20px;height:20px;font-size:11px;color:#a4afb7;background-color:hsla(0,0%,100%,.9);-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 0 7px 0 rgba(0,0,0,.1);box-shadow:0 0 7px 0 rgba(0,0,0,.1)}.elementor-control-media__content__remove:hover{background-color:#fff;-webkit-box-shadow:0 0 5px 0 rgba(0,0,0,.4);box-shadow:0 0 5px 0 rgba(0,0,0,.4)}.elementor-control-media.elementor-media-empty .elementor-control-file-area{display:none}.elementor-control-media__file{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%;margin-top:10px;border:1px solid #d5dadf}.elementor-control-media__file__content{padding-left:5px;font-size:12px}.elementor-control-media__file__content__label{color:#a4afb7}.elementor-control-media__file__content__info{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-weight:500}.elementor-control-media__file__content__info__icon{margin-right:5px}.elementor-control-media__file__controls{display:-webkit-box;display:-ms-flexbox;display:flex;border-left:1px solid #d5dadf}.elementor-control-media__file__controls__remove,.elementor-control-media__file__controls__upload-button{width:27px;height:27px;cursor:pointer;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-control-media__file__controls__upload-button{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-control-media__file__controls__remove{border-right:1px solid #d5dadf}.elementor-control-media.elementor-media-empty .elementor-control-media__file__content__info,.elementor-control-media.elementor-media-empty .elementor-control-media__file__controls__remove,.elementor-control-media:not(.elementor-media-empty) .elementor-control-media__file__content__label{display:none}.elementor-control-media .elementor-control-dynamic-switcher{border:none;-webkit-border-radius:0;border-radius:0;background-color:rgba(109,120,130,.85);color:#fff}.elementor-control-media .elementor-control-dynamic-switcher:hover{background-color:rgba(109,120,130,.95)}.elementor-control-type-media.elementor-control-dynamic-value .elementor-control-input-wrapper{border:none}.elementor-control-type-number.elementor-control-dynamic input{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px;border-right:none}.elementor-control-type-number.elementor-control-dynamic .elementor-control-dynamic-switcher{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-control-type-order .elementor-control-oreder-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-control-type-order input{display:none}.elementor-control-type-order input:checked+.elementor-control-order-label{-webkit-transform:scaleY(-1);-ms-transform:scaleY(-1);transform:scaleY(-1)}.elementor-control-type-order select{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-order select:not(:focus)~.elementor-control-order-label{border-color:#d5dadf}.elementor-control-type-order select:focus~.elementor-control-order-label{border-color:#a4afb7}.elementor-control-type-order .elementor-control-order-label{position:relative;padding:0;width:40px;border:1px solid;font-size:10px;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;margin-left:-3px;background-color:#fff;cursor:pointer}.elementor-control-type-order .elementor-control-order-label i{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor-control-type-popover_toggle input{display:none}.elementor-control-type-popover_toggle label{cursor:pointer}.elementor-control-type-popover_toggle .elementor-control-input-wrapper{direction:rtl}.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle:checked+.elementor-control-popover-toggle-toggle-label{color:#71d7f7}.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle:not(:checked)~.elementor-control-popover-toggle-reset-label{display:none}.elementor-control-type-popover_toggle .elementor-control-popover-toggle-reset-label{color:#c2cbd2;margin-right:5px}.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle-label{height:27px;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-border-radius:3px;border-radius:3px;border:1px solid #d5dadf}.elementor-controls-popover.e-controls-popover--typography{padding-top:0}.e-control-global .elementor-control-popover-toggle-toggle-label{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;-ms-flex-negative:0;flex-shrink:0}.elementor-control-type-repeater .elementor-control:not(.elementor-control-type-tab){padding-right:10px;padding-left:10px;padding-bottom:10px}.elementor-control-type-repeater.elementor-repeater-has-minimum-rows .elementor-repeater-tool-remove{display:none}.elementor-control-type-repeater .elementor-repeater-fields{margin:10px 0}.elementor-control-type-repeater .elementor-repeater-row-controls{border:1px solid #d5dadf;border-top:0 solid #d5dadf;padding-top:15px}.elementor-control-type-repeater .elementor-repeater-row-controls:not(.editable){display:none}.elementor-control-type-repeater .elementor-repeater-row-tools{display:table;table-layout:fixed;width:100%;color:#556068;background-color:#d5dadf;height:40px;border-spacing:1px;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-control-type-repeater .elementor-repeater-row-tools:hover{background-color:#a4afb7}.elementor-control-type-repeater .elementor-repeater-row-tools>div{display:table-cell;text-align:center;vertical-align:middle;cursor:pointer}.elementor-control-type-repeater .elementor-repeater-row-tools>div:not(.elementor-repeater-row-handle-sortable){background-color:#fff}.elementor-control-type-repeater .elementor-repeater-row-tools>div:hover{opacity:.95}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title{text-align:left;padding:0 10px;font-size:12px;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title .eicon,.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title i,.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title svg{margin-right:5px}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title img[src$=svg]{width:1em}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-tool{width:40px}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-handle-sortable{cursor:move;width:10px;color:#fff}.elementor-control-type-repeater .elementor-button-wrapper{text-align:center;padding-top:5px}.elementor-control-type-section{margin-top:10px;padding:0}.elementor-control-type-section.elementor-open{padding-bottom:15px}.elementor-control-type-section+.elementor-control:not(.elementor-control-type-section):before{display:none}.elementor-shadow-box .elementor-shadow-slider{margin-top:10px}.elementor-shadow-box .elementor-color-picker-wrapper .elementor-control-title{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-control-type-slider.elementor-control-dynamic input{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-slider .elementor-control-unit-2{width:21%}.elementor-control-type-slider.elementor-control-type-slider--multiple .elementor-control-input-wrapper{display:block}.elementor-control-type-slider--multiple{padding-bottom:40px}.elementor-control-type-slider--multiple .elementor-slider{margin-top:12px;width:98%}.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle{-webkit-border-radius:0;border-radius:0;width:10px;-webkit-transform:translateY(calc(50% - 14px)) translateX(4px);-ms-transform:translateY(calc(50% - 14px)) translateX(4px);transform:translateY(calc(50% - 14px)) translateX(4px)}.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle:after{content:"";position:absolute;top:2px;height:12px;width:11px;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg);background-color:#fff;-webkit-border-radius:3px;border-radius:3px}.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle-lower:after{left:5px;-webkit-box-shadow:2px -2px 3px 0 rgba(0,0,0,.1);box-shadow:2px -2px 3px 0 rgba(0,0,0,.1)}.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle-upper:after{right:5px;-webkit-box-shadow:-2px 2px 3px 0 rgba(0,0,0,.1);box-shadow:-2px 2px 3px 0 rgba(0,0,0,.1)}.elementor-control-type-slider .elementor-control-dynamic-switcher{border-left-width:0;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-control-type-slider .elementor-control-input-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-control-type-slider .elementor-dynamic-cover{margin-top:10px}.elementor-slider{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;height:4px;background-color:#d5dadf;-webkit-border-radius:5px;border-radius:5px;position:relative;cursor:pointer}.elementor-slider-input{width:21%;min-width:54px;margin-left:12px}.elementor-slider__extra{position:relative}.elementor-slider__labels{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.elementor-slider__label{font-size:9px;color:#c2cbd2}.elementor-slider__scales{position:absolute;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:space-evenly;-ms-flex-pack:space-evenly;justify-content:space-evenly;width:100%;margin-top:4px}.elementor-slider__scale{width:1px;height:21px;background-color:#a4afb7}.elementor-slider .noUi-handle{height:16px;width:16px;background-color:#fff;right:0;-webkit-transform:translateY(calc(50% - 14px)) translateX(8px);-ms-transform:translateY(calc(50% - 14px)) translateX(8px);transform:translateY(calc(50% - 14px)) translateX(8px);position:absolute;-webkit-box-shadow:0 1px 5px rgba(0,0,0,.3);box-shadow:0 1px 5px rgba(0,0,0,.3);-webkit-border-radius:50%;border-radius:50%}.elementor-slider .noUi-connects{position:absolute;width:100%;height:4px}.elementor-slider .noUi-connect{position:absolute;z-index:0;top:0;left:0;height:100%;width:100%;will-change:transform;-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0;background-color:#a4afb7}.elementor-slider .noUi-tooltip{position:absolute;top:calc(100% + 5px);left:calc(50% - 4px);-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);font-size:10px}.elementor-control-type-structure .elementor-control-field{display:initial}.elementor-control-type-structure .elementor-control-structure-preset{padding:3px;-webkit-border-radius:3px;border-radius:3px;display:inline-block;cursor:pointer;height:50px}.elementor-control-type-structure .elementor-control-structure-preset svg{height:100%}.elementor-control-type-structure .elementor-control-structure-preset path{fill:#e6e9ec}.elementor-control-type-structure .elementor-control-structure-reset{padding:15px 20px 0;font-size:11px;cursor:pointer;color:#a4afb7;border-top:1px solid #e6e9ec;margin:0 -20px}.elementor-control-type-structure .elementor-control-structure-title{margin:10px -20px 0}.elementor-control-type-structure .elementor-control-structure-title:before{height:10px;-webkit-box-shadow:inset 0 2px 4px hsla(0,0%,49.8%,.1);box-shadow:inset 0 2px 4px hsla(0,0%,49.8%,.1)}.elementor-control-type-structure .elementor-control-structure-presets{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.elementor-control-type-structure .elementor-control-structure-presets input{display:none}.elementor-control-type-structure .elementor-control-structure-presets input:checked+.elementor-control-structure-preset path{fill:#a4afb7}.elementor-control-type-structure .elementor-control-structure-preset-wrapper{margin-bottom:15px}.elementor-control-type-structure .elementor-control-structure-preset-title{text-align:center;padding-top:5px;font-style:italic;font-size:11px;color:#a4afb7}.elementor-control-type-switcher .elementor-control-input-wrapper{text-align:right}.elementor-control-type-switcher .elementor-switch{position:relative;display:inline-block;vertical-align:top;height:20px;background-color:#fff;-webkit-border-radius:18px;border-radius:18px;cursor:pointer}.elementor-control-type-switcher .elementor-switch-input{display:none}.elementor-control-type-switcher .elementor-switch-label{position:relative;display:block;height:inherit;font-size:7px;text-transform:uppercase;background:#eceeef;-webkit-border-radius:inherit;border-radius:inherit;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.12),inset 0 0 2px rgba(0,0,0,.15);box-shadow:inset 0 1px 2px rgba(0,0,0,.12),inset 0 0 2px rgba(0,0,0,.15);-webkit-transition:.15s ease-out;-o-transition:.15s ease-out;transition:.15s ease-out;-webkit-transition-property:opacity,background;-o-transition-property:opacity,background;transition-property:opacity,background}.elementor-control-type-switcher .elementor-switch-label:after,.elementor-control-type-switcher .elementor-switch-label:before{position:absolute;top:0;width:50%;text-align:center;line-height:20px;-webkit-transition:inherit;-o-transition:inherit;transition:inherit}.elementor-control-type-switcher .elementor-switch-label:before{content:attr(data-off);right:3px;color:#a4afb7;text-shadow:0 1px hsla(0,0%,100%,.5)}.elementor-control-type-switcher .elementor-switch-label:after{content:attr(data-on);left:3px;color:#fff;text-shadow:0 1px rgba(0,0,0,.2);opacity:0}.elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-label{background:#71d7f7;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.15),inset 0 0 3px rgba(0,0,0,.2);box-shadow:inset 0 1px 2px rgba(0,0,0,.15),inset 0 0 3px rgba(0,0,0,.2)}.elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-label:before{opacity:0}.elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-label:after{opacity:1}.elementor-control-type-switcher .elementor-switch-handle{position:absolute;top:1px;left:1px;width:18px;height:18px;background:#fff;-webkit-border-radius:10px;border-radius:10px;-webkit-transition:left .15s ease-out;-o-transition:left .15s ease-out;transition:left .15s ease-out}.elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-handle{left:auto;right:1px;-webkit-box-shadow:-1px 1px 5px rgba(0,0,0,.2);box-shadow:-1px 1px 5px rgba(0,0,0,.2)}.elementor-control-type-tabs{font-size:.8em;text-transform:uppercase;display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-control-type-tab{text-align:center;width:100%;padding:0;line-height:25px;border-top:1px solid #d5dadf;border-bottom:1px solid #d5dadf;border-right:1px solid #d5dadf;cursor:pointer}.elementor-control-type-tab:first-child{border-left:1px solid #d5dadf;-webkit-border-top-left-radius:3px;border-top-left-radius:3px;-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px}.elementor-control-type-tab:last-child{-webkit-border-top-right-radius:3px;border-top-right-radius:3px;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px}.elementor-control-type-tab.elementor-tab-active{background-color:#a4afb7;border-color:#a4afb7;color:#fff}.elementor-tab-close{display:none!important}.elementor-control-type-code.elementor-control-dynamic-value .elementor-control-dynamic-switcher,.elementor-control-type-textarea.elementor-control-dynamic-value .elementor-control-dynamic-switcher{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;border-left-width:0}.elementor-control-type-code .elementor-control-dynamic-switcher,.elementor-control-type-textarea .elementor-control-dynamic-switcher{-webkit-border-radius:0 3px;border-radius:0 3px}.elementor-control-type-code:not(.elementor-control-dynamic-value) .elementor-control-dynamic-switcher,.elementor-control-type-textarea:not(.elementor-control-dynamic-value) .elementor-control-dynamic-switcher{position:absolute;top:0;z-index:1;right:0}.elementor-control-type-code .elementor-control-input-wrapper,.elementor-control-type-textarea .elementor-control-input-wrapper{position:relative}.elementor-control-type-code textarea,.elementor-control-type-textarea textarea{display:block;font-family:inherit}.elementor-control-type-code textarea:focus+.elementor-control-dynamic-switcher,.elementor-control-type-textarea textarea:focus+.elementor-control-dynamic-switcher{display:none}.elementor-control-type-code pre:focus-within+.elementor-control-dynamic-switcher,.elementor-control-type-textarea pre:focus-within+.elementor-control-dynamic-switcher{display:none}.elementor-control-type-url.elementor-control-dynamic .elementor-input{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-url .elementor-control-field{position:relative}.elementor-control-type-url.elementor-control-dynamic-value .elementor-control-url-more,.elementor-control-type-url:not(.elementor-control-dynamic) .elementor-control-url-more{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-control-type-url .elementor-control-input-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.elementor-control-type-url .elementor-control-url-more{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-ms-flex-negative:0;flex-shrink:0;border:1px solid #d5dadf;border-left:none;cursor:pointer}.elementor-control-type-url .elementor-control-url-more i{font-size:12px}.elementor-control-type-url .elementor-control-url-more-options{display:none;padding-top:10px}.elementor-control-type-url .elementor-control-url-more-options .elementor-control-field-description{margin-top:10px}.elementor-control-type-url .elementor-control-url-option{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-control-type-url .elementor-control-url-option:not(:last-child){padding-bottom:10px}.elementor-control-type-url .elementor-control-url-option input,.elementor-control-type-url .elementor-control-url-option label{cursor:pointer}.elementor-control-type-url .elementor-control-url-option-input{padding:0;-webkit-border-radius:2px;border-radius:2px;margin:0 5px 0 0;-webkit-appearance:none;-moz-appearance:none;outline:none;content:none;height:15px;width:15px;border:1px solid #d5dadf;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-control-type-url .elementor-control-url-option-input:checked{background:#71d7f7;border:none}.elementor-control-type-url .elementor-control-url-option-input:checked:before{display:block;content:"";width:4px;height:7px;border:solid #fff;border-width:0 2px 2px 0;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.elementor-control-type-url .elementor-control-url-option label{font-size:12px}.elementor-control-type-url .elementor-control-url-external-hide .elementor-control-url-more{display:none}.elementor-control-type-url .elementor-control-url-external-show .elementor-dynamic-cover,.elementor-control-type-url .elementor-control-url-external-show .elementor-input{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-url .elementor-control-url-autocomplete-spinner{display:none;position:absolute;top:5px;right:0;width:10px;height:10px;font-size:10px;color:#d4d4d4}.elementor-control-type-url .elementor-control-url__custom-attributes{margin-top:5px}.elementor-control-type-url .elementor-control-url__custom-attributes label{font-size:12px}.elementor-control-type-url .elementor-control-url__custom-attributes input{width:100%;margin-top:10px}.elementor-control-type-url .elementor-input{direction:ltr}.elementor-control-type-url .elementor-input:not(:focus)+.elementor-control-url-more{border-color:#d5dadf}.elementor-control-type-url .elementor-input:focus~div{border-color:#a4afb7}.elementor-control-type-url .elementor-control-dynamic-switcher{border-left:none;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-autocomplete-menu{position:absolute;background:#fff;color:#495157;border:1px solid #a4afb7;margin:0;list-style:none;padding:4px 0;height:auto;width:100%;min-width:260px;max-width:300px;max-height:200px;overflow-y:auto;-webkit-border-radius:3px;border-radius:3px;-webkit-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;transition:all .3s ease-in-out;cursor:default;z-index:1}.elementor-autocomplete-menu .ui-menu-item{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-item-align:baseline;align-self:baseline;padding:5px 8px;font-size:12px;width:100%;line-height:1.2;cursor:pointer}.elementor-autocomplete-menu .ui-menu-item.ui-state-active,.elementor-autocomplete-menu .ui-menu-item.ui-state-focus,.elementor-autocomplete-menu .ui-menu-item.ui-state-hover{background:#e6e9ec}.elementor-autocomplete-menu .elementor-autocomplete-item-info{font-size:10px;padding-top:2px}.elementor-control-type-wp_widget .widget-inside{display:block}.elementor-control-type-wp_widget .quicktags-toolbar input{width:auto}.elementor-control-type-wysiwyg *{-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-control-type-wysiwyg .wp-editor-container{border:1px solid #e6e9ec}.elementor-control-type-wysiwyg .wp-editor-tabs{border:1px solid #d5dadf;border-bottom:none;-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0}.elementor-control-type-wysiwyg #insert-media-button{height:auto;line-height:24px;font-size:10px;color:#6d7882;border-color:#d5dadf;background-color:#e6e9ec;min-height:0}.elementor-control-type-wysiwyg .ed_button{height:22px;width:auto}.elementor-control-type-wysiwyg .wp-media-buttons-icon{height:14px;margin:0}.elementor-control-type-wysiwyg .wp-media-buttons-icon:before{font-size:14px}.elementor-control-type-wysiwyg .wp-switch-editor{position:static;border:none;margin:0;color:#6d7882;font-size:10px;padding:3px 9px 4px}.elementor-control-type-wysiwyg .switch-html{border:solid #d5dadf;border-width:0 1px}.elementor-control-type-wysiwyg .html-active .switch-tmce{background-color:transparent}.elementor-control-type-wysiwyg .html-active .switch-html,.elementor-control-type-wysiwyg .tmce-active .switch-tmce{background-color:#e6e9ec}.elementor-control-type-wysiwyg .tmce-active .switch-html{background-color:transparent}.elementor-control-type-wysiwyg .mce-toolbar-grp,.elementor-control-type-wysiwyg .quicktags-toolbar{background-color:#e6e9ec}.elementor-control-type-wysiwyg .mce-toolbar-grp>div{padding:0 3px}.elementor-control-type-wysiwyg .elementor-wp-editor{-webkit-box-sizing:border-box;box-sizing:border-box}.elementor-control-type-wysiwyg .mce-ico{color:#6d7882;font-size:16px}.elementor-control-type-wysiwyg .mce-btn{margin-right:0;margin-left:0}.elementor-control-type-wysiwyg .mce-btn.mce-active,.elementor-control-type-wysiwyg .mce-btn:active,.elementor-control-type-wysiwyg .mce-btn:hover{border-color:#d5dadf}.elementor-control-type-wysiwyg .mce-path{padding:5px 10px}.elementor-control-type-wysiwyg .mce-path-item{font-size:12px;color:#6d7882}.elementor-control-type-wysiwyg .elementor-control-dynamic-switcher{border:none}.elementor-control-type-text .elementor-control-dynamic-switcher{border-left-width:0;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-control-type-text.elementor-control-dynamic input{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}#elementor-mode-switcher{position:absolute;left:100%;top:50%;width:15px;height:50px;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);background-color:#e6e9ec;font-size:15px;-webkit-box-shadow:3px 1px 5px rgba(0,0,0,.1);box-shadow:3px 1px 5px rgba(0,0,0,.1);cursor:pointer}#elementor-mode-switcher:hover{background-color:#93003c;color:#fff}#elementor-mode-switcher-inner,#elementor-mode-switcher-preview{width:100%;height:100%;position:absolute;top:0;left:0}#elementor-mode-switcher-preview{cursor:pointer}#elementor-mode-switcher-preview .eicon{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}#elementor-mode-switcher-preview-input{display:none}:root{--e-is-device-mode:0}.e-is-device-mode{--e-is-device-mode:1}#elementor-responsive-bar{position:-webkit-sticky;position:sticky;height:calc(40px * var(--e-is-device-mode));-ms-flex-item-align:stretch;align-self:stretch;-ms-flex-negative:0;flex-shrink:0;-webkit-transition:height .2s ease-in-out,opacity .1s;-o-transition:height .2s ease-in-out,opacity .1s;transition:height .2s ease-in-out,opacity .1s;left:0;top:0;z-index:100;opacity:var(--e-is-device-mode);-webkit-box-shadow:0 0 10px 2px rgba(0,0,0,.33),0 0 2px 1px rgba(0,0,0,.25),0 0 6px -3px hsla(0,0%,100%,.5);box-shadow:0 0 10px 2px rgba(0,0,0,.33),0 0 2px 1px rgba(0,0,0,.25),0 0 6px -3px hsla(0,0%,100%,.5)}#elementor-responsive-bar:before{content:"";position:absolute;left:0;top:0;width:100%;height:100%;z-index:-1;-webkit-transform:scaleX(var(--e-preview-scale,1));-ms-transform:scaleX(var(--e-preview-scale,1));transform:scaleX(var(--e-preview-scale,1))}.e-responsive-bar-switcher__option{cursor:pointer;text-align:center;width:22px;height:22px;margin:0 4px;line-height:22px;-webkit-border-radius:3px;border-radius:3px;font-size:16px;-webkit-transition:background-color .3s ease-out;-o-transition:background-color .3s ease-out;transition:background-color .3s ease-out}.e-responsive-bar-switcher__option:hover,.e-responsive-bar-switcher__option[aria-selected=true]{color:#c2cbd2;background-color:hsla(0,0%,100%,.1)}.e-responsive-bar-switcher__option input{display:none}.e-responsive-bar-switcher__option input:checked+i{color:#71d7f7}.e-responsive-bar-switcher__option:not(:last-child){-webkit-margin-end:6px;margin-inline-end:6px}.e-responsive-bar__button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;cursor:pointer;color:inherit}.e-responsive-bar__button:focus:not(:focus-visible){outline:none}.e-responsive-bar__button:hover{color:#c2cbd2;background-color:hsla(0,0%,100%,.1)}.e-responsive-bar--pipe{position:relative}.e-responsive-bar--pipe:before{content:"";display:block;height:20px;width:1px;background-color:#6d7882;position:absolute;right:-5px;top:calc(50% - 10px)}.e-responsive-bar__input-size{background-color:transparent;color:#a4afb7;border:1px solid #6d7882!important;padding:0 3px;width:60px;font-size:12px;line-height:16px;height:18px;margin:auto 8px auto 4px}.e-responsive-bar__input-size-separator{color:#6d7882}#e-responsive-bar{width:100%;margin-top:calc(-40px + (40px * var(--e-is-device-mode)));z-index:1;-webkit-transition:margin-top .2s ease-in-out;-o-transition:margin-top .2s ease-in-out;transition:margin-top .2s ease-in-out;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;color:#a4afb7}#e-responsive-bar,#e-responsive-bar-scale,#e-responsive-bar-switcher,#e-responsive-bar__center,#e-responsive-bar__end{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background-color:#495157}#e-responsive-bar-scale,#e-responsive-bar-switcher,#e-responsive-bar__center,#e-responsive-bar__end{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;font-size:13px;padding:2px 0}@media (min-width:1400px){#e-responsive-bar__center{margin-left:50%;-webkit-transform:translate(-50%);-ms-transform:translate(-50%);transform:translate(-50%)}}#e-responsive-bar__close-button,#e-responsive-bar__settings-button{width:22px;height:22px;-webkit-border-radius:3px;border-radius:3px;margin:7px 5px;font-size:16px}#e-responsive-bar__size-inputs-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-margin-end:8px;margin-inline-end:8px;color:#6d7882}#e-responsive-bar-scale,#e-responsive-bar-switcher{padding:0 20px}#e-responsive-bar-scale__value-wrapper{margin:0 14px;min-width:32px;text-align:center}#e-responsive-bar-scale__minus,#e-responsive-bar-scale__plus,#e-responsive-bar-scale__reset{cursor:pointer;width:20px;height:20px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}#e-responsive-bar-scale__minus:before{content:"";display:block;width:13px;height:2px;background:#a4afb7;-webkit-border-radius:3px;border-radius:3px}#e-responsive-bar-scale__reset{margin:0 8px}.elementor-revision-item__wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;border:1px solid #d5dadf;padding:10px 15px;margin-bottom:10px;font-size:11px;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.elementor-revision-item__wrapper.current{font-weight:700}.elementor-revision-item__wrapper .elementor-revision-item__tools-current{color:#71d7f7}.elementor-revision-item:hover:not(.elementor-revision-current-preview){background-color:rgba(230,233,236,.3)}.elementor-revision-item-loading .elementor-revision-item__tools-current,.elementor-revision-item:not(.elementor-revision-item-loading) .elementor-revision-item__tools-spinner{display:none}.elementor-revision-item__gravatar{-webkit-border-radius:50%;border-radius:50%;overflow:hidden}.elementor-revision-item__gravatar img{display:block}.elementor-revision-item__details{padding-left:15px;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;cursor:pointer}.elementor-revision-meta{padding-top:5px;font-size:10px;font-weight:700}.elementor-revision-current-preview{background-color:#e6e9ec}#elementor-restore-autosave-dialog.dialog-widget{background-color:rgba(0,0,0,.3)}#elementor-panel-revisions-loading{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}#elementor-panel-revisions-loading .eicon-loading{font-size:50px;color:#a4afb7}.elementor-history-item{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;border:1px solid #d5dadf;padding:10px 15px;margin-bottom:10px;font-size:11px;line-height:1.4;cursor:pointer;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.elementor-history-item:hover{background-color:rgba(230,233,236,.3)}.elementor-history-item:hover .elementor-history-item__icon .eicon:before{content:"\e924"}.elementor-history-item-applied{color:#a4afb7}.elementor-history-item-current{background:#e6e9ec;cursor:default}.elementor-history-item-current .elementor-history-item__icon .eicon:before,.elementor-history-item-current:hover .elementor-history-item__icon .eicon:before{content:"\e90e"}.elementor-history-item__details{width:95%}.elementor-history-item__title{font-weight:700}.elementor-history-item__action,.elementor-history-item__subtitle{font-weight:lighter}.elementor-history-item__action{font-style:italic;text-decoration:underline}.elementor-history-item .__icon{float:right}.elementor-history-revisions-message{font-size:11px;text-align:center;padding-top:5px}#elementor-panel-history{padding:20px 20px 15px}#elementor-panel-history.elementor-empty .elementor-history-revisions-message{padding-top:20px}#elementor-panel-history:not(.elementor-empty){background-color:#fff;margin-top:10px}#elementor-panel-history-no-items,#elementor-panel-revisions-no-revisions{text-align:center}#elementor-panel-history-no-items .elementor-nerd-box-icon,#elementor-panel-revisions-no-revisions .elementor-nerd-box-icon{margin-top:20px}.elementor-panel #elementor-panel-header #elementor-panel-header-kit-back,.elementor-panel #elementor-panel-header #elementor-panel-header-kit-close{display:none}.elementor-editor-kit .elementor-panel #elementor-panel-header{background-color:#4ab7f4}.elementor-editor-kit .elementor-panel #elementor-panel-header #elementor-panel-header-kit-back,.elementor-editor-kit .elementor-panel #elementor-panel-header #elementor-panel-header-kit-close{display:table-cell}body:not(.e-routes-has-history) #elementor-panel-header-kit-back{pointer-events:none;opacity:.4}body:not(.e-routes-has-history) #elementor-panel-header-kit-back:hover .elementor-icon{cursor:inherit;color:inherit}.elementor-editor-kit .elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab.elementor-active{border-bottom-color:#4ab7f4}.elementor-editor-kit .elementor-panel #elementor-panel-page-settings .elementor-panel-navigation{display:none}.elementor-editor-kit .elementor-panel #elementor-panel-saver-button-publish.elementor-button.elementor-button-success:not(.elementor-disabled),.elementor-editor-kit .elementor-panel #elementor-panel-saver-button-save-options.elementor-button.elementor-button-success:not(.elementor-disabled){background-color:#4ab7f4}.elementor-editor-kit .elementor-panel #elementor-panel-page-menu{padding:25px 15px 0}.elementor-editor-kit #elementor-panel-footer-navigator,.elementor-editor-kit #elementor-panel-footer-sub-menu-item-save-template,.elementor-editor-kit #elementor-panel-header-add-button,.elementor-editor-kit #elementor-panel-header-menu-button{display:none}.elementor-control-type-global-style-repeater .elementor-repeater-fields{margin-bottom:15px;position:relative}.elementor-control-type-global-style-repeater .elementor-repeater-row-controls{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-control-type-global-style-repeater .elementor-repeater-row-tool{cursor:pointer;color:#d5dadf;padding:5px}.elementor-control-type-global-style-repeater .elementor-control{padding:0}.elementor-control-type-global-style-repeater .elementor-control-title{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-control-type-global-style-repeater .elementor-control-title input{max-width:135px}.elementor-control-type-global-style-repeater .elementor-control-title input:not(:focus){background:none;border:none}.elementor-control-type-global-style-repeater .elementor-control-input-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;min-width:81px}.elementor-control-type-global-style-repeater .elementor-control-input-wrapper:hover .e-global-colors__color-value,.elementor-control-type-global-style-repeater .elementor-control-input-wrapper:not(:hover) .elementor-repeater-tool-remove,.elementor-control-type-global-style-repeater .elementor-control-input-wrapper:not(:hover) .elementor-repeater-tool-remove--disabled{display:none}.elementor-control-type-global-style-repeater .elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{margin-top:0}.elementor-control-type-global-style-repeater .elementor-controls-popover{-ms-flex-item-align:end;align-self:end;margin-top:35px;top:0;width:100%}.elementor-control-type-global-style-repeater .elementor-controls-popover:before{right:5px}.elementor-control-type-global-style-repeater .elementor-controls-popover .elementor-control{padding:0 20px 15px}.elementor-control-type-global-style-repeater .elementor-controls-popover .elementor-control-title{-webkit-box-flex:initial;-ms-flex-positive:initial;flex-grow:0}.elementor-control-type-global-style-repeater .elementor-button-wrapper{text-align:center;border-top:1px solid #e6e9ec;max-width:260px;padding-top:15px}.elementor-control-type-global-style-repeater .elementor-control-popover-toggle-toggle-label,.elementor-control-type-global-style-repeater .pickr{margin-left:5px}.elementor-control-system_colors,.elementor-control-system_typography{padding-bottom:0}.e-global-colors__color-value{color:#d5dadf;font-size:10px;padding:0 5px;text-align:right;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}@-webkit-keyframes load{0%{opacity:.3}50%{opacity:1}to{opacity:.3}}@keyframes load{0%{opacity:.3}50%{opacity:1}to{opacity:.3}}@-webkit-keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@-webkit-keyframes mover{0%{-webkit-transform:translateY(0);transform:translateY(0)}to{-webkit-transform:translateY(-5px);transform:translateY(-5px)}}@keyframes mover{0%{-webkit-transform:translateY(0);transform:translateY(0)}to{-webkit-transform:translateY(-5px);transform:translateY(-5px)}}@-webkit-keyframes slideDown{0%{-webkit-transform:translateY(-30px);transform:translateY(-30px)}to{-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes slideDown{0%{-webkit-transform:translateY(-30px);transform:translateY(-30px)}to{-webkit-transform:translateY(0);transform:translateY(0)}}body{--e-preview-width:calc(100% - var(--e-editor-panel-width, 300px))}body.elementor-navigator-docked{--e-preview-width:calc(100% - var(--e-editor-panel-width, 300px) - var(--e-editor-navigator-width, 0px))}body.elementor-device-desktop #elementor-preview{overflow-y:hidden;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}body:not(.elementor-device-desktop) body{overflow-y:auto}#elementor-preview{overflow:auto;background-color:#333;height:100%;border:0;width:var(--e-preview-width);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:relative}#elementor-preview-responsive-wrapper{-webkit-transform-origin:top center;-ms-transform-origin:top center;transform-origin:top center;padding:20px;-webkit-transform:scale(var(--e-preview-scale,1));-ms-transform:scale(var(--e-preview-scale,1));transform:scale(var(--e-preview-scale,1))}.elementor-device-desktop #elementor-preview-responsive-wrapper{min-width:1025px;width:100%;height:100%;padding:0;position:relative}body.e-is-device-mode:not(.elementor-device-desktop) #elementor-preview-responsive-wrapper{width:var(--e-editor-preview-width);height:var(--e-editor-preview-height);margin:0 Max(calc((100vw - var(--e-editor-panel-width) - var(--e-editor-preview-width)) / 2),20px);-webkit-box-sizing:content-box;box-sizing:content-box;position:relative;max-height:calc(100vh - 80px)}body.e-is-device-mode:not(.elementor-device-desktop) #elementor-preview-responsive-wrapper .ui-resizable-handle{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}#elementor-preview-responsive-wrapper:not(.ui-resizable-resizing){-webkit-transition:.3s ease-in-out;-o-transition:.3s ease-in-out;transition:.3s ease-in-out}#elementor-preview-responsive-wrapper .ui-resizable-handle{top:0}#elementor-preview-responsive-wrapper .ui-resizable-handle.ui-resizable-s{top:auto;bottom:0}#elementor-preview-responsive-wrapper .ui-resizable-n,#elementor-preview-responsive-wrapper .ui-resizable-s{-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;height:20px}#elementor-preview-responsive-wrapper .ui-resizable-n:before,#elementor-preview-responsive-wrapper .ui-resizable-s:before{content:"";display:block;background-color:hsla(0,0%,100%,.2);width:50px;height:4px;-webkit-border-radius:3px;border-radius:3px;-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}#elementor-preview-responsive-wrapper .ui-resizable-n:hover:before,#elementor-preview-responsive-wrapper .ui-resizable-s:hover:before{background-color:hsla(0,0%,100%,.6);width:100px}#elementor-preview-responsive-wrapper .ui-resizable-e,#elementor-preview-responsive-wrapper .ui-resizable-w{-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:20px}#elementor-preview-responsive-wrapper .ui-resizable-e:before,#elementor-preview-responsive-wrapper .ui-resizable-w:before{content:"";display:block;background-color:hsla(0,0%,100%,.2);width:4px;height:50px;-webkit-border-radius:3px;border-radius:3px;-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}#elementor-preview-responsive-wrapper .ui-resizable-e:hover:before,#elementor-preview-responsive-wrapper .ui-resizable-w:hover:before{background-color:hsla(0,0%,100%,.6);height:100px}#elementor-preview-responsive-wrapper.ui-resizable-resizing .ui-resizable-handle:before{background-color:hsla(0,0%,100%,.9)}#elementor-preview-responsive-wrapper .ui-resizable-s{bottom:0}#elementor-preview-responsive-wrapper .ui-resizable-e{right:0}#elementor-preview-responsive-wrapper .ui-resizable-w{left:0}#elementor-preview-iframe{width:100%;height:100%;background-color:#fff;-webkit-box-shadow:0 0 3px rgba(0,0,0,.3),0 0 20px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.3),0 0 20px rgba(0,0,0,.15)}#elementor-template-library-modal a.elementor-template-library-blank-footer-link{font-style:normal;text-decoration:underline;color:#39b54a}#elementor-template-library-modal a.elementor-template-library-blank-footer-link:hover{color:#2d8e3a}#elementor-template-library-modal .dialog-buttons-wrapper{display:none}#elementor-template-library-modal .select2-container{z-index:0}#elementor-template-library-header-menu{text-align:center;color:#6d7882;font-size:13px}.elementor-template-library-menu-item{display:inline-block;padding:17px 0;width:115px;cursor:pointer}.elementor-template-library-menu-item.elementor-active{background-image:-webkit-gradient(linear,left top,left bottom,from(#f1f3f5),to(#fff));background-image:-webkit-linear-gradient(top,#f1f3f5,#fff);background-image:-o-linear-gradient(top,#f1f3f5,#fff);background-image:linear-gradient(180deg,#f1f3f5,#fff);border-bottom:3px solid #93003c}#elementor-template-library-header-actions{display:-webkit-box;display:-ms-flexbox;display:flex}#elementor-template-library-header-actions>div{padding-right:16px}#elementor-template-library-header-preview-insert-wrapper{cursor:default;padding:0 10px}#elementor-template-library-header-preview-insert-wrapper .elementor-button{padding:8px 14px;font-size:11px}#elementor-template-library-header-preview-insert-wrapper .elementor-template-library-template-insert{color:#fff;background-color:#39b54a}#elementor-template-library-header-preview-insert-wrapper .elementor-go-pro{background-color:#93003c;color:#fff}#elementor-template-library-header-preview-back{padding:16.5px 16.5px 15px 0;border-right:1px solid #e6e9ec;cursor:pointer;-webkit-transition:color .5s;-o-transition:color .5s;transition:color .5s}#elementor-template-library-header-preview-back:not(:hover){color:#a4afb7}#elementor-template-library-header-preview-back i{padding-right:10px;font-size:18px}#elementor-template-library-header-preview-back i:before{content:""}#elementor-template-library-templates{padding:0 15px}#elementor-template-library-templates[data-template-source=local] #elementor-template-library-templates-container{-webkit-box-shadow:1px 1px 20px 0 rgba(0,0,0,.03);box-shadow:1px 1px 20px 0 rgba(0,0,0,.03);margin-top:10px;margin-bottom:45px}#elementor-template-library-templates[data-template-source=local] .elementor-template-library-order-input:checked+.elementor-template-library-order-label{color:#6d7882}#elementor-template-library-templates[data-template-source=remote] #elementor-template-library-templates-container{margin:10px -15px 0}#elementor-template-library-templates[data-template-source=remote] .elementor-template-library-order-input:checked+.elementor-template-library-order-label{color:#495157}#elementor-template-library-templates .elementor-template-library-order-input,#elementor-template-library-templates.elementor-templates-filter-active #elementor-template-library-footer-banner,#elementor-template-library-templates[data-template-source=empty] #elementor-template-library-footer-banner,#elementor-template-library-templates[data-template-source=empty] #elementor-template-library-order-toolbar-local{display:none}#elementor-template-library-templates .elementor-template-library-order-input:checked+.elementor-template-library-order-label{padding-right:8px}#elementor-template-library-templates .elementor-template-library-order-input:checked+.elementor-template-library-order-label:after{font-family:eicons;content:"\e8ae";margin-left:3px}#elementor-template-library-templates .elementor-template-library-order-input:checked.elementor-template-library-order-reverse+.elementor-template-library-order-label:after{content:"\e8ad"}#elementor-template-library-templates-container{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}#elementor-template-library-templates-container .elementor-template-library-template-local .elementor-template-library-template-insert{text-transform:none;font-size:12px}#elementor-template-library-toolbar{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}#elementor-template-library-toolbar,.elementor-template-library-filter-toolbar{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}#elementor-template-library-filter-toolbar-remote{font-size:11px}#elementor-template-library-order{display:-webkit-box;display:-ms-flexbox;display:flex;border-right:1px solid #d5dadf}.elementor-template-library-order-label{text-transform:uppercase;padding-right:22px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}label.elementor-template-library-order-label{cursor:pointer}label.elementor-template-library-order-label:hover{color:#556068}#elementor-template-library-filter .select2{text-align:left;width:calc(27px * 5)!important}#elementor-template-library-filter .select2-selection__rendered{text-transform:capitalize}#select2-elementor-template-library-filter-subtype-results .select2-results__option{text-transform:capitalize;text-align:left;padding-left:5px}#elementor-template-library-my-favorites{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;text-align:left;padding-left:20px}#elementor-template-library-filter-my-favorites{display:none}#elementor-template-library-filter-my-favorites:checked+#elementor-template-library-filter-my-favorites-label{color:#495157}#elementor-template-library-filter-my-favorites:checked+#elementor-template-library-filter-my-favorites-label i:after{color:#93003c;content:"\e93f"}#elementor-template-library-filter-my-favorites-label{cursor:pointer;text-transform:uppercase}#elementor-template-library-filter-my-favorites-label:hover{color:#556068}#elementor-template-library-filter-my-favorites-label:hover i:after{color:#93003c}#elementor-template-library-filter-my-favorites-label i{padding-right:5px}#elementor-template-library-filter-my-favorites-label i:after{color:#a4afb7;content:"\e923"}#elementor-template-library-filter-text-wrapper{width:200px;position:relative}#elementor-template-library-filter-text-wrapper i{position:absolute;top:50%;right:0;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}#elementor-template-library-filter-text{border:none;border-bottom:1px solid #d5dadf;-webkit-border-radius:0;border-radius:0;font-size:11px;padding:8px 15px 8px 0;-webkit-transition:border .5s;-o-transition:border .5s;transition:border .5s}#elementor-template-library-filter-text::-webkit-input-placeholder{font-weight:300;text-transform:uppercase}#elementor-template-library-filter-text::-moz-placeholder{font-weight:300;text-transform:uppercase}#elementor-template-library-filter-text::-ms-input-placeholder{font-weight:300;text-transform:uppercase}#elementor-template-library-filter-text::placeholder{font-weight:300;text-transform:uppercase}#elementor-template-library-filter-text:focus{border-color:#c2cbd2}.elementor-template-library-template-remote{margin:15px;padding:8px;background-color:#fff;-webkit-box-shadow:0 1px 20px 0 rgba(0,0,0,.07);box-shadow:0 1px 20px 0 rgba(0,0,0,.07);-webkit-border-radius:3px;border-radius:3px}.elementor-template-library-template-remote:hover .elementor-template-library-template-name{display:none}.elementor-template-library-template-remote:not(:hover) .elementor-template-library-template-preview{opacity:0}.elementor-template-library-template-remote:not(:hover) .elementor-template-library-favorite,.elementor-template-library-template-remote:not(:hover) .elementor-template-library-template-action{display:none}.elementor-template-library-template-remote.elementor-template-library-pro-template .elementor-template-library-template-body:before{content:var(--elementor-template-library-subscription-plan-label);background-color:var(--elementor-template-library-subscription-plan-color);color:#d5dadf;position:absolute;text-transform:uppercase;top:5px;right:5px;padding:2px 4px 0;font-size:9px;-webkit-border-radius:2px;border-radius:2px}.elementor-template-library-template-remote:not(.elementor-template-library-template-page):not(.elementor-template-library-template-lp){position:relative;width:calc(33.333% - 30px);overflow:hidden}.elementor-template-library-template-remote:not(.elementor-template-library-template-page):not(.elementor-template-library-template-lp) img{display:block;width:100%}.elementor-template-library-template-remote:not(.elementor-template-library-template-page):not(.elementor-template-library-template-lp) .elementor-template-library-template-footer{position:absolute;width:100%;bottom:0;left:0;padding:10px;background-color:#fff;-webkit-transition:-webkit-transform .5s;transition:-webkit-transform .5s;-o-transition:transform .5s;transition:transform .5s;transition:transform .5s,-webkit-transform .5s}.elementor-template-library-template-remote:not(.elementor-template-library-template-page):not(.elementor-template-library-template-lp) .elementor-template-library-template-name{display:none}.elementor-template-library-template-remote:not(.elementor-template-library-template-page):not(.elementor-template-library-template-lp):not(:hover) .elementor-template-library-template-footer{-webkit-transform:translateY(100%);-ms-transform:translateY(100%);transform:translateY(100%)}.elementor-template-library-template-remote .elementor-template-library-template-body{position:relative}@media (max-width:1025px){.elementor-template-library-template-remote .elementor-template-library-template-body{height:300px}}.elementor-template-library-template-remote .elementor-template-library-template-screenshot{height:100%;-webkit-background-size:cover;background-size:cover;background-position-x:50%;-webkit-box-shadow:inset 0 -2px 15px -6px rgba(0,0,0,.07);box-shadow:inset 0 -2px 15px -6px rgba(0,0,0,.07)}.elementor-template-library-template-remote .elementor-template-library-template-preview{position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);-webkit-transition:opacity .5s;-o-transition:opacity .5s;transition:opacity .5s;cursor:pointer}.elementor-template-library-template-remote .elementor-template-library-template-preview i{font-size:20px;color:#d5dadf;position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor-template-library-template-remote .elementor-template-library-template-insert{color:#39b54a}.elementor-template-library-template-remote .elementor-go-pro{color:#93003c}.elementor-template-library-template-remote .elementor-template-library-template-footer{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin-top:10px;font-size:11px;line-height:1}.elementor-template-library-template-remote .elementor-template-library-template-name{text-align:left;color:#6d7882;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;padding-right:5px}.elementor-template-library-template-remote .elementor-template-library-template-favorite-input{display:none}.elementor-template-library-template-remote .elementor-template-library-template-favorite-input:checked+.elementor-template-library-template-favorite-label i:before{content:"\e93f";color:#93003c}.elementor-template-library-template-remote .elementor-template-library-template-favorite-label{cursor:pointer}.elementor-template-library-template-remote .elementor-template-library-template-favorite-label:hover i{color:#93003c}@media (max-width:1439px){.elementor-template-library-template-lp,.elementor-template-library-template-page{width:calc(25% - 30px)}}@media (min-width:1440px){.elementor-template-library-template-lp,.elementor-template-library-template-page{width:calc(20% - 30px)}}@media (max-width:1025px){.elementor-template-library-template-lp,.elementor-template-library-template-page{width:calc(33.333% - 30px)}}.elementor-template-library-template-lp .elementor-template-library-template-body,.elementor-template-library-template-page .elementor-template-library-template-body{height:200px}#elementor-template-library-order-toolbar-local,.elementor-template-library-template-local{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:0 25px;text-align:left}#elementor-template-library-order-toolbar-local{margin-top:30px}#elementor-template-library-order-toolbar-local .elementor-template-library-order-label{line-height:1;font-size:10px;font-weight:500}#elementor-template-library-order-toolbar-local .elementor-template-library-order-label:not(:hover){color:#a4afb7}.elementor-template-library-template-local{height:50px;width:100%;margin-top:1px;background-color:#fff;-webkit-transition:background-color .3s linear;-o-transition:background-color .3s linear;transition:background-color .3s linear}.elementor-template-library-template-local:hover{background-color:#fafbfb}.elementor-template-library-template-local:not(:hover) .elementor-template-library-template-insert{background:none;color:#a4afb7}.elementor-template-library-template-local:first-child{-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0}.elementor-template-library-template-local:last-child{-webkit-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px}.elementor-template-library-template-local .elementor-template-library-template-name{font-weight:500}.elementor-template-library-template-local .elementor-template-library-template-meta,.elementor-template-library-template-local .elementor-template-library-template-name{padding-right:20px}.elementor-template-library-template-local .elementor-template-library-template-meta{color:#a4afb7}.elementor-template-library-template-local .elementor-template-library-template-action,.elementor-template-library-template-local .elementor-template-library-template-meta,.elementor-template-library-template-local .elementor-template-library-template-name,.elementor-template-library-template-local .elementor-template-library-template-preview{white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}.elementor-template-library-template-local .elementor-template-library-template-controls{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-template-library-template-local .elementor-template-library-template-controls,.elementor-template-library-template-local .elementor-template-library-template-controls a{color:#a4afb7}.elementor-template-library-template-local .elementor-template-library-template-controls>div{cursor:pointer;-webkit-transition:color .5s;-o-transition:color .5s;transition:color .5s}.elementor-template-library-template-local .elementor-template-library-template-insert i{margin-right:3px}.elementor-template-library-template-local .elementor-template-library-template-control-title{margin-left:6px}.elementor-template-library-template-local .elementor-template-library-template-more:hover,.elementor-template-library-template-local .elementor-template-library-template-more a:hover{color:#556068}.elementor-template-library-template-local .elementor-template-library-template-more .elementor-template-library-template-delete:hover{color:#d72b3f}.elementor-template-library-template-local .elementor-template-library-template-action{padding:8px 18px;margin:0 5%}.elementor-template-library-template-local .elementor-template-library-template-more{display:none;position:absolute;background-color:#fff;padding:3px 20px;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:1px 3px 11px rgba(0,0,0,.3);box-shadow:1px 3px 11px rgba(0,0,0,.3);top:100%;right:0;-webkit-transform:translateX(65%) translateY(-7px);-ms-transform:translateX(65%) translateY(-7px);transform:translateX(65%) translateY(-7px);z-index:1}.elementor-template-library-template-local .elementor-template-library-template-more:before{content:"";position:absolute;border:solid transparent;border-bottom:solid #fff;border-width:8px 4px;-webkit-transform:translateY(-100%);-ms-transform:translateY(-100%);transform:translateY(-100%)}.elementor-template-library-template-local .elementor-template-library-template-more>div{margin:10px 0;font-size:11px}.elementor-template-library-template-local .elementor-template-library-template-more-toggle{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;text-align:right}.elementor-template-library-template-local .elementor-template-library-template-more-toggle i{font-size:16px}#elementor-template-library-preview{height:100%;overflow:hidden}#elementor-template-library-preview iframe{height:150%;-webkit-transform:scale(.666) translateX(-25%) translateY(-25%);-ms-transform:scale(.666) translateX(-25%) translateY(-25%);transform:scale(.666) translateX(-25%) translateY(-25%)}@media (max-width:1439px){#elementor-template-library-preview iframe{width:1440px}}@media (min-width:1440px){#elementor-template-library-preview iframe{width:1710px}}.elementor-template-library-blank-icon{font-size:65px;margin-top:45px;color:#c2cbd2;line-height:1}.elementor-template-library-blank-icon img{width:70px}.elementor-template-library-blank-icon .elementor-template-library-no-results{width:200px}.elementor-template-library-blank-title{font-size:30px;margin-top:40px}@media (max-width:1439px){.elementor-template-library-blank-title{font-size:25px}}.elementor-template-library-blank-message{font-size:18px;color:#a4afb7;margin-top:15px;font-weight:300}@media (max-width:1439px){.elementor-template-library-blank-message{font-size:16px;margin-top:10px}}#elementor-template-library-save-template-form{margin-top:40px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}#elementor-template-library-save-template-form>*{height:55px;font-size:16px}#elementor-template-library-save-template-name{width:500px;background-color:#fff;font-weight:300;color:#a4afb7;padding-left:25px;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px;border:none}#elementor-template-library-save-template-submit{width:150px;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}#elementor-template-library-save-template-submit:hover{-webkit-box-shadow:none;box-shadow:none}#elementor-template-library-import-form{width:95%;background-color:hsla(0,0%,100%,.5);padding:60px;border:2px dashed #d5dadf;margin:35px auto;-webkit-transition:background-color .5s;-o-transition:background-color .5s;transition:background-color .5s}#elementor-template-library-import-form:hover{background-color:hsla(0,0%,100%,.9)}#elementor-template-library-import-form-or{margin-top:15px;font-size:18px}#elementor-template-library-import-form-label{margin-top:20px;padding:15px 35px;display:inline-block}#elementor-template-library-import-form-input{display:none}#elementor-template-library-import-form.elementor-drag-over{border:3px dashed #71d7f7}#elementor-template-library-import .elementor-template-library-blank-icon{margin-top:0}#elementor-template-library-import .elementor-template-library-blank-message{margin-top:20px}.e-route-library-connect #elementor-template-library-modal .dialog-message{max-height:95vh;padding:100px 0 0;min-height:550px}#elementor-template-library-connect-logo{font-size:20px}#elementor-template-library-connect__button{display:inline-block;position:relative;z-index:1;margin-top:25px;padding:12px 24px;font-size:14px}#elementor-template-library-connect__background-image-left-1{right:22.4%;bottom:-29%;-webkit-animation:fadeIn 1.5s,slideDown 1.5s,mover 3.5s 1.5s infinite alternate;animation:fadeIn 1.5s,slideDown 1.5s,mover 3.5s 1.5s infinite alternate}#elementor-template-library-connect__background-image-left-2{right:46.25%;bottom:-15.5%;-webkit-animation:fadeIn 3s,slideDown 3s,mover 2s 3s infinite alternate;animation:fadeIn 3s,slideDown 3s,mover 2s 3s infinite alternate}#elementor-template-library-connect__background-image-right-1{left:37%;bottom:-41%;-webkit-animation:fadeIn 2.5s,slideDown 2.5s,mover 2s 2.5s infinite alternate;animation:fadeIn 2.5s,slideDown 2.5s,mover 2s 2.5s infinite alternate}#elementor-template-library-connect__background-image-right-2{left:48%;bottom:-12.5%;-webkit-animation:fadeIn 1.5s,slideDown 1.5s,mover 1.5s 1.5s infinite alternate;animation:fadeIn 1.5s,slideDown 1.5s,mover 1.5s 1.5s infinite alternate}.elementor-template-library-connect__background-image{position:absolute}.elementor-template-library-blank-footer{position:absolute;bottom:70px;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);color:#a4afb7;font-style:italic}@media (max-height:700px){.elementor-template-library-blank-footer{display:none}}#elementor-template-library-footer-banner{padding-bottom:45px}#elementor-template-library-footer-banner i{color:#c2cbd2;font-size:56px;margin-top:40px}#elementor-template-library-footer-banner .elementor-nerd-box-icon{margin-top:70px}#elementor-template-library-footer-banner .elementor-excerpt{color:#a4afb7;font-size:15px;font-weight:500;margin-top:20px}#elementor-template-library-templates-empty{width:100%;margin-top:40px}#elementor-template-library-error-dialog .dialog-message{text-align:start}#elementor-template-library-error-info{margin-top:10px}@media (max-width:1439px){.elementor-template-library-local-column-1{width:33%}.elementor-template-library-local-column-2{width:10%}.elementor-template-library-local-column-3,.elementor-template-library-local-column-4{width:15%}.elementor-template-library-local-column-5{width:27%}}@media (min-width:1440px){.elementor-template-library-local-column-1{width:25%}.elementor-template-library-local-column-2,.elementor-template-library-local-column-3,.elementor-template-library-local-column-4{width:17%}.elementor-template-library-local-column-5{width:24%}}@media (max-width:1024px){.elementor-template-library-local-column-3{display:none}.elementor-template-library-local-column-5{width:41%}}.elementor-tags-list{display:none;position:absolute;width:260px;max-height:300px;overflow:auto;padding-bottom:5px;background-color:#fff;border:1px solid #a4afb7;-webkit-border-radius:3px;border-radius:3px;z-index:10000}.elementor-tags-list__group-title{color:#495157;font-weight:700;font-size:12px;padding:10px 15px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-tags-list__group-title .eicon-info-circle{padding-right:5px;color:#71d7f7;font-size:14px}.elementor-tags-list__item{font-size:10px;padding:6px 15px;cursor:pointer}.elementor-tags-list__item:before{content:">";font-size:8px;padding-right:5px}.elementor-tags-list__item:hover{background-color:#e6e9ec}.elementor-tags-list__teaser{border-top:2px solid #d5dadf;padding-top:4px;margin-top:4px}.elementor-tags-list__teaser-title{color:#6d7882}.elementor-tags-list__teaser-text{padding:2px 15px 8px;line-height:1.5;font-size:12px}.elementor-tags-list__teaser-link{color:#93003c;text-decoration:underline;font-style:italic;font-weight:700}.elementor-dynamic-cover{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%;height:27px;-webkit-box-sizing:border-box;box-sizing:border-box}.elementor-dynamic-cover__title{padding:0 8px;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}.elementor-dynamic-cover__remove,.elementor-dynamic-cover__settings{color:#c2cbd2;cursor:pointer;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.elementor-dynamic-cover__remove:hover,.elementor-dynamic-cover__settings:hover{color:#a4afb7}.elementor-control-type-wysiwyg .elementor-dynamic-cover{margin-top:10px}.elementor-tag-settings-popup{position:absolute;width:260px;background-color:#e6e9ec;-webkit-box-shadow:1px 1px 10px rgba(0,0,0,.3);box-shadow:1px 1px 10px rgba(0,0,0,.3);z-index:1}.elementor-tag-settings-popup:before{content:"";position:absolute;top:-20px;left:5px;border:10px solid transparent;border-bottom-color:#fff}.elementor-tag-settings-popup .elementor-control-type-section:first-child{margin:0}.elementor-tag-controls-stack-empty{background-color:#fff;padding:10px;font-size:13px;text-align:center}.elementor-control-dynamic-switcher{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-ms-flex-negative:0;flex-shrink:0;height:27px;cursor:pointer;border:1px solid #d5dadf;-webkit-border-radius:3px;border-radius:3px;background:#fff}.elementor-control-dynamic-switcher.e-control-tool{height:20px;border:0}.elementor-control-dynamic-switcher-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-control-dynamic-switcher .eicon-database{font-size:12px}.elementor-control-dynamic-value .e-global__popover-toggle,.elementor-control-dynamic-value .elementor-control-dynamic-switcher,.elementor-control-dynamic-value .elementor-control-tag-area{display:none}#elementor-toast{position:absolute;width:280px;padding:20px;-webkit-border-radius:5px;border-radius:5px;color:#d5dadf;background-color:rgba(0,0,0,.8);z-index:10000}#elementor-toast .dialog-message{font-size:13px}#elementor-toast .dialog-buttons-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;margin-top:15px}#elementor-toast .dialog-button{color:#fcb92c;margin:0 5px;text-transform:uppercase;cursor:pointer}#elementor-toast .dialog-button:last-child{margin-right:0}.elementor-context-menu{position:absolute;width:200px;background-color:#fff;border:1px solid #e6e9ec;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 2px 10px 0 rgba(0,0,0,.09);box-shadow:0 2px 10px 0 rgba(0,0,0,.09);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:101}.elementor-context-menu-list__group{padding:5px 0}.elementor-context-menu-list__group:not(:last-child){border-bottom:1px solid #e6e9ec}.elementor-context-menu-list__item{padding:5px 20px 5px 10px;display:-webkit-box;display:-ms-flexbox;display:flex;cursor:pointer}.elementor-context-menu-list__item--disabled{cursor:default;color:#d5dadf}.elementor-context-menu-list__item:not(.elementor-context-menu-list__item--disabled):hover{background-color:#71d7f7}.elementor-context-menu-list__item:not(.elementor-context-menu-list__item--disabled):hover>*{color:#fff}.elementor-context-menu-list__item__icon{width:20px;color:#c2cbd2}.elementor-context-menu-list__item__title{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}.elementor-context-menu-list__item__shortcut{color:#d5dadf}.elementor-context-menu-list__item.elementor-context-menu-list__item-delete:not(.elementor-context-menu-list__item--disabled):hover{background-color:#d72b3f}.elementor-context-menu .eicon-pro-icon{color:#fcb92c}#elementor-hotkeys{text-align:left}#elementor-hotkeys__content{display:-webkit-box;display:-ms-flexbox;display:flex;width:100%;overflow:hidden;margin-bottom:30px}@media (max-width:1024px){#elementor-hotkeys__content{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}#elementor-hotkeys__actions .elementor-hotkeys__list{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}@media (max-width:1024px){#elementor-hotkeys__actions .elementor-hotkeys__list{-webkit-border-radius:3px;border-radius:3px}}@media (min-width:1025px){#elementor-hotkeys__actions .elementor-hotkeys__header,#elementor-hotkeys__actions .elementor-hotkeys__list{padding-right:25px}}@media (min-width:1440px){#elementor-hotkeys__actions .elementor-hotkeys__header,#elementor-hotkeys__actions .elementor-hotkeys__list{padding-right:50px}}#elementor-hotkeys__navigation .elementor-hotkeys__list{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}@media (max-width:1024px){#elementor-hotkeys__navigation .elementor-hotkeys__list{-webkit-border-radius:3px;border-radius:3px}}@media (min-width:1025px){#elementor-hotkeys__navigation .elementor-hotkeys__header{padding-left:25px}}@media (min-width:1440px){#elementor-hotkeys__navigation .elementor-hotkeys__header{padding-left:50px}}@media (min-width:1025px){#elementor-hotkeys__navigation .elementor-hotkeys__list{padding-left:15px}}@media (min-width:1440px){#elementor-hotkeys__navigation .elementor-hotkeys__list{padding-left:40px}}.elementor-hotkeys__col{width:50%}@media (max-width:1024px){.elementor-hotkeys__col{width:100%}}.elementor-hotkeys__header,.elementor-hotkeys__list{width:100%}.elementor-hotkeys__header{padding:10px 30px;font-weight:500}@media (max-width:479px){.elementor-hotkeys__header{padding-right:10px;padding-left:10px}}.elementor-hotkeys__list{background-color:#fff;height:calc(100% - 42px);padding:10px 20px}@media (max-width:479px){.elementor-hotkeys__list{padding:0}}@media (max-width:1024px){.elementor-hotkeys__list{margin-bottom:30px;height:auto}}.elementor-hotkeys__item{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:20px 10px;border-bottom:1px solid #eceeef}.elementor-hotkeys__item:last-child{margin-bottom:30px}@media (max-width:479px){.elementor-hotkeys__item:last-child{margin-bottom:0}}.elementor-hotkeys__item--label{font-size:13px;font-weight:400;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-hotkeys__item--shortcut{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-hotkeys__item--shortcut span{position:relative;background-color:#eceeef;padding:5px 12px;margin-right:27px;-webkit-border-radius:3px;border-radius:3px}@media (max-width:479px){.elementor-hotkeys__item--shortcut span{padding:4px 9px;margin-right:23px}}.elementor-hotkeys__item--shortcut span:after{content:"+";position:absolute;right:-18px;width:9px;text-align:center}@media (max-width:479px){.elementor-hotkeys__item--shortcut span:after{right:-16px}}.elementor-hotkeys__item--shortcut span:last-child{margin-right:0}.elementor-hotkeys__item--shortcut span:last-child:after{display:none}.ui-resizable-n{top:-5px}.ui-resizable-e{right:-5px}.ui-resizable-s{bottom:-5px}.ui-resizable-w{left:-5px}.ui-resizable-ne{top:-5px;right:-5px}.ui-resizable-nw{top:-5px;left:-5px}.ui-resizable-se{bottom:-5px;right:-5px}.ui-resizable-sw{bottom:-5px;left:-5px}.ui-resizable-n,.ui-resizable-s{left:0;height:10px;width:100%;cursor:ns-resize}.ui-resizable-e,.ui-resizable-w{top:0;height:100%;width:10px;cursor:ew-resize}.ui-resizable-ne,.ui-resizable-nw,.ui-resizable-se,.ui-resizable-sw{height:15px;width:15px}.ui-resizable-nw,.ui-resizable-se{cursor:nwse-resize}.ui-resizable-ne,.ui-resizable-sw{cursor:nesw-resize}.ui-resizable-handle{position:absolute}.ui-resizable-resizing{pointer-events:none}body{--e-editor-navigator-width:240px}#elementor-navigator{position:fixed;top:100px;width:var(--e-editor-navigator-width);height:50vh;right:30px;background-color:#fff;-webkit-box-shadow:0 2px 20px 0 rgba(0,0,0,.1);box-shadow:0 2px 20px 0 rgba(0,0,0,.1);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;overflow:hidden;z-index:100;display:none}body.elementor-navigator-docked #elementor-navigator{top:0;right:0;height:100%}body:not(.elementor-navigator-docked) #elementor-navigator{-webkit-border-radius:5px;border-radius:5px}#elementor-navigator__inner{height:100%;background-color:#e6e9ec}#elementor-navigator__header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding:12px 10px;background-color:#fff;border-bottom:1px solid #e6e9ec;cursor:move}#elementor-navigator__close,#elementor-navigator__toggle-all{-webkit-transition:color .5s;-o-transition:color .5s;transition:color .5s;cursor:pointer}#elementor-navigator__close:not(:hover),#elementor-navigator__toggle-all:not(:hover){color:#a4afb7}#elementor-navigator__toggle-all{font-size:13px}#elementor-navigator__close{font-size:11px}#elementor-navigator__elements{height:calc(100% - 49px);overflow:auto;position:relative}.elementor-navigator-docked #elementor-navigator__elements{height:calc(100% - 35px)}#elementor-navigator__elements .elementor-nerd-box{padding:25px}#elementor-navigator__footer{position:absolute;width:100%;left:0;bottom:0;text-align:center;background-color:#fff;border-top:1px solid #e6e9ec;color:#a4afb7}.elementor-navigator-docked #elementor-navigator__footer{display:none}.elementor-navigator__item{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;height:30px;font-size:11px;border-bottom:1px solid #e6e9ec;cursor:pointer;-webkit-transition:padding .5s linear;-o-transition:padding .5s linear;transition:padding .5s linear;overflow:hidden}.elementor-navigator__item:not(.elementor-active) .elementor-navigator__element__list-toggle i{-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg)}.elementor-navigator__item>*{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-navigator__item+.elementor-navigator__elements{display:none}.elementor-navigator__elements .elementor-empty-view{padding:10px;border-bottom:1px solid #e6e9ec}.elementor-navigator__elements .elementor-empty-view__title{margin-left:23px;color:#c2cbd2;font-size:10px;font-style:italic}.elementor-navigator__elements .ui-sortable-helper{background-color:#fff;-webkit-box-shadow:1px 2px 5px 0 rgba(0,0,0,.1);box-shadow:1px 2px 5px 0 rgba(0,0,0,.1);-webkit-transform:rotate(4deg);-ms-transform:rotate(4deg);transform:rotate(4deg);border:1px solid #e6e9ec;pointer-events:none}.elementor-navigator__elements .ui-sortable-placeholder{background-color:#f1f3f5}.elementor-navigator__element.elementor-dragging-on-child>.elementor-navigator__elements>.elementor-empty-view{border-top:2px solid #71d7f7}.elementor-navigator__element.elementor-dragging-on-child>.elementor-navigator__elements>.elementor-empty-view+.ui-sortable-placeholder,.elementor-navigator__element.elementor-dragging-on-child>.elementor-navigator__elements>.elementor-empty-view .elementor-empty-view__title{display:none}.elementor-navigator__element:not(.elementor-navigator__element--has-children) .elementor-navigator__element__list-toggle{visibility:hidden}.elementor-navigator__element:not(.elementor-navigator__element--hidden)>.elementor-navigator__item .elementor-navigator__element__toggle{color:#71d7f7}.elementor-navigator__element:not(.elementor-navigator__element--hidden)>.elementor-navigator__item:not(:hover) .elementor-navigator__element__toggle{display:none}.elementor-navigator__element:not(.elementor-navigator__element--hidden)>.elementor-navigator__item.elementor-editing{background-color:#71d7f7}.elementor-navigator__element:not(.elementor-navigator__element--hidden)>.elementor-navigator__item.elementor-editing>*{color:#fff}.elementor-navigator__element__list-toggle{margin-right:7px;-webkit-transition:-webkit-transform .3s;transition:-webkit-transform .3s;-o-transition:transform .3s;transition:transform .3s;transition:transform .3s,-webkit-transform .3s;color:#a4afb7}.elementor-navigator__element__element-type{margin-right:8px}.elementor-navigator__element__title{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;overflow:hidden}.elementor-navigator__element__title__text{white-space:nowrap;-webkit-user-select:text}.elementor-navigator__element__title__text[contenteditable=true]{outline:none;color:#6d7882;background-color:#fff;padding:2px 3px;-webkit-box-shadow:0 0 4px rgba(0,0,0,.2);box-shadow:0 0 4px rgba(0,0,0,.2)}.elementor-navigator__element__title__text:not([contenteditable=true]){white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}.elementor-navigator__element__toggle{position:absolute;right:15px;height:100%;z-index:0;font-size:13px}.elementor-navigator__element__indicators{position:relative;-webkit-transition:-webkit-transform .5s;transition:-webkit-transform .5s;-o-transition:transform .5s;transition:transform .5s;transition:transform .5s,-webkit-transform .5s;padding-left:5px;z-index:91}.elementor-navigator__element__indicators:not(:hover){-webkit-transform:translateX(calc(100% - 8px));-ms-transform:translateX(calc(100% - 8px));transform:translateX(calc(100% - 8px))}.elementor-navigator__element__indicator{height:100%;width:31px;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;color:#6d7882;background-color:#fff;border-left:1px solid #e6e9ec}.elementor-navigator__element__indicator:first-child{border-left:3px solid #71d7f7}.elementor-editing .elementor-navigator__element__indicator:first-child{border-color:#41c9f4}.elementor-navigator__element__indicator:hover{color:#495157}.elementor-navigator__element--hidden .elementor-navigator__element__title,.elementor-navigator__element--hidden .elementor-navigator__element__toggle{opacity:.5}.elementor-navigator__element-column{background-color:#fafbfb}.elementor-navigator__element-column>.elementor-navigator__item .elementor-navigator__element__element-type{color:#a4afb7}.elementor-navigator__element-section{background-color:#fff}#elementor-notice-bar{position:absolute;width:100%;bottom:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:40px;color:#fff;background-color:#6d7882;padding:0 50px}#elementor-notice-bar__message{padding-left:15px;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}#elementor-notice-bar__message a{text-decoration:underline}#elementor-notice-bar__action{text-transform:uppercase}#elementor-notice-bar__close{margin:0 20px;cursor:pointer}#elementor-notice-bar i{font-size:16px;opacity:.9}#elementor-notice-bar a{color:#fff}#elementor-notice-bar a,#elementor-notice-bar i{-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}#elementor-notice-bar a:hover,#elementor-notice-bar i:hover{color:#d4d4d4}body:not(.elementor-device-desktop) #elementor-notice-bar{display:none}#elementor-fatal-error-dialog.elementor-preview-loading-error .dialog-header{color:#495157}#elementor-fatal-error-dialog.elementor-preview-loading-error .dialog-message a{color:#6d7882;text-decoration:underline;font-style:italic}#elementor-preview-debug-link-text{display:inline-block}#elementor-icons-manager-modal .dialog-message{padding:0;height:700px}#elementor-icons-manager-modal .dialog-buttons-wrapper,#elementor-icons-manager-modal .dialog-content,#elementor-icons-manager__wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}@media (max-width:479px){#elementor-icons-manager__sidebar{display:none}}#elementor-icons-manager__tab-links{margin-top:30px}#elementor-icons-manager__upload{margin:20px 45px;padding-top:35px;border-top:1px solid #e6e9ec;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}@media (max-width:1439px){#elementor-icons-manager__upload{margin:20px 25px}}#elementor-icons-manager__upload__title{color:#a4afb7;font-size:11px;text-transform:uppercase}#elementor-icons-manager__main{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding:30px 80px 0}@media (max-width:1439px){#elementor-icons-manager__main{padding:30px 50px 0}}@media (max-width:479px){#elementor-icons-manager__main{width:100%}}#elementor-icons-manager__search{position:relative}#elementor-icons-manager__search input{padding:8px 15px;background-color:#fff;border:none}#elementor-icons-manager__search input::-webkit-input-placeholder{font-style:italic}#elementor-icons-manager__search input::-moz-placeholder{font-style:italic}#elementor-icons-manager__search input::-ms-input-placeholder{font-style:italic}#elementor-icons-manager__search input::placeholder{font-style:italic}#elementor-icons-manager__search i{position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);right:15px}#elementor-icons-manager__tab__wrapper{overflow:auto;margin:25px -15px 0;padding:0 15px 15px}#elementor-icons-manager__tab__title{color:#556068;font-size:16px;font-weight:500;text-align:left}@media (max-width:479px){#elementor-icons-manager__tab__title{display:none}}#elementor-icons-manager__tab__content{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:20px;margin:20px 0}@media (max-width:1439px){#elementor-icons-manager__tab__content{grid-template-columns:repeat(6,1fr)}}@media (max-width:1024px){#elementor-icons-manager__tab__content{grid-template-columns:repeat(5,1fr)}}@media (max-width:767px){#elementor-icons-manager__tab__content{grid-template-columns:repeat(4,1fr)}}@media (max-width:479px){#elementor-icons-manager__tab__content{grid-template-columns:repeat(3,1fr)}}#elementor-icons-manager__promotion{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding-top:70px}#elementor-icons-manager__promotion__icon{font-size:60px;color:#c2cbd2}#elementor-icons-manager__promotion__text{width:300px;font-size:16px;padding-top:25px}#elementor-icons-manager__promotion__link{margin-top:20px}.elementor-icons-manager__tab-link{padding:15px 0 15px 45px;font-size:14px;color:#6d7882;text-align:left;cursor:pointer;position:relative}.elementor-icons-manager__tab-link i{font-size:20px;padding-right:15px;color:#a4afb7}@media (max-width:1439px){.elementor-icons-manager__tab-link{padding:15px 15px 15px 25px;font-size:11px}.elementor-icons-manager__tab-link i{font-size:15px}}@media (max-width:1024px){.elementor-icons-manager__tab-link i{display:none}}.elementor-icons-manager__tab-link.elementor-active{background-color:#fff;-webkit-box-shadow:0 6px 20px 0 rgba(0,0,0,.1);box-shadow:0 6px 20px 0 rgba(0,0,0,.1)}.elementor-icons-manager__tab-link.elementor-active:after{content:"";position:absolute;height:100%;width:5px;top:0;left:0;background-color:#71d7f7}.elementor-icons-manager__tab-link.elementor-active i{color:#71d7f7}.elementor-icons-manager__tab__item{position:relative;height:0;padding-bottom:100%;background-color:#fff;-webkit-box-shadow:0 1px 12px rgba(0,0,0,.05);box-shadow:0 1px 12px rgba(0,0,0,.05);-webkit-border-radius:3px;border-radius:3px;cursor:pointer;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;overflow:hidden}.elementor-icons-manager__tab__item:hover{-webkit-box-shadow:0 1px 14px rgba(0,0,0,.16);box-shadow:0 1px 14px rgba(0,0,0,.16)}.elementor-icons-manager__tab__item.elementor-selected{-webkit-box-shadow:0 1px 12px rgba(0,0,0,.05),0 0 0 3px #71d7f7;box-shadow:0 1px 12px rgba(0,0,0,.05),0 0 0 3px #71d7f7}.elementor-icons-manager__tab__item__content{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%;position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);padding:1px}.elementor-icons-manager__tab__item__icon{font-size:25px;color:#6d7882}.elementor-icons-manager__tab__item__name{color:#c2cbd2;font-size:11px;padding:13px 20px 0;max-width:100%;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}#elementor-enable-fa5-dialog a{font-style:italic;text-decoration:underline}#elementor-enable-fa5-dialog .dialog-confirm-ok{color:#39b54a}.elementor-color-picker__header{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-weight:700;padding:10px;-webkit-box-shadow:0 2px 8px rgba(0,0,0,.1);box-shadow:0 2px 8px rgba(0,0,0,.1)}.e-color-picker__tools,.elementor-color-picker__header{display:-webkit-box;display:-ms-flexbox;display:flex}.e-control-color--no-value .pcr-button{background-image:-webkit-linear-gradient(315deg,transparent 46%,#ff3030 50%,transparent 54%);background-image:-o-linear-gradient(315deg,transparent 46%,#ff3030 50%,transparent 54%);background-image:linear-gradient(135deg,transparent 46%,#ff3030 50%,transparent 54%);-webkit-background-size:cover;background-size:cover;background-color:transparent;border:1px solid #d5dadf}.pcr-app[data-theme=monolith]{padding:0}.pcr-result{border-right-width:1px;-webkit-border-radius:3px;border-radius:3px}.pcr-interaction,.pcr-selection{padding:0 20px}.pcr-interaction{padding-bottom:20px}.pcr .elementor-control-dynamic-switcher{height:20px;border:0}.select2-container{width:100%!important;outline:none;z-index:9999;font-size:12px}.select2-container .e-select2-placeholder{color:#a4afb7}.select2-container.select2-container--default .select2-selection--single{height:27px}.select2-container.select2-container--default .select2-selection--single .select2-selection__rendered{color:#6d7882;line-height:27px}.select2-container.select2-container--default .select2-selection--multiple{min-height:27px;line-height:0}.select2-container.select2-container--default .select2-selection--multiple .select2-selection__clear{display:none}.select2-container.select2-container--default .select2-selection--multiple .select2-selection__choice{background-color:#f1f3f5;line-height:1.2;font-size:10px;border:none;-webkit-border-radius:0;border-radius:0;padding:2px 3px}.select2-container.select2-container--default .select2-selection--multiple .select2-selection__choice.select2-selection__e-plus-button{cursor:pointer;width:16.67px;text-indent:-9999px;position:relative}.select2-container.select2-container--default .select2-selection--multiple .select2-selection__choice.select2-selection__e-plus-button:after{content:"\e815";font-family:eicons;color:#a4afb7;text-indent:0;position:absolute;left:0;top:0;width:100%;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.select2-container.select2-container--default .select2-selection--multiple .select2-selection__rendered{padding-bottom:5px}.select2-container.select2-container--default .select2-selection--multiple .select2-selection__choice__remove{color:#a4afb7;margin-right:3px}.select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--multiple,.select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--single{border-color:#d5dadf}.select2-container.select2-container--focus .select2-selection--multiple,.select2-container.select2-container--focus .select2-selection--single,.select2-container.select2-container--open .select2-selection--multiple,.select2-container.select2-container--open .select2-selection--single{border-color:#a4afb7}.select2-selection{outline:none}.select2-selection--single{height:27px}.select2-selection__arrow{height:27px;top:0}.select2-results__option[aria-selected=true]{color:#495157}.select2-results__option[aria-selected=true]:not(.select2-results__option--highlighted){background-color:initial}.select2-dropdown{border-color:#a4afb7}.select2-dropdown .select2-search__field{outline:none}assets/css/common-rtl.min.css000064400000027711151327220410012226 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.dialog-widget-content{background-color:#fff;position:absolute;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);overflow:hidden}.dialog-message{font-size:12px;line-height:1.5;-webkit-box-sizing:border-box;box-sizing:border-box}.dialog-type-lightbox{position:fixed;height:100%;width:100%;bottom:0;left:0;background-color:rgba(0,0,0,.8);z-index:9999;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.dialog-type-lightbox .dialog-widget-content{margin:auto;width:375px}.dialog-type-lightbox .dialog-header{font-size:15px;color:#495157;padding:30px 0 10px;font-weight:500}.dialog-type-lightbox .dialog-message{padding:0 30px 30px;min-height:50px}.dialog-type-lightbox:not(.elementor-popup-modal) .dialog-header,.dialog-type-lightbox:not(.elementor-popup-modal) .dialog-message{text-align:center}.dialog-type-lightbox .dialog-buttons-wrapper{border-top:1px solid #e6e9ec;text-align:center}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;width:50%;border:none;background:none;color:#6d7882;font-size:15px;cursor:pointer;padding:13px 0;outline:0}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button:hover{background-color:#f4f6f7}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button.dialog-ok{color:#b01b1b}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button.dialog-take_over{color:#39b54a}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button:active{background-color:rgba(230,233,236,.5)}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button::-moz-focus-inner{border:0}.dialog-close-button{cursor:pointer;position:absolute;margin-top:15px;left:15px;font-size:15px;line-height:1}.dialog-close-button:not(:hover){opacity:.4}.dialog-alert-widget .dialog-buttons-wrapper>button{width:100%}.dialog-confirm-widget .dialog-button:first-child{border-left:1px solid #e6e9ec}.dialog-prevent-scroll{overflow:hidden;max-height:100vh}@media (min-width:1024px){body.admin-bar .dialog-lightbox-widget{height:calc(100vh - 32px)}}@media (max-width:1024px){body.admin-bar .dialog-type-lightbox{position:-webkit-sticky;position:sticky;height:100vh}}.elementor-aspect-ratio-219 .elementor-fit-aspect-ratio{padding-bottom:42.8571%}.elementor-aspect-ratio-169 .elementor-fit-aspect-ratio{padding-bottom:56.25%}.elementor-aspect-ratio-43 .elementor-fit-aspect-ratio{padding-bottom:75%}.elementor-aspect-ratio-32 .elementor-fit-aspect-ratio{padding-bottom:66.6666%}.elementor-aspect-ratio-11 .elementor-fit-aspect-ratio{padding-bottom:100%}.elementor-aspect-ratio-916 .elementor-fit-aspect-ratio{padding-bottom:177.8%}.elementor-fit-aspect-ratio{position:relative;height:0}.elementor-fit-aspect-ratio iframe{position:absolute;top:0;left:0;height:100%;width:100%;border:0;background-color:#000}.elementor-fit-aspect-ratio video{width:100%}.flatpickr-calendar{width:280px}.flatpickr-calendar .flatpickr-current-month span.cur-month{font-weight:300}.flatpickr-calendar .dayContainer{width:280px;min-width:280px;max-width:280px}.flatpickr-calendar .flatpickr-days{width:280px}.flatpickr-calendar .flatpickr-day{max-width:37px;height:37px;line-height:37px}.elementor-templates-modal .dialog-widget-content{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;background-color:#f1f3f5;width:100%}@media (max-width:1439px){.elementor-templates-modal .dialog-widget-content{max-width:990px}}@media (min-width:1440px){.elementor-templates-modal .dialog-widget-content{max-width:1200px}}.elementor-templates-modal .dialog-header{padding:0;z-index:1}.elementor-templates-modal .dialog-buttons-wrapper,.elementor-templates-modal .dialog-header{background-color:#fff;-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1);position:relative}.elementor-templates-modal .dialog-buttons-wrapper{border:none;display:none;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;padding:5px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button{height:40px;margin-right:5px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success{padding:12px 36px;color:#fff;width:auto;font-size:15px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success:hover{background-color:#39b54a}.elementor-templates-modal .dialog-message{height:750px;max-height:85vh;overflow:auto;padding-top:25px}.elementor-templates-modal .dialog-content{height:100%}.elementor-templates-modal .dialog-loading{display:none}.elementor-templates-modal__header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;height:50px}.elementor-templates-modal__header__logo{line-height:1;text-transform:uppercase;font-weight:700;cursor:pointer}.elementor-templates-modal__header__logo-area{text-align:right;padding-right:15px}.elementor-templates-modal__header__logo-area>*{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-templates-modal__header__logo__icon-wrapper{margin-left:10px;font-size:12px}.elementor-templates-modal__header__logo__title{padding-top:2px}.elementor-templates-modal__header__items-area{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-templates-modal__header__item{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-templates-modal__header__item>i{font-size:20px;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;cursor:pointer}.elementor-templates-modal__header__item>i:not(:hover){color:#a4afb7}.elementor-templates-modal__header__close--normal{width:47px;border-right:1px solid #e6e9ec}.elementor-templates-modal__header__close--normal i{font-size:18px}.elementor-templates-modal__header__close--skip{padding:10px 20px 10px 10px;margin-left:10px;color:#fff;background-color:#a4afb7;font-size:11px;font-weight:400;line-height:1;text-transform:uppercase;-webkit-border-radius:2px;border-radius:2px;cursor:pointer}.elementor-templates-modal__header__close--skip>i{font-size:inherit;padding-right:10px;margin-right:15px;border-right:1px solid}.elementor-templates-modal__header__close--skip>i:not(:hover){color:#fff}.elementor-templates-modal__sidebar{-ms-flex-negative:0;flex-shrink:0;width:25%;background-color:hsla(0,0%,100%,.3)}.elementor-templates-modal__content{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-webkit-box-shadow:0 0 13px inset rgba(0,0,0,.05);box-shadow:inset 0 0 13px rgba(0,0,0,.05)}#wpadminbar #wp-admin-bar-elementor_edit_page .elementor-general-section+.elementor-second-section{border-top:1px solid #464b50;margin-top:6px}.elementor-hidden{display:none}.elementor-screen-only,.screen-reader-text,.screen-reader-text span,.ui-helper-hidden-accessible{position:absolute;top:-10000em;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.elementor-clearfix:after{content:"";display:block;clear:both;width:0;height:0}.e-logo-wrapper{background:#93003c;display:inline-block;padding:.75em;-webkit-border-radius:50%;border-radius:50%;line-height:1}.e-logo-wrapper i{color:#fff;font-size:1em}#elementor-finder__modal{background:none;z-index:99999}#elementor-finder__modal .dialog-widget-content{width:650px;max-width:98%;top:18vh;left:calc(50% - 650px / 2)}#elementor-finder__modal .dialog-message{height:auto;min-height:0;padding:0;text-align:right}#elementor-finder__search{padding:14px 15px 14px 21px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-shadow:0 -3px 15px 6px rgba(0,0,0,.03);box-shadow:0 -3px 15px 6px rgba(0,0,0,.03)}#elementor-finder__search i{font-size:16px;color:#a4afb7;font-weight:700;margin-left:15px}#elementor-finder__search__input{border:none;background:none;outline:none;padding:0;margin:0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;font-size:14px;color:#495157;-webkit-box-shadow:none;box-shadow:none}#elementor-finder__search__input::-webkit-input-placeholder{color:#a4afb7;font-style:italic;font-weight:300}#elementor-finder__search__input::-moz-placeholder{color:#a4afb7;font-style:italic;font-weight:300}#elementor-finder__search__input::-ms-input-placeholder{color:#a4afb7;font-style:italic;font-weight:300}#elementor-finder__search__input::placeholder{color:#a4afb7;font-style:italic;font-weight:300}#elementor-finder__results{max-height:50vh;overflow:auto}#elementor-finder__no-results{display:none;padding:20px;color:#a4afb7}.elementor-finder__results__category{position:relative}.elementor-finder__results__category__title{padding:5px 25px;color:#6d7882;background-color:#e6e9ec;font-size:9px;text-transform:uppercase}.elementor-finder__results__category--dynamic .elementor-finder__results__category__items{min-height:26px}.elementor-finder__results__category .eicon-loading{display:none;position:absolute;left:10px;top:30px;color:#71d7f7;font-size:14px}.elementor-finder__results__item{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-finder__results__item a{text-decoration:none;-webkit-box-shadow:none;box-shadow:none;outline:none}.elementor-finder__results__item.elementor-active{background-color:#71d7f7;-webkit-box-shadow:none;box-shadow:none;outline:none}.elementor-finder__results__item.elementor-active *{color:#fff}.elementor-finder__results__item:not(.elementor-active) .elementor-finder__results__item__actions{display:none}.elementor-finder__results__item__link{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:35px;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-finder__results__item__icon{width:60px;text-align:center;color:#6d7882;font-size:17px}.elementor-finder__results__item__title{color:#6d7882;font-size:13px}.elementor-finder__results__item__description{margin-right:5px;color:#a4afb7;font-style:italic}.elementor-finder__results__item__action,.elementor-finder__results__item__actions{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-finder__results__item__action{-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;height:100%;width:35px}.elementor-finder__results__item__action:hover{background-color:rgba(0,0,0,.07)}.tipsy{font-size:10px;position:absolute;padding:5px;z-index:100000}.tipsy-inner{background-color:#000;color:#fff;font-weight:500;max-width:200px;padding:5px 12px;text-align:center;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 0 5px 0 rgba(0,0,0,.5);box-shadow:0 0 5px 0 rgba(0,0,0,.5)}.tipsy-arrow{position:absolute;width:0;height:0;line-height:0;border:5px dashed #000}.tipsy-arrow-n{border-bottom-color:#000}.tipsy-arrow-s{border-top-color:#000}.tipsy-arrow-e{border-left-color:#000}.tipsy-arrow-w{border-right-color:#000}.tipsy-n .tipsy-arrow,.tipsy-nw .tipsy-arrow{border-left-color:transparent;border-right-color:transparent;top:0;border-bottom-style:solid;border-top:none}.tipsy-n .tipsy-arrow{left:50%;margin-left:-5px}.tipsy-nw .tipsy-arrow{left:10px}.tipsy-ne .tipsy-arrow{top:0;right:10px;border-bottom-style:solid;border-top:none;border-left-color:transparent;border-right-color:transparent}.tipsy-s .tipsy-arrow,.tipsy-se .tipsy-arrow,.tipsy-sw .tipsy-arrow{bottom:0;border-top-style:solid;border-bottom:none;border-left-color:transparent;border-right-color:transparent}.tipsy-s .tipsy-arrow{left:50%;margin-left:-5px}.tipsy-sw .tipsy-arrow{left:10px}.tipsy-se .tipsy-arrow{right:10px}.tipsy-e .tipsy-arrow,.tipsy-w .tipsy-arrow{top:50%;margin-top:-5px;border-top-color:transparent;border-bottom-color:transparent}.tipsy-e .tipsy-arrow{right:0;border-left-style:solid;border-right:none}.tipsy-w .tipsy-arrow{left:0;border-right-style:solid;border-left:none}assets/css/frontend-lite.min.css000064400000265420151327220410012712 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.dialog-widget-content{background-color:#fff;position:absolute;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);overflow:hidden}.dialog-message{font-size:12px;line-height:1.5;-webkit-box-sizing:border-box;box-sizing:border-box}.dialog-type-lightbox{position:fixed;height:100%;width:100%;bottom:0;left:0;background-color:rgba(0,0,0,.8);z-index:9999;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.dialog-type-lightbox .dialog-widget-content{margin:auto;width:375px}.dialog-type-lightbox .dialog-header{font-size:15px;color:#495157;padding:30px 0 10px;font-weight:500}.dialog-type-lightbox .dialog-message{padding:0 30px 30px;min-height:50px}.dialog-type-lightbox:not(.elementor-popup-modal) .dialog-header,.dialog-type-lightbox:not(.elementor-popup-modal) .dialog-message{text-align:center}.dialog-type-lightbox .dialog-buttons-wrapper{border-top:1px solid #e6e9ec;text-align:center}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;width:50%;border:none;background:none;color:#6d7882;font-size:15px;cursor:pointer;padding:13px 0;outline:0}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button:hover{background-color:#f4f6f7}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button.dialog-ok{color:#b01b1b}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button.dialog-take_over{color:#39b54a}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button:active{background-color:rgba(230,233,236,.5)}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button::-moz-focus-inner{border:0}.dialog-close-button{cursor:pointer;position:absolute;margin-top:15px;right:15px;font-size:15px;line-height:1}.dialog-close-button:not(:hover){opacity:.4}.dialog-alert-widget .dialog-buttons-wrapper>button{width:100%}.dialog-confirm-widget .dialog-button:first-child{border-right:1px solid #e6e9ec}.dialog-prevent-scroll{overflow:hidden;max-height:100vh}@media (min-width:1024px){body.admin-bar .dialog-lightbox-widget{height:calc(100vh - 32px)}}@media (max-width:1024px){body.admin-bar .dialog-type-lightbox{position:-webkit-sticky;position:sticky;height:100vh}}.elementor-aspect-ratio-219 .elementor-fit-aspect-ratio{padding-bottom:42.8571%}.elementor-aspect-ratio-169 .elementor-fit-aspect-ratio{padding-bottom:56.25%}.elementor-aspect-ratio-43 .elementor-fit-aspect-ratio{padding-bottom:75%}.elementor-aspect-ratio-32 .elementor-fit-aspect-ratio{padding-bottom:66.6666%}.elementor-aspect-ratio-11 .elementor-fit-aspect-ratio{padding-bottom:100%}.elementor-aspect-ratio-916 .elementor-fit-aspect-ratio{padding-bottom:177.8%}.elementor-fit-aspect-ratio{position:relative;height:0}.elementor-fit-aspect-ratio iframe{position:absolute;top:0;left:0;height:100%;width:100%;border:0;background-color:#000}.elementor-fit-aspect-ratio video{width:100%}.flatpickr-calendar{width:280px}.flatpickr-calendar .flatpickr-current-month span.cur-month{font-weight:300}.flatpickr-calendar .dayContainer{width:280px;min-width:280px;max-width:280px}.flatpickr-calendar .flatpickr-days{width:280px}.flatpickr-calendar .flatpickr-day{max-width:37px;height:37px;line-height:37px}.elementor-templates-modal .dialog-widget-content{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;background-color:#f1f3f5;width:100%}@media (max-width:1439px){.elementor-templates-modal .dialog-widget-content{max-width:990px}}@media (min-width:1440px){.elementor-templates-modal .dialog-widget-content{max-width:1200px}}.elementor-templates-modal .dialog-header{padding:0;z-index:1}.elementor-templates-modal .dialog-buttons-wrapper,.elementor-templates-modal .dialog-header{background-color:#fff;-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1);position:relative}.elementor-templates-modal .dialog-buttons-wrapper{border:none;display:none;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;padding:5px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button{height:40px;margin-left:5px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success{padding:12px 36px;color:#fff;width:auto;font-size:15px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success:hover{background-color:#39b54a}.elementor-templates-modal .dialog-message{height:750px;max-height:85vh;overflow:auto;padding-top:25px}.elementor-templates-modal .dialog-content{height:100%}.elementor-templates-modal .dialog-loading{display:none}.elementor-templates-modal__header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;height:50px}.elementor-templates-modal__header__logo{line-height:1;text-transform:uppercase;font-weight:700;cursor:pointer}.elementor-templates-modal__header__logo-area{text-align:left;padding-left:15px}.elementor-templates-modal__header__logo-area>*{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-templates-modal__header__logo__icon-wrapper{margin-right:10px;font-size:12px}.elementor-templates-modal__header__logo__title{padding-top:2px}.elementor-templates-modal__header__items-area{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-templates-modal__header__item{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-templates-modal__header__item>i{font-size:20px;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;cursor:pointer}.elementor-templates-modal__header__item>i:not(:hover){color:#a4afb7}.elementor-templates-modal__header__close--normal{width:47px;border-left:1px solid #e6e9ec}.elementor-templates-modal__header__close--normal i{font-size:18px}.elementor-templates-modal__header__close--skip{padding:10px 10px 10px 20px;margin-right:10px;color:#fff;background-color:#a4afb7;font-size:11px;font-weight:400;line-height:1;text-transform:uppercase;-webkit-border-radius:2px;border-radius:2px;cursor:pointer}.elementor-templates-modal__header__close--skip>i{font-size:inherit;padding-left:10px;margin-left:15px;border-left:1px solid}.elementor-templates-modal__header__close--skip>i:not(:hover){color:#fff}.elementor-templates-modal__sidebar{-ms-flex-negative:0;flex-shrink:0;width:25%;background-color:hsla(0,0%,100%,.3)}.elementor-templates-modal__content{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-webkit-box-shadow:0 0 13px inset rgba(0,0,0,.05);box-shadow:inset 0 0 13px rgba(0,0,0,.05)}#wpadminbar #wp-admin-bar-elementor_edit_page .elementor-general-section+.elementor-second-section{border-top:1px solid #464b50;margin-top:6px}.elementor-hidden{display:none}.elementor-screen-only,.screen-reader-text,.screen-reader-text span,.ui-helper-hidden-accessible{position:absolute;top:-10000em;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.elementor-clearfix:after{content:"";display:block;clear:both;width:0;height:0}.e-logo-wrapper{background:#93003c;display:inline-block;padding:.75em;-webkit-border-radius:50%;border-radius:50%;line-height:1}.e-logo-wrapper i{color:#fff;font-size:1em}.elementor{-webkit-hyphens:manual;-ms-hyphens:manual;hyphens:manual}.elementor *,.elementor :after,.elementor :before{-webkit-box-sizing:border-box;box-sizing:border-box}.elementor a{-webkit-box-shadow:none;box-shadow:none;text-decoration:none}.elementor hr{margin:0;background-color:transparent}.elementor img{height:auto;max-width:100%;border:none;-webkit-border-radius:0;border-radius:0;-webkit-box-shadow:none;box-shadow:none}.elementor .elementor-widget:not(.elementor-widget-text-editor):not(.elementor-widget-theme-post-content) figure{margin:0}.elementor embed,.elementor iframe,.elementor object,.elementor video{max-width:100%;width:100%;margin:0;line-height:1;border:none}.elementor .elementor-custom-embed{line-height:0}.elementor .elementor-background,.elementor .elementor-background-holder,.elementor .elementor-background-video-container{height:100%;width:100%;top:0;left:0;position:absolute;overflow:hidden;z-index:0;direction:ltr}.elementor .elementor-background-video-container{-webkit-transition:opacity 1s;-o-transition:opacity 1s;transition:opacity 1s;pointer-events:none}.elementor .elementor-background-video-container.elementor-loading{opacity:0}.elementor .elementor-background-video-embed{max-width:none}.elementor .elementor-background-video,.elementor .elementor-background-video-embed,.elementor .elementor-background-video-hosted{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor .elementor-background-video{max-width:none}.elementor .elementor-html5-video{-o-object-fit:cover;object-fit:cover}.elementor .elementor-background-overlay,.elementor .elementor-background-slideshow{height:100%;width:100%;top:0;left:0;position:absolute}.elementor .elementor-background-slideshow{z-index:0}.elementor .elementor-background-slideshow__slide__image{width:100%;height:100%;background-position:50%;-webkit-background-size:cover;background-size:cover}.elementor-widget-wrap>.elementor-element.elementor-absolute{position:absolute}.elementor-column>.elementor-widget-wrap>.elementor-element.elementor-absolute{padding:inherit;-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-widget-wrap>.elementor-element.elementor-fixed{position:fixed}.elementor-widget-wrap .elementor-element.elementor-widget__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget__width-initial{max-width:100%}@media (max-width:1024px){.elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-initial{max-width:100%}}@media (max-width:767px){.elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-initial{max-width:100%}}.elementor-element.elementor-absolute,.elementor-element.elementor-fixed{z-index:1}.elementor-invisible{visibility:hidden}.elementor-align-center{text-align:center}.elementor-align-center .elementor-button{width:auto}.elementor-align-right{text-align:right}.elementor-align-right .elementor-button{width:auto}.elementor-align-left{text-align:left}.elementor-align-left .elementor-button{width:auto}.elementor-align-justify .elementor-button{width:100%}.elementor-custom-embed-play{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor-custom-embed-play i{font-size:100px;color:#fff;text-shadow:1px 0 6px rgba(0,0,0,.3)}.elementor-custom-embed-play svg{height:100px;width:100px;fill:#fff;-webkit-filter:drop-shadow(1px 0 6px rgba(0,0,0,.3));filter:drop-shadow(1px 0 6px rgba(0,0,0,.3))}.elementor-custom-embed-play i,.elementor-custom-embed-play svg{opacity:.8;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-custom-embed-play.elementor-playing i{font-family:eicons;-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.elementor-custom-embed-play.elementor-playing i:before{content:"\e8fb"}.elementor-tag{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex}.elementor-ken-burns{-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;-o-transition-property:transform;transition-property:transform;transition-property:transform,-webkit-transform;-webkit-transition-duration:10s;-o-transition-duration:10s;transition-duration:10s;-webkit-transition-timing-function:linear;-o-transition-timing-function:linear;transition-timing-function:linear}.elementor-ken-burns--out{-webkit-transform:scale(1.3);-ms-transform:scale(1.3);transform:scale(1.3)}.elementor-ken-burns--active{-webkit-transition-duration:20s;-o-transition-duration:20s;transition-duration:20s}.elementor-ken-burns--active.elementor-ken-burns--out{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}.elementor-ken-burns--active.elementor-ken-burns--in{-webkit-transform:scale(1.3);-ms-transform:scale(1.3);transform:scale(1.3)}@media (min-width:-1px){.elementor-widescreen-align-center{text-align:center}.elementor-widescreen-align-center .elementor-button{width:auto}.elementor-widescreen-align-right{text-align:right}.elementor-widescreen-align-right .elementor-button{width:auto}.elementor-widescreen-align-left{text-align:left}.elementor-widescreen-align-left .elementor-button{width:auto}.elementor-widescreen-align-justify .elementor-button{width:100%}}@media (max-width:-1px){.elementor-laptop-align-center{text-align:center}.elementor-laptop-align-center .elementor-button{width:auto}.elementor-laptop-align-right{text-align:right}.elementor-laptop-align-right .elementor-button{width:auto}.elementor-laptop-align-left{text-align:left}.elementor-laptop-align-left .elementor-button{width:auto}.elementor-laptop-align-justify .elementor-button{width:100%}}@media (max-width:-1px){.elementor-tablet_extra-align-center{text-align:center}.elementor-tablet_extra-align-center .elementor-button{width:auto}.elementor-tablet_extra-align-right{text-align:right}.elementor-tablet_extra-align-right .elementor-button{width:auto}.elementor-tablet_extra-align-left{text-align:left}.elementor-tablet_extra-align-left .elementor-button{width:auto}.elementor-tablet_extra-align-justify .elementor-button{width:100%}}@media (max-width:1024px){.elementor-tablet-align-center{text-align:center}.elementor-tablet-align-center .elementor-button{width:auto}.elementor-tablet-align-right{text-align:right}.elementor-tablet-align-right .elementor-button{width:auto}.elementor-tablet-align-left{text-align:left}.elementor-tablet-align-left .elementor-button{width:auto}.elementor-tablet-align-justify .elementor-button{width:100%}}@media (max-width:-1px){.elementor-mobile_extra-align-center{text-align:center}.elementor-mobile_extra-align-center .elementor-button{width:auto}.elementor-mobile_extra-align-right{text-align:right}.elementor-mobile_extra-align-right .elementor-button{width:auto}.elementor-mobile_extra-align-left{text-align:left}.elementor-mobile_extra-align-left .elementor-button{width:auto}.elementor-mobile_extra-align-justify .elementor-button{width:100%}}@media (max-width:767px){.elementor-mobile-align-center{text-align:center}.elementor-mobile-align-center .elementor-button{width:auto}.elementor-mobile-align-right{text-align:right}.elementor-mobile-align-right .elementor-button{width:auto}.elementor-mobile-align-left{text-align:left}.elementor-mobile-align-left .elementor-button{width:auto}.elementor-mobile-align-justify .elementor-button{width:100%}}#wpadminbar #wp-admin-bar-elementor_edit_page>.ab-item:before{content:"\e813";font-family:eicons;top:3px;font-size:18px}#wpadminbar #wp-admin-bar-elementor_inspector>.ab-item:before{content:"\f348";top:2px}:root{--page-title-display:block}.elementor-page-title,h1.entry-title{display:var(--page-title-display)}.elementor-section{position:relative}.elementor-section .elementor-container{display:-webkit-box;display:-ms-flexbox;display:flex;margin-right:auto;margin-left:auto;position:relative}@media (max-width:1024px){.elementor-section .elementor-container{-ms-flex-wrap:wrap;flex-wrap:wrap}}.elementor-section.elementor-section-boxed>.elementor-container{max-width:1140px}.elementor-section.elementor-section-stretched{position:relative;width:100%}.elementor-section.elementor-section-items-top>.elementor-container{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.elementor-section.elementor-section-items-middle>.elementor-container{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-section.elementor-section-items-bottom>.elementor-container{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}@media (min-width:768px){.elementor-section.elementor-section-height-full{height:100vh}.elementor-section.elementor-section-height-full>.elementor-container{height:100%}}.elementor-bc-flex-widget .elementor-section-content-top>.elementor-container>.elementor-column>.elementor-widget-wrap{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.elementor-bc-flex-widget .elementor-section-content-middle>.elementor-container>.elementor-column>.elementor-widget-wrap{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-bc-flex-widget .elementor-section-content-bottom>.elementor-container>.elementor-column>.elementor-widget-wrap{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.elementor-row{width:100%;display:-webkit-box;display:-ms-flexbox;display:flex}@media (max-width:1024px){.elementor-row{-ms-flex-wrap:wrap;flex-wrap:wrap}}.elementor-widget-wrap{position:relative;width:100%;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-line-pack:start;align-content:flex-start}.elementor:not(.elementor-bc-flex-widget) .elementor-widget-wrap{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget-wrap>.elementor-element{width:100%}.elementor-widget{position:relative}.elementor-widget:not(:last-child){margin-bottom:20px}.elementor-widget:not(:last-child).elementor-absolute,.elementor-widget:not(:last-child).elementor-widget__width-auto,.elementor-widget:not(:last-child).elementor-widget__width-initial{margin-bottom:0}.elementor-column{min-height:1px}.elementor-column,.elementor-column-wrap{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-column-wrap{width:100%}.elementor-column-gap-narrow>.elementor-column>.elementor-element-populated{padding:5px}.elementor-column-gap-default>.elementor-column>.elementor-element-populated{padding:10px}.elementor-column-gap-extended>.elementor-column>.elementor-element-populated{padding:15px}.elementor-column-gap-wide>.elementor-column>.elementor-element-populated{padding:20px}.elementor-column-gap-wider>.elementor-column>.elementor-element-populated{padding:30px}.elementor-inner-section .elementor-column-gap-no .elementor-element-populated{padding:0}@media (min-width:768px){.elementor-column.elementor-col-10,.elementor-column[data-col="10"]{width:10%}.elementor-column.elementor-col-11,.elementor-column[data-col="11"]{width:11.111%}.elementor-column.elementor-col-12,.elementor-column[data-col="12"]{width:12.5%}.elementor-column.elementor-col-14,.elementor-column[data-col="14"]{width:14.285%}.elementor-column.elementor-col-16,.elementor-column[data-col="16"]{width:16.666%}.elementor-column.elementor-col-20,.elementor-column[data-col="20"]{width:20%}.elementor-column.elementor-col-25,.elementor-column[data-col="25"]{width:25%}.elementor-column.elementor-col-30,.elementor-column[data-col="30"]{width:30%}.elementor-column.elementor-col-33,.elementor-column[data-col="33"]{width:33.333%}.elementor-column.elementor-col-40,.elementor-column[data-col="40"]{width:40%}.elementor-column.elementor-col-50,.elementor-column[data-col="50"]{width:50%}.elementor-column.elementor-col-60,.elementor-column[data-col="60"]{width:60%}.elementor-column.elementor-col-66,.elementor-column[data-col="66"]{width:66.666%}.elementor-column.elementor-col-70,.elementor-column[data-col="70"]{width:70%}.elementor-column.elementor-col-75,.elementor-column[data-col="75"]{width:75%}.elementor-column.elementor-col-80,.elementor-column[data-col="80"]{width:80%}.elementor-column.elementor-col-83,.elementor-column[data-col="83"]{width:83.333%}.elementor-column.elementor-col-90,.elementor-column[data-col="90"]{width:90%}.elementor-column.elementor-col-100,.elementor-column[data-col="100"]{width:100%}}@media (max-width:479px){.elementor-column.elementor-xs-10{width:10%}.elementor-column.elementor-xs-11{width:11.111%}.elementor-column.elementor-xs-12{width:12.5%}.elementor-column.elementor-xs-14{width:14.285%}.elementor-column.elementor-xs-16{width:16.666%}.elementor-column.elementor-xs-20{width:20%}.elementor-column.elementor-xs-25{width:25%}.elementor-column.elementor-xs-30{width:30%}.elementor-column.elementor-xs-33{width:33.333%}.elementor-column.elementor-xs-40{width:40%}.elementor-column.elementor-xs-50{width:50%}.elementor-column.elementor-xs-60{width:60%}.elementor-column.elementor-xs-66{width:66.666%}.elementor-column.elementor-xs-70{width:70%}.elementor-column.elementor-xs-75{width:75%}.elementor-column.elementor-xs-80{width:80%}.elementor-column.elementor-xs-83{width:83.333%}.elementor-column.elementor-xs-90{width:90%}.elementor-column.elementor-xs-100{width:100%}}@media (max-width:767px){.elementor-column.elementor-sm-10{width:10%}.elementor-column.elementor-sm-11{width:11.111%}.elementor-column.elementor-sm-12{width:12.5%}.elementor-column.elementor-sm-14{width:14.285%}.elementor-column.elementor-sm-16{width:16.666%}.elementor-column.elementor-sm-20{width:20%}.elementor-column.elementor-sm-25{width:25%}.elementor-column.elementor-sm-30{width:30%}.elementor-column.elementor-sm-33{width:33.333%}.elementor-column.elementor-sm-40{width:40%}.elementor-column.elementor-sm-50{width:50%}.elementor-column.elementor-sm-60{width:60%}.elementor-column.elementor-sm-66{width:66.666%}.elementor-column.elementor-sm-70{width:70%}.elementor-column.elementor-sm-75{width:75%}.elementor-column.elementor-sm-80{width:80%}.elementor-column.elementor-sm-83{width:83.333%}.elementor-column.elementor-sm-90{width:90%}.elementor-column.elementor-sm-100{width:100%}}@media (min-width:768px) and (max-width:1024px){.elementor-column.elementor-md-10{width:10%}.elementor-column.elementor-md-11{width:11.111%}.elementor-column.elementor-md-12{width:12.5%}.elementor-column.elementor-md-14{width:14.285%}.elementor-column.elementor-md-16{width:16.666%}.elementor-column.elementor-md-20{width:20%}.elementor-column.elementor-md-25{width:25%}.elementor-column.elementor-md-30{width:30%}.elementor-column.elementor-md-33{width:33.333%}.elementor-column.elementor-md-40{width:40%}.elementor-column.elementor-md-50{width:50%}.elementor-column.elementor-md-60{width:60%}.elementor-column.elementor-md-66{width:66.666%}.elementor-column.elementor-md-70{width:70%}.elementor-column.elementor-md-75{width:75%}.elementor-column.elementor-md-80{width:80%}.elementor-column.elementor-md-83{width:83.333%}.elementor-column.elementor-md-90{width:90%}.elementor-column.elementor-md-100{width:100%}}@media (min-width:768px) and (max-width:1024px){.elementor-reverse-tablet>.elementor-container>:first-child{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.elementor-reverse-tablet>.elementor-container>:nth-child(2){-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.elementor-reverse-tablet>.elementor-container>:nth-child(3){-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.elementor-reverse-tablet>.elementor-container>:nth-child(4){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.elementor-reverse-tablet>.elementor-container>:nth-child(5){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.elementor-reverse-tablet>.elementor-container>:nth-child(6){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-reverse-tablet>.elementor-container>:nth-child(7){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.elementor-reverse-tablet>.elementor-container>:nth-child(8){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.elementor-reverse-tablet>.elementor-container>:nth-child(9){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.elementor-reverse-tablet>.elementor-container>:nth-child(10){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}}@media (max-width:767px){.elementor-reverse-mobile>.elementor-container>:first-child{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.elementor-reverse-mobile>.elementor-container>:nth-child(2){-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.elementor-reverse-mobile>.elementor-container>:nth-child(3){-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.elementor-reverse-mobile>.elementor-container>:nth-child(4){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.elementor-reverse-mobile>.elementor-container>:nth-child(5){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.elementor-reverse-mobile>.elementor-container>:nth-child(6){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-reverse-mobile>.elementor-container>:nth-child(7){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.elementor-reverse-mobile>.elementor-container>:nth-child(8){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.elementor-reverse-mobile>.elementor-container>:nth-child(9){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.elementor-reverse-mobile>.elementor-container>:nth-child(10){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.elementor-column{width:100%}}ul.elementor-icon-list-items.elementor-inline-items{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}ul.elementor-icon-list-items.elementor-inline-items .elementor-inline-item{word-break:break-word}.elementor-grid{display:grid;grid-column-gap:var(--grid-column-gap);grid-row-gap:var(--grid-row-gap)}.elementor-grid .elementor-grid-item{min-width:0}.elementor-grid-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}@media (min-width:-1px){.elementor-grid-widescreen-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-widescreen-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-widescreen-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-widescreen-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-widescreen-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-widescreen-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-widescreen-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-widescreen-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-widescreen-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-widescreen-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-widescreen-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-widescreen-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-widescreen-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-widescreen-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:-1px){.elementor-grid-laptop-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-laptop-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-laptop-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-laptop-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-laptop-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-laptop-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-laptop-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-laptop-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-laptop-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-laptop-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-laptop-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-laptop-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-laptop-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-laptop-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:-1px){.elementor-grid-tablet_extra-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-tablet_extra-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-tablet_extra-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-tablet_extra-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-tablet_extra-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-tablet_extra-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-tablet_extra-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-tablet_extra-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-tablet_extra-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-tablet_extra-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-tablet_extra-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-tablet_extra-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-tablet_extra-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-tablet_extra-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:1024px){.elementor-grid-tablet-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-tablet-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-tablet-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-tablet-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-tablet-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-tablet-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-tablet-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-tablet-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-tablet-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-tablet-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-tablet-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-tablet-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-tablet-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-tablet-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:-1px){.elementor-grid-mobile_extra-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-mobile_extra-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-mobile_extra-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-mobile_extra-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-mobile_extra-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-mobile_extra-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-mobile_extra-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-mobile_extra-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-mobile_extra-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-mobile_extra-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-mobile_extra-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-mobile_extra-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-mobile_extra-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-mobile_extra-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:767px){.elementor-grid-mobile-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-mobile-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-mobile-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-mobile-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-mobile-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-mobile-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-mobile-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-mobile-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-mobile-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-mobile-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-mobile-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-mobile-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-mobile-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-mobile-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (min-width:1025px){#elementor-device-mode:after{content:"desktop"}}@media (min-width:-1px){#elementor-device-mode:after{content:"widescreen"}}@media (max-width:-1px){#elementor-device-mode:after{content:"laptop";content:"tablet_extra"}}@media (max-width:1024px){#elementor-device-mode:after{content:"tablet"}}@media (max-width:-1px){#elementor-device-mode:after{content:"mobile_extra"}}@media (max-width:767px){#elementor-device-mode:after{content:"mobile"}}[class*=" eicon-"],[class^=eicon]{display:inline-block;font-family:eicons;font-size:inherit;font-weight:400;font-style:normal;font-variant:normal;line-height:1;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@-webkit-keyframes eicon-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes eicon-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.eicon-animation-spin{-webkit-animation:eicon-spin 2s linear infinite;animation:eicon-spin 2s linear infinite}.eicon-loading:before{content:"\e8fb"}.eicon-menu-bar:before{content:"\e816"}.eicon-chevron-right:before{content:"\e87d"}.eicon-chevron-left:before{content:"\e87e"}.eicon-close:before{content:"\e87f"}.eicon-share-arrow:before{content:"\e96c"}.eicon-zoom-in:before{content:"\e882"}.eicon-zoom-in-bold:before{content:"\e92e"}.eicon-zoom-out-bold:before{content:"\e943"}.eicon-frame-expand:before{content:"\e95c"}.eicon-frame-minimize:before{content:"\e95d"}.eicon-play:before{content:"\e89d"}.eicon-facebook:before{content:"\e959"}.eicon-twitter:before{content:"\e95a"}.eicon-pinterest:before{content:"\e95b"}.eicon-download-bold:before{content:"\e96b"}.eicon-caret-down:before{content:"\e92a"}.elementor-form-fields-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group .elementor-field-subgroup,.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group>.elementor-select-wrapper,.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group>input,.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group>textarea{-ms-flex-preferred-size:100%;flex-basis:100%;max-width:100%}.elementor-form-fields-wrapper.elementor-labels-inline>.elementor-field-group .elementor-select-wrapper,.elementor-form-fields-wrapper.elementor-labels-inline>.elementor-field-group>input{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-field-group{-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-field-group.elementor-field-type-submit{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.elementor-field-group .elementor-field-textual{width:100%;max-width:100%;border:1px solid #818a91;background-color:transparent;color:#373a3c;vertical-align:middle;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-field-group .elementor-field-textual:focus{-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.1) inset;box-shadow:inset 0 0 0 1px rgba(0,0,0,.1);outline:0}.elementor-field-group .elementor-field-textual::-webkit-input-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual:-ms-input-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual:-moz-placeholder,.elementor-field-group .elementor-field-textual::-moz-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual::-ms-input-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual::placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-select-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;position:relative;width:100%}.elementor-field-group .elementor-select-wrapper select{appearance:none;-webkit-appearance:none;-moz-appearance:none;color:inherit;font-size:inherit;font-family:inherit;font-weight:inherit;font-style:inherit;text-transform:inherit;letter-spacing:inherit;line-height:inherit;-ms-flex-preferred-size:100%;flex-basis:100%;padding-right:20px}.elementor-field-group .elementor-select-wrapper:before{content:"\e92a";font-family:eicons;font-size:15px;position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);right:10px;pointer-events:none;text-shadow:0 0 3px rgba(0,0,0,.3)}.elementor-field-group.elementor-field-type-select-multiple .elementor-select-wrapper:before{content:""}.elementor-field-subgroup{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-field-subgroup .elementor-field-option label{display:inline-block}.elementor-field-subgroup.elementor-subgroup-inline .elementor-field-option{padding-right:10px}.elementor-field-subgroup:not(.elementor-subgroup-inline) .elementor-field-option{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option label,.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option label,.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option label{display:inline}.elementor-field-label{cursor:pointer}.elementor-mark-required .elementor-field-label:after{content:"*";color:red;padding-left:.2em}.elementor-field-textual{line-height:1.4;font-size:15px;min-height:40px;padding:5px 14px;-webkit-border-radius:3px;border-radius:3px}.elementor-field-textual.elementor-size-xs{font-size:13px;min-height:33px;padding:4px 12px;-webkit-border-radius:2px;border-radius:2px}.elementor-field-textual.elementor-size-md{font-size:16px;min-height:47px;padding:6px 16px;-webkit-border-radius:4px;border-radius:4px}.elementor-field-textual.elementor-size-lg{font-size:18px;min-height:59px;padding:7px 20px;-webkit-border-radius:5px;border-radius:5px}.elementor-field-textual.elementor-size-xl{font-size:20px;min-height:72px;padding:8px 24px;-webkit-border-radius:6px;border-radius:6px}.elementor-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-button-align-stretch .e-form__buttons__wrapper{-ms-flex-preferred-size:50%;flex-basis:50%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-button-align-stretch .e-form__buttons__wrapper__button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-button-align-center .e-form__buttons,.elementor-button-align-center .elementor-field-type-submit{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-button-align-start .e-form__buttons,.elementor-button-align-start .elementor-field-type-submit{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-button-align-end .e-form__buttons,.elementor-button-align-end .elementor-field-type-submit{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:initial;flex-basis:auto}.elementor-button-align-center .e-form__buttons__wrapper,.elementor-button-align-end .e-form__buttons__wrapper,.elementor-button-align-start .e-form__buttons__wrapper{-webkit-box-flex:initial;-ms-flex-positive:initial;flex-grow:0}.elementor-button-align-center .e-form__buttons__wrapper,.elementor-button-align-center .e-form__buttons__wrapper__button,.elementor-button-align-end .e-form__buttons__wrapper,.elementor-button-align-end .e-form__buttons__wrapper__button,.elementor-button-align-start .e-form__buttons__wrapper,.elementor-button-align-start .e-form__buttons__wrapper__button{-ms-flex-preferred-size:initial;flex-basis:auto}@media screen and (max-width:1024px){.elementor-tablet-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-tablet-button-align-stretch .e-form__buttons__wrapper{-ms-flex-preferred-size:50%;flex-basis:50%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-tablet-button-align-stretch .e-form__buttons__wrapper__button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-tablet-button-align-center .e-form__buttons,.elementor-tablet-button-align-center .elementor-field-type-submit{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-tablet-button-align-start .e-form__buttons,.elementor-tablet-button-align-start .elementor-field-type-submit{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-tablet-button-align-end .e-form__buttons,.elementor-tablet-button-align-end .elementor-field-type-submit{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-tablet-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-tablet-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-tablet-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:initial;flex-basis:auto}.elementor-tablet-button-align-center .e-form__buttons__wrapper,.elementor-tablet-button-align-end .e-form__buttons__wrapper,.elementor-tablet-button-align-start .e-form__buttons__wrapper{-webkit-box-flex:initial;-ms-flex-positive:initial;flex-grow:0}.elementor-tablet-button-align-center .e-form__buttons__wrapper,.elementor-tablet-button-align-center .e-form__buttons__wrapper__button,.elementor-tablet-button-align-end .e-form__buttons__wrapper,.elementor-tablet-button-align-end .e-form__buttons__wrapper__button,.elementor-tablet-button-align-start .e-form__buttons__wrapper,.elementor-tablet-button-align-start .e-form__buttons__wrapper__button{-ms-flex-preferred-size:initial;flex-basis:auto}}@media screen and (max-width:767px){.elementor-mobile-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-mobile-button-align-stretch .e-form__buttons__wrapper{-ms-flex-preferred-size:50%;flex-basis:50%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-mobile-button-align-stretch .e-form__buttons__wrapper__button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-mobile-button-align-center .e-form__buttons,.elementor-mobile-button-align-center .elementor-field-type-submit{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-mobile-button-align-start .e-form__buttons,.elementor-mobile-button-align-start .elementor-field-type-submit{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-mobile-button-align-end .e-form__buttons,.elementor-mobile-button-align-end .elementor-field-type-submit{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-mobile-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-mobile-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-mobile-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:initial;flex-basis:auto}.elementor-mobile-button-align-center .e-form__buttons__wrapper,.elementor-mobile-button-align-end .e-form__buttons__wrapper,.elementor-mobile-button-align-start .e-form__buttons__wrapper{-webkit-box-flex:initial;-ms-flex-positive:initial;flex-grow:0}.elementor-mobile-button-align-center .e-form__buttons__wrapper,.elementor-mobile-button-align-center .e-form__buttons__wrapper__button,.elementor-mobile-button-align-end .e-form__buttons__wrapper,.elementor-mobile-button-align-end .e-form__buttons__wrapper__button,.elementor-mobile-button-align-start .e-form__buttons__wrapper,.elementor-mobile-button-align-start .e-form__buttons__wrapper__button{-ms-flex-preferred-size:initial;flex-basis:auto}}.elementor-error .elementor-field{border-color:#d9534f}.elementor-error .help-inline{color:#d9534f;font-size:.9em}.elementor-message{margin:10px 0;font-size:1em;line-height:1}.elementor-message:before{content:"\e90e";display:inline-block;font-family:eicons;font-weight:400;font-style:normal;vertical-align:middle;margin-right:5px}.elementor-message.elementor-message-danger{color:#d9534f}.elementor-message.elementor-message-danger:before{content:"\e87f"}.elementor-message.form-message-success{color:#5cb85c}.elementor-form .elementor-button{padding-top:0;padding-bottom:0;border:none}.elementor-form .elementor-button>span{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-form .elementor-button.elementor-size-xs{min-height:33px}.elementor-form .elementor-button.elementor-size-sm{min-height:40px}.elementor-form .elementor-button.elementor-size-md{min-height:47px}.elementor-form .elementor-button.elementor-size-lg{min-height:59px}.elementor-form .elementor-button.elementor-size-xl{min-height:72px}.elementor-element .elementor-widget-container{-webkit-transition:background .3s,border .3s,-webkit-border-radius .3s,-webkit-box-shadow .3s;transition:background .3s,border .3s,-webkit-border-radius .3s,-webkit-box-shadow .3s;-o-transition:background .3s,border .3s,border-radius .3s,box-shadow .3s;transition:background .3s,border .3s,border-radius .3s,box-shadow .3s;transition:background .3s,border .3s,border-radius .3s,box-shadow .3s,-webkit-border-radius .3s,-webkit-box-shadow .3s}.elementor-button{display:inline-block;line-height:1;background-color:#818a91;font-size:15px;padding:12px 24px;-webkit-border-radius:3px;border-radius:3px;color:#fff;fill:#fff;text-align:center;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.elementor-button:focus,.elementor-button:hover,.elementor-button:visited{color:#fff}.elementor-button-content-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-button-icon{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-button-icon svg{width:1em;height:auto}.elementor-button-icon .e-font-icon-svg{height:1em}.elementor-button-text{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10;display:inline-block}.elementor-button.elementor-size-xs{font-size:13px;padding:10px 20px;-webkit-border-radius:2px;border-radius:2px}.elementor-button.elementor-size-md{font-size:16px;padding:15px 30px;-webkit-border-radius:4px;border-radius:4px}.elementor-button.elementor-size-lg{font-size:18px;padding:20px 40px;-webkit-border-radius:5px;border-radius:5px}.elementor-button.elementor-size-xl{font-size:20px;padding:25px 50px;-webkit-border-radius:6px;border-radius:6px}.elementor-button .elementor-align-icon-right{margin-left:5px;-webkit-box-ordinal-group:16;-ms-flex-order:15;order:15}.elementor-button .elementor-align-icon-left{margin-right:5px;-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-button span{text-decoration:inherit}.elementor-menu-cart__toggle .elementor-button-icon{-webkit-box-ordinal-group:16;-ms-flex-order:15;order:15}.elementor-element.elementor-button-info .elementor-button{background-color:#5bc0de}.elementor-element.elementor-button-success .elementor-button{background-color:#5cb85c}.elementor-element.elementor-button-warning .elementor-button{background-color:#f0ad4e}.elementor-element.elementor-button-danger .elementor-button{background-color:#d9534f}.elementor-widget-button .elementor-button .elementor-button-info{background-color:#5bc0de}.elementor-widget-button .elementor-button .elementor-button-success{background-color:#5cb85c}.elementor-widget-button .elementor-button .elementor-button-warning{background-color:#f0ad4e}.elementor-widget-button .elementor-button .elementor-button-danger{background-color:#d9534f}.elementor-tab-title a{color:inherit}.elementor-view-stacked .elementor-icon{padding:.5em;background-color:#818a91;color:#fff;fill:#fff}.elementor-view-framed .elementor-icon{padding:.5em;color:#818a91;border:3px solid #818a91;background-color:transparent}.elementor-icon{display:inline-block;line-height:1;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;color:#818a91;font-size:50px;text-align:center}.elementor-icon:hover{color:#818a91}.elementor-icon i,.elementor-icon svg{width:1em;height:1em;position:relative;display:block}.elementor-icon i:before,.elementor-icon svg:before{position:absolute;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.elementor-icon i.fad{width:auto}.elementor-shape-circle .elementor-icon{-webkit-border-radius:50%;border-radius:50%}.slick-slider{-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-ms-touch-action:pan-y;touch-action:pan-y;-webkit-tap-highlight-color:transparent}.slick-list,.slick-slider{position:relative;display:block}.slick-list{overflow:hidden;margin:0;padding:0}.slick-list:focus{outline:none}.slick-list.dragging{cursor:pointer}.slick-slider .slick-list,.slick-slider .slick-track{-webkit-transform:translateZ(0);transform:translateZ(0)}.slick-track{position:relative;left:0;top:0;display:block}.slick-track:after,.slick-track:before{content:"";display:table}.slick-track:after{clear:both}.slick-loading .slick-track{visibility:hidden}.slick-slide{float:left;height:100%;min-height:1px;display:none}.elementor-slick-slider[dir=rtl] .slick-slide{float:right}.slick-slide img{display:block}.slick-slide.slick-loading img{display:none}.slick-slide.dragging img{pointer-events:none}.slick-initialized .slick-slide{display:block}.slick-loading .slick-slide{visibility:hidden}.slick-vertical .slick-slide{display:block;height:auto;border:1px solid transparent}.slick-arrow.slick-hidden{display:none}.elementor-slick-slider .slick-loading .slick-list{background:#fff}.elementor-slick-slider .slick-loading .slick-list:after{content:"\e8fb";font-family:eicons;position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite;font-size:25px;color:#a4afb7}.elementor-slick-slider .slick-next,.elementor-slick-slider .slick-prev{font-size:0;line-height:0;position:absolute;top:50%;display:block;width:20px;padding:0;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);cursor:pointer;color:transparent;border:none;outline:none;background:transparent}.elementor-slick-slider .slick-next:focus,.elementor-slick-slider .slick-next:hover,.elementor-slick-slider .slick-prev:focus,.elementor-slick-slider .slick-prev:hover{color:transparent;outline:none;background:transparent}.elementor-slick-slider .slick-next:focus:before,.elementor-slick-slider .slick-next:hover:before,.elementor-slick-slider .slick-prev:focus:before,.elementor-slick-slider .slick-prev:hover:before{opacity:1}.elementor-slick-slider .slick-next.slick-disabled:before,.elementor-slick-slider .slick-prev.slick-disabled:before{opacity:.25}.elementor-slick-slider .slick-next:before,.elementor-slick-slider .slick-prev:before{font-family:eicons;font-size:35px;line-height:1;opacity:.75;color:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.elementor-slick-slider .slick-prev{left:-25px}[dir=rtl] .elementor-slick-slider .slick-prev{left:auto;right:-25px}.elementor-slick-slider .slick-prev:before{content:"\e89f"}[dir=rtl] .elementor-slick-slider .slick-prev:before{content:"\e89e"}.elementor-slick-slider .slick-next{right:-25px}[dir=rtl] .elementor-slick-slider .slick-next{left:-25px;right:auto}.elementor-slick-slider .slick-next:before{content:"\e89e"}[dir=rtl] .elementor-slick-slider .slick-next:before{content:"\e89f"}.elementor-slick-slider .slick-dotted.slick-slider{margin-bottom:30px}.elementor-slick-slider ul.slick-dots{position:absolute;bottom:-25px;display:block;width:100%;padding:0;margin:0;list-style:none;text-align:center;line-height:1}.elementor-slick-slider ul.slick-dots li{position:relative;display:inline-block;width:20px;height:20px;margin:0;padding:0;cursor:pointer}.elementor-slick-slider ul.slick-dots li button{font-size:0;line-height:0;display:block;width:20px;height:20px;padding:5px;cursor:pointer;color:transparent;border:0;outline:none;background:transparent}.elementor-slick-slider ul.slick-dots li button:focus,.elementor-slick-slider ul.slick-dots li button:hover{outline:none}.elementor-slick-slider ul.slick-dots li button:focus:before,.elementor-slick-slider ul.slick-dots li button:hover:before{opacity:1}.elementor-slick-slider ul.slick-dots li button:before{font-family:eicons;font-size:6px;line-height:20px;position:absolute;top:0;left:0;width:20px;height:20px;content:"\e914";text-align:center;opacity:.25;color:#000;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.elementor-slick-slider ul.slick-dots li.slick-active button:before{opacity:.75;color:#000}.elementor-slick-slider .slick-arrows-inside .slick-prev{left:20px}[dir=rtl] .elementor-slick-slider .slick-arrows-inside .slick-prev{left:auto;right:20px}.elementor-slick-slider .slick-arrows-inside .slick-next{right:20px}[dir=rtl] .elementor-slick-slider .slick-arrows-inside .slick-next{left:20px;right:auto}.elementor-slick-slider .slick-dots-inside .slick-dots{bottom:5px}.elementor-slick-slider .slick-dots-inside.slick-dotted.slick-slider{margin-bottom:0}.elementor-slick-slider .slick-slider .slick-next,.elementor-slick-slider .slick-slider .slick-prev{z-index:1}.elementor-slick-slider .slick-slide img{margin:auto}.swiper-container{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;z-index:1}.swiper-container .swiper-slide figure{line-height:0}.swiper-container .elementor-lightbox-content-source{display:none}.swiper-container-no-flexbox .swiper-slide{float:left}.swiper-container-vertical>.swiper-wrapper{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;-o-transition-property:transform;transition-property:transform;transition-property:transform,-webkit-transform;-webkit-box-sizing:content-box;box-sizing:content-box}.swiper-container-android .swiper-slide,.swiper-wrapper{-webkit-transform:translateZ(0);transform:translateZ(0)}.swiper-container-multirow>.swiper-wrapper{-ms-flex-wrap:wrap;flex-wrap:wrap}.swiper-container-free-mode>.swiper-wrapper{-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out;margin:0 auto}.swiper-slide{-ms-flex-negative:0;flex-shrink:0;width:100%;height:100%;position:relative}.swiper-container-autoheight,.swiper-container-autoheight .swiper-slide{height:auto}.swiper-container-autoheight .swiper-wrapper{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-transition-property:height,-webkit-transform;transition-property:height,-webkit-transform;-o-transition-property:transform,height;transition-property:transform,height;transition-property:transform,height,-webkit-transform}.swiper-container .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}.swiper-wp8-horizontal{-ms-touch-action:pan-y;touch-action:pan-y}.swiper-wp8-vertical{-ms-touch-action:pan-x;touch-action:pan-x}.swiper-button-next,.swiper-button-prev{position:absolute;top:50%;width:27px;height:44px;margin-top:-22px;z-index:10;cursor:pointer;-webkit-background-size:27px 44px;background-size:27px 44px;background:no-repeat 50%}.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}.swiper-button-prev,.swiper-container-rtl .swiper-button-next{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z' fill='%23007aff'/%3E%3C/svg%3E");left:10px;right:auto}.swiper-button-prev.swiper-button-black,.swiper-container-rtl .swiper-button-next.swiper-button-black{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z'/%3E%3C/svg%3E")}.swiper-button-prev.swiper-button-white,.swiper-container-rtl .swiper-button-next.swiper-button-white{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z' fill='%23fff'/%3E%3C/svg%3E")}.swiper-button-next,.swiper-container-rtl .swiper-button-prev{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z' fill='%23007aff'/%3E%3C/svg%3E");right:10px;left:auto}.swiper-button-next.swiper-button-black,.swiper-container-rtl .swiper-button-prev.swiper-button-black{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z'/%3E%3C/svg%3E")}.swiper-button-next.swiper-button-white,.swiper-container-rtl .swiper-button-prev.swiper-button-white{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z' fill='%23fff'/%3E%3C/svg%3E")}.swiper-pagination{position:absolute;text-align:center;-webkit-transition:.3s;-o-transition:.3s;transition:.3s;-webkit-transform:translateZ(0);transform:translateZ(0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-container-horizontal>.swiper-pagination-bullets,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:5px;left:0;width:100%}.swiper-pagination-bullet{width:6px;height:6px;display:inline-block;-webkit-border-radius:50%;border-radius:50%;background:#000;opacity:.2}.swiper-pagination-fraction{color:#000}button.swiper-pagination-bullet{border:none;margin:0;padding:0;-webkit-box-shadow:none;box-shadow:none;appearance:none;-webkit-appearance:none;-moz-appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-white .swiper-pagination-bullet{background:#fff}.swiper-pagination-bullet-active{opacity:1}.swiper-pagination-white .swiper-pagination-bullet-active{background:#fff}.swiper-pagination-black .swiper-pagination-bullet-active{background:#000}.swiper-container-vertical>.swiper-pagination-bullets{right:10px;top:50%;-webkit-transform:translate3d(0,-50%,0);transform:translate3d(0,-50%,0)}.swiper-container-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{margin:5px 0;display:block}.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 6px}.swiper-pagination-progressbar{background:rgba(0,0,0,.25);position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:#000;position:absolute;left:0;top:0;width:100%;height:100%;-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);-webkit-transform-origin:left top;-ms-transform-origin:left top;transform-origin:left top}.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{-webkit-transform-origin:right top;-ms-transform-origin:right top;transform-origin:right top}.swiper-container-horizontal>.swiper-pagination-progressbar{width:100%;height:4px;left:0;top:0}.swiper-container-vertical>.swiper-pagination-progressbar{width:4px;height:100%;left:0;top:0}.swiper-pagination-progressbar.swiper-pagination-white{background:hsla(0,0%,100%,.5)}.swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill{background:#fff}.swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill{background:#000}.swiper-container-3d{-webkit-perspective:1200px;perspective:1200px}.swiper-container-3d .swiper-cube-shadow,.swiper-container-3d .swiper-slide,.swiper-container-3d .swiper-slide-shadow-bottom,.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top,.swiper-container-3d .swiper-wrapper{-webkit-transform-style:preserve-3d;transform-style:preserve-3d}.swiper-container-3d .swiper-slide-shadow-bottom,.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-container-3d .swiper-slide-shadow-left{background-image:-webkit-gradient(linear,right top,left top,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(right,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(right,rgba(0,0,0,.5),transparent);background-image:linear-gradient(270deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-right{background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(left,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(left,rgba(0,0,0,.5),transparent);background-image:linear-gradient(90deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-top{background-image:-webkit-gradient(linear,left bottom,left top,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(bottom,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(bottom,rgba(0,0,0,.5),transparent);background-image:linear-gradient(0deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-bottom{background-image:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(top,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(top,rgba(0,0,0,.5),transparent);background-image:linear-gradient(180deg,rgba(0,0,0,.5),transparent)}.swiper-container-coverflow .swiper-wrapper,.swiper-container-flip .swiper-wrapper{-ms-perspective:1200px}.swiper-container-cube,.swiper-container-flip{overflow:visible}.swiper-container-cube .swiper-slide,.swiper-container-flip .swiper-slide{pointer-events:none;z-index:1}.swiper-container-cube .swiper-slide .swiper-slide,.swiper-container-flip .swiper-slide .swiper-slide{pointer-events:none}.swiper-container-cube .swiper-slide-active,.swiper-container-cube .swiper-slide-active .swiper-slide-active,.swiper-container-flip .swiper-slide-active,.swiper-container-flip .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-container-cube .swiper-slide-shadow-bottom,.swiper-container-cube .swiper-slide-shadow-left,.swiper-container-cube .swiper-slide-shadow-right,.swiper-container-cube .swiper-slide-shadow-top,.swiper-container-flip .swiper-slide-shadow-bottom,.swiper-container-flip .swiper-slide-shadow-left,.swiper-container-flip .swiper-slide-shadow-right,.swiper-container-flip .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-container-cube .swiper-slide{visibility:hidden;-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0;width:100%;height:100%}.swiper-container-cube.swiper-container-rtl .swiper-slide{-webkit-transform-origin:100% 0;-ms-transform-origin:100% 0;transform-origin:100% 0}.swiper-container-cube .swiper-slide-active,.swiper-container-cube .swiper-slide-next,.swiper-container-cube .swiper-slide-next+.swiper-slide,.swiper-container-cube .swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-container-cube .swiper-cube-shadow{position:absolute;left:0;bottom:0;width:100%;height:100%;background:#000;opacity:.6;-webkit-filter:blur(50px);filter:blur(50px);z-index:0}.swiper-container-fade.swiper-container-free-mode .swiper-slide{-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out}.swiper-container-fade .swiper-slide{pointer-events:none;-webkit-transition-property:opacity;-o-transition-property:opacity;transition-property:opacity}.swiper-container-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-container-fade .swiper-slide-active,.swiper-container-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-zoom-container{width:100%;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;text-align:center}.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{max-width:100%;max-height:100%;-o-object-fit:contain;object-fit:contain}.swiper-scrollbar{-webkit-border-radius:10px;border-radius:10px;position:relative;-ms-touch-action:none;background:rgba(0,0,0,.1)}.swiper-container-horizontal>.swiper-scrollbar{position:absolute;left:1%;bottom:3px;z-index:50;height:5px;width:98%}.swiper-container-vertical>.swiper-scrollbar{position:absolute;right:3px;top:1%;z-index:50;width:5px;height:98%}.swiper-scrollbar-drag{height:100%;width:100%;position:relative;background:rgba(0,0,0,.5);-webkit-border-radius:10px;border-radius:10px;left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.elementor-pagination-position-outside .swiper-container{padding-bottom:30px}.elementor-pagination-position-outside .elementor-swiper-button{top:calc(50% - 30px / 2)}.elementor-swiper{position:relative}.elementor-main-swiper{position:static}.elementor-arrows-position-outside .swiper-container{width:calc(100% - 60px)}.elementor-arrows-position-outside .elementor-swiper-button-prev{left:0}.elementor-arrows-position-outside .elementor-swiper-button-next{right:0}.swiper-image-stretch .swiper-slide .swiper-slide-image{width:100%}.elementor-swiper-button{position:absolute;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;z-index:1;cursor:pointer;font-size:25px;color:hsla(0,0%,93.3%,.9);top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}.elementor-swiper-button-prev{left:10px}.elementor-swiper-button-next{right:10px}.elementor-swiper-button.swiper-button-disabled{opacity:.3}.swiper-container-cube .elementor-swiper-button{-webkit-transform:translate3d(0,-50%,1px);transform:translate3d(0,-50%,1px)}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;-webkit-transform-origin:50%;-ms-transform-origin:50%;transform-origin:50%;-webkit-animation:swiper-preloader-spin 1s steps(12) infinite;animation:swiper-preloader-spin 1s steps(12) infinite}.swiper-lazy-preloader:after{display:block;content:"";width:100%;height:100%;-webkit-background-size:100% 100%;background-size:100%;background:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath id='a' stroke='%236c6c6c' stroke-width='11' stroke-linecap='round' d='M60 7v20'/%3E%3C/defs%3E%3Cuse xlink:href='%23a' opacity='.27'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(30 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(60 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(90 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(120 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(150 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.37' transform='rotate(180 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.46' transform='rotate(210 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.56' transform='rotate(240 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.66' transform='rotate(270 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.75' transform='rotate(300 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.85' transform='rotate(330 60 60)'/%3E%3C/svg%3E") no-repeat 50%}.swiper-lazy-preloader-white:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath id='a' stroke='%23fff' stroke-width='11' stroke-linecap='round' d='M60 7v20'/%3E%3C/defs%3E%3Cuse xlink:href='%23a' opacity='.27'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(30 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(60 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(90 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(120 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(150 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.37' transform='rotate(180 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.46' transform='rotate(210 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.56' transform='rotate(240 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.66' transform='rotate(270 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.75' transform='rotate(300 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.85' transform='rotate(330 60 60)'/%3E%3C/svg%3E")}@-webkit-keyframes swiper-preloader-spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes swiper-preloader-spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.elementor-lightbox{--lightbox-ui-color:hsla(0,0%,93.3%,0.9);--lightbox-ui-color-hover:#fff;--lightbox-text-color:var(--lightbox-ui-color);--lightbox-header-icons-size:20px;--lightbox-navigation-icons-size:25px}.elementor-lightbox .dialog-header{display:none}.elementor-lightbox .dialog-widget-content{background:none;-webkit-box-shadow:none;box-shadow:none;width:100%;height:100%}.elementor-lightbox .dialog-message{-webkit-animation-duration:.3s;animation-duration:.3s}.elementor-lightbox .dialog-message:not(.elementor-fit-aspect-ratio){height:100%}.elementor-lightbox .dialog-message.dialog-lightbox-message{padding:0}.elementor-lightbox .dialog-lightbox-close-button{cursor:pointer;position:absolute;font-size:var(--lightbox-header-icons-size);right:.75em;margin-top:13px;padding:.25em;z-index:2;line-height:1}.elementor-lightbox .dialog-lightbox-close-button,.elementor-lightbox .elementor-swiper-button{color:var(--lightbox-ui-color);-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;opacity:1}.elementor-lightbox .dialog-lightbox-close-button:hover,.elementor-lightbox .elementor-swiper-button:hover{color:var(--lightbox-ui-color-hover)}.elementor-lightbox .swiper-container{height:100%}.elementor-lightbox .elementor-lightbox-item{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;position:relative;padding:70px;-webkit-box-sizing:border-box;box-sizing:border-box;height:100%;margin:auto}@media (max-width:767px){.elementor-lightbox .elementor-lightbox-item{padding:70px 0}}.elementor-lightbox .elementor-lightbox-image{max-height:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.elementor-lightbox .elementor-lightbox-image,.elementor-lightbox .elementor-lightbox-image:hover{opacity:1;-webkit-filter:none;filter:none;border:none}.elementor-lightbox .elementor-lightbox-image,.elementor-lightbox .elementor-video-container{-webkit-box-shadow:0 0 30px rgba(0,0,0,.3),0 0 8px -5px rgba(0,0,0,.3);box-shadow:0 0 30px rgba(0,0,0,.3),0 0 8px -5px rgba(0,0,0,.3);-webkit-border-radius:2px;border-radius:2px}.elementor-lightbox .elementor-video-container{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}@media (min-width:1025px){.elementor-lightbox .elementor-video-container{width:75%}}@media (max-width:1024px){.elementor-lightbox .elementor-video-container{width:100%}}@media (min-width:768px) and (max-width:1024px){.elementor-lightbox .elementor-aspect-ratio-916 .elementor-video-container{width:70%}}.elementor-lightbox .elementor-swiper-button:focus{outline-width:1px}.elementor-lightbox .elementor-swiper-button-next,.elementor-lightbox .elementor-swiper-button-prev{height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:15%;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;font-size:var(--lightbox-navigation-icons-size)}.elementor-lightbox .elementor-swiper-button-prev{left:0}.elementor-lightbox .elementor-swiper-button-next{right:0}@media (max-width:767px){.elementor-lightbox .elementor-swiper-button:focus{outline:none}.elementor-lightbox .elementor-swiper-button-next,.elementor-lightbox .elementor-swiper-button-prev{width:20%}.elementor-lightbox .elementor-swiper-button-next i,.elementor-lightbox .elementor-swiper-button-prev i{padding:10px;background-color:rgba(0,0,0,.5)}.elementor-lightbox .elementor-swiper-button-prev{left:0;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-lightbox .elementor-swiper-button-next{right:0;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}}.elementor-slideshow__counter{color:currentColor;font-size:.75em;width:-webkit-max-content;width:-moz-max-content;width:max-content}.elementor-slideshow__footer,.elementor-slideshow__header{position:absolute;left:0;width:100%;padding:15px 20px;-webkit-transition:.3s;-o-transition:.3s;transition:.3s}.elementor-slideshow__footer{color:var(--lightbox-text-color)}.elementor-slideshow__header{color:var(--lightbox-ui-color);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;font-size:var(--lightbox-header-icons-size);padding-left:1em;padding-right:2.6em;top:0;-webkit-box-align:center;-ms-flex-align:center;align-items:center;z-index:10}.elementor-slideshow__header>i{font-size:inherit;cursor:pointer;padding:.25em;margin:0 .35em}.elementor-slideshow__header>i:hover{color:var(--lightbox-ui-color-hover)}.elementor-slideshow__header .elementor-slideshow__counter{margin-right:auto}.elementor-slideshow__header .elementor-icon-share{z-index:5}.elementor-slideshow__share-menu{background-color:transparent;width:0;height:0;position:absolute;overflow:hidden;-webkit-transition:background-color .4s;-o-transition:background-color .4s;transition:background-color .4s}.elementor-slideshow__share-menu .elementor-slideshow__share-links a{color:#2c2c2c}.elementor-slideshow__share-links{display:block;position:absolute;min-width:200px;right:2.8em;top:3em;background-color:#fff;-webkit-border-radius:3px;border-radius:3px;padding:14px 20px;-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);opacity:0;-webkit-transform-origin:90% 10%;-ms-transform-origin:90% 10%;transform-origin:90% 10%;-webkit-transition:all .25s .1s;-o-transition:all .25s .1s;transition:all .25s .1s;-webkit-box-shadow:0 4px 15px rgba(0,0,0,.3);box-shadow:0 4px 15px rgba(0,0,0,.3)}.elementor-slideshow__share-links a{text-align:left;color:#55595c;font-size:12px;line-height:2.5;display:block;opacity:0;-webkit-transition:opacity .5s .1s;-o-transition:opacity .5s .1s;transition:opacity .5s .1s}.elementor-slideshow__share-links a:hover{color:#000}.elementor-slideshow__share-links a i{font-size:1.25em;margin-right:.75em}.elementor-slideshow__share-links:before{content:"";display:block;position:absolute;top:1px;right:.5em;border:.45em solid transparent;border-bottom-color:#fff;-webkit-transform:translateY(-100%) scaleX(.7);-ms-transform:translateY(-100%) scaleX(.7);transform:translateY(-100%) scaleX(.7)}.elementor-slideshow__footer{bottom:0;z-index:5;position:fixed}.elementor-slideshow__description,.elementor-slideshow__title{margin:0}.elementor-slideshow__title{font-size:16px;font-weight:700}.elementor-slideshow__description{font-size:14px}.elementor-slideshow--ui-hidden .elementor-slideshow__footer,.elementor-slideshow--ui-hidden .elementor-slideshow__header{opacity:0;pointer-events:none}.elementor-slideshow--ui-hidden .elementor-swiper-button-next,.elementor-slideshow--ui-hidden .elementor-swiper-button-prev{opacity:0}.elementor-slideshow--fullscreen-mode .elementor-video-container{width:100%}.elementor-slideshow--zoom-mode .elementor-slideshow__footer,.elementor-slideshow--zoom-mode .elementor-slideshow__header{background-color:rgba(0,0,0,.5)}.elementor-slideshow--zoom-mode .elementor-swiper-button-next,.elementor-slideshow--zoom-mode .elementor-swiper-button-prev{opacity:0;pointer-events:none}.elementor-slideshow--share-mode .elementor-slideshow__share-menu{top:0;left:0;width:100vw;height:100vh;opacity:1;cursor:default;background-color:rgba(0,0,0,.5)}.elementor-slideshow--share-mode .elementor-slideshow__share-links{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}.elementor-slideshow--share-mode .elementor-slideshow__share-links,.elementor-slideshow--share-mode .elementor-slideshow__share-links a{opacity:1}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-twitter{color:#1da1f2}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-facebook{color:#3b5998}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-pinterest{color:#bd081c}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-download-bold{color:#a4afb7}.elementor-slideshow--share-mode .eicon-share-arrow{z-index:2}.animated{-webkit-animation-duration:1.25s;animation-duration:1.25s}.animated.animated-slow{-webkit-animation-duration:2s;animation-duration:2s}.animated.animated-fast{-webkit-animation-duration:.75s;animation-duration:.75s}.animated.infinite{-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}.animated.reverse{animation-direction:reverse;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}@media (prefers-reduced-motion:reduce){.animated{-webkit-animation:none;animation:none}}.elementor-shape{overflow:hidden;position:absolute;left:0;width:100%;line-height:0;direction:ltr}.elementor-shape-top{top:-1px}.elementor-shape-top:not([data-negative=false]) svg{z-index:-1}.elementor-shape-bottom{bottom:-1px}.elementor-shape-bottom:not([data-negative=true]) svg{z-index:-1}.elementor-shape[data-negative=false].elementor-shape-bottom,.elementor-shape[data-negative=true].elementor-shape-top{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.elementor-shape svg{display:block;width:calc(100% + 1.3px);position:relative;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.elementor-shape .elementor-shape-fill{fill:#fff;-webkit-transform-origin:center;-ms-transform-origin:center;transform-origin:center;-webkit-transform:rotateY(0deg);transform:rotateY(0deg)}#wp-admin-bar-elementor_edit_page .ab-submenu .ab-item{display:-webkit-box;display:-ms-flexbox;display:flex;width:200px}#wp-admin-bar-elementor_edit_page .elementor-edit-link-title{white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;width:100%}#wp-admin-bar-elementor_edit_page .elementor-edit-link-type{background:#55595c;font-size:11px;line-height:9px;margin-top:6px;padding:4px 8px;-webkit-border-radius:3px;border-radius:3px}.page-template-elementor_canvas.elementor-page:before{display:none}.elementor-post__thumbnail__link{-webkit-transition:none;-o-transition:none;transition:none}#left-area ul.elementor-icon-list-items,.elementor-edit-area .elementor-element ul.elementor-icon-list-items,.elementor .elementor-element ul.elementor-icon-list-items{padding:0}#wpadminbar *{font-style:normal}.e--ua-appleWebkit.rtl{--flex-right:flex-start}.e--ua-appleWebkit .elementor-share-buttons--align-right,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-right{--justify-content:var(--flex-right,flex-end)}.e--ua-appleWebkit .elementor-share-buttons--align-center,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-center{--justify-content:center}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-justify .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-right .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-right .elementor-grid{width:auto;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:var(--justify-content,space-between);-ms-flex-pack:var(--justify-content,space-between);justify-content:var(--justify-content,space-between);margin-left:calc(-.5 * var(--grid-column-gap));margin-right:calc(-.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-justify .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-right .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-right .elementor-grid-item{margin-left:calc(.5 * var(--grid-column-gap));margin-right:calc(.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid{display:inline-block}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid-item{margin-left:0;margin-right:0}@media (max-width:1024px){.e--ua-appleWebkit .elementor-share-buttons-tablet--align-right,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-tablet-right{--justify-content:var(--flex-right,flex-end)}.e--ua-appleWebkit .elementor-share-buttons-tablet--align-center,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-tablet-center{--justify-content:center}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-justify .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-right .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-right .elementor-grid{width:auto;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:var(--justify-content,space-between);-ms-flex-pack:var(--justify-content,space-between);justify-content:var(--justify-content,space-between);margin-left:calc(-.5 * var(--grid-column-gap));margin-right:calc(-.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-justify .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-right .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-right .elementor-grid-item{margin-left:calc(.5 * var(--grid-column-gap));margin-right:calc(.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid{display:inline-block}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid-item{margin-left:0;margin-right:0}}@media (max-width:767px){.e--ua-appleWebkit .elementor-share-buttons-mobile--align-right,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-mobile-right{--justify-content:var(--flex-right,flex-end)}.e--ua-appleWebkit .elementor-share-buttons-mobile--align-center,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-mobile-center{--justify-content:center}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-justify .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-right .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-right .elementor-grid{width:auto;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:var(--justify-content,space-between);-ms-flex-pack:var(--justify-content,space-between);justify-content:var(--justify-content,space-between);margin-left:calc(-.5 * var(--grid-column-gap));margin-right:calc(-.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-justify .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-right .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-right .elementor-grid-item{margin-left:calc(.5 * var(--grid-column-gap));margin-right:calc(.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid{display:inline-block}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid-item{margin-left:0;margin-right:0}}@media (max-width:767px){.elementor .elementor-hidden-mobile,.elementor .elementor-hidden-phone{display:none}}@media (min-width:-1px) and (max-width:-1px){.elementor .elementor-hidden-mobile_extra{display:none}}@media (min-width:768px) and (max-width:1024px){.elementor .elementor-hidden-tablet{display:none}}@media (min-width:-1px) and (max-width:-1px){.elementor .elementor-hidden-laptop,.elementor .elementor-hidden-tablet_extra{display:none}}@media (min-width:1025px) and (max-width:99999px){.elementor .elementor-hidden-desktop{display:none}}@media (min-width:-1px){.elementor .elementor-hidden-widescreen{display:none}}.elementor-widget-text-path{font-size:20px;text-align:var(--alignment,left)}.elementor-widget-text-path svg{width:var(--width);max-width:100%;height:auto;overflow:visible;word-spacing:var(--word-spacing);-webkit-transform:rotate(var(--rotate,0)) scaleX(var(--scale-x,1)) scaleY(var(--scale-y,1));-ms-transform:rotate(var(--rotate,0)) scaleX(var(--scale-x,1)) scaleY(var(--scale-y,1));transform:rotate(var(--rotate,0)) scaleX(var(--scale-x,1)) scaleY(var(--scale-y,1))}.elementor-widget-text-path svg path{vector-effect:non-scaling-stroke;fill:var(--path-fill,transparent);stroke:var(--stroke-color,transparent);stroke-width:var(--stroke-width,1px);-webkit-transition:var(--stroke-transition) stroke,var(--stroke-transition) fill;-o-transition:var(--stroke-transition) stroke,var(--stroke-transition) fill;transition:var(--stroke-transition) stroke,var(--stroke-transition) fill}.elementor-widget-text-path svg:hover path{--path-fill:var(--path-fill-hover);--stroke-color:var(--stroke-color-hover);--stroke-width:var(--stroke-width-hover)}.elementor-widget-text-path svg text{--fill:var(--text-color);fill:var(--fill);direction:var(--direction,ltr);-webkit-transition:var(--transition) stroke,var(--transition) stroke-width,var(--transition) fill;-o-transition:var(--transition) stroke,var(--transition) stroke-width,var(--transition) fill;transition:var(--transition) stroke,var(--transition) stroke-width,var(--transition) fill}.elementor-widget-text-path svg text:hover{--color:var(--text-color-hover,var(--text-color));--fill:var(--color);color:var(--color)}assets/css/frontend-lite.css000064400000340263151327220410012127 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.dialog-widget-content {
  background-color: #fff;
  position: absolute;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  -webkit-box-shadow: 2px 8px 23px 3px rgba(0, 0, 0, 0.2);
          box-shadow: 2px 8px 23px 3px rgba(0, 0, 0, 0.2);
  overflow: hidden; }

.dialog-message {
  font-size: 12px;
  line-height: 1.5;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

.dialog-type-lightbox {
  position: fixed;
  height: 100%;
  width: 100%;
  bottom: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 9999;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none; }
  .dialog-type-lightbox .dialog-widget-content {
    margin: auto;
    width: 375px; }
  .dialog-type-lightbox .dialog-header {
    font-size: 15px;
    color: #495157;
    padding: 30px 0 10px;
    font-weight: 500; }
  .dialog-type-lightbox .dialog-message {
    padding: 0 30px 30px;
    min-height: 50px; }
  .dialog-type-lightbox:not(.elementor-popup-modal) .dialog-header,
  .dialog-type-lightbox:not(.elementor-popup-modal) .dialog-message {
    text-align: center; }
  .dialog-type-lightbox .dialog-buttons-wrapper {
    border-top: 1px solid #e6e9ec;
    text-align: center; }
    .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button {
      font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
      width: 50%;
      border: none;
      background: none;
      color: #6d7882;
      font-size: 15px;
      cursor: pointer;
      padding: 13px 0;
      outline: 0; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button:hover {
        background-color: #f4f6f7; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button.dialog-ok {
        color: #b01b1b; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button.dialog-take_over {
        color: #39b54a; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button:active {
        background-color: rgba(230, 233, 236, 0.5); }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button::-moz-focus-inner {
        border: 0; }

.dialog-close-button {
  cursor: pointer;
  position: absolute;
  margin-top: 15px;
  right: 15px;
  font-size: 15px;
  line-height: 1; }
  .dialog-close-button:not(:hover) {
    opacity: .4; }

.dialog-alert-widget .dialog-buttons-wrapper > button {
  width: 100%; }

.dialog-confirm-widget .dialog-button:first-child {
  border-right: 1px solid #e6e9ec; }

.dialog-prevent-scroll {
  overflow: hidden;
  max-height: 100vh; }

@media (min-width: 1024px) {
  body.admin-bar .dialog-lightbox-widget {
    height: calc(100vh - 32px); } }

@media (max-width: 1024px) {
  body.admin-bar .dialog-type-lightbox {
    position: -webkit-sticky;
    position: sticky;
    height: 100vh; } }

.elementor-aspect-ratio-219 .elementor-fit-aspect-ratio {
  padding-bottom: 42.8571%; }

.elementor-aspect-ratio-169 .elementor-fit-aspect-ratio {
  padding-bottom: 56.25%; }

.elementor-aspect-ratio-43 .elementor-fit-aspect-ratio {
  padding-bottom: 75%; }

.elementor-aspect-ratio-32 .elementor-fit-aspect-ratio {
  padding-bottom: 66.6666%; }

.elementor-aspect-ratio-11 .elementor-fit-aspect-ratio {
  padding-bottom: 100%; }

.elementor-aspect-ratio-916 .elementor-fit-aspect-ratio {
  padding-bottom: 177.8%; }

.elementor-fit-aspect-ratio {
  position: relative;
  height: 0; }
  .elementor-fit-aspect-ratio iframe {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    border: 0;
    background-color: #000; }
  .elementor-fit-aspect-ratio video {
    width: 100%; }

.flatpickr-calendar {
  width: 280px; }
  .flatpickr-calendar .flatpickr-current-month span.cur-month {
    font-weight: 300; }
  .flatpickr-calendar .dayContainer {
    width: 280px;
    min-width: 280px;
    max-width: 280px; }
  .flatpickr-calendar .flatpickr-days {
    width: 280px; }
  .flatpickr-calendar .flatpickr-day {
    max-width: 37px;
    height: 37px;
    line-height: 37px; }

.elementor-templates-modal .dialog-widget-content {
  font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
  background-color: #f1f3f5;
  width: 100%; }
  @media (max-width: 1439px) {
    .elementor-templates-modal .dialog-widget-content {
      max-width: 990px; } }
  @media (min-width: 1440px) {
    .elementor-templates-modal .dialog-widget-content {
      max-width: 1200px; } }

.elementor-templates-modal .dialog-header {
  padding: 0;
  background-color: #fff;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
  position: relative;
  z-index: 1; }

.elementor-templates-modal .dialog-buttons-wrapper {
  background-color: #fff;
  border: none;
  display: none;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  padding: 5px;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
  position: relative; }
  .elementor-templates-modal .dialog-buttons-wrapper .elementor-button {
    height: 40px;
    margin-left: 5px; }
    .elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success {
      padding: 12px 36px;
      color: #fff;
      width: initial;
      font-size: 15px; }
      .elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success:hover {
        background-color: #39b54a; }

.elementor-templates-modal .dialog-message {
  height: 750px;
  max-height: 85vh;
  overflow: auto;
  padding-top: 25px; }

.elementor-templates-modal .dialog-content {
  height: 100%; }

.elementor-templates-modal .dialog-loading {
  display: none; }

.elementor-templates-modal__header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  height: 50px; }
  .elementor-templates-modal__header__logo {
    line-height: 1;
    text-transform: uppercase;
    font-weight: bold;
    cursor: pointer; }
    .elementor-templates-modal__header__logo-area {
      text-align: left;
      padding-left: 15px; }
      .elementor-templates-modal__header__logo-area > * {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center; }
    .elementor-templates-modal__header__logo__icon-wrapper {
      margin-right: 10px;
      font-size: 12px; }
    .elementor-templates-modal__header__logo__title {
      padding-top: 2px; }
  .elementor-templates-modal__header__items-area {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .elementor-templates-modal__header__item {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-sizing: content-box;
            box-sizing: content-box; }
    .elementor-templates-modal__header__item > i {
      font-size: 20px;
      -webkit-transition: all 0.3s;
      -o-transition: all 0.3s;
      transition: all 0.3s;
      cursor: pointer; }
      .elementor-templates-modal__header__item > i:not(:hover) {
        color: #a4afb7; }
  .elementor-templates-modal__header__close--normal {
    width: 47px;
    border-left: 1px solid #e6e9ec; }
    .elementor-templates-modal__header__close--normal i {
      font-size: 18px; }
  .elementor-templates-modal__header__close--skip {
    padding: 10px;
    padding-left: 20px;
    margin-right: 10px;
    color: #fff;
    background-color: #a4afb7;
    font-size: 11px;
    font-weight: normal;
    line-height: 1;
    text-transform: uppercase;
    -webkit-border-radius: 2px;
            border-radius: 2px;
    cursor: pointer; }
    .elementor-templates-modal__header__close--skip > i {
      font-size: inherit;
      padding-left: 10px;
      margin-left: 15px;
      border-left: 1px solid; }
      .elementor-templates-modal__header__close--skip > i:not(:hover) {
        color: #fff; }

.elementor-templates-modal__sidebar {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 25%;
  background-color: rgba(255, 255, 255, 0.3); }

.elementor-templates-modal__content {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-box-shadow: 0 0 13px inset rgba(0, 0, 0, 0.05);
          box-shadow: 0 0 13px inset rgba(0, 0, 0, 0.05); }

/* Will select next element after last '.elementor-general-section' */
#wpadminbar #wp-admin-bar-elementor_edit_page .elementor-general-section + .elementor-second-section {
  border-top: 1px solid #464b50;
  margin-top: 6px; }

.elementor-hidden {
  display: none; }

.elementor-screen-only,
.screen-reader-text,
.screen-reader-text span,
.ui-helper-hidden-accessible {
  position: absolute;
  top: -10000em;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0; }

.elementor-clearfix:after {
  content: '';
  display: block;
  clear: both;
  width: 0;
  height: 0; }

.e-logo-wrapper {
  background: #93003c;
  display: inline-block;
  padding: 0.75em;
  -webkit-border-radius: 50%;
          border-radius: 50%;
  line-height: 1; }
  .e-logo-wrapper i {
    color: #fff;
    font-size: 1em; }

.elementor {
  -webkit-hyphens: manual;
      -ms-hyphens: manual;
          hyphens: manual; }
  .elementor *, .elementor *:before, .elementor *:after {
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
  .elementor a {
    -webkit-box-shadow: none;
            box-shadow: none;
    text-decoration: none; }
  .elementor hr {
    margin: 0;
    background-color: transparent; }
  .elementor img {
    height: auto;
    max-width: 100%;
    border: none;
    -webkit-border-radius: 0;
            border-radius: 0;
    -webkit-box-shadow: none;
            box-shadow: none; }
  .elementor .elementor-widget:not(.elementor-widget-text-editor):not(.elementor-widget-theme-post-content) figure {
    margin: 0; }
  .elementor embed,
  .elementor iframe,
  .elementor object,
  .elementor video {
    max-width: 100%;
    width: 100%;
    margin: 0;
    line-height: 1;
    border: none; }
  .elementor .elementor-custom-embed {
    line-height: 0; }
  .elementor .elementor-background-video-container,
  .elementor .elementor-background-holder,
  .elementor .elementor-background {
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    position: absolute;
    overflow: hidden;
    z-index: 0;
    direction: ltr; }
  .elementor .elementor-background-video-container {
    -webkit-transition: opacity 1s;
    -o-transition: opacity 1s;
    transition: opacity 1s;
    pointer-events: none; }
    .elementor .elementor-background-video-container.elementor-loading {
      opacity: 0; }
  .elementor .elementor-background-video-embed {
    max-width: none; }
  .elementor .elementor-background-video-embed, .elementor .elementor-background-video-hosted {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }
  .elementor .elementor-background-video {
    max-width: none;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }
  .elementor .elementor-html5-video {
    -o-object-fit: cover;
       object-fit: cover; }
  .elementor .elementor-background-overlay {
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    position: absolute; }
  .elementor .elementor-background-slideshow {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 0;
    top: 0;
    left: 0; }
    .elementor .elementor-background-slideshow__slide__image {
      width: 100%;
      height: 100%;
      background-position: center center;
      -webkit-background-size: cover;
              background-size: cover; }

.elementor-widget-wrap > .elementor-element.elementor-absolute {
  position: absolute; }
  .elementor-column > .elementor-widget-wrap > .elementor-element.elementor-absolute {
    padding: inherit;
    -webkit-box-sizing: content-box;
            box-sizing: content-box; }

.elementor-widget-wrap > .elementor-element.elementor-fixed {
  position: fixed; }

.elementor-widget-wrap .elementor-element.elementor-widget__width-auto, .elementor-widget-wrap .elementor-element.elementor-widget__width-initial {
  max-width: 100%; }

@media (max-width: 1024px) {
  .elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-auto, .elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-initial {
    max-width: 100%; } }

@media (max-width: 767px) {
  .elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-auto, .elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-initial {
    max-width: 100%; } }

.elementor-element.elementor-absolute, .elementor-element.elementor-fixed {
  z-index: 1; }

.elementor-invisible {
  visibility: hidden; }

.elementor-align-center {
  text-align: center; }
  .elementor-align-center .elementor-button {
    width: auto; }

.elementor-align-right {
  text-align: right; }
  .elementor-align-right .elementor-button {
    width: auto; }

.elementor-align-left {
  text-align: left; }
  .elementor-align-left .elementor-button {
    width: auto; }

.elementor-align-justify .elementor-button {
  width: 100%; }

.elementor-custom-embed-play {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%); }
  .elementor-custom-embed-play i {
    font-size: 100px;
    color: #fff;
    text-shadow: 1px 0 6px rgba(0, 0, 0, 0.3); }
  .elementor-custom-embed-play svg {
    height: 100px;
    width: 100px;
    fill: #fff;
    -webkit-filter: drop-shadow(1px 0 6px rgba(0, 0, 0, 0.3));
            filter: drop-shadow(1px 0 6px rgba(0, 0, 0, 0.3)); }
  .elementor-custom-embed-play i,
  .elementor-custom-embed-play svg {
    opacity: 0.8;
    -webkit-transition: all .5s;
    -o-transition: all .5s;
    transition: all .5s; }
  .elementor-custom-embed-play.elementor-playing i {
    font-family: eicons;
    -webkit-animation: fa-spin 2s infinite linear;
            animation: fa-spin 2s infinite linear; }
    .elementor-custom-embed-play.elementor-playing i:before {
      content: '\e8fb'; }

.elementor-tag {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex; }

.elementor-ken-burns {
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  -o-transition-property: transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transition-duration: 10s;
       -o-transition-duration: 10s;
          transition-duration: 10s;
  -webkit-transition-timing-function: linear;
       -o-transition-timing-function: linear;
          transition-timing-function: linear; }
  .elementor-ken-burns--out {
    -webkit-transform: scale(1.3);
        -ms-transform: scale(1.3);
            transform: scale(1.3); }
  .elementor-ken-burns--active {
    -webkit-transition-duration: 20s;
         -o-transition-duration: 20s;
            transition-duration: 20s; }
    .elementor-ken-burns--active.elementor-ken-burns--out {
      -webkit-transform: scale(1);
          -ms-transform: scale(1);
              transform: scale(1); }
    .elementor-ken-burns--active.elementor-ken-burns--in {
      -webkit-transform: scale(1.3);
          -ms-transform: scale(1.3);
              transform: scale(1.3); }

@media (min-width: -1px) {
  .elementor-widescreen-align-center {
    text-align: center; }
    .elementor-widescreen-align-center .elementor-button {
      width: auto; }
  .elementor-widescreen-align-right {
    text-align: right; }
    .elementor-widescreen-align-right .elementor-button {
      width: auto; }
  .elementor-widescreen-align-left {
    text-align: left; }
    .elementor-widescreen-align-left .elementor-button {
      width: auto; }
  .elementor-widescreen-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: -1px) {
  .elementor-laptop-align-center {
    text-align: center; }
    .elementor-laptop-align-center .elementor-button {
      width: auto; }
  .elementor-laptop-align-right {
    text-align: right; }
    .elementor-laptop-align-right .elementor-button {
      width: auto; }
  .elementor-laptop-align-left {
    text-align: left; }
    .elementor-laptop-align-left .elementor-button {
      width: auto; }
  .elementor-laptop-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: -1px) {
  .elementor-tablet_extra-align-center {
    text-align: center; }
    .elementor-tablet_extra-align-center .elementor-button {
      width: auto; }
  .elementor-tablet_extra-align-right {
    text-align: right; }
    .elementor-tablet_extra-align-right .elementor-button {
      width: auto; }
  .elementor-tablet_extra-align-left {
    text-align: left; }
    .elementor-tablet_extra-align-left .elementor-button {
      width: auto; }
  .elementor-tablet_extra-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: 1024px) {
  .elementor-tablet-align-center {
    text-align: center; }
    .elementor-tablet-align-center .elementor-button {
      width: auto; }
  .elementor-tablet-align-right {
    text-align: right; }
    .elementor-tablet-align-right .elementor-button {
      width: auto; }
  .elementor-tablet-align-left {
    text-align: left; }
    .elementor-tablet-align-left .elementor-button {
      width: auto; }
  .elementor-tablet-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: -1px) {
  .elementor-mobile_extra-align-center {
    text-align: center; }
    .elementor-mobile_extra-align-center .elementor-button {
      width: auto; }
  .elementor-mobile_extra-align-right {
    text-align: right; }
    .elementor-mobile_extra-align-right .elementor-button {
      width: auto; }
  .elementor-mobile_extra-align-left {
    text-align: left; }
    .elementor-mobile_extra-align-left .elementor-button {
      width: auto; }
  .elementor-mobile_extra-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: 767px) {
  .elementor-mobile-align-center {
    text-align: center; }
    .elementor-mobile-align-center .elementor-button {
      width: auto; }
  .elementor-mobile-align-right {
    text-align: right; }
    .elementor-mobile-align-right .elementor-button {
      width: auto; }
  .elementor-mobile-align-left {
    text-align: left; }
    .elementor-mobile-align-left .elementor-button {
      width: auto; }
  .elementor-mobile-align-justify .elementor-button {
    width: 100%; } }

#wpadminbar #wp-admin-bar-elementor_edit_page > .ab-item::before {
  content: "\e813";
  font-family: eicons;
  top: 3px;
  font-size: 18px; }

#wpadminbar #wp-admin-bar-elementor_inspector > .ab-item::before {
  content: "\f348";
  top: 2px; }

:root {
  --page-title-display: block; }

.elementor-page-title, h1.entry-title {
  display: var(--page-title-display); }

.elementor-section {
  position: relative; }
  .elementor-section .elementor-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-right: auto;
    margin-left: auto;
    position: relative; }
    @media (max-width: 1024px) {
      .elementor-section .elementor-container {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; } }
  .elementor-section.elementor-section-boxed > .elementor-container {
    max-width: 1140px; }
  .elementor-section.elementor-section-stretched {
    position: relative;
    width: 100%; }
  .elementor-section.elementor-section-items-top > .elementor-container {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start; }
  .elementor-section.elementor-section-items-middle > .elementor-container {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .elementor-section.elementor-section-items-bottom > .elementor-container {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end; }
  @media (min-width: 768px) {
    .elementor-section.elementor-section-height-full {
      height: 100vh; }
      .elementor-section.elementor-section-height-full > .elementor-container {
        height: 100%; } }

.elementor-bc-flex-widget .elementor-section-content-top > .elementor-container > .elementor-column > .elementor-widget-wrap {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; }

.elementor-bc-flex-widget .elementor-section-content-middle > .elementor-container > .elementor-column > .elementor-widget-wrap {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.elementor-bc-flex-widget .elementor-section-content-bottom > .elementor-container > .elementor-column > .elementor-widget-wrap {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end; }

.elementor-row {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media (max-width: 1024px) {
    .elementor-row {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; } }

.elementor-widget-wrap {
  position: relative;
  width: 100%;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-line-pack: start;
      align-content: flex-start; }
  .elementor:not(.elementor-bc-flex-widget) .elementor-widget-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .elementor-widget-wrap > .elementor-element {
    width: 100%; }

.elementor-widget {
  position: relative; }
  .elementor-widget:not(:last-child) {
    margin-bottom: 20px; }
    .elementor-widget:not(:last-child).elementor-widget__width-auto, .elementor-widget:not(:last-child).elementor-widget__width-initial, .elementor-widget:not(:last-child).elementor-absolute {
      margin-bottom: 0; }

.elementor-column {
  position: relative;
  min-height: 1px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.elementor-column-wrap {
  width: 100%;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.elementor-column-gap-narrow > .elementor-column > .elementor-element-populated {
  padding: 5px; }

.elementor-column-gap-default > .elementor-column > .elementor-element-populated {
  padding: 10px; }

.elementor-column-gap-extended > .elementor-column > .elementor-element-populated {
  padding: 15px; }

.elementor-column-gap-wide > .elementor-column > .elementor-element-populated {
  padding: 20px; }

.elementor-column-gap-wider > .elementor-column > .elementor-element-populated {
  padding: 30px; }

.elementor-inner-section .elementor-column-gap-no .elementor-element-populated {
  padding: 0; }

@media (min-width: 768px) {
  .elementor-column.elementor-col-10, .elementor-column[data-col="10"] {
    width: 10%; }
  .elementor-column.elementor-col-11, .elementor-column[data-col="11"] {
    width: 11.111%; }
  .elementor-column.elementor-col-12, .elementor-column[data-col="12"] {
    width: 12.5%; }
  .elementor-column.elementor-col-14, .elementor-column[data-col="14"] {
    width: 14.285%; }
  .elementor-column.elementor-col-16, .elementor-column[data-col="16"] {
    width: 16.666%; }
  .elementor-column.elementor-col-20, .elementor-column[data-col="20"] {
    width: 20%; }
  .elementor-column.elementor-col-25, .elementor-column[data-col="25"] {
    width: 25%; }
  .elementor-column.elementor-col-30, .elementor-column[data-col="30"] {
    width: 30%; }
  .elementor-column.elementor-col-33, .elementor-column[data-col="33"] {
    width: 33.333%; }
  .elementor-column.elementor-col-40, .elementor-column[data-col="40"] {
    width: 40%; }
  .elementor-column.elementor-col-50, .elementor-column[data-col="50"] {
    width: 50%; }
  .elementor-column.elementor-col-60, .elementor-column[data-col="60"] {
    width: 60%; }
  .elementor-column.elementor-col-66, .elementor-column[data-col="66"] {
    width: 66.666%; }
  .elementor-column.elementor-col-70, .elementor-column[data-col="70"] {
    width: 70%; }
  .elementor-column.elementor-col-75, .elementor-column[data-col="75"] {
    width: 75%; }
  .elementor-column.elementor-col-80, .elementor-column[data-col="80"] {
    width: 80%; }
  .elementor-column.elementor-col-83, .elementor-column[data-col="83"] {
    width: 83.333%; }
  .elementor-column.elementor-col-90, .elementor-column[data-col="90"] {
    width: 90%; }
  .elementor-column.elementor-col-100, .elementor-column[data-col="100"] {
    width: 100%; } }

@media (max-width: 479px) {
  .elementor-column.elementor-xs-10 {
    width: 10%; }
  .elementor-column.elementor-xs-11 {
    width: 11.111%; }
  .elementor-column.elementor-xs-12 {
    width: 12.5%; }
  .elementor-column.elementor-xs-14 {
    width: 14.285%; }
  .elementor-column.elementor-xs-16 {
    width: 16.666%; }
  .elementor-column.elementor-xs-20 {
    width: 20%; }
  .elementor-column.elementor-xs-25 {
    width: 25%; }
  .elementor-column.elementor-xs-30 {
    width: 30%; }
  .elementor-column.elementor-xs-33 {
    width: 33.333%; }
  .elementor-column.elementor-xs-40 {
    width: 40%; }
  .elementor-column.elementor-xs-50 {
    width: 50%; }
  .elementor-column.elementor-xs-60 {
    width: 60%; }
  .elementor-column.elementor-xs-66 {
    width: 66.666%; }
  .elementor-column.elementor-xs-70 {
    width: 70%; }
  .elementor-column.elementor-xs-75 {
    width: 75%; }
  .elementor-column.elementor-xs-80 {
    width: 80%; }
  .elementor-column.elementor-xs-83 {
    width: 83.333%; }
  .elementor-column.elementor-xs-90 {
    width: 90%; }
  .elementor-column.elementor-xs-100 {
    width: 100%; } }

@media (max-width: 767px) {
  .elementor-column.elementor-sm-10 {
    width: 10%; }
  .elementor-column.elementor-sm-11 {
    width: 11.111%; }
  .elementor-column.elementor-sm-12 {
    width: 12.5%; }
  .elementor-column.elementor-sm-14 {
    width: 14.285%; }
  .elementor-column.elementor-sm-16 {
    width: 16.666%; }
  .elementor-column.elementor-sm-20 {
    width: 20%; }
  .elementor-column.elementor-sm-25 {
    width: 25%; }
  .elementor-column.elementor-sm-30 {
    width: 30%; }
  .elementor-column.elementor-sm-33 {
    width: 33.333%; }
  .elementor-column.elementor-sm-40 {
    width: 40%; }
  .elementor-column.elementor-sm-50 {
    width: 50%; }
  .elementor-column.elementor-sm-60 {
    width: 60%; }
  .elementor-column.elementor-sm-66 {
    width: 66.666%; }
  .elementor-column.elementor-sm-70 {
    width: 70%; }
  .elementor-column.elementor-sm-75 {
    width: 75%; }
  .elementor-column.elementor-sm-80 {
    width: 80%; }
  .elementor-column.elementor-sm-83 {
    width: 83.333%; }
  .elementor-column.elementor-sm-90 {
    width: 90%; }
  .elementor-column.elementor-sm-100 {
    width: 100%; } }

@media (min-width: 768px) and (max-width: 1024px) {
  .elementor-column.elementor-md-10 {
    width: 10%; }
  .elementor-column.elementor-md-11 {
    width: 11.111%; }
  .elementor-column.elementor-md-12 {
    width: 12.5%; }
  .elementor-column.elementor-md-14 {
    width: 14.285%; }
  .elementor-column.elementor-md-16 {
    width: 16.666%; }
  .elementor-column.elementor-md-20 {
    width: 20%; }
  .elementor-column.elementor-md-25 {
    width: 25%; }
  .elementor-column.elementor-md-30 {
    width: 30%; }
  .elementor-column.elementor-md-33 {
    width: 33.333%; }
  .elementor-column.elementor-md-40 {
    width: 40%; }
  .elementor-column.elementor-md-50 {
    width: 50%; }
  .elementor-column.elementor-md-60 {
    width: 60%; }
  .elementor-column.elementor-md-66 {
    width: 66.666%; }
  .elementor-column.elementor-md-70 {
    width: 70%; }
  .elementor-column.elementor-md-75 {
    width: 75%; }
  .elementor-column.elementor-md-80 {
    width: 80%; }
  .elementor-column.elementor-md-83 {
    width: 83.333%; }
  .elementor-column.elementor-md-90 {
    width: 90%; }
  .elementor-column.elementor-md-100 {
    width: 100%; } }

@media (min-width: 768px) and (max-width: 1024px) {
  .elementor-reverse-tablet > .elementor-container > :nth-child(1) {
    -webkit-box-ordinal-group: 11;
        -ms-flex-order: 10;
            order: 10; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(2) {
    -webkit-box-ordinal-group: 10;
        -ms-flex-order: 9;
            order: 9; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(3) {
    -webkit-box-ordinal-group: 9;
        -ms-flex-order: 8;
            order: 8; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(4) {
    -webkit-box-ordinal-group: 8;
        -ms-flex-order: 7;
            order: 7; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(5) {
    -webkit-box-ordinal-group: 7;
        -ms-flex-order: 6;
            order: 6; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(6) {
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(7) {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(8) {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(9) {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(10) {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1; } }

@media (max-width: 767px) {
  .elementor-reverse-mobile > .elementor-container > :nth-child(1) {
    -webkit-box-ordinal-group: 11;
        -ms-flex-order: 10;
            order: 10; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(2) {
    -webkit-box-ordinal-group: 10;
        -ms-flex-order: 9;
            order: 9; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(3) {
    -webkit-box-ordinal-group: 9;
        -ms-flex-order: 8;
            order: 8; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(4) {
    -webkit-box-ordinal-group: 8;
        -ms-flex-order: 7;
            order: 7; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(5) {
    -webkit-box-ordinal-group: 7;
        -ms-flex-order: 6;
            order: 6; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(6) {
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(7) {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(8) {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(9) {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(10) {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1; }
  .elementor-column {
    width: 100%; } }

ul.elementor-icon-list-items.elementor-inline-items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  ul.elementor-icon-list-items.elementor-inline-items .elementor-inline-item {
    word-break: break-word; }

.elementor-grid {
  display: grid;
  grid-column-gap: var(--grid-column-gap);
  grid-row-gap: var(--grid-row-gap); }
  .elementor-grid .elementor-grid-item {
    min-width: 0; }
  .elementor-grid-0 .elementor-grid {
    display: inline-block;
    width: 100%;
    word-spacing: var(--grid-column-gap);
    margin-bottom: calc(-1 * var(--grid-row-gap)); }
    .elementor-grid-0 .elementor-grid .elementor-grid-item {
      display: inline-block;
      margin-bottom: var(--grid-row-gap);
      word-break: break-word; }
  .elementor-grid-1 .elementor-grid {
    grid-template-columns: repeat(1, 1fr); }
  .elementor-grid-2 .elementor-grid {
    grid-template-columns: repeat(2, 1fr); }
  .elementor-grid-3 .elementor-grid {
    grid-template-columns: repeat(3, 1fr); }
  .elementor-grid-4 .elementor-grid {
    grid-template-columns: repeat(4, 1fr); }
  .elementor-grid-5 .elementor-grid {
    grid-template-columns: repeat(5, 1fr); }
  .elementor-grid-6 .elementor-grid {
    grid-template-columns: repeat(6, 1fr); }
  .elementor-grid-7 .elementor-grid {
    grid-template-columns: repeat(7, 1fr); }
  .elementor-grid-8 .elementor-grid {
    grid-template-columns: repeat(8, 1fr); }
  .elementor-grid-9 .elementor-grid {
    grid-template-columns: repeat(9, 1fr); }
  .elementor-grid-10 .elementor-grid {
    grid-template-columns: repeat(10, 1fr); }
  .elementor-grid-11 .elementor-grid {
    grid-template-columns: repeat(11, 1fr); }
  .elementor-grid-12 .elementor-grid {
    grid-template-columns: repeat(12, 1fr); }
  @media (min-width: -1px) {
    .elementor-grid-widescreen-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-widescreen-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-widescreen-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-widescreen-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-widescreen-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-widescreen-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-widescreen-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-widescreen-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-widescreen-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-widescreen-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-widescreen-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-widescreen-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-widescreen-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-widescreen-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: -1px) {
    .elementor-grid-laptop-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-laptop-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-laptop-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-laptop-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-laptop-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-laptop-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-laptop-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-laptop-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-laptop-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-laptop-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-laptop-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-laptop-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-laptop-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-laptop-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: -1px) {
    .elementor-grid-tablet_extra-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-tablet_extra-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-tablet_extra-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-tablet_extra-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-tablet_extra-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-tablet_extra-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-tablet_extra-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-tablet_extra-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-tablet_extra-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-tablet_extra-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-tablet_extra-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-tablet_extra-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-tablet_extra-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-tablet_extra-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: 1024px) {
    .elementor-grid-tablet-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-tablet-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-tablet-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-tablet-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-tablet-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-tablet-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-tablet-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-tablet-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-tablet-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-tablet-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-tablet-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-tablet-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-tablet-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-tablet-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: -1px) {
    .elementor-grid-mobile_extra-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-mobile_extra-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-mobile_extra-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-mobile_extra-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-mobile_extra-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-mobile_extra-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-mobile_extra-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-mobile_extra-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-mobile_extra-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-mobile_extra-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-mobile_extra-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-mobile_extra-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-mobile_extra-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-mobile_extra-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: 767px) {
    .elementor-grid-mobile-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-mobile-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-mobile-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-mobile-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-mobile-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-mobile-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-mobile-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-mobile-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-mobile-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-mobile-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-mobile-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-mobile-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-mobile-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-mobile-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }

@media (min-width: 1025px) {
  #elementor-device-mode:after {
    content: 'desktop'; } }

@media (min-width: -1px) {
  #elementor-device-mode:after {
    content: 'widescreen'; } }

@media (max-width: -1px) {
  #elementor-device-mode:after {
    content: 'laptop'; } }

@media (max-width: -1px) {
  #elementor-device-mode:after {
    content: 'tablet_extra'; } }

@media (max-width: 1024px) {
  #elementor-device-mode:after {
    content: 'tablet'; } }

@media (max-width: -1px) {
  #elementor-device-mode:after {
    content: 'mobile_extra'; } }

@media (max-width: 767px) {
  #elementor-device-mode:after {
    content: 'mobile'; } }

[class^="eicon"],
[class*=" eicon-"] {
  display: inline-block;
  font-family: eicons;
  font-size: inherit;
  font-weight: normal;
  font-style: normal;
  font-variant: normal;
  line-height: 1;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

@-webkit-keyframes eicon-spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(359deg);
            transform: rotate(359deg); } }

@keyframes eicon-spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(359deg);
            transform: rotate(359deg); } }

.eicon-animation-spin {
  -webkit-animation: eicon-spin 2s infinite linear;
          animation: eicon-spin 2s infinite linear; }

.eicon-loading:before {
  content: '\e8fb'; }

.eicon-menu-bar:before {
  content: '\e816'; }

.eicon-chevron-right:before {
  content: '\e87d'; }

.eicon-chevron-left:before {
  content: '\e87e'; }

.eicon-close:before {
  content: '\e87f'; }

.eicon-share-arrow:before {
  content: '\e96c'; }

.eicon-zoom-in:before {
  content: '\e882'; }

.eicon-zoom-in-bold:before {
  content: '\e92e'; }

.eicon-zoom-out-bold:before {
  content: '\e943'; }

.eicon-frame-expand:before {
  content: '\e95c'; }

.eicon-frame-minimize:before {
  content: '\e95d'; }

.eicon-play:before {
  content: '\e89d'; }

.eicon-facebook:before {
  content: '\e959'; }

.eicon-twitter:before {
  content: '\e95a'; }

.eicon-pinterest:before {
  content: '\e95b'; }

.eicon-download-bold:before {
  content: '\e96b'; }

.eicon-caret-down:before {
  content: '\e92a'; }

.elementor-form-fields-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group > input, .elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group > textarea, .elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group > .elementor-select-wrapper, .elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group .elementor-field-subgroup {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    max-width: 100%; }
  .elementor-form-fields-wrapper.elementor-labels-inline > .elementor-field-group > input, .elementor-form-fields-wrapper.elementor-labels-inline > .elementor-field-group .elementor-select-wrapper {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }

.elementor-field-group {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .elementor-field-group.elementor-field-type-submit {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end; }
  .elementor-field-group .elementor-field-textual {
    width: 100%;
    max-width: 100%;
    border: 1px solid #818a91;
    background-color: transparent;
    color: #373a3c;
    vertical-align: middle;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }
    .elementor-field-group .elementor-field-textual:focus {
      -webkit-box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1) inset;
              box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1) inset;
      outline: 0; }
    .elementor-field-group .elementor-field-textual::-webkit-input-placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
    .elementor-field-group .elementor-field-textual:-ms-input-placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
    .elementor-field-group .elementor-field-textual::-moz-placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
    .elementor-field-group .elementor-field-textual:-moz-placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
    .elementor-field-group .elementor-field-textual::-ms-input-placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
    .elementor-field-group .elementor-field-textual::placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
  .elementor-field-group .elementor-select-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    width: 100%; }
    .elementor-field-group .elementor-select-wrapper select {
      appearance: none;
      -webkit-appearance: none;
      -moz-appearance: none;
      color: inherit;
      font-size: inherit;
      font-family: inherit;
      font-weight: inherit;
      font-style: inherit;
      text-transform: inherit;
      letter-spacing: inherit;
      line-height: inherit;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
      padding-right: 20px; }
    .elementor-field-group .elementor-select-wrapper:before {
      content: '\e92a';
      font-family: 'eicons';
      font-size: 15px;
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      right: 10px;
      pointer-events: none;
      text-shadow: 0 0 3px rgba(0, 0, 0, 0.3); }
  .elementor-field-group.elementor-field-type-select-multiple .elementor-select-wrapper:before {
    content: ''; }

.elementor-field-subgroup {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .elementor-field-subgroup .elementor-field-option label {
    display: inline-block; }
  .elementor-field-subgroup.elementor-subgroup-inline .elementor-field-option {
    padding-right: 10px; }
  .elementor-field-subgroup:not(.elementor-subgroup-inline) .elementor-field-option {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%; }

.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option input,
.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option label,
.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option input,
.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option label,
.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option input,
.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option label {
  display: inline; }

.elementor-field-label {
  cursor: pointer; }
  .elementor-mark-required .elementor-field-label:after {
    content: '*';
    color: red;
    padding-left: 0.2em; }

.elementor-field-textual {
  line-height: 1.4;
  font-size: 15px;
  min-height: 40px;
  padding: 5px 14px;
  -webkit-border-radius: 3px;
          border-radius: 3px; }
  .elementor-field-textual.elementor-size-xs {
    font-size: 13px;
    min-height: 33px;
    padding: 4px 12px;
    -webkit-border-radius: 2px;
            border-radius: 2px; }
  .elementor-field-textual.elementor-size-md {
    font-size: 16px;
    min-height: 47px;
    padding: 6px 16px;
    -webkit-border-radius: 4px;
            border-radius: 4px; }
  .elementor-field-textual.elementor-size-lg {
    font-size: 18px;
    min-height: 59px;
    padding: 7px 20px;
    -webkit-border-radius: 5px;
            border-radius: 5px; }
  .elementor-field-textual.elementor-size-xl {
    font-size: 20px;
    min-height: 72px;
    padding: 8px 24px;
    -webkit-border-radius: 6px;
            border-radius: 6px; }

.elementor-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%; }

.elementor-button-align-stretch .e-form__buttons__wrapper {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1; }
  .elementor-button-align-stretch .e-form__buttons__wrapper__button {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%; }

.elementor-button-align-center .elementor-field-type-submit,
.elementor-button-align-center .e-form__buttons {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.elementor-button-align-start .elementor-field-type-submit,
.elementor-button-align-start .e-form__buttons {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start; }

.elementor-button-align-end .elementor-field-type-submit,
.elementor-button-align-end .e-form__buttons {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.elementor-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
  -ms-flex-preferred-size: initial;
      flex-basis: initial; }

.elementor-button-align-center .e-form__buttons__wrapper, .elementor-button-align-start .e-form__buttons__wrapper, .elementor-button-align-end .e-form__buttons__wrapper {
  -webkit-box-flex: initial;
      -ms-flex-positive: initial;
          flex-grow: initial; }
  .elementor-button-align-center .e-form__buttons__wrapper, .elementor-button-align-center .e-form__buttons__wrapper__button, .elementor-button-align-start .e-form__buttons__wrapper, .elementor-button-align-start .e-form__buttons__wrapper__button, .elementor-button-align-end .e-form__buttons__wrapper, .elementor-button-align-end .e-form__buttons__wrapper__button {
    -ms-flex-preferred-size: initial;
        flex-basis: initial; }

@media screen and (max-width: 1024px) {
  .elementor-tablet-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%; }
  .elementor-tablet-button-align-stretch .e-form__buttons__wrapper {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }
    .elementor-tablet-button-align-stretch .e-form__buttons__wrapper__button {
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%; }
  .elementor-tablet-button-align-center .elementor-field-type-submit,
  .elementor-tablet-button-align-center .e-form__buttons {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .elementor-tablet-button-align-start .elementor-field-type-submit,
  .elementor-tablet-button-align-start .e-form__buttons {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
  .elementor-tablet-button-align-end .elementor-field-type-submit,
  .elementor-tablet-button-align-end .e-form__buttons {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
  .elementor-tablet-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-tablet-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-tablet-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
    -ms-flex-preferred-size: initial;
        flex-basis: initial; }
  .elementor-tablet-button-align-center .e-form__buttons__wrapper, .elementor-tablet-button-align-start .e-form__buttons__wrapper, .elementor-tablet-button-align-end .e-form__buttons__wrapper {
    -webkit-box-flex: initial;
        -ms-flex-positive: initial;
            flex-grow: initial; }
    .elementor-tablet-button-align-center .e-form__buttons__wrapper, .elementor-tablet-button-align-center .e-form__buttons__wrapper__button, .elementor-tablet-button-align-start .e-form__buttons__wrapper, .elementor-tablet-button-align-start .e-form__buttons__wrapper__button, .elementor-tablet-button-align-end .e-form__buttons__wrapper, .elementor-tablet-button-align-end .e-form__buttons__wrapper__button {
      -ms-flex-preferred-size: initial;
          flex-basis: initial; } }

@media screen and (max-width: 767px) {
  .elementor-mobile-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%; }
  .elementor-mobile-button-align-stretch .e-form__buttons__wrapper {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }
    .elementor-mobile-button-align-stretch .e-form__buttons__wrapper__button {
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%; }
  .elementor-mobile-button-align-center .elementor-field-type-submit,
  .elementor-mobile-button-align-center .e-form__buttons {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .elementor-mobile-button-align-start .elementor-field-type-submit,
  .elementor-mobile-button-align-start .e-form__buttons {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
  .elementor-mobile-button-align-end .elementor-field-type-submit,
  .elementor-mobile-button-align-end .e-form__buttons {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
  .elementor-mobile-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-mobile-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-mobile-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
    -ms-flex-preferred-size: initial;
        flex-basis: initial; }
  .elementor-mobile-button-align-center .e-form__buttons__wrapper, .elementor-mobile-button-align-start .e-form__buttons__wrapper, .elementor-mobile-button-align-end .e-form__buttons__wrapper {
    -webkit-box-flex: initial;
        -ms-flex-positive: initial;
            flex-grow: initial; }
    .elementor-mobile-button-align-center .e-form__buttons__wrapper, .elementor-mobile-button-align-center .e-form__buttons__wrapper__button, .elementor-mobile-button-align-start .e-form__buttons__wrapper, .elementor-mobile-button-align-start .e-form__buttons__wrapper__button, .elementor-mobile-button-align-end .e-form__buttons__wrapper, .elementor-mobile-button-align-end .e-form__buttons__wrapper__button {
      -ms-flex-preferred-size: initial;
          flex-basis: initial; } }

.elementor-error .elementor-field {
  border-color: #d9534f; }

.elementor-error .help-inline {
  color: #d9534f;
  font-size: 0.9em; }

.elementor-message {
  margin: 10px 0;
  font-size: 1em;
  line-height: 1; }
  .elementor-message:before {
    content: "\e90e";
    display: inline-block;
    font-family: eicons;
    font-weight: normal;
    font-style: normal;
    vertical-align: middle;
    margin-right: 5px; }
  .elementor-message.elementor-message-danger {
    color: #d9534f; }
    .elementor-message.elementor-message-danger:before {
      content: "\e87f"; }
  .elementor-message.form-message-success {
    color: #5cb85c; }

.elementor-form .elementor-button {
  padding-top: 0;
  padding-bottom: 0;
  border: none; }
  .elementor-form .elementor-button > span {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .elementor-form .elementor-button.elementor-size-xs {
    min-height: 33px; }
  .elementor-form .elementor-button.elementor-size-sm {
    min-height: 40px; }
  .elementor-form .elementor-button.elementor-size-md {
    min-height: 47px; }
  .elementor-form .elementor-button.elementor-size-lg {
    min-height: 59px; }
  .elementor-form .elementor-button.elementor-size-xl {
    min-height: 72px; }

.elementor-element .elementor-widget-container {
  -webkit-transition: background 0.3s, border 0.3s, -webkit-border-radius 0.3s, -webkit-box-shadow 0.3s;
  transition: background 0.3s, border 0.3s, -webkit-border-radius 0.3s, -webkit-box-shadow 0.3s;
  -o-transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;
  transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;
  transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s, -webkit-border-radius 0.3s, -webkit-box-shadow 0.3s; }

.elementor-button {
  display: inline-block;
  line-height: 1;
  background-color: #818a91;
  font-size: 15px;
  padding: 12px 24px;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  color: #fff;
  fill: #fff;
  text-align: center;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s; }
  .elementor-button:hover, .elementor-button:focus, .elementor-button:visited {
    color: #fff; }
  .elementor-button-content-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .elementor-button-icon {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5; }
    .elementor-button-icon svg {
      width: 1em;
      height: auto; }
    .elementor-button-icon .e-font-icon-svg {
      height: 1em; }
  .elementor-button-text {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -webkit-box-ordinal-group: 11;
        -ms-flex-order: 10;
            order: 10;
    display: inline-block; }
  .elementor-button.elementor-size-xs {
    font-size: 13px;
    padding: 10px 20px;
    -webkit-border-radius: 2px;
            border-radius: 2px; }
  .elementor-button.elementor-size-md {
    font-size: 16px;
    padding: 15px 30px;
    -webkit-border-radius: 4px;
            border-radius: 4px; }
  .elementor-button.elementor-size-lg {
    font-size: 18px;
    padding: 20px 40px;
    -webkit-border-radius: 5px;
            border-radius: 5px; }
  .elementor-button.elementor-size-xl {
    font-size: 20px;
    padding: 25px 50px;
    -webkit-border-radius: 6px;
            border-radius: 6px; }
  .elementor-button .elementor-align-icon-right {
    margin-left: 5px;
    -webkit-box-ordinal-group: 16;
        -ms-flex-order: 15;
            order: 15; }
  .elementor-button .elementor-align-icon-left {
    margin-right: 5px;
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5; }
  .elementor-button span {
    text-decoration: inherit; }

/* TODO: REMOVE THIS EXCEPTION AFTER PRO 2.8 RELEASES */
.elementor-menu-cart__toggle .elementor-button-icon {
  -webkit-box-ordinal-group: 16;
      -ms-flex-order: 15;
          order: 15; }

.elementor-element.elementor-button-info .elementor-button {
  background-color: #5bc0de; }

.elementor-element.elementor-button-success .elementor-button {
  background-color: #5cb85c; }

.elementor-element.elementor-button-warning .elementor-button {
  background-color: #f0ad4e; }

.elementor-element.elementor-button-danger .elementor-button {
  background-color: #d9534f; }

.elementor-widget-button .elementor-button .elementor-button-info {
  background-color: #5bc0de; }

.elementor-widget-button .elementor-button .elementor-button-success {
  background-color: #5cb85c; }

.elementor-widget-button .elementor-button .elementor-button-warning {
  background-color: #f0ad4e; }

.elementor-widget-button .elementor-button .elementor-button-danger {
  background-color: #d9534f; }

.elementor-tab-title a {
  color: inherit; }

.elementor-view-stacked .elementor-icon {
  padding: .5em;
  background-color: #818a91;
  color: #fff;
  fill: #fff; }

.elementor-view-framed .elementor-icon {
  padding: .5em;
  color: #818a91;
  border: 3px solid #818a91;
  background-color: transparent; }

.elementor-icon {
  display: inline-block;
  line-height: 1;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  color: #818a91;
  font-size: 50px;
  text-align: center; }
  .elementor-icon:hover {
    color: #818a91; }
  .elementor-icon i, .elementor-icon svg {
    width: 1em;
    height: 1em;
    position: relative;
    display: block; }
    .elementor-icon i:before, .elementor-icon svg:before {
      position: absolute;
      left: 50%;
      -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
              transform: translateX(-50%); }
  .elementor-icon i.fad {
    width: initial; }

.elementor-shape-circle .elementor-icon {
  -webkit-border-radius: 50%;
          border-radius: 50%; }

.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -ms-touch-action: pan-y;
      touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block; }
  .slick-track:before, .slick-track:after {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  .elementor-slick-slider[dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

.elementor-slick-slider .slick-loading .slick-list {
  background: #fff; }
  .elementor-slick-slider .slick-loading .slick-list:after {
    content: '\e8fb';
    font-family: eicons;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    -webkit-animation: fa-spin 2s infinite linear;
            animation: fa-spin 2s infinite linear;
    font-size: 25px;
    color: #a4afb7; }

.elementor-slick-slider .slick-prev,
.elementor-slick-slider .slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 50%;
  display: block;
  width: 20px;
  padding: 0;
  -webkit-transform: translate(0, -50%);
      -ms-transform: translate(0, -50%);
          transform: translate(0, -50%);
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent; }
  .elementor-slick-slider .slick-prev:hover, .elementor-slick-slider .slick-prev:focus,
  .elementor-slick-slider .slick-next:hover,
  .elementor-slick-slider .slick-next:focus {
    color: transparent;
    outline: none;
    background: transparent; }
    .elementor-slick-slider .slick-prev:hover:before, .elementor-slick-slider .slick-prev:focus:before,
    .elementor-slick-slider .slick-next:hover:before,
    .elementor-slick-slider .slick-next:focus:before {
      opacity: 1; }
  .elementor-slick-slider .slick-prev.slick-disabled:before,
  .elementor-slick-slider .slick-next.slick-disabled:before {
    opacity: .25; }
  .elementor-slick-slider .slick-prev:before,
  .elementor-slick-slider .slick-next:before {
    font-family: eicons;
    font-size: 35px;
    line-height: 1;
    opacity: .75;
    color: white;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }

.elementor-slick-slider .slick-prev {
  left: -25px; }
  [dir="rtl"] .elementor-slick-slider .slick-prev {
    left: auto;
    right: -25px; }
  .elementor-slick-slider .slick-prev:before {
    content: '\e89f'; }
    [dir="rtl"] .elementor-slick-slider .slick-prev:before {
      content: '\e89e'; }

.elementor-slick-slider .slick-next {
  right: -25px; }
  [dir="rtl"] .elementor-slick-slider .slick-next {
    left: -25px;
    right: auto; }
  .elementor-slick-slider .slick-next:before {
    content: '\e89e'; }
    [dir="rtl"] .elementor-slick-slider .slick-next:before {
      content: '\e89f'; }

.elementor-slick-slider .slick-dotted.slick-slider {
  margin-bottom: 30px; }

.elementor-slick-slider ul.slick-dots {
  position: absolute;
  bottom: -25px;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1; }
  .elementor-slick-slider ul.slick-dots li {
    position: relative;
    display: inline-block;
    width: 20px;
    height: 20px;
    margin: 0;
    padding: 0;
    cursor: pointer; }
    .elementor-slick-slider ul.slick-dots li button {
      font-size: 0;
      line-height: 0;
      display: block;
      width: 20px;
      height: 20px;
      padding: 5px;
      cursor: pointer;
      color: transparent;
      border: 0;
      outline: none;
      background: transparent; }
      .elementor-slick-slider ul.slick-dots li button:hover, .elementor-slick-slider ul.slick-dots li button:focus {
        outline: none; }
        .elementor-slick-slider ul.slick-dots li button:hover:before, .elementor-slick-slider ul.slick-dots li button:focus:before {
          opacity: 1; }
      .elementor-slick-slider ul.slick-dots li button:before {
        font-family: eicons;
        font-size: 6px;
        line-height: 20px;
        position: absolute;
        top: 0;
        left: 0;
        width: 20px;
        height: 20px;
        content: '\e914';
        text-align: center;
        opacity: .25;
        color: black;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
    .elementor-slick-slider ul.slick-dots li.slick-active button:before {
      opacity: .75;
      color: black; }

.elementor-slick-slider .slick-arrows-inside .slick-prev {
  left: 20px; }
  [dir="rtl"] .elementor-slick-slider .slick-arrows-inside .slick-prev {
    left: auto;
    right: 20px; }

.elementor-slick-slider .slick-arrows-inside .slick-next {
  right: 20px; }
  [dir="rtl"] .elementor-slick-slider .slick-arrows-inside .slick-next {
    left: 20px;
    right: auto; }

.elementor-slick-slider .slick-dots-inside .slick-dots {
  bottom: 5px; }

.elementor-slick-slider .slick-dots-inside.slick-dotted.slick-slider {
  margin-bottom: 0; }

.elementor-slick-slider .slick-slider .slick-prev,
.elementor-slick-slider .slick-slider .slick-next {
  z-index: 1; }

.elementor-slick-slider .slick-slide img {
  margin: auto; }

/**
 * Swiper 3.4.2
 * Customized by Elementor team
 */
.swiper-container {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  /* Fix of Webkit flickering */
  z-index: 1; }
  .swiper-container .swiper-slide figure {
    line-height: 0; }
  .swiper-container .elementor-lightbox-content-source {
    display: none; }

.swiper-container-no-flexbox .swiper-slide {
  float: left; }

.swiper-container-vertical > .swiper-wrapper {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  -o-transition-property: transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-box-sizing: content-box;
          box-sizing: content-box; }

.swiper-container-android .swiper-slide, .swiper-wrapper {
  -webkit-transform: translate3d(0px, 0, 0);
          transform: translate3d(0px, 0, 0); }

.swiper-container-multirow > .swiper-wrapper {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }

.swiper-container-free-mode > .swiper-wrapper {
  -webkit-transition-timing-function: ease-out;
       -o-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  margin: 0 auto; }

.swiper-slide {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative; }

/* Auto Height */
.swiper-container-autoheight {
  height: auto; }
  .swiper-container-autoheight .swiper-slide {
    height: auto; }
  .swiper-container-autoheight .swiper-wrapper {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-transition-property: height, -webkit-transform;
    transition-property: height, -webkit-transform;
    -o-transition-property: transform, height;
    transition-property: transform, height;
    transition-property: transform, height, -webkit-transform; }

/* a11y */
.swiper-container .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000; }

/* IE10 Windows Phone 8 Fixes */
.swiper-wp8-horizontal {
  -ms-touch-action: pan-y;
      touch-action: pan-y; }

.swiper-wp8-vertical {
  -ms-touch-action: pan-x;
      touch-action: pan-x; }

/* Arrows */
.swiper-button-prev, .swiper-button-next {
  position: absolute;
  top: 50%;
  width: 27px;
  height: 44px;
  margin-top: -22px;
  z-index: 10;
  cursor: pointer;
  -webkit-background-size: 27px 44px;
          background-size: 27px 44px;
  background: no-repeat center; }

.swiper-button-prev.swiper-button-disabled, .swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none; }

.swiper-button-prev, .swiper-container-rtl .swiper-button-next {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  left: 10px;
  right: auto; }

.swiper-button-prev.swiper-button-black, .swiper-container-rtl .swiper-button-next.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-prev.swiper-button-white, .swiper-container-rtl .swiper-button-next.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-next, .swiper-container-rtl .swiper-button-prev {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  right: 10px;
  left: auto; }

.swiper-button-next.swiper-button-black, .swiper-container-rtl .swiper-button-prev.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-next.swiper-button-white, .swiper-container-rtl .swiper-button-prev.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }

/* Pagination Styles */
.swiper-pagination {
  position: absolute;
  text-align: center;
  -webkit-transition: 300ms;
  -o-transition: 300ms;
  transition: 300ms;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  z-index: 10; }
  .swiper-pagination.swiper-pagination-hidden {
    opacity: 0; }

/* Common Styles */
.swiper-pagination-fraction, .swiper-pagination-custom, .swiper-container-horizontal > .swiper-pagination-bullets {
  bottom: 5px;
  left: 0;
  width: 100%; }

/* Bullets */
.swiper-pagination-bullet {
  width: 6px;
  height: 6px;
  display: inline-block;
  -webkit-border-radius: 50%;
          border-radius: 50%;
  background: #000;
  opacity: 0.2; }

.swiper-pagination-fraction {
  color: #000; }

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none; }

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer; }

.swiper-pagination-white .swiper-pagination-bullet {
  background: #fff; }

.swiper-pagination-bullet-active {
  opacity: 1; }

.swiper-pagination-white .swiper-pagination-bullet-active {
  background: #fff; }

.swiper-pagination-black .swiper-pagination-bullet-active {
  background: #000; }

.swiper-container-vertical > .swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  -webkit-transform: translate3d(0px, -50%, 0);
          transform: translate3d(0px, -50%, 0); }
  .swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 5px 0;
    display: block; }

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 6px; }

/* Progressbar */
.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, 0.25);
  position: absolute; }
  .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: #000;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    -webkit-transform: scale(0);
        -ms-transform: scale(0);
            transform: scale(0);
    -webkit-transform-origin: left top;
        -ms-transform-origin: left top;
            transform-origin: left top; }

.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  -webkit-transform-origin: right top;
      -ms-transform-origin: right top;
          transform-origin: right top; }

.swiper-container-horizontal > .swiper-pagination-progressbar {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0; }

.swiper-container-vertical > .swiper-pagination-progressbar {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0; }

.swiper-pagination-progressbar.swiper-pagination-white {
  background: rgba(255, 255, 255, 0.5); }
  .swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill {
    background: #fff; }

.swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill {
  background: #000; }

/* 3D Container */
.swiper-container-3d {
  -webkit-perspective: 1200px;
          perspective: 1200px; }
  .swiper-container-3d .swiper-wrapper, .swiper-container-3d .swiper-slide, .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top, .swiper-container-3d .swiper-slide-shadow-bottom, .swiper-container-3d .swiper-cube-shadow {
    -webkit-transform-style: preserve-3d;
            transform-style: preserve-3d; }
  .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top, .swiper-container-3d .swiper-slide-shadow-bottom {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10; }
  .swiper-container-3d .swiper-slide-shadow-left {
    background-image: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
    background-image: -webkit-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: -o-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }
  .swiper-container-3d .swiper-slide-shadow-right {
    background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
    background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }
  .swiper-container-3d .swiper-slide-shadow-top {
    background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
    background-image: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: -o-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }
  .swiper-container-3d .swiper-slide-shadow-bottom {
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
    background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: -o-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

/* Coverflow */
.swiper-container-coverflow .swiper-wrapper, .swiper-container-flip .swiper-wrapper {
  /* Windows 8 IE 10 fix */
  -ms-perspective: 1200px; }

/* Cube + Flip */
.swiper-container-cube, .swiper-container-flip {
  overflow: visible; }

.swiper-container-cube .swiper-slide, .swiper-container-flip .swiper-slide {
  pointer-events: none;
  z-index: 1; }

.swiper-container-cube .swiper-slide .swiper-slide, .swiper-container-flip .swiper-slide .swiper-slide {
  pointer-events: none; }

.swiper-container-cube .swiper-slide-active, .swiper-container-flip .swiper-slide-active, .swiper-container-cube .swiper-slide-active .swiper-slide-active, .swiper-container-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto; }

.swiper-container-cube .swiper-slide-shadow-top, .swiper-container-flip .swiper-slide-shadow-top, .swiper-container-cube .swiper-slide-shadow-bottom, .swiper-container-flip .swiper-slide-shadow-bottom, .swiper-container-cube .swiper-slide-shadow-left, .swiper-container-flip .swiper-slide-shadow-left, .swiper-container-cube .swiper-slide-shadow-right, .swiper-container-flip .swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

/* Cube */
.swiper-container-cube .swiper-slide {
  visibility: hidden;
  -webkit-transform-origin: 0 0;
      -ms-transform-origin: 0 0;
          transform-origin: 0 0;
  width: 100%;
  height: 100%; }

.swiper-container-cube.swiper-container-rtl .swiper-slide {
  -webkit-transform-origin: 100% 0;
      -ms-transform-origin: 100% 0;
          transform-origin: 100% 0; }

.swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-next, .swiper-container-cube .swiper-slide-prev, .swiper-container-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible; }

.swiper-container-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0.6;
  -webkit-filter: blur(50px);
  filter: blur(50px);
  z-index: 0; }

/* Fade */
.swiper-container-fade.swiper-container-free-mode .swiper-slide {
  -webkit-transition-timing-function: ease-out;
       -o-transition-timing-function: ease-out;
          transition-timing-function: ease-out; }

.swiper-container-fade .swiper-slide {
  pointer-events: none;
  -webkit-transition-property: opacity;
  -o-transition-property: opacity;
  transition-property: opacity; }
  .swiper-container-fade .swiper-slide .swiper-slide {
    pointer-events: none; }

.swiper-container-fade .swiper-slide-active {
  pointer-events: auto; }
  .swiper-container-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto; }

.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center; }
  .swiper-zoom-container > img, .swiper-zoom-container > svg, .swiper-zoom-container > canvas {
    max-width: 100%;
    max-height: 100%;
    -o-object-fit: contain;
       object-fit: contain; }

/* Scrollbar */
.swiper-scrollbar {
  -webkit-border-radius: 10px;
          border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, 0.1); }

.swiper-container-horizontal > .swiper-scrollbar {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 50;
  height: 5px;
  width: 98%; }

.swiper-container-vertical > .swiper-scrollbar {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%; }

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  -webkit-border-radius: 10px;
          border-radius: 10px;
  left: 0;
  top: 0; }

.swiper-scrollbar-cursor-drag {
  cursor: move; }

.elementor-pagination-position-outside .swiper-container {
  padding-bottom: 30px; }

.elementor-pagination-position-outside .elementor-swiper-button {
  top: calc(50% - 30px / 2); }

.elementor-swiper {
  position: relative; }

.elementor-main-swiper {
  position: static; }

.elementor-arrows-position-outside .swiper-container {
  width: calc(100% - 60px); }

.elementor-arrows-position-outside .elementor-swiper-button-prev {
  left: 0; }

.elementor-arrows-position-outside .elementor-swiper-button-next {
  right: 0; }

.swiper-image-stretch .swiper-slide .swiper-slide-image {
  width: 100%; }

.elementor-swiper-button {
  position: absolute;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  z-index: 1;
  cursor: pointer;
  font-size: 25px;
  color: rgba(238, 238, 238, 0.9);
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%); }
  .elementor-swiper-button-prev {
    left: 10px; }
  .elementor-swiper-button-next {
    right: 10px; }
  .elementor-swiper-button.swiper-button-disabled {
    opacity: 0.3; }

.swiper-container-cube .elementor-swiper-button {
  -webkit-transform: translate3d(0, -50%, 1px);
          transform: translate3d(0, -50%, 1px); }

/* Preloader */
.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  -webkit-transform-origin: 50%;
      -ms-transform-origin: 50%;
          transform-origin: 50%;
  -webkit-animation: swiper-preloader-spin 1s steps(12, end) infinite;
          animation: swiper-preloader-spin 1s steps(12, end) infinite; }
  .swiper-lazy-preloader:after {
    display: block;
    content: "";
    width: 100%;
    height: 100%;
    -webkit-background-size: 100% 100%;
            background-size: 100%;
    background: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%236c6c6c'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat 50%; }

.swiper-lazy-preloader-white:after {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%23fff'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }

@-webkit-keyframes swiper-preloader-spin {
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

@keyframes swiper-preloader-spin {
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

.elementor-lightbox {
  --lightbox-ui-color: rgba(238, 238, 238, 0.9);
  --lightbox-ui-color-hover: #fff;
  --lightbox-text-color: var(--lightbox-ui-color);
  --lightbox-header-icons-size: 20px;
  --lightbox-navigation-icons-size: 25px; }
  .elementor-lightbox .dialog-header {
    display: none; }
  .elementor-lightbox .dialog-widget-content {
    background: none;
    -webkit-box-shadow: none;
            box-shadow: none;
    width: 100%;
    height: 100%; }
  .elementor-lightbox .dialog-message {
    -webkit-animation-duration: .3s;
            animation-duration: .3s; }
    .elementor-lightbox .dialog-message:not(.elementor-fit-aspect-ratio) {
      height: 100%; }
    .elementor-lightbox .dialog-message.dialog-lightbox-message {
      padding: 0; }
  .elementor-lightbox .dialog-lightbox-close-button {
    cursor: pointer;
    position: absolute;
    font-size: var(--lightbox-header-icons-size);
    right: 0.75em;
    margin-top: 13px;
    padding: .25em;
    z-index: 2;
    line-height: 1; }
  .elementor-lightbox .dialog-lightbox-close-button,
  .elementor-lightbox .elementor-swiper-button {
    color: var(--lightbox-ui-color);
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    opacity: 1; }
    .elementor-lightbox .dialog-lightbox-close-button:hover,
    .elementor-lightbox .elementor-swiper-button:hover {
      color: var(--lightbox-ui-color-hover); }
  .elementor-lightbox .swiper-container {
    height: 100%; }
  .elementor-lightbox .elementor-lightbox-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative;
    padding: 70px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    height: 100%;
    margin: auto; }
    @media (max-width: 767px) {
      .elementor-lightbox .elementor-lightbox-item {
        padding: 70px 0; } }
  .elementor-lightbox .elementor-lightbox-image {
    max-height: 100%;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none; }
    .elementor-lightbox .elementor-lightbox-image, .elementor-lightbox .elementor-lightbox-image:hover {
      opacity: 1;
      -webkit-filter: none;
              filter: none;
      border: none; }
  .elementor-lightbox .elementor-lightbox-image, .elementor-lightbox .elementor-video-container {
    -webkit-box-shadow: 0 0 30px rgba(0, 0, 0, 0.3), 0 0 8px -5px rgba(0, 0, 0, 0.3);
            box-shadow: 0 0 30px rgba(0, 0, 0, 0.3), 0 0 8px -5px rgba(0, 0, 0, 0.3);
    -webkit-border-radius: 2px;
            border-radius: 2px; }
  .elementor-lightbox .elementor-video-container {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }
    @media (min-width: 1025px) {
      .elementor-lightbox .elementor-video-container {
        width: 75%; } }
    @media (max-width: 1024px) {
      .elementor-lightbox .elementor-video-container {
        width: 100%; } }
  @media (min-width: 768px) and (max-width: 1024px) {
    .elementor-lightbox .elementor-aspect-ratio-916 .elementor-video-container {
      width: 70%; } }
  .elementor-lightbox .elementor-swiper-button:focus {
    outline-width: 1px; }
  .elementor-lightbox .elementor-swiper-button-prev, .elementor-lightbox .elementor-swiper-button-next {
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 15%;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: var(--lightbox-navigation-icons-size); }
  .elementor-lightbox .elementor-swiper-button-prev {
    left: 0; }
  .elementor-lightbox .elementor-swiper-button-next {
    right: 0; }
  @media (max-width: 767px) {
    .elementor-lightbox .elementor-swiper-button:focus {
      outline: none; }
    .elementor-lightbox .elementor-swiper-button-prev, .elementor-lightbox .elementor-swiper-button-next {
      width: 20%; }
      .elementor-lightbox .elementor-swiper-button-prev i, .elementor-lightbox .elementor-swiper-button-next i {
        padding: 10px;
        background-color: rgba(0, 0, 0, 0.5); }
    .elementor-lightbox .elementor-swiper-button-prev {
      left: 0;
      -webkit-box-pack: start;
          -ms-flex-pack: start;
              justify-content: flex-start; }
    .elementor-lightbox .elementor-swiper-button-next {
      right: 0;
      -webkit-box-pack: end;
          -ms-flex-pack: end;
              justify-content: flex-end; } }

.elementor-slideshow__counter {
  color: currentColor;
  font-size: .75em;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content; }

.elementor-slideshow__header, .elementor-slideshow__footer {
  position: absolute;
  left: 0;
  width: 100%;
  padding: 15px 20px;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s; }

.elementor-slideshow__footer {
  color: var(--lightbox-text-color); }

.elementor-slideshow__header {
  color: var(--lightbox-ui-color);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  font-size: var(--lightbox-header-icons-size);
  padding-left: 1em;
  padding-right: 2.6em;
  top: 0;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  z-index: 10; }
  .elementor-slideshow__header > i {
    font-size: inherit;
    cursor: pointer;
    padding: .25em;
    margin: 0 .35em; }
    .elementor-slideshow__header > i:hover {
      color: var(--lightbox-ui-color-hover); }
  .elementor-slideshow__header .elementor-slideshow__counter {
    margin-right: auto; }
  .elementor-slideshow__header .elementor-icon-share {
    z-index: 5; }

.elementor-slideshow__share-menu {
  background-color: rgba(0, 0, 0, 0);
  width: 0;
  height: 0;
  position: absolute;
  overflow: hidden;
  -webkit-transition: background-color 400ms;
  -o-transition: background-color 400ms;
  transition: background-color 400ms; }
  .elementor-slideshow__share-menu .elementor-slideshow__share-links a {
    color: #2C2C2C; }

.elementor-slideshow__share-links {
  display: block;
  position: absolute;
  min-width: 200px;
  right: 2.8em;
  top: 3em;
  background-color: #fff;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  padding: 14px 20px;
  -webkit-transform: scale(0);
      -ms-transform: scale(0);
          transform: scale(0);
  opacity: 0;
  -webkit-transform-origin: 90% 10%;
      -ms-transform-origin: 90% 10%;
          transform-origin: 90% 10%;
  -webkit-transition: all 250ms 100ms;
  -o-transition: all 250ms 100ms;
  transition: all 250ms 100ms;
  -webkit-box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
          box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3); }
  .elementor-slideshow__share-links a {
    text-align: left;
    color: #55595c;
    font-size: 12px;
    line-height: 2.5;
    display: block;
    opacity: 0;
    -webkit-transition: opacity 500ms 100ms;
    -o-transition: opacity 500ms 100ms;
    transition: opacity 500ms 100ms; }
    .elementor-slideshow__share-links a:hover {
      color: #000; }
    .elementor-slideshow__share-links a i {
      font-size: 1.25em;
      margin-right: 0.75em; }
  .elementor-slideshow__share-links:before {
    content: '';
    display: block;
    position: absolute;
    top: 1px;
    right: 0.5em;
    border: .45em solid;
    border-color: transparent transparent #fff transparent;
    -webkit-transform: translateY(-100%) scaleX(0.7);
        -ms-transform: translateY(-100%) scaleX(0.7);
            transform: translateY(-100%) scaleX(0.7); }

.elementor-slideshow__footer {
  bottom: 0;
  z-index: 5;
  position: fixed; }

.elementor-slideshow__title, .elementor-slideshow__description {
  margin: 0; }

.elementor-slideshow__title {
  font-size: 16px;
  font-weight: bold; }

.elementor-slideshow__description {
  font-size: 14px; }

.elementor-slideshow--ui-hidden .elementor-slideshow__header, .elementor-slideshow--ui-hidden .elementor-slideshow__footer {
  opacity: 0;
  pointer-events: none; }

.elementor-slideshow--ui-hidden .elementor-swiper-button-prev, .elementor-slideshow--ui-hidden .elementor-swiper-button-next {
  opacity: 0; }

.elementor-slideshow--fullscreen-mode .elementor-video-container {
  width: 100%; }

.elementor-slideshow--zoom-mode .elementor-slideshow__header, .elementor-slideshow--zoom-mode .elementor-slideshow__footer {
  background-color: rgba(0, 0, 0, 0.5); }

.elementor-slideshow--zoom-mode .elementor-swiper-button-prev, .elementor-slideshow--zoom-mode .elementor-swiper-button-next {
  opacity: 0;
  pointer-events: none; }

.elementor-slideshow--share-mode .elementor-slideshow__share-menu {
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  opacity: 1;
  cursor: default;
  background-color: rgba(0, 0, 0, 0.5); }

.elementor-slideshow--share-mode .elementor-slideshow__share-links {
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1); }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links, .elementor-slideshow--share-mode .elementor-slideshow__share-links a {
    opacity: 1; }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-twitter {
    color: #1DA1F2; }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-facebook {
    color: #3b5998; }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-pinterest {
    color: #bd081c; }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-download-bold {
    color: #a4afb7; }

.elementor-slideshow--share-mode .eicon-share-arrow {
  z-index: 2; }

.animated {
  -webkit-animation-duration: 1.25s;
          animation-duration: 1.25s; }
  .animated.animated-slow {
    -webkit-animation-duration: 2s;
            animation-duration: 2s; }
  .animated.animated-fast {
    -webkit-animation-duration: .75s;
            animation-duration: .75s; }
  .animated.infinite {
    -webkit-animation-iteration-count: infinite;
            animation-iteration-count: infinite; }
  .animated.reverse {
    animation-direction: reverse;
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards; }

@media (prefers-reduced-motion: reduce) {
  .animated {
    -webkit-animation: none;
            animation: none; } }

.elementor-shape {
  overflow: hidden;
  position: absolute;
  left: 0;
  width: 100%;
  line-height: 0;
  direction: ltr;
  /*
	 * @TODO: The `z-index: -1` rules below are temporary fixes for Chrome 85 issue.
	 *   It will be removed in a future version of Chrome.
	 */ }
  .elementor-shape-top {
    top: -1px; }
    .elementor-shape-top:not([data-negative="false"]) svg {
      z-index: -1; }
  .elementor-shape-bottom {
    bottom: -1px; }
    .elementor-shape-bottom:not([data-negative="true"]) svg {
      z-index: -1; }
  .elementor-shape[data-negative="false"].elementor-shape-bottom {
    -webkit-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
            transform: rotate(180deg); }
  .elementor-shape[data-negative="true"].elementor-shape-top {
    -webkit-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
            transform: rotate(180deg); }
  .elementor-shape svg {
    display: block;
    width: calc(100% + 1.3px);
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%); }
  .elementor-shape .elementor-shape-fill {
    fill: #fff;
    -webkit-transform-origin: center;
        -ms-transform-origin: center;
            transform-origin: center;
    -webkit-transform: rotateY(0deg);
            transform: rotateY(0deg); }

#wp-admin-bar-elementor_edit_page .ab-submenu .ab-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 200px; }

#wp-admin-bar-elementor_edit_page .elementor-edit-link-title {
  white-space: nowrap;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  overflow: hidden;
  width: 100%; }

#wp-admin-bar-elementor_edit_page .elementor-edit-link-type {
  background: #55595c;
  font-size: 11px;
  line-height: 9px;
  margin-top: 6px;
  padding: 4px 8px;
  -webkit-border-radius: 3px;
          border-radius: 3px; }

.page-template-elementor_canvas.elementor-page:before {
  display: none; }

.elementor-post__thumbnail__link {
  -webkit-transition: none;
  -o-transition: none;
  transition: none; }

#left-area ul.elementor-icon-list-items,
.elementor .elementor-element ul.elementor-icon-list-items,
.elementor-edit-area .elementor-element ul.elementor-icon-list-items {
  padding: 0; }

#wpadminbar * {
  font-style: normal; }

.e--ua-appleWebkit.rtl {
  --flex-right: flex-start; }

.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-right,
.e--ua-appleWebkit .elementor-share-buttons--align-right {
  --justify-content: var(--flex-right, flex-end); }

.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-center,
.e--ua-appleWebkit .elementor-share-buttons--align-center {
  --justify-content: center; }

.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-justify .elementor-grid {
  width: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: var(--justify-content, space-between);
      -ms-flex-pack: var(--justify-content, space-between);
          justify-content: var(--justify-content, space-between);
  margin-left: calc(-0.5 * var(--grid-column-gap));
  margin-right: calc(-0.5 * var(--grid-column-gap)); }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-justify .elementor-grid-item {
    margin-left: calc(0.5 * var(--grid-column-gap));
    margin-right: calc(0.5 * var(--grid-column-gap)); }

.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid {
  display: inline-block; }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid-item {
    margin-left: 0;
    margin-right: 0; }

@media (max-width: 1024px) {
  .e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-tablet-right,
  .e--ua-appleWebkit .elementor-share-buttons-tablet--align-right {
    --justify-content: var(--flex-right, flex-end); }
  .e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-tablet-center,
  .e--ua-appleWebkit .elementor-share-buttons-tablet--align-center {
    --justify-content: center; }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-justify .elementor-grid {
    width: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: var(--justify-content, space-between);
        -ms-flex-pack: var(--justify-content, space-between);
            justify-content: var(--justify-content, space-between);
    margin-left: calc(-0.5 * var(--grid-column-gap));
    margin-right: calc(-0.5 * var(--grid-column-gap)); }
    .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-justify .elementor-grid-item {
      margin-left: calc(0.5 * var(--grid-column-gap));
      margin-right: calc(0.5 * var(--grid-column-gap)); }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid {
    display: inline-block; }
    .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid-item {
      margin-left: 0;
      margin-right: 0; } }

@media (max-width: 767px) {
  .e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-mobile-right,
  .e--ua-appleWebkit .elementor-share-buttons-mobile--align-right {
    --justify-content: var(--flex-right, flex-end); }
  .e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-mobile-center,
  .e--ua-appleWebkit .elementor-share-buttons-mobile--align-center {
    --justify-content: center; }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-justify .elementor-grid {
    width: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: var(--justify-content, space-between);
        -ms-flex-pack: var(--justify-content, space-between);
            justify-content: var(--justify-content, space-between);
    margin-left: calc(-0.5 * var(--grid-column-gap));
    margin-right: calc(-0.5 * var(--grid-column-gap)); }
    .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-justify .elementor-grid-item {
      margin-left: calc(0.5 * var(--grid-column-gap));
      margin-right: calc(0.5 * var(--grid-column-gap)); }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid {
    display: inline-block; }
    .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid-item {
      margin-left: 0;
      margin-right: 0; } }

@media (max-width: 767px) {
  .elementor .elementor-hidden-mobile {
    display: none; }
  .elementor .elementor-hidden-phone {
    display: none; } }

@media (min-width: -1px) and (max-width: -1px) {
  .elementor .elementor-hidden-mobile_extra {
    display: none; } }

@media (min-width: 768px) and (max-width: 1024px) {
  .elementor .elementor-hidden-tablet {
    display: none; } }

@media (min-width: -1px) and (max-width: -1px) {
  .elementor .elementor-hidden-tablet_extra {
    display: none; } }

@media (min-width: -1px) and (max-width: -1px) {
  .elementor .elementor-hidden-laptop {
    display: none; } }

@media (min-width: 1025px) and (max-width: 99999px) {
  .elementor .elementor-hidden-desktop {
    display: none; } }

@media (min-width: -1px) {
  .elementor .elementor-hidden-widescreen {
    display: none; } }

.elementor-widget-text-path {
  font-size: 20px;
  text-align: var(--alignment, left); }
  .elementor-widget-text-path svg {
    width: var(--width);
    max-width: 100%;
    height: auto;
    overflow: visible;
    word-spacing: var(--word-spacing);
    -webkit-transform: rotate(var(--rotate, 0)) scaleX(var(--scale-x, 1)) scaleY(var(--scale-y, 1));
        -ms-transform: rotate(var(--rotate, 0)) scaleX(var(--scale-x, 1)) scaleY(var(--scale-y, 1));
            transform: rotate(var(--rotate, 0)) scaleX(var(--scale-x, 1)) scaleY(var(--scale-y, 1)); }
    .elementor-widget-text-path svg path {
      vector-effect: non-scaling-stroke;
      /* Prevent stroke size scaling when resizing the SVG. */
      fill: var(--path-fill, transparent);
      stroke: var(--stroke-color, transparent);
      stroke-width: var(--stroke-width, 1px);
      -webkit-transition: var(--stroke-transition) stroke, var(--stroke-transition) fill;
      -o-transition: var(--stroke-transition) stroke, var(--stroke-transition) fill;
      transition: var(--stroke-transition) stroke, var(--stroke-transition) fill; }
    .elementor-widget-text-path svg:hover path {
      --path-fill: var( --path-fill-hover );
      --stroke-color: var( --stroke-color-hover );
      --stroke-width: var( --stroke-width-hover ); }
    .elementor-widget-text-path svg text {
      --fill: var( --text-color );
      fill: var(--fill);
      direction: var(--direction, ltr);
      -webkit-transition: var(--transition) stroke, var(--transition) stroke-width, var(--transition) fill;
      -o-transition: var(--transition) stroke, var(--transition) stroke-width, var(--transition) fill;
      transition: var(--transition) stroke, var(--transition) stroke-width, var(--transition) fill; }
      .elementor-widget-text-path svg text:hover {
        --color: var( --text-color-hover, var( --text-color ) );
        --fill: var( --color );
        color: var(--color); }
/*# sourceMappingURL=frontend-lite.css.map */assets/css/admin-rtl.css000064400000130602151327220410011236 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-button {
  font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
  font-weight: 500;
  text-transform: uppercase;
  outline: none;
  border: none;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  -webkit-transition-property: background, color, opacity, -webkit-box-shadow;
  transition-property: background, color, opacity, -webkit-box-shadow;
  -o-transition-property: background, color, box-shadow, opacity;
  transition-property: background, color, box-shadow, opacity;
  transition-property: background, color, box-shadow, opacity, -webkit-box-shadow;
  -webkit-transition-duration: .3s;
       -o-transition-duration: .3s;
          transition-duration: .3s; }
  .elementor-button:hover {
    border: none; }
  .elementor-button:not([disabled]) {
    cursor: pointer; }
  .elementor-button:not(.elementor-button-state) .elementor-state-icon {
    display: none; }
  .elementor-button.elementor-button-success {
    color: #fff; }
    .elementor-button.elementor-button-success[disabled] {
      background-color: #c2cbd2; }
    .elementor-button.elementor-button-success:not([disabled]) {
      background-color: #39b54a; }
      .elementor-button.elementor-button-success:not([disabled]):hover {
        opacity: 0.85;
        -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
                box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); }
      .elementor-button.elementor-button-success:not([disabled]):active {
        -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
                box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); }
  .elementor-button.elementor-button-warning {
    background-color: #a4afb7;
    color: #fff; }
    .elementor-button.elementor-button-warning[disabled] {
      background-color: #c2cbd2; }
    .elementor-button.elementor-button-warning:not([disabled]):hover {
      background-color: #b01b1b;
      opacity: 0.85;
      -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
              box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); }
    .elementor-button.elementor-button-warning:not([disabled]):active {
      -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
              box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); }
  .elementor-button.elementor-button-danger {
    background-color: #d72b3f;
    color: #fff; }
    .elementor-button.elementor-button-danger[disabled] {
      background-color: #c2cbd2; }
    .elementor-button.elementor-button-danger:not([disabled]):hover {
      opacity: 0.85;
      -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
              box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); }
    .elementor-button.elementor-button-danger:not([disabled]):active {
      -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
              box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); }
  .elementor-button.elementor-edit-template {
    display: inline-block;
    margin-top: 15px;
    color: #fff; }
  .elementor-button.elementor-button-default {
    background-color: #a4afb7;
    color: #fff;
    font-size: 11px;
    padding: 7px 21px; }
    .elementor-button.elementor-button-default:hover {
      background-color: #6d7882;
      -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
              box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); }
    .elementor-button.elementor-button-default:active {
      -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
              box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); }
    .elementor-button.elementor-button-default:visited {
      color: #fff; }
  .elementor-button.elementor-button-go-pro {
    background-color: #93003c; }
  .elementor-button i {
    margin-left: 10px; }

#adminmenu #toplevel_page_elementor div.wp-menu-image:before {
  content: "\e813";
  font-family: eicons;
  font-size: 18px;
  margin-top: 1px; }

#adminmenu #toplevel_page_elementor a[href="admin.php?page=go_elementor_pro"] {
  font-weight: 700; }
  #adminmenu #toplevel_page_elementor a[href="admin.php?page=go_elementor_pro"]:hover {
    color: #e0005b; }

#adminmenu #toplevel_page_elementor .dashicons.dashicons-star-filled {
  height: auto; }

#adminmenu #menu-posts-elementor_library .wp-menu-image:before {
  content: '\e8ff';
  font-family: eicons;
  font-size: 18px; }

body.admin-color-fresh #adminmenu #toplevel_page_elementor a[href="admin.php?page=go_elementor_pro"] {
  color: #c60051; }

.elementor-plugins-gopro {
  color: #93003c;
  text-shadow: 1px 1px 1px #eee;
  font-weight: bold; }

#elementor-switch-mode {
  margin: 15px 0; }

#elementor-switch-mode-button,
#elementor-editor-button {
  outline: none;
  cursor: pointer; }
  #elementor-switch-mode-button i,
  #elementor-editor-button i {
    margin-left: 3px;
    font-size: 125%;
    font-style: normal; }

body.elementor-editor-active .elementor-switch-mode-off {
  display: none; }

body.elementor-editor-active #elementor-switch-mode-button {
  background-color: #f7f7f7;
  color: #555;
  border-color: #ccc;
  -webkit-box-shadow: 0 1px 0 #ccc !important;
          box-shadow: 0 1px 0 #ccc !important;
  text-shadow: unset; }
  body.elementor-editor-active #elementor-switch-mode-button:hover {
    background-color: #e9e9e9; }
  body.elementor-editor-active #elementor-switch-mode-button:active {
    -webkit-box-shadow: inset 0 1px 0 #ccc;
            box-shadow: inset 0 1px 0 #ccc;
    -webkit-transform: translateY(1px);
        -ms-transform: translateY(1px);
            transform: translateY(1px); }

body.elementor-editor-active #postdivrich {
  display: none !important; }

body.elementor-editor-active .editor-block-list__layout,
body.elementor-editor-active .block-editor-block-list__layout {
  display: none; }

body.elementor-editor-inactive .elementor-switch-mode-on {
  display: none; }

body.elementor-editor-inactive #elementor-editor {
  display: none; }

body.elementor-editor-active .editor-block-list__layout {
  display: none; }

body.elementor-editor-active .edit-post-layout__content .edit-post-visual-editor {
  -ms-flex-preferred-size: auto;
      flex-basis: auto; }

body.elementor-editor-active #elementor-editor {
  margin-bottom: 50px; }

body.elementor-editor-active .edit-post-text-editor__body .editor-post-text-editor {
  display: none; }

body .block-editor #elementor-switch-mode {
  margin: 0 15px; }
  body .block-editor #elementor-switch-mode .button {
    margin: 2px;
    height: 33px;
    font-size: 13px;
    line-height: 1; }
    body .block-editor #elementor-switch-mode .button i {
      padding-left: 5px; }

.elementor-button {
  font-size: 13px;
  text-decoration: none;
  padding: 15px 40px; }

#elementor-editor {
  height: 300px;
  width: 100%;
  -webkit-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all 0.5s ease; }
  #elementor-editor .elementor-loader-wrapper {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    width: 300px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  #elementor-editor .elementor-loader {
    -webkit-border-radius: 50%;
            border-radius: 50%;
    padding: 40px;
    height: 150px;
    width: 150px;
    background-color: rgba(255, 255, 255, 0.9);
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    -webkit-box-shadow: 2px 2px 20px 4px rgba(0, 0, 0, 0.02);
            box-shadow: 2px 2px 20px 4px rgba(0, 0, 0, 0.02); }
  #elementor-editor .elementor-loader-boxes {
    height: 100%;
    width: 100%;
    position: relative; }
  #elementor-editor .elementor-loader-box {
    position: absolute;
    background-color: #d5dadf;
    -webkit-animation: load 1.8s linear infinite;
            animation: load 1.8s linear infinite; }
    #elementor-editor .elementor-loader-box:nth-of-type(1) {
      width: 20%;
      height: 100%;
      left: 0;
      top: 0; }
    #elementor-editor .elementor-loader-box:not(:nth-of-type(1)) {
      right: 0;
      height: 20%;
      width: 60%; }
    #elementor-editor .elementor-loader-box:nth-of-type(2) {
      top: 0;
      -webkit-animation-delay: -0.45s;
              animation-delay: -0.45s; }
    #elementor-editor .elementor-loader-box:nth-of-type(3) {
      top: 40%;
      -webkit-animation-delay: -0.9s;
              animation-delay: -0.9s; }
    #elementor-editor .elementor-loader-box:nth-of-type(4) {
      bottom: 0;
      -webkit-animation-delay: -1.35s;
              animation-delay: -1.35s; }
  #elementor-editor .elementor-loading-title {
    color: #a4afb7;
    text-align: center;
    text-transform: uppercase;
    margin-top: 30px;
    letter-spacing: 7px;
    text-indent: 7px;
    font-size: 10px;
    width: 100%; }

#elementor-go-to-edit-page-link {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid #DDD;
  background-color: #F7F7F7;
  text-decoration: none;
  position: relative;
  font-family: Sans-serif; }
  #elementor-go-to-edit-page-link:hover {
    background-color: #ffffff; }
  #elementor-go-to-edit-page-link:focus {
    -webkit-box-shadow: none;
            box-shadow: none; }
  #elementor-go-to-edit-page-link.elementor-animate #elementor-editor-button {
    display: none; }
  #elementor-go-to-edit-page-link:not(.elementor-animate) .elementor-loader-wrapper {
    display: none; }

.elementor-button-spinner:before {
  font: normal 20px/.5 dashicons;
  speak: none;
  display: inline-block;
  padding: 0;
  top: 8px;
  right: -4px;
  position: relative;
  vertical-align: top;
  content: "\f463"; }

.elementor-button-spinner.loading:before {
  -webkit-animation: rotation 1s infinite linear;
  animation: rotation 1s infinite linear; }

.elementor-button-spinner.success:before {
  content: "\f147";
  color: #46b450; }

.elementor-blank_state {
  padding: 5em 0;
  margin: auto;
  max-width: 520px;
  text-align: center;
  color: #6d7882;
  font-family: Roboto, sans-serif; }
  .elementor-blank_state i {
    font-size: 50px;
    color: #a4afb7; }
  .elementor-blank_state h2 {
    font-size: 32px;
    font-weight: 300;
    color: inherit;
    margin: 40px 0 10px;
    line-height: 1.2; }
  .elementor-blank_state p {
    font-size: 16px;
    font-weight: normal;
    color: #a4afb7;
    margin-bottom: 40px; }
  .elementor-blank_state .elementor-button {
    display: inline-block; }

#available-widgets [class*="elementor-template"] .widget-title:before {
  content: "\e813";
  font-family: eicons;
  font-size: 17px; }

.elementor-settings-form-page {
  padding-top: 30px; }
  .elementor-settings-form-page:not(.elementor-active) {
    display: none; }

._elementor_settings_update_time {
  display: none; }

#confirm_fa_migration_admin_modal .dialog-confirm-ok {
  color: #6d7882; }

body.post-type-attachment table.media .column-title .media-icon img[src$=".svg"] {
  width: 100%; }

.e-major-update-warning {
  margin-bottom: 5px;
  max-width: 1000px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  .e-major-update-warning__separator {
    margin: 15px -12px; }
  .e-major-update-warning__icon {
    font-size: 17px;
    margin-left: 9px;
    margin-right: 2px; }
  .e-major-update-warning__title {
    font-weight: 600;
    margin-bottom: 10px; }
  .e-major-update-warning + p {
    display: none; }

.notice-success .e-major-update-warning__separator {
  border: 1px solid #46b450; }

.notice-success .e-major-update-warning__icon {
  color: #79ba49; }

.notice-warning .e-major-update-warning__separator {
  border: 1px solid #ffb900; }

.notice-warning .e-major-update-warning__icon {
  color: #f56e28; }

.plugins table.e-compatibility-update-table tr {
  background: transparent; }
  .plugins table.e-compatibility-update-table tr th {
    font-weight: 600; }
  .plugins table.e-compatibility-update-table tr th, .plugins table.e-compatibility-update-table tr td {
    min-width: 250px;
    font-size: 13px;
    background: transparent;
    -webkit-box-shadow: none;
            box-shadow: none;
    border: none;
    padding-top: 5px;
    padding-bottom: 5px;
    padding-left: 15px;
    padding-right: 0; }

:root {
  --e-focus-color:  rgba(0, 115, 170, .4);
  --e-context-primary-color: #0073aa;
  --e-context-primary-color-dark: #005177;
  --e-context-primary-tint-4: rgba(0, 115, 170, 0.4);
  --e-context-primary-tint-1: rgba(0, 115, 170, 0.04);
  --e-context-success-color: #39b54a;
  --e-context-success-color-dark: #2d8e3a;
  --e-context-success-tint-4: rgba(57, 181, 74, 0.4);
  --e-context-success-tint-1: rgba(57, 181, 74, 0.04);
  --e-context-info-color: #71d7f7;
  --e-context-info-color-dark: #41c9f4;
  --e-context-info-tint-4: rgba(113, 215, 247, 0.4);
  --e-context-info-tint-1: rgba(113, 215, 247, 0.04);
  --e-context-warning-color: #fcb92c;
  --e-context-warning-color-dark: #f2a503;
  --e-context-warning-tint-4: rgba(252, 185, 44, 0.4);
  --e-context-warning-tint-1: rgba(252, 185, 44, 0.04);
  --e-context-error-color: #d72b3f;
  --e-context-error-color-dark: #ae2131;
  --e-context-error-tint-4: rgba(215, 43, 63, 0.4);
  --e-context-error-tint-1: rgba(215, 43, 63, 0.04);
  --e-context-cta-color: #93003c;
  --e-context-cta-color-dark: #600027;
  --e-context-cta-tint-4: rgba(147, 0, 60, 0.4);
  --e-context-cta-tint-1: rgba(147, 0, 60, 0.04); }

.e-getting-started {
  max-width: 900px;
  padding: 2.5em 0;
  margin: auto;
  text-align: center; }
  .e-getting-started__header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
            box-shadow: 0 0 8px rgba(0, 0, 0, 0.1); }
    .e-getting-started__header .e-logo-wrapper {
      font-size: 10px;
      margin-left: 10px; }
  .e-getting-started__title {
    padding: 0 15px;
    font-weight: 600;
    text-transform: uppercase;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .e-getting-started__skip {
    border-right: 1px solid #eee;
    font-size: 16px;
    color: inherit; }
    .e-getting-started__skip i {
      padding: 15px; }
  .e-getting-started__content {
    padding: 50px; }
    .e-getting-started__content h2 {
      font-size: 2em;
      margin-top: 0; }
  .e-getting-started__content--narrow {
    max-width: 500px;
    margin: auto; }
  .e-getting-started__video {
    margin: 40px 0 60px; }
    .e-getting-started__video iframe {
      -webkit-box-shadow: 10px 10px 20px rgba(0, 0, 0, 0.15);
              box-shadow: 10px 10px 20px rgba(0, 0, 0, 0.15); }
  .e-getting-started__actions .button-primary {
    margin-left: 20px; }

:root {
  --e-button-padding-y: 0.4375rem;
  --e-button-padding-x: 0.75rem;
  --e-button-font-size: 0.8125rem;
  --e-button-font-weight: 500;
  --e-button-line-height: 0.9375rem;
  --e-button-border-radius: 3px;
  --e-button-context-color: var(--e-context-primary-color);
  --e-button-context-color-dark: var(--e-context-primary-color-dark);
  --e-button-context-tint: var(--e-context-primary-tint-1); }

.e-button {
  display: inline-block;
  font-weight: var(--e-button-font-weight);
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  color: #ffffff;
  border: 0;
  text-decoration: none;
  background: var(--e-button-context-color);
  padding: var(--e-button-padding-y) var(--e-button-padding-x);
  font-size: var(--e-button-font-size);
  line-height: var(--e-button-line-height);
  -webkit-border-radius: var(--e-button-border-radius);
          border-radius: var(--e-button-border-radius);
  -webkit-transition: background-color .15s ease-in-out, -webkit-box-shadow .15s ease-in-out;
  transition: background-color .15s ease-in-out, -webkit-box-shadow .15s ease-in-out;
  -o-transition: background-color .15s ease-in-out, box-shadow .15s ease-in-out;
  transition: background-color .15s ease-in-out, box-shadow .15s ease-in-out;
  transition: background-color .15s ease-in-out, box-shadow .15s ease-in-out, -webkit-box-shadow .15s ease-in-out; }
  .e-button:active, .e-button:hover, .e-button:focus {
    color: #ffffff;
    text-decoration: none;
    background: var(--e-button-context-color-dark); }
  .e-button:focus, .e-button.focus {
    outline: 0;
    -webkit-box-shadow: 0 0 0 2px var(--e-focus-color);
            box-shadow: 0 0 0 2px var(--e-focus-color); }
  .e-button.disabled, .e-button:disabled {
    opacity: 0.5;
    -webkit-box-shadow: none;
            box-shadow: none; }
  .e-button:not(:disabled):not(.disabled) {
    cursor: pointer; }
  .e-button:not(:disabled):not(.disabled):active:focus, .e-button:not(:disabled):not(.disabled).active:focus {
    -webkit-box-shadow: 0 0 0 2px var(--e-focus-color);
            box-shadow: 0 0 0 2px var(--e-focus-color); }
  .e-button--primary {
    --e-button-context-color: var(--e-context-primary-color);
    --e-button-context-color-dark: var(--e-context-primary-color-dark);
    --e-button-context-tint: var(--e-context-primary-tint-1);
    --e-focus-color: var(--e-context-primary-tint-4); }
  .e-button--success {
    --e-button-context-color: var(--e-context-success-color);
    --e-button-context-color-dark: var(--e-context-success-color-dark);
    --e-button-context-tint: var(--e-context-success-tint-1);
    --e-focus-color: var(--e-context-success-tint-4); }
  .e-button--info {
    --e-button-context-color: var(--e-context-info-color);
    --e-button-context-color-dark: var(--e-context-info-color-dark);
    --e-button-context-tint: var(--e-context-info-tint-1);
    --e-focus-color: var(--e-context-info-tint-4); }
  .e-button--warning {
    --e-button-context-color: var(--e-context-warning-color);
    --e-button-context-color-dark: var(--e-context-warning-color-dark);
    --e-button-context-tint: var(--e-context-warning-tint-1);
    --e-focus-color: var(--e-context-warning-tint-4); }
  .e-button--error {
    --e-button-context-color: var(--e-context-error-color);
    --e-button-context-color-dark: var(--e-context-error-color-dark);
    --e-button-context-tint: var(--e-context-error-tint-1);
    --e-focus-color: var(--e-context-error-tint-4); }
  .e-button--cta {
    --e-button-context-color: var(--e-context-cta-color);
    --e-button-context-color-dark: var(--e-context-cta-color-dark);
    --e-button-context-tint: var(--e-context-cta-tint-1);
    --e-focus-color: var(--e-context-cta-tint-4); }
  .e-button.e-button--outline {
    color: var(--e-button-context-color);
    background: none;
    border: 1px solid currentColor; }
    .e-button.e-button--outline:hover, .e-button.e-button--outline:focus {
      color: var(--e-button-context-color-dark);
      background: var(--e-button-context-tint); }
    .e-button.e-button--outline.disabled, .e-button.e-button--outline:disabled {
      color: var(--e-button-context-color-dark);
      background: #818a91; }
  .e-button > i {
    line-height: inherit;
    height: var(--e-button-line-height);
    width: -webkit-min-content;
    width: -moz-min-content;
    width: min-content; }
  .e-button > * + * {
    -webkit-margin-start: .5ch;
            margin-inline-start: .5ch; }
  .e-button--link {
    color: var(--e-button-context-color);
    background-color: transparent; }
    .e-button--link:hover, .e-button--link:focus {
      color: var(--e-button-context-color-dark);
      background: var(--e-button-context-tint); }
    .e-button--link:disabled, .e-button--link.disabled {
      color: #818a91; }

a.e-button.disabled,
fieldset:disabled a.e-button {
  pointer-events: none; }

:root {
  --e-notice-bg: #fff;
  --e-notice-border-color: #ccd0d4;
  --e-notice-context-color: #93003c;
  --e-notice-context-tint: var(--e-context-cta-tint-1);
  --e-notice-box-shadow: 0 1px 4px rgba(0,0,0,.15);
  --e-notice-dismiss-color: #6d7882; }

.e-notice {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
  background: var(--e-notice-bg);
  border: 1px solid var(--e-notice-border-color);
  border-inline-start-width: 4px;
  -webkit-box-shadow: var(--e-notice-box-shadow);
          box-shadow: var(--e-notice-box-shadow);
  margin: 5px 20px 5px 2px; }
  .e-notice.notice {
    padding: 0; }
  .e-notice::before {
    display: block;
    content: '';
    position: absolute;
    right: -4px;
    top: -1px;
    bottom: -1px;
    width: 4px;
    background-color: var(--e-notice-context-color); }
  .e-notice--primary {
    --e-notice-context-color: var(--e-context-primary-color);
    --e-notice-context-color-dark: var(--e-context-primary-color-dark);
    --e-notice-context-tint: var(--e-context-primary-tint-1); }
  .e-notice--success {
    --e-notice-context-color: var(--e-context-success-color);
    --e-notice-context-color-dark: var(--e-context-success-color-dark);
    --e-notice-context-tint: var(--e-context-success-tint-1); }
  .e-notice--info {
    --e-notice-context-color: var(--e-context-info-color);
    --e-notice-context-color-dark: var(--e-context-info-color-dark);
    --e-notice-context-tint: var(--e-context-info-tint-1); }
  .e-notice--warning {
    --e-notice-context-color: var(--e-context-warning-color);
    --e-notice-context-color-dark: var(--e-context-warning-color-dark);
    --e-notice-context-tint: var(--e-context-warning-tint-1); }
  .e-notice--error {
    --e-notice-context-color: var(--e-context-error-color);
    --e-notice-context-color-dark: var(--e-context-error-color-dark);
    --e-notice-context-tint: var(--e-context-error-tint-1); }
  .e-notice--cta {
    --e-notice-context-color: var(--e-context-cta-color);
    --e-notice-context-color-dark: var(--e-context-cta-color-dark);
    --e-notice-context-tint: var(--e-context-cta-tint-1); }
  .e-notice--extended {
    --e-notice-is-extended: 1; }
  .e-notice--dismissible {
    padding-right: 38px; }
  .e-notice__aside {
    overflow: hidden;
    background-color: var(--e-notice-context-tint);
    width: calc(var(--e-notice-is-extended, 0) * 50px);
    text-align: center;
    padding-top: 15px;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0; }
  .e-notice__icon-wrapper {
    display: inline-block;
    font-size: 0.625rem;
    max-height: 1.5rem;
    width: 1.5rem;
    line-height: 1.5rem;
    -webkit-border-radius: 100px;
            border-radius: 100px;
    background: var(--e-notice-context-color);
    color: #fff;
    text-shadow: 0 0 3px var(--e-notice-context-color-dark), 0 0 1px var(--e-notice-context-color-dark), 0 0 1px var(--e-notice-context-color-dark); }
  .e-notice__content {
    padding: 20px; }
  .e-notice__actions {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .e-notice__actions > * + * {
      -webkit-margin-start: 8px;
              margin-inline-start: 8px; }
  .e-notice__dismiss {
    width: 20px;
    height: 20px;
    line-height: 20px;
    font-size: 0.8125rem;
    text-align: center;
    background: none;
    display: block;
    position: absolute;
    top: 0;
    right: 1px;
    border: none;
    margin: 0;
    padding: 9px;
    cursor: pointer;
    font-style: normal; }
    .e-notice__dismiss:before {
      font-family: eicons;
      display: inline-block;
      content: "\e87f";
      color: var(--e-notice-dismiss-color);
      width: 20px;
      -webkit-border-radius: 20px;
              border-radius: 20px;
      speak: none;
      text-align: center;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale; }
    .e-notice__dismiss:hover:before, .e-notice__dismiss:active:before, .e-notice__dismiss:focus:before {
      font-weight: bold; }
    .e-notice__dismiss:focus:before {
      color: #fff;
      background: var(--e-notice-dismiss-color);
      outline: none; }
    .e-notice__dismiss:focus {
      outline: none; }
  .e-notice p {
    line-height: 1.2;
    padding: 0;
    margin: 0; }
    .e-notice p + .e-notice__actions {
      margin-top: 1rem; }
  .e-notice h3 {
    font-size: 1.0625rem;
    line-height: 1.2;
    margin: 0; }
    .e-notice h3 + p {
      margin-top: 8px; }

/*= Elementor Admin Alert
---------------------------------------*/
.elementor-admin-alert {
  padding: 15px;
  border-left: 5px solid transparent;
  position: relative;
  font-size: 12px;
  line-height: 1.5;
  text-align: right; }
  .elementor-admin-alert a {
    color: inherit; }
  .elementor-admin-alert.elementor-alert-info {
    color: #31708f;
    background-color: #d9edf7;
    border-color: #bcdff1; }
  .elementor-admin-alert.elementor-alert-success {
    color: #3c763d;
    background-color: #dff0d8;
    border-color: #cae6be; }
  .elementor-admin-alert.elementor-alert-warning {
    color: #8a6d3b;
    background-color: #fcf8e3;
    border-color: #f9f0c3; }
  .elementor-admin-alert.elementor-alert-danger {
    color: #a94442;
    background-color: #f2dede;
    border-color: #e8c4c4; }

/*= Elementor System Info
---------------------------------------*/
#elementor-system-info {
  padding: 15px; }
  #elementor-system-info .elementor-system-info-section {
    margin-bottom: 10px; }
    #elementor-system-info .elementor-system-info-section > .elementor-system-info-report-name {
      padding-left: 10px;
      border-bottom: 1px solid #e1e1e1; }
    #elementor-system-info .elementor-system-info-section .widefat {
      white-space: pre; }
    #elementor-system-info .elementor-system-info-section .elementor-log-entries {
      white-space: pre-wrap; }
    #elementor-system-info .elementor-system-info-section:not(.elementor-system-info-log) tbody td:first-child {
      width: 300px; }
  #elementor-system-info .elementor-system-info-report-name {
    text-transform: uppercase;
    font-size: 14px;
    margin: 0;
    line-height: 2; }
  #elementor-system-info .elementor-system-info-report-row {
    overflow: hidden;
    padding: 5px 0; }
    #elementor-system-info .elementor-system-info-report-row > * {
      float: left; }
  #elementor-system-info .elementor-system-info-report-field,
  #elementor-system-info .elementor-system-info-field-recommendation {
    padding-left: 10px;
    color: #7F7F7F; }
  #elementor-system-info .elementor-system-info-report-fields {
    padding-left: 20px; }
  #elementor-system-info .elementor-system-info-plugin-name {
    color: #000; }
  #elementor-system-info .elementor-system-info-plugin-properties {
    padding: 10px; }
  #elementor-system-info #elementor-system-info-raw-code {
    width: 100%;
    height: 200px; }
  #elementor-system-info #elementor-system-info-raw-code-label {
    padding: 5px;
    display: block; }
  #elementor-system-info .elementor-warning td:first-child {
    border-right: 3px solid #fcb92c; }
  #elementor-system-info a.box-title-tool {
    font-size: 80%;
    margin-right: 15px;
    color: #818a91; }
    #elementor-system-info a.box-title-tool:hover {
      text-decoration: underline; }
  #elementor-system-info #elementor-usage-recalc {
    font-size: 12px;
    color: #ffffff;
    background-color: #a4afb7;
    padding: 4px 18px 5px 18px;
    -webkit-border-radius: 3px;
            border-radius: 3px; }

@-webkit-keyframes elementor-rotation {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(359deg);
            transform: rotate(359deg); } }

@keyframes elementor-rotation {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(359deg);
            transform: rotate(359deg); } }

#elementor-deactivate-feedback-dialog-wrapper {
  display: none; }

#elementor-deactivate-feedback-modal .dialog-widget-content {
  width: 550px; }

#elementor-deactivate-feedback-modal .dialog-header {
  padding: 18px 15px;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
  text-align: right; }

#elementor-deactivate-feedback-modal .dialog-message {
  padding: 30px 30px 0;
  text-align: right; }

#elementor-deactivate-feedback-modal .elementor-deactivate-feedback-dialog-input {
  float: right;
  margin: 0 0 0 15px;
  -webkit-box-shadow: none;
          box-shadow: none; }
  #elementor-deactivate-feedback-modal .elementor-deactivate-feedback-dialog-input:not(:checked) ~ .elementor-feedback-text {
    display: none; }

#elementor-deactivate-feedback-modal .elementor-deactivate-feedback-dialog-label {
  display: block;
  font-size: 13px;
  color: #6d7882; }

#elementor-deactivate-feedback-modal .elementor-feedback-text {
  margin: 10px 30px 0 0;
  padding: 5px;
  font-size: 13px;
  -webkit-box-shadow: none;
          box-shadow: none;
  background-color: #fff;
  width: 92%; }

#elementor-deactivate-feedback-modal .dialog-buttons-wrapper {
  border-top: none;
  text-align: right;
  padding: 20px 30px 30px;
  overflow: hidden; }

#elementor-deactivate-feedback-modal .dialog-submit {
  background-color: #93003c;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  color: #fff;
  line-height: 1;
  padding: 12px 20px;
  font-size: 13px;
  width: 180px;
  height: 38px; }
  #elementor-deactivate-feedback-modal .dialog-submit.elementor-loading:before {
    display: inline-block;
    content: '\f463';
    font: 18px dashicons;
    -webkit-animation: elementor-rotation 2s infinite linear;
            animation: elementor-rotation 2s infinite linear; }

#elementor-deactivate-feedback-modal .dialog-skip {
  font-size: 12px;
  color: #a4afb7;
  background: none;
  float: left;
  width: auto; }

#elementor-deactivate-feedback-modal[data-feedback-selected="elementor_pro"] .elementor-feedback-text {
  color: #b01b1b;
  padding: 0; }

#elementor-deactivate-feedback-modal[data-feedback-selected="elementor_pro"] .dialog-submit {
  display: none; }

#elementor-deactivate-feedback-dialog-header i {
  color: #93003c;
  font-size: 19px; }

#elementor-deactivate-feedback-dialog-header-title {
  font-size: 15px;
  text-transform: uppercase;
  font-weight: bold;
  padding-right: 5px; }

#elementor-deactivate-feedback-dialog-form-caption {
  font-weight: bold;
  font-size: 15px;
  color: #495157;
  line-height: 1.4; }

#elementor-deactivate-feedback-dialog-form-body {
  padding-top: 30px; }

.elementor-deactivate-feedback-dialog-input-wrapper {
  line-height: 1;
  overflow: hidden;
  margin-bottom: 15px; }

#elementor-hidden-area {
  display: none; }

#elementor-import-template-trigger {
  cursor: pointer; }

#elementor-import-template-area {
  display: none;
  margin: 50px 0 30px;
  text-align: center; }

#elementor-import-template-form {
  display: inline-block;
  margin-top: 30px;
  padding: 30px 50px;
  background-color: #FFFFFF;
  border: 1px solid #e5e5e5; }

#elementor-import-template-title {
  font-size: 18px;
  color: #555d66; }

.form-table:not(.elementor-maintenance-mode-is-enabled) .elementor-default-hide {
  display: none; }

.elementor-maintenance-mode-error {
  color: red;
  line-height: 1.6;
  display: none; }

#tab-replace_url.elementor-active ~ p.submit,
#tab-fontawesome4_migration.elementor-active ~ p.submit,
#tab-import-export-kit.elementor-active ~ p.submit {
  display: none; }

#elementor_rollback > div,
#elementor_rollback_pro > div,
#elementor_replace_url > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  #elementor_rollback > div input,
  #elementor_rollback > div select,
  #elementor_rollback_pro > div input,
  #elementor_rollback_pro > div select,
  #elementor_replace_url > div input,
  #elementor_replace_url > div select {
    margin-left: 6px; }

.tab-import-export-kit__wrapper {
  margin: 40px 0;
  max-width: 700px; }

.tab-import-export-kit__container {
  background-color: white;
  font-size: 16px;
  max-width: 700px;
  padding: 30px; }
  .tab-import-export-kit__container:not(:first-child) {
    margin-top: 5px; }
  .tab-import-export-kit__container p {
    color: #A4AFB7;
    font-size: 16px;
    margin: 20px 0 25px; }

.tab-import-export-kit__info {
  font-size: 14px; }

.tab-import-export-kit__container a:not(.elementor-button),
.tab-import-export-kit__info a {
  color: #58d0f5;
  text-decoration: underline; }

.tab-import-export-kit__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; }
  .tab-import-export-kit__box h2 {
    color: #6D7882;
    font-size: 28px;
    font-weight: normal;
    line-height: 1;
    margin: 0; }
  .tab-import-export-kit__box .elementor-button.elementor-button-success {
    font-weight: bold;
    padding: 8px 16px;
    text-transform: initial; }

#dashboard-widgets .e-dashboard-widget h3.e-heading {
  font-weight: 600;
  margin-bottom: 13px; }

#dashboard-widgets .e-dashboard-widget .e-divider_bottom {
  border-bottom: 1px solid #eee;
  margin: 0 -12px;
  padding: 6px 12px; }

#dashboard-widgets .e-dashboard-widget .e-divider_top {
  border-top: 1px solid #eee;
  margin: 0 -12px;
  padding: 6px 12px; }

#dashboard-widgets .e-dashboard-widget .e-quick-actions-wrap .e-divider_top,
#dashboard-widgets .e-dashboard-widget .e-news-feed-wrap .e-divider_top {
  padding-top: 18px;
  margin-top: 18px; }

.e-dashboard-widget .dashicons {
  color: #606a73; }

.e-dashboard-widget ul.e-action-list li {
  margin-top: 14px; }
  .e-dashboard-widget ul.e-action-list li a {
    margin-right: 5px; }

#e-dashboard-overview .dashicons {
  vertical-align: middle;
  font-size: 17px; }

#e-dashboard-overview .e-overview__header {
  display: table;
  width: 100%;
  -webkit-box-shadow: 0 5px 8px rgba(0, 0, 0, 0.05);
          box-shadow: 0 5px 8px rgba(0, 0, 0, 0.05);
  margin: 0 -12px 8px;
  padding: 0 12px 12px; }

#e-dashboard-overview .e-overview__logo, #e-dashboard-overview .e-overview__versions, #e-dashboard-overview .e-overview__create {
  display: table-cell;
  vertical-align: middle; }

#e-dashboard-overview .e-overview__logo {
  width: 30px; }

#e-dashboard-overview .e-overview__versions {
  padding: 0 10px;
  font-size: 0.9em;
  line-height: 1.5; }

#e-dashboard-overview .e-overview__version {
  display: block; }

#e-dashboard-overview .e-overview__create {
  text-align: left; }

#e-dashboard-overview .e-overview__feed {
  font-size: 14px;
  font-weight: 500; }

#e-dashboard-overview .e-overview__post {
  margin-top: 10px; }

#e-dashboard-overview .e-overview__post-link {
  display: inline-block; }

#e-dashboard-overview .e-overview__badge {
  background: #39b54a;
  color: white;
  font-size: 0.75em;
  padding: 3px 6px;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  text-transform: uppercase; }

#e-dashboard-overview .e-overview__post-description {
  margin: 0 0 1.5em; }

#e-dashboard-overview .e-overview__recently-edited li {
  color: #72777c; }

#e-dashboard-overview .e-overview__footer.e-divider_top {
  padding-top: 12px;
  padding-bottom: 0; }

#e-dashboard-overview .e-overview__footer ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  list-style: none;
  margin: 0;
  padding: 0; }
  #e-dashboard-overview .e-overview__footer ul li {
    padding: 0 10px;
    margin: 0;
    border-right: 1px solid #ddd; }
    #e-dashboard-overview .e-overview__footer ul li:first-child {
      padding-right: 0;
      border: none; }

#e-dashboard-overview .e-overview__go-pro a {
  color: #93003c;
  font-weight: 500; }

.post-type-elementor_library #elementor-template-library-tabs-wrapper {
  padding-top: 2em;
  margin-bottom: 2em; }

.post-type-elementor_library th#taxonomy-elementor_library_category {
  width: 110px; }

#elementor-new-template-modal .dialog-message {
  max-height: 70vh; }

#elementor-new-template-dialog-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100%;
  text-align: right;
  color: #6d7882; }
  @media (max-width: 1439px) {
    #elementor-new-template-dialog-content {
      padding: 0 50px; } }
  @media (min-width: 1440px) {
    #elementor-new-template-dialog-content {
      padding: 0 120px; } }

#elementor-new-template__description {
  width: 35%;
  max-width: 300px;
  padding-left: 100px; }
  #elementor-new-template__description__title {
    font-size: 30px;
    color: #556068; }
    #elementor-new-template__description__title span {
      font-weight: bold; }
  #elementor-new-template__description__content {
    font-size: 16px;
    padding: 30px 0; }

#elementor-new-template__take_a_tour {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 15px; }
  #elementor-new-template__take_a_tour i {
    color: #93003c;
    font-size: 30px; }
  #elementor-new-template__take_a_tour a {
    color: #6d7882;
    padding-right: 10px;
    text-decoration: none;
    font-weight: 500; }

#elementor-new-template__form {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  max-width: 440px;
  padding: 55px;
  background-color: #fff;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  -webkit-box-shadow: 0 2px 30px 0 rgba(0, 0, 0, 0.08);
          box-shadow: 0 2px 30px 0 rgba(0, 0, 0, 0.08); }
  #elementor-new-template__form__title {
    font-size: 23px;
    color: #556068; }
  #elementor-new-template__form__template-type.elementor-form-field__select {
    max-width: initial; }
  #elementor-new-template__form .elementor-form-field__label {
    display: block;
    margin: 25px 0 7px;
    font-size: 14px;
    line-height: 1; }
  #elementor-new-template__form .elementor-form-field input,
  #elementor-new-template__form .elementor-form-field select {
    width: 100%;
    height: 50px;
    padding: 10px;
    font-size: 14px;
    -webkit-box-shadow: none;
            box-shadow: none;
    -webkit-border-radius: 3px;
            border-radius: 3px;
    background: none;
    color: #495157;
    border: 1px solid;
    outline: none; }
    #elementor-new-template__form .elementor-form-field input:not(:focus),
    #elementor-new-template__form .elementor-form-field select:not(:focus) {
      border-color: #d5dadf; }
    #elementor-new-template__form .elementor-form-field input:focus,
    #elementor-new-template__form .elementor-form-field select:focus {
      border-color: #a4afb7; }
  #elementor-new-template__form .elementor-form-field__select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    cursor: pointer; }
    #elementor-new-template__form .elementor-form-field__select__wrapper {
      position: relative; }
      #elementor-new-template__form .elementor-form-field__select__wrapper:after {
        font-family: eicons;
        content: '\e8ad';
        position: absolute;
        top: 50%;
        left: 10px;
        -webkit-transform: translateY(-50%);
            -ms-transform: translateY(-50%);
                transform: translateY(-50%); }
  #elementor-new-template__form__submit {
    width: 100%;
    height: 50px;
    margin-top: 25px; }

@media (max-width: 1024px) {
  #elementor-new-template__description {
    max-width: 250px;
    padding-left: 30px; } }

@media (max-width: 767px) {
  #elementor-new-template__description {
    display: none; } }

#elementor-role-manager {
  max-width: 500px;
  margin-top: 50px; }
  #elementor-role-manager h3 {
    color: #6d7882;
    font-weight: normal;
    font-size: 22px; }
  #elementor-role-manager .elementor-settings-form-page {
    padding: 0; }
  #elementor-role-manager .elementor-role-row {
    background: #ffffff;
    color: #6d7882;
    margin-bottom: 2px; }
    #elementor-role-manager .elementor-role-row .elementor-role-label {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      padding: 15px 20px;
      font-weight: 500;
      cursor: pointer; }
      #elementor-role-manager .elementor-role-row .elementor-role-label span.elementor-role-name {
        padding-left: 20px; }
      #elementor-role-manager .elementor-role-row .elementor-role-label span.elementor-role-toggle {
        text-align: left;
        -webkit-box-flex: 1;
            -ms-flex-positive: 1;
                flex-grow: 1; }
      #elementor-role-manager .elementor-role-row .elementor-role-label span.elementor-role-excluded-indicator {
        color: #a4afb7; }
    #elementor-role-manager .elementor-role-row .elementor-role-controls {
      background-color: #f7f7f7;
      padding: 20px 20px 5px; }
      #elementor-role-manager .elementor-role-row .elementor-role-controls > div {
        margin-bottom: 15px; }
      #elementor-role-manager .elementor-role-row .elementor-role-controls .elementor-role-go-pro {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex; }
        #elementor-role-manager .elementor-role-row .elementor-role-controls .elementor-role-go-pro .elementor-role-go-pro__desc {
          font-weight: 500;
          font-style: italic; }
        #elementor-role-manager .elementor-role-row .elementor-role-controls .elementor-role-go-pro .elementor-role-go-pro__link {
          text-align: left;
          -webkit-box-flex: 1;
              -ms-flex-positive: 1;
                  flex-grow: 1; }

#elementor-beta-tester-modal .elementor-templates-modal__header__items-area {
  color: #c2cbd2;
  cursor: pointer; }
  #elementor-beta-tester-modal .elementor-templates-modal__header__items-area:hover .elementor-beta-tester-do-not-show-again,
  #elementor-beta-tester-modal .elementor-templates-modal__header__items-area:hover .elementor-templates-modal__header__item > i {
    color: #6d7882; }
  #elementor-beta-tester-modal .elementor-templates-modal__header__items-area .elementor-templates-modal__header__close {
    border: none; }
  #elementor-beta-tester-modal .elementor-templates-modal__header__items-area .elementor-beta-tester-do-not-show-again {
    text-transform: uppercase;
    font-weight: bold;
    font-size: 12px;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s; }

#elementor-beta-tester-modal .dialog-lightbox-widget-content {
  max-width: 500px;
  height: initial; }

#elementor-beta-tester-modal .dialog-lightbox-message {
  padding: 40px;
  height: 300px;
  background-color: #fff; }

#elementor-beta-tester-form__caption {
  font-weight: bold;
  font-size: 20px;
  color: #495157; }

#elementor-beta-tester-form__description {
  font-size: 15px;
  color: #6d7882;
  margin-top: 10px; }

#elementor-beta-tester-form__input-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 30px; }
  #elementor-beta-tester-form__input-wrapper .elementor-button {
    -webkit-border-radius: 3px 0 0 3px;
            border-radius: 3px 0 0 3px; }

#elementor-beta-tester-form__email {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  border: #d5dadf 1px solid;
  border-left: 0;
  -webkit-border-radius: 0 3px 3px 0;
          border-radius: 0 3px 3px 0;
  margin: 0;
  padding: 10px;
  height: 50px; }

#elementor-beta-tester-form__terms {
  margin-top: 40px;
  font-size: 11px;
  color: #a4afb7; }

.e-experiment__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; }
  .e-experiment__title__indicator {
    height: 10px;
    width: 10px;
    -webkit-border-radius: 50%;
            border-radius: 50%;
    border: 2px solid white;
    -webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
            box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    margin-top: 2px; }
    .e-experiment__title__indicator--active {
      background: #39b54a; }
  .e-experiment__title__label {
    margin-right: 10px; }

.e-experiment__description {
  max-width: 800px; }

.e-experiment__status {
  margin-top: 5px;
  font-size: 13px;
  font-weight: bold;
  font-style: italic; }

.e-landing-pages-empty .elementor-blank_state {
  padding: 5em 0 2em 0; }

.e-landing-pages-empty .e-trashed-items {
  text-align: center; }
/*# sourceMappingURL=admin-rtl.css.map */assets/css/widget-image-box-rtl.min.css000064400000003333151327220410014061 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-widget-image-box .elementor-image-box-content{width:100%}@media (min-width:768px){.elementor-widget-image-box.elementor-position-left .elementor-image-box-wrapper,.elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper{text-align:left;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.elementor-widget-image-box.elementor-position-left .elementor-image-box-wrapper{text-align:right;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-widget-image-box.elementor-position-top .elementor-image-box-img{margin:auto}.elementor-widget-image-box.elementor-vertical-align-top .elementor-image-box-wrapper{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.elementor-widget-image-box.elementor-vertical-align-middle .elementor-image-box-wrapper{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-widget-image-box.elementor-vertical-align-bottom .elementor-image-box-wrapper{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}}@media (max-width:767px){.elementor-widget-image-box .elementor-image-box-img{margin-left:auto!important;margin-right:auto!important;margin-bottom:15px}}.elementor-widget-image-box .elementor-image-box-img{display:inline-block}.elementor-widget-image-box .elementor-image-box-title a{color:inherit}.elementor-widget-image-box .elementor-image-box-wrapper{text-align:center}.elementor-widget-image-box .elementor-image-box-description{margin:0}assets/css/widget-image-gallery-rtl.min.css000064400000004632151327220410014733 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-image-gallery .gallery-item{display:inline-block;text-align:center;vertical-align:top;width:100%;max-width:100%;margin:0 auto}.elementor-image-gallery .gallery-item img{margin:0 auto}.elementor-image-gallery .gallery-item .gallery-caption{margin:0}.elementor-image-gallery figure img{display:block}.elementor-image-gallery figure figcaption{width:100%}.gallery-spacing-custom .elementor-image-gallery .gallery-icon{padding:0}@media (min-width:768px){.elementor-image-gallery .gallery-columns-2 .gallery-item{max-width:50%}.elementor-image-gallery .gallery-columns-3 .gallery-item{max-width:33.33%}.elementor-image-gallery .gallery-columns-4 .gallery-item{max-width:25%}.elementor-image-gallery .gallery-columns-5 .gallery-item{max-width:20%}.elementor-image-gallery .gallery-columns-6 .gallery-item{max-width:16.666%}.elementor-image-gallery .gallery-columns-7 .gallery-item{max-width:14.28%}.elementor-image-gallery .gallery-columns-8 .gallery-item{max-width:12.5%}.elementor-image-gallery .gallery-columns-9 .gallery-item{max-width:11.11%}.elementor-image-gallery .gallery-columns-10 .gallery-item{max-width:10%}}@media (min-width:480px) and (max-width:767px){.elementor-image-gallery .gallery.gallery-columns-2 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-3 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-4 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-5 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-6 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-7 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-8 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-9 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-10 .gallery-item{max-width:50%}}@media (max-width:479px){.elementor-image-gallery .gallery.gallery-columns-2 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-3 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-4 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-5 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-6 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-7 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-8 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-9 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-10 .gallery-item{max-width:100%}}assets/css/editor-rtl.min.css000064400000467042151327220410012231 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
@charset "UTF-8";.elementor-control-unit-1{width:27px}.elementor-control-unit-2{width:54px}.elementor-control-unit-3{width:81px}.elementor-control-unit-4{width:108px}.elementor-control-unit-5{max-width:400px;width:52%}*,:after,:before{margin:0;padding:0;-webkit-box-sizing:border-box;box-sizing:border-box}body,html{height:100%}html{background-color:#f1f1f1}iframe,img{border:0}li{list-style:none}a,body{text-decoration:none}body{color:#6d7882;font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;font-size:13px;font-weight:400;line-height:1;text-transform:none;overflow:hidden}body:after{content:"";position:absolute;top:0;left:0;height:100%;width:0;background-color:#71d7f7;-webkit-transition:width .5s;-o-transition:width .5s;transition:width .5s}body a{color:#71d7f7}body a:hover{color:#93003c}body.elementor-editor-active #elementor-mode-switcher-preview .eicon:before{content:""}body.elementor-editor-preview{--e-preview-width:100%}body.elementor-editor-preview #elementor-mode-switcher-preview .eicon:before{content:""}body.elementor-navigator--dock-hint:after{width:30px}#elementor-editor-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;width:100%;height:100vh}#elementor-panel:not(.ui-resizable-resizing),#elementor-preview:not(.ui-resizable-resizing){-webkit-transition:margin .5s ease-in-out,width .5s ease-in-out;-o-transition:margin .5s ease-in-out,width .5s ease-in-out;transition:margin .5s ease-in-out,width .5s ease-in-out}#elementor-loading{position:fixed;top:0;left:0;bottom:0;right:0;background:#f1f3f5;z-index:9999}#elementor-preview-loading{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;position:absolute;top:0;left:0;width:100%;height:100%;background-color:#fff}#elementor-preview-loading i{color:#d5dadf;font-size:50px}#elementor-fatal-error-dialog button.dialog-ok{color:#71d7f7}#elementor-fatal-error-dialog .dialog-header{color:#6d7882}#elementor-flexbox-attention-dialog .dialog-cancel{color:#39b54a}#elementor-flexbox-attention-dialog .dialog-ok{color:#6d7882}.elementor-nerd-box{padding:30px;text-align:center}.elementor-nerd-box-icon{width:100px;margin-right:10px}.elementor-nerd-box-title{margin-top:20px;font-size:16px;font-weight:700;line-height:1.4}.elementor-nerd-box-message{margin-top:5px;line-height:1.8;font-size:11px}.elementor-nerd-box .elementor-button.elementor-nerd-box-link{background-color:#93003c;color:#fff;padding:7px 25px;margin-top:20px;-webkit-box-shadow:0 0 1px rgba(0,0,0,.1),0 2px 2px rgba(0,0,0,.1);box-shadow:0 0 1px rgba(0,0,0,.1),0 2px 2px rgba(0,0,0,.1);-webkit-transition:.5s;-o-transition:.5s;transition:.5s}.elementor-nerd-box .elementor-button.elementor-nerd-box-link:hover{background-color:#c60051}.eicon-nerd:hover:before{content:"\e8b7"}.eicon-nerd:active:before{content:"\e8b6"}.e-group-control-header{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-weight:700;font-size:12px;padding:10px;-webkit-box-shadow:0 2px 8px rgba(0,0,0,.1);box-shadow:0 2px 8px rgba(0,0,0,.1);margin-bottom:15px}.e-control-tools,.e-group-control-header{display:-webkit-box;display:-ms-flexbox;display:flex}.e-control-tool{width:20px;height:20px;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-border-radius:3px;border-radius:3px;margin:0 3px;border:0;position:relative;background-color:#fff}.e-control-tool:not(.e-control-tool-disabled){-webkit-box-shadow:0 1px 5px rgba(0,0,0,.1);box-shadow:0 1px 5px rgba(0,0,0,.1);cursor:pointer}.e-control-tool-disabled{background:#e6e9ec;pointer-events:none}.e-control-tool-disabled i{color:#fff}.e-control-tool i{position:absolute;top:50%;left:50%;-webkit-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);color:#6d7882;font-size:13px}#e-enable-unfiltered-files-dialog .dialog-confirm-ok{color:#39b54a}i.eicon-tilted{-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.elementor-loader-wrapper{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);width:300px;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-loader{-webkit-border-radius:50%;border-radius:50%;padding:40px;height:150px;width:150px;background-color:hsla(0,0%,100%,.9);-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-box-shadow:2px 2px 20px 4px rgba(0,0,0,.02);box-shadow:2px 2px 20px 4px rgba(0,0,0,.02)}.elementor-loader-boxes{height:100%;width:100%;position:relative}.elementor-loader-box{position:absolute;background-color:#d5dadf;-webkit-animation:load 1.8s linear infinite;animation:load 1.8s linear infinite}.elementor-loader-box:first-of-type{width:20%;height:100%;left:0;top:0}.elementor-loader-box:not(:first-of-type){right:0;height:20%;width:60%}.elementor-loader-box:nth-of-type(2){top:0;-webkit-animation-delay:-.45s;animation-delay:-.45s}.elementor-loader-box:nth-of-type(3){top:40%;-webkit-animation-delay:-.9s;animation-delay:-.9s}.elementor-loader-box:nth-of-type(4){bottom:0;-webkit-animation-delay:-1.35s;animation-delay:-1.35s}.elementor-loading-title{color:#a4afb7;text-align:center;text-transform:uppercase;margin-top:30px;letter-spacing:7px;text-indent:7px;font-size:10px;width:100%}.elementor-button{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;font-weight:500;text-transform:uppercase;outline:none;border:none;-webkit-border-radius:3px;border-radius:3px;-webkit-transition-property:background,color,opacity,-webkit-box-shadow;transition-property:background,color,opacity,-webkit-box-shadow;-o-transition-property:background,color,box-shadow,opacity;transition-property:background,color,box-shadow,opacity;transition-property:background,color,box-shadow,opacity,-webkit-box-shadow;-webkit-transition-duration:.3s;-o-transition-duration:.3s;transition-duration:.3s}.elementor-button:hover{border:none}.elementor-button:not([disabled]){cursor:pointer}.elementor-button:not(.elementor-button-state) .elementor-state-icon{display:none}.elementor-button.elementor-button-success{color:#fff}.elementor-button.elementor-button-success[disabled]{background-color:#c2cbd2}.elementor-button.elementor-button-success:not([disabled]){background-color:#39b54a}.elementor-button.elementor-button-success:not([disabled]):hover{opacity:.85;-webkit-box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2);box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2)}.elementor-button.elementor-button-success:not([disabled]):active{-webkit-box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1);box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1)}.elementor-button.elementor-button-warning{background-color:#a4afb7;color:#fff}.elementor-button.elementor-button-warning[disabled]{background-color:#c2cbd2}.elementor-button.elementor-button-warning:not([disabled]):hover{background-color:#b01b1b;opacity:.85;-webkit-box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2);box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2)}.elementor-button.elementor-button-warning:not([disabled]):active{-webkit-box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1);box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1)}.elementor-button.elementor-button-danger{background-color:#d72b3f;color:#fff}.elementor-button.elementor-button-danger[disabled]{background-color:#c2cbd2}.elementor-button.elementor-button-danger:not([disabled]):hover{opacity:.85;-webkit-box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2);box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2)}.elementor-button.elementor-button-danger:not([disabled]):active{-webkit-box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1);box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1)}.elementor-button.elementor-edit-template{display:inline-block;margin-top:15px;color:#fff}.elementor-button.elementor-button-default{background-color:#a4afb7;color:#fff;font-size:11px;padding:7px 21px}.elementor-button.elementor-button-default:hover{background-color:#6d7882;-webkit-box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2);box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2)}.elementor-button.elementor-button-default:active{-webkit-box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1);box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1)}.elementor-button.elementor-button-default:visited{color:#fff}.elementor-button.elementor-button-go-pro{background-color:#93003c}.elementor-button i{margin-left:10px}.elementor-input-style,input,select,textarea{-webkit-border-radius:3px;border-radius:3px;font-size:12px;width:100%;background:none;-webkit-box-shadow:none;box-shadow:none;color:#6d7882;border:1px solid;outline:none}.elementor-input-style:not(:focus),input:not(:focus),select:not(:focus),textarea:not(:focus){border-color:#d5dadf}.elementor-input-style:focus,.elementor-input-style:focus+.elementor-control-dynamic-switcher,input:focus,input:focus+.elementor-control-dynamic-switcher,select:focus,select:focus+.elementor-control-dynamic-switcher,textarea:focus,textarea:focus+.elementor-control-dynamic-switcher{border-color:#a4afb7}.elementor-input-style::-webkit-input-placeholder,input::-webkit-input-placeholder,select::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#a4afb7}.elementor-input-style::-moz-placeholder,input::-moz-placeholder,select::-moz-placeholder,textarea::-moz-placeholder{color:#a4afb7}.elementor-input-style::-ms-input-placeholder,input::-ms-input-placeholder,select::-ms-input-placeholder,textarea::-ms-input-placeholder{color:#a4afb7}.elementor-input-style::placeholder,input::placeholder,select::placeholder,textarea::placeholder{color:#a4afb7}.elementor-error input,.elementor-error select,.elementor-error textarea{border-color:#b01b1b}input{min-width:0}.elementor-input-style,input,textarea{padding:5px}.elementor-input-style,textarea{resize:vertical}input[type=checkbox],input[type=radio]{height:auto;width:auto}input[disabled]{background-color:#e6e9ec;cursor:not-allowed;opacity:1}select{outline:none;height:27px}.ps{overflow:hidden!important;overflow-anchor:none;-ms-touch-action:auto;touch-action:auto}.ps__rail-y{display:none;opacity:0;-webkit-transition:background-color .2s linear,opacity .2s linear;-o-transition:background-color .2s linear,opacity .2s linear;transition:background-color .2s linear,opacity .2s linear;width:15px;right:0;left:auto!important;position:absolute}.ps--active-y>.ps__rail-y{display:block;background-color:transparent}.ps--focus>.ps__rail-y,.ps--scrolling-y>.ps__rail-y,.ps:hover>.ps__rail-y{opacity:.6}.ps .ps__rail-y.ps--clicking,.ps .ps__rail-y:focus,.ps .ps__rail-y:hover{opacity:.9}.ps__thumb-y{background-color:#aaa;-webkit-border-radius:6px;border-radius:6px;-webkit-transition:background-color .2s linear,width .2s ease-in-out;-o-transition:background-color .2s linear,width .2s ease-in-out;transition:background-color .2s linear,width .2s ease-in-out;width:6px;right:2px;position:absolute}.ps__rail-y.ps--clicking .ps__thumb-y,.ps__rail-y:focus>.ps__thumb-y,.ps__rail-y:hover>.ps__thumb-y{background-color:#999;width:6px}#nprogress{pointer-events:none}#nprogress .bar{background:#39b54a;position:fixed;z-index:1031;top:0;left:0;width:100%;height:2px}#nprogress .peg{display:block;position:absolute;right:0;width:100px;height:100%;-webkit-box-shadow:0 0 10px #39b54a,0 0 5px #39b54a;box-shadow:0 0 10px #39b54a,0 0 5px #39b54a;opacity:1;-webkit-transform:rotate(3deg) translateY(-4px);-ms-transform:rotate(3deg) translateY(-4px);transform:rotate(3deg) translateY(-4px)}#nprogress .spinner{display:none;position:fixed;z-index:1031;top:15px;right:15px}#nprogress .spinner-icon{width:18px;height:18px;-webkit-box-sizing:border-box;box-sizing:border-box;border-color:#39b54a transparent transparent #39b54a;border-style:solid;border-width:2px;-webkit-border-radius:50%;border-radius:50%;-webkit-animation:nprogress-spinner .4s linear infinite;animation:nprogress-spinner .4s linear infinite}.nprogress-custom-parent{overflow:hidden;position:relative}.nprogress-custom-parent #nprogress .bar,.nprogress-custom-parent #nprogress .spinner{position:absolute}@-webkit-keyframes nprogress-spinner{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes nprogress-spinner{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}#nprogress .bar,#nprogress .spinner{z-index:100000}:root{--e-is-preview-mode:0}@media (max-width:1439px){:root{--e-editor-panel-width:280px}}@media (min-width:1440px){:root{--e-editor-panel-width:300px}}.elementor-panel{position:relative;height:100%;-webkit-margin-start:calc(-1 * var(--e-editor-panel-width) * var(--e-is-preview-mode));margin-inline-start:calc(-1 * var(--e-editor-panel-width) * var(--e-is-preview-mode));width:var(--e-editor-panel-width);overflow:visible;background-color:#e6e9ec;z-index:1;font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;font-size:13px;right:0}.elementor-editor-preview .elementor-panel{--e-is-preview-mode:1}.elementor-editor-preview .elementor-panel>.ui-resizable-e,.elementor-editor-preview .elementor-panel>.ui-resizable-w{display:none}.elementor-panel .ps__rail-y{z-index:2}.elementor-panel .elementor-responsive-panel{padding:5px 10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(Min(135px,calc(50% - 5px)),1fr))}.elementor-panel .elementor-responsive-panel>.e-responsive-panel-stretch{grid-column:1/-1}.elementor-panel ::-moz-selection{background:#5bc0de;color:#fff}.elementor-panel ::selection{background:#5bc0de;color:#fff}.elementor-panel a{color:#93003c}.elementor-panel h1,.elementor-panel h2,.elementor-panel h3,.elementor-panel h4,.elementor-panel h5,.elementor-panel h6{font-size:100%;font-weight:400}.elementor-panel abbr,.elementor-panel acronym{border:0;font-variant:normal}.elementor-panel sup{vertical-align:text-top}.elementor-panel sub{vertical-align:text-bottom}.elementor-panel img{max-width:100%;height:auto;border:0}.elementor-panel ::-moz-focus-inner{padding:0;border:0}.elementor-panel :focus{outline:0}.elementor-panel .elementor-panel-box{margin-top:10px;background-color:#fff}.elementor-panel .elementor-panel-box-content{padding:20px 20px 10px}.elementor-panel .elementor-button{display:inline-block}.elementor-panel .elementor-panel-alert{background-color:#fcfcfc;padding:15px;border-right:3px solid transparent;position:relative;font-size:12px;font-weight:300;font-style:italic;line-height:1.5;text-align:right;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px;-webkit-box-shadow:0 1px 4px 0 rgba(0,0,0,.07);box-shadow:0 1px 4px 0 rgba(0,0,0,.07)}.elementor-panel .elementor-panel-alert a{color:inherit}.elementor-panel .elementor-panel-alert.elementor-panel-alert-info{border-color:#71d7f7;background-color:#f3fcff}.elementor-panel .elementor-panel-alert.elementor-panel-alert-success{border-color:#39b54a}.elementor-panel .elementor-panel-alert.elementor-panel-alert-warning{border-color:#fcb92c}.elementor-panel .elementor-panel-alert.elementor-panel-alert-danger{border-color:#d72b3f}.elementor-panel .elementor-label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;-webkit-border-radius:.25em;border-radius:.25em;text-transform:capitalize}.elementor-panel .elementor-label.elementor-label-default{background-color:#a4afb7}.elementor-panel .elementor-label.elementor-label-info{background-color:#5bc0de}.elementor-panel .elementor-label.elementor-label-success{background-color:#5cb85c}.elementor-panel .elementor-label.elementor-label-warning{background-color:#f0ad4e}.elementor-panel .elementor-label.elementor-label-danger{background-color:#d9534f}.elementor-panel .elementor-control-field-description,.elementor-panel .elementor-descriptor{font-size:11px;font-style:italic;line-height:1.4;color:#a4afb7}.elementor-panel .elementor-controls-popover{display:none;position:absolute;-webkit-box-shadow:0 2px 15px rgba(0,0,0,.3);box-shadow:0 2px 15px rgba(0,0,0,.3);-webkit-border-radius:3px;border-radius:3px;left:0;right:0;margin:-4px auto 5px;padding-top:15px;width:90%;z-index:10000;background-color:#fff}.elementor-panel .elementor-controls-popover:before{content:"";position:absolute;top:-16px;left:22px;border:8px solid transparent;border-bottom-color:#fff}.elementor-panel .elementor-controls-popover div.elementor-control{background-color:transparent}.elementor-panel .elementor-controls-popover div.elementor-control:before{content:none}.elementor-panel #elementor-controls .pojo-widget-button-collapse{display:none}.elementor-panel #elementor-panel-global .elementor-nerd-box .elementor-nerd-box-icon{margin-top:20px}.elementor-panel #elementor-panel-header{display:table;height:40px;width:100%;background-color:#93003c;color:#fff}.elementor-panel #elementor-panel-header>*{display:table-cell;vertical-align:middle;text-align:center}.elementor-panel .elementor-header-button{width:40px}.elementor-panel .elementor-header-button .elementor-icon{cursor:pointer;display:block;font-size:19px;height:40px;line-height:40px;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.elementor-panel .elementor-header-button .elementor-icon.eicon-menu-bar{font-size:18px}.elementor-panel .elementor-header-button .elementor-icon:hover{color:#d5dadf}.elementor-panel #elementor-panel-header-title{font-size:15px}.elementor-panel #elementor-panel-header-title img{width:90px}.elementor-panel #elementor-panel-elements-categories{padding-bottom:10px}.elementor-panel .elementor-panel-category{position:relative}.elementor-panel .elementor-panel-category:first-child .elementor-panel-category-title{padding-top:14px}.elementor-panel .elementor-panel-category.elementor-active .elementor-panel-category-title:before{-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg)}.elementor-panel .elementor-panel-category:not(.elementor-active):after{content:"";position:absolute;left:15px;right:15px;bottom:0;height:8px;background:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,.03)),to(transparent));background:-webkit-linear-gradient(rgba(0,0,0,.03),transparent);background:-o-linear-gradient(rgba(0,0,0,.03),transparent);background:linear-gradient(rgba(0,0,0,.03),transparent);-webkit-transform:translateY(100%);-ms-transform:translateY(100%);transform:translateY(100%)}.elementor-panel .elementor-panel-category-title{margin:0 15px;padding:20px 0;position:relative;text-transform:uppercase;font-size:11px;cursor:pointer}.elementor-panel .elementor-panel-category-title:before{content:"";font-family:eicons;position:absolute;left:0;-webkit-transition:-webkit-transform .3s;transition:-webkit-transform .3s;-o-transition:transform .3s;transition:transform .3s;transition:transform .3s,-webkit-transform .3s}.elementor-panel .elementor-panel-category-items{padding:0 10px}.elementor-panel .elementor-panel-scheme-title{padding:10px 20px;margin-top:10px}.elementor-panel .elementor-panel-scheme-description{padding:20px 20px 0}.elementor-panel .elementor-panel-scheme-buttons{padding:0 20px;display:table;table-layout:fixed;width:100%;height:40px;background-color:#fff;-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1)}.elementor-panel .elementor-panel-scheme-buttons .elementor-button{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;font-size:11px;font-weight:400}.elementor-panel .elementor-panel-scheme-button-wrapper{display:table-cell;vertical-align:middle;text-align:center}.elementor-panel .elementor-panel-scheme-button-wrapper:first-child{text-align:right}.elementor-panel .elementor-panel-scheme-button-wrapper:last-child{text-align:left}.elementor-panel .elementor-panel-scheme-save .elementor-button{padding:6px 18px}.elementor-panel .elementor-panel-scheme-discard .elementor-button,.elementor-panel .elementor-panel-scheme-reset .elementor-button{color:#a4afb7;background:none}.elementor-panel .elementor-panel-scheme-color .elementor-panel-scheme-items{position:relative;display:grid;grid-template-columns:repeat(4,27px);-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.elementor-panel .elementor-panel-scheme-color-title{text-align:center;text-transform:uppercase;margin:10px 0;color:#c2cbd2;font-size:8px}.elementor-panel .elementor-panel-scheme-typography-item{display:table;table-layout:fixed;width:100%;margin-bottom:15px}.elementor-panel .elementor-panel-scheme-typography-item>*{display:table-cell;vertical-align:middle}.elementor-panel .elementor-panel-scheme-typography-item-value input,.elementor-panel .elementor-panel-scheme-typography-item-value select{width:100%}.elementor-panel .elementor-panel-scheme-item:not(.elementor-open) .elementor-panel-scheme-typography-items{display:none}.elementor-panel .elementor-panel-scheme-color-system-scheme{margin-bottom:10px}.elementor-panel .elementor-panel-scheme-color-system-scheme .elementor-title{font-size:11px;color:#a4afb7;font-style:italic;margin-top:5px}.elementor-panel .elementor-panel-scheme-color-system-items{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-transition:border .5s;-o-transition:border .5s;transition:border .5s;overflow:hidden;padding:3px;-webkit-border-radius:3px;border-radius:3px;border:1px solid #d5dadf;cursor:pointer}.elementor-panel .elementor-panel-scheme-color-system-items:hover{border:1px solid #a4afb7}.elementor-panel .elementor-panel-scheme-color-system-item{height:20px;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-panel #elementor-panel-schemes-disabled a{color:#39b54a}.elementor-panel #elementor-panel-schemes-disabled a:hover{text-decoration:underline}.elementor-panel #elementor-panel-schemes-disabled .elementor-nerd-box-icon{margin-top:20px}.elementor-panel #elementor-panel-page-menu{padding:25px 15px}.elementor-panel .elementor-panel-menu-group-title{text-transform:uppercase;font-size:11px}.elementor-panel .elementor-panel-menu-items{margin:15px 0 25px;-webkit-border-radius:5px;border-radius:5px;overflow:hidden}.elementor-panel .elementor-panel-menu-item{display:table;width:100%;height:40px;cursor:pointer;margin-bottom:1px;background-color:#fff}.elementor-panel .elementor-panel-menu-item:hover{background-color:hsla(0,0%,100%,.8)}.elementor-panel .elementor-panel-menu-item>*{display:table-cell;vertical-align:middle}.elementor-panel .elementor-panel-menu-item-icon{text-align:center;width:50px;color:#a4afb7;font-size:19px}.elementor-panel .elementor-panel-menu-item-icon .eicon-editor-external-link{font-size:18px}.elementor-panel .elementor-panel-menu-item-title{font-weight:500}.elementor-panel .elementor-panel-menu-item-title>span{color:#39b54a}.elementor-panel .elementor-panel-menu-item a{color:#6d7882}.elementor-panel .elementor-panel-menu-item-exit-to-dashboard{background-color:#0085ba;color:#fff;text-transform:uppercase;font-size:12px}.elementor-panel .elementor-panel-menu-item-exit-to-dashboard:hover{background-color:#0073a1}.elementor-panel .elementor-panel-menu-item-exit-to-dashboard .elementor-panel-menu-item-icon,.elementor-panel .elementor-panel-menu-item-exit-to-dashboard .elementor-panel-menu-item-title{color:#fff}.elementor-panel .elementor-panel-menu-item-settings-additional-settings{background-color:#f1f3f5}.elementor-panel .elementor-control.elementor-control-clear_page{background-color:transparent}.elementor-panel .elementor-control.elementor-control-clear_page .elementor-control-raw-html{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.elementor-panel .elementor-panel-navigation{background-color:#fff;-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1);display:table;table-layout:fixed;width:100%}.elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab{display:table-cell}.elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab.elementor-active{background-image:-webkit-gradient(linear,left top,left bottom,from(#f1f3f5),to(#fff));background-image:-webkit-linear-gradient(top,#f1f3f5,#fff);background-image:-o-linear-gradient(top,#f1f3f5,#fff);background-image:linear-gradient(180deg,#f1f3f5,#fff);border-bottom:3px solid #93003c}.elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab a{display:block;text-align:center;padding:12px 0 8px;font-size:10px;color:#6d7882}.elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab a:before{font-family:eicons;font-size:16px;display:block;margin-bottom:6px}.elementor-panel .elementor-tab-control-content a:before{content:"\e92c"}.elementor-panel .elementor-tab-control-style a:before{content:"\e921"}.elementor-panel .elementor-tab-control-advanced a:before,.elementor-panel .elementor-tab-control-general_style a:before,.elementor-panel .elementor-tab-control-settings a:before{content:"\e916"}.elementor-panel .elementor-tab-control-responsive a:before{content:"\e885"}.elementor-panel .elementor-tab-control-column a:before,.elementor-panel .elementor-tab-control-layout a:before{content:"\e899"}.elementor-panel .elementor-tab-control-lightbox a:before{content:"\e922"}.elementor-panel #elementor-panel__editor__help{padding:50px 25px;display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-panel #elementor-panel__editor__help,.elementor-panel #elementor-panel__editor__help__link{-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-panel #elementor-panel__editor__help__link{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;color:#6d7882;font-size:12px;font-weight:500;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.elementor-panel #elementor-panel__editor__help__link i{padding:0 5px;color:#a4afb7;font-size:18px;position:relative}.elementor-panel #elementor-panel__editor__help__link i:after{content:"";position:absolute;height:13px;width:13px;top:3px;bottom:0;right:8px;left:0;-webkit-border-radius:50%;border-radius:50%;z-index:-1}.elementor-panel #elementor-panel__editor__help__link:hover{color:#495157}.elementor-panel #elementor-panel__editor__help__link:hover i{color:#71d7f7}.elementor-panel #elementor-panel__editor__help__link:hover i:before{content:"\e941"}.elementor-panel #elementor-panel__editor__help__link:hover i:after{background:#fff}.elementor-panel #elementor-panel-footer{position:absolute;bottom:0;left:0;right:0;height:40px;background-color:#495157}.elementor-panel #elementor-panel-footer-tools{display:table;table-layout:fixed;width:100%;height:100%}.elementor-panel .elementor-panel-footer-tool{display:table-cell;vertical-align:middle;text-align:center;cursor:pointer;color:#a4afb7;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.elementor-panel .elementor-panel-footer-tool #elementor-panel-saver-button-update{border-left:1px solid #2d8739;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-panel .elementor-panel-footer-tool #elementor-panel-saver-button-update i{margin-left:5px}.elementor-panel .elementor-panel-footer-tool #elementor-panel-saver-button-save-options{float:right;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-panel .elementor-panel-footer-tool #elementor-panel-saver-button-save-options i{margin:auto}.elementor-panel .elementor-panel-footer-tool.elementor-open{color:#fff}.elementor-panel .elementor-panel-footer-tool:not(.elementor-open):hover{color:#d5dadf}.elementor-panel .elementor-panel-footer-tool:not(.elementor-open) .elementor-panel-footer-sub-menu-wrapper{display:none}.elementor-panel .elementor-panel-footer-sub-menu-wrapper{position:absolute;bottom:100%;left:0;width:100%;background-color:#556068;padding:10px;-webkit-box-shadow:-2px -5px 8px rgba(0,0,0,.1);box-shadow:-2px -5px 8px rgba(0,0,0,.1);cursor:default;z-index:10000}.elementor-panel .elementor-panel-footer-sub-menu{-webkit-border-radius:5px;border-radius:5px;overflow:hidden}.elementor-panel .elementor-panel-footer-sub-menu-item{background-color:#495157;display:table;table-layout:fixed;width:100%;cursor:pointer}.elementor-panel .elementor-panel-footer-sub-menu-item.elementor-disabled .elementor-icon,.elementor-panel .elementor-panel-footer-sub-menu-item.elementor-disabled .elementor-title{color:#6d7882}.elementor-panel .elementor-panel-footer-sub-menu-item:not(:last-child){margin-bottom:1px}.elementor-panel .elementor-panel-footer-sub-menu-item:hover{background-color:rgba(0,0,0,.2)}.elementor-panel .elementor-panel-footer-sub-menu-item.active{background-color:rgba(0,0,0,.3)}.elementor-panel .elementor-panel-footer-sub-menu-item>*{display:table-cell;height:40px;vertical-align:middle}.elementor-panel .elementor-panel-footer-sub-menu-item .elementor-icon{width:40px;color:#a4afb7}.elementor-panel .elementor-panel-footer-sub-menu-item .elementor-title{text-align:right;color:#d5dadf}.elementor-panel .elementor-panel-footer-sub-menu-item .elementor-description{width:95px;text-align:right;font-size:11px;font-style:italic;color:#a4afb7}.elementor-panel #elementor-panel-footer-help-title{text-align:right;padding:10px 0;color:#d5dadf}.elementor-panel #elementor-panel-footer-responsive>i{display:block;height:100%;line-height:40px}.elementor-panel #elementor-panel-footer-saver-publish{width:80px}.elementor-panel #elementor-panel-footer-saver-publish .elementor-button-state i{margin-left:0}.elementor-panel #elementor-panel-footer-saver-publish .elementor-button-state #elementor-panel-saver-button-publish-label{display:none}.elementor-panel #elementor-panel-footer-saver-options{width:35px;border-right:1px solid #495157}.elementor-panel #elementor-panel-footer-saver-options .elementor-last-edited-wrapper{font-size:11px;font-style:italic;color:#a4afb7;padding:5px 0 15px}.elementor-panel #elementor-panel-footer-saver-options .elementor-last-edited-wrapper:not(.elementor-state-active) .elementor-state-icon{display:none}.elementor-panel #elementor-panel-footer-saver-options .elementor-last-edited-wrapper time{border-bottom:1px dotted transparent;-webkit-transition:all .3s ease-in-out;-o-transition:all ease-in-out .3s;transition:all .3s ease-in-out;cursor:pointer}.elementor-panel #elementor-panel-footer-saver-options .elementor-last-edited-wrapper time:hover{border-bottom-color:inherit}.elementor-panel .elementor-disabled{cursor:default}.elementor-panel #elementor-panel-saver-button-preview a{color:#a4afb7}.elementor-panel #elementor-panel-saver-button-publish,.elementor-panel #elementor-panel-saver-button-save-options{font-size:11px;text-transform:uppercase;height:26px}.elementor-panel #elementor-panel-saver-button-publish.elementor-disabled,.elementor-panel #elementor-panel-saver-button-save-options.elementor-disabled{background-color:#556068;color:#a4afb7}.elementor-panel #elementor-panel-saver-button-publish{width:100%;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-panel #elementor-panel-saver-button-save-options{width:25px}#elementor-panel-elements-navigation .elementor-panel-navigation-tab{text-align:center;padding:10px 0;font-size:11px;text-transform:uppercase;cursor:pointer}#elementor-panel-elements{overflow:hidden}#elementor-panel-state-loading{display:none}body.elementor-panel-loading #elementor-panel-state-loading{position:absolute;top:0;left:0;height:100%;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;background-color:hsla(0,0%,100%,.5);z-index:2}#elementor-panel-state-loading .eicon-loading{font-size:25px;color:#71d7f7}#elementor-panel-elements-search-area{position:-webkit-sticky;position:sticky;top:0;padding:10px;background-color:#e6e9ec;z-index:1}#elementor-panel-elements-search-wrapper{position:relative}#elementor-panel-elements-search-input{background-color:hsla(0,0%,100%,.7);font-size:11px;padding:10px 29px 10px 10px;font-style:italic;color:#a4afb7;border:none;-webkit-transition:all 1s;-o-transition:all 1s;transition:all 1s;-webkit-border-radius:3px;border-radius:3px;appearance:none;-webkit-appearance:none;-moz-appearance:none}#elementor-panel-elements-search-input+i{position:absolute;right:10px;top:50%;color:#a4afb7;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}#elementor-panel-elements-search-input:focus{background-color:#fff;padding-left:15px}.elementor-panel .elementor-element{-webkit-border-radius:3px;border-radius:3px;background-color:#fff;cursor:move;position:relative}.elementor-panel .elementor-element-wrapper{text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box}.elementor-panel .elementor-element--promotion .elementor-element{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.elementor-panel .elementor-element .icon,.elementor-panel .elementor-element .title{color:#556068;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.elementor-panel .elementor-element:hover{-webkit-box-shadow:0 2px 6px rgba(0,0,0,.2);box-shadow:0 2px 6px rgba(0,0,0,.2)}.elementor-panel .elementor-element:hover .icon,.elementor-panel .elementor-element:hover .title{color:#93003c}.elementor-panel .elementor-element .icon{font-size:28px;padding-top:15px}.elementor-panel .elementor-element .elementor-element-title-wrapper{display:table;width:100%}.elementor-panel .elementor-element .title{font-size:11px;display:table-cell;vertical-align:middle;height:40px}.elementor-panel .elementor-element>.eicon-lock{position:absolute;top:5px;left:5px;color:#e6e9ec}#elementor-element--promotion__dialog{position:absolute;width:300px;z-index:1;background-color:#fff;-webkit-box-shadow:0 2px 15px rgba(0,0,0,.3);box-shadow:0 2px 15px rgba(0,0,0,.3);-webkit-border-radius:3px;border-radius:3px}#elementor-element--promotion__dialog:after{content:"";position:absolute;top:15px;left:100%;-webkit-transform:scaleY(.7);-ms-transform:scaleY(.7);transform:scaleY(.7);border:10px solid transparent;border-left-color:#fff}#elementor-element--promotion__dialog__title{font-size:14px}#elementor-element--promotion__dialog .dialog-header{display:-webkit-box;display:-ms-flexbox;display:flex;padding:20px;color:#495157;border-bottom:1px solid #e6e9ec;font-weight:500}#elementor-element--promotion__dialog .dialog-header i{color:#a4afb7}#elementor-element--promotion__dialog .dialog-header .eicon-pro-icon{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;margin-right:10px;font-size:14px}#elementor-element--promotion__dialog .dialog-header .eicon-close{cursor:pointer}#elementor-element--promotion__dialog .dialog-message{padding:20px}#elementor-element--promotion__dialog .dialog-buttons-wrapper{padding:0 20px 20px}#elementor-element--promotion__dialog .dialog-button{width:100%;padding:6.5px;font-size:12px}#elementor-element--promotion__dialog .dialog-button::-moz-focus-inner{border:0}#elementor-panel-inner{position:relative;height:100%;-webkit-box-shadow:0 0 5px 0 rgba(0,0,0,.2);box-shadow:0 0 5px 0 rgba(0,0,0,.2)}#elementor-panel-content-wrapper{position:absolute;bottom:40px;top:40px;left:0;width:100%}.elementor-panel-container{clear:both;padding-left:15px;padding-right:15px}.media-modal.wp-core-ui input,.media-modal.wp-core-ui select{width:auto}.media-modal.wp-core-ui fieldset{padding:0;border:0}.media-modal.wp-core-ui .wp-clearfix:after{content:"";display:table;clear:both}.media-modal.wp-core-ui .e-wp-media-elements-removed .embed-link-settings,.media-modal.wp-core-ui .e-wp-media-elements-removed .embed-media-settings>:not(.wp-clearfix):not(.alt-text):not(#alt-text-description){display:none}.media-modal.wp-core-ui .e-wp-media-elements-removed #embed-url-field{width:70%}.media-modal.wp-core-ui .e-wp-media-elements-removed .media-embed .thumbnail{margin-top:20px}.media-modal.wp-core-ui .e-wp-media-elements-removed .media-embed .thumbnail,.media-modal.wp-core-ui .e-wp-media-elements-removed .media-embed .thumbnail img{max-height:none}.media-modal.wp-core-ui .e-wp-media-elements-removed .media-embed .thumbnail:after{-webkit-box-shadow:none;box-shadow:none}.media-modal.wp-core-ui .e-wp-media-elements-removed .media-button-select{font-size:0}.media-modal.wp-core-ui .e-wp-media-elements-removed .media-button-select:before{content:var(--button-text);font-size:13px}#elementor-panel-get-pro-elements .elementor-nerd-box-message{margin-top:10px}#elementor-panel-get-pro-elements .elementor-nerd-box-icon{margin-top:20px}.elementor-control{--control-title-size:12px;background-color:#fff;position:relative;padding:0 20px 15px}.elementor-control a{font-weight:500;text-decoration:none;border-bottom:1px dotted transparent;-webkit-transition:all .3s ease-in-out;-o-transition:all ease-in-out .3s;transition:all .3s ease-in-out}.elementor-control a:hover{border-bottom-color:inherit}.elementor-control a.elementor-responsive-switcher{border-bottom:0}.elementor-control .elementor-control-content{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.elementor-control .elementor-control-title{font-size:var(--control-title-size);line-height:1;margin-left:5px}.elementor-control .elementor-control-spinner{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-control.elementor-control-type-divider{padding:0;background-color:transparent}.elementor-control.elementor-control-type-divider .elementor-control-content{border:solid #e6e9ec;border-width:1px 0 0;background-color:#fff;height:15px}.elementor-control.elementor-control-separator-default:not(.elementor-control-type-divider).elementor-control-wp{margin-top:15px}.elementor-control.elementor-control-separator-default:not(.elementor-control-type-divider).elementor-control-wp:before{content:"";height:1px;display:block;margin-bottom:15px;background-color:transparent}.elementor-control.elementor-control-separator-before{padding-top:15px}.elementor-control.elementor-control-separator-before:before{content:"";position:absolute;height:1px;width:100%;top:0;left:0;background-color:#e6e9ec}.elementor-control.elementor-control-separator-after:after{content:"";position:absolute;height:1px;width:100%;bottom:0;left:0;background-color:#e6e9ec}.elementor-control.elementor-control-separator-after+.elementor-control-type-tabs+.elementor-control-separator-default,.elementor-control.elementor-control-separator-after:not(.elementor-hidden-control)+.elementor-control-separator-default{padding-top:15px}.elementor-control.elementor-control-deprecated,.elementor-control.elementor-control-deprecated .elementor-control-field-description{color:#b01b1b}.elementor-control.elementor-control-hidden-label>*>*>.elementor-control-title,.elementor-control.elementor-control-hidden-label>*>.elementor-control-title,.elementor-control.elementor-hidden-control{display:none}.elementor-control.elementor-control-type-heading .elementor-control-title{font-weight:700;margin:0}body:not(.elementor-device-desktop) .elementor-control.elementor-control-responsive-desktop,body:not(.elementor-device-laptop) .elementor-control.elementor-control-responsive-laptop,body:not(.elementor-device-mobile) .elementor-control.elementor-control-responsive-mobile,body:not(.elementor-device-mobile_extra) .elementor-control.elementor-control-responsive-mobile_extra,body:not(.elementor-device-tablet) .elementor-control.elementor-control-responsive-tablet,body:not(.elementor-device-tablet_extra) .elementor-control.elementor-control-responsive-tablet_extra,body:not(.elementor-device-widescreen) .elementor-control.elementor-control-responsive-widescreen{display:none}.elementor-control.elementor-control-type-select .elementor-control-input-wrapper{position:relative}.elementor-control.elementor-control-type-select .elementor-control-input-wrapper select{appearance:none;-webkit-appearance:none;-moz-appearance:none;font-size:12px;font-family:inherit;font-weight:inherit;font-style:inherit;text-transform:inherit;letter-spacing:inherit;line-height:inherit;-ms-flex-preferred-size:100%;flex-basis:100%;padding-right:5px;padding-left:20px;cursor:pointer}.elementor-control.elementor-control-type-select .elementor-control-input-wrapper select.e-select-placeholder{color:#a4afb7}.elementor-control.elementor-control-type-select .elementor-control-input-wrapper option.e-option-placeholder{display:none}.elementor-control.elementor-control-type-select .elementor-control-input-wrapper:after{font-family:eicons;content:"\e8ad";font-size:12px;position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);left:5px;pointer-events:none}.elementor-control-custom_attributes_pro .elementor-nerd-box-message,.elementor-control-custom_css_pro .elementor-nerd-box-message{margin-top:5px}.elementor-control.elementor-control-custom_css_title{font-size:12px}.elementor-control.elementor-open .elementor-panel-heading-toggle .eicon:before,.elementor-panel-scheme-item.elementor-open .elementor-panel-heading-toggle .eicon:before{content:"\e92a"}.elementor-control:not(.elementor-open) .elementor-panel-heading-toggle .eicon:before,.elementor-panel-scheme-item:not(.elementor-open) .elementor-panel-heading-toggle .eicon:before{content:""}.elementor-panel-heading{display:table;table-layout:fixed;height:40px;padding:0 20px;width:100%;border-bottom:1px solid #e6e9ec;cursor:pointer}.elementor-panel-heading>*{display:table-cell;vertical-align:middle}.elementor-panel-heading-toggle{width:20px;color:#495157}.elementor-panel-heading-title{color:#495157;font-weight:700}.elementor-control-wp{line-height:1.5}.elementor-control-wp p{margin:15px 0}.elementor-control-field{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-label-block>.elementor-control-content>.elementor-control-field{-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-label-block>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{width:100%;margin-top:10px}.elementor-label-block.elementor-control-hidden-label.elementor-label-block>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper,.elementor-label-block.elementor-control-hidden-label:not(.elementor-control-dynamic)>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{margin-top:0}.elementor-label-inline>.elementor-control-content>.elementor-control-field>.elementor-control-title{-ms-flex-negative:0;flex-shrink:0}.elementor-label-inline>.elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{margin-right:auto}.elementor-control-field-description{margin-top:10px}.elementor-group-control-attachment_alert .elementor-control-field-description{margin-top:0}.elementor-required{color:#b01b1b}.elementor-units-choices{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;text-align:left}.elementor-units-choices input{display:none}.elementor-units-choices input:not(:checked)+label{color:#a4afb7}.elementor-units-choices input.e-units-placeholder+label{color:#c2cbd2;text-decoration:underline}.elementor-units-choices input:checked+label{text-decoration:underline}.elementor-units-choices label{cursor:pointer;padding:0 2px;text-transform:uppercase;font-size:9px}.elementor-control-start-end .eicon-h-align-left,.elementor-control-start-end .eicon-h-align-right{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.elementor-control-responsive-switchers{--selected-option:0;--pointer-position:var(--selected-option);position:relative;width:2em;height:2em;margin:calc(-2em + var(--control-title-size)) 0;margin-left:5px}.elementor-control-responsive-switchers__holder{position:absolute;width:100%;top:0;background-color:#fff;-webkit-border-radius:3px;border-radius:3px;-webkit-transition:.15s;-o-transition:.15s;transition:.15s;border:1px solid transparent}.elementor-control-responsive-switchers.elementor-responsive-switchers-open{z-index:11000}.elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-responsive-switcher{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-responsive-switcher:hover{color:#71d7f7}.elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-control-responsive-switchers__holder{top:calc(-1 * var(--selected-option) * 2em);-webkit-box-shadow:0 0 3px rgba(0,0,0,.2);box-shadow:0 0 3px rgba(0,0,0,.2)}.elementor-responsive-switcher{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;position:relative;z-index:2;cursor:pointer;height:0;-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);opacity:0;-webkit-transition:.15s;-o-transition:.15s;transition:.15s;font-size:12px}a.elementor-responsive-switcher{color:#a4afb7}a.elementor-responsive-switcher:hover{color:#71d7f7}.elementor-device-widescreen .elementor-responsive-switcher.elementor-responsive-switcher-widescreen{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-widescreen .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-widescreen{color:#71d7f7}.elementor-device-desktop .elementor-responsive-switcher.elementor-responsive-switcher-desktop{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-desktop .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-desktop{color:#71d7f7}.elementor-device-laptop .elementor-responsive-switcher.elementor-responsive-switcher-laptop{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-laptop .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-laptop{color:#71d7f7}.elementor-device-tablet_extra .elementor-responsive-switcher.elementor-responsive-switcher-tablet_extra{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-tablet_extra .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-tablet_extra{color:#71d7f7}.elementor-device-tablet .elementor-responsive-switcher.elementor-responsive-switcher-tablet{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-tablet .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-tablet{color:#71d7f7}.elementor-device-mobile_extra .elementor-responsive-switcher.elementor-responsive-switcher-mobile_extra{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-mobile_extra .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-mobile_extra{color:#71d7f7}.elementor-device-mobile .elementor-responsive-switcher.elementor-responsive-switcher-mobile{height:2em;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:1}.elementor-device-mobile .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-mobile{color:#71d7f7}.elementor-update-preview{margin:15px 15px 0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-update-preview-button-wrapper{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;text-align:left}.elementor-update-preview-button{padding:8px 15px;text-transform:uppercase}.elementor-control-direction-ltr input,.elementor-control-direction-ltr textarea{direction:ltr}.elementor-control-direction-rtl input,.elementor-control-direction-rtl textarea{direction:rtl}.elementor-control-type-button .elementor-control-input-wrapper{text-align:left}.elementor-control-type-button .elementor-button{width:auto;height:26px}.elementor-control-type-choose.elementor-label-block .elementor-choices{width:100%}.elementor-choices{display:-webkit-box;display:-ms-flexbox;display:flex;height:27px;line-height:27px;text-align:center;border-spacing:1px;-webkit-border-radius:3px;border-radius:3px;overflow:hidden}.elementor-choices .elementor-choices-label{border:1px solid #d5dadf;border-left:none;font-size:12px;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s;cursor:pointer;overflow:hidden}.elementor-choices .elementor-choices-label:nth-child(2){-webkit-border-top-right-radius:3px;border-top-right-radius:3px;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px}.elementor-choices .elementor-choices-label:last-child{border-left:1px solid #d5dadf;-webkit-border-top-left-radius:3px;border-top-left-radius:3px;-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px}.elementor-choices input{display:none}.elementor-choices input.e-choose-placeholder+.elementor-choices-label{color:#fff;background-color:#c2cbd2;border-color:#c2cbd2}.elementor-choices input:checked+.elementor-choices-label{color:#fff;background-color:#a4afb7;border-color:#a4afb7}.elementor-label-inline .elementor-choices{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.rtl .elementor-control-align .elementor-choices,.rtl .elementor-control-position .elementor-choices,.rtl .elementor-control-text_align .elementor-choices{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.rtl .elementor-control-align .elementor-choices .elementor-choices-label:nth-child(2),.rtl .elementor-control-position .elementor-choices .elementor-choices-label:nth-child(2),.rtl .elementor-control-text_align .elementor-choices .elementor-choices-label:nth-child(2){border-left:1px solid #d5dadf;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.rtl .elementor-control-align .elementor-choices .elementor-choices-label:last-child,.rtl .elementor-control-position .elementor-choices .elementor-choices-label:last-child,.rtl .elementor-control-text_align .elementor-choices .elementor-choices-label:last-child{border-left:none;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-control-type-color.e-control-global .e-global__popover-toggle~.pickr{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px;-ms-flex-negative:0;flex-shrink:0}.elementor-control-type-color .elementor-control-title{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-control-type-color .elementor-control-input-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-control-type-color .elementor-control-dynamic-switcher{border-right-width:0;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-color.elementor-control-dynamic .pickr{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-group-control-css-filter .elementor-slider{height:6px;-webkit-box-shadow:0 0 1px 1px inset rgba(0,0,0,.2);box-shadow:inset 0 0 1px 1px rgba(0,0,0,.2)}.elementor-group-control-css-filter .elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{margin-top:0;margin-bottom:5px}.elementor-group-control-blur .elementor-slider{background:url(../images/blur.png);-webkit-background-size:cover;background-size:cover;background-position:50%}.elementor-group-control-contrast .elementor-slider{background:url(../images/contrast.png);-webkit-background-size:100% 100%;background-size:100% 100%}.elementor-group-control-hue .elementor-slider{background-image:-webkit-gradient(linear,left top,right top,from(red),color-stop(orange),color-stop(#ff0),color-stop(#adff2f),color-stop(#32cd32),color-stop(#00bfff),color-stop(#00f),color-stop(95%,#9400d3));background-image:-webkit-linear-gradient(left,red,orange,#ff0,#adff2f,#32cd32,#00bfff,#00f,#9400d3 95%);background-image:-o-linear-gradient(left,red,orange,#ff0,#adff2f,#32cd32,#00bfff,#00f,#9400d3 95%);background-image:linear-gradient(90deg,red,orange,#ff0,#adff2f,#32cd32,#00bfff,#00f,#9400d3 95%)}.elementor-group-control-saturate .elementor-slider{background-image:-webkit-gradient(linear,left top,right top,from(grey),to(red));background-image:-webkit-linear-gradient(left,grey,red);background-image:-o-linear-gradient(left,grey,red);background-image:linear-gradient(90deg,grey,red)}.elementor-group-control-brightness .elementor-slider{background-image:-webkit-gradient(linear,left top,right top,from(#000),to(#fff));background-image:-webkit-linear-gradient(left,#000,#fff);background-image:-o-linear-gradient(left,#000,#fff);background-image:linear-gradient(90deg,#000,#fff)}.elementor-control-type-dimensions .elementor-control-dimensions{overflow:hidden}.elementor-control-type-dimensions li{float:left;width:20%}.elementor-control-type-dimensions li .elementor-link-dimensions,.elementor-control-type-dimensions li input{display:block;text-align:center;width:100%;border-color:#d5dadf;height:27px}.elementor-control-type-dimensions li input{border-left:none;-webkit-border-radius:0;border-radius:0;padding:4px 0}.elementor-control-type-dimensions li input:focus{border-left:1px solid;border-color:#a4afb7;margin-left:-1px;width:calc(100% + 1px)}.elementor-control-type-dimensions li input:focus+.elementor-control-dimension-label{color:#a4afb7}.elementor-control-type-dimensions li .elementor-link-dimensions{border:1px solid #d5dadf;border-left:none;background-color:#fff;padding:0;outline:none;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;cursor:pointer}.elementor-control-type-dimensions li:first-child input{border-left:1px solid #d5dadf;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-dimensions li:first-child input:focus{border-color:#a4afb7;margin-left:0;width:100%}.elementor-control-type-dimensions .elementor-control-dimension-label{display:block;text-align:center;color:#d5dadf;font-size:9px;text-transform:uppercase;padding-top:5px}.elementor-control-type-dimensions .elementor-link-dimensions.unlinked{background-color:#fff}.elementor-control-type-dimensions .elementor-link-dimensions.unlinked .elementor-linked{display:none}.elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked){background-color:#a4afb7;border-color:#a4afb7}.elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked) .elementor-unlinked{display:none}.elementor-control-type-dimensions .elementor-link-dimensions .elementor-linked{color:#fff}.elementor-control-type-icons .elementor-control-media__preview>*{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor-control-type-icons .elementor-control-media__preview i{font-size:70px;color:#6d7882}.elementor-control-type-icons .elementor-control-media__preview svg{height:75%}.elementor-control-type-icons .elementor-control-icons--inline__svg i.eicon-upload{font-size:15px}.elementor-control-type-gallery .elementor-control-media__content{border:1px solid #d5dadf;-webkit-border-radius:3px;border-radius:3px}.elementor-control-type-gallery .elementor-control-gallery-status{font-size:12px;height:27px;padding-right:10px;border-bottom:1px solid #d5dadf;display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-control-type-gallery .elementor-control-gallery-status>*{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-control-type-gallery .elementor-control-gallery-status-title{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-control-type-gallery .elementor-control-gallery-content{position:relative;overflow:hidden}.elementor-control-type-gallery .elementor-control-gallery-content:not(:hover) .elementor-control-gallery-edit{opacity:0}.elementor-control-type-gallery .elementor-control-gallery-thumbnails{display:grid;grid-template-columns:repeat(auto-fill,minmax(48px,1fr));grid-gap:10px;cursor:pointer;padding:10px}.elementor-control-type-gallery .elementor-control-gallery-thumbnail{width:48px;height:48px;-webkit-background-size:cover;background-size:cover;background-position:50% 50%}.elementor-control-type-gallery .elementor-control-gallery-edit{position:absolute;top:0;bottom:0;left:0;right:0;background-color:rgba(109,120,130,.3);padding:10px;font-size:11px;-webkit-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;transition:all .3s ease-in-out;pointer-events:none;cursor:pointer;opacity:1}.elementor-control-type-gallery .elementor-control-gallery-edit span{position:absolute;top:10px;left:10px;width:21px;height:21px;background-color:hsla(0,0%,100%,.9);color:#a4afb7;-webkit-box-shadow:0 0 7px 0 rgba(0,0,0,.2);box-shadow:0 0 7px 0 rgba(0,0,0,.2);-webkit-border-radius:3px;border-radius:3px}.elementor-control-type-gallery .elementor-control-gallery-edit span i{font-size:11px;padding:5px}.elementor-control-type-gallery .elementor-control-gallery-add{width:48px;height:48px;color:#fff;background-color:#d5dadf;font-size:14px;-webkit-border-radius:0;border-radius:0}.elementor-control-type-gallery .elementor-control-gallery-add:hover{background-color:#c2cbd2}.elementor-control-type-gallery .elementor-control-gallery-add i{margin:0;color:#a4afb7}.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-clear,.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-edit,.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-thumbnails{display:none}.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-content{padding:10px}.elementor-control-type-gallery.elementor-gallery-has-images .elementor-control-gallery-add{display:none}.elementor-control-type-gallery.elementor-control-dynamic .elementor-control-gallery-clear{border-right:1px solid #d5dadf}.elementor-control-type-gallery .elementor-control-gallery-clear{cursor:pointer;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-control-type-gallery .elementor-control-gallery-clear:hover{color:#b01b1b}.elementor-control-type-gallery .elementor-control-dynamic-switcher{border:1px solid #d5dadf;border-top:none;border-left:none;-webkit-border-radius:3px 0 0 0;border-radius:3px 0 0 0}.e-global__popover{width:288px;z-index:1;font-size:12px;padding-right:10px}.e-global__popover-toggle{border:1px solid #d5dadf;border-left:0;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;cursor:pointer}.e-global__popover-toggle--active i{color:#71d7f7}.e-global__popover-container{-webkit-box-shadow:0 2px 15px rgba(0,0,0,.3);box-shadow:0 2px 15px rgba(0,0,0,.3);-webkit-border-radius:3px;border-radius:3px;background-color:#fff;padding-bottom:5px}.e-global__popover-title{padding:15px 20px;font-weight:500;color:#6d7882;border-bottom:1px solid #e6e9ec;display:-webkit-box;display:-ms-flexbox;display:flex}.e-global__popover-title>i{margin-left:5px;color:#d5dadf}.e-global__popover-title-text{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.e-global__popover-info{margin-left:5px;display:inline-block}.e-global__popover-info-tooltip{width:270px;z-index:1;background-color:rgba(0,0,0,.9);color:#fff;padding:20px;-webkit-border-radius:3px;border-radius:3px}.e-global__popover-info-tooltip:after{content:"";position:absolute;bottom:-17px;right:16px;border:10px solid transparent;border-top-color:rgba(0,0,0,.9)}.e-global__popover-info i{color:#d5dadf;font-size:13px}.e-global__preview-items-container{max-height:260px;overflow-y:auto;margin-top:5px}.e-global__preview-items-container::-webkit-scrollbar{width:7px}.e-global__preview-items-container::-webkit-scrollbar-thumb{background-color:#c2cbd2;-webkit-border-radius:10px;border-radius:10px}.e-global__manage-button{font-weight:500;cursor:pointer}.e-global__manage-button:hover i{color:#4ab7f4}.e-global__manage-button i{color:#6d7882}.e-global__typography{padding:5px 35px 5px 10px;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}.e-global__typography.e-global__preview-item--selected:before{font-family:eicons;font-size:13px;content:"\e90e";position:absolute;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);top:50%;left:12px}.e-global__color{margin:5px auto;padding:5px 20px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.e-global__color:first-child{margin-top:5px}.e-global__color:last-child{margin-bottom:10px}.e-global__color-preview-container{height:20px;width:20px;-webkit-border-radius:3px;border-radius:3px;border:1px solid rgba(0,0,0,.1);margin-left:10px;-ms-flex-negative:0;flex-shrink:0;position:relative}.e-global__color-preview-color,.e-global__color-preview-transparent-bg{-webkit-border-radius:3px;border-radius:3px;height:100%;width:100%;position:absolute;top:0;left:0}.e-global__color-preview-transparent-bg{background-image:-webkit-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd),-webkit-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd);background-image:-o-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd),-o-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd);background-image:linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd),linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd);-webkit-background-size:12px 12px;background-size:12px 12px;background-position:0 0,6px 6px}.e-global__color-title{font-weight:500;color:#6d7882;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;padding-left:10px}.e-global__color-hex{font-size:10px;font-weight:500;color:#c2cbd2}.e-global__color .pcr-button{background-color:#fff}.e-global__color.e-global__preview-item--selected .e-global__color-preview-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:#fff}.e-global__color.e-global__preview-item--selected .e-global__color-preview-container:before{font-family:eicons;font-size:13px;content:"\e90e";text-shadow:0 0 1px #000;z-index:1}.e-global__preview-item{cursor:pointer;position:relative}.e-global__preview-item:hover{background-color:#f1f3f5}.e-global__preview-item:hover .e-global__color-hex{color:#a4afb7}.e-global__confirm-add .dialog-buttons-wrapper>.dialog-button.dialog-confirm-ok{color:#39b54a}.e-global__confirm-delete i{color:#b01b1b}.e-global__confirm-message-text i{color:#fcb92c}.e-global__confirm-input-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;border:1px solid #a4afb7;-webkit-border-radius:3px;border-radius:3px;margin-top:10px;padding:2px}.e-global__confirm-input-wrapper input{font-family:Roboto,Arial,sans-serif;font-weight:500;font-size:12px;padding:2px;border:0}.e-control-global .elementor-control-input-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;max-width:135px;width:100%}.e-control-global.elementor-control .elementor-control-input-wrapper{direction:rtl}.e-control-global .elementor-control-spinner{margin-left:4px}.elementor-control-type-hidden{display:none!important}.elementor-control-type-icon .select2-selection__rendered .eicon{margin-right:3px}.elementor-control-type-image_dimensions .elementor-control-field-description{margin:0 0 15px;line-height:1.4}.elementor-control-type-image_dimensions .elementor-control-input-wrapper{overflow:hidden}.elementor-control-type-image_dimensions .elementor-image-dimensions-field{width:65px;float:right}.elementor-control-type-image_dimensions .elementor-image-dimensions-field input:focus+.elementor-image-dimensions-field-description{color:#a4afb7}.elementor-control-type-image_dimensions .elementor-image-dimensions-separator{width:20px;text-align:center;float:right;padding-top:4px}.elementor-control-type-image_dimensions .elementor-image-dimensions-field-description{display:block;text-transform:uppercase;margin-top:5px;color:#d5dadf;font-size:9px;text-align:center}.elementor-control-type-image_dimensions .elementor-image-dimensions-apply-button{float:left;height:27px;width:65px}.elementor-control-media.elementor-media-empty .elementor-control-media-area .elementor-control-media__content__remove,.elementor-control-media.elementor-media-empty .elementor-control-media-area .elementor-control-media__remove,.elementor-control-media:not(.elementor-media-empty) .elementor-control-media__content__upload-button{display:none}.elementor-control-media .elementor-control-input-wrapper{border:1px solid #d5dadf}.elementor-control-media .eicon-plus-circle{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);color:#fff;font-size:20px}.elementor-control-media__content__upload-button{background-color:#d5dadf}.elementor-control-media__preview{height:100%;-webkit-background-size:cover;background-size:cover;background-position:50%}.elementor-control-media-area{background-image:-webkit-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd),-webkit-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd);background-image:-o-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd),-o-linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd);background-image:linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd),linear-gradient(45deg,#ddd 25%,transparent 0,transparent 75%,#ddd 0,#ddd);-webkit-background-size:16px 16px;background-size:16px 16px;background-position:0 0,8px 8px;background-color:#f6f6f6}.elementor-control-media-area:not(:hover) .elementor-control-media__remove{display:none}.elementor-control-media-area .eicon-video-camera{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);color:hsla(0,0%,100%,.7);font-size:21px}.elementor-control-media .elementor-control-media__content{cursor:pointer;overflow:hidden}.elementor-control-media .elementor-control-media__content:hover:after{content:"";position:absolute;top:0;bottom:0;left:0;right:0;background-color:rgba(0,0,0,.2);pointer-events:none}.elementor-control-media .elementor-control-media__content:not(:hover) .elementor-control-media__tools{bottom:-30px}.elementor-control-media__content,.elementor-control-media__tools{-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.elementor-control-media__tools{position:absolute;bottom:0;left:0;right:0;height:27px}.elementor-control-media__tools>:not(:first-child){margin-right:1px}.elementor-control-media__tool{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;color:#fff;background-color:rgba(109,120,130,.85);font-size:11px;-webkit-transition:background .3s;-o-transition:background .3s;transition:background .3s}.elementor-control-media__tool:hover{background-color:rgba(109,120,130,.95)}.elementor-control-media__remove{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;transition:all .3s ease-in-out}.elementor-control-media__content__remove{position:absolute;z-index:1;top:10px;left:10px;width:20px;height:20px;font-size:11px;color:#a4afb7;background-color:hsla(0,0%,100%,.9);-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 0 7px 0 rgba(0,0,0,.1);box-shadow:0 0 7px 0 rgba(0,0,0,.1)}.elementor-control-media__content__remove:hover{background-color:#fff;-webkit-box-shadow:0 0 5px 0 rgba(0,0,0,.4);box-shadow:0 0 5px 0 rgba(0,0,0,.4)}.elementor-control-media.elementor-media-empty .elementor-control-file-area{display:none}.elementor-control-media__file{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%;margin-top:10px;border:1px solid #d5dadf}.elementor-control-media__file__content{padding-right:5px;font-size:12px}.elementor-control-media__file__content__label{color:#a4afb7}.elementor-control-media__file__content__info{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-weight:500}.elementor-control-media__file__content__info__icon{margin-left:5px}.elementor-control-media__file__controls{display:-webkit-box;display:-ms-flexbox;display:flex;border-right:1px solid #d5dadf}.elementor-control-media__file__controls__remove,.elementor-control-media__file__controls__upload-button{width:27px;height:27px;cursor:pointer;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-control-media__file__controls__upload-button{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-control-media__file__controls__remove{border-left:1px solid #d5dadf}.elementor-control-media.elementor-media-empty .elementor-control-media__file__content__info,.elementor-control-media.elementor-media-empty .elementor-control-media__file__controls__remove,.elementor-control-media:not(.elementor-media-empty) .elementor-control-media__file__content__label{display:none}.elementor-control-media .elementor-control-dynamic-switcher{border:none;-webkit-border-radius:0;border-radius:0;background-color:rgba(109,120,130,.85);color:#fff}.elementor-control-media .elementor-control-dynamic-switcher:hover{background-color:rgba(109,120,130,.95)}.elementor-control-type-media.elementor-control-dynamic-value .elementor-control-input-wrapper{border:none}.elementor-control-type-number.elementor-control-dynamic input{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;border-left:none}.elementor-control-type-number.elementor-control-dynamic .elementor-control-dynamic-switcher{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-order .elementor-control-oreder-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-control-type-order input{display:none}.elementor-control-type-order input:checked+.elementor-control-order-label{-webkit-transform:scaleY(-1);-ms-transform:scaleY(-1);transform:scaleY(-1)}.elementor-control-type-order select{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-order select:not(:focus)~.elementor-control-order-label{border-color:#d5dadf}.elementor-control-type-order select:focus~.elementor-control-order-label{border-color:#a4afb7}.elementor-control-type-order .elementor-control-order-label{position:relative;padding:0;width:40px;border:1px solid;font-size:10px;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;margin-left:-3px;background-color:#fff;cursor:pointer}.elementor-control-type-order .elementor-control-order-label i{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor-control-type-popover_toggle input{display:none}.elementor-control-type-popover_toggle label{cursor:pointer}.elementor-control-type-popover_toggle .elementor-control-input-wrapper{direction:ltr}.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle:checked+.elementor-control-popover-toggle-toggle-label{color:#71d7f7}.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle:not(:checked)~.elementor-control-popover-toggle-reset-label{display:none}.elementor-control-type-popover_toggle .elementor-control-popover-toggle-reset-label{color:#c2cbd2;margin-left:5px}.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle-label{height:27px;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-border-radius:3px;border-radius:3px;border:1px solid #d5dadf}.elementor-controls-popover.e-controls-popover--typography{padding-top:0}.e-control-global .elementor-control-popover-toggle-toggle-label{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px;-ms-flex-negative:0;flex-shrink:0}.elementor-control-type-repeater .elementor-control:not(.elementor-control-type-tab){padding-right:10px;padding-left:10px;padding-bottom:10px}.elementor-control-type-repeater.elementor-repeater-has-minimum-rows .elementor-repeater-tool-remove{display:none}.elementor-control-type-repeater .elementor-repeater-fields{margin:10px 0}.elementor-control-type-repeater .elementor-repeater-row-controls{border:1px solid #d5dadf;border-top:0 solid #d5dadf;padding-top:15px}.elementor-control-type-repeater .elementor-repeater-row-controls:not(.editable){display:none}.elementor-control-type-repeater .elementor-repeater-row-tools{display:table;table-layout:fixed;width:100%;color:#556068;background-color:#d5dadf;height:40px;border-spacing:1px;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-control-type-repeater .elementor-repeater-row-tools:hover{background-color:#a4afb7}.elementor-control-type-repeater .elementor-repeater-row-tools>div{display:table-cell;text-align:center;vertical-align:middle;cursor:pointer}.elementor-control-type-repeater .elementor-repeater-row-tools>div:not(.elementor-repeater-row-handle-sortable){background-color:#fff}.elementor-control-type-repeater .elementor-repeater-row-tools>div:hover{opacity:.95}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title{text-align:right;padding:0 10px;font-size:12px;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title .eicon,.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title i,.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title svg{margin-left:5px}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title img[src$=svg]{width:1em}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-tool{width:40px}.elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-handle-sortable{cursor:move;width:10px;color:#fff}.elementor-control-type-repeater .elementor-button-wrapper{text-align:center;padding-top:5px}.elementor-control-type-section{margin-top:10px;padding:0}.elementor-control-type-section.elementor-open{padding-bottom:15px}.elementor-control-type-section+.elementor-control:not(.elementor-control-type-section):before{display:none}.elementor-shadow-box .elementor-shadow-slider{margin-top:10px}.elementor-shadow-box .elementor-color-picker-wrapper .elementor-control-title{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-control-type-slider.elementor-control-dynamic input{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-control-type-slider .elementor-control-unit-2{width:21%}.elementor-control-type-slider.elementor-control-type-slider--multiple .elementor-control-input-wrapper{display:block}.elementor-control-type-slider--multiple{padding-bottom:40px}.elementor-control-type-slider--multiple .elementor-slider{margin-top:12px;width:98%}.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle{-webkit-border-radius:0;border-radius:0;width:10px;-webkit-transform:translateY(calc(50% - 14px)) translateX(-4px);-ms-transform:translateY(calc(50% - 14px)) translateX(-4px);transform:translateY(calc(50% - 14px)) translateX(-4px)}.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle:after{content:"";position:absolute;top:2px;height:12px;width:11px;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg);background-color:#fff;-webkit-border-radius:3px;border-radius:3px}.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle-lower:after{left:5px;-webkit-box-shadow:2px -2px 3px 0 rgba(0,0,0,.1);box-shadow:2px -2px 3px 0 rgba(0,0,0,.1)}.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle-upper:after{right:5px;-webkit-box-shadow:-2px 2px 3px 0 rgba(0,0,0,.1);box-shadow:-2px 2px 3px 0 rgba(0,0,0,.1)}.elementor-control-type-slider .elementor-control-dynamic-switcher{border-right-width:0;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-slider .elementor-control-input-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-control-type-slider .elementor-dynamic-cover{margin-top:10px}.elementor-slider{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;height:4px;background-color:#d5dadf;-webkit-border-radius:5px;border-radius:5px;position:relative;cursor:pointer}.elementor-slider-input{width:21%;min-width:54px;margin-right:12px}.elementor-slider__extra{position:relative}.elementor-slider__labels{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.elementor-slider__label{font-size:9px;color:#c2cbd2}.elementor-slider__scales{position:absolute;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:space-evenly;-ms-flex-pack:space-evenly;justify-content:space-evenly;width:100%;margin-top:4px}.elementor-slider__scale{width:1px;height:21px;background-color:#a4afb7}.elementor-slider .noUi-handle{height:16px;width:16px;background-color:#fff;left:0;-webkit-transform:translateY(calc(50% - 14px)) translateX(-8px);-ms-transform:translateY(calc(50% - 14px)) translateX(-8px);transform:translateY(calc(50% - 14px)) translateX(-8px);position:absolute;-webkit-box-shadow:0 1px 5px rgba(0,0,0,.3);box-shadow:0 1px 5px rgba(0,0,0,.3);-webkit-border-radius:50%;border-radius:50%}.elementor-slider .noUi-connects{position:absolute;width:100%;height:4px}.elementor-slider .noUi-connect{position:absolute;z-index:0;top:0;left:0;height:100%;width:100%;will-change:transform;-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0;background-color:#a4afb7}.elementor-slider .noUi-tooltip{position:absolute;top:calc(100% + 5px);left:calc(50% - 4px);-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);font-size:10px}.elementor-control-type-structure .elementor-control-field{display:initial}.elementor-control-type-structure .elementor-control-structure-preset{padding:3px;-webkit-border-radius:3px;border-radius:3px;display:inline-block;cursor:pointer;height:50px}.elementor-control-type-structure .elementor-control-structure-preset svg{height:100%}.elementor-control-type-structure .elementor-control-structure-preset path{fill:#e6e9ec}.elementor-control-type-structure .elementor-control-structure-reset{padding:15px 20px 0;font-size:11px;cursor:pointer;color:#a4afb7;border-top:1px solid #e6e9ec;margin:0 -20px}.elementor-control-type-structure .elementor-control-structure-title{margin:10px -20px 0}.elementor-control-type-structure .elementor-control-structure-title:before{height:10px;-webkit-box-shadow:inset 0 2px 4px hsla(0,0%,49.8%,.1);box-shadow:inset 0 2px 4px hsla(0,0%,49.8%,.1)}.elementor-control-type-structure .elementor-control-structure-presets{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.elementor-control-type-structure .elementor-control-structure-presets input{display:none}.elementor-control-type-structure .elementor-control-structure-presets input:checked+.elementor-control-structure-preset path{fill:#a4afb7}.elementor-control-type-structure .elementor-control-structure-preset-wrapper{margin-bottom:15px}.elementor-control-type-structure .elementor-control-structure-preset-title{text-align:center;padding-top:5px;font-style:italic;font-size:11px;color:#a4afb7}.elementor-control-type-switcher .elementor-control-input-wrapper{text-align:left}.elementor-control-type-switcher .elementor-switch{position:relative;display:inline-block;vertical-align:top;height:20px;background-color:#fff;-webkit-border-radius:18px;border-radius:18px;cursor:pointer}.elementor-control-type-switcher .elementor-switch-input{display:none}.elementor-control-type-switcher .elementor-switch-label{position:relative;display:block;height:inherit;font-size:7px;text-transform:uppercase;background:#eceeef;-webkit-border-radius:inherit;border-radius:inherit;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.12),inset 0 0 2px rgba(0,0,0,.15);box-shadow:inset 0 1px 2px rgba(0,0,0,.12),inset 0 0 2px rgba(0,0,0,.15);-webkit-transition:.15s ease-out;-o-transition:.15s ease-out;transition:.15s ease-out;-webkit-transition-property:opacity,background;-o-transition-property:opacity,background;transition-property:opacity,background}.elementor-control-type-switcher .elementor-switch-label:after,.elementor-control-type-switcher .elementor-switch-label:before{position:absolute;top:0;width:50%;text-align:center;line-height:20px;-webkit-transition:inherit;-o-transition:inherit;transition:inherit}.elementor-control-type-switcher .elementor-switch-label:before{content:attr(data-off);right:3px;color:#a4afb7;text-shadow:0 1px hsla(0,0%,100%,.5)}.elementor-control-type-switcher .elementor-switch-label:after{content:attr(data-on);left:3px;color:#fff;text-shadow:0 1px rgba(0,0,0,.2);opacity:0}.elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-label{background:#71d7f7;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.15),inset 0 0 3px rgba(0,0,0,.2);box-shadow:inset 0 1px 2px rgba(0,0,0,.15),inset 0 0 3px rgba(0,0,0,.2)}.elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-label:before{opacity:0}.elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-label:after{opacity:1}.elementor-control-type-switcher .elementor-switch-handle{position:absolute;top:1px;left:1px;width:18px;height:18px;background:#fff;-webkit-border-radius:10px;border-radius:10px;-webkit-transition:left .15s ease-out;-o-transition:left .15s ease-out;transition:left .15s ease-out}.elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-handle{left:auto;right:1px;-webkit-box-shadow:-1px 1px 5px rgba(0,0,0,.2);box-shadow:-1px 1px 5px rgba(0,0,0,.2)}.elementor-control-type-tabs{font-size:.8em;text-transform:uppercase;display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-control-type-tab{text-align:center;width:100%;padding:0;line-height:25px;border-top:1px solid #d5dadf;border-bottom:1px solid #d5dadf;border-left:1px solid #d5dadf;cursor:pointer}.elementor-control-type-tab:first-child{border-right:1px solid #d5dadf;-webkit-border-top-right-radius:3px;border-top-right-radius:3px;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px}.elementor-control-type-tab:last-child{-webkit-border-top-left-radius:3px;border-top-left-radius:3px;-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px}.elementor-control-type-tab.elementor-tab-active{background-color:#a4afb7;border-color:#a4afb7;color:#fff}.elementor-tab-close{display:none!important}.elementor-control-type-code.elementor-control-dynamic-value .elementor-control-dynamic-switcher,.elementor-control-type-textarea.elementor-control-dynamic-value .elementor-control-dynamic-switcher{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px;border-right-width:0}.elementor-control-type-code .elementor-control-dynamic-switcher,.elementor-control-type-textarea .elementor-control-dynamic-switcher{-webkit-border-radius:0 3px;border-radius:0 3px}.elementor-control-type-code:not(.elementor-control-dynamic-value) .elementor-control-dynamic-switcher,.elementor-control-type-textarea:not(.elementor-control-dynamic-value) .elementor-control-dynamic-switcher{position:absolute;top:0;z-index:1;left:0}.elementor-control-type-code .elementor-control-input-wrapper,.elementor-control-type-textarea .elementor-control-input-wrapper{position:relative}.elementor-control-type-code textarea,.elementor-control-type-textarea textarea{display:block;font-family:inherit}.elementor-control-type-code textarea:focus+.elementor-control-dynamic-switcher,.elementor-control-type-textarea textarea:focus+.elementor-control-dynamic-switcher{display:none}.elementor-control-type-code pre:focus-within+.elementor-control-dynamic-switcher,.elementor-control-type-textarea pre:focus-within+.elementor-control-dynamic-switcher{display:none}.elementor-control-type-url.elementor-control-dynamic .elementor-input{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-url .elementor-control-field{position:relative}.elementor-control-type-url.elementor-control-dynamic-value .elementor-control-url-more,.elementor-control-type-url:not(.elementor-control-dynamic) .elementor-control-url-more{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-control-type-url .elementor-control-input-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-control-type-url .elementor-control-url-more{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-ms-flex-negative:0;flex-shrink:0;border:1px solid #d5dadf;border-left:none;cursor:pointer}.elementor-control-type-url .elementor-control-url-more i{font-size:12px}.elementor-control-type-url .elementor-control-url-more-options{display:none;padding-top:10px}.elementor-control-type-url .elementor-control-url-more-options .elementor-control-field-description{margin-top:10px}.elementor-control-type-url .elementor-control-url-option{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-control-type-url .elementor-control-url-option:not(:last-child){padding-bottom:10px}.elementor-control-type-url .elementor-control-url-option input,.elementor-control-type-url .elementor-control-url-option label{cursor:pointer}.elementor-control-type-url .elementor-control-url-option-input{padding:0;-webkit-border-radius:2px;border-radius:2px;margin:0 0 0 5px;-webkit-appearance:none;-moz-appearance:none;outline:none;content:none;height:15px;width:15px;border:1px solid #d5dadf;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-control-type-url .elementor-control-url-option-input:checked{background:#71d7f7;border:none}.elementor-control-type-url .elementor-control-url-option-input:checked:before{display:block;content:"";width:4px;height:7px;border:solid #fff;border-width:0 2px 2px 0;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.elementor-control-type-url .elementor-control-url-option label{font-size:12px}.elementor-control-type-url .elementor-control-url-external-hide .elementor-control-url-more{display:none}.elementor-control-type-url .elementor-control-url-external-show .elementor-dynamic-cover,.elementor-control-type-url .elementor-control-url-external-show .elementor-input{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-url .elementor-control-url-autocomplete-spinner{display:none;position:absolute;top:5px;right:0;width:10px;height:10px;font-size:10px;color:#d4d4d4}.elementor-control-type-url .elementor-control-url__custom-attributes{margin-top:5px}.elementor-control-type-url .elementor-control-url__custom-attributes label{font-size:12px}.elementor-control-type-url .elementor-control-url__custom-attributes input{width:100%;margin-top:10px}.elementor-control-type-url .elementor-input{direction:ltr}.elementor-control-type-url .elementor-input:not(:focus)+.elementor-control-url-more{border-color:#d5dadf}.elementor-control-type-url .elementor-input:focus~div{border-color:#a4afb7}.elementor-control-type-url .elementor-control-dynamic-switcher{border-left:none;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.elementor-autocomplete-menu{position:absolute;background:#fff;color:#495157;border:1px solid #a4afb7;margin:0;list-style:none;padding:4px 0;height:auto;width:100%;min-width:260px;max-width:300px;max-height:200px;overflow-y:auto;-webkit-border-radius:3px;border-radius:3px;-webkit-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;transition:all .3s ease-in-out;cursor:default;z-index:1}.elementor-autocomplete-menu .ui-menu-item{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-item-align:baseline;align-self:baseline;padding:5px 8px;font-size:12px;width:100%;line-height:1.2;cursor:pointer}.elementor-autocomplete-menu .ui-menu-item.ui-state-active,.elementor-autocomplete-menu .ui-menu-item.ui-state-focus,.elementor-autocomplete-menu .ui-menu-item.ui-state-hover{background:#e6e9ec}.elementor-autocomplete-menu .elementor-autocomplete-item-info{font-size:10px;padding-top:2px}.elementor-control-type-wp_widget .widget-inside{display:block}.elementor-control-type-wp_widget .quicktags-toolbar input{width:auto}.elementor-control-type-wysiwyg *{-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-control-type-wysiwyg .wp-editor-container{border:1px solid #e6e9ec}.elementor-control-type-wysiwyg .wp-editor-tabs{border:1px solid #d5dadf;border-bottom:none;-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0}.elementor-control-type-wysiwyg #insert-media-button{height:auto;line-height:24px;font-size:10px;color:#6d7882;border-color:#d5dadf;background-color:#e6e9ec;min-height:0}.elementor-control-type-wysiwyg .ed_button{height:22px;width:auto}.elementor-control-type-wysiwyg .wp-media-buttons-icon{height:14px;margin:0}.elementor-control-type-wysiwyg .wp-media-buttons-icon:before{font-size:14px}.elementor-control-type-wysiwyg .wp-switch-editor{position:static;border:none;margin:0;color:#6d7882;font-size:10px;padding:3px 9px 4px}.elementor-control-type-wysiwyg .switch-html{border:solid #d5dadf;border-width:0 1px}.elementor-control-type-wysiwyg .html-active .switch-tmce{background-color:transparent}.elementor-control-type-wysiwyg .html-active .switch-html,.elementor-control-type-wysiwyg .tmce-active .switch-tmce{background-color:#e6e9ec}.elementor-control-type-wysiwyg .tmce-active .switch-html{background-color:transparent}.elementor-control-type-wysiwyg .mce-toolbar-grp,.elementor-control-type-wysiwyg .quicktags-toolbar{background-color:#e6e9ec}.elementor-control-type-wysiwyg .mce-toolbar-grp>div{padding:0 3px}.elementor-control-type-wysiwyg .elementor-wp-editor{-webkit-box-sizing:border-box;box-sizing:border-box}.elementor-control-type-wysiwyg .mce-ico{color:#6d7882;font-size:16px}.elementor-control-type-wysiwyg .mce-btn{margin-right:0;margin-left:0}.elementor-control-type-wysiwyg .mce-btn.mce-active,.elementor-control-type-wysiwyg .mce-btn:active,.elementor-control-type-wysiwyg .mce-btn:hover{border-color:#d5dadf}.elementor-control-type-wysiwyg .mce-path{padding:5px 10px}.elementor-control-type-wysiwyg .mce-path-item{font-size:12px;color:#6d7882}.elementor-control-type-wysiwyg .elementor-control-dynamic-switcher{border:none}.elementor-control-type-text .elementor-control-dynamic-switcher{border-right-width:0;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.elementor-control-type-text.elementor-control-dynamic input{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}#elementor-mode-switcher{position:absolute;right:100%;top:50%;width:15px;height:50px;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);background-color:#e6e9ec;font-size:15px;-webkit-box-shadow:-3px 1px 5px rgba(0,0,0,.1);box-shadow:-3px 1px 5px rgba(0,0,0,.1);cursor:pointer}#elementor-mode-switcher:hover{background-color:#93003c;color:#fff}#elementor-mode-switcher-inner,#elementor-mode-switcher-preview{width:100%;height:100%;position:absolute;top:0;left:0}#elementor-mode-switcher-preview{cursor:pointer}#elementor-mode-switcher-preview .eicon{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}#elementor-mode-switcher-preview-input{display:none}:root{--e-is-device-mode:0}.e-is-device-mode{--e-is-device-mode:1}#elementor-responsive-bar{position:-webkit-sticky;position:sticky;height:calc(40px * var(--e-is-device-mode));-ms-flex-item-align:stretch;align-self:stretch;-ms-flex-negative:0;flex-shrink:0;-webkit-transition:height .2s ease-in-out,opacity .1s;-o-transition:height .2s ease-in-out,opacity .1s;transition:height .2s ease-in-out,opacity .1s;left:0;top:0;z-index:100;opacity:var(--e-is-device-mode);-webkit-box-shadow:0 0 10px 2px rgba(0,0,0,.33),0 0 2px 1px rgba(0,0,0,.25),0 0 6px -3px hsla(0,0%,100%,.5);box-shadow:0 0 10px 2px rgba(0,0,0,.33),0 0 2px 1px rgba(0,0,0,.25),0 0 6px -3px hsla(0,0%,100%,.5)}#elementor-responsive-bar:before{content:"";position:absolute;left:0;top:0;width:100%;height:100%;z-index:-1;-webkit-transform:scaleX(var(--e-preview-scale,1));-ms-transform:scaleX(var(--e-preview-scale,1));transform:scaleX(var(--e-preview-scale,1))}.e-responsive-bar-switcher__option{cursor:pointer;text-align:center;width:22px;height:22px;margin:0 4px;line-height:22px;-webkit-border-radius:3px;border-radius:3px;font-size:16px;-webkit-transition:background-color .3s ease-out;-o-transition:background-color .3s ease-out;transition:background-color .3s ease-out}.e-responsive-bar-switcher__option:hover,.e-responsive-bar-switcher__option[aria-selected=true]{color:#c2cbd2;background-color:hsla(0,0%,100%,.1)}.e-responsive-bar-switcher__option input{display:none}.e-responsive-bar-switcher__option input:checked+i{color:#71d7f7}.e-responsive-bar-switcher__option:not(:last-child){-webkit-margin-end:6px;margin-inline-end:6px}.e-responsive-bar__button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;cursor:pointer;color:inherit}.e-responsive-bar__button:focus:not(:focus-visible){outline:none}.e-responsive-bar__button:hover{color:#c2cbd2;background-color:hsla(0,0%,100%,.1)}.e-responsive-bar--pipe{position:relative}.e-responsive-bar--pipe:before{content:"";display:block;height:20px;width:1px;background-color:#6d7882;position:absolute;left:-5px;top:calc(50% - 10px)}.e-responsive-bar__input-size{background-color:transparent;color:#a4afb7;border:1px solid #6d7882!important;padding:0 3px;width:60px;font-size:12px;line-height:16px;height:18px;margin:auto 8px auto 4px}.e-responsive-bar__input-size-separator{color:#6d7882}#e-responsive-bar{width:100%;margin-top:calc(-40px + (40px * var(--e-is-device-mode)));z-index:1;-webkit-transition:margin-top .2s ease-in-out;-o-transition:margin-top .2s ease-in-out;transition:margin-top .2s ease-in-out;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;color:#a4afb7}#e-responsive-bar,#e-responsive-bar-scale,#e-responsive-bar-switcher,#e-responsive-bar__center,#e-responsive-bar__end{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background-color:#495157}#e-responsive-bar-scale,#e-responsive-bar-switcher,#e-responsive-bar__center,#e-responsive-bar__end{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;font-size:13px;padding:2px 0}@media (min-width:1400px){#e-responsive-bar__center{margin-right:50%;-webkit-transform:translate(50%);-ms-transform:translate(50%);transform:translate(50%)}}#e-responsive-bar__close-button,#e-responsive-bar__settings-button{width:22px;height:22px;-webkit-border-radius:3px;border-radius:3px;margin:7px 5px;font-size:16px}#e-responsive-bar__size-inputs-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-margin-end:8px;margin-inline-end:8px;color:#6d7882}#e-responsive-bar-scale,#e-responsive-bar-switcher{padding:0 20px}#e-responsive-bar-scale__value-wrapper{margin:0 14px;min-width:32px;text-align:center}#e-responsive-bar-scale__minus,#e-responsive-bar-scale__plus,#e-responsive-bar-scale__reset{cursor:pointer;width:20px;height:20px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}#e-responsive-bar-scale__minus:before{content:"";display:block;width:13px;height:2px;background:#a4afb7;-webkit-border-radius:3px;border-radius:3px}#e-responsive-bar-scale__reset{margin:0 8px}.elementor-revision-item__wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;border:1px solid #d5dadf;padding:10px 15px;margin-bottom:10px;font-size:11px;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.elementor-revision-item__wrapper.current{font-weight:700}.elementor-revision-item__wrapper .elementor-revision-item__tools-current{color:#71d7f7}.elementor-revision-item:hover:not(.elementor-revision-current-preview){background-color:rgba(230,233,236,.3)}.elementor-revision-item-loading .elementor-revision-item__tools-current,.elementor-revision-item:not(.elementor-revision-item-loading) .elementor-revision-item__tools-spinner{display:none}.elementor-revision-item__gravatar{-webkit-border-radius:50%;border-radius:50%;overflow:hidden}.elementor-revision-item__gravatar img{display:block}.elementor-revision-item__details{padding-right:15px;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;cursor:pointer}.elementor-revision-meta{padding-top:5px;font-size:10px;font-weight:700}.elementor-revision-current-preview{background-color:#e6e9ec}#elementor-restore-autosave-dialog.dialog-widget{background-color:rgba(0,0,0,.3)}#elementor-panel-revisions-loading{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}#elementor-panel-revisions-loading .eicon-loading{font-size:50px;color:#a4afb7}.elementor-history-item{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;border:1px solid #d5dadf;padding:10px 15px;margin-bottom:10px;font-size:11px;line-height:1.4;cursor:pointer;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.elementor-history-item:hover{background-color:rgba(230,233,236,.3)}.elementor-history-item:hover .elementor-history-item__icon .eicon:before{content:"\e924"}.elementor-history-item-applied{color:#a4afb7}.elementor-history-item-current{background:#e6e9ec;cursor:default}.elementor-history-item-current .elementor-history-item__icon .eicon:before,.elementor-history-item-current:hover .elementor-history-item__icon .eicon:before{content:"\e90e"}.elementor-history-item__details{width:95%}.elementor-history-item__title{font-weight:700}.elementor-history-item__action,.elementor-history-item__subtitle{font-weight:lighter}.elementor-history-item__action{font-style:italic;text-decoration:underline}.elementor-history-item .__icon{float:left}.elementor-history-revisions-message{font-size:11px;text-align:center;padding-top:5px}#elementor-panel-history{padding:20px 20px 15px}#elementor-panel-history.elementor-empty .elementor-history-revisions-message{padding-top:20px}#elementor-panel-history:not(.elementor-empty){background-color:#fff;margin-top:10px}#elementor-panel-history-no-items,#elementor-panel-revisions-no-revisions{text-align:center}#elementor-panel-history-no-items .elementor-nerd-box-icon,#elementor-panel-revisions-no-revisions .elementor-nerd-box-icon{margin-top:20px}.elementor-panel #elementor-panel-header #elementor-panel-header-kit-back,.elementor-panel #elementor-panel-header #elementor-panel-header-kit-close{display:none}.elementor-editor-kit .elementor-panel #elementor-panel-header{background-color:#4ab7f4}.elementor-editor-kit .elementor-panel #elementor-panel-header #elementor-panel-header-kit-back,.elementor-editor-kit .elementor-panel #elementor-panel-header #elementor-panel-header-kit-close{display:table-cell}body:not(.e-routes-has-history) #elementor-panel-header-kit-back{pointer-events:none;opacity:.4}body:not(.e-routes-has-history) #elementor-panel-header-kit-back:hover .elementor-icon{cursor:inherit;color:inherit}.elementor-editor-kit .elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab.elementor-active{border-bottom-color:#4ab7f4}.elementor-editor-kit .elementor-panel #elementor-panel-page-settings .elementor-panel-navigation{display:none}.elementor-editor-kit .elementor-panel #elementor-panel-saver-button-publish.elementor-button.elementor-button-success:not(.elementor-disabled),.elementor-editor-kit .elementor-panel #elementor-panel-saver-button-save-options.elementor-button.elementor-button-success:not(.elementor-disabled){background-color:#4ab7f4}.elementor-editor-kit .elementor-panel #elementor-panel-page-menu{padding:25px 15px 0}.elementor-editor-kit #elementor-panel-footer-navigator,.elementor-editor-kit #elementor-panel-footer-sub-menu-item-save-template,.elementor-editor-kit #elementor-panel-header-add-button,.elementor-editor-kit #elementor-panel-header-menu-button{display:none}.elementor-control-type-global-style-repeater .elementor-repeater-fields{margin-bottom:15px;position:relative}.elementor-control-type-global-style-repeater .elementor-repeater-row-controls{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-control-type-global-style-repeater .elementor-repeater-row-tool{cursor:pointer;color:#d5dadf;padding:5px}.elementor-control-type-global-style-repeater .elementor-control{padding:0}.elementor-control-type-global-style-repeater .elementor-control-title{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-control-type-global-style-repeater .elementor-control-title input{max-width:135px}.elementor-control-type-global-style-repeater .elementor-control-title input:not(:focus){background:none;border:none}.elementor-control-type-global-style-repeater .elementor-control-input-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;min-width:81px}.elementor-control-type-global-style-repeater .elementor-control-input-wrapper:hover .e-global-colors__color-value,.elementor-control-type-global-style-repeater .elementor-control-input-wrapper:not(:hover) .elementor-repeater-tool-remove,.elementor-control-type-global-style-repeater .elementor-control-input-wrapper:not(:hover) .elementor-repeater-tool-remove--disabled{display:none}.elementor-control-type-global-style-repeater .elementor-control-content>.elementor-control-field>.elementor-control-input-wrapper{margin-top:0}.elementor-control-type-global-style-repeater .elementor-controls-popover{-ms-flex-item-align:end;align-self:end;margin-top:35px;top:0;width:100%}.elementor-control-type-global-style-repeater .elementor-controls-popover:before{left:5px}.elementor-control-type-global-style-repeater .elementor-controls-popover .elementor-control{padding:0 20px 15px}.elementor-control-type-global-style-repeater .elementor-controls-popover .elementor-control-title{-webkit-box-flex:initial;-ms-flex-positive:initial;flex-grow:0}.elementor-control-type-global-style-repeater .elementor-button-wrapper{text-align:center;border-top:1px solid #e6e9ec;max-width:260px;padding-top:15px}.elementor-control-type-global-style-repeater .elementor-control-popover-toggle-toggle-label,.elementor-control-type-global-style-repeater .pickr{margin-right:5px}.elementor-control-system_colors,.elementor-control-system_typography{padding-bottom:0}.e-global-colors__color-value{color:#d5dadf;font-size:10px;padding:0 5px;text-align:left;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}@-webkit-keyframes load{0%{opacity:.3}50%{opacity:1}to{opacity:.3}}@keyframes load{0%{opacity:.3}50%{opacity:1}to{opacity:.3}}@-webkit-keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@-webkit-keyframes mover{0%{-webkit-transform:translateY(0);transform:translateY(0)}to{-webkit-transform:translateY(-5px);transform:translateY(-5px)}}@keyframes mover{0%{-webkit-transform:translateY(0);transform:translateY(0)}to{-webkit-transform:translateY(-5px);transform:translateY(-5px)}}@-webkit-keyframes slideDown{0%{-webkit-transform:translateY(-30px);transform:translateY(-30px)}to{-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes slideDown{0%{-webkit-transform:translateY(-30px);transform:translateY(-30px)}to{-webkit-transform:translateY(0);transform:translateY(0)}}body{--e-preview-width:calc(100% - var(--e-editor-panel-width, 300px))}body.elementor-navigator-docked{--e-preview-width:calc(100% - var(--e-editor-panel-width, 300px) - var(--e-editor-navigator-width, 0px))}body.elementor-device-desktop #elementor-preview{overflow-y:hidden;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}body:not(.elementor-device-desktop) body{overflow-y:auto}#elementor-preview{overflow:auto;background-color:#333;height:100%;border:0;width:var(--e-preview-width);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:relative;direction:ltr}#elementor-preview>div{direction:rtl}#elementor-preview-responsive-wrapper{-webkit-transform-origin:top center;-ms-transform-origin:top center;transform-origin:top center;padding:20px;-webkit-transform:scale(var(--e-preview-scale,1));-ms-transform:scale(var(--e-preview-scale,1));transform:scale(var(--e-preview-scale,1))}.elementor-device-desktop #elementor-preview-responsive-wrapper{min-width:1025px;width:100%;height:100%;padding:0;position:relative}body.e-is-device-mode:not(.elementor-device-desktop) #elementor-preview-responsive-wrapper{width:var(--e-editor-preview-width);height:var(--e-editor-preview-height);margin:0 Max(calc((100vw - var(--e-editor-panel-width) - var(--e-editor-preview-width)) / 2),20px);-webkit-box-sizing:content-box;box-sizing:content-box;position:relative;max-height:calc(100vh - 80px)}body.e-is-device-mode:not(.elementor-device-desktop) #elementor-preview-responsive-wrapper .ui-resizable-handle{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}#elementor-preview-responsive-wrapper:not(.ui-resizable-resizing){-webkit-transition:.3s ease-in-out;-o-transition:.3s ease-in-out;transition:.3s ease-in-out}#elementor-preview-responsive-wrapper .ui-resizable-handle{top:0}#elementor-preview-responsive-wrapper .ui-resizable-handle.ui-resizable-s{top:auto;bottom:0}#elementor-preview-responsive-wrapper .ui-resizable-n,#elementor-preview-responsive-wrapper .ui-resizable-s{-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;height:20px}#elementor-preview-responsive-wrapper .ui-resizable-n:before,#elementor-preview-responsive-wrapper .ui-resizable-s:before{content:"";display:block;background-color:hsla(0,0%,100%,.2);width:50px;height:4px;-webkit-border-radius:3px;border-radius:3px;-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}#elementor-preview-responsive-wrapper .ui-resizable-n:hover:before,#elementor-preview-responsive-wrapper .ui-resizable-s:hover:before{background-color:hsla(0,0%,100%,.6);width:100px}#elementor-preview-responsive-wrapper .ui-resizable-e,#elementor-preview-responsive-wrapper .ui-resizable-w{-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:20px}#elementor-preview-responsive-wrapper .ui-resizable-e:before,#elementor-preview-responsive-wrapper .ui-resizable-w:before{content:"";display:block;background-color:hsla(0,0%,100%,.2);width:4px;height:50px;-webkit-border-radius:3px;border-radius:3px;-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}#elementor-preview-responsive-wrapper .ui-resizable-e:hover:before,#elementor-preview-responsive-wrapper .ui-resizable-w:hover:before{background-color:hsla(0,0%,100%,.6);height:100px}#elementor-preview-responsive-wrapper.ui-resizable-resizing .ui-resizable-handle:before{background-color:hsla(0,0%,100%,.9)}#elementor-preview-responsive-wrapper .ui-resizable-s{bottom:0}#elementor-preview-responsive-wrapper .ui-resizable-e{right:0}#elementor-preview-responsive-wrapper .ui-resizable-w{left:0}#elementor-preview-iframe{width:100%;height:100%;background-color:#fff;-webkit-box-shadow:0 0 3px rgba(0,0,0,.3),0 0 20px rgba(0,0,0,.15);box-shadow:0 0 3px rgba(0,0,0,.3),0 0 20px rgba(0,0,0,.15)}#elementor-template-library-modal a.elementor-template-library-blank-footer-link{font-style:normal;text-decoration:underline;color:#39b54a}#elementor-template-library-modal a.elementor-template-library-blank-footer-link:hover{color:#2d8e3a}#elementor-template-library-modal .dialog-buttons-wrapper{display:none}#elementor-template-library-modal .select2-container{z-index:0}#elementor-template-library-header-menu{text-align:center;color:#6d7882;font-size:13px}.elementor-template-library-menu-item{display:inline-block;padding:17px 0;width:115px;cursor:pointer}.elementor-template-library-menu-item.elementor-active{background-image:-webkit-gradient(linear,left top,left bottom,from(#f1f3f5),to(#fff));background-image:-webkit-linear-gradient(top,#f1f3f5,#fff);background-image:-o-linear-gradient(top,#f1f3f5,#fff);background-image:linear-gradient(180deg,#f1f3f5,#fff);border-bottom:3px solid #93003c}#elementor-template-library-header-actions{display:-webkit-box;display:-ms-flexbox;display:flex}#elementor-template-library-header-actions>div{padding-left:16px}#elementor-template-library-header-preview-insert-wrapper{cursor:default;padding:0 10px}#elementor-template-library-header-preview-insert-wrapper .elementor-button{padding:8px 14px;font-size:11px}#elementor-template-library-header-preview-insert-wrapper .elementor-template-library-template-insert{color:#fff;background-color:#39b54a}#elementor-template-library-header-preview-insert-wrapper .elementor-go-pro{background-color:#93003c;color:#fff}#elementor-template-library-header-preview-back{padding:16.5px 0 15px 16.5px;border-left:1px solid #e6e9ec;cursor:pointer;-webkit-transition:color .5s;-o-transition:color .5s;transition:color .5s}#elementor-template-library-header-preview-back:not(:hover){color:#a4afb7}#elementor-template-library-header-preview-back i{padding-left:10px;font-size:18px}#elementor-template-library-header-preview-back i:before{content:""}#elementor-template-library-templates{padding:0 15px}#elementor-template-library-templates[data-template-source=local] #elementor-template-library-templates-container{-webkit-box-shadow:1px 1px 20px 0 rgba(0,0,0,.03);box-shadow:1px 1px 20px 0 rgba(0,0,0,.03);margin-top:10px;margin-bottom:45px}#elementor-template-library-templates[data-template-source=local] .elementor-template-library-order-input:checked+.elementor-template-library-order-label{color:#6d7882}#elementor-template-library-templates[data-template-source=remote] #elementor-template-library-templates-container{margin:10px -15px 0}#elementor-template-library-templates[data-template-source=remote] .elementor-template-library-order-input:checked+.elementor-template-library-order-label{color:#495157}#elementor-template-library-templates .elementor-template-library-order-input,#elementor-template-library-templates.elementor-templates-filter-active #elementor-template-library-footer-banner,#elementor-template-library-templates[data-template-source=empty] #elementor-template-library-footer-banner,#elementor-template-library-templates[data-template-source=empty] #elementor-template-library-order-toolbar-local{display:none}#elementor-template-library-templates .elementor-template-library-order-input:checked+.elementor-template-library-order-label{padding-left:8px}#elementor-template-library-templates .elementor-template-library-order-input:checked+.elementor-template-library-order-label:after{font-family:eicons;content:"\e8ae";margin-right:3px}#elementor-template-library-templates .elementor-template-library-order-input:checked.elementor-template-library-order-reverse+.elementor-template-library-order-label:after{content:"\e8ad"}#elementor-template-library-templates-container{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}#elementor-template-library-templates-container .elementor-template-library-template-local .elementor-template-library-template-insert{text-transform:none;font-size:12px}#elementor-template-library-toolbar{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}#elementor-template-library-toolbar,.elementor-template-library-filter-toolbar{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}#elementor-template-library-filter-toolbar-remote{font-size:11px}#elementor-template-library-order{display:-webkit-box;display:-ms-flexbox;display:flex;border-left:1px solid #d5dadf}.elementor-template-library-order-label{text-transform:uppercase;padding-left:22px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}label.elementor-template-library-order-label{cursor:pointer}label.elementor-template-library-order-label:hover{color:#556068}#elementor-template-library-filter .select2{text-align:right;width:calc(27px * 5)!important}#elementor-template-library-filter .select2-selection__rendered{text-transform:capitalize}#select2-elementor-template-library-filter-subtype-results .select2-results__option{text-transform:capitalize;text-align:right;padding-right:5px}#elementor-template-library-my-favorites{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;text-align:right;padding-right:20px}#elementor-template-library-filter-my-favorites{display:none}#elementor-template-library-filter-my-favorites:checked+#elementor-template-library-filter-my-favorites-label{color:#495157}#elementor-template-library-filter-my-favorites:checked+#elementor-template-library-filter-my-favorites-label i:after{color:#93003c;content:"\e93f"}#elementor-template-library-filter-my-favorites-label{cursor:pointer;text-transform:uppercase}#elementor-template-library-filter-my-favorites-label:hover{color:#556068}#elementor-template-library-filter-my-favorites-label:hover i:after{color:#93003c}#elementor-template-library-filter-my-favorites-label i{padding-left:5px}#elementor-template-library-filter-my-favorites-label i:after{color:#a4afb7;content:"\e923"}#elementor-template-library-filter-text-wrapper{width:200px;position:relative}#elementor-template-library-filter-text-wrapper i{position:absolute;top:50%;left:0;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}#elementor-template-library-filter-text{border:none;border-bottom:1px solid #d5dadf;-webkit-border-radius:0;border-radius:0;font-size:11px;padding:8px 15px 8px 0;-webkit-transition:border .5s;-o-transition:border .5s;transition:border .5s}#elementor-template-library-filter-text::-webkit-input-placeholder{font-weight:300;text-transform:uppercase}#elementor-template-library-filter-text::-moz-placeholder{font-weight:300;text-transform:uppercase}#elementor-template-library-filter-text::-ms-input-placeholder{font-weight:300;text-transform:uppercase}#elementor-template-library-filter-text::placeholder{font-weight:300;text-transform:uppercase}#elementor-template-library-filter-text:focus{border-color:#c2cbd2}.elementor-template-library-template-remote{margin:15px;padding:8px;background-color:#fff;-webkit-box-shadow:0 1px 20px 0 rgba(0,0,0,.07);box-shadow:0 1px 20px 0 rgba(0,0,0,.07);-webkit-border-radius:3px;border-radius:3px}.elementor-template-library-template-remote:hover .elementor-template-library-template-name{display:none}.elementor-template-library-template-remote:not(:hover) .elementor-template-library-template-preview{opacity:0}.elementor-template-library-template-remote:not(:hover) .elementor-template-library-favorite,.elementor-template-library-template-remote:not(:hover) .elementor-template-library-template-action{display:none}.elementor-template-library-template-remote.elementor-template-library-pro-template .elementor-template-library-template-body:before{content:var(--elementor-template-library-subscription-plan-label);background-color:var(--elementor-template-library-subscription-plan-color);color:#d5dadf;position:absolute;text-transform:uppercase;top:5px;left:5px;padding:2px 4px 0;font-size:9px;-webkit-border-radius:2px;border-radius:2px}.elementor-template-library-template-remote:not(.elementor-template-library-template-page):not(.elementor-template-library-template-lp){position:relative;width:calc(33.333% - 30px);overflow:hidden}.elementor-template-library-template-remote:not(.elementor-template-library-template-page):not(.elementor-template-library-template-lp) img{display:block;width:100%}.elementor-template-library-template-remote:not(.elementor-template-library-template-page):not(.elementor-template-library-template-lp) .elementor-template-library-template-footer{position:absolute;width:100%;bottom:0;right:0;padding:10px;background-color:#fff;-webkit-transition:-webkit-transform .5s;transition:-webkit-transform .5s;-o-transition:transform .5s;transition:transform .5s;transition:transform .5s,-webkit-transform .5s}.elementor-template-library-template-remote:not(.elementor-template-library-template-page):not(.elementor-template-library-template-lp) .elementor-template-library-template-name{display:none}.elementor-template-library-template-remote:not(.elementor-template-library-template-page):not(.elementor-template-library-template-lp):not(:hover) .elementor-template-library-template-footer{-webkit-transform:translateY(100%);-ms-transform:translateY(100%);transform:translateY(100%)}.elementor-template-library-template-remote .elementor-template-library-template-body{position:relative}@media (max-width:1025px){.elementor-template-library-template-remote .elementor-template-library-template-body{height:300px}}.elementor-template-library-template-remote .elementor-template-library-template-screenshot{height:100%;-webkit-background-size:cover;background-size:cover;background-position-x:50%;-webkit-box-shadow:inset 0 -2px 15px -6px rgba(0,0,0,.07);box-shadow:inset 0 -2px 15px -6px rgba(0,0,0,.07)}.elementor-template-library-template-remote .elementor-template-library-template-preview{position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);-webkit-transition:opacity .5s;-o-transition:opacity .5s;transition:opacity .5s;cursor:pointer}.elementor-template-library-template-remote .elementor-template-library-template-preview i{font-size:20px;color:#d5dadf;position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor-template-library-template-remote .elementor-template-library-template-insert{color:#39b54a}.elementor-template-library-template-remote .elementor-go-pro{color:#93003c}.elementor-template-library-template-remote .elementor-template-library-template-footer{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin-top:10px;font-size:11px;line-height:1}.elementor-template-library-template-remote .elementor-template-library-template-name{text-align:right;color:#6d7882;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;padding-left:5px}.elementor-template-library-template-remote .elementor-template-library-template-favorite-input{display:none}.elementor-template-library-template-remote .elementor-template-library-template-favorite-input:checked+.elementor-template-library-template-favorite-label i:before{content:"\e93f";color:#93003c}.elementor-template-library-template-remote .elementor-template-library-template-favorite-label{cursor:pointer}.elementor-template-library-template-remote .elementor-template-library-template-favorite-label:hover i{color:#93003c}@media (max-width:1439px){.elementor-template-library-template-lp,.elementor-template-library-template-page{width:calc(25% - 30px)}}@media (min-width:1440px){.elementor-template-library-template-lp,.elementor-template-library-template-page{width:calc(20% - 30px)}}@media (max-width:1025px){.elementor-template-library-template-lp,.elementor-template-library-template-page{width:calc(33.333% - 30px)}}.elementor-template-library-template-lp .elementor-template-library-template-body,.elementor-template-library-template-page .elementor-template-library-template-body{height:200px}#elementor-template-library-order-toolbar-local,.elementor-template-library-template-local{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:0 25px;text-align:right}#elementor-template-library-order-toolbar-local{margin-top:30px}#elementor-template-library-order-toolbar-local .elementor-template-library-order-label{line-height:1;font-size:10px;font-weight:500}#elementor-template-library-order-toolbar-local .elementor-template-library-order-label:not(:hover){color:#a4afb7}.elementor-template-library-template-local{height:50px;width:100%;margin-top:1px;background-color:#fff;-webkit-transition:background-color .3s linear;-o-transition:background-color .3s linear;transition:background-color .3s linear}.elementor-template-library-template-local:hover{background-color:#fafbfb}.elementor-template-library-template-local:not(:hover) .elementor-template-library-template-insert{background:none;color:#a4afb7}.elementor-template-library-template-local:first-child{-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0}.elementor-template-library-template-local:last-child{-webkit-border-radius:0 0 3px 3px;border-radius:0 0 3px 3px}.elementor-template-library-template-local .elementor-template-library-template-name{font-weight:500}.elementor-template-library-template-local .elementor-template-library-template-meta,.elementor-template-library-template-local .elementor-template-library-template-name{padding-left:20px}.elementor-template-library-template-local .elementor-template-library-template-meta{color:#a4afb7}.elementor-template-library-template-local .elementor-template-library-template-action,.elementor-template-library-template-local .elementor-template-library-template-meta,.elementor-template-library-template-local .elementor-template-library-template-name,.elementor-template-library-template-local .elementor-template-library-template-preview{white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}.elementor-template-library-template-local .elementor-template-library-template-controls{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-template-library-template-local .elementor-template-library-template-controls,.elementor-template-library-template-local .elementor-template-library-template-controls a{color:#a4afb7}.elementor-template-library-template-local .elementor-template-library-template-controls>div{cursor:pointer;-webkit-transition:color .5s;-o-transition:color .5s;transition:color .5s}.elementor-template-library-template-local .elementor-template-library-template-insert i{margin-left:3px}.elementor-template-library-template-local .elementor-template-library-template-control-title{margin-right:6px}.elementor-template-library-template-local .elementor-template-library-template-more:hover,.elementor-template-library-template-local .elementor-template-library-template-more a:hover{color:#556068}.elementor-template-library-template-local .elementor-template-library-template-more .elementor-template-library-template-delete:hover{color:#d72b3f}.elementor-template-library-template-local .elementor-template-library-template-action{padding:8px 18px;margin:0 5%}.elementor-template-library-template-local .elementor-template-library-template-more{display:none;position:absolute;background-color:#fff;padding:3px 20px;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:1px 3px 11px rgba(0,0,0,.3);box-shadow:1px 3px 11px rgba(0,0,0,.3);top:100%;left:0;-webkit-transform:translateX(-65%) translateY(-7px);-ms-transform:translateX(-65%) translateY(-7px);transform:translateX(-65%) translateY(-7px);z-index:1}.elementor-template-library-template-local .elementor-template-library-template-more:before{content:"";position:absolute;border:solid transparent;border-bottom:solid #fff;border-width:8px 4px;-webkit-transform:translateY(-100%);-ms-transform:translateY(-100%);transform:translateY(-100%)}.elementor-template-library-template-local .elementor-template-library-template-more>div{margin:10px 0;font-size:11px}.elementor-template-library-template-local .elementor-template-library-template-more-toggle{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;text-align:left}.elementor-template-library-template-local .elementor-template-library-template-more-toggle i{font-size:16px}#elementor-template-library-preview{height:100%;overflow:hidden}#elementor-template-library-preview iframe{height:150%;-webkit-transform:scale(.666) translateX(25%) translateY(-25%);-ms-transform:scale(.666) translateX(25%) translateY(-25%);transform:scale(.666) translateX(25%) translateY(-25%)}@media (max-width:1439px){#elementor-template-library-preview iframe{width:1440px}}@media (min-width:1440px){#elementor-template-library-preview iframe{width:1710px}}.elementor-template-library-blank-icon{font-size:65px;margin-top:45px;color:#c2cbd2;line-height:1}.elementor-template-library-blank-icon img{width:70px}.elementor-template-library-blank-icon .elementor-template-library-no-results{width:200px}.elementor-template-library-blank-title{font-size:30px;margin-top:40px}@media (max-width:1439px){.elementor-template-library-blank-title{font-size:25px}}.elementor-template-library-blank-message{font-size:18px;color:#a4afb7;margin-top:15px;font-weight:300}@media (max-width:1439px){.elementor-template-library-blank-message{font-size:16px;margin-top:10px}}#elementor-template-library-save-template-form{margin-top:40px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}#elementor-template-library-save-template-form>*{height:55px;font-size:16px}#elementor-template-library-save-template-name{width:500px;background-color:#fff;font-weight:300;color:#a4afb7;padding-right:25px;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;border:none}#elementor-template-library-save-template-submit{width:150px;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}#elementor-template-library-save-template-submit:hover{-webkit-box-shadow:none;box-shadow:none}#elementor-template-library-import-form{width:95%;background-color:hsla(0,0%,100%,.5);padding:60px;border:2px dashed #d5dadf;margin:35px auto;-webkit-transition:background-color .5s;-o-transition:background-color .5s;transition:background-color .5s}#elementor-template-library-import-form:hover{background-color:hsla(0,0%,100%,.9)}#elementor-template-library-import-form-or{margin-top:15px;font-size:18px}#elementor-template-library-import-form-label{margin-top:20px;padding:15px 35px;display:inline-block}#elementor-template-library-import-form-input{display:none}#elementor-template-library-import-form.elementor-drag-over{border:3px dashed #71d7f7}#elementor-template-library-import .elementor-template-library-blank-icon{margin-top:0}#elementor-template-library-import .elementor-template-library-blank-message{margin-top:20px}.e-route-library-connect #elementor-template-library-modal .dialog-message{max-height:95vh;padding:100px 0 0;min-height:550px}#elementor-template-library-connect-logo{font-size:20px}#elementor-template-library-connect__button{display:inline-block;position:relative;z-index:1;margin-top:25px;padding:12px 24px;font-size:14px}#elementor-template-library-connect__background-image-left-1{right:22.4%;bottom:-29%;-webkit-animation:fadeIn 1.5s,slideDown 1.5s,mover 3.5s 1.5s infinite alternate;animation:fadeIn 1.5s,slideDown 1.5s,mover 3.5s 1.5s infinite alternate}#elementor-template-library-connect__background-image-left-2{right:46.25%;bottom:-15.5%;-webkit-animation:fadeIn 3s,slideDown 3s,mover 2s 3s infinite alternate;animation:fadeIn 3s,slideDown 3s,mover 2s 3s infinite alternate}#elementor-template-library-connect__background-image-right-1{left:37%;bottom:-41%;-webkit-animation:fadeIn 2.5s,slideDown 2.5s,mover 2s 2.5s infinite alternate;animation:fadeIn 2.5s,slideDown 2.5s,mover 2s 2.5s infinite alternate}#elementor-template-library-connect__background-image-right-2{left:48%;bottom:-12.5%;-webkit-animation:fadeIn 1.5s,slideDown 1.5s,mover 1.5s 1.5s infinite alternate;animation:fadeIn 1.5s,slideDown 1.5s,mover 1.5s 1.5s infinite alternate}.elementor-template-library-connect__background-image{position:absolute}.elementor-template-library-blank-footer{position:absolute;bottom:70px;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);color:#a4afb7;font-style:italic}@media (max-height:700px){.elementor-template-library-blank-footer{display:none}}#elementor-template-library-footer-banner{padding-bottom:45px}#elementor-template-library-footer-banner i{color:#c2cbd2;font-size:56px;margin-top:40px}#elementor-template-library-footer-banner .elementor-nerd-box-icon{margin-top:70px}#elementor-template-library-footer-banner .elementor-excerpt{color:#a4afb7;font-size:15px;font-weight:500;margin-top:20px}#elementor-template-library-templates-empty{width:100%;margin-top:40px}#elementor-template-library-error-dialog .dialog-message{text-align:start}#elementor-template-library-error-info{margin-top:10px}@media (max-width:1439px){.elementor-template-library-local-column-1{width:33%}.elementor-template-library-local-column-2{width:10%}.elementor-template-library-local-column-3,.elementor-template-library-local-column-4{width:15%}.elementor-template-library-local-column-5{width:27%}}@media (min-width:1440px){.elementor-template-library-local-column-1{width:25%}.elementor-template-library-local-column-2,.elementor-template-library-local-column-3,.elementor-template-library-local-column-4{width:17%}.elementor-template-library-local-column-5{width:24%}}@media (max-width:1024px){.elementor-template-library-local-column-3{display:none}.elementor-template-library-local-column-5{width:41%}}.elementor-tags-list{display:none;position:absolute;width:260px;max-height:300px;overflow:auto;padding-bottom:5px;background-color:#fff;border:1px solid #a4afb7;-webkit-border-radius:3px;border-radius:3px;z-index:10000}.elementor-tags-list__group-title{color:#495157;font-weight:700;font-size:12px;padding:10px 15px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-tags-list__group-title .eicon-info-circle{padding-left:5px;color:#71d7f7;font-size:14px}.elementor-tags-list__item{font-size:10px;padding:6px 15px;cursor:pointer}.elementor-tags-list__item:before{content:">";font-size:8px;padding-left:5px}.elementor-tags-list__item:hover{background-color:#e6e9ec}.elementor-tags-list__teaser{border-top:2px solid #d5dadf;padding-top:4px;margin-top:4px}.elementor-tags-list__teaser-title{color:#6d7882}.elementor-tags-list__teaser-text{padding:2px 15px 8px;line-height:1.5;font-size:12px}.elementor-tags-list__teaser-link{color:#93003c;text-decoration:underline;font-style:italic;font-weight:700}.elementor-dynamic-cover{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%;height:27px;-webkit-box-sizing:border-box;box-sizing:border-box}.elementor-dynamic-cover__title{padding:0 8px;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}.elementor-dynamic-cover__remove,.elementor-dynamic-cover__settings{color:#c2cbd2;cursor:pointer;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.elementor-dynamic-cover__remove:hover,.elementor-dynamic-cover__settings:hover{color:#a4afb7}.elementor-control-type-wysiwyg .elementor-dynamic-cover{margin-top:10px}.elementor-tag-settings-popup{position:absolute;width:260px;background-color:#e6e9ec;-webkit-box-shadow:1px 1px 10px rgba(0,0,0,.3);box-shadow:1px 1px 10px rgba(0,0,0,.3);z-index:1}.elementor-tag-settings-popup:before{content:"";position:absolute;top:-20px;right:5px;border:10px solid transparent;border-bottom-color:#fff}.elementor-tag-settings-popup .elementor-control-type-section:first-child{margin:0}.elementor-tag-controls-stack-empty{background-color:#fff;padding:10px;font-size:13px;text-align:center}.elementor-control-dynamic-switcher{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-ms-flex-negative:0;flex-shrink:0;height:27px;cursor:pointer;border:1px solid #d5dadf;-webkit-border-radius:3px;border-radius:3px;background:#fff}.elementor-control-dynamic-switcher.e-control-tool{height:20px;border:0}.elementor-control-dynamic-switcher-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-control-dynamic-switcher .eicon-database{font-size:12px}.elementor-control-dynamic-value .e-global__popover-toggle,.elementor-control-dynamic-value .elementor-control-dynamic-switcher,.elementor-control-dynamic-value .elementor-control-tag-area{display:none}#elementor-toast{position:absolute;width:280px;padding:20px;-webkit-border-radius:5px;border-radius:5px;color:#d5dadf;background-color:rgba(0,0,0,.8);z-index:10000}#elementor-toast .dialog-message{font-size:13px}#elementor-toast .dialog-buttons-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;margin-top:15px}#elementor-toast .dialog-button{color:#fcb92c;margin:0 5px;text-transform:uppercase;cursor:pointer}#elementor-toast .dialog-button:last-child{margin-left:0}.elementor-context-menu{position:absolute;width:200px;background-color:#fff;border:1px solid #e6e9ec;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 2px 10px 0 rgba(0,0,0,.09);box-shadow:0 2px 10px 0 rgba(0,0,0,.09);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:101}.elementor-context-menu-list__group{padding:5px 0}.elementor-context-menu-list__group:not(:last-child){border-bottom:1px solid #e6e9ec}.elementor-context-menu-list__item{padding:5px 10px 5px 20px;display:-webkit-box;display:-ms-flexbox;display:flex;cursor:pointer}.elementor-context-menu-list__item--disabled{cursor:default;color:#d5dadf}.elementor-context-menu-list__item:not(.elementor-context-menu-list__item--disabled):hover{background-color:#71d7f7}.elementor-context-menu-list__item:not(.elementor-context-menu-list__item--disabled):hover>*{color:#fff}.elementor-context-menu-list__item__icon{width:20px;color:#c2cbd2}.elementor-context-menu-list__item__title{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}.elementor-context-menu-list__item__shortcut{color:#d5dadf}.elementor-context-menu-list__item.elementor-context-menu-list__item-delete:not(.elementor-context-menu-list__item--disabled):hover{background-color:#d72b3f}.elementor-context-menu .eicon-pro-icon{color:#fcb92c}#elementor-hotkeys{text-align:right}#elementor-hotkeys__content{display:-webkit-box;display:-ms-flexbox;display:flex;width:100%;overflow:hidden;margin-bottom:30px}@media (max-width:1024px){#elementor-hotkeys__content{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}#elementor-hotkeys__actions .elementor-hotkeys__list{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}@media (max-width:1024px){#elementor-hotkeys__actions .elementor-hotkeys__list{-webkit-border-radius:3px;border-radius:3px}}@media (min-width:1025px){#elementor-hotkeys__actions .elementor-hotkeys__header,#elementor-hotkeys__actions .elementor-hotkeys__list{padding-left:25px}}@media (min-width:1440px){#elementor-hotkeys__actions .elementor-hotkeys__header,#elementor-hotkeys__actions .elementor-hotkeys__list{padding-left:50px}}#elementor-hotkeys__navigation .elementor-hotkeys__list{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}@media (max-width:1024px){#elementor-hotkeys__navigation .elementor-hotkeys__list{-webkit-border-radius:3px;border-radius:3px}}@media (min-width:1025px){#elementor-hotkeys__navigation .elementor-hotkeys__header{padding-right:25px}}@media (min-width:1440px){#elementor-hotkeys__navigation .elementor-hotkeys__header{padding-right:50px}}@media (min-width:1025px){#elementor-hotkeys__navigation .elementor-hotkeys__list{padding-right:15px}}@media (min-width:1440px){#elementor-hotkeys__navigation .elementor-hotkeys__list{padding-right:40px}}.elementor-hotkeys__col{width:50%}@media (max-width:1024px){.elementor-hotkeys__col{width:100%}}.elementor-hotkeys__header,.elementor-hotkeys__list{width:100%}.elementor-hotkeys__header{padding:10px 30px;font-weight:500}@media (max-width:479px){.elementor-hotkeys__header{padding-right:10px;padding-left:10px}}.elementor-hotkeys__list{background-color:#fff;height:calc(100% - 42px);padding:10px 20px}@media (max-width:479px){.elementor-hotkeys__list{padding:0}}@media (max-width:1024px){.elementor-hotkeys__list{margin-bottom:30px;height:auto}}.elementor-hotkeys__item{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:20px 10px;border-bottom:1px solid #eceeef}.elementor-hotkeys__item:last-child{margin-bottom:30px}@media (max-width:479px){.elementor-hotkeys__item:last-child{margin-bottom:0}}.elementor-hotkeys__item--label{font-size:13px;font-weight:400;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-hotkeys__item--shortcut{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-hotkeys__item--shortcut span{position:relative;background-color:#eceeef;padding:5px 12px;margin-right:27px;-webkit-border-radius:3px;border-radius:3px}@media (max-width:479px){.elementor-hotkeys__item--shortcut span{padding:4px 9px;margin-right:23px}}.elementor-hotkeys__item--shortcut span:after{content:"+";position:absolute;right:-18px;width:9px;text-align:center}@media (max-width:479px){.elementor-hotkeys__item--shortcut span:after{right:-16px}}.elementor-hotkeys__item--shortcut span:last-child{margin-right:0}.elementor-hotkeys__item--shortcut span:last-child:after{display:none}.ui-resizable-n{top:-5px}.ui-resizable-e{right:-5px}.ui-resizable-s{bottom:-5px}.ui-resizable-w{left:-5px}.ui-resizable-ne{top:-5px;right:-5px}.ui-resizable-nw{top:-5px;left:-5px}.ui-resizable-se{bottom:-5px;right:-5px}.ui-resizable-sw{bottom:-5px;left:-5px}.ui-resizable-n,.ui-resizable-s{left:0;height:10px;width:100%;cursor:ns-resize}.ui-resizable-e,.ui-resizable-w{top:0;height:100%;width:10px;cursor:ew-resize}.ui-resizable-ne,.ui-resizable-nw,.ui-resizable-se,.ui-resizable-sw{height:15px;width:15px}.ui-resizable-nw,.ui-resizable-se{cursor:nwse-resize}.ui-resizable-ne,.ui-resizable-sw{cursor:nesw-resize}.ui-resizable-handle{position:absolute}.ui-resizable-resizing{pointer-events:none}body{--e-editor-navigator-width:240px}#elementor-navigator{position:fixed;top:100px;width:var(--e-editor-navigator-width);height:50vh;left:30px;background-color:#fff;-webkit-box-shadow:0 2px 20px 0 rgba(0,0,0,.1);box-shadow:0 2px 20px 0 rgba(0,0,0,.1);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;overflow:hidden;z-index:100;display:none}body.elementor-navigator-docked #elementor-navigator{top:0;left:0;height:100%}body:not(.elementor-navigator-docked) #elementor-navigator{-webkit-border-radius:5px;border-radius:5px}#elementor-navigator__inner{height:100%;background-color:#e6e9ec}#elementor-navigator__header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding:12px 10px;background-color:#fff;border-bottom:1px solid #e6e9ec;cursor:move}#elementor-navigator__close,#elementor-navigator__toggle-all{-webkit-transition:color .5s;-o-transition:color .5s;transition:color .5s;cursor:pointer}#elementor-navigator__close:not(:hover),#elementor-navigator__toggle-all:not(:hover){color:#a4afb7}#elementor-navigator__toggle-all{font-size:13px}#elementor-navigator__close{font-size:11px}#elementor-navigator__elements{height:calc(100% - 49px);overflow:auto;position:relative}.elementor-navigator-docked #elementor-navigator__elements{height:calc(100% - 35px)}#elementor-navigator__elements .elementor-nerd-box{padding:25px}#elementor-navigator__footer{position:absolute;width:100%;left:0;bottom:0;text-align:center;background-color:#fff;border-top:1px solid #e6e9ec;color:#a4afb7}.elementor-navigator-docked #elementor-navigator__footer{display:none}.elementor-navigator__item{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;height:30px;font-size:11px;border-bottom:1px solid #e6e9ec;cursor:pointer;-webkit-transition:padding .5s linear;-o-transition:padding .5s linear;transition:padding .5s linear;overflow:hidden}.elementor-navigator__item:not(.elementor-active) .elementor-navigator__element__list-toggle i{-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.elementor-navigator__item>*{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-navigator__item+.elementor-navigator__elements{display:none}.elementor-navigator__elements .elementor-empty-view{padding:10px;border-bottom:1px solid #e6e9ec}.elementor-navigator__elements .elementor-empty-view__title{margin-right:23px;color:#c2cbd2;font-size:10px;font-style:italic}.elementor-navigator__elements .ui-sortable-helper{background-color:#fff;-webkit-box-shadow:1px 2px 5px 0 rgba(0,0,0,.1);box-shadow:1px 2px 5px 0 rgba(0,0,0,.1);-webkit-transform:rotate(4deg);-ms-transform:rotate(4deg);transform:rotate(4deg);border:1px solid #e6e9ec;pointer-events:none}.elementor-navigator__elements .ui-sortable-placeholder{background-color:#f1f3f5}.elementor-navigator__element.elementor-dragging-on-child>.elementor-navigator__elements>.elementor-empty-view{border-top:2px solid #71d7f7}.elementor-navigator__element.elementor-dragging-on-child>.elementor-navigator__elements>.elementor-empty-view+.ui-sortable-placeholder,.elementor-navigator__element.elementor-dragging-on-child>.elementor-navigator__elements>.elementor-empty-view .elementor-empty-view__title{display:none}.elementor-navigator__element:not(.elementor-navigator__element--has-children) .elementor-navigator__element__list-toggle{visibility:hidden}.elementor-navigator__element:not(.elementor-navigator__element--hidden)>.elementor-navigator__item .elementor-navigator__element__toggle{color:#71d7f7}.elementor-navigator__element:not(.elementor-navigator__element--hidden)>.elementor-navigator__item:not(:hover) .elementor-navigator__element__toggle{display:none}.elementor-navigator__element:not(.elementor-navigator__element--hidden)>.elementor-navigator__item.elementor-editing{background-color:#71d7f7}.elementor-navigator__element:not(.elementor-navigator__element--hidden)>.elementor-navigator__item.elementor-editing>*{color:#fff}.elementor-navigator__element__list-toggle{margin-left:7px;-webkit-transition:-webkit-transform .3s;transition:-webkit-transform .3s;-o-transition:transform .3s;transition:transform .3s;transition:transform .3s,-webkit-transform .3s;color:#a4afb7}.elementor-navigator__element__element-type{margin-left:8px}.elementor-navigator__element__title{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;overflow:hidden}.elementor-navigator__element__title__text{white-space:nowrap;-webkit-user-select:text}.elementor-navigator__element__title__text[contenteditable=true]{outline:none;color:#6d7882;background-color:#fff;padding:2px 3px;-webkit-box-shadow:0 0 4px rgba(0,0,0,.2);box-shadow:0 0 4px rgba(0,0,0,.2)}.elementor-navigator__element__title__text:not([contenteditable=true]){white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}.elementor-navigator__element__toggle{position:absolute;left:15px;height:100%;z-index:0;font-size:13px}.elementor-navigator__element__indicators{position:relative;-webkit-transition:-webkit-transform .5s;transition:-webkit-transform .5s;-o-transition:transform .5s;transition:transform .5s;transition:transform .5s,-webkit-transform .5s;padding-right:5px;z-index:91}.elementor-navigator__element__indicators:not(:hover){-webkit-transform:translateX(calc(-100% + 8px));-ms-transform:translateX(calc(-100% + 8px));transform:translateX(calc(-100% + 8px))}.elementor-navigator__element__indicator{height:100%;width:31px;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;color:#6d7882;background-color:#fff;border-right:1px solid #e6e9ec}.elementor-navigator__element__indicator:first-child{border-right:3px solid #71d7f7}.elementor-editing .elementor-navigator__element__indicator:first-child{border-color:#41c9f4}.elementor-navigator__element__indicator:hover{color:#495157}.elementor-navigator__element--hidden .elementor-navigator__element__title,.elementor-navigator__element--hidden .elementor-navigator__element__toggle{opacity:.5}.elementor-navigator__element-column{background-color:#fafbfb}.elementor-navigator__element-column>.elementor-navigator__item .elementor-navigator__element__element-type{color:#a4afb7}.elementor-navigator__element-section{background-color:#fff}#elementor-notice-bar{position:absolute;width:100%;bottom:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:40px;color:#fff;background-color:#6d7882;padding:0 50px}#elementor-notice-bar__message{padding-right:15px;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}#elementor-notice-bar__message a{text-decoration:underline}#elementor-notice-bar__action{text-transform:uppercase}#elementor-notice-bar__close{margin:0 20px;cursor:pointer}#elementor-notice-bar i{font-size:16px;opacity:.9}#elementor-notice-bar a{color:#fff}#elementor-notice-bar a,#elementor-notice-bar i{-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}#elementor-notice-bar a:hover,#elementor-notice-bar i:hover{color:#d4d4d4}body:not(.elementor-device-desktop) #elementor-notice-bar{display:none}#elementor-fatal-error-dialog.elementor-preview-loading-error .dialog-header{color:#495157}#elementor-fatal-error-dialog.elementor-preview-loading-error .dialog-message a{color:#6d7882;text-decoration:underline;font-style:italic}#elementor-preview-debug-link-text{display:inline-block}#elementor-icons-manager-modal .dialog-message{padding:0;height:700px}#elementor-icons-manager-modal .dialog-buttons-wrapper,#elementor-icons-manager-modal .dialog-content,#elementor-icons-manager__wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}@media (max-width:479px){#elementor-icons-manager__sidebar{display:none}}#elementor-icons-manager__tab-links{margin-top:30px}#elementor-icons-manager__upload{margin:20px 45px;padding-top:35px;border-top:1px solid #e6e9ec;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}@media (max-width:1439px){#elementor-icons-manager__upload{margin:20px 25px}}#elementor-icons-manager__upload__title{color:#a4afb7;font-size:11px;text-transform:uppercase}#elementor-icons-manager__main{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding:30px 80px 0}@media (max-width:1439px){#elementor-icons-manager__main{padding:30px 50px 0}}@media (max-width:479px){#elementor-icons-manager__main{width:100%}}#elementor-icons-manager__search{position:relative}#elementor-icons-manager__search input{padding:8px 15px;background-color:#fff;border:none}#elementor-icons-manager__search input::-webkit-input-placeholder{font-style:italic}#elementor-icons-manager__search input::-moz-placeholder{font-style:italic}#elementor-icons-manager__search input::-ms-input-placeholder{font-style:italic}#elementor-icons-manager__search input::placeholder{font-style:italic}#elementor-icons-manager__search i{position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);left:15px}#elementor-icons-manager__tab__wrapper{overflow:auto;margin:25px -15px 0;padding:0 15px 15px}#elementor-icons-manager__tab__title{color:#556068;font-size:16px;font-weight:500;text-align:right}@media (max-width:479px){#elementor-icons-manager__tab__title{display:none}}#elementor-icons-manager__tab__content{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:20px;margin:20px 0}@media (max-width:1439px){#elementor-icons-manager__tab__content{grid-template-columns:repeat(6,1fr)}}@media (max-width:1024px){#elementor-icons-manager__tab__content{grid-template-columns:repeat(5,1fr)}}@media (max-width:767px){#elementor-icons-manager__tab__content{grid-template-columns:repeat(4,1fr)}}@media (max-width:479px){#elementor-icons-manager__tab__content{grid-template-columns:repeat(3,1fr)}}#elementor-icons-manager__promotion{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding-top:70px}#elementor-icons-manager__promotion__icon{font-size:60px;color:#c2cbd2}#elementor-icons-manager__promotion__text{width:300px;font-size:16px;padding-top:25px}#elementor-icons-manager__promotion__link{margin-top:20px}.elementor-icons-manager__tab-link{padding:15px 45px 15px 0;font-size:14px;color:#6d7882;text-align:right;cursor:pointer;position:relative}.elementor-icons-manager__tab-link i{font-size:20px;padding-left:15px;color:#a4afb7}@media (max-width:1439px){.elementor-icons-manager__tab-link{padding:15px 25px 15px 15px;font-size:11px}.elementor-icons-manager__tab-link i{font-size:15px}}@media (max-width:1024px){.elementor-icons-manager__tab-link i{display:none}}.elementor-icons-manager__tab-link.elementor-active{background-color:#fff;-webkit-box-shadow:0 6px 20px 0 rgba(0,0,0,.1);box-shadow:0 6px 20px 0 rgba(0,0,0,.1)}.elementor-icons-manager__tab-link.elementor-active:after{content:"";position:absolute;height:100%;width:5px;top:0;right:0;background-color:#71d7f7}.elementor-icons-manager__tab-link.elementor-active i{color:#71d7f7}.elementor-icons-manager__tab__item{position:relative;height:0;padding-bottom:100%;background-color:#fff;-webkit-box-shadow:0 1px 12px rgba(0,0,0,.05);box-shadow:0 1px 12px rgba(0,0,0,.05);-webkit-border-radius:3px;border-radius:3px;cursor:pointer;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;overflow:hidden}.elementor-icons-manager__tab__item:hover{-webkit-box-shadow:0 1px 14px rgba(0,0,0,.16);box-shadow:0 1px 14px rgba(0,0,0,.16)}.elementor-icons-manager__tab__item.elementor-selected{-webkit-box-shadow:0 1px 12px rgba(0,0,0,.05),0 0 0 3px #71d7f7;box-shadow:0 1px 12px rgba(0,0,0,.05),0 0 0 3px #71d7f7}.elementor-icons-manager__tab__item__content{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%;position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);padding:1px}.elementor-icons-manager__tab__item__icon{font-size:25px;color:#6d7882}.elementor-icons-manager__tab__item__name{color:#c2cbd2;font-size:11px;padding:13px 20px 0;max-width:100%;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden}#elementor-enable-fa5-dialog a{font-style:italic;text-decoration:underline}#elementor-enable-fa5-dialog .dialog-confirm-ok{color:#39b54a}.elementor-color-picker__header{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-weight:700;padding:10px;-webkit-box-shadow:0 2px 8px rgba(0,0,0,.1);box-shadow:0 2px 8px rgba(0,0,0,.1)}.e-color-picker__tools,.elementor-color-picker__header{display:-webkit-box;display:-ms-flexbox;display:flex}.e-control-color--no-value .pcr-button{background-image:-webkit-linear-gradient(315deg,transparent 46%,#ff3030 50%,transparent 54%);background-image:-o-linear-gradient(315deg,transparent 46%,#ff3030 50%,transparent 54%);background-image:linear-gradient(135deg,transparent 46%,#ff3030 50%,transparent 54%);-webkit-background-size:cover;background-size:cover;background-color:transparent;border:1px solid #d5dadf}.pcr-app[data-theme=monolith]{padding:0}.pcr-result{border-right-width:1px;-webkit-border-radius:3px;border-radius:3px}.pcr-interaction,.pcr-selection{padding:0 20px}.pcr-interaction{padding-bottom:20px}.pcr .elementor-control-dynamic-switcher{height:20px;border:0}.select2-container{width:100%!important;outline:none;z-index:9999;font-size:12px}.select2-container .e-select2-placeholder{color:#a4afb7}.select2-container.select2-container--default .select2-selection--single{height:27px}.select2-container.select2-container--default .select2-selection--single .select2-selection__rendered{color:#6d7882;line-height:27px}.select2-container.select2-container--default .select2-selection--multiple{min-height:27px;line-height:0}.select2-container.select2-container--default .select2-selection--multiple .select2-selection__clear{display:none}.select2-container.select2-container--default .select2-selection--multiple .select2-selection__choice{background-color:#f1f3f5;line-height:1.2;font-size:10px;border:none;-webkit-border-radius:0;border-radius:0;padding:2px 3px}.select2-container.select2-container--default .select2-selection--multiple .select2-selection__choice.select2-selection__e-plus-button{cursor:pointer;width:16.67px;text-indent:-9999px;position:relative}.select2-container.select2-container--default .select2-selection--multiple .select2-selection__choice.select2-selection__e-plus-button:after{content:"\e815";font-family:eicons;color:#a4afb7;text-indent:0;position:absolute;left:0;top:0;width:100%;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.select2-container.select2-container--default .select2-selection--multiple .select2-selection__rendered{padding-bottom:5px}.select2-container.select2-container--default .select2-selection--multiple .select2-selection__choice__remove{color:#a4afb7;margin-left:3px}.select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--multiple,.select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--single{border-color:#d5dadf}.select2-container.select2-container--focus .select2-selection--multiple,.select2-container.select2-container--focus .select2-selection--single,.select2-container.select2-container--open .select2-selection--multiple,.select2-container.select2-container--open .select2-selection--single{border-color:#a4afb7}.select2-selection{outline:none}.select2-selection--single{height:27px}.select2-selection__arrow{height:27px;top:0}.select2-results__option[aria-selected=true]{color:#495157}.select2-results__option[aria-selected=true]:not(.select2-results__option--highlighted){background-color:initial}.select2-dropdown{border-color:#a4afb7}.select2-dropdown .select2-search__field{outline:none}assets/css/widget-counter-rtl.min.css000064400000001144151327220410013666 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-counter .elementor-counter-number-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;font-size:69px;font-weight:600;line-height:1}.elementor-counter .elementor-counter-number-prefix,.elementor-counter .elementor-counter-number-suffix{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;white-space:pre-wrap}.elementor-counter .elementor-counter-number-prefix{text-align:left}.elementor-counter .elementor-counter-number-suffix{text-align:right}.elementor-counter .elementor-counter-title{text-align:center;font-size:19px;font-weight:400;line-height:2.5}assets/css/widget-icon-list-rtl.min.css000064400000013520151327220410014111 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-widget.elementor-icon-list--layout-inline .elementor-widget-container{overflow:hidden}.elementor-widget .elementor-icon-list-items.elementor-inline-items{margin-right:-8px;margin-left:-8px}.elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-right:8px;margin-left:8px}.elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{width:auto;left:auto;right:auto;position:relative;height:100%;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);border-top:0;border-bottom:0;border-right:0;border-left-width:1px;border-style:solid;left:-8px}.elementor-widget .elementor-icon-list-items{list-style-type:none;margin:0;padding:0}.elementor-widget .elementor-icon-list-item{margin:0;padding:0;position:relative}.elementor-widget .elementor-icon-list-item:after{position:absolute;bottom:0;width:100%}.elementor-widget .elementor-icon-list-item,.elementor-widget .elementor-icon-list-item a{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-size:inherit}.elementor-widget .elementor-icon-list-icon+.elementor-icon-list-text{-ms-flex-item-align:center;align-self:center;padding-right:5px}.elementor-widget .elementor-icon-list-icon{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget .elementor-icon-list-icon svg{width:var(--e-icon-list-icon-size,1em);height:var(--e-icon-list-icon-size,1em)}.elementor-widget .elementor-icon-list-icon i{width:1.25em;font-size:var(--e-icon-list-icon-size)}.elementor-widget.elementor-widget-icon-list .elementor-icon-list-icon{text-align:var(--e-icon-list-icon-align)}.elementor-widget.elementor-widget-icon-list .elementor-icon-list-icon svg{margin:var(--e-icon-list-icon-margin,0 calc(var(--e-icon-list-icon-size, 1em) * .25) 0 0)}.elementor-widget.elementor-list-item-link-full_width a{width:100%}.elementor-widget.elementor-align-center .elementor-icon-list-item,.elementor-widget.elementor-align-center .elementor-icon-list-item a{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget.elementor-align-center .elementor-inline-items{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-align-left .elementor-icon-list-item,.elementor-widget.elementor-align-left .elementor-icon-list-item a{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;text-align:left}.elementor-widget.elementor-align-left .elementor-inline-items{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-widget.elementor-align-right .elementor-icon-list-item,.elementor-widget.elementor-align-right .elementor-icon-list-item a{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;text-align:right}.elementor-widget.elementor-align-right .elementor-icon-list-items{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-widget:not(.elementor-align-right) .elementor-icon-list-item:after{right:0}.elementor-widget:not(.elementor-align-left) .elementor-icon-list-item:after{left:0}@media (max-width:1024px){.elementor-widget.elementor-tablet-align-center .elementor-icon-list-item,.elementor-widget.elementor-tablet-align-center .elementor-icon-list-item a,.elementor-widget.elementor-tablet-align-center .elementor-icon-list-items{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-tablet-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget.elementor-tablet-align-left .elementor-icon-list-items{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-widget.elementor-tablet-align-left .elementor-icon-list-item,.elementor-widget.elementor-tablet-align-left .elementor-icon-list-item a{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;text-align:left}.elementor-widget.elementor-tablet-align-right .elementor-icon-list-items{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-widget.elementor-tablet-align-right .elementor-icon-list-item,.elementor-widget.elementor-tablet-align-right .elementor-icon-list-item a{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;text-align:right}.elementor-widget:not(.elementor-tablet-align-right) .elementor-icon-list-item:after{right:0}.elementor-widget:not(.elementor-tablet-align-left) .elementor-icon-list-item:after{left:0}}@media (max-width:767px){.elementor-widget.elementor-mobile-align-center .elementor-icon-list-item,.elementor-widget.elementor-mobile-align-center .elementor-icon-list-item a,.elementor-widget.elementor-mobile-align-center .elementor-icon-list-items{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-mobile-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget.elementor-mobile-align-left .elementor-icon-list-items{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-widget.elementor-mobile-align-left .elementor-icon-list-item,.elementor-widget.elementor-mobile-align-left .elementor-icon-list-item a{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;text-align:left}.elementor-widget.elementor-mobile-align-right .elementor-icon-list-items{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-widget.elementor-mobile-align-right .elementor-icon-list-item,.elementor-widget.elementor-mobile-align-right .elementor-icon-list-item a{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;text-align:right}.elementor-widget:not(.elementor-mobile-align-right) .elementor-icon-list-item:after{right:0}.elementor-widget:not(.elementor-mobile-align-left) .elementor-icon-list-item:after{left:0}}assets/css/app.css000064400000300417151327220410010132 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
@import "//fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap";
:root {
  --color-box-shadow-color: rgba(0, 0, 0, 0.05); }

.eps-theme-dark {
  --color-box-shadow-color: rgba(0, 0, 0, 0.1); }

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0; }

@media screen and (min-width: 480px) {
  .text-start-sm {
    text-align: start; } }

@media screen and (min-width: 480px) {
  .text-center-sm {
    text-align: center; } }

@media screen and (min-width: 480px) {
  .text-end-sm {
    text-align: end; } }

@media screen and (min-width: 768px) {
  .text-start-md {
    text-align: start; } }

@media screen and (min-width: 768px) {
  .text-center-md {
    text-align: center; } }

@media screen and (min-width: 768px) {
  .text-end-md {
    text-align: end; } }

@media screen and (min-width: 1025px) {
  .text-start-lg {
    text-align: start; } }

@media screen and (min-width: 1025px) {
  .text-center-lg {
    text-align: center; } }

@media screen and (min-width: 1025px) {
  .text-end-lg {
    text-align: end; } }

@media screen and (min-width: 1440px) {
  .text-start-xl {
    text-align: start; } }

@media screen and (min-width: 1440px) {
  .text-center-xl {
    text-align: center; } }

@media screen and (min-width: 1440px) {
  .text-end-xl {
    text-align: end; } }

@media screen and (min-width: 1600px) {
  .text-start-xxl {
    text-align: start; } }

@media screen and (min-width: 1600px) {
  .text-center-xxl {
    text-align: center; } }

@media screen and (min-width: 1600px) {
  .text-end-xxl {
    text-align: end; } }

@-webkit-keyframes eps-animation-pop {
  from {
    -webkit-transform: scale(0.75);
            transform: scale(0.75);
    opacity: 0; }
  to {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1; } }

@keyframes eps-animation-pop {
  from {
    -webkit-transform: scale(0.75);
            transform: scale(0.75);
    opacity: 0; }
  to {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1; } }

/**
TODO: The molecules, atoms and such generics should be at top level, so the styles will be not depended on the order.
EG: '../../../../core/app/assets/styles/generic'.
Auto-import is designed for CSS that not dependent on the loading order.
 */
.eps-button {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  --button-line-height: 16px;
  --button-padding-y: 0.5em;
  --button-padding-x: 1.5em;
  --button-primary-background-color: #39b54a;
  --button-primary-hover-background-color: #33a242;
  --button-primary-active-background-color: #35a945;
  --button-primary-color: #fff;
  --button-secondary-background-color: #a4afb7;
  --button-secondary-hover-background-color: #96a2ac;
  --button-secondary-active-background-color: #9ba7b0;
  --button-secondary-color: #fff;
  --button-danger-background-color: #b01b1b;
  --button-danger-hover-background-color: #9a1818;
  --button-danger-active-background-color: #a31919;
  --button-danger-color: #fff;
  --button-cta-background-color: #93003F;
  --button-cta-hover-background-color: #7a0034;
  --button-cta-active-background-color: #840038;
  --button-cta-color: #fff;
  --button-link-background-color: #58d0f5;
  --button-link-hover-background-color: #40c9f4;
  --button-link-active-background-color: #4accf4;
  --button-link-color: #fff;
  --button-disabled-background-color: #c2cbd2;
  --button-disabled-hover-background-color: #b3bec7;
  --button-disabled-active-background-color: #b9c3cc;
  --button-disabled-color: #fff;
  color: var(--button-background-color, currentColor);
  font-size: var(--button-font-size, inherit);
  font-weight: 500;
  line-height: var(--button-line-height);
  cursor: pointer; }
  .eps-button:active {
    --button-background-color: var(--button-active-background-color, transparent); }
  .eps-button:hover {
    --button-background-color: var(--button-hover-background-color); }
  .eps-theme-dark .eps-button {
    --button-primary-background-color: #39b54a;
    --button-primary-color: #fff;
    --button-primary-hover-background-color: #33a242;
    --button-primary-active-background-color: #35a945;
    --button-secondary-background-color: #b4b5b7;
    --button-secondary-color: #fff;
    --button-secondary-hover-background-color: #a7a8ab;
    --button-secondary-active-background-color: #acadb0;
    --button-cta-background-color: #93003F;
    --button-cta-hover-background-color: #7a0034;
    --button-cta-active-background-color: #840038;
    --button-cta-color: #fff;
    --button-link-background-color: #58d0f5;
    --button-link-hover-background-color: #40c9f4;
    --button-link-active-background-color: #4accf4;
    --button-link-color: #fff;
    --button-disabled-background-color: #64666a;
    --button-disabled-hover-background-color: #58595d;
    --button-disabled-active-background-color: #5d5e62;
    --button-disabled-color: #fff; }
  .eps-button--contained {
    color: var(--button-color);
    padding: var(--button-padding-y) var(--button-padding-x);
    background-color: var(--button-background-color, transparent);
    border: 1px solid var(--button-background-color); }
    .eps-button--contained:hover {
      color: var(--button-color); }
  .eps-button--outlined {
    display: block;
    padding: var(--button-padding-y) var(--button-padding-x);
    border: 1px solid var(--button-background-color); }
  .eps-button--contained, .eps-button--outlined {
    -webkit-border-radius: 0.1875rem;
            border-radius: 0.1875rem; }
  .eps-button--underlined {
    text-decoration: underline; }
  .eps-button--sm {
    --button-font-size: 0.75rem;
    --button-line-height: 14px; }
  .eps-button--lg {
    --button-font-size: 0.9375rem;
    --button-line-height: 18px; }
  .eps-button--primary {
    --button-color: var(--button-primary-color);
    --button-background-color: var(--button-primary-background-color);
    --button-hover-background-color: var(--button-primary-hover-background-color);
    --button-active-background-color: var(--button-primary-active-background-color); }
  .eps-button--secondary {
    --button-color: var(--buton-secondary-color);
    --button-background-color: var(--button-secondary-background-color);
    --button-hover-background-color: var(--button-secondary-hover-background-color);
    --button-active-background-color: var(--button-secondary-active-background-color); }
  .eps-button--danger {
    --button-color: var(--buton-danger-color);
    --button-background-color: var(--button-danger-background-color);
    --button-hover-background-color: var(--button-danger-hover-background-color);
    --button-active-background-color: var(--button-danger-active-background-color); }
  .eps-button--cta {
    --button-color: var(--button-cta-color);
    --button-background-color: var(--button-cta-background-color);
    --button-hover-background-color: var(--button-cta-hover-background-color);
    --button-active-background-color: var(--button-cta-active-background-color); }
  .eps-button--link {
    --button-color: var(--button-link-color);
    --button-background-color: var(--button-link-background-color);
    --button-hover-background-color: var(--button-link-hover-background-color);
    --button-active-background-color: var(--button-link-active-background-color); }
  .eps-button--disabled, .eps-button[disabled] {
    --button-color: var(--button-disabled-color);
    --button-background-color: var(--button-disabled-background-color);
    --button-hover-background-color: var(--button-disabled-hover-background-color);
    --button-active-background-color: var(--button-disabled-active-background-color);
    cursor: default; }

:root {
  --app-background-color: #f1f3f5;
  --app-box-shadow-color: rgba(var(--box-shadow-color, rgba(0, 0, 0, 0.15)), 0.2);
  --app-header-background-color: #fff;
  --app-header-color: #495157;
  --app-sidebar-background-color: rgba(255, 255, 255, 0.5);
  --app-header-buttons-separator-color: #d5dadf;
  --app-header-buttons-color: #a4afb7;
  --app-lightbox-background-color: rgba(0, 0, 0, 0.8); }

.eps-theme-dark {
  --app-background-color: #34383c;
  --app-box-shadow-color: rgba(var(--box-shadow-color, rgba(0, 0, 0, 0.15)), 0.2);
  --app-header-background-color: #26292C;
  --app-header-color: #e0e1e3;
  --app-sidebar-background-color: #34383c;
  --app-header-buttons-separator-color: #64666a;
  --app-header-buttons-color: #b4b5b7;
  --app-lightbox-background-color: rgba(0, 0, 0, 0.8); }

:root {
  --text-muted: #d5dadf;
  --disabled: #c2cbd2;
  --light: #fff;
  --dark: #000;
  --info: #58d0f5;
  --cta: #93003F;
  --danger: #b01b1b;
  --success: #39b54a;
  --warning: #fcb92c;
  --body-color: #6d7882;
  --link-color: #58d0f5;
  --link-hover-color: #10bcf1;
  --hr-color: #d5dadf;
  --box-shadow-color: theme-colors(dark);
  --display-1-color: #495157;
  --display-2-color: #495157;
  --display-3-color: #6d7882;
  --display-4-color: #495157;
  --h1-color: #6d7882;
  --h2-color: #6d7882;
  --h3-color: #495157;
  --h4-color: #495157;
  --h5-color: #495157;
  --h6-color: #495157;
  --text-base-color: #495157;
  --text-xl-color: #495157;
  --text-lg-color: #495157;
  --text-sm-color: #495157;
  --text-xs-color: #495157;
  --text-xxs-color: #495157;
  --gray-800: #495157;
  --gray-700: #556068;
  --gray-600: #6d7882;
  --gray-500: #a4afb7;
  --gray-400: #c2cbd2;
  --gray-300: #d5dadf;
  --gray-200: #f1f3f5;
  --gray-100: #fcfcfc; }

.eps-theme-dark {
  --text-muted: #7d7e82;
  --disabled: #64666a;
  --light: #fff;
  --dark: #000;
  --info: #58d0f5;
  --accent: #58d0f5;
  --danger: #F84343;
  --cta: #93003F;
  --success: #39b54a;
  --warning: #fcb92c;
  --body-color: #e0e1e3;
  --body-bg: #fff;
  --link-color: #58d0f5;
  --link-hover-color: #10bcf1;
  --hr-color: #4c4f56;
  --box-shadow-color: rgba(0, 0, 0, 0.15);
  --display-1-color: #e0e1e3;
  --display-2-color: #e0e1e3;
  --display-3-color: #e0e1e3;
  --display-4-color: #e0e1e3;
  --h1-color: #e0e1e3;
  --h2-color: #e0e1e3;
  --h3-color: #e0e1e3;
  --h4-color: #e0e1e3;
  --h5-color: #e0e1e3;
  --h6-color: #e0e1e3;
  --text-base-color: #b4b5b7;
  --text-xl-color: #b4b5b7;
  --text-lg-color: #b4b5b7;
  --text-sm-color: #b4b5b7;
  --text-xs-color: #b4b5b7;
  --text-xxs-color: #b4b5b7;
  --gray-800: #26292C;
  --gray-700: #34383c;
  --gray-600: #404349;
  --gray-500: #4c4f56;
  --gray-400: #64666a;
  --gray-300: #7d7e82;
  --gray-200: #b4b5b7;
  --gray-100: #e0e1e3; }

*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
  display: block; }

body {
  margin: 0;
  font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  color: var(--body-color);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background-color: var(--body-bg); }

::-moz-selection {
  background-color: rgba(147, 0, 63, 0.5); }

::selection {
  background-color: rgba(147, 0, 63, 0.5); }

[tabindex="-1"]:focus:not(:focus-visible) {
  outline: 0 !important; }

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  margin: 0;
  padding: 0;
  line-height: inherit;
  font-weight: normal; }

p {
  margin-top: 0; }

b,
strong {
  font-weight: 700; }

small {
  font-size: 80%; }

a {
  --eps-link-color: $eps-link-color;
  color: var(--eps-link-color);
  background-color: transparent; }
  a, a:active, a:hover, a:focus {
    text-decoration: none; }
  a:focus, a:hover {
    --eps-link-color: $eps-link-hover-color;
    text-decoration: none; }

a:not([href]) {
  color: inherit;
  text-decoration: none; }
  a:not([href]):hover {
    color: inherit;
    text-decoration: none; }

pre,
code,
kbd,
samp {
  font-family: monospace;
  font-size: 1em; }

figure {
  margin: 0 0 0; }

img {
  vertical-align: middle;
  border-style: none; }

svg {
  overflow: hidden;
  vertical-align: middle; }

button {
  -webkit-border-radius: 0;
          border-radius: 0; }

button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color; }

input,
button,
select,
optgroup,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit; }

button,
input {
  overflow: visible; }

button,
select {
  text-transform: none; }

[role="button"] {
  cursor: pointer; }

select {
  word-wrap: normal; }

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button; }

button:not(:disabled),
[type="button"]:not(:disabled),
[type="reset"]:not(:disabled),
[type="submit"]:not(:disabled) {
  cursor: pointer; }

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  padding: 0;
  border-style: none; }

input[type="radio"],
input[type="checkbox"] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0; }

textarea {
  overflow: auto;
  resize: vertical; }

[hidden] {
  display: none !important; }

hr {
  border: 0 none;
  border-bottom: 1px solid var(--hr-color); }

.eps-display-1 {
  font-size: 1.85rem;
  color: var(--display-1-color);
  margin-top: 0.5rem;
  margin-bottom: 0.5rem; }

.eps-display-2 {
  font-size: 1.85rem;
  color: var(--display-2-color);
  margin-top: 0.5rem;
  margin-bottom: 0.5rem; }

.eps-display-3 {
  font-size: 1.85rem;
  color: var(--display-3-color);
  margin-top: 0;
  margin-bottom: 1.25rem; }

.eps-display-4 {
  font-size: 1.85rem;
  color: var(--display-4-color);
  margin-top: 0.5rem;
  margin-bottom: 0.5rem; }

h1,
.eps-h1 {
  font-size: 1.625rem;
  line-height: 1;
  color: var(--h1-color);
  margin-bottom: 1.25rem;
  font-weight: 500; }

h2,
.eps-h2 {
  font-size: 1.25rem;
  line-height: 1.2;
  color: var(--h2-color);
  margin-top: 0;
  margin-bottom: 1.25rem;
  font-weight: 500; }

h3,
.eps-h3 {
  font-size: 1rem;
  line-height: 1.2;
  color: var(--h3-color);
  margin-top: 0;
  margin-bottom: 0.5rem;
  font-weight: 500; }

h4,
.eps-h4 {
  font-size: 0.9375rem;
  color: var(--h4-color);
  margin-top: 0;
  margin-bottom: 0.5rem; }

h5,
.eps-h5 {
  font-size: 0.875rem;
  color: var(--h5-color);
  margin-top: 0;
  margin-bottom: 0.5rem; }

h6,
.eps-h6 {
  font-size: 0.875rem;
  color: var(--h-6-color);
  margin-top: 0;
  margin-bottom: 0.5rem;
  font-weight: 700; }

.eps-text-xxs {
  font-size: 0.75rem;
  line-height: 1.2;
  color: var(--text-xxs-color);
  font-weight: 400; }

.eps-text-xs {
  font-size: 0.75rem;
  line-height: 1.5;
  color: var(--text-xs-color);
  font-weight: 400; }

.eps-text {
  font-size: 0.875rem;
  line-height: 1.5;
  color: var(--text-base-color);
  font-weight: 400; }

.eps-text-sm {
  font-size: 0.8125rem;
  line-height: 1.5;
  color: var(--text-sm-color);
  font-weight: 400; }

.eps-text-lg {
  font-size: 0.9375rem;
  line-height: 1.5;
  color: var(--text-lg-color);
  font-weight: 400; }

.eps-text-xl {
  font-size: 1rem;
  line-height: 1.5;
  color: var(--text-xl-color);
  font-weight: 400; }

.video-wrapper {
  position: relative;
  padding-bottom: 56.25%;
  height: 0; }
  .video-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

.eps-separator {
  margin-bottom: 2.75rem; }

.eps-theme-dark {
  --e-app-back-button-color: #b4b5b7; }

.back-button, .e-app-back-button {
  --button-background-color: var(--e-app-back-button-color, #a4afb7);
  margin-bottom: 1.5rem; }
  .back-button .eps-icon, .e-app-back-button .eps-icon {
    -webkit-margin-end: 0.3125rem;
            margin-inline-end: 0.3125rem; }

.eps-theme-dark {
  --input-border-color: --hr-color; }

.eps-input {
  border: 1px solid var(--hr-color);
  -webkit-border-radius: 0.1875rem;
          border-radius: 0.1875rem;
  background: transparent;
  color: inherit;
  height: 1.875rem;
  padding: 0 0.3125rem; }
  .eps-input--block {
    width: 100%; }

.eps-app {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100vh;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  color: var(--body-color);
  background-color: var(--app-background-color);
  position: absolute;
  -webkit-border-radius: 0;
          border-radius: 0;
  -webkit-box-shadow: 2px 8px 23px 3px var(--color-box-shadow-color);
          box-shadow: 2px 8px 23px 3px var(--color-box-shadow-color);
  overflow: hidden;
  font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
  width: 100%;
  max-width: 100%; }
  .eps-app__lightbox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: fixed;
    height: 100%;
    width: 100%;
    background-color: var(--app-lightbox-background-color);
    z-index: 1040;
    bottom: 0;
    left: 0; }
  .eps-app__header {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    font-size: 0.9375rem;
    color: var(--app-header-color);
    background-color: var(--app-header-background-color);
    -webkit-box-shadow: 0 4px 10px var(--color-box-shadow-color);
            box-shadow: 0 4px 10px var(--color-box-shadow-color);
    position: relative;
    z-index: 3;
    height: 3.125rem;
    padding: 0 1rem; }
  .eps-app__header-buttons {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    font-size: 1.125rem; }
  .eps-app__header-btn {
    --button-background-color: var(--app-header-buttons-color);
    -webkit-padding-start: 1rem;
            padding-inline-start: 1rem;
    font-size: 1.125rem;
    line-height: 1.25rem; }
    .eps-app__header-btn:first-child {
      -webkit-border-start: 1px solid var(--app-header-buttons-separator-color);
              border-inline-start: 1px solid var(--app-header-buttons-separator-color); }
    .eps-app__header-btn:not(:first-child) {
      -webkit-padding-end: 1rem;
              padding-inline-end: 1rem; }
  .eps-app__logo-title-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .eps-app__logo {
    display: block;
    width: 1.75rem;
    height: 1.75rem;
    line-height: 1.75rem;
    text-align: center;
    font-size: calc(0.4 * 1.75rem);
    -webkit-border-radius: 50%;
            border-radius: 50%;
    color: #fff;
    background-color: #93003F; }
    .eps-app__logo:not(:last-child) {
      -webkit-margin-end: 0.625rem;
              margin-inline-end: 0.625rem; }
  .eps-app__title {
    font-size: 0.9375rem;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 0; }
  .eps-app__main {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }
  .eps-app__sidebar {
    background-color: var(--app-sidebar-background-color);
    padding-top: 1.25rem;
    width: 30%;
    max-width: 17.1875rem;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    overflow-y: auto;
    -webkit-box-shadow: 2px 8px 23px 3px var(--color-box-shadow-color);
            box-shadow: 2px 8px 23px 3px var(--color-box-shadow-color);
    z-index: 4; }
  .eps-app__content {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    position: relative;
    padding: 2.75rem;
    height: 100%;
    overflow-y: auto; }

.e-app-upload-file__input {
  display: none; }

.e-app-drop-zone {
  --e-app-drop-zone-icon-color: #c2cbd2;
  --e-app-drop-zone-text-color: #a4afb7;
  --e-app-drop-zone-secondary-text-color: #6d7882; }
  .e-app-drop-zone__icon {
    margin-bottom: 2.75rem;
    color: var(--e-app-drop-zone-icon-color);
    font-size: 60px; }
  .e-app-drop-zone__text {
    color: var(--e-app-drop-zone-text-color); }
  .e-app-drop-zone__secondary-text {
    color: var(--e-app-drop-zone-secondary-text-color); }

.eps-theme-dark .e-app-drop-zone {
  --e-app-drop-zone-icon-color: #c2cbd2;
  --e-app-drop-zone-text-color: #b4b5b7;
  --e-app-drop-zone-secondary-text-color: #e0e1e3; }

:root {
  --info-toggle-color: #d5dadf;
  --info-toggle-hover-color: #a4afb7; }

.eps-theme-dark {
  --placeholder-filter: invert(0.8) sepia(1) saturate(0.2) hue-rotate(180deg) contrast(1.25) brightness(1.2);
  --info-toggle-color: #64666a;
  --info-toggle-hover-color: #b4b5b7; }

.e-site-part .eps-card__image {
  -webkit-filter: var(--placeholder-filter, none);
          filter: var(--placeholder-filter, none); }

.e-site-part__info-toggle {
  color: var(--info-toggle-color); }
  .e-site-part__info-toggle:hover {
    --info-toggle-color: var(--info-toggle-hover-color); }

.e-site-editor__header {
  margin-bottom: 2.75rem;
  border-bottom: 1px solid var(--hr-color); }

:root {
  --e-elementor-loader-container-background-color: #f1f3f5;
  --e-elementor-loader-background-color: rgba(255, 255, 255, 0.9); }

.eps-theme-dark {
  --e-elementor-loader-container-background-color: #34383c;
  --e-elementor-loader-background-color: #4c4f56; }

.elementor-loading {
  background-color: var(--e-elementor-loader-container-background-color);
  height: 100vh; }

.elementor-loader-wrapper {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 300px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.elementor-loader {
  -webkit-border-radius: 50%;
          border-radius: 50%;
  padding: 40px;
  height: 150px;
  width: 150px;
  background-color: var(--e-elementor-loader-background-color);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-box-shadow: 2px 2px 20px 4px rgba(0, 0, 0, 0.02);
          box-shadow: 2px 2px 20px 4px rgba(0, 0, 0, 0.02); }

.elementor-loader-boxes {
  height: 100%;
  width: 100%;
  position: relative; }

.elementor-loader-box {
  position: absolute;
  background-color: #d5dadf;
  -webkit-animation: load 1.8s linear infinite;
          animation: load 1.8s linear infinite; }
  .elementor-loader-box:nth-of-type(1) {
    width: 20%;
    height: 100%;
    left: 0;
    top: 0; }
  .elementor-loader-box:not(:nth-of-type(1)) {
    right: 0;
    height: 20%;
    width: 60%; }
  .elementor-loader-box:nth-of-type(2) {
    top: 0;
    -webkit-animation-delay: -0.45s;
            animation-delay: -0.45s; }
  .elementor-loader-box:nth-of-type(3) {
    top: 40%;
    -webkit-animation-delay: -0.9s;
            animation-delay: -0.9s; }
  .elementor-loader-box:nth-of-type(4) {
    bottom: 0;
    -webkit-animation-delay: -1.35s;
            animation-delay: -1.35s; }

.elementor-loading-title {
  color: #a4afb7;
  text-align: center;
  text-transform: uppercase;
  margin-top: 30px;
  letter-spacing: 7px;
  text-indent: 7px;
  font-size: 10px;
  width: 100%; }

@-webkit-keyframes load {
  0% {
    opacity: .3; }
  50% {
    opacity: 1; }
  100% {
    opacity: .3; } }

@keyframes load {
  0% {
    opacity: .3; }
  50% {
    opacity: 1; }
  100% {
    opacity: .3; } }

.eps-menu__title {
  margin-top: 2.75rem;
  margin-bottom: 1rem; }

.e-app-import {
  --e-app-import-back-to-library-color: #a4afb7; }
  .e-app-import__drop-zone {
    margin-top: 1.25rem; }
  .e-app-import__back-to-library {
    color: var(--e-app-import-back-to-library-color);
    margin-bottom: 1.5rem; }
    .e-app-import__back-to-library > i {
      -webkit-margin-end: 0.5rem;
              margin-inline-end: 0.5rem; }

.eps-theme-dark .e-app-import {
  --e-app-import-back-to-library-color: #b4b5b7; }

.e-site-editor__promotion-overlay__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 100%;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  text-decoration: none; }

.e-site-editor__promotion-overlay__icon {
  font-size: 1.25rem;
  color: #fff;
  margin-bottom: 1rem; }

.e-app-import-export-wizard-step {
  --e-app-import-export-wizard-step-icon-color: #c2cbd2;
  --e-app-import-export-wizard-step-text-color: #a4afb7;
  --e-app-import-export-wizard-step-bottom-text-color: #a4afb7;
  height: 100%;
  position: relative;
  text-align: center; }
  .e-app-import-export-wizard-step__media-container {
    height: 140px;
    margin: 5.5rem 0 2.75rem; }
  .e-app-import-export-wizard-step__icon {
    color: var(--e-app-import-export-wizard-step-icon-color);
    font-size: 50px; }
    .e-app-import-export-wizard-step__icon.eicon-loading {
      font-size: 1.85rem; }
  .e-app-import-export-wizard-step__heading {
    margin-bottom: 1.5rem; }
  .e-app-import-export-wizard-step__description {
    color: var(--e-app-import-export-wizard-step-text-color); }
  .e-app-import-export-wizard-step__content {
    text-align: initial;
    margin-bottom: 1.25rem; }
  .e-app-import-export-wizard-step__notice {
    display: block;
    position: -webkit-sticky;
    position: sticky;
    top: 100%;
    /* Will prevent text overlapping when window height is too short. */
    color: var(--e-app-import-export-wizard-step-bottom-text-color);
    font-style: italic;
    margin-bottom: 0; }

.eps-theme-dark .e-app-import-export-wizard-step {
  --e-app-import-export-wizard-step-icon-color: #64666a;
  --e-app-import-export-wizard-step-text-color: #b4b5b7;
  --e-app-import-export-wizard-step-bottom-text-color: #b4b5b7; }

.e-app-import-export-page-header {
  --e-app-import-export-page-header-border-bottom-color: #d5dadf;
  --e-app-import-export-page-header-heading-color: #6d7882;
  --e-app-import-export-page-header-description-color: #a4afb7;
  border-bottom: 1px solid var(--e-app-import-export-page-header-border-bottom-color);
  margin-bottom: 2.75rem; }
  .e-app-import-export-page-header__content-wrapper {
    max-width: 645px; }
  .e-app-import-export-page-header__heading {
    color: var(--e-app-import-export-page-header-heading-color); }
  .e-app-import-export-page-header__description {
    color: var(--e-app-import-export-page-header-description-color);
    margin-top: 1.25rem; }

.eps-theme-dark .e-app-import-export-page-header {
  --e-app-import-export-page-header-border-bottom-color: #4c4f56;
  --e-app-import-export-page-header-heading-color: #e0e1e3;
  --e-app-import-export-page-header-description-color: #e0e1e3; }

.e-app-export-kit-content {
  --e-app-export-kit-content-title-color: #556068;
  --e-app-export-kit-content-description-color: #6d7882; }
  .e-app-export-kit-content__checkbox {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -webkit-margin-end: 0.75rem;
            margin-inline-end: 0.75rem; }
  .e-app-export-kit-content__title {
    color: var(--e-app-export-kit-content-title-color); }
  .e-app-export-kit-content__description {
    color: var(--e-app-export-kit-content-description-color);
    -webkit-margin-end: 1.25rem;
            margin-inline-end: 1.25rem; }
  .e-app-export-kit-content__notice {
    margin-top: 1rem; }

.eps-theme-dark .e-app-export-kit-content {
  --e-app-export-kit-content-title-color: #e0e1e3;
  --e-app-export-kit-content-description-color: #b4b5b7; }

.e-app-wizard-footer {
  --e-app-wizard-footer-border-color: #d5dadf;
  padding: 0.5rem; }
  .e-app-wizard-footer__separator {
    border-top: 1px solid var(--e-app-wizard-footer-border-color); }

.eps-theme-dark .e-app-wizard-footer {
  --e-app-wizard-footer-border-color: #4c4f56; }

.e-app-export-templates-features__locked {
  --e-app-export-templates-features-locked-color: #a4afb7;
  color: var(--e-app-export-templates-features-locked-color); }

.eps-theme-dark .e-app-export-templates-features__locked {
  --e-app-export-templates-features-locked-color: #7d7e82; }

:root {
  --color-box-shadow-color: rgba(0, 0, 0, 0.05); }

.eps-theme-dark {
  --color-box-shadow-color: rgba(0, 0, 0, 0.1); }

:root {
  --card-background-color: rgba(255, 255, 255, 0.5);
  --card-background-color-hover: #fff;
  --card-box-shadow: 0 4px 10px var(--color-box-shadow-color);
  --card-header-footer-border: 1px solid #f1f3f5;
  --card-header-footer-active-border: 2px solid #e2e6ea;
  --card-headline-color: #6d7882;
  --card-figure-background-color: #f1f3f5;
  --card-image-overlay-background-color: rgba(0, 0, 0, 0.2); }

.eps-theme-dark {
  --card-background-color: #404349;
  --card-background-color-hover: rgba(76, 79, 86, 0.8);
  --card-box-shadow: 0 3px 6px var(--color-box-shadow-color);
  --card-header-footer-border: 1px solid #34383c;
  --card-header-footer-active-border: 1px solid #26292C;
  --card-headline-color: #e0e1e3;
  --card-figure-background-color: #34383c;
  --card-image-overlay-background-color: rgba(52, 56, 60, 0.5); }

.eps-card {
  background-color: var(--card-background-color);
  -webkit-box-shadow: 0 4px 10px var(--color-box-shadow-color);
          box-shadow: 0 4px 10px var(--color-box-shadow-color);
  -webkit-border-radius: 0.1875rem;
          border-radius: 0.1875rem;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
  font-size: 0.75rem;
  /*
	 todo: TBD: Optionally remove headline styling in favor of a global atom depending on variation needs
	*/ }
  .eps-card__header {
    padding: 0.625rem;
    border-bottom: var(--card-header-footer-border);
    min-height: 2.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .eps-card__header--padding {
      padding: var(--eps-card-header-padding); }
  .eps-card__headline {
    color: var(--card-headline-color);
    margin-bottom: 0;
    font-weight: 500;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    overflow: hidden;
    -o-text-overflow: ellipsis;
       text-overflow: ellipsis;
    white-space: nowrap; }
  .eps-card__body {
    padding: 0.625rem 0.625rem; }
    .eps-card__body--padding {
      padding: var(--eps-card-body-padding); }
  .eps-card__figure {
    background-color: var(--card-figure-background-color);
    position: relative;
    padding-bottom: var(--card-image-aspect-ratio, 95.6%);
    overflow: hidden;
    height: 0; }
  .eps-card__image {
    width: 100%;
    -o-object-fit: contain;
       object-fit: contain;
    -o-object-position: top;
       object-position: top;
    position: absolute;
    top: 0;
    left: 0; }
  .eps-card__image-overlay {
    position: absolute;
    top: 0;
    background-color: var(--card-image-overlay-background-color);
    z-index: 1;
    width: 100%;
    height: 100%;
    opacity: 0;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s; }
    .eps-card__image-overlay:hover {
      opacity: 1; }
  .eps-card__footer {
    padding: 0.625rem;
    border-top: var(--card-header-footer-border);
    font-size: 0.6875rem; }
    .eps-card__footer--padding {
      padding: var(--eps-card-footer-padding); }
  .eps-card:hover {
    background-color: var(--card-background-color-hover); }

:root {
  --menu-item-color: #6d7882;
  --menu-item-color-hover: #556068;
  --menu-item-background-color-active: #fff;
  --menu-item-icon-color: #a4afb7;
  --menu-item-action-button-color: #d5dadf; }

.eps-theme-dark {
  --menu-item-color: #e0e1e3;
  --menu-item-color-hover: #e0e1e3;
  --menu-item-background-color-active: #404349;
  --menu-item-icon-color: #b4b5b7;
  --menu-item-action-button-color: #64666a; }

.eps-menu-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
  --action-button-opacity: 0; }
  .eps-menu-item::before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    inset-inline-start: 0;
    height: 100%;
    width: var(--menu-item-pointer-width);
    background-color: #58d0f5; }
  .eps-menu-item:hover {
    --action-button-opacity: 1; }
  .eps-menu-item:hover, .eps-menu-item--active {
    --menu-item-color: var(--menu-item-color-hover);
    --eps-link-color: var(--menu-item-color-hover);
    --menu-item-icon-color: #58d0f5; }
  .eps-menu-item--active {
    background-color: var(--menu-item-background-color-active); }
  .eps-menu-item__link {
    padding: 0.5rem 1.875rem;
    min-height: 2.75rem;
    font-size: 0.75rem;
    line-height: 1.2;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    color: var(--menu-item-color);
    --eps-link-color: var(--menu-item-color); }
    .eps-menu-item__link:not(:last-child) {
      -webkit-padding-end: 0;
              padding-inline-end: 0; }
    .eps-menu-item__link .eps-icon {
      font-size: 1.125rem;
      color: var(--menu-item-icon-color);
      -webkit-margin-end: 0.75rem;
              margin-inline-end: 0.75rem; }
  .eps-menu-item__action-button {
    color: var(--menu-item-action-button-color);
    opacity: var(--action-button-opacity);
    padding: 0.625rem;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    -webkit-margin-end: 1.25rem;
            margin-inline-end: 1.25rem; }
  .eps-menu-item--active {
    --menu-item-pointer-width: 0.3125rem;
    -webkit-box-shadow: 0 3px 6px var(--color-box-shadow-color);
            box-shadow: 0 3px 6px var(--color-box-shadow-color); }
    .eps-menu-item--active .eps-menu-item__link .eps-icon {
      color: #58d0f5; }

.eps-grid-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%; }
  .eps-grid-container--no-wrap {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap; }
  .eps-grid-container--wrap-reverse {
    -ms-flex-wrap: wrap-reverse;
        flex-wrap: wrap-reverse; }
  .eps-grid-container--spacing {
    --grid-row-gutter: calc(-1 * calc( var(--grid-spacing-gutter) * 0.0625rem));
    width: var(--grid-spacing-width);
    margin: var(--grid-row-gutter); }
    .eps-grid-container--spacing > .eps-grid-item {
      padding: var(--grid-spacing-gutter); }

.eps-grid--direction-row {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row; }
  .eps-grid--direction-row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }

.eps-grid--direction-column {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }
  .eps-grid--direction-column-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; }

.eps-grid--justify-stretch {
  -webkit-box-pack: stretch;
      -ms-flex-pack: stretch;
          justify-content: stretch; }

.eps-grid--justify-start {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start; }

.eps-grid--justify-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.eps-grid--justify-end {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.eps-grid--justify-space-between {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }

.eps-grid--justify-space-around {
  -ms-flex-pack: distribute;
      justify-content: space-around; }

.eps-grid--justify-space-evenly {
  -webkit-box-pack: space-evenly;
      -ms-flex-pack: space-evenly;
          justify-content: space-evenly; }

.eps-grid--align-content-stretch {
  -ms-flex-line-pack: stretch;
      align-content: stretch; }

.eps-grid--align-content-start {
  -ms-flex-line-pack: start;
      align-content: flex-start; }

.eps-grid--align-content-center {
  -ms-flex-line-pack: center;
      align-content: center; }

.eps-grid--align-content-end {
  -ms-flex-line-pack: end;
      align-content: flex-end; }

.eps-grid--align-content-space-between {
  -ms-flex-line-pack: justify;
      align-content: space-between; }

.eps-grid--align-items-start {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; }

.eps-grid--align-items-center {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.eps-grid--align-items-end {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end; }

.eps-grid--align-items-baseline {
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline; }

.eps-grid--align-items-stretch {
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch; }

.eps-grid-item--zero-min-width {
  min-width: 0; }

@media screen and (min-width: 480px) {
  .eps-grid-item-sm {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    max-width: 100%;
    -ms-flex-preferred-size: 0;
        flex-basis: 0; } }

@media screen and (min-width: 768px) {
  .eps-grid-item-md {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    max-width: 100%;
    -ms-flex-preferred-size: 0;
        flex-basis: 0; } }

@media screen and (min-width: 1025px) {
  .eps-grid-item-lg {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    max-width: 100%;
    -ms-flex-preferred-size: 0;
        flex-basis: 0; } }

@media screen and (min-width: 1440px) {
  .eps-grid-item-xl {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    max-width: 100%;
    -ms-flex-preferred-size: 0;
        flex-basis: 0; } }

@media screen and (min-width: 1600px) {
  .eps-grid-item-xxl {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    max-width: 100%;
    -ms-flex-preferred-size: 0;
        flex-basis: 0; } }

.eps-grid-item-xs-1 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  max-width: 8.3333333333%;
  -ms-flex-preferred-size: 8.3333333333%;
      flex-basis: 8.3333333333%; }

.eps-grid-item-xs-2 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  max-width: 16.6666666667%;
  -ms-flex-preferred-size: 16.6666666667%;
      flex-basis: 16.6666666667%; }

.eps-grid-item-xs-3 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  max-width: 25%;
  -ms-flex-preferred-size: 25%;
      flex-basis: 25%; }

.eps-grid-item-xs-4 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  max-width: 33.3333333333%;
  -ms-flex-preferred-size: 33.3333333333%;
      flex-basis: 33.3333333333%; }

.eps-grid-item-xs-5 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  max-width: 41.6666666667%;
  -ms-flex-preferred-size: 41.6666666667%;
      flex-basis: 41.6666666667%; }

.eps-grid-item-xs-6 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  max-width: 50%;
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%; }

.eps-grid-item-xs-7 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  max-width: 58.3333333333%;
  -ms-flex-preferred-size: 58.3333333333%;
      flex-basis: 58.3333333333%; }

.eps-grid-item-xs-8 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  max-width: 66.6666666667%;
  -ms-flex-preferred-size: 66.6666666667%;
      flex-basis: 66.6666666667%; }

.eps-grid-item-xs-9 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  max-width: 75%;
  -ms-flex-preferred-size: 75%;
      flex-basis: 75%; }

.eps-grid-item-xs-10 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  max-width: 83.3333333333%;
  -ms-flex-preferred-size: 83.3333333333%;
      flex-basis: 83.3333333333%; }

.eps-grid-item-xs-11 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  max-width: 91.6666666667%;
  -ms-flex-preferred-size: 91.6666666667%;
      flex-basis: 91.6666666667%; }

.eps-grid-item-xs-12 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  max-width: 100%;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%; }

@media screen and (min-width: 480px) {
  .eps-grid-item-sm-1 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 8.3333333333%;
    -ms-flex-preferred-size: 8.3333333333%;
        flex-basis: 8.3333333333%; }
  .eps-grid-item-sm-2 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 16.6666666667%;
    -ms-flex-preferred-size: 16.6666666667%;
        flex-basis: 16.6666666667%; }
  .eps-grid-item-sm-3 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 25%;
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%; }
  .eps-grid-item-sm-4 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 33.3333333333%;
    -ms-flex-preferred-size: 33.3333333333%;
        flex-basis: 33.3333333333%; }
  .eps-grid-item-sm-5 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 41.6666666667%;
    -ms-flex-preferred-size: 41.6666666667%;
        flex-basis: 41.6666666667%; }
  .eps-grid-item-sm-6 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 50%;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%; }
  .eps-grid-item-sm-7 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 58.3333333333%;
    -ms-flex-preferred-size: 58.3333333333%;
        flex-basis: 58.3333333333%; }
  .eps-grid-item-sm-8 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 66.6666666667%;
    -ms-flex-preferred-size: 66.6666666667%;
        flex-basis: 66.6666666667%; }
  .eps-grid-item-sm-9 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 75%;
    -ms-flex-preferred-size: 75%;
        flex-basis: 75%; }
  .eps-grid-item-sm-10 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 83.3333333333%;
    -ms-flex-preferred-size: 83.3333333333%;
        flex-basis: 83.3333333333%; }
  .eps-grid-item-sm-11 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 91.6666666667%;
    -ms-flex-preferred-size: 91.6666666667%;
        flex-basis: 91.6666666667%; }
  .eps-grid-item-sm-12 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 100%;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%; } }

@media screen and (min-width: 768px) {
  .eps-grid-item-md-1 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 8.3333333333%;
    -ms-flex-preferred-size: 8.3333333333%;
        flex-basis: 8.3333333333%; }
  .eps-grid-item-md-2 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 16.6666666667%;
    -ms-flex-preferred-size: 16.6666666667%;
        flex-basis: 16.6666666667%; }
  .eps-grid-item-md-3 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 25%;
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%; }
  .eps-grid-item-md-4 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 33.3333333333%;
    -ms-flex-preferred-size: 33.3333333333%;
        flex-basis: 33.3333333333%; }
  .eps-grid-item-md-5 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 41.6666666667%;
    -ms-flex-preferred-size: 41.6666666667%;
        flex-basis: 41.6666666667%; }
  .eps-grid-item-md-6 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 50%;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%; }
  .eps-grid-item-md-7 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 58.3333333333%;
    -ms-flex-preferred-size: 58.3333333333%;
        flex-basis: 58.3333333333%; }
  .eps-grid-item-md-8 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 66.6666666667%;
    -ms-flex-preferred-size: 66.6666666667%;
        flex-basis: 66.6666666667%; }
  .eps-grid-item-md-9 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 75%;
    -ms-flex-preferred-size: 75%;
        flex-basis: 75%; }
  .eps-grid-item-md-10 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 83.3333333333%;
    -ms-flex-preferred-size: 83.3333333333%;
        flex-basis: 83.3333333333%; }
  .eps-grid-item-md-11 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 91.6666666667%;
    -ms-flex-preferred-size: 91.6666666667%;
        flex-basis: 91.6666666667%; }
  .eps-grid-item-md-12 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 100%;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%; } }

@media screen and (min-width: 1025px) {
  .eps-grid-item-lg-1 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 8.3333333333%;
    -ms-flex-preferred-size: 8.3333333333%;
        flex-basis: 8.3333333333%; }
  .eps-grid-item-lg-2 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 16.6666666667%;
    -ms-flex-preferred-size: 16.6666666667%;
        flex-basis: 16.6666666667%; }
  .eps-grid-item-lg-3 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 25%;
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%; }
  .eps-grid-item-lg-4 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 33.3333333333%;
    -ms-flex-preferred-size: 33.3333333333%;
        flex-basis: 33.3333333333%; }
  .eps-grid-item-lg-5 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 41.6666666667%;
    -ms-flex-preferred-size: 41.6666666667%;
        flex-basis: 41.6666666667%; }
  .eps-grid-item-lg-6 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 50%;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%; }
  .eps-grid-item-lg-7 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 58.3333333333%;
    -ms-flex-preferred-size: 58.3333333333%;
        flex-basis: 58.3333333333%; }
  .eps-grid-item-lg-8 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 66.6666666667%;
    -ms-flex-preferred-size: 66.6666666667%;
        flex-basis: 66.6666666667%; }
  .eps-grid-item-lg-9 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 75%;
    -ms-flex-preferred-size: 75%;
        flex-basis: 75%; }
  .eps-grid-item-lg-10 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 83.3333333333%;
    -ms-flex-preferred-size: 83.3333333333%;
        flex-basis: 83.3333333333%; }
  .eps-grid-item-lg-11 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 91.6666666667%;
    -ms-flex-preferred-size: 91.6666666667%;
        flex-basis: 91.6666666667%; }
  .eps-grid-item-lg-12 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 100%;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%; } }

@media screen and (min-width: 1440px) {
  .eps-grid-item-xl-1 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 8.3333333333%;
    -ms-flex-preferred-size: 8.3333333333%;
        flex-basis: 8.3333333333%; }
  .eps-grid-item-xl-2 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 16.6666666667%;
    -ms-flex-preferred-size: 16.6666666667%;
        flex-basis: 16.6666666667%; }
  .eps-grid-item-xl-3 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 25%;
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%; }
  .eps-grid-item-xl-4 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 33.3333333333%;
    -ms-flex-preferred-size: 33.3333333333%;
        flex-basis: 33.3333333333%; }
  .eps-grid-item-xl-5 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 41.6666666667%;
    -ms-flex-preferred-size: 41.6666666667%;
        flex-basis: 41.6666666667%; }
  .eps-grid-item-xl-6 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 50%;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%; }
  .eps-grid-item-xl-7 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 58.3333333333%;
    -ms-flex-preferred-size: 58.3333333333%;
        flex-basis: 58.3333333333%; }
  .eps-grid-item-xl-8 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 66.6666666667%;
    -ms-flex-preferred-size: 66.6666666667%;
        flex-basis: 66.6666666667%; }
  .eps-grid-item-xl-9 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 75%;
    -ms-flex-preferred-size: 75%;
        flex-basis: 75%; }
  .eps-grid-item-xl-10 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 83.3333333333%;
    -ms-flex-preferred-size: 83.3333333333%;
        flex-basis: 83.3333333333%; }
  .eps-grid-item-xl-11 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 91.6666666667%;
    -ms-flex-preferred-size: 91.6666666667%;
        flex-basis: 91.6666666667%; }
  .eps-grid-item-xl-12 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 100%;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%; } }

@media screen and (min-width: 1600px) {
  .eps-grid-item-xxl-1 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 8.3333333333%;
    -ms-flex-preferred-size: 8.3333333333%;
        flex-basis: 8.3333333333%; }
  .eps-grid-item-xxl-2 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 16.6666666667%;
    -ms-flex-preferred-size: 16.6666666667%;
        flex-basis: 16.6666666667%; }
  .eps-grid-item-xxl-3 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 25%;
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%; }
  .eps-grid-item-xxl-4 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 33.3333333333%;
    -ms-flex-preferred-size: 33.3333333333%;
        flex-basis: 33.3333333333%; }
  .eps-grid-item-xxl-5 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 41.6666666667%;
    -ms-flex-preferred-size: 41.6666666667%;
        flex-basis: 41.6666666667%; }
  .eps-grid-item-xxl-6 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 50%;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%; }
  .eps-grid-item-xxl-7 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 58.3333333333%;
    -ms-flex-preferred-size: 58.3333333333%;
        flex-basis: 58.3333333333%; }
  .eps-grid-item-xxl-8 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 66.6666666667%;
    -ms-flex-preferred-size: 66.6666666667%;
        flex-basis: 66.6666666667%; }
  .eps-grid-item-xxl-9 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 75%;
    -ms-flex-preferred-size: 75%;
        flex-basis: 75%; }
  .eps-grid-item-xxl-10 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 83.3333333333%;
    -ms-flex-preferred-size: 83.3333333333%;
        flex-basis: 83.3333333333%; }
  .eps-grid-item-xxl-11 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 91.6666666667%;
    -ms-flex-preferred-size: 91.6666666667%;
        flex-basis: 91.6666666667%; }
  .eps-grid-item-xxl-12 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 100%;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%; } }

:root {
  --menu-title-color: #6d7882; }

.eps-theme-dark {
  --menu-title-color: #6d7882; }

.eps-menu ul {
  list-style: none;
  padding: 0;
  margin: 0; }
  .eps-menu ul li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }

.eps-menu__title {
  padding: 0.5rem 1.875rem;
  font-size: 0.6875rem;
  line-height: 1.2;
  text-transform: uppercase;
  font-weight: normal;
  color: var(--menu-title-color); }

:root {
  --eps-modal-background-color: #fff;
  --eps-modal-header-background-color: #58d0f5; }

.eps-theme-dark {
  --eps-modal-background-color: #34383c;
  --eps-modal-header-background-color: #58d0f5; }

/** ----------------------------------------------------------------
	EPS Modal
---------------------------------------------------------------- */
.eps-modal {
  max-width: 43.75rem;
  background: var(--eps-modal-background-color);
  -webkit-border-radius: 0.1875rem;
          border-radius: 0.1875rem;
  -webkit-animation: eps-animation-pop 0.15s cubic-bezier(0.57, 0.53, 0.71, 1.47) forwards;
          animation: eps-animation-pop 0.15s cubic-bezier(0.57, 0.53, 0.71, 1.47) forwards; }
  .eps-modal__overlay {
    background: rgba(0, 0, 0, 0.5);
    position: fixed;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    z-index: 1030; }
  .eps-modal__header {
    font-size: 0.875rem;
    background: var(--eps-modal-header-background-color);
    height: 2.75rem;
    padding: 0.625rem 1rem;
    -webkit-border-radius: 0.1875rem;
            border-radius: 0.1875rem; }
    .eps-modal__header,
    .eps-modal__header .title {
      color: #fff; }
  .eps-modal__icon {
    -webkit-margin-end: 0.625rem;
            margin-inline-end: 0.625rem; }
  .eps-modal__body {
    padding: 1.875rem; }
  .eps-modal__tip, .eps-modal .eps-tip {
    -webkit-padding-start: 0.75rem;
            padding-inline-start: 0.75rem;
    -webkit-border-start: 3px solid #58d0f5;
            border-inline-start: 3px solid #58d0f5; }
    .eps-modal__tip:not(:last-child), .eps-modal .eps-tip:not(:last-child) {
      margin-bottom: 1.875rem; }
    .eps-modal__tip:not(:first-child), .eps-modal .eps-tip:not(:first-child) {
      margin-top: 1.875rem; }
  .eps-modal__section:not(:first-child) {
    margin-top: 1.875rem; }
  .eps-modal__close-wrapper {
    -webkit-padding-start: 1rem;
            padding-inline-start: 1rem;
    -webkit-border-start: solid 1px #fff;
            border-inline-start: solid 1px #fff; }

.eps-add-new-button {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  --eps-add-new-button-size: 1.5rem;
  line-height: var(--eps-add-new-button-size);
  cursor: pointer; }
  .eps-add-new-button .eps-icon {
    background-color: #58d0f5;
    color: #fff;
    width: var(--eps-add-new-button-size);
    height: var(--eps-add-new-button-size);
    -webkit-border-radius: 100%;
            border-radius: 100%;
    font-size: calc(var(--eps-add-new-button-size) * 0.75);
    text-align: center;
    line-height: var(--eps-add-new-button-size); }
  .eps-add-new-button span:not(.sr-only) {
    -webkit-margin-start: 0.625rem;
            margin-inline-start: 0.625rem;
    font-weight: 500; }
  .eps-add-new-button--sm {
    --eps-add-new-button-size: 1rem; }

:root {
  --select2-selection-background-color: #fff;
  --select2-selection-color: #6d7882;
  --select2-selection-border-color: #d5dadf;
  --select2-selection-opened-focused-border-color: #f1f3f5;
  --select2-single-selection-rendered-color: #6d7882;
  --select2-default-single-selection-background-color: #fff;
  --select2-default-single-selection-border-color: #d5dadf;
  --select2-default-multiple-selection-background-color: #fff;
  --select2-default-multiple-selection-choice-background-color: #f1f3f5;
  --select2-default-multiple-selection-choice-color: #6d7882;
  --select2-default-multiple-selection-choice-border-color: #f1f3f5;
  --select2-default-multiple-selection-choice-remove-color: #a4afb7;
  --select2-default-multiple-selection-choice-remove-hover-color: #6d7882;
  --select2-default-results-selected-option-background-color: #fff;
  --select2-default-results-selected-option-color: #6d7882;
  --select2-default-results-highlighted-option-background-color: #5897fb;
  --select2-default-results-highlighted-option-color: #fff;
  --select2-results-selected-option-background-color: #5897fb;
  --select2-results-selected-option-color: #fff;
  --select2-dropdown-background-color: #fff;
  --select2-dropdown-border-color: #d5dadf; }

.eps-theme-dark {
  --select2-selection-background-color: #34383c;
  --select2-selection-color: #e0e1e3;
  --select2-selection-border-color: #64666a;
  --select2-selection-opened-focused-border-color: #7d7e82;
  --select2-single-selection-rendered-color: #e0e1e3;
  --select2-default-single-selection-background-color: #34383c;
  --select2-default-single-selection-border-color: #4c4f56;
  --select2-default-multiple-selection-background-color: #34383c;
  --select2-default-multiple-selection-choice-background-color: #4c4f56;
  --select2-default-multiple-selection-choice-color: #e0e1e3;
  --select2-default-multiple-selection-choice-border-color: #4c4f56;
  --select2-default-multiple-selection-choice-remove-color: #b4b5b7;
  --select2-default-multiple-selection-choice-remove-hover-color: #e0e1e3;
  --select2-default-results-selected-option-background-color: #34383c;
  --select2-default-results-selected-option-color: #e0e1e3;
  --select2-default-results-highlighted-option-background-color: #4c4f56;
  --select2-default-results-highlighted-option-color: #e0e1e3;
  --select2-results-selected-option-background-color: #4c4f56;
  --select2-results-selected-option-color: #e0e1e3;
  --select2-dropdown-background-color: #34383c;
  --select2-dropdown-border-color: #64666a; }

.select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--single,
.select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--multiple {
  background-color: var(--select2-selection-background-color);
  color: var(--select2-selection-color);
  border-color: var(--select2-selection-border-color); }

.select2-container.select2-container--open .select2-selection--single,
.select2-container.select2-container--open .select2-selection--multiple, .select2-container.select2-container--focus .select2-selection--single,
.select2-container.select2-container--focus .select2-selection--multiple {
  border-color: var(--select2-selection-opened-focused-border-color); }

.select2-container.select2-container--default .select2-selection--single .select2-selection__rendered {
  color: var(--select2-single-selection-rendered-color); }

.select2-container--default .select2-selection--single {
  background-color: var(--select2-default-single-selection-background-color);
  border-color: var(--select2-default-single-selection-border-color); }

.select2-container--default .select2-selection--multiple {
  background-color: var(--select2-default-multiple-selection-background-color); }
  .select2-container--default .select2-selection--multiple .select2-selection__choice {
    background-color: var(--select2-default-multiple-selection-choice-background-color);
    color: var(--select2-default-multiple-selection-choice-color);
    border-color: var(--select2-default-multiple-selection-choice-border-color); }
    .select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
      color: var(--select2-default-multiple-selection-choice-remove-color); }
      .select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover {
        color: var(--select2-default-multiple-selection-choice-remove-hover-color); }

.select2-container--default .select2-results__option[aria-selected] {
  background-color: var(--select2-default-results-selected-option-background-color);
  color: var(--select2-default-results-selected-option-color); }

.select2-container--default .select2-results__option--highlighted[aria-selected] {
  background-color: var(--select2-default-results-highlighted-option-background-color);
  color: var(--select2-default-results-highlighted-option-color); }

.select2-container .select2-results__option[aria-selected=true] {
  background-color: var(--select2-results-selected-option-background-color);
  color: var(--select2-results-selected-option-color); }

.select2-container .select2-dropdown {
  background-color: var(--select2-dropdown-background-color);
  border-color: var(--select2-dropdown-border-color); }

.eps-notice {
  --eps-box-notice-color: #a4afb7;
  --eps-box-notice-background-color: #fcfcfc;
  padding: 0.625rem 1rem;
  -webkit-box-shadow: 0 2px 3px 1px var(--color-box-shadow-color);
          box-shadow: 0 2px 3px 1px var(--color-box-shadow-color);
  background-color: var(--eps-box-notice-background-color); }
  .eps-notice--warning {
    -webkit-border-start: 3px solid #fcb92c;
            border-inline-start: 3px solid #fcb92c; }
  .eps-notice__text {
    margin: 0;
    padding: 0;
    color: var(--eps-box-notice-color);
    font-style: italic; }

.eps-theme-dark .eps-notice {
  --eps-box-notice-color: #b4b5b7;
  --eps-box-notice-background-color: #404349; }

.eps-list {
  --eps-list-item-separated-border-color: #f1f3f5;
  padding: 0;
  margin: 0;
  list-style-type: none; }
  .eps-list--padding {
    padding: var(--eps-list-padding); }
  .eps-list__item {
    padding: 0; }
    .eps-list__item--padding {
      padding: var(--eps-list-item-padding); }
  .eps-list--separated .eps-list__item:not(:last-child) {
    border-bottom: 1px solid var(--eps-list-item-separated-border-color); }

.eps-theme-dark .eps-list {
  --eps-list-item-separated-border-color: #34383c; }

:root {
  --popover-background-color: #fff;
  --popover-item-color: #6d7882;
  --popover-item-hover-color: #556068;
  --popover-item-danger-hover-color: #b01b1b;
  --popover-item-background-color: #fff;
  --popover-box-shadow-color: rgba(0, 0, 0, 0.15);
  --popover-box-shadow-size: 0px 1px 20px;
  --popover-arrow-color: #fff; }

.eps-theme-dark {
  --popover-background-color: #4c4f56;
  --popover-item-color: #fff;
  --popover-item-hover-color: #e0e1e3;
  --popover-item-danger-hover-color: #F84343;
  --popover-item-background-color: #4c4f56;
  --popover-box-shadow-color: rgba(0, 0, 0, 0.15);
  --popover-box-shadow-size: 0px 1px 20px;
  --popover-arrow-color: #4c4f56; }

.eps-popover {
  padding: 10px 0;
  background-color: var(--popover-background-color);
  -webkit-box-shadow: var(--popover-box-shadow-size) var(--popover-box-shadow-color);
          box-shadow: var(--popover-box-shadow-size) var(--popover-box-shadow-color);
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  min-width: 120px;
  -webkit-border-radius: 0.1875rem;
          border-radius: 0.1875rem;
  position: absolute;
  z-index: 1050;
  margin-top: 9px;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  left: 0.25rem; }
  .eps-popover__background {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1030; }
  .eps-popover__container {
    position: relative; }
  .eps-popover::before {
    content: "";
    display: block;
    position: absolute;
    width: 16px;
    height: 9px;
    margin: 0 0.1875rem 9px;
    top: -9px;
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    border-color: transparent;
    border-style: solid;
    border-width: 0 8px 9px 8px;
    border-bottom-color: var(--popover-arrow-color); }
  .eps-popover__item {
    padding: 0.3125rem 1rem;
    background-color: var(--popover-item-background-color);
    color: var(--popover-item-color);
    font-size: 0.6875rem;
    font-weight: 500;
    line-height: 0.8125rem;
    width: 100%;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    cursor: pointer; }
    .eps-popover__item:hover {
      color: var(--popover-item-hover-color); }
    .eps-popover__item--danger:hover {
      color: var(--popover-item-danger-hover-color); }
    .eps-popover__item .eps-icon {
      font-size: inherit;
      -webkit-margin-end: 0.3125rem;
              margin-inline-end: 0.3125rem; }

.eps-css-grid {
  display: grid;
  grid-template-columns: repeat(var(--eps-grid-columns, auto-fill), minmax(var(--eps-grid-col-min-width, 1fr), var(--eps-grid-col-max-width, 1fr)));
  grid-gap: var(--eps-grid-spacing); }

.eps-box {
  --eps-box-background-color: #fff;
  --eps-box-color: #495157;
  --eps-box-input-color: #495157;
  padding: 0;
  -webkit-border-radius: 0.1875rem;
          border-radius: 0.1875rem;
  background-color: var(--eps-box-background-color);
  color: var(--eps-box-color); }
  .eps-box--padding {
    padding: var(--eps-box-padding); }
  .eps-box > input {
    width: 100%;
    outline: 0;
    border: 0;
    background-color: var(--eps-box-background-color);
    color: var(--eps-box-input-color); }

.eps-theme-dark .eps-box {
  --eps-box-background-color: #404349;
  --eps-box-color: #e0e1e3;
  --eps-box-input-color: #e0e1e3; }

:root {
  --checkbox-border-color: #d5dadf;
  --checkbox-hover-border-color: #c7cdd4;
  --checkbox-active-border-color: #e3e7ea;
  --checkbox-background-color: #fff;
  --checkbox-checked-background-color: #39b54a;
  --checkbox-checked-hover-background-color: #33a242;
  --checkbox-checked-active-background-color: #44c455;
  --checkbox-indicator-color: #fff; }

.eps-theme-dark {
  --checkbox-background-color: transparent; }

.eps-checkbox {
  -webkit-appearance: none;
  -webkit-border-radius: 0.1875rem;
          border-radius: 0.1875rem;
  width: 15px;
  height: 15px;
  outline: 0;
  background-color: var(--checkbox-background-color);
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid var(--checkbox-border-color); }
  .eps-checkbox::after {
    display: inline-block;
    margin-bottom: 12.5%;
    content: " ";
    width: 3px;
    height: 6px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg); }
  .eps-checkbox:hover {
    --checkbox-border-color: var(--checkbox-hover-border-color); }
  .eps-checkbox:active {
    --checkbox-border-color: var(--checkbox-active-border-color); }
  .eps-checkbox:checked {
    --checkbox-background-color: var(--checkbox-checked-background-color);
    --checkbox-border-color: var(--checkbox-checked-background-color); }
    .eps-checkbox:checked::after {
      border: solid #fff;
      border-width: 0 1px 1px 0; }
    .eps-checkbox:checked:hover {
      --checkbox-background-color: var(--checkbox-checked-hover-background-color);
      --checkbox-border-color: var(--checkbox-checked-hover-background-color); }
    .eps-checkbox:checked:active {
      --checkbox-background-color: var(--checkbox-checked-active-background-color);
      --checkbox-border-color: var(--checkbox-checked-active-background-color); }
  .eps-checkbox--rounded {
    -webkit-border-radius: 50%;
            border-radius: 50%; }

:root {
  --e-app-drag-drop-background-color: #fff;
  --e-app-drag-drop-outline-color: #d5dadf; }

.eps-theme-dark {
  --e-app-drag-drop-background-color: #404349;
  --e-app-drag-drop-outline-color: #7d7e82; }

.e-app-drag-drop {
  background-color: var(--e-app-drag-drop-background-color);
  outline: 2px dashed var(--e-app-drag-drop-outline-color);
  outline-offset: -0.75rem;
  margin-bottom: 1.5rem;
  padding: 4.125rem;
  text-align: center; }
  .e-app-drag-drop--drag-over {
    outline-color: #58d0f5; }

.eps-dialog {
  -webkit-border-radius: 3px;
          border-radius: 3px;
  width: 375px; }
  .eps-dialog__close-button {
    position: absolute;
    top: -2.75rem;
    right: -2.75rem;
    margin-top: 0.625rem;
    margin-right: 0.625rem;
    z-index: 1040;
    font-size: 1.25rem;
    color: #fff; }
  .eps-dialog__content {
    padding: 1.5rem 1.875rem 1rem;
    font-size: 0.75rem; }
  .eps-dialog__title, .eps-dialog__text {
    text-align: center; }
  .eps-dialog__buttons {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .eps-dialog__button {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    border-top: 1px solid var(--hr-color);
    line-height: 2.75rem;
    text-align: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .eps-dialog__button:last-child:not(:first-child) {
      -webkit-border-start: 1px solid var(--hr-color);
              border-inline-start: 1px solid var(--hr-color); }

.eps-inline-link {
  color: var(--eps-inline-link-color);
  background-color: initial;
  border: 0;
  padding: 0; }
  .eps-inline-link--color-primary {
    --eps-inline-link-color: #39b54a; }
  .eps-inline-link--color-secondary {
    --eps-inline-link-color: #c2cbd2; }
  .eps-inline-link--color-danger {
    --eps-inline-link-color: #b01b1b; }
  .eps-inline-link--color-cta {
    --eps-inline-link-color: #93003F; }
  .eps-inline-link--color-link {
    --eps-inline-link-color: #58d0f5; }
  .eps-inline-link--color-disabled {
    --eps-inline-link-color: #c2cbd2; }
  .eps-inline-link--underline-hover:hover, .eps-inline-link--underline-always, .eps-inline-link--underline-always:hover {
    text-decoration: underline; }
  .eps-inline-link--italic {
    font-style: italic; }
  .eps-inline-link, .eps-inline-link:focus {
    outline: none; }

.eps-text-field {
  --eps-text-field-color: #6d7882;
  --eps-text-field-background-color: #fff;
  --eps-text-field-placeholder-color: #a4afb7;
  --eps-text-field-outlined-border-color: #d5dadf;
  --eps-text-field-outlined-focus-border-color: #c2cbd2;
  width: 100%;
  color: var(--eps-text-field-color);
  background-color: var(--eps-text-field-background-color);
  border: 0;
  outline: none;
  font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }
  .eps-text-field--outlined {
    -webkit-border-radius: 0.1875rem;
            border-radius: 0.1875rem;
    border: 1px solid var(--eps-text-field-outlined-border-color);
    padding: 0.625rem; }
    .eps-text-field--outlined:focus {
      border-color: var(--eps-text-field-outlined-focus-border-color); }
  .eps-text-field::-webkit-input-placeholder {
    color: var(--eps-text-field-placeholder-color);
    font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }
  .eps-text-field::-moz-placeholder {
    color: var(--eps-text-field-placeholder-color);
    font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }
  .eps-text-field::-ms-input-placeholder {
    color: var(--eps-text-field-placeholder-color);
    font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }
  .eps-text-field::placeholder {
    color: var(--eps-text-field-placeholder-color);
    font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }

.eps-theme-dark .eps-text-field {
  --eps-text-field-color: #b4b5b7;
  --eps-text-field-background-color: #34383c;
  --eps-text-field-placeholder-color: #7d7e82;
  --eps-text-field-outlined-border-color: #64666a;
  --eps-text-field-outlined-focus-border-color: #7d7e82; }

.e-app-import-export-content-layout {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 100%; }
  .e-app-import-export-content-layout__container {
    -ms-flex-preferred-size: 1075px;
        flex-basis: 1075px; }

.e-app-export-complete__kit-content-title {
  margin: 2.75rem 0 0.625rem; }

.e-app-export-kit-content {
  --e-app-export-kit-content-title-color: #556068;
  --e-app-export-kit-content-description-color: #6d7882; }
  .e-app-export-kit-content__checkbox {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -webkit-margin-end: 0.75rem;
            margin-inline-end: 0.75rem; }
  .e-app-export-kit-content__title {
    color: var(--e-app-export-kit-content-title-color); }
  .e-app-export-kit-content__description {
    color: var(--e-app-export-kit-content-description-color);
    -webkit-margin-end: 1.25rem;
            margin-inline-end: 1.25rem; }
  .e-app-export-kit-content__notice {
    margin-top: 1rem; }

.eps-theme-dark .e-app-export-kit-content {
  --e-app-export-kit-content-title-color: #e0e1e3;
  --e-app-export-kit-content-description-color: #b4b5b7; }

.e-app-export-complete-kit-data-list {
  --e-app-export-complete-kit-data-border-color: #d5dadf; }
  .e-app-export-complete-kit-data-list__item {
    padding: 0.625rem 0;
    border-bottom: 1px solid var(--e-app-export-complete-kit-data-border-color); }

.eps-theme-dark .e-app-export-complete-kit-data-list {
  --e-app-export-complete-kit-data-border-color: #4c4f56; }

.e-app-import-resolver {
  --e-app-import-resolver-panel-header-background-color: #fff;
  --e-app-import-resolver-panel-body-background-color: rgba(255, 255, 255, 0.5);
  --e-app-import-resolver-conflicts-asset-border-color: #c2cbd2;
  --e-app-import-resolver-conflicts-asset-inactive-color: #a4afb7;
  padding-bottom: 1.25rem; }
  .e-app-import-resolver__notice {
    margin-bottom: 1.25rem; }
  .e-app-import-resolver__panel, .e-app-import-resolver__panel:hover {
    background-color: initial; }
  .e-app-import-resolver__panel-header {
    background-color: var(--e-app-import-resolver-panel-header-background-color); }
  .e-app-import-resolver__panel-body {
    background-color: var(--e-app-import-resolver-panel-body-background-color); }
  .e-app-import-resolver-conflicts__container {
    -webkit-box-shadow: 0 2px 3px 1px var(--color-box-shadow-color);
            box-shadow: 0 2px 3px 1px var(--color-box-shadow-color); }
  .e-app-import-resolver-conflicts__checkbox {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -webkit-margin-end: 0.75rem;
            margin-inline-end: 0.75rem; }
  .e-app-import-resolver-conflicts__title {
    line-height: 1; }
  .e-app-import-resolver-conflicts__asset:not(:first-child) {
    -webkit-border-start: 2px solid var(--e-app-import-resolver-conflicts-asset-border-color);
            border-inline-start: 2px solid var(--e-app-import-resolver-conflicts-asset-border-color);
    -webkit-padding-start: 1rem;
            padding-inline-start: 1rem;
    -webkit-margin-start: 1rem;
            margin-inline-start: 1rem; }
  .e-app-import-resolver-conflicts__asset:not(.active) {
    color: var(--e-app-import-resolver-conflicts-asset-inactive-color); }
  .e-app-import-resolver-conflicts__edit-template {
    -webkit-margin-start: 0.3125rem;
            margin-inline-start: 0.3125rem; }

.eps-theme-dark .e-app-import-resolver {
  --e-app-import-resolver-panel-header-background-color: #4c4f56;
  --e-app-import-resolver-panel-body-background-color: rgba(0, 0, 0, 0.05);
  --e-app-import-resolver-conflicts-asset-border-color: #64666a;
  --e-app-import-resolver-conflicts-asset-inactive-color: #7d7e82; }

.e-app-import-export-panel {
  --e-app-import-export-panel-header-background-color: #fff;
  --e-app-import-export-panel-body-background-color: rgba(255, 255, 255, 0.5); }
  .e-app-import-export-panel, .e-app-import-export-panel:hover {
    background-color: initial; }
  .e-app-import-export-panel__header {
    background-color: var(--e-app-import-export-panel-header-background-color);
    -webkit-border-radius: 0.1875rem;
            border-radius: 0.1875rem; }
  .e-app-import-export-panel__body {
    background-color: var(--e-app-import-export-panel-body-background-color);
    -webkit-border-radius: 0 0 0.1875rem 0.1875rem;
            border-radius: 0 0 0.1875rem 0.1875rem; }

.eps-theme-dark .e-app-import-export-panel {
  --e-app-import-export-panel-header-background-color: #404349;
  --e-app-import-export-panel-body-background-color: rgba(64, 67, 73, 0.5); }

.e-app-export-kit {
  padding-bottom: 1.25rem; }
  .e-app-export-kit-information {
    margin-top: 1.25rem; }
    .e-app-export-kit-information__field-header {
      margin-bottom: 0.625rem; }
    .e-app-export-kit-information__label {
      margin: 0; }
    .e-app-export-kit-information__info-icon {
      -webkit-margin-start: 0.625rem;
              margin-inline-start: 0.625rem; }
  .e-app-export-kit-info-modal__icon {
    -webkit-padding-start: 0.625rem;
            padding-inline-start: 0.625rem; }
  .e-app-export-kit-info-modal__heading {
    margin-bottom: 1.25rem; }

.e-app-import-export-info-modal__section:not(:first-child) {
  margin-top: 1.875rem; }

.e-app-import-export-info-modal__heading {
  margin-bottom: 1.25rem; }

:root {
  --eps-badge-background-color: #fff; }

.eps-theme-dark {
  --eps-badge-background-color: #404349; }

.eps-badge {
  display: inline-block;
  background: var(--eps-badge-background-color);
  padding: 0 0.5rem;
  line-height: 1.8;
  -webkit-box-shadow: 0 3px 6px var(--color-box-shadow-color);
          box-shadow: 0 3px 6px var(--color-box-shadow-color);
  -webkit-border-radius: 4px;
          border-radius: 4px;
  font-size: 0.75rem; }
  .eps-badge--sm {
    font-size: 0.625rem;
    -webkit-border-radius: 3px;
            border-radius: 3px;
    padding: 0 0.3125rem;
    line-height: 1.5; }

.eps-collapse__title {
  cursor: pointer;
  padding: 0.3125rem 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 100%;
  background: transparent;
  border: none;
  color: inherit; }
  .eps-collapse__title:focus {
    outline: none; }

.eps-collapse__icon {
  -webkit-transition: all 150ms;
  -o-transition: all 150ms;
  transition: all 150ms;
  -webkit-transform: rotate(0deg);
      -ms-transform: rotate(0deg);
          transform: rotate(0deg); }

.eps-collapse__content {
  margin-top: 0.625rem;
  display: none; }

.eps-collapse[data-open] .eps-collapse__content {
  display: block; }

.eps-collapse[data-open] .eps-collapse__icon {
  -webkit-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
          transform: rotate(90deg); }

.e-kit-library-bottom-promotion {
  --e-kit-library-bottom-promotion-color: tints(600); }

.eps-theme-dark .e-kit-library-bottom-promotion {
  --e-kit-library-bottom-promotion-color: dark-tints(400); }

.e-kit-library-bottom-promotion {
  width: 100%;
  text-align: center;
  margin-top: 1.875rem;
  color: var(--e-kit-library-bottom-promotion-color); }

.e-kit-library__error-screen {
  margin-top: 2.75rem; }
  .e-kit-library__error-screen-title {
    margin-top: 2.75rem;
    margin-bottom: 0; }
  .e-kit-library__error-screen-description {
    margin-top: 1.5rem;
    color: #a4afb7;
    text-align: center;
    max-width: 520px; }

.e-kit-library__kit-favorite-actions {
  padding: 0.3125rem;
  -webkit-transition: 0.3s all;
  -o-transition: 0.3s all;
  transition: 0.3s all;
  -webkit-border-radius: 4px;
          border-radius: 4px; }
  .e-kit-library__kit-favorite-actions--active {
    color: #b01b1b; }
  .e-kit-library__kit-favorite-actions--loading {
    opacity: 50%;
    cursor: default; }
  .e-kit-library__kit-favorite-actions:hover {
    background-color: rgba(176, 27, 27, 0.1); }

.e-kit-library__filter-indication {
  margin-top: 1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .e-kit-library__filter-indication-text {
    margin-bottom: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .e-kit-library__filter-indication-badge {
    margin-left: 0.3125rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .e-kit-library__filter-indication-badge-remove {
    margin-left: 0.3125rem;
    font-size: 0.875rem; }
  .e-kit-library__filter-indication-button {
    margin-left: 1.5rem; }

#eps-app-header-btn-apply,
#eps-app-header-btn-promotion,
#eps-app-header-btn-connect {
  margin-left: 0.625rem;
  margin-right: 0.625rem; }

.e-kit-library__apply-button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.3125rem; }

.e-kit-library__kit-item {
  --e-kit-library-kit-item-overlay-promotion-button-background-color: #fcfcfc; }

.eps-theme-dark .e-kit-library__kit-item {
  --e-kit-library-kit-item-overlay-promotion-button-background-color: #404349; }

.e-kit-library__kit-item-overlay {
  height: 100%; }
  .e-kit-library__kit-item-overlay > *:first-child {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1; }

.e-kit-library__kit-item-overlay-overview-button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: white;
  height: 100%;
  width: 100%; }
  .e-kit-library__kit-item-overlay-overview-button > i {
    font-size: 2rem;
    margin-bottom: 5px; }
  .e-kit-library__kit-item-overlay-overview-button > span {
    font-size: 0.9rem; }

.e-kit-library__kit-item-overlay-promotion-button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  background: white;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 10px;
  font-size: 13px;
  color: #93003F;
  background: var(--e-kit-library-kit-item-overlay-promotion-button-background-color); }
  .e-kit-library__kit-item-overlay-promotion-button > * {
    margin: 0 3px; }

.e-kit-library__kit-item-subscription-plan-badge {
  position: absolute;
  top: 0;
  right: 0;
  margin: 0.3125rem;
  color: #fff;
  text-transform: uppercase; }

:root {
  --e-kit-library-header-back-border: 1px solid #f1f3f5;
  --e-kit-library-header-back-color: #a4afb7; }

.eps-theme-dark {
  --e-kit-library-header-back-border: 1px solid #64666a;
  --e-kit-library-header-back-color: #b4b5b7; }

.e-kit-library__header-back {
  color: var(--e-kit-library-header-back-color);
  padding-right: 1.25rem;
  padding-left: 0.3125rem;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100%;
  border-right: var(--e-kit-library-header-back-border); }
  .e-kit-library__header-back-container {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    height: 100%; }
  .e-kit-library__header-back .eps-icon {
    -webkit-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
            transform: rotate(0deg); }

.e-kit-library__page-loader {
  width: 100%;
  height: 100%;
  display: grid;
  place-items: center;
  font-size: 1.85rem;
  color: #a4afb7; }

.eps-search-input {
  --eps-search-input-background-color: #fcfcfc;
  --eps-search-input-background-color-focus: #fff;
  --eps-search-input-color: #556068;
  --eps-search-input-placeholder-color: #a4afb7; }

.eps-theme-dark .eps-search-input {
  --eps-search-input-background-color: #404349;
  --eps-search-input-background-color-focus: #4c4f56;
  --eps-search-input-color: #b4b5b7;
  --eps-search-input-placeholder-color: #b4b5b7; }

.eps-search-input {
  width: 100%;
  font-size: 0.9375rem;
  padding: 0.625rem 2.75rem;
  border: none;
  background: var(--eps-search-input-background-color);
  outline: none;
  color: var(--eps-search-input-color);
  line-height: 1;
  height: 2.75rem; }
  .eps-search-input--sm {
    font-size: 0.8125rem;
    padding: 0.5rem 1.875rem; }
  .eps-search-input:focus {
    background: var(--eps-search-input-background-color-focus); }
  .eps-search-input::-webkit-input-placeholder {
    color: var(--eps-search-input-placeholder-color);
    font-style: italic; }
  .eps-search-input::-moz-placeholder {
    color: var(--eps-search-input-placeholder-color);
    font-style: italic; }
  .eps-search-input::-ms-input-placeholder {
    color: var(--eps-search-input-placeholder-color);
    font-style: italic; }
  .eps-search-input::placeholder {
    color: var(--eps-search-input-placeholder-color);
    font-style: italic; }
  .eps-search-input__container {
    position: relative; }
  .eps-search-input__icon {
    font-size: 1.25rem;
    padding: 0.625rem;
    color: #a4afb7;
    position: absolute;
    top: 0;
    inset-inline-start: 0;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .eps-search-input__icon--sm {
      font-size: 0.75rem; }
  .eps-search-input__clear-icon {
    font-size: 0.875rem;
    padding: 0.625rem;
    color: #a4afb7;
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .eps-search-input__clear-icon--sm {
      font-size: 0.6875rem; }

:root {
  --eps-sort-select-select-background-color: #fcfcfc;
  --eps-sort-select-select-color: #556068;
  --eps-sort-select-button-background-color: #fcfcfc;
  --eps-sort-select-button-border: 1px solid #f1f3f5; }

.eps-theme-dark {
  --eps-sort-select-select-background-color: #404349;
  --eps-sort-select-select-color: #b4b5b7;
  --eps-sort-select-button-background-color: #404349;
  --eps-sort-select-button-border: 1px solid #26292C; }

.eps-sort-select {
  width: 100%;
  font-size: 0.9375rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  .eps-sort-select__select-wrapper {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    position: relative; }
    .eps-sort-select__select-wrapper::after {
      content: "\e8ad";
      font-family: eicons;
      position: absolute;
      right: 0.625rem;
      top: 0;
      bottom: 0;
      color: #a4afb7;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      pointer-events: none; }
  .eps-sort-select__select {
    width: 100%;
    padding: 0.625rem 0.625rem;
    border: none;
    background: var(--eps-sort-select-select-background-color);
    outline: none;
    color: var(--eps-sort-select-select-color);
    line-height: 1;
    cursor: pointer;
    height: 2.75rem;
    -moz-appearance: none;
         appearance: none;
    -webkit-appearance: none;
    -webkit-border-radius: 0;
            border-radius: 0; }
  .eps-sort-select__button {
    padding: 0.75rem 0.75rem;
    background: var(--eps-sort-select-button-background-color);
    border-left: var(--eps-sort-select-button-border);
    line-height: 1;
    color: #a4afb7; }

.e-kit-library__tags-filter {
  --e-kit-library-tags-filter-list-search-background-color: #fff; }

.eps-theme-dark .e-kit-library__tags-filter {
  --e-kit-library-tags-filter-list-search-background-color: #404349; }

.e-kit-library__tags-filter {
  margin-top: 2.75rem; }
  .e-kit-library__tags-filter-list {
    margin-bottom: 2.75rem; }
    .e-kit-library__tags-filter-list .eps-collapse__title {
      padding-right: 1.875rem;
      padding-left: 1.875rem;
      text-transform: uppercase; }
    .e-kit-library__tags-filter-list .eps-collapse__content {
      margin: 0.3125rem 1.875rem; }
  .e-kit-library__tags-filter-list-container {
    max-height: 250px;
    overflow: auto; }
  .e-kit-library__tags-filter-list-search {
    margin-bottom: 0.625rem; }
    .e-kit-library__tags-filter-list-search .eps-search-input {
      background: var(--e-kit-library-tags-filter-list-search-background-color); }
  .e-kit-library__tags-filter-list-item {
    padding: 0.625rem 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-weight: 500; }
    .e-kit-library__tags-filter-list-item input {
      margin-right: 0.3125rem; }

.e-kit-library #eps-app-header-btn-refetch {
  padding: 0; }

.e-kit-library-header-info-modal-container {
  margin-bottom: 2.75rem; }

.e-kit-library__index-layout-container {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  overflow-y: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }

.e-kit-library__index-layout-top-area {
  padding: 1.875rem 2.75rem;
  position: -webkit-sticky;
  position: sticky;
  top: -1px;
  width: 100%;
  z-index: 2;
  background-color: var(--app-background-color);
  gap: 1.5rem; }
  .e-kit-library__index-layout-top-area-search, .e-kit-library__index-layout-top-area-sort {
    min-width: 265px; }
  .e-kit-library__index-layout-top-area-search {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1; }

.e-kit-library__index-layout-main {
  padding-top: 0;
  padding-bottom: 1.5rem;
  overflow-y: hidden;
  height: auto;
  -webkit-box-flex: 1;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }

.e-kit-library__tags-filter {
  --e-kit-library-item-sidebar-header-title-color: #6d7882;
  --e-kit-library-item-sidebar-description-color: #6d7882;
  --e-kit-library-item-information-text-color: #6d7882; }

.eps-theme-dark .e-kit-library__tags-filter {
  --e-kit-library-item-sidebar-header-title-color: #b4b5b7;
  --e-kit-library-item-sidebar-description-color: #b4b5b7;
  --e-kit-library-item-information-text-color: #b4b5b7; }

.e-kit-library__item-sidebar {
  padding: 1.5rem 1.875rem; }

.e-kit-library__item-sidebar-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }

.e-kit-library__item-sidebar-header-title {
  color: var(--e-kit-library-item-sidebar-header-title-color);
  margin-bottom: 0; }

.e-kit-library__item-sidebar-thumbnail {
  margin-top: 1.5rem;
  -webkit-box-shadow: 0 4px 10px var(--color-box-shadow-color);
          box-shadow: 0 4px 10px var(--color-box-shadow-color); }

.e-kit-library__item-sidebar-description {
  margin-top: 1.5rem;
  color: var(--e-kit-library-item-sidebar-description-color); }

.e-kit-library__item-sidebar-collapse-tags {
  margin-top: 2.75rem; }

.e-kit-library__item-sidebar-collapse-info {
  margin-top: 1.875rem; }

.e-kit-library__item-sidebar-tags-container {
  gap: 0.625rem; }

.e-kit-library__item-information-text {
  font-size: 0.8125rem;
  color: var(--e-kit-library-item-information-text-color);
  margin-bottom: 0.3125rem; }

.e-kit-library {
  --e-kit-library-content-overview-group-title-color: #6d7882; }

.eps-theme-dark .e-kit-library {
  --e-kit-library-content-overview-group-title-color: #b4b5b7; }

.e-kit-library__content-overview-group-item {
  margin-bottom: 2.75rem; }

.e-kit-library__content-overview-group-title {
  margin-bottom: 1.875rem;
  color: var(--e-kit-library-content-overview-group-title-color); }

.e-kit-library__preview-responsive-controls {
  width: auto; }
  .e-kit-library__preview-responsive-controls-item {
    margin: 0 0.3125rem;
    color: #a4afb7;
    padding: 0.3125rem; }
    .e-kit-library__preview-responsive-controls-item:hover {
      background: rgba(88, 208, 245, 0.1);
      -webkit-border-radius: 3px;
              border-radius: 3px;
      -webkit-transition: all 0.3s;
      -o-transition: all 0.3s;
      transition: all 0.3s; }
    .e-kit-library__preview-responsive-controls-item--active {
      color: #58d0f5; }

.e-kit-library__preview-loader {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0; }

.e-kit-library__preview-iframe {
  border: none;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  -webkit-box-shadow: 0 4px 10px var(--color-box-shadow-color);
          box-shadow: 0 4px 10px var(--color-box-shadow-color); }

.e-kit-library__preview-iframe-container {
  overflow-y: auto;
  position: relative;
  z-index: 1; }

.e-app-collapse {
  --e-app-collapse-icon-color: #6d7882; }
  .e-app-collapse-toggle {
    position: relative; }
    .e-app-collapse-toggle--active {
      cursor: pointer; }
    .e-app-collapse-toggle__icon {
      color: var(--e-app-collapse-icon-color);
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      font-size: 0.875rem;
      position: absolute;
      top: 50%;
      right: var(--e-app-collapse-toggle-icon-spacing);
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%); }
      .e-app-collapse-toggle__icon:before {
        -webkit-transition: all 0.2s linear;
        -o-transition: all 0.2s linear;
        transition: all 0.2s linear; }
  .e-app-collapse-content {
    display: none; }
  .e-app-collapse--opened .e-app-collapse-toggle__icon:before {
    -webkit-transform: rotate(-180deg);
        -ms-transform: rotate(-180deg);
            transform: rotate(-180deg); }
  .e-app-collapse--opened .e-app-collapse-content {
    display: block; }

[dir="rtl"] .e-app-collapse-toggle__icon {
  right: initial;
  left: var(--e-app-collapse-toggle-icon-spacing); }

.eps-theme-dark .e-app-collapse {
  --e-app-collapse-icon-color: #b4b5b7; }
/*# sourceMappingURL=app.css.map */assets/css/widget-heading-rtl.min.css000064400000001221151327220410013602 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-heading-title{padding:0;margin:0;line-height:1}.elementor-widget-heading .elementor-heading-title[class*=elementor-size-]>a{color:inherit;font-size:inherit;line-height:inherit}.elementor-widget-heading .elementor-heading-title.elementor-size-small{font-size:15px}.elementor-widget-heading .elementor-heading-title.elementor-size-medium{font-size:19px}.elementor-widget-heading .elementor-heading-title.elementor-size-large{font-size:29px}.elementor-widget-heading .elementor-heading-title.elementor-size-xl{font-size:39px}.elementor-widget-heading .elementor-heading-title.elementor-size-xxl{font-size:59px}assets/css/widget-image-carousel.min.css000064400000000633151327220410014307 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-widget-image-carousel .swiper-container{position:static}.elementor-widget-image-carousel .swiper-container .swiper-slide figure{line-height:inherit}.elementor-widget-image-carousel .swiper-slide{text-align:center}.elementor-image-carousel-wrapper:not(.swiper-container-initialized) .swiper-slide{max-width:calc(100% / var(--e-image-carousel-slides-to-show, 3))}assets/css/widget-icon-list.min.css000064400000013520151327220410013312 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-widget.elementor-icon-list--layout-inline .elementor-widget-container{overflow:hidden}.elementor-widget .elementor-icon-list-items.elementor-inline-items{margin-right:-8px;margin-left:-8px}.elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-right:8px;margin-left:8px}.elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{width:auto;left:auto;right:auto;position:relative;height:100%;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);border-top:0;border-bottom:0;border-right:0;border-left-width:1px;border-style:solid;right:-8px}.elementor-widget .elementor-icon-list-items{list-style-type:none;margin:0;padding:0}.elementor-widget .elementor-icon-list-item{margin:0;padding:0;position:relative}.elementor-widget .elementor-icon-list-item:after{position:absolute;bottom:0;width:100%}.elementor-widget .elementor-icon-list-item,.elementor-widget .elementor-icon-list-item a{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-size:inherit}.elementor-widget .elementor-icon-list-icon+.elementor-icon-list-text{-ms-flex-item-align:center;align-self:center;padding-left:5px}.elementor-widget .elementor-icon-list-icon{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget .elementor-icon-list-icon svg{width:var(--e-icon-list-icon-size,1em);height:var(--e-icon-list-icon-size,1em)}.elementor-widget .elementor-icon-list-icon i{width:1.25em;font-size:var(--e-icon-list-icon-size)}.elementor-widget.elementor-widget-icon-list .elementor-icon-list-icon{text-align:var(--e-icon-list-icon-align)}.elementor-widget.elementor-widget-icon-list .elementor-icon-list-icon svg{margin:var(--e-icon-list-icon-margin,0 calc(var(--e-icon-list-icon-size, 1em) * .25) 0 0)}.elementor-widget.elementor-list-item-link-full_width a{width:100%}.elementor-widget.elementor-align-center .elementor-icon-list-item,.elementor-widget.elementor-align-center .elementor-icon-list-item a{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget.elementor-align-center .elementor-inline-items{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-align-left .elementor-icon-list-item,.elementor-widget.elementor-align-left .elementor-icon-list-item a{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;text-align:left}.elementor-widget.elementor-align-left .elementor-inline-items{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-widget.elementor-align-right .elementor-icon-list-item,.elementor-widget.elementor-align-right .elementor-icon-list-item a{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;text-align:right}.elementor-widget.elementor-align-right .elementor-icon-list-items{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-widget:not(.elementor-align-right) .elementor-icon-list-item:after{left:0}.elementor-widget:not(.elementor-align-left) .elementor-icon-list-item:after{right:0}@media (max-width:1024px){.elementor-widget.elementor-tablet-align-center .elementor-icon-list-item,.elementor-widget.elementor-tablet-align-center .elementor-icon-list-item a,.elementor-widget.elementor-tablet-align-center .elementor-icon-list-items{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-tablet-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget.elementor-tablet-align-left .elementor-icon-list-items{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-widget.elementor-tablet-align-left .elementor-icon-list-item,.elementor-widget.elementor-tablet-align-left .elementor-icon-list-item a{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;text-align:left}.elementor-widget.elementor-tablet-align-right .elementor-icon-list-items{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-widget.elementor-tablet-align-right .elementor-icon-list-item,.elementor-widget.elementor-tablet-align-right .elementor-icon-list-item a{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;text-align:right}.elementor-widget:not(.elementor-tablet-align-right) .elementor-icon-list-item:after{left:0}.elementor-widget:not(.elementor-tablet-align-left) .elementor-icon-list-item:after{right:0}}@media (max-width:767px){.elementor-widget.elementor-mobile-align-center .elementor-icon-list-item,.elementor-widget.elementor-mobile-align-center .elementor-icon-list-item a,.elementor-widget.elementor-mobile-align-center .elementor-icon-list-items{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-mobile-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget.elementor-mobile-align-left .elementor-icon-list-items{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-widget.elementor-mobile-align-left .elementor-icon-list-item,.elementor-widget.elementor-mobile-align-left .elementor-icon-list-item a{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;text-align:left}.elementor-widget.elementor-mobile-align-right .elementor-icon-list-items{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-widget.elementor-mobile-align-right .elementor-icon-list-item,.elementor-widget.elementor-mobile-align-right .elementor-icon-list-item a{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;text-align:right}.elementor-widget:not(.elementor-mobile-align-right) .elementor-icon-list-item:after{left:0}.elementor-widget:not(.elementor-mobile-align-left) .elementor-icon-list-item:after{right:0}}assets/css/widget-image-gallery.min.css000064400000004632151327220410014134 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-image-gallery .gallery-item{display:inline-block;text-align:center;vertical-align:top;width:100%;max-width:100%;margin:0 auto}.elementor-image-gallery .gallery-item img{margin:0 auto}.elementor-image-gallery .gallery-item .gallery-caption{margin:0}.elementor-image-gallery figure img{display:block}.elementor-image-gallery figure figcaption{width:100%}.gallery-spacing-custom .elementor-image-gallery .gallery-icon{padding:0}@media (min-width:768px){.elementor-image-gallery .gallery-columns-2 .gallery-item{max-width:50%}.elementor-image-gallery .gallery-columns-3 .gallery-item{max-width:33.33%}.elementor-image-gallery .gallery-columns-4 .gallery-item{max-width:25%}.elementor-image-gallery .gallery-columns-5 .gallery-item{max-width:20%}.elementor-image-gallery .gallery-columns-6 .gallery-item{max-width:16.666%}.elementor-image-gallery .gallery-columns-7 .gallery-item{max-width:14.28%}.elementor-image-gallery .gallery-columns-8 .gallery-item{max-width:12.5%}.elementor-image-gallery .gallery-columns-9 .gallery-item{max-width:11.11%}.elementor-image-gallery .gallery-columns-10 .gallery-item{max-width:10%}}@media (min-width:480px) and (max-width:767px){.elementor-image-gallery .gallery.gallery-columns-2 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-3 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-4 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-5 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-6 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-7 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-8 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-9 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-10 .gallery-item{max-width:50%}}@media (max-width:479px){.elementor-image-gallery .gallery.gallery-columns-2 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-3 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-4 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-5 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-6 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-7 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-8 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-9 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-10 .gallery-item{max-width:100%}}assets/css/frontend.min.css000064400000400627151327220410011757 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.dialog-widget-content{background-color:#fff;position:absolute;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);overflow:hidden}.dialog-message{font-size:12px;line-height:1.5;-webkit-box-sizing:border-box;box-sizing:border-box}.dialog-type-lightbox{position:fixed;height:100%;width:100%;bottom:0;left:0;background-color:rgba(0,0,0,.8);z-index:9999;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.dialog-type-lightbox .dialog-widget-content{margin:auto;width:375px}.dialog-type-lightbox .dialog-header{font-size:15px;color:#495157;padding:30px 0 10px;font-weight:500}.dialog-type-lightbox .dialog-message{padding:0 30px 30px;min-height:50px}.dialog-type-lightbox:not(.elementor-popup-modal) .dialog-header,.dialog-type-lightbox:not(.elementor-popup-modal) .dialog-message{text-align:center}.dialog-type-lightbox .dialog-buttons-wrapper{border-top:1px solid #e6e9ec;text-align:center}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;width:50%;border:none;background:none;color:#6d7882;font-size:15px;cursor:pointer;padding:13px 0;outline:0}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button:hover{background-color:#f4f6f7}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button.dialog-ok{color:#b01b1b}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button.dialog-take_over{color:#39b54a}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button:active{background-color:rgba(230,233,236,.5)}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button::-moz-focus-inner{border:0}.dialog-close-button{cursor:pointer;position:absolute;margin-top:15px;right:15px;font-size:15px;line-height:1}.dialog-close-button:not(:hover){opacity:.4}.dialog-alert-widget .dialog-buttons-wrapper>button{width:100%}.dialog-confirm-widget .dialog-button:first-child{border-right:1px solid #e6e9ec}.dialog-prevent-scroll{overflow:hidden;max-height:100vh}@media (min-width:1024px){body.admin-bar .dialog-lightbox-widget{height:calc(100vh - 32px)}}@media (max-width:1024px){body.admin-bar .dialog-type-lightbox{position:-webkit-sticky;position:sticky;height:100vh}}.elementor-aspect-ratio-219 .elementor-fit-aspect-ratio{padding-bottom:42.8571%}.elementor-aspect-ratio-169 .elementor-fit-aspect-ratio{padding-bottom:56.25%}.elementor-aspect-ratio-43 .elementor-fit-aspect-ratio{padding-bottom:75%}.elementor-aspect-ratio-32 .elementor-fit-aspect-ratio{padding-bottom:66.6666%}.elementor-aspect-ratio-11 .elementor-fit-aspect-ratio{padding-bottom:100%}.elementor-aspect-ratio-916 .elementor-fit-aspect-ratio{padding-bottom:177.8%}.elementor-fit-aspect-ratio{position:relative;height:0}.elementor-fit-aspect-ratio iframe{position:absolute;top:0;left:0;height:100%;width:100%;border:0;background-color:#000}.elementor-fit-aspect-ratio video{width:100%}.flatpickr-calendar{width:280px}.flatpickr-calendar .flatpickr-current-month span.cur-month{font-weight:300}.flatpickr-calendar .dayContainer{width:280px;min-width:280px;max-width:280px}.flatpickr-calendar .flatpickr-days{width:280px}.flatpickr-calendar .flatpickr-day{max-width:37px;height:37px;line-height:37px}.elementor-templates-modal .dialog-widget-content{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;background-color:#f1f3f5;width:100%}@media (max-width:1439px){.elementor-templates-modal .dialog-widget-content{max-width:990px}}@media (min-width:1440px){.elementor-templates-modal .dialog-widget-content{max-width:1200px}}.elementor-templates-modal .dialog-header{padding:0;z-index:1}.elementor-templates-modal .dialog-buttons-wrapper,.elementor-templates-modal .dialog-header{background-color:#fff;-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1);position:relative}.elementor-templates-modal .dialog-buttons-wrapper{border:none;display:none;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;padding:5px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button{height:40px;margin-left:5px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success{padding:12px 36px;color:#fff;width:auto;font-size:15px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success:hover{background-color:#39b54a}.elementor-templates-modal .dialog-message{height:750px;max-height:85vh;overflow:auto;padding-top:25px}.elementor-templates-modal .dialog-content{height:100%}.elementor-templates-modal .dialog-loading{display:none}.elementor-templates-modal__header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;height:50px}.elementor-templates-modal__header__logo{line-height:1;text-transform:uppercase;font-weight:700;cursor:pointer}.elementor-templates-modal__header__logo-area{text-align:left;padding-left:15px}.elementor-templates-modal__header__logo-area>*{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-templates-modal__header__logo__icon-wrapper{margin-right:10px;font-size:12px}.elementor-templates-modal__header__logo__title{padding-top:2px}.elementor-templates-modal__header__items-area{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-templates-modal__header__item{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-templates-modal__header__item>i{font-size:20px;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;cursor:pointer}.elementor-templates-modal__header__item>i:not(:hover){color:#a4afb7}.elementor-templates-modal__header__close--normal{width:47px;border-left:1px solid #e6e9ec}.elementor-templates-modal__header__close--normal i{font-size:18px}.elementor-templates-modal__header__close--skip{padding:10px 10px 10px 20px;margin-right:10px;color:#fff;background-color:#a4afb7;font-size:11px;font-weight:400;line-height:1;text-transform:uppercase;-webkit-border-radius:2px;border-radius:2px;cursor:pointer}.elementor-templates-modal__header__close--skip>i{font-size:inherit;padding-left:10px;margin-left:15px;border-left:1px solid}.elementor-templates-modal__header__close--skip>i:not(:hover){color:#fff}.elementor-templates-modal__sidebar{-ms-flex-negative:0;flex-shrink:0;width:25%;background-color:hsla(0,0%,100%,.3)}.elementor-templates-modal__content{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-webkit-box-shadow:0 0 13px inset rgba(0,0,0,.05);box-shadow:inset 0 0 13px rgba(0,0,0,.05)}#wpadminbar #wp-admin-bar-elementor_edit_page .elementor-general-section+.elementor-second-section{border-top:1px solid #464b50;margin-top:6px}.elementor-hidden{display:none}.elementor-screen-only,.screen-reader-text,.screen-reader-text span,.ui-helper-hidden-accessible{position:absolute;top:-10000em;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.elementor-clearfix:after{content:"";display:block;clear:both;width:0;height:0}.e-logo-wrapper{background:#93003c;display:inline-block;padding:.75em;-webkit-border-radius:50%;border-radius:50%;line-height:1}.e-logo-wrapper i{color:#fff;font-size:1em}.elementor{-webkit-hyphens:manual;-ms-hyphens:manual;hyphens:manual}.elementor *,.elementor :after,.elementor :before{-webkit-box-sizing:border-box;box-sizing:border-box}.elementor a{-webkit-box-shadow:none;box-shadow:none;text-decoration:none}.elementor hr{margin:0;background-color:transparent}.elementor img{height:auto;max-width:100%;border:none;-webkit-border-radius:0;border-radius:0;-webkit-box-shadow:none;box-shadow:none}.elementor .elementor-widget:not(.elementor-widget-text-editor):not(.elementor-widget-theme-post-content) figure{margin:0}.elementor embed,.elementor iframe,.elementor object,.elementor video{max-width:100%;width:100%;margin:0;line-height:1;border:none}.elementor .elementor-custom-embed{line-height:0}.elementor .elementor-background,.elementor .elementor-background-holder,.elementor .elementor-background-video-container{height:100%;width:100%;top:0;left:0;position:absolute;overflow:hidden;z-index:0;direction:ltr}.elementor .elementor-background-video-container{-webkit-transition:opacity 1s;-o-transition:opacity 1s;transition:opacity 1s;pointer-events:none}.elementor .elementor-background-video-container.elementor-loading{opacity:0}.elementor .elementor-background-video-embed{max-width:none}.elementor .elementor-background-video,.elementor .elementor-background-video-embed,.elementor .elementor-background-video-hosted{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor .elementor-background-video{max-width:none}.elementor .elementor-html5-video{-o-object-fit:cover;object-fit:cover}.elementor .elementor-background-overlay,.elementor .elementor-background-slideshow{height:100%;width:100%;top:0;left:0;position:absolute}.elementor .elementor-background-slideshow{z-index:0}.elementor .elementor-background-slideshow__slide__image{width:100%;height:100%;background-position:50%;-webkit-background-size:cover;background-size:cover}.elementor-widget-wrap>.elementor-element.elementor-absolute{position:absolute}.elementor-column>.elementor-widget-wrap>.elementor-element.elementor-absolute{padding:inherit;-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-widget-wrap>.elementor-element.elementor-fixed{position:fixed}.elementor-widget-wrap .elementor-element.elementor-widget__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget__width-initial{max-width:100%}@media (max-width:1024px){.elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-initial{max-width:100%}}@media (max-width:767px){.elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-initial{max-width:100%}}.elementor-element.elementor-absolute,.elementor-element.elementor-fixed{z-index:1}.elementor-invisible{visibility:hidden}.elementor-align-center{text-align:center}.elementor-align-center .elementor-button{width:auto}.elementor-align-right{text-align:right}.elementor-align-right .elementor-button{width:auto}.elementor-align-left{text-align:left}.elementor-align-left .elementor-button{width:auto}.elementor-align-justify .elementor-button{width:100%}.elementor-custom-embed-play{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor-custom-embed-play i{font-size:100px;color:#fff;text-shadow:1px 0 6px rgba(0,0,0,.3)}.elementor-custom-embed-play svg{height:100px;width:100px;fill:#fff;-webkit-filter:drop-shadow(1px 0 6px rgba(0,0,0,.3));filter:drop-shadow(1px 0 6px rgba(0,0,0,.3))}.elementor-custom-embed-play i,.elementor-custom-embed-play svg{opacity:.8;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-custom-embed-play.elementor-playing i{font-family:eicons;-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.elementor-custom-embed-play.elementor-playing i:before{content:"\e8fb"}.elementor-tag{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex}.elementor-ken-burns{-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;-o-transition-property:transform;transition-property:transform;transition-property:transform,-webkit-transform;-webkit-transition-duration:10s;-o-transition-duration:10s;transition-duration:10s;-webkit-transition-timing-function:linear;-o-transition-timing-function:linear;transition-timing-function:linear}.elementor-ken-burns--out{-webkit-transform:scale(1.3);-ms-transform:scale(1.3);transform:scale(1.3)}.elementor-ken-burns--active{-webkit-transition-duration:20s;-o-transition-duration:20s;transition-duration:20s}.elementor-ken-burns--active.elementor-ken-burns--out{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}.elementor-ken-burns--active.elementor-ken-burns--in{-webkit-transform:scale(1.3);-ms-transform:scale(1.3);transform:scale(1.3)}@media (min-width:-1px){.elementor-widescreen-align-center{text-align:center}.elementor-widescreen-align-center .elementor-button{width:auto}.elementor-widescreen-align-right{text-align:right}.elementor-widescreen-align-right .elementor-button{width:auto}.elementor-widescreen-align-left{text-align:left}.elementor-widescreen-align-left .elementor-button{width:auto}.elementor-widescreen-align-justify .elementor-button{width:100%}}@media (max-width:-1px){.elementor-laptop-align-center{text-align:center}.elementor-laptop-align-center .elementor-button{width:auto}.elementor-laptop-align-right{text-align:right}.elementor-laptop-align-right .elementor-button{width:auto}.elementor-laptop-align-left{text-align:left}.elementor-laptop-align-left .elementor-button{width:auto}.elementor-laptop-align-justify .elementor-button{width:100%}}@media (max-width:-1px){.elementor-tablet_extra-align-center{text-align:center}.elementor-tablet_extra-align-center .elementor-button{width:auto}.elementor-tablet_extra-align-right{text-align:right}.elementor-tablet_extra-align-right .elementor-button{width:auto}.elementor-tablet_extra-align-left{text-align:left}.elementor-tablet_extra-align-left .elementor-button{width:auto}.elementor-tablet_extra-align-justify .elementor-button{width:100%}}@media (max-width:1024px){.elementor-tablet-align-center{text-align:center}.elementor-tablet-align-center .elementor-button{width:auto}.elementor-tablet-align-right{text-align:right}.elementor-tablet-align-right .elementor-button{width:auto}.elementor-tablet-align-left{text-align:left}.elementor-tablet-align-left .elementor-button{width:auto}.elementor-tablet-align-justify .elementor-button{width:100%}}@media (max-width:-1px){.elementor-mobile_extra-align-center{text-align:center}.elementor-mobile_extra-align-center .elementor-button{width:auto}.elementor-mobile_extra-align-right{text-align:right}.elementor-mobile_extra-align-right .elementor-button{width:auto}.elementor-mobile_extra-align-left{text-align:left}.elementor-mobile_extra-align-left .elementor-button{width:auto}.elementor-mobile_extra-align-justify .elementor-button{width:100%}}@media (max-width:767px){.elementor-mobile-align-center{text-align:center}.elementor-mobile-align-center .elementor-button{width:auto}.elementor-mobile-align-right{text-align:right}.elementor-mobile-align-right .elementor-button{width:auto}.elementor-mobile-align-left{text-align:left}.elementor-mobile-align-left .elementor-button{width:auto}.elementor-mobile-align-justify .elementor-button{width:100%}}#wpadminbar #wp-admin-bar-elementor_edit_page>.ab-item:before{content:"\e813";font-family:eicons;top:3px;font-size:18px}#wpadminbar #wp-admin-bar-elementor_inspector>.ab-item:before{content:"\f348";top:2px}:root{--page-title-display:block}.elementor-page-title,h1.entry-title{display:var(--page-title-display)}.elementor-section{position:relative}.elementor-section .elementor-container{display:-webkit-box;display:-ms-flexbox;display:flex;margin-right:auto;margin-left:auto;position:relative}@media (max-width:1024px){.elementor-section .elementor-container{-ms-flex-wrap:wrap;flex-wrap:wrap}}.elementor-section.elementor-section-boxed>.elementor-container{max-width:1140px}.elementor-section.elementor-section-stretched{position:relative;width:100%}.elementor-section.elementor-section-items-top>.elementor-container{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.elementor-section.elementor-section-items-middle>.elementor-container{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-section.elementor-section-items-bottom>.elementor-container{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}@media (min-width:768px){.elementor-section.elementor-section-height-full{height:100vh}.elementor-section.elementor-section-height-full>.elementor-container{height:100%}}.elementor-bc-flex-widget .elementor-section-content-top>.elementor-container>.elementor-column>.elementor-widget-wrap{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.elementor-bc-flex-widget .elementor-section-content-middle>.elementor-container>.elementor-column>.elementor-widget-wrap{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-bc-flex-widget .elementor-section-content-bottom>.elementor-container>.elementor-column>.elementor-widget-wrap{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.elementor-row{width:100%;display:-webkit-box;display:-ms-flexbox;display:flex}@media (max-width:1024px){.elementor-row{-ms-flex-wrap:wrap;flex-wrap:wrap}}.elementor-widget-wrap{position:relative;width:100%;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-line-pack:start;align-content:flex-start}.elementor:not(.elementor-bc-flex-widget) .elementor-widget-wrap{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget-wrap>.elementor-element{width:100%}.elementor-widget{position:relative}.elementor-widget:not(:last-child){margin-bottom:20px}.elementor-widget:not(:last-child).elementor-absolute,.elementor-widget:not(:last-child).elementor-widget__width-auto,.elementor-widget:not(:last-child).elementor-widget__width-initial{margin-bottom:0}.elementor-column{min-height:1px}.elementor-column,.elementor-column-wrap{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-column-wrap{width:100%}.elementor-column-gap-narrow>.elementor-column>.elementor-element-populated{padding:5px}.elementor-column-gap-default>.elementor-column>.elementor-element-populated{padding:10px}.elementor-column-gap-extended>.elementor-column>.elementor-element-populated{padding:15px}.elementor-column-gap-wide>.elementor-column>.elementor-element-populated{padding:20px}.elementor-column-gap-wider>.elementor-column>.elementor-element-populated{padding:30px}.elementor-inner-section .elementor-column-gap-no .elementor-element-populated{padding:0}@media (min-width:768px){.elementor-column.elementor-col-10,.elementor-column[data-col="10"]{width:10%}.elementor-column.elementor-col-11,.elementor-column[data-col="11"]{width:11.111%}.elementor-column.elementor-col-12,.elementor-column[data-col="12"]{width:12.5%}.elementor-column.elementor-col-14,.elementor-column[data-col="14"]{width:14.285%}.elementor-column.elementor-col-16,.elementor-column[data-col="16"]{width:16.666%}.elementor-column.elementor-col-20,.elementor-column[data-col="20"]{width:20%}.elementor-column.elementor-col-25,.elementor-column[data-col="25"]{width:25%}.elementor-column.elementor-col-30,.elementor-column[data-col="30"]{width:30%}.elementor-column.elementor-col-33,.elementor-column[data-col="33"]{width:33.333%}.elementor-column.elementor-col-40,.elementor-column[data-col="40"]{width:40%}.elementor-column.elementor-col-50,.elementor-column[data-col="50"]{width:50%}.elementor-column.elementor-col-60,.elementor-column[data-col="60"]{width:60%}.elementor-column.elementor-col-66,.elementor-column[data-col="66"]{width:66.666%}.elementor-column.elementor-col-70,.elementor-column[data-col="70"]{width:70%}.elementor-column.elementor-col-75,.elementor-column[data-col="75"]{width:75%}.elementor-column.elementor-col-80,.elementor-column[data-col="80"]{width:80%}.elementor-column.elementor-col-83,.elementor-column[data-col="83"]{width:83.333%}.elementor-column.elementor-col-90,.elementor-column[data-col="90"]{width:90%}.elementor-column.elementor-col-100,.elementor-column[data-col="100"]{width:100%}}@media (max-width:479px){.elementor-column.elementor-xs-10{width:10%}.elementor-column.elementor-xs-11{width:11.111%}.elementor-column.elementor-xs-12{width:12.5%}.elementor-column.elementor-xs-14{width:14.285%}.elementor-column.elementor-xs-16{width:16.666%}.elementor-column.elementor-xs-20{width:20%}.elementor-column.elementor-xs-25{width:25%}.elementor-column.elementor-xs-30{width:30%}.elementor-column.elementor-xs-33{width:33.333%}.elementor-column.elementor-xs-40{width:40%}.elementor-column.elementor-xs-50{width:50%}.elementor-column.elementor-xs-60{width:60%}.elementor-column.elementor-xs-66{width:66.666%}.elementor-column.elementor-xs-70{width:70%}.elementor-column.elementor-xs-75{width:75%}.elementor-column.elementor-xs-80{width:80%}.elementor-column.elementor-xs-83{width:83.333%}.elementor-column.elementor-xs-90{width:90%}.elementor-column.elementor-xs-100{width:100%}}@media (max-width:767px){.elementor-column.elementor-sm-10{width:10%}.elementor-column.elementor-sm-11{width:11.111%}.elementor-column.elementor-sm-12{width:12.5%}.elementor-column.elementor-sm-14{width:14.285%}.elementor-column.elementor-sm-16{width:16.666%}.elementor-column.elementor-sm-20{width:20%}.elementor-column.elementor-sm-25{width:25%}.elementor-column.elementor-sm-30{width:30%}.elementor-column.elementor-sm-33{width:33.333%}.elementor-column.elementor-sm-40{width:40%}.elementor-column.elementor-sm-50{width:50%}.elementor-column.elementor-sm-60{width:60%}.elementor-column.elementor-sm-66{width:66.666%}.elementor-column.elementor-sm-70{width:70%}.elementor-column.elementor-sm-75{width:75%}.elementor-column.elementor-sm-80{width:80%}.elementor-column.elementor-sm-83{width:83.333%}.elementor-column.elementor-sm-90{width:90%}.elementor-column.elementor-sm-100{width:100%}}@media (min-width:768px) and (max-width:1024px){.elementor-column.elementor-md-10{width:10%}.elementor-column.elementor-md-11{width:11.111%}.elementor-column.elementor-md-12{width:12.5%}.elementor-column.elementor-md-14{width:14.285%}.elementor-column.elementor-md-16{width:16.666%}.elementor-column.elementor-md-20{width:20%}.elementor-column.elementor-md-25{width:25%}.elementor-column.elementor-md-30{width:30%}.elementor-column.elementor-md-33{width:33.333%}.elementor-column.elementor-md-40{width:40%}.elementor-column.elementor-md-50{width:50%}.elementor-column.elementor-md-60{width:60%}.elementor-column.elementor-md-66{width:66.666%}.elementor-column.elementor-md-70{width:70%}.elementor-column.elementor-md-75{width:75%}.elementor-column.elementor-md-80{width:80%}.elementor-column.elementor-md-83{width:83.333%}.elementor-column.elementor-md-90{width:90%}.elementor-column.elementor-md-100{width:100%}}@media (min-width:768px) and (max-width:1024px){.elementor-reverse-tablet>.elementor-container>:first-child{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.elementor-reverse-tablet>.elementor-container>:nth-child(2){-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.elementor-reverse-tablet>.elementor-container>:nth-child(3){-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.elementor-reverse-tablet>.elementor-container>:nth-child(4){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.elementor-reverse-tablet>.elementor-container>:nth-child(5){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.elementor-reverse-tablet>.elementor-container>:nth-child(6){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-reverse-tablet>.elementor-container>:nth-child(7){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.elementor-reverse-tablet>.elementor-container>:nth-child(8){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.elementor-reverse-tablet>.elementor-container>:nth-child(9){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.elementor-reverse-tablet>.elementor-container>:nth-child(10){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}}@media (max-width:767px){.elementor-reverse-mobile>.elementor-container>:first-child{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.elementor-reverse-mobile>.elementor-container>:nth-child(2){-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.elementor-reverse-mobile>.elementor-container>:nth-child(3){-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.elementor-reverse-mobile>.elementor-container>:nth-child(4){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.elementor-reverse-mobile>.elementor-container>:nth-child(5){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.elementor-reverse-mobile>.elementor-container>:nth-child(6){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-reverse-mobile>.elementor-container>:nth-child(7){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.elementor-reverse-mobile>.elementor-container>:nth-child(8){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.elementor-reverse-mobile>.elementor-container>:nth-child(9){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.elementor-reverse-mobile>.elementor-container>:nth-child(10){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.elementor-column{width:100%}}ul.elementor-icon-list-items.elementor-inline-items{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}ul.elementor-icon-list-items.elementor-inline-items .elementor-inline-item{word-break:break-word}.elementor-grid{display:grid;grid-column-gap:var(--grid-column-gap);grid-row-gap:var(--grid-row-gap)}.elementor-grid .elementor-grid-item{min-width:0}.elementor-grid-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}@media (min-width:-1px){.elementor-grid-widescreen-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-widescreen-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-widescreen-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-widescreen-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-widescreen-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-widescreen-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-widescreen-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-widescreen-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-widescreen-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-widescreen-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-widescreen-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-widescreen-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-widescreen-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-widescreen-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:-1px){.elementor-grid-laptop-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-laptop-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-laptop-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-laptop-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-laptop-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-laptop-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-laptop-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-laptop-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-laptop-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-laptop-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-laptop-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-laptop-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-laptop-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-laptop-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:-1px){.elementor-grid-tablet_extra-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-tablet_extra-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-tablet_extra-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-tablet_extra-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-tablet_extra-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-tablet_extra-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-tablet_extra-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-tablet_extra-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-tablet_extra-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-tablet_extra-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-tablet_extra-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-tablet_extra-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-tablet_extra-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-tablet_extra-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:1024px){.elementor-grid-tablet-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-tablet-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-tablet-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-tablet-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-tablet-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-tablet-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-tablet-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-tablet-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-tablet-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-tablet-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-tablet-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-tablet-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-tablet-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-tablet-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:-1px){.elementor-grid-mobile_extra-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-mobile_extra-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-mobile_extra-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-mobile_extra-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-mobile_extra-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-mobile_extra-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-mobile_extra-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-mobile_extra-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-mobile_extra-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-mobile_extra-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-mobile_extra-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-mobile_extra-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-mobile_extra-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-mobile_extra-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:767px){.elementor-grid-mobile-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-mobile-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-mobile-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-mobile-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-mobile-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-mobile-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-mobile-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-mobile-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-mobile-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-mobile-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-mobile-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-mobile-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-mobile-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-mobile-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (min-width:1025px){#elementor-device-mode:after{content:"desktop"}}@media (min-width:-1px){#elementor-device-mode:after{content:"widescreen"}}@media (max-width:-1px){#elementor-device-mode:after{content:"laptop";content:"tablet_extra"}}@media (max-width:1024px){#elementor-device-mode:after{content:"tablet"}}@media (max-width:-1px){#elementor-device-mode:after{content:"mobile_extra"}}@media (max-width:767px){#elementor-device-mode:after{content:"mobile"}}[class*=" eicon-"],[class^=eicon]{display:inline-block;font-family:eicons;font-size:inherit;font-weight:400;font-style:normal;font-variant:normal;line-height:1;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@-webkit-keyframes eicon-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes eicon-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.eicon-animation-spin{-webkit-animation:eicon-spin 2s linear infinite;animation:eicon-spin 2s linear infinite}.eicon-loading:before{content:"\e8fb"}.eicon-menu-bar:before{content:"\e816"}.eicon-chevron-right:before{content:"\e87d"}.eicon-chevron-left:before{content:"\e87e"}.eicon-close:before{content:"\e87f"}.eicon-share-arrow:before{content:"\e96c"}.eicon-zoom-in:before{content:"\e882"}.eicon-zoom-in-bold:before{content:"\e92e"}.eicon-zoom-out-bold:before{content:"\e943"}.eicon-frame-expand:before{content:"\e95c"}.eicon-frame-minimize:before{content:"\e95d"}.eicon-play:before{content:"\e89d"}.eicon-facebook:before{content:"\e959"}.eicon-twitter:before{content:"\e95a"}.eicon-pinterest:before{content:"\e95b"}.eicon-download-bold:before{content:"\e96b"}.eicon-caret-down:before{content:"\e92a"}.elementor-form-fields-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group .elementor-field-subgroup,.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group>.elementor-select-wrapper,.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group>input,.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group>textarea{-ms-flex-preferred-size:100%;flex-basis:100%;max-width:100%}.elementor-form-fields-wrapper.elementor-labels-inline>.elementor-field-group .elementor-select-wrapper,.elementor-form-fields-wrapper.elementor-labels-inline>.elementor-field-group>input{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-field-group{-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-field-group.elementor-field-type-submit{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.elementor-field-group .elementor-field-textual{width:100%;max-width:100%;border:1px solid #818a91;background-color:transparent;color:#373a3c;vertical-align:middle;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-field-group .elementor-field-textual:focus{-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.1) inset;box-shadow:inset 0 0 0 1px rgba(0,0,0,.1);outline:0}.elementor-field-group .elementor-field-textual::-webkit-input-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual:-ms-input-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual:-moz-placeholder,.elementor-field-group .elementor-field-textual::-moz-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual::-ms-input-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual::placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-select-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;position:relative;width:100%}.elementor-field-group .elementor-select-wrapper select{appearance:none;-webkit-appearance:none;-moz-appearance:none;color:inherit;font-size:inherit;font-family:inherit;font-weight:inherit;font-style:inherit;text-transform:inherit;letter-spacing:inherit;line-height:inherit;-ms-flex-preferred-size:100%;flex-basis:100%;padding-right:20px}.elementor-field-group .elementor-select-wrapper:before{content:"\e92a";font-family:eicons;font-size:15px;position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);right:10px;pointer-events:none;text-shadow:0 0 3px rgba(0,0,0,.3)}.elementor-field-group.elementor-field-type-select-multiple .elementor-select-wrapper:before{content:""}.elementor-field-subgroup{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-field-subgroup .elementor-field-option label{display:inline-block}.elementor-field-subgroup.elementor-subgroup-inline .elementor-field-option{padding-right:10px}.elementor-field-subgroup:not(.elementor-subgroup-inline) .elementor-field-option{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option label,.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option label,.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option label{display:inline}.elementor-field-label{cursor:pointer}.elementor-mark-required .elementor-field-label:after{content:"*";color:red;padding-left:.2em}.elementor-field-textual{line-height:1.4;font-size:15px;min-height:40px;padding:5px 14px;-webkit-border-radius:3px;border-radius:3px}.elementor-field-textual.elementor-size-xs{font-size:13px;min-height:33px;padding:4px 12px;-webkit-border-radius:2px;border-radius:2px}.elementor-field-textual.elementor-size-md{font-size:16px;min-height:47px;padding:6px 16px;-webkit-border-radius:4px;border-radius:4px}.elementor-field-textual.elementor-size-lg{font-size:18px;min-height:59px;padding:7px 20px;-webkit-border-radius:5px;border-radius:5px}.elementor-field-textual.elementor-size-xl{font-size:20px;min-height:72px;padding:8px 24px;-webkit-border-radius:6px;border-radius:6px}.elementor-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-button-align-stretch .e-form__buttons__wrapper{-ms-flex-preferred-size:50%;flex-basis:50%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-button-align-stretch .e-form__buttons__wrapper__button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-button-align-center .e-form__buttons,.elementor-button-align-center .elementor-field-type-submit{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-button-align-start .e-form__buttons,.elementor-button-align-start .elementor-field-type-submit{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-button-align-end .e-form__buttons,.elementor-button-align-end .elementor-field-type-submit{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:initial;flex-basis:auto}.elementor-button-align-center .e-form__buttons__wrapper,.elementor-button-align-end .e-form__buttons__wrapper,.elementor-button-align-start .e-form__buttons__wrapper{-webkit-box-flex:initial;-ms-flex-positive:initial;flex-grow:0}.elementor-button-align-center .e-form__buttons__wrapper,.elementor-button-align-center .e-form__buttons__wrapper__button,.elementor-button-align-end .e-form__buttons__wrapper,.elementor-button-align-end .e-form__buttons__wrapper__button,.elementor-button-align-start .e-form__buttons__wrapper,.elementor-button-align-start .e-form__buttons__wrapper__button{-ms-flex-preferred-size:initial;flex-basis:auto}@media screen and (max-width:1024px){.elementor-tablet-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-tablet-button-align-stretch .e-form__buttons__wrapper{-ms-flex-preferred-size:50%;flex-basis:50%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-tablet-button-align-stretch .e-form__buttons__wrapper__button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-tablet-button-align-center .e-form__buttons,.elementor-tablet-button-align-center .elementor-field-type-submit{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-tablet-button-align-start .e-form__buttons,.elementor-tablet-button-align-start .elementor-field-type-submit{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-tablet-button-align-end .e-form__buttons,.elementor-tablet-button-align-end .elementor-field-type-submit{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-tablet-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-tablet-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-tablet-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:initial;flex-basis:auto}.elementor-tablet-button-align-center .e-form__buttons__wrapper,.elementor-tablet-button-align-end .e-form__buttons__wrapper,.elementor-tablet-button-align-start .e-form__buttons__wrapper{-webkit-box-flex:initial;-ms-flex-positive:initial;flex-grow:0}.elementor-tablet-button-align-center .e-form__buttons__wrapper,.elementor-tablet-button-align-center .e-form__buttons__wrapper__button,.elementor-tablet-button-align-end .e-form__buttons__wrapper,.elementor-tablet-button-align-end .e-form__buttons__wrapper__button,.elementor-tablet-button-align-start .e-form__buttons__wrapper,.elementor-tablet-button-align-start .e-form__buttons__wrapper__button{-ms-flex-preferred-size:initial;flex-basis:auto}}@media screen and (max-width:767px){.elementor-mobile-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-mobile-button-align-stretch .e-form__buttons__wrapper{-ms-flex-preferred-size:50%;flex-basis:50%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-mobile-button-align-stretch .e-form__buttons__wrapper__button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-mobile-button-align-center .e-form__buttons,.elementor-mobile-button-align-center .elementor-field-type-submit{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-mobile-button-align-start .e-form__buttons,.elementor-mobile-button-align-start .elementor-field-type-submit{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-mobile-button-align-end .e-form__buttons,.elementor-mobile-button-align-end .elementor-field-type-submit{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-mobile-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-mobile-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-mobile-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:initial;flex-basis:auto}.elementor-mobile-button-align-center .e-form__buttons__wrapper,.elementor-mobile-button-align-end .e-form__buttons__wrapper,.elementor-mobile-button-align-start .e-form__buttons__wrapper{-webkit-box-flex:initial;-ms-flex-positive:initial;flex-grow:0}.elementor-mobile-button-align-center .e-form__buttons__wrapper,.elementor-mobile-button-align-center .e-form__buttons__wrapper__button,.elementor-mobile-button-align-end .e-form__buttons__wrapper,.elementor-mobile-button-align-end .e-form__buttons__wrapper__button,.elementor-mobile-button-align-start .e-form__buttons__wrapper,.elementor-mobile-button-align-start .e-form__buttons__wrapper__button{-ms-flex-preferred-size:initial;flex-basis:auto}}.elementor-error .elementor-field{border-color:#d9534f}.elementor-error .help-inline{color:#d9534f;font-size:.9em}.elementor-message{margin:10px 0;font-size:1em;line-height:1}.elementor-message:before{content:"\e90e";display:inline-block;font-family:eicons;font-weight:400;font-style:normal;vertical-align:middle;margin-right:5px}.elementor-message.elementor-message-danger{color:#d9534f}.elementor-message.elementor-message-danger:before{content:"\e87f"}.elementor-message.form-message-success{color:#5cb85c}.elementor-form .elementor-button{padding-top:0;padding-bottom:0;border:none}.elementor-form .elementor-button>span{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-form .elementor-button.elementor-size-xs{min-height:33px}.elementor-form .elementor-button.elementor-size-sm{min-height:40px}.elementor-form .elementor-button.elementor-size-md{min-height:47px}.elementor-form .elementor-button.elementor-size-lg{min-height:59px}.elementor-form .elementor-button.elementor-size-xl{min-height:72px}.elementor-element .elementor-widget-container{-webkit-transition:background .3s,border .3s,-webkit-border-radius .3s,-webkit-box-shadow .3s;transition:background .3s,border .3s,-webkit-border-radius .3s,-webkit-box-shadow .3s;-o-transition:background .3s,border .3s,border-radius .3s,box-shadow .3s;transition:background .3s,border .3s,border-radius .3s,box-shadow .3s;transition:background .3s,border .3s,border-radius .3s,box-shadow .3s,-webkit-border-radius .3s,-webkit-box-shadow .3s}.elementor-button{display:inline-block;line-height:1;background-color:#818a91;font-size:15px;padding:12px 24px;-webkit-border-radius:3px;border-radius:3px;color:#fff;fill:#fff;text-align:center;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.elementor-button:focus,.elementor-button:hover,.elementor-button:visited{color:#fff}.elementor-button-content-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-button-icon{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-button-icon svg{width:1em;height:auto}.elementor-button-icon .e-font-icon-svg{height:1em}.elementor-button-text{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10;display:inline-block}.elementor-button.elementor-size-xs{font-size:13px;padding:10px 20px;-webkit-border-radius:2px;border-radius:2px}.elementor-button.elementor-size-md{font-size:16px;padding:15px 30px;-webkit-border-radius:4px;border-radius:4px}.elementor-button.elementor-size-lg{font-size:18px;padding:20px 40px;-webkit-border-radius:5px;border-radius:5px}.elementor-button.elementor-size-xl{font-size:20px;padding:25px 50px;-webkit-border-radius:6px;border-radius:6px}.elementor-button .elementor-align-icon-right{margin-left:5px;-webkit-box-ordinal-group:16;-ms-flex-order:15;order:15}.elementor-button .elementor-align-icon-left{margin-right:5px;-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-button span{text-decoration:inherit}.elementor-menu-cart__toggle .elementor-button-icon{-webkit-box-ordinal-group:16;-ms-flex-order:15;order:15}.elementor-element.elementor-button-info .elementor-button{background-color:#5bc0de}.elementor-element.elementor-button-success .elementor-button{background-color:#5cb85c}.elementor-element.elementor-button-warning .elementor-button{background-color:#f0ad4e}.elementor-element.elementor-button-danger .elementor-button{background-color:#d9534f}.elementor-widget-button .elementor-button .elementor-button-info{background-color:#5bc0de}.elementor-widget-button .elementor-button .elementor-button-success{background-color:#5cb85c}.elementor-widget-button .elementor-button .elementor-button-warning{background-color:#f0ad4e}.elementor-widget-button .elementor-button .elementor-button-danger{background-color:#d9534f}.elementor-tab-title a{color:inherit}.elementor-view-stacked .elementor-icon{padding:.5em;background-color:#818a91;color:#fff;fill:#fff}.elementor-view-framed .elementor-icon{padding:.5em;color:#818a91;border:3px solid #818a91;background-color:transparent}.elementor-icon{display:inline-block;line-height:1;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;color:#818a91;font-size:50px;text-align:center}.elementor-icon:hover{color:#818a91}.elementor-icon i,.elementor-icon svg{width:1em;height:1em;position:relative;display:block}.elementor-icon i:before,.elementor-icon svg:before{position:absolute;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.elementor-icon i.fad{width:auto}.elementor-shape-circle .elementor-icon{-webkit-border-radius:50%;border-radius:50%}.slick-slider{-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-ms-touch-action:pan-y;touch-action:pan-y;-webkit-tap-highlight-color:transparent}.slick-list,.slick-slider{position:relative;display:block}.slick-list{overflow:hidden;margin:0;padding:0}.slick-list:focus{outline:none}.slick-list.dragging{cursor:pointer}.slick-slider .slick-list,.slick-slider .slick-track{-webkit-transform:translateZ(0);transform:translateZ(0)}.slick-track{position:relative;left:0;top:0;display:block}.slick-track:after,.slick-track:before{content:"";display:table}.slick-track:after{clear:both}.slick-loading .slick-track{visibility:hidden}.slick-slide{float:left;height:100%;min-height:1px;display:none}.elementor-slick-slider[dir=rtl] .slick-slide{float:right}.slick-slide img{display:block}.slick-slide.slick-loading img{display:none}.slick-slide.dragging img{pointer-events:none}.slick-initialized .slick-slide{display:block}.slick-loading .slick-slide{visibility:hidden}.slick-vertical .slick-slide{display:block;height:auto;border:1px solid transparent}.slick-arrow.slick-hidden{display:none}.elementor-slick-slider .slick-loading .slick-list{background:#fff}.elementor-slick-slider .slick-loading .slick-list:after{content:"\e8fb";font-family:eicons;position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite;font-size:25px;color:#a4afb7}.elementor-slick-slider .slick-next,.elementor-slick-slider .slick-prev{font-size:0;line-height:0;position:absolute;top:50%;display:block;width:20px;padding:0;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);cursor:pointer;color:transparent;border:none;outline:none;background:transparent}.elementor-slick-slider .slick-next:focus,.elementor-slick-slider .slick-next:hover,.elementor-slick-slider .slick-prev:focus,.elementor-slick-slider .slick-prev:hover{color:transparent;outline:none;background:transparent}.elementor-slick-slider .slick-next:focus:before,.elementor-slick-slider .slick-next:hover:before,.elementor-slick-slider .slick-prev:focus:before,.elementor-slick-slider .slick-prev:hover:before{opacity:1}.elementor-slick-slider .slick-next.slick-disabled:before,.elementor-slick-slider .slick-prev.slick-disabled:before{opacity:.25}.elementor-slick-slider .slick-next:before,.elementor-slick-slider .slick-prev:before{font-family:eicons;font-size:35px;line-height:1;opacity:.75;color:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.elementor-slick-slider .slick-prev{left:-25px}[dir=rtl] .elementor-slick-slider .slick-prev{left:auto;right:-25px}.elementor-slick-slider .slick-prev:before{content:"\e89f"}[dir=rtl] .elementor-slick-slider .slick-prev:before{content:"\e89e"}.elementor-slick-slider .slick-next{right:-25px}[dir=rtl] .elementor-slick-slider .slick-next{left:-25px;right:auto}.elementor-slick-slider .slick-next:before{content:"\e89e"}[dir=rtl] .elementor-slick-slider .slick-next:before{content:"\e89f"}.elementor-slick-slider .slick-dotted.slick-slider{margin-bottom:30px}.elementor-slick-slider ul.slick-dots{position:absolute;bottom:-25px;display:block;width:100%;padding:0;margin:0;list-style:none;text-align:center;line-height:1}.elementor-slick-slider ul.slick-dots li{position:relative;display:inline-block;width:20px;height:20px;margin:0;padding:0;cursor:pointer}.elementor-slick-slider ul.slick-dots li button{font-size:0;line-height:0;display:block;width:20px;height:20px;padding:5px;cursor:pointer;color:transparent;border:0;outline:none;background:transparent}.elementor-slick-slider ul.slick-dots li button:focus,.elementor-slick-slider ul.slick-dots li button:hover{outline:none}.elementor-slick-slider ul.slick-dots li button:focus:before,.elementor-slick-slider ul.slick-dots li button:hover:before{opacity:1}.elementor-slick-slider ul.slick-dots li button:before{font-family:eicons;font-size:6px;line-height:20px;position:absolute;top:0;left:0;width:20px;height:20px;content:"\e914";text-align:center;opacity:.25;color:#000;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.elementor-slick-slider ul.slick-dots li.slick-active button:before{opacity:.75;color:#000}.elementor-slick-slider .slick-arrows-inside .slick-prev{left:20px}[dir=rtl] .elementor-slick-slider .slick-arrows-inside .slick-prev{left:auto;right:20px}.elementor-slick-slider .slick-arrows-inside .slick-next{right:20px}[dir=rtl] .elementor-slick-slider .slick-arrows-inside .slick-next{left:20px;right:auto}.elementor-slick-slider .slick-dots-inside .slick-dots{bottom:5px}.elementor-slick-slider .slick-dots-inside.slick-dotted.slick-slider{margin-bottom:0}.elementor-slick-slider .slick-slider .slick-next,.elementor-slick-slider .slick-slider .slick-prev{z-index:1}.elementor-slick-slider .slick-slide img{margin:auto}.swiper-container{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;z-index:1}.swiper-container .swiper-slide figure{line-height:0}.swiper-container .elementor-lightbox-content-source{display:none}.swiper-container-no-flexbox .swiper-slide{float:left}.swiper-container-vertical>.swiper-wrapper{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;-o-transition-property:transform;transition-property:transform;transition-property:transform,-webkit-transform;-webkit-box-sizing:content-box;box-sizing:content-box}.swiper-container-android .swiper-slide,.swiper-wrapper{-webkit-transform:translateZ(0);transform:translateZ(0)}.swiper-container-multirow>.swiper-wrapper{-ms-flex-wrap:wrap;flex-wrap:wrap}.swiper-container-free-mode>.swiper-wrapper{-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out;margin:0 auto}.swiper-slide{-ms-flex-negative:0;flex-shrink:0;width:100%;height:100%;position:relative}.swiper-container-autoheight,.swiper-container-autoheight .swiper-slide{height:auto}.swiper-container-autoheight .swiper-wrapper{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-transition-property:height,-webkit-transform;transition-property:height,-webkit-transform;-o-transition-property:transform,height;transition-property:transform,height;transition-property:transform,height,-webkit-transform}.swiper-container .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}.swiper-wp8-horizontal{-ms-touch-action:pan-y;touch-action:pan-y}.swiper-wp8-vertical{-ms-touch-action:pan-x;touch-action:pan-x}.swiper-button-next,.swiper-button-prev{position:absolute;top:50%;width:27px;height:44px;margin-top:-22px;z-index:10;cursor:pointer;-webkit-background-size:27px 44px;background-size:27px 44px;background:no-repeat 50%}.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}.swiper-button-prev,.swiper-container-rtl .swiper-button-next{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z' fill='%23007aff'/%3E%3C/svg%3E");left:10px;right:auto}.swiper-button-prev.swiper-button-black,.swiper-container-rtl .swiper-button-next.swiper-button-black{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z'/%3E%3C/svg%3E")}.swiper-button-prev.swiper-button-white,.swiper-container-rtl .swiper-button-next.swiper-button-white{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z' fill='%23fff'/%3E%3C/svg%3E")}.swiper-button-next,.swiper-container-rtl .swiper-button-prev{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z' fill='%23007aff'/%3E%3C/svg%3E");right:10px;left:auto}.swiper-button-next.swiper-button-black,.swiper-container-rtl .swiper-button-prev.swiper-button-black{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z'/%3E%3C/svg%3E")}.swiper-button-next.swiper-button-white,.swiper-container-rtl .swiper-button-prev.swiper-button-white{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z' fill='%23fff'/%3E%3C/svg%3E")}.swiper-pagination{position:absolute;text-align:center;-webkit-transition:.3s;-o-transition:.3s;transition:.3s;-webkit-transform:translateZ(0);transform:translateZ(0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-container-horizontal>.swiper-pagination-bullets,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:5px;left:0;width:100%}.swiper-pagination-bullet{width:6px;height:6px;display:inline-block;-webkit-border-radius:50%;border-radius:50%;background:#000;opacity:.2}.swiper-pagination-fraction{color:#000}button.swiper-pagination-bullet{border:none;margin:0;padding:0;-webkit-box-shadow:none;box-shadow:none;appearance:none;-webkit-appearance:none;-moz-appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-white .swiper-pagination-bullet{background:#fff}.swiper-pagination-bullet-active{opacity:1}.swiper-pagination-white .swiper-pagination-bullet-active{background:#fff}.swiper-pagination-black .swiper-pagination-bullet-active{background:#000}.swiper-container-vertical>.swiper-pagination-bullets{right:10px;top:50%;-webkit-transform:translate3d(0,-50%,0);transform:translate3d(0,-50%,0)}.swiper-container-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{margin:5px 0;display:block}.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 6px}.swiper-pagination-progressbar{background:rgba(0,0,0,.25);position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:#000;position:absolute;left:0;top:0;width:100%;height:100%;-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);-webkit-transform-origin:left top;-ms-transform-origin:left top;transform-origin:left top}.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{-webkit-transform-origin:right top;-ms-transform-origin:right top;transform-origin:right top}.swiper-container-horizontal>.swiper-pagination-progressbar{width:100%;height:4px;left:0;top:0}.swiper-container-vertical>.swiper-pagination-progressbar{width:4px;height:100%;left:0;top:0}.swiper-pagination-progressbar.swiper-pagination-white{background:hsla(0,0%,100%,.5)}.swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill{background:#fff}.swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill{background:#000}.swiper-container-3d{-webkit-perspective:1200px;perspective:1200px}.swiper-container-3d .swiper-cube-shadow,.swiper-container-3d .swiper-slide,.swiper-container-3d .swiper-slide-shadow-bottom,.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top,.swiper-container-3d .swiper-wrapper{-webkit-transform-style:preserve-3d;transform-style:preserve-3d}.swiper-container-3d .swiper-slide-shadow-bottom,.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-container-3d .swiper-slide-shadow-left{background-image:-webkit-gradient(linear,right top,left top,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(right,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(right,rgba(0,0,0,.5),transparent);background-image:linear-gradient(270deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-right{background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(left,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(left,rgba(0,0,0,.5),transparent);background-image:linear-gradient(90deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-top{background-image:-webkit-gradient(linear,left bottom,left top,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(bottom,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(bottom,rgba(0,0,0,.5),transparent);background-image:linear-gradient(0deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-bottom{background-image:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(top,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(top,rgba(0,0,0,.5),transparent);background-image:linear-gradient(180deg,rgba(0,0,0,.5),transparent)}.swiper-container-coverflow .swiper-wrapper,.swiper-container-flip .swiper-wrapper{-ms-perspective:1200px}.swiper-container-cube,.swiper-container-flip{overflow:visible}.swiper-container-cube .swiper-slide,.swiper-container-flip .swiper-slide{pointer-events:none;z-index:1}.swiper-container-cube .swiper-slide .swiper-slide,.swiper-container-flip .swiper-slide .swiper-slide{pointer-events:none}.swiper-container-cube .swiper-slide-active,.swiper-container-cube .swiper-slide-active .swiper-slide-active,.swiper-container-flip .swiper-slide-active,.swiper-container-flip .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-container-cube .swiper-slide-shadow-bottom,.swiper-container-cube .swiper-slide-shadow-left,.swiper-container-cube .swiper-slide-shadow-right,.swiper-container-cube .swiper-slide-shadow-top,.swiper-container-flip .swiper-slide-shadow-bottom,.swiper-container-flip .swiper-slide-shadow-left,.swiper-container-flip .swiper-slide-shadow-right,.swiper-container-flip .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-container-cube .swiper-slide{visibility:hidden;-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0;width:100%;height:100%}.swiper-container-cube.swiper-container-rtl .swiper-slide{-webkit-transform-origin:100% 0;-ms-transform-origin:100% 0;transform-origin:100% 0}.swiper-container-cube .swiper-slide-active,.swiper-container-cube .swiper-slide-next,.swiper-container-cube .swiper-slide-next+.swiper-slide,.swiper-container-cube .swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-container-cube .swiper-cube-shadow{position:absolute;left:0;bottom:0;width:100%;height:100%;background:#000;opacity:.6;-webkit-filter:blur(50px);filter:blur(50px);z-index:0}.swiper-container-fade.swiper-container-free-mode .swiper-slide{-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out}.swiper-container-fade .swiper-slide{pointer-events:none;-webkit-transition-property:opacity;-o-transition-property:opacity;transition-property:opacity}.swiper-container-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-container-fade .swiper-slide-active,.swiper-container-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-zoom-container{width:100%;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;text-align:center}.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{max-width:100%;max-height:100%;-o-object-fit:contain;object-fit:contain}.swiper-scrollbar{-webkit-border-radius:10px;border-radius:10px;position:relative;-ms-touch-action:none;background:rgba(0,0,0,.1)}.swiper-container-horizontal>.swiper-scrollbar{position:absolute;left:1%;bottom:3px;z-index:50;height:5px;width:98%}.swiper-container-vertical>.swiper-scrollbar{position:absolute;right:3px;top:1%;z-index:50;width:5px;height:98%}.swiper-scrollbar-drag{height:100%;width:100%;position:relative;background:rgba(0,0,0,.5);-webkit-border-radius:10px;border-radius:10px;left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.elementor-pagination-position-outside .swiper-container{padding-bottom:30px}.elementor-pagination-position-outside .elementor-swiper-button{top:calc(50% - 30px / 2)}.elementor-swiper{position:relative}.elementor-main-swiper{position:static}.elementor-arrows-position-outside .swiper-container{width:calc(100% - 60px)}.elementor-arrows-position-outside .elementor-swiper-button-prev{left:0}.elementor-arrows-position-outside .elementor-swiper-button-next{right:0}.swiper-image-stretch .swiper-slide .swiper-slide-image{width:100%}.elementor-swiper-button{position:absolute;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;z-index:1;cursor:pointer;font-size:25px;color:hsla(0,0%,93.3%,.9);top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}.elementor-swiper-button-prev{left:10px}.elementor-swiper-button-next{right:10px}.elementor-swiper-button.swiper-button-disabled{opacity:.3}.swiper-container-cube .elementor-swiper-button{-webkit-transform:translate3d(0,-50%,1px);transform:translate3d(0,-50%,1px)}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;-webkit-transform-origin:50%;-ms-transform-origin:50%;transform-origin:50%;-webkit-animation:swiper-preloader-spin 1s steps(12) infinite;animation:swiper-preloader-spin 1s steps(12) infinite}.swiper-lazy-preloader:after{display:block;content:"";width:100%;height:100%;-webkit-background-size:100% 100%;background-size:100%;background:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath id='a' stroke='%236c6c6c' stroke-width='11' stroke-linecap='round' d='M60 7v20'/%3E%3C/defs%3E%3Cuse xlink:href='%23a' opacity='.27'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(30 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(60 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(90 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(120 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(150 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.37' transform='rotate(180 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.46' transform='rotate(210 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.56' transform='rotate(240 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.66' transform='rotate(270 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.75' transform='rotate(300 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.85' transform='rotate(330 60 60)'/%3E%3C/svg%3E") no-repeat 50%}.swiper-lazy-preloader-white:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath id='a' stroke='%23fff' stroke-width='11' stroke-linecap='round' d='M60 7v20'/%3E%3C/defs%3E%3Cuse xlink:href='%23a' opacity='.27'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(30 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(60 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(90 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(120 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(150 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.37' transform='rotate(180 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.46' transform='rotate(210 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.56' transform='rotate(240 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.66' transform='rotate(270 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.75' transform='rotate(300 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.85' transform='rotate(330 60 60)'/%3E%3C/svg%3E")}@-webkit-keyframes swiper-preloader-spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes swiper-preloader-spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.elementor-lightbox{--lightbox-ui-color:hsla(0,0%,93.3%,0.9);--lightbox-ui-color-hover:#fff;--lightbox-text-color:var(--lightbox-ui-color);--lightbox-header-icons-size:20px;--lightbox-navigation-icons-size:25px}.elementor-lightbox .dialog-header{display:none}.elementor-lightbox .dialog-widget-content{background:none;-webkit-box-shadow:none;box-shadow:none;width:100%;height:100%}.elementor-lightbox .dialog-message{-webkit-animation-duration:.3s;animation-duration:.3s}.elementor-lightbox .dialog-message:not(.elementor-fit-aspect-ratio){height:100%}.elementor-lightbox .dialog-message.dialog-lightbox-message{padding:0}.elementor-lightbox .dialog-lightbox-close-button{cursor:pointer;position:absolute;font-size:var(--lightbox-header-icons-size);right:.75em;margin-top:13px;padding:.25em;z-index:2;line-height:1}.elementor-lightbox .dialog-lightbox-close-button,.elementor-lightbox .elementor-swiper-button{color:var(--lightbox-ui-color);-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;opacity:1}.elementor-lightbox .dialog-lightbox-close-button:hover,.elementor-lightbox .elementor-swiper-button:hover{color:var(--lightbox-ui-color-hover)}.elementor-lightbox .swiper-container{height:100%}.elementor-lightbox .elementor-lightbox-item{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;position:relative;padding:70px;-webkit-box-sizing:border-box;box-sizing:border-box;height:100%;margin:auto}@media (max-width:767px){.elementor-lightbox .elementor-lightbox-item{padding:70px 0}}.elementor-lightbox .elementor-lightbox-image{max-height:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.elementor-lightbox .elementor-lightbox-image,.elementor-lightbox .elementor-lightbox-image:hover{opacity:1;-webkit-filter:none;filter:none;border:none}.elementor-lightbox .elementor-lightbox-image,.elementor-lightbox .elementor-video-container{-webkit-box-shadow:0 0 30px rgba(0,0,0,.3),0 0 8px -5px rgba(0,0,0,.3);box-shadow:0 0 30px rgba(0,0,0,.3),0 0 8px -5px rgba(0,0,0,.3);-webkit-border-radius:2px;border-radius:2px}.elementor-lightbox .elementor-video-container{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}@media (min-width:1025px){.elementor-lightbox .elementor-video-container{width:75%}}@media (max-width:1024px){.elementor-lightbox .elementor-video-container{width:100%}}@media (min-width:768px) and (max-width:1024px){.elementor-lightbox .elementor-aspect-ratio-916 .elementor-video-container{width:70%}}.elementor-lightbox .elementor-swiper-button:focus{outline-width:1px}.elementor-lightbox .elementor-swiper-button-next,.elementor-lightbox .elementor-swiper-button-prev{height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:15%;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;font-size:var(--lightbox-navigation-icons-size)}.elementor-lightbox .elementor-swiper-button-prev{left:0}.elementor-lightbox .elementor-swiper-button-next{right:0}@media (max-width:767px){.elementor-lightbox .elementor-swiper-button:focus{outline:none}.elementor-lightbox .elementor-swiper-button-next,.elementor-lightbox .elementor-swiper-button-prev{width:20%}.elementor-lightbox .elementor-swiper-button-next i,.elementor-lightbox .elementor-swiper-button-prev i{padding:10px;background-color:rgba(0,0,0,.5)}.elementor-lightbox .elementor-swiper-button-prev{left:0;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-lightbox .elementor-swiper-button-next{right:0;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}}.elementor-slideshow__counter{color:currentColor;font-size:.75em;width:-webkit-max-content;width:-moz-max-content;width:max-content}.elementor-slideshow__footer,.elementor-slideshow__header{position:absolute;left:0;width:100%;padding:15px 20px;-webkit-transition:.3s;-o-transition:.3s;transition:.3s}.elementor-slideshow__footer{color:var(--lightbox-text-color)}.elementor-slideshow__header{color:var(--lightbox-ui-color);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;font-size:var(--lightbox-header-icons-size);padding-left:1em;padding-right:2.6em;top:0;-webkit-box-align:center;-ms-flex-align:center;align-items:center;z-index:10}.elementor-slideshow__header>i{font-size:inherit;cursor:pointer;padding:.25em;margin:0 .35em}.elementor-slideshow__header>i:hover{color:var(--lightbox-ui-color-hover)}.elementor-slideshow__header .elementor-slideshow__counter{margin-right:auto}.elementor-slideshow__header .elementor-icon-share{z-index:5}.elementor-slideshow__share-menu{background-color:transparent;width:0;height:0;position:absolute;overflow:hidden;-webkit-transition:background-color .4s;-o-transition:background-color .4s;transition:background-color .4s}.elementor-slideshow__share-menu .elementor-slideshow__share-links a{color:#2c2c2c}.elementor-slideshow__share-links{display:block;position:absolute;min-width:200px;right:2.8em;top:3em;background-color:#fff;-webkit-border-radius:3px;border-radius:3px;padding:14px 20px;-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);opacity:0;-webkit-transform-origin:90% 10%;-ms-transform-origin:90% 10%;transform-origin:90% 10%;-webkit-transition:all .25s .1s;-o-transition:all .25s .1s;transition:all .25s .1s;-webkit-box-shadow:0 4px 15px rgba(0,0,0,.3);box-shadow:0 4px 15px rgba(0,0,0,.3)}.elementor-slideshow__share-links a{text-align:left;color:#55595c;font-size:12px;line-height:2.5;display:block;opacity:0;-webkit-transition:opacity .5s .1s;-o-transition:opacity .5s .1s;transition:opacity .5s .1s}.elementor-slideshow__share-links a:hover{color:#000}.elementor-slideshow__share-links a i{font-size:1.25em;margin-right:.75em}.elementor-slideshow__share-links:before{content:"";display:block;position:absolute;top:1px;right:.5em;border:.45em solid transparent;border-bottom-color:#fff;-webkit-transform:translateY(-100%) scaleX(.7);-ms-transform:translateY(-100%) scaleX(.7);transform:translateY(-100%) scaleX(.7)}.elementor-slideshow__footer{bottom:0;z-index:5;position:fixed}.elementor-slideshow__description,.elementor-slideshow__title{margin:0}.elementor-slideshow__title{font-size:16px;font-weight:700}.elementor-slideshow__description{font-size:14px}.elementor-slideshow--ui-hidden .elementor-slideshow__footer,.elementor-slideshow--ui-hidden .elementor-slideshow__header{opacity:0;pointer-events:none}.elementor-slideshow--ui-hidden .elementor-swiper-button-next,.elementor-slideshow--ui-hidden .elementor-swiper-button-prev{opacity:0}.elementor-slideshow--fullscreen-mode .elementor-video-container{width:100%}.elementor-slideshow--zoom-mode .elementor-slideshow__footer,.elementor-slideshow--zoom-mode .elementor-slideshow__header{background-color:rgba(0,0,0,.5)}.elementor-slideshow--zoom-mode .elementor-swiper-button-next,.elementor-slideshow--zoom-mode .elementor-swiper-button-prev{opacity:0;pointer-events:none}.elementor-slideshow--share-mode .elementor-slideshow__share-menu{top:0;left:0;width:100vw;height:100vh;opacity:1;cursor:default;background-color:rgba(0,0,0,.5)}.elementor-slideshow--share-mode .elementor-slideshow__share-links{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}.elementor-slideshow--share-mode .elementor-slideshow__share-links,.elementor-slideshow--share-mode .elementor-slideshow__share-links a{opacity:1}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-twitter{color:#1da1f2}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-facebook{color:#3b5998}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-pinterest{color:#bd081c}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-download-bold{color:#a4afb7}.elementor-slideshow--share-mode .eicon-share-arrow{z-index:2}.animated{-webkit-animation-duration:1.25s;animation-duration:1.25s}.animated.animated-slow{-webkit-animation-duration:2s;animation-duration:2s}.animated.animated-fast{-webkit-animation-duration:.75s;animation-duration:.75s}.animated.infinite{-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}.animated.reverse{animation-direction:reverse;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}@media (prefers-reduced-motion:reduce){.animated{-webkit-animation:none;animation:none}}.elementor-shape{overflow:hidden;position:absolute;left:0;width:100%;line-height:0;direction:ltr}.elementor-shape-top{top:-1px}.elementor-shape-top:not([data-negative=false]) svg{z-index:-1}.elementor-shape-bottom{bottom:-1px}.elementor-shape-bottom:not([data-negative=true]) svg{z-index:-1}.elementor-shape[data-negative=false].elementor-shape-bottom,.elementor-shape[data-negative=true].elementor-shape-top{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.elementor-shape svg{display:block;width:calc(100% + 1.3px);position:relative;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.elementor-shape .elementor-shape-fill{fill:#fff;-webkit-transform-origin:center;-ms-transform-origin:center;transform-origin:center;-webkit-transform:rotateY(0deg);transform:rotateY(0deg)}#wp-admin-bar-elementor_edit_page .ab-submenu .ab-item{display:-webkit-box;display:-ms-flexbox;display:flex;width:200px}#wp-admin-bar-elementor_edit_page .elementor-edit-link-title{white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;width:100%}#wp-admin-bar-elementor_edit_page .elementor-edit-link-type{background:#55595c;font-size:11px;line-height:9px;margin-top:6px;padding:4px 8px;-webkit-border-radius:3px;border-radius:3px}.page-template-elementor_canvas.elementor-page:before{display:none}.elementor-post__thumbnail__link{-webkit-transition:none;-o-transition:none;transition:none}#left-area ul.elementor-icon-list-items,.elementor-edit-area .elementor-element ul.elementor-icon-list-items,.elementor .elementor-element ul.elementor-icon-list-items{padding:0}#wpadminbar *{font-style:normal}.e--ua-appleWebkit.rtl{--flex-right:flex-start}.e--ua-appleWebkit .elementor-share-buttons--align-right,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-right{--justify-content:var(--flex-right,flex-end)}.e--ua-appleWebkit .elementor-share-buttons--align-center,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-center{--justify-content:center}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-justify .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-right .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-right .elementor-grid{width:auto;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:var(--justify-content,space-between);-ms-flex-pack:var(--justify-content,space-between);justify-content:var(--justify-content,space-between);margin-left:calc(-.5 * var(--grid-column-gap));margin-right:calc(-.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-justify .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-right .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-right .elementor-grid-item{margin-left:calc(.5 * var(--grid-column-gap));margin-right:calc(.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid{display:inline-block}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid-item{margin-left:0;margin-right:0}@media (max-width:1024px){.e--ua-appleWebkit .elementor-share-buttons-tablet--align-right,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-tablet-right{--justify-content:var(--flex-right,flex-end)}.e--ua-appleWebkit .elementor-share-buttons-tablet--align-center,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-tablet-center{--justify-content:center}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-justify .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-right .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-right .elementor-grid{width:auto;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:var(--justify-content,space-between);-ms-flex-pack:var(--justify-content,space-between);justify-content:var(--justify-content,space-between);margin-left:calc(-.5 * var(--grid-column-gap));margin-right:calc(-.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-justify .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-right .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-right .elementor-grid-item{margin-left:calc(.5 * var(--grid-column-gap));margin-right:calc(.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid{display:inline-block}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid-item{margin-left:0;margin-right:0}}@media (max-width:767px){.e--ua-appleWebkit .elementor-share-buttons-mobile--align-right,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-mobile-right{--justify-content:var(--flex-right,flex-end)}.e--ua-appleWebkit .elementor-share-buttons-mobile--align-center,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-mobile-center{--justify-content:center}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-justify .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-right .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-right .elementor-grid{width:auto;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:var(--justify-content,space-between);-ms-flex-pack:var(--justify-content,space-between);justify-content:var(--justify-content,space-between);margin-left:calc(-.5 * var(--grid-column-gap));margin-right:calc(-.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-justify .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-right .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-right .elementor-grid-item{margin-left:calc(.5 * var(--grid-column-gap));margin-right:calc(.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid{display:inline-block}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid-item{margin-left:0;margin-right:0}}@media (max-width:767px){.elementor .elementor-hidden-mobile,.elementor .elementor-hidden-phone{display:none}}@media (min-width:-1px) and (max-width:-1px){.elementor .elementor-hidden-mobile_extra{display:none}}@media (min-width:768px) and (max-width:1024px){.elementor .elementor-hidden-tablet{display:none}}@media (min-width:-1px) and (max-width:-1px){.elementor .elementor-hidden-laptop,.elementor .elementor-hidden-tablet_extra{display:none}}@media (min-width:1025px) and (max-width:99999px){.elementor .elementor-hidden-desktop{display:none}}@media (min-width:-1px){.elementor .elementor-hidden-widescreen{display:none}}.elementor-widget-text-path{font-size:20px;text-align:var(--alignment,left)}.elementor-widget-text-path svg{width:var(--width);max-width:100%;height:auto;overflow:visible;word-spacing:var(--word-spacing);-webkit-transform:rotate(var(--rotate,0)) scaleX(var(--scale-x,1)) scaleY(var(--scale-y,1));-ms-transform:rotate(var(--rotate,0)) scaleX(var(--scale-x,1)) scaleY(var(--scale-y,1));transform:rotate(var(--rotate,0)) scaleX(var(--scale-x,1)) scaleY(var(--scale-y,1))}.elementor-widget-text-path svg path{vector-effect:non-scaling-stroke;fill:var(--path-fill,transparent);stroke:var(--stroke-color,transparent);stroke-width:var(--stroke-width,1px);-webkit-transition:var(--stroke-transition) stroke,var(--stroke-transition) fill;-o-transition:var(--stroke-transition) stroke,var(--stroke-transition) fill;transition:var(--stroke-transition) stroke,var(--stroke-transition) fill}.elementor-widget-text-path svg:hover path{--path-fill:var(--path-fill-hover);--stroke-color:var(--stroke-color-hover);--stroke-width:var(--stroke-width-hover)}.elementor-widget-text-path svg text{--fill:var(--text-color);fill:var(--fill);direction:var(--direction,ltr);-webkit-transition:var(--transition) stroke,var(--transition) stroke-width,var(--transition) fill;-o-transition:var(--transition) stroke,var(--transition) stroke-width,var(--transition) fill;transition:var(--transition) stroke,var(--transition) stroke-width,var(--transition) fill}.elementor-widget-text-path svg text:hover{--color:var(--text-color-hover,var(--text-color));--fill:var(--color);color:var(--color)}.elementor-accordion{text-align:left}.elementor-accordion .elementor-accordion-item{border:1px solid #d4d4d4}.elementor-accordion .elementor-accordion-item+.elementor-accordion-item{border-top:none}.elementor-accordion .elementor-tab-title{margin:0;padding:15px 20px;font-weight:700;line-height:1;cursor:pointer;outline:none}.elementor-accordion .elementor-tab-title .elementor-accordion-icon{display:inline-block;width:1.5em}.elementor-accordion .elementor-tab-title .elementor-accordion-icon svg{width:1em;height:1em}.elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-right{float:right;text-align:right}.elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-left{float:left;text-align:left}.elementor-accordion .elementor-tab-title .elementor-accordion-icon .elementor-accordion-icon-closed{display:block}.elementor-accordion .elementor-tab-title .elementor-accordion-icon .elementor-accordion-icon-opened,.elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-closed{display:none}.elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-opened{display:block}.elementor-accordion .elementor-tab-content{display:none;padding:15px 20px;border-top:1px solid #d4d4d4}@media (max-width:767px){.elementor-accordion .elementor-tab-title{padding:12px 15px}.elementor-accordion .elementor-tab-title .elementor-accordion-icon{width:1.2em}.elementor-accordion .elementor-tab-content{padding:7px 15px}}.elementor-alert{padding:15px;border-left:5px solid transparent;position:relative;text-align:left}.elementor-alert .elementor-alert-title{display:block;font-weight:700}.elementor-alert .elementor-alert-description{font-size:13px}.elementor-alert button.elementor-alert-dismiss{position:absolute;right:10px;top:10px;padding:3px;font-size:20px;line-height:1;background:transparent;color:inherit;border:none;cursor:pointer}.elementor-alert.elementor-alert-info{color:#31708f;background-color:#d9edf7;border-color:#bcdff1}.elementor-alert.elementor-alert-success{color:#3c763d;background-color:#dff0d8;border-color:#cae6be}.elementor-alert.elementor-alert-warning{color:#8a6d3b;background-color:#fcf8e3;border-color:#f9f0c3}.elementor-alert.elementor-alert-danger{color:#a94442;background-color:#f2dede;border-color:#e8c4c4}@media (max-width:767px){.elementor-alert{padding:10px}.elementor-alert button.elementor-alert-dismiss{right:7px;top:7px}}.elementor-counter .elementor-counter-number-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;font-size:69px;font-weight:600;line-height:1}.elementor-counter .elementor-counter-number-prefix,.elementor-counter .elementor-counter-number-suffix{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;white-space:pre-wrap}.elementor-counter .elementor-counter-number-prefix{text-align:right}.elementor-counter .elementor-counter-number-suffix{text-align:left}.elementor-counter .elementor-counter-title{text-align:center;font-size:19px;font-weight:400;line-height:2.5}.elementor-widget-divider{--divider-border-style:none;--divider-border-width:1px;--divider-color:#2c2c2c;--divider-icon-size:20px;--divider-element-spacing:10px;--divider-pattern-height:24px;--divider-pattern-size:20px;--divider-pattern-url:none;--divider-pattern-repeat:repeat-x}.elementor-widget-divider .elementor-divider{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget-divider .elementor-divider__text{font-size:15px;line-height:1;max-width:95%}.elementor-widget-divider .elementor-divider__element{margin:0 var(--divider-element-spacing);-ms-flex-negative:0;flex-shrink:0}.elementor-widget-divider .elementor-icon{font-size:var(--divider-icon-size)}.elementor-widget-divider .elementor-divider-separator{display:-webkit-box;display:-ms-flexbox;display:flex;margin:0;direction:ltr}.elementor-widget-divider--view-line_icon .elementor-divider-separator,.elementor-widget-divider--view-line_text .elementor-divider-separator{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-widget-divider--view-line_icon .elementor-divider-separator:after,.elementor-widget-divider--view-line_icon .elementor-divider-separator:before,.elementor-widget-divider--view-line_text .elementor-divider-separator:after,.elementor-widget-divider--view-line_text .elementor-divider-separator:before{display:block;content:"";border-bottom:0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;border-top:var(--divider-border-width) var(--divider-border-style) var(--divider-color)}.elementor-widget-divider--element-align-left .elementor-divider .elementor-divider-separator>.elementor-divider__svg:first-of-type{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:100;flex-shrink:100}.elementor-widget-divider--element-align-left .elementor-divider-separator:before{content:none}.elementor-widget-divider--element-align-left .elementor-divider__element{margin-left:0}.elementor-widget-divider--element-align-right .elementor-divider .elementor-divider-separator>.elementor-divider__svg:last-of-type{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:100;flex-shrink:100}.elementor-widget-divider--element-align-right .elementor-divider-separator:after{content:none}.elementor-widget-divider--element-align-right .elementor-divider__element{margin-right:0}.elementor-widget-divider:not(.elementor-widget-divider--view-line_text):not(.elementor-widget-divider--view-line_icon) .elementor-divider-separator{border-top:var(--divider-border-width) var(--divider-border-style) var(--divider-color)}.elementor-widget-divider--separator-type-pattern{--divider-border-style:none}.elementor-widget-divider--separator-type-pattern.elementor-widget-divider--view-line .elementor-divider-separator,.elementor-widget-divider--separator-type-pattern:not(.elementor-widget-divider--view-line) .elementor-divider-separator:after,.elementor-widget-divider--separator-type-pattern:not(.elementor-widget-divider--view-line) .elementor-divider-separator:before,.elementor-widget-divider--separator-type-pattern:not([class*=elementor-widget-divider--view]) .elementor-divider-separator{width:100%;min-height:var(--divider-pattern-height);-webkit-mask-size:var(--divider-pattern-size) 100%;mask-size:var(--divider-pattern-size) 100%;-webkit-mask-repeat:var(--divider-pattern-repeat);mask-repeat:var(--divider-pattern-repeat);background-color:var(--divider-color);-webkit-mask-image:var(--divider-pattern-url);mask-image:var(--divider-pattern-url)}.elementor-widget-divider--no-spacing{--divider-pattern-size:auto}.elementor-widget-divider--bg-round{--divider-pattern-repeat:round}.rtl .elementor-widget-divider .elementor-divider__text{direction:rtl}.elementor-image-gallery .gallery-item{display:inline-block;text-align:center;vertical-align:top;width:100%;max-width:100%;margin:0 auto}.elementor-image-gallery .gallery-item img{margin:0 auto}.elementor-image-gallery .gallery-item .gallery-caption{margin:0}.elementor-image-gallery figure img{display:block}.elementor-image-gallery figure figcaption{width:100%}.gallery-spacing-custom .elementor-image-gallery .gallery-icon{padding:0}@media (min-width:768px){.elementor-image-gallery .gallery-columns-2 .gallery-item{max-width:50%}.elementor-image-gallery .gallery-columns-3 .gallery-item{max-width:33.33%}.elementor-image-gallery .gallery-columns-4 .gallery-item{max-width:25%}.elementor-image-gallery .gallery-columns-5 .gallery-item{max-width:20%}.elementor-image-gallery .gallery-columns-6 .gallery-item{max-width:16.666%}.elementor-image-gallery .gallery-columns-7 .gallery-item{max-width:14.28%}.elementor-image-gallery .gallery-columns-8 .gallery-item{max-width:12.5%}.elementor-image-gallery .gallery-columns-9 .gallery-item{max-width:11.11%}.elementor-image-gallery .gallery-columns-10 .gallery-item{max-width:10%}}@media (min-width:480px) and (max-width:767px){.elementor-image-gallery .gallery.gallery-columns-2 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-3 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-4 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-5 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-6 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-7 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-8 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-9 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-10 .gallery-item{max-width:50%}}@media (max-width:479px){.elementor-image-gallery .gallery.gallery-columns-2 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-3 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-4 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-5 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-6 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-7 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-8 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-9 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-10 .gallery-item{max-width:100%}}.elementor-widget-google_maps .elementor-widget-container{overflow:hidden}.elementor-widget-google_maps iframe{height:300px}.elementor-heading-title{padding:0;margin:0;line-height:1}.elementor-widget-heading .elementor-heading-title[class*=elementor-size-]>a{color:inherit;font-size:inherit;line-height:inherit}.elementor-widget-heading .elementor-heading-title.elementor-size-small{font-size:15px}.elementor-widget-heading .elementor-heading-title.elementor-size-medium{font-size:19px}.elementor-widget-heading .elementor-heading-title.elementor-size-large{font-size:29px}.elementor-widget-heading .elementor-heading-title.elementor-size-xl{font-size:39px}.elementor-widget-heading .elementor-heading-title.elementor-size-xxl{font-size:59px}@media (min-width:768px){.elementor-widget-icon-box.elementor-position-left .elementor-icon-box-wrapper,.elementor-widget-icon-box.elementor-position-right .elementor-icon-box-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget-icon-box.elementor-position-left .elementor-icon-box-icon,.elementor-widget-icon-box.elementor-position-right .elementor-icon-box-icon{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.elementor-widget-icon-box.elementor-position-right .elementor-icon-box-wrapper{text-align:right;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-widget-icon-box.elementor-position-left .elementor-icon-box-wrapper{text-align:left;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.elementor-widget-icon-box.elementor-position-top .elementor-icon-box-img{margin:auto}.elementor-widget-icon-box.elementor-vertical-align-top .elementor-icon-box-wrapper{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.elementor-widget-icon-box.elementor-vertical-align-middle .elementor-icon-box-wrapper{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-widget-icon-box.elementor-vertical-align-bottom .elementor-icon-box-wrapper{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}}@media (max-width:767px){.elementor-widget-icon-box .elementor-icon-box-icon{margin-left:auto!important;margin-right:auto!important;margin-bottom:15px}}.elementor-widget-icon-box .elementor-icon-box-wrapper{text-align:center}.elementor-widget-icon-box .elementor-icon-box-title a{color:inherit}.elementor-widget-icon-box .elementor-icon-box-content{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-widget-icon-box .elementor-icon-box-description{margin:0}.elementor-widget.elementor-icon-list--layout-inline .elementor-widget-container{overflow:hidden}.elementor-widget .elementor-icon-list-items.elementor-inline-items{margin-right:-8px;margin-left:-8px}.elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-right:8px;margin-left:8px}.elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{width:auto;left:auto;right:auto;position:relative;height:100%;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);border-top:0;border-bottom:0;border-right:0;border-left-width:1px;border-style:solid;right:-8px}.elementor-widget .elementor-icon-list-items{list-style-type:none;margin:0;padding:0}.elementor-widget .elementor-icon-list-item{margin:0;padding:0;position:relative}.elementor-widget .elementor-icon-list-item:after{position:absolute;bottom:0;width:100%}.elementor-widget .elementor-icon-list-item,.elementor-widget .elementor-icon-list-item a{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-size:inherit}.elementor-widget .elementor-icon-list-icon+.elementor-icon-list-text{-ms-flex-item-align:center;align-self:center;padding-left:5px}.elementor-widget .elementor-icon-list-icon{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget .elementor-icon-list-icon svg{width:var(--e-icon-list-icon-size,1em);height:var(--e-icon-list-icon-size,1em)}.elementor-widget .elementor-icon-list-icon i{width:1.25em;font-size:var(--e-icon-list-icon-size)}.elementor-widget.elementor-widget-icon-list .elementor-icon-list-icon{text-align:var(--e-icon-list-icon-align)}.elementor-widget.elementor-widget-icon-list .elementor-icon-list-icon svg{margin:var(--e-icon-list-icon-margin,0 calc(var(--e-icon-list-icon-size, 1em) * .25) 0 0)}.elementor-widget.elementor-list-item-link-full_width a{width:100%}.elementor-widget.elementor-align-center .elementor-icon-list-item,.elementor-widget.elementor-align-center .elementor-icon-list-item a{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget.elementor-align-center .elementor-inline-items{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-align-left .elementor-icon-list-item,.elementor-widget.elementor-align-left .elementor-icon-list-item a{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;text-align:left}.elementor-widget.elementor-align-left .elementor-inline-items{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-widget.elementor-align-right .elementor-icon-list-item,.elementor-widget.elementor-align-right .elementor-icon-list-item a{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;text-align:right}.elementor-widget.elementor-align-right .elementor-icon-list-items{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-widget:not(.elementor-align-right) .elementor-icon-list-item:after{left:0}.elementor-widget:not(.elementor-align-left) .elementor-icon-list-item:after{right:0}@media (max-width:1024px){.elementor-widget.elementor-tablet-align-center .elementor-icon-list-item,.elementor-widget.elementor-tablet-align-center .elementor-icon-list-item a,.elementor-widget.elementor-tablet-align-center .elementor-icon-list-items{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-tablet-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget.elementor-tablet-align-left .elementor-icon-list-items{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-widget.elementor-tablet-align-left .elementor-icon-list-item,.elementor-widget.elementor-tablet-align-left .elementor-icon-list-item a{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;text-align:left}.elementor-widget.elementor-tablet-align-right .elementor-icon-list-items{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-widget.elementor-tablet-align-right .elementor-icon-list-item,.elementor-widget.elementor-tablet-align-right .elementor-icon-list-item a{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;text-align:right}.elementor-widget:not(.elementor-tablet-align-right) .elementor-icon-list-item:after{left:0}.elementor-widget:not(.elementor-tablet-align-left) .elementor-icon-list-item:after{right:0}}@media (max-width:767px){.elementor-widget.elementor-mobile-align-center .elementor-icon-list-item,.elementor-widget.elementor-mobile-align-center .elementor-icon-list-item a,.elementor-widget.elementor-mobile-align-center .elementor-icon-list-items{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-mobile-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget.elementor-mobile-align-left .elementor-icon-list-items{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-widget.elementor-mobile-align-left .elementor-icon-list-item,.elementor-widget.elementor-mobile-align-left .elementor-icon-list-item a{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;text-align:left}.elementor-widget.elementor-mobile-align-right .elementor-icon-list-items{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-widget.elementor-mobile-align-right .elementor-icon-list-item,.elementor-widget.elementor-mobile-align-right .elementor-icon-list-item a{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;text-align:right}.elementor-widget:not(.elementor-mobile-align-right) .elementor-icon-list-item:after{left:0}.elementor-widget:not(.elementor-mobile-align-left) .elementor-icon-list-item:after{right:0}}.elementor-widget-image{text-align:center}.elementor-widget-image a{display:inline-block}.elementor-widget-image a img[src$=".svg"]{width:48px}.elementor-widget-image img{vertical-align:middle;display:inline-block}.elementor-widget-image-box .elementor-image-box-content{width:100%}@media (min-width:768px){.elementor-widget-image-box.elementor-position-left .elementor-image-box-wrapper,.elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper{text-align:right;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-widget-image-box.elementor-position-left .elementor-image-box-wrapper{text-align:left;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.elementor-widget-image-box.elementor-position-top .elementor-image-box-img{margin:auto}.elementor-widget-image-box.elementor-vertical-align-top .elementor-image-box-wrapper{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.elementor-widget-image-box.elementor-vertical-align-middle .elementor-image-box-wrapper{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-widget-image-box.elementor-vertical-align-bottom .elementor-image-box-wrapper{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}}@media (max-width:767px){.elementor-widget-image-box .elementor-image-box-img{margin-left:auto!important;margin-right:auto!important;margin-bottom:15px}}.elementor-widget-image-box .elementor-image-box-img{display:inline-block}.elementor-widget-image-box .elementor-image-box-title a{color:inherit}.elementor-widget-image-box .elementor-image-box-wrapper{text-align:center}.elementor-widget-image-box .elementor-image-box-description{margin:0}.elementor-widget-image-carousel .swiper-container{position:static}.elementor-widget-image-carousel .swiper-container .swiper-slide figure{line-height:inherit}.elementor-widget-image-carousel .swiper-slide{text-align:center}.elementor-image-carousel-wrapper:not(.swiper-container-initialized) .swiper-slide{max-width:calc(100% / var(--e-image-carousel-slides-to-show, 3))}body.elementor-page .elementor-widget-menu-anchor{margin-bottom:0}.elementor-widget-progress{text-align:left}.elementor-progress-wrapper{position:relative;background-color:#eee;color:#fff;height:100%;-webkit-border-radius:2px;border-radius:2px}.elementor-progress-bar{display:-webkit-box;display:-ms-flexbox;display:flex;background-color:#818a91;width:0;font-size:11px;height:30px;line-height:30px;-webkit-border-radius:2px;border-radius:2px;-webkit-transition:width 1s ease-in-out;-o-transition:width 1s ease-in-out;transition:width 1s ease-in-out}.elementor-progress-text{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;padding-left:15px}.elementor-progress-percentage{padding-right:15px}.elementor-widget-progress .elementor-progress-wrapper.progress-info .elementor-progress-bar{background-color:#5bc0de}.elementor-widget-progress .elementor-progress-wrapper.progress-success .elementor-progress-bar{background-color:#5cb85c}.elementor-widget-progress .elementor-progress-wrapper.progress-warning .elementor-progress-bar{background-color:#f0ad4e}.elementor-widget-progress .elementor-progress-wrapper.progress-danger .elementor-progress-bar{background-color:#d9534f}.elementor-progress .elementor-title{display:block}@media (max-width:767px){.elementor-progress-text{padding-left:10px}}.elementor-widget-social-icons.elementor-grid-0 .elementor-widget-container,.elementor-widget-social-icons.elementor-grid-mobile-0 .elementor-widget-container,.elementor-widget-social-icons.elementor-grid-tablet-0 .elementor-widget-container{line-height:1;font-size:0}.elementor-widget-social-icons:not(.elementor-grid-0):not(.elementor-grid-tablet-0):not(.elementor-grid-mobile-0) .elementor-grid{display:inline-grid}.elementor-widget-social-icons .elementor-grid{grid-column-gap:var(--grid-column-gap,5px);grid-row-gap:var(--grid-row-gap,5px);grid-template-columns:var(--grid-template-columns);-webkit-box-pack:var(--justify-content,center);-ms-flex-pack:var(--justify-content,center);justify-content:var(--justify-content,center);justify-items:var(--justify-content,center)}.elementor-icon.elementor-social-icon{font-size:var(--icon-size,25px);line-height:var(--icon-size,25px);width:calc(var(--icon-size, 25px) + (2 * var(--icon-padding, .5em)));height:calc(var(--icon-size, 25px) + (2 * var(--icon-padding, .5em)))}.elementor-social-icon{--e-social-icon-icon-color:#fff;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;background-color:#818a91;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;text-align:center;cursor:pointer}.elementor-social-icon i{color:var(--e-social-icon-icon-color)}.elementor-social-icon svg{fill:var(--e-social-icon-icon-color)}.elementor-social-icon:last-child{margin:0}.elementor-social-icon:hover{opacity:.9;color:#fff}.elementor-social-icon-android{background-color:#a4c639}.elementor-social-icon-apple{background-color:#999}.elementor-social-icon-behance{background-color:#1769ff}.elementor-social-icon-bitbucket{background-color:#205081}.elementor-social-icon-codepen{background-color:#000}.elementor-social-icon-delicious{background-color:#39f}.elementor-social-icon-deviantart{background-color:#05cc47}.elementor-social-icon-digg{background-color:#005be2}.elementor-social-icon-dribbble{background-color:#ea4c89}.elementor-social-icon-elementor{background-color:#d30c5c}.elementor-social-icon-envelope{background-color:#ea4335}.elementor-social-icon-facebook,.elementor-social-icon-facebook-f{background-color:#3b5998}.elementor-social-icon-flickr{background-color:#0063dc}.elementor-social-icon-foursquare{background-color:#2d5be3}.elementor-social-icon-free-code-camp,.elementor-social-icon-freecodecamp{background-color:#006400}.elementor-social-icon-github{background-color:#333}.elementor-social-icon-gitlab{background-color:#e24329}.elementor-social-icon-globe{background-color:#818a91}.elementor-social-icon-google-plus,.elementor-social-icon-google-plus-g{background-color:#dd4b39}.elementor-social-icon-houzz{background-color:#7ac142}.elementor-social-icon-instagram{background-color:#262626}.elementor-social-icon-jsfiddle{background-color:#487aa2}.elementor-social-icon-link{background-color:#818a91}.elementor-social-icon-linkedin,.elementor-social-icon-linkedin-in{background-color:#0077b5}.elementor-social-icon-medium{background-color:#00ab6b}.elementor-social-icon-meetup{background-color:#ec1c40}.elementor-social-icon-mixcloud{background-color:#273a4b}.elementor-social-icon-odnoklassniki{background-color:#f4731c}.elementor-social-icon-pinterest{background-color:#bd081c}.elementor-social-icon-product-hunt{background-color:#da552f}.elementor-social-icon-reddit{background-color:#ff4500}.elementor-social-icon-rss{background-color:#f26522}.elementor-social-icon-shopping-cart{background-color:#4caf50}.elementor-social-icon-skype{background-color:#00aff0}.elementor-social-icon-slideshare{background-color:#0077b5}.elementor-social-icon-snapchat{background-color:#fffc00}.elementor-social-icon-soundcloud{background-color:#f80}.elementor-social-icon-spotify{background-color:#2ebd59}.elementor-social-icon-stack-overflow{background-color:#fe7a15}.elementor-social-icon-steam{background-color:#00adee}.elementor-social-icon-stumbleupon{background-color:#eb4924}.elementor-social-icon-telegram{background-color:#2ca5e0}.elementor-social-icon-thumb-tack{background-color:#1aa1d8}.elementor-social-icon-tripadvisor{background-color:#589442}.elementor-social-icon-tumblr{background-color:#35465c}.elementor-social-icon-twitch{background-color:#6441a5}.elementor-social-icon-twitter{background-color:#1da1f2}.elementor-social-icon-viber{background-color:#665cac}.elementor-social-icon-vimeo{background-color:#1ab7ea}.elementor-social-icon-vk{background-color:#45668e}.elementor-social-icon-weibo{background-color:#dd2430}.elementor-social-icon-weixin{background-color:#31a918}.elementor-social-icon-whatsapp{background-color:#25d366}.elementor-social-icon-wordpress{background-color:#21759b}.elementor-social-icon-xing{background-color:#026466}.elementor-social-icon-yelp{background-color:#af0606}.elementor-social-icon-youtube{background-color:#cd201f}.elementor-social-icon-500px{background-color:#0099e5}.elementor-shape-rounded .elementor-icon.elementor-social-icon{-webkit-border-radius:10%;border-radius:10%}.elementor-shape-circle .elementor-icon.elementor-social-icon{-webkit-border-radius:50%;border-radius:50%}.elementor-star-rating{color:#ccd6df;font-family:eicons;display:inline-block}.elementor-star-rating i{display:inline-block;position:relative;font-style:normal;cursor:default}.elementor-star-rating i:before{content:"\e934";display:block;font-size:inherit;font-family:inherit;position:absolute;overflow:hidden;color:#f0ad4e;top:0;left:0}.elementor-star-rating .elementor-star-empty:before{content:none}.elementor-star-rating .elementor-star-1:before{width:10%}.elementor-star-rating .elementor-star-2:before{width:20%}.elementor-star-rating .elementor-star-3:before{width:30%}.elementor-star-rating .elementor-star-4:before{width:40%}.elementor-star-rating .elementor-star-5:before{width:50%}.elementor-star-rating .elementor-star-6:before{width:60%}.elementor-star-rating .elementor-star-7:before{width:70%}.elementor-star-rating .elementor-star-8:before{width:80%}.elementor-star-rating .elementor-star-9:before{width:90%}.elementor-star-rating__wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-star-rating__title{margin-right:10px}.elementor-star-rating--align-right .elementor-star-rating__wrapper{text-align:right;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-star-rating--align-left .elementor-star-rating__wrapper{text-align:left;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-star-rating--align-center .elementor-star-rating__wrapper{text-align:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-star-rating--align-justify .elementor-star-rating__title{margin-right:auto}@media (max-width:1024px){.elementor-star-rating-tablet--align-right .elementor-star-rating__wrapper{text-align:right;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-star-rating-tablet--align-left .elementor-star-rating__wrapper{text-align:left;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-star-rating-tablet--align-center .elementor-star-rating__wrapper{text-align:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-star-rating-tablet--align-justify .elementor-star-rating__title{margin-right:auto}}@media (max-width:767px){.elementor-star-rating-mobile--align-right .elementor-star-rating__wrapper{text-align:right;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-star-rating-mobile--align-left .elementor-star-rating__wrapper{text-align:left;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-star-rating-mobile--align-center .elementor-star-rating__wrapper{text-align:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-star-rating-mobile--align-justify .elementor-star-rating__title{margin-right:auto}}.last-star{letter-spacing:0}.elementor--star-style-star_unicode .elementor-star-rating{font-family:Arial,Helvetica,sans-serif}.elementor--star-style-star_unicode .elementor-star-rating i:not(.elementor-star-empty):before{content:"\002605"}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-wrapper{width:25%;-ms-flex-negative:0;flex-shrink:0}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active{border-right-style:none}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:after,.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:before{height:999em;width:0;right:0;border-right-style:solid}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:before{top:0;-webkit-transform:translateY(-100%);-ms-transform:translateY(-100%);transform:translateY(-100%)}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:after{top:100%}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title{display:table-cell}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active{border-bottom-style:none}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:after,.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:before{bottom:0;height:0;width:999em;border-bottom-style:solid}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:before{right:100%}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:after{left:100%}.elementor-widget-tabs .elementor-tab-content,.elementor-widget-tabs .elementor-tab-title,.elementor-widget-tabs .elementor-tab-title:after,.elementor-widget-tabs .elementor-tab-title:before,.elementor-widget-tabs .elementor-tabs-content-wrapper{border:1px #d4d4d4}.elementor-widget-tabs .elementor-tabs{text-align:left}.elementor-widget-tabs .elementor-tabs-wrapper{overflow:hidden}.elementor-widget-tabs .elementor-tab-title{cursor:pointer;outline:var(--focus-outline,none)}.elementor-widget-tabs .elementor-tab-desktop-title{position:relative;padding:20px 25px;font-weight:700;line-height:1;border:solid transparent}.elementor-widget-tabs .elementor-tab-desktop-title.elementor-active{border-color:#d4d4d4}.elementor-widget-tabs .elementor-tab-desktop-title.elementor-active:after,.elementor-widget-tabs .elementor-tab-desktop-title.elementor-active:before{display:block;content:"";position:absolute}.elementor-widget-tabs .elementor-tab-mobile-title{padding:10px;cursor:pointer}.elementor-widget-tabs .elementor-tab-content{padding:20px;display:none}@media (max-width:767px){.elementor-tabs .elementor-tab-content,.elementor-tabs .elementor-tab-title{border-style:solid solid none}.elementor-tabs .elementor-tabs-wrapper{display:none}.elementor-tabs .elementor-tabs-content-wrapper{border-bottom-style:solid}.elementor-tabs .elementor-tab-content{padding:10px}}@media (min-width:768px){.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-wrapper{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-content-wrapper{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;border-style:solid solid solid none}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-content{border-style:none solid solid}.elementor-widget-tabs.elementor-tabs-alignment-center .elementor-tabs-wrapper,.elementor-widget-tabs.elementor-tabs-alignment-end .elementor-tabs-wrapper,.elementor-widget-tabs.elementor-tabs-alignment-stretch .elementor-tabs-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget-tabs.elementor-tabs-alignment-center .elementor-tabs-wrapper{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-widget-tabs.elementor-tabs-alignment-end .elementor-tabs-wrapper{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-widget-tabs.elementor-tabs-alignment-stretch.elementor-tabs-view-horizontal .elementor-tab-title{width:100%}.elementor-widget-tabs.elementor-tabs-alignment-stretch.elementor-tabs-view-vertical .elementor-tab-title{height:100%}.elementor-tabs .elementor-tab-mobile-title{display:none}}.elementor-testimonial-wrapper{overflow:hidden;text-align:center}.elementor-testimonial-wrapper .elementor-testimonial-content{font-size:1.3em;margin-bottom:20px}.elementor-testimonial-wrapper .elementor-testimonial-name{line-height:1.5;display:block}.elementor-testimonial-wrapper .elementor-testimonial-job{font-size:.85em;display:block}.elementor-testimonial-wrapper .elementor-testimonial-meta{width:100%;line-height:1}.elementor-testimonial-wrapper .elementor-testimonial-meta-inner{display:inline-block}.elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-details,.elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-image{display:table-cell;vertical-align:middle}.elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-image img{width:60px;height:60px;-webkit-border-radius:50%;border-radius:50%;-o-object-fit:cover;object-fit:cover;max-width:none}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-aside .elementor-testimonial-image{padding-right:15px}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-aside .elementor-testimonial-details{text-align:left}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-details,.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-image{display:block}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-image{margin-bottom:20px}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:#818a91;color:#fff}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap{color:#818a91;border:3px solid;background-color:transparent}.elementor-widget-text-editor:not(.elementor-drop-cap-view-default) .elementor-drop-cap{margin-top:8px}.elementor-widget-text-editor:not(.elementor-drop-cap-view-default) .elementor-drop-cap-letter{width:1em;height:1em}.elementor-widget-text-editor .elementor-drop-cap{float:left;text-align:center;line-height:1;font-size:50px}.elementor-widget-text-editor .elementor-drop-cap-letter{display:inline-block}.elementor-toggle{text-align:left}.elementor-toggle .elementor-tab-title{font-weight:700;line-height:1;margin:0;padding:15px;border-bottom:1px solid #d4d4d4;cursor:pointer;outline:none}.elementor-toggle .elementor-tab-title .elementor-toggle-icon{display:inline-block;width:1em}.elementor-toggle .elementor-tab-title .elementor-toggle-icon svg{-webkit-margin-start:-5px;margin-inline-start:-5px;width:1em;height:1em}.elementor-toggle .elementor-tab-title .elementor-toggle-icon.elementor-toggle-icon-right{float:right;text-align:right}.elementor-toggle .elementor-tab-title .elementor-toggle-icon.elementor-toggle-icon-left{float:left;text-align:left}.elementor-toggle .elementor-tab-title .elementor-toggle-icon .elementor-toggle-icon-closed{display:block}.elementor-toggle .elementor-tab-title .elementor-toggle-icon .elementor-toggle-icon-opened{display:none}.elementor-toggle .elementor-tab-title.elementor-active{border-bottom:none}.elementor-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon-closed{display:none}.elementor-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon-opened{display:block}.elementor-toggle .elementor-tab-content{padding:15px;border-bottom:1px solid #d4d4d4;display:none}@media (max-width:767px){.elementor-toggle .elementor-tab-title{padding:12px}.elementor-toggle .elementor-tab-content{padding:12px 10px}}.elementor-widget-video .elementor-widget-container{overflow:hidden;-webkit-transform:translateZ(0);transform:translateZ(0)}.elementor-widget-video .elementor-open-inline .elementor-custom-embed-image-overlay{position:absolute;top:0;left:0;width:100%;height:100%;-webkit-background-size:cover;background-size:cover;background-position:50%}.elementor-widget-video .elementor-custom-embed-image-overlay{cursor:pointer;text-align:center}.elementor-widget-video .elementor-custom-embed-image-overlay:hover .elementor-custom-embed-play i{opacity:1}.elementor-widget-video .elementor-custom-embed-image-overlay img{display:block;width:100%}.elementor-widget-video .e-hosted-video .elementor-video{-o-object-fit:cover;object-fit:cover}assets/css/widget-icon-box.min.css000064400000003666151327220410013141 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
@media (min-width:768px){.elementor-widget-icon-box.elementor-position-left .elementor-icon-box-wrapper,.elementor-widget-icon-box.elementor-position-right .elementor-icon-box-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget-icon-box.elementor-position-left .elementor-icon-box-icon,.elementor-widget-icon-box.elementor-position-right .elementor-icon-box-icon{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.elementor-widget-icon-box.elementor-position-right .elementor-icon-box-wrapper{text-align:right;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-widget-icon-box.elementor-position-left .elementor-icon-box-wrapper{text-align:left;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.elementor-widget-icon-box.elementor-position-top .elementor-icon-box-img{margin:auto}.elementor-widget-icon-box.elementor-vertical-align-top .elementor-icon-box-wrapper{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.elementor-widget-icon-box.elementor-vertical-align-middle .elementor-icon-box-wrapper{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-widget-icon-box.elementor-vertical-align-bottom .elementor-icon-box-wrapper{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}}@media (max-width:767px){.elementor-widget-icon-box .elementor-icon-box-icon{margin-left:auto!important;margin-right:auto!important;margin-bottom:15px}}.elementor-widget-icon-box .elementor-icon-box-wrapper{text-align:center}.elementor-widget-icon-box .elementor-icon-box-title a{color:inherit}.elementor-widget-icon-box .elementor-icon-box-content{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-widget-icon-box .elementor-icon-box-description{margin:0}assets/css/widget-social-icons.min.css000064400000012144151327220410013775 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-widget-social-icons.elementor-grid-0 .elementor-widget-container,.elementor-widget-social-icons.elementor-grid-mobile-0 .elementor-widget-container,.elementor-widget-social-icons.elementor-grid-tablet-0 .elementor-widget-container{line-height:1;font-size:0}.elementor-widget-social-icons:not(.elementor-grid-0):not(.elementor-grid-tablet-0):not(.elementor-grid-mobile-0) .elementor-grid{display:inline-grid}.elementor-widget-social-icons .elementor-grid{grid-column-gap:var(--grid-column-gap,5px);grid-row-gap:var(--grid-row-gap,5px);grid-template-columns:var(--grid-template-columns);-webkit-box-pack:var(--justify-content,center);-ms-flex-pack:var(--justify-content,center);justify-content:var(--justify-content,center);justify-items:var(--justify-content,center)}.elementor-icon.elementor-social-icon{font-size:var(--icon-size,25px);line-height:var(--icon-size,25px);width:calc(var(--icon-size, 25px) + (2 * var(--icon-padding, .5em)));height:calc(var(--icon-size, 25px) + (2 * var(--icon-padding, .5em)))}.elementor-social-icon{--e-social-icon-icon-color:#fff;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;background-color:#818a91;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;text-align:center;cursor:pointer}.elementor-social-icon i{color:var(--e-social-icon-icon-color)}.elementor-social-icon svg{fill:var(--e-social-icon-icon-color)}.elementor-social-icon:last-child{margin:0}.elementor-social-icon:hover{opacity:.9;color:#fff}.elementor-social-icon-android{background-color:#a4c639}.elementor-social-icon-apple{background-color:#999}.elementor-social-icon-behance{background-color:#1769ff}.elementor-social-icon-bitbucket{background-color:#205081}.elementor-social-icon-codepen{background-color:#000}.elementor-social-icon-delicious{background-color:#39f}.elementor-social-icon-deviantart{background-color:#05cc47}.elementor-social-icon-digg{background-color:#005be2}.elementor-social-icon-dribbble{background-color:#ea4c89}.elementor-social-icon-elementor{background-color:#d30c5c}.elementor-social-icon-envelope{background-color:#ea4335}.elementor-social-icon-facebook,.elementor-social-icon-facebook-f{background-color:#3b5998}.elementor-social-icon-flickr{background-color:#0063dc}.elementor-social-icon-foursquare{background-color:#2d5be3}.elementor-social-icon-free-code-camp,.elementor-social-icon-freecodecamp{background-color:#006400}.elementor-social-icon-github{background-color:#333}.elementor-social-icon-gitlab{background-color:#e24329}.elementor-social-icon-globe{background-color:#818a91}.elementor-social-icon-google-plus,.elementor-social-icon-google-plus-g{background-color:#dd4b39}.elementor-social-icon-houzz{background-color:#7ac142}.elementor-social-icon-instagram{background-color:#262626}.elementor-social-icon-jsfiddle{background-color:#487aa2}.elementor-social-icon-link{background-color:#818a91}.elementor-social-icon-linkedin,.elementor-social-icon-linkedin-in{background-color:#0077b5}.elementor-social-icon-medium{background-color:#00ab6b}.elementor-social-icon-meetup{background-color:#ec1c40}.elementor-social-icon-mixcloud{background-color:#273a4b}.elementor-social-icon-odnoklassniki{background-color:#f4731c}.elementor-social-icon-pinterest{background-color:#bd081c}.elementor-social-icon-product-hunt{background-color:#da552f}.elementor-social-icon-reddit{background-color:#ff4500}.elementor-social-icon-rss{background-color:#f26522}.elementor-social-icon-shopping-cart{background-color:#4caf50}.elementor-social-icon-skype{background-color:#00aff0}.elementor-social-icon-slideshare{background-color:#0077b5}.elementor-social-icon-snapchat{background-color:#fffc00}.elementor-social-icon-soundcloud{background-color:#f80}.elementor-social-icon-spotify{background-color:#2ebd59}.elementor-social-icon-stack-overflow{background-color:#fe7a15}.elementor-social-icon-steam{background-color:#00adee}.elementor-social-icon-stumbleupon{background-color:#eb4924}.elementor-social-icon-telegram{background-color:#2ca5e0}.elementor-social-icon-thumb-tack{background-color:#1aa1d8}.elementor-social-icon-tripadvisor{background-color:#589442}.elementor-social-icon-tumblr{background-color:#35465c}.elementor-social-icon-twitch{background-color:#6441a5}.elementor-social-icon-twitter{background-color:#1da1f2}.elementor-social-icon-viber{background-color:#665cac}.elementor-social-icon-vimeo{background-color:#1ab7ea}.elementor-social-icon-vk{background-color:#45668e}.elementor-social-icon-weibo{background-color:#dd2430}.elementor-social-icon-weixin{background-color:#31a918}.elementor-social-icon-whatsapp{background-color:#25d366}.elementor-social-icon-wordpress{background-color:#21759b}.elementor-social-icon-xing{background-color:#026466}.elementor-social-icon-yelp{background-color:#af0606}.elementor-social-icon-youtube{background-color:#cd201f}.elementor-social-icon-500px{background-color:#0099e5}.elementor-shape-rounded .elementor-icon.elementor-social-icon{-webkit-border-radius:10%;border-radius:10%}.elementor-shape-circle .elementor-icon.elementor-social-icon{-webkit-border-radius:50%;border-radius:50%}assets/css/app-base-rtl.min.css000064400000003132151327220410012415 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
:root{--color-box-shadow-color:rgba(0,0,0,0.05)}.eps-theme-dark{--color-box-shadow-color:rgba(0,0,0,0.1)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media screen and (min-width:480px){.text-start-sm{text-align:start}}@media screen and (min-width:480px){.text-center-sm{text-align:center}}@media screen and (min-width:480px){.text-end-sm{text-align:end}}@media screen and (min-width:768px){.text-start-md{text-align:start}}@media screen and (min-width:768px){.text-center-md{text-align:center}}@media screen and (min-width:768px){.text-end-md{text-align:end}}@media screen and (min-width:1025px){.text-start-lg{text-align:start}}@media screen and (min-width:1025px){.text-center-lg{text-align:center}}@media screen and (min-width:1025px){.text-end-lg{text-align:end}}@media screen and (min-width:1440px){.text-start-xl{text-align:start}}@media screen and (min-width:1440px){.text-center-xl{text-align:center}}@media screen and (min-width:1440px){.text-end-xl{text-align:end}}@media screen and (min-width:1600px){.text-start-xxl{text-align:start}}@media screen and (min-width:1600px){.text-center-xxl{text-align:center}}@media screen and (min-width:1600px){.text-end-xxl{text-align:end}}@-webkit-keyframes eps-animation-pop{0%{-webkit-transform:scale(.75);transform:scale(.75);opacity:0}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}@keyframes eps-animation-pop{0%{-webkit-transform:scale(.75);transform:scale(.75);opacity:0}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}assets/css/editor-preview-legacy.css000064400000001230151327220410013550 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-edit-area-active .elementor-top-section > .elementor-container > .elementor-row {
  min-height: 40px; }

.elementor-edit-area-active .elementor-inner-section > .elementor-container > .elementor-row {
  min-height: 40px; }

.elementor-edit-area-active .elementor-column-wrap.elementor-element-empty .elementor-widget-wrap {
  min-height: 30px; }
  @media (min-width: 768px) {
    .elementor-edit-area-active .elementor-column-wrap.elementor-element-empty .elementor-widget-wrap {
      margin: 10px; } }

.elementor-edit-area-active .handle {
  display: none; }
/*# sourceMappingURL=editor-preview-legacy.css.map */assets/css/frontend-legacy.min.css000064400000007416151327220410013220 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-bc-flex-widget .elementor-section-content-top>.elementor-container>.elementor-row>.elementor-column>.elementor-column-wrap{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.elementor-bc-flex-widget .elementor-section-content-middle>.elementor-container>.elementor-row>.elementor-column>.elementor-column-wrap{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-bc-flex-widget .elementor-section-content-bottom>.elementor-container>.elementor-row>.elementor-column>.elementor-column-wrap{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.elementor-column-gap-narrow>.elementor-row>.elementor-column>.elementor-element-populated{padding:5px}.elementor-column-gap-default>.elementor-row>.elementor-column>.elementor-element-populated{padding:10px}.elementor-column-gap-extended>.elementor-row>.elementor-column>.elementor-element-populated{padding:15px}.elementor-column-gap-wide>.elementor-row>.elementor-column>.elementor-element-populated{padding:20px}.elementor-column-gap-wider>.elementor-row>.elementor-column>.elementor-element-populated{padding:30px}@media (min-width:768px) and (max-width:1024px){.elementor-reverse-tablet>.elementor-container>.elementor-row>:first-child{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(2){-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(3){-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(4){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(5){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(6){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(7){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(8){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(9){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(10){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}}@media (max-width:767px){.elementor-reverse-mobile>.elementor-container>.elementor-row>:first-child{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(2){-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(3){-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(4){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(5){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(6){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(7){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(8){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(9){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(10){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.elementor-column{width:100%}}assets/css/editor-preview.css000064400000336327151327220410012330 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
@charset "UTF-8";
.elementor-control-unit-1 {
  width: 27px; }

.elementor-control-unit-2 {
  width: 54px; }

.elementor-control-unit-3 {
  width: 81px; }

.elementor-control-unit-4 {
  width: 108px; }

.elementor-control-unit-5 {
  max-width: 400px;
  width: 52%; }

.elementor-tags-list {
  display: none;
  position: absolute;
  width: 260px;
  max-height: 300px;
  overflow: auto;
  padding-bottom: 5px;
  background-color: #fff;
  border: 1px solid #a4afb7;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  z-index: 10000; }
  .elementor-tags-list__group-title {
    color: #495157;
    font-weight: bold;
    font-size: 12px;
    padding: 10px 15px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .elementor-tags-list__group-title .eicon-info-circle {
      padding-right: 5px;
      color: #71d7f7;
      font-size: 14px; }
  .elementor-tags-list__item {
    font-size: 10px;
    padding: 6px 15px;
    cursor: pointer; }
    .elementor-tags-list__item:before {
      content: '>';
      font-size: 8px;
      padding-right: 5px; }
    .elementor-tags-list__item:hover {
      background-color: #e6e9ec; }
  .elementor-tags-list__teaser {
    border-top: 2px solid #d5dadf;
    padding-top: 4px;
    margin-top: 4px; }
    .elementor-tags-list__teaser-title {
      color: #6d7882; }
    .elementor-tags-list__teaser-text {
      padding: 2px 15px 8px;
      line-height: 1.5;
      font-size: 12px; }
    .elementor-tags-list__teaser-link {
      color: #93003c;
      text-decoration: underline;
      font-style: italic;
      font-weight: bold; }

.elementor-dynamic-cover {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 27px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }
  .elementor-dynamic-cover__title {
    padding: 0 8px;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    white-space: nowrap;
    -o-text-overflow: ellipsis;
       text-overflow: ellipsis;
    overflow: hidden; }
  .elementor-dynamic-cover__settings, .elementor-dynamic-cover__remove {
    color: #c2cbd2;
    cursor: pointer;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s; }
    .elementor-dynamic-cover__settings:hover, .elementor-dynamic-cover__remove:hover {
      color: #a4afb7; }
  .elementor-control-type-wysiwyg .elementor-dynamic-cover {
    margin-top: 10px; }

.elementor-tag-settings-popup {
  position: absolute;
  width: 260px;
  background-color: #e6e9ec;
  -webkit-box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.3);
          box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.3);
  z-index: 1; }
  .elementor-tag-settings-popup:before {
    content: '';
    position: absolute;
    top: -20px;
    left: 5px;
    border: 10px solid transparent;
    border-bottom-color: #fff; }
  .elementor-tag-settings-popup .elementor-control-type-section:first-child {
    margin: 0; }

.elementor-tag-controls-stack-empty {
  background-color: #fff;
  padding: 10px;
  font-size: 13px;
  text-align: center; }

.elementor-control-dynamic-switcher {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  height: 27px;
  cursor: pointer;
  border: 1px solid #d5dadf;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  background: #fff; }
  .elementor-control-dynamic-switcher.e-control-tool {
    height: 20px;
    border: 0; }
  .elementor-control-dynamic-switcher-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .elementor-control-dynamic-switcher .eicon-database {
    font-size: 12px; }

.elementor-control-dynamic-value .elementor-control-tag-area,
.elementor-control-dynamic-value .elementor-control-dynamic-switcher,
.elementor-control-dynamic-value .e-global__popover-toggle {
  display: none; }

.elementor-panel-box {
  margin-top: 10px;
  background-color: #fff; }

.elementor-panel-box-content {
  padding: 20px 20px 10px; }

.elementor-button {
  display: inline-block; }

.elementor-panel-alert {
  background-color: #fcfcfc;
  padding: 15px;
  border-left: 3px solid transparent;
  position: relative;
  font-size: 12px;
  font-weight: 300;
  font-style: italic;
  line-height: 1.5;
  text-align: left;
  -webkit-border-radius: 0 3px 3px 0;
          border-radius: 0 3px 3px 0;
  -webkit-box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.07);
          box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.07); }
  .elementor-panel-alert a {
    color: inherit; }
  .elementor-panel-alert.elementor-panel-alert-info {
    border-color: #71d7f7;
    background-color: #f3fcff; }
  .elementor-panel-alert.elementor-panel-alert-success {
    border-color: #39b54a; }
  .elementor-panel-alert.elementor-panel-alert-warning {
    border-color: #fcb92c; }
  .elementor-panel-alert.elementor-panel-alert-danger {
    border-color: #d72b3f; }

.elementor-label {
  display: inline;
  padding: .2em .6em .3em;
  font-size: 75%;
  font-weight: 700;
  line-height: 1;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  -webkit-border-radius: .25em;
          border-radius: .25em;
  text-transform: capitalize; }
  .elementor-label.elementor-label-default {
    background-color: #a4afb7; }
  .elementor-label.elementor-label-info {
    background-color: #5bc0de; }
  .elementor-label.elementor-label-success {
    background-color: #5cb85c; }
  .elementor-label.elementor-label-warning {
    background-color: #f0ad4e; }
  .elementor-label.elementor-label-danger {
    background-color: #d9534f; }

.elementor-descriptor, .elementor-control-field-description {
  font-size: 11px;
  font-style: italic;
  line-height: 1.4;
  color: #a4afb7; }

.elementor-controls-popover {
  display: none;
  position: absolute;
  -webkit-box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3);
          box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3);
  -webkit-border-radius: 3px;
          border-radius: 3px;
  left: 0;
  right: 0;
  margin: -4px auto 5px;
  padding-top: 15px;
  width: 90%;
  z-index: 10000;
  background-color: #fff; }
  .elementor-controls-popover:before {
    content: '';
    position: absolute;
    top: -16px;
    right: 22px;
    border: 8px solid transparent;
    border-bottom-color: #fff; }
  .elementor-controls-popover div.elementor-control {
    background-color: transparent; }
    .elementor-controls-popover div.elementor-control:before {
      content: none; }

#elementor-controls .pojo-widget-button-collapse {
  display: none; }

#elementor-panel-global .elementor-nerd-box .elementor-nerd-box-icon {
  margin-top: 20px; }

.elementor-control {
  --control-title-size: 12px;
  background-color: #fff;
  position: relative;
  padding: 0 20px 15px; }
  .elementor-control a {
    font-weight: 500;
    text-decoration: none;
    border-bottom: 1px dotted transparent;
    -webkit-transition: all ease-in-out .3s;
    -o-transition: all ease-in-out .3s;
    transition: all ease-in-out .3s; }
    .elementor-control a:hover {
      border-bottom-color: inherit; }
    .elementor-control a.elementor-responsive-switcher {
      border-bottom: 0; }
  .elementor-control .elementor-control-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
  .elementor-control .elementor-control-title {
    font-size: var(--control-title-size);
    line-height: 1;
    margin-right: 5px; }
  .elementor-control .elementor-control-spinner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .elementor-control.elementor-control-type-divider {
    padding: 0;
    background-color: transparent; }
    .elementor-control.elementor-control-type-divider .elementor-control-content {
      border-width: 0;
      border-color: #e6e9ec;
      border-style: solid;
      border-top-width: 1px;
      background-color: #ffffff;
      height: 15px; }
  .elementor-control.elementor-control-separator-default:not(.elementor-control-type-divider).elementor-control-wp {
    margin-top: 15px; }
    .elementor-control.elementor-control-separator-default:not(.elementor-control-type-divider).elementor-control-wp:before {
      content: '';
      height: 1px;
      display: block;
      margin-bottom: 15px;
      background-color: transparent; }
  .elementor-control.elementor-control-separator-before {
    padding-top: 15px; }
    .elementor-control.elementor-control-separator-before:before {
      content: '';
      position: absolute;
      height: 1px;
      width: 100%;
      top: 0;
      left: 0;
      background-color: #e6e9ec; }
  .elementor-control.elementor-control-separator-after:after {
    content: '';
    position: absolute;
    height: 1px;
    width: 100%;
    bottom: 0;
    left: 0;
    background-color: #e6e9ec; }
  .elementor-control.elementor-control-separator-after + .elementor-control-type-tabs + .elementor-control-separator-default, .elementor-control.elementor-control-separator-after:not(.elementor-hidden-control) + .elementor-control-separator-default {
    padding-top: 15px; }
  .elementor-control.elementor-control-deprecated {
    color: #b01b1b; }
    .elementor-control.elementor-control-deprecated .elementor-control-field-description {
      color: #b01b1b; }
  .elementor-control.elementor-control-hidden-label > * > .elementor-control-title, .elementor-control.elementor-control-hidden-label > * > * > .elementor-control-title {
    display: none; }
  .elementor-control.elementor-hidden-control {
    display: none; }
  .elementor-control.elementor-control-type-heading .elementor-control-title {
    font-weight: bold;
    margin: 0; }
  body:not(.elementor-device-widescreen) .elementor-control.elementor-control-responsive-widescreen {
    display: none; }
  body:not(.elementor-device-desktop) .elementor-control.elementor-control-responsive-desktop {
    display: none; }
  body:not(.elementor-device-laptop) .elementor-control.elementor-control-responsive-laptop {
    display: none; }
  body:not(.elementor-device-tablet_extra) .elementor-control.elementor-control-responsive-tablet_extra {
    display: none; }
  body:not(.elementor-device-tablet) .elementor-control.elementor-control-responsive-tablet {
    display: none; }
  body:not(.elementor-device-mobile_extra) .elementor-control.elementor-control-responsive-mobile_extra {
    display: none; }
  body:not(.elementor-device-mobile) .elementor-control.elementor-control-responsive-mobile {
    display: none; }
  .elementor-control.elementor-control-type-select .elementor-control-input-wrapper {
    position: relative; }
    .elementor-control.elementor-control-type-select .elementor-control-input-wrapper select {
      appearance: none;
      -webkit-appearance: none;
      -moz-appearance: none;
      font-size: 12px;
      font-family: inherit;
      font-weight: inherit;
      font-style: inherit;
      text-transform: inherit;
      letter-spacing: inherit;
      line-height: inherit;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
      padding-left: 5px;
      padding-right: 20px;
      cursor: pointer; }
      .elementor-control.elementor-control-type-select .elementor-control-input-wrapper select.e-select-placeholder {
        color: #a4afb7; }
    .elementor-control.elementor-control-type-select .elementor-control-input-wrapper option.e-option-placeholder {
      display: none; }
    .elementor-control.elementor-control-type-select .elementor-control-input-wrapper:after {
      font-family: eicons;
      content: '\e8ad';
      font-size: 12px;
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      right: 5px;
      pointer-events: none; }
  .elementor-control-custom_css_pro .elementor-nerd-box-message, .elementor-control-custom_attributes_pro .elementor-nerd-box-message {
    margin-top: 5px; }
  .elementor-control.elementor-control-custom_css_title {
    font-size: 12px; }

.elementor-control.elementor-open .elementor-panel-heading-toggle .eicon:before,
.elementor-panel-scheme-item.elementor-open .elementor-panel-heading-toggle .eicon:before {
  content: '\e92a'; }

.elementor-control:not(.elementor-open) .elementor-panel-heading-toggle .eicon:before,
.elementor-panel-scheme-item:not(.elementor-open) .elementor-panel-heading-toggle .eicon:before {
  content: ""; }

.elementor-panel-heading {
  display: table;
  table-layout: fixed;
  height: 40px;
  padding: 0 20px;
  width: 100%;
  border-bottom: 1px solid #e6e9ec;
  cursor: pointer; }
  .elementor-panel-heading > * {
    display: table-cell;
    vertical-align: middle; }
  .elementor-panel-heading-toggle {
    width: 20px;
    color: #495157; }
  .elementor-panel-heading-title {
    color: #495157;
    font-weight: bold; }

.elementor-control-wp {
  line-height: 1.5; }
  .elementor-control-wp p {
    margin: 15px 0; }

.elementor-control-field {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.elementor-label-block > .elementor-control-content > .elementor-control-field {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .elementor-label-block > .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper {
    width: 100%;
    margin-top: 10px; }

.elementor-label-block.elementor-control-hidden-label:not(.elementor-control-dynamic) > .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper {
  margin-top: 0; }

.elementor-label-block.elementor-control-hidden-label.elementor-label-block > .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper {
  margin-top: 0; }

.elementor-label-inline > .elementor-control-content > .elementor-control-field > .elementor-control-title {
  -ms-flex-negative: 0;
      flex-shrink: 0; }

.elementor-label-inline > .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper {
  margin-left: auto; }

.elementor-control-field-description {
  margin-top: 10px; }

.elementor-group-control-attachment_alert .elementor-control-field-description {
  margin-top: 0; }

.elementor-required {
  color: #b01b1b; }

.elementor-units-choices {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  text-align: right; }
  .elementor-units-choices input {
    display: none; }
    .elementor-units-choices input:not(:checked) + label {
      color: #a4afb7; }
    .elementor-units-choices input.e-units-placeholder + label {
      color: #c2cbd2;
      text-decoration: underline; }
    .elementor-units-choices input:checked + label {
      text-decoration: underline; }
  .elementor-units-choices label {
    cursor: pointer;
    padding: 0 2px;
    text-transform: uppercase;
    font-size: 9px; }

.elementor-control-responsive-switchers {
  --selected-option: 0;
  --pointer-position: var(--selected-option);
  position: relative;
  width: 2em;
  height: 2em;
  margin: calc( -2em + var(--control-title-size)) 0;
  margin-right: 5px; }
  .elementor-control-responsive-switchers__holder {
    position: absolute;
    width: 100%;
    top: 0;
    background-color: #fff;
    -webkit-border-radius: 3px;
            border-radius: 3px;
    -webkit-transition: 0.15s;
    -o-transition: 0.15s;
    transition: 0.15s;
    border: 1px transparent solid; }
  .elementor-control-responsive-switchers.elementor-responsive-switchers-open {
    z-index: 11000; }
    .elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-responsive-switcher {
      height: 2em;
      -webkit-transform: scale(1);
          -ms-transform: scale(1);
              transform: scale(1);
      opacity: 1; }
      .elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-responsive-switcher:hover {
        color: #71d7f7; }
    .elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-control-responsive-switchers__holder {
      top: calc(-1 * var(--selected-option) * 2em);
      -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.2);
              box-shadow: 0 0 3px rgba(0, 0, 0, 0.2); }

.elementor-responsive-switcher {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  z-index: 2;
  cursor: pointer;
  height: 0;
  -webkit-transform: scale(0);
      -ms-transform: scale(0);
          transform: scale(0);
  opacity: 0;
  -webkit-transition: 0.15s;
  -o-transition: 0.15s;
  transition: 0.15s;
  font-size: 12px; }

a.elementor-responsive-switcher {
  color: #a4afb7; }
  a.elementor-responsive-switcher:hover {
    color: #71d7f7; }

.elementor-device-widescreen .elementor-responsive-switcher.elementor-responsive-switcher-widescreen {
  height: 2em;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.elementor-device-widescreen .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-widescreen {
  color: #71d7f7; }

.elementor-device-desktop .elementor-responsive-switcher.elementor-responsive-switcher-desktop {
  height: 2em;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.elementor-device-desktop .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-desktop {
  color: #71d7f7; }

.elementor-device-laptop .elementor-responsive-switcher.elementor-responsive-switcher-laptop {
  height: 2em;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.elementor-device-laptop .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-laptop {
  color: #71d7f7; }

.elementor-device-tablet_extra .elementor-responsive-switcher.elementor-responsive-switcher-tablet_extra {
  height: 2em;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.elementor-device-tablet_extra .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-tablet_extra {
  color: #71d7f7; }

.elementor-device-tablet .elementor-responsive-switcher.elementor-responsive-switcher-tablet {
  height: 2em;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.elementor-device-tablet .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-tablet {
  color: #71d7f7; }

.elementor-device-mobile_extra .elementor-responsive-switcher.elementor-responsive-switcher-mobile_extra {
  height: 2em;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.elementor-device-mobile_extra .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-mobile_extra {
  color: #71d7f7; }

.elementor-device-mobile .elementor-responsive-switcher.elementor-responsive-switcher-mobile {
  height: 2em;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.elementor-device-mobile .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-mobile {
  color: #71d7f7; }

.elementor-update-preview {
  margin: 15px 15px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.elementor-update-preview-button-wrapper {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  text-align: right; }

.elementor-update-preview-button {
  padding: 8px 15px;
  text-transform: uppercase; }

.elementor-control-direction-ltr input,
.elementor-control-direction-ltr textarea {
  direction: ltr; }

.elementor-control-direction-rtl input,
.elementor-control-direction-rtl textarea {
  direction: rtl; }

.elementor-control-type-button .elementor-control-input-wrapper {
  text-align: right; }

.elementor-control-type-button .elementor-button {
  width: auto;
  height: 26px; }

.elementor-control-type-choose.elementor-label-block .elementor-choices {
  width: 100%; }

.elementor-choices {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 27px;
  line-height: 27px;
  text-align: center;
  border-spacing: 1px;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  overflow: hidden; }
  .elementor-choices .elementor-choices-label {
    border-top: 1px solid #d5dadf;
    border-bottom: 1px solid #d5dadf;
    border-left: 1px solid #d5dadf;
    border-right: none;
    font-size: 12px;
    -webkit-transition: all .5s;
    -o-transition: all .5s;
    transition: all .5s;
    cursor: pointer;
    overflow: hidden; }
    .elementor-choices .elementor-choices-label:nth-child(2) {
      -webkit-border-top-left-radius: 3px;
              border-top-left-radius: 3px;
      -webkit-border-bottom-left-radius: 3px;
              border-bottom-left-radius: 3px; }
    .elementor-choices .elementor-choices-label:last-child {
      border-right: 1px solid #d5dadf;
      -webkit-border-top-right-radius: 3px;
              border-top-right-radius: 3px;
      -webkit-border-bottom-right-radius: 3px;
              border-bottom-right-radius: 3px; }
  .elementor-choices input {
    display: none; }
    .elementor-choices input.e-choose-placeholder + .elementor-choices-label {
      color: #ffffff;
      background-color: #c2cbd2;
      border-color: #c2cbd2; }
    .elementor-choices input:checked + .elementor-choices-label {
      color: #fff;
      background-color: #a4afb7;
      border-color: #a4afb7; }

.elementor-label-inline .elementor-choices {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.rtl .elementor-control-text_align .elementor-choices,
.rtl .elementor-control-align .elementor-choices,
.rtl .elementor-control-position .elementor-choices {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse; }
  .rtl .elementor-control-text_align .elementor-choices .elementor-choices-label:nth-child(2),
  .rtl .elementor-control-align .elementor-choices .elementor-choices-label:nth-child(2),
  .rtl .elementor-control-position .elementor-choices .elementor-choices-label:nth-child(2) {
    border-right: 1px solid #d5dadf;
    -webkit-border-radius: 3px 0 0 3px;
            border-radius: 3px 0 0 3px; }
  .rtl .elementor-control-text_align .elementor-choices .elementor-choices-label:last-child,
  .rtl .elementor-control-align .elementor-choices .elementor-choices-label:last-child,
  .rtl .elementor-control-position .elementor-choices .elementor-choices-label:last-child {
    border-right: none;
    -webkit-border-radius: 0 3px 3px 0;
            border-radius: 0 3px 3px 0; }

.elementor-control-type-color.e-control-global .e-global__popover-toggle ~ .pickr {
  -webkit-border-radius: 0px 3px 3px 0;
          border-radius: 0px 3px 3px 0;
  -ms-flex-negative: 0;
      flex-shrink: 0; }

.elementor-control-type-color .elementor-control-title {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1; }

.elementor-control-type-color .elementor-control-input-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.elementor-control-type-color .elementor-control-dynamic-switcher {
  border-left-width: 0;
  -webkit-border-radius: 0 3px 3px 0;
          border-radius: 0 3px 3px 0; }

.elementor-control-type-color.elementor-control-dynamic .pickr {
  -webkit-border-radius: 3px 0 0 3px;
          border-radius: 3px 0 0 3px; }

.elementor-group-control-css-filter .elementor-slider {
  height: 6px;
  -webkit-box-shadow: 0 0 1px 1px inset rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 1px 1px inset rgba(0, 0, 0, 0.2); }

.elementor-group-control-css-filter .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper {
  margin-top: 0;
  margin-bottom: 5px; }

.elementor-group-control-blur .elementor-slider {
  background: url("../images/blur.png");
  -webkit-background-size: cover;
          background-size: cover;
  background-position: center; }

.elementor-group-control-contrast .elementor-slider {
  background: url("../images/contrast.png");
  -webkit-background-size: 100% 100%;
          background-size: 100% 100%; }

.elementor-group-control-hue .elementor-slider {
  background-image: -webkit-gradient(linear, left top, right top, from(red), color-stop(orange), color-stop(yellow), color-stop(greenyellow), color-stop(limegreen), color-stop(deepskyblue), color-stop(blue), color-stop(95%, darkviolet));
  background-image: -webkit-linear-gradient(left, red, orange, yellow, greenyellow, limegreen, deepskyblue, blue, darkviolet 95%);
  background-image: -o-linear-gradient(left, red, orange, yellow, greenyellow, limegreen, deepskyblue, blue, darkviolet 95%);
  background-image: linear-gradient(to right, red, orange, yellow, greenyellow, limegreen, deepskyblue, blue, darkviolet 95%); }

.elementor-group-control-saturate .elementor-slider {
  background-image: -webkit-gradient(linear, left top, right top, from(gray), to(red));
  background-image: -webkit-linear-gradient(left, gray, red);
  background-image: -o-linear-gradient(left, gray, red);
  background-image: linear-gradient(to right, gray, red); }

.elementor-group-control-brightness .elementor-slider {
  background-image: -webkit-gradient(linear, left top, right top, from(black), to(white));
  background-image: -webkit-linear-gradient(left, black, white);
  background-image: -o-linear-gradient(left, black, white);
  background-image: linear-gradient(to right, black, white); }

.elementor-control-type-dimensions .elementor-control-dimensions {
  overflow: hidden; }

.elementor-control-type-dimensions li {
  float: left;
  width: 20%; }
  .elementor-control-type-dimensions li input,
  .elementor-control-type-dimensions li .elementor-link-dimensions {
    display: block;
    text-align: center;
    width: 100%;
    border-color: #d5dadf;
    height: 27px; }
  .elementor-control-type-dimensions li input {
    border-left: none;
    -webkit-border-radius: 0;
            border-radius: 0;
    padding: 4px 0; }
    .elementor-control-type-dimensions li input:focus {
      border-left: solid 1px;
      border-color: #a4afb7;
      margin-left: -1px;
      width: calc(100% + 1px); }
      .elementor-control-type-dimensions li input:focus + .elementor-control-dimension-label {
        color: #a4afb7; }
  .elementor-control-type-dimensions li .elementor-link-dimensions {
    border: 1px solid #d5dadf;
    border-left: none;
    background-color: #fff;
    padding: 0;
    outline: none;
    -webkit-border-radius: 0 3px 3px 0;
            border-radius: 0 3px 3px 0;
    cursor: pointer; }
  .elementor-control-type-dimensions li:first-child input {
    border-left: 1px solid #d5dadf;
    -webkit-border-radius: 3px 0 0 3px;
            border-radius: 3px 0 0 3px; }
    .elementor-control-type-dimensions li:first-child input:focus {
      border-color: #a4afb7;
      margin-left: 0;
      width: 100%; }

.elementor-control-type-dimensions .elementor-control-dimension-label {
  display: block;
  text-align: center;
  color: #d5dadf;
  font-size: 9px;
  text-transform: uppercase;
  padding-top: 5px; }

.elementor-control-type-dimensions .elementor-link-dimensions.unlinked {
  background-color: #fff; }
  .elementor-control-type-dimensions .elementor-link-dimensions.unlinked .elementor-linked {
    display: none; }

.elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked) {
  background-color: #a4afb7;
  border-color: #a4afb7; }
  .elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked) .elementor-unlinked {
    display: none; }

.elementor-control-type-dimensions .elementor-link-dimensions .elementor-linked {
  color: #fff; }

.elementor-control-type-icons .elementor-control-media__preview > * {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%); }

.elementor-control-type-icons .elementor-control-media__preview i {
  font-size: 70px;
  color: #6d7882; }

.elementor-control-type-icons .elementor-control-media__preview svg {
  height: 75%; }

.elementor-control-type-icons .elementor-control-icons--inline__svg i.eicon-upload {
  font-size: 15px; }

.elementor-control-type-gallery .elementor-control-media__content {
  border: 1px solid #d5dadf;
  -webkit-border-radius: 3px;
          border-radius: 3px; }

.elementor-control-type-gallery .elementor-control-gallery-status {
  font-size: 12px;
  height: 27px;
  padding-left: 10px;
  border-bottom: 1px solid #d5dadf;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  .elementor-control-type-gallery .elementor-control-gallery-status > * {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .elementor-control-type-gallery .elementor-control-gallery-status-title {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }

.elementor-control-type-gallery .elementor-control-gallery-content {
  position: relative;
  overflow: hidden; }
  .elementor-control-type-gallery .elementor-control-gallery-content:not(:hover) .elementor-control-gallery-edit {
    opacity: 0; }

.elementor-control-type-gallery .elementor-control-gallery-thumbnails {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(48px, 1fr));
  grid-gap: 10px;
  cursor: pointer;
  padding: 10px; }

.elementor-control-type-gallery .elementor-control-gallery-thumbnail {
  width: 48px;
  height: 48px;
  -webkit-background-size: cover;
          background-size: cover;
  background-position: 50% 50%; }

.elementor-control-type-gallery .elementor-control-gallery-edit {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: rgba(109, 120, 130, 0.3);
  padding: 10px;
  font-size: 11px;
  -webkit-transition: all .3s ease-in-out;
  -o-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
  pointer-events: none;
  cursor: pointer;
  opacity: 1; }
  .elementor-control-type-gallery .elementor-control-gallery-edit span {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 21px;
    height: 21px;
    background-color: rgba(255, 255, 255, 0.9);
    color: #a4afb7;
    -webkit-box-shadow: 0 0 7px 0 rgba(0, 0, 0, 0.2);
            box-shadow: 0 0 7px 0 rgba(0, 0, 0, 0.2);
    -webkit-border-radius: 3px;
            border-radius: 3px; }
    .elementor-control-type-gallery .elementor-control-gallery-edit span i {
      font-size: 11px;
      padding: 5px; }

.elementor-control-type-gallery .elementor-control-gallery-add {
  width: 48px;
  height: 48px;
  color: #fff;
  background-color: #d5dadf;
  font-size: 14px;
  -webkit-border-radius: 0;
          border-radius: 0; }
  .elementor-control-type-gallery .elementor-control-gallery-add:hover {
    background-color: #c2cbd2; }
  .elementor-control-type-gallery .elementor-control-gallery-add i {
    margin: 0;
    color: #a4afb7; }

.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-clear,
.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-thumbnails,
.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-edit {
  display: none; }

.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-content {
  padding: 10px; }

.elementor-control-type-gallery.elementor-gallery-has-images .elementor-control-gallery-add {
  display: none; }

.elementor-control-type-gallery.elementor-control-dynamic .elementor-control-gallery-clear {
  border-left: 1px solid #d5dadf; }

.elementor-control-type-gallery .elementor-control-gallery-clear {
  cursor: pointer;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .elementor-control-type-gallery .elementor-control-gallery-clear:hover {
    color: #b01b1b; }

.elementor-control-type-gallery .elementor-control-dynamic-switcher {
  border: none;
  border-bottom: 1px solid #d5dadf;
  border-left: 1px solid #d5dadf;
  -webkit-border-radius: 0 3px 0 0;
          border-radius: 0 3px 0 0; }

.e-global__popover {
  width: 288px;
  z-index: 1;
  font-size: 12px;
  padding-left: 10px; }
  .e-global__popover-toggle {
    border: 1px solid #d5dadf;
    border-right: 0;
    -webkit-border-radius: 3px 0 0 3px;
            border-radius: 3px 0 0 3px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    cursor: pointer; }
    .e-global__popover-toggle--active i {
      color: #71d7f7; }
  .e-global__popover-container {
    -webkit-box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3);
            box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3);
    -webkit-border-radius: 3px;
            border-radius: 3px;
    background-color: #fff;
    padding-bottom: 5px; }
  .e-global__popover-title {
    padding: 15px 20px;
    font-weight: 500;
    color: #6d7882;
    border-bottom: 1px solid #e6e9ec;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .e-global__popover-title > i {
      margin-right: 5px;
      color: #d5dadf; }
    .e-global__popover-title-text {
      -webkit-box-flex: 1;
          -ms-flex-positive: 1;
              flex-grow: 1; }
  .e-global__popover-info {
    margin-right: 5px;
    display: inline-block; }
    .e-global__popover-info-tooltip {
      width: 270px;
      z-index: 1;
      background-color: rgba(0, 0, 0, 0.9);
      color: #fff;
      padding: 20px;
      -webkit-border-radius: 3px;
              border-radius: 3px; }
      .e-global__popover-info-tooltip:after {
        content: '';
        position: absolute;
        bottom: -17px;
        left: 16px;
        border: 10px solid transparent;
        border-top-color: rgba(0, 0, 0, 0.9); }
    .e-global__popover-info i {
      color: #d5dadf;
      font-size: 13px; }

.e-global__preview-items-container {
  max-height: 260px;
  overflow-y: auto;
  margin-top: 5px; }
  .e-global__preview-items-container::-webkit-scrollbar {
    width: 7px; }
  .e-global__preview-items-container::-webkit-scrollbar-thumb {
    background-color: #c2cbd2;
    -webkit-border-radius: 10px;
            border-radius: 10px; }

.e-global__manage-button {
  font-weight: 500;
  cursor: pointer; }
  .e-global__manage-button:hover i {
    color: #4ab7f4; }
  .e-global__manage-button i {
    color: #6d7882; }

.e-global__typography {
  padding: 5px 10px 5px 35px;
  white-space: nowrap;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  overflow: hidden; }
  .e-global__typography.e-global__preview-item--selected:before {
    font-family: 'eicons';
    font-size: 13px;
    content: '\e90e';
    position: absolute;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    top: 50%;
    left: 12px; }

.e-global__color {
  margin: 5px auto;
  padding: 5px 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .e-global__color:first-child {
    margin-top: 5px; }
  .e-global__color:last-child {
    margin-bottom: 10px; }
  .e-global__color-preview-container {
    height: 20px;
    width: 20px;
    -webkit-border-radius: 3px;
            border-radius: 3px;
    border: 1px solid rgba(0, 0, 0, 0.1);
    margin-right: 10px;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    position: relative; }
  .e-global__color-preview-color, .e-global__color-preview-transparent-bg {
    -webkit-border-radius: 3px;
            border-radius: 3px;
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0; }
  .e-global__color-preview-transparent-bg {
    background-image: -webkit-linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd), -webkit-linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd);
    background-image: -o-linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd), -o-linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd);
    background-image: linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd), linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd);
    -webkit-background-size: 12px 12px;
            background-size: 12px 12px;
    background-position: 0 0, 6px 6px; }
  .e-global__color-title {
    font-weight: 500;
    color: #6d7882;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    white-space: nowrap;
    -o-text-overflow: ellipsis;
       text-overflow: ellipsis;
    overflow: hidden;
    padding-right: 10px; }
  .e-global__color-hex {
    font-size: 10px;
    font-weight: 500;
    color: #c2cbd2; }
  .e-global__color .pcr-button {
    background-color: #fff; }
  .e-global__color.e-global__preview-item--selected .e-global__color-preview-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    color: #ffffff; }
    .e-global__color.e-global__preview-item--selected .e-global__color-preview-container:before {
      font-family: 'eicons';
      font-size: 13px;
      content: '\e90e';
      text-shadow: 0px 0px 1px #000;
      z-index: 1; }

.e-global__preview-item {
  cursor: pointer;
  position: relative; }
  .e-global__preview-item:hover {
    background-color: #f1f3f5; }
    .e-global__preview-item:hover .e-global__color-hex {
      color: #a4afb7; }

.e-global__confirm-add .dialog-buttons-wrapper > .dialog-button.dialog-confirm-ok {
  color: #39b54a; }

.e-global__confirm-delete i {
  color: #b01b1b; }

.e-global__confirm-message-text i {
  color: #fcb92c; }

.e-global__confirm-input-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid #a4afb7;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  margin-top: 10px;
  padding: 2px; }
  .e-global__confirm-input-wrapper input {
    font-family: Roboto, Arial, sans-serif;
    font-weight: 500;
    font-size: 12px;
    padding: 2px;
    border: 0; }

.e-control-global .elementor-control-input-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  max-width: 135px;
  width: 100%; }

.e-control-global.elementor-control .elementor-control-input-wrapper {
  direction: ltr; }

.e-control-global .elementor-control-spinner {
  margin-right: 4px; }

.elementor-control-type-hidden {
  display: none !important; }

.elementor-control-type-icon .select2-selection__rendered .eicon {
  margin-right: 3px; }

.elementor-control-type-image_dimensions .elementor-control-field-description {
  margin: 0 0 15px;
  line-height: 1.4; }

.elementor-control-type-image_dimensions .elementor-control-input-wrapper {
  overflow: hidden; }

.elementor-control-type-image_dimensions .elementor-image-dimensions-field {
  width: 65px;
  float: left; }
  .elementor-control-type-image_dimensions .elementor-image-dimensions-field input:focus + .elementor-image-dimensions-field-description {
    color: #a4afb7; }

.elementor-control-type-image_dimensions .elementor-image-dimensions-separator {
  width: 20px;
  text-align: center;
  float: left;
  padding-top: 4px; }

.elementor-control-type-image_dimensions .elementor-image-dimensions-field-description {
  display: block;
  text-transform: uppercase;
  margin-top: 5px;
  color: #d5dadf;
  font-size: 9px;
  text-align: center; }

.elementor-control-type-image_dimensions .elementor-image-dimensions-apply-button {
  float: right;
  height: 27px;
  width: 65px; }

.elementor-control-media.elementor-media-empty .elementor-control-media-area .elementor-control-media__remove, .elementor-control-media.elementor-media-empty .elementor-control-media-area .elementor-control-media__content__remove {
  display: none; }

.elementor-control-media:not(.elementor-media-empty) .elementor-control-media__content__upload-button {
  display: none; }

.elementor-control-media .elementor-control-input-wrapper {
  border: 1px solid #d5dadf; }

.elementor-control-media .eicon-plus-circle {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  color: #fff;
  font-size: 20px; }

.elementor-control-media__content__upload-button {
  background-color: #d5dadf; }

.elementor-control-media__preview {
  height: 100%;
  -webkit-background-size: cover;
          background-size: cover;
  background-position: center; }

.elementor-control-media-area {
  background-image: -webkit-linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd), -webkit-linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd);
  background-image: -o-linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd), -o-linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd);
  background-image: linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd), linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd);
  -webkit-background-size: 16px 16px;
          background-size: 16px 16px;
  background-position: 0 0, 8px 8px;
  background-color: #f6f6f6; }
  .elementor-control-media-area:not(:hover) .elementor-control-media__remove {
    display: none; }
  .elementor-control-media-area .eicon-video-camera {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    color: rgba(255, 255, 255, 0.7);
    font-size: 21px; }

.elementor-control-media .elementor-control-media__content {
  cursor: pointer;
  overflow: hidden; }
  .elementor-control-media .elementor-control-media__content:hover:after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: rgba(0, 0, 0, 0.2);
    pointer-events: none; }
  .elementor-control-media .elementor-control-media__content:not(:hover) .elementor-control-media__tools {
    bottom: -30px; }

.elementor-control-media__content {
  -webkit-transition: all .2s ease-in-out;
  -o-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out; }

.elementor-control-media__tools {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 27px;
  -webkit-transition: all .2s ease-in-out;
  -o-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out; }
  .elementor-control-media__tools > *:not(:first-child) {
    margin-left: 1px; }

.elementor-control-media__tool {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  color: #fff;
  background-color: rgba(109, 120, 130, 0.85);
  font-size: 11px;
  -webkit-transition: background .3s;
  -o-transition: background .3s;
  transition: background .3s; }
  .elementor-control-media__tool:hover {
    background-color: rgba(109, 120, 130, 0.95); }

.elementor-control-media__remove {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-transition: all .3s ease-in-out;
  -o-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out; }

.elementor-control-media__content__remove {
  position: absolute;
  z-index: 1;
  top: 10px;
  right: 10px;
  width: 20px;
  height: 20px;
  font-size: 11px;
  color: #a4afb7;
  background-color: rgba(255, 255, 255, 0.9);
  -webkit-border-radius: 3px;
          border-radius: 3px;
  -webkit-box-shadow: 0 0 7px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 7px 0 rgba(0, 0, 0, 0.1); }
  .elementor-control-media__content__remove:hover {
    background-color: white;
    -webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.4);
            box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.4); }

.elementor-control-media.elementor-media-empty .elementor-control-file-area {
  display: none; }

.elementor-control-media__file {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  margin-top: 10px;
  border: 1px solid #d5dadf; }
  .elementor-control-media__file__content {
    padding-left: 5px;
    font-size: 12px; }
    .elementor-control-media__file__content__label {
      color: #a4afb7; }
    .elementor-control-media__file__content__info {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      font-weight: 500; }
      .elementor-control-media__file__content__info__icon {
        margin-right: 5px; }
  .elementor-control-media__file__controls {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-left: 1px solid #d5dadf; }
    .elementor-control-media__file__controls__upload-button, .elementor-control-media__file__controls__remove {
      width: 27px;
      height: 27px;
      cursor: pointer;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
    .elementor-control-media__file__controls__upload-button {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; }
    .elementor-control-media__file__controls__remove {
      border-right: 1px solid #d5dadf; }

.elementor-control-media:not(.elementor-media-empty) .elementor-control-media__file__content__label {
  display: none; }

.elementor-control-media.elementor-media-empty .elementor-control-media__file__content__info {
  display: none; }

.elementor-control-media.elementor-media-empty .elementor-control-media__file__controls__remove {
  display: none; }

.elementor-control-media .elementor-control-dynamic-switcher {
  border: none;
  -webkit-border-radius: 0;
          border-radius: 0;
  background-color: rgba(109, 120, 130, 0.85);
  color: #fff; }
  .elementor-control-media .elementor-control-dynamic-switcher:hover {
    background-color: rgba(109, 120, 130, 0.95); }

.elementor-control-type-media.elementor-control-dynamic-value .elementor-control-input-wrapper {
  border: none; }

.elementor-control-type-number.elementor-control-dynamic input {
  -webkit-border-radius: 3px 0 0 3px;
          border-radius: 3px 0 0 3px;
  border-right: none; }

.elementor-control-type-number.elementor-control-dynamic .elementor-control-dynamic-switcher {
  -webkit-border-radius: 0 3px 3px 0;
          border-radius: 0 3px 3px 0; }

.elementor-control-type-order .elementor-control-oreder-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.elementor-control-type-order input {
  display: none; }
  .elementor-control-type-order input:checked + .elementor-control-order-label {
    -webkit-transform: scale(1, -1);
        -ms-transform: scale(1, -1);
            transform: scale(1, -1); }

.elementor-control-type-order select {
  -webkit-border-radius: 3px 0 0 3px;
          border-radius: 3px 0 0 3px; }
  .elementor-control-type-order select:not(:focus) ~ .elementor-control-order-label {
    border-color: #d5dadf; }
  .elementor-control-type-order select:focus ~ .elementor-control-order-label {
    border-color: #a4afb7; }

.elementor-control-type-order .elementor-control-order-label {
  position: relative;
  padding: 0;
  width: 40px;
  border: 1px solid;
  font-size: 10px;
  -webkit-border-radius: 0 3px 3px 0;
          border-radius: 0 3px 3px 0;
  margin-left: -3px;
  background-color: #fff;
  cursor: pointer; }
  .elementor-control-type-order .elementor-control-order-label i {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }

.elementor-control-type-popover_toggle input {
  display: none; }

.elementor-control-type-popover_toggle label {
  cursor: pointer; }

.elementor-control-type-popover_toggle .elementor-control-input-wrapper {
  direction: rtl; }

.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle:checked + .elementor-control-popover-toggle-toggle-label {
  color: #71d7f7; }

.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle:not(:checked) ~ .elementor-control-popover-toggle-reset-label {
  display: none; }

.elementor-control-type-popover_toggle .elementor-control-popover-toggle-reset-label {
  color: #c2cbd2;
  margin-right: 5px; }

.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle-label {
  height: 27px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  border: 1px solid #d5dadf; }

.elementor-controls-popover.e-controls-popover--typography {
  padding-top: 0; }

.e-control-global .elementor-control-popover-toggle-toggle-label {
  -webkit-border-radius: 0 3px 3px 0;
          border-radius: 0 3px 3px 0;
  -ms-flex-negative: 0;
      flex-shrink: 0; }

.elementor-control-type-repeater .elementor-control:not(.elementor-control-type-tab) {
  padding-right: 10px;
  padding-left: 10px;
  padding-bottom: 10px; }

.elementor-control-type-repeater.elementor-repeater-has-minimum-rows .elementor-repeater-tool-remove {
  display: none; }

.elementor-control-type-repeater .elementor-repeater-fields {
  margin: 10px 0; }

.elementor-control-type-repeater .elementor-repeater-row-controls {
  border: 1px solid #d5dadf;
  border-top-width: 0;
  padding-top: 15px; }
  .elementor-control-type-repeater .elementor-repeater-row-controls:not(.editable) {
    display: none; }

.elementor-control-type-repeater .elementor-repeater-row-tools {
  display: table;
  table-layout: fixed;
  width: 100%;
  color: #556068;
  background-color: #d5dadf;
  height: 40px;
  border-spacing: 1px;
  -webkit-transition: all .5s;
  -o-transition: all .5s;
  transition: all .5s; }
  .elementor-control-type-repeater .elementor-repeater-row-tools:hover {
    background-color: #a4afb7; }
  .elementor-control-type-repeater .elementor-repeater-row-tools > div {
    display: table-cell;
    text-align: center;
    vertical-align: middle;
    cursor: pointer; }
    .elementor-control-type-repeater .elementor-repeater-row-tools > div:not(.elementor-repeater-row-handle-sortable) {
      background-color: #fff; }
    .elementor-control-type-repeater .elementor-repeater-row-tools > div:hover {
      opacity: .95; }
  .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title {
    text-align: left;
    padding: 0 10px;
    font-size: 12px;
    white-space: nowrap;
    -o-text-overflow: ellipsis;
       text-overflow: ellipsis;
    overflow: hidden; }
    .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title .eicon,
    .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title i,
    .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title svg {
      margin-right: 5px; }
    .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title img[src$="svg"] {
      width: 1em; }
  .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-tool {
    width: 40px; }
  .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-handle-sortable {
    cursor: move;
    width: 10px;
    color: #fff; }

.elementor-control-type-repeater .elementor-button-wrapper {
  text-align: center;
  padding-top: 5px; }

.elementor-control-type-section {
  margin-top: 10px;
  padding: 0; }
  .elementor-control-type-section.elementor-open {
    padding-bottom: 15px; }
  .elementor-control-type-section + .elementor-control:not(.elementor-control-type-section):before {
    display: none; }

.elementor-shadow-box .elementor-shadow-slider {
  margin-top: 10px; }

.elementor-shadow-box .elementor-color-picker-wrapper .elementor-control-title {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1; }

.elementor-control-type-slider.elementor-control-dynamic input {
  -webkit-border-radius: 3px 0 0 3px;
          border-radius: 3px 0 0 3px; }

.elementor-control-type-slider .elementor-control-unit-2 {
  width: 21%; }

.elementor-control-type-slider.elementor-control-type-slider--multiple .elementor-control-input-wrapper {
  display: block; }

.elementor-control-type-slider--multiple {
  padding-bottom: 40px; }
  .elementor-control-type-slider--multiple .elementor-slider {
    margin-top: 12px;
    width: 98%; }

.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle {
  -webkit-border-radius: 0;
          border-radius: 0;
  width: 10px;
  -webkit-transform: translateY(calc(50% - 14px)) translateX(4px);
      -ms-transform: translateY(calc(50% - 14px)) translateX(4px);
          transform: translateY(calc(50% - 14px)) translateX(4px); }
  .elementor-control-type-slider--handles-range .elementor-slider .noUi-handle:after {
    content: '';
    position: absolute;
    top: 2px;
    height: 12px;
    width: 11px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    background-color: #fff;
    -webkit-border-radius: 3px;
            border-radius: 3px; }
  .elementor-control-type-slider--handles-range .elementor-slider .noUi-handle-lower:after {
    left: 5px;
    -webkit-box-shadow: 2px -2px 3px 0px rgba(0, 0, 0, 0.1);
            box-shadow: 2px -2px 3px 0px rgba(0, 0, 0, 0.1); }
  .elementor-control-type-slider--handles-range .elementor-slider .noUi-handle-upper:after {
    right: 5px;
    -webkit-box-shadow: -2px 2px 3px 0px rgba(0, 0, 0, 0.1);
            box-shadow: -2px 2px 3px 0px rgba(0, 0, 0, 0.1); }

.elementor-control-type-slider .elementor-control-dynamic-switcher {
  border-left-width: 0;
  -webkit-border-radius: 0 3px 3px 0;
          border-radius: 0 3px 3px 0; }

.elementor-control-type-slider .elementor-control-input-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.elementor-control-type-slider .elementor-dynamic-cover {
  margin-top: 10px; }

.elementor-slider {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  height: 4px;
  background-color: #d5dadf;
  -webkit-border-radius: 5px;
          border-radius: 5px;
  position: relative;
  cursor: pointer; }
  .elementor-slider-input {
    width: 21%;
    min-width: 54px;
    margin-left: 12px; }
  .elementor-slider__extra {
    position: relative; }
  .elementor-slider__labels {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
  .elementor-slider__label {
    font-size: 9px;
    color: #c2cbd2; }
  .elementor-slider__scales {
    position: absolute;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: space-evenly;
        -ms-flex-pack: space-evenly;
            justify-content: space-evenly;
    width: 100%;
    margin-top: 4px; }
  .elementor-slider__scale {
    width: 1px;
    height: 21px;
    background-color: #a4afb7; }
  .elementor-slider .noUi-handle {
    height: 16px;
    width: 16px;
    background-color: #fff;
    right: 0;
    -webkit-transform: translateY(calc(50% - 14px)) translateX(8px);
        -ms-transform: translateY(calc(50% - 14px)) translateX(8px);
            transform: translateY(calc(50% - 14px)) translateX(8px);
    position: absolute;
    -webkit-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.3);
            box-shadow: 0 1px 5px rgba(0, 0, 0, 0.3);
    -webkit-border-radius: 50%;
            border-radius: 50%; }
  .elementor-slider .noUi-connects {
    position: absolute;
    width: 100%;
    height: 4px; }
  .elementor-slider .noUi-connect {
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    will-change: transform;
    -webkit-transform-origin: 0 0;
        -ms-transform-origin: 0 0;
            transform-origin: 0 0;
    background-color: #a4afb7; }
  .elementor-slider .noUi-tooltip {
    position: absolute;
    top: calc(100% + 5px);
    left: calc(50% - 4px);
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    font-size: 10px; }

.elementor-control-type-structure .elementor-control-field {
  display: initial; }

.elementor-control-type-structure .elementor-control-structure-preset {
  padding: 3px;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  display: inline-block;
  cursor: pointer;
  height: 50px; }
  .elementor-control-type-structure .elementor-control-structure-preset svg {
    height: 100%; }
  .elementor-control-type-structure .elementor-control-structure-preset path {
    fill: #e6e9ec; }

.elementor-control-type-structure .elementor-control-structure-reset {
  padding: 15px 20px 0;
  font-size: 11px;
  cursor: pointer;
  color: #a4afb7;
  border-top: 1px solid #e6e9ec;
  margin: 0 -20px; }

.elementor-control-type-structure .elementor-control-structure-title {
  margin: 10px -20px 0; }
  .elementor-control-type-structure .elementor-control-structure-title:before {
    height: 10px;
    -webkit-box-shadow: inset 0 2px 4px rgba(127, 127, 127, 0.1);
            box-shadow: inset 0 2px 4px rgba(127, 127, 127, 0.1); }

.elementor-control-type-structure .elementor-control-structure-presets {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .elementor-control-type-structure .elementor-control-structure-presets input {
    display: none; }
    .elementor-control-type-structure .elementor-control-structure-presets input:checked + .elementor-control-structure-preset path {
      fill: #a4afb7; }

.elementor-control-type-structure .elementor-control-structure-preset-wrapper {
  margin-bottom: 15px; }

.elementor-control-type-structure .elementor-control-structure-preset-title {
  text-align: center;
  padding-top: 5px;
  font-style: italic;
  font-size: 11px;
  color: #a4afb7; }

.elementor-control-type-switcher .elementor-control-input-wrapper {
  text-align: right; }

.elementor-control-type-switcher .elementor-switch {
  position: relative;
  display: inline-block;
  vertical-align: top;
  height: 20px;
  background-color: white;
  -webkit-border-radius: 18px;
          border-radius: 18px;
  cursor: pointer; }

.elementor-control-type-switcher .elementor-switch-input {
  display: none; }

.elementor-control-type-switcher .elementor-switch-label {
  position: relative;
  display: block;
  height: inherit;
  font-size: 7px;
  text-transform: uppercase;
  background: #eceeef;
  -webkit-border-radius: inherit;
          border-radius: inherit;
  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.12), inset 0 0 2px rgba(0, 0, 0, 0.15);
          box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.12), inset 0 0 2px rgba(0, 0, 0, 0.15);
  -webkit-transition: 0.15s ease-out;
  -o-transition: 0.15s ease-out;
  transition: 0.15s ease-out;
  -webkit-transition-property: opacity, background;
  -o-transition-property: opacity, background;
  transition-property: opacity, background; }

.elementor-control-type-switcher .elementor-switch-label:before, .elementor-control-type-switcher .elementor-switch-label:after {
  position: absolute;
  top: 0;
  width: 50%;
  text-align: center;
  line-height: 20px;
  -webkit-transition: inherit;
  -o-transition: inherit;
  transition: inherit; }

.elementor-control-type-switcher .elementor-switch-label:before {
  content: attr(data-off);
  right: 3px;
  color: #a4afb7;
  text-shadow: 0 1px rgba(255, 255, 255, 0.5); }

.elementor-control-type-switcher .elementor-switch-label:after {
  content: attr(data-on);
  left: 3px;
  color: white;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
  opacity: 0; }

.elementor-control-type-switcher .elementor-switch-input:checked ~ .elementor-switch-label {
  background: #71d7f7;
  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.15), inset 0 0 3px rgba(0, 0, 0, 0.2);
          box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.15), inset 0 0 3px rgba(0, 0, 0, 0.2); }
  .elementor-control-type-switcher .elementor-switch-input:checked ~ .elementor-switch-label:before {
    opacity: 0; }
  .elementor-control-type-switcher .elementor-switch-input:checked ~ .elementor-switch-label:after {
    opacity: 1; }

.elementor-control-type-switcher .elementor-switch-handle {
  position: absolute;
  top: 1px;
  left: 1px;
  width: 18px;
  height: 18px;
  background: white;
  -webkit-border-radius: 10px;
          border-radius: 10px;
  -webkit-transition: left 0.15s ease-out;
  -o-transition: left 0.15s ease-out;
  transition: left 0.15s ease-out; }

.elementor-control-type-switcher .elementor-switch-input:checked ~ .elementor-switch-handle {
  left: initial;
  right: 1px;
  -webkit-box-shadow: -1px 1px 5px rgba(0, 0, 0, 0.2);
          box-shadow: -1px 1px 5px rgba(0, 0, 0, 0.2); }

.elementor-control-type-tabs {
  font-size: 0.8em;
  text-transform: uppercase;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.elementor-control-type-tab {
  text-align: center;
  width: 100%;
  padding: 0;
  line-height: 25px;
  border-top: 1px solid #d5dadf;
  border-bottom: 1px solid #d5dadf;
  border-right: 1px solid #d5dadf;
  cursor: pointer; }
  .elementor-control-type-tab:first-child {
    border-left: 1px solid #d5dadf;
    -webkit-border-top-left-radius: 3px;
            border-top-left-radius: 3px;
    -webkit-border-bottom-left-radius: 3px;
            border-bottom-left-radius: 3px; }
  .elementor-control-type-tab:last-child {
    -webkit-border-top-right-radius: 3px;
            border-top-right-radius: 3px;
    -webkit-border-bottom-right-radius: 3px;
            border-bottom-right-radius: 3px; }
  .elementor-control-type-tab.elementor-tab-active {
    background-color: #a4afb7;
    border-color: #a4afb7;
    color: #ffffff; }

.elementor-tab-close {
  display: none !important; }

.elementor-control-type-textarea.elementor-control-dynamic-value .elementor-control-dynamic-switcher,
.elementor-control-type-code.elementor-control-dynamic-value .elementor-control-dynamic-switcher {
  -webkit-border-radius: 0 3px 3px 0;
          border-radius: 0 3px 3px 0;
  border-left-width: 0; }

.elementor-control-type-textarea .elementor-control-dynamic-switcher,
.elementor-control-type-code .elementor-control-dynamic-switcher {
  -webkit-border-radius: 0px 3px;
          border-radius: 0px 3px; }

.elementor-control-type-textarea:not(.elementor-control-dynamic-value) .elementor-control-dynamic-switcher,
.elementor-control-type-code:not(.elementor-control-dynamic-value) .elementor-control-dynamic-switcher {
  position: absolute;
  top: 0;
  z-index: 1;
  right: 0; }

.elementor-control-type-textarea .elementor-control-input-wrapper,
.elementor-control-type-code .elementor-control-input-wrapper {
  position: relative; }

.elementor-control-type-textarea textarea,
.elementor-control-type-code textarea {
  display: block;
  font-family: inherit; }
  .elementor-control-type-textarea textarea:focus + .elementor-control-dynamic-switcher,
  .elementor-control-type-code textarea:focus + .elementor-control-dynamic-switcher {
    display: none; }

.elementor-control-type-textarea pre:focus-within + .elementor-control-dynamic-switcher,
.elementor-control-type-code pre:focus-within + .elementor-control-dynamic-switcher {
  display: none; }

.elementor-control-type-url.elementor-control-dynamic .elementor-input {
  -webkit-border-radius: 3px 0 0 3px;
          border-radius: 3px 0 0 3px; }

.elementor-control-type-url .elementor-control-field {
  position: relative; }

.elementor-control-type-url:not(.elementor-control-dynamic) .elementor-control-url-more, .elementor-control-type-url.elementor-control-dynamic-value .elementor-control-url-more {
  -webkit-border-radius: 0 3px 3px 0;
          border-radius: 0 3px 3px 0; }

.elementor-control-type-url .elementor-control-input-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row; }

.elementor-control-type-url .elementor-control-url-more {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  border: 1px solid #d5dadf;
  border-left: none;
  cursor: pointer; }
  .elementor-control-type-url .elementor-control-url-more i {
    font-size: 12px; }
  .elementor-control-type-url .elementor-control-url-more-options {
    display: none;
    padding-top: 10px; }
    .elementor-control-type-url .elementor-control-url-more-options .elementor-control-field-description {
      margin-top: 10px; }

.elementor-control-type-url .elementor-control-url-option {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .elementor-control-type-url .elementor-control-url-option:not(:last-child) {
    padding-bottom: 10px; }
  .elementor-control-type-url .elementor-control-url-option input,
  .elementor-control-type-url .elementor-control-url-option label {
    cursor: pointer; }
  .elementor-control-type-url .elementor-control-url-option-input {
    margin: 0;
    padding: 0;
    -webkit-border-radius: 2px;
            border-radius: 2px;
    margin-right: 5px;
    -webkit-appearance: none;
    -moz-appearance: none;
    outline: none;
    content: none;
    height: 15px;
    width: 15px;
    border: 1px solid #d5dadf;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .elementor-control-type-url .elementor-control-url-option-input:checked {
      background: #71d7f7;
      border: none; }
      .elementor-control-type-url .elementor-control-url-option-input:checked:before {
        display: block;
        content: "";
        width: 4px;
        height: 7px;
        border: solid white;
        border-width: 0 2px 2px 0;
        -webkit-transform: rotate(45deg);
            -ms-transform: rotate(45deg);
                transform: rotate(45deg); }
  .elementor-control-type-url .elementor-control-url-option label {
    font-size: 12px; }

.elementor-control-type-url .elementor-control-url-external-hide .elementor-control-url-more {
  display: none; }

.elementor-control-type-url .elementor-control-url-external-show .elementor-input,
.elementor-control-type-url .elementor-control-url-external-show .elementor-dynamic-cover {
  -webkit-border-radius: 3px 0 0 3px;
          border-radius: 3px 0 0 3px; }

.elementor-control-type-url .elementor-control-url-autocomplete-spinner {
  display: none;
  position: absolute;
  top: 5px;
  right: 0px;
  width: 10px;
  height: 10px;
  font-size: 10px;
  color: #D4D4D4; }

.elementor-control-type-url .elementor-control-url__custom-attributes {
  margin-top: 5px; }
  .elementor-control-type-url .elementor-control-url__custom-attributes label {
    font-size: 12px; }
  .elementor-control-type-url .elementor-control-url__custom-attributes input {
    width: 100%;
    margin-top: 10px; }

.elementor-control-type-url .elementor-input {
  direction: ltr; }
  .elementor-control-type-url .elementor-input:not(:focus) + .elementor-control-url-more {
    border-color: #d5dadf; }
  .elementor-control-type-url .elementor-input:focus ~ div {
    border-color: #a4afb7; }

.elementor-control-type-url .elementor-control-dynamic-switcher {
  border-left: none;
  -webkit-border-radius: 0 3px 3px 0;
          border-radius: 0 3px 3px 0; }

.elementor-autocomplete-menu {
  position: absolute;
  background: #fff;
  color: #495157;
  border: 1px solid #a4afb7;
  margin: 0;
  list-style: none;
  padding: 4px 0;
  height: auto;
  width: 100%;
  min-width: 260px;
  max-width: 300px;
  max-height: 200px;
  overflow-y: auto;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  -webkit-transition: all .3s ease-in-out;
  -o-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
  cursor: default;
  z-index: 1; }
  .elementor-autocomplete-menu .ui-menu-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-item-align: baseline;
        align-self: baseline;
    padding: 5px 8px;
    font-size: 12px;
    width: 100%;
    line-height: 1.2;
    cursor: pointer; }
    .elementor-autocomplete-menu .ui-menu-item.ui-state-hover, .elementor-autocomplete-menu .ui-menu-item.ui-state-active, .elementor-autocomplete-menu .ui-menu-item.ui-state-focus {
      background: #e6e9ec; }
  .elementor-autocomplete-menu .elementor-autocomplete-item-info {
    font-size: 10px;
    padding-top: 2px; }

.elementor-control-type-wp_widget .widget-inside {
  display: block; }

.elementor-control-type-wp_widget .quicktags-toolbar input {
  width: auto; }

.elementor-control-type-wysiwyg * {
  -webkit-box-sizing: content-box;
          box-sizing: content-box; }

.elementor-control-type-wysiwyg .wp-editor-container {
  border: 1px solid #e6e9ec; }

.elementor-control-type-wysiwyg .wp-editor-tabs {
  border: 1px solid #d5dadf;
  border-bottom: none;
  -webkit-border-radius: 3px 3px 0 0;
          border-radius: 3px 3px 0 0; }

.elementor-control-type-wysiwyg #insert-media-button {
  height: initial;
  line-height: 24px;
  font-size: 10px;
  color: #6d7882;
  border-color: #d5dadf;
  background-color: #e6e9ec;
  min-height: initial; }

.elementor-control-type-wysiwyg .ed_button {
  height: 22px;
  width: initial; }

.elementor-control-type-wysiwyg .wp-media-buttons-icon {
  height: 14px;
  margin: 0; }
  .elementor-control-type-wysiwyg .wp-media-buttons-icon:before {
    font-size: 14px; }

.elementor-control-type-wysiwyg .wp-switch-editor {
  position: static;
  border: none;
  margin: 0;
  color: #6d7882;
  font-size: 10px;
  padding: 3px 9px 4px; }

.elementor-control-type-wysiwyg .switch-html {
  border: solid #d5dadf;
  border-width: 0 1px; }

.elementor-control-type-wysiwyg .html-active .switch-tmce {
  background-color: transparent; }

.elementor-control-type-wysiwyg .html-active .switch-html {
  background-color: #e6e9ec; }

.elementor-control-type-wysiwyg .tmce-active .switch-tmce {
  background-color: #e6e9ec; }

.elementor-control-type-wysiwyg .tmce-active .switch-html {
  background-color: transparent; }

.elementor-control-type-wysiwyg .mce-toolbar-grp, .elementor-control-type-wysiwyg .quicktags-toolbar {
  background-color: #e6e9ec; }

.elementor-control-type-wysiwyg .mce-toolbar-grp > div {
  padding: 0 3px; }

.elementor-control-type-wysiwyg .elementor-wp-editor {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

.elementor-control-type-wysiwyg .mce-ico {
  color: #6d7882;
  font-size: 16px; }

.elementor-control-type-wysiwyg .mce-btn {
  margin-right: 0;
  margin-left: 0; }
  .elementor-control-type-wysiwyg .mce-btn:hover, .elementor-control-type-wysiwyg .mce-btn:active, .elementor-control-type-wysiwyg .mce-btn.mce-active {
    border-color: #d5dadf; }

.elementor-control-type-wysiwyg .mce-path {
  padding: 5px 10px; }

.elementor-control-type-wysiwyg .mce-path-item {
  font-size: 12px;
  color: #6d7882; }

.elementor-control-type-wysiwyg .elementor-control-dynamic-switcher {
  border: none; }

.elementor-control-type-text .elementor-control-dynamic-switcher {
  border-left-width: 0;
  -webkit-border-radius: 0 3px 3px 0;
          border-radius: 0 3px 3px 0; }

.elementor-control-type-text.elementor-control-dynamic input {
  -webkit-border-radius: 3px 0 0 3px;
          border-radius: 3px 0 0 3px; }

.ui-resizable-n {
  top: -5px; }

.ui-resizable-e {
  right: -5px; }

.ui-resizable-s {
  bottom: -5px; }

.ui-resizable-w {
  left: -5px; }

.ui-resizable-ne {
  top: -5px;
  right: -5px; }

.ui-resizable-nw {
  top: -5px;
  left: -5px; }

.ui-resizable-se {
  bottom: -5px;
  right: -5px; }

.ui-resizable-sw {
  bottom: -5px;
  left: -5px; }

.ui-resizable-n, .ui-resizable-s {
  left: 0;
  height: 10px;
  width: 100%;
  cursor: ns-resize; }

.ui-resizable-e, .ui-resizable-w {
  top: 0;
  height: 100%;
  width: 10px;
  cursor: ew-resize; }

.ui-resizable-ne, .ui-resizable-nw, .ui-resizable-se, .ui-resizable-sw {
  height: 15px;
  width: 15px; }

.ui-resizable-nw, .ui-resizable-se {
  cursor: nwse-resize; }

.ui-resizable-ne, .ui-resizable-sw {
  cursor: nesw-resize; }

.ui-resizable-handle {
  position: absolute; }

.ui-resizable-resizing {
  pointer-events: none; }

@-webkit-keyframes placeholder-section {
  0% {
    height: 0;
    opacity: 0; }
  100% {
    height: 40px;
    opacity: .9; } }

@keyframes placeholder-section {
  0% {
    height: 0;
    opacity: 0; }
  100% {
    height: 40px;
    opacity: .9; } }

@-webkit-keyframes placeholder-widget {
  0% {
    height: 0;
    opacity: 0; }
  100% {
    height: 10px;
    opacity: .9; } }

@keyframes placeholder-widget {
  0% {
    height: 0;
    opacity: 0; }
  100% {
    height: 10px;
    opacity: .9; } }

@-webkit-keyframes section-outline {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@keyframes section-outline {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

body.elementor-editor-active .elementor.elementor-edit-mode.layout-section .entry-content {
  overflow: visible; }

body.elementor-editor-active .elementor.elementor-edit-mode .article {
  overflow: visible; }

body.elementor-editor-active .elementor.elementor-edit-mode .elementor-element-overlay .elementor-editor-element-settings {
  clear: unset; }

body.elementor-editor-active .elementor.elementor-edit-mode .elementor-element.elementor-section {
  overflow: visible; }

.elementor-edit-area .animated {
  -webkit-animation-fill-mode: none !important;
          animation-fill-mode: none !important; }

.elementor-edit-area ul.elementor-editor-element-settings {
  word-break: normal;
  padding: 0; }

.elementor-edit-area .gallery {
  opacity: 1; }

.pen {
  position: relative;
  outline: none; }
  .pen:not([data-elementor-inline-editing-toolbar="advanced"]) {
    white-space: pre-wrap; }
  .pen-menu {
    -webkit-box-shadow: 1px 2px 3px -2px #222;
            box-shadow: 1px 2px 3px -2px #222;
    background-color: #6d7882;
    position: fixed;
    overflow: hidden;
    -webkit-border-radius: 3px;
            border-radius: 3px;
    z-index: 9999; }
    .pen-menu:after {
      top: 100%;
      content: '';
      position: absolute;
      border: 6px solid transparent;
      border-top-color: #6d7882;
      left: 50%;
      -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
              transform: translateX(-50%); }
    .pen-menu-below:after {
      top: 0;
      -webkit-transform: translateX(-50%) translateY(-100%) rotate(180deg);
          -ms-transform: translateX(-50%) translateY(-100%) rotate(180deg);
              transform: translateX(-50%) translateY(-100%) rotate(180deg); }
  .pen-icon {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    height: 35px;
    padding: 0 10px;
    font-size: 21px;
    color: #d5dadf;
    cursor: pointer;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none; }
    .pen-icon:hover {
      background: #556068; }
    .pen-icon[data-group], .pen-icon[data-action="closeGroup"] {
      display: none; }
    .pen-icon[data-action="close"]:before {
      content: '';
      position: absolute;
      left: 0;
      height: 60%;
      width: 1px;
      background-color: #556068; }
    .pen-icon.active {
      background-color: #556068;
      -webkit-box-shadow: inset 2px 2px 4px #556068;
              box-shadow: inset 2px 2px 4px #556068; }
  .pen-group-icon:after {
    font-family: eicons;
    font-size: 12px;
    content: '\e92a';
    padding-left: 4px;
    color: #71d7f7; }
  .pen-input-wrapper {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .pen-input-wrapper .pen-url-input {
      font-size: 12px;
      line-height: 1.5;
      padding: 0;
      padding-left: 10px;
      padding-right: 10px;
      width: 250px;
      direction: ltr; }
      .pen-input-wrapper .pen-url-input, .pen-input-wrapper .pen-url-input:focus {
        background-color: transparent;
        border: none;
        outline: none;
        -webkit-box-shadow: none;
                box-shadow: none;
        color: #fff; }
      .pen-input-wrapper .pen-url-input::-webkit-input-placeholder {
        color: #d5dadf; }
      .pen-input-wrapper .pen-url-input::-moz-placeholder {
        color: #d5dadf; }
      .pen-input-wrapper .pen-url-input::-ms-input-placeholder {
        color: #d5dadf; }
      .pen-input-wrapper .pen-url-input::placeholder {
        color: #d5dadf; }
  .pen-input-label {
    margin: 0;
    margin-right: -1px; }
  .pen-placeholder:before {
    content: attr(data-pen-placeholder);
    position: absolute;
    font-weight: normal;
    color: #757575;
    opacity: 0.6; }
  .pen-external-url-checkbox {
    display: none; }
    .pen-external-url-checkbox:checked + i {
      color: #fff; }

.elementor-inline-editing i:not([class]) {
  font-style: italic; }

.elementor-inline-editing b {
  font-weight: bold; }

.elementor-inline-editing u {
  text-decoration: underline; }

.e-element-color-picker {
  --primary-color: #71d7f7;
  --swatch-size: 25px;
  cursor: default;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  width: calc( calc( var( --count ) + 1 ) * var( --swatch-size ));
  height: var(--swatch-size);
  top: var(--top);
  left: var(--left);
  right: var(--right, unset);
  -webkit-border-radius: 3px;
          border-radius: 3px;
  opacity: 0;
  pointer-events: none;
  z-index: 9998;
  background-color: var(--primary-color);
  padding: 1px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  -webkit-transition: opacity .3s, width .3s;
  -o-transition: opacity .3s, width .3s;
  transition: opacity .3s, width .3s; }
  .e-element-color-picker.e-picker-hidden {
    opacity: 0;
    pointer-events: none; }
  .e-element-color-picker::before {
    content: '';
    -webkit-box-flex: 0;
        -ms-flex: 0 1 var(--swatch-size);
            flex: 0 1 var(--swatch-size);
    max-width: 100%;
    height: 100%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    text-align: center; }
  .e-element-color-picker::after {
    content: '\e91e';
    font-family: 'eicons';
    color: #FFF;
    font-size: 1rem;
    line-height: var(--swatch-size);
    position: absolute;
    left: .3rem;
    z-index: -1; }
  .e-element-color-picker__swatch {
    -webkit-box-flex: 1;
        -ms-flex: 1 0 var(--swatch-size);
            flex: 1 0 var(--swatch-size);
    max-width: 100%;
    height: 100%;
    cursor: pointer;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    position: relative;
    overflow: hidden;
    -webkit-border-radius: inherit;
            border-radius: inherit;
    /* Hack to fix transparent `--color` on hover */
    background: -webkit-gradient(linear, left top, left bottom, from(var(--color)), to(var(--color))), -webkit-gradient(linear, left top, left bottom, from(var(--primary-color)), to(var(--primary-color)));
    background: -webkit-linear-gradient(var(--color), var(--color)), -webkit-linear-gradient(var(--primary-color), var(--primary-color));
    background: -o-linear-gradient(var(--color), var(--color)), -o-linear-gradient(var(--primary-color), var(--primary-color));
    background: linear-gradient(var(--color), var(--color)), linear-gradient(var(--primary-color), var(--primary-color)); }
    .e-element-color-picker__swatch:not(:first-child) {
      border-left: 1px solid var(--primary-color); }
    .e-element-color-picker__swatch::before {
      content: attr(data-text);
      position: absolute;
      left: 50%;
      top: 50%;
      opacity: 0;
      color: var(--color);
      font-size: 10px;
      font-weight: 300;
      font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
      -webkit-transform: translate(-50%, -50%);
          -ms-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%);
      -webkit-filter: hue-rotate(180deg) grayscale(1) contrast(999) invert(1);
              filter: hue-rotate(180deg) grayscale(1) contrast(999) invert(1);
      -webkit-transition: inherit;
      -o-transition: inherit;
      transition: inherit; }
    .e-element-color-picker__swatch:hover {
      -ms-flex-preferred-size: calc( 2 * var( --swatch-size ));
          flex-basis: calc( 2 * var( --swatch-size ));
      -ms-flex-negative: 0;
          flex-shrink: 0; }
      .e-element-color-picker__swatch:hover::before {
        opacity: 1; }

.elementor-editor__ui-state__color-picker *:not(.e-element-color-picker__swatch) {
  cursor: url("../images/eyedropper.svg") 0 20, pointer; }

.elementor-editor__ui-state__color-picker .e-element-color-picker:not(.e-picker-hidden):hover,
.elementor-editor__ui-state__color-picker .elementor-element:hover > .e-element-color-picker:not(.e-picker-hidden),
.elementor-editor__ui-state__color-picker .elementor-widget-container:hover + .e-element-color-picker:not(.e-picker-hidden) {
  opacity: 1;
  pointer-events: all; }

.elementor-editor__ui-state__color-picker .elementor-section:hover {
  outline: 1px solid #71d7f7; }

html.elementor-html {
  margin-top: 0 !important; }

.elementor-edit-area {
  position: relative; }

.elementor.loading {
  opacity: 0.5; }

.elementor-edit-area-active .elementor-inner-section:first-child {
  margin-top: 15px; }

.elementor-edit-area-active .elementor-widget-wrap.elementor-element-empty {
  min-height: 30px; }
  @media (min-width: 768px) {
    .elementor-edit-area-active .elementor-widget-wrap.elementor-element-empty {
      margin: 10px; } }

.elementor-edit-area-active .elementor-column {
  min-width: 25px; }

.elementor-edit-area-active .elementor-widget.elementor-loading {
  opacity: .3; }

.elementor-edit-area-active .elementor-widget.elementor-element-editable, .elementor-edit-area-active .elementor-widget.elementor-element-edit-mode:hover {
  -webkit-box-shadow: 0 0 0 1px #71d7f7;
          box-shadow: 0 0 0 1px #71d7f7; }

.elementor-edit-area-active .elementor-widget:not(:hover) .elementor-editor-element-settings {
  display: none; }

.elementor-edit-area-active .elementor-widget.ui-draggable-dragging {
  pointer-events: none; }

.elementor-edit-area-active .elementor-editor-element-setting {
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0;
  margin: 0;
  font-size: 11px;
  color: #fff;
  width: 25px;
  -webkit-transition: margin .3s, width .3s, font .3s;
  -o-transition: margin .3s, width .3s, font .3s;
  transition: margin .3s, width .3s, font .3s; }

.elementor-edit-area-active .elementor-inline-editing {
  min-height: 15px; }

.elementor-edit-area-active .elementor-edit-hidden {
  display: none; }

.elementor-section-wrap:empty {
  min-height: 25px; }

.elementor-element > .elementor-element-overlay {
  position: absolute;
  top: 0;
  right: 0;
  letter-spacing: 0;
  z-index: 9998;
  pointer-events: none; }

.elementor-element-empty .elementor-sortable-placeholder {
  display: none; }

.elementor-element.elementor-widget-empty {
  background-color: rgba(213, 218, 223, 0.8); }
  .elementor-element.elementor-widget-empty .elementor-widget-empty-icon {
    color: #c2cbd2;
    font-size: 22px;
    display: block;
    text-align: center;
    padding: 10px 0; }

.elementor-element:not(:hover):not(.elementor-element-editable) > .elementor-element-overlay .elementor-editor-element-settings {
  display: none; }

.elementor-element--toggle-edit-tools > .elementor-element-overlay .elementor-editor-element-edit:not(.elementor-active) ~ * {
  width: 0;
  font-size: 0; }

.elementor-element[data-side="top"]:before, .elementor-element[data-side="bottom"] + .elementor-element:before {
  content: '';
  background-color: #71d7f7;
  -webkit-transition-timing-function: ease-out;
       -o-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  opacity: .9;
  height: 10px;
  -webkit-animation: placeholder-widget 500ms;
          animation: placeholder-widget 500ms;
  display: block; }

.elementor-element[data-side="bottom"]:last-child:after {
  content: '';
  background-color: #71d7f7;
  -webkit-transition-timing-function: ease-out;
       -o-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  opacity: .9;
  height: 10px;
  -webkit-animation: placeholder-widget 500ms;
          animation: placeholder-widget 500ms;
  display: block; }

.elementor-element.elementor-absolute, .elementor-element.elementor-fixed {
  cursor: -webkit-grab;
  cursor: grab; }
  .elementor-element.elementor-absolute:active, .elementor-element.elementor-fixed:active {
    cursor: -webkit-grabbing;
    cursor: grabbing; }
  .elementor-element.elementor-absolute .eicon-edit:before, .elementor-element.elementor-fixed .eicon-edit:before {
    content: '\e902'; }

.elementor-section > .elementor-element-overlay {
  left: 0;
  bottom: 0; }
  .elementor-section > .elementor-element-overlay:after {
    position: absolute;
    left: 2px;
    right: 2px;
    top: 2px;
    bottom: 2px;
    outline: 2px solid #71d7f7;
    -webkit-animation: section-outline .75s;
            animation: section-outline .75s; }

.elementor-section:hover > .elementor-element-overlay:after, .elementor-section.elementor-element-editable > .elementor-element-overlay:after {
  content: ''; }

.elementor-section-filled .elementor-sortable-placeholder.elementor-column {
  display: none; }

.elementor-section-filled .elementor-row.elementor-draggable-over {
  border: 1px solid #d72b3f; }

.elementor-column > .elementor-element-overlay {
  left: 0;
  bottom: 0; }
  .elementor-column > .elementor-element-overlay:after {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    outline: 1px dashed #6d7882; }

.elementor-column:hover > .elementor-element-overlay, .elementor-column.elementor-element-editable > .elementor-element-overlay {
  border: 1px solid #ffffff; }
  .elementor-column:hover > .elementor-element-overlay:after, .elementor-column.elementor-element-editable > .elementor-element-overlay:after {
    content: ''; }

.elementor-column.elementor-dragging-on-child > .elementor-element-overlay {
  border: 1px solid #71d7f7; }
  .elementor-column.elementor-dragging-on-child > .elementor-element-overlay:after {
    display: none; }

.elementor-column > .ui-resizable-e, .elementor-column > .ui-resizable-w {
  cursor: col-resize;
  width: 7px;
  position: absolute;
  right: -5px;
  top: 0;
  height: 100%; }

.elementor-column:last-of-type > .ui-resizable-e, .elementor-column:last-of-type > .ui-resizable-w {
  display: none !important; }

@media (max-width: 1024px) {
  .elementor-column > .ui-resizable-e, .elementor-column > .ui-resizable-w {
    display: none !important; } }

.elementor-editor-element-settings {
  position: absolute;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 26px;
  list-style: none;
  margin: 0;
  padding: 0;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 13px;
  font-weight: normal;
  font-style: normal;
  line-height: 1;
  z-index: 1;
  pointer-events: all; }

@media (min-width: 1025px) {
  .elementor-editor-element-edit {
    cursor: move; } }

.elementor-editor-section-settings {
  height: 24px;
  top: 1px;
  left: 50%;
  -webkit-transform: translateX(-50%) translateY(-100%);
      -ms-transform: translateX(-50%) translateY(-100%);
          transform: translateX(-50%) translateY(-100%);
  background-color: #71d7f7;
  -webkit-border-radius: 5px 5px 0 0;
          border-radius: 5px 5px 0 0;
  -webkit-box-shadow: 0px -2px 8px rgba(0, 0, 0, 0.05);
          box-shadow: 0px -2px 8px rgba(0, 0, 0, 0.05); }
  .elementor-editor-section-settings i.eicon-handle {
    font-size: 16px; }
  .elementor-editor-section-settings .elementor-editor-element-setting:hover {
    background-color: #10bcf2; }
  .elementor-editor-section-settings .elementor-editor-element-setting:first-child {
    -webkit-border-radius: 5px 0 0 0;
            border-radius: 5px 0 0 0; }
    .elementor-editor-section-settings .elementor-editor-element-setting:first-child:before {
      content: '';
      position: absolute;
      border: solid transparent;
      top: 2px;
      border-right-color: #71d7f7;
      border-width: 22px 12px 0 0;
      right: calc(100% - 1px); }
    .elementor-editor-section-settings .elementor-editor-element-setting:first-child:hover:before {
      border-right-color: #10bcf2; }
  .elementor-editor-section-settings .elementor-editor-element-setting:last-child {
    -webkit-border-radius: 0 5px 0 0;
            border-radius: 0 5px 0 0; }
    .elementor-editor-section-settings .elementor-editor-element-setting:last-child:after {
      content: '';
      position: absolute;
      border: solid transparent;
      top: 2px;
      border-left-color: #71d7f7;
      border-width: 22px 0 0 12px;
      left: calc(100% - 1px); }
    .elementor-editor-section-settings .elementor-editor-element-setting:last-child:hover:after {
      border-left-color: #10bcf2; }

.elementor-section--handles-inside .elementor-editor-section-settings {
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  -webkit-border-radius: 0 0 5px 5px;
          border-radius: 0 0 5px 5px; }
  .elementor-section--handles-inside .elementor-editor-section-settings .elementor-editor-element-setting:first-child {
    -webkit-border-radius: 0 0 0 5px;
            border-radius: 0 0 0 5px; }
    .elementor-section--handles-inside .elementor-editor-section-settings .elementor-editor-element-setting:first-child:before {
      top: 0;
      border-width: 0 12px 22px 0; }
  .elementor-section--handles-inside .elementor-editor-section-settings .elementor-editor-element-setting:last-child {
    -webkit-border-radius: 0 0 5px 0;
            border-radius: 0 0 5px 0; }
    .elementor-section--handles-inside .elementor-editor-section-settings .elementor-editor-element-setting:last-child:after {
      top: 0;
      border-width: 0 0 22px 12px; }

.elementor-editor-column-settings {
  top: -1px;
  left: -1px;
  -webkit-border-radius: 0 0 3px 0;
          border-radius: 0 0 3px 0;
  overflow: hidden; }
  .elementor-editor-column-settings .elementor-editor-element-setting {
    background-color: #495157; }
    .elementor-editor-column-settings .elementor-editor-element-setting:not(:hover) {
      background-image: -webkit-gradient(linear, left top, left bottom, from(#6d7882), to(#556068));
      background-image: -webkit-linear-gradient(top, #6d7882, #556068);
      background-image: -o-linear-gradient(top, #6d7882, #556068);
      background-image: linear-gradient(to bottom, #6d7882, #556068); }

.elementor-editor-widget-settings {
  z-index: 2;
  top: -1px;
  right: -1px;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  -webkit-border-radius: 0 0 0 3px;
          border-radius: 0 0 0 3px;
  overflow: hidden; }
  .elementor-editor-widget-settings .elementor-editor-element-setting {
    background-color: #10bcf2; }
    .elementor-editor-widget-settings .elementor-editor-element-setting:not(:hover) {
      background-image: -webkit-gradient(linear, left bottom, left top, from(#41c9f4), to(#71d7f7));
      background-image: -webkit-linear-gradient(bottom, #41c9f4, #71d7f7);
      background-image: -o-linear-gradient(bottom, #41c9f4, #71d7f7);
      background-image: linear-gradient(to top, #41c9f4, #71d7f7); }

.elementor-empty-view {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1; }

.elementor-first-add {
  text-align: center;
  border: 1px dashed #d5dadf;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .elementor-first-add .elementor-icon {
    font-size: 19px;
    color: #a4afb7;
    cursor: pointer; }

.elementor-sortable-helper {
  position: absolute;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  background-color: #fff;
  text-align: center;
  color: #556068;
  -webkit-box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
          box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
  cursor: move; }
  .elementor-sortable-helper .icon {
    font-size: 28px;
    padding-top: 15px;
    line-height: 1; }
  .elementor-sortable-helper .elementor-element-title-wrapper {
    display: table;
    width: 100%; }
  .elementor-sortable-helper .title {
    font-size: 11px;
    font-family: Arial, Helvetica, sans-serif;
    font-weight: normal;
    font-style: normal;
    display: table-cell;
    vertical-align: middle;
    height: 40px; }

.elementor-editor-content-only .elementor-first-add {
  display: none; }

.elementor-editor-content-only .elementor-section > .elementor-element-overlay {
  display: none; }
  .elementor-editor-content-only .elementor-section > .elementor-element-overlay:after {
    display: none; }

.elementor-editor-content-only .elementor-section:hover > .elementor-element-overlay:after, .elementor-editor-content-only .elementor-section.elementor-element-editable > .elementor-element-overlay:after {
  display: none; }

.elementor-editor-content-only .elementor-column > .elementor-element-overlay {
  display: none; }
  .elementor-editor-content-only .elementor-column > .elementor-element-overlay:after {
    display: none; }

.elementor-editor-content-only .elementor-column:hover > .elementor-element-overlay:after, .elementor-editor-content-only .elementor-column.elementor-element-editable > .elementor-element-overlay:after {
  display: none; }

@media (min-width: 1025px) {
  .elementor-editor-content-only .elementor-editor-element-edit {
    cursor: pointer; } }

.elementor-sortable-placeholder:not(.elementor-column-placeholder) {
  background-color: #71d7f7;
  -webkit-animation-duration: 250ms;
          animation-duration: 250ms;
  opacity: .9;
  width: 100%;
  -ms-flex-item-align: stretch;
      align-self: stretch; }

.elementor-section-placeholder {
  height: 40px;
  -webkit-animation-name: placeholder-section;
          animation-name: placeholder-section; }

.elementor-column-placeholder {
  position: relative; }
  .elementor-column-placeholder:before, .elementor-column-placeholder:after {
    content: '';
    position: absolute;
    top: 10px;
    bottom: 10px;
    right: 10px;
    left: 10px; }
  .elementor-column-placeholder:before {
    border: 1px solid #6d7882; }
  .elementor-column-placeholder:after {
    border: 1px dashed #fff; }

.elementor-widget-placeholder {
  height: 10px;
  -webkit-animation-name: placeholder-widget;
          animation-name: placeholder-widget; }

.elementor-draggable-over:not([data-dragged-element="section"]):not([data-dragged-is-inner="true"]) > .elementor-empty-view > .elementor-first-add:after,
.elementor-first-add.elementor-html5dnd-current-element:after {
  content: '';
  background-color: #71d7f7;
  -webkit-transition-timing-function: ease-out;
       -o-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  opacity: .9;
  height: 10px;
  -webkit-animation: placeholder-widget 500ms;
          animation: placeholder-widget 500ms;
  width: 100%; }

.elementor-draggable-over:not([data-dragged-element="section"]):not([data-dragged-is-inner="true"]) > .elementor-empty-view > .elementor-first-add .elementor-icon,
.elementor-first-add.elementor-html5dnd-current-element .elementor-icon {
  display: none; }

.elementor-draggable-over[data-dragged-element="section"][data-dragged-is-inner="true"] .elementor-inner-column .elementor-sortable-placeholder {
  display: none; }

.elementor-add-section {
  all: initial;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 1160px;
  position: relative; }
  .elementor-add-section:not(.elementor-dragging-on-child) .elementor-add-section-inner {
    border: 2px dashed #d5dadf;
    background-color: rgba(255, 255, 255, 0.5); }
  .elementor-add-section.elementor-dragging-on-child .elementor-add-section-inner {
    border: 3px dashed #71d7f7; }
  .elementor-add-section[data-view="choose-action"] .elementor-select-preset {
    display: none; }
  .elementor-add-section[data-view="select-preset"] .elementor-add-new-section {
    display: none; }

.elementor-add-section-inner {
  text-align: center;
  margin: 20px;
  padding: 40px 0;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1; }

.elementor-add-new-section {
  display: inline-block; }
  .elementor-add-new-section .elementor-add-section-area-button {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    height: 40px;
    width: 40px;
    color: #fff;
    font-size: 16px;
    -webkit-border-radius: 50%;
            border-radius: 50%;
    -webkit-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
    cursor: pointer; }
    .elementor-add-new-section .elementor-add-section-area-button:hover {
      opacity: 0.85;
      -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
              box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); }
    .elementor-add-new-section .elementor-add-section-area-button:active {
      -webkit-box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.1);
              box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.1); }
  .elementor-add-new-section .elementor-add-section-button {
    background-color: #93003c; }
  .elementor-add-new-section .elementor-add-template-button {
    background-color: #6d7882;
    margin-left: 5px; }

.elementor-add-section-drag-title {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 13px;
  font-weight: normal;
  font-style: italic;
  line-height: 1;
  color: #556068;
  margin-top: 15px; }

.elementor-add-section-close {
  position: absolute;
  right: 40px;
  top: 40px;
  font-size: 20px;
  cursor: pointer;
  line-height: 1;
  color: #d5dadf; }
  .elementor-add-section-close:hover {
    color: #6d7882; }

.elementor-select-preset-title {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 13px;
  font-weight: 500;
  font-style: normal;
  text-transform: uppercase;
  color: #556068; }

.elementor-select-preset-list {
  list-style: none;
  padding: 0 25px;
  margin: 20px auto 0;
  overflow: hidden;
  max-width: 700px; }
  .elementor-select-preset-list .elementor-preset {
    cursor: pointer;
    margin: 0;
    padding: 10px;
    float: left;
    max-width: 33.333%; }
    .elementor-select-preset-list .elementor-preset:hover path {
      fill: #6d7882; }
    .elementor-select-preset-list .elementor-preset:not(:hover) path {
      fill: #d5dadf; }
    .elementor-select-preset-list .elementor-preset svg {
      height: 50px;
      width: 100%; }

#elementor-add-new-section {
  margin: 60px auto; }
  #elementor-add-new-section[data-view="choose-action"] .elementor-add-section-close {
    display: none; }

.elementor-add-section-inline {
  margin: 10px auto; }

.elementor-column-percents-tooltip {
  position: absolute;
  display: none;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  color: #fff;
  font-size: 10px;
  background-color: #556068;
  width: 40px;
  padding: 3.5px 0;
  text-align: center;
  z-index: 1;
  line-height: 1; }
  .elementor-column-percents-tooltip:after {
    content: '';
    position: absolute;
    width: 0;
    height: 0;
    border: 8.5px solid transparent;
    top: 0; }
  .elementor-column-percents-tooltip[data-side="left"] {
    -webkit-border-radius: 3px 0 0 3px;
            border-radius: 3px 0 0 3px;
    right: 15px; }
    .elementor-column-percents-tooltip[data-side="left"]:after {
      left: 100%;
      border-left-color: #556068;
      border-right-width: 0; }
  .elementor-column-percents-tooltip[data-side="right"] {
    -webkit-border-radius: 0 3px 3px 0;
            border-radius: 0 3px 3px 0;
    left: 15px; }
    .elementor-column-percents-tooltip[data-side="right"]:after {
      right: 100%;
      border-right-color: #556068;
      border-left-width: 0; }

.elementor-editor-preview .elementor-element-overlay,
.elementor-editor-preview .elementor-empty,
.elementor-editor-preview .elementor-add-section,
.elementor-editor-preview .elementor-add-section-inline,
.elementor-editor-preview .elementor-empty-view,
.elementor-editor-preview .elementor-widget-empty {
  display: none; }

.e-preview--show-hidden-elements[data-elementor-device-mode="widescreen"] .elementor-edit-area-active .elementor-hidden-widescreen,
.e-preview--show-hidden-elements[data-elementor-device-mode="desktop"] .elementor-edit-area-active .elementor-hidden-desktop,
.e-preview--show-hidden-elements[data-elementor-device-mode="laptop"] .elementor-edit-area-active .elementor-hidden-laptop,
.e-preview--show-hidden-elements[data-elementor-device-mode="tablet_extra"] .elementor-edit-area-active .elementor-hidden-tablet_extra,
.e-preview--show-hidden-elements[data-elementor-device-mode="tablet"] .elementor-edit-area-active .elementor-hidden-tablet,
.e-preview--show-hidden-elements[data-elementor-device-mode="mobile_extra"] .elementor-edit-area-active .elementor-hidden-mobile_extra,
.e-preview--show-hidden-elements[data-elementor-device-mode="mobile"] .elementor-edit-area-active .elementor-hidden-mobile {
  display: inherit;
  background: -webkit-repeating-linear-gradient(325deg, rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 1px, transparent 2px, transparent 9px);
  background: -o-repeating-linear-gradient(325deg, rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 1px, transparent 2px, transparent 9px);
  background: repeating-linear-gradient(125deg, rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 1px, transparent 2px, transparent 9px);
  border: 1px solid rgba(0, 0, 0, 0.02); }
  .e-preview--show-hidden-elements[data-elementor-device-mode="widescreen"] .elementor-edit-area-active .elementor-hidden-widescreen.elementor-section > .elementor-element-overlay,
  .e-preview--show-hidden-elements[data-elementor-device-mode="desktop"] .elementor-edit-area-active .elementor-hidden-desktop.elementor-section > .elementor-element-overlay,
  .e-preview--show-hidden-elements[data-elementor-device-mode="laptop"] .elementor-edit-area-active .elementor-hidden-laptop.elementor-section > .elementor-element-overlay,
  .e-preview--show-hidden-elements[data-elementor-device-mode="tablet_extra"] .elementor-edit-area-active .elementor-hidden-tablet_extra.elementor-section > .elementor-element-overlay,
  .e-preview--show-hidden-elements[data-elementor-device-mode="tablet"] .elementor-edit-area-active .elementor-hidden-tablet.elementor-section > .elementor-element-overlay,
  .e-preview--show-hidden-elements[data-elementor-device-mode="mobile_extra"] .elementor-edit-area-active .elementor-hidden-mobile_extra.elementor-section > .elementor-element-overlay,
  .e-preview--show-hidden-elements[data-elementor-device-mode="mobile"] .elementor-edit-area-active .elementor-hidden-mobile.elementor-section > .elementor-element-overlay {
    background-color: #d5dadf;
    mix-blend-mode: color; }
  .e-preview--show-hidden-elements[data-elementor-device-mode="widescreen"] .elementor-edit-area-active .elementor-hidden-widescreen.elementor-section:before,
  .e-preview--show-hidden-elements[data-elementor-device-mode="desktop"] .elementor-edit-area-active .elementor-hidden-desktop.elementor-section:before,
  .e-preview--show-hidden-elements[data-elementor-device-mode="laptop"] .elementor-edit-area-active .elementor-hidden-laptop.elementor-section:before,
  .e-preview--show-hidden-elements[data-elementor-device-mode="tablet_extra"] .elementor-edit-area-active .elementor-hidden-tablet_extra.elementor-section:before,
  .e-preview--show-hidden-elements[data-elementor-device-mode="tablet"] .elementor-edit-area-active .elementor-hidden-tablet.elementor-section:before,
  .e-preview--show-hidden-elements[data-elementor-device-mode="mobile_extra"] .elementor-edit-area-active .elementor-hidden-mobile_extra.elementor-section:before,
  .e-preview--show-hidden-elements[data-elementor-device-mode="mobile"] .elementor-edit-area-active .elementor-hidden-mobile.elementor-section:before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.6);
    z-index: 9997; }
  .e-preview--show-hidden-elements[data-elementor-device-mode="widescreen"] .elementor-edit-area-active .elementor-hidden-widescreen.elementor-inner-section .elementor-container,
  .e-preview--show-hidden-elements[data-elementor-device-mode="desktop"] .elementor-edit-area-active .elementor-hidden-desktop.elementor-inner-section .elementor-container,
  .e-preview--show-hidden-elements[data-elementor-device-mode="laptop"] .elementor-edit-area-active .elementor-hidden-laptop.elementor-inner-section .elementor-container,
  .e-preview--show-hidden-elements[data-elementor-device-mode="tablet_extra"] .elementor-edit-area-active .elementor-hidden-tablet_extra.elementor-inner-section .elementor-container,
  .e-preview--show-hidden-elements[data-elementor-device-mode="tablet"] .elementor-edit-area-active .elementor-hidden-tablet.elementor-inner-section .elementor-container,
  .e-preview--show-hidden-elements[data-elementor-device-mode="mobile_extra"] .elementor-edit-area-active .elementor-hidden-mobile_extra.elementor-inner-section .elementor-container,
  .e-preview--show-hidden-elements[data-elementor-device-mode="mobile"] .elementor-edit-area-active .elementor-hidden-mobile.elementor-inner-section .elementor-container {
    width: 100%; }
  .e-preview--show-hidden-elements[data-elementor-device-mode="widescreen"] .elementor-edit-area-active .elementor-hidden-widescreen > .elementor-widget-container, .e-preview--show-hidden-elements[data-elementor-device-mode="widescreen"] .elementor-edit-area-active .elementor-hidden-widescreen > .elementor-widget-wrap,
  .e-preview--show-hidden-elements[data-elementor-device-mode="desktop"] .elementor-edit-area-active .elementor-hidden-desktop > .elementor-widget-container,
  .e-preview--show-hidden-elements[data-elementor-device-mode="desktop"] .elementor-edit-area-active .elementor-hidden-desktop > .elementor-widget-wrap,
  .e-preview--show-hidden-elements[data-elementor-device-mode="laptop"] .elementor-edit-area-active .elementor-hidden-laptop > .elementor-widget-container,
  .e-preview--show-hidden-elements[data-elementor-device-mode="laptop"] .elementor-edit-area-active .elementor-hidden-laptop > .elementor-widget-wrap,
  .e-preview--show-hidden-elements[data-elementor-device-mode="tablet_extra"] .elementor-edit-area-active .elementor-hidden-tablet_extra > .elementor-widget-container,
  .e-preview--show-hidden-elements[data-elementor-device-mode="tablet_extra"] .elementor-edit-area-active .elementor-hidden-tablet_extra > .elementor-widget-wrap,
  .e-preview--show-hidden-elements[data-elementor-device-mode="tablet"] .elementor-edit-area-active .elementor-hidden-tablet > .elementor-widget-container,
  .e-preview--show-hidden-elements[data-elementor-device-mode="tablet"] .elementor-edit-area-active .elementor-hidden-tablet > .elementor-widget-wrap,
  .e-preview--show-hidden-elements[data-elementor-device-mode="mobile_extra"] .elementor-edit-area-active .elementor-hidden-mobile_extra > .elementor-widget-container,
  .e-preview--show-hidden-elements[data-elementor-device-mode="mobile_extra"] .elementor-edit-area-active .elementor-hidden-mobile_extra > .elementor-widget-wrap,
  .e-preview--show-hidden-elements[data-elementor-device-mode="mobile"] .elementor-edit-area-active .elementor-hidden-mobile > .elementor-widget-container,
  .e-preview--show-hidden-elements[data-elementor-device-mode="mobile"] .elementor-edit-area-active .elementor-hidden-mobile > .elementor-widget-wrap {
    -webkit-filter: opacity(0.4) saturate(0);
            filter: opacity(0.4) saturate(0); }
  .e-preview--show-hidden-elements[data-elementor-device-mode="widescreen"] .elementor-edit-area-active .elementor-hidden-widescreen.elementor-edit-hidden,
  .e-preview--show-hidden-elements[data-elementor-device-mode="desktop"] .elementor-edit-area-active .elementor-hidden-desktop.elementor-edit-hidden,
  .e-preview--show-hidden-elements[data-elementor-device-mode="laptop"] .elementor-edit-area-active .elementor-hidden-laptop.elementor-edit-hidden,
  .e-preview--show-hidden-elements[data-elementor-device-mode="tablet_extra"] .elementor-edit-area-active .elementor-hidden-tablet_extra.elementor-edit-hidden,
  .e-preview--show-hidden-elements[data-elementor-device-mode="tablet"] .elementor-edit-area-active .elementor-hidden-tablet.elementor-edit-hidden,
  .e-preview--show-hidden-elements[data-elementor-device-mode="mobile_extra"] .elementor-edit-area-active .elementor-hidden-mobile_extra.elementor-edit-hidden,
  .e-preview--show-hidden-elements[data-elementor-device-mode="mobile"] .elementor-edit-area-active .elementor-hidden-mobile.elementor-edit-hidden {
    display: none; }
/*# sourceMappingURL=editor-preview.css.map */assets/css/widget-accordion.min.css000064400000003041151327220410013347 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-accordion{text-align:left}.elementor-accordion .elementor-accordion-item{border:1px solid #d4d4d4}.elementor-accordion .elementor-accordion-item+.elementor-accordion-item{border-top:none}.elementor-accordion .elementor-tab-title{margin:0;padding:15px 20px;font-weight:700;line-height:1;cursor:pointer;outline:none}.elementor-accordion .elementor-tab-title .elementor-accordion-icon{display:inline-block;width:1.5em}.elementor-accordion .elementor-tab-title .elementor-accordion-icon svg{width:1em;height:1em}.elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-right{float:right;text-align:right}.elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-left{float:left;text-align:left}.elementor-accordion .elementor-tab-title .elementor-accordion-icon .elementor-accordion-icon-closed{display:block}.elementor-accordion .elementor-tab-title .elementor-accordion-icon .elementor-accordion-icon-opened,.elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-closed{display:none}.elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-opened{display:block}.elementor-accordion .elementor-tab-content{display:none;padding:15px 20px;border-top:1px solid #d4d4d4}@media (max-width:767px){.elementor-accordion .elementor-tab-title{padding:12px 15px}.elementor-accordion .elementor-tab-title .elementor-accordion-icon{width:1.2em}.elementor-accordion .elementor-tab-content{padding:7px 15px}}assets/css/widget-menu-anchor-rtl.min.css000064400000000151151327220410014420 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
body.elementor-page .elementor-widget-menu-anchor{margin-bottom:0}assets/css/widget-icon-box-rtl.min.css000064400000003666151327220410013740 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
@media (min-width:768px){.elementor-widget-icon-box.elementor-position-left .elementor-icon-box-wrapper,.elementor-widget-icon-box.elementor-position-right .elementor-icon-box-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget-icon-box.elementor-position-left .elementor-icon-box-icon,.elementor-widget-icon-box.elementor-position-right .elementor-icon-box-icon{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.elementor-widget-icon-box.elementor-position-right .elementor-icon-box-wrapper{text-align:left;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.elementor-widget-icon-box.elementor-position-left .elementor-icon-box-wrapper{text-align:right;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-widget-icon-box.elementor-position-top .elementor-icon-box-img{margin:auto}.elementor-widget-icon-box.elementor-vertical-align-top .elementor-icon-box-wrapper{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.elementor-widget-icon-box.elementor-vertical-align-middle .elementor-icon-box-wrapper{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-widget-icon-box.elementor-vertical-align-bottom .elementor-icon-box-wrapper{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}}@media (max-width:767px){.elementor-widget-icon-box .elementor-icon-box-icon{margin-left:auto!important;margin-right:auto!important;margin-bottom:15px}}.elementor-widget-icon-box .elementor-icon-box-wrapper{text-align:center}.elementor-widget-icon-box .elementor-icon-box-title a{color:inherit}.elementor-widget-icon-box .elementor-icon-box-content{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-widget-icon-box .elementor-icon-box-description{margin:0}assets/css/frontend.css000064400000472123151327220410011175 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.dialog-widget-content {
  background-color: #fff;
  position: absolute;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  -webkit-box-shadow: 2px 8px 23px 3px rgba(0, 0, 0, 0.2);
          box-shadow: 2px 8px 23px 3px rgba(0, 0, 0, 0.2);
  overflow: hidden; }

.dialog-message {
  font-size: 12px;
  line-height: 1.5;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

.dialog-type-lightbox {
  position: fixed;
  height: 100%;
  width: 100%;
  bottom: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 9999;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none; }
  .dialog-type-lightbox .dialog-widget-content {
    margin: auto;
    width: 375px; }
  .dialog-type-lightbox .dialog-header {
    font-size: 15px;
    color: #495157;
    padding: 30px 0 10px;
    font-weight: 500; }
  .dialog-type-lightbox .dialog-message {
    padding: 0 30px 30px;
    min-height: 50px; }
  .dialog-type-lightbox:not(.elementor-popup-modal) .dialog-header,
  .dialog-type-lightbox:not(.elementor-popup-modal) .dialog-message {
    text-align: center; }
  .dialog-type-lightbox .dialog-buttons-wrapper {
    border-top: 1px solid #e6e9ec;
    text-align: center; }
    .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button {
      font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
      width: 50%;
      border: none;
      background: none;
      color: #6d7882;
      font-size: 15px;
      cursor: pointer;
      padding: 13px 0;
      outline: 0; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button:hover {
        background-color: #f4f6f7; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button.dialog-ok {
        color: #b01b1b; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button.dialog-take_over {
        color: #39b54a; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button:active {
        background-color: rgba(230, 233, 236, 0.5); }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button::-moz-focus-inner {
        border: 0; }

.dialog-close-button {
  cursor: pointer;
  position: absolute;
  margin-top: 15px;
  right: 15px;
  font-size: 15px;
  line-height: 1; }
  .dialog-close-button:not(:hover) {
    opacity: .4; }

.dialog-alert-widget .dialog-buttons-wrapper > button {
  width: 100%; }

.dialog-confirm-widget .dialog-button:first-child {
  border-right: 1px solid #e6e9ec; }

.dialog-prevent-scroll {
  overflow: hidden;
  max-height: 100vh; }

@media (min-width: 1024px) {
  body.admin-bar .dialog-lightbox-widget {
    height: calc(100vh - 32px); } }

@media (max-width: 1024px) {
  body.admin-bar .dialog-type-lightbox {
    position: -webkit-sticky;
    position: sticky;
    height: 100vh; } }

.elementor-aspect-ratio-219 .elementor-fit-aspect-ratio {
  padding-bottom: 42.8571%; }

.elementor-aspect-ratio-169 .elementor-fit-aspect-ratio {
  padding-bottom: 56.25%; }

.elementor-aspect-ratio-43 .elementor-fit-aspect-ratio {
  padding-bottom: 75%; }

.elementor-aspect-ratio-32 .elementor-fit-aspect-ratio {
  padding-bottom: 66.6666%; }

.elementor-aspect-ratio-11 .elementor-fit-aspect-ratio {
  padding-bottom: 100%; }

.elementor-aspect-ratio-916 .elementor-fit-aspect-ratio {
  padding-bottom: 177.8%; }

.elementor-fit-aspect-ratio {
  position: relative;
  height: 0; }
  .elementor-fit-aspect-ratio iframe {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    border: 0;
    background-color: #000; }
  .elementor-fit-aspect-ratio video {
    width: 100%; }

.flatpickr-calendar {
  width: 280px; }
  .flatpickr-calendar .flatpickr-current-month span.cur-month {
    font-weight: 300; }
  .flatpickr-calendar .dayContainer {
    width: 280px;
    min-width: 280px;
    max-width: 280px; }
  .flatpickr-calendar .flatpickr-days {
    width: 280px; }
  .flatpickr-calendar .flatpickr-day {
    max-width: 37px;
    height: 37px;
    line-height: 37px; }

.elementor-templates-modal .dialog-widget-content {
  font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
  background-color: #f1f3f5;
  width: 100%; }
  @media (max-width: 1439px) {
    .elementor-templates-modal .dialog-widget-content {
      max-width: 990px; } }
  @media (min-width: 1440px) {
    .elementor-templates-modal .dialog-widget-content {
      max-width: 1200px; } }

.elementor-templates-modal .dialog-header {
  padding: 0;
  background-color: #fff;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
  position: relative;
  z-index: 1; }

.elementor-templates-modal .dialog-buttons-wrapper {
  background-color: #fff;
  border: none;
  display: none;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  padding: 5px;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
  position: relative; }
  .elementor-templates-modal .dialog-buttons-wrapper .elementor-button {
    height: 40px;
    margin-left: 5px; }
    .elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success {
      padding: 12px 36px;
      color: #fff;
      width: initial;
      font-size: 15px; }
      .elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success:hover {
        background-color: #39b54a; }

.elementor-templates-modal .dialog-message {
  height: 750px;
  max-height: 85vh;
  overflow: auto;
  padding-top: 25px; }

.elementor-templates-modal .dialog-content {
  height: 100%; }

.elementor-templates-modal .dialog-loading {
  display: none; }

.elementor-templates-modal__header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  height: 50px; }
  .elementor-templates-modal__header__logo {
    line-height: 1;
    text-transform: uppercase;
    font-weight: bold;
    cursor: pointer; }
    .elementor-templates-modal__header__logo-area {
      text-align: left;
      padding-left: 15px; }
      .elementor-templates-modal__header__logo-area > * {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center; }
    .elementor-templates-modal__header__logo__icon-wrapper {
      margin-right: 10px;
      font-size: 12px; }
    .elementor-templates-modal__header__logo__title {
      padding-top: 2px; }
  .elementor-templates-modal__header__items-area {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .elementor-templates-modal__header__item {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-sizing: content-box;
            box-sizing: content-box; }
    .elementor-templates-modal__header__item > i {
      font-size: 20px;
      -webkit-transition: all 0.3s;
      -o-transition: all 0.3s;
      transition: all 0.3s;
      cursor: pointer; }
      .elementor-templates-modal__header__item > i:not(:hover) {
        color: #a4afb7; }
  .elementor-templates-modal__header__close--normal {
    width: 47px;
    border-left: 1px solid #e6e9ec; }
    .elementor-templates-modal__header__close--normal i {
      font-size: 18px; }
  .elementor-templates-modal__header__close--skip {
    padding: 10px;
    padding-left: 20px;
    margin-right: 10px;
    color: #fff;
    background-color: #a4afb7;
    font-size: 11px;
    font-weight: normal;
    line-height: 1;
    text-transform: uppercase;
    -webkit-border-radius: 2px;
            border-radius: 2px;
    cursor: pointer; }
    .elementor-templates-modal__header__close--skip > i {
      font-size: inherit;
      padding-left: 10px;
      margin-left: 15px;
      border-left: 1px solid; }
      .elementor-templates-modal__header__close--skip > i:not(:hover) {
        color: #fff; }

.elementor-templates-modal__sidebar {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 25%;
  background-color: rgba(255, 255, 255, 0.3); }

.elementor-templates-modal__content {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-box-shadow: 0 0 13px inset rgba(0, 0, 0, 0.05);
          box-shadow: 0 0 13px inset rgba(0, 0, 0, 0.05); }

/* Will select next element after last '.elementor-general-section' */
#wpadminbar #wp-admin-bar-elementor_edit_page .elementor-general-section + .elementor-second-section {
  border-top: 1px solid #464b50;
  margin-top: 6px; }

.elementor-hidden {
  display: none; }

.elementor-screen-only,
.screen-reader-text,
.screen-reader-text span,
.ui-helper-hidden-accessible {
  position: absolute;
  top: -10000em;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0; }

.elementor-clearfix:after {
  content: '';
  display: block;
  clear: both;
  width: 0;
  height: 0; }

.e-logo-wrapper {
  background: #93003c;
  display: inline-block;
  padding: 0.75em;
  -webkit-border-radius: 50%;
          border-radius: 50%;
  line-height: 1; }
  .e-logo-wrapper i {
    color: #fff;
    font-size: 1em; }

.elementor {
  -webkit-hyphens: manual;
      -ms-hyphens: manual;
          hyphens: manual; }
  .elementor *, .elementor *:before, .elementor *:after {
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
  .elementor a {
    -webkit-box-shadow: none;
            box-shadow: none;
    text-decoration: none; }
  .elementor hr {
    margin: 0;
    background-color: transparent; }
  .elementor img {
    height: auto;
    max-width: 100%;
    border: none;
    -webkit-border-radius: 0;
            border-radius: 0;
    -webkit-box-shadow: none;
            box-shadow: none; }
  .elementor .elementor-widget:not(.elementor-widget-text-editor):not(.elementor-widget-theme-post-content) figure {
    margin: 0; }
  .elementor embed,
  .elementor iframe,
  .elementor object,
  .elementor video {
    max-width: 100%;
    width: 100%;
    margin: 0;
    line-height: 1;
    border: none; }
  .elementor .elementor-custom-embed {
    line-height: 0; }
  .elementor .elementor-background-video-container,
  .elementor .elementor-background-holder,
  .elementor .elementor-background {
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    position: absolute;
    overflow: hidden;
    z-index: 0;
    direction: ltr; }
  .elementor .elementor-background-video-container {
    -webkit-transition: opacity 1s;
    -o-transition: opacity 1s;
    transition: opacity 1s;
    pointer-events: none; }
    .elementor .elementor-background-video-container.elementor-loading {
      opacity: 0; }
  .elementor .elementor-background-video-embed {
    max-width: none; }
  .elementor .elementor-background-video-embed, .elementor .elementor-background-video-hosted {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }
  .elementor .elementor-background-video {
    max-width: none;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }
  .elementor .elementor-html5-video {
    -o-object-fit: cover;
       object-fit: cover; }
  .elementor .elementor-background-overlay {
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    position: absolute; }
  .elementor .elementor-background-slideshow {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 0;
    top: 0;
    left: 0; }
    .elementor .elementor-background-slideshow__slide__image {
      width: 100%;
      height: 100%;
      background-position: center center;
      -webkit-background-size: cover;
              background-size: cover; }

.elementor-widget-wrap > .elementor-element.elementor-absolute {
  position: absolute; }
  .elementor-column > .elementor-widget-wrap > .elementor-element.elementor-absolute {
    padding: inherit;
    -webkit-box-sizing: content-box;
            box-sizing: content-box; }

.elementor-widget-wrap > .elementor-element.elementor-fixed {
  position: fixed; }

.elementor-widget-wrap .elementor-element.elementor-widget__width-auto, .elementor-widget-wrap .elementor-element.elementor-widget__width-initial {
  max-width: 100%; }

@media (max-width: 1024px) {
  .elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-auto, .elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-initial {
    max-width: 100%; } }

@media (max-width: 767px) {
  .elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-auto, .elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-initial {
    max-width: 100%; } }

.elementor-element.elementor-absolute, .elementor-element.elementor-fixed {
  z-index: 1; }

.elementor-invisible {
  visibility: hidden; }

.elementor-align-center {
  text-align: center; }
  .elementor-align-center .elementor-button {
    width: auto; }

.elementor-align-right {
  text-align: right; }
  .elementor-align-right .elementor-button {
    width: auto; }

.elementor-align-left {
  text-align: left; }
  .elementor-align-left .elementor-button {
    width: auto; }

.elementor-align-justify .elementor-button {
  width: 100%; }

.elementor-custom-embed-play {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%); }
  .elementor-custom-embed-play i {
    font-size: 100px;
    color: #fff;
    text-shadow: 1px 0 6px rgba(0, 0, 0, 0.3); }
  .elementor-custom-embed-play svg {
    height: 100px;
    width: 100px;
    fill: #fff;
    -webkit-filter: drop-shadow(1px 0 6px rgba(0, 0, 0, 0.3));
            filter: drop-shadow(1px 0 6px rgba(0, 0, 0, 0.3)); }
  .elementor-custom-embed-play i,
  .elementor-custom-embed-play svg {
    opacity: 0.8;
    -webkit-transition: all .5s;
    -o-transition: all .5s;
    transition: all .5s; }
  .elementor-custom-embed-play.elementor-playing i {
    font-family: eicons;
    -webkit-animation: fa-spin 2s infinite linear;
            animation: fa-spin 2s infinite linear; }
    .elementor-custom-embed-play.elementor-playing i:before {
      content: '\e8fb'; }

.elementor-tag {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex; }

.elementor-ken-burns {
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  -o-transition-property: transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transition-duration: 10s;
       -o-transition-duration: 10s;
          transition-duration: 10s;
  -webkit-transition-timing-function: linear;
       -o-transition-timing-function: linear;
          transition-timing-function: linear; }
  .elementor-ken-burns--out {
    -webkit-transform: scale(1.3);
        -ms-transform: scale(1.3);
            transform: scale(1.3); }
  .elementor-ken-burns--active {
    -webkit-transition-duration: 20s;
         -o-transition-duration: 20s;
            transition-duration: 20s; }
    .elementor-ken-burns--active.elementor-ken-burns--out {
      -webkit-transform: scale(1);
          -ms-transform: scale(1);
              transform: scale(1); }
    .elementor-ken-burns--active.elementor-ken-burns--in {
      -webkit-transform: scale(1.3);
          -ms-transform: scale(1.3);
              transform: scale(1.3); }

@media (min-width: -1px) {
  .elementor-widescreen-align-center {
    text-align: center; }
    .elementor-widescreen-align-center .elementor-button {
      width: auto; }
  .elementor-widescreen-align-right {
    text-align: right; }
    .elementor-widescreen-align-right .elementor-button {
      width: auto; }
  .elementor-widescreen-align-left {
    text-align: left; }
    .elementor-widescreen-align-left .elementor-button {
      width: auto; }
  .elementor-widescreen-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: -1px) {
  .elementor-laptop-align-center {
    text-align: center; }
    .elementor-laptop-align-center .elementor-button {
      width: auto; }
  .elementor-laptop-align-right {
    text-align: right; }
    .elementor-laptop-align-right .elementor-button {
      width: auto; }
  .elementor-laptop-align-left {
    text-align: left; }
    .elementor-laptop-align-left .elementor-button {
      width: auto; }
  .elementor-laptop-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: -1px) {
  .elementor-tablet_extra-align-center {
    text-align: center; }
    .elementor-tablet_extra-align-center .elementor-button {
      width: auto; }
  .elementor-tablet_extra-align-right {
    text-align: right; }
    .elementor-tablet_extra-align-right .elementor-button {
      width: auto; }
  .elementor-tablet_extra-align-left {
    text-align: left; }
    .elementor-tablet_extra-align-left .elementor-button {
      width: auto; }
  .elementor-tablet_extra-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: 1024px) {
  .elementor-tablet-align-center {
    text-align: center; }
    .elementor-tablet-align-center .elementor-button {
      width: auto; }
  .elementor-tablet-align-right {
    text-align: right; }
    .elementor-tablet-align-right .elementor-button {
      width: auto; }
  .elementor-tablet-align-left {
    text-align: left; }
    .elementor-tablet-align-left .elementor-button {
      width: auto; }
  .elementor-tablet-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: -1px) {
  .elementor-mobile_extra-align-center {
    text-align: center; }
    .elementor-mobile_extra-align-center .elementor-button {
      width: auto; }
  .elementor-mobile_extra-align-right {
    text-align: right; }
    .elementor-mobile_extra-align-right .elementor-button {
      width: auto; }
  .elementor-mobile_extra-align-left {
    text-align: left; }
    .elementor-mobile_extra-align-left .elementor-button {
      width: auto; }
  .elementor-mobile_extra-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: 767px) {
  .elementor-mobile-align-center {
    text-align: center; }
    .elementor-mobile-align-center .elementor-button {
      width: auto; }
  .elementor-mobile-align-right {
    text-align: right; }
    .elementor-mobile-align-right .elementor-button {
      width: auto; }
  .elementor-mobile-align-left {
    text-align: left; }
    .elementor-mobile-align-left .elementor-button {
      width: auto; }
  .elementor-mobile-align-justify .elementor-button {
    width: 100%; } }

#wpadminbar #wp-admin-bar-elementor_edit_page > .ab-item::before {
  content: "\e813";
  font-family: eicons;
  top: 3px;
  font-size: 18px; }

#wpadminbar #wp-admin-bar-elementor_inspector > .ab-item::before {
  content: "\f348";
  top: 2px; }

:root {
  --page-title-display: block; }

.elementor-page-title, h1.entry-title {
  display: var(--page-title-display); }

.elementor-section {
  position: relative; }
  .elementor-section .elementor-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-right: auto;
    margin-left: auto;
    position: relative; }
    @media (max-width: 1024px) {
      .elementor-section .elementor-container {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; } }
  .elementor-section.elementor-section-boxed > .elementor-container {
    max-width: 1140px; }
  .elementor-section.elementor-section-stretched {
    position: relative;
    width: 100%; }
  .elementor-section.elementor-section-items-top > .elementor-container {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start; }
  .elementor-section.elementor-section-items-middle > .elementor-container {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .elementor-section.elementor-section-items-bottom > .elementor-container {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end; }
  @media (min-width: 768px) {
    .elementor-section.elementor-section-height-full {
      height: 100vh; }
      .elementor-section.elementor-section-height-full > .elementor-container {
        height: 100%; } }

.elementor-bc-flex-widget .elementor-section-content-top > .elementor-container > .elementor-column > .elementor-widget-wrap {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; }

.elementor-bc-flex-widget .elementor-section-content-middle > .elementor-container > .elementor-column > .elementor-widget-wrap {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.elementor-bc-flex-widget .elementor-section-content-bottom > .elementor-container > .elementor-column > .elementor-widget-wrap {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end; }

.elementor-row {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media (max-width: 1024px) {
    .elementor-row {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; } }

.elementor-widget-wrap {
  position: relative;
  width: 100%;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-line-pack: start;
      align-content: flex-start; }
  .elementor:not(.elementor-bc-flex-widget) .elementor-widget-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .elementor-widget-wrap > .elementor-element {
    width: 100%; }

.elementor-widget {
  position: relative; }
  .elementor-widget:not(:last-child) {
    margin-bottom: 20px; }
    .elementor-widget:not(:last-child).elementor-widget__width-auto, .elementor-widget:not(:last-child).elementor-widget__width-initial, .elementor-widget:not(:last-child).elementor-absolute {
      margin-bottom: 0; }

.elementor-column {
  position: relative;
  min-height: 1px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.elementor-column-wrap {
  width: 100%;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.elementor-column-gap-narrow > .elementor-column > .elementor-element-populated {
  padding: 5px; }

.elementor-column-gap-default > .elementor-column > .elementor-element-populated {
  padding: 10px; }

.elementor-column-gap-extended > .elementor-column > .elementor-element-populated {
  padding: 15px; }

.elementor-column-gap-wide > .elementor-column > .elementor-element-populated {
  padding: 20px; }

.elementor-column-gap-wider > .elementor-column > .elementor-element-populated {
  padding: 30px; }

.elementor-inner-section .elementor-column-gap-no .elementor-element-populated {
  padding: 0; }

@media (min-width: 768px) {
  .elementor-column.elementor-col-10, .elementor-column[data-col="10"] {
    width: 10%; }
  .elementor-column.elementor-col-11, .elementor-column[data-col="11"] {
    width: 11.111%; }
  .elementor-column.elementor-col-12, .elementor-column[data-col="12"] {
    width: 12.5%; }
  .elementor-column.elementor-col-14, .elementor-column[data-col="14"] {
    width: 14.285%; }
  .elementor-column.elementor-col-16, .elementor-column[data-col="16"] {
    width: 16.666%; }
  .elementor-column.elementor-col-20, .elementor-column[data-col="20"] {
    width: 20%; }
  .elementor-column.elementor-col-25, .elementor-column[data-col="25"] {
    width: 25%; }
  .elementor-column.elementor-col-30, .elementor-column[data-col="30"] {
    width: 30%; }
  .elementor-column.elementor-col-33, .elementor-column[data-col="33"] {
    width: 33.333%; }
  .elementor-column.elementor-col-40, .elementor-column[data-col="40"] {
    width: 40%; }
  .elementor-column.elementor-col-50, .elementor-column[data-col="50"] {
    width: 50%; }
  .elementor-column.elementor-col-60, .elementor-column[data-col="60"] {
    width: 60%; }
  .elementor-column.elementor-col-66, .elementor-column[data-col="66"] {
    width: 66.666%; }
  .elementor-column.elementor-col-70, .elementor-column[data-col="70"] {
    width: 70%; }
  .elementor-column.elementor-col-75, .elementor-column[data-col="75"] {
    width: 75%; }
  .elementor-column.elementor-col-80, .elementor-column[data-col="80"] {
    width: 80%; }
  .elementor-column.elementor-col-83, .elementor-column[data-col="83"] {
    width: 83.333%; }
  .elementor-column.elementor-col-90, .elementor-column[data-col="90"] {
    width: 90%; }
  .elementor-column.elementor-col-100, .elementor-column[data-col="100"] {
    width: 100%; } }

@media (max-width: 479px) {
  .elementor-column.elementor-xs-10 {
    width: 10%; }
  .elementor-column.elementor-xs-11 {
    width: 11.111%; }
  .elementor-column.elementor-xs-12 {
    width: 12.5%; }
  .elementor-column.elementor-xs-14 {
    width: 14.285%; }
  .elementor-column.elementor-xs-16 {
    width: 16.666%; }
  .elementor-column.elementor-xs-20 {
    width: 20%; }
  .elementor-column.elementor-xs-25 {
    width: 25%; }
  .elementor-column.elementor-xs-30 {
    width: 30%; }
  .elementor-column.elementor-xs-33 {
    width: 33.333%; }
  .elementor-column.elementor-xs-40 {
    width: 40%; }
  .elementor-column.elementor-xs-50 {
    width: 50%; }
  .elementor-column.elementor-xs-60 {
    width: 60%; }
  .elementor-column.elementor-xs-66 {
    width: 66.666%; }
  .elementor-column.elementor-xs-70 {
    width: 70%; }
  .elementor-column.elementor-xs-75 {
    width: 75%; }
  .elementor-column.elementor-xs-80 {
    width: 80%; }
  .elementor-column.elementor-xs-83 {
    width: 83.333%; }
  .elementor-column.elementor-xs-90 {
    width: 90%; }
  .elementor-column.elementor-xs-100 {
    width: 100%; } }

@media (max-width: 767px) {
  .elementor-column.elementor-sm-10 {
    width: 10%; }
  .elementor-column.elementor-sm-11 {
    width: 11.111%; }
  .elementor-column.elementor-sm-12 {
    width: 12.5%; }
  .elementor-column.elementor-sm-14 {
    width: 14.285%; }
  .elementor-column.elementor-sm-16 {
    width: 16.666%; }
  .elementor-column.elementor-sm-20 {
    width: 20%; }
  .elementor-column.elementor-sm-25 {
    width: 25%; }
  .elementor-column.elementor-sm-30 {
    width: 30%; }
  .elementor-column.elementor-sm-33 {
    width: 33.333%; }
  .elementor-column.elementor-sm-40 {
    width: 40%; }
  .elementor-column.elementor-sm-50 {
    width: 50%; }
  .elementor-column.elementor-sm-60 {
    width: 60%; }
  .elementor-column.elementor-sm-66 {
    width: 66.666%; }
  .elementor-column.elementor-sm-70 {
    width: 70%; }
  .elementor-column.elementor-sm-75 {
    width: 75%; }
  .elementor-column.elementor-sm-80 {
    width: 80%; }
  .elementor-column.elementor-sm-83 {
    width: 83.333%; }
  .elementor-column.elementor-sm-90 {
    width: 90%; }
  .elementor-column.elementor-sm-100 {
    width: 100%; } }

@media (min-width: 768px) and (max-width: 1024px) {
  .elementor-column.elementor-md-10 {
    width: 10%; }
  .elementor-column.elementor-md-11 {
    width: 11.111%; }
  .elementor-column.elementor-md-12 {
    width: 12.5%; }
  .elementor-column.elementor-md-14 {
    width: 14.285%; }
  .elementor-column.elementor-md-16 {
    width: 16.666%; }
  .elementor-column.elementor-md-20 {
    width: 20%; }
  .elementor-column.elementor-md-25 {
    width: 25%; }
  .elementor-column.elementor-md-30 {
    width: 30%; }
  .elementor-column.elementor-md-33 {
    width: 33.333%; }
  .elementor-column.elementor-md-40 {
    width: 40%; }
  .elementor-column.elementor-md-50 {
    width: 50%; }
  .elementor-column.elementor-md-60 {
    width: 60%; }
  .elementor-column.elementor-md-66 {
    width: 66.666%; }
  .elementor-column.elementor-md-70 {
    width: 70%; }
  .elementor-column.elementor-md-75 {
    width: 75%; }
  .elementor-column.elementor-md-80 {
    width: 80%; }
  .elementor-column.elementor-md-83 {
    width: 83.333%; }
  .elementor-column.elementor-md-90 {
    width: 90%; }
  .elementor-column.elementor-md-100 {
    width: 100%; } }

@media (min-width: 768px) and (max-width: 1024px) {
  .elementor-reverse-tablet > .elementor-container > :nth-child(1) {
    -webkit-box-ordinal-group: 11;
        -ms-flex-order: 10;
            order: 10; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(2) {
    -webkit-box-ordinal-group: 10;
        -ms-flex-order: 9;
            order: 9; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(3) {
    -webkit-box-ordinal-group: 9;
        -ms-flex-order: 8;
            order: 8; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(4) {
    -webkit-box-ordinal-group: 8;
        -ms-flex-order: 7;
            order: 7; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(5) {
    -webkit-box-ordinal-group: 7;
        -ms-flex-order: 6;
            order: 6; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(6) {
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(7) {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(8) {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(9) {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(10) {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1; } }

@media (max-width: 767px) {
  .elementor-reverse-mobile > .elementor-container > :nth-child(1) {
    -webkit-box-ordinal-group: 11;
        -ms-flex-order: 10;
            order: 10; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(2) {
    -webkit-box-ordinal-group: 10;
        -ms-flex-order: 9;
            order: 9; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(3) {
    -webkit-box-ordinal-group: 9;
        -ms-flex-order: 8;
            order: 8; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(4) {
    -webkit-box-ordinal-group: 8;
        -ms-flex-order: 7;
            order: 7; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(5) {
    -webkit-box-ordinal-group: 7;
        -ms-flex-order: 6;
            order: 6; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(6) {
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(7) {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(8) {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(9) {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(10) {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1; }
  .elementor-column {
    width: 100%; } }

ul.elementor-icon-list-items.elementor-inline-items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  ul.elementor-icon-list-items.elementor-inline-items .elementor-inline-item {
    word-break: break-word; }

.elementor-grid {
  display: grid;
  grid-column-gap: var(--grid-column-gap);
  grid-row-gap: var(--grid-row-gap); }
  .elementor-grid .elementor-grid-item {
    min-width: 0; }
  .elementor-grid-0 .elementor-grid {
    display: inline-block;
    width: 100%;
    word-spacing: var(--grid-column-gap);
    margin-bottom: calc(-1 * var(--grid-row-gap)); }
    .elementor-grid-0 .elementor-grid .elementor-grid-item {
      display: inline-block;
      margin-bottom: var(--grid-row-gap);
      word-break: break-word; }
  .elementor-grid-1 .elementor-grid {
    grid-template-columns: repeat(1, 1fr); }
  .elementor-grid-2 .elementor-grid {
    grid-template-columns: repeat(2, 1fr); }
  .elementor-grid-3 .elementor-grid {
    grid-template-columns: repeat(3, 1fr); }
  .elementor-grid-4 .elementor-grid {
    grid-template-columns: repeat(4, 1fr); }
  .elementor-grid-5 .elementor-grid {
    grid-template-columns: repeat(5, 1fr); }
  .elementor-grid-6 .elementor-grid {
    grid-template-columns: repeat(6, 1fr); }
  .elementor-grid-7 .elementor-grid {
    grid-template-columns: repeat(7, 1fr); }
  .elementor-grid-8 .elementor-grid {
    grid-template-columns: repeat(8, 1fr); }
  .elementor-grid-9 .elementor-grid {
    grid-template-columns: repeat(9, 1fr); }
  .elementor-grid-10 .elementor-grid {
    grid-template-columns: repeat(10, 1fr); }
  .elementor-grid-11 .elementor-grid {
    grid-template-columns: repeat(11, 1fr); }
  .elementor-grid-12 .elementor-grid {
    grid-template-columns: repeat(12, 1fr); }
  @media (min-width: -1px) {
    .elementor-grid-widescreen-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-widescreen-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-widescreen-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-widescreen-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-widescreen-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-widescreen-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-widescreen-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-widescreen-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-widescreen-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-widescreen-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-widescreen-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-widescreen-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-widescreen-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-widescreen-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: -1px) {
    .elementor-grid-laptop-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-laptop-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-laptop-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-laptop-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-laptop-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-laptop-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-laptop-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-laptop-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-laptop-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-laptop-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-laptop-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-laptop-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-laptop-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-laptop-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: -1px) {
    .elementor-grid-tablet_extra-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-tablet_extra-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-tablet_extra-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-tablet_extra-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-tablet_extra-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-tablet_extra-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-tablet_extra-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-tablet_extra-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-tablet_extra-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-tablet_extra-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-tablet_extra-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-tablet_extra-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-tablet_extra-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-tablet_extra-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: 1024px) {
    .elementor-grid-tablet-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-tablet-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-tablet-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-tablet-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-tablet-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-tablet-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-tablet-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-tablet-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-tablet-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-tablet-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-tablet-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-tablet-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-tablet-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-tablet-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: -1px) {
    .elementor-grid-mobile_extra-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-mobile_extra-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-mobile_extra-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-mobile_extra-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-mobile_extra-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-mobile_extra-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-mobile_extra-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-mobile_extra-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-mobile_extra-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-mobile_extra-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-mobile_extra-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-mobile_extra-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-mobile_extra-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-mobile_extra-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: 767px) {
    .elementor-grid-mobile-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-mobile-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-mobile-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-mobile-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-mobile-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-mobile-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-mobile-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-mobile-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-mobile-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-mobile-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-mobile-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-mobile-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-mobile-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-mobile-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }

@media (min-width: 1025px) {
  #elementor-device-mode:after {
    content: 'desktop'; } }

@media (min-width: -1px) {
  #elementor-device-mode:after {
    content: 'widescreen'; } }

@media (max-width: -1px) {
  #elementor-device-mode:after {
    content: 'laptop'; } }

@media (max-width: -1px) {
  #elementor-device-mode:after {
    content: 'tablet_extra'; } }

@media (max-width: 1024px) {
  #elementor-device-mode:after {
    content: 'tablet'; } }

@media (max-width: -1px) {
  #elementor-device-mode:after {
    content: 'mobile_extra'; } }

@media (max-width: 767px) {
  #elementor-device-mode:after {
    content: 'mobile'; } }

[class^="eicon"],
[class*=" eicon-"] {
  display: inline-block;
  font-family: eicons;
  font-size: inherit;
  font-weight: normal;
  font-style: normal;
  font-variant: normal;
  line-height: 1;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

@-webkit-keyframes eicon-spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(359deg);
            transform: rotate(359deg); } }

@keyframes eicon-spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(359deg);
            transform: rotate(359deg); } }

.eicon-animation-spin {
  -webkit-animation: eicon-spin 2s infinite linear;
          animation: eicon-spin 2s infinite linear; }

.eicon-loading:before {
  content: '\e8fb'; }

.eicon-menu-bar:before {
  content: '\e816'; }

.eicon-chevron-right:before {
  content: '\e87d'; }

.eicon-chevron-left:before {
  content: '\e87e'; }

.eicon-close:before {
  content: '\e87f'; }

.eicon-share-arrow:before {
  content: '\e96c'; }

.eicon-zoom-in:before {
  content: '\e882'; }

.eicon-zoom-in-bold:before {
  content: '\e92e'; }

.eicon-zoom-out-bold:before {
  content: '\e943'; }

.eicon-frame-expand:before {
  content: '\e95c'; }

.eicon-frame-minimize:before {
  content: '\e95d'; }

.eicon-play:before {
  content: '\e89d'; }

.eicon-facebook:before {
  content: '\e959'; }

.eicon-twitter:before {
  content: '\e95a'; }

.eicon-pinterest:before {
  content: '\e95b'; }

.eicon-download-bold:before {
  content: '\e96b'; }

.eicon-caret-down:before {
  content: '\e92a'; }

.elementor-form-fields-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group > input, .elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group > textarea, .elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group > .elementor-select-wrapper, .elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group .elementor-field-subgroup {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    max-width: 100%; }
  .elementor-form-fields-wrapper.elementor-labels-inline > .elementor-field-group > input, .elementor-form-fields-wrapper.elementor-labels-inline > .elementor-field-group .elementor-select-wrapper {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }

.elementor-field-group {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .elementor-field-group.elementor-field-type-submit {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end; }
  .elementor-field-group .elementor-field-textual {
    width: 100%;
    max-width: 100%;
    border: 1px solid #818a91;
    background-color: transparent;
    color: #373a3c;
    vertical-align: middle;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }
    .elementor-field-group .elementor-field-textual:focus {
      -webkit-box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1) inset;
              box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1) inset;
      outline: 0; }
    .elementor-field-group .elementor-field-textual::-webkit-input-placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
    .elementor-field-group .elementor-field-textual:-ms-input-placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
    .elementor-field-group .elementor-field-textual::-moz-placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
    .elementor-field-group .elementor-field-textual:-moz-placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
    .elementor-field-group .elementor-field-textual::-ms-input-placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
    .elementor-field-group .elementor-field-textual::placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
  .elementor-field-group .elementor-select-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    width: 100%; }
    .elementor-field-group .elementor-select-wrapper select {
      appearance: none;
      -webkit-appearance: none;
      -moz-appearance: none;
      color: inherit;
      font-size: inherit;
      font-family: inherit;
      font-weight: inherit;
      font-style: inherit;
      text-transform: inherit;
      letter-spacing: inherit;
      line-height: inherit;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
      padding-right: 20px; }
    .elementor-field-group .elementor-select-wrapper:before {
      content: '\e92a';
      font-family: 'eicons';
      font-size: 15px;
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      right: 10px;
      pointer-events: none;
      text-shadow: 0 0 3px rgba(0, 0, 0, 0.3); }
  .elementor-field-group.elementor-field-type-select-multiple .elementor-select-wrapper:before {
    content: ''; }

.elementor-field-subgroup {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .elementor-field-subgroup .elementor-field-option label {
    display: inline-block; }
  .elementor-field-subgroup.elementor-subgroup-inline .elementor-field-option {
    padding-right: 10px; }
  .elementor-field-subgroup:not(.elementor-subgroup-inline) .elementor-field-option {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%; }

.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option input,
.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option label,
.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option input,
.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option label,
.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option input,
.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option label {
  display: inline; }

.elementor-field-label {
  cursor: pointer; }
  .elementor-mark-required .elementor-field-label:after {
    content: '*';
    color: red;
    padding-left: 0.2em; }

.elementor-field-textual {
  line-height: 1.4;
  font-size: 15px;
  min-height: 40px;
  padding: 5px 14px;
  -webkit-border-radius: 3px;
          border-radius: 3px; }
  .elementor-field-textual.elementor-size-xs {
    font-size: 13px;
    min-height: 33px;
    padding: 4px 12px;
    -webkit-border-radius: 2px;
            border-radius: 2px; }
  .elementor-field-textual.elementor-size-md {
    font-size: 16px;
    min-height: 47px;
    padding: 6px 16px;
    -webkit-border-radius: 4px;
            border-radius: 4px; }
  .elementor-field-textual.elementor-size-lg {
    font-size: 18px;
    min-height: 59px;
    padding: 7px 20px;
    -webkit-border-radius: 5px;
            border-radius: 5px; }
  .elementor-field-textual.elementor-size-xl {
    font-size: 20px;
    min-height: 72px;
    padding: 8px 24px;
    -webkit-border-radius: 6px;
            border-radius: 6px; }

.elementor-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%; }

.elementor-button-align-stretch .e-form__buttons__wrapper {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1; }
  .elementor-button-align-stretch .e-form__buttons__wrapper__button {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%; }

.elementor-button-align-center .elementor-field-type-submit,
.elementor-button-align-center .e-form__buttons {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.elementor-button-align-start .elementor-field-type-submit,
.elementor-button-align-start .e-form__buttons {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start; }

.elementor-button-align-end .elementor-field-type-submit,
.elementor-button-align-end .e-form__buttons {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.elementor-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
  -ms-flex-preferred-size: initial;
      flex-basis: initial; }

.elementor-button-align-center .e-form__buttons__wrapper, .elementor-button-align-start .e-form__buttons__wrapper, .elementor-button-align-end .e-form__buttons__wrapper {
  -webkit-box-flex: initial;
      -ms-flex-positive: initial;
          flex-grow: initial; }
  .elementor-button-align-center .e-form__buttons__wrapper, .elementor-button-align-center .e-form__buttons__wrapper__button, .elementor-button-align-start .e-form__buttons__wrapper, .elementor-button-align-start .e-form__buttons__wrapper__button, .elementor-button-align-end .e-form__buttons__wrapper, .elementor-button-align-end .e-form__buttons__wrapper__button {
    -ms-flex-preferred-size: initial;
        flex-basis: initial; }

@media screen and (max-width: 1024px) {
  .elementor-tablet-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%; }
  .elementor-tablet-button-align-stretch .e-form__buttons__wrapper {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }
    .elementor-tablet-button-align-stretch .e-form__buttons__wrapper__button {
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%; }
  .elementor-tablet-button-align-center .elementor-field-type-submit,
  .elementor-tablet-button-align-center .e-form__buttons {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .elementor-tablet-button-align-start .elementor-field-type-submit,
  .elementor-tablet-button-align-start .e-form__buttons {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
  .elementor-tablet-button-align-end .elementor-field-type-submit,
  .elementor-tablet-button-align-end .e-form__buttons {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
  .elementor-tablet-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-tablet-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-tablet-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
    -ms-flex-preferred-size: initial;
        flex-basis: initial; }
  .elementor-tablet-button-align-center .e-form__buttons__wrapper, .elementor-tablet-button-align-start .e-form__buttons__wrapper, .elementor-tablet-button-align-end .e-form__buttons__wrapper {
    -webkit-box-flex: initial;
        -ms-flex-positive: initial;
            flex-grow: initial; }
    .elementor-tablet-button-align-center .e-form__buttons__wrapper, .elementor-tablet-button-align-center .e-form__buttons__wrapper__button, .elementor-tablet-button-align-start .e-form__buttons__wrapper, .elementor-tablet-button-align-start .e-form__buttons__wrapper__button, .elementor-tablet-button-align-end .e-form__buttons__wrapper, .elementor-tablet-button-align-end .e-form__buttons__wrapper__button {
      -ms-flex-preferred-size: initial;
          flex-basis: initial; } }

@media screen and (max-width: 767px) {
  .elementor-mobile-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%; }
  .elementor-mobile-button-align-stretch .e-form__buttons__wrapper {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }
    .elementor-mobile-button-align-stretch .e-form__buttons__wrapper__button {
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%; }
  .elementor-mobile-button-align-center .elementor-field-type-submit,
  .elementor-mobile-button-align-center .e-form__buttons {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .elementor-mobile-button-align-start .elementor-field-type-submit,
  .elementor-mobile-button-align-start .e-form__buttons {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
  .elementor-mobile-button-align-end .elementor-field-type-submit,
  .elementor-mobile-button-align-end .e-form__buttons {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
  .elementor-mobile-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-mobile-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-mobile-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
    -ms-flex-preferred-size: initial;
        flex-basis: initial; }
  .elementor-mobile-button-align-center .e-form__buttons__wrapper, .elementor-mobile-button-align-start .e-form__buttons__wrapper, .elementor-mobile-button-align-end .e-form__buttons__wrapper {
    -webkit-box-flex: initial;
        -ms-flex-positive: initial;
            flex-grow: initial; }
    .elementor-mobile-button-align-center .e-form__buttons__wrapper, .elementor-mobile-button-align-center .e-form__buttons__wrapper__button, .elementor-mobile-button-align-start .e-form__buttons__wrapper, .elementor-mobile-button-align-start .e-form__buttons__wrapper__button, .elementor-mobile-button-align-end .e-form__buttons__wrapper, .elementor-mobile-button-align-end .e-form__buttons__wrapper__button {
      -ms-flex-preferred-size: initial;
          flex-basis: initial; } }

.elementor-error .elementor-field {
  border-color: #d9534f; }

.elementor-error .help-inline {
  color: #d9534f;
  font-size: 0.9em; }

.elementor-message {
  margin: 10px 0;
  font-size: 1em;
  line-height: 1; }
  .elementor-message:before {
    content: "\e90e";
    display: inline-block;
    font-family: eicons;
    font-weight: normal;
    font-style: normal;
    vertical-align: middle;
    margin-right: 5px; }
  .elementor-message.elementor-message-danger {
    color: #d9534f; }
    .elementor-message.elementor-message-danger:before {
      content: "\e87f"; }
  .elementor-message.form-message-success {
    color: #5cb85c; }

.elementor-form .elementor-button {
  padding-top: 0;
  padding-bottom: 0;
  border: none; }
  .elementor-form .elementor-button > span {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .elementor-form .elementor-button.elementor-size-xs {
    min-height: 33px; }
  .elementor-form .elementor-button.elementor-size-sm {
    min-height: 40px; }
  .elementor-form .elementor-button.elementor-size-md {
    min-height: 47px; }
  .elementor-form .elementor-button.elementor-size-lg {
    min-height: 59px; }
  .elementor-form .elementor-button.elementor-size-xl {
    min-height: 72px; }

.elementor-element .elementor-widget-container {
  -webkit-transition: background 0.3s, border 0.3s, -webkit-border-radius 0.3s, -webkit-box-shadow 0.3s;
  transition: background 0.3s, border 0.3s, -webkit-border-radius 0.3s, -webkit-box-shadow 0.3s;
  -o-transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;
  transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;
  transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s, -webkit-border-radius 0.3s, -webkit-box-shadow 0.3s; }

.elementor-button {
  display: inline-block;
  line-height: 1;
  background-color: #818a91;
  font-size: 15px;
  padding: 12px 24px;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  color: #fff;
  fill: #fff;
  text-align: center;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s; }
  .elementor-button:hover, .elementor-button:focus, .elementor-button:visited {
    color: #fff; }
  .elementor-button-content-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .elementor-button-icon {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5; }
    .elementor-button-icon svg {
      width: 1em;
      height: auto; }
    .elementor-button-icon .e-font-icon-svg {
      height: 1em; }
  .elementor-button-text {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -webkit-box-ordinal-group: 11;
        -ms-flex-order: 10;
            order: 10;
    display: inline-block; }
  .elementor-button.elementor-size-xs {
    font-size: 13px;
    padding: 10px 20px;
    -webkit-border-radius: 2px;
            border-radius: 2px; }
  .elementor-button.elementor-size-md {
    font-size: 16px;
    padding: 15px 30px;
    -webkit-border-radius: 4px;
            border-radius: 4px; }
  .elementor-button.elementor-size-lg {
    font-size: 18px;
    padding: 20px 40px;
    -webkit-border-radius: 5px;
            border-radius: 5px; }
  .elementor-button.elementor-size-xl {
    font-size: 20px;
    padding: 25px 50px;
    -webkit-border-radius: 6px;
            border-radius: 6px; }
  .elementor-button .elementor-align-icon-right {
    margin-left: 5px;
    -webkit-box-ordinal-group: 16;
        -ms-flex-order: 15;
            order: 15; }
  .elementor-button .elementor-align-icon-left {
    margin-right: 5px;
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5; }
  .elementor-button span {
    text-decoration: inherit; }

/* TODO: REMOVE THIS EXCEPTION AFTER PRO 2.8 RELEASES */
.elementor-menu-cart__toggle .elementor-button-icon {
  -webkit-box-ordinal-group: 16;
      -ms-flex-order: 15;
          order: 15; }

.elementor-element.elementor-button-info .elementor-button {
  background-color: #5bc0de; }

.elementor-element.elementor-button-success .elementor-button {
  background-color: #5cb85c; }

.elementor-element.elementor-button-warning .elementor-button {
  background-color: #f0ad4e; }

.elementor-element.elementor-button-danger .elementor-button {
  background-color: #d9534f; }

.elementor-widget-button .elementor-button .elementor-button-info {
  background-color: #5bc0de; }

.elementor-widget-button .elementor-button .elementor-button-success {
  background-color: #5cb85c; }

.elementor-widget-button .elementor-button .elementor-button-warning {
  background-color: #f0ad4e; }

.elementor-widget-button .elementor-button .elementor-button-danger {
  background-color: #d9534f; }

.elementor-tab-title a {
  color: inherit; }

.elementor-view-stacked .elementor-icon {
  padding: .5em;
  background-color: #818a91;
  color: #fff;
  fill: #fff; }

.elementor-view-framed .elementor-icon {
  padding: .5em;
  color: #818a91;
  border: 3px solid #818a91;
  background-color: transparent; }

.elementor-icon {
  display: inline-block;
  line-height: 1;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  color: #818a91;
  font-size: 50px;
  text-align: center; }
  .elementor-icon:hover {
    color: #818a91; }
  .elementor-icon i, .elementor-icon svg {
    width: 1em;
    height: 1em;
    position: relative;
    display: block; }
    .elementor-icon i:before, .elementor-icon svg:before {
      position: absolute;
      left: 50%;
      -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
              transform: translateX(-50%); }
  .elementor-icon i.fad {
    width: initial; }

.elementor-shape-circle .elementor-icon {
  -webkit-border-radius: 50%;
          border-radius: 50%; }

.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -ms-touch-action: pan-y;
      touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block; }
  .slick-track:before, .slick-track:after {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  .elementor-slick-slider[dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

.elementor-slick-slider .slick-loading .slick-list {
  background: #fff; }
  .elementor-slick-slider .slick-loading .slick-list:after {
    content: '\e8fb';
    font-family: eicons;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    -webkit-animation: fa-spin 2s infinite linear;
            animation: fa-spin 2s infinite linear;
    font-size: 25px;
    color: #a4afb7; }

.elementor-slick-slider .slick-prev,
.elementor-slick-slider .slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 50%;
  display: block;
  width: 20px;
  padding: 0;
  -webkit-transform: translate(0, -50%);
      -ms-transform: translate(0, -50%);
          transform: translate(0, -50%);
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent; }
  .elementor-slick-slider .slick-prev:hover, .elementor-slick-slider .slick-prev:focus,
  .elementor-slick-slider .slick-next:hover,
  .elementor-slick-slider .slick-next:focus {
    color: transparent;
    outline: none;
    background: transparent; }
    .elementor-slick-slider .slick-prev:hover:before, .elementor-slick-slider .slick-prev:focus:before,
    .elementor-slick-slider .slick-next:hover:before,
    .elementor-slick-slider .slick-next:focus:before {
      opacity: 1; }
  .elementor-slick-slider .slick-prev.slick-disabled:before,
  .elementor-slick-slider .slick-next.slick-disabled:before {
    opacity: .25; }
  .elementor-slick-slider .slick-prev:before,
  .elementor-slick-slider .slick-next:before {
    font-family: eicons;
    font-size: 35px;
    line-height: 1;
    opacity: .75;
    color: white;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }

.elementor-slick-slider .slick-prev {
  left: -25px; }
  [dir="rtl"] .elementor-slick-slider .slick-prev {
    left: auto;
    right: -25px; }
  .elementor-slick-slider .slick-prev:before {
    content: '\e89f'; }
    [dir="rtl"] .elementor-slick-slider .slick-prev:before {
      content: '\e89e'; }

.elementor-slick-slider .slick-next {
  right: -25px; }
  [dir="rtl"] .elementor-slick-slider .slick-next {
    left: -25px;
    right: auto; }
  .elementor-slick-slider .slick-next:before {
    content: '\e89e'; }
    [dir="rtl"] .elementor-slick-slider .slick-next:before {
      content: '\e89f'; }

.elementor-slick-slider .slick-dotted.slick-slider {
  margin-bottom: 30px; }

.elementor-slick-slider ul.slick-dots {
  position: absolute;
  bottom: -25px;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1; }
  .elementor-slick-slider ul.slick-dots li {
    position: relative;
    display: inline-block;
    width: 20px;
    height: 20px;
    margin: 0;
    padding: 0;
    cursor: pointer; }
    .elementor-slick-slider ul.slick-dots li button {
      font-size: 0;
      line-height: 0;
      display: block;
      width: 20px;
      height: 20px;
      padding: 5px;
      cursor: pointer;
      color: transparent;
      border: 0;
      outline: none;
      background: transparent; }
      .elementor-slick-slider ul.slick-dots li button:hover, .elementor-slick-slider ul.slick-dots li button:focus {
        outline: none; }
        .elementor-slick-slider ul.slick-dots li button:hover:before, .elementor-slick-slider ul.slick-dots li button:focus:before {
          opacity: 1; }
      .elementor-slick-slider ul.slick-dots li button:before {
        font-family: eicons;
        font-size: 6px;
        line-height: 20px;
        position: absolute;
        top: 0;
        left: 0;
        width: 20px;
        height: 20px;
        content: '\e914';
        text-align: center;
        opacity: .25;
        color: black;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
    .elementor-slick-slider ul.slick-dots li.slick-active button:before {
      opacity: .75;
      color: black; }

.elementor-slick-slider .slick-arrows-inside .slick-prev {
  left: 20px; }
  [dir="rtl"] .elementor-slick-slider .slick-arrows-inside .slick-prev {
    left: auto;
    right: 20px; }

.elementor-slick-slider .slick-arrows-inside .slick-next {
  right: 20px; }
  [dir="rtl"] .elementor-slick-slider .slick-arrows-inside .slick-next {
    left: 20px;
    right: auto; }

.elementor-slick-slider .slick-dots-inside .slick-dots {
  bottom: 5px; }

.elementor-slick-slider .slick-dots-inside.slick-dotted.slick-slider {
  margin-bottom: 0; }

.elementor-slick-slider .slick-slider .slick-prev,
.elementor-slick-slider .slick-slider .slick-next {
  z-index: 1; }

.elementor-slick-slider .slick-slide img {
  margin: auto; }

/**
 * Swiper 3.4.2
 * Customized by Elementor team
 */
.swiper-container {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  /* Fix of Webkit flickering */
  z-index: 1; }
  .swiper-container .swiper-slide figure {
    line-height: 0; }
  .swiper-container .elementor-lightbox-content-source {
    display: none; }

.swiper-container-no-flexbox .swiper-slide {
  float: left; }

.swiper-container-vertical > .swiper-wrapper {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  -o-transition-property: transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-box-sizing: content-box;
          box-sizing: content-box; }

.swiper-container-android .swiper-slide, .swiper-wrapper {
  -webkit-transform: translate3d(0px, 0, 0);
          transform: translate3d(0px, 0, 0); }

.swiper-container-multirow > .swiper-wrapper {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }

.swiper-container-free-mode > .swiper-wrapper {
  -webkit-transition-timing-function: ease-out;
       -o-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  margin: 0 auto; }

.swiper-slide {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative; }

/* Auto Height */
.swiper-container-autoheight {
  height: auto; }
  .swiper-container-autoheight .swiper-slide {
    height: auto; }
  .swiper-container-autoheight .swiper-wrapper {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-transition-property: height, -webkit-transform;
    transition-property: height, -webkit-transform;
    -o-transition-property: transform, height;
    transition-property: transform, height;
    transition-property: transform, height, -webkit-transform; }

/* a11y */
.swiper-container .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000; }

/* IE10 Windows Phone 8 Fixes */
.swiper-wp8-horizontal {
  -ms-touch-action: pan-y;
      touch-action: pan-y; }

.swiper-wp8-vertical {
  -ms-touch-action: pan-x;
      touch-action: pan-x; }

/* Arrows */
.swiper-button-prev, .swiper-button-next {
  position: absolute;
  top: 50%;
  width: 27px;
  height: 44px;
  margin-top: -22px;
  z-index: 10;
  cursor: pointer;
  -webkit-background-size: 27px 44px;
          background-size: 27px 44px;
  background: no-repeat center; }

.swiper-button-prev.swiper-button-disabled, .swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none; }

.swiper-button-prev, .swiper-container-rtl .swiper-button-next {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  left: 10px;
  right: auto; }

.swiper-button-prev.swiper-button-black, .swiper-container-rtl .swiper-button-next.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-prev.swiper-button-white, .swiper-container-rtl .swiper-button-next.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-next, .swiper-container-rtl .swiper-button-prev {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  right: 10px;
  left: auto; }

.swiper-button-next.swiper-button-black, .swiper-container-rtl .swiper-button-prev.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-next.swiper-button-white, .swiper-container-rtl .swiper-button-prev.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }

/* Pagination Styles */
.swiper-pagination {
  position: absolute;
  text-align: center;
  -webkit-transition: 300ms;
  -o-transition: 300ms;
  transition: 300ms;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  z-index: 10; }
  .swiper-pagination.swiper-pagination-hidden {
    opacity: 0; }

/* Common Styles */
.swiper-pagination-fraction, .swiper-pagination-custom, .swiper-container-horizontal > .swiper-pagination-bullets {
  bottom: 5px;
  left: 0;
  width: 100%; }

/* Bullets */
.swiper-pagination-bullet {
  width: 6px;
  height: 6px;
  display: inline-block;
  -webkit-border-radius: 50%;
          border-radius: 50%;
  background: #000;
  opacity: 0.2; }

.swiper-pagination-fraction {
  color: #000; }

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none; }

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer; }

.swiper-pagination-white .swiper-pagination-bullet {
  background: #fff; }

.swiper-pagination-bullet-active {
  opacity: 1; }

.swiper-pagination-white .swiper-pagination-bullet-active {
  background: #fff; }

.swiper-pagination-black .swiper-pagination-bullet-active {
  background: #000; }

.swiper-container-vertical > .swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  -webkit-transform: translate3d(0px, -50%, 0);
          transform: translate3d(0px, -50%, 0); }
  .swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 5px 0;
    display: block; }

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 6px; }

/* Progressbar */
.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, 0.25);
  position: absolute; }
  .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: #000;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    -webkit-transform: scale(0);
        -ms-transform: scale(0);
            transform: scale(0);
    -webkit-transform-origin: left top;
        -ms-transform-origin: left top;
            transform-origin: left top; }

.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  -webkit-transform-origin: right top;
      -ms-transform-origin: right top;
          transform-origin: right top; }

.swiper-container-horizontal > .swiper-pagination-progressbar {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0; }

.swiper-container-vertical > .swiper-pagination-progressbar {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0; }

.swiper-pagination-progressbar.swiper-pagination-white {
  background: rgba(255, 255, 255, 0.5); }
  .swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill {
    background: #fff; }

.swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill {
  background: #000; }

/* 3D Container */
.swiper-container-3d {
  -webkit-perspective: 1200px;
          perspective: 1200px; }
  .swiper-container-3d .swiper-wrapper, .swiper-container-3d .swiper-slide, .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top, .swiper-container-3d .swiper-slide-shadow-bottom, .swiper-container-3d .swiper-cube-shadow {
    -webkit-transform-style: preserve-3d;
            transform-style: preserve-3d; }
  .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top, .swiper-container-3d .swiper-slide-shadow-bottom {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10; }
  .swiper-container-3d .swiper-slide-shadow-left {
    background-image: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
    background-image: -webkit-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: -o-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }
  .swiper-container-3d .swiper-slide-shadow-right {
    background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
    background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }
  .swiper-container-3d .swiper-slide-shadow-top {
    background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
    background-image: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: -o-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }
  .swiper-container-3d .swiper-slide-shadow-bottom {
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
    background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: -o-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

/* Coverflow */
.swiper-container-coverflow .swiper-wrapper, .swiper-container-flip .swiper-wrapper {
  /* Windows 8 IE 10 fix */
  -ms-perspective: 1200px; }

/* Cube + Flip */
.swiper-container-cube, .swiper-container-flip {
  overflow: visible; }

.swiper-container-cube .swiper-slide, .swiper-container-flip .swiper-slide {
  pointer-events: none;
  z-index: 1; }

.swiper-container-cube .swiper-slide .swiper-slide, .swiper-container-flip .swiper-slide .swiper-slide {
  pointer-events: none; }

.swiper-container-cube .swiper-slide-active, .swiper-container-flip .swiper-slide-active, .swiper-container-cube .swiper-slide-active .swiper-slide-active, .swiper-container-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto; }

.swiper-container-cube .swiper-slide-shadow-top, .swiper-container-flip .swiper-slide-shadow-top, .swiper-container-cube .swiper-slide-shadow-bottom, .swiper-container-flip .swiper-slide-shadow-bottom, .swiper-container-cube .swiper-slide-shadow-left, .swiper-container-flip .swiper-slide-shadow-left, .swiper-container-cube .swiper-slide-shadow-right, .swiper-container-flip .swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

/* Cube */
.swiper-container-cube .swiper-slide {
  visibility: hidden;
  -webkit-transform-origin: 0 0;
      -ms-transform-origin: 0 0;
          transform-origin: 0 0;
  width: 100%;
  height: 100%; }

.swiper-container-cube.swiper-container-rtl .swiper-slide {
  -webkit-transform-origin: 100% 0;
      -ms-transform-origin: 100% 0;
          transform-origin: 100% 0; }

.swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-next, .swiper-container-cube .swiper-slide-prev, .swiper-container-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible; }

.swiper-container-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0.6;
  -webkit-filter: blur(50px);
  filter: blur(50px);
  z-index: 0; }

/* Fade */
.swiper-container-fade.swiper-container-free-mode .swiper-slide {
  -webkit-transition-timing-function: ease-out;
       -o-transition-timing-function: ease-out;
          transition-timing-function: ease-out; }

.swiper-container-fade .swiper-slide {
  pointer-events: none;
  -webkit-transition-property: opacity;
  -o-transition-property: opacity;
  transition-property: opacity; }
  .swiper-container-fade .swiper-slide .swiper-slide {
    pointer-events: none; }

.swiper-container-fade .swiper-slide-active {
  pointer-events: auto; }
  .swiper-container-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto; }

.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center; }
  .swiper-zoom-container > img, .swiper-zoom-container > svg, .swiper-zoom-container > canvas {
    max-width: 100%;
    max-height: 100%;
    -o-object-fit: contain;
       object-fit: contain; }

/* Scrollbar */
.swiper-scrollbar {
  -webkit-border-radius: 10px;
          border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, 0.1); }

.swiper-container-horizontal > .swiper-scrollbar {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 50;
  height: 5px;
  width: 98%; }

.swiper-container-vertical > .swiper-scrollbar {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%; }

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  -webkit-border-radius: 10px;
          border-radius: 10px;
  left: 0;
  top: 0; }

.swiper-scrollbar-cursor-drag {
  cursor: move; }

.elementor-pagination-position-outside .swiper-container {
  padding-bottom: 30px; }

.elementor-pagination-position-outside .elementor-swiper-button {
  top: calc(50% - 30px / 2); }

.elementor-swiper {
  position: relative; }

.elementor-main-swiper {
  position: static; }

.elementor-arrows-position-outside .swiper-container {
  width: calc(100% - 60px); }

.elementor-arrows-position-outside .elementor-swiper-button-prev {
  left: 0; }

.elementor-arrows-position-outside .elementor-swiper-button-next {
  right: 0; }

.swiper-image-stretch .swiper-slide .swiper-slide-image {
  width: 100%; }

.elementor-swiper-button {
  position: absolute;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  z-index: 1;
  cursor: pointer;
  font-size: 25px;
  color: rgba(238, 238, 238, 0.9);
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%); }
  .elementor-swiper-button-prev {
    left: 10px; }
  .elementor-swiper-button-next {
    right: 10px; }
  .elementor-swiper-button.swiper-button-disabled {
    opacity: 0.3; }

.swiper-container-cube .elementor-swiper-button {
  -webkit-transform: translate3d(0, -50%, 1px);
          transform: translate3d(0, -50%, 1px); }

/* Preloader */
.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  -webkit-transform-origin: 50%;
      -ms-transform-origin: 50%;
          transform-origin: 50%;
  -webkit-animation: swiper-preloader-spin 1s steps(12, end) infinite;
          animation: swiper-preloader-spin 1s steps(12, end) infinite; }
  .swiper-lazy-preloader:after {
    display: block;
    content: "";
    width: 100%;
    height: 100%;
    -webkit-background-size: 100% 100%;
            background-size: 100%;
    background: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%236c6c6c'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat 50%; }

.swiper-lazy-preloader-white:after {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%23fff'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }

@-webkit-keyframes swiper-preloader-spin {
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

@keyframes swiper-preloader-spin {
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

.elementor-lightbox {
  --lightbox-ui-color: rgba(238, 238, 238, 0.9);
  --lightbox-ui-color-hover: #fff;
  --lightbox-text-color: var(--lightbox-ui-color);
  --lightbox-header-icons-size: 20px;
  --lightbox-navigation-icons-size: 25px; }
  .elementor-lightbox .dialog-header {
    display: none; }
  .elementor-lightbox .dialog-widget-content {
    background: none;
    -webkit-box-shadow: none;
            box-shadow: none;
    width: 100%;
    height: 100%; }
  .elementor-lightbox .dialog-message {
    -webkit-animation-duration: .3s;
            animation-duration: .3s; }
    .elementor-lightbox .dialog-message:not(.elementor-fit-aspect-ratio) {
      height: 100%; }
    .elementor-lightbox .dialog-message.dialog-lightbox-message {
      padding: 0; }
  .elementor-lightbox .dialog-lightbox-close-button {
    cursor: pointer;
    position: absolute;
    font-size: var(--lightbox-header-icons-size);
    right: 0.75em;
    margin-top: 13px;
    padding: .25em;
    z-index: 2;
    line-height: 1; }
  .elementor-lightbox .dialog-lightbox-close-button,
  .elementor-lightbox .elementor-swiper-button {
    color: var(--lightbox-ui-color);
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    opacity: 1; }
    .elementor-lightbox .dialog-lightbox-close-button:hover,
    .elementor-lightbox .elementor-swiper-button:hover {
      color: var(--lightbox-ui-color-hover); }
  .elementor-lightbox .swiper-container {
    height: 100%; }
  .elementor-lightbox .elementor-lightbox-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative;
    padding: 70px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    height: 100%;
    margin: auto; }
    @media (max-width: 767px) {
      .elementor-lightbox .elementor-lightbox-item {
        padding: 70px 0; } }
  .elementor-lightbox .elementor-lightbox-image {
    max-height: 100%;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none; }
    .elementor-lightbox .elementor-lightbox-image, .elementor-lightbox .elementor-lightbox-image:hover {
      opacity: 1;
      -webkit-filter: none;
              filter: none;
      border: none; }
  .elementor-lightbox .elementor-lightbox-image, .elementor-lightbox .elementor-video-container {
    -webkit-box-shadow: 0 0 30px rgba(0, 0, 0, 0.3), 0 0 8px -5px rgba(0, 0, 0, 0.3);
            box-shadow: 0 0 30px rgba(0, 0, 0, 0.3), 0 0 8px -5px rgba(0, 0, 0, 0.3);
    -webkit-border-radius: 2px;
            border-radius: 2px; }
  .elementor-lightbox .elementor-video-container {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }
    @media (min-width: 1025px) {
      .elementor-lightbox .elementor-video-container {
        width: 75%; } }
    @media (max-width: 1024px) {
      .elementor-lightbox .elementor-video-container {
        width: 100%; } }
  @media (min-width: 768px) and (max-width: 1024px) {
    .elementor-lightbox .elementor-aspect-ratio-916 .elementor-video-container {
      width: 70%; } }
  .elementor-lightbox .elementor-swiper-button:focus {
    outline-width: 1px; }
  .elementor-lightbox .elementor-swiper-button-prev, .elementor-lightbox .elementor-swiper-button-next {
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 15%;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: var(--lightbox-navigation-icons-size); }
  .elementor-lightbox .elementor-swiper-button-prev {
    left: 0; }
  .elementor-lightbox .elementor-swiper-button-next {
    right: 0; }
  @media (max-width: 767px) {
    .elementor-lightbox .elementor-swiper-button:focus {
      outline: none; }
    .elementor-lightbox .elementor-swiper-button-prev, .elementor-lightbox .elementor-swiper-button-next {
      width: 20%; }
      .elementor-lightbox .elementor-swiper-button-prev i, .elementor-lightbox .elementor-swiper-button-next i {
        padding: 10px;
        background-color: rgba(0, 0, 0, 0.5); }
    .elementor-lightbox .elementor-swiper-button-prev {
      left: 0;
      -webkit-box-pack: start;
          -ms-flex-pack: start;
              justify-content: flex-start; }
    .elementor-lightbox .elementor-swiper-button-next {
      right: 0;
      -webkit-box-pack: end;
          -ms-flex-pack: end;
              justify-content: flex-end; } }

.elementor-slideshow__counter {
  color: currentColor;
  font-size: .75em;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content; }

.elementor-slideshow__header, .elementor-slideshow__footer {
  position: absolute;
  left: 0;
  width: 100%;
  padding: 15px 20px;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s; }

.elementor-slideshow__footer {
  color: var(--lightbox-text-color); }

.elementor-slideshow__header {
  color: var(--lightbox-ui-color);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  font-size: var(--lightbox-header-icons-size);
  padding-left: 1em;
  padding-right: 2.6em;
  top: 0;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  z-index: 10; }
  .elementor-slideshow__header > i {
    font-size: inherit;
    cursor: pointer;
    padding: .25em;
    margin: 0 .35em; }
    .elementor-slideshow__header > i:hover {
      color: var(--lightbox-ui-color-hover); }
  .elementor-slideshow__header .elementor-slideshow__counter {
    margin-right: auto; }
  .elementor-slideshow__header .elementor-icon-share {
    z-index: 5; }

.elementor-slideshow__share-menu {
  background-color: rgba(0, 0, 0, 0);
  width: 0;
  height: 0;
  position: absolute;
  overflow: hidden;
  -webkit-transition: background-color 400ms;
  -o-transition: background-color 400ms;
  transition: background-color 400ms; }
  .elementor-slideshow__share-menu .elementor-slideshow__share-links a {
    color: #2C2C2C; }

.elementor-slideshow__share-links {
  display: block;
  position: absolute;
  min-width: 200px;
  right: 2.8em;
  top: 3em;
  background-color: #fff;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  padding: 14px 20px;
  -webkit-transform: scale(0);
      -ms-transform: scale(0);
          transform: scale(0);
  opacity: 0;
  -webkit-transform-origin: 90% 10%;
      -ms-transform-origin: 90% 10%;
          transform-origin: 90% 10%;
  -webkit-transition: all 250ms 100ms;
  -o-transition: all 250ms 100ms;
  transition: all 250ms 100ms;
  -webkit-box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
          box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3); }
  .elementor-slideshow__share-links a {
    text-align: left;
    color: #55595c;
    font-size: 12px;
    line-height: 2.5;
    display: block;
    opacity: 0;
    -webkit-transition: opacity 500ms 100ms;
    -o-transition: opacity 500ms 100ms;
    transition: opacity 500ms 100ms; }
    .elementor-slideshow__share-links a:hover {
      color: #000; }
    .elementor-slideshow__share-links a i {
      font-size: 1.25em;
      margin-right: 0.75em; }
  .elementor-slideshow__share-links:before {
    content: '';
    display: block;
    position: absolute;
    top: 1px;
    right: 0.5em;
    border: .45em solid;
    border-color: transparent transparent #fff transparent;
    -webkit-transform: translateY(-100%) scaleX(0.7);
        -ms-transform: translateY(-100%) scaleX(0.7);
            transform: translateY(-100%) scaleX(0.7); }

.elementor-slideshow__footer {
  bottom: 0;
  z-index: 5;
  position: fixed; }

.elementor-slideshow__title, .elementor-slideshow__description {
  margin: 0; }

.elementor-slideshow__title {
  font-size: 16px;
  font-weight: bold; }

.elementor-slideshow__description {
  font-size: 14px; }

.elementor-slideshow--ui-hidden .elementor-slideshow__header, .elementor-slideshow--ui-hidden .elementor-slideshow__footer {
  opacity: 0;
  pointer-events: none; }

.elementor-slideshow--ui-hidden .elementor-swiper-button-prev, .elementor-slideshow--ui-hidden .elementor-swiper-button-next {
  opacity: 0; }

.elementor-slideshow--fullscreen-mode .elementor-video-container {
  width: 100%; }

.elementor-slideshow--zoom-mode .elementor-slideshow__header, .elementor-slideshow--zoom-mode .elementor-slideshow__footer {
  background-color: rgba(0, 0, 0, 0.5); }

.elementor-slideshow--zoom-mode .elementor-swiper-button-prev, .elementor-slideshow--zoom-mode .elementor-swiper-button-next {
  opacity: 0;
  pointer-events: none; }

.elementor-slideshow--share-mode .elementor-slideshow__share-menu {
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  opacity: 1;
  cursor: default;
  background-color: rgba(0, 0, 0, 0.5); }

.elementor-slideshow--share-mode .elementor-slideshow__share-links {
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1); }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links, .elementor-slideshow--share-mode .elementor-slideshow__share-links a {
    opacity: 1; }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-twitter {
    color: #1DA1F2; }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-facebook {
    color: #3b5998; }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-pinterest {
    color: #bd081c; }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-download-bold {
    color: #a4afb7; }

.elementor-slideshow--share-mode .eicon-share-arrow {
  z-index: 2; }

.animated {
  -webkit-animation-duration: 1.25s;
          animation-duration: 1.25s; }
  .animated.animated-slow {
    -webkit-animation-duration: 2s;
            animation-duration: 2s; }
  .animated.animated-fast {
    -webkit-animation-duration: .75s;
            animation-duration: .75s; }
  .animated.infinite {
    -webkit-animation-iteration-count: infinite;
            animation-iteration-count: infinite; }
  .animated.reverse {
    animation-direction: reverse;
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards; }

@media (prefers-reduced-motion: reduce) {
  .animated {
    -webkit-animation: none;
            animation: none; } }

.elementor-shape {
  overflow: hidden;
  position: absolute;
  left: 0;
  width: 100%;
  line-height: 0;
  direction: ltr;
  /*
	 * @TODO: The `z-index: -1` rules below are temporary fixes for Chrome 85 issue.
	 *   It will be removed in a future version of Chrome.
	 */ }
  .elementor-shape-top {
    top: -1px; }
    .elementor-shape-top:not([data-negative="false"]) svg {
      z-index: -1; }
  .elementor-shape-bottom {
    bottom: -1px; }
    .elementor-shape-bottom:not([data-negative="true"]) svg {
      z-index: -1; }
  .elementor-shape[data-negative="false"].elementor-shape-bottom {
    -webkit-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
            transform: rotate(180deg); }
  .elementor-shape[data-negative="true"].elementor-shape-top {
    -webkit-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
            transform: rotate(180deg); }
  .elementor-shape svg {
    display: block;
    width: calc(100% + 1.3px);
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%); }
  .elementor-shape .elementor-shape-fill {
    fill: #fff;
    -webkit-transform-origin: center;
        -ms-transform-origin: center;
            transform-origin: center;
    -webkit-transform: rotateY(0deg);
            transform: rotateY(0deg); }

#wp-admin-bar-elementor_edit_page .ab-submenu .ab-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 200px; }

#wp-admin-bar-elementor_edit_page .elementor-edit-link-title {
  white-space: nowrap;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  overflow: hidden;
  width: 100%; }

#wp-admin-bar-elementor_edit_page .elementor-edit-link-type {
  background: #55595c;
  font-size: 11px;
  line-height: 9px;
  margin-top: 6px;
  padding: 4px 8px;
  -webkit-border-radius: 3px;
          border-radius: 3px; }

.page-template-elementor_canvas.elementor-page:before {
  display: none; }

.elementor-post__thumbnail__link {
  -webkit-transition: none;
  -o-transition: none;
  transition: none; }

#left-area ul.elementor-icon-list-items,
.elementor .elementor-element ul.elementor-icon-list-items,
.elementor-edit-area .elementor-element ul.elementor-icon-list-items {
  padding: 0; }

#wpadminbar * {
  font-style: normal; }

.e--ua-appleWebkit.rtl {
  --flex-right: flex-start; }

.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-right,
.e--ua-appleWebkit .elementor-share-buttons--align-right {
  --justify-content: var(--flex-right, flex-end); }

.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-center,
.e--ua-appleWebkit .elementor-share-buttons--align-center {
  --justify-content: center; }

.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-justify .elementor-grid {
  width: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: var(--justify-content, space-between);
      -ms-flex-pack: var(--justify-content, space-between);
          justify-content: var(--justify-content, space-between);
  margin-left: calc(-0.5 * var(--grid-column-gap));
  margin-right: calc(-0.5 * var(--grid-column-gap)); }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-justify .elementor-grid-item {
    margin-left: calc(0.5 * var(--grid-column-gap));
    margin-right: calc(0.5 * var(--grid-column-gap)); }

.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid {
  display: inline-block; }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid-item {
    margin-left: 0;
    margin-right: 0; }

@media (max-width: 1024px) {
  .e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-tablet-right,
  .e--ua-appleWebkit .elementor-share-buttons-tablet--align-right {
    --justify-content: var(--flex-right, flex-end); }
  .e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-tablet-center,
  .e--ua-appleWebkit .elementor-share-buttons-tablet--align-center {
    --justify-content: center; }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-justify .elementor-grid {
    width: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: var(--justify-content, space-between);
        -ms-flex-pack: var(--justify-content, space-between);
            justify-content: var(--justify-content, space-between);
    margin-left: calc(-0.5 * var(--grid-column-gap));
    margin-right: calc(-0.5 * var(--grid-column-gap)); }
    .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-justify .elementor-grid-item {
      margin-left: calc(0.5 * var(--grid-column-gap));
      margin-right: calc(0.5 * var(--grid-column-gap)); }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid {
    display: inline-block; }
    .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid-item {
      margin-left: 0;
      margin-right: 0; } }

@media (max-width: 767px) {
  .e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-mobile-right,
  .e--ua-appleWebkit .elementor-share-buttons-mobile--align-right {
    --justify-content: var(--flex-right, flex-end); }
  .e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-mobile-center,
  .e--ua-appleWebkit .elementor-share-buttons-mobile--align-center {
    --justify-content: center; }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-justify .elementor-grid {
    width: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: var(--justify-content, space-between);
        -ms-flex-pack: var(--justify-content, space-between);
            justify-content: var(--justify-content, space-between);
    margin-left: calc(-0.5 * var(--grid-column-gap));
    margin-right: calc(-0.5 * var(--grid-column-gap)); }
    .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-justify .elementor-grid-item {
      margin-left: calc(0.5 * var(--grid-column-gap));
      margin-right: calc(0.5 * var(--grid-column-gap)); }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid {
    display: inline-block; }
    .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid-item {
      margin-left: 0;
      margin-right: 0; } }

@media (max-width: 767px) {
  .elementor .elementor-hidden-mobile {
    display: none; }
  .elementor .elementor-hidden-phone {
    display: none; } }

@media (min-width: -1px) and (max-width: -1px) {
  .elementor .elementor-hidden-mobile_extra {
    display: none; } }

@media (min-width: 768px) and (max-width: 1024px) {
  .elementor .elementor-hidden-tablet {
    display: none; } }

@media (min-width: -1px) and (max-width: -1px) {
  .elementor .elementor-hidden-tablet_extra {
    display: none; } }

@media (min-width: -1px) and (max-width: -1px) {
  .elementor .elementor-hidden-laptop {
    display: none; } }

@media (min-width: 1025px) and (max-width: 99999px) {
  .elementor .elementor-hidden-desktop {
    display: none; } }

@media (min-width: -1px) {
  .elementor .elementor-hidden-widescreen {
    display: none; } }

.elementor-widget-text-path {
  font-size: 20px;
  text-align: var(--alignment, left); }
  .elementor-widget-text-path svg {
    width: var(--width);
    max-width: 100%;
    height: auto;
    overflow: visible;
    word-spacing: var(--word-spacing);
    -webkit-transform: rotate(var(--rotate, 0)) scaleX(var(--scale-x, 1)) scaleY(var(--scale-y, 1));
        -ms-transform: rotate(var(--rotate, 0)) scaleX(var(--scale-x, 1)) scaleY(var(--scale-y, 1));
            transform: rotate(var(--rotate, 0)) scaleX(var(--scale-x, 1)) scaleY(var(--scale-y, 1)); }
    .elementor-widget-text-path svg path {
      vector-effect: non-scaling-stroke;
      /* Prevent stroke size scaling when resizing the SVG. */
      fill: var(--path-fill, transparent);
      stroke: var(--stroke-color, transparent);
      stroke-width: var(--stroke-width, 1px);
      -webkit-transition: var(--stroke-transition) stroke, var(--stroke-transition) fill;
      -o-transition: var(--stroke-transition) stroke, var(--stroke-transition) fill;
      transition: var(--stroke-transition) stroke, var(--stroke-transition) fill; }
    .elementor-widget-text-path svg:hover path {
      --path-fill: var( --path-fill-hover );
      --stroke-color: var( --stroke-color-hover );
      --stroke-width: var( --stroke-width-hover ); }
    .elementor-widget-text-path svg text {
      --fill: var( --text-color );
      fill: var(--fill);
      direction: var(--direction, ltr);
      -webkit-transition: var(--transition) stroke, var(--transition) stroke-width, var(--transition) fill;
      -o-transition: var(--transition) stroke, var(--transition) stroke-width, var(--transition) fill;
      transition: var(--transition) stroke, var(--transition) stroke-width, var(--transition) fill; }
      .elementor-widget-text-path svg text:hover {
        --color: var( --text-color-hover, var( --text-color ) );
        --fill: var( --color );
        color: var(--color); }

.elementor-accordion {
  text-align: left; }
  .elementor-accordion .elementor-accordion-item {
    border: 1px solid #D4D4D4; }
    .elementor-accordion .elementor-accordion-item + .elementor-accordion-item {
      border-top: none; }
  .elementor-accordion .elementor-tab-title {
    margin: 0;
    padding: 15px 20px;
    font-weight: bold;
    line-height: 1;
    cursor: pointer;
    outline: none; }
    .elementor-accordion .elementor-tab-title .elementor-accordion-icon {
      display: inline-block;
      width: 1.5em; }
      .elementor-accordion .elementor-tab-title .elementor-accordion-icon svg {
        width: 1em;
        height: 1em; }
      .elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-right {
        float: right;
        text-align: right; }
      .elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-left {
        float: left;
        text-align: left; }
      .elementor-accordion .elementor-tab-title .elementor-accordion-icon .elementor-accordion-icon-closed {
        display: block; }
      .elementor-accordion .elementor-tab-title .elementor-accordion-icon .elementor-accordion-icon-opened {
        display: none; }
    .elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-closed {
      display: none; }
    .elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-opened {
      display: block; }
  .elementor-accordion .elementor-tab-content {
    display: none;
    padding: 15px 20px;
    border-top: 1px solid #D4D4D4; }

@media (max-width: 767px) {
  .elementor-accordion .elementor-tab-title {
    padding: 12px 15px; }
    .elementor-accordion .elementor-tab-title .elementor-accordion-icon {
      width: 1.2em; }
  .elementor-accordion .elementor-tab-content {
    padding: 7px 15px; } }

.elementor-alert {
  padding: 15px;
  border-left: 5px solid transparent;
  position: relative;
  text-align: left; }
  .elementor-alert .elementor-alert-title {
    display: block;
    font-weight: bold; }
  .elementor-alert .elementor-alert-description {
    font-size: 13px; }
  .elementor-alert button.elementor-alert-dismiss {
    position: absolute;
    right: 10px;
    top: 10px;
    padding: 3px;
    font-size: 20px;
    line-height: 1;
    background: transparent;
    color: inherit;
    border: none;
    cursor: pointer; }
  .elementor-alert.elementor-alert-info {
    color: #31708f;
    background-color: #d9edf7;
    border-color: #bcdff1; }
  .elementor-alert.elementor-alert-success {
    color: #3c763d;
    background-color: #dff0d8;
    border-color: #cae6be; }
  .elementor-alert.elementor-alert-warning {
    color: #8a6d3b;
    background-color: #fcf8e3;
    border-color: #f9f0c3; }
  .elementor-alert.elementor-alert-danger {
    color: #a94442;
    background-color: #f2dede;
    border-color: #e8c4c4; }

@media (max-width: 767px) {
  .elementor-alert {
    padding: 10px; }
    .elementor-alert button.elementor-alert-dismiss {
      right: 7px;
      top: 7px; } }

.elementor-counter .elementor-counter-number-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 69px;
  font-weight: 600;
  line-height: 1; }

.elementor-counter .elementor-counter-number-prefix, .elementor-counter .elementor-counter-number-suffix {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  white-space: pre-wrap; }

.elementor-counter .elementor-counter-number-prefix {
  text-align: right; }

.elementor-counter .elementor-counter-number-suffix {
  text-align: left; }

.elementor-counter .elementor-counter-title {
  text-align: center;
  font-size: 19px;
  font-weight: 400;
  line-height: 2.5; }

.elementor-widget-divider {
  --divider-border-style: none;
  --divider-border-width: 1px;
  --divider-color: #2C2C2C;
  --divider-icon-size: 20px;
  --divider-element-spacing: 10px;
  --divider-pattern-height: 24px;
  --divider-pattern-size: 20px;
  --divider-pattern-url: none;
  --divider-pattern-repeat: repeat-x; }
  .elementor-widget-divider .elementor-divider {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .elementor-widget-divider .elementor-divider__text {
      font-size: 15px;
      line-height: 1;
      max-width: 95%; }
    .elementor-widget-divider .elementor-divider__element {
      margin: 0 var(--divider-element-spacing);
      -ms-flex-negative: 0;
          flex-shrink: 0; }
  .elementor-widget-divider .elementor-icon {
    font-size: var(--divider-icon-size); }
  .elementor-widget-divider .elementor-divider-separator {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0;
    direction: ltr; }
  .elementor-widget-divider--view-line_text .elementor-divider-separator, .elementor-widget-divider--view-line_icon .elementor-divider-separator {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .elementor-widget-divider--view-line_text .elementor-divider-separator:before, .elementor-widget-divider--view-line_text .elementor-divider-separator:after, .elementor-widget-divider--view-line_icon .elementor-divider-separator:before, .elementor-widget-divider--view-line_icon .elementor-divider-separator:after {
      display: block;
      content: '';
      border-bottom: 0;
      -webkit-box-flex: 1;
          -ms-flex-positive: 1;
              flex-grow: 1;
      border-top: var(--divider-border-width) var(--divider-border-style) var(--divider-color); }
  .elementor-widget-divider--element-align-left .elementor-divider .elementor-divider-separator > .elementor-divider__svg:first-of-type {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 100;
        flex-shrink: 100; }
  .elementor-widget-divider--element-align-left .elementor-divider-separator:before {
    content: none; }
  .elementor-widget-divider--element-align-left .elementor-divider__element {
    margin-left: 0; }
  .elementor-widget-divider--element-align-right .elementor-divider .elementor-divider-separator > .elementor-divider__svg:last-of-type {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 100;
        flex-shrink: 100; }
  .elementor-widget-divider--element-align-right .elementor-divider-separator:after {
    content: none; }
  .elementor-widget-divider--element-align-right .elementor-divider__element {
    margin-right: 0; }
  .elementor-widget-divider:not(.elementor-widget-divider--view-line_text):not(.elementor-widget-divider--view-line_icon) .elementor-divider-separator {
    border-top: var(--divider-border-width) var(--divider-border-style) var(--divider-color); }
  .elementor-widget-divider--separator-type-pattern {
    --divider-border-style: none; }
    .elementor-widget-divider--separator-type-pattern.elementor-widget-divider--view-line .elementor-divider-separator,
    .elementor-widget-divider--separator-type-pattern:not([class*=elementor-widget-divider--view]) .elementor-divider-separator,
    .elementor-widget-divider--separator-type-pattern:not(.elementor-widget-divider--view-line) .elementor-divider-separator:before,
    .elementor-widget-divider--separator-type-pattern:not(.elementor-widget-divider--view-line) .elementor-divider-separator:after {
      width: 100%;
      min-height: var(--divider-pattern-height);
      -webkit-mask-size: var(--divider-pattern-size) 100%;
      mask-size: var(--divider-pattern-size) 100%;
      -webkit-mask-repeat: var(--divider-pattern-repeat);
      mask-repeat: var(--divider-pattern-repeat);
      background-color: var(--divider-color);
      -webkit-mask-image: var(--divider-pattern-url);
      mask-image: var(--divider-pattern-url); }
  .elementor-widget-divider--no-spacing {
    --divider-pattern-size: auto; }
  .elementor-widget-divider--bg-round {
    --divider-pattern-repeat: round; }

.rtl .elementor-widget-divider .elementor-divider__text {
  direction: rtl; }

.elementor-image-gallery .gallery-item {
  display: inline-block;
  text-align: center;
  vertical-align: top;
  width: 100%;
  max-width: 100%;
  margin: 0 auto; }
  .elementor-image-gallery .gallery-item img {
    margin: 0 auto; }
  .elementor-image-gallery .gallery-item .gallery-caption {
    margin: 0; }

.elementor-image-gallery figure img {
  display: block; }

.elementor-image-gallery figure figcaption {
  width: 100%; }

.gallery-spacing-custom .elementor-image-gallery .gallery-icon {
  padding: 0; }

@media (min-width: 768px) {
  .elementor-image-gallery .gallery-columns-2 .gallery-item {
    max-width: 50%; }
  .elementor-image-gallery .gallery-columns-3 .gallery-item {
    max-width: 33.33%; }
  .elementor-image-gallery .gallery-columns-4 .gallery-item {
    max-width: 25%; }
  .elementor-image-gallery .gallery-columns-5 .gallery-item {
    max-width: 20%; }
  .elementor-image-gallery .gallery-columns-6 .gallery-item {
    max-width: 16.666%; }
  .elementor-image-gallery .gallery-columns-7 .gallery-item {
    max-width: 14.28%; }
  .elementor-image-gallery .gallery-columns-8 .gallery-item {
    max-width: 12.5%; }
  .elementor-image-gallery .gallery-columns-9 .gallery-item {
    max-width: 11.11%; }
  .elementor-image-gallery .gallery-columns-10 .gallery-item {
    max-width: 10%; } }

@media (min-width: 480px) and (max-width: 767px) {
  .elementor-image-gallery .gallery.gallery-columns-2 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-3 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-4 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-5 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-6 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-7 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-8 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-9 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-10 .gallery-item {
    max-width: 50%; } }

@media (max-width: 479px) {
  .elementor-image-gallery .gallery.gallery-columns-2 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-3 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-4 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-5 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-6 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-7 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-8 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-9 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-10 .gallery-item {
    max-width: 100%; } }

.elementor-widget-google_maps .elementor-widget-container {
  overflow: hidden; }

.elementor-widget-google_maps iframe {
  height: 300px; }

.elementor-heading-title {
  padding: 0;
  margin: 0;
  line-height: 1; }

.elementor-widget-heading .elementor-heading-title[class*="elementor-size-"] > a {
  color: inherit;
  font-size: inherit;
  line-height: inherit; }

.elementor-widget-heading .elementor-heading-title.elementor-size-small {
  font-size: 15px; }

.elementor-widget-heading .elementor-heading-title.elementor-size-medium {
  font-size: 19px; }

.elementor-widget-heading .elementor-heading-title.elementor-size-large {
  font-size: 29px; }

.elementor-widget-heading .elementor-heading-title.elementor-size-xl {
  font-size: 39px; }

.elementor-widget-heading .elementor-heading-title.elementor-size-xxl {
  font-size: 59px; }

@media (min-width: 768px) {
  .elementor-widget-icon-box.elementor-position-left .elementor-icon-box-wrapper, .elementor-widget-icon-box.elementor-position-right .elementor-icon-box-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .elementor-widget-icon-box.elementor-position-left .elementor-icon-box-icon, .elementor-widget-icon-box.elementor-position-right .elementor-icon-box-icon {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
  .elementor-widget-icon-box.elementor-position-right .elementor-icon-box-wrapper {
    text-align: right;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .elementor-widget-icon-box.elementor-position-left .elementor-icon-box-wrapper {
    text-align: left;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row; }
  .elementor-widget-icon-box.elementor-position-top .elementor-icon-box-img {
    margin: auto; }
  .elementor-widget-icon-box.elementor-vertical-align-top .elementor-icon-box-wrapper {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start; }
  .elementor-widget-icon-box.elementor-vertical-align-middle .elementor-icon-box-wrapper {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .elementor-widget-icon-box.elementor-vertical-align-bottom .elementor-icon-box-wrapper {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end; } }

@media (max-width: 767px) {
  .elementor-widget-icon-box .elementor-icon-box-icon {
    margin-left: auto !important;
    margin-right: auto !important;
    margin-bottom: 15px; } }

.elementor-widget-icon-box .elementor-icon-box-wrapper {
  text-align: center; }

.elementor-widget-icon-box .elementor-icon-box-title a {
  color: inherit; }

.elementor-widget-icon-box .elementor-icon-box-content {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1; }

.elementor-widget-icon-box .elementor-icon-box-description {
  margin: 0; }

.elementor-widget.elementor-icon-list--layout-inline .elementor-widget-container {
  overflow: hidden; }

.elementor-widget .elementor-icon-list-items.elementor-inline-items {
  margin-right: -8px;
  margin-left: -8px; }
  .elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item {
    margin-right: 8px;
    margin-left: 8px; }
    .elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after {
      width: auto;
      left: auto;
      right: auto;
      position: relative;
      height: 100%;
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      border-top: 0;
      border-bottom: 0;
      border-right: 0;
      border-left-width: 1px;
      border-style: solid;
      right: -8px; }

.elementor-widget .elementor-icon-list-items {
  list-style-type: none;
  margin: 0;
  padding: 0; }

.elementor-widget .elementor-icon-list-item {
  margin: 0;
  padding: 0;
  position: relative; }
  .elementor-widget .elementor-icon-list-item:after {
    position: absolute;
    bottom: 0;
    width: 100%; }
  .elementor-widget .elementor-icon-list-item, .elementor-widget .elementor-icon-list-item a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: inherit; }

.elementor-widget .elementor-icon-list-icon + .elementor-icon-list-text {
  -ms-flex-item-align: center;
      align-self: center;
  padding-left: 5px; }

.elementor-widget .elementor-icon-list-icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  .elementor-widget .elementor-icon-list-icon svg {
    width: var(--e-icon-list-icon-size, 1em);
    height: var(--e-icon-list-icon-size, 1em); }
  .elementor-widget .elementor-icon-list-icon i {
    width: 1.25em;
    font-size: var(--e-icon-list-icon-size); }

.elementor-widget.elementor-widget-icon-list .elementor-icon-list-icon {
  text-align: var(--e-icon-list-icon-align); }
  .elementor-widget.elementor-widget-icon-list .elementor-icon-list-icon svg {
    margin: var(--e-icon-list-icon-margin, 0 calc(var(--e-icon-list-icon-size, 1em) * 0.25) 0 0); }

.elementor-widget.elementor-list-item-link-full_width a {
  width: 100%; }

.elementor-widget.elementor-align-center .elementor-icon-list-item, .elementor-widget.elementor-align-center .elementor-icon-list-item a {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.elementor-widget.elementor-align-center .elementor-icon-list-item:after {
  margin: auto; }

.elementor-widget.elementor-align-center .elementor-inline-items {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.elementor-widget.elementor-align-left .elementor-icon-list-item, .elementor-widget.elementor-align-left .elementor-icon-list-item a {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  text-align: left; }

.elementor-widget.elementor-align-left .elementor-inline-items {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start; }

.elementor-widget.elementor-align-right .elementor-icon-list-item, .elementor-widget.elementor-align-right .elementor-icon-list-item a {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  text-align: right; }

.elementor-widget.elementor-align-right .elementor-icon-list-items {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.elementor-widget:not(.elementor-align-right) .elementor-icon-list-item:after {
  left: 0; }

.elementor-widget:not(.elementor-align-left) .elementor-icon-list-item:after {
  right: 0; }

@media (max-width: 1024px) {
  .elementor-widget.elementor-tablet-align-center .elementor-icon-list-items {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .elementor-widget.elementor-tablet-align-center .elementor-icon-list-item, .elementor-widget.elementor-tablet-align-center .elementor-icon-list-item a {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .elementor-widget.elementor-tablet-align-center .elementor-icon-list-item:after {
    margin: auto; }
  .elementor-widget.elementor-tablet-align-left .elementor-icon-list-items {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
  .elementor-widget.elementor-tablet-align-left .elementor-icon-list-item, .elementor-widget.elementor-tablet-align-left .elementor-icon-list-item a {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    text-align: left; }
  .elementor-widget.elementor-tablet-align-right .elementor-icon-list-items {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
  .elementor-widget.elementor-tablet-align-right .elementor-icon-list-item, .elementor-widget.elementor-tablet-align-right .elementor-icon-list-item a {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    text-align: right; }
  .elementor-widget:not(.elementor-tablet-align-right) .elementor-icon-list-item:after {
    left: 0; }
  .elementor-widget:not(.elementor-tablet-align-left) .elementor-icon-list-item:after {
    right: 0; } }

@media (max-width: 767px) {
  .elementor-widget.elementor-mobile-align-center .elementor-icon-list-items {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .elementor-widget.elementor-mobile-align-center .elementor-icon-list-item, .elementor-widget.elementor-mobile-align-center .elementor-icon-list-item a {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .elementor-widget.elementor-mobile-align-center .elementor-icon-list-item:after {
    margin: auto; }
  .elementor-widget.elementor-mobile-align-left .elementor-icon-list-items {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
  .elementor-widget.elementor-mobile-align-left .elementor-icon-list-item, .elementor-widget.elementor-mobile-align-left .elementor-icon-list-item a {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    text-align: left; }
  .elementor-widget.elementor-mobile-align-right .elementor-icon-list-items {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
  .elementor-widget.elementor-mobile-align-right .elementor-icon-list-item, .elementor-widget.elementor-mobile-align-right .elementor-icon-list-item a {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    text-align: right; }
  .elementor-widget:not(.elementor-mobile-align-right) .elementor-icon-list-item:after {
    left: 0; }
  .elementor-widget:not(.elementor-mobile-align-left) .elementor-icon-list-item:after {
    right: 0; } }

.elementor-widget-image {
  text-align: center; }
  .elementor-widget-image a {
    display: inline-block; }
    .elementor-widget-image a img[src$=".svg"] {
      width: 48px; }
  .elementor-widget-image img {
    vertical-align: middle;
    display: inline-block; }

.elementor-widget-image-box .elementor-image-box-content {
  width: 100%; }

@media (min-width: 768px) {
  .elementor-widget-image-box.elementor-position-left .elementor-image-box-wrapper, .elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper {
    text-align: right;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .elementor-widget-image-box.elementor-position-left .elementor-image-box-wrapper {
    text-align: left;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row; }
  .elementor-widget-image-box.elementor-position-top .elementor-image-box-img {
    margin: auto; }
  .elementor-widget-image-box.elementor-vertical-align-top .elementor-image-box-wrapper {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start; }
  .elementor-widget-image-box.elementor-vertical-align-middle .elementor-image-box-wrapper {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .elementor-widget-image-box.elementor-vertical-align-bottom .elementor-image-box-wrapper {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end; } }

@media (max-width: 767px) {
  .elementor-widget-image-box .elementor-image-box-img {
    margin-left: auto !important;
    margin-right: auto !important;
    margin-bottom: 15px; } }

.elementor-widget-image-box .elementor-image-box-img {
  display: inline-block; }

.elementor-widget-image-box .elementor-image-box-title a {
  color: inherit; }

.elementor-widget-image-box .elementor-image-box-wrapper {
  text-align: center; }

.elementor-widget-image-box .elementor-image-box-description {
  margin: 0; }

.elementor-widget-image-carousel .swiper-container {
  position: static; }
  .elementor-widget-image-carousel .swiper-container .swiper-slide figure {
    line-height: inherit; }

.elementor-widget-image-carousel .swiper-slide {
  text-align: center; }

.elementor-image-carousel-wrapper:not(.swiper-container-initialized) .swiper-slide {
  max-width: calc(100% / var(--e-image-carousel-slides-to-show, 3)); }

body.elementor-page .elementor-widget-menu-anchor {
  margin-bottom: 0; }

.elementor-widget-progress {
  text-align: left; }

.elementor-progress-wrapper {
  position: relative;
  background-color: #eeeeee;
  color: #ffffff;
  height: 100%;
  -webkit-border-radius: 2px;
          border-radius: 2px; }

.elementor-progress-bar {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background-color: #818a91;
  width: 0;
  font-size: 11px;
  height: 30px;
  line-height: 30px;
  -webkit-border-radius: 2px;
          border-radius: 2px;
  -webkit-transition: width 1s ease-in-out;
  -o-transition: width 1s ease-in-out;
  transition: width 1s ease-in-out; }

.elementor-progress-text {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  white-space: nowrap;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  overflow: hidden;
  padding-left: 15px; }

.elementor-progress-percentage {
  padding-right: 15px; }

.elementor-widget-progress .elementor-progress-wrapper.progress-info .elementor-progress-bar {
  background-color: #5bc0de; }

.elementor-widget-progress .elementor-progress-wrapper.progress-success .elementor-progress-bar {
  background-color: #5cb85c; }

.elementor-widget-progress .elementor-progress-wrapper.progress-warning .elementor-progress-bar {
  background-color: #f0ad4e; }

.elementor-widget-progress .elementor-progress-wrapper.progress-danger .elementor-progress-bar {
  background-color: #d9534f; }

.elementor-progress .elementor-title {
  display: block; }

@media (max-width: 767px) {
  .elementor-progress-text {
    padding-left: 10px; } }

.elementor-widget-social-icons {
  /*TODO: This Grid-0 needs to be removed after PRO is Updated */ }
  .elementor-widget-social-icons.elementor-grid-0 .elementor-widget-container, .elementor-widget-social-icons.elementor-grid-tablet-0 .elementor-widget-container, .elementor-widget-social-icons.elementor-grid-mobile-0 .elementor-widget-container {
    line-height: 1;
    font-size: 0; }
  .elementor-widget-social-icons:not(.elementor-grid-0):not(.elementor-grid-tablet-0):not(.elementor-grid-mobile-0) .elementor-grid {
    display: inline-grid; }
  .elementor-widget-social-icons .elementor-grid {
    grid-column-gap: var(--grid-column-gap, 5px);
    grid-row-gap: var(--grid-row-gap, 5px);
    grid-template-columns: var(--grid-template-columns);
    -webkit-box-pack: var(--justify-content, center);
        -ms-flex-pack: var(--justify-content, center);
            justify-content: var(--justify-content, center);
    justify-items: var(--justify-content, center); }

.elementor-icon.elementor-social-icon {
  font-size: var(--icon-size, 25px);
  line-height: var(--icon-size, 25px);
  width: calc(var(--icon-size, 25px) + (2 * var(--icon-padding, 0.5em)));
  height: calc(var(--icon-size, 25px) + (2 * var(--icon-padding, 0.5em))); }

.elementor-social-icon {
  --e-social-icon-icon-color: #fff;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  background-color: #818a91;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  cursor: pointer; }
  .elementor-social-icon i {
    color: var(--e-social-icon-icon-color); }
  .elementor-social-icon svg {
    fill: var(--e-social-icon-icon-color); }
  .elementor-social-icon:last-child {
    margin: 0; }
  .elementor-social-icon:hover {
    opacity: .9;
    color: white; }
  .elementor-social-icon-android {
    background-color: #A4C639; }
  .elementor-social-icon-apple {
    background-color: #999999; }
  .elementor-social-icon-behance {
    background-color: #1769ff; }
  .elementor-social-icon-bitbucket {
    background-color: #205081; }
  .elementor-social-icon-codepen {
    background-color: #000000; }
  .elementor-social-icon-delicious {
    background-color: #3399ff; }
  .elementor-social-icon-deviantart {
    background-color: #05cc47; }
  .elementor-social-icon-digg {
    background-color: #005be2; }
  .elementor-social-icon-dribbble {
    background-color: #ea4c89; }
  .elementor-social-icon-elementor {
    background-color: #D30C5C; }
  .elementor-social-icon-envelope {
    background-color: #ea4335; }
  .elementor-social-icon-facebook, .elementor-social-icon-facebook-f {
    background-color: #3b5998; }
  .elementor-social-icon-flickr {
    background-color: #0063dc; }
  .elementor-social-icon-foursquare {
    background-color: #2d5be3; }
  .elementor-social-icon-freecodecamp, .elementor-social-icon-free-code-camp {
    background-color: #006400; }
  .elementor-social-icon-github {
    background-color: #333333; }
  .elementor-social-icon-gitlab {
    background-color: #e24329; }
  .elementor-social-icon-globe {
    background-color: #818a91; }
  .elementor-social-icon-google-plus, .elementor-social-icon-google-plus-g {
    background-color: #dd4b39; }
  .elementor-social-icon-houzz {
    background-color: #7ac142; }
  .elementor-social-icon-instagram {
    background-color: #262626; }
  .elementor-social-icon-jsfiddle {
    background-color: #487AA2; }
  .elementor-social-icon-link {
    background-color: #818a91; }
  .elementor-social-icon-linkedin, .elementor-social-icon-linkedin-in {
    background-color: #0077b5; }
  .elementor-social-icon-medium {
    background-color: #00ab6b; }
  .elementor-social-icon-meetup {
    background-color: #ec1c40; }
  .elementor-social-icon-mixcloud {
    background-color: #273a4b; }
  .elementor-social-icon-odnoklassniki {
    background-color: #F4731C; }
  .elementor-social-icon-pinterest {
    background-color: #bd081c; }
  .elementor-social-icon-product-hunt {
    background-color: #da552f; }
  .elementor-social-icon-reddit {
    background-color: #ff4500; }
  .elementor-social-icon-rss {
    background-color: #f26522; }
  .elementor-social-icon-shopping-cart {
    background-color: #4CAF50; }
  .elementor-social-icon-skype {
    background-color: #00AFF0; }
  .elementor-social-icon-slideshare {
    background-color: #0077b5; }
  .elementor-social-icon-snapchat {
    background-color: #fffc00; }
  .elementor-social-icon-soundcloud {
    background-color: #ff8800; }
  .elementor-social-icon-spotify {
    background-color: #2ebd59; }
  .elementor-social-icon-stack-overflow {
    background-color: #fe7a15; }
  .elementor-social-icon-steam {
    background-color: #00adee; }
  .elementor-social-icon-stumbleupon {
    background-color: #EB4924; }
  .elementor-social-icon-telegram {
    background-color: #2CA5E0; }
  .elementor-social-icon-thumb-tack {
    background-color: #1aa1d8; }
  .elementor-social-icon-tripadvisor {
    background-color: #589442; }
  .elementor-social-icon-tumblr {
    background-color: #35465c; }
  .elementor-social-icon-twitch {
    background-color: #6441A5; }
  .elementor-social-icon-twitter {
    background-color: #1DA1F2; }
  .elementor-social-icon-viber {
    background-color: #665cac; }
  .elementor-social-icon-vimeo {
    background-color: #1ab7ea; }
  .elementor-social-icon-vk {
    background-color: #45668e; }
  .elementor-social-icon-weibo {
    background-color: #DD2430; }
  .elementor-social-icon-weixin {
    background-color: #31A918; }
  .elementor-social-icon-whatsapp {
    background-color: #25d366; }
  .elementor-social-icon-wordpress {
    background-color: #21759b; }
  .elementor-social-icon-xing {
    background-color: #026466; }
  .elementor-social-icon-yelp {
    background-color: #af0606; }
  .elementor-social-icon-youtube {
    background-color: #cd201f; }
  .elementor-social-icon-500px {
    background-color: #0099e5; }

.elementor-shape-rounded .elementor-icon.elementor-social-icon {
  -webkit-border-radius: 10%;
          border-radius: 10%; }

.elementor-shape-circle .elementor-icon.elementor-social-icon {
  -webkit-border-radius: 50%;
          border-radius: 50%; }

.elementor-star-rating {
  color: #CCD6DF;
  font-family: eicons;
  display: inline-block; }
  .elementor-star-rating i {
    display: inline-block;
    position: relative;
    font-style: normal;
    cursor: default; }
    .elementor-star-rating i:before {
      content: '\e934';
      display: block;
      font-size: inherit;
      font-family: inherit;
      position: absolute;
      overflow: hidden;
      color: #f0ad4e;
      top: 0;
      left: 0; }
  .elementor-star-rating .elementor-star-empty:before {
    content: none; }
  .elementor-star-rating .elementor-star-1:before {
    width: 10%; }
  .elementor-star-rating .elementor-star-2:before {
    width: 20%; }
  .elementor-star-rating .elementor-star-3:before {
    width: 30%; }
  .elementor-star-rating .elementor-star-4:before {
    width: 40%; }
  .elementor-star-rating .elementor-star-5:before {
    width: 50%; }
  .elementor-star-rating .elementor-star-6:before {
    width: 60%; }
  .elementor-star-rating .elementor-star-7:before {
    width: 70%; }
  .elementor-star-rating .elementor-star-8:before {
    width: 80%; }
  .elementor-star-rating .elementor-star-9:before {
    width: 90%; }
  .elementor-star-rating__wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .elementor-star-rating__title {
    margin-right: 10px; }

.elementor-star-rating--align-right .elementor-star-rating__wrapper {
  text-align: right;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.elementor-star-rating--align-left .elementor-star-rating__wrapper {
  text-align: left;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start; }

.elementor-star-rating--align-center .elementor-star-rating__wrapper {
  text-align: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.elementor-star-rating--align-justify .elementor-star-rating__title {
  margin-right: auto; }

@media (max-width: 1024px) {
  .elementor-star-rating-tablet--align-right .elementor-star-rating__wrapper {
    text-align: right;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
  .elementor-star-rating-tablet--align-left .elementor-star-rating__wrapper {
    text-align: left;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
  .elementor-star-rating-tablet--align-center .elementor-star-rating__wrapper {
    text-align: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .elementor-star-rating-tablet--align-justify .elementor-star-rating__title {
    margin-right: auto; } }

@media (max-width: 767px) {
  .elementor-star-rating-mobile--align-right .elementor-star-rating__wrapper {
    text-align: right;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
  .elementor-star-rating-mobile--align-left .elementor-star-rating__wrapper {
    text-align: left;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
  .elementor-star-rating-mobile--align-center .elementor-star-rating__wrapper {
    text-align: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .elementor-star-rating-mobile--align-justify .elementor-star-rating__title {
    margin-right: auto; } }

.last-star {
  letter-spacing: 0; }

.elementor--star-style-star_unicode .elementor-star-rating {
  font-family: 'Arial', 'Helvetica', sans-serif; }
  .elementor--star-style-star_unicode .elementor-star-rating i:not(.elementor-star-empty):before {
    content: '\002605'; }

.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-wrapper {
  width: 25%;
  -ms-flex-negative: 0;
      flex-shrink: 0; }

.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active {
  border-right-style: none; }
  .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:before, .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:after {
    height: 999em;
    width: 0;
    right: 0;
    border-right-style: solid; }
  .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:before {
    top: 0;
    -webkit-transform: translateY(-100%);
        -ms-transform: translateY(-100%);
            transform: translateY(-100%); }
  .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:after {
    top: 100%; }

.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title {
  display: table-cell; }
  .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active {
    border-bottom-style: none; }
    .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:before, .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:after {
      bottom: 0;
      height: 0;
      width: 999em;
      border-bottom-style: solid; }
    .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:before {
      right: 100%; }
    .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:after {
      left: 100%; }

.elementor-widget-tabs .elementor-tab-title,
.elementor-widget-tabs .elementor-tab-title:before,
.elementor-widget-tabs .elementor-tab-title:after,
.elementor-widget-tabs .elementor-tab-content,
.elementor-widget-tabs .elementor-tabs-content-wrapper {
  border: 1px none #D4D4D4; }

.elementor-widget-tabs .elementor-tabs {
  text-align: left; }

.elementor-widget-tabs .elementor-tabs-wrapper {
  overflow: hidden; }

.elementor-widget-tabs .elementor-tab-title {
  cursor: pointer;
  outline: var(--focus-outline, none); }

.elementor-widget-tabs .elementor-tab-desktop-title {
  position: relative;
  padding: 20px 25px;
  font-weight: bold;
  line-height: 1;
  border: solid transparent; }
  .elementor-widget-tabs .elementor-tab-desktop-title.elementor-active {
    border-color: #D4D4D4; }
    .elementor-widget-tabs .elementor-tab-desktop-title.elementor-active:before, .elementor-widget-tabs .elementor-tab-desktop-title.elementor-active:after {
      display: block;
      content: '';
      position: absolute; }

.elementor-widget-tabs .elementor-tab-mobile-title {
  padding: 10px 10px;
  cursor: pointer; }

.elementor-widget-tabs .elementor-tab-content {
  padding: 20px;
  display: none; }

@media (max-width: 767px) {
  .elementor-tabs .elementor-tab-title,
  .elementor-tabs .elementor-tab-content {
    border-style: solid;
    border-bottom-style: none; }
  .elementor-tabs .elementor-tabs-wrapper {
    display: none; }
  .elementor-tabs .elementor-tabs-content-wrapper {
    border-bottom-style: solid; }
  .elementor-tabs .elementor-tab-content {
    padding: 10px; } }

@media (min-width: 768px) {
  .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
  .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-content-wrapper {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    border-style: solid;
    border-left-style: none; }
  .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-content {
    border-style: solid;
    border-top-style: none; }
  .elementor-widget-tabs.elementor-tabs-alignment-center .elementor-tabs-wrapper, .elementor-widget-tabs.elementor-tabs-alignment-end .elementor-tabs-wrapper, .elementor-widget-tabs.elementor-tabs-alignment-stretch .elementor-tabs-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .elementor-widget-tabs.elementor-tabs-alignment-center .elementor-tabs-wrapper {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .elementor-widget-tabs.elementor-tabs-alignment-end .elementor-tabs-wrapper {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
  .elementor-widget-tabs.elementor-tabs-alignment-stretch.elementor-tabs-view-horizontal .elementor-tab-title {
    width: 100%; }
  .elementor-widget-tabs.elementor-tabs-alignment-stretch.elementor-tabs-view-vertical .elementor-tab-title {
    height: 100%; }
  .elementor-tabs .elementor-tab-mobile-title {
    display: none; } }

.elementor-testimonial-wrapper {
  overflow: hidden;
  text-align: center; }
  .elementor-testimonial-wrapper .elementor-testimonial-content {
    font-size: 1.3em;
    margin-bottom: 20px; }
  .elementor-testimonial-wrapper .elementor-testimonial-name {
    line-height: 1.5;
    display: block; }
  .elementor-testimonial-wrapper .elementor-testimonial-job {
    font-size: 0.85em;
    display: block; }
  .elementor-testimonial-wrapper .elementor-testimonial-meta {
    width: 100%;
    line-height: 1; }
    .elementor-testimonial-wrapper .elementor-testimonial-meta-inner {
      display: inline-block; }
    .elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-details,
    .elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-image {
      display: table-cell;
      vertical-align: middle; }
    .elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-image img {
      width: 60px;
      height: 60px;
      -webkit-border-radius: 50%;
              border-radius: 50%;
      -o-object-fit: cover;
         object-fit: cover;
      max-width: none; }
    .elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-aside .elementor-testimonial-image {
      padding-right: 15px; }
    .elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-aside .elementor-testimonial-details {
      text-align: left; }
    .elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-details,
    .elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-image {
      display: block; }
    .elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-image {
      margin-bottom: 20px; }

.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap {
  background-color: #818a91;
  color: #fff; }

.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap {
  color: #818a91;
  border: 3px solid;
  background-color: transparent; }

.elementor-widget-text-editor:not(.elementor-drop-cap-view-default) .elementor-drop-cap {
  margin-top: 8px; }
  .elementor-widget-text-editor:not(.elementor-drop-cap-view-default) .elementor-drop-cap-letter {
    width: 1em;
    height: 1em; }

.elementor-widget-text-editor .elementor-drop-cap {
  float: left;
  text-align: center;
  line-height: 1;
  font-size: 50px; }
  .elementor-widget-text-editor .elementor-drop-cap-letter {
    display: inline-block; }

.elementor-toggle {
  text-align: left; }
  .elementor-toggle .elementor-tab-title {
    font-weight: bold;
    line-height: 1;
    margin: 0;
    padding: 15px;
    border-bottom: 1px solid #D4D4D4;
    cursor: pointer;
    outline: none; }
    .elementor-toggle .elementor-tab-title .elementor-toggle-icon {
      display: inline-block;
      width: 1em; }
      .elementor-toggle .elementor-tab-title .elementor-toggle-icon svg {
        -webkit-margin-start: -5px;
                margin-inline-start: -5px;
        width: 1em;
        height: 1em; }
      .elementor-toggle .elementor-tab-title .elementor-toggle-icon.elementor-toggle-icon-right {
        float: right;
        text-align: right; }
      .elementor-toggle .elementor-tab-title .elementor-toggle-icon.elementor-toggle-icon-left {
        float: left;
        text-align: left; }
      .elementor-toggle .elementor-tab-title .elementor-toggle-icon .elementor-toggle-icon-closed {
        display: block; }
      .elementor-toggle .elementor-tab-title .elementor-toggle-icon .elementor-toggle-icon-opened {
        display: none; }
    .elementor-toggle .elementor-tab-title.elementor-active {
      border-bottom: none; }
      .elementor-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon-closed {
        display: none; }
      .elementor-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon-opened {
        display: block; }
  .elementor-toggle .elementor-tab-content {
    padding: 15px;
    border-bottom: 1px solid #D4D4D4;
    display: none; }

@media (max-width: 767px) {
  .elementor-toggle .elementor-tab-title {
    padding: 12px; }
  .elementor-toggle .elementor-tab-content {
    padding: 12px 10px; } }

.elementor-widget-video .elementor-widget-container {
  overflow: hidden;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0); }

.elementor-widget-video .elementor-open-inline .elementor-custom-embed-image-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-background-size: cover;
          background-size: cover;
  background-position: 50%; }

.elementor-widget-video .elementor-custom-embed-image-overlay {
  cursor: pointer;
  text-align: center; }
  .elementor-widget-video .elementor-custom-embed-image-overlay:hover .elementor-custom-embed-play i {
    opacity: 1; }
  .elementor-widget-video .elementor-custom-embed-image-overlay img {
    display: block;
    width: 100%; }

.elementor-widget-video .e-hosted-video .elementor-video {
  -o-object-fit: cover;
     object-fit: cover; }
/*# sourceMappingURL=frontend.css.map */assets/css/admin.css000064400000130574151327220410010447 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-button {
  font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
  font-weight: 500;
  text-transform: uppercase;
  outline: none;
  border: none;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  -webkit-transition-property: background, color, opacity, -webkit-box-shadow;
  transition-property: background, color, opacity, -webkit-box-shadow;
  -o-transition-property: background, color, box-shadow, opacity;
  transition-property: background, color, box-shadow, opacity;
  transition-property: background, color, box-shadow, opacity, -webkit-box-shadow;
  -webkit-transition-duration: .3s;
       -o-transition-duration: .3s;
          transition-duration: .3s; }
  .elementor-button:hover {
    border: none; }
  .elementor-button:not([disabled]) {
    cursor: pointer; }
  .elementor-button:not(.elementor-button-state) .elementor-state-icon {
    display: none; }
  .elementor-button.elementor-button-success {
    color: #fff; }
    .elementor-button.elementor-button-success[disabled] {
      background-color: #c2cbd2; }
    .elementor-button.elementor-button-success:not([disabled]) {
      background-color: #39b54a; }
      .elementor-button.elementor-button-success:not([disabled]):hover {
        opacity: 0.85;
        -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
                box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); }
      .elementor-button.elementor-button-success:not([disabled]):active {
        -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
                box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); }
  .elementor-button.elementor-button-warning {
    background-color: #a4afb7;
    color: #fff; }
    .elementor-button.elementor-button-warning[disabled] {
      background-color: #c2cbd2; }
    .elementor-button.elementor-button-warning:not([disabled]):hover {
      background-color: #b01b1b;
      opacity: 0.85;
      -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
              box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); }
    .elementor-button.elementor-button-warning:not([disabled]):active {
      -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
              box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); }
  .elementor-button.elementor-button-danger {
    background-color: #d72b3f;
    color: #fff; }
    .elementor-button.elementor-button-danger[disabled] {
      background-color: #c2cbd2; }
    .elementor-button.elementor-button-danger:not([disabled]):hover {
      opacity: 0.85;
      -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
              box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); }
    .elementor-button.elementor-button-danger:not([disabled]):active {
      -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
              box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); }
  .elementor-button.elementor-edit-template {
    display: inline-block;
    margin-top: 15px;
    color: #fff; }
  .elementor-button.elementor-button-default {
    background-color: #a4afb7;
    color: #fff;
    font-size: 11px;
    padding: 7px 21px; }
    .elementor-button.elementor-button-default:hover {
      background-color: #6d7882;
      -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
              box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); }
    .elementor-button.elementor-button-default:active {
      -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
              box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); }
    .elementor-button.elementor-button-default:visited {
      color: #fff; }
  .elementor-button.elementor-button-go-pro {
    background-color: #93003c; }
  .elementor-button i {
    margin-right: 10px; }

#adminmenu #toplevel_page_elementor div.wp-menu-image:before {
  content: "\e813";
  font-family: eicons;
  font-size: 18px;
  margin-top: 1px; }

#adminmenu #toplevel_page_elementor a[href="admin.php?page=go_elementor_pro"] {
  font-weight: 700; }
  #adminmenu #toplevel_page_elementor a[href="admin.php?page=go_elementor_pro"]:hover {
    color: #e0005b; }

#adminmenu #toplevel_page_elementor .dashicons.dashicons-star-filled {
  height: auto; }

#adminmenu #menu-posts-elementor_library .wp-menu-image:before {
  content: '\e8ff';
  font-family: eicons;
  font-size: 18px; }

body.admin-color-fresh #adminmenu #toplevel_page_elementor a[href="admin.php?page=go_elementor_pro"] {
  color: #c60051; }

.elementor-plugins-gopro {
  color: #93003c;
  text-shadow: 1px 1px 1px #eee;
  font-weight: bold; }

#elementor-switch-mode {
  margin: 15px 0; }

#elementor-switch-mode-button,
#elementor-editor-button {
  outline: none;
  cursor: pointer; }
  #elementor-switch-mode-button i,
  #elementor-editor-button i {
    margin-right: 3px;
    font-size: 125%;
    font-style: normal; }

body.elementor-editor-active .elementor-switch-mode-off {
  display: none; }

body.elementor-editor-active #elementor-switch-mode-button {
  background-color: #f7f7f7;
  color: #555;
  border-color: #ccc;
  -webkit-box-shadow: 0 1px 0 #ccc !important;
          box-shadow: 0 1px 0 #ccc !important;
  text-shadow: unset; }
  body.elementor-editor-active #elementor-switch-mode-button:hover {
    background-color: #e9e9e9; }
  body.elementor-editor-active #elementor-switch-mode-button:active {
    -webkit-box-shadow: inset 0 1px 0 #ccc;
            box-shadow: inset 0 1px 0 #ccc;
    -webkit-transform: translateY(1px);
        -ms-transform: translateY(1px);
            transform: translateY(1px); }

body.elementor-editor-active #postdivrich {
  display: none !important; }

body.elementor-editor-active .editor-block-list__layout,
body.elementor-editor-active .block-editor-block-list__layout {
  display: none; }

body.elementor-editor-inactive .elementor-switch-mode-on {
  display: none; }

body.elementor-editor-inactive #elementor-editor {
  display: none; }

body.elementor-editor-active .editor-block-list__layout {
  display: none; }

body.elementor-editor-active .edit-post-layout__content .edit-post-visual-editor {
  -ms-flex-preferred-size: auto;
      flex-basis: auto; }

body.elementor-editor-active #elementor-editor {
  margin-bottom: 50px; }

body.elementor-editor-active .edit-post-text-editor__body .editor-post-text-editor {
  display: none; }

body .block-editor #elementor-switch-mode {
  margin: 0 15px; }
  body .block-editor #elementor-switch-mode .button {
    margin: 2px;
    height: 33px;
    font-size: 13px;
    line-height: 1; }
    body .block-editor #elementor-switch-mode .button i {
      padding-right: 5px; }

.elementor-button {
  font-size: 13px;
  text-decoration: none;
  padding: 15px 40px; }

#elementor-editor {
  height: 300px;
  width: 100%;
  -webkit-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all 0.5s ease; }
  #elementor-editor .elementor-loader-wrapper {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    width: 300px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  #elementor-editor .elementor-loader {
    -webkit-border-radius: 50%;
            border-radius: 50%;
    padding: 40px;
    height: 150px;
    width: 150px;
    background-color: rgba(255, 255, 255, 0.9);
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    -webkit-box-shadow: 2px 2px 20px 4px rgba(0, 0, 0, 0.02);
            box-shadow: 2px 2px 20px 4px rgba(0, 0, 0, 0.02); }
  #elementor-editor .elementor-loader-boxes {
    height: 100%;
    width: 100%;
    position: relative; }
  #elementor-editor .elementor-loader-box {
    position: absolute;
    background-color: #d5dadf;
    -webkit-animation: load 1.8s linear infinite;
            animation: load 1.8s linear infinite; }
    #elementor-editor .elementor-loader-box:nth-of-type(1) {
      width: 20%;
      height: 100%;
      left: 0;
      top: 0; }
    #elementor-editor .elementor-loader-box:not(:nth-of-type(1)) {
      right: 0;
      height: 20%;
      width: 60%; }
    #elementor-editor .elementor-loader-box:nth-of-type(2) {
      top: 0;
      -webkit-animation-delay: -0.45s;
              animation-delay: -0.45s; }
    #elementor-editor .elementor-loader-box:nth-of-type(3) {
      top: 40%;
      -webkit-animation-delay: -0.9s;
              animation-delay: -0.9s; }
    #elementor-editor .elementor-loader-box:nth-of-type(4) {
      bottom: 0;
      -webkit-animation-delay: -1.35s;
              animation-delay: -1.35s; }
  #elementor-editor .elementor-loading-title {
    color: #a4afb7;
    text-align: center;
    text-transform: uppercase;
    margin-top: 30px;
    letter-spacing: 7px;
    text-indent: 7px;
    font-size: 10px;
    width: 100%; }

#elementor-go-to-edit-page-link {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid #DDD;
  background-color: #F7F7F7;
  text-decoration: none;
  position: relative;
  font-family: Sans-serif; }
  #elementor-go-to-edit-page-link:hover {
    background-color: #ffffff; }
  #elementor-go-to-edit-page-link:focus {
    -webkit-box-shadow: none;
            box-shadow: none; }
  #elementor-go-to-edit-page-link.elementor-animate #elementor-editor-button {
    display: none; }
  #elementor-go-to-edit-page-link:not(.elementor-animate) .elementor-loader-wrapper {
    display: none; }

.elementor-button-spinner:before {
  font: normal 20px/.5 dashicons;
  speak: none;
  display: inline-block;
  padding: 0;
  top: 8px;
  left: -4px;
  position: relative;
  vertical-align: top;
  content: "\f463"; }

.elementor-button-spinner.loading:before {
  -webkit-animation: rotation 1s infinite linear;
  animation: rotation 1s infinite linear; }

.elementor-button-spinner.success:before {
  content: "\f147";
  color: #46b450; }

.elementor-blank_state {
  padding: 5em 0;
  margin: auto;
  max-width: 520px;
  text-align: center;
  color: #6d7882;
  font-family: Roboto, sans-serif; }
  .elementor-blank_state i {
    font-size: 50px;
    color: #a4afb7; }
  .elementor-blank_state h2 {
    font-size: 32px;
    font-weight: 300;
    color: inherit;
    margin: 40px 0 10px;
    line-height: 1.2; }
  .elementor-blank_state p {
    font-size: 16px;
    font-weight: normal;
    color: #a4afb7;
    margin-bottom: 40px; }
  .elementor-blank_state .elementor-button {
    display: inline-block; }

#available-widgets [class*="elementor-template"] .widget-title:before {
  content: "\e813";
  font-family: eicons;
  font-size: 17px; }

.elementor-settings-form-page {
  padding-top: 30px; }
  .elementor-settings-form-page:not(.elementor-active) {
    display: none; }

._elementor_settings_update_time {
  display: none; }

#confirm_fa_migration_admin_modal .dialog-confirm-ok {
  color: #6d7882; }

body.post-type-attachment table.media .column-title .media-icon img[src$=".svg"] {
  width: 100%; }

.e-major-update-warning {
  margin-bottom: 5px;
  max-width: 1000px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  .e-major-update-warning__separator {
    margin: 15px -12px; }
  .e-major-update-warning__icon {
    font-size: 17px;
    margin-right: 9px;
    margin-left: 2px; }
  .e-major-update-warning__title {
    font-weight: 600;
    margin-bottom: 10px; }
  .e-major-update-warning + p {
    display: none; }

.notice-success .e-major-update-warning__separator {
  border: 1px solid #46b450; }

.notice-success .e-major-update-warning__icon {
  color: #79ba49; }

.notice-warning .e-major-update-warning__separator {
  border: 1px solid #ffb900; }

.notice-warning .e-major-update-warning__icon {
  color: #f56e28; }

.plugins table.e-compatibility-update-table tr {
  background: transparent; }
  .plugins table.e-compatibility-update-table tr th {
    font-weight: 600; }
  .plugins table.e-compatibility-update-table tr th, .plugins table.e-compatibility-update-table tr td {
    min-width: 250px;
    font-size: 13px;
    background: transparent;
    -webkit-box-shadow: none;
            box-shadow: none;
    border: none;
    padding-top: 5px;
    padding-bottom: 5px;
    padding-right: 15px;
    padding-left: 0; }

:root {
  --e-focus-color:  rgba(0, 115, 170, .4);
  --e-context-primary-color: #0073aa;
  --e-context-primary-color-dark: #005177;
  --e-context-primary-tint-4: rgba(0, 115, 170, 0.4);
  --e-context-primary-tint-1: rgba(0, 115, 170, 0.04);
  --e-context-success-color: #39b54a;
  --e-context-success-color-dark: #2d8e3a;
  --e-context-success-tint-4: rgba(57, 181, 74, 0.4);
  --e-context-success-tint-1: rgba(57, 181, 74, 0.04);
  --e-context-info-color: #71d7f7;
  --e-context-info-color-dark: #41c9f4;
  --e-context-info-tint-4: rgba(113, 215, 247, 0.4);
  --e-context-info-tint-1: rgba(113, 215, 247, 0.04);
  --e-context-warning-color: #fcb92c;
  --e-context-warning-color-dark: #f2a503;
  --e-context-warning-tint-4: rgba(252, 185, 44, 0.4);
  --e-context-warning-tint-1: rgba(252, 185, 44, 0.04);
  --e-context-error-color: #d72b3f;
  --e-context-error-color-dark: #ae2131;
  --e-context-error-tint-4: rgba(215, 43, 63, 0.4);
  --e-context-error-tint-1: rgba(215, 43, 63, 0.04);
  --e-context-cta-color: #93003c;
  --e-context-cta-color-dark: #600027;
  --e-context-cta-tint-4: rgba(147, 0, 60, 0.4);
  --e-context-cta-tint-1: rgba(147, 0, 60, 0.04); }

.e-getting-started {
  max-width: 900px;
  padding: 2.5em 0;
  margin: auto;
  text-align: center; }
  .e-getting-started__header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
            box-shadow: 0 0 8px rgba(0, 0, 0, 0.1); }
    .e-getting-started__header .e-logo-wrapper {
      font-size: 10px;
      margin-right: 10px; }
  .e-getting-started__title {
    padding: 0 15px;
    font-weight: 600;
    text-transform: uppercase;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .e-getting-started__skip {
    border-left: 1px solid #eee;
    font-size: 16px;
    color: inherit; }
    .e-getting-started__skip i {
      padding: 15px; }
  .e-getting-started__content {
    padding: 50px; }
    .e-getting-started__content h2 {
      font-size: 2em;
      margin-top: 0; }
  .e-getting-started__content--narrow {
    max-width: 500px;
    margin: auto; }
  .e-getting-started__video {
    margin: 40px 0 60px; }
    .e-getting-started__video iframe {
      -webkit-box-shadow: 10px 10px 20px rgba(0, 0, 0, 0.15);
              box-shadow: 10px 10px 20px rgba(0, 0, 0, 0.15); }
  .e-getting-started__actions .button-primary {
    margin-right: 20px; }

:root {
  --e-button-padding-y: 0.4375rem;
  --e-button-padding-x: 0.75rem;
  --e-button-font-size: 0.8125rem;
  --e-button-font-weight: 500;
  --e-button-line-height: 0.9375rem;
  --e-button-border-radius: 3px;
  --e-button-context-color: var(--e-context-primary-color);
  --e-button-context-color-dark: var(--e-context-primary-color-dark);
  --e-button-context-tint: var(--e-context-primary-tint-1); }

.e-button {
  display: inline-block;
  font-weight: var(--e-button-font-weight);
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  color: #ffffff;
  border: 0;
  text-decoration: none;
  background: var(--e-button-context-color);
  padding: var(--e-button-padding-y) var(--e-button-padding-x);
  font-size: var(--e-button-font-size);
  line-height: var(--e-button-line-height);
  -webkit-border-radius: var(--e-button-border-radius);
          border-radius: var(--e-button-border-radius);
  -webkit-transition: background-color .15s ease-in-out, -webkit-box-shadow .15s ease-in-out;
  transition: background-color .15s ease-in-out, -webkit-box-shadow .15s ease-in-out;
  -o-transition: background-color .15s ease-in-out, box-shadow .15s ease-in-out;
  transition: background-color .15s ease-in-out, box-shadow .15s ease-in-out;
  transition: background-color .15s ease-in-out, box-shadow .15s ease-in-out, -webkit-box-shadow .15s ease-in-out; }
  .e-button:active, .e-button:hover, .e-button:focus {
    color: #ffffff;
    text-decoration: none;
    background: var(--e-button-context-color-dark); }
  .e-button:focus, .e-button.focus {
    outline: 0;
    -webkit-box-shadow: 0 0 0 2px var(--e-focus-color);
            box-shadow: 0 0 0 2px var(--e-focus-color); }
  .e-button.disabled, .e-button:disabled {
    opacity: 0.5;
    -webkit-box-shadow: none;
            box-shadow: none; }
  .e-button:not(:disabled):not(.disabled) {
    cursor: pointer; }
  .e-button:not(:disabled):not(.disabled):active:focus, .e-button:not(:disabled):not(.disabled).active:focus {
    -webkit-box-shadow: 0 0 0 2px var(--e-focus-color);
            box-shadow: 0 0 0 2px var(--e-focus-color); }
  .e-button--primary {
    --e-button-context-color: var(--e-context-primary-color);
    --e-button-context-color-dark: var(--e-context-primary-color-dark);
    --e-button-context-tint: var(--e-context-primary-tint-1);
    --e-focus-color: var(--e-context-primary-tint-4); }
  .e-button--success {
    --e-button-context-color: var(--e-context-success-color);
    --e-button-context-color-dark: var(--e-context-success-color-dark);
    --e-button-context-tint: var(--e-context-success-tint-1);
    --e-focus-color: var(--e-context-success-tint-4); }
  .e-button--info {
    --e-button-context-color: var(--e-context-info-color);
    --e-button-context-color-dark: var(--e-context-info-color-dark);
    --e-button-context-tint: var(--e-context-info-tint-1);
    --e-focus-color: var(--e-context-info-tint-4); }
  .e-button--warning {
    --e-button-context-color: var(--e-context-warning-color);
    --e-button-context-color-dark: var(--e-context-warning-color-dark);
    --e-button-context-tint: var(--e-context-warning-tint-1);
    --e-focus-color: var(--e-context-warning-tint-4); }
  .e-button--error {
    --e-button-context-color: var(--e-context-error-color);
    --e-button-context-color-dark: var(--e-context-error-color-dark);
    --e-button-context-tint: var(--e-context-error-tint-1);
    --e-focus-color: var(--e-context-error-tint-4); }
  .e-button--cta {
    --e-button-context-color: var(--e-context-cta-color);
    --e-button-context-color-dark: var(--e-context-cta-color-dark);
    --e-button-context-tint: var(--e-context-cta-tint-1);
    --e-focus-color: var(--e-context-cta-tint-4); }
  .e-button.e-button--outline {
    color: var(--e-button-context-color);
    background: none;
    border: 1px solid currentColor; }
    .e-button.e-button--outline:hover, .e-button.e-button--outline:focus {
      color: var(--e-button-context-color-dark);
      background: var(--e-button-context-tint); }
    .e-button.e-button--outline.disabled, .e-button.e-button--outline:disabled {
      color: var(--e-button-context-color-dark);
      background: #818a91; }
  .e-button > i {
    line-height: inherit;
    height: var(--e-button-line-height);
    width: -webkit-min-content;
    width: -moz-min-content;
    width: min-content; }
  .e-button > * + * {
    -webkit-margin-start: .5ch;
            margin-inline-start: .5ch; }
  .e-button--link {
    color: var(--e-button-context-color);
    background-color: transparent; }
    .e-button--link:hover, .e-button--link:focus {
      color: var(--e-button-context-color-dark);
      background: var(--e-button-context-tint); }
    .e-button--link:disabled, .e-button--link.disabled {
      color: #818a91; }

a.e-button.disabled,
fieldset:disabled a.e-button {
  pointer-events: none; }

:root {
  --e-notice-bg: #fff;
  --e-notice-border-color: #ccd0d4;
  --e-notice-context-color: #93003c;
  --e-notice-context-tint: var(--e-context-cta-tint-1);
  --e-notice-box-shadow: 0 1px 4px rgba(0,0,0,.15);
  --e-notice-dismiss-color: #6d7882; }

.e-notice {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
  background: var(--e-notice-bg);
  border: 1px solid var(--e-notice-border-color);
  border-inline-start-width: 4px;
  -webkit-box-shadow: var(--e-notice-box-shadow);
          box-shadow: var(--e-notice-box-shadow);
  margin: 5px 20px 5px 2px; }
  .e-notice.notice {
    padding: 0; }
  .e-notice::before {
    display: block;
    content: '';
    position: absolute;
    left: -4px;
    top: -1px;
    bottom: -1px;
    width: 4px;
    background-color: var(--e-notice-context-color); }
  .e-notice--primary {
    --e-notice-context-color: var(--e-context-primary-color);
    --e-notice-context-color-dark: var(--e-context-primary-color-dark);
    --e-notice-context-tint: var(--e-context-primary-tint-1); }
  .e-notice--success {
    --e-notice-context-color: var(--e-context-success-color);
    --e-notice-context-color-dark: var(--e-context-success-color-dark);
    --e-notice-context-tint: var(--e-context-success-tint-1); }
  .e-notice--info {
    --e-notice-context-color: var(--e-context-info-color);
    --e-notice-context-color-dark: var(--e-context-info-color-dark);
    --e-notice-context-tint: var(--e-context-info-tint-1); }
  .e-notice--warning {
    --e-notice-context-color: var(--e-context-warning-color);
    --e-notice-context-color-dark: var(--e-context-warning-color-dark);
    --e-notice-context-tint: var(--e-context-warning-tint-1); }
  .e-notice--error {
    --e-notice-context-color: var(--e-context-error-color);
    --e-notice-context-color-dark: var(--e-context-error-color-dark);
    --e-notice-context-tint: var(--e-context-error-tint-1); }
  .e-notice--cta {
    --e-notice-context-color: var(--e-context-cta-color);
    --e-notice-context-color-dark: var(--e-context-cta-color-dark);
    --e-notice-context-tint: var(--e-context-cta-tint-1); }
  .e-notice--extended {
    --e-notice-is-extended: 1; }
  .e-notice--dismissible {
    padding-right: 38px; }
  .e-notice__aside {
    overflow: hidden;
    background-color: var(--e-notice-context-tint);
    width: calc(var(--e-notice-is-extended, 0) * 50px);
    text-align: center;
    padding-top: 15px;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0; }
  .e-notice__icon-wrapper {
    display: inline-block;
    font-size: 0.625rem;
    max-height: 1.5rem;
    width: 1.5rem;
    line-height: 1.5rem;
    -webkit-border-radius: 100px;
            border-radius: 100px;
    background: var(--e-notice-context-color);
    color: #fff;
    text-shadow: 0 0 3px var(--e-notice-context-color-dark), 0 0 1px var(--e-notice-context-color-dark), 0 0 1px var(--e-notice-context-color-dark); }
  .e-notice__content {
    padding: 20px; }
  .e-notice__actions {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .e-notice__actions > * + * {
      -webkit-margin-start: 8px;
              margin-inline-start: 8px; }
  .e-notice__dismiss {
    width: 20px;
    height: 20px;
    line-height: 20px;
    font-size: 0.8125rem;
    text-align: center;
    background: none;
    display: block;
    position: absolute;
    top: 0;
    right: 1px;
    border: none;
    margin: 0;
    padding: 9px;
    cursor: pointer;
    font-style: normal; }
    .e-notice__dismiss:before {
      font-family: eicons;
      display: inline-block;
      content: "\e87f";
      color: var(--e-notice-dismiss-color);
      width: 20px;
      -webkit-border-radius: 20px;
              border-radius: 20px;
      speak: none;
      text-align: center;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale; }
    .e-notice__dismiss:hover:before, .e-notice__dismiss:active:before, .e-notice__dismiss:focus:before {
      font-weight: bold; }
    .e-notice__dismiss:focus:before {
      color: #fff;
      background: var(--e-notice-dismiss-color);
      outline: none; }
    .e-notice__dismiss:focus {
      outline: none; }
  .e-notice p {
    line-height: 1.2;
    padding: 0;
    margin: 0; }
    .e-notice p + .e-notice__actions {
      margin-top: 1rem; }
  .e-notice h3 {
    font-size: 1.0625rem;
    line-height: 1.2;
    margin: 0; }
    .e-notice h3 + p {
      margin-top: 8px; }

/*= Elementor Admin Alert
---------------------------------------*/
.elementor-admin-alert {
  padding: 15px;
  border-left: 5px solid transparent;
  position: relative;
  font-size: 12px;
  line-height: 1.5;
  text-align: left; }
  .elementor-admin-alert a {
    color: inherit; }
  .elementor-admin-alert.elementor-alert-info {
    color: #31708f;
    background-color: #d9edf7;
    border-color: #bcdff1; }
  .elementor-admin-alert.elementor-alert-success {
    color: #3c763d;
    background-color: #dff0d8;
    border-color: #cae6be; }
  .elementor-admin-alert.elementor-alert-warning {
    color: #8a6d3b;
    background-color: #fcf8e3;
    border-color: #f9f0c3; }
  .elementor-admin-alert.elementor-alert-danger {
    color: #a94442;
    background-color: #f2dede;
    border-color: #e8c4c4; }

/*= Elementor System Info
---------------------------------------*/
#elementor-system-info {
  padding: 15px; }
  #elementor-system-info .elementor-system-info-section {
    margin-bottom: 10px; }
    #elementor-system-info .elementor-system-info-section > .elementor-system-info-report-name {
      padding-left: 10px;
      border-bottom: 1px solid #e1e1e1; }
    #elementor-system-info .elementor-system-info-section .widefat {
      white-space: pre; }
    #elementor-system-info .elementor-system-info-section .elementor-log-entries {
      white-space: pre-wrap; }
    #elementor-system-info .elementor-system-info-section:not(.elementor-system-info-log) tbody td:first-child {
      width: 300px; }
  #elementor-system-info .elementor-system-info-report-name {
    text-transform: uppercase;
    font-size: 14px;
    margin: 0;
    line-height: 2; }
  #elementor-system-info .elementor-system-info-report-row {
    overflow: hidden;
    padding: 5px 0; }
    #elementor-system-info .elementor-system-info-report-row > * {
      float: left; }
  #elementor-system-info .elementor-system-info-report-field,
  #elementor-system-info .elementor-system-info-field-recommendation {
    padding-left: 10px;
    color: #7F7F7F; }
  #elementor-system-info .elementor-system-info-report-fields {
    padding-left: 20px; }
  #elementor-system-info .elementor-system-info-plugin-name {
    color: #000; }
  #elementor-system-info .elementor-system-info-plugin-properties {
    padding: 10px; }
  #elementor-system-info #elementor-system-info-raw-code {
    width: 100%;
    height: 200px; }
  #elementor-system-info #elementor-system-info-raw-code-label {
    padding: 5px;
    display: block; }
  #elementor-system-info .elementor-warning td:first-child {
    border-left: 3px solid #fcb92c; }
  #elementor-system-info a.box-title-tool {
    font-size: 80%;
    margin-left: 15px;
    color: #818a91; }
    #elementor-system-info a.box-title-tool:hover {
      text-decoration: underline; }
  #elementor-system-info #elementor-usage-recalc {
    font-size: 12px;
    color: #ffffff;
    background-color: #a4afb7;
    padding: 4px 18px 5px 18px;
    -webkit-border-radius: 3px;
            border-radius: 3px; }

@-webkit-keyframes elementor-rotation {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(359deg);
            transform: rotate(359deg); } }

@keyframes elementor-rotation {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(359deg);
            transform: rotate(359deg); } }

#elementor-deactivate-feedback-dialog-wrapper {
  display: none; }

#elementor-deactivate-feedback-modal .dialog-widget-content {
  width: 550px; }

#elementor-deactivate-feedback-modal .dialog-header {
  padding: 18px 15px;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
  text-align: left; }

#elementor-deactivate-feedback-modal .dialog-message {
  padding: 30px 30px 0;
  text-align: left; }

#elementor-deactivate-feedback-modal .elementor-deactivate-feedback-dialog-input {
  float: left;
  margin: 0 15px 0 0;
  -webkit-box-shadow: none;
          box-shadow: none; }
  #elementor-deactivate-feedback-modal .elementor-deactivate-feedback-dialog-input:not(:checked) ~ .elementor-feedback-text {
    display: none; }

#elementor-deactivate-feedback-modal .elementor-deactivate-feedback-dialog-label {
  display: block;
  font-size: 13px;
  color: #6d7882; }

#elementor-deactivate-feedback-modal .elementor-feedback-text {
  margin: 10px 0 0 30px;
  padding: 5px;
  font-size: 13px;
  -webkit-box-shadow: none;
          box-shadow: none;
  background-color: #fff;
  width: 92%; }

#elementor-deactivate-feedback-modal .dialog-buttons-wrapper {
  border-top: none;
  text-align: left;
  padding: 20px 30px 30px;
  overflow: hidden; }

#elementor-deactivate-feedback-modal .dialog-submit {
  background-color: #93003c;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  color: #fff;
  line-height: 1;
  padding: 12px 20px;
  font-size: 13px;
  width: 180px;
  height: 38px; }
  #elementor-deactivate-feedback-modal .dialog-submit.elementor-loading:before {
    display: inline-block;
    content: '\f463';
    font: 18px dashicons;
    -webkit-animation: elementor-rotation 2s infinite linear;
            animation: elementor-rotation 2s infinite linear; }

#elementor-deactivate-feedback-modal .dialog-skip {
  font-size: 12px;
  color: #a4afb7;
  background: none;
  float: right;
  width: auto; }

#elementor-deactivate-feedback-modal[data-feedback-selected="elementor_pro"] .elementor-feedback-text {
  color: #b01b1b;
  padding: 0; }

#elementor-deactivate-feedback-modal[data-feedback-selected="elementor_pro"] .dialog-submit {
  display: none; }

#elementor-deactivate-feedback-dialog-header i {
  color: #93003c;
  font-size: 19px; }

#elementor-deactivate-feedback-dialog-header-title {
  font-size: 15px;
  text-transform: uppercase;
  font-weight: bold;
  padding-left: 5px; }

#elementor-deactivate-feedback-dialog-form-caption {
  font-weight: bold;
  font-size: 15px;
  color: #495157;
  line-height: 1.4; }

#elementor-deactivate-feedback-dialog-form-body {
  padding-top: 30px; }

.elementor-deactivate-feedback-dialog-input-wrapper {
  line-height: 1;
  overflow: hidden;
  margin-bottom: 15px; }

#elementor-hidden-area {
  display: none; }

#elementor-import-template-trigger {
  cursor: pointer; }

#elementor-import-template-area {
  display: none;
  margin: 50px 0 30px;
  text-align: center; }

#elementor-import-template-form {
  display: inline-block;
  margin-top: 30px;
  padding: 30px 50px;
  background-color: #FFFFFF;
  border: 1px solid #e5e5e5; }

#elementor-import-template-title {
  font-size: 18px;
  color: #555d66; }

.form-table:not(.elementor-maintenance-mode-is-enabled) .elementor-default-hide {
  display: none; }

.elementor-maintenance-mode-error {
  color: red;
  line-height: 1.6;
  display: none; }

#tab-replace_url.elementor-active ~ p.submit,
#tab-fontawesome4_migration.elementor-active ~ p.submit,
#tab-import-export-kit.elementor-active ~ p.submit {
  display: none; }

#elementor_rollback > div,
#elementor_rollback_pro > div,
#elementor_replace_url > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  #elementor_rollback > div input,
  #elementor_rollback > div select,
  #elementor_rollback_pro > div input,
  #elementor_rollback_pro > div select,
  #elementor_replace_url > div input,
  #elementor_replace_url > div select {
    margin-right: 6px; }

.tab-import-export-kit__wrapper {
  margin: 40px 0;
  max-width: 700px; }

.tab-import-export-kit__container {
  background-color: white;
  font-size: 16px;
  max-width: 700px;
  padding: 30px; }
  .tab-import-export-kit__container:not(:first-child) {
    margin-top: 5px; }
  .tab-import-export-kit__container p {
    color: #A4AFB7;
    font-size: 16px;
    margin: 20px 0 25px; }

.tab-import-export-kit__info {
  font-size: 14px; }

.tab-import-export-kit__container a:not(.elementor-button),
.tab-import-export-kit__info a {
  color: #58d0f5;
  text-decoration: underline; }

.tab-import-export-kit__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; }
  .tab-import-export-kit__box h2 {
    color: #6D7882;
    font-size: 28px;
    font-weight: normal;
    line-height: 1;
    margin: 0; }
  .tab-import-export-kit__box .elementor-button.elementor-button-success {
    font-weight: bold;
    padding: 8px 16px;
    text-transform: initial; }

#dashboard-widgets .e-dashboard-widget h3.e-heading {
  font-weight: 600;
  margin-bottom: 13px; }

#dashboard-widgets .e-dashboard-widget .e-divider_bottom {
  border-bottom: 1px solid #eee;
  margin: 0 -12px;
  padding: 6px 12px; }

#dashboard-widgets .e-dashboard-widget .e-divider_top {
  border-top: 1px solid #eee;
  margin: 0 -12px;
  padding: 6px 12px; }

#dashboard-widgets .e-dashboard-widget .e-quick-actions-wrap .e-divider_top,
#dashboard-widgets .e-dashboard-widget .e-news-feed-wrap .e-divider_top {
  padding-top: 18px;
  margin-top: 18px; }

.e-dashboard-widget .dashicons {
  color: #606a73; }

.e-dashboard-widget ul.e-action-list li {
  margin-top: 14px; }
  .e-dashboard-widget ul.e-action-list li a {
    margin-left: 5px; }

#e-dashboard-overview .dashicons {
  vertical-align: middle;
  font-size: 17px; }

#e-dashboard-overview .e-overview__header {
  display: table;
  width: 100%;
  -webkit-box-shadow: 0 5px 8px rgba(0, 0, 0, 0.05);
          box-shadow: 0 5px 8px rgba(0, 0, 0, 0.05);
  margin: 0 -12px 8px;
  padding: 0 12px 12px; }

#e-dashboard-overview .e-overview__logo, #e-dashboard-overview .e-overview__versions, #e-dashboard-overview .e-overview__create {
  display: table-cell;
  vertical-align: middle; }

#e-dashboard-overview .e-overview__logo {
  width: 30px; }

#e-dashboard-overview .e-overview__versions {
  padding: 0 10px;
  font-size: 0.9em;
  line-height: 1.5; }

#e-dashboard-overview .e-overview__version {
  display: block; }

#e-dashboard-overview .e-overview__create {
  text-align: right; }

#e-dashboard-overview .e-overview__feed {
  font-size: 14px;
  font-weight: 500; }

#e-dashboard-overview .e-overview__post {
  margin-top: 10px; }

#e-dashboard-overview .e-overview__post-link {
  display: inline-block; }

#e-dashboard-overview .e-overview__badge {
  background: #39b54a;
  color: white;
  font-size: 0.75em;
  padding: 3px 6px;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  text-transform: uppercase; }

#e-dashboard-overview .e-overview__post-description {
  margin: 0 0 1.5em; }

#e-dashboard-overview .e-overview__recently-edited li {
  color: #72777c; }

#e-dashboard-overview .e-overview__footer.e-divider_top {
  padding-top: 12px;
  padding-bottom: 0; }

#e-dashboard-overview .e-overview__footer ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  list-style: none;
  margin: 0;
  padding: 0; }
  #e-dashboard-overview .e-overview__footer ul li {
    padding: 0 10px;
    margin: 0;
    border-left: 1px solid #ddd; }
    #e-dashboard-overview .e-overview__footer ul li:first-child {
      padding-left: 0;
      border: none; }

#e-dashboard-overview .e-overview__go-pro a {
  color: #93003c;
  font-weight: 500; }

.post-type-elementor_library #elementor-template-library-tabs-wrapper {
  padding-top: 2em;
  margin-bottom: 2em; }

.post-type-elementor_library th#taxonomy-elementor_library_category {
  width: 110px; }

#elementor-new-template-modal .dialog-message {
  max-height: 70vh; }

#elementor-new-template-dialog-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100%;
  text-align: left;
  color: #6d7882; }
  @media (max-width: 1439px) {
    #elementor-new-template-dialog-content {
      padding: 0 50px; } }
  @media (min-width: 1440px) {
    #elementor-new-template-dialog-content {
      padding: 0 120px; } }

#elementor-new-template__description {
  width: 35%;
  max-width: 300px;
  padding-right: 100px; }
  #elementor-new-template__description__title {
    font-size: 30px;
    color: #556068; }
    #elementor-new-template__description__title span {
      font-weight: bold; }
  #elementor-new-template__description__content {
    font-size: 16px;
    padding: 30px 0; }

#elementor-new-template__take_a_tour {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 15px; }
  #elementor-new-template__take_a_tour i {
    color: #93003c;
    font-size: 30px; }
  #elementor-new-template__take_a_tour a {
    color: #6d7882;
    padding-left: 10px;
    text-decoration: none;
    font-weight: 500; }

#elementor-new-template__form {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  max-width: 440px;
  padding: 55px;
  background-color: #fff;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  -webkit-box-shadow: 0 2px 30px 0 rgba(0, 0, 0, 0.08);
          box-shadow: 0 2px 30px 0 rgba(0, 0, 0, 0.08); }
  #elementor-new-template__form__title {
    font-size: 23px;
    color: #556068; }
  #elementor-new-template__form__template-type.elementor-form-field__select {
    max-width: initial; }
  #elementor-new-template__form .elementor-form-field__label {
    display: block;
    margin: 25px 0 7px;
    font-size: 14px;
    line-height: 1; }
  #elementor-new-template__form .elementor-form-field input,
  #elementor-new-template__form .elementor-form-field select {
    width: 100%;
    height: 50px;
    padding: 10px;
    font-size: 14px;
    -webkit-box-shadow: none;
            box-shadow: none;
    -webkit-border-radius: 3px;
            border-radius: 3px;
    background: none;
    color: #495157;
    border: 1px solid;
    outline: none; }
    #elementor-new-template__form .elementor-form-field input:not(:focus),
    #elementor-new-template__form .elementor-form-field select:not(:focus) {
      border-color: #d5dadf; }
    #elementor-new-template__form .elementor-form-field input:focus,
    #elementor-new-template__form .elementor-form-field select:focus {
      border-color: #a4afb7; }
  #elementor-new-template__form .elementor-form-field__select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    cursor: pointer; }
    #elementor-new-template__form .elementor-form-field__select__wrapper {
      position: relative; }
      #elementor-new-template__form .elementor-form-field__select__wrapper:after {
        font-family: eicons;
        content: '\e8ad';
        position: absolute;
        top: 50%;
        right: 10px;
        -webkit-transform: translateY(-50%);
            -ms-transform: translateY(-50%);
                transform: translateY(-50%); }
  #elementor-new-template__form__submit {
    width: 100%;
    height: 50px;
    margin-top: 25px; }

@media (max-width: 1024px) {
  #elementor-new-template__description {
    max-width: 250px;
    padding-right: 30px; } }

@media (max-width: 767px) {
  #elementor-new-template__description {
    display: none; } }

#elementor-role-manager {
  max-width: 500px;
  margin-top: 50px; }
  #elementor-role-manager h3 {
    color: #6d7882;
    font-weight: normal;
    font-size: 22px; }
  #elementor-role-manager .elementor-settings-form-page {
    padding: 0; }
  #elementor-role-manager .elementor-role-row {
    background: #ffffff;
    color: #6d7882;
    margin-bottom: 2px; }
    #elementor-role-manager .elementor-role-row .elementor-role-label {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      padding: 15px 20px;
      font-weight: 500;
      cursor: pointer; }
      #elementor-role-manager .elementor-role-row .elementor-role-label span.elementor-role-name {
        padding-right: 20px; }
      #elementor-role-manager .elementor-role-row .elementor-role-label span.elementor-role-toggle {
        text-align: right;
        -webkit-box-flex: 1;
            -ms-flex-positive: 1;
                flex-grow: 1; }
      #elementor-role-manager .elementor-role-row .elementor-role-label span.elementor-role-excluded-indicator {
        color: #a4afb7; }
    #elementor-role-manager .elementor-role-row .elementor-role-controls {
      background-color: #f7f7f7;
      padding: 20px 20px 5px; }
      #elementor-role-manager .elementor-role-row .elementor-role-controls > div {
        margin-bottom: 15px; }
      #elementor-role-manager .elementor-role-row .elementor-role-controls .elementor-role-go-pro {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex; }
        #elementor-role-manager .elementor-role-row .elementor-role-controls .elementor-role-go-pro .elementor-role-go-pro__desc {
          font-weight: 500;
          font-style: italic; }
        #elementor-role-manager .elementor-role-row .elementor-role-controls .elementor-role-go-pro .elementor-role-go-pro__link {
          text-align: right;
          -webkit-box-flex: 1;
              -ms-flex-positive: 1;
                  flex-grow: 1; }

#elementor-beta-tester-modal .elementor-templates-modal__header__items-area {
  color: #c2cbd2;
  cursor: pointer; }
  #elementor-beta-tester-modal .elementor-templates-modal__header__items-area:hover .elementor-beta-tester-do-not-show-again,
  #elementor-beta-tester-modal .elementor-templates-modal__header__items-area:hover .elementor-templates-modal__header__item > i {
    color: #6d7882; }
  #elementor-beta-tester-modal .elementor-templates-modal__header__items-area .elementor-templates-modal__header__close {
    border: none; }
  #elementor-beta-tester-modal .elementor-templates-modal__header__items-area .elementor-beta-tester-do-not-show-again {
    text-transform: uppercase;
    font-weight: bold;
    font-size: 12px;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s; }

#elementor-beta-tester-modal .dialog-lightbox-widget-content {
  max-width: 500px;
  height: initial; }

#elementor-beta-tester-modal .dialog-lightbox-message {
  padding: 40px;
  height: 300px;
  background-color: #fff; }

#elementor-beta-tester-form__caption {
  font-weight: bold;
  font-size: 20px;
  color: #495157; }

#elementor-beta-tester-form__description {
  font-size: 15px;
  color: #6d7882;
  margin-top: 10px; }

#elementor-beta-tester-form__input-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 30px; }
  #elementor-beta-tester-form__input-wrapper .elementor-button {
    -webkit-border-radius: 0 3px 3px 0;
            border-radius: 0 3px 3px 0; }

#elementor-beta-tester-form__email {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  border: #d5dadf 1px solid;
  border-right: 0;
  -webkit-border-radius: 3px 0 0 3px;
          border-radius: 3px 0 0 3px;
  margin: 0;
  padding: 10px;
  height: 50px; }

#elementor-beta-tester-form__terms {
  margin-top: 40px;
  font-size: 11px;
  color: #a4afb7; }

.e-experiment__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; }
  .e-experiment__title__indicator {
    height: 10px;
    width: 10px;
    -webkit-border-radius: 50%;
            border-radius: 50%;
    border: 2px solid white;
    -webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
            box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    margin-top: 2px; }
    .e-experiment__title__indicator--active {
      background: #39b54a; }
  .e-experiment__title__label {
    margin-left: 10px; }

.e-experiment__description {
  max-width: 800px; }

.e-experiment__status {
  margin-top: 5px;
  font-size: 13px;
  font-weight: bold;
  font-style: italic; }

.e-landing-pages-empty .elementor-blank_state {
  padding: 5em 0 2em 0; }

.e-landing-pages-empty .e-trashed-items {
  text-align: center; }
/*# sourceMappingURL=admin.css.map */assets/css/widget-testimonial-rtl.min.css000064400000003243151327220410014541 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-testimonial-wrapper{overflow:hidden;text-align:center}.elementor-testimonial-wrapper .elementor-testimonial-content{font-size:1.3em;margin-bottom:20px}.elementor-testimonial-wrapper .elementor-testimonial-name{line-height:1.5;display:block}.elementor-testimonial-wrapper .elementor-testimonial-job{font-size:.85em;display:block}.elementor-testimonial-wrapper .elementor-testimonial-meta{width:100%;line-height:1}.elementor-testimonial-wrapper .elementor-testimonial-meta-inner{display:inline-block}.elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-details,.elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-image{display:table-cell;vertical-align:middle}.elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-image img{width:60px;height:60px;-webkit-border-radius:50%;border-radius:50%;-o-object-fit:cover;object-fit:cover;max-width:none}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-aside .elementor-testimonial-image{padding-left:15px}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-aside .elementor-testimonial-details{text-align:right}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-details,.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-image{display:block}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-image{margin-bottom:20px}assets/css/frontend-lite-rtl.css000064400000340266151327220410012731 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.dialog-widget-content {
  background-color: #fff;
  position: absolute;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  -webkit-box-shadow: 2px 8px 23px 3px rgba(0, 0, 0, 0.2);
          box-shadow: 2px 8px 23px 3px rgba(0, 0, 0, 0.2);
  overflow: hidden; }

.dialog-message {
  font-size: 12px;
  line-height: 1.5;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

.dialog-type-lightbox {
  position: fixed;
  height: 100%;
  width: 100%;
  bottom: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 9999;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none; }
  .dialog-type-lightbox .dialog-widget-content {
    margin: auto;
    width: 375px; }
  .dialog-type-lightbox .dialog-header {
    font-size: 15px;
    color: #495157;
    padding: 30px 0 10px;
    font-weight: 500; }
  .dialog-type-lightbox .dialog-message {
    padding: 0 30px 30px;
    min-height: 50px; }
  .dialog-type-lightbox:not(.elementor-popup-modal) .dialog-header,
  .dialog-type-lightbox:not(.elementor-popup-modal) .dialog-message {
    text-align: center; }
  .dialog-type-lightbox .dialog-buttons-wrapper {
    border-top: 1px solid #e6e9ec;
    text-align: center; }
    .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button {
      font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
      width: 50%;
      border: none;
      background: none;
      color: #6d7882;
      font-size: 15px;
      cursor: pointer;
      padding: 13px 0;
      outline: 0; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button:hover {
        background-color: #f4f6f7; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button.dialog-ok {
        color: #b01b1b; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button.dialog-take_over {
        color: #39b54a; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button:active {
        background-color: rgba(230, 233, 236, 0.5); }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button::-moz-focus-inner {
        border: 0; }

.dialog-close-button {
  cursor: pointer;
  position: absolute;
  margin-top: 15px;
  left: 15px;
  font-size: 15px;
  line-height: 1; }
  .dialog-close-button:not(:hover) {
    opacity: .4; }

.dialog-alert-widget .dialog-buttons-wrapper > button {
  width: 100%; }

.dialog-confirm-widget .dialog-button:first-child {
  border-left: 1px solid #e6e9ec; }

.dialog-prevent-scroll {
  overflow: hidden;
  max-height: 100vh; }

@media (min-width: 1024px) {
  body.admin-bar .dialog-lightbox-widget {
    height: calc(100vh - 32px); } }

@media (max-width: 1024px) {
  body.admin-bar .dialog-type-lightbox {
    position: -webkit-sticky;
    position: sticky;
    height: 100vh; } }

.elementor-aspect-ratio-219 .elementor-fit-aspect-ratio {
  padding-bottom: 42.8571%; }

.elementor-aspect-ratio-169 .elementor-fit-aspect-ratio {
  padding-bottom: 56.25%; }

.elementor-aspect-ratio-43 .elementor-fit-aspect-ratio {
  padding-bottom: 75%; }

.elementor-aspect-ratio-32 .elementor-fit-aspect-ratio {
  padding-bottom: 66.6666%; }

.elementor-aspect-ratio-11 .elementor-fit-aspect-ratio {
  padding-bottom: 100%; }

.elementor-aspect-ratio-916 .elementor-fit-aspect-ratio {
  padding-bottom: 177.8%; }

.elementor-fit-aspect-ratio {
  position: relative;
  height: 0; }
  .elementor-fit-aspect-ratio iframe {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    border: 0;
    background-color: #000; }
  .elementor-fit-aspect-ratio video {
    width: 100%; }

.flatpickr-calendar {
  width: 280px; }
  .flatpickr-calendar .flatpickr-current-month span.cur-month {
    font-weight: 300; }
  .flatpickr-calendar .dayContainer {
    width: 280px;
    min-width: 280px;
    max-width: 280px; }
  .flatpickr-calendar .flatpickr-days {
    width: 280px; }
  .flatpickr-calendar .flatpickr-day {
    max-width: 37px;
    height: 37px;
    line-height: 37px; }

.elementor-templates-modal .dialog-widget-content {
  font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
  background-color: #f1f3f5;
  width: 100%; }
  @media (max-width: 1439px) {
    .elementor-templates-modal .dialog-widget-content {
      max-width: 990px; } }
  @media (min-width: 1440px) {
    .elementor-templates-modal .dialog-widget-content {
      max-width: 1200px; } }

.elementor-templates-modal .dialog-header {
  padding: 0;
  background-color: #fff;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
  position: relative;
  z-index: 1; }

.elementor-templates-modal .dialog-buttons-wrapper {
  background-color: #fff;
  border: none;
  display: none;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  padding: 5px;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
  position: relative; }
  .elementor-templates-modal .dialog-buttons-wrapper .elementor-button {
    height: 40px;
    margin-right: 5px; }
    .elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success {
      padding: 12px 36px;
      color: #fff;
      width: initial;
      font-size: 15px; }
      .elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success:hover {
        background-color: #39b54a; }

.elementor-templates-modal .dialog-message {
  height: 750px;
  max-height: 85vh;
  overflow: auto;
  padding-top: 25px; }

.elementor-templates-modal .dialog-content {
  height: 100%; }

.elementor-templates-modal .dialog-loading {
  display: none; }

.elementor-templates-modal__header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  height: 50px; }
  .elementor-templates-modal__header__logo {
    line-height: 1;
    text-transform: uppercase;
    font-weight: bold;
    cursor: pointer; }
    .elementor-templates-modal__header__logo-area {
      text-align: right;
      padding-right: 15px; }
      .elementor-templates-modal__header__logo-area > * {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center; }
    .elementor-templates-modal__header__logo__icon-wrapper {
      margin-left: 10px;
      font-size: 12px; }
    .elementor-templates-modal__header__logo__title {
      padding-top: 2px; }
  .elementor-templates-modal__header__items-area {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .elementor-templates-modal__header__item {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-sizing: content-box;
            box-sizing: content-box; }
    .elementor-templates-modal__header__item > i {
      font-size: 20px;
      -webkit-transition: all 0.3s;
      -o-transition: all 0.3s;
      transition: all 0.3s;
      cursor: pointer; }
      .elementor-templates-modal__header__item > i:not(:hover) {
        color: #a4afb7; }
  .elementor-templates-modal__header__close--normal {
    width: 47px;
    border-right: 1px solid #e6e9ec; }
    .elementor-templates-modal__header__close--normal i {
      font-size: 18px; }
  .elementor-templates-modal__header__close--skip {
    padding: 10px;
    padding-right: 20px;
    margin-left: 10px;
    color: #fff;
    background-color: #a4afb7;
    font-size: 11px;
    font-weight: normal;
    line-height: 1;
    text-transform: uppercase;
    -webkit-border-radius: 2px;
            border-radius: 2px;
    cursor: pointer; }
    .elementor-templates-modal__header__close--skip > i {
      font-size: inherit;
      padding-right: 10px;
      margin-right: 15px;
      border-right: 1px solid; }
      .elementor-templates-modal__header__close--skip > i:not(:hover) {
        color: #fff; }

.elementor-templates-modal__sidebar {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 25%;
  background-color: rgba(255, 255, 255, 0.3); }

.elementor-templates-modal__content {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-box-shadow: 0 0 13px inset rgba(0, 0, 0, 0.05);
          box-shadow: 0 0 13px inset rgba(0, 0, 0, 0.05); }

/* Will select next element after last '.elementor-general-section' */
#wpadminbar #wp-admin-bar-elementor_edit_page .elementor-general-section + .elementor-second-section {
  border-top: 1px solid #464b50;
  margin-top: 6px; }

.elementor-hidden {
  display: none; }

.elementor-screen-only,
.screen-reader-text,
.screen-reader-text span,
.ui-helper-hidden-accessible {
  position: absolute;
  top: -10000em;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0; }

.elementor-clearfix:after {
  content: '';
  display: block;
  clear: both;
  width: 0;
  height: 0; }

.e-logo-wrapper {
  background: #93003c;
  display: inline-block;
  padding: 0.75em;
  -webkit-border-radius: 50%;
          border-radius: 50%;
  line-height: 1; }
  .e-logo-wrapper i {
    color: #fff;
    font-size: 1em; }

.elementor {
  -webkit-hyphens: manual;
      -ms-hyphens: manual;
          hyphens: manual; }
  .elementor *, .elementor *:before, .elementor *:after {
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
  .elementor a {
    -webkit-box-shadow: none;
            box-shadow: none;
    text-decoration: none; }
  .elementor hr {
    margin: 0;
    background-color: transparent; }
  .elementor img {
    height: auto;
    max-width: 100%;
    border: none;
    -webkit-border-radius: 0;
            border-radius: 0;
    -webkit-box-shadow: none;
            box-shadow: none; }
  .elementor .elementor-widget:not(.elementor-widget-text-editor):not(.elementor-widget-theme-post-content) figure {
    margin: 0; }
  .elementor embed,
  .elementor iframe,
  .elementor object,
  .elementor video {
    max-width: 100%;
    width: 100%;
    margin: 0;
    line-height: 1;
    border: none; }
  .elementor .elementor-custom-embed {
    line-height: 0; }
  .elementor .elementor-background-video-container,
  .elementor .elementor-background-holder,
  .elementor .elementor-background {
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    position: absolute;
    overflow: hidden;
    z-index: 0;
    direction: ltr; }
  .elementor .elementor-background-video-container {
    -webkit-transition: opacity 1s;
    -o-transition: opacity 1s;
    transition: opacity 1s;
    pointer-events: none; }
    .elementor .elementor-background-video-container.elementor-loading {
      opacity: 0; }
  .elementor .elementor-background-video-embed {
    max-width: none; }
  .elementor .elementor-background-video-embed, .elementor .elementor-background-video-hosted {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }
  .elementor .elementor-background-video {
    max-width: none;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }
  .elementor .elementor-html5-video {
    -o-object-fit: cover;
       object-fit: cover; }
  .elementor .elementor-background-overlay {
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    position: absolute; }
  .elementor .elementor-background-slideshow {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 0;
    top: 0;
    right: 0; }
    .elementor .elementor-background-slideshow__slide__image {
      width: 100%;
      height: 100%;
      background-position: center center;
      -webkit-background-size: cover;
              background-size: cover; }

.elementor-widget-wrap > .elementor-element.elementor-absolute {
  position: absolute; }
  .elementor-column > .elementor-widget-wrap > .elementor-element.elementor-absolute {
    padding: inherit;
    -webkit-box-sizing: content-box;
            box-sizing: content-box; }

.elementor-widget-wrap > .elementor-element.elementor-fixed {
  position: fixed; }

.elementor-widget-wrap .elementor-element.elementor-widget__width-auto, .elementor-widget-wrap .elementor-element.elementor-widget__width-initial {
  max-width: 100%; }

@media (max-width: 1024px) {
  .elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-auto, .elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-initial {
    max-width: 100%; } }

@media (max-width: 767px) {
  .elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-auto, .elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-initial {
    max-width: 100%; } }

.elementor-element.elementor-absolute, .elementor-element.elementor-fixed {
  z-index: 1; }

.elementor-invisible {
  visibility: hidden; }

.elementor-align-center {
  text-align: center; }
  .elementor-align-center .elementor-button {
    width: auto; }

.elementor-align-right {
  text-align: right; }
  .elementor-align-right .elementor-button {
    width: auto; }

.elementor-align-left {
  text-align: left; }
  .elementor-align-left .elementor-button {
    width: auto; }

.elementor-align-justify .elementor-button {
  width: 100%; }

.elementor-custom-embed-play {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%); }
  .elementor-custom-embed-play i {
    font-size: 100px;
    color: #fff;
    text-shadow: 1px 0 6px rgba(0, 0, 0, 0.3); }
  .elementor-custom-embed-play svg {
    height: 100px;
    width: 100px;
    fill: #fff;
    -webkit-filter: drop-shadow(1px 0 6px rgba(0, 0, 0, 0.3));
            filter: drop-shadow(1px 0 6px rgba(0, 0, 0, 0.3)); }
  .elementor-custom-embed-play i,
  .elementor-custom-embed-play svg {
    opacity: 0.8;
    -webkit-transition: all .5s;
    -o-transition: all .5s;
    transition: all .5s; }
  .elementor-custom-embed-play.elementor-playing i {
    font-family: eicons;
    -webkit-animation: fa-spin 2s infinite linear;
            animation: fa-spin 2s infinite linear; }
    .elementor-custom-embed-play.elementor-playing i:before {
      content: '\e8fb'; }

.elementor-tag {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex; }

.elementor-ken-burns {
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  -o-transition-property: transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transition-duration: 10s;
       -o-transition-duration: 10s;
          transition-duration: 10s;
  -webkit-transition-timing-function: linear;
       -o-transition-timing-function: linear;
          transition-timing-function: linear; }
  .elementor-ken-burns--out {
    -webkit-transform: scale(1.3);
        -ms-transform: scale(1.3);
            transform: scale(1.3); }
  .elementor-ken-burns--active {
    -webkit-transition-duration: 20s;
         -o-transition-duration: 20s;
            transition-duration: 20s; }
    .elementor-ken-burns--active.elementor-ken-burns--out {
      -webkit-transform: scale(1);
          -ms-transform: scale(1);
              transform: scale(1); }
    .elementor-ken-burns--active.elementor-ken-burns--in {
      -webkit-transform: scale(1.3);
          -ms-transform: scale(1.3);
              transform: scale(1.3); }

@media (min-width: -1px) {
  .elementor-widescreen-align-center {
    text-align: center; }
    .elementor-widescreen-align-center .elementor-button {
      width: auto; }
  .elementor-widescreen-align-right {
    text-align: right; }
    .elementor-widescreen-align-right .elementor-button {
      width: auto; }
  .elementor-widescreen-align-left {
    text-align: left; }
    .elementor-widescreen-align-left .elementor-button {
      width: auto; }
  .elementor-widescreen-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: -1px) {
  .elementor-laptop-align-center {
    text-align: center; }
    .elementor-laptop-align-center .elementor-button {
      width: auto; }
  .elementor-laptop-align-right {
    text-align: right; }
    .elementor-laptop-align-right .elementor-button {
      width: auto; }
  .elementor-laptop-align-left {
    text-align: left; }
    .elementor-laptop-align-left .elementor-button {
      width: auto; }
  .elementor-laptop-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: -1px) {
  .elementor-tablet_extra-align-center {
    text-align: center; }
    .elementor-tablet_extra-align-center .elementor-button {
      width: auto; }
  .elementor-tablet_extra-align-right {
    text-align: right; }
    .elementor-tablet_extra-align-right .elementor-button {
      width: auto; }
  .elementor-tablet_extra-align-left {
    text-align: left; }
    .elementor-tablet_extra-align-left .elementor-button {
      width: auto; }
  .elementor-tablet_extra-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: 1024px) {
  .elementor-tablet-align-center {
    text-align: center; }
    .elementor-tablet-align-center .elementor-button {
      width: auto; }
  .elementor-tablet-align-right {
    text-align: right; }
    .elementor-tablet-align-right .elementor-button {
      width: auto; }
  .elementor-tablet-align-left {
    text-align: left; }
    .elementor-tablet-align-left .elementor-button {
      width: auto; }
  .elementor-tablet-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: -1px) {
  .elementor-mobile_extra-align-center {
    text-align: center; }
    .elementor-mobile_extra-align-center .elementor-button {
      width: auto; }
  .elementor-mobile_extra-align-right {
    text-align: right; }
    .elementor-mobile_extra-align-right .elementor-button {
      width: auto; }
  .elementor-mobile_extra-align-left {
    text-align: left; }
    .elementor-mobile_extra-align-left .elementor-button {
      width: auto; }
  .elementor-mobile_extra-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: 767px) {
  .elementor-mobile-align-center {
    text-align: center; }
    .elementor-mobile-align-center .elementor-button {
      width: auto; }
  .elementor-mobile-align-right {
    text-align: right; }
    .elementor-mobile-align-right .elementor-button {
      width: auto; }
  .elementor-mobile-align-left {
    text-align: left; }
    .elementor-mobile-align-left .elementor-button {
      width: auto; }
  .elementor-mobile-align-justify .elementor-button {
    width: 100%; } }

#wpadminbar #wp-admin-bar-elementor_edit_page > .ab-item::before {
  content: "\e813";
  font-family: eicons;
  top: 3px;
  font-size: 18px; }

#wpadminbar #wp-admin-bar-elementor_inspector > .ab-item::before {
  content: "\f348";
  top: 2px; }

:root {
  --page-title-display: block; }

.elementor-page-title, h1.entry-title {
  display: var(--page-title-display); }

.elementor-section {
  position: relative; }
  .elementor-section .elementor-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-right: auto;
    margin-left: auto;
    position: relative; }
    @media (max-width: 1024px) {
      .elementor-section .elementor-container {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; } }
  .elementor-section.elementor-section-boxed > .elementor-container {
    max-width: 1140px; }
  .elementor-section.elementor-section-stretched {
    position: relative;
    width: 100%; }
  .elementor-section.elementor-section-items-top > .elementor-container {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start; }
  .elementor-section.elementor-section-items-middle > .elementor-container {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .elementor-section.elementor-section-items-bottom > .elementor-container {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end; }
  @media (min-width: 768px) {
    .elementor-section.elementor-section-height-full {
      height: 100vh; }
      .elementor-section.elementor-section-height-full > .elementor-container {
        height: 100%; } }

.elementor-bc-flex-widget .elementor-section-content-top > .elementor-container > .elementor-column > .elementor-widget-wrap {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; }

.elementor-bc-flex-widget .elementor-section-content-middle > .elementor-container > .elementor-column > .elementor-widget-wrap {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.elementor-bc-flex-widget .elementor-section-content-bottom > .elementor-container > .elementor-column > .elementor-widget-wrap {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end; }

.elementor-row {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media (max-width: 1024px) {
    .elementor-row {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; } }

.elementor-widget-wrap {
  position: relative;
  width: 100%;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-line-pack: start;
      align-content: flex-start; }
  .elementor:not(.elementor-bc-flex-widget) .elementor-widget-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .elementor-widget-wrap > .elementor-element {
    width: 100%; }

.elementor-widget {
  position: relative; }
  .elementor-widget:not(:last-child) {
    margin-bottom: 20px; }
    .elementor-widget:not(:last-child).elementor-widget__width-auto, .elementor-widget:not(:last-child).elementor-widget__width-initial, .elementor-widget:not(:last-child).elementor-absolute {
      margin-bottom: 0; }

.elementor-column {
  position: relative;
  min-height: 1px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.elementor-column-wrap {
  width: 100%;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.elementor-column-gap-narrow > .elementor-column > .elementor-element-populated {
  padding: 5px; }

.elementor-column-gap-default > .elementor-column > .elementor-element-populated {
  padding: 10px; }

.elementor-column-gap-extended > .elementor-column > .elementor-element-populated {
  padding: 15px; }

.elementor-column-gap-wide > .elementor-column > .elementor-element-populated {
  padding: 20px; }

.elementor-column-gap-wider > .elementor-column > .elementor-element-populated {
  padding: 30px; }

.elementor-inner-section .elementor-column-gap-no .elementor-element-populated {
  padding: 0; }

@media (min-width: 768px) {
  .elementor-column.elementor-col-10, .elementor-column[data-col="10"] {
    width: 10%; }
  .elementor-column.elementor-col-11, .elementor-column[data-col="11"] {
    width: 11.111%; }
  .elementor-column.elementor-col-12, .elementor-column[data-col="12"] {
    width: 12.5%; }
  .elementor-column.elementor-col-14, .elementor-column[data-col="14"] {
    width: 14.285%; }
  .elementor-column.elementor-col-16, .elementor-column[data-col="16"] {
    width: 16.666%; }
  .elementor-column.elementor-col-20, .elementor-column[data-col="20"] {
    width: 20%; }
  .elementor-column.elementor-col-25, .elementor-column[data-col="25"] {
    width: 25%; }
  .elementor-column.elementor-col-30, .elementor-column[data-col="30"] {
    width: 30%; }
  .elementor-column.elementor-col-33, .elementor-column[data-col="33"] {
    width: 33.333%; }
  .elementor-column.elementor-col-40, .elementor-column[data-col="40"] {
    width: 40%; }
  .elementor-column.elementor-col-50, .elementor-column[data-col="50"] {
    width: 50%; }
  .elementor-column.elementor-col-60, .elementor-column[data-col="60"] {
    width: 60%; }
  .elementor-column.elementor-col-66, .elementor-column[data-col="66"] {
    width: 66.666%; }
  .elementor-column.elementor-col-70, .elementor-column[data-col="70"] {
    width: 70%; }
  .elementor-column.elementor-col-75, .elementor-column[data-col="75"] {
    width: 75%; }
  .elementor-column.elementor-col-80, .elementor-column[data-col="80"] {
    width: 80%; }
  .elementor-column.elementor-col-83, .elementor-column[data-col="83"] {
    width: 83.333%; }
  .elementor-column.elementor-col-90, .elementor-column[data-col="90"] {
    width: 90%; }
  .elementor-column.elementor-col-100, .elementor-column[data-col="100"] {
    width: 100%; } }

@media (max-width: 479px) {
  .elementor-column.elementor-xs-10 {
    width: 10%; }
  .elementor-column.elementor-xs-11 {
    width: 11.111%; }
  .elementor-column.elementor-xs-12 {
    width: 12.5%; }
  .elementor-column.elementor-xs-14 {
    width: 14.285%; }
  .elementor-column.elementor-xs-16 {
    width: 16.666%; }
  .elementor-column.elementor-xs-20 {
    width: 20%; }
  .elementor-column.elementor-xs-25 {
    width: 25%; }
  .elementor-column.elementor-xs-30 {
    width: 30%; }
  .elementor-column.elementor-xs-33 {
    width: 33.333%; }
  .elementor-column.elementor-xs-40 {
    width: 40%; }
  .elementor-column.elementor-xs-50 {
    width: 50%; }
  .elementor-column.elementor-xs-60 {
    width: 60%; }
  .elementor-column.elementor-xs-66 {
    width: 66.666%; }
  .elementor-column.elementor-xs-70 {
    width: 70%; }
  .elementor-column.elementor-xs-75 {
    width: 75%; }
  .elementor-column.elementor-xs-80 {
    width: 80%; }
  .elementor-column.elementor-xs-83 {
    width: 83.333%; }
  .elementor-column.elementor-xs-90 {
    width: 90%; }
  .elementor-column.elementor-xs-100 {
    width: 100%; } }

@media (max-width: 767px) {
  .elementor-column.elementor-sm-10 {
    width: 10%; }
  .elementor-column.elementor-sm-11 {
    width: 11.111%; }
  .elementor-column.elementor-sm-12 {
    width: 12.5%; }
  .elementor-column.elementor-sm-14 {
    width: 14.285%; }
  .elementor-column.elementor-sm-16 {
    width: 16.666%; }
  .elementor-column.elementor-sm-20 {
    width: 20%; }
  .elementor-column.elementor-sm-25 {
    width: 25%; }
  .elementor-column.elementor-sm-30 {
    width: 30%; }
  .elementor-column.elementor-sm-33 {
    width: 33.333%; }
  .elementor-column.elementor-sm-40 {
    width: 40%; }
  .elementor-column.elementor-sm-50 {
    width: 50%; }
  .elementor-column.elementor-sm-60 {
    width: 60%; }
  .elementor-column.elementor-sm-66 {
    width: 66.666%; }
  .elementor-column.elementor-sm-70 {
    width: 70%; }
  .elementor-column.elementor-sm-75 {
    width: 75%; }
  .elementor-column.elementor-sm-80 {
    width: 80%; }
  .elementor-column.elementor-sm-83 {
    width: 83.333%; }
  .elementor-column.elementor-sm-90 {
    width: 90%; }
  .elementor-column.elementor-sm-100 {
    width: 100%; } }

@media (min-width: 768px) and (max-width: 1024px) {
  .elementor-column.elementor-md-10 {
    width: 10%; }
  .elementor-column.elementor-md-11 {
    width: 11.111%; }
  .elementor-column.elementor-md-12 {
    width: 12.5%; }
  .elementor-column.elementor-md-14 {
    width: 14.285%; }
  .elementor-column.elementor-md-16 {
    width: 16.666%; }
  .elementor-column.elementor-md-20 {
    width: 20%; }
  .elementor-column.elementor-md-25 {
    width: 25%; }
  .elementor-column.elementor-md-30 {
    width: 30%; }
  .elementor-column.elementor-md-33 {
    width: 33.333%; }
  .elementor-column.elementor-md-40 {
    width: 40%; }
  .elementor-column.elementor-md-50 {
    width: 50%; }
  .elementor-column.elementor-md-60 {
    width: 60%; }
  .elementor-column.elementor-md-66 {
    width: 66.666%; }
  .elementor-column.elementor-md-70 {
    width: 70%; }
  .elementor-column.elementor-md-75 {
    width: 75%; }
  .elementor-column.elementor-md-80 {
    width: 80%; }
  .elementor-column.elementor-md-83 {
    width: 83.333%; }
  .elementor-column.elementor-md-90 {
    width: 90%; }
  .elementor-column.elementor-md-100 {
    width: 100%; } }

@media (min-width: 768px) and (max-width: 1024px) {
  .elementor-reverse-tablet > .elementor-container > :nth-child(1) {
    -webkit-box-ordinal-group: 11;
        -ms-flex-order: 10;
            order: 10; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(2) {
    -webkit-box-ordinal-group: 10;
        -ms-flex-order: 9;
            order: 9; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(3) {
    -webkit-box-ordinal-group: 9;
        -ms-flex-order: 8;
            order: 8; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(4) {
    -webkit-box-ordinal-group: 8;
        -ms-flex-order: 7;
            order: 7; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(5) {
    -webkit-box-ordinal-group: 7;
        -ms-flex-order: 6;
            order: 6; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(6) {
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(7) {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(8) {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(9) {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(10) {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1; } }

@media (max-width: 767px) {
  .elementor-reverse-mobile > .elementor-container > :nth-child(1) {
    -webkit-box-ordinal-group: 11;
        -ms-flex-order: 10;
            order: 10; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(2) {
    -webkit-box-ordinal-group: 10;
        -ms-flex-order: 9;
            order: 9; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(3) {
    -webkit-box-ordinal-group: 9;
        -ms-flex-order: 8;
            order: 8; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(4) {
    -webkit-box-ordinal-group: 8;
        -ms-flex-order: 7;
            order: 7; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(5) {
    -webkit-box-ordinal-group: 7;
        -ms-flex-order: 6;
            order: 6; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(6) {
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(7) {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(8) {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(9) {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(10) {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1; }
  .elementor-column {
    width: 100%; } }

ul.elementor-icon-list-items.elementor-inline-items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  ul.elementor-icon-list-items.elementor-inline-items .elementor-inline-item {
    word-break: break-word; }

.elementor-grid {
  display: grid;
  grid-column-gap: var(--grid-column-gap);
  grid-row-gap: var(--grid-row-gap); }
  .elementor-grid .elementor-grid-item {
    min-width: 0; }
  .elementor-grid-0 .elementor-grid {
    display: inline-block;
    width: 100%;
    word-spacing: var(--grid-column-gap);
    margin-bottom: calc(-1 * var(--grid-row-gap)); }
    .elementor-grid-0 .elementor-grid .elementor-grid-item {
      display: inline-block;
      margin-bottom: var(--grid-row-gap);
      word-break: break-word; }
  .elementor-grid-1 .elementor-grid {
    grid-template-columns: repeat(1, 1fr); }
  .elementor-grid-2 .elementor-grid {
    grid-template-columns: repeat(2, 1fr); }
  .elementor-grid-3 .elementor-grid {
    grid-template-columns: repeat(3, 1fr); }
  .elementor-grid-4 .elementor-grid {
    grid-template-columns: repeat(4, 1fr); }
  .elementor-grid-5 .elementor-grid {
    grid-template-columns: repeat(5, 1fr); }
  .elementor-grid-6 .elementor-grid {
    grid-template-columns: repeat(6, 1fr); }
  .elementor-grid-7 .elementor-grid {
    grid-template-columns: repeat(7, 1fr); }
  .elementor-grid-8 .elementor-grid {
    grid-template-columns: repeat(8, 1fr); }
  .elementor-grid-9 .elementor-grid {
    grid-template-columns: repeat(9, 1fr); }
  .elementor-grid-10 .elementor-grid {
    grid-template-columns: repeat(10, 1fr); }
  .elementor-grid-11 .elementor-grid {
    grid-template-columns: repeat(11, 1fr); }
  .elementor-grid-12 .elementor-grid {
    grid-template-columns: repeat(12, 1fr); }
  @media (min-width: -1px) {
    .elementor-grid-widescreen-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-widescreen-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-widescreen-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-widescreen-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-widescreen-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-widescreen-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-widescreen-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-widescreen-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-widescreen-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-widescreen-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-widescreen-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-widescreen-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-widescreen-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-widescreen-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: -1px) {
    .elementor-grid-laptop-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-laptop-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-laptop-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-laptop-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-laptop-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-laptop-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-laptop-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-laptop-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-laptop-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-laptop-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-laptop-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-laptop-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-laptop-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-laptop-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: -1px) {
    .elementor-grid-tablet_extra-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-tablet_extra-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-tablet_extra-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-tablet_extra-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-tablet_extra-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-tablet_extra-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-tablet_extra-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-tablet_extra-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-tablet_extra-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-tablet_extra-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-tablet_extra-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-tablet_extra-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-tablet_extra-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-tablet_extra-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: 1024px) {
    .elementor-grid-tablet-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-tablet-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-tablet-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-tablet-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-tablet-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-tablet-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-tablet-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-tablet-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-tablet-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-tablet-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-tablet-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-tablet-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-tablet-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-tablet-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: -1px) {
    .elementor-grid-mobile_extra-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-mobile_extra-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-mobile_extra-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-mobile_extra-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-mobile_extra-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-mobile_extra-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-mobile_extra-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-mobile_extra-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-mobile_extra-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-mobile_extra-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-mobile_extra-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-mobile_extra-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-mobile_extra-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-mobile_extra-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: 767px) {
    .elementor-grid-mobile-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-mobile-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-mobile-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-mobile-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-mobile-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-mobile-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-mobile-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-mobile-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-mobile-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-mobile-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-mobile-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-mobile-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-mobile-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-mobile-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }

@media (min-width: 1025px) {
  #elementor-device-mode:after {
    content: 'desktop'; } }

@media (min-width: -1px) {
  #elementor-device-mode:after {
    content: 'widescreen'; } }

@media (max-width: -1px) {
  #elementor-device-mode:after {
    content: 'laptop'; } }

@media (max-width: -1px) {
  #elementor-device-mode:after {
    content: 'tablet_extra'; } }

@media (max-width: 1024px) {
  #elementor-device-mode:after {
    content: 'tablet'; } }

@media (max-width: -1px) {
  #elementor-device-mode:after {
    content: 'mobile_extra'; } }

@media (max-width: 767px) {
  #elementor-device-mode:after {
    content: 'mobile'; } }

[class^="eicon"],
[class*=" eicon-"] {
  display: inline-block;
  font-family: eicons;
  font-size: inherit;
  font-weight: normal;
  font-style: normal;
  font-variant: normal;
  line-height: 1;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

@-webkit-keyframes eicon-spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(359deg);
            transform: rotate(359deg); } }

@keyframes eicon-spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(359deg);
            transform: rotate(359deg); } }

.eicon-animation-spin {
  -webkit-animation: eicon-spin 2s infinite linear;
          animation: eicon-spin 2s infinite linear; }

.eicon-loading:before {
  content: '\e8fb'; }

.eicon-menu-bar:before {
  content: '\e816'; }

.eicon-chevron-right:before {
  content: '\e87d'; }

.eicon-chevron-left:before {
  content: '\e87e'; }

.eicon-close:before {
  content: '\e87f'; }

.eicon-share-arrow:before {
  content: '\e96c'; }

.eicon-zoom-in:before {
  content: '\e882'; }

.eicon-zoom-in-bold:before {
  content: '\e92e'; }

.eicon-zoom-out-bold:before {
  content: '\e943'; }

.eicon-frame-expand:before {
  content: '\e95c'; }

.eicon-frame-minimize:before {
  content: '\e95d'; }

.eicon-play:before {
  content: '\e89d'; }

.eicon-facebook:before {
  content: '\e959'; }

.eicon-twitter:before {
  content: '\e95a'; }

.eicon-pinterest:before {
  content: '\e95b'; }

.eicon-download-bold:before {
  content: '\e96b'; }

.eicon-caret-down:before {
  content: '\e92a'; }

.elementor-form-fields-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group > input, .elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group > textarea, .elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group > .elementor-select-wrapper, .elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group .elementor-field-subgroup {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    max-width: 100%; }
  .elementor-form-fields-wrapper.elementor-labels-inline > .elementor-field-group > input, .elementor-form-fields-wrapper.elementor-labels-inline > .elementor-field-group .elementor-select-wrapper {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }

.elementor-field-group {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .elementor-field-group.elementor-field-type-submit {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end; }
  .elementor-field-group .elementor-field-textual {
    width: 100%;
    max-width: 100%;
    border: 1px solid #818a91;
    background-color: transparent;
    color: #373a3c;
    vertical-align: middle;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }
    .elementor-field-group .elementor-field-textual:focus {
      -webkit-box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1) inset;
              box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1) inset;
      outline: 0; }
    .elementor-field-group .elementor-field-textual::-webkit-input-placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
    .elementor-field-group .elementor-field-textual:-ms-input-placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
    .elementor-field-group .elementor-field-textual::-moz-placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
    .elementor-field-group .elementor-field-textual:-moz-placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
    .elementor-field-group .elementor-field-textual::-ms-input-placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
    .elementor-field-group .elementor-field-textual::placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
  .elementor-field-group .elementor-select-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    width: 100%; }
    .elementor-field-group .elementor-select-wrapper select {
      appearance: none;
      -webkit-appearance: none;
      -moz-appearance: none;
      color: inherit;
      font-size: inherit;
      font-family: inherit;
      font-weight: inherit;
      font-style: inherit;
      text-transform: inherit;
      letter-spacing: inherit;
      line-height: inherit;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
      padding-left: 20px; }
    .elementor-field-group .elementor-select-wrapper:before {
      content: '\e92a';
      font-family: 'eicons';
      font-size: 15px;
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      left: 10px;
      pointer-events: none;
      text-shadow: 0 0 3px rgba(0, 0, 0, 0.3); }
  .elementor-field-group.elementor-field-type-select-multiple .elementor-select-wrapper:before {
    content: ''; }

.elementor-field-subgroup {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .elementor-field-subgroup .elementor-field-option label {
    display: inline-block; }
  .elementor-field-subgroup.elementor-subgroup-inline .elementor-field-option {
    padding-left: 10px; }
  .elementor-field-subgroup:not(.elementor-subgroup-inline) .elementor-field-option {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%; }

.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option input,
.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option label,
.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option input,
.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option label,
.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option input,
.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option label {
  display: inline; }

.elementor-field-label {
  cursor: pointer; }
  .elementor-mark-required .elementor-field-label:after {
    content: '*';
    color: red;
    padding-right: 0.2em; }

.elementor-field-textual {
  line-height: 1.4;
  font-size: 15px;
  min-height: 40px;
  padding: 5px 14px;
  -webkit-border-radius: 3px;
          border-radius: 3px; }
  .elementor-field-textual.elementor-size-xs {
    font-size: 13px;
    min-height: 33px;
    padding: 4px 12px;
    -webkit-border-radius: 2px;
            border-radius: 2px; }
  .elementor-field-textual.elementor-size-md {
    font-size: 16px;
    min-height: 47px;
    padding: 6px 16px;
    -webkit-border-radius: 4px;
            border-radius: 4px; }
  .elementor-field-textual.elementor-size-lg {
    font-size: 18px;
    min-height: 59px;
    padding: 7px 20px;
    -webkit-border-radius: 5px;
            border-radius: 5px; }
  .elementor-field-textual.elementor-size-xl {
    font-size: 20px;
    min-height: 72px;
    padding: 8px 24px;
    -webkit-border-radius: 6px;
            border-radius: 6px; }

.elementor-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%; }

.elementor-button-align-stretch .e-form__buttons__wrapper {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1; }
  .elementor-button-align-stretch .e-form__buttons__wrapper__button {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%; }

.elementor-button-align-center .elementor-field-type-submit,
.elementor-button-align-center .e-form__buttons {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.elementor-button-align-start .elementor-field-type-submit,
.elementor-button-align-start .e-form__buttons {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.elementor-button-align-end .elementor-field-type-submit,
.elementor-button-align-end .e-form__buttons {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start; }

.elementor-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
  -ms-flex-preferred-size: initial;
      flex-basis: initial; }

.elementor-button-align-center .e-form__buttons__wrapper, .elementor-button-align-start .e-form__buttons__wrapper, .elementor-button-align-end .e-form__buttons__wrapper {
  -webkit-box-flex: initial;
      -ms-flex-positive: initial;
          flex-grow: initial; }
  .elementor-button-align-center .e-form__buttons__wrapper, .elementor-button-align-center .e-form__buttons__wrapper__button, .elementor-button-align-start .e-form__buttons__wrapper, .elementor-button-align-start .e-form__buttons__wrapper__button, .elementor-button-align-end .e-form__buttons__wrapper, .elementor-button-align-end .e-form__buttons__wrapper__button {
    -ms-flex-preferred-size: initial;
        flex-basis: initial; }

@media screen and (max-width: 1024px) {
  .elementor-tablet-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%; }
  .elementor-tablet-button-align-stretch .e-form__buttons__wrapper {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }
    .elementor-tablet-button-align-stretch .e-form__buttons__wrapper__button {
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%; }
  .elementor-tablet-button-align-center .elementor-field-type-submit,
  .elementor-tablet-button-align-center .e-form__buttons {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .elementor-tablet-button-align-start .elementor-field-type-submit,
  .elementor-tablet-button-align-start .e-form__buttons {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
  .elementor-tablet-button-align-end .elementor-field-type-submit,
  .elementor-tablet-button-align-end .e-form__buttons {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
  .elementor-tablet-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-tablet-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-tablet-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
    -ms-flex-preferred-size: initial;
        flex-basis: initial; }
  .elementor-tablet-button-align-center .e-form__buttons__wrapper, .elementor-tablet-button-align-start .e-form__buttons__wrapper, .elementor-tablet-button-align-end .e-form__buttons__wrapper {
    -webkit-box-flex: initial;
        -ms-flex-positive: initial;
            flex-grow: initial; }
    .elementor-tablet-button-align-center .e-form__buttons__wrapper, .elementor-tablet-button-align-center .e-form__buttons__wrapper__button, .elementor-tablet-button-align-start .e-form__buttons__wrapper, .elementor-tablet-button-align-start .e-form__buttons__wrapper__button, .elementor-tablet-button-align-end .e-form__buttons__wrapper, .elementor-tablet-button-align-end .e-form__buttons__wrapper__button {
      -ms-flex-preferred-size: initial;
          flex-basis: initial; } }

@media screen and (max-width: 767px) {
  .elementor-mobile-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%; }
  .elementor-mobile-button-align-stretch .e-form__buttons__wrapper {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }
    .elementor-mobile-button-align-stretch .e-form__buttons__wrapper__button {
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%; }
  .elementor-mobile-button-align-center .elementor-field-type-submit,
  .elementor-mobile-button-align-center .e-form__buttons {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .elementor-mobile-button-align-start .elementor-field-type-submit,
  .elementor-mobile-button-align-start .e-form__buttons {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
  .elementor-mobile-button-align-end .elementor-field-type-submit,
  .elementor-mobile-button-align-end .e-form__buttons {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
  .elementor-mobile-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-mobile-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-mobile-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
    -ms-flex-preferred-size: initial;
        flex-basis: initial; }
  .elementor-mobile-button-align-center .e-form__buttons__wrapper, .elementor-mobile-button-align-start .e-form__buttons__wrapper, .elementor-mobile-button-align-end .e-form__buttons__wrapper {
    -webkit-box-flex: initial;
        -ms-flex-positive: initial;
            flex-grow: initial; }
    .elementor-mobile-button-align-center .e-form__buttons__wrapper, .elementor-mobile-button-align-center .e-form__buttons__wrapper__button, .elementor-mobile-button-align-start .e-form__buttons__wrapper, .elementor-mobile-button-align-start .e-form__buttons__wrapper__button, .elementor-mobile-button-align-end .e-form__buttons__wrapper, .elementor-mobile-button-align-end .e-form__buttons__wrapper__button {
      -ms-flex-preferred-size: initial;
          flex-basis: initial; } }

.elementor-error .elementor-field {
  border-color: #d9534f; }

.elementor-error .help-inline {
  color: #d9534f;
  font-size: 0.9em; }

.elementor-message {
  margin: 10px 0;
  font-size: 1em;
  line-height: 1; }
  .elementor-message:before {
    content: "\e90e";
    display: inline-block;
    font-family: eicons;
    font-weight: normal;
    font-style: normal;
    vertical-align: middle;
    margin-left: 5px; }
  .elementor-message.elementor-message-danger {
    color: #d9534f; }
    .elementor-message.elementor-message-danger:before {
      content: "\e87f"; }
  .elementor-message.form-message-success {
    color: #5cb85c; }

.elementor-form .elementor-button {
  padding-top: 0;
  padding-bottom: 0;
  border: none; }
  .elementor-form .elementor-button > span {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .elementor-form .elementor-button.elementor-size-xs {
    min-height: 33px; }
  .elementor-form .elementor-button.elementor-size-sm {
    min-height: 40px; }
  .elementor-form .elementor-button.elementor-size-md {
    min-height: 47px; }
  .elementor-form .elementor-button.elementor-size-lg {
    min-height: 59px; }
  .elementor-form .elementor-button.elementor-size-xl {
    min-height: 72px; }

.elementor-element .elementor-widget-container {
  -webkit-transition: background 0.3s, border 0.3s, -webkit-border-radius 0.3s, -webkit-box-shadow 0.3s;
  transition: background 0.3s, border 0.3s, -webkit-border-radius 0.3s, -webkit-box-shadow 0.3s;
  -o-transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;
  transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;
  transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s, -webkit-border-radius 0.3s, -webkit-box-shadow 0.3s; }

.elementor-button {
  display: inline-block;
  line-height: 1;
  background-color: #818a91;
  font-size: 15px;
  padding: 12px 24px;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  color: #fff;
  fill: #fff;
  text-align: center;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s; }
  .elementor-button:hover, .elementor-button:focus, .elementor-button:visited {
    color: #fff; }
  .elementor-button-content-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .elementor-button-icon {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5; }
    .elementor-button-icon svg {
      width: 1em;
      height: auto; }
    .elementor-button-icon .e-font-icon-svg {
      height: 1em; }
  .elementor-button-text {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -webkit-box-ordinal-group: 11;
        -ms-flex-order: 10;
            order: 10;
    display: inline-block; }
  .elementor-button.elementor-size-xs {
    font-size: 13px;
    padding: 10px 20px;
    -webkit-border-radius: 2px;
            border-radius: 2px; }
  .elementor-button.elementor-size-md {
    font-size: 16px;
    padding: 15px 30px;
    -webkit-border-radius: 4px;
            border-radius: 4px; }
  .elementor-button.elementor-size-lg {
    font-size: 18px;
    padding: 20px 40px;
    -webkit-border-radius: 5px;
            border-radius: 5px; }
  .elementor-button.elementor-size-xl {
    font-size: 20px;
    padding: 25px 50px;
    -webkit-border-radius: 6px;
            border-radius: 6px; }
  .elementor-button .elementor-align-icon-right {
    margin-left: 5px;
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5; }
  .elementor-button .elementor-align-icon-left {
    margin-right: 5px;
    -webkit-box-ordinal-group: 16;
        -ms-flex-order: 15;
            order: 15; }
  .elementor-button span {
    text-decoration: inherit; }

/* TODO: REMOVE THIS EXCEPTION AFTER PRO 2.8 RELEASES */
.elementor-menu-cart__toggle .elementor-button-icon {
  -webkit-box-ordinal-group: 16;
      -ms-flex-order: 15;
          order: 15; }

.elementor-element.elementor-button-info .elementor-button {
  background-color: #5bc0de; }

.elementor-element.elementor-button-success .elementor-button {
  background-color: #5cb85c; }

.elementor-element.elementor-button-warning .elementor-button {
  background-color: #f0ad4e; }

.elementor-element.elementor-button-danger .elementor-button {
  background-color: #d9534f; }

.elementor-widget-button .elementor-button .elementor-button-info {
  background-color: #5bc0de; }

.elementor-widget-button .elementor-button .elementor-button-success {
  background-color: #5cb85c; }

.elementor-widget-button .elementor-button .elementor-button-warning {
  background-color: #f0ad4e; }

.elementor-widget-button .elementor-button .elementor-button-danger {
  background-color: #d9534f; }

.elementor-tab-title a {
  color: inherit; }

.elementor-view-stacked .elementor-icon {
  padding: .5em;
  background-color: #818a91;
  color: #fff;
  fill: #fff; }

.elementor-view-framed .elementor-icon {
  padding: .5em;
  color: #818a91;
  border: 3px solid #818a91;
  background-color: transparent; }

.elementor-icon {
  display: inline-block;
  line-height: 1;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  color: #818a91;
  font-size: 50px;
  text-align: center; }
  .elementor-icon:hover {
    color: #818a91; }
  .elementor-icon i, .elementor-icon svg {
    width: 1em;
    height: 1em;
    position: relative;
    display: block; }
    .elementor-icon i:before, .elementor-icon svg:before {
      position: absolute;
      left: 50%;
      -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
              transform: translateX(-50%); }
  .elementor-icon i.fad {
    width: initial; }

.elementor-shape-circle .elementor-icon {
  -webkit-border-radius: 50%;
          border-radius: 50%; }

.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -ms-touch-action: pan-y;
      touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block; }
  .slick-track:before, .slick-track:after {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  .elementor-slick-slider[dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

.elementor-slick-slider .slick-loading .slick-list {
  background: #fff; }
  .elementor-slick-slider .slick-loading .slick-list:after {
    content: '\e8fb';
    font-family: eicons;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    -webkit-animation: fa-spin 2s infinite linear;
            animation: fa-spin 2s infinite linear;
    font-size: 25px;
    color: #a4afb7; }

.elementor-slick-slider .slick-prev,
.elementor-slick-slider .slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 50%;
  display: block;
  width: 20px;
  padding: 0;
  -webkit-transform: translate(0, -50%);
      -ms-transform: translate(0, -50%);
          transform: translate(0, -50%);
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent; }
  .elementor-slick-slider .slick-prev:hover, .elementor-slick-slider .slick-prev:focus,
  .elementor-slick-slider .slick-next:hover,
  .elementor-slick-slider .slick-next:focus {
    color: transparent;
    outline: none;
    background: transparent; }
    .elementor-slick-slider .slick-prev:hover:before, .elementor-slick-slider .slick-prev:focus:before,
    .elementor-slick-slider .slick-next:hover:before,
    .elementor-slick-slider .slick-next:focus:before {
      opacity: 1; }
  .elementor-slick-slider .slick-prev.slick-disabled:before,
  .elementor-slick-slider .slick-next.slick-disabled:before {
    opacity: .25; }
  .elementor-slick-slider .slick-prev:before,
  .elementor-slick-slider .slick-next:before {
    font-family: eicons;
    font-size: 35px;
    line-height: 1;
    opacity: .75;
    color: white;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }

.elementor-slick-slider .slick-prev {
  left: -25px; }
  [dir="rtl"] .elementor-slick-slider .slick-prev {
    left: auto;
    right: -25px; }
  .elementor-slick-slider .slick-prev:before {
    content: '\e89f'; }
    [dir="rtl"] .elementor-slick-slider .slick-prev:before {
      content: '\e89e'; }

.elementor-slick-slider .slick-next {
  right: -25px; }
  [dir="rtl"] .elementor-slick-slider .slick-next {
    left: -25px;
    right: auto; }
  .elementor-slick-slider .slick-next:before {
    content: '\e89e'; }
    [dir="rtl"] .elementor-slick-slider .slick-next:before {
      content: '\e89f'; }

.elementor-slick-slider .slick-dotted.slick-slider {
  margin-bottom: 30px; }

.elementor-slick-slider ul.slick-dots {
  position: absolute;
  bottom: -25px;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1; }
  .elementor-slick-slider ul.slick-dots li {
    position: relative;
    display: inline-block;
    width: 20px;
    height: 20px;
    margin: 0;
    padding: 0;
    cursor: pointer; }
    .elementor-slick-slider ul.slick-dots li button {
      font-size: 0;
      line-height: 0;
      display: block;
      width: 20px;
      height: 20px;
      padding: 5px;
      cursor: pointer;
      color: transparent;
      border: 0;
      outline: none;
      background: transparent; }
      .elementor-slick-slider ul.slick-dots li button:hover, .elementor-slick-slider ul.slick-dots li button:focus {
        outline: none; }
        .elementor-slick-slider ul.slick-dots li button:hover:before, .elementor-slick-slider ul.slick-dots li button:focus:before {
          opacity: 1; }
      .elementor-slick-slider ul.slick-dots li button:before {
        font-family: eicons;
        font-size: 6px;
        line-height: 20px;
        position: absolute;
        top: 0;
        left: 0;
        width: 20px;
        height: 20px;
        content: '\e914';
        text-align: center;
        opacity: .25;
        color: black;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
    .elementor-slick-slider ul.slick-dots li.slick-active button:before {
      opacity: .75;
      color: black; }

.elementor-slick-slider .slick-arrows-inside .slick-prev {
  left: 20px; }
  [dir="rtl"] .elementor-slick-slider .slick-arrows-inside .slick-prev {
    left: auto;
    right: 20px; }

.elementor-slick-slider .slick-arrows-inside .slick-next {
  right: 20px; }
  [dir="rtl"] .elementor-slick-slider .slick-arrows-inside .slick-next {
    left: 20px;
    right: auto; }

.elementor-slick-slider .slick-dots-inside .slick-dots {
  bottom: 5px; }

.elementor-slick-slider .slick-dots-inside.slick-dotted.slick-slider {
  margin-bottom: 0; }

.elementor-slick-slider .slick-slider .slick-prev,
.elementor-slick-slider .slick-slider .slick-next {
  z-index: 1; }

.elementor-slick-slider .slick-slide img {
  margin: auto; }

/**
 * Swiper 3.4.2
 * Customized by Elementor team
 */
.swiper-container {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  /* Fix of Webkit flickering */
  z-index: 1; }
  .swiper-container .swiper-slide figure {
    line-height: 0; }
  .swiper-container .elementor-lightbox-content-source {
    display: none; }

.swiper-container-no-flexbox .swiper-slide {
  float: left; }

.swiper-container-vertical > .swiper-wrapper {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  -o-transition-property: transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-box-sizing: content-box;
          box-sizing: content-box; }

.swiper-container-android .swiper-slide, .swiper-wrapper {
  -webkit-transform: translate3d(0px, 0, 0);
          transform: translate3d(0px, 0, 0); }

.swiper-container-multirow > .swiper-wrapper {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }

.swiper-container-free-mode > .swiper-wrapper {
  -webkit-transition-timing-function: ease-out;
       -o-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  margin: 0 auto; }

.swiper-slide {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative; }

/* Auto Height */
.swiper-container-autoheight {
  height: auto; }
  .swiper-container-autoheight .swiper-slide {
    height: auto; }
  .swiper-container-autoheight .swiper-wrapper {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-transition-property: height, -webkit-transform;
    transition-property: height, -webkit-transform;
    -o-transition-property: transform, height;
    transition-property: transform, height;
    transition-property: transform, height, -webkit-transform; }

/* a11y */
.swiper-container .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000; }

/* IE10 Windows Phone 8 Fixes */
.swiper-wp8-horizontal {
  -ms-touch-action: pan-y;
      touch-action: pan-y; }

.swiper-wp8-vertical {
  -ms-touch-action: pan-x;
      touch-action: pan-x; }

/* Arrows */
.swiper-button-prev, .swiper-button-next {
  position: absolute;
  top: 50%;
  width: 27px;
  height: 44px;
  margin-top: -22px;
  z-index: 10;
  cursor: pointer;
  -webkit-background-size: 27px 44px;
          background-size: 27px 44px;
  background: no-repeat center; }

.swiper-button-prev.swiper-button-disabled, .swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none; }

.swiper-button-prev, .swiper-container-rtl .swiper-button-next {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  left: 10px;
  right: auto; }

.swiper-button-prev.swiper-button-black, .swiper-container-rtl .swiper-button-next.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-prev.swiper-button-white, .swiper-container-rtl .swiper-button-next.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-next, .swiper-container-rtl .swiper-button-prev {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  right: 10px;
  left: auto; }

.swiper-button-next.swiper-button-black, .swiper-container-rtl .swiper-button-prev.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-next.swiper-button-white, .swiper-container-rtl .swiper-button-prev.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }

/* Pagination Styles */
.swiper-pagination {
  position: absolute;
  text-align: center;
  -webkit-transition: 300ms;
  -o-transition: 300ms;
  transition: 300ms;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  z-index: 10; }
  .swiper-pagination.swiper-pagination-hidden {
    opacity: 0; }

/* Common Styles */
.swiper-pagination-fraction, .swiper-pagination-custom, .swiper-container-horizontal > .swiper-pagination-bullets {
  bottom: 5px;
  left: 0;
  width: 100%; }

/* Bullets */
.swiper-pagination-bullet {
  width: 6px;
  height: 6px;
  display: inline-block;
  -webkit-border-radius: 50%;
          border-radius: 50%;
  background: #000;
  opacity: 0.2; }

.swiper-pagination-fraction {
  color: #000; }

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none; }

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer; }

.swiper-pagination-white .swiper-pagination-bullet {
  background: #fff; }

.swiper-pagination-bullet-active {
  opacity: 1; }

.swiper-pagination-white .swiper-pagination-bullet-active {
  background: #fff; }

.swiper-pagination-black .swiper-pagination-bullet-active {
  background: #000; }

.swiper-container-vertical > .swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  -webkit-transform: translate3d(0px, -50%, 0);
          transform: translate3d(0px, -50%, 0); }
  .swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 5px 0;
    display: block; }

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 6px; }

/* Progressbar */
.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, 0.25);
  position: absolute; }
  .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: #000;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    -webkit-transform: scale(0);
        -ms-transform: scale(0);
            transform: scale(0);
    -webkit-transform-origin: left top;
        -ms-transform-origin: left top;
            transform-origin: left top; }

.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  -webkit-transform-origin: right top;
      -ms-transform-origin: right top;
          transform-origin: right top; }

.swiper-container-horizontal > .swiper-pagination-progressbar {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0; }

.swiper-container-vertical > .swiper-pagination-progressbar {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0; }

.swiper-pagination-progressbar.swiper-pagination-white {
  background: rgba(255, 255, 255, 0.5); }
  .swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill {
    background: #fff; }

.swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill {
  background: #000; }

/* 3D Container */
.swiper-container-3d {
  -webkit-perspective: 1200px;
          perspective: 1200px; }
  .swiper-container-3d .swiper-wrapper, .swiper-container-3d .swiper-slide, .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top, .swiper-container-3d .swiper-slide-shadow-bottom, .swiper-container-3d .swiper-cube-shadow {
    -webkit-transform-style: preserve-3d;
            transform-style: preserve-3d; }
  .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top, .swiper-container-3d .swiper-slide-shadow-bottom {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10; }
  .swiper-container-3d .swiper-slide-shadow-left {
    background-image: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
    background-image: -webkit-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: -o-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }
  .swiper-container-3d .swiper-slide-shadow-right {
    background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
    background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }
  .swiper-container-3d .swiper-slide-shadow-top {
    background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
    background-image: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: -o-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }
  .swiper-container-3d .swiper-slide-shadow-bottom {
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
    background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: -o-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

/* Coverflow */
.swiper-container-coverflow .swiper-wrapper, .swiper-container-flip .swiper-wrapper {
  /* Windows 8 IE 10 fix */
  -ms-perspective: 1200px; }

/* Cube + Flip */
.swiper-container-cube, .swiper-container-flip {
  overflow: visible; }

.swiper-container-cube .swiper-slide, .swiper-container-flip .swiper-slide {
  pointer-events: none;
  z-index: 1; }

.swiper-container-cube .swiper-slide .swiper-slide, .swiper-container-flip .swiper-slide .swiper-slide {
  pointer-events: none; }

.swiper-container-cube .swiper-slide-active, .swiper-container-flip .swiper-slide-active, .swiper-container-cube .swiper-slide-active .swiper-slide-active, .swiper-container-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto; }

.swiper-container-cube .swiper-slide-shadow-top, .swiper-container-flip .swiper-slide-shadow-top, .swiper-container-cube .swiper-slide-shadow-bottom, .swiper-container-flip .swiper-slide-shadow-bottom, .swiper-container-cube .swiper-slide-shadow-left, .swiper-container-flip .swiper-slide-shadow-left, .swiper-container-cube .swiper-slide-shadow-right, .swiper-container-flip .swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

/* Cube */
.swiper-container-cube .swiper-slide {
  visibility: hidden;
  -webkit-transform-origin: 0 0;
      -ms-transform-origin: 0 0;
          transform-origin: 0 0;
  width: 100%;
  height: 100%; }

.swiper-container-cube.swiper-container-rtl .swiper-slide {
  -webkit-transform-origin: 100% 0;
      -ms-transform-origin: 100% 0;
          transform-origin: 100% 0; }

.swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-next, .swiper-container-cube .swiper-slide-prev, .swiper-container-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible; }

.swiper-container-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0.6;
  -webkit-filter: blur(50px);
  filter: blur(50px);
  z-index: 0; }

/* Fade */
.swiper-container-fade.swiper-container-free-mode .swiper-slide {
  -webkit-transition-timing-function: ease-out;
       -o-transition-timing-function: ease-out;
          transition-timing-function: ease-out; }

.swiper-container-fade .swiper-slide {
  pointer-events: none;
  -webkit-transition-property: opacity;
  -o-transition-property: opacity;
  transition-property: opacity; }
  .swiper-container-fade .swiper-slide .swiper-slide {
    pointer-events: none; }

.swiper-container-fade .swiper-slide-active {
  pointer-events: auto; }
  .swiper-container-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto; }

.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center; }
  .swiper-zoom-container > img, .swiper-zoom-container > svg, .swiper-zoom-container > canvas {
    max-width: 100%;
    max-height: 100%;
    -o-object-fit: contain;
       object-fit: contain; }

/* Scrollbar */
.swiper-scrollbar {
  -webkit-border-radius: 10px;
          border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, 0.1); }

.swiper-container-horizontal > .swiper-scrollbar {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 50;
  height: 5px;
  width: 98%; }

.swiper-container-vertical > .swiper-scrollbar {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%; }

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  -webkit-border-radius: 10px;
          border-radius: 10px;
  left: 0;
  top: 0; }

.swiper-scrollbar-cursor-drag {
  cursor: move; }

.elementor-pagination-position-outside .swiper-container {
  padding-bottom: 30px; }

.elementor-pagination-position-outside .elementor-swiper-button {
  top: calc(50% - 30px / 2); }

.elementor-swiper {
  position: relative; }

.elementor-main-swiper {
  position: static; }

.elementor-arrows-position-outside .swiper-container {
  width: calc(100% - 60px); }

.elementor-arrows-position-outside .elementor-swiper-button-prev {
  left: 0; }

.elementor-arrows-position-outside .elementor-swiper-button-next {
  right: 0; }

.swiper-image-stretch .swiper-slide .swiper-slide-image {
  width: 100%; }

.elementor-swiper-button {
  position: absolute;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  z-index: 1;
  cursor: pointer;
  font-size: 25px;
  color: rgba(238, 238, 238, 0.9);
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%); }
  .elementor-swiper-button-prev {
    left: 10px; }
  .elementor-swiper-button-next {
    right: 10px; }
  .elementor-swiper-button.swiper-button-disabled {
    opacity: 0.3; }

.swiper-container-cube .elementor-swiper-button {
  -webkit-transform: translate3d(0, -50%, 1px);
          transform: translate3d(0, -50%, 1px); }

/* Preloader */
.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  -webkit-transform-origin: 50%;
      -ms-transform-origin: 50%;
          transform-origin: 50%;
  -webkit-animation: swiper-preloader-spin 1s steps(12, end) infinite;
          animation: swiper-preloader-spin 1s steps(12, end) infinite; }
  .swiper-lazy-preloader:after {
    display: block;
    content: "";
    width: 100%;
    height: 100%;
    -webkit-background-size: 100% 100%;
            background-size: 100%;
    background: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%236c6c6c'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat 50%; }

.swiper-lazy-preloader-white:after {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%23fff'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }

@-webkit-keyframes swiper-preloader-spin {
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

@keyframes swiper-preloader-spin {
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

.elementor-lightbox {
  --lightbox-ui-color: rgba(238, 238, 238, 0.9);
  --lightbox-ui-color-hover: #fff;
  --lightbox-text-color: var(--lightbox-ui-color);
  --lightbox-header-icons-size: 20px;
  --lightbox-navigation-icons-size: 25px; }
  .elementor-lightbox .dialog-header {
    display: none; }
  .elementor-lightbox .dialog-widget-content {
    background: none;
    -webkit-box-shadow: none;
            box-shadow: none;
    width: 100%;
    height: 100%; }
  .elementor-lightbox .dialog-message {
    -webkit-animation-duration: .3s;
            animation-duration: .3s; }
    .elementor-lightbox .dialog-message:not(.elementor-fit-aspect-ratio) {
      height: 100%; }
    .elementor-lightbox .dialog-message.dialog-lightbox-message {
      padding: 0; }
  .elementor-lightbox .dialog-lightbox-close-button {
    cursor: pointer;
    position: absolute;
    font-size: var(--lightbox-header-icons-size);
    left: 0.75em;
    margin-top: 13px;
    padding: .25em;
    z-index: 2;
    line-height: 1; }
  .elementor-lightbox .dialog-lightbox-close-button,
  .elementor-lightbox .elementor-swiper-button {
    color: var(--lightbox-ui-color);
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    opacity: 1; }
    .elementor-lightbox .dialog-lightbox-close-button:hover,
    .elementor-lightbox .elementor-swiper-button:hover {
      color: var(--lightbox-ui-color-hover); }
  .elementor-lightbox .swiper-container {
    height: 100%; }
  .elementor-lightbox .elementor-lightbox-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative;
    padding: 70px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    height: 100%;
    margin: auto; }
    @media (max-width: 767px) {
      .elementor-lightbox .elementor-lightbox-item {
        padding: 70px 0; } }
  .elementor-lightbox .elementor-lightbox-image {
    max-height: 100%;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none; }
    .elementor-lightbox .elementor-lightbox-image, .elementor-lightbox .elementor-lightbox-image:hover {
      opacity: 1;
      -webkit-filter: none;
              filter: none;
      border: none; }
  .elementor-lightbox .elementor-lightbox-image, .elementor-lightbox .elementor-video-container {
    -webkit-box-shadow: 0 0 30px rgba(0, 0, 0, 0.3), 0 0 8px -5px rgba(0, 0, 0, 0.3);
            box-shadow: 0 0 30px rgba(0, 0, 0, 0.3), 0 0 8px -5px rgba(0, 0, 0, 0.3);
    -webkit-border-radius: 2px;
            border-radius: 2px; }
  .elementor-lightbox .elementor-video-container {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }
    @media (min-width: 1025px) {
      .elementor-lightbox .elementor-video-container {
        width: 75%; } }
    @media (max-width: 1024px) {
      .elementor-lightbox .elementor-video-container {
        width: 100%; } }
  @media (min-width: 768px) and (max-width: 1024px) {
    .elementor-lightbox .elementor-aspect-ratio-916 .elementor-video-container {
      width: 70%; } }
  .elementor-lightbox .elementor-swiper-button:focus {
    outline-width: 1px; }
  .elementor-lightbox .elementor-swiper-button-prev, .elementor-lightbox .elementor-swiper-button-next {
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 15%;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: var(--lightbox-navigation-icons-size); }
  .elementor-lightbox .elementor-swiper-button-prev {
    left: 0; }
  .elementor-lightbox .elementor-swiper-button-next {
    right: 0; }
  @media (max-width: 767px) {
    .elementor-lightbox .elementor-swiper-button:focus {
      outline: none; }
    .elementor-lightbox .elementor-swiper-button-prev, .elementor-lightbox .elementor-swiper-button-next {
      width: 20%; }
      .elementor-lightbox .elementor-swiper-button-prev i, .elementor-lightbox .elementor-swiper-button-next i {
        padding: 10px;
        background-color: rgba(0, 0, 0, 0.5); }
    .elementor-lightbox .elementor-swiper-button-prev {
      left: 0;
      -webkit-box-pack: start;
          -ms-flex-pack: start;
              justify-content: flex-start; }
    .elementor-lightbox .elementor-swiper-button-next {
      right: 0;
      -webkit-box-pack: end;
          -ms-flex-pack: end;
              justify-content: flex-end; } }

.elementor-slideshow__counter {
  color: currentColor;
  font-size: .75em;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content; }

.elementor-slideshow__header, .elementor-slideshow__footer {
  position: absolute;
  left: 0;
  width: 100%;
  padding: 15px 20px;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s; }

.elementor-slideshow__footer {
  color: var(--lightbox-text-color); }

.elementor-slideshow__header {
  color: var(--lightbox-ui-color);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  font-size: var(--lightbox-header-icons-size);
  padding-right: 1em;
  padding-left: 2.6em;
  top: 0;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  z-index: 10; }
  .elementor-slideshow__header > i {
    font-size: inherit;
    cursor: pointer;
    padding: .25em;
    margin: 0 .35em; }
    .elementor-slideshow__header > i:hover {
      color: var(--lightbox-ui-color-hover); }
  .elementor-slideshow__header .elementor-slideshow__counter {
    margin-left: auto; }
  .elementor-slideshow__header .elementor-icon-share {
    z-index: 5; }

.elementor-slideshow__share-menu {
  background-color: rgba(0, 0, 0, 0);
  width: 0;
  height: 0;
  position: absolute;
  overflow: hidden;
  -webkit-transition: background-color 400ms;
  -o-transition: background-color 400ms;
  transition: background-color 400ms; }
  .elementor-slideshow__share-menu .elementor-slideshow__share-links a {
    color: #2C2C2C; }

.elementor-slideshow__share-links {
  display: block;
  position: absolute;
  min-width: 200px;
  left: 2.8em;
  top: 3em;
  background-color: #fff;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  padding: 14px 20px;
  -webkit-transform: scale(0);
      -ms-transform: scale(0);
          transform: scale(0);
  opacity: 0;
  -webkit-transform-origin: 90% 10%;
      -ms-transform-origin: 90% 10%;
          transform-origin: 90% 10%;
  -webkit-transition: all 250ms 100ms;
  -o-transition: all 250ms 100ms;
  transition: all 250ms 100ms;
  -webkit-box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
          box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3); }
  .elementor-slideshow__share-links a {
    text-align: right;
    color: #55595c;
    font-size: 12px;
    line-height: 2.5;
    display: block;
    opacity: 0;
    -webkit-transition: opacity 500ms 100ms;
    -o-transition: opacity 500ms 100ms;
    transition: opacity 500ms 100ms; }
    .elementor-slideshow__share-links a:hover {
      color: #000; }
    .elementor-slideshow__share-links a i {
      font-size: 1.25em;
      margin-left: 0.75em; }
  .elementor-slideshow__share-links:before {
    content: '';
    display: block;
    position: absolute;
    top: 1px;
    left: 0.5em;
    border: .45em solid;
    border-color: transparent transparent #fff transparent;
    -webkit-transform: translateY(-100%) scaleX(0.7);
        -ms-transform: translateY(-100%) scaleX(0.7);
            transform: translateY(-100%) scaleX(0.7); }

.elementor-slideshow__footer {
  bottom: 0;
  z-index: 5;
  position: fixed; }

.elementor-slideshow__title, .elementor-slideshow__description {
  margin: 0; }

.elementor-slideshow__title {
  font-size: 16px;
  font-weight: bold; }

.elementor-slideshow__description {
  font-size: 14px; }

.elementor-slideshow--ui-hidden .elementor-slideshow__header, .elementor-slideshow--ui-hidden .elementor-slideshow__footer {
  opacity: 0;
  pointer-events: none; }

.elementor-slideshow--ui-hidden .elementor-swiper-button-prev, .elementor-slideshow--ui-hidden .elementor-swiper-button-next {
  opacity: 0; }

.elementor-slideshow--fullscreen-mode .elementor-video-container {
  width: 100%; }

.elementor-slideshow--zoom-mode .elementor-slideshow__header, .elementor-slideshow--zoom-mode .elementor-slideshow__footer {
  background-color: rgba(0, 0, 0, 0.5); }

.elementor-slideshow--zoom-mode .elementor-swiper-button-prev, .elementor-slideshow--zoom-mode .elementor-swiper-button-next {
  opacity: 0;
  pointer-events: none; }

.elementor-slideshow--share-mode .elementor-slideshow__share-menu {
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  opacity: 1;
  cursor: default;
  background-color: rgba(0, 0, 0, 0.5); }

.elementor-slideshow--share-mode .elementor-slideshow__share-links {
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1); }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links, .elementor-slideshow--share-mode .elementor-slideshow__share-links a {
    opacity: 1; }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-twitter {
    color: #1DA1F2; }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-facebook {
    color: #3b5998; }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-pinterest {
    color: #bd081c; }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-download-bold {
    color: #a4afb7; }

.elementor-slideshow--share-mode .eicon-share-arrow {
  z-index: 2; }

.animated {
  -webkit-animation-duration: 1.25s;
          animation-duration: 1.25s; }
  .animated.animated-slow {
    -webkit-animation-duration: 2s;
            animation-duration: 2s; }
  .animated.animated-fast {
    -webkit-animation-duration: .75s;
            animation-duration: .75s; }
  .animated.infinite {
    -webkit-animation-iteration-count: infinite;
            animation-iteration-count: infinite; }
  .animated.reverse {
    animation-direction: reverse;
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards; }

@media (prefers-reduced-motion: reduce) {
  .animated {
    -webkit-animation: none;
            animation: none; } }

.elementor-shape {
  overflow: hidden;
  position: absolute;
  left: 0;
  width: 100%;
  line-height: 0;
  direction: ltr;
  /*
	 * @TODO: The `z-index: -1` rules below are temporary fixes for Chrome 85 issue.
	 *   It will be removed in a future version of Chrome.
	 */ }
  .elementor-shape-top {
    top: -1px; }
    .elementor-shape-top:not([data-negative="false"]) svg {
      z-index: -1; }
  .elementor-shape-bottom {
    bottom: -1px; }
    .elementor-shape-bottom:not([data-negative="true"]) svg {
      z-index: -1; }
  .elementor-shape[data-negative="false"].elementor-shape-bottom {
    -webkit-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
            transform: rotate(180deg); }
  .elementor-shape[data-negative="true"].elementor-shape-top {
    -webkit-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
            transform: rotate(180deg); }
  .elementor-shape svg {
    display: block;
    width: calc(100% + 1.3px);
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%); }
  .elementor-shape .elementor-shape-fill {
    fill: #fff;
    -webkit-transform-origin: center;
        -ms-transform-origin: center;
            transform-origin: center;
    -webkit-transform: rotateY(0deg);
            transform: rotateY(0deg); }

#wp-admin-bar-elementor_edit_page .ab-submenu .ab-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 200px; }

#wp-admin-bar-elementor_edit_page .elementor-edit-link-title {
  white-space: nowrap;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  overflow: hidden;
  width: 100%; }

#wp-admin-bar-elementor_edit_page .elementor-edit-link-type {
  background: #55595c;
  font-size: 11px;
  line-height: 9px;
  margin-top: 6px;
  padding: 4px 8px;
  -webkit-border-radius: 3px;
          border-radius: 3px; }

.page-template-elementor_canvas.elementor-page:before {
  display: none; }

.elementor-post__thumbnail__link {
  -webkit-transition: none;
  -o-transition: none;
  transition: none; }

#left-area ul.elementor-icon-list-items,
.elementor .elementor-element ul.elementor-icon-list-items,
.elementor-edit-area .elementor-element ul.elementor-icon-list-items {
  padding: 0; }

#wpadminbar * {
  font-style: normal; }

.e--ua-appleWebkit.rtl {
  --flex-right: flex-start; }

.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-right,
.e--ua-appleWebkit .elementor-share-buttons--align-right {
  --justify-content: var(--flex-right, flex-end); }

.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-center,
.e--ua-appleWebkit .elementor-share-buttons--align-center {
  --justify-content: center; }

.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-justify .elementor-grid {
  width: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: var(--justify-content, space-between);
      -ms-flex-pack: var(--justify-content, space-between);
          justify-content: var(--justify-content, space-between);
  margin-left: calc(-0.5 * var(--grid-column-gap));
  margin-right: calc(-0.5 * var(--grid-column-gap)); }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-justify .elementor-grid-item {
    margin-left: calc(0.5 * var(--grid-column-gap));
    margin-right: calc(0.5 * var(--grid-column-gap)); }

.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid {
  display: inline-block; }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid-item {
    margin-left: 0;
    margin-right: 0; }

@media (max-width: 1024px) {
  .e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-tablet-right,
  .e--ua-appleWebkit .elementor-share-buttons-tablet--align-right {
    --justify-content: var(--flex-right, flex-end); }
  .e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-tablet-center,
  .e--ua-appleWebkit .elementor-share-buttons-tablet--align-center {
    --justify-content: center; }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-justify .elementor-grid {
    width: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: var(--justify-content, space-between);
        -ms-flex-pack: var(--justify-content, space-between);
            justify-content: var(--justify-content, space-between);
    margin-left: calc(-0.5 * var(--grid-column-gap));
    margin-right: calc(-0.5 * var(--grid-column-gap)); }
    .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-justify .elementor-grid-item {
      margin-left: calc(0.5 * var(--grid-column-gap));
      margin-right: calc(0.5 * var(--grid-column-gap)); }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid {
    display: inline-block; }
    .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid-item {
      margin-left: 0;
      margin-right: 0; } }

@media (max-width: 767px) {
  .e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-mobile-right,
  .e--ua-appleWebkit .elementor-share-buttons-mobile--align-right {
    --justify-content: var(--flex-right, flex-end); }
  .e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-mobile-center,
  .e--ua-appleWebkit .elementor-share-buttons-mobile--align-center {
    --justify-content: center; }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-justify .elementor-grid {
    width: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: var(--justify-content, space-between);
        -ms-flex-pack: var(--justify-content, space-between);
            justify-content: var(--justify-content, space-between);
    margin-left: calc(-0.5 * var(--grid-column-gap));
    margin-right: calc(-0.5 * var(--grid-column-gap)); }
    .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-justify .elementor-grid-item {
      margin-left: calc(0.5 * var(--grid-column-gap));
      margin-right: calc(0.5 * var(--grid-column-gap)); }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid {
    display: inline-block; }
    .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid-item {
      margin-left: 0;
      margin-right: 0; } }

@media (max-width: 767px) {
  .elementor .elementor-hidden-mobile {
    display: none; }
  .elementor .elementor-hidden-phone {
    display: none; } }

@media (min-width: -1px) and (max-width: -1px) {
  .elementor .elementor-hidden-mobile_extra {
    display: none; } }

@media (min-width: 768px) and (max-width: 1024px) {
  .elementor .elementor-hidden-tablet {
    display: none; } }

@media (min-width: -1px) and (max-width: -1px) {
  .elementor .elementor-hidden-tablet_extra {
    display: none; } }

@media (min-width: -1px) and (max-width: -1px) {
  .elementor .elementor-hidden-laptop {
    display: none; } }

@media (min-width: 1025px) and (max-width: 99999px) {
  .elementor .elementor-hidden-desktop {
    display: none; } }

@media (min-width: -1px) {
  .elementor .elementor-hidden-widescreen {
    display: none; } }

.elementor-widget-text-path {
  font-size: 20px;
  text-align: var(--alignment, right); }
  .elementor-widget-text-path svg {
    width: var(--width);
    max-width: 100%;
    height: auto;
    overflow: visible;
    word-spacing: var(--word-spacing);
    -webkit-transform: rotate(var(--rotate, 0)) scaleX(var(--scale-x, 1)) scaleY(var(--scale-y, 1));
        -ms-transform: rotate(var(--rotate, 0)) scaleX(var(--scale-x, 1)) scaleY(var(--scale-y, 1));
            transform: rotate(var(--rotate, 0)) scaleX(var(--scale-x, 1)) scaleY(var(--scale-y, 1)); }
    .elementor-widget-text-path svg path {
      vector-effect: non-scaling-stroke;
      /* Prevent stroke size scaling when resizing the SVG. */
      fill: var(--path-fill, transparent);
      stroke: var(--stroke-color, transparent);
      stroke-width: var(--stroke-width, 1px);
      -webkit-transition: var(--stroke-transition) stroke, var(--stroke-transition) fill;
      -o-transition: var(--stroke-transition) stroke, var(--stroke-transition) fill;
      transition: var(--stroke-transition) stroke, var(--stroke-transition) fill; }
    .elementor-widget-text-path svg:hover path {
      --path-fill: var( --path-fill-hover );
      --stroke-color: var( --stroke-color-hover );
      --stroke-width: var( --stroke-width-hover ); }
    .elementor-widget-text-path svg text {
      --fill: var( --text-color );
      fill: var(--fill);
      direction: var(--direction, rtl);
      -webkit-transition: var(--transition) stroke, var(--transition) stroke-width, var(--transition) fill;
      -o-transition: var(--transition) stroke, var(--transition) stroke-width, var(--transition) fill;
      transition: var(--transition) stroke, var(--transition) stroke-width, var(--transition) fill; }
      .elementor-widget-text-path svg text:hover {
        --color: var( --text-color-hover, var( --text-color ) );
        --fill: var( --color );
        color: var(--color); }
/*# sourceMappingURL=frontend-lite-rtl.css.map */assets/css/app-base.css000064400000004124151327220410011036 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
:root {
  --color-box-shadow-color: rgba(0, 0, 0, 0.05); }

.eps-theme-dark {
  --color-box-shadow-color: rgba(0, 0, 0, 0.1); }

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0; }

@media screen and (min-width: 480px) {
  .text-start-sm {
    text-align: start; } }

@media screen and (min-width: 480px) {
  .text-center-sm {
    text-align: center; } }

@media screen and (min-width: 480px) {
  .text-end-sm {
    text-align: end; } }

@media screen and (min-width: 768px) {
  .text-start-md {
    text-align: start; } }

@media screen and (min-width: 768px) {
  .text-center-md {
    text-align: center; } }

@media screen and (min-width: 768px) {
  .text-end-md {
    text-align: end; } }

@media screen and (min-width: 1025px) {
  .text-start-lg {
    text-align: start; } }

@media screen and (min-width: 1025px) {
  .text-center-lg {
    text-align: center; } }

@media screen and (min-width: 1025px) {
  .text-end-lg {
    text-align: end; } }

@media screen and (min-width: 1440px) {
  .text-start-xl {
    text-align: start; } }

@media screen and (min-width: 1440px) {
  .text-center-xl {
    text-align: center; } }

@media screen and (min-width: 1440px) {
  .text-end-xl {
    text-align: end; } }

@media screen and (min-width: 1600px) {
  .text-start-xxl {
    text-align: start; } }

@media screen and (min-width: 1600px) {
  .text-center-xxl {
    text-align: center; } }

@media screen and (min-width: 1600px) {
  .text-end-xxl {
    text-align: end; } }

@-webkit-keyframes eps-animation-pop {
  from {
    -webkit-transform: scale(0.75);
            transform: scale(0.75);
    opacity: 0; }
  to {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1; } }

@keyframes eps-animation-pop {
  from {
    -webkit-transform: scale(0.75);
            transform: scale(0.75);
    opacity: 0; }
  to {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1; } }
/*# sourceMappingURL=app-base.css.map */assets/css/editor-preview-rtl.css000064400000337067151327220410013131 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
@charset "UTF-8";
.elementor-control-unit-1 {
  width: 27px; }

.elementor-control-unit-2 {
  width: 54px; }

.elementor-control-unit-3 {
  width: 81px; }

.elementor-control-unit-4 {
  width: 108px; }

.elementor-control-unit-5 {
  max-width: 400px;
  width: 52%; }

.elementor-tags-list {
  display: none;
  position: absolute;
  width: 260px;
  max-height: 300px;
  overflow: auto;
  padding-bottom: 5px;
  background-color: #fff;
  border: 1px solid #a4afb7;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  z-index: 10000; }
  .elementor-tags-list__group-title {
    color: #495157;
    font-weight: bold;
    font-size: 12px;
    padding: 10px 15px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .elementor-tags-list__group-title .eicon-info-circle {
      padding-left: 5px;
      color: #71d7f7;
      font-size: 14px; }
  .elementor-tags-list__item {
    font-size: 10px;
    padding: 6px 15px;
    cursor: pointer; }
    .elementor-tags-list__item:before {
      content: '>';
      font-size: 8px;
      padding-left: 5px; }
    .elementor-tags-list__item:hover {
      background-color: #e6e9ec; }
  .elementor-tags-list__teaser {
    border-top: 2px solid #d5dadf;
    padding-top: 4px;
    margin-top: 4px; }
    .elementor-tags-list__teaser-title {
      color: #6d7882; }
    .elementor-tags-list__teaser-text {
      padding: 2px 15px 8px;
      line-height: 1.5;
      font-size: 12px; }
    .elementor-tags-list__teaser-link {
      color: #93003c;
      text-decoration: underline;
      font-style: italic;
      font-weight: bold; }

.elementor-dynamic-cover {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 27px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }
  .elementor-dynamic-cover__title {
    padding: 0 8px;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    white-space: nowrap;
    -o-text-overflow: ellipsis;
       text-overflow: ellipsis;
    overflow: hidden; }
  .elementor-dynamic-cover__settings, .elementor-dynamic-cover__remove {
    color: #c2cbd2;
    cursor: pointer;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s; }
    .elementor-dynamic-cover__settings:hover, .elementor-dynamic-cover__remove:hover {
      color: #a4afb7; }
  .elementor-control-type-wysiwyg .elementor-dynamic-cover {
    margin-top: 10px; }

.elementor-tag-settings-popup {
  position: absolute;
  width: 260px;
  background-color: #e6e9ec;
  -webkit-box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.3);
          box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.3);
  z-index: 1; }
  .elementor-tag-settings-popup:before {
    content: '';
    position: absolute;
    top: -20px;
    right: 5px;
    border: 10px solid transparent;
    border-bottom-color: #fff; }
  .elementor-tag-settings-popup .elementor-control-type-section:first-child {
    margin: 0; }

.elementor-tag-controls-stack-empty {
  background-color: #fff;
  padding: 10px;
  font-size: 13px;
  text-align: center; }

.elementor-control-dynamic-switcher {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  height: 27px;
  cursor: pointer;
  border: 1px solid #d5dadf;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  background: #fff; }
  .elementor-control-dynamic-switcher.e-control-tool {
    height: 20px;
    border: 0; }
  .elementor-control-dynamic-switcher-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .elementor-control-dynamic-switcher .eicon-database {
    font-size: 12px; }

.elementor-control-dynamic-value .elementor-control-tag-area,
.elementor-control-dynamic-value .elementor-control-dynamic-switcher,
.elementor-control-dynamic-value .e-global__popover-toggle {
  display: none; }

.elementor-panel-box {
  margin-top: 10px;
  background-color: #fff; }

.elementor-panel-box-content {
  padding: 20px 20px 10px; }

.elementor-button {
  display: inline-block; }

.elementor-panel-alert {
  background-color: #fcfcfc;
  padding: 15px;
  border-right: 3px solid transparent;
  position: relative;
  font-size: 12px;
  font-weight: 300;
  font-style: italic;
  line-height: 1.5;
  text-align: right;
  -webkit-border-radius: 3px 0 0 3px;
          border-radius: 3px 0 0 3px;
  -webkit-box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.07);
          box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.07); }
  .elementor-panel-alert a {
    color: inherit; }
  .elementor-panel-alert.elementor-panel-alert-info {
    border-color: #71d7f7;
    background-color: #f3fcff; }
  .elementor-panel-alert.elementor-panel-alert-success {
    border-color: #39b54a; }
  .elementor-panel-alert.elementor-panel-alert-warning {
    border-color: #fcb92c; }
  .elementor-panel-alert.elementor-panel-alert-danger {
    border-color: #d72b3f; }

.elementor-label {
  display: inline;
  padding: .2em .6em .3em;
  font-size: 75%;
  font-weight: 700;
  line-height: 1;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  -webkit-border-radius: .25em;
          border-radius: .25em;
  text-transform: capitalize; }
  .elementor-label.elementor-label-default {
    background-color: #a4afb7; }
  .elementor-label.elementor-label-info {
    background-color: #5bc0de; }
  .elementor-label.elementor-label-success {
    background-color: #5cb85c; }
  .elementor-label.elementor-label-warning {
    background-color: #f0ad4e; }
  .elementor-label.elementor-label-danger {
    background-color: #d9534f; }

.elementor-descriptor, .elementor-control-field-description {
  font-size: 11px;
  font-style: italic;
  line-height: 1.4;
  color: #a4afb7; }

.elementor-controls-popover {
  display: none;
  position: absolute;
  -webkit-box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3);
          box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3);
  -webkit-border-radius: 3px;
          border-radius: 3px;
  left: 0;
  right: 0;
  margin: -4px auto 5px;
  padding-top: 15px;
  width: 90%;
  z-index: 10000;
  background-color: #fff; }
  .elementor-controls-popover:before {
    content: '';
    position: absolute;
    top: -16px;
    left: 22px;
    border: 8px solid transparent;
    border-bottom-color: #fff; }
  .elementor-controls-popover div.elementor-control {
    background-color: transparent; }
    .elementor-controls-popover div.elementor-control:before {
      content: none; }

#elementor-controls .pojo-widget-button-collapse {
  display: none; }

#elementor-panel-global .elementor-nerd-box .elementor-nerd-box-icon {
  margin-top: 20px; }

.elementor-control {
  --control-title-size: 12px;
  background-color: #fff;
  position: relative;
  padding: 0 20px 15px; }
  .elementor-control a {
    font-weight: 500;
    text-decoration: none;
    border-bottom: 1px dotted transparent;
    -webkit-transition: all ease-in-out .3s;
    -o-transition: all ease-in-out .3s;
    transition: all ease-in-out .3s; }
    .elementor-control a:hover {
      border-bottom-color: inherit; }
    .elementor-control a.elementor-responsive-switcher {
      border-bottom: 0; }
  .elementor-control .elementor-control-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
  .elementor-control .elementor-control-title {
    font-size: var(--control-title-size);
    line-height: 1;
    margin-left: 5px; }
  .elementor-control .elementor-control-spinner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .elementor-control.elementor-control-type-divider {
    padding: 0;
    background-color: transparent; }
    .elementor-control.elementor-control-type-divider .elementor-control-content {
      border-width: 0;
      border-color: #e6e9ec;
      border-style: solid;
      border-top-width: 1px;
      background-color: #ffffff;
      height: 15px; }
  .elementor-control.elementor-control-separator-default:not(.elementor-control-type-divider).elementor-control-wp {
    margin-top: 15px; }
    .elementor-control.elementor-control-separator-default:not(.elementor-control-type-divider).elementor-control-wp:before {
      content: '';
      height: 1px;
      display: block;
      margin-bottom: 15px;
      background-color: transparent; }
  .elementor-control.elementor-control-separator-before {
    padding-top: 15px; }
    .elementor-control.elementor-control-separator-before:before {
      content: '';
      position: absolute;
      height: 1px;
      width: 100%;
      top: 0;
      left: 0;
      background-color: #e6e9ec; }
  .elementor-control.elementor-control-separator-after:after {
    content: '';
    position: absolute;
    height: 1px;
    width: 100%;
    bottom: 0;
    left: 0;
    background-color: #e6e9ec; }
  .elementor-control.elementor-control-separator-after + .elementor-control-type-tabs + .elementor-control-separator-default, .elementor-control.elementor-control-separator-after:not(.elementor-hidden-control) + .elementor-control-separator-default {
    padding-top: 15px; }
  .elementor-control.elementor-control-deprecated {
    color: #b01b1b; }
    .elementor-control.elementor-control-deprecated .elementor-control-field-description {
      color: #b01b1b; }
  .elementor-control.elementor-control-hidden-label > * > .elementor-control-title, .elementor-control.elementor-control-hidden-label > * > * > .elementor-control-title {
    display: none; }
  .elementor-control.elementor-hidden-control {
    display: none; }
  .elementor-control.elementor-control-type-heading .elementor-control-title {
    font-weight: bold;
    margin: 0; }
  body:not(.elementor-device-widescreen) .elementor-control.elementor-control-responsive-widescreen {
    display: none; }
  body:not(.elementor-device-desktop) .elementor-control.elementor-control-responsive-desktop {
    display: none; }
  body:not(.elementor-device-laptop) .elementor-control.elementor-control-responsive-laptop {
    display: none; }
  body:not(.elementor-device-tablet_extra) .elementor-control.elementor-control-responsive-tablet_extra {
    display: none; }
  body:not(.elementor-device-tablet) .elementor-control.elementor-control-responsive-tablet {
    display: none; }
  body:not(.elementor-device-mobile_extra) .elementor-control.elementor-control-responsive-mobile_extra {
    display: none; }
  body:not(.elementor-device-mobile) .elementor-control.elementor-control-responsive-mobile {
    display: none; }
  .elementor-control.elementor-control-type-select .elementor-control-input-wrapper {
    position: relative; }
    .elementor-control.elementor-control-type-select .elementor-control-input-wrapper select {
      appearance: none;
      -webkit-appearance: none;
      -moz-appearance: none;
      font-size: 12px;
      font-family: inherit;
      font-weight: inherit;
      font-style: inherit;
      text-transform: inherit;
      letter-spacing: inherit;
      line-height: inherit;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
      padding-right: 5px;
      padding-left: 20px;
      cursor: pointer; }
      .elementor-control.elementor-control-type-select .elementor-control-input-wrapper select.e-select-placeholder {
        color: #a4afb7; }
    .elementor-control.elementor-control-type-select .elementor-control-input-wrapper option.e-option-placeholder {
      display: none; }
    .elementor-control.elementor-control-type-select .elementor-control-input-wrapper:after {
      font-family: eicons;
      content: '\e8ad';
      font-size: 12px;
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      left: 5px;
      pointer-events: none; }
  .elementor-control-custom_css_pro .elementor-nerd-box-message, .elementor-control-custom_attributes_pro .elementor-nerd-box-message {
    margin-top: 5px; }
  .elementor-control.elementor-control-custom_css_title {
    font-size: 12px; }

.elementor-control.elementor-open .elementor-panel-heading-toggle .eicon:before,
.elementor-panel-scheme-item.elementor-open .elementor-panel-heading-toggle .eicon:before {
  content: '\e92a'; }

.elementor-control:not(.elementor-open) .elementor-panel-heading-toggle .eicon:before,
.elementor-panel-scheme-item:not(.elementor-open) .elementor-panel-heading-toggle .eicon:before {
  content: ""; }

.elementor-panel-heading {
  display: table;
  table-layout: fixed;
  height: 40px;
  padding: 0 20px;
  width: 100%;
  border-bottom: 1px solid #e6e9ec;
  cursor: pointer; }
  .elementor-panel-heading > * {
    display: table-cell;
    vertical-align: middle; }
  .elementor-panel-heading-toggle {
    width: 20px;
    color: #495157; }
  .elementor-panel-heading-title {
    color: #495157;
    font-weight: bold; }

.elementor-control-wp {
  line-height: 1.5; }
  .elementor-control-wp p {
    margin: 15px 0; }

.elementor-control-field {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.elementor-label-block > .elementor-control-content > .elementor-control-field {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .elementor-label-block > .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper {
    width: 100%;
    margin-top: 10px; }

.elementor-label-block.elementor-control-hidden-label:not(.elementor-control-dynamic) > .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper {
  margin-top: 0; }

.elementor-label-block.elementor-control-hidden-label.elementor-label-block > .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper {
  margin-top: 0; }

.elementor-label-inline > .elementor-control-content > .elementor-control-field > .elementor-control-title {
  -ms-flex-negative: 0;
      flex-shrink: 0; }

.elementor-label-inline > .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper {
  margin-right: auto; }

.elementor-control-field-description {
  margin-top: 10px; }

.elementor-group-control-attachment_alert .elementor-control-field-description {
  margin-top: 0; }

.elementor-required {
  color: #b01b1b; }

.elementor-units-choices {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  text-align: left; }
  .elementor-units-choices input {
    display: none; }
    .elementor-units-choices input:not(:checked) + label {
      color: #a4afb7; }
    .elementor-units-choices input.e-units-placeholder + label {
      color: #c2cbd2;
      text-decoration: underline; }
    .elementor-units-choices input:checked + label {
      text-decoration: underline; }
  .elementor-units-choices label {
    cursor: pointer;
    padding: 0 2px;
    text-transform: uppercase;
    font-size: 9px; }

.elementor-control-start-end .eicon-h-align-left, .elementor-control-start-end .eicon-h-align-right {
  -webkit-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
          transform: rotate(180deg); }

.elementor-control-responsive-switchers {
  --selected-option: 0;
  --pointer-position: var(--selected-option);
  position: relative;
  width: 2em;
  height: 2em;
  margin: calc( -2em + var(--control-title-size)) 0;
  margin-left: 5px; }
  .elementor-control-responsive-switchers__holder {
    position: absolute;
    width: 100%;
    top: 0;
    background-color: #fff;
    -webkit-border-radius: 3px;
            border-radius: 3px;
    -webkit-transition: 0.15s;
    -o-transition: 0.15s;
    transition: 0.15s;
    border: 1px transparent solid; }
  .elementor-control-responsive-switchers.elementor-responsive-switchers-open {
    z-index: 11000; }
    .elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-responsive-switcher {
      height: 2em;
      -webkit-transform: scale(1);
          -ms-transform: scale(1);
              transform: scale(1);
      opacity: 1; }
      .elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-responsive-switcher:hover {
        color: #71d7f7; }
    .elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-control-responsive-switchers__holder {
      top: calc(-1 * var(--selected-option) * 2em);
      -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.2);
              box-shadow: 0 0 3px rgba(0, 0, 0, 0.2); }

.elementor-responsive-switcher {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  z-index: 2;
  cursor: pointer;
  height: 0;
  -webkit-transform: scale(0);
      -ms-transform: scale(0);
          transform: scale(0);
  opacity: 0;
  -webkit-transition: 0.15s;
  -o-transition: 0.15s;
  transition: 0.15s;
  font-size: 12px; }

a.elementor-responsive-switcher {
  color: #a4afb7; }
  a.elementor-responsive-switcher:hover {
    color: #71d7f7; }

.elementor-device-widescreen .elementor-responsive-switcher.elementor-responsive-switcher-widescreen {
  height: 2em;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.elementor-device-widescreen .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-widescreen {
  color: #71d7f7; }

.elementor-device-desktop .elementor-responsive-switcher.elementor-responsive-switcher-desktop {
  height: 2em;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.elementor-device-desktop .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-desktop {
  color: #71d7f7; }

.elementor-device-laptop .elementor-responsive-switcher.elementor-responsive-switcher-laptop {
  height: 2em;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.elementor-device-laptop .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-laptop {
  color: #71d7f7; }

.elementor-device-tablet_extra .elementor-responsive-switcher.elementor-responsive-switcher-tablet_extra {
  height: 2em;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.elementor-device-tablet_extra .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-tablet_extra {
  color: #71d7f7; }

.elementor-device-tablet .elementor-responsive-switcher.elementor-responsive-switcher-tablet {
  height: 2em;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.elementor-device-tablet .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-tablet {
  color: #71d7f7; }

.elementor-device-mobile_extra .elementor-responsive-switcher.elementor-responsive-switcher-mobile_extra {
  height: 2em;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.elementor-device-mobile_extra .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-mobile_extra {
  color: #71d7f7; }

.elementor-device-mobile .elementor-responsive-switcher.elementor-responsive-switcher-mobile {
  height: 2em;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.elementor-device-mobile .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-mobile {
  color: #71d7f7; }

.elementor-update-preview {
  margin: 15px 15px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.elementor-update-preview-button-wrapper {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  text-align: left; }

.elementor-update-preview-button {
  padding: 8px 15px;
  text-transform: uppercase; }

.elementor-control-direction-ltr input,
.elementor-control-direction-ltr textarea {
  direction: ltr; }

.elementor-control-direction-rtl input,
.elementor-control-direction-rtl textarea {
  direction: rtl; }

.elementor-control-type-button .elementor-control-input-wrapper {
  text-align: left; }

.elementor-control-type-button .elementor-button {
  width: auto;
  height: 26px; }

.elementor-control-type-choose.elementor-label-block .elementor-choices {
  width: 100%; }

.elementor-choices {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 27px;
  line-height: 27px;
  text-align: center;
  border-spacing: 1px;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  overflow: hidden; }
  .elementor-choices .elementor-choices-label {
    border-top: 1px solid #d5dadf;
    border-bottom: 1px solid #d5dadf;
    border-right: 1px solid #d5dadf;
    border-left: none;
    font-size: 12px;
    -webkit-transition: all .5s;
    -o-transition: all .5s;
    transition: all .5s;
    cursor: pointer;
    overflow: hidden; }
    .elementor-choices .elementor-choices-label:nth-child(2) {
      -webkit-border-top-right-radius: 3px;
              border-top-right-radius: 3px;
      -webkit-border-bottom-right-radius: 3px;
              border-bottom-right-radius: 3px; }
    .elementor-choices .elementor-choices-label:last-child {
      border-left: 1px solid #d5dadf;
      -webkit-border-top-left-radius: 3px;
              border-top-left-radius: 3px;
      -webkit-border-bottom-left-radius: 3px;
              border-bottom-left-radius: 3px; }
  .elementor-choices input {
    display: none; }
    .elementor-choices input.e-choose-placeholder + .elementor-choices-label {
      color: #ffffff;
      background-color: #c2cbd2;
      border-color: #c2cbd2; }
    .elementor-choices input:checked + .elementor-choices-label {
      color: #fff;
      background-color: #a4afb7;
      border-color: #a4afb7; }

.elementor-label-inline .elementor-choices {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.rtl .elementor-control-text_align .elementor-choices,
.rtl .elementor-control-align .elementor-choices,
.rtl .elementor-control-position .elementor-choices {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse; }
  .rtl .elementor-control-text_align .elementor-choices .elementor-choices-label:nth-child(2),
  .rtl .elementor-control-align .elementor-choices .elementor-choices-label:nth-child(2),
  .rtl .elementor-control-position .elementor-choices .elementor-choices-label:nth-child(2) {
    border-left: 1px solid #d5dadf;
    -webkit-border-radius: 3px 0 0 3px;
            border-radius: 3px 0 0 3px; }
  .rtl .elementor-control-text_align .elementor-choices .elementor-choices-label:last-child,
  .rtl .elementor-control-align .elementor-choices .elementor-choices-label:last-child,
  .rtl .elementor-control-position .elementor-choices .elementor-choices-label:last-child {
    border-left: none;
    -webkit-border-radius: 0 3px 3px 0;
            border-radius: 0 3px 3px 0; }

.elementor-control-type-color.e-control-global .e-global__popover-toggle ~ .pickr {
  -webkit-border-radius: 3px 0 0 3px;
          border-radius: 3px 0 0 3px;
  -ms-flex-negative: 0;
      flex-shrink: 0; }

.elementor-control-type-color .elementor-control-title {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1; }

.elementor-control-type-color .elementor-control-input-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.elementor-control-type-color .elementor-control-dynamic-switcher {
  border-right-width: 0;
  -webkit-border-radius: 3px 0 0 3px;
          border-radius: 3px 0 0 3px; }

.elementor-control-type-color.elementor-control-dynamic .pickr {
  -webkit-border-radius: 0 3px 3px 0;
          border-radius: 0 3px 3px 0; }

.elementor-group-control-css-filter .elementor-slider {
  height: 6px;
  -webkit-box-shadow: 0 0 1px 1px inset rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 1px 1px inset rgba(0, 0, 0, 0.2); }

.elementor-group-control-css-filter .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper {
  margin-top: 0;
  margin-bottom: 5px; }

.elementor-group-control-blur .elementor-slider {
  background: url("../images/blur.png");
  -webkit-background-size: cover;
          background-size: cover;
  background-position: center; }

.elementor-group-control-contrast .elementor-slider {
  background: url("../images/contrast.png");
  -webkit-background-size: 100% 100%;
          background-size: 100% 100%; }

.elementor-group-control-hue .elementor-slider {
  background-image: -webkit-gradient(linear, left top, right top, from(red), color-stop(orange), color-stop(yellow), color-stop(greenyellow), color-stop(limegreen), color-stop(deepskyblue), color-stop(blue), color-stop(95%, darkviolet));
  background-image: -webkit-linear-gradient(left, red, orange, yellow, greenyellow, limegreen, deepskyblue, blue, darkviolet 95%);
  background-image: -o-linear-gradient(left, red, orange, yellow, greenyellow, limegreen, deepskyblue, blue, darkviolet 95%);
  background-image: linear-gradient(to right, red, orange, yellow, greenyellow, limegreen, deepskyblue, blue, darkviolet 95%); }

.elementor-group-control-saturate .elementor-slider {
  background-image: -webkit-gradient(linear, left top, right top, from(gray), to(red));
  background-image: -webkit-linear-gradient(left, gray, red);
  background-image: -o-linear-gradient(left, gray, red);
  background-image: linear-gradient(to right, gray, red); }

.elementor-group-control-brightness .elementor-slider {
  background-image: -webkit-gradient(linear, left top, right top, from(black), to(white));
  background-image: -webkit-linear-gradient(left, black, white);
  background-image: -o-linear-gradient(left, black, white);
  background-image: linear-gradient(to right, black, white); }

.elementor-control-type-dimensions .elementor-control-dimensions {
  overflow: hidden; }

.elementor-control-type-dimensions li {
  float: left;
  width: 20%; }
  .elementor-control-type-dimensions li input,
  .elementor-control-type-dimensions li .elementor-link-dimensions {
    display: block;
    text-align: center;
    width: 100%;
    border-color: #d5dadf;
    height: 27px; }
  .elementor-control-type-dimensions li input {
    border-left: none;
    -webkit-border-radius: 0;
            border-radius: 0;
    padding: 4px 0; }
    .elementor-control-type-dimensions li input:focus {
      border-left: solid 1px;
      border-color: #a4afb7;
      margin-left: -1px;
      width: calc(100% + 1px); }
      .elementor-control-type-dimensions li input:focus + .elementor-control-dimension-label {
        color: #a4afb7; }
  .elementor-control-type-dimensions li .elementor-link-dimensions {
    border: 1px solid #d5dadf;
    border-left: none;
    background-color: #fff;
    padding: 0;
    outline: none;
    -webkit-border-radius: 0 3px 3px 0;
            border-radius: 0 3px 3px 0;
    cursor: pointer; }
  .elementor-control-type-dimensions li:first-child input {
    border-left: 1px solid #d5dadf;
    -webkit-border-radius: 3px 0 0 3px;
            border-radius: 3px 0 0 3px; }
    .elementor-control-type-dimensions li:first-child input:focus {
      border-color: #a4afb7;
      margin-left: 0;
      width: 100%; }

.elementor-control-type-dimensions .elementor-control-dimension-label {
  display: block;
  text-align: center;
  color: #d5dadf;
  font-size: 9px;
  text-transform: uppercase;
  padding-top: 5px; }

.elementor-control-type-dimensions .elementor-link-dimensions.unlinked {
  background-color: #fff; }
  .elementor-control-type-dimensions .elementor-link-dimensions.unlinked .elementor-linked {
    display: none; }

.elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked) {
  background-color: #a4afb7;
  border-color: #a4afb7; }
  .elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked) .elementor-unlinked {
    display: none; }

.elementor-control-type-dimensions .elementor-link-dimensions .elementor-linked {
  color: #fff; }

.elementor-control-type-icons .elementor-control-media__preview > * {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%); }

.elementor-control-type-icons .elementor-control-media__preview i {
  font-size: 70px;
  color: #6d7882; }

.elementor-control-type-icons .elementor-control-media__preview svg {
  height: 75%; }

.elementor-control-type-icons .elementor-control-icons--inline__svg i.eicon-upload {
  font-size: 15px; }

.elementor-control-type-gallery .elementor-control-media__content {
  border: 1px solid #d5dadf;
  -webkit-border-radius: 3px;
          border-radius: 3px; }

.elementor-control-type-gallery .elementor-control-gallery-status {
  font-size: 12px;
  height: 27px;
  padding-right: 10px;
  border-bottom: 1px solid #d5dadf;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  .elementor-control-type-gallery .elementor-control-gallery-status > * {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .elementor-control-type-gallery .elementor-control-gallery-status-title {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }

.elementor-control-type-gallery .elementor-control-gallery-content {
  position: relative;
  overflow: hidden; }
  .elementor-control-type-gallery .elementor-control-gallery-content:not(:hover) .elementor-control-gallery-edit {
    opacity: 0; }

.elementor-control-type-gallery .elementor-control-gallery-thumbnails {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(48px, 1fr));
  grid-gap: 10px;
  cursor: pointer;
  padding: 10px; }

.elementor-control-type-gallery .elementor-control-gallery-thumbnail {
  width: 48px;
  height: 48px;
  -webkit-background-size: cover;
          background-size: cover;
  background-position: 50% 50%; }

.elementor-control-type-gallery .elementor-control-gallery-edit {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: rgba(109, 120, 130, 0.3);
  padding: 10px;
  font-size: 11px;
  -webkit-transition: all .3s ease-in-out;
  -o-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
  pointer-events: none;
  cursor: pointer;
  opacity: 1; }
  .elementor-control-type-gallery .elementor-control-gallery-edit span {
    position: absolute;
    top: 10px;
    left: 10px;
    width: 21px;
    height: 21px;
    background-color: rgba(255, 255, 255, 0.9);
    color: #a4afb7;
    -webkit-box-shadow: 0 0 7px 0 rgba(0, 0, 0, 0.2);
            box-shadow: 0 0 7px 0 rgba(0, 0, 0, 0.2);
    -webkit-border-radius: 3px;
            border-radius: 3px; }
    .elementor-control-type-gallery .elementor-control-gallery-edit span i {
      font-size: 11px;
      padding: 5px; }

.elementor-control-type-gallery .elementor-control-gallery-add {
  width: 48px;
  height: 48px;
  color: #fff;
  background-color: #d5dadf;
  font-size: 14px;
  -webkit-border-radius: 0;
          border-radius: 0; }
  .elementor-control-type-gallery .elementor-control-gallery-add:hover {
    background-color: #c2cbd2; }
  .elementor-control-type-gallery .elementor-control-gallery-add i {
    margin: 0;
    color: #a4afb7; }

.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-clear,
.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-thumbnails,
.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-edit {
  display: none; }

.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-content {
  padding: 10px; }

.elementor-control-type-gallery.elementor-gallery-has-images .elementor-control-gallery-add {
  display: none; }

.elementor-control-type-gallery.elementor-control-dynamic .elementor-control-gallery-clear {
  border-right: 1px solid #d5dadf; }

.elementor-control-type-gallery .elementor-control-gallery-clear {
  cursor: pointer;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .elementor-control-type-gallery .elementor-control-gallery-clear:hover {
    color: #b01b1b; }

.elementor-control-type-gallery .elementor-control-dynamic-switcher {
  border: none;
  border-bottom: 1px solid #d5dadf;
  border-right: 1px solid #d5dadf;
  -webkit-border-radius: 3px 0 0 0;
          border-radius: 3px 0 0 0; }

.e-global__popover {
  width: 288px;
  z-index: 1;
  font-size: 12px;
  padding-right: 10px; }
  .e-global__popover-toggle {
    border: 1px solid #d5dadf;
    border-left: 0;
    -webkit-border-radius: 0 3px 3px 0;
            border-radius: 0 3px 3px 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    cursor: pointer; }
    .e-global__popover-toggle--active i {
      color: #71d7f7; }
  .e-global__popover-container {
    -webkit-box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3);
            box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3);
    -webkit-border-radius: 3px;
            border-radius: 3px;
    background-color: #fff;
    padding-bottom: 5px; }
  .e-global__popover-title {
    padding: 15px 20px;
    font-weight: 500;
    color: #6d7882;
    border-bottom: 1px solid #e6e9ec;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .e-global__popover-title > i {
      margin-left: 5px;
      color: #d5dadf; }
    .e-global__popover-title-text {
      -webkit-box-flex: 1;
          -ms-flex-positive: 1;
              flex-grow: 1; }
  .e-global__popover-info {
    margin-left: 5px;
    display: inline-block; }
    .e-global__popover-info-tooltip {
      width: 270px;
      z-index: 1;
      background-color: rgba(0, 0, 0, 0.9);
      color: #fff;
      padding: 20px;
      -webkit-border-radius: 3px;
              border-radius: 3px; }
      .e-global__popover-info-tooltip:after {
        content: '';
        position: absolute;
        bottom: -17px;
        right: 16px;
        border: 10px solid transparent;
        border-top-color: rgba(0, 0, 0, 0.9); }
    .e-global__popover-info i {
      color: #d5dadf;
      font-size: 13px; }

.e-global__preview-items-container {
  max-height: 260px;
  overflow-y: auto;
  margin-top: 5px; }
  .e-global__preview-items-container::-webkit-scrollbar {
    width: 7px; }
  .e-global__preview-items-container::-webkit-scrollbar-thumb {
    background-color: #c2cbd2;
    -webkit-border-radius: 10px;
            border-radius: 10px; }

.e-global__manage-button {
  font-weight: 500;
  cursor: pointer; }
  .e-global__manage-button:hover i {
    color: #4ab7f4; }
  .e-global__manage-button i {
    color: #6d7882; }

.e-global__typography {
  padding: 5px 35px 5px 10px;
  white-space: nowrap;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  overflow: hidden; }
  .e-global__typography.e-global__preview-item--selected:before {
    font-family: 'eicons';
    font-size: 13px;
    content: '\e90e';
    position: absolute;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    top: 50%;
    left: 12px; }

.e-global__color {
  margin: 5px auto;
  padding: 5px 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .e-global__color:first-child {
    margin-top: 5px; }
  .e-global__color:last-child {
    margin-bottom: 10px; }
  .e-global__color-preview-container {
    height: 20px;
    width: 20px;
    -webkit-border-radius: 3px;
            border-radius: 3px;
    border: 1px solid rgba(0, 0, 0, 0.1);
    margin-left: 10px;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    position: relative; }
  .e-global__color-preview-color, .e-global__color-preview-transparent-bg {
    -webkit-border-radius: 3px;
            border-radius: 3px;
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0; }
  .e-global__color-preview-transparent-bg {
    background-image: -webkit-linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd), -webkit-linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd);
    background-image: -o-linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd), -o-linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd);
    background-image: linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd), linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd);
    -webkit-background-size: 12px 12px;
            background-size: 12px 12px;
    background-position: 0 0, 6px 6px; }
  .e-global__color-title {
    font-weight: 500;
    color: #6d7882;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    white-space: nowrap;
    -o-text-overflow: ellipsis;
       text-overflow: ellipsis;
    overflow: hidden;
    padding-left: 10px; }
  .e-global__color-hex {
    font-size: 10px;
    font-weight: 500;
    color: #c2cbd2; }
  .e-global__color .pcr-button {
    background-color: #fff; }
  .e-global__color.e-global__preview-item--selected .e-global__color-preview-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    color: #ffffff; }
    .e-global__color.e-global__preview-item--selected .e-global__color-preview-container:before {
      font-family: 'eicons';
      font-size: 13px;
      content: '\e90e';
      text-shadow: 0px 0px 1px #000;
      z-index: 1; }

.e-global__preview-item {
  cursor: pointer;
  position: relative; }
  .e-global__preview-item:hover {
    background-color: #f1f3f5; }
    .e-global__preview-item:hover .e-global__color-hex {
      color: #a4afb7; }

.e-global__confirm-add .dialog-buttons-wrapper > .dialog-button.dialog-confirm-ok {
  color: #39b54a; }

.e-global__confirm-delete i {
  color: #b01b1b; }

.e-global__confirm-message-text i {
  color: #fcb92c; }

.e-global__confirm-input-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid #a4afb7;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  margin-top: 10px;
  padding: 2px; }
  .e-global__confirm-input-wrapper input {
    font-family: Roboto, Arial, sans-serif;
    font-weight: 500;
    font-size: 12px;
    padding: 2px;
    border: 0; }

.e-control-global .elementor-control-input-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  max-width: 135px;
  width: 100%; }

.e-control-global.elementor-control .elementor-control-input-wrapper {
  direction: rtl; }

.e-control-global .elementor-control-spinner {
  margin-left: 4px; }

.elementor-control-type-hidden {
  display: none !important; }

.elementor-control-type-icon .select2-selection__rendered .eicon {
  margin-right: 3px; }

.elementor-control-type-image_dimensions .elementor-control-field-description {
  margin: 0 0 15px;
  line-height: 1.4; }

.elementor-control-type-image_dimensions .elementor-control-input-wrapper {
  overflow: hidden; }

.elementor-control-type-image_dimensions .elementor-image-dimensions-field {
  width: 65px;
  float: right; }
  .elementor-control-type-image_dimensions .elementor-image-dimensions-field input:focus + .elementor-image-dimensions-field-description {
    color: #a4afb7; }

.elementor-control-type-image_dimensions .elementor-image-dimensions-separator {
  width: 20px;
  text-align: center;
  float: right;
  padding-top: 4px; }

.elementor-control-type-image_dimensions .elementor-image-dimensions-field-description {
  display: block;
  text-transform: uppercase;
  margin-top: 5px;
  color: #d5dadf;
  font-size: 9px;
  text-align: center; }

.elementor-control-type-image_dimensions .elementor-image-dimensions-apply-button {
  float: left;
  height: 27px;
  width: 65px; }

.elementor-control-media.elementor-media-empty .elementor-control-media-area .elementor-control-media__remove, .elementor-control-media.elementor-media-empty .elementor-control-media-area .elementor-control-media__content__remove {
  display: none; }

.elementor-control-media:not(.elementor-media-empty) .elementor-control-media__content__upload-button {
  display: none; }

.elementor-control-media .elementor-control-input-wrapper {
  border: 1px solid #d5dadf; }

.elementor-control-media .eicon-plus-circle {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  color: #fff;
  font-size: 20px; }

.elementor-control-media__content__upload-button {
  background-color: #d5dadf; }

.elementor-control-media__preview {
  height: 100%;
  -webkit-background-size: cover;
          background-size: cover;
  background-position: center; }

.elementor-control-media-area {
  background-image: -webkit-linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd), -webkit-linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd);
  background-image: -o-linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd), -o-linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd);
  background-image: linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd), linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd);
  -webkit-background-size: 16px 16px;
          background-size: 16px 16px;
  background-position: 0 0, 8px 8px;
  background-color: #f6f6f6; }
  .elementor-control-media-area:not(:hover) .elementor-control-media__remove {
    display: none; }
  .elementor-control-media-area .eicon-video-camera {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    color: rgba(255, 255, 255, 0.7);
    font-size: 21px; }

.elementor-control-media .elementor-control-media__content {
  cursor: pointer;
  overflow: hidden; }
  .elementor-control-media .elementor-control-media__content:hover:after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: rgba(0, 0, 0, 0.2);
    pointer-events: none; }
  .elementor-control-media .elementor-control-media__content:not(:hover) .elementor-control-media__tools {
    bottom: -30px; }

.elementor-control-media__content {
  -webkit-transition: all .2s ease-in-out;
  -o-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out; }

.elementor-control-media__tools {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 27px;
  -webkit-transition: all .2s ease-in-out;
  -o-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out; }
  .elementor-control-media__tools > *:not(:first-child) {
    margin-right: 1px; }

.elementor-control-media__tool {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  color: #fff;
  background-color: rgba(109, 120, 130, 0.85);
  font-size: 11px;
  -webkit-transition: background .3s;
  -o-transition: background .3s;
  transition: background .3s; }
  .elementor-control-media__tool:hover {
    background-color: rgba(109, 120, 130, 0.95); }

.elementor-control-media__remove {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-transition: all .3s ease-in-out;
  -o-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out; }

.elementor-control-media__content__remove {
  position: absolute;
  z-index: 1;
  top: 10px;
  left: 10px;
  width: 20px;
  height: 20px;
  font-size: 11px;
  color: #a4afb7;
  background-color: rgba(255, 255, 255, 0.9);
  -webkit-border-radius: 3px;
          border-radius: 3px;
  -webkit-box-shadow: 0 0 7px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 7px 0 rgba(0, 0, 0, 0.1); }
  .elementor-control-media__content__remove:hover {
    background-color: white;
    -webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.4);
            box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.4); }

.elementor-control-media.elementor-media-empty .elementor-control-file-area {
  display: none; }

.elementor-control-media__file {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  margin-top: 10px;
  border: 1px solid #d5dadf; }
  .elementor-control-media__file__content {
    padding-right: 5px;
    font-size: 12px; }
    .elementor-control-media__file__content__label {
      color: #a4afb7; }
    .elementor-control-media__file__content__info {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      font-weight: 500; }
      .elementor-control-media__file__content__info__icon {
        margin-left: 5px; }
  .elementor-control-media__file__controls {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-right: 1px solid #d5dadf; }
    .elementor-control-media__file__controls__upload-button, .elementor-control-media__file__controls__remove {
      width: 27px;
      height: 27px;
      cursor: pointer;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
    .elementor-control-media__file__controls__upload-button {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; }
    .elementor-control-media__file__controls__remove {
      border-left: 1px solid #d5dadf; }

.elementor-control-media:not(.elementor-media-empty) .elementor-control-media__file__content__label {
  display: none; }

.elementor-control-media.elementor-media-empty .elementor-control-media__file__content__info {
  display: none; }

.elementor-control-media.elementor-media-empty .elementor-control-media__file__controls__remove {
  display: none; }

.elementor-control-media .elementor-control-dynamic-switcher {
  border: none;
  -webkit-border-radius: 0;
          border-radius: 0;
  background-color: rgba(109, 120, 130, 0.85);
  color: #fff; }
  .elementor-control-media .elementor-control-dynamic-switcher:hover {
    background-color: rgba(109, 120, 130, 0.95); }

.elementor-control-type-media.elementor-control-dynamic-value .elementor-control-input-wrapper {
  border: none; }

.elementor-control-type-number.elementor-control-dynamic input {
  -webkit-border-radius: 0 3px 3px 0;
          border-radius: 0 3px 3px 0;
  border-left: none; }

.elementor-control-type-number.elementor-control-dynamic .elementor-control-dynamic-switcher {
  -webkit-border-radius: 3px 0 0 3px;
          border-radius: 3px 0 0 3px; }

.elementor-control-type-order .elementor-control-oreder-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.elementor-control-type-order input {
  display: none; }
  .elementor-control-type-order input:checked + .elementor-control-order-label {
    -webkit-transform: scale(1, -1);
        -ms-transform: scale(1, -1);
            transform: scale(1, -1); }

.elementor-control-type-order select {
  -webkit-border-radius: 3px 0 0 3px;
          border-radius: 3px 0 0 3px; }
  .elementor-control-type-order select:not(:focus) ~ .elementor-control-order-label {
    border-color: #d5dadf; }
  .elementor-control-type-order select:focus ~ .elementor-control-order-label {
    border-color: #a4afb7; }

.elementor-control-type-order .elementor-control-order-label {
  position: relative;
  padding: 0;
  width: 40px;
  border: 1px solid;
  font-size: 10px;
  -webkit-border-radius: 0 3px 3px 0;
          border-radius: 0 3px 3px 0;
  margin-left: -3px;
  background-color: #fff;
  cursor: pointer; }
  .elementor-control-type-order .elementor-control-order-label i {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }

.elementor-control-type-popover_toggle input {
  display: none; }

.elementor-control-type-popover_toggle label {
  cursor: pointer; }

.elementor-control-type-popover_toggle .elementor-control-input-wrapper {
  direction: ltr; }

.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle:checked + .elementor-control-popover-toggle-toggle-label {
  color: #71d7f7; }

.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle:not(:checked) ~ .elementor-control-popover-toggle-reset-label {
  display: none; }

.elementor-control-type-popover_toggle .elementor-control-popover-toggle-reset-label {
  color: #c2cbd2;
  margin-left: 5px; }

.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle-label {
  height: 27px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  border: 1px solid #d5dadf; }

.elementor-controls-popover.e-controls-popover--typography {
  padding-top: 0; }

.e-control-global .elementor-control-popover-toggle-toggle-label {
  -webkit-border-radius: 3px 0 0 3px;
          border-radius: 3px 0 0 3px;
  -ms-flex-negative: 0;
      flex-shrink: 0; }

.elementor-control-type-repeater .elementor-control:not(.elementor-control-type-tab) {
  padding-right: 10px;
  padding-left: 10px;
  padding-bottom: 10px; }

.elementor-control-type-repeater.elementor-repeater-has-minimum-rows .elementor-repeater-tool-remove {
  display: none; }

.elementor-control-type-repeater .elementor-repeater-fields {
  margin: 10px 0; }

.elementor-control-type-repeater .elementor-repeater-row-controls {
  border: 1px solid #d5dadf;
  border-top-width: 0;
  padding-top: 15px; }
  .elementor-control-type-repeater .elementor-repeater-row-controls:not(.editable) {
    display: none; }

.elementor-control-type-repeater .elementor-repeater-row-tools {
  display: table;
  table-layout: fixed;
  width: 100%;
  color: #556068;
  background-color: #d5dadf;
  height: 40px;
  border-spacing: 1px;
  -webkit-transition: all .5s;
  -o-transition: all .5s;
  transition: all .5s; }
  .elementor-control-type-repeater .elementor-repeater-row-tools:hover {
    background-color: #a4afb7; }
  .elementor-control-type-repeater .elementor-repeater-row-tools > div {
    display: table-cell;
    text-align: center;
    vertical-align: middle;
    cursor: pointer; }
    .elementor-control-type-repeater .elementor-repeater-row-tools > div:not(.elementor-repeater-row-handle-sortable) {
      background-color: #fff; }
    .elementor-control-type-repeater .elementor-repeater-row-tools > div:hover {
      opacity: .95; }
  .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title {
    text-align: right;
    padding: 0 10px;
    font-size: 12px;
    white-space: nowrap;
    -o-text-overflow: ellipsis;
       text-overflow: ellipsis;
    overflow: hidden; }
    .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title .eicon,
    .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title i,
    .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title svg {
      margin-left: 5px; }
    .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title img[src$="svg"] {
      width: 1em; }
  .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-tool {
    width: 40px; }
  .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-handle-sortable {
    cursor: move;
    width: 10px;
    color: #fff; }

.elementor-control-type-repeater .elementor-button-wrapper {
  text-align: center;
  padding-top: 5px; }

.elementor-control-type-section {
  margin-top: 10px;
  padding: 0; }
  .elementor-control-type-section.elementor-open {
    padding-bottom: 15px; }
  .elementor-control-type-section + .elementor-control:not(.elementor-control-type-section):before {
    display: none; }

.elementor-shadow-box .elementor-shadow-slider {
  margin-top: 10px; }

.elementor-shadow-box .elementor-color-picker-wrapper .elementor-control-title {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1; }

.elementor-control-type-slider.elementor-control-dynamic input {
  -webkit-border-radius: 0 3px 3px 0;
          border-radius: 0 3px 3px 0; }

.elementor-control-type-slider .elementor-control-unit-2 {
  width: 21%; }

.elementor-control-type-slider.elementor-control-type-slider--multiple .elementor-control-input-wrapper {
  display: block; }

.elementor-control-type-slider--multiple {
  padding-bottom: 40px; }
  .elementor-control-type-slider--multiple .elementor-slider {
    margin-top: 12px;
    width: 98%; }

.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle {
  -webkit-border-radius: 0;
          border-radius: 0;
  width: 10px;
  -webkit-transform: translateY(calc(50% - 14px)) translateX(-4px);
      -ms-transform: translateY(calc(50% - 14px)) translateX(-4px);
          transform: translateY(calc(50% - 14px)) translateX(-4px); }
  .elementor-control-type-slider--handles-range .elementor-slider .noUi-handle:after {
    content: '';
    position: absolute;
    top: 2px;
    height: 12px;
    width: 11px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    background-color: #fff;
    -webkit-border-radius: 3px;
            border-radius: 3px; }
  .elementor-control-type-slider--handles-range .elementor-slider .noUi-handle-lower:after {
    left: 5px;
    -webkit-box-shadow: 2px -2px 3px 0px rgba(0, 0, 0, 0.1);
            box-shadow: 2px -2px 3px 0px rgba(0, 0, 0, 0.1); }
  .elementor-control-type-slider--handles-range .elementor-slider .noUi-handle-upper:after {
    right: 5px;
    -webkit-box-shadow: -2px 2px 3px 0px rgba(0, 0, 0, 0.1);
            box-shadow: -2px 2px 3px 0px rgba(0, 0, 0, 0.1); }

.elementor-control-type-slider .elementor-control-dynamic-switcher {
  border-right-width: 0;
  -webkit-border-radius: 3px 0 0 3px;
          border-radius: 3px 0 0 3px; }

.elementor-control-type-slider .elementor-control-input-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.elementor-control-type-slider .elementor-dynamic-cover {
  margin-top: 10px; }

.elementor-slider {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  height: 4px;
  background-color: #d5dadf;
  -webkit-border-radius: 5px;
          border-radius: 5px;
  position: relative;
  cursor: pointer; }
  .elementor-slider-input {
    width: 21%;
    min-width: 54px;
    margin-right: 12px; }
  .elementor-slider__extra {
    position: relative; }
  .elementor-slider__labels {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
  .elementor-slider__label {
    font-size: 9px;
    color: #c2cbd2; }
  .elementor-slider__scales {
    position: absolute;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: space-evenly;
        -ms-flex-pack: space-evenly;
            justify-content: space-evenly;
    width: 100%;
    margin-top: 4px; }
  .elementor-slider__scale {
    width: 1px;
    height: 21px;
    background-color: #a4afb7; }
  .elementor-slider .noUi-handle {
    height: 16px;
    width: 16px;
    background-color: #fff;
    left: 0;
    -webkit-transform: translateY(calc(50% - 14px)) translateX(-8px);
        -ms-transform: translateY(calc(50% - 14px)) translateX(-8px);
            transform: translateY(calc(50% - 14px)) translateX(-8px);
    position: absolute;
    -webkit-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.3);
            box-shadow: 0 1px 5px rgba(0, 0, 0, 0.3);
    -webkit-border-radius: 50%;
            border-radius: 50%; }
  .elementor-slider .noUi-connects {
    position: absolute;
    width: 100%;
    height: 4px; }
  .elementor-slider .noUi-connect {
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    will-change: transform;
    -webkit-transform-origin: 0 0;
        -ms-transform-origin: 0 0;
            transform-origin: 0 0;
    background-color: #a4afb7; }
  .elementor-slider .noUi-tooltip {
    position: absolute;
    top: calc(100% + 5px);
    left: calc(50% - 4px);
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    font-size: 10px; }

.elementor-control-type-structure .elementor-control-field {
  display: initial; }

.elementor-control-type-structure .elementor-control-structure-preset {
  padding: 3px;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  display: inline-block;
  cursor: pointer;
  height: 50px; }
  .elementor-control-type-structure .elementor-control-structure-preset svg {
    height: 100%; }
  .elementor-control-type-structure .elementor-control-structure-preset path {
    fill: #e6e9ec; }

.elementor-control-type-structure .elementor-control-structure-reset {
  padding: 15px 20px 0;
  font-size: 11px;
  cursor: pointer;
  color: #a4afb7;
  border-top: 1px solid #e6e9ec;
  margin: 0 -20px; }

.elementor-control-type-structure .elementor-control-structure-title {
  margin: 10px -20px 0; }
  .elementor-control-type-structure .elementor-control-structure-title:before {
    height: 10px;
    -webkit-box-shadow: inset 0 2px 4px rgba(127, 127, 127, 0.1);
            box-shadow: inset 0 2px 4px rgba(127, 127, 127, 0.1); }

.elementor-control-type-structure .elementor-control-structure-presets {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .elementor-control-type-structure .elementor-control-structure-presets input {
    display: none; }
    .elementor-control-type-structure .elementor-control-structure-presets input:checked + .elementor-control-structure-preset path {
      fill: #a4afb7; }

.elementor-control-type-structure .elementor-control-structure-preset-wrapper {
  margin-bottom: 15px; }

.elementor-control-type-structure .elementor-control-structure-preset-title {
  text-align: center;
  padding-top: 5px;
  font-style: italic;
  font-size: 11px;
  color: #a4afb7; }

.elementor-control-type-switcher .elementor-control-input-wrapper {
  text-align: left; }

.elementor-control-type-switcher .elementor-switch {
  position: relative;
  display: inline-block;
  vertical-align: top;
  height: 20px;
  background-color: white;
  -webkit-border-radius: 18px;
          border-radius: 18px;
  cursor: pointer; }

.elementor-control-type-switcher .elementor-switch-input {
  display: none; }

.elementor-control-type-switcher .elementor-switch-label {
  position: relative;
  display: block;
  height: inherit;
  font-size: 7px;
  text-transform: uppercase;
  background: #eceeef;
  -webkit-border-radius: inherit;
          border-radius: inherit;
  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.12), inset 0 0 2px rgba(0, 0, 0, 0.15);
          box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.12), inset 0 0 2px rgba(0, 0, 0, 0.15);
  -webkit-transition: 0.15s ease-out;
  -o-transition: 0.15s ease-out;
  transition: 0.15s ease-out;
  -webkit-transition-property: opacity, background;
  -o-transition-property: opacity, background;
  transition-property: opacity, background; }

.elementor-control-type-switcher .elementor-switch-label:before, .elementor-control-type-switcher .elementor-switch-label:after {
  position: absolute;
  top: 0;
  width: 50%;
  text-align: center;
  line-height: 20px;
  -webkit-transition: inherit;
  -o-transition: inherit;
  transition: inherit; }

.elementor-control-type-switcher .elementor-switch-label:before {
  content: attr(data-off);
  right: 3px;
  color: #a4afb7;
  text-shadow: 0 1px rgba(255, 255, 255, 0.5); }

.elementor-control-type-switcher .elementor-switch-label:after {
  content: attr(data-on);
  left: 3px;
  color: white;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
  opacity: 0; }

.elementor-control-type-switcher .elementor-switch-input:checked ~ .elementor-switch-label {
  background: #71d7f7;
  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.15), inset 0 0 3px rgba(0, 0, 0, 0.2);
          box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.15), inset 0 0 3px rgba(0, 0, 0, 0.2); }
  .elementor-control-type-switcher .elementor-switch-input:checked ~ .elementor-switch-label:before {
    opacity: 0; }
  .elementor-control-type-switcher .elementor-switch-input:checked ~ .elementor-switch-label:after {
    opacity: 1; }

.elementor-control-type-switcher .elementor-switch-handle {
  position: absolute;
  top: 1px;
  left: 1px;
  width: 18px;
  height: 18px;
  background: white;
  -webkit-border-radius: 10px;
          border-radius: 10px;
  -webkit-transition: left 0.15s ease-out;
  -o-transition: left 0.15s ease-out;
  transition: left 0.15s ease-out; }

.elementor-control-type-switcher .elementor-switch-input:checked ~ .elementor-switch-handle {
  left: initial;
  right: 1px;
  -webkit-box-shadow: -1px 1px 5px rgba(0, 0, 0, 0.2);
          box-shadow: -1px 1px 5px rgba(0, 0, 0, 0.2); }

.elementor-control-type-tabs {
  font-size: 0.8em;
  text-transform: uppercase;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.elementor-control-type-tab {
  text-align: center;
  width: 100%;
  padding: 0;
  line-height: 25px;
  border-top: 1px solid #d5dadf;
  border-bottom: 1px solid #d5dadf;
  border-left: 1px solid #d5dadf;
  cursor: pointer; }
  .elementor-control-type-tab:first-child {
    border-right: 1px solid #d5dadf;
    -webkit-border-top-right-radius: 3px;
            border-top-right-radius: 3px;
    -webkit-border-bottom-right-radius: 3px;
            border-bottom-right-radius: 3px; }
  .elementor-control-type-tab:last-child {
    -webkit-border-top-left-radius: 3px;
            border-top-left-radius: 3px;
    -webkit-border-bottom-left-radius: 3px;
            border-bottom-left-radius: 3px; }
  .elementor-control-type-tab.elementor-tab-active {
    background-color: #a4afb7;
    border-color: #a4afb7;
    color: #ffffff; }

.elementor-tab-close {
  display: none !important; }

.elementor-control-type-textarea.elementor-control-dynamic-value .elementor-control-dynamic-switcher,
.elementor-control-type-code.elementor-control-dynamic-value .elementor-control-dynamic-switcher {
  -webkit-border-radius: 3px 0 0 3px;
          border-radius: 3px 0 0 3px;
  border-right-width: 0; }

.elementor-control-type-textarea .elementor-control-dynamic-switcher,
.elementor-control-type-code .elementor-control-dynamic-switcher {
  -webkit-border-radius: 0px 3px;
          border-radius: 0px 3px; }

.elementor-control-type-textarea:not(.elementor-control-dynamic-value) .elementor-control-dynamic-switcher,
.elementor-control-type-code:not(.elementor-control-dynamic-value) .elementor-control-dynamic-switcher {
  position: absolute;
  top: 0;
  z-index: 1;
  left: 0; }

.elementor-control-type-textarea .elementor-control-input-wrapper,
.elementor-control-type-code .elementor-control-input-wrapper {
  position: relative; }

.elementor-control-type-textarea textarea,
.elementor-control-type-code textarea {
  display: block;
  font-family: inherit; }
  .elementor-control-type-textarea textarea:focus + .elementor-control-dynamic-switcher,
  .elementor-control-type-code textarea:focus + .elementor-control-dynamic-switcher {
    display: none; }

.elementor-control-type-textarea pre:focus-within + .elementor-control-dynamic-switcher,
.elementor-control-type-code pre:focus-within + .elementor-control-dynamic-switcher {
  display: none; }

.elementor-control-type-url.elementor-control-dynamic .elementor-input {
  -webkit-border-radius: 3px 0 0 3px;
          border-radius: 3px 0 0 3px; }

.elementor-control-type-url .elementor-control-field {
  position: relative; }

.elementor-control-type-url:not(.elementor-control-dynamic) .elementor-control-url-more, .elementor-control-type-url.elementor-control-dynamic-value .elementor-control-url-more {
  -webkit-border-radius: 0 3px 3px 0;
          border-radius: 0 3px 3px 0; }

.elementor-control-type-url .elementor-control-input-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse; }

.elementor-control-type-url .elementor-control-url-more {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  border: 1px solid #d5dadf;
  border-left: none;
  cursor: pointer; }
  .elementor-control-type-url .elementor-control-url-more i {
    font-size: 12px; }
  .elementor-control-type-url .elementor-control-url-more-options {
    display: none;
    padding-top: 10px; }
    .elementor-control-type-url .elementor-control-url-more-options .elementor-control-field-description {
      margin-top: 10px; }

.elementor-control-type-url .elementor-control-url-option {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .elementor-control-type-url .elementor-control-url-option:not(:last-child) {
    padding-bottom: 10px; }
  .elementor-control-type-url .elementor-control-url-option input,
  .elementor-control-type-url .elementor-control-url-option label {
    cursor: pointer; }
  .elementor-control-type-url .elementor-control-url-option-input {
    margin: 0;
    padding: 0;
    -webkit-border-radius: 2px;
            border-radius: 2px;
    margin-left: 5px;
    -webkit-appearance: none;
    -moz-appearance: none;
    outline: none;
    content: none;
    height: 15px;
    width: 15px;
    border: 1px solid #d5dadf;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .elementor-control-type-url .elementor-control-url-option-input:checked {
      background: #71d7f7;
      border: none; }
      .elementor-control-type-url .elementor-control-url-option-input:checked:before {
        display: block;
        content: "";
        width: 4px;
        height: 7px;
        border: solid white;
        border-width: 0 2px 2px 0;
        -webkit-transform: rotate(45deg);
            -ms-transform: rotate(45deg);
                transform: rotate(45deg); }
  .elementor-control-type-url .elementor-control-url-option label {
    font-size: 12px; }

.elementor-control-type-url .elementor-control-url-external-hide .elementor-control-url-more {
  display: none; }

.elementor-control-type-url .elementor-control-url-external-show .elementor-input,
.elementor-control-type-url .elementor-control-url-external-show .elementor-dynamic-cover {
  -webkit-border-radius: 3px 0 0 3px;
          border-radius: 3px 0 0 3px; }

.elementor-control-type-url .elementor-control-url-autocomplete-spinner {
  display: none;
  position: absolute;
  top: 5px;
  right: 0px;
  width: 10px;
  height: 10px;
  font-size: 10px;
  color: #D4D4D4; }

.elementor-control-type-url .elementor-control-url__custom-attributes {
  margin-top: 5px; }
  .elementor-control-type-url .elementor-control-url__custom-attributes label {
    font-size: 12px; }
  .elementor-control-type-url .elementor-control-url__custom-attributes input {
    width: 100%;
    margin-top: 10px; }

.elementor-control-type-url .elementor-input {
  direction: ltr; }
  .elementor-control-type-url .elementor-input:not(:focus) + .elementor-control-url-more {
    border-color: #d5dadf; }
  .elementor-control-type-url .elementor-input:focus ~ div {
    border-color: #a4afb7; }

.elementor-control-type-url .elementor-control-dynamic-switcher {
  border-left: none;
  -webkit-border-radius: 0 3px 3px 0;
          border-radius: 0 3px 3px 0; }

.elementor-autocomplete-menu {
  position: absolute;
  background: #fff;
  color: #495157;
  border: 1px solid #a4afb7;
  margin: 0;
  list-style: none;
  padding: 4px 0;
  height: auto;
  width: 100%;
  min-width: 260px;
  max-width: 300px;
  max-height: 200px;
  overflow-y: auto;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  -webkit-transition: all .3s ease-in-out;
  -o-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
  cursor: default;
  z-index: 1; }
  .elementor-autocomplete-menu .ui-menu-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-item-align: baseline;
        align-self: baseline;
    padding: 5px 8px;
    font-size: 12px;
    width: 100%;
    line-height: 1.2;
    cursor: pointer; }
    .elementor-autocomplete-menu .ui-menu-item.ui-state-hover, .elementor-autocomplete-menu .ui-menu-item.ui-state-active, .elementor-autocomplete-menu .ui-menu-item.ui-state-focus {
      background: #e6e9ec; }
  .elementor-autocomplete-menu .elementor-autocomplete-item-info {
    font-size: 10px;
    padding-top: 2px; }

.elementor-control-type-wp_widget .widget-inside {
  display: block; }

.elementor-control-type-wp_widget .quicktags-toolbar input {
  width: auto; }

.elementor-control-type-wysiwyg * {
  -webkit-box-sizing: content-box;
          box-sizing: content-box; }

.elementor-control-type-wysiwyg .wp-editor-container {
  border: 1px solid #e6e9ec; }

.elementor-control-type-wysiwyg .wp-editor-tabs {
  border: 1px solid #d5dadf;
  border-bottom: none;
  -webkit-border-radius: 3px 3px 0 0;
          border-radius: 3px 3px 0 0; }

.elementor-control-type-wysiwyg #insert-media-button {
  height: initial;
  line-height: 24px;
  font-size: 10px;
  color: #6d7882;
  border-color: #d5dadf;
  background-color: #e6e9ec;
  min-height: initial; }

.elementor-control-type-wysiwyg .ed_button {
  height: 22px;
  width: initial; }

.elementor-control-type-wysiwyg .wp-media-buttons-icon {
  height: 14px;
  margin: 0; }
  .elementor-control-type-wysiwyg .wp-media-buttons-icon:before {
    font-size: 14px; }

.elementor-control-type-wysiwyg .wp-switch-editor {
  position: static;
  border: none;
  margin: 0;
  color: #6d7882;
  font-size: 10px;
  padding: 3px 9px 4px; }

.elementor-control-type-wysiwyg .switch-html {
  border: solid #d5dadf;
  border-width: 0 1px; }

.elementor-control-type-wysiwyg .html-active .switch-tmce {
  background-color: transparent; }

.elementor-control-type-wysiwyg .html-active .switch-html {
  background-color: #e6e9ec; }

.elementor-control-type-wysiwyg .tmce-active .switch-tmce {
  background-color: #e6e9ec; }

.elementor-control-type-wysiwyg .tmce-active .switch-html {
  background-color: transparent; }

.elementor-control-type-wysiwyg .mce-toolbar-grp, .elementor-control-type-wysiwyg .quicktags-toolbar {
  background-color: #e6e9ec; }

.elementor-control-type-wysiwyg .mce-toolbar-grp > div {
  padding: 0 3px; }

.elementor-control-type-wysiwyg .elementor-wp-editor {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

.elementor-control-type-wysiwyg .mce-ico {
  color: #6d7882;
  font-size: 16px; }

.elementor-control-type-wysiwyg .mce-btn {
  margin-right: 0;
  margin-left: 0; }
  .elementor-control-type-wysiwyg .mce-btn:hover, .elementor-control-type-wysiwyg .mce-btn:active, .elementor-control-type-wysiwyg .mce-btn.mce-active {
    border-color: #d5dadf; }

.elementor-control-type-wysiwyg .mce-path {
  padding: 5px 10px; }

.elementor-control-type-wysiwyg .mce-path-item {
  font-size: 12px;
  color: #6d7882; }

.elementor-control-type-wysiwyg .elementor-control-dynamic-switcher {
  border: none; }

.elementor-control-type-text .elementor-control-dynamic-switcher {
  border-right-width: 0;
  -webkit-border-radius: 3px 0 0 3px;
          border-radius: 3px 0 0 3px; }

.elementor-control-type-text.elementor-control-dynamic input {
  -webkit-border-radius: 0 3px 3px 0;
          border-radius: 0 3px 3px 0; }

.ui-resizable-n {
  top: -5px; }

.ui-resizable-e {
  right: -5px; }

.ui-resizable-s {
  bottom: -5px; }

.ui-resizable-w {
  left: -5px; }

.ui-resizable-ne {
  top: -5px;
  right: -5px; }

.ui-resizable-nw {
  top: -5px;
  left: -5px; }

.ui-resizable-se {
  bottom: -5px;
  right: -5px; }

.ui-resizable-sw {
  bottom: -5px;
  left: -5px; }

.ui-resizable-n, .ui-resizable-s {
  left: 0;
  height: 10px;
  width: 100%;
  cursor: ns-resize; }

.ui-resizable-e, .ui-resizable-w {
  top: 0;
  height: 100%;
  width: 10px;
  cursor: ew-resize; }

.ui-resizable-ne, .ui-resizable-nw, .ui-resizable-se, .ui-resizable-sw {
  height: 15px;
  width: 15px; }

.ui-resizable-nw, .ui-resizable-se {
  cursor: nwse-resize; }

.ui-resizable-ne, .ui-resizable-sw {
  cursor: nesw-resize; }

.ui-resizable-handle {
  position: absolute; }

.ui-resizable-resizing {
  pointer-events: none; }

@-webkit-keyframes placeholder-section {
  0% {
    height: 0;
    opacity: 0; }
  100% {
    height: 40px;
    opacity: .9; } }

@keyframes placeholder-section {
  0% {
    height: 0;
    opacity: 0; }
  100% {
    height: 40px;
    opacity: .9; } }

@-webkit-keyframes placeholder-widget {
  0% {
    height: 0;
    opacity: 0; }
  100% {
    height: 10px;
    opacity: .9; } }

@keyframes placeholder-widget {
  0% {
    height: 0;
    opacity: 0; }
  100% {
    height: 10px;
    opacity: .9; } }

@-webkit-keyframes section-outline {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@keyframes section-outline {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

body.elementor-editor-active .elementor.elementor-edit-mode.layout-section .entry-content {
  overflow: visible; }

body.elementor-editor-active .elementor.elementor-edit-mode .article {
  overflow: visible; }

body.elementor-editor-active .elementor.elementor-edit-mode .elementor-element-overlay .elementor-editor-element-settings {
  clear: unset; }

body.elementor-editor-active .elementor.elementor-edit-mode .elementor-element.elementor-section {
  overflow: visible; }

.elementor-edit-area .animated {
  -webkit-animation-fill-mode: none !important;
          animation-fill-mode: none !important; }

.elementor-edit-area ul.elementor-editor-element-settings {
  word-break: normal;
  padding: 0; }

.elementor-edit-area .gallery {
  opacity: 1; }

.pen {
  position: relative;
  outline: none; }
  .pen:not([data-elementor-inline-editing-toolbar="advanced"]) {
    white-space: pre-wrap; }
  .pen-menu {
    -webkit-box-shadow: 1px 2px 3px -2px #222;
            box-shadow: 1px 2px 3px -2px #222;
    background-color: #6d7882;
    position: fixed;
    overflow: hidden;
    -webkit-border-radius: 3px;
            border-radius: 3px;
    z-index: 9999; }
    .pen-menu:after {
      top: 100%;
      content: '';
      position: absolute;
      border: 6px solid transparent;
      border-top-color: #6d7882;
      left: 50%;
      -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
              transform: translateX(-50%); }
    .pen-menu-below:after {
      top: 0;
      -webkit-transform: translateX(-50%) translateY(-100%) rotate(180deg);
          -ms-transform: translateX(-50%) translateY(-100%) rotate(180deg);
              transform: translateX(-50%) translateY(-100%) rotate(180deg); }
  .pen-icon {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    height: 35px;
    padding: 0 10px;
    font-size: 21px;
    color: #d5dadf;
    cursor: pointer;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none; }
    .pen-icon:hover {
      background: #556068; }
    .pen-icon[data-group], .pen-icon[data-action="closeGroup"] {
      display: none; }
    .pen-icon[data-action="close"]:before {
      content: '';
      position: absolute;
      right: 0;
      height: 60%;
      width: 1px;
      background-color: #556068; }
    .pen-icon.active {
      background-color: #556068;
      -webkit-box-shadow: inset 2px 2px 4px #556068;
              box-shadow: inset 2px 2px 4px #556068; }
  .pen-group-icon:after {
    font-family: eicons;
    font-size: 12px;
    content: '\e92a';
    padding-left: 4px;
    color: #71d7f7; }
  .pen-input-wrapper {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .pen-input-wrapper .pen-url-input {
      font-size: 12px;
      line-height: 1.5;
      padding: 0;
      padding-right: 10px;
      padding-left: 10px;
      width: 250px;
      direction: ltr; }
      .pen-input-wrapper .pen-url-input, .pen-input-wrapper .pen-url-input:focus {
        background-color: transparent;
        border: none;
        outline: none;
        -webkit-box-shadow: none;
                box-shadow: none;
        color: #fff; }
      .pen-input-wrapper .pen-url-input::-webkit-input-placeholder {
        color: #d5dadf; }
      .pen-input-wrapper .pen-url-input::-moz-placeholder {
        color: #d5dadf; }
      .pen-input-wrapper .pen-url-input::-ms-input-placeholder {
        color: #d5dadf; }
      .pen-input-wrapper .pen-url-input::placeholder {
        color: #d5dadf; }
  .pen-input-label {
    margin: 0;
    margin-left: -1px; }
  .pen-placeholder:before {
    content: attr(data-pen-placeholder);
    position: absolute;
    font-weight: normal;
    color: #757575;
    opacity: 0.6; }
  .pen-external-url-checkbox {
    display: none; }
    .pen-external-url-checkbox:checked + i {
      color: #fff; }

.elementor-inline-editing i:not([class]) {
  font-style: italic; }

.elementor-inline-editing b {
  font-weight: bold; }

.elementor-inline-editing u {
  text-decoration: underline; }

.e-element-color-picker {
  --primary-color: #71d7f7;
  --swatch-size: 25px;
  cursor: default;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  width: calc( calc( var( --count ) + 1 ) * var( --swatch-size ));
  height: var(--swatch-size);
  top: var(--top);
  left: var(--left);
  right: var(--right, unset);
  -webkit-border-radius: 3px;
          border-radius: 3px;
  opacity: 0;
  pointer-events: none;
  z-index: 9998;
  background-color: var(--primary-color);
  padding: 1px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  -webkit-transition: opacity .3s, width .3s;
  -o-transition: opacity .3s, width .3s;
  transition: opacity .3s, width .3s; }
  .e-element-color-picker.e-picker-hidden {
    opacity: 0;
    pointer-events: none; }
  .e-element-color-picker::before {
    content: '';
    -webkit-box-flex: 0;
        -ms-flex: 0 1 var(--swatch-size);
            flex: 0 1 var(--swatch-size);
    max-width: 100%;
    height: 100%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    text-align: center; }
  .e-element-color-picker::after {
    content: '\e91e';
    font-family: 'eicons';
    color: #FFF;
    font-size: 1rem;
    line-height: var(--swatch-size);
    position: absolute;
    left: .3rem;
    z-index: -1; }
  .e-element-color-picker__swatch {
    -webkit-box-flex: 1;
        -ms-flex: 1 0 var(--swatch-size);
            flex: 1 0 var(--swatch-size);
    max-width: 100%;
    height: 100%;
    cursor: pointer;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    position: relative;
    overflow: hidden;
    -webkit-border-radius: inherit;
            border-radius: inherit;
    /* Hack to fix transparent `--color` on hover */
    background: -webkit-gradient(linear, left top, left bottom, from(var(--color)), to(var(--color))), -webkit-gradient(linear, left top, left bottom, from(var(--primary-color)), to(var(--primary-color)));
    background: -webkit-linear-gradient(var(--color), var(--color)), -webkit-linear-gradient(var(--primary-color), var(--primary-color));
    background: -o-linear-gradient(var(--color), var(--color)), -o-linear-gradient(var(--primary-color), var(--primary-color));
    background: linear-gradient(var(--color), var(--color)), linear-gradient(var(--primary-color), var(--primary-color)); }
    .e-element-color-picker__swatch:not(:first-child) {
      border-left: 1px solid var(--primary-color); }
    .e-element-color-picker__swatch::before {
      content: attr(data-text);
      position: absolute;
      left: 50%;
      top: 50%;
      opacity: 0;
      color: var(--color);
      font-size: 10px;
      font-weight: 300;
      font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
      -webkit-transform: translate(-50%, -50%);
          -ms-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%);
      -webkit-filter: hue-rotate(180deg) grayscale(1) contrast(999) invert(1);
              filter: hue-rotate(180deg) grayscale(1) contrast(999) invert(1);
      -webkit-transition: inherit;
      -o-transition: inherit;
      transition: inherit; }
    .e-element-color-picker__swatch:hover {
      -ms-flex-preferred-size: calc( 2 * var( --swatch-size ));
          flex-basis: calc( 2 * var( --swatch-size ));
      -ms-flex-negative: 0;
          flex-shrink: 0; }
      .e-element-color-picker__swatch:hover::before {
        opacity: 1; }

.elementor-editor__ui-state__color-picker *:not(.e-element-color-picker__swatch) {
  cursor: url("../images/eyedropper.svg") 0 20, pointer; }

.elementor-editor__ui-state__color-picker .e-element-color-picker:not(.e-picker-hidden):hover,
.elementor-editor__ui-state__color-picker .elementor-element:hover > .e-element-color-picker:not(.e-picker-hidden),
.elementor-editor__ui-state__color-picker .elementor-widget-container:hover + .e-element-color-picker:not(.e-picker-hidden) {
  opacity: 1;
  pointer-events: all; }

.elementor-editor__ui-state__color-picker .elementor-section:hover {
  outline: 1px solid #71d7f7; }

html.elementor-html {
  margin-top: 0 !important; }

.elementor-edit-area {
  position: relative; }

.elementor.loading {
  opacity: 0.5; }

.elementor-edit-area-active .elementor-inner-section:first-child {
  margin-top: 15px; }

.elementor-edit-area-active .elementor-widget-wrap.elementor-element-empty {
  min-height: 30px; }
  @media (min-width: 768px) {
    .elementor-edit-area-active .elementor-widget-wrap.elementor-element-empty {
      margin: 10px; } }

.elementor-edit-area-active .elementor-column {
  min-width: 25px; }

.elementor-edit-area-active .elementor-widget.elementor-loading {
  opacity: .3; }

.elementor-edit-area-active .elementor-widget.elementor-element-editable, .elementor-edit-area-active .elementor-widget.elementor-element-edit-mode:hover {
  -webkit-box-shadow: 0 0 0 1px #71d7f7;
          box-shadow: 0 0 0 1px #71d7f7; }

.elementor-edit-area-active .elementor-widget:not(:hover) .elementor-editor-element-settings {
  display: none; }

.elementor-edit-area-active .elementor-widget.ui-draggable-dragging {
  pointer-events: none; }

.elementor-edit-area-active .elementor-editor-element-setting {
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0;
  margin: 0;
  font-size: 11px;
  color: #fff;
  width: 25px;
  -webkit-transition: margin .3s, width .3s, font .3s;
  -o-transition: margin .3s, width .3s, font .3s;
  transition: margin .3s, width .3s, font .3s; }

.elementor-edit-area-active .elementor-inline-editing {
  min-height: 15px; }

.elementor-edit-area-active .elementor-edit-hidden {
  display: none; }

.elementor-section-wrap:empty {
  min-height: 25px; }

.elementor-element > .elementor-element-overlay {
  position: absolute;
  top: 0;
  left: 0;
  letter-spacing: 0;
  z-index: 9998;
  pointer-events: none; }

.elementor-element-empty .elementor-sortable-placeholder {
  display: none; }

.elementor-element.elementor-widget-empty {
  background-color: rgba(213, 218, 223, 0.8); }
  .elementor-element.elementor-widget-empty .elementor-widget-empty-icon {
    color: #c2cbd2;
    font-size: 22px;
    display: block;
    text-align: center;
    padding: 10px 0; }

.elementor-element:not(:hover):not(.elementor-element-editable) > .elementor-element-overlay .elementor-editor-element-settings {
  display: none; }

.elementor-element--toggle-edit-tools > .elementor-element-overlay .elementor-editor-element-edit:not(.elementor-active) ~ * {
  width: 0;
  font-size: 0; }

.elementor-element[data-side="top"]:before, .elementor-element[data-side="bottom"] + .elementor-element:before {
  content: '';
  background-color: #71d7f7;
  -webkit-transition-timing-function: ease-out;
       -o-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  opacity: .9;
  height: 10px;
  -webkit-animation: placeholder-widget 500ms;
          animation: placeholder-widget 500ms;
  display: block; }

.elementor-element[data-side="bottom"]:last-child:after {
  content: '';
  background-color: #71d7f7;
  -webkit-transition-timing-function: ease-out;
       -o-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  opacity: .9;
  height: 10px;
  -webkit-animation: placeholder-widget 500ms;
          animation: placeholder-widget 500ms;
  display: block; }

.elementor-element.elementor-absolute, .elementor-element.elementor-fixed {
  cursor: -webkit-grab;
  cursor: grab; }
  .elementor-element.elementor-absolute:active, .elementor-element.elementor-fixed:active {
    cursor: -webkit-grabbing;
    cursor: grabbing; }
  .elementor-element.elementor-absolute .eicon-edit:before, .elementor-element.elementor-fixed .eicon-edit:before {
    content: '\e902'; }

.elementor-section > .elementor-element-overlay {
  right: 0;
  bottom: 0; }
  .elementor-section > .elementor-element-overlay:after {
    position: absolute;
    left: 2px;
    right: 2px;
    top: 2px;
    bottom: 2px;
    outline: 2px solid #71d7f7;
    -webkit-animation: section-outline .75s;
            animation: section-outline .75s; }

.elementor-section:hover > .elementor-element-overlay:after, .elementor-section.elementor-element-editable > .elementor-element-overlay:after {
  content: ''; }

.elementor-section-filled .elementor-sortable-placeholder.elementor-column {
  display: none; }

.elementor-section-filled .elementor-row.elementor-draggable-over {
  border: 1px solid #d72b3f; }

.elementor-column > .elementor-element-overlay {
  right: 0;
  bottom: 0; }
  .elementor-column > .elementor-element-overlay:after {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    outline: 1px dashed #6d7882; }

.elementor-column:hover > .elementor-element-overlay, .elementor-column.elementor-element-editable > .elementor-element-overlay {
  border: 1px solid #ffffff; }
  .elementor-column:hover > .elementor-element-overlay:after, .elementor-column.elementor-element-editable > .elementor-element-overlay:after {
    content: ''; }

.elementor-column.elementor-dragging-on-child > .elementor-element-overlay {
  border: 1px solid #71d7f7; }
  .elementor-column.elementor-dragging-on-child > .elementor-element-overlay:after {
    display: none; }

.elementor-column > .ui-resizable-e, .elementor-column > .ui-resizable-w {
  cursor: col-resize;
  width: 7px;
  position: absolute;
  left: -5px;
  top: 0;
  height: 100%; }

.elementor-column:last-of-type > .ui-resizable-e, .elementor-column:last-of-type > .ui-resizable-w {
  display: none !important; }

@media (max-width: 1024px) {
  .elementor-column > .ui-resizable-e, .elementor-column > .ui-resizable-w {
    display: none !important; } }

.elementor-editor-element-settings {
  position: absolute;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 26px;
  list-style: none;
  margin: 0;
  padding: 0;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 13px;
  font-weight: normal;
  font-style: normal;
  line-height: 1;
  z-index: 1;
  pointer-events: all; }

@media (min-width: 1025px) {
  .elementor-editor-element-edit {
    cursor: move; } }

.elementor-editor-section-settings {
  height: 24px;
  top: 1px;
  right: 50%;
  -webkit-transform: translateX(50%) translateY(-100%);
      -ms-transform: translateX(50%) translateY(-100%);
          transform: translateX(50%) translateY(-100%);
  background-color: #71d7f7;
  -webkit-border-radius: 5px 5px 0 0;
          border-radius: 5px 5px 0 0;
  -webkit-box-shadow: 0px -2px 8px rgba(0, 0, 0, 0.05);
          box-shadow: 0px -2px 8px rgba(0, 0, 0, 0.05); }
  .elementor-editor-section-settings i.eicon-handle {
    font-size: 16px; }
  .elementor-editor-section-settings .elementor-editor-element-setting:hover {
    background-color: #10bcf2; }
  .elementor-editor-section-settings .elementor-editor-element-setting:first-child {
    -webkit-border-radius: 0 5px 0 0;
            border-radius: 0 5px 0 0; }
    .elementor-editor-section-settings .elementor-editor-element-setting:first-child:before {
      content: '';
      position: absolute;
      border: solid transparent;
      top: 2px;
      border-left-color: #71d7f7;
      border-width: 22px 0 0 12px;
      left: calc(100% - 1px); }
    .elementor-editor-section-settings .elementor-editor-element-setting:first-child:hover:before {
      border-left-color: #10bcf2; }
  .elementor-editor-section-settings .elementor-editor-element-setting:last-child {
    -webkit-border-radius: 5px 0 0 0;
            border-radius: 5px 0 0 0; }
    .elementor-editor-section-settings .elementor-editor-element-setting:last-child:after {
      content: '';
      position: absolute;
      border: solid transparent;
      top: 2px;
      border-right-color: #71d7f7;
      border-width: 22px 12px 0 0;
      right: calc(100% - 1px); }
    .elementor-editor-section-settings .elementor-editor-element-setting:last-child:hover:after {
      border-right-color: #10bcf2; }

.elementor-section--handles-inside .elementor-editor-section-settings {
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  -webkit-border-radius: 0 0 5px 5px;
          border-radius: 0 0 5px 5px; }
  .elementor-section--handles-inside .elementor-editor-section-settings .elementor-editor-element-setting:first-child {
    -webkit-border-radius: 0 0 5px 0;
            border-radius: 0 0 5px 0; }
    .elementor-section--handles-inside .elementor-editor-section-settings .elementor-editor-element-setting:first-child:before {
      top: 0;
      border-width: 0 0 22px 12px; }
  .elementor-section--handles-inside .elementor-editor-section-settings .elementor-editor-element-setting:last-child {
    -webkit-border-radius: 0 0 0 5px;
            border-radius: 0 0 0 5px; }
    .elementor-section--handles-inside .elementor-editor-section-settings .elementor-editor-element-setting:last-child:after {
      top: 0;
      border-width: 0 12px 22px 0; }

.elementor-editor-column-settings {
  top: -1px;
  right: -1px;
  -webkit-border-radius: 0 0 0 3px;
          border-radius: 0 0 0 3px;
  overflow: hidden; }
  .elementor-editor-column-settings .elementor-editor-element-setting {
    background-color: #495157; }
    .elementor-editor-column-settings .elementor-editor-element-setting:not(:hover) {
      background-image: -webkit-gradient(linear, left top, left bottom, from(#6d7882), to(#556068));
      background-image: -webkit-linear-gradient(top, #6d7882, #556068);
      background-image: -o-linear-gradient(top, #6d7882, #556068);
      background-image: linear-gradient(to bottom, #6d7882, #556068); }

.elementor-editor-widget-settings {
  z-index: 2;
  top: -1px;
  left: -1px;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  -webkit-border-radius: 0 0 3px 0;
          border-radius: 0 0 3px 0;
  overflow: hidden; }
  .elementor-editor-widget-settings .elementor-editor-element-setting {
    background-color: #10bcf2; }
    .elementor-editor-widget-settings .elementor-editor-element-setting:not(:hover) {
      background-image: -webkit-gradient(linear, left bottom, left top, from(#41c9f4), to(#71d7f7));
      background-image: -webkit-linear-gradient(bottom, #41c9f4, #71d7f7);
      background-image: -o-linear-gradient(bottom, #41c9f4, #71d7f7);
      background-image: linear-gradient(to top, #41c9f4, #71d7f7); }

.elementor-empty-view {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1; }

.elementor-first-add {
  text-align: center;
  border: 1px dashed #d5dadf;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .elementor-first-add .elementor-icon {
    font-size: 19px;
    color: #a4afb7;
    cursor: pointer; }

.elementor-sortable-helper {
  position: absolute;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  background-color: #fff;
  text-align: center;
  color: #556068;
  -webkit-box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
          box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
  cursor: move; }
  .elementor-sortable-helper .icon {
    font-size: 28px;
    padding-top: 15px;
    line-height: 1; }
  .elementor-sortable-helper .elementor-element-title-wrapper {
    display: table;
    width: 100%; }
  .elementor-sortable-helper .title {
    font-size: 11px;
    font-family: Arial, Helvetica, sans-serif;
    font-weight: normal;
    font-style: normal;
    display: table-cell;
    vertical-align: middle;
    height: 40px; }

.elementor-editor-content-only .elementor-first-add {
  display: none; }

.elementor-editor-content-only .elementor-section > .elementor-element-overlay {
  display: none; }
  .elementor-editor-content-only .elementor-section > .elementor-element-overlay:after {
    display: none; }

.elementor-editor-content-only .elementor-section:hover > .elementor-element-overlay:after, .elementor-editor-content-only .elementor-section.elementor-element-editable > .elementor-element-overlay:after {
  display: none; }

.elementor-editor-content-only .elementor-column > .elementor-element-overlay {
  display: none; }
  .elementor-editor-content-only .elementor-column > .elementor-element-overlay:after {
    display: none; }

.elementor-editor-content-only .elementor-column:hover > .elementor-element-overlay:after, .elementor-editor-content-only .elementor-column.elementor-element-editable > .elementor-element-overlay:after {
  display: none; }

@media (min-width: 1025px) {
  .elementor-editor-content-only .elementor-editor-element-edit {
    cursor: pointer; } }

.elementor-sortable-placeholder:not(.elementor-column-placeholder) {
  background-color: #71d7f7;
  -webkit-animation-duration: 250ms;
          animation-duration: 250ms;
  opacity: .9;
  width: 100%;
  -ms-flex-item-align: stretch;
      align-self: stretch; }

.elementor-section-placeholder {
  height: 40px;
  -webkit-animation-name: placeholder-section;
          animation-name: placeholder-section; }

.elementor-column-placeholder {
  position: relative; }
  .elementor-column-placeholder:before, .elementor-column-placeholder:after {
    content: '';
    position: absolute;
    top: 10px;
    bottom: 10px;
    right: 10px;
    left: 10px; }
  .elementor-column-placeholder:before {
    border: 1px solid #6d7882; }
  .elementor-column-placeholder:after {
    border: 1px dashed #fff; }

.elementor-widget-placeholder {
  height: 10px;
  -webkit-animation-name: placeholder-widget;
          animation-name: placeholder-widget; }

.elementor-draggable-over:not([data-dragged-element="section"]):not([data-dragged-is-inner="true"]) > .elementor-empty-view > .elementor-first-add:after,
.elementor-first-add.elementor-html5dnd-current-element:after {
  content: '';
  background-color: #71d7f7;
  -webkit-transition-timing-function: ease-out;
       -o-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  opacity: .9;
  height: 10px;
  -webkit-animation: placeholder-widget 500ms;
          animation: placeholder-widget 500ms;
  width: 100%; }

.elementor-draggable-over:not([data-dragged-element="section"]):not([data-dragged-is-inner="true"]) > .elementor-empty-view > .elementor-first-add .elementor-icon,
.elementor-first-add.elementor-html5dnd-current-element .elementor-icon {
  display: none; }

.elementor-draggable-over[data-dragged-element="section"][data-dragged-is-inner="true"] .elementor-inner-column .elementor-sortable-placeholder {
  display: none; }

.elementor-add-section {
  all: initial;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 1160px;
  position: relative; }
  .elementor-add-section:not(.elementor-dragging-on-child) .elementor-add-section-inner {
    border: 2px dashed #d5dadf;
    background-color: rgba(255, 255, 255, 0.5); }
  .elementor-add-section.elementor-dragging-on-child .elementor-add-section-inner {
    border: 3px dashed #71d7f7; }
  .elementor-add-section[data-view="choose-action"] .elementor-select-preset {
    display: none; }
  .elementor-add-section[data-view="select-preset"] .elementor-add-new-section {
    display: none; }

.elementor-add-section-inner {
  text-align: center;
  margin: 20px;
  padding: 40px 0;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1; }

.elementor-add-new-section {
  display: inline-block; }
  .elementor-add-new-section .elementor-add-section-area-button {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    height: 40px;
    width: 40px;
    color: #fff;
    font-size: 16px;
    -webkit-border-radius: 50%;
            border-radius: 50%;
    -webkit-transition: all .3s;
    -o-transition: all .3s;
    transition: all .3s;
    cursor: pointer; }
    .elementor-add-new-section .elementor-add-section-area-button:hover {
      opacity: 0.85;
      -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
              box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); }
    .elementor-add-new-section .elementor-add-section-area-button:active {
      -webkit-box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.1);
              box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.1); }
  .elementor-add-new-section .elementor-add-section-button {
    background-color: #93003c; }
  .elementor-add-new-section .elementor-add-template-button {
    background-color: #6d7882;
    margin-right: 5px; }

.elementor-add-section-drag-title {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 13px;
  font-weight: normal;
  font-style: italic;
  line-height: 1;
  color: #556068;
  margin-top: 15px; }

.elementor-add-section-close {
  position: absolute;
  right: 40px;
  top: 40px;
  font-size: 20px;
  cursor: pointer;
  line-height: 1;
  color: #d5dadf; }
  .elementor-add-section-close:hover {
    color: #6d7882; }

.elementor-select-preset-title {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 13px;
  font-weight: 500;
  font-style: normal;
  text-transform: uppercase;
  color: #556068; }

.elementor-select-preset-list {
  list-style: none;
  padding: 0 25px;
  margin: 20px auto 0;
  overflow: hidden;
  max-width: 700px; }
  .elementor-select-preset-list .elementor-preset {
    cursor: pointer;
    margin: 0;
    padding: 10px;
    float: right;
    max-width: 33.333%; }
    .elementor-select-preset-list .elementor-preset:hover path {
      fill: #6d7882; }
    .elementor-select-preset-list .elementor-preset:not(:hover) path {
      fill: #d5dadf; }
    .elementor-select-preset-list .elementor-preset svg {
      height: 50px;
      width: 100%;
      -webkit-transform: rotate(180deg);
          -ms-transform: rotate(180deg);
              transform: rotate(180deg); }

#elementor-add-new-section {
  margin: 60px auto; }
  #elementor-add-new-section[data-view="choose-action"] .elementor-add-section-close {
    display: none; }

.elementor-add-section-inline {
  margin: 10px auto; }

.elementor-column-percents-tooltip {
  position: absolute;
  display: none;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  color: #fff;
  font-size: 10px;
  background-color: #556068;
  width: 40px;
  padding: 3.5px 0;
  text-align: center;
  z-index: 1;
  line-height: 1; }
  .elementor-column-percents-tooltip:after {
    content: '';
    position: absolute;
    width: 0;
    height: 0;
    border: 8.5px solid transparent;
    top: 0; }
  .elementor-column-percents-tooltip[data-side="left"] {
    -webkit-border-radius: 3px 0 0 3px;
            border-radius: 3px 0 0 3px;
    right: 15px; }
    .elementor-column-percents-tooltip[data-side="left"]:after {
      left: 100%;
      border-left-color: #556068;
      border-right-width: 0; }
  .elementor-column-percents-tooltip[data-side="right"] {
    -webkit-border-radius: 0 3px 3px 0;
            border-radius: 0 3px 3px 0;
    left: 15px; }
    .elementor-column-percents-tooltip[data-side="right"]:after {
      right: 100%;
      border-right-color: #556068;
      border-left-width: 0; }

.elementor-editor-preview .elementor-element-overlay,
.elementor-editor-preview .elementor-empty,
.elementor-editor-preview .elementor-add-section,
.elementor-editor-preview .elementor-add-section-inline,
.elementor-editor-preview .elementor-empty-view,
.elementor-editor-preview .elementor-widget-empty {
  display: none; }

.e-preview--show-hidden-elements[data-elementor-device-mode="widescreen"] .elementor-edit-area-active .elementor-hidden-widescreen,
.e-preview--show-hidden-elements[data-elementor-device-mode="desktop"] .elementor-edit-area-active .elementor-hidden-desktop,
.e-preview--show-hidden-elements[data-elementor-device-mode="laptop"] .elementor-edit-area-active .elementor-hidden-laptop,
.e-preview--show-hidden-elements[data-elementor-device-mode="tablet_extra"] .elementor-edit-area-active .elementor-hidden-tablet_extra,
.e-preview--show-hidden-elements[data-elementor-device-mode="tablet"] .elementor-edit-area-active .elementor-hidden-tablet,
.e-preview--show-hidden-elements[data-elementor-device-mode="mobile_extra"] .elementor-edit-area-active .elementor-hidden-mobile_extra,
.e-preview--show-hidden-elements[data-elementor-device-mode="mobile"] .elementor-edit-area-active .elementor-hidden-mobile {
  display: inherit;
  background: -webkit-repeating-linear-gradient(325deg, rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 1px, transparent 2px, transparent 9px);
  background: -o-repeating-linear-gradient(325deg, rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 1px, transparent 2px, transparent 9px);
  background: repeating-linear-gradient(125deg, rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 1px, transparent 2px, transparent 9px);
  border: 1px solid rgba(0, 0, 0, 0.02); }
  .e-preview--show-hidden-elements[data-elementor-device-mode="widescreen"] .elementor-edit-area-active .elementor-hidden-widescreen.elementor-section > .elementor-element-overlay,
  .e-preview--show-hidden-elements[data-elementor-device-mode="desktop"] .elementor-edit-area-active .elementor-hidden-desktop.elementor-section > .elementor-element-overlay,
  .e-preview--show-hidden-elements[data-elementor-device-mode="laptop"] .elementor-edit-area-active .elementor-hidden-laptop.elementor-section > .elementor-element-overlay,
  .e-preview--show-hidden-elements[data-elementor-device-mode="tablet_extra"] .elementor-edit-area-active .elementor-hidden-tablet_extra.elementor-section > .elementor-element-overlay,
  .e-preview--show-hidden-elements[data-elementor-device-mode="tablet"] .elementor-edit-area-active .elementor-hidden-tablet.elementor-section > .elementor-element-overlay,
  .e-preview--show-hidden-elements[data-elementor-device-mode="mobile_extra"] .elementor-edit-area-active .elementor-hidden-mobile_extra.elementor-section > .elementor-element-overlay,
  .e-preview--show-hidden-elements[data-elementor-device-mode="mobile"] .elementor-edit-area-active .elementor-hidden-mobile.elementor-section > .elementor-element-overlay {
    background-color: #d5dadf;
    mix-blend-mode: color; }
  .e-preview--show-hidden-elements[data-elementor-device-mode="widescreen"] .elementor-edit-area-active .elementor-hidden-widescreen.elementor-section:before,
  .e-preview--show-hidden-elements[data-elementor-device-mode="desktop"] .elementor-edit-area-active .elementor-hidden-desktop.elementor-section:before,
  .e-preview--show-hidden-elements[data-elementor-device-mode="laptop"] .elementor-edit-area-active .elementor-hidden-laptop.elementor-section:before,
  .e-preview--show-hidden-elements[data-elementor-device-mode="tablet_extra"] .elementor-edit-area-active .elementor-hidden-tablet_extra.elementor-section:before,
  .e-preview--show-hidden-elements[data-elementor-device-mode="tablet"] .elementor-edit-area-active .elementor-hidden-tablet.elementor-section:before,
  .e-preview--show-hidden-elements[data-elementor-device-mode="mobile_extra"] .elementor-edit-area-active .elementor-hidden-mobile_extra.elementor-section:before,
  .e-preview--show-hidden-elements[data-elementor-device-mode="mobile"] .elementor-edit-area-active .elementor-hidden-mobile.elementor-section:before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.6);
    z-index: 9997; }
  .e-preview--show-hidden-elements[data-elementor-device-mode="widescreen"] .elementor-edit-area-active .elementor-hidden-widescreen.elementor-inner-section .elementor-container,
  .e-preview--show-hidden-elements[data-elementor-device-mode="desktop"] .elementor-edit-area-active .elementor-hidden-desktop.elementor-inner-section .elementor-container,
  .e-preview--show-hidden-elements[data-elementor-device-mode="laptop"] .elementor-edit-area-active .elementor-hidden-laptop.elementor-inner-section .elementor-container,
  .e-preview--show-hidden-elements[data-elementor-device-mode="tablet_extra"] .elementor-edit-area-active .elementor-hidden-tablet_extra.elementor-inner-section .elementor-container,
  .e-preview--show-hidden-elements[data-elementor-device-mode="tablet"] .elementor-edit-area-active .elementor-hidden-tablet.elementor-inner-section .elementor-container,
  .e-preview--show-hidden-elements[data-elementor-device-mode="mobile_extra"] .elementor-edit-area-active .elementor-hidden-mobile_extra.elementor-inner-section .elementor-container,
  .e-preview--show-hidden-elements[data-elementor-device-mode="mobile"] .elementor-edit-area-active .elementor-hidden-mobile.elementor-inner-section .elementor-container {
    width: 100%; }
  .e-preview--show-hidden-elements[data-elementor-device-mode="widescreen"] .elementor-edit-area-active .elementor-hidden-widescreen > .elementor-widget-container, .e-preview--show-hidden-elements[data-elementor-device-mode="widescreen"] .elementor-edit-area-active .elementor-hidden-widescreen > .elementor-widget-wrap,
  .e-preview--show-hidden-elements[data-elementor-device-mode="desktop"] .elementor-edit-area-active .elementor-hidden-desktop > .elementor-widget-container,
  .e-preview--show-hidden-elements[data-elementor-device-mode="desktop"] .elementor-edit-area-active .elementor-hidden-desktop > .elementor-widget-wrap,
  .e-preview--show-hidden-elements[data-elementor-device-mode="laptop"] .elementor-edit-area-active .elementor-hidden-laptop > .elementor-widget-container,
  .e-preview--show-hidden-elements[data-elementor-device-mode="laptop"] .elementor-edit-area-active .elementor-hidden-laptop > .elementor-widget-wrap,
  .e-preview--show-hidden-elements[data-elementor-device-mode="tablet_extra"] .elementor-edit-area-active .elementor-hidden-tablet_extra > .elementor-widget-container,
  .e-preview--show-hidden-elements[data-elementor-device-mode="tablet_extra"] .elementor-edit-area-active .elementor-hidden-tablet_extra > .elementor-widget-wrap,
  .e-preview--show-hidden-elements[data-elementor-device-mode="tablet"] .elementor-edit-area-active .elementor-hidden-tablet > .elementor-widget-container,
  .e-preview--show-hidden-elements[data-elementor-device-mode="tablet"] .elementor-edit-area-active .elementor-hidden-tablet > .elementor-widget-wrap,
  .e-preview--show-hidden-elements[data-elementor-device-mode="mobile_extra"] .elementor-edit-area-active .elementor-hidden-mobile_extra > .elementor-widget-container,
  .e-preview--show-hidden-elements[data-elementor-device-mode="mobile_extra"] .elementor-edit-area-active .elementor-hidden-mobile_extra > .elementor-widget-wrap,
  .e-preview--show-hidden-elements[data-elementor-device-mode="mobile"] .elementor-edit-area-active .elementor-hidden-mobile > .elementor-widget-container,
  .e-preview--show-hidden-elements[data-elementor-device-mode="mobile"] .elementor-edit-area-active .elementor-hidden-mobile > .elementor-widget-wrap {
    -webkit-filter: opacity(0.4) saturate(0);
            filter: opacity(0.4) saturate(0); }
  .e-preview--show-hidden-elements[data-elementor-device-mode="widescreen"] .elementor-edit-area-active .elementor-hidden-widescreen.elementor-edit-hidden,
  .e-preview--show-hidden-elements[data-elementor-device-mode="desktop"] .elementor-edit-area-active .elementor-hidden-desktop.elementor-edit-hidden,
  .e-preview--show-hidden-elements[data-elementor-device-mode="laptop"] .elementor-edit-area-active .elementor-hidden-laptop.elementor-edit-hidden,
  .e-preview--show-hidden-elements[data-elementor-device-mode="tablet_extra"] .elementor-edit-area-active .elementor-hidden-tablet_extra.elementor-edit-hidden,
  .e-preview--show-hidden-elements[data-elementor-device-mode="tablet"] .elementor-edit-area-active .elementor-hidden-tablet.elementor-edit-hidden,
  .e-preview--show-hidden-elements[data-elementor-device-mode="mobile_extra"] .elementor-edit-area-active .elementor-hidden-mobile_extra.elementor-edit-hidden,
  .e-preview--show-hidden-elements[data-elementor-device-mode="mobile"] .elementor-edit-area-active .elementor-hidden-mobile.elementor-edit-hidden {
    display: none; }
/*# sourceMappingURL=editor-preview-rtl.css.map */assets/css/widget-divider-rtl.min.css000064400000007217151327220410013644 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-widget-divider{--divider-border-style:none;--divider-border-width:1px;--divider-color:#2c2c2c;--divider-icon-size:20px;--divider-element-spacing:10px;--divider-pattern-height:24px;--divider-pattern-size:20px;--divider-pattern-url:none;--divider-pattern-repeat:repeat-x}.elementor-widget-divider .elementor-divider{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget-divider .elementor-divider__text{font-size:15px;line-height:1;max-width:95%}.elementor-widget-divider .elementor-divider__element{margin:0 var(--divider-element-spacing);-ms-flex-negative:0;flex-shrink:0}.elementor-widget-divider .elementor-icon{font-size:var(--divider-icon-size)}.elementor-widget-divider .elementor-divider-separator{display:-webkit-box;display:-ms-flexbox;display:flex;margin:0;direction:ltr}.elementor-widget-divider--view-line_icon .elementor-divider-separator,.elementor-widget-divider--view-line_text .elementor-divider-separator{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-widget-divider--view-line_icon .elementor-divider-separator:after,.elementor-widget-divider--view-line_icon .elementor-divider-separator:before,.elementor-widget-divider--view-line_text .elementor-divider-separator:after,.elementor-widget-divider--view-line_text .elementor-divider-separator:before{display:block;content:"";border-bottom:0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;border-top:var(--divider-border-width) var(--divider-border-style) var(--divider-color)}.elementor-widget-divider--element-align-left .elementor-divider .elementor-divider-separator>.elementor-divider__svg:first-of-type{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:100;flex-shrink:100}.elementor-widget-divider--element-align-left .elementor-divider-separator:before{content:none}.elementor-widget-divider--element-align-left .elementor-divider__element{margin-left:0}.elementor-widget-divider--element-align-right .elementor-divider .elementor-divider-separator>.elementor-divider__svg:last-of-type{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:100;flex-shrink:100}.elementor-widget-divider--element-align-right .elementor-divider-separator:after{content:none}.elementor-widget-divider--element-align-right .elementor-divider__element{margin-right:0}.elementor-widget-divider:not(.elementor-widget-divider--view-line_text):not(.elementor-widget-divider--view-line_icon) .elementor-divider-separator{border-top:var(--divider-border-width) var(--divider-border-style) var(--divider-color)}.elementor-widget-divider--separator-type-pattern{--divider-border-style:none}.elementor-widget-divider--separator-type-pattern.elementor-widget-divider--view-line .elementor-divider-separator,.elementor-widget-divider--separator-type-pattern:not(.elementor-widget-divider--view-line) .elementor-divider-separator:after,.elementor-widget-divider--separator-type-pattern:not(.elementor-widget-divider--view-line) .elementor-divider-separator:before,.elementor-widget-divider--separator-type-pattern:not([class*=elementor-widget-divider--view]) .elementor-divider-separator{width:100%;min-height:var(--divider-pattern-height);-webkit-mask-size:var(--divider-pattern-size) 100%;mask-size:var(--divider-pattern-size) 100%;-webkit-mask-repeat:var(--divider-pattern-repeat);mask-repeat:var(--divider-pattern-repeat);background-color:var(--divider-color);-webkit-mask-image:var(--divider-pattern-url);mask-image:var(--divider-pattern-url)}.elementor-widget-divider--no-spacing{--divider-pattern-size:auto}.elementor-widget-divider--bg-round{--divider-pattern-repeat:round}.rtl .elementor-widget-divider .elementor-divider__text{direction:rtl}assets/css/editor-rtl.css000064400000576724151327220410011457 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
@charset "UTF-8";
.elementor-control-unit-1 {
  width: 27px; }

.elementor-control-unit-2 {
  width: 54px; }

.elementor-control-unit-3 {
  width: 81px; }

.elementor-control-unit-4 {
  width: 108px; }

.elementor-control-unit-5 {
  max-width: 400px;
  width: 52%; }

*, :before, :after {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

body,
html {
  height: 100%; }

html {
  background-color: #F1F1F1; }

iframe,
img {
  border: 0 none; }

li {
  list-style: none; }

a {
  text-decoration: none; }

body {
  color: #6d7882;
  font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
  font-size: 13px;
  font-weight: normal;
  line-height: 1;
  text-decoration: none;
  text-transform: none;
  overflow: hidden; }
  body:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 0;
    background-color: #71d7f7;
    -webkit-transition: width .5s;
    -o-transition: width .5s;
    transition: width .5s; }
  body a {
    color: #71d7f7; }
    body a:hover {
      color: #93003c; }
  body.elementor-editor-active #elementor-mode-switcher-preview .eicon:before {
    content: ""; }
  body.elementor-editor-preview {
    --e-preview-width: 100%; }
    body.elementor-editor-preview #elementor-mode-switcher-preview .eicon:before {
      content: ""; }
  body.elementor-navigator--dock-hint:after {
    width: 30px; }

#elementor-editor-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 100vh; }

#elementor-panel:not(.ui-resizable-resizing),
#elementor-preview:not(.ui-resizable-resizing) {
  -webkit-transition: margin .5s ease-in-out, width .5s ease-in-out;
  -o-transition: margin .5s ease-in-out, width .5s ease-in-out;
  transition: margin .5s ease-in-out, width .5s ease-in-out; }

#elementor-loading {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background: #f1f3f5;
  z-index: 9999; }

#elementor-preview-loading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff; }
  #elementor-preview-loading i {
    color: #d5dadf;
    font-size: 50px; }

#elementor-fatal-error-dialog button.dialog-ok {
  color: #71d7f7; }

#elementor-fatal-error-dialog .dialog-header {
  color: #6d7882; }

#elementor-flexbox-attention-dialog .dialog-cancel {
  color: #39b54a; }

#elementor-flexbox-attention-dialog .dialog-ok {
  color: #6d7882; }

.elementor-nerd-box {
  padding: 30px;
  text-align: center; }
  .elementor-nerd-box-icon {
    width: 100px;
    margin-right: 10px; }
  .elementor-nerd-box-title {
    margin-top: 20px;
    font-size: 16px;
    font-weight: bold;
    line-height: 1.4; }
  .elementor-nerd-box-message {
    margin-top: 5px;
    line-height: 1.8;
    font-size: 11px; }
  .elementor-nerd-box .elementor-button.elementor-nerd-box-link {
    background-color: #93003c;
    color: #ffffff;
    padding: 7px 25px;
    margin-top: 20px;
    -webkit-box-shadow: 0 0 1px rgba(0, 0, 0, 0.1), 0 2px 2px rgba(0, 0, 0, 0.1);
            box-shadow: 0 0 1px rgba(0, 0, 0, 0.1), 0 2px 2px rgba(0, 0, 0, 0.1);
    -webkit-transition: .5s;
    -o-transition: .5s;
    transition: .5s; }
    .elementor-nerd-box .elementor-button.elementor-nerd-box-link:hover {
      background-color: #c60051; }

.eicon-nerd:hover:before {
  content: '\e8b7'; }

.eicon-nerd:active:before {
  content: '\e8b6'; }

.e-group-control-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: bold;
  font-size: 12px;
  padding: 10px;
  -webkit-box-shadow: 0px 2px 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0px 2px 8px rgba(0, 0, 0, 0.1);
  margin-bottom: 15px; }

.e-control-tools {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.e-control-tool {
  width: 20px;
  height: 20px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  margin: 0 3px 0;
  border: 0;
  position: relative;
  background-color: #fff; }
  .e-control-tool:not(.e-control-tool-disabled) {
    -webkit-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.1);
            box-shadow: 0 1px 5px rgba(0, 0, 0, 0.1);
    cursor: pointer; }
  .e-control-tool-disabled {
    background: #e6e9ec;
    pointer-events: none; }
    .e-control-tool-disabled i {
      color: #fff; }
  .e-control-tool i {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
        -ms-transform: translateX(-50%) translateY(-50%);
            transform: translateX(-50%) translateY(-50%);
    color: #6d7882;
    font-size: 13px; }

#e-enable-unfiltered-files-dialog .dialog-confirm-ok {
  color: #39b54a; }

i.eicon-tilted {
  -webkit-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
          transform: rotate(90deg); }

.elementor-loader-wrapper {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 300px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.elementor-loader {
  -webkit-border-radius: 50%;
          border-radius: 50%;
  padding: 40px;
  height: 150px;
  width: 150px;
  background-color: rgba(255, 255, 255, 0.9);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-box-shadow: 2px 2px 20px 4px rgba(0, 0, 0, 0.02);
          box-shadow: 2px 2px 20px 4px rgba(0, 0, 0, 0.02); }

.elementor-loader-boxes {
  height: 100%;
  width: 100%;
  position: relative; }

.elementor-loader-box {
  position: absolute;
  background-color: #d5dadf;
  -webkit-animation: load 1.8s linear infinite;
          animation: load 1.8s linear infinite; }
  .elementor-loader-box:nth-of-type(1) {
    width: 20%;
    height: 100%;
    left: 0;
    top: 0; }
  .elementor-loader-box:not(:nth-of-type(1)) {
    right: 0;
    height: 20%;
    width: 60%; }
  .elementor-loader-box:nth-of-type(2) {
    top: 0;
    -webkit-animation-delay: -0.45s;
            animation-delay: -0.45s; }
  .elementor-loader-box:nth-of-type(3) {
    top: 40%;
    -webkit-animation-delay: -0.9s;
            animation-delay: -0.9s; }
  .elementor-loader-box:nth-of-type(4) {
    bottom: 0;
    -webkit-animation-delay: -1.35s;
            animation-delay: -1.35s; }

.elementor-loading-title {
  color: #a4afb7;
  text-align: center;
  text-transform: uppercase;
  margin-top: 30px;
  letter-spacing: 7px;
  text-indent: 7px;
  font-size: 10px;
  width: 100%; }

.elementor-button {
  font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
  font-weight: 500;
  text-transform: uppercase;
  outline: none;
  border: none;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  -webkit-transition-property: background, color, opacity, -webkit-box-shadow;
  transition-property: background, color, opacity, -webkit-box-shadow;
  -o-transition-property: background, color, box-shadow, opacity;
  transition-property: background, color, box-shadow, opacity;
  transition-property: background, color, box-shadow, opacity, -webkit-box-shadow;
  -webkit-transition-duration: .3s;
       -o-transition-duration: .3s;
          transition-duration: .3s; }
  .elementor-button:hover {
    border: none; }
  .elementor-button:not([disabled]) {
    cursor: pointer; }
  .elementor-button:not(.elementor-button-state) .elementor-state-icon {
    display: none; }
  .elementor-button.elementor-button-success {
    color: #fff; }
    .elementor-button.elementor-button-success[disabled] {
      background-color: #c2cbd2; }
    .elementor-button.elementor-button-success:not([disabled]) {
      background-color: #39b54a; }
      .elementor-button.elementor-button-success:not([disabled]):hover {
        opacity: 0.85;
        -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
                box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); }
      .elementor-button.elementor-button-success:not([disabled]):active {
        -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
                box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); }
  .elementor-button.elementor-button-warning {
    background-color: #a4afb7;
    color: #fff; }
    .elementor-button.elementor-button-warning[disabled] {
      background-color: #c2cbd2; }
    .elementor-button.elementor-button-warning:not([disabled]):hover {
      background-color: #b01b1b;
      opacity: 0.85;
      -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
              box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); }
    .elementor-button.elementor-button-warning:not([disabled]):active {
      -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
              box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); }
  .elementor-button.elementor-button-danger {
    background-color: #d72b3f;
    color: #fff; }
    .elementor-button.elementor-button-danger[disabled] {
      background-color: #c2cbd2; }
    .elementor-button.elementor-button-danger:not([disabled]):hover {
      opacity: 0.85;
      -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
              box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); }
    .elementor-button.elementor-button-danger:not([disabled]):active {
      -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
              box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); }
  .elementor-button.elementor-edit-template {
    display: inline-block;
    margin-top: 15px;
    color: #fff; }
  .elementor-button.elementor-button-default {
    background-color: #a4afb7;
    color: #fff;
    font-size: 11px;
    padding: 7px 21px; }
    .elementor-button.elementor-button-default:hover {
      background-color: #6d7882;
      -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2);
              box-shadow: 0 0 2px rgba(0, 0, 0, 0.12), 0 2px 2px rgba(0, 0, 0, 0.2); }
    .elementor-button.elementor-button-default:active {
      -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1);
              box-shadow: 0 5px 10px rgba(0, 0, 0, 0.19), 0 3px 3px rgba(0, 0, 0, 0.1); }
    .elementor-button.elementor-button-default:visited {
      color: #fff; }
  .elementor-button.elementor-button-go-pro {
    background-color: #93003c; }
  .elementor-button i {
    margin-left: 10px; }

input, select, textarea, .elementor-input-style {
  -webkit-border-radius: 3px;
          border-radius: 3px;
  font-size: 12px;
  width: 100%;
  background: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  color: #6d7882;
  border: 1px solid;
  outline: none; }
  input:not(:focus), select:not(:focus), textarea:not(:focus), .elementor-input-style:not(:focus) {
    border-color: #d5dadf; }
  input:focus, input:focus + .elementor-control-dynamic-switcher, select:focus, select:focus + .elementor-control-dynamic-switcher, textarea:focus, textarea:focus + .elementor-control-dynamic-switcher, .elementor-input-style:focus, .elementor-input-style:focus + .elementor-control-dynamic-switcher {
    border-color: #a4afb7; }
  input::-webkit-input-placeholder, select::-webkit-input-placeholder, textarea::-webkit-input-placeholder, .elementor-input-style::-webkit-input-placeholder {
    color: #a4afb7; }
  input::-moz-placeholder, select::-moz-placeholder, textarea::-moz-placeholder, .elementor-input-style::-moz-placeholder {
    color: #a4afb7; }
  input::-ms-input-placeholder, select::-ms-input-placeholder, textarea::-ms-input-placeholder, .elementor-input-style::-ms-input-placeholder {
    color: #a4afb7; }
  input::placeholder, select::placeholder, textarea::placeholder, .elementor-input-style::placeholder {
    color: #a4afb7; }

.elementor-error input, .elementor-error select, .elementor-error textarea {
  border-color: #b01b1b; }

input {
  min-width: 0; }

input, textarea, .elementor-input-style {
  padding: 5px; }

textarea, .elementor-input-style {
  resize: vertical; }

input[type="checkbox"],
input[type="radio"] {
  height: auto;
  width: auto; }

input[disabled] {
  background-color: #e6e9ec;
  cursor: not-allowed;
  opacity: 1; }

select {
  outline: none;
  height: 27px; }

/*
 * Container style
 */
.ps {
  overflow: hidden !important;
  overflow-anchor: none;
  -ms-touch-action: auto;
      touch-action: auto; }

/*
 * Scrollbar rail styles
 */
.ps__rail-y {
  display: none;
  opacity: 0;
  -webkit-transition: background-color .2s linear, opacity .2s linear;
  -o-transition: background-color .2s linear, opacity .2s linear;
  transition: background-color .2s linear, opacity .2s linear;
  width: 15px;
  /* there must be 'right' or 'left' for ps__rail-y */
  right: 0;
  left: initial !important;
  /* please don't change 'position' */
  position: absolute; }

.ps--active-y > .ps__rail-y {
  display: block;
  background-color: transparent; }

.ps:hover > .ps__rail-y,
.ps--focus > .ps__rail-y,
.ps--scrolling-y > .ps__rail-y {
  opacity: 0.6; }

.ps .ps__rail-y:hover,
.ps .ps__rail-y:focus,
.ps .ps__rail-y.ps--clicking {
  opacity: 0.9; }

.ps__thumb-y {
  background-color: #aaa;
  -webkit-border-radius: 6px;
          border-radius: 6px;
  -webkit-transition: background-color .2s linear, width .2s ease-in-out;
  -o-transition: background-color .2s linear, width .2s ease-in-out;
  transition: background-color .2s linear, width .2s ease-in-out;
  width: 6px;
  /* there must be 'right' for ps__thumb-y */
  right: 2px;
  /* please don't change 'position' */
  position: absolute; }

.ps__rail-y:hover > .ps__thumb-y,
.ps__rail-y:focus > .ps__thumb-y,
.ps__rail-y.ps--clicking .ps__thumb-y {
  background-color: #999;
  width: 6px; }

/* Make clicks pass-through */
#nprogress {
  pointer-events: none; }

#nprogress .bar {
  background: #39b54a;
  position: fixed;
  z-index: 1031;
  top: 0;
  left: 0;
  width: 100%;
  height: 2px; }

/* Fancy blur effect */
#nprogress .peg {
  display: block;
  position: absolute;
  right: 0;
  width: 100px;
  height: 100%;
  -webkit-box-shadow: 0 0 10px #39b54a, 0 0 5px #39b54a;
          box-shadow: 0 0 10px #39b54a, 0 0 5px #39b54a;
  opacity: 1.0;
  -webkit-transform: rotate(3deg) translate(0px, -4px);
      -ms-transform: rotate(3deg) translate(0px, -4px);
          transform: rotate(3deg) translate(0px, -4px); }

/* Remove these to get rid of the spinner */
#nprogress .spinner {
  display: none;
  position: fixed;
  z-index: 1031;
  top: 15px;
  right: 15px; }

#nprogress .spinner-icon {
  width: 18px;
  height: 18px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: solid 2px transparent;
  border-top-color: #39b54a;
  border-left-color: #39b54a;
  -webkit-border-radius: 50%;
          border-radius: 50%;
  -webkit-animation: nprogress-spinner 400ms linear infinite;
          animation: nprogress-spinner 400ms linear infinite; }

.nprogress-custom-parent {
  overflow: hidden;
  position: relative; }

.nprogress-custom-parent #nprogress .spinner,
.nprogress-custom-parent #nprogress .bar {
  position: absolute; }

@-webkit-keyframes nprogress-spinner {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

@keyframes nprogress-spinner {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

#nprogress .bar,
#nprogress .spinner {
  z-index: 100000; }

:root {
  --e-is-preview-mode: 0; }
  @media (max-width: 1439px) {
    :root {
      --e-editor-panel-width: 280px; } }
  @media (min-width: 1440px) {
    :root {
      --e-editor-panel-width: 300px; } }

.elementor-panel {
  position: relative;
  height: 100%;
  -webkit-margin-start: calc(-1 * var(--e-editor-panel-width) * var(--e-is-preview-mode));
          margin-inline-start: calc(-1 * var(--e-editor-panel-width) * var(--e-is-preview-mode));
  width: var(--e-editor-panel-width);
  overflow: visible;
  background-color: #e6e9ec;
  z-index: 1;
  font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
  font-size: 13px;
  right: 0; }
  .elementor-editor-preview .elementor-panel {
    --e-is-preview-mode: 1; }
    .elementor-editor-preview .elementor-panel > .ui-resizable-e, .elementor-editor-preview .elementor-panel > .ui-resizable-w {
      display: none; }
  .elementor-panel .ps__rail-y {
    z-index: 2; }
  .elementor-panel .elementor-responsive-panel {
    padding: 5px 10px;
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(auto-fill, minmax(Min(135px, calc( 50% - 5px)), 1fr)); }
    .elementor-panel .elementor-responsive-panel > .e-responsive-panel-stretch {
      grid-column: 1 / -1; }
  .elementor-panel ::-moz-selection {
    background: #5bc0de;
    color: #ffffff; }
  .elementor-panel ::selection {
    background: #5bc0de;
    color: #ffffff; }
  .elementor-panel a {
    color: #93003c; }
  .elementor-panel h1,
  .elementor-panel h2,
  .elementor-panel h3,
  .elementor-panel h4,
  .elementor-panel h5,
  .elementor-panel h6 {
    font-size: 100%;
    font-weight: normal; }
  .elementor-panel abbr,
  .elementor-panel acronym {
    border: 0;
    font-variant: normal; }
  .elementor-panel sup {
    vertical-align: text-top; }
  .elementor-panel sub {
    vertical-align: text-bottom; }
  .elementor-panel img {
    max-width: 100%;
    height: auto;
    border: 0; }
  .elementor-panel ::-moz-focus-inner {
    padding: 0;
    border: 0; }
  .elementor-panel :focus {
    outline: 0; }
  .elementor-panel .elementor-panel-box {
    margin-top: 10px;
    background-color: #fff; }
  .elementor-panel .elementor-panel-box-content {
    padding: 20px 20px 10px; }
  .elementor-panel .elementor-button {
    display: inline-block; }
  .elementor-panel .elementor-panel-alert {
    background-color: #fcfcfc;
    padding: 15px;
    border-right: 3px solid transparent;
    position: relative;
    font-size: 12px;
    font-weight: 300;
    font-style: italic;
    line-height: 1.5;
    text-align: right;
    -webkit-border-radius: 3px 0 0 3px;
            border-radius: 3px 0 0 3px;
    -webkit-box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.07);
            box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.07); }
    .elementor-panel .elementor-panel-alert a {
      color: inherit; }
    .elementor-panel .elementor-panel-alert.elementor-panel-alert-info {
      border-color: #71d7f7;
      background-color: #f3fcff; }
    .elementor-panel .elementor-panel-alert.elementor-panel-alert-success {
      border-color: #39b54a; }
    .elementor-panel .elementor-panel-alert.elementor-panel-alert-warning {
      border-color: #fcb92c; }
    .elementor-panel .elementor-panel-alert.elementor-panel-alert-danger {
      border-color: #d72b3f; }
  .elementor-panel .elementor-label {
    display: inline;
    padding: .2em .6em .3em;
    font-size: 75%;
    font-weight: 700;
    line-height: 1;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    -webkit-border-radius: .25em;
            border-radius: .25em;
    text-transform: capitalize; }
    .elementor-panel .elementor-label.elementor-label-default {
      background-color: #a4afb7; }
    .elementor-panel .elementor-label.elementor-label-info {
      background-color: #5bc0de; }
    .elementor-panel .elementor-label.elementor-label-success {
      background-color: #5cb85c; }
    .elementor-panel .elementor-label.elementor-label-warning {
      background-color: #f0ad4e; }
    .elementor-panel .elementor-label.elementor-label-danger {
      background-color: #d9534f; }
  .elementor-panel .elementor-descriptor, .elementor-panel .elementor-control-field-description {
    font-size: 11px;
    font-style: italic;
    line-height: 1.4;
    color: #a4afb7; }
  .elementor-panel .elementor-controls-popover {
    display: none;
    position: absolute;
    -webkit-box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3);
            box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3);
    -webkit-border-radius: 3px;
            border-radius: 3px;
    left: 0;
    right: 0;
    margin: -4px auto 5px;
    padding-top: 15px;
    width: 90%;
    z-index: 10000;
    background-color: #fff; }
    .elementor-panel .elementor-controls-popover:before {
      content: '';
      position: absolute;
      top: -16px;
      left: 22px;
      border: 8px solid transparent;
      border-bottom-color: #fff; }
    .elementor-panel .elementor-controls-popover div.elementor-control {
      background-color: transparent; }
      .elementor-panel .elementor-controls-popover div.elementor-control:before {
        content: none; }
  .elementor-panel #elementor-controls .pojo-widget-button-collapse {
    display: none; }
  .elementor-panel #elementor-panel-global .elementor-nerd-box .elementor-nerd-box-icon {
    margin-top: 20px; }
  .elementor-panel #elementor-panel-header {
    display: table;
    height: 40px;
    width: 100%;
    background-color: #93003c;
    color: #fff; }
    .elementor-panel #elementor-panel-header > * {
      display: table-cell;
      vertical-align: middle;
      text-align: center; }
  .elementor-panel .elementor-header-button {
    width: 40px; }
    .elementor-panel .elementor-header-button .elementor-icon {
      cursor: pointer;
      display: block;
      font-size: 19px;
      height: 40px;
      line-height: 40px;
      -webkit-transition: all 0.3s;
      -o-transition: all 0.3s;
      transition: all 0.3s; }
      .elementor-panel .elementor-header-button .elementor-icon.eicon-menu-bar {
        font-size: 18px; }
      .elementor-panel .elementor-header-button .elementor-icon:hover {
        color: #d5dadf; }
  .elementor-panel #elementor-panel-header-title {
    font-size: 15px; }
    .elementor-panel #elementor-panel-header-title img {
      width: 90px; }
  .elementor-panel #elementor-panel-elements-categories {
    padding-bottom: 10px; }
  .elementor-panel .elementor-panel-category {
    position: relative; }
    .elementor-panel .elementor-panel-category:first-child .elementor-panel-category-title {
      padding-top: 14px; }
    .elementor-panel .elementor-panel-category.elementor-active .elementor-panel-category-title:before {
      -webkit-transform: rotate(-90deg);
          -ms-transform: rotate(-90deg);
              transform: rotate(-90deg); }
    .elementor-panel .elementor-panel-category:not(.elementor-active):after {
      content: '';
      position: absolute;
      left: 15px;
      right: 15px;
      bottom: 0;
      height: 8px;
      background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.03)), to(transparent));
      background: -webkit-linear-gradient(rgba(0, 0, 0, 0.03), transparent);
      background: -o-linear-gradient(rgba(0, 0, 0, 0.03), transparent);
      background: linear-gradient(rgba(0, 0, 0, 0.03), transparent);
      -webkit-transform: translateY(100%);
          -ms-transform: translateY(100%);
              transform: translateY(100%); }
    .elementor-panel .elementor-panel-category-title {
      margin: 0 15px;
      padding: 20px 0;
      position: relative;
      text-transform: uppercase;
      font-size: 11px;
      cursor: pointer; }
      .elementor-panel .elementor-panel-category-title:before {
        content: "";
        font-family: eicons;
        position: absolute;
        left: 0;
        -webkit-transition: -webkit-transform .3s;
        transition: -webkit-transform .3s;
        -o-transition: transform .3s;
        transition: transform .3s;
        transition: transform .3s, -webkit-transform .3s; }
    .elementor-panel .elementor-panel-category-items {
      padding: 0 10px; }
  .elementor-panel .elementor-panel-scheme-title {
    padding: 10px 20px;
    margin-top: 10px; }
  .elementor-panel .elementor-panel-scheme-description {
    padding: 20px 20px 0; }
  .elementor-panel .elementor-panel-scheme-buttons {
    padding: 0 20px;
    display: table;
    table-layout: fixed;
    width: 100%;
    height: 40px;
    background-color: #fff;
    -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
            box-shadow: 0 0 8px rgba(0, 0, 0, 0.1); }
    .elementor-panel .elementor-panel-scheme-buttons .elementor-button {
      font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
      font-size: 11px;
      font-weight: 400; }
  .elementor-panel .elementor-panel-scheme-button-wrapper {
    display: table-cell;
    vertical-align: middle;
    text-align: center; }
    .elementor-panel .elementor-panel-scheme-button-wrapper:first-child {
      text-align: right; }
    .elementor-panel .elementor-panel-scheme-button-wrapper:last-child {
      text-align: left; }
  .elementor-panel .elementor-panel-scheme-save .elementor-button {
    padding: 6px 18px; }
  .elementor-panel .elementor-panel-scheme-reset .elementor-button, .elementor-panel .elementor-panel-scheme-discard .elementor-button {
    color: #a4afb7;
    background: none; }
  .elementor-panel .elementor-panel-scheme-color .elementor-panel-scheme-items {
    position: relative;
    display: grid;
    grid-template-columns: repeat(4, 27px);
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
  .elementor-panel .elementor-panel-scheme-color-title {
    text-align: center;
    text-transform: uppercase;
    margin: 10px 0;
    color: #c2cbd2;
    font-size: 8px; }
  .elementor-panel .elementor-panel-scheme-typography-item {
    display: table;
    table-layout: fixed;
    width: 100%;
    margin-bottom: 15px; }
    .elementor-panel .elementor-panel-scheme-typography-item > * {
      display: table-cell;
      vertical-align: middle; }
  .elementor-panel .elementor-panel-scheme-typography-item-value select, .elementor-panel .elementor-panel-scheme-typography-item-value input {
    width: 100%; }
  .elementor-panel .elementor-panel-scheme-item:not(.elementor-open) .elementor-panel-scheme-typography-items {
    display: none; }
  .elementor-panel .elementor-panel-scheme-color-system-scheme {
    margin-bottom: 10px; }
    .elementor-panel .elementor-panel-scheme-color-system-scheme .elementor-title {
      font-size: 11px;
      color: #a4afb7;
      font-style: italic;
      margin-top: 5px; }
  .elementor-panel .elementor-panel-scheme-color-system-items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-transition: border .5s;
    -o-transition: border .5s;
    transition: border .5s;
    overflow: hidden;
    padding: 3px;
    -webkit-border-radius: 3px;
            border-radius: 3px;
    border: 1px solid #d5dadf;
    cursor: pointer; }
    .elementor-panel .elementor-panel-scheme-color-system-items:hover {
      border: 1px solid #a4afb7; }
  .elementor-panel .elementor-panel-scheme-color-system-item {
    height: 20px;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }
  .elementor-panel #elementor-panel-schemes-disabled a {
    color: #39b54a; }
    .elementor-panel #elementor-panel-schemes-disabled a:hover {
      text-decoration: underline; }
  .elementor-panel #elementor-panel-schemes-disabled .elementor-nerd-box-icon {
    margin-top: 20px; }
  .elementor-panel #elementor-panel-page-menu {
    padding: 25px 15px; }
  .elementor-panel .elementor-panel-menu-group-title {
    text-transform: uppercase;
    font-size: 11px; }
  .elementor-panel .elementor-panel-menu-items {
    margin: 15px 0 25px;
    -webkit-border-radius: 5px;
            border-radius: 5px;
    overflow: hidden; }
  .elementor-panel .elementor-panel-menu-item {
    display: table;
    width: 100%;
    height: 40px;
    cursor: pointer;
    margin-bottom: 1px;
    background-color: #fff; }
    .elementor-panel .elementor-panel-menu-item:hover {
      background-color: rgba(255, 255, 255, 0.8); }
    .elementor-panel .elementor-panel-menu-item > * {
      display: table-cell;
      vertical-align: middle; }
    .elementor-panel .elementor-panel-menu-item-icon {
      text-align: center;
      width: 50px;
      color: #a4afb7;
      font-size: 19px; }
      .elementor-panel .elementor-panel-menu-item-icon .eicon-editor-external-link {
        font-size: 18px; }
    .elementor-panel .elementor-panel-menu-item-title {
      font-weight: 500; }
      .elementor-panel .elementor-panel-menu-item-title > span {
        color: #39b54a; }
    .elementor-panel .elementor-panel-menu-item a {
      color: #6d7882; }
    .elementor-panel .elementor-panel-menu-item-exit-to-dashboard {
      background-color: #0085ba;
      color: #fff;
      text-transform: uppercase;
      font-size: 12px; }
      .elementor-panel .elementor-panel-menu-item-exit-to-dashboard:hover {
        background-color: #0073a1; }
      .elementor-panel .elementor-panel-menu-item-exit-to-dashboard .elementor-panel-menu-item-title,
      .elementor-panel .elementor-panel-menu-item-exit-to-dashboard .elementor-panel-menu-item-icon {
        color: #fff; }
    .elementor-panel .elementor-panel-menu-item-settings-additional-settings {
      background-color: #f1f3f5; }
  .elementor-panel .elementor-control.elementor-control-clear_page {
    background-color: transparent; }
    .elementor-panel .elementor-control.elementor-control-clear_page .elementor-control-raw-html {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between; }
  .elementor-panel .elementor-panel-navigation {
    background-color: #ffffff;
    -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
            box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
    display: table;
    table-layout: fixed;
    width: 100%; }
    .elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab {
      display: table-cell; }
      .elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab.elementor-active {
        background-image: -webkit-gradient(linear, left top, left bottom, from(#f1f3f5), to(#fff));
        background-image: -webkit-linear-gradient(top, #f1f3f5, #fff);
        background-image: -o-linear-gradient(top, #f1f3f5, #fff);
        background-image: linear-gradient(to bottom, #f1f3f5, #fff);
        border-bottom: 3px solid #93003c; }
      .elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab a {
        display: block;
        text-align: center;
        padding: 12px 0 8px;
        font-size: 10px;
        color: #6d7882; }
        .elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab a:before {
          font-family: eicons;
          font-size: 16px;
          display: block;
          margin-bottom: 6px; }
  .elementor-panel .elementor-tab-control-content a:before {
    content: '\e92c'; }
  .elementor-panel .elementor-tab-control-style a:before {
    content: '\e921'; }
  .elementor-panel .elementor-tab-control-advanced a:before, .elementor-panel .elementor-tab-control-settings a:before, .elementor-panel .elementor-tab-control-general_style a:before {
    content: '\e916'; }
  .elementor-panel .elementor-tab-control-responsive a:before {
    content: '\e885'; }
  .elementor-panel .elementor-tab-control-layout a:before, .elementor-panel .elementor-tab-control-column a:before {
    content: '\e899'; }
  .elementor-panel .elementor-tab-control-lightbox a:before {
    content: '\e922'; }
  .elementor-panel #elementor-panel__editor__help {
    padding: 50px 25px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .elementor-panel #elementor-panel__editor__help__link {
      display: -webkit-inline-box;
      display: -ms-inline-flexbox;
      display: inline-flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      color: #6d7882;
      font-size: 12px;
      font-weight: 500;
      -webkit-transition: all 0.3s;
      -o-transition: all 0.3s;
      transition: all 0.3s; }
      .elementor-panel #elementor-panel__editor__help__link i {
        padding: 0 5px;
        color: #a4afb7;
        font-size: 18px;
        position: relative; }
        .elementor-panel #elementor-panel__editor__help__link i:after {
          content: '';
          position: absolute;
          height: 13px;
          width: 13px;
          top: 3px;
          bottom: 0;
          right: 8px;
          left: 0;
          -webkit-border-radius: 50%;
                  border-radius: 50%;
          z-index: -1; }
      .elementor-panel #elementor-panel__editor__help__link:hover {
        color: #495157; }
        .elementor-panel #elementor-panel__editor__help__link:hover i {
          color: #71d7f7; }
          .elementor-panel #elementor-panel__editor__help__link:hover i:before {
            content: '\e941'; }
          .elementor-panel #elementor-panel__editor__help__link:hover i:after {
            background: #fff; }
  .elementor-panel #elementor-panel-footer {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 40px;
    background-color: #495157; }
  .elementor-panel #elementor-panel-footer-tools {
    display: table;
    table-layout: fixed;
    width: 100%;
    height: 100%; }
  .elementor-panel .elementor-panel-footer-tool {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    cursor: pointer;
    color: #a4afb7;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s; }
    .elementor-panel .elementor-panel-footer-tool #elementor-panel-saver-button-update {
      border-left: 1px solid #2d8739;
      -webkit-border-radius: 0 3px 3px 0;
              border-radius: 0 3px 3px 0; }
      .elementor-panel .elementor-panel-footer-tool #elementor-panel-saver-button-update i {
        margin-left: 5px; }
    .elementor-panel .elementor-panel-footer-tool #elementor-panel-saver-button-save-options {
      float: right;
      -webkit-border-radius: 3px 0 0 3px;
              border-radius: 3px 0 0 3px; }
      .elementor-panel .elementor-panel-footer-tool #elementor-panel-saver-button-save-options i {
        margin: auto; }
    .elementor-panel .elementor-panel-footer-tool.elementor-open {
      color: #fff; }
    .elementor-panel .elementor-panel-footer-tool:not(.elementor-open):hover {
      color: #d5dadf; }
    .elementor-panel .elementor-panel-footer-tool:not(.elementor-open) .elementor-panel-footer-sub-menu-wrapper {
      display: none; }
  .elementor-panel .elementor-panel-footer-sub-menu-wrapper {
    position: absolute;
    bottom: 100%;
    left: 0;
    width: 100%;
    background-color: #556068;
    padding: 10px;
    -webkit-box-shadow: -2px -5px 8px rgba(0, 0, 0, 0.1);
            box-shadow: -2px -5px 8px rgba(0, 0, 0, 0.1);
    cursor: default;
    z-index: 10000; }
  .elementor-panel .elementor-panel-footer-sub-menu {
    -webkit-border-radius: 5px;
            border-radius: 5px;
    overflow: hidden; }
  .elementor-panel .elementor-panel-footer-sub-menu-item {
    background-color: #495157;
    display: table;
    table-layout: fixed;
    width: 100%;
    cursor: pointer; }
    .elementor-panel .elementor-panel-footer-sub-menu-item.elementor-disabled .elementor-icon,
    .elementor-panel .elementor-panel-footer-sub-menu-item.elementor-disabled .elementor-title {
      color: #6d7882; }
    .elementor-panel .elementor-panel-footer-sub-menu-item:not(:last-child) {
      margin-bottom: 1px; }
    .elementor-panel .elementor-panel-footer-sub-menu-item:hover {
      background-color: rgba(0, 0, 0, 0.2); }
    .elementor-panel .elementor-panel-footer-sub-menu-item.active {
      background-color: rgba(0, 0, 0, 0.3); }
    .elementor-panel .elementor-panel-footer-sub-menu-item > * {
      display: table-cell;
      height: 40px;
      vertical-align: middle; }
    .elementor-panel .elementor-panel-footer-sub-menu-item .elementor-icon {
      width: 40px;
      color: #a4afb7; }
    .elementor-panel .elementor-panel-footer-sub-menu-item .elementor-title {
      text-align: right;
      color: #d5dadf; }
    .elementor-panel .elementor-panel-footer-sub-menu-item .elementor-description {
      width: 95px;
      text-align: right;
      font-size: 11px;
      font-style: italic;
      color: #a4afb7; }
  .elementor-panel #elementor-panel-footer-help-title {
    text-align: right;
    padding: 10px 0;
    color: #d5dadf; }
  .elementor-panel #elementor-panel-footer-responsive > i {
    display: block;
    height: 100%;
    line-height: 40px; }
  .elementor-panel #elementor-panel-footer-saver-publish {
    width: 80px; }
    .elementor-panel #elementor-panel-footer-saver-publish .elementor-button-state i {
      margin-left: 0; }
    .elementor-panel #elementor-panel-footer-saver-publish .elementor-button-state #elementor-panel-saver-button-publish-label {
      display: none; }
  .elementor-panel #elementor-panel-footer-saver-options {
    width: 35px;
    border-right: 1px solid #495157; }
    .elementor-panel #elementor-panel-footer-saver-options .elementor-last-edited-wrapper {
      font-size: 11px;
      font-style: italic;
      color: #a4afb7;
      padding: 5px 0 15px; }
      .elementor-panel #elementor-panel-footer-saver-options .elementor-last-edited-wrapper:not(.elementor-state-active) .elementor-state-icon {
        display: none; }
      .elementor-panel #elementor-panel-footer-saver-options .elementor-last-edited-wrapper time {
        border-bottom: 1px dotted transparent;
        -webkit-transition: all ease-in-out .3s;
        -o-transition: all ease-in-out .3s;
        transition: all ease-in-out .3s;
        cursor: pointer; }
        .elementor-panel #elementor-panel-footer-saver-options .elementor-last-edited-wrapper time:hover {
          border-bottom-color: inherit; }
  .elementor-panel .elementor-disabled {
    cursor: default; }
  .elementor-panel #elementor-panel-saver-button-preview a {
    color: #a4afb7; }
  .elementor-panel #elementor-panel-saver-button-publish, .elementor-panel #elementor-panel-saver-button-save-options {
    font-size: 11px;
    text-transform: uppercase;
    height: 26px; }
    .elementor-panel #elementor-panel-saver-button-publish.elementor-disabled, .elementor-panel #elementor-panel-saver-button-save-options.elementor-disabled {
      background-color: #556068;
      color: #a4afb7; }
  .elementor-panel #elementor-panel-saver-button-publish {
    width: 100%;
    -webkit-border-radius: 0 3px 3px 0;
            border-radius: 0 3px 3px 0; }
  .elementor-panel #elementor-panel-saver-button-save-options {
    width: 25px; }

#elementor-panel-elements-navigation .elementor-panel-navigation-tab {
  text-align: center;
  padding: 10px 0;
  font-size: 11px;
  text-transform: uppercase;
  cursor: pointer; }

#elementor-panel-elements {
  overflow: hidden; }

#elementor-panel-state-loading {
  display: none; }
  body.elementor-panel-loading #elementor-panel-state-loading {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    background-color: rgba(255, 255, 255, 0.5);
    z-index: 2; }
  #elementor-panel-state-loading .eicon-loading {
    font-size: 25px;
    color: #71d7f7; }

#elementor-panel-elements-search-area {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  padding: 10px;
  background-color: #e6e9ec;
  z-index: 1; }

#elementor-panel-elements-search-wrapper {
  position: relative; }

#elementor-panel-elements-search-input {
  background-color: rgba(255, 255, 255, 0.7);
  font-size: 11px;
  padding: 10px 29px 10px 10px;
  font-style: italic;
  color: #a4afb7;
  border: none;
  -webkit-transition: all 1s;
  -o-transition: all 1s;
  transition: all 1s;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none; }
  #elementor-panel-elements-search-input + i {
    position: absolute;
    right: 10px;
    top: 50%;
    color: #a4afb7;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); }
  #elementor-panel-elements-search-input:focus {
    background-color: white;
    padding-left: 15px; }

.elementor-panel .elementor-element {
  -webkit-border-radius: 3px;
          border-radius: 3px;
  background-color: #fff;
  cursor: move;
  position: relative; }
  .elementor-panel .elementor-element-wrapper {
    text-align: center;
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
  .elementor-panel .elementor-element--promotion .elementor-element {
    cursor: pointer;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none; }
  .elementor-panel .elementor-element .icon,
  .elementor-panel .elementor-element .title {
    color: #556068;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s; }
  .elementor-panel .elementor-element:hover {
    -webkit-box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
            box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2); }
    .elementor-panel .elementor-element:hover .icon, .elementor-panel .elementor-element:hover .title {
      color: #93003c; }
  .elementor-panel .elementor-element .icon {
    font-size: 28px;
    padding-top: 15px; }
  .elementor-panel .elementor-element .elementor-element-title-wrapper {
    display: table;
    width: 100%; }
  .elementor-panel .elementor-element .title {
    font-size: 11px;
    display: table-cell;
    vertical-align: middle;
    height: 40px; }
  .elementor-panel .elementor-element > .eicon-lock {
    position: absolute;
    top: 5px;
    left: 5px;
    color: #e6e9ec; }

#elementor-element--promotion__dialog {
  position: absolute;
  width: 300px;
  z-index: 1;
  background-color: #fff;
  -webkit-box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3);
          box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3);
  -webkit-border-radius: 3px;
          border-radius: 3px; }
  #elementor-element--promotion__dialog:after {
    content: '';
    position: absolute;
    top: 15px;
    left: 100%;
    -webkit-transform: scaleY(0.7);
        -ms-transform: scaleY(0.7);
            transform: scaleY(0.7);
    border: 10px solid transparent;
    border-left-color: #fff; }
  #elementor-element--promotion__dialog__title {
    font-size: 14px; }
  #elementor-element--promotion__dialog .dialog-header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 20px;
    color: #495157;
    border-bottom: 1px solid #e6e9ec;
    font-weight: 500; }
    #elementor-element--promotion__dialog .dialog-header i {
      color: #a4afb7; }
    #elementor-element--promotion__dialog .dialog-header .eicon-pro-icon {
      -webkit-box-flex: 1;
          -ms-flex-positive: 1;
              flex-grow: 1;
      margin-right: 10px;
      font-size: 14px; }
    #elementor-element--promotion__dialog .dialog-header .eicon-close {
      cursor: pointer; }
  #elementor-element--promotion__dialog .dialog-message {
    padding: 20px; }
  #elementor-element--promotion__dialog .dialog-buttons-wrapper {
    padding: 0 20px 20px 20px; }
  #elementor-element--promotion__dialog .dialog-button {
    width: 100%;
    padding: 6.5px;
    font-size: 12px; }
    #elementor-element--promotion__dialog .dialog-button::-moz-focus-inner {
      border: 0; }

#elementor-panel-inner {
  position: relative;
  height: 100%;
  -webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.2); }

#elementor-panel-content-wrapper {
  position: absolute;
  bottom: 40px;
  top: 40px;
  left: 0;
  width: 100%; }

.elementor-panel-container {
  clear: both;
  padding-left: 15px;
  padding-right: 15px; }

.media-modal.wp-core-ui input {
  width: auto; }

.media-modal.wp-core-ui select {
  width: initial; }

.media-modal.wp-core-ui fieldset {
  padding: 0;
  border: 0; }

.media-modal.wp-core-ui .wp-clearfix::after {
  content: '';
  display: table;
  clear: both; }

.media-modal.wp-core-ui .e-wp-media-elements-removed {
  /* Hack to change the media button selection text, because for some reason the text gets changed when switching tabs. */ }
  .media-modal.wp-core-ui .e-wp-media-elements-removed .embed-link-settings,
  .media-modal.wp-core-ui .e-wp-media-elements-removed .embed-media-settings > :not(.wp-clearfix):not(.alt-text):not(#alt-text-description) {
    display: none; }
  .media-modal.wp-core-ui .e-wp-media-elements-removed #embed-url-field {
    width: 70%; }
  .media-modal.wp-core-ui .e-wp-media-elements-removed .media-embed .thumbnail {
    margin-top: 20px; }
    .media-modal.wp-core-ui .e-wp-media-elements-removed .media-embed .thumbnail,
    .media-modal.wp-core-ui .e-wp-media-elements-removed .media-embed .thumbnail img {
      max-height: initial; }
    .media-modal.wp-core-ui .e-wp-media-elements-removed .media-embed .thumbnail::after {
      -webkit-box-shadow: none;
              box-shadow: none; }
  .media-modal.wp-core-ui .e-wp-media-elements-removed .media-button-select {
    font-size: 0; }
    .media-modal.wp-core-ui .e-wp-media-elements-removed .media-button-select::before {
      content: var(--button-text);
      font-size: 13px; }

#elementor-panel-get-pro-elements .elementor-nerd-box-message {
  margin-top: 10px; }

#elementor-panel-get-pro-elements .elementor-nerd-box-icon {
  margin-top: 20px; }

.elementor-control {
  --control-title-size: 12px;
  background-color: #fff;
  position: relative;
  padding: 0 20px 15px; }
  .elementor-control a {
    font-weight: 500;
    text-decoration: none;
    border-bottom: 1px dotted transparent;
    -webkit-transition: all ease-in-out .3s;
    -o-transition: all ease-in-out .3s;
    transition: all ease-in-out .3s; }
    .elementor-control a:hover {
      border-bottom-color: inherit; }
    .elementor-control a.elementor-responsive-switcher {
      border-bottom: 0; }
  .elementor-control .elementor-control-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
  .elementor-control .elementor-control-title {
    font-size: var(--control-title-size);
    line-height: 1;
    margin-left: 5px; }
  .elementor-control .elementor-control-spinner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .elementor-control.elementor-control-type-divider {
    padding: 0;
    background-color: transparent; }
    .elementor-control.elementor-control-type-divider .elementor-control-content {
      border-width: 0;
      border-color: #e6e9ec;
      border-style: solid;
      border-top-width: 1px;
      background-color: #ffffff;
      height: 15px; }
  .elementor-control.elementor-control-separator-default:not(.elementor-control-type-divider).elementor-control-wp {
    margin-top: 15px; }
    .elementor-control.elementor-control-separator-default:not(.elementor-control-type-divider).elementor-control-wp:before {
      content: '';
      height: 1px;
      display: block;
      margin-bottom: 15px;
      background-color: transparent; }
  .elementor-control.elementor-control-separator-before {
    padding-top: 15px; }
    .elementor-control.elementor-control-separator-before:before {
      content: '';
      position: absolute;
      height: 1px;
      width: 100%;
      top: 0;
      left: 0;
      background-color: #e6e9ec; }
  .elementor-control.elementor-control-separator-after:after {
    content: '';
    position: absolute;
    height: 1px;
    width: 100%;
    bottom: 0;
    left: 0;
    background-color: #e6e9ec; }
  .elementor-control.elementor-control-separator-after + .elementor-control-type-tabs + .elementor-control-separator-default, .elementor-control.elementor-control-separator-after:not(.elementor-hidden-control) + .elementor-control-separator-default {
    padding-top: 15px; }
  .elementor-control.elementor-control-deprecated {
    color: #b01b1b; }
    .elementor-control.elementor-control-deprecated .elementor-control-field-description {
      color: #b01b1b; }
  .elementor-control.elementor-control-hidden-label > * > .elementor-control-title, .elementor-control.elementor-control-hidden-label > * > * > .elementor-control-title {
    display: none; }
  .elementor-control.elementor-hidden-control {
    display: none; }
  .elementor-control.elementor-control-type-heading .elementor-control-title {
    font-weight: bold;
    margin: 0; }
  body:not(.elementor-device-widescreen) .elementor-control.elementor-control-responsive-widescreen {
    display: none; }
  body:not(.elementor-device-desktop) .elementor-control.elementor-control-responsive-desktop {
    display: none; }
  body:not(.elementor-device-laptop) .elementor-control.elementor-control-responsive-laptop {
    display: none; }
  body:not(.elementor-device-tablet_extra) .elementor-control.elementor-control-responsive-tablet_extra {
    display: none; }
  body:not(.elementor-device-tablet) .elementor-control.elementor-control-responsive-tablet {
    display: none; }
  body:not(.elementor-device-mobile_extra) .elementor-control.elementor-control-responsive-mobile_extra {
    display: none; }
  body:not(.elementor-device-mobile) .elementor-control.elementor-control-responsive-mobile {
    display: none; }
  .elementor-control.elementor-control-type-select .elementor-control-input-wrapper {
    position: relative; }
    .elementor-control.elementor-control-type-select .elementor-control-input-wrapper select {
      appearance: none;
      -webkit-appearance: none;
      -moz-appearance: none;
      font-size: 12px;
      font-family: inherit;
      font-weight: inherit;
      font-style: inherit;
      text-transform: inherit;
      letter-spacing: inherit;
      line-height: inherit;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
      padding-right: 5px;
      padding-left: 20px;
      cursor: pointer; }
      .elementor-control.elementor-control-type-select .elementor-control-input-wrapper select.e-select-placeholder {
        color: #a4afb7; }
    .elementor-control.elementor-control-type-select .elementor-control-input-wrapper option.e-option-placeholder {
      display: none; }
    .elementor-control.elementor-control-type-select .elementor-control-input-wrapper:after {
      font-family: eicons;
      content: '\e8ad';
      font-size: 12px;
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      left: 5px;
      pointer-events: none; }
  .elementor-control-custom_css_pro .elementor-nerd-box-message, .elementor-control-custom_attributes_pro .elementor-nerd-box-message {
    margin-top: 5px; }
  .elementor-control.elementor-control-custom_css_title {
    font-size: 12px; }

.elementor-control.elementor-open .elementor-panel-heading-toggle .eicon:before,
.elementor-panel-scheme-item.elementor-open .elementor-panel-heading-toggle .eicon:before {
  content: '\e92a'; }

.elementor-control:not(.elementor-open) .elementor-panel-heading-toggle .eicon:before,
.elementor-panel-scheme-item:not(.elementor-open) .elementor-panel-heading-toggle .eicon:before {
  content: ""; }

.elementor-panel-heading {
  display: table;
  table-layout: fixed;
  height: 40px;
  padding: 0 20px;
  width: 100%;
  border-bottom: 1px solid #e6e9ec;
  cursor: pointer; }
  .elementor-panel-heading > * {
    display: table-cell;
    vertical-align: middle; }
  .elementor-panel-heading-toggle {
    width: 20px;
    color: #495157; }
  .elementor-panel-heading-title {
    color: #495157;
    font-weight: bold; }

.elementor-control-wp {
  line-height: 1.5; }
  .elementor-control-wp p {
    margin: 15px 0; }

.elementor-control-field {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.elementor-label-block > .elementor-control-content > .elementor-control-field {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .elementor-label-block > .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper {
    width: 100%;
    margin-top: 10px; }

.elementor-label-block.elementor-control-hidden-label:not(.elementor-control-dynamic) > .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper {
  margin-top: 0; }

.elementor-label-block.elementor-control-hidden-label.elementor-label-block > .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper {
  margin-top: 0; }

.elementor-label-inline > .elementor-control-content > .elementor-control-field > .elementor-control-title {
  -ms-flex-negative: 0;
      flex-shrink: 0; }

.elementor-label-inline > .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper {
  margin-right: auto; }

.elementor-control-field-description {
  margin-top: 10px; }

.elementor-group-control-attachment_alert .elementor-control-field-description {
  margin-top: 0; }

.elementor-required {
  color: #b01b1b; }

.elementor-units-choices {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  text-align: left; }
  .elementor-units-choices input {
    display: none; }
    .elementor-units-choices input:not(:checked) + label {
      color: #a4afb7; }
    .elementor-units-choices input.e-units-placeholder + label {
      color: #c2cbd2;
      text-decoration: underline; }
    .elementor-units-choices input:checked + label {
      text-decoration: underline; }
  .elementor-units-choices label {
    cursor: pointer;
    padding: 0 2px;
    text-transform: uppercase;
    font-size: 9px; }

.elementor-control-start-end .eicon-h-align-left, .elementor-control-start-end .eicon-h-align-right {
  -webkit-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
          transform: rotate(180deg); }

.elementor-control-responsive-switchers {
  --selected-option: 0;
  --pointer-position: var(--selected-option);
  position: relative;
  width: 2em;
  height: 2em;
  margin: calc( -2em + var(--control-title-size)) 0;
  margin-left: 5px; }
  .elementor-control-responsive-switchers__holder {
    position: absolute;
    width: 100%;
    top: 0;
    background-color: #fff;
    -webkit-border-radius: 3px;
            border-radius: 3px;
    -webkit-transition: 0.15s;
    -o-transition: 0.15s;
    transition: 0.15s;
    border: 1px transparent solid; }
  .elementor-control-responsive-switchers.elementor-responsive-switchers-open {
    z-index: 11000; }
    .elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-responsive-switcher {
      height: 2em;
      -webkit-transform: scale(1);
          -ms-transform: scale(1);
              transform: scale(1);
      opacity: 1; }
      .elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-responsive-switcher:hover {
        color: #71d7f7; }
    .elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-control-responsive-switchers__holder {
      top: calc(-1 * var(--selected-option) * 2em);
      -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.2);
              box-shadow: 0 0 3px rgba(0, 0, 0, 0.2); }

.elementor-responsive-switcher {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  z-index: 2;
  cursor: pointer;
  height: 0;
  -webkit-transform: scale(0);
      -ms-transform: scale(0);
          transform: scale(0);
  opacity: 0;
  -webkit-transition: 0.15s;
  -o-transition: 0.15s;
  transition: 0.15s;
  font-size: 12px; }

a.elementor-responsive-switcher {
  color: #a4afb7; }
  a.elementor-responsive-switcher:hover {
    color: #71d7f7; }

.elementor-device-widescreen .elementor-responsive-switcher.elementor-responsive-switcher-widescreen {
  height: 2em;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.elementor-device-widescreen .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-widescreen {
  color: #71d7f7; }

.elementor-device-desktop .elementor-responsive-switcher.elementor-responsive-switcher-desktop {
  height: 2em;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.elementor-device-desktop .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-desktop {
  color: #71d7f7; }

.elementor-device-laptop .elementor-responsive-switcher.elementor-responsive-switcher-laptop {
  height: 2em;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.elementor-device-laptop .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-laptop {
  color: #71d7f7; }

.elementor-device-tablet_extra .elementor-responsive-switcher.elementor-responsive-switcher-tablet_extra {
  height: 2em;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.elementor-device-tablet_extra .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-tablet_extra {
  color: #71d7f7; }

.elementor-device-tablet .elementor-responsive-switcher.elementor-responsive-switcher-tablet {
  height: 2em;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.elementor-device-tablet .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-tablet {
  color: #71d7f7; }

.elementor-device-mobile_extra .elementor-responsive-switcher.elementor-responsive-switcher-mobile_extra {
  height: 2em;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.elementor-device-mobile_extra .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-mobile_extra {
  color: #71d7f7; }

.elementor-device-mobile .elementor-responsive-switcher.elementor-responsive-switcher-mobile {
  height: 2em;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.elementor-device-mobile .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-mobile {
  color: #71d7f7; }

.elementor-update-preview {
  margin: 15px 15px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.elementor-update-preview-button-wrapper {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  text-align: left; }

.elementor-update-preview-button {
  padding: 8px 15px;
  text-transform: uppercase; }

.elementor-control-direction-ltr input,
.elementor-control-direction-ltr textarea {
  direction: ltr; }

.elementor-control-direction-rtl input,
.elementor-control-direction-rtl textarea {
  direction: rtl; }

.elementor-control-type-button .elementor-control-input-wrapper {
  text-align: left; }

.elementor-control-type-button .elementor-button {
  width: auto;
  height: 26px; }

.elementor-control-type-choose.elementor-label-block .elementor-choices {
  width: 100%; }

.elementor-choices {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 27px;
  line-height: 27px;
  text-align: center;
  border-spacing: 1px;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  overflow: hidden; }
  .elementor-choices .elementor-choices-label {
    border-top: 1px solid #d5dadf;
    border-bottom: 1px solid #d5dadf;
    border-right: 1px solid #d5dadf;
    border-left: none;
    font-size: 12px;
    -webkit-transition: all .5s;
    -o-transition: all .5s;
    transition: all .5s;
    cursor: pointer;
    overflow: hidden; }
    .elementor-choices .elementor-choices-label:nth-child(2) {
      -webkit-border-top-right-radius: 3px;
              border-top-right-radius: 3px;
      -webkit-border-bottom-right-radius: 3px;
              border-bottom-right-radius: 3px; }
    .elementor-choices .elementor-choices-label:last-child {
      border-left: 1px solid #d5dadf;
      -webkit-border-top-left-radius: 3px;
              border-top-left-radius: 3px;
      -webkit-border-bottom-left-radius: 3px;
              border-bottom-left-radius: 3px; }
  .elementor-choices input {
    display: none; }
    .elementor-choices input.e-choose-placeholder + .elementor-choices-label {
      color: #ffffff;
      background-color: #c2cbd2;
      border-color: #c2cbd2; }
    .elementor-choices input:checked + .elementor-choices-label {
      color: #fff;
      background-color: #a4afb7;
      border-color: #a4afb7; }

.elementor-label-inline .elementor-choices {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.rtl .elementor-control-text_align .elementor-choices,
.rtl .elementor-control-align .elementor-choices,
.rtl .elementor-control-position .elementor-choices {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse; }
  .rtl .elementor-control-text_align .elementor-choices .elementor-choices-label:nth-child(2),
  .rtl .elementor-control-align .elementor-choices .elementor-choices-label:nth-child(2),
  .rtl .elementor-control-position .elementor-choices .elementor-choices-label:nth-child(2) {
    border-left: 1px solid #d5dadf;
    -webkit-border-radius: 3px 0 0 3px;
            border-radius: 3px 0 0 3px; }
  .rtl .elementor-control-text_align .elementor-choices .elementor-choices-label:last-child,
  .rtl .elementor-control-align .elementor-choices .elementor-choices-label:last-child,
  .rtl .elementor-control-position .elementor-choices .elementor-choices-label:last-child {
    border-left: none;
    -webkit-border-radius: 0 3px 3px 0;
            border-radius: 0 3px 3px 0; }

.elementor-control-type-color.e-control-global .e-global__popover-toggle ~ .pickr {
  -webkit-border-radius: 3px 0 0 3px;
          border-radius: 3px 0 0 3px;
  -ms-flex-negative: 0;
      flex-shrink: 0; }

.elementor-control-type-color .elementor-control-title {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1; }

.elementor-control-type-color .elementor-control-input-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.elementor-control-type-color .elementor-control-dynamic-switcher {
  border-right-width: 0;
  -webkit-border-radius: 3px 0 0 3px;
          border-radius: 3px 0 0 3px; }

.elementor-control-type-color.elementor-control-dynamic .pickr {
  -webkit-border-radius: 0 3px 3px 0;
          border-radius: 0 3px 3px 0; }

.elementor-group-control-css-filter .elementor-slider {
  height: 6px;
  -webkit-box-shadow: 0 0 1px 1px inset rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 1px 1px inset rgba(0, 0, 0, 0.2); }

.elementor-group-control-css-filter .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper {
  margin-top: 0;
  margin-bottom: 5px; }

.elementor-group-control-blur .elementor-slider {
  background: url("../images/blur.png");
  -webkit-background-size: cover;
          background-size: cover;
  background-position: center; }

.elementor-group-control-contrast .elementor-slider {
  background: url("../images/contrast.png");
  -webkit-background-size: 100% 100%;
          background-size: 100% 100%; }

.elementor-group-control-hue .elementor-slider {
  background-image: -webkit-gradient(linear, left top, right top, from(red), color-stop(orange), color-stop(yellow), color-stop(greenyellow), color-stop(limegreen), color-stop(deepskyblue), color-stop(blue), color-stop(95%, darkviolet));
  background-image: -webkit-linear-gradient(left, red, orange, yellow, greenyellow, limegreen, deepskyblue, blue, darkviolet 95%);
  background-image: -o-linear-gradient(left, red, orange, yellow, greenyellow, limegreen, deepskyblue, blue, darkviolet 95%);
  background-image: linear-gradient(to right, red, orange, yellow, greenyellow, limegreen, deepskyblue, blue, darkviolet 95%); }

.elementor-group-control-saturate .elementor-slider {
  background-image: -webkit-gradient(linear, left top, right top, from(gray), to(red));
  background-image: -webkit-linear-gradient(left, gray, red);
  background-image: -o-linear-gradient(left, gray, red);
  background-image: linear-gradient(to right, gray, red); }

.elementor-group-control-brightness .elementor-slider {
  background-image: -webkit-gradient(linear, left top, right top, from(black), to(white));
  background-image: -webkit-linear-gradient(left, black, white);
  background-image: -o-linear-gradient(left, black, white);
  background-image: linear-gradient(to right, black, white); }

.elementor-control-type-dimensions .elementor-control-dimensions {
  overflow: hidden; }

.elementor-control-type-dimensions li {
  float: left;
  width: 20%; }
  .elementor-control-type-dimensions li input,
  .elementor-control-type-dimensions li .elementor-link-dimensions {
    display: block;
    text-align: center;
    width: 100%;
    border-color: #d5dadf;
    height: 27px; }
  .elementor-control-type-dimensions li input {
    border-left: none;
    -webkit-border-radius: 0;
            border-radius: 0;
    padding: 4px 0; }
    .elementor-control-type-dimensions li input:focus {
      border-left: solid 1px;
      border-color: #a4afb7;
      margin-left: -1px;
      width: calc(100% + 1px); }
      .elementor-control-type-dimensions li input:focus + .elementor-control-dimension-label {
        color: #a4afb7; }
  .elementor-control-type-dimensions li .elementor-link-dimensions {
    border: 1px solid #d5dadf;
    border-left: none;
    background-color: #fff;
    padding: 0;
    outline: none;
    -webkit-border-radius: 0 3px 3px 0;
            border-radius: 0 3px 3px 0;
    cursor: pointer; }
  .elementor-control-type-dimensions li:first-child input {
    border-left: 1px solid #d5dadf;
    -webkit-border-radius: 3px 0 0 3px;
            border-radius: 3px 0 0 3px; }
    .elementor-control-type-dimensions li:first-child input:focus {
      border-color: #a4afb7;
      margin-left: 0;
      width: 100%; }

.elementor-control-type-dimensions .elementor-control-dimension-label {
  display: block;
  text-align: center;
  color: #d5dadf;
  font-size: 9px;
  text-transform: uppercase;
  padding-top: 5px; }

.elementor-control-type-dimensions .elementor-link-dimensions.unlinked {
  background-color: #fff; }
  .elementor-control-type-dimensions .elementor-link-dimensions.unlinked .elementor-linked {
    display: none; }

.elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked) {
  background-color: #a4afb7;
  border-color: #a4afb7; }
  .elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked) .elementor-unlinked {
    display: none; }

.elementor-control-type-dimensions .elementor-link-dimensions .elementor-linked {
  color: #fff; }

.elementor-control-type-icons .elementor-control-media__preview > * {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%); }

.elementor-control-type-icons .elementor-control-media__preview i {
  font-size: 70px;
  color: #6d7882; }

.elementor-control-type-icons .elementor-control-media__preview svg {
  height: 75%; }

.elementor-control-type-icons .elementor-control-icons--inline__svg i.eicon-upload {
  font-size: 15px; }

.elementor-control-type-gallery .elementor-control-media__content {
  border: 1px solid #d5dadf;
  -webkit-border-radius: 3px;
          border-radius: 3px; }

.elementor-control-type-gallery .elementor-control-gallery-status {
  font-size: 12px;
  height: 27px;
  padding-right: 10px;
  border-bottom: 1px solid #d5dadf;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  .elementor-control-type-gallery .elementor-control-gallery-status > * {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .elementor-control-type-gallery .elementor-control-gallery-status-title {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }

.elementor-control-type-gallery .elementor-control-gallery-content {
  position: relative;
  overflow: hidden; }
  .elementor-control-type-gallery .elementor-control-gallery-content:not(:hover) .elementor-control-gallery-edit {
    opacity: 0; }

.elementor-control-type-gallery .elementor-control-gallery-thumbnails {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(48px, 1fr));
  grid-gap: 10px;
  cursor: pointer;
  padding: 10px; }

.elementor-control-type-gallery .elementor-control-gallery-thumbnail {
  width: 48px;
  height: 48px;
  -webkit-background-size: cover;
          background-size: cover;
  background-position: 50% 50%; }

.elementor-control-type-gallery .elementor-control-gallery-edit {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: rgba(109, 120, 130, 0.3);
  padding: 10px;
  font-size: 11px;
  -webkit-transition: all .3s ease-in-out;
  -o-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
  pointer-events: none;
  cursor: pointer;
  opacity: 1; }
  .elementor-control-type-gallery .elementor-control-gallery-edit span {
    position: absolute;
    top: 10px;
    left: 10px;
    width: 21px;
    height: 21px;
    background-color: rgba(255, 255, 255, 0.9);
    color: #a4afb7;
    -webkit-box-shadow: 0 0 7px 0 rgba(0, 0, 0, 0.2);
            box-shadow: 0 0 7px 0 rgba(0, 0, 0, 0.2);
    -webkit-border-radius: 3px;
            border-radius: 3px; }
    .elementor-control-type-gallery .elementor-control-gallery-edit span i {
      font-size: 11px;
      padding: 5px; }

.elementor-control-type-gallery .elementor-control-gallery-add {
  width: 48px;
  height: 48px;
  color: #fff;
  background-color: #d5dadf;
  font-size: 14px;
  -webkit-border-radius: 0;
          border-radius: 0; }
  .elementor-control-type-gallery .elementor-control-gallery-add:hover {
    background-color: #c2cbd2; }
  .elementor-control-type-gallery .elementor-control-gallery-add i {
    margin: 0;
    color: #a4afb7; }

.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-clear,
.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-thumbnails,
.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-edit {
  display: none; }

.elementor-control-type-gallery.elementor-gallery-empty .elementor-control-gallery-content {
  padding: 10px; }

.elementor-control-type-gallery.elementor-gallery-has-images .elementor-control-gallery-add {
  display: none; }

.elementor-control-type-gallery.elementor-control-dynamic .elementor-control-gallery-clear {
  border-right: 1px solid #d5dadf; }

.elementor-control-type-gallery .elementor-control-gallery-clear {
  cursor: pointer;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .elementor-control-type-gallery .elementor-control-gallery-clear:hover {
    color: #b01b1b; }

.elementor-control-type-gallery .elementor-control-dynamic-switcher {
  border: none;
  border-bottom: 1px solid #d5dadf;
  border-right: 1px solid #d5dadf;
  -webkit-border-radius: 3px 0 0 0;
          border-radius: 3px 0 0 0; }

.e-global__popover {
  width: 288px;
  z-index: 1;
  font-size: 12px;
  padding-right: 10px; }
  .e-global__popover-toggle {
    border: 1px solid #d5dadf;
    border-left: 0;
    -webkit-border-radius: 0 3px 3px 0;
            border-radius: 0 3px 3px 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    cursor: pointer; }
    .e-global__popover-toggle--active i {
      color: #71d7f7; }
  .e-global__popover-container {
    -webkit-box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3);
            box-shadow: 0 2px 15px rgba(0, 0, 0, 0.3);
    -webkit-border-radius: 3px;
            border-radius: 3px;
    background-color: #fff;
    padding-bottom: 5px; }
  .e-global__popover-title {
    padding: 15px 20px;
    font-weight: 500;
    color: #6d7882;
    border-bottom: 1px solid #e6e9ec;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .e-global__popover-title > i {
      margin-left: 5px;
      color: #d5dadf; }
    .e-global__popover-title-text {
      -webkit-box-flex: 1;
          -ms-flex-positive: 1;
              flex-grow: 1; }
  .e-global__popover-info {
    margin-left: 5px;
    display: inline-block; }
    .e-global__popover-info-tooltip {
      width: 270px;
      z-index: 1;
      background-color: rgba(0, 0, 0, 0.9);
      color: #fff;
      padding: 20px;
      -webkit-border-radius: 3px;
              border-radius: 3px; }
      .e-global__popover-info-tooltip:after {
        content: '';
        position: absolute;
        bottom: -17px;
        right: 16px;
        border: 10px solid transparent;
        border-top-color: rgba(0, 0, 0, 0.9); }
    .e-global__popover-info i {
      color: #d5dadf;
      font-size: 13px; }

.e-global__preview-items-container {
  max-height: 260px;
  overflow-y: auto;
  margin-top: 5px; }
  .e-global__preview-items-container::-webkit-scrollbar {
    width: 7px; }
  .e-global__preview-items-container::-webkit-scrollbar-thumb {
    background-color: #c2cbd2;
    -webkit-border-radius: 10px;
            border-radius: 10px; }

.e-global__manage-button {
  font-weight: 500;
  cursor: pointer; }
  .e-global__manage-button:hover i {
    color: #4ab7f4; }
  .e-global__manage-button i {
    color: #6d7882; }

.e-global__typography {
  padding: 5px 35px 5px 10px;
  white-space: nowrap;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  overflow: hidden; }
  .e-global__typography.e-global__preview-item--selected:before {
    font-family: 'eicons';
    font-size: 13px;
    content: '\e90e';
    position: absolute;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    top: 50%;
    left: 12px; }

.e-global__color {
  margin: 5px auto;
  padding: 5px 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .e-global__color:first-child {
    margin-top: 5px; }
  .e-global__color:last-child {
    margin-bottom: 10px; }
  .e-global__color-preview-container {
    height: 20px;
    width: 20px;
    -webkit-border-radius: 3px;
            border-radius: 3px;
    border: 1px solid rgba(0, 0, 0, 0.1);
    margin-left: 10px;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    position: relative; }
  .e-global__color-preview-color, .e-global__color-preview-transparent-bg {
    -webkit-border-radius: 3px;
            border-radius: 3px;
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0; }
  .e-global__color-preview-transparent-bg {
    background-image: -webkit-linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd), -webkit-linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd);
    background-image: -o-linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd), -o-linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd);
    background-image: linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd), linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd);
    -webkit-background-size: 12px 12px;
            background-size: 12px 12px;
    background-position: 0 0, 6px 6px; }
  .e-global__color-title {
    font-weight: 500;
    color: #6d7882;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    white-space: nowrap;
    -o-text-overflow: ellipsis;
       text-overflow: ellipsis;
    overflow: hidden;
    padding-left: 10px; }
  .e-global__color-hex {
    font-size: 10px;
    font-weight: 500;
    color: #c2cbd2; }
  .e-global__color .pcr-button {
    background-color: #fff; }
  .e-global__color.e-global__preview-item--selected .e-global__color-preview-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    color: #ffffff; }
    .e-global__color.e-global__preview-item--selected .e-global__color-preview-container:before {
      font-family: 'eicons';
      font-size: 13px;
      content: '\e90e';
      text-shadow: 0px 0px 1px #000;
      z-index: 1; }

.e-global__preview-item {
  cursor: pointer;
  position: relative; }
  .e-global__preview-item:hover {
    background-color: #f1f3f5; }
    .e-global__preview-item:hover .e-global__color-hex {
      color: #a4afb7; }

.e-global__confirm-add .dialog-buttons-wrapper > .dialog-button.dialog-confirm-ok {
  color: #39b54a; }

.e-global__confirm-delete i {
  color: #b01b1b; }

.e-global__confirm-message-text i {
  color: #fcb92c; }

.e-global__confirm-input-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid #a4afb7;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  margin-top: 10px;
  padding: 2px; }
  .e-global__confirm-input-wrapper input {
    font-family: Roboto, Arial, sans-serif;
    font-weight: 500;
    font-size: 12px;
    padding: 2px;
    border: 0; }

.e-control-global .elementor-control-input-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  max-width: 135px;
  width: 100%; }

.e-control-global.elementor-control .elementor-control-input-wrapper {
  direction: rtl; }

.e-control-global .elementor-control-spinner {
  margin-left: 4px; }

.elementor-control-type-hidden {
  display: none !important; }

.elementor-control-type-icon .select2-selection__rendered .eicon {
  margin-right: 3px; }

.elementor-control-type-image_dimensions .elementor-control-field-description {
  margin: 0 0 15px;
  line-height: 1.4; }

.elementor-control-type-image_dimensions .elementor-control-input-wrapper {
  overflow: hidden; }

.elementor-control-type-image_dimensions .elementor-image-dimensions-field {
  width: 65px;
  float: right; }
  .elementor-control-type-image_dimensions .elementor-image-dimensions-field input:focus + .elementor-image-dimensions-field-description {
    color: #a4afb7; }

.elementor-control-type-image_dimensions .elementor-image-dimensions-separator {
  width: 20px;
  text-align: center;
  float: right;
  padding-top: 4px; }

.elementor-control-type-image_dimensions .elementor-image-dimensions-field-description {
  display: block;
  text-transform: uppercase;
  margin-top: 5px;
  color: #d5dadf;
  font-size: 9px;
  text-align: center; }

.elementor-control-type-image_dimensions .elementor-image-dimensions-apply-button {
  float: left;
  height: 27px;
  width: 65px; }

.elementor-control-media.elementor-media-empty .elementor-control-media-area .elementor-control-media__remove, .elementor-control-media.elementor-media-empty .elementor-control-media-area .elementor-control-media__content__remove {
  display: none; }

.elementor-control-media:not(.elementor-media-empty) .elementor-control-media__content__upload-button {
  display: none; }

.elementor-control-media .elementor-control-input-wrapper {
  border: 1px solid #d5dadf; }

.elementor-control-media .eicon-plus-circle {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  color: #fff;
  font-size: 20px; }

.elementor-control-media__content__upload-button {
  background-color: #d5dadf; }

.elementor-control-media__preview {
  height: 100%;
  -webkit-background-size: cover;
          background-size: cover;
  background-position: center; }

.elementor-control-media-area {
  background-image: -webkit-linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd), -webkit-linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd);
  background-image: -o-linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd), -o-linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd);
  background-image: linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd), linear-gradient(45deg, #ddd 25%, transparent 0, transparent 75%, #ddd 0, #ddd);
  -webkit-background-size: 16px 16px;
          background-size: 16px 16px;
  background-position: 0 0, 8px 8px;
  background-color: #f6f6f6; }
  .elementor-control-media-area:not(:hover) .elementor-control-media__remove {
    display: none; }
  .elementor-control-media-area .eicon-video-camera {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    color: rgba(255, 255, 255, 0.7);
    font-size: 21px; }

.elementor-control-media .elementor-control-media__content {
  cursor: pointer;
  overflow: hidden; }
  .elementor-control-media .elementor-control-media__content:hover:after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: rgba(0, 0, 0, 0.2);
    pointer-events: none; }
  .elementor-control-media .elementor-control-media__content:not(:hover) .elementor-control-media__tools {
    bottom: -30px; }

.elementor-control-media__content {
  -webkit-transition: all .2s ease-in-out;
  -o-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out; }

.elementor-control-media__tools {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 27px;
  -webkit-transition: all .2s ease-in-out;
  -o-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out; }
  .elementor-control-media__tools > *:not(:first-child) {
    margin-right: 1px; }

.elementor-control-media__tool {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  color: #fff;
  background-color: rgba(109, 120, 130, 0.85);
  font-size: 11px;
  -webkit-transition: background .3s;
  -o-transition: background .3s;
  transition: background .3s; }
  .elementor-control-media__tool:hover {
    background-color: rgba(109, 120, 130, 0.95); }

.elementor-control-media__remove {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-transition: all .3s ease-in-out;
  -o-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out; }

.elementor-control-media__content__remove {
  position: absolute;
  z-index: 1;
  top: 10px;
  left: 10px;
  width: 20px;
  height: 20px;
  font-size: 11px;
  color: #a4afb7;
  background-color: rgba(255, 255, 255, 0.9);
  -webkit-border-radius: 3px;
          border-radius: 3px;
  -webkit-box-shadow: 0 0 7px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 7px 0 rgba(0, 0, 0, 0.1); }
  .elementor-control-media__content__remove:hover {
    background-color: white;
    -webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.4);
            box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.4); }

.elementor-control-media.elementor-media-empty .elementor-control-file-area {
  display: none; }

.elementor-control-media__file {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  margin-top: 10px;
  border: 1px solid #d5dadf; }
  .elementor-control-media__file__content {
    padding-right: 5px;
    font-size: 12px; }
    .elementor-control-media__file__content__label {
      color: #a4afb7; }
    .elementor-control-media__file__content__info {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      font-weight: 500; }
      .elementor-control-media__file__content__info__icon {
        margin-left: 5px; }
  .elementor-control-media__file__controls {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-right: 1px solid #d5dadf; }
    .elementor-control-media__file__controls__upload-button, .elementor-control-media__file__controls__remove {
      width: 27px;
      height: 27px;
      cursor: pointer;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
    .elementor-control-media__file__controls__upload-button {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; }
    .elementor-control-media__file__controls__remove {
      border-left: 1px solid #d5dadf; }

.elementor-control-media:not(.elementor-media-empty) .elementor-control-media__file__content__label {
  display: none; }

.elementor-control-media.elementor-media-empty .elementor-control-media__file__content__info {
  display: none; }

.elementor-control-media.elementor-media-empty .elementor-control-media__file__controls__remove {
  display: none; }

.elementor-control-media .elementor-control-dynamic-switcher {
  border: none;
  -webkit-border-radius: 0;
          border-radius: 0;
  background-color: rgba(109, 120, 130, 0.85);
  color: #fff; }
  .elementor-control-media .elementor-control-dynamic-switcher:hover {
    background-color: rgba(109, 120, 130, 0.95); }

.elementor-control-type-media.elementor-control-dynamic-value .elementor-control-input-wrapper {
  border: none; }

.elementor-control-type-number.elementor-control-dynamic input {
  -webkit-border-radius: 0 3px 3px 0;
          border-radius: 0 3px 3px 0;
  border-left: none; }

.elementor-control-type-number.elementor-control-dynamic .elementor-control-dynamic-switcher {
  -webkit-border-radius: 3px 0 0 3px;
          border-radius: 3px 0 0 3px; }

.elementor-control-type-order .elementor-control-oreder-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.elementor-control-type-order input {
  display: none; }
  .elementor-control-type-order input:checked + .elementor-control-order-label {
    -webkit-transform: scale(1, -1);
        -ms-transform: scale(1, -1);
            transform: scale(1, -1); }

.elementor-control-type-order select {
  -webkit-border-radius: 3px 0 0 3px;
          border-radius: 3px 0 0 3px; }
  .elementor-control-type-order select:not(:focus) ~ .elementor-control-order-label {
    border-color: #d5dadf; }
  .elementor-control-type-order select:focus ~ .elementor-control-order-label {
    border-color: #a4afb7; }

.elementor-control-type-order .elementor-control-order-label {
  position: relative;
  padding: 0;
  width: 40px;
  border: 1px solid;
  font-size: 10px;
  -webkit-border-radius: 0 3px 3px 0;
          border-radius: 0 3px 3px 0;
  margin-left: -3px;
  background-color: #fff;
  cursor: pointer; }
  .elementor-control-type-order .elementor-control-order-label i {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }

.elementor-control-type-popover_toggle input {
  display: none; }

.elementor-control-type-popover_toggle label {
  cursor: pointer; }

.elementor-control-type-popover_toggle .elementor-control-input-wrapper {
  direction: ltr; }

.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle:checked + .elementor-control-popover-toggle-toggle-label {
  color: #71d7f7; }

.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle:not(:checked) ~ .elementor-control-popover-toggle-reset-label {
  display: none; }

.elementor-control-type-popover_toggle .elementor-control-popover-toggle-reset-label {
  color: #c2cbd2;
  margin-left: 5px; }

.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle-label {
  height: 27px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  border: 1px solid #d5dadf; }

.elementor-controls-popover.e-controls-popover--typography {
  padding-top: 0; }

.e-control-global .elementor-control-popover-toggle-toggle-label {
  -webkit-border-radius: 3px 0 0 3px;
          border-radius: 3px 0 0 3px;
  -ms-flex-negative: 0;
      flex-shrink: 0; }

.elementor-control-type-repeater .elementor-control:not(.elementor-control-type-tab) {
  padding-right: 10px;
  padding-left: 10px;
  padding-bottom: 10px; }

.elementor-control-type-repeater.elementor-repeater-has-minimum-rows .elementor-repeater-tool-remove {
  display: none; }

.elementor-control-type-repeater .elementor-repeater-fields {
  margin: 10px 0; }

.elementor-control-type-repeater .elementor-repeater-row-controls {
  border: 1px solid #d5dadf;
  border-top-width: 0;
  padding-top: 15px; }
  .elementor-control-type-repeater .elementor-repeater-row-controls:not(.editable) {
    display: none; }

.elementor-control-type-repeater .elementor-repeater-row-tools {
  display: table;
  table-layout: fixed;
  width: 100%;
  color: #556068;
  background-color: #d5dadf;
  height: 40px;
  border-spacing: 1px;
  -webkit-transition: all .5s;
  -o-transition: all .5s;
  transition: all .5s; }
  .elementor-control-type-repeater .elementor-repeater-row-tools:hover {
    background-color: #a4afb7; }
  .elementor-control-type-repeater .elementor-repeater-row-tools > div {
    display: table-cell;
    text-align: center;
    vertical-align: middle;
    cursor: pointer; }
    .elementor-control-type-repeater .elementor-repeater-row-tools > div:not(.elementor-repeater-row-handle-sortable) {
      background-color: #fff; }
    .elementor-control-type-repeater .elementor-repeater-row-tools > div:hover {
      opacity: .95; }
  .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title {
    text-align: right;
    padding: 0 10px;
    font-size: 12px;
    white-space: nowrap;
    -o-text-overflow: ellipsis;
       text-overflow: ellipsis;
    overflow: hidden; }
    .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title .eicon,
    .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title i,
    .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title svg {
      margin-left: 5px; }
    .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-item-title img[src$="svg"] {
      width: 1em; }
  .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-tool {
    width: 40px; }
  .elementor-control-type-repeater .elementor-repeater-row-tools .elementor-repeater-row-handle-sortable {
    cursor: move;
    width: 10px;
    color: #fff; }

.elementor-control-type-repeater .elementor-button-wrapper {
  text-align: center;
  padding-top: 5px; }

.elementor-control-type-section {
  margin-top: 10px;
  padding: 0; }
  .elementor-control-type-section.elementor-open {
    padding-bottom: 15px; }
  .elementor-control-type-section + .elementor-control:not(.elementor-control-type-section):before {
    display: none; }

.elementor-shadow-box .elementor-shadow-slider {
  margin-top: 10px; }

.elementor-shadow-box .elementor-color-picker-wrapper .elementor-control-title {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1; }

.elementor-control-type-slider.elementor-control-dynamic input {
  -webkit-border-radius: 0 3px 3px 0;
          border-radius: 0 3px 3px 0; }

.elementor-control-type-slider .elementor-control-unit-2 {
  width: 21%; }

.elementor-control-type-slider.elementor-control-type-slider--multiple .elementor-control-input-wrapper {
  display: block; }

.elementor-control-type-slider--multiple {
  padding-bottom: 40px; }
  .elementor-control-type-slider--multiple .elementor-slider {
    margin-top: 12px;
    width: 98%; }

.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle {
  -webkit-border-radius: 0;
          border-radius: 0;
  width: 10px;
  -webkit-transform: translateY(calc(50% - 14px)) translateX(-4px);
      -ms-transform: translateY(calc(50% - 14px)) translateX(-4px);
          transform: translateY(calc(50% - 14px)) translateX(-4px); }
  .elementor-control-type-slider--handles-range .elementor-slider .noUi-handle:after {
    content: '';
    position: absolute;
    top: 2px;
    height: 12px;
    width: 11px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    background-color: #fff;
    -webkit-border-radius: 3px;
            border-radius: 3px; }
  .elementor-control-type-slider--handles-range .elementor-slider .noUi-handle-lower:after {
    left: 5px;
    -webkit-box-shadow: 2px -2px 3px 0px rgba(0, 0, 0, 0.1);
            box-shadow: 2px -2px 3px 0px rgba(0, 0, 0, 0.1); }
  .elementor-control-type-slider--handles-range .elementor-slider .noUi-handle-upper:after {
    right: 5px;
    -webkit-box-shadow: -2px 2px 3px 0px rgba(0, 0, 0, 0.1);
            box-shadow: -2px 2px 3px 0px rgba(0, 0, 0, 0.1); }

.elementor-control-type-slider .elementor-control-dynamic-switcher {
  border-right-width: 0;
  -webkit-border-radius: 3px 0 0 3px;
          border-radius: 3px 0 0 3px; }

.elementor-control-type-slider .elementor-control-input-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.elementor-control-type-slider .elementor-dynamic-cover {
  margin-top: 10px; }

.elementor-slider {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  height: 4px;
  background-color: #d5dadf;
  -webkit-border-radius: 5px;
          border-radius: 5px;
  position: relative;
  cursor: pointer; }
  .elementor-slider-input {
    width: 21%;
    min-width: 54px;
    margin-right: 12px; }
  .elementor-slider__extra {
    position: relative; }
  .elementor-slider__labels {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
  .elementor-slider__label {
    font-size: 9px;
    color: #c2cbd2; }
  .elementor-slider__scales {
    position: absolute;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: space-evenly;
        -ms-flex-pack: space-evenly;
            justify-content: space-evenly;
    width: 100%;
    margin-top: 4px; }
  .elementor-slider__scale {
    width: 1px;
    height: 21px;
    background-color: #a4afb7; }
  .elementor-slider .noUi-handle {
    height: 16px;
    width: 16px;
    background-color: #fff;
    left: 0;
    -webkit-transform: translateY(calc(50% - 14px)) translateX(-8px);
        -ms-transform: translateY(calc(50% - 14px)) translateX(-8px);
            transform: translateY(calc(50% - 14px)) translateX(-8px);
    position: absolute;
    -webkit-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.3);
            box-shadow: 0 1px 5px rgba(0, 0, 0, 0.3);
    -webkit-border-radius: 50%;
            border-radius: 50%; }
  .elementor-slider .noUi-connects {
    position: absolute;
    width: 100%;
    height: 4px; }
  .elementor-slider .noUi-connect {
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    will-change: transform;
    -webkit-transform-origin: 0 0;
        -ms-transform-origin: 0 0;
            transform-origin: 0 0;
    background-color: #a4afb7; }
  .elementor-slider .noUi-tooltip {
    position: absolute;
    top: calc(100% + 5px);
    left: calc(50% - 4px);
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    font-size: 10px; }

.elementor-control-type-structure .elementor-control-field {
  display: initial; }

.elementor-control-type-structure .elementor-control-structure-preset {
  padding: 3px;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  display: inline-block;
  cursor: pointer;
  height: 50px; }
  .elementor-control-type-structure .elementor-control-structure-preset svg {
    height: 100%; }
  .elementor-control-type-structure .elementor-control-structure-preset path {
    fill: #e6e9ec; }

.elementor-control-type-structure .elementor-control-structure-reset {
  padding: 15px 20px 0;
  font-size: 11px;
  cursor: pointer;
  color: #a4afb7;
  border-top: 1px solid #e6e9ec;
  margin: 0 -20px; }

.elementor-control-type-structure .elementor-control-structure-title {
  margin: 10px -20px 0; }
  .elementor-control-type-structure .elementor-control-structure-title:before {
    height: 10px;
    -webkit-box-shadow: inset 0 2px 4px rgba(127, 127, 127, 0.1);
            box-shadow: inset 0 2px 4px rgba(127, 127, 127, 0.1); }

.elementor-control-type-structure .elementor-control-structure-presets {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .elementor-control-type-structure .elementor-control-structure-presets input {
    display: none; }
    .elementor-control-type-structure .elementor-control-structure-presets input:checked + .elementor-control-structure-preset path {
      fill: #a4afb7; }

.elementor-control-type-structure .elementor-control-structure-preset-wrapper {
  margin-bottom: 15px; }

.elementor-control-type-structure .elementor-control-structure-preset-title {
  text-align: center;
  padding-top: 5px;
  font-style: italic;
  font-size: 11px;
  color: #a4afb7; }

.elementor-control-type-switcher .elementor-control-input-wrapper {
  text-align: left; }

.elementor-control-type-switcher .elementor-switch {
  position: relative;
  display: inline-block;
  vertical-align: top;
  height: 20px;
  background-color: white;
  -webkit-border-radius: 18px;
          border-radius: 18px;
  cursor: pointer; }

.elementor-control-type-switcher .elementor-switch-input {
  display: none; }

.elementor-control-type-switcher .elementor-switch-label {
  position: relative;
  display: block;
  height: inherit;
  font-size: 7px;
  text-transform: uppercase;
  background: #eceeef;
  -webkit-border-radius: inherit;
          border-radius: inherit;
  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.12), inset 0 0 2px rgba(0, 0, 0, 0.15);
          box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.12), inset 0 0 2px rgba(0, 0, 0, 0.15);
  -webkit-transition: 0.15s ease-out;
  -o-transition: 0.15s ease-out;
  transition: 0.15s ease-out;
  -webkit-transition-property: opacity, background;
  -o-transition-property: opacity, background;
  transition-property: opacity, background; }

.elementor-control-type-switcher .elementor-switch-label:before, .elementor-control-type-switcher .elementor-switch-label:after {
  position: absolute;
  top: 0;
  width: 50%;
  text-align: center;
  line-height: 20px;
  -webkit-transition: inherit;
  -o-transition: inherit;
  transition: inherit; }

.elementor-control-type-switcher .elementor-switch-label:before {
  content: attr(data-off);
  right: 3px;
  color: #a4afb7;
  text-shadow: 0 1px rgba(255, 255, 255, 0.5); }

.elementor-control-type-switcher .elementor-switch-label:after {
  content: attr(data-on);
  left: 3px;
  color: white;
  text-shadow: 0 1px rgba(0, 0, 0, 0.2);
  opacity: 0; }

.elementor-control-type-switcher .elementor-switch-input:checked ~ .elementor-switch-label {
  background: #71d7f7;
  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.15), inset 0 0 3px rgba(0, 0, 0, 0.2);
          box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.15), inset 0 0 3px rgba(0, 0, 0, 0.2); }
  .elementor-control-type-switcher .elementor-switch-input:checked ~ .elementor-switch-label:before {
    opacity: 0; }
  .elementor-control-type-switcher .elementor-switch-input:checked ~ .elementor-switch-label:after {
    opacity: 1; }

.elementor-control-type-switcher .elementor-switch-handle {
  position: absolute;
  top: 1px;
  left: 1px;
  width: 18px;
  height: 18px;
  background: white;
  -webkit-border-radius: 10px;
          border-radius: 10px;
  -webkit-transition: left 0.15s ease-out;
  -o-transition: left 0.15s ease-out;
  transition: left 0.15s ease-out; }

.elementor-control-type-switcher .elementor-switch-input:checked ~ .elementor-switch-handle {
  left: initial;
  right: 1px;
  -webkit-box-shadow: -1px 1px 5px rgba(0, 0, 0, 0.2);
          box-shadow: -1px 1px 5px rgba(0, 0, 0, 0.2); }

.elementor-control-type-tabs {
  font-size: 0.8em;
  text-transform: uppercase;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.elementor-control-type-tab {
  text-align: center;
  width: 100%;
  padding: 0;
  line-height: 25px;
  border-top: 1px solid #d5dadf;
  border-bottom: 1px solid #d5dadf;
  border-left: 1px solid #d5dadf;
  cursor: pointer; }
  .elementor-control-type-tab:first-child {
    border-right: 1px solid #d5dadf;
    -webkit-border-top-right-radius: 3px;
            border-top-right-radius: 3px;
    -webkit-border-bottom-right-radius: 3px;
            border-bottom-right-radius: 3px; }
  .elementor-control-type-tab:last-child {
    -webkit-border-top-left-radius: 3px;
            border-top-left-radius: 3px;
    -webkit-border-bottom-left-radius: 3px;
            border-bottom-left-radius: 3px; }
  .elementor-control-type-tab.elementor-tab-active {
    background-color: #a4afb7;
    border-color: #a4afb7;
    color: #ffffff; }

.elementor-tab-close {
  display: none !important; }

.elementor-control-type-textarea.elementor-control-dynamic-value .elementor-control-dynamic-switcher,
.elementor-control-type-code.elementor-control-dynamic-value .elementor-control-dynamic-switcher {
  -webkit-border-radius: 3px 0 0 3px;
          border-radius: 3px 0 0 3px;
  border-right-width: 0; }

.elementor-control-type-textarea .elementor-control-dynamic-switcher,
.elementor-control-type-code .elementor-control-dynamic-switcher {
  -webkit-border-radius: 0px 3px;
          border-radius: 0px 3px; }

.elementor-control-type-textarea:not(.elementor-control-dynamic-value) .elementor-control-dynamic-switcher,
.elementor-control-type-code:not(.elementor-control-dynamic-value) .elementor-control-dynamic-switcher {
  position: absolute;
  top: 0;
  z-index: 1;
  left: 0; }

.elementor-control-type-textarea .elementor-control-input-wrapper,
.elementor-control-type-code .elementor-control-input-wrapper {
  position: relative; }

.elementor-control-type-textarea textarea,
.elementor-control-type-code textarea {
  display: block;
  font-family: inherit; }
  .elementor-control-type-textarea textarea:focus + .elementor-control-dynamic-switcher,
  .elementor-control-type-code textarea:focus + .elementor-control-dynamic-switcher {
    display: none; }

.elementor-control-type-textarea pre:focus-within + .elementor-control-dynamic-switcher,
.elementor-control-type-code pre:focus-within + .elementor-control-dynamic-switcher {
  display: none; }

.elementor-control-type-url.elementor-control-dynamic .elementor-input {
  -webkit-border-radius: 3px 0 0 3px;
          border-radius: 3px 0 0 3px; }

.elementor-control-type-url .elementor-control-field {
  position: relative; }

.elementor-control-type-url:not(.elementor-control-dynamic) .elementor-control-url-more, .elementor-control-type-url.elementor-control-dynamic-value .elementor-control-url-more {
  -webkit-border-radius: 0 3px 3px 0;
          border-radius: 0 3px 3px 0; }

.elementor-control-type-url .elementor-control-input-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse; }

.elementor-control-type-url .elementor-control-url-more {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  border: 1px solid #d5dadf;
  border-left: none;
  cursor: pointer; }
  .elementor-control-type-url .elementor-control-url-more i {
    font-size: 12px; }
  .elementor-control-type-url .elementor-control-url-more-options {
    display: none;
    padding-top: 10px; }
    .elementor-control-type-url .elementor-control-url-more-options .elementor-control-field-description {
      margin-top: 10px; }

.elementor-control-type-url .elementor-control-url-option {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .elementor-control-type-url .elementor-control-url-option:not(:last-child) {
    padding-bottom: 10px; }
  .elementor-control-type-url .elementor-control-url-option input,
  .elementor-control-type-url .elementor-control-url-option label {
    cursor: pointer; }
  .elementor-control-type-url .elementor-control-url-option-input {
    margin: 0;
    padding: 0;
    -webkit-border-radius: 2px;
            border-radius: 2px;
    margin-left: 5px;
    -webkit-appearance: none;
    -moz-appearance: none;
    outline: none;
    content: none;
    height: 15px;
    width: 15px;
    border: 1px solid #d5dadf;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .elementor-control-type-url .elementor-control-url-option-input:checked {
      background: #71d7f7;
      border: none; }
      .elementor-control-type-url .elementor-control-url-option-input:checked:before {
        display: block;
        content: "";
        width: 4px;
        height: 7px;
        border: solid white;
        border-width: 0 2px 2px 0;
        -webkit-transform: rotate(45deg);
            -ms-transform: rotate(45deg);
                transform: rotate(45deg); }
  .elementor-control-type-url .elementor-control-url-option label {
    font-size: 12px; }

.elementor-control-type-url .elementor-control-url-external-hide .elementor-control-url-more {
  display: none; }

.elementor-control-type-url .elementor-control-url-external-show .elementor-input,
.elementor-control-type-url .elementor-control-url-external-show .elementor-dynamic-cover {
  -webkit-border-radius: 3px 0 0 3px;
          border-radius: 3px 0 0 3px; }

.elementor-control-type-url .elementor-control-url-autocomplete-spinner {
  display: none;
  position: absolute;
  top: 5px;
  right: 0px;
  width: 10px;
  height: 10px;
  font-size: 10px;
  color: #D4D4D4; }

.elementor-control-type-url .elementor-control-url__custom-attributes {
  margin-top: 5px; }
  .elementor-control-type-url .elementor-control-url__custom-attributes label {
    font-size: 12px; }
  .elementor-control-type-url .elementor-control-url__custom-attributes input {
    width: 100%;
    margin-top: 10px; }

.elementor-control-type-url .elementor-input {
  direction: ltr; }
  .elementor-control-type-url .elementor-input:not(:focus) + .elementor-control-url-more {
    border-color: #d5dadf; }
  .elementor-control-type-url .elementor-input:focus ~ div {
    border-color: #a4afb7; }

.elementor-control-type-url .elementor-control-dynamic-switcher {
  border-left: none;
  -webkit-border-radius: 0 3px 3px 0;
          border-radius: 0 3px 3px 0; }

.elementor-autocomplete-menu {
  position: absolute;
  background: #fff;
  color: #495157;
  border: 1px solid #a4afb7;
  margin: 0;
  list-style: none;
  padding: 4px 0;
  height: auto;
  width: 100%;
  min-width: 260px;
  max-width: 300px;
  max-height: 200px;
  overflow-y: auto;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  -webkit-transition: all .3s ease-in-out;
  -o-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
  cursor: default;
  z-index: 1; }
  .elementor-autocomplete-menu .ui-menu-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-item-align: baseline;
        align-self: baseline;
    padding: 5px 8px;
    font-size: 12px;
    width: 100%;
    line-height: 1.2;
    cursor: pointer; }
    .elementor-autocomplete-menu .ui-menu-item.ui-state-hover, .elementor-autocomplete-menu .ui-menu-item.ui-state-active, .elementor-autocomplete-menu .ui-menu-item.ui-state-focus {
      background: #e6e9ec; }
  .elementor-autocomplete-menu .elementor-autocomplete-item-info {
    font-size: 10px;
    padding-top: 2px; }

.elementor-control-type-wp_widget .widget-inside {
  display: block; }

.elementor-control-type-wp_widget .quicktags-toolbar input {
  width: auto; }

.elementor-control-type-wysiwyg * {
  -webkit-box-sizing: content-box;
          box-sizing: content-box; }

.elementor-control-type-wysiwyg .wp-editor-container {
  border: 1px solid #e6e9ec; }

.elementor-control-type-wysiwyg .wp-editor-tabs {
  border: 1px solid #d5dadf;
  border-bottom: none;
  -webkit-border-radius: 3px 3px 0 0;
          border-radius: 3px 3px 0 0; }

.elementor-control-type-wysiwyg #insert-media-button {
  height: initial;
  line-height: 24px;
  font-size: 10px;
  color: #6d7882;
  border-color: #d5dadf;
  background-color: #e6e9ec;
  min-height: initial; }

.elementor-control-type-wysiwyg .ed_button {
  height: 22px;
  width: initial; }

.elementor-control-type-wysiwyg .wp-media-buttons-icon {
  height: 14px;
  margin: 0; }
  .elementor-control-type-wysiwyg .wp-media-buttons-icon:before {
    font-size: 14px; }

.elementor-control-type-wysiwyg .wp-switch-editor {
  position: static;
  border: none;
  margin: 0;
  color: #6d7882;
  font-size: 10px;
  padding: 3px 9px 4px; }

.elementor-control-type-wysiwyg .switch-html {
  border: solid #d5dadf;
  border-width: 0 1px; }

.elementor-control-type-wysiwyg .html-active .switch-tmce {
  background-color: transparent; }

.elementor-control-type-wysiwyg .html-active .switch-html {
  background-color: #e6e9ec; }

.elementor-control-type-wysiwyg .tmce-active .switch-tmce {
  background-color: #e6e9ec; }

.elementor-control-type-wysiwyg .tmce-active .switch-html {
  background-color: transparent; }

.elementor-control-type-wysiwyg .mce-toolbar-grp, .elementor-control-type-wysiwyg .quicktags-toolbar {
  background-color: #e6e9ec; }

.elementor-control-type-wysiwyg .mce-toolbar-grp > div {
  padding: 0 3px; }

.elementor-control-type-wysiwyg .elementor-wp-editor {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

.elementor-control-type-wysiwyg .mce-ico {
  color: #6d7882;
  font-size: 16px; }

.elementor-control-type-wysiwyg .mce-btn {
  margin-right: 0;
  margin-left: 0; }
  .elementor-control-type-wysiwyg .mce-btn:hover, .elementor-control-type-wysiwyg .mce-btn:active, .elementor-control-type-wysiwyg .mce-btn.mce-active {
    border-color: #d5dadf; }

.elementor-control-type-wysiwyg .mce-path {
  padding: 5px 10px; }

.elementor-control-type-wysiwyg .mce-path-item {
  font-size: 12px;
  color: #6d7882; }

.elementor-control-type-wysiwyg .elementor-control-dynamic-switcher {
  border: none; }

.elementor-control-type-text .elementor-control-dynamic-switcher {
  border-right-width: 0;
  -webkit-border-radius: 3px 0 0 3px;
          border-radius: 3px 0 0 3px; }

.elementor-control-type-text.elementor-control-dynamic input {
  -webkit-border-radius: 0 3px 3px 0;
          border-radius: 0 3px 3px 0; }

#elementor-mode-switcher {
  position: absolute;
  right: 100%;
  top: 50%;
  width: 15px;
  height: 50px;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  background-color: #e6e9ec;
  font-size: 15px;
  -webkit-box-shadow: -3px 1px 5px rgba(0, 0, 0, 0.1);
          box-shadow: -3px 1px 5px rgba(0, 0, 0, 0.1);
  cursor: pointer; }
  #elementor-mode-switcher:hover {
    background-color: #93003c;
    color: #FFFFFF; }

#elementor-mode-switcher-inner, #elementor-mode-switcher-preview {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0; }

#elementor-mode-switcher-preview {
  cursor: pointer; }
  #elementor-mode-switcher-preview .eicon {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }

#elementor-mode-switcher-preview-input {
  display: none; }

:root {
  --e-is-device-mode: 0; }

.e-is-device-mode {
  --e-is-device-mode: 1; }

#elementor-responsive-bar {
  position: -webkit-sticky;
  position: sticky;
  height: calc(40px * var(--e-is-device-mode));
  -ms-flex-item-align: stretch;
      align-self: stretch;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -webkit-transition: height .2s ease-in-out, opacity .1s;
  -o-transition: height .2s ease-in-out, opacity .1s;
  transition: height .2s ease-in-out, opacity .1s;
  left: 0;
  top: 0;
  z-index: 100;
  opacity: var(--e-is-device-mode);
  -webkit-box-shadow: 0 0 10px 2px rgba(0, 0, 0, 0.33), 0 0 2px 1px rgba(0, 0, 0, 0.25), 0 0 6px -3px rgba(255, 255, 255, 0.5);
          box-shadow: 0 0 10px 2px rgba(0, 0, 0, 0.33), 0 0 2px 1px rgba(0, 0, 0, 0.25), 0 0 6px -3px rgba(255, 255, 255, 0.5); }
  #elementor-responsive-bar:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    -webkit-transform: scaleX(var(--e-preview-scale, 1));
        -ms-transform: scaleX(var(--e-preview-scale, 1));
            transform: scaleX(var(--e-preview-scale, 1)); }

.e-responsive-bar-switcher__option {
  cursor: pointer;
  text-align: center;
  width: 22px;
  height: 22px;
  margin: 0 4px;
  line-height: 22px;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  font-size: 16px;
  -webkit-transition: background-color .3s ease-out;
  -o-transition: background-color .3s ease-out;
  transition: background-color .3s ease-out; }
  .e-responsive-bar-switcher__option:hover, .e-responsive-bar-switcher__option[aria-selected="true"] {
    color: #c2cbd2;
    background-color: rgba(255, 255, 255, 0.1); }
  .e-responsive-bar-switcher__option input {
    display: none; }
    .e-responsive-bar-switcher__option input:checked + i {
      color: #71d7f7; }
  .e-responsive-bar-switcher__option:not(:last-child) {
    -webkit-margin-end: 6px;
            margin-inline-end: 6px; }

.e-responsive-bar__button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: none;
  border: 0 none;
  cursor: pointer;
  color: inherit; }
  .e-responsive-bar__button:focus:not(:focus-visible) {
    outline: none; }
  .e-responsive-bar__button:hover {
    color: #c2cbd2;
    background-color: rgba(255, 255, 255, 0.1); }

.e-responsive-bar--pipe {
  position: relative; }
  .e-responsive-bar--pipe::before {
    content: '';
    display: block;
    height: 20px;
    width: 1px;
    background-color: #6d7882;
    position: absolute;
    left: -5px;
    top: calc(50% - 10px); }

.e-responsive-bar__input-size {
  background-color: transparent;
  color: #a4afb7;
  border: 1px solid #6d7882 !important;
  padding: 0 3px;
  width: 60px;
  font-size: 12px;
  line-height: 16px;
  height: 18px;
  margin: auto 8px auto 4px; }
  .e-responsive-bar__input-size-separator {
    color: #6d7882; }

#e-responsive-bar {
  width: 100%;
  margin-top: calc(-40px + (40px * var(--e-is-device-mode)));
  z-index: 1;
  -webkit-transition: margin-top .2s ease-in-out;
  -o-transition: margin-top .2s ease-in-out;
  transition: margin-top .2s ease-in-out;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  color: #a4afb7;
  background-color: #495157; }
  #e-responsive-bar__center, #e-responsive-bar__end, #e-responsive-bar-scale, #e-responsive-bar-switcher {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 13px;
    background-color: #495157;
    padding: 2px 0; }
  @media (min-width: 1400px) {
    #e-responsive-bar__center {
      margin-right: 50%;
      -webkit-transform: translate(50%, 0);
          -ms-transform: translate(50%, 0);
              transform: translate(50%, 0); } }
  #e-responsive-bar__close-button, #e-responsive-bar__settings-button {
    width: 22px;
    height: 22px;
    -webkit-border-radius: 3px;
            border-radius: 3px;
    margin: 7px 5px;
    font-size: 16px; }
  #e-responsive-bar__size-inputs-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-margin-end: 8px;
            margin-inline-end: 8px;
    color: #6d7882; }
  #e-responsive-bar-switcher {
    padding: 0 20px; }
  #e-responsive-bar-scale {
    padding: 0 20px; }
    #e-responsive-bar-scale__value-wrapper {
      margin: 0 14px;
      min-width: 32px;
      text-align: center; }
    #e-responsive-bar-scale__plus, #e-responsive-bar-scale__minus, #e-responsive-bar-scale__reset {
      cursor: pointer;
      width: 20px;
      height: 20px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; }
    #e-responsive-bar-scale__minus:before {
      content: "";
      display: block;
      width: 13px;
      height: 2px;
      background: #a4afb7;
      -webkit-border-radius: 3px;
              border-radius: 3px; }
    #e-responsive-bar-scale__reset {
      margin: 0px 8px; }

.elementor-revision-item__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid #d5dadf;
  padding: 10px 15px;
  margin-bottom: 10px;
  font-size: 11px;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s; }
  .elementor-revision-item__wrapper.current {
    font-weight: bold; }
  .elementor-revision-item__wrapper .elementor-revision-item__tools-current {
    color: #71d7f7; }

.elementor-revision-item:hover:not(.elementor-revision-current-preview) {
  background-color: rgba(230, 233, 236, 0.3); }

.elementor-revision-item-loading .elementor-revision-item__tools-current {
  display: none; }

.elementor-revision-item:not(.elementor-revision-item-loading) .elementor-revision-item__tools-spinner {
  display: none; }

.elementor-revision-item__gravatar {
  -webkit-border-radius: 50%;
          border-radius: 50%;
  overflow: hidden; }
  .elementor-revision-item__gravatar img {
    display: block; }

.elementor-revision-item__details {
  padding-right: 15px;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  cursor: pointer; }

.elementor-revision-meta {
  padding-top: 5px;
  font-size: 10px;
  font-weight: bold; }

.elementor-revision-current-preview {
  background-color: #e6e9ec; }

#elementor-restore-autosave-dialog.dialog-widget {
  background-color: rgba(0, 0, 0, 0.3); }

#elementor-panel-revisions-loading {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%); }
  #elementor-panel-revisions-loading .eicon-loading {
    font-size: 50px;
    color: #a4afb7; }

.elementor-history-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid #d5dadf;
  padding: 10px 15px;
  margin-bottom: 10px;
  font-size: 11px;
  line-height: 1.4;
  cursor: pointer;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s; }
  .elementor-history-item:hover {
    background-color: rgba(230, 233, 236, 0.3); }
    .elementor-history-item:hover .elementor-history-item__icon .eicon:before {
      content: '\e924'; }
  .elementor-history-item-applied {
    color: #a4afb7; }
  .elementor-history-item-current {
    background: #e6e9ec;
    cursor: default; }
    .elementor-history-item-current .elementor-history-item__icon .eicon:before, .elementor-history-item-current:hover .elementor-history-item__icon .eicon:before {
      content: '\e90e'; }
  .elementor-history-item__details {
    width: 95%; }
  .elementor-history-item__title {
    font-weight: bold; }
  .elementor-history-item__subtitle, .elementor-history-item__action {
    font-weight: lighter; }
  .elementor-history-item__action {
    font-style: italic;
    text-decoration: underline; }
  .elementor-history-item .__icon {
    float: left; }

.elementor-history-revisions-message {
  font-size: 11px;
  text-align: center;
  padding-top: 5px; }

#elementor-panel-history {
  padding: 20px 20px 15px; }
  #elementor-panel-history.elementor-empty .elementor-history-revisions-message {
    padding-top: 20px; }
  #elementor-panel-history:not(.elementor-empty) {
    background-color: #fff;
    margin-top: 10px; }

#elementor-panel-history-no-items,
#elementor-panel-revisions-no-revisions {
  text-align: center; }
  #elementor-panel-history-no-items .elementor-nerd-box-icon,
  #elementor-panel-revisions-no-revisions .elementor-nerd-box-icon {
    margin-top: 20px; }

.elementor-panel #elementor-panel-header #elementor-panel-header-kit-close,
.elementor-panel #elementor-panel-header #elementor-panel-header-kit-back {
  display: none; }

.elementor-editor-kit .elementor-panel #elementor-panel-header {
  background-color: #4ab7f4; }
  .elementor-editor-kit .elementor-panel #elementor-panel-header #elementor-panel-header-kit-close,
  .elementor-editor-kit .elementor-panel #elementor-panel-header #elementor-panel-header-kit-back {
    display: table-cell; }
  body:not(.e-routes-has-history) #elementor-panel-header-kit-back {
    pointer-events: none;
    opacity: 0.4; }
    body:not(.e-routes-has-history) #elementor-panel-header-kit-back:hover .elementor-icon {
      cursor: inherit;
      color: inherit; }

.elementor-editor-kit .elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab.elementor-active {
  border-bottom-color: #4ab7f4; }

.elementor-editor-kit .elementor-panel #elementor-panel-page-settings .elementor-panel-navigation {
  display: none; }

.elementor-editor-kit .elementor-panel #elementor-panel-saver-button-publish.elementor-button.elementor-button-success:not(.elementor-disabled),
.elementor-editor-kit .elementor-panel #elementor-panel-saver-button-save-options.elementor-button.elementor-button-success:not(.elementor-disabled) {
  background-color: #4ab7f4; }

.elementor-editor-kit .elementor-panel #elementor-panel-page-menu {
  padding: 25px 15px 0; }

.elementor-editor-kit #elementor-panel-header-add-button,
.elementor-editor-kit #elementor-panel-header-menu-button,
.elementor-editor-kit #elementor-panel-footer-sub-menu-item-save-template,
.elementor-editor-kit #elementor-panel-footer-navigator {
  display: none; }

.elementor-control-type-global-style-repeater .elementor-repeater-fields {
  margin-bottom: 15px;
  position: relative; }

.elementor-control-type-global-style-repeater .elementor-repeater-row-controls {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.elementor-control-type-global-style-repeater .elementor-repeater-row-tool {
  cursor: pointer;
  color: #d5dadf;
  padding: 5px; }

.elementor-control-type-global-style-repeater .elementor-control {
  padding: 0; }
  .elementor-control-type-global-style-repeater .elementor-control-title {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }
    .elementor-control-type-global-style-repeater .elementor-control-title input {
      max-width: 135px; }
      .elementor-control-type-global-style-repeater .elementor-control-title input:not(:focus) {
        background: none;
        border: none; }
  .elementor-control-type-global-style-repeater .elementor-control-input-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    min-width: 81px; }
    .elementor-control-type-global-style-repeater .elementor-control-input-wrapper:hover .e-global-colors__color-value {
      display: none; }
    .elementor-control-type-global-style-repeater .elementor-control-input-wrapper:not(:hover) .elementor-repeater-tool-remove,
    .elementor-control-type-global-style-repeater .elementor-control-input-wrapper:not(:hover) .elementor-repeater-tool-remove--disabled {
      display: none; }

.elementor-control-type-global-style-repeater .elementor-control-content > .elementor-control-field > .elementor-control-input-wrapper {
  margin-top: 0; }

.elementor-control-type-global-style-repeater .elementor-controls-popover {
  -ms-flex-item-align: end;
      align-self: end;
  margin-top: 35px;
  top: 0;
  width: 100%; }
  .elementor-control-type-global-style-repeater .elementor-controls-popover:before {
    left: 5px; }
  .elementor-control-type-global-style-repeater .elementor-controls-popover .elementor-control {
    padding: 0 20px 15px; }
    .elementor-control-type-global-style-repeater .elementor-controls-popover .elementor-control-title {
      -webkit-box-flex: initial;
          -ms-flex-positive: initial;
              flex-grow: initial; }

.elementor-control-type-global-style-repeater .elementor-button-wrapper {
  text-align: center;
  border-top: 1px solid #e6e9ec;
  max-width: 260px;
  padding-top: 15px; }

.elementor-control-type-global-style-repeater .pickr,
.elementor-control-type-global-style-repeater .elementor-control-popover-toggle-toggle-label {
  margin-right: 5px; }

.elementor-control-system_colors, .elementor-control-system_typography {
  padding-bottom: 0; }

.e-global-colors__color-value {
  color: #d5dadf;
  font-size: 10px;
  padding: 0 5px;
  text-align: left;
  white-space: nowrap;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  overflow: hidden; }

@-webkit-keyframes load {
  0% {
    opacity: .3; }
  50% {
    opacity: 1; }
  100% {
    opacity: .3; } }

@keyframes load {
  0% {
    opacity: .3; }
  50% {
    opacity: 1; }
  100% {
    opacity: .3; } }

@-webkit-keyframes fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@keyframes fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@-webkit-keyframes mover {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0); }
  100% {
    -webkit-transform: translateY(-5px);
            transform: translateY(-5px); } }

@keyframes mover {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0); }
  100% {
    -webkit-transform: translateY(-5px);
            transform: translateY(-5px); } }

@-webkit-keyframes slideDown {
  0% {
    -webkit-transform: translateY(-30px);
            transform: translateY(-30px); }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

@keyframes slideDown {
  0% {
    -webkit-transform: translateY(-30px);
            transform: translateY(-30px); }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

body {
  --e-preview-width: calc(100% - var(--e-editor-panel-width, 300px)); }
  body.elementor-navigator-docked {
    --e-preview-width: calc(100% - var(--e-editor-panel-width, 300px) - var(--e-editor-navigator-width, 0px)); }
  body.elementor-device-desktop #elementor-preview {
    overflow-y: hidden;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start; }
  body:not(.elementor-device-desktop) body {
    overflow-y: auto; }

#elementor-preview {
  overflow: auto;
  background-color: #333;
  height: 100%;
  border: 0;
  width: var(--e-preview-width);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  direction: ltr; }
  #elementor-preview > div {
    direction: rtl; }

#elementor-preview-responsive-wrapper {
  -webkit-transform-origin: top center;
      -ms-transform-origin: top center;
          transform-origin: top center;
  padding: 20px;
  -webkit-transform: scale(var(--e-preview-scale, 1));
      -ms-transform: scale(var(--e-preview-scale, 1));
          transform: scale(var(--e-preview-scale, 1)); }
  .elementor-device-desktop #elementor-preview-responsive-wrapper {
    min-width: 1025px;
    width: 100%;
    height: 100%;
    padding: 0;
    position: relative; }
  body.e-is-device-mode:not(.elementor-device-desktop) #elementor-preview-responsive-wrapper {
    width: var(--e-editor-preview-width);
    height: var(--e-editor-preview-height);
    margin: 0 Max(calc((100vw - var(--e-editor-panel-width) - var(--e-editor-preview-width)) / 2), 20px);
    -webkit-box-sizing: content-box;
            box-sizing: content-box;
    position: relative;
    max-height: calc(100vh - 80px); }
    body.e-is-device-mode:not(.elementor-device-desktop) #elementor-preview-responsive-wrapper .ui-resizable-handle {
      display: -webkit-box !important;
      display: -ms-flexbox !important;
      display: flex !important; }
  #elementor-preview-responsive-wrapper:not(.ui-resizable-resizing) {
    -webkit-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out; }
  #elementor-preview-responsive-wrapper .ui-resizable-handle {
    top: 0; }
    #elementor-preview-responsive-wrapper .ui-resizable-handle.ui-resizable-s {
      top: auto;
      bottom: 0; }
  #elementor-preview-responsive-wrapper .ui-resizable-n, #elementor-preview-responsive-wrapper .ui-resizable-s {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    height: 20px; }
    #elementor-preview-responsive-wrapper .ui-resizable-n:before, #elementor-preview-responsive-wrapper .ui-resizable-s:before {
      content: '';
      display: block;
      background-color: rgba(255, 255, 255, 0.2);
      width: 50px;
      height: 4px;
      -webkit-border-radius: 3px;
              border-radius: 3px;
      -webkit-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      transition: all 0.2s ease-in-out; }
    #elementor-preview-responsive-wrapper .ui-resizable-n:hover:before, #elementor-preview-responsive-wrapper .ui-resizable-s:hover:before {
      background-color: rgba(255, 255, 255, 0.6);
      width: 100px; }
  #elementor-preview-responsive-wrapper .ui-resizable-e, #elementor-preview-responsive-wrapper .ui-resizable-w {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 20px; }
    #elementor-preview-responsive-wrapper .ui-resizable-e:before, #elementor-preview-responsive-wrapper .ui-resizable-w:before {
      content: '';
      display: block;
      background-color: rgba(255, 255, 255, 0.2);
      width: 4px;
      height: 50px;
      -webkit-border-radius: 3px;
              border-radius: 3px;
      -webkit-transition: all 0.2s ease-in-out;
      -o-transition: all 0.2s ease-in-out;
      transition: all 0.2s ease-in-out; }
    #elementor-preview-responsive-wrapper .ui-resizable-e:hover:before, #elementor-preview-responsive-wrapper .ui-resizable-w:hover:before {
      background-color: rgba(255, 255, 255, 0.6);
      height: 100px; }
  #elementor-preview-responsive-wrapper.ui-resizable-resizing .ui-resizable-handle:before {
    background-color: rgba(255, 255, 255, 0.9); }
  #elementor-preview-responsive-wrapper .ui-resizable-s {
    bottom: 0; }
  #elementor-preview-responsive-wrapper .ui-resizable-e {
    right: 0; }
  #elementor-preview-responsive-wrapper .ui-resizable-w {
    left: 0; }

#elementor-preview-iframe {
  width: 100%;
  height: 100%;
  background-color: #fff;
  -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.3), 0 0 20px rgba(0, 0, 0, 0.15);
          box-shadow: 0 0 3px rgba(0, 0, 0, 0.3), 0 0 20px rgba(0, 0, 0, 0.15); }

#elementor-template-library-modal a.elementor-template-library-blank-footer-link {
  font-style: normal;
  text-decoration: underline;
  color: #39b54a; }
  #elementor-template-library-modal a.elementor-template-library-blank-footer-link:hover {
    color: #2d8e3a; }

#elementor-template-library-modal .dialog-buttons-wrapper {
  display: none; }

#elementor-template-library-modal .select2-container {
  z-index: 0; }

#elementor-template-library-header-menu {
  text-align: center;
  color: #6d7882;
  font-size: 13px; }

.elementor-template-library-menu-item {
  display: inline-block;
  padding: 17px 0;
  width: 115px;
  cursor: pointer; }
  .elementor-template-library-menu-item.elementor-active {
    background-image: -webkit-gradient(linear, left top, left bottom, from(#f1f3f5), to(#fff));
    background-image: -webkit-linear-gradient(top, #f1f3f5, #fff);
    background-image: -o-linear-gradient(top, #f1f3f5, #fff);
    background-image: linear-gradient(to bottom, #f1f3f5, #fff);
    border-bottom: 3px solid #93003c; }

#elementor-template-library-header-actions {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  #elementor-template-library-header-actions > div {
    padding-left: 16px; }

#elementor-template-library-header-preview-insert-wrapper {
  cursor: default;
  padding: 0 10px; }
  #elementor-template-library-header-preview-insert-wrapper .elementor-button {
    padding: 8px 14px;
    font-size: 11px; }
  #elementor-template-library-header-preview-insert-wrapper .elementor-template-library-template-insert {
    color: #fff;
    background-color: #39b54a; }
  #elementor-template-library-header-preview-insert-wrapper .elementor-go-pro {
    background-color: #93003c;
    color: #fff; }

#elementor-template-library-header-preview-back {
  padding: 16.5px 0 15px 16.5px;
  border-left: 1px solid #e6e9ec;
  cursor: pointer;
  -webkit-transition: color .5s;
  -o-transition: color .5s;
  transition: color .5s; }
  #elementor-template-library-header-preview-back:not(:hover) {
    color: #a4afb7; }
  #elementor-template-library-header-preview-back i {
    padding-left: 10px;
    font-size: 18px; }
    #elementor-template-library-header-preview-back i:before {
      content: ""; }

#elementor-template-library-templates {
  padding: 0 15px; }
  #elementor-template-library-templates[data-template-source="local"] #elementor-template-library-templates-container {
    -webkit-box-shadow: 1px 1px 20px 0 rgba(0, 0, 0, 0.03);
            box-shadow: 1px 1px 20px 0 rgba(0, 0, 0, 0.03);
    margin-top: 10px;
    margin-bottom: 45px; }
  #elementor-template-library-templates[data-template-source="local"] .elementor-template-library-order-input:checked + .elementor-template-library-order-label {
    color: #6d7882; }
  #elementor-template-library-templates[data-template-source="remote"] #elementor-template-library-templates-container {
    margin: 10px -15px 0; }
  #elementor-template-library-templates[data-template-source="remote"] .elementor-template-library-order-input:checked + .elementor-template-library-order-label {
    color: #495157; }
  #elementor-template-library-templates[data-template-source="empty"] #elementor-template-library-order-toolbar-local, #elementor-template-library-templates[data-template-source="empty"] #elementor-template-library-footer-banner {
    display: none; }
  #elementor-template-library-templates.elementor-templates-filter-active #elementor-template-library-footer-banner {
    display: none; }
  #elementor-template-library-templates .elementor-template-library-order-input {
    display: none; }
    #elementor-template-library-templates .elementor-template-library-order-input:checked + .elementor-template-library-order-label {
      padding-left: 8px; }
      #elementor-template-library-templates .elementor-template-library-order-input:checked + .elementor-template-library-order-label:after {
        font-family: eicons;
        content: '\e8ae';
        margin-right: 3px; }
    #elementor-template-library-templates .elementor-template-library-order-input:checked.elementor-template-library-order-reverse + .elementor-template-library-order-label:after {
      content: '\e8ad'; }

#elementor-template-library-templates-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; }
  #elementor-template-library-templates-container .elementor-template-library-template-local .elementor-template-library-template-insert {
    text-transform: none;
    font-size: 12px; }

#elementor-template-library-toolbar {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.elementor-template-library-filter-toolbar {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

#elementor-template-library-filter-toolbar-remote {
  font-size: 11px; }

#elementor-template-library-order {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-left: 1px solid #d5dadf; }

.elementor-template-library-order-label {
  text-transform: uppercase;
  padding-left: 22px;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none; }

label.elementor-template-library-order-label {
  cursor: pointer; }
  label.elementor-template-library-order-label:hover {
    color: #556068; }

#elementor-template-library-filter .select2 {
  text-align: right;
  width: calc(27px * 5) !important; }

#elementor-template-library-filter .select2-selection__rendered {
  text-transform: capitalize; }

#select2-elementor-template-library-filter-subtype-results .select2-results__option {
  text-transform: capitalize;
  text-align: right;
  padding-right: 5px; }

#elementor-template-library-my-favorites {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  text-align: right;
  padding-right: 20px; }

#elementor-template-library-filter-my-favorites {
  display: none; }
  #elementor-template-library-filter-my-favorites:checked + #elementor-template-library-filter-my-favorites-label {
    color: #495157; }
    #elementor-template-library-filter-my-favorites:checked + #elementor-template-library-filter-my-favorites-label i:after {
      color: #93003c;
      content: '\e93f'; }

#elementor-template-library-filter-my-favorites-label {
  cursor: pointer;
  text-transform: uppercase; }
  #elementor-template-library-filter-my-favorites-label:hover {
    color: #556068; }
    #elementor-template-library-filter-my-favorites-label:hover i:after {
      color: #93003c; }
  #elementor-template-library-filter-my-favorites-label i {
    padding-left: 5px; }
    #elementor-template-library-filter-my-favorites-label i:after {
      color: #a4afb7;
      content: '\e923'; }

#elementor-template-library-filter-text-wrapper {
  width: 200px;
  position: relative; }
  #elementor-template-library-filter-text-wrapper i {
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); }

#elementor-template-library-filter-text {
  border: none;
  border-bottom: 1px solid #d5dadf;
  -webkit-border-radius: 0;
          border-radius: 0;
  font-size: 11px;
  padding: 8px 15px 8px 0;
  -webkit-transition: border 0.5s;
  -o-transition: border 0.5s;
  transition: border 0.5s; }
  #elementor-template-library-filter-text:focus {
    border-color: #c2cbd2; }
  #elementor-template-library-filter-text::-webkit-input-placeholder {
    font-weight: 300;
    text-transform: uppercase; }
  #elementor-template-library-filter-text::-moz-placeholder {
    font-weight: 300;
    text-transform: uppercase; }
  #elementor-template-library-filter-text::-ms-input-placeholder {
    font-weight: 300;
    text-transform: uppercase; }
  #elementor-template-library-filter-text::placeholder {
    font-weight: 300;
    text-transform: uppercase; }
  #elementor-template-library-filter-text:focus {
    border-color: #c2cbd2; }

.elementor-template-library-template-remote {
  margin: 15px;
  padding: 8px;
  background-color: #fff;
  -webkit-box-shadow: 0 1px 20px 0 rgba(0, 0, 0, 0.07);
          box-shadow: 0 1px 20px 0 rgba(0, 0, 0, 0.07);
  -webkit-border-radius: 3px;
          border-radius: 3px; }
  .elementor-template-library-template-remote:hover .elementor-template-library-template-name {
    display: none; }
  .elementor-template-library-template-remote:not(:hover) .elementor-template-library-template-preview {
    opacity: 0; }
  .elementor-template-library-template-remote:not(:hover) .elementor-template-library-favorite,
  .elementor-template-library-template-remote:not(:hover) .elementor-template-library-template-action {
    display: none; }
  .elementor-template-library-template-remote.elementor-template-library-pro-template .elementor-template-library-template-body:before {
    content: var(--elementor-template-library-subscription-plan-label);
    background-color: var(--elementor-template-library-subscription-plan-color);
    color: #d5dadf;
    position: absolute;
    text-transform: uppercase;
    top: 5px;
    left: 5px;
    padding: 2px 4px 0;
    font-size: 9px;
    -webkit-border-radius: 2px;
            border-radius: 2px; }
  .elementor-template-library-template-remote:not(.elementor-template-library-template-page):not(.elementor-template-library-template-lp) {
    position: relative;
    width: calc(33.333% - 30px);
    overflow: hidden; }
    .elementor-template-library-template-remote:not(.elementor-template-library-template-page):not(.elementor-template-library-template-lp) img {
      display: block;
      width: 100%; }
    .elementor-template-library-template-remote:not(.elementor-template-library-template-page):not(.elementor-template-library-template-lp) .elementor-template-library-template-footer {
      position: absolute;
      width: 100%;
      bottom: 0;
      right: 0;
      padding: 10px;
      background-color: #fff;
      -webkit-transition: -webkit-transform .5s;
      transition: -webkit-transform .5s;
      -o-transition: transform .5s;
      transition: transform .5s;
      transition: transform .5s, -webkit-transform .5s; }
    .elementor-template-library-template-remote:not(.elementor-template-library-template-page):not(.elementor-template-library-template-lp) .elementor-template-library-template-name {
      display: none; }
    .elementor-template-library-template-remote:not(.elementor-template-library-template-page):not(.elementor-template-library-template-lp):not(:hover) .elementor-template-library-template-footer {
      -webkit-transform: translateY(100%);
          -ms-transform: translateY(100%);
              transform: translateY(100%); }
  .elementor-template-library-template-remote .elementor-template-library-template-body {
    position: relative; }
  @media (max-width: 1025px) {
    .elementor-template-library-template-remote .elementor-template-library-template-body {
      height: 300px; } }
  .elementor-template-library-template-remote .elementor-template-library-template-screenshot {
    height: 100%;
    -webkit-background-size: cover;
            background-size: cover;
    background-position-x: 50%;
    -webkit-box-shadow: inset 0px -2px 15px -6px rgba(0, 0, 0, 0.07);
            box-shadow: inset 0px -2px 15px -6px rgba(0, 0, 0, 0.07); }
  .elementor-template-library-template-remote .elementor-template-library-template-preview {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    -webkit-transition: opacity .5s;
    -o-transition: opacity .5s;
    transition: opacity .5s;
    cursor: pointer; }
    .elementor-template-library-template-remote .elementor-template-library-template-preview i {
      font-size: 20px;
      color: #d5dadf;
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
          -ms-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%); }
  .elementor-template-library-template-remote .elementor-template-library-template-insert {
    color: #39b54a; }
  .elementor-template-library-template-remote .elementor-go-pro {
    color: #93003c; }
  .elementor-template-library-template-remote .elementor-template-library-template-footer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-top: 10px;
    font-size: 11px;
    line-height: 1; }
  .elementor-template-library-template-remote .elementor-template-library-template-name {
    text-align: right;
    color: #6d7882;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    white-space: nowrap;
    -o-text-overflow: ellipsis;
       text-overflow: ellipsis;
    overflow: hidden;
    padding-left: 5px; }
  .elementor-template-library-template-remote .elementor-template-library-template-favorite-input {
    display: none; }
    .elementor-template-library-template-remote .elementor-template-library-template-favorite-input:checked + .elementor-template-library-template-favorite-label i:before {
      content: '\e93f';
      color: #93003c; }
  .elementor-template-library-template-remote .elementor-template-library-template-favorite-label {
    cursor: pointer; }
    .elementor-template-library-template-remote .elementor-template-library-template-favorite-label:hover i {
      color: #93003c; }

@media (max-width: 1439px) {
  .elementor-template-library-template-page,
  .elementor-template-library-template-lp {
    width: calc(25% - 30px); } }

@media (min-width: 1440px) {
  .elementor-template-library-template-page,
  .elementor-template-library-template-lp {
    width: calc(20% - 30px); } }

@media (max-width: 1025px) {
  .elementor-template-library-template-page,
  .elementor-template-library-template-lp {
    width: calc(33.333% - 30px); } }

.elementor-template-library-template-page .elementor-template-library-template-body,
.elementor-template-library-template-lp .elementor-template-library-template-body {
  height: 200px; }

#elementor-template-library-order-toolbar-local,
.elementor-template-library-template-local {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 25px;
  text-align: right; }

#elementor-template-library-order-toolbar-local {
  margin-top: 30px; }
  #elementor-template-library-order-toolbar-local .elementor-template-library-order-label {
    line-height: 1;
    font-size: 10px;
    font-weight: 500; }
    #elementor-template-library-order-toolbar-local .elementor-template-library-order-label:not(:hover) {
      color: #a4afb7; }

.elementor-template-library-template-local {
  height: 50px;
  width: 100%;
  margin-top: 1px;
  background-color: #fff;
  -webkit-transition: background-color .3s linear;
  -o-transition: background-color .3s linear;
  transition: background-color .3s linear; }
  .elementor-template-library-template-local:hover {
    background-color: #fafbfb; }
  .elementor-template-library-template-local:not(:hover) .elementor-template-library-template-insert {
    background: none;
    color: #a4afb7; }
  .elementor-template-library-template-local:first-child {
    -webkit-border-radius: 3px 3px 0 0;
            border-radius: 3px 3px 0 0; }
  .elementor-template-library-template-local:last-child {
    -webkit-border-radius: 0 0 3px 3px;
            border-radius: 0 0 3px 3px; }
  .elementor-template-library-template-local .elementor-template-library-template-name {
    font-weight: 500; }
  .elementor-template-library-template-local .elementor-template-library-template-name,
  .elementor-template-library-template-local .elementor-template-library-template-meta {
    padding-left: 20px; }
  .elementor-template-library-template-local .elementor-template-library-template-meta {
    color: #a4afb7; }
  .elementor-template-library-template-local .elementor-template-library-template-name,
  .elementor-template-library-template-local .elementor-template-library-template-meta,
  .elementor-template-library-template-local .elementor-template-library-template-preview,
  .elementor-template-library-template-local .elementor-template-library-template-action {
    white-space: nowrap;
    -o-text-overflow: ellipsis;
       text-overflow: ellipsis;
    overflow: hidden; }
  .elementor-template-library-template-local .elementor-template-library-template-controls {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .elementor-template-library-template-local .elementor-template-library-template-controls,
    .elementor-template-library-template-local .elementor-template-library-template-controls a {
      color: #a4afb7; }
    .elementor-template-library-template-local .elementor-template-library-template-controls > div {
      cursor: pointer;
      -webkit-transition: color .5s;
      -o-transition: color .5s;
      transition: color .5s; }
  .elementor-template-library-template-local .elementor-template-library-template-insert i {
    margin-left: 3px; }
  .elementor-template-library-template-local .elementor-template-library-template-control-title {
    margin-right: 6px; }
  .elementor-template-library-template-local .elementor-template-library-template-more:hover,
  .elementor-template-library-template-local .elementor-template-library-template-more a:hover {
    color: #556068; }
  .elementor-template-library-template-local .elementor-template-library-template-more .elementor-template-library-template-delete:hover {
    color: #d72b3f; }
  .elementor-template-library-template-local .elementor-template-library-template-action {
    padding: 8px 18px;
    margin: 0 5%; }
  .elementor-template-library-template-local .elementor-template-library-template-more {
    display: none;
    position: absolute;
    background-color: #fff;
    padding: 3px 20px;
    -webkit-border-radius: 3px;
            border-radius: 3px;
    -webkit-box-shadow: 1px 3px 11px rgba(0, 0, 0, 0.3);
            box-shadow: 1px 3px 11px rgba(0, 0, 0, 0.3);
    top: 100%;
    left: 0;
    -webkit-transform: translateX(-65%) translateY(-7px);
        -ms-transform: translateX(-65%) translateY(-7px);
            transform: translateX(-65%) translateY(-7px);
    z-index: 1; }
    .elementor-template-library-template-local .elementor-template-library-template-more:before {
      content: '';
      position: absolute;
      border: solid transparent;
      border-width: 8px 4px;
      border-bottom-color: #fff;
      -webkit-transform: translateY(-100%);
          -ms-transform: translateY(-100%);
              transform: translateY(-100%); }
    .elementor-template-library-template-local .elementor-template-library-template-more > div {
      margin: 10px 0;
      font-size: 11px; }
  .elementor-template-library-template-local .elementor-template-library-template-more-toggle {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    text-align: left; }
    .elementor-template-library-template-local .elementor-template-library-template-more-toggle i {
      font-size: 16px; }

#elementor-template-library-preview {
  height: 100%;
  overflow: hidden; }
  #elementor-template-library-preview iframe {
    height: 150%;
    -webkit-transform: scale(0.666) translateX(25%) translateY(-25%);
        -ms-transform: scale(0.666) translateX(25%) translateY(-25%);
            transform: scale(0.666) translateX(25%) translateY(-25%); }
    @media (max-width: 1439px) {
      #elementor-template-library-preview iframe {
        width: 1440px; } }
    @media (min-width: 1440px) {
      #elementor-template-library-preview iframe {
        width: 1710px; } }

.elementor-template-library-blank-icon {
  font-size: 65px;
  margin-top: 45px;
  color: #c2cbd2;
  line-height: 1; }
  .elementor-template-library-blank-icon img {
    width: 70px; }
  .elementor-template-library-blank-icon .elementor-template-library-no-results {
    width: 200px; }

.elementor-template-library-blank-title {
  font-size: 30px;
  margin-top: 40px; }
  @media (max-width: 1439px) {
    .elementor-template-library-blank-title {
      font-size: 25px; } }

.elementor-template-library-blank-message {
  font-size: 18px;
  color: #a4afb7;
  margin-top: 15px;
  font-weight: 300; }
  @media (max-width: 1439px) {
    .elementor-template-library-blank-message {
      font-size: 16px;
      margin-top: 10px; } }

#elementor-template-library-save-template-form {
  margin-top: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  #elementor-template-library-save-template-form > * {
    height: 55px;
    font-size: 16px; }

#elementor-template-library-save-template-name {
  width: 500px;
  background-color: #fff;
  font-weight: 300;
  color: #a4afb7;
  padding-right: 25px;
  -webkit-border-radius: 0 3px 3px 0;
          border-radius: 0 3px 3px 0;
  border: none; }

#elementor-template-library-save-template-submit {
  width: 150px;
  -webkit-border-radius: 3px 0 0 3px;
          border-radius: 3px 0 0 3px; }
  #elementor-template-library-save-template-submit:hover {
    -webkit-box-shadow: none;
            box-shadow: none; }

#elementor-template-library-import-form {
  width: 95%;
  background-color: rgba(255, 255, 255, 0.5);
  padding: 60px;
  border: 2px dashed #d5dadf;
  margin: 35px auto;
  -webkit-transition: background-color 0.5s;
  -o-transition: background-color 0.5s;
  transition: background-color 0.5s; }
  #elementor-template-library-import-form:hover {
    background-color: rgba(255, 255, 255, 0.9); }
  #elementor-template-library-import-form-or {
    margin-top: 15px;
    font-size: 18px; }
  #elementor-template-library-import-form-label {
    margin-top: 20px;
    padding: 15px 35px;
    display: inline-block; }
  #elementor-template-library-import-form-input {
    display: none; }
  #elementor-template-library-import-form.elementor-drag-over {
    border: 3px dashed #71d7f7; }

#elementor-template-library-import .elementor-template-library-blank-icon {
  margin-top: 0; }

#elementor-template-library-import .elementor-template-library-blank-message {
  margin-top: 20px; }

.e-route-library-connect #elementor-template-library-modal .dialog-message {
  max-height: 95vh;
  padding: 100px 0 0;
  min-height: 550px; }

#elementor-template-library-connect-logo {
  font-size: 20px; }

#elementor-template-library-connect__button {
  display: inline-block;
  position: relative;
  z-index: 1;
  margin-top: 25px;
  padding: 12px 24px;
  font-size: 14px; }

#elementor-template-library-connect__background-image-left-1 {
  right: 22.4%;
  bottom: -29%;
  -webkit-animation: 1.5s fadeIn, 1.5s slideDown, 3.5s mover 1.5s infinite alternate;
          animation: 1.5s fadeIn, 1.5s slideDown, 3.5s mover 1.5s infinite alternate; }

#elementor-template-library-connect__background-image-left-2 {
  right: 46.25%;
  bottom: -15.5%;
  -webkit-animation: 3s fadeIn, 3s slideDown, 2s mover 3s infinite alternate;
          animation: 3s fadeIn, 3s slideDown, 2s mover 3s infinite alternate; }

#elementor-template-library-connect__background-image-right-1 {
  left: 37%;
  bottom: -41%;
  -webkit-animation: 2.5s fadeIn, 2.5s slideDown, 2s mover 2.5s infinite alternate;
          animation: 2.5s fadeIn, 2.5s slideDown, 2s mover 2.5s infinite alternate; }

#elementor-template-library-connect__background-image-right-2 {
  left: 48%;
  bottom: -12.5%;
  -webkit-animation: 1.5s fadeIn, 1.5s slideDown, 1.5s mover 1.5s infinite alternate;
          animation: 1.5s fadeIn, 1.5s slideDown, 1.5s mover 1.5s infinite alternate; }

.elementor-template-library-connect__background-image {
  position: absolute; }

.elementor-template-library-blank-footer {
  position: absolute;
  bottom: 70px;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  color: #a4afb7;
  font-style: italic; }
  @media (max-height: 700px) {
    .elementor-template-library-blank-footer {
      display: none; } }

#elementor-template-library-footer-banner {
  padding-bottom: 45px; }
  #elementor-template-library-footer-banner i {
    color: #c2cbd2;
    font-size: 56px;
    margin-top: 40px; }
  #elementor-template-library-footer-banner .elementor-nerd-box-icon {
    margin-top: 70px; }
  #elementor-template-library-footer-banner .elementor-excerpt {
    color: #a4afb7;
    font-size: 15px;
    font-weight: 500;
    margin-top: 20px; }

#elementor-template-library-templates-empty {
  width: 100%;
  margin-top: 40px; }

#elementor-template-library-error-dialog .dialog-message {
  text-align: start; }

#elementor-template-library-error-info {
  margin-top: 10px; }

@media (max-width: 1439px) {
  .elementor-template-library-local-column-1 {
    width: 33%; }
  .elementor-template-library-local-column-2 {
    width: 10%; }
  .elementor-template-library-local-column-3 {
    width: 15%; }
  .elementor-template-library-local-column-4 {
    width: 15%; }
  .elementor-template-library-local-column-5 {
    width: 27%; } }

@media (min-width: 1440px) {
  .elementor-template-library-local-column-1 {
    width: 25%; }
  .elementor-template-library-local-column-2 {
    width: 17%; }
  .elementor-template-library-local-column-3 {
    width: 17%; }
  .elementor-template-library-local-column-4 {
    width: 17%; }
  .elementor-template-library-local-column-5 {
    width: 24%; } }

@media (max-width: 1024px) {
  .elementor-template-library-local-column-3 {
    display: none; }
  .elementor-template-library-local-column-5 {
    width: 41%; } }

.elementor-tags-list {
  display: none;
  position: absolute;
  width: 260px;
  max-height: 300px;
  overflow: auto;
  padding-bottom: 5px;
  background-color: #fff;
  border: 1px solid #a4afb7;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  z-index: 10000; }
  .elementor-tags-list__group-title {
    color: #495157;
    font-weight: bold;
    font-size: 12px;
    padding: 10px 15px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .elementor-tags-list__group-title .eicon-info-circle {
      padding-left: 5px;
      color: #71d7f7;
      font-size: 14px; }
  .elementor-tags-list__item {
    font-size: 10px;
    padding: 6px 15px;
    cursor: pointer; }
    .elementor-tags-list__item:before {
      content: '>';
      font-size: 8px;
      padding-left: 5px; }
    .elementor-tags-list__item:hover {
      background-color: #e6e9ec; }
  .elementor-tags-list__teaser {
    border-top: 2px solid #d5dadf;
    padding-top: 4px;
    margin-top: 4px; }
    .elementor-tags-list__teaser-title {
      color: #6d7882; }
    .elementor-tags-list__teaser-text {
      padding: 2px 15px 8px;
      line-height: 1.5;
      font-size: 12px; }
    .elementor-tags-list__teaser-link {
      color: #93003c;
      text-decoration: underline;
      font-style: italic;
      font-weight: bold; }

.elementor-dynamic-cover {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 27px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }
  .elementor-dynamic-cover__title {
    padding: 0 8px;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    white-space: nowrap;
    -o-text-overflow: ellipsis;
       text-overflow: ellipsis;
    overflow: hidden; }
  .elementor-dynamic-cover__settings, .elementor-dynamic-cover__remove {
    color: #c2cbd2;
    cursor: pointer;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s; }
    .elementor-dynamic-cover__settings:hover, .elementor-dynamic-cover__remove:hover {
      color: #a4afb7; }
  .elementor-control-type-wysiwyg .elementor-dynamic-cover {
    margin-top: 10px; }

.elementor-tag-settings-popup {
  position: absolute;
  width: 260px;
  background-color: #e6e9ec;
  -webkit-box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.3);
          box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.3);
  z-index: 1; }
  .elementor-tag-settings-popup:before {
    content: '';
    position: absolute;
    top: -20px;
    right: 5px;
    border: 10px solid transparent;
    border-bottom-color: #fff; }
  .elementor-tag-settings-popup .elementor-control-type-section:first-child {
    margin: 0; }

.elementor-tag-controls-stack-empty {
  background-color: #fff;
  padding: 10px;
  font-size: 13px;
  text-align: center; }

.elementor-control-dynamic-switcher {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  height: 27px;
  cursor: pointer;
  border: 1px solid #d5dadf;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  background: #fff; }
  .elementor-control-dynamic-switcher.e-control-tool {
    height: 20px;
    border: 0; }
  .elementor-control-dynamic-switcher-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .elementor-control-dynamic-switcher .eicon-database {
    font-size: 12px; }

.elementor-control-dynamic-value .elementor-control-tag-area,
.elementor-control-dynamic-value .elementor-control-dynamic-switcher,
.elementor-control-dynamic-value .e-global__popover-toggle {
  display: none; }

#elementor-toast {
  position: absolute;
  width: 280px;
  padding: 20px;
  -webkit-border-radius: 5px;
          border-radius: 5px;
  color: #d5dadf;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 10000; }
  #elementor-toast .dialog-message {
    font-size: 13px; }
  #elementor-toast .dialog-buttons-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    margin-top: 15px; }
  #elementor-toast .dialog-button {
    color: #fcb92c;
    margin: 0 5px;
    text-transform: uppercase;
    cursor: pointer; }
    #elementor-toast .dialog-button:last-child {
      margin-left: 0; }

.elementor-context-menu {
  position: absolute;
  width: 200px;
  background-color: #fff;
  border: 1px solid #e6e9ec;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  -webkit-box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.09);
          box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.09);
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  z-index: 101; }
  .elementor-context-menu-list__group {
    padding: 5px 0; }
    .elementor-context-menu-list__group:not(:last-child) {
      border-bottom: 1px solid #e6e9ec; }
  .elementor-context-menu-list__item {
    padding: 5px 10px;
    padding-left: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    cursor: pointer; }
    .elementor-context-menu-list__item--disabled {
      cursor: default;
      color: #d5dadf; }
    .elementor-context-menu-list__item:not(.elementor-context-menu-list__item--disabled):hover {
      background-color: #71d7f7; }
      .elementor-context-menu-list__item:not(.elementor-context-menu-list__item--disabled):hover > * {
        color: #fff; }
    .elementor-context-menu-list__item__icon {
      width: 20px;
      color: #c2cbd2; }
    .elementor-context-menu-list__item__title {
      -webkit-box-flex: 1;
          -ms-flex-positive: 1;
              flex-grow: 1;
      white-space: nowrap;
      -o-text-overflow: ellipsis;
         text-overflow: ellipsis;
      overflow: hidden; }
    .elementor-context-menu-list__item__shortcut {
      color: #d5dadf; }
    .elementor-context-menu-list__item.elementor-context-menu-list__item-delete:not(.elementor-context-menu-list__item--disabled):hover {
      background-color: #d72b3f; }
  .elementor-context-menu .eicon-pro-icon {
    color: #fcb92c; }

#elementor-hotkeys {
  text-align: right; }
  #elementor-hotkeys__content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    overflow: hidden;
    margin-bottom: 30px; }
    @media (max-width: 1024px) {
      #elementor-hotkeys__content {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column; } }
  #elementor-hotkeys__actions .elementor-hotkeys__list {
    -webkit-border-radius: 0 3px 3px 0;
            border-radius: 0 3px 3px 0; }
    @media (max-width: 1024px) {
      #elementor-hotkeys__actions .elementor-hotkeys__list {
        -webkit-border-radius: 3px;
                border-radius: 3px; } }
  @media (min-width: 1025px) {
    #elementor-hotkeys__actions .elementor-hotkeys__header,
    #elementor-hotkeys__actions .elementor-hotkeys__list {
      padding-left: 25px; } }
  @media (min-width: 1440px) {
    #elementor-hotkeys__actions .elementor-hotkeys__header,
    #elementor-hotkeys__actions .elementor-hotkeys__list {
      padding-left: 50px; } }
  #elementor-hotkeys__navigation .elementor-hotkeys__list {
    -webkit-border-radius: 3px 0 0 3px;
            border-radius: 3px 0 0 3px; }
    @media (max-width: 1024px) {
      #elementor-hotkeys__navigation .elementor-hotkeys__list {
        -webkit-border-radius: 3px;
                border-radius: 3px; } }
  @media (min-width: 1025px) {
    #elementor-hotkeys__navigation .elementor-hotkeys__header {
      padding-right: 25px; } }
  @media (min-width: 1440px) {
    #elementor-hotkeys__navigation .elementor-hotkeys__header {
      padding-right: 50px; } }
  @media (min-width: 1025px) {
    #elementor-hotkeys__navigation .elementor-hotkeys__list {
      padding-right: 15px; } }
  @media (min-width: 1440px) {
    #elementor-hotkeys__navigation .elementor-hotkeys__list {
      padding-right: 40px; } }

.elementor-hotkeys__col {
  width: 50%; }
  @media (max-width: 1024px) {
    .elementor-hotkeys__col {
      width: 100%; } }

.elementor-hotkeys__header, .elementor-hotkeys__list {
  width: 100%; }

.elementor-hotkeys__header {
  padding: 10px 30px;
  font-weight: 500; }
  @media (max-width: 479px) {
    .elementor-hotkeys__header {
      padding-right: 10px;
      padding-left: 10px; } }

.elementor-hotkeys__list {
  background-color: #ffffff;
  height: calc(100% - 42px);
  padding: 10px 20px; }
  @media (max-width: 479px) {
    .elementor-hotkeys__list {
      padding: 0; } }
  @media (max-width: 1024px) {
    .elementor-hotkeys__list {
      margin-bottom: 30px; } }
  @media (max-width: 1024px) {
    .elementor-hotkeys__list {
      height: auto; } }

.elementor-hotkeys__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 20px 10px;
  border-bottom: 1px solid #eceeef; }
  .elementor-hotkeys__item:last-child {
    margin-bottom: 30px; }
    @media (max-width: 479px) {
      .elementor-hotkeys__item:last-child {
        margin-bottom: 0; } }
  .elementor-hotkeys__item--label {
    font-size: 13px;
    font-weight: 400;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }
  .elementor-hotkeys__item--shortcut {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
    .elementor-hotkeys__item--shortcut span {
      position: relative;
      background-color: #eceeef;
      padding: 5px 12px;
      margin-right: 27px;
      -webkit-border-radius: 3px;
              border-radius: 3px; }
      @media (max-width: 479px) {
        .elementor-hotkeys__item--shortcut span {
          padding: 4px 9px;
          margin-right: 23px; } }
      .elementor-hotkeys__item--shortcut span:after {
        content: '+';
        position: absolute;
        right: -18px;
        width: 9px;
        text-align: center; }
        @media (max-width: 479px) {
          .elementor-hotkeys__item--shortcut span:after {
            right: -16px; } }
      .elementor-hotkeys__item--shortcut span:last-child {
        margin-right: 0; }
        .elementor-hotkeys__item--shortcut span:last-child:after {
          display: none; }

.ui-resizable-n {
  top: -5px; }

.ui-resizable-e {
  right: -5px; }

.ui-resizable-s {
  bottom: -5px; }

.ui-resizable-w {
  left: -5px; }

.ui-resizable-ne {
  top: -5px;
  right: -5px; }

.ui-resizable-nw {
  top: -5px;
  left: -5px; }

.ui-resizable-se {
  bottom: -5px;
  right: -5px; }

.ui-resizable-sw {
  bottom: -5px;
  left: -5px; }

.ui-resizable-n, .ui-resizable-s {
  left: 0;
  height: 10px;
  width: 100%;
  cursor: ns-resize; }

.ui-resizable-e, .ui-resizable-w {
  top: 0;
  height: 100%;
  width: 10px;
  cursor: ew-resize; }

.ui-resizable-ne, .ui-resizable-nw, .ui-resizable-se, .ui-resizable-sw {
  height: 15px;
  width: 15px; }

.ui-resizable-nw, .ui-resizable-se {
  cursor: nwse-resize; }

.ui-resizable-ne, .ui-resizable-sw {
  cursor: nesw-resize; }

.ui-resizable-handle {
  position: absolute; }

.ui-resizable-resizing {
  pointer-events: none; }

body {
  --e-editor-navigator-width: 240px; }

#elementor-navigator {
  position: fixed;
  top: 100px;
  width: var(--e-editor-navigator-width);
  height: 50vh;
  left: 30px;
  background-color: #fff;
  -webkit-box-shadow: 0 2px 20px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 2px 20px 0 rgba(0, 0, 0, 0.1);
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  overflow: hidden;
  z-index: 100;
  display: none; }
  body.elementor-navigator-docked #elementor-navigator {
    top: 0;
    left: 0;
    height: 100%; }
  body:not(.elementor-navigator-docked) #elementor-navigator {
    -webkit-border-radius: 5px;
            border-radius: 5px; }
  #elementor-navigator__inner {
    height: 100%;
    background-color: #e6e9ec; }
  #elementor-navigator__header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 12px 10px;
    background-color: #fff;
    border-bottom: 1px solid #e6e9ec;
    cursor: move; }
  #elementor-navigator__close, #elementor-navigator__toggle-all {
    -webkit-transition: color .5s;
    -o-transition: color .5s;
    transition: color .5s;
    cursor: pointer; }
    #elementor-navigator__close:not(:hover), #elementor-navigator__toggle-all:not(:hover) {
      color: #a4afb7; }
  #elementor-navigator__toggle-all {
    font-size: 13px; }
  #elementor-navigator__close {
    font-size: 11px; }
  #elementor-navigator__elements {
    height: calc(100% - 49px);
    overflow: auto;
    position: relative; }
    .elementor-navigator-docked #elementor-navigator__elements {
      height: calc(100% - 35px); }
    #elementor-navigator__elements .elementor-nerd-box {
      padding: 25px; }
  #elementor-navigator__footer {
    position: absolute;
    width: 100%;
    left: 0;
    bottom: 0;
    text-align: center;
    background-color: #fff;
    border-top: 1px solid #e6e9ec;
    color: #a4afb7; }
    .elementor-navigator-docked #elementor-navigator__footer {
      display: none; }

.elementor-navigator__item {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 30px;
  font-size: 11px;
  border-bottom: 1px solid #e6e9ec;
  cursor: pointer;
  -webkit-transition: padding .5s linear;
  -o-transition: padding .5s linear;
  transition: padding .5s linear;
  overflow: hidden; }
  .elementor-navigator__item:not(.elementor-active) .elementor-navigator__element__list-toggle i {
    -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
            transform: rotate(90deg); }
  .elementor-navigator__item > * {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .elementor-navigator__item + .elementor-navigator__elements {
    display: none; }

.elementor-navigator__elements .elementor-empty-view {
  padding: 10px;
  border-bottom: 1px solid #e6e9ec; }
  .elementor-navigator__elements .elementor-empty-view__title {
    margin-right: 23px;
    color: #c2cbd2;
    font-size: 10px;
    font-style: italic; }

.elementor-navigator__elements .ui-sortable-helper {
  background-color: #fff;
  -webkit-box-shadow: 1px 2px 5px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 1px 2px 5px 0 rgba(0, 0, 0, 0.1);
  -webkit-transform: rotate(4deg);
      -ms-transform: rotate(4deg);
          transform: rotate(4deg);
  border: 1px solid #e6e9ec;
  pointer-events: none; }

.elementor-navigator__elements .ui-sortable-placeholder {
  background-color: #f1f3f5; }

.elementor-navigator__element.elementor-dragging-on-child > .elementor-navigator__elements > .elementor-empty-view {
  border-top: 2px solid #71d7f7; }
  .elementor-navigator__element.elementor-dragging-on-child > .elementor-navigator__elements > .elementor-empty-view .elementor-empty-view__title {
    display: none; }
  .elementor-navigator__element.elementor-dragging-on-child > .elementor-navigator__elements > .elementor-empty-view + .ui-sortable-placeholder {
    display: none; }

.elementor-navigator__element:not(.elementor-navigator__element--has-children) .elementor-navigator__element__list-toggle {
  visibility: hidden; }

.elementor-navigator__element:not(.elementor-navigator__element--hidden) > .elementor-navigator__item .elementor-navigator__element__toggle {
  color: #71d7f7; }

.elementor-navigator__element:not(.elementor-navigator__element--hidden) > .elementor-navigator__item:not(:hover) .elementor-navigator__element__toggle {
  display: none; }

.elementor-navigator__element:not(.elementor-navigator__element--hidden) > .elementor-navigator__item.elementor-editing {
  background-color: #71d7f7; }
  .elementor-navigator__element:not(.elementor-navigator__element--hidden) > .elementor-navigator__item.elementor-editing > * {
    color: #fff; }

.elementor-navigator__element__list-toggle {
  margin-left: 7px;
  -webkit-transition: -webkit-transform .3s;
  transition: -webkit-transform .3s;
  -o-transition: transform .3s;
  transition: transform .3s;
  transition: transform .3s, -webkit-transform .3s;
  color: #a4afb7; }

.elementor-navigator__element__element-type {
  margin-left: 8px; }

.elementor-navigator__element__title {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  overflow: hidden; }
  .elementor-navigator__element__title__text {
    white-space: nowrap;
    -webkit-user-select: text; }
    .elementor-navigator__element__title__text[contenteditable="true"] {
      outline: none;
      color: #6d7882;
      background-color: #fff;
      padding: 2px 3px;
      -webkit-box-shadow: 0 0 4px rgba(0, 0, 0, 0.2);
              box-shadow: 0 0 4px rgba(0, 0, 0, 0.2); }
    .elementor-navigator__element__title__text:not([contenteditable="true"]) {
      white-space: nowrap;
      -o-text-overflow: ellipsis;
         text-overflow: ellipsis;
      overflow: hidden; }

.elementor-navigator__element__toggle {
  position: absolute;
  left: 15px;
  height: 100%;
  z-index: 0;
  font-size: 13px; }

.elementor-navigator__element__indicators {
  position: relative;
  -webkit-transition: -webkit-transform .5s;
  transition: -webkit-transform .5s;
  -o-transition: transform .5s;
  transition: transform .5s;
  transition: transform .5s, -webkit-transform .5s;
  padding-right: 5px;
  z-index: 91; }
  .elementor-navigator__element__indicators:not(:hover) {
    -webkit-transform: translateX(calc(-100% + 8px));
        -ms-transform: translateX(calc(-100% + 8px));
            transform: translateX(calc(-100% + 8px)); }

.elementor-navigator__element__indicator {
  height: 100%;
  width: 31px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #6d7882;
  background-color: #fff;
  border-right: 1px solid #e6e9ec; }
  .elementor-navigator__element__indicator:first-child {
    border-right: 3px solid #71d7f7; }
    .elementor-editing .elementor-navigator__element__indicator:first-child {
      border-color: #41c9f4; }
  .elementor-navigator__element__indicator:hover {
    color: #495157; }

.elementor-navigator__element--hidden .elementor-navigator__element__title,
.elementor-navigator__element--hidden .elementor-navigator__element__toggle {
  opacity: .5; }

.elementor-navigator__element-column {
  background-color: #fafbfb; }
  .elementor-navigator__element-column > .elementor-navigator__item .elementor-navigator__element__element-type {
    color: #a4afb7; }

.elementor-navigator__element-section {
  background-color: #fff; }

#elementor-notice-bar {
  position: absolute;
  width: 100%;
  bottom: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 40px;
  color: #fff;
  background-color: #6d7882;
  padding: 0 50px; }
  #elementor-notice-bar__message {
    padding-right: 15px;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }
    #elementor-notice-bar__message a {
      text-decoration: underline; }
  #elementor-notice-bar__action {
    text-transform: uppercase; }
  #elementor-notice-bar__close {
    margin: 0 20px;
    cursor: pointer; }
  #elementor-notice-bar i {
    font-size: 16px;
    opacity: .9; }
  #elementor-notice-bar a {
    color: #fff; }
  #elementor-notice-bar a,
  #elementor-notice-bar i {
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s; }
    #elementor-notice-bar a:hover,
    #elementor-notice-bar i:hover {
      color: #D4D4D4; }

body:not(.elementor-device-desktop) #elementor-notice-bar {
  display: none; }

#elementor-fatal-error-dialog.elementor-preview-loading-error .dialog-header {
  color: #495157; }

#elementor-fatal-error-dialog.elementor-preview-loading-error .dialog-message a {
  color: #6d7882;
  text-decoration: underline;
  font-style: italic; }

#elementor-preview-debug-link-text {
  display: inline-block; }

#elementor-icons-manager-modal .dialog-message {
  padding: 0;
  height: 700px; }

#elementor-icons-manager-modal .dialog-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

#elementor-icons-manager-modal .dialog-buttons-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

#elementor-icons-manager__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

@media (max-width: 479px) {
  #elementor-icons-manager__sidebar {
    display: none; } }

#elementor-icons-manager__tab-links {
  margin-top: 30px; }

#elementor-icons-manager__upload {
  margin: 20px 45px;
  padding-top: 35px;
  border-top: 1px solid #e6e9ec;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  @media (max-width: 1439px) {
    #elementor-icons-manager__upload {
      margin: 20px 25px; } }
  #elementor-icons-manager__upload__title {
    color: #a4afb7;
    font-size: 11px;
    text-transform: uppercase; }

#elementor-icons-manager__main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 30px 80px 0; }
  @media (max-width: 1439px) {
    #elementor-icons-manager__main {
      padding: 30px 50px 0; } }
  @media (max-width: 479px) {
    #elementor-icons-manager__main {
      width: 100%; } }

#elementor-icons-manager__search {
  position: relative; }
  #elementor-icons-manager__search input {
    padding: 8px 15px;
    background-color: #fff;
    border: none; }
    #elementor-icons-manager__search input::-webkit-input-placeholder {
      font-style: italic; }
    #elementor-icons-manager__search input::-moz-placeholder {
      font-style: italic; }
    #elementor-icons-manager__search input::-ms-input-placeholder {
      font-style: italic; }
    #elementor-icons-manager__search input::placeholder {
      font-style: italic; }
  #elementor-icons-manager__search i {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    left: 15px; }

#elementor-icons-manager__tab__wrapper {
  overflow: auto;
  margin: 25px -15px 0;
  padding: 0 15px 15px; }

#elementor-icons-manager__tab__title {
  color: #556068;
  font-size: 16px;
  font-weight: 500;
  text-align: right; }
  @media (max-width: 479px) {
    #elementor-icons-manager__tab__title {
      display: none; } }

#elementor-icons-manager__tab__content {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  grid-gap: 20px;
  margin: 20px 0; }
  @media (max-width: 1439px) {
    #elementor-icons-manager__tab__content {
      grid-template-columns: repeat(6, 1fr); } }
  @media (max-width: 1024px) {
    #elementor-icons-manager__tab__content {
      grid-template-columns: repeat(5, 1fr); } }
  @media (max-width: 767px) {
    #elementor-icons-manager__tab__content {
      grid-template-columns: repeat(4, 1fr); } }
  @media (max-width: 479px) {
    #elementor-icons-manager__tab__content {
      grid-template-columns: repeat(3, 1fr); } }

#elementor-icons-manager__promotion {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding-top: 70px; }
  #elementor-icons-manager__promotion__icon {
    font-size: 60px;
    color: #c2cbd2; }
  #elementor-icons-manager__promotion__text {
    width: 300px;
    font-size: 16px;
    padding-top: 25px; }
  #elementor-icons-manager__promotion__link {
    margin-top: 20px; }

.elementor-icons-manager__tab-link {
  padding: 15px 45px 15px 0;
  font-size: 14px;
  color: #6d7882;
  text-align: right;
  cursor: pointer;
  position: relative; }
  .elementor-icons-manager__tab-link i {
    font-size: 20px;
    padding-left: 15px;
    color: #a4afb7; }
  @media (max-width: 1439px) {
    .elementor-icons-manager__tab-link {
      padding: 15px 25px 15px 15px;
      font-size: 11px; }
      .elementor-icons-manager__tab-link i {
        font-size: 15px; } }
  @media (max-width: 1024px) {
    .elementor-icons-manager__tab-link i {
      display: none; } }
  .elementor-icons-manager__tab-link.elementor-active {
    background-color: #fff;
    -webkit-box-shadow: 0 6px 20px 0 rgba(0, 0, 0, 0.1);
            box-shadow: 0 6px 20px 0 rgba(0, 0, 0, 0.1); }
    .elementor-icons-manager__tab-link.elementor-active:after {
      content: '';
      position: absolute;
      height: 100%;
      width: 5px;
      top: 0;
      right: 0;
      background-color: #71d7f7; }
    .elementor-icons-manager__tab-link.elementor-active i {
      color: #71d7f7; }

.elementor-icons-manager__tab__item {
  position: relative;
  height: 0;
  padding-bottom: 100%;
  background-color: #fff;
  -webkit-box-shadow: 0 1px 12px rgba(0, 0, 0, 0.05);
          box-shadow: 0 1px 12px rgba(0, 0, 0, 0.05);
  -webkit-border-radius: 3px;
          border-radius: 3px;
  cursor: pointer;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  overflow: hidden; }
  .elementor-icons-manager__tab__item:hover {
    -webkit-box-shadow: 0 1px 14px rgba(0, 0, 0, 0.16);
            box-shadow: 0 1px 14px rgba(0, 0, 0, 0.16); }
  .elementor-icons-manager__tab__item.elementor-selected {
    -webkit-box-shadow: 0 1px 12px rgba(0, 0, 0, 0.05), 0 0 0 3px #71d7f7;
            box-shadow: 0 1px 12px rgba(0, 0, 0, 0.05), 0 0 0 3px #71d7f7; }
  .elementor-icons-manager__tab__item__content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    padding: 1px; }
  .elementor-icons-manager__tab__item__icon {
    font-size: 25px;
    color: #6d7882; }
  .elementor-icons-manager__tab__item__name {
    color: #c2cbd2;
    font-size: 11px;
    padding: 13px 20px 0;
    max-width: 100%;
    white-space: nowrap;
    -o-text-overflow: ellipsis;
       text-overflow: ellipsis;
    overflow: hidden; }

#elementor-enable-fa5-dialog a {
  font-style: italic;
  text-decoration: underline; }

#elementor-enable-fa5-dialog .dialog-confirm-ok {
  color: #39b54a; }

.elementor-color-picker__header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: bold;
  padding: 10px;
  -webkit-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); }

.e-color-picker__tools {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.e-control-color--no-value .pcr-button {
  background-image: -webkit-linear-gradient(315deg, transparent 46%, #ff3030 50%, transparent 54%);
  background-image: -o-linear-gradient(315deg, transparent 46%, #ff3030 50%, transparent 54%);
  background-image: linear-gradient(135deg, transparent 46%, #ff3030 50%, transparent 54%);
  -webkit-background-size: cover;
          background-size: cover;
  background-color: transparent;
  border: 1px solid #d5dadf; }

.pcr-app[data-theme=monolith] {
  padding: 0; }

.pcr-result {
  border-right-width: 1px;
  -webkit-border-radius: 3px;
          border-radius: 3px; }

.pcr-selection, .pcr-interaction {
  padding: 0 20px; }

.pcr-interaction {
  padding-bottom: 20px; }

.pcr .elementor-control-dynamic-switcher {
  height: 20px;
  border: 0; }

.select2-container {
  width: 100% !important;
  outline: none;
  z-index: 9999;
  font-size: 12px; }
  .select2-container .e-select2-placeholder {
    color: #a4afb7; }
  .select2-container.select2-container--default .select2-selection--single {
    height: 27px; }
    .select2-container.select2-container--default .select2-selection--single .select2-selection__rendered {
      color: #6d7882;
      line-height: 27px; }
  .select2-container.select2-container--default .select2-selection--multiple {
    min-height: 27px;
    line-height: 0; }
    .select2-container.select2-container--default .select2-selection--multiple .select2-selection__clear {
      display: none; }
    .select2-container.select2-container--default .select2-selection--multiple .select2-selection__choice {
      background-color: #f1f3f5;
      line-height: 1.2;
      font-size: 10px;
      border: none;
      -webkit-border-radius: 0;
              border-radius: 0;
      padding: 2px 3px; }
      .select2-container.select2-container--default .select2-selection--multiple .select2-selection__choice.select2-selection__e-plus-button {
        cursor: pointer;
        width: 16.67px;
        text-indent: -9999px;
        position: relative; }
        .select2-container.select2-container--default .select2-selection--multiple .select2-selection__choice.select2-selection__e-plus-button:after {
          content: '\e815';
          font-family: "eicons";
          color: #a4afb7;
          text-indent: 0;
          position: absolute;
          left: 0;
          top: 0;
          width: 100%;
          height: 100%;
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-pack: center;
              -ms-flex-pack: center;
                  justify-content: center;
          -webkit-box-align: center;
              -ms-flex-align: center;
                  align-items: center; }
    .select2-container.select2-container--default .select2-selection--multiple .select2-selection__rendered {
      padding-bottom: 5px; }
    .select2-container.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
      color: #a4afb7;
      margin-left: 3px; }
  .select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--single,
  .select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--multiple {
    border-color: #d5dadf; }
  .select2-container.select2-container--open .select2-selection--single,
  .select2-container.select2-container--open .select2-selection--multiple, .select2-container.select2-container--focus .select2-selection--single,
  .select2-container.select2-container--focus .select2-selection--multiple {
    border-color: #a4afb7; }

.select2-selection {
  outline: none; }
  .select2-selection--single {
    height: 27px; }

.select2-selection__arrow {
  height: 27px;
  top: 0; }

.select2-results__option[aria-selected=true] {
  color: #495157; }
  .select2-results__option[aria-selected=true]:not(.select2-results__option--highlighted) {
    background-color: initial; }

.select2-dropdown {
  border-color: #a4afb7; }
  .select2-dropdown .select2-search__field {
    outline: none; }
/*# sourceMappingURL=editor-rtl.css.map */assets/css/admin-top-bar-rtl.min.css000064400000010721151327220410013361 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
#e-dashboard-widget-admin-top-bar{position:absolute;opacity:0;pointer-events:none}#e-admin-top-bar-root{left:0;background:#fff;-webkit-box-shadow:0 4px 6px rgba(0,0,0,.0394871);box-shadow:0 4px 6px rgba(0,0,0,.0394871);display:none;position:absolute;top:0;width:calc(100% - 160px);z-index:1}#e-admin-top-bar-root .e-admin-top-bar{display:-webkit-box;display:-ms-flexbox;display:flex;height:50px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding:0 16px}#e-admin-top-bar-root .page-title-action{background:#f7f7f7;border:1px solid #0275d8;-webkit-border-radius:3px;border-radius:3px;-webkit-box-sizing:border-box;box-sizing:border-box;color:#0275d8;cursor:pointer;display:inline-block;line-height:30px;margin:0 4px;min-height:30px;padding:0 10px;text-decoration:none}#e-admin-top-bar-root .page-title-action:hover{background:#eceeef;border-color:#1b607f;color:#1b607f}#e-admin-top-bar-root .e-admin-top-bar__heading{-webkit-margin-end:40px;margin-inline-end:40px}#e-admin-top-bar-root .e-admin-top-bar__heading,#e-admin-top-bar-root .e-admin-top-bar__main-area{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}#e-admin-top-bar-root .e-admin-top-bar__main-area button{margin:0 4px}#e-admin-top-bar-root .e-admin-top-bar__secondary-area{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}#e-admin-top-bar-root .e-admin-top-bar__heading-logo{width:30px;background:#93003c;-webkit-border-radius:15px;border-radius:15px;color:#fff;display:inline-block;font-size:.875rem;height:1.875rem;line-height:1.875rem;text-align:center;width:1.875rem}#e-admin-top-bar-root .e-admin-top-bar__heading-title{color:#495157;font-size:15px;font-weight:700;font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;padding:0 8px;line-height:normal;text-transform:uppercase}#e-admin-top-bar-root.e-admin-top-bar--active{display:block}#e-admin-top-bar-root.e-admin-top-bar--active~#wpbody #wpbody-content{margin-top:50px}#e-admin-top-bar-root.e-admin-top-bar--active~#wpbody .wrap{clear:both;padding-top:10px}#e-admin-top-bar-root.e-admin-top-bar--active~#wpbody .wrap h1{display:none}#e-admin-top-bar-root:not(.e-admin-top-bar--active)~#wpbody .wrap .page-title-action,#e-admin-top-bar-root:not(.e-admin-top-bar--active)~#wpbody .wrap h1{display:inline-block}#e-admin-top-bar-root .e-admin-top-bar__bar-button{-webkit-box-align:center;-ms-flex-align:center;align-items:center;cursor:pointer;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;margin:0 10px;text-decoration:none;color:#6d7882}#e-admin-top-bar-root .e-admin-top-bar__bar-button .e-admin-top-bar__bar-button-title{color:#6d7882}#e-admin-top-bar-root .e-admin-top-bar__bar-button .e-admin-top-bar__bar-button-icon{margin:0 4px}#e-admin-top-bar-root .e-admin-top-bar__bar-button:hover .e-admin-top-bar__bar-button-icon,#e-admin-top-bar-root .e-admin-top-bar__bar-button:hover .e-admin-top-bar__bar-button-title{color:#93003c}#e-admin-top-bar-root .e-admin-top-bar__bar-button-title{font-size:13px;font-weight:500;font-family:Roboto;margin:0 4px;line-height:normal}#e-admin-top-bar-root~#wpbody .wrap .page-title-action,#e-admin-top-bar-root~#wpbody .wrap h1{display:none}@media screen and (max-width:960px){#e-admin-top-bar-root{width:calc(100% - 36px)}}@media screen and (max-width:782px){#e-admin-top-bar-root{width:100%}}@media screen and (max-width:600px){#e-admin-top-bar-root{top:46px}}@media (max-width:768px){#e-admin-top-bar-root{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}#e-admin-top-bar-root .e-admin-top-bar__main-area-buttons{position:absolute;top:calc(100% + 10px)}#e-admin-top-bar-root .e-admin-top-bar__secondary-area .e-admin-top-bar__secondary-area-buttons,#e-admin-top-bar-root .e-admin-top-bar__secondary-area>.e-admin-top-bar__bar-button .e-admin-top-bar__bar-button-title{display:none}}@media (min-width:768px){#e-admin-top-bar-root .e-admin-top-bar__secondary-area .e-admin-top-bar__secondary-area-buttons{display:-webkit-box;display:-ms-flexbox;display:flex}}assets/css/common.css000064400000036441151327220410010645 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.dialog-widget-content {
  background-color: #fff;
  position: absolute;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  -webkit-box-shadow: 2px 8px 23px 3px rgba(0, 0, 0, 0.2);
          box-shadow: 2px 8px 23px 3px rgba(0, 0, 0, 0.2);
  overflow: hidden; }

.dialog-message {
  font-size: 12px;
  line-height: 1.5;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

.dialog-type-lightbox {
  position: fixed;
  height: 100%;
  width: 100%;
  bottom: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 9999;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none; }
  .dialog-type-lightbox .dialog-widget-content {
    margin: auto;
    width: 375px; }
  .dialog-type-lightbox .dialog-header {
    font-size: 15px;
    color: #495157;
    padding: 30px 0 10px;
    font-weight: 500; }
  .dialog-type-lightbox .dialog-message {
    padding: 0 30px 30px;
    min-height: 50px; }
  .dialog-type-lightbox:not(.elementor-popup-modal) .dialog-header,
  .dialog-type-lightbox:not(.elementor-popup-modal) .dialog-message {
    text-align: center; }
  .dialog-type-lightbox .dialog-buttons-wrapper {
    border-top: 1px solid #e6e9ec;
    text-align: center; }
    .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button {
      font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
      width: 50%;
      border: none;
      background: none;
      color: #6d7882;
      font-size: 15px;
      cursor: pointer;
      padding: 13px 0;
      outline: 0; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button:hover {
        background-color: #f4f6f7; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button.dialog-ok {
        color: #b01b1b; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button.dialog-take_over {
        color: #39b54a; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button:active {
        background-color: rgba(230, 233, 236, 0.5); }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button::-moz-focus-inner {
        border: 0; }

.dialog-close-button {
  cursor: pointer;
  position: absolute;
  margin-top: 15px;
  right: 15px;
  font-size: 15px;
  line-height: 1; }
  .dialog-close-button:not(:hover) {
    opacity: .4; }

.dialog-alert-widget .dialog-buttons-wrapper > button {
  width: 100%; }

.dialog-confirm-widget .dialog-button:first-child {
  border-right: 1px solid #e6e9ec; }

.dialog-prevent-scroll {
  overflow: hidden;
  max-height: 100vh; }

@media (min-width: 1024px) {
  body.admin-bar .dialog-lightbox-widget {
    height: calc(100vh - 32px); } }

@media (max-width: 1024px) {
  body.admin-bar .dialog-type-lightbox {
    position: -webkit-sticky;
    position: sticky;
    height: 100vh; } }

.elementor-aspect-ratio-219 .elementor-fit-aspect-ratio {
  padding-bottom: 42.8571%; }

.elementor-aspect-ratio-169 .elementor-fit-aspect-ratio {
  padding-bottom: 56.25%; }

.elementor-aspect-ratio-43 .elementor-fit-aspect-ratio {
  padding-bottom: 75%; }

.elementor-aspect-ratio-32 .elementor-fit-aspect-ratio {
  padding-bottom: 66.6666%; }

.elementor-aspect-ratio-11 .elementor-fit-aspect-ratio {
  padding-bottom: 100%; }

.elementor-aspect-ratio-916 .elementor-fit-aspect-ratio {
  padding-bottom: 177.8%; }

.elementor-fit-aspect-ratio {
  position: relative;
  height: 0; }
  .elementor-fit-aspect-ratio iframe {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    border: 0;
    background-color: #000; }
  .elementor-fit-aspect-ratio video {
    width: 100%; }

.flatpickr-calendar {
  width: 280px; }
  .flatpickr-calendar .flatpickr-current-month span.cur-month {
    font-weight: 300; }
  .flatpickr-calendar .dayContainer {
    width: 280px;
    min-width: 280px;
    max-width: 280px; }
  .flatpickr-calendar .flatpickr-days {
    width: 280px; }
  .flatpickr-calendar .flatpickr-day {
    max-width: 37px;
    height: 37px;
    line-height: 37px; }

.elementor-templates-modal .dialog-widget-content {
  font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
  background-color: #f1f3f5;
  width: 100%; }
  @media (max-width: 1439px) {
    .elementor-templates-modal .dialog-widget-content {
      max-width: 990px; } }
  @media (min-width: 1440px) {
    .elementor-templates-modal .dialog-widget-content {
      max-width: 1200px; } }

.elementor-templates-modal .dialog-header {
  padding: 0;
  background-color: #fff;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
  position: relative;
  z-index: 1; }

.elementor-templates-modal .dialog-buttons-wrapper {
  background-color: #fff;
  border: none;
  display: none;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  padding: 5px;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
  position: relative; }
  .elementor-templates-modal .dialog-buttons-wrapper .elementor-button {
    height: 40px;
    margin-left: 5px; }
    .elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success {
      padding: 12px 36px;
      color: #fff;
      width: initial;
      font-size: 15px; }
      .elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success:hover {
        background-color: #39b54a; }

.elementor-templates-modal .dialog-message {
  height: 750px;
  max-height: 85vh;
  overflow: auto;
  padding-top: 25px; }

.elementor-templates-modal .dialog-content {
  height: 100%; }

.elementor-templates-modal .dialog-loading {
  display: none; }

.elementor-templates-modal__header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  height: 50px; }
  .elementor-templates-modal__header__logo {
    line-height: 1;
    text-transform: uppercase;
    font-weight: bold;
    cursor: pointer; }
    .elementor-templates-modal__header__logo-area {
      text-align: left;
      padding-left: 15px; }
      .elementor-templates-modal__header__logo-area > * {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center; }
    .elementor-templates-modal__header__logo__icon-wrapper {
      margin-right: 10px;
      font-size: 12px; }
    .elementor-templates-modal__header__logo__title {
      padding-top: 2px; }
  .elementor-templates-modal__header__items-area {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .elementor-templates-modal__header__item {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-sizing: content-box;
            box-sizing: content-box; }
    .elementor-templates-modal__header__item > i {
      font-size: 20px;
      -webkit-transition: all 0.3s;
      -o-transition: all 0.3s;
      transition: all 0.3s;
      cursor: pointer; }
      .elementor-templates-modal__header__item > i:not(:hover) {
        color: #a4afb7; }
  .elementor-templates-modal__header__close--normal {
    width: 47px;
    border-left: 1px solid #e6e9ec; }
    .elementor-templates-modal__header__close--normal i {
      font-size: 18px; }
  .elementor-templates-modal__header__close--skip {
    padding: 10px;
    padding-left: 20px;
    margin-right: 10px;
    color: #fff;
    background-color: #a4afb7;
    font-size: 11px;
    font-weight: normal;
    line-height: 1;
    text-transform: uppercase;
    -webkit-border-radius: 2px;
            border-radius: 2px;
    cursor: pointer; }
    .elementor-templates-modal__header__close--skip > i {
      font-size: inherit;
      padding-left: 10px;
      margin-left: 15px;
      border-left: 1px solid; }
      .elementor-templates-modal__header__close--skip > i:not(:hover) {
        color: #fff; }

.elementor-templates-modal__sidebar {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 25%;
  background-color: rgba(255, 255, 255, 0.3); }

.elementor-templates-modal__content {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-box-shadow: 0 0 13px inset rgba(0, 0, 0, 0.05);
          box-shadow: 0 0 13px inset rgba(0, 0, 0, 0.05); }

/* Will select next element after last '.elementor-general-section' */
#wpadminbar #wp-admin-bar-elementor_edit_page .elementor-general-section + .elementor-second-section {
  border-top: 1px solid #464b50;
  margin-top: 6px; }

.elementor-hidden {
  display: none; }

.elementor-screen-only,
.screen-reader-text,
.screen-reader-text span,
.ui-helper-hidden-accessible {
  position: absolute;
  top: -10000em;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0; }

.elementor-clearfix:after {
  content: '';
  display: block;
  clear: both;
  width: 0;
  height: 0; }

.e-logo-wrapper {
  background: #93003c;
  display: inline-block;
  padding: 0.75em;
  -webkit-border-radius: 50%;
          border-radius: 50%;
  line-height: 1; }
  .e-logo-wrapper i {
    color: #fff;
    font-size: 1em; }

#elementor-finder__modal {
  background: none;
  z-index: 99999; }
  #elementor-finder__modal .dialog-widget-content {
    width: 650px;
    max-width: 98%;
    top: 18vh;
    left: calc( 50% - 650px / 2); }
  #elementor-finder__modal .dialog-message {
    height: initial;
    min-height: 0;
    padding: 0;
    text-align: left; }

#elementor-finder__search {
  padding: 14px 15px 14px 21px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-shadow: 0 -3px 15px 6px rgba(0, 0, 0, 0.03);
          box-shadow: 0 -3px 15px 6px rgba(0, 0, 0, 0.03); }
  #elementor-finder__search i {
    font-size: 16px;
    color: #a4afb7;
    font-weight: bold;
    margin-right: 15px; }
  #elementor-finder__search__input {
    border: none;
    background: none;
    outline: none;
    padding: 0;
    margin: 0;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    font-size: 14px;
    color: #495157;
    -webkit-box-shadow: none;
            box-shadow: none; }
    #elementor-finder__search__input::-webkit-input-placeholder {
      color: #a4afb7;
      font-style: italic;
      font-weight: 300; }
    #elementor-finder__search__input::-moz-placeholder {
      color: #a4afb7;
      font-style: italic;
      font-weight: 300; }
    #elementor-finder__search__input::-ms-input-placeholder {
      color: #a4afb7;
      font-style: italic;
      font-weight: 300; }
    #elementor-finder__search__input::placeholder {
      color: #a4afb7;
      font-style: italic;
      font-weight: 300; }

#elementor-finder__results {
  max-height: 50vh;
  overflow: auto; }

#elementor-finder__no-results {
  display: none;
  padding: 20px;
  color: #a4afb7; }

.elementor-finder__results__category {
  position: relative; }
  .elementor-finder__results__category__title {
    padding: 5px 25px;
    color: #6d7882;
    background-color: #e6e9ec;
    font-size: 9px;
    text-transform: uppercase; }
  .elementor-finder__results__category--dynamic .elementor-finder__results__category__items {
    min-height: 26px; }
  .elementor-finder__results__category .eicon-loading {
    display: none;
    position: absolute;
    right: 10px;
    top: 30px;
    color: #71d7f7;
    font-size: 14px; }

.elementor-finder__results__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  .elementor-finder__results__item a {
    text-decoration: none;
    -webkit-box-shadow: none;
            box-shadow: none;
    outline: none; }
  .elementor-finder__results__item.elementor-active {
    background-color: #71d7f7;
    -webkit-box-shadow: none;
            box-shadow: none;
    outline: none; }
    .elementor-finder__results__item.elementor-active * {
      color: #fff; }
  .elementor-finder__results__item:not(.elementor-active) .elementor-finder__results__item__actions {
    display: none; }
  .elementor-finder__results__item__link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: 35px;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }
  .elementor-finder__results__item__icon {
    width: 60px;
    text-align: center;
    color: #6d7882;
    font-size: 17px; }
  .elementor-finder__results__item__title {
    color: #6d7882;
    font-size: 13px; }
  .elementor-finder__results__item__description {
    margin-left: 5px;
    color: #a4afb7;
    font-style: italic; }
  .elementor-finder__results__item__actions {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .elementor-finder__results__item__action {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    height: 100%;
    width: 35px; }
    .elementor-finder__results__item__action:hover {
      background-color: rgba(0, 0, 0, 0.07); }

.tipsy {
  font-size: 10px;
  position: absolute;
  padding: 5px;
  z-index: 100000; }

.tipsy-inner {
  background-color: #000;
  color: #FFF;
  font-weight: 500;
  max-width: 200px;
  padding: 5px 12px;
  text-align: center;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  -webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.5);
          box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.5); }

.tipsy-arrow {
  position: absolute;
  width: 0;
  height: 0;
  line-height: 0;
  border: 5px dashed #000; }

.tipsy-arrow-n {
  border-bottom-color: #000; }

.tipsy-arrow-s {
  border-top-color: #000; }

.tipsy-arrow-e {
  border-left-color: #000; }

.tipsy-arrow-w {
  border-right-color: #000; }

.tipsy-n .tipsy-arrow, .tipsy-nw .tipsy-arrow {
  border-left-color: transparent;
  border-right-color: transparent;
  top: 0;
  border-bottom-style: solid;
  border-top: none; }

.tipsy-n .tipsy-arrow {
  left: 50%;
  margin-left: -5px; }

.tipsy-nw .tipsy-arrow {
  left: 10px; }

.tipsy-ne .tipsy-arrow {
  top: 0;
  right: 10px;
  border-bottom-style: solid;
  border-top: none;
  border-left-color: transparent;
  border-right-color: transparent; }

.tipsy-s .tipsy-arrow, .tipsy-se .tipsy-arrow, .tipsy-sw .tipsy-arrow {
  bottom: 0;
  border-top-style: solid;
  border-bottom: none;
  border-left-color: transparent;
  border-right-color: transparent; }

.tipsy-s .tipsy-arrow {
  left: 50%;
  margin-left: -5px; }

.tipsy-sw .tipsy-arrow {
  left: 10px; }

.tipsy-se .tipsy-arrow {
  right: 10px; }

.tipsy-e .tipsy-arrow, .tipsy-w .tipsy-arrow {
  top: 50%;
  margin-top: -5px;
  border-top-color: transparent;
  border-bottom-color: transparent; }

.tipsy-e .tipsy-arrow {
  right: 0;
  border-left-style: solid;
  border-right: none; }

.tipsy-w .tipsy-arrow {
  left: 0;
  border-right-style: solid;
  border-left: none; }
/*# sourceMappingURL=common.css.map */assets/css/widget-google_maps-rtl.min.css000064400000000243151327220410014502 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-widget-google_maps .elementor-widget-container{overflow:hidden}.elementor-widget-google_maps iframe{height:300px}assets/css/widget-heading.min.css000064400000001221151327220410013003 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-heading-title{padding:0;margin:0;line-height:1}.elementor-widget-heading .elementor-heading-title[class*=elementor-size-]>a{color:inherit;font-size:inherit;line-height:inherit}.elementor-widget-heading .elementor-heading-title.elementor-size-small{font-size:15px}.elementor-widget-heading .elementor-heading-title.elementor-size-medium{font-size:19px}.elementor-widget-heading .elementor-heading-title.elementor-size-large{font-size:29px}.elementor-widget-heading .elementor-heading-title.elementor-size-xl{font-size:39px}.elementor-widget-heading .elementor-heading-title.elementor-size-xxl{font-size:59px}assets/css/widget-toggle-rtl.min.css000064400000002604151327220410013472 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-toggle{text-align:right}.elementor-toggle .elementor-tab-title{font-weight:700;line-height:1;margin:0;padding:15px;border-bottom:1px solid #d4d4d4;cursor:pointer;outline:none}.elementor-toggle .elementor-tab-title .elementor-toggle-icon{display:inline-block;width:1em}.elementor-toggle .elementor-tab-title .elementor-toggle-icon svg{-webkit-margin-start:-5px;margin-inline-start:-5px;width:1em;height:1em}.elementor-toggle .elementor-tab-title .elementor-toggle-icon.elementor-toggle-icon-right{float:right;text-align:right}.elementor-toggle .elementor-tab-title .elementor-toggle-icon.elementor-toggle-icon-left{float:left;text-align:left}.elementor-toggle .elementor-tab-title .elementor-toggle-icon .elementor-toggle-icon-closed{display:block}.elementor-toggle .elementor-tab-title .elementor-toggle-icon .elementor-toggle-icon-opened{display:none}.elementor-toggle .elementor-tab-title.elementor-active{border-bottom:none}.elementor-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon-closed{display:none}.elementor-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon-opened{display:block}.elementor-toggle .elementor-tab-content{padding:15px;border-bottom:1px solid #d4d4d4;display:none}@media (max-width:767px){.elementor-toggle .elementor-tab-title{padding:12px}.elementor-toggle .elementor-tab-content{padding:12px 10px}}assets/css/widget-toggle.min.css000064400000002603151327220410012672 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-toggle{text-align:left}.elementor-toggle .elementor-tab-title{font-weight:700;line-height:1;margin:0;padding:15px;border-bottom:1px solid #d4d4d4;cursor:pointer;outline:none}.elementor-toggle .elementor-tab-title .elementor-toggle-icon{display:inline-block;width:1em}.elementor-toggle .elementor-tab-title .elementor-toggle-icon svg{-webkit-margin-start:-5px;margin-inline-start:-5px;width:1em;height:1em}.elementor-toggle .elementor-tab-title .elementor-toggle-icon.elementor-toggle-icon-right{float:right;text-align:right}.elementor-toggle .elementor-tab-title .elementor-toggle-icon.elementor-toggle-icon-left{float:left;text-align:left}.elementor-toggle .elementor-tab-title .elementor-toggle-icon .elementor-toggle-icon-closed{display:block}.elementor-toggle .elementor-tab-title .elementor-toggle-icon .elementor-toggle-icon-opened{display:none}.elementor-toggle .elementor-tab-title.elementor-active{border-bottom:none}.elementor-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon-closed{display:none}.elementor-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon-opened{display:block}.elementor-toggle .elementor-tab-content{padding:15px;border-bottom:1px solid #d4d4d4;display:none}@media (max-width:767px){.elementor-toggle .elementor-tab-title{padding:12px}.elementor-toggle .elementor-tab-content{padding:12px 10px}}assets/css/editor-preview-legacy.min.css000064400000001022151327220410014331 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-edit-area-active .elementor-inner-section>.elementor-container>.elementor-row,.elementor-edit-area-active .elementor-top-section>.elementor-container>.elementor-row{min-height:40px}.elementor-edit-area-active .elementor-column-wrap.elementor-element-empty .elementor-widget-wrap{min-height:30px}@media (min-width:768px){.elementor-edit-area-active .elementor-column-wrap.elementor-element-empty .elementor-widget-wrap{margin:10px}}.elementor-edit-area-active .handle{display:none}assets/css/widget-image-box.min.css000064400000003333151327220410013262 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-widget-image-box .elementor-image-box-content{width:100%}@media (min-width:768px){.elementor-widget-image-box.elementor-position-left .elementor-image-box-wrapper,.elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper{text-align:right;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-widget-image-box.elementor-position-left .elementor-image-box-wrapper{text-align:left;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.elementor-widget-image-box.elementor-position-top .elementor-image-box-img{margin:auto}.elementor-widget-image-box.elementor-vertical-align-top .elementor-image-box-wrapper{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.elementor-widget-image-box.elementor-vertical-align-middle .elementor-image-box-wrapper{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-widget-image-box.elementor-vertical-align-bottom .elementor-image-box-wrapper{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}}@media (max-width:767px){.elementor-widget-image-box .elementor-image-box-img{margin-left:auto!important;margin-right:auto!important;margin-bottom:15px}}.elementor-widget-image-box .elementor-image-box-img{display:inline-block}.elementor-widget-image-box .elementor-image-box-title a{color:inherit}.elementor-widget-image-box .elementor-image-box-wrapper{text-align:center}.elementor-widget-image-box .elementor-image-box-description{margin:0}assets/css/templates/frontend-legacy.css000064400000006430151327220410014427 0ustar00.elementor-bc-flex-widget .elementor-section-content-top > .elementor-container > .elementor-row > .elementor-column > .elementor-column-wrap {
  align-items: flex-start; }

.elementor-bc-flex-widget .elementor-section-content-middle > .elementor-container > .elementor-row > .elementor-column > .elementor-column-wrap {
  align-items: center; }

.elementor-bc-flex-widget .elementor-section-content-bottom > .elementor-container > .elementor-row > .elementor-column > .elementor-column-wrap {
  align-items: flex-end; }

.elementor-column-gap-narrow > .elementor-row > .elementor-column > .elementor-element-populated {
  padding: 5px; }

.elementor-column-gap-default > .elementor-row > .elementor-column > .elementor-element-populated {
  padding: 10px; }

.elementor-column-gap-extended > .elementor-row > .elementor-column > .elementor-element-populated {
  padding: 15px; }

.elementor-column-gap-wide > .elementor-row > .elementor-column > .elementor-element-populated {
  padding: 20px; }

.elementor-column-gap-wider > .elementor-row > .elementor-column > .elementor-element-populated {
  padding: 30px; }

@media (min-width: ELEMENTOR_SCREEN_MOBILE_NEXT) and (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(1) {
    order: 10; }
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(2) {
    order: 9; }
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(3) {
    order: 8; }
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(4) {
    order: 7; }
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(5) {
    order: 6; }
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(6) {
    order: 5; }
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(7) {
    order: 4; }
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(8) {
    order: 3; }
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(9) {
    order: 2; }
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(10) {
    order: 1; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(1) {
    order: 10; }
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(2) {
    order: 9; }
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(3) {
    order: 8; }
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(4) {
    order: 7; }
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(5) {
    order: 6; }
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(6) {
    order: 5; }
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(7) {
    order: 4; }
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(8) {
    order: 3; }
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(9) {
    order: 2; }
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(10) {
    order: 1; }
  .elementor-column {
    width: 100%; } }
assets/css/templates/frontend-lite-rtl.min.css000064400000270033151327220410015503 0ustar00.dialog-widget-content{background-color:#fff;position:absolute;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);overflow:hidden}.dialog-message{font-size:12px;line-height:1.5;-webkit-box-sizing:border-box;box-sizing:border-box}.dialog-type-lightbox{position:fixed;height:100%;width:100%;bottom:0;left:0;background-color:rgba(0,0,0,.8);z-index:9999;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.dialog-type-lightbox .dialog-widget-content{margin:auto;width:375px}.dialog-type-lightbox .dialog-header{font-size:15px;color:#495157;padding:30px 0 10px;font-weight:500}.dialog-type-lightbox .dialog-message{padding:0 30px 30px;min-height:50px}.dialog-type-lightbox:not(.elementor-popup-modal) .dialog-header,.dialog-type-lightbox:not(.elementor-popup-modal) .dialog-message{text-align:center}.dialog-type-lightbox .dialog-buttons-wrapper{border-top:1px solid #e6e9ec;text-align:center}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;width:50%;border:none;background:none;color:#6d7882;font-size:15px;cursor:pointer;padding:13px 0;outline:0}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button:hover{background-color:#f4f6f7}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button.dialog-ok{color:#b01b1b}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button.dialog-take_over{color:#39b54a}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button:active{background-color:rgba(230,233,236,.5)}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button::-moz-focus-inner{border:0}.dialog-close-button{cursor:pointer;position:absolute;margin-top:15px;left:15px;font-size:15px;line-height:1}.dialog-close-button:not(:hover){opacity:.4}.dialog-alert-widget .dialog-buttons-wrapper>button{width:100%}.dialog-confirm-widget .dialog-button:first-child{border-left:1px solid #e6e9ec}.dialog-prevent-scroll{overflow:hidden;max-height:100vh}@media (min-width:1024px){body.admin-bar .dialog-lightbox-widget{height:calc(100vh - 32px)}}@media (max-width:1024px){body.admin-bar .dialog-type-lightbox{position:-webkit-sticky;position:sticky;height:100vh}}.elementor-aspect-ratio-219 .elementor-fit-aspect-ratio{padding-bottom:42.8571%}.elementor-aspect-ratio-169 .elementor-fit-aspect-ratio{padding-bottom:56.25%}.elementor-aspect-ratio-43 .elementor-fit-aspect-ratio{padding-bottom:75%}.elementor-aspect-ratio-32 .elementor-fit-aspect-ratio{padding-bottom:66.6666%}.elementor-aspect-ratio-11 .elementor-fit-aspect-ratio{padding-bottom:100%}.elementor-aspect-ratio-916 .elementor-fit-aspect-ratio{padding-bottom:177.8%}.elementor-fit-aspect-ratio{position:relative;height:0}.elementor-fit-aspect-ratio iframe{position:absolute;top:0;left:0;height:100%;width:100%;border:0;background-color:#000}.elementor-fit-aspect-ratio video{width:100%}.flatpickr-calendar{width:280px}.flatpickr-calendar .flatpickr-current-month span.cur-month{font-weight:300}.flatpickr-calendar .dayContainer{width:280px;min-width:280px;max-width:280px}.flatpickr-calendar .flatpickr-days{width:280px}.flatpickr-calendar .flatpickr-day{max-width:37px;height:37px;line-height:37px}.elementor-templates-modal .dialog-widget-content{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;background-color:#f1f3f5;width:100%}@media (max-width:1439px){.elementor-templates-modal .dialog-widget-content{max-width:990px}}@media (min-width:1440px){.elementor-templates-modal .dialog-widget-content{max-width:1200px}}.elementor-templates-modal .dialog-header{padding:0;z-index:1}.elementor-templates-modal .dialog-buttons-wrapper,.elementor-templates-modal .dialog-header{background-color:#fff;-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1);position:relative}.elementor-templates-modal .dialog-buttons-wrapper{border:none;display:none;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;padding:5px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button{height:40px;margin-right:5px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success{padding:12px 36px;color:#fff;width:auto;font-size:15px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success:hover{background-color:#39b54a}.elementor-templates-modal .dialog-message{height:750px;max-height:85vh;overflow:auto;padding-top:25px}.elementor-templates-modal .dialog-content{height:100%}.elementor-templates-modal .dialog-loading{display:none}.elementor-templates-modal__header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;height:50px}.elementor-templates-modal__header__logo{line-height:1;text-transform:uppercase;font-weight:700;cursor:pointer}.elementor-templates-modal__header__logo-area{text-align:right;padding-right:15px}.elementor-templates-modal__header__logo-area>*{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-templates-modal__header__logo__icon-wrapper{margin-left:10px;font-size:12px}.elementor-templates-modal__header__logo__title{padding-top:2px}.elementor-templates-modal__header__items-area{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-templates-modal__header__item{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-templates-modal__header__item>i{font-size:20px;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;cursor:pointer}.elementor-templates-modal__header__item>i:not(:hover){color:#a4afb7}.elementor-templates-modal__header__close--normal{width:47px;border-right:1px solid #e6e9ec}.elementor-templates-modal__header__close--normal i{font-size:18px}.elementor-templates-modal__header__close--skip{padding:10px 20px 10px 10px;margin-left:10px;color:#fff;background-color:#a4afb7;font-size:11px;font-weight:400;line-height:1;text-transform:uppercase;-webkit-border-radius:2px;border-radius:2px;cursor:pointer}.elementor-templates-modal__header__close--skip>i{font-size:inherit;padding-right:10px;margin-right:15px;border-right:1px solid}.elementor-templates-modal__header__close--skip>i:not(:hover){color:#fff}.elementor-templates-modal__sidebar{-ms-flex-negative:0;flex-shrink:0;width:25%;background-color:hsla(0,0%,100%,.3)}.elementor-templates-modal__content{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-webkit-box-shadow:0 0 13px inset rgba(0,0,0,.05);box-shadow:inset 0 0 13px rgba(0,0,0,.05)}#wpadminbar #wp-admin-bar-elementor_edit_page .elementor-general-section+.elementor-second-section{border-top:1px solid #464b50;margin-top:6px}.elementor-hidden{display:none}.elementor-screen-only,.screen-reader-text,.screen-reader-text span,.ui-helper-hidden-accessible{position:absolute;top:-10000em;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.elementor-clearfix:after{content:"";display:block;clear:both;width:0;height:0}.e-logo-wrapper{background:#93003c;display:inline-block;padding:.75em;-webkit-border-radius:50%;border-radius:50%;line-height:1}.e-logo-wrapper i{color:#fff;font-size:1em}.elementor{-webkit-hyphens:manual;-ms-hyphens:manual;hyphens:manual}.elementor *,.elementor :after,.elementor :before{-webkit-box-sizing:border-box;box-sizing:border-box}.elementor a{-webkit-box-shadow:none;box-shadow:none;text-decoration:none}.elementor hr{margin:0;background-color:transparent}.elementor img{height:auto;max-width:100%;border:none;-webkit-border-radius:0;border-radius:0;-webkit-box-shadow:none;box-shadow:none}.elementor .elementor-widget:not(.elementor-widget-text-editor):not(.elementor-widget-theme-post-content) figure{margin:0}.elementor embed,.elementor iframe,.elementor object,.elementor video{max-width:100%;width:100%;margin:0;line-height:1;border:none}.elementor .elementor-custom-embed{line-height:0}.elementor .elementor-background,.elementor .elementor-background-holder,.elementor .elementor-background-video-container{height:100%;width:100%;top:0;left:0;position:absolute;overflow:hidden;z-index:0;direction:ltr}.elementor .elementor-background-video-container{-webkit-transition:opacity 1s;-o-transition:opacity 1s;transition:opacity 1s;pointer-events:none}.elementor .elementor-background-video-container.elementor-loading{opacity:0}.elementor .elementor-background-video-embed{max-width:none}.elementor .elementor-background-video,.elementor .elementor-background-video-embed,.elementor .elementor-background-video-hosted{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor .elementor-background-video{max-width:none}.elementor .elementor-html5-video{-o-object-fit:cover;object-fit:cover}.elementor .elementor-background-overlay{height:100%;width:100%;top:0;left:0;position:absolute}.elementor .elementor-background-slideshow{position:absolute;width:100%;height:100%;z-index:0;top:0;right:0}.elementor .elementor-background-slideshow__slide__image{width:100%;height:100%;background-position:50%;-webkit-background-size:cover;background-size:cover}.elementor-widget-wrap>.elementor-element.elementor-absolute{position:absolute}.elementor-column>.elementor-widget-wrap>.elementor-element.elementor-absolute{padding:inherit;-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-widget-wrap>.elementor-element.elementor-fixed{position:fixed}.elementor-widget-wrap .elementor-element.elementor-widget__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget__width-initial{max-width:100%}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-initial{max-width:100%}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-initial{max-width:100%}}.elementor-element.elementor-absolute,.elementor-element.elementor-fixed{z-index:1}.elementor-invisible{visibility:hidden}.elementor-align-center{text-align:center}.elementor-align-center .elementor-button{width:auto}.elementor-align-right{text-align:right}.elementor-align-right .elementor-button{width:auto}.elementor-align-left{text-align:left}.elementor-align-left .elementor-button{width:auto}.elementor-align-justify .elementor-button{width:100%}.elementor-custom-embed-play{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor-custom-embed-play i{font-size:100px;color:#fff;text-shadow:1px 0 6px rgba(0,0,0,.3)}.elementor-custom-embed-play svg{height:100px;width:100px;fill:#fff;-webkit-filter:drop-shadow(1px 0 6px rgba(0,0,0,.3));filter:drop-shadow(1px 0 6px rgba(0,0,0,.3))}.elementor-custom-embed-play i,.elementor-custom-embed-play svg{opacity:.8;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-custom-embed-play.elementor-playing i{font-family:eicons;-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.elementor-custom-embed-play.elementor-playing i:before{content:"\e8fb"}.elementor-tag{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex}.elementor-ken-burns{-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;-o-transition-property:transform;transition-property:transform;transition-property:transform,-webkit-transform;-webkit-transition-duration:10s;-o-transition-duration:10s;transition-duration:10s;-webkit-transition-timing-function:linear;-o-transition-timing-function:linear;transition-timing-function:linear}.elementor-ken-burns--out{-webkit-transform:scale(1.3);-ms-transform:scale(1.3);transform:scale(1.3)}.elementor-ken-burns--active{-webkit-transition-duration:20s;-o-transition-duration:20s;transition-duration:20s}.elementor-ken-burns--active.elementor-ken-burns--out{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}.elementor-ken-burns--active.elementor-ken-burns--in{-webkit-transform:scale(1.3);-ms-transform:scale(1.3);transform:scale(1.3)}@media (min-width:ELEMENTOR_SCREEN_WIDESCREEN_MIN){.elementor-widescreen-align-center{text-align:center}.elementor-widescreen-align-center .elementor-button{width:auto}.elementor-widescreen-align-right{text-align:right}.elementor-widescreen-align-right .elementor-button{width:auto}.elementor-widescreen-align-left{text-align:left}.elementor-widescreen-align-left .elementor-button{width:auto}.elementor-widescreen-align-justify .elementor-button{width:100%}}@media (max-width:ELEMENTOR_SCREEN_LAPTOP_MAX){.elementor-laptop-align-center{text-align:center}.elementor-laptop-align-center .elementor-button{width:auto}.elementor-laptop-align-right{text-align:right}.elementor-laptop-align-right .elementor-button{width:auto}.elementor-laptop-align-left{text-align:left}.elementor-laptop-align-left .elementor-button{width:auto}.elementor-laptop-align-justify .elementor-button{width:100%}}@media (max-width:ELEMENTOR_SCREEN_TABLET_EXTRA_MAX){.elementor-tablet_extra-align-center{text-align:center}.elementor-tablet_extra-align-center .elementor-button{width:auto}.elementor-tablet_extra-align-right{text-align:right}.elementor-tablet_extra-align-right .elementor-button{width:auto}.elementor-tablet_extra-align-left{text-align:left}.elementor-tablet_extra-align-left .elementor-button{width:auto}.elementor-tablet_extra-align-justify .elementor-button{width:100%}}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-tablet-align-center{text-align:center}.elementor-tablet-align-center .elementor-button{width:auto}.elementor-tablet-align-right{text-align:right}.elementor-tablet-align-right .elementor-button{width:auto}.elementor-tablet-align-left{text-align:left}.elementor-tablet-align-left .elementor-button{width:auto}.elementor-tablet-align-justify .elementor-button{width:100%}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_EXTRA_MAX){.elementor-mobile_extra-align-center{text-align:center}.elementor-mobile_extra-align-center .elementor-button{width:auto}.elementor-mobile_extra-align-right{text-align:right}.elementor-mobile_extra-align-right .elementor-button{width:auto}.elementor-mobile_extra-align-left{text-align:left}.elementor-mobile_extra-align-left .elementor-button{width:auto}.elementor-mobile_extra-align-justify .elementor-button{width:100%}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-mobile-align-center{text-align:center}.elementor-mobile-align-center .elementor-button{width:auto}.elementor-mobile-align-right{text-align:right}.elementor-mobile-align-right .elementor-button{width:auto}.elementor-mobile-align-left{text-align:left}.elementor-mobile-align-left .elementor-button{width:auto}.elementor-mobile-align-justify .elementor-button{width:100%}}#wpadminbar #wp-admin-bar-elementor_edit_page>.ab-item:before{content:"\e813";font-family:eicons;top:3px;font-size:18px}#wpadminbar #wp-admin-bar-elementor_inspector>.ab-item:before{content:"\f348";top:2px}:root{--page-title-display:block}.elementor-page-title,h1.entry-title{display:var(--page-title-display)}.elementor-section{position:relative}.elementor-section .elementor-container{display:-webkit-box;display:-ms-flexbox;display:flex;margin-right:auto;margin-left:auto;position:relative}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-section .elementor-container{-ms-flex-wrap:wrap;flex-wrap:wrap}}.elementor-section.elementor-section-boxed>.elementor-container{max-width:1140px}.elementor-section.elementor-section-stretched{position:relative;width:100%}.elementor-section.elementor-section-items-top>.elementor-container{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.elementor-section.elementor-section-items-middle>.elementor-container{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-section.elementor-section-items-bottom>.elementor-container{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}@media (min-width:ELEMENTOR_SCREEN_MOBILE_NEXT){.elementor-section.elementor-section-height-full{height:100vh}.elementor-section.elementor-section-height-full>.elementor-container{height:100%}}.elementor-bc-flex-widget .elementor-section-content-top>.elementor-container>.elementor-column>.elementor-widget-wrap{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.elementor-bc-flex-widget .elementor-section-content-middle>.elementor-container>.elementor-column>.elementor-widget-wrap{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-bc-flex-widget .elementor-section-content-bottom>.elementor-container>.elementor-column>.elementor-widget-wrap{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.elementor-row{width:100%;display:-webkit-box;display:-ms-flexbox;display:flex}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-row{-ms-flex-wrap:wrap;flex-wrap:wrap}}.elementor-widget-wrap{position:relative;width:100%;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-line-pack:start;align-content:flex-start}.elementor:not(.elementor-bc-flex-widget) .elementor-widget-wrap{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget-wrap>.elementor-element{width:100%}.elementor-widget{position:relative}.elementor-widget:not(:last-child){margin-bottom:20px}.elementor-widget:not(:last-child).elementor-absolute,.elementor-widget:not(:last-child).elementor-widget__width-auto,.elementor-widget:not(:last-child).elementor-widget__width-initial{margin-bottom:0}.elementor-column{min-height:1px}.elementor-column,.elementor-column-wrap{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-column-wrap{width:100%}.elementor-column-gap-narrow>.elementor-column>.elementor-element-populated{padding:5px}.elementor-column-gap-default>.elementor-column>.elementor-element-populated{padding:10px}.elementor-column-gap-extended>.elementor-column>.elementor-element-populated{padding:15px}.elementor-column-gap-wide>.elementor-column>.elementor-element-populated{padding:20px}.elementor-column-gap-wider>.elementor-column>.elementor-element-populated{padding:30px}.elementor-inner-section .elementor-column-gap-no .elementor-element-populated{padding:0}@media (min-width:ELEMENTOR_SCREEN_MOBILE_NEXT){.elementor-column.elementor-col-10,.elementor-column[data-col="10"]{width:10%}.elementor-column.elementor-col-11,.elementor-column[data-col="11"]{width:11.111%}.elementor-column.elementor-col-12,.elementor-column[data-col="12"]{width:12.5%}.elementor-column.elementor-col-14,.elementor-column[data-col="14"]{width:14.285%}.elementor-column.elementor-col-16,.elementor-column[data-col="16"]{width:16.666%}.elementor-column.elementor-col-20,.elementor-column[data-col="20"]{width:20%}.elementor-column.elementor-col-25,.elementor-column[data-col="25"]{width:25%}.elementor-column.elementor-col-30,.elementor-column[data-col="30"]{width:30%}.elementor-column.elementor-col-33,.elementor-column[data-col="33"]{width:33.333%}.elementor-column.elementor-col-40,.elementor-column[data-col="40"]{width:40%}.elementor-column.elementor-col-50,.elementor-column[data-col="50"]{width:50%}.elementor-column.elementor-col-60,.elementor-column[data-col="60"]{width:60%}.elementor-column.elementor-col-66,.elementor-column[data-col="66"]{width:66.666%}.elementor-column.elementor-col-70,.elementor-column[data-col="70"]{width:70%}.elementor-column.elementor-col-75,.elementor-column[data-col="75"]{width:75%}.elementor-column.elementor-col-80,.elementor-column[data-col="80"]{width:80%}.elementor-column.elementor-col-83,.elementor-column[data-col="83"]{width:83.333%}.elementor-column.elementor-col-90,.elementor-column[data-col="90"]{width:90%}.elementor-column.elementor-col-100,.elementor-column[data-col="100"]{width:100%}}@media (max-width:479px){.elementor-column.elementor-xs-10{width:10%}.elementor-column.elementor-xs-11{width:11.111%}.elementor-column.elementor-xs-12{width:12.5%}.elementor-column.elementor-xs-14{width:14.285%}.elementor-column.elementor-xs-16{width:16.666%}.elementor-column.elementor-xs-20{width:20%}.elementor-column.elementor-xs-25{width:25%}.elementor-column.elementor-xs-30{width:30%}.elementor-column.elementor-xs-33{width:33.333%}.elementor-column.elementor-xs-40{width:40%}.elementor-column.elementor-xs-50{width:50%}.elementor-column.elementor-xs-60{width:60%}.elementor-column.elementor-xs-66{width:66.666%}.elementor-column.elementor-xs-70{width:70%}.elementor-column.elementor-xs-75{width:75%}.elementor-column.elementor-xs-80{width:80%}.elementor-column.elementor-xs-83{width:83.333%}.elementor-column.elementor-xs-90{width:90%}.elementor-column.elementor-xs-100{width:100%}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-column.elementor-sm-10{width:10%}.elementor-column.elementor-sm-11{width:11.111%}.elementor-column.elementor-sm-12{width:12.5%}.elementor-column.elementor-sm-14{width:14.285%}.elementor-column.elementor-sm-16{width:16.666%}.elementor-column.elementor-sm-20{width:20%}.elementor-column.elementor-sm-25{width:25%}.elementor-column.elementor-sm-30{width:30%}.elementor-column.elementor-sm-33{width:33.333%}.elementor-column.elementor-sm-40{width:40%}.elementor-column.elementor-sm-50{width:50%}.elementor-column.elementor-sm-60{width:60%}.elementor-column.elementor-sm-66{width:66.666%}.elementor-column.elementor-sm-70{width:70%}.elementor-column.elementor-sm-75{width:75%}.elementor-column.elementor-sm-80{width:80%}.elementor-column.elementor-sm-83{width:83.333%}.elementor-column.elementor-sm-90{width:90%}.elementor-column.elementor-sm-100{width:100%}}@media (min-width:ELEMENTOR_SCREEN_MOBILE_NEXT) and (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-column.elementor-md-10{width:10%}.elementor-column.elementor-md-11{width:11.111%}.elementor-column.elementor-md-12{width:12.5%}.elementor-column.elementor-md-14{width:14.285%}.elementor-column.elementor-md-16{width:16.666%}.elementor-column.elementor-md-20{width:20%}.elementor-column.elementor-md-25{width:25%}.elementor-column.elementor-md-30{width:30%}.elementor-column.elementor-md-33{width:33.333%}.elementor-column.elementor-md-40{width:40%}.elementor-column.elementor-md-50{width:50%}.elementor-column.elementor-md-60{width:60%}.elementor-column.elementor-md-66{width:66.666%}.elementor-column.elementor-md-70{width:70%}.elementor-column.elementor-md-75{width:75%}.elementor-column.elementor-md-80{width:80%}.elementor-column.elementor-md-83{width:83.333%}.elementor-column.elementor-md-90{width:90%}.elementor-column.elementor-md-100{width:100%}}@media (min-width:ELEMENTOR_SCREEN_MOBILE_NEXT) and (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-reverse-tablet>.elementor-container>:first-child{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.elementor-reverse-tablet>.elementor-container>:nth-child(2){-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.elementor-reverse-tablet>.elementor-container>:nth-child(3){-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.elementor-reverse-tablet>.elementor-container>:nth-child(4){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.elementor-reverse-tablet>.elementor-container>:nth-child(5){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.elementor-reverse-tablet>.elementor-container>:nth-child(6){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-reverse-tablet>.elementor-container>:nth-child(7){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.elementor-reverse-tablet>.elementor-container>:nth-child(8){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.elementor-reverse-tablet>.elementor-container>:nth-child(9){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.elementor-reverse-tablet>.elementor-container>:nth-child(10){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-reverse-mobile>.elementor-container>:first-child{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.elementor-reverse-mobile>.elementor-container>:nth-child(2){-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.elementor-reverse-mobile>.elementor-container>:nth-child(3){-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.elementor-reverse-mobile>.elementor-container>:nth-child(4){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.elementor-reverse-mobile>.elementor-container>:nth-child(5){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.elementor-reverse-mobile>.elementor-container>:nth-child(6){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-reverse-mobile>.elementor-container>:nth-child(7){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.elementor-reverse-mobile>.elementor-container>:nth-child(8){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.elementor-reverse-mobile>.elementor-container>:nth-child(9){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.elementor-reverse-mobile>.elementor-container>:nth-child(10){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.elementor-column{width:100%}}ul.elementor-icon-list-items.elementor-inline-items{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}ul.elementor-icon-list-items.elementor-inline-items .elementor-inline-item{word-break:break-word}.elementor-grid{display:grid;grid-column-gap:var(--grid-column-gap);grid-row-gap:var(--grid-row-gap)}.elementor-grid .elementor-grid-item{min-width:0}.elementor-grid-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}@media (min-width:ELEMENTOR_SCREEN_WIDESCREEN_MIN){.elementor-grid-widescreen-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-widescreen-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-widescreen-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-widescreen-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-widescreen-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-widescreen-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-widescreen-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-widescreen-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-widescreen-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-widescreen-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-widescreen-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-widescreen-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-widescreen-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-widescreen-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:ELEMENTOR_SCREEN_LAPTOP_MAX){.elementor-grid-laptop-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-laptop-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-laptop-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-laptop-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-laptop-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-laptop-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-laptop-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-laptop-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-laptop-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-laptop-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-laptop-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-laptop-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-laptop-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-laptop-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:ELEMENTOR_SCREEN_TABLET_EXTRA_MAX){.elementor-grid-tablet_extra-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-tablet_extra-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-tablet_extra-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-tablet_extra-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-tablet_extra-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-tablet_extra-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-tablet_extra-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-tablet_extra-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-tablet_extra-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-tablet_extra-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-tablet_extra-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-tablet_extra-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-tablet_extra-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-tablet_extra-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-grid-tablet-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-tablet-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-tablet-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-tablet-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-tablet-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-tablet-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-tablet-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-tablet-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-tablet-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-tablet-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-tablet-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-tablet-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-tablet-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-tablet-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_EXTRA_MAX){.elementor-grid-mobile_extra-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-mobile_extra-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-mobile_extra-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-mobile_extra-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-mobile_extra-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-mobile_extra-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-mobile_extra-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-mobile_extra-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-mobile_extra-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-mobile_extra-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-mobile_extra-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-mobile_extra-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-mobile_extra-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-mobile_extra-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-grid-mobile-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-mobile-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-mobile-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-mobile-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-mobile-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-mobile-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-mobile-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-mobile-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-mobile-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-mobile-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-mobile-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-mobile-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-mobile-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-mobile-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (min-width:ELEMENTOR_SCREEN_DESKTOP_MIN){#elementor-device-mode:after{content:"desktop"}}@media (min-width:ELEMENTOR_SCREEN_WIDESCREEN_MIN){#elementor-device-mode:after{content:"widescreen"}}@media (max-width:ELEMENTOR_SCREEN_LAPTOP_MAX){#elementor-device-mode:after{content:"laptop"}}@media (max-width:ELEMENTOR_SCREEN_TABLET_EXTRA_MAX){#elementor-device-mode:after{content:"tablet_extra"}}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){#elementor-device-mode:after{content:"tablet"}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_EXTRA_MAX){#elementor-device-mode:after{content:"mobile_extra"}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){#elementor-device-mode:after{content:"mobile"}}[class*=" eicon-"],[class^=eicon]{display:inline-block;font-family:eicons;font-size:inherit;font-weight:400;font-style:normal;font-variant:normal;line-height:1;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@-webkit-keyframes eicon-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes eicon-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.eicon-animation-spin{-webkit-animation:eicon-spin 2s linear infinite;animation:eicon-spin 2s linear infinite}.eicon-loading:before{content:"\e8fb"}.eicon-menu-bar:before{content:"\e816"}.eicon-chevron-right:before{content:"\e87d"}.eicon-chevron-left:before{content:"\e87e"}.eicon-close:before{content:"\e87f"}.eicon-share-arrow:before{content:"\e96c"}.eicon-zoom-in:before{content:"\e882"}.eicon-zoom-in-bold:before{content:"\e92e"}.eicon-zoom-out-bold:before{content:"\e943"}.eicon-frame-expand:before{content:"\e95c"}.eicon-frame-minimize:before{content:"\e95d"}.eicon-play:before{content:"\e89d"}.eicon-facebook:before{content:"\e959"}.eicon-twitter:before{content:"\e95a"}.eicon-pinterest:before{content:"\e95b"}.eicon-download-bold:before{content:"\e96b"}.eicon-caret-down:before{content:"\e92a"}.elementor-form-fields-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group .elementor-field-subgroup,.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group>.elementor-select-wrapper,.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group>input,.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group>textarea{-ms-flex-preferred-size:100%;flex-basis:100%;max-width:100%}.elementor-form-fields-wrapper.elementor-labels-inline>.elementor-field-group .elementor-select-wrapper,.elementor-form-fields-wrapper.elementor-labels-inline>.elementor-field-group>input{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-field-group{-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-field-group.elementor-field-type-submit{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.elementor-field-group .elementor-field-textual{width:100%;max-width:100%;border:1px solid #818a91;background-color:transparent;color:#373a3c;vertical-align:middle;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-field-group .elementor-field-textual:focus{-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.1) inset;box-shadow:inset 0 0 0 1px rgba(0,0,0,.1);outline:0}.elementor-field-group .elementor-field-textual::-webkit-input-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual:-ms-input-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual:-moz-placeholder,.elementor-field-group .elementor-field-textual::-moz-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual::-ms-input-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual::placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-select-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;position:relative;width:100%}.elementor-field-group .elementor-select-wrapper select{appearance:none;-webkit-appearance:none;-moz-appearance:none;color:inherit;font-size:inherit;font-family:inherit;font-weight:inherit;font-style:inherit;text-transform:inherit;letter-spacing:inherit;line-height:inherit;-ms-flex-preferred-size:100%;flex-basis:100%;padding-left:20px}.elementor-field-group .elementor-select-wrapper:before{content:"\e92a";font-family:eicons;font-size:15px;position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);left:10px;pointer-events:none;text-shadow:0 0 3px rgba(0,0,0,.3)}.elementor-field-group.elementor-field-type-select-multiple .elementor-select-wrapper:before{content:""}.elementor-field-subgroup{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-field-subgroup .elementor-field-option label{display:inline-block}.elementor-field-subgroup.elementor-subgroup-inline .elementor-field-option{padding-left:10px}.elementor-field-subgroup:not(.elementor-subgroup-inline) .elementor-field-option{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option label,.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option label,.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option label{display:inline}.elementor-field-label{cursor:pointer}.elementor-mark-required .elementor-field-label:after{content:"*";color:red;padding-right:.2em}.elementor-field-textual{line-height:1.4;font-size:15px;min-height:40px;padding:5px 14px;-webkit-border-radius:3px;border-radius:3px}.elementor-field-textual.elementor-size-xs{font-size:13px;min-height:33px;padding:4px 12px;-webkit-border-radius:2px;border-radius:2px}.elementor-field-textual.elementor-size-md{font-size:16px;min-height:47px;padding:6px 16px;-webkit-border-radius:4px;border-radius:4px}.elementor-field-textual.elementor-size-lg{font-size:18px;min-height:59px;padding:7px 20px;-webkit-border-radius:5px;border-radius:5px}.elementor-field-textual.elementor-size-xl{font-size:20px;min-height:72px;padding:8px 24px;-webkit-border-radius:6px;border-radius:6px}.elementor-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-button-align-stretch .e-form__buttons__wrapper{-ms-flex-preferred-size:50%;flex-basis:50%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-button-align-stretch .e-form__buttons__wrapper__button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-button-align-center .e-form__buttons,.elementor-button-align-center .elementor-field-type-submit{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-button-align-start .e-form__buttons,.elementor-button-align-start .elementor-field-type-submit{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-button-align-end .e-form__buttons,.elementor-button-align-end .elementor-field-type-submit{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:initial;flex-basis:auto}.elementor-button-align-center .e-form__buttons__wrapper,.elementor-button-align-end .e-form__buttons__wrapper,.elementor-button-align-start .e-form__buttons__wrapper{-webkit-box-flex:initial;-ms-flex-positive:initial;flex-grow:0}.elementor-button-align-center .e-form__buttons__wrapper,.elementor-button-align-center .e-form__buttons__wrapper__button,.elementor-button-align-end .e-form__buttons__wrapper,.elementor-button-align-end .e-form__buttons__wrapper__button,.elementor-button-align-start .e-form__buttons__wrapper,.elementor-button-align-start .e-form__buttons__wrapper__button{-ms-flex-preferred-size:initial;flex-basis:auto}@media screen and (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-tablet-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-tablet-button-align-stretch .e-form__buttons__wrapper{-ms-flex-preferred-size:50%;flex-basis:50%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-tablet-button-align-stretch .e-form__buttons__wrapper__button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-tablet-button-align-center .e-form__buttons,.elementor-tablet-button-align-center .elementor-field-type-submit{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-tablet-button-align-start .e-form__buttons,.elementor-tablet-button-align-start .elementor-field-type-submit{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-tablet-button-align-end .e-form__buttons,.elementor-tablet-button-align-end .elementor-field-type-submit{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-tablet-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-tablet-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-tablet-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:initial;flex-basis:auto}.elementor-tablet-button-align-center .e-form__buttons__wrapper,.elementor-tablet-button-align-end .e-form__buttons__wrapper,.elementor-tablet-button-align-start .e-form__buttons__wrapper{-webkit-box-flex:initial;-ms-flex-positive:initial;flex-grow:0}.elementor-tablet-button-align-center .e-form__buttons__wrapper,.elementor-tablet-button-align-center .e-form__buttons__wrapper__button,.elementor-tablet-button-align-end .e-form__buttons__wrapper,.elementor-tablet-button-align-end .e-form__buttons__wrapper__button,.elementor-tablet-button-align-start .e-form__buttons__wrapper,.elementor-tablet-button-align-start .e-form__buttons__wrapper__button{-ms-flex-preferred-size:initial;flex-basis:auto}}@media screen and (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-mobile-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-mobile-button-align-stretch .e-form__buttons__wrapper{-ms-flex-preferred-size:50%;flex-basis:50%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-mobile-button-align-stretch .e-form__buttons__wrapper__button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-mobile-button-align-center .e-form__buttons,.elementor-mobile-button-align-center .elementor-field-type-submit{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-mobile-button-align-start .e-form__buttons,.elementor-mobile-button-align-start .elementor-field-type-submit{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-mobile-button-align-end .e-form__buttons,.elementor-mobile-button-align-end .elementor-field-type-submit{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-mobile-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-mobile-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-mobile-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:initial;flex-basis:auto}.elementor-mobile-button-align-center .e-form__buttons__wrapper,.elementor-mobile-button-align-end .e-form__buttons__wrapper,.elementor-mobile-button-align-start .e-form__buttons__wrapper{-webkit-box-flex:initial;-ms-flex-positive:initial;flex-grow:0}.elementor-mobile-button-align-center .e-form__buttons__wrapper,.elementor-mobile-button-align-center .e-form__buttons__wrapper__button,.elementor-mobile-button-align-end .e-form__buttons__wrapper,.elementor-mobile-button-align-end .e-form__buttons__wrapper__button,.elementor-mobile-button-align-start .e-form__buttons__wrapper,.elementor-mobile-button-align-start .e-form__buttons__wrapper__button{-ms-flex-preferred-size:initial;flex-basis:auto}}.elementor-error .elementor-field{border-color:#d9534f}.elementor-error .help-inline{color:#d9534f;font-size:.9em}.elementor-message{margin:10px 0;font-size:1em;line-height:1}.elementor-message:before{content:"\e90e";display:inline-block;font-family:eicons;font-weight:400;font-style:normal;vertical-align:middle;margin-left:5px}.elementor-message.elementor-message-danger{color:#d9534f}.elementor-message.elementor-message-danger:before{content:"\e87f"}.elementor-message.form-message-success{color:#5cb85c}.elementor-form .elementor-button{padding-top:0;padding-bottom:0;border:none}.elementor-form .elementor-button>span{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-form .elementor-button.elementor-size-xs{min-height:33px}.elementor-form .elementor-button.elementor-size-sm{min-height:40px}.elementor-form .elementor-button.elementor-size-md{min-height:47px}.elementor-form .elementor-button.elementor-size-lg{min-height:59px}.elementor-form .elementor-button.elementor-size-xl{min-height:72px}.elementor-element .elementor-widget-container{-webkit-transition:background .3s,border .3s,-webkit-border-radius .3s,-webkit-box-shadow .3s;transition:background .3s,border .3s,-webkit-border-radius .3s,-webkit-box-shadow .3s;-o-transition:background .3s,border .3s,border-radius .3s,box-shadow .3s;transition:background .3s,border .3s,border-radius .3s,box-shadow .3s;transition:background .3s,border .3s,border-radius .3s,box-shadow .3s,-webkit-border-radius .3s,-webkit-box-shadow .3s}.elementor-button{display:inline-block;line-height:1;background-color:#818a91;font-size:15px;padding:12px 24px;-webkit-border-radius:3px;border-radius:3px;color:#fff;fill:#fff;text-align:center;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.elementor-button:focus,.elementor-button:hover,.elementor-button:visited{color:#fff}.elementor-button-content-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-button-icon{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-button-icon svg{width:1em;height:auto}.elementor-button-icon .e-font-icon-svg{height:1em}.elementor-button-text{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10;display:inline-block}.elementor-button.elementor-size-xs{font-size:13px;padding:10px 20px;-webkit-border-radius:2px;border-radius:2px}.elementor-button.elementor-size-md{font-size:16px;padding:15px 30px;-webkit-border-radius:4px;border-radius:4px}.elementor-button.elementor-size-lg{font-size:18px;padding:20px 40px;-webkit-border-radius:5px;border-radius:5px}.elementor-button.elementor-size-xl{font-size:20px;padding:25px 50px;-webkit-border-radius:6px;border-radius:6px}.elementor-button .elementor-align-icon-right{margin-left:5px;-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-button .elementor-align-icon-left{margin-right:5px;-webkit-box-ordinal-group:16;-ms-flex-order:15;order:15}.elementor-button span{text-decoration:inherit}.elementor-menu-cart__toggle .elementor-button-icon{-webkit-box-ordinal-group:16;-ms-flex-order:15;order:15}.elementor-element.elementor-button-info .elementor-button{background-color:#5bc0de}.elementor-element.elementor-button-success .elementor-button{background-color:#5cb85c}.elementor-element.elementor-button-warning .elementor-button{background-color:#f0ad4e}.elementor-element.elementor-button-danger .elementor-button{background-color:#d9534f}.elementor-widget-button .elementor-button .elementor-button-info{background-color:#5bc0de}.elementor-widget-button .elementor-button .elementor-button-success{background-color:#5cb85c}.elementor-widget-button .elementor-button .elementor-button-warning{background-color:#f0ad4e}.elementor-widget-button .elementor-button .elementor-button-danger{background-color:#d9534f}.elementor-tab-title a{color:inherit}.elementor-view-stacked .elementor-icon{padding:.5em;background-color:#818a91;color:#fff;fill:#fff}.elementor-view-framed .elementor-icon{padding:.5em;color:#818a91;border:3px solid #818a91;background-color:transparent}.elementor-icon{display:inline-block;line-height:1;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;color:#818a91;font-size:50px;text-align:center}.elementor-icon:hover{color:#818a91}.elementor-icon i,.elementor-icon svg{width:1em;height:1em;position:relative;display:block}.elementor-icon i:before,.elementor-icon svg:before{position:absolute;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.elementor-icon i.fad{width:auto}.elementor-shape-circle .elementor-icon{-webkit-border-radius:50%;border-radius:50%}.slick-slider{-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-ms-touch-action:pan-y;touch-action:pan-y;-webkit-tap-highlight-color:transparent}.slick-list,.slick-slider{position:relative;display:block}.slick-list{overflow:hidden;margin:0;padding:0}.slick-list:focus{outline:none}.slick-list.dragging{cursor:pointer}.slick-slider .slick-list,.slick-slider .slick-track{-webkit-transform:translateZ(0);transform:translateZ(0)}.slick-track{position:relative;left:0;top:0;display:block}.slick-track:after,.slick-track:before{content:"";display:table}.slick-track:after{clear:both}.slick-loading .slick-track{visibility:hidden}.slick-slide{float:left;height:100%;min-height:1px;display:none}.elementor-slick-slider[dir=rtl] .slick-slide{float:right}.slick-slide img{display:block}.slick-slide.slick-loading img{display:none}.slick-slide.dragging img{pointer-events:none}.slick-initialized .slick-slide{display:block}.slick-loading .slick-slide{visibility:hidden}.slick-vertical .slick-slide{display:block;height:auto;border:1px solid transparent}.slick-arrow.slick-hidden{display:none}.elementor-slick-slider .slick-loading .slick-list{background:#fff}.elementor-slick-slider .slick-loading .slick-list:after{content:"\e8fb";font-family:eicons;position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite;font-size:25px;color:#a4afb7}.elementor-slick-slider .slick-next,.elementor-slick-slider .slick-prev{font-size:0;line-height:0;position:absolute;top:50%;display:block;width:20px;padding:0;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);cursor:pointer;color:transparent;border:none;outline:none;background:transparent}.elementor-slick-slider .slick-next:focus,.elementor-slick-slider .slick-next:hover,.elementor-slick-slider .slick-prev:focus,.elementor-slick-slider .slick-prev:hover{color:transparent;outline:none;background:transparent}.elementor-slick-slider .slick-next:focus:before,.elementor-slick-slider .slick-next:hover:before,.elementor-slick-slider .slick-prev:focus:before,.elementor-slick-slider .slick-prev:hover:before{opacity:1}.elementor-slick-slider .slick-next.slick-disabled:before,.elementor-slick-slider .slick-prev.slick-disabled:before{opacity:.25}.elementor-slick-slider .slick-next:before,.elementor-slick-slider .slick-prev:before{font-family:eicons;font-size:35px;line-height:1;opacity:.75;color:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.elementor-slick-slider .slick-prev{left:-25px}[dir=rtl] .elementor-slick-slider .slick-prev{left:auto;right:-25px}.elementor-slick-slider .slick-prev:before{content:"\e89f"}[dir=rtl] .elementor-slick-slider .slick-prev:before{content:"\e89e"}.elementor-slick-slider .slick-next{right:-25px}[dir=rtl] .elementor-slick-slider .slick-next{left:-25px;right:auto}.elementor-slick-slider .slick-next:before{content:"\e89e"}[dir=rtl] .elementor-slick-slider .slick-next:before{content:"\e89f"}.elementor-slick-slider .slick-dotted.slick-slider{margin-bottom:30px}.elementor-slick-slider ul.slick-dots{position:absolute;bottom:-25px;display:block;width:100%;padding:0;margin:0;list-style:none;text-align:center;line-height:1}.elementor-slick-slider ul.slick-dots li{position:relative;display:inline-block;width:20px;height:20px;margin:0;padding:0;cursor:pointer}.elementor-slick-slider ul.slick-dots li button{font-size:0;line-height:0;display:block;width:20px;height:20px;padding:5px;cursor:pointer;color:transparent;border:0;outline:none;background:transparent}.elementor-slick-slider ul.slick-dots li button:focus,.elementor-slick-slider ul.slick-dots li button:hover{outline:none}.elementor-slick-slider ul.slick-dots li button:focus:before,.elementor-slick-slider ul.slick-dots li button:hover:before{opacity:1}.elementor-slick-slider ul.slick-dots li button:before{font-family:eicons;font-size:6px;line-height:20px;position:absolute;top:0;left:0;width:20px;height:20px;content:"\e914";text-align:center;opacity:.25;color:#000;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.elementor-slick-slider ul.slick-dots li.slick-active button:before{opacity:.75;color:#000}.elementor-slick-slider .slick-arrows-inside .slick-prev{left:20px}[dir=rtl] .elementor-slick-slider .slick-arrows-inside .slick-prev{left:auto;right:20px}.elementor-slick-slider .slick-arrows-inside .slick-next{right:20px}[dir=rtl] .elementor-slick-slider .slick-arrows-inside .slick-next{left:20px;right:auto}.elementor-slick-slider .slick-dots-inside .slick-dots{bottom:5px}.elementor-slick-slider .slick-dots-inside.slick-dotted.slick-slider{margin-bottom:0}.elementor-slick-slider .slick-slider .slick-next,.elementor-slick-slider .slick-slider .slick-prev{z-index:1}.elementor-slick-slider .slick-slide img{margin:auto}.swiper-container{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;z-index:1}.swiper-container .swiper-slide figure{line-height:0}.swiper-container .elementor-lightbox-content-source{display:none}.swiper-container-no-flexbox .swiper-slide{float:left}.swiper-container-vertical>.swiper-wrapper{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;-o-transition-property:transform;transition-property:transform;transition-property:transform,-webkit-transform;-webkit-box-sizing:content-box;box-sizing:content-box}.swiper-container-android .swiper-slide,.swiper-wrapper{-webkit-transform:translateZ(0);transform:translateZ(0)}.swiper-container-multirow>.swiper-wrapper{-ms-flex-wrap:wrap;flex-wrap:wrap}.swiper-container-free-mode>.swiper-wrapper{-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out;margin:0 auto}.swiper-slide{-ms-flex-negative:0;flex-shrink:0;width:100%;height:100%;position:relative}.swiper-container-autoheight,.swiper-container-autoheight .swiper-slide{height:auto}.swiper-container-autoheight .swiper-wrapper{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-transition-property:height,-webkit-transform;transition-property:height,-webkit-transform;-o-transition-property:transform,height;transition-property:transform,height;transition-property:transform,height,-webkit-transform}.swiper-container .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}.swiper-wp8-horizontal{-ms-touch-action:pan-y;touch-action:pan-y}.swiper-wp8-vertical{-ms-touch-action:pan-x;touch-action:pan-x}.swiper-button-next,.swiper-button-prev{position:absolute;top:50%;width:27px;height:44px;margin-top:-22px;z-index:10;cursor:pointer;-webkit-background-size:27px 44px;background-size:27px 44px;background:no-repeat 50%}.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}.swiper-button-prev,.swiper-container-rtl .swiper-button-next{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z' fill='%23007aff'/%3E%3C/svg%3E");left:10px;right:auto}.swiper-button-prev.swiper-button-black,.swiper-container-rtl .swiper-button-next.swiper-button-black{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z'/%3E%3C/svg%3E")}.swiper-button-prev.swiper-button-white,.swiper-container-rtl .swiper-button-next.swiper-button-white{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z' fill='%23fff'/%3E%3C/svg%3E")}.swiper-button-next,.swiper-container-rtl .swiper-button-prev{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z' fill='%23007aff'/%3E%3C/svg%3E");right:10px;left:auto}.swiper-button-next.swiper-button-black,.swiper-container-rtl .swiper-button-prev.swiper-button-black{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z'/%3E%3C/svg%3E")}.swiper-button-next.swiper-button-white,.swiper-container-rtl .swiper-button-prev.swiper-button-white{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z' fill='%23fff'/%3E%3C/svg%3E")}.swiper-pagination{position:absolute;text-align:center;-webkit-transition:.3s;-o-transition:.3s;transition:.3s;-webkit-transform:translateZ(0);transform:translateZ(0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-container-horizontal>.swiper-pagination-bullets,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:5px;left:0;width:100%}.swiper-pagination-bullet{width:6px;height:6px;display:inline-block;-webkit-border-radius:50%;border-radius:50%;background:#000;opacity:.2}.swiper-pagination-fraction{color:#000}button.swiper-pagination-bullet{border:none;margin:0;padding:0;-webkit-box-shadow:none;box-shadow:none;appearance:none;-webkit-appearance:none;-moz-appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-white .swiper-pagination-bullet{background:#fff}.swiper-pagination-bullet-active{opacity:1}.swiper-pagination-white .swiper-pagination-bullet-active{background:#fff}.swiper-pagination-black .swiper-pagination-bullet-active{background:#000}.swiper-container-vertical>.swiper-pagination-bullets{right:10px;top:50%;-webkit-transform:translate3d(0,-50%,0);transform:translate3d(0,-50%,0)}.swiper-container-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{margin:5px 0;display:block}.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 6px}.swiper-pagination-progressbar{background:rgba(0,0,0,.25);position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:#000;position:absolute;left:0;top:0;width:100%;height:100%;-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);-webkit-transform-origin:left top;-ms-transform-origin:left top;transform-origin:left top}.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{-webkit-transform-origin:right top;-ms-transform-origin:right top;transform-origin:right top}.swiper-container-horizontal>.swiper-pagination-progressbar{width:100%;height:4px;left:0;top:0}.swiper-container-vertical>.swiper-pagination-progressbar{width:4px;height:100%;left:0;top:0}.swiper-pagination-progressbar.swiper-pagination-white{background:hsla(0,0%,100%,.5)}.swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill{background:#fff}.swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill{background:#000}.swiper-container-3d{-webkit-perspective:1200px;perspective:1200px}.swiper-container-3d .swiper-cube-shadow,.swiper-container-3d .swiper-slide,.swiper-container-3d .swiper-slide-shadow-bottom,.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top,.swiper-container-3d .swiper-wrapper{-webkit-transform-style:preserve-3d;transform-style:preserve-3d}.swiper-container-3d .swiper-slide-shadow-bottom,.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-container-3d .swiper-slide-shadow-left{background-image:-webkit-gradient(linear,right top,left top,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(right,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(right,rgba(0,0,0,.5),transparent);background-image:linear-gradient(270deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-right{background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(left,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(left,rgba(0,0,0,.5),transparent);background-image:linear-gradient(90deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-top{background-image:-webkit-gradient(linear,left bottom,left top,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(bottom,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(bottom,rgba(0,0,0,.5),transparent);background-image:linear-gradient(0deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-bottom{background-image:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(top,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(top,rgba(0,0,0,.5),transparent);background-image:linear-gradient(180deg,rgba(0,0,0,.5),transparent)}.swiper-container-coverflow .swiper-wrapper,.swiper-container-flip .swiper-wrapper{-ms-perspective:1200px}.swiper-container-cube,.swiper-container-flip{overflow:visible}.swiper-container-cube .swiper-slide,.swiper-container-flip .swiper-slide{pointer-events:none;z-index:1}.swiper-container-cube .swiper-slide .swiper-slide,.swiper-container-flip .swiper-slide .swiper-slide{pointer-events:none}.swiper-container-cube .swiper-slide-active,.swiper-container-cube .swiper-slide-active .swiper-slide-active,.swiper-container-flip .swiper-slide-active,.swiper-container-flip .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-container-cube .swiper-slide-shadow-bottom,.swiper-container-cube .swiper-slide-shadow-left,.swiper-container-cube .swiper-slide-shadow-right,.swiper-container-cube .swiper-slide-shadow-top,.swiper-container-flip .swiper-slide-shadow-bottom,.swiper-container-flip .swiper-slide-shadow-left,.swiper-container-flip .swiper-slide-shadow-right,.swiper-container-flip .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-container-cube .swiper-slide{visibility:hidden;-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0;width:100%;height:100%}.swiper-container-cube.swiper-container-rtl .swiper-slide{-webkit-transform-origin:100% 0;-ms-transform-origin:100% 0;transform-origin:100% 0}.swiper-container-cube .swiper-slide-active,.swiper-container-cube .swiper-slide-next,.swiper-container-cube .swiper-slide-next+.swiper-slide,.swiper-container-cube .swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-container-cube .swiper-cube-shadow{position:absolute;left:0;bottom:0;width:100%;height:100%;background:#000;opacity:.6;-webkit-filter:blur(50px);filter:blur(50px);z-index:0}.swiper-container-fade.swiper-container-free-mode .swiper-slide{-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out}.swiper-container-fade .swiper-slide{pointer-events:none;-webkit-transition-property:opacity;-o-transition-property:opacity;transition-property:opacity}.swiper-container-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-container-fade .swiper-slide-active,.swiper-container-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-zoom-container{width:100%;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;text-align:center}.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{max-width:100%;max-height:100%;-o-object-fit:contain;object-fit:contain}.swiper-scrollbar{-webkit-border-radius:10px;border-radius:10px;position:relative;-ms-touch-action:none;background:rgba(0,0,0,.1)}.swiper-container-horizontal>.swiper-scrollbar{position:absolute;left:1%;bottom:3px;z-index:50;height:5px;width:98%}.swiper-container-vertical>.swiper-scrollbar{position:absolute;right:3px;top:1%;z-index:50;width:5px;height:98%}.swiper-scrollbar-drag{height:100%;width:100%;position:relative;background:rgba(0,0,0,.5);-webkit-border-radius:10px;border-radius:10px;left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.elementor-pagination-position-outside .swiper-container{padding-bottom:30px}.elementor-pagination-position-outside .elementor-swiper-button{top:calc(50% - 30px / 2)}.elementor-swiper{position:relative}.elementor-main-swiper{position:static}.elementor-arrows-position-outside .swiper-container{width:calc(100% - 60px)}.elementor-arrows-position-outside .elementor-swiper-button-prev{left:0}.elementor-arrows-position-outside .elementor-swiper-button-next{right:0}.swiper-image-stretch .swiper-slide .swiper-slide-image{width:100%}.elementor-swiper-button{position:absolute;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;z-index:1;cursor:pointer;font-size:25px;color:hsla(0,0%,93.3%,.9);top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}.elementor-swiper-button-prev{left:10px}.elementor-swiper-button-next{right:10px}.elementor-swiper-button.swiper-button-disabled{opacity:.3}.swiper-container-cube .elementor-swiper-button{-webkit-transform:translate3d(0,-50%,1px);transform:translate3d(0,-50%,1px)}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;-webkit-transform-origin:50%;-ms-transform-origin:50%;transform-origin:50%;-webkit-animation:swiper-preloader-spin 1s steps(12) infinite;animation:swiper-preloader-spin 1s steps(12) infinite}.swiper-lazy-preloader:after{display:block;content:"";width:100%;height:100%;-webkit-background-size:100% 100%;background-size:100%;background:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath id='a' stroke='%236c6c6c' stroke-width='11' stroke-linecap='round' d='M60 7v20'/%3E%3C/defs%3E%3Cuse xlink:href='%23a' opacity='.27'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(30 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(60 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(90 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(120 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(150 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.37' transform='rotate(180 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.46' transform='rotate(210 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.56' transform='rotate(240 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.66' transform='rotate(270 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.75' transform='rotate(300 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.85' transform='rotate(330 60 60)'/%3E%3C/svg%3E") no-repeat 50%}.swiper-lazy-preloader-white:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath id='a' stroke='%23fff' stroke-width='11' stroke-linecap='round' d='M60 7v20'/%3E%3C/defs%3E%3Cuse xlink:href='%23a' opacity='.27'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(30 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(60 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(90 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(120 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(150 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.37' transform='rotate(180 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.46' transform='rotate(210 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.56' transform='rotate(240 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.66' transform='rotate(270 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.75' transform='rotate(300 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.85' transform='rotate(330 60 60)'/%3E%3C/svg%3E")}@-webkit-keyframes swiper-preloader-spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes swiper-preloader-spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.elementor-lightbox{--lightbox-ui-color:hsla(0,0%,93.3%,0.9);--lightbox-ui-color-hover:#fff;--lightbox-text-color:var(--lightbox-ui-color);--lightbox-header-icons-size:20px;--lightbox-navigation-icons-size:25px}.elementor-lightbox .dialog-header{display:none}.elementor-lightbox .dialog-widget-content{background:none;-webkit-box-shadow:none;box-shadow:none;width:100%;height:100%}.elementor-lightbox .dialog-message{-webkit-animation-duration:.3s;animation-duration:.3s}.elementor-lightbox .dialog-message:not(.elementor-fit-aspect-ratio){height:100%}.elementor-lightbox .dialog-message.dialog-lightbox-message{padding:0}.elementor-lightbox .dialog-lightbox-close-button{cursor:pointer;position:absolute;font-size:var(--lightbox-header-icons-size);left:.75em;margin-top:13px;padding:.25em;z-index:2;line-height:1}.elementor-lightbox .dialog-lightbox-close-button,.elementor-lightbox .elementor-swiper-button{color:var(--lightbox-ui-color);-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;opacity:1}.elementor-lightbox .dialog-lightbox-close-button:hover,.elementor-lightbox .elementor-swiper-button:hover{color:var(--lightbox-ui-color-hover)}.elementor-lightbox .swiper-container{height:100%}.elementor-lightbox .elementor-lightbox-item{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;position:relative;padding:70px;-webkit-box-sizing:border-box;box-sizing:border-box;height:100%;margin:auto}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-lightbox .elementor-lightbox-item{padding:70px 0}}.elementor-lightbox .elementor-lightbox-image{max-height:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.elementor-lightbox .elementor-lightbox-image,.elementor-lightbox .elementor-lightbox-image:hover{opacity:1;-webkit-filter:none;filter:none;border:none}.elementor-lightbox .elementor-lightbox-image,.elementor-lightbox .elementor-video-container{-webkit-box-shadow:0 0 30px rgba(0,0,0,.3),0 0 8px -5px rgba(0,0,0,.3);box-shadow:0 0 30px rgba(0,0,0,.3),0 0 8px -5px rgba(0,0,0,.3);-webkit-border-radius:2px;border-radius:2px}.elementor-lightbox .elementor-video-container{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}@media (min-width:ELEMENTOR_SCREEN_TABLET_NEXT){.elementor-lightbox .elementor-video-container{width:75%}}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-lightbox .elementor-video-container{width:100%}}@media (min-width:768px) and (max-width:1024px){.elementor-lightbox .elementor-aspect-ratio-916 .elementor-video-container{width:70%}}.elementor-lightbox .elementor-swiper-button:focus{outline-width:1px}.elementor-lightbox .elementor-swiper-button-next,.elementor-lightbox .elementor-swiper-button-prev{height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:15%;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;font-size:var(--lightbox-navigation-icons-size)}.elementor-lightbox .elementor-swiper-button-prev{left:0}.elementor-lightbox .elementor-swiper-button-next{right:0}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-lightbox .elementor-swiper-button:focus{outline:none}.elementor-lightbox .elementor-swiper-button-next,.elementor-lightbox .elementor-swiper-button-prev{width:20%}.elementor-lightbox .elementor-swiper-button-next i,.elementor-lightbox .elementor-swiper-button-prev i{padding:10px;background-color:rgba(0,0,0,.5)}.elementor-lightbox .elementor-swiper-button-prev{left:0;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-lightbox .elementor-swiper-button-next{right:0;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}}.elementor-slideshow__counter{color:currentColor;font-size:.75em;width:-webkit-max-content;width:-moz-max-content;width:max-content}.elementor-slideshow__footer,.elementor-slideshow__header{position:absolute;left:0;width:100%;padding:15px 20px;-webkit-transition:.3s;-o-transition:.3s;transition:.3s}.elementor-slideshow__footer{color:var(--lightbox-text-color)}.elementor-slideshow__header{color:var(--lightbox-ui-color);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;font-size:var(--lightbox-header-icons-size);padding-right:1em;padding-left:2.6em;top:0;-webkit-box-align:center;-ms-flex-align:center;align-items:center;z-index:10}.elementor-slideshow__header>i{font-size:inherit;cursor:pointer;padding:.25em;margin:0 .35em}.elementor-slideshow__header>i:hover{color:var(--lightbox-ui-color-hover)}.elementor-slideshow__header .elementor-slideshow__counter{margin-left:auto}.elementor-slideshow__header .elementor-icon-share{z-index:5}.elementor-slideshow__share-menu{background-color:transparent;width:0;height:0;position:absolute;overflow:hidden;-webkit-transition:background-color .4s;-o-transition:background-color .4s;transition:background-color .4s}.elementor-slideshow__share-menu .elementor-slideshow__share-links a{color:#2c2c2c}.elementor-slideshow__share-links{display:block;position:absolute;min-width:200px;left:2.8em;top:3em;background-color:#fff;-webkit-border-radius:3px;border-radius:3px;padding:14px 20px;-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);opacity:0;-webkit-transform-origin:90% 10%;-ms-transform-origin:90% 10%;transform-origin:90% 10%;-webkit-transition:all .25s .1s;-o-transition:all .25s .1s;transition:all .25s .1s;-webkit-box-shadow:0 4px 15px rgba(0,0,0,.3);box-shadow:0 4px 15px rgba(0,0,0,.3)}.elementor-slideshow__share-links a{text-align:right;color:#55595c;font-size:12px;line-height:2.5;display:block;opacity:0;-webkit-transition:opacity .5s .1s;-o-transition:opacity .5s .1s;transition:opacity .5s .1s}.elementor-slideshow__share-links a:hover{color:#000}.elementor-slideshow__share-links a i{font-size:1.25em;margin-left:.75em}.elementor-slideshow__share-links:before{content:"";display:block;position:absolute;top:1px;left:.5em;border:.45em solid transparent;border-bottom-color:#fff;-webkit-transform:translateY(-100%) scaleX(.7);-ms-transform:translateY(-100%) scaleX(.7);transform:translateY(-100%) scaleX(.7)}.elementor-slideshow__footer{bottom:0;z-index:5;position:fixed}.elementor-slideshow__description,.elementor-slideshow__title{margin:0}.elementor-slideshow__title{font-size:16px;font-weight:700}.elementor-slideshow__description{font-size:14px}.elementor-slideshow--ui-hidden .elementor-slideshow__footer,.elementor-slideshow--ui-hidden .elementor-slideshow__header{opacity:0;pointer-events:none}.elementor-slideshow--ui-hidden .elementor-swiper-button-next,.elementor-slideshow--ui-hidden .elementor-swiper-button-prev{opacity:0}.elementor-slideshow--fullscreen-mode .elementor-video-container{width:100%}.elementor-slideshow--zoom-mode .elementor-slideshow__footer,.elementor-slideshow--zoom-mode .elementor-slideshow__header{background-color:rgba(0,0,0,.5)}.elementor-slideshow--zoom-mode .elementor-swiper-button-next,.elementor-slideshow--zoom-mode .elementor-swiper-button-prev{opacity:0;pointer-events:none}.elementor-slideshow--share-mode .elementor-slideshow__share-menu{top:0;left:0;width:100vw;height:100vh;opacity:1;cursor:default;background-color:rgba(0,0,0,.5)}.elementor-slideshow--share-mode .elementor-slideshow__share-links{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}.elementor-slideshow--share-mode .elementor-slideshow__share-links,.elementor-slideshow--share-mode .elementor-slideshow__share-links a{opacity:1}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-twitter{color:#1da1f2}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-facebook{color:#3b5998}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-pinterest{color:#bd081c}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-download-bold{color:#a4afb7}.elementor-slideshow--share-mode .eicon-share-arrow{z-index:2}.animated{-webkit-animation-duration:1.25s;animation-duration:1.25s}.animated.animated-slow{-webkit-animation-duration:2s;animation-duration:2s}.animated.animated-fast{-webkit-animation-duration:.75s;animation-duration:.75s}.animated.infinite{-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}.animated.reverse{animation-direction:reverse;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}@media (prefers-reduced-motion:reduce){.animated{-webkit-animation:none;animation:none}}.elementor-shape{overflow:hidden;position:absolute;left:0;width:100%;line-height:0;direction:ltr}.elementor-shape-top{top:-1px}.elementor-shape-top:not([data-negative=false]) svg{z-index:-1}.elementor-shape-bottom{bottom:-1px}.elementor-shape-bottom:not([data-negative=true]) svg{z-index:-1}.elementor-shape[data-negative=false].elementor-shape-bottom,.elementor-shape[data-negative=true].elementor-shape-top{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.elementor-shape svg{display:block;width:calc(100% + 1.3px);position:relative;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.elementor-shape .elementor-shape-fill{fill:#fff;-webkit-transform-origin:center;-ms-transform-origin:center;transform-origin:center;-webkit-transform:rotateY(0deg);transform:rotateY(0deg)}#wp-admin-bar-elementor_edit_page .ab-submenu .ab-item{display:-webkit-box;display:-ms-flexbox;display:flex;width:200px}#wp-admin-bar-elementor_edit_page .elementor-edit-link-title{white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;width:100%}#wp-admin-bar-elementor_edit_page .elementor-edit-link-type{background:#55595c;font-size:11px;line-height:9px;margin-top:6px;padding:4px 8px;-webkit-border-radius:3px;border-radius:3px}.page-template-elementor_canvas.elementor-page:before{display:none}.elementor-post__thumbnail__link{-webkit-transition:none;-o-transition:none;transition:none}#left-area ul.elementor-icon-list-items,.elementor-edit-area .elementor-element ul.elementor-icon-list-items,.elementor .elementor-element ul.elementor-icon-list-items{padding:0}#wpadminbar *{font-style:normal}.e--ua-appleWebkit.rtl{--flex-right:flex-start}.e--ua-appleWebkit .elementor-share-buttons--align-right,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-right{--justify-content:var(--flex-right,flex-end)}.e--ua-appleWebkit .elementor-share-buttons--align-center,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-center{--justify-content:center}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-justify .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-right .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-right .elementor-grid{width:auto;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:var(--justify-content,space-between);-ms-flex-pack:var(--justify-content,space-between);justify-content:var(--justify-content,space-between);margin-left:calc(-.5 * var(--grid-column-gap));margin-right:calc(-.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-justify .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-right .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-right .elementor-grid-item{margin-left:calc(.5 * var(--grid-column-gap));margin-right:calc(.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid{display:inline-block}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid-item{margin-left:0;margin-right:0}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.e--ua-appleWebkit .elementor-share-buttons-tablet--align-right,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-tablet-right{--justify-content:var(--flex-right,flex-end)}.e--ua-appleWebkit .elementor-share-buttons-tablet--align-center,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-tablet-center{--justify-content:center}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-justify .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-right .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-right .elementor-grid{width:auto;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:var(--justify-content,space-between);-ms-flex-pack:var(--justify-content,space-between);justify-content:var(--justify-content,space-between);margin-left:calc(-.5 * var(--grid-column-gap));margin-right:calc(-.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-justify .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-right .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-right .elementor-grid-item{margin-left:calc(.5 * var(--grid-column-gap));margin-right:calc(.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid{display:inline-block}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid-item{margin-left:0;margin-right:0}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.e--ua-appleWebkit .elementor-share-buttons-mobile--align-right,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-mobile-right{--justify-content:var(--flex-right,flex-end)}.e--ua-appleWebkit .elementor-share-buttons-mobile--align-center,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-mobile-center{--justify-content:center}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-justify .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-right .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-right .elementor-grid{width:auto;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:var(--justify-content,space-between);-ms-flex-pack:var(--justify-content,space-between);justify-content:var(--justify-content,space-between);margin-left:calc(-.5 * var(--grid-column-gap));margin-right:calc(-.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-justify .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-right .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-right .elementor-grid-item{margin-left:calc(.5 * var(--grid-column-gap));margin-right:calc(.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid{display:inline-block}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid-item{margin-left:0;margin-right:0}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor .elementor-hidden-mobile,.elementor .elementor-hidden-phone{display:none}}@media (min-width:ELEMENTOR_SCREEN_MOBILE_EXTRA_MIN) and (max-width:ELEMENTOR_SCREEN_MOBILE_EXTRA_MAX){.elementor .elementor-hidden-mobile_extra{display:none}}@media (min-width:ELEMENTOR_SCREEN_TABLET_MIN) and (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor .elementor-hidden-tablet{display:none}}@media (min-width:ELEMENTOR_SCREEN_TABLET_EXTRA_MIN) and (max-width:ELEMENTOR_SCREEN_TABLET_EXTRA_MAX){.elementor .elementor-hidden-tablet_extra{display:none}}@media (min-width:ELEMENTOR_SCREEN_LAPTOP_MIN) and (max-width:ELEMENTOR_SCREEN_LAPTOP_MAX){.elementor .elementor-hidden-laptop{display:none}}@media (min-width:ELEMENTOR_SCREEN_DESKTOP_MIN) and (max-width:ELEMENTOR_SCREEN_DESKTOP_MAX){.elementor .elementor-hidden-desktop{display:none}}@media (min-width:ELEMENTOR_SCREEN_WIDESCREEN_MIN){.elementor .elementor-hidden-widescreen{display:none}}.elementor-widget-text-path{font-size:20px;text-align:var(--alignment,right)}.elementor-widget-text-path svg{width:var(--width);max-width:100%;height:auto;overflow:visible;word-spacing:var(--word-spacing);-webkit-transform:rotate(var(--rotate,0)) scaleX(var(--scale-x,1)) scaleY(var(--scale-y,1));-ms-transform:rotate(var(--rotate,0)) scaleX(var(--scale-x,1)) scaleY(var(--scale-y,1));transform:rotate(var(--rotate,0)) scaleX(var(--scale-x,1)) scaleY(var(--scale-y,1))}.elementor-widget-text-path svg path{vector-effect:non-scaling-stroke;fill:var(--path-fill,transparent);stroke:var(--stroke-color,transparent);stroke-width:var(--stroke-width,1px);-webkit-transition:var(--stroke-transition) stroke,var(--stroke-transition) fill;-o-transition:var(--stroke-transition) stroke,var(--stroke-transition) fill;transition:var(--stroke-transition) stroke,var(--stroke-transition) fill}.elementor-widget-text-path svg:hover path{--path-fill:var(--path-fill-hover);--stroke-color:var(--stroke-color-hover);--stroke-width:var(--stroke-width-hover)}.elementor-widget-text-path svg text{--fill:var(--text-color);fill:var(--fill);direction:var(--direction,rtl);-webkit-transition:var(--transition) stroke,var(--transition) stroke-width,var(--transition) fill;-o-transition:var(--transition) stroke,var(--transition) stroke-width,var(--transition) fill;transition:var(--transition) stroke,var(--transition) stroke-width,var(--transition) fill}.elementor-widget-text-path svg text:hover{--color:var(--text-color-hover,var(--text-color));--fill:var(--color);color:var(--color)}assets/css/templates/frontend-lite.min.css000064400000270022151327220410014702 0ustar00.dialog-widget-content{background-color:#fff;position:absolute;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);overflow:hidden}.dialog-message{font-size:12px;line-height:1.5;-webkit-box-sizing:border-box;box-sizing:border-box}.dialog-type-lightbox{position:fixed;height:100%;width:100%;bottom:0;left:0;background-color:rgba(0,0,0,.8);z-index:9999;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.dialog-type-lightbox .dialog-widget-content{margin:auto;width:375px}.dialog-type-lightbox .dialog-header{font-size:15px;color:#495157;padding:30px 0 10px;font-weight:500}.dialog-type-lightbox .dialog-message{padding:0 30px 30px;min-height:50px}.dialog-type-lightbox:not(.elementor-popup-modal) .dialog-header,.dialog-type-lightbox:not(.elementor-popup-modal) .dialog-message{text-align:center}.dialog-type-lightbox .dialog-buttons-wrapper{border-top:1px solid #e6e9ec;text-align:center}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;width:50%;border:none;background:none;color:#6d7882;font-size:15px;cursor:pointer;padding:13px 0;outline:0}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button:hover{background-color:#f4f6f7}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button.dialog-ok{color:#b01b1b}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button.dialog-take_over{color:#39b54a}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button:active{background-color:rgba(230,233,236,.5)}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button::-moz-focus-inner{border:0}.dialog-close-button{cursor:pointer;position:absolute;margin-top:15px;right:15px;font-size:15px;line-height:1}.dialog-close-button:not(:hover){opacity:.4}.dialog-alert-widget .dialog-buttons-wrapper>button{width:100%}.dialog-confirm-widget .dialog-button:first-child{border-right:1px solid #e6e9ec}.dialog-prevent-scroll{overflow:hidden;max-height:100vh}@media (min-width:1024px){body.admin-bar .dialog-lightbox-widget{height:calc(100vh - 32px)}}@media (max-width:1024px){body.admin-bar .dialog-type-lightbox{position:-webkit-sticky;position:sticky;height:100vh}}.elementor-aspect-ratio-219 .elementor-fit-aspect-ratio{padding-bottom:42.8571%}.elementor-aspect-ratio-169 .elementor-fit-aspect-ratio{padding-bottom:56.25%}.elementor-aspect-ratio-43 .elementor-fit-aspect-ratio{padding-bottom:75%}.elementor-aspect-ratio-32 .elementor-fit-aspect-ratio{padding-bottom:66.6666%}.elementor-aspect-ratio-11 .elementor-fit-aspect-ratio{padding-bottom:100%}.elementor-aspect-ratio-916 .elementor-fit-aspect-ratio{padding-bottom:177.8%}.elementor-fit-aspect-ratio{position:relative;height:0}.elementor-fit-aspect-ratio iframe{position:absolute;top:0;left:0;height:100%;width:100%;border:0;background-color:#000}.elementor-fit-aspect-ratio video{width:100%}.flatpickr-calendar{width:280px}.flatpickr-calendar .flatpickr-current-month span.cur-month{font-weight:300}.flatpickr-calendar .dayContainer{width:280px;min-width:280px;max-width:280px}.flatpickr-calendar .flatpickr-days{width:280px}.flatpickr-calendar .flatpickr-day{max-width:37px;height:37px;line-height:37px}.elementor-templates-modal .dialog-widget-content{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;background-color:#f1f3f5;width:100%}@media (max-width:1439px){.elementor-templates-modal .dialog-widget-content{max-width:990px}}@media (min-width:1440px){.elementor-templates-modal .dialog-widget-content{max-width:1200px}}.elementor-templates-modal .dialog-header{padding:0;z-index:1}.elementor-templates-modal .dialog-buttons-wrapper,.elementor-templates-modal .dialog-header{background-color:#fff;-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1);position:relative}.elementor-templates-modal .dialog-buttons-wrapper{border:none;display:none;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;padding:5px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button{height:40px;margin-left:5px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success{padding:12px 36px;color:#fff;width:auto;font-size:15px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success:hover{background-color:#39b54a}.elementor-templates-modal .dialog-message{height:750px;max-height:85vh;overflow:auto;padding-top:25px}.elementor-templates-modal .dialog-content{height:100%}.elementor-templates-modal .dialog-loading{display:none}.elementor-templates-modal__header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;height:50px}.elementor-templates-modal__header__logo{line-height:1;text-transform:uppercase;font-weight:700;cursor:pointer}.elementor-templates-modal__header__logo-area{text-align:left;padding-left:15px}.elementor-templates-modal__header__logo-area>*{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-templates-modal__header__logo__icon-wrapper{margin-right:10px;font-size:12px}.elementor-templates-modal__header__logo__title{padding-top:2px}.elementor-templates-modal__header__items-area{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-templates-modal__header__item{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-templates-modal__header__item>i{font-size:20px;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;cursor:pointer}.elementor-templates-modal__header__item>i:not(:hover){color:#a4afb7}.elementor-templates-modal__header__close--normal{width:47px;border-left:1px solid #e6e9ec}.elementor-templates-modal__header__close--normal i{font-size:18px}.elementor-templates-modal__header__close--skip{padding:10px 10px 10px 20px;margin-right:10px;color:#fff;background-color:#a4afb7;font-size:11px;font-weight:400;line-height:1;text-transform:uppercase;-webkit-border-radius:2px;border-radius:2px;cursor:pointer}.elementor-templates-modal__header__close--skip>i{font-size:inherit;padding-left:10px;margin-left:15px;border-left:1px solid}.elementor-templates-modal__header__close--skip>i:not(:hover){color:#fff}.elementor-templates-modal__sidebar{-ms-flex-negative:0;flex-shrink:0;width:25%;background-color:hsla(0,0%,100%,.3)}.elementor-templates-modal__content{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-webkit-box-shadow:0 0 13px inset rgba(0,0,0,.05);box-shadow:inset 0 0 13px rgba(0,0,0,.05)}#wpadminbar #wp-admin-bar-elementor_edit_page .elementor-general-section+.elementor-second-section{border-top:1px solid #464b50;margin-top:6px}.elementor-hidden{display:none}.elementor-screen-only,.screen-reader-text,.screen-reader-text span,.ui-helper-hidden-accessible{position:absolute;top:-10000em;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.elementor-clearfix:after{content:"";display:block;clear:both;width:0;height:0}.e-logo-wrapper{background:#93003c;display:inline-block;padding:.75em;-webkit-border-radius:50%;border-radius:50%;line-height:1}.e-logo-wrapper i{color:#fff;font-size:1em}.elementor{-webkit-hyphens:manual;-ms-hyphens:manual;hyphens:manual}.elementor *,.elementor :after,.elementor :before{-webkit-box-sizing:border-box;box-sizing:border-box}.elementor a{-webkit-box-shadow:none;box-shadow:none;text-decoration:none}.elementor hr{margin:0;background-color:transparent}.elementor img{height:auto;max-width:100%;border:none;-webkit-border-radius:0;border-radius:0;-webkit-box-shadow:none;box-shadow:none}.elementor .elementor-widget:not(.elementor-widget-text-editor):not(.elementor-widget-theme-post-content) figure{margin:0}.elementor embed,.elementor iframe,.elementor object,.elementor video{max-width:100%;width:100%;margin:0;line-height:1;border:none}.elementor .elementor-custom-embed{line-height:0}.elementor .elementor-background,.elementor .elementor-background-holder,.elementor .elementor-background-video-container{height:100%;width:100%;top:0;left:0;position:absolute;overflow:hidden;z-index:0;direction:ltr}.elementor .elementor-background-video-container{-webkit-transition:opacity 1s;-o-transition:opacity 1s;transition:opacity 1s;pointer-events:none}.elementor .elementor-background-video-container.elementor-loading{opacity:0}.elementor .elementor-background-video-embed{max-width:none}.elementor .elementor-background-video,.elementor .elementor-background-video-embed,.elementor .elementor-background-video-hosted{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor .elementor-background-video{max-width:none}.elementor .elementor-html5-video{-o-object-fit:cover;object-fit:cover}.elementor .elementor-background-overlay,.elementor .elementor-background-slideshow{height:100%;width:100%;top:0;left:0;position:absolute}.elementor .elementor-background-slideshow{z-index:0}.elementor .elementor-background-slideshow__slide__image{width:100%;height:100%;background-position:50%;-webkit-background-size:cover;background-size:cover}.elementor-widget-wrap>.elementor-element.elementor-absolute{position:absolute}.elementor-column>.elementor-widget-wrap>.elementor-element.elementor-absolute{padding:inherit;-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-widget-wrap>.elementor-element.elementor-fixed{position:fixed}.elementor-widget-wrap .elementor-element.elementor-widget__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget__width-initial{max-width:100%}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-initial{max-width:100%}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-initial{max-width:100%}}.elementor-element.elementor-absolute,.elementor-element.elementor-fixed{z-index:1}.elementor-invisible{visibility:hidden}.elementor-align-center{text-align:center}.elementor-align-center .elementor-button{width:auto}.elementor-align-right{text-align:right}.elementor-align-right .elementor-button{width:auto}.elementor-align-left{text-align:left}.elementor-align-left .elementor-button{width:auto}.elementor-align-justify .elementor-button{width:100%}.elementor-custom-embed-play{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor-custom-embed-play i{font-size:100px;color:#fff;text-shadow:1px 0 6px rgba(0,0,0,.3)}.elementor-custom-embed-play svg{height:100px;width:100px;fill:#fff;-webkit-filter:drop-shadow(1px 0 6px rgba(0,0,0,.3));filter:drop-shadow(1px 0 6px rgba(0,0,0,.3))}.elementor-custom-embed-play i,.elementor-custom-embed-play svg{opacity:.8;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-custom-embed-play.elementor-playing i{font-family:eicons;-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.elementor-custom-embed-play.elementor-playing i:before{content:"\e8fb"}.elementor-tag{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex}.elementor-ken-burns{-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;-o-transition-property:transform;transition-property:transform;transition-property:transform,-webkit-transform;-webkit-transition-duration:10s;-o-transition-duration:10s;transition-duration:10s;-webkit-transition-timing-function:linear;-o-transition-timing-function:linear;transition-timing-function:linear}.elementor-ken-burns--out{-webkit-transform:scale(1.3);-ms-transform:scale(1.3);transform:scale(1.3)}.elementor-ken-burns--active{-webkit-transition-duration:20s;-o-transition-duration:20s;transition-duration:20s}.elementor-ken-burns--active.elementor-ken-burns--out{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}.elementor-ken-burns--active.elementor-ken-burns--in{-webkit-transform:scale(1.3);-ms-transform:scale(1.3);transform:scale(1.3)}@media (min-width:ELEMENTOR_SCREEN_WIDESCREEN_MIN){.elementor-widescreen-align-center{text-align:center}.elementor-widescreen-align-center .elementor-button{width:auto}.elementor-widescreen-align-right{text-align:right}.elementor-widescreen-align-right .elementor-button{width:auto}.elementor-widescreen-align-left{text-align:left}.elementor-widescreen-align-left .elementor-button{width:auto}.elementor-widescreen-align-justify .elementor-button{width:100%}}@media (max-width:ELEMENTOR_SCREEN_LAPTOP_MAX){.elementor-laptop-align-center{text-align:center}.elementor-laptop-align-center .elementor-button{width:auto}.elementor-laptop-align-right{text-align:right}.elementor-laptop-align-right .elementor-button{width:auto}.elementor-laptop-align-left{text-align:left}.elementor-laptop-align-left .elementor-button{width:auto}.elementor-laptop-align-justify .elementor-button{width:100%}}@media (max-width:ELEMENTOR_SCREEN_TABLET_EXTRA_MAX){.elementor-tablet_extra-align-center{text-align:center}.elementor-tablet_extra-align-center .elementor-button{width:auto}.elementor-tablet_extra-align-right{text-align:right}.elementor-tablet_extra-align-right .elementor-button{width:auto}.elementor-tablet_extra-align-left{text-align:left}.elementor-tablet_extra-align-left .elementor-button{width:auto}.elementor-tablet_extra-align-justify .elementor-button{width:100%}}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-tablet-align-center{text-align:center}.elementor-tablet-align-center .elementor-button{width:auto}.elementor-tablet-align-right{text-align:right}.elementor-tablet-align-right .elementor-button{width:auto}.elementor-tablet-align-left{text-align:left}.elementor-tablet-align-left .elementor-button{width:auto}.elementor-tablet-align-justify .elementor-button{width:100%}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_EXTRA_MAX){.elementor-mobile_extra-align-center{text-align:center}.elementor-mobile_extra-align-center .elementor-button{width:auto}.elementor-mobile_extra-align-right{text-align:right}.elementor-mobile_extra-align-right .elementor-button{width:auto}.elementor-mobile_extra-align-left{text-align:left}.elementor-mobile_extra-align-left .elementor-button{width:auto}.elementor-mobile_extra-align-justify .elementor-button{width:100%}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-mobile-align-center{text-align:center}.elementor-mobile-align-center .elementor-button{width:auto}.elementor-mobile-align-right{text-align:right}.elementor-mobile-align-right .elementor-button{width:auto}.elementor-mobile-align-left{text-align:left}.elementor-mobile-align-left .elementor-button{width:auto}.elementor-mobile-align-justify .elementor-button{width:100%}}#wpadminbar #wp-admin-bar-elementor_edit_page>.ab-item:before{content:"\e813";font-family:eicons;top:3px;font-size:18px}#wpadminbar #wp-admin-bar-elementor_inspector>.ab-item:before{content:"\f348";top:2px}:root{--page-title-display:block}.elementor-page-title,h1.entry-title{display:var(--page-title-display)}.elementor-section{position:relative}.elementor-section .elementor-container{display:-webkit-box;display:-ms-flexbox;display:flex;margin-right:auto;margin-left:auto;position:relative}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-section .elementor-container{-ms-flex-wrap:wrap;flex-wrap:wrap}}.elementor-section.elementor-section-boxed>.elementor-container{max-width:1140px}.elementor-section.elementor-section-stretched{position:relative;width:100%}.elementor-section.elementor-section-items-top>.elementor-container{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.elementor-section.elementor-section-items-middle>.elementor-container{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-section.elementor-section-items-bottom>.elementor-container{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}@media (min-width:ELEMENTOR_SCREEN_MOBILE_NEXT){.elementor-section.elementor-section-height-full{height:100vh}.elementor-section.elementor-section-height-full>.elementor-container{height:100%}}.elementor-bc-flex-widget .elementor-section-content-top>.elementor-container>.elementor-column>.elementor-widget-wrap{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.elementor-bc-flex-widget .elementor-section-content-middle>.elementor-container>.elementor-column>.elementor-widget-wrap{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-bc-flex-widget .elementor-section-content-bottom>.elementor-container>.elementor-column>.elementor-widget-wrap{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.elementor-row{width:100%;display:-webkit-box;display:-ms-flexbox;display:flex}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-row{-ms-flex-wrap:wrap;flex-wrap:wrap}}.elementor-widget-wrap{position:relative;width:100%;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-line-pack:start;align-content:flex-start}.elementor:not(.elementor-bc-flex-widget) .elementor-widget-wrap{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget-wrap>.elementor-element{width:100%}.elementor-widget{position:relative}.elementor-widget:not(:last-child){margin-bottom:20px}.elementor-widget:not(:last-child).elementor-absolute,.elementor-widget:not(:last-child).elementor-widget__width-auto,.elementor-widget:not(:last-child).elementor-widget__width-initial{margin-bottom:0}.elementor-column{min-height:1px}.elementor-column,.elementor-column-wrap{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-column-wrap{width:100%}.elementor-column-gap-narrow>.elementor-column>.elementor-element-populated{padding:5px}.elementor-column-gap-default>.elementor-column>.elementor-element-populated{padding:10px}.elementor-column-gap-extended>.elementor-column>.elementor-element-populated{padding:15px}.elementor-column-gap-wide>.elementor-column>.elementor-element-populated{padding:20px}.elementor-column-gap-wider>.elementor-column>.elementor-element-populated{padding:30px}.elementor-inner-section .elementor-column-gap-no .elementor-element-populated{padding:0}@media (min-width:ELEMENTOR_SCREEN_MOBILE_NEXT){.elementor-column.elementor-col-10,.elementor-column[data-col="10"]{width:10%}.elementor-column.elementor-col-11,.elementor-column[data-col="11"]{width:11.111%}.elementor-column.elementor-col-12,.elementor-column[data-col="12"]{width:12.5%}.elementor-column.elementor-col-14,.elementor-column[data-col="14"]{width:14.285%}.elementor-column.elementor-col-16,.elementor-column[data-col="16"]{width:16.666%}.elementor-column.elementor-col-20,.elementor-column[data-col="20"]{width:20%}.elementor-column.elementor-col-25,.elementor-column[data-col="25"]{width:25%}.elementor-column.elementor-col-30,.elementor-column[data-col="30"]{width:30%}.elementor-column.elementor-col-33,.elementor-column[data-col="33"]{width:33.333%}.elementor-column.elementor-col-40,.elementor-column[data-col="40"]{width:40%}.elementor-column.elementor-col-50,.elementor-column[data-col="50"]{width:50%}.elementor-column.elementor-col-60,.elementor-column[data-col="60"]{width:60%}.elementor-column.elementor-col-66,.elementor-column[data-col="66"]{width:66.666%}.elementor-column.elementor-col-70,.elementor-column[data-col="70"]{width:70%}.elementor-column.elementor-col-75,.elementor-column[data-col="75"]{width:75%}.elementor-column.elementor-col-80,.elementor-column[data-col="80"]{width:80%}.elementor-column.elementor-col-83,.elementor-column[data-col="83"]{width:83.333%}.elementor-column.elementor-col-90,.elementor-column[data-col="90"]{width:90%}.elementor-column.elementor-col-100,.elementor-column[data-col="100"]{width:100%}}@media (max-width:479px){.elementor-column.elementor-xs-10{width:10%}.elementor-column.elementor-xs-11{width:11.111%}.elementor-column.elementor-xs-12{width:12.5%}.elementor-column.elementor-xs-14{width:14.285%}.elementor-column.elementor-xs-16{width:16.666%}.elementor-column.elementor-xs-20{width:20%}.elementor-column.elementor-xs-25{width:25%}.elementor-column.elementor-xs-30{width:30%}.elementor-column.elementor-xs-33{width:33.333%}.elementor-column.elementor-xs-40{width:40%}.elementor-column.elementor-xs-50{width:50%}.elementor-column.elementor-xs-60{width:60%}.elementor-column.elementor-xs-66{width:66.666%}.elementor-column.elementor-xs-70{width:70%}.elementor-column.elementor-xs-75{width:75%}.elementor-column.elementor-xs-80{width:80%}.elementor-column.elementor-xs-83{width:83.333%}.elementor-column.elementor-xs-90{width:90%}.elementor-column.elementor-xs-100{width:100%}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-column.elementor-sm-10{width:10%}.elementor-column.elementor-sm-11{width:11.111%}.elementor-column.elementor-sm-12{width:12.5%}.elementor-column.elementor-sm-14{width:14.285%}.elementor-column.elementor-sm-16{width:16.666%}.elementor-column.elementor-sm-20{width:20%}.elementor-column.elementor-sm-25{width:25%}.elementor-column.elementor-sm-30{width:30%}.elementor-column.elementor-sm-33{width:33.333%}.elementor-column.elementor-sm-40{width:40%}.elementor-column.elementor-sm-50{width:50%}.elementor-column.elementor-sm-60{width:60%}.elementor-column.elementor-sm-66{width:66.666%}.elementor-column.elementor-sm-70{width:70%}.elementor-column.elementor-sm-75{width:75%}.elementor-column.elementor-sm-80{width:80%}.elementor-column.elementor-sm-83{width:83.333%}.elementor-column.elementor-sm-90{width:90%}.elementor-column.elementor-sm-100{width:100%}}@media (min-width:ELEMENTOR_SCREEN_MOBILE_NEXT) and (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-column.elementor-md-10{width:10%}.elementor-column.elementor-md-11{width:11.111%}.elementor-column.elementor-md-12{width:12.5%}.elementor-column.elementor-md-14{width:14.285%}.elementor-column.elementor-md-16{width:16.666%}.elementor-column.elementor-md-20{width:20%}.elementor-column.elementor-md-25{width:25%}.elementor-column.elementor-md-30{width:30%}.elementor-column.elementor-md-33{width:33.333%}.elementor-column.elementor-md-40{width:40%}.elementor-column.elementor-md-50{width:50%}.elementor-column.elementor-md-60{width:60%}.elementor-column.elementor-md-66{width:66.666%}.elementor-column.elementor-md-70{width:70%}.elementor-column.elementor-md-75{width:75%}.elementor-column.elementor-md-80{width:80%}.elementor-column.elementor-md-83{width:83.333%}.elementor-column.elementor-md-90{width:90%}.elementor-column.elementor-md-100{width:100%}}@media (min-width:ELEMENTOR_SCREEN_MOBILE_NEXT) and (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-reverse-tablet>.elementor-container>:first-child{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.elementor-reverse-tablet>.elementor-container>:nth-child(2){-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.elementor-reverse-tablet>.elementor-container>:nth-child(3){-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.elementor-reverse-tablet>.elementor-container>:nth-child(4){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.elementor-reverse-tablet>.elementor-container>:nth-child(5){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.elementor-reverse-tablet>.elementor-container>:nth-child(6){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-reverse-tablet>.elementor-container>:nth-child(7){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.elementor-reverse-tablet>.elementor-container>:nth-child(8){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.elementor-reverse-tablet>.elementor-container>:nth-child(9){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.elementor-reverse-tablet>.elementor-container>:nth-child(10){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-reverse-mobile>.elementor-container>:first-child{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.elementor-reverse-mobile>.elementor-container>:nth-child(2){-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.elementor-reverse-mobile>.elementor-container>:nth-child(3){-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.elementor-reverse-mobile>.elementor-container>:nth-child(4){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.elementor-reverse-mobile>.elementor-container>:nth-child(5){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.elementor-reverse-mobile>.elementor-container>:nth-child(6){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-reverse-mobile>.elementor-container>:nth-child(7){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.elementor-reverse-mobile>.elementor-container>:nth-child(8){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.elementor-reverse-mobile>.elementor-container>:nth-child(9){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.elementor-reverse-mobile>.elementor-container>:nth-child(10){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.elementor-column{width:100%}}ul.elementor-icon-list-items.elementor-inline-items{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}ul.elementor-icon-list-items.elementor-inline-items .elementor-inline-item{word-break:break-word}.elementor-grid{display:grid;grid-column-gap:var(--grid-column-gap);grid-row-gap:var(--grid-row-gap)}.elementor-grid .elementor-grid-item{min-width:0}.elementor-grid-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}@media (min-width:ELEMENTOR_SCREEN_WIDESCREEN_MIN){.elementor-grid-widescreen-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-widescreen-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-widescreen-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-widescreen-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-widescreen-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-widescreen-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-widescreen-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-widescreen-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-widescreen-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-widescreen-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-widescreen-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-widescreen-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-widescreen-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-widescreen-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:ELEMENTOR_SCREEN_LAPTOP_MAX){.elementor-grid-laptop-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-laptop-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-laptop-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-laptop-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-laptop-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-laptop-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-laptop-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-laptop-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-laptop-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-laptop-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-laptop-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-laptop-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-laptop-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-laptop-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:ELEMENTOR_SCREEN_TABLET_EXTRA_MAX){.elementor-grid-tablet_extra-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-tablet_extra-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-tablet_extra-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-tablet_extra-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-tablet_extra-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-tablet_extra-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-tablet_extra-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-tablet_extra-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-tablet_extra-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-tablet_extra-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-tablet_extra-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-tablet_extra-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-tablet_extra-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-tablet_extra-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-grid-tablet-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-tablet-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-tablet-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-tablet-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-tablet-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-tablet-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-tablet-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-tablet-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-tablet-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-tablet-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-tablet-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-tablet-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-tablet-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-tablet-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_EXTRA_MAX){.elementor-grid-mobile_extra-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-mobile_extra-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-mobile_extra-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-mobile_extra-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-mobile_extra-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-mobile_extra-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-mobile_extra-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-mobile_extra-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-mobile_extra-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-mobile_extra-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-mobile_extra-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-mobile_extra-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-mobile_extra-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-mobile_extra-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-grid-mobile-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-mobile-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-mobile-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-mobile-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-mobile-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-mobile-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-mobile-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-mobile-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-mobile-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-mobile-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-mobile-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-mobile-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-mobile-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-mobile-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (min-width:ELEMENTOR_SCREEN_DESKTOP_MIN){#elementor-device-mode:after{content:"desktop"}}@media (min-width:ELEMENTOR_SCREEN_WIDESCREEN_MIN){#elementor-device-mode:after{content:"widescreen"}}@media (max-width:ELEMENTOR_SCREEN_LAPTOP_MAX){#elementor-device-mode:after{content:"laptop"}}@media (max-width:ELEMENTOR_SCREEN_TABLET_EXTRA_MAX){#elementor-device-mode:after{content:"tablet_extra"}}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){#elementor-device-mode:after{content:"tablet"}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_EXTRA_MAX){#elementor-device-mode:after{content:"mobile_extra"}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){#elementor-device-mode:after{content:"mobile"}}[class*=" eicon-"],[class^=eicon]{display:inline-block;font-family:eicons;font-size:inherit;font-weight:400;font-style:normal;font-variant:normal;line-height:1;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@-webkit-keyframes eicon-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes eicon-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.eicon-animation-spin{-webkit-animation:eicon-spin 2s linear infinite;animation:eicon-spin 2s linear infinite}.eicon-loading:before{content:"\e8fb"}.eicon-menu-bar:before{content:"\e816"}.eicon-chevron-right:before{content:"\e87d"}.eicon-chevron-left:before{content:"\e87e"}.eicon-close:before{content:"\e87f"}.eicon-share-arrow:before{content:"\e96c"}.eicon-zoom-in:before{content:"\e882"}.eicon-zoom-in-bold:before{content:"\e92e"}.eicon-zoom-out-bold:before{content:"\e943"}.eicon-frame-expand:before{content:"\e95c"}.eicon-frame-minimize:before{content:"\e95d"}.eicon-play:before{content:"\e89d"}.eicon-facebook:before{content:"\e959"}.eicon-twitter:before{content:"\e95a"}.eicon-pinterest:before{content:"\e95b"}.eicon-download-bold:before{content:"\e96b"}.eicon-caret-down:before{content:"\e92a"}.elementor-form-fields-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group .elementor-field-subgroup,.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group>.elementor-select-wrapper,.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group>input,.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group>textarea{-ms-flex-preferred-size:100%;flex-basis:100%;max-width:100%}.elementor-form-fields-wrapper.elementor-labels-inline>.elementor-field-group .elementor-select-wrapper,.elementor-form-fields-wrapper.elementor-labels-inline>.elementor-field-group>input{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-field-group{-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-field-group.elementor-field-type-submit{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.elementor-field-group .elementor-field-textual{width:100%;max-width:100%;border:1px solid #818a91;background-color:transparent;color:#373a3c;vertical-align:middle;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-field-group .elementor-field-textual:focus{-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.1) inset;box-shadow:inset 0 0 0 1px rgba(0,0,0,.1);outline:0}.elementor-field-group .elementor-field-textual::-webkit-input-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual:-ms-input-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual:-moz-placeholder,.elementor-field-group .elementor-field-textual::-moz-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual::-ms-input-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual::placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-select-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;position:relative;width:100%}.elementor-field-group .elementor-select-wrapper select{appearance:none;-webkit-appearance:none;-moz-appearance:none;color:inherit;font-size:inherit;font-family:inherit;font-weight:inherit;font-style:inherit;text-transform:inherit;letter-spacing:inherit;line-height:inherit;-ms-flex-preferred-size:100%;flex-basis:100%;padding-right:20px}.elementor-field-group .elementor-select-wrapper:before{content:"\e92a";font-family:eicons;font-size:15px;position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);right:10px;pointer-events:none;text-shadow:0 0 3px rgba(0,0,0,.3)}.elementor-field-group.elementor-field-type-select-multiple .elementor-select-wrapper:before{content:""}.elementor-field-subgroup{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-field-subgroup .elementor-field-option label{display:inline-block}.elementor-field-subgroup.elementor-subgroup-inline .elementor-field-option{padding-right:10px}.elementor-field-subgroup:not(.elementor-subgroup-inline) .elementor-field-option{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option label,.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option label,.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option label{display:inline}.elementor-field-label{cursor:pointer}.elementor-mark-required .elementor-field-label:after{content:"*";color:red;padding-left:.2em}.elementor-field-textual{line-height:1.4;font-size:15px;min-height:40px;padding:5px 14px;-webkit-border-radius:3px;border-radius:3px}.elementor-field-textual.elementor-size-xs{font-size:13px;min-height:33px;padding:4px 12px;-webkit-border-radius:2px;border-radius:2px}.elementor-field-textual.elementor-size-md{font-size:16px;min-height:47px;padding:6px 16px;-webkit-border-radius:4px;border-radius:4px}.elementor-field-textual.elementor-size-lg{font-size:18px;min-height:59px;padding:7px 20px;-webkit-border-radius:5px;border-radius:5px}.elementor-field-textual.elementor-size-xl{font-size:20px;min-height:72px;padding:8px 24px;-webkit-border-radius:6px;border-radius:6px}.elementor-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-button-align-stretch .e-form__buttons__wrapper{-ms-flex-preferred-size:50%;flex-basis:50%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-button-align-stretch .e-form__buttons__wrapper__button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-button-align-center .e-form__buttons,.elementor-button-align-center .elementor-field-type-submit{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-button-align-start .e-form__buttons,.elementor-button-align-start .elementor-field-type-submit{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-button-align-end .e-form__buttons,.elementor-button-align-end .elementor-field-type-submit{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:initial;flex-basis:auto}.elementor-button-align-center .e-form__buttons__wrapper,.elementor-button-align-end .e-form__buttons__wrapper,.elementor-button-align-start .e-form__buttons__wrapper{-webkit-box-flex:initial;-ms-flex-positive:initial;flex-grow:0}.elementor-button-align-center .e-form__buttons__wrapper,.elementor-button-align-center .e-form__buttons__wrapper__button,.elementor-button-align-end .e-form__buttons__wrapper,.elementor-button-align-end .e-form__buttons__wrapper__button,.elementor-button-align-start .e-form__buttons__wrapper,.elementor-button-align-start .e-form__buttons__wrapper__button{-ms-flex-preferred-size:initial;flex-basis:auto}@media screen and (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-tablet-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-tablet-button-align-stretch .e-form__buttons__wrapper{-ms-flex-preferred-size:50%;flex-basis:50%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-tablet-button-align-stretch .e-form__buttons__wrapper__button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-tablet-button-align-center .e-form__buttons,.elementor-tablet-button-align-center .elementor-field-type-submit{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-tablet-button-align-start .e-form__buttons,.elementor-tablet-button-align-start .elementor-field-type-submit{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-tablet-button-align-end .e-form__buttons,.elementor-tablet-button-align-end .elementor-field-type-submit{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-tablet-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-tablet-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-tablet-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:initial;flex-basis:auto}.elementor-tablet-button-align-center .e-form__buttons__wrapper,.elementor-tablet-button-align-end .e-form__buttons__wrapper,.elementor-tablet-button-align-start .e-form__buttons__wrapper{-webkit-box-flex:initial;-ms-flex-positive:initial;flex-grow:0}.elementor-tablet-button-align-center .e-form__buttons__wrapper,.elementor-tablet-button-align-center .e-form__buttons__wrapper__button,.elementor-tablet-button-align-end .e-form__buttons__wrapper,.elementor-tablet-button-align-end .e-form__buttons__wrapper__button,.elementor-tablet-button-align-start .e-form__buttons__wrapper,.elementor-tablet-button-align-start .e-form__buttons__wrapper__button{-ms-flex-preferred-size:initial;flex-basis:auto}}@media screen and (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-mobile-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-mobile-button-align-stretch .e-form__buttons__wrapper{-ms-flex-preferred-size:50%;flex-basis:50%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-mobile-button-align-stretch .e-form__buttons__wrapper__button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-mobile-button-align-center .e-form__buttons,.elementor-mobile-button-align-center .elementor-field-type-submit{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-mobile-button-align-start .e-form__buttons,.elementor-mobile-button-align-start .elementor-field-type-submit{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-mobile-button-align-end .e-form__buttons,.elementor-mobile-button-align-end .elementor-field-type-submit{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-mobile-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-mobile-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-mobile-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:initial;flex-basis:auto}.elementor-mobile-button-align-center .e-form__buttons__wrapper,.elementor-mobile-button-align-end .e-form__buttons__wrapper,.elementor-mobile-button-align-start .e-form__buttons__wrapper{-webkit-box-flex:initial;-ms-flex-positive:initial;flex-grow:0}.elementor-mobile-button-align-center .e-form__buttons__wrapper,.elementor-mobile-button-align-center .e-form__buttons__wrapper__button,.elementor-mobile-button-align-end .e-form__buttons__wrapper,.elementor-mobile-button-align-end .e-form__buttons__wrapper__button,.elementor-mobile-button-align-start .e-form__buttons__wrapper,.elementor-mobile-button-align-start .e-form__buttons__wrapper__button{-ms-flex-preferred-size:initial;flex-basis:auto}}.elementor-error .elementor-field{border-color:#d9534f}.elementor-error .help-inline{color:#d9534f;font-size:.9em}.elementor-message{margin:10px 0;font-size:1em;line-height:1}.elementor-message:before{content:"\e90e";display:inline-block;font-family:eicons;font-weight:400;font-style:normal;vertical-align:middle;margin-right:5px}.elementor-message.elementor-message-danger{color:#d9534f}.elementor-message.elementor-message-danger:before{content:"\e87f"}.elementor-message.form-message-success{color:#5cb85c}.elementor-form .elementor-button{padding-top:0;padding-bottom:0;border:none}.elementor-form .elementor-button>span{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-form .elementor-button.elementor-size-xs{min-height:33px}.elementor-form .elementor-button.elementor-size-sm{min-height:40px}.elementor-form .elementor-button.elementor-size-md{min-height:47px}.elementor-form .elementor-button.elementor-size-lg{min-height:59px}.elementor-form .elementor-button.elementor-size-xl{min-height:72px}.elementor-element .elementor-widget-container{-webkit-transition:background .3s,border .3s,-webkit-border-radius .3s,-webkit-box-shadow .3s;transition:background .3s,border .3s,-webkit-border-radius .3s,-webkit-box-shadow .3s;-o-transition:background .3s,border .3s,border-radius .3s,box-shadow .3s;transition:background .3s,border .3s,border-radius .3s,box-shadow .3s;transition:background .3s,border .3s,border-radius .3s,box-shadow .3s,-webkit-border-radius .3s,-webkit-box-shadow .3s}.elementor-button{display:inline-block;line-height:1;background-color:#818a91;font-size:15px;padding:12px 24px;-webkit-border-radius:3px;border-radius:3px;color:#fff;fill:#fff;text-align:center;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.elementor-button:focus,.elementor-button:hover,.elementor-button:visited{color:#fff}.elementor-button-content-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-button-icon{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-button-icon svg{width:1em;height:auto}.elementor-button-icon .e-font-icon-svg{height:1em}.elementor-button-text{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10;display:inline-block}.elementor-button.elementor-size-xs{font-size:13px;padding:10px 20px;-webkit-border-radius:2px;border-radius:2px}.elementor-button.elementor-size-md{font-size:16px;padding:15px 30px;-webkit-border-radius:4px;border-radius:4px}.elementor-button.elementor-size-lg{font-size:18px;padding:20px 40px;-webkit-border-radius:5px;border-radius:5px}.elementor-button.elementor-size-xl{font-size:20px;padding:25px 50px;-webkit-border-radius:6px;border-radius:6px}.elementor-button .elementor-align-icon-right{margin-left:5px;-webkit-box-ordinal-group:16;-ms-flex-order:15;order:15}.elementor-button .elementor-align-icon-left{margin-right:5px;-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-button span{text-decoration:inherit}.elementor-menu-cart__toggle .elementor-button-icon{-webkit-box-ordinal-group:16;-ms-flex-order:15;order:15}.elementor-element.elementor-button-info .elementor-button{background-color:#5bc0de}.elementor-element.elementor-button-success .elementor-button{background-color:#5cb85c}.elementor-element.elementor-button-warning .elementor-button{background-color:#f0ad4e}.elementor-element.elementor-button-danger .elementor-button{background-color:#d9534f}.elementor-widget-button .elementor-button .elementor-button-info{background-color:#5bc0de}.elementor-widget-button .elementor-button .elementor-button-success{background-color:#5cb85c}.elementor-widget-button .elementor-button .elementor-button-warning{background-color:#f0ad4e}.elementor-widget-button .elementor-button .elementor-button-danger{background-color:#d9534f}.elementor-tab-title a{color:inherit}.elementor-view-stacked .elementor-icon{padding:.5em;background-color:#818a91;color:#fff;fill:#fff}.elementor-view-framed .elementor-icon{padding:.5em;color:#818a91;border:3px solid #818a91;background-color:transparent}.elementor-icon{display:inline-block;line-height:1;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;color:#818a91;font-size:50px;text-align:center}.elementor-icon:hover{color:#818a91}.elementor-icon i,.elementor-icon svg{width:1em;height:1em;position:relative;display:block}.elementor-icon i:before,.elementor-icon svg:before{position:absolute;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.elementor-icon i.fad{width:auto}.elementor-shape-circle .elementor-icon{-webkit-border-radius:50%;border-radius:50%}.slick-slider{-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-ms-touch-action:pan-y;touch-action:pan-y;-webkit-tap-highlight-color:transparent}.slick-list,.slick-slider{position:relative;display:block}.slick-list{overflow:hidden;margin:0;padding:0}.slick-list:focus{outline:none}.slick-list.dragging{cursor:pointer}.slick-slider .slick-list,.slick-slider .slick-track{-webkit-transform:translateZ(0);transform:translateZ(0)}.slick-track{position:relative;left:0;top:0;display:block}.slick-track:after,.slick-track:before{content:"";display:table}.slick-track:after{clear:both}.slick-loading .slick-track{visibility:hidden}.slick-slide{float:left;height:100%;min-height:1px;display:none}.elementor-slick-slider[dir=rtl] .slick-slide{float:right}.slick-slide img{display:block}.slick-slide.slick-loading img{display:none}.slick-slide.dragging img{pointer-events:none}.slick-initialized .slick-slide{display:block}.slick-loading .slick-slide{visibility:hidden}.slick-vertical .slick-slide{display:block;height:auto;border:1px solid transparent}.slick-arrow.slick-hidden{display:none}.elementor-slick-slider .slick-loading .slick-list{background:#fff}.elementor-slick-slider .slick-loading .slick-list:after{content:"\e8fb";font-family:eicons;position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite;font-size:25px;color:#a4afb7}.elementor-slick-slider .slick-next,.elementor-slick-slider .slick-prev{font-size:0;line-height:0;position:absolute;top:50%;display:block;width:20px;padding:0;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);cursor:pointer;color:transparent;border:none;outline:none;background:transparent}.elementor-slick-slider .slick-next:focus,.elementor-slick-slider .slick-next:hover,.elementor-slick-slider .slick-prev:focus,.elementor-slick-slider .slick-prev:hover{color:transparent;outline:none;background:transparent}.elementor-slick-slider .slick-next:focus:before,.elementor-slick-slider .slick-next:hover:before,.elementor-slick-slider .slick-prev:focus:before,.elementor-slick-slider .slick-prev:hover:before{opacity:1}.elementor-slick-slider .slick-next.slick-disabled:before,.elementor-slick-slider .slick-prev.slick-disabled:before{opacity:.25}.elementor-slick-slider .slick-next:before,.elementor-slick-slider .slick-prev:before{font-family:eicons;font-size:35px;line-height:1;opacity:.75;color:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.elementor-slick-slider .slick-prev{left:-25px}[dir=rtl] .elementor-slick-slider .slick-prev{left:auto;right:-25px}.elementor-slick-slider .slick-prev:before{content:"\e89f"}[dir=rtl] .elementor-slick-slider .slick-prev:before{content:"\e89e"}.elementor-slick-slider .slick-next{right:-25px}[dir=rtl] .elementor-slick-slider .slick-next{left:-25px;right:auto}.elementor-slick-slider .slick-next:before{content:"\e89e"}[dir=rtl] .elementor-slick-slider .slick-next:before{content:"\e89f"}.elementor-slick-slider .slick-dotted.slick-slider{margin-bottom:30px}.elementor-slick-slider ul.slick-dots{position:absolute;bottom:-25px;display:block;width:100%;padding:0;margin:0;list-style:none;text-align:center;line-height:1}.elementor-slick-slider ul.slick-dots li{position:relative;display:inline-block;width:20px;height:20px;margin:0;padding:0;cursor:pointer}.elementor-slick-slider ul.slick-dots li button{font-size:0;line-height:0;display:block;width:20px;height:20px;padding:5px;cursor:pointer;color:transparent;border:0;outline:none;background:transparent}.elementor-slick-slider ul.slick-dots li button:focus,.elementor-slick-slider ul.slick-dots li button:hover{outline:none}.elementor-slick-slider ul.slick-dots li button:focus:before,.elementor-slick-slider ul.slick-dots li button:hover:before{opacity:1}.elementor-slick-slider ul.slick-dots li button:before{font-family:eicons;font-size:6px;line-height:20px;position:absolute;top:0;left:0;width:20px;height:20px;content:"\e914";text-align:center;opacity:.25;color:#000;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.elementor-slick-slider ul.slick-dots li.slick-active button:before{opacity:.75;color:#000}.elementor-slick-slider .slick-arrows-inside .slick-prev{left:20px}[dir=rtl] .elementor-slick-slider .slick-arrows-inside .slick-prev{left:auto;right:20px}.elementor-slick-slider .slick-arrows-inside .slick-next{right:20px}[dir=rtl] .elementor-slick-slider .slick-arrows-inside .slick-next{left:20px;right:auto}.elementor-slick-slider .slick-dots-inside .slick-dots{bottom:5px}.elementor-slick-slider .slick-dots-inside.slick-dotted.slick-slider{margin-bottom:0}.elementor-slick-slider .slick-slider .slick-next,.elementor-slick-slider .slick-slider .slick-prev{z-index:1}.elementor-slick-slider .slick-slide img{margin:auto}.swiper-container{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;z-index:1}.swiper-container .swiper-slide figure{line-height:0}.swiper-container .elementor-lightbox-content-source{display:none}.swiper-container-no-flexbox .swiper-slide{float:left}.swiper-container-vertical>.swiper-wrapper{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;-o-transition-property:transform;transition-property:transform;transition-property:transform,-webkit-transform;-webkit-box-sizing:content-box;box-sizing:content-box}.swiper-container-android .swiper-slide,.swiper-wrapper{-webkit-transform:translateZ(0);transform:translateZ(0)}.swiper-container-multirow>.swiper-wrapper{-ms-flex-wrap:wrap;flex-wrap:wrap}.swiper-container-free-mode>.swiper-wrapper{-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out;margin:0 auto}.swiper-slide{-ms-flex-negative:0;flex-shrink:0;width:100%;height:100%;position:relative}.swiper-container-autoheight,.swiper-container-autoheight .swiper-slide{height:auto}.swiper-container-autoheight .swiper-wrapper{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-transition-property:height,-webkit-transform;transition-property:height,-webkit-transform;-o-transition-property:transform,height;transition-property:transform,height;transition-property:transform,height,-webkit-transform}.swiper-container .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}.swiper-wp8-horizontal{-ms-touch-action:pan-y;touch-action:pan-y}.swiper-wp8-vertical{-ms-touch-action:pan-x;touch-action:pan-x}.swiper-button-next,.swiper-button-prev{position:absolute;top:50%;width:27px;height:44px;margin-top:-22px;z-index:10;cursor:pointer;-webkit-background-size:27px 44px;background-size:27px 44px;background:no-repeat 50%}.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}.swiper-button-prev,.swiper-container-rtl .swiper-button-next{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z' fill='%23007aff'/%3E%3C/svg%3E");left:10px;right:auto}.swiper-button-prev.swiper-button-black,.swiper-container-rtl .swiper-button-next.swiper-button-black{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z'/%3E%3C/svg%3E")}.swiper-button-prev.swiper-button-white,.swiper-container-rtl .swiper-button-next.swiper-button-white{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z' fill='%23fff'/%3E%3C/svg%3E")}.swiper-button-next,.swiper-container-rtl .swiper-button-prev{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z' fill='%23007aff'/%3E%3C/svg%3E");right:10px;left:auto}.swiper-button-next.swiper-button-black,.swiper-container-rtl .swiper-button-prev.swiper-button-black{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z'/%3E%3C/svg%3E")}.swiper-button-next.swiper-button-white,.swiper-container-rtl .swiper-button-prev.swiper-button-white{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z' fill='%23fff'/%3E%3C/svg%3E")}.swiper-pagination{position:absolute;text-align:center;-webkit-transition:.3s;-o-transition:.3s;transition:.3s;-webkit-transform:translateZ(0);transform:translateZ(0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-container-horizontal>.swiper-pagination-bullets,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:5px;left:0;width:100%}.swiper-pagination-bullet{width:6px;height:6px;display:inline-block;-webkit-border-radius:50%;border-radius:50%;background:#000;opacity:.2}.swiper-pagination-fraction{color:#000}button.swiper-pagination-bullet{border:none;margin:0;padding:0;-webkit-box-shadow:none;box-shadow:none;appearance:none;-webkit-appearance:none;-moz-appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-white .swiper-pagination-bullet{background:#fff}.swiper-pagination-bullet-active{opacity:1}.swiper-pagination-white .swiper-pagination-bullet-active{background:#fff}.swiper-pagination-black .swiper-pagination-bullet-active{background:#000}.swiper-container-vertical>.swiper-pagination-bullets{right:10px;top:50%;-webkit-transform:translate3d(0,-50%,0);transform:translate3d(0,-50%,0)}.swiper-container-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{margin:5px 0;display:block}.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 6px}.swiper-pagination-progressbar{background:rgba(0,0,0,.25);position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:#000;position:absolute;left:0;top:0;width:100%;height:100%;-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);-webkit-transform-origin:left top;-ms-transform-origin:left top;transform-origin:left top}.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{-webkit-transform-origin:right top;-ms-transform-origin:right top;transform-origin:right top}.swiper-container-horizontal>.swiper-pagination-progressbar{width:100%;height:4px;left:0;top:0}.swiper-container-vertical>.swiper-pagination-progressbar{width:4px;height:100%;left:0;top:0}.swiper-pagination-progressbar.swiper-pagination-white{background:hsla(0,0%,100%,.5)}.swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill{background:#fff}.swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill{background:#000}.swiper-container-3d{-webkit-perspective:1200px;perspective:1200px}.swiper-container-3d .swiper-cube-shadow,.swiper-container-3d .swiper-slide,.swiper-container-3d .swiper-slide-shadow-bottom,.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top,.swiper-container-3d .swiper-wrapper{-webkit-transform-style:preserve-3d;transform-style:preserve-3d}.swiper-container-3d .swiper-slide-shadow-bottom,.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-container-3d .swiper-slide-shadow-left{background-image:-webkit-gradient(linear,right top,left top,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(right,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(right,rgba(0,0,0,.5),transparent);background-image:linear-gradient(270deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-right{background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(left,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(left,rgba(0,0,0,.5),transparent);background-image:linear-gradient(90deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-top{background-image:-webkit-gradient(linear,left bottom,left top,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(bottom,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(bottom,rgba(0,0,0,.5),transparent);background-image:linear-gradient(0deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-bottom{background-image:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(top,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(top,rgba(0,0,0,.5),transparent);background-image:linear-gradient(180deg,rgba(0,0,0,.5),transparent)}.swiper-container-coverflow .swiper-wrapper,.swiper-container-flip .swiper-wrapper{-ms-perspective:1200px}.swiper-container-cube,.swiper-container-flip{overflow:visible}.swiper-container-cube .swiper-slide,.swiper-container-flip .swiper-slide{pointer-events:none;z-index:1}.swiper-container-cube .swiper-slide .swiper-slide,.swiper-container-flip .swiper-slide .swiper-slide{pointer-events:none}.swiper-container-cube .swiper-slide-active,.swiper-container-cube .swiper-slide-active .swiper-slide-active,.swiper-container-flip .swiper-slide-active,.swiper-container-flip .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-container-cube .swiper-slide-shadow-bottom,.swiper-container-cube .swiper-slide-shadow-left,.swiper-container-cube .swiper-slide-shadow-right,.swiper-container-cube .swiper-slide-shadow-top,.swiper-container-flip .swiper-slide-shadow-bottom,.swiper-container-flip .swiper-slide-shadow-left,.swiper-container-flip .swiper-slide-shadow-right,.swiper-container-flip .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-container-cube .swiper-slide{visibility:hidden;-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0;width:100%;height:100%}.swiper-container-cube.swiper-container-rtl .swiper-slide{-webkit-transform-origin:100% 0;-ms-transform-origin:100% 0;transform-origin:100% 0}.swiper-container-cube .swiper-slide-active,.swiper-container-cube .swiper-slide-next,.swiper-container-cube .swiper-slide-next+.swiper-slide,.swiper-container-cube .swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-container-cube .swiper-cube-shadow{position:absolute;left:0;bottom:0;width:100%;height:100%;background:#000;opacity:.6;-webkit-filter:blur(50px);filter:blur(50px);z-index:0}.swiper-container-fade.swiper-container-free-mode .swiper-slide{-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out}.swiper-container-fade .swiper-slide{pointer-events:none;-webkit-transition-property:opacity;-o-transition-property:opacity;transition-property:opacity}.swiper-container-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-container-fade .swiper-slide-active,.swiper-container-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-zoom-container{width:100%;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;text-align:center}.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{max-width:100%;max-height:100%;-o-object-fit:contain;object-fit:contain}.swiper-scrollbar{-webkit-border-radius:10px;border-radius:10px;position:relative;-ms-touch-action:none;background:rgba(0,0,0,.1)}.swiper-container-horizontal>.swiper-scrollbar{position:absolute;left:1%;bottom:3px;z-index:50;height:5px;width:98%}.swiper-container-vertical>.swiper-scrollbar{position:absolute;right:3px;top:1%;z-index:50;width:5px;height:98%}.swiper-scrollbar-drag{height:100%;width:100%;position:relative;background:rgba(0,0,0,.5);-webkit-border-radius:10px;border-radius:10px;left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.elementor-pagination-position-outside .swiper-container{padding-bottom:30px}.elementor-pagination-position-outside .elementor-swiper-button{top:calc(50% - 30px / 2)}.elementor-swiper{position:relative}.elementor-main-swiper{position:static}.elementor-arrows-position-outside .swiper-container{width:calc(100% - 60px)}.elementor-arrows-position-outside .elementor-swiper-button-prev{left:0}.elementor-arrows-position-outside .elementor-swiper-button-next{right:0}.swiper-image-stretch .swiper-slide .swiper-slide-image{width:100%}.elementor-swiper-button{position:absolute;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;z-index:1;cursor:pointer;font-size:25px;color:hsla(0,0%,93.3%,.9);top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}.elementor-swiper-button-prev{left:10px}.elementor-swiper-button-next{right:10px}.elementor-swiper-button.swiper-button-disabled{opacity:.3}.swiper-container-cube .elementor-swiper-button{-webkit-transform:translate3d(0,-50%,1px);transform:translate3d(0,-50%,1px)}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;-webkit-transform-origin:50%;-ms-transform-origin:50%;transform-origin:50%;-webkit-animation:swiper-preloader-spin 1s steps(12) infinite;animation:swiper-preloader-spin 1s steps(12) infinite}.swiper-lazy-preloader:after{display:block;content:"";width:100%;height:100%;-webkit-background-size:100% 100%;background-size:100%;background:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath id='a' stroke='%236c6c6c' stroke-width='11' stroke-linecap='round' d='M60 7v20'/%3E%3C/defs%3E%3Cuse xlink:href='%23a' opacity='.27'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(30 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(60 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(90 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(120 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(150 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.37' transform='rotate(180 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.46' transform='rotate(210 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.56' transform='rotate(240 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.66' transform='rotate(270 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.75' transform='rotate(300 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.85' transform='rotate(330 60 60)'/%3E%3C/svg%3E") no-repeat 50%}.swiper-lazy-preloader-white:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath id='a' stroke='%23fff' stroke-width='11' stroke-linecap='round' d='M60 7v20'/%3E%3C/defs%3E%3Cuse xlink:href='%23a' opacity='.27'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(30 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(60 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(90 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(120 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(150 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.37' transform='rotate(180 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.46' transform='rotate(210 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.56' transform='rotate(240 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.66' transform='rotate(270 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.75' transform='rotate(300 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.85' transform='rotate(330 60 60)'/%3E%3C/svg%3E")}@-webkit-keyframes swiper-preloader-spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes swiper-preloader-spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.elementor-lightbox{--lightbox-ui-color:hsla(0,0%,93.3%,0.9);--lightbox-ui-color-hover:#fff;--lightbox-text-color:var(--lightbox-ui-color);--lightbox-header-icons-size:20px;--lightbox-navigation-icons-size:25px}.elementor-lightbox .dialog-header{display:none}.elementor-lightbox .dialog-widget-content{background:none;-webkit-box-shadow:none;box-shadow:none;width:100%;height:100%}.elementor-lightbox .dialog-message{-webkit-animation-duration:.3s;animation-duration:.3s}.elementor-lightbox .dialog-message:not(.elementor-fit-aspect-ratio){height:100%}.elementor-lightbox .dialog-message.dialog-lightbox-message{padding:0}.elementor-lightbox .dialog-lightbox-close-button{cursor:pointer;position:absolute;font-size:var(--lightbox-header-icons-size);right:.75em;margin-top:13px;padding:.25em;z-index:2;line-height:1}.elementor-lightbox .dialog-lightbox-close-button,.elementor-lightbox .elementor-swiper-button{color:var(--lightbox-ui-color);-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;opacity:1}.elementor-lightbox .dialog-lightbox-close-button:hover,.elementor-lightbox .elementor-swiper-button:hover{color:var(--lightbox-ui-color-hover)}.elementor-lightbox .swiper-container{height:100%}.elementor-lightbox .elementor-lightbox-item{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;position:relative;padding:70px;-webkit-box-sizing:border-box;box-sizing:border-box;height:100%;margin:auto}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-lightbox .elementor-lightbox-item{padding:70px 0}}.elementor-lightbox .elementor-lightbox-image{max-height:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.elementor-lightbox .elementor-lightbox-image,.elementor-lightbox .elementor-lightbox-image:hover{opacity:1;-webkit-filter:none;filter:none;border:none}.elementor-lightbox .elementor-lightbox-image,.elementor-lightbox .elementor-video-container{-webkit-box-shadow:0 0 30px rgba(0,0,0,.3),0 0 8px -5px rgba(0,0,0,.3);box-shadow:0 0 30px rgba(0,0,0,.3),0 0 8px -5px rgba(0,0,0,.3);-webkit-border-radius:2px;border-radius:2px}.elementor-lightbox .elementor-video-container{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}@media (min-width:ELEMENTOR_SCREEN_TABLET_NEXT){.elementor-lightbox .elementor-video-container{width:75%}}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-lightbox .elementor-video-container{width:100%}}@media (min-width:768px) and (max-width:1024px){.elementor-lightbox .elementor-aspect-ratio-916 .elementor-video-container{width:70%}}.elementor-lightbox .elementor-swiper-button:focus{outline-width:1px}.elementor-lightbox .elementor-swiper-button-next,.elementor-lightbox .elementor-swiper-button-prev{height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:15%;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;font-size:var(--lightbox-navigation-icons-size)}.elementor-lightbox .elementor-swiper-button-prev{left:0}.elementor-lightbox .elementor-swiper-button-next{right:0}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-lightbox .elementor-swiper-button:focus{outline:none}.elementor-lightbox .elementor-swiper-button-next,.elementor-lightbox .elementor-swiper-button-prev{width:20%}.elementor-lightbox .elementor-swiper-button-next i,.elementor-lightbox .elementor-swiper-button-prev i{padding:10px;background-color:rgba(0,0,0,.5)}.elementor-lightbox .elementor-swiper-button-prev{left:0;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-lightbox .elementor-swiper-button-next{right:0;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}}.elementor-slideshow__counter{color:currentColor;font-size:.75em;width:-webkit-max-content;width:-moz-max-content;width:max-content}.elementor-slideshow__footer,.elementor-slideshow__header{position:absolute;left:0;width:100%;padding:15px 20px;-webkit-transition:.3s;-o-transition:.3s;transition:.3s}.elementor-slideshow__footer{color:var(--lightbox-text-color)}.elementor-slideshow__header{color:var(--lightbox-ui-color);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;font-size:var(--lightbox-header-icons-size);padding-left:1em;padding-right:2.6em;top:0;-webkit-box-align:center;-ms-flex-align:center;align-items:center;z-index:10}.elementor-slideshow__header>i{font-size:inherit;cursor:pointer;padding:.25em;margin:0 .35em}.elementor-slideshow__header>i:hover{color:var(--lightbox-ui-color-hover)}.elementor-slideshow__header .elementor-slideshow__counter{margin-right:auto}.elementor-slideshow__header .elementor-icon-share{z-index:5}.elementor-slideshow__share-menu{background-color:transparent;width:0;height:0;position:absolute;overflow:hidden;-webkit-transition:background-color .4s;-o-transition:background-color .4s;transition:background-color .4s}.elementor-slideshow__share-menu .elementor-slideshow__share-links a{color:#2c2c2c}.elementor-slideshow__share-links{display:block;position:absolute;min-width:200px;right:2.8em;top:3em;background-color:#fff;-webkit-border-radius:3px;border-radius:3px;padding:14px 20px;-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);opacity:0;-webkit-transform-origin:90% 10%;-ms-transform-origin:90% 10%;transform-origin:90% 10%;-webkit-transition:all .25s .1s;-o-transition:all .25s .1s;transition:all .25s .1s;-webkit-box-shadow:0 4px 15px rgba(0,0,0,.3);box-shadow:0 4px 15px rgba(0,0,0,.3)}.elementor-slideshow__share-links a{text-align:left;color:#55595c;font-size:12px;line-height:2.5;display:block;opacity:0;-webkit-transition:opacity .5s .1s;-o-transition:opacity .5s .1s;transition:opacity .5s .1s}.elementor-slideshow__share-links a:hover{color:#000}.elementor-slideshow__share-links a i{font-size:1.25em;margin-right:.75em}.elementor-slideshow__share-links:before{content:"";display:block;position:absolute;top:1px;right:.5em;border:.45em solid transparent;border-bottom-color:#fff;-webkit-transform:translateY(-100%) scaleX(.7);-ms-transform:translateY(-100%) scaleX(.7);transform:translateY(-100%) scaleX(.7)}.elementor-slideshow__footer{bottom:0;z-index:5;position:fixed}.elementor-slideshow__description,.elementor-slideshow__title{margin:0}.elementor-slideshow__title{font-size:16px;font-weight:700}.elementor-slideshow__description{font-size:14px}.elementor-slideshow--ui-hidden .elementor-slideshow__footer,.elementor-slideshow--ui-hidden .elementor-slideshow__header{opacity:0;pointer-events:none}.elementor-slideshow--ui-hidden .elementor-swiper-button-next,.elementor-slideshow--ui-hidden .elementor-swiper-button-prev{opacity:0}.elementor-slideshow--fullscreen-mode .elementor-video-container{width:100%}.elementor-slideshow--zoom-mode .elementor-slideshow__footer,.elementor-slideshow--zoom-mode .elementor-slideshow__header{background-color:rgba(0,0,0,.5)}.elementor-slideshow--zoom-mode .elementor-swiper-button-next,.elementor-slideshow--zoom-mode .elementor-swiper-button-prev{opacity:0;pointer-events:none}.elementor-slideshow--share-mode .elementor-slideshow__share-menu{top:0;left:0;width:100vw;height:100vh;opacity:1;cursor:default;background-color:rgba(0,0,0,.5)}.elementor-slideshow--share-mode .elementor-slideshow__share-links{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}.elementor-slideshow--share-mode .elementor-slideshow__share-links,.elementor-slideshow--share-mode .elementor-slideshow__share-links a{opacity:1}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-twitter{color:#1da1f2}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-facebook{color:#3b5998}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-pinterest{color:#bd081c}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-download-bold{color:#a4afb7}.elementor-slideshow--share-mode .eicon-share-arrow{z-index:2}.animated{-webkit-animation-duration:1.25s;animation-duration:1.25s}.animated.animated-slow{-webkit-animation-duration:2s;animation-duration:2s}.animated.animated-fast{-webkit-animation-duration:.75s;animation-duration:.75s}.animated.infinite{-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}.animated.reverse{animation-direction:reverse;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}@media (prefers-reduced-motion:reduce){.animated{-webkit-animation:none;animation:none}}.elementor-shape{overflow:hidden;position:absolute;left:0;width:100%;line-height:0;direction:ltr}.elementor-shape-top{top:-1px}.elementor-shape-top:not([data-negative=false]) svg{z-index:-1}.elementor-shape-bottom{bottom:-1px}.elementor-shape-bottom:not([data-negative=true]) svg{z-index:-1}.elementor-shape[data-negative=false].elementor-shape-bottom,.elementor-shape[data-negative=true].elementor-shape-top{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.elementor-shape svg{display:block;width:calc(100% + 1.3px);position:relative;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.elementor-shape .elementor-shape-fill{fill:#fff;-webkit-transform-origin:center;-ms-transform-origin:center;transform-origin:center;-webkit-transform:rotateY(0deg);transform:rotateY(0deg)}#wp-admin-bar-elementor_edit_page .ab-submenu .ab-item{display:-webkit-box;display:-ms-flexbox;display:flex;width:200px}#wp-admin-bar-elementor_edit_page .elementor-edit-link-title{white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;width:100%}#wp-admin-bar-elementor_edit_page .elementor-edit-link-type{background:#55595c;font-size:11px;line-height:9px;margin-top:6px;padding:4px 8px;-webkit-border-radius:3px;border-radius:3px}.page-template-elementor_canvas.elementor-page:before{display:none}.elementor-post__thumbnail__link{-webkit-transition:none;-o-transition:none;transition:none}#left-area ul.elementor-icon-list-items,.elementor-edit-area .elementor-element ul.elementor-icon-list-items,.elementor .elementor-element ul.elementor-icon-list-items{padding:0}#wpadminbar *{font-style:normal}.e--ua-appleWebkit.rtl{--flex-right:flex-start}.e--ua-appleWebkit .elementor-share-buttons--align-right,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-right{--justify-content:var(--flex-right,flex-end)}.e--ua-appleWebkit .elementor-share-buttons--align-center,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-center{--justify-content:center}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-justify .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-right .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-right .elementor-grid{width:auto;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:var(--justify-content,space-between);-ms-flex-pack:var(--justify-content,space-between);justify-content:var(--justify-content,space-between);margin-left:calc(-.5 * var(--grid-column-gap));margin-right:calc(-.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-justify .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-right .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-right .elementor-grid-item{margin-left:calc(.5 * var(--grid-column-gap));margin-right:calc(.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid{display:inline-block}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid-item{margin-left:0;margin-right:0}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.e--ua-appleWebkit .elementor-share-buttons-tablet--align-right,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-tablet-right{--justify-content:var(--flex-right,flex-end)}.e--ua-appleWebkit .elementor-share-buttons-tablet--align-center,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-tablet-center{--justify-content:center}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-justify .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-right .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-right .elementor-grid{width:auto;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:var(--justify-content,space-between);-ms-flex-pack:var(--justify-content,space-between);justify-content:var(--justify-content,space-between);margin-left:calc(-.5 * var(--grid-column-gap));margin-right:calc(-.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-justify .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-right .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-right .elementor-grid-item{margin-left:calc(.5 * var(--grid-column-gap));margin-right:calc(.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid{display:inline-block}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid-item{margin-left:0;margin-right:0}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.e--ua-appleWebkit .elementor-share-buttons-mobile--align-right,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-mobile-right{--justify-content:var(--flex-right,flex-end)}.e--ua-appleWebkit .elementor-share-buttons-mobile--align-center,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-mobile-center{--justify-content:center}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-justify .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-right .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-right .elementor-grid{width:auto;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:var(--justify-content,space-between);-ms-flex-pack:var(--justify-content,space-between);justify-content:var(--justify-content,space-between);margin-left:calc(-.5 * var(--grid-column-gap));margin-right:calc(-.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-justify .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-right .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-right .elementor-grid-item{margin-left:calc(.5 * var(--grid-column-gap));margin-right:calc(.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid{display:inline-block}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid-item{margin-left:0;margin-right:0}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor .elementor-hidden-mobile,.elementor .elementor-hidden-phone{display:none}}@media (min-width:ELEMENTOR_SCREEN_MOBILE_EXTRA_MIN) and (max-width:ELEMENTOR_SCREEN_MOBILE_EXTRA_MAX){.elementor .elementor-hidden-mobile_extra{display:none}}@media (min-width:ELEMENTOR_SCREEN_TABLET_MIN) and (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor .elementor-hidden-tablet{display:none}}@media (min-width:ELEMENTOR_SCREEN_TABLET_EXTRA_MIN) and (max-width:ELEMENTOR_SCREEN_TABLET_EXTRA_MAX){.elementor .elementor-hidden-tablet_extra{display:none}}@media (min-width:ELEMENTOR_SCREEN_LAPTOP_MIN) and (max-width:ELEMENTOR_SCREEN_LAPTOP_MAX){.elementor .elementor-hidden-laptop{display:none}}@media (min-width:ELEMENTOR_SCREEN_DESKTOP_MIN) and (max-width:ELEMENTOR_SCREEN_DESKTOP_MAX){.elementor .elementor-hidden-desktop{display:none}}@media (min-width:ELEMENTOR_SCREEN_WIDESCREEN_MIN){.elementor .elementor-hidden-widescreen{display:none}}.elementor-widget-text-path{font-size:20px;text-align:var(--alignment,left)}.elementor-widget-text-path svg{width:var(--width);max-width:100%;height:auto;overflow:visible;word-spacing:var(--word-spacing);-webkit-transform:rotate(var(--rotate,0)) scaleX(var(--scale-x,1)) scaleY(var(--scale-y,1));-ms-transform:rotate(var(--rotate,0)) scaleX(var(--scale-x,1)) scaleY(var(--scale-y,1));transform:rotate(var(--rotate,0)) scaleX(var(--scale-x,1)) scaleY(var(--scale-y,1))}.elementor-widget-text-path svg path{vector-effect:non-scaling-stroke;fill:var(--path-fill,transparent);stroke:var(--stroke-color,transparent);stroke-width:var(--stroke-width,1px);-webkit-transition:var(--stroke-transition) stroke,var(--stroke-transition) fill;-o-transition:var(--stroke-transition) stroke,var(--stroke-transition) fill;transition:var(--stroke-transition) stroke,var(--stroke-transition) fill}.elementor-widget-text-path svg:hover path{--path-fill:var(--path-fill-hover);--stroke-color:var(--stroke-color-hover);--stroke-width:var(--stroke-width-hover)}.elementor-widget-text-path svg text{--fill:var(--text-color);fill:var(--fill);direction:var(--direction,ltr);-webkit-transition:var(--transition) stroke,var(--transition) stroke-width,var(--transition) fill;-o-transition:var(--transition) stroke,var(--transition) stroke-width,var(--transition) fill;transition:var(--transition) stroke,var(--transition) stroke-width,var(--transition) fill}.elementor-widget-text-path svg text:hover{--color:var(--text-color-hover,var(--text-color));--fill:var(--color);color:var(--color)}assets/css/templates/frontend-legacy-rtl.css000064400000006430151327220410015226 0ustar00.elementor-bc-flex-widget .elementor-section-content-top > .elementor-container > .elementor-row > .elementor-column > .elementor-column-wrap {
  align-items: flex-start; }

.elementor-bc-flex-widget .elementor-section-content-middle > .elementor-container > .elementor-row > .elementor-column > .elementor-column-wrap {
  align-items: center; }

.elementor-bc-flex-widget .elementor-section-content-bottom > .elementor-container > .elementor-row > .elementor-column > .elementor-column-wrap {
  align-items: flex-end; }

.elementor-column-gap-narrow > .elementor-row > .elementor-column > .elementor-element-populated {
  padding: 5px; }

.elementor-column-gap-default > .elementor-row > .elementor-column > .elementor-element-populated {
  padding: 10px; }

.elementor-column-gap-extended > .elementor-row > .elementor-column > .elementor-element-populated {
  padding: 15px; }

.elementor-column-gap-wide > .elementor-row > .elementor-column > .elementor-element-populated {
  padding: 20px; }

.elementor-column-gap-wider > .elementor-row > .elementor-column > .elementor-element-populated {
  padding: 30px; }

@media (min-width: ELEMENTOR_SCREEN_MOBILE_NEXT) and (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(1) {
    order: 10; }
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(2) {
    order: 9; }
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(3) {
    order: 8; }
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(4) {
    order: 7; }
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(5) {
    order: 6; }
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(6) {
    order: 5; }
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(7) {
    order: 4; }
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(8) {
    order: 3; }
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(9) {
    order: 2; }
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(10) {
    order: 1; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(1) {
    order: 10; }
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(2) {
    order: 9; }
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(3) {
    order: 8; }
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(4) {
    order: 7; }
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(5) {
    order: 6; }
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(6) {
    order: 5; }
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(7) {
    order: 4; }
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(8) {
    order: 3; }
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(9) {
    order: 2; }
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(10) {
    order: 1; }
  .elementor-column {
    width: 100%; } }
assets/css/templates/frontend.min.css000064400000403773151327220410013762 0ustar00.dialog-widget-content{background-color:#fff;position:absolute;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);overflow:hidden}.dialog-message{font-size:12px;line-height:1.5;-webkit-box-sizing:border-box;box-sizing:border-box}.dialog-type-lightbox{position:fixed;height:100%;width:100%;bottom:0;left:0;background-color:rgba(0,0,0,.8);z-index:9999;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.dialog-type-lightbox .dialog-widget-content{margin:auto;width:375px}.dialog-type-lightbox .dialog-header{font-size:15px;color:#495157;padding:30px 0 10px;font-weight:500}.dialog-type-lightbox .dialog-message{padding:0 30px 30px;min-height:50px}.dialog-type-lightbox:not(.elementor-popup-modal) .dialog-header,.dialog-type-lightbox:not(.elementor-popup-modal) .dialog-message{text-align:center}.dialog-type-lightbox .dialog-buttons-wrapper{border-top:1px solid #e6e9ec;text-align:center}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;width:50%;border:none;background:none;color:#6d7882;font-size:15px;cursor:pointer;padding:13px 0;outline:0}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button:hover{background-color:#f4f6f7}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button.dialog-ok{color:#b01b1b}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button.dialog-take_over{color:#39b54a}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button:active{background-color:rgba(230,233,236,.5)}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button::-moz-focus-inner{border:0}.dialog-close-button{cursor:pointer;position:absolute;margin-top:15px;right:15px;font-size:15px;line-height:1}.dialog-close-button:not(:hover){opacity:.4}.dialog-alert-widget .dialog-buttons-wrapper>button{width:100%}.dialog-confirm-widget .dialog-button:first-child{border-right:1px solid #e6e9ec}.dialog-prevent-scroll{overflow:hidden;max-height:100vh}@media (min-width:1024px){body.admin-bar .dialog-lightbox-widget{height:calc(100vh - 32px)}}@media (max-width:1024px){body.admin-bar .dialog-type-lightbox{position:-webkit-sticky;position:sticky;height:100vh}}.elementor-aspect-ratio-219 .elementor-fit-aspect-ratio{padding-bottom:42.8571%}.elementor-aspect-ratio-169 .elementor-fit-aspect-ratio{padding-bottom:56.25%}.elementor-aspect-ratio-43 .elementor-fit-aspect-ratio{padding-bottom:75%}.elementor-aspect-ratio-32 .elementor-fit-aspect-ratio{padding-bottom:66.6666%}.elementor-aspect-ratio-11 .elementor-fit-aspect-ratio{padding-bottom:100%}.elementor-aspect-ratio-916 .elementor-fit-aspect-ratio{padding-bottom:177.8%}.elementor-fit-aspect-ratio{position:relative;height:0}.elementor-fit-aspect-ratio iframe{position:absolute;top:0;left:0;height:100%;width:100%;border:0;background-color:#000}.elementor-fit-aspect-ratio video{width:100%}.flatpickr-calendar{width:280px}.flatpickr-calendar .flatpickr-current-month span.cur-month{font-weight:300}.flatpickr-calendar .dayContainer{width:280px;min-width:280px;max-width:280px}.flatpickr-calendar .flatpickr-days{width:280px}.flatpickr-calendar .flatpickr-day{max-width:37px;height:37px;line-height:37px}.elementor-templates-modal .dialog-widget-content{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;background-color:#f1f3f5;width:100%}@media (max-width:1439px){.elementor-templates-modal .dialog-widget-content{max-width:990px}}@media (min-width:1440px){.elementor-templates-modal .dialog-widget-content{max-width:1200px}}.elementor-templates-modal .dialog-header{padding:0;z-index:1}.elementor-templates-modal .dialog-buttons-wrapper,.elementor-templates-modal .dialog-header{background-color:#fff;-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1);position:relative}.elementor-templates-modal .dialog-buttons-wrapper{border:none;display:none;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;padding:5px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button{height:40px;margin-left:5px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success{padding:12px 36px;color:#fff;width:auto;font-size:15px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success:hover{background-color:#39b54a}.elementor-templates-modal .dialog-message{height:750px;max-height:85vh;overflow:auto;padding-top:25px}.elementor-templates-modal .dialog-content{height:100%}.elementor-templates-modal .dialog-loading{display:none}.elementor-templates-modal__header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;height:50px}.elementor-templates-modal__header__logo{line-height:1;text-transform:uppercase;font-weight:700;cursor:pointer}.elementor-templates-modal__header__logo-area{text-align:left;padding-left:15px}.elementor-templates-modal__header__logo-area>*{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-templates-modal__header__logo__icon-wrapper{margin-right:10px;font-size:12px}.elementor-templates-modal__header__logo__title{padding-top:2px}.elementor-templates-modal__header__items-area{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-templates-modal__header__item{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-templates-modal__header__item>i{font-size:20px;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;cursor:pointer}.elementor-templates-modal__header__item>i:not(:hover){color:#a4afb7}.elementor-templates-modal__header__close--normal{width:47px;border-left:1px solid #e6e9ec}.elementor-templates-modal__header__close--normal i{font-size:18px}.elementor-templates-modal__header__close--skip{padding:10px 10px 10px 20px;margin-right:10px;color:#fff;background-color:#a4afb7;font-size:11px;font-weight:400;line-height:1;text-transform:uppercase;-webkit-border-radius:2px;border-radius:2px;cursor:pointer}.elementor-templates-modal__header__close--skip>i{font-size:inherit;padding-left:10px;margin-left:15px;border-left:1px solid}.elementor-templates-modal__header__close--skip>i:not(:hover){color:#fff}.elementor-templates-modal__sidebar{-ms-flex-negative:0;flex-shrink:0;width:25%;background-color:hsla(0,0%,100%,.3)}.elementor-templates-modal__content{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-webkit-box-shadow:0 0 13px inset rgba(0,0,0,.05);box-shadow:inset 0 0 13px rgba(0,0,0,.05)}#wpadminbar #wp-admin-bar-elementor_edit_page .elementor-general-section+.elementor-second-section{border-top:1px solid #464b50;margin-top:6px}.elementor-hidden{display:none}.elementor-screen-only,.screen-reader-text,.screen-reader-text span,.ui-helper-hidden-accessible{position:absolute;top:-10000em;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.elementor-clearfix:after{content:"";display:block;clear:both;width:0;height:0}.e-logo-wrapper{background:#93003c;display:inline-block;padding:.75em;-webkit-border-radius:50%;border-radius:50%;line-height:1}.e-logo-wrapper i{color:#fff;font-size:1em}.elementor{-webkit-hyphens:manual;-ms-hyphens:manual;hyphens:manual}.elementor *,.elementor :after,.elementor :before{-webkit-box-sizing:border-box;box-sizing:border-box}.elementor a{-webkit-box-shadow:none;box-shadow:none;text-decoration:none}.elementor hr{margin:0;background-color:transparent}.elementor img{height:auto;max-width:100%;border:none;-webkit-border-radius:0;border-radius:0;-webkit-box-shadow:none;box-shadow:none}.elementor .elementor-widget:not(.elementor-widget-text-editor):not(.elementor-widget-theme-post-content) figure{margin:0}.elementor embed,.elementor iframe,.elementor object,.elementor video{max-width:100%;width:100%;margin:0;line-height:1;border:none}.elementor .elementor-custom-embed{line-height:0}.elementor .elementor-background,.elementor .elementor-background-holder,.elementor .elementor-background-video-container{height:100%;width:100%;top:0;left:0;position:absolute;overflow:hidden;z-index:0;direction:ltr}.elementor .elementor-background-video-container{-webkit-transition:opacity 1s;-o-transition:opacity 1s;transition:opacity 1s;pointer-events:none}.elementor .elementor-background-video-container.elementor-loading{opacity:0}.elementor .elementor-background-video-embed{max-width:none}.elementor .elementor-background-video,.elementor .elementor-background-video-embed,.elementor .elementor-background-video-hosted{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor .elementor-background-video{max-width:none}.elementor .elementor-html5-video{-o-object-fit:cover;object-fit:cover}.elementor .elementor-background-overlay,.elementor .elementor-background-slideshow{height:100%;width:100%;top:0;left:0;position:absolute}.elementor .elementor-background-slideshow{z-index:0}.elementor .elementor-background-slideshow__slide__image{width:100%;height:100%;background-position:50%;-webkit-background-size:cover;background-size:cover}.elementor-widget-wrap>.elementor-element.elementor-absolute{position:absolute}.elementor-column>.elementor-widget-wrap>.elementor-element.elementor-absolute{padding:inherit;-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-widget-wrap>.elementor-element.elementor-fixed{position:fixed}.elementor-widget-wrap .elementor-element.elementor-widget__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget__width-initial{max-width:100%}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-initial{max-width:100%}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-initial{max-width:100%}}.elementor-element.elementor-absolute,.elementor-element.elementor-fixed{z-index:1}.elementor-invisible{visibility:hidden}.elementor-align-center{text-align:center}.elementor-align-center .elementor-button{width:auto}.elementor-align-right{text-align:right}.elementor-align-right .elementor-button{width:auto}.elementor-align-left{text-align:left}.elementor-align-left .elementor-button{width:auto}.elementor-align-justify .elementor-button{width:100%}.elementor-custom-embed-play{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor-custom-embed-play i{font-size:100px;color:#fff;text-shadow:1px 0 6px rgba(0,0,0,.3)}.elementor-custom-embed-play svg{height:100px;width:100px;fill:#fff;-webkit-filter:drop-shadow(1px 0 6px rgba(0,0,0,.3));filter:drop-shadow(1px 0 6px rgba(0,0,0,.3))}.elementor-custom-embed-play i,.elementor-custom-embed-play svg{opacity:.8;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-custom-embed-play.elementor-playing i{font-family:eicons;-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.elementor-custom-embed-play.elementor-playing i:before{content:"\e8fb"}.elementor-tag{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex}.elementor-ken-burns{-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;-o-transition-property:transform;transition-property:transform;transition-property:transform,-webkit-transform;-webkit-transition-duration:10s;-o-transition-duration:10s;transition-duration:10s;-webkit-transition-timing-function:linear;-o-transition-timing-function:linear;transition-timing-function:linear}.elementor-ken-burns--out{-webkit-transform:scale(1.3);-ms-transform:scale(1.3);transform:scale(1.3)}.elementor-ken-burns--active{-webkit-transition-duration:20s;-o-transition-duration:20s;transition-duration:20s}.elementor-ken-burns--active.elementor-ken-burns--out{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}.elementor-ken-burns--active.elementor-ken-burns--in{-webkit-transform:scale(1.3);-ms-transform:scale(1.3);transform:scale(1.3)}@media (min-width:ELEMENTOR_SCREEN_WIDESCREEN_MIN){.elementor-widescreen-align-center{text-align:center}.elementor-widescreen-align-center .elementor-button{width:auto}.elementor-widescreen-align-right{text-align:right}.elementor-widescreen-align-right .elementor-button{width:auto}.elementor-widescreen-align-left{text-align:left}.elementor-widescreen-align-left .elementor-button{width:auto}.elementor-widescreen-align-justify .elementor-button{width:100%}}@media (max-width:ELEMENTOR_SCREEN_LAPTOP_MAX){.elementor-laptop-align-center{text-align:center}.elementor-laptop-align-center .elementor-button{width:auto}.elementor-laptop-align-right{text-align:right}.elementor-laptop-align-right .elementor-button{width:auto}.elementor-laptop-align-left{text-align:left}.elementor-laptop-align-left .elementor-button{width:auto}.elementor-laptop-align-justify .elementor-button{width:100%}}@media (max-width:ELEMENTOR_SCREEN_TABLET_EXTRA_MAX){.elementor-tablet_extra-align-center{text-align:center}.elementor-tablet_extra-align-center .elementor-button{width:auto}.elementor-tablet_extra-align-right{text-align:right}.elementor-tablet_extra-align-right .elementor-button{width:auto}.elementor-tablet_extra-align-left{text-align:left}.elementor-tablet_extra-align-left .elementor-button{width:auto}.elementor-tablet_extra-align-justify .elementor-button{width:100%}}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-tablet-align-center{text-align:center}.elementor-tablet-align-center .elementor-button{width:auto}.elementor-tablet-align-right{text-align:right}.elementor-tablet-align-right .elementor-button{width:auto}.elementor-tablet-align-left{text-align:left}.elementor-tablet-align-left .elementor-button{width:auto}.elementor-tablet-align-justify .elementor-button{width:100%}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_EXTRA_MAX){.elementor-mobile_extra-align-center{text-align:center}.elementor-mobile_extra-align-center .elementor-button{width:auto}.elementor-mobile_extra-align-right{text-align:right}.elementor-mobile_extra-align-right .elementor-button{width:auto}.elementor-mobile_extra-align-left{text-align:left}.elementor-mobile_extra-align-left .elementor-button{width:auto}.elementor-mobile_extra-align-justify .elementor-button{width:100%}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-mobile-align-center{text-align:center}.elementor-mobile-align-center .elementor-button{width:auto}.elementor-mobile-align-right{text-align:right}.elementor-mobile-align-right .elementor-button{width:auto}.elementor-mobile-align-left{text-align:left}.elementor-mobile-align-left .elementor-button{width:auto}.elementor-mobile-align-justify .elementor-button{width:100%}}#wpadminbar #wp-admin-bar-elementor_edit_page>.ab-item:before{content:"\e813";font-family:eicons;top:3px;font-size:18px}#wpadminbar #wp-admin-bar-elementor_inspector>.ab-item:before{content:"\f348";top:2px}:root{--page-title-display:block}.elementor-page-title,h1.entry-title{display:var(--page-title-display)}.elementor-section{position:relative}.elementor-section .elementor-container{display:-webkit-box;display:-ms-flexbox;display:flex;margin-right:auto;margin-left:auto;position:relative}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-section .elementor-container{-ms-flex-wrap:wrap;flex-wrap:wrap}}.elementor-section.elementor-section-boxed>.elementor-container{max-width:1140px}.elementor-section.elementor-section-stretched{position:relative;width:100%}.elementor-section.elementor-section-items-top>.elementor-container{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.elementor-section.elementor-section-items-middle>.elementor-container{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-section.elementor-section-items-bottom>.elementor-container{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}@media (min-width:ELEMENTOR_SCREEN_MOBILE_NEXT){.elementor-section.elementor-section-height-full{height:100vh}.elementor-section.elementor-section-height-full>.elementor-container{height:100%}}.elementor-bc-flex-widget .elementor-section-content-top>.elementor-container>.elementor-column>.elementor-widget-wrap{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.elementor-bc-flex-widget .elementor-section-content-middle>.elementor-container>.elementor-column>.elementor-widget-wrap{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-bc-flex-widget .elementor-section-content-bottom>.elementor-container>.elementor-column>.elementor-widget-wrap{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.elementor-row{width:100%;display:-webkit-box;display:-ms-flexbox;display:flex}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-row{-ms-flex-wrap:wrap;flex-wrap:wrap}}.elementor-widget-wrap{position:relative;width:100%;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-line-pack:start;align-content:flex-start}.elementor:not(.elementor-bc-flex-widget) .elementor-widget-wrap{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget-wrap>.elementor-element{width:100%}.elementor-widget{position:relative}.elementor-widget:not(:last-child){margin-bottom:20px}.elementor-widget:not(:last-child).elementor-absolute,.elementor-widget:not(:last-child).elementor-widget__width-auto,.elementor-widget:not(:last-child).elementor-widget__width-initial{margin-bottom:0}.elementor-column{min-height:1px}.elementor-column,.elementor-column-wrap{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-column-wrap{width:100%}.elementor-column-gap-narrow>.elementor-column>.elementor-element-populated{padding:5px}.elementor-column-gap-default>.elementor-column>.elementor-element-populated{padding:10px}.elementor-column-gap-extended>.elementor-column>.elementor-element-populated{padding:15px}.elementor-column-gap-wide>.elementor-column>.elementor-element-populated{padding:20px}.elementor-column-gap-wider>.elementor-column>.elementor-element-populated{padding:30px}.elementor-inner-section .elementor-column-gap-no .elementor-element-populated{padding:0}@media (min-width:ELEMENTOR_SCREEN_MOBILE_NEXT){.elementor-column.elementor-col-10,.elementor-column[data-col="10"]{width:10%}.elementor-column.elementor-col-11,.elementor-column[data-col="11"]{width:11.111%}.elementor-column.elementor-col-12,.elementor-column[data-col="12"]{width:12.5%}.elementor-column.elementor-col-14,.elementor-column[data-col="14"]{width:14.285%}.elementor-column.elementor-col-16,.elementor-column[data-col="16"]{width:16.666%}.elementor-column.elementor-col-20,.elementor-column[data-col="20"]{width:20%}.elementor-column.elementor-col-25,.elementor-column[data-col="25"]{width:25%}.elementor-column.elementor-col-30,.elementor-column[data-col="30"]{width:30%}.elementor-column.elementor-col-33,.elementor-column[data-col="33"]{width:33.333%}.elementor-column.elementor-col-40,.elementor-column[data-col="40"]{width:40%}.elementor-column.elementor-col-50,.elementor-column[data-col="50"]{width:50%}.elementor-column.elementor-col-60,.elementor-column[data-col="60"]{width:60%}.elementor-column.elementor-col-66,.elementor-column[data-col="66"]{width:66.666%}.elementor-column.elementor-col-70,.elementor-column[data-col="70"]{width:70%}.elementor-column.elementor-col-75,.elementor-column[data-col="75"]{width:75%}.elementor-column.elementor-col-80,.elementor-column[data-col="80"]{width:80%}.elementor-column.elementor-col-83,.elementor-column[data-col="83"]{width:83.333%}.elementor-column.elementor-col-90,.elementor-column[data-col="90"]{width:90%}.elementor-column.elementor-col-100,.elementor-column[data-col="100"]{width:100%}}@media (max-width:479px){.elementor-column.elementor-xs-10{width:10%}.elementor-column.elementor-xs-11{width:11.111%}.elementor-column.elementor-xs-12{width:12.5%}.elementor-column.elementor-xs-14{width:14.285%}.elementor-column.elementor-xs-16{width:16.666%}.elementor-column.elementor-xs-20{width:20%}.elementor-column.elementor-xs-25{width:25%}.elementor-column.elementor-xs-30{width:30%}.elementor-column.elementor-xs-33{width:33.333%}.elementor-column.elementor-xs-40{width:40%}.elementor-column.elementor-xs-50{width:50%}.elementor-column.elementor-xs-60{width:60%}.elementor-column.elementor-xs-66{width:66.666%}.elementor-column.elementor-xs-70{width:70%}.elementor-column.elementor-xs-75{width:75%}.elementor-column.elementor-xs-80{width:80%}.elementor-column.elementor-xs-83{width:83.333%}.elementor-column.elementor-xs-90{width:90%}.elementor-column.elementor-xs-100{width:100%}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-column.elementor-sm-10{width:10%}.elementor-column.elementor-sm-11{width:11.111%}.elementor-column.elementor-sm-12{width:12.5%}.elementor-column.elementor-sm-14{width:14.285%}.elementor-column.elementor-sm-16{width:16.666%}.elementor-column.elementor-sm-20{width:20%}.elementor-column.elementor-sm-25{width:25%}.elementor-column.elementor-sm-30{width:30%}.elementor-column.elementor-sm-33{width:33.333%}.elementor-column.elementor-sm-40{width:40%}.elementor-column.elementor-sm-50{width:50%}.elementor-column.elementor-sm-60{width:60%}.elementor-column.elementor-sm-66{width:66.666%}.elementor-column.elementor-sm-70{width:70%}.elementor-column.elementor-sm-75{width:75%}.elementor-column.elementor-sm-80{width:80%}.elementor-column.elementor-sm-83{width:83.333%}.elementor-column.elementor-sm-90{width:90%}.elementor-column.elementor-sm-100{width:100%}}@media (min-width:ELEMENTOR_SCREEN_MOBILE_NEXT) and (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-column.elementor-md-10{width:10%}.elementor-column.elementor-md-11{width:11.111%}.elementor-column.elementor-md-12{width:12.5%}.elementor-column.elementor-md-14{width:14.285%}.elementor-column.elementor-md-16{width:16.666%}.elementor-column.elementor-md-20{width:20%}.elementor-column.elementor-md-25{width:25%}.elementor-column.elementor-md-30{width:30%}.elementor-column.elementor-md-33{width:33.333%}.elementor-column.elementor-md-40{width:40%}.elementor-column.elementor-md-50{width:50%}.elementor-column.elementor-md-60{width:60%}.elementor-column.elementor-md-66{width:66.666%}.elementor-column.elementor-md-70{width:70%}.elementor-column.elementor-md-75{width:75%}.elementor-column.elementor-md-80{width:80%}.elementor-column.elementor-md-83{width:83.333%}.elementor-column.elementor-md-90{width:90%}.elementor-column.elementor-md-100{width:100%}}@media (min-width:ELEMENTOR_SCREEN_MOBILE_NEXT) and (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-reverse-tablet>.elementor-container>:first-child{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.elementor-reverse-tablet>.elementor-container>:nth-child(2){-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.elementor-reverse-tablet>.elementor-container>:nth-child(3){-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.elementor-reverse-tablet>.elementor-container>:nth-child(4){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.elementor-reverse-tablet>.elementor-container>:nth-child(5){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.elementor-reverse-tablet>.elementor-container>:nth-child(6){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-reverse-tablet>.elementor-container>:nth-child(7){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.elementor-reverse-tablet>.elementor-container>:nth-child(8){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.elementor-reverse-tablet>.elementor-container>:nth-child(9){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.elementor-reverse-tablet>.elementor-container>:nth-child(10){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-reverse-mobile>.elementor-container>:first-child{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.elementor-reverse-mobile>.elementor-container>:nth-child(2){-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.elementor-reverse-mobile>.elementor-container>:nth-child(3){-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.elementor-reverse-mobile>.elementor-container>:nth-child(4){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.elementor-reverse-mobile>.elementor-container>:nth-child(5){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.elementor-reverse-mobile>.elementor-container>:nth-child(6){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-reverse-mobile>.elementor-container>:nth-child(7){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.elementor-reverse-mobile>.elementor-container>:nth-child(8){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.elementor-reverse-mobile>.elementor-container>:nth-child(9){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.elementor-reverse-mobile>.elementor-container>:nth-child(10){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.elementor-column{width:100%}}ul.elementor-icon-list-items.elementor-inline-items{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}ul.elementor-icon-list-items.elementor-inline-items .elementor-inline-item{word-break:break-word}.elementor-grid{display:grid;grid-column-gap:var(--grid-column-gap);grid-row-gap:var(--grid-row-gap)}.elementor-grid .elementor-grid-item{min-width:0}.elementor-grid-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}@media (min-width:ELEMENTOR_SCREEN_WIDESCREEN_MIN){.elementor-grid-widescreen-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-widescreen-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-widescreen-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-widescreen-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-widescreen-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-widescreen-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-widescreen-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-widescreen-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-widescreen-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-widescreen-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-widescreen-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-widescreen-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-widescreen-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-widescreen-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:ELEMENTOR_SCREEN_LAPTOP_MAX){.elementor-grid-laptop-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-laptop-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-laptop-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-laptop-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-laptop-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-laptop-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-laptop-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-laptop-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-laptop-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-laptop-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-laptop-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-laptop-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-laptop-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-laptop-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:ELEMENTOR_SCREEN_TABLET_EXTRA_MAX){.elementor-grid-tablet_extra-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-tablet_extra-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-tablet_extra-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-tablet_extra-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-tablet_extra-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-tablet_extra-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-tablet_extra-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-tablet_extra-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-tablet_extra-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-tablet_extra-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-tablet_extra-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-tablet_extra-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-tablet_extra-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-tablet_extra-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-grid-tablet-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-tablet-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-tablet-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-tablet-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-tablet-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-tablet-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-tablet-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-tablet-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-tablet-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-tablet-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-tablet-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-tablet-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-tablet-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-tablet-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_EXTRA_MAX){.elementor-grid-mobile_extra-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-mobile_extra-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-mobile_extra-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-mobile_extra-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-mobile_extra-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-mobile_extra-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-mobile_extra-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-mobile_extra-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-mobile_extra-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-mobile_extra-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-mobile_extra-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-mobile_extra-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-mobile_extra-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-mobile_extra-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-grid-mobile-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-mobile-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-mobile-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-mobile-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-mobile-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-mobile-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-mobile-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-mobile-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-mobile-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-mobile-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-mobile-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-mobile-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-mobile-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-mobile-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (min-width:ELEMENTOR_SCREEN_DESKTOP_MIN){#elementor-device-mode:after{content:"desktop"}}@media (min-width:ELEMENTOR_SCREEN_WIDESCREEN_MIN){#elementor-device-mode:after{content:"widescreen"}}@media (max-width:ELEMENTOR_SCREEN_LAPTOP_MAX){#elementor-device-mode:after{content:"laptop"}}@media (max-width:ELEMENTOR_SCREEN_TABLET_EXTRA_MAX){#elementor-device-mode:after{content:"tablet_extra"}}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){#elementor-device-mode:after{content:"tablet"}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_EXTRA_MAX){#elementor-device-mode:after{content:"mobile_extra"}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){#elementor-device-mode:after{content:"mobile"}}[class*=" eicon-"],[class^=eicon]{display:inline-block;font-family:eicons;font-size:inherit;font-weight:400;font-style:normal;font-variant:normal;line-height:1;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@-webkit-keyframes eicon-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes eicon-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.eicon-animation-spin{-webkit-animation:eicon-spin 2s linear infinite;animation:eicon-spin 2s linear infinite}.eicon-loading:before{content:"\e8fb"}.eicon-menu-bar:before{content:"\e816"}.eicon-chevron-right:before{content:"\e87d"}.eicon-chevron-left:before{content:"\e87e"}.eicon-close:before{content:"\e87f"}.eicon-share-arrow:before{content:"\e96c"}.eicon-zoom-in:before{content:"\e882"}.eicon-zoom-in-bold:before{content:"\e92e"}.eicon-zoom-out-bold:before{content:"\e943"}.eicon-frame-expand:before{content:"\e95c"}.eicon-frame-minimize:before{content:"\e95d"}.eicon-play:before{content:"\e89d"}.eicon-facebook:before{content:"\e959"}.eicon-twitter:before{content:"\e95a"}.eicon-pinterest:before{content:"\e95b"}.eicon-download-bold:before{content:"\e96b"}.eicon-caret-down:before{content:"\e92a"}.elementor-form-fields-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group .elementor-field-subgroup,.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group>.elementor-select-wrapper,.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group>input,.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group>textarea{-ms-flex-preferred-size:100%;flex-basis:100%;max-width:100%}.elementor-form-fields-wrapper.elementor-labels-inline>.elementor-field-group .elementor-select-wrapper,.elementor-form-fields-wrapper.elementor-labels-inline>.elementor-field-group>input{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-field-group{-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-field-group.elementor-field-type-submit{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.elementor-field-group .elementor-field-textual{width:100%;max-width:100%;border:1px solid #818a91;background-color:transparent;color:#373a3c;vertical-align:middle;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-field-group .elementor-field-textual:focus{-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.1) inset;box-shadow:inset 0 0 0 1px rgba(0,0,0,.1);outline:0}.elementor-field-group .elementor-field-textual::-webkit-input-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual:-ms-input-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual:-moz-placeholder,.elementor-field-group .elementor-field-textual::-moz-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual::-ms-input-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual::placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-select-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;position:relative;width:100%}.elementor-field-group .elementor-select-wrapper select{appearance:none;-webkit-appearance:none;-moz-appearance:none;color:inherit;font-size:inherit;font-family:inherit;font-weight:inherit;font-style:inherit;text-transform:inherit;letter-spacing:inherit;line-height:inherit;-ms-flex-preferred-size:100%;flex-basis:100%;padding-right:20px}.elementor-field-group .elementor-select-wrapper:before{content:"\e92a";font-family:eicons;font-size:15px;position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);right:10px;pointer-events:none;text-shadow:0 0 3px rgba(0,0,0,.3)}.elementor-field-group.elementor-field-type-select-multiple .elementor-select-wrapper:before{content:""}.elementor-field-subgroup{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-field-subgroup .elementor-field-option label{display:inline-block}.elementor-field-subgroup.elementor-subgroup-inline .elementor-field-option{padding-right:10px}.elementor-field-subgroup:not(.elementor-subgroup-inline) .elementor-field-option{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option label,.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option label,.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option label{display:inline}.elementor-field-label{cursor:pointer}.elementor-mark-required .elementor-field-label:after{content:"*";color:red;padding-left:.2em}.elementor-field-textual{line-height:1.4;font-size:15px;min-height:40px;padding:5px 14px;-webkit-border-radius:3px;border-radius:3px}.elementor-field-textual.elementor-size-xs{font-size:13px;min-height:33px;padding:4px 12px;-webkit-border-radius:2px;border-radius:2px}.elementor-field-textual.elementor-size-md{font-size:16px;min-height:47px;padding:6px 16px;-webkit-border-radius:4px;border-radius:4px}.elementor-field-textual.elementor-size-lg{font-size:18px;min-height:59px;padding:7px 20px;-webkit-border-radius:5px;border-radius:5px}.elementor-field-textual.elementor-size-xl{font-size:20px;min-height:72px;padding:8px 24px;-webkit-border-radius:6px;border-radius:6px}.elementor-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-button-align-stretch .e-form__buttons__wrapper{-ms-flex-preferred-size:50%;flex-basis:50%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-button-align-stretch .e-form__buttons__wrapper__button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-button-align-center .e-form__buttons,.elementor-button-align-center .elementor-field-type-submit{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-button-align-start .e-form__buttons,.elementor-button-align-start .elementor-field-type-submit{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-button-align-end .e-form__buttons,.elementor-button-align-end .elementor-field-type-submit{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:initial;flex-basis:auto}.elementor-button-align-center .e-form__buttons__wrapper,.elementor-button-align-end .e-form__buttons__wrapper,.elementor-button-align-start .e-form__buttons__wrapper{-webkit-box-flex:initial;-ms-flex-positive:initial;flex-grow:0}.elementor-button-align-center .e-form__buttons__wrapper,.elementor-button-align-center .e-form__buttons__wrapper__button,.elementor-button-align-end .e-form__buttons__wrapper,.elementor-button-align-end .e-form__buttons__wrapper__button,.elementor-button-align-start .e-form__buttons__wrapper,.elementor-button-align-start .e-form__buttons__wrapper__button{-ms-flex-preferred-size:initial;flex-basis:auto}@media screen and (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-tablet-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-tablet-button-align-stretch .e-form__buttons__wrapper{-ms-flex-preferred-size:50%;flex-basis:50%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-tablet-button-align-stretch .e-form__buttons__wrapper__button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-tablet-button-align-center .e-form__buttons,.elementor-tablet-button-align-center .elementor-field-type-submit{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-tablet-button-align-start .e-form__buttons,.elementor-tablet-button-align-start .elementor-field-type-submit{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-tablet-button-align-end .e-form__buttons,.elementor-tablet-button-align-end .elementor-field-type-submit{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-tablet-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-tablet-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-tablet-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:initial;flex-basis:auto}.elementor-tablet-button-align-center .e-form__buttons__wrapper,.elementor-tablet-button-align-end .e-form__buttons__wrapper,.elementor-tablet-button-align-start .e-form__buttons__wrapper{-webkit-box-flex:initial;-ms-flex-positive:initial;flex-grow:0}.elementor-tablet-button-align-center .e-form__buttons__wrapper,.elementor-tablet-button-align-center .e-form__buttons__wrapper__button,.elementor-tablet-button-align-end .e-form__buttons__wrapper,.elementor-tablet-button-align-end .e-form__buttons__wrapper__button,.elementor-tablet-button-align-start .e-form__buttons__wrapper,.elementor-tablet-button-align-start .e-form__buttons__wrapper__button{-ms-flex-preferred-size:initial;flex-basis:auto}}@media screen and (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-mobile-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-mobile-button-align-stretch .e-form__buttons__wrapper{-ms-flex-preferred-size:50%;flex-basis:50%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-mobile-button-align-stretch .e-form__buttons__wrapper__button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-mobile-button-align-center .e-form__buttons,.elementor-mobile-button-align-center .elementor-field-type-submit{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-mobile-button-align-start .e-form__buttons,.elementor-mobile-button-align-start .elementor-field-type-submit{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-mobile-button-align-end .e-form__buttons,.elementor-mobile-button-align-end .elementor-field-type-submit{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-mobile-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-mobile-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-mobile-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:initial;flex-basis:auto}.elementor-mobile-button-align-center .e-form__buttons__wrapper,.elementor-mobile-button-align-end .e-form__buttons__wrapper,.elementor-mobile-button-align-start .e-form__buttons__wrapper{-webkit-box-flex:initial;-ms-flex-positive:initial;flex-grow:0}.elementor-mobile-button-align-center .e-form__buttons__wrapper,.elementor-mobile-button-align-center .e-form__buttons__wrapper__button,.elementor-mobile-button-align-end .e-form__buttons__wrapper,.elementor-mobile-button-align-end .e-form__buttons__wrapper__button,.elementor-mobile-button-align-start .e-form__buttons__wrapper,.elementor-mobile-button-align-start .e-form__buttons__wrapper__button{-ms-flex-preferred-size:initial;flex-basis:auto}}.elementor-error .elementor-field{border-color:#d9534f}.elementor-error .help-inline{color:#d9534f;font-size:.9em}.elementor-message{margin:10px 0;font-size:1em;line-height:1}.elementor-message:before{content:"\e90e";display:inline-block;font-family:eicons;font-weight:400;font-style:normal;vertical-align:middle;margin-right:5px}.elementor-message.elementor-message-danger{color:#d9534f}.elementor-message.elementor-message-danger:before{content:"\e87f"}.elementor-message.form-message-success{color:#5cb85c}.elementor-form .elementor-button{padding-top:0;padding-bottom:0;border:none}.elementor-form .elementor-button>span{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-form .elementor-button.elementor-size-xs{min-height:33px}.elementor-form .elementor-button.elementor-size-sm{min-height:40px}.elementor-form .elementor-button.elementor-size-md{min-height:47px}.elementor-form .elementor-button.elementor-size-lg{min-height:59px}.elementor-form .elementor-button.elementor-size-xl{min-height:72px}.elementor-element .elementor-widget-container{-webkit-transition:background .3s,border .3s,-webkit-border-radius .3s,-webkit-box-shadow .3s;transition:background .3s,border .3s,-webkit-border-radius .3s,-webkit-box-shadow .3s;-o-transition:background .3s,border .3s,border-radius .3s,box-shadow .3s;transition:background .3s,border .3s,border-radius .3s,box-shadow .3s;transition:background .3s,border .3s,border-radius .3s,box-shadow .3s,-webkit-border-radius .3s,-webkit-box-shadow .3s}.elementor-button{display:inline-block;line-height:1;background-color:#818a91;font-size:15px;padding:12px 24px;-webkit-border-radius:3px;border-radius:3px;color:#fff;fill:#fff;text-align:center;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.elementor-button:focus,.elementor-button:hover,.elementor-button:visited{color:#fff}.elementor-button-content-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-button-icon{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-button-icon svg{width:1em;height:auto}.elementor-button-icon .e-font-icon-svg{height:1em}.elementor-button-text{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10;display:inline-block}.elementor-button.elementor-size-xs{font-size:13px;padding:10px 20px;-webkit-border-radius:2px;border-radius:2px}.elementor-button.elementor-size-md{font-size:16px;padding:15px 30px;-webkit-border-radius:4px;border-radius:4px}.elementor-button.elementor-size-lg{font-size:18px;padding:20px 40px;-webkit-border-radius:5px;border-radius:5px}.elementor-button.elementor-size-xl{font-size:20px;padding:25px 50px;-webkit-border-radius:6px;border-radius:6px}.elementor-button .elementor-align-icon-right{margin-left:5px;-webkit-box-ordinal-group:16;-ms-flex-order:15;order:15}.elementor-button .elementor-align-icon-left{margin-right:5px;-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-button span{text-decoration:inherit}.elementor-menu-cart__toggle .elementor-button-icon{-webkit-box-ordinal-group:16;-ms-flex-order:15;order:15}.elementor-element.elementor-button-info .elementor-button{background-color:#5bc0de}.elementor-element.elementor-button-success .elementor-button{background-color:#5cb85c}.elementor-element.elementor-button-warning .elementor-button{background-color:#f0ad4e}.elementor-element.elementor-button-danger .elementor-button{background-color:#d9534f}.elementor-widget-button .elementor-button .elementor-button-info{background-color:#5bc0de}.elementor-widget-button .elementor-button .elementor-button-success{background-color:#5cb85c}.elementor-widget-button .elementor-button .elementor-button-warning{background-color:#f0ad4e}.elementor-widget-button .elementor-button .elementor-button-danger{background-color:#d9534f}.elementor-tab-title a{color:inherit}.elementor-view-stacked .elementor-icon{padding:.5em;background-color:#818a91;color:#fff;fill:#fff}.elementor-view-framed .elementor-icon{padding:.5em;color:#818a91;border:3px solid #818a91;background-color:transparent}.elementor-icon{display:inline-block;line-height:1;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;color:#818a91;font-size:50px;text-align:center}.elementor-icon:hover{color:#818a91}.elementor-icon i,.elementor-icon svg{width:1em;height:1em;position:relative;display:block}.elementor-icon i:before,.elementor-icon svg:before{position:absolute;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.elementor-icon i.fad{width:auto}.elementor-shape-circle .elementor-icon{-webkit-border-radius:50%;border-radius:50%}.slick-slider{-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-ms-touch-action:pan-y;touch-action:pan-y;-webkit-tap-highlight-color:transparent}.slick-list,.slick-slider{position:relative;display:block}.slick-list{overflow:hidden;margin:0;padding:0}.slick-list:focus{outline:none}.slick-list.dragging{cursor:pointer}.slick-slider .slick-list,.slick-slider .slick-track{-webkit-transform:translateZ(0);transform:translateZ(0)}.slick-track{position:relative;left:0;top:0;display:block}.slick-track:after,.slick-track:before{content:"";display:table}.slick-track:after{clear:both}.slick-loading .slick-track{visibility:hidden}.slick-slide{float:left;height:100%;min-height:1px;display:none}.elementor-slick-slider[dir=rtl] .slick-slide{float:right}.slick-slide img{display:block}.slick-slide.slick-loading img{display:none}.slick-slide.dragging img{pointer-events:none}.slick-initialized .slick-slide{display:block}.slick-loading .slick-slide{visibility:hidden}.slick-vertical .slick-slide{display:block;height:auto;border:1px solid transparent}.slick-arrow.slick-hidden{display:none}.elementor-slick-slider .slick-loading .slick-list{background:#fff}.elementor-slick-slider .slick-loading .slick-list:after{content:"\e8fb";font-family:eicons;position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite;font-size:25px;color:#a4afb7}.elementor-slick-slider .slick-next,.elementor-slick-slider .slick-prev{font-size:0;line-height:0;position:absolute;top:50%;display:block;width:20px;padding:0;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);cursor:pointer;color:transparent;border:none;outline:none;background:transparent}.elementor-slick-slider .slick-next:focus,.elementor-slick-slider .slick-next:hover,.elementor-slick-slider .slick-prev:focus,.elementor-slick-slider .slick-prev:hover{color:transparent;outline:none;background:transparent}.elementor-slick-slider .slick-next:focus:before,.elementor-slick-slider .slick-next:hover:before,.elementor-slick-slider .slick-prev:focus:before,.elementor-slick-slider .slick-prev:hover:before{opacity:1}.elementor-slick-slider .slick-next.slick-disabled:before,.elementor-slick-slider .slick-prev.slick-disabled:before{opacity:.25}.elementor-slick-slider .slick-next:before,.elementor-slick-slider .slick-prev:before{font-family:eicons;font-size:35px;line-height:1;opacity:.75;color:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.elementor-slick-slider .slick-prev{left:-25px}[dir=rtl] .elementor-slick-slider .slick-prev{left:auto;right:-25px}.elementor-slick-slider .slick-prev:before{content:"\e89f"}[dir=rtl] .elementor-slick-slider .slick-prev:before{content:"\e89e"}.elementor-slick-slider .slick-next{right:-25px}[dir=rtl] .elementor-slick-slider .slick-next{left:-25px;right:auto}.elementor-slick-slider .slick-next:before{content:"\e89e"}[dir=rtl] .elementor-slick-slider .slick-next:before{content:"\e89f"}.elementor-slick-slider .slick-dotted.slick-slider{margin-bottom:30px}.elementor-slick-slider ul.slick-dots{position:absolute;bottom:-25px;display:block;width:100%;padding:0;margin:0;list-style:none;text-align:center;line-height:1}.elementor-slick-slider ul.slick-dots li{position:relative;display:inline-block;width:20px;height:20px;margin:0;padding:0;cursor:pointer}.elementor-slick-slider ul.slick-dots li button{font-size:0;line-height:0;display:block;width:20px;height:20px;padding:5px;cursor:pointer;color:transparent;border:0;outline:none;background:transparent}.elementor-slick-slider ul.slick-dots li button:focus,.elementor-slick-slider ul.slick-dots li button:hover{outline:none}.elementor-slick-slider ul.slick-dots li button:focus:before,.elementor-slick-slider ul.slick-dots li button:hover:before{opacity:1}.elementor-slick-slider ul.slick-dots li button:before{font-family:eicons;font-size:6px;line-height:20px;position:absolute;top:0;left:0;width:20px;height:20px;content:"\e914";text-align:center;opacity:.25;color:#000;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.elementor-slick-slider ul.slick-dots li.slick-active button:before{opacity:.75;color:#000}.elementor-slick-slider .slick-arrows-inside .slick-prev{left:20px}[dir=rtl] .elementor-slick-slider .slick-arrows-inside .slick-prev{left:auto;right:20px}.elementor-slick-slider .slick-arrows-inside .slick-next{right:20px}[dir=rtl] .elementor-slick-slider .slick-arrows-inside .slick-next{left:20px;right:auto}.elementor-slick-slider .slick-dots-inside .slick-dots{bottom:5px}.elementor-slick-slider .slick-dots-inside.slick-dotted.slick-slider{margin-bottom:0}.elementor-slick-slider .slick-slider .slick-next,.elementor-slick-slider .slick-slider .slick-prev{z-index:1}.elementor-slick-slider .slick-slide img{margin:auto}.swiper-container{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;z-index:1}.swiper-container .swiper-slide figure{line-height:0}.swiper-container .elementor-lightbox-content-source{display:none}.swiper-container-no-flexbox .swiper-slide{float:left}.swiper-container-vertical>.swiper-wrapper{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;-o-transition-property:transform;transition-property:transform;transition-property:transform,-webkit-transform;-webkit-box-sizing:content-box;box-sizing:content-box}.swiper-container-android .swiper-slide,.swiper-wrapper{-webkit-transform:translateZ(0);transform:translateZ(0)}.swiper-container-multirow>.swiper-wrapper{-ms-flex-wrap:wrap;flex-wrap:wrap}.swiper-container-free-mode>.swiper-wrapper{-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out;margin:0 auto}.swiper-slide{-ms-flex-negative:0;flex-shrink:0;width:100%;height:100%;position:relative}.swiper-container-autoheight,.swiper-container-autoheight .swiper-slide{height:auto}.swiper-container-autoheight .swiper-wrapper{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-transition-property:height,-webkit-transform;transition-property:height,-webkit-transform;-o-transition-property:transform,height;transition-property:transform,height;transition-property:transform,height,-webkit-transform}.swiper-container .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}.swiper-wp8-horizontal{-ms-touch-action:pan-y;touch-action:pan-y}.swiper-wp8-vertical{-ms-touch-action:pan-x;touch-action:pan-x}.swiper-button-next,.swiper-button-prev{position:absolute;top:50%;width:27px;height:44px;margin-top:-22px;z-index:10;cursor:pointer;-webkit-background-size:27px 44px;background-size:27px 44px;background:no-repeat 50%}.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}.swiper-button-prev,.swiper-container-rtl .swiper-button-next{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z' fill='%23007aff'/%3E%3C/svg%3E");left:10px;right:auto}.swiper-button-prev.swiper-button-black,.swiper-container-rtl .swiper-button-next.swiper-button-black{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z'/%3E%3C/svg%3E")}.swiper-button-prev.swiper-button-white,.swiper-container-rtl .swiper-button-next.swiper-button-white{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z' fill='%23fff'/%3E%3C/svg%3E")}.swiper-button-next,.swiper-container-rtl .swiper-button-prev{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z' fill='%23007aff'/%3E%3C/svg%3E");right:10px;left:auto}.swiper-button-next.swiper-button-black,.swiper-container-rtl .swiper-button-prev.swiper-button-black{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z'/%3E%3C/svg%3E")}.swiper-button-next.swiper-button-white,.swiper-container-rtl .swiper-button-prev.swiper-button-white{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z' fill='%23fff'/%3E%3C/svg%3E")}.swiper-pagination{position:absolute;text-align:center;-webkit-transition:.3s;-o-transition:.3s;transition:.3s;-webkit-transform:translateZ(0);transform:translateZ(0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-container-horizontal>.swiper-pagination-bullets,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:5px;left:0;width:100%}.swiper-pagination-bullet{width:6px;height:6px;display:inline-block;-webkit-border-radius:50%;border-radius:50%;background:#000;opacity:.2}.swiper-pagination-fraction{color:#000}button.swiper-pagination-bullet{border:none;margin:0;padding:0;-webkit-box-shadow:none;box-shadow:none;appearance:none;-webkit-appearance:none;-moz-appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-white .swiper-pagination-bullet{background:#fff}.swiper-pagination-bullet-active{opacity:1}.swiper-pagination-white .swiper-pagination-bullet-active{background:#fff}.swiper-pagination-black .swiper-pagination-bullet-active{background:#000}.swiper-container-vertical>.swiper-pagination-bullets{right:10px;top:50%;-webkit-transform:translate3d(0,-50%,0);transform:translate3d(0,-50%,0)}.swiper-container-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{margin:5px 0;display:block}.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 6px}.swiper-pagination-progressbar{background:rgba(0,0,0,.25);position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:#000;position:absolute;left:0;top:0;width:100%;height:100%;-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);-webkit-transform-origin:left top;-ms-transform-origin:left top;transform-origin:left top}.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{-webkit-transform-origin:right top;-ms-transform-origin:right top;transform-origin:right top}.swiper-container-horizontal>.swiper-pagination-progressbar{width:100%;height:4px;left:0;top:0}.swiper-container-vertical>.swiper-pagination-progressbar{width:4px;height:100%;left:0;top:0}.swiper-pagination-progressbar.swiper-pagination-white{background:hsla(0,0%,100%,.5)}.swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill{background:#fff}.swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill{background:#000}.swiper-container-3d{-webkit-perspective:1200px;perspective:1200px}.swiper-container-3d .swiper-cube-shadow,.swiper-container-3d .swiper-slide,.swiper-container-3d .swiper-slide-shadow-bottom,.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top,.swiper-container-3d .swiper-wrapper{-webkit-transform-style:preserve-3d;transform-style:preserve-3d}.swiper-container-3d .swiper-slide-shadow-bottom,.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-container-3d .swiper-slide-shadow-left{background-image:-webkit-gradient(linear,right top,left top,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(right,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(right,rgba(0,0,0,.5),transparent);background-image:linear-gradient(270deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-right{background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(left,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(left,rgba(0,0,0,.5),transparent);background-image:linear-gradient(90deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-top{background-image:-webkit-gradient(linear,left bottom,left top,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(bottom,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(bottom,rgba(0,0,0,.5),transparent);background-image:linear-gradient(0deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-bottom{background-image:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(top,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(top,rgba(0,0,0,.5),transparent);background-image:linear-gradient(180deg,rgba(0,0,0,.5),transparent)}.swiper-container-coverflow .swiper-wrapper,.swiper-container-flip .swiper-wrapper{-ms-perspective:1200px}.swiper-container-cube,.swiper-container-flip{overflow:visible}.swiper-container-cube .swiper-slide,.swiper-container-flip .swiper-slide{pointer-events:none;z-index:1}.swiper-container-cube .swiper-slide .swiper-slide,.swiper-container-flip .swiper-slide .swiper-slide{pointer-events:none}.swiper-container-cube .swiper-slide-active,.swiper-container-cube .swiper-slide-active .swiper-slide-active,.swiper-container-flip .swiper-slide-active,.swiper-container-flip .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-container-cube .swiper-slide-shadow-bottom,.swiper-container-cube .swiper-slide-shadow-left,.swiper-container-cube .swiper-slide-shadow-right,.swiper-container-cube .swiper-slide-shadow-top,.swiper-container-flip .swiper-slide-shadow-bottom,.swiper-container-flip .swiper-slide-shadow-left,.swiper-container-flip .swiper-slide-shadow-right,.swiper-container-flip .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-container-cube .swiper-slide{visibility:hidden;-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0;width:100%;height:100%}.swiper-container-cube.swiper-container-rtl .swiper-slide{-webkit-transform-origin:100% 0;-ms-transform-origin:100% 0;transform-origin:100% 0}.swiper-container-cube .swiper-slide-active,.swiper-container-cube .swiper-slide-next,.swiper-container-cube .swiper-slide-next+.swiper-slide,.swiper-container-cube .swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-container-cube .swiper-cube-shadow{position:absolute;left:0;bottom:0;width:100%;height:100%;background:#000;opacity:.6;-webkit-filter:blur(50px);filter:blur(50px);z-index:0}.swiper-container-fade.swiper-container-free-mode .swiper-slide{-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out}.swiper-container-fade .swiper-slide{pointer-events:none;-webkit-transition-property:opacity;-o-transition-property:opacity;transition-property:opacity}.swiper-container-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-container-fade .swiper-slide-active,.swiper-container-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-zoom-container{width:100%;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;text-align:center}.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{max-width:100%;max-height:100%;-o-object-fit:contain;object-fit:contain}.swiper-scrollbar{-webkit-border-radius:10px;border-radius:10px;position:relative;-ms-touch-action:none;background:rgba(0,0,0,.1)}.swiper-container-horizontal>.swiper-scrollbar{position:absolute;left:1%;bottom:3px;z-index:50;height:5px;width:98%}.swiper-container-vertical>.swiper-scrollbar{position:absolute;right:3px;top:1%;z-index:50;width:5px;height:98%}.swiper-scrollbar-drag{height:100%;width:100%;position:relative;background:rgba(0,0,0,.5);-webkit-border-radius:10px;border-radius:10px;left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.elementor-pagination-position-outside .swiper-container{padding-bottom:30px}.elementor-pagination-position-outside .elementor-swiper-button{top:calc(50% - 30px / 2)}.elementor-swiper{position:relative}.elementor-main-swiper{position:static}.elementor-arrows-position-outside .swiper-container{width:calc(100% - 60px)}.elementor-arrows-position-outside .elementor-swiper-button-prev{left:0}.elementor-arrows-position-outside .elementor-swiper-button-next{right:0}.swiper-image-stretch .swiper-slide .swiper-slide-image{width:100%}.elementor-swiper-button{position:absolute;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;z-index:1;cursor:pointer;font-size:25px;color:hsla(0,0%,93.3%,.9);top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}.elementor-swiper-button-prev{left:10px}.elementor-swiper-button-next{right:10px}.elementor-swiper-button.swiper-button-disabled{opacity:.3}.swiper-container-cube .elementor-swiper-button{-webkit-transform:translate3d(0,-50%,1px);transform:translate3d(0,-50%,1px)}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;-webkit-transform-origin:50%;-ms-transform-origin:50%;transform-origin:50%;-webkit-animation:swiper-preloader-spin 1s steps(12) infinite;animation:swiper-preloader-spin 1s steps(12) infinite}.swiper-lazy-preloader:after{display:block;content:"";width:100%;height:100%;-webkit-background-size:100% 100%;background-size:100%;background:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath id='a' stroke='%236c6c6c' stroke-width='11' stroke-linecap='round' d='M60 7v20'/%3E%3C/defs%3E%3Cuse xlink:href='%23a' opacity='.27'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(30 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(60 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(90 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(120 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(150 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.37' transform='rotate(180 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.46' transform='rotate(210 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.56' transform='rotate(240 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.66' transform='rotate(270 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.75' transform='rotate(300 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.85' transform='rotate(330 60 60)'/%3E%3C/svg%3E") no-repeat 50%}.swiper-lazy-preloader-white:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath id='a' stroke='%23fff' stroke-width='11' stroke-linecap='round' d='M60 7v20'/%3E%3C/defs%3E%3Cuse xlink:href='%23a' opacity='.27'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(30 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(60 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(90 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(120 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(150 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.37' transform='rotate(180 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.46' transform='rotate(210 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.56' transform='rotate(240 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.66' transform='rotate(270 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.75' transform='rotate(300 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.85' transform='rotate(330 60 60)'/%3E%3C/svg%3E")}@-webkit-keyframes swiper-preloader-spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes swiper-preloader-spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.elementor-lightbox{--lightbox-ui-color:hsla(0,0%,93.3%,0.9);--lightbox-ui-color-hover:#fff;--lightbox-text-color:var(--lightbox-ui-color);--lightbox-header-icons-size:20px;--lightbox-navigation-icons-size:25px}.elementor-lightbox .dialog-header{display:none}.elementor-lightbox .dialog-widget-content{background:none;-webkit-box-shadow:none;box-shadow:none;width:100%;height:100%}.elementor-lightbox .dialog-message{-webkit-animation-duration:.3s;animation-duration:.3s}.elementor-lightbox .dialog-message:not(.elementor-fit-aspect-ratio){height:100%}.elementor-lightbox .dialog-message.dialog-lightbox-message{padding:0}.elementor-lightbox .dialog-lightbox-close-button{cursor:pointer;position:absolute;font-size:var(--lightbox-header-icons-size);right:.75em;margin-top:13px;padding:.25em;z-index:2;line-height:1}.elementor-lightbox .dialog-lightbox-close-button,.elementor-lightbox .elementor-swiper-button{color:var(--lightbox-ui-color);-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;opacity:1}.elementor-lightbox .dialog-lightbox-close-button:hover,.elementor-lightbox .elementor-swiper-button:hover{color:var(--lightbox-ui-color-hover)}.elementor-lightbox .swiper-container{height:100%}.elementor-lightbox .elementor-lightbox-item{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;position:relative;padding:70px;-webkit-box-sizing:border-box;box-sizing:border-box;height:100%;margin:auto}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-lightbox .elementor-lightbox-item{padding:70px 0}}.elementor-lightbox .elementor-lightbox-image{max-height:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.elementor-lightbox .elementor-lightbox-image,.elementor-lightbox .elementor-lightbox-image:hover{opacity:1;-webkit-filter:none;filter:none;border:none}.elementor-lightbox .elementor-lightbox-image,.elementor-lightbox .elementor-video-container{-webkit-box-shadow:0 0 30px rgba(0,0,0,.3),0 0 8px -5px rgba(0,0,0,.3);box-shadow:0 0 30px rgba(0,0,0,.3),0 0 8px -5px rgba(0,0,0,.3);-webkit-border-radius:2px;border-radius:2px}.elementor-lightbox .elementor-video-container{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}@media (min-width:ELEMENTOR_SCREEN_TABLET_NEXT){.elementor-lightbox .elementor-video-container{width:75%}}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-lightbox .elementor-video-container{width:100%}}@media (min-width:768px) and (max-width:1024px){.elementor-lightbox .elementor-aspect-ratio-916 .elementor-video-container{width:70%}}.elementor-lightbox .elementor-swiper-button:focus{outline-width:1px}.elementor-lightbox .elementor-swiper-button-next,.elementor-lightbox .elementor-swiper-button-prev{height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:15%;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;font-size:var(--lightbox-navigation-icons-size)}.elementor-lightbox .elementor-swiper-button-prev{left:0}.elementor-lightbox .elementor-swiper-button-next{right:0}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-lightbox .elementor-swiper-button:focus{outline:none}.elementor-lightbox .elementor-swiper-button-next,.elementor-lightbox .elementor-swiper-button-prev{width:20%}.elementor-lightbox .elementor-swiper-button-next i,.elementor-lightbox .elementor-swiper-button-prev i{padding:10px;background-color:rgba(0,0,0,.5)}.elementor-lightbox .elementor-swiper-button-prev{left:0;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-lightbox .elementor-swiper-button-next{right:0;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}}.elementor-slideshow__counter{color:currentColor;font-size:.75em;width:-webkit-max-content;width:-moz-max-content;width:max-content}.elementor-slideshow__footer,.elementor-slideshow__header{position:absolute;left:0;width:100%;padding:15px 20px;-webkit-transition:.3s;-o-transition:.3s;transition:.3s}.elementor-slideshow__footer{color:var(--lightbox-text-color)}.elementor-slideshow__header{color:var(--lightbox-ui-color);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;font-size:var(--lightbox-header-icons-size);padding-left:1em;padding-right:2.6em;top:0;-webkit-box-align:center;-ms-flex-align:center;align-items:center;z-index:10}.elementor-slideshow__header>i{font-size:inherit;cursor:pointer;padding:.25em;margin:0 .35em}.elementor-slideshow__header>i:hover{color:var(--lightbox-ui-color-hover)}.elementor-slideshow__header .elementor-slideshow__counter{margin-right:auto}.elementor-slideshow__header .elementor-icon-share{z-index:5}.elementor-slideshow__share-menu{background-color:transparent;width:0;height:0;position:absolute;overflow:hidden;-webkit-transition:background-color .4s;-o-transition:background-color .4s;transition:background-color .4s}.elementor-slideshow__share-menu .elementor-slideshow__share-links a{color:#2c2c2c}.elementor-slideshow__share-links{display:block;position:absolute;min-width:200px;right:2.8em;top:3em;background-color:#fff;-webkit-border-radius:3px;border-radius:3px;padding:14px 20px;-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);opacity:0;-webkit-transform-origin:90% 10%;-ms-transform-origin:90% 10%;transform-origin:90% 10%;-webkit-transition:all .25s .1s;-o-transition:all .25s .1s;transition:all .25s .1s;-webkit-box-shadow:0 4px 15px rgba(0,0,0,.3);box-shadow:0 4px 15px rgba(0,0,0,.3)}.elementor-slideshow__share-links a{text-align:left;color:#55595c;font-size:12px;line-height:2.5;display:block;opacity:0;-webkit-transition:opacity .5s .1s;-o-transition:opacity .5s .1s;transition:opacity .5s .1s}.elementor-slideshow__share-links a:hover{color:#000}.elementor-slideshow__share-links a i{font-size:1.25em;margin-right:.75em}.elementor-slideshow__share-links:before{content:"";display:block;position:absolute;top:1px;right:.5em;border:.45em solid transparent;border-bottom-color:#fff;-webkit-transform:translateY(-100%) scaleX(.7);-ms-transform:translateY(-100%) scaleX(.7);transform:translateY(-100%) scaleX(.7)}.elementor-slideshow__footer{bottom:0;z-index:5;position:fixed}.elementor-slideshow__description,.elementor-slideshow__title{margin:0}.elementor-slideshow__title{font-size:16px;font-weight:700}.elementor-slideshow__description{font-size:14px}.elementor-slideshow--ui-hidden .elementor-slideshow__footer,.elementor-slideshow--ui-hidden .elementor-slideshow__header{opacity:0;pointer-events:none}.elementor-slideshow--ui-hidden .elementor-swiper-button-next,.elementor-slideshow--ui-hidden .elementor-swiper-button-prev{opacity:0}.elementor-slideshow--fullscreen-mode .elementor-video-container{width:100%}.elementor-slideshow--zoom-mode .elementor-slideshow__footer,.elementor-slideshow--zoom-mode .elementor-slideshow__header{background-color:rgba(0,0,0,.5)}.elementor-slideshow--zoom-mode .elementor-swiper-button-next,.elementor-slideshow--zoom-mode .elementor-swiper-button-prev{opacity:0;pointer-events:none}.elementor-slideshow--share-mode .elementor-slideshow__share-menu{top:0;left:0;width:100vw;height:100vh;opacity:1;cursor:default;background-color:rgba(0,0,0,.5)}.elementor-slideshow--share-mode .elementor-slideshow__share-links{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}.elementor-slideshow--share-mode .elementor-slideshow__share-links,.elementor-slideshow--share-mode .elementor-slideshow__share-links a{opacity:1}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-twitter{color:#1da1f2}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-facebook{color:#3b5998}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-pinterest{color:#bd081c}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-download-bold{color:#a4afb7}.elementor-slideshow--share-mode .eicon-share-arrow{z-index:2}.animated{-webkit-animation-duration:1.25s;animation-duration:1.25s}.animated.animated-slow{-webkit-animation-duration:2s;animation-duration:2s}.animated.animated-fast{-webkit-animation-duration:.75s;animation-duration:.75s}.animated.infinite{-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}.animated.reverse{animation-direction:reverse;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}@media (prefers-reduced-motion:reduce){.animated{-webkit-animation:none;animation:none}}.elementor-shape{overflow:hidden;position:absolute;left:0;width:100%;line-height:0;direction:ltr}.elementor-shape-top{top:-1px}.elementor-shape-top:not([data-negative=false]) svg{z-index:-1}.elementor-shape-bottom{bottom:-1px}.elementor-shape-bottom:not([data-negative=true]) svg{z-index:-1}.elementor-shape[data-negative=false].elementor-shape-bottom,.elementor-shape[data-negative=true].elementor-shape-top{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.elementor-shape svg{display:block;width:calc(100% + 1.3px);position:relative;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.elementor-shape .elementor-shape-fill{fill:#fff;-webkit-transform-origin:center;-ms-transform-origin:center;transform-origin:center;-webkit-transform:rotateY(0deg);transform:rotateY(0deg)}#wp-admin-bar-elementor_edit_page .ab-submenu .ab-item{display:-webkit-box;display:-ms-flexbox;display:flex;width:200px}#wp-admin-bar-elementor_edit_page .elementor-edit-link-title{white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;width:100%}#wp-admin-bar-elementor_edit_page .elementor-edit-link-type{background:#55595c;font-size:11px;line-height:9px;margin-top:6px;padding:4px 8px;-webkit-border-radius:3px;border-radius:3px}.page-template-elementor_canvas.elementor-page:before{display:none}.elementor-post__thumbnail__link{-webkit-transition:none;-o-transition:none;transition:none}#left-area ul.elementor-icon-list-items,.elementor-edit-area .elementor-element ul.elementor-icon-list-items,.elementor .elementor-element ul.elementor-icon-list-items{padding:0}#wpadminbar *{font-style:normal}.e--ua-appleWebkit.rtl{--flex-right:flex-start}.e--ua-appleWebkit .elementor-share-buttons--align-right,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-right{--justify-content:var(--flex-right,flex-end)}.e--ua-appleWebkit .elementor-share-buttons--align-center,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-center{--justify-content:center}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-justify .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-right .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-right .elementor-grid{width:auto;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:var(--justify-content,space-between);-ms-flex-pack:var(--justify-content,space-between);justify-content:var(--justify-content,space-between);margin-left:calc(-.5 * var(--grid-column-gap));margin-right:calc(-.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-justify .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-right .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-right .elementor-grid-item{margin-left:calc(.5 * var(--grid-column-gap));margin-right:calc(.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid{display:inline-block}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid-item{margin-left:0;margin-right:0}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.e--ua-appleWebkit .elementor-share-buttons-tablet--align-right,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-tablet-right{--justify-content:var(--flex-right,flex-end)}.e--ua-appleWebkit .elementor-share-buttons-tablet--align-center,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-tablet-center{--justify-content:center}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-justify .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-right .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-right .elementor-grid{width:auto;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:var(--justify-content,space-between);-ms-flex-pack:var(--justify-content,space-between);justify-content:var(--justify-content,space-between);margin-left:calc(-.5 * var(--grid-column-gap));margin-right:calc(-.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-justify .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-right .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-right .elementor-grid-item{margin-left:calc(.5 * var(--grid-column-gap));margin-right:calc(.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid{display:inline-block}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid-item{margin-left:0;margin-right:0}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.e--ua-appleWebkit .elementor-share-buttons-mobile--align-right,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-mobile-right{--justify-content:var(--flex-right,flex-end)}.e--ua-appleWebkit .elementor-share-buttons-mobile--align-center,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-mobile-center{--justify-content:center}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-justify .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-right .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-right .elementor-grid{width:auto;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:var(--justify-content,space-between);-ms-flex-pack:var(--justify-content,space-between);justify-content:var(--justify-content,space-between);margin-left:calc(-.5 * var(--grid-column-gap));margin-right:calc(-.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-justify .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-right .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-right .elementor-grid-item{margin-left:calc(.5 * var(--grid-column-gap));margin-right:calc(.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid{display:inline-block}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid-item{margin-left:0;margin-right:0}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor .elementor-hidden-mobile,.elementor .elementor-hidden-phone{display:none}}@media (min-width:ELEMENTOR_SCREEN_MOBILE_EXTRA_MIN) and (max-width:ELEMENTOR_SCREEN_MOBILE_EXTRA_MAX){.elementor .elementor-hidden-mobile_extra{display:none}}@media (min-width:ELEMENTOR_SCREEN_TABLET_MIN) and (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor .elementor-hidden-tablet{display:none}}@media (min-width:ELEMENTOR_SCREEN_TABLET_EXTRA_MIN) and (max-width:ELEMENTOR_SCREEN_TABLET_EXTRA_MAX){.elementor .elementor-hidden-tablet_extra{display:none}}@media (min-width:ELEMENTOR_SCREEN_LAPTOP_MIN) and (max-width:ELEMENTOR_SCREEN_LAPTOP_MAX){.elementor .elementor-hidden-laptop{display:none}}@media (min-width:ELEMENTOR_SCREEN_DESKTOP_MIN) and (max-width:ELEMENTOR_SCREEN_DESKTOP_MAX){.elementor .elementor-hidden-desktop{display:none}}@media (min-width:ELEMENTOR_SCREEN_WIDESCREEN_MIN){.elementor .elementor-hidden-widescreen{display:none}}.elementor-widget-text-path{font-size:20px;text-align:var(--alignment,left)}.elementor-widget-text-path svg{width:var(--width);max-width:100%;height:auto;overflow:visible;word-spacing:var(--word-spacing);-webkit-transform:rotate(var(--rotate,0)) scaleX(var(--scale-x,1)) scaleY(var(--scale-y,1));-ms-transform:rotate(var(--rotate,0)) scaleX(var(--scale-x,1)) scaleY(var(--scale-y,1));transform:rotate(var(--rotate,0)) scaleX(var(--scale-x,1)) scaleY(var(--scale-y,1))}.elementor-widget-text-path svg path{vector-effect:non-scaling-stroke;fill:var(--path-fill,transparent);stroke:var(--stroke-color,transparent);stroke-width:var(--stroke-width,1px);-webkit-transition:var(--stroke-transition) stroke,var(--stroke-transition) fill;-o-transition:var(--stroke-transition) stroke,var(--stroke-transition) fill;transition:var(--stroke-transition) stroke,var(--stroke-transition) fill}.elementor-widget-text-path svg:hover path{--path-fill:var(--path-fill-hover);--stroke-color:var(--stroke-color-hover);--stroke-width:var(--stroke-width-hover)}.elementor-widget-text-path svg text{--fill:var(--text-color);fill:var(--fill);direction:var(--direction,ltr);-webkit-transition:var(--transition) stroke,var(--transition) stroke-width,var(--transition) fill;-o-transition:var(--transition) stroke,var(--transition) stroke-width,var(--transition) fill;transition:var(--transition) stroke,var(--transition) stroke-width,var(--transition) fill}.elementor-widget-text-path svg text:hover{--color:var(--text-color-hover,var(--text-color));--fill:var(--color);color:var(--color)}.elementor-accordion{text-align:left}.elementor-accordion .elementor-accordion-item{border:1px solid #d4d4d4}.elementor-accordion .elementor-accordion-item+.elementor-accordion-item{border-top:none}.elementor-accordion .elementor-tab-title{margin:0;padding:15px 20px;font-weight:700;line-height:1;cursor:pointer;outline:none}.elementor-accordion .elementor-tab-title .elementor-accordion-icon{display:inline-block;width:1.5em}.elementor-accordion .elementor-tab-title .elementor-accordion-icon svg{width:1em;height:1em}.elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-right{float:right;text-align:right}.elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-left{float:left;text-align:left}.elementor-accordion .elementor-tab-title .elementor-accordion-icon .elementor-accordion-icon-closed{display:block}.elementor-accordion .elementor-tab-title .elementor-accordion-icon .elementor-accordion-icon-opened,.elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-closed{display:none}.elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-opened{display:block}.elementor-accordion .elementor-tab-content{display:none;padding:15px 20px;border-top:1px solid #d4d4d4}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-accordion .elementor-tab-title{padding:12px 15px}.elementor-accordion .elementor-tab-title .elementor-accordion-icon{width:1.2em}.elementor-accordion .elementor-tab-content{padding:7px 15px}}.elementor-alert{padding:15px;border-left:5px solid transparent;position:relative;text-align:left}.elementor-alert .elementor-alert-title{display:block;font-weight:700}.elementor-alert .elementor-alert-description{font-size:13px}.elementor-alert button.elementor-alert-dismiss{position:absolute;right:10px;top:10px;padding:3px;font-size:20px;line-height:1;background:transparent;color:inherit;border:none;cursor:pointer}.elementor-alert.elementor-alert-info{color:#31708f;background-color:#d9edf7;border-color:#bcdff1}.elementor-alert.elementor-alert-success{color:#3c763d;background-color:#dff0d8;border-color:#cae6be}.elementor-alert.elementor-alert-warning{color:#8a6d3b;background-color:#fcf8e3;border-color:#f9f0c3}.elementor-alert.elementor-alert-danger{color:#a94442;background-color:#f2dede;border-color:#e8c4c4}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-alert{padding:10px}.elementor-alert button.elementor-alert-dismiss{right:7px;top:7px}}.elementor-counter .elementor-counter-number-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;font-size:69px;font-weight:600;line-height:1}.elementor-counter .elementor-counter-number-prefix,.elementor-counter .elementor-counter-number-suffix{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;white-space:pre-wrap}.elementor-counter .elementor-counter-number-prefix{text-align:right}.elementor-counter .elementor-counter-number-suffix{text-align:left}.elementor-counter .elementor-counter-title{text-align:center;font-size:19px;font-weight:400;line-height:2.5}.elementor-widget-divider{--divider-border-style:none;--divider-border-width:1px;--divider-color:#2c2c2c;--divider-icon-size:20px;--divider-element-spacing:10px;--divider-pattern-height:24px;--divider-pattern-size:20px;--divider-pattern-url:none;--divider-pattern-repeat:repeat-x}.elementor-widget-divider .elementor-divider{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget-divider .elementor-divider__text{font-size:15px;line-height:1;max-width:95%}.elementor-widget-divider .elementor-divider__element{margin:0 var(--divider-element-spacing);-ms-flex-negative:0;flex-shrink:0}.elementor-widget-divider .elementor-icon{font-size:var(--divider-icon-size)}.elementor-widget-divider .elementor-divider-separator{display:-webkit-box;display:-ms-flexbox;display:flex;margin:0;direction:ltr}.elementor-widget-divider--view-line_icon .elementor-divider-separator,.elementor-widget-divider--view-line_text .elementor-divider-separator{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-widget-divider--view-line_icon .elementor-divider-separator:after,.elementor-widget-divider--view-line_icon .elementor-divider-separator:before,.elementor-widget-divider--view-line_text .elementor-divider-separator:after,.elementor-widget-divider--view-line_text .elementor-divider-separator:before{display:block;content:"";border-bottom:0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;border-top:var(--divider-border-width) var(--divider-border-style) var(--divider-color)}.elementor-widget-divider--element-align-left .elementor-divider .elementor-divider-separator>.elementor-divider__svg:first-of-type{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:100;flex-shrink:100}.elementor-widget-divider--element-align-left .elementor-divider-separator:before{content:none}.elementor-widget-divider--element-align-left .elementor-divider__element{margin-left:0}.elementor-widget-divider--element-align-right .elementor-divider .elementor-divider-separator>.elementor-divider__svg:last-of-type{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:100;flex-shrink:100}.elementor-widget-divider--element-align-right .elementor-divider-separator:after{content:none}.elementor-widget-divider--element-align-right .elementor-divider__element{margin-right:0}.elementor-widget-divider:not(.elementor-widget-divider--view-line_text):not(.elementor-widget-divider--view-line_icon) .elementor-divider-separator{border-top:var(--divider-border-width) var(--divider-border-style) var(--divider-color)}.elementor-widget-divider--separator-type-pattern{--divider-border-style:none}.elementor-widget-divider--separator-type-pattern.elementor-widget-divider--view-line .elementor-divider-separator,.elementor-widget-divider--separator-type-pattern:not(.elementor-widget-divider--view-line) .elementor-divider-separator:after,.elementor-widget-divider--separator-type-pattern:not(.elementor-widget-divider--view-line) .elementor-divider-separator:before,.elementor-widget-divider--separator-type-pattern:not([class*=elementor-widget-divider--view]) .elementor-divider-separator{width:100%;min-height:var(--divider-pattern-height);-webkit-mask-size:var(--divider-pattern-size) 100%;mask-size:var(--divider-pattern-size) 100%;-webkit-mask-repeat:var(--divider-pattern-repeat);mask-repeat:var(--divider-pattern-repeat);background-color:var(--divider-color);-webkit-mask-image:var(--divider-pattern-url);mask-image:var(--divider-pattern-url)}.elementor-widget-divider--no-spacing{--divider-pattern-size:auto}.elementor-widget-divider--bg-round{--divider-pattern-repeat:round}.rtl .elementor-widget-divider .elementor-divider__text{direction:rtl}.elementor-image-gallery .gallery-item{display:inline-block;text-align:center;vertical-align:top;width:100%;max-width:100%;margin:0 auto}.elementor-image-gallery .gallery-item img{margin:0 auto}.elementor-image-gallery .gallery-item .gallery-caption{margin:0}.elementor-image-gallery figure img{display:block}.elementor-image-gallery figure figcaption{width:100%}.gallery-spacing-custom .elementor-image-gallery .gallery-icon{padding:0}@media (min-width:ELEMENTOR_SCREEN_MOBILE_NEXT){.elementor-image-gallery .gallery-columns-2 .gallery-item{max-width:50%}.elementor-image-gallery .gallery-columns-3 .gallery-item{max-width:33.33%}.elementor-image-gallery .gallery-columns-4 .gallery-item{max-width:25%}.elementor-image-gallery .gallery-columns-5 .gallery-item{max-width:20%}.elementor-image-gallery .gallery-columns-6 .gallery-item{max-width:16.666%}.elementor-image-gallery .gallery-columns-7 .gallery-item{max-width:14.28%}.elementor-image-gallery .gallery-columns-8 .gallery-item{max-width:12.5%}.elementor-image-gallery .gallery-columns-9 .gallery-item{max-width:11.11%}.elementor-image-gallery .gallery-columns-10 .gallery-item{max-width:10%}}@media (min-width:480px) and (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-image-gallery .gallery.gallery-columns-2 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-3 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-4 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-5 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-6 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-7 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-8 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-9 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-10 .gallery-item{max-width:50%}}@media (max-width:479px){.elementor-image-gallery .gallery.gallery-columns-2 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-3 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-4 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-5 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-6 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-7 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-8 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-9 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-10 .gallery-item{max-width:100%}}.elementor-widget-google_maps .elementor-widget-container{overflow:hidden}.elementor-widget-google_maps iframe{height:300px}.elementor-heading-title{padding:0;margin:0;line-height:1}.elementor-widget-heading .elementor-heading-title[class*=elementor-size-]>a{color:inherit;font-size:inherit;line-height:inherit}.elementor-widget-heading .elementor-heading-title.elementor-size-small{font-size:15px}.elementor-widget-heading .elementor-heading-title.elementor-size-medium{font-size:19px}.elementor-widget-heading .elementor-heading-title.elementor-size-large{font-size:29px}.elementor-widget-heading .elementor-heading-title.elementor-size-xl{font-size:39px}.elementor-widget-heading .elementor-heading-title.elementor-size-xxl{font-size:59px}@media (min-width:ELEMENTOR_SCREEN_MOBILE_NEXT){.elementor-widget-icon-box.elementor-position-left .elementor-icon-box-wrapper,.elementor-widget-icon-box.elementor-position-right .elementor-icon-box-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget-icon-box.elementor-position-left .elementor-icon-box-icon,.elementor-widget-icon-box.elementor-position-right .elementor-icon-box-icon{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.elementor-widget-icon-box.elementor-position-right .elementor-icon-box-wrapper{text-align:right;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-widget-icon-box.elementor-position-left .elementor-icon-box-wrapper{text-align:left;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.elementor-widget-icon-box.elementor-position-top .elementor-icon-box-img{margin:auto}.elementor-widget-icon-box.elementor-vertical-align-top .elementor-icon-box-wrapper{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.elementor-widget-icon-box.elementor-vertical-align-middle .elementor-icon-box-wrapper{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-widget-icon-box.elementor-vertical-align-bottom .elementor-icon-box-wrapper{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-widget-icon-box .elementor-icon-box-icon{margin-left:auto!important;margin-right:auto!important;margin-bottom:15px}}.elementor-widget-icon-box .elementor-icon-box-wrapper{text-align:center}.elementor-widget-icon-box .elementor-icon-box-title a{color:inherit}.elementor-widget-icon-box .elementor-icon-box-content{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-widget-icon-box .elementor-icon-box-description{margin:0}.elementor-widget.elementor-icon-list--layout-inline .elementor-widget-container{overflow:hidden}.elementor-widget .elementor-icon-list-items.elementor-inline-items{margin-right:-8px;margin-left:-8px}.elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-right:8px;margin-left:8px}.elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{width:auto;left:auto;right:auto;position:relative;height:100%;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);border-top:0;border-bottom:0;border-right:0;border-left-width:1px;border-style:solid;right:-8px}.elementor-widget .elementor-icon-list-items{list-style-type:none;margin:0;padding:0}.elementor-widget .elementor-icon-list-item{margin:0;padding:0;position:relative}.elementor-widget .elementor-icon-list-item:after{position:absolute;bottom:0;width:100%}.elementor-widget .elementor-icon-list-item,.elementor-widget .elementor-icon-list-item a{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-size:inherit}.elementor-widget .elementor-icon-list-icon+.elementor-icon-list-text{-ms-flex-item-align:center;align-self:center;padding-left:5px}.elementor-widget .elementor-icon-list-icon{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget .elementor-icon-list-icon svg{width:var(--e-icon-list-icon-size,1em);height:var(--e-icon-list-icon-size,1em)}.elementor-widget .elementor-icon-list-icon i{width:1.25em;font-size:var(--e-icon-list-icon-size)}.elementor-widget.elementor-widget-icon-list .elementor-icon-list-icon{text-align:var(--e-icon-list-icon-align)}.elementor-widget.elementor-widget-icon-list .elementor-icon-list-icon svg{margin:var(--e-icon-list-icon-margin,0 calc(var(--e-icon-list-icon-size, 1em) * .25) 0 0)}.elementor-widget.elementor-list-item-link-full_width a{width:100%}.elementor-widget.elementor-align-center .elementor-icon-list-item,.elementor-widget.elementor-align-center .elementor-icon-list-item a{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget.elementor-align-center .elementor-inline-items{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-align-left .elementor-icon-list-item,.elementor-widget.elementor-align-left .elementor-icon-list-item a{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;text-align:left}.elementor-widget.elementor-align-left .elementor-inline-items{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-widget.elementor-align-right .elementor-icon-list-item,.elementor-widget.elementor-align-right .elementor-icon-list-item a{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;text-align:right}.elementor-widget.elementor-align-right .elementor-icon-list-items{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-widget:not(.elementor-align-right) .elementor-icon-list-item:after{left:0}.elementor-widget:not(.elementor-align-left) .elementor-icon-list-item:after{right:0}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-widget.elementor-tablet-align-center .elementor-icon-list-item,.elementor-widget.elementor-tablet-align-center .elementor-icon-list-item a,.elementor-widget.elementor-tablet-align-center .elementor-icon-list-items{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-tablet-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget.elementor-tablet-align-left .elementor-icon-list-items{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-widget.elementor-tablet-align-left .elementor-icon-list-item,.elementor-widget.elementor-tablet-align-left .elementor-icon-list-item a{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;text-align:left}.elementor-widget.elementor-tablet-align-right .elementor-icon-list-items{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-widget.elementor-tablet-align-right .elementor-icon-list-item,.elementor-widget.elementor-tablet-align-right .elementor-icon-list-item a{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;text-align:right}.elementor-widget:not(.elementor-tablet-align-right) .elementor-icon-list-item:after{left:0}.elementor-widget:not(.elementor-tablet-align-left) .elementor-icon-list-item:after{right:0}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-widget.elementor-mobile-align-center .elementor-icon-list-item,.elementor-widget.elementor-mobile-align-center .elementor-icon-list-item a,.elementor-widget.elementor-mobile-align-center .elementor-icon-list-items{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-mobile-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget.elementor-mobile-align-left .elementor-icon-list-items{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-widget.elementor-mobile-align-left .elementor-icon-list-item,.elementor-widget.elementor-mobile-align-left .elementor-icon-list-item a{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;text-align:left}.elementor-widget.elementor-mobile-align-right .elementor-icon-list-items{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-widget.elementor-mobile-align-right .elementor-icon-list-item,.elementor-widget.elementor-mobile-align-right .elementor-icon-list-item a{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;text-align:right}.elementor-widget:not(.elementor-mobile-align-right) .elementor-icon-list-item:after{left:0}.elementor-widget:not(.elementor-mobile-align-left) .elementor-icon-list-item:after{right:0}}.elementor-widget-image{text-align:center}.elementor-widget-image a{display:inline-block}.elementor-widget-image a img[src$=".svg"]{width:48px}.elementor-widget-image img{vertical-align:middle;display:inline-block}.elementor-widget-image-box .elementor-image-box-content{width:100%}@media (min-width:ELEMENTOR_SCREEN_MOBILE_NEXT){.elementor-widget-image-box.elementor-position-left .elementor-image-box-wrapper,.elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper{text-align:right;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-widget-image-box.elementor-position-left .elementor-image-box-wrapper{text-align:left;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.elementor-widget-image-box.elementor-position-top .elementor-image-box-img{margin:auto}.elementor-widget-image-box.elementor-vertical-align-top .elementor-image-box-wrapper{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.elementor-widget-image-box.elementor-vertical-align-middle .elementor-image-box-wrapper{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-widget-image-box.elementor-vertical-align-bottom .elementor-image-box-wrapper{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-widget-image-box .elementor-image-box-img{margin-left:auto!important;margin-right:auto!important;margin-bottom:15px}}.elementor-widget-image-box .elementor-image-box-img{display:inline-block}.elementor-widget-image-box .elementor-image-box-title a{color:inherit}.elementor-widget-image-box .elementor-image-box-wrapper{text-align:center}.elementor-widget-image-box .elementor-image-box-description{margin:0}.elementor-widget-image-carousel .swiper-container{position:static}.elementor-widget-image-carousel .swiper-container .swiper-slide figure{line-height:inherit}.elementor-widget-image-carousel .swiper-slide{text-align:center}.elementor-image-carousel-wrapper:not(.swiper-container-initialized) .swiper-slide{max-width:calc(100% / var(--e-image-carousel-slides-to-show, 3))}body.elementor-page .elementor-widget-menu-anchor{margin-bottom:0}.elementor-widget-progress{text-align:left}.elementor-progress-wrapper{position:relative;background-color:#eee;color:#fff;height:100%;-webkit-border-radius:2px;border-radius:2px}.elementor-progress-bar{display:-webkit-box;display:-ms-flexbox;display:flex;background-color:#818a91;width:0;font-size:11px;height:30px;line-height:30px;-webkit-border-radius:2px;border-radius:2px;-webkit-transition:width 1s ease-in-out;-o-transition:width 1s ease-in-out;transition:width 1s ease-in-out}.elementor-progress-text{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;padding-left:15px}.elementor-progress-percentage{padding-right:15px}.elementor-widget-progress .elementor-progress-wrapper.progress-info .elementor-progress-bar{background-color:#5bc0de}.elementor-widget-progress .elementor-progress-wrapper.progress-success .elementor-progress-bar{background-color:#5cb85c}.elementor-widget-progress .elementor-progress-wrapper.progress-warning .elementor-progress-bar{background-color:#f0ad4e}.elementor-widget-progress .elementor-progress-wrapper.progress-danger .elementor-progress-bar{background-color:#d9534f}.elementor-progress .elementor-title{display:block}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-progress-text{padding-left:10px}}.elementor-widget-social-icons.elementor-grid-0 .elementor-widget-container,.elementor-widget-social-icons.elementor-grid-mobile-0 .elementor-widget-container,.elementor-widget-social-icons.elementor-grid-tablet-0 .elementor-widget-container{line-height:1;font-size:0}.elementor-widget-social-icons:not(.elementor-grid-0):not(.elementor-grid-tablet-0):not(.elementor-grid-mobile-0) .elementor-grid{display:inline-grid}.elementor-widget-social-icons .elementor-grid{grid-column-gap:var(--grid-column-gap,5px);grid-row-gap:var(--grid-row-gap,5px);grid-template-columns:var(--grid-template-columns);-webkit-box-pack:var(--justify-content,center);-ms-flex-pack:var(--justify-content,center);justify-content:var(--justify-content,center);justify-items:var(--justify-content,center)}.elementor-icon.elementor-social-icon{font-size:var(--icon-size,25px);line-height:var(--icon-size,25px);width:calc(var(--icon-size, 25px) + (2 * var(--icon-padding, .5em)));height:calc(var(--icon-size, 25px) + (2 * var(--icon-padding, .5em)))}.elementor-social-icon{--e-social-icon-icon-color:#fff;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;background-color:#818a91;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;text-align:center;cursor:pointer}.elementor-social-icon i{color:var(--e-social-icon-icon-color)}.elementor-social-icon svg{fill:var(--e-social-icon-icon-color)}.elementor-social-icon:last-child{margin:0}.elementor-social-icon:hover{opacity:.9;color:#fff}.elementor-social-icon-android{background-color:#a4c639}.elementor-social-icon-apple{background-color:#999}.elementor-social-icon-behance{background-color:#1769ff}.elementor-social-icon-bitbucket{background-color:#205081}.elementor-social-icon-codepen{background-color:#000}.elementor-social-icon-delicious{background-color:#39f}.elementor-social-icon-deviantart{background-color:#05cc47}.elementor-social-icon-digg{background-color:#005be2}.elementor-social-icon-dribbble{background-color:#ea4c89}.elementor-social-icon-elementor{background-color:#d30c5c}.elementor-social-icon-envelope{background-color:#ea4335}.elementor-social-icon-facebook,.elementor-social-icon-facebook-f{background-color:#3b5998}.elementor-social-icon-flickr{background-color:#0063dc}.elementor-social-icon-foursquare{background-color:#2d5be3}.elementor-social-icon-free-code-camp,.elementor-social-icon-freecodecamp{background-color:#006400}.elementor-social-icon-github{background-color:#333}.elementor-social-icon-gitlab{background-color:#e24329}.elementor-social-icon-globe{background-color:#818a91}.elementor-social-icon-google-plus,.elementor-social-icon-google-plus-g{background-color:#dd4b39}.elementor-social-icon-houzz{background-color:#7ac142}.elementor-social-icon-instagram{background-color:#262626}.elementor-social-icon-jsfiddle{background-color:#487aa2}.elementor-social-icon-link{background-color:#818a91}.elementor-social-icon-linkedin,.elementor-social-icon-linkedin-in{background-color:#0077b5}.elementor-social-icon-medium{background-color:#00ab6b}.elementor-social-icon-meetup{background-color:#ec1c40}.elementor-social-icon-mixcloud{background-color:#273a4b}.elementor-social-icon-odnoklassniki{background-color:#f4731c}.elementor-social-icon-pinterest{background-color:#bd081c}.elementor-social-icon-product-hunt{background-color:#da552f}.elementor-social-icon-reddit{background-color:#ff4500}.elementor-social-icon-rss{background-color:#f26522}.elementor-social-icon-shopping-cart{background-color:#4caf50}.elementor-social-icon-skype{background-color:#00aff0}.elementor-social-icon-slideshare{background-color:#0077b5}.elementor-social-icon-snapchat{background-color:#fffc00}.elementor-social-icon-soundcloud{background-color:#f80}.elementor-social-icon-spotify{background-color:#2ebd59}.elementor-social-icon-stack-overflow{background-color:#fe7a15}.elementor-social-icon-steam{background-color:#00adee}.elementor-social-icon-stumbleupon{background-color:#eb4924}.elementor-social-icon-telegram{background-color:#2ca5e0}.elementor-social-icon-thumb-tack{background-color:#1aa1d8}.elementor-social-icon-tripadvisor{background-color:#589442}.elementor-social-icon-tumblr{background-color:#35465c}.elementor-social-icon-twitch{background-color:#6441a5}.elementor-social-icon-twitter{background-color:#1da1f2}.elementor-social-icon-viber{background-color:#665cac}.elementor-social-icon-vimeo{background-color:#1ab7ea}.elementor-social-icon-vk{background-color:#45668e}.elementor-social-icon-weibo{background-color:#dd2430}.elementor-social-icon-weixin{background-color:#31a918}.elementor-social-icon-whatsapp{background-color:#25d366}.elementor-social-icon-wordpress{background-color:#21759b}.elementor-social-icon-xing{background-color:#026466}.elementor-social-icon-yelp{background-color:#af0606}.elementor-social-icon-youtube{background-color:#cd201f}.elementor-social-icon-500px{background-color:#0099e5}.elementor-shape-rounded .elementor-icon.elementor-social-icon{-webkit-border-radius:10%;border-radius:10%}.elementor-shape-circle .elementor-icon.elementor-social-icon{-webkit-border-radius:50%;border-radius:50%}.elementor-star-rating{color:#ccd6df;font-family:eicons;display:inline-block}.elementor-star-rating i{display:inline-block;position:relative;font-style:normal;cursor:default}.elementor-star-rating i:before{content:"\e934";display:block;font-size:inherit;font-family:inherit;position:absolute;overflow:hidden;color:#f0ad4e;top:0;left:0}.elementor-star-rating .elementor-star-empty:before{content:none}.elementor-star-rating .elementor-star-1:before{width:10%}.elementor-star-rating .elementor-star-2:before{width:20%}.elementor-star-rating .elementor-star-3:before{width:30%}.elementor-star-rating .elementor-star-4:before{width:40%}.elementor-star-rating .elementor-star-5:before{width:50%}.elementor-star-rating .elementor-star-6:before{width:60%}.elementor-star-rating .elementor-star-7:before{width:70%}.elementor-star-rating .elementor-star-8:before{width:80%}.elementor-star-rating .elementor-star-9:before{width:90%}.elementor-star-rating__wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-star-rating__title{margin-right:10px}.elementor-star-rating--align-right .elementor-star-rating__wrapper{text-align:right;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-star-rating--align-left .elementor-star-rating__wrapper{text-align:left;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-star-rating--align-center .elementor-star-rating__wrapper{text-align:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-star-rating--align-justify .elementor-star-rating__title{margin-right:auto}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-star-rating-tablet--align-right .elementor-star-rating__wrapper{text-align:right;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-star-rating-tablet--align-left .elementor-star-rating__wrapper{text-align:left;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-star-rating-tablet--align-center .elementor-star-rating__wrapper{text-align:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-star-rating-tablet--align-justify .elementor-star-rating__title{margin-right:auto}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-star-rating-mobile--align-right .elementor-star-rating__wrapper{text-align:right;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-star-rating-mobile--align-left .elementor-star-rating__wrapper{text-align:left;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-star-rating-mobile--align-center .elementor-star-rating__wrapper{text-align:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-star-rating-mobile--align-justify .elementor-star-rating__title{margin-right:auto}}.last-star{letter-spacing:0}.elementor--star-style-star_unicode .elementor-star-rating{font-family:Arial,Helvetica,sans-serif}.elementor--star-style-star_unicode .elementor-star-rating i:not(.elementor-star-empty):before{content:"\002605"}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-wrapper{width:25%;-ms-flex-negative:0;flex-shrink:0}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active{border-right-style:none}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:after,.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:before{height:999em;width:0;right:0;border-right-style:solid}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:before{top:0;-webkit-transform:translateY(-100%);-ms-transform:translateY(-100%);transform:translateY(-100%)}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:after{top:100%}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title{display:table-cell}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active{border-bottom-style:none}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:after,.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:before{bottom:0;height:0;width:999em;border-bottom-style:solid}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:before{right:100%}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:after{left:100%}.elementor-widget-tabs .elementor-tab-content,.elementor-widget-tabs .elementor-tab-title,.elementor-widget-tabs .elementor-tab-title:after,.elementor-widget-tabs .elementor-tab-title:before,.elementor-widget-tabs .elementor-tabs-content-wrapper{border:1px #d4d4d4}.elementor-widget-tabs .elementor-tabs{text-align:left}.elementor-widget-tabs .elementor-tabs-wrapper{overflow:hidden}.elementor-widget-tabs .elementor-tab-title{cursor:pointer;outline:var(--focus-outline,none)}.elementor-widget-tabs .elementor-tab-desktop-title{position:relative;padding:20px 25px;font-weight:700;line-height:1;border:solid transparent}.elementor-widget-tabs .elementor-tab-desktop-title.elementor-active{border-color:#d4d4d4}.elementor-widget-tabs .elementor-tab-desktop-title.elementor-active:after,.elementor-widget-tabs .elementor-tab-desktop-title.elementor-active:before{display:block;content:"";position:absolute}.elementor-widget-tabs .elementor-tab-mobile-title{padding:10px;cursor:pointer}.elementor-widget-tabs .elementor-tab-content{padding:20px;display:none}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-tabs .elementor-tab-content,.elementor-tabs .elementor-tab-title{border-style:solid solid none}.elementor-tabs .elementor-tabs-wrapper{display:none}.elementor-tabs .elementor-tabs-content-wrapper{border-bottom-style:solid}.elementor-tabs .elementor-tab-content{padding:10px}}@media (min-width:ELEMENTOR_SCREEN_MOBILE_NEXT){.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-wrapper{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-content-wrapper{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;border-style:solid solid solid none}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-content{border-style:none solid solid}.elementor-widget-tabs.elementor-tabs-alignment-center .elementor-tabs-wrapper,.elementor-widget-tabs.elementor-tabs-alignment-end .elementor-tabs-wrapper,.elementor-widget-tabs.elementor-tabs-alignment-stretch .elementor-tabs-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget-tabs.elementor-tabs-alignment-center .elementor-tabs-wrapper{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-widget-tabs.elementor-tabs-alignment-end .elementor-tabs-wrapper{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-widget-tabs.elementor-tabs-alignment-stretch.elementor-tabs-view-horizontal .elementor-tab-title{width:100%}.elementor-widget-tabs.elementor-tabs-alignment-stretch.elementor-tabs-view-vertical .elementor-tab-title{height:100%}.elementor-tabs .elementor-tab-mobile-title{display:none}}.elementor-testimonial-wrapper{overflow:hidden;text-align:center}.elementor-testimonial-wrapper .elementor-testimonial-content{font-size:1.3em;margin-bottom:20px}.elementor-testimonial-wrapper .elementor-testimonial-name{line-height:1.5;display:block}.elementor-testimonial-wrapper .elementor-testimonial-job{font-size:.85em;display:block}.elementor-testimonial-wrapper .elementor-testimonial-meta{width:100%;line-height:1}.elementor-testimonial-wrapper .elementor-testimonial-meta-inner{display:inline-block}.elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-details,.elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-image{display:table-cell;vertical-align:middle}.elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-image img{width:60px;height:60px;-webkit-border-radius:50%;border-radius:50%;-o-object-fit:cover;object-fit:cover;max-width:none}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-aside .elementor-testimonial-image{padding-right:15px}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-aside .elementor-testimonial-details{text-align:left}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-details,.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-image{display:block}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-image{margin-bottom:20px}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:#818a91;color:#fff}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap{color:#818a91;border:3px solid;background-color:transparent}.elementor-widget-text-editor:not(.elementor-drop-cap-view-default) .elementor-drop-cap{margin-top:8px}.elementor-widget-text-editor:not(.elementor-drop-cap-view-default) .elementor-drop-cap-letter{width:1em;height:1em}.elementor-widget-text-editor .elementor-drop-cap{float:left;text-align:center;line-height:1;font-size:50px}.elementor-widget-text-editor .elementor-drop-cap-letter{display:inline-block}.elementor-toggle{text-align:left}.elementor-toggle .elementor-tab-title{font-weight:700;line-height:1;margin:0;padding:15px;border-bottom:1px solid #d4d4d4;cursor:pointer;outline:none}.elementor-toggle .elementor-tab-title .elementor-toggle-icon{display:inline-block;width:1em}.elementor-toggle .elementor-tab-title .elementor-toggle-icon svg{-webkit-margin-start:-5px;margin-inline-start:-5px;width:1em;height:1em}.elementor-toggle .elementor-tab-title .elementor-toggle-icon.elementor-toggle-icon-right{float:right;text-align:right}.elementor-toggle .elementor-tab-title .elementor-toggle-icon.elementor-toggle-icon-left{float:left;text-align:left}.elementor-toggle .elementor-tab-title .elementor-toggle-icon .elementor-toggle-icon-closed{display:block}.elementor-toggle .elementor-tab-title .elementor-toggle-icon .elementor-toggle-icon-opened{display:none}.elementor-toggle .elementor-tab-title.elementor-active{border-bottom:none}.elementor-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon-closed{display:none}.elementor-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon-opened{display:block}.elementor-toggle .elementor-tab-content{padding:15px;border-bottom:1px solid #d4d4d4;display:none}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-toggle .elementor-tab-title{padding:12px}.elementor-toggle .elementor-tab-content{padding:12px 10px}}.elementor-widget-video .elementor-widget-container{overflow:hidden;-webkit-transform:translateZ(0);transform:translateZ(0)}.elementor-widget-video .elementor-open-inline .elementor-custom-embed-image-overlay{position:absolute;top:0;left:0;width:100%;height:100%;-webkit-background-size:cover;background-size:cover;background-position:50%}.elementor-widget-video .elementor-custom-embed-image-overlay{cursor:pointer;text-align:center}.elementor-widget-video .elementor-custom-embed-image-overlay:hover .elementor-custom-embed-play i{opacity:1}.elementor-widget-video .elementor-custom-embed-image-overlay img{display:block;width:100%}.elementor-widget-video .e-hosted-video .elementor-video{-o-object-fit:cover;object-fit:cover}assets/css/templates/frontend-legacy-rtl.min.css000064400000007451151327220410016014 0ustar00.elementor-bc-flex-widget .elementor-section-content-top>.elementor-container>.elementor-row>.elementor-column>.elementor-column-wrap{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.elementor-bc-flex-widget .elementor-section-content-middle>.elementor-container>.elementor-row>.elementor-column>.elementor-column-wrap{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-bc-flex-widget .elementor-section-content-bottom>.elementor-container>.elementor-row>.elementor-column>.elementor-column-wrap{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.elementor-column-gap-narrow>.elementor-row>.elementor-column>.elementor-element-populated{padding:5px}.elementor-column-gap-default>.elementor-row>.elementor-column>.elementor-element-populated{padding:10px}.elementor-column-gap-extended>.elementor-row>.elementor-column>.elementor-element-populated{padding:15px}.elementor-column-gap-wide>.elementor-row>.elementor-column>.elementor-element-populated{padding:20px}.elementor-column-gap-wider>.elementor-row>.elementor-column>.elementor-element-populated{padding:30px}@media (min-width:ELEMENTOR_SCREEN_MOBILE_NEXT) and (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-reverse-tablet>.elementor-container>.elementor-row>:first-child{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(2){-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(3){-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(4){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(5){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(6){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(7){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(8){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(9){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(10){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-reverse-mobile>.elementor-container>.elementor-row>:first-child{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(2){-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(3){-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(4){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(5){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(6){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(7){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(8){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(9){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(10){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.elementor-column{width:100%}}assets/css/templates/frontend-lite.css000064400000276113151327220410014127 0ustar00.dialog-widget-content {
  background-color: #fff;
  position: absolute;
  border-radius: 3px;
  box-shadow: 2px 8px 23px 3px rgba(0, 0, 0, 0.2);
  overflow: hidden; }

.dialog-message {
  font-size: 12px;
  line-height: 1.5;
  box-sizing: border-box; }

.dialog-type-lightbox {
  position: fixed;
  height: 100%;
  width: 100%;
  bottom: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 9999;
  user-select: none; }
  .dialog-type-lightbox .dialog-widget-content {
    margin: auto;
    width: 375px; }
  .dialog-type-lightbox .dialog-header {
    font-size: 15px;
    color: #495157;
    padding: 30px 0 10px;
    font-weight: 500; }
  .dialog-type-lightbox .dialog-message {
    padding: 0 30px 30px;
    min-height: 50px; }
  .dialog-type-lightbox:not(.elementor-popup-modal) .dialog-header,
  .dialog-type-lightbox:not(.elementor-popup-modal) .dialog-message {
    text-align: center; }
  .dialog-type-lightbox .dialog-buttons-wrapper {
    border-top: 1px solid #e6e9ec;
    text-align: center; }
    .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button {
      font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
      width: 50%;
      border: none;
      background: none;
      color: #6d7882;
      font-size: 15px;
      cursor: pointer;
      padding: 13px 0;
      outline: 0; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button:hover {
        background-color: #f4f6f7; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button.dialog-ok {
        color: #b01b1b; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button.dialog-take_over {
        color: #39b54a; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button:active {
        background-color: rgba(230, 233, 236, 0.5); }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button::-moz-focus-inner {
        border: 0; }

.dialog-close-button {
  cursor: pointer;
  position: absolute;
  margin-top: 15px;
  right: 15px;
  font-size: 15px;
  line-height: 1; }
  .dialog-close-button:not(:hover) {
    opacity: .4; }

.dialog-alert-widget .dialog-buttons-wrapper > button {
  width: 100%; }

.dialog-confirm-widget .dialog-button:first-child {
  border-right: 1px solid #e6e9ec; }

.dialog-prevent-scroll {
  overflow: hidden;
  max-height: 100vh; }

@media (min-width: 1024px) {
  body.admin-bar .dialog-lightbox-widget {
    height: calc(100vh - 32px); } }

@media (max-width: 1024px) {
  body.admin-bar .dialog-type-lightbox {
    position: sticky;
    height: 100vh; } }

.elementor-aspect-ratio-219 .elementor-fit-aspect-ratio {
  padding-bottom: 42.8571%; }

.elementor-aspect-ratio-169 .elementor-fit-aspect-ratio {
  padding-bottom: 56.25%; }

.elementor-aspect-ratio-43 .elementor-fit-aspect-ratio {
  padding-bottom: 75%; }

.elementor-aspect-ratio-32 .elementor-fit-aspect-ratio {
  padding-bottom: 66.6666%; }

.elementor-aspect-ratio-11 .elementor-fit-aspect-ratio {
  padding-bottom: 100%; }

.elementor-aspect-ratio-916 .elementor-fit-aspect-ratio {
  padding-bottom: 177.8%; }

.elementor-fit-aspect-ratio {
  position: relative;
  height: 0; }
  .elementor-fit-aspect-ratio iframe {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    border: 0;
    background-color: #000; }
  .elementor-fit-aspect-ratio video {
    width: 100%; }

.flatpickr-calendar {
  width: 280px; }
  .flatpickr-calendar .flatpickr-current-month span.cur-month {
    font-weight: 300; }
  .flatpickr-calendar .dayContainer {
    width: 280px;
    min-width: 280px;
    max-width: 280px; }
  .flatpickr-calendar .flatpickr-days {
    width: 280px; }
  .flatpickr-calendar .flatpickr-day {
    max-width: 37px;
    height: 37px;
    line-height: 37px; }

.elementor-templates-modal .dialog-widget-content {
  font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
  background-color: #f1f3f5;
  width: 100%; }
  @media (max-width: 1439px) {
    .elementor-templates-modal .dialog-widget-content {
      max-width: 990px; } }
  @media (min-width: 1440px) {
    .elementor-templates-modal .dialog-widget-content {
      max-width: 1200px; } }

.elementor-templates-modal .dialog-header {
  padding: 0;
  background-color: #fff;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
  position: relative;
  z-index: 1; }

.elementor-templates-modal .dialog-buttons-wrapper {
  background-color: #fff;
  border: none;
  display: none;
  justify-content: flex-end;
  padding: 5px;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
  position: relative; }
  .elementor-templates-modal .dialog-buttons-wrapper .elementor-button {
    height: 40px;
    margin-left: 5px; }
    .elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success {
      padding: 12px 36px;
      color: #fff;
      width: initial;
      font-size: 15px; }
      .elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success:hover {
        background-color: #39b54a; }

.elementor-templates-modal .dialog-message {
  height: 750px;
  max-height: 85vh;
  overflow: auto;
  padding-top: 25px; }

.elementor-templates-modal .dialog-content {
  height: 100%; }

.elementor-templates-modal .dialog-loading {
  display: none; }

.elementor-templates-modal__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 50px; }
  .elementor-templates-modal__header__logo {
    line-height: 1;
    text-transform: uppercase;
    font-weight: bold;
    cursor: pointer; }
    .elementor-templates-modal__header__logo-area {
      text-align: left;
      padding-left: 15px; }
      .elementor-templates-modal__header__logo-area > * {
        display: flex;
        align-items: center; }
    .elementor-templates-modal__header__logo__icon-wrapper {
      margin-right: 10px;
      font-size: 12px; }
    .elementor-templates-modal__header__logo__title {
      padding-top: 2px; }
  .elementor-templates-modal__header__items-area {
    display: flex;
    flex-direction: row-reverse; }
  .elementor-templates-modal__header__item {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: content-box; }
    .elementor-templates-modal__header__item > i {
      font-size: 20px;
      transition: all 0.3s;
      cursor: pointer; }
      .elementor-templates-modal__header__item > i:not(:hover) {
        color: #a4afb7; }
  .elementor-templates-modal__header__close--normal {
    width: 47px;
    border-left: 1px solid #e6e9ec; }
    .elementor-templates-modal__header__close--normal i {
      font-size: 18px; }
  .elementor-templates-modal__header__close--skip {
    padding: 10px;
    padding-left: 20px;
    margin-right: 10px;
    color: #fff;
    background-color: #a4afb7;
    font-size: 11px;
    font-weight: normal;
    line-height: 1;
    text-transform: uppercase;
    border-radius: 2px;
    cursor: pointer; }
    .elementor-templates-modal__header__close--skip > i {
      font-size: inherit;
      padding-left: 10px;
      margin-left: 15px;
      border-left: 1px solid; }
      .elementor-templates-modal__header__close--skip > i:not(:hover) {
        color: #fff; }

.elementor-templates-modal__sidebar {
  flex-shrink: 0;
  width: 25%;
  background-color: rgba(255, 255, 255, 0.3); }

.elementor-templates-modal__content {
  flex-grow: 1;
  box-shadow: 0 0 13px inset rgba(0, 0, 0, 0.05); }

/* Will select next element after last '.elementor-general-section' */
#wpadminbar #wp-admin-bar-elementor_edit_page .elementor-general-section + .elementor-second-section {
  border-top: 1px solid #464b50;
  margin-top: 6px; }

.elementor-hidden {
  display: none; }

.elementor-screen-only,
.screen-reader-text,
.screen-reader-text span,
.ui-helper-hidden-accessible {
  position: absolute;
  top: -10000em;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0; }

.elementor-clearfix:after {
  content: '';
  display: block;
  clear: both;
  width: 0;
  height: 0; }

.e-logo-wrapper {
  background: #93003c;
  display: inline-block;
  padding: 0.75em;
  border-radius: 50%;
  line-height: 1; }
  .e-logo-wrapper i {
    color: #fff;
    font-size: 1em; }

.elementor {
  hyphens: manual; }
  .elementor *, .elementor *:before, .elementor *:after {
    box-sizing: border-box; }
  .elementor a {
    box-shadow: none;
    text-decoration: none; }
  .elementor hr {
    margin: 0;
    background-color: transparent; }
  .elementor img {
    height: auto;
    max-width: 100%;
    border: none;
    border-radius: 0;
    box-shadow: none; }
  .elementor .elementor-widget:not(.elementor-widget-text-editor):not(.elementor-widget-theme-post-content) figure {
    margin: 0; }
  .elementor embed,
  .elementor iframe,
  .elementor object,
  .elementor video {
    max-width: 100%;
    width: 100%;
    margin: 0;
    line-height: 1;
    border: none; }
  .elementor .elementor-custom-embed {
    line-height: 0; }
  .elementor .elementor-background-video-container,
  .elementor .elementor-background-holder,
  .elementor .elementor-background {
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    position: absolute;
    overflow: hidden;
    z-index: 0;
    direction: ltr; }
  .elementor .elementor-background-video-container {
    transition: opacity 1s;
    pointer-events: none; }
    .elementor .elementor-background-video-container.elementor-loading {
      opacity: 0; }
  .elementor .elementor-background-video-embed {
    max-width: none; }
  .elementor .elementor-background-video-embed, .elementor .elementor-background-video-hosted {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); }
  .elementor .elementor-background-video {
    max-width: none;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); }
  .elementor .elementor-html5-video {
    object-fit: cover; }
  .elementor .elementor-background-overlay {
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    position: absolute; }
  .elementor .elementor-background-slideshow {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 0;
    top: 0;
    left: 0; }
    .elementor .elementor-background-slideshow__slide__image {
      width: 100%;
      height: 100%;
      background-position: center center;
      background-size: cover; }

.elementor-widget-wrap > .elementor-element.elementor-absolute {
  position: absolute; }
  .elementor-column > .elementor-widget-wrap > .elementor-element.elementor-absolute {
    padding: inherit;
    box-sizing: content-box; }

.elementor-widget-wrap > .elementor-element.elementor-fixed {
  position: fixed; }

.elementor-widget-wrap .elementor-element.elementor-widget__width-auto, .elementor-widget-wrap .elementor-element.elementor-widget__width-initial {
  max-width: 100%; }

@media (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
  .elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-auto, .elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-initial {
    max-width: 100%; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-auto, .elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-initial {
    max-width: 100%; } }

.elementor-element.elementor-absolute, .elementor-element.elementor-fixed {
  z-index: 1; }

.elementor-invisible {
  visibility: hidden; }

.elementor-align-center {
  text-align: center; }
  .elementor-align-center .elementor-button {
    width: auto; }

.elementor-align-right {
  text-align: right; }
  .elementor-align-right .elementor-button {
    width: auto; }

.elementor-align-left {
  text-align: left; }
  .elementor-align-left .elementor-button {
    width: auto; }

.elementor-align-justify .elementor-button {
  width: 100%; }

.elementor-custom-embed-play {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); }
  .elementor-custom-embed-play i {
    font-size: 100px;
    color: #fff;
    text-shadow: 1px 0 6px rgba(0, 0, 0, 0.3); }
  .elementor-custom-embed-play svg {
    height: 100px;
    width: 100px;
    fill: #fff;
    filter: drop-shadow(1px 0 6px rgba(0, 0, 0, 0.3)); }
  .elementor-custom-embed-play i,
  .elementor-custom-embed-play svg {
    opacity: 0.8;
    transition: all .5s; }
  .elementor-custom-embed-play.elementor-playing i {
    font-family: eicons;
    animation: fa-spin 2s infinite linear; }
    .elementor-custom-embed-play.elementor-playing i:before {
      content: '\e8fb'; }

.elementor-tag {
  display: inline-flex; }

.elementor-ken-burns {
  transition-property: transform;
  transition-duration: 10s;
  transition-timing-function: linear; }
  .elementor-ken-burns--out {
    transform: scale(1.3); }
  .elementor-ken-burns--active {
    transition-duration: 20s; }
    .elementor-ken-burns--active.elementor-ken-burns--out {
      transform: scale(1); }
    .elementor-ken-burns--active.elementor-ken-burns--in {
      transform: scale(1.3); }

@media (min-width: ELEMENTOR_SCREEN_WIDESCREEN_MIN) {
  .elementor-widescreen-align-center {
    text-align: center; }
    .elementor-widescreen-align-center .elementor-button {
      width: auto; }
  .elementor-widescreen-align-right {
    text-align: right; }
    .elementor-widescreen-align-right .elementor-button {
      width: auto; }
  .elementor-widescreen-align-left {
    text-align: left; }
    .elementor-widescreen-align-left .elementor-button {
      width: auto; }
  .elementor-widescreen-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: ELEMENTOR_SCREEN_LAPTOP_MAX) {
  .elementor-laptop-align-center {
    text-align: center; }
    .elementor-laptop-align-center .elementor-button {
      width: auto; }
  .elementor-laptop-align-right {
    text-align: right; }
    .elementor-laptop-align-right .elementor-button {
      width: auto; }
  .elementor-laptop-align-left {
    text-align: left; }
    .elementor-laptop-align-left .elementor-button {
      width: auto; }
  .elementor-laptop-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: ELEMENTOR_SCREEN_TABLET_EXTRA_MAX) {
  .elementor-tablet_extra-align-center {
    text-align: center; }
    .elementor-tablet_extra-align-center .elementor-button {
      width: auto; }
  .elementor-tablet_extra-align-right {
    text-align: right; }
    .elementor-tablet_extra-align-right .elementor-button {
      width: auto; }
  .elementor-tablet_extra-align-left {
    text-align: left; }
    .elementor-tablet_extra-align-left .elementor-button {
      width: auto; }
  .elementor-tablet_extra-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
  .elementor-tablet-align-center {
    text-align: center; }
    .elementor-tablet-align-center .elementor-button {
      width: auto; }
  .elementor-tablet-align-right {
    text-align: right; }
    .elementor-tablet-align-right .elementor-button {
      width: auto; }
  .elementor-tablet-align-left {
    text-align: left; }
    .elementor-tablet-align-left .elementor-button {
      width: auto; }
  .elementor-tablet-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_EXTRA_MAX) {
  .elementor-mobile_extra-align-center {
    text-align: center; }
    .elementor-mobile_extra-align-center .elementor-button {
      width: auto; }
  .elementor-mobile_extra-align-right {
    text-align: right; }
    .elementor-mobile_extra-align-right .elementor-button {
      width: auto; }
  .elementor-mobile_extra-align-left {
    text-align: left; }
    .elementor-mobile_extra-align-left .elementor-button {
      width: auto; }
  .elementor-mobile_extra-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-mobile-align-center {
    text-align: center; }
    .elementor-mobile-align-center .elementor-button {
      width: auto; }
  .elementor-mobile-align-right {
    text-align: right; }
    .elementor-mobile-align-right .elementor-button {
      width: auto; }
  .elementor-mobile-align-left {
    text-align: left; }
    .elementor-mobile-align-left .elementor-button {
      width: auto; }
  .elementor-mobile-align-justify .elementor-button {
    width: 100%; } }

#wpadminbar #wp-admin-bar-elementor_edit_page > .ab-item::before {
  content: "\e813";
  font-family: eicons;
  top: 3px;
  font-size: 18px; }

#wpadminbar #wp-admin-bar-elementor_inspector > .ab-item::before {
  content: "\f348";
  top: 2px; }

:root {
  --page-title-display: block; }

.elementor-page-title, h1.entry-title {
  display: var(--page-title-display); }

.elementor-section {
  position: relative; }
  .elementor-section .elementor-container {
    display: flex;
    margin-right: auto;
    margin-left: auto;
    position: relative; }
    @media (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
      .elementor-section .elementor-container {
        flex-wrap: wrap; } }
  .elementor-section.elementor-section-boxed > .elementor-container {
    max-width: 1140px; }
  .elementor-section.elementor-section-stretched {
    position: relative;
    width: 100%; }
  .elementor-section.elementor-section-items-top > .elementor-container {
    align-items: flex-start; }
  .elementor-section.elementor-section-items-middle > .elementor-container {
    align-items: center; }
  .elementor-section.elementor-section-items-bottom > .elementor-container {
    align-items: flex-end; }
  @media (min-width: ELEMENTOR_SCREEN_MOBILE_NEXT) {
    .elementor-section.elementor-section-height-full {
      height: 100vh; }
      .elementor-section.elementor-section-height-full > .elementor-container {
        height: 100%; } }

.elementor-bc-flex-widget .elementor-section-content-top > .elementor-container > .elementor-column > .elementor-widget-wrap {
  align-items: flex-start; }

.elementor-bc-flex-widget .elementor-section-content-middle > .elementor-container > .elementor-column > .elementor-widget-wrap {
  align-items: center; }

.elementor-bc-flex-widget .elementor-section-content-bottom > .elementor-container > .elementor-column > .elementor-widget-wrap {
  align-items: flex-end; }

.elementor-row {
  width: 100%;
  display: flex; }
  @media (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
    .elementor-row {
      flex-wrap: wrap; } }

.elementor-widget-wrap {
  position: relative;
  width: 100%;
  flex-wrap: wrap;
  align-content: flex-start; }
  .elementor:not(.elementor-bc-flex-widget) .elementor-widget-wrap {
    display: flex; }
  .elementor-widget-wrap > .elementor-element {
    width: 100%; }

.elementor-widget {
  position: relative; }
  .elementor-widget:not(:last-child) {
    margin-bottom: 20px; }
    .elementor-widget:not(:last-child).elementor-widget__width-auto, .elementor-widget:not(:last-child).elementor-widget__width-initial, .elementor-widget:not(:last-child).elementor-absolute {
      margin-bottom: 0; }

.elementor-column {
  position: relative;
  min-height: 1px;
  display: flex; }

.elementor-column-wrap {
  width: 100%;
  position: relative;
  display: flex; }

.elementor-column-gap-narrow > .elementor-column > .elementor-element-populated {
  padding: 5px; }

.elementor-column-gap-default > .elementor-column > .elementor-element-populated {
  padding: 10px; }

.elementor-column-gap-extended > .elementor-column > .elementor-element-populated {
  padding: 15px; }

.elementor-column-gap-wide > .elementor-column > .elementor-element-populated {
  padding: 20px; }

.elementor-column-gap-wider > .elementor-column > .elementor-element-populated {
  padding: 30px; }

.elementor-inner-section .elementor-column-gap-no .elementor-element-populated {
  padding: 0; }

@media (min-width: ELEMENTOR_SCREEN_MOBILE_NEXT) {
  .elementor-column.elementor-col-10, .elementor-column[data-col="10"] {
    width: 10%; }
  .elementor-column.elementor-col-11, .elementor-column[data-col="11"] {
    width: 11.111%; }
  .elementor-column.elementor-col-12, .elementor-column[data-col="12"] {
    width: 12.5%; }
  .elementor-column.elementor-col-14, .elementor-column[data-col="14"] {
    width: 14.285%; }
  .elementor-column.elementor-col-16, .elementor-column[data-col="16"] {
    width: 16.666%; }
  .elementor-column.elementor-col-20, .elementor-column[data-col="20"] {
    width: 20%; }
  .elementor-column.elementor-col-25, .elementor-column[data-col="25"] {
    width: 25%; }
  .elementor-column.elementor-col-30, .elementor-column[data-col="30"] {
    width: 30%; }
  .elementor-column.elementor-col-33, .elementor-column[data-col="33"] {
    width: 33.333%; }
  .elementor-column.elementor-col-40, .elementor-column[data-col="40"] {
    width: 40%; }
  .elementor-column.elementor-col-50, .elementor-column[data-col="50"] {
    width: 50%; }
  .elementor-column.elementor-col-60, .elementor-column[data-col="60"] {
    width: 60%; }
  .elementor-column.elementor-col-66, .elementor-column[data-col="66"] {
    width: 66.666%; }
  .elementor-column.elementor-col-70, .elementor-column[data-col="70"] {
    width: 70%; }
  .elementor-column.elementor-col-75, .elementor-column[data-col="75"] {
    width: 75%; }
  .elementor-column.elementor-col-80, .elementor-column[data-col="80"] {
    width: 80%; }
  .elementor-column.elementor-col-83, .elementor-column[data-col="83"] {
    width: 83.333%; }
  .elementor-column.elementor-col-90, .elementor-column[data-col="90"] {
    width: 90%; }
  .elementor-column.elementor-col-100, .elementor-column[data-col="100"] {
    width: 100%; } }

@media (max-width: 479px) {
  .elementor-column.elementor-xs-10 {
    width: 10%; }
  .elementor-column.elementor-xs-11 {
    width: 11.111%; }
  .elementor-column.elementor-xs-12 {
    width: 12.5%; }
  .elementor-column.elementor-xs-14 {
    width: 14.285%; }
  .elementor-column.elementor-xs-16 {
    width: 16.666%; }
  .elementor-column.elementor-xs-20 {
    width: 20%; }
  .elementor-column.elementor-xs-25 {
    width: 25%; }
  .elementor-column.elementor-xs-30 {
    width: 30%; }
  .elementor-column.elementor-xs-33 {
    width: 33.333%; }
  .elementor-column.elementor-xs-40 {
    width: 40%; }
  .elementor-column.elementor-xs-50 {
    width: 50%; }
  .elementor-column.elementor-xs-60 {
    width: 60%; }
  .elementor-column.elementor-xs-66 {
    width: 66.666%; }
  .elementor-column.elementor-xs-70 {
    width: 70%; }
  .elementor-column.elementor-xs-75 {
    width: 75%; }
  .elementor-column.elementor-xs-80 {
    width: 80%; }
  .elementor-column.elementor-xs-83 {
    width: 83.333%; }
  .elementor-column.elementor-xs-90 {
    width: 90%; }
  .elementor-column.elementor-xs-100 {
    width: 100%; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-column.elementor-sm-10 {
    width: 10%; }
  .elementor-column.elementor-sm-11 {
    width: 11.111%; }
  .elementor-column.elementor-sm-12 {
    width: 12.5%; }
  .elementor-column.elementor-sm-14 {
    width: 14.285%; }
  .elementor-column.elementor-sm-16 {
    width: 16.666%; }
  .elementor-column.elementor-sm-20 {
    width: 20%; }
  .elementor-column.elementor-sm-25 {
    width: 25%; }
  .elementor-column.elementor-sm-30 {
    width: 30%; }
  .elementor-column.elementor-sm-33 {
    width: 33.333%; }
  .elementor-column.elementor-sm-40 {
    width: 40%; }
  .elementor-column.elementor-sm-50 {
    width: 50%; }
  .elementor-column.elementor-sm-60 {
    width: 60%; }
  .elementor-column.elementor-sm-66 {
    width: 66.666%; }
  .elementor-column.elementor-sm-70 {
    width: 70%; }
  .elementor-column.elementor-sm-75 {
    width: 75%; }
  .elementor-column.elementor-sm-80 {
    width: 80%; }
  .elementor-column.elementor-sm-83 {
    width: 83.333%; }
  .elementor-column.elementor-sm-90 {
    width: 90%; }
  .elementor-column.elementor-sm-100 {
    width: 100%; } }

@media (min-width: ELEMENTOR_SCREEN_MOBILE_NEXT) and (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
  .elementor-column.elementor-md-10 {
    width: 10%; }
  .elementor-column.elementor-md-11 {
    width: 11.111%; }
  .elementor-column.elementor-md-12 {
    width: 12.5%; }
  .elementor-column.elementor-md-14 {
    width: 14.285%; }
  .elementor-column.elementor-md-16 {
    width: 16.666%; }
  .elementor-column.elementor-md-20 {
    width: 20%; }
  .elementor-column.elementor-md-25 {
    width: 25%; }
  .elementor-column.elementor-md-30 {
    width: 30%; }
  .elementor-column.elementor-md-33 {
    width: 33.333%; }
  .elementor-column.elementor-md-40 {
    width: 40%; }
  .elementor-column.elementor-md-50 {
    width: 50%; }
  .elementor-column.elementor-md-60 {
    width: 60%; }
  .elementor-column.elementor-md-66 {
    width: 66.666%; }
  .elementor-column.elementor-md-70 {
    width: 70%; }
  .elementor-column.elementor-md-75 {
    width: 75%; }
  .elementor-column.elementor-md-80 {
    width: 80%; }
  .elementor-column.elementor-md-83 {
    width: 83.333%; }
  .elementor-column.elementor-md-90 {
    width: 90%; }
  .elementor-column.elementor-md-100 {
    width: 100%; } }

@media (min-width: ELEMENTOR_SCREEN_MOBILE_NEXT) and (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
  .elementor-reverse-tablet > .elementor-container > :nth-child(1) {
    order: 10; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(2) {
    order: 9; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(3) {
    order: 8; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(4) {
    order: 7; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(5) {
    order: 6; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(6) {
    order: 5; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(7) {
    order: 4; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(8) {
    order: 3; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(9) {
    order: 2; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(10) {
    order: 1; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-reverse-mobile > .elementor-container > :nth-child(1) {
    order: 10; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(2) {
    order: 9; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(3) {
    order: 8; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(4) {
    order: 7; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(5) {
    order: 6; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(6) {
    order: 5; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(7) {
    order: 4; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(8) {
    order: 3; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(9) {
    order: 2; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(10) {
    order: 1; }
  .elementor-column {
    width: 100%; } }

ul.elementor-icon-list-items.elementor-inline-items {
  display: flex;
  flex-wrap: wrap; }
  ul.elementor-icon-list-items.elementor-inline-items .elementor-inline-item {
    word-break: break-word; }

.elementor-grid {
  display: grid;
  grid-column-gap: var(--grid-column-gap);
  grid-row-gap: var(--grid-row-gap); }
  .elementor-grid .elementor-grid-item {
    min-width: 0; }
  .elementor-grid-0 .elementor-grid {
    display: inline-block;
    width: 100%;
    word-spacing: var(--grid-column-gap);
    margin-bottom: calc(-1 * var(--grid-row-gap)); }
    .elementor-grid-0 .elementor-grid .elementor-grid-item {
      display: inline-block;
      margin-bottom: var(--grid-row-gap);
      word-break: break-word; }
  .elementor-grid-1 .elementor-grid {
    grid-template-columns: repeat(1, 1fr); }
  .elementor-grid-2 .elementor-grid {
    grid-template-columns: repeat(2, 1fr); }
  .elementor-grid-3 .elementor-grid {
    grid-template-columns: repeat(3, 1fr); }
  .elementor-grid-4 .elementor-grid {
    grid-template-columns: repeat(4, 1fr); }
  .elementor-grid-5 .elementor-grid {
    grid-template-columns: repeat(5, 1fr); }
  .elementor-grid-6 .elementor-grid {
    grid-template-columns: repeat(6, 1fr); }
  .elementor-grid-7 .elementor-grid {
    grid-template-columns: repeat(7, 1fr); }
  .elementor-grid-8 .elementor-grid {
    grid-template-columns: repeat(8, 1fr); }
  .elementor-grid-9 .elementor-grid {
    grid-template-columns: repeat(9, 1fr); }
  .elementor-grid-10 .elementor-grid {
    grid-template-columns: repeat(10, 1fr); }
  .elementor-grid-11 .elementor-grid {
    grid-template-columns: repeat(11, 1fr); }
  .elementor-grid-12 .elementor-grid {
    grid-template-columns: repeat(12, 1fr); }
  @media (min-width: ELEMENTOR_SCREEN_WIDESCREEN_MIN) {
    .elementor-grid-widescreen-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-widescreen-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-widescreen-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-widescreen-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-widescreen-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-widescreen-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-widescreen-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-widescreen-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-widescreen-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-widescreen-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-widescreen-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-widescreen-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-widescreen-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-widescreen-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: ELEMENTOR_SCREEN_LAPTOP_MAX) {
    .elementor-grid-laptop-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-laptop-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-laptop-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-laptop-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-laptop-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-laptop-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-laptop-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-laptop-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-laptop-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-laptop-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-laptop-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-laptop-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-laptop-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-laptop-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: ELEMENTOR_SCREEN_TABLET_EXTRA_MAX) {
    .elementor-grid-tablet_extra-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-tablet_extra-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-tablet_extra-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-tablet_extra-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-tablet_extra-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-tablet_extra-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-tablet_extra-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-tablet_extra-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-tablet_extra-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-tablet_extra-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-tablet_extra-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-tablet_extra-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-tablet_extra-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-tablet_extra-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
    .elementor-grid-tablet-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-tablet-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-tablet-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-tablet-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-tablet-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-tablet-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-tablet-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-tablet-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-tablet-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-tablet-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-tablet-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-tablet-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-tablet-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-tablet-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: ELEMENTOR_SCREEN_MOBILE_EXTRA_MAX) {
    .elementor-grid-mobile_extra-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-mobile_extra-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-mobile_extra-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-mobile_extra-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-mobile_extra-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-mobile_extra-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-mobile_extra-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-mobile_extra-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-mobile_extra-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-mobile_extra-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-mobile_extra-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-mobile_extra-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-mobile_extra-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-mobile_extra-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
    .elementor-grid-mobile-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-mobile-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-mobile-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-mobile-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-mobile-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-mobile-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-mobile-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-mobile-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-mobile-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-mobile-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-mobile-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-mobile-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-mobile-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-mobile-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }

@media (min-width: ELEMENTOR_SCREEN_DESKTOP_MIN) {
  #elementor-device-mode:after {
    content: 'desktop'; } }

@media (min-width: ELEMENTOR_SCREEN_WIDESCREEN_MIN) {
  #elementor-device-mode:after {
    content: 'widescreen'; } }

@media (max-width: ELEMENTOR_SCREEN_LAPTOP_MAX) {
  #elementor-device-mode:after {
    content: 'laptop'; } }

@media (max-width: ELEMENTOR_SCREEN_TABLET_EXTRA_MAX) {
  #elementor-device-mode:after {
    content: 'tablet_extra'; } }

@media (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
  #elementor-device-mode:after {
    content: 'tablet'; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_EXTRA_MAX) {
  #elementor-device-mode:after {
    content: 'mobile_extra'; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  #elementor-device-mode:after {
    content: 'mobile'; } }

[class^="eicon"],
[class*=" eicon-"] {
  display: inline-block;
  font-family: eicons;
  font-size: inherit;
  font-weight: normal;
  font-style: normal;
  font-variant: normal;
  line-height: 1;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

@keyframes eicon-spin {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(359deg); } }

.eicon-animation-spin {
  animation: eicon-spin 2s infinite linear; }

.eicon-loading:before {
  content: '\e8fb'; }

.eicon-menu-bar:before {
  content: '\e816'; }

.eicon-chevron-right:before {
  content: '\e87d'; }

.eicon-chevron-left:before {
  content: '\e87e'; }

.eicon-close:before {
  content: '\e87f'; }

.eicon-share-arrow:before {
  content: '\e96c'; }

.eicon-zoom-in:before {
  content: '\e882'; }

.eicon-zoom-in-bold:before {
  content: '\e92e'; }

.eicon-zoom-out-bold:before {
  content: '\e943'; }

.eicon-frame-expand:before {
  content: '\e95c'; }

.eicon-frame-minimize:before {
  content: '\e95d'; }

.eicon-play:before {
  content: '\e89d'; }

.eicon-facebook:before {
  content: '\e959'; }

.eicon-twitter:before {
  content: '\e95a'; }

.eicon-pinterest:before {
  content: '\e95b'; }

.eicon-download-bold:before {
  content: '\e96b'; }

.eicon-caret-down:before {
  content: '\e92a'; }

.elementor-form-fields-wrapper {
  display: flex;
  flex-wrap: wrap; }
  .elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group > input, .elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group > textarea, .elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group > .elementor-select-wrapper, .elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group .elementor-field-subgroup {
    flex-basis: 100%;
    max-width: 100%; }
  .elementor-form-fields-wrapper.elementor-labels-inline > .elementor-field-group > input, .elementor-form-fields-wrapper.elementor-labels-inline > .elementor-field-group .elementor-select-wrapper {
    flex-grow: 1; }

.elementor-field-group {
  flex-wrap: wrap;
  align-items: center; }
  .elementor-field-group.elementor-field-type-submit {
    align-items: flex-end; }
  .elementor-field-group .elementor-field-textual {
    width: 100%;
    max-width: 100%;
    border: 1px solid #818a91;
    background-color: transparent;
    color: #373a3c;
    vertical-align: middle;
    flex-grow: 1; }
    .elementor-field-group .elementor-field-textual:focus {
      box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1) inset;
      outline: 0; }
    .elementor-field-group .elementor-field-textual::-webkit-input-placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
    .elementor-field-group .elementor-field-textual:-ms-input-placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
    .elementor-field-group .elementor-field-textual::-moz-placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
    .elementor-field-group .elementor-field-textual:-moz-placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
    .elementor-field-group .elementor-field-textual::placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
  .elementor-field-group .elementor-select-wrapper {
    display: flex;
    position: relative;
    width: 100%; }
    .elementor-field-group .elementor-select-wrapper select {
      appearance: none;
      -webkit-appearance: none;
      -moz-appearance: none;
      color: inherit;
      font-size: inherit;
      font-family: inherit;
      font-weight: inherit;
      font-style: inherit;
      text-transform: inherit;
      letter-spacing: inherit;
      line-height: inherit;
      flex-basis: 100%;
      padding-right: 20px; }
    .elementor-field-group .elementor-select-wrapper:before {
      content: '\e92a';
      font-family: 'eicons';
      font-size: 15px;
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      right: 10px;
      pointer-events: none;
      text-shadow: 0 0 3px rgba(0, 0, 0, 0.3); }
  .elementor-field-group.elementor-field-type-select-multiple .elementor-select-wrapper:before {
    content: ''; }

.elementor-field-subgroup {
  display: flex;
  flex-wrap: wrap; }
  .elementor-field-subgroup .elementor-field-option label {
    display: inline-block; }
  .elementor-field-subgroup.elementor-subgroup-inline .elementor-field-option {
    padding-right: 10px; }
  .elementor-field-subgroup:not(.elementor-subgroup-inline) .elementor-field-option {
    flex-basis: 100%; }

.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option input,
.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option label,
.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option input,
.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option label,
.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option input,
.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option label {
  display: inline; }

.elementor-field-label {
  cursor: pointer; }
  .elementor-mark-required .elementor-field-label:after {
    content: '*';
    color: red;
    padding-left: 0.2em; }

.elementor-field-textual {
  line-height: 1.4;
  font-size: 15px;
  min-height: 40px;
  padding: 5px 14px;
  border-radius: 3px; }
  .elementor-field-textual.elementor-size-xs {
    font-size: 13px;
    min-height: 33px;
    padding: 4px 12px;
    border-radius: 2px; }
  .elementor-field-textual.elementor-size-md {
    font-size: 16px;
    min-height: 47px;
    padding: 6px 16px;
    border-radius: 4px; }
  .elementor-field-textual.elementor-size-lg {
    font-size: 18px;
    min-height: 59px;
    padding: 7px 20px;
    border-radius: 5px; }
  .elementor-field-textual.elementor-size-xl {
    font-size: 20px;
    min-height: 72px;
    padding: 8px 24px;
    border-radius: 6px; }

.elementor-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
  flex-basis: 100%; }

.elementor-button-align-stretch .e-form__buttons__wrapper {
  flex-basis: 50%;
  flex-grow: 1; }
  .elementor-button-align-stretch .e-form__buttons__wrapper__button {
    flex-basis: 100%; }

.elementor-button-align-center .elementor-field-type-submit,
.elementor-button-align-center .e-form__buttons {
  justify-content: center; }

.elementor-button-align-start .elementor-field-type-submit,
.elementor-button-align-start .e-form__buttons {
  justify-content: flex-start; }

.elementor-button-align-end .elementor-field-type-submit,
.elementor-button-align-end .e-form__buttons {
  justify-content: flex-end; }

.elementor-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
  flex-basis: initial; }

.elementor-button-align-center .e-form__buttons__wrapper, .elementor-button-align-start .e-form__buttons__wrapper, .elementor-button-align-end .e-form__buttons__wrapper {
  flex-grow: initial; }
  .elementor-button-align-center .e-form__buttons__wrapper, .elementor-button-align-center .e-form__buttons__wrapper__button, .elementor-button-align-start .e-form__buttons__wrapper, .elementor-button-align-start .e-form__buttons__wrapper__button, .elementor-button-align-end .e-form__buttons__wrapper, .elementor-button-align-end .e-form__buttons__wrapper__button {
    flex-basis: initial; }

@media screen and (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
  .elementor-tablet-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
    flex-basis: 100%; }
  .elementor-tablet-button-align-stretch .e-form__buttons__wrapper {
    flex-basis: 50%;
    flex-grow: 1; }
    .elementor-tablet-button-align-stretch .e-form__buttons__wrapper__button {
      flex-basis: 100%; }
  .elementor-tablet-button-align-center .elementor-field-type-submit,
  .elementor-tablet-button-align-center .e-form__buttons {
    justify-content: center; }
  .elementor-tablet-button-align-start .elementor-field-type-submit,
  .elementor-tablet-button-align-start .e-form__buttons {
    justify-content: flex-start; }
  .elementor-tablet-button-align-end .elementor-field-type-submit,
  .elementor-tablet-button-align-end .e-form__buttons {
    justify-content: flex-end; }
  .elementor-tablet-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-tablet-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-tablet-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
    flex-basis: initial; }
  .elementor-tablet-button-align-center .e-form__buttons__wrapper, .elementor-tablet-button-align-start .e-form__buttons__wrapper, .elementor-tablet-button-align-end .e-form__buttons__wrapper {
    flex-grow: initial; }
    .elementor-tablet-button-align-center .e-form__buttons__wrapper, .elementor-tablet-button-align-center .e-form__buttons__wrapper__button, .elementor-tablet-button-align-start .e-form__buttons__wrapper, .elementor-tablet-button-align-start .e-form__buttons__wrapper__button, .elementor-tablet-button-align-end .e-form__buttons__wrapper, .elementor-tablet-button-align-end .e-form__buttons__wrapper__button {
      flex-basis: initial; } }

@media screen and (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-mobile-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
    flex-basis: 100%; }
  .elementor-mobile-button-align-stretch .e-form__buttons__wrapper {
    flex-basis: 50%;
    flex-grow: 1; }
    .elementor-mobile-button-align-stretch .e-form__buttons__wrapper__button {
      flex-basis: 100%; }
  .elementor-mobile-button-align-center .elementor-field-type-submit,
  .elementor-mobile-button-align-center .e-form__buttons {
    justify-content: center; }
  .elementor-mobile-button-align-start .elementor-field-type-submit,
  .elementor-mobile-button-align-start .e-form__buttons {
    justify-content: flex-start; }
  .elementor-mobile-button-align-end .elementor-field-type-submit,
  .elementor-mobile-button-align-end .e-form__buttons {
    justify-content: flex-end; }
  .elementor-mobile-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-mobile-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-mobile-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
    flex-basis: initial; }
  .elementor-mobile-button-align-center .e-form__buttons__wrapper, .elementor-mobile-button-align-start .e-form__buttons__wrapper, .elementor-mobile-button-align-end .e-form__buttons__wrapper {
    flex-grow: initial; }
    .elementor-mobile-button-align-center .e-form__buttons__wrapper, .elementor-mobile-button-align-center .e-form__buttons__wrapper__button, .elementor-mobile-button-align-start .e-form__buttons__wrapper, .elementor-mobile-button-align-start .e-form__buttons__wrapper__button, .elementor-mobile-button-align-end .e-form__buttons__wrapper, .elementor-mobile-button-align-end .e-form__buttons__wrapper__button {
      flex-basis: initial; } }

.elementor-error .elementor-field {
  border-color: #d9534f; }

.elementor-error .help-inline {
  color: #d9534f;
  font-size: 0.9em; }

.elementor-message {
  margin: 10px 0;
  font-size: 1em;
  line-height: 1; }
  .elementor-message:before {
    content: "\e90e";
    display: inline-block;
    font-family: eicons;
    font-weight: normal;
    font-style: normal;
    vertical-align: middle;
    margin-right: 5px; }
  .elementor-message.elementor-message-danger {
    color: #d9534f; }
    .elementor-message.elementor-message-danger:before {
      content: "\e87f"; }
  .elementor-message.form-message-success {
    color: #5cb85c; }

.elementor-form .elementor-button {
  padding-top: 0;
  padding-bottom: 0;
  border: none; }
  .elementor-form .elementor-button > span {
    display: flex;
    justify-content: center; }
  .elementor-form .elementor-button.elementor-size-xs {
    min-height: 33px; }
  .elementor-form .elementor-button.elementor-size-sm {
    min-height: 40px; }
  .elementor-form .elementor-button.elementor-size-md {
    min-height: 47px; }
  .elementor-form .elementor-button.elementor-size-lg {
    min-height: 59px; }
  .elementor-form .elementor-button.elementor-size-xl {
    min-height: 72px; }

.elementor-element .elementor-widget-container {
  transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s; }

.elementor-button {
  display: inline-block;
  line-height: 1;
  background-color: #818a91;
  font-size: 15px;
  padding: 12px 24px;
  border-radius: 3px;
  color: #fff;
  fill: #fff;
  text-align: center;
  transition: all 0.3s; }
  .elementor-button:hover, .elementor-button:focus, .elementor-button:visited {
    color: #fff; }
  .elementor-button-content-wrapper {
    display: flex;
    justify-content: center; }
  .elementor-button-icon {
    flex-grow: 0;
    order: 5; }
    .elementor-button-icon svg {
      width: 1em;
      height: auto; }
    .elementor-button-icon .e-font-icon-svg {
      height: 1em; }
  .elementor-button-text {
    flex-grow: 1;
    order: 10;
    display: inline-block; }
  .elementor-button.elementor-size-xs {
    font-size: 13px;
    padding: 10px 20px;
    border-radius: 2px; }
  .elementor-button.elementor-size-md {
    font-size: 16px;
    padding: 15px 30px;
    border-radius: 4px; }
  .elementor-button.elementor-size-lg {
    font-size: 18px;
    padding: 20px 40px;
    border-radius: 5px; }
  .elementor-button.elementor-size-xl {
    font-size: 20px;
    padding: 25px 50px;
    border-radius: 6px; }
  .elementor-button .elementor-align-icon-right {
    margin-left: 5px;
    order: 15; }
  .elementor-button .elementor-align-icon-left {
    margin-right: 5px;
    order: 5; }
  .elementor-button span {
    text-decoration: inherit; }

/* TODO: REMOVE THIS EXCEPTION AFTER PRO 2.8 RELEASES */
.elementor-menu-cart__toggle .elementor-button-icon {
  order: 15; }

.elementor-element.elementor-button-info .elementor-button {
  background-color: #5bc0de; }

.elementor-element.elementor-button-success .elementor-button {
  background-color: #5cb85c; }

.elementor-element.elementor-button-warning .elementor-button {
  background-color: #f0ad4e; }

.elementor-element.elementor-button-danger .elementor-button {
  background-color: #d9534f; }

.elementor-widget-button .elementor-button .elementor-button-info {
  background-color: #5bc0de; }

.elementor-widget-button .elementor-button .elementor-button-success {
  background-color: #5cb85c; }

.elementor-widget-button .elementor-button .elementor-button-warning {
  background-color: #f0ad4e; }

.elementor-widget-button .elementor-button .elementor-button-danger {
  background-color: #d9534f; }

.elementor-tab-title a {
  color: inherit; }

.elementor-view-stacked .elementor-icon {
  padding: .5em;
  background-color: #818a91;
  color: #fff;
  fill: #fff; }

.elementor-view-framed .elementor-icon {
  padding: .5em;
  color: #818a91;
  border: 3px solid #818a91;
  background-color: transparent; }

.elementor-icon {
  display: inline-block;
  line-height: 1;
  transition: all 0.3s;
  color: #818a91;
  font-size: 50px;
  text-align: center; }
  .elementor-icon:hover {
    color: #818a91; }
  .elementor-icon i, .elementor-icon svg {
    width: 1em;
    height: 1em;
    position: relative;
    display: block; }
    .elementor-icon i:before, .elementor-icon svg:before {
      position: absolute;
      left: 50%;
      transform: translateX(-50%); }
  .elementor-icon i.fad {
    width: initial; }

.elementor-shape-circle .elementor-icon {
  border-radius: 50%; }

.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  user-select: none;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block; }
  .slick-track:before, .slick-track:after {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  .elementor-slick-slider[dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

.elementor-slick-slider .slick-loading .slick-list {
  background: #fff; }
  .elementor-slick-slider .slick-loading .slick-list:after {
    content: '\e8fb';
    font-family: eicons;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    animation: fa-spin 2s infinite linear;
    font-size: 25px;
    color: #a4afb7; }

.elementor-slick-slider .slick-prev,
.elementor-slick-slider .slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 50%;
  display: block;
  width: 20px;
  padding: 0;
  transform: translate(0, -50%);
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent; }
  .elementor-slick-slider .slick-prev:hover, .elementor-slick-slider .slick-prev:focus,
  .elementor-slick-slider .slick-next:hover,
  .elementor-slick-slider .slick-next:focus {
    color: transparent;
    outline: none;
    background: transparent; }
    .elementor-slick-slider .slick-prev:hover:before, .elementor-slick-slider .slick-prev:focus:before,
    .elementor-slick-slider .slick-next:hover:before,
    .elementor-slick-slider .slick-next:focus:before {
      opacity: 1; }
  .elementor-slick-slider .slick-prev.slick-disabled:before,
  .elementor-slick-slider .slick-next.slick-disabled:before {
    opacity: .25; }
  .elementor-slick-slider .slick-prev:before,
  .elementor-slick-slider .slick-next:before {
    font-family: eicons;
    font-size: 35px;
    line-height: 1;
    opacity: .75;
    color: white;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }

.elementor-slick-slider .slick-prev {
  left: -25px; }
  [dir="rtl"] .elementor-slick-slider .slick-prev {
    left: auto;
    right: -25px; }
  .elementor-slick-slider .slick-prev:before {
    content: '\e89f'; }
    [dir="rtl"] .elementor-slick-slider .slick-prev:before {
      content: '\e89e'; }

.elementor-slick-slider .slick-next {
  right: -25px; }
  [dir="rtl"] .elementor-slick-slider .slick-next {
    left: -25px;
    right: auto; }
  .elementor-slick-slider .slick-next:before {
    content: '\e89e'; }
    [dir="rtl"] .elementor-slick-slider .slick-next:before {
      content: '\e89f'; }

.elementor-slick-slider .slick-dotted.slick-slider {
  margin-bottom: 30px; }

.elementor-slick-slider ul.slick-dots {
  position: absolute;
  bottom: -25px;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1; }
  .elementor-slick-slider ul.slick-dots li {
    position: relative;
    display: inline-block;
    width: 20px;
    height: 20px;
    margin: 0;
    padding: 0;
    cursor: pointer; }
    .elementor-slick-slider ul.slick-dots li button {
      font-size: 0;
      line-height: 0;
      display: block;
      width: 20px;
      height: 20px;
      padding: 5px;
      cursor: pointer;
      color: transparent;
      border: 0;
      outline: none;
      background: transparent; }
      .elementor-slick-slider ul.slick-dots li button:hover, .elementor-slick-slider ul.slick-dots li button:focus {
        outline: none; }
        .elementor-slick-slider ul.slick-dots li button:hover:before, .elementor-slick-slider ul.slick-dots li button:focus:before {
          opacity: 1; }
      .elementor-slick-slider ul.slick-dots li button:before {
        font-family: eicons;
        font-size: 6px;
        line-height: 20px;
        position: absolute;
        top: 0;
        left: 0;
        width: 20px;
        height: 20px;
        content: '\e914';
        text-align: center;
        opacity: .25;
        color: black;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
    .elementor-slick-slider ul.slick-dots li.slick-active button:before {
      opacity: .75;
      color: black; }

.elementor-slick-slider .slick-arrows-inside .slick-prev {
  left: 20px; }
  [dir="rtl"] .elementor-slick-slider .slick-arrows-inside .slick-prev {
    left: auto;
    right: 20px; }

.elementor-slick-slider .slick-arrows-inside .slick-next {
  right: 20px; }
  [dir="rtl"] .elementor-slick-slider .slick-arrows-inside .slick-next {
    left: 20px;
    right: auto; }

.elementor-slick-slider .slick-dots-inside .slick-dots {
  bottom: 5px; }

.elementor-slick-slider .slick-dots-inside.slick-dotted.slick-slider {
  margin-bottom: 0; }

.elementor-slick-slider .slick-slider .slick-prev,
.elementor-slick-slider .slick-slider .slick-next {
  z-index: 1; }

.elementor-slick-slider .slick-slide img {
  margin: auto; }

/**
 * Swiper 3.4.2
 * Customized by Elementor team
 */
.swiper-container {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  /* Fix of Webkit flickering */
  z-index: 1; }
  .swiper-container .swiper-slide figure {
    line-height: 0; }
  .swiper-container .elementor-lightbox-content-source {
    display: none; }

.swiper-container-no-flexbox .swiper-slide {
  float: left; }

.swiper-container-vertical > .swiper-wrapper {
  flex-direction: column; }

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  box-sizing: content-box; }

.swiper-container-android .swiper-slide, .swiper-wrapper {
  transform: translate3d(0px, 0, 0); }

.swiper-container-multirow > .swiper-wrapper {
  flex-wrap: wrap; }

.swiper-container-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto; }

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative; }

/* Auto Height */
.swiper-container-autoheight {
  height: auto; }
  .swiper-container-autoheight .swiper-slide {
    height: auto; }
  .swiper-container-autoheight .swiper-wrapper {
    align-items: flex-start;
    transition-property: transform, height; }

/* a11y */
.swiper-container .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000; }

/* IE10 Windows Phone 8 Fixes */
.swiper-wp8-horizontal {
  touch-action: pan-y; }

.swiper-wp8-vertical {
  touch-action: pan-x; }

/* Arrows */
.swiper-button-prev, .swiper-button-next {
  position: absolute;
  top: 50%;
  width: 27px;
  height: 44px;
  margin-top: -22px;
  z-index: 10;
  cursor: pointer;
  background-size: 27px 44px;
  background: no-repeat center; }

.swiper-button-prev.swiper-button-disabled, .swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none; }

.swiper-button-prev, .swiper-container-rtl .swiper-button-next {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  left: 10px;
  right: auto; }

.swiper-button-prev.swiper-button-black, .swiper-container-rtl .swiper-button-next.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-prev.swiper-button-white, .swiper-container-rtl .swiper-button-next.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-next, .swiper-container-rtl .swiper-button-prev {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  right: 10px;
  left: auto; }

.swiper-button-next.swiper-button-black, .swiper-container-rtl .swiper-button-prev.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-next.swiper-button-white, .swiper-container-rtl .swiper-button-prev.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }

/* Pagination Styles */
.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 300ms;
  transform: translate3d(0, 0, 0);
  z-index: 10; }
  .swiper-pagination.swiper-pagination-hidden {
    opacity: 0; }

/* Common Styles */
.swiper-pagination-fraction, .swiper-pagination-custom, .swiper-container-horizontal > .swiper-pagination-bullets {
  bottom: 5px;
  left: 0;
  width: 100%; }

/* Bullets */
.swiper-pagination-bullet {
  width: 6px;
  height: 6px;
  display: inline-block;
  border-radius: 50%;
  background: #000;
  opacity: 0.2; }

.swiper-pagination-fraction {
  color: #000; }

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none; }

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer; }

.swiper-pagination-white .swiper-pagination-bullet {
  background: #fff; }

.swiper-pagination-bullet-active {
  opacity: 1; }

.swiper-pagination-white .swiper-pagination-bullet-active {
  background: #fff; }

.swiper-pagination-black .swiper-pagination-bullet-active {
  background: #000; }

.swiper-container-vertical > .swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  transform: translate3d(0px, -50%, 0); }
  .swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 5px 0;
    display: block; }

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 6px; }

/* Progressbar */
.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, 0.25);
  position: absolute; }
  .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: #000;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transform: scale(0);
    transform-origin: left top; }

.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top; }

.swiper-container-horizontal > .swiper-pagination-progressbar {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0; }

.swiper-container-vertical > .swiper-pagination-progressbar {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0; }

.swiper-pagination-progressbar.swiper-pagination-white {
  background: rgba(255, 255, 255, 0.5); }
  .swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill {
    background: #fff; }

.swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill {
  background: #000; }

/* 3D Container */
.swiper-container-3d {
  perspective: 1200px; }
  .swiper-container-3d .swiper-wrapper, .swiper-container-3d .swiper-slide, .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top, .swiper-container-3d .swiper-slide-shadow-bottom, .swiper-container-3d .swiper-cube-shadow {
    transform-style: preserve-3d; }
  .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top, .swiper-container-3d .swiper-slide-shadow-bottom {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10; }
  .swiper-container-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }
  .swiper-container-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }
  .swiper-container-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }
  .swiper-container-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

/* Coverflow */
.swiper-container-coverflow .swiper-wrapper, .swiper-container-flip .swiper-wrapper {
  /* Windows 8 IE 10 fix */
  -ms-perspective: 1200px; }

/* Cube + Flip */
.swiper-container-cube, .swiper-container-flip {
  overflow: visible; }

.swiper-container-cube .swiper-slide, .swiper-container-flip .swiper-slide {
  pointer-events: none;
  z-index: 1; }

.swiper-container-cube .swiper-slide .swiper-slide, .swiper-container-flip .swiper-slide .swiper-slide {
  pointer-events: none; }

.swiper-container-cube .swiper-slide-active, .swiper-container-flip .swiper-slide-active, .swiper-container-cube .swiper-slide-active .swiper-slide-active, .swiper-container-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto; }

.swiper-container-cube .swiper-slide-shadow-top, .swiper-container-flip .swiper-slide-shadow-top, .swiper-container-cube .swiper-slide-shadow-bottom, .swiper-container-flip .swiper-slide-shadow-bottom, .swiper-container-cube .swiper-slide-shadow-left, .swiper-container-flip .swiper-slide-shadow-left, .swiper-container-cube .swiper-slide-shadow-right, .swiper-container-flip .swiper-slide-shadow-right {
  z-index: 0;
  backface-visibility: hidden; }

/* Cube */
.swiper-container-cube .swiper-slide {
  visibility: hidden;
  transform-origin: 0 0;
  width: 100%;
  height: 100%; }

.swiper-container-cube.swiper-container-rtl .swiper-slide {
  transform-origin: 100% 0; }

.swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-next, .swiper-container-cube .swiper-slide-prev, .swiper-container-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible; }

.swiper-container-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0.6;
  -webkit-filter: blur(50px);
  filter: blur(50px);
  z-index: 0; }

/* Fade */
.swiper-container-fade.swiper-container-free-mode .swiper-slide {
  transition-timing-function: ease-out; }

.swiper-container-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity; }
  .swiper-container-fade .swiper-slide .swiper-slide {
    pointer-events: none; }

.swiper-container-fade .swiper-slide-active {
  pointer-events: auto; }
  .swiper-container-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto; }

.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center; }
  .swiper-zoom-container > img, .swiper-zoom-container > svg, .swiper-zoom-container > canvas {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain; }

/* Scrollbar */
.swiper-scrollbar {
  border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, 0.1); }

.swiper-container-horizontal > .swiper-scrollbar {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 50;
  height: 5px;
  width: 98%; }

.swiper-container-vertical > .swiper-scrollbar {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%; }

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 10px;
  left: 0;
  top: 0; }

.swiper-scrollbar-cursor-drag {
  cursor: move; }

.elementor-pagination-position-outside .swiper-container {
  padding-bottom: 30px; }

.elementor-pagination-position-outside .elementor-swiper-button {
  top: calc(50% - 30px / 2); }

.elementor-swiper {
  position: relative; }

.elementor-main-swiper {
  position: static; }

.elementor-arrows-position-outside .swiper-container {
  width: calc(100% - 60px); }

.elementor-arrows-position-outside .elementor-swiper-button-prev {
  left: 0; }

.elementor-arrows-position-outside .elementor-swiper-button-next {
  right: 0; }

.swiper-image-stretch .swiper-slide .swiper-slide-image {
  width: 100%; }

.elementor-swiper-button {
  position: absolute;
  display: inline-flex;
  z-index: 1;
  cursor: pointer;
  font-size: 25px;
  color: rgba(238, 238, 238, 0.9);
  top: 50%;
  transform: translateY(-50%); }
  .elementor-swiper-button-prev {
    left: 10px; }
  .elementor-swiper-button-next {
    right: 10px; }
  .elementor-swiper-button.swiper-button-disabled {
    opacity: 0.3; }

.swiper-container-cube .elementor-swiper-button {
  transform: translate3d(0, -50%, 1px); }

/* Preloader */
.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  animation: swiper-preloader-spin 1s steps(12, end) infinite; }
  .swiper-lazy-preloader:after {
    display: block;
    content: "";
    width: 100%;
    height: 100%;
    background-size: 100%;
    background: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%236c6c6c'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat 50%; }

.swiper-lazy-preloader-white:after {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%23fff'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }

@keyframes swiper-preloader-spin {
  100% {
    transform: rotate(360deg); } }

.elementor-lightbox {
  --lightbox-ui-color: rgba(238, 238, 238, 0.9);
  --lightbox-ui-color-hover: #fff;
  --lightbox-text-color: var(--lightbox-ui-color);
  --lightbox-header-icons-size: 20px;
  --lightbox-navigation-icons-size: 25px; }
  .elementor-lightbox .dialog-header {
    display: none; }
  .elementor-lightbox .dialog-widget-content {
    background: none;
    box-shadow: none;
    width: 100%;
    height: 100%; }
  .elementor-lightbox .dialog-message {
    animation-duration: .3s; }
    .elementor-lightbox .dialog-message:not(.elementor-fit-aspect-ratio) {
      height: 100%; }
    .elementor-lightbox .dialog-message.dialog-lightbox-message {
      padding: 0; }
  .elementor-lightbox .dialog-lightbox-close-button {
    cursor: pointer;
    position: absolute;
    font-size: var(--lightbox-header-icons-size);
    right: 0.75em;
    margin-top: 13px;
    padding: .25em;
    z-index: 2;
    line-height: 1; }
  .elementor-lightbox .dialog-lightbox-close-button,
  .elementor-lightbox .elementor-swiper-button {
    color: var(--lightbox-ui-color);
    transition: all 0.3s;
    opacity: 1; }
    .elementor-lightbox .dialog-lightbox-close-button:hover,
    .elementor-lightbox .elementor-swiper-button:hover {
      color: var(--lightbox-ui-color-hover); }
  .elementor-lightbox .swiper-container {
    height: 100%; }
  .elementor-lightbox .elementor-lightbox-item {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    padding: 70px;
    box-sizing: border-box;
    height: 100%;
    margin: auto; }
    @media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
      .elementor-lightbox .elementor-lightbox-item {
        padding: 70px 0; } }
  .elementor-lightbox .elementor-lightbox-image {
    max-height: 100%;
    user-select: none; }
    .elementor-lightbox .elementor-lightbox-image, .elementor-lightbox .elementor-lightbox-image:hover {
      opacity: 1;
      filter: none;
      border: none; }
  .elementor-lightbox .elementor-lightbox-image, .elementor-lightbox .elementor-video-container {
    box-shadow: 0 0 30px rgba(0, 0, 0, 0.3), 0 0 8px -5px rgba(0, 0, 0, 0.3);
    border-radius: 2px; }
  .elementor-lightbox .elementor-video-container {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); }
    @media (min-width: ELEMENTOR_SCREEN_TABLET_NEXT) {
      .elementor-lightbox .elementor-video-container {
        width: 75%; } }
    @media (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
      .elementor-lightbox .elementor-video-container {
        width: 100%; } }
  @media (min-width: 768px) and (max-width: 1024px) {
    .elementor-lightbox .elementor-aspect-ratio-916 .elementor-video-container {
      width: 70%; } }
  .elementor-lightbox .elementor-swiper-button:focus {
    outline-width: 1px; }
  .elementor-lightbox .elementor-swiper-button-prev, .elementor-lightbox .elementor-swiper-button-next {
    height: 100%;
    display: flex;
    align-items: center;
    width: 15%;
    justify-content: center;
    font-size: var(--lightbox-navigation-icons-size); }
  .elementor-lightbox .elementor-swiper-button-prev {
    left: 0; }
  .elementor-lightbox .elementor-swiper-button-next {
    right: 0; }
  @media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
    .elementor-lightbox .elementor-swiper-button:focus {
      outline: none; }
    .elementor-lightbox .elementor-swiper-button-prev, .elementor-lightbox .elementor-swiper-button-next {
      width: 20%; }
      .elementor-lightbox .elementor-swiper-button-prev i, .elementor-lightbox .elementor-swiper-button-next i {
        padding: 10px;
        background-color: rgba(0, 0, 0, 0.5); }
    .elementor-lightbox .elementor-swiper-button-prev {
      left: 0;
      justify-content: flex-start; }
    .elementor-lightbox .elementor-swiper-button-next {
      right: 0;
      justify-content: flex-end; } }

.elementor-slideshow__counter {
  color: currentColor;
  font-size: .75em;
  width: max-content; }

.elementor-slideshow__header, .elementor-slideshow__footer {
  position: absolute;
  left: 0;
  width: 100%;
  padding: 15px 20px;
  transition: 0.3s; }

.elementor-slideshow__footer {
  color: var(--lightbox-text-color); }

.elementor-slideshow__header {
  color: var(--lightbox-ui-color);
  display: flex;
  flex-direction: row-reverse;
  font-size: var(--lightbox-header-icons-size);
  padding-left: 1em;
  padding-right: 2.6em;
  top: 0;
  align-items: center;
  z-index: 10; }
  .elementor-slideshow__header > i {
    font-size: inherit;
    cursor: pointer;
    padding: .25em;
    margin: 0 .35em; }
    .elementor-slideshow__header > i:hover {
      color: var(--lightbox-ui-color-hover); }
  .elementor-slideshow__header .elementor-slideshow__counter {
    margin-right: auto; }
  .elementor-slideshow__header .elementor-icon-share {
    z-index: 5; }

.elementor-slideshow__share-menu {
  background-color: rgba(0, 0, 0, 0);
  width: 0;
  height: 0;
  position: absolute;
  overflow: hidden;
  transition: background-color 400ms; }
  .elementor-slideshow__share-menu .elementor-slideshow__share-links a {
    color: #2C2C2C; }

.elementor-slideshow__share-links {
  display: block;
  position: absolute;
  min-width: 200px;
  right: 2.8em;
  top: 3em;
  background-color: #fff;
  border-radius: 3px;
  padding: 14px 20px;
  transform: scale(0);
  opacity: 0;
  transform-origin: 90% 10%;
  transition: all 250ms 100ms;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3); }
  .elementor-slideshow__share-links a {
    text-align: left;
    color: #55595c;
    font-size: 12px;
    line-height: 2.5;
    display: block;
    opacity: 0;
    transition: opacity 500ms 100ms; }
    .elementor-slideshow__share-links a:hover {
      color: #000; }
    .elementor-slideshow__share-links a i {
      font-size: 1.25em;
      margin-right: 0.75em; }
  .elementor-slideshow__share-links:before {
    content: '';
    display: block;
    position: absolute;
    top: 1px;
    right: 0.5em;
    border: .45em solid;
    border-color: transparent transparent #fff transparent;
    transform: translateY(-100%) scaleX(0.7); }

.elementor-slideshow__footer {
  bottom: 0;
  z-index: 5;
  position: fixed; }

.elementor-slideshow__title, .elementor-slideshow__description {
  margin: 0; }

.elementor-slideshow__title {
  font-size: 16px;
  font-weight: bold; }

.elementor-slideshow__description {
  font-size: 14px; }

.elementor-slideshow--ui-hidden .elementor-slideshow__header, .elementor-slideshow--ui-hidden .elementor-slideshow__footer {
  opacity: 0;
  pointer-events: none; }

.elementor-slideshow--ui-hidden .elementor-swiper-button-prev, .elementor-slideshow--ui-hidden .elementor-swiper-button-next {
  opacity: 0; }

.elementor-slideshow--fullscreen-mode .elementor-video-container {
  width: 100%; }

.elementor-slideshow--zoom-mode .elementor-slideshow__header, .elementor-slideshow--zoom-mode .elementor-slideshow__footer {
  background-color: rgba(0, 0, 0, 0.5); }

.elementor-slideshow--zoom-mode .elementor-swiper-button-prev, .elementor-slideshow--zoom-mode .elementor-swiper-button-next {
  opacity: 0;
  pointer-events: none; }

.elementor-slideshow--share-mode .elementor-slideshow__share-menu {
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  opacity: 1;
  cursor: default;
  background-color: rgba(0, 0, 0, 0.5); }

.elementor-slideshow--share-mode .elementor-slideshow__share-links {
  transform: scale(1); }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links, .elementor-slideshow--share-mode .elementor-slideshow__share-links a {
    opacity: 1; }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-twitter {
    color: #1DA1F2; }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-facebook {
    color: #3b5998; }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-pinterest {
    color: #bd081c; }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-download-bold {
    color: #a4afb7; }

.elementor-slideshow--share-mode .eicon-share-arrow {
  z-index: 2; }

.animated {
  animation-duration: 1.25s; }
  .animated.animated-slow {
    animation-duration: 2s; }
  .animated.animated-fast {
    animation-duration: .75s; }
  .animated.infinite {
    animation-iteration-count: infinite; }
  .animated.reverse {
    animation-direction: reverse;
    animation-fill-mode: forwards; }

@media (prefers-reduced-motion: reduce) {
  .animated {
    animation: none; } }

.elementor-shape {
  overflow: hidden;
  position: absolute;
  left: 0;
  width: 100%;
  line-height: 0;
  direction: ltr;
  /*
	 * @TODO: The `z-index: -1` rules below are temporary fixes for Chrome 85 issue.
	 *   It will be removed in a future version of Chrome.
	 */ }
  .elementor-shape-top {
    top: -1px; }
    .elementor-shape-top:not([data-negative="false"]) svg {
      z-index: -1; }
  .elementor-shape-bottom {
    bottom: -1px; }
    .elementor-shape-bottom:not([data-negative="true"]) svg {
      z-index: -1; }
  .elementor-shape[data-negative="false"].elementor-shape-bottom {
    transform: rotate(180deg); }
  .elementor-shape[data-negative="true"].elementor-shape-top {
    transform: rotate(180deg); }
  .elementor-shape svg {
    display: block;
    width: calc(100% + 1.3px);
    position: relative;
    left: 50%;
    transform: translateX(-50%); }
  .elementor-shape .elementor-shape-fill {
    fill: #fff;
    transform-origin: center;
    transform: rotateY(0deg); }

#wp-admin-bar-elementor_edit_page .ab-submenu .ab-item {
  display: flex;
  width: 200px; }

#wp-admin-bar-elementor_edit_page .elementor-edit-link-title {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  width: 100%; }

#wp-admin-bar-elementor_edit_page .elementor-edit-link-type {
  background: #55595c;
  font-size: 11px;
  line-height: 9px;
  margin-top: 6px;
  padding: 4px 8px;
  border-radius: 3px; }

.page-template-elementor_canvas.elementor-page:before {
  display: none; }

.elementor-post__thumbnail__link {
  transition: none; }

#left-area ul.elementor-icon-list-items,
.elementor .elementor-element ul.elementor-icon-list-items,
.elementor-edit-area .elementor-element ul.elementor-icon-list-items {
  padding: 0; }

#wpadminbar * {
  font-style: normal; }

.e--ua-appleWebkit.rtl {
  --flex-right: flex-start; }

.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-right,
.e--ua-appleWebkit .elementor-share-buttons--align-right {
  --justify-content: var(--flex-right, flex-end); }

.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-center,
.e--ua-appleWebkit .elementor-share-buttons--align-center {
  --justify-content: center; }

.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-justify .elementor-grid {
  width: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: var(--justify-content, space-between);
  margin-left: calc(-0.5 * var(--grid-column-gap));
  margin-right: calc(-0.5 * var(--grid-column-gap)); }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-justify .elementor-grid-item {
    margin-left: calc(0.5 * var(--grid-column-gap));
    margin-right: calc(0.5 * var(--grid-column-gap)); }

.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid {
  display: inline-block; }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid-item {
    margin-left: 0;
    margin-right: 0; }

@media (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
  .e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-tablet-right,
  .e--ua-appleWebkit .elementor-share-buttons-tablet--align-right {
    --justify-content: var(--flex-right, flex-end); }
  .e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-tablet-center,
  .e--ua-appleWebkit .elementor-share-buttons-tablet--align-center {
    --justify-content: center; }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-justify .elementor-grid {
    width: auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: var(--justify-content, space-between);
    margin-left: calc(-0.5 * var(--grid-column-gap));
    margin-right: calc(-0.5 * var(--grid-column-gap)); }
    .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-justify .elementor-grid-item {
      margin-left: calc(0.5 * var(--grid-column-gap));
      margin-right: calc(0.5 * var(--grid-column-gap)); }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid {
    display: inline-block; }
    .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid-item {
      margin-left: 0;
      margin-right: 0; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-mobile-right,
  .e--ua-appleWebkit .elementor-share-buttons-mobile--align-right {
    --justify-content: var(--flex-right, flex-end); }
  .e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-mobile-center,
  .e--ua-appleWebkit .elementor-share-buttons-mobile--align-center {
    --justify-content: center; }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-justify .elementor-grid {
    width: auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: var(--justify-content, space-between);
    margin-left: calc(-0.5 * var(--grid-column-gap));
    margin-right: calc(-0.5 * var(--grid-column-gap)); }
    .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-justify .elementor-grid-item {
      margin-left: calc(0.5 * var(--grid-column-gap));
      margin-right: calc(0.5 * var(--grid-column-gap)); }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid {
    display: inline-block; }
    .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid-item {
      margin-left: 0;
      margin-right: 0; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor .elementor-hidden-mobile {
    display: none; }
  .elementor .elementor-hidden-phone {
    display: none; } }

@media (min-width: ELEMENTOR_SCREEN_MOBILE_EXTRA_MIN) and (max-width: ELEMENTOR_SCREEN_MOBILE_EXTRA_MAX) {
  .elementor .elementor-hidden-mobile_extra {
    display: none; } }

@media (min-width: ELEMENTOR_SCREEN_TABLET_MIN) and (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
  .elementor .elementor-hidden-tablet {
    display: none; } }

@media (min-width: ELEMENTOR_SCREEN_TABLET_EXTRA_MIN) and (max-width: ELEMENTOR_SCREEN_TABLET_EXTRA_MAX) {
  .elementor .elementor-hidden-tablet_extra {
    display: none; } }

@media (min-width: ELEMENTOR_SCREEN_LAPTOP_MIN) and (max-width: ELEMENTOR_SCREEN_LAPTOP_MAX) {
  .elementor .elementor-hidden-laptop {
    display: none; } }

@media (min-width: ELEMENTOR_SCREEN_DESKTOP_MIN) and (max-width: ELEMENTOR_SCREEN_DESKTOP_MAX) {
  .elementor .elementor-hidden-desktop {
    display: none; } }

@media (min-width: ELEMENTOR_SCREEN_WIDESCREEN_MIN) {
  .elementor .elementor-hidden-widescreen {
    display: none; } }

.elementor-widget-text-path {
  font-size: 20px;
  text-align: var(--alignment, left); }
  .elementor-widget-text-path svg {
    width: var(--width);
    max-width: 100%;
    height: auto;
    overflow: visible;
    word-spacing: var(--word-spacing);
    transform: rotate(var(--rotate, 0)) scaleX(var(--scale-x, 1)) scaleY(var(--scale-y, 1)); }
    .elementor-widget-text-path svg path {
      vector-effect: non-scaling-stroke;
      /* Prevent stroke size scaling when resizing the SVG. */
      fill: var(--path-fill, transparent);
      stroke: var(--stroke-color, transparent);
      stroke-width: var(--stroke-width, 1px);
      transition: var(--stroke-transition) stroke, var(--stroke-transition) fill; }
    .elementor-widget-text-path svg:hover path {
      --path-fill: var( --path-fill-hover );
      --stroke-color: var( --stroke-color-hover );
      --stroke-width: var( --stroke-width-hover ); }
    .elementor-widget-text-path svg text {
      --fill: var( --text-color );
      fill: var(--fill);
      direction: var(--direction, ltr);
      transition: var(--transition) stroke, var(--transition) stroke-width, var(--transition) fill; }
      .elementor-widget-text-path svg text:hover {
        --color: var( --text-color-hover, var( --text-color ) );
        --fill: var( --color );
        color: var(--color); }
assets/css/templates/frontend.css000064400000416130151327220410013167 0ustar00.dialog-widget-content {
  background-color: #fff;
  position: absolute;
  border-radius: 3px;
  box-shadow: 2px 8px 23px 3px rgba(0, 0, 0, 0.2);
  overflow: hidden; }

.dialog-message {
  font-size: 12px;
  line-height: 1.5;
  box-sizing: border-box; }

.dialog-type-lightbox {
  position: fixed;
  height: 100%;
  width: 100%;
  bottom: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 9999;
  user-select: none; }
  .dialog-type-lightbox .dialog-widget-content {
    margin: auto;
    width: 375px; }
  .dialog-type-lightbox .dialog-header {
    font-size: 15px;
    color: #495157;
    padding: 30px 0 10px;
    font-weight: 500; }
  .dialog-type-lightbox .dialog-message {
    padding: 0 30px 30px;
    min-height: 50px; }
  .dialog-type-lightbox:not(.elementor-popup-modal) .dialog-header,
  .dialog-type-lightbox:not(.elementor-popup-modal) .dialog-message {
    text-align: center; }
  .dialog-type-lightbox .dialog-buttons-wrapper {
    border-top: 1px solid #e6e9ec;
    text-align: center; }
    .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button {
      font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
      width: 50%;
      border: none;
      background: none;
      color: #6d7882;
      font-size: 15px;
      cursor: pointer;
      padding: 13px 0;
      outline: 0; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button:hover {
        background-color: #f4f6f7; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button.dialog-ok {
        color: #b01b1b; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button.dialog-take_over {
        color: #39b54a; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button:active {
        background-color: rgba(230, 233, 236, 0.5); }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button::-moz-focus-inner {
        border: 0; }

.dialog-close-button {
  cursor: pointer;
  position: absolute;
  margin-top: 15px;
  right: 15px;
  font-size: 15px;
  line-height: 1; }
  .dialog-close-button:not(:hover) {
    opacity: .4; }

.dialog-alert-widget .dialog-buttons-wrapper > button {
  width: 100%; }

.dialog-confirm-widget .dialog-button:first-child {
  border-right: 1px solid #e6e9ec; }

.dialog-prevent-scroll {
  overflow: hidden;
  max-height: 100vh; }

@media (min-width: 1024px) {
  body.admin-bar .dialog-lightbox-widget {
    height: calc(100vh - 32px); } }

@media (max-width: 1024px) {
  body.admin-bar .dialog-type-lightbox {
    position: sticky;
    height: 100vh; } }

.elementor-aspect-ratio-219 .elementor-fit-aspect-ratio {
  padding-bottom: 42.8571%; }

.elementor-aspect-ratio-169 .elementor-fit-aspect-ratio {
  padding-bottom: 56.25%; }

.elementor-aspect-ratio-43 .elementor-fit-aspect-ratio {
  padding-bottom: 75%; }

.elementor-aspect-ratio-32 .elementor-fit-aspect-ratio {
  padding-bottom: 66.6666%; }

.elementor-aspect-ratio-11 .elementor-fit-aspect-ratio {
  padding-bottom: 100%; }

.elementor-aspect-ratio-916 .elementor-fit-aspect-ratio {
  padding-bottom: 177.8%; }

.elementor-fit-aspect-ratio {
  position: relative;
  height: 0; }
  .elementor-fit-aspect-ratio iframe {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    border: 0;
    background-color: #000; }
  .elementor-fit-aspect-ratio video {
    width: 100%; }

.flatpickr-calendar {
  width: 280px; }
  .flatpickr-calendar .flatpickr-current-month span.cur-month {
    font-weight: 300; }
  .flatpickr-calendar .dayContainer {
    width: 280px;
    min-width: 280px;
    max-width: 280px; }
  .flatpickr-calendar .flatpickr-days {
    width: 280px; }
  .flatpickr-calendar .flatpickr-day {
    max-width: 37px;
    height: 37px;
    line-height: 37px; }

.elementor-templates-modal .dialog-widget-content {
  font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
  background-color: #f1f3f5;
  width: 100%; }
  @media (max-width: 1439px) {
    .elementor-templates-modal .dialog-widget-content {
      max-width: 990px; } }
  @media (min-width: 1440px) {
    .elementor-templates-modal .dialog-widget-content {
      max-width: 1200px; } }

.elementor-templates-modal .dialog-header {
  padding: 0;
  background-color: #fff;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
  position: relative;
  z-index: 1; }

.elementor-templates-modal .dialog-buttons-wrapper {
  background-color: #fff;
  border: none;
  display: none;
  justify-content: flex-end;
  padding: 5px;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
  position: relative; }
  .elementor-templates-modal .dialog-buttons-wrapper .elementor-button {
    height: 40px;
    margin-left: 5px; }
    .elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success {
      padding: 12px 36px;
      color: #fff;
      width: initial;
      font-size: 15px; }
      .elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success:hover {
        background-color: #39b54a; }

.elementor-templates-modal .dialog-message {
  height: 750px;
  max-height: 85vh;
  overflow: auto;
  padding-top: 25px; }

.elementor-templates-modal .dialog-content {
  height: 100%; }

.elementor-templates-modal .dialog-loading {
  display: none; }

.elementor-templates-modal__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 50px; }
  .elementor-templates-modal__header__logo {
    line-height: 1;
    text-transform: uppercase;
    font-weight: bold;
    cursor: pointer; }
    .elementor-templates-modal__header__logo-area {
      text-align: left;
      padding-left: 15px; }
      .elementor-templates-modal__header__logo-area > * {
        display: flex;
        align-items: center; }
    .elementor-templates-modal__header__logo__icon-wrapper {
      margin-right: 10px;
      font-size: 12px; }
    .elementor-templates-modal__header__logo__title {
      padding-top: 2px; }
  .elementor-templates-modal__header__items-area {
    display: flex;
    flex-direction: row-reverse; }
  .elementor-templates-modal__header__item {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: content-box; }
    .elementor-templates-modal__header__item > i {
      font-size: 20px;
      transition: all 0.3s;
      cursor: pointer; }
      .elementor-templates-modal__header__item > i:not(:hover) {
        color: #a4afb7; }
  .elementor-templates-modal__header__close--normal {
    width: 47px;
    border-left: 1px solid #e6e9ec; }
    .elementor-templates-modal__header__close--normal i {
      font-size: 18px; }
  .elementor-templates-modal__header__close--skip {
    padding: 10px;
    padding-left: 20px;
    margin-right: 10px;
    color: #fff;
    background-color: #a4afb7;
    font-size: 11px;
    font-weight: normal;
    line-height: 1;
    text-transform: uppercase;
    border-radius: 2px;
    cursor: pointer; }
    .elementor-templates-modal__header__close--skip > i {
      font-size: inherit;
      padding-left: 10px;
      margin-left: 15px;
      border-left: 1px solid; }
      .elementor-templates-modal__header__close--skip > i:not(:hover) {
        color: #fff; }

.elementor-templates-modal__sidebar {
  flex-shrink: 0;
  width: 25%;
  background-color: rgba(255, 255, 255, 0.3); }

.elementor-templates-modal__content {
  flex-grow: 1;
  box-shadow: 0 0 13px inset rgba(0, 0, 0, 0.05); }

/* Will select next element after last '.elementor-general-section' */
#wpadminbar #wp-admin-bar-elementor_edit_page .elementor-general-section + .elementor-second-section {
  border-top: 1px solid #464b50;
  margin-top: 6px; }

.elementor-hidden {
  display: none; }

.elementor-screen-only,
.screen-reader-text,
.screen-reader-text span,
.ui-helper-hidden-accessible {
  position: absolute;
  top: -10000em;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0; }

.elementor-clearfix:after {
  content: '';
  display: block;
  clear: both;
  width: 0;
  height: 0; }

.e-logo-wrapper {
  background: #93003c;
  display: inline-block;
  padding: 0.75em;
  border-radius: 50%;
  line-height: 1; }
  .e-logo-wrapper i {
    color: #fff;
    font-size: 1em; }

.elementor {
  hyphens: manual; }
  .elementor *, .elementor *:before, .elementor *:after {
    box-sizing: border-box; }
  .elementor a {
    box-shadow: none;
    text-decoration: none; }
  .elementor hr {
    margin: 0;
    background-color: transparent; }
  .elementor img {
    height: auto;
    max-width: 100%;
    border: none;
    border-radius: 0;
    box-shadow: none; }
  .elementor .elementor-widget:not(.elementor-widget-text-editor):not(.elementor-widget-theme-post-content) figure {
    margin: 0; }
  .elementor embed,
  .elementor iframe,
  .elementor object,
  .elementor video {
    max-width: 100%;
    width: 100%;
    margin: 0;
    line-height: 1;
    border: none; }
  .elementor .elementor-custom-embed {
    line-height: 0; }
  .elementor .elementor-background-video-container,
  .elementor .elementor-background-holder,
  .elementor .elementor-background {
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    position: absolute;
    overflow: hidden;
    z-index: 0;
    direction: ltr; }
  .elementor .elementor-background-video-container {
    transition: opacity 1s;
    pointer-events: none; }
    .elementor .elementor-background-video-container.elementor-loading {
      opacity: 0; }
  .elementor .elementor-background-video-embed {
    max-width: none; }
  .elementor .elementor-background-video-embed, .elementor .elementor-background-video-hosted {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); }
  .elementor .elementor-background-video {
    max-width: none;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); }
  .elementor .elementor-html5-video {
    object-fit: cover; }
  .elementor .elementor-background-overlay {
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    position: absolute; }
  .elementor .elementor-background-slideshow {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 0;
    top: 0;
    left: 0; }
    .elementor .elementor-background-slideshow__slide__image {
      width: 100%;
      height: 100%;
      background-position: center center;
      background-size: cover; }

.elementor-widget-wrap > .elementor-element.elementor-absolute {
  position: absolute; }
  .elementor-column > .elementor-widget-wrap > .elementor-element.elementor-absolute {
    padding: inherit;
    box-sizing: content-box; }

.elementor-widget-wrap > .elementor-element.elementor-fixed {
  position: fixed; }

.elementor-widget-wrap .elementor-element.elementor-widget__width-auto, .elementor-widget-wrap .elementor-element.elementor-widget__width-initial {
  max-width: 100%; }

@media (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
  .elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-auto, .elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-initial {
    max-width: 100%; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-auto, .elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-initial {
    max-width: 100%; } }

.elementor-element.elementor-absolute, .elementor-element.elementor-fixed {
  z-index: 1; }

.elementor-invisible {
  visibility: hidden; }

.elementor-align-center {
  text-align: center; }
  .elementor-align-center .elementor-button {
    width: auto; }

.elementor-align-right {
  text-align: right; }
  .elementor-align-right .elementor-button {
    width: auto; }

.elementor-align-left {
  text-align: left; }
  .elementor-align-left .elementor-button {
    width: auto; }

.elementor-align-justify .elementor-button {
  width: 100%; }

.elementor-custom-embed-play {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); }
  .elementor-custom-embed-play i {
    font-size: 100px;
    color: #fff;
    text-shadow: 1px 0 6px rgba(0, 0, 0, 0.3); }
  .elementor-custom-embed-play svg {
    height: 100px;
    width: 100px;
    fill: #fff;
    filter: drop-shadow(1px 0 6px rgba(0, 0, 0, 0.3)); }
  .elementor-custom-embed-play i,
  .elementor-custom-embed-play svg {
    opacity: 0.8;
    transition: all .5s; }
  .elementor-custom-embed-play.elementor-playing i {
    font-family: eicons;
    animation: fa-spin 2s infinite linear; }
    .elementor-custom-embed-play.elementor-playing i:before {
      content: '\e8fb'; }

.elementor-tag {
  display: inline-flex; }

.elementor-ken-burns {
  transition-property: transform;
  transition-duration: 10s;
  transition-timing-function: linear; }
  .elementor-ken-burns--out {
    transform: scale(1.3); }
  .elementor-ken-burns--active {
    transition-duration: 20s; }
    .elementor-ken-burns--active.elementor-ken-burns--out {
      transform: scale(1); }
    .elementor-ken-burns--active.elementor-ken-burns--in {
      transform: scale(1.3); }

@media (min-width: ELEMENTOR_SCREEN_WIDESCREEN_MIN) {
  .elementor-widescreen-align-center {
    text-align: center; }
    .elementor-widescreen-align-center .elementor-button {
      width: auto; }
  .elementor-widescreen-align-right {
    text-align: right; }
    .elementor-widescreen-align-right .elementor-button {
      width: auto; }
  .elementor-widescreen-align-left {
    text-align: left; }
    .elementor-widescreen-align-left .elementor-button {
      width: auto; }
  .elementor-widescreen-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: ELEMENTOR_SCREEN_LAPTOP_MAX) {
  .elementor-laptop-align-center {
    text-align: center; }
    .elementor-laptop-align-center .elementor-button {
      width: auto; }
  .elementor-laptop-align-right {
    text-align: right; }
    .elementor-laptop-align-right .elementor-button {
      width: auto; }
  .elementor-laptop-align-left {
    text-align: left; }
    .elementor-laptop-align-left .elementor-button {
      width: auto; }
  .elementor-laptop-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: ELEMENTOR_SCREEN_TABLET_EXTRA_MAX) {
  .elementor-tablet_extra-align-center {
    text-align: center; }
    .elementor-tablet_extra-align-center .elementor-button {
      width: auto; }
  .elementor-tablet_extra-align-right {
    text-align: right; }
    .elementor-tablet_extra-align-right .elementor-button {
      width: auto; }
  .elementor-tablet_extra-align-left {
    text-align: left; }
    .elementor-tablet_extra-align-left .elementor-button {
      width: auto; }
  .elementor-tablet_extra-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
  .elementor-tablet-align-center {
    text-align: center; }
    .elementor-tablet-align-center .elementor-button {
      width: auto; }
  .elementor-tablet-align-right {
    text-align: right; }
    .elementor-tablet-align-right .elementor-button {
      width: auto; }
  .elementor-tablet-align-left {
    text-align: left; }
    .elementor-tablet-align-left .elementor-button {
      width: auto; }
  .elementor-tablet-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_EXTRA_MAX) {
  .elementor-mobile_extra-align-center {
    text-align: center; }
    .elementor-mobile_extra-align-center .elementor-button {
      width: auto; }
  .elementor-mobile_extra-align-right {
    text-align: right; }
    .elementor-mobile_extra-align-right .elementor-button {
      width: auto; }
  .elementor-mobile_extra-align-left {
    text-align: left; }
    .elementor-mobile_extra-align-left .elementor-button {
      width: auto; }
  .elementor-mobile_extra-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-mobile-align-center {
    text-align: center; }
    .elementor-mobile-align-center .elementor-button {
      width: auto; }
  .elementor-mobile-align-right {
    text-align: right; }
    .elementor-mobile-align-right .elementor-button {
      width: auto; }
  .elementor-mobile-align-left {
    text-align: left; }
    .elementor-mobile-align-left .elementor-button {
      width: auto; }
  .elementor-mobile-align-justify .elementor-button {
    width: 100%; } }

#wpadminbar #wp-admin-bar-elementor_edit_page > .ab-item::before {
  content: "\e813";
  font-family: eicons;
  top: 3px;
  font-size: 18px; }

#wpadminbar #wp-admin-bar-elementor_inspector > .ab-item::before {
  content: "\f348";
  top: 2px; }

:root {
  --page-title-display: block; }

.elementor-page-title, h1.entry-title {
  display: var(--page-title-display); }

.elementor-section {
  position: relative; }
  .elementor-section .elementor-container {
    display: flex;
    margin-right: auto;
    margin-left: auto;
    position: relative; }
    @media (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
      .elementor-section .elementor-container {
        flex-wrap: wrap; } }
  .elementor-section.elementor-section-boxed > .elementor-container {
    max-width: 1140px; }
  .elementor-section.elementor-section-stretched {
    position: relative;
    width: 100%; }
  .elementor-section.elementor-section-items-top > .elementor-container {
    align-items: flex-start; }
  .elementor-section.elementor-section-items-middle > .elementor-container {
    align-items: center; }
  .elementor-section.elementor-section-items-bottom > .elementor-container {
    align-items: flex-end; }
  @media (min-width: ELEMENTOR_SCREEN_MOBILE_NEXT) {
    .elementor-section.elementor-section-height-full {
      height: 100vh; }
      .elementor-section.elementor-section-height-full > .elementor-container {
        height: 100%; } }

.elementor-bc-flex-widget .elementor-section-content-top > .elementor-container > .elementor-column > .elementor-widget-wrap {
  align-items: flex-start; }

.elementor-bc-flex-widget .elementor-section-content-middle > .elementor-container > .elementor-column > .elementor-widget-wrap {
  align-items: center; }

.elementor-bc-flex-widget .elementor-section-content-bottom > .elementor-container > .elementor-column > .elementor-widget-wrap {
  align-items: flex-end; }

.elementor-row {
  width: 100%;
  display: flex; }
  @media (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
    .elementor-row {
      flex-wrap: wrap; } }

.elementor-widget-wrap {
  position: relative;
  width: 100%;
  flex-wrap: wrap;
  align-content: flex-start; }
  .elementor:not(.elementor-bc-flex-widget) .elementor-widget-wrap {
    display: flex; }
  .elementor-widget-wrap > .elementor-element {
    width: 100%; }

.elementor-widget {
  position: relative; }
  .elementor-widget:not(:last-child) {
    margin-bottom: 20px; }
    .elementor-widget:not(:last-child).elementor-widget__width-auto, .elementor-widget:not(:last-child).elementor-widget__width-initial, .elementor-widget:not(:last-child).elementor-absolute {
      margin-bottom: 0; }

.elementor-column {
  position: relative;
  min-height: 1px;
  display: flex; }

.elementor-column-wrap {
  width: 100%;
  position: relative;
  display: flex; }

.elementor-column-gap-narrow > .elementor-column > .elementor-element-populated {
  padding: 5px; }

.elementor-column-gap-default > .elementor-column > .elementor-element-populated {
  padding: 10px; }

.elementor-column-gap-extended > .elementor-column > .elementor-element-populated {
  padding: 15px; }

.elementor-column-gap-wide > .elementor-column > .elementor-element-populated {
  padding: 20px; }

.elementor-column-gap-wider > .elementor-column > .elementor-element-populated {
  padding: 30px; }

.elementor-inner-section .elementor-column-gap-no .elementor-element-populated {
  padding: 0; }

@media (min-width: ELEMENTOR_SCREEN_MOBILE_NEXT) {
  .elementor-column.elementor-col-10, .elementor-column[data-col="10"] {
    width: 10%; }
  .elementor-column.elementor-col-11, .elementor-column[data-col="11"] {
    width: 11.111%; }
  .elementor-column.elementor-col-12, .elementor-column[data-col="12"] {
    width: 12.5%; }
  .elementor-column.elementor-col-14, .elementor-column[data-col="14"] {
    width: 14.285%; }
  .elementor-column.elementor-col-16, .elementor-column[data-col="16"] {
    width: 16.666%; }
  .elementor-column.elementor-col-20, .elementor-column[data-col="20"] {
    width: 20%; }
  .elementor-column.elementor-col-25, .elementor-column[data-col="25"] {
    width: 25%; }
  .elementor-column.elementor-col-30, .elementor-column[data-col="30"] {
    width: 30%; }
  .elementor-column.elementor-col-33, .elementor-column[data-col="33"] {
    width: 33.333%; }
  .elementor-column.elementor-col-40, .elementor-column[data-col="40"] {
    width: 40%; }
  .elementor-column.elementor-col-50, .elementor-column[data-col="50"] {
    width: 50%; }
  .elementor-column.elementor-col-60, .elementor-column[data-col="60"] {
    width: 60%; }
  .elementor-column.elementor-col-66, .elementor-column[data-col="66"] {
    width: 66.666%; }
  .elementor-column.elementor-col-70, .elementor-column[data-col="70"] {
    width: 70%; }
  .elementor-column.elementor-col-75, .elementor-column[data-col="75"] {
    width: 75%; }
  .elementor-column.elementor-col-80, .elementor-column[data-col="80"] {
    width: 80%; }
  .elementor-column.elementor-col-83, .elementor-column[data-col="83"] {
    width: 83.333%; }
  .elementor-column.elementor-col-90, .elementor-column[data-col="90"] {
    width: 90%; }
  .elementor-column.elementor-col-100, .elementor-column[data-col="100"] {
    width: 100%; } }

@media (max-width: 479px) {
  .elementor-column.elementor-xs-10 {
    width: 10%; }
  .elementor-column.elementor-xs-11 {
    width: 11.111%; }
  .elementor-column.elementor-xs-12 {
    width: 12.5%; }
  .elementor-column.elementor-xs-14 {
    width: 14.285%; }
  .elementor-column.elementor-xs-16 {
    width: 16.666%; }
  .elementor-column.elementor-xs-20 {
    width: 20%; }
  .elementor-column.elementor-xs-25 {
    width: 25%; }
  .elementor-column.elementor-xs-30 {
    width: 30%; }
  .elementor-column.elementor-xs-33 {
    width: 33.333%; }
  .elementor-column.elementor-xs-40 {
    width: 40%; }
  .elementor-column.elementor-xs-50 {
    width: 50%; }
  .elementor-column.elementor-xs-60 {
    width: 60%; }
  .elementor-column.elementor-xs-66 {
    width: 66.666%; }
  .elementor-column.elementor-xs-70 {
    width: 70%; }
  .elementor-column.elementor-xs-75 {
    width: 75%; }
  .elementor-column.elementor-xs-80 {
    width: 80%; }
  .elementor-column.elementor-xs-83 {
    width: 83.333%; }
  .elementor-column.elementor-xs-90 {
    width: 90%; }
  .elementor-column.elementor-xs-100 {
    width: 100%; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-column.elementor-sm-10 {
    width: 10%; }
  .elementor-column.elementor-sm-11 {
    width: 11.111%; }
  .elementor-column.elementor-sm-12 {
    width: 12.5%; }
  .elementor-column.elementor-sm-14 {
    width: 14.285%; }
  .elementor-column.elementor-sm-16 {
    width: 16.666%; }
  .elementor-column.elementor-sm-20 {
    width: 20%; }
  .elementor-column.elementor-sm-25 {
    width: 25%; }
  .elementor-column.elementor-sm-30 {
    width: 30%; }
  .elementor-column.elementor-sm-33 {
    width: 33.333%; }
  .elementor-column.elementor-sm-40 {
    width: 40%; }
  .elementor-column.elementor-sm-50 {
    width: 50%; }
  .elementor-column.elementor-sm-60 {
    width: 60%; }
  .elementor-column.elementor-sm-66 {
    width: 66.666%; }
  .elementor-column.elementor-sm-70 {
    width: 70%; }
  .elementor-column.elementor-sm-75 {
    width: 75%; }
  .elementor-column.elementor-sm-80 {
    width: 80%; }
  .elementor-column.elementor-sm-83 {
    width: 83.333%; }
  .elementor-column.elementor-sm-90 {
    width: 90%; }
  .elementor-column.elementor-sm-100 {
    width: 100%; } }

@media (min-width: ELEMENTOR_SCREEN_MOBILE_NEXT) and (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
  .elementor-column.elementor-md-10 {
    width: 10%; }
  .elementor-column.elementor-md-11 {
    width: 11.111%; }
  .elementor-column.elementor-md-12 {
    width: 12.5%; }
  .elementor-column.elementor-md-14 {
    width: 14.285%; }
  .elementor-column.elementor-md-16 {
    width: 16.666%; }
  .elementor-column.elementor-md-20 {
    width: 20%; }
  .elementor-column.elementor-md-25 {
    width: 25%; }
  .elementor-column.elementor-md-30 {
    width: 30%; }
  .elementor-column.elementor-md-33 {
    width: 33.333%; }
  .elementor-column.elementor-md-40 {
    width: 40%; }
  .elementor-column.elementor-md-50 {
    width: 50%; }
  .elementor-column.elementor-md-60 {
    width: 60%; }
  .elementor-column.elementor-md-66 {
    width: 66.666%; }
  .elementor-column.elementor-md-70 {
    width: 70%; }
  .elementor-column.elementor-md-75 {
    width: 75%; }
  .elementor-column.elementor-md-80 {
    width: 80%; }
  .elementor-column.elementor-md-83 {
    width: 83.333%; }
  .elementor-column.elementor-md-90 {
    width: 90%; }
  .elementor-column.elementor-md-100 {
    width: 100%; } }

@media (min-width: ELEMENTOR_SCREEN_MOBILE_NEXT) and (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
  .elementor-reverse-tablet > .elementor-container > :nth-child(1) {
    order: 10; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(2) {
    order: 9; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(3) {
    order: 8; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(4) {
    order: 7; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(5) {
    order: 6; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(6) {
    order: 5; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(7) {
    order: 4; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(8) {
    order: 3; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(9) {
    order: 2; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(10) {
    order: 1; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-reverse-mobile > .elementor-container > :nth-child(1) {
    order: 10; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(2) {
    order: 9; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(3) {
    order: 8; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(4) {
    order: 7; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(5) {
    order: 6; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(6) {
    order: 5; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(7) {
    order: 4; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(8) {
    order: 3; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(9) {
    order: 2; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(10) {
    order: 1; }
  .elementor-column {
    width: 100%; } }

ul.elementor-icon-list-items.elementor-inline-items {
  display: flex;
  flex-wrap: wrap; }
  ul.elementor-icon-list-items.elementor-inline-items .elementor-inline-item {
    word-break: break-word; }

.elementor-grid {
  display: grid;
  grid-column-gap: var(--grid-column-gap);
  grid-row-gap: var(--grid-row-gap); }
  .elementor-grid .elementor-grid-item {
    min-width: 0; }
  .elementor-grid-0 .elementor-grid {
    display: inline-block;
    width: 100%;
    word-spacing: var(--grid-column-gap);
    margin-bottom: calc(-1 * var(--grid-row-gap)); }
    .elementor-grid-0 .elementor-grid .elementor-grid-item {
      display: inline-block;
      margin-bottom: var(--grid-row-gap);
      word-break: break-word; }
  .elementor-grid-1 .elementor-grid {
    grid-template-columns: repeat(1, 1fr); }
  .elementor-grid-2 .elementor-grid {
    grid-template-columns: repeat(2, 1fr); }
  .elementor-grid-3 .elementor-grid {
    grid-template-columns: repeat(3, 1fr); }
  .elementor-grid-4 .elementor-grid {
    grid-template-columns: repeat(4, 1fr); }
  .elementor-grid-5 .elementor-grid {
    grid-template-columns: repeat(5, 1fr); }
  .elementor-grid-6 .elementor-grid {
    grid-template-columns: repeat(6, 1fr); }
  .elementor-grid-7 .elementor-grid {
    grid-template-columns: repeat(7, 1fr); }
  .elementor-grid-8 .elementor-grid {
    grid-template-columns: repeat(8, 1fr); }
  .elementor-grid-9 .elementor-grid {
    grid-template-columns: repeat(9, 1fr); }
  .elementor-grid-10 .elementor-grid {
    grid-template-columns: repeat(10, 1fr); }
  .elementor-grid-11 .elementor-grid {
    grid-template-columns: repeat(11, 1fr); }
  .elementor-grid-12 .elementor-grid {
    grid-template-columns: repeat(12, 1fr); }
  @media (min-width: ELEMENTOR_SCREEN_WIDESCREEN_MIN) {
    .elementor-grid-widescreen-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-widescreen-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-widescreen-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-widescreen-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-widescreen-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-widescreen-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-widescreen-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-widescreen-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-widescreen-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-widescreen-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-widescreen-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-widescreen-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-widescreen-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-widescreen-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: ELEMENTOR_SCREEN_LAPTOP_MAX) {
    .elementor-grid-laptop-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-laptop-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-laptop-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-laptop-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-laptop-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-laptop-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-laptop-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-laptop-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-laptop-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-laptop-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-laptop-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-laptop-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-laptop-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-laptop-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: ELEMENTOR_SCREEN_TABLET_EXTRA_MAX) {
    .elementor-grid-tablet_extra-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-tablet_extra-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-tablet_extra-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-tablet_extra-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-tablet_extra-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-tablet_extra-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-tablet_extra-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-tablet_extra-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-tablet_extra-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-tablet_extra-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-tablet_extra-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-tablet_extra-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-tablet_extra-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-tablet_extra-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
    .elementor-grid-tablet-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-tablet-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-tablet-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-tablet-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-tablet-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-tablet-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-tablet-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-tablet-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-tablet-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-tablet-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-tablet-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-tablet-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-tablet-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-tablet-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: ELEMENTOR_SCREEN_MOBILE_EXTRA_MAX) {
    .elementor-grid-mobile_extra-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-mobile_extra-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-mobile_extra-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-mobile_extra-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-mobile_extra-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-mobile_extra-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-mobile_extra-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-mobile_extra-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-mobile_extra-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-mobile_extra-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-mobile_extra-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-mobile_extra-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-mobile_extra-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-mobile_extra-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
    .elementor-grid-mobile-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-mobile-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-mobile-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-mobile-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-mobile-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-mobile-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-mobile-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-mobile-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-mobile-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-mobile-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-mobile-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-mobile-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-mobile-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-mobile-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }

@media (min-width: ELEMENTOR_SCREEN_DESKTOP_MIN) {
  #elementor-device-mode:after {
    content: 'desktop'; } }

@media (min-width: ELEMENTOR_SCREEN_WIDESCREEN_MIN) {
  #elementor-device-mode:after {
    content: 'widescreen'; } }

@media (max-width: ELEMENTOR_SCREEN_LAPTOP_MAX) {
  #elementor-device-mode:after {
    content: 'laptop'; } }

@media (max-width: ELEMENTOR_SCREEN_TABLET_EXTRA_MAX) {
  #elementor-device-mode:after {
    content: 'tablet_extra'; } }

@media (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
  #elementor-device-mode:after {
    content: 'tablet'; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_EXTRA_MAX) {
  #elementor-device-mode:after {
    content: 'mobile_extra'; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  #elementor-device-mode:after {
    content: 'mobile'; } }

[class^="eicon"],
[class*=" eicon-"] {
  display: inline-block;
  font-family: eicons;
  font-size: inherit;
  font-weight: normal;
  font-style: normal;
  font-variant: normal;
  line-height: 1;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

@keyframes eicon-spin {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(359deg); } }

.eicon-animation-spin {
  animation: eicon-spin 2s infinite linear; }

.eicon-loading:before {
  content: '\e8fb'; }

.eicon-menu-bar:before {
  content: '\e816'; }

.eicon-chevron-right:before {
  content: '\e87d'; }

.eicon-chevron-left:before {
  content: '\e87e'; }

.eicon-close:before {
  content: '\e87f'; }

.eicon-share-arrow:before {
  content: '\e96c'; }

.eicon-zoom-in:before {
  content: '\e882'; }

.eicon-zoom-in-bold:before {
  content: '\e92e'; }

.eicon-zoom-out-bold:before {
  content: '\e943'; }

.eicon-frame-expand:before {
  content: '\e95c'; }

.eicon-frame-minimize:before {
  content: '\e95d'; }

.eicon-play:before {
  content: '\e89d'; }

.eicon-facebook:before {
  content: '\e959'; }

.eicon-twitter:before {
  content: '\e95a'; }

.eicon-pinterest:before {
  content: '\e95b'; }

.eicon-download-bold:before {
  content: '\e96b'; }

.eicon-caret-down:before {
  content: '\e92a'; }

.elementor-form-fields-wrapper {
  display: flex;
  flex-wrap: wrap; }
  .elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group > input, .elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group > textarea, .elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group > .elementor-select-wrapper, .elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group .elementor-field-subgroup {
    flex-basis: 100%;
    max-width: 100%; }
  .elementor-form-fields-wrapper.elementor-labels-inline > .elementor-field-group > input, .elementor-form-fields-wrapper.elementor-labels-inline > .elementor-field-group .elementor-select-wrapper {
    flex-grow: 1; }

.elementor-field-group {
  flex-wrap: wrap;
  align-items: center; }
  .elementor-field-group.elementor-field-type-submit {
    align-items: flex-end; }
  .elementor-field-group .elementor-field-textual {
    width: 100%;
    max-width: 100%;
    border: 1px solid #818a91;
    background-color: transparent;
    color: #373a3c;
    vertical-align: middle;
    flex-grow: 1; }
    .elementor-field-group .elementor-field-textual:focus {
      box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1) inset;
      outline: 0; }
    .elementor-field-group .elementor-field-textual::-webkit-input-placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
    .elementor-field-group .elementor-field-textual:-ms-input-placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
    .elementor-field-group .elementor-field-textual::-moz-placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
    .elementor-field-group .elementor-field-textual:-moz-placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
    .elementor-field-group .elementor-field-textual::placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
  .elementor-field-group .elementor-select-wrapper {
    display: flex;
    position: relative;
    width: 100%; }
    .elementor-field-group .elementor-select-wrapper select {
      appearance: none;
      -webkit-appearance: none;
      -moz-appearance: none;
      color: inherit;
      font-size: inherit;
      font-family: inherit;
      font-weight: inherit;
      font-style: inherit;
      text-transform: inherit;
      letter-spacing: inherit;
      line-height: inherit;
      flex-basis: 100%;
      padding-right: 20px; }
    .elementor-field-group .elementor-select-wrapper:before {
      content: '\e92a';
      font-family: 'eicons';
      font-size: 15px;
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      right: 10px;
      pointer-events: none;
      text-shadow: 0 0 3px rgba(0, 0, 0, 0.3); }
  .elementor-field-group.elementor-field-type-select-multiple .elementor-select-wrapper:before {
    content: ''; }

.elementor-field-subgroup {
  display: flex;
  flex-wrap: wrap; }
  .elementor-field-subgroup .elementor-field-option label {
    display: inline-block; }
  .elementor-field-subgroup.elementor-subgroup-inline .elementor-field-option {
    padding-right: 10px; }
  .elementor-field-subgroup:not(.elementor-subgroup-inline) .elementor-field-option {
    flex-basis: 100%; }

.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option input,
.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option label,
.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option input,
.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option label,
.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option input,
.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option label {
  display: inline; }

.elementor-field-label {
  cursor: pointer; }
  .elementor-mark-required .elementor-field-label:after {
    content: '*';
    color: red;
    padding-left: 0.2em; }

.elementor-field-textual {
  line-height: 1.4;
  font-size: 15px;
  min-height: 40px;
  padding: 5px 14px;
  border-radius: 3px; }
  .elementor-field-textual.elementor-size-xs {
    font-size: 13px;
    min-height: 33px;
    padding: 4px 12px;
    border-radius: 2px; }
  .elementor-field-textual.elementor-size-md {
    font-size: 16px;
    min-height: 47px;
    padding: 6px 16px;
    border-radius: 4px; }
  .elementor-field-textual.elementor-size-lg {
    font-size: 18px;
    min-height: 59px;
    padding: 7px 20px;
    border-radius: 5px; }
  .elementor-field-textual.elementor-size-xl {
    font-size: 20px;
    min-height: 72px;
    padding: 8px 24px;
    border-radius: 6px; }

.elementor-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
  flex-basis: 100%; }

.elementor-button-align-stretch .e-form__buttons__wrapper {
  flex-basis: 50%;
  flex-grow: 1; }
  .elementor-button-align-stretch .e-form__buttons__wrapper__button {
    flex-basis: 100%; }

.elementor-button-align-center .elementor-field-type-submit,
.elementor-button-align-center .e-form__buttons {
  justify-content: center; }

.elementor-button-align-start .elementor-field-type-submit,
.elementor-button-align-start .e-form__buttons {
  justify-content: flex-start; }

.elementor-button-align-end .elementor-field-type-submit,
.elementor-button-align-end .e-form__buttons {
  justify-content: flex-end; }

.elementor-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
  flex-basis: initial; }

.elementor-button-align-center .e-form__buttons__wrapper, .elementor-button-align-start .e-form__buttons__wrapper, .elementor-button-align-end .e-form__buttons__wrapper {
  flex-grow: initial; }
  .elementor-button-align-center .e-form__buttons__wrapper, .elementor-button-align-center .e-form__buttons__wrapper__button, .elementor-button-align-start .e-form__buttons__wrapper, .elementor-button-align-start .e-form__buttons__wrapper__button, .elementor-button-align-end .e-form__buttons__wrapper, .elementor-button-align-end .e-form__buttons__wrapper__button {
    flex-basis: initial; }

@media screen and (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
  .elementor-tablet-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
    flex-basis: 100%; }
  .elementor-tablet-button-align-stretch .e-form__buttons__wrapper {
    flex-basis: 50%;
    flex-grow: 1; }
    .elementor-tablet-button-align-stretch .e-form__buttons__wrapper__button {
      flex-basis: 100%; }
  .elementor-tablet-button-align-center .elementor-field-type-submit,
  .elementor-tablet-button-align-center .e-form__buttons {
    justify-content: center; }
  .elementor-tablet-button-align-start .elementor-field-type-submit,
  .elementor-tablet-button-align-start .e-form__buttons {
    justify-content: flex-start; }
  .elementor-tablet-button-align-end .elementor-field-type-submit,
  .elementor-tablet-button-align-end .e-form__buttons {
    justify-content: flex-end; }
  .elementor-tablet-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-tablet-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-tablet-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
    flex-basis: initial; }
  .elementor-tablet-button-align-center .e-form__buttons__wrapper, .elementor-tablet-button-align-start .e-form__buttons__wrapper, .elementor-tablet-button-align-end .e-form__buttons__wrapper {
    flex-grow: initial; }
    .elementor-tablet-button-align-center .e-form__buttons__wrapper, .elementor-tablet-button-align-center .e-form__buttons__wrapper__button, .elementor-tablet-button-align-start .e-form__buttons__wrapper, .elementor-tablet-button-align-start .e-form__buttons__wrapper__button, .elementor-tablet-button-align-end .e-form__buttons__wrapper, .elementor-tablet-button-align-end .e-form__buttons__wrapper__button {
      flex-basis: initial; } }

@media screen and (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-mobile-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
    flex-basis: 100%; }
  .elementor-mobile-button-align-stretch .e-form__buttons__wrapper {
    flex-basis: 50%;
    flex-grow: 1; }
    .elementor-mobile-button-align-stretch .e-form__buttons__wrapper__button {
      flex-basis: 100%; }
  .elementor-mobile-button-align-center .elementor-field-type-submit,
  .elementor-mobile-button-align-center .e-form__buttons {
    justify-content: center; }
  .elementor-mobile-button-align-start .elementor-field-type-submit,
  .elementor-mobile-button-align-start .e-form__buttons {
    justify-content: flex-start; }
  .elementor-mobile-button-align-end .elementor-field-type-submit,
  .elementor-mobile-button-align-end .e-form__buttons {
    justify-content: flex-end; }
  .elementor-mobile-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-mobile-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-mobile-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
    flex-basis: initial; }
  .elementor-mobile-button-align-center .e-form__buttons__wrapper, .elementor-mobile-button-align-start .e-form__buttons__wrapper, .elementor-mobile-button-align-end .e-form__buttons__wrapper {
    flex-grow: initial; }
    .elementor-mobile-button-align-center .e-form__buttons__wrapper, .elementor-mobile-button-align-center .e-form__buttons__wrapper__button, .elementor-mobile-button-align-start .e-form__buttons__wrapper, .elementor-mobile-button-align-start .e-form__buttons__wrapper__button, .elementor-mobile-button-align-end .e-form__buttons__wrapper, .elementor-mobile-button-align-end .e-form__buttons__wrapper__button {
      flex-basis: initial; } }

.elementor-error .elementor-field {
  border-color: #d9534f; }

.elementor-error .help-inline {
  color: #d9534f;
  font-size: 0.9em; }

.elementor-message {
  margin: 10px 0;
  font-size: 1em;
  line-height: 1; }
  .elementor-message:before {
    content: "\e90e";
    display: inline-block;
    font-family: eicons;
    font-weight: normal;
    font-style: normal;
    vertical-align: middle;
    margin-right: 5px; }
  .elementor-message.elementor-message-danger {
    color: #d9534f; }
    .elementor-message.elementor-message-danger:before {
      content: "\e87f"; }
  .elementor-message.form-message-success {
    color: #5cb85c; }

.elementor-form .elementor-button {
  padding-top: 0;
  padding-bottom: 0;
  border: none; }
  .elementor-form .elementor-button > span {
    display: flex;
    justify-content: center; }
  .elementor-form .elementor-button.elementor-size-xs {
    min-height: 33px; }
  .elementor-form .elementor-button.elementor-size-sm {
    min-height: 40px; }
  .elementor-form .elementor-button.elementor-size-md {
    min-height: 47px; }
  .elementor-form .elementor-button.elementor-size-lg {
    min-height: 59px; }
  .elementor-form .elementor-button.elementor-size-xl {
    min-height: 72px; }

.elementor-element .elementor-widget-container {
  transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s; }

.elementor-button {
  display: inline-block;
  line-height: 1;
  background-color: #818a91;
  font-size: 15px;
  padding: 12px 24px;
  border-radius: 3px;
  color: #fff;
  fill: #fff;
  text-align: center;
  transition: all 0.3s; }
  .elementor-button:hover, .elementor-button:focus, .elementor-button:visited {
    color: #fff; }
  .elementor-button-content-wrapper {
    display: flex;
    justify-content: center; }
  .elementor-button-icon {
    flex-grow: 0;
    order: 5; }
    .elementor-button-icon svg {
      width: 1em;
      height: auto; }
    .elementor-button-icon .e-font-icon-svg {
      height: 1em; }
  .elementor-button-text {
    flex-grow: 1;
    order: 10;
    display: inline-block; }
  .elementor-button.elementor-size-xs {
    font-size: 13px;
    padding: 10px 20px;
    border-radius: 2px; }
  .elementor-button.elementor-size-md {
    font-size: 16px;
    padding: 15px 30px;
    border-radius: 4px; }
  .elementor-button.elementor-size-lg {
    font-size: 18px;
    padding: 20px 40px;
    border-radius: 5px; }
  .elementor-button.elementor-size-xl {
    font-size: 20px;
    padding: 25px 50px;
    border-radius: 6px; }
  .elementor-button .elementor-align-icon-right {
    margin-left: 5px;
    order: 15; }
  .elementor-button .elementor-align-icon-left {
    margin-right: 5px;
    order: 5; }
  .elementor-button span {
    text-decoration: inherit; }

/* TODO: REMOVE THIS EXCEPTION AFTER PRO 2.8 RELEASES */
.elementor-menu-cart__toggle .elementor-button-icon {
  order: 15; }

.elementor-element.elementor-button-info .elementor-button {
  background-color: #5bc0de; }

.elementor-element.elementor-button-success .elementor-button {
  background-color: #5cb85c; }

.elementor-element.elementor-button-warning .elementor-button {
  background-color: #f0ad4e; }

.elementor-element.elementor-button-danger .elementor-button {
  background-color: #d9534f; }

.elementor-widget-button .elementor-button .elementor-button-info {
  background-color: #5bc0de; }

.elementor-widget-button .elementor-button .elementor-button-success {
  background-color: #5cb85c; }

.elementor-widget-button .elementor-button .elementor-button-warning {
  background-color: #f0ad4e; }

.elementor-widget-button .elementor-button .elementor-button-danger {
  background-color: #d9534f; }

.elementor-tab-title a {
  color: inherit; }

.elementor-view-stacked .elementor-icon {
  padding: .5em;
  background-color: #818a91;
  color: #fff;
  fill: #fff; }

.elementor-view-framed .elementor-icon {
  padding: .5em;
  color: #818a91;
  border: 3px solid #818a91;
  background-color: transparent; }

.elementor-icon {
  display: inline-block;
  line-height: 1;
  transition: all 0.3s;
  color: #818a91;
  font-size: 50px;
  text-align: center; }
  .elementor-icon:hover {
    color: #818a91; }
  .elementor-icon i, .elementor-icon svg {
    width: 1em;
    height: 1em;
    position: relative;
    display: block; }
    .elementor-icon i:before, .elementor-icon svg:before {
      position: absolute;
      left: 50%;
      transform: translateX(-50%); }
  .elementor-icon i.fad {
    width: initial; }

.elementor-shape-circle .elementor-icon {
  border-radius: 50%; }

.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  user-select: none;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block; }
  .slick-track:before, .slick-track:after {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  .elementor-slick-slider[dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

.elementor-slick-slider .slick-loading .slick-list {
  background: #fff; }
  .elementor-slick-slider .slick-loading .slick-list:after {
    content: '\e8fb';
    font-family: eicons;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    animation: fa-spin 2s infinite linear;
    font-size: 25px;
    color: #a4afb7; }

.elementor-slick-slider .slick-prev,
.elementor-slick-slider .slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 50%;
  display: block;
  width: 20px;
  padding: 0;
  transform: translate(0, -50%);
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent; }
  .elementor-slick-slider .slick-prev:hover, .elementor-slick-slider .slick-prev:focus,
  .elementor-slick-slider .slick-next:hover,
  .elementor-slick-slider .slick-next:focus {
    color: transparent;
    outline: none;
    background: transparent; }
    .elementor-slick-slider .slick-prev:hover:before, .elementor-slick-slider .slick-prev:focus:before,
    .elementor-slick-slider .slick-next:hover:before,
    .elementor-slick-slider .slick-next:focus:before {
      opacity: 1; }
  .elementor-slick-slider .slick-prev.slick-disabled:before,
  .elementor-slick-slider .slick-next.slick-disabled:before {
    opacity: .25; }
  .elementor-slick-slider .slick-prev:before,
  .elementor-slick-slider .slick-next:before {
    font-family: eicons;
    font-size: 35px;
    line-height: 1;
    opacity: .75;
    color: white;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }

.elementor-slick-slider .slick-prev {
  left: -25px; }
  [dir="rtl"] .elementor-slick-slider .slick-prev {
    left: auto;
    right: -25px; }
  .elementor-slick-slider .slick-prev:before {
    content: '\e89f'; }
    [dir="rtl"] .elementor-slick-slider .slick-prev:before {
      content: '\e89e'; }

.elementor-slick-slider .slick-next {
  right: -25px; }
  [dir="rtl"] .elementor-slick-slider .slick-next {
    left: -25px;
    right: auto; }
  .elementor-slick-slider .slick-next:before {
    content: '\e89e'; }
    [dir="rtl"] .elementor-slick-slider .slick-next:before {
      content: '\e89f'; }

.elementor-slick-slider .slick-dotted.slick-slider {
  margin-bottom: 30px; }

.elementor-slick-slider ul.slick-dots {
  position: absolute;
  bottom: -25px;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1; }
  .elementor-slick-slider ul.slick-dots li {
    position: relative;
    display: inline-block;
    width: 20px;
    height: 20px;
    margin: 0;
    padding: 0;
    cursor: pointer; }
    .elementor-slick-slider ul.slick-dots li button {
      font-size: 0;
      line-height: 0;
      display: block;
      width: 20px;
      height: 20px;
      padding: 5px;
      cursor: pointer;
      color: transparent;
      border: 0;
      outline: none;
      background: transparent; }
      .elementor-slick-slider ul.slick-dots li button:hover, .elementor-slick-slider ul.slick-dots li button:focus {
        outline: none; }
        .elementor-slick-slider ul.slick-dots li button:hover:before, .elementor-slick-slider ul.slick-dots li button:focus:before {
          opacity: 1; }
      .elementor-slick-slider ul.slick-dots li button:before {
        font-family: eicons;
        font-size: 6px;
        line-height: 20px;
        position: absolute;
        top: 0;
        left: 0;
        width: 20px;
        height: 20px;
        content: '\e914';
        text-align: center;
        opacity: .25;
        color: black;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
    .elementor-slick-slider ul.slick-dots li.slick-active button:before {
      opacity: .75;
      color: black; }

.elementor-slick-slider .slick-arrows-inside .slick-prev {
  left: 20px; }
  [dir="rtl"] .elementor-slick-slider .slick-arrows-inside .slick-prev {
    left: auto;
    right: 20px; }

.elementor-slick-slider .slick-arrows-inside .slick-next {
  right: 20px; }
  [dir="rtl"] .elementor-slick-slider .slick-arrows-inside .slick-next {
    left: 20px;
    right: auto; }

.elementor-slick-slider .slick-dots-inside .slick-dots {
  bottom: 5px; }

.elementor-slick-slider .slick-dots-inside.slick-dotted.slick-slider {
  margin-bottom: 0; }

.elementor-slick-slider .slick-slider .slick-prev,
.elementor-slick-slider .slick-slider .slick-next {
  z-index: 1; }

.elementor-slick-slider .slick-slide img {
  margin: auto; }

/**
 * Swiper 3.4.2
 * Customized by Elementor team
 */
.swiper-container {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  /* Fix of Webkit flickering */
  z-index: 1; }
  .swiper-container .swiper-slide figure {
    line-height: 0; }
  .swiper-container .elementor-lightbox-content-source {
    display: none; }

.swiper-container-no-flexbox .swiper-slide {
  float: left; }

.swiper-container-vertical > .swiper-wrapper {
  flex-direction: column; }

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  box-sizing: content-box; }

.swiper-container-android .swiper-slide, .swiper-wrapper {
  transform: translate3d(0px, 0, 0); }

.swiper-container-multirow > .swiper-wrapper {
  flex-wrap: wrap; }

.swiper-container-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto; }

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative; }

/* Auto Height */
.swiper-container-autoheight {
  height: auto; }
  .swiper-container-autoheight .swiper-slide {
    height: auto; }
  .swiper-container-autoheight .swiper-wrapper {
    align-items: flex-start;
    transition-property: transform, height; }

/* a11y */
.swiper-container .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000; }

/* IE10 Windows Phone 8 Fixes */
.swiper-wp8-horizontal {
  touch-action: pan-y; }

.swiper-wp8-vertical {
  touch-action: pan-x; }

/* Arrows */
.swiper-button-prev, .swiper-button-next {
  position: absolute;
  top: 50%;
  width: 27px;
  height: 44px;
  margin-top: -22px;
  z-index: 10;
  cursor: pointer;
  background-size: 27px 44px;
  background: no-repeat center; }

.swiper-button-prev.swiper-button-disabled, .swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none; }

.swiper-button-prev, .swiper-container-rtl .swiper-button-next {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  left: 10px;
  right: auto; }

.swiper-button-prev.swiper-button-black, .swiper-container-rtl .swiper-button-next.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-prev.swiper-button-white, .swiper-container-rtl .swiper-button-next.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-next, .swiper-container-rtl .swiper-button-prev {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  right: 10px;
  left: auto; }

.swiper-button-next.swiper-button-black, .swiper-container-rtl .swiper-button-prev.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-next.swiper-button-white, .swiper-container-rtl .swiper-button-prev.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }

/* Pagination Styles */
.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 300ms;
  transform: translate3d(0, 0, 0);
  z-index: 10; }
  .swiper-pagination.swiper-pagination-hidden {
    opacity: 0; }

/* Common Styles */
.swiper-pagination-fraction, .swiper-pagination-custom, .swiper-container-horizontal > .swiper-pagination-bullets {
  bottom: 5px;
  left: 0;
  width: 100%; }

/* Bullets */
.swiper-pagination-bullet {
  width: 6px;
  height: 6px;
  display: inline-block;
  border-radius: 50%;
  background: #000;
  opacity: 0.2; }

.swiper-pagination-fraction {
  color: #000; }

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none; }

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer; }

.swiper-pagination-white .swiper-pagination-bullet {
  background: #fff; }

.swiper-pagination-bullet-active {
  opacity: 1; }

.swiper-pagination-white .swiper-pagination-bullet-active {
  background: #fff; }

.swiper-pagination-black .swiper-pagination-bullet-active {
  background: #000; }

.swiper-container-vertical > .swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  transform: translate3d(0px, -50%, 0); }
  .swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 5px 0;
    display: block; }

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 6px; }

/* Progressbar */
.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, 0.25);
  position: absolute; }
  .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: #000;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transform: scale(0);
    transform-origin: left top; }

.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top; }

.swiper-container-horizontal > .swiper-pagination-progressbar {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0; }

.swiper-container-vertical > .swiper-pagination-progressbar {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0; }

.swiper-pagination-progressbar.swiper-pagination-white {
  background: rgba(255, 255, 255, 0.5); }
  .swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill {
    background: #fff; }

.swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill {
  background: #000; }

/* 3D Container */
.swiper-container-3d {
  perspective: 1200px; }
  .swiper-container-3d .swiper-wrapper, .swiper-container-3d .swiper-slide, .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top, .swiper-container-3d .swiper-slide-shadow-bottom, .swiper-container-3d .swiper-cube-shadow {
    transform-style: preserve-3d; }
  .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top, .swiper-container-3d .swiper-slide-shadow-bottom {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10; }
  .swiper-container-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }
  .swiper-container-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }
  .swiper-container-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }
  .swiper-container-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

/* Coverflow */
.swiper-container-coverflow .swiper-wrapper, .swiper-container-flip .swiper-wrapper {
  /* Windows 8 IE 10 fix */
  -ms-perspective: 1200px; }

/* Cube + Flip */
.swiper-container-cube, .swiper-container-flip {
  overflow: visible; }

.swiper-container-cube .swiper-slide, .swiper-container-flip .swiper-slide {
  pointer-events: none;
  z-index: 1; }

.swiper-container-cube .swiper-slide .swiper-slide, .swiper-container-flip .swiper-slide .swiper-slide {
  pointer-events: none; }

.swiper-container-cube .swiper-slide-active, .swiper-container-flip .swiper-slide-active, .swiper-container-cube .swiper-slide-active .swiper-slide-active, .swiper-container-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto; }

.swiper-container-cube .swiper-slide-shadow-top, .swiper-container-flip .swiper-slide-shadow-top, .swiper-container-cube .swiper-slide-shadow-bottom, .swiper-container-flip .swiper-slide-shadow-bottom, .swiper-container-cube .swiper-slide-shadow-left, .swiper-container-flip .swiper-slide-shadow-left, .swiper-container-cube .swiper-slide-shadow-right, .swiper-container-flip .swiper-slide-shadow-right {
  z-index: 0;
  backface-visibility: hidden; }

/* Cube */
.swiper-container-cube .swiper-slide {
  visibility: hidden;
  transform-origin: 0 0;
  width: 100%;
  height: 100%; }

.swiper-container-cube.swiper-container-rtl .swiper-slide {
  transform-origin: 100% 0; }

.swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-next, .swiper-container-cube .swiper-slide-prev, .swiper-container-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible; }

.swiper-container-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0.6;
  -webkit-filter: blur(50px);
  filter: blur(50px);
  z-index: 0; }

/* Fade */
.swiper-container-fade.swiper-container-free-mode .swiper-slide {
  transition-timing-function: ease-out; }

.swiper-container-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity; }
  .swiper-container-fade .swiper-slide .swiper-slide {
    pointer-events: none; }

.swiper-container-fade .swiper-slide-active {
  pointer-events: auto; }
  .swiper-container-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto; }

.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center; }
  .swiper-zoom-container > img, .swiper-zoom-container > svg, .swiper-zoom-container > canvas {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain; }

/* Scrollbar */
.swiper-scrollbar {
  border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, 0.1); }

.swiper-container-horizontal > .swiper-scrollbar {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 50;
  height: 5px;
  width: 98%; }

.swiper-container-vertical > .swiper-scrollbar {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%; }

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 10px;
  left: 0;
  top: 0; }

.swiper-scrollbar-cursor-drag {
  cursor: move; }

.elementor-pagination-position-outside .swiper-container {
  padding-bottom: 30px; }

.elementor-pagination-position-outside .elementor-swiper-button {
  top: calc(50% - 30px / 2); }

.elementor-swiper {
  position: relative; }

.elementor-main-swiper {
  position: static; }

.elementor-arrows-position-outside .swiper-container {
  width: calc(100% - 60px); }

.elementor-arrows-position-outside .elementor-swiper-button-prev {
  left: 0; }

.elementor-arrows-position-outside .elementor-swiper-button-next {
  right: 0; }

.swiper-image-stretch .swiper-slide .swiper-slide-image {
  width: 100%; }

.elementor-swiper-button {
  position: absolute;
  display: inline-flex;
  z-index: 1;
  cursor: pointer;
  font-size: 25px;
  color: rgba(238, 238, 238, 0.9);
  top: 50%;
  transform: translateY(-50%); }
  .elementor-swiper-button-prev {
    left: 10px; }
  .elementor-swiper-button-next {
    right: 10px; }
  .elementor-swiper-button.swiper-button-disabled {
    opacity: 0.3; }

.swiper-container-cube .elementor-swiper-button {
  transform: translate3d(0, -50%, 1px); }

/* Preloader */
.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  animation: swiper-preloader-spin 1s steps(12, end) infinite; }
  .swiper-lazy-preloader:after {
    display: block;
    content: "";
    width: 100%;
    height: 100%;
    background-size: 100%;
    background: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%236c6c6c'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat 50%; }

.swiper-lazy-preloader-white:after {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%23fff'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }

@keyframes swiper-preloader-spin {
  100% {
    transform: rotate(360deg); } }

.elementor-lightbox {
  --lightbox-ui-color: rgba(238, 238, 238, 0.9);
  --lightbox-ui-color-hover: #fff;
  --lightbox-text-color: var(--lightbox-ui-color);
  --lightbox-header-icons-size: 20px;
  --lightbox-navigation-icons-size: 25px; }
  .elementor-lightbox .dialog-header {
    display: none; }
  .elementor-lightbox .dialog-widget-content {
    background: none;
    box-shadow: none;
    width: 100%;
    height: 100%; }
  .elementor-lightbox .dialog-message {
    animation-duration: .3s; }
    .elementor-lightbox .dialog-message:not(.elementor-fit-aspect-ratio) {
      height: 100%; }
    .elementor-lightbox .dialog-message.dialog-lightbox-message {
      padding: 0; }
  .elementor-lightbox .dialog-lightbox-close-button {
    cursor: pointer;
    position: absolute;
    font-size: var(--lightbox-header-icons-size);
    right: 0.75em;
    margin-top: 13px;
    padding: .25em;
    z-index: 2;
    line-height: 1; }
  .elementor-lightbox .dialog-lightbox-close-button,
  .elementor-lightbox .elementor-swiper-button {
    color: var(--lightbox-ui-color);
    transition: all 0.3s;
    opacity: 1; }
    .elementor-lightbox .dialog-lightbox-close-button:hover,
    .elementor-lightbox .elementor-swiper-button:hover {
      color: var(--lightbox-ui-color-hover); }
  .elementor-lightbox .swiper-container {
    height: 100%; }
  .elementor-lightbox .elementor-lightbox-item {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    padding: 70px;
    box-sizing: border-box;
    height: 100%;
    margin: auto; }
    @media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
      .elementor-lightbox .elementor-lightbox-item {
        padding: 70px 0; } }
  .elementor-lightbox .elementor-lightbox-image {
    max-height: 100%;
    user-select: none; }
    .elementor-lightbox .elementor-lightbox-image, .elementor-lightbox .elementor-lightbox-image:hover {
      opacity: 1;
      filter: none;
      border: none; }
  .elementor-lightbox .elementor-lightbox-image, .elementor-lightbox .elementor-video-container {
    box-shadow: 0 0 30px rgba(0, 0, 0, 0.3), 0 0 8px -5px rgba(0, 0, 0, 0.3);
    border-radius: 2px; }
  .elementor-lightbox .elementor-video-container {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); }
    @media (min-width: ELEMENTOR_SCREEN_TABLET_NEXT) {
      .elementor-lightbox .elementor-video-container {
        width: 75%; } }
    @media (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
      .elementor-lightbox .elementor-video-container {
        width: 100%; } }
  @media (min-width: 768px) and (max-width: 1024px) {
    .elementor-lightbox .elementor-aspect-ratio-916 .elementor-video-container {
      width: 70%; } }
  .elementor-lightbox .elementor-swiper-button:focus {
    outline-width: 1px; }
  .elementor-lightbox .elementor-swiper-button-prev, .elementor-lightbox .elementor-swiper-button-next {
    height: 100%;
    display: flex;
    align-items: center;
    width: 15%;
    justify-content: center;
    font-size: var(--lightbox-navigation-icons-size); }
  .elementor-lightbox .elementor-swiper-button-prev {
    left: 0; }
  .elementor-lightbox .elementor-swiper-button-next {
    right: 0; }
  @media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
    .elementor-lightbox .elementor-swiper-button:focus {
      outline: none; }
    .elementor-lightbox .elementor-swiper-button-prev, .elementor-lightbox .elementor-swiper-button-next {
      width: 20%; }
      .elementor-lightbox .elementor-swiper-button-prev i, .elementor-lightbox .elementor-swiper-button-next i {
        padding: 10px;
        background-color: rgba(0, 0, 0, 0.5); }
    .elementor-lightbox .elementor-swiper-button-prev {
      left: 0;
      justify-content: flex-start; }
    .elementor-lightbox .elementor-swiper-button-next {
      right: 0;
      justify-content: flex-end; } }

.elementor-slideshow__counter {
  color: currentColor;
  font-size: .75em;
  width: max-content; }

.elementor-slideshow__header, .elementor-slideshow__footer {
  position: absolute;
  left: 0;
  width: 100%;
  padding: 15px 20px;
  transition: 0.3s; }

.elementor-slideshow__footer {
  color: var(--lightbox-text-color); }

.elementor-slideshow__header {
  color: var(--lightbox-ui-color);
  display: flex;
  flex-direction: row-reverse;
  font-size: var(--lightbox-header-icons-size);
  padding-left: 1em;
  padding-right: 2.6em;
  top: 0;
  align-items: center;
  z-index: 10; }
  .elementor-slideshow__header > i {
    font-size: inherit;
    cursor: pointer;
    padding: .25em;
    margin: 0 .35em; }
    .elementor-slideshow__header > i:hover {
      color: var(--lightbox-ui-color-hover); }
  .elementor-slideshow__header .elementor-slideshow__counter {
    margin-right: auto; }
  .elementor-slideshow__header .elementor-icon-share {
    z-index: 5; }

.elementor-slideshow__share-menu {
  background-color: rgba(0, 0, 0, 0);
  width: 0;
  height: 0;
  position: absolute;
  overflow: hidden;
  transition: background-color 400ms; }
  .elementor-slideshow__share-menu .elementor-slideshow__share-links a {
    color: #2C2C2C; }

.elementor-slideshow__share-links {
  display: block;
  position: absolute;
  min-width: 200px;
  right: 2.8em;
  top: 3em;
  background-color: #fff;
  border-radius: 3px;
  padding: 14px 20px;
  transform: scale(0);
  opacity: 0;
  transform-origin: 90% 10%;
  transition: all 250ms 100ms;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3); }
  .elementor-slideshow__share-links a {
    text-align: left;
    color: #55595c;
    font-size: 12px;
    line-height: 2.5;
    display: block;
    opacity: 0;
    transition: opacity 500ms 100ms; }
    .elementor-slideshow__share-links a:hover {
      color: #000; }
    .elementor-slideshow__share-links a i {
      font-size: 1.25em;
      margin-right: 0.75em; }
  .elementor-slideshow__share-links:before {
    content: '';
    display: block;
    position: absolute;
    top: 1px;
    right: 0.5em;
    border: .45em solid;
    border-color: transparent transparent #fff transparent;
    transform: translateY(-100%) scaleX(0.7); }

.elementor-slideshow__footer {
  bottom: 0;
  z-index: 5;
  position: fixed; }

.elementor-slideshow__title, .elementor-slideshow__description {
  margin: 0; }

.elementor-slideshow__title {
  font-size: 16px;
  font-weight: bold; }

.elementor-slideshow__description {
  font-size: 14px; }

.elementor-slideshow--ui-hidden .elementor-slideshow__header, .elementor-slideshow--ui-hidden .elementor-slideshow__footer {
  opacity: 0;
  pointer-events: none; }

.elementor-slideshow--ui-hidden .elementor-swiper-button-prev, .elementor-slideshow--ui-hidden .elementor-swiper-button-next {
  opacity: 0; }

.elementor-slideshow--fullscreen-mode .elementor-video-container {
  width: 100%; }

.elementor-slideshow--zoom-mode .elementor-slideshow__header, .elementor-slideshow--zoom-mode .elementor-slideshow__footer {
  background-color: rgba(0, 0, 0, 0.5); }

.elementor-slideshow--zoom-mode .elementor-swiper-button-prev, .elementor-slideshow--zoom-mode .elementor-swiper-button-next {
  opacity: 0;
  pointer-events: none; }

.elementor-slideshow--share-mode .elementor-slideshow__share-menu {
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  opacity: 1;
  cursor: default;
  background-color: rgba(0, 0, 0, 0.5); }

.elementor-slideshow--share-mode .elementor-slideshow__share-links {
  transform: scale(1); }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links, .elementor-slideshow--share-mode .elementor-slideshow__share-links a {
    opacity: 1; }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-twitter {
    color: #1DA1F2; }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-facebook {
    color: #3b5998; }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-pinterest {
    color: #bd081c; }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-download-bold {
    color: #a4afb7; }

.elementor-slideshow--share-mode .eicon-share-arrow {
  z-index: 2; }

.animated {
  animation-duration: 1.25s; }
  .animated.animated-slow {
    animation-duration: 2s; }
  .animated.animated-fast {
    animation-duration: .75s; }
  .animated.infinite {
    animation-iteration-count: infinite; }
  .animated.reverse {
    animation-direction: reverse;
    animation-fill-mode: forwards; }

@media (prefers-reduced-motion: reduce) {
  .animated {
    animation: none; } }

.elementor-shape {
  overflow: hidden;
  position: absolute;
  left: 0;
  width: 100%;
  line-height: 0;
  direction: ltr;
  /*
	 * @TODO: The `z-index: -1` rules below are temporary fixes for Chrome 85 issue.
	 *   It will be removed in a future version of Chrome.
	 */ }
  .elementor-shape-top {
    top: -1px; }
    .elementor-shape-top:not([data-negative="false"]) svg {
      z-index: -1; }
  .elementor-shape-bottom {
    bottom: -1px; }
    .elementor-shape-bottom:not([data-negative="true"]) svg {
      z-index: -1; }
  .elementor-shape[data-negative="false"].elementor-shape-bottom {
    transform: rotate(180deg); }
  .elementor-shape[data-negative="true"].elementor-shape-top {
    transform: rotate(180deg); }
  .elementor-shape svg {
    display: block;
    width: calc(100% + 1.3px);
    position: relative;
    left: 50%;
    transform: translateX(-50%); }
  .elementor-shape .elementor-shape-fill {
    fill: #fff;
    transform-origin: center;
    transform: rotateY(0deg); }

#wp-admin-bar-elementor_edit_page .ab-submenu .ab-item {
  display: flex;
  width: 200px; }

#wp-admin-bar-elementor_edit_page .elementor-edit-link-title {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  width: 100%; }

#wp-admin-bar-elementor_edit_page .elementor-edit-link-type {
  background: #55595c;
  font-size: 11px;
  line-height: 9px;
  margin-top: 6px;
  padding: 4px 8px;
  border-radius: 3px; }

.page-template-elementor_canvas.elementor-page:before {
  display: none; }

.elementor-post__thumbnail__link {
  transition: none; }

#left-area ul.elementor-icon-list-items,
.elementor .elementor-element ul.elementor-icon-list-items,
.elementor-edit-area .elementor-element ul.elementor-icon-list-items {
  padding: 0; }

#wpadminbar * {
  font-style: normal; }

.e--ua-appleWebkit.rtl {
  --flex-right: flex-start; }

.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-right,
.e--ua-appleWebkit .elementor-share-buttons--align-right {
  --justify-content: var(--flex-right, flex-end); }

.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-center,
.e--ua-appleWebkit .elementor-share-buttons--align-center {
  --justify-content: center; }

.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-justify .elementor-grid {
  width: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: var(--justify-content, space-between);
  margin-left: calc(-0.5 * var(--grid-column-gap));
  margin-right: calc(-0.5 * var(--grid-column-gap)); }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-justify .elementor-grid-item {
    margin-left: calc(0.5 * var(--grid-column-gap));
    margin-right: calc(0.5 * var(--grid-column-gap)); }

.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid {
  display: inline-block; }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid-item {
    margin-left: 0;
    margin-right: 0; }

@media (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
  .e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-tablet-right,
  .e--ua-appleWebkit .elementor-share-buttons-tablet--align-right {
    --justify-content: var(--flex-right, flex-end); }
  .e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-tablet-center,
  .e--ua-appleWebkit .elementor-share-buttons-tablet--align-center {
    --justify-content: center; }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-justify .elementor-grid {
    width: auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: var(--justify-content, space-between);
    margin-left: calc(-0.5 * var(--grid-column-gap));
    margin-right: calc(-0.5 * var(--grid-column-gap)); }
    .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-justify .elementor-grid-item {
      margin-left: calc(0.5 * var(--grid-column-gap));
      margin-right: calc(0.5 * var(--grid-column-gap)); }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid {
    display: inline-block; }
    .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid-item {
      margin-left: 0;
      margin-right: 0; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-mobile-right,
  .e--ua-appleWebkit .elementor-share-buttons-mobile--align-right {
    --justify-content: var(--flex-right, flex-end); }
  .e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-mobile-center,
  .e--ua-appleWebkit .elementor-share-buttons-mobile--align-center {
    --justify-content: center; }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-justify .elementor-grid {
    width: auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: var(--justify-content, space-between);
    margin-left: calc(-0.5 * var(--grid-column-gap));
    margin-right: calc(-0.5 * var(--grid-column-gap)); }
    .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-justify .elementor-grid-item {
      margin-left: calc(0.5 * var(--grid-column-gap));
      margin-right: calc(0.5 * var(--grid-column-gap)); }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid {
    display: inline-block; }
    .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid-item {
      margin-left: 0;
      margin-right: 0; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor .elementor-hidden-mobile {
    display: none; }
  .elementor .elementor-hidden-phone {
    display: none; } }

@media (min-width: ELEMENTOR_SCREEN_MOBILE_EXTRA_MIN) and (max-width: ELEMENTOR_SCREEN_MOBILE_EXTRA_MAX) {
  .elementor .elementor-hidden-mobile_extra {
    display: none; } }

@media (min-width: ELEMENTOR_SCREEN_TABLET_MIN) and (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
  .elementor .elementor-hidden-tablet {
    display: none; } }

@media (min-width: ELEMENTOR_SCREEN_TABLET_EXTRA_MIN) and (max-width: ELEMENTOR_SCREEN_TABLET_EXTRA_MAX) {
  .elementor .elementor-hidden-tablet_extra {
    display: none; } }

@media (min-width: ELEMENTOR_SCREEN_LAPTOP_MIN) and (max-width: ELEMENTOR_SCREEN_LAPTOP_MAX) {
  .elementor .elementor-hidden-laptop {
    display: none; } }

@media (min-width: ELEMENTOR_SCREEN_DESKTOP_MIN) and (max-width: ELEMENTOR_SCREEN_DESKTOP_MAX) {
  .elementor .elementor-hidden-desktop {
    display: none; } }

@media (min-width: ELEMENTOR_SCREEN_WIDESCREEN_MIN) {
  .elementor .elementor-hidden-widescreen {
    display: none; } }

.elementor-widget-text-path {
  font-size: 20px;
  text-align: var(--alignment, left); }
  .elementor-widget-text-path svg {
    width: var(--width);
    max-width: 100%;
    height: auto;
    overflow: visible;
    word-spacing: var(--word-spacing);
    transform: rotate(var(--rotate, 0)) scaleX(var(--scale-x, 1)) scaleY(var(--scale-y, 1)); }
    .elementor-widget-text-path svg path {
      vector-effect: non-scaling-stroke;
      /* Prevent stroke size scaling when resizing the SVG. */
      fill: var(--path-fill, transparent);
      stroke: var(--stroke-color, transparent);
      stroke-width: var(--stroke-width, 1px);
      transition: var(--stroke-transition) stroke, var(--stroke-transition) fill; }
    .elementor-widget-text-path svg:hover path {
      --path-fill: var( --path-fill-hover );
      --stroke-color: var( --stroke-color-hover );
      --stroke-width: var( --stroke-width-hover ); }
    .elementor-widget-text-path svg text {
      --fill: var( --text-color );
      fill: var(--fill);
      direction: var(--direction, ltr);
      transition: var(--transition) stroke, var(--transition) stroke-width, var(--transition) fill; }
      .elementor-widget-text-path svg text:hover {
        --color: var( --text-color-hover, var( --text-color ) );
        --fill: var( --color );
        color: var(--color); }

.elementor-accordion {
  text-align: left; }
  .elementor-accordion .elementor-accordion-item {
    border: 1px solid #D4D4D4; }
    .elementor-accordion .elementor-accordion-item + .elementor-accordion-item {
      border-top: none; }
  .elementor-accordion .elementor-tab-title {
    margin: 0;
    padding: 15px 20px;
    font-weight: bold;
    line-height: 1;
    cursor: pointer;
    outline: none; }
    .elementor-accordion .elementor-tab-title .elementor-accordion-icon {
      display: inline-block;
      width: 1.5em; }
      .elementor-accordion .elementor-tab-title .elementor-accordion-icon svg {
        width: 1em;
        height: 1em; }
      .elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-right {
        float: right;
        text-align: right; }
      .elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-left {
        float: left;
        text-align: left; }
      .elementor-accordion .elementor-tab-title .elementor-accordion-icon .elementor-accordion-icon-closed {
        display: block; }
      .elementor-accordion .elementor-tab-title .elementor-accordion-icon .elementor-accordion-icon-opened {
        display: none; }
    .elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-closed {
      display: none; }
    .elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-opened {
      display: block; }
  .elementor-accordion .elementor-tab-content {
    display: none;
    padding: 15px 20px;
    border-top: 1px solid #D4D4D4; }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-accordion .elementor-tab-title {
    padding: 12px 15px; }
    .elementor-accordion .elementor-tab-title .elementor-accordion-icon {
      width: 1.2em; }
  .elementor-accordion .elementor-tab-content {
    padding: 7px 15px; } }

.elementor-alert {
  padding: 15px;
  border-left: 5px solid transparent;
  position: relative;
  text-align: left; }
  .elementor-alert .elementor-alert-title {
    display: block;
    font-weight: bold; }
  .elementor-alert .elementor-alert-description {
    font-size: 13px; }
  .elementor-alert button.elementor-alert-dismiss {
    position: absolute;
    right: 10px;
    top: 10px;
    padding: 3px;
    font-size: 20px;
    line-height: 1;
    background: transparent;
    color: inherit;
    border: none;
    cursor: pointer; }
  .elementor-alert.elementor-alert-info {
    color: #31708f;
    background-color: #d9edf7;
    border-color: #bcdff1; }
  .elementor-alert.elementor-alert-success {
    color: #3c763d;
    background-color: #dff0d8;
    border-color: #cae6be; }
  .elementor-alert.elementor-alert-warning {
    color: #8a6d3b;
    background-color: #fcf8e3;
    border-color: #f9f0c3; }
  .elementor-alert.elementor-alert-danger {
    color: #a94442;
    background-color: #f2dede;
    border-color: #e8c4c4; }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-alert {
    padding: 10px; }
    .elementor-alert button.elementor-alert-dismiss {
      right: 7px;
      top: 7px; } }

.elementor-counter .elementor-counter-number-wrapper {
  display: flex;
  font-size: 69px;
  font-weight: 600;
  line-height: 1; }

.elementor-counter .elementor-counter-number-prefix, .elementor-counter .elementor-counter-number-suffix {
  flex-grow: 1;
  white-space: pre-wrap; }

.elementor-counter .elementor-counter-number-prefix {
  text-align: right; }

.elementor-counter .elementor-counter-number-suffix {
  text-align: left; }

.elementor-counter .elementor-counter-title {
  text-align: center;
  font-size: 19px;
  font-weight: 400;
  line-height: 2.5; }

.elementor-widget-divider {
  --divider-border-style: none;
  --divider-border-width: 1px;
  --divider-color: #2C2C2C;
  --divider-icon-size: 20px;
  --divider-element-spacing: 10px;
  --divider-pattern-height: 24px;
  --divider-pattern-size: 20px;
  --divider-pattern-url: none;
  --divider-pattern-repeat: repeat-x; }
  .elementor-widget-divider .elementor-divider {
    display: flex; }
    .elementor-widget-divider .elementor-divider__text {
      font-size: 15px;
      line-height: 1;
      max-width: 95%; }
    .elementor-widget-divider .elementor-divider__element {
      margin: 0 var(--divider-element-spacing);
      flex-shrink: 0; }
  .elementor-widget-divider .elementor-icon {
    font-size: var(--divider-icon-size); }
  .elementor-widget-divider .elementor-divider-separator {
    display: flex;
    margin: 0;
    direction: ltr; }
  .elementor-widget-divider--view-line_text .elementor-divider-separator, .elementor-widget-divider--view-line_icon .elementor-divider-separator {
    align-items: center; }
    .elementor-widget-divider--view-line_text .elementor-divider-separator:before, .elementor-widget-divider--view-line_text .elementor-divider-separator:after, .elementor-widget-divider--view-line_icon .elementor-divider-separator:before, .elementor-widget-divider--view-line_icon .elementor-divider-separator:after {
      display: block;
      content: '';
      border-bottom: 0;
      flex-grow: 1;
      border-top: var(--divider-border-width) var(--divider-border-style) var(--divider-color); }
  .elementor-widget-divider--element-align-left .elementor-divider .elementor-divider-separator > .elementor-divider__svg:first-of-type {
    flex-grow: 0;
    flex-shrink: 100; }
  .elementor-widget-divider--element-align-left .elementor-divider-separator:before {
    content: none; }
  .elementor-widget-divider--element-align-left .elementor-divider__element {
    margin-left: 0; }
  .elementor-widget-divider--element-align-right .elementor-divider .elementor-divider-separator > .elementor-divider__svg:last-of-type {
    flex-grow: 0;
    flex-shrink: 100; }
  .elementor-widget-divider--element-align-right .elementor-divider-separator:after {
    content: none; }
  .elementor-widget-divider--element-align-right .elementor-divider__element {
    margin-right: 0; }
  .elementor-widget-divider:not(.elementor-widget-divider--view-line_text):not(.elementor-widget-divider--view-line_icon) .elementor-divider-separator {
    border-top: var(--divider-border-width) var(--divider-border-style) var(--divider-color); }
  .elementor-widget-divider--separator-type-pattern {
    --divider-border-style: none; }
    .elementor-widget-divider--separator-type-pattern.elementor-widget-divider--view-line .elementor-divider-separator,
    .elementor-widget-divider--separator-type-pattern:not([class*=elementor-widget-divider--view]) .elementor-divider-separator,
    .elementor-widget-divider--separator-type-pattern:not(.elementor-widget-divider--view-line) .elementor-divider-separator:before,
    .elementor-widget-divider--separator-type-pattern:not(.elementor-widget-divider--view-line) .elementor-divider-separator:after {
      width: 100%;
      min-height: var(--divider-pattern-height);
      -webkit-mask-size: var(--divider-pattern-size) 100%;
      mask-size: var(--divider-pattern-size) 100%;
      -webkit-mask-repeat: var(--divider-pattern-repeat);
      mask-repeat: var(--divider-pattern-repeat);
      background-color: var(--divider-color);
      -webkit-mask-image: var(--divider-pattern-url);
      mask-image: var(--divider-pattern-url); }
  .elementor-widget-divider--no-spacing {
    --divider-pattern-size: auto; }
  .elementor-widget-divider--bg-round {
    --divider-pattern-repeat: round; }

.rtl .elementor-widget-divider .elementor-divider__text {
  direction: rtl; }

.elementor-image-gallery .gallery-item {
  display: inline-block;
  text-align: center;
  vertical-align: top;
  width: 100%;
  max-width: 100%;
  margin: 0 auto; }
  .elementor-image-gallery .gallery-item img {
    margin: 0 auto; }
  .elementor-image-gallery .gallery-item .gallery-caption {
    margin: 0; }

.elementor-image-gallery figure img {
  display: block; }

.elementor-image-gallery figure figcaption {
  width: 100%; }

.gallery-spacing-custom .elementor-image-gallery .gallery-icon {
  padding: 0; }

@media (min-width: ELEMENTOR_SCREEN_MOBILE_NEXT) {
  .elementor-image-gallery .gallery-columns-2 .gallery-item {
    max-width: 50%; }
  .elementor-image-gallery .gallery-columns-3 .gallery-item {
    max-width: 33.33%; }
  .elementor-image-gallery .gallery-columns-4 .gallery-item {
    max-width: 25%; }
  .elementor-image-gallery .gallery-columns-5 .gallery-item {
    max-width: 20%; }
  .elementor-image-gallery .gallery-columns-6 .gallery-item {
    max-width: 16.666%; }
  .elementor-image-gallery .gallery-columns-7 .gallery-item {
    max-width: 14.28%; }
  .elementor-image-gallery .gallery-columns-8 .gallery-item {
    max-width: 12.5%; }
  .elementor-image-gallery .gallery-columns-9 .gallery-item {
    max-width: 11.11%; }
  .elementor-image-gallery .gallery-columns-10 .gallery-item {
    max-width: 10%; } }

@media (min-width: 480px) and (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-image-gallery .gallery.gallery-columns-2 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-3 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-4 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-5 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-6 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-7 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-8 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-9 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-10 .gallery-item {
    max-width: 50%; } }

@media (max-width: 479px) {
  .elementor-image-gallery .gallery.gallery-columns-2 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-3 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-4 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-5 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-6 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-7 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-8 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-9 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-10 .gallery-item {
    max-width: 100%; } }

.elementor-widget-google_maps .elementor-widget-container {
  overflow: hidden; }

.elementor-widget-google_maps iframe {
  height: 300px; }

.elementor-heading-title {
  padding: 0;
  margin: 0;
  line-height: 1; }

.elementor-widget-heading .elementor-heading-title[class*="elementor-size-"] > a {
  color: inherit;
  font-size: inherit;
  line-height: inherit; }

.elementor-widget-heading .elementor-heading-title.elementor-size-small {
  font-size: 15px; }

.elementor-widget-heading .elementor-heading-title.elementor-size-medium {
  font-size: 19px; }

.elementor-widget-heading .elementor-heading-title.elementor-size-large {
  font-size: 29px; }

.elementor-widget-heading .elementor-heading-title.elementor-size-xl {
  font-size: 39px; }

.elementor-widget-heading .elementor-heading-title.elementor-size-xxl {
  font-size: 59px; }

@media (min-width: ELEMENTOR_SCREEN_MOBILE_NEXT) {
  .elementor-widget-icon-box.elementor-position-left .elementor-icon-box-wrapper, .elementor-widget-icon-box.elementor-position-right .elementor-icon-box-wrapper {
    display: flex; }
  .elementor-widget-icon-box.elementor-position-left .elementor-icon-box-icon, .elementor-widget-icon-box.elementor-position-right .elementor-icon-box-icon {
    display: inline-flex;
    flex: 0 0 auto; }
  .elementor-widget-icon-box.elementor-position-right .elementor-icon-box-wrapper {
    text-align: right;
    flex-direction: row-reverse; }
  .elementor-widget-icon-box.elementor-position-left .elementor-icon-box-wrapper {
    text-align: left;
    flex-direction: row; }
  .elementor-widget-icon-box.elementor-position-top .elementor-icon-box-img {
    margin: auto; }
  .elementor-widget-icon-box.elementor-vertical-align-top .elementor-icon-box-wrapper {
    align-items: flex-start; }
  .elementor-widget-icon-box.elementor-vertical-align-middle .elementor-icon-box-wrapper {
    align-items: center; }
  .elementor-widget-icon-box.elementor-vertical-align-bottom .elementor-icon-box-wrapper {
    align-items: flex-end; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-widget-icon-box .elementor-icon-box-icon {
    margin-left: auto !important;
    margin-right: auto !important;
    margin-bottom: 15px; } }

.elementor-widget-icon-box .elementor-icon-box-wrapper {
  text-align: center; }

.elementor-widget-icon-box .elementor-icon-box-title a {
  color: inherit; }

.elementor-widget-icon-box .elementor-icon-box-content {
  flex-grow: 1; }

.elementor-widget-icon-box .elementor-icon-box-description {
  margin: 0; }

.elementor-widget.elementor-icon-list--layout-inline .elementor-widget-container {
  overflow: hidden; }

.elementor-widget .elementor-icon-list-items.elementor-inline-items {
  margin-right: -8px;
  margin-left: -8px; }
  .elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item {
    margin-right: 8px;
    margin-left: 8px; }
    .elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after {
      width: auto;
      left: auto;
      right: auto;
      position: relative;
      height: 100%;
      top: 50%;
      transform: translateY(-50%);
      border-top: 0;
      border-bottom: 0;
      border-right: 0;
      border-left-width: 1px;
      border-style: solid;
      right: -8px; }

.elementor-widget .elementor-icon-list-items {
  list-style-type: none;
  margin: 0;
  padding: 0; }

.elementor-widget .elementor-icon-list-item {
  margin: 0;
  padding: 0;
  position: relative; }
  .elementor-widget .elementor-icon-list-item:after {
    position: absolute;
    bottom: 0;
    width: 100%; }
  .elementor-widget .elementor-icon-list-item, .elementor-widget .elementor-icon-list-item a {
    display: flex;
    align-items: center;
    font-size: inherit; }

.elementor-widget .elementor-icon-list-icon + .elementor-icon-list-text {
  align-self: center;
  padding-left: 5px; }

.elementor-widget .elementor-icon-list-icon {
  display: flex; }
  .elementor-widget .elementor-icon-list-icon svg {
    width: var(--e-icon-list-icon-size, 1em);
    height: var(--e-icon-list-icon-size, 1em); }
  .elementor-widget .elementor-icon-list-icon i {
    width: 1.25em;
    font-size: var(--e-icon-list-icon-size); }

.elementor-widget.elementor-widget-icon-list .elementor-icon-list-icon {
  text-align: var(--e-icon-list-icon-align); }
  .elementor-widget.elementor-widget-icon-list .elementor-icon-list-icon svg {
    margin: var(--e-icon-list-icon-margin, 0 calc(var(--e-icon-list-icon-size, 1em) * 0.25) 0 0); }

.elementor-widget.elementor-list-item-link-full_width a {
  width: 100%; }

.elementor-widget.elementor-align-center .elementor-icon-list-item, .elementor-widget.elementor-align-center .elementor-icon-list-item a {
  justify-content: center; }

.elementor-widget.elementor-align-center .elementor-icon-list-item:after {
  margin: auto; }

.elementor-widget.elementor-align-center .elementor-inline-items {
  justify-content: center; }

.elementor-widget.elementor-align-left .elementor-icon-list-item, .elementor-widget.elementor-align-left .elementor-icon-list-item a {
  justify-content: flex-start;
  text-align: left; }

.elementor-widget.elementor-align-left .elementor-inline-items {
  justify-content: flex-start; }

.elementor-widget.elementor-align-right .elementor-icon-list-item, .elementor-widget.elementor-align-right .elementor-icon-list-item a {
  justify-content: flex-end;
  text-align: right; }

.elementor-widget.elementor-align-right .elementor-icon-list-items {
  justify-content: flex-end; }

.elementor-widget:not(.elementor-align-right) .elementor-icon-list-item:after {
  left: 0; }

.elementor-widget:not(.elementor-align-left) .elementor-icon-list-item:after {
  right: 0; }

@media (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
  .elementor-widget.elementor-tablet-align-center .elementor-icon-list-items {
    justify-content: center; }
  .elementor-widget.elementor-tablet-align-center .elementor-icon-list-item, .elementor-widget.elementor-tablet-align-center .elementor-icon-list-item a {
    justify-content: center; }
  .elementor-widget.elementor-tablet-align-center .elementor-icon-list-item:after {
    margin: auto; }
  .elementor-widget.elementor-tablet-align-left .elementor-icon-list-items {
    justify-content: flex-start; }
  .elementor-widget.elementor-tablet-align-left .elementor-icon-list-item, .elementor-widget.elementor-tablet-align-left .elementor-icon-list-item a {
    justify-content: flex-start;
    text-align: left; }
  .elementor-widget.elementor-tablet-align-right .elementor-icon-list-items {
    justify-content: flex-end; }
  .elementor-widget.elementor-tablet-align-right .elementor-icon-list-item, .elementor-widget.elementor-tablet-align-right .elementor-icon-list-item a {
    justify-content: flex-end;
    text-align: right; }
  .elementor-widget:not(.elementor-tablet-align-right) .elementor-icon-list-item:after {
    left: 0; }
  .elementor-widget:not(.elementor-tablet-align-left) .elementor-icon-list-item:after {
    right: 0; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-widget.elementor-mobile-align-center .elementor-icon-list-items {
    justify-content: center; }
  .elementor-widget.elementor-mobile-align-center .elementor-icon-list-item, .elementor-widget.elementor-mobile-align-center .elementor-icon-list-item a {
    justify-content: center; }
  .elementor-widget.elementor-mobile-align-center .elementor-icon-list-item:after {
    margin: auto; }
  .elementor-widget.elementor-mobile-align-left .elementor-icon-list-items {
    justify-content: flex-start; }
  .elementor-widget.elementor-mobile-align-left .elementor-icon-list-item, .elementor-widget.elementor-mobile-align-left .elementor-icon-list-item a {
    justify-content: flex-start;
    text-align: left; }
  .elementor-widget.elementor-mobile-align-right .elementor-icon-list-items {
    justify-content: flex-end; }
  .elementor-widget.elementor-mobile-align-right .elementor-icon-list-item, .elementor-widget.elementor-mobile-align-right .elementor-icon-list-item a {
    justify-content: flex-end;
    text-align: right; }
  .elementor-widget:not(.elementor-mobile-align-right) .elementor-icon-list-item:after {
    left: 0; }
  .elementor-widget:not(.elementor-mobile-align-left) .elementor-icon-list-item:after {
    right: 0; } }

.elementor-widget-image {
  text-align: center; }
  .elementor-widget-image a {
    display: inline-block; }
    .elementor-widget-image a img[src$=".svg"] {
      width: 48px; }
  .elementor-widget-image img {
    vertical-align: middle;
    display: inline-block; }

.elementor-widget-image-box .elementor-image-box-content {
  width: 100%; }

@media (min-width: ELEMENTOR_SCREEN_MOBILE_NEXT) {
  .elementor-widget-image-box.elementor-position-left .elementor-image-box-wrapper, .elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper {
    display: flex; }
  .elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper {
    text-align: right;
    flex-direction: row-reverse; }
  .elementor-widget-image-box.elementor-position-left .elementor-image-box-wrapper {
    text-align: left;
    flex-direction: row; }
  .elementor-widget-image-box.elementor-position-top .elementor-image-box-img {
    margin: auto; }
  .elementor-widget-image-box.elementor-vertical-align-top .elementor-image-box-wrapper {
    align-items: flex-start; }
  .elementor-widget-image-box.elementor-vertical-align-middle .elementor-image-box-wrapper {
    align-items: center; }
  .elementor-widget-image-box.elementor-vertical-align-bottom .elementor-image-box-wrapper {
    align-items: flex-end; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-widget-image-box .elementor-image-box-img {
    margin-left: auto !important;
    margin-right: auto !important;
    margin-bottom: 15px; } }

.elementor-widget-image-box .elementor-image-box-img {
  display: inline-block; }

.elementor-widget-image-box .elementor-image-box-title a {
  color: inherit; }

.elementor-widget-image-box .elementor-image-box-wrapper {
  text-align: center; }

.elementor-widget-image-box .elementor-image-box-description {
  margin: 0; }

.elementor-widget-image-carousel .swiper-container {
  position: static; }
  .elementor-widget-image-carousel .swiper-container .swiper-slide figure {
    line-height: inherit; }

.elementor-widget-image-carousel .swiper-slide {
  text-align: center; }

.elementor-image-carousel-wrapper:not(.swiper-container-initialized) .swiper-slide {
  max-width: calc(100% / var(--e-image-carousel-slides-to-show, 3)); }

body.elementor-page .elementor-widget-menu-anchor {
  margin-bottom: 0; }

.elementor-widget-progress {
  text-align: left; }

.elementor-progress-wrapper {
  position: relative;
  background-color: #eeeeee;
  color: #ffffff;
  height: 100%;
  border-radius: 2px; }

.elementor-progress-bar {
  display: flex;
  background-color: #818a91;
  width: 0;
  font-size: 11px;
  height: 30px;
  line-height: 30px;
  border-radius: 2px;
  transition: width 1s ease-in-out; }

.elementor-progress-text {
  flex-grow: 1;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  padding-left: 15px; }

.elementor-progress-percentage {
  padding-right: 15px; }

.elementor-widget-progress .elementor-progress-wrapper.progress-info .elementor-progress-bar {
  background-color: #5bc0de; }

.elementor-widget-progress .elementor-progress-wrapper.progress-success .elementor-progress-bar {
  background-color: #5cb85c; }

.elementor-widget-progress .elementor-progress-wrapper.progress-warning .elementor-progress-bar {
  background-color: #f0ad4e; }

.elementor-widget-progress .elementor-progress-wrapper.progress-danger .elementor-progress-bar {
  background-color: #d9534f; }

.elementor-progress .elementor-title {
  display: block; }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-progress-text {
    padding-left: 10px; } }

.elementor-widget-social-icons {
  /*TODO: This Grid-0 needs to be removed after PRO is Updated */ }
  .elementor-widget-social-icons.elementor-grid-0 .elementor-widget-container, .elementor-widget-social-icons.elementor-grid-tablet-0 .elementor-widget-container, .elementor-widget-social-icons.elementor-grid-mobile-0 .elementor-widget-container {
    line-height: 1;
    font-size: 0; }
  .elementor-widget-social-icons:not(.elementor-grid-0):not(.elementor-grid-tablet-0):not(.elementor-grid-mobile-0) .elementor-grid {
    display: inline-grid; }
  .elementor-widget-social-icons .elementor-grid {
    grid-column-gap: var(--grid-column-gap, 5px);
    grid-row-gap: var(--grid-row-gap, 5px);
    grid-template-columns: var(--grid-template-columns);
    justify-content: var(--justify-content, center);
    justify-items: var(--justify-content, center); }

.elementor-icon.elementor-social-icon {
  font-size: var(--icon-size, 25px);
  line-height: var(--icon-size, 25px);
  width: calc(var(--icon-size, 25px) + (2 * var(--icon-padding, 0.5em)));
  height: calc(var(--icon-size, 25px) + (2 * var(--icon-padding, 0.5em))); }

.elementor-social-icon {
  --e-social-icon-icon-color: #fff;
  display: inline-flex;
  background-color: #818a91;
  align-items: center;
  justify-content: center;
  text-align: center;
  cursor: pointer; }
  .elementor-social-icon i {
    color: var(--e-social-icon-icon-color); }
  .elementor-social-icon svg {
    fill: var(--e-social-icon-icon-color); }
  .elementor-social-icon:last-child {
    margin: 0; }
  .elementor-social-icon:hover {
    opacity: .9;
    color: white; }
  .elementor-social-icon-android {
    background-color: #A4C639; }
  .elementor-social-icon-apple {
    background-color: #999999; }
  .elementor-social-icon-behance {
    background-color: #1769ff; }
  .elementor-social-icon-bitbucket {
    background-color: #205081; }
  .elementor-social-icon-codepen {
    background-color: #000000; }
  .elementor-social-icon-delicious {
    background-color: #3399ff; }
  .elementor-social-icon-deviantart {
    background-color: #05cc47; }
  .elementor-social-icon-digg {
    background-color: #005be2; }
  .elementor-social-icon-dribbble {
    background-color: #ea4c89; }
  .elementor-social-icon-elementor {
    background-color: #D30C5C; }
  .elementor-social-icon-envelope {
    background-color: #ea4335; }
  .elementor-social-icon-facebook, .elementor-social-icon-facebook-f {
    background-color: #3b5998; }
  .elementor-social-icon-flickr {
    background-color: #0063dc; }
  .elementor-social-icon-foursquare {
    background-color: #2d5be3; }
  .elementor-social-icon-freecodecamp, .elementor-social-icon-free-code-camp {
    background-color: #006400; }
  .elementor-social-icon-github {
    background-color: #333333; }
  .elementor-social-icon-gitlab {
    background-color: #e24329; }
  .elementor-social-icon-globe {
    background-color: #818a91; }
  .elementor-social-icon-google-plus, .elementor-social-icon-google-plus-g {
    background-color: #dd4b39; }
  .elementor-social-icon-houzz {
    background-color: #7ac142; }
  .elementor-social-icon-instagram {
    background-color: #262626; }
  .elementor-social-icon-jsfiddle {
    background-color: #487AA2; }
  .elementor-social-icon-link {
    background-color: #818a91; }
  .elementor-social-icon-linkedin, .elementor-social-icon-linkedin-in {
    background-color: #0077b5; }
  .elementor-social-icon-medium {
    background-color: #00ab6b; }
  .elementor-social-icon-meetup {
    background-color: #ec1c40; }
  .elementor-social-icon-mixcloud {
    background-color: #273a4b; }
  .elementor-social-icon-odnoklassniki {
    background-color: #F4731C; }
  .elementor-social-icon-pinterest {
    background-color: #bd081c; }
  .elementor-social-icon-product-hunt {
    background-color: #da552f; }
  .elementor-social-icon-reddit {
    background-color: #ff4500; }
  .elementor-social-icon-rss {
    background-color: #f26522; }
  .elementor-social-icon-shopping-cart {
    background-color: #4CAF50; }
  .elementor-social-icon-skype {
    background-color: #00AFF0; }
  .elementor-social-icon-slideshare {
    background-color: #0077b5; }
  .elementor-social-icon-snapchat {
    background-color: #fffc00; }
  .elementor-social-icon-soundcloud {
    background-color: #ff8800; }
  .elementor-social-icon-spotify {
    background-color: #2ebd59; }
  .elementor-social-icon-stack-overflow {
    background-color: #fe7a15; }
  .elementor-social-icon-steam {
    background-color: #00adee; }
  .elementor-social-icon-stumbleupon {
    background-color: #EB4924; }
  .elementor-social-icon-telegram {
    background-color: #2CA5E0; }
  .elementor-social-icon-thumb-tack {
    background-color: #1aa1d8; }
  .elementor-social-icon-tripadvisor {
    background-color: #589442; }
  .elementor-social-icon-tumblr {
    background-color: #35465c; }
  .elementor-social-icon-twitch {
    background-color: #6441A5; }
  .elementor-social-icon-twitter {
    background-color: #1DA1F2; }
  .elementor-social-icon-viber {
    background-color: #665cac; }
  .elementor-social-icon-vimeo {
    background-color: #1ab7ea; }
  .elementor-social-icon-vk {
    background-color: #45668e; }
  .elementor-social-icon-weibo {
    background-color: #DD2430; }
  .elementor-social-icon-weixin {
    background-color: #31A918; }
  .elementor-social-icon-whatsapp {
    background-color: #25d366; }
  .elementor-social-icon-wordpress {
    background-color: #21759b; }
  .elementor-social-icon-xing {
    background-color: #026466; }
  .elementor-social-icon-yelp {
    background-color: #af0606; }
  .elementor-social-icon-youtube {
    background-color: #cd201f; }
  .elementor-social-icon-500px {
    background-color: #0099e5; }

.elementor-shape-rounded .elementor-icon.elementor-social-icon {
  border-radius: 10%; }

.elementor-shape-circle .elementor-icon.elementor-social-icon {
  border-radius: 50%; }

.elementor-star-rating {
  color: #CCD6DF;
  font-family: eicons;
  display: inline-block; }
  .elementor-star-rating i {
    display: inline-block;
    position: relative;
    font-style: normal;
    cursor: default; }
    .elementor-star-rating i:before {
      content: '\e934';
      display: block;
      font-size: inherit;
      font-family: inherit;
      position: absolute;
      overflow: hidden;
      color: #f0ad4e;
      top: 0;
      left: 0; }
  .elementor-star-rating .elementor-star-empty:before {
    content: none; }
  .elementor-star-rating .elementor-star-1:before {
    width: 10%; }
  .elementor-star-rating .elementor-star-2:before {
    width: 20%; }
  .elementor-star-rating .elementor-star-3:before {
    width: 30%; }
  .elementor-star-rating .elementor-star-4:before {
    width: 40%; }
  .elementor-star-rating .elementor-star-5:before {
    width: 50%; }
  .elementor-star-rating .elementor-star-6:before {
    width: 60%; }
  .elementor-star-rating .elementor-star-7:before {
    width: 70%; }
  .elementor-star-rating .elementor-star-8:before {
    width: 80%; }
  .elementor-star-rating .elementor-star-9:before {
    width: 90%; }
  .elementor-star-rating__wrapper {
    display: flex;
    align-items: center; }
  .elementor-star-rating__title {
    margin-right: 10px; }

.elementor-star-rating--align-right .elementor-star-rating__wrapper {
  text-align: right;
  justify-content: flex-end; }

.elementor-star-rating--align-left .elementor-star-rating__wrapper {
  text-align: left;
  justify-content: flex-start; }

.elementor-star-rating--align-center .elementor-star-rating__wrapper {
  text-align: center;
  justify-content: center; }

.elementor-star-rating--align-justify .elementor-star-rating__title {
  margin-right: auto; }

@media (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
  .elementor-star-rating-tablet--align-right .elementor-star-rating__wrapper {
    text-align: right;
    justify-content: flex-end; }
  .elementor-star-rating-tablet--align-left .elementor-star-rating__wrapper {
    text-align: left;
    justify-content: flex-start; }
  .elementor-star-rating-tablet--align-center .elementor-star-rating__wrapper {
    text-align: center;
    justify-content: center; }
  .elementor-star-rating-tablet--align-justify .elementor-star-rating__title {
    margin-right: auto; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-star-rating-mobile--align-right .elementor-star-rating__wrapper {
    text-align: right;
    justify-content: flex-end; }
  .elementor-star-rating-mobile--align-left .elementor-star-rating__wrapper {
    text-align: left;
    justify-content: flex-start; }
  .elementor-star-rating-mobile--align-center .elementor-star-rating__wrapper {
    text-align: center;
    justify-content: center; }
  .elementor-star-rating-mobile--align-justify .elementor-star-rating__title {
    margin-right: auto; } }

.last-star {
  letter-spacing: 0; }

.elementor--star-style-star_unicode .elementor-star-rating {
  font-family: 'Arial', 'Helvetica', sans-serif; }
  .elementor--star-style-star_unicode .elementor-star-rating i:not(.elementor-star-empty):before {
    content: '\002605'; }

.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-wrapper {
  width: 25%;
  flex-shrink: 0; }

.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active {
  border-right-style: none; }
  .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:before, .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:after {
    height: 999em;
    width: 0;
    right: 0;
    border-right-style: solid; }
  .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:before {
    top: 0;
    transform: translateY(-100%); }
  .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:after {
    top: 100%; }

.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title {
  display: table-cell; }
  .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active {
    border-bottom-style: none; }
    .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:before, .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:after {
      bottom: 0;
      height: 0;
      width: 999em;
      border-bottom-style: solid; }
    .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:before {
      right: 100%; }
    .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:after {
      left: 100%; }

.elementor-widget-tabs .elementor-tab-title,
.elementor-widget-tabs .elementor-tab-title:before,
.elementor-widget-tabs .elementor-tab-title:after,
.elementor-widget-tabs .elementor-tab-content,
.elementor-widget-tabs .elementor-tabs-content-wrapper {
  border: 1px none #D4D4D4; }

.elementor-widget-tabs .elementor-tabs {
  text-align: left; }

.elementor-widget-tabs .elementor-tabs-wrapper {
  overflow: hidden; }

.elementor-widget-tabs .elementor-tab-title {
  cursor: pointer;
  outline: var(--focus-outline, none); }

.elementor-widget-tabs .elementor-tab-desktop-title {
  position: relative;
  padding: 20px 25px;
  font-weight: bold;
  line-height: 1;
  border: solid transparent; }
  .elementor-widget-tabs .elementor-tab-desktop-title.elementor-active {
    border-color: #D4D4D4; }
    .elementor-widget-tabs .elementor-tab-desktop-title.elementor-active:before, .elementor-widget-tabs .elementor-tab-desktop-title.elementor-active:after {
      display: block;
      content: '';
      position: absolute; }

.elementor-widget-tabs .elementor-tab-mobile-title {
  padding: 10px 10px;
  cursor: pointer; }

.elementor-widget-tabs .elementor-tab-content {
  padding: 20px;
  display: none; }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-tabs .elementor-tab-title,
  .elementor-tabs .elementor-tab-content {
    border-style: solid;
    border-bottom-style: none; }
  .elementor-tabs .elementor-tabs-wrapper {
    display: none; }
  .elementor-tabs .elementor-tabs-content-wrapper {
    border-bottom-style: solid; }
  .elementor-tabs .elementor-tab-content {
    padding: 10px; } }

@media (min-width: ELEMENTOR_SCREEN_MOBILE_NEXT) {
  .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs {
    display: flex; }
  .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-wrapper {
    flex-direction: column; }
  .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-content-wrapper {
    flex-grow: 1;
    border-style: solid;
    border-left-style: none; }
  .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-content {
    border-style: solid;
    border-top-style: none; }
  .elementor-widget-tabs.elementor-tabs-alignment-center .elementor-tabs-wrapper, .elementor-widget-tabs.elementor-tabs-alignment-end .elementor-tabs-wrapper, .elementor-widget-tabs.elementor-tabs-alignment-stretch .elementor-tabs-wrapper {
    display: flex; }
  .elementor-widget-tabs.elementor-tabs-alignment-center .elementor-tabs-wrapper {
    justify-content: center; }
  .elementor-widget-tabs.elementor-tabs-alignment-end .elementor-tabs-wrapper {
    justify-content: flex-end; }
  .elementor-widget-tabs.elementor-tabs-alignment-stretch.elementor-tabs-view-horizontal .elementor-tab-title {
    width: 100%; }
  .elementor-widget-tabs.elementor-tabs-alignment-stretch.elementor-tabs-view-vertical .elementor-tab-title {
    height: 100%; }
  .elementor-tabs .elementor-tab-mobile-title {
    display: none; } }

.elementor-testimonial-wrapper {
  overflow: hidden;
  text-align: center; }
  .elementor-testimonial-wrapper .elementor-testimonial-content {
    font-size: 1.3em;
    margin-bottom: 20px; }
  .elementor-testimonial-wrapper .elementor-testimonial-name {
    line-height: 1.5;
    display: block; }
  .elementor-testimonial-wrapper .elementor-testimonial-job {
    font-size: 0.85em;
    display: block; }
  .elementor-testimonial-wrapper .elementor-testimonial-meta {
    width: 100%;
    line-height: 1; }
    .elementor-testimonial-wrapper .elementor-testimonial-meta-inner {
      display: inline-block; }
    .elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-details,
    .elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-image {
      display: table-cell;
      vertical-align: middle; }
    .elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-image img {
      width: 60px;
      height: 60px;
      border-radius: 50%;
      object-fit: cover;
      max-width: none; }
    .elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-aside .elementor-testimonial-image {
      padding-right: 15px; }
    .elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-aside .elementor-testimonial-details {
      text-align: left; }
    .elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-details,
    .elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-image {
      display: block; }
    .elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-image {
      margin-bottom: 20px; }

.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap {
  background-color: #818a91;
  color: #fff; }

.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap {
  color: #818a91;
  border: 3px solid;
  background-color: transparent; }

.elementor-widget-text-editor:not(.elementor-drop-cap-view-default) .elementor-drop-cap {
  margin-top: 8px; }
  .elementor-widget-text-editor:not(.elementor-drop-cap-view-default) .elementor-drop-cap-letter {
    width: 1em;
    height: 1em; }

.elementor-widget-text-editor .elementor-drop-cap {
  float: left;
  text-align: center;
  line-height: 1;
  font-size: 50px; }
  .elementor-widget-text-editor .elementor-drop-cap-letter {
    display: inline-block; }

.elementor-toggle {
  text-align: left; }
  .elementor-toggle .elementor-tab-title {
    font-weight: bold;
    line-height: 1;
    margin: 0;
    padding: 15px;
    border-bottom: 1px solid #D4D4D4;
    cursor: pointer;
    outline: none; }
    .elementor-toggle .elementor-tab-title .elementor-toggle-icon {
      display: inline-block;
      width: 1em; }
      .elementor-toggle .elementor-tab-title .elementor-toggle-icon svg {
        margin-inline-start: -5px;
        width: 1em;
        height: 1em; }
      .elementor-toggle .elementor-tab-title .elementor-toggle-icon.elementor-toggle-icon-right {
        float: right;
        text-align: right; }
      .elementor-toggle .elementor-tab-title .elementor-toggle-icon.elementor-toggle-icon-left {
        float: left;
        text-align: left; }
      .elementor-toggle .elementor-tab-title .elementor-toggle-icon .elementor-toggle-icon-closed {
        display: block; }
      .elementor-toggle .elementor-tab-title .elementor-toggle-icon .elementor-toggle-icon-opened {
        display: none; }
    .elementor-toggle .elementor-tab-title.elementor-active {
      border-bottom: none; }
      .elementor-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon-closed {
        display: none; }
      .elementor-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon-opened {
        display: block; }
  .elementor-toggle .elementor-tab-content {
    padding: 15px;
    border-bottom: 1px solid #D4D4D4;
    display: none; }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-toggle .elementor-tab-title {
    padding: 12px; }
  .elementor-toggle .elementor-tab-content {
    padding: 12px 10px; } }

.elementor-widget-video .elementor-widget-container {
  overflow: hidden;
  transform: translate3d(0, 0, 0); }

.elementor-widget-video .elementor-open-inline .elementor-custom-embed-image-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: 50%; }

.elementor-widget-video .elementor-custom-embed-image-overlay {
  cursor: pointer;
  text-align: center; }
  .elementor-widget-video .elementor-custom-embed-image-overlay:hover .elementor-custom-embed-play i {
    opacity: 1; }
  .elementor-widget-video .elementor-custom-embed-image-overlay img {
    display: block;
    width: 100%; }

.elementor-widget-video .e-hosted-video .elementor-video {
  object-fit: cover; }
assets/css/templates/frontend-rtl.css000064400000416130151327220410013766 0ustar00.dialog-widget-content {
  background-color: #fff;
  position: absolute;
  border-radius: 3px;
  box-shadow: 2px 8px 23px 3px rgba(0, 0, 0, 0.2);
  overflow: hidden; }

.dialog-message {
  font-size: 12px;
  line-height: 1.5;
  box-sizing: border-box; }

.dialog-type-lightbox {
  position: fixed;
  height: 100%;
  width: 100%;
  bottom: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 9999;
  user-select: none; }
  .dialog-type-lightbox .dialog-widget-content {
    margin: auto;
    width: 375px; }
  .dialog-type-lightbox .dialog-header {
    font-size: 15px;
    color: #495157;
    padding: 30px 0 10px;
    font-weight: 500; }
  .dialog-type-lightbox .dialog-message {
    padding: 0 30px 30px;
    min-height: 50px; }
  .dialog-type-lightbox:not(.elementor-popup-modal) .dialog-header,
  .dialog-type-lightbox:not(.elementor-popup-modal) .dialog-message {
    text-align: center; }
  .dialog-type-lightbox .dialog-buttons-wrapper {
    border-top: 1px solid #e6e9ec;
    text-align: center; }
    .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button {
      font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
      width: 50%;
      border: none;
      background: none;
      color: #6d7882;
      font-size: 15px;
      cursor: pointer;
      padding: 13px 0;
      outline: 0; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button:hover {
        background-color: #f4f6f7; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button.dialog-ok {
        color: #b01b1b; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button.dialog-take_over {
        color: #39b54a; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button:active {
        background-color: rgba(230, 233, 236, 0.5); }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button::-moz-focus-inner {
        border: 0; }

.dialog-close-button {
  cursor: pointer;
  position: absolute;
  margin-top: 15px;
  left: 15px;
  font-size: 15px;
  line-height: 1; }
  .dialog-close-button:not(:hover) {
    opacity: .4; }

.dialog-alert-widget .dialog-buttons-wrapper > button {
  width: 100%; }

.dialog-confirm-widget .dialog-button:first-child {
  border-left: 1px solid #e6e9ec; }

.dialog-prevent-scroll {
  overflow: hidden;
  max-height: 100vh; }

@media (min-width: 1024px) {
  body.admin-bar .dialog-lightbox-widget {
    height: calc(100vh - 32px); } }

@media (max-width: 1024px) {
  body.admin-bar .dialog-type-lightbox {
    position: sticky;
    height: 100vh; } }

.elementor-aspect-ratio-219 .elementor-fit-aspect-ratio {
  padding-bottom: 42.8571%; }

.elementor-aspect-ratio-169 .elementor-fit-aspect-ratio {
  padding-bottom: 56.25%; }

.elementor-aspect-ratio-43 .elementor-fit-aspect-ratio {
  padding-bottom: 75%; }

.elementor-aspect-ratio-32 .elementor-fit-aspect-ratio {
  padding-bottom: 66.6666%; }

.elementor-aspect-ratio-11 .elementor-fit-aspect-ratio {
  padding-bottom: 100%; }

.elementor-aspect-ratio-916 .elementor-fit-aspect-ratio {
  padding-bottom: 177.8%; }

.elementor-fit-aspect-ratio {
  position: relative;
  height: 0; }
  .elementor-fit-aspect-ratio iframe {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    border: 0;
    background-color: #000; }
  .elementor-fit-aspect-ratio video {
    width: 100%; }

.flatpickr-calendar {
  width: 280px; }
  .flatpickr-calendar .flatpickr-current-month span.cur-month {
    font-weight: 300; }
  .flatpickr-calendar .dayContainer {
    width: 280px;
    min-width: 280px;
    max-width: 280px; }
  .flatpickr-calendar .flatpickr-days {
    width: 280px; }
  .flatpickr-calendar .flatpickr-day {
    max-width: 37px;
    height: 37px;
    line-height: 37px; }

.elementor-templates-modal .dialog-widget-content {
  font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
  background-color: #f1f3f5;
  width: 100%; }
  @media (max-width: 1439px) {
    .elementor-templates-modal .dialog-widget-content {
      max-width: 990px; } }
  @media (min-width: 1440px) {
    .elementor-templates-modal .dialog-widget-content {
      max-width: 1200px; } }

.elementor-templates-modal .dialog-header {
  padding: 0;
  background-color: #fff;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
  position: relative;
  z-index: 1; }

.elementor-templates-modal .dialog-buttons-wrapper {
  background-color: #fff;
  border: none;
  display: none;
  justify-content: flex-end;
  padding: 5px;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
  position: relative; }
  .elementor-templates-modal .dialog-buttons-wrapper .elementor-button {
    height: 40px;
    margin-right: 5px; }
    .elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success {
      padding: 12px 36px;
      color: #fff;
      width: initial;
      font-size: 15px; }
      .elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success:hover {
        background-color: #39b54a; }

.elementor-templates-modal .dialog-message {
  height: 750px;
  max-height: 85vh;
  overflow: auto;
  padding-top: 25px; }

.elementor-templates-modal .dialog-content {
  height: 100%; }

.elementor-templates-modal .dialog-loading {
  display: none; }

.elementor-templates-modal__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 50px; }
  .elementor-templates-modal__header__logo {
    line-height: 1;
    text-transform: uppercase;
    font-weight: bold;
    cursor: pointer; }
    .elementor-templates-modal__header__logo-area {
      text-align: right;
      padding-right: 15px; }
      .elementor-templates-modal__header__logo-area > * {
        display: flex;
        align-items: center; }
    .elementor-templates-modal__header__logo__icon-wrapper {
      margin-left: 10px;
      font-size: 12px; }
    .elementor-templates-modal__header__logo__title {
      padding-top: 2px; }
  .elementor-templates-modal__header__items-area {
    display: flex;
    flex-direction: row-reverse; }
  .elementor-templates-modal__header__item {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: content-box; }
    .elementor-templates-modal__header__item > i {
      font-size: 20px;
      transition: all 0.3s;
      cursor: pointer; }
      .elementor-templates-modal__header__item > i:not(:hover) {
        color: #a4afb7; }
  .elementor-templates-modal__header__close--normal {
    width: 47px;
    border-right: 1px solid #e6e9ec; }
    .elementor-templates-modal__header__close--normal i {
      font-size: 18px; }
  .elementor-templates-modal__header__close--skip {
    padding: 10px;
    padding-right: 20px;
    margin-left: 10px;
    color: #fff;
    background-color: #a4afb7;
    font-size: 11px;
    font-weight: normal;
    line-height: 1;
    text-transform: uppercase;
    border-radius: 2px;
    cursor: pointer; }
    .elementor-templates-modal__header__close--skip > i {
      font-size: inherit;
      padding-right: 10px;
      margin-right: 15px;
      border-right: 1px solid; }
      .elementor-templates-modal__header__close--skip > i:not(:hover) {
        color: #fff; }

.elementor-templates-modal__sidebar {
  flex-shrink: 0;
  width: 25%;
  background-color: rgba(255, 255, 255, 0.3); }

.elementor-templates-modal__content {
  flex-grow: 1;
  box-shadow: 0 0 13px inset rgba(0, 0, 0, 0.05); }

/* Will select next element after last '.elementor-general-section' */
#wpadminbar #wp-admin-bar-elementor_edit_page .elementor-general-section + .elementor-second-section {
  border-top: 1px solid #464b50;
  margin-top: 6px; }

.elementor-hidden {
  display: none; }

.elementor-screen-only,
.screen-reader-text,
.screen-reader-text span,
.ui-helper-hidden-accessible {
  position: absolute;
  top: -10000em;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0; }

.elementor-clearfix:after {
  content: '';
  display: block;
  clear: both;
  width: 0;
  height: 0; }

.e-logo-wrapper {
  background: #93003c;
  display: inline-block;
  padding: 0.75em;
  border-radius: 50%;
  line-height: 1; }
  .e-logo-wrapper i {
    color: #fff;
    font-size: 1em; }

.elementor {
  hyphens: manual; }
  .elementor *, .elementor *:before, .elementor *:after {
    box-sizing: border-box; }
  .elementor a {
    box-shadow: none;
    text-decoration: none; }
  .elementor hr {
    margin: 0;
    background-color: transparent; }
  .elementor img {
    height: auto;
    max-width: 100%;
    border: none;
    border-radius: 0;
    box-shadow: none; }
  .elementor .elementor-widget:not(.elementor-widget-text-editor):not(.elementor-widget-theme-post-content) figure {
    margin: 0; }
  .elementor embed,
  .elementor iframe,
  .elementor object,
  .elementor video {
    max-width: 100%;
    width: 100%;
    margin: 0;
    line-height: 1;
    border: none; }
  .elementor .elementor-custom-embed {
    line-height: 0; }
  .elementor .elementor-background-video-container,
  .elementor .elementor-background-holder,
  .elementor .elementor-background {
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    position: absolute;
    overflow: hidden;
    z-index: 0;
    direction: ltr; }
  .elementor .elementor-background-video-container {
    transition: opacity 1s;
    pointer-events: none; }
    .elementor .elementor-background-video-container.elementor-loading {
      opacity: 0; }
  .elementor .elementor-background-video-embed {
    max-width: none; }
  .elementor .elementor-background-video-embed, .elementor .elementor-background-video-hosted {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); }
  .elementor .elementor-background-video {
    max-width: none;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); }
  .elementor .elementor-html5-video {
    object-fit: cover; }
  .elementor .elementor-background-overlay {
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    position: absolute; }
  .elementor .elementor-background-slideshow {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 0;
    top: 0;
    right: 0; }
    .elementor .elementor-background-slideshow__slide__image {
      width: 100%;
      height: 100%;
      background-position: center center;
      background-size: cover; }

.elementor-widget-wrap > .elementor-element.elementor-absolute {
  position: absolute; }
  .elementor-column > .elementor-widget-wrap > .elementor-element.elementor-absolute {
    padding: inherit;
    box-sizing: content-box; }

.elementor-widget-wrap > .elementor-element.elementor-fixed {
  position: fixed; }

.elementor-widget-wrap .elementor-element.elementor-widget__width-auto, .elementor-widget-wrap .elementor-element.elementor-widget__width-initial {
  max-width: 100%; }

@media (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
  .elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-auto, .elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-initial {
    max-width: 100%; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-auto, .elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-initial {
    max-width: 100%; } }

.elementor-element.elementor-absolute, .elementor-element.elementor-fixed {
  z-index: 1; }

.elementor-invisible {
  visibility: hidden; }

.elementor-align-center {
  text-align: center; }
  .elementor-align-center .elementor-button {
    width: auto; }

.elementor-align-right {
  text-align: right; }
  .elementor-align-right .elementor-button {
    width: auto; }

.elementor-align-left {
  text-align: left; }
  .elementor-align-left .elementor-button {
    width: auto; }

.elementor-align-justify .elementor-button {
  width: 100%; }

.elementor-custom-embed-play {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); }
  .elementor-custom-embed-play i {
    font-size: 100px;
    color: #fff;
    text-shadow: 1px 0 6px rgba(0, 0, 0, 0.3); }
  .elementor-custom-embed-play svg {
    height: 100px;
    width: 100px;
    fill: #fff;
    filter: drop-shadow(1px 0 6px rgba(0, 0, 0, 0.3)); }
  .elementor-custom-embed-play i,
  .elementor-custom-embed-play svg {
    opacity: 0.8;
    transition: all .5s; }
  .elementor-custom-embed-play.elementor-playing i {
    font-family: eicons;
    animation: fa-spin 2s infinite linear; }
    .elementor-custom-embed-play.elementor-playing i:before {
      content: '\e8fb'; }

.elementor-tag {
  display: inline-flex; }

.elementor-ken-burns {
  transition-property: transform;
  transition-duration: 10s;
  transition-timing-function: linear; }
  .elementor-ken-burns--out {
    transform: scale(1.3); }
  .elementor-ken-burns--active {
    transition-duration: 20s; }
    .elementor-ken-burns--active.elementor-ken-burns--out {
      transform: scale(1); }
    .elementor-ken-burns--active.elementor-ken-burns--in {
      transform: scale(1.3); }

@media (min-width: ELEMENTOR_SCREEN_WIDESCREEN_MIN) {
  .elementor-widescreen-align-center {
    text-align: center; }
    .elementor-widescreen-align-center .elementor-button {
      width: auto; }
  .elementor-widescreen-align-right {
    text-align: right; }
    .elementor-widescreen-align-right .elementor-button {
      width: auto; }
  .elementor-widescreen-align-left {
    text-align: left; }
    .elementor-widescreen-align-left .elementor-button {
      width: auto; }
  .elementor-widescreen-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: ELEMENTOR_SCREEN_LAPTOP_MAX) {
  .elementor-laptop-align-center {
    text-align: center; }
    .elementor-laptop-align-center .elementor-button {
      width: auto; }
  .elementor-laptop-align-right {
    text-align: right; }
    .elementor-laptop-align-right .elementor-button {
      width: auto; }
  .elementor-laptop-align-left {
    text-align: left; }
    .elementor-laptop-align-left .elementor-button {
      width: auto; }
  .elementor-laptop-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: ELEMENTOR_SCREEN_TABLET_EXTRA_MAX) {
  .elementor-tablet_extra-align-center {
    text-align: center; }
    .elementor-tablet_extra-align-center .elementor-button {
      width: auto; }
  .elementor-tablet_extra-align-right {
    text-align: right; }
    .elementor-tablet_extra-align-right .elementor-button {
      width: auto; }
  .elementor-tablet_extra-align-left {
    text-align: left; }
    .elementor-tablet_extra-align-left .elementor-button {
      width: auto; }
  .elementor-tablet_extra-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
  .elementor-tablet-align-center {
    text-align: center; }
    .elementor-tablet-align-center .elementor-button {
      width: auto; }
  .elementor-tablet-align-right {
    text-align: right; }
    .elementor-tablet-align-right .elementor-button {
      width: auto; }
  .elementor-tablet-align-left {
    text-align: left; }
    .elementor-tablet-align-left .elementor-button {
      width: auto; }
  .elementor-tablet-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_EXTRA_MAX) {
  .elementor-mobile_extra-align-center {
    text-align: center; }
    .elementor-mobile_extra-align-center .elementor-button {
      width: auto; }
  .elementor-mobile_extra-align-right {
    text-align: right; }
    .elementor-mobile_extra-align-right .elementor-button {
      width: auto; }
  .elementor-mobile_extra-align-left {
    text-align: left; }
    .elementor-mobile_extra-align-left .elementor-button {
      width: auto; }
  .elementor-mobile_extra-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-mobile-align-center {
    text-align: center; }
    .elementor-mobile-align-center .elementor-button {
      width: auto; }
  .elementor-mobile-align-right {
    text-align: right; }
    .elementor-mobile-align-right .elementor-button {
      width: auto; }
  .elementor-mobile-align-left {
    text-align: left; }
    .elementor-mobile-align-left .elementor-button {
      width: auto; }
  .elementor-mobile-align-justify .elementor-button {
    width: 100%; } }

#wpadminbar #wp-admin-bar-elementor_edit_page > .ab-item::before {
  content: "\e813";
  font-family: eicons;
  top: 3px;
  font-size: 18px; }

#wpadminbar #wp-admin-bar-elementor_inspector > .ab-item::before {
  content: "\f348";
  top: 2px; }

:root {
  --page-title-display: block; }

.elementor-page-title, h1.entry-title {
  display: var(--page-title-display); }

.elementor-section {
  position: relative; }
  .elementor-section .elementor-container {
    display: flex;
    margin-right: auto;
    margin-left: auto;
    position: relative; }
    @media (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
      .elementor-section .elementor-container {
        flex-wrap: wrap; } }
  .elementor-section.elementor-section-boxed > .elementor-container {
    max-width: 1140px; }
  .elementor-section.elementor-section-stretched {
    position: relative;
    width: 100%; }
  .elementor-section.elementor-section-items-top > .elementor-container {
    align-items: flex-start; }
  .elementor-section.elementor-section-items-middle > .elementor-container {
    align-items: center; }
  .elementor-section.elementor-section-items-bottom > .elementor-container {
    align-items: flex-end; }
  @media (min-width: ELEMENTOR_SCREEN_MOBILE_NEXT) {
    .elementor-section.elementor-section-height-full {
      height: 100vh; }
      .elementor-section.elementor-section-height-full > .elementor-container {
        height: 100%; } }

.elementor-bc-flex-widget .elementor-section-content-top > .elementor-container > .elementor-column > .elementor-widget-wrap {
  align-items: flex-start; }

.elementor-bc-flex-widget .elementor-section-content-middle > .elementor-container > .elementor-column > .elementor-widget-wrap {
  align-items: center; }

.elementor-bc-flex-widget .elementor-section-content-bottom > .elementor-container > .elementor-column > .elementor-widget-wrap {
  align-items: flex-end; }

.elementor-row {
  width: 100%;
  display: flex; }
  @media (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
    .elementor-row {
      flex-wrap: wrap; } }

.elementor-widget-wrap {
  position: relative;
  width: 100%;
  flex-wrap: wrap;
  align-content: flex-start; }
  .elementor:not(.elementor-bc-flex-widget) .elementor-widget-wrap {
    display: flex; }
  .elementor-widget-wrap > .elementor-element {
    width: 100%; }

.elementor-widget {
  position: relative; }
  .elementor-widget:not(:last-child) {
    margin-bottom: 20px; }
    .elementor-widget:not(:last-child).elementor-widget__width-auto, .elementor-widget:not(:last-child).elementor-widget__width-initial, .elementor-widget:not(:last-child).elementor-absolute {
      margin-bottom: 0; }

.elementor-column {
  position: relative;
  min-height: 1px;
  display: flex; }

.elementor-column-wrap {
  width: 100%;
  position: relative;
  display: flex; }

.elementor-column-gap-narrow > .elementor-column > .elementor-element-populated {
  padding: 5px; }

.elementor-column-gap-default > .elementor-column > .elementor-element-populated {
  padding: 10px; }

.elementor-column-gap-extended > .elementor-column > .elementor-element-populated {
  padding: 15px; }

.elementor-column-gap-wide > .elementor-column > .elementor-element-populated {
  padding: 20px; }

.elementor-column-gap-wider > .elementor-column > .elementor-element-populated {
  padding: 30px; }

.elementor-inner-section .elementor-column-gap-no .elementor-element-populated {
  padding: 0; }

@media (min-width: ELEMENTOR_SCREEN_MOBILE_NEXT) {
  .elementor-column.elementor-col-10, .elementor-column[data-col="10"] {
    width: 10%; }
  .elementor-column.elementor-col-11, .elementor-column[data-col="11"] {
    width: 11.111%; }
  .elementor-column.elementor-col-12, .elementor-column[data-col="12"] {
    width: 12.5%; }
  .elementor-column.elementor-col-14, .elementor-column[data-col="14"] {
    width: 14.285%; }
  .elementor-column.elementor-col-16, .elementor-column[data-col="16"] {
    width: 16.666%; }
  .elementor-column.elementor-col-20, .elementor-column[data-col="20"] {
    width: 20%; }
  .elementor-column.elementor-col-25, .elementor-column[data-col="25"] {
    width: 25%; }
  .elementor-column.elementor-col-30, .elementor-column[data-col="30"] {
    width: 30%; }
  .elementor-column.elementor-col-33, .elementor-column[data-col="33"] {
    width: 33.333%; }
  .elementor-column.elementor-col-40, .elementor-column[data-col="40"] {
    width: 40%; }
  .elementor-column.elementor-col-50, .elementor-column[data-col="50"] {
    width: 50%; }
  .elementor-column.elementor-col-60, .elementor-column[data-col="60"] {
    width: 60%; }
  .elementor-column.elementor-col-66, .elementor-column[data-col="66"] {
    width: 66.666%; }
  .elementor-column.elementor-col-70, .elementor-column[data-col="70"] {
    width: 70%; }
  .elementor-column.elementor-col-75, .elementor-column[data-col="75"] {
    width: 75%; }
  .elementor-column.elementor-col-80, .elementor-column[data-col="80"] {
    width: 80%; }
  .elementor-column.elementor-col-83, .elementor-column[data-col="83"] {
    width: 83.333%; }
  .elementor-column.elementor-col-90, .elementor-column[data-col="90"] {
    width: 90%; }
  .elementor-column.elementor-col-100, .elementor-column[data-col="100"] {
    width: 100%; } }

@media (max-width: 479px) {
  .elementor-column.elementor-xs-10 {
    width: 10%; }
  .elementor-column.elementor-xs-11 {
    width: 11.111%; }
  .elementor-column.elementor-xs-12 {
    width: 12.5%; }
  .elementor-column.elementor-xs-14 {
    width: 14.285%; }
  .elementor-column.elementor-xs-16 {
    width: 16.666%; }
  .elementor-column.elementor-xs-20 {
    width: 20%; }
  .elementor-column.elementor-xs-25 {
    width: 25%; }
  .elementor-column.elementor-xs-30 {
    width: 30%; }
  .elementor-column.elementor-xs-33 {
    width: 33.333%; }
  .elementor-column.elementor-xs-40 {
    width: 40%; }
  .elementor-column.elementor-xs-50 {
    width: 50%; }
  .elementor-column.elementor-xs-60 {
    width: 60%; }
  .elementor-column.elementor-xs-66 {
    width: 66.666%; }
  .elementor-column.elementor-xs-70 {
    width: 70%; }
  .elementor-column.elementor-xs-75 {
    width: 75%; }
  .elementor-column.elementor-xs-80 {
    width: 80%; }
  .elementor-column.elementor-xs-83 {
    width: 83.333%; }
  .elementor-column.elementor-xs-90 {
    width: 90%; }
  .elementor-column.elementor-xs-100 {
    width: 100%; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-column.elementor-sm-10 {
    width: 10%; }
  .elementor-column.elementor-sm-11 {
    width: 11.111%; }
  .elementor-column.elementor-sm-12 {
    width: 12.5%; }
  .elementor-column.elementor-sm-14 {
    width: 14.285%; }
  .elementor-column.elementor-sm-16 {
    width: 16.666%; }
  .elementor-column.elementor-sm-20 {
    width: 20%; }
  .elementor-column.elementor-sm-25 {
    width: 25%; }
  .elementor-column.elementor-sm-30 {
    width: 30%; }
  .elementor-column.elementor-sm-33 {
    width: 33.333%; }
  .elementor-column.elementor-sm-40 {
    width: 40%; }
  .elementor-column.elementor-sm-50 {
    width: 50%; }
  .elementor-column.elementor-sm-60 {
    width: 60%; }
  .elementor-column.elementor-sm-66 {
    width: 66.666%; }
  .elementor-column.elementor-sm-70 {
    width: 70%; }
  .elementor-column.elementor-sm-75 {
    width: 75%; }
  .elementor-column.elementor-sm-80 {
    width: 80%; }
  .elementor-column.elementor-sm-83 {
    width: 83.333%; }
  .elementor-column.elementor-sm-90 {
    width: 90%; }
  .elementor-column.elementor-sm-100 {
    width: 100%; } }

@media (min-width: ELEMENTOR_SCREEN_MOBILE_NEXT) and (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
  .elementor-column.elementor-md-10 {
    width: 10%; }
  .elementor-column.elementor-md-11 {
    width: 11.111%; }
  .elementor-column.elementor-md-12 {
    width: 12.5%; }
  .elementor-column.elementor-md-14 {
    width: 14.285%; }
  .elementor-column.elementor-md-16 {
    width: 16.666%; }
  .elementor-column.elementor-md-20 {
    width: 20%; }
  .elementor-column.elementor-md-25 {
    width: 25%; }
  .elementor-column.elementor-md-30 {
    width: 30%; }
  .elementor-column.elementor-md-33 {
    width: 33.333%; }
  .elementor-column.elementor-md-40 {
    width: 40%; }
  .elementor-column.elementor-md-50 {
    width: 50%; }
  .elementor-column.elementor-md-60 {
    width: 60%; }
  .elementor-column.elementor-md-66 {
    width: 66.666%; }
  .elementor-column.elementor-md-70 {
    width: 70%; }
  .elementor-column.elementor-md-75 {
    width: 75%; }
  .elementor-column.elementor-md-80 {
    width: 80%; }
  .elementor-column.elementor-md-83 {
    width: 83.333%; }
  .elementor-column.elementor-md-90 {
    width: 90%; }
  .elementor-column.elementor-md-100 {
    width: 100%; } }

@media (min-width: ELEMENTOR_SCREEN_MOBILE_NEXT) and (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
  .elementor-reverse-tablet > .elementor-container > :nth-child(1) {
    order: 10; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(2) {
    order: 9; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(3) {
    order: 8; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(4) {
    order: 7; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(5) {
    order: 6; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(6) {
    order: 5; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(7) {
    order: 4; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(8) {
    order: 3; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(9) {
    order: 2; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(10) {
    order: 1; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-reverse-mobile > .elementor-container > :nth-child(1) {
    order: 10; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(2) {
    order: 9; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(3) {
    order: 8; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(4) {
    order: 7; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(5) {
    order: 6; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(6) {
    order: 5; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(7) {
    order: 4; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(8) {
    order: 3; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(9) {
    order: 2; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(10) {
    order: 1; }
  .elementor-column {
    width: 100%; } }

ul.elementor-icon-list-items.elementor-inline-items {
  display: flex;
  flex-wrap: wrap; }
  ul.elementor-icon-list-items.elementor-inline-items .elementor-inline-item {
    word-break: break-word; }

.elementor-grid {
  display: grid;
  grid-column-gap: var(--grid-column-gap);
  grid-row-gap: var(--grid-row-gap); }
  .elementor-grid .elementor-grid-item {
    min-width: 0; }
  .elementor-grid-0 .elementor-grid {
    display: inline-block;
    width: 100%;
    word-spacing: var(--grid-column-gap);
    margin-bottom: calc(-1 * var(--grid-row-gap)); }
    .elementor-grid-0 .elementor-grid .elementor-grid-item {
      display: inline-block;
      margin-bottom: var(--grid-row-gap);
      word-break: break-word; }
  .elementor-grid-1 .elementor-grid {
    grid-template-columns: repeat(1, 1fr); }
  .elementor-grid-2 .elementor-grid {
    grid-template-columns: repeat(2, 1fr); }
  .elementor-grid-3 .elementor-grid {
    grid-template-columns: repeat(3, 1fr); }
  .elementor-grid-4 .elementor-grid {
    grid-template-columns: repeat(4, 1fr); }
  .elementor-grid-5 .elementor-grid {
    grid-template-columns: repeat(5, 1fr); }
  .elementor-grid-6 .elementor-grid {
    grid-template-columns: repeat(6, 1fr); }
  .elementor-grid-7 .elementor-grid {
    grid-template-columns: repeat(7, 1fr); }
  .elementor-grid-8 .elementor-grid {
    grid-template-columns: repeat(8, 1fr); }
  .elementor-grid-9 .elementor-grid {
    grid-template-columns: repeat(9, 1fr); }
  .elementor-grid-10 .elementor-grid {
    grid-template-columns: repeat(10, 1fr); }
  .elementor-grid-11 .elementor-grid {
    grid-template-columns: repeat(11, 1fr); }
  .elementor-grid-12 .elementor-grid {
    grid-template-columns: repeat(12, 1fr); }
  @media (min-width: ELEMENTOR_SCREEN_WIDESCREEN_MIN) {
    .elementor-grid-widescreen-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-widescreen-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-widescreen-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-widescreen-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-widescreen-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-widescreen-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-widescreen-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-widescreen-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-widescreen-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-widescreen-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-widescreen-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-widescreen-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-widescreen-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-widescreen-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: ELEMENTOR_SCREEN_LAPTOP_MAX) {
    .elementor-grid-laptop-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-laptop-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-laptop-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-laptop-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-laptop-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-laptop-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-laptop-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-laptop-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-laptop-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-laptop-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-laptop-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-laptop-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-laptop-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-laptop-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: ELEMENTOR_SCREEN_TABLET_EXTRA_MAX) {
    .elementor-grid-tablet_extra-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-tablet_extra-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-tablet_extra-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-tablet_extra-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-tablet_extra-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-tablet_extra-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-tablet_extra-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-tablet_extra-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-tablet_extra-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-tablet_extra-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-tablet_extra-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-tablet_extra-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-tablet_extra-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-tablet_extra-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
    .elementor-grid-tablet-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-tablet-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-tablet-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-tablet-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-tablet-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-tablet-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-tablet-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-tablet-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-tablet-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-tablet-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-tablet-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-tablet-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-tablet-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-tablet-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: ELEMENTOR_SCREEN_MOBILE_EXTRA_MAX) {
    .elementor-grid-mobile_extra-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-mobile_extra-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-mobile_extra-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-mobile_extra-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-mobile_extra-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-mobile_extra-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-mobile_extra-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-mobile_extra-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-mobile_extra-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-mobile_extra-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-mobile_extra-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-mobile_extra-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-mobile_extra-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-mobile_extra-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
    .elementor-grid-mobile-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-mobile-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-mobile-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-mobile-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-mobile-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-mobile-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-mobile-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-mobile-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-mobile-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-mobile-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-mobile-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-mobile-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-mobile-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-mobile-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }

@media (min-width: ELEMENTOR_SCREEN_DESKTOP_MIN) {
  #elementor-device-mode:after {
    content: 'desktop'; } }

@media (min-width: ELEMENTOR_SCREEN_WIDESCREEN_MIN) {
  #elementor-device-mode:after {
    content: 'widescreen'; } }

@media (max-width: ELEMENTOR_SCREEN_LAPTOP_MAX) {
  #elementor-device-mode:after {
    content: 'laptop'; } }

@media (max-width: ELEMENTOR_SCREEN_TABLET_EXTRA_MAX) {
  #elementor-device-mode:after {
    content: 'tablet_extra'; } }

@media (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
  #elementor-device-mode:after {
    content: 'tablet'; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_EXTRA_MAX) {
  #elementor-device-mode:after {
    content: 'mobile_extra'; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  #elementor-device-mode:after {
    content: 'mobile'; } }

[class^="eicon"],
[class*=" eicon-"] {
  display: inline-block;
  font-family: eicons;
  font-size: inherit;
  font-weight: normal;
  font-style: normal;
  font-variant: normal;
  line-height: 1;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

@keyframes eicon-spin {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(359deg); } }

.eicon-animation-spin {
  animation: eicon-spin 2s infinite linear; }

.eicon-loading:before {
  content: '\e8fb'; }

.eicon-menu-bar:before {
  content: '\e816'; }

.eicon-chevron-right:before {
  content: '\e87d'; }

.eicon-chevron-left:before {
  content: '\e87e'; }

.eicon-close:before {
  content: '\e87f'; }

.eicon-share-arrow:before {
  content: '\e96c'; }

.eicon-zoom-in:before {
  content: '\e882'; }

.eicon-zoom-in-bold:before {
  content: '\e92e'; }

.eicon-zoom-out-bold:before {
  content: '\e943'; }

.eicon-frame-expand:before {
  content: '\e95c'; }

.eicon-frame-minimize:before {
  content: '\e95d'; }

.eicon-play:before {
  content: '\e89d'; }

.eicon-facebook:before {
  content: '\e959'; }

.eicon-twitter:before {
  content: '\e95a'; }

.eicon-pinterest:before {
  content: '\e95b'; }

.eicon-download-bold:before {
  content: '\e96b'; }

.eicon-caret-down:before {
  content: '\e92a'; }

.elementor-form-fields-wrapper {
  display: flex;
  flex-wrap: wrap; }
  .elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group > input, .elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group > textarea, .elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group > .elementor-select-wrapper, .elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group .elementor-field-subgroup {
    flex-basis: 100%;
    max-width: 100%; }
  .elementor-form-fields-wrapper.elementor-labels-inline > .elementor-field-group > input, .elementor-form-fields-wrapper.elementor-labels-inline > .elementor-field-group .elementor-select-wrapper {
    flex-grow: 1; }

.elementor-field-group {
  flex-wrap: wrap;
  align-items: center; }
  .elementor-field-group.elementor-field-type-submit {
    align-items: flex-end; }
  .elementor-field-group .elementor-field-textual {
    width: 100%;
    max-width: 100%;
    border: 1px solid #818a91;
    background-color: transparent;
    color: #373a3c;
    vertical-align: middle;
    flex-grow: 1; }
    .elementor-field-group .elementor-field-textual:focus {
      box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1) inset;
      outline: 0; }
    .elementor-field-group .elementor-field-textual::-webkit-input-placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
    .elementor-field-group .elementor-field-textual:-ms-input-placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
    .elementor-field-group .elementor-field-textual::-moz-placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
    .elementor-field-group .elementor-field-textual:-moz-placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
    .elementor-field-group .elementor-field-textual::placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
  .elementor-field-group .elementor-select-wrapper {
    display: flex;
    position: relative;
    width: 100%; }
    .elementor-field-group .elementor-select-wrapper select {
      appearance: none;
      -webkit-appearance: none;
      -moz-appearance: none;
      color: inherit;
      font-size: inherit;
      font-family: inherit;
      font-weight: inherit;
      font-style: inherit;
      text-transform: inherit;
      letter-spacing: inherit;
      line-height: inherit;
      flex-basis: 100%;
      padding-left: 20px; }
    .elementor-field-group .elementor-select-wrapper:before {
      content: '\e92a';
      font-family: 'eicons';
      font-size: 15px;
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      left: 10px;
      pointer-events: none;
      text-shadow: 0 0 3px rgba(0, 0, 0, 0.3); }
  .elementor-field-group.elementor-field-type-select-multiple .elementor-select-wrapper:before {
    content: ''; }

.elementor-field-subgroup {
  display: flex;
  flex-wrap: wrap; }
  .elementor-field-subgroup .elementor-field-option label {
    display: inline-block; }
  .elementor-field-subgroup.elementor-subgroup-inline .elementor-field-option {
    padding-left: 10px; }
  .elementor-field-subgroup:not(.elementor-subgroup-inline) .elementor-field-option {
    flex-basis: 100%; }

.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option input,
.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option label,
.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option input,
.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option label,
.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option input,
.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option label {
  display: inline; }

.elementor-field-label {
  cursor: pointer; }
  .elementor-mark-required .elementor-field-label:after {
    content: '*';
    color: red;
    padding-right: 0.2em; }

.elementor-field-textual {
  line-height: 1.4;
  font-size: 15px;
  min-height: 40px;
  padding: 5px 14px;
  border-radius: 3px; }
  .elementor-field-textual.elementor-size-xs {
    font-size: 13px;
    min-height: 33px;
    padding: 4px 12px;
    border-radius: 2px; }
  .elementor-field-textual.elementor-size-md {
    font-size: 16px;
    min-height: 47px;
    padding: 6px 16px;
    border-radius: 4px; }
  .elementor-field-textual.elementor-size-lg {
    font-size: 18px;
    min-height: 59px;
    padding: 7px 20px;
    border-radius: 5px; }
  .elementor-field-textual.elementor-size-xl {
    font-size: 20px;
    min-height: 72px;
    padding: 8px 24px;
    border-radius: 6px; }

.elementor-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
  flex-basis: 100%; }

.elementor-button-align-stretch .e-form__buttons__wrapper {
  flex-basis: 50%;
  flex-grow: 1; }
  .elementor-button-align-stretch .e-form__buttons__wrapper__button {
    flex-basis: 100%; }

.elementor-button-align-center .elementor-field-type-submit,
.elementor-button-align-center .e-form__buttons {
  justify-content: center; }

.elementor-button-align-start .elementor-field-type-submit,
.elementor-button-align-start .e-form__buttons {
  justify-content: flex-end; }

.elementor-button-align-end .elementor-field-type-submit,
.elementor-button-align-end .e-form__buttons {
  justify-content: flex-start; }

.elementor-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
  flex-basis: initial; }

.elementor-button-align-center .e-form__buttons__wrapper, .elementor-button-align-start .e-form__buttons__wrapper, .elementor-button-align-end .e-form__buttons__wrapper {
  flex-grow: initial; }
  .elementor-button-align-center .e-form__buttons__wrapper, .elementor-button-align-center .e-form__buttons__wrapper__button, .elementor-button-align-start .e-form__buttons__wrapper, .elementor-button-align-start .e-form__buttons__wrapper__button, .elementor-button-align-end .e-form__buttons__wrapper, .elementor-button-align-end .e-form__buttons__wrapper__button {
    flex-basis: initial; }

@media screen and (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
  .elementor-tablet-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
    flex-basis: 100%; }
  .elementor-tablet-button-align-stretch .e-form__buttons__wrapper {
    flex-basis: 50%;
    flex-grow: 1; }
    .elementor-tablet-button-align-stretch .e-form__buttons__wrapper__button {
      flex-basis: 100%; }
  .elementor-tablet-button-align-center .elementor-field-type-submit,
  .elementor-tablet-button-align-center .e-form__buttons {
    justify-content: center; }
  .elementor-tablet-button-align-start .elementor-field-type-submit,
  .elementor-tablet-button-align-start .e-form__buttons {
    justify-content: flex-end; }
  .elementor-tablet-button-align-end .elementor-field-type-submit,
  .elementor-tablet-button-align-end .e-form__buttons {
    justify-content: flex-start; }
  .elementor-tablet-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-tablet-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-tablet-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
    flex-basis: initial; }
  .elementor-tablet-button-align-center .e-form__buttons__wrapper, .elementor-tablet-button-align-start .e-form__buttons__wrapper, .elementor-tablet-button-align-end .e-form__buttons__wrapper {
    flex-grow: initial; }
    .elementor-tablet-button-align-center .e-form__buttons__wrapper, .elementor-tablet-button-align-center .e-form__buttons__wrapper__button, .elementor-tablet-button-align-start .e-form__buttons__wrapper, .elementor-tablet-button-align-start .e-form__buttons__wrapper__button, .elementor-tablet-button-align-end .e-form__buttons__wrapper, .elementor-tablet-button-align-end .e-form__buttons__wrapper__button {
      flex-basis: initial; } }

@media screen and (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-mobile-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
    flex-basis: 100%; }
  .elementor-mobile-button-align-stretch .e-form__buttons__wrapper {
    flex-basis: 50%;
    flex-grow: 1; }
    .elementor-mobile-button-align-stretch .e-form__buttons__wrapper__button {
      flex-basis: 100%; }
  .elementor-mobile-button-align-center .elementor-field-type-submit,
  .elementor-mobile-button-align-center .e-form__buttons {
    justify-content: center; }
  .elementor-mobile-button-align-start .elementor-field-type-submit,
  .elementor-mobile-button-align-start .e-form__buttons {
    justify-content: flex-end; }
  .elementor-mobile-button-align-end .elementor-field-type-submit,
  .elementor-mobile-button-align-end .e-form__buttons {
    justify-content: flex-start; }
  .elementor-mobile-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-mobile-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-mobile-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
    flex-basis: initial; }
  .elementor-mobile-button-align-center .e-form__buttons__wrapper, .elementor-mobile-button-align-start .e-form__buttons__wrapper, .elementor-mobile-button-align-end .e-form__buttons__wrapper {
    flex-grow: initial; }
    .elementor-mobile-button-align-center .e-form__buttons__wrapper, .elementor-mobile-button-align-center .e-form__buttons__wrapper__button, .elementor-mobile-button-align-start .e-form__buttons__wrapper, .elementor-mobile-button-align-start .e-form__buttons__wrapper__button, .elementor-mobile-button-align-end .e-form__buttons__wrapper, .elementor-mobile-button-align-end .e-form__buttons__wrapper__button {
      flex-basis: initial; } }

.elementor-error .elementor-field {
  border-color: #d9534f; }

.elementor-error .help-inline {
  color: #d9534f;
  font-size: 0.9em; }

.elementor-message {
  margin: 10px 0;
  font-size: 1em;
  line-height: 1; }
  .elementor-message:before {
    content: "\e90e";
    display: inline-block;
    font-family: eicons;
    font-weight: normal;
    font-style: normal;
    vertical-align: middle;
    margin-left: 5px; }
  .elementor-message.elementor-message-danger {
    color: #d9534f; }
    .elementor-message.elementor-message-danger:before {
      content: "\e87f"; }
  .elementor-message.form-message-success {
    color: #5cb85c; }

.elementor-form .elementor-button {
  padding-top: 0;
  padding-bottom: 0;
  border: none; }
  .elementor-form .elementor-button > span {
    display: flex;
    justify-content: center; }
  .elementor-form .elementor-button.elementor-size-xs {
    min-height: 33px; }
  .elementor-form .elementor-button.elementor-size-sm {
    min-height: 40px; }
  .elementor-form .elementor-button.elementor-size-md {
    min-height: 47px; }
  .elementor-form .elementor-button.elementor-size-lg {
    min-height: 59px; }
  .elementor-form .elementor-button.elementor-size-xl {
    min-height: 72px; }

.elementor-element .elementor-widget-container {
  transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s; }

.elementor-button {
  display: inline-block;
  line-height: 1;
  background-color: #818a91;
  font-size: 15px;
  padding: 12px 24px;
  border-radius: 3px;
  color: #fff;
  fill: #fff;
  text-align: center;
  transition: all 0.3s; }
  .elementor-button:hover, .elementor-button:focus, .elementor-button:visited {
    color: #fff; }
  .elementor-button-content-wrapper {
    display: flex;
    justify-content: center; }
  .elementor-button-icon {
    flex-grow: 0;
    order: 5; }
    .elementor-button-icon svg {
      width: 1em;
      height: auto; }
    .elementor-button-icon .e-font-icon-svg {
      height: 1em; }
  .elementor-button-text {
    flex-grow: 1;
    order: 10;
    display: inline-block; }
  .elementor-button.elementor-size-xs {
    font-size: 13px;
    padding: 10px 20px;
    border-radius: 2px; }
  .elementor-button.elementor-size-md {
    font-size: 16px;
    padding: 15px 30px;
    border-radius: 4px; }
  .elementor-button.elementor-size-lg {
    font-size: 18px;
    padding: 20px 40px;
    border-radius: 5px; }
  .elementor-button.elementor-size-xl {
    font-size: 20px;
    padding: 25px 50px;
    border-radius: 6px; }
  .elementor-button .elementor-align-icon-right {
    margin-left: 5px;
    order: 5; }
  .elementor-button .elementor-align-icon-left {
    margin-right: 5px;
    order: 15; }
  .elementor-button span {
    text-decoration: inherit; }

/* TODO: REMOVE THIS EXCEPTION AFTER PRO 2.8 RELEASES */
.elementor-menu-cart__toggle .elementor-button-icon {
  order: 15; }

.elementor-element.elementor-button-info .elementor-button {
  background-color: #5bc0de; }

.elementor-element.elementor-button-success .elementor-button {
  background-color: #5cb85c; }

.elementor-element.elementor-button-warning .elementor-button {
  background-color: #f0ad4e; }

.elementor-element.elementor-button-danger .elementor-button {
  background-color: #d9534f; }

.elementor-widget-button .elementor-button .elementor-button-info {
  background-color: #5bc0de; }

.elementor-widget-button .elementor-button .elementor-button-success {
  background-color: #5cb85c; }

.elementor-widget-button .elementor-button .elementor-button-warning {
  background-color: #f0ad4e; }

.elementor-widget-button .elementor-button .elementor-button-danger {
  background-color: #d9534f; }

.elementor-tab-title a {
  color: inherit; }

.elementor-view-stacked .elementor-icon {
  padding: .5em;
  background-color: #818a91;
  color: #fff;
  fill: #fff; }

.elementor-view-framed .elementor-icon {
  padding: .5em;
  color: #818a91;
  border: 3px solid #818a91;
  background-color: transparent; }

.elementor-icon {
  display: inline-block;
  line-height: 1;
  transition: all 0.3s;
  color: #818a91;
  font-size: 50px;
  text-align: center; }
  .elementor-icon:hover {
    color: #818a91; }
  .elementor-icon i, .elementor-icon svg {
    width: 1em;
    height: 1em;
    position: relative;
    display: block; }
    .elementor-icon i:before, .elementor-icon svg:before {
      position: absolute;
      left: 50%;
      transform: translateX(-50%); }
  .elementor-icon i.fad {
    width: initial; }

.elementor-shape-circle .elementor-icon {
  border-radius: 50%; }

.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  user-select: none;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block; }
  .slick-track:before, .slick-track:after {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  .elementor-slick-slider[dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

.elementor-slick-slider .slick-loading .slick-list {
  background: #fff; }
  .elementor-slick-slider .slick-loading .slick-list:after {
    content: '\e8fb';
    font-family: eicons;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    animation: fa-spin 2s infinite linear;
    font-size: 25px;
    color: #a4afb7; }

.elementor-slick-slider .slick-prev,
.elementor-slick-slider .slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 50%;
  display: block;
  width: 20px;
  padding: 0;
  transform: translate(0, -50%);
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent; }
  .elementor-slick-slider .slick-prev:hover, .elementor-slick-slider .slick-prev:focus,
  .elementor-slick-slider .slick-next:hover,
  .elementor-slick-slider .slick-next:focus {
    color: transparent;
    outline: none;
    background: transparent; }
    .elementor-slick-slider .slick-prev:hover:before, .elementor-slick-slider .slick-prev:focus:before,
    .elementor-slick-slider .slick-next:hover:before,
    .elementor-slick-slider .slick-next:focus:before {
      opacity: 1; }
  .elementor-slick-slider .slick-prev.slick-disabled:before,
  .elementor-slick-slider .slick-next.slick-disabled:before {
    opacity: .25; }
  .elementor-slick-slider .slick-prev:before,
  .elementor-slick-slider .slick-next:before {
    font-family: eicons;
    font-size: 35px;
    line-height: 1;
    opacity: .75;
    color: white;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }

.elementor-slick-slider .slick-prev {
  left: -25px; }
  [dir="rtl"] .elementor-slick-slider .slick-prev {
    left: auto;
    right: -25px; }
  .elementor-slick-slider .slick-prev:before {
    content: '\e89f'; }
    [dir="rtl"] .elementor-slick-slider .slick-prev:before {
      content: '\e89e'; }

.elementor-slick-slider .slick-next {
  right: -25px; }
  [dir="rtl"] .elementor-slick-slider .slick-next {
    left: -25px;
    right: auto; }
  .elementor-slick-slider .slick-next:before {
    content: '\e89e'; }
    [dir="rtl"] .elementor-slick-slider .slick-next:before {
      content: '\e89f'; }

.elementor-slick-slider .slick-dotted.slick-slider {
  margin-bottom: 30px; }

.elementor-slick-slider ul.slick-dots {
  position: absolute;
  bottom: -25px;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1; }
  .elementor-slick-slider ul.slick-dots li {
    position: relative;
    display: inline-block;
    width: 20px;
    height: 20px;
    margin: 0;
    padding: 0;
    cursor: pointer; }
    .elementor-slick-slider ul.slick-dots li button {
      font-size: 0;
      line-height: 0;
      display: block;
      width: 20px;
      height: 20px;
      padding: 5px;
      cursor: pointer;
      color: transparent;
      border: 0;
      outline: none;
      background: transparent; }
      .elementor-slick-slider ul.slick-dots li button:hover, .elementor-slick-slider ul.slick-dots li button:focus {
        outline: none; }
        .elementor-slick-slider ul.slick-dots li button:hover:before, .elementor-slick-slider ul.slick-dots li button:focus:before {
          opacity: 1; }
      .elementor-slick-slider ul.slick-dots li button:before {
        font-family: eicons;
        font-size: 6px;
        line-height: 20px;
        position: absolute;
        top: 0;
        left: 0;
        width: 20px;
        height: 20px;
        content: '\e914';
        text-align: center;
        opacity: .25;
        color: black;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
    .elementor-slick-slider ul.slick-dots li.slick-active button:before {
      opacity: .75;
      color: black; }

.elementor-slick-slider .slick-arrows-inside .slick-prev {
  left: 20px; }
  [dir="rtl"] .elementor-slick-slider .slick-arrows-inside .slick-prev {
    left: auto;
    right: 20px; }

.elementor-slick-slider .slick-arrows-inside .slick-next {
  right: 20px; }
  [dir="rtl"] .elementor-slick-slider .slick-arrows-inside .slick-next {
    left: 20px;
    right: auto; }

.elementor-slick-slider .slick-dots-inside .slick-dots {
  bottom: 5px; }

.elementor-slick-slider .slick-dots-inside.slick-dotted.slick-slider {
  margin-bottom: 0; }

.elementor-slick-slider .slick-slider .slick-prev,
.elementor-slick-slider .slick-slider .slick-next {
  z-index: 1; }

.elementor-slick-slider .slick-slide img {
  margin: auto; }

/**
 * Swiper 3.4.2
 * Customized by Elementor team
 */
.swiper-container {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  /* Fix of Webkit flickering */
  z-index: 1; }
  .swiper-container .swiper-slide figure {
    line-height: 0; }
  .swiper-container .elementor-lightbox-content-source {
    display: none; }

.swiper-container-no-flexbox .swiper-slide {
  float: left; }

.swiper-container-vertical > .swiper-wrapper {
  flex-direction: column; }

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  box-sizing: content-box; }

.swiper-container-android .swiper-slide, .swiper-wrapper {
  transform: translate3d(0px, 0, 0); }

.swiper-container-multirow > .swiper-wrapper {
  flex-wrap: wrap; }

.swiper-container-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto; }

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative; }

/* Auto Height */
.swiper-container-autoheight {
  height: auto; }
  .swiper-container-autoheight .swiper-slide {
    height: auto; }
  .swiper-container-autoheight .swiper-wrapper {
    align-items: flex-start;
    transition-property: transform, height; }

/* a11y */
.swiper-container .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000; }

/* IE10 Windows Phone 8 Fixes */
.swiper-wp8-horizontal {
  touch-action: pan-y; }

.swiper-wp8-vertical {
  touch-action: pan-x; }

/* Arrows */
.swiper-button-prev, .swiper-button-next {
  position: absolute;
  top: 50%;
  width: 27px;
  height: 44px;
  margin-top: -22px;
  z-index: 10;
  cursor: pointer;
  background-size: 27px 44px;
  background: no-repeat center; }

.swiper-button-prev.swiper-button-disabled, .swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none; }

.swiper-button-prev, .swiper-container-rtl .swiper-button-next {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  left: 10px;
  right: auto; }

.swiper-button-prev.swiper-button-black, .swiper-container-rtl .swiper-button-next.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-prev.swiper-button-white, .swiper-container-rtl .swiper-button-next.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-next, .swiper-container-rtl .swiper-button-prev {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  right: 10px;
  left: auto; }

.swiper-button-next.swiper-button-black, .swiper-container-rtl .swiper-button-prev.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-next.swiper-button-white, .swiper-container-rtl .swiper-button-prev.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }

/* Pagination Styles */
.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 300ms;
  transform: translate3d(0, 0, 0);
  z-index: 10; }
  .swiper-pagination.swiper-pagination-hidden {
    opacity: 0; }

/* Common Styles */
.swiper-pagination-fraction, .swiper-pagination-custom, .swiper-container-horizontal > .swiper-pagination-bullets {
  bottom: 5px;
  left: 0;
  width: 100%; }

/* Bullets */
.swiper-pagination-bullet {
  width: 6px;
  height: 6px;
  display: inline-block;
  border-radius: 50%;
  background: #000;
  opacity: 0.2; }

.swiper-pagination-fraction {
  color: #000; }

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none; }

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer; }

.swiper-pagination-white .swiper-pagination-bullet {
  background: #fff; }

.swiper-pagination-bullet-active {
  opacity: 1; }

.swiper-pagination-white .swiper-pagination-bullet-active {
  background: #fff; }

.swiper-pagination-black .swiper-pagination-bullet-active {
  background: #000; }

.swiper-container-vertical > .swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  transform: translate3d(0px, -50%, 0); }
  .swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 5px 0;
    display: block; }

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 6px; }

/* Progressbar */
.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, 0.25);
  position: absolute; }
  .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: #000;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transform: scale(0);
    transform-origin: left top; }

.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top; }

.swiper-container-horizontal > .swiper-pagination-progressbar {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0; }

.swiper-container-vertical > .swiper-pagination-progressbar {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0; }

.swiper-pagination-progressbar.swiper-pagination-white {
  background: rgba(255, 255, 255, 0.5); }
  .swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill {
    background: #fff; }

.swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill {
  background: #000; }

/* 3D Container */
.swiper-container-3d {
  perspective: 1200px; }
  .swiper-container-3d .swiper-wrapper, .swiper-container-3d .swiper-slide, .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top, .swiper-container-3d .swiper-slide-shadow-bottom, .swiper-container-3d .swiper-cube-shadow {
    transform-style: preserve-3d; }
  .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top, .swiper-container-3d .swiper-slide-shadow-bottom {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10; }
  .swiper-container-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }
  .swiper-container-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }
  .swiper-container-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }
  .swiper-container-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

/* Coverflow */
.swiper-container-coverflow .swiper-wrapper, .swiper-container-flip .swiper-wrapper {
  /* Windows 8 IE 10 fix */
  -ms-perspective: 1200px; }

/* Cube + Flip */
.swiper-container-cube, .swiper-container-flip {
  overflow: visible; }

.swiper-container-cube .swiper-slide, .swiper-container-flip .swiper-slide {
  pointer-events: none;
  z-index: 1; }

.swiper-container-cube .swiper-slide .swiper-slide, .swiper-container-flip .swiper-slide .swiper-slide {
  pointer-events: none; }

.swiper-container-cube .swiper-slide-active, .swiper-container-flip .swiper-slide-active, .swiper-container-cube .swiper-slide-active .swiper-slide-active, .swiper-container-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto; }

.swiper-container-cube .swiper-slide-shadow-top, .swiper-container-flip .swiper-slide-shadow-top, .swiper-container-cube .swiper-slide-shadow-bottom, .swiper-container-flip .swiper-slide-shadow-bottom, .swiper-container-cube .swiper-slide-shadow-left, .swiper-container-flip .swiper-slide-shadow-left, .swiper-container-cube .swiper-slide-shadow-right, .swiper-container-flip .swiper-slide-shadow-right {
  z-index: 0;
  backface-visibility: hidden; }

/* Cube */
.swiper-container-cube .swiper-slide {
  visibility: hidden;
  transform-origin: 0 0;
  width: 100%;
  height: 100%; }

.swiper-container-cube.swiper-container-rtl .swiper-slide {
  transform-origin: 100% 0; }

.swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-next, .swiper-container-cube .swiper-slide-prev, .swiper-container-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible; }

.swiper-container-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0.6;
  -webkit-filter: blur(50px);
  filter: blur(50px);
  z-index: 0; }

/* Fade */
.swiper-container-fade.swiper-container-free-mode .swiper-slide {
  transition-timing-function: ease-out; }

.swiper-container-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity; }
  .swiper-container-fade .swiper-slide .swiper-slide {
    pointer-events: none; }

.swiper-container-fade .swiper-slide-active {
  pointer-events: auto; }
  .swiper-container-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto; }

.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center; }
  .swiper-zoom-container > img, .swiper-zoom-container > svg, .swiper-zoom-container > canvas {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain; }

/* Scrollbar */
.swiper-scrollbar {
  border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, 0.1); }

.swiper-container-horizontal > .swiper-scrollbar {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 50;
  height: 5px;
  width: 98%; }

.swiper-container-vertical > .swiper-scrollbar {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%; }

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 10px;
  left: 0;
  top: 0; }

.swiper-scrollbar-cursor-drag {
  cursor: move; }

.elementor-pagination-position-outside .swiper-container {
  padding-bottom: 30px; }

.elementor-pagination-position-outside .elementor-swiper-button {
  top: calc(50% - 30px / 2); }

.elementor-swiper {
  position: relative; }

.elementor-main-swiper {
  position: static; }

.elementor-arrows-position-outside .swiper-container {
  width: calc(100% - 60px); }

.elementor-arrows-position-outside .elementor-swiper-button-prev {
  left: 0; }

.elementor-arrows-position-outside .elementor-swiper-button-next {
  right: 0; }

.swiper-image-stretch .swiper-slide .swiper-slide-image {
  width: 100%; }

.elementor-swiper-button {
  position: absolute;
  display: inline-flex;
  z-index: 1;
  cursor: pointer;
  font-size: 25px;
  color: rgba(238, 238, 238, 0.9);
  top: 50%;
  transform: translateY(-50%); }
  .elementor-swiper-button-prev {
    left: 10px; }
  .elementor-swiper-button-next {
    right: 10px; }
  .elementor-swiper-button.swiper-button-disabled {
    opacity: 0.3; }

.swiper-container-cube .elementor-swiper-button {
  transform: translate3d(0, -50%, 1px); }

/* Preloader */
.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  animation: swiper-preloader-spin 1s steps(12, end) infinite; }
  .swiper-lazy-preloader:after {
    display: block;
    content: "";
    width: 100%;
    height: 100%;
    background-size: 100%;
    background: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%236c6c6c'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat 50%; }

.swiper-lazy-preloader-white:after {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%23fff'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }

@keyframes swiper-preloader-spin {
  100% {
    transform: rotate(360deg); } }

.elementor-lightbox {
  --lightbox-ui-color: rgba(238, 238, 238, 0.9);
  --lightbox-ui-color-hover: #fff;
  --lightbox-text-color: var(--lightbox-ui-color);
  --lightbox-header-icons-size: 20px;
  --lightbox-navigation-icons-size: 25px; }
  .elementor-lightbox .dialog-header {
    display: none; }
  .elementor-lightbox .dialog-widget-content {
    background: none;
    box-shadow: none;
    width: 100%;
    height: 100%; }
  .elementor-lightbox .dialog-message {
    animation-duration: .3s; }
    .elementor-lightbox .dialog-message:not(.elementor-fit-aspect-ratio) {
      height: 100%; }
    .elementor-lightbox .dialog-message.dialog-lightbox-message {
      padding: 0; }
  .elementor-lightbox .dialog-lightbox-close-button {
    cursor: pointer;
    position: absolute;
    font-size: var(--lightbox-header-icons-size);
    left: 0.75em;
    margin-top: 13px;
    padding: .25em;
    z-index: 2;
    line-height: 1; }
  .elementor-lightbox .dialog-lightbox-close-button,
  .elementor-lightbox .elementor-swiper-button {
    color: var(--lightbox-ui-color);
    transition: all 0.3s;
    opacity: 1; }
    .elementor-lightbox .dialog-lightbox-close-button:hover,
    .elementor-lightbox .elementor-swiper-button:hover {
      color: var(--lightbox-ui-color-hover); }
  .elementor-lightbox .swiper-container {
    height: 100%; }
  .elementor-lightbox .elementor-lightbox-item {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    padding: 70px;
    box-sizing: border-box;
    height: 100%;
    margin: auto; }
    @media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
      .elementor-lightbox .elementor-lightbox-item {
        padding: 70px 0; } }
  .elementor-lightbox .elementor-lightbox-image {
    max-height: 100%;
    user-select: none; }
    .elementor-lightbox .elementor-lightbox-image, .elementor-lightbox .elementor-lightbox-image:hover {
      opacity: 1;
      filter: none;
      border: none; }
  .elementor-lightbox .elementor-lightbox-image, .elementor-lightbox .elementor-video-container {
    box-shadow: 0 0 30px rgba(0, 0, 0, 0.3), 0 0 8px -5px rgba(0, 0, 0, 0.3);
    border-radius: 2px; }
  .elementor-lightbox .elementor-video-container {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); }
    @media (min-width: ELEMENTOR_SCREEN_TABLET_NEXT) {
      .elementor-lightbox .elementor-video-container {
        width: 75%; } }
    @media (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
      .elementor-lightbox .elementor-video-container {
        width: 100%; } }
  @media (min-width: 768px) and (max-width: 1024px) {
    .elementor-lightbox .elementor-aspect-ratio-916 .elementor-video-container {
      width: 70%; } }
  .elementor-lightbox .elementor-swiper-button:focus {
    outline-width: 1px; }
  .elementor-lightbox .elementor-swiper-button-prev, .elementor-lightbox .elementor-swiper-button-next {
    height: 100%;
    display: flex;
    align-items: center;
    width: 15%;
    justify-content: center;
    font-size: var(--lightbox-navigation-icons-size); }
  .elementor-lightbox .elementor-swiper-button-prev {
    left: 0; }
  .elementor-lightbox .elementor-swiper-button-next {
    right: 0; }
  @media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
    .elementor-lightbox .elementor-swiper-button:focus {
      outline: none; }
    .elementor-lightbox .elementor-swiper-button-prev, .elementor-lightbox .elementor-swiper-button-next {
      width: 20%; }
      .elementor-lightbox .elementor-swiper-button-prev i, .elementor-lightbox .elementor-swiper-button-next i {
        padding: 10px;
        background-color: rgba(0, 0, 0, 0.5); }
    .elementor-lightbox .elementor-swiper-button-prev {
      left: 0;
      justify-content: flex-start; }
    .elementor-lightbox .elementor-swiper-button-next {
      right: 0;
      justify-content: flex-end; } }

.elementor-slideshow__counter {
  color: currentColor;
  font-size: .75em;
  width: max-content; }

.elementor-slideshow__header, .elementor-slideshow__footer {
  position: absolute;
  left: 0;
  width: 100%;
  padding: 15px 20px;
  transition: 0.3s; }

.elementor-slideshow__footer {
  color: var(--lightbox-text-color); }

.elementor-slideshow__header {
  color: var(--lightbox-ui-color);
  display: flex;
  flex-direction: row-reverse;
  font-size: var(--lightbox-header-icons-size);
  padding-right: 1em;
  padding-left: 2.6em;
  top: 0;
  align-items: center;
  z-index: 10; }
  .elementor-slideshow__header > i {
    font-size: inherit;
    cursor: pointer;
    padding: .25em;
    margin: 0 .35em; }
    .elementor-slideshow__header > i:hover {
      color: var(--lightbox-ui-color-hover); }
  .elementor-slideshow__header .elementor-slideshow__counter {
    margin-left: auto; }
  .elementor-slideshow__header .elementor-icon-share {
    z-index: 5; }

.elementor-slideshow__share-menu {
  background-color: rgba(0, 0, 0, 0);
  width: 0;
  height: 0;
  position: absolute;
  overflow: hidden;
  transition: background-color 400ms; }
  .elementor-slideshow__share-menu .elementor-slideshow__share-links a {
    color: #2C2C2C; }

.elementor-slideshow__share-links {
  display: block;
  position: absolute;
  min-width: 200px;
  left: 2.8em;
  top: 3em;
  background-color: #fff;
  border-radius: 3px;
  padding: 14px 20px;
  transform: scale(0);
  opacity: 0;
  transform-origin: 90% 10%;
  transition: all 250ms 100ms;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3); }
  .elementor-slideshow__share-links a {
    text-align: right;
    color: #55595c;
    font-size: 12px;
    line-height: 2.5;
    display: block;
    opacity: 0;
    transition: opacity 500ms 100ms; }
    .elementor-slideshow__share-links a:hover {
      color: #000; }
    .elementor-slideshow__share-links a i {
      font-size: 1.25em;
      margin-left: 0.75em; }
  .elementor-slideshow__share-links:before {
    content: '';
    display: block;
    position: absolute;
    top: 1px;
    left: 0.5em;
    border: .45em solid;
    border-color: transparent transparent #fff transparent;
    transform: translateY(-100%) scaleX(0.7); }

.elementor-slideshow__footer {
  bottom: 0;
  z-index: 5;
  position: fixed; }

.elementor-slideshow__title, .elementor-slideshow__description {
  margin: 0; }

.elementor-slideshow__title {
  font-size: 16px;
  font-weight: bold; }

.elementor-slideshow__description {
  font-size: 14px; }

.elementor-slideshow--ui-hidden .elementor-slideshow__header, .elementor-slideshow--ui-hidden .elementor-slideshow__footer {
  opacity: 0;
  pointer-events: none; }

.elementor-slideshow--ui-hidden .elementor-swiper-button-prev, .elementor-slideshow--ui-hidden .elementor-swiper-button-next {
  opacity: 0; }

.elementor-slideshow--fullscreen-mode .elementor-video-container {
  width: 100%; }

.elementor-slideshow--zoom-mode .elementor-slideshow__header, .elementor-slideshow--zoom-mode .elementor-slideshow__footer {
  background-color: rgba(0, 0, 0, 0.5); }

.elementor-slideshow--zoom-mode .elementor-swiper-button-prev, .elementor-slideshow--zoom-mode .elementor-swiper-button-next {
  opacity: 0;
  pointer-events: none; }

.elementor-slideshow--share-mode .elementor-slideshow__share-menu {
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  opacity: 1;
  cursor: default;
  background-color: rgba(0, 0, 0, 0.5); }

.elementor-slideshow--share-mode .elementor-slideshow__share-links {
  transform: scale(1); }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links, .elementor-slideshow--share-mode .elementor-slideshow__share-links a {
    opacity: 1; }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-twitter {
    color: #1DA1F2; }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-facebook {
    color: #3b5998; }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-pinterest {
    color: #bd081c; }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-download-bold {
    color: #a4afb7; }

.elementor-slideshow--share-mode .eicon-share-arrow {
  z-index: 2; }

.animated {
  animation-duration: 1.25s; }
  .animated.animated-slow {
    animation-duration: 2s; }
  .animated.animated-fast {
    animation-duration: .75s; }
  .animated.infinite {
    animation-iteration-count: infinite; }
  .animated.reverse {
    animation-direction: reverse;
    animation-fill-mode: forwards; }

@media (prefers-reduced-motion: reduce) {
  .animated {
    animation: none; } }

.elementor-shape {
  overflow: hidden;
  position: absolute;
  left: 0;
  width: 100%;
  line-height: 0;
  direction: ltr;
  /*
	 * @TODO: The `z-index: -1` rules below are temporary fixes for Chrome 85 issue.
	 *   It will be removed in a future version of Chrome.
	 */ }
  .elementor-shape-top {
    top: -1px; }
    .elementor-shape-top:not([data-negative="false"]) svg {
      z-index: -1; }
  .elementor-shape-bottom {
    bottom: -1px; }
    .elementor-shape-bottom:not([data-negative="true"]) svg {
      z-index: -1; }
  .elementor-shape[data-negative="false"].elementor-shape-bottom {
    transform: rotate(180deg); }
  .elementor-shape[data-negative="true"].elementor-shape-top {
    transform: rotate(180deg); }
  .elementor-shape svg {
    display: block;
    width: calc(100% + 1.3px);
    position: relative;
    left: 50%;
    transform: translateX(-50%); }
  .elementor-shape .elementor-shape-fill {
    fill: #fff;
    transform-origin: center;
    transform: rotateY(0deg); }

#wp-admin-bar-elementor_edit_page .ab-submenu .ab-item {
  display: flex;
  width: 200px; }

#wp-admin-bar-elementor_edit_page .elementor-edit-link-title {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  width: 100%; }

#wp-admin-bar-elementor_edit_page .elementor-edit-link-type {
  background: #55595c;
  font-size: 11px;
  line-height: 9px;
  margin-top: 6px;
  padding: 4px 8px;
  border-radius: 3px; }

.page-template-elementor_canvas.elementor-page:before {
  display: none; }

.elementor-post__thumbnail__link {
  transition: none; }

#left-area ul.elementor-icon-list-items,
.elementor .elementor-element ul.elementor-icon-list-items,
.elementor-edit-area .elementor-element ul.elementor-icon-list-items {
  padding: 0; }

#wpadminbar * {
  font-style: normal; }

.e--ua-appleWebkit.rtl {
  --flex-right: flex-start; }

.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-right,
.e--ua-appleWebkit .elementor-share-buttons--align-right {
  --justify-content: var(--flex-right, flex-end); }

.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-center,
.e--ua-appleWebkit .elementor-share-buttons--align-center {
  --justify-content: center; }

.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-justify .elementor-grid {
  width: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: var(--justify-content, space-between);
  margin-left: calc(-0.5 * var(--grid-column-gap));
  margin-right: calc(-0.5 * var(--grid-column-gap)); }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-justify .elementor-grid-item {
    margin-left: calc(0.5 * var(--grid-column-gap));
    margin-right: calc(0.5 * var(--grid-column-gap)); }

.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid {
  display: inline-block; }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid-item {
    margin-left: 0;
    margin-right: 0; }

@media (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
  .e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-tablet-right,
  .e--ua-appleWebkit .elementor-share-buttons-tablet--align-right {
    --justify-content: var(--flex-right, flex-end); }
  .e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-tablet-center,
  .e--ua-appleWebkit .elementor-share-buttons-tablet--align-center {
    --justify-content: center; }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-justify .elementor-grid {
    width: auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: var(--justify-content, space-between);
    margin-left: calc(-0.5 * var(--grid-column-gap));
    margin-right: calc(-0.5 * var(--grid-column-gap)); }
    .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-justify .elementor-grid-item {
      margin-left: calc(0.5 * var(--grid-column-gap));
      margin-right: calc(0.5 * var(--grid-column-gap)); }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid {
    display: inline-block; }
    .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid-item {
      margin-left: 0;
      margin-right: 0; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-mobile-right,
  .e--ua-appleWebkit .elementor-share-buttons-mobile--align-right {
    --justify-content: var(--flex-right, flex-end); }
  .e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-mobile-center,
  .e--ua-appleWebkit .elementor-share-buttons-mobile--align-center {
    --justify-content: center; }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-justify .elementor-grid {
    width: auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: var(--justify-content, space-between);
    margin-left: calc(-0.5 * var(--grid-column-gap));
    margin-right: calc(-0.5 * var(--grid-column-gap)); }
    .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-justify .elementor-grid-item {
      margin-left: calc(0.5 * var(--grid-column-gap));
      margin-right: calc(0.5 * var(--grid-column-gap)); }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid {
    display: inline-block; }
    .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid-item {
      margin-left: 0;
      margin-right: 0; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor .elementor-hidden-mobile {
    display: none; }
  .elementor .elementor-hidden-phone {
    display: none; } }

@media (min-width: ELEMENTOR_SCREEN_MOBILE_EXTRA_MIN) and (max-width: ELEMENTOR_SCREEN_MOBILE_EXTRA_MAX) {
  .elementor .elementor-hidden-mobile_extra {
    display: none; } }

@media (min-width: ELEMENTOR_SCREEN_TABLET_MIN) and (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
  .elementor .elementor-hidden-tablet {
    display: none; } }

@media (min-width: ELEMENTOR_SCREEN_TABLET_EXTRA_MIN) and (max-width: ELEMENTOR_SCREEN_TABLET_EXTRA_MAX) {
  .elementor .elementor-hidden-tablet_extra {
    display: none; } }

@media (min-width: ELEMENTOR_SCREEN_LAPTOP_MIN) and (max-width: ELEMENTOR_SCREEN_LAPTOP_MAX) {
  .elementor .elementor-hidden-laptop {
    display: none; } }

@media (min-width: ELEMENTOR_SCREEN_DESKTOP_MIN) and (max-width: ELEMENTOR_SCREEN_DESKTOP_MAX) {
  .elementor .elementor-hidden-desktop {
    display: none; } }

@media (min-width: ELEMENTOR_SCREEN_WIDESCREEN_MIN) {
  .elementor .elementor-hidden-widescreen {
    display: none; } }

.elementor-widget-text-path {
  font-size: 20px;
  text-align: var(--alignment, right); }
  .elementor-widget-text-path svg {
    width: var(--width);
    max-width: 100%;
    height: auto;
    overflow: visible;
    word-spacing: var(--word-spacing);
    transform: rotate(var(--rotate, 0)) scaleX(var(--scale-x, 1)) scaleY(var(--scale-y, 1)); }
    .elementor-widget-text-path svg path {
      vector-effect: non-scaling-stroke;
      /* Prevent stroke size scaling when resizing the SVG. */
      fill: var(--path-fill, transparent);
      stroke: var(--stroke-color, transparent);
      stroke-width: var(--stroke-width, 1px);
      transition: var(--stroke-transition) stroke, var(--stroke-transition) fill; }
    .elementor-widget-text-path svg:hover path {
      --path-fill: var( --path-fill-hover );
      --stroke-color: var( --stroke-color-hover );
      --stroke-width: var( --stroke-width-hover ); }
    .elementor-widget-text-path svg text {
      --fill: var( --text-color );
      fill: var(--fill);
      direction: var(--direction, rtl);
      transition: var(--transition) stroke, var(--transition) stroke-width, var(--transition) fill; }
      .elementor-widget-text-path svg text:hover {
        --color: var( --text-color-hover, var( --text-color ) );
        --fill: var( --color );
        color: var(--color); }

.elementor-accordion {
  text-align: right; }
  .elementor-accordion .elementor-accordion-item {
    border: 1px solid #D4D4D4; }
    .elementor-accordion .elementor-accordion-item + .elementor-accordion-item {
      border-top: none; }
  .elementor-accordion .elementor-tab-title {
    margin: 0;
    padding: 15px 20px;
    font-weight: bold;
    line-height: 1;
    cursor: pointer;
    outline: none; }
    .elementor-accordion .elementor-tab-title .elementor-accordion-icon {
      display: inline-block;
      width: 1.5em; }
      .elementor-accordion .elementor-tab-title .elementor-accordion-icon svg {
        width: 1em;
        height: 1em; }
      .elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-right {
        float: right;
        text-align: right; }
      .elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-left {
        float: left;
        text-align: left; }
      .elementor-accordion .elementor-tab-title .elementor-accordion-icon .elementor-accordion-icon-closed {
        display: block; }
      .elementor-accordion .elementor-tab-title .elementor-accordion-icon .elementor-accordion-icon-opened {
        display: none; }
    .elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-closed {
      display: none; }
    .elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-opened {
      display: block; }
  .elementor-accordion .elementor-tab-content {
    display: none;
    padding: 15px 20px;
    border-top: 1px solid #D4D4D4; }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-accordion .elementor-tab-title {
    padding: 12px 15px; }
    .elementor-accordion .elementor-tab-title .elementor-accordion-icon {
      width: 1.2em; }
  .elementor-accordion .elementor-tab-content {
    padding: 7px 15px; } }

.elementor-alert {
  padding: 15px;
  border-left: 5px solid transparent;
  position: relative;
  text-align: right; }
  .elementor-alert .elementor-alert-title {
    display: block;
    font-weight: bold; }
  .elementor-alert .elementor-alert-description {
    font-size: 13px; }
  .elementor-alert button.elementor-alert-dismiss {
    position: absolute;
    left: 10px;
    top: 10px;
    padding: 3px;
    font-size: 20px;
    line-height: 1;
    background: transparent;
    color: inherit;
    border: none;
    cursor: pointer; }
  .elementor-alert.elementor-alert-info {
    color: #31708f;
    background-color: #d9edf7;
    border-color: #bcdff1; }
  .elementor-alert.elementor-alert-success {
    color: #3c763d;
    background-color: #dff0d8;
    border-color: #cae6be; }
  .elementor-alert.elementor-alert-warning {
    color: #8a6d3b;
    background-color: #fcf8e3;
    border-color: #f9f0c3; }
  .elementor-alert.elementor-alert-danger {
    color: #a94442;
    background-color: #f2dede;
    border-color: #e8c4c4; }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-alert {
    padding: 10px; }
    .elementor-alert button.elementor-alert-dismiss {
      right: 7px;
      top: 7px; } }

.elementor-counter .elementor-counter-number-wrapper {
  display: flex;
  font-size: 69px;
  font-weight: 600;
  line-height: 1; }

.elementor-counter .elementor-counter-number-prefix, .elementor-counter .elementor-counter-number-suffix {
  flex-grow: 1;
  white-space: pre-wrap; }

.elementor-counter .elementor-counter-number-prefix {
  text-align: left; }

.elementor-counter .elementor-counter-number-suffix {
  text-align: right; }

.elementor-counter .elementor-counter-title {
  text-align: center;
  font-size: 19px;
  font-weight: 400;
  line-height: 2.5; }

.elementor-widget-divider {
  --divider-border-style: none;
  --divider-border-width: 1px;
  --divider-color: #2C2C2C;
  --divider-icon-size: 20px;
  --divider-element-spacing: 10px;
  --divider-pattern-height: 24px;
  --divider-pattern-size: 20px;
  --divider-pattern-url: none;
  --divider-pattern-repeat: repeat-x; }
  .elementor-widget-divider .elementor-divider {
    display: flex; }
    .elementor-widget-divider .elementor-divider__text {
      font-size: 15px;
      line-height: 1;
      max-width: 95%; }
    .elementor-widget-divider .elementor-divider__element {
      margin: 0 var(--divider-element-spacing);
      flex-shrink: 0; }
  .elementor-widget-divider .elementor-icon {
    font-size: var(--divider-icon-size); }
  .elementor-widget-divider .elementor-divider-separator {
    display: flex;
    margin: 0;
    direction: ltr; }
  .elementor-widget-divider--view-line_text .elementor-divider-separator, .elementor-widget-divider--view-line_icon .elementor-divider-separator {
    align-items: center; }
    .elementor-widget-divider--view-line_text .elementor-divider-separator:before, .elementor-widget-divider--view-line_text .elementor-divider-separator:after, .elementor-widget-divider--view-line_icon .elementor-divider-separator:before, .elementor-widget-divider--view-line_icon .elementor-divider-separator:after {
      display: block;
      content: '';
      border-bottom: 0;
      flex-grow: 1;
      border-top: var(--divider-border-width) var(--divider-border-style) var(--divider-color); }
  .elementor-widget-divider--element-align-left .elementor-divider .elementor-divider-separator > .elementor-divider__svg:first-of-type {
    flex-grow: 0;
    flex-shrink: 100; }
  .elementor-widget-divider--element-align-left .elementor-divider-separator:before {
    content: none; }
  .elementor-widget-divider--element-align-left .elementor-divider__element {
    margin-left: 0; }
  .elementor-widget-divider--element-align-right .elementor-divider .elementor-divider-separator > .elementor-divider__svg:last-of-type {
    flex-grow: 0;
    flex-shrink: 100; }
  .elementor-widget-divider--element-align-right .elementor-divider-separator:after {
    content: none; }
  .elementor-widget-divider--element-align-right .elementor-divider__element {
    margin-right: 0; }
  .elementor-widget-divider:not(.elementor-widget-divider--view-line_text):not(.elementor-widget-divider--view-line_icon) .elementor-divider-separator {
    border-top: var(--divider-border-width) var(--divider-border-style) var(--divider-color); }
  .elementor-widget-divider--separator-type-pattern {
    --divider-border-style: none; }
    .elementor-widget-divider--separator-type-pattern.elementor-widget-divider--view-line .elementor-divider-separator,
    .elementor-widget-divider--separator-type-pattern:not([class*=elementor-widget-divider--view]) .elementor-divider-separator,
    .elementor-widget-divider--separator-type-pattern:not(.elementor-widget-divider--view-line) .elementor-divider-separator:before,
    .elementor-widget-divider--separator-type-pattern:not(.elementor-widget-divider--view-line) .elementor-divider-separator:after {
      width: 100%;
      min-height: var(--divider-pattern-height);
      -webkit-mask-size: var(--divider-pattern-size) 100%;
      mask-size: var(--divider-pattern-size) 100%;
      -webkit-mask-repeat: var(--divider-pattern-repeat);
      mask-repeat: var(--divider-pattern-repeat);
      background-color: var(--divider-color);
      -webkit-mask-image: var(--divider-pattern-url);
      mask-image: var(--divider-pattern-url); }
  .elementor-widget-divider--no-spacing {
    --divider-pattern-size: auto; }
  .elementor-widget-divider--bg-round {
    --divider-pattern-repeat: round; }

.rtl .elementor-widget-divider .elementor-divider__text {
  direction: rtl; }

.elementor-image-gallery .gallery-item {
  display: inline-block;
  text-align: center;
  vertical-align: top;
  width: 100%;
  max-width: 100%;
  margin: 0 auto; }
  .elementor-image-gallery .gallery-item img {
    margin: 0 auto; }
  .elementor-image-gallery .gallery-item .gallery-caption {
    margin: 0; }

.elementor-image-gallery figure img {
  display: block; }

.elementor-image-gallery figure figcaption {
  width: 100%; }

.gallery-spacing-custom .elementor-image-gallery .gallery-icon {
  padding: 0; }

@media (min-width: ELEMENTOR_SCREEN_MOBILE_NEXT) {
  .elementor-image-gallery .gallery-columns-2 .gallery-item {
    max-width: 50%; }
  .elementor-image-gallery .gallery-columns-3 .gallery-item {
    max-width: 33.33%; }
  .elementor-image-gallery .gallery-columns-4 .gallery-item {
    max-width: 25%; }
  .elementor-image-gallery .gallery-columns-5 .gallery-item {
    max-width: 20%; }
  .elementor-image-gallery .gallery-columns-6 .gallery-item {
    max-width: 16.666%; }
  .elementor-image-gallery .gallery-columns-7 .gallery-item {
    max-width: 14.28%; }
  .elementor-image-gallery .gallery-columns-8 .gallery-item {
    max-width: 12.5%; }
  .elementor-image-gallery .gallery-columns-9 .gallery-item {
    max-width: 11.11%; }
  .elementor-image-gallery .gallery-columns-10 .gallery-item {
    max-width: 10%; } }

@media (min-width: 480px) and (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-image-gallery .gallery.gallery-columns-2 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-3 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-4 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-5 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-6 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-7 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-8 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-9 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-10 .gallery-item {
    max-width: 50%; } }

@media (max-width: 479px) {
  .elementor-image-gallery .gallery.gallery-columns-2 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-3 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-4 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-5 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-6 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-7 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-8 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-9 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-10 .gallery-item {
    max-width: 100%; } }

.elementor-widget-google_maps .elementor-widget-container {
  overflow: hidden; }

.elementor-widget-google_maps iframe {
  height: 300px; }

.elementor-heading-title {
  padding: 0;
  margin: 0;
  line-height: 1; }

.elementor-widget-heading .elementor-heading-title[class*="elementor-size-"] > a {
  color: inherit;
  font-size: inherit;
  line-height: inherit; }

.elementor-widget-heading .elementor-heading-title.elementor-size-small {
  font-size: 15px; }

.elementor-widget-heading .elementor-heading-title.elementor-size-medium {
  font-size: 19px; }

.elementor-widget-heading .elementor-heading-title.elementor-size-large {
  font-size: 29px; }

.elementor-widget-heading .elementor-heading-title.elementor-size-xl {
  font-size: 39px; }

.elementor-widget-heading .elementor-heading-title.elementor-size-xxl {
  font-size: 59px; }

@media (min-width: ELEMENTOR_SCREEN_MOBILE_NEXT) {
  .elementor-widget-icon-box.elementor-position-left .elementor-icon-box-wrapper, .elementor-widget-icon-box.elementor-position-right .elementor-icon-box-wrapper {
    display: flex; }
  .elementor-widget-icon-box.elementor-position-left .elementor-icon-box-icon, .elementor-widget-icon-box.elementor-position-right .elementor-icon-box-icon {
    display: inline-flex;
    flex: 0 0 auto; }
  .elementor-widget-icon-box.elementor-position-right .elementor-icon-box-wrapper {
    text-align: left;
    flex-direction: row; }
  .elementor-widget-icon-box.elementor-position-left .elementor-icon-box-wrapper {
    text-align: right;
    flex-direction: row-reverse; }
  .elementor-widget-icon-box.elementor-position-top .elementor-icon-box-img {
    margin: auto; }
  .elementor-widget-icon-box.elementor-vertical-align-top .elementor-icon-box-wrapper {
    align-items: flex-start; }
  .elementor-widget-icon-box.elementor-vertical-align-middle .elementor-icon-box-wrapper {
    align-items: center; }
  .elementor-widget-icon-box.elementor-vertical-align-bottom .elementor-icon-box-wrapper {
    align-items: flex-end; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-widget-icon-box .elementor-icon-box-icon {
    margin-left: auto !important;
    margin-right: auto !important;
    margin-bottom: 15px; } }

.elementor-widget-icon-box .elementor-icon-box-wrapper {
  text-align: center; }

.elementor-widget-icon-box .elementor-icon-box-title a {
  color: inherit; }

.elementor-widget-icon-box .elementor-icon-box-content {
  flex-grow: 1; }

.elementor-widget-icon-box .elementor-icon-box-description {
  margin: 0; }

.elementor-widget.elementor-icon-list--layout-inline .elementor-widget-container {
  overflow: hidden; }

.elementor-widget .elementor-icon-list-items.elementor-inline-items {
  margin-right: -8px;
  margin-left: -8px; }
  .elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item {
    margin-right: 8px;
    margin-left: 8px; }
    .elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after {
      width: auto;
      left: auto;
      right: auto;
      position: relative;
      height: 100%;
      top: 50%;
      transform: translateY(-50%);
      border-top: 0;
      border-bottom: 0;
      border-right: 0;
      border-left-width: 1px;
      border-style: solid;
      left: -8px; }

.elementor-widget .elementor-icon-list-items {
  list-style-type: none;
  margin: 0;
  padding: 0; }

.elementor-widget .elementor-icon-list-item {
  margin: 0;
  padding: 0;
  position: relative; }
  .elementor-widget .elementor-icon-list-item:after {
    position: absolute;
    bottom: 0;
    width: 100%; }
  .elementor-widget .elementor-icon-list-item, .elementor-widget .elementor-icon-list-item a {
    display: flex;
    align-items: center;
    font-size: inherit; }

.elementor-widget .elementor-icon-list-icon + .elementor-icon-list-text {
  align-self: center;
  padding-right: 5px; }

.elementor-widget .elementor-icon-list-icon {
  display: flex; }
  .elementor-widget .elementor-icon-list-icon svg {
    width: var(--e-icon-list-icon-size, 1em);
    height: var(--e-icon-list-icon-size, 1em); }
  .elementor-widget .elementor-icon-list-icon i {
    width: 1.25em;
    font-size: var(--e-icon-list-icon-size); }

.elementor-widget.elementor-widget-icon-list .elementor-icon-list-icon {
  text-align: var(--e-icon-list-icon-align); }
  .elementor-widget.elementor-widget-icon-list .elementor-icon-list-icon svg {
    margin: var(--e-icon-list-icon-margin, 0 calc(var(--e-icon-list-icon-size, 1em) * 0.25) 0 0); }

.elementor-widget.elementor-list-item-link-full_width a {
  width: 100%; }

.elementor-widget.elementor-align-center .elementor-icon-list-item, .elementor-widget.elementor-align-center .elementor-icon-list-item a {
  justify-content: center; }

.elementor-widget.elementor-align-center .elementor-icon-list-item:after {
  margin: auto; }

.elementor-widget.elementor-align-center .elementor-inline-items {
  justify-content: center; }

.elementor-widget.elementor-align-left .elementor-icon-list-item, .elementor-widget.elementor-align-left .elementor-icon-list-item a {
  justify-content: flex-end;
  text-align: left; }

.elementor-widget.elementor-align-left .elementor-inline-items {
  justify-content: flex-end; }

.elementor-widget.elementor-align-right .elementor-icon-list-item, .elementor-widget.elementor-align-right .elementor-icon-list-item a {
  justify-content: flex-start;
  text-align: right; }

.elementor-widget.elementor-align-right .elementor-icon-list-items {
  justify-content: flex-start; }

.elementor-widget:not(.elementor-align-right) .elementor-icon-list-item:after {
  right: 0; }

.elementor-widget:not(.elementor-align-left) .elementor-icon-list-item:after {
  left: 0; }

@media (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
  .elementor-widget.elementor-tablet-align-center .elementor-icon-list-items {
    justify-content: center; }
  .elementor-widget.elementor-tablet-align-center .elementor-icon-list-item, .elementor-widget.elementor-tablet-align-center .elementor-icon-list-item a {
    justify-content: center; }
  .elementor-widget.elementor-tablet-align-center .elementor-icon-list-item:after {
    margin: auto; }
  .elementor-widget.elementor-tablet-align-left .elementor-icon-list-items {
    justify-content: flex-end; }
  .elementor-widget.elementor-tablet-align-left .elementor-icon-list-item, .elementor-widget.elementor-tablet-align-left .elementor-icon-list-item a {
    justify-content: flex-end;
    text-align: left; }
  .elementor-widget.elementor-tablet-align-right .elementor-icon-list-items {
    justify-content: flex-start; }
  .elementor-widget.elementor-tablet-align-right .elementor-icon-list-item, .elementor-widget.elementor-tablet-align-right .elementor-icon-list-item a {
    justify-content: flex-start;
    text-align: right; }
  .elementor-widget:not(.elementor-tablet-align-right) .elementor-icon-list-item:after {
    right: 0; }
  .elementor-widget:not(.elementor-tablet-align-left) .elementor-icon-list-item:after {
    left: 0; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-widget.elementor-mobile-align-center .elementor-icon-list-items {
    justify-content: center; }
  .elementor-widget.elementor-mobile-align-center .elementor-icon-list-item, .elementor-widget.elementor-mobile-align-center .elementor-icon-list-item a {
    justify-content: center; }
  .elementor-widget.elementor-mobile-align-center .elementor-icon-list-item:after {
    margin: auto; }
  .elementor-widget.elementor-mobile-align-left .elementor-icon-list-items {
    justify-content: flex-end; }
  .elementor-widget.elementor-mobile-align-left .elementor-icon-list-item, .elementor-widget.elementor-mobile-align-left .elementor-icon-list-item a {
    justify-content: flex-end;
    text-align: left; }
  .elementor-widget.elementor-mobile-align-right .elementor-icon-list-items {
    justify-content: flex-start; }
  .elementor-widget.elementor-mobile-align-right .elementor-icon-list-item, .elementor-widget.elementor-mobile-align-right .elementor-icon-list-item a {
    justify-content: flex-start;
    text-align: right; }
  .elementor-widget:not(.elementor-mobile-align-right) .elementor-icon-list-item:after {
    right: 0; }
  .elementor-widget:not(.elementor-mobile-align-left) .elementor-icon-list-item:after {
    left: 0; } }

.elementor-widget-image {
  text-align: center; }
  .elementor-widget-image a {
    display: inline-block; }
    .elementor-widget-image a img[src$=".svg"] {
      width: 48px; }
  .elementor-widget-image img {
    vertical-align: middle;
    display: inline-block; }

.elementor-widget-image-box .elementor-image-box-content {
  width: 100%; }

@media (min-width: ELEMENTOR_SCREEN_MOBILE_NEXT) {
  .elementor-widget-image-box.elementor-position-left .elementor-image-box-wrapper, .elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper {
    display: flex; }
  .elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper {
    text-align: left;
    flex-direction: row; }
  .elementor-widget-image-box.elementor-position-left .elementor-image-box-wrapper {
    text-align: right;
    flex-direction: row-reverse; }
  .elementor-widget-image-box.elementor-position-top .elementor-image-box-img {
    margin: auto; }
  .elementor-widget-image-box.elementor-vertical-align-top .elementor-image-box-wrapper {
    align-items: flex-start; }
  .elementor-widget-image-box.elementor-vertical-align-middle .elementor-image-box-wrapper {
    align-items: center; }
  .elementor-widget-image-box.elementor-vertical-align-bottom .elementor-image-box-wrapper {
    align-items: flex-end; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-widget-image-box .elementor-image-box-img {
    margin-left: auto !important;
    margin-right: auto !important;
    margin-bottom: 15px; } }

.elementor-widget-image-box .elementor-image-box-img {
  display: inline-block; }

.elementor-widget-image-box .elementor-image-box-title a {
  color: inherit; }

.elementor-widget-image-box .elementor-image-box-wrapper {
  text-align: center; }

.elementor-widget-image-box .elementor-image-box-description {
  margin: 0; }

.elementor-widget-image-carousel .swiper-container {
  position: static; }
  .elementor-widget-image-carousel .swiper-container .swiper-slide figure {
    line-height: inherit; }

.elementor-widget-image-carousel .swiper-slide {
  text-align: center; }

.elementor-image-carousel-wrapper:not(.swiper-container-initialized) .swiper-slide {
  max-width: calc(100% / var(--e-image-carousel-slides-to-show, 3)); }

body.elementor-page .elementor-widget-menu-anchor {
  margin-bottom: 0; }

.elementor-widget-progress {
  text-align: right; }

.elementor-progress-wrapper {
  position: relative;
  background-color: #eeeeee;
  color: #ffffff;
  height: 100%;
  border-radius: 2px; }

.elementor-progress-bar {
  display: flex;
  background-color: #818a91;
  width: 0;
  font-size: 11px;
  height: 30px;
  line-height: 30px;
  border-radius: 2px;
  transition: width 1s ease-in-out; }

.elementor-progress-text {
  flex-grow: 1;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  padding-right: 15px; }

.elementor-progress-percentage {
  padding-left: 15px; }

.elementor-widget-progress .elementor-progress-wrapper.progress-info .elementor-progress-bar {
  background-color: #5bc0de; }

.elementor-widget-progress .elementor-progress-wrapper.progress-success .elementor-progress-bar {
  background-color: #5cb85c; }

.elementor-widget-progress .elementor-progress-wrapper.progress-warning .elementor-progress-bar {
  background-color: #f0ad4e; }

.elementor-widget-progress .elementor-progress-wrapper.progress-danger .elementor-progress-bar {
  background-color: #d9534f; }

.elementor-progress .elementor-title {
  display: block; }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-progress-text {
    padding-right: 10px; } }

.elementor-widget-social-icons {
  /*TODO: This Grid-0 needs to be removed after PRO is Updated */ }
  .elementor-widget-social-icons.elementor-grid-0 .elementor-widget-container, .elementor-widget-social-icons.elementor-grid-tablet-0 .elementor-widget-container, .elementor-widget-social-icons.elementor-grid-mobile-0 .elementor-widget-container {
    line-height: 1;
    font-size: 0; }
  .elementor-widget-social-icons:not(.elementor-grid-0):not(.elementor-grid-tablet-0):not(.elementor-grid-mobile-0) .elementor-grid {
    display: inline-grid; }
  .elementor-widget-social-icons .elementor-grid {
    grid-column-gap: var(--grid-column-gap, 5px);
    grid-row-gap: var(--grid-row-gap, 5px);
    grid-template-columns: var(--grid-template-columns);
    justify-content: var(--justify-content, center);
    justify-items: var(--justify-content, center); }

.elementor-icon.elementor-social-icon {
  font-size: var(--icon-size, 25px);
  line-height: var(--icon-size, 25px);
  width: calc(var(--icon-size, 25px) + (2 * var(--icon-padding, 0.5em)));
  height: calc(var(--icon-size, 25px) + (2 * var(--icon-padding, 0.5em))); }

.elementor-social-icon {
  --e-social-icon-icon-color: #fff;
  display: inline-flex;
  background-color: #818a91;
  align-items: center;
  justify-content: center;
  text-align: center;
  cursor: pointer; }
  .elementor-social-icon i {
    color: var(--e-social-icon-icon-color); }
  .elementor-social-icon svg {
    fill: var(--e-social-icon-icon-color); }
  .elementor-social-icon:last-child {
    margin: 0; }
  .elementor-social-icon:hover {
    opacity: .9;
    color: white; }
  .elementor-social-icon-android {
    background-color: #A4C639; }
  .elementor-social-icon-apple {
    background-color: #999999; }
  .elementor-social-icon-behance {
    background-color: #1769ff; }
  .elementor-social-icon-bitbucket {
    background-color: #205081; }
  .elementor-social-icon-codepen {
    background-color: #000000; }
  .elementor-social-icon-delicious {
    background-color: #3399ff; }
  .elementor-social-icon-deviantart {
    background-color: #05cc47; }
  .elementor-social-icon-digg {
    background-color: #005be2; }
  .elementor-social-icon-dribbble {
    background-color: #ea4c89; }
  .elementor-social-icon-elementor {
    background-color: #D30C5C; }
  .elementor-social-icon-envelope {
    background-color: #ea4335; }
  .elementor-social-icon-facebook, .elementor-social-icon-facebook-f {
    background-color: #3b5998; }
  .elementor-social-icon-flickr {
    background-color: #0063dc; }
  .elementor-social-icon-foursquare {
    background-color: #2d5be3; }
  .elementor-social-icon-freecodecamp, .elementor-social-icon-free-code-camp {
    background-color: #006400; }
  .elementor-social-icon-github {
    background-color: #333333; }
  .elementor-social-icon-gitlab {
    background-color: #e24329; }
  .elementor-social-icon-globe {
    background-color: #818a91; }
  .elementor-social-icon-google-plus, .elementor-social-icon-google-plus-g {
    background-color: #dd4b39; }
  .elementor-social-icon-houzz {
    background-color: #7ac142; }
  .elementor-social-icon-instagram {
    background-color: #262626; }
  .elementor-social-icon-jsfiddle {
    background-color: #487AA2; }
  .elementor-social-icon-link {
    background-color: #818a91; }
  .elementor-social-icon-linkedin, .elementor-social-icon-linkedin-in {
    background-color: #0077b5; }
  .elementor-social-icon-medium {
    background-color: #00ab6b; }
  .elementor-social-icon-meetup {
    background-color: #ec1c40; }
  .elementor-social-icon-mixcloud {
    background-color: #273a4b; }
  .elementor-social-icon-odnoklassniki {
    background-color: #F4731C; }
  .elementor-social-icon-pinterest {
    background-color: #bd081c; }
  .elementor-social-icon-product-hunt {
    background-color: #da552f; }
  .elementor-social-icon-reddit {
    background-color: #ff4500; }
  .elementor-social-icon-rss {
    background-color: #f26522; }
  .elementor-social-icon-shopping-cart {
    background-color: #4CAF50; }
  .elementor-social-icon-skype {
    background-color: #00AFF0; }
  .elementor-social-icon-slideshare {
    background-color: #0077b5; }
  .elementor-social-icon-snapchat {
    background-color: #fffc00; }
  .elementor-social-icon-soundcloud {
    background-color: #ff8800; }
  .elementor-social-icon-spotify {
    background-color: #2ebd59; }
  .elementor-social-icon-stack-overflow {
    background-color: #fe7a15; }
  .elementor-social-icon-steam {
    background-color: #00adee; }
  .elementor-social-icon-stumbleupon {
    background-color: #EB4924; }
  .elementor-social-icon-telegram {
    background-color: #2CA5E0; }
  .elementor-social-icon-thumb-tack {
    background-color: #1aa1d8; }
  .elementor-social-icon-tripadvisor {
    background-color: #589442; }
  .elementor-social-icon-tumblr {
    background-color: #35465c; }
  .elementor-social-icon-twitch {
    background-color: #6441A5; }
  .elementor-social-icon-twitter {
    background-color: #1DA1F2; }
  .elementor-social-icon-viber {
    background-color: #665cac; }
  .elementor-social-icon-vimeo {
    background-color: #1ab7ea; }
  .elementor-social-icon-vk {
    background-color: #45668e; }
  .elementor-social-icon-weibo {
    background-color: #DD2430; }
  .elementor-social-icon-weixin {
    background-color: #31A918; }
  .elementor-social-icon-whatsapp {
    background-color: #25d366; }
  .elementor-social-icon-wordpress {
    background-color: #21759b; }
  .elementor-social-icon-xing {
    background-color: #026466; }
  .elementor-social-icon-yelp {
    background-color: #af0606; }
  .elementor-social-icon-youtube {
    background-color: #cd201f; }
  .elementor-social-icon-500px {
    background-color: #0099e5; }

.elementor-shape-rounded .elementor-icon.elementor-social-icon {
  border-radius: 10%; }

.elementor-shape-circle .elementor-icon.elementor-social-icon {
  border-radius: 50%; }

.elementor-star-rating {
  color: #CCD6DF;
  font-family: eicons;
  display: inline-block; }
  .elementor-star-rating i {
    display: inline-block;
    position: relative;
    font-style: normal;
    cursor: default; }
    .elementor-star-rating i:before {
      content: '\e934';
      display: block;
      font-size: inherit;
      font-family: inherit;
      position: absolute;
      overflow: hidden;
      color: #f0ad4e;
      top: 0;
      right: 0; }
  .elementor-star-rating .elementor-star-empty:before {
    content: none; }
  .elementor-star-rating .elementor-star-1:before {
    width: 10%; }
  .elementor-star-rating .elementor-star-2:before {
    width: 20%; }
  .elementor-star-rating .elementor-star-3:before {
    width: 30%; }
  .elementor-star-rating .elementor-star-4:before {
    width: 40%; }
  .elementor-star-rating .elementor-star-5:before {
    width: 50%; }
  .elementor-star-rating .elementor-star-6:before {
    width: 60%; }
  .elementor-star-rating .elementor-star-7:before {
    width: 70%; }
  .elementor-star-rating .elementor-star-8:before {
    width: 80%; }
  .elementor-star-rating .elementor-star-9:before {
    width: 90%; }
  .elementor-star-rating__wrapper {
    display: flex;
    align-items: center; }
  .elementor-star-rating__title {
    margin-left: 10px; }

.elementor-star-rating--align-right .elementor-star-rating__wrapper {
  text-align: right;
  justify-content: flex-start; }

.elementor-star-rating--align-left .elementor-star-rating__wrapper {
  text-align: left;
  justify-content: flex-end; }

.elementor-star-rating--align-center .elementor-star-rating__wrapper {
  text-align: center;
  justify-content: center; }

.elementor-star-rating--align-justify .elementor-star-rating__title {
  margin-left: auto; }

@media (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
  .elementor-star-rating-tablet--align-right .elementor-star-rating__wrapper {
    text-align: right;
    justify-content: flex-start; }
  .elementor-star-rating-tablet--align-left .elementor-star-rating__wrapper {
    text-align: left;
    justify-content: flex-end; }
  .elementor-star-rating-tablet--align-center .elementor-star-rating__wrapper {
    text-align: center;
    justify-content: center; }
  .elementor-star-rating-tablet--align-justify .elementor-star-rating__title {
    margin-left: auto; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-star-rating-mobile--align-right .elementor-star-rating__wrapper {
    text-align: right;
    justify-content: flex-start; }
  .elementor-star-rating-mobile--align-left .elementor-star-rating__wrapper {
    text-align: left;
    justify-content: flex-end; }
  .elementor-star-rating-mobile--align-center .elementor-star-rating__wrapper {
    text-align: center;
    justify-content: center; }
  .elementor-star-rating-mobile--align-justify .elementor-star-rating__title {
    margin-left: auto; } }

.last-star {
  letter-spacing: 0; }

.elementor--star-style-star_unicode .elementor-star-rating {
  font-family: 'Arial', 'Helvetica', sans-serif; }
  .elementor--star-style-star_unicode .elementor-star-rating i:not(.elementor-star-empty):before {
    content: '\002605'; }

.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-wrapper {
  width: 25%;
  flex-shrink: 0; }

.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active {
  border-left-style: none; }
  .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:before, .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:after {
    height: 999em;
    width: 0;
    left: 0;
    border-left-style: solid; }
  .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:before {
    top: 0;
    transform: translateY(-100%); }
  .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:after {
    top: 100%; }

.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title {
  display: table-cell; }
  .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active {
    border-bottom-style: none; }
    .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:before, .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:after {
      bottom: 0;
      height: 0;
      width: 999em;
      border-bottom-style: solid; }
    .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:before {
      right: 100%; }
    .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:after {
      left: 100%; }

.elementor-widget-tabs .elementor-tab-title,
.elementor-widget-tabs .elementor-tab-title:before,
.elementor-widget-tabs .elementor-tab-title:after,
.elementor-widget-tabs .elementor-tab-content,
.elementor-widget-tabs .elementor-tabs-content-wrapper {
  border: 1px none #D4D4D4; }

.elementor-widget-tabs .elementor-tabs {
  text-align: right; }

.elementor-widget-tabs .elementor-tabs-wrapper {
  overflow: hidden; }

.elementor-widget-tabs .elementor-tab-title {
  cursor: pointer;
  outline: var(--focus-outline, none); }

.elementor-widget-tabs .elementor-tab-desktop-title {
  position: relative;
  padding: 20px 25px;
  font-weight: bold;
  line-height: 1;
  border: solid transparent; }
  .elementor-widget-tabs .elementor-tab-desktop-title.elementor-active {
    border-color: #D4D4D4; }
    .elementor-widget-tabs .elementor-tab-desktop-title.elementor-active:before, .elementor-widget-tabs .elementor-tab-desktop-title.elementor-active:after {
      display: block;
      content: '';
      position: absolute; }

.elementor-widget-tabs .elementor-tab-mobile-title {
  padding: 10px 10px;
  cursor: pointer; }

.elementor-widget-tabs .elementor-tab-content {
  padding: 20px;
  display: none; }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-tabs .elementor-tab-title,
  .elementor-tabs .elementor-tab-content {
    border-style: solid;
    border-bottom-style: none; }
  .elementor-tabs .elementor-tabs-wrapper {
    display: none; }
  .elementor-tabs .elementor-tabs-content-wrapper {
    border-bottom-style: solid; }
  .elementor-tabs .elementor-tab-content {
    padding: 10px; } }

@media (min-width: ELEMENTOR_SCREEN_MOBILE_NEXT) {
  .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs {
    display: flex; }
  .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-wrapper {
    flex-direction: column; }
  .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-content-wrapper {
    flex-grow: 1;
    border-style: solid;
    border-right-style: none; }
  .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-content {
    border-style: solid;
    border-top-style: none; }
  .elementor-widget-tabs.elementor-tabs-alignment-center .elementor-tabs-wrapper, .elementor-widget-tabs.elementor-tabs-alignment-end .elementor-tabs-wrapper, .elementor-widget-tabs.elementor-tabs-alignment-stretch .elementor-tabs-wrapper {
    display: flex; }
  .elementor-widget-tabs.elementor-tabs-alignment-center .elementor-tabs-wrapper {
    justify-content: center; }
  .elementor-widget-tabs.elementor-tabs-alignment-end .elementor-tabs-wrapper {
    justify-content: flex-end; }
  .elementor-widget-tabs.elementor-tabs-alignment-stretch.elementor-tabs-view-horizontal .elementor-tab-title {
    width: 100%; }
  .elementor-widget-tabs.elementor-tabs-alignment-stretch.elementor-tabs-view-vertical .elementor-tab-title {
    height: 100%; }
  .elementor-tabs .elementor-tab-mobile-title {
    display: none; } }

.elementor-testimonial-wrapper {
  overflow: hidden;
  text-align: center; }
  .elementor-testimonial-wrapper .elementor-testimonial-content {
    font-size: 1.3em;
    margin-bottom: 20px; }
  .elementor-testimonial-wrapper .elementor-testimonial-name {
    line-height: 1.5;
    display: block; }
  .elementor-testimonial-wrapper .elementor-testimonial-job {
    font-size: 0.85em;
    display: block; }
  .elementor-testimonial-wrapper .elementor-testimonial-meta {
    width: 100%;
    line-height: 1; }
    .elementor-testimonial-wrapper .elementor-testimonial-meta-inner {
      display: inline-block; }
    .elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-details,
    .elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-image {
      display: table-cell;
      vertical-align: middle; }
    .elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-image img {
      width: 60px;
      height: 60px;
      border-radius: 50%;
      object-fit: cover;
      max-width: none; }
    .elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-aside .elementor-testimonial-image {
      padding-left: 15px; }
    .elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-aside .elementor-testimonial-details {
      text-align: right; }
    .elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-details,
    .elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-image {
      display: block; }
    .elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-image {
      margin-bottom: 20px; }

.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap {
  background-color: #818a91;
  color: #fff; }

.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap {
  color: #818a91;
  border: 3px solid;
  background-color: transparent; }

.elementor-widget-text-editor:not(.elementor-drop-cap-view-default) .elementor-drop-cap {
  margin-top: 8px; }
  .elementor-widget-text-editor:not(.elementor-drop-cap-view-default) .elementor-drop-cap-letter {
    width: 1em;
    height: 1em; }

.elementor-widget-text-editor .elementor-drop-cap {
  float: right;
  text-align: center;
  line-height: 1;
  font-size: 50px; }
  .elementor-widget-text-editor .elementor-drop-cap-letter {
    display: inline-block; }

.elementor-toggle {
  text-align: right; }
  .elementor-toggle .elementor-tab-title {
    font-weight: bold;
    line-height: 1;
    margin: 0;
    padding: 15px;
    border-bottom: 1px solid #D4D4D4;
    cursor: pointer;
    outline: none; }
    .elementor-toggle .elementor-tab-title .elementor-toggle-icon {
      display: inline-block;
      width: 1em; }
      .elementor-toggle .elementor-tab-title .elementor-toggle-icon svg {
        margin-inline-start: -5px;
        width: 1em;
        height: 1em; }
      .elementor-toggle .elementor-tab-title .elementor-toggle-icon.elementor-toggle-icon-right {
        float: right;
        text-align: right; }
      .elementor-toggle .elementor-tab-title .elementor-toggle-icon.elementor-toggle-icon-left {
        float: left;
        text-align: left; }
      .elementor-toggle .elementor-tab-title .elementor-toggle-icon .elementor-toggle-icon-closed {
        display: block; }
      .elementor-toggle .elementor-tab-title .elementor-toggle-icon .elementor-toggle-icon-opened {
        display: none; }
    .elementor-toggle .elementor-tab-title.elementor-active {
      border-bottom: none; }
      .elementor-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon-closed {
        display: none; }
      .elementor-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon-opened {
        display: block; }
  .elementor-toggle .elementor-tab-content {
    padding: 15px;
    border-bottom: 1px solid #D4D4D4;
    display: none; }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-toggle .elementor-tab-title {
    padding: 12px; }
  .elementor-toggle .elementor-tab-content {
    padding: 12px 10px; } }

.elementor-widget-video .elementor-widget-container {
  overflow: hidden;
  transform: translate3d(0, 0, 0); }

.elementor-widget-video .elementor-open-inline .elementor-custom-embed-image-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: 50%; }

.elementor-widget-video .elementor-custom-embed-image-overlay {
  cursor: pointer;
  text-align: center; }
  .elementor-widget-video .elementor-custom-embed-image-overlay:hover .elementor-custom-embed-play i {
    opacity: 1; }
  .elementor-widget-video .elementor-custom-embed-image-overlay img {
    display: block;
    width: 100%; }

.elementor-widget-video .e-hosted-video .elementor-video {
  object-fit: cover; }
assets/css/templates/frontend-legacy.min.css000064400000007451151327220410015215 0ustar00.elementor-bc-flex-widget .elementor-section-content-top>.elementor-container>.elementor-row>.elementor-column>.elementor-column-wrap{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.elementor-bc-flex-widget .elementor-section-content-middle>.elementor-container>.elementor-row>.elementor-column>.elementor-column-wrap{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-bc-flex-widget .elementor-section-content-bottom>.elementor-container>.elementor-row>.elementor-column>.elementor-column-wrap{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.elementor-column-gap-narrow>.elementor-row>.elementor-column>.elementor-element-populated{padding:5px}.elementor-column-gap-default>.elementor-row>.elementor-column>.elementor-element-populated{padding:10px}.elementor-column-gap-extended>.elementor-row>.elementor-column>.elementor-element-populated{padding:15px}.elementor-column-gap-wide>.elementor-row>.elementor-column>.elementor-element-populated{padding:20px}.elementor-column-gap-wider>.elementor-row>.elementor-column>.elementor-element-populated{padding:30px}@media (min-width:ELEMENTOR_SCREEN_MOBILE_NEXT) and (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-reverse-tablet>.elementor-container>.elementor-row>:first-child{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(2){-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(3){-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(4){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(5){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(6){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(7){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(8){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(9){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(10){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-reverse-mobile>.elementor-container>.elementor-row>:first-child{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(2){-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(3){-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(4){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(5){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(6){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(7){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(8){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(9){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(10){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.elementor-column{width:100%}}assets/css/templates/frontend-lite-rtl.css000064400000276112151327220410014725 0ustar00.dialog-widget-content {
  background-color: #fff;
  position: absolute;
  border-radius: 3px;
  box-shadow: 2px 8px 23px 3px rgba(0, 0, 0, 0.2);
  overflow: hidden; }

.dialog-message {
  font-size: 12px;
  line-height: 1.5;
  box-sizing: border-box; }

.dialog-type-lightbox {
  position: fixed;
  height: 100%;
  width: 100%;
  bottom: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 9999;
  user-select: none; }
  .dialog-type-lightbox .dialog-widget-content {
    margin: auto;
    width: 375px; }
  .dialog-type-lightbox .dialog-header {
    font-size: 15px;
    color: #495157;
    padding: 30px 0 10px;
    font-weight: 500; }
  .dialog-type-lightbox .dialog-message {
    padding: 0 30px 30px;
    min-height: 50px; }
  .dialog-type-lightbox:not(.elementor-popup-modal) .dialog-header,
  .dialog-type-lightbox:not(.elementor-popup-modal) .dialog-message {
    text-align: center; }
  .dialog-type-lightbox .dialog-buttons-wrapper {
    border-top: 1px solid #e6e9ec;
    text-align: center; }
    .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button {
      font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
      width: 50%;
      border: none;
      background: none;
      color: #6d7882;
      font-size: 15px;
      cursor: pointer;
      padding: 13px 0;
      outline: 0; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button:hover {
        background-color: #f4f6f7; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button.dialog-ok {
        color: #b01b1b; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button.dialog-take_over {
        color: #39b54a; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button:active {
        background-color: rgba(230, 233, 236, 0.5); }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button::-moz-focus-inner {
        border: 0; }

.dialog-close-button {
  cursor: pointer;
  position: absolute;
  margin-top: 15px;
  left: 15px;
  font-size: 15px;
  line-height: 1; }
  .dialog-close-button:not(:hover) {
    opacity: .4; }

.dialog-alert-widget .dialog-buttons-wrapper > button {
  width: 100%; }

.dialog-confirm-widget .dialog-button:first-child {
  border-left: 1px solid #e6e9ec; }

.dialog-prevent-scroll {
  overflow: hidden;
  max-height: 100vh; }

@media (min-width: 1024px) {
  body.admin-bar .dialog-lightbox-widget {
    height: calc(100vh - 32px); } }

@media (max-width: 1024px) {
  body.admin-bar .dialog-type-lightbox {
    position: sticky;
    height: 100vh; } }

.elementor-aspect-ratio-219 .elementor-fit-aspect-ratio {
  padding-bottom: 42.8571%; }

.elementor-aspect-ratio-169 .elementor-fit-aspect-ratio {
  padding-bottom: 56.25%; }

.elementor-aspect-ratio-43 .elementor-fit-aspect-ratio {
  padding-bottom: 75%; }

.elementor-aspect-ratio-32 .elementor-fit-aspect-ratio {
  padding-bottom: 66.6666%; }

.elementor-aspect-ratio-11 .elementor-fit-aspect-ratio {
  padding-bottom: 100%; }

.elementor-aspect-ratio-916 .elementor-fit-aspect-ratio {
  padding-bottom: 177.8%; }

.elementor-fit-aspect-ratio {
  position: relative;
  height: 0; }
  .elementor-fit-aspect-ratio iframe {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    border: 0;
    background-color: #000; }
  .elementor-fit-aspect-ratio video {
    width: 100%; }

.flatpickr-calendar {
  width: 280px; }
  .flatpickr-calendar .flatpickr-current-month span.cur-month {
    font-weight: 300; }
  .flatpickr-calendar .dayContainer {
    width: 280px;
    min-width: 280px;
    max-width: 280px; }
  .flatpickr-calendar .flatpickr-days {
    width: 280px; }
  .flatpickr-calendar .flatpickr-day {
    max-width: 37px;
    height: 37px;
    line-height: 37px; }

.elementor-templates-modal .dialog-widget-content {
  font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
  background-color: #f1f3f5;
  width: 100%; }
  @media (max-width: 1439px) {
    .elementor-templates-modal .dialog-widget-content {
      max-width: 990px; } }
  @media (min-width: 1440px) {
    .elementor-templates-modal .dialog-widget-content {
      max-width: 1200px; } }

.elementor-templates-modal .dialog-header {
  padding: 0;
  background-color: #fff;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
  position: relative;
  z-index: 1; }

.elementor-templates-modal .dialog-buttons-wrapper {
  background-color: #fff;
  border: none;
  display: none;
  justify-content: flex-end;
  padding: 5px;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
  position: relative; }
  .elementor-templates-modal .dialog-buttons-wrapper .elementor-button {
    height: 40px;
    margin-right: 5px; }
    .elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success {
      padding: 12px 36px;
      color: #fff;
      width: initial;
      font-size: 15px; }
      .elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success:hover {
        background-color: #39b54a; }

.elementor-templates-modal .dialog-message {
  height: 750px;
  max-height: 85vh;
  overflow: auto;
  padding-top: 25px; }

.elementor-templates-modal .dialog-content {
  height: 100%; }

.elementor-templates-modal .dialog-loading {
  display: none; }

.elementor-templates-modal__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 50px; }
  .elementor-templates-modal__header__logo {
    line-height: 1;
    text-transform: uppercase;
    font-weight: bold;
    cursor: pointer; }
    .elementor-templates-modal__header__logo-area {
      text-align: right;
      padding-right: 15px; }
      .elementor-templates-modal__header__logo-area > * {
        display: flex;
        align-items: center; }
    .elementor-templates-modal__header__logo__icon-wrapper {
      margin-left: 10px;
      font-size: 12px; }
    .elementor-templates-modal__header__logo__title {
      padding-top: 2px; }
  .elementor-templates-modal__header__items-area {
    display: flex;
    flex-direction: row-reverse; }
  .elementor-templates-modal__header__item {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: content-box; }
    .elementor-templates-modal__header__item > i {
      font-size: 20px;
      transition: all 0.3s;
      cursor: pointer; }
      .elementor-templates-modal__header__item > i:not(:hover) {
        color: #a4afb7; }
  .elementor-templates-modal__header__close--normal {
    width: 47px;
    border-right: 1px solid #e6e9ec; }
    .elementor-templates-modal__header__close--normal i {
      font-size: 18px; }
  .elementor-templates-modal__header__close--skip {
    padding: 10px;
    padding-right: 20px;
    margin-left: 10px;
    color: #fff;
    background-color: #a4afb7;
    font-size: 11px;
    font-weight: normal;
    line-height: 1;
    text-transform: uppercase;
    border-radius: 2px;
    cursor: pointer; }
    .elementor-templates-modal__header__close--skip > i {
      font-size: inherit;
      padding-right: 10px;
      margin-right: 15px;
      border-right: 1px solid; }
      .elementor-templates-modal__header__close--skip > i:not(:hover) {
        color: #fff; }

.elementor-templates-modal__sidebar {
  flex-shrink: 0;
  width: 25%;
  background-color: rgba(255, 255, 255, 0.3); }

.elementor-templates-modal__content {
  flex-grow: 1;
  box-shadow: 0 0 13px inset rgba(0, 0, 0, 0.05); }

/* Will select next element after last '.elementor-general-section' */
#wpadminbar #wp-admin-bar-elementor_edit_page .elementor-general-section + .elementor-second-section {
  border-top: 1px solid #464b50;
  margin-top: 6px; }

.elementor-hidden {
  display: none; }

.elementor-screen-only,
.screen-reader-text,
.screen-reader-text span,
.ui-helper-hidden-accessible {
  position: absolute;
  top: -10000em;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0; }

.elementor-clearfix:after {
  content: '';
  display: block;
  clear: both;
  width: 0;
  height: 0; }

.e-logo-wrapper {
  background: #93003c;
  display: inline-block;
  padding: 0.75em;
  border-radius: 50%;
  line-height: 1; }
  .e-logo-wrapper i {
    color: #fff;
    font-size: 1em; }

.elementor {
  hyphens: manual; }
  .elementor *, .elementor *:before, .elementor *:after {
    box-sizing: border-box; }
  .elementor a {
    box-shadow: none;
    text-decoration: none; }
  .elementor hr {
    margin: 0;
    background-color: transparent; }
  .elementor img {
    height: auto;
    max-width: 100%;
    border: none;
    border-radius: 0;
    box-shadow: none; }
  .elementor .elementor-widget:not(.elementor-widget-text-editor):not(.elementor-widget-theme-post-content) figure {
    margin: 0; }
  .elementor embed,
  .elementor iframe,
  .elementor object,
  .elementor video {
    max-width: 100%;
    width: 100%;
    margin: 0;
    line-height: 1;
    border: none; }
  .elementor .elementor-custom-embed {
    line-height: 0; }
  .elementor .elementor-background-video-container,
  .elementor .elementor-background-holder,
  .elementor .elementor-background {
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    position: absolute;
    overflow: hidden;
    z-index: 0;
    direction: ltr; }
  .elementor .elementor-background-video-container {
    transition: opacity 1s;
    pointer-events: none; }
    .elementor .elementor-background-video-container.elementor-loading {
      opacity: 0; }
  .elementor .elementor-background-video-embed {
    max-width: none; }
  .elementor .elementor-background-video-embed, .elementor .elementor-background-video-hosted {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); }
  .elementor .elementor-background-video {
    max-width: none;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); }
  .elementor .elementor-html5-video {
    object-fit: cover; }
  .elementor .elementor-background-overlay {
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    position: absolute; }
  .elementor .elementor-background-slideshow {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 0;
    top: 0;
    right: 0; }
    .elementor .elementor-background-slideshow__slide__image {
      width: 100%;
      height: 100%;
      background-position: center center;
      background-size: cover; }

.elementor-widget-wrap > .elementor-element.elementor-absolute {
  position: absolute; }
  .elementor-column > .elementor-widget-wrap > .elementor-element.elementor-absolute {
    padding: inherit;
    box-sizing: content-box; }

.elementor-widget-wrap > .elementor-element.elementor-fixed {
  position: fixed; }

.elementor-widget-wrap .elementor-element.elementor-widget__width-auto, .elementor-widget-wrap .elementor-element.elementor-widget__width-initial {
  max-width: 100%; }

@media (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
  .elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-auto, .elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-initial {
    max-width: 100%; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-auto, .elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-initial {
    max-width: 100%; } }

.elementor-element.elementor-absolute, .elementor-element.elementor-fixed {
  z-index: 1; }

.elementor-invisible {
  visibility: hidden; }

.elementor-align-center {
  text-align: center; }
  .elementor-align-center .elementor-button {
    width: auto; }

.elementor-align-right {
  text-align: right; }
  .elementor-align-right .elementor-button {
    width: auto; }

.elementor-align-left {
  text-align: left; }
  .elementor-align-left .elementor-button {
    width: auto; }

.elementor-align-justify .elementor-button {
  width: 100%; }

.elementor-custom-embed-play {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); }
  .elementor-custom-embed-play i {
    font-size: 100px;
    color: #fff;
    text-shadow: 1px 0 6px rgba(0, 0, 0, 0.3); }
  .elementor-custom-embed-play svg {
    height: 100px;
    width: 100px;
    fill: #fff;
    filter: drop-shadow(1px 0 6px rgba(0, 0, 0, 0.3)); }
  .elementor-custom-embed-play i,
  .elementor-custom-embed-play svg {
    opacity: 0.8;
    transition: all .5s; }
  .elementor-custom-embed-play.elementor-playing i {
    font-family: eicons;
    animation: fa-spin 2s infinite linear; }
    .elementor-custom-embed-play.elementor-playing i:before {
      content: '\e8fb'; }

.elementor-tag {
  display: inline-flex; }

.elementor-ken-burns {
  transition-property: transform;
  transition-duration: 10s;
  transition-timing-function: linear; }
  .elementor-ken-burns--out {
    transform: scale(1.3); }
  .elementor-ken-burns--active {
    transition-duration: 20s; }
    .elementor-ken-burns--active.elementor-ken-burns--out {
      transform: scale(1); }
    .elementor-ken-burns--active.elementor-ken-burns--in {
      transform: scale(1.3); }

@media (min-width: ELEMENTOR_SCREEN_WIDESCREEN_MIN) {
  .elementor-widescreen-align-center {
    text-align: center; }
    .elementor-widescreen-align-center .elementor-button {
      width: auto; }
  .elementor-widescreen-align-right {
    text-align: right; }
    .elementor-widescreen-align-right .elementor-button {
      width: auto; }
  .elementor-widescreen-align-left {
    text-align: left; }
    .elementor-widescreen-align-left .elementor-button {
      width: auto; }
  .elementor-widescreen-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: ELEMENTOR_SCREEN_LAPTOP_MAX) {
  .elementor-laptop-align-center {
    text-align: center; }
    .elementor-laptop-align-center .elementor-button {
      width: auto; }
  .elementor-laptop-align-right {
    text-align: right; }
    .elementor-laptop-align-right .elementor-button {
      width: auto; }
  .elementor-laptop-align-left {
    text-align: left; }
    .elementor-laptop-align-left .elementor-button {
      width: auto; }
  .elementor-laptop-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: ELEMENTOR_SCREEN_TABLET_EXTRA_MAX) {
  .elementor-tablet_extra-align-center {
    text-align: center; }
    .elementor-tablet_extra-align-center .elementor-button {
      width: auto; }
  .elementor-tablet_extra-align-right {
    text-align: right; }
    .elementor-tablet_extra-align-right .elementor-button {
      width: auto; }
  .elementor-tablet_extra-align-left {
    text-align: left; }
    .elementor-tablet_extra-align-left .elementor-button {
      width: auto; }
  .elementor-tablet_extra-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
  .elementor-tablet-align-center {
    text-align: center; }
    .elementor-tablet-align-center .elementor-button {
      width: auto; }
  .elementor-tablet-align-right {
    text-align: right; }
    .elementor-tablet-align-right .elementor-button {
      width: auto; }
  .elementor-tablet-align-left {
    text-align: left; }
    .elementor-tablet-align-left .elementor-button {
      width: auto; }
  .elementor-tablet-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_EXTRA_MAX) {
  .elementor-mobile_extra-align-center {
    text-align: center; }
    .elementor-mobile_extra-align-center .elementor-button {
      width: auto; }
  .elementor-mobile_extra-align-right {
    text-align: right; }
    .elementor-mobile_extra-align-right .elementor-button {
      width: auto; }
  .elementor-mobile_extra-align-left {
    text-align: left; }
    .elementor-mobile_extra-align-left .elementor-button {
      width: auto; }
  .elementor-mobile_extra-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-mobile-align-center {
    text-align: center; }
    .elementor-mobile-align-center .elementor-button {
      width: auto; }
  .elementor-mobile-align-right {
    text-align: right; }
    .elementor-mobile-align-right .elementor-button {
      width: auto; }
  .elementor-mobile-align-left {
    text-align: left; }
    .elementor-mobile-align-left .elementor-button {
      width: auto; }
  .elementor-mobile-align-justify .elementor-button {
    width: 100%; } }

#wpadminbar #wp-admin-bar-elementor_edit_page > .ab-item::before {
  content: "\e813";
  font-family: eicons;
  top: 3px;
  font-size: 18px; }

#wpadminbar #wp-admin-bar-elementor_inspector > .ab-item::before {
  content: "\f348";
  top: 2px; }

:root {
  --page-title-display: block; }

.elementor-page-title, h1.entry-title {
  display: var(--page-title-display); }

.elementor-section {
  position: relative; }
  .elementor-section .elementor-container {
    display: flex;
    margin-right: auto;
    margin-left: auto;
    position: relative; }
    @media (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
      .elementor-section .elementor-container {
        flex-wrap: wrap; } }
  .elementor-section.elementor-section-boxed > .elementor-container {
    max-width: 1140px; }
  .elementor-section.elementor-section-stretched {
    position: relative;
    width: 100%; }
  .elementor-section.elementor-section-items-top > .elementor-container {
    align-items: flex-start; }
  .elementor-section.elementor-section-items-middle > .elementor-container {
    align-items: center; }
  .elementor-section.elementor-section-items-bottom > .elementor-container {
    align-items: flex-end; }
  @media (min-width: ELEMENTOR_SCREEN_MOBILE_NEXT) {
    .elementor-section.elementor-section-height-full {
      height: 100vh; }
      .elementor-section.elementor-section-height-full > .elementor-container {
        height: 100%; } }

.elementor-bc-flex-widget .elementor-section-content-top > .elementor-container > .elementor-column > .elementor-widget-wrap {
  align-items: flex-start; }

.elementor-bc-flex-widget .elementor-section-content-middle > .elementor-container > .elementor-column > .elementor-widget-wrap {
  align-items: center; }

.elementor-bc-flex-widget .elementor-section-content-bottom > .elementor-container > .elementor-column > .elementor-widget-wrap {
  align-items: flex-end; }

.elementor-row {
  width: 100%;
  display: flex; }
  @media (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
    .elementor-row {
      flex-wrap: wrap; } }

.elementor-widget-wrap {
  position: relative;
  width: 100%;
  flex-wrap: wrap;
  align-content: flex-start; }
  .elementor:not(.elementor-bc-flex-widget) .elementor-widget-wrap {
    display: flex; }
  .elementor-widget-wrap > .elementor-element {
    width: 100%; }

.elementor-widget {
  position: relative; }
  .elementor-widget:not(:last-child) {
    margin-bottom: 20px; }
    .elementor-widget:not(:last-child).elementor-widget__width-auto, .elementor-widget:not(:last-child).elementor-widget__width-initial, .elementor-widget:not(:last-child).elementor-absolute {
      margin-bottom: 0; }

.elementor-column {
  position: relative;
  min-height: 1px;
  display: flex; }

.elementor-column-wrap {
  width: 100%;
  position: relative;
  display: flex; }

.elementor-column-gap-narrow > .elementor-column > .elementor-element-populated {
  padding: 5px; }

.elementor-column-gap-default > .elementor-column > .elementor-element-populated {
  padding: 10px; }

.elementor-column-gap-extended > .elementor-column > .elementor-element-populated {
  padding: 15px; }

.elementor-column-gap-wide > .elementor-column > .elementor-element-populated {
  padding: 20px; }

.elementor-column-gap-wider > .elementor-column > .elementor-element-populated {
  padding: 30px; }

.elementor-inner-section .elementor-column-gap-no .elementor-element-populated {
  padding: 0; }

@media (min-width: ELEMENTOR_SCREEN_MOBILE_NEXT) {
  .elementor-column.elementor-col-10, .elementor-column[data-col="10"] {
    width: 10%; }
  .elementor-column.elementor-col-11, .elementor-column[data-col="11"] {
    width: 11.111%; }
  .elementor-column.elementor-col-12, .elementor-column[data-col="12"] {
    width: 12.5%; }
  .elementor-column.elementor-col-14, .elementor-column[data-col="14"] {
    width: 14.285%; }
  .elementor-column.elementor-col-16, .elementor-column[data-col="16"] {
    width: 16.666%; }
  .elementor-column.elementor-col-20, .elementor-column[data-col="20"] {
    width: 20%; }
  .elementor-column.elementor-col-25, .elementor-column[data-col="25"] {
    width: 25%; }
  .elementor-column.elementor-col-30, .elementor-column[data-col="30"] {
    width: 30%; }
  .elementor-column.elementor-col-33, .elementor-column[data-col="33"] {
    width: 33.333%; }
  .elementor-column.elementor-col-40, .elementor-column[data-col="40"] {
    width: 40%; }
  .elementor-column.elementor-col-50, .elementor-column[data-col="50"] {
    width: 50%; }
  .elementor-column.elementor-col-60, .elementor-column[data-col="60"] {
    width: 60%; }
  .elementor-column.elementor-col-66, .elementor-column[data-col="66"] {
    width: 66.666%; }
  .elementor-column.elementor-col-70, .elementor-column[data-col="70"] {
    width: 70%; }
  .elementor-column.elementor-col-75, .elementor-column[data-col="75"] {
    width: 75%; }
  .elementor-column.elementor-col-80, .elementor-column[data-col="80"] {
    width: 80%; }
  .elementor-column.elementor-col-83, .elementor-column[data-col="83"] {
    width: 83.333%; }
  .elementor-column.elementor-col-90, .elementor-column[data-col="90"] {
    width: 90%; }
  .elementor-column.elementor-col-100, .elementor-column[data-col="100"] {
    width: 100%; } }

@media (max-width: 479px) {
  .elementor-column.elementor-xs-10 {
    width: 10%; }
  .elementor-column.elementor-xs-11 {
    width: 11.111%; }
  .elementor-column.elementor-xs-12 {
    width: 12.5%; }
  .elementor-column.elementor-xs-14 {
    width: 14.285%; }
  .elementor-column.elementor-xs-16 {
    width: 16.666%; }
  .elementor-column.elementor-xs-20 {
    width: 20%; }
  .elementor-column.elementor-xs-25 {
    width: 25%; }
  .elementor-column.elementor-xs-30 {
    width: 30%; }
  .elementor-column.elementor-xs-33 {
    width: 33.333%; }
  .elementor-column.elementor-xs-40 {
    width: 40%; }
  .elementor-column.elementor-xs-50 {
    width: 50%; }
  .elementor-column.elementor-xs-60 {
    width: 60%; }
  .elementor-column.elementor-xs-66 {
    width: 66.666%; }
  .elementor-column.elementor-xs-70 {
    width: 70%; }
  .elementor-column.elementor-xs-75 {
    width: 75%; }
  .elementor-column.elementor-xs-80 {
    width: 80%; }
  .elementor-column.elementor-xs-83 {
    width: 83.333%; }
  .elementor-column.elementor-xs-90 {
    width: 90%; }
  .elementor-column.elementor-xs-100 {
    width: 100%; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-column.elementor-sm-10 {
    width: 10%; }
  .elementor-column.elementor-sm-11 {
    width: 11.111%; }
  .elementor-column.elementor-sm-12 {
    width: 12.5%; }
  .elementor-column.elementor-sm-14 {
    width: 14.285%; }
  .elementor-column.elementor-sm-16 {
    width: 16.666%; }
  .elementor-column.elementor-sm-20 {
    width: 20%; }
  .elementor-column.elementor-sm-25 {
    width: 25%; }
  .elementor-column.elementor-sm-30 {
    width: 30%; }
  .elementor-column.elementor-sm-33 {
    width: 33.333%; }
  .elementor-column.elementor-sm-40 {
    width: 40%; }
  .elementor-column.elementor-sm-50 {
    width: 50%; }
  .elementor-column.elementor-sm-60 {
    width: 60%; }
  .elementor-column.elementor-sm-66 {
    width: 66.666%; }
  .elementor-column.elementor-sm-70 {
    width: 70%; }
  .elementor-column.elementor-sm-75 {
    width: 75%; }
  .elementor-column.elementor-sm-80 {
    width: 80%; }
  .elementor-column.elementor-sm-83 {
    width: 83.333%; }
  .elementor-column.elementor-sm-90 {
    width: 90%; }
  .elementor-column.elementor-sm-100 {
    width: 100%; } }

@media (min-width: ELEMENTOR_SCREEN_MOBILE_NEXT) and (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
  .elementor-column.elementor-md-10 {
    width: 10%; }
  .elementor-column.elementor-md-11 {
    width: 11.111%; }
  .elementor-column.elementor-md-12 {
    width: 12.5%; }
  .elementor-column.elementor-md-14 {
    width: 14.285%; }
  .elementor-column.elementor-md-16 {
    width: 16.666%; }
  .elementor-column.elementor-md-20 {
    width: 20%; }
  .elementor-column.elementor-md-25 {
    width: 25%; }
  .elementor-column.elementor-md-30 {
    width: 30%; }
  .elementor-column.elementor-md-33 {
    width: 33.333%; }
  .elementor-column.elementor-md-40 {
    width: 40%; }
  .elementor-column.elementor-md-50 {
    width: 50%; }
  .elementor-column.elementor-md-60 {
    width: 60%; }
  .elementor-column.elementor-md-66 {
    width: 66.666%; }
  .elementor-column.elementor-md-70 {
    width: 70%; }
  .elementor-column.elementor-md-75 {
    width: 75%; }
  .elementor-column.elementor-md-80 {
    width: 80%; }
  .elementor-column.elementor-md-83 {
    width: 83.333%; }
  .elementor-column.elementor-md-90 {
    width: 90%; }
  .elementor-column.elementor-md-100 {
    width: 100%; } }

@media (min-width: ELEMENTOR_SCREEN_MOBILE_NEXT) and (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
  .elementor-reverse-tablet > .elementor-container > :nth-child(1) {
    order: 10; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(2) {
    order: 9; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(3) {
    order: 8; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(4) {
    order: 7; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(5) {
    order: 6; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(6) {
    order: 5; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(7) {
    order: 4; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(8) {
    order: 3; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(9) {
    order: 2; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(10) {
    order: 1; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-reverse-mobile > .elementor-container > :nth-child(1) {
    order: 10; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(2) {
    order: 9; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(3) {
    order: 8; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(4) {
    order: 7; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(5) {
    order: 6; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(6) {
    order: 5; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(7) {
    order: 4; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(8) {
    order: 3; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(9) {
    order: 2; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(10) {
    order: 1; }
  .elementor-column {
    width: 100%; } }

ul.elementor-icon-list-items.elementor-inline-items {
  display: flex;
  flex-wrap: wrap; }
  ul.elementor-icon-list-items.elementor-inline-items .elementor-inline-item {
    word-break: break-word; }

.elementor-grid {
  display: grid;
  grid-column-gap: var(--grid-column-gap);
  grid-row-gap: var(--grid-row-gap); }
  .elementor-grid .elementor-grid-item {
    min-width: 0; }
  .elementor-grid-0 .elementor-grid {
    display: inline-block;
    width: 100%;
    word-spacing: var(--grid-column-gap);
    margin-bottom: calc(-1 * var(--grid-row-gap)); }
    .elementor-grid-0 .elementor-grid .elementor-grid-item {
      display: inline-block;
      margin-bottom: var(--grid-row-gap);
      word-break: break-word; }
  .elementor-grid-1 .elementor-grid {
    grid-template-columns: repeat(1, 1fr); }
  .elementor-grid-2 .elementor-grid {
    grid-template-columns: repeat(2, 1fr); }
  .elementor-grid-3 .elementor-grid {
    grid-template-columns: repeat(3, 1fr); }
  .elementor-grid-4 .elementor-grid {
    grid-template-columns: repeat(4, 1fr); }
  .elementor-grid-5 .elementor-grid {
    grid-template-columns: repeat(5, 1fr); }
  .elementor-grid-6 .elementor-grid {
    grid-template-columns: repeat(6, 1fr); }
  .elementor-grid-7 .elementor-grid {
    grid-template-columns: repeat(7, 1fr); }
  .elementor-grid-8 .elementor-grid {
    grid-template-columns: repeat(8, 1fr); }
  .elementor-grid-9 .elementor-grid {
    grid-template-columns: repeat(9, 1fr); }
  .elementor-grid-10 .elementor-grid {
    grid-template-columns: repeat(10, 1fr); }
  .elementor-grid-11 .elementor-grid {
    grid-template-columns: repeat(11, 1fr); }
  .elementor-grid-12 .elementor-grid {
    grid-template-columns: repeat(12, 1fr); }
  @media (min-width: ELEMENTOR_SCREEN_WIDESCREEN_MIN) {
    .elementor-grid-widescreen-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-widescreen-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-widescreen-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-widescreen-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-widescreen-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-widescreen-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-widescreen-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-widescreen-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-widescreen-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-widescreen-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-widescreen-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-widescreen-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-widescreen-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-widescreen-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: ELEMENTOR_SCREEN_LAPTOP_MAX) {
    .elementor-grid-laptop-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-laptop-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-laptop-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-laptop-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-laptop-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-laptop-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-laptop-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-laptop-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-laptop-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-laptop-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-laptop-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-laptop-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-laptop-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-laptop-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: ELEMENTOR_SCREEN_TABLET_EXTRA_MAX) {
    .elementor-grid-tablet_extra-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-tablet_extra-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-tablet_extra-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-tablet_extra-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-tablet_extra-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-tablet_extra-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-tablet_extra-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-tablet_extra-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-tablet_extra-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-tablet_extra-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-tablet_extra-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-tablet_extra-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-tablet_extra-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-tablet_extra-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
    .elementor-grid-tablet-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-tablet-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-tablet-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-tablet-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-tablet-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-tablet-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-tablet-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-tablet-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-tablet-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-tablet-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-tablet-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-tablet-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-tablet-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-tablet-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: ELEMENTOR_SCREEN_MOBILE_EXTRA_MAX) {
    .elementor-grid-mobile_extra-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-mobile_extra-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-mobile_extra-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-mobile_extra-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-mobile_extra-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-mobile_extra-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-mobile_extra-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-mobile_extra-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-mobile_extra-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-mobile_extra-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-mobile_extra-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-mobile_extra-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-mobile_extra-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-mobile_extra-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
    .elementor-grid-mobile-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-mobile-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-mobile-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-mobile-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-mobile-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-mobile-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-mobile-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-mobile-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-mobile-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-mobile-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-mobile-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-mobile-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-mobile-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-mobile-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }

@media (min-width: ELEMENTOR_SCREEN_DESKTOP_MIN) {
  #elementor-device-mode:after {
    content: 'desktop'; } }

@media (min-width: ELEMENTOR_SCREEN_WIDESCREEN_MIN) {
  #elementor-device-mode:after {
    content: 'widescreen'; } }

@media (max-width: ELEMENTOR_SCREEN_LAPTOP_MAX) {
  #elementor-device-mode:after {
    content: 'laptop'; } }

@media (max-width: ELEMENTOR_SCREEN_TABLET_EXTRA_MAX) {
  #elementor-device-mode:after {
    content: 'tablet_extra'; } }

@media (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
  #elementor-device-mode:after {
    content: 'tablet'; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_EXTRA_MAX) {
  #elementor-device-mode:after {
    content: 'mobile_extra'; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  #elementor-device-mode:after {
    content: 'mobile'; } }

[class^="eicon"],
[class*=" eicon-"] {
  display: inline-block;
  font-family: eicons;
  font-size: inherit;
  font-weight: normal;
  font-style: normal;
  font-variant: normal;
  line-height: 1;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

@keyframes eicon-spin {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(359deg); } }

.eicon-animation-spin {
  animation: eicon-spin 2s infinite linear; }

.eicon-loading:before {
  content: '\e8fb'; }

.eicon-menu-bar:before {
  content: '\e816'; }

.eicon-chevron-right:before {
  content: '\e87d'; }

.eicon-chevron-left:before {
  content: '\e87e'; }

.eicon-close:before {
  content: '\e87f'; }

.eicon-share-arrow:before {
  content: '\e96c'; }

.eicon-zoom-in:before {
  content: '\e882'; }

.eicon-zoom-in-bold:before {
  content: '\e92e'; }

.eicon-zoom-out-bold:before {
  content: '\e943'; }

.eicon-frame-expand:before {
  content: '\e95c'; }

.eicon-frame-minimize:before {
  content: '\e95d'; }

.eicon-play:before {
  content: '\e89d'; }

.eicon-facebook:before {
  content: '\e959'; }

.eicon-twitter:before {
  content: '\e95a'; }

.eicon-pinterest:before {
  content: '\e95b'; }

.eicon-download-bold:before {
  content: '\e96b'; }

.eicon-caret-down:before {
  content: '\e92a'; }

.elementor-form-fields-wrapper {
  display: flex;
  flex-wrap: wrap; }
  .elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group > input, .elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group > textarea, .elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group > .elementor-select-wrapper, .elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group .elementor-field-subgroup {
    flex-basis: 100%;
    max-width: 100%; }
  .elementor-form-fields-wrapper.elementor-labels-inline > .elementor-field-group > input, .elementor-form-fields-wrapper.elementor-labels-inline > .elementor-field-group .elementor-select-wrapper {
    flex-grow: 1; }

.elementor-field-group {
  flex-wrap: wrap;
  align-items: center; }
  .elementor-field-group.elementor-field-type-submit {
    align-items: flex-end; }
  .elementor-field-group .elementor-field-textual {
    width: 100%;
    max-width: 100%;
    border: 1px solid #818a91;
    background-color: transparent;
    color: #373a3c;
    vertical-align: middle;
    flex-grow: 1; }
    .elementor-field-group .elementor-field-textual:focus {
      box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1) inset;
      outline: 0; }
    .elementor-field-group .elementor-field-textual::-webkit-input-placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
    .elementor-field-group .elementor-field-textual:-ms-input-placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
    .elementor-field-group .elementor-field-textual::-moz-placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
    .elementor-field-group .elementor-field-textual:-moz-placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
    .elementor-field-group .elementor-field-textual::placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
  .elementor-field-group .elementor-select-wrapper {
    display: flex;
    position: relative;
    width: 100%; }
    .elementor-field-group .elementor-select-wrapper select {
      appearance: none;
      -webkit-appearance: none;
      -moz-appearance: none;
      color: inherit;
      font-size: inherit;
      font-family: inherit;
      font-weight: inherit;
      font-style: inherit;
      text-transform: inherit;
      letter-spacing: inherit;
      line-height: inherit;
      flex-basis: 100%;
      padding-left: 20px; }
    .elementor-field-group .elementor-select-wrapper:before {
      content: '\e92a';
      font-family: 'eicons';
      font-size: 15px;
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      left: 10px;
      pointer-events: none;
      text-shadow: 0 0 3px rgba(0, 0, 0, 0.3); }
  .elementor-field-group.elementor-field-type-select-multiple .elementor-select-wrapper:before {
    content: ''; }

.elementor-field-subgroup {
  display: flex;
  flex-wrap: wrap; }
  .elementor-field-subgroup .elementor-field-option label {
    display: inline-block; }
  .elementor-field-subgroup.elementor-subgroup-inline .elementor-field-option {
    padding-left: 10px; }
  .elementor-field-subgroup:not(.elementor-subgroup-inline) .elementor-field-option {
    flex-basis: 100%; }

.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option input,
.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option label,
.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option input,
.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option label,
.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option input,
.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option label {
  display: inline; }

.elementor-field-label {
  cursor: pointer; }
  .elementor-mark-required .elementor-field-label:after {
    content: '*';
    color: red;
    padding-right: 0.2em; }

.elementor-field-textual {
  line-height: 1.4;
  font-size: 15px;
  min-height: 40px;
  padding: 5px 14px;
  border-radius: 3px; }
  .elementor-field-textual.elementor-size-xs {
    font-size: 13px;
    min-height: 33px;
    padding: 4px 12px;
    border-radius: 2px; }
  .elementor-field-textual.elementor-size-md {
    font-size: 16px;
    min-height: 47px;
    padding: 6px 16px;
    border-radius: 4px; }
  .elementor-field-textual.elementor-size-lg {
    font-size: 18px;
    min-height: 59px;
    padding: 7px 20px;
    border-radius: 5px; }
  .elementor-field-textual.elementor-size-xl {
    font-size: 20px;
    min-height: 72px;
    padding: 8px 24px;
    border-radius: 6px; }

.elementor-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
  flex-basis: 100%; }

.elementor-button-align-stretch .e-form__buttons__wrapper {
  flex-basis: 50%;
  flex-grow: 1; }
  .elementor-button-align-stretch .e-form__buttons__wrapper__button {
    flex-basis: 100%; }

.elementor-button-align-center .elementor-field-type-submit,
.elementor-button-align-center .e-form__buttons {
  justify-content: center; }

.elementor-button-align-start .elementor-field-type-submit,
.elementor-button-align-start .e-form__buttons {
  justify-content: flex-end; }

.elementor-button-align-end .elementor-field-type-submit,
.elementor-button-align-end .e-form__buttons {
  justify-content: flex-start; }

.elementor-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
  flex-basis: initial; }

.elementor-button-align-center .e-form__buttons__wrapper, .elementor-button-align-start .e-form__buttons__wrapper, .elementor-button-align-end .e-form__buttons__wrapper {
  flex-grow: initial; }
  .elementor-button-align-center .e-form__buttons__wrapper, .elementor-button-align-center .e-form__buttons__wrapper__button, .elementor-button-align-start .e-form__buttons__wrapper, .elementor-button-align-start .e-form__buttons__wrapper__button, .elementor-button-align-end .e-form__buttons__wrapper, .elementor-button-align-end .e-form__buttons__wrapper__button {
    flex-basis: initial; }

@media screen and (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
  .elementor-tablet-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
    flex-basis: 100%; }
  .elementor-tablet-button-align-stretch .e-form__buttons__wrapper {
    flex-basis: 50%;
    flex-grow: 1; }
    .elementor-tablet-button-align-stretch .e-form__buttons__wrapper__button {
      flex-basis: 100%; }
  .elementor-tablet-button-align-center .elementor-field-type-submit,
  .elementor-tablet-button-align-center .e-form__buttons {
    justify-content: center; }
  .elementor-tablet-button-align-start .elementor-field-type-submit,
  .elementor-tablet-button-align-start .e-form__buttons {
    justify-content: flex-end; }
  .elementor-tablet-button-align-end .elementor-field-type-submit,
  .elementor-tablet-button-align-end .e-form__buttons {
    justify-content: flex-start; }
  .elementor-tablet-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-tablet-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-tablet-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
    flex-basis: initial; }
  .elementor-tablet-button-align-center .e-form__buttons__wrapper, .elementor-tablet-button-align-start .e-form__buttons__wrapper, .elementor-tablet-button-align-end .e-form__buttons__wrapper {
    flex-grow: initial; }
    .elementor-tablet-button-align-center .e-form__buttons__wrapper, .elementor-tablet-button-align-center .e-form__buttons__wrapper__button, .elementor-tablet-button-align-start .e-form__buttons__wrapper, .elementor-tablet-button-align-start .e-form__buttons__wrapper__button, .elementor-tablet-button-align-end .e-form__buttons__wrapper, .elementor-tablet-button-align-end .e-form__buttons__wrapper__button {
      flex-basis: initial; } }

@media screen and (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor-mobile-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
    flex-basis: 100%; }
  .elementor-mobile-button-align-stretch .e-form__buttons__wrapper {
    flex-basis: 50%;
    flex-grow: 1; }
    .elementor-mobile-button-align-stretch .e-form__buttons__wrapper__button {
      flex-basis: 100%; }
  .elementor-mobile-button-align-center .elementor-field-type-submit,
  .elementor-mobile-button-align-center .e-form__buttons {
    justify-content: center; }
  .elementor-mobile-button-align-start .elementor-field-type-submit,
  .elementor-mobile-button-align-start .e-form__buttons {
    justify-content: flex-end; }
  .elementor-mobile-button-align-end .elementor-field-type-submit,
  .elementor-mobile-button-align-end .e-form__buttons {
    justify-content: flex-start; }
  .elementor-mobile-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-mobile-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-mobile-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
    flex-basis: initial; }
  .elementor-mobile-button-align-center .e-form__buttons__wrapper, .elementor-mobile-button-align-start .e-form__buttons__wrapper, .elementor-mobile-button-align-end .e-form__buttons__wrapper {
    flex-grow: initial; }
    .elementor-mobile-button-align-center .e-form__buttons__wrapper, .elementor-mobile-button-align-center .e-form__buttons__wrapper__button, .elementor-mobile-button-align-start .e-form__buttons__wrapper, .elementor-mobile-button-align-start .e-form__buttons__wrapper__button, .elementor-mobile-button-align-end .e-form__buttons__wrapper, .elementor-mobile-button-align-end .e-form__buttons__wrapper__button {
      flex-basis: initial; } }

.elementor-error .elementor-field {
  border-color: #d9534f; }

.elementor-error .help-inline {
  color: #d9534f;
  font-size: 0.9em; }

.elementor-message {
  margin: 10px 0;
  font-size: 1em;
  line-height: 1; }
  .elementor-message:before {
    content: "\e90e";
    display: inline-block;
    font-family: eicons;
    font-weight: normal;
    font-style: normal;
    vertical-align: middle;
    margin-left: 5px; }
  .elementor-message.elementor-message-danger {
    color: #d9534f; }
    .elementor-message.elementor-message-danger:before {
      content: "\e87f"; }
  .elementor-message.form-message-success {
    color: #5cb85c; }

.elementor-form .elementor-button {
  padding-top: 0;
  padding-bottom: 0;
  border: none; }
  .elementor-form .elementor-button > span {
    display: flex;
    justify-content: center; }
  .elementor-form .elementor-button.elementor-size-xs {
    min-height: 33px; }
  .elementor-form .elementor-button.elementor-size-sm {
    min-height: 40px; }
  .elementor-form .elementor-button.elementor-size-md {
    min-height: 47px; }
  .elementor-form .elementor-button.elementor-size-lg {
    min-height: 59px; }
  .elementor-form .elementor-button.elementor-size-xl {
    min-height: 72px; }

.elementor-element .elementor-widget-container {
  transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s; }

.elementor-button {
  display: inline-block;
  line-height: 1;
  background-color: #818a91;
  font-size: 15px;
  padding: 12px 24px;
  border-radius: 3px;
  color: #fff;
  fill: #fff;
  text-align: center;
  transition: all 0.3s; }
  .elementor-button:hover, .elementor-button:focus, .elementor-button:visited {
    color: #fff; }
  .elementor-button-content-wrapper {
    display: flex;
    justify-content: center; }
  .elementor-button-icon {
    flex-grow: 0;
    order: 5; }
    .elementor-button-icon svg {
      width: 1em;
      height: auto; }
    .elementor-button-icon .e-font-icon-svg {
      height: 1em; }
  .elementor-button-text {
    flex-grow: 1;
    order: 10;
    display: inline-block; }
  .elementor-button.elementor-size-xs {
    font-size: 13px;
    padding: 10px 20px;
    border-radius: 2px; }
  .elementor-button.elementor-size-md {
    font-size: 16px;
    padding: 15px 30px;
    border-radius: 4px; }
  .elementor-button.elementor-size-lg {
    font-size: 18px;
    padding: 20px 40px;
    border-radius: 5px; }
  .elementor-button.elementor-size-xl {
    font-size: 20px;
    padding: 25px 50px;
    border-radius: 6px; }
  .elementor-button .elementor-align-icon-right {
    margin-left: 5px;
    order: 5; }
  .elementor-button .elementor-align-icon-left {
    margin-right: 5px;
    order: 15; }
  .elementor-button span {
    text-decoration: inherit; }

/* TODO: REMOVE THIS EXCEPTION AFTER PRO 2.8 RELEASES */
.elementor-menu-cart__toggle .elementor-button-icon {
  order: 15; }

.elementor-element.elementor-button-info .elementor-button {
  background-color: #5bc0de; }

.elementor-element.elementor-button-success .elementor-button {
  background-color: #5cb85c; }

.elementor-element.elementor-button-warning .elementor-button {
  background-color: #f0ad4e; }

.elementor-element.elementor-button-danger .elementor-button {
  background-color: #d9534f; }

.elementor-widget-button .elementor-button .elementor-button-info {
  background-color: #5bc0de; }

.elementor-widget-button .elementor-button .elementor-button-success {
  background-color: #5cb85c; }

.elementor-widget-button .elementor-button .elementor-button-warning {
  background-color: #f0ad4e; }

.elementor-widget-button .elementor-button .elementor-button-danger {
  background-color: #d9534f; }

.elementor-tab-title a {
  color: inherit; }

.elementor-view-stacked .elementor-icon {
  padding: .5em;
  background-color: #818a91;
  color: #fff;
  fill: #fff; }

.elementor-view-framed .elementor-icon {
  padding: .5em;
  color: #818a91;
  border: 3px solid #818a91;
  background-color: transparent; }

.elementor-icon {
  display: inline-block;
  line-height: 1;
  transition: all 0.3s;
  color: #818a91;
  font-size: 50px;
  text-align: center; }
  .elementor-icon:hover {
    color: #818a91; }
  .elementor-icon i, .elementor-icon svg {
    width: 1em;
    height: 1em;
    position: relative;
    display: block; }
    .elementor-icon i:before, .elementor-icon svg:before {
      position: absolute;
      left: 50%;
      transform: translateX(-50%); }
  .elementor-icon i.fad {
    width: initial; }

.elementor-shape-circle .elementor-icon {
  border-radius: 50%; }

.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  user-select: none;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block; }
  .slick-track:before, .slick-track:after {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  .elementor-slick-slider[dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

.elementor-slick-slider .slick-loading .slick-list {
  background: #fff; }
  .elementor-slick-slider .slick-loading .slick-list:after {
    content: '\e8fb';
    font-family: eicons;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    animation: fa-spin 2s infinite linear;
    font-size: 25px;
    color: #a4afb7; }

.elementor-slick-slider .slick-prev,
.elementor-slick-slider .slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 50%;
  display: block;
  width: 20px;
  padding: 0;
  transform: translate(0, -50%);
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent; }
  .elementor-slick-slider .slick-prev:hover, .elementor-slick-slider .slick-prev:focus,
  .elementor-slick-slider .slick-next:hover,
  .elementor-slick-slider .slick-next:focus {
    color: transparent;
    outline: none;
    background: transparent; }
    .elementor-slick-slider .slick-prev:hover:before, .elementor-slick-slider .slick-prev:focus:before,
    .elementor-slick-slider .slick-next:hover:before,
    .elementor-slick-slider .slick-next:focus:before {
      opacity: 1; }
  .elementor-slick-slider .slick-prev.slick-disabled:before,
  .elementor-slick-slider .slick-next.slick-disabled:before {
    opacity: .25; }
  .elementor-slick-slider .slick-prev:before,
  .elementor-slick-slider .slick-next:before {
    font-family: eicons;
    font-size: 35px;
    line-height: 1;
    opacity: .75;
    color: white;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }

.elementor-slick-slider .slick-prev {
  left: -25px; }
  [dir="rtl"] .elementor-slick-slider .slick-prev {
    left: auto;
    right: -25px; }
  .elementor-slick-slider .slick-prev:before {
    content: '\e89f'; }
    [dir="rtl"] .elementor-slick-slider .slick-prev:before {
      content: '\e89e'; }

.elementor-slick-slider .slick-next {
  right: -25px; }
  [dir="rtl"] .elementor-slick-slider .slick-next {
    left: -25px;
    right: auto; }
  .elementor-slick-slider .slick-next:before {
    content: '\e89e'; }
    [dir="rtl"] .elementor-slick-slider .slick-next:before {
      content: '\e89f'; }

.elementor-slick-slider .slick-dotted.slick-slider {
  margin-bottom: 30px; }

.elementor-slick-slider ul.slick-dots {
  position: absolute;
  bottom: -25px;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1; }
  .elementor-slick-slider ul.slick-dots li {
    position: relative;
    display: inline-block;
    width: 20px;
    height: 20px;
    margin: 0;
    padding: 0;
    cursor: pointer; }
    .elementor-slick-slider ul.slick-dots li button {
      font-size: 0;
      line-height: 0;
      display: block;
      width: 20px;
      height: 20px;
      padding: 5px;
      cursor: pointer;
      color: transparent;
      border: 0;
      outline: none;
      background: transparent; }
      .elementor-slick-slider ul.slick-dots li button:hover, .elementor-slick-slider ul.slick-dots li button:focus {
        outline: none; }
        .elementor-slick-slider ul.slick-dots li button:hover:before, .elementor-slick-slider ul.slick-dots li button:focus:before {
          opacity: 1; }
      .elementor-slick-slider ul.slick-dots li button:before {
        font-family: eicons;
        font-size: 6px;
        line-height: 20px;
        position: absolute;
        top: 0;
        left: 0;
        width: 20px;
        height: 20px;
        content: '\e914';
        text-align: center;
        opacity: .25;
        color: black;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
    .elementor-slick-slider ul.slick-dots li.slick-active button:before {
      opacity: .75;
      color: black; }

.elementor-slick-slider .slick-arrows-inside .slick-prev {
  left: 20px; }
  [dir="rtl"] .elementor-slick-slider .slick-arrows-inside .slick-prev {
    left: auto;
    right: 20px; }

.elementor-slick-slider .slick-arrows-inside .slick-next {
  right: 20px; }
  [dir="rtl"] .elementor-slick-slider .slick-arrows-inside .slick-next {
    left: 20px;
    right: auto; }

.elementor-slick-slider .slick-dots-inside .slick-dots {
  bottom: 5px; }

.elementor-slick-slider .slick-dots-inside.slick-dotted.slick-slider {
  margin-bottom: 0; }

.elementor-slick-slider .slick-slider .slick-prev,
.elementor-slick-slider .slick-slider .slick-next {
  z-index: 1; }

.elementor-slick-slider .slick-slide img {
  margin: auto; }

/**
 * Swiper 3.4.2
 * Customized by Elementor team
 */
.swiper-container {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  /* Fix of Webkit flickering */
  z-index: 1; }
  .swiper-container .swiper-slide figure {
    line-height: 0; }
  .swiper-container .elementor-lightbox-content-source {
    display: none; }

.swiper-container-no-flexbox .swiper-slide {
  float: left; }

.swiper-container-vertical > .swiper-wrapper {
  flex-direction: column; }

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  box-sizing: content-box; }

.swiper-container-android .swiper-slide, .swiper-wrapper {
  transform: translate3d(0px, 0, 0); }

.swiper-container-multirow > .swiper-wrapper {
  flex-wrap: wrap; }

.swiper-container-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto; }

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative; }

/* Auto Height */
.swiper-container-autoheight {
  height: auto; }
  .swiper-container-autoheight .swiper-slide {
    height: auto; }
  .swiper-container-autoheight .swiper-wrapper {
    align-items: flex-start;
    transition-property: transform, height; }

/* a11y */
.swiper-container .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000; }

/* IE10 Windows Phone 8 Fixes */
.swiper-wp8-horizontal {
  touch-action: pan-y; }

.swiper-wp8-vertical {
  touch-action: pan-x; }

/* Arrows */
.swiper-button-prev, .swiper-button-next {
  position: absolute;
  top: 50%;
  width: 27px;
  height: 44px;
  margin-top: -22px;
  z-index: 10;
  cursor: pointer;
  background-size: 27px 44px;
  background: no-repeat center; }

.swiper-button-prev.swiper-button-disabled, .swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none; }

.swiper-button-prev, .swiper-container-rtl .swiper-button-next {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  left: 10px;
  right: auto; }

.swiper-button-prev.swiper-button-black, .swiper-container-rtl .swiper-button-next.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-prev.swiper-button-white, .swiper-container-rtl .swiper-button-next.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-next, .swiper-container-rtl .swiper-button-prev {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  right: 10px;
  left: auto; }

.swiper-button-next.swiper-button-black, .swiper-container-rtl .swiper-button-prev.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-next.swiper-button-white, .swiper-container-rtl .swiper-button-prev.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }

/* Pagination Styles */
.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 300ms;
  transform: translate3d(0, 0, 0);
  z-index: 10; }
  .swiper-pagination.swiper-pagination-hidden {
    opacity: 0; }

/* Common Styles */
.swiper-pagination-fraction, .swiper-pagination-custom, .swiper-container-horizontal > .swiper-pagination-bullets {
  bottom: 5px;
  left: 0;
  width: 100%; }

/* Bullets */
.swiper-pagination-bullet {
  width: 6px;
  height: 6px;
  display: inline-block;
  border-radius: 50%;
  background: #000;
  opacity: 0.2; }

.swiper-pagination-fraction {
  color: #000; }

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none; }

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer; }

.swiper-pagination-white .swiper-pagination-bullet {
  background: #fff; }

.swiper-pagination-bullet-active {
  opacity: 1; }

.swiper-pagination-white .swiper-pagination-bullet-active {
  background: #fff; }

.swiper-pagination-black .swiper-pagination-bullet-active {
  background: #000; }

.swiper-container-vertical > .swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  transform: translate3d(0px, -50%, 0); }
  .swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 5px 0;
    display: block; }

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 6px; }

/* Progressbar */
.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, 0.25);
  position: absolute; }
  .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: #000;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transform: scale(0);
    transform-origin: left top; }

.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top; }

.swiper-container-horizontal > .swiper-pagination-progressbar {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0; }

.swiper-container-vertical > .swiper-pagination-progressbar {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0; }

.swiper-pagination-progressbar.swiper-pagination-white {
  background: rgba(255, 255, 255, 0.5); }
  .swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill {
    background: #fff; }

.swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill {
  background: #000; }

/* 3D Container */
.swiper-container-3d {
  perspective: 1200px; }
  .swiper-container-3d .swiper-wrapper, .swiper-container-3d .swiper-slide, .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top, .swiper-container-3d .swiper-slide-shadow-bottom, .swiper-container-3d .swiper-cube-shadow {
    transform-style: preserve-3d; }
  .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top, .swiper-container-3d .swiper-slide-shadow-bottom {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10; }
  .swiper-container-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }
  .swiper-container-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }
  .swiper-container-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }
  .swiper-container-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

/* Coverflow */
.swiper-container-coverflow .swiper-wrapper, .swiper-container-flip .swiper-wrapper {
  /* Windows 8 IE 10 fix */
  -ms-perspective: 1200px; }

/* Cube + Flip */
.swiper-container-cube, .swiper-container-flip {
  overflow: visible; }

.swiper-container-cube .swiper-slide, .swiper-container-flip .swiper-slide {
  pointer-events: none;
  z-index: 1; }

.swiper-container-cube .swiper-slide .swiper-slide, .swiper-container-flip .swiper-slide .swiper-slide {
  pointer-events: none; }

.swiper-container-cube .swiper-slide-active, .swiper-container-flip .swiper-slide-active, .swiper-container-cube .swiper-slide-active .swiper-slide-active, .swiper-container-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto; }

.swiper-container-cube .swiper-slide-shadow-top, .swiper-container-flip .swiper-slide-shadow-top, .swiper-container-cube .swiper-slide-shadow-bottom, .swiper-container-flip .swiper-slide-shadow-bottom, .swiper-container-cube .swiper-slide-shadow-left, .swiper-container-flip .swiper-slide-shadow-left, .swiper-container-cube .swiper-slide-shadow-right, .swiper-container-flip .swiper-slide-shadow-right {
  z-index: 0;
  backface-visibility: hidden; }

/* Cube */
.swiper-container-cube .swiper-slide {
  visibility: hidden;
  transform-origin: 0 0;
  width: 100%;
  height: 100%; }

.swiper-container-cube.swiper-container-rtl .swiper-slide {
  transform-origin: 100% 0; }

.swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-next, .swiper-container-cube .swiper-slide-prev, .swiper-container-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible; }

.swiper-container-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0.6;
  -webkit-filter: blur(50px);
  filter: blur(50px);
  z-index: 0; }

/* Fade */
.swiper-container-fade.swiper-container-free-mode .swiper-slide {
  transition-timing-function: ease-out; }

.swiper-container-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity; }
  .swiper-container-fade .swiper-slide .swiper-slide {
    pointer-events: none; }

.swiper-container-fade .swiper-slide-active {
  pointer-events: auto; }
  .swiper-container-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto; }

.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center; }
  .swiper-zoom-container > img, .swiper-zoom-container > svg, .swiper-zoom-container > canvas {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain; }

/* Scrollbar */
.swiper-scrollbar {
  border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, 0.1); }

.swiper-container-horizontal > .swiper-scrollbar {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 50;
  height: 5px;
  width: 98%; }

.swiper-container-vertical > .swiper-scrollbar {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%; }

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 10px;
  left: 0;
  top: 0; }

.swiper-scrollbar-cursor-drag {
  cursor: move; }

.elementor-pagination-position-outside .swiper-container {
  padding-bottom: 30px; }

.elementor-pagination-position-outside .elementor-swiper-button {
  top: calc(50% - 30px / 2); }

.elementor-swiper {
  position: relative; }

.elementor-main-swiper {
  position: static; }

.elementor-arrows-position-outside .swiper-container {
  width: calc(100% - 60px); }

.elementor-arrows-position-outside .elementor-swiper-button-prev {
  left: 0; }

.elementor-arrows-position-outside .elementor-swiper-button-next {
  right: 0; }

.swiper-image-stretch .swiper-slide .swiper-slide-image {
  width: 100%; }

.elementor-swiper-button {
  position: absolute;
  display: inline-flex;
  z-index: 1;
  cursor: pointer;
  font-size: 25px;
  color: rgba(238, 238, 238, 0.9);
  top: 50%;
  transform: translateY(-50%); }
  .elementor-swiper-button-prev {
    left: 10px; }
  .elementor-swiper-button-next {
    right: 10px; }
  .elementor-swiper-button.swiper-button-disabled {
    opacity: 0.3; }

.swiper-container-cube .elementor-swiper-button {
  transform: translate3d(0, -50%, 1px); }

/* Preloader */
.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  animation: swiper-preloader-spin 1s steps(12, end) infinite; }
  .swiper-lazy-preloader:after {
    display: block;
    content: "";
    width: 100%;
    height: 100%;
    background-size: 100%;
    background: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%236c6c6c'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat 50%; }

.swiper-lazy-preloader-white:after {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%23fff'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }

@keyframes swiper-preloader-spin {
  100% {
    transform: rotate(360deg); } }

.elementor-lightbox {
  --lightbox-ui-color: rgba(238, 238, 238, 0.9);
  --lightbox-ui-color-hover: #fff;
  --lightbox-text-color: var(--lightbox-ui-color);
  --lightbox-header-icons-size: 20px;
  --lightbox-navigation-icons-size: 25px; }
  .elementor-lightbox .dialog-header {
    display: none; }
  .elementor-lightbox .dialog-widget-content {
    background: none;
    box-shadow: none;
    width: 100%;
    height: 100%; }
  .elementor-lightbox .dialog-message {
    animation-duration: .3s; }
    .elementor-lightbox .dialog-message:not(.elementor-fit-aspect-ratio) {
      height: 100%; }
    .elementor-lightbox .dialog-message.dialog-lightbox-message {
      padding: 0; }
  .elementor-lightbox .dialog-lightbox-close-button {
    cursor: pointer;
    position: absolute;
    font-size: var(--lightbox-header-icons-size);
    left: 0.75em;
    margin-top: 13px;
    padding: .25em;
    z-index: 2;
    line-height: 1; }
  .elementor-lightbox .dialog-lightbox-close-button,
  .elementor-lightbox .elementor-swiper-button {
    color: var(--lightbox-ui-color);
    transition: all 0.3s;
    opacity: 1; }
    .elementor-lightbox .dialog-lightbox-close-button:hover,
    .elementor-lightbox .elementor-swiper-button:hover {
      color: var(--lightbox-ui-color-hover); }
  .elementor-lightbox .swiper-container {
    height: 100%; }
  .elementor-lightbox .elementor-lightbox-item {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    padding: 70px;
    box-sizing: border-box;
    height: 100%;
    margin: auto; }
    @media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
      .elementor-lightbox .elementor-lightbox-item {
        padding: 70px 0; } }
  .elementor-lightbox .elementor-lightbox-image {
    max-height: 100%;
    user-select: none; }
    .elementor-lightbox .elementor-lightbox-image, .elementor-lightbox .elementor-lightbox-image:hover {
      opacity: 1;
      filter: none;
      border: none; }
  .elementor-lightbox .elementor-lightbox-image, .elementor-lightbox .elementor-video-container {
    box-shadow: 0 0 30px rgba(0, 0, 0, 0.3), 0 0 8px -5px rgba(0, 0, 0, 0.3);
    border-radius: 2px; }
  .elementor-lightbox .elementor-video-container {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); }
    @media (min-width: ELEMENTOR_SCREEN_TABLET_NEXT) {
      .elementor-lightbox .elementor-video-container {
        width: 75%; } }
    @media (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
      .elementor-lightbox .elementor-video-container {
        width: 100%; } }
  @media (min-width: 768px) and (max-width: 1024px) {
    .elementor-lightbox .elementor-aspect-ratio-916 .elementor-video-container {
      width: 70%; } }
  .elementor-lightbox .elementor-swiper-button:focus {
    outline-width: 1px; }
  .elementor-lightbox .elementor-swiper-button-prev, .elementor-lightbox .elementor-swiper-button-next {
    height: 100%;
    display: flex;
    align-items: center;
    width: 15%;
    justify-content: center;
    font-size: var(--lightbox-navigation-icons-size); }
  .elementor-lightbox .elementor-swiper-button-prev {
    left: 0; }
  .elementor-lightbox .elementor-swiper-button-next {
    right: 0; }
  @media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
    .elementor-lightbox .elementor-swiper-button:focus {
      outline: none; }
    .elementor-lightbox .elementor-swiper-button-prev, .elementor-lightbox .elementor-swiper-button-next {
      width: 20%; }
      .elementor-lightbox .elementor-swiper-button-prev i, .elementor-lightbox .elementor-swiper-button-next i {
        padding: 10px;
        background-color: rgba(0, 0, 0, 0.5); }
    .elementor-lightbox .elementor-swiper-button-prev {
      left: 0;
      justify-content: flex-start; }
    .elementor-lightbox .elementor-swiper-button-next {
      right: 0;
      justify-content: flex-end; } }

.elementor-slideshow__counter {
  color: currentColor;
  font-size: .75em;
  width: max-content; }

.elementor-slideshow__header, .elementor-slideshow__footer {
  position: absolute;
  left: 0;
  width: 100%;
  padding: 15px 20px;
  transition: 0.3s; }

.elementor-slideshow__footer {
  color: var(--lightbox-text-color); }

.elementor-slideshow__header {
  color: var(--lightbox-ui-color);
  display: flex;
  flex-direction: row-reverse;
  font-size: var(--lightbox-header-icons-size);
  padding-right: 1em;
  padding-left: 2.6em;
  top: 0;
  align-items: center;
  z-index: 10; }
  .elementor-slideshow__header > i {
    font-size: inherit;
    cursor: pointer;
    padding: .25em;
    margin: 0 .35em; }
    .elementor-slideshow__header > i:hover {
      color: var(--lightbox-ui-color-hover); }
  .elementor-slideshow__header .elementor-slideshow__counter {
    margin-left: auto; }
  .elementor-slideshow__header .elementor-icon-share {
    z-index: 5; }

.elementor-slideshow__share-menu {
  background-color: rgba(0, 0, 0, 0);
  width: 0;
  height: 0;
  position: absolute;
  overflow: hidden;
  transition: background-color 400ms; }
  .elementor-slideshow__share-menu .elementor-slideshow__share-links a {
    color: #2C2C2C; }

.elementor-slideshow__share-links {
  display: block;
  position: absolute;
  min-width: 200px;
  left: 2.8em;
  top: 3em;
  background-color: #fff;
  border-radius: 3px;
  padding: 14px 20px;
  transform: scale(0);
  opacity: 0;
  transform-origin: 90% 10%;
  transition: all 250ms 100ms;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3); }
  .elementor-slideshow__share-links a {
    text-align: right;
    color: #55595c;
    font-size: 12px;
    line-height: 2.5;
    display: block;
    opacity: 0;
    transition: opacity 500ms 100ms; }
    .elementor-slideshow__share-links a:hover {
      color: #000; }
    .elementor-slideshow__share-links a i {
      font-size: 1.25em;
      margin-left: 0.75em; }
  .elementor-slideshow__share-links:before {
    content: '';
    display: block;
    position: absolute;
    top: 1px;
    left: 0.5em;
    border: .45em solid;
    border-color: transparent transparent #fff transparent;
    transform: translateY(-100%) scaleX(0.7); }

.elementor-slideshow__footer {
  bottom: 0;
  z-index: 5;
  position: fixed; }

.elementor-slideshow__title, .elementor-slideshow__description {
  margin: 0; }

.elementor-slideshow__title {
  font-size: 16px;
  font-weight: bold; }

.elementor-slideshow__description {
  font-size: 14px; }

.elementor-slideshow--ui-hidden .elementor-slideshow__header, .elementor-slideshow--ui-hidden .elementor-slideshow__footer {
  opacity: 0;
  pointer-events: none; }

.elementor-slideshow--ui-hidden .elementor-swiper-button-prev, .elementor-slideshow--ui-hidden .elementor-swiper-button-next {
  opacity: 0; }

.elementor-slideshow--fullscreen-mode .elementor-video-container {
  width: 100%; }

.elementor-slideshow--zoom-mode .elementor-slideshow__header, .elementor-slideshow--zoom-mode .elementor-slideshow__footer {
  background-color: rgba(0, 0, 0, 0.5); }

.elementor-slideshow--zoom-mode .elementor-swiper-button-prev, .elementor-slideshow--zoom-mode .elementor-swiper-button-next {
  opacity: 0;
  pointer-events: none; }

.elementor-slideshow--share-mode .elementor-slideshow__share-menu {
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  opacity: 1;
  cursor: default;
  background-color: rgba(0, 0, 0, 0.5); }

.elementor-slideshow--share-mode .elementor-slideshow__share-links {
  transform: scale(1); }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links, .elementor-slideshow--share-mode .elementor-slideshow__share-links a {
    opacity: 1; }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-twitter {
    color: #1DA1F2; }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-facebook {
    color: #3b5998; }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-pinterest {
    color: #bd081c; }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-download-bold {
    color: #a4afb7; }

.elementor-slideshow--share-mode .eicon-share-arrow {
  z-index: 2; }

.animated {
  animation-duration: 1.25s; }
  .animated.animated-slow {
    animation-duration: 2s; }
  .animated.animated-fast {
    animation-duration: .75s; }
  .animated.infinite {
    animation-iteration-count: infinite; }
  .animated.reverse {
    animation-direction: reverse;
    animation-fill-mode: forwards; }

@media (prefers-reduced-motion: reduce) {
  .animated {
    animation: none; } }

.elementor-shape {
  overflow: hidden;
  position: absolute;
  left: 0;
  width: 100%;
  line-height: 0;
  direction: ltr;
  /*
	 * @TODO: The `z-index: -1` rules below are temporary fixes for Chrome 85 issue.
	 *   It will be removed in a future version of Chrome.
	 */ }
  .elementor-shape-top {
    top: -1px; }
    .elementor-shape-top:not([data-negative="false"]) svg {
      z-index: -1; }
  .elementor-shape-bottom {
    bottom: -1px; }
    .elementor-shape-bottom:not([data-negative="true"]) svg {
      z-index: -1; }
  .elementor-shape[data-negative="false"].elementor-shape-bottom {
    transform: rotate(180deg); }
  .elementor-shape[data-negative="true"].elementor-shape-top {
    transform: rotate(180deg); }
  .elementor-shape svg {
    display: block;
    width: calc(100% + 1.3px);
    position: relative;
    left: 50%;
    transform: translateX(-50%); }
  .elementor-shape .elementor-shape-fill {
    fill: #fff;
    transform-origin: center;
    transform: rotateY(0deg); }

#wp-admin-bar-elementor_edit_page .ab-submenu .ab-item {
  display: flex;
  width: 200px; }

#wp-admin-bar-elementor_edit_page .elementor-edit-link-title {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  width: 100%; }

#wp-admin-bar-elementor_edit_page .elementor-edit-link-type {
  background: #55595c;
  font-size: 11px;
  line-height: 9px;
  margin-top: 6px;
  padding: 4px 8px;
  border-radius: 3px; }

.page-template-elementor_canvas.elementor-page:before {
  display: none; }

.elementor-post__thumbnail__link {
  transition: none; }

#left-area ul.elementor-icon-list-items,
.elementor .elementor-element ul.elementor-icon-list-items,
.elementor-edit-area .elementor-element ul.elementor-icon-list-items {
  padding: 0; }

#wpadminbar * {
  font-style: normal; }

.e--ua-appleWebkit.rtl {
  --flex-right: flex-start; }

.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-right,
.e--ua-appleWebkit .elementor-share-buttons--align-right {
  --justify-content: var(--flex-right, flex-end); }

.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-center,
.e--ua-appleWebkit .elementor-share-buttons--align-center {
  --justify-content: center; }

.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-justify .elementor-grid {
  width: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: var(--justify-content, space-between);
  margin-left: calc(-0.5 * var(--grid-column-gap));
  margin-right: calc(-0.5 * var(--grid-column-gap)); }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-justify .elementor-grid-item {
    margin-left: calc(0.5 * var(--grid-column-gap));
    margin-right: calc(0.5 * var(--grid-column-gap)); }

.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid {
  display: inline-block; }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid-item {
    margin-left: 0;
    margin-right: 0; }

@media (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
  .e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-tablet-right,
  .e--ua-appleWebkit .elementor-share-buttons-tablet--align-right {
    --justify-content: var(--flex-right, flex-end); }
  .e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-tablet-center,
  .e--ua-appleWebkit .elementor-share-buttons-tablet--align-center {
    --justify-content: center; }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-justify .elementor-grid {
    width: auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: var(--justify-content, space-between);
    margin-left: calc(-0.5 * var(--grid-column-gap));
    margin-right: calc(-0.5 * var(--grid-column-gap)); }
    .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-justify .elementor-grid-item {
      margin-left: calc(0.5 * var(--grid-column-gap));
      margin-right: calc(0.5 * var(--grid-column-gap)); }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid {
    display: inline-block; }
    .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid-item {
      margin-left: 0;
      margin-right: 0; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-mobile-right,
  .e--ua-appleWebkit .elementor-share-buttons-mobile--align-right {
    --justify-content: var(--flex-right, flex-end); }
  .e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-mobile-center,
  .e--ua-appleWebkit .elementor-share-buttons-mobile--align-center {
    --justify-content: center; }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-justify .elementor-grid {
    width: auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: var(--justify-content, space-between);
    margin-left: calc(-0.5 * var(--grid-column-gap));
    margin-right: calc(-0.5 * var(--grid-column-gap)); }
    .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-justify .elementor-grid-item {
      margin-left: calc(0.5 * var(--grid-column-gap));
      margin-right: calc(0.5 * var(--grid-column-gap)); }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid {
    display: inline-block; }
    .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid-item {
      margin-left: 0;
      margin-right: 0; } }

@media (max-width: ELEMENTOR_SCREEN_MOBILE_MAX) {
  .elementor .elementor-hidden-mobile {
    display: none; }
  .elementor .elementor-hidden-phone {
    display: none; } }

@media (min-width: ELEMENTOR_SCREEN_MOBILE_EXTRA_MIN) and (max-width: ELEMENTOR_SCREEN_MOBILE_EXTRA_MAX) {
  .elementor .elementor-hidden-mobile_extra {
    display: none; } }

@media (min-width: ELEMENTOR_SCREEN_TABLET_MIN) and (max-width: ELEMENTOR_SCREEN_TABLET_MAX) {
  .elementor .elementor-hidden-tablet {
    display: none; } }

@media (min-width: ELEMENTOR_SCREEN_TABLET_EXTRA_MIN) and (max-width: ELEMENTOR_SCREEN_TABLET_EXTRA_MAX) {
  .elementor .elementor-hidden-tablet_extra {
    display: none; } }

@media (min-width: ELEMENTOR_SCREEN_LAPTOP_MIN) and (max-width: ELEMENTOR_SCREEN_LAPTOP_MAX) {
  .elementor .elementor-hidden-laptop {
    display: none; } }

@media (min-width: ELEMENTOR_SCREEN_DESKTOP_MIN) and (max-width: ELEMENTOR_SCREEN_DESKTOP_MAX) {
  .elementor .elementor-hidden-desktop {
    display: none; } }

@media (min-width: ELEMENTOR_SCREEN_WIDESCREEN_MIN) {
  .elementor .elementor-hidden-widescreen {
    display: none; } }

.elementor-widget-text-path {
  font-size: 20px;
  text-align: var(--alignment, right); }
  .elementor-widget-text-path svg {
    width: var(--width);
    max-width: 100%;
    height: auto;
    overflow: visible;
    word-spacing: var(--word-spacing);
    transform: rotate(var(--rotate, 0)) scaleX(var(--scale-x, 1)) scaleY(var(--scale-y, 1)); }
    .elementor-widget-text-path svg path {
      vector-effect: non-scaling-stroke;
      /* Prevent stroke size scaling when resizing the SVG. */
      fill: var(--path-fill, transparent);
      stroke: var(--stroke-color, transparent);
      stroke-width: var(--stroke-width, 1px);
      transition: var(--stroke-transition) stroke, var(--stroke-transition) fill; }
    .elementor-widget-text-path svg:hover path {
      --path-fill: var( --path-fill-hover );
      --stroke-color: var( --stroke-color-hover );
      --stroke-width: var( --stroke-width-hover ); }
    .elementor-widget-text-path svg text {
      --fill: var( --text-color );
      fill: var(--fill);
      direction: var(--direction, rtl);
      transition: var(--transition) stroke, var(--transition) stroke-width, var(--transition) fill; }
      .elementor-widget-text-path svg text:hover {
        --color: var( --text-color-hover, var( --text-color ) );
        --fill: var( --color );
        color: var(--color); }
assets/css/templates/frontend-rtl.min.css000064400000404004151327220410014545 0ustar00.dialog-widget-content{background-color:#fff;position:absolute;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);overflow:hidden}.dialog-message{font-size:12px;line-height:1.5;-webkit-box-sizing:border-box;box-sizing:border-box}.dialog-type-lightbox{position:fixed;height:100%;width:100%;bottom:0;left:0;background-color:rgba(0,0,0,.8);z-index:9999;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.dialog-type-lightbox .dialog-widget-content{margin:auto;width:375px}.dialog-type-lightbox .dialog-header{font-size:15px;color:#495157;padding:30px 0 10px;font-weight:500}.dialog-type-lightbox .dialog-message{padding:0 30px 30px;min-height:50px}.dialog-type-lightbox:not(.elementor-popup-modal) .dialog-header,.dialog-type-lightbox:not(.elementor-popup-modal) .dialog-message{text-align:center}.dialog-type-lightbox .dialog-buttons-wrapper{border-top:1px solid #e6e9ec;text-align:center}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;width:50%;border:none;background:none;color:#6d7882;font-size:15px;cursor:pointer;padding:13px 0;outline:0}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button:hover{background-color:#f4f6f7}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button.dialog-ok{color:#b01b1b}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button.dialog-take_over{color:#39b54a}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button:active{background-color:rgba(230,233,236,.5)}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button::-moz-focus-inner{border:0}.dialog-close-button{cursor:pointer;position:absolute;margin-top:15px;left:15px;font-size:15px;line-height:1}.dialog-close-button:not(:hover){opacity:.4}.dialog-alert-widget .dialog-buttons-wrapper>button{width:100%}.dialog-confirm-widget .dialog-button:first-child{border-left:1px solid #e6e9ec}.dialog-prevent-scroll{overflow:hidden;max-height:100vh}@media (min-width:1024px){body.admin-bar .dialog-lightbox-widget{height:calc(100vh - 32px)}}@media (max-width:1024px){body.admin-bar .dialog-type-lightbox{position:-webkit-sticky;position:sticky;height:100vh}}.elementor-aspect-ratio-219 .elementor-fit-aspect-ratio{padding-bottom:42.8571%}.elementor-aspect-ratio-169 .elementor-fit-aspect-ratio{padding-bottom:56.25%}.elementor-aspect-ratio-43 .elementor-fit-aspect-ratio{padding-bottom:75%}.elementor-aspect-ratio-32 .elementor-fit-aspect-ratio{padding-bottom:66.6666%}.elementor-aspect-ratio-11 .elementor-fit-aspect-ratio{padding-bottom:100%}.elementor-aspect-ratio-916 .elementor-fit-aspect-ratio{padding-bottom:177.8%}.elementor-fit-aspect-ratio{position:relative;height:0}.elementor-fit-aspect-ratio iframe{position:absolute;top:0;left:0;height:100%;width:100%;border:0;background-color:#000}.elementor-fit-aspect-ratio video{width:100%}.flatpickr-calendar{width:280px}.flatpickr-calendar .flatpickr-current-month span.cur-month{font-weight:300}.flatpickr-calendar .dayContainer{width:280px;min-width:280px;max-width:280px}.flatpickr-calendar .flatpickr-days{width:280px}.flatpickr-calendar .flatpickr-day{max-width:37px;height:37px;line-height:37px}.elementor-templates-modal .dialog-widget-content{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;background-color:#f1f3f5;width:100%}@media (max-width:1439px){.elementor-templates-modal .dialog-widget-content{max-width:990px}}@media (min-width:1440px){.elementor-templates-modal .dialog-widget-content{max-width:1200px}}.elementor-templates-modal .dialog-header{padding:0;z-index:1}.elementor-templates-modal .dialog-buttons-wrapper,.elementor-templates-modal .dialog-header{background-color:#fff;-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1);position:relative}.elementor-templates-modal .dialog-buttons-wrapper{border:none;display:none;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;padding:5px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button{height:40px;margin-right:5px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success{padding:12px 36px;color:#fff;width:auto;font-size:15px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success:hover{background-color:#39b54a}.elementor-templates-modal .dialog-message{height:750px;max-height:85vh;overflow:auto;padding-top:25px}.elementor-templates-modal .dialog-content{height:100%}.elementor-templates-modal .dialog-loading{display:none}.elementor-templates-modal__header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;height:50px}.elementor-templates-modal__header__logo{line-height:1;text-transform:uppercase;font-weight:700;cursor:pointer}.elementor-templates-modal__header__logo-area{text-align:right;padding-right:15px}.elementor-templates-modal__header__logo-area>*{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-templates-modal__header__logo__icon-wrapper{margin-left:10px;font-size:12px}.elementor-templates-modal__header__logo__title{padding-top:2px}.elementor-templates-modal__header__items-area{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-templates-modal__header__item{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-templates-modal__header__item>i{font-size:20px;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;cursor:pointer}.elementor-templates-modal__header__item>i:not(:hover){color:#a4afb7}.elementor-templates-modal__header__close--normal{width:47px;border-right:1px solid #e6e9ec}.elementor-templates-modal__header__close--normal i{font-size:18px}.elementor-templates-modal__header__close--skip{padding:10px 20px 10px 10px;margin-left:10px;color:#fff;background-color:#a4afb7;font-size:11px;font-weight:400;line-height:1;text-transform:uppercase;-webkit-border-radius:2px;border-radius:2px;cursor:pointer}.elementor-templates-modal__header__close--skip>i{font-size:inherit;padding-right:10px;margin-right:15px;border-right:1px solid}.elementor-templates-modal__header__close--skip>i:not(:hover){color:#fff}.elementor-templates-modal__sidebar{-ms-flex-negative:0;flex-shrink:0;width:25%;background-color:hsla(0,0%,100%,.3)}.elementor-templates-modal__content{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-webkit-box-shadow:0 0 13px inset rgba(0,0,0,.05);box-shadow:inset 0 0 13px rgba(0,0,0,.05)}#wpadminbar #wp-admin-bar-elementor_edit_page .elementor-general-section+.elementor-second-section{border-top:1px solid #464b50;margin-top:6px}.elementor-hidden{display:none}.elementor-screen-only,.screen-reader-text,.screen-reader-text span,.ui-helper-hidden-accessible{position:absolute;top:-10000em;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.elementor-clearfix:after{content:"";display:block;clear:both;width:0;height:0}.e-logo-wrapper{background:#93003c;display:inline-block;padding:.75em;-webkit-border-radius:50%;border-radius:50%;line-height:1}.e-logo-wrapper i{color:#fff;font-size:1em}.elementor{-webkit-hyphens:manual;-ms-hyphens:manual;hyphens:manual}.elementor *,.elementor :after,.elementor :before{-webkit-box-sizing:border-box;box-sizing:border-box}.elementor a{-webkit-box-shadow:none;box-shadow:none;text-decoration:none}.elementor hr{margin:0;background-color:transparent}.elementor img{height:auto;max-width:100%;border:none;-webkit-border-radius:0;border-radius:0;-webkit-box-shadow:none;box-shadow:none}.elementor .elementor-widget:not(.elementor-widget-text-editor):not(.elementor-widget-theme-post-content) figure{margin:0}.elementor embed,.elementor iframe,.elementor object,.elementor video{max-width:100%;width:100%;margin:0;line-height:1;border:none}.elementor .elementor-custom-embed{line-height:0}.elementor .elementor-background,.elementor .elementor-background-holder,.elementor .elementor-background-video-container{height:100%;width:100%;top:0;left:0;position:absolute;overflow:hidden;z-index:0;direction:ltr}.elementor .elementor-background-video-container{-webkit-transition:opacity 1s;-o-transition:opacity 1s;transition:opacity 1s;pointer-events:none}.elementor .elementor-background-video-container.elementor-loading{opacity:0}.elementor .elementor-background-video-embed{max-width:none}.elementor .elementor-background-video,.elementor .elementor-background-video-embed,.elementor .elementor-background-video-hosted{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor .elementor-background-video{max-width:none}.elementor .elementor-html5-video{-o-object-fit:cover;object-fit:cover}.elementor .elementor-background-overlay{height:100%;width:100%;top:0;left:0;position:absolute}.elementor .elementor-background-slideshow{position:absolute;width:100%;height:100%;z-index:0;top:0;right:0}.elementor .elementor-background-slideshow__slide__image{width:100%;height:100%;background-position:50%;-webkit-background-size:cover;background-size:cover}.elementor-widget-wrap>.elementor-element.elementor-absolute{position:absolute}.elementor-column>.elementor-widget-wrap>.elementor-element.elementor-absolute{padding:inherit;-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-widget-wrap>.elementor-element.elementor-fixed{position:fixed}.elementor-widget-wrap .elementor-element.elementor-widget__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget__width-initial{max-width:100%}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-initial{max-width:100%}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-initial{max-width:100%}}.elementor-element.elementor-absolute,.elementor-element.elementor-fixed{z-index:1}.elementor-invisible{visibility:hidden}.elementor-align-center{text-align:center}.elementor-align-center .elementor-button{width:auto}.elementor-align-right{text-align:right}.elementor-align-right .elementor-button{width:auto}.elementor-align-left{text-align:left}.elementor-align-left .elementor-button{width:auto}.elementor-align-justify .elementor-button{width:100%}.elementor-custom-embed-play{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor-custom-embed-play i{font-size:100px;color:#fff;text-shadow:1px 0 6px rgba(0,0,0,.3)}.elementor-custom-embed-play svg{height:100px;width:100px;fill:#fff;-webkit-filter:drop-shadow(1px 0 6px rgba(0,0,0,.3));filter:drop-shadow(1px 0 6px rgba(0,0,0,.3))}.elementor-custom-embed-play i,.elementor-custom-embed-play svg{opacity:.8;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-custom-embed-play.elementor-playing i{font-family:eicons;-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.elementor-custom-embed-play.elementor-playing i:before{content:"\e8fb"}.elementor-tag{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex}.elementor-ken-burns{-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;-o-transition-property:transform;transition-property:transform;transition-property:transform,-webkit-transform;-webkit-transition-duration:10s;-o-transition-duration:10s;transition-duration:10s;-webkit-transition-timing-function:linear;-o-transition-timing-function:linear;transition-timing-function:linear}.elementor-ken-burns--out{-webkit-transform:scale(1.3);-ms-transform:scale(1.3);transform:scale(1.3)}.elementor-ken-burns--active{-webkit-transition-duration:20s;-o-transition-duration:20s;transition-duration:20s}.elementor-ken-burns--active.elementor-ken-burns--out{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}.elementor-ken-burns--active.elementor-ken-burns--in{-webkit-transform:scale(1.3);-ms-transform:scale(1.3);transform:scale(1.3)}@media (min-width:ELEMENTOR_SCREEN_WIDESCREEN_MIN){.elementor-widescreen-align-center{text-align:center}.elementor-widescreen-align-center .elementor-button{width:auto}.elementor-widescreen-align-right{text-align:right}.elementor-widescreen-align-right .elementor-button{width:auto}.elementor-widescreen-align-left{text-align:left}.elementor-widescreen-align-left .elementor-button{width:auto}.elementor-widescreen-align-justify .elementor-button{width:100%}}@media (max-width:ELEMENTOR_SCREEN_LAPTOP_MAX){.elementor-laptop-align-center{text-align:center}.elementor-laptop-align-center .elementor-button{width:auto}.elementor-laptop-align-right{text-align:right}.elementor-laptop-align-right .elementor-button{width:auto}.elementor-laptop-align-left{text-align:left}.elementor-laptop-align-left .elementor-button{width:auto}.elementor-laptop-align-justify .elementor-button{width:100%}}@media (max-width:ELEMENTOR_SCREEN_TABLET_EXTRA_MAX){.elementor-tablet_extra-align-center{text-align:center}.elementor-tablet_extra-align-center .elementor-button{width:auto}.elementor-tablet_extra-align-right{text-align:right}.elementor-tablet_extra-align-right .elementor-button{width:auto}.elementor-tablet_extra-align-left{text-align:left}.elementor-tablet_extra-align-left .elementor-button{width:auto}.elementor-tablet_extra-align-justify .elementor-button{width:100%}}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-tablet-align-center{text-align:center}.elementor-tablet-align-center .elementor-button{width:auto}.elementor-tablet-align-right{text-align:right}.elementor-tablet-align-right .elementor-button{width:auto}.elementor-tablet-align-left{text-align:left}.elementor-tablet-align-left .elementor-button{width:auto}.elementor-tablet-align-justify .elementor-button{width:100%}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_EXTRA_MAX){.elementor-mobile_extra-align-center{text-align:center}.elementor-mobile_extra-align-center .elementor-button{width:auto}.elementor-mobile_extra-align-right{text-align:right}.elementor-mobile_extra-align-right .elementor-button{width:auto}.elementor-mobile_extra-align-left{text-align:left}.elementor-mobile_extra-align-left .elementor-button{width:auto}.elementor-mobile_extra-align-justify .elementor-button{width:100%}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-mobile-align-center{text-align:center}.elementor-mobile-align-center .elementor-button{width:auto}.elementor-mobile-align-right{text-align:right}.elementor-mobile-align-right .elementor-button{width:auto}.elementor-mobile-align-left{text-align:left}.elementor-mobile-align-left .elementor-button{width:auto}.elementor-mobile-align-justify .elementor-button{width:100%}}#wpadminbar #wp-admin-bar-elementor_edit_page>.ab-item:before{content:"\e813";font-family:eicons;top:3px;font-size:18px}#wpadminbar #wp-admin-bar-elementor_inspector>.ab-item:before{content:"\f348";top:2px}:root{--page-title-display:block}.elementor-page-title,h1.entry-title{display:var(--page-title-display)}.elementor-section{position:relative}.elementor-section .elementor-container{display:-webkit-box;display:-ms-flexbox;display:flex;margin-right:auto;margin-left:auto;position:relative}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-section .elementor-container{-ms-flex-wrap:wrap;flex-wrap:wrap}}.elementor-section.elementor-section-boxed>.elementor-container{max-width:1140px}.elementor-section.elementor-section-stretched{position:relative;width:100%}.elementor-section.elementor-section-items-top>.elementor-container{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.elementor-section.elementor-section-items-middle>.elementor-container{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-section.elementor-section-items-bottom>.elementor-container{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}@media (min-width:ELEMENTOR_SCREEN_MOBILE_NEXT){.elementor-section.elementor-section-height-full{height:100vh}.elementor-section.elementor-section-height-full>.elementor-container{height:100%}}.elementor-bc-flex-widget .elementor-section-content-top>.elementor-container>.elementor-column>.elementor-widget-wrap{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.elementor-bc-flex-widget .elementor-section-content-middle>.elementor-container>.elementor-column>.elementor-widget-wrap{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-bc-flex-widget .elementor-section-content-bottom>.elementor-container>.elementor-column>.elementor-widget-wrap{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.elementor-row{width:100%;display:-webkit-box;display:-ms-flexbox;display:flex}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-row{-ms-flex-wrap:wrap;flex-wrap:wrap}}.elementor-widget-wrap{position:relative;width:100%;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-line-pack:start;align-content:flex-start}.elementor:not(.elementor-bc-flex-widget) .elementor-widget-wrap{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget-wrap>.elementor-element{width:100%}.elementor-widget{position:relative}.elementor-widget:not(:last-child){margin-bottom:20px}.elementor-widget:not(:last-child).elementor-absolute,.elementor-widget:not(:last-child).elementor-widget__width-auto,.elementor-widget:not(:last-child).elementor-widget__width-initial{margin-bottom:0}.elementor-column{min-height:1px}.elementor-column,.elementor-column-wrap{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-column-wrap{width:100%}.elementor-column-gap-narrow>.elementor-column>.elementor-element-populated{padding:5px}.elementor-column-gap-default>.elementor-column>.elementor-element-populated{padding:10px}.elementor-column-gap-extended>.elementor-column>.elementor-element-populated{padding:15px}.elementor-column-gap-wide>.elementor-column>.elementor-element-populated{padding:20px}.elementor-column-gap-wider>.elementor-column>.elementor-element-populated{padding:30px}.elementor-inner-section .elementor-column-gap-no .elementor-element-populated{padding:0}@media (min-width:ELEMENTOR_SCREEN_MOBILE_NEXT){.elementor-column.elementor-col-10,.elementor-column[data-col="10"]{width:10%}.elementor-column.elementor-col-11,.elementor-column[data-col="11"]{width:11.111%}.elementor-column.elementor-col-12,.elementor-column[data-col="12"]{width:12.5%}.elementor-column.elementor-col-14,.elementor-column[data-col="14"]{width:14.285%}.elementor-column.elementor-col-16,.elementor-column[data-col="16"]{width:16.666%}.elementor-column.elementor-col-20,.elementor-column[data-col="20"]{width:20%}.elementor-column.elementor-col-25,.elementor-column[data-col="25"]{width:25%}.elementor-column.elementor-col-30,.elementor-column[data-col="30"]{width:30%}.elementor-column.elementor-col-33,.elementor-column[data-col="33"]{width:33.333%}.elementor-column.elementor-col-40,.elementor-column[data-col="40"]{width:40%}.elementor-column.elementor-col-50,.elementor-column[data-col="50"]{width:50%}.elementor-column.elementor-col-60,.elementor-column[data-col="60"]{width:60%}.elementor-column.elementor-col-66,.elementor-column[data-col="66"]{width:66.666%}.elementor-column.elementor-col-70,.elementor-column[data-col="70"]{width:70%}.elementor-column.elementor-col-75,.elementor-column[data-col="75"]{width:75%}.elementor-column.elementor-col-80,.elementor-column[data-col="80"]{width:80%}.elementor-column.elementor-col-83,.elementor-column[data-col="83"]{width:83.333%}.elementor-column.elementor-col-90,.elementor-column[data-col="90"]{width:90%}.elementor-column.elementor-col-100,.elementor-column[data-col="100"]{width:100%}}@media (max-width:479px){.elementor-column.elementor-xs-10{width:10%}.elementor-column.elementor-xs-11{width:11.111%}.elementor-column.elementor-xs-12{width:12.5%}.elementor-column.elementor-xs-14{width:14.285%}.elementor-column.elementor-xs-16{width:16.666%}.elementor-column.elementor-xs-20{width:20%}.elementor-column.elementor-xs-25{width:25%}.elementor-column.elementor-xs-30{width:30%}.elementor-column.elementor-xs-33{width:33.333%}.elementor-column.elementor-xs-40{width:40%}.elementor-column.elementor-xs-50{width:50%}.elementor-column.elementor-xs-60{width:60%}.elementor-column.elementor-xs-66{width:66.666%}.elementor-column.elementor-xs-70{width:70%}.elementor-column.elementor-xs-75{width:75%}.elementor-column.elementor-xs-80{width:80%}.elementor-column.elementor-xs-83{width:83.333%}.elementor-column.elementor-xs-90{width:90%}.elementor-column.elementor-xs-100{width:100%}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-column.elementor-sm-10{width:10%}.elementor-column.elementor-sm-11{width:11.111%}.elementor-column.elementor-sm-12{width:12.5%}.elementor-column.elementor-sm-14{width:14.285%}.elementor-column.elementor-sm-16{width:16.666%}.elementor-column.elementor-sm-20{width:20%}.elementor-column.elementor-sm-25{width:25%}.elementor-column.elementor-sm-30{width:30%}.elementor-column.elementor-sm-33{width:33.333%}.elementor-column.elementor-sm-40{width:40%}.elementor-column.elementor-sm-50{width:50%}.elementor-column.elementor-sm-60{width:60%}.elementor-column.elementor-sm-66{width:66.666%}.elementor-column.elementor-sm-70{width:70%}.elementor-column.elementor-sm-75{width:75%}.elementor-column.elementor-sm-80{width:80%}.elementor-column.elementor-sm-83{width:83.333%}.elementor-column.elementor-sm-90{width:90%}.elementor-column.elementor-sm-100{width:100%}}@media (min-width:ELEMENTOR_SCREEN_MOBILE_NEXT) and (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-column.elementor-md-10{width:10%}.elementor-column.elementor-md-11{width:11.111%}.elementor-column.elementor-md-12{width:12.5%}.elementor-column.elementor-md-14{width:14.285%}.elementor-column.elementor-md-16{width:16.666%}.elementor-column.elementor-md-20{width:20%}.elementor-column.elementor-md-25{width:25%}.elementor-column.elementor-md-30{width:30%}.elementor-column.elementor-md-33{width:33.333%}.elementor-column.elementor-md-40{width:40%}.elementor-column.elementor-md-50{width:50%}.elementor-column.elementor-md-60{width:60%}.elementor-column.elementor-md-66{width:66.666%}.elementor-column.elementor-md-70{width:70%}.elementor-column.elementor-md-75{width:75%}.elementor-column.elementor-md-80{width:80%}.elementor-column.elementor-md-83{width:83.333%}.elementor-column.elementor-md-90{width:90%}.elementor-column.elementor-md-100{width:100%}}@media (min-width:ELEMENTOR_SCREEN_MOBILE_NEXT) and (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-reverse-tablet>.elementor-container>:first-child{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.elementor-reverse-tablet>.elementor-container>:nth-child(2){-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.elementor-reverse-tablet>.elementor-container>:nth-child(3){-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.elementor-reverse-tablet>.elementor-container>:nth-child(4){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.elementor-reverse-tablet>.elementor-container>:nth-child(5){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.elementor-reverse-tablet>.elementor-container>:nth-child(6){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-reverse-tablet>.elementor-container>:nth-child(7){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.elementor-reverse-tablet>.elementor-container>:nth-child(8){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.elementor-reverse-tablet>.elementor-container>:nth-child(9){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.elementor-reverse-tablet>.elementor-container>:nth-child(10){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-reverse-mobile>.elementor-container>:first-child{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.elementor-reverse-mobile>.elementor-container>:nth-child(2){-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.elementor-reverse-mobile>.elementor-container>:nth-child(3){-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.elementor-reverse-mobile>.elementor-container>:nth-child(4){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.elementor-reverse-mobile>.elementor-container>:nth-child(5){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.elementor-reverse-mobile>.elementor-container>:nth-child(6){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-reverse-mobile>.elementor-container>:nth-child(7){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.elementor-reverse-mobile>.elementor-container>:nth-child(8){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.elementor-reverse-mobile>.elementor-container>:nth-child(9){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.elementor-reverse-mobile>.elementor-container>:nth-child(10){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.elementor-column{width:100%}}ul.elementor-icon-list-items.elementor-inline-items{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}ul.elementor-icon-list-items.elementor-inline-items .elementor-inline-item{word-break:break-word}.elementor-grid{display:grid;grid-column-gap:var(--grid-column-gap);grid-row-gap:var(--grid-row-gap)}.elementor-grid .elementor-grid-item{min-width:0}.elementor-grid-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}@media (min-width:ELEMENTOR_SCREEN_WIDESCREEN_MIN){.elementor-grid-widescreen-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-widescreen-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-widescreen-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-widescreen-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-widescreen-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-widescreen-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-widescreen-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-widescreen-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-widescreen-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-widescreen-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-widescreen-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-widescreen-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-widescreen-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-widescreen-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:ELEMENTOR_SCREEN_LAPTOP_MAX){.elementor-grid-laptop-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-laptop-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-laptop-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-laptop-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-laptop-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-laptop-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-laptop-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-laptop-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-laptop-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-laptop-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-laptop-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-laptop-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-laptop-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-laptop-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:ELEMENTOR_SCREEN_TABLET_EXTRA_MAX){.elementor-grid-tablet_extra-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-tablet_extra-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-tablet_extra-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-tablet_extra-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-tablet_extra-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-tablet_extra-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-tablet_extra-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-tablet_extra-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-tablet_extra-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-tablet_extra-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-tablet_extra-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-tablet_extra-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-tablet_extra-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-tablet_extra-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-grid-tablet-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-tablet-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-tablet-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-tablet-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-tablet-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-tablet-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-tablet-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-tablet-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-tablet-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-tablet-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-tablet-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-tablet-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-tablet-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-tablet-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_EXTRA_MAX){.elementor-grid-mobile_extra-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-mobile_extra-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-mobile_extra-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-mobile_extra-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-mobile_extra-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-mobile_extra-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-mobile_extra-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-mobile_extra-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-mobile_extra-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-mobile_extra-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-mobile_extra-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-mobile_extra-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-mobile_extra-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-mobile_extra-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-grid-mobile-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-mobile-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-mobile-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-mobile-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-mobile-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-mobile-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-mobile-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-mobile-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-mobile-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-mobile-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-mobile-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-mobile-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-mobile-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-mobile-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (min-width:ELEMENTOR_SCREEN_DESKTOP_MIN){#elementor-device-mode:after{content:"desktop"}}@media (min-width:ELEMENTOR_SCREEN_WIDESCREEN_MIN){#elementor-device-mode:after{content:"widescreen"}}@media (max-width:ELEMENTOR_SCREEN_LAPTOP_MAX){#elementor-device-mode:after{content:"laptop"}}@media (max-width:ELEMENTOR_SCREEN_TABLET_EXTRA_MAX){#elementor-device-mode:after{content:"tablet_extra"}}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){#elementor-device-mode:after{content:"tablet"}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_EXTRA_MAX){#elementor-device-mode:after{content:"mobile_extra"}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){#elementor-device-mode:after{content:"mobile"}}[class*=" eicon-"],[class^=eicon]{display:inline-block;font-family:eicons;font-size:inherit;font-weight:400;font-style:normal;font-variant:normal;line-height:1;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@-webkit-keyframes eicon-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes eicon-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.eicon-animation-spin{-webkit-animation:eicon-spin 2s linear infinite;animation:eicon-spin 2s linear infinite}.eicon-loading:before{content:"\e8fb"}.eicon-menu-bar:before{content:"\e816"}.eicon-chevron-right:before{content:"\e87d"}.eicon-chevron-left:before{content:"\e87e"}.eicon-close:before{content:"\e87f"}.eicon-share-arrow:before{content:"\e96c"}.eicon-zoom-in:before{content:"\e882"}.eicon-zoom-in-bold:before{content:"\e92e"}.eicon-zoom-out-bold:before{content:"\e943"}.eicon-frame-expand:before{content:"\e95c"}.eicon-frame-minimize:before{content:"\e95d"}.eicon-play:before{content:"\e89d"}.eicon-facebook:before{content:"\e959"}.eicon-twitter:before{content:"\e95a"}.eicon-pinterest:before{content:"\e95b"}.eicon-download-bold:before{content:"\e96b"}.eicon-caret-down:before{content:"\e92a"}.elementor-form-fields-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group .elementor-field-subgroup,.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group>.elementor-select-wrapper,.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group>input,.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group>textarea{-ms-flex-preferred-size:100%;flex-basis:100%;max-width:100%}.elementor-form-fields-wrapper.elementor-labels-inline>.elementor-field-group .elementor-select-wrapper,.elementor-form-fields-wrapper.elementor-labels-inline>.elementor-field-group>input{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-field-group{-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-field-group.elementor-field-type-submit{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.elementor-field-group .elementor-field-textual{width:100%;max-width:100%;border:1px solid #818a91;background-color:transparent;color:#373a3c;vertical-align:middle;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-field-group .elementor-field-textual:focus{-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.1) inset;box-shadow:inset 0 0 0 1px rgba(0,0,0,.1);outline:0}.elementor-field-group .elementor-field-textual::-webkit-input-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual:-ms-input-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual:-moz-placeholder,.elementor-field-group .elementor-field-textual::-moz-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual::-ms-input-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual::placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-select-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;position:relative;width:100%}.elementor-field-group .elementor-select-wrapper select{appearance:none;-webkit-appearance:none;-moz-appearance:none;color:inherit;font-size:inherit;font-family:inherit;font-weight:inherit;font-style:inherit;text-transform:inherit;letter-spacing:inherit;line-height:inherit;-ms-flex-preferred-size:100%;flex-basis:100%;padding-left:20px}.elementor-field-group .elementor-select-wrapper:before{content:"\e92a";font-family:eicons;font-size:15px;position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);left:10px;pointer-events:none;text-shadow:0 0 3px rgba(0,0,0,.3)}.elementor-field-group.elementor-field-type-select-multiple .elementor-select-wrapper:before{content:""}.elementor-field-subgroup{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-field-subgroup .elementor-field-option label{display:inline-block}.elementor-field-subgroup.elementor-subgroup-inline .elementor-field-option{padding-left:10px}.elementor-field-subgroup:not(.elementor-subgroup-inline) .elementor-field-option{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option label,.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option label,.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option label{display:inline}.elementor-field-label{cursor:pointer}.elementor-mark-required .elementor-field-label:after{content:"*";color:red;padding-right:.2em}.elementor-field-textual{line-height:1.4;font-size:15px;min-height:40px;padding:5px 14px;-webkit-border-radius:3px;border-radius:3px}.elementor-field-textual.elementor-size-xs{font-size:13px;min-height:33px;padding:4px 12px;-webkit-border-radius:2px;border-radius:2px}.elementor-field-textual.elementor-size-md{font-size:16px;min-height:47px;padding:6px 16px;-webkit-border-radius:4px;border-radius:4px}.elementor-field-textual.elementor-size-lg{font-size:18px;min-height:59px;padding:7px 20px;-webkit-border-radius:5px;border-radius:5px}.elementor-field-textual.elementor-size-xl{font-size:20px;min-height:72px;padding:8px 24px;-webkit-border-radius:6px;border-radius:6px}.elementor-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-button-align-stretch .e-form__buttons__wrapper{-ms-flex-preferred-size:50%;flex-basis:50%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-button-align-stretch .e-form__buttons__wrapper__button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-button-align-center .e-form__buttons,.elementor-button-align-center .elementor-field-type-submit{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-button-align-start .e-form__buttons,.elementor-button-align-start .elementor-field-type-submit{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-button-align-end .e-form__buttons,.elementor-button-align-end .elementor-field-type-submit{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:initial;flex-basis:auto}.elementor-button-align-center .e-form__buttons__wrapper,.elementor-button-align-end .e-form__buttons__wrapper,.elementor-button-align-start .e-form__buttons__wrapper{-webkit-box-flex:initial;-ms-flex-positive:initial;flex-grow:0}.elementor-button-align-center .e-form__buttons__wrapper,.elementor-button-align-center .e-form__buttons__wrapper__button,.elementor-button-align-end .e-form__buttons__wrapper,.elementor-button-align-end .e-form__buttons__wrapper__button,.elementor-button-align-start .e-form__buttons__wrapper,.elementor-button-align-start .e-form__buttons__wrapper__button{-ms-flex-preferred-size:initial;flex-basis:auto}@media screen and (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-tablet-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-tablet-button-align-stretch .e-form__buttons__wrapper{-ms-flex-preferred-size:50%;flex-basis:50%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-tablet-button-align-stretch .e-form__buttons__wrapper__button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-tablet-button-align-center .e-form__buttons,.elementor-tablet-button-align-center .elementor-field-type-submit{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-tablet-button-align-start .e-form__buttons,.elementor-tablet-button-align-start .elementor-field-type-submit{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-tablet-button-align-end .e-form__buttons,.elementor-tablet-button-align-end .elementor-field-type-submit{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-tablet-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-tablet-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-tablet-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:initial;flex-basis:auto}.elementor-tablet-button-align-center .e-form__buttons__wrapper,.elementor-tablet-button-align-end .e-form__buttons__wrapper,.elementor-tablet-button-align-start .e-form__buttons__wrapper{-webkit-box-flex:initial;-ms-flex-positive:initial;flex-grow:0}.elementor-tablet-button-align-center .e-form__buttons__wrapper,.elementor-tablet-button-align-center .e-form__buttons__wrapper__button,.elementor-tablet-button-align-end .e-form__buttons__wrapper,.elementor-tablet-button-align-end .e-form__buttons__wrapper__button,.elementor-tablet-button-align-start .e-form__buttons__wrapper,.elementor-tablet-button-align-start .e-form__buttons__wrapper__button{-ms-flex-preferred-size:initial;flex-basis:auto}}@media screen and (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-mobile-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-mobile-button-align-stretch .e-form__buttons__wrapper{-ms-flex-preferred-size:50%;flex-basis:50%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-mobile-button-align-stretch .e-form__buttons__wrapper__button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-mobile-button-align-center .e-form__buttons,.elementor-mobile-button-align-center .elementor-field-type-submit{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-mobile-button-align-start .e-form__buttons,.elementor-mobile-button-align-start .elementor-field-type-submit{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-mobile-button-align-end .e-form__buttons,.elementor-mobile-button-align-end .elementor-field-type-submit{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-mobile-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-mobile-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-mobile-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:initial;flex-basis:auto}.elementor-mobile-button-align-center .e-form__buttons__wrapper,.elementor-mobile-button-align-end .e-form__buttons__wrapper,.elementor-mobile-button-align-start .e-form__buttons__wrapper{-webkit-box-flex:initial;-ms-flex-positive:initial;flex-grow:0}.elementor-mobile-button-align-center .e-form__buttons__wrapper,.elementor-mobile-button-align-center .e-form__buttons__wrapper__button,.elementor-mobile-button-align-end .e-form__buttons__wrapper,.elementor-mobile-button-align-end .e-form__buttons__wrapper__button,.elementor-mobile-button-align-start .e-form__buttons__wrapper,.elementor-mobile-button-align-start .e-form__buttons__wrapper__button{-ms-flex-preferred-size:initial;flex-basis:auto}}.elementor-error .elementor-field{border-color:#d9534f}.elementor-error .help-inline{color:#d9534f;font-size:.9em}.elementor-message{margin:10px 0;font-size:1em;line-height:1}.elementor-message:before{content:"\e90e";display:inline-block;font-family:eicons;font-weight:400;font-style:normal;vertical-align:middle;margin-left:5px}.elementor-message.elementor-message-danger{color:#d9534f}.elementor-message.elementor-message-danger:before{content:"\e87f"}.elementor-message.form-message-success{color:#5cb85c}.elementor-form .elementor-button{padding-top:0;padding-bottom:0;border:none}.elementor-form .elementor-button>span{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-form .elementor-button.elementor-size-xs{min-height:33px}.elementor-form .elementor-button.elementor-size-sm{min-height:40px}.elementor-form .elementor-button.elementor-size-md{min-height:47px}.elementor-form .elementor-button.elementor-size-lg{min-height:59px}.elementor-form .elementor-button.elementor-size-xl{min-height:72px}.elementor-element .elementor-widget-container{-webkit-transition:background .3s,border .3s,-webkit-border-radius .3s,-webkit-box-shadow .3s;transition:background .3s,border .3s,-webkit-border-radius .3s,-webkit-box-shadow .3s;-o-transition:background .3s,border .3s,border-radius .3s,box-shadow .3s;transition:background .3s,border .3s,border-radius .3s,box-shadow .3s;transition:background .3s,border .3s,border-radius .3s,box-shadow .3s,-webkit-border-radius .3s,-webkit-box-shadow .3s}.elementor-button{display:inline-block;line-height:1;background-color:#818a91;font-size:15px;padding:12px 24px;-webkit-border-radius:3px;border-radius:3px;color:#fff;fill:#fff;text-align:center;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.elementor-button:focus,.elementor-button:hover,.elementor-button:visited{color:#fff}.elementor-button-content-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-button-icon{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-button-icon svg{width:1em;height:auto}.elementor-button-icon .e-font-icon-svg{height:1em}.elementor-button-text{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10;display:inline-block}.elementor-button.elementor-size-xs{font-size:13px;padding:10px 20px;-webkit-border-radius:2px;border-radius:2px}.elementor-button.elementor-size-md{font-size:16px;padding:15px 30px;-webkit-border-radius:4px;border-radius:4px}.elementor-button.elementor-size-lg{font-size:18px;padding:20px 40px;-webkit-border-radius:5px;border-radius:5px}.elementor-button.elementor-size-xl{font-size:20px;padding:25px 50px;-webkit-border-radius:6px;border-radius:6px}.elementor-button .elementor-align-icon-right{margin-left:5px;-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-button .elementor-align-icon-left{margin-right:5px;-webkit-box-ordinal-group:16;-ms-flex-order:15;order:15}.elementor-button span{text-decoration:inherit}.elementor-menu-cart__toggle .elementor-button-icon{-webkit-box-ordinal-group:16;-ms-flex-order:15;order:15}.elementor-element.elementor-button-info .elementor-button{background-color:#5bc0de}.elementor-element.elementor-button-success .elementor-button{background-color:#5cb85c}.elementor-element.elementor-button-warning .elementor-button{background-color:#f0ad4e}.elementor-element.elementor-button-danger .elementor-button{background-color:#d9534f}.elementor-widget-button .elementor-button .elementor-button-info{background-color:#5bc0de}.elementor-widget-button .elementor-button .elementor-button-success{background-color:#5cb85c}.elementor-widget-button .elementor-button .elementor-button-warning{background-color:#f0ad4e}.elementor-widget-button .elementor-button .elementor-button-danger{background-color:#d9534f}.elementor-tab-title a{color:inherit}.elementor-view-stacked .elementor-icon{padding:.5em;background-color:#818a91;color:#fff;fill:#fff}.elementor-view-framed .elementor-icon{padding:.5em;color:#818a91;border:3px solid #818a91;background-color:transparent}.elementor-icon{display:inline-block;line-height:1;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;color:#818a91;font-size:50px;text-align:center}.elementor-icon:hover{color:#818a91}.elementor-icon i,.elementor-icon svg{width:1em;height:1em;position:relative;display:block}.elementor-icon i:before,.elementor-icon svg:before{position:absolute;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.elementor-icon i.fad{width:auto}.elementor-shape-circle .elementor-icon{-webkit-border-radius:50%;border-radius:50%}.slick-slider{-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-ms-touch-action:pan-y;touch-action:pan-y;-webkit-tap-highlight-color:transparent}.slick-list,.slick-slider{position:relative;display:block}.slick-list{overflow:hidden;margin:0;padding:0}.slick-list:focus{outline:none}.slick-list.dragging{cursor:pointer}.slick-slider .slick-list,.slick-slider .slick-track{-webkit-transform:translateZ(0);transform:translateZ(0)}.slick-track{position:relative;left:0;top:0;display:block}.slick-track:after,.slick-track:before{content:"";display:table}.slick-track:after{clear:both}.slick-loading .slick-track{visibility:hidden}.slick-slide{float:left;height:100%;min-height:1px;display:none}.elementor-slick-slider[dir=rtl] .slick-slide{float:right}.slick-slide img{display:block}.slick-slide.slick-loading img{display:none}.slick-slide.dragging img{pointer-events:none}.slick-initialized .slick-slide{display:block}.slick-loading .slick-slide{visibility:hidden}.slick-vertical .slick-slide{display:block;height:auto;border:1px solid transparent}.slick-arrow.slick-hidden{display:none}.elementor-slick-slider .slick-loading .slick-list{background:#fff}.elementor-slick-slider .slick-loading .slick-list:after{content:"\e8fb";font-family:eicons;position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite;font-size:25px;color:#a4afb7}.elementor-slick-slider .slick-next,.elementor-slick-slider .slick-prev{font-size:0;line-height:0;position:absolute;top:50%;display:block;width:20px;padding:0;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);cursor:pointer;color:transparent;border:none;outline:none;background:transparent}.elementor-slick-slider .slick-next:focus,.elementor-slick-slider .slick-next:hover,.elementor-slick-slider .slick-prev:focus,.elementor-slick-slider .slick-prev:hover{color:transparent;outline:none;background:transparent}.elementor-slick-slider .slick-next:focus:before,.elementor-slick-slider .slick-next:hover:before,.elementor-slick-slider .slick-prev:focus:before,.elementor-slick-slider .slick-prev:hover:before{opacity:1}.elementor-slick-slider .slick-next.slick-disabled:before,.elementor-slick-slider .slick-prev.slick-disabled:before{opacity:.25}.elementor-slick-slider .slick-next:before,.elementor-slick-slider .slick-prev:before{font-family:eicons;font-size:35px;line-height:1;opacity:.75;color:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.elementor-slick-slider .slick-prev{left:-25px}[dir=rtl] .elementor-slick-slider .slick-prev{left:auto;right:-25px}.elementor-slick-slider .slick-prev:before{content:"\e89f"}[dir=rtl] .elementor-slick-slider .slick-prev:before{content:"\e89e"}.elementor-slick-slider .slick-next{right:-25px}[dir=rtl] .elementor-slick-slider .slick-next{left:-25px;right:auto}.elementor-slick-slider .slick-next:before{content:"\e89e"}[dir=rtl] .elementor-slick-slider .slick-next:before{content:"\e89f"}.elementor-slick-slider .slick-dotted.slick-slider{margin-bottom:30px}.elementor-slick-slider ul.slick-dots{position:absolute;bottom:-25px;display:block;width:100%;padding:0;margin:0;list-style:none;text-align:center;line-height:1}.elementor-slick-slider ul.slick-dots li{position:relative;display:inline-block;width:20px;height:20px;margin:0;padding:0;cursor:pointer}.elementor-slick-slider ul.slick-dots li button{font-size:0;line-height:0;display:block;width:20px;height:20px;padding:5px;cursor:pointer;color:transparent;border:0;outline:none;background:transparent}.elementor-slick-slider ul.slick-dots li button:focus,.elementor-slick-slider ul.slick-dots li button:hover{outline:none}.elementor-slick-slider ul.slick-dots li button:focus:before,.elementor-slick-slider ul.slick-dots li button:hover:before{opacity:1}.elementor-slick-slider ul.slick-dots li button:before{font-family:eicons;font-size:6px;line-height:20px;position:absolute;top:0;left:0;width:20px;height:20px;content:"\e914";text-align:center;opacity:.25;color:#000;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.elementor-slick-slider ul.slick-dots li.slick-active button:before{opacity:.75;color:#000}.elementor-slick-slider .slick-arrows-inside .slick-prev{left:20px}[dir=rtl] .elementor-slick-slider .slick-arrows-inside .slick-prev{left:auto;right:20px}.elementor-slick-slider .slick-arrows-inside .slick-next{right:20px}[dir=rtl] .elementor-slick-slider .slick-arrows-inside .slick-next{left:20px;right:auto}.elementor-slick-slider .slick-dots-inside .slick-dots{bottom:5px}.elementor-slick-slider .slick-dots-inside.slick-dotted.slick-slider{margin-bottom:0}.elementor-slick-slider .slick-slider .slick-next,.elementor-slick-slider .slick-slider .slick-prev{z-index:1}.elementor-slick-slider .slick-slide img{margin:auto}.swiper-container{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;z-index:1}.swiper-container .swiper-slide figure{line-height:0}.swiper-container .elementor-lightbox-content-source{display:none}.swiper-container-no-flexbox .swiper-slide{float:left}.swiper-container-vertical>.swiper-wrapper{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;-o-transition-property:transform;transition-property:transform;transition-property:transform,-webkit-transform;-webkit-box-sizing:content-box;box-sizing:content-box}.swiper-container-android .swiper-slide,.swiper-wrapper{-webkit-transform:translateZ(0);transform:translateZ(0)}.swiper-container-multirow>.swiper-wrapper{-ms-flex-wrap:wrap;flex-wrap:wrap}.swiper-container-free-mode>.swiper-wrapper{-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out;margin:0 auto}.swiper-slide{-ms-flex-negative:0;flex-shrink:0;width:100%;height:100%;position:relative}.swiper-container-autoheight,.swiper-container-autoheight .swiper-slide{height:auto}.swiper-container-autoheight .swiper-wrapper{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-transition-property:height,-webkit-transform;transition-property:height,-webkit-transform;-o-transition-property:transform,height;transition-property:transform,height;transition-property:transform,height,-webkit-transform}.swiper-container .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}.swiper-wp8-horizontal{-ms-touch-action:pan-y;touch-action:pan-y}.swiper-wp8-vertical{-ms-touch-action:pan-x;touch-action:pan-x}.swiper-button-next,.swiper-button-prev{position:absolute;top:50%;width:27px;height:44px;margin-top:-22px;z-index:10;cursor:pointer;-webkit-background-size:27px 44px;background-size:27px 44px;background:no-repeat 50%}.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}.swiper-button-prev,.swiper-container-rtl .swiper-button-next{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z' fill='%23007aff'/%3E%3C/svg%3E");left:10px;right:auto}.swiper-button-prev.swiper-button-black,.swiper-container-rtl .swiper-button-next.swiper-button-black{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z'/%3E%3C/svg%3E")}.swiper-button-prev.swiper-button-white,.swiper-container-rtl .swiper-button-next.swiper-button-white{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z' fill='%23fff'/%3E%3C/svg%3E")}.swiper-button-next,.swiper-container-rtl .swiper-button-prev{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z' fill='%23007aff'/%3E%3C/svg%3E");right:10px;left:auto}.swiper-button-next.swiper-button-black,.swiper-container-rtl .swiper-button-prev.swiper-button-black{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z'/%3E%3C/svg%3E")}.swiper-button-next.swiper-button-white,.swiper-container-rtl .swiper-button-prev.swiper-button-white{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z' fill='%23fff'/%3E%3C/svg%3E")}.swiper-pagination{position:absolute;text-align:center;-webkit-transition:.3s;-o-transition:.3s;transition:.3s;-webkit-transform:translateZ(0);transform:translateZ(0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-container-horizontal>.swiper-pagination-bullets,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:5px;left:0;width:100%}.swiper-pagination-bullet{width:6px;height:6px;display:inline-block;-webkit-border-radius:50%;border-radius:50%;background:#000;opacity:.2}.swiper-pagination-fraction{color:#000}button.swiper-pagination-bullet{border:none;margin:0;padding:0;-webkit-box-shadow:none;box-shadow:none;appearance:none;-webkit-appearance:none;-moz-appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-white .swiper-pagination-bullet{background:#fff}.swiper-pagination-bullet-active{opacity:1}.swiper-pagination-white .swiper-pagination-bullet-active{background:#fff}.swiper-pagination-black .swiper-pagination-bullet-active{background:#000}.swiper-container-vertical>.swiper-pagination-bullets{right:10px;top:50%;-webkit-transform:translate3d(0,-50%,0);transform:translate3d(0,-50%,0)}.swiper-container-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{margin:5px 0;display:block}.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 6px}.swiper-pagination-progressbar{background:rgba(0,0,0,.25);position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:#000;position:absolute;left:0;top:0;width:100%;height:100%;-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);-webkit-transform-origin:left top;-ms-transform-origin:left top;transform-origin:left top}.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{-webkit-transform-origin:right top;-ms-transform-origin:right top;transform-origin:right top}.swiper-container-horizontal>.swiper-pagination-progressbar{width:100%;height:4px;left:0;top:0}.swiper-container-vertical>.swiper-pagination-progressbar{width:4px;height:100%;left:0;top:0}.swiper-pagination-progressbar.swiper-pagination-white{background:hsla(0,0%,100%,.5)}.swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill{background:#fff}.swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill{background:#000}.swiper-container-3d{-webkit-perspective:1200px;perspective:1200px}.swiper-container-3d .swiper-cube-shadow,.swiper-container-3d .swiper-slide,.swiper-container-3d .swiper-slide-shadow-bottom,.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top,.swiper-container-3d .swiper-wrapper{-webkit-transform-style:preserve-3d;transform-style:preserve-3d}.swiper-container-3d .swiper-slide-shadow-bottom,.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-container-3d .swiper-slide-shadow-left{background-image:-webkit-gradient(linear,right top,left top,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(right,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(right,rgba(0,0,0,.5),transparent);background-image:linear-gradient(270deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-right{background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(left,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(left,rgba(0,0,0,.5),transparent);background-image:linear-gradient(90deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-top{background-image:-webkit-gradient(linear,left bottom,left top,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(bottom,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(bottom,rgba(0,0,0,.5),transparent);background-image:linear-gradient(0deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-bottom{background-image:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(top,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(top,rgba(0,0,0,.5),transparent);background-image:linear-gradient(180deg,rgba(0,0,0,.5),transparent)}.swiper-container-coverflow .swiper-wrapper,.swiper-container-flip .swiper-wrapper{-ms-perspective:1200px}.swiper-container-cube,.swiper-container-flip{overflow:visible}.swiper-container-cube .swiper-slide,.swiper-container-flip .swiper-slide{pointer-events:none;z-index:1}.swiper-container-cube .swiper-slide .swiper-slide,.swiper-container-flip .swiper-slide .swiper-slide{pointer-events:none}.swiper-container-cube .swiper-slide-active,.swiper-container-cube .swiper-slide-active .swiper-slide-active,.swiper-container-flip .swiper-slide-active,.swiper-container-flip .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-container-cube .swiper-slide-shadow-bottom,.swiper-container-cube .swiper-slide-shadow-left,.swiper-container-cube .swiper-slide-shadow-right,.swiper-container-cube .swiper-slide-shadow-top,.swiper-container-flip .swiper-slide-shadow-bottom,.swiper-container-flip .swiper-slide-shadow-left,.swiper-container-flip .swiper-slide-shadow-right,.swiper-container-flip .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-container-cube .swiper-slide{visibility:hidden;-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0;width:100%;height:100%}.swiper-container-cube.swiper-container-rtl .swiper-slide{-webkit-transform-origin:100% 0;-ms-transform-origin:100% 0;transform-origin:100% 0}.swiper-container-cube .swiper-slide-active,.swiper-container-cube .swiper-slide-next,.swiper-container-cube .swiper-slide-next+.swiper-slide,.swiper-container-cube .swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-container-cube .swiper-cube-shadow{position:absolute;left:0;bottom:0;width:100%;height:100%;background:#000;opacity:.6;-webkit-filter:blur(50px);filter:blur(50px);z-index:0}.swiper-container-fade.swiper-container-free-mode .swiper-slide{-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out}.swiper-container-fade .swiper-slide{pointer-events:none;-webkit-transition-property:opacity;-o-transition-property:opacity;transition-property:opacity}.swiper-container-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-container-fade .swiper-slide-active,.swiper-container-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-zoom-container{width:100%;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;text-align:center}.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{max-width:100%;max-height:100%;-o-object-fit:contain;object-fit:contain}.swiper-scrollbar{-webkit-border-radius:10px;border-radius:10px;position:relative;-ms-touch-action:none;background:rgba(0,0,0,.1)}.swiper-container-horizontal>.swiper-scrollbar{position:absolute;left:1%;bottom:3px;z-index:50;height:5px;width:98%}.swiper-container-vertical>.swiper-scrollbar{position:absolute;right:3px;top:1%;z-index:50;width:5px;height:98%}.swiper-scrollbar-drag{height:100%;width:100%;position:relative;background:rgba(0,0,0,.5);-webkit-border-radius:10px;border-radius:10px;left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.elementor-pagination-position-outside .swiper-container{padding-bottom:30px}.elementor-pagination-position-outside .elementor-swiper-button{top:calc(50% - 30px / 2)}.elementor-swiper{position:relative}.elementor-main-swiper{position:static}.elementor-arrows-position-outside .swiper-container{width:calc(100% - 60px)}.elementor-arrows-position-outside .elementor-swiper-button-prev{left:0}.elementor-arrows-position-outside .elementor-swiper-button-next{right:0}.swiper-image-stretch .swiper-slide .swiper-slide-image{width:100%}.elementor-swiper-button{position:absolute;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;z-index:1;cursor:pointer;font-size:25px;color:hsla(0,0%,93.3%,.9);top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}.elementor-swiper-button-prev{left:10px}.elementor-swiper-button-next{right:10px}.elementor-swiper-button.swiper-button-disabled{opacity:.3}.swiper-container-cube .elementor-swiper-button{-webkit-transform:translate3d(0,-50%,1px);transform:translate3d(0,-50%,1px)}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;-webkit-transform-origin:50%;-ms-transform-origin:50%;transform-origin:50%;-webkit-animation:swiper-preloader-spin 1s steps(12) infinite;animation:swiper-preloader-spin 1s steps(12) infinite}.swiper-lazy-preloader:after{display:block;content:"";width:100%;height:100%;-webkit-background-size:100% 100%;background-size:100%;background:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath id='a' stroke='%236c6c6c' stroke-width='11' stroke-linecap='round' d='M60 7v20'/%3E%3C/defs%3E%3Cuse xlink:href='%23a' opacity='.27'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(30 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(60 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(90 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(120 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(150 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.37' transform='rotate(180 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.46' transform='rotate(210 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.56' transform='rotate(240 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.66' transform='rotate(270 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.75' transform='rotate(300 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.85' transform='rotate(330 60 60)'/%3E%3C/svg%3E") no-repeat 50%}.swiper-lazy-preloader-white:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath id='a' stroke='%23fff' stroke-width='11' stroke-linecap='round' d='M60 7v20'/%3E%3C/defs%3E%3Cuse xlink:href='%23a' opacity='.27'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(30 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(60 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(90 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(120 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(150 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.37' transform='rotate(180 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.46' transform='rotate(210 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.56' transform='rotate(240 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.66' transform='rotate(270 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.75' transform='rotate(300 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.85' transform='rotate(330 60 60)'/%3E%3C/svg%3E")}@-webkit-keyframes swiper-preloader-spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes swiper-preloader-spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.elementor-lightbox{--lightbox-ui-color:hsla(0,0%,93.3%,0.9);--lightbox-ui-color-hover:#fff;--lightbox-text-color:var(--lightbox-ui-color);--lightbox-header-icons-size:20px;--lightbox-navigation-icons-size:25px}.elementor-lightbox .dialog-header{display:none}.elementor-lightbox .dialog-widget-content{background:none;-webkit-box-shadow:none;box-shadow:none;width:100%;height:100%}.elementor-lightbox .dialog-message{-webkit-animation-duration:.3s;animation-duration:.3s}.elementor-lightbox .dialog-message:not(.elementor-fit-aspect-ratio){height:100%}.elementor-lightbox .dialog-message.dialog-lightbox-message{padding:0}.elementor-lightbox .dialog-lightbox-close-button{cursor:pointer;position:absolute;font-size:var(--lightbox-header-icons-size);left:.75em;margin-top:13px;padding:.25em;z-index:2;line-height:1}.elementor-lightbox .dialog-lightbox-close-button,.elementor-lightbox .elementor-swiper-button{color:var(--lightbox-ui-color);-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;opacity:1}.elementor-lightbox .dialog-lightbox-close-button:hover,.elementor-lightbox .elementor-swiper-button:hover{color:var(--lightbox-ui-color-hover)}.elementor-lightbox .swiper-container{height:100%}.elementor-lightbox .elementor-lightbox-item{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;position:relative;padding:70px;-webkit-box-sizing:border-box;box-sizing:border-box;height:100%;margin:auto}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-lightbox .elementor-lightbox-item{padding:70px 0}}.elementor-lightbox .elementor-lightbox-image{max-height:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.elementor-lightbox .elementor-lightbox-image,.elementor-lightbox .elementor-lightbox-image:hover{opacity:1;-webkit-filter:none;filter:none;border:none}.elementor-lightbox .elementor-lightbox-image,.elementor-lightbox .elementor-video-container{-webkit-box-shadow:0 0 30px rgba(0,0,0,.3),0 0 8px -5px rgba(0,0,0,.3);box-shadow:0 0 30px rgba(0,0,0,.3),0 0 8px -5px rgba(0,0,0,.3);-webkit-border-radius:2px;border-radius:2px}.elementor-lightbox .elementor-video-container{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}@media (min-width:ELEMENTOR_SCREEN_TABLET_NEXT){.elementor-lightbox .elementor-video-container{width:75%}}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-lightbox .elementor-video-container{width:100%}}@media (min-width:768px) and (max-width:1024px){.elementor-lightbox .elementor-aspect-ratio-916 .elementor-video-container{width:70%}}.elementor-lightbox .elementor-swiper-button:focus{outline-width:1px}.elementor-lightbox .elementor-swiper-button-next,.elementor-lightbox .elementor-swiper-button-prev{height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:15%;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;font-size:var(--lightbox-navigation-icons-size)}.elementor-lightbox .elementor-swiper-button-prev{left:0}.elementor-lightbox .elementor-swiper-button-next{right:0}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-lightbox .elementor-swiper-button:focus{outline:none}.elementor-lightbox .elementor-swiper-button-next,.elementor-lightbox .elementor-swiper-button-prev{width:20%}.elementor-lightbox .elementor-swiper-button-next i,.elementor-lightbox .elementor-swiper-button-prev i{padding:10px;background-color:rgba(0,0,0,.5)}.elementor-lightbox .elementor-swiper-button-prev{left:0;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-lightbox .elementor-swiper-button-next{right:0;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}}.elementor-slideshow__counter{color:currentColor;font-size:.75em;width:-webkit-max-content;width:-moz-max-content;width:max-content}.elementor-slideshow__footer,.elementor-slideshow__header{position:absolute;left:0;width:100%;padding:15px 20px;-webkit-transition:.3s;-o-transition:.3s;transition:.3s}.elementor-slideshow__footer{color:var(--lightbox-text-color)}.elementor-slideshow__header{color:var(--lightbox-ui-color);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;font-size:var(--lightbox-header-icons-size);padding-right:1em;padding-left:2.6em;top:0;-webkit-box-align:center;-ms-flex-align:center;align-items:center;z-index:10}.elementor-slideshow__header>i{font-size:inherit;cursor:pointer;padding:.25em;margin:0 .35em}.elementor-slideshow__header>i:hover{color:var(--lightbox-ui-color-hover)}.elementor-slideshow__header .elementor-slideshow__counter{margin-left:auto}.elementor-slideshow__header .elementor-icon-share{z-index:5}.elementor-slideshow__share-menu{background-color:transparent;width:0;height:0;position:absolute;overflow:hidden;-webkit-transition:background-color .4s;-o-transition:background-color .4s;transition:background-color .4s}.elementor-slideshow__share-menu .elementor-slideshow__share-links a{color:#2c2c2c}.elementor-slideshow__share-links{display:block;position:absolute;min-width:200px;left:2.8em;top:3em;background-color:#fff;-webkit-border-radius:3px;border-radius:3px;padding:14px 20px;-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);opacity:0;-webkit-transform-origin:90% 10%;-ms-transform-origin:90% 10%;transform-origin:90% 10%;-webkit-transition:all .25s .1s;-o-transition:all .25s .1s;transition:all .25s .1s;-webkit-box-shadow:0 4px 15px rgba(0,0,0,.3);box-shadow:0 4px 15px rgba(0,0,0,.3)}.elementor-slideshow__share-links a{text-align:right;color:#55595c;font-size:12px;line-height:2.5;display:block;opacity:0;-webkit-transition:opacity .5s .1s;-o-transition:opacity .5s .1s;transition:opacity .5s .1s}.elementor-slideshow__share-links a:hover{color:#000}.elementor-slideshow__share-links a i{font-size:1.25em;margin-left:.75em}.elementor-slideshow__share-links:before{content:"";display:block;position:absolute;top:1px;left:.5em;border:.45em solid transparent;border-bottom-color:#fff;-webkit-transform:translateY(-100%) scaleX(.7);-ms-transform:translateY(-100%) scaleX(.7);transform:translateY(-100%) scaleX(.7)}.elementor-slideshow__footer{bottom:0;z-index:5;position:fixed}.elementor-slideshow__description,.elementor-slideshow__title{margin:0}.elementor-slideshow__title{font-size:16px;font-weight:700}.elementor-slideshow__description{font-size:14px}.elementor-slideshow--ui-hidden .elementor-slideshow__footer,.elementor-slideshow--ui-hidden .elementor-slideshow__header{opacity:0;pointer-events:none}.elementor-slideshow--ui-hidden .elementor-swiper-button-next,.elementor-slideshow--ui-hidden .elementor-swiper-button-prev{opacity:0}.elementor-slideshow--fullscreen-mode .elementor-video-container{width:100%}.elementor-slideshow--zoom-mode .elementor-slideshow__footer,.elementor-slideshow--zoom-mode .elementor-slideshow__header{background-color:rgba(0,0,0,.5)}.elementor-slideshow--zoom-mode .elementor-swiper-button-next,.elementor-slideshow--zoom-mode .elementor-swiper-button-prev{opacity:0;pointer-events:none}.elementor-slideshow--share-mode .elementor-slideshow__share-menu{top:0;left:0;width:100vw;height:100vh;opacity:1;cursor:default;background-color:rgba(0,0,0,.5)}.elementor-slideshow--share-mode .elementor-slideshow__share-links{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}.elementor-slideshow--share-mode .elementor-slideshow__share-links,.elementor-slideshow--share-mode .elementor-slideshow__share-links a{opacity:1}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-twitter{color:#1da1f2}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-facebook{color:#3b5998}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-pinterest{color:#bd081c}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-download-bold{color:#a4afb7}.elementor-slideshow--share-mode .eicon-share-arrow{z-index:2}.animated{-webkit-animation-duration:1.25s;animation-duration:1.25s}.animated.animated-slow{-webkit-animation-duration:2s;animation-duration:2s}.animated.animated-fast{-webkit-animation-duration:.75s;animation-duration:.75s}.animated.infinite{-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}.animated.reverse{animation-direction:reverse;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}@media (prefers-reduced-motion:reduce){.animated{-webkit-animation:none;animation:none}}.elementor-shape{overflow:hidden;position:absolute;left:0;width:100%;line-height:0;direction:ltr}.elementor-shape-top{top:-1px}.elementor-shape-top:not([data-negative=false]) svg{z-index:-1}.elementor-shape-bottom{bottom:-1px}.elementor-shape-bottom:not([data-negative=true]) svg{z-index:-1}.elementor-shape[data-negative=false].elementor-shape-bottom,.elementor-shape[data-negative=true].elementor-shape-top{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.elementor-shape svg{display:block;width:calc(100% + 1.3px);position:relative;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.elementor-shape .elementor-shape-fill{fill:#fff;-webkit-transform-origin:center;-ms-transform-origin:center;transform-origin:center;-webkit-transform:rotateY(0deg);transform:rotateY(0deg)}#wp-admin-bar-elementor_edit_page .ab-submenu .ab-item{display:-webkit-box;display:-ms-flexbox;display:flex;width:200px}#wp-admin-bar-elementor_edit_page .elementor-edit-link-title{white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;width:100%}#wp-admin-bar-elementor_edit_page .elementor-edit-link-type{background:#55595c;font-size:11px;line-height:9px;margin-top:6px;padding:4px 8px;-webkit-border-radius:3px;border-radius:3px}.page-template-elementor_canvas.elementor-page:before{display:none}.elementor-post__thumbnail__link{-webkit-transition:none;-o-transition:none;transition:none}#left-area ul.elementor-icon-list-items,.elementor-edit-area .elementor-element ul.elementor-icon-list-items,.elementor .elementor-element ul.elementor-icon-list-items{padding:0}#wpadminbar *{font-style:normal}.e--ua-appleWebkit.rtl{--flex-right:flex-start}.e--ua-appleWebkit .elementor-share-buttons--align-right,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-right{--justify-content:var(--flex-right,flex-end)}.e--ua-appleWebkit .elementor-share-buttons--align-center,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-center{--justify-content:center}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-justify .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-right .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-right .elementor-grid{width:auto;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:var(--justify-content,space-between);-ms-flex-pack:var(--justify-content,space-between);justify-content:var(--justify-content,space-between);margin-left:calc(-.5 * var(--grid-column-gap));margin-right:calc(-.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-justify .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-right .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-right .elementor-grid-item{margin-left:calc(.5 * var(--grid-column-gap));margin-right:calc(.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid{display:inline-block}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid-item{margin-left:0;margin-right:0}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.e--ua-appleWebkit .elementor-share-buttons-tablet--align-right,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-tablet-right{--justify-content:var(--flex-right,flex-end)}.e--ua-appleWebkit .elementor-share-buttons-tablet--align-center,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-tablet-center{--justify-content:center}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-justify .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-right .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-right .elementor-grid{width:auto;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:var(--justify-content,space-between);-ms-flex-pack:var(--justify-content,space-between);justify-content:var(--justify-content,space-between);margin-left:calc(-.5 * var(--grid-column-gap));margin-right:calc(-.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-justify .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-right .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-right .elementor-grid-item{margin-left:calc(.5 * var(--grid-column-gap));margin-right:calc(.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid{display:inline-block}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid-item{margin-left:0;margin-right:0}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.e--ua-appleWebkit .elementor-share-buttons-mobile--align-right,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-mobile-right{--justify-content:var(--flex-right,flex-end)}.e--ua-appleWebkit .elementor-share-buttons-mobile--align-center,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-mobile-center{--justify-content:center}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-justify .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-right .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-right .elementor-grid{width:auto;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:var(--justify-content,space-between);-ms-flex-pack:var(--justify-content,space-between);justify-content:var(--justify-content,space-between);margin-left:calc(-.5 * var(--grid-column-gap));margin-right:calc(-.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-justify .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-right .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-right .elementor-grid-item{margin-left:calc(.5 * var(--grid-column-gap));margin-right:calc(.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid{display:inline-block}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid-item{margin-left:0;margin-right:0}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor .elementor-hidden-mobile,.elementor .elementor-hidden-phone{display:none}}@media (min-width:ELEMENTOR_SCREEN_MOBILE_EXTRA_MIN) and (max-width:ELEMENTOR_SCREEN_MOBILE_EXTRA_MAX){.elementor .elementor-hidden-mobile_extra{display:none}}@media (min-width:ELEMENTOR_SCREEN_TABLET_MIN) and (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor .elementor-hidden-tablet{display:none}}@media (min-width:ELEMENTOR_SCREEN_TABLET_EXTRA_MIN) and (max-width:ELEMENTOR_SCREEN_TABLET_EXTRA_MAX){.elementor .elementor-hidden-tablet_extra{display:none}}@media (min-width:ELEMENTOR_SCREEN_LAPTOP_MIN) and (max-width:ELEMENTOR_SCREEN_LAPTOP_MAX){.elementor .elementor-hidden-laptop{display:none}}@media (min-width:ELEMENTOR_SCREEN_DESKTOP_MIN) and (max-width:ELEMENTOR_SCREEN_DESKTOP_MAX){.elementor .elementor-hidden-desktop{display:none}}@media (min-width:ELEMENTOR_SCREEN_WIDESCREEN_MIN){.elementor .elementor-hidden-widescreen{display:none}}.elementor-widget-text-path{font-size:20px;text-align:var(--alignment,right)}.elementor-widget-text-path svg{width:var(--width);max-width:100%;height:auto;overflow:visible;word-spacing:var(--word-spacing);-webkit-transform:rotate(var(--rotate,0)) scaleX(var(--scale-x,1)) scaleY(var(--scale-y,1));-ms-transform:rotate(var(--rotate,0)) scaleX(var(--scale-x,1)) scaleY(var(--scale-y,1));transform:rotate(var(--rotate,0)) scaleX(var(--scale-x,1)) scaleY(var(--scale-y,1))}.elementor-widget-text-path svg path{vector-effect:non-scaling-stroke;fill:var(--path-fill,transparent);stroke:var(--stroke-color,transparent);stroke-width:var(--stroke-width,1px);-webkit-transition:var(--stroke-transition) stroke,var(--stroke-transition) fill;-o-transition:var(--stroke-transition) stroke,var(--stroke-transition) fill;transition:var(--stroke-transition) stroke,var(--stroke-transition) fill}.elementor-widget-text-path svg:hover path{--path-fill:var(--path-fill-hover);--stroke-color:var(--stroke-color-hover);--stroke-width:var(--stroke-width-hover)}.elementor-widget-text-path svg text{--fill:var(--text-color);fill:var(--fill);direction:var(--direction,rtl);-webkit-transition:var(--transition) stroke,var(--transition) stroke-width,var(--transition) fill;-o-transition:var(--transition) stroke,var(--transition) stroke-width,var(--transition) fill;transition:var(--transition) stroke,var(--transition) stroke-width,var(--transition) fill}.elementor-widget-text-path svg text:hover{--color:var(--text-color-hover,var(--text-color));--fill:var(--color);color:var(--color)}.elementor-accordion{text-align:right}.elementor-accordion .elementor-accordion-item{border:1px solid #d4d4d4}.elementor-accordion .elementor-accordion-item+.elementor-accordion-item{border-top:none}.elementor-accordion .elementor-tab-title{margin:0;padding:15px 20px;font-weight:700;line-height:1;cursor:pointer;outline:none}.elementor-accordion .elementor-tab-title .elementor-accordion-icon{display:inline-block;width:1.5em}.elementor-accordion .elementor-tab-title .elementor-accordion-icon svg{width:1em;height:1em}.elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-right{float:right;text-align:right}.elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-left{float:left;text-align:left}.elementor-accordion .elementor-tab-title .elementor-accordion-icon .elementor-accordion-icon-closed{display:block}.elementor-accordion .elementor-tab-title .elementor-accordion-icon .elementor-accordion-icon-opened,.elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-closed{display:none}.elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-opened{display:block}.elementor-accordion .elementor-tab-content{display:none;padding:15px 20px;border-top:1px solid #d4d4d4}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-accordion .elementor-tab-title{padding:12px 15px}.elementor-accordion .elementor-tab-title .elementor-accordion-icon{width:1.2em}.elementor-accordion .elementor-tab-content{padding:7px 15px}}.elementor-alert{padding:15px;border-left:5px solid transparent;position:relative;text-align:right}.elementor-alert .elementor-alert-title{display:block;font-weight:700}.elementor-alert .elementor-alert-description{font-size:13px}.elementor-alert button.elementor-alert-dismiss{position:absolute;left:10px;top:10px;padding:3px;font-size:20px;line-height:1;background:transparent;color:inherit;border:none;cursor:pointer}.elementor-alert.elementor-alert-info{color:#31708f;background-color:#d9edf7;border-color:#bcdff1}.elementor-alert.elementor-alert-success{color:#3c763d;background-color:#dff0d8;border-color:#cae6be}.elementor-alert.elementor-alert-warning{color:#8a6d3b;background-color:#fcf8e3;border-color:#f9f0c3}.elementor-alert.elementor-alert-danger{color:#a94442;background-color:#f2dede;border-color:#e8c4c4}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-alert{padding:10px}.elementor-alert button.elementor-alert-dismiss{right:7px;top:7px}}.elementor-counter .elementor-counter-number-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;font-size:69px;font-weight:600;line-height:1}.elementor-counter .elementor-counter-number-prefix,.elementor-counter .elementor-counter-number-suffix{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;white-space:pre-wrap}.elementor-counter .elementor-counter-number-prefix{text-align:left}.elementor-counter .elementor-counter-number-suffix{text-align:right}.elementor-counter .elementor-counter-title{text-align:center;font-size:19px;font-weight:400;line-height:2.5}.elementor-widget-divider{--divider-border-style:none;--divider-border-width:1px;--divider-color:#2c2c2c;--divider-icon-size:20px;--divider-element-spacing:10px;--divider-pattern-height:24px;--divider-pattern-size:20px;--divider-pattern-url:none;--divider-pattern-repeat:repeat-x}.elementor-widget-divider .elementor-divider{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget-divider .elementor-divider__text{font-size:15px;line-height:1;max-width:95%}.elementor-widget-divider .elementor-divider__element{margin:0 var(--divider-element-spacing);-ms-flex-negative:0;flex-shrink:0}.elementor-widget-divider .elementor-icon{font-size:var(--divider-icon-size)}.elementor-widget-divider .elementor-divider-separator{display:-webkit-box;display:-ms-flexbox;display:flex;margin:0;direction:ltr}.elementor-widget-divider--view-line_icon .elementor-divider-separator,.elementor-widget-divider--view-line_text .elementor-divider-separator{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-widget-divider--view-line_icon .elementor-divider-separator:after,.elementor-widget-divider--view-line_icon .elementor-divider-separator:before,.elementor-widget-divider--view-line_text .elementor-divider-separator:after,.elementor-widget-divider--view-line_text .elementor-divider-separator:before{display:block;content:"";border-bottom:0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;border-top:var(--divider-border-width) var(--divider-border-style) var(--divider-color)}.elementor-widget-divider--element-align-left .elementor-divider .elementor-divider-separator>.elementor-divider__svg:first-of-type{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:100;flex-shrink:100}.elementor-widget-divider--element-align-left .elementor-divider-separator:before{content:none}.elementor-widget-divider--element-align-left .elementor-divider__element{margin-left:0}.elementor-widget-divider--element-align-right .elementor-divider .elementor-divider-separator>.elementor-divider__svg:last-of-type{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:100;flex-shrink:100}.elementor-widget-divider--element-align-right .elementor-divider-separator:after{content:none}.elementor-widget-divider--element-align-right .elementor-divider__element{margin-right:0}.elementor-widget-divider:not(.elementor-widget-divider--view-line_text):not(.elementor-widget-divider--view-line_icon) .elementor-divider-separator{border-top:var(--divider-border-width) var(--divider-border-style) var(--divider-color)}.elementor-widget-divider--separator-type-pattern{--divider-border-style:none}.elementor-widget-divider--separator-type-pattern.elementor-widget-divider--view-line .elementor-divider-separator,.elementor-widget-divider--separator-type-pattern:not(.elementor-widget-divider--view-line) .elementor-divider-separator:after,.elementor-widget-divider--separator-type-pattern:not(.elementor-widget-divider--view-line) .elementor-divider-separator:before,.elementor-widget-divider--separator-type-pattern:not([class*=elementor-widget-divider--view]) .elementor-divider-separator{width:100%;min-height:var(--divider-pattern-height);-webkit-mask-size:var(--divider-pattern-size) 100%;mask-size:var(--divider-pattern-size) 100%;-webkit-mask-repeat:var(--divider-pattern-repeat);mask-repeat:var(--divider-pattern-repeat);background-color:var(--divider-color);-webkit-mask-image:var(--divider-pattern-url);mask-image:var(--divider-pattern-url)}.elementor-widget-divider--no-spacing{--divider-pattern-size:auto}.elementor-widget-divider--bg-round{--divider-pattern-repeat:round}.rtl .elementor-widget-divider .elementor-divider__text{direction:rtl}.elementor-image-gallery .gallery-item{display:inline-block;text-align:center;vertical-align:top;width:100%;max-width:100%;margin:0 auto}.elementor-image-gallery .gallery-item img{margin:0 auto}.elementor-image-gallery .gallery-item .gallery-caption{margin:0}.elementor-image-gallery figure img{display:block}.elementor-image-gallery figure figcaption{width:100%}.gallery-spacing-custom .elementor-image-gallery .gallery-icon{padding:0}@media (min-width:ELEMENTOR_SCREEN_MOBILE_NEXT){.elementor-image-gallery .gallery-columns-2 .gallery-item{max-width:50%}.elementor-image-gallery .gallery-columns-3 .gallery-item{max-width:33.33%}.elementor-image-gallery .gallery-columns-4 .gallery-item{max-width:25%}.elementor-image-gallery .gallery-columns-5 .gallery-item{max-width:20%}.elementor-image-gallery .gallery-columns-6 .gallery-item{max-width:16.666%}.elementor-image-gallery .gallery-columns-7 .gallery-item{max-width:14.28%}.elementor-image-gallery .gallery-columns-8 .gallery-item{max-width:12.5%}.elementor-image-gallery .gallery-columns-9 .gallery-item{max-width:11.11%}.elementor-image-gallery .gallery-columns-10 .gallery-item{max-width:10%}}@media (min-width:480px) and (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-image-gallery .gallery.gallery-columns-2 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-3 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-4 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-5 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-6 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-7 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-8 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-9 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-10 .gallery-item{max-width:50%}}@media (max-width:479px){.elementor-image-gallery .gallery.gallery-columns-2 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-3 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-4 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-5 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-6 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-7 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-8 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-9 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-10 .gallery-item{max-width:100%}}.elementor-widget-google_maps .elementor-widget-container{overflow:hidden}.elementor-widget-google_maps iframe{height:300px}.elementor-heading-title{padding:0;margin:0;line-height:1}.elementor-widget-heading .elementor-heading-title[class*=elementor-size-]>a{color:inherit;font-size:inherit;line-height:inherit}.elementor-widget-heading .elementor-heading-title.elementor-size-small{font-size:15px}.elementor-widget-heading .elementor-heading-title.elementor-size-medium{font-size:19px}.elementor-widget-heading .elementor-heading-title.elementor-size-large{font-size:29px}.elementor-widget-heading .elementor-heading-title.elementor-size-xl{font-size:39px}.elementor-widget-heading .elementor-heading-title.elementor-size-xxl{font-size:59px}@media (min-width:ELEMENTOR_SCREEN_MOBILE_NEXT){.elementor-widget-icon-box.elementor-position-left .elementor-icon-box-wrapper,.elementor-widget-icon-box.elementor-position-right .elementor-icon-box-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget-icon-box.elementor-position-left .elementor-icon-box-icon,.elementor-widget-icon-box.elementor-position-right .elementor-icon-box-icon{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.elementor-widget-icon-box.elementor-position-right .elementor-icon-box-wrapper{text-align:left;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.elementor-widget-icon-box.elementor-position-left .elementor-icon-box-wrapper{text-align:right;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-widget-icon-box.elementor-position-top .elementor-icon-box-img{margin:auto}.elementor-widget-icon-box.elementor-vertical-align-top .elementor-icon-box-wrapper{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.elementor-widget-icon-box.elementor-vertical-align-middle .elementor-icon-box-wrapper{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-widget-icon-box.elementor-vertical-align-bottom .elementor-icon-box-wrapper{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-widget-icon-box .elementor-icon-box-icon{margin-left:auto!important;margin-right:auto!important;margin-bottom:15px}}.elementor-widget-icon-box .elementor-icon-box-wrapper{text-align:center}.elementor-widget-icon-box .elementor-icon-box-title a{color:inherit}.elementor-widget-icon-box .elementor-icon-box-content{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-widget-icon-box .elementor-icon-box-description{margin:0}.elementor-widget.elementor-icon-list--layout-inline .elementor-widget-container{overflow:hidden}.elementor-widget .elementor-icon-list-items.elementor-inline-items{margin-right:-8px;margin-left:-8px}.elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-right:8px;margin-left:8px}.elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{width:auto;left:auto;right:auto;position:relative;height:100%;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);border-top:0;border-bottom:0;border-right:0;border-left-width:1px;border-style:solid;left:-8px}.elementor-widget .elementor-icon-list-items{list-style-type:none;margin:0;padding:0}.elementor-widget .elementor-icon-list-item{margin:0;padding:0;position:relative}.elementor-widget .elementor-icon-list-item:after{position:absolute;bottom:0;width:100%}.elementor-widget .elementor-icon-list-item,.elementor-widget .elementor-icon-list-item a{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-size:inherit}.elementor-widget .elementor-icon-list-icon+.elementor-icon-list-text{-ms-flex-item-align:center;align-self:center;padding-right:5px}.elementor-widget .elementor-icon-list-icon{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget .elementor-icon-list-icon svg{width:var(--e-icon-list-icon-size,1em);height:var(--e-icon-list-icon-size,1em)}.elementor-widget .elementor-icon-list-icon i{width:1.25em;font-size:var(--e-icon-list-icon-size)}.elementor-widget.elementor-widget-icon-list .elementor-icon-list-icon{text-align:var(--e-icon-list-icon-align)}.elementor-widget.elementor-widget-icon-list .elementor-icon-list-icon svg{margin:var(--e-icon-list-icon-margin,0 calc(var(--e-icon-list-icon-size, 1em) * .25) 0 0)}.elementor-widget.elementor-list-item-link-full_width a{width:100%}.elementor-widget.elementor-align-center .elementor-icon-list-item,.elementor-widget.elementor-align-center .elementor-icon-list-item a{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget.elementor-align-center .elementor-inline-items{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-align-left .elementor-icon-list-item,.elementor-widget.elementor-align-left .elementor-icon-list-item a{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;text-align:left}.elementor-widget.elementor-align-left .elementor-inline-items{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-widget.elementor-align-right .elementor-icon-list-item,.elementor-widget.elementor-align-right .elementor-icon-list-item a{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;text-align:right}.elementor-widget.elementor-align-right .elementor-icon-list-items{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-widget:not(.elementor-align-right) .elementor-icon-list-item:after{right:0}.elementor-widget:not(.elementor-align-left) .elementor-icon-list-item:after{left:0}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-widget.elementor-tablet-align-center .elementor-icon-list-item,.elementor-widget.elementor-tablet-align-center .elementor-icon-list-item a,.elementor-widget.elementor-tablet-align-center .elementor-icon-list-items{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-tablet-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget.elementor-tablet-align-left .elementor-icon-list-items{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-widget.elementor-tablet-align-left .elementor-icon-list-item,.elementor-widget.elementor-tablet-align-left .elementor-icon-list-item a{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;text-align:left}.elementor-widget.elementor-tablet-align-right .elementor-icon-list-items{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-widget.elementor-tablet-align-right .elementor-icon-list-item,.elementor-widget.elementor-tablet-align-right .elementor-icon-list-item a{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;text-align:right}.elementor-widget:not(.elementor-tablet-align-right) .elementor-icon-list-item:after{right:0}.elementor-widget:not(.elementor-tablet-align-left) .elementor-icon-list-item:after{left:0}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-widget.elementor-mobile-align-center .elementor-icon-list-item,.elementor-widget.elementor-mobile-align-center .elementor-icon-list-item a,.elementor-widget.elementor-mobile-align-center .elementor-icon-list-items{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-mobile-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget.elementor-mobile-align-left .elementor-icon-list-items{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-widget.elementor-mobile-align-left .elementor-icon-list-item,.elementor-widget.elementor-mobile-align-left .elementor-icon-list-item a{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;text-align:left}.elementor-widget.elementor-mobile-align-right .elementor-icon-list-items{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-widget.elementor-mobile-align-right .elementor-icon-list-item,.elementor-widget.elementor-mobile-align-right .elementor-icon-list-item a{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;text-align:right}.elementor-widget:not(.elementor-mobile-align-right) .elementor-icon-list-item:after{right:0}.elementor-widget:not(.elementor-mobile-align-left) .elementor-icon-list-item:after{left:0}}.elementor-widget-image{text-align:center}.elementor-widget-image a{display:inline-block}.elementor-widget-image a img[src$=".svg"]{width:48px}.elementor-widget-image img{vertical-align:middle;display:inline-block}.elementor-widget-image-box .elementor-image-box-content{width:100%}@media (min-width:ELEMENTOR_SCREEN_MOBILE_NEXT){.elementor-widget-image-box.elementor-position-left .elementor-image-box-wrapper,.elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper{text-align:left;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.elementor-widget-image-box.elementor-position-left .elementor-image-box-wrapper{text-align:right;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-widget-image-box.elementor-position-top .elementor-image-box-img{margin:auto}.elementor-widget-image-box.elementor-vertical-align-top .elementor-image-box-wrapper{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.elementor-widget-image-box.elementor-vertical-align-middle .elementor-image-box-wrapper{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-widget-image-box.elementor-vertical-align-bottom .elementor-image-box-wrapper{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-widget-image-box .elementor-image-box-img{margin-left:auto!important;margin-right:auto!important;margin-bottom:15px}}.elementor-widget-image-box .elementor-image-box-img{display:inline-block}.elementor-widget-image-box .elementor-image-box-title a{color:inherit}.elementor-widget-image-box .elementor-image-box-wrapper{text-align:center}.elementor-widget-image-box .elementor-image-box-description{margin:0}.elementor-widget-image-carousel .swiper-container{position:static}.elementor-widget-image-carousel .swiper-container .swiper-slide figure{line-height:inherit}.elementor-widget-image-carousel .swiper-slide{text-align:center}.elementor-image-carousel-wrapper:not(.swiper-container-initialized) .swiper-slide{max-width:calc(100% / var(--e-image-carousel-slides-to-show, 3))}body.elementor-page .elementor-widget-menu-anchor{margin-bottom:0}.elementor-widget-progress{text-align:right}.elementor-progress-wrapper{position:relative;background-color:#eee;color:#fff;height:100%;-webkit-border-radius:2px;border-radius:2px}.elementor-progress-bar{display:-webkit-box;display:-ms-flexbox;display:flex;background-color:#818a91;width:0;font-size:11px;height:30px;line-height:30px;-webkit-border-radius:2px;border-radius:2px;-webkit-transition:width 1s ease-in-out;-o-transition:width 1s ease-in-out;transition:width 1s ease-in-out}.elementor-progress-text{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;padding-right:15px}.elementor-progress-percentage{padding-left:15px}.elementor-widget-progress .elementor-progress-wrapper.progress-info .elementor-progress-bar{background-color:#5bc0de}.elementor-widget-progress .elementor-progress-wrapper.progress-success .elementor-progress-bar{background-color:#5cb85c}.elementor-widget-progress .elementor-progress-wrapper.progress-warning .elementor-progress-bar{background-color:#f0ad4e}.elementor-widget-progress .elementor-progress-wrapper.progress-danger .elementor-progress-bar{background-color:#d9534f}.elementor-progress .elementor-title{display:block}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-progress-text{padding-right:10px}}.elementor-widget-social-icons.elementor-grid-0 .elementor-widget-container,.elementor-widget-social-icons.elementor-grid-mobile-0 .elementor-widget-container,.elementor-widget-social-icons.elementor-grid-tablet-0 .elementor-widget-container{line-height:1;font-size:0}.elementor-widget-social-icons:not(.elementor-grid-0):not(.elementor-grid-tablet-0):not(.elementor-grid-mobile-0) .elementor-grid{display:inline-grid}.elementor-widget-social-icons .elementor-grid{grid-column-gap:var(--grid-column-gap,5px);grid-row-gap:var(--grid-row-gap,5px);grid-template-columns:var(--grid-template-columns);-webkit-box-pack:var(--justify-content,center);-ms-flex-pack:var(--justify-content,center);justify-content:var(--justify-content,center);justify-items:var(--justify-content,center)}.elementor-icon.elementor-social-icon{font-size:var(--icon-size,25px);line-height:var(--icon-size,25px);width:calc(var(--icon-size, 25px) + (2 * var(--icon-padding, .5em)));height:calc(var(--icon-size, 25px) + (2 * var(--icon-padding, .5em)))}.elementor-social-icon{--e-social-icon-icon-color:#fff;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;background-color:#818a91;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;text-align:center;cursor:pointer}.elementor-social-icon i{color:var(--e-social-icon-icon-color)}.elementor-social-icon svg{fill:var(--e-social-icon-icon-color)}.elementor-social-icon:last-child{margin:0}.elementor-social-icon:hover{opacity:.9;color:#fff}.elementor-social-icon-android{background-color:#a4c639}.elementor-social-icon-apple{background-color:#999}.elementor-social-icon-behance{background-color:#1769ff}.elementor-social-icon-bitbucket{background-color:#205081}.elementor-social-icon-codepen{background-color:#000}.elementor-social-icon-delicious{background-color:#39f}.elementor-social-icon-deviantart{background-color:#05cc47}.elementor-social-icon-digg{background-color:#005be2}.elementor-social-icon-dribbble{background-color:#ea4c89}.elementor-social-icon-elementor{background-color:#d30c5c}.elementor-social-icon-envelope{background-color:#ea4335}.elementor-social-icon-facebook,.elementor-social-icon-facebook-f{background-color:#3b5998}.elementor-social-icon-flickr{background-color:#0063dc}.elementor-social-icon-foursquare{background-color:#2d5be3}.elementor-social-icon-free-code-camp,.elementor-social-icon-freecodecamp{background-color:#006400}.elementor-social-icon-github{background-color:#333}.elementor-social-icon-gitlab{background-color:#e24329}.elementor-social-icon-globe{background-color:#818a91}.elementor-social-icon-google-plus,.elementor-social-icon-google-plus-g{background-color:#dd4b39}.elementor-social-icon-houzz{background-color:#7ac142}.elementor-social-icon-instagram{background-color:#262626}.elementor-social-icon-jsfiddle{background-color:#487aa2}.elementor-social-icon-link{background-color:#818a91}.elementor-social-icon-linkedin,.elementor-social-icon-linkedin-in{background-color:#0077b5}.elementor-social-icon-medium{background-color:#00ab6b}.elementor-social-icon-meetup{background-color:#ec1c40}.elementor-social-icon-mixcloud{background-color:#273a4b}.elementor-social-icon-odnoklassniki{background-color:#f4731c}.elementor-social-icon-pinterest{background-color:#bd081c}.elementor-social-icon-product-hunt{background-color:#da552f}.elementor-social-icon-reddit{background-color:#ff4500}.elementor-social-icon-rss{background-color:#f26522}.elementor-social-icon-shopping-cart{background-color:#4caf50}.elementor-social-icon-skype{background-color:#00aff0}.elementor-social-icon-slideshare{background-color:#0077b5}.elementor-social-icon-snapchat{background-color:#fffc00}.elementor-social-icon-soundcloud{background-color:#f80}.elementor-social-icon-spotify{background-color:#2ebd59}.elementor-social-icon-stack-overflow{background-color:#fe7a15}.elementor-social-icon-steam{background-color:#00adee}.elementor-social-icon-stumbleupon{background-color:#eb4924}.elementor-social-icon-telegram{background-color:#2ca5e0}.elementor-social-icon-thumb-tack{background-color:#1aa1d8}.elementor-social-icon-tripadvisor{background-color:#589442}.elementor-social-icon-tumblr{background-color:#35465c}.elementor-social-icon-twitch{background-color:#6441a5}.elementor-social-icon-twitter{background-color:#1da1f2}.elementor-social-icon-viber{background-color:#665cac}.elementor-social-icon-vimeo{background-color:#1ab7ea}.elementor-social-icon-vk{background-color:#45668e}.elementor-social-icon-weibo{background-color:#dd2430}.elementor-social-icon-weixin{background-color:#31a918}.elementor-social-icon-whatsapp{background-color:#25d366}.elementor-social-icon-wordpress{background-color:#21759b}.elementor-social-icon-xing{background-color:#026466}.elementor-social-icon-yelp{background-color:#af0606}.elementor-social-icon-youtube{background-color:#cd201f}.elementor-social-icon-500px{background-color:#0099e5}.elementor-shape-rounded .elementor-icon.elementor-social-icon{-webkit-border-radius:10%;border-radius:10%}.elementor-shape-circle .elementor-icon.elementor-social-icon{-webkit-border-radius:50%;border-radius:50%}.elementor-star-rating{color:#ccd6df;font-family:eicons;display:inline-block}.elementor-star-rating i{display:inline-block;position:relative;font-style:normal;cursor:default}.elementor-star-rating i:before{content:"\e934";display:block;font-size:inherit;font-family:inherit;position:absolute;overflow:hidden;color:#f0ad4e;top:0;right:0}.elementor-star-rating .elementor-star-empty:before{content:none}.elementor-star-rating .elementor-star-1:before{width:10%}.elementor-star-rating .elementor-star-2:before{width:20%}.elementor-star-rating .elementor-star-3:before{width:30%}.elementor-star-rating .elementor-star-4:before{width:40%}.elementor-star-rating .elementor-star-5:before{width:50%}.elementor-star-rating .elementor-star-6:before{width:60%}.elementor-star-rating .elementor-star-7:before{width:70%}.elementor-star-rating .elementor-star-8:before{width:80%}.elementor-star-rating .elementor-star-9:before{width:90%}.elementor-star-rating__wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-star-rating__title{margin-left:10px}.elementor-star-rating--align-right .elementor-star-rating__wrapper{text-align:right;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-star-rating--align-left .elementor-star-rating__wrapper{text-align:left;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-star-rating--align-center .elementor-star-rating__wrapper{text-align:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-star-rating--align-justify .elementor-star-rating__title{margin-left:auto}@media (max-width:ELEMENTOR_SCREEN_TABLET_MAX){.elementor-star-rating-tablet--align-right .elementor-star-rating__wrapper{text-align:right;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-star-rating-tablet--align-left .elementor-star-rating__wrapper{text-align:left;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-star-rating-tablet--align-center .elementor-star-rating__wrapper{text-align:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-star-rating-tablet--align-justify .elementor-star-rating__title{margin-left:auto}}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-star-rating-mobile--align-right .elementor-star-rating__wrapper{text-align:right;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-star-rating-mobile--align-left .elementor-star-rating__wrapper{text-align:left;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-star-rating-mobile--align-center .elementor-star-rating__wrapper{text-align:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-star-rating-mobile--align-justify .elementor-star-rating__title{margin-left:auto}}.last-star{letter-spacing:0}.elementor--star-style-star_unicode .elementor-star-rating{font-family:Arial,Helvetica,sans-serif}.elementor--star-style-star_unicode .elementor-star-rating i:not(.elementor-star-empty):before{content:"\002605"}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-wrapper{width:25%;-ms-flex-negative:0;flex-shrink:0}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active{border-left-style:none}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:after,.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:before{height:999em;width:0;left:0;border-left-style:solid}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:before{top:0;-webkit-transform:translateY(-100%);-ms-transform:translateY(-100%);transform:translateY(-100%)}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:after{top:100%}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title{display:table-cell}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active{border-bottom-style:none}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:after,.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:before{bottom:0;height:0;width:999em;border-bottom-style:solid}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:before{right:100%}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:after{left:100%}.elementor-widget-tabs .elementor-tab-content,.elementor-widget-tabs .elementor-tab-title,.elementor-widget-tabs .elementor-tab-title:after,.elementor-widget-tabs .elementor-tab-title:before,.elementor-widget-tabs .elementor-tabs-content-wrapper{border:1px #d4d4d4}.elementor-widget-tabs .elementor-tabs{text-align:right}.elementor-widget-tabs .elementor-tabs-wrapper{overflow:hidden}.elementor-widget-tabs .elementor-tab-title{cursor:pointer;outline:var(--focus-outline,none)}.elementor-widget-tabs .elementor-tab-desktop-title{position:relative;padding:20px 25px;font-weight:700;line-height:1;border:solid transparent}.elementor-widget-tabs .elementor-tab-desktop-title.elementor-active{border-color:#d4d4d4}.elementor-widget-tabs .elementor-tab-desktop-title.elementor-active:after,.elementor-widget-tabs .elementor-tab-desktop-title.elementor-active:before{display:block;content:"";position:absolute}.elementor-widget-tabs .elementor-tab-mobile-title{padding:10px;cursor:pointer}.elementor-widget-tabs .elementor-tab-content{padding:20px;display:none}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-tabs .elementor-tab-content,.elementor-tabs .elementor-tab-title{border-style:solid solid none}.elementor-tabs .elementor-tabs-wrapper{display:none}.elementor-tabs .elementor-tabs-content-wrapper{border-bottom-style:solid}.elementor-tabs .elementor-tab-content{padding:10px}}@media (min-width:ELEMENTOR_SCREEN_MOBILE_NEXT){.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-wrapper{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-content-wrapper{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;border-style:solid none solid solid}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-content{border-style:none solid solid}.elementor-widget-tabs.elementor-tabs-alignment-center .elementor-tabs-wrapper,.elementor-widget-tabs.elementor-tabs-alignment-end .elementor-tabs-wrapper,.elementor-widget-tabs.elementor-tabs-alignment-stretch .elementor-tabs-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget-tabs.elementor-tabs-alignment-center .elementor-tabs-wrapper{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-widget-tabs.elementor-tabs-alignment-end .elementor-tabs-wrapper{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-widget-tabs.elementor-tabs-alignment-stretch.elementor-tabs-view-horizontal .elementor-tab-title{width:100%}.elementor-widget-tabs.elementor-tabs-alignment-stretch.elementor-tabs-view-vertical .elementor-tab-title{height:100%}.elementor-tabs .elementor-tab-mobile-title{display:none}}.elementor-testimonial-wrapper{overflow:hidden;text-align:center}.elementor-testimonial-wrapper .elementor-testimonial-content{font-size:1.3em;margin-bottom:20px}.elementor-testimonial-wrapper .elementor-testimonial-name{line-height:1.5;display:block}.elementor-testimonial-wrapper .elementor-testimonial-job{font-size:.85em;display:block}.elementor-testimonial-wrapper .elementor-testimonial-meta{width:100%;line-height:1}.elementor-testimonial-wrapper .elementor-testimonial-meta-inner{display:inline-block}.elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-details,.elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-image{display:table-cell;vertical-align:middle}.elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-image img{width:60px;height:60px;-webkit-border-radius:50%;border-radius:50%;-o-object-fit:cover;object-fit:cover;max-width:none}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-aside .elementor-testimonial-image{padding-left:15px}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-aside .elementor-testimonial-details{text-align:right}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-details,.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-image{display:block}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-image{margin-bottom:20px}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:#818a91;color:#fff}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap{color:#818a91;border:3px solid;background-color:transparent}.elementor-widget-text-editor:not(.elementor-drop-cap-view-default) .elementor-drop-cap{margin-top:8px}.elementor-widget-text-editor:not(.elementor-drop-cap-view-default) .elementor-drop-cap-letter{width:1em;height:1em}.elementor-widget-text-editor .elementor-drop-cap{float:right;text-align:center;line-height:1;font-size:50px}.elementor-widget-text-editor .elementor-drop-cap-letter{display:inline-block}.elementor-toggle{text-align:right}.elementor-toggle .elementor-tab-title{font-weight:700;line-height:1;margin:0;padding:15px;border-bottom:1px solid #d4d4d4;cursor:pointer;outline:none}.elementor-toggle .elementor-tab-title .elementor-toggle-icon{display:inline-block;width:1em}.elementor-toggle .elementor-tab-title .elementor-toggle-icon svg{-webkit-margin-start:-5px;margin-inline-start:-5px;width:1em;height:1em}.elementor-toggle .elementor-tab-title .elementor-toggle-icon.elementor-toggle-icon-right{float:right;text-align:right}.elementor-toggle .elementor-tab-title .elementor-toggle-icon.elementor-toggle-icon-left{float:left;text-align:left}.elementor-toggle .elementor-tab-title .elementor-toggle-icon .elementor-toggle-icon-closed{display:block}.elementor-toggle .elementor-tab-title .elementor-toggle-icon .elementor-toggle-icon-opened{display:none}.elementor-toggle .elementor-tab-title.elementor-active{border-bottom:none}.elementor-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon-closed{display:none}.elementor-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon-opened{display:block}.elementor-toggle .elementor-tab-content{padding:15px;border-bottom:1px solid #d4d4d4;display:none}@media (max-width:ELEMENTOR_SCREEN_MOBILE_MAX){.elementor-toggle .elementor-tab-title{padding:12px}.elementor-toggle .elementor-tab-content{padding:12px 10px}}.elementor-widget-video .elementor-widget-container{overflow:hidden;-webkit-transform:translateZ(0);transform:translateZ(0)}.elementor-widget-video .elementor-open-inline .elementor-custom-embed-image-overlay{position:absolute;top:0;left:0;width:100%;height:100%;-webkit-background-size:cover;background-size:cover;background-position:50%}.elementor-widget-video .elementor-custom-embed-image-overlay{cursor:pointer;text-align:center}.elementor-widget-video .elementor-custom-embed-image-overlay:hover .elementor-custom-embed-play i{opacity:1}.elementor-widget-video .elementor-custom-embed-image-overlay img{display:block;width:100%}.elementor-widget-video .e-hosted-video .elementor-video{-o-object-fit:cover;object-fit:cover}assets/css/widget-alert-rtl.min.css000064400000001725151327220410013323 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-alert{padding:15px;border-left:5px solid transparent;position:relative;text-align:right}.elementor-alert .elementor-alert-title{display:block;font-weight:700}.elementor-alert .elementor-alert-description{font-size:13px}.elementor-alert button.elementor-alert-dismiss{position:absolute;left:10px;top:10px;padding:3px;font-size:20px;line-height:1;background:transparent;color:inherit;border:none;cursor:pointer}.elementor-alert.elementor-alert-info{color:#31708f;background-color:#d9edf7;border-color:#bcdff1}.elementor-alert.elementor-alert-success{color:#3c763d;background-color:#dff0d8;border-color:#cae6be}.elementor-alert.elementor-alert-warning{color:#8a6d3b;background-color:#fcf8e3;border-color:#f9f0c3}.elementor-alert.elementor-alert-danger{color:#a94442;background-color:#f2dede;border-color:#e8c4c4}@media (max-width:767px){.elementor-alert{padding:10px}.elementor-alert button.elementor-alert-dismiss{right:7px;top:7px}}assets/css/editor-preview-legacy-rtl.min.css000064400000001022151327220410015130 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-edit-area-active .elementor-inner-section>.elementor-container>.elementor-row,.elementor-edit-area-active .elementor-top-section>.elementor-container>.elementor-row{min-height:40px}.elementor-edit-area-active .elementor-column-wrap.elementor-element-empty .elementor-widget-wrap{min-height:30px}@media (min-width:768px){.elementor-edit-area-active .elementor-column-wrap.elementor-element-empty .elementor-widget-wrap{margin:10px}}.elementor-edit-area-active .handle{display:none}assets/css/widget-star-rating.min.css000064400000006101151327220410013641 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-star-rating{color:#ccd6df;font-family:eicons;display:inline-block}.elementor-star-rating i{display:inline-block;position:relative;font-style:normal;cursor:default}.elementor-star-rating i:before{content:"\e934";display:block;font-size:inherit;font-family:inherit;position:absolute;overflow:hidden;color:#f0ad4e;top:0;left:0}.elementor-star-rating .elementor-star-empty:before{content:none}.elementor-star-rating .elementor-star-1:before{width:10%}.elementor-star-rating .elementor-star-2:before{width:20%}.elementor-star-rating .elementor-star-3:before{width:30%}.elementor-star-rating .elementor-star-4:before{width:40%}.elementor-star-rating .elementor-star-5:before{width:50%}.elementor-star-rating .elementor-star-6:before{width:60%}.elementor-star-rating .elementor-star-7:before{width:70%}.elementor-star-rating .elementor-star-8:before{width:80%}.elementor-star-rating .elementor-star-9:before{width:90%}.elementor-star-rating__wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-star-rating__title{margin-right:10px}.elementor-star-rating--align-right .elementor-star-rating__wrapper{text-align:right;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-star-rating--align-left .elementor-star-rating__wrapper{text-align:left;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-star-rating--align-center .elementor-star-rating__wrapper{text-align:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-star-rating--align-justify .elementor-star-rating__title{margin-right:auto}@media (max-width:1024px){.elementor-star-rating-tablet--align-right .elementor-star-rating__wrapper{text-align:right;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-star-rating-tablet--align-left .elementor-star-rating__wrapper{text-align:left;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-star-rating-tablet--align-center .elementor-star-rating__wrapper{text-align:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-star-rating-tablet--align-justify .elementor-star-rating__title{margin-right:auto}}@media (max-width:767px){.elementor-star-rating-mobile--align-right .elementor-star-rating__wrapper{text-align:right;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-star-rating-mobile--align-left .elementor-star-rating__wrapper{text-align:left;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-star-rating-mobile--align-center .elementor-star-rating__wrapper{text-align:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-star-rating-mobile--align-justify .elementor-star-rating__title{margin-right:auto}}.last-star{letter-spacing:0}.elementor--star-style-star_unicode .elementor-star-rating{font-family:Arial,Helvetica,sans-serif}.elementor--star-style-star_unicode .elementor-star-rating i:not(.elementor-star-empty):before{content:"\002605"}assets/css/admin-rtl.min.css000064400000110104151327220410012013 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-button{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;font-weight:500;text-transform:uppercase;outline:none;border:none;-webkit-border-radius:3px;border-radius:3px;-webkit-transition-property:background,color,opacity,-webkit-box-shadow;transition-property:background,color,opacity,-webkit-box-shadow;-o-transition-property:background,color,box-shadow,opacity;transition-property:background,color,box-shadow,opacity;transition-property:background,color,box-shadow,opacity,-webkit-box-shadow;-webkit-transition-duration:.3s;-o-transition-duration:.3s;transition-duration:.3s}.elementor-button:hover{border:none}.elementor-button:not([disabled]){cursor:pointer}.elementor-button:not(.elementor-button-state) .elementor-state-icon{display:none}.elementor-button.elementor-button-success{color:#fff}.elementor-button.elementor-button-success[disabled]{background-color:#c2cbd2}.elementor-button.elementor-button-success:not([disabled]){background-color:#39b54a}.elementor-button.elementor-button-success:not([disabled]):hover{opacity:.85;-webkit-box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2);box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2)}.elementor-button.elementor-button-success:not([disabled]):active{-webkit-box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1);box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1)}.elementor-button.elementor-button-warning{background-color:#a4afb7;color:#fff}.elementor-button.elementor-button-warning[disabled]{background-color:#c2cbd2}.elementor-button.elementor-button-warning:not([disabled]):hover{background-color:#b01b1b;opacity:.85;-webkit-box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2);box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2)}.elementor-button.elementor-button-warning:not([disabled]):active{-webkit-box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1);box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1)}.elementor-button.elementor-button-danger{background-color:#d72b3f;color:#fff}.elementor-button.elementor-button-danger[disabled]{background-color:#c2cbd2}.elementor-button.elementor-button-danger:not([disabled]):hover{opacity:.85;-webkit-box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2);box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2)}.elementor-button.elementor-button-danger:not([disabled]):active{-webkit-box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1);box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1)}.elementor-button.elementor-edit-template{display:inline-block;margin-top:15px;color:#fff}.elementor-button.elementor-button-default{background-color:#a4afb7;color:#fff;font-size:11px;padding:7px 21px}.elementor-button.elementor-button-default:hover{background-color:#6d7882;-webkit-box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2);box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2)}.elementor-button.elementor-button-default:active{-webkit-box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1);box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1)}.elementor-button.elementor-button-default:visited{color:#fff}.elementor-button.elementor-button-go-pro{background-color:#93003c}.elementor-button i{margin-left:10px}#adminmenu #toplevel_page_elementor div.wp-menu-image:before{content:"\e813";font-family:eicons;font-size:18px;margin-top:1px}#adminmenu #toplevel_page_elementor a[href="admin.php?page=go_elementor_pro"]{font-weight:700}#adminmenu #toplevel_page_elementor a[href="admin.php?page=go_elementor_pro"]:hover{color:#e0005b}#adminmenu #toplevel_page_elementor .dashicons.dashicons-star-filled{height:auto}#adminmenu #menu-posts-elementor_library .wp-menu-image:before{content:"\e8ff";font-family:eicons;font-size:18px}body.admin-color-fresh #adminmenu #toplevel_page_elementor a[href="admin.php?page=go_elementor_pro"]{color:#c60051}.elementor-plugins-gopro{color:#93003c;text-shadow:1px 1px 1px #eee;font-weight:700}#elementor-switch-mode{margin:15px 0}#elementor-editor-button,#elementor-switch-mode-button{outline:none;cursor:pointer}#elementor-editor-button i,#elementor-switch-mode-button i{margin-left:3px;font-size:125%;font-style:normal}body.elementor-editor-active .elementor-switch-mode-off{display:none}body.elementor-editor-active #elementor-switch-mode-button{background-color:#f7f7f7;color:#555;border-color:#ccc;-webkit-box-shadow:0 1px 0 #ccc!important;box-shadow:0 1px 0 #ccc!important;text-shadow:unset}body.elementor-editor-active #elementor-switch-mode-button:hover{background-color:#e9e9e9}body.elementor-editor-active #elementor-switch-mode-button:active{-webkit-box-shadow:inset 0 1px 0 #ccc;box-shadow:inset 0 1px 0 #ccc;-webkit-transform:translateY(1px);-ms-transform:translateY(1px);transform:translateY(1px)}body.elementor-editor-active #postdivrich{display:none!important}body.elementor-editor-active .block-editor-block-list__layout,body.elementor-editor-active .editor-block-list__layout,body.elementor-editor-inactive #elementor-editor,body.elementor-editor-inactive .elementor-switch-mode-on{display:none}body.elementor-editor-active .edit-post-layout__content .edit-post-visual-editor{-ms-flex-preferred-size:auto;flex-basis:auto}body.elementor-editor-active #elementor-editor{margin-bottom:50px}body.elementor-editor-active .edit-post-text-editor__body .editor-post-text-editor{display:none}body .block-editor #elementor-switch-mode{margin:0 15px}body .block-editor #elementor-switch-mode .button{margin:2px;height:33px;font-size:13px;line-height:1}body .block-editor #elementor-switch-mode .button i{padding-left:5px}.elementor-button{font-size:13px;text-decoration:none;padding:15px 40px}#elementor-editor{height:300px;width:100%;-webkit-transition:all .5s ease;-o-transition:all .5s ease;transition:all .5s ease}#elementor-editor .elementor-loader-wrapper{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);width:300px;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}#elementor-editor .elementor-loader{-webkit-border-radius:50%;border-radius:50%;padding:40px;height:150px;width:150px;background-color:hsla(0,0%,100%,.9);-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-box-shadow:2px 2px 20px 4px rgba(0,0,0,.02);box-shadow:2px 2px 20px 4px rgba(0,0,0,.02)}#elementor-editor .elementor-loader-boxes{height:100%;width:100%;position:relative}#elementor-editor .elementor-loader-box{position:absolute;background-color:#d5dadf;-webkit-animation:load 1.8s linear infinite;animation:load 1.8s linear infinite}#elementor-editor .elementor-loader-box:first-of-type{width:20%;height:100%;left:0;top:0}#elementor-editor .elementor-loader-box:not(:first-of-type){right:0;height:20%;width:60%}#elementor-editor .elementor-loader-box:nth-of-type(2){top:0;-webkit-animation-delay:-.45s;animation-delay:-.45s}#elementor-editor .elementor-loader-box:nth-of-type(3){top:40%;-webkit-animation-delay:-.9s;animation-delay:-.9s}#elementor-editor .elementor-loader-box:nth-of-type(4){bottom:0;-webkit-animation-delay:-1.35s;animation-delay:-1.35s}#elementor-editor .elementor-loading-title{color:#a4afb7;text-align:center;text-transform:uppercase;margin-top:30px;letter-spacing:7px;text-indent:7px;font-size:10px;width:100%}#elementor-go-to-edit-page-link{height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;border:1px solid #ddd;background-color:#f7f7f7;text-decoration:none;position:relative;font-family:Sans-serif}#elementor-go-to-edit-page-link:hover{background-color:#fff}#elementor-go-to-edit-page-link:focus{-webkit-box-shadow:none;box-shadow:none}#elementor-go-to-edit-page-link.elementor-animate #elementor-editor-button,#elementor-go-to-edit-page-link:not(.elementor-animate) .elementor-loader-wrapper{display:none}.elementor-button-spinner:before{font:normal 20px/.5 dashicons;speak:none;display:inline-block;padding:0;top:8px;right:-4px;position:relative;vertical-align:top;content:"\f463"}.elementor-button-spinner.loading:before{-webkit-animation:rotation 1s linear infinite;animation:rotation 1s linear infinite}.elementor-button-spinner.success:before{content:"\f147";color:#46b450}.elementor-blank_state{padding:5em 0;margin:auto;max-width:520px;text-align:center;color:#6d7882;font-family:Roboto,sans-serif}.elementor-blank_state i{font-size:50px;color:#a4afb7}.elementor-blank_state h2{font-size:32px;font-weight:300;color:inherit;margin:40px 0 10px;line-height:1.2}.elementor-blank_state p{font-size:16px;font-weight:400;color:#a4afb7;margin-bottom:40px}.elementor-blank_state .elementor-button{display:inline-block}#available-widgets [class*=elementor-template] .widget-title:before{content:"\e813";font-family:eicons;font-size:17px}.elementor-settings-form-page{padding-top:30px}._elementor_settings_update_time,.elementor-settings-form-page:not(.elementor-active){display:none}#confirm_fa_migration_admin_modal .dialog-confirm-ok{color:#6d7882}body.post-type-attachment table.media .column-title .media-icon img[src$=".svg"]{width:100%}.e-major-update-warning{margin-bottom:5px;max-width:1000px;display:-webkit-box;display:-ms-flexbox;display:flex}.e-major-update-warning__separator{margin:15px -12px}.e-major-update-warning__icon{font-size:17px;margin-left:9px;margin-right:2px}.e-major-update-warning__title{font-weight:600;margin-bottom:10px}.e-major-update-warning+p{display:none}.notice-success .e-major-update-warning__separator{border:1px solid #46b450}.notice-success .e-major-update-warning__icon{color:#79ba49}.notice-warning .e-major-update-warning__separator{border:1px solid #ffb900}.notice-warning .e-major-update-warning__icon{color:#f56e28}.plugins table.e-compatibility-update-table tr{background:transparent}.plugins table.e-compatibility-update-table tr th{font-weight:600}.plugins table.e-compatibility-update-table tr td,.plugins table.e-compatibility-update-table tr th{min-width:250px;font-size:13px;background:transparent;-webkit-box-shadow:none;box-shadow:none;border:none;padding:5px 0 5px 15px}:root{--e-focus-color:rgba(0,115,170,0.4);--e-context-primary-color:#0073aa;--e-context-primary-color-dark:#005177;--e-context-primary-tint-4:rgba(0,115,170,0.4);--e-context-primary-tint-1:rgba(0,115,170,0.04);--e-context-success-color:#39b54a;--e-context-success-color-dark:#2d8e3a;--e-context-success-tint-4:rgba(57,181,74,0.4);--e-context-success-tint-1:rgba(57,181,74,0.04);--e-context-info-color:#71d7f7;--e-context-info-color-dark:#41c9f4;--e-context-info-tint-4:rgba(113,215,247,0.4);--e-context-info-tint-1:rgba(113,215,247,0.04);--e-context-warning-color:#fcb92c;--e-context-warning-color-dark:#f2a503;--e-context-warning-tint-4:rgba(252,185,44,0.4);--e-context-warning-tint-1:rgba(252,185,44,0.04);--e-context-error-color:#d72b3f;--e-context-error-color-dark:#ae2131;--e-context-error-tint-4:rgba(215,43,63,0.4);--e-context-error-tint-1:rgba(215,43,63,0.04);--e-context-cta-color:#93003c;--e-context-cta-color-dark:#600027;--e-context-cta-tint-4:rgba(147,0,60,0.4);--e-context-cta-tint-1:rgba(147,0,60,0.04)}.e-getting-started{max-width:900px;padding:2.5em 0;margin:auto;text-align:center}.e-getting-started__header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1)}.e-getting-started__header .e-logo-wrapper{font-size:10px;margin-left:10px}.e-getting-started__title{padding:0 15px;font-weight:600;text-transform:uppercase;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.e-getting-started__skip{border-right:1px solid #eee;font-size:16px;color:inherit}.e-getting-started__skip i{padding:15px}.e-getting-started__content{padding:50px}.e-getting-started__content h2{font-size:2em;margin-top:0}.e-getting-started__content--narrow{max-width:500px;margin:auto}.e-getting-started__video{margin:40px 0 60px}.e-getting-started__video iframe{-webkit-box-shadow:10px 10px 20px rgba(0,0,0,.15);box-shadow:10px 10px 20px rgba(0,0,0,.15)}.e-getting-started__actions .button-primary{margin-left:20px}:root{--e-button-padding-y:0.4375rem;--e-button-padding-x:0.75rem;--e-button-font-size:0.8125rem;--e-button-font-weight:500;--e-button-line-height:0.9375rem;--e-button-border-radius:3px;--e-button-context-color:var(--e-context-primary-color);--e-button-context-color-dark:var(--e-context-primary-color-dark);--e-button-context-tint:var(--e-context-primary-tint-1)}.e-button{display:inline-block;font-weight:var(--e-button-font-weight);text-align:center;white-space:nowrap;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:#fff;border:0;text-decoration:none;background:var(--e-button-context-color);padding:var(--e-button-padding-y) var(--e-button-padding-x);font-size:var(--e-button-font-size);line-height:var(--e-button-line-height);-webkit-border-radius:var(--e-button-border-radius);border-radius:var(--e-button-border-radius);-webkit-transition:background-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;-o-transition:background-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-box-shadow .15s ease-in-out}.e-button:active,.e-button:focus,.e-button:hover{color:#fff;text-decoration:none;background:var(--e-button-context-color-dark)}.e-button.focus,.e-button:focus{outline:0;-webkit-box-shadow:0 0 0 2px var(--e-focus-color);box-shadow:0 0 0 2px var(--e-focus-color)}.e-button.disabled,.e-button:disabled{opacity:.5;-webkit-box-shadow:none;box-shadow:none}.e-button:not(:disabled):not(.disabled){cursor:pointer}.e-button:not(:disabled):not(.disabled).active:focus,.e-button:not(:disabled):not(.disabled):active:focus{-webkit-box-shadow:0 0 0 2px var(--e-focus-color);box-shadow:0 0 0 2px var(--e-focus-color)}.e-button--primary{--e-button-context-color:var(--e-context-primary-color);--e-button-context-color-dark:var(--e-context-primary-color-dark);--e-button-context-tint:var(--e-context-primary-tint-1);--e-focus-color:var(--e-context-primary-tint-4)}.e-button--success{--e-button-context-color:var(--e-context-success-color);--e-button-context-color-dark:var(--e-context-success-color-dark);--e-button-context-tint:var(--e-context-success-tint-1);--e-focus-color:var(--e-context-success-tint-4)}.e-button--info{--e-button-context-color:var(--e-context-info-color);--e-button-context-color-dark:var(--e-context-info-color-dark);--e-button-context-tint:var(--e-context-info-tint-1);--e-focus-color:var(--e-context-info-tint-4)}.e-button--warning{--e-button-context-color:var(--e-context-warning-color);--e-button-context-color-dark:var(--e-context-warning-color-dark);--e-button-context-tint:var(--e-context-warning-tint-1);--e-focus-color:var(--e-context-warning-tint-4)}.e-button--error{--e-button-context-color:var(--e-context-error-color);--e-button-context-color-dark:var(--e-context-error-color-dark);--e-button-context-tint:var(--e-context-error-tint-1);--e-focus-color:var(--e-context-error-tint-4)}.e-button--cta{--e-button-context-color:var(--e-context-cta-color);--e-button-context-color-dark:var(--e-context-cta-color-dark);--e-button-context-tint:var(--e-context-cta-tint-1);--e-focus-color:var(--e-context-cta-tint-4)}.e-button.e-button--outline{color:var(--e-button-context-color);background:none;border:1px solid}.e-button.e-button--outline:focus,.e-button.e-button--outline:hover{color:var(--e-button-context-color-dark);background:var(--e-button-context-tint)}.e-button.e-button--outline.disabled,.e-button.e-button--outline:disabled{color:var(--e-button-context-color-dark);background:#818a91}.e-button>i{line-height:inherit;height:var(--e-button-line-height);width:-webkit-min-content;width:-moz-min-content;width:min-content}.e-button>*+*{-webkit-margin-start:.5ch;margin-inline-start:.5ch}.e-button--link{color:var(--e-button-context-color);background-color:transparent}.e-button--link:focus,.e-button--link:hover{color:var(--e-button-context-color-dark);background:var(--e-button-context-tint)}.e-button--link.disabled,.e-button--link:disabled{color:#818a91}a.e-button.disabled,fieldset:disabled a.e-button{pointer-events:none}:root{--e-notice-bg:#fff;--e-notice-border-color:#ccd0d4;--e-notice-context-color:#93003c;--e-notice-context-tint:var(--e-context-cta-tint-1);--e-notice-box-shadow:0 1px 4px rgba(0,0,0,0.15);--e-notice-dismiss-color:#6d7882}.e-notice{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;background:var(--e-notice-bg);border:1px solid var(--e-notice-border-color);border-inline-start-width:4px;-webkit-box-shadow:var(--e-notice-box-shadow);box-shadow:var(--e-notice-box-shadow);margin:5px 20px 5px 2px}.e-notice.notice{padding:0}.e-notice:before{display:block;content:"";position:absolute;right:-4px;top:-1px;bottom:-1px;width:4px;background-color:var(--e-notice-context-color)}.e-notice--primary{--e-notice-context-color:var(--e-context-primary-color);--e-notice-context-color-dark:var(--e-context-primary-color-dark);--e-notice-context-tint:var(--e-context-primary-tint-1)}.e-notice--success{--e-notice-context-color:var(--e-context-success-color);--e-notice-context-color-dark:var(--e-context-success-color-dark);--e-notice-context-tint:var(--e-context-success-tint-1)}.e-notice--info{--e-notice-context-color:var(--e-context-info-color);--e-notice-context-color-dark:var(--e-context-info-color-dark);--e-notice-context-tint:var(--e-context-info-tint-1)}.e-notice--warning{--e-notice-context-color:var(--e-context-warning-color);--e-notice-context-color-dark:var(--e-context-warning-color-dark);--e-notice-context-tint:var(--e-context-warning-tint-1)}.e-notice--error{--e-notice-context-color:var(--e-context-error-color);--e-notice-context-color-dark:var(--e-context-error-color-dark);--e-notice-context-tint:var(--e-context-error-tint-1)}.e-notice--cta{--e-notice-context-color:var(--e-context-cta-color);--e-notice-context-color-dark:var(--e-context-cta-color-dark);--e-notice-context-tint:var(--e-context-cta-tint-1)}.e-notice--extended{--e-notice-is-extended:1}.e-notice--dismissible{padding-right:38px}.e-notice__aside{overflow:hidden;background-color:var(--e-notice-context-tint);width:calc(var(--e-notice-is-extended, 0) * 50px);text-align:center;padding-top:15px;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0}.e-notice__icon-wrapper{display:inline-block;font-size:.625rem;max-height:1.5rem;width:1.5rem;line-height:1.5rem;-webkit-border-radius:100px;border-radius:100px;background:var(--e-notice-context-color);color:#fff;text-shadow:0 0 3px var(--e-notice-context-color-dark),0 0 1px var(--e-notice-context-color-dark),0 0 1px var(--e-notice-context-color-dark)}.e-notice__content{padding:20px}.e-notice__actions{display:-webkit-box;display:-ms-flexbox;display:flex}.e-notice__actions>*+*{-webkit-margin-start:8px;margin-inline-start:8px}.e-notice__dismiss{width:20px;height:20px;line-height:20px;font-size:.8125rem;text-align:center;background:none;display:block;position:absolute;top:0;right:1px;border:none;margin:0;padding:9px;cursor:pointer;font-style:normal}.e-notice__dismiss:before{font-family:eicons;display:inline-block;content:"\e87f";color:var(--e-notice-dismiss-color);width:20px;-webkit-border-radius:20px;border-radius:20px;speak:none;text-align:center;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.e-notice__dismiss:active:before,.e-notice__dismiss:focus:before,.e-notice__dismiss:hover:before{font-weight:700}.e-notice__dismiss:focus:before{color:#fff;background:var(--e-notice-dismiss-color);outline:none}.e-notice__dismiss:focus{outline:none}.e-notice p{line-height:1.2;padding:0;margin:0}.e-notice p+.e-notice__actions{margin-top:1rem}.e-notice h3{font-size:1.0625rem;line-height:1.2;margin:0}.e-notice h3+p{margin-top:8px}.elementor-admin-alert{padding:15px;border-left:5px solid transparent;position:relative;font-size:12px;line-height:1.5;text-align:right}.elementor-admin-alert a{color:inherit}.elementor-admin-alert.elementor-alert-info{color:#31708f;background-color:#d9edf7;border-color:#bcdff1}.elementor-admin-alert.elementor-alert-success{color:#3c763d;background-color:#dff0d8;border-color:#cae6be}.elementor-admin-alert.elementor-alert-warning{color:#8a6d3b;background-color:#fcf8e3;border-color:#f9f0c3}.elementor-admin-alert.elementor-alert-danger{color:#a94442;background-color:#f2dede;border-color:#e8c4c4}#elementor-system-info{padding:15px}#elementor-system-info .elementor-system-info-section{margin-bottom:10px}#elementor-system-info .elementor-system-info-section>.elementor-system-info-report-name{padding-left:10px;border-bottom:1px solid #e1e1e1}#elementor-system-info .elementor-system-info-section .widefat{white-space:pre}#elementor-system-info .elementor-system-info-section .elementor-log-entries{white-space:pre-wrap}#elementor-system-info .elementor-system-info-section:not(.elementor-system-info-log) tbody td:first-child{width:300px}#elementor-system-info .elementor-system-info-report-name{text-transform:uppercase;font-size:14px;margin:0;line-height:2}#elementor-system-info .elementor-system-info-report-row{overflow:hidden;padding:5px 0}#elementor-system-info .elementor-system-info-report-row>*{float:left}#elementor-system-info .elementor-system-info-field-recommendation,#elementor-system-info .elementor-system-info-report-field{padding-left:10px;color:#7f7f7f}#elementor-system-info .elementor-system-info-report-fields{padding-left:20px}#elementor-system-info .elementor-system-info-plugin-name{color:#000}#elementor-system-info .elementor-system-info-plugin-properties{padding:10px}#elementor-system-info #elementor-system-info-raw-code{width:100%;height:200px}#elementor-system-info #elementor-system-info-raw-code-label{padding:5px;display:block}#elementor-system-info .elementor-warning td:first-child{border-right:3px solid #fcb92c}#elementor-system-info a.box-title-tool{font-size:80%;margin-right:15px;color:#818a91}#elementor-system-info a.box-title-tool:hover{text-decoration:underline}#elementor-system-info #elementor-usage-recalc{font-size:12px;color:#fff;background-color:#a4afb7;padding:4px 18px 5px;-webkit-border-radius:3px;border-radius:3px}@-webkit-keyframes elementor-rotation{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes elementor-rotation{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}#elementor-deactivate-feedback-dialog-wrapper{display:none}#elementor-deactivate-feedback-modal .dialog-widget-content{width:550px}#elementor-deactivate-feedback-modal .dialog-header{padding:18px 15px;-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1);text-align:right}#elementor-deactivate-feedback-modal .dialog-message{padding:30px 30px 0;text-align:right}#elementor-deactivate-feedback-modal .elementor-deactivate-feedback-dialog-input{float:right;margin:0 0 0 15px;-webkit-box-shadow:none;box-shadow:none}#elementor-deactivate-feedback-modal .elementor-deactivate-feedback-dialog-input:not(:checked)~.elementor-feedback-text{display:none}#elementor-deactivate-feedback-modal .elementor-deactivate-feedback-dialog-label{display:block;font-size:13px;color:#6d7882}#elementor-deactivate-feedback-modal .elementor-feedback-text{margin:10px 30px 0 0;padding:5px;font-size:13px;-webkit-box-shadow:none;box-shadow:none;background-color:#fff;width:92%}#elementor-deactivate-feedback-modal .dialog-buttons-wrapper{border-top:none;text-align:right;padding:20px 30px 30px;overflow:hidden}#elementor-deactivate-feedback-modal .dialog-submit{background-color:#93003c;-webkit-border-radius:3px;border-radius:3px;color:#fff;line-height:1;padding:12px 20px;font-size:13px;width:180px;height:38px}#elementor-deactivate-feedback-modal .dialog-submit.elementor-loading:before{display:inline-block;content:"\f463";font:18px dashicons;-webkit-animation:elementor-rotation 2s linear infinite;animation:elementor-rotation 2s linear infinite}#elementor-deactivate-feedback-modal .dialog-skip{font-size:12px;color:#a4afb7;background:none;float:left;width:auto}#elementor-deactivate-feedback-modal[data-feedback-selected=elementor_pro] .elementor-feedback-text{color:#b01b1b;padding:0}#elementor-deactivate-feedback-modal[data-feedback-selected=elementor_pro] .dialog-submit{display:none}#elementor-deactivate-feedback-dialog-header i{color:#93003c;font-size:19px}#elementor-deactivate-feedback-dialog-header-title{font-size:15px;text-transform:uppercase;font-weight:700;padding-right:5px}#elementor-deactivate-feedback-dialog-form-caption{font-weight:700;font-size:15px;color:#495157;line-height:1.4}#elementor-deactivate-feedback-dialog-form-body{padding-top:30px}.elementor-deactivate-feedback-dialog-input-wrapper{line-height:1;overflow:hidden;margin-bottom:15px}#elementor-hidden-area{display:none}#elementor-import-template-trigger{cursor:pointer}#elementor-import-template-area{display:none;margin:50px 0 30px;text-align:center}#elementor-import-template-form{display:inline-block;margin-top:30px;padding:30px 50px;background-color:#fff;border:1px solid #e5e5e5}#elementor-import-template-title{font-size:18px;color:#555d66}.form-table:not(.elementor-maintenance-mode-is-enabled) .elementor-default-hide{display:none}.elementor-maintenance-mode-error{color:red;line-height:1.6;display:none}#tab-fontawesome4_migration.elementor-active~p.submit,#tab-import-export-kit.elementor-active~p.submit,#tab-replace_url.elementor-active~p.submit{display:none}#elementor_replace_url>div,#elementor_rollback>div,#elementor_rollback_pro>div{display:-webkit-box;display:-ms-flexbox;display:flex}#elementor_replace_url>div input,#elementor_replace_url>div select,#elementor_rollback>div input,#elementor_rollback>div select,#elementor_rollback_pro>div input,#elementor_rollback_pro>div select{margin-left:6px}.tab-import-export-kit__wrapper{margin:40px 0;max-width:700px}.tab-import-export-kit__container{background-color:#fff;font-size:16px;max-width:700px;padding:30px}.tab-import-export-kit__container:not(:first-child){margin-top:5px}.tab-import-export-kit__container p{color:#a4afb7;font-size:16px;margin:20px 0 25px}.tab-import-export-kit__info{font-size:14px}.tab-import-export-kit__container a:not(.elementor-button),.tab-import-export-kit__info a{color:#58d0f5;text-decoration:underline}.tab-import-export-kit__box{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.tab-import-export-kit__box h2{color:#6d7882;font-size:28px;font-weight:400;line-height:1;margin:0}.tab-import-export-kit__box .elementor-button.elementor-button-success{font-weight:700;padding:8px 16px;text-transform:none}#dashboard-widgets .e-dashboard-widget h3.e-heading{font-weight:600;margin-bottom:13px}#dashboard-widgets .e-dashboard-widget .e-divider_bottom{border-bottom:1px solid #eee;margin:0 -12px;padding:6px 12px}#dashboard-widgets .e-dashboard-widget .e-divider_top{border-top:1px solid #eee;margin:0 -12px;padding:6px 12px}#dashboard-widgets .e-dashboard-widget .e-news-feed-wrap .e-divider_top,#dashboard-widgets .e-dashboard-widget .e-quick-actions-wrap .e-divider_top{padding-top:18px;margin-top:18px}.e-dashboard-widget .dashicons{color:#606a73}.e-dashboard-widget ul.e-action-list li{margin-top:14px}.e-dashboard-widget ul.e-action-list li a{margin-right:5px}#e-dashboard-overview .dashicons{vertical-align:middle;font-size:17px}#e-dashboard-overview .e-overview__header{display:table;width:100%;-webkit-box-shadow:0 5px 8px rgba(0,0,0,.05);box-shadow:0 5px 8px rgba(0,0,0,.05);margin:0 -12px 8px;padding:0 12px 12px}#e-dashboard-overview .e-overview__create,#e-dashboard-overview .e-overview__logo,#e-dashboard-overview .e-overview__versions{display:table-cell;vertical-align:middle}#e-dashboard-overview .e-overview__logo{width:30px}#e-dashboard-overview .e-overview__versions{padding:0 10px;font-size:.9em;line-height:1.5}#e-dashboard-overview .e-overview__version{display:block}#e-dashboard-overview .e-overview__create{text-align:left}#e-dashboard-overview .e-overview__feed{font-size:14px;font-weight:500}#e-dashboard-overview .e-overview__post{margin-top:10px}#e-dashboard-overview .e-overview__post-link{display:inline-block}#e-dashboard-overview .e-overview__badge{background:#39b54a;color:#fff;font-size:.75em;padding:3px 6px;-webkit-border-radius:3px;border-radius:3px;text-transform:uppercase}#e-dashboard-overview .e-overview__post-description{margin:0 0 1.5em}#e-dashboard-overview .e-overview__recently-edited li{color:#72777c}#e-dashboard-overview .e-overview__footer.e-divider_top{padding-top:12px;padding-bottom:0}#e-dashboard-overview .e-overview__footer ul{display:-webkit-box;display:-ms-flexbox;display:flex;list-style:none;margin:0;padding:0}#e-dashboard-overview .e-overview__footer ul li{padding:0 10px;margin:0;border-right:1px solid #ddd}#e-dashboard-overview .e-overview__footer ul li:first-child{padding-right:0;border:none}#e-dashboard-overview .e-overview__go-pro a{color:#93003c;font-weight:500}.post-type-elementor_library #elementor-template-library-tabs-wrapper{padding-top:2em;margin-bottom:2em}.post-type-elementor_library th#taxonomy-elementor_library_category{width:110px}#elementor-new-template-modal .dialog-message{max-height:70vh}#elementor-new-template-dialog-content{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:100%;text-align:right;color:#6d7882}@media (max-width:1439px){#elementor-new-template-dialog-content{padding:0 50px}}@media (min-width:1440px){#elementor-new-template-dialog-content{padding:0 120px}}#elementor-new-template__description{width:35%;max-width:300px;padding-left:100px}#elementor-new-template__description__title{font-size:30px;color:#556068}#elementor-new-template__description__title span{font-weight:700}#elementor-new-template__description__content{font-size:16px;padding:30px 0}#elementor-new-template__take_a_tour{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-size:15px}#elementor-new-template__take_a_tour i{color:#93003c;font-size:30px}#elementor-new-template__take_a_tour a{color:#6d7882;padding-right:10px;text-decoration:none;font-weight:500}#elementor-new-template__form{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:440px;padding:55px;background-color:#fff;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 2px 30px 0 rgba(0,0,0,.08);box-shadow:0 2px 30px 0 rgba(0,0,0,.08)}#elementor-new-template__form__title{font-size:23px;color:#556068}#elementor-new-template__form__template-type.elementor-form-field__select{max-width:none}#elementor-new-template__form .elementor-form-field__label{display:block;margin:25px 0 7px;font-size:14px;line-height:1}#elementor-new-template__form .elementor-form-field input,#elementor-new-template__form .elementor-form-field select{width:100%;height:50px;padding:10px;font-size:14px;-webkit-box-shadow:none;box-shadow:none;-webkit-border-radius:3px;border-radius:3px;background:none;color:#495157;border:1px solid;outline:none}#elementor-new-template__form .elementor-form-field input:not(:focus),#elementor-new-template__form .elementor-form-field select:not(:focus){border-color:#d5dadf}#elementor-new-template__form .elementor-form-field input:focus,#elementor-new-template__form .elementor-form-field select:focus{border-color:#a4afb7}#elementor-new-template__form .elementor-form-field__select{appearance:none;-webkit-appearance:none;-moz-appearance:none;cursor:pointer}#elementor-new-template__form .elementor-form-field__select__wrapper{position:relative}#elementor-new-template__form .elementor-form-field__select__wrapper:after{font-family:eicons;content:"\e8ad";position:absolute;top:50%;left:10px;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}#elementor-new-template__form__submit{width:100%;height:50px;margin-top:25px}@media (max-width:1024px){#elementor-new-template__description{max-width:250px;padding-left:30px}}@media (max-width:767px){#elementor-new-template__description{display:none}}#elementor-role-manager{max-width:500px;margin-top:50px}#elementor-role-manager h3{color:#6d7882;font-weight:400;font-size:22px}#elementor-role-manager .elementor-settings-form-page{padding:0}#elementor-role-manager .elementor-role-row{background:#fff;color:#6d7882;margin-bottom:2px}#elementor-role-manager .elementor-role-row .elementor-role-label{display:-webkit-box;display:-ms-flexbox;display:flex;padding:15px 20px;font-weight:500;cursor:pointer}#elementor-role-manager .elementor-role-row .elementor-role-label span.elementor-role-name{padding-left:20px}#elementor-role-manager .elementor-role-row .elementor-role-label span.elementor-role-toggle{text-align:left;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}#elementor-role-manager .elementor-role-row .elementor-role-label span.elementor-role-excluded-indicator{color:#a4afb7}#elementor-role-manager .elementor-role-row .elementor-role-controls{background-color:#f7f7f7;padding:20px 20px 5px}#elementor-role-manager .elementor-role-row .elementor-role-controls>div{margin-bottom:15px}#elementor-role-manager .elementor-role-row .elementor-role-controls .elementor-role-go-pro{display:-webkit-box;display:-ms-flexbox;display:flex}#elementor-role-manager .elementor-role-row .elementor-role-controls .elementor-role-go-pro .elementor-role-go-pro__desc{font-weight:500;font-style:italic}#elementor-role-manager .elementor-role-row .elementor-role-controls .elementor-role-go-pro .elementor-role-go-pro__link{text-align:left;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}#elementor-beta-tester-modal .elementor-templates-modal__header__items-area{color:#c2cbd2;cursor:pointer}#elementor-beta-tester-modal .elementor-templates-modal__header__items-area:hover .elementor-beta-tester-do-not-show-again,#elementor-beta-tester-modal .elementor-templates-modal__header__items-area:hover .elementor-templates-modal__header__item>i{color:#6d7882}#elementor-beta-tester-modal .elementor-templates-modal__header__items-area .elementor-templates-modal__header__close{border:none}#elementor-beta-tester-modal .elementor-templates-modal__header__items-area .elementor-beta-tester-do-not-show-again{text-transform:uppercase;font-weight:700;font-size:12px;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}#elementor-beta-tester-modal .dialog-lightbox-widget-content{max-width:500px;height:auto}#elementor-beta-tester-modal .dialog-lightbox-message{padding:40px;height:300px;background-color:#fff}#elementor-beta-tester-form__caption{font-weight:700;font-size:20px;color:#495157}#elementor-beta-tester-form__description{font-size:15px;color:#6d7882;margin-top:10px}#elementor-beta-tester-form__input-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;margin-top:30px}#elementor-beta-tester-form__input-wrapper .elementor-button{-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}#elementor-beta-tester-form__email{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;border:1px solid #d5dadf;border-left:0;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0;margin:0;padding:10px;height:50px}#elementor-beta-tester-form__terms{margin-top:40px;font-size:11px;color:#a4afb7}.e-experiment__title{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.e-experiment__title__indicator{height:10px;width:10px;-webkit-border-radius:50%;border-radius:50%;border:2px solid #fff;-webkit-box-shadow:0 2px 4px rgba(0,0,0,.1);box-shadow:0 2px 4px rgba(0,0,0,.1);margin-top:2px}.e-experiment__title__indicator--active{background:#39b54a}.e-experiment__title__label{margin-right:10px}.e-experiment__description{max-width:800px}.e-experiment__status{margin-top:5px;font-size:13px;font-weight:700;font-style:italic}.e-landing-pages-empty .elementor-blank_state{padding:5em 0 2em}.e-landing-pages-empty .e-trashed-items{text-align:center}assets/css/app-rtl.css000064400000300437151327220410010733 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
@import "//fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap";
:root {
  --color-box-shadow-color: rgba(0, 0, 0, 0.05); }

.eps-theme-dark {
  --color-box-shadow-color: rgba(0, 0, 0, 0.1); }

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0; }

@media screen and (min-width: 480px) {
  .text-start-sm {
    text-align: start; } }

@media screen and (min-width: 480px) {
  .text-center-sm {
    text-align: center; } }

@media screen and (min-width: 480px) {
  .text-end-sm {
    text-align: end; } }

@media screen and (min-width: 768px) {
  .text-start-md {
    text-align: start; } }

@media screen and (min-width: 768px) {
  .text-center-md {
    text-align: center; } }

@media screen and (min-width: 768px) {
  .text-end-md {
    text-align: end; } }

@media screen and (min-width: 1025px) {
  .text-start-lg {
    text-align: start; } }

@media screen and (min-width: 1025px) {
  .text-center-lg {
    text-align: center; } }

@media screen and (min-width: 1025px) {
  .text-end-lg {
    text-align: end; } }

@media screen and (min-width: 1440px) {
  .text-start-xl {
    text-align: start; } }

@media screen and (min-width: 1440px) {
  .text-center-xl {
    text-align: center; } }

@media screen and (min-width: 1440px) {
  .text-end-xl {
    text-align: end; } }

@media screen and (min-width: 1600px) {
  .text-start-xxl {
    text-align: start; } }

@media screen and (min-width: 1600px) {
  .text-center-xxl {
    text-align: center; } }

@media screen and (min-width: 1600px) {
  .text-end-xxl {
    text-align: end; } }

@-webkit-keyframes eps-animation-pop {
  from {
    -webkit-transform: scale(0.75);
            transform: scale(0.75);
    opacity: 0; }
  to {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1; } }

@keyframes eps-animation-pop {
  from {
    -webkit-transform: scale(0.75);
            transform: scale(0.75);
    opacity: 0; }
  to {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1; } }

/**
TODO: The molecules, atoms and such generics should be at top level, so the styles will be not depended on the order.
EG: '../../../../core/app/assets/styles/generic'.
Auto-import is designed for CSS that not dependent on the loading order.
 */
.eps-button {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  --button-line-height: 16px;
  --button-padding-y: 0.5em;
  --button-padding-x: 1.5em;
  --button-primary-background-color: #39b54a;
  --button-primary-hover-background-color: #33a242;
  --button-primary-active-background-color: #35a945;
  --button-primary-color: #fff;
  --button-secondary-background-color: #a4afb7;
  --button-secondary-hover-background-color: #96a2ac;
  --button-secondary-active-background-color: #9ba7b0;
  --button-secondary-color: #fff;
  --button-danger-background-color: #b01b1b;
  --button-danger-hover-background-color: #9a1818;
  --button-danger-active-background-color: #a31919;
  --button-danger-color: #fff;
  --button-cta-background-color: #93003F;
  --button-cta-hover-background-color: #7a0034;
  --button-cta-active-background-color: #840038;
  --button-cta-color: #fff;
  --button-link-background-color: #58d0f5;
  --button-link-hover-background-color: #40c9f4;
  --button-link-active-background-color: #4accf4;
  --button-link-color: #fff;
  --button-disabled-background-color: #c2cbd2;
  --button-disabled-hover-background-color: #b3bec7;
  --button-disabled-active-background-color: #b9c3cc;
  --button-disabled-color: #fff;
  color: var(--button-background-color, currentColor);
  font-size: var(--button-font-size, inherit);
  font-weight: 500;
  line-height: var(--button-line-height);
  cursor: pointer; }
  .eps-button:active {
    --button-background-color: var(--button-active-background-color, transparent); }
  .eps-button:hover {
    --button-background-color: var(--button-hover-background-color); }
  .eps-theme-dark .eps-button {
    --button-primary-background-color: #39b54a;
    --button-primary-color: #fff;
    --button-primary-hover-background-color: #33a242;
    --button-primary-active-background-color: #35a945;
    --button-secondary-background-color: #b4b5b7;
    --button-secondary-color: #fff;
    --button-secondary-hover-background-color: #a7a8ab;
    --button-secondary-active-background-color: #acadb0;
    --button-cta-background-color: #93003F;
    --button-cta-hover-background-color: #7a0034;
    --button-cta-active-background-color: #840038;
    --button-cta-color: #fff;
    --button-link-background-color: #58d0f5;
    --button-link-hover-background-color: #40c9f4;
    --button-link-active-background-color: #4accf4;
    --button-link-color: #fff;
    --button-disabled-background-color: #64666a;
    --button-disabled-hover-background-color: #58595d;
    --button-disabled-active-background-color: #5d5e62;
    --button-disabled-color: #fff; }
  .eps-button--contained {
    color: var(--button-color);
    padding: var(--button-padding-y) var(--button-padding-x);
    background-color: var(--button-background-color, transparent);
    border: 1px solid var(--button-background-color); }
    .eps-button--contained:hover {
      color: var(--button-color); }
  .eps-button--outlined {
    display: block;
    padding: var(--button-padding-y) var(--button-padding-x);
    border: 1px solid var(--button-background-color); }
  .eps-button--contained, .eps-button--outlined {
    -webkit-border-radius: 0.1875rem;
            border-radius: 0.1875rem; }
  .eps-button--underlined {
    text-decoration: underline; }
  .eps-button--sm {
    --button-font-size: 0.75rem;
    --button-line-height: 14px; }
  .eps-button--lg {
    --button-font-size: 0.9375rem;
    --button-line-height: 18px; }
  .eps-button--primary {
    --button-color: var(--button-primary-color);
    --button-background-color: var(--button-primary-background-color);
    --button-hover-background-color: var(--button-primary-hover-background-color);
    --button-active-background-color: var(--button-primary-active-background-color); }
  .eps-button--secondary {
    --button-color: var(--buton-secondary-color);
    --button-background-color: var(--button-secondary-background-color);
    --button-hover-background-color: var(--button-secondary-hover-background-color);
    --button-active-background-color: var(--button-secondary-active-background-color); }
  .eps-button--danger {
    --button-color: var(--buton-danger-color);
    --button-background-color: var(--button-danger-background-color);
    --button-hover-background-color: var(--button-danger-hover-background-color);
    --button-active-background-color: var(--button-danger-active-background-color); }
  .eps-button--cta {
    --button-color: var(--button-cta-color);
    --button-background-color: var(--button-cta-background-color);
    --button-hover-background-color: var(--button-cta-hover-background-color);
    --button-active-background-color: var(--button-cta-active-background-color); }
  .eps-button--link {
    --button-color: var(--button-link-color);
    --button-background-color: var(--button-link-background-color);
    --button-hover-background-color: var(--button-link-hover-background-color);
    --button-active-background-color: var(--button-link-active-background-color); }
  .eps-button--disabled, .eps-button[disabled] {
    --button-color: var(--button-disabled-color);
    --button-background-color: var(--button-disabled-background-color);
    --button-hover-background-color: var(--button-disabled-hover-background-color);
    --button-active-background-color: var(--button-disabled-active-background-color);
    cursor: default; }

:root {
  --app-background-color: #f1f3f5;
  --app-box-shadow-color: rgba(var(--box-shadow-color, rgba(0, 0, 0, 0.15)), 0.2);
  --app-header-background-color: #fff;
  --app-header-color: #495157;
  --app-sidebar-background-color: rgba(255, 255, 255, 0.5);
  --app-header-buttons-separator-color: #d5dadf;
  --app-header-buttons-color: #a4afb7;
  --app-lightbox-background-color: rgba(0, 0, 0, 0.8); }

.eps-theme-dark {
  --app-background-color: #34383c;
  --app-box-shadow-color: rgba(var(--box-shadow-color, rgba(0, 0, 0, 0.15)), 0.2);
  --app-header-background-color: #26292C;
  --app-header-color: #e0e1e3;
  --app-sidebar-background-color: #34383c;
  --app-header-buttons-separator-color: #64666a;
  --app-header-buttons-color: #b4b5b7;
  --app-lightbox-background-color: rgba(0, 0, 0, 0.8); }

:root {
  --text-muted: #d5dadf;
  --disabled: #c2cbd2;
  --light: #fff;
  --dark: #000;
  --info: #58d0f5;
  --cta: #93003F;
  --danger: #b01b1b;
  --success: #39b54a;
  --warning: #fcb92c;
  --body-color: #6d7882;
  --link-color: #58d0f5;
  --link-hover-color: #10bcf1;
  --hr-color: #d5dadf;
  --box-shadow-color: theme-colors(dark);
  --display-1-color: #495157;
  --display-2-color: #495157;
  --display-3-color: #6d7882;
  --display-4-color: #495157;
  --h1-color: #6d7882;
  --h2-color: #6d7882;
  --h3-color: #495157;
  --h4-color: #495157;
  --h5-color: #495157;
  --h6-color: #495157;
  --text-base-color: #495157;
  --text-xl-color: #495157;
  --text-lg-color: #495157;
  --text-sm-color: #495157;
  --text-xs-color: #495157;
  --text-xxs-color: #495157;
  --gray-800: #495157;
  --gray-700: #556068;
  --gray-600: #6d7882;
  --gray-500: #a4afb7;
  --gray-400: #c2cbd2;
  --gray-300: #d5dadf;
  --gray-200: #f1f3f5;
  --gray-100: #fcfcfc; }

.eps-theme-dark {
  --text-muted: #7d7e82;
  --disabled: #64666a;
  --light: #fff;
  --dark: #000;
  --info: #58d0f5;
  --accent: #58d0f5;
  --danger: #F84343;
  --cta: #93003F;
  --success: #39b54a;
  --warning: #fcb92c;
  --body-color: #e0e1e3;
  --body-bg: #fff;
  --link-color: #58d0f5;
  --link-hover-color: #10bcf1;
  --hr-color: #4c4f56;
  --box-shadow-color: rgba(0, 0, 0, 0.15);
  --display-1-color: #e0e1e3;
  --display-2-color: #e0e1e3;
  --display-3-color: #e0e1e3;
  --display-4-color: #e0e1e3;
  --h1-color: #e0e1e3;
  --h2-color: #e0e1e3;
  --h3-color: #e0e1e3;
  --h4-color: #e0e1e3;
  --h5-color: #e0e1e3;
  --h6-color: #e0e1e3;
  --text-base-color: #b4b5b7;
  --text-xl-color: #b4b5b7;
  --text-lg-color: #b4b5b7;
  --text-sm-color: #b4b5b7;
  --text-xs-color: #b4b5b7;
  --text-xxs-color: #b4b5b7;
  --gray-800: #26292C;
  --gray-700: #34383c;
  --gray-600: #404349;
  --gray-500: #4c4f56;
  --gray-400: #64666a;
  --gray-300: #7d7e82;
  --gray-200: #b4b5b7;
  --gray-100: #e0e1e3; }

*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
  display: block; }

body {
  margin: 0;
  font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  color: var(--body-color);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background-color: var(--body-bg); }

::-moz-selection {
  background-color: rgba(147, 0, 63, 0.5); }

::selection {
  background-color: rgba(147, 0, 63, 0.5); }

[tabindex="-1"]:focus:not(:focus-visible) {
  outline: 0 !important; }

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  margin: 0;
  padding: 0;
  line-height: inherit;
  font-weight: normal; }

p {
  margin-top: 0; }

b,
strong {
  font-weight: 700; }

small {
  font-size: 80%; }

a {
  --eps-link-color: $eps-link-color;
  color: var(--eps-link-color);
  background-color: transparent; }
  a, a:active, a:hover, a:focus {
    text-decoration: none; }
  a:focus, a:hover {
    --eps-link-color: $eps-link-hover-color;
    text-decoration: none; }

a:not([href]) {
  color: inherit;
  text-decoration: none; }
  a:not([href]):hover {
    color: inherit;
    text-decoration: none; }

pre,
code,
kbd,
samp {
  font-family: monospace;
  font-size: 1em; }

figure {
  margin: 0 0 0; }

img {
  vertical-align: middle;
  border-style: none; }

svg {
  overflow: hidden;
  vertical-align: middle; }

button {
  -webkit-border-radius: 0;
          border-radius: 0; }

button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color; }

input,
button,
select,
optgroup,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit; }

button,
input {
  overflow: visible; }

button,
select {
  text-transform: none; }

[role="button"] {
  cursor: pointer; }

select {
  word-wrap: normal; }

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button; }

button:not(:disabled),
[type="button"]:not(:disabled),
[type="reset"]:not(:disabled),
[type="submit"]:not(:disabled) {
  cursor: pointer; }

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  padding: 0;
  border-style: none; }

input[type="radio"],
input[type="checkbox"] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0; }

textarea {
  overflow: auto;
  resize: vertical; }

[hidden] {
  display: none !important; }

hr {
  border: 0 none;
  border-bottom: 1px solid var(--hr-color); }

.eps-display-1 {
  font-size: 1.85rem;
  color: var(--display-1-color);
  margin-top: 0.5rem;
  margin-bottom: 0.5rem; }

.eps-display-2 {
  font-size: 1.85rem;
  color: var(--display-2-color);
  margin-top: 0.5rem;
  margin-bottom: 0.5rem; }

.eps-display-3 {
  font-size: 1.85rem;
  color: var(--display-3-color);
  margin-top: 0;
  margin-bottom: 1.25rem; }

.eps-display-4 {
  font-size: 1.85rem;
  color: var(--display-4-color);
  margin-top: 0.5rem;
  margin-bottom: 0.5rem; }

h1,
.eps-h1 {
  font-size: 1.625rem;
  line-height: 1;
  color: var(--h1-color);
  margin-bottom: 1.25rem;
  font-weight: 500; }

h2,
.eps-h2 {
  font-size: 1.25rem;
  line-height: 1.2;
  color: var(--h2-color);
  margin-top: 0;
  margin-bottom: 1.25rem;
  font-weight: 500; }

h3,
.eps-h3 {
  font-size: 1rem;
  line-height: 1.2;
  color: var(--h3-color);
  margin-top: 0;
  margin-bottom: 0.5rem;
  font-weight: 500; }

h4,
.eps-h4 {
  font-size: 0.9375rem;
  color: var(--h4-color);
  margin-top: 0;
  margin-bottom: 0.5rem; }

h5,
.eps-h5 {
  font-size: 0.875rem;
  color: var(--h5-color);
  margin-top: 0;
  margin-bottom: 0.5rem; }

h6,
.eps-h6 {
  font-size: 0.875rem;
  color: var(--h-6-color);
  margin-top: 0;
  margin-bottom: 0.5rem;
  font-weight: 700; }

.eps-text-xxs {
  font-size: 0.75rem;
  line-height: 1.2;
  color: var(--text-xxs-color);
  font-weight: 400; }

.eps-text-xs {
  font-size: 0.75rem;
  line-height: 1.5;
  color: var(--text-xs-color);
  font-weight: 400; }

.eps-text {
  font-size: 0.875rem;
  line-height: 1.5;
  color: var(--text-base-color);
  font-weight: 400; }

.eps-text-sm {
  font-size: 0.8125rem;
  line-height: 1.5;
  color: var(--text-sm-color);
  font-weight: 400; }

.eps-text-lg {
  font-size: 0.9375rem;
  line-height: 1.5;
  color: var(--text-lg-color);
  font-weight: 400; }

.eps-text-xl {
  font-size: 1rem;
  line-height: 1.5;
  color: var(--text-xl-color);
  font-weight: 400; }

.video-wrapper {
  position: relative;
  padding-bottom: 56.25%;
  height: 0; }
  .video-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

.eps-separator {
  margin-bottom: 2.75rem; }

.eps-theme-dark {
  --e-app-back-button-color: #b4b5b7; }

.back-button, .e-app-back-button {
  --button-background-color: var(--e-app-back-button-color, #a4afb7);
  margin-bottom: 1.5rem; }
  .back-button .eps-icon, .e-app-back-button .eps-icon {
    -webkit-margin-end: 0.3125rem;
            margin-inline-end: 0.3125rem; }

.eps-theme-dark {
  --input-border-color: --hr-color; }

.eps-input {
  border: 1px solid var(--hr-color);
  -webkit-border-radius: 0.1875rem;
          border-radius: 0.1875rem;
  background: transparent;
  color: inherit;
  height: 1.875rem;
  padding: 0 0.3125rem; }
  .eps-input--block {
    width: 100%; }

.eps-app {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100vh;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  color: var(--body-color);
  background-color: var(--app-background-color);
  position: absolute;
  -webkit-border-radius: 0;
          border-radius: 0;
  -webkit-box-shadow: 2px 8px 23px 3px var(--color-box-shadow-color);
          box-shadow: 2px 8px 23px 3px var(--color-box-shadow-color);
  overflow: hidden;
  font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
  width: 100%;
  max-width: 100%; }
  .eps-app__lightbox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: fixed;
    height: 100%;
    width: 100%;
    background-color: var(--app-lightbox-background-color);
    z-index: 1040;
    bottom: 0;
    left: 0; }
  .eps-app__header {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    font-size: 0.9375rem;
    color: var(--app-header-color);
    background-color: var(--app-header-background-color);
    -webkit-box-shadow: 0 4px 10px var(--color-box-shadow-color);
            box-shadow: 0 4px 10px var(--color-box-shadow-color);
    position: relative;
    z-index: 3;
    height: 3.125rem;
    padding: 0 1rem; }
  .eps-app__header-buttons {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    font-size: 1.125rem; }
  .eps-app__header-btn {
    --button-background-color: var(--app-header-buttons-color);
    -webkit-padding-start: 1rem;
            padding-inline-start: 1rem;
    font-size: 1.125rem;
    line-height: 1.25rem; }
    .eps-app__header-btn:first-child {
      -webkit-border-start: 1px solid var(--app-header-buttons-separator-color);
              border-inline-start: 1px solid var(--app-header-buttons-separator-color); }
    .eps-app__header-btn:not(:first-child) {
      -webkit-padding-end: 1rem;
              padding-inline-end: 1rem; }
  .eps-app__logo-title-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .eps-app__logo {
    display: block;
    width: 1.75rem;
    height: 1.75rem;
    line-height: 1.75rem;
    text-align: center;
    font-size: calc(0.4 * 1.75rem);
    -webkit-border-radius: 50%;
            border-radius: 50%;
    color: #fff;
    background-color: #93003F; }
    .eps-app__logo:not(:last-child) {
      -webkit-margin-end: 0.625rem;
              margin-inline-end: 0.625rem; }
  .eps-app__title {
    font-size: 0.9375rem;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 0; }
  .eps-app__main {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }
  .eps-app__sidebar {
    background-color: var(--app-sidebar-background-color);
    padding-top: 1.25rem;
    width: 30%;
    max-width: 17.1875rem;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    overflow-y: auto;
    -webkit-box-shadow: 2px 8px 23px 3px var(--color-box-shadow-color);
            box-shadow: 2px 8px 23px 3px var(--color-box-shadow-color);
    z-index: 4; }
  .eps-app__content {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    position: relative;
    padding: 2.75rem;
    height: 100%;
    overflow-y: auto; }

.e-app-upload-file__input {
  display: none; }

.e-app-drop-zone {
  --e-app-drop-zone-icon-color: #c2cbd2;
  --e-app-drop-zone-text-color: #a4afb7;
  --e-app-drop-zone-secondary-text-color: #6d7882; }
  .e-app-drop-zone__icon {
    margin-bottom: 2.75rem;
    color: var(--e-app-drop-zone-icon-color);
    font-size: 60px; }
  .e-app-drop-zone__text {
    color: var(--e-app-drop-zone-text-color); }
  .e-app-drop-zone__secondary-text {
    color: var(--e-app-drop-zone-secondary-text-color); }

.eps-theme-dark .e-app-drop-zone {
  --e-app-drop-zone-icon-color: #c2cbd2;
  --e-app-drop-zone-text-color: #b4b5b7;
  --e-app-drop-zone-secondary-text-color: #e0e1e3; }

:root {
  --info-toggle-color: #d5dadf;
  --info-toggle-hover-color: #a4afb7; }

.eps-theme-dark {
  --placeholder-filter: invert(0.8) sepia(1) saturate(0.2) hue-rotate(180deg) contrast(1.25) brightness(1.2);
  --info-toggle-color: #64666a;
  --info-toggle-hover-color: #b4b5b7; }

.e-site-part .eps-card__image {
  -webkit-filter: var(--placeholder-filter, none);
          filter: var(--placeholder-filter, none); }

.e-site-part__info-toggle {
  color: var(--info-toggle-color); }
  .e-site-part__info-toggle:hover {
    --info-toggle-color: var(--info-toggle-hover-color); }

.e-site-editor__header {
  margin-bottom: 2.75rem;
  border-bottom: 1px solid var(--hr-color); }

:root {
  --e-elementor-loader-container-background-color: #f1f3f5;
  --e-elementor-loader-background-color: rgba(255, 255, 255, 0.9); }

.eps-theme-dark {
  --e-elementor-loader-container-background-color: #34383c;
  --e-elementor-loader-background-color: #4c4f56; }

.elementor-loading {
  background-color: var(--e-elementor-loader-container-background-color);
  height: 100vh; }

.elementor-loader-wrapper {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 300px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.elementor-loader {
  -webkit-border-radius: 50%;
          border-radius: 50%;
  padding: 40px;
  height: 150px;
  width: 150px;
  background-color: var(--e-elementor-loader-background-color);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-box-shadow: 2px 2px 20px 4px rgba(0, 0, 0, 0.02);
          box-shadow: 2px 2px 20px 4px rgba(0, 0, 0, 0.02); }

.elementor-loader-boxes {
  height: 100%;
  width: 100%;
  position: relative; }

.elementor-loader-box {
  position: absolute;
  background-color: #d5dadf;
  -webkit-animation: load 1.8s linear infinite;
          animation: load 1.8s linear infinite; }
  .elementor-loader-box:nth-of-type(1) {
    width: 20%;
    height: 100%;
    left: 0;
    top: 0; }
  .elementor-loader-box:not(:nth-of-type(1)) {
    right: 0;
    height: 20%;
    width: 60%; }
  .elementor-loader-box:nth-of-type(2) {
    top: 0;
    -webkit-animation-delay: -0.45s;
            animation-delay: -0.45s; }
  .elementor-loader-box:nth-of-type(3) {
    top: 40%;
    -webkit-animation-delay: -0.9s;
            animation-delay: -0.9s; }
  .elementor-loader-box:nth-of-type(4) {
    bottom: 0;
    -webkit-animation-delay: -1.35s;
            animation-delay: -1.35s; }

.elementor-loading-title {
  color: #a4afb7;
  text-align: center;
  text-transform: uppercase;
  margin-top: 30px;
  letter-spacing: 7px;
  text-indent: 7px;
  font-size: 10px;
  width: 100%; }

@-webkit-keyframes load {
  0% {
    opacity: .3; }
  50% {
    opacity: 1; }
  100% {
    opacity: .3; } }

@keyframes load {
  0% {
    opacity: .3; }
  50% {
    opacity: 1; }
  100% {
    opacity: .3; } }

.eps-menu__title {
  margin-top: 2.75rem;
  margin-bottom: 1rem; }

.e-app-import {
  --e-app-import-back-to-library-color: #a4afb7; }
  .e-app-import__drop-zone {
    margin-top: 1.25rem; }
  .e-app-import__back-to-library {
    color: var(--e-app-import-back-to-library-color);
    margin-bottom: 1.5rem; }
    .e-app-import__back-to-library > i {
      -webkit-margin-end: 0.5rem;
              margin-inline-end: 0.5rem; }

.eps-theme-dark .e-app-import {
  --e-app-import-back-to-library-color: #b4b5b7; }

.e-site-editor__promotion-overlay__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 100%;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  text-decoration: none; }

.e-site-editor__promotion-overlay__icon {
  font-size: 1.25rem;
  color: #fff;
  margin-bottom: 1rem; }

.e-app-import-export-wizard-step {
  --e-app-import-export-wizard-step-icon-color: #c2cbd2;
  --e-app-import-export-wizard-step-text-color: #a4afb7;
  --e-app-import-export-wizard-step-bottom-text-color: #a4afb7;
  height: 100%;
  position: relative;
  text-align: center; }
  .e-app-import-export-wizard-step__media-container {
    height: 140px;
    margin: 5.5rem 0 2.75rem; }
  .e-app-import-export-wizard-step__icon {
    color: var(--e-app-import-export-wizard-step-icon-color);
    font-size: 50px; }
    .e-app-import-export-wizard-step__icon.eicon-loading {
      font-size: 1.85rem; }
  .e-app-import-export-wizard-step__heading {
    margin-bottom: 1.5rem; }
  .e-app-import-export-wizard-step__description {
    color: var(--e-app-import-export-wizard-step-text-color); }
  .e-app-import-export-wizard-step__content {
    text-align: initial;
    margin-bottom: 1.25rem; }
  .e-app-import-export-wizard-step__notice {
    display: block;
    position: -webkit-sticky;
    position: sticky;
    top: 100%;
    /* Will prevent text overlapping when window height is too short. */
    color: var(--e-app-import-export-wizard-step-bottom-text-color);
    font-style: italic;
    margin-bottom: 0; }

.eps-theme-dark .e-app-import-export-wizard-step {
  --e-app-import-export-wizard-step-icon-color: #64666a;
  --e-app-import-export-wizard-step-text-color: #b4b5b7;
  --e-app-import-export-wizard-step-bottom-text-color: #b4b5b7; }

.e-app-import-export-page-header {
  --e-app-import-export-page-header-border-bottom-color: #d5dadf;
  --e-app-import-export-page-header-heading-color: #6d7882;
  --e-app-import-export-page-header-description-color: #a4afb7;
  border-bottom: 1px solid var(--e-app-import-export-page-header-border-bottom-color);
  margin-bottom: 2.75rem; }
  .e-app-import-export-page-header__content-wrapper {
    max-width: 645px; }
  .e-app-import-export-page-header__heading {
    color: var(--e-app-import-export-page-header-heading-color); }
  .e-app-import-export-page-header__description {
    color: var(--e-app-import-export-page-header-description-color);
    margin-top: 1.25rem; }

.eps-theme-dark .e-app-import-export-page-header {
  --e-app-import-export-page-header-border-bottom-color: #4c4f56;
  --e-app-import-export-page-header-heading-color: #e0e1e3;
  --e-app-import-export-page-header-description-color: #e0e1e3; }

.e-app-export-kit-content {
  --e-app-export-kit-content-title-color: #556068;
  --e-app-export-kit-content-description-color: #6d7882; }
  .e-app-export-kit-content__checkbox {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -webkit-margin-end: 0.75rem;
            margin-inline-end: 0.75rem; }
  .e-app-export-kit-content__title {
    color: var(--e-app-export-kit-content-title-color); }
  .e-app-export-kit-content__description {
    color: var(--e-app-export-kit-content-description-color);
    -webkit-margin-end: 1.25rem;
            margin-inline-end: 1.25rem; }
  .e-app-export-kit-content__notice {
    margin-top: 1rem; }

.eps-theme-dark .e-app-export-kit-content {
  --e-app-export-kit-content-title-color: #e0e1e3;
  --e-app-export-kit-content-description-color: #b4b5b7; }

.e-app-wizard-footer {
  --e-app-wizard-footer-border-color: #d5dadf;
  padding: 0.5rem; }
  .e-app-wizard-footer__separator {
    border-top: 1px solid var(--e-app-wizard-footer-border-color); }

.eps-theme-dark .e-app-wizard-footer {
  --e-app-wizard-footer-border-color: #4c4f56; }

.e-app-export-templates-features__locked {
  --e-app-export-templates-features-locked-color: #a4afb7;
  color: var(--e-app-export-templates-features-locked-color); }

.eps-theme-dark .e-app-export-templates-features__locked {
  --e-app-export-templates-features-locked-color: #7d7e82; }

:root {
  --color-box-shadow-color: rgba(0, 0, 0, 0.05); }

.eps-theme-dark {
  --color-box-shadow-color: rgba(0, 0, 0, 0.1); }

:root {
  --card-background-color: rgba(255, 255, 255, 0.5);
  --card-background-color-hover: #fff;
  --card-box-shadow: 0 4px 10px var(--color-box-shadow-color);
  --card-header-footer-border: 1px solid #f1f3f5;
  --card-header-footer-active-border: 2px solid #e2e6ea;
  --card-headline-color: #6d7882;
  --card-figure-background-color: #f1f3f5;
  --card-image-overlay-background-color: rgba(0, 0, 0, 0.2); }

.eps-theme-dark {
  --card-background-color: #404349;
  --card-background-color-hover: rgba(76, 79, 86, 0.8);
  --card-box-shadow: 0 3px 6px var(--color-box-shadow-color);
  --card-header-footer-border: 1px solid #34383c;
  --card-header-footer-active-border: 1px solid #26292C;
  --card-headline-color: #e0e1e3;
  --card-figure-background-color: #34383c;
  --card-image-overlay-background-color: rgba(52, 56, 60, 0.5); }

.eps-card {
  background-color: var(--card-background-color);
  -webkit-box-shadow: 0 4px 10px var(--color-box-shadow-color);
          box-shadow: 0 4px 10px var(--color-box-shadow-color);
  -webkit-border-radius: 0.1875rem;
          border-radius: 0.1875rem;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
  font-size: 0.75rem;
  /*
	 todo: TBD: Optionally remove headline styling in favor of a global atom depending on variation needs
	*/ }
  .eps-card__header {
    padding: 0.625rem;
    border-bottom: var(--card-header-footer-border);
    min-height: 2.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .eps-card__header--padding {
      padding: var(--eps-card-header-padding); }
  .eps-card__headline {
    color: var(--card-headline-color);
    margin-bottom: 0;
    font-weight: 500;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    overflow: hidden;
    -o-text-overflow: ellipsis;
       text-overflow: ellipsis;
    white-space: nowrap; }
  .eps-card__body {
    padding: 0.625rem 0.625rem; }
    .eps-card__body--padding {
      padding: var(--eps-card-body-padding); }
  .eps-card__figure {
    background-color: var(--card-figure-background-color);
    position: relative;
    padding-bottom: var(--card-image-aspect-ratio, 95.6%);
    overflow: hidden;
    height: 0; }
  .eps-card__image {
    width: 100%;
    -o-object-fit: contain;
       object-fit: contain;
    -o-object-position: top;
       object-position: top;
    position: absolute;
    top: 0;
    left: 0; }
  .eps-card__image-overlay {
    position: absolute;
    top: 0;
    background-color: var(--card-image-overlay-background-color);
    z-index: 1;
    width: 100%;
    height: 100%;
    opacity: 0;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s; }
    .eps-card__image-overlay:hover {
      opacity: 1; }
  .eps-card__footer {
    padding: 0.625rem;
    border-top: var(--card-header-footer-border);
    font-size: 0.6875rem; }
    .eps-card__footer--padding {
      padding: var(--eps-card-footer-padding); }
  .eps-card:hover {
    background-color: var(--card-background-color-hover); }

:root {
  --menu-item-color: #6d7882;
  --menu-item-color-hover: #556068;
  --menu-item-background-color-active: #fff;
  --menu-item-icon-color: #a4afb7;
  --menu-item-action-button-color: #d5dadf; }

.eps-theme-dark {
  --menu-item-color: #e0e1e3;
  --menu-item-color-hover: #e0e1e3;
  --menu-item-background-color-active: #404349;
  --menu-item-icon-color: #b4b5b7;
  --menu-item-action-button-color: #64666a; }

.eps-menu-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
  --action-button-opacity: 0; }
  .eps-menu-item::before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    inset-inline-start: 0;
    height: 100%;
    width: var(--menu-item-pointer-width);
    background-color: #58d0f5; }
  .eps-menu-item:hover {
    --action-button-opacity: 1; }
  .eps-menu-item:hover, .eps-menu-item--active {
    --menu-item-color: var(--menu-item-color-hover);
    --eps-link-color: var(--menu-item-color-hover);
    --menu-item-icon-color: #58d0f5; }
  .eps-menu-item--active {
    background-color: var(--menu-item-background-color-active); }
  .eps-menu-item__link {
    padding: 0.5rem 1.875rem;
    min-height: 2.75rem;
    font-size: 0.75rem;
    line-height: 1.2;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    color: var(--menu-item-color);
    --eps-link-color: var(--menu-item-color); }
    .eps-menu-item__link:not(:last-child) {
      -webkit-padding-end: 0;
              padding-inline-end: 0; }
    .eps-menu-item__link .eps-icon {
      font-size: 1.125rem;
      color: var(--menu-item-icon-color);
      -webkit-margin-end: 0.75rem;
              margin-inline-end: 0.75rem; }
  .eps-menu-item__action-button {
    color: var(--menu-item-action-button-color);
    opacity: var(--action-button-opacity);
    padding: 0.625rem;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    -webkit-margin-end: 1.25rem;
            margin-inline-end: 1.25rem; }
  .eps-menu-item--active {
    --menu-item-pointer-width: 0.3125rem;
    -webkit-box-shadow: 0 3px 6px var(--color-box-shadow-color);
            box-shadow: 0 3px 6px var(--color-box-shadow-color); }
    .eps-menu-item--active .eps-menu-item__link .eps-icon {
      color: #58d0f5; }

.eps-grid-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%; }
  .eps-grid-container--no-wrap {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap; }
  .eps-grid-container--wrap-reverse {
    -ms-flex-wrap: wrap-reverse;
        flex-wrap: wrap-reverse; }
  .eps-grid-container--spacing {
    --grid-row-gutter: calc(-1 * calc( var(--grid-spacing-gutter) * 0.0625rem));
    width: var(--grid-spacing-width);
    margin: var(--grid-row-gutter); }
    .eps-grid-container--spacing > .eps-grid-item {
      padding: var(--grid-spacing-gutter); }

.eps-grid--direction-row {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row; }
  .eps-grid--direction-row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }

.eps-grid--direction-column {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }
  .eps-grid--direction-column-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; }

.eps-grid--justify-stretch {
  -webkit-box-pack: stretch;
      -ms-flex-pack: stretch;
          justify-content: stretch; }

.eps-grid--justify-start {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start; }

.eps-grid--justify-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.eps-grid--justify-end {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.eps-grid--justify-space-between {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }

.eps-grid--justify-space-around {
  -ms-flex-pack: distribute;
      justify-content: space-around; }

.eps-grid--justify-space-evenly {
  -webkit-box-pack: space-evenly;
      -ms-flex-pack: space-evenly;
          justify-content: space-evenly; }

.eps-grid--align-content-stretch {
  -ms-flex-line-pack: stretch;
      align-content: stretch; }

.eps-grid--align-content-start {
  -ms-flex-line-pack: start;
      align-content: flex-start; }

.eps-grid--align-content-center {
  -ms-flex-line-pack: center;
      align-content: center; }

.eps-grid--align-content-end {
  -ms-flex-line-pack: end;
      align-content: flex-end; }

.eps-grid--align-content-space-between {
  -ms-flex-line-pack: justify;
      align-content: space-between; }

.eps-grid--align-items-start {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; }

.eps-grid--align-items-center {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.eps-grid--align-items-end {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end; }

.eps-grid--align-items-baseline {
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline; }

.eps-grid--align-items-stretch {
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch; }

.eps-grid-item--zero-min-width {
  min-width: 0; }

@media screen and (min-width: 480px) {
  .eps-grid-item-sm {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    max-width: 100%;
    -ms-flex-preferred-size: 0;
        flex-basis: 0; } }

@media screen and (min-width: 768px) {
  .eps-grid-item-md {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    max-width: 100%;
    -ms-flex-preferred-size: 0;
        flex-basis: 0; } }

@media screen and (min-width: 1025px) {
  .eps-grid-item-lg {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    max-width: 100%;
    -ms-flex-preferred-size: 0;
        flex-basis: 0; } }

@media screen and (min-width: 1440px) {
  .eps-grid-item-xl {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    max-width: 100%;
    -ms-flex-preferred-size: 0;
        flex-basis: 0; } }

@media screen and (min-width: 1600px) {
  .eps-grid-item-xxl {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    max-width: 100%;
    -ms-flex-preferred-size: 0;
        flex-basis: 0; } }

.eps-grid-item-xs-1 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  max-width: 8.3333333333%;
  -ms-flex-preferred-size: 8.3333333333%;
      flex-basis: 8.3333333333%; }

.eps-grid-item-xs-2 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  max-width: 16.6666666667%;
  -ms-flex-preferred-size: 16.6666666667%;
      flex-basis: 16.6666666667%; }

.eps-grid-item-xs-3 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  max-width: 25%;
  -ms-flex-preferred-size: 25%;
      flex-basis: 25%; }

.eps-grid-item-xs-4 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  max-width: 33.3333333333%;
  -ms-flex-preferred-size: 33.3333333333%;
      flex-basis: 33.3333333333%; }

.eps-grid-item-xs-5 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  max-width: 41.6666666667%;
  -ms-flex-preferred-size: 41.6666666667%;
      flex-basis: 41.6666666667%; }

.eps-grid-item-xs-6 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  max-width: 50%;
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%; }

.eps-grid-item-xs-7 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  max-width: 58.3333333333%;
  -ms-flex-preferred-size: 58.3333333333%;
      flex-basis: 58.3333333333%; }

.eps-grid-item-xs-8 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  max-width: 66.6666666667%;
  -ms-flex-preferred-size: 66.6666666667%;
      flex-basis: 66.6666666667%; }

.eps-grid-item-xs-9 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  max-width: 75%;
  -ms-flex-preferred-size: 75%;
      flex-basis: 75%; }

.eps-grid-item-xs-10 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  max-width: 83.3333333333%;
  -ms-flex-preferred-size: 83.3333333333%;
      flex-basis: 83.3333333333%; }

.eps-grid-item-xs-11 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  max-width: 91.6666666667%;
  -ms-flex-preferred-size: 91.6666666667%;
      flex-basis: 91.6666666667%; }

.eps-grid-item-xs-12 {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  max-width: 100%;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%; }

@media screen and (min-width: 480px) {
  .eps-grid-item-sm-1 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 8.3333333333%;
    -ms-flex-preferred-size: 8.3333333333%;
        flex-basis: 8.3333333333%; }
  .eps-grid-item-sm-2 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 16.6666666667%;
    -ms-flex-preferred-size: 16.6666666667%;
        flex-basis: 16.6666666667%; }
  .eps-grid-item-sm-3 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 25%;
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%; }
  .eps-grid-item-sm-4 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 33.3333333333%;
    -ms-flex-preferred-size: 33.3333333333%;
        flex-basis: 33.3333333333%; }
  .eps-grid-item-sm-5 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 41.6666666667%;
    -ms-flex-preferred-size: 41.6666666667%;
        flex-basis: 41.6666666667%; }
  .eps-grid-item-sm-6 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 50%;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%; }
  .eps-grid-item-sm-7 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 58.3333333333%;
    -ms-flex-preferred-size: 58.3333333333%;
        flex-basis: 58.3333333333%; }
  .eps-grid-item-sm-8 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 66.6666666667%;
    -ms-flex-preferred-size: 66.6666666667%;
        flex-basis: 66.6666666667%; }
  .eps-grid-item-sm-9 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 75%;
    -ms-flex-preferred-size: 75%;
        flex-basis: 75%; }
  .eps-grid-item-sm-10 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 83.3333333333%;
    -ms-flex-preferred-size: 83.3333333333%;
        flex-basis: 83.3333333333%; }
  .eps-grid-item-sm-11 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 91.6666666667%;
    -ms-flex-preferred-size: 91.6666666667%;
        flex-basis: 91.6666666667%; }
  .eps-grid-item-sm-12 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 100%;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%; } }

@media screen and (min-width: 768px) {
  .eps-grid-item-md-1 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 8.3333333333%;
    -ms-flex-preferred-size: 8.3333333333%;
        flex-basis: 8.3333333333%; }
  .eps-grid-item-md-2 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 16.6666666667%;
    -ms-flex-preferred-size: 16.6666666667%;
        flex-basis: 16.6666666667%; }
  .eps-grid-item-md-3 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 25%;
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%; }
  .eps-grid-item-md-4 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 33.3333333333%;
    -ms-flex-preferred-size: 33.3333333333%;
        flex-basis: 33.3333333333%; }
  .eps-grid-item-md-5 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 41.6666666667%;
    -ms-flex-preferred-size: 41.6666666667%;
        flex-basis: 41.6666666667%; }
  .eps-grid-item-md-6 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 50%;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%; }
  .eps-grid-item-md-7 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 58.3333333333%;
    -ms-flex-preferred-size: 58.3333333333%;
        flex-basis: 58.3333333333%; }
  .eps-grid-item-md-8 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 66.6666666667%;
    -ms-flex-preferred-size: 66.6666666667%;
        flex-basis: 66.6666666667%; }
  .eps-grid-item-md-9 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 75%;
    -ms-flex-preferred-size: 75%;
        flex-basis: 75%; }
  .eps-grid-item-md-10 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 83.3333333333%;
    -ms-flex-preferred-size: 83.3333333333%;
        flex-basis: 83.3333333333%; }
  .eps-grid-item-md-11 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 91.6666666667%;
    -ms-flex-preferred-size: 91.6666666667%;
        flex-basis: 91.6666666667%; }
  .eps-grid-item-md-12 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 100%;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%; } }

@media screen and (min-width: 1025px) {
  .eps-grid-item-lg-1 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 8.3333333333%;
    -ms-flex-preferred-size: 8.3333333333%;
        flex-basis: 8.3333333333%; }
  .eps-grid-item-lg-2 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 16.6666666667%;
    -ms-flex-preferred-size: 16.6666666667%;
        flex-basis: 16.6666666667%; }
  .eps-grid-item-lg-3 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 25%;
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%; }
  .eps-grid-item-lg-4 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 33.3333333333%;
    -ms-flex-preferred-size: 33.3333333333%;
        flex-basis: 33.3333333333%; }
  .eps-grid-item-lg-5 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 41.6666666667%;
    -ms-flex-preferred-size: 41.6666666667%;
        flex-basis: 41.6666666667%; }
  .eps-grid-item-lg-6 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 50%;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%; }
  .eps-grid-item-lg-7 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 58.3333333333%;
    -ms-flex-preferred-size: 58.3333333333%;
        flex-basis: 58.3333333333%; }
  .eps-grid-item-lg-8 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 66.6666666667%;
    -ms-flex-preferred-size: 66.6666666667%;
        flex-basis: 66.6666666667%; }
  .eps-grid-item-lg-9 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 75%;
    -ms-flex-preferred-size: 75%;
        flex-basis: 75%; }
  .eps-grid-item-lg-10 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 83.3333333333%;
    -ms-flex-preferred-size: 83.3333333333%;
        flex-basis: 83.3333333333%; }
  .eps-grid-item-lg-11 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 91.6666666667%;
    -ms-flex-preferred-size: 91.6666666667%;
        flex-basis: 91.6666666667%; }
  .eps-grid-item-lg-12 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 100%;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%; } }

@media screen and (min-width: 1440px) {
  .eps-grid-item-xl-1 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 8.3333333333%;
    -ms-flex-preferred-size: 8.3333333333%;
        flex-basis: 8.3333333333%; }
  .eps-grid-item-xl-2 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 16.6666666667%;
    -ms-flex-preferred-size: 16.6666666667%;
        flex-basis: 16.6666666667%; }
  .eps-grid-item-xl-3 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 25%;
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%; }
  .eps-grid-item-xl-4 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 33.3333333333%;
    -ms-flex-preferred-size: 33.3333333333%;
        flex-basis: 33.3333333333%; }
  .eps-grid-item-xl-5 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 41.6666666667%;
    -ms-flex-preferred-size: 41.6666666667%;
        flex-basis: 41.6666666667%; }
  .eps-grid-item-xl-6 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 50%;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%; }
  .eps-grid-item-xl-7 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 58.3333333333%;
    -ms-flex-preferred-size: 58.3333333333%;
        flex-basis: 58.3333333333%; }
  .eps-grid-item-xl-8 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 66.6666666667%;
    -ms-flex-preferred-size: 66.6666666667%;
        flex-basis: 66.6666666667%; }
  .eps-grid-item-xl-9 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 75%;
    -ms-flex-preferred-size: 75%;
        flex-basis: 75%; }
  .eps-grid-item-xl-10 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 83.3333333333%;
    -ms-flex-preferred-size: 83.3333333333%;
        flex-basis: 83.3333333333%; }
  .eps-grid-item-xl-11 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 91.6666666667%;
    -ms-flex-preferred-size: 91.6666666667%;
        flex-basis: 91.6666666667%; }
  .eps-grid-item-xl-12 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 100%;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%; } }

@media screen and (min-width: 1600px) {
  .eps-grid-item-xxl-1 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 8.3333333333%;
    -ms-flex-preferred-size: 8.3333333333%;
        flex-basis: 8.3333333333%; }
  .eps-grid-item-xxl-2 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 16.6666666667%;
    -ms-flex-preferred-size: 16.6666666667%;
        flex-basis: 16.6666666667%; }
  .eps-grid-item-xxl-3 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 25%;
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%; }
  .eps-grid-item-xxl-4 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 33.3333333333%;
    -ms-flex-preferred-size: 33.3333333333%;
        flex-basis: 33.3333333333%; }
  .eps-grid-item-xxl-5 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 41.6666666667%;
    -ms-flex-preferred-size: 41.6666666667%;
        flex-basis: 41.6666666667%; }
  .eps-grid-item-xxl-6 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 50%;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%; }
  .eps-grid-item-xxl-7 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 58.3333333333%;
    -ms-flex-preferred-size: 58.3333333333%;
        flex-basis: 58.3333333333%; }
  .eps-grid-item-xxl-8 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 66.6666666667%;
    -ms-flex-preferred-size: 66.6666666667%;
        flex-basis: 66.6666666667%; }
  .eps-grid-item-xxl-9 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 75%;
    -ms-flex-preferred-size: 75%;
        flex-basis: 75%; }
  .eps-grid-item-xxl-10 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 83.3333333333%;
    -ms-flex-preferred-size: 83.3333333333%;
        flex-basis: 83.3333333333%; }
  .eps-grid-item-xxl-11 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 91.6666666667%;
    -ms-flex-preferred-size: 91.6666666667%;
        flex-basis: 91.6666666667%; }
  .eps-grid-item-xxl-12 {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    max-width: 100%;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%; } }

:root {
  --menu-title-color: #6d7882; }

.eps-theme-dark {
  --menu-title-color: #6d7882; }

.eps-menu ul {
  list-style: none;
  padding: 0;
  margin: 0; }
  .eps-menu ul li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }

.eps-menu__title {
  padding: 0.5rem 1.875rem;
  font-size: 0.6875rem;
  line-height: 1.2;
  text-transform: uppercase;
  font-weight: normal;
  color: var(--menu-title-color); }

:root {
  --eps-modal-background-color: #fff;
  --eps-modal-header-background-color: #58d0f5; }

.eps-theme-dark {
  --eps-modal-background-color: #34383c;
  --eps-modal-header-background-color: #58d0f5; }

/** ----------------------------------------------------------------
	EPS Modal
---------------------------------------------------------------- */
.eps-modal {
  max-width: 43.75rem;
  background: var(--eps-modal-background-color);
  -webkit-border-radius: 0.1875rem;
          border-radius: 0.1875rem;
  -webkit-animation: eps-animation-pop 0.15s cubic-bezier(0.57, 0.53, 0.71, 1.47) forwards;
          animation: eps-animation-pop 0.15s cubic-bezier(0.57, 0.53, 0.71, 1.47) forwards; }
  .eps-modal__overlay {
    background: rgba(0, 0, 0, 0.5);
    position: fixed;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    z-index: 1030; }
  .eps-modal__header {
    font-size: 0.875rem;
    background: var(--eps-modal-header-background-color);
    height: 2.75rem;
    padding: 0.625rem 1rem;
    -webkit-border-radius: 0.1875rem;
            border-radius: 0.1875rem; }
    .eps-modal__header,
    .eps-modal__header .title {
      color: #fff; }
  .eps-modal__icon {
    -webkit-margin-end: 0.625rem;
            margin-inline-end: 0.625rem; }
  .eps-modal__body {
    padding: 1.875rem; }
  .eps-modal__tip, .eps-modal .eps-tip {
    -webkit-padding-start: 0.75rem;
            padding-inline-start: 0.75rem;
    -webkit-border-start: 3px solid #58d0f5;
            border-inline-start: 3px solid #58d0f5; }
    .eps-modal__tip:not(:last-child), .eps-modal .eps-tip:not(:last-child) {
      margin-bottom: 1.875rem; }
    .eps-modal__tip:not(:first-child), .eps-modal .eps-tip:not(:first-child) {
      margin-top: 1.875rem; }
  .eps-modal__section:not(:first-child) {
    margin-top: 1.875rem; }
  .eps-modal__close-wrapper {
    -webkit-padding-start: 1rem;
            padding-inline-start: 1rem;
    -webkit-border-start: solid 1px #fff;
            border-inline-start: solid 1px #fff; }

.eps-add-new-button {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  --eps-add-new-button-size: 1.5rem;
  line-height: var(--eps-add-new-button-size);
  cursor: pointer; }
  .eps-add-new-button .eps-icon {
    background-color: #58d0f5;
    color: #fff;
    width: var(--eps-add-new-button-size);
    height: var(--eps-add-new-button-size);
    -webkit-border-radius: 100%;
            border-radius: 100%;
    font-size: calc(var(--eps-add-new-button-size) * 0.75);
    text-align: center;
    line-height: var(--eps-add-new-button-size); }
  .eps-add-new-button span:not(.sr-only) {
    -webkit-margin-start: 0.625rem;
            margin-inline-start: 0.625rem;
    font-weight: 500; }
  .eps-add-new-button--sm {
    --eps-add-new-button-size: 1rem; }

:root {
  --select2-selection-background-color: #fff;
  --select2-selection-color: #6d7882;
  --select2-selection-border-color: #d5dadf;
  --select2-selection-opened-focused-border-color: #f1f3f5;
  --select2-single-selection-rendered-color: #6d7882;
  --select2-default-single-selection-background-color: #fff;
  --select2-default-single-selection-border-color: #d5dadf;
  --select2-default-multiple-selection-background-color: #fff;
  --select2-default-multiple-selection-choice-background-color: #f1f3f5;
  --select2-default-multiple-selection-choice-color: #6d7882;
  --select2-default-multiple-selection-choice-border-color: #f1f3f5;
  --select2-default-multiple-selection-choice-remove-color: #a4afb7;
  --select2-default-multiple-selection-choice-remove-hover-color: #6d7882;
  --select2-default-results-selected-option-background-color: #fff;
  --select2-default-results-selected-option-color: #6d7882;
  --select2-default-results-highlighted-option-background-color: #5897fb;
  --select2-default-results-highlighted-option-color: #fff;
  --select2-results-selected-option-background-color: #5897fb;
  --select2-results-selected-option-color: #fff;
  --select2-dropdown-background-color: #fff;
  --select2-dropdown-border-color: #d5dadf; }

.eps-theme-dark {
  --select2-selection-background-color: #34383c;
  --select2-selection-color: #e0e1e3;
  --select2-selection-border-color: #64666a;
  --select2-selection-opened-focused-border-color: #7d7e82;
  --select2-single-selection-rendered-color: #e0e1e3;
  --select2-default-single-selection-background-color: #34383c;
  --select2-default-single-selection-border-color: #4c4f56;
  --select2-default-multiple-selection-background-color: #34383c;
  --select2-default-multiple-selection-choice-background-color: #4c4f56;
  --select2-default-multiple-selection-choice-color: #e0e1e3;
  --select2-default-multiple-selection-choice-border-color: #4c4f56;
  --select2-default-multiple-selection-choice-remove-color: #b4b5b7;
  --select2-default-multiple-selection-choice-remove-hover-color: #e0e1e3;
  --select2-default-results-selected-option-background-color: #34383c;
  --select2-default-results-selected-option-color: #e0e1e3;
  --select2-default-results-highlighted-option-background-color: #4c4f56;
  --select2-default-results-highlighted-option-color: #e0e1e3;
  --select2-results-selected-option-background-color: #4c4f56;
  --select2-results-selected-option-color: #e0e1e3;
  --select2-dropdown-background-color: #34383c;
  --select2-dropdown-border-color: #64666a; }

.select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--single,
.select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--multiple {
  background-color: var(--select2-selection-background-color);
  color: var(--select2-selection-color);
  border-color: var(--select2-selection-border-color); }

.select2-container.select2-container--open .select2-selection--single,
.select2-container.select2-container--open .select2-selection--multiple, .select2-container.select2-container--focus .select2-selection--single,
.select2-container.select2-container--focus .select2-selection--multiple {
  border-color: var(--select2-selection-opened-focused-border-color); }

.select2-container.select2-container--default .select2-selection--single .select2-selection__rendered {
  color: var(--select2-single-selection-rendered-color); }

.select2-container--default .select2-selection--single {
  background-color: var(--select2-default-single-selection-background-color);
  border-color: var(--select2-default-single-selection-border-color); }

.select2-container--default .select2-selection--multiple {
  background-color: var(--select2-default-multiple-selection-background-color); }
  .select2-container--default .select2-selection--multiple .select2-selection__choice {
    background-color: var(--select2-default-multiple-selection-choice-background-color);
    color: var(--select2-default-multiple-selection-choice-color);
    border-color: var(--select2-default-multiple-selection-choice-border-color); }
    .select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
      color: var(--select2-default-multiple-selection-choice-remove-color); }
      .select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover {
        color: var(--select2-default-multiple-selection-choice-remove-hover-color); }

.select2-container--default .select2-results__option[aria-selected] {
  background-color: var(--select2-default-results-selected-option-background-color);
  color: var(--select2-default-results-selected-option-color); }

.select2-container--default .select2-results__option--highlighted[aria-selected] {
  background-color: var(--select2-default-results-highlighted-option-background-color);
  color: var(--select2-default-results-highlighted-option-color); }

.select2-container .select2-results__option[aria-selected=true] {
  background-color: var(--select2-results-selected-option-background-color);
  color: var(--select2-results-selected-option-color); }

.select2-container .select2-dropdown {
  background-color: var(--select2-dropdown-background-color);
  border-color: var(--select2-dropdown-border-color); }

.eps-notice {
  --eps-box-notice-color: #a4afb7;
  --eps-box-notice-background-color: #fcfcfc;
  padding: 0.625rem 1rem;
  -webkit-box-shadow: 0 2px 3px 1px var(--color-box-shadow-color);
          box-shadow: 0 2px 3px 1px var(--color-box-shadow-color);
  background-color: var(--eps-box-notice-background-color); }
  .eps-notice--warning {
    -webkit-border-start: 3px solid #fcb92c;
            border-inline-start: 3px solid #fcb92c; }
  .eps-notice__text {
    margin: 0;
    padding: 0;
    color: var(--eps-box-notice-color);
    font-style: italic; }

.eps-theme-dark .eps-notice {
  --eps-box-notice-color: #b4b5b7;
  --eps-box-notice-background-color: #404349; }

.eps-list {
  --eps-list-item-separated-border-color: #f1f3f5;
  padding: 0;
  margin: 0;
  list-style-type: none; }
  .eps-list--padding {
    padding: var(--eps-list-padding); }
  .eps-list__item {
    padding: 0; }
    .eps-list__item--padding {
      padding: var(--eps-list-item-padding); }
  .eps-list--separated .eps-list__item:not(:last-child) {
    border-bottom: 1px solid var(--eps-list-item-separated-border-color); }

.eps-theme-dark .eps-list {
  --eps-list-item-separated-border-color: #34383c; }

:root {
  --popover-background-color: #fff;
  --popover-item-color: #6d7882;
  --popover-item-hover-color: #556068;
  --popover-item-danger-hover-color: #b01b1b;
  --popover-item-background-color: #fff;
  --popover-box-shadow-color: rgba(0, 0, 0, 0.15);
  --popover-box-shadow-size: 0px 1px 20px;
  --popover-arrow-color: #fff; }

.eps-theme-dark {
  --popover-background-color: #4c4f56;
  --popover-item-color: #fff;
  --popover-item-hover-color: #e0e1e3;
  --popover-item-danger-hover-color: #F84343;
  --popover-item-background-color: #4c4f56;
  --popover-box-shadow-color: rgba(0, 0, 0, 0.15);
  --popover-box-shadow-size: 0px 1px 20px;
  --popover-arrow-color: #4c4f56; }

.eps-popover {
  padding: 10px 0;
  background-color: var(--popover-background-color);
  -webkit-box-shadow: var(--popover-box-shadow-size) var(--popover-box-shadow-color);
          box-shadow: var(--popover-box-shadow-size) var(--popover-box-shadow-color);
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  min-width: 120px;
  -webkit-border-radius: 0.1875rem;
          border-radius: 0.1875rem;
  position: absolute;
  z-index: 1050;
  margin-top: 9px;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  left: 0.25rem; }
  .eps-popover__background {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1030; }
  .eps-popover__container {
    position: relative; }
  .eps-popover::before {
    content: "";
    display: block;
    position: absolute;
    width: 16px;
    height: 9px;
    margin: 0 0.1875rem 9px;
    top: -9px;
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    border-color: transparent;
    border-style: solid;
    border-width: 0 8px 9px 8px;
    border-bottom-color: var(--popover-arrow-color); }
  .eps-popover__item {
    padding: 0.3125rem 1rem;
    background-color: var(--popover-item-background-color);
    color: var(--popover-item-color);
    font-size: 0.6875rem;
    font-weight: 500;
    line-height: 0.8125rem;
    width: 100%;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    cursor: pointer; }
    .eps-popover__item:hover {
      color: var(--popover-item-hover-color); }
    .eps-popover__item--danger:hover {
      color: var(--popover-item-danger-hover-color); }
    .eps-popover__item .eps-icon {
      font-size: inherit;
      -webkit-margin-end: 0.3125rem;
              margin-inline-end: 0.3125rem; }

.eps-css-grid {
  display: grid;
  grid-template-columns: repeat(var(--eps-grid-columns, auto-fill), minmax(var(--eps-grid-col-min-width, 1fr), var(--eps-grid-col-max-width, 1fr)));
  grid-gap: var(--eps-grid-spacing); }

.eps-box {
  --eps-box-background-color: #fff;
  --eps-box-color: #495157;
  --eps-box-input-color: #495157;
  padding: 0;
  -webkit-border-radius: 0.1875rem;
          border-radius: 0.1875rem;
  background-color: var(--eps-box-background-color);
  color: var(--eps-box-color); }
  .eps-box--padding {
    padding: var(--eps-box-padding); }
  .eps-box > input {
    width: 100%;
    outline: 0;
    border: 0;
    background-color: var(--eps-box-background-color);
    color: var(--eps-box-input-color); }

.eps-theme-dark .eps-box {
  --eps-box-background-color: #404349;
  --eps-box-color: #e0e1e3;
  --eps-box-input-color: #e0e1e3; }

:root {
  --checkbox-border-color: #d5dadf;
  --checkbox-hover-border-color: #c7cdd4;
  --checkbox-active-border-color: #e3e7ea;
  --checkbox-background-color: #fff;
  --checkbox-checked-background-color: #39b54a;
  --checkbox-checked-hover-background-color: #33a242;
  --checkbox-checked-active-background-color: #44c455;
  --checkbox-indicator-color: #fff; }

.eps-theme-dark {
  --checkbox-background-color: transparent; }

.eps-checkbox {
  -webkit-appearance: none;
  -webkit-border-radius: 0.1875rem;
          border-radius: 0.1875rem;
  width: 15px;
  height: 15px;
  outline: 0;
  background-color: var(--checkbox-background-color);
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid var(--checkbox-border-color); }
  .eps-checkbox::after {
    display: inline-block;
    margin-bottom: 12.5%;
    content: " ";
    width: 3px;
    height: 6px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg); }
  .eps-checkbox:hover {
    --checkbox-border-color: var(--checkbox-hover-border-color); }
  .eps-checkbox:active {
    --checkbox-border-color: var(--checkbox-active-border-color); }
  .eps-checkbox:checked {
    --checkbox-background-color: var(--checkbox-checked-background-color);
    --checkbox-border-color: var(--checkbox-checked-background-color); }
    .eps-checkbox:checked::after {
      border: solid #fff;
      border-width: 0 1px 1px 0; }
    .eps-checkbox:checked:hover {
      --checkbox-background-color: var(--checkbox-checked-hover-background-color);
      --checkbox-border-color: var(--checkbox-checked-hover-background-color); }
    .eps-checkbox:checked:active {
      --checkbox-background-color: var(--checkbox-checked-active-background-color);
      --checkbox-border-color: var(--checkbox-checked-active-background-color); }
  .eps-checkbox--rounded {
    -webkit-border-radius: 50%;
            border-radius: 50%; }

:root {
  --e-app-drag-drop-background-color: #fff;
  --e-app-drag-drop-outline-color: #d5dadf; }

.eps-theme-dark {
  --e-app-drag-drop-background-color: #404349;
  --e-app-drag-drop-outline-color: #7d7e82; }

.e-app-drag-drop {
  background-color: var(--e-app-drag-drop-background-color);
  outline: 2px dashed var(--e-app-drag-drop-outline-color);
  outline-offset: -0.75rem;
  margin-bottom: 1.5rem;
  padding: 4.125rem;
  text-align: center; }
  .e-app-drag-drop--drag-over {
    outline-color: #58d0f5; }

.eps-dialog {
  -webkit-border-radius: 3px;
          border-radius: 3px;
  width: 375px; }
  .eps-dialog__close-button {
    position: absolute;
    top: -2.75rem;
    right: -2.75rem;
    margin-top: 0.625rem;
    margin-right: 0.625rem;
    z-index: 1040;
    font-size: 1.25rem;
    color: #fff; }
  .eps-dialog__content {
    padding: 1.5rem 1.875rem 1rem;
    font-size: 0.75rem; }
  .eps-dialog__title, .eps-dialog__text {
    text-align: center; }
  .eps-dialog__buttons {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .eps-dialog__button {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    border-top: 1px solid var(--hr-color);
    line-height: 2.75rem;
    text-align: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .eps-dialog__button:last-child:not(:first-child) {
      -webkit-border-start: 1px solid var(--hr-color);
              border-inline-start: 1px solid var(--hr-color); }

.eps-inline-link {
  color: var(--eps-inline-link-color);
  background-color: initial;
  border: 0;
  padding: 0; }
  .eps-inline-link--color-primary {
    --eps-inline-link-color: #39b54a; }
  .eps-inline-link--color-secondary {
    --eps-inline-link-color: #c2cbd2; }
  .eps-inline-link--color-danger {
    --eps-inline-link-color: #b01b1b; }
  .eps-inline-link--color-cta {
    --eps-inline-link-color: #93003F; }
  .eps-inline-link--color-link {
    --eps-inline-link-color: #58d0f5; }
  .eps-inline-link--color-disabled {
    --eps-inline-link-color: #c2cbd2; }
  .eps-inline-link--underline-hover:hover, .eps-inline-link--underline-always, .eps-inline-link--underline-always:hover {
    text-decoration: underline; }
  .eps-inline-link--italic {
    font-style: italic; }
  .eps-inline-link, .eps-inline-link:focus {
    outline: none; }

.eps-text-field {
  --eps-text-field-color: #6d7882;
  --eps-text-field-background-color: #fff;
  --eps-text-field-placeholder-color: #a4afb7;
  --eps-text-field-outlined-border-color: #d5dadf;
  --eps-text-field-outlined-focus-border-color: #c2cbd2;
  width: 100%;
  color: var(--eps-text-field-color);
  background-color: var(--eps-text-field-background-color);
  border: 0;
  outline: none;
  font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }
  .eps-text-field--outlined {
    -webkit-border-radius: 0.1875rem;
            border-radius: 0.1875rem;
    border: 1px solid var(--eps-text-field-outlined-border-color);
    padding: 0.625rem; }
    .eps-text-field--outlined:focus {
      border-color: var(--eps-text-field-outlined-focus-border-color); }
  .eps-text-field::-webkit-input-placeholder {
    color: var(--eps-text-field-placeholder-color);
    font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }
  .eps-text-field::-moz-placeholder {
    color: var(--eps-text-field-placeholder-color);
    font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }
  .eps-text-field::-ms-input-placeholder {
    color: var(--eps-text-field-placeholder-color);
    font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }
  .eps-text-field::placeholder {
    color: var(--eps-text-field-placeholder-color);
    font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }

.eps-theme-dark .eps-text-field {
  --eps-text-field-color: #b4b5b7;
  --eps-text-field-background-color: #34383c;
  --eps-text-field-placeholder-color: #7d7e82;
  --eps-text-field-outlined-border-color: #64666a;
  --eps-text-field-outlined-focus-border-color: #7d7e82; }

.e-app-import-export-content-layout {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 100%; }
  .e-app-import-export-content-layout__container {
    -ms-flex-preferred-size: 1075px;
        flex-basis: 1075px; }

.e-app-export-complete__kit-content-title {
  margin: 2.75rem 0 0.625rem; }

.e-app-export-kit-content {
  --e-app-export-kit-content-title-color: #556068;
  --e-app-export-kit-content-description-color: #6d7882; }
  .e-app-export-kit-content__checkbox {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -webkit-margin-end: 0.75rem;
            margin-inline-end: 0.75rem; }
  .e-app-export-kit-content__title {
    color: var(--e-app-export-kit-content-title-color); }
  .e-app-export-kit-content__description {
    color: var(--e-app-export-kit-content-description-color);
    -webkit-margin-end: 1.25rem;
            margin-inline-end: 1.25rem; }
  .e-app-export-kit-content__notice {
    margin-top: 1rem; }

.eps-theme-dark .e-app-export-kit-content {
  --e-app-export-kit-content-title-color: #e0e1e3;
  --e-app-export-kit-content-description-color: #b4b5b7; }

.e-app-export-complete-kit-data-list {
  --e-app-export-complete-kit-data-border-color: #d5dadf; }
  .e-app-export-complete-kit-data-list__item {
    padding: 0.625rem 0;
    border-bottom: 1px solid var(--e-app-export-complete-kit-data-border-color); }

.eps-theme-dark .e-app-export-complete-kit-data-list {
  --e-app-export-complete-kit-data-border-color: #4c4f56; }

.e-app-import-resolver {
  --e-app-import-resolver-panel-header-background-color: #fff;
  --e-app-import-resolver-panel-body-background-color: rgba(255, 255, 255, 0.5);
  --e-app-import-resolver-conflicts-asset-border-color: #c2cbd2;
  --e-app-import-resolver-conflicts-asset-inactive-color: #a4afb7;
  padding-bottom: 1.25rem; }
  .e-app-import-resolver__notice {
    margin-bottom: 1.25rem; }
  .e-app-import-resolver__panel, .e-app-import-resolver__panel:hover {
    background-color: initial; }
  .e-app-import-resolver__panel-header {
    background-color: var(--e-app-import-resolver-panel-header-background-color); }
  .e-app-import-resolver__panel-body {
    background-color: var(--e-app-import-resolver-panel-body-background-color); }
  .e-app-import-resolver-conflicts__container {
    -webkit-box-shadow: 0 2px 3px 1px var(--color-box-shadow-color);
            box-shadow: 0 2px 3px 1px var(--color-box-shadow-color); }
  .e-app-import-resolver-conflicts__checkbox {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -webkit-margin-end: 0.75rem;
            margin-inline-end: 0.75rem; }
  .e-app-import-resolver-conflicts__title {
    line-height: 1; }
  .e-app-import-resolver-conflicts__asset:not(:first-child) {
    -webkit-border-start: 2px solid var(--e-app-import-resolver-conflicts-asset-border-color);
            border-inline-start: 2px solid var(--e-app-import-resolver-conflicts-asset-border-color);
    -webkit-padding-start: 1rem;
            padding-inline-start: 1rem;
    -webkit-margin-start: 1rem;
            margin-inline-start: 1rem; }
  .e-app-import-resolver-conflicts__asset:not(.active) {
    color: var(--e-app-import-resolver-conflicts-asset-inactive-color); }
  .e-app-import-resolver-conflicts__edit-template {
    -webkit-margin-start: 0.3125rem;
            margin-inline-start: 0.3125rem; }

.eps-theme-dark .e-app-import-resolver {
  --e-app-import-resolver-panel-header-background-color: #4c4f56;
  --e-app-import-resolver-panel-body-background-color: rgba(0, 0, 0, 0.05);
  --e-app-import-resolver-conflicts-asset-border-color: #64666a;
  --e-app-import-resolver-conflicts-asset-inactive-color: #7d7e82; }

.e-app-import-export-panel {
  --e-app-import-export-panel-header-background-color: #fff;
  --e-app-import-export-panel-body-background-color: rgba(255, 255, 255, 0.5); }
  .e-app-import-export-panel, .e-app-import-export-panel:hover {
    background-color: initial; }
  .e-app-import-export-panel__header {
    background-color: var(--e-app-import-export-panel-header-background-color);
    -webkit-border-radius: 0.1875rem;
            border-radius: 0.1875rem; }
  .e-app-import-export-panel__body {
    background-color: var(--e-app-import-export-panel-body-background-color);
    -webkit-border-radius: 0 0 0.1875rem 0.1875rem;
            border-radius: 0 0 0.1875rem 0.1875rem; }

.eps-theme-dark .e-app-import-export-panel {
  --e-app-import-export-panel-header-background-color: #404349;
  --e-app-import-export-panel-body-background-color: rgba(64, 67, 73, 0.5); }

.e-app-export-kit {
  padding-bottom: 1.25rem; }
  .e-app-export-kit-information {
    margin-top: 1.25rem; }
    .e-app-export-kit-information__field-header {
      margin-bottom: 0.625rem; }
    .e-app-export-kit-information__label {
      margin: 0; }
    .e-app-export-kit-information__info-icon {
      -webkit-margin-start: 0.625rem;
              margin-inline-start: 0.625rem; }
  .e-app-export-kit-info-modal__icon {
    -webkit-padding-start: 0.625rem;
            padding-inline-start: 0.625rem; }
  .e-app-export-kit-info-modal__heading {
    margin-bottom: 1.25rem; }

.e-app-import-export-info-modal__section:not(:first-child) {
  margin-top: 1.875rem; }

.e-app-import-export-info-modal__heading {
  margin-bottom: 1.25rem; }

:root {
  --eps-badge-background-color: #fff; }

.eps-theme-dark {
  --eps-badge-background-color: #404349; }

.eps-badge {
  display: inline-block;
  background: var(--eps-badge-background-color);
  padding: 0 0.5rem;
  line-height: 1.8;
  -webkit-box-shadow: 0 3px 6px var(--color-box-shadow-color);
          box-shadow: 0 3px 6px var(--color-box-shadow-color);
  -webkit-border-radius: 4px;
          border-radius: 4px;
  font-size: 0.75rem; }
  .eps-badge--sm {
    font-size: 0.625rem;
    -webkit-border-radius: 3px;
            border-radius: 3px;
    padding: 0 0.3125rem;
    line-height: 1.5; }

.eps-collapse__title {
  cursor: pointer;
  padding: 0.3125rem 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 100%;
  background: transparent;
  border: none;
  color: inherit; }
  .eps-collapse__title:focus {
    outline: none; }

.eps-collapse__icon {
  -webkit-transition: all 150ms;
  -o-transition: all 150ms;
  transition: all 150ms;
  -webkit-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
          transform: rotate(180deg); }

.eps-collapse__content {
  margin-top: 0.625rem;
  display: none; }

.eps-collapse[data-open] .eps-collapse__content {
  display: block; }

.eps-collapse[data-open] .eps-collapse__icon {
  -webkit-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
          transform: rotate(90deg); }

.e-kit-library-bottom-promotion {
  --e-kit-library-bottom-promotion-color: tints(600); }

.eps-theme-dark .e-kit-library-bottom-promotion {
  --e-kit-library-bottom-promotion-color: dark-tints(400); }

.e-kit-library-bottom-promotion {
  width: 100%;
  text-align: center;
  margin-top: 1.875rem;
  color: var(--e-kit-library-bottom-promotion-color); }

.e-kit-library__error-screen {
  margin-top: 2.75rem; }
  .e-kit-library__error-screen-title {
    margin-top: 2.75rem;
    margin-bottom: 0; }
  .e-kit-library__error-screen-description {
    margin-top: 1.5rem;
    color: #a4afb7;
    text-align: center;
    max-width: 520px; }

.e-kit-library__kit-favorite-actions {
  padding: 0.3125rem;
  -webkit-transition: 0.3s all;
  -o-transition: 0.3s all;
  transition: 0.3s all;
  -webkit-border-radius: 4px;
          border-radius: 4px; }
  .e-kit-library__kit-favorite-actions--active {
    color: #b01b1b; }
  .e-kit-library__kit-favorite-actions--loading {
    opacity: 50%;
    cursor: default; }
  .e-kit-library__kit-favorite-actions:hover {
    background-color: rgba(176, 27, 27, 0.1); }

.e-kit-library__filter-indication {
  margin-top: 1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .e-kit-library__filter-indication-text {
    margin-bottom: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .e-kit-library__filter-indication-badge {
    margin-right: 0.3125rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .e-kit-library__filter-indication-badge-remove {
    margin-right: 0.3125rem;
    font-size: 0.875rem; }
  .e-kit-library__filter-indication-button {
    margin-right: 1.5rem; }

#eps-app-header-btn-apply,
#eps-app-header-btn-promotion,
#eps-app-header-btn-connect {
  margin-right: 0.625rem;
  margin-left: 0.625rem; }

.e-kit-library__apply-button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.3125rem; }

.e-kit-library__kit-item {
  --e-kit-library-kit-item-overlay-promotion-button-background-color: #fcfcfc; }

.eps-theme-dark .e-kit-library__kit-item {
  --e-kit-library-kit-item-overlay-promotion-button-background-color: #404349; }

.e-kit-library__kit-item-overlay {
  height: 100%; }
  .e-kit-library__kit-item-overlay > *:first-child {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1; }

.e-kit-library__kit-item-overlay-overview-button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: white;
  height: 100%;
  width: 100%; }
  .e-kit-library__kit-item-overlay-overview-button > i {
    font-size: 2rem;
    margin-bottom: 5px; }
  .e-kit-library__kit-item-overlay-overview-button > span {
    font-size: 0.9rem; }

.e-kit-library__kit-item-overlay-promotion-button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  background: white;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 10px;
  font-size: 13px;
  color: #93003F;
  background: var(--e-kit-library-kit-item-overlay-promotion-button-background-color); }
  .e-kit-library__kit-item-overlay-promotion-button > * {
    margin: 0 3px; }

.e-kit-library__kit-item-subscription-plan-badge {
  position: absolute;
  top: 0;
  right: 0;
  margin: 0.3125rem;
  color: #fff;
  text-transform: uppercase; }

:root {
  --e-kit-library-header-back-border: 1px solid #f1f3f5;
  --e-kit-library-header-back-color: #a4afb7; }

.eps-theme-dark {
  --e-kit-library-header-back-border: 1px solid #64666a;
  --e-kit-library-header-back-color: #b4b5b7; }

.e-kit-library__header-back {
  color: var(--e-kit-library-header-back-color);
  padding-left: 1.25rem;
  padding-right: 0.3125rem;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100%;
  border-left: var(--e-kit-library-header-back-border); }
  .e-kit-library__header-back-container {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    height: 100%; }
  .e-kit-library__header-back .eps-icon {
    -webkit-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
            transform: rotate(180deg); }

.e-kit-library__page-loader {
  width: 100%;
  height: 100%;
  display: grid;
  place-items: center;
  font-size: 1.85rem;
  color: #a4afb7; }

.eps-search-input {
  --eps-search-input-background-color: #fcfcfc;
  --eps-search-input-background-color-focus: #fff;
  --eps-search-input-color: #556068;
  --eps-search-input-placeholder-color: #a4afb7; }

.eps-theme-dark .eps-search-input {
  --eps-search-input-background-color: #404349;
  --eps-search-input-background-color-focus: #4c4f56;
  --eps-search-input-color: #b4b5b7;
  --eps-search-input-placeholder-color: #b4b5b7; }

.eps-search-input {
  width: 100%;
  font-size: 0.9375rem;
  padding: 0.625rem 2.75rem;
  border: none;
  background: var(--eps-search-input-background-color);
  outline: none;
  color: var(--eps-search-input-color);
  line-height: 1;
  height: 2.75rem; }
  .eps-search-input--sm {
    font-size: 0.8125rem;
    padding: 0.5rem 1.875rem; }
  .eps-search-input:focus {
    background: var(--eps-search-input-background-color-focus); }
  .eps-search-input::-webkit-input-placeholder {
    color: var(--eps-search-input-placeholder-color);
    font-style: italic; }
  .eps-search-input::-moz-placeholder {
    color: var(--eps-search-input-placeholder-color);
    font-style: italic; }
  .eps-search-input::-ms-input-placeholder {
    color: var(--eps-search-input-placeholder-color);
    font-style: italic; }
  .eps-search-input::placeholder {
    color: var(--eps-search-input-placeholder-color);
    font-style: italic; }
  .eps-search-input__container {
    position: relative; }
  .eps-search-input__icon {
    font-size: 1.25rem;
    padding: 0.625rem;
    color: #a4afb7;
    position: absolute;
    top: 0;
    inset-inline-start: 0;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .eps-search-input__icon--sm {
      font-size: 0.75rem; }
  .eps-search-input__clear-icon {
    font-size: 0.875rem;
    padding: 0.625rem;
    color: #a4afb7;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .eps-search-input__clear-icon--sm {
      font-size: 0.6875rem; }

:root {
  --eps-sort-select-select-background-color: #fcfcfc;
  --eps-sort-select-select-color: #556068;
  --eps-sort-select-button-background-color: #fcfcfc;
  --eps-sort-select-button-border: 1px solid #f1f3f5; }

.eps-theme-dark {
  --eps-sort-select-select-background-color: #404349;
  --eps-sort-select-select-color: #b4b5b7;
  --eps-sort-select-button-background-color: #404349;
  --eps-sort-select-button-border: 1px solid #26292C; }

.eps-sort-select {
  width: 100%;
  font-size: 0.9375rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  .eps-sort-select__select-wrapper {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    position: relative; }
    .eps-sort-select__select-wrapper::after {
      content: "\e8ad";
      font-family: eicons;
      position: absolute;
      left: 0.625rem;
      top: 0;
      bottom: 0;
      color: #a4afb7;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      pointer-events: none; }
  .eps-sort-select__select {
    width: 100%;
    padding: 0.625rem 0.625rem;
    border: none;
    background: var(--eps-sort-select-select-background-color);
    outline: none;
    color: var(--eps-sort-select-select-color);
    line-height: 1;
    cursor: pointer;
    height: 2.75rem;
    -moz-appearance: none;
         appearance: none;
    -webkit-appearance: none;
    -webkit-border-radius: 0;
            border-radius: 0; }
  .eps-sort-select__button {
    padding: 0.75rem 0.75rem;
    background: var(--eps-sort-select-button-background-color);
    border-right: var(--eps-sort-select-button-border);
    line-height: 1;
    color: #a4afb7; }

.e-kit-library__tags-filter {
  --e-kit-library-tags-filter-list-search-background-color: #fff; }

.eps-theme-dark .e-kit-library__tags-filter {
  --e-kit-library-tags-filter-list-search-background-color: #404349; }

.e-kit-library__tags-filter {
  margin-top: 2.75rem; }
  .e-kit-library__tags-filter-list {
    margin-bottom: 2.75rem; }
    .e-kit-library__tags-filter-list .eps-collapse__title {
      padding-right: 1.875rem;
      padding-left: 1.875rem;
      text-transform: uppercase; }
    .e-kit-library__tags-filter-list .eps-collapse__content {
      margin: 0.3125rem 1.875rem; }
  .e-kit-library__tags-filter-list-container {
    max-height: 250px;
    overflow: auto; }
  .e-kit-library__tags-filter-list-search {
    margin-bottom: 0.625rem; }
    .e-kit-library__tags-filter-list-search .eps-search-input {
      background: var(--e-kit-library-tags-filter-list-search-background-color); }
  .e-kit-library__tags-filter-list-item {
    padding: 0.625rem 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-weight: 500; }
    .e-kit-library__tags-filter-list-item input {
      margin-left: 0.3125rem; }

.e-kit-library #eps-app-header-btn-refetch {
  padding: 0; }

.e-kit-library-header-info-modal-container {
  margin-bottom: 2.75rem; }

.e-kit-library__index-layout-container {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  overflow-y: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }

.e-kit-library__index-layout-top-area {
  padding: 1.875rem 2.75rem;
  position: -webkit-sticky;
  position: sticky;
  top: -1px;
  width: 100%;
  z-index: 2;
  background-color: var(--app-background-color);
  gap: 1.5rem; }
  .e-kit-library__index-layout-top-area-search, .e-kit-library__index-layout-top-area-sort {
    min-width: 265px; }
  .e-kit-library__index-layout-top-area-search {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1; }

.e-kit-library__index-layout-main {
  padding-top: 0;
  padding-bottom: 1.5rem;
  overflow-y: hidden;
  height: auto;
  -webkit-box-flex: 1;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }

.e-kit-library__tags-filter {
  --e-kit-library-item-sidebar-header-title-color: #6d7882;
  --e-kit-library-item-sidebar-description-color: #6d7882;
  --e-kit-library-item-information-text-color: #6d7882; }

.eps-theme-dark .e-kit-library__tags-filter {
  --e-kit-library-item-sidebar-header-title-color: #b4b5b7;
  --e-kit-library-item-sidebar-description-color: #b4b5b7;
  --e-kit-library-item-information-text-color: #b4b5b7; }

.e-kit-library__item-sidebar {
  padding: 1.5rem 1.875rem; }

.e-kit-library__item-sidebar-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }

.e-kit-library__item-sidebar-header-title {
  color: var(--e-kit-library-item-sidebar-header-title-color);
  margin-bottom: 0; }

.e-kit-library__item-sidebar-thumbnail {
  margin-top: 1.5rem;
  -webkit-box-shadow: 0 4px 10px var(--color-box-shadow-color);
          box-shadow: 0 4px 10px var(--color-box-shadow-color); }

.e-kit-library__item-sidebar-description {
  margin-top: 1.5rem;
  color: var(--e-kit-library-item-sidebar-description-color); }

.e-kit-library__item-sidebar-collapse-tags {
  margin-top: 2.75rem; }

.e-kit-library__item-sidebar-collapse-info {
  margin-top: 1.875rem; }

.e-kit-library__item-sidebar-tags-container {
  gap: 0.625rem; }

.e-kit-library__item-information-text {
  font-size: 0.8125rem;
  color: var(--e-kit-library-item-information-text-color);
  margin-bottom: 0.3125rem; }

.e-kit-library {
  --e-kit-library-content-overview-group-title-color: #6d7882; }

.eps-theme-dark .e-kit-library {
  --e-kit-library-content-overview-group-title-color: #b4b5b7; }

.e-kit-library__content-overview-group-item {
  margin-bottom: 2.75rem; }

.e-kit-library__content-overview-group-title {
  margin-bottom: 1.875rem;
  color: var(--e-kit-library-content-overview-group-title-color); }

.e-kit-library__preview-responsive-controls {
  width: auto; }
  .e-kit-library__preview-responsive-controls-item {
    margin: 0 0.3125rem;
    color: #a4afb7;
    padding: 0.3125rem; }
    .e-kit-library__preview-responsive-controls-item:hover {
      background: rgba(88, 208, 245, 0.1);
      -webkit-border-radius: 3px;
              border-radius: 3px;
      -webkit-transition: all 0.3s;
      -o-transition: all 0.3s;
      transition: all 0.3s; }
    .e-kit-library__preview-responsive-controls-item--active {
      color: #58d0f5; }

.e-kit-library__preview-loader {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0; }

.e-kit-library__preview-iframe {
  border: none;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  -webkit-box-shadow: 0 4px 10px var(--color-box-shadow-color);
          box-shadow: 0 4px 10px var(--color-box-shadow-color); }

.e-kit-library__preview-iframe-container {
  overflow-y: auto;
  position: relative;
  z-index: 1; }

.e-app-collapse {
  --e-app-collapse-icon-color: #6d7882; }
  .e-app-collapse-toggle {
    position: relative; }
    .e-app-collapse-toggle--active {
      cursor: pointer; }
    .e-app-collapse-toggle__icon {
      color: var(--e-app-collapse-icon-color);
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      font-size: 0.875rem;
      position: absolute;
      top: 50%;
      right: var(--e-app-collapse-toggle-icon-spacing);
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%); }
      .e-app-collapse-toggle__icon:before {
        -webkit-transition: all 0.2s linear;
        -o-transition: all 0.2s linear;
        transition: all 0.2s linear; }
  .e-app-collapse-content {
    display: none; }
  .e-app-collapse--opened .e-app-collapse-toggle__icon:before {
    -webkit-transform: rotate(-180deg);
        -ms-transform: rotate(-180deg);
            transform: rotate(-180deg); }
  .e-app-collapse--opened .e-app-collapse-content {
    display: block; }

[dir="rtl"] .e-app-collapse-toggle__icon {
  right: initial;
  left: var(--e-app-collapse-toggle-icon-spacing); }

.eps-theme-dark .e-app-collapse {
  --e-app-collapse-icon-color: #b4b5b7; }
/*# sourceMappingURL=app-rtl.css.map */assets/css/frontend-legacy-rtl.min.css000064400000007416151327220410014017 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-bc-flex-widget .elementor-section-content-top>.elementor-container>.elementor-row>.elementor-column>.elementor-column-wrap{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.elementor-bc-flex-widget .elementor-section-content-middle>.elementor-container>.elementor-row>.elementor-column>.elementor-column-wrap{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-bc-flex-widget .elementor-section-content-bottom>.elementor-container>.elementor-row>.elementor-column>.elementor-column-wrap{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.elementor-column-gap-narrow>.elementor-row>.elementor-column>.elementor-element-populated{padding:5px}.elementor-column-gap-default>.elementor-row>.elementor-column>.elementor-element-populated{padding:10px}.elementor-column-gap-extended>.elementor-row>.elementor-column>.elementor-element-populated{padding:15px}.elementor-column-gap-wide>.elementor-row>.elementor-column>.elementor-element-populated{padding:20px}.elementor-column-gap-wider>.elementor-row>.elementor-column>.elementor-element-populated{padding:30px}@media (min-width:768px) and (max-width:1024px){.elementor-reverse-tablet>.elementor-container>.elementor-row>:first-child{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(2){-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(3){-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(4){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(5){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(6){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(7){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(8){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(9){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.elementor-reverse-tablet>.elementor-container>.elementor-row>:nth-child(10){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}}@media (max-width:767px){.elementor-reverse-mobile>.elementor-container>.elementor-row>:first-child{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(2){-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(3){-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(4){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(5){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(6){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(7){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(8){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(9){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.elementor-reverse-mobile>.elementor-container>.elementor-row>:nth-child(10){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.elementor-column{width:100%}}assets/css/widget-testimonial.min.css000064400000003243151327220410013742 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-testimonial-wrapper{overflow:hidden;text-align:center}.elementor-testimonial-wrapper .elementor-testimonial-content{font-size:1.3em;margin-bottom:20px}.elementor-testimonial-wrapper .elementor-testimonial-name{line-height:1.5;display:block}.elementor-testimonial-wrapper .elementor-testimonial-job{font-size:.85em;display:block}.elementor-testimonial-wrapper .elementor-testimonial-meta{width:100%;line-height:1}.elementor-testimonial-wrapper .elementor-testimonial-meta-inner{display:inline-block}.elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-details,.elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-image{display:table-cell;vertical-align:middle}.elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-image img{width:60px;height:60px;-webkit-border-radius:50%;border-radius:50%;-o-object-fit:cover;object-fit:cover;max-width:none}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-aside .elementor-testimonial-image{padding-right:15px}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-aside .elementor-testimonial-details{text-align:left}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-details,.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-image{display:block}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-image{margin-bottom:20px}assets/css/admin-top-bar-rtl.css000064400000013712151327220410012602 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
#e-dashboard-widget-admin-top-bar {
  position: absolute;
  opacity: 0;
  pointer-events: none; }

#e-admin-top-bar-root {
  left: 0;
  background: #ffffff;
  -webkit-box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.0394871);
          box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.0394871);
  display: none;
  position: absolute;
  top: 0;
  width: calc(100% - 160px);
  z-index: 1; }
  #e-admin-top-bar-root .e-admin-top-bar {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 50px;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 0 16px; }
  #e-admin-top-bar-root .page-title-action {
    background: #f7f7f7;
    border: 1px solid #0275d8;
    -webkit-border-radius: 3px;
            border-radius: 3px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    color: #0275d8;
    cursor: pointer;
    display: inline-block;
    line-height: 30px;
    margin: 0 4px;
    min-height: 30px;
    padding: 0 10px;
    text-decoration: none; }
    #e-admin-top-bar-root .page-title-action:hover {
      background: #eceeef;
      border-color: #1b607f;
      color: #1b607f; }
  #e-admin-top-bar-root .e-admin-top-bar__heading {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-margin-end: 40px;
            margin-inline-end: 40px; }
  #e-admin-top-bar-root .e-admin-top-bar__main-area {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    #e-admin-top-bar-root .e-admin-top-bar__main-area button {
      margin: 0 4px; }
  #e-admin-top-bar-root .e-admin-top-bar__secondary-area {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  #e-admin-top-bar-root .e-admin-top-bar__heading-logo {
    width: 30px; }
  #e-admin-top-bar-root .e-admin-top-bar__heading-logo {
    background: #93003c;
    -webkit-border-radius: 15px;
            border-radius: 15px;
    color: #ffffff;
    display: inline-block;
    font-size: 0.875rem;
    height: 1.875rem;
    line-height: 1.875rem;
    text-align: center;
    width: 1.875rem; }
  #e-admin-top-bar-root .e-admin-top-bar__heading-title {
    color: #495157;
    font-size: 15px;
    font-weight: 700;
    font-family: 'Roboto', Arial, Helvetica, Verdana, sans-serif;
    padding: 0 8px;
    line-height: normal;
    text-transform: uppercase; }
  #e-admin-top-bar-root.e-admin-top-bar--active {
    display: block; }
    #e-admin-top-bar-root.e-admin-top-bar--active ~ #wpbody #wpbody-content {
      margin-top: 50px; }
    #e-admin-top-bar-root.e-admin-top-bar--active ~ #wpbody .wrap {
      clear: both;
      padding-top: 10px; }
      #e-admin-top-bar-root.e-admin-top-bar--active ~ #wpbody .wrap h1 {
        display: none; }
  #e-admin-top-bar-root:not(.e-admin-top-bar--active) ~ #wpbody .wrap h1, #e-admin-top-bar-root:not(.e-admin-top-bar--active) ~ #wpbody .wrap .page-title-action {
    display: inline-block; }
  #e-admin-top-bar-root .e-admin-top-bar__bar-button {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    cursor: pointer;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin: 0 10px;
    text-decoration: none;
    color: #6d7882; }
    #e-admin-top-bar-root .e-admin-top-bar__bar-button .e-admin-top-bar__bar-button-title {
      color: #6d7882; }
    #e-admin-top-bar-root .e-admin-top-bar__bar-button .e-admin-top-bar__bar-button-icon {
      margin: 0 4px; }
    #e-admin-top-bar-root .e-admin-top-bar__bar-button:hover .e-admin-top-bar__bar-button-title,
    #e-admin-top-bar-root .e-admin-top-bar__bar-button:hover .e-admin-top-bar__bar-button-icon {
      color: #93003c; }
  #e-admin-top-bar-root .e-admin-top-bar__bar-button-title {
    font-size: 13px;
    font-weight: 500;
    font-family: 'Roboto';
    margin: 0 4px;
    line-height: normal; }
  #e-admin-top-bar-root ~ #wpbody .wrap h1, #e-admin-top-bar-root ~ #wpbody .wrap .page-title-action {
    display: none; }

@media screen and (max-width: 960px) {
  #e-admin-top-bar-root {
    width: calc(100% - 36px); } }

@media screen and (max-width: 782px) {
  #e-admin-top-bar-root {
    width: 100%; } }

@media screen and (max-width: 600px) {
  #e-admin-top-bar-root {
    top: 46px; } }

@media (max-width: 768px) {
  #e-admin-top-bar-root {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    #e-admin-top-bar-root .e-admin-top-bar__main-area-buttons {
      position: absolute;
      top: calc(100% + 10px); }
    #e-admin-top-bar-root .e-admin-top-bar__secondary-area .e-admin-top-bar__secondary-area-buttons {
      display: none; }
    #e-admin-top-bar-root .e-admin-top-bar__secondary-area > .e-admin-top-bar__bar-button .e-admin-top-bar__bar-button-title {
      display: none; } }

@media (min-width: 768px) {
  #e-admin-top-bar-root .e-admin-top-bar__secondary-area .e-admin-top-bar__secondary-area-buttons {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; } }
/*# sourceMappingURL=admin-top-bar-rtl.css.map */assets/css/widget-image-rtl.min.css000064400000000375151327220410013276 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-widget-image{text-align:center}.elementor-widget-image a{display:inline-block}.elementor-widget-image a img[src$=".svg"]{width:48px}.elementor-widget-image img{vertical-align:middle;display:inline-block}assets/css/common-rtl.css000064400000036451151327220410011445 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.dialog-widget-content {
  background-color: #fff;
  position: absolute;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  -webkit-box-shadow: 2px 8px 23px 3px rgba(0, 0, 0, 0.2);
          box-shadow: 2px 8px 23px 3px rgba(0, 0, 0, 0.2);
  overflow: hidden; }

.dialog-message {
  font-size: 12px;
  line-height: 1.5;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

.dialog-type-lightbox {
  position: fixed;
  height: 100%;
  width: 100%;
  bottom: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 9999;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none; }
  .dialog-type-lightbox .dialog-widget-content {
    margin: auto;
    width: 375px; }
  .dialog-type-lightbox .dialog-header {
    font-size: 15px;
    color: #495157;
    padding: 30px 0 10px;
    font-weight: 500; }
  .dialog-type-lightbox .dialog-message {
    padding: 0 30px 30px;
    min-height: 50px; }
  .dialog-type-lightbox:not(.elementor-popup-modal) .dialog-header,
  .dialog-type-lightbox:not(.elementor-popup-modal) .dialog-message {
    text-align: center; }
  .dialog-type-lightbox .dialog-buttons-wrapper {
    border-top: 1px solid #e6e9ec;
    text-align: center; }
    .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button {
      font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
      width: 50%;
      border: none;
      background: none;
      color: #6d7882;
      font-size: 15px;
      cursor: pointer;
      padding: 13px 0;
      outline: 0; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button:hover {
        background-color: #f4f6f7; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button.dialog-ok {
        color: #b01b1b; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button.dialog-take_over {
        color: #39b54a; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button:active {
        background-color: rgba(230, 233, 236, 0.5); }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button::-moz-focus-inner {
        border: 0; }

.dialog-close-button {
  cursor: pointer;
  position: absolute;
  margin-top: 15px;
  left: 15px;
  font-size: 15px;
  line-height: 1; }
  .dialog-close-button:not(:hover) {
    opacity: .4; }

.dialog-alert-widget .dialog-buttons-wrapper > button {
  width: 100%; }

.dialog-confirm-widget .dialog-button:first-child {
  border-left: 1px solid #e6e9ec; }

.dialog-prevent-scroll {
  overflow: hidden;
  max-height: 100vh; }

@media (min-width: 1024px) {
  body.admin-bar .dialog-lightbox-widget {
    height: calc(100vh - 32px); } }

@media (max-width: 1024px) {
  body.admin-bar .dialog-type-lightbox {
    position: -webkit-sticky;
    position: sticky;
    height: 100vh; } }

.elementor-aspect-ratio-219 .elementor-fit-aspect-ratio {
  padding-bottom: 42.8571%; }

.elementor-aspect-ratio-169 .elementor-fit-aspect-ratio {
  padding-bottom: 56.25%; }

.elementor-aspect-ratio-43 .elementor-fit-aspect-ratio {
  padding-bottom: 75%; }

.elementor-aspect-ratio-32 .elementor-fit-aspect-ratio {
  padding-bottom: 66.6666%; }

.elementor-aspect-ratio-11 .elementor-fit-aspect-ratio {
  padding-bottom: 100%; }

.elementor-aspect-ratio-916 .elementor-fit-aspect-ratio {
  padding-bottom: 177.8%; }

.elementor-fit-aspect-ratio {
  position: relative;
  height: 0; }
  .elementor-fit-aspect-ratio iframe {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    border: 0;
    background-color: #000; }
  .elementor-fit-aspect-ratio video {
    width: 100%; }

.flatpickr-calendar {
  width: 280px; }
  .flatpickr-calendar .flatpickr-current-month span.cur-month {
    font-weight: 300; }
  .flatpickr-calendar .dayContainer {
    width: 280px;
    min-width: 280px;
    max-width: 280px; }
  .flatpickr-calendar .flatpickr-days {
    width: 280px; }
  .flatpickr-calendar .flatpickr-day {
    max-width: 37px;
    height: 37px;
    line-height: 37px; }

.elementor-templates-modal .dialog-widget-content {
  font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
  background-color: #f1f3f5;
  width: 100%; }
  @media (max-width: 1439px) {
    .elementor-templates-modal .dialog-widget-content {
      max-width: 990px; } }
  @media (min-width: 1440px) {
    .elementor-templates-modal .dialog-widget-content {
      max-width: 1200px; } }

.elementor-templates-modal .dialog-header {
  padding: 0;
  background-color: #fff;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
  position: relative;
  z-index: 1; }

.elementor-templates-modal .dialog-buttons-wrapper {
  background-color: #fff;
  border: none;
  display: none;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  padding: 5px;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
  position: relative; }
  .elementor-templates-modal .dialog-buttons-wrapper .elementor-button {
    height: 40px;
    margin-right: 5px; }
    .elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success {
      padding: 12px 36px;
      color: #fff;
      width: initial;
      font-size: 15px; }
      .elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success:hover {
        background-color: #39b54a; }

.elementor-templates-modal .dialog-message {
  height: 750px;
  max-height: 85vh;
  overflow: auto;
  padding-top: 25px; }

.elementor-templates-modal .dialog-content {
  height: 100%; }

.elementor-templates-modal .dialog-loading {
  display: none; }

.elementor-templates-modal__header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  height: 50px; }
  .elementor-templates-modal__header__logo {
    line-height: 1;
    text-transform: uppercase;
    font-weight: bold;
    cursor: pointer; }
    .elementor-templates-modal__header__logo-area {
      text-align: right;
      padding-right: 15px; }
      .elementor-templates-modal__header__logo-area > * {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center; }
    .elementor-templates-modal__header__logo__icon-wrapper {
      margin-left: 10px;
      font-size: 12px; }
    .elementor-templates-modal__header__logo__title {
      padding-top: 2px; }
  .elementor-templates-modal__header__items-area {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .elementor-templates-modal__header__item {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-sizing: content-box;
            box-sizing: content-box; }
    .elementor-templates-modal__header__item > i {
      font-size: 20px;
      -webkit-transition: all 0.3s;
      -o-transition: all 0.3s;
      transition: all 0.3s;
      cursor: pointer; }
      .elementor-templates-modal__header__item > i:not(:hover) {
        color: #a4afb7; }
  .elementor-templates-modal__header__close--normal {
    width: 47px;
    border-right: 1px solid #e6e9ec; }
    .elementor-templates-modal__header__close--normal i {
      font-size: 18px; }
  .elementor-templates-modal__header__close--skip {
    padding: 10px;
    padding-right: 20px;
    margin-left: 10px;
    color: #fff;
    background-color: #a4afb7;
    font-size: 11px;
    font-weight: normal;
    line-height: 1;
    text-transform: uppercase;
    -webkit-border-radius: 2px;
            border-radius: 2px;
    cursor: pointer; }
    .elementor-templates-modal__header__close--skip > i {
      font-size: inherit;
      padding-right: 10px;
      margin-right: 15px;
      border-right: 1px solid; }
      .elementor-templates-modal__header__close--skip > i:not(:hover) {
        color: #fff; }

.elementor-templates-modal__sidebar {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 25%;
  background-color: rgba(255, 255, 255, 0.3); }

.elementor-templates-modal__content {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-box-shadow: 0 0 13px inset rgba(0, 0, 0, 0.05);
          box-shadow: 0 0 13px inset rgba(0, 0, 0, 0.05); }

/* Will select next element after last '.elementor-general-section' */
#wpadminbar #wp-admin-bar-elementor_edit_page .elementor-general-section + .elementor-second-section {
  border-top: 1px solid #464b50;
  margin-top: 6px; }

.elementor-hidden {
  display: none; }

.elementor-screen-only,
.screen-reader-text,
.screen-reader-text span,
.ui-helper-hidden-accessible {
  position: absolute;
  top: -10000em;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0; }

.elementor-clearfix:after {
  content: '';
  display: block;
  clear: both;
  width: 0;
  height: 0; }

.e-logo-wrapper {
  background: #93003c;
  display: inline-block;
  padding: 0.75em;
  -webkit-border-radius: 50%;
          border-radius: 50%;
  line-height: 1; }
  .e-logo-wrapper i {
    color: #fff;
    font-size: 1em; }

#elementor-finder__modal {
  background: none;
  z-index: 99999; }
  #elementor-finder__modal .dialog-widget-content {
    width: 650px;
    max-width: 98%;
    top: 18vh;
    left: calc( 50% - 650px / 2); }
  #elementor-finder__modal .dialog-message {
    height: initial;
    min-height: 0;
    padding: 0;
    text-align: right; }

#elementor-finder__search {
  padding: 14px 15px 14px 21px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-shadow: 0 -3px 15px 6px rgba(0, 0, 0, 0.03);
          box-shadow: 0 -3px 15px 6px rgba(0, 0, 0, 0.03); }
  #elementor-finder__search i {
    font-size: 16px;
    color: #a4afb7;
    font-weight: bold;
    margin-left: 15px; }
  #elementor-finder__search__input {
    border: none;
    background: none;
    outline: none;
    padding: 0;
    margin: 0;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    font-size: 14px;
    color: #495157;
    -webkit-box-shadow: none;
            box-shadow: none; }
    #elementor-finder__search__input::-webkit-input-placeholder {
      color: #a4afb7;
      font-style: italic;
      font-weight: 300; }
    #elementor-finder__search__input::-moz-placeholder {
      color: #a4afb7;
      font-style: italic;
      font-weight: 300; }
    #elementor-finder__search__input::-ms-input-placeholder {
      color: #a4afb7;
      font-style: italic;
      font-weight: 300; }
    #elementor-finder__search__input::placeholder {
      color: #a4afb7;
      font-style: italic;
      font-weight: 300; }

#elementor-finder__results {
  max-height: 50vh;
  overflow: auto; }

#elementor-finder__no-results {
  display: none;
  padding: 20px;
  color: #a4afb7; }

.elementor-finder__results__category {
  position: relative; }
  .elementor-finder__results__category__title {
    padding: 5px 25px;
    color: #6d7882;
    background-color: #e6e9ec;
    font-size: 9px;
    text-transform: uppercase; }
  .elementor-finder__results__category--dynamic .elementor-finder__results__category__items {
    min-height: 26px; }
  .elementor-finder__results__category .eicon-loading {
    display: none;
    position: absolute;
    left: 10px;
    top: 30px;
    color: #71d7f7;
    font-size: 14px; }

.elementor-finder__results__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  .elementor-finder__results__item a {
    text-decoration: none;
    -webkit-box-shadow: none;
            box-shadow: none;
    outline: none; }
  .elementor-finder__results__item.elementor-active {
    background-color: #71d7f7;
    -webkit-box-shadow: none;
            box-shadow: none;
    outline: none; }
    .elementor-finder__results__item.elementor-active * {
      color: #fff; }
  .elementor-finder__results__item:not(.elementor-active) .elementor-finder__results__item__actions {
    display: none; }
  .elementor-finder__results__item__link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: 35px;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }
  .elementor-finder__results__item__icon {
    width: 60px;
    text-align: center;
    color: #6d7882;
    font-size: 17px; }
  .elementor-finder__results__item__title {
    color: #6d7882;
    font-size: 13px; }
  .elementor-finder__results__item__description {
    margin-right: 5px;
    color: #a4afb7;
    font-style: italic; }
  .elementor-finder__results__item__actions {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .elementor-finder__results__item__action {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    height: 100%;
    width: 35px; }
    .elementor-finder__results__item__action:hover {
      background-color: rgba(0, 0, 0, 0.07); }

.tipsy {
  font-size: 10px;
  position: absolute;
  padding: 5px;
  z-index: 100000; }

.tipsy-inner {
  background-color: #000;
  color: #FFF;
  font-weight: 500;
  max-width: 200px;
  padding: 5px 12px;
  text-align: center;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  -webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.5);
          box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.5); }

.tipsy-arrow {
  position: absolute;
  width: 0;
  height: 0;
  line-height: 0;
  border: 5px dashed #000; }

.tipsy-arrow-n {
  border-bottom-color: #000; }

.tipsy-arrow-s {
  border-top-color: #000; }

.tipsy-arrow-e {
  border-left-color: #000; }

.tipsy-arrow-w {
  border-right-color: #000; }

.tipsy-n .tipsy-arrow, .tipsy-nw .tipsy-arrow {
  border-left-color: transparent;
  border-right-color: transparent;
  top: 0;
  border-bottom-style: solid;
  border-top: none; }

.tipsy-n .tipsy-arrow {
  left: 50%;
  margin-left: -5px; }

.tipsy-nw .tipsy-arrow {
  left: 10px; }

.tipsy-ne .tipsy-arrow {
  top: 0;
  right: 10px;
  border-bottom-style: solid;
  border-top: none;
  border-left-color: transparent;
  border-right-color: transparent; }

.tipsy-s .tipsy-arrow, .tipsy-se .tipsy-arrow, .tipsy-sw .tipsy-arrow {
  bottom: 0;
  border-top-style: solid;
  border-bottom: none;
  border-left-color: transparent;
  border-right-color: transparent; }

.tipsy-s .tipsy-arrow {
  left: 50%;
  margin-left: -5px; }

.tipsy-sw .tipsy-arrow {
  left: 10px; }

.tipsy-se .tipsy-arrow {
  right: 10px; }

.tipsy-e .tipsy-arrow, .tipsy-w .tipsy-arrow {
  top: 50%;
  margin-top: -5px;
  border-top-color: transparent;
  border-bottom-color: transparent; }

.tipsy-e .tipsy-arrow {
  right: 0;
  border-left-style: solid;
  border-right: none; }

.tipsy-w .tipsy-arrow {
  left: 0;
  border-right-style: solid;
  border-left: none; }
/*# sourceMappingURL=common-rtl.css.map */assets/css/frontend-legacy.css000064400000011527151327220410012434 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-bc-flex-widget .elementor-section-content-top > .elementor-container > .elementor-row > .elementor-column > .elementor-column-wrap {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; }

.elementor-bc-flex-widget .elementor-section-content-middle > .elementor-container > .elementor-row > .elementor-column > .elementor-column-wrap {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.elementor-bc-flex-widget .elementor-section-content-bottom > .elementor-container > .elementor-row > .elementor-column > .elementor-column-wrap {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end; }

.elementor-column-gap-narrow > .elementor-row > .elementor-column > .elementor-element-populated {
  padding: 5px; }

.elementor-column-gap-default > .elementor-row > .elementor-column > .elementor-element-populated {
  padding: 10px; }

.elementor-column-gap-extended > .elementor-row > .elementor-column > .elementor-element-populated {
  padding: 15px; }

.elementor-column-gap-wide > .elementor-row > .elementor-column > .elementor-element-populated {
  padding: 20px; }

.elementor-column-gap-wider > .elementor-row > .elementor-column > .elementor-element-populated {
  padding: 30px; }

@media (min-width: 768px) and (max-width: 1024px) {
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(1) {
    -webkit-box-ordinal-group: 11;
        -ms-flex-order: 10;
            order: 10; }
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(2) {
    -webkit-box-ordinal-group: 10;
        -ms-flex-order: 9;
            order: 9; }
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(3) {
    -webkit-box-ordinal-group: 9;
        -ms-flex-order: 8;
            order: 8; }
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(4) {
    -webkit-box-ordinal-group: 8;
        -ms-flex-order: 7;
            order: 7; }
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(5) {
    -webkit-box-ordinal-group: 7;
        -ms-flex-order: 6;
            order: 6; }
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(6) {
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5; }
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(7) {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4; }
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(8) {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3; }
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(9) {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2; }
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(10) {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1; } }

@media (max-width: 767px) {
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(1) {
    -webkit-box-ordinal-group: 11;
        -ms-flex-order: 10;
            order: 10; }
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(2) {
    -webkit-box-ordinal-group: 10;
        -ms-flex-order: 9;
            order: 9; }
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(3) {
    -webkit-box-ordinal-group: 9;
        -ms-flex-order: 8;
            order: 8; }
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(4) {
    -webkit-box-ordinal-group: 8;
        -ms-flex-order: 7;
            order: 7; }
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(5) {
    -webkit-box-ordinal-group: 7;
        -ms-flex-order: 6;
            order: 6; }
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(6) {
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5; }
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(7) {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4; }
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(8) {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3; }
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(9) {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2; }
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(10) {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1; }
  .elementor-column {
    width: 100%; } }
/*# sourceMappingURL=frontend-legacy.css.map */assets/css/widget-google_maps.min.css000064400000000243151327220410013703 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-widget-google_maps .elementor-widget-container{overflow:hidden}.elementor-widget-google_maps iframe{height:300px}assets/css/widget-menu-anchor.min.css000064400000000151151327220410013621 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
body.elementor-page .elementor-widget-menu-anchor{margin-bottom:0}assets/css/admin-top-bar.css000064400000013707151327220410012007 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
#e-dashboard-widget-admin-top-bar {
  position: absolute;
  opacity: 0;
  pointer-events: none; }

#e-admin-top-bar-root {
  right: 0;
  background: #ffffff;
  -webkit-box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.0394871);
          box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.0394871);
  display: none;
  position: absolute;
  top: 0;
  width: calc(100% - 160px);
  z-index: 1; }
  #e-admin-top-bar-root .e-admin-top-bar {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 50px;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 0 16px; }
  #e-admin-top-bar-root .page-title-action {
    background: #f7f7f7;
    border: 1px solid #0275d8;
    -webkit-border-radius: 3px;
            border-radius: 3px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    color: #0275d8;
    cursor: pointer;
    display: inline-block;
    line-height: 30px;
    margin: 0 4px;
    min-height: 30px;
    padding: 0 10px;
    text-decoration: none; }
    #e-admin-top-bar-root .page-title-action:hover {
      background: #eceeef;
      border-color: #1b607f;
      color: #1b607f; }
  #e-admin-top-bar-root .e-admin-top-bar__heading {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-margin-end: 40px;
            margin-inline-end: 40px; }
  #e-admin-top-bar-root .e-admin-top-bar__main-area {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    #e-admin-top-bar-root .e-admin-top-bar__main-area button {
      margin: 0 4px; }
  #e-admin-top-bar-root .e-admin-top-bar__secondary-area {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  #e-admin-top-bar-root .e-admin-top-bar__heading-logo {
    width: 30px; }
  #e-admin-top-bar-root .e-admin-top-bar__heading-logo {
    background: #93003c;
    -webkit-border-radius: 15px;
            border-radius: 15px;
    color: #ffffff;
    display: inline-block;
    font-size: 0.875rem;
    height: 1.875rem;
    line-height: 1.875rem;
    text-align: center;
    width: 1.875rem; }
  #e-admin-top-bar-root .e-admin-top-bar__heading-title {
    color: #495157;
    font-size: 15px;
    font-weight: 700;
    font-family: 'Roboto', Arial, Helvetica, Verdana, sans-serif;
    padding: 0 8px;
    line-height: normal;
    text-transform: uppercase; }
  #e-admin-top-bar-root.e-admin-top-bar--active {
    display: block; }
    #e-admin-top-bar-root.e-admin-top-bar--active ~ #wpbody #wpbody-content {
      margin-top: 50px; }
    #e-admin-top-bar-root.e-admin-top-bar--active ~ #wpbody .wrap {
      clear: both;
      padding-top: 10px; }
      #e-admin-top-bar-root.e-admin-top-bar--active ~ #wpbody .wrap h1 {
        display: none; }
  #e-admin-top-bar-root:not(.e-admin-top-bar--active) ~ #wpbody .wrap h1, #e-admin-top-bar-root:not(.e-admin-top-bar--active) ~ #wpbody .wrap .page-title-action {
    display: inline-block; }
  #e-admin-top-bar-root .e-admin-top-bar__bar-button {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    cursor: pointer;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin: 0 10px;
    text-decoration: none;
    color: #6d7882; }
    #e-admin-top-bar-root .e-admin-top-bar__bar-button .e-admin-top-bar__bar-button-title {
      color: #6d7882; }
    #e-admin-top-bar-root .e-admin-top-bar__bar-button .e-admin-top-bar__bar-button-icon {
      margin: 0 4px; }
    #e-admin-top-bar-root .e-admin-top-bar__bar-button:hover .e-admin-top-bar__bar-button-title,
    #e-admin-top-bar-root .e-admin-top-bar__bar-button:hover .e-admin-top-bar__bar-button-icon {
      color: #93003c; }
  #e-admin-top-bar-root .e-admin-top-bar__bar-button-title {
    font-size: 13px;
    font-weight: 500;
    font-family: 'Roboto';
    margin: 0 4px;
    line-height: normal; }
  #e-admin-top-bar-root ~ #wpbody .wrap h1, #e-admin-top-bar-root ~ #wpbody .wrap .page-title-action {
    display: none; }

@media screen and (max-width: 960px) {
  #e-admin-top-bar-root {
    width: calc(100% - 36px); } }

@media screen and (max-width: 782px) {
  #e-admin-top-bar-root {
    width: 100%; } }

@media screen and (max-width: 600px) {
  #e-admin-top-bar-root {
    top: 46px; } }

@media (max-width: 768px) {
  #e-admin-top-bar-root {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    #e-admin-top-bar-root .e-admin-top-bar__main-area-buttons {
      position: absolute;
      top: calc(100% + 10px); }
    #e-admin-top-bar-root .e-admin-top-bar__secondary-area .e-admin-top-bar__secondary-area-buttons {
      display: none; }
    #e-admin-top-bar-root .e-admin-top-bar__secondary-area > .e-admin-top-bar__bar-button .e-admin-top-bar__bar-button-title {
      display: none; } }

@media (min-width: 768px) {
  #e-admin-top-bar-root .e-admin-top-bar__secondary-area .e-admin-top-bar__secondary-area-buttons {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; } }
/*# sourceMappingURL=admin-top-bar.css.map */assets/css/editor-dark-mode.min.css000064400000066364151327220410013275 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
body{color:#e0e1e3}body .pcr-app{background-color:#4c4f56;-webkit-box-shadow:0 .15em 1.5em 0 rgba(0,0,0,.5),0 0 1em 0 rgba(0,0,0,.05);box-shadow:0 .15em 1.5em 0 rgba(0,0,0,.5),0 0 1em 0 rgba(0,0,0,.05)}body .pcr-app .pcr-swatches>button:after{-webkit-box-shadow:0 0 3px rgba(0,0,0,.3);box-shadow:0 0 3px rgba(0,0,0,.3)}body .pcr-app .pcr-clear{color:#e0e1e3;background-color:#64666a}body .pcr-app .pcr-interaction .pcr-result{color:#e0e1e3;border-color:#64666a}body .pcr-app .pcr-interaction .pcr-result:focus{border-color:#7d7e82}body .pcr-swatch.pcr-active:after{-webkit-box-shadow:0 0 0 1px #71d7f7,inset 0 0 0 1px #4c4f56;box-shadow:0 0 0 1px #71d7f7,inset 0 0 0 1px #4c4f56}body .pcr-swatch.pcr-active~.elementor-color-picker__add-swatch{background-color:#64666a}body .pcr-swatch.pcr-active~.elementor-color-picker__add-swatch i{color:#e0e1e3}.pickr{background-color:#34383c}.e-control-color--no-value .pcr-button,.pickr{border-color:#64666a}.e-global__popover-toggle{border-color:#64666a;background-color:#34383c}.e-global__popover-container{background-color:#4c4f56;color:#e0e1e3}.e-global__popover-title{border-bottom-color:#404349}.e-global__color-title,.e-global__manage-button,.e-global__popover-title{color:#e0e1e3}.e-global__manage-button{border-top-color:#404349}.e-global__preview-item:hover{background-color:#404349}.elementor-control-type-global-style-repeater .elementor-button-wrapper{border-top-color:#34383c}.e-control-tool{background-color:#34383c;border-color:#e0e1e3}.e-control-tool i{color:#e0e1e3}#elementor-loading{background-color:#34383c}.elementor-loader,.elementor-safe-mode-toast{background-color:#4c4f56}.elementor-safe-mode-toast .elementor-toast-content,.elementor-safe-mode-toast header h2{color:#e0e1e3}.elementor-units-choices input.e-units-placeholder+label{color:#b4b5b7}.elementor-input-style,input,select,textarea{color:#e0e1e3;background-color:#34383c}.elementor-input-style:not(:focus),input:not(:focus),select:not(:focus),textarea:not(:focus){border-color:#64666a}.elementor-input-style:focus,input:focus,select:focus,textarea:focus{border-color:#7d7e82}.elementor-input-style[disabled],input[disabled],select[disabled],textarea[disabled]{background-color:#4c4f56}.elementor-input-style::-webkit-input-placeholder,input::-webkit-input-placeholder,select::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#64666a}.elementor-input-style::-moz-placeholder,input::-moz-placeholder,select::-moz-placeholder,textarea::-moz-placeholder{color:#64666a}.elementor-input-style::-ms-input-placeholder,input::-ms-input-placeholder,select::-ms-input-placeholder,textarea::-ms-input-placeholder{color:#64666a}.elementor-input-style::placeholder,input::placeholder,select::placeholder,textarea::placeholder{color:#64666a}select{background-color:#34383c}.elementor-button.elementor-button-default{background-color:#64666a}.elementor-button.elementor-button-default:hover{background-color:#4c4f56}.elementor-button.elementor-button-success[disabled]{background-color:#64666a}.elementor-button.elementor-button-danger{background-color:#f84343}#elementor-mode-switcher{background-color:#34383c}#elementor-mode-switcher:hover{background-color:#71d7f7}.elementor-control-dynamic-switcher{background-color:#34383c;border-color:#64666a;color:#e0e1e3}.elementor-tags-list{background-color:#4c4f56;border-color:#64666a}.elementor-tags-list__group-title{color:#b4b5b7}.elementor-tags-list__item:hover{background-color:#404349}.elementor-tag-settings-popup{background-color:#34383c;-webkit-box-shadow:1px 1px 10px rgba(0,0,0,.8);box-shadow:1px 1px 10px rgba(0,0,0,.8)}.elementor-tag-settings-popup:before{border-bottom-color:#404349}.elementor-panel{background-color:#34383c}.elementor-panel a{color:#71d7f7}.elementor-panel #elementor-panel-header{background-color:#26292c}.elementor-panel .elementor-panel-navigation{background-color:#404349}.elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab.elementor-active{background-image:-webkit-gradient(linear,left top,left bottom,from(#34383c),to(#4c4f56));background-image:-webkit-linear-gradient(top,#34383c,#4c4f56);background-image:-o-linear-gradient(top,#34383c,#4c4f56);background-image:linear-gradient(180deg,#34383c,#4c4f56);border-bottom-color:#71d7f7}.elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab a{color:#e0e1e3}.elementor-panel #elementor-panel-elements-search-area{background-color:#34383c}.elementor-panel #elementor-panel-elements-search-input{background-color:#4c4f56;color:#e0e1e3}.elementor-panel #elementor-panel-elements-search-input:focus{background-color:#404349;color:#e0e1e3}.elementor-panel #elementor-panel-elements-search-input:focus+i{color:#e0e1e3}.elementor-panel .elementor-element{background-color:#404349}.elementor-panel .elementor-element .icon,.elementor-panel .elementor-element .title{color:#e0e1e3}.elementor-panel .elementor-element:hover .icon,.elementor-panel .elementor-element:hover .title{color:#71d7f7}.elementor-panel .elementor-element>.eicon-lock{color:#64666a}.elementor-panel .widget-inside{background-color:inherit}.elementor-panel #elementor-panel-footer{background-color:#26292c}.elementor-panel .elementor-panel-footer-sub-menu-wrapper{background-color:#34383c;border-top:1px solid #4c4f56}.elementor-panel .elementor-panel-footer-sub-menu-item{background-color:#404349}.elementor-panel .elementor-panel-footer-sub-menu-item.active,.elementor-panel .elementor-panel-footer-sub-menu-item:hover{background-color:#4c4f56}.elementor-panel #elementor-panel-footer-saver-options{border-color:#26292c}.elementor-panel .elementor-controls-popover{background-color:#4c4f56;-webkit-box-shadow:0 2px 15px rgba(0,0,0,.5);box-shadow:0 2px 15px rgba(0,0,0,.5)}.elementor-panel .elementor-controls-popover:before{border-bottom-color:#4c4f56}.elementor-panel .elementor-controls-popover .elementor-control-responsive-switchers__holder,.elementor-panel .elementor-panel-alert,.elementor-panel .elementor-panel-alert.elementor-panel-alert-info{background-color:#4c4f56}.elementor-panel #elementor-panel__editor__help__link{color:#b4b5b7}.elementor-panel #elementor-panel__editor__help__link:hover{color:#e0e1e3}.elementor-panel #elementor-panel-global-widget>*{background-color:#404349}.elementor-panel #elementor-global-widget-locked-unlink{border-top-color:#34383c}.elementor-panel .elementor-panel-scheme-color-system-items{background-color:#34383c;border-color:#64666a}.elementor-panel .elementor-panel-menu-item{background-color:#404349}.elementor-panel .elementor-panel-menu-item:hover{background-color:#4c4f56}.elementor-panel .elementor-panel-menu-item a{color:#e0e1e3}.elementor-panel .elementor-panel-menu-item-icon{color:#b4b5b7}.elementor-control{background-color:#404349}.elementor-control.elementor-control-separator-after:after,.elementor-control.elementor-control-separator-before:before{background-color:#34383c}.elementor-control.elementor-control-type-divider .elementor-control-content{background-color:#404349;border-color:#34383c}.elementor-control.elementor-control-type-select .elementor-control-input-wrapper select.e-select-placeholder{color:#64666a}.elementor-control-responsive-switchers__holder{background-color:#404349}.elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-control-responsive-switchers__holder{-webkit-box-shadow:0 0 3px rgba(0,0,0,.5);box-shadow:0 0 3px rgba(0,0,0,.5)}a.elementor-responsive-switcher{color:#e0e1e3}.elementor-device-desktop .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-desktop,.elementor-device-laptop .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-laptop,.elementor-device-mobile .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-mobile,.elementor-device-mobile_extra .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-mobile_extra,.elementor-device-tablet .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-tablet,.elementor-device-tablet_extra .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-tablet_extra,.elementor-device-widescreen .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-widescreen,a.elementor-responsive-switcher:hover{color:#71d7f7}.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle-label{background-color:#34383c;border-color:#64666a}.elementor-control-type-popover_toggle .elementor-control-responsive-switchers__holder{background-color:#4c4f56}.elementor-control-media-upload-button{background-color:#34383c}.elementor-control-media__remove{background-color:#64666a;color:#b4b5b7}.elementor-control-media .elementor-control-input-wrapper{border-color:#64666a}.elementor-control-media .eicon-plus-circle{color:#e0e1e3}.elementor-control-media .elementor-control-media__tool{background-color:#7d7e82}.elementor-control-media__file,.elementor-control-media__file__controls{border-color:#64666a}.elementor-control-media-area,.pcr-app[data-theme=monolith] .pcr-color-palette,.pcr-button{background-image:-webkit-linear-gradient(45deg,#34383c 25%,transparent 0,transparent 75%,#34383c 0,#34383c),-webkit-linear-gradient(45deg,#34383c 25%,transparent 0,transparent 75%,#34383c 0,#34383c);background-image:-o-linear-gradient(45deg,#34383c 25%,transparent 0,transparent 75%,#34383c 0,#34383c),-o-linear-gradient(45deg,#34383c 25%,transparent 0,transparent 75%,#34383c 0,#34383c);background-image:linear-gradient(45deg,#34383c 25%,transparent 0,transparent 75%,#34383c 0,#34383c),linear-gradient(45deg,#34383c 25%,transparent 0,transparent 75%,#34383c 0,#34383c);-webkit-background-size:12px 12px;background-size:12px 12px;background-position:0 0,6px 6px;background-color:#64666a}.elementor-control-type-icons .elementor-control-media__preview i{color:#b4b5b7}.elementor-control-type-media .elementor-control-media__preview{background-color:#34383c}.elementor-control-type-gallery .elementor-control-gallery-clear:hover{color:#f84343}.elementor-control-type-gallery .elementor-control-gallery-add{background-color:#34383c}.elementor-control-type-gallery .elementor-control-gallery-add:hover{background-color:#4c4f56}.elementor-control-type-gallery.elementor-control-dynamic .elementor-control-gallery-clear,.elementor-control-type-gallery .elementor-control-gallery-status,.elementor-control-type-gallery .elementor-control-media__content{border-color:#64666a}.elementor-control-type-gallery .elementor-control-dynamic-switcher{border-bottom:1px solid #64666a;border-left:1px solid #64666a;-webkit-border-radius:0 3px 0 0;border-radius:0 3px 0 0}body.rtl .elementor-control-type-gallery .elementor-control-dynamic-switcher{border-right:1px solid #64666a;border-left:none}.elementor-control-type-url .elementor-control-url-more{background-color:#34383c;border-color:#64666a}.elementor-control-type-url .elementor-control-url-option-input{border-color:#64666a}.elementor-control-type-url .elementor-control-url-option-input:checked{background-color:#64666a}.elementor-control-type-url .elementor-input:focus~div{border-color:#7d7e82}.elementor-control-type-wysiwyg .wp-editor-container{border-color:#64666a}.elementor-control-type-wysiwyg .mce-ico,.elementor-control-type-wysiwyg .mce-menubtn button,.elementor-control-type-wysiwyg .wp-switch-editor{color:#e0e1e3}.elementor-control-type-wysiwyg .switch-html,.elementor-control-type-wysiwyg .wp-editor-tabs{border-color:#7d7e82}.elementor-control-type-wysiwyg #insert-media-button,.elementor-control-type-wysiwyg .html-active .switch-html,.elementor-control-type-wysiwyg .mce-toolbar-grp,.elementor-control-type-wysiwyg .quicktags-toolbar,.elementor-control-type-wysiwyg .tmce-active .switch-tmce{background-color:#64666a}.elementor-control-type-wysiwyg #insert-media-button{color:#e0e1e3;border-color:#7d7e82}.elementor-control-type-wysiwyg .mce-toolbar .mce-btn-group .mce-btn.mce-active,.elementor-control-type-wysiwyg .mce-toolbar .mce-btn-group .mce-btn:active,.elementor-control-type-wysiwyg .mce-toolbar .mce-btn-group .mce-btn:focus,.elementor-control-type-wysiwyg .mce-toolbar .mce-btn-group .mce-btn:hover,.elementor-control-type-wysiwyg .qt-dfw.active,.elementor-control-type-wysiwyg .qt-dfw:focus,.elementor-control-type-wysiwyg .qt-dfw:hover{background-color:#404349;-webkit-box-shadow:inset 0 1px 0 rgba(0,0,0,.08),0 1px 0 rgba(0,0,0,.08);box-shadow:inset 0 1px 0 rgba(0,0,0,.08),0 1px 0 rgba(0,0,0,.08)}.elementor-control-type-wysiwyg .mce-toolbar .mce-btn-group .mce-btn.mce-listbox{background-color:#404349;border-color:#7d7e82;-webkit-border-radius:3px;border-radius:3px}.elementor-control-type-wysiwyg .quicktags-toolbar{border-color:#7d7e82}.elementor-control-type-wysiwyg .wp-core-ui .button,.elementor-control-type-wysiwyg .wp-core-ui .button-secondary{background-color:#4c4f56;color:#e0e1e3;border-color:#7d7e82}.elementor-control-type-wysiwyg .wp-core-ui .button-secondary:hover,.elementor-control-type-wysiwyg .wp-core-ui .button:hover{background-color:#404349;border-color:#7d7e82}.elementor-choices .elementor-choices-label,.elementor-choices .elementor-choices-label:last-child{background-color:#34383c;border-color:#64666a}.elementor-choices input.e-choose-placeholder+.elementor-choices-label{background-color:#64666a;border-color:#64666a}.elementor-choices input:checked+.elementor-choices-label{background-color:#7d7e82;border-color:#7d7e82}.elementor-control-type-repeater .elementor-repeater-row-tools{background-color:#64666a;color:#e0e1e3}.elementor-control-type-repeater .elementor-repeater-row-tools:hover{background-color:#7d7e82}.elementor-control-type-repeater .elementor-repeater-row-tools>div:not(.elementor-repeater-row-handle-sortable){background-color:#404349}.elementor-control-type-repeater .elementor-repeater-row-tools>div:not(.elementor-repeater-row-handle-sortable):hover{background-color:#464950}.elementor-control-type-repeater .elementor-repeater-row--form-step .elementor-repeater-row-tools:hover{background-color:#7d7e82}.elementor-control-type-repeater .elementor-repeater-row--form-step .elementor-repeater-row-tools div:not(.elementor-repeater-row-handle-sortable){background-color:#4c4f56}.elementor-control-type-repeater .elementor-repeater-row--form-step .elementor-repeater-row-tools div:not(.elementor-repeater-row-handle-sortable):hover{background-color:#64666a}.elementor-control-type-repeater .elementor-repeater-row-controls{border-color:#64666a}.elementor-control-type-tab{background-color:#34383c;border-color:#64666a}.elementor-control-type-tab:first-child{border-color:#64666a}.elementor-control-type-tab.elementor-tab-active{background-color:#7d7e82;border-color:#7d7e82}.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle:after{background-color:#e0e1e3}.elementor-slider{background-color:#64666a}.elementor-slider .noUi-handle{background-color:#e0e1e3}.elementor-control-type-dimensions li .elementor-link-dimensions,.elementor-control-type-dimensions li input{border-color:#64666a}.elementor-control-type-dimensions li input:focus{border-color:#7d7e82}.elementor-control-type-dimensions li:first-child input{border-color:#64666a}.elementor-control-type-dimensions li:first-child input:focus{border-color:#7d7e82}.elementor-control-type-dimensions .elementor-link-dimensions.unlinked{background-color:#34383c;color:#e0e1e3}.elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked){background-color:#7d7e82;border-color:#7d7e82}.elementor-control-type-switcher .elementor-switch-label{background-color:#34383c}.elementor-control-type-switcher .elementor-switch-label:before{text-shadow:0 1px rgba(0,0,0,.8)}.elementor-control-type-switcher .elementor-switch-input:checked~.elementor-switch-label{background-color:#71d7f7}.elementor-control-type-switcher .elementor-switch-handle{background-color:#e0e1e3}.elementor-control-type-structure .elementor-control-structure-preset path{fill:#34383c}.elementor-control-type-structure .elementor-control-structure-presets input:checked+.elementor-control-structure-preset path{fill:#64666a}.elementor-control-type-structure .elementor-control-structure-reset{border-top-color:#34383c}.elementor-panel-heading{border-bottom-color:#34383c}.elementor-panel-heading-title,.elementor-panel-heading-toggle{color:#e0e1e3}.select2-container .e-select2-placeholder{color:#64666a}.select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--multiple,.select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--single{background-color:#34383c;color:#e0e1e3;border-color:#64666a}.select2-container:not(.select2-container--all-selected) .select2-selection--multiple .select2-search--inline:before{background-color:#4c4f56;color:#b4b5b7}.select2-container.select2-container--focus .select2-selection--multiple,.select2-container.select2-container--focus .select2-selection--single,.select2-container.select2-container--open .select2-selection--multiple,.select2-container.select2-container--open .select2-selection--single{border-color:#7d7e82}.select2-container.select2-container--default .select2-selection--single .select2-selection__rendered{color:#e0e1e3}.select2-container.select2-container--default .select2-selection--single{background-color:#34383c;border-color:#4c4f56}.select2-container.select2-container--default .select2-selection--multiple{background-color:#34383c}.select2-container.select2-container--default .select2-selection--multiple .select2-selection__choice{background-color:#4c4f56;border-color:#4c4f56}.select2-container.select2-container--default .select2-selection--multiple .select2-selection__choice__remove{color:#b4b5b7}.select2-container.select2-container--default .select2-results__option--highlighted[aria-selected]{background-color:#4c4f56;color:#e0e1e3}.select2-container .select2-results__option[aria-selected=true]{color:#fff}.select2-container .select2-dropdown{background-color:#34383c;border-color:#7d7e82}#elementor-element--promotion__dialog{background-color:#404349;-webkit-box-shadow:0 2px 15px rgba(0,0,0,.5);box-shadow:0 2px 15px rgba(0,0,0,.5)}#elementor-element--promotion__dialog:after{border-right-color:#404349}#elementor-element--promotion__dialog .dialog-header{color:#e0e1e3;border-bottom-color:#64666a}#elementor-element--promotion__dialog .dialog-header .eicon-close,#elementor-element--promotion__dialog .dialog-header .eicon-pro-icon{color:#b4b5b7}body.rtl #elementor-element--promotion__dialog:after{border-left-color:#475158}.dialog-type-lightbox{background-color:rgba(0,0,0,.65)}.dialog-type-lightbox .dialog-header{color:#e0e1e3}.dialog-type-lightbox .dialog-widget-content{background-color:#34383c}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button{color:#e0e1e3}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button.dialog-ok{color:#f84343}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button:hover{background-color:#4c4f56}.dialog-type-lightbox .dialog-button:first-child,.dialog-type-lightbox .dialog-buttons-wrapper{border-color:#4c4f56}.dialog-type-lightbox .elementor-publish__tab__title{color:#e0e1e3}.dialog-type-lightbox .elementor-popup__display-settings_controls_group,.dialog-type-lightbox .elementor-publish__tab.elementor-active{background-color:#404349}.dialog-type-lightbox .elementor-popup__display-settings_controls_group__icon{border-color:#34383c}.elementor-templates-modal .dialog-header{background-color:#26292c;color:#e0e1e3;-webkit-box-shadow:0 0 8px rgba(0,0,0,.3);box-shadow:0 0 8px rgba(0,0,0,.3)}.elementor-templates-modal__header__close--normal{border-color:#7d7e82}.elementor-templates-modal__sidebar{background-color:transparent}.elementor-templates-modal__content{-webkit-box-shadow:0 0 13px inset rgba(0,0,0,.08);box-shadow:inset 0 0 13px rgba(0,0,0,.08)}.elementor-templates-modal .dialog-buttons-wrapper{background-color:#34383c}#elementor-template-library-header-menu{color:#e0e1e3}.elementor-template-library-menu-item.elementor-active{background-image:-webkit-gradient(linear,left top,left bottom,from(#26292c),to(#34383c));background-image:-webkit-linear-gradient(top,#26292c,#34383c);background-image:-o-linear-gradient(top,#26292c,#34383c);background-image:linear-gradient(180deg,#26292c,#34383c);border-color:#71d7f7}#elementor-template-library-filter{border-color:#34383c}#elementor-template-library-filter-text{background-color:transparent}#elementor-template-library-filter-text:focus+i{color:#e0e1e3}#elementor-template-library-filter-my-favorites:hover,label.elementor-template-library-order-label:hover{color:#b4b5b7}#elementor-template-library-filter-my-favorites:checked+#elementor-template-library-filter-my-favorites-label,#elementor-template-library-templates[data-template-source=remote] .elementor-template-library-order-input:checked+.elementor-template-library-order-label{color:#7d7e82}#elementor-template-library-header-preview-back{border-color:#4c4f56}.elementor-template-library-template-remote{background-color:#404349}.elementor-template-library-template-remote .elementor-template-library-template-name{color:#e0e1e3}.elementor-template-library-template-remote:not(.elementor-template-library-template-page) .elementor-template-library-template-footer{background-color:#404349}.elementor-template-library-template-local{background-color:#4c4f56}.elementor-template-library-template-local:hover{background-color:#64666a}.elementor-template-library-template-local .elementor-template-library-template-controls>div:not(:hover),.elementor-template-library-template-local .elementor-template-library-template-controls>div a{color:#b4b5b7}.elementor-template-library-template-local .elementor-template-library-template-more{background-color:#4c4f56}.elementor-template-library-template-local .elementor-template-library-template-more:before{border-bottom-color:#4c4f56}.elementor-template-library-template-local .elementor-template-library-template-more:hover,.elementor-template-library-template-local .elementor-template-library-template-more a:hover{color:#e0e1e3}.elementor-template-library-template-local .elementor-template-library-template-more .elementor-template-library-template-delete:hover{color:#f84343}#elementor-template-library-save-template-name{background-color:#26292c}#elementor-template-library-import-form{background-color:transparent}#elementor-template-library-import-form:hover{background-color:rgba(0,0,0,.3)}#elementor-publish #elementor-theme-builder-conditions input,#elementor-publish #elementor-theme-builder-conditions select{background-color:#4c4f56;color:#e0e1e3}#elementor-publish #elementor-theme-builder-conditions .elementor-control-type[data-elementor-condition-type=exclude],#elementor-publish #elementor-theme-builder-conditions .elementor-control-type[data-elementor-condition-type=include]{background-color:#64666a}#elementor-publish #elementor-theme-builder-conditions .elementor-control-type[data-elementor-condition-type=exclude] option,#elementor-publish #elementor-theme-builder-conditions .elementor-control-type[data-elementor-condition-type=exclude] select,#elementor-publish #elementor-theme-builder-conditions .elementor-control-type[data-elementor-condition-type=include] option,#elementor-publish #elementor-theme-builder-conditions .elementor-control-type[data-elementor-condition-type=include] select{background-color:#404349;color:#e0e1e3}#elementor-publish #elementor-theme-builder-conditions .elementor-control-type-select .elementor-control-input-wrapper:after{color:inherit}#elementor-publish #elementor-theme-builder-conditions .elementor-theme-builder-conditions-repeater-row-controls .select2-container--default .select2-selection--single,#elementor-publish #elementor-theme-builder-conditions .elementor-theme-builder-conditions-repeater-row-controls .select2-dropdown,#elementor-toast .e-toast-button{background-color:#4c4f56}#elementor-icons-manager__search input{background-color:#404349;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}#elementor-icons-manager__search input:focus{background-color:#4c4f56}.elementor-icons-manager__tab__item{background-color:#404349}.elementor-icons-manager__tab-link,.elementor-icons-manager__tab__item__icon,.elementor-icons-manager__tab__item__name{color:#e0e1e3}.elementor-context-menu,.elementor-icons-manager__tab-link.elementor-active{background-color:#404349}.elementor-context-menu,.elementor-context-menu .elementor-context-menu-list__group:not(:last-child){border-color:#34383c}.elementor-context-menu-list__item:not(.elementor-context-menu-list__item--disabled):hover{background-color:#4c4f56}.elementor-context-menu-list__item.elementor-context-menu-list__item-delete:not(.elementor-context-menu-list__item--disabled):hover{background-color:#f84343}#elementor-navigator,#elementor-navigator__footer,#elementor-navigator__header,#elementor-navigator__inner{background-color:#34383c}#elementor-navigator__footer,#elementor-navigator__header{border-color:#4c4f56}#elementor-navigator__header #elementor-navigator__close,#elementor-navigator__header #elementor-navigator__toggle-all{color:#b4b5b7}.elementor-navigator__element-section{background-color:transparent}.elementor-navigator__item{background-color:#404349;border-color:#34383c}.elementor-navigator__item:hover{background-color:#4c4f57}.elementor-navigator__element__indicator{color:#e0e1e3;background-color:#4c4f56}.elementor-navigator__element__indicator:hover{color:#b4b5b7}.elementor-navigator__element__indicator:not(:first-child){border-color:#34383c}.elementor-navigator__element-column{background-color:#474a51}.elementor-navigator__element:not(.elementor-navigator__element--hidden)>.elementor-navigator__item.elementor-editing{background-color:#4c4f57}.elementor-navigator__element:not(.elementor-navigator__element--hidden)>.elementor-navigator__item.elementor-editing .elementor-navigator__element__toggle{color:#71d7f7}.elementor-navigator__elements .elementor-empty-view{border-color:#34383c}.elementor-navigator__elements .ui-sortable-helper{background-color:#34383c;border-color:#34383c}.elementor-navigator__elements .ui-sortable-placeholder{background-color:#34383c}#elementor-panel-history:not(.elementor-empty),.elementor-panel .elementor-panel-box,.elementor-panel .elementor-panel-scheme-buttons{background-color:#404349}.elementor-history-item,.elementor-revision-item__wrapper{background-color:#4c4f56;border-color:#4c4f56}.elementor-history-item:hover,.elementor-revision-item__wrapper:hover{background-color:#64666a}#elementor-finder__search__input{color:#e0e1e3}.elementor-finder__results__category__title{background-color:#26292c;color:#e0e1e3}.elementor-finder__results__item__title{color:#e0e1e3}.elementor-finder__results__item.elementor-active{background-color:#404349}.elementor-hotkeys__list{background-color:#4c4f56}.elementor-hotkeys__item{border-color:#64666a}.elementor-hotkeys__item--shortcut span{background-color:#64666a}#wp-link,.media-modal{color:#6d7882}#wp-link .elementor-input-style,#wp-link input,#wp-link select,#wp-link textarea{color:#6d7882;background-color:transparent}#wp-link .elementor-input-style:not(:focus),#wp-link input:not(:focus),#wp-link select:not(:focus),#wp-link textarea:not(:focus){border-color:#d5dadf}#wp-link .elementor-input-style:focus,#wp-link input:focus,#wp-link select:focus,#wp-link textarea:focus{border-color:#a4afb7}.ui-autocomplete{color:#6d7882}.elementor-color-picker__tool{background-color:#e0e1e3}.elementor-color-picker__tool i{color:#64666a}.elementor-nerd-box-icon{-webkit-filter:contrast(.8);filter:contrast(.8)}assets/css/app-base.min.css000064400000003132151327220410011616 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
:root{--color-box-shadow-color:rgba(0,0,0,0.05)}.eps-theme-dark{--color-box-shadow-color:rgba(0,0,0,0.1)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media screen and (min-width:480px){.text-start-sm{text-align:start}}@media screen and (min-width:480px){.text-center-sm{text-align:center}}@media screen and (min-width:480px){.text-end-sm{text-align:end}}@media screen and (min-width:768px){.text-start-md{text-align:start}}@media screen and (min-width:768px){.text-center-md{text-align:center}}@media screen and (min-width:768px){.text-end-md{text-align:end}}@media screen and (min-width:1025px){.text-start-lg{text-align:start}}@media screen and (min-width:1025px){.text-center-lg{text-align:center}}@media screen and (min-width:1025px){.text-end-lg{text-align:end}}@media screen and (min-width:1440px){.text-start-xl{text-align:start}}@media screen and (min-width:1440px){.text-center-xl{text-align:center}}@media screen and (min-width:1440px){.text-end-xl{text-align:end}}@media screen and (min-width:1600px){.text-start-xxl{text-align:start}}@media screen and (min-width:1600px){.text-center-xxl{text-align:center}}@media screen and (min-width:1600px){.text-end-xxl{text-align:end}}@-webkit-keyframes eps-animation-pop{0%{-webkit-transform:scale(.75);transform:scale(.75);opacity:0}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}@keyframes eps-animation-pop{0%{-webkit-transform:scale(.75);transform:scale(.75);opacity:0}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}assets/css/widget-progress.min.css000064400000002506151327220410013257 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-widget-progress{text-align:left}.elementor-progress-wrapper{position:relative;background-color:#eee;color:#fff;height:100%;-webkit-border-radius:2px;border-radius:2px}.elementor-progress-bar{display:-webkit-box;display:-ms-flexbox;display:flex;background-color:#818a91;width:0;font-size:11px;height:30px;line-height:30px;-webkit-border-radius:2px;border-radius:2px;-webkit-transition:width 1s ease-in-out;-o-transition:width 1s ease-in-out;transition:width 1s ease-in-out}.elementor-progress-text{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;padding-left:15px}.elementor-progress-percentage{padding-right:15px}.elementor-widget-progress .elementor-progress-wrapper.progress-info .elementor-progress-bar{background-color:#5bc0de}.elementor-widget-progress .elementor-progress-wrapper.progress-success .elementor-progress-bar{background-color:#5cb85c}.elementor-widget-progress .elementor-progress-wrapper.progress-warning .elementor-progress-bar{background-color:#f0ad4e}.elementor-widget-progress .elementor-progress-wrapper.progress-danger .elementor-progress-bar{background-color:#d9534f}.elementor-progress .elementor-title{display:block}@media (max-width:767px){.elementor-progress-text{padding-left:10px}}assets/css/widget-video-rtl.min.css000064400000001377151327220410013325 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-widget-video .elementor-widget-container{overflow:hidden;-webkit-transform:translateZ(0);transform:translateZ(0)}.elementor-widget-video .elementor-open-inline .elementor-custom-embed-image-overlay{position:absolute;top:0;left:0;width:100%;height:100%;-webkit-background-size:cover;background-size:cover;background-position:50%}.elementor-widget-video .elementor-custom-embed-image-overlay{cursor:pointer;text-align:center}.elementor-widget-video .elementor-custom-embed-image-overlay:hover .elementor-custom-embed-play i{opacity:1}.elementor-widget-video .elementor-custom-embed-image-overlay img{display:block;width:100%}.elementor-widget-video .e-hosted-video .elementor-video{-o-object-fit:cover;object-fit:cover}assets/css/widget-image.min.css000064400000000375151327220410012477 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-widget-image{text-align:center}.elementor-widget-image a{display:inline-block}.elementor-widget-image a img[src$=".svg"]{width:48px}.elementor-widget-image img{vertical-align:middle;display:inline-block}assets/css/widget-tabs.min.css000064400000010522151327220410012341 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-wrapper{width:25%;-ms-flex-negative:0;flex-shrink:0}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active{border-right-style:none}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:after,.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:before{height:999em;width:0;right:0;border-right-style:solid}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:before{top:0;-webkit-transform:translateY(-100%);-ms-transform:translateY(-100%);transform:translateY(-100%)}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:after{top:100%}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title{display:table-cell}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active{border-bottom-style:none}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:after,.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:before{bottom:0;height:0;width:999em;border-bottom-style:solid}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:before{right:100%}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:after{left:100%}.elementor-widget-tabs .elementor-tab-content,.elementor-widget-tabs .elementor-tab-title,.elementor-widget-tabs .elementor-tab-title:after,.elementor-widget-tabs .elementor-tab-title:before,.elementor-widget-tabs .elementor-tabs-content-wrapper{border:1px #d4d4d4}.elementor-widget-tabs .elementor-tabs{text-align:left}.elementor-widget-tabs .elementor-tabs-wrapper{overflow:hidden}.elementor-widget-tabs .elementor-tab-title{cursor:pointer;outline:var(--focus-outline,none)}.elementor-widget-tabs .elementor-tab-desktop-title{position:relative;padding:20px 25px;font-weight:700;line-height:1;border:solid transparent}.elementor-widget-tabs .elementor-tab-desktop-title.elementor-active{border-color:#d4d4d4}.elementor-widget-tabs .elementor-tab-desktop-title.elementor-active:after,.elementor-widget-tabs .elementor-tab-desktop-title.elementor-active:before{display:block;content:"";position:absolute}.elementor-widget-tabs .elementor-tab-mobile-title{padding:10px;cursor:pointer}.elementor-widget-tabs .elementor-tab-content{padding:20px;display:none}@media (max-width:767px){.elementor-tabs .elementor-tab-content,.elementor-tabs .elementor-tab-title{border-style:solid solid none}.elementor-tabs .elementor-tabs-wrapper{display:none}.elementor-tabs .elementor-tabs-content-wrapper{border-bottom-style:solid}.elementor-tabs .elementor-tab-content{padding:10px}}@media (min-width:768px){.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-wrapper{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-content-wrapper{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;border-style:solid solid solid none}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-content{border-style:none solid solid}.elementor-widget-tabs.elementor-tabs-alignment-center .elementor-tabs-wrapper,.elementor-widget-tabs.elementor-tabs-alignment-end .elementor-tabs-wrapper,.elementor-widget-tabs.elementor-tabs-alignment-stretch .elementor-tabs-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget-tabs.elementor-tabs-alignment-center .elementor-tabs-wrapper{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-widget-tabs.elementor-tabs-alignment-end .elementor-tabs-wrapper{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-widget-tabs.elementor-tabs-alignment-stretch.elementor-tabs-view-horizontal .elementor-tab-title{width:100%}.elementor-widget-tabs.elementor-tabs-alignment-stretch.elementor-tabs-view-vertical .elementor-tab-title{height:100%}.elementor-tabs .elementor-tab-mobile-title{display:none}}assets/css/frontend-legacy-rtl.css000064400000011533151327220410013230 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-bc-flex-widget .elementor-section-content-top > .elementor-container > .elementor-row > .elementor-column > .elementor-column-wrap {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; }

.elementor-bc-flex-widget .elementor-section-content-middle > .elementor-container > .elementor-row > .elementor-column > .elementor-column-wrap {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.elementor-bc-flex-widget .elementor-section-content-bottom > .elementor-container > .elementor-row > .elementor-column > .elementor-column-wrap {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end; }

.elementor-column-gap-narrow > .elementor-row > .elementor-column > .elementor-element-populated {
  padding: 5px; }

.elementor-column-gap-default > .elementor-row > .elementor-column > .elementor-element-populated {
  padding: 10px; }

.elementor-column-gap-extended > .elementor-row > .elementor-column > .elementor-element-populated {
  padding: 15px; }

.elementor-column-gap-wide > .elementor-row > .elementor-column > .elementor-element-populated {
  padding: 20px; }

.elementor-column-gap-wider > .elementor-row > .elementor-column > .elementor-element-populated {
  padding: 30px; }

@media (min-width: 768px) and (max-width: 1024px) {
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(1) {
    -webkit-box-ordinal-group: 11;
        -ms-flex-order: 10;
            order: 10; }
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(2) {
    -webkit-box-ordinal-group: 10;
        -ms-flex-order: 9;
            order: 9; }
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(3) {
    -webkit-box-ordinal-group: 9;
        -ms-flex-order: 8;
            order: 8; }
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(4) {
    -webkit-box-ordinal-group: 8;
        -ms-flex-order: 7;
            order: 7; }
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(5) {
    -webkit-box-ordinal-group: 7;
        -ms-flex-order: 6;
            order: 6; }
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(6) {
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5; }
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(7) {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4; }
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(8) {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3; }
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(9) {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2; }
  .elementor-reverse-tablet > .elementor-container > .elementor-row > :nth-child(10) {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1; } }

@media (max-width: 767px) {
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(1) {
    -webkit-box-ordinal-group: 11;
        -ms-flex-order: 10;
            order: 10; }
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(2) {
    -webkit-box-ordinal-group: 10;
        -ms-flex-order: 9;
            order: 9; }
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(3) {
    -webkit-box-ordinal-group: 9;
        -ms-flex-order: 8;
            order: 8; }
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(4) {
    -webkit-box-ordinal-group: 8;
        -ms-flex-order: 7;
            order: 7; }
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(5) {
    -webkit-box-ordinal-group: 7;
        -ms-flex-order: 6;
            order: 6; }
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(6) {
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5; }
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(7) {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4; }
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(8) {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3; }
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(9) {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2; }
  .elementor-reverse-mobile > .elementor-container > .elementor-row > :nth-child(10) {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1; }
  .elementor-column {
    width: 100%; } }
/*# sourceMappingURL=frontend-legacy-rtl.css.map */assets/css/app-rtl.min.css000064400000230544151327220410011516 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
@import "//fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap";.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media screen and (min-width:480px){.text-start-sm{text-align:start}}@media screen and (min-width:480px){.text-center-sm{text-align:center}}@media screen and (min-width:480px){.text-end-sm{text-align:end}}@media screen and (min-width:768px){.text-start-md{text-align:start}}@media screen and (min-width:768px){.text-center-md{text-align:center}}@media screen and (min-width:768px){.text-end-md{text-align:end}}@media screen and (min-width:1025px){.text-start-lg{text-align:start}}@media screen and (min-width:1025px){.text-center-lg{text-align:center}}@media screen and (min-width:1025px){.text-end-lg{text-align:end}}@media screen and (min-width:1440px){.text-start-xl{text-align:start}}@media screen and (min-width:1440px){.text-center-xl{text-align:center}}@media screen and (min-width:1440px){.text-end-xl{text-align:end}}@media screen and (min-width:1600px){.text-start-xxl{text-align:start}}@media screen and (min-width:1600px){.text-center-xxl{text-align:center}}@media screen and (min-width:1600px){.text-end-xxl{text-align:end}}@-webkit-keyframes eps-animation-pop{0%{-webkit-transform:scale(.75);transform:scale(.75);opacity:0}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}@keyframes eps-animation-pop{0%{-webkit-transform:scale(.75);transform:scale(.75);opacity:0}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}.eps-button{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;--button-line-height:16px;--button-padding-y:0.5em;--button-padding-x:1.5em;--button-primary-background-color:#39b54a;--button-primary-hover-background-color:#33a242;--button-primary-active-background-color:#35a945;--button-primary-color:#fff;--button-secondary-background-color:#a4afb7;--button-secondary-hover-background-color:#96a2ac;--button-secondary-active-background-color:#9ba7b0;--button-secondary-color:#fff;--button-danger-background-color:#b01b1b;--button-danger-hover-background-color:#9a1818;--button-danger-active-background-color:#a31919;--button-danger-color:#fff;--button-cta-background-color:#93003f;--button-cta-hover-background-color:#7a0034;--button-cta-active-background-color:#840038;--button-cta-color:#fff;--button-link-background-color:#58d0f5;--button-link-hover-background-color:#40c9f4;--button-link-active-background-color:#4accf4;--button-link-color:#fff;--button-disabled-background-color:#c2cbd2;--button-disabled-hover-background-color:#b3bec7;--button-disabled-active-background-color:#b9c3cc;--button-disabled-color:#fff;color:var(--button-background-color,currentColor);font-size:var(--button-font-size,inherit);font-weight:500;line-height:var(--button-line-height);cursor:pointer}.eps-button:active{--button-background-color:var(--button-active-background-color,transparent)}.eps-button:hover{--button-background-color:var(--button-hover-background-color)}.eps-theme-dark .eps-button{--button-primary-background-color:#39b54a;--button-primary-color:#fff;--button-primary-hover-background-color:#33a242;--button-primary-active-background-color:#35a945;--button-secondary-background-color:#b4b5b7;--button-secondary-color:#fff;--button-secondary-hover-background-color:#a7a8ab;--button-secondary-active-background-color:#acadb0;--button-cta-background-color:#93003f;--button-cta-hover-background-color:#7a0034;--button-cta-active-background-color:#840038;--button-cta-color:#fff;--button-link-background-color:#58d0f5;--button-link-hover-background-color:#40c9f4;--button-link-active-background-color:#4accf4;--button-link-color:#fff;--button-disabled-background-color:#64666a;--button-disabled-hover-background-color:#58595d;--button-disabled-active-background-color:#5d5e62;--button-disabled-color:#fff}.eps-button--contained{padding:var(--button-padding-y) var(--button-padding-x);background-color:var(--button-background-color,transparent);border:1px solid var(--button-background-color)}.eps-button--contained,.eps-button--contained:hover{color:var(--button-color)}.eps-button--outlined{display:block;padding:var(--button-padding-y) var(--button-padding-x);border:1px solid var(--button-background-color)}.eps-button--contained,.eps-button--outlined{-webkit-border-radius:.1875rem;border-radius:.1875rem}.eps-button--underlined{text-decoration:underline}.eps-button--sm{--button-font-size:0.75rem;--button-line-height:14px}.eps-button--lg{--button-font-size:0.9375rem;--button-line-height:18px}.eps-button--primary{--button-color:var(--button-primary-color);--button-background-color:var(--button-primary-background-color);--button-hover-background-color:var(--button-primary-hover-background-color);--button-active-background-color:var(--button-primary-active-background-color)}.eps-button--secondary{--button-color:var(--buton-secondary-color);--button-background-color:var(--button-secondary-background-color);--button-hover-background-color:var(--button-secondary-hover-background-color);--button-active-background-color:var(--button-secondary-active-background-color)}.eps-button--danger{--button-color:var(--buton-danger-color);--button-background-color:var(--button-danger-background-color);--button-hover-background-color:var(--button-danger-hover-background-color);--button-active-background-color:var(--button-danger-active-background-color)}.eps-button--cta{--button-color:var(--button-cta-color);--button-background-color:var(--button-cta-background-color);--button-hover-background-color:var(--button-cta-hover-background-color);--button-active-background-color:var(--button-cta-active-background-color)}.eps-button--link{--button-color:var(--button-link-color);--button-background-color:var(--button-link-background-color);--button-hover-background-color:var(--button-link-hover-background-color);--button-active-background-color:var(--button-link-active-background-color)}.eps-button--disabled,.eps-button[disabled]{--button-color:var(--button-disabled-color);--button-background-color:var(--button-disabled-background-color);--button-hover-background-color:var(--button-disabled-hover-background-color);--button-active-background-color:var(--button-disabled-active-background-color);cursor:default}:root{--app-background-color:#f1f3f5;--app-box-shadow-color:rgba(var(--box-shadow-color,rgba(0,0,0,0.15)),0.2);--app-header-background-color:#fff;--app-header-color:#495157;--app-sidebar-background-color:hsla(0,0%,100%,0.5);--app-header-buttons-separator-color:#d5dadf;--app-header-buttons-color:#a4afb7;--app-lightbox-background-color:rgba(0,0,0,0.8)}.eps-theme-dark{--app-background-color:#34383c;--app-box-shadow-color:rgba(var(--box-shadow-color,rgba(0,0,0,0.15)),0.2);--app-header-background-color:#26292c;--app-header-color:#e0e1e3;--app-sidebar-background-color:#34383c;--app-header-buttons-separator-color:#64666a;--app-header-buttons-color:#b4b5b7;--app-lightbox-background-color:rgba(0,0,0,0.8)}:root{--text-muted:#d5dadf;--disabled:#c2cbd2;--danger:#b01b1b;--body-color:#6d7882;--hr-color:#d5dadf;--box-shadow-color:theme-colors(dark);--display-1-color:#495157;--display-2-color:#495157;--display-3-color:#6d7882;--display-4-color:#495157;--h1-color:#6d7882;--h2-color:#6d7882;--h3-color:#495157;--h4-color:#495157;--h5-color:#495157;--h6-color:#495157;--text-base-color:#495157;--text-xl-color:#495157;--text-lg-color:#495157;--text-sm-color:#495157;--text-xs-color:#495157;--text-xxs-color:#495157;--gray-800:#495157;--gray-700:#556068;--gray-600:#6d7882;--gray-500:#a4afb7;--gray-400:#c2cbd2;--gray-300:#d5dadf;--gray-200:#f1f3f5;--gray-100:#fcfcfc}.eps-theme-dark,:root{--light:#fff;--dark:#000;--info:#58d0f5;--cta:#93003f;--success:#39b54a;--warning:#fcb92c;--link-color:#58d0f5;--link-hover-color:#10bcf1}.eps-theme-dark{--text-muted:#7d7e82;--disabled:#64666a;--accent:#58d0f5;--danger:#f84343;--body-color:#e0e1e3;--body-bg:#fff;--hr-color:#4c4f56;--box-shadow-color:rgba(0,0,0,0.15);--display-1-color:#e0e1e3;--display-2-color:#e0e1e3;--display-3-color:#e0e1e3;--display-4-color:#e0e1e3;--h1-color:#e0e1e3;--h2-color:#e0e1e3;--h3-color:#e0e1e3;--h4-color:#e0e1e3;--h5-color:#e0e1e3;--h6-color:#e0e1e3;--text-base-color:#b4b5b7;--text-xl-color:#b4b5b7;--text-lg-color:#b4b5b7;--text-sm-color:#b4b5b7;--text-xs-color:#b4b5b7;--text-xxs-color:#b4b5b7;--gray-800:#26292c;--gray-700:#34383c;--gray-600:#404349;--gray-500:#4c4f56;--gray-400:#64666a;--gray-300:#7d7e82;--gray-200:#b4b5b7;--gray-100:#e0e1e3}*,:after,:before{-webkit-box-sizing:border-box;box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0)}article,aside,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{margin:0;font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;font-size:.875rem;font-weight:400;line-height:1.5;color:var(--body-color);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--body-bg)}::-moz-selection{background-color:rgba(147,0,63,.5)}::selection{background-color:rgba(147,0,63,.5)}[tabindex="-1"]:focus:not(:focus-visible){outline:0!important}h1,h2,h3,h4,h5,h6{font-size:100%;margin:0;padding:0;line-height:inherit;font-weight:400}p{margin-top:0}b,strong{font-weight:700}small{font-size:80%}a{--eps-link-color:$eps-link-color;color:var(--eps-link-color);background-color:transparent}a,a:active,a:focus,a:hover{text-decoration:none}a:focus,a:hover{--eps-link-color:$eps-link-hover-color}a:not([href]),a:not([href]):hover{color:inherit;text-decoration:none}code,kbd,pre,samp{font-family:monospace;font-size:1em}figure{margin:0}img{border-style:none}img,svg{vertical-align:middle}svg{overflow:hidden}button{-webkit-border-radius:0;border-radius:0}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}[role=button]{cursor:pointer}select{word-wrap:normal}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}input[type=checkbox],input[type=radio]{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}textarea{overflow:auto;resize:vertical}[hidden]{display:none!important}hr{border:0;border-bottom:1px solid var(--hr-color)}.eps-display-1{color:var(--display-1-color)}.eps-display-1,.eps-display-2{font-size:1.85rem;margin-top:.5rem;margin-bottom:.5rem}.eps-display-2{color:var(--display-2-color)}.eps-display-3{font-size:1.85rem;color:var(--display-3-color);margin-top:0;margin-bottom:1.25rem}.eps-display-4{font-size:1.85rem;color:var(--display-4-color);margin-top:.5rem;margin-bottom:.5rem}.eps-h1,h1{font-size:1.625rem;line-height:1;color:var(--h1-color);margin-bottom:1.25rem;font-weight:500}.eps-h2,h2{font-size:1.25rem;color:var(--h2-color);margin-bottom:1.25rem}.eps-h2,.eps-h3,h2,h3{line-height:1.2;margin-top:0;font-weight:500}.eps-h3,h3{font-size:1rem;color:var(--h3-color);margin-bottom:.5rem}.eps-h4,h4{font-size:.9375rem;color:var(--h4-color)}.eps-h4,.eps-h5,h4,h5{margin-top:0;margin-bottom:.5rem}.eps-h5,h5{font-size:.875rem;color:var(--h5-color)}.eps-h6,h6{font-size:.875rem;color:var(--h-6-color);margin-top:0;margin-bottom:.5rem;font-weight:700}.eps-text-xxs{line-height:1.2;color:var(--text-xxs-color)}.eps-text-xs,.eps-text-xxs{font-size:.75rem;font-weight:400}.eps-text-xs{line-height:1.5;color:var(--text-xs-color)}.eps-text{font-size:.875rem;color:var(--text-base-color)}.eps-text,.eps-text-sm{line-height:1.5;font-weight:400}.eps-text-sm{font-size:.8125rem;color:var(--text-sm-color)}.eps-text-lg{font-size:.9375rem;color:var(--text-lg-color)}.eps-text-lg,.eps-text-xl{line-height:1.5;font-weight:400}.eps-text-xl{font-size:1rem;color:var(--text-xl-color)}.video-wrapper{position:relative;padding-bottom:56.25%;height:0}.video-wrapper iframe{position:absolute;top:0;left:0;width:100%;height:100%}.eps-separator{margin-bottom:2.75rem}.eps-theme-dark{--e-app-back-button-color:#b4b5b7}.back-button,.e-app-back-button{--button-background-color:var(--e-app-back-button-color,#a4afb7);margin-bottom:1.5rem}.back-button .eps-icon,.e-app-back-button .eps-icon{-webkit-margin-end:.3125rem;margin-inline-end:.3125rem}.eps-theme-dark{--input-border-color:--hr-color}.eps-input{border:1px solid var(--hr-color);-webkit-border-radius:.1875rem;border-radius:.1875rem;background:transparent;color:inherit;height:1.875rem;padding:0 .3125rem}.eps-input--block{width:100%}.eps-app{height:100vh;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;color:var(--body-color);background-color:var(--app-background-color);position:absolute;-webkit-border-radius:0;border-radius:0;-webkit-box-shadow:2px 8px 23px 3px var(--color-box-shadow-color);box-shadow:2px 8px 23px 3px var(--color-box-shadow-color);overflow:hidden;font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;max-width:100%}.eps-app,.eps-app__lightbox{display:-webkit-box;display:-ms-flexbox;display:flex;width:100%}.eps-app__lightbox{-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;position:fixed;height:100%;background-color:var(--app-lightbox-background-color);z-index:1040;bottom:0;left:0}.eps-app__header{-ms-flex-negative:0;flex-shrink:0;font-size:.9375rem;color:var(--app-header-color);background-color:var(--app-header-background-color);-webkit-box-shadow:0 4px 10px var(--color-box-shadow-color);box-shadow:0 4px 10px var(--color-box-shadow-color);position:relative;z-index:3;height:3.125rem;padding:0 1rem}.eps-app__header-buttons{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;font-size:1.125rem}.eps-app__header-btn{--button-background-color:var(--app-header-buttons-color);-webkit-padding-start:1rem;padding-inline-start:1rem;font-size:1.125rem;line-height:1.25rem}.eps-app__header-btn:first-child{-webkit-border-start:1px solid var(--app-header-buttons-separator-color);border-inline-start:1px solid var(--app-header-buttons-separator-color)}.eps-app__header-btn:not(:first-child){-webkit-padding-end:1rem;padding-inline-end:1rem}.eps-app__logo-title-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.eps-app__logo{display:block;width:1.75rem;height:1.75rem;line-height:1.75rem;text-align:center;font-size:calc(.4 * 1.75rem);-webkit-border-radius:50%;border-radius:50%;color:#fff;background-color:#93003f}.eps-app__logo:not(:last-child){-webkit-margin-end:.625rem;margin-inline-end:.625rem}.eps-app__title{font-size:.9375rem;font-weight:700;text-transform:uppercase;margin-bottom:0}.eps-app__main{display:-webkit-box;display:-ms-flexbox;display:flex;overflow:hidden;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.eps-app__sidebar{background-color:var(--app-sidebar-background-color);padding-top:1.25rem;width:30%;max-width:17.1875rem;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;overflow-y:auto;-webkit-box-shadow:2px 8px 23px 3px var(--color-box-shadow-color);box-shadow:2px 8px 23px 3px var(--color-box-shadow-color);z-index:4}.eps-app__content{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;position:relative;padding:2.75rem;height:100%;overflow-y:auto}.e-app-upload-file__input{display:none}.e-app-drop-zone{--e-app-drop-zone-icon-color:#c2cbd2;--e-app-drop-zone-text-color:#a4afb7;--e-app-drop-zone-secondary-text-color:#6d7882}.e-app-drop-zone__icon{margin-bottom:2.75rem;color:var(--e-app-drop-zone-icon-color);font-size:60px}.e-app-drop-zone__text{color:var(--e-app-drop-zone-text-color)}.e-app-drop-zone__secondary-text{color:var(--e-app-drop-zone-secondary-text-color)}.eps-theme-dark .e-app-drop-zone{--e-app-drop-zone-icon-color:#c2cbd2;--e-app-drop-zone-text-color:#b4b5b7;--e-app-drop-zone-secondary-text-color:#e0e1e3}:root{--info-toggle-color:#d5dadf;--info-toggle-hover-color:#a4afb7}.eps-theme-dark{--placeholder-filter:invert(0.8) sepia(1) saturate(0.2) hue-rotate(180deg) contrast(1.25) brightness(1.2);--info-toggle-color:#64666a;--info-toggle-hover-color:#b4b5b7}.e-site-part .eps-card__image{-webkit-filter:var(--placeholder-filter,none);filter:var(--placeholder-filter,none)}.e-site-part__info-toggle{color:var(--info-toggle-color)}.e-site-part__info-toggle:hover{--info-toggle-color:var(--info-toggle-hover-color)}.e-site-editor__header{margin-bottom:2.75rem;border-bottom:1px solid var(--hr-color)}:root{--e-elementor-loader-container-background-color:#f1f3f5;--e-elementor-loader-background-color:hsla(0,0%,100%,0.9)}.eps-theme-dark{--e-elementor-loader-container-background-color:#34383c;--e-elementor-loader-background-color:#4c4f56}.elementor-loading{background-color:var(--e-elementor-loader-container-background-color);height:100vh}.elementor-loader-wrapper{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);width:300px;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-loader{-webkit-border-radius:50%;border-radius:50%;padding:40px;height:150px;width:150px;background-color:var(--e-elementor-loader-background-color);-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-box-shadow:2px 2px 20px 4px rgba(0,0,0,.02);box-shadow:2px 2px 20px 4px rgba(0,0,0,.02)}.elementor-loader-boxes{height:100%;width:100%;position:relative}.elementor-loader-box{position:absolute;background-color:#d5dadf;-webkit-animation:load 1.8s linear infinite;animation:load 1.8s linear infinite}.elementor-loader-box:first-of-type{width:20%;height:100%;left:0;top:0}.elementor-loader-box:not(:first-of-type){right:0;height:20%;width:60%}.elementor-loader-box:nth-of-type(2){top:0;-webkit-animation-delay:-.45s;animation-delay:-.45s}.elementor-loader-box:nth-of-type(3){top:40%;-webkit-animation-delay:-.9s;animation-delay:-.9s}.elementor-loader-box:nth-of-type(4){bottom:0;-webkit-animation-delay:-1.35s;animation-delay:-1.35s}.elementor-loading-title{color:#a4afb7;text-align:center;text-transform:uppercase;margin-top:30px;letter-spacing:7px;text-indent:7px;font-size:10px;width:100%}@-webkit-keyframes load{0%{opacity:.3}50%{opacity:1}to{opacity:.3}}@keyframes load{0%{opacity:.3}50%{opacity:1}to{opacity:.3}}.eps-menu__title{margin-top:2.75rem;margin-bottom:1rem}.e-app-import{--e-app-import-back-to-library-color:#a4afb7}.e-app-import__drop-zone{margin-top:1.25rem}.e-app-import__back-to-library{color:var(--e-app-import-back-to-library-color);margin-bottom:1.5rem}.e-app-import__back-to-library>i{-webkit-margin-end:.5rem;margin-inline-end:.5rem}.eps-theme-dark .e-app-import{--e-app-import-back-to-library-color:#b4b5b7}.e-site-editor__promotion-overlay__link{display:-webkit-box;display:-ms-flexbox;display:flex;width:100%;height:100%;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;text-decoration:none}.e-site-editor__promotion-overlay__icon{font-size:1.25rem;color:#fff;margin-bottom:1rem}.e-app-import-export-wizard-step{--e-app-import-export-wizard-step-icon-color:#c2cbd2;--e-app-import-export-wizard-step-text-color:#a4afb7;--e-app-import-export-wizard-step-bottom-text-color:#a4afb7;height:100%;position:relative;text-align:center}.e-app-import-export-wizard-step__media-container{height:140px;margin:5.5rem 0 2.75rem}.e-app-import-export-wizard-step__icon{color:var(--e-app-import-export-wizard-step-icon-color);font-size:50px}.e-app-import-export-wizard-step__icon.eicon-loading{font-size:1.85rem}.e-app-import-export-wizard-step__heading{margin-bottom:1.5rem}.e-app-import-export-wizard-step__description{color:var(--e-app-import-export-wizard-step-text-color)}.e-app-import-export-wizard-step__content{text-align:initial;margin-bottom:1.25rem}.e-app-import-export-wizard-step__notice{display:block;position:-webkit-sticky;position:sticky;top:100%;color:var(--e-app-import-export-wizard-step-bottom-text-color);font-style:italic;margin-bottom:0}.eps-theme-dark .e-app-import-export-wizard-step{--e-app-import-export-wizard-step-icon-color:#64666a;--e-app-import-export-wizard-step-text-color:#b4b5b7;--e-app-import-export-wizard-step-bottom-text-color:#b4b5b7}.e-app-import-export-page-header{--e-app-import-export-page-header-border-bottom-color:#d5dadf;--e-app-import-export-page-header-heading-color:#6d7882;--e-app-import-export-page-header-description-color:#a4afb7;border-bottom:1px solid var(--e-app-import-export-page-header-border-bottom-color);margin-bottom:2.75rem}.e-app-import-export-page-header__content-wrapper{max-width:645px}.e-app-import-export-page-header__heading{color:var(--e-app-import-export-page-header-heading-color)}.e-app-import-export-page-header__description{color:var(--e-app-import-export-page-header-description-color);margin-top:1.25rem}.eps-theme-dark .e-app-import-export-page-header{--e-app-import-export-page-header-border-bottom-color:#4c4f56;--e-app-import-export-page-header-heading-color:#e0e1e3;--e-app-import-export-page-header-description-color:#e0e1e3}.e-app-wizard-footer{--e-app-wizard-footer-border-color:#d5dadf;padding:.5rem}.e-app-wizard-footer__separator{border-top:1px solid var(--e-app-wizard-footer-border-color)}.eps-theme-dark .e-app-wizard-footer{--e-app-wizard-footer-border-color:#4c4f56}.e-app-export-templates-features__locked{--e-app-export-templates-features-locked-color:#a4afb7;color:var(--e-app-export-templates-features-locked-color)}.eps-theme-dark .e-app-export-templates-features__locked{--e-app-export-templates-features-locked-color:#7d7e82}:root{--color-box-shadow-color:rgba(0,0,0,0.05)}.eps-theme-dark{--color-box-shadow-color:rgba(0,0,0,0.1)}:root{--card-background-color:hsla(0,0%,100%,0.5);--card-background-color-hover:#fff;--card-box-shadow:0 4px 10px var(--color-box-shadow-color);--card-header-footer-border:1px solid #f1f3f5;--card-header-footer-active-border:2px solid #e2e6ea;--card-headline-color:#6d7882;--card-figure-background-color:#f1f3f5;--card-image-overlay-background-color:rgba(0,0,0,0.2)}.eps-theme-dark{--card-background-color:#404349;--card-background-color-hover:rgba(76,79,86,0.8);--card-box-shadow:0 3px 6px var(--color-box-shadow-color);--card-header-footer-border:1px solid #34383c;--card-header-footer-active-border:1px solid #26292c;--card-headline-color:#e0e1e3;--card-figure-background-color:#34383c;--card-image-overlay-background-color:rgba(52,56,60,0.5)}.eps-card{background-color:var(--card-background-color);-webkit-box-shadow:0 4px 10px var(--color-box-shadow-color);box-shadow:0 4px 10px var(--color-box-shadow-color);-webkit-border-radius:.1875rem;border-radius:.1875rem;-webkit-transition:.3s;-o-transition:.3s;transition:.3s;font-size:.75rem}.eps-card__header{padding:.625rem;border-bottom:var(--card-header-footer-border);min-height:2.5rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.eps-card__header--padding{padding:var(--eps-card-header-padding)}.eps-card__headline{color:var(--card-headline-color);margin-bottom:0;font-weight:500;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis;white-space:nowrap}.eps-card__body{padding:.625rem}.eps-card__body--padding{padding:var(--eps-card-body-padding)}.eps-card__figure{background-color:var(--card-figure-background-color);position:relative;padding-bottom:var(--card-image-aspect-ratio,95.6%);overflow:hidden;height:0}.eps-card__image{width:100%;-o-object-fit:contain;object-fit:contain;-o-object-position:top;object-position:top;position:absolute;top:0;left:0}.eps-card__image-overlay{position:absolute;top:0;background-color:var(--card-image-overlay-background-color);z-index:1;width:100%;height:100%;opacity:0;-webkit-transition:.3s;-o-transition:.3s;transition:.3s}.eps-card__image-overlay:hover{opacity:1}.eps-card__footer{padding:.625rem;border-top:var(--card-header-footer-border);font-size:.6875rem}.eps-card__footer--padding{padding:var(--eps-card-footer-padding)}.eps-card:hover{background-color:var(--card-background-color-hover)}:root{--menu-item-color:#6d7882;--menu-item-color-hover:#556068;--menu-item-background-color-active:#fff;--menu-item-icon-color:#a4afb7;--menu-item-action-button-color:#d5dadf}.eps-theme-dark{--menu-item-color:#e0e1e3;--menu-item-color-hover:#e0e1e3;--menu-item-background-color-active:#404349;--menu-item-icon-color:#b4b5b7;--menu-item-action-button-color:#64666a}.eps-menu-item{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:relative;-webkit-transition:.3s;-o-transition:.3s;transition:.3s;--action-button-opacity:0}.eps-menu-item:before{content:"";display:block;position:absolute;top:0;inset-inline-start:0;height:100%;width:var(--menu-item-pointer-width);background-color:#58d0f5}.eps-menu-item:hover{--action-button-opacity:1}.eps-menu-item--active,.eps-menu-item:hover{--menu-item-color:var(--menu-item-color-hover);--eps-link-color:var(--menu-item-color-hover);--menu-item-icon-color:#58d0f5}.eps-menu-item--active{background-color:var(--menu-item-background-color-active)}.eps-menu-item__link{padding:.5rem 1.875rem;min-height:2.75rem;font-size:.75rem;line-height:1.2;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:var(--menu-item-color);--eps-link-color:var(--menu-item-color)}.eps-menu-item__link:not(:last-child){-webkit-padding-end:0;padding-inline-end:0}.eps-menu-item__link .eps-icon{font-size:1.125rem;color:var(--menu-item-icon-color);-webkit-margin-end:.75rem;margin-inline-end:.75rem}.eps-menu-item__action-button{color:var(--menu-item-action-button-color);opacity:var(--action-button-opacity);padding:.625rem;-webkit-transition:.3s;-o-transition:.3s;transition:.3s;-webkit-margin-end:1.25rem;margin-inline-end:1.25rem}.eps-menu-item--active{--menu-item-pointer-width:0.3125rem;-webkit-box-shadow:0 3px 6px var(--color-box-shadow-color);box-shadow:0 3px 6px var(--color-box-shadow-color)}.eps-menu-item--active .eps-menu-item__link .eps-icon{color:#58d0f5}.eps-grid-container{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;width:100%}.eps-grid-container--no-wrap{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.eps-grid-container--wrap-reverse{-ms-flex-wrap:wrap-reverse;flex-wrap:wrap-reverse}.eps-grid-container--spacing{--grid-row-gutter:calc(-1 * calc(var(--grid-spacing-gutter) * 0.0625rem));width:var(--grid-spacing-width);margin:var(--grid-row-gutter)}.eps-grid-container--spacing>.eps-grid-item{padding:var(--grid-spacing-gutter)}.eps-grid--direction-row{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.eps-grid--direction-row-reverse{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.eps-grid--direction-column{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.eps-grid--direction-column-reverse{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse}.eps-grid--justify-stretch{-webkit-box-pack:stretch;-ms-flex-pack:stretch;justify-content:stretch}.eps-grid--justify-start{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.eps-grid--justify-center{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.eps-grid--justify-end{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.eps-grid--justify-space-between{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.eps-grid--justify-space-around{-ms-flex-pack:distribute;justify-content:space-around}.eps-grid--justify-space-evenly{-webkit-box-pack:space-evenly;-ms-flex-pack:space-evenly;justify-content:space-evenly}.eps-grid--align-content-stretch{-ms-flex-line-pack:stretch;align-content:stretch}.eps-grid--align-content-start{-ms-flex-line-pack:start;align-content:flex-start}.eps-grid--align-content-center{-ms-flex-line-pack:center;align-content:center}.eps-grid--align-content-end{-ms-flex-line-pack:end;align-content:flex-end}.eps-grid--align-content-space-between{-ms-flex-line-pack:justify;align-content:space-between}.eps-grid--align-items-start{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.eps-grid--align-items-center{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.eps-grid--align-items-end{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.eps-grid--align-items-baseline{-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}.eps-grid--align-items-stretch{-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch}.eps-grid-item--zero-min-width{min-width:0}@media screen and (min-width:480px){.eps-grid-item-sm{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:100%;-ms-flex-preferred-size:0;flex-basis:0}}@media screen and (min-width:768px){.eps-grid-item-md{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:100%;-ms-flex-preferred-size:0;flex-basis:0}}@media screen and (min-width:1025px){.eps-grid-item-lg{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:100%;-ms-flex-preferred-size:0;flex-basis:0}}@media screen and (min-width:1440px){.eps-grid-item-xl{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:100%;-ms-flex-preferred-size:0;flex-basis:0}}@media screen and (min-width:1600px){.eps-grid-item-xxl{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:100%;-ms-flex-preferred-size:0;flex-basis:0}}.eps-grid-item-xs-1{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:8.3333333333%;-ms-flex-preferred-size:8.3333333333%;flex-basis:8.3333333333%}.eps-grid-item-xs-2{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:16.6666666667%;-ms-flex-preferred-size:16.6666666667%;flex-basis:16.6666666667%}.eps-grid-item-xs-3{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:25%;-ms-flex-preferred-size:25%;flex-basis:25%}.eps-grid-item-xs-4{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:33.3333333333%;-ms-flex-preferred-size:33.3333333333%;flex-basis:33.3333333333%}.eps-grid-item-xs-5{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:41.6666666667%;-ms-flex-preferred-size:41.6666666667%;flex-basis:41.6666666667%}.eps-grid-item-xs-6{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:50%;-ms-flex-preferred-size:50%;flex-basis:50%}.eps-grid-item-xs-7{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:58.3333333333%;-ms-flex-preferred-size:58.3333333333%;flex-basis:58.3333333333%}.eps-grid-item-xs-8{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:66.6666666667%;-ms-flex-preferred-size:66.6666666667%;flex-basis:66.6666666667%}.eps-grid-item-xs-9{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:75%;-ms-flex-preferred-size:75%;flex-basis:75%}.eps-grid-item-xs-10{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:83.3333333333%;-ms-flex-preferred-size:83.3333333333%;flex-basis:83.3333333333%}.eps-grid-item-xs-11{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:91.6666666667%;-ms-flex-preferred-size:91.6666666667%;flex-basis:91.6666666667%}.eps-grid-item-xs-12{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:100%;-ms-flex-preferred-size:100%;flex-basis:100%}@media screen and (min-width:480px){.eps-grid-item-sm-1{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:8.3333333333%;-ms-flex-preferred-size:8.3333333333%;flex-basis:8.3333333333%}.eps-grid-item-sm-2{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:16.6666666667%;-ms-flex-preferred-size:16.6666666667%;flex-basis:16.6666666667%}.eps-grid-item-sm-3{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:25%;-ms-flex-preferred-size:25%;flex-basis:25%}.eps-grid-item-sm-4{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:33.3333333333%;-ms-flex-preferred-size:33.3333333333%;flex-basis:33.3333333333%}.eps-grid-item-sm-5{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:41.6666666667%;-ms-flex-preferred-size:41.6666666667%;flex-basis:41.6666666667%}.eps-grid-item-sm-6{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:50%;-ms-flex-preferred-size:50%;flex-basis:50%}.eps-grid-item-sm-7{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:58.3333333333%;-ms-flex-preferred-size:58.3333333333%;flex-basis:58.3333333333%}.eps-grid-item-sm-8{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:66.6666666667%;-ms-flex-preferred-size:66.6666666667%;flex-basis:66.6666666667%}.eps-grid-item-sm-9{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:75%;-ms-flex-preferred-size:75%;flex-basis:75%}.eps-grid-item-sm-10{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:83.3333333333%;-ms-flex-preferred-size:83.3333333333%;flex-basis:83.3333333333%}.eps-grid-item-sm-11{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:91.6666666667%;-ms-flex-preferred-size:91.6666666667%;flex-basis:91.6666666667%}.eps-grid-item-sm-12{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:100%;-ms-flex-preferred-size:100%;flex-basis:100%}}@media screen and (min-width:768px){.eps-grid-item-md-1{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:8.3333333333%;-ms-flex-preferred-size:8.3333333333%;flex-basis:8.3333333333%}.eps-grid-item-md-2{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:16.6666666667%;-ms-flex-preferred-size:16.6666666667%;flex-basis:16.6666666667%}.eps-grid-item-md-3{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:25%;-ms-flex-preferred-size:25%;flex-basis:25%}.eps-grid-item-md-4{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:33.3333333333%;-ms-flex-preferred-size:33.3333333333%;flex-basis:33.3333333333%}.eps-grid-item-md-5{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:41.6666666667%;-ms-flex-preferred-size:41.6666666667%;flex-basis:41.6666666667%}.eps-grid-item-md-6{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:50%;-ms-flex-preferred-size:50%;flex-basis:50%}.eps-grid-item-md-7{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:58.3333333333%;-ms-flex-preferred-size:58.3333333333%;flex-basis:58.3333333333%}.eps-grid-item-md-8{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:66.6666666667%;-ms-flex-preferred-size:66.6666666667%;flex-basis:66.6666666667%}.eps-grid-item-md-9{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:75%;-ms-flex-preferred-size:75%;flex-basis:75%}.eps-grid-item-md-10{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:83.3333333333%;-ms-flex-preferred-size:83.3333333333%;flex-basis:83.3333333333%}.eps-grid-item-md-11{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:91.6666666667%;-ms-flex-preferred-size:91.6666666667%;flex-basis:91.6666666667%}.eps-grid-item-md-12{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:100%;-ms-flex-preferred-size:100%;flex-basis:100%}}@media screen and (min-width:1025px){.eps-grid-item-lg-1{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:8.3333333333%;-ms-flex-preferred-size:8.3333333333%;flex-basis:8.3333333333%}.eps-grid-item-lg-2{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:16.6666666667%;-ms-flex-preferred-size:16.6666666667%;flex-basis:16.6666666667%}.eps-grid-item-lg-3{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:25%;-ms-flex-preferred-size:25%;flex-basis:25%}.eps-grid-item-lg-4{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:33.3333333333%;-ms-flex-preferred-size:33.3333333333%;flex-basis:33.3333333333%}.eps-grid-item-lg-5{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:41.6666666667%;-ms-flex-preferred-size:41.6666666667%;flex-basis:41.6666666667%}.eps-grid-item-lg-6{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:50%;-ms-flex-preferred-size:50%;flex-basis:50%}.eps-grid-item-lg-7{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:58.3333333333%;-ms-flex-preferred-size:58.3333333333%;flex-basis:58.3333333333%}.eps-grid-item-lg-8{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:66.6666666667%;-ms-flex-preferred-size:66.6666666667%;flex-basis:66.6666666667%}.eps-grid-item-lg-9{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:75%;-ms-flex-preferred-size:75%;flex-basis:75%}.eps-grid-item-lg-10{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:83.3333333333%;-ms-flex-preferred-size:83.3333333333%;flex-basis:83.3333333333%}.eps-grid-item-lg-11{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:91.6666666667%;-ms-flex-preferred-size:91.6666666667%;flex-basis:91.6666666667%}.eps-grid-item-lg-12{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:100%;-ms-flex-preferred-size:100%;flex-basis:100%}}@media screen and (min-width:1440px){.eps-grid-item-xl-1{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:8.3333333333%;-ms-flex-preferred-size:8.3333333333%;flex-basis:8.3333333333%}.eps-grid-item-xl-2{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:16.6666666667%;-ms-flex-preferred-size:16.6666666667%;flex-basis:16.6666666667%}.eps-grid-item-xl-3{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:25%;-ms-flex-preferred-size:25%;flex-basis:25%}.eps-grid-item-xl-4{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:33.3333333333%;-ms-flex-preferred-size:33.3333333333%;flex-basis:33.3333333333%}.eps-grid-item-xl-5{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:41.6666666667%;-ms-flex-preferred-size:41.6666666667%;flex-basis:41.6666666667%}.eps-grid-item-xl-6{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:50%;-ms-flex-preferred-size:50%;flex-basis:50%}.eps-grid-item-xl-7{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:58.3333333333%;-ms-flex-preferred-size:58.3333333333%;flex-basis:58.3333333333%}.eps-grid-item-xl-8{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:66.6666666667%;-ms-flex-preferred-size:66.6666666667%;flex-basis:66.6666666667%}.eps-grid-item-xl-9{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:75%;-ms-flex-preferred-size:75%;flex-basis:75%}.eps-grid-item-xl-10{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:83.3333333333%;-ms-flex-preferred-size:83.3333333333%;flex-basis:83.3333333333%}.eps-grid-item-xl-11{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:91.6666666667%;-ms-flex-preferred-size:91.6666666667%;flex-basis:91.6666666667%}.eps-grid-item-xl-12{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:100%;-ms-flex-preferred-size:100%;flex-basis:100%}}@media screen and (min-width:1600px){.eps-grid-item-xxl-1{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:8.3333333333%;-ms-flex-preferred-size:8.3333333333%;flex-basis:8.3333333333%}.eps-grid-item-xxl-2{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:16.6666666667%;-ms-flex-preferred-size:16.6666666667%;flex-basis:16.6666666667%}.eps-grid-item-xxl-3{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:25%;-ms-flex-preferred-size:25%;flex-basis:25%}.eps-grid-item-xxl-4{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:33.3333333333%;-ms-flex-preferred-size:33.3333333333%;flex-basis:33.3333333333%}.eps-grid-item-xxl-5{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:41.6666666667%;-ms-flex-preferred-size:41.6666666667%;flex-basis:41.6666666667%}.eps-grid-item-xxl-6{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:50%;-ms-flex-preferred-size:50%;flex-basis:50%}.eps-grid-item-xxl-7{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:58.3333333333%;-ms-flex-preferred-size:58.3333333333%;flex-basis:58.3333333333%}.eps-grid-item-xxl-8{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:66.6666666667%;-ms-flex-preferred-size:66.6666666667%;flex-basis:66.6666666667%}.eps-grid-item-xxl-9{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:75%;-ms-flex-preferred-size:75%;flex-basis:75%}.eps-grid-item-xxl-10{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:83.3333333333%;-ms-flex-preferred-size:83.3333333333%;flex-basis:83.3333333333%}.eps-grid-item-xxl-11{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:91.6666666667%;-ms-flex-preferred-size:91.6666666667%;flex-basis:91.6666666667%}.eps-grid-item-xxl-12{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;max-width:100%;-ms-flex-preferred-size:100%;flex-basis:100%}}.eps-theme-dark,:root{--menu-title-color:#6d7882}.eps-menu ul{list-style:none;padding:0;margin:0}.eps-menu ul li{display:-webkit-box;display:-ms-flexbox;display:flex}.eps-menu__title{padding:.5rem 1.875rem;font-size:.6875rem;line-height:1.2;text-transform:uppercase;font-weight:400;color:var(--menu-title-color)}:root{--eps-modal-background-color:#fff;--eps-modal-header-background-color:#58d0f5}.eps-theme-dark{--eps-modal-background-color:#34383c;--eps-modal-header-background-color:#58d0f5}.eps-modal{max-width:43.75rem;background:var(--eps-modal-background-color);-webkit-border-radius:.1875rem;border-radius:.1875rem;-webkit-animation:eps-animation-pop .15s cubic-bezier(.57,.53,.71,1.47) forwards;animation:eps-animation-pop .15s cubic-bezier(.57,.53,.71,1.47) forwards}.eps-modal__overlay{background:rgba(0,0,0,.5);position:fixed;display:-webkit-box;display:-ms-flexbox;display:flex;top:0;left:0;width:100%;height:100%;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;z-index:1030}.eps-modal__header{font-size:.875rem;background:var(--eps-modal-header-background-color);height:2.75rem;padding:.625rem 1rem;-webkit-border-radius:.1875rem;border-radius:.1875rem}.eps-modal__header,.eps-modal__header .title{color:#fff}.eps-modal__icon{-webkit-margin-end:.625rem;margin-inline-end:.625rem}.eps-modal__body{padding:1.875rem}.eps-modal .eps-tip,.eps-modal__tip{-webkit-padding-start:.75rem;padding-inline-start:.75rem;-webkit-border-start:3px solid #58d0f5;border-inline-start:3px solid #58d0f5}.eps-modal .eps-tip:not(:last-child),.eps-modal__tip:not(:last-child){margin-bottom:1.875rem}.eps-modal .eps-tip:not(:first-child),.eps-modal__section:not(:first-child),.eps-modal__tip:not(:first-child){margin-top:1.875rem}.eps-modal__close-wrapper{-webkit-padding-start:1rem;padding-inline-start:1rem;-webkit-border-start:solid 1px #fff;border-inline-start:solid 1px #fff}.eps-add-new-button{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;--eps-add-new-button-size:1.5rem;line-height:var(--eps-add-new-button-size);cursor:pointer}.eps-add-new-button .eps-icon{background-color:#58d0f5;color:#fff;width:var(--eps-add-new-button-size);height:var(--eps-add-new-button-size);-webkit-border-radius:100%;border-radius:100%;font-size:calc(var(--eps-add-new-button-size) * .75);text-align:center;line-height:var(--eps-add-new-button-size)}.eps-add-new-button span:not(.sr-only){-webkit-margin-start:.625rem;margin-inline-start:.625rem;font-weight:500}.eps-add-new-button--sm{--eps-add-new-button-size:1rem}:root{--select2-selection-background-color:#fff;--select2-selection-color:#6d7882;--select2-selection-border-color:#d5dadf;--select2-selection-opened-focused-border-color:#f1f3f5;--select2-single-selection-rendered-color:#6d7882;--select2-default-single-selection-background-color:#fff;--select2-default-single-selection-border-color:#d5dadf;--select2-default-multiple-selection-background-color:#fff;--select2-default-multiple-selection-choice-background-color:#f1f3f5;--select2-default-multiple-selection-choice-color:#6d7882;--select2-default-multiple-selection-choice-border-color:#f1f3f5;--select2-default-multiple-selection-choice-remove-color:#a4afb7;--select2-default-multiple-selection-choice-remove-hover-color:#6d7882;--select2-default-results-selected-option-background-color:#fff;--select2-default-results-selected-option-color:#6d7882;--select2-default-results-highlighted-option-background-color:#5897fb;--select2-default-results-highlighted-option-color:#fff;--select2-results-selected-option-background-color:#5897fb;--select2-results-selected-option-color:#fff;--select2-dropdown-background-color:#fff;--select2-dropdown-border-color:#d5dadf}.eps-theme-dark{--select2-selection-background-color:#34383c;--select2-selection-color:#e0e1e3;--select2-selection-border-color:#64666a;--select2-selection-opened-focused-border-color:#7d7e82;--select2-single-selection-rendered-color:#e0e1e3;--select2-default-single-selection-background-color:#34383c;--select2-default-single-selection-border-color:#4c4f56;--select2-default-multiple-selection-background-color:#34383c;--select2-default-multiple-selection-choice-background-color:#4c4f56;--select2-default-multiple-selection-choice-color:#e0e1e3;--select2-default-multiple-selection-choice-border-color:#4c4f56;--select2-default-multiple-selection-choice-remove-color:#b4b5b7;--select2-default-multiple-selection-choice-remove-hover-color:#e0e1e3;--select2-default-results-selected-option-background-color:#34383c;--select2-default-results-selected-option-color:#e0e1e3;--select2-default-results-highlighted-option-background-color:#4c4f56;--select2-default-results-highlighted-option-color:#e0e1e3;--select2-results-selected-option-background-color:#4c4f56;--select2-results-selected-option-color:#e0e1e3;--select2-dropdown-background-color:#34383c;--select2-dropdown-border-color:#64666a}.select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--multiple,.select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--single{background-color:var(--select2-selection-background-color);color:var(--select2-selection-color);border-color:var(--select2-selection-border-color)}.select2-container.select2-container--focus .select2-selection--multiple,.select2-container.select2-container--focus .select2-selection--single,.select2-container.select2-container--open .select2-selection--multiple,.select2-container.select2-container--open .select2-selection--single{border-color:var(--select2-selection-opened-focused-border-color)}.select2-container.select2-container--default .select2-selection--single .select2-selection__rendered{color:var(--select2-single-selection-rendered-color)}.select2-container--default .select2-selection--single{background-color:var(--select2-default-single-selection-background-color);border-color:var(--select2-default-single-selection-border-color)}.select2-container--default .select2-selection--multiple{background-color:var(--select2-default-multiple-selection-background-color)}.select2-container--default .select2-selection--multiple .select2-selection__choice{background-color:var(--select2-default-multiple-selection-choice-background-color);color:var(--select2-default-multiple-selection-choice-color);border-color:var(--select2-default-multiple-selection-choice-border-color)}.select2-container--default .select2-selection--multiple .select2-selection__choice__remove{color:var(--select2-default-multiple-selection-choice-remove-color)}.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover{color:var(--select2-default-multiple-selection-choice-remove-hover-color)}.select2-container--default .select2-results__option[aria-selected]{background-color:var(--select2-default-results-selected-option-background-color);color:var(--select2-default-results-selected-option-color)}.select2-container--default .select2-results__option--highlighted[aria-selected]{background-color:var(--select2-default-results-highlighted-option-background-color);color:var(--select2-default-results-highlighted-option-color)}.select2-container .select2-results__option[aria-selected=true]{background-color:var(--select2-results-selected-option-background-color);color:var(--select2-results-selected-option-color)}.select2-container .select2-dropdown{background-color:var(--select2-dropdown-background-color);border-color:var(--select2-dropdown-border-color)}.eps-notice{--eps-box-notice-color:#a4afb7;--eps-box-notice-background-color:#fcfcfc;padding:.625rem 1rem;-webkit-box-shadow:0 2px 3px 1px var(--color-box-shadow-color);box-shadow:0 2px 3px 1px var(--color-box-shadow-color);background-color:var(--eps-box-notice-background-color)}.eps-notice--warning{-webkit-border-start:3px solid #fcb92c;border-inline-start:3px solid #fcb92c}.eps-notice__text{margin:0;padding:0;color:var(--eps-box-notice-color);font-style:italic}.eps-theme-dark .eps-notice{--eps-box-notice-color:#b4b5b7;--eps-box-notice-background-color:#404349}.eps-list{--eps-list-item-separated-border-color:#f1f3f5;padding:0;margin:0;list-style-type:none}.eps-list--padding{padding:var(--eps-list-padding)}.eps-list__item{padding:0}.eps-list__item--padding{padding:var(--eps-list-item-padding)}.eps-list--separated .eps-list__item:not(:last-child){border-bottom:1px solid var(--eps-list-item-separated-border-color)}.eps-theme-dark .eps-list{--eps-list-item-separated-border-color:#34383c}:root{--popover-background-color:#fff;--popover-item-color:#6d7882;--popover-item-hover-color:#556068;--popover-item-danger-hover-color:#b01b1b;--popover-item-background-color:#fff;--popover-box-shadow-color:rgba(0,0,0,0.15);--popover-box-shadow-size:0px 1px 20px;--popover-arrow-color:#fff}.eps-theme-dark{--popover-background-color:#4c4f56;--popover-item-color:#fff;--popover-item-hover-color:#e0e1e3;--popover-item-danger-hover-color:#f84343;--popover-item-background-color:#4c4f56;--popover-box-shadow-color:rgba(0,0,0,0.15);--popover-box-shadow-size:0px 1px 20px;--popover-arrow-color:#4c4f56}.eps-popover{padding:10px 0;background-color:var(--popover-background-color);-webkit-box-shadow:var(--popover-box-shadow-size) var(--popover-box-shadow-color);box-shadow:var(--popover-box-shadow-size) var(--popover-box-shadow-color);list-style:none;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;min-width:120px;-webkit-border-radius:.1875rem;border-radius:.1875rem;position:absolute;z-index:1050;margin-top:9px;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);left:.25rem}.eps-popover__background{position:fixed;top:0;bottom:0;left:0;right:0;z-index:1030}.eps-popover__container{position:relative}.eps-popover:before{content:"";display:block;position:absolute;width:16px;height:9px;margin:0 .1875rem 9px;top:-9px;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);border-left:8px solid transparent;border-right:8px solid transparent;border-top:0 solid transparent;border-bottom:9px solid transparent;border-bottom-color:var(--popover-arrow-color)}.eps-popover__item{padding:.3125rem 1rem;background-color:var(--popover-item-background-color);color:var(--popover-item-color);font-size:.6875rem;font-weight:500;line-height:.8125rem;width:100%;-webkit-box-align:center;-ms-flex-align:center;align-items:center;cursor:pointer}.eps-popover__item:hover{color:var(--popover-item-hover-color)}.eps-popover__item--danger:hover{color:var(--popover-item-danger-hover-color)}.eps-popover__item .eps-icon{font-size:inherit;-webkit-margin-end:.3125rem;margin-inline-end:.3125rem}.eps-css-grid{display:grid;grid-template-columns:repeat(var(--eps-grid-columns,auto-fill),minmax(var(--eps-grid-col-min-width,1fr),var(--eps-grid-col-max-width,1fr)));grid-gap:var(--eps-grid-spacing)}.eps-box{--eps-box-background-color:#fff;--eps-box-color:#495157;--eps-box-input-color:#495157;padding:0;-webkit-border-radius:.1875rem;border-radius:.1875rem;background-color:var(--eps-box-background-color);color:var(--eps-box-color)}.eps-box--padding{padding:var(--eps-box-padding)}.eps-box>input{width:100%;outline:0;border:0;background-color:var(--eps-box-background-color);color:var(--eps-box-input-color)}.eps-theme-dark .eps-box{--eps-box-background-color:#404349;--eps-box-color:#e0e1e3;--eps-box-input-color:#e0e1e3}:root{--checkbox-border-color:#d5dadf;--checkbox-hover-border-color:#c7cdd4;--checkbox-active-border-color:#e3e7ea;--checkbox-background-color:#fff;--checkbox-checked-background-color:#39b54a;--checkbox-checked-hover-background-color:#33a242;--checkbox-checked-active-background-color:#44c455;--checkbox-indicator-color:#fff}.eps-theme-dark{--checkbox-background-color:transparent}.eps-checkbox{-webkit-appearance:none;-webkit-border-radius:.1875rem;border-radius:.1875rem;width:15px;height:15px;outline:0;background-color:var(--checkbox-background-color);display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;border:1px solid var(--checkbox-border-color)}.eps-checkbox:after{display:inline-block;margin-bottom:12.5%;content:" ";width:3px;height:6px;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.eps-checkbox:hover{--checkbox-border-color:var(--checkbox-hover-border-color)}.eps-checkbox:active{--checkbox-border-color:var(--checkbox-active-border-color)}.eps-checkbox:checked{--checkbox-background-color:var(--checkbox-checked-background-color);--checkbox-border-color:var(--checkbox-checked-background-color)}.eps-checkbox:checked:after{border:solid #fff;border-width:0 1px 1px 0}.eps-checkbox:checked:hover{--checkbox-background-color:var(--checkbox-checked-hover-background-color);--checkbox-border-color:var(--checkbox-checked-hover-background-color)}.eps-checkbox:checked:active{--checkbox-background-color:var(--checkbox-checked-active-background-color);--checkbox-border-color:var(--checkbox-checked-active-background-color)}.eps-checkbox--rounded{-webkit-border-radius:50%;border-radius:50%}:root{--e-app-drag-drop-background-color:#fff;--e-app-drag-drop-outline-color:#d5dadf}.eps-theme-dark{--e-app-drag-drop-background-color:#404349;--e-app-drag-drop-outline-color:#7d7e82}.e-app-drag-drop{background-color:var(--e-app-drag-drop-background-color);outline:2px dashed var(--e-app-drag-drop-outline-color);outline-offset:-.75rem;margin-bottom:1.5rem;padding:4.125rem;text-align:center}.e-app-drag-drop--drag-over{outline-color:#58d0f5}.eps-dialog{-webkit-border-radius:3px;border-radius:3px;width:375px}.eps-dialog__close-button{position:absolute;top:-2.75rem;right:-2.75rem;margin-top:.625rem;margin-right:.625rem;z-index:1040;font-size:1.25rem;color:#fff}.eps-dialog__content{padding:1.5rem 1.875rem 1rem;font-size:.75rem}.eps-dialog__text,.eps-dialog__title{text-align:center}.eps-dialog__buttons{display:-webkit-box;display:-ms-flexbox;display:flex}.eps-dialog__button{-webkit-box-flex:1;-ms-flex:1;flex:1;border-top:1px solid var(--hr-color);line-height:2.75rem;text-align:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.eps-dialog__button:last-child:not(:first-child){-webkit-border-start:1px solid var(--hr-color);border-inline-start:1px solid var(--hr-color)}.eps-inline-link{color:var(--eps-inline-link-color);background-color:initial;border:0;padding:0}.eps-inline-link--color-primary{--eps-inline-link-color:#39b54a}.eps-inline-link--color-secondary{--eps-inline-link-color:#c2cbd2}.eps-inline-link--color-danger{--eps-inline-link-color:#b01b1b}.eps-inline-link--color-cta{--eps-inline-link-color:#93003f}.eps-inline-link--color-link{--eps-inline-link-color:#58d0f5}.eps-inline-link--color-disabled{--eps-inline-link-color:#c2cbd2}.eps-inline-link--underline-always,.eps-inline-link--underline-always:hover,.eps-inline-link--underline-hover:hover{text-decoration:underline}.eps-inline-link--italic{font-style:italic}.eps-inline-link,.eps-inline-link:focus{outline:none}.eps-text-field{--eps-text-field-color:#6d7882;--eps-text-field-background-color:#fff;--eps-text-field-placeholder-color:#a4afb7;--eps-text-field-outlined-border-color:#d5dadf;--eps-text-field-outlined-focus-border-color:#c2cbd2;width:100%;color:var(--eps-text-field-color);background-color:var(--eps-text-field-background-color);border:0;outline:none;font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;font-size:.875rem;font-weight:400;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.eps-text-field--outlined{-webkit-border-radius:.1875rem;border-radius:.1875rem;border:1px solid var(--eps-text-field-outlined-border-color);padding:.625rem}.eps-text-field--outlined:focus{border-color:var(--eps-text-field-outlined-focus-border-color)}.eps-text-field::-webkit-input-placeholder{color:var(--eps-text-field-placeholder-color);font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;font-size:.875rem;font-weight:400;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.eps-text-field::-moz-placeholder{color:var(--eps-text-field-placeholder-color);font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;font-size:.875rem;font-weight:400;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.eps-text-field::-ms-input-placeholder{color:var(--eps-text-field-placeholder-color);font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;font-size:.875rem;font-weight:400;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.eps-text-field::placeholder{color:var(--eps-text-field-placeholder-color);font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;font-size:.875rem;font-weight:400;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.eps-theme-dark .eps-text-field{--eps-text-field-color:#b4b5b7;--eps-text-field-background-color:#34383c;--eps-text-field-placeholder-color:#7d7e82;--eps-text-field-outlined-border-color:#64666a;--eps-text-field-outlined-focus-border-color:#7d7e82}.e-app-import-export-content-layout{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;height:100%}.e-app-import-export-content-layout__container{-ms-flex-preferred-size:1075px;flex-basis:1075px}.e-app-export-complete__kit-content-title{margin:2.75rem 0 .625rem}.e-app-export-kit-content{--e-app-export-kit-content-title-color:#556068;--e-app-export-kit-content-description-color:#6d7882}.e-app-export-kit-content__checkbox{-ms-flex-negative:0;flex-shrink:0;-webkit-margin-end:.75rem;margin-inline-end:.75rem}.e-app-export-kit-content__title{color:var(--e-app-export-kit-content-title-color)}.e-app-export-kit-content__description{color:var(--e-app-export-kit-content-description-color);-webkit-margin-end:1.25rem;margin-inline-end:1.25rem}.e-app-export-kit-content__notice{margin-top:1rem}.eps-theme-dark .e-app-export-kit-content{--e-app-export-kit-content-title-color:#e0e1e3;--e-app-export-kit-content-description-color:#b4b5b7}.e-app-export-complete-kit-data-list{--e-app-export-complete-kit-data-border-color:#d5dadf}.e-app-export-complete-kit-data-list__item{padding:.625rem 0;border-bottom:1px solid var(--e-app-export-complete-kit-data-border-color)}.eps-theme-dark .e-app-export-complete-kit-data-list{--e-app-export-complete-kit-data-border-color:#4c4f56}.e-app-import-resolver{--e-app-import-resolver-panel-header-background-color:#fff;--e-app-import-resolver-panel-body-background-color:hsla(0,0%,100%,0.5);--e-app-import-resolver-conflicts-asset-border-color:#c2cbd2;--e-app-import-resolver-conflicts-asset-inactive-color:#a4afb7;padding-bottom:1.25rem}.e-app-import-resolver__notice{margin-bottom:1.25rem}.e-app-import-resolver__panel,.e-app-import-resolver__panel:hover{background-color:initial}.e-app-import-resolver__panel-header{background-color:var(--e-app-import-resolver-panel-header-background-color)}.e-app-import-resolver__panel-body{background-color:var(--e-app-import-resolver-panel-body-background-color)}.e-app-import-resolver-conflicts__container{-webkit-box-shadow:0 2px 3px 1px var(--color-box-shadow-color);box-shadow:0 2px 3px 1px var(--color-box-shadow-color)}.e-app-import-resolver-conflicts__checkbox{-ms-flex-negative:0;flex-shrink:0;-webkit-margin-end:.75rem;margin-inline-end:.75rem}.e-app-import-resolver-conflicts__title{line-height:1}.e-app-import-resolver-conflicts__asset:not(:first-child){-webkit-border-start:2px solid var(--e-app-import-resolver-conflicts-asset-border-color);border-inline-start:2px solid var(--e-app-import-resolver-conflicts-asset-border-color);-webkit-padding-start:1rem;padding-inline-start:1rem;-webkit-margin-start:1rem;margin-inline-start:1rem}.e-app-import-resolver-conflicts__asset:not(.active){color:var(--e-app-import-resolver-conflicts-asset-inactive-color)}.e-app-import-resolver-conflicts__edit-template{-webkit-margin-start:.3125rem;margin-inline-start:.3125rem}.eps-theme-dark .e-app-import-resolver{--e-app-import-resolver-panel-header-background-color:#4c4f56;--e-app-import-resolver-panel-body-background-color:rgba(0,0,0,0.05);--e-app-import-resolver-conflicts-asset-border-color:#64666a;--e-app-import-resolver-conflicts-asset-inactive-color:#7d7e82}.e-app-import-export-panel{--e-app-import-export-panel-header-background-color:#fff;--e-app-import-export-panel-body-background-color:hsla(0,0%,100%,0.5)}.e-app-import-export-panel,.e-app-import-export-panel:hover{background-color:initial}.e-app-import-export-panel__header{background-color:var(--e-app-import-export-panel-header-background-color);-webkit-border-radius:.1875rem;border-radius:.1875rem}.e-app-import-export-panel__body{background-color:var(--e-app-import-export-panel-body-background-color);-webkit-border-radius:0 0 .1875rem .1875rem;border-radius:0 0 .1875rem .1875rem}.eps-theme-dark .e-app-import-export-panel{--e-app-import-export-panel-header-background-color:#404349;--e-app-import-export-panel-body-background-color:rgba(64,67,73,0.5)}.e-app-export-kit{padding-bottom:1.25rem}.e-app-export-kit-information{margin-top:1.25rem}.e-app-export-kit-information__field-header{margin-bottom:.625rem}.e-app-export-kit-information__label{margin:0}.e-app-export-kit-information__info-icon{-webkit-margin-start:.625rem;margin-inline-start:.625rem}.e-app-export-kit-info-modal__icon{-webkit-padding-start:.625rem;padding-inline-start:.625rem}.e-app-export-kit-info-modal__heading{margin-bottom:1.25rem}.e-app-import-export-info-modal__section:not(:first-child){margin-top:1.875rem}.e-app-import-export-info-modal__heading{margin-bottom:1.25rem}:root{--eps-badge-background-color:#fff}.eps-theme-dark{--eps-badge-background-color:#404349}.eps-badge{display:inline-block;background:var(--eps-badge-background-color);padding:0 .5rem;line-height:1.8;-webkit-box-shadow:0 3px 6px var(--color-box-shadow-color);box-shadow:0 3px 6px var(--color-box-shadow-color);-webkit-border-radius:4px;border-radius:4px;font-size:.75rem}.eps-badge--sm{font-size:.625rem;-webkit-border-radius:3px;border-radius:3px;padding:0 .3125rem;line-height:1.5}.eps-collapse__title{cursor:pointer;padding:.3125rem 0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;width:100%;background:transparent;border:none;color:inherit}.eps-collapse__title:focus{outline:none}.eps-collapse__icon{-webkit-transition:all .15s;-o-transition:all .15s;transition:all .15s;-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.eps-collapse__content{margin-top:.625rem;display:none}.eps-collapse[data-open] .eps-collapse__content{display:block}.eps-collapse[data-open] .eps-collapse__icon{-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.e-kit-library-bottom-promotion{--e-kit-library-bottom-promotion-color:tints(600)}.eps-theme-dark .e-kit-library-bottom-promotion{--e-kit-library-bottom-promotion-color:dark-tints(400)}.e-kit-library-bottom-promotion{width:100%;text-align:center;margin-top:1.875rem;color:var(--e-kit-library-bottom-promotion-color)}.e-kit-library__error-screen{margin-top:2.75rem}.e-kit-library__error-screen-title{margin-top:2.75rem;margin-bottom:0}.e-kit-library__error-screen-description{margin-top:1.5rem;color:#a4afb7;text-align:center;max-width:520px}.e-kit-library__kit-favorite-actions{padding:.3125rem;-webkit-transition:all .3s;-o-transition:.3s all;transition:all .3s;-webkit-border-radius:4px;border-radius:4px}.e-kit-library__kit-favorite-actions--active{color:#b01b1b}.e-kit-library__kit-favorite-actions--loading{opacity:1%;cursor:default}.e-kit-library__kit-favorite-actions:hover{background-color:rgba(176,27,27,.1)}.e-kit-library__filter-indication{margin-top:1.5rem}.e-kit-library__filter-indication,.e-kit-library__filter-indication-text{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.e-kit-library__filter-indication-text{margin-bottom:0}.e-kit-library__filter-indication-badge{margin-right:.3125rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.e-kit-library__filter-indication-badge-remove{margin-right:.3125rem;font-size:.875rem}.e-kit-library__filter-indication-button{margin-right:1.5rem}#eps-app-header-btn-apply,#eps-app-header-btn-connect,#eps-app-header-btn-promotion{margin-right:.625rem;margin-left:.625rem}.e-kit-library__apply-button{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;gap:.3125rem}.e-kit-library__kit-item{--e-kit-library-kit-item-overlay-promotion-button-background-color:#fcfcfc}.eps-theme-dark .e-kit-library__kit-item{--e-kit-library-kit-item-overlay-promotion-button-background-color:#404349}.e-kit-library__kit-item-overlay{height:100%}.e-kit-library__kit-item-overlay>:first-child{-webkit-box-flex:1;-ms-flex:1;flex:1}.e-kit-library__kit-item-overlay-overview-button{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;color:#fff;height:100%;width:100%}.e-kit-library__kit-item-overlay-overview-button>i{font-size:2rem;margin-bottom:5px}.e-kit-library__kit-item-overlay-overview-button>span{font-size:.9rem}.e-kit-library__kit-item-overlay-promotion-button{display:-webkit-box;display:-ms-flexbox;display:flex;width:100%;background:#fff;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:10px;font-size:13px;color:#93003f;background:var(--e-kit-library-kit-item-overlay-promotion-button-background-color)}.e-kit-library__kit-item-overlay-promotion-button>*{margin:0 3px}.e-kit-library__kit-item-subscription-plan-badge{position:absolute;top:0;right:0;margin:.3125rem;color:#fff;text-transform:uppercase}:root{--e-kit-library-header-back-border:1px solid #f1f3f5;--e-kit-library-header-back-color:#a4afb7}.eps-theme-dark{--e-kit-library-header-back-border:1px solid #64666a;--e-kit-library-header-back-color:#b4b5b7}.e-kit-library__header-back{color:var(--e-kit-library-header-back-color);padding-left:1.25rem;padding-right:.3125rem;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:100%;border-left:var(--e-kit-library-header-back-border)}.e-kit-library__header-back-container{-webkit-box-flex:1;-ms-flex:1;flex:1;height:100%}.e-kit-library__header-back .eps-icon{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.e-kit-library__page-loader{width:100%;height:100%;display:grid;place-items:center;font-size:1.85rem;color:#a4afb7}.eps-search-input{--eps-search-input-background-color:#fcfcfc;--eps-search-input-background-color-focus:#fff;--eps-search-input-color:#556068;--eps-search-input-placeholder-color:#a4afb7}.eps-theme-dark .eps-search-input{--eps-search-input-background-color:#404349;--eps-search-input-background-color-focus:#4c4f56;--eps-search-input-color:#b4b5b7;--eps-search-input-placeholder-color:#b4b5b7}.eps-search-input{width:100%;font-size:.9375rem;padding:.625rem 2.75rem;border:none;background:var(--eps-search-input-background-color);outline:none;color:var(--eps-search-input-color);line-height:1;height:2.75rem}.eps-search-input--sm{font-size:.8125rem;padding:.5rem 1.875rem}.eps-search-input:focus{background:var(--eps-search-input-background-color-focus)}.eps-search-input::-webkit-input-placeholder{color:var(--eps-search-input-placeholder-color);font-style:italic}.eps-search-input::-moz-placeholder{color:var(--eps-search-input-placeholder-color);font-style:italic}.eps-search-input::-ms-input-placeholder{color:var(--eps-search-input-placeholder-color);font-style:italic}.eps-search-input::placeholder{color:var(--eps-search-input-placeholder-color);font-style:italic}.eps-search-input__container{position:relative}.eps-search-input__icon{font-size:1.25rem;padding:.625rem;color:#a4afb7;position:absolute;top:0;inset-inline-start:0;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.eps-search-input__icon--sm{font-size:.75rem}.eps-search-input__clear-icon{font-size:.875rem;padding:.625rem;color:#a4afb7;position:absolute;top:0;left:0;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.eps-search-input__clear-icon--sm{font-size:.6875rem}:root{--eps-sort-select-select-background-color:#fcfcfc;--eps-sort-select-select-color:#556068;--eps-sort-select-button-background-color:#fcfcfc;--eps-sort-select-button-border:1px solid #f1f3f5}.eps-theme-dark{--eps-sort-select-select-background-color:#404349;--eps-sort-select-select-color:#b4b5b7;--eps-sort-select-button-background-color:#404349;--eps-sort-select-button-border:1px solid #26292c}.eps-sort-select{width:100%;font-size:.9375rem;display:-webkit-box;display:-ms-flexbox;display:flex}.eps-sort-select__select-wrapper{-webkit-box-flex:1;-ms-flex:1;flex:1;position:relative}.eps-sort-select__select-wrapper:after{content:"\e8ad";font-family:eicons;position:absolute;left:.625rem;top:0;bottom:0;color:#a4afb7;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;pointer-events:none}.eps-sort-select__select{width:100%;padding:.625rem;border:none;background:var(--eps-sort-select-select-background-color);outline:none;color:var(--eps-sort-select-select-color);line-height:1;cursor:pointer;height:2.75rem;-moz-appearance:none;appearance:none;-webkit-appearance:none;-webkit-border-radius:0;border-radius:0}.eps-sort-select__button{padding:.75rem;background:var(--eps-sort-select-button-background-color);border-right:var(--eps-sort-select-button-border);line-height:1;color:#a4afb7}.e-kit-library__tags-filter{--e-kit-library-tags-filter-list-search-background-color:#fff}.eps-theme-dark .e-kit-library__tags-filter{--e-kit-library-tags-filter-list-search-background-color:#404349}.e-kit-library__tags-filter{margin-top:2.75rem}.e-kit-library__tags-filter-list{margin-bottom:2.75rem}.e-kit-library__tags-filter-list .eps-collapse__title{padding-right:1.875rem;padding-left:1.875rem;text-transform:uppercase}.e-kit-library__tags-filter-list .eps-collapse__content{margin:.3125rem 1.875rem}.e-kit-library__tags-filter-list-container{max-height:250px;overflow:auto}.e-kit-library__tags-filter-list-search{margin-bottom:.625rem}.e-kit-library__tags-filter-list-search .eps-search-input{background:var(--e-kit-library-tags-filter-list-search-background-color)}.e-kit-library__tags-filter-list-item{padding:.625rem 0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-weight:500}.e-kit-library__tags-filter-list-item input{margin-left:.3125rem}.e-kit-library #eps-app-header-btn-refetch{padding:0}.e-kit-library-header-info-modal-container{margin-bottom:2.75rem}.e-kit-library__index-layout-container{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;overflow-y:auto;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.e-kit-library__index-layout-top-area{padding:1.875rem 2.75rem;position:-webkit-sticky;position:sticky;top:-1px;width:100%;z-index:2;background-color:var(--app-background-color);gap:1.5rem}.e-kit-library__index-layout-top-area-search,.e-kit-library__index-layout-top-area-sort{min-width:265px}.e-kit-library__index-layout-top-area-search{-webkit-box-flex:1;-ms-flex:1;flex:1}.e-kit-library__index-layout-main{padding-top:0;padding-bottom:1.5rem;overflow-y:hidden;height:auto;-webkit-box-flex:1;-ms-flex:1 0 auto;flex:1 0 auto;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.e-kit-library__tags-filter{--e-kit-library-item-sidebar-header-title-color:#6d7882;--e-kit-library-item-sidebar-description-color:#6d7882;--e-kit-library-item-information-text-color:#6d7882}.eps-theme-dark .e-kit-library__tags-filter{--e-kit-library-item-sidebar-header-title-color:#b4b5b7;--e-kit-library-item-sidebar-description-color:#b4b5b7;--e-kit-library-item-information-text-color:#b4b5b7}.e-kit-library__item-sidebar{padding:1.5rem 1.875rem}.e-kit-library__item-sidebar-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.e-kit-library__item-sidebar-header-title{color:var(--e-kit-library-item-sidebar-header-title-color);margin-bottom:0}.e-kit-library__item-sidebar-thumbnail{margin-top:1.5rem;-webkit-box-shadow:0 4px 10px var(--color-box-shadow-color);box-shadow:0 4px 10px var(--color-box-shadow-color)}.e-kit-library__item-sidebar-description{margin-top:1.5rem;color:var(--e-kit-library-item-sidebar-description-color)}.e-kit-library__item-sidebar-collapse-tags{margin-top:2.75rem}.e-kit-library__item-sidebar-collapse-info{margin-top:1.875rem}.e-kit-library__item-sidebar-tags-container{gap:.625rem}.e-kit-library__item-information-text{font-size:.8125rem;color:var(--e-kit-library-item-information-text-color);margin-bottom:.3125rem}.e-kit-library{--e-kit-library-content-overview-group-title-color:#6d7882}.eps-theme-dark .e-kit-library{--e-kit-library-content-overview-group-title-color:#b4b5b7}.e-kit-library__content-overview-group-item{margin-bottom:2.75rem}.e-kit-library__content-overview-group-title{margin-bottom:1.875rem;color:var(--e-kit-library-content-overview-group-title-color)}.e-kit-library__preview-responsive-controls{width:auto}.e-kit-library__preview-responsive-controls-item{margin:0 .3125rem;color:#a4afb7;padding:.3125rem}.e-kit-library__preview-responsive-controls-item:hover{background:rgba(88,208,245,.1);-webkit-border-radius:3px;border-radius:3px;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.e-kit-library__preview-responsive-controls-item--active{color:#58d0f5}.e-kit-library__preview-loader{position:absolute;top:0;left:0;z-index:0}.e-kit-library__preview-iframe{border:none;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;-webkit-box-shadow:0 4px 10px var(--color-box-shadow-color);box-shadow:0 4px 10px var(--color-box-shadow-color)}.e-kit-library__preview-iframe-container{overflow-y:auto;position:relative;z-index:1}.e-app-collapse{--e-app-collapse-icon-color:#6d7882}.e-app-collapse-toggle{position:relative}.e-app-collapse-toggle--active{cursor:pointer}.e-app-collapse-toggle__icon{color:var(--e-app-collapse-icon-color);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;font-size:.875rem;position:absolute;top:50%;right:var(--e-app-collapse-toggle-icon-spacing);-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}.e-app-collapse-toggle__icon:before{-webkit-transition:all .2s linear;-o-transition:all .2s linear;transition:all .2s linear}.e-app-collapse-content{display:none}.e-app-collapse--opened .e-app-collapse-toggle__icon:before{-webkit-transform:rotate(-180deg);-ms-transform:rotate(-180deg);transform:rotate(-180deg)}.e-app-collapse--opened .e-app-collapse-content{display:block}[dir=rtl] .e-app-collapse-toggle__icon{right:auto;left:var(--e-app-collapse-toggle-icon-spacing)}.eps-theme-dark .e-app-collapse{--e-app-collapse-icon-color:#b4b5b7}assets/css/widget-video.min.css000064400000001377151327220410012526 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-widget-video .elementor-widget-container{overflow:hidden;-webkit-transform:translateZ(0);transform:translateZ(0)}.elementor-widget-video .elementor-open-inline .elementor-custom-embed-image-overlay{position:absolute;top:0;left:0;width:100%;height:100%;-webkit-background-size:cover;background-size:cover;background-position:50%}.elementor-widget-video .elementor-custom-embed-image-overlay{cursor:pointer;text-align:center}.elementor-widget-video .elementor-custom-embed-image-overlay:hover .elementor-custom-embed-play i{opacity:1}.elementor-widget-video .elementor-custom-embed-image-overlay img{display:block;width:100%}.elementor-widget-video .e-hosted-video .elementor-video{-o-object-fit:cover;object-fit:cover}assets/css/frontend-rtl.css000064400000472127151327220410012000 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.dialog-widget-content {
  background-color: #fff;
  position: absolute;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  -webkit-box-shadow: 2px 8px 23px 3px rgba(0, 0, 0, 0.2);
          box-shadow: 2px 8px 23px 3px rgba(0, 0, 0, 0.2);
  overflow: hidden; }

.dialog-message {
  font-size: 12px;
  line-height: 1.5;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

.dialog-type-lightbox {
  position: fixed;
  height: 100%;
  width: 100%;
  bottom: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 9999;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none; }
  .dialog-type-lightbox .dialog-widget-content {
    margin: auto;
    width: 375px; }
  .dialog-type-lightbox .dialog-header {
    font-size: 15px;
    color: #495157;
    padding: 30px 0 10px;
    font-weight: 500; }
  .dialog-type-lightbox .dialog-message {
    padding: 0 30px 30px;
    min-height: 50px; }
  .dialog-type-lightbox:not(.elementor-popup-modal) .dialog-header,
  .dialog-type-lightbox:not(.elementor-popup-modal) .dialog-message {
    text-align: center; }
  .dialog-type-lightbox .dialog-buttons-wrapper {
    border-top: 1px solid #e6e9ec;
    text-align: center; }
    .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button {
      font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
      width: 50%;
      border: none;
      background: none;
      color: #6d7882;
      font-size: 15px;
      cursor: pointer;
      padding: 13px 0;
      outline: 0; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button:hover {
        background-color: #f4f6f7; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button.dialog-ok {
        color: #b01b1b; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button.dialog-take_over {
        color: #39b54a; }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button:active {
        background-color: rgba(230, 233, 236, 0.5); }
      .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button::-moz-focus-inner {
        border: 0; }

.dialog-close-button {
  cursor: pointer;
  position: absolute;
  margin-top: 15px;
  left: 15px;
  font-size: 15px;
  line-height: 1; }
  .dialog-close-button:not(:hover) {
    opacity: .4; }

.dialog-alert-widget .dialog-buttons-wrapper > button {
  width: 100%; }

.dialog-confirm-widget .dialog-button:first-child {
  border-left: 1px solid #e6e9ec; }

.dialog-prevent-scroll {
  overflow: hidden;
  max-height: 100vh; }

@media (min-width: 1024px) {
  body.admin-bar .dialog-lightbox-widget {
    height: calc(100vh - 32px); } }

@media (max-width: 1024px) {
  body.admin-bar .dialog-type-lightbox {
    position: -webkit-sticky;
    position: sticky;
    height: 100vh; } }

.elementor-aspect-ratio-219 .elementor-fit-aspect-ratio {
  padding-bottom: 42.8571%; }

.elementor-aspect-ratio-169 .elementor-fit-aspect-ratio {
  padding-bottom: 56.25%; }

.elementor-aspect-ratio-43 .elementor-fit-aspect-ratio {
  padding-bottom: 75%; }

.elementor-aspect-ratio-32 .elementor-fit-aspect-ratio {
  padding-bottom: 66.6666%; }

.elementor-aspect-ratio-11 .elementor-fit-aspect-ratio {
  padding-bottom: 100%; }

.elementor-aspect-ratio-916 .elementor-fit-aspect-ratio {
  padding-bottom: 177.8%; }

.elementor-fit-aspect-ratio {
  position: relative;
  height: 0; }
  .elementor-fit-aspect-ratio iframe {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    border: 0;
    background-color: #000; }
  .elementor-fit-aspect-ratio video {
    width: 100%; }

.flatpickr-calendar {
  width: 280px; }
  .flatpickr-calendar .flatpickr-current-month span.cur-month {
    font-weight: 300; }
  .flatpickr-calendar .dayContainer {
    width: 280px;
    min-width: 280px;
    max-width: 280px; }
  .flatpickr-calendar .flatpickr-days {
    width: 280px; }
  .flatpickr-calendar .flatpickr-day {
    max-width: 37px;
    height: 37px;
    line-height: 37px; }

.elementor-templates-modal .dialog-widget-content {
  font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
  background-color: #f1f3f5;
  width: 100%; }
  @media (max-width: 1439px) {
    .elementor-templates-modal .dialog-widget-content {
      max-width: 990px; } }
  @media (min-width: 1440px) {
    .elementor-templates-modal .dialog-widget-content {
      max-width: 1200px; } }

.elementor-templates-modal .dialog-header {
  padding: 0;
  background-color: #fff;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
  position: relative;
  z-index: 1; }

.elementor-templates-modal .dialog-buttons-wrapper {
  background-color: #fff;
  border: none;
  display: none;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  padding: 5px;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
  position: relative; }
  .elementor-templates-modal .dialog-buttons-wrapper .elementor-button {
    height: 40px;
    margin-right: 5px; }
    .elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success {
      padding: 12px 36px;
      color: #fff;
      width: initial;
      font-size: 15px; }
      .elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success:hover {
        background-color: #39b54a; }

.elementor-templates-modal .dialog-message {
  height: 750px;
  max-height: 85vh;
  overflow: auto;
  padding-top: 25px; }

.elementor-templates-modal .dialog-content {
  height: 100%; }

.elementor-templates-modal .dialog-loading {
  display: none; }

.elementor-templates-modal__header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  height: 50px; }
  .elementor-templates-modal__header__logo {
    line-height: 1;
    text-transform: uppercase;
    font-weight: bold;
    cursor: pointer; }
    .elementor-templates-modal__header__logo-area {
      text-align: right;
      padding-right: 15px; }
      .elementor-templates-modal__header__logo-area > * {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center; }
    .elementor-templates-modal__header__logo__icon-wrapper {
      margin-left: 10px;
      font-size: 12px; }
    .elementor-templates-modal__header__logo__title {
      padding-top: 2px; }
  .elementor-templates-modal__header__items-area {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .elementor-templates-modal__header__item {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-sizing: content-box;
            box-sizing: content-box; }
    .elementor-templates-modal__header__item > i {
      font-size: 20px;
      -webkit-transition: all 0.3s;
      -o-transition: all 0.3s;
      transition: all 0.3s;
      cursor: pointer; }
      .elementor-templates-modal__header__item > i:not(:hover) {
        color: #a4afb7; }
  .elementor-templates-modal__header__close--normal {
    width: 47px;
    border-right: 1px solid #e6e9ec; }
    .elementor-templates-modal__header__close--normal i {
      font-size: 18px; }
  .elementor-templates-modal__header__close--skip {
    padding: 10px;
    padding-right: 20px;
    margin-left: 10px;
    color: #fff;
    background-color: #a4afb7;
    font-size: 11px;
    font-weight: normal;
    line-height: 1;
    text-transform: uppercase;
    -webkit-border-radius: 2px;
            border-radius: 2px;
    cursor: pointer; }
    .elementor-templates-modal__header__close--skip > i {
      font-size: inherit;
      padding-right: 10px;
      margin-right: 15px;
      border-right: 1px solid; }
      .elementor-templates-modal__header__close--skip > i:not(:hover) {
        color: #fff; }

.elementor-templates-modal__sidebar {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 25%;
  background-color: rgba(255, 255, 255, 0.3); }

.elementor-templates-modal__content {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-box-shadow: 0 0 13px inset rgba(0, 0, 0, 0.05);
          box-shadow: 0 0 13px inset rgba(0, 0, 0, 0.05); }

/* Will select next element after last '.elementor-general-section' */
#wpadminbar #wp-admin-bar-elementor_edit_page .elementor-general-section + .elementor-second-section {
  border-top: 1px solid #464b50;
  margin-top: 6px; }

.elementor-hidden {
  display: none; }

.elementor-screen-only,
.screen-reader-text,
.screen-reader-text span,
.ui-helper-hidden-accessible {
  position: absolute;
  top: -10000em;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0; }

.elementor-clearfix:after {
  content: '';
  display: block;
  clear: both;
  width: 0;
  height: 0; }

.e-logo-wrapper {
  background: #93003c;
  display: inline-block;
  padding: 0.75em;
  -webkit-border-radius: 50%;
          border-radius: 50%;
  line-height: 1; }
  .e-logo-wrapper i {
    color: #fff;
    font-size: 1em; }

.elementor {
  -webkit-hyphens: manual;
      -ms-hyphens: manual;
          hyphens: manual; }
  .elementor *, .elementor *:before, .elementor *:after {
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
  .elementor a {
    -webkit-box-shadow: none;
            box-shadow: none;
    text-decoration: none; }
  .elementor hr {
    margin: 0;
    background-color: transparent; }
  .elementor img {
    height: auto;
    max-width: 100%;
    border: none;
    -webkit-border-radius: 0;
            border-radius: 0;
    -webkit-box-shadow: none;
            box-shadow: none; }
  .elementor .elementor-widget:not(.elementor-widget-text-editor):not(.elementor-widget-theme-post-content) figure {
    margin: 0; }
  .elementor embed,
  .elementor iframe,
  .elementor object,
  .elementor video {
    max-width: 100%;
    width: 100%;
    margin: 0;
    line-height: 1;
    border: none; }
  .elementor .elementor-custom-embed {
    line-height: 0; }
  .elementor .elementor-background-video-container,
  .elementor .elementor-background-holder,
  .elementor .elementor-background {
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    position: absolute;
    overflow: hidden;
    z-index: 0;
    direction: ltr; }
  .elementor .elementor-background-video-container {
    -webkit-transition: opacity 1s;
    -o-transition: opacity 1s;
    transition: opacity 1s;
    pointer-events: none; }
    .elementor .elementor-background-video-container.elementor-loading {
      opacity: 0; }
  .elementor .elementor-background-video-embed {
    max-width: none; }
  .elementor .elementor-background-video-embed, .elementor .elementor-background-video-hosted {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }
  .elementor .elementor-background-video {
    max-width: none;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }
  .elementor .elementor-html5-video {
    -o-object-fit: cover;
       object-fit: cover; }
  .elementor .elementor-background-overlay {
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    position: absolute; }
  .elementor .elementor-background-slideshow {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 0;
    top: 0;
    right: 0; }
    .elementor .elementor-background-slideshow__slide__image {
      width: 100%;
      height: 100%;
      background-position: center center;
      -webkit-background-size: cover;
              background-size: cover; }

.elementor-widget-wrap > .elementor-element.elementor-absolute {
  position: absolute; }
  .elementor-column > .elementor-widget-wrap > .elementor-element.elementor-absolute {
    padding: inherit;
    -webkit-box-sizing: content-box;
            box-sizing: content-box; }

.elementor-widget-wrap > .elementor-element.elementor-fixed {
  position: fixed; }

.elementor-widget-wrap .elementor-element.elementor-widget__width-auto, .elementor-widget-wrap .elementor-element.elementor-widget__width-initial {
  max-width: 100%; }

@media (max-width: 1024px) {
  .elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-auto, .elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-initial {
    max-width: 100%; } }

@media (max-width: 767px) {
  .elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-auto, .elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-initial {
    max-width: 100%; } }

.elementor-element.elementor-absolute, .elementor-element.elementor-fixed {
  z-index: 1; }

.elementor-invisible {
  visibility: hidden; }

.elementor-align-center {
  text-align: center; }
  .elementor-align-center .elementor-button {
    width: auto; }

.elementor-align-right {
  text-align: right; }
  .elementor-align-right .elementor-button {
    width: auto; }

.elementor-align-left {
  text-align: left; }
  .elementor-align-left .elementor-button {
    width: auto; }

.elementor-align-justify .elementor-button {
  width: 100%; }

.elementor-custom-embed-play {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%); }
  .elementor-custom-embed-play i {
    font-size: 100px;
    color: #fff;
    text-shadow: 1px 0 6px rgba(0, 0, 0, 0.3); }
  .elementor-custom-embed-play svg {
    height: 100px;
    width: 100px;
    fill: #fff;
    -webkit-filter: drop-shadow(1px 0 6px rgba(0, 0, 0, 0.3));
            filter: drop-shadow(1px 0 6px rgba(0, 0, 0, 0.3)); }
  .elementor-custom-embed-play i,
  .elementor-custom-embed-play svg {
    opacity: 0.8;
    -webkit-transition: all .5s;
    -o-transition: all .5s;
    transition: all .5s; }
  .elementor-custom-embed-play.elementor-playing i {
    font-family: eicons;
    -webkit-animation: fa-spin 2s infinite linear;
            animation: fa-spin 2s infinite linear; }
    .elementor-custom-embed-play.elementor-playing i:before {
      content: '\e8fb'; }

.elementor-tag {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex; }

.elementor-ken-burns {
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  -o-transition-property: transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transition-duration: 10s;
       -o-transition-duration: 10s;
          transition-duration: 10s;
  -webkit-transition-timing-function: linear;
       -o-transition-timing-function: linear;
          transition-timing-function: linear; }
  .elementor-ken-burns--out {
    -webkit-transform: scale(1.3);
        -ms-transform: scale(1.3);
            transform: scale(1.3); }
  .elementor-ken-burns--active {
    -webkit-transition-duration: 20s;
         -o-transition-duration: 20s;
            transition-duration: 20s; }
    .elementor-ken-burns--active.elementor-ken-burns--out {
      -webkit-transform: scale(1);
          -ms-transform: scale(1);
              transform: scale(1); }
    .elementor-ken-burns--active.elementor-ken-burns--in {
      -webkit-transform: scale(1.3);
          -ms-transform: scale(1.3);
              transform: scale(1.3); }

@media (min-width: -1px) {
  .elementor-widescreen-align-center {
    text-align: center; }
    .elementor-widescreen-align-center .elementor-button {
      width: auto; }
  .elementor-widescreen-align-right {
    text-align: right; }
    .elementor-widescreen-align-right .elementor-button {
      width: auto; }
  .elementor-widescreen-align-left {
    text-align: left; }
    .elementor-widescreen-align-left .elementor-button {
      width: auto; }
  .elementor-widescreen-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: -1px) {
  .elementor-laptop-align-center {
    text-align: center; }
    .elementor-laptop-align-center .elementor-button {
      width: auto; }
  .elementor-laptop-align-right {
    text-align: right; }
    .elementor-laptop-align-right .elementor-button {
      width: auto; }
  .elementor-laptop-align-left {
    text-align: left; }
    .elementor-laptop-align-left .elementor-button {
      width: auto; }
  .elementor-laptop-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: -1px) {
  .elementor-tablet_extra-align-center {
    text-align: center; }
    .elementor-tablet_extra-align-center .elementor-button {
      width: auto; }
  .elementor-tablet_extra-align-right {
    text-align: right; }
    .elementor-tablet_extra-align-right .elementor-button {
      width: auto; }
  .elementor-tablet_extra-align-left {
    text-align: left; }
    .elementor-tablet_extra-align-left .elementor-button {
      width: auto; }
  .elementor-tablet_extra-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: 1024px) {
  .elementor-tablet-align-center {
    text-align: center; }
    .elementor-tablet-align-center .elementor-button {
      width: auto; }
  .elementor-tablet-align-right {
    text-align: right; }
    .elementor-tablet-align-right .elementor-button {
      width: auto; }
  .elementor-tablet-align-left {
    text-align: left; }
    .elementor-tablet-align-left .elementor-button {
      width: auto; }
  .elementor-tablet-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: -1px) {
  .elementor-mobile_extra-align-center {
    text-align: center; }
    .elementor-mobile_extra-align-center .elementor-button {
      width: auto; }
  .elementor-mobile_extra-align-right {
    text-align: right; }
    .elementor-mobile_extra-align-right .elementor-button {
      width: auto; }
  .elementor-mobile_extra-align-left {
    text-align: left; }
    .elementor-mobile_extra-align-left .elementor-button {
      width: auto; }
  .elementor-mobile_extra-align-justify .elementor-button {
    width: 100%; } }

@media (max-width: 767px) {
  .elementor-mobile-align-center {
    text-align: center; }
    .elementor-mobile-align-center .elementor-button {
      width: auto; }
  .elementor-mobile-align-right {
    text-align: right; }
    .elementor-mobile-align-right .elementor-button {
      width: auto; }
  .elementor-mobile-align-left {
    text-align: left; }
    .elementor-mobile-align-left .elementor-button {
      width: auto; }
  .elementor-mobile-align-justify .elementor-button {
    width: 100%; } }

#wpadminbar #wp-admin-bar-elementor_edit_page > .ab-item::before {
  content: "\e813";
  font-family: eicons;
  top: 3px;
  font-size: 18px; }

#wpadminbar #wp-admin-bar-elementor_inspector > .ab-item::before {
  content: "\f348";
  top: 2px; }

:root {
  --page-title-display: block; }

.elementor-page-title, h1.entry-title {
  display: var(--page-title-display); }

.elementor-section {
  position: relative; }
  .elementor-section .elementor-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-right: auto;
    margin-left: auto;
    position: relative; }
    @media (max-width: 1024px) {
      .elementor-section .elementor-container {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; } }
  .elementor-section.elementor-section-boxed > .elementor-container {
    max-width: 1140px; }
  .elementor-section.elementor-section-stretched {
    position: relative;
    width: 100%; }
  .elementor-section.elementor-section-items-top > .elementor-container {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start; }
  .elementor-section.elementor-section-items-middle > .elementor-container {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .elementor-section.elementor-section-items-bottom > .elementor-container {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end; }
  @media (min-width: 768px) {
    .elementor-section.elementor-section-height-full {
      height: 100vh; }
      .elementor-section.elementor-section-height-full > .elementor-container {
        height: 100%; } }

.elementor-bc-flex-widget .elementor-section-content-top > .elementor-container > .elementor-column > .elementor-widget-wrap {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; }

.elementor-bc-flex-widget .elementor-section-content-middle > .elementor-container > .elementor-column > .elementor-widget-wrap {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.elementor-bc-flex-widget .elementor-section-content-bottom > .elementor-container > .elementor-column > .elementor-widget-wrap {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end; }

.elementor-row {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media (max-width: 1024px) {
    .elementor-row {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; } }

.elementor-widget-wrap {
  position: relative;
  width: 100%;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-line-pack: start;
      align-content: flex-start; }
  .elementor:not(.elementor-bc-flex-widget) .elementor-widget-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .elementor-widget-wrap > .elementor-element {
    width: 100%; }

.elementor-widget {
  position: relative; }
  .elementor-widget:not(:last-child) {
    margin-bottom: 20px; }
    .elementor-widget:not(:last-child).elementor-widget__width-auto, .elementor-widget:not(:last-child).elementor-widget__width-initial, .elementor-widget:not(:last-child).elementor-absolute {
      margin-bottom: 0; }

.elementor-column {
  position: relative;
  min-height: 1px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.elementor-column-wrap {
  width: 100%;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.elementor-column-gap-narrow > .elementor-column > .elementor-element-populated {
  padding: 5px; }

.elementor-column-gap-default > .elementor-column > .elementor-element-populated {
  padding: 10px; }

.elementor-column-gap-extended > .elementor-column > .elementor-element-populated {
  padding: 15px; }

.elementor-column-gap-wide > .elementor-column > .elementor-element-populated {
  padding: 20px; }

.elementor-column-gap-wider > .elementor-column > .elementor-element-populated {
  padding: 30px; }

.elementor-inner-section .elementor-column-gap-no .elementor-element-populated {
  padding: 0; }

@media (min-width: 768px) {
  .elementor-column.elementor-col-10, .elementor-column[data-col="10"] {
    width: 10%; }
  .elementor-column.elementor-col-11, .elementor-column[data-col="11"] {
    width: 11.111%; }
  .elementor-column.elementor-col-12, .elementor-column[data-col="12"] {
    width: 12.5%; }
  .elementor-column.elementor-col-14, .elementor-column[data-col="14"] {
    width: 14.285%; }
  .elementor-column.elementor-col-16, .elementor-column[data-col="16"] {
    width: 16.666%; }
  .elementor-column.elementor-col-20, .elementor-column[data-col="20"] {
    width: 20%; }
  .elementor-column.elementor-col-25, .elementor-column[data-col="25"] {
    width: 25%; }
  .elementor-column.elementor-col-30, .elementor-column[data-col="30"] {
    width: 30%; }
  .elementor-column.elementor-col-33, .elementor-column[data-col="33"] {
    width: 33.333%; }
  .elementor-column.elementor-col-40, .elementor-column[data-col="40"] {
    width: 40%; }
  .elementor-column.elementor-col-50, .elementor-column[data-col="50"] {
    width: 50%; }
  .elementor-column.elementor-col-60, .elementor-column[data-col="60"] {
    width: 60%; }
  .elementor-column.elementor-col-66, .elementor-column[data-col="66"] {
    width: 66.666%; }
  .elementor-column.elementor-col-70, .elementor-column[data-col="70"] {
    width: 70%; }
  .elementor-column.elementor-col-75, .elementor-column[data-col="75"] {
    width: 75%; }
  .elementor-column.elementor-col-80, .elementor-column[data-col="80"] {
    width: 80%; }
  .elementor-column.elementor-col-83, .elementor-column[data-col="83"] {
    width: 83.333%; }
  .elementor-column.elementor-col-90, .elementor-column[data-col="90"] {
    width: 90%; }
  .elementor-column.elementor-col-100, .elementor-column[data-col="100"] {
    width: 100%; } }

@media (max-width: 479px) {
  .elementor-column.elementor-xs-10 {
    width: 10%; }
  .elementor-column.elementor-xs-11 {
    width: 11.111%; }
  .elementor-column.elementor-xs-12 {
    width: 12.5%; }
  .elementor-column.elementor-xs-14 {
    width: 14.285%; }
  .elementor-column.elementor-xs-16 {
    width: 16.666%; }
  .elementor-column.elementor-xs-20 {
    width: 20%; }
  .elementor-column.elementor-xs-25 {
    width: 25%; }
  .elementor-column.elementor-xs-30 {
    width: 30%; }
  .elementor-column.elementor-xs-33 {
    width: 33.333%; }
  .elementor-column.elementor-xs-40 {
    width: 40%; }
  .elementor-column.elementor-xs-50 {
    width: 50%; }
  .elementor-column.elementor-xs-60 {
    width: 60%; }
  .elementor-column.elementor-xs-66 {
    width: 66.666%; }
  .elementor-column.elementor-xs-70 {
    width: 70%; }
  .elementor-column.elementor-xs-75 {
    width: 75%; }
  .elementor-column.elementor-xs-80 {
    width: 80%; }
  .elementor-column.elementor-xs-83 {
    width: 83.333%; }
  .elementor-column.elementor-xs-90 {
    width: 90%; }
  .elementor-column.elementor-xs-100 {
    width: 100%; } }

@media (max-width: 767px) {
  .elementor-column.elementor-sm-10 {
    width: 10%; }
  .elementor-column.elementor-sm-11 {
    width: 11.111%; }
  .elementor-column.elementor-sm-12 {
    width: 12.5%; }
  .elementor-column.elementor-sm-14 {
    width: 14.285%; }
  .elementor-column.elementor-sm-16 {
    width: 16.666%; }
  .elementor-column.elementor-sm-20 {
    width: 20%; }
  .elementor-column.elementor-sm-25 {
    width: 25%; }
  .elementor-column.elementor-sm-30 {
    width: 30%; }
  .elementor-column.elementor-sm-33 {
    width: 33.333%; }
  .elementor-column.elementor-sm-40 {
    width: 40%; }
  .elementor-column.elementor-sm-50 {
    width: 50%; }
  .elementor-column.elementor-sm-60 {
    width: 60%; }
  .elementor-column.elementor-sm-66 {
    width: 66.666%; }
  .elementor-column.elementor-sm-70 {
    width: 70%; }
  .elementor-column.elementor-sm-75 {
    width: 75%; }
  .elementor-column.elementor-sm-80 {
    width: 80%; }
  .elementor-column.elementor-sm-83 {
    width: 83.333%; }
  .elementor-column.elementor-sm-90 {
    width: 90%; }
  .elementor-column.elementor-sm-100 {
    width: 100%; } }

@media (min-width: 768px) and (max-width: 1024px) {
  .elementor-column.elementor-md-10 {
    width: 10%; }
  .elementor-column.elementor-md-11 {
    width: 11.111%; }
  .elementor-column.elementor-md-12 {
    width: 12.5%; }
  .elementor-column.elementor-md-14 {
    width: 14.285%; }
  .elementor-column.elementor-md-16 {
    width: 16.666%; }
  .elementor-column.elementor-md-20 {
    width: 20%; }
  .elementor-column.elementor-md-25 {
    width: 25%; }
  .elementor-column.elementor-md-30 {
    width: 30%; }
  .elementor-column.elementor-md-33 {
    width: 33.333%; }
  .elementor-column.elementor-md-40 {
    width: 40%; }
  .elementor-column.elementor-md-50 {
    width: 50%; }
  .elementor-column.elementor-md-60 {
    width: 60%; }
  .elementor-column.elementor-md-66 {
    width: 66.666%; }
  .elementor-column.elementor-md-70 {
    width: 70%; }
  .elementor-column.elementor-md-75 {
    width: 75%; }
  .elementor-column.elementor-md-80 {
    width: 80%; }
  .elementor-column.elementor-md-83 {
    width: 83.333%; }
  .elementor-column.elementor-md-90 {
    width: 90%; }
  .elementor-column.elementor-md-100 {
    width: 100%; } }

@media (min-width: 768px) and (max-width: 1024px) {
  .elementor-reverse-tablet > .elementor-container > :nth-child(1) {
    -webkit-box-ordinal-group: 11;
        -ms-flex-order: 10;
            order: 10; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(2) {
    -webkit-box-ordinal-group: 10;
        -ms-flex-order: 9;
            order: 9; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(3) {
    -webkit-box-ordinal-group: 9;
        -ms-flex-order: 8;
            order: 8; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(4) {
    -webkit-box-ordinal-group: 8;
        -ms-flex-order: 7;
            order: 7; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(5) {
    -webkit-box-ordinal-group: 7;
        -ms-flex-order: 6;
            order: 6; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(6) {
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(7) {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(8) {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(9) {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2; }
  .elementor-reverse-tablet > .elementor-container > :nth-child(10) {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1; } }

@media (max-width: 767px) {
  .elementor-reverse-mobile > .elementor-container > :nth-child(1) {
    -webkit-box-ordinal-group: 11;
        -ms-flex-order: 10;
            order: 10; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(2) {
    -webkit-box-ordinal-group: 10;
        -ms-flex-order: 9;
            order: 9; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(3) {
    -webkit-box-ordinal-group: 9;
        -ms-flex-order: 8;
            order: 8; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(4) {
    -webkit-box-ordinal-group: 8;
        -ms-flex-order: 7;
            order: 7; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(5) {
    -webkit-box-ordinal-group: 7;
        -ms-flex-order: 6;
            order: 6; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(6) {
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(7) {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(8) {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(9) {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2; }
  .elementor-reverse-mobile > .elementor-container > :nth-child(10) {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1; }
  .elementor-column {
    width: 100%; } }

ul.elementor-icon-list-items.elementor-inline-items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  ul.elementor-icon-list-items.elementor-inline-items .elementor-inline-item {
    word-break: break-word; }

.elementor-grid {
  display: grid;
  grid-column-gap: var(--grid-column-gap);
  grid-row-gap: var(--grid-row-gap); }
  .elementor-grid .elementor-grid-item {
    min-width: 0; }
  .elementor-grid-0 .elementor-grid {
    display: inline-block;
    width: 100%;
    word-spacing: var(--grid-column-gap);
    margin-bottom: calc(-1 * var(--grid-row-gap)); }
    .elementor-grid-0 .elementor-grid .elementor-grid-item {
      display: inline-block;
      margin-bottom: var(--grid-row-gap);
      word-break: break-word; }
  .elementor-grid-1 .elementor-grid {
    grid-template-columns: repeat(1, 1fr); }
  .elementor-grid-2 .elementor-grid {
    grid-template-columns: repeat(2, 1fr); }
  .elementor-grid-3 .elementor-grid {
    grid-template-columns: repeat(3, 1fr); }
  .elementor-grid-4 .elementor-grid {
    grid-template-columns: repeat(4, 1fr); }
  .elementor-grid-5 .elementor-grid {
    grid-template-columns: repeat(5, 1fr); }
  .elementor-grid-6 .elementor-grid {
    grid-template-columns: repeat(6, 1fr); }
  .elementor-grid-7 .elementor-grid {
    grid-template-columns: repeat(7, 1fr); }
  .elementor-grid-8 .elementor-grid {
    grid-template-columns: repeat(8, 1fr); }
  .elementor-grid-9 .elementor-grid {
    grid-template-columns: repeat(9, 1fr); }
  .elementor-grid-10 .elementor-grid {
    grid-template-columns: repeat(10, 1fr); }
  .elementor-grid-11 .elementor-grid {
    grid-template-columns: repeat(11, 1fr); }
  .elementor-grid-12 .elementor-grid {
    grid-template-columns: repeat(12, 1fr); }
  @media (min-width: -1px) {
    .elementor-grid-widescreen-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-widescreen-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-widescreen-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-widescreen-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-widescreen-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-widescreen-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-widescreen-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-widescreen-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-widescreen-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-widescreen-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-widescreen-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-widescreen-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-widescreen-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-widescreen-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: -1px) {
    .elementor-grid-laptop-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-laptop-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-laptop-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-laptop-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-laptop-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-laptop-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-laptop-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-laptop-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-laptop-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-laptop-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-laptop-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-laptop-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-laptop-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-laptop-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: -1px) {
    .elementor-grid-tablet_extra-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-tablet_extra-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-tablet_extra-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-tablet_extra-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-tablet_extra-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-tablet_extra-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-tablet_extra-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-tablet_extra-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-tablet_extra-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-tablet_extra-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-tablet_extra-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-tablet_extra-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-tablet_extra-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-tablet_extra-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: 1024px) {
    .elementor-grid-tablet-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-tablet-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-tablet-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-tablet-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-tablet-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-tablet-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-tablet-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-tablet-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-tablet-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-tablet-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-tablet-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-tablet-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-tablet-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-tablet-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: -1px) {
    .elementor-grid-mobile_extra-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-mobile_extra-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-mobile_extra-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-mobile_extra-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-mobile_extra-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-mobile_extra-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-mobile_extra-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-mobile_extra-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-mobile_extra-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-mobile_extra-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-mobile_extra-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-mobile_extra-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-mobile_extra-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-mobile_extra-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }
  @media (max-width: 767px) {
    .elementor-grid-mobile-0 .elementor-grid {
      display: inline-block;
      width: 100%;
      word-spacing: var(--grid-column-gap);
      margin-bottom: calc(-1 * var(--grid-row-gap)); }
      .elementor-grid-mobile-0 .elementor-grid .elementor-grid-item {
        display: inline-block;
        margin-bottom: var(--grid-row-gap);
        word-break: break-word; }
    .elementor-grid-mobile-1 .elementor-grid {
      grid-template-columns: repeat(1, 1fr); }
    .elementor-grid-mobile-2 .elementor-grid {
      grid-template-columns: repeat(2, 1fr); }
    .elementor-grid-mobile-3 .elementor-grid {
      grid-template-columns: repeat(3, 1fr); }
    .elementor-grid-mobile-4 .elementor-grid {
      grid-template-columns: repeat(4, 1fr); }
    .elementor-grid-mobile-5 .elementor-grid {
      grid-template-columns: repeat(5, 1fr); }
    .elementor-grid-mobile-6 .elementor-grid {
      grid-template-columns: repeat(6, 1fr); }
    .elementor-grid-mobile-7 .elementor-grid {
      grid-template-columns: repeat(7, 1fr); }
    .elementor-grid-mobile-8 .elementor-grid {
      grid-template-columns: repeat(8, 1fr); }
    .elementor-grid-mobile-9 .elementor-grid {
      grid-template-columns: repeat(9, 1fr); }
    .elementor-grid-mobile-10 .elementor-grid {
      grid-template-columns: repeat(10, 1fr); }
    .elementor-grid-mobile-11 .elementor-grid {
      grid-template-columns: repeat(11, 1fr); }
    .elementor-grid-mobile-12 .elementor-grid {
      grid-template-columns: repeat(12, 1fr); } }

@media (min-width: 1025px) {
  #elementor-device-mode:after {
    content: 'desktop'; } }

@media (min-width: -1px) {
  #elementor-device-mode:after {
    content: 'widescreen'; } }

@media (max-width: -1px) {
  #elementor-device-mode:after {
    content: 'laptop'; } }

@media (max-width: -1px) {
  #elementor-device-mode:after {
    content: 'tablet_extra'; } }

@media (max-width: 1024px) {
  #elementor-device-mode:after {
    content: 'tablet'; } }

@media (max-width: -1px) {
  #elementor-device-mode:after {
    content: 'mobile_extra'; } }

@media (max-width: 767px) {
  #elementor-device-mode:after {
    content: 'mobile'; } }

[class^="eicon"],
[class*=" eicon-"] {
  display: inline-block;
  font-family: eicons;
  font-size: inherit;
  font-weight: normal;
  font-style: normal;
  font-variant: normal;
  line-height: 1;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

@-webkit-keyframes eicon-spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(359deg);
            transform: rotate(359deg); } }

@keyframes eicon-spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(359deg);
            transform: rotate(359deg); } }

.eicon-animation-spin {
  -webkit-animation: eicon-spin 2s infinite linear;
          animation: eicon-spin 2s infinite linear; }

.eicon-loading:before {
  content: '\e8fb'; }

.eicon-menu-bar:before {
  content: '\e816'; }

.eicon-chevron-right:before {
  content: '\e87d'; }

.eicon-chevron-left:before {
  content: '\e87e'; }

.eicon-close:before {
  content: '\e87f'; }

.eicon-share-arrow:before {
  content: '\e96c'; }

.eicon-zoom-in:before {
  content: '\e882'; }

.eicon-zoom-in-bold:before {
  content: '\e92e'; }

.eicon-zoom-out-bold:before {
  content: '\e943'; }

.eicon-frame-expand:before {
  content: '\e95c'; }

.eicon-frame-minimize:before {
  content: '\e95d'; }

.eicon-play:before {
  content: '\e89d'; }

.eicon-facebook:before {
  content: '\e959'; }

.eicon-twitter:before {
  content: '\e95a'; }

.eicon-pinterest:before {
  content: '\e95b'; }

.eicon-download-bold:before {
  content: '\e96b'; }

.eicon-caret-down:before {
  content: '\e92a'; }

.elementor-form-fields-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group > input, .elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group > textarea, .elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group > .elementor-select-wrapper, .elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group .elementor-field-subgroup {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    max-width: 100%; }
  .elementor-form-fields-wrapper.elementor-labels-inline > .elementor-field-group > input, .elementor-form-fields-wrapper.elementor-labels-inline > .elementor-field-group .elementor-select-wrapper {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }

.elementor-field-group {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .elementor-field-group.elementor-field-type-submit {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end; }
  .elementor-field-group .elementor-field-textual {
    width: 100%;
    max-width: 100%;
    border: 1px solid #818a91;
    background-color: transparent;
    color: #373a3c;
    vertical-align: middle;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }
    .elementor-field-group .elementor-field-textual:focus {
      -webkit-box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1) inset;
              box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1) inset;
      outline: 0; }
    .elementor-field-group .elementor-field-textual::-webkit-input-placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
    .elementor-field-group .elementor-field-textual:-ms-input-placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
    .elementor-field-group .elementor-field-textual::-moz-placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
    .elementor-field-group .elementor-field-textual:-moz-placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
    .elementor-field-group .elementor-field-textual::-ms-input-placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
    .elementor-field-group .elementor-field-textual::placeholder {
      color: inherit;
      font-family: inherit;
      opacity: 0.6; }
  .elementor-field-group .elementor-select-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    width: 100%; }
    .elementor-field-group .elementor-select-wrapper select {
      appearance: none;
      -webkit-appearance: none;
      -moz-appearance: none;
      color: inherit;
      font-size: inherit;
      font-family: inherit;
      font-weight: inherit;
      font-style: inherit;
      text-transform: inherit;
      letter-spacing: inherit;
      line-height: inherit;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
      padding-left: 20px; }
    .elementor-field-group .elementor-select-wrapper:before {
      content: '\e92a';
      font-family: 'eicons';
      font-size: 15px;
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      left: 10px;
      pointer-events: none;
      text-shadow: 0 0 3px rgba(0, 0, 0, 0.3); }
  .elementor-field-group.elementor-field-type-select-multiple .elementor-select-wrapper:before {
    content: ''; }

.elementor-field-subgroup {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .elementor-field-subgroup .elementor-field-option label {
    display: inline-block; }
  .elementor-field-subgroup.elementor-subgroup-inline .elementor-field-option {
    padding-left: 10px; }
  .elementor-field-subgroup:not(.elementor-subgroup-inline) .elementor-field-option {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%; }

.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option input,
.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option label,
.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option input,
.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option label,
.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option input,
.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option label {
  display: inline; }

.elementor-field-label {
  cursor: pointer; }
  .elementor-mark-required .elementor-field-label:after {
    content: '*';
    color: red;
    padding-right: 0.2em; }

.elementor-field-textual {
  line-height: 1.4;
  font-size: 15px;
  min-height: 40px;
  padding: 5px 14px;
  -webkit-border-radius: 3px;
          border-radius: 3px; }
  .elementor-field-textual.elementor-size-xs {
    font-size: 13px;
    min-height: 33px;
    padding: 4px 12px;
    -webkit-border-radius: 2px;
            border-radius: 2px; }
  .elementor-field-textual.elementor-size-md {
    font-size: 16px;
    min-height: 47px;
    padding: 6px 16px;
    -webkit-border-radius: 4px;
            border-radius: 4px; }
  .elementor-field-textual.elementor-size-lg {
    font-size: 18px;
    min-height: 59px;
    padding: 7px 20px;
    -webkit-border-radius: 5px;
            border-radius: 5px; }
  .elementor-field-textual.elementor-size-xl {
    font-size: 20px;
    min-height: 72px;
    padding: 8px 24px;
    -webkit-border-radius: 6px;
            border-radius: 6px; }

.elementor-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%; }

.elementor-button-align-stretch .e-form__buttons__wrapper {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1; }
  .elementor-button-align-stretch .e-form__buttons__wrapper__button {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%; }

.elementor-button-align-center .elementor-field-type-submit,
.elementor-button-align-center .e-form__buttons {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.elementor-button-align-start .elementor-field-type-submit,
.elementor-button-align-start .e-form__buttons {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.elementor-button-align-end .elementor-field-type-submit,
.elementor-button-align-end .e-form__buttons {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start; }

.elementor-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
  -ms-flex-preferred-size: initial;
      flex-basis: initial; }

.elementor-button-align-center .e-form__buttons__wrapper, .elementor-button-align-start .e-form__buttons__wrapper, .elementor-button-align-end .e-form__buttons__wrapper {
  -webkit-box-flex: initial;
      -ms-flex-positive: initial;
          flex-grow: initial; }
  .elementor-button-align-center .e-form__buttons__wrapper, .elementor-button-align-center .e-form__buttons__wrapper__button, .elementor-button-align-start .e-form__buttons__wrapper, .elementor-button-align-start .e-form__buttons__wrapper__button, .elementor-button-align-end .e-form__buttons__wrapper, .elementor-button-align-end .e-form__buttons__wrapper__button {
    -ms-flex-preferred-size: initial;
        flex-basis: initial; }

@media screen and (max-width: 1024px) {
  .elementor-tablet-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%; }
  .elementor-tablet-button-align-stretch .e-form__buttons__wrapper {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }
    .elementor-tablet-button-align-stretch .e-form__buttons__wrapper__button {
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%; }
  .elementor-tablet-button-align-center .elementor-field-type-submit,
  .elementor-tablet-button-align-center .e-form__buttons {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .elementor-tablet-button-align-start .elementor-field-type-submit,
  .elementor-tablet-button-align-start .e-form__buttons {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
  .elementor-tablet-button-align-end .elementor-field-type-submit,
  .elementor-tablet-button-align-end .e-form__buttons {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
  .elementor-tablet-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-tablet-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-tablet-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
    -ms-flex-preferred-size: initial;
        flex-basis: initial; }
  .elementor-tablet-button-align-center .e-form__buttons__wrapper, .elementor-tablet-button-align-start .e-form__buttons__wrapper, .elementor-tablet-button-align-end .e-form__buttons__wrapper {
    -webkit-box-flex: initial;
        -ms-flex-positive: initial;
            flex-grow: initial; }
    .elementor-tablet-button-align-center .e-form__buttons__wrapper, .elementor-tablet-button-align-center .e-form__buttons__wrapper__button, .elementor-tablet-button-align-start .e-form__buttons__wrapper, .elementor-tablet-button-align-start .e-form__buttons__wrapper__button, .elementor-tablet-button-align-end .e-form__buttons__wrapper, .elementor-tablet-button-align-end .e-form__buttons__wrapper__button {
      -ms-flex-preferred-size: initial;
          flex-basis: initial; } }

@media screen and (max-width: 767px) {
  .elementor-mobile-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%; }
  .elementor-mobile-button-align-stretch .e-form__buttons__wrapper {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }
    .elementor-mobile-button-align-stretch .e-form__buttons__wrapper__button {
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%; }
  .elementor-mobile-button-align-center .elementor-field-type-submit,
  .elementor-mobile-button-align-center .e-form__buttons {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .elementor-mobile-button-align-start .elementor-field-type-submit,
  .elementor-mobile-button-align-start .e-form__buttons {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
  .elementor-mobile-button-align-end .elementor-field-type-submit,
  .elementor-mobile-button-align-end .e-form__buttons {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
  .elementor-mobile-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-mobile-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button, .elementor-mobile-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button {
    -ms-flex-preferred-size: initial;
        flex-basis: initial; }
  .elementor-mobile-button-align-center .e-form__buttons__wrapper, .elementor-mobile-button-align-start .e-form__buttons__wrapper, .elementor-mobile-button-align-end .e-form__buttons__wrapper {
    -webkit-box-flex: initial;
        -ms-flex-positive: initial;
            flex-grow: initial; }
    .elementor-mobile-button-align-center .e-form__buttons__wrapper, .elementor-mobile-button-align-center .e-form__buttons__wrapper__button, .elementor-mobile-button-align-start .e-form__buttons__wrapper, .elementor-mobile-button-align-start .e-form__buttons__wrapper__button, .elementor-mobile-button-align-end .e-form__buttons__wrapper, .elementor-mobile-button-align-end .e-form__buttons__wrapper__button {
      -ms-flex-preferred-size: initial;
          flex-basis: initial; } }

.elementor-error .elementor-field {
  border-color: #d9534f; }

.elementor-error .help-inline {
  color: #d9534f;
  font-size: 0.9em; }

.elementor-message {
  margin: 10px 0;
  font-size: 1em;
  line-height: 1; }
  .elementor-message:before {
    content: "\e90e";
    display: inline-block;
    font-family: eicons;
    font-weight: normal;
    font-style: normal;
    vertical-align: middle;
    margin-left: 5px; }
  .elementor-message.elementor-message-danger {
    color: #d9534f; }
    .elementor-message.elementor-message-danger:before {
      content: "\e87f"; }
  .elementor-message.form-message-success {
    color: #5cb85c; }

.elementor-form .elementor-button {
  padding-top: 0;
  padding-bottom: 0;
  border: none; }
  .elementor-form .elementor-button > span {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .elementor-form .elementor-button.elementor-size-xs {
    min-height: 33px; }
  .elementor-form .elementor-button.elementor-size-sm {
    min-height: 40px; }
  .elementor-form .elementor-button.elementor-size-md {
    min-height: 47px; }
  .elementor-form .elementor-button.elementor-size-lg {
    min-height: 59px; }
  .elementor-form .elementor-button.elementor-size-xl {
    min-height: 72px; }

.elementor-element .elementor-widget-container {
  -webkit-transition: background 0.3s, border 0.3s, -webkit-border-radius 0.3s, -webkit-box-shadow 0.3s;
  transition: background 0.3s, border 0.3s, -webkit-border-radius 0.3s, -webkit-box-shadow 0.3s;
  -o-transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;
  transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;
  transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s, -webkit-border-radius 0.3s, -webkit-box-shadow 0.3s; }

.elementor-button {
  display: inline-block;
  line-height: 1;
  background-color: #818a91;
  font-size: 15px;
  padding: 12px 24px;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  color: #fff;
  fill: #fff;
  text-align: center;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s; }
  .elementor-button:hover, .elementor-button:focus, .elementor-button:visited {
    color: #fff; }
  .elementor-button-content-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .elementor-button-icon {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5; }
    .elementor-button-icon svg {
      width: 1em;
      height: auto; }
    .elementor-button-icon .e-font-icon-svg {
      height: 1em; }
  .elementor-button-text {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -webkit-box-ordinal-group: 11;
        -ms-flex-order: 10;
            order: 10;
    display: inline-block; }
  .elementor-button.elementor-size-xs {
    font-size: 13px;
    padding: 10px 20px;
    -webkit-border-radius: 2px;
            border-radius: 2px; }
  .elementor-button.elementor-size-md {
    font-size: 16px;
    padding: 15px 30px;
    -webkit-border-radius: 4px;
            border-radius: 4px; }
  .elementor-button.elementor-size-lg {
    font-size: 18px;
    padding: 20px 40px;
    -webkit-border-radius: 5px;
            border-radius: 5px; }
  .elementor-button.elementor-size-xl {
    font-size: 20px;
    padding: 25px 50px;
    -webkit-border-radius: 6px;
            border-radius: 6px; }
  .elementor-button .elementor-align-icon-right {
    margin-left: 5px;
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5; }
  .elementor-button .elementor-align-icon-left {
    margin-right: 5px;
    -webkit-box-ordinal-group: 16;
        -ms-flex-order: 15;
            order: 15; }
  .elementor-button span {
    text-decoration: inherit; }

/* TODO: REMOVE THIS EXCEPTION AFTER PRO 2.8 RELEASES */
.elementor-menu-cart__toggle .elementor-button-icon {
  -webkit-box-ordinal-group: 16;
      -ms-flex-order: 15;
          order: 15; }

.elementor-element.elementor-button-info .elementor-button {
  background-color: #5bc0de; }

.elementor-element.elementor-button-success .elementor-button {
  background-color: #5cb85c; }

.elementor-element.elementor-button-warning .elementor-button {
  background-color: #f0ad4e; }

.elementor-element.elementor-button-danger .elementor-button {
  background-color: #d9534f; }

.elementor-widget-button .elementor-button .elementor-button-info {
  background-color: #5bc0de; }

.elementor-widget-button .elementor-button .elementor-button-success {
  background-color: #5cb85c; }

.elementor-widget-button .elementor-button .elementor-button-warning {
  background-color: #f0ad4e; }

.elementor-widget-button .elementor-button .elementor-button-danger {
  background-color: #d9534f; }

.elementor-tab-title a {
  color: inherit; }

.elementor-view-stacked .elementor-icon {
  padding: .5em;
  background-color: #818a91;
  color: #fff;
  fill: #fff; }

.elementor-view-framed .elementor-icon {
  padding: .5em;
  color: #818a91;
  border: 3px solid #818a91;
  background-color: transparent; }

.elementor-icon {
  display: inline-block;
  line-height: 1;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  color: #818a91;
  font-size: 50px;
  text-align: center; }
  .elementor-icon:hover {
    color: #818a91; }
  .elementor-icon i, .elementor-icon svg {
    width: 1em;
    height: 1em;
    position: relative;
    display: block; }
    .elementor-icon i:before, .elementor-icon svg:before {
      position: absolute;
      left: 50%;
      -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
              transform: translateX(-50%); }
  .elementor-icon i.fad {
    width: initial; }

.elementor-shape-circle .elementor-icon {
  -webkit-border-radius: 50%;
          border-radius: 50%; }

.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -ms-touch-action: pan-y;
      touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block; }
  .slick-track:before, .slick-track:after {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  .elementor-slick-slider[dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

.elementor-slick-slider .slick-loading .slick-list {
  background: #fff; }
  .elementor-slick-slider .slick-loading .slick-list:after {
    content: '\e8fb';
    font-family: eicons;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    -webkit-animation: fa-spin 2s infinite linear;
            animation: fa-spin 2s infinite linear;
    font-size: 25px;
    color: #a4afb7; }

.elementor-slick-slider .slick-prev,
.elementor-slick-slider .slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 50%;
  display: block;
  width: 20px;
  padding: 0;
  -webkit-transform: translate(0, -50%);
      -ms-transform: translate(0, -50%);
          transform: translate(0, -50%);
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent; }
  .elementor-slick-slider .slick-prev:hover, .elementor-slick-slider .slick-prev:focus,
  .elementor-slick-slider .slick-next:hover,
  .elementor-slick-slider .slick-next:focus {
    color: transparent;
    outline: none;
    background: transparent; }
    .elementor-slick-slider .slick-prev:hover:before, .elementor-slick-slider .slick-prev:focus:before,
    .elementor-slick-slider .slick-next:hover:before,
    .elementor-slick-slider .slick-next:focus:before {
      opacity: 1; }
  .elementor-slick-slider .slick-prev.slick-disabled:before,
  .elementor-slick-slider .slick-next.slick-disabled:before {
    opacity: .25; }
  .elementor-slick-slider .slick-prev:before,
  .elementor-slick-slider .slick-next:before {
    font-family: eicons;
    font-size: 35px;
    line-height: 1;
    opacity: .75;
    color: white;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }

.elementor-slick-slider .slick-prev {
  left: -25px; }
  [dir="rtl"] .elementor-slick-slider .slick-prev {
    left: auto;
    right: -25px; }
  .elementor-slick-slider .slick-prev:before {
    content: '\e89f'; }
    [dir="rtl"] .elementor-slick-slider .slick-prev:before {
      content: '\e89e'; }

.elementor-slick-slider .slick-next {
  right: -25px; }
  [dir="rtl"] .elementor-slick-slider .slick-next {
    left: -25px;
    right: auto; }
  .elementor-slick-slider .slick-next:before {
    content: '\e89e'; }
    [dir="rtl"] .elementor-slick-slider .slick-next:before {
      content: '\e89f'; }

.elementor-slick-slider .slick-dotted.slick-slider {
  margin-bottom: 30px; }

.elementor-slick-slider ul.slick-dots {
  position: absolute;
  bottom: -25px;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1; }
  .elementor-slick-slider ul.slick-dots li {
    position: relative;
    display: inline-block;
    width: 20px;
    height: 20px;
    margin: 0;
    padding: 0;
    cursor: pointer; }
    .elementor-slick-slider ul.slick-dots li button {
      font-size: 0;
      line-height: 0;
      display: block;
      width: 20px;
      height: 20px;
      padding: 5px;
      cursor: pointer;
      color: transparent;
      border: 0;
      outline: none;
      background: transparent; }
      .elementor-slick-slider ul.slick-dots li button:hover, .elementor-slick-slider ul.slick-dots li button:focus {
        outline: none; }
        .elementor-slick-slider ul.slick-dots li button:hover:before, .elementor-slick-slider ul.slick-dots li button:focus:before {
          opacity: 1; }
      .elementor-slick-slider ul.slick-dots li button:before {
        font-family: eicons;
        font-size: 6px;
        line-height: 20px;
        position: absolute;
        top: 0;
        left: 0;
        width: 20px;
        height: 20px;
        content: '\e914';
        text-align: center;
        opacity: .25;
        color: black;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
    .elementor-slick-slider ul.slick-dots li.slick-active button:before {
      opacity: .75;
      color: black; }

.elementor-slick-slider .slick-arrows-inside .slick-prev {
  left: 20px; }
  [dir="rtl"] .elementor-slick-slider .slick-arrows-inside .slick-prev {
    left: auto;
    right: 20px; }

.elementor-slick-slider .slick-arrows-inside .slick-next {
  right: 20px; }
  [dir="rtl"] .elementor-slick-slider .slick-arrows-inside .slick-next {
    left: 20px;
    right: auto; }

.elementor-slick-slider .slick-dots-inside .slick-dots {
  bottom: 5px; }

.elementor-slick-slider .slick-dots-inside.slick-dotted.slick-slider {
  margin-bottom: 0; }

.elementor-slick-slider .slick-slider .slick-prev,
.elementor-slick-slider .slick-slider .slick-next {
  z-index: 1; }

.elementor-slick-slider .slick-slide img {
  margin: auto; }

/**
 * Swiper 3.4.2
 * Customized by Elementor team
 */
.swiper-container {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  /* Fix of Webkit flickering */
  z-index: 1; }
  .swiper-container .swiper-slide figure {
    line-height: 0; }
  .swiper-container .elementor-lightbox-content-source {
    display: none; }

.swiper-container-no-flexbox .swiper-slide {
  float: left; }

.swiper-container-vertical > .swiper-wrapper {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  -o-transition-property: transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-box-sizing: content-box;
          box-sizing: content-box; }

.swiper-container-android .swiper-slide, .swiper-wrapper {
  -webkit-transform: translate3d(0px, 0, 0);
          transform: translate3d(0px, 0, 0); }

.swiper-container-multirow > .swiper-wrapper {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }

.swiper-container-free-mode > .swiper-wrapper {
  -webkit-transition-timing-function: ease-out;
       -o-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  margin: 0 auto; }

.swiper-slide {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative; }

/* Auto Height */
.swiper-container-autoheight {
  height: auto; }
  .swiper-container-autoheight .swiper-slide {
    height: auto; }
  .swiper-container-autoheight .swiper-wrapper {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-transition-property: height, -webkit-transform;
    transition-property: height, -webkit-transform;
    -o-transition-property: transform, height;
    transition-property: transform, height;
    transition-property: transform, height, -webkit-transform; }

/* a11y */
.swiper-container .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000; }

/* IE10 Windows Phone 8 Fixes */
.swiper-wp8-horizontal {
  -ms-touch-action: pan-y;
      touch-action: pan-y; }

.swiper-wp8-vertical {
  -ms-touch-action: pan-x;
      touch-action: pan-x; }

/* Arrows */
.swiper-button-prev, .swiper-button-next {
  position: absolute;
  top: 50%;
  width: 27px;
  height: 44px;
  margin-top: -22px;
  z-index: 10;
  cursor: pointer;
  -webkit-background-size: 27px 44px;
          background-size: 27px 44px;
  background: no-repeat center; }

.swiper-button-prev.swiper-button-disabled, .swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none; }

.swiper-button-prev, .swiper-container-rtl .swiper-button-next {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  left: 10px;
  right: auto; }

.swiper-button-prev.swiper-button-black, .swiper-container-rtl .swiper-button-next.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-prev.swiper-button-white, .swiper-container-rtl .swiper-button-next.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-next, .swiper-container-rtl .swiper-button-prev {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  right: 10px;
  left: auto; }

.swiper-button-next.swiper-button-black, .swiper-container-rtl .swiper-button-prev.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-next.swiper-button-white, .swiper-container-rtl .swiper-button-prev.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }

/* Pagination Styles */
.swiper-pagination {
  position: absolute;
  text-align: center;
  -webkit-transition: 300ms;
  -o-transition: 300ms;
  transition: 300ms;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  z-index: 10; }
  .swiper-pagination.swiper-pagination-hidden {
    opacity: 0; }

/* Common Styles */
.swiper-pagination-fraction, .swiper-pagination-custom, .swiper-container-horizontal > .swiper-pagination-bullets {
  bottom: 5px;
  left: 0;
  width: 100%; }

/* Bullets */
.swiper-pagination-bullet {
  width: 6px;
  height: 6px;
  display: inline-block;
  -webkit-border-radius: 50%;
          border-radius: 50%;
  background: #000;
  opacity: 0.2; }

.swiper-pagination-fraction {
  color: #000; }

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none; }

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer; }

.swiper-pagination-white .swiper-pagination-bullet {
  background: #fff; }

.swiper-pagination-bullet-active {
  opacity: 1; }

.swiper-pagination-white .swiper-pagination-bullet-active {
  background: #fff; }

.swiper-pagination-black .swiper-pagination-bullet-active {
  background: #000; }

.swiper-container-vertical > .swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  -webkit-transform: translate3d(0px, -50%, 0);
          transform: translate3d(0px, -50%, 0); }
  .swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 5px 0;
    display: block; }

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 6px; }

/* Progressbar */
.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, 0.25);
  position: absolute; }
  .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: #000;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    -webkit-transform: scale(0);
        -ms-transform: scale(0);
            transform: scale(0);
    -webkit-transform-origin: left top;
        -ms-transform-origin: left top;
            transform-origin: left top; }

.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  -webkit-transform-origin: right top;
      -ms-transform-origin: right top;
          transform-origin: right top; }

.swiper-container-horizontal > .swiper-pagination-progressbar {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0; }

.swiper-container-vertical > .swiper-pagination-progressbar {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0; }

.swiper-pagination-progressbar.swiper-pagination-white {
  background: rgba(255, 255, 255, 0.5); }
  .swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill {
    background: #fff; }

.swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill {
  background: #000; }

/* 3D Container */
.swiper-container-3d {
  -webkit-perspective: 1200px;
          perspective: 1200px; }
  .swiper-container-3d .swiper-wrapper, .swiper-container-3d .swiper-slide, .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top, .swiper-container-3d .swiper-slide-shadow-bottom, .swiper-container-3d .swiper-cube-shadow {
    -webkit-transform-style: preserve-3d;
            transform-style: preserve-3d; }
  .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top, .swiper-container-3d .swiper-slide-shadow-bottom {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10; }
  .swiper-container-3d .swiper-slide-shadow-left {
    background-image: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
    background-image: -webkit-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: -o-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }
  .swiper-container-3d .swiper-slide-shadow-right {
    background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
    background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }
  .swiper-container-3d .swiper-slide-shadow-top {
    background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
    background-image: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: -o-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }
  .swiper-container-3d .swiper-slide-shadow-bottom {
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
    background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: -o-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

/* Coverflow */
.swiper-container-coverflow .swiper-wrapper, .swiper-container-flip .swiper-wrapper {
  /* Windows 8 IE 10 fix */
  -ms-perspective: 1200px; }

/* Cube + Flip */
.swiper-container-cube, .swiper-container-flip {
  overflow: visible; }

.swiper-container-cube .swiper-slide, .swiper-container-flip .swiper-slide {
  pointer-events: none;
  z-index: 1; }

.swiper-container-cube .swiper-slide .swiper-slide, .swiper-container-flip .swiper-slide .swiper-slide {
  pointer-events: none; }

.swiper-container-cube .swiper-slide-active, .swiper-container-flip .swiper-slide-active, .swiper-container-cube .swiper-slide-active .swiper-slide-active, .swiper-container-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto; }

.swiper-container-cube .swiper-slide-shadow-top, .swiper-container-flip .swiper-slide-shadow-top, .swiper-container-cube .swiper-slide-shadow-bottom, .swiper-container-flip .swiper-slide-shadow-bottom, .swiper-container-cube .swiper-slide-shadow-left, .swiper-container-flip .swiper-slide-shadow-left, .swiper-container-cube .swiper-slide-shadow-right, .swiper-container-flip .swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

/* Cube */
.swiper-container-cube .swiper-slide {
  visibility: hidden;
  -webkit-transform-origin: 0 0;
      -ms-transform-origin: 0 0;
          transform-origin: 0 0;
  width: 100%;
  height: 100%; }

.swiper-container-cube.swiper-container-rtl .swiper-slide {
  -webkit-transform-origin: 100% 0;
      -ms-transform-origin: 100% 0;
          transform-origin: 100% 0; }

.swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-next, .swiper-container-cube .swiper-slide-prev, .swiper-container-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible; }

.swiper-container-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0.6;
  -webkit-filter: blur(50px);
  filter: blur(50px);
  z-index: 0; }

/* Fade */
.swiper-container-fade.swiper-container-free-mode .swiper-slide {
  -webkit-transition-timing-function: ease-out;
       -o-transition-timing-function: ease-out;
          transition-timing-function: ease-out; }

.swiper-container-fade .swiper-slide {
  pointer-events: none;
  -webkit-transition-property: opacity;
  -o-transition-property: opacity;
  transition-property: opacity; }
  .swiper-container-fade .swiper-slide .swiper-slide {
    pointer-events: none; }

.swiper-container-fade .swiper-slide-active {
  pointer-events: auto; }
  .swiper-container-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto; }

.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center; }
  .swiper-zoom-container > img, .swiper-zoom-container > svg, .swiper-zoom-container > canvas {
    max-width: 100%;
    max-height: 100%;
    -o-object-fit: contain;
       object-fit: contain; }

/* Scrollbar */
.swiper-scrollbar {
  -webkit-border-radius: 10px;
          border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, 0.1); }

.swiper-container-horizontal > .swiper-scrollbar {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 50;
  height: 5px;
  width: 98%; }

.swiper-container-vertical > .swiper-scrollbar {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%; }

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  -webkit-border-radius: 10px;
          border-radius: 10px;
  left: 0;
  top: 0; }

.swiper-scrollbar-cursor-drag {
  cursor: move; }

.elementor-pagination-position-outside .swiper-container {
  padding-bottom: 30px; }

.elementor-pagination-position-outside .elementor-swiper-button {
  top: calc(50% - 30px / 2); }

.elementor-swiper {
  position: relative; }

.elementor-main-swiper {
  position: static; }

.elementor-arrows-position-outside .swiper-container {
  width: calc(100% - 60px); }

.elementor-arrows-position-outside .elementor-swiper-button-prev {
  left: 0; }

.elementor-arrows-position-outside .elementor-swiper-button-next {
  right: 0; }

.swiper-image-stretch .swiper-slide .swiper-slide-image {
  width: 100%; }

.elementor-swiper-button {
  position: absolute;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  z-index: 1;
  cursor: pointer;
  font-size: 25px;
  color: rgba(238, 238, 238, 0.9);
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%); }
  .elementor-swiper-button-prev {
    left: 10px; }
  .elementor-swiper-button-next {
    right: 10px; }
  .elementor-swiper-button.swiper-button-disabled {
    opacity: 0.3; }

.swiper-container-cube .elementor-swiper-button {
  -webkit-transform: translate3d(0, -50%, 1px);
          transform: translate3d(0, -50%, 1px); }

/* Preloader */
.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  -webkit-transform-origin: 50%;
      -ms-transform-origin: 50%;
          transform-origin: 50%;
  -webkit-animation: swiper-preloader-spin 1s steps(12, end) infinite;
          animation: swiper-preloader-spin 1s steps(12, end) infinite; }
  .swiper-lazy-preloader:after {
    display: block;
    content: "";
    width: 100%;
    height: 100%;
    -webkit-background-size: 100% 100%;
            background-size: 100%;
    background: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%236c6c6c'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat 50%; }

.swiper-lazy-preloader-white:after {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%23fff'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }

@-webkit-keyframes swiper-preloader-spin {
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

@keyframes swiper-preloader-spin {
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

.elementor-lightbox {
  --lightbox-ui-color: rgba(238, 238, 238, 0.9);
  --lightbox-ui-color-hover: #fff;
  --lightbox-text-color: var(--lightbox-ui-color);
  --lightbox-header-icons-size: 20px;
  --lightbox-navigation-icons-size: 25px; }
  .elementor-lightbox .dialog-header {
    display: none; }
  .elementor-lightbox .dialog-widget-content {
    background: none;
    -webkit-box-shadow: none;
            box-shadow: none;
    width: 100%;
    height: 100%; }
  .elementor-lightbox .dialog-message {
    -webkit-animation-duration: .3s;
            animation-duration: .3s; }
    .elementor-lightbox .dialog-message:not(.elementor-fit-aspect-ratio) {
      height: 100%; }
    .elementor-lightbox .dialog-message.dialog-lightbox-message {
      padding: 0; }
  .elementor-lightbox .dialog-lightbox-close-button {
    cursor: pointer;
    position: absolute;
    font-size: var(--lightbox-header-icons-size);
    left: 0.75em;
    margin-top: 13px;
    padding: .25em;
    z-index: 2;
    line-height: 1; }
  .elementor-lightbox .dialog-lightbox-close-button,
  .elementor-lightbox .elementor-swiper-button {
    color: var(--lightbox-ui-color);
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    opacity: 1; }
    .elementor-lightbox .dialog-lightbox-close-button:hover,
    .elementor-lightbox .elementor-swiper-button:hover {
      color: var(--lightbox-ui-color-hover); }
  .elementor-lightbox .swiper-container {
    height: 100%; }
  .elementor-lightbox .elementor-lightbox-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative;
    padding: 70px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    height: 100%;
    margin: auto; }
    @media (max-width: 767px) {
      .elementor-lightbox .elementor-lightbox-item {
        padding: 70px 0; } }
  .elementor-lightbox .elementor-lightbox-image {
    max-height: 100%;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none; }
    .elementor-lightbox .elementor-lightbox-image, .elementor-lightbox .elementor-lightbox-image:hover {
      opacity: 1;
      -webkit-filter: none;
              filter: none;
      border: none; }
  .elementor-lightbox .elementor-lightbox-image, .elementor-lightbox .elementor-video-container {
    -webkit-box-shadow: 0 0 30px rgba(0, 0, 0, 0.3), 0 0 8px -5px rgba(0, 0, 0, 0.3);
            box-shadow: 0 0 30px rgba(0, 0, 0, 0.3), 0 0 8px -5px rgba(0, 0, 0, 0.3);
    -webkit-border-radius: 2px;
            border-radius: 2px; }
  .elementor-lightbox .elementor-video-container {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }
    @media (min-width: 1025px) {
      .elementor-lightbox .elementor-video-container {
        width: 75%; } }
    @media (max-width: 1024px) {
      .elementor-lightbox .elementor-video-container {
        width: 100%; } }
  @media (min-width: 768px) and (max-width: 1024px) {
    .elementor-lightbox .elementor-aspect-ratio-916 .elementor-video-container {
      width: 70%; } }
  .elementor-lightbox .elementor-swiper-button:focus {
    outline-width: 1px; }
  .elementor-lightbox .elementor-swiper-button-prev, .elementor-lightbox .elementor-swiper-button-next {
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 15%;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: var(--lightbox-navigation-icons-size); }
  .elementor-lightbox .elementor-swiper-button-prev {
    left: 0; }
  .elementor-lightbox .elementor-swiper-button-next {
    right: 0; }
  @media (max-width: 767px) {
    .elementor-lightbox .elementor-swiper-button:focus {
      outline: none; }
    .elementor-lightbox .elementor-swiper-button-prev, .elementor-lightbox .elementor-swiper-button-next {
      width: 20%; }
      .elementor-lightbox .elementor-swiper-button-prev i, .elementor-lightbox .elementor-swiper-button-next i {
        padding: 10px;
        background-color: rgba(0, 0, 0, 0.5); }
    .elementor-lightbox .elementor-swiper-button-prev {
      left: 0;
      -webkit-box-pack: start;
          -ms-flex-pack: start;
              justify-content: flex-start; }
    .elementor-lightbox .elementor-swiper-button-next {
      right: 0;
      -webkit-box-pack: end;
          -ms-flex-pack: end;
              justify-content: flex-end; } }

.elementor-slideshow__counter {
  color: currentColor;
  font-size: .75em;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content; }

.elementor-slideshow__header, .elementor-slideshow__footer {
  position: absolute;
  left: 0;
  width: 100%;
  padding: 15px 20px;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s; }

.elementor-slideshow__footer {
  color: var(--lightbox-text-color); }

.elementor-slideshow__header {
  color: var(--lightbox-ui-color);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  font-size: var(--lightbox-header-icons-size);
  padding-right: 1em;
  padding-left: 2.6em;
  top: 0;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  z-index: 10; }
  .elementor-slideshow__header > i {
    font-size: inherit;
    cursor: pointer;
    padding: .25em;
    margin: 0 .35em; }
    .elementor-slideshow__header > i:hover {
      color: var(--lightbox-ui-color-hover); }
  .elementor-slideshow__header .elementor-slideshow__counter {
    margin-left: auto; }
  .elementor-slideshow__header .elementor-icon-share {
    z-index: 5; }

.elementor-slideshow__share-menu {
  background-color: rgba(0, 0, 0, 0);
  width: 0;
  height: 0;
  position: absolute;
  overflow: hidden;
  -webkit-transition: background-color 400ms;
  -o-transition: background-color 400ms;
  transition: background-color 400ms; }
  .elementor-slideshow__share-menu .elementor-slideshow__share-links a {
    color: #2C2C2C; }

.elementor-slideshow__share-links {
  display: block;
  position: absolute;
  min-width: 200px;
  left: 2.8em;
  top: 3em;
  background-color: #fff;
  -webkit-border-radius: 3px;
          border-radius: 3px;
  padding: 14px 20px;
  -webkit-transform: scale(0);
      -ms-transform: scale(0);
          transform: scale(0);
  opacity: 0;
  -webkit-transform-origin: 90% 10%;
      -ms-transform-origin: 90% 10%;
          transform-origin: 90% 10%;
  -webkit-transition: all 250ms 100ms;
  -o-transition: all 250ms 100ms;
  transition: all 250ms 100ms;
  -webkit-box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
          box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3); }
  .elementor-slideshow__share-links a {
    text-align: right;
    color: #55595c;
    font-size: 12px;
    line-height: 2.5;
    display: block;
    opacity: 0;
    -webkit-transition: opacity 500ms 100ms;
    -o-transition: opacity 500ms 100ms;
    transition: opacity 500ms 100ms; }
    .elementor-slideshow__share-links a:hover {
      color: #000; }
    .elementor-slideshow__share-links a i {
      font-size: 1.25em;
      margin-left: 0.75em; }
  .elementor-slideshow__share-links:before {
    content: '';
    display: block;
    position: absolute;
    top: 1px;
    left: 0.5em;
    border: .45em solid;
    border-color: transparent transparent #fff transparent;
    -webkit-transform: translateY(-100%) scaleX(0.7);
        -ms-transform: translateY(-100%) scaleX(0.7);
            transform: translateY(-100%) scaleX(0.7); }

.elementor-slideshow__footer {
  bottom: 0;
  z-index: 5;
  position: fixed; }

.elementor-slideshow__title, .elementor-slideshow__description {
  margin: 0; }

.elementor-slideshow__title {
  font-size: 16px;
  font-weight: bold; }

.elementor-slideshow__description {
  font-size: 14px; }

.elementor-slideshow--ui-hidden .elementor-slideshow__header, .elementor-slideshow--ui-hidden .elementor-slideshow__footer {
  opacity: 0;
  pointer-events: none; }

.elementor-slideshow--ui-hidden .elementor-swiper-button-prev, .elementor-slideshow--ui-hidden .elementor-swiper-button-next {
  opacity: 0; }

.elementor-slideshow--fullscreen-mode .elementor-video-container {
  width: 100%; }

.elementor-slideshow--zoom-mode .elementor-slideshow__header, .elementor-slideshow--zoom-mode .elementor-slideshow__footer {
  background-color: rgba(0, 0, 0, 0.5); }

.elementor-slideshow--zoom-mode .elementor-swiper-button-prev, .elementor-slideshow--zoom-mode .elementor-swiper-button-next {
  opacity: 0;
  pointer-events: none; }

.elementor-slideshow--share-mode .elementor-slideshow__share-menu {
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  opacity: 1;
  cursor: default;
  background-color: rgba(0, 0, 0, 0.5); }

.elementor-slideshow--share-mode .elementor-slideshow__share-links {
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1); }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links, .elementor-slideshow--share-mode .elementor-slideshow__share-links a {
    opacity: 1; }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-twitter {
    color: #1DA1F2; }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-facebook {
    color: #3b5998; }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-pinterest {
    color: #bd081c; }
  .elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-download-bold {
    color: #a4afb7; }

.elementor-slideshow--share-mode .eicon-share-arrow {
  z-index: 2; }

.animated {
  -webkit-animation-duration: 1.25s;
          animation-duration: 1.25s; }
  .animated.animated-slow {
    -webkit-animation-duration: 2s;
            animation-duration: 2s; }
  .animated.animated-fast {
    -webkit-animation-duration: .75s;
            animation-duration: .75s; }
  .animated.infinite {
    -webkit-animation-iteration-count: infinite;
            animation-iteration-count: infinite; }
  .animated.reverse {
    animation-direction: reverse;
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards; }

@media (prefers-reduced-motion: reduce) {
  .animated {
    -webkit-animation: none;
            animation: none; } }

.elementor-shape {
  overflow: hidden;
  position: absolute;
  left: 0;
  width: 100%;
  line-height: 0;
  direction: ltr;
  /*
	 * @TODO: The `z-index: -1` rules below are temporary fixes for Chrome 85 issue.
	 *   It will be removed in a future version of Chrome.
	 */ }
  .elementor-shape-top {
    top: -1px; }
    .elementor-shape-top:not([data-negative="false"]) svg {
      z-index: -1; }
  .elementor-shape-bottom {
    bottom: -1px; }
    .elementor-shape-bottom:not([data-negative="true"]) svg {
      z-index: -1; }
  .elementor-shape[data-negative="false"].elementor-shape-bottom {
    -webkit-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
            transform: rotate(180deg); }
  .elementor-shape[data-negative="true"].elementor-shape-top {
    -webkit-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
            transform: rotate(180deg); }
  .elementor-shape svg {
    display: block;
    width: calc(100% + 1.3px);
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%); }
  .elementor-shape .elementor-shape-fill {
    fill: #fff;
    -webkit-transform-origin: center;
        -ms-transform-origin: center;
            transform-origin: center;
    -webkit-transform: rotateY(0deg);
            transform: rotateY(0deg); }

#wp-admin-bar-elementor_edit_page .ab-submenu .ab-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 200px; }

#wp-admin-bar-elementor_edit_page .elementor-edit-link-title {
  white-space: nowrap;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  overflow: hidden;
  width: 100%; }

#wp-admin-bar-elementor_edit_page .elementor-edit-link-type {
  background: #55595c;
  font-size: 11px;
  line-height: 9px;
  margin-top: 6px;
  padding: 4px 8px;
  -webkit-border-radius: 3px;
          border-radius: 3px; }

.page-template-elementor_canvas.elementor-page:before {
  display: none; }

.elementor-post__thumbnail__link {
  -webkit-transition: none;
  -o-transition: none;
  transition: none; }

#left-area ul.elementor-icon-list-items,
.elementor .elementor-element ul.elementor-icon-list-items,
.elementor-edit-area .elementor-element ul.elementor-icon-list-items {
  padding: 0; }

#wpadminbar * {
  font-style: normal; }

.e--ua-appleWebkit.rtl {
  --flex-right: flex-start; }

.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-right,
.e--ua-appleWebkit .elementor-share-buttons--align-right {
  --justify-content: var(--flex-right, flex-end); }

.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-center,
.e--ua-appleWebkit .elementor-share-buttons--align-center {
  --justify-content: center; }

.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-justify .elementor-grid {
  width: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: var(--justify-content, space-between);
      -ms-flex-pack: var(--justify-content, space-between);
          justify-content: var(--justify-content, space-between);
  margin-left: calc(-0.5 * var(--grid-column-gap));
  margin-right: calc(-0.5 * var(--grid-column-gap)); }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-justify .elementor-grid-item {
    margin-left: calc(0.5 * var(--grid-column-gap));
    margin-right: calc(0.5 * var(--grid-column-gap)); }

.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid {
  display: inline-block; }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid-item {
    margin-left: 0;
    margin-right: 0; }

@media (max-width: 1024px) {
  .e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-tablet-right,
  .e--ua-appleWebkit .elementor-share-buttons-tablet--align-right {
    --justify-content: var(--flex-right, flex-end); }
  .e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-tablet-center,
  .e--ua-appleWebkit .elementor-share-buttons-tablet--align-center {
    --justify-content: center; }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-justify .elementor-grid {
    width: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: var(--justify-content, space-between);
        -ms-flex-pack: var(--justify-content, space-between);
            justify-content: var(--justify-content, space-between);
    margin-left: calc(-0.5 * var(--grid-column-gap));
    margin-right: calc(-0.5 * var(--grid-column-gap)); }
    .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-justify .elementor-grid-item {
      margin-left: calc(0.5 * var(--grid-column-gap));
      margin-right: calc(0.5 * var(--grid-column-gap)); }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid {
    display: inline-block; }
    .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid-item {
      margin-left: 0;
      margin-right: 0; } }

@media (max-width: 767px) {
  .e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-mobile-right,
  .e--ua-appleWebkit .elementor-share-buttons-mobile--align-right {
    --justify-content: var(--flex-right, flex-end); }
  .e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-mobile-center,
  .e--ua-appleWebkit .elementor-share-buttons-mobile--align-center {
    --justify-content: center; }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-right .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-center .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-justify .elementor-grid {
    width: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: var(--justify-content, space-between);
        -ms-flex-pack: var(--justify-content, space-between);
            justify-content: var(--justify-content, space-between);
    margin-left: calc(-0.5 * var(--grid-column-gap));
    margin-right: calc(-0.5 * var(--grid-column-gap)); }
    .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-right .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-center .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-justify .elementor-grid-item {
      margin-left: calc(0.5 * var(--grid-column-gap));
      margin-right: calc(0.5 * var(--grid-column-gap)); }
  .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid {
    display: inline-block; }
    .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid-item, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid, .e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid-item {
      margin-left: 0;
      margin-right: 0; } }

@media (max-width: 767px) {
  .elementor .elementor-hidden-mobile {
    display: none; }
  .elementor .elementor-hidden-phone {
    display: none; } }

@media (min-width: -1px) and (max-width: -1px) {
  .elementor .elementor-hidden-mobile_extra {
    display: none; } }

@media (min-width: 768px) and (max-width: 1024px) {
  .elementor .elementor-hidden-tablet {
    display: none; } }

@media (min-width: -1px) and (max-width: -1px) {
  .elementor .elementor-hidden-tablet_extra {
    display: none; } }

@media (min-width: -1px) and (max-width: -1px) {
  .elementor .elementor-hidden-laptop {
    display: none; } }

@media (min-width: 1025px) and (max-width: 99999px) {
  .elementor .elementor-hidden-desktop {
    display: none; } }

@media (min-width: -1px) {
  .elementor .elementor-hidden-widescreen {
    display: none; } }

.elementor-widget-text-path {
  font-size: 20px;
  text-align: var(--alignment, right); }
  .elementor-widget-text-path svg {
    width: var(--width);
    max-width: 100%;
    height: auto;
    overflow: visible;
    word-spacing: var(--word-spacing);
    -webkit-transform: rotate(var(--rotate, 0)) scaleX(var(--scale-x, 1)) scaleY(var(--scale-y, 1));
        -ms-transform: rotate(var(--rotate, 0)) scaleX(var(--scale-x, 1)) scaleY(var(--scale-y, 1));
            transform: rotate(var(--rotate, 0)) scaleX(var(--scale-x, 1)) scaleY(var(--scale-y, 1)); }
    .elementor-widget-text-path svg path {
      vector-effect: non-scaling-stroke;
      /* Prevent stroke size scaling when resizing the SVG. */
      fill: var(--path-fill, transparent);
      stroke: var(--stroke-color, transparent);
      stroke-width: var(--stroke-width, 1px);
      -webkit-transition: var(--stroke-transition) stroke, var(--stroke-transition) fill;
      -o-transition: var(--stroke-transition) stroke, var(--stroke-transition) fill;
      transition: var(--stroke-transition) stroke, var(--stroke-transition) fill; }
    .elementor-widget-text-path svg:hover path {
      --path-fill: var( --path-fill-hover );
      --stroke-color: var( --stroke-color-hover );
      --stroke-width: var( --stroke-width-hover ); }
    .elementor-widget-text-path svg text {
      --fill: var( --text-color );
      fill: var(--fill);
      direction: var(--direction, rtl);
      -webkit-transition: var(--transition) stroke, var(--transition) stroke-width, var(--transition) fill;
      -o-transition: var(--transition) stroke, var(--transition) stroke-width, var(--transition) fill;
      transition: var(--transition) stroke, var(--transition) stroke-width, var(--transition) fill; }
      .elementor-widget-text-path svg text:hover {
        --color: var( --text-color-hover, var( --text-color ) );
        --fill: var( --color );
        color: var(--color); }

.elementor-accordion {
  text-align: right; }
  .elementor-accordion .elementor-accordion-item {
    border: 1px solid #D4D4D4; }
    .elementor-accordion .elementor-accordion-item + .elementor-accordion-item {
      border-top: none; }
  .elementor-accordion .elementor-tab-title {
    margin: 0;
    padding: 15px 20px;
    font-weight: bold;
    line-height: 1;
    cursor: pointer;
    outline: none; }
    .elementor-accordion .elementor-tab-title .elementor-accordion-icon {
      display: inline-block;
      width: 1.5em; }
      .elementor-accordion .elementor-tab-title .elementor-accordion-icon svg {
        width: 1em;
        height: 1em; }
      .elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-right {
        float: right;
        text-align: right; }
      .elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-left {
        float: left;
        text-align: left; }
      .elementor-accordion .elementor-tab-title .elementor-accordion-icon .elementor-accordion-icon-closed {
        display: block; }
      .elementor-accordion .elementor-tab-title .elementor-accordion-icon .elementor-accordion-icon-opened {
        display: none; }
    .elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-closed {
      display: none; }
    .elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-opened {
      display: block; }
  .elementor-accordion .elementor-tab-content {
    display: none;
    padding: 15px 20px;
    border-top: 1px solid #D4D4D4; }

@media (max-width: 767px) {
  .elementor-accordion .elementor-tab-title {
    padding: 12px 15px; }
    .elementor-accordion .elementor-tab-title .elementor-accordion-icon {
      width: 1.2em; }
  .elementor-accordion .elementor-tab-content {
    padding: 7px 15px; } }

.elementor-alert {
  padding: 15px;
  border-left: 5px solid transparent;
  position: relative;
  text-align: right; }
  .elementor-alert .elementor-alert-title {
    display: block;
    font-weight: bold; }
  .elementor-alert .elementor-alert-description {
    font-size: 13px; }
  .elementor-alert button.elementor-alert-dismiss {
    position: absolute;
    left: 10px;
    top: 10px;
    padding: 3px;
    font-size: 20px;
    line-height: 1;
    background: transparent;
    color: inherit;
    border: none;
    cursor: pointer; }
  .elementor-alert.elementor-alert-info {
    color: #31708f;
    background-color: #d9edf7;
    border-color: #bcdff1; }
  .elementor-alert.elementor-alert-success {
    color: #3c763d;
    background-color: #dff0d8;
    border-color: #cae6be; }
  .elementor-alert.elementor-alert-warning {
    color: #8a6d3b;
    background-color: #fcf8e3;
    border-color: #f9f0c3; }
  .elementor-alert.elementor-alert-danger {
    color: #a94442;
    background-color: #f2dede;
    border-color: #e8c4c4; }

@media (max-width: 767px) {
  .elementor-alert {
    padding: 10px; }
    .elementor-alert button.elementor-alert-dismiss {
      right: 7px;
      top: 7px; } }

.elementor-counter .elementor-counter-number-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 69px;
  font-weight: 600;
  line-height: 1; }

.elementor-counter .elementor-counter-number-prefix, .elementor-counter .elementor-counter-number-suffix {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  white-space: pre-wrap; }

.elementor-counter .elementor-counter-number-prefix {
  text-align: left; }

.elementor-counter .elementor-counter-number-suffix {
  text-align: right; }

.elementor-counter .elementor-counter-title {
  text-align: center;
  font-size: 19px;
  font-weight: 400;
  line-height: 2.5; }

.elementor-widget-divider {
  --divider-border-style: none;
  --divider-border-width: 1px;
  --divider-color: #2C2C2C;
  --divider-icon-size: 20px;
  --divider-element-spacing: 10px;
  --divider-pattern-height: 24px;
  --divider-pattern-size: 20px;
  --divider-pattern-url: none;
  --divider-pattern-repeat: repeat-x; }
  .elementor-widget-divider .elementor-divider {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .elementor-widget-divider .elementor-divider__text {
      font-size: 15px;
      line-height: 1;
      max-width: 95%; }
    .elementor-widget-divider .elementor-divider__element {
      margin: 0 var(--divider-element-spacing);
      -ms-flex-negative: 0;
          flex-shrink: 0; }
  .elementor-widget-divider .elementor-icon {
    font-size: var(--divider-icon-size); }
  .elementor-widget-divider .elementor-divider-separator {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0;
    direction: ltr; }
  .elementor-widget-divider--view-line_text .elementor-divider-separator, .elementor-widget-divider--view-line_icon .elementor-divider-separator {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .elementor-widget-divider--view-line_text .elementor-divider-separator:before, .elementor-widget-divider--view-line_text .elementor-divider-separator:after, .elementor-widget-divider--view-line_icon .elementor-divider-separator:before, .elementor-widget-divider--view-line_icon .elementor-divider-separator:after {
      display: block;
      content: '';
      border-bottom: 0;
      -webkit-box-flex: 1;
          -ms-flex-positive: 1;
              flex-grow: 1;
      border-top: var(--divider-border-width) var(--divider-border-style) var(--divider-color); }
  .elementor-widget-divider--element-align-left .elementor-divider .elementor-divider-separator > .elementor-divider__svg:first-of-type {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 100;
        flex-shrink: 100; }
  .elementor-widget-divider--element-align-left .elementor-divider-separator:before {
    content: none; }
  .elementor-widget-divider--element-align-left .elementor-divider__element {
    margin-left: 0; }
  .elementor-widget-divider--element-align-right .elementor-divider .elementor-divider-separator > .elementor-divider__svg:last-of-type {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    -ms-flex-negative: 100;
        flex-shrink: 100; }
  .elementor-widget-divider--element-align-right .elementor-divider-separator:after {
    content: none; }
  .elementor-widget-divider--element-align-right .elementor-divider__element {
    margin-right: 0; }
  .elementor-widget-divider:not(.elementor-widget-divider--view-line_text):not(.elementor-widget-divider--view-line_icon) .elementor-divider-separator {
    border-top: var(--divider-border-width) var(--divider-border-style) var(--divider-color); }
  .elementor-widget-divider--separator-type-pattern {
    --divider-border-style: none; }
    .elementor-widget-divider--separator-type-pattern.elementor-widget-divider--view-line .elementor-divider-separator,
    .elementor-widget-divider--separator-type-pattern:not([class*=elementor-widget-divider--view]) .elementor-divider-separator,
    .elementor-widget-divider--separator-type-pattern:not(.elementor-widget-divider--view-line) .elementor-divider-separator:before,
    .elementor-widget-divider--separator-type-pattern:not(.elementor-widget-divider--view-line) .elementor-divider-separator:after {
      width: 100%;
      min-height: var(--divider-pattern-height);
      -webkit-mask-size: var(--divider-pattern-size) 100%;
      mask-size: var(--divider-pattern-size) 100%;
      -webkit-mask-repeat: var(--divider-pattern-repeat);
      mask-repeat: var(--divider-pattern-repeat);
      background-color: var(--divider-color);
      -webkit-mask-image: var(--divider-pattern-url);
      mask-image: var(--divider-pattern-url); }
  .elementor-widget-divider--no-spacing {
    --divider-pattern-size: auto; }
  .elementor-widget-divider--bg-round {
    --divider-pattern-repeat: round; }

.rtl .elementor-widget-divider .elementor-divider__text {
  direction: rtl; }

.elementor-image-gallery .gallery-item {
  display: inline-block;
  text-align: center;
  vertical-align: top;
  width: 100%;
  max-width: 100%;
  margin: 0 auto; }
  .elementor-image-gallery .gallery-item img {
    margin: 0 auto; }
  .elementor-image-gallery .gallery-item .gallery-caption {
    margin: 0; }

.elementor-image-gallery figure img {
  display: block; }

.elementor-image-gallery figure figcaption {
  width: 100%; }

.gallery-spacing-custom .elementor-image-gallery .gallery-icon {
  padding: 0; }

@media (min-width: 768px) {
  .elementor-image-gallery .gallery-columns-2 .gallery-item {
    max-width: 50%; }
  .elementor-image-gallery .gallery-columns-3 .gallery-item {
    max-width: 33.33%; }
  .elementor-image-gallery .gallery-columns-4 .gallery-item {
    max-width: 25%; }
  .elementor-image-gallery .gallery-columns-5 .gallery-item {
    max-width: 20%; }
  .elementor-image-gallery .gallery-columns-6 .gallery-item {
    max-width: 16.666%; }
  .elementor-image-gallery .gallery-columns-7 .gallery-item {
    max-width: 14.28%; }
  .elementor-image-gallery .gallery-columns-8 .gallery-item {
    max-width: 12.5%; }
  .elementor-image-gallery .gallery-columns-9 .gallery-item {
    max-width: 11.11%; }
  .elementor-image-gallery .gallery-columns-10 .gallery-item {
    max-width: 10%; } }

@media (min-width: 480px) and (max-width: 767px) {
  .elementor-image-gallery .gallery.gallery-columns-2 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-3 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-4 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-5 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-6 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-7 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-8 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-9 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-10 .gallery-item {
    max-width: 50%; } }

@media (max-width: 479px) {
  .elementor-image-gallery .gallery.gallery-columns-2 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-3 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-4 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-5 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-6 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-7 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-8 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-9 .gallery-item, .elementor-image-gallery .gallery.gallery-columns-10 .gallery-item {
    max-width: 100%; } }

.elementor-widget-google_maps .elementor-widget-container {
  overflow: hidden; }

.elementor-widget-google_maps iframe {
  height: 300px; }

.elementor-heading-title {
  padding: 0;
  margin: 0;
  line-height: 1; }

.elementor-widget-heading .elementor-heading-title[class*="elementor-size-"] > a {
  color: inherit;
  font-size: inherit;
  line-height: inherit; }

.elementor-widget-heading .elementor-heading-title.elementor-size-small {
  font-size: 15px; }

.elementor-widget-heading .elementor-heading-title.elementor-size-medium {
  font-size: 19px; }

.elementor-widget-heading .elementor-heading-title.elementor-size-large {
  font-size: 29px; }

.elementor-widget-heading .elementor-heading-title.elementor-size-xl {
  font-size: 39px; }

.elementor-widget-heading .elementor-heading-title.elementor-size-xxl {
  font-size: 59px; }

@media (min-width: 768px) {
  .elementor-widget-icon-box.elementor-position-left .elementor-icon-box-wrapper, .elementor-widget-icon-box.elementor-position-right .elementor-icon-box-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .elementor-widget-icon-box.elementor-position-left .elementor-icon-box-icon, .elementor-widget-icon-box.elementor-position-right .elementor-icon-box-icon {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
  .elementor-widget-icon-box.elementor-position-right .elementor-icon-box-wrapper {
    text-align: left;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row; }
  .elementor-widget-icon-box.elementor-position-left .elementor-icon-box-wrapper {
    text-align: right;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .elementor-widget-icon-box.elementor-position-top .elementor-icon-box-img {
    margin: auto; }
  .elementor-widget-icon-box.elementor-vertical-align-top .elementor-icon-box-wrapper {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start; }
  .elementor-widget-icon-box.elementor-vertical-align-middle .elementor-icon-box-wrapper {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .elementor-widget-icon-box.elementor-vertical-align-bottom .elementor-icon-box-wrapper {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end; } }

@media (max-width: 767px) {
  .elementor-widget-icon-box .elementor-icon-box-icon {
    margin-left: auto !important;
    margin-right: auto !important;
    margin-bottom: 15px; } }

.elementor-widget-icon-box .elementor-icon-box-wrapper {
  text-align: center; }

.elementor-widget-icon-box .elementor-icon-box-title a {
  color: inherit; }

.elementor-widget-icon-box .elementor-icon-box-content {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1; }

.elementor-widget-icon-box .elementor-icon-box-description {
  margin: 0; }

.elementor-widget.elementor-icon-list--layout-inline .elementor-widget-container {
  overflow: hidden; }

.elementor-widget .elementor-icon-list-items.elementor-inline-items {
  margin-right: -8px;
  margin-left: -8px; }
  .elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item {
    margin-right: 8px;
    margin-left: 8px; }
    .elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after {
      width: auto;
      left: auto;
      right: auto;
      position: relative;
      height: 100%;
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      border-top: 0;
      border-bottom: 0;
      border-right: 0;
      border-left-width: 1px;
      border-style: solid;
      left: -8px; }

.elementor-widget .elementor-icon-list-items {
  list-style-type: none;
  margin: 0;
  padding: 0; }

.elementor-widget .elementor-icon-list-item {
  margin: 0;
  padding: 0;
  position: relative; }
  .elementor-widget .elementor-icon-list-item:after {
    position: absolute;
    bottom: 0;
    width: 100%; }
  .elementor-widget .elementor-icon-list-item, .elementor-widget .elementor-icon-list-item a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: inherit; }

.elementor-widget .elementor-icon-list-icon + .elementor-icon-list-text {
  -ms-flex-item-align: center;
      align-self: center;
  padding-right: 5px; }

.elementor-widget .elementor-icon-list-icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  .elementor-widget .elementor-icon-list-icon svg {
    width: var(--e-icon-list-icon-size, 1em);
    height: var(--e-icon-list-icon-size, 1em); }
  .elementor-widget .elementor-icon-list-icon i {
    width: 1.25em;
    font-size: var(--e-icon-list-icon-size); }

.elementor-widget.elementor-widget-icon-list .elementor-icon-list-icon {
  text-align: var(--e-icon-list-icon-align); }
  .elementor-widget.elementor-widget-icon-list .elementor-icon-list-icon svg {
    margin: var(--e-icon-list-icon-margin, 0 calc(var(--e-icon-list-icon-size, 1em) * 0.25) 0 0); }

.elementor-widget.elementor-list-item-link-full_width a {
  width: 100%; }

.elementor-widget.elementor-align-center .elementor-icon-list-item, .elementor-widget.elementor-align-center .elementor-icon-list-item a {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.elementor-widget.elementor-align-center .elementor-icon-list-item:after {
  margin: auto; }

.elementor-widget.elementor-align-center .elementor-inline-items {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.elementor-widget.elementor-align-left .elementor-icon-list-item, .elementor-widget.elementor-align-left .elementor-icon-list-item a {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  text-align: left; }

.elementor-widget.elementor-align-left .elementor-inline-items {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.elementor-widget.elementor-align-right .elementor-icon-list-item, .elementor-widget.elementor-align-right .elementor-icon-list-item a {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  text-align: right; }

.elementor-widget.elementor-align-right .elementor-icon-list-items {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start; }

.elementor-widget:not(.elementor-align-right) .elementor-icon-list-item:after {
  right: 0; }

.elementor-widget:not(.elementor-align-left) .elementor-icon-list-item:after {
  left: 0; }

@media (max-width: 1024px) {
  .elementor-widget.elementor-tablet-align-center .elementor-icon-list-items {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .elementor-widget.elementor-tablet-align-center .elementor-icon-list-item, .elementor-widget.elementor-tablet-align-center .elementor-icon-list-item a {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .elementor-widget.elementor-tablet-align-center .elementor-icon-list-item:after {
    margin: auto; }
  .elementor-widget.elementor-tablet-align-left .elementor-icon-list-items {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
  .elementor-widget.elementor-tablet-align-left .elementor-icon-list-item, .elementor-widget.elementor-tablet-align-left .elementor-icon-list-item a {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    text-align: left; }
  .elementor-widget.elementor-tablet-align-right .elementor-icon-list-items {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
  .elementor-widget.elementor-tablet-align-right .elementor-icon-list-item, .elementor-widget.elementor-tablet-align-right .elementor-icon-list-item a {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    text-align: right; }
  .elementor-widget:not(.elementor-tablet-align-right) .elementor-icon-list-item:after {
    right: 0; }
  .elementor-widget:not(.elementor-tablet-align-left) .elementor-icon-list-item:after {
    left: 0; } }

@media (max-width: 767px) {
  .elementor-widget.elementor-mobile-align-center .elementor-icon-list-items {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .elementor-widget.elementor-mobile-align-center .elementor-icon-list-item, .elementor-widget.elementor-mobile-align-center .elementor-icon-list-item a {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .elementor-widget.elementor-mobile-align-center .elementor-icon-list-item:after {
    margin: auto; }
  .elementor-widget.elementor-mobile-align-left .elementor-icon-list-items {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
  .elementor-widget.elementor-mobile-align-left .elementor-icon-list-item, .elementor-widget.elementor-mobile-align-left .elementor-icon-list-item a {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    text-align: left; }
  .elementor-widget.elementor-mobile-align-right .elementor-icon-list-items {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
  .elementor-widget.elementor-mobile-align-right .elementor-icon-list-item, .elementor-widget.elementor-mobile-align-right .elementor-icon-list-item a {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    text-align: right; }
  .elementor-widget:not(.elementor-mobile-align-right) .elementor-icon-list-item:after {
    right: 0; }
  .elementor-widget:not(.elementor-mobile-align-left) .elementor-icon-list-item:after {
    left: 0; } }

.elementor-widget-image {
  text-align: center; }
  .elementor-widget-image a {
    display: inline-block; }
    .elementor-widget-image a img[src$=".svg"] {
      width: 48px; }
  .elementor-widget-image img {
    vertical-align: middle;
    display: inline-block; }

.elementor-widget-image-box .elementor-image-box-content {
  width: 100%; }

@media (min-width: 768px) {
  .elementor-widget-image-box.elementor-position-left .elementor-image-box-wrapper, .elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper {
    text-align: left;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row; }
  .elementor-widget-image-box.elementor-position-left .elementor-image-box-wrapper {
    text-align: right;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .elementor-widget-image-box.elementor-position-top .elementor-image-box-img {
    margin: auto; }
  .elementor-widget-image-box.elementor-vertical-align-top .elementor-image-box-wrapper {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start; }
  .elementor-widget-image-box.elementor-vertical-align-middle .elementor-image-box-wrapper {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .elementor-widget-image-box.elementor-vertical-align-bottom .elementor-image-box-wrapper {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end; } }

@media (max-width: 767px) {
  .elementor-widget-image-box .elementor-image-box-img {
    margin-left: auto !important;
    margin-right: auto !important;
    margin-bottom: 15px; } }

.elementor-widget-image-box .elementor-image-box-img {
  display: inline-block; }

.elementor-widget-image-box .elementor-image-box-title a {
  color: inherit; }

.elementor-widget-image-box .elementor-image-box-wrapper {
  text-align: center; }

.elementor-widget-image-box .elementor-image-box-description {
  margin: 0; }

.elementor-widget-image-carousel .swiper-container {
  position: static; }
  .elementor-widget-image-carousel .swiper-container .swiper-slide figure {
    line-height: inherit; }

.elementor-widget-image-carousel .swiper-slide {
  text-align: center; }

.elementor-image-carousel-wrapper:not(.swiper-container-initialized) .swiper-slide {
  max-width: calc(100% / var(--e-image-carousel-slides-to-show, 3)); }

body.elementor-page .elementor-widget-menu-anchor {
  margin-bottom: 0; }

.elementor-widget-progress {
  text-align: right; }

.elementor-progress-wrapper {
  position: relative;
  background-color: #eeeeee;
  color: #ffffff;
  height: 100%;
  -webkit-border-radius: 2px;
          border-radius: 2px; }

.elementor-progress-bar {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background-color: #818a91;
  width: 0;
  font-size: 11px;
  height: 30px;
  line-height: 30px;
  -webkit-border-radius: 2px;
          border-radius: 2px;
  -webkit-transition: width 1s ease-in-out;
  -o-transition: width 1s ease-in-out;
  transition: width 1s ease-in-out; }

.elementor-progress-text {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  white-space: nowrap;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  overflow: hidden;
  padding-right: 15px; }

.elementor-progress-percentage {
  padding-left: 15px; }

.elementor-widget-progress .elementor-progress-wrapper.progress-info .elementor-progress-bar {
  background-color: #5bc0de; }

.elementor-widget-progress .elementor-progress-wrapper.progress-success .elementor-progress-bar {
  background-color: #5cb85c; }

.elementor-widget-progress .elementor-progress-wrapper.progress-warning .elementor-progress-bar {
  background-color: #f0ad4e; }

.elementor-widget-progress .elementor-progress-wrapper.progress-danger .elementor-progress-bar {
  background-color: #d9534f; }

.elementor-progress .elementor-title {
  display: block; }

@media (max-width: 767px) {
  .elementor-progress-text {
    padding-right: 10px; } }

.elementor-widget-social-icons {
  /*TODO: This Grid-0 needs to be removed after PRO is Updated */ }
  .elementor-widget-social-icons.elementor-grid-0 .elementor-widget-container, .elementor-widget-social-icons.elementor-grid-tablet-0 .elementor-widget-container, .elementor-widget-social-icons.elementor-grid-mobile-0 .elementor-widget-container {
    line-height: 1;
    font-size: 0; }
  .elementor-widget-social-icons:not(.elementor-grid-0):not(.elementor-grid-tablet-0):not(.elementor-grid-mobile-0) .elementor-grid {
    display: inline-grid; }
  .elementor-widget-social-icons .elementor-grid {
    grid-column-gap: var(--grid-column-gap, 5px);
    grid-row-gap: var(--grid-row-gap, 5px);
    grid-template-columns: var(--grid-template-columns);
    -webkit-box-pack: var(--justify-content, center);
        -ms-flex-pack: var(--justify-content, center);
            justify-content: var(--justify-content, center);
    justify-items: var(--justify-content, center); }

.elementor-icon.elementor-social-icon {
  font-size: var(--icon-size, 25px);
  line-height: var(--icon-size, 25px);
  width: calc(var(--icon-size, 25px) + (2 * var(--icon-padding, 0.5em)));
  height: calc(var(--icon-size, 25px) + (2 * var(--icon-padding, 0.5em))); }

.elementor-social-icon {
  --e-social-icon-icon-color: #fff;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  background-color: #818a91;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  cursor: pointer; }
  .elementor-social-icon i {
    color: var(--e-social-icon-icon-color); }
  .elementor-social-icon svg {
    fill: var(--e-social-icon-icon-color); }
  .elementor-social-icon:last-child {
    margin: 0; }
  .elementor-social-icon:hover {
    opacity: .9;
    color: white; }
  .elementor-social-icon-android {
    background-color: #A4C639; }
  .elementor-social-icon-apple {
    background-color: #999999; }
  .elementor-social-icon-behance {
    background-color: #1769ff; }
  .elementor-social-icon-bitbucket {
    background-color: #205081; }
  .elementor-social-icon-codepen {
    background-color: #000000; }
  .elementor-social-icon-delicious {
    background-color: #3399ff; }
  .elementor-social-icon-deviantart {
    background-color: #05cc47; }
  .elementor-social-icon-digg {
    background-color: #005be2; }
  .elementor-social-icon-dribbble {
    background-color: #ea4c89; }
  .elementor-social-icon-elementor {
    background-color: #D30C5C; }
  .elementor-social-icon-envelope {
    background-color: #ea4335; }
  .elementor-social-icon-facebook, .elementor-social-icon-facebook-f {
    background-color: #3b5998; }
  .elementor-social-icon-flickr {
    background-color: #0063dc; }
  .elementor-social-icon-foursquare {
    background-color: #2d5be3; }
  .elementor-social-icon-freecodecamp, .elementor-social-icon-free-code-camp {
    background-color: #006400; }
  .elementor-social-icon-github {
    background-color: #333333; }
  .elementor-social-icon-gitlab {
    background-color: #e24329; }
  .elementor-social-icon-globe {
    background-color: #818a91; }
  .elementor-social-icon-google-plus, .elementor-social-icon-google-plus-g {
    background-color: #dd4b39; }
  .elementor-social-icon-houzz {
    background-color: #7ac142; }
  .elementor-social-icon-instagram {
    background-color: #262626; }
  .elementor-social-icon-jsfiddle {
    background-color: #487AA2; }
  .elementor-social-icon-link {
    background-color: #818a91; }
  .elementor-social-icon-linkedin, .elementor-social-icon-linkedin-in {
    background-color: #0077b5; }
  .elementor-social-icon-medium {
    background-color: #00ab6b; }
  .elementor-social-icon-meetup {
    background-color: #ec1c40; }
  .elementor-social-icon-mixcloud {
    background-color: #273a4b; }
  .elementor-social-icon-odnoklassniki {
    background-color: #F4731C; }
  .elementor-social-icon-pinterest {
    background-color: #bd081c; }
  .elementor-social-icon-product-hunt {
    background-color: #da552f; }
  .elementor-social-icon-reddit {
    background-color: #ff4500; }
  .elementor-social-icon-rss {
    background-color: #f26522; }
  .elementor-social-icon-shopping-cart {
    background-color: #4CAF50; }
  .elementor-social-icon-skype {
    background-color: #00AFF0; }
  .elementor-social-icon-slideshare {
    background-color: #0077b5; }
  .elementor-social-icon-snapchat {
    background-color: #fffc00; }
  .elementor-social-icon-soundcloud {
    background-color: #ff8800; }
  .elementor-social-icon-spotify {
    background-color: #2ebd59; }
  .elementor-social-icon-stack-overflow {
    background-color: #fe7a15; }
  .elementor-social-icon-steam {
    background-color: #00adee; }
  .elementor-social-icon-stumbleupon {
    background-color: #EB4924; }
  .elementor-social-icon-telegram {
    background-color: #2CA5E0; }
  .elementor-social-icon-thumb-tack {
    background-color: #1aa1d8; }
  .elementor-social-icon-tripadvisor {
    background-color: #589442; }
  .elementor-social-icon-tumblr {
    background-color: #35465c; }
  .elementor-social-icon-twitch {
    background-color: #6441A5; }
  .elementor-social-icon-twitter {
    background-color: #1DA1F2; }
  .elementor-social-icon-viber {
    background-color: #665cac; }
  .elementor-social-icon-vimeo {
    background-color: #1ab7ea; }
  .elementor-social-icon-vk {
    background-color: #45668e; }
  .elementor-social-icon-weibo {
    background-color: #DD2430; }
  .elementor-social-icon-weixin {
    background-color: #31A918; }
  .elementor-social-icon-whatsapp {
    background-color: #25d366; }
  .elementor-social-icon-wordpress {
    background-color: #21759b; }
  .elementor-social-icon-xing {
    background-color: #026466; }
  .elementor-social-icon-yelp {
    background-color: #af0606; }
  .elementor-social-icon-youtube {
    background-color: #cd201f; }
  .elementor-social-icon-500px {
    background-color: #0099e5; }

.elementor-shape-rounded .elementor-icon.elementor-social-icon {
  -webkit-border-radius: 10%;
          border-radius: 10%; }

.elementor-shape-circle .elementor-icon.elementor-social-icon {
  -webkit-border-radius: 50%;
          border-radius: 50%; }

.elementor-star-rating {
  color: #CCD6DF;
  font-family: eicons;
  display: inline-block; }
  .elementor-star-rating i {
    display: inline-block;
    position: relative;
    font-style: normal;
    cursor: default; }
    .elementor-star-rating i:before {
      content: '\e934';
      display: block;
      font-size: inherit;
      font-family: inherit;
      position: absolute;
      overflow: hidden;
      color: #f0ad4e;
      top: 0;
      right: 0; }
  .elementor-star-rating .elementor-star-empty:before {
    content: none; }
  .elementor-star-rating .elementor-star-1:before {
    width: 10%; }
  .elementor-star-rating .elementor-star-2:before {
    width: 20%; }
  .elementor-star-rating .elementor-star-3:before {
    width: 30%; }
  .elementor-star-rating .elementor-star-4:before {
    width: 40%; }
  .elementor-star-rating .elementor-star-5:before {
    width: 50%; }
  .elementor-star-rating .elementor-star-6:before {
    width: 60%; }
  .elementor-star-rating .elementor-star-7:before {
    width: 70%; }
  .elementor-star-rating .elementor-star-8:before {
    width: 80%; }
  .elementor-star-rating .elementor-star-9:before {
    width: 90%; }
  .elementor-star-rating__wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .elementor-star-rating__title {
    margin-left: 10px; }

.elementor-star-rating--align-right .elementor-star-rating__wrapper {
  text-align: right;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start; }

.elementor-star-rating--align-left .elementor-star-rating__wrapper {
  text-align: left;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.elementor-star-rating--align-center .elementor-star-rating__wrapper {
  text-align: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.elementor-star-rating--align-justify .elementor-star-rating__title {
  margin-left: auto; }

@media (max-width: 1024px) {
  .elementor-star-rating-tablet--align-right .elementor-star-rating__wrapper {
    text-align: right;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
  .elementor-star-rating-tablet--align-left .elementor-star-rating__wrapper {
    text-align: left;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
  .elementor-star-rating-tablet--align-center .elementor-star-rating__wrapper {
    text-align: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .elementor-star-rating-tablet--align-justify .elementor-star-rating__title {
    margin-left: auto; } }

@media (max-width: 767px) {
  .elementor-star-rating-mobile--align-right .elementor-star-rating__wrapper {
    text-align: right;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
  .elementor-star-rating-mobile--align-left .elementor-star-rating__wrapper {
    text-align: left;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
  .elementor-star-rating-mobile--align-center .elementor-star-rating__wrapper {
    text-align: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .elementor-star-rating-mobile--align-justify .elementor-star-rating__title {
    margin-left: auto; } }

.last-star {
  letter-spacing: 0; }

.elementor--star-style-star_unicode .elementor-star-rating {
  font-family: 'Arial', 'Helvetica', sans-serif; }
  .elementor--star-style-star_unicode .elementor-star-rating i:not(.elementor-star-empty):before {
    content: '\002605'; }

.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-wrapper {
  width: 25%;
  -ms-flex-negative: 0;
      flex-shrink: 0; }

.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active {
  border-left-style: none; }
  .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:before, .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:after {
    height: 999em;
    width: 0;
    left: 0;
    border-left-style: solid; }
  .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:before {
    top: 0;
    -webkit-transform: translateY(-100%);
        -ms-transform: translateY(-100%);
            transform: translateY(-100%); }
  .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:after {
    top: 100%; }

.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title {
  display: table-cell; }
  .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active {
    border-bottom-style: none; }
    .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:before, .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:after {
      bottom: 0;
      height: 0;
      width: 999em;
      border-bottom-style: solid; }
    .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:before {
      right: 100%; }
    .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:after {
      left: 100%; }

.elementor-widget-tabs .elementor-tab-title,
.elementor-widget-tabs .elementor-tab-title:before,
.elementor-widget-tabs .elementor-tab-title:after,
.elementor-widget-tabs .elementor-tab-content,
.elementor-widget-tabs .elementor-tabs-content-wrapper {
  border: 1px none #D4D4D4; }

.elementor-widget-tabs .elementor-tabs {
  text-align: right; }

.elementor-widget-tabs .elementor-tabs-wrapper {
  overflow: hidden; }

.elementor-widget-tabs .elementor-tab-title {
  cursor: pointer;
  outline: var(--focus-outline, none); }

.elementor-widget-tabs .elementor-tab-desktop-title {
  position: relative;
  padding: 20px 25px;
  font-weight: bold;
  line-height: 1;
  border: solid transparent; }
  .elementor-widget-tabs .elementor-tab-desktop-title.elementor-active {
    border-color: #D4D4D4; }
    .elementor-widget-tabs .elementor-tab-desktop-title.elementor-active:before, .elementor-widget-tabs .elementor-tab-desktop-title.elementor-active:after {
      display: block;
      content: '';
      position: absolute; }

.elementor-widget-tabs .elementor-tab-mobile-title {
  padding: 10px 10px;
  cursor: pointer; }

.elementor-widget-tabs .elementor-tab-content {
  padding: 20px;
  display: none; }

@media (max-width: 767px) {
  .elementor-tabs .elementor-tab-title,
  .elementor-tabs .elementor-tab-content {
    border-style: solid;
    border-bottom-style: none; }
  .elementor-tabs .elementor-tabs-wrapper {
    display: none; }
  .elementor-tabs .elementor-tabs-content-wrapper {
    border-bottom-style: solid; }
  .elementor-tabs .elementor-tab-content {
    padding: 10px; } }

@media (min-width: 768px) {
  .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
  .elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-content-wrapper {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    border-style: solid;
    border-right-style: none; }
  .elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-content {
    border-style: solid;
    border-top-style: none; }
  .elementor-widget-tabs.elementor-tabs-alignment-center .elementor-tabs-wrapper, .elementor-widget-tabs.elementor-tabs-alignment-end .elementor-tabs-wrapper, .elementor-widget-tabs.elementor-tabs-alignment-stretch .elementor-tabs-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .elementor-widget-tabs.elementor-tabs-alignment-center .elementor-tabs-wrapper {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .elementor-widget-tabs.elementor-tabs-alignment-end .elementor-tabs-wrapper {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
  .elementor-widget-tabs.elementor-tabs-alignment-stretch.elementor-tabs-view-horizontal .elementor-tab-title {
    width: 100%; }
  .elementor-widget-tabs.elementor-tabs-alignment-stretch.elementor-tabs-view-vertical .elementor-tab-title {
    height: 100%; }
  .elementor-tabs .elementor-tab-mobile-title {
    display: none; } }

.elementor-testimonial-wrapper {
  overflow: hidden;
  text-align: center; }
  .elementor-testimonial-wrapper .elementor-testimonial-content {
    font-size: 1.3em;
    margin-bottom: 20px; }
  .elementor-testimonial-wrapper .elementor-testimonial-name {
    line-height: 1.5;
    display: block; }
  .elementor-testimonial-wrapper .elementor-testimonial-job {
    font-size: 0.85em;
    display: block; }
  .elementor-testimonial-wrapper .elementor-testimonial-meta {
    width: 100%;
    line-height: 1; }
    .elementor-testimonial-wrapper .elementor-testimonial-meta-inner {
      display: inline-block; }
    .elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-details,
    .elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-image {
      display: table-cell;
      vertical-align: middle; }
    .elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-image img {
      width: 60px;
      height: 60px;
      -webkit-border-radius: 50%;
              border-radius: 50%;
      -o-object-fit: cover;
         object-fit: cover;
      max-width: none; }
    .elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-aside .elementor-testimonial-image {
      padding-left: 15px; }
    .elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-aside .elementor-testimonial-details {
      text-align: right; }
    .elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-details,
    .elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-image {
      display: block; }
    .elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-image {
      margin-bottom: 20px; }

.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap {
  background-color: #818a91;
  color: #fff; }

.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap {
  color: #818a91;
  border: 3px solid;
  background-color: transparent; }

.elementor-widget-text-editor:not(.elementor-drop-cap-view-default) .elementor-drop-cap {
  margin-top: 8px; }
  .elementor-widget-text-editor:not(.elementor-drop-cap-view-default) .elementor-drop-cap-letter {
    width: 1em;
    height: 1em; }

.elementor-widget-text-editor .elementor-drop-cap {
  float: right;
  text-align: center;
  line-height: 1;
  font-size: 50px; }
  .elementor-widget-text-editor .elementor-drop-cap-letter {
    display: inline-block; }

.elementor-toggle {
  text-align: right; }
  .elementor-toggle .elementor-tab-title {
    font-weight: bold;
    line-height: 1;
    margin: 0;
    padding: 15px;
    border-bottom: 1px solid #D4D4D4;
    cursor: pointer;
    outline: none; }
    .elementor-toggle .elementor-tab-title .elementor-toggle-icon {
      display: inline-block;
      width: 1em; }
      .elementor-toggle .elementor-tab-title .elementor-toggle-icon svg {
        -webkit-margin-start: -5px;
                margin-inline-start: -5px;
        width: 1em;
        height: 1em; }
      .elementor-toggle .elementor-tab-title .elementor-toggle-icon.elementor-toggle-icon-right {
        float: right;
        text-align: right; }
      .elementor-toggle .elementor-tab-title .elementor-toggle-icon.elementor-toggle-icon-left {
        float: left;
        text-align: left; }
      .elementor-toggle .elementor-tab-title .elementor-toggle-icon .elementor-toggle-icon-closed {
        display: block; }
      .elementor-toggle .elementor-tab-title .elementor-toggle-icon .elementor-toggle-icon-opened {
        display: none; }
    .elementor-toggle .elementor-tab-title.elementor-active {
      border-bottom: none; }
      .elementor-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon-closed {
        display: none; }
      .elementor-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon-opened {
        display: block; }
  .elementor-toggle .elementor-tab-content {
    padding: 15px;
    border-bottom: 1px solid #D4D4D4;
    display: none; }

@media (max-width: 767px) {
  .elementor-toggle .elementor-tab-title {
    padding: 12px; }
  .elementor-toggle .elementor-tab-content {
    padding: 12px 10px; } }

.elementor-widget-video .elementor-widget-container {
  overflow: hidden;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0); }

.elementor-widget-video .elementor-open-inline .elementor-custom-embed-image-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-background-size: cover;
          background-size: cover;
  background-position: 50%; }

.elementor-widget-video .elementor-custom-embed-image-overlay {
  cursor: pointer;
  text-align: center; }
  .elementor-widget-video .elementor-custom-embed-image-overlay:hover .elementor-custom-embed-play i {
    opacity: 1; }
  .elementor-widget-video .elementor-custom-embed-image-overlay img {
    display: block;
    width: 100%; }

.elementor-widget-video .e-hosted-video .elementor-video {
  -o-object-fit: cover;
     object-fit: cover; }
/*# sourceMappingURL=frontend-rtl.css.map */assets/css/widget-social-icons-rtl.min.css000064400000012144151327220410014574 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-widget-social-icons.elementor-grid-0 .elementor-widget-container,.elementor-widget-social-icons.elementor-grid-mobile-0 .elementor-widget-container,.elementor-widget-social-icons.elementor-grid-tablet-0 .elementor-widget-container{line-height:1;font-size:0}.elementor-widget-social-icons:not(.elementor-grid-0):not(.elementor-grid-tablet-0):not(.elementor-grid-mobile-0) .elementor-grid{display:inline-grid}.elementor-widget-social-icons .elementor-grid{grid-column-gap:var(--grid-column-gap,5px);grid-row-gap:var(--grid-row-gap,5px);grid-template-columns:var(--grid-template-columns);-webkit-box-pack:var(--justify-content,center);-ms-flex-pack:var(--justify-content,center);justify-content:var(--justify-content,center);justify-items:var(--justify-content,center)}.elementor-icon.elementor-social-icon{font-size:var(--icon-size,25px);line-height:var(--icon-size,25px);width:calc(var(--icon-size, 25px) + (2 * var(--icon-padding, .5em)));height:calc(var(--icon-size, 25px) + (2 * var(--icon-padding, .5em)))}.elementor-social-icon{--e-social-icon-icon-color:#fff;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;background-color:#818a91;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;text-align:center;cursor:pointer}.elementor-social-icon i{color:var(--e-social-icon-icon-color)}.elementor-social-icon svg{fill:var(--e-social-icon-icon-color)}.elementor-social-icon:last-child{margin:0}.elementor-social-icon:hover{opacity:.9;color:#fff}.elementor-social-icon-android{background-color:#a4c639}.elementor-social-icon-apple{background-color:#999}.elementor-social-icon-behance{background-color:#1769ff}.elementor-social-icon-bitbucket{background-color:#205081}.elementor-social-icon-codepen{background-color:#000}.elementor-social-icon-delicious{background-color:#39f}.elementor-social-icon-deviantart{background-color:#05cc47}.elementor-social-icon-digg{background-color:#005be2}.elementor-social-icon-dribbble{background-color:#ea4c89}.elementor-social-icon-elementor{background-color:#d30c5c}.elementor-social-icon-envelope{background-color:#ea4335}.elementor-social-icon-facebook,.elementor-social-icon-facebook-f{background-color:#3b5998}.elementor-social-icon-flickr{background-color:#0063dc}.elementor-social-icon-foursquare{background-color:#2d5be3}.elementor-social-icon-free-code-camp,.elementor-social-icon-freecodecamp{background-color:#006400}.elementor-social-icon-github{background-color:#333}.elementor-social-icon-gitlab{background-color:#e24329}.elementor-social-icon-globe{background-color:#818a91}.elementor-social-icon-google-plus,.elementor-social-icon-google-plus-g{background-color:#dd4b39}.elementor-social-icon-houzz{background-color:#7ac142}.elementor-social-icon-instagram{background-color:#262626}.elementor-social-icon-jsfiddle{background-color:#487aa2}.elementor-social-icon-link{background-color:#818a91}.elementor-social-icon-linkedin,.elementor-social-icon-linkedin-in{background-color:#0077b5}.elementor-social-icon-medium{background-color:#00ab6b}.elementor-social-icon-meetup{background-color:#ec1c40}.elementor-social-icon-mixcloud{background-color:#273a4b}.elementor-social-icon-odnoklassniki{background-color:#f4731c}.elementor-social-icon-pinterest{background-color:#bd081c}.elementor-social-icon-product-hunt{background-color:#da552f}.elementor-social-icon-reddit{background-color:#ff4500}.elementor-social-icon-rss{background-color:#f26522}.elementor-social-icon-shopping-cart{background-color:#4caf50}.elementor-social-icon-skype{background-color:#00aff0}.elementor-social-icon-slideshare{background-color:#0077b5}.elementor-social-icon-snapchat{background-color:#fffc00}.elementor-social-icon-soundcloud{background-color:#f80}.elementor-social-icon-spotify{background-color:#2ebd59}.elementor-social-icon-stack-overflow{background-color:#fe7a15}.elementor-social-icon-steam{background-color:#00adee}.elementor-social-icon-stumbleupon{background-color:#eb4924}.elementor-social-icon-telegram{background-color:#2ca5e0}.elementor-social-icon-thumb-tack{background-color:#1aa1d8}.elementor-social-icon-tripadvisor{background-color:#589442}.elementor-social-icon-tumblr{background-color:#35465c}.elementor-social-icon-twitch{background-color:#6441a5}.elementor-social-icon-twitter{background-color:#1da1f2}.elementor-social-icon-viber{background-color:#665cac}.elementor-social-icon-vimeo{background-color:#1ab7ea}.elementor-social-icon-vk{background-color:#45668e}.elementor-social-icon-weibo{background-color:#dd2430}.elementor-social-icon-weixin{background-color:#31a918}.elementor-social-icon-whatsapp{background-color:#25d366}.elementor-social-icon-wordpress{background-color:#21759b}.elementor-social-icon-xing{background-color:#026466}.elementor-social-icon-yelp{background-color:#af0606}.elementor-social-icon-youtube{background-color:#cd201f}.elementor-social-icon-500px{background-color:#0099e5}.elementor-shape-rounded .elementor-icon.elementor-social-icon{-webkit-border-radius:10%;border-radius:10%}.elementor-shape-circle .elementor-icon.elementor-social-icon{-webkit-border-radius:50%;border-radius:50%}assets/css/widget-progress-rtl.min.css000064400000002510151327220410014051 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-widget-progress{text-align:right}.elementor-progress-wrapper{position:relative;background-color:#eee;color:#fff;height:100%;-webkit-border-radius:2px;border-radius:2px}.elementor-progress-bar{display:-webkit-box;display:-ms-flexbox;display:flex;background-color:#818a91;width:0;font-size:11px;height:30px;line-height:30px;-webkit-border-radius:2px;border-radius:2px;-webkit-transition:width 1s ease-in-out;-o-transition:width 1s ease-in-out;transition:width 1s ease-in-out}.elementor-progress-text{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;padding-right:15px}.elementor-progress-percentage{padding-left:15px}.elementor-widget-progress .elementor-progress-wrapper.progress-info .elementor-progress-bar{background-color:#5bc0de}.elementor-widget-progress .elementor-progress-wrapper.progress-success .elementor-progress-bar{background-color:#5cb85c}.elementor-widget-progress .elementor-progress-wrapper.progress-warning .elementor-progress-bar{background-color:#f0ad4e}.elementor-widget-progress .elementor-progress-wrapper.progress-danger .elementor-progress-bar{background-color:#d9534f}.elementor-progress .elementor-title{display:block}@media (max-width:767px){.elementor-progress-text{padding-right:10px}}assets/css/widget-text-editor.min.css000064400000001277151327220410013667 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:#818a91;color:#fff}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap{color:#818a91;border:3px solid;background-color:transparent}.elementor-widget-text-editor:not(.elementor-drop-cap-view-default) .elementor-drop-cap{margin-top:8px}.elementor-widget-text-editor:not(.elementor-drop-cap-view-default) .elementor-drop-cap-letter{width:1em;height:1em}.elementor-widget-text-editor .elementor-drop-cap{float:left;text-align:center;line-height:1;font-size:50px}.elementor-widget-text-editor .elementor-drop-cap-letter{display:inline-block}assets/css/frontend-rtl.min.css000064400000400640151327220410012551 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.dialog-widget-content{background-color:#fff;position:absolute;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);overflow:hidden}.dialog-message{font-size:12px;line-height:1.5;-webkit-box-sizing:border-box;box-sizing:border-box}.dialog-type-lightbox{position:fixed;height:100%;width:100%;bottom:0;left:0;background-color:rgba(0,0,0,.8);z-index:9999;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.dialog-type-lightbox .dialog-widget-content{margin:auto;width:375px}.dialog-type-lightbox .dialog-header{font-size:15px;color:#495157;padding:30px 0 10px;font-weight:500}.dialog-type-lightbox .dialog-message{padding:0 30px 30px;min-height:50px}.dialog-type-lightbox:not(.elementor-popup-modal) .dialog-header,.dialog-type-lightbox:not(.elementor-popup-modal) .dialog-message{text-align:center}.dialog-type-lightbox .dialog-buttons-wrapper{border-top:1px solid #e6e9ec;text-align:center}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;width:50%;border:none;background:none;color:#6d7882;font-size:15px;cursor:pointer;padding:13px 0;outline:0}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button:hover{background-color:#f4f6f7}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button.dialog-ok{color:#b01b1b}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button.dialog-take_over{color:#39b54a}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button:active{background-color:rgba(230,233,236,.5)}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button::-moz-focus-inner{border:0}.dialog-close-button{cursor:pointer;position:absolute;margin-top:15px;left:15px;font-size:15px;line-height:1}.dialog-close-button:not(:hover){opacity:.4}.dialog-alert-widget .dialog-buttons-wrapper>button{width:100%}.dialog-confirm-widget .dialog-button:first-child{border-left:1px solid #e6e9ec}.dialog-prevent-scroll{overflow:hidden;max-height:100vh}@media (min-width:1024px){body.admin-bar .dialog-lightbox-widget{height:calc(100vh - 32px)}}@media (max-width:1024px){body.admin-bar .dialog-type-lightbox{position:-webkit-sticky;position:sticky;height:100vh}}.elementor-aspect-ratio-219 .elementor-fit-aspect-ratio{padding-bottom:42.8571%}.elementor-aspect-ratio-169 .elementor-fit-aspect-ratio{padding-bottom:56.25%}.elementor-aspect-ratio-43 .elementor-fit-aspect-ratio{padding-bottom:75%}.elementor-aspect-ratio-32 .elementor-fit-aspect-ratio{padding-bottom:66.6666%}.elementor-aspect-ratio-11 .elementor-fit-aspect-ratio{padding-bottom:100%}.elementor-aspect-ratio-916 .elementor-fit-aspect-ratio{padding-bottom:177.8%}.elementor-fit-aspect-ratio{position:relative;height:0}.elementor-fit-aspect-ratio iframe{position:absolute;top:0;left:0;height:100%;width:100%;border:0;background-color:#000}.elementor-fit-aspect-ratio video{width:100%}.flatpickr-calendar{width:280px}.flatpickr-calendar .flatpickr-current-month span.cur-month{font-weight:300}.flatpickr-calendar .dayContainer{width:280px;min-width:280px;max-width:280px}.flatpickr-calendar .flatpickr-days{width:280px}.flatpickr-calendar .flatpickr-day{max-width:37px;height:37px;line-height:37px}.elementor-templates-modal .dialog-widget-content{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;background-color:#f1f3f5;width:100%}@media (max-width:1439px){.elementor-templates-modal .dialog-widget-content{max-width:990px}}@media (min-width:1440px){.elementor-templates-modal .dialog-widget-content{max-width:1200px}}.elementor-templates-modal .dialog-header{padding:0;z-index:1}.elementor-templates-modal .dialog-buttons-wrapper,.elementor-templates-modal .dialog-header{background-color:#fff;-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1);position:relative}.elementor-templates-modal .dialog-buttons-wrapper{border:none;display:none;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;padding:5px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button{height:40px;margin-right:5px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success{padding:12px 36px;color:#fff;width:auto;font-size:15px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success:hover{background-color:#39b54a}.elementor-templates-modal .dialog-message{height:750px;max-height:85vh;overflow:auto;padding-top:25px}.elementor-templates-modal .dialog-content{height:100%}.elementor-templates-modal .dialog-loading{display:none}.elementor-templates-modal__header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;height:50px}.elementor-templates-modal__header__logo{line-height:1;text-transform:uppercase;font-weight:700;cursor:pointer}.elementor-templates-modal__header__logo-area{text-align:right;padding-right:15px}.elementor-templates-modal__header__logo-area>*{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-templates-modal__header__logo__icon-wrapper{margin-left:10px;font-size:12px}.elementor-templates-modal__header__logo__title{padding-top:2px}.elementor-templates-modal__header__items-area{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-templates-modal__header__item{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-templates-modal__header__item>i{font-size:20px;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;cursor:pointer}.elementor-templates-modal__header__item>i:not(:hover){color:#a4afb7}.elementor-templates-modal__header__close--normal{width:47px;border-right:1px solid #e6e9ec}.elementor-templates-modal__header__close--normal i{font-size:18px}.elementor-templates-modal__header__close--skip{padding:10px 20px 10px 10px;margin-left:10px;color:#fff;background-color:#a4afb7;font-size:11px;font-weight:400;line-height:1;text-transform:uppercase;-webkit-border-radius:2px;border-radius:2px;cursor:pointer}.elementor-templates-modal__header__close--skip>i{font-size:inherit;padding-right:10px;margin-right:15px;border-right:1px solid}.elementor-templates-modal__header__close--skip>i:not(:hover){color:#fff}.elementor-templates-modal__sidebar{-ms-flex-negative:0;flex-shrink:0;width:25%;background-color:hsla(0,0%,100%,.3)}.elementor-templates-modal__content{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-webkit-box-shadow:0 0 13px inset rgba(0,0,0,.05);box-shadow:inset 0 0 13px rgba(0,0,0,.05)}#wpadminbar #wp-admin-bar-elementor_edit_page .elementor-general-section+.elementor-second-section{border-top:1px solid #464b50;margin-top:6px}.elementor-hidden{display:none}.elementor-screen-only,.screen-reader-text,.screen-reader-text span,.ui-helper-hidden-accessible{position:absolute;top:-10000em;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.elementor-clearfix:after{content:"";display:block;clear:both;width:0;height:0}.e-logo-wrapper{background:#93003c;display:inline-block;padding:.75em;-webkit-border-radius:50%;border-radius:50%;line-height:1}.e-logo-wrapper i{color:#fff;font-size:1em}.elementor{-webkit-hyphens:manual;-ms-hyphens:manual;hyphens:manual}.elementor *,.elementor :after,.elementor :before{-webkit-box-sizing:border-box;box-sizing:border-box}.elementor a{-webkit-box-shadow:none;box-shadow:none;text-decoration:none}.elementor hr{margin:0;background-color:transparent}.elementor img{height:auto;max-width:100%;border:none;-webkit-border-radius:0;border-radius:0;-webkit-box-shadow:none;box-shadow:none}.elementor .elementor-widget:not(.elementor-widget-text-editor):not(.elementor-widget-theme-post-content) figure{margin:0}.elementor embed,.elementor iframe,.elementor object,.elementor video{max-width:100%;width:100%;margin:0;line-height:1;border:none}.elementor .elementor-custom-embed{line-height:0}.elementor .elementor-background,.elementor .elementor-background-holder,.elementor .elementor-background-video-container{height:100%;width:100%;top:0;left:0;position:absolute;overflow:hidden;z-index:0;direction:ltr}.elementor .elementor-background-video-container{-webkit-transition:opacity 1s;-o-transition:opacity 1s;transition:opacity 1s;pointer-events:none}.elementor .elementor-background-video-container.elementor-loading{opacity:0}.elementor .elementor-background-video-embed{max-width:none}.elementor .elementor-background-video,.elementor .elementor-background-video-embed,.elementor .elementor-background-video-hosted{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor .elementor-background-video{max-width:none}.elementor .elementor-html5-video{-o-object-fit:cover;object-fit:cover}.elementor .elementor-background-overlay{height:100%;width:100%;top:0;left:0;position:absolute}.elementor .elementor-background-slideshow{position:absolute;width:100%;height:100%;z-index:0;top:0;right:0}.elementor .elementor-background-slideshow__slide__image{width:100%;height:100%;background-position:50%;-webkit-background-size:cover;background-size:cover}.elementor-widget-wrap>.elementor-element.elementor-absolute{position:absolute}.elementor-column>.elementor-widget-wrap>.elementor-element.elementor-absolute{padding:inherit;-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-widget-wrap>.elementor-element.elementor-fixed{position:fixed}.elementor-widget-wrap .elementor-element.elementor-widget__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget__width-initial{max-width:100%}@media (max-width:1024px){.elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-initial{max-width:100%}}@media (max-width:767px){.elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-initial{max-width:100%}}.elementor-element.elementor-absolute,.elementor-element.elementor-fixed{z-index:1}.elementor-invisible{visibility:hidden}.elementor-align-center{text-align:center}.elementor-align-center .elementor-button{width:auto}.elementor-align-right{text-align:right}.elementor-align-right .elementor-button{width:auto}.elementor-align-left{text-align:left}.elementor-align-left .elementor-button{width:auto}.elementor-align-justify .elementor-button{width:100%}.elementor-custom-embed-play{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor-custom-embed-play i{font-size:100px;color:#fff;text-shadow:1px 0 6px rgba(0,0,0,.3)}.elementor-custom-embed-play svg{height:100px;width:100px;fill:#fff;-webkit-filter:drop-shadow(1px 0 6px rgba(0,0,0,.3));filter:drop-shadow(1px 0 6px rgba(0,0,0,.3))}.elementor-custom-embed-play i,.elementor-custom-embed-play svg{opacity:.8;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-custom-embed-play.elementor-playing i{font-family:eicons;-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.elementor-custom-embed-play.elementor-playing i:before{content:"\e8fb"}.elementor-tag{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex}.elementor-ken-burns{-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;-o-transition-property:transform;transition-property:transform;transition-property:transform,-webkit-transform;-webkit-transition-duration:10s;-o-transition-duration:10s;transition-duration:10s;-webkit-transition-timing-function:linear;-o-transition-timing-function:linear;transition-timing-function:linear}.elementor-ken-burns--out{-webkit-transform:scale(1.3);-ms-transform:scale(1.3);transform:scale(1.3)}.elementor-ken-burns--active{-webkit-transition-duration:20s;-o-transition-duration:20s;transition-duration:20s}.elementor-ken-burns--active.elementor-ken-burns--out{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}.elementor-ken-burns--active.elementor-ken-burns--in{-webkit-transform:scale(1.3);-ms-transform:scale(1.3);transform:scale(1.3)}@media (min-width:-1px){.elementor-widescreen-align-center{text-align:center}.elementor-widescreen-align-center .elementor-button{width:auto}.elementor-widescreen-align-right{text-align:right}.elementor-widescreen-align-right .elementor-button{width:auto}.elementor-widescreen-align-left{text-align:left}.elementor-widescreen-align-left .elementor-button{width:auto}.elementor-widescreen-align-justify .elementor-button{width:100%}}@media (max-width:-1px){.elementor-laptop-align-center{text-align:center}.elementor-laptop-align-center .elementor-button{width:auto}.elementor-laptop-align-right{text-align:right}.elementor-laptop-align-right .elementor-button{width:auto}.elementor-laptop-align-left{text-align:left}.elementor-laptop-align-left .elementor-button{width:auto}.elementor-laptop-align-justify .elementor-button{width:100%}}@media (max-width:-1px){.elementor-tablet_extra-align-center{text-align:center}.elementor-tablet_extra-align-center .elementor-button{width:auto}.elementor-tablet_extra-align-right{text-align:right}.elementor-tablet_extra-align-right .elementor-button{width:auto}.elementor-tablet_extra-align-left{text-align:left}.elementor-tablet_extra-align-left .elementor-button{width:auto}.elementor-tablet_extra-align-justify .elementor-button{width:100%}}@media (max-width:1024px){.elementor-tablet-align-center{text-align:center}.elementor-tablet-align-center .elementor-button{width:auto}.elementor-tablet-align-right{text-align:right}.elementor-tablet-align-right .elementor-button{width:auto}.elementor-tablet-align-left{text-align:left}.elementor-tablet-align-left .elementor-button{width:auto}.elementor-tablet-align-justify .elementor-button{width:100%}}@media (max-width:-1px){.elementor-mobile_extra-align-center{text-align:center}.elementor-mobile_extra-align-center .elementor-button{width:auto}.elementor-mobile_extra-align-right{text-align:right}.elementor-mobile_extra-align-right .elementor-button{width:auto}.elementor-mobile_extra-align-left{text-align:left}.elementor-mobile_extra-align-left .elementor-button{width:auto}.elementor-mobile_extra-align-justify .elementor-button{width:100%}}@media (max-width:767px){.elementor-mobile-align-center{text-align:center}.elementor-mobile-align-center .elementor-button{width:auto}.elementor-mobile-align-right{text-align:right}.elementor-mobile-align-right .elementor-button{width:auto}.elementor-mobile-align-left{text-align:left}.elementor-mobile-align-left .elementor-button{width:auto}.elementor-mobile-align-justify .elementor-button{width:100%}}#wpadminbar #wp-admin-bar-elementor_edit_page>.ab-item:before{content:"\e813";font-family:eicons;top:3px;font-size:18px}#wpadminbar #wp-admin-bar-elementor_inspector>.ab-item:before{content:"\f348";top:2px}:root{--page-title-display:block}.elementor-page-title,h1.entry-title{display:var(--page-title-display)}.elementor-section{position:relative}.elementor-section .elementor-container{display:-webkit-box;display:-ms-flexbox;display:flex;margin-right:auto;margin-left:auto;position:relative}@media (max-width:1024px){.elementor-section .elementor-container{-ms-flex-wrap:wrap;flex-wrap:wrap}}.elementor-section.elementor-section-boxed>.elementor-container{max-width:1140px}.elementor-section.elementor-section-stretched{position:relative;width:100%}.elementor-section.elementor-section-items-top>.elementor-container{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.elementor-section.elementor-section-items-middle>.elementor-container{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-section.elementor-section-items-bottom>.elementor-container{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}@media (min-width:768px){.elementor-section.elementor-section-height-full{height:100vh}.elementor-section.elementor-section-height-full>.elementor-container{height:100%}}.elementor-bc-flex-widget .elementor-section-content-top>.elementor-container>.elementor-column>.elementor-widget-wrap{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.elementor-bc-flex-widget .elementor-section-content-middle>.elementor-container>.elementor-column>.elementor-widget-wrap{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-bc-flex-widget .elementor-section-content-bottom>.elementor-container>.elementor-column>.elementor-widget-wrap{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.elementor-row{width:100%;display:-webkit-box;display:-ms-flexbox;display:flex}@media (max-width:1024px){.elementor-row{-ms-flex-wrap:wrap;flex-wrap:wrap}}.elementor-widget-wrap{position:relative;width:100%;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-line-pack:start;align-content:flex-start}.elementor:not(.elementor-bc-flex-widget) .elementor-widget-wrap{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget-wrap>.elementor-element{width:100%}.elementor-widget{position:relative}.elementor-widget:not(:last-child){margin-bottom:20px}.elementor-widget:not(:last-child).elementor-absolute,.elementor-widget:not(:last-child).elementor-widget__width-auto,.elementor-widget:not(:last-child).elementor-widget__width-initial{margin-bottom:0}.elementor-column{min-height:1px}.elementor-column,.elementor-column-wrap{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-column-wrap{width:100%}.elementor-column-gap-narrow>.elementor-column>.elementor-element-populated{padding:5px}.elementor-column-gap-default>.elementor-column>.elementor-element-populated{padding:10px}.elementor-column-gap-extended>.elementor-column>.elementor-element-populated{padding:15px}.elementor-column-gap-wide>.elementor-column>.elementor-element-populated{padding:20px}.elementor-column-gap-wider>.elementor-column>.elementor-element-populated{padding:30px}.elementor-inner-section .elementor-column-gap-no .elementor-element-populated{padding:0}@media (min-width:768px){.elementor-column.elementor-col-10,.elementor-column[data-col="10"]{width:10%}.elementor-column.elementor-col-11,.elementor-column[data-col="11"]{width:11.111%}.elementor-column.elementor-col-12,.elementor-column[data-col="12"]{width:12.5%}.elementor-column.elementor-col-14,.elementor-column[data-col="14"]{width:14.285%}.elementor-column.elementor-col-16,.elementor-column[data-col="16"]{width:16.666%}.elementor-column.elementor-col-20,.elementor-column[data-col="20"]{width:20%}.elementor-column.elementor-col-25,.elementor-column[data-col="25"]{width:25%}.elementor-column.elementor-col-30,.elementor-column[data-col="30"]{width:30%}.elementor-column.elementor-col-33,.elementor-column[data-col="33"]{width:33.333%}.elementor-column.elementor-col-40,.elementor-column[data-col="40"]{width:40%}.elementor-column.elementor-col-50,.elementor-column[data-col="50"]{width:50%}.elementor-column.elementor-col-60,.elementor-column[data-col="60"]{width:60%}.elementor-column.elementor-col-66,.elementor-column[data-col="66"]{width:66.666%}.elementor-column.elementor-col-70,.elementor-column[data-col="70"]{width:70%}.elementor-column.elementor-col-75,.elementor-column[data-col="75"]{width:75%}.elementor-column.elementor-col-80,.elementor-column[data-col="80"]{width:80%}.elementor-column.elementor-col-83,.elementor-column[data-col="83"]{width:83.333%}.elementor-column.elementor-col-90,.elementor-column[data-col="90"]{width:90%}.elementor-column.elementor-col-100,.elementor-column[data-col="100"]{width:100%}}@media (max-width:479px){.elementor-column.elementor-xs-10{width:10%}.elementor-column.elementor-xs-11{width:11.111%}.elementor-column.elementor-xs-12{width:12.5%}.elementor-column.elementor-xs-14{width:14.285%}.elementor-column.elementor-xs-16{width:16.666%}.elementor-column.elementor-xs-20{width:20%}.elementor-column.elementor-xs-25{width:25%}.elementor-column.elementor-xs-30{width:30%}.elementor-column.elementor-xs-33{width:33.333%}.elementor-column.elementor-xs-40{width:40%}.elementor-column.elementor-xs-50{width:50%}.elementor-column.elementor-xs-60{width:60%}.elementor-column.elementor-xs-66{width:66.666%}.elementor-column.elementor-xs-70{width:70%}.elementor-column.elementor-xs-75{width:75%}.elementor-column.elementor-xs-80{width:80%}.elementor-column.elementor-xs-83{width:83.333%}.elementor-column.elementor-xs-90{width:90%}.elementor-column.elementor-xs-100{width:100%}}@media (max-width:767px){.elementor-column.elementor-sm-10{width:10%}.elementor-column.elementor-sm-11{width:11.111%}.elementor-column.elementor-sm-12{width:12.5%}.elementor-column.elementor-sm-14{width:14.285%}.elementor-column.elementor-sm-16{width:16.666%}.elementor-column.elementor-sm-20{width:20%}.elementor-column.elementor-sm-25{width:25%}.elementor-column.elementor-sm-30{width:30%}.elementor-column.elementor-sm-33{width:33.333%}.elementor-column.elementor-sm-40{width:40%}.elementor-column.elementor-sm-50{width:50%}.elementor-column.elementor-sm-60{width:60%}.elementor-column.elementor-sm-66{width:66.666%}.elementor-column.elementor-sm-70{width:70%}.elementor-column.elementor-sm-75{width:75%}.elementor-column.elementor-sm-80{width:80%}.elementor-column.elementor-sm-83{width:83.333%}.elementor-column.elementor-sm-90{width:90%}.elementor-column.elementor-sm-100{width:100%}}@media (min-width:768px) and (max-width:1024px){.elementor-column.elementor-md-10{width:10%}.elementor-column.elementor-md-11{width:11.111%}.elementor-column.elementor-md-12{width:12.5%}.elementor-column.elementor-md-14{width:14.285%}.elementor-column.elementor-md-16{width:16.666%}.elementor-column.elementor-md-20{width:20%}.elementor-column.elementor-md-25{width:25%}.elementor-column.elementor-md-30{width:30%}.elementor-column.elementor-md-33{width:33.333%}.elementor-column.elementor-md-40{width:40%}.elementor-column.elementor-md-50{width:50%}.elementor-column.elementor-md-60{width:60%}.elementor-column.elementor-md-66{width:66.666%}.elementor-column.elementor-md-70{width:70%}.elementor-column.elementor-md-75{width:75%}.elementor-column.elementor-md-80{width:80%}.elementor-column.elementor-md-83{width:83.333%}.elementor-column.elementor-md-90{width:90%}.elementor-column.elementor-md-100{width:100%}}@media (min-width:768px) and (max-width:1024px){.elementor-reverse-tablet>.elementor-container>:first-child{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.elementor-reverse-tablet>.elementor-container>:nth-child(2){-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.elementor-reverse-tablet>.elementor-container>:nth-child(3){-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.elementor-reverse-tablet>.elementor-container>:nth-child(4){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.elementor-reverse-tablet>.elementor-container>:nth-child(5){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.elementor-reverse-tablet>.elementor-container>:nth-child(6){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-reverse-tablet>.elementor-container>:nth-child(7){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.elementor-reverse-tablet>.elementor-container>:nth-child(8){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.elementor-reverse-tablet>.elementor-container>:nth-child(9){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.elementor-reverse-tablet>.elementor-container>:nth-child(10){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}}@media (max-width:767px){.elementor-reverse-mobile>.elementor-container>:first-child{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.elementor-reverse-mobile>.elementor-container>:nth-child(2){-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.elementor-reverse-mobile>.elementor-container>:nth-child(3){-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.elementor-reverse-mobile>.elementor-container>:nth-child(4){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.elementor-reverse-mobile>.elementor-container>:nth-child(5){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.elementor-reverse-mobile>.elementor-container>:nth-child(6){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-reverse-mobile>.elementor-container>:nth-child(7){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.elementor-reverse-mobile>.elementor-container>:nth-child(8){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.elementor-reverse-mobile>.elementor-container>:nth-child(9){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.elementor-reverse-mobile>.elementor-container>:nth-child(10){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.elementor-column{width:100%}}ul.elementor-icon-list-items.elementor-inline-items{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}ul.elementor-icon-list-items.elementor-inline-items .elementor-inline-item{word-break:break-word}.elementor-grid{display:grid;grid-column-gap:var(--grid-column-gap);grid-row-gap:var(--grid-row-gap)}.elementor-grid .elementor-grid-item{min-width:0}.elementor-grid-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}@media (min-width:-1px){.elementor-grid-widescreen-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-widescreen-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-widescreen-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-widescreen-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-widescreen-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-widescreen-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-widescreen-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-widescreen-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-widescreen-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-widescreen-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-widescreen-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-widescreen-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-widescreen-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-widescreen-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:-1px){.elementor-grid-laptop-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-laptop-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-laptop-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-laptop-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-laptop-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-laptop-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-laptop-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-laptop-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-laptop-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-laptop-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-laptop-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-laptop-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-laptop-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-laptop-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:-1px){.elementor-grid-tablet_extra-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-tablet_extra-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-tablet_extra-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-tablet_extra-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-tablet_extra-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-tablet_extra-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-tablet_extra-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-tablet_extra-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-tablet_extra-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-tablet_extra-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-tablet_extra-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-tablet_extra-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-tablet_extra-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-tablet_extra-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:1024px){.elementor-grid-tablet-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-tablet-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-tablet-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-tablet-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-tablet-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-tablet-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-tablet-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-tablet-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-tablet-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-tablet-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-tablet-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-tablet-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-tablet-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-tablet-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:-1px){.elementor-grid-mobile_extra-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-mobile_extra-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-mobile_extra-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-mobile_extra-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-mobile_extra-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-mobile_extra-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-mobile_extra-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-mobile_extra-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-mobile_extra-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-mobile_extra-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-mobile_extra-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-mobile_extra-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-mobile_extra-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-mobile_extra-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:767px){.elementor-grid-mobile-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-mobile-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-mobile-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-mobile-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-mobile-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-mobile-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-mobile-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-mobile-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-mobile-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-mobile-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-mobile-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-mobile-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-mobile-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-mobile-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (min-width:1025px){#elementor-device-mode:after{content:"desktop"}}@media (min-width:-1px){#elementor-device-mode:after{content:"widescreen"}}@media (max-width:-1px){#elementor-device-mode:after{content:"laptop";content:"tablet_extra"}}@media (max-width:1024px){#elementor-device-mode:after{content:"tablet"}}@media (max-width:-1px){#elementor-device-mode:after{content:"mobile_extra"}}@media (max-width:767px){#elementor-device-mode:after{content:"mobile"}}[class*=" eicon-"],[class^=eicon]{display:inline-block;font-family:eicons;font-size:inherit;font-weight:400;font-style:normal;font-variant:normal;line-height:1;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@-webkit-keyframes eicon-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes eicon-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.eicon-animation-spin{-webkit-animation:eicon-spin 2s linear infinite;animation:eicon-spin 2s linear infinite}.eicon-loading:before{content:"\e8fb"}.eicon-menu-bar:before{content:"\e816"}.eicon-chevron-right:before{content:"\e87d"}.eicon-chevron-left:before{content:"\e87e"}.eicon-close:before{content:"\e87f"}.eicon-share-arrow:before{content:"\e96c"}.eicon-zoom-in:before{content:"\e882"}.eicon-zoom-in-bold:before{content:"\e92e"}.eicon-zoom-out-bold:before{content:"\e943"}.eicon-frame-expand:before{content:"\e95c"}.eicon-frame-minimize:before{content:"\e95d"}.eicon-play:before{content:"\e89d"}.eicon-facebook:before{content:"\e959"}.eicon-twitter:before{content:"\e95a"}.eicon-pinterest:before{content:"\e95b"}.eicon-download-bold:before{content:"\e96b"}.eicon-caret-down:before{content:"\e92a"}.elementor-form-fields-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group .elementor-field-subgroup,.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group>.elementor-select-wrapper,.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group>input,.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group>textarea{-ms-flex-preferred-size:100%;flex-basis:100%;max-width:100%}.elementor-form-fields-wrapper.elementor-labels-inline>.elementor-field-group .elementor-select-wrapper,.elementor-form-fields-wrapper.elementor-labels-inline>.elementor-field-group>input{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-field-group{-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-field-group.elementor-field-type-submit{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.elementor-field-group .elementor-field-textual{width:100%;max-width:100%;border:1px solid #818a91;background-color:transparent;color:#373a3c;vertical-align:middle;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-field-group .elementor-field-textual:focus{-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.1) inset;box-shadow:inset 0 0 0 1px rgba(0,0,0,.1);outline:0}.elementor-field-group .elementor-field-textual::-webkit-input-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual:-ms-input-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual:-moz-placeholder,.elementor-field-group .elementor-field-textual::-moz-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual::-ms-input-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual::placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-select-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;position:relative;width:100%}.elementor-field-group .elementor-select-wrapper select{appearance:none;-webkit-appearance:none;-moz-appearance:none;color:inherit;font-size:inherit;font-family:inherit;font-weight:inherit;font-style:inherit;text-transform:inherit;letter-spacing:inherit;line-height:inherit;-ms-flex-preferred-size:100%;flex-basis:100%;padding-left:20px}.elementor-field-group .elementor-select-wrapper:before{content:"\e92a";font-family:eicons;font-size:15px;position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);left:10px;pointer-events:none;text-shadow:0 0 3px rgba(0,0,0,.3)}.elementor-field-group.elementor-field-type-select-multiple .elementor-select-wrapper:before{content:""}.elementor-field-subgroup{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-field-subgroup .elementor-field-option label{display:inline-block}.elementor-field-subgroup.elementor-subgroup-inline .elementor-field-option{padding-left:10px}.elementor-field-subgroup:not(.elementor-subgroup-inline) .elementor-field-option{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option label,.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option label,.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option label{display:inline}.elementor-field-label{cursor:pointer}.elementor-mark-required .elementor-field-label:after{content:"*";color:red;padding-right:.2em}.elementor-field-textual{line-height:1.4;font-size:15px;min-height:40px;padding:5px 14px;-webkit-border-radius:3px;border-radius:3px}.elementor-field-textual.elementor-size-xs{font-size:13px;min-height:33px;padding:4px 12px;-webkit-border-radius:2px;border-radius:2px}.elementor-field-textual.elementor-size-md{font-size:16px;min-height:47px;padding:6px 16px;-webkit-border-radius:4px;border-radius:4px}.elementor-field-textual.elementor-size-lg{font-size:18px;min-height:59px;padding:7px 20px;-webkit-border-radius:5px;border-radius:5px}.elementor-field-textual.elementor-size-xl{font-size:20px;min-height:72px;padding:8px 24px;-webkit-border-radius:6px;border-radius:6px}.elementor-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-button-align-stretch .e-form__buttons__wrapper{-ms-flex-preferred-size:50%;flex-basis:50%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-button-align-stretch .e-form__buttons__wrapper__button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-button-align-center .e-form__buttons,.elementor-button-align-center .elementor-field-type-submit{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-button-align-start .e-form__buttons,.elementor-button-align-start .elementor-field-type-submit{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-button-align-end .e-form__buttons,.elementor-button-align-end .elementor-field-type-submit{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:initial;flex-basis:auto}.elementor-button-align-center .e-form__buttons__wrapper,.elementor-button-align-end .e-form__buttons__wrapper,.elementor-button-align-start .e-form__buttons__wrapper{-webkit-box-flex:initial;-ms-flex-positive:initial;flex-grow:0}.elementor-button-align-center .e-form__buttons__wrapper,.elementor-button-align-center .e-form__buttons__wrapper__button,.elementor-button-align-end .e-form__buttons__wrapper,.elementor-button-align-end .e-form__buttons__wrapper__button,.elementor-button-align-start .e-form__buttons__wrapper,.elementor-button-align-start .e-form__buttons__wrapper__button{-ms-flex-preferred-size:initial;flex-basis:auto}@media screen and (max-width:1024px){.elementor-tablet-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-tablet-button-align-stretch .e-form__buttons__wrapper{-ms-flex-preferred-size:50%;flex-basis:50%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-tablet-button-align-stretch .e-form__buttons__wrapper__button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-tablet-button-align-center .e-form__buttons,.elementor-tablet-button-align-center .elementor-field-type-submit{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-tablet-button-align-start .e-form__buttons,.elementor-tablet-button-align-start .elementor-field-type-submit{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-tablet-button-align-end .e-form__buttons,.elementor-tablet-button-align-end .elementor-field-type-submit{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-tablet-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-tablet-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-tablet-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:initial;flex-basis:auto}.elementor-tablet-button-align-center .e-form__buttons__wrapper,.elementor-tablet-button-align-end .e-form__buttons__wrapper,.elementor-tablet-button-align-start .e-form__buttons__wrapper{-webkit-box-flex:initial;-ms-flex-positive:initial;flex-grow:0}.elementor-tablet-button-align-center .e-form__buttons__wrapper,.elementor-tablet-button-align-center .e-form__buttons__wrapper__button,.elementor-tablet-button-align-end .e-form__buttons__wrapper,.elementor-tablet-button-align-end .e-form__buttons__wrapper__button,.elementor-tablet-button-align-start .e-form__buttons__wrapper,.elementor-tablet-button-align-start .e-form__buttons__wrapper__button{-ms-flex-preferred-size:initial;flex-basis:auto}}@media screen and (max-width:767px){.elementor-mobile-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-mobile-button-align-stretch .e-form__buttons__wrapper{-ms-flex-preferred-size:50%;flex-basis:50%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-mobile-button-align-stretch .e-form__buttons__wrapper__button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-mobile-button-align-center .e-form__buttons,.elementor-mobile-button-align-center .elementor-field-type-submit{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-mobile-button-align-start .e-form__buttons,.elementor-mobile-button-align-start .elementor-field-type-submit{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-mobile-button-align-end .e-form__buttons,.elementor-mobile-button-align-end .elementor-field-type-submit{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-mobile-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-mobile-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-mobile-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:initial;flex-basis:auto}.elementor-mobile-button-align-center .e-form__buttons__wrapper,.elementor-mobile-button-align-end .e-form__buttons__wrapper,.elementor-mobile-button-align-start .e-form__buttons__wrapper{-webkit-box-flex:initial;-ms-flex-positive:initial;flex-grow:0}.elementor-mobile-button-align-center .e-form__buttons__wrapper,.elementor-mobile-button-align-center .e-form__buttons__wrapper__button,.elementor-mobile-button-align-end .e-form__buttons__wrapper,.elementor-mobile-button-align-end .e-form__buttons__wrapper__button,.elementor-mobile-button-align-start .e-form__buttons__wrapper,.elementor-mobile-button-align-start .e-form__buttons__wrapper__button{-ms-flex-preferred-size:initial;flex-basis:auto}}.elementor-error .elementor-field{border-color:#d9534f}.elementor-error .help-inline{color:#d9534f;font-size:.9em}.elementor-message{margin:10px 0;font-size:1em;line-height:1}.elementor-message:before{content:"\e90e";display:inline-block;font-family:eicons;font-weight:400;font-style:normal;vertical-align:middle;margin-left:5px}.elementor-message.elementor-message-danger{color:#d9534f}.elementor-message.elementor-message-danger:before{content:"\e87f"}.elementor-message.form-message-success{color:#5cb85c}.elementor-form .elementor-button{padding-top:0;padding-bottom:0;border:none}.elementor-form .elementor-button>span{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-form .elementor-button.elementor-size-xs{min-height:33px}.elementor-form .elementor-button.elementor-size-sm{min-height:40px}.elementor-form .elementor-button.elementor-size-md{min-height:47px}.elementor-form .elementor-button.elementor-size-lg{min-height:59px}.elementor-form .elementor-button.elementor-size-xl{min-height:72px}.elementor-element .elementor-widget-container{-webkit-transition:background .3s,border .3s,-webkit-border-radius .3s,-webkit-box-shadow .3s;transition:background .3s,border .3s,-webkit-border-radius .3s,-webkit-box-shadow .3s;-o-transition:background .3s,border .3s,border-radius .3s,box-shadow .3s;transition:background .3s,border .3s,border-radius .3s,box-shadow .3s;transition:background .3s,border .3s,border-radius .3s,box-shadow .3s,-webkit-border-radius .3s,-webkit-box-shadow .3s}.elementor-button{display:inline-block;line-height:1;background-color:#818a91;font-size:15px;padding:12px 24px;-webkit-border-radius:3px;border-radius:3px;color:#fff;fill:#fff;text-align:center;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.elementor-button:focus,.elementor-button:hover,.elementor-button:visited{color:#fff}.elementor-button-content-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-button-icon{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-button-icon svg{width:1em;height:auto}.elementor-button-icon .e-font-icon-svg{height:1em}.elementor-button-text{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10;display:inline-block}.elementor-button.elementor-size-xs{font-size:13px;padding:10px 20px;-webkit-border-radius:2px;border-radius:2px}.elementor-button.elementor-size-md{font-size:16px;padding:15px 30px;-webkit-border-radius:4px;border-radius:4px}.elementor-button.elementor-size-lg{font-size:18px;padding:20px 40px;-webkit-border-radius:5px;border-radius:5px}.elementor-button.elementor-size-xl{font-size:20px;padding:25px 50px;-webkit-border-radius:6px;border-radius:6px}.elementor-button .elementor-align-icon-right{margin-left:5px;-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-button .elementor-align-icon-left{margin-right:5px;-webkit-box-ordinal-group:16;-ms-flex-order:15;order:15}.elementor-button span{text-decoration:inherit}.elementor-menu-cart__toggle .elementor-button-icon{-webkit-box-ordinal-group:16;-ms-flex-order:15;order:15}.elementor-element.elementor-button-info .elementor-button{background-color:#5bc0de}.elementor-element.elementor-button-success .elementor-button{background-color:#5cb85c}.elementor-element.elementor-button-warning .elementor-button{background-color:#f0ad4e}.elementor-element.elementor-button-danger .elementor-button{background-color:#d9534f}.elementor-widget-button .elementor-button .elementor-button-info{background-color:#5bc0de}.elementor-widget-button .elementor-button .elementor-button-success{background-color:#5cb85c}.elementor-widget-button .elementor-button .elementor-button-warning{background-color:#f0ad4e}.elementor-widget-button .elementor-button .elementor-button-danger{background-color:#d9534f}.elementor-tab-title a{color:inherit}.elementor-view-stacked .elementor-icon{padding:.5em;background-color:#818a91;color:#fff;fill:#fff}.elementor-view-framed .elementor-icon{padding:.5em;color:#818a91;border:3px solid #818a91;background-color:transparent}.elementor-icon{display:inline-block;line-height:1;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;color:#818a91;font-size:50px;text-align:center}.elementor-icon:hover{color:#818a91}.elementor-icon i,.elementor-icon svg{width:1em;height:1em;position:relative;display:block}.elementor-icon i:before,.elementor-icon svg:before{position:absolute;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.elementor-icon i.fad{width:auto}.elementor-shape-circle .elementor-icon{-webkit-border-radius:50%;border-radius:50%}.slick-slider{-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-ms-touch-action:pan-y;touch-action:pan-y;-webkit-tap-highlight-color:transparent}.slick-list,.slick-slider{position:relative;display:block}.slick-list{overflow:hidden;margin:0;padding:0}.slick-list:focus{outline:none}.slick-list.dragging{cursor:pointer}.slick-slider .slick-list,.slick-slider .slick-track{-webkit-transform:translateZ(0);transform:translateZ(0)}.slick-track{position:relative;left:0;top:0;display:block}.slick-track:after,.slick-track:before{content:"";display:table}.slick-track:after{clear:both}.slick-loading .slick-track{visibility:hidden}.slick-slide{float:left;height:100%;min-height:1px;display:none}.elementor-slick-slider[dir=rtl] .slick-slide{float:right}.slick-slide img{display:block}.slick-slide.slick-loading img{display:none}.slick-slide.dragging img{pointer-events:none}.slick-initialized .slick-slide{display:block}.slick-loading .slick-slide{visibility:hidden}.slick-vertical .slick-slide{display:block;height:auto;border:1px solid transparent}.slick-arrow.slick-hidden{display:none}.elementor-slick-slider .slick-loading .slick-list{background:#fff}.elementor-slick-slider .slick-loading .slick-list:after{content:"\e8fb";font-family:eicons;position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite;font-size:25px;color:#a4afb7}.elementor-slick-slider .slick-next,.elementor-slick-slider .slick-prev{font-size:0;line-height:0;position:absolute;top:50%;display:block;width:20px;padding:0;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);cursor:pointer;color:transparent;border:none;outline:none;background:transparent}.elementor-slick-slider .slick-next:focus,.elementor-slick-slider .slick-next:hover,.elementor-slick-slider .slick-prev:focus,.elementor-slick-slider .slick-prev:hover{color:transparent;outline:none;background:transparent}.elementor-slick-slider .slick-next:focus:before,.elementor-slick-slider .slick-next:hover:before,.elementor-slick-slider .slick-prev:focus:before,.elementor-slick-slider .slick-prev:hover:before{opacity:1}.elementor-slick-slider .slick-next.slick-disabled:before,.elementor-slick-slider .slick-prev.slick-disabled:before{opacity:.25}.elementor-slick-slider .slick-next:before,.elementor-slick-slider .slick-prev:before{font-family:eicons;font-size:35px;line-height:1;opacity:.75;color:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.elementor-slick-slider .slick-prev{left:-25px}[dir=rtl] .elementor-slick-slider .slick-prev{left:auto;right:-25px}.elementor-slick-slider .slick-prev:before{content:"\e89f"}[dir=rtl] .elementor-slick-slider .slick-prev:before{content:"\e89e"}.elementor-slick-slider .slick-next{right:-25px}[dir=rtl] .elementor-slick-slider .slick-next{left:-25px;right:auto}.elementor-slick-slider .slick-next:before{content:"\e89e"}[dir=rtl] .elementor-slick-slider .slick-next:before{content:"\e89f"}.elementor-slick-slider .slick-dotted.slick-slider{margin-bottom:30px}.elementor-slick-slider ul.slick-dots{position:absolute;bottom:-25px;display:block;width:100%;padding:0;margin:0;list-style:none;text-align:center;line-height:1}.elementor-slick-slider ul.slick-dots li{position:relative;display:inline-block;width:20px;height:20px;margin:0;padding:0;cursor:pointer}.elementor-slick-slider ul.slick-dots li button{font-size:0;line-height:0;display:block;width:20px;height:20px;padding:5px;cursor:pointer;color:transparent;border:0;outline:none;background:transparent}.elementor-slick-slider ul.slick-dots li button:focus,.elementor-slick-slider ul.slick-dots li button:hover{outline:none}.elementor-slick-slider ul.slick-dots li button:focus:before,.elementor-slick-slider ul.slick-dots li button:hover:before{opacity:1}.elementor-slick-slider ul.slick-dots li button:before{font-family:eicons;font-size:6px;line-height:20px;position:absolute;top:0;left:0;width:20px;height:20px;content:"\e914";text-align:center;opacity:.25;color:#000;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.elementor-slick-slider ul.slick-dots li.slick-active button:before{opacity:.75;color:#000}.elementor-slick-slider .slick-arrows-inside .slick-prev{left:20px}[dir=rtl] .elementor-slick-slider .slick-arrows-inside .slick-prev{left:auto;right:20px}.elementor-slick-slider .slick-arrows-inside .slick-next{right:20px}[dir=rtl] .elementor-slick-slider .slick-arrows-inside .slick-next{left:20px;right:auto}.elementor-slick-slider .slick-dots-inside .slick-dots{bottom:5px}.elementor-slick-slider .slick-dots-inside.slick-dotted.slick-slider{margin-bottom:0}.elementor-slick-slider .slick-slider .slick-next,.elementor-slick-slider .slick-slider .slick-prev{z-index:1}.elementor-slick-slider .slick-slide img{margin:auto}.swiper-container{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;z-index:1}.swiper-container .swiper-slide figure{line-height:0}.swiper-container .elementor-lightbox-content-source{display:none}.swiper-container-no-flexbox .swiper-slide{float:left}.swiper-container-vertical>.swiper-wrapper{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;-o-transition-property:transform;transition-property:transform;transition-property:transform,-webkit-transform;-webkit-box-sizing:content-box;box-sizing:content-box}.swiper-container-android .swiper-slide,.swiper-wrapper{-webkit-transform:translateZ(0);transform:translateZ(0)}.swiper-container-multirow>.swiper-wrapper{-ms-flex-wrap:wrap;flex-wrap:wrap}.swiper-container-free-mode>.swiper-wrapper{-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out;margin:0 auto}.swiper-slide{-ms-flex-negative:0;flex-shrink:0;width:100%;height:100%;position:relative}.swiper-container-autoheight,.swiper-container-autoheight .swiper-slide{height:auto}.swiper-container-autoheight .swiper-wrapper{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-transition-property:height,-webkit-transform;transition-property:height,-webkit-transform;-o-transition-property:transform,height;transition-property:transform,height;transition-property:transform,height,-webkit-transform}.swiper-container .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}.swiper-wp8-horizontal{-ms-touch-action:pan-y;touch-action:pan-y}.swiper-wp8-vertical{-ms-touch-action:pan-x;touch-action:pan-x}.swiper-button-next,.swiper-button-prev{position:absolute;top:50%;width:27px;height:44px;margin-top:-22px;z-index:10;cursor:pointer;-webkit-background-size:27px 44px;background-size:27px 44px;background:no-repeat 50%}.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}.swiper-button-prev,.swiper-container-rtl .swiper-button-next{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z' fill='%23007aff'/%3E%3C/svg%3E");left:10px;right:auto}.swiper-button-prev.swiper-button-black,.swiper-container-rtl .swiper-button-next.swiper-button-black{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z'/%3E%3C/svg%3E")}.swiper-button-prev.swiper-button-white,.swiper-container-rtl .swiper-button-next.swiper-button-white{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z' fill='%23fff'/%3E%3C/svg%3E")}.swiper-button-next,.swiper-container-rtl .swiper-button-prev{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z' fill='%23007aff'/%3E%3C/svg%3E");right:10px;left:auto}.swiper-button-next.swiper-button-black,.swiper-container-rtl .swiper-button-prev.swiper-button-black{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z'/%3E%3C/svg%3E")}.swiper-button-next.swiper-button-white,.swiper-container-rtl .swiper-button-prev.swiper-button-white{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z' fill='%23fff'/%3E%3C/svg%3E")}.swiper-pagination{position:absolute;text-align:center;-webkit-transition:.3s;-o-transition:.3s;transition:.3s;-webkit-transform:translateZ(0);transform:translateZ(0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-container-horizontal>.swiper-pagination-bullets,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:5px;left:0;width:100%}.swiper-pagination-bullet{width:6px;height:6px;display:inline-block;-webkit-border-radius:50%;border-radius:50%;background:#000;opacity:.2}.swiper-pagination-fraction{color:#000}button.swiper-pagination-bullet{border:none;margin:0;padding:0;-webkit-box-shadow:none;box-shadow:none;appearance:none;-webkit-appearance:none;-moz-appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-white .swiper-pagination-bullet{background:#fff}.swiper-pagination-bullet-active{opacity:1}.swiper-pagination-white .swiper-pagination-bullet-active{background:#fff}.swiper-pagination-black .swiper-pagination-bullet-active{background:#000}.swiper-container-vertical>.swiper-pagination-bullets{right:10px;top:50%;-webkit-transform:translate3d(0,-50%,0);transform:translate3d(0,-50%,0)}.swiper-container-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{margin:5px 0;display:block}.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 6px}.swiper-pagination-progressbar{background:rgba(0,0,0,.25);position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:#000;position:absolute;left:0;top:0;width:100%;height:100%;-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);-webkit-transform-origin:left top;-ms-transform-origin:left top;transform-origin:left top}.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{-webkit-transform-origin:right top;-ms-transform-origin:right top;transform-origin:right top}.swiper-container-horizontal>.swiper-pagination-progressbar{width:100%;height:4px;left:0;top:0}.swiper-container-vertical>.swiper-pagination-progressbar{width:4px;height:100%;left:0;top:0}.swiper-pagination-progressbar.swiper-pagination-white{background:hsla(0,0%,100%,.5)}.swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill{background:#fff}.swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill{background:#000}.swiper-container-3d{-webkit-perspective:1200px;perspective:1200px}.swiper-container-3d .swiper-cube-shadow,.swiper-container-3d .swiper-slide,.swiper-container-3d .swiper-slide-shadow-bottom,.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top,.swiper-container-3d .swiper-wrapper{-webkit-transform-style:preserve-3d;transform-style:preserve-3d}.swiper-container-3d .swiper-slide-shadow-bottom,.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-container-3d .swiper-slide-shadow-left{background-image:-webkit-gradient(linear,right top,left top,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(right,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(right,rgba(0,0,0,.5),transparent);background-image:linear-gradient(270deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-right{background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(left,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(left,rgba(0,0,0,.5),transparent);background-image:linear-gradient(90deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-top{background-image:-webkit-gradient(linear,left bottom,left top,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(bottom,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(bottom,rgba(0,0,0,.5),transparent);background-image:linear-gradient(0deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-bottom{background-image:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(top,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(top,rgba(0,0,0,.5),transparent);background-image:linear-gradient(180deg,rgba(0,0,0,.5),transparent)}.swiper-container-coverflow .swiper-wrapper,.swiper-container-flip .swiper-wrapper{-ms-perspective:1200px}.swiper-container-cube,.swiper-container-flip{overflow:visible}.swiper-container-cube .swiper-slide,.swiper-container-flip .swiper-slide{pointer-events:none;z-index:1}.swiper-container-cube .swiper-slide .swiper-slide,.swiper-container-flip .swiper-slide .swiper-slide{pointer-events:none}.swiper-container-cube .swiper-slide-active,.swiper-container-cube .swiper-slide-active .swiper-slide-active,.swiper-container-flip .swiper-slide-active,.swiper-container-flip .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-container-cube .swiper-slide-shadow-bottom,.swiper-container-cube .swiper-slide-shadow-left,.swiper-container-cube .swiper-slide-shadow-right,.swiper-container-cube .swiper-slide-shadow-top,.swiper-container-flip .swiper-slide-shadow-bottom,.swiper-container-flip .swiper-slide-shadow-left,.swiper-container-flip .swiper-slide-shadow-right,.swiper-container-flip .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-container-cube .swiper-slide{visibility:hidden;-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0;width:100%;height:100%}.swiper-container-cube.swiper-container-rtl .swiper-slide{-webkit-transform-origin:100% 0;-ms-transform-origin:100% 0;transform-origin:100% 0}.swiper-container-cube .swiper-slide-active,.swiper-container-cube .swiper-slide-next,.swiper-container-cube .swiper-slide-next+.swiper-slide,.swiper-container-cube .swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-container-cube .swiper-cube-shadow{position:absolute;left:0;bottom:0;width:100%;height:100%;background:#000;opacity:.6;-webkit-filter:blur(50px);filter:blur(50px);z-index:0}.swiper-container-fade.swiper-container-free-mode .swiper-slide{-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out}.swiper-container-fade .swiper-slide{pointer-events:none;-webkit-transition-property:opacity;-o-transition-property:opacity;transition-property:opacity}.swiper-container-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-container-fade .swiper-slide-active,.swiper-container-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-zoom-container{width:100%;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;text-align:center}.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{max-width:100%;max-height:100%;-o-object-fit:contain;object-fit:contain}.swiper-scrollbar{-webkit-border-radius:10px;border-radius:10px;position:relative;-ms-touch-action:none;background:rgba(0,0,0,.1)}.swiper-container-horizontal>.swiper-scrollbar{position:absolute;left:1%;bottom:3px;z-index:50;height:5px;width:98%}.swiper-container-vertical>.swiper-scrollbar{position:absolute;right:3px;top:1%;z-index:50;width:5px;height:98%}.swiper-scrollbar-drag{height:100%;width:100%;position:relative;background:rgba(0,0,0,.5);-webkit-border-radius:10px;border-radius:10px;left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.elementor-pagination-position-outside .swiper-container{padding-bottom:30px}.elementor-pagination-position-outside .elementor-swiper-button{top:calc(50% - 30px / 2)}.elementor-swiper{position:relative}.elementor-main-swiper{position:static}.elementor-arrows-position-outside .swiper-container{width:calc(100% - 60px)}.elementor-arrows-position-outside .elementor-swiper-button-prev{left:0}.elementor-arrows-position-outside .elementor-swiper-button-next{right:0}.swiper-image-stretch .swiper-slide .swiper-slide-image{width:100%}.elementor-swiper-button{position:absolute;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;z-index:1;cursor:pointer;font-size:25px;color:hsla(0,0%,93.3%,.9);top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}.elementor-swiper-button-prev{left:10px}.elementor-swiper-button-next{right:10px}.elementor-swiper-button.swiper-button-disabled{opacity:.3}.swiper-container-cube .elementor-swiper-button{-webkit-transform:translate3d(0,-50%,1px);transform:translate3d(0,-50%,1px)}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;-webkit-transform-origin:50%;-ms-transform-origin:50%;transform-origin:50%;-webkit-animation:swiper-preloader-spin 1s steps(12) infinite;animation:swiper-preloader-spin 1s steps(12) infinite}.swiper-lazy-preloader:after{display:block;content:"";width:100%;height:100%;-webkit-background-size:100% 100%;background-size:100%;background:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath id='a' stroke='%236c6c6c' stroke-width='11' stroke-linecap='round' d='M60 7v20'/%3E%3C/defs%3E%3Cuse xlink:href='%23a' opacity='.27'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(30 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(60 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(90 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(120 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(150 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.37' transform='rotate(180 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.46' transform='rotate(210 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.56' transform='rotate(240 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.66' transform='rotate(270 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.75' transform='rotate(300 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.85' transform='rotate(330 60 60)'/%3E%3C/svg%3E") no-repeat 50%}.swiper-lazy-preloader-white:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath id='a' stroke='%23fff' stroke-width='11' stroke-linecap='round' d='M60 7v20'/%3E%3C/defs%3E%3Cuse xlink:href='%23a' opacity='.27'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(30 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(60 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(90 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(120 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(150 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.37' transform='rotate(180 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.46' transform='rotate(210 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.56' transform='rotate(240 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.66' transform='rotate(270 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.75' transform='rotate(300 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.85' transform='rotate(330 60 60)'/%3E%3C/svg%3E")}@-webkit-keyframes swiper-preloader-spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes swiper-preloader-spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.elementor-lightbox{--lightbox-ui-color:hsla(0,0%,93.3%,0.9);--lightbox-ui-color-hover:#fff;--lightbox-text-color:var(--lightbox-ui-color);--lightbox-header-icons-size:20px;--lightbox-navigation-icons-size:25px}.elementor-lightbox .dialog-header{display:none}.elementor-lightbox .dialog-widget-content{background:none;-webkit-box-shadow:none;box-shadow:none;width:100%;height:100%}.elementor-lightbox .dialog-message{-webkit-animation-duration:.3s;animation-duration:.3s}.elementor-lightbox .dialog-message:not(.elementor-fit-aspect-ratio){height:100%}.elementor-lightbox .dialog-message.dialog-lightbox-message{padding:0}.elementor-lightbox .dialog-lightbox-close-button{cursor:pointer;position:absolute;font-size:var(--lightbox-header-icons-size);left:.75em;margin-top:13px;padding:.25em;z-index:2;line-height:1}.elementor-lightbox .dialog-lightbox-close-button,.elementor-lightbox .elementor-swiper-button{color:var(--lightbox-ui-color);-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;opacity:1}.elementor-lightbox .dialog-lightbox-close-button:hover,.elementor-lightbox .elementor-swiper-button:hover{color:var(--lightbox-ui-color-hover)}.elementor-lightbox .swiper-container{height:100%}.elementor-lightbox .elementor-lightbox-item{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;position:relative;padding:70px;-webkit-box-sizing:border-box;box-sizing:border-box;height:100%;margin:auto}@media (max-width:767px){.elementor-lightbox .elementor-lightbox-item{padding:70px 0}}.elementor-lightbox .elementor-lightbox-image{max-height:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.elementor-lightbox .elementor-lightbox-image,.elementor-lightbox .elementor-lightbox-image:hover{opacity:1;-webkit-filter:none;filter:none;border:none}.elementor-lightbox .elementor-lightbox-image,.elementor-lightbox .elementor-video-container{-webkit-box-shadow:0 0 30px rgba(0,0,0,.3),0 0 8px -5px rgba(0,0,0,.3);box-shadow:0 0 30px rgba(0,0,0,.3),0 0 8px -5px rgba(0,0,0,.3);-webkit-border-radius:2px;border-radius:2px}.elementor-lightbox .elementor-video-container{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}@media (min-width:1025px){.elementor-lightbox .elementor-video-container{width:75%}}@media (max-width:1024px){.elementor-lightbox .elementor-video-container{width:100%}}@media (min-width:768px) and (max-width:1024px){.elementor-lightbox .elementor-aspect-ratio-916 .elementor-video-container{width:70%}}.elementor-lightbox .elementor-swiper-button:focus{outline-width:1px}.elementor-lightbox .elementor-swiper-button-next,.elementor-lightbox .elementor-swiper-button-prev{height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:15%;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;font-size:var(--lightbox-navigation-icons-size)}.elementor-lightbox .elementor-swiper-button-prev{left:0}.elementor-lightbox .elementor-swiper-button-next{right:0}@media (max-width:767px){.elementor-lightbox .elementor-swiper-button:focus{outline:none}.elementor-lightbox .elementor-swiper-button-next,.elementor-lightbox .elementor-swiper-button-prev{width:20%}.elementor-lightbox .elementor-swiper-button-next i,.elementor-lightbox .elementor-swiper-button-prev i{padding:10px;background-color:rgba(0,0,0,.5)}.elementor-lightbox .elementor-swiper-button-prev{left:0;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-lightbox .elementor-swiper-button-next{right:0;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}}.elementor-slideshow__counter{color:currentColor;font-size:.75em;width:-webkit-max-content;width:-moz-max-content;width:max-content}.elementor-slideshow__footer,.elementor-slideshow__header{position:absolute;left:0;width:100%;padding:15px 20px;-webkit-transition:.3s;-o-transition:.3s;transition:.3s}.elementor-slideshow__footer{color:var(--lightbox-text-color)}.elementor-slideshow__header{color:var(--lightbox-ui-color);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;font-size:var(--lightbox-header-icons-size);padding-right:1em;padding-left:2.6em;top:0;-webkit-box-align:center;-ms-flex-align:center;align-items:center;z-index:10}.elementor-slideshow__header>i{font-size:inherit;cursor:pointer;padding:.25em;margin:0 .35em}.elementor-slideshow__header>i:hover{color:var(--lightbox-ui-color-hover)}.elementor-slideshow__header .elementor-slideshow__counter{margin-left:auto}.elementor-slideshow__header .elementor-icon-share{z-index:5}.elementor-slideshow__share-menu{background-color:transparent;width:0;height:0;position:absolute;overflow:hidden;-webkit-transition:background-color .4s;-o-transition:background-color .4s;transition:background-color .4s}.elementor-slideshow__share-menu .elementor-slideshow__share-links a{color:#2c2c2c}.elementor-slideshow__share-links{display:block;position:absolute;min-width:200px;left:2.8em;top:3em;background-color:#fff;-webkit-border-radius:3px;border-radius:3px;padding:14px 20px;-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);opacity:0;-webkit-transform-origin:90% 10%;-ms-transform-origin:90% 10%;transform-origin:90% 10%;-webkit-transition:all .25s .1s;-o-transition:all .25s .1s;transition:all .25s .1s;-webkit-box-shadow:0 4px 15px rgba(0,0,0,.3);box-shadow:0 4px 15px rgba(0,0,0,.3)}.elementor-slideshow__share-links a{text-align:right;color:#55595c;font-size:12px;line-height:2.5;display:block;opacity:0;-webkit-transition:opacity .5s .1s;-o-transition:opacity .5s .1s;transition:opacity .5s .1s}.elementor-slideshow__share-links a:hover{color:#000}.elementor-slideshow__share-links a i{font-size:1.25em;margin-left:.75em}.elementor-slideshow__share-links:before{content:"";display:block;position:absolute;top:1px;left:.5em;border:.45em solid transparent;border-bottom-color:#fff;-webkit-transform:translateY(-100%) scaleX(.7);-ms-transform:translateY(-100%) scaleX(.7);transform:translateY(-100%) scaleX(.7)}.elementor-slideshow__footer{bottom:0;z-index:5;position:fixed}.elementor-slideshow__description,.elementor-slideshow__title{margin:0}.elementor-slideshow__title{font-size:16px;font-weight:700}.elementor-slideshow__description{font-size:14px}.elementor-slideshow--ui-hidden .elementor-slideshow__footer,.elementor-slideshow--ui-hidden .elementor-slideshow__header{opacity:0;pointer-events:none}.elementor-slideshow--ui-hidden .elementor-swiper-button-next,.elementor-slideshow--ui-hidden .elementor-swiper-button-prev{opacity:0}.elementor-slideshow--fullscreen-mode .elementor-video-container{width:100%}.elementor-slideshow--zoom-mode .elementor-slideshow__footer,.elementor-slideshow--zoom-mode .elementor-slideshow__header{background-color:rgba(0,0,0,.5)}.elementor-slideshow--zoom-mode .elementor-swiper-button-next,.elementor-slideshow--zoom-mode .elementor-swiper-button-prev{opacity:0;pointer-events:none}.elementor-slideshow--share-mode .elementor-slideshow__share-menu{top:0;left:0;width:100vw;height:100vh;opacity:1;cursor:default;background-color:rgba(0,0,0,.5)}.elementor-slideshow--share-mode .elementor-slideshow__share-links{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}.elementor-slideshow--share-mode .elementor-slideshow__share-links,.elementor-slideshow--share-mode .elementor-slideshow__share-links a{opacity:1}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-twitter{color:#1da1f2}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-facebook{color:#3b5998}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-pinterest{color:#bd081c}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-download-bold{color:#a4afb7}.elementor-slideshow--share-mode .eicon-share-arrow{z-index:2}.animated{-webkit-animation-duration:1.25s;animation-duration:1.25s}.animated.animated-slow{-webkit-animation-duration:2s;animation-duration:2s}.animated.animated-fast{-webkit-animation-duration:.75s;animation-duration:.75s}.animated.infinite{-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}.animated.reverse{animation-direction:reverse;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}@media (prefers-reduced-motion:reduce){.animated{-webkit-animation:none;animation:none}}.elementor-shape{overflow:hidden;position:absolute;left:0;width:100%;line-height:0;direction:ltr}.elementor-shape-top{top:-1px}.elementor-shape-top:not([data-negative=false]) svg{z-index:-1}.elementor-shape-bottom{bottom:-1px}.elementor-shape-bottom:not([data-negative=true]) svg{z-index:-1}.elementor-shape[data-negative=false].elementor-shape-bottom,.elementor-shape[data-negative=true].elementor-shape-top{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.elementor-shape svg{display:block;width:calc(100% + 1.3px);position:relative;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.elementor-shape .elementor-shape-fill{fill:#fff;-webkit-transform-origin:center;-ms-transform-origin:center;transform-origin:center;-webkit-transform:rotateY(0deg);transform:rotateY(0deg)}#wp-admin-bar-elementor_edit_page .ab-submenu .ab-item{display:-webkit-box;display:-ms-flexbox;display:flex;width:200px}#wp-admin-bar-elementor_edit_page .elementor-edit-link-title{white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;width:100%}#wp-admin-bar-elementor_edit_page .elementor-edit-link-type{background:#55595c;font-size:11px;line-height:9px;margin-top:6px;padding:4px 8px;-webkit-border-radius:3px;border-radius:3px}.page-template-elementor_canvas.elementor-page:before{display:none}.elementor-post__thumbnail__link{-webkit-transition:none;-o-transition:none;transition:none}#left-area ul.elementor-icon-list-items,.elementor-edit-area .elementor-element ul.elementor-icon-list-items,.elementor .elementor-element ul.elementor-icon-list-items{padding:0}#wpadminbar *{font-style:normal}.e--ua-appleWebkit.rtl{--flex-right:flex-start}.e--ua-appleWebkit .elementor-share-buttons--align-right,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-right{--justify-content:var(--flex-right,flex-end)}.e--ua-appleWebkit .elementor-share-buttons--align-center,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-center{--justify-content:center}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-justify .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-right .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-right .elementor-grid{width:auto;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:var(--justify-content,space-between);-ms-flex-pack:var(--justify-content,space-between);justify-content:var(--justify-content,space-between);margin-left:calc(-.5 * var(--grid-column-gap));margin-right:calc(-.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-justify .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-right .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-right .elementor-grid-item{margin-left:calc(.5 * var(--grid-column-gap));margin-right:calc(.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid{display:inline-block}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid-item{margin-left:0;margin-right:0}@media (max-width:1024px){.e--ua-appleWebkit .elementor-share-buttons-tablet--align-right,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-tablet-right{--justify-content:var(--flex-right,flex-end)}.e--ua-appleWebkit .elementor-share-buttons-tablet--align-center,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-tablet-center{--justify-content:center}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-justify .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-right .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-right .elementor-grid{width:auto;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:var(--justify-content,space-between);-ms-flex-pack:var(--justify-content,space-between);justify-content:var(--justify-content,space-between);margin-left:calc(-.5 * var(--grid-column-gap));margin-right:calc(-.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-justify .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-right .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-right .elementor-grid-item{margin-left:calc(.5 * var(--grid-column-gap));margin-right:calc(.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid{display:inline-block}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid-item{margin-left:0;margin-right:0}}@media (max-width:767px){.e--ua-appleWebkit .elementor-share-buttons-mobile--align-right,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-mobile-right{--justify-content:var(--flex-right,flex-end)}.e--ua-appleWebkit .elementor-share-buttons-mobile--align-center,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-mobile-center{--justify-content:center}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-justify .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-right .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-right .elementor-grid{width:auto;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:var(--justify-content,space-between);-ms-flex-pack:var(--justify-content,space-between);justify-content:var(--justify-content,space-between);margin-left:calc(-.5 * var(--grid-column-gap));margin-right:calc(-.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-justify .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-right .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-right .elementor-grid-item{margin-left:calc(.5 * var(--grid-column-gap));margin-right:calc(.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid{display:inline-block}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid-item{margin-left:0;margin-right:0}}@media (max-width:767px){.elementor .elementor-hidden-mobile,.elementor .elementor-hidden-phone{display:none}}@media (min-width:-1px) and (max-width:-1px){.elementor .elementor-hidden-mobile_extra{display:none}}@media (min-width:768px) and (max-width:1024px){.elementor .elementor-hidden-tablet{display:none}}@media (min-width:-1px) and (max-width:-1px){.elementor .elementor-hidden-laptop,.elementor .elementor-hidden-tablet_extra{display:none}}@media (min-width:1025px) and (max-width:99999px){.elementor .elementor-hidden-desktop{display:none}}@media (min-width:-1px){.elementor .elementor-hidden-widescreen{display:none}}.elementor-widget-text-path{font-size:20px;text-align:var(--alignment,right)}.elementor-widget-text-path svg{width:var(--width);max-width:100%;height:auto;overflow:visible;word-spacing:var(--word-spacing);-webkit-transform:rotate(var(--rotate,0)) scaleX(var(--scale-x,1)) scaleY(var(--scale-y,1));-ms-transform:rotate(var(--rotate,0)) scaleX(var(--scale-x,1)) scaleY(var(--scale-y,1));transform:rotate(var(--rotate,0)) scaleX(var(--scale-x,1)) scaleY(var(--scale-y,1))}.elementor-widget-text-path svg path{vector-effect:non-scaling-stroke;fill:var(--path-fill,transparent);stroke:var(--stroke-color,transparent);stroke-width:var(--stroke-width,1px);-webkit-transition:var(--stroke-transition) stroke,var(--stroke-transition) fill;-o-transition:var(--stroke-transition) stroke,var(--stroke-transition) fill;transition:var(--stroke-transition) stroke,var(--stroke-transition) fill}.elementor-widget-text-path svg:hover path{--path-fill:var(--path-fill-hover);--stroke-color:var(--stroke-color-hover);--stroke-width:var(--stroke-width-hover)}.elementor-widget-text-path svg text{--fill:var(--text-color);fill:var(--fill);direction:var(--direction,rtl);-webkit-transition:var(--transition) stroke,var(--transition) stroke-width,var(--transition) fill;-o-transition:var(--transition) stroke,var(--transition) stroke-width,var(--transition) fill;transition:var(--transition) stroke,var(--transition) stroke-width,var(--transition) fill}.elementor-widget-text-path svg text:hover{--color:var(--text-color-hover,var(--text-color));--fill:var(--color);color:var(--color)}.elementor-accordion{text-align:right}.elementor-accordion .elementor-accordion-item{border:1px solid #d4d4d4}.elementor-accordion .elementor-accordion-item+.elementor-accordion-item{border-top:none}.elementor-accordion .elementor-tab-title{margin:0;padding:15px 20px;font-weight:700;line-height:1;cursor:pointer;outline:none}.elementor-accordion .elementor-tab-title .elementor-accordion-icon{display:inline-block;width:1.5em}.elementor-accordion .elementor-tab-title .elementor-accordion-icon svg{width:1em;height:1em}.elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-right{float:right;text-align:right}.elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-left{float:left;text-align:left}.elementor-accordion .elementor-tab-title .elementor-accordion-icon .elementor-accordion-icon-closed{display:block}.elementor-accordion .elementor-tab-title .elementor-accordion-icon .elementor-accordion-icon-opened,.elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-closed{display:none}.elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-opened{display:block}.elementor-accordion .elementor-tab-content{display:none;padding:15px 20px;border-top:1px solid #d4d4d4}@media (max-width:767px){.elementor-accordion .elementor-tab-title{padding:12px 15px}.elementor-accordion .elementor-tab-title .elementor-accordion-icon{width:1.2em}.elementor-accordion .elementor-tab-content{padding:7px 15px}}.elementor-alert{padding:15px;border-left:5px solid transparent;position:relative;text-align:right}.elementor-alert .elementor-alert-title{display:block;font-weight:700}.elementor-alert .elementor-alert-description{font-size:13px}.elementor-alert button.elementor-alert-dismiss{position:absolute;left:10px;top:10px;padding:3px;font-size:20px;line-height:1;background:transparent;color:inherit;border:none;cursor:pointer}.elementor-alert.elementor-alert-info{color:#31708f;background-color:#d9edf7;border-color:#bcdff1}.elementor-alert.elementor-alert-success{color:#3c763d;background-color:#dff0d8;border-color:#cae6be}.elementor-alert.elementor-alert-warning{color:#8a6d3b;background-color:#fcf8e3;border-color:#f9f0c3}.elementor-alert.elementor-alert-danger{color:#a94442;background-color:#f2dede;border-color:#e8c4c4}@media (max-width:767px){.elementor-alert{padding:10px}.elementor-alert button.elementor-alert-dismiss{right:7px;top:7px}}.elementor-counter .elementor-counter-number-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;font-size:69px;font-weight:600;line-height:1}.elementor-counter .elementor-counter-number-prefix,.elementor-counter .elementor-counter-number-suffix{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;white-space:pre-wrap}.elementor-counter .elementor-counter-number-prefix{text-align:left}.elementor-counter .elementor-counter-number-suffix{text-align:right}.elementor-counter .elementor-counter-title{text-align:center;font-size:19px;font-weight:400;line-height:2.5}.elementor-widget-divider{--divider-border-style:none;--divider-border-width:1px;--divider-color:#2c2c2c;--divider-icon-size:20px;--divider-element-spacing:10px;--divider-pattern-height:24px;--divider-pattern-size:20px;--divider-pattern-url:none;--divider-pattern-repeat:repeat-x}.elementor-widget-divider .elementor-divider{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget-divider .elementor-divider__text{font-size:15px;line-height:1;max-width:95%}.elementor-widget-divider .elementor-divider__element{margin:0 var(--divider-element-spacing);-ms-flex-negative:0;flex-shrink:0}.elementor-widget-divider .elementor-icon{font-size:var(--divider-icon-size)}.elementor-widget-divider .elementor-divider-separator{display:-webkit-box;display:-ms-flexbox;display:flex;margin:0;direction:ltr}.elementor-widget-divider--view-line_icon .elementor-divider-separator,.elementor-widget-divider--view-line_text .elementor-divider-separator{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-widget-divider--view-line_icon .elementor-divider-separator:after,.elementor-widget-divider--view-line_icon .elementor-divider-separator:before,.elementor-widget-divider--view-line_text .elementor-divider-separator:after,.elementor-widget-divider--view-line_text .elementor-divider-separator:before{display:block;content:"";border-bottom:0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;border-top:var(--divider-border-width) var(--divider-border-style) var(--divider-color)}.elementor-widget-divider--element-align-left .elementor-divider .elementor-divider-separator>.elementor-divider__svg:first-of-type{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:100;flex-shrink:100}.elementor-widget-divider--element-align-left .elementor-divider-separator:before{content:none}.elementor-widget-divider--element-align-left .elementor-divider__element{margin-left:0}.elementor-widget-divider--element-align-right .elementor-divider .elementor-divider-separator>.elementor-divider__svg:last-of-type{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:100;flex-shrink:100}.elementor-widget-divider--element-align-right .elementor-divider-separator:after{content:none}.elementor-widget-divider--element-align-right .elementor-divider__element{margin-right:0}.elementor-widget-divider:not(.elementor-widget-divider--view-line_text):not(.elementor-widget-divider--view-line_icon) .elementor-divider-separator{border-top:var(--divider-border-width) var(--divider-border-style) var(--divider-color)}.elementor-widget-divider--separator-type-pattern{--divider-border-style:none}.elementor-widget-divider--separator-type-pattern.elementor-widget-divider--view-line .elementor-divider-separator,.elementor-widget-divider--separator-type-pattern:not(.elementor-widget-divider--view-line) .elementor-divider-separator:after,.elementor-widget-divider--separator-type-pattern:not(.elementor-widget-divider--view-line) .elementor-divider-separator:before,.elementor-widget-divider--separator-type-pattern:not([class*=elementor-widget-divider--view]) .elementor-divider-separator{width:100%;min-height:var(--divider-pattern-height);-webkit-mask-size:var(--divider-pattern-size) 100%;mask-size:var(--divider-pattern-size) 100%;-webkit-mask-repeat:var(--divider-pattern-repeat);mask-repeat:var(--divider-pattern-repeat);background-color:var(--divider-color);-webkit-mask-image:var(--divider-pattern-url);mask-image:var(--divider-pattern-url)}.elementor-widget-divider--no-spacing{--divider-pattern-size:auto}.elementor-widget-divider--bg-round{--divider-pattern-repeat:round}.rtl .elementor-widget-divider .elementor-divider__text{direction:rtl}.elementor-image-gallery .gallery-item{display:inline-block;text-align:center;vertical-align:top;width:100%;max-width:100%;margin:0 auto}.elementor-image-gallery .gallery-item img{margin:0 auto}.elementor-image-gallery .gallery-item .gallery-caption{margin:0}.elementor-image-gallery figure img{display:block}.elementor-image-gallery figure figcaption{width:100%}.gallery-spacing-custom .elementor-image-gallery .gallery-icon{padding:0}@media (min-width:768px){.elementor-image-gallery .gallery-columns-2 .gallery-item{max-width:50%}.elementor-image-gallery .gallery-columns-3 .gallery-item{max-width:33.33%}.elementor-image-gallery .gallery-columns-4 .gallery-item{max-width:25%}.elementor-image-gallery .gallery-columns-5 .gallery-item{max-width:20%}.elementor-image-gallery .gallery-columns-6 .gallery-item{max-width:16.666%}.elementor-image-gallery .gallery-columns-7 .gallery-item{max-width:14.28%}.elementor-image-gallery .gallery-columns-8 .gallery-item{max-width:12.5%}.elementor-image-gallery .gallery-columns-9 .gallery-item{max-width:11.11%}.elementor-image-gallery .gallery-columns-10 .gallery-item{max-width:10%}}@media (min-width:480px) and (max-width:767px){.elementor-image-gallery .gallery.gallery-columns-2 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-3 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-4 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-5 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-6 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-7 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-8 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-9 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-10 .gallery-item{max-width:50%}}@media (max-width:479px){.elementor-image-gallery .gallery.gallery-columns-2 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-3 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-4 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-5 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-6 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-7 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-8 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-9 .gallery-item,.elementor-image-gallery .gallery.gallery-columns-10 .gallery-item{max-width:100%}}.elementor-widget-google_maps .elementor-widget-container{overflow:hidden}.elementor-widget-google_maps iframe{height:300px}.elementor-heading-title{padding:0;margin:0;line-height:1}.elementor-widget-heading .elementor-heading-title[class*=elementor-size-]>a{color:inherit;font-size:inherit;line-height:inherit}.elementor-widget-heading .elementor-heading-title.elementor-size-small{font-size:15px}.elementor-widget-heading .elementor-heading-title.elementor-size-medium{font-size:19px}.elementor-widget-heading .elementor-heading-title.elementor-size-large{font-size:29px}.elementor-widget-heading .elementor-heading-title.elementor-size-xl{font-size:39px}.elementor-widget-heading .elementor-heading-title.elementor-size-xxl{font-size:59px}@media (min-width:768px){.elementor-widget-icon-box.elementor-position-left .elementor-icon-box-wrapper,.elementor-widget-icon-box.elementor-position-right .elementor-icon-box-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget-icon-box.elementor-position-left .elementor-icon-box-icon,.elementor-widget-icon-box.elementor-position-right .elementor-icon-box-icon{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.elementor-widget-icon-box.elementor-position-right .elementor-icon-box-wrapper{text-align:left;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.elementor-widget-icon-box.elementor-position-left .elementor-icon-box-wrapper{text-align:right;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-widget-icon-box.elementor-position-top .elementor-icon-box-img{margin:auto}.elementor-widget-icon-box.elementor-vertical-align-top .elementor-icon-box-wrapper{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.elementor-widget-icon-box.elementor-vertical-align-middle .elementor-icon-box-wrapper{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-widget-icon-box.elementor-vertical-align-bottom .elementor-icon-box-wrapper{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}}@media (max-width:767px){.elementor-widget-icon-box .elementor-icon-box-icon{margin-left:auto!important;margin-right:auto!important;margin-bottom:15px}}.elementor-widget-icon-box .elementor-icon-box-wrapper{text-align:center}.elementor-widget-icon-box .elementor-icon-box-title a{color:inherit}.elementor-widget-icon-box .elementor-icon-box-content{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-widget-icon-box .elementor-icon-box-description{margin:0}.elementor-widget.elementor-icon-list--layout-inline .elementor-widget-container{overflow:hidden}.elementor-widget .elementor-icon-list-items.elementor-inline-items{margin-right:-8px;margin-left:-8px}.elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-right:8px;margin-left:8px}.elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{width:auto;left:auto;right:auto;position:relative;height:100%;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);border-top:0;border-bottom:0;border-right:0;border-left-width:1px;border-style:solid;left:-8px}.elementor-widget .elementor-icon-list-items{list-style-type:none;margin:0;padding:0}.elementor-widget .elementor-icon-list-item{margin:0;padding:0;position:relative}.elementor-widget .elementor-icon-list-item:after{position:absolute;bottom:0;width:100%}.elementor-widget .elementor-icon-list-item,.elementor-widget .elementor-icon-list-item a{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-size:inherit}.elementor-widget .elementor-icon-list-icon+.elementor-icon-list-text{-ms-flex-item-align:center;align-self:center;padding-right:5px}.elementor-widget .elementor-icon-list-icon{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget .elementor-icon-list-icon svg{width:var(--e-icon-list-icon-size,1em);height:var(--e-icon-list-icon-size,1em)}.elementor-widget .elementor-icon-list-icon i{width:1.25em;font-size:var(--e-icon-list-icon-size)}.elementor-widget.elementor-widget-icon-list .elementor-icon-list-icon{text-align:var(--e-icon-list-icon-align)}.elementor-widget.elementor-widget-icon-list .elementor-icon-list-icon svg{margin:var(--e-icon-list-icon-margin,0 calc(var(--e-icon-list-icon-size, 1em) * .25) 0 0)}.elementor-widget.elementor-list-item-link-full_width a{width:100%}.elementor-widget.elementor-align-center .elementor-icon-list-item,.elementor-widget.elementor-align-center .elementor-icon-list-item a{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget.elementor-align-center .elementor-inline-items{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-align-left .elementor-icon-list-item,.elementor-widget.elementor-align-left .elementor-icon-list-item a{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;text-align:left}.elementor-widget.elementor-align-left .elementor-inline-items{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-widget.elementor-align-right .elementor-icon-list-item,.elementor-widget.elementor-align-right .elementor-icon-list-item a{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;text-align:right}.elementor-widget.elementor-align-right .elementor-icon-list-items{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-widget:not(.elementor-align-right) .elementor-icon-list-item:after{right:0}.elementor-widget:not(.elementor-align-left) .elementor-icon-list-item:after{left:0}@media (max-width:1024px){.elementor-widget.elementor-tablet-align-center .elementor-icon-list-item,.elementor-widget.elementor-tablet-align-center .elementor-icon-list-item a,.elementor-widget.elementor-tablet-align-center .elementor-icon-list-items{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-tablet-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget.elementor-tablet-align-left .elementor-icon-list-items{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-widget.elementor-tablet-align-left .elementor-icon-list-item,.elementor-widget.elementor-tablet-align-left .elementor-icon-list-item a{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;text-align:left}.elementor-widget.elementor-tablet-align-right .elementor-icon-list-items{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-widget.elementor-tablet-align-right .elementor-icon-list-item,.elementor-widget.elementor-tablet-align-right .elementor-icon-list-item a{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;text-align:right}.elementor-widget:not(.elementor-tablet-align-right) .elementor-icon-list-item:after{right:0}.elementor-widget:not(.elementor-tablet-align-left) .elementor-icon-list-item:after{left:0}}@media (max-width:767px){.elementor-widget.elementor-mobile-align-center .elementor-icon-list-item,.elementor-widget.elementor-mobile-align-center .elementor-icon-list-item a,.elementor-widget.elementor-mobile-align-center .elementor-icon-list-items{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-widget.elementor-mobile-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget.elementor-mobile-align-left .elementor-icon-list-items{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-widget.elementor-mobile-align-left .elementor-icon-list-item,.elementor-widget.elementor-mobile-align-left .elementor-icon-list-item a{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;text-align:left}.elementor-widget.elementor-mobile-align-right .elementor-icon-list-items{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-widget.elementor-mobile-align-right .elementor-icon-list-item,.elementor-widget.elementor-mobile-align-right .elementor-icon-list-item a{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;text-align:right}.elementor-widget:not(.elementor-mobile-align-right) .elementor-icon-list-item:after{right:0}.elementor-widget:not(.elementor-mobile-align-left) .elementor-icon-list-item:after{left:0}}.elementor-widget-image{text-align:center}.elementor-widget-image a{display:inline-block}.elementor-widget-image a img[src$=".svg"]{width:48px}.elementor-widget-image img{vertical-align:middle;display:inline-block}.elementor-widget-image-box .elementor-image-box-content{width:100%}@media (min-width:768px){.elementor-widget-image-box.elementor-position-left .elementor-image-box-wrapper,.elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper{text-align:left;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.elementor-widget-image-box.elementor-position-left .elementor-image-box-wrapper{text-align:right;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-widget-image-box.elementor-position-top .elementor-image-box-img{margin:auto}.elementor-widget-image-box.elementor-vertical-align-top .elementor-image-box-wrapper{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.elementor-widget-image-box.elementor-vertical-align-middle .elementor-image-box-wrapper{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-widget-image-box.elementor-vertical-align-bottom .elementor-image-box-wrapper{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}}@media (max-width:767px){.elementor-widget-image-box .elementor-image-box-img{margin-left:auto!important;margin-right:auto!important;margin-bottom:15px}}.elementor-widget-image-box .elementor-image-box-img{display:inline-block}.elementor-widget-image-box .elementor-image-box-title a{color:inherit}.elementor-widget-image-box .elementor-image-box-wrapper{text-align:center}.elementor-widget-image-box .elementor-image-box-description{margin:0}.elementor-widget-image-carousel .swiper-container{position:static}.elementor-widget-image-carousel .swiper-container .swiper-slide figure{line-height:inherit}.elementor-widget-image-carousel .swiper-slide{text-align:center}.elementor-image-carousel-wrapper:not(.swiper-container-initialized) .swiper-slide{max-width:calc(100% / var(--e-image-carousel-slides-to-show, 3))}body.elementor-page .elementor-widget-menu-anchor{margin-bottom:0}.elementor-widget-progress{text-align:right}.elementor-progress-wrapper{position:relative;background-color:#eee;color:#fff;height:100%;-webkit-border-radius:2px;border-radius:2px}.elementor-progress-bar{display:-webkit-box;display:-ms-flexbox;display:flex;background-color:#818a91;width:0;font-size:11px;height:30px;line-height:30px;-webkit-border-radius:2px;border-radius:2px;-webkit-transition:width 1s ease-in-out;-o-transition:width 1s ease-in-out;transition:width 1s ease-in-out}.elementor-progress-text{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;padding-right:15px}.elementor-progress-percentage{padding-left:15px}.elementor-widget-progress .elementor-progress-wrapper.progress-info .elementor-progress-bar{background-color:#5bc0de}.elementor-widget-progress .elementor-progress-wrapper.progress-success .elementor-progress-bar{background-color:#5cb85c}.elementor-widget-progress .elementor-progress-wrapper.progress-warning .elementor-progress-bar{background-color:#f0ad4e}.elementor-widget-progress .elementor-progress-wrapper.progress-danger .elementor-progress-bar{background-color:#d9534f}.elementor-progress .elementor-title{display:block}@media (max-width:767px){.elementor-progress-text{padding-right:10px}}.elementor-widget-social-icons.elementor-grid-0 .elementor-widget-container,.elementor-widget-social-icons.elementor-grid-mobile-0 .elementor-widget-container,.elementor-widget-social-icons.elementor-grid-tablet-0 .elementor-widget-container{line-height:1;font-size:0}.elementor-widget-social-icons:not(.elementor-grid-0):not(.elementor-grid-tablet-0):not(.elementor-grid-mobile-0) .elementor-grid{display:inline-grid}.elementor-widget-social-icons .elementor-grid{grid-column-gap:var(--grid-column-gap,5px);grid-row-gap:var(--grid-row-gap,5px);grid-template-columns:var(--grid-template-columns);-webkit-box-pack:var(--justify-content,center);-ms-flex-pack:var(--justify-content,center);justify-content:var(--justify-content,center);justify-items:var(--justify-content,center)}.elementor-icon.elementor-social-icon{font-size:var(--icon-size,25px);line-height:var(--icon-size,25px);width:calc(var(--icon-size, 25px) + (2 * var(--icon-padding, .5em)));height:calc(var(--icon-size, 25px) + (2 * var(--icon-padding, .5em)))}.elementor-social-icon{--e-social-icon-icon-color:#fff;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;background-color:#818a91;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;text-align:center;cursor:pointer}.elementor-social-icon i{color:var(--e-social-icon-icon-color)}.elementor-social-icon svg{fill:var(--e-social-icon-icon-color)}.elementor-social-icon:last-child{margin:0}.elementor-social-icon:hover{opacity:.9;color:#fff}.elementor-social-icon-android{background-color:#a4c639}.elementor-social-icon-apple{background-color:#999}.elementor-social-icon-behance{background-color:#1769ff}.elementor-social-icon-bitbucket{background-color:#205081}.elementor-social-icon-codepen{background-color:#000}.elementor-social-icon-delicious{background-color:#39f}.elementor-social-icon-deviantart{background-color:#05cc47}.elementor-social-icon-digg{background-color:#005be2}.elementor-social-icon-dribbble{background-color:#ea4c89}.elementor-social-icon-elementor{background-color:#d30c5c}.elementor-social-icon-envelope{background-color:#ea4335}.elementor-social-icon-facebook,.elementor-social-icon-facebook-f{background-color:#3b5998}.elementor-social-icon-flickr{background-color:#0063dc}.elementor-social-icon-foursquare{background-color:#2d5be3}.elementor-social-icon-free-code-camp,.elementor-social-icon-freecodecamp{background-color:#006400}.elementor-social-icon-github{background-color:#333}.elementor-social-icon-gitlab{background-color:#e24329}.elementor-social-icon-globe{background-color:#818a91}.elementor-social-icon-google-plus,.elementor-social-icon-google-plus-g{background-color:#dd4b39}.elementor-social-icon-houzz{background-color:#7ac142}.elementor-social-icon-instagram{background-color:#262626}.elementor-social-icon-jsfiddle{background-color:#487aa2}.elementor-social-icon-link{background-color:#818a91}.elementor-social-icon-linkedin,.elementor-social-icon-linkedin-in{background-color:#0077b5}.elementor-social-icon-medium{background-color:#00ab6b}.elementor-social-icon-meetup{background-color:#ec1c40}.elementor-social-icon-mixcloud{background-color:#273a4b}.elementor-social-icon-odnoklassniki{background-color:#f4731c}.elementor-social-icon-pinterest{background-color:#bd081c}.elementor-social-icon-product-hunt{background-color:#da552f}.elementor-social-icon-reddit{background-color:#ff4500}.elementor-social-icon-rss{background-color:#f26522}.elementor-social-icon-shopping-cart{background-color:#4caf50}.elementor-social-icon-skype{background-color:#00aff0}.elementor-social-icon-slideshare{background-color:#0077b5}.elementor-social-icon-snapchat{background-color:#fffc00}.elementor-social-icon-soundcloud{background-color:#f80}.elementor-social-icon-spotify{background-color:#2ebd59}.elementor-social-icon-stack-overflow{background-color:#fe7a15}.elementor-social-icon-steam{background-color:#00adee}.elementor-social-icon-stumbleupon{background-color:#eb4924}.elementor-social-icon-telegram{background-color:#2ca5e0}.elementor-social-icon-thumb-tack{background-color:#1aa1d8}.elementor-social-icon-tripadvisor{background-color:#589442}.elementor-social-icon-tumblr{background-color:#35465c}.elementor-social-icon-twitch{background-color:#6441a5}.elementor-social-icon-twitter{background-color:#1da1f2}.elementor-social-icon-viber{background-color:#665cac}.elementor-social-icon-vimeo{background-color:#1ab7ea}.elementor-social-icon-vk{background-color:#45668e}.elementor-social-icon-weibo{background-color:#dd2430}.elementor-social-icon-weixin{background-color:#31a918}.elementor-social-icon-whatsapp{background-color:#25d366}.elementor-social-icon-wordpress{background-color:#21759b}.elementor-social-icon-xing{background-color:#026466}.elementor-social-icon-yelp{background-color:#af0606}.elementor-social-icon-youtube{background-color:#cd201f}.elementor-social-icon-500px{background-color:#0099e5}.elementor-shape-rounded .elementor-icon.elementor-social-icon{-webkit-border-radius:10%;border-radius:10%}.elementor-shape-circle .elementor-icon.elementor-social-icon{-webkit-border-radius:50%;border-radius:50%}.elementor-star-rating{color:#ccd6df;font-family:eicons;display:inline-block}.elementor-star-rating i{display:inline-block;position:relative;font-style:normal;cursor:default}.elementor-star-rating i:before{content:"\e934";display:block;font-size:inherit;font-family:inherit;position:absolute;overflow:hidden;color:#f0ad4e;top:0;right:0}.elementor-star-rating .elementor-star-empty:before{content:none}.elementor-star-rating .elementor-star-1:before{width:10%}.elementor-star-rating .elementor-star-2:before{width:20%}.elementor-star-rating .elementor-star-3:before{width:30%}.elementor-star-rating .elementor-star-4:before{width:40%}.elementor-star-rating .elementor-star-5:before{width:50%}.elementor-star-rating .elementor-star-6:before{width:60%}.elementor-star-rating .elementor-star-7:before{width:70%}.elementor-star-rating .elementor-star-8:before{width:80%}.elementor-star-rating .elementor-star-9:before{width:90%}.elementor-star-rating__wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-star-rating__title{margin-left:10px}.elementor-star-rating--align-right .elementor-star-rating__wrapper{text-align:right;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-star-rating--align-left .elementor-star-rating__wrapper{text-align:left;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-star-rating--align-center .elementor-star-rating__wrapper{text-align:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-star-rating--align-justify .elementor-star-rating__title{margin-left:auto}@media (max-width:1024px){.elementor-star-rating-tablet--align-right .elementor-star-rating__wrapper{text-align:right;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-star-rating-tablet--align-left .elementor-star-rating__wrapper{text-align:left;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-star-rating-tablet--align-center .elementor-star-rating__wrapper{text-align:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-star-rating-tablet--align-justify .elementor-star-rating__title{margin-left:auto}}@media (max-width:767px){.elementor-star-rating-mobile--align-right .elementor-star-rating__wrapper{text-align:right;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-star-rating-mobile--align-left .elementor-star-rating__wrapper{text-align:left;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-star-rating-mobile--align-center .elementor-star-rating__wrapper{text-align:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-star-rating-mobile--align-justify .elementor-star-rating__title{margin-left:auto}}.last-star{letter-spacing:0}.elementor--star-style-star_unicode .elementor-star-rating{font-family:Arial,Helvetica,sans-serif}.elementor--star-style-star_unicode .elementor-star-rating i:not(.elementor-star-empty):before{content:"\002605"}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-wrapper{width:25%;-ms-flex-negative:0;flex-shrink:0}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active{border-left-style:none}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:after,.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:before{height:999em;width:0;left:0;border-left-style:solid}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:before{top:0;-webkit-transform:translateY(-100%);-ms-transform:translateY(-100%);transform:translateY(-100%)}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tab-desktop-title.elementor-active:after{top:100%}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title{display:table-cell}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active{border-bottom-style:none}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:after,.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:before{bottom:0;height:0;width:999em;border-bottom-style:solid}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:before{right:100%}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-desktop-title.elementor-active:after{left:100%}.elementor-widget-tabs .elementor-tab-content,.elementor-widget-tabs .elementor-tab-title,.elementor-widget-tabs .elementor-tab-title:after,.elementor-widget-tabs .elementor-tab-title:before,.elementor-widget-tabs .elementor-tabs-content-wrapper{border:1px #d4d4d4}.elementor-widget-tabs .elementor-tabs{text-align:right}.elementor-widget-tabs .elementor-tabs-wrapper{overflow:hidden}.elementor-widget-tabs .elementor-tab-title{cursor:pointer;outline:var(--focus-outline,none)}.elementor-widget-tabs .elementor-tab-desktop-title{position:relative;padding:20px 25px;font-weight:700;line-height:1;border:solid transparent}.elementor-widget-tabs .elementor-tab-desktop-title.elementor-active{border-color:#d4d4d4}.elementor-widget-tabs .elementor-tab-desktop-title.elementor-active:after,.elementor-widget-tabs .elementor-tab-desktop-title.elementor-active:before{display:block;content:"";position:absolute}.elementor-widget-tabs .elementor-tab-mobile-title{padding:10px;cursor:pointer}.elementor-widget-tabs .elementor-tab-content{padding:20px;display:none}@media (max-width:767px){.elementor-tabs .elementor-tab-content,.elementor-tabs .elementor-tab-title{border-style:solid solid none}.elementor-tabs .elementor-tabs-wrapper{display:none}.elementor-tabs .elementor-tabs-content-wrapper{border-bottom-style:solid}.elementor-tabs .elementor-tab-content{padding:10px}}@media (min-width:768px){.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-wrapper{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-content-wrapper{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;border-style:solid none solid solid}.elementor-widget-tabs.elementor-tabs-view-horizontal .elementor-tab-content{border-style:none solid solid}.elementor-widget-tabs.elementor-tabs-alignment-center .elementor-tabs-wrapper,.elementor-widget-tabs.elementor-tabs-alignment-end .elementor-tabs-wrapper,.elementor-widget-tabs.elementor-tabs-alignment-stretch .elementor-tabs-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget-tabs.elementor-tabs-alignment-center .elementor-tabs-wrapper{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-widget-tabs.elementor-tabs-alignment-end .elementor-tabs-wrapper{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-widget-tabs.elementor-tabs-alignment-stretch.elementor-tabs-view-horizontal .elementor-tab-title{width:100%}.elementor-widget-tabs.elementor-tabs-alignment-stretch.elementor-tabs-view-vertical .elementor-tab-title{height:100%}.elementor-tabs .elementor-tab-mobile-title{display:none}}.elementor-testimonial-wrapper{overflow:hidden;text-align:center}.elementor-testimonial-wrapper .elementor-testimonial-content{font-size:1.3em;margin-bottom:20px}.elementor-testimonial-wrapper .elementor-testimonial-name{line-height:1.5;display:block}.elementor-testimonial-wrapper .elementor-testimonial-job{font-size:.85em;display:block}.elementor-testimonial-wrapper .elementor-testimonial-meta{width:100%;line-height:1}.elementor-testimonial-wrapper .elementor-testimonial-meta-inner{display:inline-block}.elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-details,.elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-image{display:table-cell;vertical-align:middle}.elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-image img{width:60px;height:60px;-webkit-border-radius:50%;border-radius:50%;-o-object-fit:cover;object-fit:cover;max-width:none}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-aside .elementor-testimonial-image{padding-left:15px}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-aside .elementor-testimonial-details{text-align:right}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-details,.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-image{display:block}.elementor-testimonial-wrapper .elementor-testimonial-meta.elementor-testimonial-image-position-top .elementor-testimonial-image{margin-bottom:20px}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:#818a91;color:#fff}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap{color:#818a91;border:3px solid;background-color:transparent}.elementor-widget-text-editor:not(.elementor-drop-cap-view-default) .elementor-drop-cap{margin-top:8px}.elementor-widget-text-editor:not(.elementor-drop-cap-view-default) .elementor-drop-cap-letter{width:1em;height:1em}.elementor-widget-text-editor .elementor-drop-cap{float:right;text-align:center;line-height:1;font-size:50px}.elementor-widget-text-editor .elementor-drop-cap-letter{display:inline-block}.elementor-toggle{text-align:right}.elementor-toggle .elementor-tab-title{font-weight:700;line-height:1;margin:0;padding:15px;border-bottom:1px solid #d4d4d4;cursor:pointer;outline:none}.elementor-toggle .elementor-tab-title .elementor-toggle-icon{display:inline-block;width:1em}.elementor-toggle .elementor-tab-title .elementor-toggle-icon svg{-webkit-margin-start:-5px;margin-inline-start:-5px;width:1em;height:1em}.elementor-toggle .elementor-tab-title .elementor-toggle-icon.elementor-toggle-icon-right{float:right;text-align:right}.elementor-toggle .elementor-tab-title .elementor-toggle-icon.elementor-toggle-icon-left{float:left;text-align:left}.elementor-toggle .elementor-tab-title .elementor-toggle-icon .elementor-toggle-icon-closed{display:block}.elementor-toggle .elementor-tab-title .elementor-toggle-icon .elementor-toggle-icon-opened{display:none}.elementor-toggle .elementor-tab-title.elementor-active{border-bottom:none}.elementor-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon-closed{display:none}.elementor-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon-opened{display:block}.elementor-toggle .elementor-tab-content{padding:15px;border-bottom:1px solid #d4d4d4;display:none}@media (max-width:767px){.elementor-toggle .elementor-tab-title{padding:12px}.elementor-toggle .elementor-tab-content{padding:12px 10px}}.elementor-widget-video .elementor-widget-container{overflow:hidden;-webkit-transform:translateZ(0);transform:translateZ(0)}.elementor-widget-video .elementor-open-inline .elementor-custom-embed-image-overlay{position:absolute;top:0;left:0;width:100%;height:100%;-webkit-background-size:cover;background-size:cover;background-position:50%}.elementor-widget-video .elementor-custom-embed-image-overlay{cursor:pointer;text-align:center}.elementor-widget-video .elementor-custom-embed-image-overlay:hover .elementor-custom-embed-play i{opacity:1}.elementor-widget-video .elementor-custom-embed-image-overlay img{display:block;width:100%}.elementor-widget-video .e-hosted-video .elementor-video{-o-object-fit:cover;object-fit:cover}assets/css/widget-image-carousel-rtl.min.css000064400000000633151327220410015106 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-widget-image-carousel .swiper-container{position:static}.elementor-widget-image-carousel .swiper-container .swiper-slide figure{line-height:inherit}.elementor-widget-image-carousel .swiper-slide{text-align:center}.elementor-image-carousel-wrapper:not(.swiper-container-initialized) .swiper-slide{max-width:calc(100% / var(--e-image-carousel-slides-to-show, 3))}assets/css/editor-dark-mode.css000064400000076575151327220410012520 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
body {
  color: #E0E1E3; }
  body .pcr-app {
    background-color: #4C4F56;
    -webkit-box-shadow: 0 0.15em 1.5em 0 rgba(0, 0, 0, 0.5), 0 0 1em 0 rgba(0, 0, 0, 0.05);
            box-shadow: 0 0.15em 1.5em 0 rgba(0, 0, 0, 0.5), 0 0 1em 0 rgba(0, 0, 0, 0.05); }
    body .pcr-app .pcr-swatches > button:after {
      -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
              box-shadow: 0 0 3px rgba(0, 0, 0, 0.3); }
    body .pcr-app .pcr-clear {
      color: #E0E1E3;
      background-color: #64666A; }
    body .pcr-app .pcr-interaction .pcr-result {
      color: #E0E1E3;
      border-color: #64666A; }
      body .pcr-app .pcr-interaction .pcr-result:focus {
        border-color: #7D7E82; }
  body .pcr-swatch.pcr-active:after {
    -webkit-box-shadow: 0 0 0 1px #71d7f7, inset 0 0 0 1px #4C4F56;
            box-shadow: 0 0 0 1px #71d7f7, inset 0 0 0 1px #4C4F56; }
  body .pcr-swatch.pcr-active ~ .elementor-color-picker__add-swatch {
    background-color: #64666A; }
    body .pcr-swatch.pcr-active ~ .elementor-color-picker__add-swatch i {
      color: #E0E1E3; }

.pickr {
  background-color: #34383C;
  border-color: #64666A; }

.e-control-color--no-value .pcr-button {
  border-color: #64666A; }

.e-global__popover-toggle {
  border-color: #64666A;
  background-color: #34383C; }

.e-global__popover-container {
  background-color: #4C4F56;
  color: #E0E1E3; }

.e-global__popover-title {
  border-bottom-color: #404349; }

.e-global__color-title, .e-global__manage-button, .e-global__popover-title {
  color: #E0E1E3; }

.e-global__manage-button {
  border-top-color: #404349; }

.e-global__preview-item:hover {
  background-color: #404349; }

.elementor-control-type-global-style-repeater .elementor-button-wrapper {
  border-top-color: #34383C; }

.e-control-tool {
  background-color: #34383C;
  border-color: #E0E1E3; }
  .e-control-tool i {
    color: #E0E1E3; }

#elementor-loading {
  background-color: #34383C; }

.elementor-loader {
  background-color: #4C4F56; }

.elementor-safe-mode-toast {
  background-color: #4C4F56; }
  .elementor-safe-mode-toast header h2,
  .elementor-safe-mode-toast .elementor-toast-content {
    color: #E0E1E3; }

.elementor-units-choices input.e-units-placeholder + label {
  color: #B4B5B7; }

input, select, textarea, .elementor-input-style {
  color: #E0E1E3;
  background-color: #34383C; }
  input:not(:focus), select:not(:focus), textarea:not(:focus), .elementor-input-style:not(:focus) {
    border-color: #64666A; }
  input:focus, select:focus, textarea:focus, .elementor-input-style:focus {
    border-color: #7D7E82; }
  input[disabled], select[disabled], textarea[disabled], .elementor-input-style[disabled] {
    background-color: #4C4F56; }
  input::-webkit-input-placeholder, select::-webkit-input-placeholder, textarea::-webkit-input-placeholder, .elementor-input-style::-webkit-input-placeholder {
    color: #64666A; }
  input::-moz-placeholder, select::-moz-placeholder, textarea::-moz-placeholder, .elementor-input-style::-moz-placeholder {
    color: #64666A; }
  input::-ms-input-placeholder, select::-ms-input-placeholder, textarea::-ms-input-placeholder, .elementor-input-style::-ms-input-placeholder {
    color: #64666A; }
  input::placeholder, select::placeholder, textarea::placeholder, .elementor-input-style::placeholder {
    color: #64666A; }

select {
  background-color: #34383C; }

.elementor-button.elementor-button-default {
  background-color: #64666A; }
  .elementor-button.elementor-button-default:hover {
    background-color: #4C4F56; }

.elementor-button.elementor-button-success[disabled] {
  background-color: #64666A; }

.elementor-button.elementor-button-danger {
  background-color: #F84343; }

#elementor-mode-switcher {
  background-color: #34383C; }
  #elementor-mode-switcher:hover {
    background-color: #71D7F7; }

.elementor-control-dynamic-switcher {
  background-color: #34383C;
  border-color: #64666A;
  color: #E0E1E3; }

.elementor-tags-list {
  background-color: #4C4F56;
  border-color: #64666A; }
  .elementor-tags-list__group-title {
    color: #B4B5B7; }
  .elementor-tags-list__item:hover {
    background-color: #404349; }

.elementor-tag-settings-popup {
  background-color: #34383C;
  -webkit-box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.8);
          box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.8); }
  .elementor-tag-settings-popup:before {
    border-bottom-color: #404349; }

.elementor-panel {
  background-color: #34383C; }
  .elementor-panel a {
    color: #71D7F7; }
  .elementor-panel #elementor-panel-header {
    background-color: #26292C; }
  .elementor-panel .elementor-panel-navigation {
    background-color: #404349; }
    .elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab.elementor-active {
      background-image: -webkit-gradient(linear, left top, left bottom, from(#34383C), to(#4C4F56));
      background-image: -webkit-linear-gradient(top, #34383C, #4C4F56);
      background-image: -o-linear-gradient(top, #34383C, #4C4F56);
      background-image: linear-gradient(to bottom, #34383C, #4C4F56);
      border-bottom-color: #71D7F7; }
    .elementor-panel .elementor-panel-navigation .elementor-panel-navigation-tab a {
      color: #E0E1E3; }
  .elementor-panel #elementor-panel-elements-search-area {
    background-color: #34383C; }
  .elementor-panel #elementor-panel-elements-search-input {
    background-color: #4C4F56;
    color: #E0E1E3; }
    .elementor-panel #elementor-panel-elements-search-input:focus {
      background-color: #404349;
      color: #E0E1E3; }
      .elementor-panel #elementor-panel-elements-search-input:focus + i {
        color: #E0E1E3; }
  .elementor-panel .elementor-element {
    background-color: #404349; }
    .elementor-panel .elementor-element .title,
    .elementor-panel .elementor-element .icon {
      color: #E0E1E3; }
    .elementor-panel .elementor-element:hover .title,
    .elementor-panel .elementor-element:hover .icon {
      color: #71D7F7; }
    .elementor-panel .elementor-element > .eicon-lock {
      color: #64666A; }
  .elementor-panel .widget-inside {
    background-color: inherit; }
  .elementor-panel #elementor-panel-footer {
    background-color: #26292C; }
  .elementor-panel .elementor-panel-footer-sub-menu-wrapper {
    background-color: #34383C;
    border-top: 1px solid #4C4F56; }
  .elementor-panel .elementor-panel-footer-sub-menu-item {
    background-color: #404349; }
    .elementor-panel .elementor-panel-footer-sub-menu-item:hover, .elementor-panel .elementor-panel-footer-sub-menu-item.active {
      background-color: #4C4F56; }
  .elementor-panel #elementor-panel-footer-saver-options {
    border-color: #26292C; }
  .elementor-panel .elementor-controls-popover {
    background-color: #4C4F56;
    -webkit-box-shadow: 0 2px 15px rgba(0, 0, 0, 0.5);
            box-shadow: 0 2px 15px rgba(0, 0, 0, 0.5); }
    .elementor-panel .elementor-controls-popover:before {
      border-bottom-color: #4C4F56; }
    .elementor-panel .elementor-controls-popover .elementor-control-responsive-switchers__holder {
      background-color: #4C4F56; }
  .elementor-panel .elementor-panel-alert {
    background-color: #4C4F56; }
    .elementor-panel .elementor-panel-alert.elementor-panel-alert-info {
      background-color: #4C4F56; }
  .elementor-panel #elementor-panel__editor__help__link {
    color: #B4B5B7; }
    .elementor-panel #elementor-panel__editor__help__link:hover {
      color: #E0E1E3; }
  .elementor-panel #elementor-panel-global-widget > * {
    background-color: #404349; }
  .elementor-panel #elementor-global-widget-locked-unlink {
    border-top-color: #34383C; }
  .elementor-panel .elementor-panel-scheme-color-system-items {
    background-color: #34383C;
    border-color: #64666A; }
  .elementor-panel .elementor-panel-menu-item {
    background-color: #404349; }
    .elementor-panel .elementor-panel-menu-item:hover {
      background-color: #4C4F56; }
    .elementor-panel .elementor-panel-menu-item a {
      color: #E0E1E3; }
    .elementor-panel .elementor-panel-menu-item-icon {
      color: #B4B5B7; }

.elementor-control {
  background-color: #404349; }
  .elementor-control.elementor-control-separator-before:before, .elementor-control.elementor-control-separator-after:after {
    background-color: #34383C; }
  .elementor-control.elementor-control-type-divider .elementor-control-content {
    background-color: #404349;
    border-color: #34383C; }
  .elementor-control.elementor-control-type-select .elementor-control-input-wrapper select.e-select-placeholder {
    color: #64666A; }

.elementor-control-responsive-switchers__holder {
  background-color: #404349; }

.elementor-control-responsive-switchers.elementor-responsive-switchers-open .elementor-control-responsive-switchers__holder {
  -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.5);
          box-shadow: 0 0 3px rgba(0, 0, 0, 0.5); }

a.elementor-responsive-switcher {
  color: #E0E1E3; }
  a.elementor-responsive-switcher:hover {
    color: #71D7F7; }

.elementor-device-widescreen .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-widescreen {
  color: #71D7F7; }

.elementor-device-desktop .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-desktop {
  color: #71D7F7; }

.elementor-device-laptop .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-laptop {
  color: #71D7F7; }

.elementor-device-tablet_extra .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-tablet_extra {
  color: #71D7F7; }

.elementor-device-tablet .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-tablet {
  color: #71D7F7; }

.elementor-device-mobile_extra .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-mobile_extra {
  color: #71D7F7; }

.elementor-device-mobile .elementor-responsive-switchers-open:not(:hover) .elementor-responsive-switcher.elementor-responsive-switcher-mobile {
  color: #71D7F7; }

.elementor-control-type-popover_toggle .elementor-control-popover-toggle-toggle-label {
  background-color: #34383C;
  border-color: #64666A; }

.elementor-control-type-popover_toggle .elementor-control-responsive-switchers__holder {
  background-color: #4C4F56; }

.elementor-control-media-upload-button {
  background-color: #34383C; }

.elementor-control-media__remove {
  background-color: #64666A;
  color: #B4B5B7; }

.elementor-control-media .elementor-control-input-wrapper {
  border-color: #64666A; }

.elementor-control-media .eicon-plus-circle {
  color: #E0E1E3; }

.elementor-control-media .elementor-control-media__tool {
  background-color: #7D7E82; }

.elementor-control-media__file, .elementor-control-media__file__controls {
  border-color: #64666A; }

.elementor-control-media-area, .pcr-app[data-theme=monolith] .pcr-color-palette, .pcr-button {
  background-image: -webkit-linear-gradient(45deg, #34383C 25%, transparent 0, transparent 75%, #34383C 0, #34383C), -webkit-linear-gradient(45deg, #34383C 25%, transparent 0, transparent 75%, #34383C 0, #34383C);
  background-image: -o-linear-gradient(45deg, #34383C 25%, transparent 0, transparent 75%, #34383C 0, #34383C), -o-linear-gradient(45deg, #34383C 25%, transparent 0, transparent 75%, #34383C 0, #34383C);
  background-image: linear-gradient(45deg, #34383C 25%, transparent 0, transparent 75%, #34383C 0, #34383C), linear-gradient(45deg, #34383C 25%, transparent 0, transparent 75%, #34383C 0, #34383C);
  -webkit-background-size: 12px 12px;
          background-size: 12px 12px;
  background-position: 0 0, 6px 6px;
  background-color: #64666A; }

.elementor-control-type-icons .elementor-control-media__preview i {
  color: #B4B5B7; }

.elementor-control-type-media .elementor-control-media__preview {
  background-color: #34383C; }

.elementor-control-type-gallery .elementor-control-gallery-clear:hover {
  color: #F84343; }

.elementor-control-type-gallery .elementor-control-gallery-add {
  background-color: #34383C; }
  .elementor-control-type-gallery .elementor-control-gallery-add:hover {
    background-color: #4C4F56; }

.elementor-control-type-gallery .elementor-control-gallery-status,
.elementor-control-type-gallery .elementor-control-media__content {
  border-color: #64666A; }

.elementor-control-type-gallery.elementor-control-dynamic .elementor-control-gallery-clear {
  border-color: #64666A; }

.elementor-control-type-gallery .elementor-control-dynamic-switcher {
  border-bottom: 1px solid #64666A;
  border-left: 1px solid #64666A;
  -webkit-border-radius: 0 3px 0 0;
          border-radius: 0 3px 0 0; }

body.rtl .elementor-control-type-gallery .elementor-control-dynamic-switcher {
  border-right: 1px solid #64666A;
  border-left: none; }

.elementor-control-type-url .elementor-control-url-more {
  background-color: #34383C;
  border-color: #64666A; }

.elementor-control-type-url .elementor-control-url-option-input {
  border-color: #64666A; }
  .elementor-control-type-url .elementor-control-url-option-input:checked {
    background-color: #64666A; }

.elementor-control-type-url .elementor-input:focus ~ div {
  border-color: #7D7E82; }

.elementor-control-type-wysiwyg .wp-editor-container {
  border-color: #64666A; }

.elementor-control-type-wysiwyg .mce-menubtn button,
.elementor-control-type-wysiwyg .mce-ico,
.elementor-control-type-wysiwyg .wp-switch-editor {
  color: #E0E1E3; }

.elementor-control-type-wysiwyg .wp-editor-tabs {
  border-color: #7D7E82; }

.elementor-control-type-wysiwyg .switch-html {
  border-color: #7D7E82; }

.elementor-control-type-wysiwyg #insert-media-button,
.elementor-control-type-wysiwyg .html-active .switch-html,
.elementor-control-type-wysiwyg .mce-toolbar-grp,
.elementor-control-type-wysiwyg .quicktags-toolbar,
.elementor-control-type-wysiwyg .tmce-active .switch-tmce {
  background-color: #64666A; }

.elementor-control-type-wysiwyg #insert-media-button {
  color: #E0E1E3;
  border-color: #7D7E82; }

.elementor-control-type-wysiwyg .mce-toolbar .mce-btn-group .mce-btn.mce-active,
.elementor-control-type-wysiwyg .mce-toolbar .mce-btn-group .mce-btn:active,
.elementor-control-type-wysiwyg .qt-dfw.active,
.elementor-control-type-wysiwyg .mce-toolbar .mce-btn-group .mce-btn:hover,
.elementor-control-type-wysiwyg .mce-toolbar .mce-btn-group .mce-btn:focus,
.elementor-control-type-wysiwyg .qt-dfw:hover,
.elementor-control-type-wysiwyg .qt-dfw:focus {
  background-color: #404349;
  -webkit-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.08), 0 1px 0 rgba(0, 0, 0, 0.08);
          box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.08), 0 1px 0 rgba(0, 0, 0, 0.08); }

.elementor-control-type-wysiwyg .mce-toolbar .mce-btn-group .mce-btn.mce-listbox {
  background-color: #404349;
  border-color: #7D7E82;
  -webkit-border-radius: 3px;
          border-radius: 3px; }

.elementor-control-type-wysiwyg .quicktags-toolbar {
  border-color: #7D7E82; }

.elementor-control-type-wysiwyg .wp-core-ui .button,
.elementor-control-type-wysiwyg .wp-core-ui .button-secondary {
  background-color: #4C4F56;
  color: #E0E1E3;
  border-color: #7D7E82; }
  .elementor-control-type-wysiwyg .wp-core-ui .button:hover,
  .elementor-control-type-wysiwyg .wp-core-ui .button-secondary:hover {
    background-color: #404349;
    border-color: #7D7E82; }

.elementor-choices .elementor-choices-label, .elementor-choices .elementor-choices-label:last-child {
  background-color: #34383C;
  border-color: #64666A; }

.elementor-choices input.e-choose-placeholder + .elementor-choices-label {
  background-color: #64666A;
  border-color: #64666A; }

.elementor-choices input:checked + .elementor-choices-label {
  background-color: #7D7E82;
  border-color: #7D7E82; }

.elementor-control-type-repeater .elementor-repeater-row-tools {
  background-color: #64666A;
  color: #E0E1E3; }
  .elementor-control-type-repeater .elementor-repeater-row-tools:hover {
    background-color: #7D7E82; }
  .elementor-control-type-repeater .elementor-repeater-row-tools > div:not(.elementor-repeater-row-handle-sortable) {
    background-color: #404349; }
    .elementor-control-type-repeater .elementor-repeater-row-tools > div:not(.elementor-repeater-row-handle-sortable):hover {
      background-color: #464950; }

.elementor-control-type-repeater .elementor-repeater-row--form-step .elementor-repeater-row-tools:hover {
  background-color: #7D7E82; }

.elementor-control-type-repeater .elementor-repeater-row--form-step .elementor-repeater-row-tools div:not(.elementor-repeater-row-handle-sortable) {
  background-color: #4C4F56; }
  .elementor-control-type-repeater .elementor-repeater-row--form-step .elementor-repeater-row-tools div:not(.elementor-repeater-row-handle-sortable):hover {
    background-color: #64666A; }

.elementor-control-type-repeater .elementor-repeater-row-controls {
  border-color: #64666A; }

.elementor-control-type-tab {
  background-color: #34383C;
  border-color: #64666A; }
  .elementor-control-type-tab:first-child {
    border-color: #64666A; }
  .elementor-control-type-tab.elementor-tab-active {
    background-color: #7D7E82;
    border-color: #7D7E82; }

.elementor-control-type-slider--handles-range .elementor-slider .noUi-handle:after {
  background-color: #E0E1E3; }

.elementor-slider {
  background-color: #64666A; }
  .elementor-slider .noUi-handle {
    background-color: #E0E1E3; }

.elementor-control-type-dimensions li input,
.elementor-control-type-dimensions li .elementor-link-dimensions {
  border-color: #64666A; }

.elementor-control-type-dimensions li input:focus {
  border-color: #7D7E82; }

.elementor-control-type-dimensions li:first-child input {
  border-color: #64666A; }
  .elementor-control-type-dimensions li:first-child input:focus {
    border-color: #7D7E82; }

.elementor-control-type-dimensions .elementor-link-dimensions.unlinked {
  background-color: #34383C;
  color: #E0E1E3; }

.elementor-control-type-dimensions .elementor-link-dimensions:not(.unlinked) {
  background-color: #7D7E82;
  border-color: #7D7E82; }

.elementor-control-type-switcher .elementor-switch-label {
  background-color: #34383C; }
  .elementor-control-type-switcher .elementor-switch-label:before {
    text-shadow: 0 1px rgba(0, 0, 0, 0.8); }

.elementor-control-type-switcher .elementor-switch-input:checked ~ .elementor-switch-label {
  background-color: #71D7F7; }

.elementor-control-type-switcher .elementor-switch-handle {
  background-color: #E0E1E3; }

.elementor-control-type-structure .elementor-control-structure-preset path {
  fill: #34383C; }

.elementor-control-type-structure .elementor-control-structure-presets input:checked + .elementor-control-structure-preset path {
  fill: #64666A; }

.elementor-control-type-structure .elementor-control-structure-reset {
  border-top-color: #34383C; }

.elementor-panel-heading {
  border-bottom-color: #34383C; }
  .elementor-panel-heading-toggle, .elementor-panel-heading-title {
    color: #E0E1E3; }

.select2-container .e-select2-placeholder {
  color: #64666A; }

.select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--single,
.select2-container:not(.select2-container--open):not(.select2-container--focus) .select2-selection--multiple {
  background-color: #34383C;
  color: #E0E1E3;
  border-color: #64666A; }

.select2-container:not(.select2-container--all-selected) .select2-selection--multiple .select2-search--inline::before {
  background-color: #4C4F56;
  color: #B4B5B7; }

.select2-container.select2-container--open .select2-selection--single,
.select2-container.select2-container--open .select2-selection--multiple, .select2-container.select2-container--focus .select2-selection--single,
.select2-container.select2-container--focus .select2-selection--multiple {
  border-color: #7D7E82; }

.select2-container.select2-container--default .select2-selection--single .select2-selection__rendered {
  color: #E0E1E3; }

.select2-container.select2-container--default .select2-selection--single {
  background-color: #34383C;
  border-color: #4C4F56; }

.select2-container.select2-container--default .select2-selection--multiple {
  background-color: #34383C; }
  .select2-container.select2-container--default .select2-selection--multiple .select2-selection__choice {
    background-color: #4C4F56;
    border-color: #4C4F56; }
    .select2-container.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
      color: #B4B5B7; }

.select2-container.select2-container--default .select2-results__option--highlighted[aria-selected] {
  background-color: #4C4F56;
  color: #E0E1E3; }

.select2-container .select2-results__option[aria-selected=true] {
  color: #FFF; }

.select2-container .select2-dropdown {
  background-color: #34383C;
  border-color: #7D7E82; }

#elementor-element--promotion__dialog {
  background-color: #404349;
  -webkit-box-shadow: 0 2px 15px rgba(0, 0, 0, 0.5);
          box-shadow: 0 2px 15px rgba(0, 0, 0, 0.5); }
  #elementor-element--promotion__dialog:after {
    border-right-color: #404349; }
  #elementor-element--promotion__dialog .dialog-header {
    color: #E0E1E3;
    border-bottom-color: #64666A; }
    #elementor-element--promotion__dialog .dialog-header .eicon-pro-icon {
      color: #B4B5B7; }
    #elementor-element--promotion__dialog .dialog-header .eicon-close {
      color: #B4B5B7; }

body.rtl #elementor-element--promotion__dialog:after {
  border-left-color: #475158; }

.dialog-type-lightbox {
  background-color: rgba(0, 0, 0, 0.65); }
  .dialog-type-lightbox .dialog-header {
    color: #E0E1E3; }
  .dialog-type-lightbox .dialog-widget-content {
    background-color: #34383C; }
  .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button {
    color: #E0E1E3; }
    .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button.dialog-ok {
      color: #F84343; }
    .dialog-type-lightbox .dialog-buttons-wrapper > .dialog-button:hover {
      background-color: #4C4F56; }
  .dialog-type-lightbox .dialog-buttons-wrapper,
  .dialog-type-lightbox .dialog-button:first-child {
    border-color: #4C4F56; }
  .dialog-type-lightbox .elementor-publish__tab__title {
    color: #E0E1E3; }
  .dialog-type-lightbox .elementor-publish__tab.elementor-active {
    background-color: #404349; }
  .dialog-type-lightbox .elementor-popup__display-settings_controls_group {
    background-color: #404349; }
    .dialog-type-lightbox .elementor-popup__display-settings_controls_group__icon {
      border-color: #34383C; }

.elementor-templates-modal .dialog-header {
  background-color: #26292C;
  color: #E0E1E3;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.3);
          box-shadow: 0 0 8px rgba(0, 0, 0, 0.3); }

.elementor-templates-modal__header__close--normal {
  border-color: #7D7E82; }

.elementor-templates-modal__sidebar {
  background-color: transparent; }

.elementor-templates-modal__content {
  -webkit-box-shadow: 0 0 13px inset rgba(0, 0, 0, 0.08);
          box-shadow: 0 0 13px inset rgba(0, 0, 0, 0.08); }

.elementor-templates-modal .dialog-buttons-wrapper {
  background-color: #34383C; }

#elementor-template-library-header-menu {
  color: #E0E1E3; }

.elementor-template-library-menu-item.elementor-active {
  background-image: -webkit-gradient(linear, left top, left bottom, from(#26292C), to(#34383C));
  background-image: -webkit-linear-gradient(top, #26292C, #34383C);
  background-image: -o-linear-gradient(top, #26292C, #34383C);
  background-image: linear-gradient(to bottom, #26292C, #34383C);
  border-color: #71D7F7; }

#elementor-template-library-filter {
  border-color: #34383C; }
  #elementor-template-library-filter-text {
    background-color: transparent; }
    #elementor-template-library-filter-text:focus + i {
      color: #E0E1E3; }

label.elementor-template-library-order-label:hover,
#elementor-template-library-filter-my-favorites:hover {
  color: #B4B5B7; }

#elementor-template-library-templates[data-template-source="remote"] .elementor-template-library-order-input:checked + .elementor-template-library-order-label {
  color: #7D7E82; }

#elementor-template-library-filter-my-favorites:checked + #elementor-template-library-filter-my-favorites-label {
  color: #7D7E82; }

#elementor-template-library-header-preview-back {
  border-color: #4C4F56; }

.elementor-template-library-template-remote {
  background-color: #404349; }
  .elementor-template-library-template-remote .elementor-template-library-template-name {
    color: #E0E1E3; }
  .elementor-template-library-template-remote:not(.elementor-template-library-template-page) .elementor-template-library-template-footer {
    background-color: #404349; }

.elementor-template-library-template-local {
  background-color: #4C4F56; }
  .elementor-template-library-template-local:hover {
    background-color: #64666A; }
  .elementor-template-library-template-local .elementor-template-library-template-controls > div:not(:hover),
  .elementor-template-library-template-local .elementor-template-library-template-controls > div a {
    color: #B4B5B7; }
  .elementor-template-library-template-local .elementor-template-library-template-more {
    background-color: #4C4F56; }
    .elementor-template-library-template-local .elementor-template-library-template-more:before {
      border-bottom-color: #4C4F56; }
    .elementor-template-library-template-local .elementor-template-library-template-more:hover,
    .elementor-template-library-template-local .elementor-template-library-template-more a:hover {
      color: #E0E1E3; }
    .elementor-template-library-template-local .elementor-template-library-template-more .elementor-template-library-template-delete:hover {
      color: #F84343; }

#elementor-template-library-save-template-name {
  background-color: #26292C; }

#elementor-template-library-import-form {
  background-color: transparent; }
  #elementor-template-library-import-form:hover {
    background-color: rgba(0, 0, 0, 0.3); }

#elementor-publish #elementor-theme-builder-conditions select,
#elementor-publish #elementor-theme-builder-conditions input {
  background-color: #4C4F56;
  color: #E0E1E3; }

#elementor-publish #elementor-theme-builder-conditions .elementor-control-type[data-elementor-condition-type="include"],
#elementor-publish #elementor-theme-builder-conditions .elementor-control-type[data-elementor-condition-type="exclude"] {
  background-color: #64666A; }
  #elementor-publish #elementor-theme-builder-conditions .elementor-control-type[data-elementor-condition-type="include"] select,
  #elementor-publish #elementor-theme-builder-conditions .elementor-control-type[data-elementor-condition-type="include"] option,
  #elementor-publish #elementor-theme-builder-conditions .elementor-control-type[data-elementor-condition-type="exclude"] select,
  #elementor-publish #elementor-theme-builder-conditions .elementor-control-type[data-elementor-condition-type="exclude"] option {
    background-color: #404349;
    color: #E0E1E3; }

#elementor-publish #elementor-theme-builder-conditions .elementor-control-type-select .elementor-control-input-wrapper:after {
  color: inherit; }

#elementor-publish #elementor-theme-builder-conditions .elementor-theme-builder-conditions-repeater-row-controls .select2-dropdown,
#elementor-publish #elementor-theme-builder-conditions .elementor-theme-builder-conditions-repeater-row-controls .select2-container--default .select2-selection--single {
  background-color: #4C4F56; }

#elementor-toast .e-toast-button {
  background-color: #4C4F56; }

#elementor-icons-manager__search input {
  background-color: #404349;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s; }
  #elementor-icons-manager__search input:focus {
    background-color: #4C4F56; }

.elementor-icons-manager__tab__item {
  background-color: #404349; }
  .elementor-icons-manager__tab__item__icon, .elementor-icons-manager__tab__item__name {
    color: #E0E1E3; }

.elementor-icons-manager__tab-link {
  color: #E0E1E3; }
  .elementor-icons-manager__tab-link.elementor-active {
    background-color: #404349; }

.elementor-context-menu {
  background-color: #404349;
  border-color: #34383C; }
  .elementor-context-menu .elementor-context-menu-list__group:not(:last-child) {
    border-color: #34383C; }

.elementor-context-menu-list__item:not(.elementor-context-menu-list__item--disabled):hover {
  background-color: #4C4F56; }

.elementor-context-menu-list__item.elementor-context-menu-list__item-delete:not(.elementor-context-menu-list__item--disabled):hover {
  background-color: #F84343; }

#elementor-navigator {
  background-color: #34383C; }
  #elementor-navigator__header, #elementor-navigator__inner, #elementor-navigator__footer {
    background-color: #34383C; }
  #elementor-navigator__header, #elementor-navigator__footer {
    border-color: #4C4F56; }
  #elementor-navigator__header #elementor-navigator__close,
  #elementor-navigator__header #elementor-navigator__toggle-all {
    color: #B4B5B7; }

.elementor-navigator__element-section {
  background-color: transparent; }

.elementor-navigator__item {
  background-color: #404349;
  border-color: #34383C; }
  .elementor-navigator__item:hover {
    background-color: #4c4f57; }

.elementor-navigator__element__indicator {
  color: #E0E1E3;
  background-color: #4C4F56; }
  .elementor-navigator__element__indicator:hover {
    color: #B4B5B7; }
  .elementor-navigator__element__indicator:not(:first-child) {
    border-color: #34383C; }

.elementor-navigator__element-column {
  background-color: #474a51; }

.elementor-navigator__element:not(.elementor-navigator__element--hidden) > .elementor-navigator__item.elementor-editing {
  background-color: #4c4f57; }
  .elementor-navigator__element:not(.elementor-navigator__element--hidden) > .elementor-navigator__item.elementor-editing .elementor-navigator__element__toggle {
    color: #71D7F7; }

.elementor-navigator__elements .elementor-empty-view {
  border-color: #34383C; }

.elementor-navigator__elements .ui-sortable-helper {
  background-color: #34383C;
  border-color: #34383C; }

.elementor-navigator__elements .ui-sortable-placeholder {
  background-color: #34383C; }

#elementor-panel-history:not(.elementor-empty),
.elementor-panel .elementor-panel-box,
.elementor-panel .elementor-panel-scheme-buttons {
  background-color: #404349; }

.elementor-revision-item__wrapper,
.elementor-history-item {
  background-color: #4C4F56;
  border-color: #4C4F56; }
  .elementor-revision-item__wrapper:hover,
  .elementor-history-item:hover {
    background-color: #64666A; }

#elementor-finder__search__input {
  color: #E0E1E3; }

.elementor-finder__results__category__title {
  background-color: #26292C;
  color: #E0E1E3; }

.elementor-finder__results__item__title {
  color: #E0E1E3; }

.elementor-finder__results__item.elementor-active {
  background-color: #404349; }

.elementor-hotkeys__list {
  background-color: #4C4F56; }

.elementor-hotkeys__item {
  border-color: #64666A; }
  .elementor-hotkeys__item--shortcut span {
    background-color: #64666A; }

.media-modal {
  color: #6d7882; }

#wp-link {
  color: #6d7882; }
  #wp-link input,
  #wp-link select,
  #wp-link textarea,
  #wp-link .elementor-input-style {
    color: #6d7882;
    background-color: transparent; }
    #wp-link input:not(:focus),
    #wp-link select:not(:focus),
    #wp-link textarea:not(:focus),
    #wp-link .elementor-input-style:not(:focus) {
      border-color: #d5dadf; }
    #wp-link input:focus,
    #wp-link select:focus,
    #wp-link textarea:focus,
    #wp-link .elementor-input-style:focus {
      border-color: #a4afb7; }

.ui-autocomplete {
  color: #6d7882; }

.elementor-color-picker__tool {
  background-color: #E0E1E3; }
  .elementor-color-picker__tool i {
    color: #64666A; }

.elementor-nerd-box-icon {
  -webkit-filter: contrast(0.8);
          filter: contrast(0.8); }
/*# sourceMappingURL=editor-dark-mode.css.map */assets/css/frontend-lite-rtl.min.css000064400000265431151327220410013513 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.dialog-widget-content{background-color:#fff;position:absolute;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);box-shadow:2px 8px 23px 3px rgba(0,0,0,.2);overflow:hidden}.dialog-message{font-size:12px;line-height:1.5;-webkit-box-sizing:border-box;box-sizing:border-box}.dialog-type-lightbox{position:fixed;height:100%;width:100%;bottom:0;left:0;background-color:rgba(0,0,0,.8);z-index:9999;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.dialog-type-lightbox .dialog-widget-content{margin:auto;width:375px}.dialog-type-lightbox .dialog-header{font-size:15px;color:#495157;padding:30px 0 10px;font-weight:500}.dialog-type-lightbox .dialog-message{padding:0 30px 30px;min-height:50px}.dialog-type-lightbox:not(.elementor-popup-modal) .dialog-header,.dialog-type-lightbox:not(.elementor-popup-modal) .dialog-message{text-align:center}.dialog-type-lightbox .dialog-buttons-wrapper{border-top:1px solid #e6e9ec;text-align:center}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;width:50%;border:none;background:none;color:#6d7882;font-size:15px;cursor:pointer;padding:13px 0;outline:0}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button:hover{background-color:#f4f6f7}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button.dialog-ok{color:#b01b1b}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button.dialog-take_over{color:#39b54a}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button:active{background-color:rgba(230,233,236,.5)}.dialog-type-lightbox .dialog-buttons-wrapper>.dialog-button::-moz-focus-inner{border:0}.dialog-close-button{cursor:pointer;position:absolute;margin-top:15px;left:15px;font-size:15px;line-height:1}.dialog-close-button:not(:hover){opacity:.4}.dialog-alert-widget .dialog-buttons-wrapper>button{width:100%}.dialog-confirm-widget .dialog-button:first-child{border-left:1px solid #e6e9ec}.dialog-prevent-scroll{overflow:hidden;max-height:100vh}@media (min-width:1024px){body.admin-bar .dialog-lightbox-widget{height:calc(100vh - 32px)}}@media (max-width:1024px){body.admin-bar .dialog-type-lightbox{position:-webkit-sticky;position:sticky;height:100vh}}.elementor-aspect-ratio-219 .elementor-fit-aspect-ratio{padding-bottom:42.8571%}.elementor-aspect-ratio-169 .elementor-fit-aspect-ratio{padding-bottom:56.25%}.elementor-aspect-ratio-43 .elementor-fit-aspect-ratio{padding-bottom:75%}.elementor-aspect-ratio-32 .elementor-fit-aspect-ratio{padding-bottom:66.6666%}.elementor-aspect-ratio-11 .elementor-fit-aspect-ratio{padding-bottom:100%}.elementor-aspect-ratio-916 .elementor-fit-aspect-ratio{padding-bottom:177.8%}.elementor-fit-aspect-ratio{position:relative;height:0}.elementor-fit-aspect-ratio iframe{position:absolute;top:0;left:0;height:100%;width:100%;border:0;background-color:#000}.elementor-fit-aspect-ratio video{width:100%}.flatpickr-calendar{width:280px}.flatpickr-calendar .flatpickr-current-month span.cur-month{font-weight:300}.flatpickr-calendar .dayContainer{width:280px;min-width:280px;max-width:280px}.flatpickr-calendar .flatpickr-days{width:280px}.flatpickr-calendar .flatpickr-day{max-width:37px;height:37px;line-height:37px}.elementor-templates-modal .dialog-widget-content{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;background-color:#f1f3f5;width:100%}@media (max-width:1439px){.elementor-templates-modal .dialog-widget-content{max-width:990px}}@media (min-width:1440px){.elementor-templates-modal .dialog-widget-content{max-width:1200px}}.elementor-templates-modal .dialog-header{padding:0;z-index:1}.elementor-templates-modal .dialog-buttons-wrapper,.elementor-templates-modal .dialog-header{background-color:#fff;-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1);position:relative}.elementor-templates-modal .dialog-buttons-wrapper{border:none;display:none;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;padding:5px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button{height:40px;margin-right:5px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success{padding:12px 36px;color:#fff;width:auto;font-size:15px}.elementor-templates-modal .dialog-buttons-wrapper .elementor-button-success:hover{background-color:#39b54a}.elementor-templates-modal .dialog-message{height:750px;max-height:85vh;overflow:auto;padding-top:25px}.elementor-templates-modal .dialog-content{height:100%}.elementor-templates-modal .dialog-loading{display:none}.elementor-templates-modal__header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;height:50px}.elementor-templates-modal__header__logo{line-height:1;text-transform:uppercase;font-weight:700;cursor:pointer}.elementor-templates-modal__header__logo-area{text-align:right;padding-right:15px}.elementor-templates-modal__header__logo-area>*{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-templates-modal__header__logo__icon-wrapper{margin-left:10px;font-size:12px}.elementor-templates-modal__header__logo__title{padding-top:2px}.elementor-templates-modal__header__items-area{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.elementor-templates-modal__header__item{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-templates-modal__header__item>i{font-size:20px;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;cursor:pointer}.elementor-templates-modal__header__item>i:not(:hover){color:#a4afb7}.elementor-templates-modal__header__close--normal{width:47px;border-right:1px solid #e6e9ec}.elementor-templates-modal__header__close--normal i{font-size:18px}.elementor-templates-modal__header__close--skip{padding:10px 20px 10px 10px;margin-left:10px;color:#fff;background-color:#a4afb7;font-size:11px;font-weight:400;line-height:1;text-transform:uppercase;-webkit-border-radius:2px;border-radius:2px;cursor:pointer}.elementor-templates-modal__header__close--skip>i{font-size:inherit;padding-right:10px;margin-right:15px;border-right:1px solid}.elementor-templates-modal__header__close--skip>i:not(:hover){color:#fff}.elementor-templates-modal__sidebar{-ms-flex-negative:0;flex-shrink:0;width:25%;background-color:hsla(0,0%,100%,.3)}.elementor-templates-modal__content{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-webkit-box-shadow:0 0 13px inset rgba(0,0,0,.05);box-shadow:inset 0 0 13px rgba(0,0,0,.05)}#wpadminbar #wp-admin-bar-elementor_edit_page .elementor-general-section+.elementor-second-section{border-top:1px solid #464b50;margin-top:6px}.elementor-hidden{display:none}.elementor-screen-only,.screen-reader-text,.screen-reader-text span,.ui-helper-hidden-accessible{position:absolute;top:-10000em;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0}.elementor-clearfix:after{content:"";display:block;clear:both;width:0;height:0}.e-logo-wrapper{background:#93003c;display:inline-block;padding:.75em;-webkit-border-radius:50%;border-radius:50%;line-height:1}.e-logo-wrapper i{color:#fff;font-size:1em}.elementor{-webkit-hyphens:manual;-ms-hyphens:manual;hyphens:manual}.elementor *,.elementor :after,.elementor :before{-webkit-box-sizing:border-box;box-sizing:border-box}.elementor a{-webkit-box-shadow:none;box-shadow:none;text-decoration:none}.elementor hr{margin:0;background-color:transparent}.elementor img{height:auto;max-width:100%;border:none;-webkit-border-radius:0;border-radius:0;-webkit-box-shadow:none;box-shadow:none}.elementor .elementor-widget:not(.elementor-widget-text-editor):not(.elementor-widget-theme-post-content) figure{margin:0}.elementor embed,.elementor iframe,.elementor object,.elementor video{max-width:100%;width:100%;margin:0;line-height:1;border:none}.elementor .elementor-custom-embed{line-height:0}.elementor .elementor-background,.elementor .elementor-background-holder,.elementor .elementor-background-video-container{height:100%;width:100%;top:0;left:0;position:absolute;overflow:hidden;z-index:0;direction:ltr}.elementor .elementor-background-video-container{-webkit-transition:opacity 1s;-o-transition:opacity 1s;transition:opacity 1s;pointer-events:none}.elementor .elementor-background-video-container.elementor-loading{opacity:0}.elementor .elementor-background-video-embed{max-width:none}.elementor .elementor-background-video,.elementor .elementor-background-video-embed,.elementor .elementor-background-video-hosted{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor .elementor-background-video{max-width:none}.elementor .elementor-html5-video{-o-object-fit:cover;object-fit:cover}.elementor .elementor-background-overlay{height:100%;width:100%;top:0;left:0;position:absolute}.elementor .elementor-background-slideshow{position:absolute;width:100%;height:100%;z-index:0;top:0;right:0}.elementor .elementor-background-slideshow__slide__image{width:100%;height:100%;background-position:50%;-webkit-background-size:cover;background-size:cover}.elementor-widget-wrap>.elementor-element.elementor-absolute{position:absolute}.elementor-column>.elementor-widget-wrap>.elementor-element.elementor-absolute{padding:inherit;-webkit-box-sizing:content-box;box-sizing:content-box}.elementor-widget-wrap>.elementor-element.elementor-fixed{position:fixed}.elementor-widget-wrap .elementor-element.elementor-widget__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget__width-initial{max-width:100%}@media (max-width:1024px){.elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget-tablet__width-initial{max-width:100%}}@media (max-width:767px){.elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-auto,.elementor-widget-wrap .elementor-element.elementor-widget-mobile__width-initial{max-width:100%}}.elementor-element.elementor-absolute,.elementor-element.elementor-fixed{z-index:1}.elementor-invisible{visibility:hidden}.elementor-align-center{text-align:center}.elementor-align-center .elementor-button{width:auto}.elementor-align-right{text-align:right}.elementor-align-right .elementor-button{width:auto}.elementor-align-left{text-align:left}.elementor-align-left .elementor-button{width:auto}.elementor-align-justify .elementor-button{width:100%}.elementor-custom-embed-play{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.elementor-custom-embed-play i{font-size:100px;color:#fff;text-shadow:1px 0 6px rgba(0,0,0,.3)}.elementor-custom-embed-play svg{height:100px;width:100px;fill:#fff;-webkit-filter:drop-shadow(1px 0 6px rgba(0,0,0,.3));filter:drop-shadow(1px 0 6px rgba(0,0,0,.3))}.elementor-custom-embed-play i,.elementor-custom-embed-play svg{opacity:.8;-webkit-transition:all .5s;-o-transition:all .5s;transition:all .5s}.elementor-custom-embed-play.elementor-playing i{font-family:eicons;-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.elementor-custom-embed-play.elementor-playing i:before{content:"\e8fb"}.elementor-tag{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex}.elementor-ken-burns{-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;-o-transition-property:transform;transition-property:transform;transition-property:transform,-webkit-transform;-webkit-transition-duration:10s;-o-transition-duration:10s;transition-duration:10s;-webkit-transition-timing-function:linear;-o-transition-timing-function:linear;transition-timing-function:linear}.elementor-ken-burns--out{-webkit-transform:scale(1.3);-ms-transform:scale(1.3);transform:scale(1.3)}.elementor-ken-burns--active{-webkit-transition-duration:20s;-o-transition-duration:20s;transition-duration:20s}.elementor-ken-burns--active.elementor-ken-burns--out{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}.elementor-ken-burns--active.elementor-ken-burns--in{-webkit-transform:scale(1.3);-ms-transform:scale(1.3);transform:scale(1.3)}@media (min-width:-1px){.elementor-widescreen-align-center{text-align:center}.elementor-widescreen-align-center .elementor-button{width:auto}.elementor-widescreen-align-right{text-align:right}.elementor-widescreen-align-right .elementor-button{width:auto}.elementor-widescreen-align-left{text-align:left}.elementor-widescreen-align-left .elementor-button{width:auto}.elementor-widescreen-align-justify .elementor-button{width:100%}}@media (max-width:-1px){.elementor-laptop-align-center{text-align:center}.elementor-laptop-align-center .elementor-button{width:auto}.elementor-laptop-align-right{text-align:right}.elementor-laptop-align-right .elementor-button{width:auto}.elementor-laptop-align-left{text-align:left}.elementor-laptop-align-left .elementor-button{width:auto}.elementor-laptop-align-justify .elementor-button{width:100%}}@media (max-width:-1px){.elementor-tablet_extra-align-center{text-align:center}.elementor-tablet_extra-align-center .elementor-button{width:auto}.elementor-tablet_extra-align-right{text-align:right}.elementor-tablet_extra-align-right .elementor-button{width:auto}.elementor-tablet_extra-align-left{text-align:left}.elementor-tablet_extra-align-left .elementor-button{width:auto}.elementor-tablet_extra-align-justify .elementor-button{width:100%}}@media (max-width:1024px){.elementor-tablet-align-center{text-align:center}.elementor-tablet-align-center .elementor-button{width:auto}.elementor-tablet-align-right{text-align:right}.elementor-tablet-align-right .elementor-button{width:auto}.elementor-tablet-align-left{text-align:left}.elementor-tablet-align-left .elementor-button{width:auto}.elementor-tablet-align-justify .elementor-button{width:100%}}@media (max-width:-1px){.elementor-mobile_extra-align-center{text-align:center}.elementor-mobile_extra-align-center .elementor-button{width:auto}.elementor-mobile_extra-align-right{text-align:right}.elementor-mobile_extra-align-right .elementor-button{width:auto}.elementor-mobile_extra-align-left{text-align:left}.elementor-mobile_extra-align-left .elementor-button{width:auto}.elementor-mobile_extra-align-justify .elementor-button{width:100%}}@media (max-width:767px){.elementor-mobile-align-center{text-align:center}.elementor-mobile-align-center .elementor-button{width:auto}.elementor-mobile-align-right{text-align:right}.elementor-mobile-align-right .elementor-button{width:auto}.elementor-mobile-align-left{text-align:left}.elementor-mobile-align-left .elementor-button{width:auto}.elementor-mobile-align-justify .elementor-button{width:100%}}#wpadminbar #wp-admin-bar-elementor_edit_page>.ab-item:before{content:"\e813";font-family:eicons;top:3px;font-size:18px}#wpadminbar #wp-admin-bar-elementor_inspector>.ab-item:before{content:"\f348";top:2px}:root{--page-title-display:block}.elementor-page-title,h1.entry-title{display:var(--page-title-display)}.elementor-section{position:relative}.elementor-section .elementor-container{display:-webkit-box;display:-ms-flexbox;display:flex;margin-right:auto;margin-left:auto;position:relative}@media (max-width:1024px){.elementor-section .elementor-container{-ms-flex-wrap:wrap;flex-wrap:wrap}}.elementor-section.elementor-section-boxed>.elementor-container{max-width:1140px}.elementor-section.elementor-section-stretched{position:relative;width:100%}.elementor-section.elementor-section-items-top>.elementor-container{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.elementor-section.elementor-section-items-middle>.elementor-container{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-section.elementor-section-items-bottom>.elementor-container{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}@media (min-width:768px){.elementor-section.elementor-section-height-full{height:100vh}.elementor-section.elementor-section-height-full>.elementor-container{height:100%}}.elementor-bc-flex-widget .elementor-section-content-top>.elementor-container>.elementor-column>.elementor-widget-wrap{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.elementor-bc-flex-widget .elementor-section-content-middle>.elementor-container>.elementor-column>.elementor-widget-wrap{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-bc-flex-widget .elementor-section-content-bottom>.elementor-container>.elementor-column>.elementor-widget-wrap{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.elementor-row{width:100%;display:-webkit-box;display:-ms-flexbox;display:flex}@media (max-width:1024px){.elementor-row{-ms-flex-wrap:wrap;flex-wrap:wrap}}.elementor-widget-wrap{position:relative;width:100%;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-line-pack:start;align-content:flex-start}.elementor:not(.elementor-bc-flex-widget) .elementor-widget-wrap{display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-widget-wrap>.elementor-element{width:100%}.elementor-widget{position:relative}.elementor-widget:not(:last-child){margin-bottom:20px}.elementor-widget:not(:last-child).elementor-absolute,.elementor-widget:not(:last-child).elementor-widget__width-auto,.elementor-widget:not(:last-child).elementor-widget__width-initial{margin-bottom:0}.elementor-column{min-height:1px}.elementor-column,.elementor-column-wrap{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex}.elementor-column-wrap{width:100%}.elementor-column-gap-narrow>.elementor-column>.elementor-element-populated{padding:5px}.elementor-column-gap-default>.elementor-column>.elementor-element-populated{padding:10px}.elementor-column-gap-extended>.elementor-column>.elementor-element-populated{padding:15px}.elementor-column-gap-wide>.elementor-column>.elementor-element-populated{padding:20px}.elementor-column-gap-wider>.elementor-column>.elementor-element-populated{padding:30px}.elementor-inner-section .elementor-column-gap-no .elementor-element-populated{padding:0}@media (min-width:768px){.elementor-column.elementor-col-10,.elementor-column[data-col="10"]{width:10%}.elementor-column.elementor-col-11,.elementor-column[data-col="11"]{width:11.111%}.elementor-column.elementor-col-12,.elementor-column[data-col="12"]{width:12.5%}.elementor-column.elementor-col-14,.elementor-column[data-col="14"]{width:14.285%}.elementor-column.elementor-col-16,.elementor-column[data-col="16"]{width:16.666%}.elementor-column.elementor-col-20,.elementor-column[data-col="20"]{width:20%}.elementor-column.elementor-col-25,.elementor-column[data-col="25"]{width:25%}.elementor-column.elementor-col-30,.elementor-column[data-col="30"]{width:30%}.elementor-column.elementor-col-33,.elementor-column[data-col="33"]{width:33.333%}.elementor-column.elementor-col-40,.elementor-column[data-col="40"]{width:40%}.elementor-column.elementor-col-50,.elementor-column[data-col="50"]{width:50%}.elementor-column.elementor-col-60,.elementor-column[data-col="60"]{width:60%}.elementor-column.elementor-col-66,.elementor-column[data-col="66"]{width:66.666%}.elementor-column.elementor-col-70,.elementor-column[data-col="70"]{width:70%}.elementor-column.elementor-col-75,.elementor-column[data-col="75"]{width:75%}.elementor-column.elementor-col-80,.elementor-column[data-col="80"]{width:80%}.elementor-column.elementor-col-83,.elementor-column[data-col="83"]{width:83.333%}.elementor-column.elementor-col-90,.elementor-column[data-col="90"]{width:90%}.elementor-column.elementor-col-100,.elementor-column[data-col="100"]{width:100%}}@media (max-width:479px){.elementor-column.elementor-xs-10{width:10%}.elementor-column.elementor-xs-11{width:11.111%}.elementor-column.elementor-xs-12{width:12.5%}.elementor-column.elementor-xs-14{width:14.285%}.elementor-column.elementor-xs-16{width:16.666%}.elementor-column.elementor-xs-20{width:20%}.elementor-column.elementor-xs-25{width:25%}.elementor-column.elementor-xs-30{width:30%}.elementor-column.elementor-xs-33{width:33.333%}.elementor-column.elementor-xs-40{width:40%}.elementor-column.elementor-xs-50{width:50%}.elementor-column.elementor-xs-60{width:60%}.elementor-column.elementor-xs-66{width:66.666%}.elementor-column.elementor-xs-70{width:70%}.elementor-column.elementor-xs-75{width:75%}.elementor-column.elementor-xs-80{width:80%}.elementor-column.elementor-xs-83{width:83.333%}.elementor-column.elementor-xs-90{width:90%}.elementor-column.elementor-xs-100{width:100%}}@media (max-width:767px){.elementor-column.elementor-sm-10{width:10%}.elementor-column.elementor-sm-11{width:11.111%}.elementor-column.elementor-sm-12{width:12.5%}.elementor-column.elementor-sm-14{width:14.285%}.elementor-column.elementor-sm-16{width:16.666%}.elementor-column.elementor-sm-20{width:20%}.elementor-column.elementor-sm-25{width:25%}.elementor-column.elementor-sm-30{width:30%}.elementor-column.elementor-sm-33{width:33.333%}.elementor-column.elementor-sm-40{width:40%}.elementor-column.elementor-sm-50{width:50%}.elementor-column.elementor-sm-60{width:60%}.elementor-column.elementor-sm-66{width:66.666%}.elementor-column.elementor-sm-70{width:70%}.elementor-column.elementor-sm-75{width:75%}.elementor-column.elementor-sm-80{width:80%}.elementor-column.elementor-sm-83{width:83.333%}.elementor-column.elementor-sm-90{width:90%}.elementor-column.elementor-sm-100{width:100%}}@media (min-width:768px) and (max-width:1024px){.elementor-column.elementor-md-10{width:10%}.elementor-column.elementor-md-11{width:11.111%}.elementor-column.elementor-md-12{width:12.5%}.elementor-column.elementor-md-14{width:14.285%}.elementor-column.elementor-md-16{width:16.666%}.elementor-column.elementor-md-20{width:20%}.elementor-column.elementor-md-25{width:25%}.elementor-column.elementor-md-30{width:30%}.elementor-column.elementor-md-33{width:33.333%}.elementor-column.elementor-md-40{width:40%}.elementor-column.elementor-md-50{width:50%}.elementor-column.elementor-md-60{width:60%}.elementor-column.elementor-md-66{width:66.666%}.elementor-column.elementor-md-70{width:70%}.elementor-column.elementor-md-75{width:75%}.elementor-column.elementor-md-80{width:80%}.elementor-column.elementor-md-83{width:83.333%}.elementor-column.elementor-md-90{width:90%}.elementor-column.elementor-md-100{width:100%}}@media (min-width:768px) and (max-width:1024px){.elementor-reverse-tablet>.elementor-container>:first-child{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.elementor-reverse-tablet>.elementor-container>:nth-child(2){-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.elementor-reverse-tablet>.elementor-container>:nth-child(3){-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.elementor-reverse-tablet>.elementor-container>:nth-child(4){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.elementor-reverse-tablet>.elementor-container>:nth-child(5){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.elementor-reverse-tablet>.elementor-container>:nth-child(6){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-reverse-tablet>.elementor-container>:nth-child(7){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.elementor-reverse-tablet>.elementor-container>:nth-child(8){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.elementor-reverse-tablet>.elementor-container>:nth-child(9){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.elementor-reverse-tablet>.elementor-container>:nth-child(10){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}}@media (max-width:767px){.elementor-reverse-mobile>.elementor-container>:first-child{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.elementor-reverse-mobile>.elementor-container>:nth-child(2){-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.elementor-reverse-mobile>.elementor-container>:nth-child(3){-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.elementor-reverse-mobile>.elementor-container>:nth-child(4){-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.elementor-reverse-mobile>.elementor-container>:nth-child(5){-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.elementor-reverse-mobile>.elementor-container>:nth-child(6){-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-reverse-mobile>.elementor-container>:nth-child(7){-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.elementor-reverse-mobile>.elementor-container>:nth-child(8){-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.elementor-reverse-mobile>.elementor-container>:nth-child(9){-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.elementor-reverse-mobile>.elementor-container>:nth-child(10){-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.elementor-column{width:100%}}ul.elementor-icon-list-items.elementor-inline-items{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}ul.elementor-icon-list-items.elementor-inline-items .elementor-inline-item{word-break:break-word}.elementor-grid{display:grid;grid-column-gap:var(--grid-column-gap);grid-row-gap:var(--grid-row-gap)}.elementor-grid .elementor-grid-item{min-width:0}.elementor-grid-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}@media (min-width:-1px){.elementor-grid-widescreen-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-widescreen-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-widescreen-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-widescreen-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-widescreen-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-widescreen-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-widescreen-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-widescreen-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-widescreen-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-widescreen-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-widescreen-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-widescreen-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-widescreen-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-widescreen-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:-1px){.elementor-grid-laptop-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-laptop-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-laptop-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-laptop-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-laptop-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-laptop-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-laptop-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-laptop-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-laptop-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-laptop-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-laptop-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-laptop-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-laptop-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-laptop-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:-1px){.elementor-grid-tablet_extra-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-tablet_extra-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-tablet_extra-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-tablet_extra-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-tablet_extra-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-tablet_extra-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-tablet_extra-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-tablet_extra-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-tablet_extra-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-tablet_extra-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-tablet_extra-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-tablet_extra-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-tablet_extra-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-tablet_extra-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:1024px){.elementor-grid-tablet-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-tablet-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-tablet-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-tablet-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-tablet-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-tablet-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-tablet-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-tablet-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-tablet-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-tablet-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-tablet-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-tablet-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-tablet-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-tablet-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:-1px){.elementor-grid-mobile_extra-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-mobile_extra-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-mobile_extra-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-mobile_extra-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-mobile_extra-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-mobile_extra-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-mobile_extra-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-mobile_extra-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-mobile_extra-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-mobile_extra-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-mobile_extra-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-mobile_extra-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-mobile_extra-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-mobile_extra-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (max-width:767px){.elementor-grid-mobile-0 .elementor-grid{display:inline-block;width:100%;word-spacing:var(--grid-column-gap);margin-bottom:calc(-1 * var(--grid-row-gap))}.elementor-grid-mobile-0 .elementor-grid .elementor-grid-item{display:inline-block;margin-bottom:var(--grid-row-gap);word-break:break-word}.elementor-grid-mobile-1 .elementor-grid{grid-template-columns:repeat(1,1fr)}.elementor-grid-mobile-2 .elementor-grid{grid-template-columns:repeat(2,1fr)}.elementor-grid-mobile-3 .elementor-grid{grid-template-columns:repeat(3,1fr)}.elementor-grid-mobile-4 .elementor-grid{grid-template-columns:repeat(4,1fr)}.elementor-grid-mobile-5 .elementor-grid{grid-template-columns:repeat(5,1fr)}.elementor-grid-mobile-6 .elementor-grid{grid-template-columns:repeat(6,1fr)}.elementor-grid-mobile-7 .elementor-grid{grid-template-columns:repeat(7,1fr)}.elementor-grid-mobile-8 .elementor-grid{grid-template-columns:repeat(8,1fr)}.elementor-grid-mobile-9 .elementor-grid{grid-template-columns:repeat(9,1fr)}.elementor-grid-mobile-10 .elementor-grid{grid-template-columns:repeat(10,1fr)}.elementor-grid-mobile-11 .elementor-grid{grid-template-columns:repeat(11,1fr)}.elementor-grid-mobile-12 .elementor-grid{grid-template-columns:repeat(12,1fr)}}@media (min-width:1025px){#elementor-device-mode:after{content:"desktop"}}@media (min-width:-1px){#elementor-device-mode:after{content:"widescreen"}}@media (max-width:-1px){#elementor-device-mode:after{content:"laptop";content:"tablet_extra"}}@media (max-width:1024px){#elementor-device-mode:after{content:"tablet"}}@media (max-width:-1px){#elementor-device-mode:after{content:"mobile_extra"}}@media (max-width:767px){#elementor-device-mode:after{content:"mobile"}}[class*=" eicon-"],[class^=eicon]{display:inline-block;font-family:eicons;font-size:inherit;font-weight:400;font-style:normal;font-variant:normal;line-height:1;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@-webkit-keyframes eicon-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes eicon-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.eicon-animation-spin{-webkit-animation:eicon-spin 2s linear infinite;animation:eicon-spin 2s linear infinite}.eicon-loading:before{content:"\e8fb"}.eicon-menu-bar:before{content:"\e816"}.eicon-chevron-right:before{content:"\e87d"}.eicon-chevron-left:before{content:"\e87e"}.eicon-close:before{content:"\e87f"}.eicon-share-arrow:before{content:"\e96c"}.eicon-zoom-in:before{content:"\e882"}.eicon-zoom-in-bold:before{content:"\e92e"}.eicon-zoom-out-bold:before{content:"\e943"}.eicon-frame-expand:before{content:"\e95c"}.eicon-frame-minimize:before{content:"\e95d"}.eicon-play:before{content:"\e89d"}.eicon-facebook:before{content:"\e959"}.eicon-twitter:before{content:"\e95a"}.eicon-pinterest:before{content:"\e95b"}.eicon-download-bold:before{content:"\e96b"}.eicon-caret-down:before{content:"\e92a"}.elementor-form-fields-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group .elementor-field-subgroup,.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group>.elementor-select-wrapper,.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group>input,.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group>textarea{-ms-flex-preferred-size:100%;flex-basis:100%;max-width:100%}.elementor-form-fields-wrapper.elementor-labels-inline>.elementor-field-group .elementor-select-wrapper,.elementor-form-fields-wrapper.elementor-labels-inline>.elementor-field-group>input{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-field-group{-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-field-group.elementor-field-type-submit{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}.elementor-field-group .elementor-field-textual{width:100%;max-width:100%;border:1px solid #818a91;background-color:transparent;color:#373a3c;vertical-align:middle;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-field-group .elementor-field-textual:focus{-webkit-box-shadow:0 0 0 1px rgba(0,0,0,.1) inset;box-shadow:inset 0 0 0 1px rgba(0,0,0,.1);outline:0}.elementor-field-group .elementor-field-textual::-webkit-input-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual:-ms-input-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual:-moz-placeholder,.elementor-field-group .elementor-field-textual::-moz-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual::-ms-input-placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-field-textual::placeholder{color:inherit;font-family:inherit;opacity:.6}.elementor-field-group .elementor-select-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;position:relative;width:100%}.elementor-field-group .elementor-select-wrapper select{appearance:none;-webkit-appearance:none;-moz-appearance:none;color:inherit;font-size:inherit;font-family:inherit;font-weight:inherit;font-style:inherit;text-transform:inherit;letter-spacing:inherit;line-height:inherit;-ms-flex-preferred-size:100%;flex-basis:100%;padding-left:20px}.elementor-field-group .elementor-select-wrapper:before{content:"\e92a";font-family:eicons;font-size:15px;position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);left:10px;pointer-events:none;text-shadow:0 0 3px rgba(0,0,0,.3)}.elementor-field-group.elementor-field-type-select-multiple .elementor-select-wrapper:before{content:""}.elementor-field-subgroup{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.elementor-field-subgroup .elementor-field-option label{display:inline-block}.elementor-field-subgroup.elementor-subgroup-inline .elementor-field-option{padding-left:10px}.elementor-field-subgroup:not(.elementor-subgroup-inline) .elementor-field-option{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option label,.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-checkbox .elementor-field-subgroup .elementor-field-option label,.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option input,.elementor-field-type-radio .elementor-field-subgroup .elementor-field-option label{display:inline}.elementor-field-label{cursor:pointer}.elementor-mark-required .elementor-field-label:after{content:"*";color:red;padding-right:.2em}.elementor-field-textual{line-height:1.4;font-size:15px;min-height:40px;padding:5px 14px;-webkit-border-radius:3px;border-radius:3px}.elementor-field-textual.elementor-size-xs{font-size:13px;min-height:33px;padding:4px 12px;-webkit-border-radius:2px;border-radius:2px}.elementor-field-textual.elementor-size-md{font-size:16px;min-height:47px;padding:6px 16px;-webkit-border-radius:4px;border-radius:4px}.elementor-field-textual.elementor-size-lg{font-size:18px;min-height:59px;padding:7px 20px;-webkit-border-radius:5px;border-radius:5px}.elementor-field-textual.elementor-size-xl{font-size:20px;min-height:72px;padding:8px 24px;-webkit-border-radius:6px;border-radius:6px}.elementor-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-button-align-stretch .e-form__buttons__wrapper{-ms-flex-preferred-size:50%;flex-basis:50%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-button-align-stretch .e-form__buttons__wrapper__button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-button-align-center .e-form__buttons,.elementor-button-align-center .elementor-field-type-submit{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-button-align-start .e-form__buttons,.elementor-button-align-start .elementor-field-type-submit{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-button-align-end .e-form__buttons,.elementor-button-align-end .elementor-field-type-submit{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:initial;flex-basis:auto}.elementor-button-align-center .e-form__buttons__wrapper,.elementor-button-align-end .e-form__buttons__wrapper,.elementor-button-align-start .e-form__buttons__wrapper{-webkit-box-flex:initial;-ms-flex-positive:initial;flex-grow:0}.elementor-button-align-center .e-form__buttons__wrapper,.elementor-button-align-center .e-form__buttons__wrapper__button,.elementor-button-align-end .e-form__buttons__wrapper,.elementor-button-align-end .e-form__buttons__wrapper__button,.elementor-button-align-start .e-form__buttons__wrapper,.elementor-button-align-start .e-form__buttons__wrapper__button{-ms-flex-preferred-size:initial;flex-basis:auto}@media screen and (max-width:1024px){.elementor-tablet-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-tablet-button-align-stretch .e-form__buttons__wrapper{-ms-flex-preferred-size:50%;flex-basis:50%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-tablet-button-align-stretch .e-form__buttons__wrapper__button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-tablet-button-align-center .e-form__buttons,.elementor-tablet-button-align-center .elementor-field-type-submit{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-tablet-button-align-start .e-form__buttons,.elementor-tablet-button-align-start .elementor-field-type-submit{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-tablet-button-align-end .e-form__buttons,.elementor-tablet-button-align-end .elementor-field-type-submit{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-tablet-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-tablet-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-tablet-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:initial;flex-basis:auto}.elementor-tablet-button-align-center .e-form__buttons__wrapper,.elementor-tablet-button-align-end .e-form__buttons__wrapper,.elementor-tablet-button-align-start .e-form__buttons__wrapper{-webkit-box-flex:initial;-ms-flex-positive:initial;flex-grow:0}.elementor-tablet-button-align-center .e-form__buttons__wrapper,.elementor-tablet-button-align-center .e-form__buttons__wrapper__button,.elementor-tablet-button-align-end .e-form__buttons__wrapper,.elementor-tablet-button-align-end .e-form__buttons__wrapper__button,.elementor-tablet-button-align-start .e-form__buttons__wrapper,.elementor-tablet-button-align-start .e-form__buttons__wrapper__button{-ms-flex-preferred-size:initial;flex-basis:auto}}@media screen and (max-width:767px){.elementor-mobile-button-align-stretch .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-mobile-button-align-stretch .e-form__buttons__wrapper{-ms-flex-preferred-size:50%;flex-basis:50%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.elementor-mobile-button-align-stretch .e-form__buttons__wrapper__button{-ms-flex-preferred-size:100%;flex-basis:100%}.elementor-mobile-button-align-center .e-form__buttons,.elementor-mobile-button-align-center .elementor-field-type-submit{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-mobile-button-align-start .e-form__buttons,.elementor-mobile-button-align-start .elementor-field-type-submit{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-mobile-button-align-end .e-form__buttons,.elementor-mobile-button-align-end .elementor-field-type-submit{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-mobile-button-align-center .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-mobile-button-align-end .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button,.elementor-mobile-button-align-start .elementor-field-type-submit:not(.e-form__buttons__wrapper) .elementor-button{-ms-flex-preferred-size:initial;flex-basis:auto}.elementor-mobile-button-align-center .e-form__buttons__wrapper,.elementor-mobile-button-align-end .e-form__buttons__wrapper,.elementor-mobile-button-align-start .e-form__buttons__wrapper{-webkit-box-flex:initial;-ms-flex-positive:initial;flex-grow:0}.elementor-mobile-button-align-center .e-form__buttons__wrapper,.elementor-mobile-button-align-center .e-form__buttons__wrapper__button,.elementor-mobile-button-align-end .e-form__buttons__wrapper,.elementor-mobile-button-align-end .e-form__buttons__wrapper__button,.elementor-mobile-button-align-start .e-form__buttons__wrapper,.elementor-mobile-button-align-start .e-form__buttons__wrapper__button{-ms-flex-preferred-size:initial;flex-basis:auto}}.elementor-error .elementor-field{border-color:#d9534f}.elementor-error .help-inline{color:#d9534f;font-size:.9em}.elementor-message{margin:10px 0;font-size:1em;line-height:1}.elementor-message:before{content:"\e90e";display:inline-block;font-family:eicons;font-weight:400;font-style:normal;vertical-align:middle;margin-left:5px}.elementor-message.elementor-message-danger{color:#d9534f}.elementor-message.elementor-message-danger:before{content:"\e87f"}.elementor-message.form-message-success{color:#5cb85c}.elementor-form .elementor-button{padding-top:0;padding-bottom:0;border:none}.elementor-form .elementor-button>span{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-form .elementor-button.elementor-size-xs{min-height:33px}.elementor-form .elementor-button.elementor-size-sm{min-height:40px}.elementor-form .elementor-button.elementor-size-md{min-height:47px}.elementor-form .elementor-button.elementor-size-lg{min-height:59px}.elementor-form .elementor-button.elementor-size-xl{min-height:72px}.elementor-element .elementor-widget-container{-webkit-transition:background .3s,border .3s,-webkit-border-radius .3s,-webkit-box-shadow .3s;transition:background .3s,border .3s,-webkit-border-radius .3s,-webkit-box-shadow .3s;-o-transition:background .3s,border .3s,border-radius .3s,box-shadow .3s;transition:background .3s,border .3s,border-radius .3s,box-shadow .3s;transition:background .3s,border .3s,border-radius .3s,box-shadow .3s,-webkit-border-radius .3s,-webkit-box-shadow .3s}.elementor-button{display:inline-block;line-height:1;background-color:#818a91;font-size:15px;padding:12px 24px;-webkit-border-radius:3px;border-radius:3px;color:#fff;fill:#fff;text-align:center;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}.elementor-button:focus,.elementor-button:hover,.elementor-button:visited{color:#fff}.elementor-button-content-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-button-icon{-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-button-icon svg{width:1em;height:auto}.elementor-button-icon .e-font-icon-svg{height:1em}.elementor-button-text{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10;display:inline-block}.elementor-button.elementor-size-xs{font-size:13px;padding:10px 20px;-webkit-border-radius:2px;border-radius:2px}.elementor-button.elementor-size-md{font-size:16px;padding:15px 30px;-webkit-border-radius:4px;border-radius:4px}.elementor-button.elementor-size-lg{font-size:18px;padding:20px 40px;-webkit-border-radius:5px;border-radius:5px}.elementor-button.elementor-size-xl{font-size:20px;padding:25px 50px;-webkit-border-radius:6px;border-radius:6px}.elementor-button .elementor-align-icon-right{margin-left:5px;-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.elementor-button .elementor-align-icon-left{margin-right:5px;-webkit-box-ordinal-group:16;-ms-flex-order:15;order:15}.elementor-button span{text-decoration:inherit}.elementor-menu-cart__toggle .elementor-button-icon{-webkit-box-ordinal-group:16;-ms-flex-order:15;order:15}.elementor-element.elementor-button-info .elementor-button{background-color:#5bc0de}.elementor-element.elementor-button-success .elementor-button{background-color:#5cb85c}.elementor-element.elementor-button-warning .elementor-button{background-color:#f0ad4e}.elementor-element.elementor-button-danger .elementor-button{background-color:#d9534f}.elementor-widget-button .elementor-button .elementor-button-info{background-color:#5bc0de}.elementor-widget-button .elementor-button .elementor-button-success{background-color:#5cb85c}.elementor-widget-button .elementor-button .elementor-button-warning{background-color:#f0ad4e}.elementor-widget-button .elementor-button .elementor-button-danger{background-color:#d9534f}.elementor-tab-title a{color:inherit}.elementor-view-stacked .elementor-icon{padding:.5em;background-color:#818a91;color:#fff;fill:#fff}.elementor-view-framed .elementor-icon{padding:.5em;color:#818a91;border:3px solid #818a91;background-color:transparent}.elementor-icon{display:inline-block;line-height:1;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;color:#818a91;font-size:50px;text-align:center}.elementor-icon:hover{color:#818a91}.elementor-icon i,.elementor-icon svg{width:1em;height:1em;position:relative;display:block}.elementor-icon i:before,.elementor-icon svg:before{position:absolute;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.elementor-icon i.fad{width:auto}.elementor-shape-circle .elementor-icon{-webkit-border-radius:50%;border-radius:50%}.slick-slider{-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-ms-touch-action:pan-y;touch-action:pan-y;-webkit-tap-highlight-color:transparent}.slick-list,.slick-slider{position:relative;display:block}.slick-list{overflow:hidden;margin:0;padding:0}.slick-list:focus{outline:none}.slick-list.dragging{cursor:pointer}.slick-slider .slick-list,.slick-slider .slick-track{-webkit-transform:translateZ(0);transform:translateZ(0)}.slick-track{position:relative;left:0;top:0;display:block}.slick-track:after,.slick-track:before{content:"";display:table}.slick-track:after{clear:both}.slick-loading .slick-track{visibility:hidden}.slick-slide{float:left;height:100%;min-height:1px;display:none}.elementor-slick-slider[dir=rtl] .slick-slide{float:right}.slick-slide img{display:block}.slick-slide.slick-loading img{display:none}.slick-slide.dragging img{pointer-events:none}.slick-initialized .slick-slide{display:block}.slick-loading .slick-slide{visibility:hidden}.slick-vertical .slick-slide{display:block;height:auto;border:1px solid transparent}.slick-arrow.slick-hidden{display:none}.elementor-slick-slider .slick-loading .slick-list{background:#fff}.elementor-slick-slider .slick-loading .slick-list:after{content:"\e8fb";font-family:eicons;position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite;font-size:25px;color:#a4afb7}.elementor-slick-slider .slick-next,.elementor-slick-slider .slick-prev{font-size:0;line-height:0;position:absolute;top:50%;display:block;width:20px;padding:0;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);cursor:pointer;color:transparent;border:none;outline:none;background:transparent}.elementor-slick-slider .slick-next:focus,.elementor-slick-slider .slick-next:hover,.elementor-slick-slider .slick-prev:focus,.elementor-slick-slider .slick-prev:hover{color:transparent;outline:none;background:transparent}.elementor-slick-slider .slick-next:focus:before,.elementor-slick-slider .slick-next:hover:before,.elementor-slick-slider .slick-prev:focus:before,.elementor-slick-slider .slick-prev:hover:before{opacity:1}.elementor-slick-slider .slick-next.slick-disabled:before,.elementor-slick-slider .slick-prev.slick-disabled:before{opacity:.25}.elementor-slick-slider .slick-next:before,.elementor-slick-slider .slick-prev:before{font-family:eicons;font-size:35px;line-height:1;opacity:.75;color:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.elementor-slick-slider .slick-prev{left:-25px}[dir=rtl] .elementor-slick-slider .slick-prev{left:auto;right:-25px}.elementor-slick-slider .slick-prev:before{content:"\e89f"}[dir=rtl] .elementor-slick-slider .slick-prev:before{content:"\e89e"}.elementor-slick-slider .slick-next{right:-25px}[dir=rtl] .elementor-slick-slider .slick-next{left:-25px;right:auto}.elementor-slick-slider .slick-next:before{content:"\e89e"}[dir=rtl] .elementor-slick-slider .slick-next:before{content:"\e89f"}.elementor-slick-slider .slick-dotted.slick-slider{margin-bottom:30px}.elementor-slick-slider ul.slick-dots{position:absolute;bottom:-25px;display:block;width:100%;padding:0;margin:0;list-style:none;text-align:center;line-height:1}.elementor-slick-slider ul.slick-dots li{position:relative;display:inline-block;width:20px;height:20px;margin:0;padding:0;cursor:pointer}.elementor-slick-slider ul.slick-dots li button{font-size:0;line-height:0;display:block;width:20px;height:20px;padding:5px;cursor:pointer;color:transparent;border:0;outline:none;background:transparent}.elementor-slick-slider ul.slick-dots li button:focus,.elementor-slick-slider ul.slick-dots li button:hover{outline:none}.elementor-slick-slider ul.slick-dots li button:focus:before,.elementor-slick-slider ul.slick-dots li button:hover:before{opacity:1}.elementor-slick-slider ul.slick-dots li button:before{font-family:eicons;font-size:6px;line-height:20px;position:absolute;top:0;left:0;width:20px;height:20px;content:"\e914";text-align:center;opacity:.25;color:#000;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.elementor-slick-slider ul.slick-dots li.slick-active button:before{opacity:.75;color:#000}.elementor-slick-slider .slick-arrows-inside .slick-prev{left:20px}[dir=rtl] .elementor-slick-slider .slick-arrows-inside .slick-prev{left:auto;right:20px}.elementor-slick-slider .slick-arrows-inside .slick-next{right:20px}[dir=rtl] .elementor-slick-slider .slick-arrows-inside .slick-next{left:20px;right:auto}.elementor-slick-slider .slick-dots-inside .slick-dots{bottom:5px}.elementor-slick-slider .slick-dots-inside.slick-dotted.slick-slider{margin-bottom:0}.elementor-slick-slider .slick-slider .slick-next,.elementor-slick-slider .slick-slider .slick-prev{z-index:1}.elementor-slick-slider .slick-slide img{margin:auto}.swiper-container{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;z-index:1}.swiper-container .swiper-slide figure{line-height:0}.swiper-container .elementor-lightbox-content-source{display:none}.swiper-container-no-flexbox .swiper-slide{float:left}.swiper-container-vertical>.swiper-wrapper{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;-o-transition-property:transform;transition-property:transform;transition-property:transform,-webkit-transform;-webkit-box-sizing:content-box;box-sizing:content-box}.swiper-container-android .swiper-slide,.swiper-wrapper{-webkit-transform:translateZ(0);transform:translateZ(0)}.swiper-container-multirow>.swiper-wrapper{-ms-flex-wrap:wrap;flex-wrap:wrap}.swiper-container-free-mode>.swiper-wrapper{-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out;margin:0 auto}.swiper-slide{-ms-flex-negative:0;flex-shrink:0;width:100%;height:100%;position:relative}.swiper-container-autoheight,.swiper-container-autoheight .swiper-slide{height:auto}.swiper-container-autoheight .swiper-wrapper{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-transition-property:height,-webkit-transform;transition-property:height,-webkit-transform;-o-transition-property:transform,height;transition-property:transform,height;transition-property:transform,height,-webkit-transform}.swiper-container .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}.swiper-wp8-horizontal{-ms-touch-action:pan-y;touch-action:pan-y}.swiper-wp8-vertical{-ms-touch-action:pan-x;touch-action:pan-x}.swiper-button-next,.swiper-button-prev{position:absolute;top:50%;width:27px;height:44px;margin-top:-22px;z-index:10;cursor:pointer;-webkit-background-size:27px 44px;background-size:27px 44px;background:no-repeat 50%}.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}.swiper-button-prev,.swiper-container-rtl .swiper-button-next{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z' fill='%23007aff'/%3E%3C/svg%3E");left:10px;right:auto}.swiper-button-prev.swiper-button-black,.swiper-container-rtl .swiper-button-next.swiper-button-black{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z'/%3E%3C/svg%3E")}.swiper-button-prev.swiper-button-white,.swiper-container-rtl .swiper-button-next.swiper-button-white{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M0 22L22 0l2.1 2.1L4.2 22l19.9 19.9L22 44 0 22z' fill='%23fff'/%3E%3C/svg%3E")}.swiper-button-next,.swiper-container-rtl .swiper-button-prev{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z' fill='%23007aff'/%3E%3C/svg%3E");right:10px;left:auto}.swiper-button-next.swiper-button-black,.swiper-container-rtl .swiper-button-prev.swiper-button-black{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z'/%3E%3C/svg%3E")}.swiper-button-next.swiper-button-white,.swiper-container-rtl .swiper-button-prev.swiper-button-white{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 44'%3E%3Cpath d='M27 22L5 44l-2.1-2.1L22.8 22 2.9 2.1 5 0l22 22z' fill='%23fff'/%3E%3C/svg%3E")}.swiper-pagination{position:absolute;text-align:center;-webkit-transition:.3s;-o-transition:.3s;transition:.3s;-webkit-transform:translateZ(0);transform:translateZ(0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-container-horizontal>.swiper-pagination-bullets,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:5px;left:0;width:100%}.swiper-pagination-bullet{width:6px;height:6px;display:inline-block;-webkit-border-radius:50%;border-radius:50%;background:#000;opacity:.2}.swiper-pagination-fraction{color:#000}button.swiper-pagination-bullet{border:none;margin:0;padding:0;-webkit-box-shadow:none;box-shadow:none;appearance:none;-webkit-appearance:none;-moz-appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-white .swiper-pagination-bullet{background:#fff}.swiper-pagination-bullet-active{opacity:1}.swiper-pagination-white .swiper-pagination-bullet-active{background:#fff}.swiper-pagination-black .swiper-pagination-bullet-active{background:#000}.swiper-container-vertical>.swiper-pagination-bullets{right:10px;top:50%;-webkit-transform:translate3d(0,-50%,0);transform:translate3d(0,-50%,0)}.swiper-container-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{margin:5px 0;display:block}.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 6px}.swiper-pagination-progressbar{background:rgba(0,0,0,.25);position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:#000;position:absolute;left:0;top:0;width:100%;height:100%;-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);-webkit-transform-origin:left top;-ms-transform-origin:left top;transform-origin:left top}.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{-webkit-transform-origin:right top;-ms-transform-origin:right top;transform-origin:right top}.swiper-container-horizontal>.swiper-pagination-progressbar{width:100%;height:4px;left:0;top:0}.swiper-container-vertical>.swiper-pagination-progressbar{width:4px;height:100%;left:0;top:0}.swiper-pagination-progressbar.swiper-pagination-white{background:hsla(0,0%,100%,.5)}.swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill{background:#fff}.swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill{background:#000}.swiper-container-3d{-webkit-perspective:1200px;perspective:1200px}.swiper-container-3d .swiper-cube-shadow,.swiper-container-3d .swiper-slide,.swiper-container-3d .swiper-slide-shadow-bottom,.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top,.swiper-container-3d .swiper-wrapper{-webkit-transform-style:preserve-3d;transform-style:preserve-3d}.swiper-container-3d .swiper-slide-shadow-bottom,.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-container-3d .swiper-slide-shadow-left{background-image:-webkit-gradient(linear,right top,left top,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(right,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(right,rgba(0,0,0,.5),transparent);background-image:linear-gradient(270deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-right{background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(left,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(left,rgba(0,0,0,.5),transparent);background-image:linear-gradient(90deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-top{background-image:-webkit-gradient(linear,left bottom,left top,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(bottom,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(bottom,rgba(0,0,0,.5),transparent);background-image:linear-gradient(0deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-bottom{background-image:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,.5)),to(transparent));background-image:-webkit-linear-gradient(top,rgba(0,0,0,.5),transparent);background-image:-o-linear-gradient(top,rgba(0,0,0,.5),transparent);background-image:linear-gradient(180deg,rgba(0,0,0,.5),transparent)}.swiper-container-coverflow .swiper-wrapper,.swiper-container-flip .swiper-wrapper{-ms-perspective:1200px}.swiper-container-cube,.swiper-container-flip{overflow:visible}.swiper-container-cube .swiper-slide,.swiper-container-flip .swiper-slide{pointer-events:none;z-index:1}.swiper-container-cube .swiper-slide .swiper-slide,.swiper-container-flip .swiper-slide .swiper-slide{pointer-events:none}.swiper-container-cube .swiper-slide-active,.swiper-container-cube .swiper-slide-active .swiper-slide-active,.swiper-container-flip .swiper-slide-active,.swiper-container-flip .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-container-cube .swiper-slide-shadow-bottom,.swiper-container-cube .swiper-slide-shadow-left,.swiper-container-cube .swiper-slide-shadow-right,.swiper-container-cube .swiper-slide-shadow-top,.swiper-container-flip .swiper-slide-shadow-bottom,.swiper-container-flip .swiper-slide-shadow-left,.swiper-container-flip .swiper-slide-shadow-right,.swiper-container-flip .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-container-cube .swiper-slide{visibility:hidden;-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0;width:100%;height:100%}.swiper-container-cube.swiper-container-rtl .swiper-slide{-webkit-transform-origin:100% 0;-ms-transform-origin:100% 0;transform-origin:100% 0}.swiper-container-cube .swiper-slide-active,.swiper-container-cube .swiper-slide-next,.swiper-container-cube .swiper-slide-next+.swiper-slide,.swiper-container-cube .swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-container-cube .swiper-cube-shadow{position:absolute;left:0;bottom:0;width:100%;height:100%;background:#000;opacity:.6;-webkit-filter:blur(50px);filter:blur(50px);z-index:0}.swiper-container-fade.swiper-container-free-mode .swiper-slide{-webkit-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out}.swiper-container-fade .swiper-slide{pointer-events:none;-webkit-transition-property:opacity;-o-transition-property:opacity;transition-property:opacity}.swiper-container-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-container-fade .swiper-slide-active,.swiper-container-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-zoom-container{width:100%;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;text-align:center}.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{max-width:100%;max-height:100%;-o-object-fit:contain;object-fit:contain}.swiper-scrollbar{-webkit-border-radius:10px;border-radius:10px;position:relative;-ms-touch-action:none;background:rgba(0,0,0,.1)}.swiper-container-horizontal>.swiper-scrollbar{position:absolute;left:1%;bottom:3px;z-index:50;height:5px;width:98%}.swiper-container-vertical>.swiper-scrollbar{position:absolute;right:3px;top:1%;z-index:50;width:5px;height:98%}.swiper-scrollbar-drag{height:100%;width:100%;position:relative;background:rgba(0,0,0,.5);-webkit-border-radius:10px;border-radius:10px;left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.elementor-pagination-position-outside .swiper-container{padding-bottom:30px}.elementor-pagination-position-outside .elementor-swiper-button{top:calc(50% - 30px / 2)}.elementor-swiper{position:relative}.elementor-main-swiper{position:static}.elementor-arrows-position-outside .swiper-container{width:calc(100% - 60px)}.elementor-arrows-position-outside .elementor-swiper-button-prev{left:0}.elementor-arrows-position-outside .elementor-swiper-button-next{right:0}.swiper-image-stretch .swiper-slide .swiper-slide-image{width:100%}.elementor-swiper-button{position:absolute;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;z-index:1;cursor:pointer;font-size:25px;color:hsla(0,0%,93.3%,.9);top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}.elementor-swiper-button-prev{left:10px}.elementor-swiper-button-next{right:10px}.elementor-swiper-button.swiper-button-disabled{opacity:.3}.swiper-container-cube .elementor-swiper-button{-webkit-transform:translate3d(0,-50%,1px);transform:translate3d(0,-50%,1px)}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;-webkit-transform-origin:50%;-ms-transform-origin:50%;transform-origin:50%;-webkit-animation:swiper-preloader-spin 1s steps(12) infinite;animation:swiper-preloader-spin 1s steps(12) infinite}.swiper-lazy-preloader:after{display:block;content:"";width:100%;height:100%;-webkit-background-size:100% 100%;background-size:100%;background:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath id='a' stroke='%236c6c6c' stroke-width='11' stroke-linecap='round' d='M60 7v20'/%3E%3C/defs%3E%3Cuse xlink:href='%23a' opacity='.27'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(30 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(60 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(90 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(120 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(150 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.37' transform='rotate(180 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.46' transform='rotate(210 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.56' transform='rotate(240 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.66' transform='rotate(270 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.75' transform='rotate(300 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.85' transform='rotate(330 60 60)'/%3E%3C/svg%3E") no-repeat 50%}.swiper-lazy-preloader-white:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath id='a' stroke='%23fff' stroke-width='11' stroke-linecap='round' d='M60 7v20'/%3E%3C/defs%3E%3Cuse xlink:href='%23a' opacity='.27'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(30 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(60 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(90 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(120 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.27' transform='rotate(150 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.37' transform='rotate(180 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.46' transform='rotate(210 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.56' transform='rotate(240 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.66' transform='rotate(270 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.75' transform='rotate(300 60 60)'/%3E%3Cuse xlink:href='%23a' opacity='.85' transform='rotate(330 60 60)'/%3E%3C/svg%3E")}@-webkit-keyframes swiper-preloader-spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes swiper-preloader-spin{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.elementor-lightbox{--lightbox-ui-color:hsla(0,0%,93.3%,0.9);--lightbox-ui-color-hover:#fff;--lightbox-text-color:var(--lightbox-ui-color);--lightbox-header-icons-size:20px;--lightbox-navigation-icons-size:25px}.elementor-lightbox .dialog-header{display:none}.elementor-lightbox .dialog-widget-content{background:none;-webkit-box-shadow:none;box-shadow:none;width:100%;height:100%}.elementor-lightbox .dialog-message{-webkit-animation-duration:.3s;animation-duration:.3s}.elementor-lightbox .dialog-message:not(.elementor-fit-aspect-ratio){height:100%}.elementor-lightbox .dialog-message.dialog-lightbox-message{padding:0}.elementor-lightbox .dialog-lightbox-close-button{cursor:pointer;position:absolute;font-size:var(--lightbox-header-icons-size);left:.75em;margin-top:13px;padding:.25em;z-index:2;line-height:1}.elementor-lightbox .dialog-lightbox-close-button,.elementor-lightbox .elementor-swiper-button{color:var(--lightbox-ui-color);-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s;opacity:1}.elementor-lightbox .dialog-lightbox-close-button:hover,.elementor-lightbox .elementor-swiper-button:hover{color:var(--lightbox-ui-color-hover)}.elementor-lightbox .swiper-container{height:100%}.elementor-lightbox .elementor-lightbox-item{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;position:relative;padding:70px;-webkit-box-sizing:border-box;box-sizing:border-box;height:100%;margin:auto}@media (max-width:767px){.elementor-lightbox .elementor-lightbox-item{padding:70px 0}}.elementor-lightbox .elementor-lightbox-image{max-height:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.elementor-lightbox .elementor-lightbox-image,.elementor-lightbox .elementor-lightbox-image:hover{opacity:1;-webkit-filter:none;filter:none;border:none}.elementor-lightbox .elementor-lightbox-image,.elementor-lightbox .elementor-video-container{-webkit-box-shadow:0 0 30px rgba(0,0,0,.3),0 0 8px -5px rgba(0,0,0,.3);box-shadow:0 0 30px rgba(0,0,0,.3),0 0 8px -5px rgba(0,0,0,.3);-webkit-border-radius:2px;border-radius:2px}.elementor-lightbox .elementor-video-container{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}@media (min-width:1025px){.elementor-lightbox .elementor-video-container{width:75%}}@media (max-width:1024px){.elementor-lightbox .elementor-video-container{width:100%}}@media (min-width:768px) and (max-width:1024px){.elementor-lightbox .elementor-aspect-ratio-916 .elementor-video-container{width:70%}}.elementor-lightbox .elementor-swiper-button:focus{outline-width:1px}.elementor-lightbox .elementor-swiper-button-next,.elementor-lightbox .elementor-swiper-button-prev{height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:15%;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;font-size:var(--lightbox-navigation-icons-size)}.elementor-lightbox .elementor-swiper-button-prev{left:0}.elementor-lightbox .elementor-swiper-button-next{right:0}@media (max-width:767px){.elementor-lightbox .elementor-swiper-button:focus{outline:none}.elementor-lightbox .elementor-swiper-button-next,.elementor-lightbox .elementor-swiper-button-prev{width:20%}.elementor-lightbox .elementor-swiper-button-next i,.elementor-lightbox .elementor-swiper-button-prev i{padding:10px;background-color:rgba(0,0,0,.5)}.elementor-lightbox .elementor-swiper-button-prev{left:0;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-lightbox .elementor-swiper-button-next{right:0;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}}.elementor-slideshow__counter{color:currentColor;font-size:.75em;width:-webkit-max-content;width:-moz-max-content;width:max-content}.elementor-slideshow__footer,.elementor-slideshow__header{position:absolute;left:0;width:100%;padding:15px 20px;-webkit-transition:.3s;-o-transition:.3s;transition:.3s}.elementor-slideshow__footer{color:var(--lightbox-text-color)}.elementor-slideshow__header{color:var(--lightbox-ui-color);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;font-size:var(--lightbox-header-icons-size);padding-right:1em;padding-left:2.6em;top:0;-webkit-box-align:center;-ms-flex-align:center;align-items:center;z-index:10}.elementor-slideshow__header>i{font-size:inherit;cursor:pointer;padding:.25em;margin:0 .35em}.elementor-slideshow__header>i:hover{color:var(--lightbox-ui-color-hover)}.elementor-slideshow__header .elementor-slideshow__counter{margin-left:auto}.elementor-slideshow__header .elementor-icon-share{z-index:5}.elementor-slideshow__share-menu{background-color:transparent;width:0;height:0;position:absolute;overflow:hidden;-webkit-transition:background-color .4s;-o-transition:background-color .4s;transition:background-color .4s}.elementor-slideshow__share-menu .elementor-slideshow__share-links a{color:#2c2c2c}.elementor-slideshow__share-links{display:block;position:absolute;min-width:200px;left:2.8em;top:3em;background-color:#fff;-webkit-border-radius:3px;border-radius:3px;padding:14px 20px;-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);opacity:0;-webkit-transform-origin:90% 10%;-ms-transform-origin:90% 10%;transform-origin:90% 10%;-webkit-transition:all .25s .1s;-o-transition:all .25s .1s;transition:all .25s .1s;-webkit-box-shadow:0 4px 15px rgba(0,0,0,.3);box-shadow:0 4px 15px rgba(0,0,0,.3)}.elementor-slideshow__share-links a{text-align:right;color:#55595c;font-size:12px;line-height:2.5;display:block;opacity:0;-webkit-transition:opacity .5s .1s;-o-transition:opacity .5s .1s;transition:opacity .5s .1s}.elementor-slideshow__share-links a:hover{color:#000}.elementor-slideshow__share-links a i{font-size:1.25em;margin-left:.75em}.elementor-slideshow__share-links:before{content:"";display:block;position:absolute;top:1px;left:.5em;border:.45em solid transparent;border-bottom-color:#fff;-webkit-transform:translateY(-100%) scaleX(.7);-ms-transform:translateY(-100%) scaleX(.7);transform:translateY(-100%) scaleX(.7)}.elementor-slideshow__footer{bottom:0;z-index:5;position:fixed}.elementor-slideshow__description,.elementor-slideshow__title{margin:0}.elementor-slideshow__title{font-size:16px;font-weight:700}.elementor-slideshow__description{font-size:14px}.elementor-slideshow--ui-hidden .elementor-slideshow__footer,.elementor-slideshow--ui-hidden .elementor-slideshow__header{opacity:0;pointer-events:none}.elementor-slideshow--ui-hidden .elementor-swiper-button-next,.elementor-slideshow--ui-hidden .elementor-swiper-button-prev{opacity:0}.elementor-slideshow--fullscreen-mode .elementor-video-container{width:100%}.elementor-slideshow--zoom-mode .elementor-slideshow__footer,.elementor-slideshow--zoom-mode .elementor-slideshow__header{background-color:rgba(0,0,0,.5)}.elementor-slideshow--zoom-mode .elementor-swiper-button-next,.elementor-slideshow--zoom-mode .elementor-swiper-button-prev{opacity:0;pointer-events:none}.elementor-slideshow--share-mode .elementor-slideshow__share-menu{top:0;left:0;width:100vw;height:100vh;opacity:1;cursor:default;background-color:rgba(0,0,0,.5)}.elementor-slideshow--share-mode .elementor-slideshow__share-links{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}.elementor-slideshow--share-mode .elementor-slideshow__share-links,.elementor-slideshow--share-mode .elementor-slideshow__share-links a{opacity:1}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-twitter{color:#1da1f2}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-facebook{color:#3b5998}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-pinterest{color:#bd081c}.elementor-slideshow--share-mode .elementor-slideshow__share-links .eicon-download-bold{color:#a4afb7}.elementor-slideshow--share-mode .eicon-share-arrow{z-index:2}.animated{-webkit-animation-duration:1.25s;animation-duration:1.25s}.animated.animated-slow{-webkit-animation-duration:2s;animation-duration:2s}.animated.animated-fast{-webkit-animation-duration:.75s;animation-duration:.75s}.animated.infinite{-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}.animated.reverse{animation-direction:reverse;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}@media (prefers-reduced-motion:reduce){.animated{-webkit-animation:none;animation:none}}.elementor-shape{overflow:hidden;position:absolute;left:0;width:100%;line-height:0;direction:ltr}.elementor-shape-top{top:-1px}.elementor-shape-top:not([data-negative=false]) svg{z-index:-1}.elementor-shape-bottom{bottom:-1px}.elementor-shape-bottom:not([data-negative=true]) svg{z-index:-1}.elementor-shape[data-negative=false].elementor-shape-bottom,.elementor-shape[data-negative=true].elementor-shape-top{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.elementor-shape svg{display:block;width:calc(100% + 1.3px);position:relative;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.elementor-shape .elementor-shape-fill{fill:#fff;-webkit-transform-origin:center;-ms-transform-origin:center;transform-origin:center;-webkit-transform:rotateY(0deg);transform:rotateY(0deg)}#wp-admin-bar-elementor_edit_page .ab-submenu .ab-item{display:-webkit-box;display:-ms-flexbox;display:flex;width:200px}#wp-admin-bar-elementor_edit_page .elementor-edit-link-title{white-space:nowrap;-o-text-overflow:ellipsis;text-overflow:ellipsis;overflow:hidden;width:100%}#wp-admin-bar-elementor_edit_page .elementor-edit-link-type{background:#55595c;font-size:11px;line-height:9px;margin-top:6px;padding:4px 8px;-webkit-border-radius:3px;border-radius:3px}.page-template-elementor_canvas.elementor-page:before{display:none}.elementor-post__thumbnail__link{-webkit-transition:none;-o-transition:none;transition:none}#left-area ul.elementor-icon-list-items,.elementor-edit-area .elementor-element ul.elementor-icon-list-items,.elementor .elementor-element ul.elementor-icon-list-items{padding:0}#wpadminbar *{font-style:normal}.e--ua-appleWebkit.rtl{--flex-right:flex-start}.e--ua-appleWebkit .elementor-share-buttons--align-right,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-right{--justify-content:var(--flex-right,flex-end)}.e--ua-appleWebkit .elementor-share-buttons--align-center,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-center{--justify-content:center}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-justify .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-right .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-right .elementor-grid{width:auto;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:var(--justify-content,space-between);-ms-flex-pack:var(--justify-content,space-between);justify-content:var(--justify-content,space-between);margin-left:calc(-.5 * var(--grid-column-gap));margin-right:calc(-.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-justify .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-right .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-right .elementor-grid-item{margin-left:calc(.5 * var(--grid-column-gap));margin-right:calc(.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid{display:inline-block}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-left .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-left .elementor-grid-item{margin-left:0;margin-right:0}@media (max-width:1024px){.e--ua-appleWebkit .elementor-share-buttons-tablet--align-right,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-tablet-right{--justify-content:var(--flex-right,flex-end)}.e--ua-appleWebkit .elementor-share-buttons-tablet--align-center,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-tablet-center{--justify-content:center}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-justify .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-right .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-right .elementor-grid{width:auto;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:var(--justify-content,space-between);-ms-flex-pack:var(--justify-content,space-between);justify-content:var(--justify-content,space-between);margin-left:calc(-.5 * var(--grid-column-gap));margin-right:calc(-.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-justify .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-tablet-right .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-right .elementor-grid-item{margin-left:calc(.5 * var(--grid-column-gap));margin-right:calc(.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid{display:inline-block}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-tablet--align-left .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-tablet-left .elementor-grid-item{margin-left:0;margin-right:0}}@media (max-width:767px){.e--ua-appleWebkit .elementor-share-buttons-mobile--align-right,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-mobile-right{--justify-content:var(--flex-right,flex-end)}.e--ua-appleWebkit .elementor-share-buttons-mobile--align-center,.e--ua-appleWebkit .elementor-widget-social-icons.e-grid-align-mobile-center{--justify-content:center}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-justify .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-right .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-center .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-right .elementor-grid{width:auto;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:var(--justify-content,space-between);-ms-flex-pack:var(--justify-content,space-between);justify-content:var(--justify-content,space-between);margin-left:calc(-.5 * var(--grid-column-gap));margin-right:calc(-.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-justify .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons--align-mobile-right .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-center .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-right .elementor-grid-item{margin-left:calc(.5 * var(--grid-column-gap));margin-right:calc(.5 * var(--grid-column-gap))}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid{display:inline-block}.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-share-buttons-mobile--align-left .elementor-grid-item,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid,.e--ua-appleWebkit .elementor-grid-0.elementor-widget-social-icons.e-grid-align-mobile-left .elementor-grid-item{margin-left:0;margin-right:0}}@media (max-width:767px){.elementor .elementor-hidden-mobile,.elementor .elementor-hidden-phone{display:none}}@media (min-width:-1px) and (max-width:-1px){.elementor .elementor-hidden-mobile_extra{display:none}}@media (min-width:768px) and (max-width:1024px){.elementor .elementor-hidden-tablet{display:none}}@media (min-width:-1px) and (max-width:-1px){.elementor .elementor-hidden-laptop,.elementor .elementor-hidden-tablet_extra{display:none}}@media (min-width:1025px) and (max-width:99999px){.elementor .elementor-hidden-desktop{display:none}}@media (min-width:-1px){.elementor .elementor-hidden-widescreen{display:none}}.elementor-widget-text-path{font-size:20px;text-align:var(--alignment,right)}.elementor-widget-text-path svg{width:var(--width);max-width:100%;height:auto;overflow:visible;word-spacing:var(--word-spacing);-webkit-transform:rotate(var(--rotate,0)) scaleX(var(--scale-x,1)) scaleY(var(--scale-y,1));-ms-transform:rotate(var(--rotate,0)) scaleX(var(--scale-x,1)) scaleY(var(--scale-y,1));transform:rotate(var(--rotate,0)) scaleX(var(--scale-x,1)) scaleY(var(--scale-y,1))}.elementor-widget-text-path svg path{vector-effect:non-scaling-stroke;fill:var(--path-fill,transparent);stroke:var(--stroke-color,transparent);stroke-width:var(--stroke-width,1px);-webkit-transition:var(--stroke-transition) stroke,var(--stroke-transition) fill;-o-transition:var(--stroke-transition) stroke,var(--stroke-transition) fill;transition:var(--stroke-transition) stroke,var(--stroke-transition) fill}.elementor-widget-text-path svg:hover path{--path-fill:var(--path-fill-hover);--stroke-color:var(--stroke-color-hover);--stroke-width:var(--stroke-width-hover)}.elementor-widget-text-path svg text{--fill:var(--text-color);fill:var(--fill);direction:var(--direction,rtl);-webkit-transition:var(--transition) stroke,var(--transition) stroke-width,var(--transition) fill;-o-transition:var(--transition) stroke,var(--transition) stroke-width,var(--transition) fill;transition:var(--transition) stroke,var(--transition) stroke-width,var(--transition) fill}.elementor-widget-text-path svg text:hover{--color:var(--text-color-hover,var(--text-color));--fill:var(--color);color:var(--color)}assets/css/widget-star-rating-rtl.min.css000064400000006076151327220410014453 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-star-rating{color:#ccd6df;font-family:eicons;display:inline-block}.elementor-star-rating i{display:inline-block;position:relative;font-style:normal;cursor:default}.elementor-star-rating i:before{content:"\e934";display:block;font-size:inherit;font-family:inherit;position:absolute;overflow:hidden;color:#f0ad4e;top:0;right:0}.elementor-star-rating .elementor-star-empty:before{content:none}.elementor-star-rating .elementor-star-1:before{width:10%}.elementor-star-rating .elementor-star-2:before{width:20%}.elementor-star-rating .elementor-star-3:before{width:30%}.elementor-star-rating .elementor-star-4:before{width:40%}.elementor-star-rating .elementor-star-5:before{width:50%}.elementor-star-rating .elementor-star-6:before{width:60%}.elementor-star-rating .elementor-star-7:before{width:70%}.elementor-star-rating .elementor-star-8:before{width:80%}.elementor-star-rating .elementor-star-9:before{width:90%}.elementor-star-rating__wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.elementor-star-rating__title{margin-left:10px}.elementor-star-rating--align-right .elementor-star-rating__wrapper{text-align:right;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-star-rating--align-left .elementor-star-rating__wrapper{text-align:left;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-star-rating--align-center .elementor-star-rating__wrapper{text-align:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-star-rating--align-justify .elementor-star-rating__title{margin-left:auto}@media (max-width:1024px){.elementor-star-rating-tablet--align-right .elementor-star-rating__wrapper{text-align:right;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-star-rating-tablet--align-left .elementor-star-rating__wrapper{text-align:left;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-star-rating-tablet--align-center .elementor-star-rating__wrapper{text-align:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-star-rating-tablet--align-justify .elementor-star-rating__title{margin-left:auto}}@media (max-width:767px){.elementor-star-rating-mobile--align-right .elementor-star-rating__wrapper{text-align:right;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.elementor-star-rating-mobile--align-left .elementor-star-rating__wrapper{text-align:left;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.elementor-star-rating-mobile--align-center .elementor-star-rating__wrapper{text-align:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.elementor-star-rating-mobile--align-justify .elementor-star-rating__title{margin-left:auto}}.last-star{letter-spacing:0}.elementor--star-style-star_unicode .elementor-star-rating{font-family:Arial,Helvetica,sans-serif}.elementor--star-style-star_unicode .elementor-star-rating i:not(.elementor-star-empty):before{content:"\002605"}assets/css/widget-accordion-rtl.min.css000064400000003042151327220410014147 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-accordion{text-align:right}.elementor-accordion .elementor-accordion-item{border:1px solid #d4d4d4}.elementor-accordion .elementor-accordion-item+.elementor-accordion-item{border-top:none}.elementor-accordion .elementor-tab-title{margin:0;padding:15px 20px;font-weight:700;line-height:1;cursor:pointer;outline:none}.elementor-accordion .elementor-tab-title .elementor-accordion-icon{display:inline-block;width:1.5em}.elementor-accordion .elementor-tab-title .elementor-accordion-icon svg{width:1em;height:1em}.elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-right{float:right;text-align:right}.elementor-accordion .elementor-tab-title .elementor-accordion-icon.elementor-accordion-icon-left{float:left;text-align:left}.elementor-accordion .elementor-tab-title .elementor-accordion-icon .elementor-accordion-icon-closed{display:block}.elementor-accordion .elementor-tab-title .elementor-accordion-icon .elementor-accordion-icon-opened,.elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-closed{display:none}.elementor-accordion .elementor-tab-title.elementor-active .elementor-accordion-icon-opened{display:block}.elementor-accordion .elementor-tab-content{display:none;padding:15px 20px;border-top:1px solid #d4d4d4}@media (max-width:767px){.elementor-accordion .elementor-tab-title{padding:12px 15px}.elementor-accordion .elementor-tab-title .elementor-accordion-icon{width:1.2em}.elementor-accordion .elementor-tab-content{padding:7px 15px}}assets/css/admin.min.css000064400000110102151327220410011212 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-button{font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;font-weight:500;text-transform:uppercase;outline:none;border:none;-webkit-border-radius:3px;border-radius:3px;-webkit-transition-property:background,color,opacity,-webkit-box-shadow;transition-property:background,color,opacity,-webkit-box-shadow;-o-transition-property:background,color,box-shadow,opacity;transition-property:background,color,box-shadow,opacity;transition-property:background,color,box-shadow,opacity,-webkit-box-shadow;-webkit-transition-duration:.3s;-o-transition-duration:.3s;transition-duration:.3s}.elementor-button:hover{border:none}.elementor-button:not([disabled]){cursor:pointer}.elementor-button:not(.elementor-button-state) .elementor-state-icon{display:none}.elementor-button.elementor-button-success{color:#fff}.elementor-button.elementor-button-success[disabled]{background-color:#c2cbd2}.elementor-button.elementor-button-success:not([disabled]){background-color:#39b54a}.elementor-button.elementor-button-success:not([disabled]):hover{opacity:.85;-webkit-box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2);box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2)}.elementor-button.elementor-button-success:not([disabled]):active{-webkit-box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1);box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1)}.elementor-button.elementor-button-warning{background-color:#a4afb7;color:#fff}.elementor-button.elementor-button-warning[disabled]{background-color:#c2cbd2}.elementor-button.elementor-button-warning:not([disabled]):hover{background-color:#b01b1b;opacity:.85;-webkit-box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2);box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2)}.elementor-button.elementor-button-warning:not([disabled]):active{-webkit-box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1);box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1)}.elementor-button.elementor-button-danger{background-color:#d72b3f;color:#fff}.elementor-button.elementor-button-danger[disabled]{background-color:#c2cbd2}.elementor-button.elementor-button-danger:not([disabled]):hover{opacity:.85;-webkit-box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2);box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2)}.elementor-button.elementor-button-danger:not([disabled]):active{-webkit-box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1);box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1)}.elementor-button.elementor-edit-template{display:inline-block;margin-top:15px;color:#fff}.elementor-button.elementor-button-default{background-color:#a4afb7;color:#fff;font-size:11px;padding:7px 21px}.elementor-button.elementor-button-default:hover{background-color:#6d7882;-webkit-box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2);box-shadow:0 0 2px rgba(0,0,0,.12),0 2px 2px rgba(0,0,0,.2)}.elementor-button.elementor-button-default:active{-webkit-box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1);box-shadow:0 5px 10px rgba(0,0,0,.19),0 3px 3px rgba(0,0,0,.1)}.elementor-button.elementor-button-default:visited{color:#fff}.elementor-button.elementor-button-go-pro{background-color:#93003c}.elementor-button i{margin-right:10px}#adminmenu #toplevel_page_elementor div.wp-menu-image:before{content:"\e813";font-family:eicons;font-size:18px;margin-top:1px}#adminmenu #toplevel_page_elementor a[href="admin.php?page=go_elementor_pro"]{font-weight:700}#adminmenu #toplevel_page_elementor a[href="admin.php?page=go_elementor_pro"]:hover{color:#e0005b}#adminmenu #toplevel_page_elementor .dashicons.dashicons-star-filled{height:auto}#adminmenu #menu-posts-elementor_library .wp-menu-image:before{content:"\e8ff";font-family:eicons;font-size:18px}body.admin-color-fresh #adminmenu #toplevel_page_elementor a[href="admin.php?page=go_elementor_pro"]{color:#c60051}.elementor-plugins-gopro{color:#93003c;text-shadow:1px 1px 1px #eee;font-weight:700}#elementor-switch-mode{margin:15px 0}#elementor-editor-button,#elementor-switch-mode-button{outline:none;cursor:pointer}#elementor-editor-button i,#elementor-switch-mode-button i{margin-right:3px;font-size:125%;font-style:normal}body.elementor-editor-active .elementor-switch-mode-off{display:none}body.elementor-editor-active #elementor-switch-mode-button{background-color:#f7f7f7;color:#555;border-color:#ccc;-webkit-box-shadow:0 1px 0 #ccc!important;box-shadow:0 1px 0 #ccc!important;text-shadow:unset}body.elementor-editor-active #elementor-switch-mode-button:hover{background-color:#e9e9e9}body.elementor-editor-active #elementor-switch-mode-button:active{-webkit-box-shadow:inset 0 1px 0 #ccc;box-shadow:inset 0 1px 0 #ccc;-webkit-transform:translateY(1px);-ms-transform:translateY(1px);transform:translateY(1px)}body.elementor-editor-active #postdivrich{display:none!important}body.elementor-editor-active .block-editor-block-list__layout,body.elementor-editor-active .editor-block-list__layout,body.elementor-editor-inactive #elementor-editor,body.elementor-editor-inactive .elementor-switch-mode-on{display:none}body.elementor-editor-active .edit-post-layout__content .edit-post-visual-editor{-ms-flex-preferred-size:auto;flex-basis:auto}body.elementor-editor-active #elementor-editor{margin-bottom:50px}body.elementor-editor-active .edit-post-text-editor__body .editor-post-text-editor{display:none}body .block-editor #elementor-switch-mode{margin:0 15px}body .block-editor #elementor-switch-mode .button{margin:2px;height:33px;font-size:13px;line-height:1}body .block-editor #elementor-switch-mode .button i{padding-right:5px}.elementor-button{font-size:13px;text-decoration:none;padding:15px 40px}#elementor-editor{height:300px;width:100%;-webkit-transition:all .5s ease;-o-transition:all .5s ease;transition:all .5s ease}#elementor-editor .elementor-loader-wrapper{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);width:300px;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}#elementor-editor .elementor-loader{-webkit-border-radius:50%;border-radius:50%;padding:40px;height:150px;width:150px;background-color:hsla(0,0%,100%,.9);-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-box-shadow:2px 2px 20px 4px rgba(0,0,0,.02);box-shadow:2px 2px 20px 4px rgba(0,0,0,.02)}#elementor-editor .elementor-loader-boxes{height:100%;width:100%;position:relative}#elementor-editor .elementor-loader-box{position:absolute;background-color:#d5dadf;-webkit-animation:load 1.8s linear infinite;animation:load 1.8s linear infinite}#elementor-editor .elementor-loader-box:first-of-type{width:20%;height:100%;left:0;top:0}#elementor-editor .elementor-loader-box:not(:first-of-type){right:0;height:20%;width:60%}#elementor-editor .elementor-loader-box:nth-of-type(2){top:0;-webkit-animation-delay:-.45s;animation-delay:-.45s}#elementor-editor .elementor-loader-box:nth-of-type(3){top:40%;-webkit-animation-delay:-.9s;animation-delay:-.9s}#elementor-editor .elementor-loader-box:nth-of-type(4){bottom:0;-webkit-animation-delay:-1.35s;animation-delay:-1.35s}#elementor-editor .elementor-loading-title{color:#a4afb7;text-align:center;text-transform:uppercase;margin-top:30px;letter-spacing:7px;text-indent:7px;font-size:10px;width:100%}#elementor-go-to-edit-page-link{height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;border:1px solid #ddd;background-color:#f7f7f7;text-decoration:none;position:relative;font-family:Sans-serif}#elementor-go-to-edit-page-link:hover{background-color:#fff}#elementor-go-to-edit-page-link:focus{-webkit-box-shadow:none;box-shadow:none}#elementor-go-to-edit-page-link.elementor-animate #elementor-editor-button,#elementor-go-to-edit-page-link:not(.elementor-animate) .elementor-loader-wrapper{display:none}.elementor-button-spinner:before{font:normal 20px/.5 dashicons;speak:none;display:inline-block;padding:0;top:8px;left:-4px;position:relative;vertical-align:top;content:"\f463"}.elementor-button-spinner.loading:before{-webkit-animation:rotation 1s linear infinite;animation:rotation 1s linear infinite}.elementor-button-spinner.success:before{content:"\f147";color:#46b450}.elementor-blank_state{padding:5em 0;margin:auto;max-width:520px;text-align:center;color:#6d7882;font-family:Roboto,sans-serif}.elementor-blank_state i{font-size:50px;color:#a4afb7}.elementor-blank_state h2{font-size:32px;font-weight:300;color:inherit;margin:40px 0 10px;line-height:1.2}.elementor-blank_state p{font-size:16px;font-weight:400;color:#a4afb7;margin-bottom:40px}.elementor-blank_state .elementor-button{display:inline-block}#available-widgets [class*=elementor-template] .widget-title:before{content:"\e813";font-family:eicons;font-size:17px}.elementor-settings-form-page{padding-top:30px}._elementor_settings_update_time,.elementor-settings-form-page:not(.elementor-active){display:none}#confirm_fa_migration_admin_modal .dialog-confirm-ok{color:#6d7882}body.post-type-attachment table.media .column-title .media-icon img[src$=".svg"]{width:100%}.e-major-update-warning{margin-bottom:5px;max-width:1000px;display:-webkit-box;display:-ms-flexbox;display:flex}.e-major-update-warning__separator{margin:15px -12px}.e-major-update-warning__icon{font-size:17px;margin-right:9px;margin-left:2px}.e-major-update-warning__title{font-weight:600;margin-bottom:10px}.e-major-update-warning+p{display:none}.notice-success .e-major-update-warning__separator{border:1px solid #46b450}.notice-success .e-major-update-warning__icon{color:#79ba49}.notice-warning .e-major-update-warning__separator{border:1px solid #ffb900}.notice-warning .e-major-update-warning__icon{color:#f56e28}.plugins table.e-compatibility-update-table tr{background:transparent}.plugins table.e-compatibility-update-table tr th{font-weight:600}.plugins table.e-compatibility-update-table tr td,.plugins table.e-compatibility-update-table tr th{min-width:250px;font-size:13px;background:transparent;-webkit-box-shadow:none;box-shadow:none;border:none;padding:5px 15px 5px 0}:root{--e-focus-color:rgba(0,115,170,0.4);--e-context-primary-color:#0073aa;--e-context-primary-color-dark:#005177;--e-context-primary-tint-4:rgba(0,115,170,0.4);--e-context-primary-tint-1:rgba(0,115,170,0.04);--e-context-success-color:#39b54a;--e-context-success-color-dark:#2d8e3a;--e-context-success-tint-4:rgba(57,181,74,0.4);--e-context-success-tint-1:rgba(57,181,74,0.04);--e-context-info-color:#71d7f7;--e-context-info-color-dark:#41c9f4;--e-context-info-tint-4:rgba(113,215,247,0.4);--e-context-info-tint-1:rgba(113,215,247,0.04);--e-context-warning-color:#fcb92c;--e-context-warning-color-dark:#f2a503;--e-context-warning-tint-4:rgba(252,185,44,0.4);--e-context-warning-tint-1:rgba(252,185,44,0.04);--e-context-error-color:#d72b3f;--e-context-error-color-dark:#ae2131;--e-context-error-tint-4:rgba(215,43,63,0.4);--e-context-error-tint-1:rgba(215,43,63,0.04);--e-context-cta-color:#93003c;--e-context-cta-color-dark:#600027;--e-context-cta-tint-4:rgba(147,0,60,0.4);--e-context-cta-tint-1:rgba(147,0,60,0.04)}.e-getting-started{max-width:900px;padding:2.5em 0;margin:auto;text-align:center}.e-getting-started__header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1)}.e-getting-started__header .e-logo-wrapper{font-size:10px;margin-right:10px}.e-getting-started__title{padding:0 15px;font-weight:600;text-transform:uppercase;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.e-getting-started__skip{border-left:1px solid #eee;font-size:16px;color:inherit}.e-getting-started__skip i{padding:15px}.e-getting-started__content{padding:50px}.e-getting-started__content h2{font-size:2em;margin-top:0}.e-getting-started__content--narrow{max-width:500px;margin:auto}.e-getting-started__video{margin:40px 0 60px}.e-getting-started__video iframe{-webkit-box-shadow:10px 10px 20px rgba(0,0,0,.15);box-shadow:10px 10px 20px rgba(0,0,0,.15)}.e-getting-started__actions .button-primary{margin-right:20px}:root{--e-button-padding-y:0.4375rem;--e-button-padding-x:0.75rem;--e-button-font-size:0.8125rem;--e-button-font-weight:500;--e-button-line-height:0.9375rem;--e-button-border-radius:3px;--e-button-context-color:var(--e-context-primary-color);--e-button-context-color-dark:var(--e-context-primary-color-dark);--e-button-context-tint:var(--e-context-primary-tint-1)}.e-button{display:inline-block;font-weight:var(--e-button-font-weight);text-align:center;white-space:nowrap;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:#fff;border:0;text-decoration:none;background:var(--e-button-context-color);padding:var(--e-button-padding-y) var(--e-button-padding-x);font-size:var(--e-button-font-size);line-height:var(--e-button-line-height);-webkit-border-radius:var(--e-button-border-radius);border-radius:var(--e-button-border-radius);-webkit-transition:background-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;-o-transition:background-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-box-shadow .15s ease-in-out}.e-button:active,.e-button:focus,.e-button:hover{color:#fff;text-decoration:none;background:var(--e-button-context-color-dark)}.e-button.focus,.e-button:focus{outline:0;-webkit-box-shadow:0 0 0 2px var(--e-focus-color);box-shadow:0 0 0 2px var(--e-focus-color)}.e-button.disabled,.e-button:disabled{opacity:.5;-webkit-box-shadow:none;box-shadow:none}.e-button:not(:disabled):not(.disabled){cursor:pointer}.e-button:not(:disabled):not(.disabled).active:focus,.e-button:not(:disabled):not(.disabled):active:focus{-webkit-box-shadow:0 0 0 2px var(--e-focus-color);box-shadow:0 0 0 2px var(--e-focus-color)}.e-button--primary{--e-button-context-color:var(--e-context-primary-color);--e-button-context-color-dark:var(--e-context-primary-color-dark);--e-button-context-tint:var(--e-context-primary-tint-1);--e-focus-color:var(--e-context-primary-tint-4)}.e-button--success{--e-button-context-color:var(--e-context-success-color);--e-button-context-color-dark:var(--e-context-success-color-dark);--e-button-context-tint:var(--e-context-success-tint-1);--e-focus-color:var(--e-context-success-tint-4)}.e-button--info{--e-button-context-color:var(--e-context-info-color);--e-button-context-color-dark:var(--e-context-info-color-dark);--e-button-context-tint:var(--e-context-info-tint-1);--e-focus-color:var(--e-context-info-tint-4)}.e-button--warning{--e-button-context-color:var(--e-context-warning-color);--e-button-context-color-dark:var(--e-context-warning-color-dark);--e-button-context-tint:var(--e-context-warning-tint-1);--e-focus-color:var(--e-context-warning-tint-4)}.e-button--error{--e-button-context-color:var(--e-context-error-color);--e-button-context-color-dark:var(--e-context-error-color-dark);--e-button-context-tint:var(--e-context-error-tint-1);--e-focus-color:var(--e-context-error-tint-4)}.e-button--cta{--e-button-context-color:var(--e-context-cta-color);--e-button-context-color-dark:var(--e-context-cta-color-dark);--e-button-context-tint:var(--e-context-cta-tint-1);--e-focus-color:var(--e-context-cta-tint-4)}.e-button.e-button--outline{color:var(--e-button-context-color);background:none;border:1px solid}.e-button.e-button--outline:focus,.e-button.e-button--outline:hover{color:var(--e-button-context-color-dark);background:var(--e-button-context-tint)}.e-button.e-button--outline.disabled,.e-button.e-button--outline:disabled{color:var(--e-button-context-color-dark);background:#818a91}.e-button>i{line-height:inherit;height:var(--e-button-line-height);width:-webkit-min-content;width:-moz-min-content;width:min-content}.e-button>*+*{-webkit-margin-start:.5ch;margin-inline-start:.5ch}.e-button--link{color:var(--e-button-context-color);background-color:transparent}.e-button--link:focus,.e-button--link:hover{color:var(--e-button-context-color-dark);background:var(--e-button-context-tint)}.e-button--link.disabled,.e-button--link:disabled{color:#818a91}a.e-button.disabled,fieldset:disabled a.e-button{pointer-events:none}:root{--e-notice-bg:#fff;--e-notice-border-color:#ccd0d4;--e-notice-context-color:#93003c;--e-notice-context-tint:var(--e-context-cta-tint-1);--e-notice-box-shadow:0 1px 4px rgba(0,0,0,0.15);--e-notice-dismiss-color:#6d7882}.e-notice{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;font-family:Roboto,Arial,Helvetica,Verdana,sans-serif;background:var(--e-notice-bg);border:1px solid var(--e-notice-border-color);border-inline-start-width:4px;-webkit-box-shadow:var(--e-notice-box-shadow);box-shadow:var(--e-notice-box-shadow);margin:5px 20px 5px 2px}.e-notice.notice{padding:0}.e-notice:before{display:block;content:"";position:absolute;left:-4px;top:-1px;bottom:-1px;width:4px;background-color:var(--e-notice-context-color)}.e-notice--primary{--e-notice-context-color:var(--e-context-primary-color);--e-notice-context-color-dark:var(--e-context-primary-color-dark);--e-notice-context-tint:var(--e-context-primary-tint-1)}.e-notice--success{--e-notice-context-color:var(--e-context-success-color);--e-notice-context-color-dark:var(--e-context-success-color-dark);--e-notice-context-tint:var(--e-context-success-tint-1)}.e-notice--info{--e-notice-context-color:var(--e-context-info-color);--e-notice-context-color-dark:var(--e-context-info-color-dark);--e-notice-context-tint:var(--e-context-info-tint-1)}.e-notice--warning{--e-notice-context-color:var(--e-context-warning-color);--e-notice-context-color-dark:var(--e-context-warning-color-dark);--e-notice-context-tint:var(--e-context-warning-tint-1)}.e-notice--error{--e-notice-context-color:var(--e-context-error-color);--e-notice-context-color-dark:var(--e-context-error-color-dark);--e-notice-context-tint:var(--e-context-error-tint-1)}.e-notice--cta{--e-notice-context-color:var(--e-context-cta-color);--e-notice-context-color-dark:var(--e-context-cta-color-dark);--e-notice-context-tint:var(--e-context-cta-tint-1)}.e-notice--extended{--e-notice-is-extended:1}.e-notice--dismissible{padding-right:38px}.e-notice__aside{overflow:hidden;background-color:var(--e-notice-context-tint);width:calc(var(--e-notice-is-extended, 0) * 50px);text-align:center;padding-top:15px;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0}.e-notice__icon-wrapper{display:inline-block;font-size:.625rem;max-height:1.5rem;width:1.5rem;line-height:1.5rem;-webkit-border-radius:100px;border-radius:100px;background:var(--e-notice-context-color);color:#fff;text-shadow:0 0 3px var(--e-notice-context-color-dark),0 0 1px var(--e-notice-context-color-dark),0 0 1px var(--e-notice-context-color-dark)}.e-notice__content{padding:20px}.e-notice__actions{display:-webkit-box;display:-ms-flexbox;display:flex}.e-notice__actions>*+*{-webkit-margin-start:8px;margin-inline-start:8px}.e-notice__dismiss{width:20px;height:20px;line-height:20px;font-size:.8125rem;text-align:center;background:none;display:block;position:absolute;top:0;right:1px;border:none;margin:0;padding:9px;cursor:pointer;font-style:normal}.e-notice__dismiss:before{font-family:eicons;display:inline-block;content:"\e87f";color:var(--e-notice-dismiss-color);width:20px;-webkit-border-radius:20px;border-radius:20px;speak:none;text-align:center;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.e-notice__dismiss:active:before,.e-notice__dismiss:focus:before,.e-notice__dismiss:hover:before{font-weight:700}.e-notice__dismiss:focus:before{color:#fff;background:var(--e-notice-dismiss-color);outline:none}.e-notice__dismiss:focus{outline:none}.e-notice p{line-height:1.2;padding:0;margin:0}.e-notice p+.e-notice__actions{margin-top:1rem}.e-notice h3{font-size:1.0625rem;line-height:1.2;margin:0}.e-notice h3+p{margin-top:8px}.elementor-admin-alert{padding:15px;border-left:5px solid transparent;position:relative;font-size:12px;line-height:1.5;text-align:left}.elementor-admin-alert a{color:inherit}.elementor-admin-alert.elementor-alert-info{color:#31708f;background-color:#d9edf7;border-color:#bcdff1}.elementor-admin-alert.elementor-alert-success{color:#3c763d;background-color:#dff0d8;border-color:#cae6be}.elementor-admin-alert.elementor-alert-warning{color:#8a6d3b;background-color:#fcf8e3;border-color:#f9f0c3}.elementor-admin-alert.elementor-alert-danger{color:#a94442;background-color:#f2dede;border-color:#e8c4c4}#elementor-system-info{padding:15px}#elementor-system-info .elementor-system-info-section{margin-bottom:10px}#elementor-system-info .elementor-system-info-section>.elementor-system-info-report-name{padding-left:10px;border-bottom:1px solid #e1e1e1}#elementor-system-info .elementor-system-info-section .widefat{white-space:pre}#elementor-system-info .elementor-system-info-section .elementor-log-entries{white-space:pre-wrap}#elementor-system-info .elementor-system-info-section:not(.elementor-system-info-log) tbody td:first-child{width:300px}#elementor-system-info .elementor-system-info-report-name{text-transform:uppercase;font-size:14px;margin:0;line-height:2}#elementor-system-info .elementor-system-info-report-row{overflow:hidden;padding:5px 0}#elementor-system-info .elementor-system-info-report-row>*{float:left}#elementor-system-info .elementor-system-info-field-recommendation,#elementor-system-info .elementor-system-info-report-field{padding-left:10px;color:#7f7f7f}#elementor-system-info .elementor-system-info-report-fields{padding-left:20px}#elementor-system-info .elementor-system-info-plugin-name{color:#000}#elementor-system-info .elementor-system-info-plugin-properties{padding:10px}#elementor-system-info #elementor-system-info-raw-code{width:100%;height:200px}#elementor-system-info #elementor-system-info-raw-code-label{padding:5px;display:block}#elementor-system-info .elementor-warning td:first-child{border-left:3px solid #fcb92c}#elementor-system-info a.box-title-tool{font-size:80%;margin-left:15px;color:#818a91}#elementor-system-info a.box-title-tool:hover{text-decoration:underline}#elementor-system-info #elementor-usage-recalc{font-size:12px;color:#fff;background-color:#a4afb7;padding:4px 18px 5px;-webkit-border-radius:3px;border-radius:3px}@-webkit-keyframes elementor-rotation{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes elementor-rotation{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}#elementor-deactivate-feedback-dialog-wrapper{display:none}#elementor-deactivate-feedback-modal .dialog-widget-content{width:550px}#elementor-deactivate-feedback-modal .dialog-header{padding:18px 15px;-webkit-box-shadow:0 0 8px rgba(0,0,0,.1);box-shadow:0 0 8px rgba(0,0,0,.1);text-align:left}#elementor-deactivate-feedback-modal .dialog-message{padding:30px 30px 0;text-align:left}#elementor-deactivate-feedback-modal .elementor-deactivate-feedback-dialog-input{float:left;margin:0 15px 0 0;-webkit-box-shadow:none;box-shadow:none}#elementor-deactivate-feedback-modal .elementor-deactivate-feedback-dialog-input:not(:checked)~.elementor-feedback-text{display:none}#elementor-deactivate-feedback-modal .elementor-deactivate-feedback-dialog-label{display:block;font-size:13px;color:#6d7882}#elementor-deactivate-feedback-modal .elementor-feedback-text{margin:10px 0 0 30px;padding:5px;font-size:13px;-webkit-box-shadow:none;box-shadow:none;background-color:#fff;width:92%}#elementor-deactivate-feedback-modal .dialog-buttons-wrapper{border-top:none;text-align:left;padding:20px 30px 30px;overflow:hidden}#elementor-deactivate-feedback-modal .dialog-submit{background-color:#93003c;-webkit-border-radius:3px;border-radius:3px;color:#fff;line-height:1;padding:12px 20px;font-size:13px;width:180px;height:38px}#elementor-deactivate-feedback-modal .dialog-submit.elementor-loading:before{display:inline-block;content:"\f463";font:18px dashicons;-webkit-animation:elementor-rotation 2s linear infinite;animation:elementor-rotation 2s linear infinite}#elementor-deactivate-feedback-modal .dialog-skip{font-size:12px;color:#a4afb7;background:none;float:right;width:auto}#elementor-deactivate-feedback-modal[data-feedback-selected=elementor_pro] .elementor-feedback-text{color:#b01b1b;padding:0}#elementor-deactivate-feedback-modal[data-feedback-selected=elementor_pro] .dialog-submit{display:none}#elementor-deactivate-feedback-dialog-header i{color:#93003c;font-size:19px}#elementor-deactivate-feedback-dialog-header-title{font-size:15px;text-transform:uppercase;font-weight:700;padding-left:5px}#elementor-deactivate-feedback-dialog-form-caption{font-weight:700;font-size:15px;color:#495157;line-height:1.4}#elementor-deactivate-feedback-dialog-form-body{padding-top:30px}.elementor-deactivate-feedback-dialog-input-wrapper{line-height:1;overflow:hidden;margin-bottom:15px}#elementor-hidden-area{display:none}#elementor-import-template-trigger{cursor:pointer}#elementor-import-template-area{display:none;margin:50px 0 30px;text-align:center}#elementor-import-template-form{display:inline-block;margin-top:30px;padding:30px 50px;background-color:#fff;border:1px solid #e5e5e5}#elementor-import-template-title{font-size:18px;color:#555d66}.form-table:not(.elementor-maintenance-mode-is-enabled) .elementor-default-hide{display:none}.elementor-maintenance-mode-error{color:red;line-height:1.6;display:none}#tab-fontawesome4_migration.elementor-active~p.submit,#tab-import-export-kit.elementor-active~p.submit,#tab-replace_url.elementor-active~p.submit{display:none}#elementor_replace_url>div,#elementor_rollback>div,#elementor_rollback_pro>div{display:-webkit-box;display:-ms-flexbox;display:flex}#elementor_replace_url>div input,#elementor_replace_url>div select,#elementor_rollback>div input,#elementor_rollback>div select,#elementor_rollback_pro>div input,#elementor_rollback_pro>div select{margin-right:6px}.tab-import-export-kit__wrapper{margin:40px 0;max-width:700px}.tab-import-export-kit__container{background-color:#fff;font-size:16px;max-width:700px;padding:30px}.tab-import-export-kit__container:not(:first-child){margin-top:5px}.tab-import-export-kit__container p{color:#a4afb7;font-size:16px;margin:20px 0 25px}.tab-import-export-kit__info{font-size:14px}.tab-import-export-kit__container a:not(.elementor-button),.tab-import-export-kit__info a{color:#58d0f5;text-decoration:underline}.tab-import-export-kit__box{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.tab-import-export-kit__box h2{color:#6d7882;font-size:28px;font-weight:400;line-height:1;margin:0}.tab-import-export-kit__box .elementor-button.elementor-button-success{font-weight:700;padding:8px 16px;text-transform:none}#dashboard-widgets .e-dashboard-widget h3.e-heading{font-weight:600;margin-bottom:13px}#dashboard-widgets .e-dashboard-widget .e-divider_bottom{border-bottom:1px solid #eee;margin:0 -12px;padding:6px 12px}#dashboard-widgets .e-dashboard-widget .e-divider_top{border-top:1px solid #eee;margin:0 -12px;padding:6px 12px}#dashboard-widgets .e-dashboard-widget .e-news-feed-wrap .e-divider_top,#dashboard-widgets .e-dashboard-widget .e-quick-actions-wrap .e-divider_top{padding-top:18px;margin-top:18px}.e-dashboard-widget .dashicons{color:#606a73}.e-dashboard-widget ul.e-action-list li{margin-top:14px}.e-dashboard-widget ul.e-action-list li a{margin-left:5px}#e-dashboard-overview .dashicons{vertical-align:middle;font-size:17px}#e-dashboard-overview .e-overview__header{display:table;width:100%;-webkit-box-shadow:0 5px 8px rgba(0,0,0,.05);box-shadow:0 5px 8px rgba(0,0,0,.05);margin:0 -12px 8px;padding:0 12px 12px}#e-dashboard-overview .e-overview__create,#e-dashboard-overview .e-overview__logo,#e-dashboard-overview .e-overview__versions{display:table-cell;vertical-align:middle}#e-dashboard-overview .e-overview__logo{width:30px}#e-dashboard-overview .e-overview__versions{padding:0 10px;font-size:.9em;line-height:1.5}#e-dashboard-overview .e-overview__version{display:block}#e-dashboard-overview .e-overview__create{text-align:right}#e-dashboard-overview .e-overview__feed{font-size:14px;font-weight:500}#e-dashboard-overview .e-overview__post{margin-top:10px}#e-dashboard-overview .e-overview__post-link{display:inline-block}#e-dashboard-overview .e-overview__badge{background:#39b54a;color:#fff;font-size:.75em;padding:3px 6px;-webkit-border-radius:3px;border-radius:3px;text-transform:uppercase}#e-dashboard-overview .e-overview__post-description{margin:0 0 1.5em}#e-dashboard-overview .e-overview__recently-edited li{color:#72777c}#e-dashboard-overview .e-overview__footer.e-divider_top{padding-top:12px;padding-bottom:0}#e-dashboard-overview .e-overview__footer ul{display:-webkit-box;display:-ms-flexbox;display:flex;list-style:none;margin:0;padding:0}#e-dashboard-overview .e-overview__footer ul li{padding:0 10px;margin:0;border-left:1px solid #ddd}#e-dashboard-overview .e-overview__footer ul li:first-child{padding-left:0;border:none}#e-dashboard-overview .e-overview__go-pro a{color:#93003c;font-weight:500}.post-type-elementor_library #elementor-template-library-tabs-wrapper{padding-top:2em;margin-bottom:2em}.post-type-elementor_library th#taxonomy-elementor_library_category{width:110px}#elementor-new-template-modal .dialog-message{max-height:70vh}#elementor-new-template-dialog-content{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:100%;text-align:left;color:#6d7882}@media (max-width:1439px){#elementor-new-template-dialog-content{padding:0 50px}}@media (min-width:1440px){#elementor-new-template-dialog-content{padding:0 120px}}#elementor-new-template__description{width:35%;max-width:300px;padding-right:100px}#elementor-new-template__description__title{font-size:30px;color:#556068}#elementor-new-template__description__title span{font-weight:700}#elementor-new-template__description__content{font-size:16px;padding:30px 0}#elementor-new-template__take_a_tour{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-size:15px}#elementor-new-template__take_a_tour i{color:#93003c;font-size:30px}#elementor-new-template__take_a_tour a{color:#6d7882;padding-left:10px;text-decoration:none;font-weight:500}#elementor-new-template__form{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:440px;padding:55px;background-color:#fff;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 2px 30px 0 rgba(0,0,0,.08);box-shadow:0 2px 30px 0 rgba(0,0,0,.08)}#elementor-new-template__form__title{font-size:23px;color:#556068}#elementor-new-template__form__template-type.elementor-form-field__select{max-width:none}#elementor-new-template__form .elementor-form-field__label{display:block;margin:25px 0 7px;font-size:14px;line-height:1}#elementor-new-template__form .elementor-form-field input,#elementor-new-template__form .elementor-form-field select{width:100%;height:50px;padding:10px;font-size:14px;-webkit-box-shadow:none;box-shadow:none;-webkit-border-radius:3px;border-radius:3px;background:none;color:#495157;border:1px solid;outline:none}#elementor-new-template__form .elementor-form-field input:not(:focus),#elementor-new-template__form .elementor-form-field select:not(:focus){border-color:#d5dadf}#elementor-new-template__form .elementor-form-field input:focus,#elementor-new-template__form .elementor-form-field select:focus{border-color:#a4afb7}#elementor-new-template__form .elementor-form-field__select{appearance:none;-webkit-appearance:none;-moz-appearance:none;cursor:pointer}#elementor-new-template__form .elementor-form-field__select__wrapper{position:relative}#elementor-new-template__form .elementor-form-field__select__wrapper:after{font-family:eicons;content:"\e8ad";position:absolute;top:50%;right:10px;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}#elementor-new-template__form__submit{width:100%;height:50px;margin-top:25px}@media (max-width:1024px){#elementor-new-template__description{max-width:250px;padding-right:30px}}@media (max-width:767px){#elementor-new-template__description{display:none}}#elementor-role-manager{max-width:500px;margin-top:50px}#elementor-role-manager h3{color:#6d7882;font-weight:400;font-size:22px}#elementor-role-manager .elementor-settings-form-page{padding:0}#elementor-role-manager .elementor-role-row{background:#fff;color:#6d7882;margin-bottom:2px}#elementor-role-manager .elementor-role-row .elementor-role-label{display:-webkit-box;display:-ms-flexbox;display:flex;padding:15px 20px;font-weight:500;cursor:pointer}#elementor-role-manager .elementor-role-row .elementor-role-label span.elementor-role-name{padding-right:20px}#elementor-role-manager .elementor-role-row .elementor-role-label span.elementor-role-toggle{text-align:right;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}#elementor-role-manager .elementor-role-row .elementor-role-label span.elementor-role-excluded-indicator{color:#a4afb7}#elementor-role-manager .elementor-role-row .elementor-role-controls{background-color:#f7f7f7;padding:20px 20px 5px}#elementor-role-manager .elementor-role-row .elementor-role-controls>div{margin-bottom:15px}#elementor-role-manager .elementor-role-row .elementor-role-controls .elementor-role-go-pro{display:-webkit-box;display:-ms-flexbox;display:flex}#elementor-role-manager .elementor-role-row .elementor-role-controls .elementor-role-go-pro .elementor-role-go-pro__desc{font-weight:500;font-style:italic}#elementor-role-manager .elementor-role-row .elementor-role-controls .elementor-role-go-pro .elementor-role-go-pro__link{text-align:right;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}#elementor-beta-tester-modal .elementor-templates-modal__header__items-area{color:#c2cbd2;cursor:pointer}#elementor-beta-tester-modal .elementor-templates-modal__header__items-area:hover .elementor-beta-tester-do-not-show-again,#elementor-beta-tester-modal .elementor-templates-modal__header__items-area:hover .elementor-templates-modal__header__item>i{color:#6d7882}#elementor-beta-tester-modal .elementor-templates-modal__header__items-area .elementor-templates-modal__header__close{border:none}#elementor-beta-tester-modal .elementor-templates-modal__header__items-area .elementor-beta-tester-do-not-show-again{text-transform:uppercase;font-weight:700;font-size:12px;-webkit-transition:all .3s;-o-transition:all .3s;transition:all .3s}#elementor-beta-tester-modal .dialog-lightbox-widget-content{max-width:500px;height:auto}#elementor-beta-tester-modal .dialog-lightbox-message{padding:40px;height:300px;background-color:#fff}#elementor-beta-tester-form__caption{font-weight:700;font-size:20px;color:#495157}#elementor-beta-tester-form__description{font-size:15px;color:#6d7882;margin-top:10px}#elementor-beta-tester-form__input-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;margin-top:30px}#elementor-beta-tester-form__input-wrapper .elementor-button{-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}#elementor-beta-tester-form__email{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;border:1px solid #d5dadf;border-right:0;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px;margin:0;padding:10px;height:50px}#elementor-beta-tester-form__terms{margin-top:40px;font-size:11px;color:#a4afb7}.e-experiment__title{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.e-experiment__title__indicator{height:10px;width:10px;-webkit-border-radius:50%;border-radius:50%;border:2px solid #fff;-webkit-box-shadow:0 2px 4px rgba(0,0,0,.1);box-shadow:0 2px 4px rgba(0,0,0,.1);margin-top:2px}.e-experiment__title__indicator--active{background:#39b54a}.e-experiment__title__label{margin-left:10px}.e-experiment__description{max-width:800px}.e-experiment__status{margin-top:5px;font-size:13px;font-weight:700;font-style:italic}.e-landing-pages-empty .elementor-blank_state{padding:5em 0 2em}.e-landing-pages-empty .e-trashed-items{text-align:center}assets/css/widget-text-editor-rtl.min.css000064400000001300151327220410014451 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:#818a91;color:#fff}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap{color:#818a91;border:3px solid;background-color:transparent}.elementor-widget-text-editor:not(.elementor-drop-cap-view-default) .elementor-drop-cap{margin-top:8px}.elementor-widget-text-editor:not(.elementor-drop-cap-view-default) .elementor-drop-cap-letter{width:1em;height:1em}.elementor-widget-text-editor .elementor-drop-cap{float:right;text-align:center;line-height:1;font-size:50px}.elementor-widget-text-editor .elementor-drop-cap-letter{display:inline-block}assets/js/editor-modules.js000064400001046413151327220410011762 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
/******/ (() => { // webpackBootstrap
/******/ 	var __webpack_modules__ = ({

/***/ "../node_modules/@babel/runtime-corejs2/core-js/array/from.js":
/*!********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/array/from.js ***!
  \********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/array/from */ "../node_modules/core-js/library/fn/array/from.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/array/is-array */ "../node_modules/core-js/library/fn/array/is-array.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/create.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/create.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/create */ "../node_modules/core-js/library/fn/object/create.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js":
/*!********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js ***!
  \********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/define-property */ "../node_modules/core-js/library/fn/object/define-property.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/entries.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/entries */ "../node_modules/core-js/library/fn/object/entries.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js":
/*!********************************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js ***!
  \********************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/get-own-property-descriptor */ "../node_modules/core-js/library/fn/object/get-own-property-descriptor.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/get-prototype-of.js":
/*!*********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/get-prototype-of.js ***!
  \*********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/get-prototype-of */ "../node_modules/core-js/library/fn/object/get-prototype-of.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/keys.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/keys */ "../node_modules/core-js/library/fn/object/keys.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js":
/*!*********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js ***!
  \*********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/set-prototype-of */ "../node_modules/core-js/library/fn/object/set-prototype-of.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/values.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/values */ "../node_modules/core-js/library/fn/object/values.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js":
/*!***************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js ***!
  \***************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/reflect/construct */ "../node_modules/core-js/library/fn/reflect/construct.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/reflect/get.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/reflect/get.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/reflect/get */ "../node_modules/core-js/library/fn/reflect/get.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js":
/*!****************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/symbol.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/symbol */ "../node_modules/core-js/library/fn/symbol/index.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/symbol/has-instance.js":
/*!*****************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/symbol/has-instance.js ***!
  \*****************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/symbol/has-instance */ "../node_modules/core-js/library/fn/symbol/has-instance.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js":
/*!*************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js ***!
  \*************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/symbol/iterator */ "../node_modules/core-js/library/fn/symbol/iterator.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/arrayLikeToArray.js":
/*!**************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/arrayLikeToArray.js ***!
  \**************************************************************************/
/***/ ((module) => {

function _arrayLikeToArray(arr, len) {
  if (len == null || len > arr.length) len = arr.length;

  for (var i = 0, arr2 = new Array(len); i < len; i++) {
    arr2[i] = arr[i];
  }

  return arr2;
}

module.exports = _arrayLikeToArray;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/arrayWithHoles.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/arrayWithHoles.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Array$isArray = __webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js");

function _arrayWithHoles(arr) {
  if (_Array$isArray(arr)) return arr;
}

module.exports = _arrayWithHoles;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js":
/*!*******************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js ***!
  \*******************************************************************************/
/***/ ((module) => {

function _assertThisInitialized(self) {
  if (self === void 0) {
    throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
  }

  return self;
}

module.exports = _assertThisInitialized;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js ***!
  \************************************************************************/
/***/ ((module) => {

function _classCallCheck(instance, Constructor) {
  if (!(instance instanceof Constructor)) {
    throw new TypeError("Cannot call a class as a function");
  }
}

module.exports = _classCallCheck;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/createClass.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

function _defineProperties(target, props) {
  for (var i = 0; i < props.length; i++) {
    var descriptor = props[i];
    descriptor.enumerable = descriptor.enumerable || false;
    descriptor.configurable = true;
    if ("value" in descriptor) descriptor.writable = true;

    _Object$defineProperty(target, descriptor.key, descriptor);
  }
}

function _createClass(Constructor, protoProps, staticProps) {
  if (protoProps) _defineProperties(Constructor.prototype, protoProps);
  if (staticProps) _defineProperties(Constructor, staticProps);
  return Constructor;
}

module.exports = _createClass;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/createForOfIteratorHelper.js":
/*!***********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/createForOfIteratorHelper.js ***!
  \***********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Symbol = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol */ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js");

var _Symbol$iterator = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/iterator */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js");

var _Array$isArray = __webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js");

var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js");

function _createForOfIteratorHelper(o, allowArrayLike) {
  var it = typeof _Symbol !== "undefined" && o[_Symbol$iterator] || o["@@iterator"];

  if (!it) {
    if (_Array$isArray(o) || (it = unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") {
      if (it) o = it;
      var i = 0;

      var F = function F() {};

      return {
        s: F,
        n: function n() {
          if (i >= o.length) return {
            done: true
          };
          return {
            done: false,
            value: o[i++]
          };
        },
        e: function e(_e) {
          throw _e;
        },
        f: F
      };
    }

    throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
  }

  var normalCompletion = true,
      didErr = false,
      err;
  return {
    s: function s() {
      it = it.call(o);
    },
    n: function n() {
      var step = it.next();
      normalCompletion = step.done;
      return step;
    },
    e: function e(_e2) {
      didErr = true;
      err = _e2;
    },
    f: function f() {
      try {
        if (!normalCompletion && it["return"] != null) it["return"]();
      } finally {
        if (didErr) throw err;
      }
    }
  };
}

module.exports = _createForOfIteratorHelper;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/createSuper.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Reflect$construct = __webpack_require__(/*! @babel/runtime-corejs2/core-js/reflect/construct */ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js");

var getPrototypeOf = __webpack_require__(/*! ./getPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js");

var isNativeReflectConstruct = __webpack_require__(/*! ./isNativeReflectConstruct.js */ "../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js");

var possibleConstructorReturn = __webpack_require__(/*! ./possibleConstructorReturn.js */ "../node_modules/@babel/runtime-corejs2/helpers/possibleConstructorReturn.js");

function _createSuper(Derived) {
  var hasNativeReflectConstruct = isNativeReflectConstruct();
  return function _createSuperInternal() {
    var Super = getPrototypeOf(Derived),
        result;

    if (hasNativeReflectConstruct) {
      var NewTarget = getPrototypeOf(this).constructor;
      result = _Reflect$construct(Super, arguments, NewTarget);
    } else {
      result = Super.apply(this, arguments);
    }

    return possibleConstructorReturn(this, result);
  };
}

module.exports = _createSuper;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

function _defineProperty(obj, key, value) {
  if (key in obj) {
    _Object$defineProperty(obj, key, {
      value: value,
      enumerable: true,
      configurable: true,
      writable: true
    });
  } else {
    obj[key] = value;
  }

  return obj;
}

module.exports = _defineProperty;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/get.js":
/*!*************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/get.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Reflect$get = __webpack_require__(/*! @babel/runtime-corejs2/core-js/reflect/get */ "../node_modules/@babel/runtime-corejs2/core-js/reflect/get.js");

var _Object$getOwnPropertyDescriptor = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-own-property-descriptor */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js");

var superPropBase = __webpack_require__(/*! ./superPropBase.js */ "../node_modules/@babel/runtime-corejs2/helpers/superPropBase.js");

function _get(target, property, receiver) {
  if (typeof Reflect !== "undefined" && _Reflect$get) {
    module.exports = _get = _Reflect$get;
    module.exports.default = module.exports, module.exports.__esModule = true;
  } else {
    module.exports = _get = function _get(target, property, receiver) {
      var base = superPropBase(target, property);
      if (!base) return;

      var desc = _Object$getOwnPropertyDescriptor(base, property);

      if (desc.get) {
        return desc.get.call(receiver);
      }

      return desc.value;
    };

    module.exports.default = module.exports, module.exports.__esModule = true;
  }

  return _get(target, property, receiver || target);
}

module.exports = _get;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$setPrototypeOf = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/set-prototype-of */ "../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js");

var _Object$getPrototypeOf = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-prototype-of */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-prototype-of.js");

function _getPrototypeOf(o) {
  module.exports = _getPrototypeOf = _Object$setPrototypeOf ? _Object$getPrototypeOf : function _getPrototypeOf(o) {
    return o.__proto__ || _Object$getPrototypeOf(o);
  };
  module.exports.default = module.exports, module.exports.__esModule = true;
  return _getPrototypeOf(o);
}

module.exports = _getPrototypeOf;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js":
/*!******************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/inherits.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$create = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/create */ "../node_modules/@babel/runtime-corejs2/core-js/object/create.js");

var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js");

function _inherits(subClass, superClass) {
  if (typeof superClass !== "function" && superClass !== null) {
    throw new TypeError("Super expression must either be null or a function");
  }

  subClass.prototype = _Object$create(superClass && superClass.prototype, {
    constructor: {
      value: subClass,
      writable: true,
      configurable: true
    }
  });
  if (superClass) setPrototypeOf(subClass, superClass);
}

module.exports = _inherits;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js":
/*!*******************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js ***!
  \*******************************************************************************/
/***/ ((module) => {

function _interopRequireDefault(obj) {
  return obj && obj.__esModule ? obj : {
    "default": obj
  };
}

module.exports = _interopRequireDefault;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js":
/*!**********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js ***!
  \**********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Reflect$construct = __webpack_require__(/*! @babel/runtime-corejs2/core-js/reflect/construct */ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js");

function _isNativeReflectConstruct() {
  if (typeof Reflect === "undefined" || !_Reflect$construct) return false;
  if (_Reflect$construct.sham) return false;
  if (typeof Proxy === "function") return true;

  try {
    Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {}));
    return true;
  } catch (e) {
    return false;
  }
}

module.exports = _isNativeReflectConstruct;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/iterableToArrayLimit.js":
/*!******************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/iterableToArrayLimit.js ***!
  \******************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Symbol = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol */ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js");

var _Symbol$iterator = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/iterator */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js");

function _iterableToArrayLimit(arr, i) {
  var _i = arr == null ? null : typeof _Symbol !== "undefined" && arr[_Symbol$iterator] || arr["@@iterator"];

  if (_i == null) return;
  var _arr = [];
  var _n = true;
  var _d = false;

  var _s, _e;

  try {
    for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {
      _arr.push(_s.value);

      if (i && _arr.length === i) break;
    }
  } catch (err) {
    _d = true;
    _e = err;
  } finally {
    try {
      if (!_n && _i["return"] != null) _i["return"]();
    } finally {
      if (_d) throw _e;
    }
  }

  return _arr;
}

module.exports = _iterableToArrayLimit;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/nonIterableRest.js":
/*!*************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/nonIterableRest.js ***!
  \*************************************************************************/
/***/ ((module) => {

function _nonIterableRest() {
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
}

module.exports = _nonIterableRest;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/possibleConstructorReturn.js":
/*!***********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/possibleConstructorReturn.js ***!
  \***********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _typeof = __webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js").default;

var assertThisInitialized = __webpack_require__(/*! ./assertThisInitialized.js */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js");

function _possibleConstructorReturn(self, call) {
  if (call && (_typeof(call) === "object" || typeof call === "function")) {
    return call;
  }

  return assertThisInitialized(self);
}

module.exports = _possibleConstructorReturn;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$setPrototypeOf = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/set-prototype-of */ "../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js");

function _setPrototypeOf(o, p) {
  module.exports = _setPrototypeOf = _Object$setPrototypeOf || function _setPrototypeOf(o, p) {
    o.__proto__ = p;
    return o;
  };

  module.exports.default = module.exports, module.exports.__esModule = true;
  return _setPrototypeOf(o, p);
}

module.exports = _setPrototypeOf;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var arrayWithHoles = __webpack_require__(/*! ./arrayWithHoles.js */ "../node_modules/@babel/runtime-corejs2/helpers/arrayWithHoles.js");

var iterableToArrayLimit = __webpack_require__(/*! ./iterableToArrayLimit.js */ "../node_modules/@babel/runtime-corejs2/helpers/iterableToArrayLimit.js");

var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js");

var nonIterableRest = __webpack_require__(/*! ./nonIterableRest.js */ "../node_modules/@babel/runtime-corejs2/helpers/nonIterableRest.js");

function _slicedToArray(arr, i) {
  return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();
}

module.exports = _slicedToArray;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/superPropBase.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/superPropBase.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var getPrototypeOf = __webpack_require__(/*! ./getPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js");

function _superPropBase(object, property) {
  while (!Object.prototype.hasOwnProperty.call(object, property)) {
    object = getPrototypeOf(object);
    if (object === null) break;
  }

  return object;
}

module.exports = _superPropBase;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js":
/*!****************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/typeof.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Symbol = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol */ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js");

var _Symbol$iterator = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/iterator */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js");

function _typeof(obj) {
  "@babel/helpers - typeof";

  if (typeof _Symbol === "function" && typeof _Symbol$iterator === "symbol") {
    module.exports = _typeof = function _typeof(obj) {
      return typeof obj;
    };

    module.exports.default = module.exports, module.exports.__esModule = true;
  } else {
    module.exports = _typeof = function _typeof(obj) {
      return obj && typeof _Symbol === "function" && obj.constructor === _Symbol && obj !== _Symbol.prototype ? "symbol" : typeof obj;
    };

    module.exports.default = module.exports, module.exports.__esModule = true;
  }

  return _typeof(obj);
}

module.exports = _typeof;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js":
/*!************************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js ***!
  \************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Array$from = __webpack_require__(/*! @babel/runtime-corejs2/core-js/array/from */ "../node_modules/@babel/runtime-corejs2/core-js/array/from.js");

var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/arrayLikeToArray.js");

function _unsupportedIterableToArray(o, minLen) {
  if (!o) return;
  if (typeof o === "string") return arrayLikeToArray(o, minLen);
  var n = Object.prototype.toString.call(o).slice(8, -1);
  if (n === "Object" && o.constructor) n = o.constructor.name;
  if (n === "Map" || n === "Set") return _Array$from(o);
  if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);
}

module.exports = _unsupportedIterableToArray;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../assets/dev/js/editor/container/container.js":
/*!******************************************************!*\
  !*** ../assets/dev/js/editor/container/container.js ***!
  \******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty2 = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty2(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

__webpack_require__(/*! core-js/modules/es6.string.starts-with.js */ "../node_modules/core-js/modules/es6.string.starts-with.js");

__webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");

__webpack_require__(/*! core-js/modules/es6.regexp.to-string.js */ "../node_modules/core-js/modules/es6.regexp.to-string.js");

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

__webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js"));

var _createForOfIteratorHelper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createForOfIteratorHelper */ "../node_modules/@babel/runtime-corejs2/helpers/createForOfIteratorHelper.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _defineProperty3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _argsObject = _interopRequireDefault(__webpack_require__(/*! ../../modules/imports/args-object */ "../assets/dev/js/modules/imports/args-object.js"));

var _panel = _interopRequireDefault(__webpack_require__(/*! ./panel */ "../assets/dev/js/editor/container/panel.js"));

/**
 * TODO: ViewsOptions
 * @typedef {(Marionette.View|Marionette.CompositeView|BaseElementView|SectionView|BaseContainer)} ViewsOptions
 */
var Container = /*#__PURE__*/function (_ArgsObject) {
  (0, _inherits2.default)(Container, _ArgsObject);

  var _super = (0, _createSuper2.default)(Container);

  // TODO: Swap those backwards compatibility is required.

  /**
   * Container type.
   *
   * @type {string}
   */

  /**
   * Container id.
   *
   * @type {string}
   */

  /**
   * Document Object.
   *
   * @type  {{}}
   */

  /**
   * Container model.
   *
   * @type {Backbone.Model}
   */

  /**
   * Container settings.
   *
   * @type {Backbone.Model}
   */

  /**
   * Container view.
   *
   * @type {ViewsOptions}
   */

  /**
   * Container parent.
   *
   * @type {Container}
   */

  /**
   * Container children(s).
   *
   * @type {Array}
   */

  /**
   * Container dynamic.
   *
   * @type {Backbone.Model}
   */

  /**
   * Container globals.
   *
   * @type {Backbone.Model}
   */

  /**
   * Container label.
   *
   * @type {string}
   */

  /**
   * Container controls.
   *
   * @type {{}}
   */

  /**
   * Repeaters containers
   *
   * @type {{}}
   */

  /**
   * Container renderer (The one who render).
   *
   * @type {Container}
   */

  /**
   * Container panel.
   *
   * @type {Panel}
   */

  /**
   * Controls placeholders.
   *
   * @type {{}}
   */

  /**
   * Function constructor().
   *
   * Create container.
   *
   * @param {{}} args
   *
   * @throws {Error}
   */
  function Container(args) {
    var _this;

    (0, _classCallCheck2.default)(this, Container);
    _this = _super.call(this, args); // Validate args.

    (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "type", void 0);
    (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "id", void 0);
    (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "document", void 0);
    (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "model", void 0);
    (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "settings", void 0);
    (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "view", void 0);
    (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "parent", void 0);
    (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "children", []);
    (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "dynamic", void 0);
    (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "globals", void 0);
    (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "label", void 0);
    (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "controls", {});
    (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "repeaters", {});
    (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "renderer", void 0);
    (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "panel", void 0);
    (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "placeholders", {});

    _this.validateArgs(args);

    args = (0, _entries.default)(args); // If empty.

    if (0 === args.length) {
      throw Error('Container cannot be empty.');
    } // Set properties, if not defined - keep the defaults.


    args.forEach(function (_ref) {
      var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
          key = _ref2[0],
          value = _ref2[1];

      _this[key] = 'undefined' === typeof value ? _this[key] : value;
    });

    if ('undefined' === typeof _this.renderer) {
      _this.renderer = (0, _assertThisInitialized2.default)(_this);
    }

    if (!_this.document) {
      _this.document = elementor.documents.getCurrent();
    }

    _this.dynamic = new Backbone.Model(_this.settings.get('__dynamic__'));
    _this.globals = new Backbone.Model(_this.settings.get('__globals__'));
    _this.panel = new _panel.default((0, _assertThisInitialized2.default)(_this));

    _this.initialize();

    return _this;
  }

  (0, _createClass2.default)(Container, [{
    key: "initialize",
    value: function initialize() {
      if (this.isViewElement()) {
        this.addToParent();
        this.handleChildrenRecursive();
        this.view.on('destroy', this.removeFromParent.bind(this));
      }

      this.handleRepeaterChildren();
    }
  }, {
    key: "validateArgs",
    value: function validateArgs(args) {
      this.requireArgumentType('type', 'string', args);
      this.requireArgumentType('id', 'string', args);
      this.requireArgumentInstance('settings', Backbone.Model, args);
      this.requireArgumentInstance('model', Backbone.Model, args);
    }
    /**
     * Function getGroupRelatedControls().
     *
     * Example:
     * Settings = { typography_typography: 'whatever', button_text_color: 'whatever' };
     * Result { control_name: controlValue, ... - and so on };
     * `Object.keys( Result ) = [ 'typography_typography', 'typography_font_family', 'typography_font_size', 'typography_font_size_tablet', 'typography_font_size_mobile', 'typography_font_weight', 'typography_text_transform', 'typography_font_style', 'typography_text_decoration', 'typography_line_height', 'typography_line_height_tablet', 'typography_line_height_mobile', 'typography_letter_spacing', 'typography_letter_spacing_tablet', 'typography_letter_spacing_mobile', 'button_text_color' ]`.
     *
     * @param {{}} settings
     *
     * @return {{}}
     */

  }, {
    key: "getGroupRelatedControls",
    value: function getGroupRelatedControls(settings) {
      var _this2 = this;

      var result = {};
      (0, _keys.default)(settings).forEach(function (settingKey) {
        (0, _values.default)(_this2.controls).forEach(function (control) {
          var _this2$controls$setti;

          if (settingKey === control.name) {
            result[control.name] = control;
          } else if ((_this2$controls$setti = _this2.controls[settingKey]) !== null && _this2$controls$setti !== void 0 && _this2$controls$setti.groupPrefix) {
            var groupPrefix = _this2.controls[settingKey].groupPrefix;

            if (control.name.toString().startsWith(groupPrefix)) {
              result[control.name] = control;
            }
          }
        });
      });
      return result;
    }
  }, {
    key: "handleChildrenRecursive",
    value: function handleChildrenRecursive() {
      var _this$view$children;

      if ((_this$view$children = this.view.children) !== null && _this$view$children !== void 0 && _this$view$children.length) {
        (0, _values.default)(this.view.children._views).forEach(function (view) {
          if (!view.container) {
            return;
          }

          var container = view.container; // Since the way 'global-widget' rendered, it does not have parent sometimes.

          if (container.parent.children) {
            container.parent.children[view._index] = container;
          }

          container.handleChildrenRecursive();
        });
      } else {
        this.children = [];
      }
    }
  }, {
    key: "addToParent",
    value: function addToParent() {
      if (!this.parent.children || this.isRepeaterItem()) {
        return;
      } // On create container tell the parent where it was created.


      this.parent.children.splice(this.view._index, 0, this);
    }
  }, {
    key: "removeFromParent",
    value: function removeFromParent() {
      var _this3 = this;

      if (!this.parent.children || this.isRepeater()) {
        return;
      } // When delete container its should notify its parent, that his children is dead.


      this.parent.children = this.parent.children.filter(function (filtered) {
        return filtered.id !== _this3.id;
      });
    }
  }, {
    key: "handleRepeaterChildren",
    value: function handleRepeaterChildren() {
      var _this4 = this;

      (0, _values.default)(this.controls).forEach(function (control) {
        if (!control.is_repeater) {
          return;
        }

        var model = new Backbone.Model({
          name: control.name
        });
        _this4.repeaters[control.name] = new elementorModules.editor.Container({
          type: Container.TYPE_REPEATER,
          id: control.name,
          model: model,
          settings: model,
          view: _this4.view,
          parent: _this4,
          label: control.label || control.name,
          controls: {},
          renderer: _this4.renderer
        });

        _this4.settings.get(control.name).forEach(function (rowModel, index) {
          _this4.addRepeaterItem(control.name, rowModel, index);
        });
      }); // Backwards Compatibility: if there is only one repeater (type=repeater), set it's children as current children.
      // Since 3.0.0.

      if (['widget', 'document'].includes(this.type)) {
        var repeaters = (0, _values.default)(this.controls).filter(function (control) {
          return 'repeater' === control.type;
        });

        if (1 === repeaters.length) {
          (0, _defineProperty2.default)(this, 'children', {
            get: function get() {
              elementorCommon.helpers.softDeprecated('children', '3.0.0', 'container.repeaters[ repeaterName ].children');
              return this.repeaters[repeaters[0].name].children;
            }
          });
        }
      }
    }
    /**
     * Function addRepeaterItem().
     *
     * The method add repeater item, find the repeater control by it name, and create new container for the item.
     *
     * @param {string} repeaterName
     * @param {Backbone.Model} rowSettingsModel
     * @param {number} index
     *
     * @returns {Container}
     */

  }, {
    key: "addRepeaterItem",
    value: function addRepeaterItem(repeaterName, rowSettingsModel, index) {
      var rowId = rowSettingsModel.get('_id'); // TODO: Temp backwards compatibility. since 2.8.0.

      if (!rowId) {
        rowId = 'bc-' + elementorCommon.helpers.getUniqueId();
        rowSettingsModel.set('_id', rowId);
      }

      this.repeaters[repeaterName].children.splice(index, 0, new elementorModules.editor.Container({
        type: Container.TYPE_REPEATER_ITEM,
        id: rowSettingsModel.get('_id'),
        model: new Backbone.Model({
          name: repeaterName
        }),
        settings: rowSettingsModel,
        view: this.view,
        parent: this.repeaters[repeaterName],
        label: this.label + ' ' + __('Item', 'elementor'),
        controls: rowSettingsModel.options.controls,
        renderer: this.renderer
      }));
      return this.repeaters[repeaterName];
    }
    /**
     * Function lookup().
     *
     * If the view were destroyed, try to find it again if it exists.
     *
     * TODO: Refactor.
     *
     * @returns {Container}
     */

  }, {
    key: "lookup",
    value: function lookup() {
      var _this$renderer$view;

      var result = this;

      if (!this.renderer) {
        return this;
      }

      if (this !== this.renderer && (_this$renderer$view = this.renderer.view) !== null && _this$renderer$view !== void 0 && _this$renderer$view.isDisconnected && this.renderer.view.isDisconnected()) {
        this.renderer = this.renderer.lookup();
      }

      if (undefined === this.view || !this.view.lookup || !this.view.isDisconnected()) {
        // Hack For repeater item the result is the parent container.
        if (Container.TYPE_REPEATER_ITEM === this.type) {
          this.settings = this.parent.parent.settings.get(this.model.get('name')).findWhere({
            _id: this.id
          });
        }

        return result;
      }

      var lookup = this.view.lookup();

      if (lookup) {
        result = lookup.getContainer(); // Hack For repeater item the result is the parent container.

        if (Container.REPEATER === this.type) {
          this.settings = result.settings.get(this.model.get('name')).findWhere({
            _id: this.id
          });
          return this;
        } // If lookup were done, new container were created and parent does not know about it.


        if (result.parent.children) {
          result.parent.children[result.view._index] = result;
        }
      }

      return result;
    }
    /**
     * Function findChildrenRecursive().
     *
     * Will run over children recursively and pass the children to the callback till the callback returns positive value.
     *
     * @param {function(container:Container)} callback
     *
     * @returns {false|Container}
     */

  }, {
    key: "findChildrenRecursive",
    value: function findChildrenRecursive(callback) {
      if (callback(this)) {
        return this;
      }

      if (this.children.length) {
        var _iterator = (0, _createForOfIteratorHelper2.default)(this.children),
            _step;

        try {
          for (_iterator.s(); !(_step = _iterator.n()).done;) {
            var container = _step.value;
            var foundChildren = container.findChildrenRecursive(callback);

            if (foundChildren) {
              return foundChildren;
            }
          }
        } catch (err) {
          _iterator.e(err);
        } finally {
          _iterator.f();
        }
      }

      return false;
    }
    /**
     * Function forEachChildrenRecursive().
     *
     * Will run over children recursively.
     *
     * @param {function(container:Container)} callback
     *
     * @returns {false|Container}
     */

  }, {
    key: "forEachChildrenRecursive",
    value: function forEachChildrenRecursive(callback) {
      callback(this);

      if (this.children.length) {
        var _iterator2 = (0, _createForOfIteratorHelper2.default)(this.children),
            _step2;

        try {
          for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
            var container = _step2.value;
            container.forEachChildrenRecursive(callback);
          }
        } catch (err) {
          _iterator2.e(err);
        } finally {
          _iterator2.f();
        }
      }

      return false;
    }
    /**
     * Function render().
     *
     * Call view render.
     *
     * Run's `this.renderer.view.renderOnChange( this.settings ) `.
     * When `this.renderer` exist.
     *
     */

  }, {
    key: "render",
    value: function render() {
      if (!this.renderer) {
        return;
      }

      this.renderer.view.renderOnChange(this.settings);
    }
  }, {
    key: "renderUI",
    value: function renderUI() {
      if (!this.renderer) {
        return;
      }

      this.renderer.view.renderUI();
    }
  }, {
    key: "isEditable",
    value: function isEditable() {
      return 'edit' === elementor.channels.dataEditMode.request('activeMode') && 'open' === this.document.editor.status;
    }
  }, {
    key: "isDesignable",
    value: function isDesignable() {
      return elementor.userCan('design') && this.isEditable();
    }
  }, {
    key: "isRepeater",
    value: function isRepeater() {
      return Container.TYPE_REPEATER === this.type;
    }
  }, {
    key: "isRepeaterItem",
    value: function isRepeaterItem() {
      return Container.TYPE_REPEATER_ITEM === this.type;
    }
  }, {
    key: "isViewElement",
    value: function isViewElement() {
      return this.view && this.model.get('elType');
    }
  }, {
    key: "getSetting",
    value: function getSetting(name) {
      var localOnly = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
      var localValue = this.settings.get(name);

      if (localOnly) {
        return localValue;
      } // Try to get the value in the order: Global, Local, Global default.


      var globalValue;

      if (this.getGlobalKey(name)) {
        globalValue = this.getGlobalValue(name);
      }

      return globalValue || localValue || this.getGlobalDefault(name);
    }
  }, {
    key: "getGlobalKey",
    value: function getGlobalKey(name) {
      return this.globals.get(name);
    }
  }, {
    key: "getGlobalValue",
    value: function getGlobalValue(name) {
      var control = this.controls[name],
          globalKey = this.getGlobalKey(name),
          globalArgs = $e.data.commandExtractArgs(globalKey),
          data = $e.data.getCache($e.components.get('globals'), globalArgs.command, globalArgs.args.query);

      if (!(data !== null && data !== void 0 && data.value)) {
        return;
      }

      var id = data.id;
      var value; // it's a global settings with additional controls in group.

      if (control.groupType) {
        // A regex containing all of the active breakpoints' prefixes ('_mobile', '_tablet' etc.).
        var responsivePrefixRegex = elementor.breakpoints.getActiveMatchRegex();
        var propertyName = control.name.replace(control.groupPrefix, '').replace(responsivePrefixRegex, '');

        if (!data.value[elementor.config.kit_config.typography_prefix + propertyName]) {
          return;
        }

        propertyName = propertyName.replace('_', '-');
        value = "var( --e-global-".concat(control.groupType, "-").concat(id, "-").concat(propertyName, " )");

        if (elementor.config.ui.defaultGenericFonts && control.groupPrefix + 'font_family' === control.name) {
          value += ", ".concat(elementor.config.ui.defaultGenericFonts);
        }
      } else {
        value = "var( --e-global-".concat(control.type, "-").concat(id, " )");
      }

      return value;
    }
    /**
     * Determine if a control's global value is applied.
     * It actually checks if the local value is different than the global value.
     *
     * @param {string} controlName - Control name
     * @returns {boolean}
     */

  }, {
    key: "isGlobalApplied",
    value: function isGlobalApplied(controlName) {
      return this.getSetting(controlName) !== this.settings.get(controlName);
    }
  }, {
    key: "getGlobalDefault",
    value: function getGlobalDefault(controlName) {
      var _this$controls$contro;

      var controlGlobalArgs = (_this$controls$contro = this.controls[controlName]) === null || _this$controls$contro === void 0 ? void 0 : _this$controls$contro.global;

      if (controlGlobalArgs !== null && controlGlobalArgs !== void 0 && controlGlobalArgs.default) {
        // Temp fix.
        var controlType = this.controls[controlName].type;

        if ('color' === controlType) {
          controlType = 'colors';
        } // End temp fix
        // If the control is a color/typography control and default colors/typography are disabled, don't return the global value.


        if (!elementor.config.globals.defaults_enabled[controlType]) {
          return '';
        }

        var _$e$data$commandExtra = $e.data.commandExtractArgs(controlGlobalArgs.default),
            command = _$e$data$commandExtra.command,
            args = _$e$data$commandExtra.args,
            result = $e.data.getCache($e.components.get('globals'), command, args.query);

        return result === null || result === void 0 ? void 0 : result.value;
      } // No global default.


      return '';
    }
  }]);
  return Container;
}(_argsObject.default);

exports.default = Container;
(0, _defineProperty3.default)(Container, "TYPE_REPEATER", 'repeater-control');
(0, _defineProperty3.default)(Container, "TYPE_REPEATER_ITEM", 'repeater');

/***/ }),

/***/ "../assets/dev/js/editor/container/panel.js":
/*!**************************************************!*\
  !*** ../assets/dev/js/editor/container/panel.js ***!
  \**************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var Panel = /*#__PURE__*/function () {
  /**
   * Function constructor().
   *
   * Create constructor panel.
   *
   * @param {Container} container
   */
  function Panel(container) {
    (0, _classCallCheck2.default)(this, Panel);
    this.container = container;
  }
  /**
   * Function refresh().
   *
   * Refresh the panel.
   */


  (0, _createClass2.default)(Panel, [{
    key: "refresh",
    value: function refresh() {
      if ($e.routes.isPartOf('panel/editor')) {
        $e.routes.refreshContainer('panel');
      }
    }
    /**
     * Function closeEditor().
     *
     * Route to `panel/elements/categories`
     */

  }, {
    key: "closeEditor",
    value: function closeEditor() {
      $e.route('panel/elements/categories');
    }
  }, {
    key: "getControlView",
    value: function getControlView(name) {
      var editor = elementor.getPanelView().getCurrentPageView();
      return editor.children.findByModelCid(this.getControlModel(name).cid);
    }
  }, {
    key: "getControlModel",
    value: function getControlModel(name) {
      var editor = elementor.getPanelView().getCurrentPageView();
      return editor.collection.findWhere({
        name: name
      });
    }
  }]);
  return Panel;
}();

exports.default = Panel;

/***/ }),

/***/ "../assets/dev/js/editor/elements/models/base-settings.js":
/*!****************************************************************!*\
  !*** ../assets/dev/js/editor/elements/models/base-settings.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));

var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js"));

__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

var BaseSettingsModel;
BaseSettingsModel = Backbone.Model.extend({
  options: {},
  initialize: function initialize(data, options) {
    var self = this; // Keep the options for cloning

    self.options = options;
    self.controls = elementor.mergeControlsSettings(options.controls);
    self.validators = {};

    if (!self.controls) {
      return;
    }

    var attrs = data || {},
        defaults = {};

    _.each(self.controls, function (control) {
      // Check features since they does not exist in tests.
      var isUIControl = control.features && -1 !== control.features.indexOf('ui');

      if (isUIControl) {
        return;
      }

      var controlName = control.name;

      if ('object' === (0, _typeof2.default)(control.default)) {
        defaults[controlName] = elementorCommon.helpers.cloneObject(control.default);
      } else {
        defaults[controlName] = control.default;
      }

      var isDynamicControl = control.dynamic && control.dynamic.active,
          hasDynamicSettings = isDynamicControl && attrs.__dynamic__ && attrs.__dynamic__[controlName];

      if (isDynamicControl && !hasDynamicSettings && control.dynamic.default) {
        if (!attrs.__dynamic__) {
          attrs.__dynamic__ = {};
        }

        attrs.__dynamic__[controlName] = control.dynamic.default;
        hasDynamicSettings = true;
      } // Check if the value is a plain object ( and not an array )


      var isMultipleControl = jQuery.isPlainObject(control.default);

      if (undefined !== attrs[controlName] && isMultipleControl && !_.isObject(attrs[controlName]) && !hasDynamicSettings) {
        elementorCommon.debug.addCustomError(new TypeError('An invalid argument supplied as multiple control value'), 'InvalidElementData', 'Element `' + (self.get('widgetType') || self.get('elType')) + '` got <' + attrs[controlName] + '> as `' + controlName + '` value. Expected array or object.');
        delete attrs[controlName];
      }

      if (undefined === attrs[controlName]) {
        attrs[controlName] = defaults[controlName];
      }
    });

    self.defaults = defaults;
    self.handleRepeaterData(attrs);
    self.set(attrs);
  },
  handleRepeaterData: function handleRepeaterData(attrs) {
    _.each(this.controls, function (field) {
      if (field.is_repeater) {
        // TODO: Apply defaults on each field in repeater fields
        if (!(attrs[field.name] instanceof Backbone.Collection)) {
          attrs[field.name] = new Backbone.Collection(attrs[field.name], {
            model: function model(attributes, options) {
              options = options || {};
              options.controls = {};
              (0, _values.default)(field.fields).map(function (item) {
                options.controls[item.name] = item;
              }); // TODO: Cannot be deleted, since it handle repeater items after repeater widget creation.

              if (!attributes._id) {
                attributes._id = elementorCommon.helpers.getUniqueId();
              }

              return new BaseSettingsModel(attributes, options);
            }
          });
        }
      }
    });
  },
  getFontControls: function getFontControls() {
    return this.getControlsByType('font');
  },
  getIconsControls: function getIconsControls() {
    return this.getControlsByType('icons');
  },
  getControlsByType: function getControlsByType(type) {
    return _.filter(this.getActiveControls(), function (control) {
      return type === control.type;
    });
  },
  getStyleControls: function getStyleControls(controls, attributes) {
    var self = this;
    controls = elementorCommon.helpers.cloneObject(self.getActiveControls(controls, attributes));
    var styleControls = [];
    jQuery.each(controls, function () {
      var _control$dynamic;

      var control = this,
          controlDefaultSettings = elementor.config.controls[control.type];
      control = jQuery.extend({}, controlDefaultSettings, control);

      if (control.fields) {
        var styleFields = [];
        self.attributes[control.name].each(function (item) {
          styleFields.push(self.getStyleControls(control.fields, item.attributes));
        });
        control.styleFields = styleFields;
      }

      if (control.fields || (_control$dynamic = control.dynamic) !== null && _control$dynamic !== void 0 && _control$dynamic.active || self.isGlobalControl(control, controls) || self.isStyleControl(control.name, controls)) {
        styleControls.push(control);
      }
    });
    return styleControls;
  },
  isGlobalControl: function isGlobalControl(control, controls) {
    var _globalControl$global, _this$attributes$__gl;

    var controlGlobalKey = control.name;

    if (control.groupType) {
      controlGlobalKey = control.groupPrefix + control.groupType;
    }

    var globalControl = controls[controlGlobalKey];

    if (!((_globalControl$global = globalControl.global) !== null && _globalControl$global !== void 0 && _globalControl$global.active)) {
      return false;
    }

    var globalValue = (_this$attributes$__gl = this.attributes.__globals__) === null || _this$attributes$__gl === void 0 ? void 0 : _this$attributes$__gl[controlGlobalKey];
    return !!globalValue;
  },
  isStyleControl: function isStyleControl(attribute, controls) {
    controls = controls || this.controls;

    var currentControl = _.find(controls, function (control) {
      return attribute === control.name;
    });

    return currentControl && !_.isEmpty(currentControl.selectors);
  },
  getClassControls: function getClassControls(controls) {
    controls = controls || this.controls;
    return _.filter(controls, function (control) {
      return !_.isUndefined(control.prefix_class);
    });
  },
  isClassControl: function isClassControl(attribute) {
    var currentControl = _.find(this.controls, function (control) {
      return attribute === control.name;
    });

    return currentControl && !_.isUndefined(currentControl.prefix_class);
  },
  getControl: function getControl(id) {
    return _.find(this.controls, function (control) {
      return id === control.name;
    });
  },
  getActiveControls: function getActiveControls(controls, attributes) {
    var activeControls = {};

    if (!controls) {
      controls = this.controls;
    }

    if (!attributes) {
      attributes = this.attributes;
    }

    attributes = this.parseGlobalSettings(attributes, controls);
    jQuery.each(controls, function (controlKey, control) {
      if (elementor.helpers.isActiveControl(control, attributes)) {
        activeControls[controlKey] = control;
      }
    });
    return activeControls;
  },
  clone: function clone() {
    return new BaseSettingsModel(elementorCommon.helpers.cloneObject(this.attributes), elementorCommon.helpers.cloneObject(this.options));
  },
  setExternalChange: function setExternalChange(key, value) {
    var self = this,
        settingsToChange;

    if ('object' === (0, _typeof2.default)(key)) {
      settingsToChange = key;
    } else {
      settingsToChange = {};
      settingsToChange[key] = value;
    }

    self.set(settingsToChange);
    jQuery.each(settingsToChange, function (changedKey, changedValue) {
      self.trigger('change:external:' + changedKey, changedValue);
    });
  },
  parseDynamicSettings: function parseDynamicSettings(settings, options, controls) {
    var self = this;
    settings = elementorCommon.helpers.cloneObject(settings || self.attributes);
    options = options || {};
    controls = controls || this.controls;
    jQuery.each(controls, function () {
      var control = this,
          valueToParse;

      if (control.is_repeater) {
        valueToParse = settings[control.name];
        valueToParse.forEach(function (value, key) {
          valueToParse[key] = self.parseDynamicSettings(value, options, control.fields);
        });
        return;
      }

      valueToParse = settings.__dynamic__ && settings.__dynamic__[control.name];

      if (!valueToParse) {
        return;
      }

      var dynamicSettings = control.dynamic;

      if (undefined === dynamicSettings) {
        dynamicSettings = elementor.config.controls[control.type].dynamic;
      }

      if (!dynamicSettings || !dynamicSettings.active) {
        return;
      }

      var dynamicValue;

      try {
        dynamicValue = elementor.dynamicTags.parseTagsText(valueToParse, dynamicSettings, elementor.dynamicTags.getTagDataContent);
      } catch (error) {
        if (elementor.dynamicTags.CACHE_KEY_NOT_FOUND_ERROR !== error.message) {
          throw error;
        }

        dynamicValue = '';

        if (options.onServerRequestStart) {
          options.onServerRequestStart();
        }

        elementor.dynamicTags.refreshCacheFromServer(function () {
          if (options.onServerRequestEnd) {
            options.onServerRequestEnd();
          }
        });
      }

      if (dynamicSettings.property) {
        settings[control.name][dynamicSettings.property] = dynamicValue;
      } else {
        settings[control.name] = dynamicValue;
      }
    });
    return settings;
  },
  parseGlobalSettings: function parseGlobalSettings(settings, controls) {
    var _this = this;

    settings = elementorCommon.helpers.cloneObject(settings);
    controls = controls || this.controls;
    jQuery.each(controls, function (index, control) {
      var _settings$__globals__, _globalSettings;

      var valueToParse;

      if (control.is_repeater) {
        valueToParse = settings[control.name];
        valueToParse.forEach(function (value, key) {
          valueToParse[key] = _this.parseGlobalSettings(value, control.fields);
        });
        return;
      }

      valueToParse = (_settings$__globals__ = settings.__globals__) === null || _settings$__globals__ === void 0 ? void 0 : _settings$__globals__[control.name];

      if (!valueToParse) {
        return;
      }

      var globalSettings = control.global;

      if (undefined === globalSettings) {
        globalSettings = elementor.config.controls[control.type].global;
      }

      if (!((_globalSettings = globalSettings) !== null && _globalSettings !== void 0 && _globalSettings.active)) {
        return;
      }

      var _$e$data$commandExtra = $e.data.commandExtractArgs(valueToParse),
          command = _$e$data$commandExtra.command,
          args = _$e$data$commandExtra.args,
          globalValue = $e.data.getCache($e.components.get('globals'), command, args.query);

      if (control.groupType) {
        settings[control.name] = 'custom';
      } else {
        settings[control.name] = globalValue;
      }
    });
    return settings;
  },
  removeDataDefaults: function removeDataDefaults(data, controls) {
    var _this2 = this;

    jQuery.each(data, function (key) {
      var control = controls[key];

      if (!control) {
        return;
      } // TODO: use `save_default` in text|textarea controls.


      if (control.save_default || ('text' === control.type || 'textarea' === control.type) && data[key]) {
        return;
      }

      if (control.is_repeater) {
        data[key].forEach(function (repeaterRow) {
          _this2.removeDataDefaults(repeaterRow, control.fields);
        });
        return;
      }

      if (_.isEqual(data[key], control.default)) {
        delete data[key];
      }
    });
  },
  toJSON: function toJSON(options) {
    var data = Backbone.Model.prototype.toJSON.call(this);
    options = options || {};
    delete data.widgetType;
    delete data.elType;
    delete data.isInner;

    _.each(data, function (attribute, key) {
      if (attribute && attribute.toJSON) {
        data[key] = attribute.toJSON();
      }
    });

    if (options.remove && -1 !== options.remove.indexOf('default')) {
      this.removeDataDefaults(data, this.controls);
    }

    return elementorCommon.helpers.cloneObject(data);
  }
});
module.exports = BaseSettingsModel;

/***/ }),

/***/ "../assets/dev/js/editor/elements/views/behaviors/inner-tabs.js":
/*!**********************************************************************!*\
  !*** ../assets/dev/js/editor/elements/views/behaviors/inner-tabs.js ***!
  \**********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

var InnerTabsBehavior;
InnerTabsBehavior = Marionette.Behavior.extend({
  onRenderCollection: function onRenderCollection() {
    this.handleInnerTabs(this.view);
  },
  handleInnerTabs: function handleInnerTabs(parent) {
    var closedClass = 'elementor-tab-close',
        activeClass = 'elementor-tab-active',
        tabsWrappers = parent.children.filter(function (view) {
      return 'tabs' === view.model.get('type');
    });

    _.each(tabsWrappers, function (view) {
      view.$el.find('.elementor-control-content').remove();
      var tabsId = view.model.get('name'),
          tabs = parent.children.filter(function (childView) {
        return 'tab' === childView.model.get('type') && childView.model.get('tabs_wrapper') === tabsId;
      });

      _.each(tabs, function (childView, index) {
        view._addChildView(childView);

        var tabId = childView.model.get('name'),
            controlsUnderTab = parent.children.filter(function (controlView) {
          return tabId === controlView.model.get('inner_tab');
        });

        if (0 === index) {
          childView.$el.addClass(activeClass);
        } else {
          _.each(controlsUnderTab, function (controlView) {
            controlView.$el.addClass(closedClass);
          });
        }
      });
    });
  },
  onChildviewControlTabClicked: function onChildviewControlTabClicked(childView) {
    var closedClass = 'elementor-tab-close',
        activeClass = 'elementor-tab-active',
        tabClicked = childView.model.get('name'),
        childrenUnderTab = this.view.children.filter(function (view) {
      return 'tab' !== view.model.get('type') && childView.model.get('tabs_wrapper') === view.model.get('tabs_wrapper');
    }),
        siblingTabs = this.view.children.filter(function (view) {
      return 'tab' === view.model.get('type') && childView.model.get('tabs_wrapper') === view.model.get('tabs_wrapper');
    });

    _.each(siblingTabs, function (view) {
      view.$el.removeClass(activeClass);
    });

    childView.$el.addClass(activeClass);

    _.each(childrenUnderTab, function (view) {
      if (view.model.get('inner_tab') === tabClicked) {
        view.$el.removeClass(closedClass);
      } else {
        view.$el.addClass(closedClass);
      }
    });

    elementor.getPanelView().updateScrollbar();
  }
});
module.exports = InnerTabsBehavior;

/***/ }),

/***/ "../assets/dev/js/editor/utils/introduction.js":
/*!*****************************************************!*\
  !*** ../assets/dev/js/editor/utils/introduction.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _default = /*#__PURE__*/function (_elementorModules$Mod) {
  (0, _inherits2.default)(_default, _elementorModules$Mod);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    var _this;

    (0, _classCallCheck2.default)(this, _default);

    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }

    _this = _super.call.apply(_super, [this].concat(args));

    _this.initDialog();

    return _this;
  }

  (0, _createClass2.default)(_default, [{
    key: "getDefaultSettings",
    value: function getDefaultSettings() {
      return {
        dialogType: 'buttons',
        dialogOptions: {
          effects: {
            hide: 'hide',
            show: 'show'
          },
          hide: {
            onBackgroundClick: false
          }
        }
      };
    }
  }, {
    key: "initDialog",
    value: function initDialog() {
      var _this2 = this;

      var dialog;

      this.getDialog = function () {
        if (!dialog) {
          var settings = _this2.getSettings();

          dialog = elementorCommon.dialogsManager.createWidget(settings.dialogType, settings.dialogOptions);

          if (settings.onDialogInitCallback) {
            settings.onDialogInitCallback.call(_this2, dialog);
          }
        }

        return dialog;
      };
    }
  }, {
    key: "show",
    value: function show(target) {
      if (this.introductionViewed) {
        return;
      }

      var dialog = this.getDialog();

      if (target) {
        dialog.setSettings('position', {
          of: target
        });
      }

      dialog.show();
    }
  }, {
    key: "setViewed",
    value: function setViewed() {
      this.introductionViewed = true;
      elementorCommon.ajax.addRequest('introduction_viewed', {
        data: {
          introductionKey: this.getSettings('introductionKey')
        }
      });
    }
  }]);
  return _default;
}(elementorModules.Module);

exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/utils/module.js":
/*!***********************************************!*\
  !*** ../assets/dev/js/editor/utils/module.js ***!
  \***********************************************/
/***/ ((module) => {

"use strict";


var EditorModule = elementorModules.Module.extend({
  onInit: function onInit() {
    var _this = this;

    var $window = jQuery(window);
    $window.on('elementor:init-components', this.onElementorInitComponents.bind(this));
    $window.on('elementor:loaded', function () {
      _this.onElementorLoaded();

      elementor.on('document:loaded', _this.onDocumentLoaded.bind(_this));
    });
    $window.on('elementor:init', this.onElementorReady);
  },
  // TODO: Delete as soon as possible.
  getEditorControlView: function getEditorControlView(name) {
    var editor = elementor.getPanelView().getCurrentPageView();
    return editor.children.findByModelCid(this.getEditorControlModel(name).cid);
  },
  // TODO: Delete as soon as possible.
  getEditorControlModel: function getEditorControlModel(name) {
    var editor = elementor.getPanelView().getCurrentPageView();
    return editor.collection.findWhere({
      name: name
    });
  },
  onElementorReady: function onElementorReady() {
    this.onElementorInit();
    elementor.on('frontend:init', this.onElementorFrontendInit.bind(this)).on('preview:loaded', this.onElementorPreviewLoaded.bind(this));
  }
});

EditorModule.prototype.onElementorLoaded = function () {};

EditorModule.prototype.onElementorInit = function () {};

EditorModule.prototype.onElementorPreviewLoaded = function () {};

EditorModule.prototype.onDocumentLoaded = function () {};

EditorModule.prototype.onElementorFrontendInit = function () {};

EditorModule.prototype.onElementorInitComponents = function () {};

module.exports = EditorModule;

/***/ }),

/***/ "../assets/dev/js/editor/views/controls-popover.js":
/*!*********************************************************!*\
  !*** ../assets/dev/js/editor/views/controls-popover.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var ControlsPopover = /*#__PURE__*/function () {
  function ControlsPopover(child) {
    (0, _classCallCheck2.default)(this, ControlsPopover);
    this.child = child;
    this.$popover = jQuery('<div>', {
      class: 'elementor-controls-popover'
    });
    child.$el.before(this.$popover);
    this.$popover.append(child.$el);
    this.popoverToggleView = child._parent.children.findByIndex(child._index - 1); // Add the "Typography" header to the popover

    if ('typography' === this.child.model.attributes.groupType) {
      this.createPopoverHeader();
    }
  }

  (0, _createClass2.default)(ControlsPopover, [{
    key: "addChild",
    value: function addChild(child) {
      this.$popover.append(child.$el);
    }
  }, {
    key: "createPopoverHeader",
    value: function createPopoverHeader() {
      var _this = this;

      var $popoverToggleControl = this.$popover.prev(),
          // Get the existing reset button.
      $resetLabel = $popoverToggleControl.find('.elementor-control-popover-toggle-reset-label');
      this.$popoverHeader = jQuery('<div>', {
        class: 'e-group-control-header'
      }).html('<span>' + __('Typography', 'elementor') + '</span>');
      this.$headerControlsWrapper = jQuery('<div>', {
        class: 'e-control-tools'
      }); // Give the reset button the control tool styling, and add a click event so clicking on it closes the popover.

      $resetLabel.addClass('e-control-tool').on('click', function () {
        return _this.onResetButtonClick();
      }); // Move the popover toggle reset button into the popover header.

      this.$headerControlsWrapper.append($resetLabel);
      this.$popoverHeader.append(this.$headerControlsWrapper);
      var globalConfig = this.popoverToggleView.model.get('global');

      if (globalConfig !== null && globalConfig !== void 0 && globalConfig.active) {
        this.createAddButton();
      }

      this.$popover.prepend(this.$popoverHeader).addClass('e-controls-popover--typography');
    }
  }, {
    key: "onResetButtonClick",
    value: function onResetButtonClick() {
      this.$popover.hide();
      var groupControlName = this.child.model.get('groupPrefix') + 'typography',
          args = {
        container: this.child.options.container,
        settings: (0, _defineProperty2.default)({}, groupControlName, '')
      };

      if (this.child.options.container.globals.get(groupControlName)) {
        // The Disable Globals command applies global settings locally,
        // so disabling the global shouldn't actually change the appearance of the widget.
        $e.run('document/globals/disable', args);
      } else {
        $e.run('document/elements/settings', args);
      }
    }
  }, {
    key: "onAddButtonClick",
    value: function onAddButtonClick() {
      this.popoverToggleView.onAddGlobalButtonClick();
    }
  }, {
    key: "createAddButton",
    value: function createAddButton() {
      var _this2 = this;

      this.$addButton = jQuery('<button>', {
        class: 'e-control-tool'
      }).html(jQuery('<i>', {
        class: 'eicon-plus'
      }));
      this.$headerControlsWrapper.append(this.$addButton);
      this.$addButton.on('click', function () {
        return _this2.onAddButtonClick();
      });
      this.$addButton.tipsy({
        title: function title() {
          return __('Create New Global Font', 'elementor');
        },
        gravity: function gravity() {
          return 's';
        }
      });
    }
  }, {
    key: "destroy",
    value: function destroy() {
      this.$popover.remove();
    }
  }]);
  return ControlsPopover;
}();

exports.default = ControlsPopover;

/***/ }),

/***/ "../assets/dev/js/editor/views/controls-stack.js":
/*!*******************************************************!*\
  !*** ../assets/dev/js/editor/views/controls-stack.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

__webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");

__webpack_require__(/*! core-js/modules/es6.array.iterator.js */ "../node_modules/core-js/modules/es6.array.iterator.js");

__webpack_require__(/*! core-js/modules/web.dom.iterable.js */ "../node_modules/core-js/modules/web.dom.iterable.js");

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

var _controlsPopover = _interopRequireDefault(__webpack_require__(/*! ./controls-popover */ "../assets/dev/js/editor/views/controls-popover.js"));

var ControlsStack;
ControlsStack = Marionette.CompositeView.extend({
  classes: {
    popover: 'elementor-controls-popover'
  },
  activeTab: null,
  activeSection: null,
  className: function className() {
    return 'elementor-controls-stack';
  },
  templateHelpers: function templateHelpers() {
    return {
      elementData: elementor.getElementData(this.model)
    };
  },
  childViewOptions: function childViewOptions() {
    return {
      // TODO: elementSettingsModel is deprecated since 2.8.0.
      elementSettingsModel: this.model
    };
  },
  ui: function ui() {
    return {
      tabs: '.elementor-panel-navigation-tab',
      reloadButton: '.elementor-update-preview-button'
    };
  },
  events: function events() {
    return {
      'click @ui.reloadButton': 'onReloadButtonClick'
    };
  },
  modelEvents: {
    destroy: 'onModelDestroy'
  },
  behaviors: {
    HandleInnerTabs: {
      behaviorClass: __webpack_require__(/*! elementor-behaviors/inner-tabs */ "../assets/dev/js/editor/elements/views/behaviors/inner-tabs.js")
    }
  },
  initialize: function initialize(options) {
    this.initCollection();

    if (options.tab) {
      this.activeTab = options.tab;
      this.activateFirstSection();
    }

    this.listenTo(elementor.channels.deviceMode, 'change', this.onDeviceModeChange);
  },
  initCollection: function initCollection() {
    this.collection = new Backbone.Collection(_.values(elementor.mergeControlsSettings(this.getOption('controls'))));
  },
  filter: function filter(controlModel) {
    if (controlModel.get('tab') !== this.activeTab) {
      return false;
    }

    if ('section' === controlModel.get('type')) {
      return true;
    }

    var section = controlModel.get('section');
    return !section || section === this.activeSection;
  },
  getControlViewByModel: function getControlViewByModel(model) {
    return this.children.findByModelCid(model.cid);
  },
  getControlViewByName: function getControlViewByName(name) {
    return this.getControlViewByModel(this.getControlModel(name));
  },
  getControlModel: function getControlModel(name) {
    return this.collection.findWhere({
      name: name
    });
  },
  isVisibleSectionControl: function isVisibleSectionControl(sectionControlModel) {
    return this.activeTab === sectionControlModel.get('tab');
  },
  activateTab: function activateTab(tab) {
    this.activeTab = tab;
    this.activateFirstSection();

    this._renderChildren();

    return this;
  },
  activateSection: function activateSection(sectionName) {
    this.activeSection = sectionName;
    return this;
  },
  activateFirstSection: function activateFirstSection() {
    var self = this;
    var sectionControls = self.collection.filter(function (controlModel) {
      return 'section' === controlModel.get('type') && self.isVisibleSectionControl(controlModel);
    });
    var sectionToActivate;

    if (!sectionControls[0]) {
      self.activeSection = null;
      sectionToActivate = null;
    } else {
      sectionToActivate = sectionControls[0].get('name');
    }

    var preActivatedSection = sectionControls.filter(function (controlModel) {
      return self.activeSection === controlModel.get('name');
    });

    if (preActivatedSection[0]) {
      return;
    }

    self.activateSection(sectionToActivate);
    return this;
  },
  getChildView: function getChildView(item) {
    var controlType = item.get('type');
    return elementor.getControlView(controlType);
  },
  getNamespaceArray: function getNamespaceArray() {
    return [elementor.getPanelView().getCurrentPageName()];
  },
  openActiveSection: function openActiveSection() {
    var activeSection = this.activeSection,
        activeSectionView = this.children.filter(function (view) {
      return activeSection === view.model.get('name');
    });

    if (activeSectionView[0]) {
      activeSectionView[0].$el.addClass('elementor-open');
      var eventNamespace = this.getNamespaceArray();
      eventNamespace.push(activeSection, 'activated');
      elementor.channels.editor.trigger(eventNamespace.join(':'), this);
    }
  },
  onRenderCollection: function onRenderCollection() {
    this.openActiveSection();
    ControlsStack.handlePopovers(this);
  },
  onModelDestroy: function onModelDestroy() {
    this.destroy();
  },
  onReloadButtonClick: function onReloadButtonClick() {
    elementor.reloadPreview();
  },
  onDeviceModeChange: function onDeviceModeChange() {
    if ('desktop' === elementor.channels.deviceMode.request('currentMode')) {
      this.$el.removeClass('elementor-responsive-switchers-open');
    }
  },
  onChildviewControlSectionClicked: function onChildviewControlSectionClicked(childView) {
    var isSectionOpen = childView.$el.hasClass('elementor-open');
    this.activateSection(isSectionOpen ? null : childView.model.get('name'));

    this._renderChildren();
  },
  onChildviewResponsiveSwitcherClick: function onChildviewResponsiveSwitcherClick(childView, device) {
    if ('desktop' === device) {
      this.$el.toggleClass('elementor-responsive-switchers-open');
    }
  }
}, {
  handlePopovers: function handlePopovers(view) {
    var popover;
    view.popovers = [];
    this.removePopovers(view);
    view.children.each(function (control) {
      if (popover) {
        popover.addChild(control);
      }

      var popoverData = control.model.get('popover');

      if (!popoverData) {
        return;
      }

      if (popoverData.start) {
        popover = new _controlsPopover.default(control);
        view.popovers.push(popover);
      }

      if (popoverData.end) {
        popover = null;
      }
    });
  },
  removePopovers: function removePopovers(view) {
    view.popovers.forEach(function (popover) {
      return popover.destroy();
    });
  }
});
module.exports = ControlsStack;

/***/ }),

/***/ "../assets/dev/js/modules/imports/args-object.js":
/*!*******************************************************!*\
  !*** ../assets/dev/js/modules/imports/args-object.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _instanceType = _interopRequireDefault(__webpack_require__(/*! ./instance-type */ "../assets/dev/js/modules/imports/instance-type.js"));

var ArgsObject = /*#__PURE__*/function (_InstanceType) {
  (0, _inherits2.default)(ArgsObject, _InstanceType);

  var _super = (0, _createSuper2.default)(ArgsObject);

  /**
   * Function constructor().
   *
   * Create ArgsObject.
   *
   * @param {{}} args
   */
  function ArgsObject(args) {
    var _this;

    (0, _classCallCheck2.default)(this, ArgsObject);
    _this = _super.call(this);
    _this.args = args;
    return _this;
  }
  /**
   * Function requireArgument().
   *
   * Validate property in args.
   *
   * @param {string} property
   * @param {{}} args
   *
   * @throws {Error}
   *
   */


  (0, _createClass2.default)(ArgsObject, [{
    key: "requireArgument",
    value: function requireArgument(property) {
      var args = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.args;

      if (!args.hasOwnProperty(property)) {
        throw Error("".concat(property, " is required."));
      }
    }
    /**
     * Function requireArgumentType().
     *
     * Validate property in args using `type === typeof(args.whatever)`.
     *
     * @param {string} property
     * @param {string} type
     * @param {{}} args
     *
     * @throws {Error}
     *
     */

  }, {
    key: "requireArgumentType",
    value: function requireArgumentType(property, type) {
      var args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.args;
      this.requireArgument(property, args);

      if ((0, _typeof2.default)(args[property]) !== type) {
        throw Error("".concat(property, " invalid type: ").concat(type, "."));
      }
    }
    /**
     * Function requireArgumentInstance().
     *
     * Validate property in args using `args.whatever instanceof instance`.
     *
     * @param {string} property
     * @param {instanceof} instance
     * @param {{}} args
     *
     * @throws {Error}
     *
     */

  }, {
    key: "requireArgumentInstance",
    value: function requireArgumentInstance(property, instance) {
      var args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.args;
      this.requireArgument(property, args);

      if (!(args[property] instanceof instance)) {
        throw Error("".concat(property, " invalid instance."));
      }
    }
    /**
     * Function requireArgumentConstructor().
     *
     * Validate property in args using `type === args.whatever.constructor`.
     *
     * @param {string} property
     * @param {*} type
     * @param {{}} args
     *
     * @throws {Error}
     *
     */

  }, {
    key: "requireArgumentConstructor",
    value: function requireArgumentConstructor(property, type) {
      var args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.args;
      this.requireArgument(property, args);

      if (args[property].constructor !== type) {
        throw Error("".concat(property, " invalid constructor type."));
      }
    }
  }], [{
    key: "getInstanceType",
    value: function getInstanceType() {
      return 'ArgsObject';
    }
  }]);
  return ArgsObject;
}(_instanceType.default);

exports.default = ArgsObject;

/***/ }),

/***/ "../assets/dev/js/modules/imports/instance-type.js":
/*!*********************************************************!*\
  !*** ../assets/dev/js/modules/imports/instance-type.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _hasInstance = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/has-instance */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/has-instance.js"));

var _isArray = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js"));

__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var InstanceType = /*#__PURE__*/function () {
  function InstanceType() {
    var _this = this;

    (0, _classCallCheck2.default)(this, InstanceType);
    // Since anonymous classes sometimes do not get validated by babel, do it manually.
    var target = this instanceof InstanceType ? this.constructor : void 0;
    var prototypes = [];

    while (target.__proto__ && target.__proto__.name) {
      prototypes.push(target.__proto__);
      target = target.__proto__;
    }

    prototypes.reverse().forEach(function (proto) {
      return _this instanceof proto;
    });
  }

  (0, _createClass2.default)(InstanceType, null, [{
    key: _hasInstance.default,
    value: function value(target) {
      /**
       * This is function extending being called each time JS uses instanceOf, since babel use it each time it create new class
       * its give's opportunity to mange capabilities of instanceOf operator.
       * saving current class each time will give option later to handle instanceOf manually.
       */
      var result = (0, _get2.default)((0, _getPrototypeOf2.default)(InstanceType), _hasInstance.default, this).call(this, target); // Act normal when validate a class, which does not have instance type.

      if (target && !target.constructor.getInstanceType) {
        return result;
      }

      if (target) {
        if (!target.instanceTypes) {
          target.instanceTypes = [];
        }

        if (!result) {
          if (this.getInstanceType() === target.constructor.getInstanceType()) {
            result = true;
          }
        }

        if (result) {
          var name = this.getInstanceType === InstanceType.getInstanceType ? 'BaseInstanceType' : this.getInstanceType();

          if (-1 === target.instanceTypes.indexOf(name)) {
            target.instanceTypes.push(name);
          }
        }
      }

      if (!result && target) {
        // Check if the given 'target', is instance of known types.
        result = target.instanceTypes && (0, _isArray.default)(target.instanceTypes) && -1 !== target.instanceTypes.indexOf(this.getInstanceType());
      }

      return result;
    }
  }, {
    key: "getInstanceType",
    value: function getInstanceType() {
      elementorModules.ForceMethodImplementation();
    }
  }]);
  return InstanceType;
}();

exports.default = InstanceType;

/***/ }),

/***/ "../node_modules/core-js/library/fn/array/from.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/fn/array/from.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.string.iterator */ "../node_modules/core-js/library/modules/es6.string.iterator.js");
__webpack_require__(/*! ../../modules/es6.array.from */ "../node_modules/core-js/library/modules/es6.array.from.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Array.from;


/***/ }),

/***/ "../node_modules/core-js/library/fn/array/is-array.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/fn/array/is-array.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.array.is-array */ "../node_modules/core-js/library/modules/es6.array.is-array.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Array.isArray;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/create.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/create.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.create */ "../node_modules/core-js/library/modules/es6.object.create.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function create(P, D) {
  return $Object.create(P, D);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/define-property.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/define-property.js ***!
  \********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.define-property */ "../node_modules/core-js/library/modules/es6.object.define-property.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function defineProperty(it, key, desc) {
  return $Object.defineProperty(it, key, desc);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/entries.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/entries.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es7.object.entries */ "../node_modules/core-js/library/modules/es7.object.entries.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.entries;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/get-own-property-descriptor.js":
/*!********************************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/get-own-property-descriptor.js ***!
  \********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.get-own-property-descriptor */ "../node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function getOwnPropertyDescriptor(it, key) {
  return $Object.getOwnPropertyDescriptor(it, key);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/get-prototype-of.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/get-prototype-of.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.get-prototype-of */ "../node_modules/core-js/library/modules/es6.object.get-prototype-of.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.getPrototypeOf;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/keys.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/keys.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.keys */ "../node_modules/core-js/library/modules/es6.object.keys.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.keys;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/set-prototype-of.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/set-prototype-of.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.set-prototype-of */ "../node_modules/core-js/library/modules/es6.object.set-prototype-of.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.setPrototypeOf;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/values.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/values.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es7.object.values */ "../node_modules/core-js/library/modules/es7.object.values.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.values;


/***/ }),

/***/ "../node_modules/core-js/library/fn/reflect/construct.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/fn/reflect/construct.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.reflect.construct */ "../node_modules/core-js/library/modules/es6.reflect.construct.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Reflect.construct;


/***/ }),

/***/ "../node_modules/core-js/library/fn/reflect/get.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/library/fn/reflect/get.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.reflect.get */ "../node_modules/core-js/library/modules/es6.reflect.get.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Reflect.get;


/***/ }),

/***/ "../node_modules/core-js/library/fn/symbol/has-instance.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/fn/symbol/has-instance.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.function.has-instance */ "../node_modules/core-js/library/modules/es6.function.has-instance.js");
module.exports = __webpack_require__(/*! ../../modules/_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js").f('hasInstance');


/***/ }),

/***/ "../node_modules/core-js/library/fn/symbol/index.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/fn/symbol/index.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.symbol */ "../node_modules/core-js/library/modules/es6.symbol.js");
__webpack_require__(/*! ../../modules/es6.object.to-string */ "../node_modules/core-js/library/modules/es6.object.to-string.js");
__webpack_require__(/*! ../../modules/es7.symbol.async-iterator */ "../node_modules/core-js/library/modules/es7.symbol.async-iterator.js");
__webpack_require__(/*! ../../modules/es7.symbol.observable */ "../node_modules/core-js/library/modules/es7.symbol.observable.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Symbol;


/***/ }),

/***/ "../node_modules/core-js/library/fn/symbol/iterator.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/fn/symbol/iterator.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.string.iterator */ "../node_modules/core-js/library/modules/es6.string.iterator.js");
__webpack_require__(/*! ../../modules/web.dom.iterable */ "../node_modules/core-js/library/modules/web.dom.iterable.js");
module.exports = __webpack_require__(/*! ../../modules/_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js").f('iterator');


/***/ }),

/***/ "../node_modules/core-js/library/modules/_a-function.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_a-function.js ***!
  \**************************************************************/
/***/ ((module) => {

module.exports = function (it) {
  if (typeof it != 'function') throw TypeError(it + ' is not a function!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_add-to-unscopables.js":
/*!**********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_add-to-unscopables.js ***!
  \**********************************************************************/
/***/ ((module) => {

module.exports = function () { /* empty */ };


/***/ }),

/***/ "../node_modules/core-js/library/modules/_an-object.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_an-object.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
module.exports = function (it) {
  if (!isObject(it)) throw TypeError(it + ' is not an object!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-includes.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-includes.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// false -> Array#indexOf
// true  -> Array#includes
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
var toAbsoluteIndex = __webpack_require__(/*! ./_to-absolute-index */ "../node_modules/core-js/library/modules/_to-absolute-index.js");
module.exports = function (IS_INCLUDES) {
  return function ($this, el, fromIndex) {
    var O = toIObject($this);
    var length = toLength(O.length);
    var index = toAbsoluteIndex(fromIndex, length);
    var value;
    // Array#includes uses SameValueZero equality algorithm
    // eslint-disable-next-line no-self-compare
    if (IS_INCLUDES && el != el) while (length > index) {
      value = O[index++];
      // eslint-disable-next-line no-self-compare
      if (value != value) return true;
    // Array#indexOf ignores holes, Array#includes - not
    } else for (;length > index; index++) if (IS_INCLUDES || index in O) {
      if (O[index] === el) return IS_INCLUDES || index || 0;
    } return !IS_INCLUDES && -1;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_bind.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_bind.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var invoke = __webpack_require__(/*! ./_invoke */ "../node_modules/core-js/library/modules/_invoke.js");
var arraySlice = [].slice;
var factories = {};

var construct = function (F, len, args) {
  if (!(len in factories)) {
    for (var n = [], i = 0; i < len; i++) n[i] = 'a[' + i + ']';
    // eslint-disable-next-line no-new-func
    factories[len] = Function('F,a', 'return new F(' + n.join(',') + ')');
  } return factories[len](F, args);
};

module.exports = Function.bind || function bind(that /* , ...args */) {
  var fn = aFunction(this);
  var partArgs = arraySlice.call(arguments, 1);
  var bound = function (/* args... */) {
    var args = partArgs.concat(arraySlice.call(arguments));
    return this instanceof bound ? construct(fn, args.length, args) : invoke(fn, args, that);
  };
  if (isObject(fn.prototype)) bound.prototype = fn.prototype;
  return bound;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_classof.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_classof.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// getting tag from 19.1.3.6 Object.prototype.toString()
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('toStringTag');
// ES3 wrong here
var ARG = cof(function () { return arguments; }()) == 'Arguments';

// fallback for IE11 Script Access Denied error
var tryGet = function (it, key) {
  try {
    return it[key];
  } catch (e) { /* empty */ }
};

module.exports = function (it) {
  var O, T, B;
  return it === undefined ? 'Undefined' : it === null ? 'Null'
    // @@toStringTag case
    : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T
    // builtinTag case
    : ARG ? cof(O)
    // ES3 arguments fallback
    : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_cof.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_cof.js ***!
  \*******************************************************/
/***/ ((module) => {

var toString = {}.toString;

module.exports = function (it) {
  return toString.call(it).slice(8, -1);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_core.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_core.js ***!
  \********************************************************/
/***/ ((module) => {

var core = module.exports = { version: '2.6.12' };
if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/library/modules/_create-property.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_create-property.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $defineProperty = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");

module.exports = function (object, index, value) {
  if (index in object) $defineProperty.f(object, index, createDesc(0, value));
  else object[index] = value;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_ctx.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_ctx.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// optional / simple context binding
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
module.exports = function (fn, that, length) {
  aFunction(fn);
  if (that === undefined) return fn;
  switch (length) {
    case 1: return function (a) {
      return fn.call(that, a);
    };
    case 2: return function (a, b) {
      return fn.call(that, a, b);
    };
    case 3: return function (a, b, c) {
      return fn.call(that, a, b, c);
    };
  }
  return function (/* ...args */) {
    return fn.apply(that, arguments);
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_defined.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_defined.js ***!
  \***********************************************************/
/***/ ((module) => {

// 7.2.1 RequireObjectCoercible(argument)
module.exports = function (it) {
  if (it == undefined) throw TypeError("Can't call method on  " + it);
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_descriptors.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_descriptors.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Thank's IE8 for his funny defineProperty
module.exports = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/_dom-create.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_dom-create.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").document;
// typeof document.createElement is 'object' in old IE
var is = isObject(document) && isObject(document.createElement);
module.exports = function (it) {
  return is ? document.createElement(it) : {};
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_enum-bug-keys.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_enum-bug-keys.js ***!
  \*****************************************************************/
/***/ ((module) => {

// IE 8- don't enum bug keys
module.exports = (
  'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
).split(',');


/***/ }),

/***/ "../node_modules/core-js/library/modules/_enum-keys.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_enum-keys.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// all enumerable object keys, includes symbols
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var gOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js");
module.exports = function (it) {
  var result = getKeys(it);
  var getSymbols = gOPS.f;
  if (getSymbols) {
    var symbols = getSymbols(it);
    var isEnum = pIE.f;
    var i = 0;
    var key;
    while (symbols.length > i) if (isEnum.call(it, key = symbols[i++])) result.push(key);
  } return result;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_export.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_export.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var PROTOTYPE = 'prototype';

var $export = function (type, name, source) {
  var IS_FORCED = type & $export.F;
  var IS_GLOBAL = type & $export.G;
  var IS_STATIC = type & $export.S;
  var IS_PROTO = type & $export.P;
  var IS_BIND = type & $export.B;
  var IS_WRAP = type & $export.W;
  var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
  var expProto = exports[PROTOTYPE];
  var target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE];
  var key, own, out;
  if (IS_GLOBAL) source = name;
  for (key in source) {
    // contains in native
    own = !IS_FORCED && target && target[key] !== undefined;
    if (own && has(exports, key)) continue;
    // export native or passed
    out = own ? target[key] : source[key];
    // prevent global pollution for namespaces
    exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key]
    // bind timers to global for call from export context
    : IS_BIND && own ? ctx(out, global)
    // wrap global constructors for prevent change them in library
    : IS_WRAP && target[key] == out ? (function (C) {
      var F = function (a, b, c) {
        if (this instanceof C) {
          switch (arguments.length) {
            case 0: return new C();
            case 1: return new C(a);
            case 2: return new C(a, b);
          } return new C(a, b, c);
        } return C.apply(this, arguments);
      };
      F[PROTOTYPE] = C[PROTOTYPE];
      return F;
    // make static versions for prototype methods
    })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
    // export proto methods to core.%CONSTRUCTOR%.methods.%NAME%
    if (IS_PROTO) {
      (exports.virtual || (exports.virtual = {}))[key] = out;
      // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME%
      if (type & $export.R && expProto && !expProto[key]) hide(expProto, key, out);
    }
  }
};
// type bitmap
$export.F = 1;   // forced
$export.G = 2;   // global
$export.S = 4;   // static
$export.P = 8;   // proto
$export.B = 16;  // bind
$export.W = 32;  // wrap
$export.U = 64;  // safe
$export.R = 128; // real proto method for `library`
module.exports = $export;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_fails.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_fails.js ***!
  \*********************************************************/
/***/ ((module) => {

module.exports = function (exec) {
  try {
    return !!exec();
  } catch (e) {
    return true;
  }
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_global.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_global.js ***!
  \**********************************************************/
/***/ ((module) => {

// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
var global = module.exports = typeof window != 'undefined' && window.Math == Math
  ? window : typeof self != 'undefined' && self.Math == Math ? self
  // eslint-disable-next-line no-new-func
  : Function('return this')();
if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/library/modules/_has.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_has.js ***!
  \*******************************************************/
/***/ ((module) => {

var hasOwnProperty = {}.hasOwnProperty;
module.exports = function (it, key) {
  return hasOwnProperty.call(it, key);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_hide.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_hide.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? function (object, key, value) {
  return dP.f(object, key, createDesc(1, value));
} : function (object, key, value) {
  object[key] = value;
  return object;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_html.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_html.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").document;
module.exports = document && document.documentElement;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_ie8-dom-define.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_ie8-dom-define.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") && !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  return Object.defineProperty(__webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/library/modules/_dom-create.js")('div'), 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/_invoke.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_invoke.js ***!
  \**********************************************************/
/***/ ((module) => {

// fast apply, http://jsperf.lnkit.com/fast-apply/5
module.exports = function (fn, args, that) {
  var un = that === undefined;
  switch (args.length) {
    case 0: return un ? fn()
                      : fn.call(that);
    case 1: return un ? fn(args[0])
                      : fn.call(that, args[0]);
    case 2: return un ? fn(args[0], args[1])
                      : fn.call(that, args[0], args[1]);
    case 3: return un ? fn(args[0], args[1], args[2])
                      : fn.call(that, args[0], args[1], args[2]);
    case 4: return un ? fn(args[0], args[1], args[2], args[3])
                      : fn.call(that, args[0], args[1], args[2], args[3]);
  } return fn.apply(that, args);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iobject.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iobject.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// fallback for non-array-like ES3 and non-enumerable old V8 strings
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js");
// eslint-disable-next-line no-prototype-builtins
module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
  return cof(it) == 'String' ? it.split('') : Object(it);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_is-array-iter.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_is-array-iter.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// check on default Array iterator
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var ArrayProto = Array.prototype;

module.exports = function (it) {
  return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_is-array.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_is-array.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.2.2 IsArray(argument)
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js");
module.exports = Array.isArray || function isArray(arg) {
  return cof(arg) == 'Array';
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_is-object.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_is-object.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = function (it) {
  return typeof it === 'object' ? it !== null : typeof it === 'function';
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-call.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-call.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// call something on iterator step with safe closing on error
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
module.exports = function (iterator, fn, value, entries) {
  try {
    return entries ? fn(anObject(value)[0], value[1]) : fn(value);
  // 7.4.6 IteratorClose(iterator, completion)
  } catch (e) {
    var ret = iterator['return'];
    if (ret !== undefined) anObject(ret.call(iterator));
    throw e;
  }
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-create.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-create.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
var descriptor = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var IteratorPrototype = {};

// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
__webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js")(IteratorPrototype, __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator'), function () { return this; });

module.exports = function (Constructor, NAME, next) {
  Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });
  setToStringTag(Constructor, NAME + ' Iterator');
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-define.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-define.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/library/modules/_redefine.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var $iterCreate = __webpack_require__(/*! ./_iter-create */ "../node_modules/core-js/library/modules/_iter-create.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`
var FF_ITERATOR = '@@iterator';
var KEYS = 'keys';
var VALUES = 'values';

var returnThis = function () { return this; };

module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {
  $iterCreate(Constructor, NAME, next);
  var getMethod = function (kind) {
    if (!BUGGY && kind in proto) return proto[kind];
    switch (kind) {
      case KEYS: return function keys() { return new Constructor(this, kind); };
      case VALUES: return function values() { return new Constructor(this, kind); };
    } return function entries() { return new Constructor(this, kind); };
  };
  var TAG = NAME + ' Iterator';
  var DEF_VALUES = DEFAULT == VALUES;
  var VALUES_BUG = false;
  var proto = Base.prototype;
  var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];
  var $default = $native || getMethod(DEFAULT);
  var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;
  var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;
  var methods, key, IteratorPrototype;
  // Fix native
  if ($anyNative) {
    IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));
    if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {
      // Set @@toStringTag to native iterators
      setToStringTag(IteratorPrototype, TAG, true);
      // fix for some old engines
      if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);
    }
  }
  // fix Array#{values, @@iterator}.name in V8 / FF
  if (DEF_VALUES && $native && $native.name !== VALUES) {
    VALUES_BUG = true;
    $default = function values() { return $native.call(this); };
  }
  // Define iterator
  if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {
    hide(proto, ITERATOR, $default);
  }
  // Plug for library
  Iterators[NAME] = $default;
  Iterators[TAG] = returnThis;
  if (DEFAULT) {
    methods = {
      values: DEF_VALUES ? $default : getMethod(VALUES),
      keys: IS_SET ? $default : getMethod(KEYS),
      entries: $entries
    };
    if (FORCED) for (key in methods) {
      if (!(key in proto)) redefine(proto, key, methods[key]);
    } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
  }
  return methods;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-detect.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-detect.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var SAFE_CLOSING = false;

try {
  var riter = [7][ITERATOR]();
  riter['return'] = function () { SAFE_CLOSING = true; };
  // eslint-disable-next-line no-throw-literal
  Array.from(riter, function () { throw 2; });
} catch (e) { /* empty */ }

module.exports = function (exec, skipClosing) {
  if (!skipClosing && !SAFE_CLOSING) return false;
  var safe = false;
  try {
    var arr = [7];
    var iter = arr[ITERATOR]();
    iter.next = function () { return { done: safe = true }; };
    arr[ITERATOR] = function () { return iter; };
    exec(arr);
  } catch (e) { /* empty */ }
  return safe;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-step.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-step.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = function (done, value) {
  return { value: value, done: !!done };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iterators.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iterators.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = {};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_library.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_library.js ***!
  \***********************************************************/
/***/ ((module) => {

module.exports = true;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_meta.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_meta.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var META = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js")('meta');
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var setDesc = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
var id = 0;
var isExtensible = Object.isExtensible || function () {
  return true;
};
var FREEZE = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  return isExtensible(Object.preventExtensions({}));
});
var setMeta = function (it) {
  setDesc(it, META, { value: {
    i: 'O' + ++id, // object ID
    w: {}          // weak collections IDs
  } });
};
var fastKey = function (it, create) {
  // return primitive with prefix
  if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;
  if (!has(it, META)) {
    // can't set metadata to uncaught frozen object
    if (!isExtensible(it)) return 'F';
    // not necessary to add metadata
    if (!create) return 'E';
    // add missing metadata
    setMeta(it);
  // return object ID
  } return it[META].i;
};
var getWeak = function (it, create) {
  if (!has(it, META)) {
    // can't set metadata to uncaught frozen object
    if (!isExtensible(it)) return true;
    // not necessary to add metadata
    if (!create) return false;
    // add missing metadata
    setMeta(it);
  // return hash weak collections IDs
  } return it[META].w;
};
// add metadata on freeze-family methods calling
var onFreeze = function (it) {
  if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it);
  return it;
};
var meta = module.exports = {
  KEY: META,
  NEED: false,
  fastKey: fastKey,
  getWeak: getWeak,
  onFreeze: onFreeze
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-create.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-create.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var dPs = __webpack_require__(/*! ./_object-dps */ "../node_modules/core-js/library/modules/_object-dps.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');
var Empty = function () { /* empty */ };
var PROTOTYPE = 'prototype';

// Create object with fake `null` prototype: use iframe Object with cleared prototype
var createDict = function () {
  // Thrash, waste and sodomy: IE GC bug
  var iframe = __webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/library/modules/_dom-create.js")('iframe');
  var i = enumBugKeys.length;
  var lt = '<';
  var gt = '>';
  var iframeDocument;
  iframe.style.display = 'none';
  __webpack_require__(/*! ./_html */ "../node_modules/core-js/library/modules/_html.js").appendChild(iframe);
  iframe.src = 'javascript:'; // eslint-disable-line no-script-url
  // createDict = iframe.contentWindow.Object;
  // html.removeChild(iframe);
  iframeDocument = iframe.contentWindow.document;
  iframeDocument.open();
  iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);
  iframeDocument.close();
  createDict = iframeDocument.F;
  while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];
  return createDict();
};

module.exports = Object.create || function create(O, Properties) {
  var result;
  if (O !== null) {
    Empty[PROTOTYPE] = anObject(O);
    result = new Empty();
    Empty[PROTOTYPE] = null;
    // add "__proto__" for Object.getPrototypeOf polyfill
    result[IE_PROTO] = O;
  } else result = createDict();
  return Properties === undefined ? result : dPs(result, Properties);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-dp.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-dp.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/library/modules/_ie8-dom-define.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
var dP = Object.defineProperty;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? Object.defineProperty : function defineProperty(O, P, Attributes) {
  anObject(O);
  P = toPrimitive(P, true);
  anObject(Attributes);
  if (IE8_DOM_DEFINE) try {
    return dP(O, P, Attributes);
  } catch (e) { /* empty */ }
  if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
  if ('value' in Attributes) O[P] = Attributes.value;
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-dps.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-dps.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");

module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? Object.defineProperties : function defineProperties(O, Properties) {
  anObject(O);
  var keys = getKeys(Properties);
  var length = keys.length;
  var i = 0;
  var P;
  while (length > i) dP.f(O, P = keys[i++], Properties[P]);
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gopd.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gopd.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/library/modules/_ie8-dom-define.js");
var gOPD = Object.getOwnPropertyDescriptor;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? gOPD : function getOwnPropertyDescriptor(O, P) {
  O = toIObject(O);
  P = toPrimitive(P, true);
  if (IE8_DOM_DEFINE) try {
    return gOPD(O, P);
  } catch (e) { /* empty */ }
  if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gopn-ext.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gopn-ext.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var gOPN = __webpack_require__(/*! ./_object-gopn */ "../node_modules/core-js/library/modules/_object-gopn.js").f;
var toString = {}.toString;

var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames
  ? Object.getOwnPropertyNames(window) : [];

var getWindowNames = function (it) {
  try {
    return gOPN(it);
  } catch (e) {
    return windowNames.slice();
  }
};

module.exports.f = function getOwnPropertyNames(it) {
  return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gopn.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gopn.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)
var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/library/modules/_object-keys-internal.js");
var hiddenKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js").concat('length', 'prototype');

exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
  return $keys(O, hiddenKeys);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gops.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gops.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports) => {

exports.f = Object.getOwnPropertySymbols;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gpo.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gpo.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');
var ObjectProto = Object.prototype;

module.exports = Object.getPrototypeOf || function (O) {
  O = toObject(O);
  if (has(O, IE_PROTO)) return O[IE_PROTO];
  if (typeof O.constructor == 'function' && O instanceof O.constructor) {
    return O.constructor.prototype;
  } return O instanceof Object ? ObjectProto : null;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-keys-internal.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-keys-internal.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var arrayIndexOf = __webpack_require__(/*! ./_array-includes */ "../node_modules/core-js/library/modules/_array-includes.js")(false);
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');

module.exports = function (object, names) {
  var O = toIObject(object);
  var i = 0;
  var result = [];
  var key;
  for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);
  // Don't enum bug & hidden keys
  while (names.length > i) if (has(O, key = names[i++])) {
    ~arrayIndexOf(result, key) || result.push(key);
  }
  return result;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-keys.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-keys.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.14 / 15.2.3.14 Object.keys(O)
var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/library/modules/_object-keys-internal.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js");

module.exports = Object.keys || function keys(O) {
  return $keys(O, enumBugKeys);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-pie.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-pie.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports) => {

exports.f = {}.propertyIsEnumerable;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-sap.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-sap.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// most Object methods by ES6 should accept primitives
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
module.exports = function (KEY, exec) {
  var fn = (core.Object || {})[KEY] || Object[KEY];
  var exp = {};
  exp[KEY] = exec(fn);
  $export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-to-array.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-to-array.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var isEnum = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js").f;
module.exports = function (isEntries) {
  return function (it) {
    var O = toIObject(it);
    var keys = getKeys(O);
    var length = keys.length;
    var i = 0;
    var result = [];
    var key;
    while (length > i) {
      key = keys[i++];
      if (!DESCRIPTORS || isEnum.call(O, key)) {
        result.push(isEntries ? [key, O[key]] : O[key]);
      }
    }
    return result;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_property-desc.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_property-desc.js ***!
  \*****************************************************************/
/***/ ((module) => {

module.exports = function (bitmap, value) {
  return {
    enumerable: !(bitmap & 1),
    configurable: !(bitmap & 2),
    writable: !(bitmap & 4),
    value: value
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_redefine.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_redefine.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-proto.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-proto.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Works with __proto__ only. Old v8 can't work with null proto objects.
/* eslint-disable no-proto */
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var check = function (O, proto) {
  anObject(O);
  if (!isObject(proto) && proto !== null) throw TypeError(proto + ": can't set as prototype!");
};
module.exports = {
  set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line
    function (test, buggy, set) {
      try {
        set = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js")(Function.call, __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js").f(Object.prototype, '__proto__').set, 2);
        set(test, []);
        buggy = !(test instanceof Array);
      } catch (e) { buggy = true; }
      return function setPrototypeOf(O, proto) {
        check(O, proto);
        if (buggy) O.__proto__ = proto;
        else set(O, proto);
        return O;
      };
    }({}, false) : undefined),
  check: check
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-to-string-tag.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-to-string-tag.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var def = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('toStringTag');

module.exports = function (it, tag, stat) {
  if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_shared-key.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_shared-key.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var shared = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js")('keys');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
module.exports = function (key) {
  return shared[key] || (shared[key] = uid(key));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_shared.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_shared.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var SHARED = '__core-js_shared__';
var store = global[SHARED] || (global[SHARED] = {});

(module.exports = function (key, value) {
  return store[key] || (store[key] = value !== undefined ? value : {});
})('versions', []).push({
  version: core.version,
  mode: __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js") ? 'pure' : 'global',
  copyright: '© 2020 Denis Pushkarev (zloirock.ru)'
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/_string-at.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_string-at.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
// true  -> String#at
// false -> String#codePointAt
module.exports = function (TO_STRING) {
  return function (that, pos) {
    var s = String(defined(that));
    var i = toInteger(pos);
    var l = s.length;
    var a, b;
    if (i < 0 || i >= l) return TO_STRING ? '' : undefined;
    a = s.charCodeAt(i);
    return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
      ? TO_STRING ? s.charAt(i) : a
      : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-absolute-index.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-absolute-index.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
var max = Math.max;
var min = Math.min;
module.exports = function (index, length) {
  index = toInteger(index);
  return index < 0 ? max(index + length, 0) : min(index, length);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-integer.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-integer.js ***!
  \**************************************************************/
/***/ ((module) => {

// 7.1.4 ToInteger
var ceil = Math.ceil;
var floor = Math.floor;
module.exports = function (it) {
  return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-iobject.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-iobject.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// to indexed object, toObject with fallback for non-array-like ES3 strings
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/library/modules/_iobject.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
module.exports = function (it) {
  return IObject(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-length.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-length.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.15 ToLength
var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
var min = Math.min;
module.exports = function (it) {
  return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-object.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-object.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.13 ToObject(argument)
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
module.exports = function (it) {
  return Object(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-primitive.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-primitive.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.1 ToPrimitive(input [, PreferredType])
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
// instead of the ES6 spec version, we didn't implement @@toPrimitive case
// and the second argument - flag - preferred type is a string
module.exports = function (it, S) {
  if (!isObject(it)) return it;
  var fn, val;
  if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
  if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  throw TypeError("Can't convert object to primitive value");
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_uid.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_uid.js ***!
  \*******************************************************/
/***/ ((module) => {

var id = 0;
var px = Math.random();
module.exports = function (key) {
  return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_wks-define.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_wks-define.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js");
var wksExt = __webpack_require__(/*! ./_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js");
var defineProperty = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
module.exports = function (name) {
  var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {});
  if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_wks-ext.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_wks-ext.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

exports.f = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js");


/***/ }),

/***/ "../node_modules/core-js/library/modules/_wks.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_wks.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var store = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js")('wks');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
var Symbol = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").Symbol;
var USE_SYMBOL = typeof Symbol == 'function';

var $exports = module.exports = function (name) {
  return store[name] || (store[name] =
    USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
};

$exports.store = store;


/***/ }),

/***/ "../node_modules/core-js/library/modules/core.get-iterator-method.js":
/*!***************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/core.get-iterator-method.js ***!
  \***************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/library/modules/_classof.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
module.exports = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js").getIteratorMethod = function (it) {
  if (it != undefined) return it[ITERATOR]
    || it['@@iterator']
    || Iterators[classof(it)];
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.array.from.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.array.from.js ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var call = __webpack_require__(/*! ./_iter-call */ "../node_modules/core-js/library/modules/_iter-call.js");
var isArrayIter = __webpack_require__(/*! ./_is-array-iter */ "../node_modules/core-js/library/modules/_is-array-iter.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
var createProperty = __webpack_require__(/*! ./_create-property */ "../node_modules/core-js/library/modules/_create-property.js");
var getIterFn = __webpack_require__(/*! ./core.get-iterator-method */ "../node_modules/core-js/library/modules/core.get-iterator-method.js");

$export($export.S + $export.F * !__webpack_require__(/*! ./_iter-detect */ "../node_modules/core-js/library/modules/_iter-detect.js")(function (iter) { Array.from(iter); }), 'Array', {
  // 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined)
  from: function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {
    var O = toObject(arrayLike);
    var C = typeof this == 'function' ? this : Array;
    var aLen = arguments.length;
    var mapfn = aLen > 1 ? arguments[1] : undefined;
    var mapping = mapfn !== undefined;
    var index = 0;
    var iterFn = getIterFn(O);
    var length, result, step, iterator;
    if (mapping) mapfn = ctx(mapfn, aLen > 2 ? arguments[2] : undefined, 2);
    // if object isn't iterable or it's array with default iterator - use simple case
    if (iterFn != undefined && !(C == Array && isArrayIter(iterFn))) {
      for (iterator = iterFn.call(O), result = new C(); !(step = iterator.next()).done; index++) {
        createProperty(result, index, mapping ? call(iterator, mapfn, [step.value, index], true) : step.value);
      }
    } else {
      length = toLength(O.length);
      for (result = new C(length); length > index; index++) {
        createProperty(result, index, mapping ? mapfn(O[index], index) : O[index]);
      }
    }
    result.length = index;
    return result;
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.array.is-array.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.array.is-array.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 22.1.2.2 / 15.4.3.2 Array.isArray(arg)
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");

$export($export.S, 'Array', { isArray: __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/library/modules/_is-array.js") });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.array.iterator.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.array.iterator.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var addToUnscopables = __webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/library/modules/_add-to-unscopables.js");
var step = __webpack_require__(/*! ./_iter-step */ "../node_modules/core-js/library/modules/_iter-step.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");

// 22.1.3.4 Array.prototype.entries()
// 22.1.3.13 Array.prototype.keys()
// 22.1.3.29 Array.prototype.values()
// 22.1.3.30 Array.prototype[@@iterator]()
module.exports = __webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/library/modules/_iter-define.js")(Array, 'Array', function (iterated, kind) {
  this._t = toIObject(iterated); // target
  this._i = 0;                   // next index
  this._k = kind;                // kind
// 22.1.5.2.1 %ArrayIteratorPrototype%.next()
}, function () {
  var O = this._t;
  var kind = this._k;
  var index = this._i++;
  if (!O || index >= O.length) {
    this._t = undefined;
    return step(1);
  }
  if (kind == 'keys') return step(0, index);
  if (kind == 'values') return step(0, O[index]);
  return step(0, [index, O[index]]);
}, 'values');

// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
Iterators.Arguments = Iterators.Array;

addToUnscopables('keys');
addToUnscopables('values');
addToUnscopables('entries');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.function.has-instance.js":
/*!****************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.function.has-instance.js ***!
  \****************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");
var HAS_INSTANCE = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('hasInstance');
var FunctionProto = Function.prototype;
// 19.2.3.6 Function.prototype[@@hasInstance](V)
if (!(HAS_INSTANCE in FunctionProto)) __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f(FunctionProto, HAS_INSTANCE, { value: function (O) {
  if (typeof this != 'function' || !isObject(O)) return false;
  if (!isObject(this.prototype)) return O instanceof this;
  // for environment w/o native `@@hasInstance` logic enough `instanceof`, but add this:
  while (O = getPrototypeOf(O)) if (this.prototype === O) return true;
  return false;
} });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.create.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.create.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
$export($export.S, 'Object', { create: __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js") });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.define-property.js":
/*!*****************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.define-property.js ***!
  \*****************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)
$export($export.S + $export.F * !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js"), 'Object', { defineProperty: __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js":
/*!*****************************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js ***!
  \*****************************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var $getOwnPropertyDescriptor = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js").f;

__webpack_require__(/*! ./_object-sap */ "../node_modules/core-js/library/modules/_object-sap.js")('getOwnPropertyDescriptor', function () {
  return function getOwnPropertyDescriptor(it, key) {
    return $getOwnPropertyDescriptor(toIObject(it), key);
  };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.get-prototype-of.js":
/*!******************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.get-prototype-of.js ***!
  \******************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.9 Object.getPrototypeOf(O)
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var $getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");

__webpack_require__(/*! ./_object-sap */ "../node_modules/core-js/library/modules/_object-sap.js")('getPrototypeOf', function () {
  return function getPrototypeOf(it) {
    return $getPrototypeOf(toObject(it));
  };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.keys.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.keys.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.14 Object.keys(O)
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var $keys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");

__webpack_require__(/*! ./_object-sap */ "../node_modules/core-js/library/modules/_object-sap.js")('keys', function () {
  return function keys(it) {
    return $keys(toObject(it));
  };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.set-prototype-of.js":
/*!******************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.set-prototype-of.js ***!
  \******************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.3.19 Object.setPrototypeOf(O, proto)
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
$export($export.S, 'Object', { setPrototypeOf: __webpack_require__(/*! ./_set-proto */ "../node_modules/core-js/library/modules/_set-proto.js").set });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.to-string.js":
/*!***********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.to-string.js ***!
  \***********************************************************************/
/***/ (() => {



/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.reflect.construct.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.reflect.construct.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 26.1.2 Reflect.construct(target, argumentsList [, newTarget])
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
var bind = __webpack_require__(/*! ./_bind */ "../node_modules/core-js/library/modules/_bind.js");
var rConstruct = (__webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").Reflect || {}).construct;

// MS Edge supports only 2 arguments and argumentsList argument is optional
// FF Nightly sets third argument as `new.target`, but does not create `this` from it
var NEW_TARGET_BUG = fails(function () {
  function F() { /* empty */ }
  return !(rConstruct(function () { /* empty */ }, [], F) instanceof F);
});
var ARGS_BUG = !fails(function () {
  rConstruct(function () { /* empty */ });
});

$export($export.S + $export.F * (NEW_TARGET_BUG || ARGS_BUG), 'Reflect', {
  construct: function construct(Target, args /* , newTarget */) {
    aFunction(Target);
    anObject(args);
    var newTarget = arguments.length < 3 ? Target : aFunction(arguments[2]);
    if (ARGS_BUG && !NEW_TARGET_BUG) return rConstruct(Target, args, newTarget);
    if (Target == newTarget) {
      // w/o altered newTarget, optimization for 0-4 arguments
      switch (args.length) {
        case 0: return new Target();
        case 1: return new Target(args[0]);
        case 2: return new Target(args[0], args[1]);
        case 3: return new Target(args[0], args[1], args[2]);
        case 4: return new Target(args[0], args[1], args[2], args[3]);
      }
      // w/o altered newTarget, lot of arguments case
      var $args = [null];
      $args.push.apply($args, args);
      return new (bind.apply(Target, $args))();
    }
    // with altered newTarget, not support built-in constructors
    var proto = newTarget.prototype;
    var instance = create(isObject(proto) ? proto : Object.prototype);
    var result = Function.apply.call(Target, instance, args);
    return isObject(result) ? result : instance;
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.reflect.get.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.reflect.get.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 26.1.6 Reflect.get(target, propertyKey [, receiver])
var gOPD = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js");
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");

function get(target, propertyKey /* , receiver */) {
  var receiver = arguments.length < 3 ? target : arguments[2];
  var desc, proto;
  if (anObject(target) === receiver) return target[propertyKey];
  if (desc = gOPD.f(target, propertyKey)) return has(desc, 'value')
    ? desc.value
    : desc.get !== undefined
      ? desc.get.call(receiver)
      : undefined;
  if (isObject(proto = getPrototypeOf(target))) return get(proto, propertyKey, receiver);
}

$export($export.S, 'Reflect', { get: get });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.string.iterator.js":
/*!**********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.string.iterator.js ***!
  \**********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $at = __webpack_require__(/*! ./_string-at */ "../node_modules/core-js/library/modules/_string-at.js")(true);

// 21.1.3.27 String.prototype[@@iterator]()
__webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/library/modules/_iter-define.js")(String, 'String', function (iterated) {
  this._t = String(iterated); // target
  this._i = 0;                // next index
// 21.1.5.2.1 %StringIteratorPrototype%.next()
}, function () {
  var O = this._t;
  var index = this._i;
  var point;
  if (index >= O.length) return { value: undefined, done: true };
  point = $at(O, index);
  this._i += point.length;
  return { value: point, done: false };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.symbol.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.symbol.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// ECMAScript 6 symbols shim
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/library/modules/_redefine.js");
var META = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js").KEY;
var $fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
var shared = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
var wks = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js");
var wksExt = __webpack_require__(/*! ./_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js");
var wksDefine = __webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js");
var enumKeys = __webpack_require__(/*! ./_enum-keys */ "../node_modules/core-js/library/modules/_enum-keys.js");
var isArray = __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/library/modules/_is-array.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
var _create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
var gOPNExt = __webpack_require__(/*! ./_object-gopn-ext */ "../node_modules/core-js/library/modules/_object-gopn-ext.js");
var $GOPD = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js");
var $GOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
var $DP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var $keys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var gOPD = $GOPD.f;
var dP = $DP.f;
var gOPN = gOPNExt.f;
var $Symbol = global.Symbol;
var $JSON = global.JSON;
var _stringify = $JSON && $JSON.stringify;
var PROTOTYPE = 'prototype';
var HIDDEN = wks('_hidden');
var TO_PRIMITIVE = wks('toPrimitive');
var isEnum = {}.propertyIsEnumerable;
var SymbolRegistry = shared('symbol-registry');
var AllSymbols = shared('symbols');
var OPSymbols = shared('op-symbols');
var ObjectProto = Object[PROTOTYPE];
var USE_NATIVE = typeof $Symbol == 'function' && !!$GOPS.f;
var QObject = global.QObject;
// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173
var setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;

// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687
var setSymbolDesc = DESCRIPTORS && $fails(function () {
  return _create(dP({}, 'a', {
    get: function () { return dP(this, 'a', { value: 7 }).a; }
  })).a != 7;
}) ? function (it, key, D) {
  var protoDesc = gOPD(ObjectProto, key);
  if (protoDesc) delete ObjectProto[key];
  dP(it, key, D);
  if (protoDesc && it !== ObjectProto) dP(ObjectProto, key, protoDesc);
} : dP;

var wrap = function (tag) {
  var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]);
  sym._k = tag;
  return sym;
};

var isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function (it) {
  return typeof it == 'symbol';
} : function (it) {
  return it instanceof $Symbol;
};

var $defineProperty = function defineProperty(it, key, D) {
  if (it === ObjectProto) $defineProperty(OPSymbols, key, D);
  anObject(it);
  key = toPrimitive(key, true);
  anObject(D);
  if (has(AllSymbols, key)) {
    if (!D.enumerable) {
      if (!has(it, HIDDEN)) dP(it, HIDDEN, createDesc(1, {}));
      it[HIDDEN][key] = true;
    } else {
      if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false;
      D = _create(D, { enumerable: createDesc(0, false) });
    } return setSymbolDesc(it, key, D);
  } return dP(it, key, D);
};
var $defineProperties = function defineProperties(it, P) {
  anObject(it);
  var keys = enumKeys(P = toIObject(P));
  var i = 0;
  var l = keys.length;
  var key;
  while (l > i) $defineProperty(it, key = keys[i++], P[key]);
  return it;
};
var $create = function create(it, P) {
  return P === undefined ? _create(it) : $defineProperties(_create(it), P);
};
var $propertyIsEnumerable = function propertyIsEnumerable(key) {
  var E = isEnum.call(this, key = toPrimitive(key, true));
  if (this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return false;
  return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true;
};
var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key) {
  it = toIObject(it);
  key = toPrimitive(key, true);
  if (it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return;
  var D = gOPD(it, key);
  if (D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) D.enumerable = true;
  return D;
};
var $getOwnPropertyNames = function getOwnPropertyNames(it) {
  var names = gOPN(toIObject(it));
  var result = [];
  var i = 0;
  var key;
  while (names.length > i) {
    if (!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META) result.push(key);
  } return result;
};
var $getOwnPropertySymbols = function getOwnPropertySymbols(it) {
  var IS_OP = it === ObjectProto;
  var names = gOPN(IS_OP ? OPSymbols : toIObject(it));
  var result = [];
  var i = 0;
  var key;
  while (names.length > i) {
    if (has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true)) result.push(AllSymbols[key]);
  } return result;
};

// 19.4.1.1 Symbol([description])
if (!USE_NATIVE) {
  $Symbol = function Symbol() {
    if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor!');
    var tag = uid(arguments.length > 0 ? arguments[0] : undefined);
    var $set = function (value) {
      if (this === ObjectProto) $set.call(OPSymbols, value);
      if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;
      setSymbolDesc(this, tag, createDesc(1, value));
    };
    if (DESCRIPTORS && setter) setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set });
    return wrap(tag);
  };
  redefine($Symbol[PROTOTYPE], 'toString', function toString() {
    return this._k;
  });

  $GOPD.f = $getOwnPropertyDescriptor;
  $DP.f = $defineProperty;
  __webpack_require__(/*! ./_object-gopn */ "../node_modules/core-js/library/modules/_object-gopn.js").f = gOPNExt.f = $getOwnPropertyNames;
  __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js").f = $propertyIsEnumerable;
  $GOPS.f = $getOwnPropertySymbols;

  if (DESCRIPTORS && !__webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js")) {
    redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);
  }

  wksExt.f = function (name) {
    return wrap(wks(name));
  };
}

$export($export.G + $export.W + $export.F * !USE_NATIVE, { Symbol: $Symbol });

for (var es6Symbols = (
  // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14
  'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'
).split(','), j = 0; es6Symbols.length > j;)wks(es6Symbols[j++]);

for (var wellKnownSymbols = $keys(wks.store), k = 0; wellKnownSymbols.length > k;) wksDefine(wellKnownSymbols[k++]);

$export($export.S + $export.F * !USE_NATIVE, 'Symbol', {
  // 19.4.2.1 Symbol.for(key)
  'for': function (key) {
    return has(SymbolRegistry, key += '')
      ? SymbolRegistry[key]
      : SymbolRegistry[key] = $Symbol(key);
  },
  // 19.4.2.5 Symbol.keyFor(sym)
  keyFor: function keyFor(sym) {
    if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol!');
    for (var key in SymbolRegistry) if (SymbolRegistry[key] === sym) return key;
  },
  useSetter: function () { setter = true; },
  useSimple: function () { setter = false; }
});

$export($export.S + $export.F * !USE_NATIVE, 'Object', {
  // 19.1.2.2 Object.create(O [, Properties])
  create: $create,
  // 19.1.2.4 Object.defineProperty(O, P, Attributes)
  defineProperty: $defineProperty,
  // 19.1.2.3 Object.defineProperties(O, Properties)
  defineProperties: $defineProperties,
  // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
  getOwnPropertyDescriptor: $getOwnPropertyDescriptor,
  // 19.1.2.7 Object.getOwnPropertyNames(O)
  getOwnPropertyNames: $getOwnPropertyNames,
  // 19.1.2.8 Object.getOwnPropertySymbols(O)
  getOwnPropertySymbols: $getOwnPropertySymbols
});

// Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives
// https://bugs.chromium.org/p/v8/issues/detail?id=3443
var FAILS_ON_PRIMITIVES = $fails(function () { $GOPS.f(1); });

$export($export.S + $export.F * FAILS_ON_PRIMITIVES, 'Object', {
  getOwnPropertySymbols: function getOwnPropertySymbols(it) {
    return $GOPS.f(toObject(it));
  }
});

// 24.3.2 JSON.stringify(value [, replacer [, space]])
$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function () {
  var S = $Symbol();
  // MS Edge converts symbol values to JSON as {}
  // WebKit converts symbol values to JSON as null
  // V8 throws on boxed symbols
  return _stringify([S]) != '[null]' || _stringify({ a: S }) != '{}' || _stringify(Object(S)) != '{}';
})), 'JSON', {
  stringify: function stringify(it) {
    var args = [it];
    var i = 1;
    var replacer, $replacer;
    while (arguments.length > i) args.push(arguments[i++]);
    $replacer = replacer = args[1];
    if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined
    if (!isArray(replacer)) replacer = function (key, value) {
      if (typeof $replacer == 'function') value = $replacer.call(this, key, value);
      if (!isSymbol(value)) return value;
    };
    args[1] = replacer;
    return _stringify.apply($JSON, args);
  }
});

// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint)
$Symbol[PROTOTYPE][TO_PRIMITIVE] || __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js")($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);
// 19.4.3.5 Symbol.prototype[@@toStringTag]
setToStringTag($Symbol, 'Symbol');
// 20.2.1.9 Math[@@toStringTag]
setToStringTag(Math, 'Math', true);
// 24.3.3 JSON[@@toStringTag]
setToStringTag(global.JSON, 'JSON', true);


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.object.entries.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.object.entries.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://github.com/tc39/proposal-object-values-entries
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var $entries = __webpack_require__(/*! ./_object-to-array */ "../node_modules/core-js/library/modules/_object-to-array.js")(true);

$export($export.S, 'Object', {
  entries: function entries(it) {
    return $entries(it);
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.object.values.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.object.values.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://github.com/tc39/proposal-object-values-entries
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var $values = __webpack_require__(/*! ./_object-to-array */ "../node_modules/core-js/library/modules/_object-to-array.js")(false);

$export($export.S, 'Object', {
  values: function values(it) {
    return $values(it);
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.symbol.async-iterator.js":
/*!****************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.symbol.async-iterator.js ***!
  \****************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js")('asyncIterator');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.symbol.observable.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.symbol.observable.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js")('observable');


/***/ }),

/***/ "../node_modules/core-js/library/modules/web.dom.iterable.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/web.dom.iterable.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ./es6.array.iterator */ "../node_modules/core-js/library/modules/es6.array.iterator.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var TO_STRING_TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('toStringTag');

var DOMIterables = ('CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,' +
  'DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,' +
  'MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,' +
  'SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,' +
  'TextTrackList,TouchList').split(',');

for (var i = 0; i < DOMIterables.length; i++) {
  var NAME = DOMIterables[i];
  var Collection = global[NAME];
  var proto = Collection && Collection.prototype;
  if (proto && !proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);
  Iterators[NAME] = Iterators.Array;
}


/***/ }),

/***/ "../node_modules/core-js/modules/_a-function.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_a-function.js ***!
  \******************************************************/
/***/ ((module) => {

module.exports = function (it) {
  if (typeof it != 'function') throw TypeError(it + ' is not a function!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_add-to-unscopables.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/modules/_add-to-unscopables.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 22.1.3.31 Array.prototype[@@unscopables]
var UNSCOPABLES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('unscopables');
var ArrayProto = Array.prototype;
if (ArrayProto[UNSCOPABLES] == undefined) __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js")(ArrayProto, UNSCOPABLES, {});
module.exports = function (key) {
  ArrayProto[UNSCOPABLES][key] = true;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_advance-string-index.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_advance-string-index.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var at = __webpack_require__(/*! ./_string-at */ "../node_modules/core-js/modules/_string-at.js")(true);

 // `AdvanceStringIndex` abstract operation
// https://tc39.github.io/ecma262/#sec-advancestringindex
module.exports = function (S, index, unicode) {
  return index + (unicode ? at(S, index).length : 1);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_an-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_an-object.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
module.exports = function (it) {
  if (!isObject(it)) throw TypeError(it + ' is not an object!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-includes.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/_array-includes.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// false -> Array#indexOf
// true  -> Array#includes
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/modules/_to-iobject.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var toAbsoluteIndex = __webpack_require__(/*! ./_to-absolute-index */ "../node_modules/core-js/modules/_to-absolute-index.js");
module.exports = function (IS_INCLUDES) {
  return function ($this, el, fromIndex) {
    var O = toIObject($this);
    var length = toLength(O.length);
    var index = toAbsoluteIndex(fromIndex, length);
    var value;
    // Array#includes uses SameValueZero equality algorithm
    // eslint-disable-next-line no-self-compare
    if (IS_INCLUDES && el != el) while (length > index) {
      value = O[index++];
      // eslint-disable-next-line no-self-compare
      if (value != value) return true;
    // Array#indexOf ignores holes, Array#includes - not
    } else for (;length > index; index++) if (IS_INCLUDES || index in O) {
      if (O[index] === el) return IS_INCLUDES || index || 0;
    } return !IS_INCLUDES && -1;
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-methods.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_array-methods.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 0 -> Array#forEach
// 1 -> Array#map
// 2 -> Array#filter
// 3 -> Array#some
// 4 -> Array#every
// 5 -> Array#find
// 6 -> Array#findIndex
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/modules/_ctx.js");
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/modules/_iobject.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/modules/_to-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var asc = __webpack_require__(/*! ./_array-species-create */ "../node_modules/core-js/modules/_array-species-create.js");
module.exports = function (TYPE, $create) {
  var IS_MAP = TYPE == 1;
  var IS_FILTER = TYPE == 2;
  var IS_SOME = TYPE == 3;
  var IS_EVERY = TYPE == 4;
  var IS_FIND_INDEX = TYPE == 6;
  var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
  var create = $create || asc;
  return function ($this, callbackfn, that) {
    var O = toObject($this);
    var self = IObject(O);
    var f = ctx(callbackfn, that, 3);
    var length = toLength(self.length);
    var index = 0;
    var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;
    var val, res;
    for (;length > index; index++) if (NO_HOLES || index in self) {
      val = self[index];
      res = f(val, index, O);
      if (TYPE) {
        if (IS_MAP) result[index] = res;   // map
        else if (res) switch (TYPE) {
          case 3: return true;             // some
          case 5: return val;              // find
          case 6: return index;            // findIndex
          case 2: result.push(val);        // filter
        } else if (IS_EVERY) return false; // every
      }
    }
    return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-species-constructor.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/modules/_array-species-constructor.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var isArray = __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/modules/_is-array.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('species');

module.exports = function (original) {
  var C;
  if (isArray(original)) {
    C = original.constructor;
    // cross-realm fallback
    if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
    if (isObject(C)) {
      C = C[SPECIES];
      if (C === null) C = undefined;
    }
  } return C === undefined ? Array : C;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-species-create.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_array-species-create.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 9.4.2.3 ArraySpeciesCreate(originalArray, length)
var speciesConstructor = __webpack_require__(/*! ./_array-species-constructor */ "../node_modules/core-js/modules/_array-species-constructor.js");

module.exports = function (original, length) {
  return new (speciesConstructor(original))(length);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_classof.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_classof.js ***!
  \***************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// getting tag from 19.1.3.6 Object.prototype.toString()
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('toStringTag');
// ES3 wrong here
var ARG = cof(function () { return arguments; }()) == 'Arguments';

// fallback for IE11 Script Access Denied error
var tryGet = function (it, key) {
  try {
    return it[key];
  } catch (e) { /* empty */ }
};

module.exports = function (it) {
  var O, T, B;
  return it === undefined ? 'Undefined' : it === null ? 'Null'
    // @@toStringTag case
    : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T
    // builtinTag case
    : ARG ? cof(O)
    // ES3 arguments fallback
    : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_cof.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_cof.js ***!
  \***********************************************/
/***/ ((module) => {

var toString = {}.toString;

module.exports = function (it) {
  return toString.call(it).slice(8, -1);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_core.js":
/*!************************************************!*\
  !*** ../node_modules/core-js/modules/_core.js ***!
  \************************************************/
/***/ ((module) => {

var core = module.exports = { version: '2.6.12' };
if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/modules/_ctx.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_ctx.js ***!
  \***********************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// optional / simple context binding
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/modules/_a-function.js");
module.exports = function (fn, that, length) {
  aFunction(fn);
  if (that === undefined) return fn;
  switch (length) {
    case 1: return function (a) {
      return fn.call(that, a);
    };
    case 2: return function (a, b) {
      return fn.call(that, a, b);
    };
    case 3: return function (a, b, c) {
      return fn.call(that, a, b, c);
    };
  }
  return function (/* ...args */) {
    return fn.apply(that, arguments);
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_defined.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_defined.js ***!
  \***************************************************/
/***/ ((module) => {

// 7.2.1 RequireObjectCoercible(argument)
module.exports = function (it) {
  if (it == undefined) throw TypeError("Can't call method on  " + it);
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_descriptors.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_descriptors.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Thank's IE8 for his funny defineProperty
module.exports = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () {
  return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/modules/_dom-create.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_dom-create.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js").document;
// typeof document.createElement is 'object' in old IE
var is = isObject(document) && isObject(document.createElement);
module.exports = function (it) {
  return is ? document.createElement(it) : {};
};


/***/ }),

/***/ "../node_modules/core-js/modules/_enum-bug-keys.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_enum-bug-keys.js ***!
  \*********************************************************/
/***/ ((module) => {

// IE 8- don't enum bug keys
module.exports = (
  'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
).split(',');


/***/ }),

/***/ "../node_modules/core-js/modules/_export.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_export.js ***!
  \**************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/modules/_ctx.js");
var PROTOTYPE = 'prototype';

var $export = function (type, name, source) {
  var IS_FORCED = type & $export.F;
  var IS_GLOBAL = type & $export.G;
  var IS_STATIC = type & $export.S;
  var IS_PROTO = type & $export.P;
  var IS_BIND = type & $export.B;
  var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE];
  var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
  var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {});
  var key, own, out, exp;
  if (IS_GLOBAL) source = name;
  for (key in source) {
    // contains in native
    own = !IS_FORCED && target && target[key] !== undefined;
    // export native or passed
    out = (own ? target : source)[key];
    // bind timers to global for call from export context
    exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
    // extend global
    if (target) redefine(target, key, out, type & $export.U);
    // export
    if (exports[key] != out) hide(exports, key, exp);
    if (IS_PROTO && expProto[key] != out) expProto[key] = out;
  }
};
global.core = core;
// type bitmap
$export.F = 1;   // forced
$export.G = 2;   // global
$export.S = 4;   // static
$export.P = 8;   // proto
$export.B = 16;  // bind
$export.W = 32;  // wrap
$export.U = 64;  // safe
$export.R = 128; // real proto method for `library`
module.exports = $export;


/***/ }),

/***/ "../node_modules/core-js/modules/_fails-is-regexp.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/_fails-is-regexp.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var MATCH = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('match');
module.exports = function (KEY) {
  var re = /./;
  try {
    '/./'[KEY](re);
  } catch (e) {
    try {
      re[MATCH] = false;
      return !'/./'[KEY](re);
    } catch (f) { /* empty */ }
  } return true;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_fails.js":
/*!*************************************************!*\
  !*** ../node_modules/core-js/modules/_fails.js ***!
  \*************************************************/
/***/ ((module) => {

module.exports = function (exec) {
  try {
    return !!exec();
  } catch (e) {
    return true;
  }
};


/***/ }),

/***/ "../node_modules/core-js/modules/_fix-re-wks.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_fix-re-wks.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

__webpack_require__(/*! ./es6.regexp.exec */ "../node_modules/core-js/modules/es6.regexp.exec.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
var wks = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js");
var regexpExec = __webpack_require__(/*! ./_regexp-exec */ "../node_modules/core-js/modules/_regexp-exec.js");

var SPECIES = wks('species');

var REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {
  // #replace needs built-in support for named groups.
  // #match works fine because it just return the exec results, even if it has
  // a "grops" property.
  var re = /./;
  re.exec = function () {
    var result = [];
    result.groups = { a: '7' };
    return result;
  };
  return ''.replace(re, '$<a>') !== '7';
});

var SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = (function () {
  // Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec
  var re = /(?:)/;
  var originalExec = re.exec;
  re.exec = function () { return originalExec.apply(this, arguments); };
  var result = 'ab'.split(re);
  return result.length === 2 && result[0] === 'a' && result[1] === 'b';
})();

module.exports = function (KEY, length, exec) {
  var SYMBOL = wks(KEY);

  var DELEGATES_TO_SYMBOL = !fails(function () {
    // String methods call symbol-named RegEp methods
    var O = {};
    O[SYMBOL] = function () { return 7; };
    return ''[KEY](O) != 7;
  });

  var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL ? !fails(function () {
    // Symbol-named RegExp methods call .exec
    var execCalled = false;
    var re = /a/;
    re.exec = function () { execCalled = true; return null; };
    if (KEY === 'split') {
      // RegExp[@@split] doesn't call the regex's exec method, but first creates
      // a new one. We need to return the patched regex when creating the new one.
      re.constructor = {};
      re.constructor[SPECIES] = function () { return re; };
    }
    re[SYMBOL]('');
    return !execCalled;
  }) : undefined;

  if (
    !DELEGATES_TO_SYMBOL ||
    !DELEGATES_TO_EXEC ||
    (KEY === 'replace' && !REPLACE_SUPPORTS_NAMED_GROUPS) ||
    (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)
  ) {
    var nativeRegExpMethod = /./[SYMBOL];
    var fns = exec(
      defined,
      SYMBOL,
      ''[KEY],
      function maybeCallNative(nativeMethod, regexp, str, arg2, forceStringMethod) {
        if (regexp.exec === regexpExec) {
          if (DELEGATES_TO_SYMBOL && !forceStringMethod) {
            // The native String method already delegates to @@method (this
            // polyfilled function), leasing to infinite recursion.
            // We avoid it by directly calling the native @@method method.
            return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };
          }
          return { done: true, value: nativeMethod.call(str, regexp, arg2) };
        }
        return { done: false };
      }
    );
    var strfn = fns[0];
    var rxfn = fns[1];

    redefine(String.prototype, KEY, strfn);
    hide(RegExp.prototype, SYMBOL, length == 2
      // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)
      // 21.2.5.11 RegExp.prototype[@@split](string, limit)
      ? function (string, arg) { return rxfn.call(string, this, arg); }
      // 21.2.5.6 RegExp.prototype[@@match](string)
      // 21.2.5.9 RegExp.prototype[@@search](string)
      : function (string) { return rxfn.call(string, this); }
    );
  }
};


/***/ }),

/***/ "../node_modules/core-js/modules/_flags.js":
/*!*************************************************!*\
  !*** ../node_modules/core-js/modules/_flags.js ***!
  \*************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 21.2.5.3 get RegExp.prototype.flags
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
module.exports = function () {
  var that = anObject(this);
  var result = '';
  if (that.global) result += 'g';
  if (that.ignoreCase) result += 'i';
  if (that.multiline) result += 'm';
  if (that.unicode) result += 'u';
  if (that.sticky) result += 'y';
  return result;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_function-to-string.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/modules/_function-to-string.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/modules/_shared.js")('native-function-to-string', Function.toString);


/***/ }),

/***/ "../node_modules/core-js/modules/_global.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_global.js ***!
  \**************************************************/
/***/ ((module) => {

// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
var global = module.exports = typeof window != 'undefined' && window.Math == Math
  ? window : typeof self != 'undefined' && self.Math == Math ? self
  // eslint-disable-next-line no-new-func
  : Function('return this')();
if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/modules/_has.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_has.js ***!
  \***********************************************/
/***/ ((module) => {

var hasOwnProperty = {}.hasOwnProperty;
module.exports = function (it, key) {
  return hasOwnProperty.call(it, key);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_hide.js":
/*!************************************************!*\
  !*** ../node_modules/core-js/modules/_hide.js ***!
  \************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/modules/_property-desc.js");
module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? function (object, key, value) {
  return dP.f(object, key, createDesc(1, value));
} : function (object, key, value) {
  object[key] = value;
  return object;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_html.js":
/*!************************************************!*\
  !*** ../node_modules/core-js/modules/_html.js ***!
  \************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js").document;
module.exports = document && document.documentElement;


/***/ }),

/***/ "../node_modules/core-js/modules/_ie8-dom-define.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/_ie8-dom-define.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") && !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () {
  return Object.defineProperty(__webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/modules/_dom-create.js")('div'), 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/modules/_iobject.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_iobject.js ***!
  \***************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// fallback for non-array-like ES3 and non-enumerable old V8 strings
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
// eslint-disable-next-line no-prototype-builtins
module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
  return cof(it) == 'String' ? it.split('') : Object(it);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_is-array.js":
/*!****************************************************!*\
  !*** ../node_modules/core-js/modules/_is-array.js ***!
  \****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.2.2 IsArray(argument)
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
module.exports = Array.isArray || function isArray(arg) {
  return cof(arg) == 'Array';
};


/***/ }),

/***/ "../node_modules/core-js/modules/_is-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_is-object.js ***!
  \*****************************************************/
/***/ ((module) => {

module.exports = function (it) {
  return typeof it === 'object' ? it !== null : typeof it === 'function';
};


/***/ }),

/***/ "../node_modules/core-js/modules/_is-regexp.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_is-regexp.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.2.8 IsRegExp(argument)
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
var MATCH = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('match');
module.exports = function (it) {
  var isRegExp;
  return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp');
};


/***/ }),

/***/ "../node_modules/core-js/modules/_iter-create.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_iter-create.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/modules/_object-create.js");
var descriptor = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/modules/_property-desc.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/modules/_set-to-string-tag.js");
var IteratorPrototype = {};

// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
__webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js")(IteratorPrototype, __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('iterator'), function () { return this; });

module.exports = function (Constructor, NAME, next) {
  Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });
  setToStringTag(Constructor, NAME + ' Iterator');
};


/***/ }),

/***/ "../node_modules/core-js/modules/_iter-define.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_iter-define.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/modules/_library.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/modules/_iterators.js");
var $iterCreate = __webpack_require__(/*! ./_iter-create */ "../node_modules/core-js/modules/_iter-create.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/modules/_set-to-string-tag.js");
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/modules/_object-gpo.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('iterator');
var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`
var FF_ITERATOR = '@@iterator';
var KEYS = 'keys';
var VALUES = 'values';

var returnThis = function () { return this; };

module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {
  $iterCreate(Constructor, NAME, next);
  var getMethod = function (kind) {
    if (!BUGGY && kind in proto) return proto[kind];
    switch (kind) {
      case KEYS: return function keys() { return new Constructor(this, kind); };
      case VALUES: return function values() { return new Constructor(this, kind); };
    } return function entries() { return new Constructor(this, kind); };
  };
  var TAG = NAME + ' Iterator';
  var DEF_VALUES = DEFAULT == VALUES;
  var VALUES_BUG = false;
  var proto = Base.prototype;
  var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];
  var $default = $native || getMethod(DEFAULT);
  var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;
  var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;
  var methods, key, IteratorPrototype;
  // Fix native
  if ($anyNative) {
    IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));
    if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {
      // Set @@toStringTag to native iterators
      setToStringTag(IteratorPrototype, TAG, true);
      // fix for some old engines
      if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);
    }
  }
  // fix Array#{values, @@iterator}.name in V8 / FF
  if (DEF_VALUES && $native && $native.name !== VALUES) {
    VALUES_BUG = true;
    $default = function values() { return $native.call(this); };
  }
  // Define iterator
  if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {
    hide(proto, ITERATOR, $default);
  }
  // Plug for library
  Iterators[NAME] = $default;
  Iterators[TAG] = returnThis;
  if (DEFAULT) {
    methods = {
      values: DEF_VALUES ? $default : getMethod(VALUES),
      keys: IS_SET ? $default : getMethod(KEYS),
      entries: $entries
    };
    if (FORCED) for (key in methods) {
      if (!(key in proto)) redefine(proto, key, methods[key]);
    } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
  }
  return methods;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_iter-step.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_iter-step.js ***!
  \*****************************************************/
/***/ ((module) => {

module.exports = function (done, value) {
  return { value: value, done: !!done };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_iterators.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_iterators.js ***!
  \*****************************************************/
/***/ ((module) => {

module.exports = {};


/***/ }),

/***/ "../node_modules/core-js/modules/_library.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_library.js ***!
  \***************************************************/
/***/ ((module) => {

module.exports = false;


/***/ }),

/***/ "../node_modules/core-js/modules/_object-create.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_object-create.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var dPs = __webpack_require__(/*! ./_object-dps */ "../node_modules/core-js/modules/_object-dps.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/modules/_enum-bug-keys.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/modules/_shared-key.js")('IE_PROTO');
var Empty = function () { /* empty */ };
var PROTOTYPE = 'prototype';

// Create object with fake `null` prototype: use iframe Object with cleared prototype
var createDict = function () {
  // Thrash, waste and sodomy: IE GC bug
  var iframe = __webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/modules/_dom-create.js")('iframe');
  var i = enumBugKeys.length;
  var lt = '<';
  var gt = '>';
  var iframeDocument;
  iframe.style.display = 'none';
  __webpack_require__(/*! ./_html */ "../node_modules/core-js/modules/_html.js").appendChild(iframe);
  iframe.src = 'javascript:'; // eslint-disable-line no-script-url
  // createDict = iframe.contentWindow.Object;
  // html.removeChild(iframe);
  iframeDocument = iframe.contentWindow.document;
  iframeDocument.open();
  iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);
  iframeDocument.close();
  createDict = iframeDocument.F;
  while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];
  return createDict();
};

module.exports = Object.create || function create(O, Properties) {
  var result;
  if (O !== null) {
    Empty[PROTOTYPE] = anObject(O);
    result = new Empty();
    Empty[PROTOTYPE] = null;
    // add "__proto__" for Object.getPrototypeOf polyfill
    result[IE_PROTO] = O;
  } else result = createDict();
  return Properties === undefined ? result : dPs(result, Properties);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-dp.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_object-dp.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/modules/_ie8-dom-define.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/modules/_to-primitive.js");
var dP = Object.defineProperty;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? Object.defineProperty : function defineProperty(O, P, Attributes) {
  anObject(O);
  P = toPrimitive(P, true);
  anObject(Attributes);
  if (IE8_DOM_DEFINE) try {
    return dP(O, P, Attributes);
  } catch (e) { /* empty */ }
  if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
  if ('value' in Attributes) O[P] = Attributes.value;
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-dps.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_object-dps.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/modules/_object-keys.js");

module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? Object.defineProperties : function defineProperties(O, Properties) {
  anObject(O);
  var keys = getKeys(Properties);
  var length = keys.length;
  var i = 0;
  var P;
  while (length > i) dP.f(O, P = keys[i++], Properties[P]);
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-gpo.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_object-gpo.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/modules/_to-object.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/modules/_shared-key.js")('IE_PROTO');
var ObjectProto = Object.prototype;

module.exports = Object.getPrototypeOf || function (O) {
  O = toObject(O);
  if (has(O, IE_PROTO)) return O[IE_PROTO];
  if (typeof O.constructor == 'function' && O instanceof O.constructor) {
    return O.constructor.prototype;
  } return O instanceof Object ? ObjectProto : null;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-keys-internal.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_object-keys-internal.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/modules/_to-iobject.js");
var arrayIndexOf = __webpack_require__(/*! ./_array-includes */ "../node_modules/core-js/modules/_array-includes.js")(false);
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/modules/_shared-key.js")('IE_PROTO');

module.exports = function (object, names) {
  var O = toIObject(object);
  var i = 0;
  var result = [];
  var key;
  for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);
  // Don't enum bug & hidden keys
  while (names.length > i) if (has(O, key = names[i++])) {
    ~arrayIndexOf(result, key) || result.push(key);
  }
  return result;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-keys.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_object-keys.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.14 / 15.2.3.14 Object.keys(O)
var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/modules/_object-keys-internal.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/modules/_enum-bug-keys.js");

module.exports = Object.keys || function keys(O) {
  return $keys(O, enumBugKeys);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_property-desc.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_property-desc.js ***!
  \*********************************************************/
/***/ ((module) => {

module.exports = function (bitmap, value) {
  return {
    enumerable: !(bitmap & 1),
    configurable: !(bitmap & 2),
    writable: !(bitmap & 4),
    value: value
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_redefine.js":
/*!****************************************************!*\
  !*** ../node_modules/core-js/modules/_redefine.js ***!
  \****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var SRC = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/modules/_uid.js")('src');
var $toString = __webpack_require__(/*! ./_function-to-string */ "../node_modules/core-js/modules/_function-to-string.js");
var TO_STRING = 'toString';
var TPL = ('' + $toString).split(TO_STRING);

__webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js").inspectSource = function (it) {
  return $toString.call(it);
};

(module.exports = function (O, key, val, safe) {
  var isFunction = typeof val == 'function';
  if (isFunction) has(val, 'name') || hide(val, 'name', key);
  if (O[key] === val) return;
  if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));
  if (O === global) {
    O[key] = val;
  } else if (!safe) {
    delete O[key];
    hide(O, key, val);
  } else if (O[key]) {
    O[key] = val;
  } else {
    hide(O, key, val);
  }
// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
})(Function.prototype, TO_STRING, function toString() {
  return typeof this == 'function' && this[SRC] || $toString.call(this);
});


/***/ }),

/***/ "../node_modules/core-js/modules/_regexp-exec-abstract.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_regexp-exec-abstract.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/modules/_classof.js");
var builtinExec = RegExp.prototype.exec;

 // `RegExpExec` abstract operation
// https://tc39.github.io/ecma262/#sec-regexpexec
module.exports = function (R, S) {
  var exec = R.exec;
  if (typeof exec === 'function') {
    var result = exec.call(R, S);
    if (typeof result !== 'object') {
      throw new TypeError('RegExp exec method returned something other than an Object or null');
    }
    return result;
  }
  if (classof(R) !== 'RegExp') {
    throw new TypeError('RegExp#exec called on incompatible receiver');
  }
  return builtinExec.call(R, S);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_regexp-exec.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_regexp-exec.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var regexpFlags = __webpack_require__(/*! ./_flags */ "../node_modules/core-js/modules/_flags.js");

var nativeExec = RegExp.prototype.exec;
// This always refers to the native implementation, because the
// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,
// which loads this file before patching the method.
var nativeReplace = String.prototype.replace;

var patchedExec = nativeExec;

var LAST_INDEX = 'lastIndex';

var UPDATES_LAST_INDEX_WRONG = (function () {
  var re1 = /a/,
      re2 = /b*/g;
  nativeExec.call(re1, 'a');
  nativeExec.call(re2, 'a');
  return re1[LAST_INDEX] !== 0 || re2[LAST_INDEX] !== 0;
})();

// nonparticipating capturing group, copied from es5-shim's String#split patch.
var NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;

var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED;

if (PATCH) {
  patchedExec = function exec(str) {
    var re = this;
    var lastIndex, reCopy, match, i;

    if (NPCG_INCLUDED) {
      reCopy = new RegExp('^' + re.source + '$(?!\\s)', regexpFlags.call(re));
    }
    if (UPDATES_LAST_INDEX_WRONG) lastIndex = re[LAST_INDEX];

    match = nativeExec.call(re, str);

    if (UPDATES_LAST_INDEX_WRONG && match) {
      re[LAST_INDEX] = re.global ? match.index + match[0].length : lastIndex;
    }
    if (NPCG_INCLUDED && match && match.length > 1) {
      // Fix browsers whose `exec` methods don't consistently return `undefined`
      // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/
      // eslint-disable-next-line no-loop-func
      nativeReplace.call(match[0], reCopy, function () {
        for (i = 1; i < arguments.length - 2; i++) {
          if (arguments[i] === undefined) match[i] = undefined;
        }
      });
    }

    return match;
  };
}

module.exports = patchedExec;


/***/ }),

/***/ "../node_modules/core-js/modules/_set-to-string-tag.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/_set-to-string-tag.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var def = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js").f;
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('toStringTag');

module.exports = function (it, tag, stat) {
  if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });
};


/***/ }),

/***/ "../node_modules/core-js/modules/_shared-key.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_shared-key.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var shared = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/modules/_shared.js")('keys');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/modules/_uid.js");
module.exports = function (key) {
  return shared[key] || (shared[key] = uid(key));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_shared.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_shared.js ***!
  \**************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var SHARED = '__core-js_shared__';
var store = global[SHARED] || (global[SHARED] = {});

(module.exports = function (key, value) {
  return store[key] || (store[key] = value !== undefined ? value : {});
})('versions', []).push({
  version: core.version,
  mode: __webpack_require__(/*! ./_library */ "../node_modules/core-js/modules/_library.js") ? 'pure' : 'global',
  copyright: '© 2020 Denis Pushkarev (zloirock.ru)'
});


/***/ }),

/***/ "../node_modules/core-js/modules/_strict-method.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_strict-method.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js");

module.exports = function (method, arg) {
  return !!method && fails(function () {
    // eslint-disable-next-line no-useless-call
    arg ? method.call(null, function () { /* empty */ }, 1) : method.call(null);
  });
};


/***/ }),

/***/ "../node_modules/core-js/modules/_string-at.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_string-at.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
// true  -> String#at
// false -> String#codePointAt
module.exports = function (TO_STRING) {
  return function (that, pos) {
    var s = String(defined(that));
    var i = toInteger(pos);
    var l = s.length;
    var a, b;
    if (i < 0 || i >= l) return TO_STRING ? '' : undefined;
    a = s.charCodeAt(i);
    return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
      ? TO_STRING ? s.charAt(i) : a
      : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_string-context.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/_string-context.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// helper for String#{startsWith, endsWith, includes}
var isRegExp = __webpack_require__(/*! ./_is-regexp */ "../node_modules/core-js/modules/_is-regexp.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");

module.exports = function (that, searchString, NAME) {
  if (isRegExp(searchString)) throw TypeError('String#' + NAME + " doesn't accept regex!");
  return String(defined(that));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-absolute-index.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/_to-absolute-index.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var max = Math.max;
var min = Math.min;
module.exports = function (index, length) {
  index = toInteger(index);
  return index < 0 ? max(index + length, 0) : min(index, length);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-integer.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_to-integer.js ***!
  \******************************************************/
/***/ ((module) => {

// 7.1.4 ToInteger
var ceil = Math.ceil;
var floor = Math.floor;
module.exports = function (it) {
  return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-iobject.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_to-iobject.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// to indexed object, toObject with fallback for non-array-like ES3 strings
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/modules/_iobject.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
module.exports = function (it) {
  return IObject(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-length.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_to-length.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.15 ToLength
var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var min = Math.min;
module.exports = function (it) {
  return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_to-object.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.13 ToObject(argument)
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
module.exports = function (it) {
  return Object(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-primitive.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/modules/_to-primitive.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.1 ToPrimitive(input [, PreferredType])
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
// instead of the ES6 spec version, we didn't implement @@toPrimitive case
// and the second argument - flag - preferred type is a string
module.exports = function (it, S) {
  if (!isObject(it)) return it;
  var fn, val;
  if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
  if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  throw TypeError("Can't convert object to primitive value");
};


/***/ }),

/***/ "../node_modules/core-js/modules/_uid.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_uid.js ***!
  \***********************************************/
/***/ ((module) => {

var id = 0;
var px = Math.random();
module.exports = function (key) {
  return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_wks.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_wks.js ***!
  \***********************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var store = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/modules/_shared.js")('wks');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/modules/_uid.js");
var Symbol = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js").Symbol;
var USE_SYMBOL = typeof Symbol == 'function';

var $exports = module.exports = function (name) {
  return store[name] || (store[name] =
    USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
};

$exports.store = store;


/***/ }),

/***/ "../node_modules/core-js/modules/es6.array.filter.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.array.filter.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var $filter = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/modules/_array-methods.js")(2);

$export($export.P + $export.F * !__webpack_require__(/*! ./_strict-method */ "../node_modules/core-js/modules/_strict-method.js")([].filter, true), 'Array', {
  // 22.1.3.7 / 15.4.4.20 Array.prototype.filter(callbackfn [, thisArg])
  filter: function filter(callbackfn /* , thisArg */) {
    return $filter(this, callbackfn, arguments[1]);
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.array.find.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.array.find.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 22.1.3.8 Array.prototype.find(predicate, thisArg = undefined)
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var $find = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/modules/_array-methods.js")(5);
var KEY = 'find';
var forced = true;
// Shouldn't skip holes
if (KEY in []) Array(1)[KEY](function () { forced = false; });
$export($export.P + $export.F * forced, 'Array', {
  find: function find(callbackfn /* , that = undefined */) {
    return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
  }
});
__webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/modules/_add-to-unscopables.js")(KEY);


/***/ }),

/***/ "../node_modules/core-js/modules/es6.array.iterator.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.array.iterator.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var addToUnscopables = __webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/modules/_add-to-unscopables.js");
var step = __webpack_require__(/*! ./_iter-step */ "../node_modules/core-js/modules/_iter-step.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/modules/_iterators.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/modules/_to-iobject.js");

// 22.1.3.4 Array.prototype.entries()
// 22.1.3.13 Array.prototype.keys()
// 22.1.3.29 Array.prototype.values()
// 22.1.3.30 Array.prototype[@@iterator]()
module.exports = __webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/modules/_iter-define.js")(Array, 'Array', function (iterated, kind) {
  this._t = toIObject(iterated); // target
  this._i = 0;                   // next index
  this._k = kind;                // kind
// 22.1.5.2.1 %ArrayIteratorPrototype%.next()
}, function () {
  var O = this._t;
  var kind = this._k;
  var index = this._i++;
  if (!O || index >= O.length) {
    this._t = undefined;
    return step(1);
  }
  if (kind == 'keys') return step(0, index);
  if (kind == 'values') return step(0, O[index]);
  return step(0, [index, O[index]]);
}, 'values');

// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
Iterators.Arguments = Iterators.Array;

addToUnscopables('keys');
addToUnscopables('values');
addToUnscopables('entries');


/***/ }),

/***/ "../node_modules/core-js/modules/es6.array.map.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.array.map.js ***!
  \********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var $map = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/modules/_array-methods.js")(1);

$export($export.P + $export.F * !__webpack_require__(/*! ./_strict-method */ "../node_modules/core-js/modules/_strict-method.js")([].map, true), 'Array', {
  // 22.1.3.15 / 15.4.4.19 Array.prototype.map(callbackfn [, thisArg])
  map: function map(callbackfn /* , thisArg */) {
    return $map(this, callbackfn, arguments[1]);
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.function.name.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.function.name.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js").f;
var FProto = Function.prototype;
var nameRE = /^\s*function ([^ (]*)/;
var NAME = 'name';

// 19.2.4.2 name
NAME in FProto || __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") && dP(FProto, NAME, {
  configurable: true,
  get: function () {
    try {
      return ('' + this).match(nameRE)[1];
    } catch (e) {
      return '';
    }
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.object.to-string.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.object.to-string.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 19.1.3.6 Object.prototype.toString()
var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/modules/_classof.js");
var test = {};
test[__webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('toStringTag')] = 'z';
if (test + '' != '[object z]') {
  __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js")(Object.prototype, 'toString', function toString() {
    return '[object ' + classof(this) + ']';
  }, true);
}


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.exec.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.exec.js ***!
  \**********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var regexpExec = __webpack_require__(/*! ./_regexp-exec */ "../node_modules/core-js/modules/_regexp-exec.js");
__webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js")({
  target: 'RegExp',
  proto: true,
  forced: regexpExec !== /./.exec
}, {
  exec: regexpExec
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.flags.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.flags.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 21.2.5.3 get RegExp.prototype.flags()
if (__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") && /./g.flags != 'g') __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js").f(RegExp.prototype, 'flags', {
  configurable: true,
  get: __webpack_require__(/*! ./_flags */ "../node_modules/core-js/modules/_flags.js")
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.replace.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.replace.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/modules/_to-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var advanceStringIndex = __webpack_require__(/*! ./_advance-string-index */ "../node_modules/core-js/modules/_advance-string-index.js");
var regExpExec = __webpack_require__(/*! ./_regexp-exec-abstract */ "../node_modules/core-js/modules/_regexp-exec-abstract.js");
var max = Math.max;
var min = Math.min;
var floor = Math.floor;
var SUBSTITUTION_SYMBOLS = /\$([$&`']|\d\d?|<[^>]*>)/g;
var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&`']|\d\d?)/g;

var maybeToString = function (it) {
  return it === undefined ? it : String(it);
};

// @@replace logic
__webpack_require__(/*! ./_fix-re-wks */ "../node_modules/core-js/modules/_fix-re-wks.js")('replace', 2, function (defined, REPLACE, $replace, maybeCallNative) {
  return [
    // `String.prototype.replace` method
    // https://tc39.github.io/ecma262/#sec-string.prototype.replace
    function replace(searchValue, replaceValue) {
      var O = defined(this);
      var fn = searchValue == undefined ? undefined : searchValue[REPLACE];
      return fn !== undefined
        ? fn.call(searchValue, O, replaceValue)
        : $replace.call(String(O), searchValue, replaceValue);
    },
    // `RegExp.prototype[@@replace]` method
    // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace
    function (regexp, replaceValue) {
      var res = maybeCallNative($replace, regexp, this, replaceValue);
      if (res.done) return res.value;

      var rx = anObject(regexp);
      var S = String(this);
      var functionalReplace = typeof replaceValue === 'function';
      if (!functionalReplace) replaceValue = String(replaceValue);
      var global = rx.global;
      if (global) {
        var fullUnicode = rx.unicode;
        rx.lastIndex = 0;
      }
      var results = [];
      while (true) {
        var result = regExpExec(rx, S);
        if (result === null) break;
        results.push(result);
        if (!global) break;
        var matchStr = String(result[0]);
        if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
      }
      var accumulatedResult = '';
      var nextSourcePosition = 0;
      for (var i = 0; i < results.length; i++) {
        result = results[i];
        var matched = String(result[0]);
        var position = max(min(toInteger(result.index), S.length), 0);
        var captures = [];
        // NOTE: This is equivalent to
        //   captures = result.slice(1).map(maybeToString)
        // but for some reason `nativeSlice.call(result, 1, result.length)` (called in
        // the slice polyfill when slicing native arrays) "doesn't work" in safari 9 and
        // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.
        for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));
        var namedCaptures = result.groups;
        if (functionalReplace) {
          var replacerArgs = [matched].concat(captures, position, S);
          if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);
          var replacement = String(replaceValue.apply(undefined, replacerArgs));
        } else {
          replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);
        }
        if (position >= nextSourcePosition) {
          accumulatedResult += S.slice(nextSourcePosition, position) + replacement;
          nextSourcePosition = position + matched.length;
        }
      }
      return accumulatedResult + S.slice(nextSourcePosition);
    }
  ];

    // https://tc39.github.io/ecma262/#sec-getsubstitution
  function getSubstitution(matched, str, position, captures, namedCaptures, replacement) {
    var tailPos = position + matched.length;
    var m = captures.length;
    var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;
    if (namedCaptures !== undefined) {
      namedCaptures = toObject(namedCaptures);
      symbols = SUBSTITUTION_SYMBOLS;
    }
    return $replace.call(replacement, symbols, function (match, ch) {
      var capture;
      switch (ch.charAt(0)) {
        case '$': return '$';
        case '&': return matched;
        case '`': return str.slice(0, position);
        case "'": return str.slice(tailPos);
        case '<':
          capture = namedCaptures[ch.slice(1, -1)];
          break;
        default: // \d\d?
          var n = +ch;
          if (n === 0) return match;
          if (n > m) {
            var f = floor(n / 10);
            if (f === 0) return match;
            if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);
            return match;
          }
          capture = captures[n - 1];
      }
      return capture === undefined ? '' : capture;
    });
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.to-string.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.to-string.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

__webpack_require__(/*! ./es6.regexp.flags */ "../node_modules/core-js/modules/es6.regexp.flags.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var $flags = __webpack_require__(/*! ./_flags */ "../node_modules/core-js/modules/_flags.js");
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js");
var TO_STRING = 'toString';
var $toString = /./[TO_STRING];

var define = function (fn) {
  __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js")(RegExp.prototype, TO_STRING, fn, true);
};

// 21.2.5.14 RegExp.prototype.toString()
if (__webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () { return $toString.call({ source: 'a', flags: 'b' }) != '/a/b'; })) {
  define(function toString() {
    var R = anObject(this);
    return '/'.concat(R.source, '/',
      'flags' in R ? R.flags : !DESCRIPTORS && R instanceof RegExp ? $flags.call(R) : undefined);
  });
// FF44- RegExp#toString has a wrong name
} else if ($toString.name != TO_STRING) {
  define(function toString() {
    return $toString.call(this);
  });
}


/***/ }),

/***/ "../node_modules/core-js/modules/es6.string.starts-with.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.string.starts-with.js ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
// 21.1.3.18 String.prototype.startsWith(searchString [, position ])

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var context = __webpack_require__(/*! ./_string-context */ "../node_modules/core-js/modules/_string-context.js");
var STARTS_WITH = 'startsWith';
var $startsWith = ''[STARTS_WITH];

$export($export.P + $export.F * __webpack_require__(/*! ./_fails-is-regexp */ "../node_modules/core-js/modules/_fails-is-regexp.js")(STARTS_WITH), 'String', {
  startsWith: function startsWith(searchString /* , position = 0 */) {
    var that = context(this, searchString, STARTS_WITH);
    var index = toLength(Math.min(arguments.length > 1 ? arguments[1] : undefined, that.length));
    var search = String(searchString);
    return $startsWith
      ? $startsWith.call(that, search, index)
      : that.slice(index, index + search.length) === search;
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es7.array.includes.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/es7.array.includes.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// https://github.com/tc39/Array.prototype.includes
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var $includes = __webpack_require__(/*! ./_array-includes */ "../node_modules/core-js/modules/_array-includes.js")(true);

$export($export.P, 'Array', {
  includes: function includes(el /* , fromIndex = 0 */) {
    return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);
  }
});

__webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/modules/_add-to-unscopables.js")('includes');


/***/ }),

/***/ "../node_modules/core-js/modules/web.dom.iterable.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/web.dom.iterable.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $iterators = __webpack_require__(/*! ./es6.array.iterator */ "../node_modules/core-js/modules/es6.array.iterator.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/modules/_object-keys.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/modules/_iterators.js");
var wks = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js");
var ITERATOR = wks('iterator');
var TO_STRING_TAG = wks('toStringTag');
var ArrayValues = Iterators.Array;

var DOMIterables = {
  CSSRuleList: true, // TODO: Not spec compliant, should be false.
  CSSStyleDeclaration: false,
  CSSValueList: false,
  ClientRectList: false,
  DOMRectList: false,
  DOMStringList: false,
  DOMTokenList: true,
  DataTransferItemList: false,
  FileList: false,
  HTMLAllCollection: false,
  HTMLCollection: false,
  HTMLFormElement: false,
  HTMLSelectElement: false,
  MediaList: true, // TODO: Not spec compliant, should be false.
  MimeTypeArray: false,
  NamedNodeMap: false,
  NodeList: true,
  PaintRequestList: false,
  Plugin: false,
  PluginArray: false,
  SVGLengthList: false,
  SVGNumberList: false,
  SVGPathSegList: false,
  SVGPointList: false,
  SVGStringList: false,
  SVGTransformList: false,
  SourceBufferList: false,
  StyleSheetList: true, // TODO: Not spec compliant, should be false.
  TextTrackCueList: false,
  TextTrackList: false,
  TouchList: false
};

for (var collections = getKeys(DOMIterables), i = 0; i < collections.length; i++) {
  var NAME = collections[i];
  var explicit = DOMIterables[NAME];
  var Collection = global[NAME];
  var proto = Collection && Collection.prototype;
  var key;
  if (proto) {
    if (!proto[ITERATOR]) hide(proto, ITERATOR, ArrayValues);
    if (!proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);
    Iterators[NAME] = ArrayValues;
    if (explicit) for (key in $iterators) if (!proto[key]) redefine(proto, key, $iterators[key], true);
  }
}


/***/ }),

/***/ "@wordpress/i18n":
/*!**************************!*\
  !*** external "wp.i18n" ***!
  \**************************/
/***/ ((module) => {

"use strict";
module.exports = wp.i18n;

/***/ })

/******/ 	});
/************************************************************************/
/******/ 	// The module cache
/******/ 	var __webpack_module_cache__ = {};
/******/ 	
/******/ 	// The require function
/******/ 	function __webpack_require__(moduleId) {
/******/ 		// Check if module is in cache
/******/ 		var cachedModule = __webpack_module_cache__[moduleId];
/******/ 		if (cachedModule !== undefined) {
/******/ 			return cachedModule.exports;
/******/ 		}
/******/ 		// Create a new module (and put it into the cache)
/******/ 		var module = __webpack_module_cache__[moduleId] = {
/******/ 			// no module.id needed
/******/ 			// no module.loaded needed
/******/ 			exports: {}
/******/ 		};
/******/ 	
/******/ 		// Execute the module function
/******/ 		__webpack_modules__[moduleId](module, module.exports, __webpack_require__);
/******/ 	
/******/ 		// Return the exports of the module
/******/ 		return module.exports;
/******/ 	}
/******/ 	
/************************************************************************/
var __webpack_exports__ = {};
// This entry need to be wrapped in an IIFE because it need to be in strict mode.
(() => {
"use strict";
/*!******************************************!*\
  !*** ../assets/dev/js/editor/modules.js ***!
  \******************************************/


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _module = _interopRequireDefault(__webpack_require__(/*! ./utils/module */ "../assets/dev/js/editor/utils/module.js"));

var _introduction = _interopRequireDefault(__webpack_require__(/*! ./utils/introduction */ "../assets/dev/js/editor/utils/introduction.js"));

var _controlsStack = _interopRequireDefault(__webpack_require__(/*! ./views/controls-stack */ "../assets/dev/js/editor/views/controls-stack.js"));

var _baseSettings = _interopRequireDefault(__webpack_require__(/*! ./elements/models/base-settings */ "../assets/dev/js/editor/elements/models/base-settings.js"));

var _container = _interopRequireDefault(__webpack_require__(/*! ./container/container */ "../assets/dev/js/editor/container/container.js"));

elementorModules.editor = {
  elements: {
    models: {
      BaseSettings: _baseSettings.default
    }
  },
  utils: {
    Module: _module.default,
    Introduction: _introduction.default
  },
  views: {
    ControlsStack: _controlsStack.default
  },
  Container: _container.default
};
})();

/******/ })()
;
//# sourceMappingURL=editor-modules.js.mapassets/js/tabs.b7bd957161644e810d53.bundle.js000064400000016336151327220410013711 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(self["webpackChunkelementor"] = self["webpackChunkelementor"] || []).push([["tabs"],{

/***/ "../assets/dev/js/frontend/handlers/base-tabs.js":
/*!*******************************************************!*\
  !*** ../assets/dev/js/frontend/handlers/base-tabs.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

class baseTabs extends elementorModules.frontend.handlers.Base {
  getDefaultSettings() {
    return {
      selectors: {
        tablist: '[role="tablist"]',
        tabTitle: '.elementor-tab-title',
        tabContent: '.elementor-tab-content'
      },
      classes: {
        active: 'elementor-active'
      },
      showTabFn: 'show',
      hideTabFn: 'hide',
      toggleSelf: true,
      hidePrevious: true,
      autoExpand: true,
      keyDirection: {
        ArrowLeft: elementorFrontendConfig.is_rtl ? 1 : -1,
        ArrowUp: -1,
        ArrowRight: elementorFrontendConfig.is_rtl ? -1 : 1,
        ArrowDown: 1
      }
    };
  }

  getDefaultElements() {
    const selectors = this.getSettings('selectors');
    return {
      $tabTitles: this.findElement(selectors.tabTitle),
      $tabContents: this.findElement(selectors.tabContent)
    };
  }

  activateDefaultTab() {
    const settings = this.getSettings();

    if (!settings.autoExpand || 'editor' === settings.autoExpand && !this.isEdit) {
      return;
    }

    const defaultActiveTab = this.getEditSettings('activeItemIndex') || 1,
          originalToggleMethods = {
      showTabFn: settings.showTabFn,
      hideTabFn: settings.hideTabFn
    }; // Toggle tabs without animation to avoid jumping

    this.setSettings({
      showTabFn: 'show',
      hideTabFn: 'hide'
    });
    this.changeActiveTab(defaultActiveTab); // Return back original toggle effects

    this.setSettings(originalToggleMethods);
  }

  handleKeyboardNavigation(event) {
    const tab = event.currentTarget,
          $tabList = jQuery(tab.closest(this.getSettings('selectors').tablist)),
          $tabs = $tabList.find(this.getSettings('selectors').tabTitle),
          isVertical = 'vertical' === $tabList.attr('aria-orientation');

    switch (event.key) {
      case 'ArrowLeft':
      case 'ArrowRight':
        if (isVertical) {
          return;
        }

        break;

      case 'ArrowUp':
      case 'ArrowDown':
        if (!isVertical) {
          return;
        }

        event.preventDefault();
        break;

      case 'Home':
        event.preventDefault();
        $tabs.first().focus();
        return;

      case 'End':
        event.preventDefault();
        $tabs.last().focus();
        return;

      default:
        return;
    }

    const tabIndex = tab.getAttribute('data-tab') - 1,
          direction = this.getSettings('keyDirection')[event.key],
          nextTab = $tabs[tabIndex + direction];

    if (nextTab) {
      nextTab.focus();
    } else if (-1 === tabIndex + direction) {
      $tabs.last().focus();
    } else {
      $tabs.first().focus();
    }
  }

  deactivateActiveTab(tabIndex) {
    const settings = this.getSettings(),
          activeClass = settings.classes.active,
          activeFilter = tabIndex ? '[data-tab="' + tabIndex + '"]' : '.' + activeClass,
          $activeTitle = this.elements.$tabTitles.filter(activeFilter),
          $activeContent = this.elements.$tabContents.filter(activeFilter);
    $activeTitle.add($activeContent).removeClass(activeClass);
    $activeTitle.attr({
      tabindex: '-1',
      'aria-selected': 'false',
      'aria-expanded': 'false'
    });
    $activeContent[settings.hideTabFn]();
    $activeContent.attr('hidden', 'hidden');
  }

  activateTab(tabIndex) {
    const settings = this.getSettings(),
          activeClass = settings.classes.active,
          $requestedTitle = this.elements.$tabTitles.filter('[data-tab="' + tabIndex + '"]'),
          $requestedContent = this.elements.$tabContents.filter('[data-tab="' + tabIndex + '"]'),
          animationDuration = 'show' === settings.showTabFn ? 0 : 400;
    $requestedTitle.add($requestedContent).addClass(activeClass);
    $requestedTitle.attr({
      tabindex: '0',
      'aria-selected': 'true',
      'aria-expanded': 'true'
    });
    $requestedContent[settings.showTabFn](animationDuration, () => elementorFrontend.elements.$window.trigger('resize'));
    $requestedContent.removeAttr('hidden');
  }

  isActiveTab(tabIndex) {
    return this.elements.$tabTitles.filter('[data-tab="' + tabIndex + '"]').hasClass(this.getSettings('classes.active'));
  }

  bindEvents() {
    this.elements.$tabTitles.on({
      keydown: event => {
        // Support for old markup that includes an `<a>` tag in the tab
        if (jQuery(event.target).is('a') && `Enter` === event.key) {
          event.preventDefault();
        } // We listen to keydowon event for these keys in order to prevent undesired page scrolling


        if (['End', 'Home', 'ArrowUp', 'ArrowDown'].includes(event.key)) {
          this.handleKeyboardNavigation(event);
        }
      },
      keyup: event => {
        switch (event.key) {
          case 'ArrowLeft':
          case 'ArrowRight':
            this.handleKeyboardNavigation(event);
            break;

          case 'Enter':
          case 'Space':
            event.preventDefault();
            this.changeActiveTab(event.currentTarget.getAttribute('data-tab'));
            break;
        }
      },
      click: event => {
        event.preventDefault();
        this.changeActiveTab(event.currentTarget.getAttribute('data-tab'));
      }
    });
  }

  onInit(...args) {
    super.onInit(...args);
    this.activateDefaultTab();
  }

  onEditSettingsChange(propertyName) {
    if ('activeItemIndex' === propertyName) {
      this.activateDefaultTab();
    }
  }

  changeActiveTab(tabIndex) {
    const isActiveTab = this.isActiveTab(tabIndex),
          settings = this.getSettings();

    if ((settings.toggleSelf || !isActiveTab) && settings.hidePrevious) {
      this.deactivateActiveTab();
    }

    if (!settings.hidePrevious && isActiveTab) {
      this.deactivateActiveTab(tabIndex);
    }

    if (!isActiveTab) {
      this.activateTab(tabIndex);
    }
  }

}

exports.default = baseTabs;

/***/ }),

/***/ "../assets/dev/js/frontend/handlers/tabs.js":
/*!**************************************************!*\
  !*** ../assets/dev/js/frontend/handlers/tabs.js ***!
  \**************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");

Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

var _baseTabs = _interopRequireDefault(__webpack_require__(/*! ./base-tabs */ "../assets/dev/js/frontend/handlers/base-tabs.js"));

class Tabs extends _baseTabs.default {
  getDefaultSettings() {
    const defaultSettings = super.getDefaultSettings();
    return { ...defaultSettings,
      toggleSelf: false
    };
  }

}

exports.default = Tabs;

/***/ })

}]);
//# sourceMappingURL=tabs.b7bd957161644e810d53.bundle.js.mapassets/js/common-modules.min.js000064400000311446151327220410012546 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(()=>{var t={75453:(t,e,r)=>{t.exports=r(7421)},59396:(t,e,r)=>{t.exports=r(70157)},15091:(t,e,r)=>{t.exports=r(373)},38401:(t,e,r)=>{t.exports=r(14710)},67394:(t,e,r)=>{t.exports=r(43153)},38923:(t,e,r)=>{t.exports=r(8531)},23587:(t,e,r)=>{t.exports=r(32622)},82055:(t,e,r)=>{t.exports=r(58535)},83452:(t,e,r)=>{t.exports=r(97220)},28274:(t,e,r)=>{t.exports=r(65135)},35657:(t,e,r)=>{t.exports=r(69591)},13493:(t,e,r)=>{t.exports=r(41306)},14176:(t,e,r)=>{t.exports=r(34345)},73220:(t,e,r)=>{t.exports=r(76483)},75499:(t,e,r)=>{t.exports=r(43094)},78282:(t,e,r)=>{t.exports=r(17641)},41281:(t,e,r)=>{t.exports=r(19103)},29363:(t,e,r)=>{t.exports=r(21114)},50093:(t,e,r)=>{t.exports=r(39871)},93168:(t,e,r)=>{t.exports=r(89999)},72292:t=>{t.exports=function _arrayLikeToArray(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n},t.exports.default=t.exports,t.exports.__esModule=!0},86870:(t,e,r)=>{var n=r(59396);t.exports=function _arrayWithHoles(t){if(n(t))return t},t.exports.default=t.exports,t.exports.__esModule=!0},38852:t=>{t.exports=function _assertThisInitialized(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t},t.exports.default=t.exports,t.exports.__esModule=!0},49117:(t,e,r)=>{var n=r(73220);function asyncGeneratorStep(t,e,r,o,i,a,u){try{var s=t[a](u),c=s.value}catch(t){return void r(t)}s.done?e(c):n.resolve(c).then(o,i)}t.exports=function _asyncToGenerator(t){return function(){var e=this,r=arguments;return new n((function(n,o){var i=t.apply(e,r);function _next(t){asyncGeneratorStep(i,n,o,_next,_throw,"next",t)}function _throw(t){asyncGeneratorStep(i,n,o,_next,_throw,"throw",t)}_next(void 0)}))}},t.exports.default=t.exports,t.exports.__esModule=!0},11959:t=>{t.exports=function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")},t.exports.default=t.exports,t.exports.__esModule=!0},60846:(t,e,r)=>{var n=r(75499),o=r(76870),i=r(898);function _construct(e,r,a){return i()?(t.exports=_construct=n,t.exports.default=t.exports,t.exports.__esModule=!0):(t.exports=_construct=function _construct(t,e,r){var n=[null];n.push.apply(n,e);var i=new(Function.bind.apply(t,n));return r&&o(i,r.prototype),i},t.exports.default=t.exports,t.exports.__esModule=!0),_construct.apply(null,arguments)}t.exports=_construct,t.exports.default=t.exports,t.exports.__esModule=!0},39041:(t,e,r)=>{var n=r(67394);function _defineProperties(t,e){for(var r=0;r<e.length;r++){var o=e[r];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),n(t,o.key,o)}}t.exports=function _createClass(t,e,r){return e&&_defineProperties(t.prototype,e),r&&_defineProperties(t,r),t},t.exports.default=t.exports,t.exports.__esModule=!0},68537:(t,e,r)=>{var n=r(75499),o=r(44263),i=r(898),a=r(59771);t.exports=function _createSuper(t){var e=i();return function _createSuperInternal(){var r,i=o(t);if(e){var u=o(this).constructor;r=n(i,arguments,u)}else r=i.apply(this,arguments);return a(this,r)}},t.exports.default=t.exports,t.exports.__esModule=!0},18042:(t,e,r)=>{var n=r(67394);t.exports=function _defineProperty(t,e,r){return e in t?n(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t},t.exports.default=t.exports,t.exports.__esModule=!0},76700:(t,e,r)=>{var n=r(78282),o=r(23587),i=r(49445);function _get(e,r,a){return"undefined"!=typeof Reflect&&n?(t.exports=_get=n,t.exports.default=t.exports,t.exports.__esModule=!0):(t.exports=_get=function _get(t,e,r){var n=i(t,e);if(n){var a=o(n,e);return a.get?a.get.call(r):a.value}},t.exports.default=t.exports,t.exports.__esModule=!0),_get(e,r,a||e)}t.exports=_get,t.exports.default=t.exports,t.exports.__esModule=!0},44263:(t,e,r)=>{var n=r(28274),o=r(82055);function _getPrototypeOf(e){return t.exports=_getPrototypeOf=n?o:function _getPrototypeOf(t){return t.__proto__||o(t)},t.exports.default=t.exports,t.exports.__esModule=!0,_getPrototypeOf(e)}t.exports=_getPrototypeOf,t.exports.default=t.exports,t.exports.__esModule=!0},77371:(t,e,r)=>{var n=r(38401),o=r(76870);t.exports=function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=n(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&o(t,e)},t.exports.default=t.exports,t.exports.__esModule=!0},67971:t=>{t.exports=function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}},t.exports.default=t.exports,t.exports.__esModule=!0},52369:(t,e,r)=>{var n=r(24596).default,o=r(93168),i=r(67394),a=r(23587);function _getRequireWildcardCache(t){if("function"!=typeof o)return null;var e=new o,r=new o;return(_getRequireWildcardCache=function _getRequireWildcardCache(t){return t?r:e})(t)}t.exports=function _interopRequireWildcard(t,e){if(!e&&t&&t.__esModule)return t;if(null===t||"object"!==n(t)&&"function"!=typeof t)return{default:t};var r=_getRequireWildcardCache(e);if(r&&r.has(t))return r.get(t);var o={},u=i&&a;for(var s in t)if("default"!==s&&Object.prototype.hasOwnProperty.call(t,s)){var c=u?a(t,s):null;c&&(c.get||c.set)?i(o,s,c):o[s]=t[s]}return o.default=t,r&&r.set(t,o),o},t.exports.default=t.exports,t.exports.__esModule=!0},60653:t=>{t.exports=function _isNativeFunction(t){return-1!==Function.toString.call(t).indexOf("[native code]")},t.exports.default=t.exports,t.exports.__esModule=!0},898:(t,e,r)=>{var n=r(75499);t.exports=function _isNativeReflectConstruct(){if("undefined"==typeof Reflect||!n)return!1;if(n.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(n(Boolean,[],(function(){}))),!0}catch(t){return!1}},t.exports.default=t.exports,t.exports.__esModule=!0},79968:(t,e,r)=>{var n=r(41281),o=r(50093);t.exports=function _iterableToArrayLimit(t,e){var r=null==t?null:void 0!==n&&t[o]||t["@@iterator"];if(null!=r){var i,a,u=[],s=!0,c=!1;try{for(r=r.call(t);!(s=(i=r.next()).done)&&(u.push(i.value),!e||u.length!==e);s=!0);}catch(t){c=!0,a=t}finally{try{s||null==r.return||r.return()}finally{if(c)throw a}}return u}},t.exports.default=t.exports,t.exports.__esModule=!0},39198:t=>{t.exports=function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")},t.exports.default=t.exports,t.exports.__esModule=!0},59771:(t,e,r)=>{var n=r(24596).default,o=r(38852);t.exports=function _possibleConstructorReturn(t,e){return!e||"object"!==n(e)&&"function"!=typeof e?o(t):e},t.exports.default=t.exports,t.exports.__esModule=!0},76870:(t,e,r)=>{var n=r(28274);function _setPrototypeOf(e,r){return t.exports=_setPrototypeOf=n||function _setPrototypeOf(t,e){return t.__proto__=e,t},t.exports.default=t.exports,t.exports.__esModule=!0,_setPrototypeOf(e,r)}t.exports=_setPrototypeOf,t.exports.default=t.exports,t.exports.__esModule=!0},47834:(t,e,r)=>{var n=r(86870),o=r(79968),i=r(24594),a=r(39198);t.exports=function _slicedToArray(t,e){return n(t)||o(t,e)||i(t,e)||a()},t.exports.default=t.exports,t.exports.__esModule=!0},49445:(t,e,r)=>{var n=r(44263);t.exports=function _superPropBase(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=n(t)););return t},t.exports.default=t.exports,t.exports.__esModule=!0},24596:(t,e,r)=>{var n=r(41281),o=r(50093);function _typeof(e){return"function"==typeof n&&"symbol"==typeof o?(t.exports=_typeof=function _typeof(t){return typeof t},t.exports.default=t.exports,t.exports.__esModule=!0):(t.exports=_typeof=function _typeof(t){return t&&"function"==typeof n&&t.constructor===n&&t!==n.prototype?"symbol":typeof t},t.exports.default=t.exports,t.exports.__esModule=!0),_typeof(e)}t.exports=_typeof,t.exports.default=t.exports,t.exports.__esModule=!0},24594:(t,e,r)=>{var n=r(75453),o=r(72292);t.exports=function _unsupportedIterableToArray(t,e){if(t){if("string"==typeof t)return o(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?n(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?o(t,e):void 0}},t.exports.default=t.exports,t.exports.__esModule=!0},73629:(t,e,r)=>{var n=r(15091),o=r(38401),i=r(44263),a=r(76870),u=r(60653),s=r(60846);function _wrapNativeSuper(e){var r="function"==typeof n?new n:void 0;return t.exports=_wrapNativeSuper=function _wrapNativeSuper(t){if(null===t||!u(t))return t;if("function"!=typeof t)throw new TypeError("Super expression must either be null or a function");if(void 0!==r){if(r.has(t))return r.get(t);r.set(t,Wrapper)}function Wrapper(){return s(t,arguments,i(this).constructor)}return Wrapper.prototype=o(t.prototype,{constructor:{value:Wrapper,enumerable:!1,writable:!0,configurable:!0}}),a(Wrapper,t)},t.exports.default=t.exports,t.exports.__esModule=!0,_wrapNativeSuper(e)}t.exports=_wrapNativeSuper,t.exports.default=t.exports,t.exports.__esModule=!0},57135:(t,e,r)=>{t.exports=r(86248)},42618:(t,e,r)=>{"use strict";var n=r(67394),o=r(67971);n(e,"__esModule",{value:!0}),e.default=void 0;var i=o(r(24596)),a=o(r(11959)),u=o(r(39041)),s=o(r(77371)),c=o(r(68537)),l=function(t){(0,s.default)(ArgsObject,t);var e=(0,c.default)(ArgsObject);function ArgsObject(t){var r;return(0,a.default)(this,ArgsObject),(r=e.call(this)).args=t,r}return(0,u.default)(ArgsObject,[{key:"requireArgument",value:function requireArgument(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.args;if(!e.hasOwnProperty(t))throw Error("".concat(t," is required."))}},{key:"requireArgumentType",value:function requireArgumentType(t,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.args;if(this.requireArgument(t,r),(0,i.default)(r[t])!==e)throw Error("".concat(t," invalid type: ").concat(e,"."))}},{key:"requireArgumentInstance",value:function requireArgumentInstance(t,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.args;if(this.requireArgument(t,r),!(r[t]instanceof e))throw Error("".concat(t," invalid instance."))}},{key:"requireArgumentConstructor",value:function requireArgumentConstructor(t,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.args;if(this.requireArgument(t,r),r[t].constructor!==e)throw Error("".concat(t," invalid constructor type."))}}],[{key:"getInstanceType",value:function getInstanceType(){return"ArgsObject"}}]),ArgsObject}(o(r(27597)).default);e.default=l},10869:(t,e,r)=>{"use strict";var n=r(67394),o=r(67971);n(e,"__esModule",{value:!0}),e.default=e.ForceMethodImplementation=void 0,r(99236),r(65942),r(3777),r(38081);var i=o(r(11959)),a=o(r(38852)),u=o(r(77371)),s=o(r(68537)),c=function(t){(0,u.default)(ForceMethodImplementation,t);var e=(0,s.default)(ForceMethodImplementation);function ForceMethodImplementation(){var t,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,i.default)(this,ForceMethodImplementation),t=e.call(this,"".concat(r.isStatic?"static ":"").concat(r.fullName,"() should be implemented, please provide '").concat(r.functionName||r.fullName,"' functionality.")),Error.captureStackTrace((0,a.default)(t),ForceMethodImplementation),t}return ForceMethodImplementation}((0,o(r(73629)).default)(Error));e.ForceMethodImplementation=c;e.default=function _default(){var t=Error().stack.split("\n")[2].trim(),e=t.startsWith("at new")?"constructor":t.split(" ")[1],r={};if(r.functionName=e,r.fullName=e,r.functionName.includes(".")){var n=r.functionName.split(".");r.className=n[0],r.functionName=n[1]}else r.isStatic=!0;throw new c(r)}},27597:(t,e,r)=>{"use strict";var n=r(67394),o=r(67971);n(e,"__esModule",{value:!0}),e.default=void 0;var i=o(r(29363)),a=o(r(59396));r(99745);var u=o(r(11959)),s=o(r(39041)),c=o(r(76700)),l=o(r(44263)),f=function(){function InstanceType(){var t=this;(0,u.default)(this,InstanceType);for(var e=this instanceof InstanceType?this.constructor:void 0,r=[];e.__proto__&&e.__proto__.name;)r.push(e.__proto__),e=e.__proto__;r.reverse().forEach((function(e){return t instanceof e}))}return(0,s.default)(InstanceType,null,[{key:i.default,value:function value(t){var e=(0,c.default)((0,l.default)(InstanceType),i.default,this).call(this,t);if(t&&!t.constructor.getInstanceType)return e;if(t&&(t.instanceTypes||(t.instanceTypes=[]),e||this.getInstanceType()===t.constructor.getInstanceType()&&(e=!0),e)){var r=this.getInstanceType===InstanceType.getInstanceType?"BaseInstanceType":this.getInstanceType();-1===t.instanceTypes.indexOf(r)&&t.instanceTypes.push(r)}return!e&&t&&(e=t.instanceTypes&&(0,a.default)(t.instanceTypes)&&-1!==t.instanceTypes.indexOf(this.getInstanceType())),e}},{key:"getInstanceType",value:function getInstanceType(){elementorModules.ForceMethodImplementation()}}]),InstanceType}();e.default=f},1192:(t,e,r)=>{"use strict";var n=r(67971),o=n(r(38401)),i=n(r(24596));r(99236),r(64434),r(67209),r(99745);var a=function Module(){var t,e=jQuery,r=arguments,n=this,o={},a=function ensureClosureMethods(){e.each(n,(function(t){var e=n[t];"function"==typeof e&&(n[t]=function(){return e.apply(n,arguments)})}))},u=function initSettings(){t=n.getDefaultSettings();var o=r[0];o&&e.extend(!0,t,o)},s=function init(){n.__construct.apply(n,r),a(),u(),n.trigger("init")};this.getItems=function(t,e){if(e){var r=e.split("."),n=r.splice(0,1);if(!r.length)return t[n];if(!t[n])return;return this.getItems(t[n],r.join("."))}return t},this.getSettings=function(e){return this.getItems(t,e)},this.setSettings=function(r,o,a){if(a||(a=t),"object"===(0,i.default)(r))return e.extend(a,r),n;var u=r.split("."),s=u.splice(0,1);return u.length?(a[s]||(a[s]={}),n.setSettings(u.join("."),o,a[s])):(a[s]=o,n)},this.getErrorMessage=function(t,e){var r;switch(t){case"forceMethodImplementation":r="The method '".concat(e,"' must to be implemented in the inheritor child.");break;default:r="An error occurs"}return r},this.forceMethodImplementation=function(t){throw new Error(this.getErrorMessage("forceMethodImplementation",t))},this.on=function(t,r){return"object"===(0,i.default)(t)?(e.each(t,(function(t){n.on(t,this)})),n):(t.split(" ").forEach((function(t){o[t]||(o[t]=[]),o[t].push(r)})),n)},this.off=function(t,e){if(!o[t])return n;if(!e)return delete o[t],n;var r=o[t].indexOf(e);return-1!==r&&(delete o[t][r],o[t]=o[t].filter((function(t){return t}))),n},this.trigger=function(t){var r="on"+t[0].toUpperCase()+t.slice(1),i=Array.prototype.slice.call(arguments,1);n[r]&&n[r].apply(n,i);var a=o[t];return a?(e.each(a,(function(t,e){e.apply(n,i)})),n):n},s()};a.prototype.__construct=function(){},a.prototype.getDefaultSettings=function(){return{}},a.prototype.getConstructorID=function(){return this.constructor.name},a.extend=function(t){var e=jQuery,r=this,n=function child(){return r.apply(this,arguments)};return e.extend(n,r),(n.prototype=(0,o.default)(e.extend({},r.prototype,t))).constructor=n,n.__super__=r.prototype,n},t.exports=a},36516:(t,e,r)=>{"use strict";var n=r(67971),o=n(r(14176)),i=n(r(52640));t.exports=i.default.extend({getDefaultSettings:function getDefaultSettings(){return{container:null,items:null,columnsCount:3,verticalSpaceBetween:30}},getDefaultElements:function getDefaultElements(){return{$container:jQuery(this.getSettings("container")),$items:jQuery(this.getSettings("items"))}},run:function run(){var t=[],e=this.elements.$container.position().top,r=this.getSettings(),n=r.columnsCount;e+=(0,o.default)(this.elements.$container.css("margin-top"),10),this.elements.$items.each((function(i){var a=Math.floor(i/n),u=jQuery(this),s=u[0].getBoundingClientRect().height+r.verticalSpaceBetween;if(a){var c=u.position(),l=i%n,f=c.top-e-t[l];f-=(0,o.default)(u.css("margin-top"),10),f*=-1,u.css("margin-top",f+"px"),t[l]+=s}else t.push(s)}))}})},20400:(t,e,r)=>{"use strict";var n=r(67394),o=r(67971);n(e,"__esModule",{value:!0}),e.default=void 0;var i=o(r(13493)),a=o(r(11959)),u=o(r(39041)),s=function(){function Scroll(){(0,a.default)(this,Scroll)}return(0,u.default)(Scroll,null,[{key:"scrollObserver",value:function scrollObserver(t){var e=0,r={root:t.root||null,rootMargin:t.offset||"0px",threshold:function buildThreshholds(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,e=[];if(t>0&&t<=100)for(var r=100/t,n=0;n<=100;n+=r)e.push(n/100);else e.push(0);return e}(t.sensitivity)};return new IntersectionObserver((function handleIntersect(r,n){var o=r[0].boundingClientRect.y,a=r[0].isIntersecting,u=o<e?"down":"up",s=Math.abs((0,i.default)((100*r[0].intersectionRatio).toFixed(2)));t.callback({sensitivity:t.sensitivity,isInViewport:a,scrollPercentage:s,intersectionScrollDirection:u}),e=o}),r)}},{key:"getElementViewportPercentage",value:function getElementViewportPercentage(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=t[0].getBoundingClientRect(),n=e.start||0,o=e.end||0,a=window.innerHeight*n/100,u=window.innerHeight*o/100,s=r.top-window.innerHeight,c=r.top+a+t.height(),l=0-s+a,f=c-s+u,p=Math.max(0,Math.min(l/f,1));return(0,i.default)((100*p).toFixed(2))}},{key:"getPageScrollPercentage",value:function getPageScrollPercentage(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=arguments.length>1?arguments[1]:void 0,r=t.start||0,n=t.end||0,o=e||document.documentElement.scrollHeight-document.documentElement.clientHeight,i=o*r/100,a=o+i+o*n/100,u=document.documentElement.scrollTop+document.body.scrollTop+i;return u/a*100}}]),Scroll}();e.default=s},52640:(t,e,r)=>{"use strict";var n=r(67971)(r(1192));t.exports=n.default.extend({elements:null,getDefaultElements:function getDefaultElements(){return{}},bindEvents:function bindEvents(){},onInit:function onInit(){this.initElements(),this.bindEvents()},initElements:function initElements(){this.elements=this.getDefaultElements()}})},15955:(t,e,r)=>{"use strict";var n=r(67394),o=r(67971);n(e,"__esModule",{value:!0}),e.default=void 0;var i=o(r(1192)),a=o(r(52640)),u=o(r(42618)),s=o(r(36516)),c=o(r(20400)),l=o(r(10869)),f=window.elementorModules={Module:i.default,ViewModule:a.default,ArgsObject:u.default,ForceMethodImplementation:l.default,utils:{Masonry:s.default,Scroll:c.default}};e.default=f},68689:(t,e,r)=>{"use strict";var n=r(67394),o=r(67971);n(e,"__esModule",{value:!0}),e.default=void 0;var i=o(r(57135));r(64434),r(37472),r(76139),r(12897),r(93085);var a=o(r(59396)),u=o(r(73220)),s=o(r(24596)),c=o(r(49117)),l=o(r(11959)),f=o(r(39041)),p=o(r(38852)),d=o(r(77371)),h=o(r(68537)),v=o(r(18042)),y=function(t){(0,d.default)(CommandBase,t);var e=(0,h.default)(CommandBase);function CommandBase(t){var r,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:$e.commands;return(0,l.default)(this,CommandBase),r=e.call(this,t),(0,v.default)((0,p.default)(r),"component",void 0),r.currentCommand=n.getCurrentLast(),r.component=n.getComponent(r.currentCommand),r.initialize(t),t=r.args,r.validateArgs(t),r}return(0,f.default)(CommandBase,[{key:"requireContainer",value:function requireContainer(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.args;if(!e.container&&!e.containers)throw Error("container or containers are required.");if(e.container&&e.containers)throw Error("container and containers cannot go together please select one of them.");var r=e.containers||[e.container];r.forEach((function(e){t.requireArgumentInstance("container",elementorModules.editor.Container,{container:e})}))}},{key:"initialize",value:function initialize(){}},{key:"validateArgs",value:function validateArgs(){}},{key:"isDataChanged",value:function isDataChanged(){return!1}},{key:"apply",value:function apply(){elementorModules.ForceMethodImplementation()}},{key:"run",value:function run(){var t;this.onBeforeRun(this.args);try{this.onBeforeApply(this.args),t=this.apply(this.args)}catch(t){if(this.onCatchApply(t),t instanceof $e.modules.HookBreak)return!1}return this.runAfter(t)}},{key:"runAfter",value:function runAfter(t){var e=this,r=function onAfter(t){e.onAfterApply(e.args,t),e.isDataChanged()&&$e.internal("document/save/set-is-modified",{status:!0}),e.onAfterRun(e.args,t)},n=function(){var t=(0,c.default)(i.default.mark((function _callee(t){var r,n;return i.default.wrap((function _callee$(o){for(;;)switch(o.prev=o.next){case 0:if(r=e.onAfterApply(e.args,t),!(n=(0,a.default)(r)?r.flat().filter((function(t){return t instanceof u.default})):[]).length){o.next=4;break}return o.next=4,u.default.all(n);case 4:e.isDataChanged()&&$e.internal("document/save/set-is-modified",{status:!0}),e.onAfterRun(e.args,t);case 6:case"end":return o.stop()}}),_callee)})));return function asyncOnAfter(e){return t.apply(this,arguments)}}();if(t&&"object"===(0,s.default)(t)&&t.promise&&t.then&&t.fail)t.fail(this.onCatchApply.bind(this)),t.done(r);else{if(t instanceof u.default)return(0,c.default)(i.default.mark((function _callee2(){return i.default.wrap((function _callee2$(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,t.catch(e.onCatchApply.bind(e));case 2:return r.next=4,t.then((function(t){return n(t)}));case 4:return r.abrupt("return",t);case 5:case"end":return r.stop()}}),_callee2)})))();r(t)}return t}},{key:"runCatchHooks",value:function runCatchHooks(t){$e.hooks.runDataCatch(this.currentCommand,this.args,t),$e.hooks.runUICatch(this.currentCommand,this.args,t)}},{key:"onBeforeRun",value:function onBeforeRun(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};$e.hooks.runUIBefore(this.currentCommand,t)}},{key:"onAfterRun",value:function onAfterRun(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=arguments.length>1?arguments[1]:void 0;$e.hooks.runUIAfter(this.currentCommand,t,e)}},{key:"onBeforeApply",value:function onBeforeApply(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};$e.hooks.runDataDependency(this.currentCommand,t)}},{key:"onAfterApply",value:function onAfterApply(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=arguments.length>1?arguments[1]:void 0;return $e.hooks.runDataAfter(this.currentCommand,t,e)}},{key:"onCatchApply",value:function onCatchApply(t){this.runCatchHooks(t),elementorCommon.helpers.consoleError(t)}}],[{key:"getInstanceType",value:function getInstanceType(){return"CommandBase"}},{key:"getInfo",value:function getInfo(){return{}}}]),CommandBase}(o(r(42618)).default);e.default=y},9899:(t,e,r)=>{"use strict";var n=r(67394),o=r(67971);n(e,"__esModule",{value:!0}),e.default=e.Close=void 0;var i=o(r(11959)),a=o(r(39041)),u=o(r(77371)),s=o(r(68537)),c=function(t){(0,u.default)(Close,t);var e=(0,s.default)(Close);function Close(){return(0,i.default)(this,Close),e.apply(this,arguments)}return(0,a.default)(Close,[{key:"apply",value:function apply(){this.component.close()}}]),Close}(o(r(68689)).default);e.Close=c;var l=c;e.default=l},11469:(t,e,r)=>{"use strict";var n=r(67394);n(e,"__esModule",{value:!0}),n(e,"Close",{enumerable:!0,get:function get(){return o.Close}}),n(e,"Open",{enumerable:!0,get:function get(){return i.Open}}),n(e,"Toggle",{enumerable:!0,get:function get(){return a.Toggle}});var o=r(9899),i=r(35898),a=r(37894)},35898:(t,e,r)=>{"use strict";var n=r(67394),o=r(67971);n(e,"__esModule",{value:!0}),e.default=e.Open=void 0;var i=o(r(11959)),a=o(r(39041)),u=o(r(77371)),s=o(r(68537)),c=function(t){(0,u.default)(Open,t);var e=(0,s.default)(Open);function Open(){return(0,i.default)(this,Open),e.apply(this,arguments)}return(0,a.default)(Open,[{key:"apply",value:function apply(){$e.route(this.component.getNamespace())}}]),Open}(o(r(68689)).default);e.Open=c;var l=c;e.default=l},37894:(t,e,r)=>{"use strict";var n=r(67394),o=r(67971);n(e,"__esModule",{value:!0}),e.default=e.Toggle=void 0;var i=o(r(11959)),a=o(r(39041)),u=o(r(77371)),s=o(r(68537)),c=function(t){(0,u.default)(Toggle,t);var e=(0,s.default)(Toggle);function Toggle(){return(0,i.default)(this,Toggle),e.apply(this,arguments)}return(0,a.default)(Toggle,[{key:"apply",value:function apply(){this.component.isOpen?this.component.close():$e.route(this.component.getNamespace())}}]),Toggle}(o(r(68689)).default);e.Toggle=c;var l=c;e.default=l},15591:(t,e,r)=>{"use strict";var n=r(67394),o=r(67971);n(e,"__esModule",{value:!0}),e.default=void 0,r(99236),r(64434),r(84208);var i=o(r(38923)),a=o(r(35657)),u=o(r(83452)),s=o(r(47834)),c=o(r(11959)),l=o(r(39041)),f=o(r(77371)),p=o(r(68537)),d=function(t){(0,f.default)(ComponentBase,t);var e=(0,p.default)(ComponentBase);function ComponentBase(){return(0,c.default)(this,ComponentBase),e.apply(this,arguments)}return(0,l.default)(ComponentBase,[{key:"__construct",value:function __construct(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};t.manager&&(this.manager=t.manager),this.commands=this.defaultCommands(),this.commandsInternal=this.defaultCommandsInternal(),this.hooks=this.defaultHooks(),this.routes=this.defaultRoutes(),this.tabs=this.defaultTabs(),this.shortcuts=this.defaultShortcuts(),this.utils=this.defaultUtils(),this.data=this.defaultData(),this.uiStates=this.defaultUiStates(),this.defaultRoute="",this.currentTab=""}},{key:"registerAPI",value:function registerAPI(){var t=this;(0,i.default)(this.getTabs()).forEach((function(e){return t.registerTabRoute(e[0])})),(0,i.default)(this.getRoutes()).forEach((function(e){var r=(0,s.default)(e,2),n=r[0],o=r[1];return t.registerRoute(n,o)})),(0,i.default)(this.getCommands()).forEach((function(e){var r=(0,s.default)(e,2),n=r[0],o=r[1];return t.registerCommand(n,o)})),(0,i.default)(this.getCommandsInternal()).forEach((function(e){var r=(0,s.default)(e,2),n=r[0],o=r[1];return t.registerCommandInternal(n,o)})),(0,a.default)(this.getHooks()).forEach((function(e){return t.registerHook(e)})),(0,i.default)(this.getData()).forEach((function(e){var r=(0,s.default)(e,2),n=r[0],o=r[1];return t.registerData(n,o)})),(0,a.default)(this.getUiStates()).forEach((function(e){return t.registerUiState(e)}))}},{key:"getNamespace",value:function getNamespace(){elementorModules.ForceMethodImplementation()}},{key:"getRootContainer",value:function getRootContainer(){return this.getNamespace().split("/")[0]}},{key:"defaultTabs",value:function defaultTabs(){return{}}},{key:"defaultRoutes",value:function defaultRoutes(){return{}}},{key:"defaultCommands",value:function defaultCommands(){return{}}},{key:"defaultCommandsInternal",value:function defaultCommandsInternal(){return{}}},{key:"defaultHooks",value:function defaultHooks(){return{}}},{key:"defaultUiStates",value:function defaultUiStates(){return{}}},{key:"defaultShortcuts",value:function defaultShortcuts(){return{}}},{key:"defaultUtils",value:function defaultUtils(){return{}}},{key:"defaultData",value:function defaultData(){return{}}},{key:"getCommands",value:function getCommands(){return this.commands}},{key:"getCommandsInternal",value:function getCommandsInternal(){return this.commandsInternal}},{key:"getHooks",value:function getHooks(){return this.hooks}},{key:"getUiStates",value:function getUiStates(){return this.uiStates}},{key:"getRoutes",value:function getRoutes(){return this.routes}},{key:"getTabs",value:function getTabs(){return this.tabs}},{key:"getShortcuts",value:function getShortcuts(){return this.shortcuts}},{key:"getData",value:function getData(){return this.data}},{key:"registerCommand",value:function registerCommand(t,e){$e.commands.register(this,t,e)}},{key:"registerHook",value:function registerHook(t){return t.register()}},{key:"registerUiState",value:function registerUiState(t){$e.uiStates.register(t)}},{key:"registerCommandInternal",value:function registerCommandInternal(t,e){$e.commandsInternal.register(this,t,e)}},{key:"registerRoute",value:function registerRoute(t,e){$e.routes.register(this,t,e)}},{key:"registerData",value:function registerData(t,e){$e.data.register(this,t,e)}},{key:"unregisterRoute",value:function unregisterRoute(t){$e.routes.unregister(this,t)}},{key:"registerTabRoute",value:function registerTabRoute(t){var e=this;this.registerRoute(t,(function(r){return e.activateTab(t,r)}))}},{key:"dependency",value:function dependency(){return!0}},{key:"open",value:function open(){return!0}},{key:"close",value:function close(){return!!this.isOpen&&(this.isOpen=!1,this.inactivate(),$e.routes.clearCurrent(this.getNamespace()),$e.routes.clearHistory(this.getRootContainer()),!0)}},{key:"activate",value:function activate(){$e.components.activate(this.getNamespace())}},{key:"inactivate",value:function inactivate(){$e.components.inactivate(this.getNamespace())}},{key:"isActive",value:function isActive(){return $e.components.isActive(this.getNamespace())}},{key:"onRoute",value:function onRoute(t){this.toggleRouteClass(t,!0),this.toggleHistoryClass(),this.activate(),this.trigger("route/open",t)}},{key:"onCloseRoute",value:function onCloseRoute(t){this.toggleRouteClass(t,!1),this.inactivate(),this.trigger("route/close",t)}},{key:"setDefaultRoute",value:function setDefaultRoute(t){this.defaultRoute=this.getNamespace()+"/"+t}},{key:"getDefaultRoute",value:function getDefaultRoute(){return this.defaultRoute}},{key:"removeTab",value:function removeTab(t){delete this.tabs[t],this.unregisterRoute(t)}},{key:"hasTab",value:function hasTab(t){return!!this.tabs[t]}},{key:"addTab",value:function addTab(t,e,r){var n=this;if(this.tabs[t]=e,void 0!==r){var o={},i=(0,u.default)(this.tabs);i.pop(),i.splice(r,0,t),i.forEach((function(t){o[t]=n.tabs[t]})),this.tabs=o}this.registerTabRoute(t)}},{key:"getTabsWrapperSelector",value:function getTabsWrapperSelector(){return""}},{key:"getTabRoute",value:function getTabRoute(t){return this.getNamespace()+"/"+t}},{key:"renderTab",value:function renderTab(t){}},{key:"activateTab",value:function activateTab(t,e){var r=this;this.currentTab=t,this.renderTab(t,e),jQuery(this.getTabsWrapperSelector()+" .elementor-component-tab").off("click").on("click",(function(t){$e.route(r.getTabRoute(t.currentTarget.dataset.tab),e)})).removeClass("elementor-active").filter('[data-tab="'+t+'"]').addClass("elementor-active")}},{key:"getActiveTabConfig",value:function getActiveTabConfig(){return this.tabs[this.currentTab]||{}}},{key:"getBodyClass",value:function getBodyClass(t){return"e-route-"+t.replace(/\//g,"-")}},{key:"normalizeCommandName",value:function normalizeCommandName(t){return t.replace(/[A-Z]/g,(function(t,e){return(e>0?"-":"")+t.toLowerCase()}))}},{key:"importCommands",value:function importCommands(t){var e=this,r={};return(0,i.default)(t).forEach((function(t){var n=(0,s.default)(t,2),o=n[0],i=n[1],a=e.normalizeCommandName(o);r[a]=function(t){return new i(t).run()},$e.commands.classes[e.getNamespace()+"/"+a]=i})),r}},{key:"importHooks",value:function importHooks(t){var e={};for(var r in t){var n=new t[r];e[n.getId()]=n}return e}},{key:"importUiStates",value:function importUiStates(t){var e=this,r={};return(0,a.default)(t).forEach((function(t){var n=new t(e);r[n.getId()]=n})),r}},{key:"setUiState",value:function setUiState(t,e){$e.uiStates.set("".concat(this.getNamespace(),"/").concat(t),e)}},{key:"toggleRouteClass",value:function toggleRouteClass(t,e){elementorCommon.elements.$body.toggleClass(this.getBodyClass(t),e)}},{key:"toggleHistoryClass",value:function toggleHistoryClass(){elementorCommon.elements.$body.toggleClass("e-routes-has-history",!!$e.routes.getHistory(this.getRootContainer()).length)}}]),ComponentBase}(elementorModules.Module);e.default=d},18427:(t,e,r)=>{"use strict";var n=r(67394),o=r(52369),i=r(67971);n(e,"__esModule",{value:!0}),e.default=void 0;var a=i(r(11959)),u=i(r(39041)),s=i(r(76700)),c=i(r(44263)),l=i(r(77371)),f=i(r(68537)),p=i(r(15591)),d=o(r(11469)),h=function(t){(0,l.default)(ComponentModalBase,t);var e=(0,f.default)(ComponentModalBase);function ComponentModalBase(){return(0,a.default)(this,ComponentModalBase),e.apply(this,arguments)}return(0,u.default)(ComponentModalBase,[{key:"registerAPI",value:function registerAPI(){var t=this;(0,s.default)((0,c.default)(ComponentModalBase.prototype),"registerAPI",this).call(this),$e.shortcuts.register("esc",{scopes:[this.getNamespace()],callback:function callback(){return t.close()}})}},{key:"defaultCommands",value:function defaultCommands(){return this.importCommands(d)}},{key:"defaultRoutes",value:function defaultRoutes(){return{"":function _(){}}}},{key:"open",value:function open(){var t=this;if(!this.layout){var e=this.getModalLayout();this.layout=new e({component:this}),this.layout.getModal().on("hide",(function(){return t.close()}))}return this.layout.showModal(),!0}},{key:"close",value:function close(){return!!(0,s.default)((0,c.default)(ComponentModalBase.prototype),"close",this).call(this)&&(this.layout.getModal().hide(),!0)}},{key:"getModalLayout",value:function getModalLayout(){elementorModules.ForceMethodImplementation()}}]),ComponentModalBase}(p.default);e.default=h},7918:(t,e,r)=>{"use strict";var n=r(67394),o=r(67971);n(e,"__esModule",{value:!0}),e.default=void 0;var i=o(r(11959)),a=o(r(77371)),u=o(r(68537)),s=function(t){(0,a.default)(HookBreak,t);var e=(0,u.default)(HookBreak);function HookBreak(){return(0,i.default)(this,HookBreak),e.call(this,"HookBreak")}return HookBreak}((0,o(r(73629)).default)(Error));e.default=s},99107:(t,e,r)=>{"use strict";var n=r(67394),o=r(67971);n(e,"__esModule",{value:!0}),e.default=void 0;var i=o(r(11959)),a=o(r(39041)),u=o(r(77371)),s=o(r(68537)),c=function(t){(0,u.default)(_default,t);var e=(0,s.default)(_default);function _default(){return(0,i.default)(this,_default),e.apply(this,arguments)}return(0,a.default)(_default,[{key:"className",value:function className(){return"elementor-templates-modal__header"}},{key:"getTemplate",value:function getTemplate(){return"#tmpl-elementor-templates-modal__header"}},{key:"regions",value:function regions(){return{logoArea:".elementor-templates-modal__header__logo-area",tools:"#elementor-template-library-header-tools",menuArea:".elementor-templates-modal__header__menu-area"}}},{key:"ui",value:function ui(){return{closeModal:".elementor-templates-modal__header__close"}}},{key:"events",value:function events(){return{"click @ui.closeModal":"onCloseModalClick"}}},{key:"templateHelpers",value:function templateHelpers(){return{closeType:this.getOption("closeType")}}},{key:"onCloseModalClick",value:function onCloseModalClick(){this._parent._parent._parent.hideModal()}}]),_default}(Marionette.LayoutView);e.default=c},56525:(t,e,r)=>{"use strict";var n=r(67394),o=r(67971);n(e,"__esModule",{value:!0}),e.default=void 0;var i=o(r(11959)),a=o(r(39041)),u=o(r(77371)),s=o(r(68537)),c=o(r(99107)),l=o(r(31352)),f=o(r(20311)),p=function(t){(0,u.default)(_default,t);var e=(0,s.default)(_default);function _default(){return(0,i.default)(this,_default),e.apply(this,arguments)}return(0,a.default)(_default,[{key:"el",value:function el(){return this.getModal().getElements("widget")}},{key:"regions",value:function regions(){return{modalHeader:".dialog-header",modalContent:".dialog-lightbox-content",modalLoading:".dialog-lightbox-loading"}}},{key:"initialize",value:function initialize(){this.modalHeader.show(new c.default(this.getHeaderOptions()))}},{key:"getModal",value:function getModal(){return this.modal||this.initModal(),this.modal}},{key:"initModal",value:function initModal(){var t={className:"elementor-templates-modal",closeButton:!1,draggable:!1,hide:{onOutsideClick:!1,onEscKeyPress:!1}};jQuery.extend(!0,t,this.getModalOptions()),this.modal=elementorCommon.dialogsManager.createWidget("lightbox",t),this.modal.getElements("message").append(this.modal.addElement("content"),this.modal.addElement("loading")),t.draggable&&this.draggableModal()}},{key:"showModal",value:function showModal(){this.getModal().show()}},{key:"hideModal",value:function hideModal(){this.getModal().hide()}},{key:"draggableModal",value:function draggableModal(){var t=this.getModal().getElements("widgetContent");t.draggable({containment:"parent",stop:function stop(){t.height("")}}),t.css("position","absolute")}},{key:"getModalOptions",value:function getModalOptions(){return{}}},{key:"getLogoOptions",value:function getLogoOptions(){return{}}},{key:"getHeaderOptions",value:function getHeaderOptions(){return{closeType:"normal"}}},{key:"getHeaderView",value:function getHeaderView(){return this.modalHeader.currentView}},{key:"showLoadingView",value:function showLoadingView(){this.modalLoading.show(new f.default),this.modalLoading.$el.show(),this.modalContent.$el.hide()}},{key:"hideLoadingView",value:function hideLoadingView(){this.modalContent.$el.show(),this.modalLoading.$el.hide()}},{key:"showLogo",value:function showLogo(){this.getHeaderView().logoArea.show(new l.default(this.getLogoOptions()))}}]),_default}(Marionette.LayoutView);e.default=p},20311:(t,e,r)=>{"use strict";var n=r(67394),o=r(67971);n(e,"__esModule",{value:!0}),e.default=void 0;var i=o(r(11959)),a=o(r(39041)),u=o(r(77371)),s=o(r(68537)),c=function(t){(0,u.default)(_default,t);var e=(0,s.default)(_default);function _default(){return(0,i.default)(this,_default),e.apply(this,arguments)}return(0,a.default)(_default,[{key:"id",value:function id(){return"elementor-template-library-loading"}},{key:"getTemplate",value:function getTemplate(){return"#tmpl-elementor-template-library-loading"}}]),_default}(Marionette.ItemView);e.default=c},31352:(t,e,r)=>{"use strict";var n=r(67394),o=r(67971);n(e,"__esModule",{value:!0}),e.default=void 0;var i=o(r(11959)),a=o(r(39041)),u=o(r(77371)),s=o(r(68537)),c=function(t){(0,u.default)(_default,t);var e=(0,s.default)(_default);function _default(){return(0,i.default)(this,_default),e.apply(this,arguments)}return(0,a.default)(_default,[{key:"getTemplate",value:function getTemplate(){return"#tmpl-elementor-templates-modal__header__logo"}},{key:"className",value:function className(){return"elementor-templates-modal__header__logo"}},{key:"events",value:function events(){return{click:"onClick"}}},{key:"templateHelpers",value:function templateHelpers(){return{title:this.getOption("title")}}},{key:"onClick",value:function onClick(){var t=this.getOption("click");t&&t()}}]),_default}(Marionette.ItemView);e.default=c},7421:(t,e,r)=>{r(99572),r(37627),t.exports=r(47208).Array.from},70157:(t,e,r)=>{r(42580),t.exports=r(47208).Array.isArray},373:(t,e,r)=>{r(70285),r(99572),r(74114),r(17710),r(43849),r(61340),r(28933),t.exports=r(47208).Map},14710:(t,e,r)=>{r(30785);var n=r(47208).Object;t.exports=function create(t,e){return n.create(t,e)}},43153:(t,e,r)=>{r(40168);var n=r(47208).Object;t.exports=function defineProperty(t,e,r){return n.defineProperty(t,e,r)}},8531:(t,e,r)=>{r(95260),t.exports=r(47208).Object.entries},32622:(t,e,r)=>{r(18576);var n=r(47208).Object;t.exports=function getOwnPropertyDescriptor(t,e){return n.getOwnPropertyDescriptor(t,e)}},58535:(t,e,r)=>{r(4840),t.exports=r(47208).Object.getPrototypeOf},97220:(t,e,r)=>{r(5453),t.exports=r(47208).Object.keys},65135:(t,e,r)=>{r(13890),t.exports=r(47208).Object.setPrototypeOf},69591:(t,e,r)=>{r(57188),t.exports=r(47208).Object.values},41306:(t,e,r)=>{r(58006),t.exports=r(47208).parseFloat},34345:(t,e,r)=>{r(24399),t.exports=r(47208).parseInt},76483:(t,e,r)=>{r(70285),r(99572),r(74114),r(86082),r(81522),r(25757),t.exports=r(47208).Promise},43094:(t,e,r)=>{r(11320),t.exports=r(47208).Reflect.construct},17641:(t,e,r)=>{r(36600),t.exports=r(47208).Reflect.get},21114:(t,e,r)=>{r(78760),t.exports=r(7273).f("hasInstance")},19103:(t,e,r)=>{r(54370),r(70285),r(87573),r(97224),t.exports=r(47208).Symbol},39871:(t,e,r)=>{r(99572),r(74114),t.exports=r(7273).f("iterator")},89999:(t,e,r)=>{r(70285),r(74114),r(23337),r(10143),r(92797),t.exports=r(47208).WeakMap},26610:t=>{t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},29697:t=>{t.exports=function(){}},54677:t=>{t.exports=function(t,e,r,n){if(!(t instanceof e)||void 0!==n&&n in t)throw TypeError(r+": incorrect invocation!");return t}},30498:(t,e,r)=>{var n=r(39632);t.exports=function(t){if(!n(t))throw TypeError(t+" is not an object!");return t}},42411:(t,e,r)=>{var n=r(25985);t.exports=function(t,e){var r=[];return n(t,!1,r.push,r,e),r}},69191:(t,e,r)=>{var n=r(1504),o=r(37154),i=r(46723);t.exports=function(t){return function(e,r,a){var u,s=n(e),c=o(s.length),l=i(a,c);if(t&&r!=r){for(;c>l;)if((u=s[l++])!=u)return!0}else for(;c>l;l++)if((t||l in s)&&s[l]===r)return t||l||0;return!t&&-1}}},97647:(t,e,r)=>{var n=r(61725),o=r(13115),i=r(60061),a=r(37154),u=r(41904);t.exports=function(t,e){var r=1==t,s=2==t,c=3==t,l=4==t,f=6==t,p=5==t||f,d=e||u;return function(e,u,h){for(var v,y,g=i(e),m=o(g),x=n(u,h,3),b=a(m.length),w=0,k=r?d(e,b):s?d(e,0):void 0;b>w;w++)if((p||w in m)&&(y=x(v=m[w],w,g),t))if(r)k[w]=y;else if(y)switch(t){case 3:return!0;case 5:return v;case 6:return w;case 2:k.push(v)}else if(l)return!1;return f?-1:c||l?l:k}}},88320:(t,e,r)=>{var n=r(39632),o=r(7359),i=r(24300)("species");t.exports=function(t){var e;return o(t)&&("function"!=typeof(e=t.constructor)||e!==Array&&!o(e.prototype)||(e=void 0),n(e)&&null===(e=e[i])&&(e=void 0)),void 0===e?Array:e}},41904:(t,e,r)=>{var n=r(88320);t.exports=function(t,e){return new(n(t))(e)}},45515:(t,e,r)=>{"use strict";var n=r(26610),o=r(39632),i=r(19897),a=[].slice,u={},construct=function(t,e,r){if(!(e in u)){for(var n=[],o=0;o<e;o++)n[o]="a["+o+"]";u[e]=Function("F,a","return new F("+n.join(",")+")")}return u[e](t,r)};t.exports=Function.bind||function bind(t){var e=n(this),r=a.call(arguments,1),bound=function(){var n=r.concat(a.call(arguments));return this instanceof bound?construct(e,n.length,n):i(e,n,t)};return o(e.prototype)&&(bound.prototype=e.prototype),bound}},8312:(t,e,r)=>{var n=r(41352),o=r(24300)("toStringTag"),i="Arguments"==n(function(){return arguments}());t.exports=function(t){var e,r,a;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(r=function(t,e){try{return t[e]}catch(t){}}(e=Object(t),o))?r:i?n(e):"Object"==(a=n(e))&&"function"==typeof e.callee?"Arguments":a}},41352:t=>{var e={}.toString;t.exports=function(t){return e.call(t).slice(8,-1)}},29071:(t,e,r)=>{"use strict";var n=r(60510).f,o=r(82488),i=r(13199),a=r(61725),u=r(54677),s=r(25985),c=r(6125),l=r(9329),f=r(5698),p=r(75179),d=r(6758).fastKey,h=r(41081),v=p?"_s":"size",getEntry=function(t,e){var r,n=d(e);if("F"!==n)return t._i[n];for(r=t._f;r;r=r.n)if(r.k==e)return r};t.exports={getConstructor:function(t,e,r,c){var l=t((function(t,n){u(t,l,e,"_i"),t._t=e,t._i=o(null),t._f=void 0,t._l=void 0,t[v]=0,null!=n&&s(n,r,t[c],t)}));return i(l.prototype,{clear:function clear(){for(var t=h(this,e),r=t._i,n=t._f;n;n=n.n)n.r=!0,n.p&&(n.p=n.p.n=void 0),delete r[n.i];t._f=t._l=void 0,t[v]=0},delete:function(t){var r=h(this,e),n=getEntry(r,t);if(n){var o=n.n,i=n.p;delete r._i[n.i],n.r=!0,i&&(i.n=o),o&&(o.p=i),r._f==n&&(r._f=o),r._l==n&&(r._l=i),r[v]--}return!!n},forEach:function forEach(t){h(this,e);for(var r,n=a(t,arguments.length>1?arguments[1]:void 0,3);r=r?r.n:this._f;)for(n(r.v,r.k,this);r&&r.r;)r=r.p},has:function has(t){return!!getEntry(h(this,e),t)}}),p&&n(l.prototype,"size",{get:function(){return h(this,e)[v]}}),l},def:function(t,e,r){var n,o,i=getEntry(t,e);return i?i.v=r:(t._l=i={i:o=d(e,!0),k:e,v:r,p:n=t._l,n:void 0,r:!1},t._f||(t._f=i),n&&(n.n=i),t[v]++,"F"!==o&&(t._i[o]=i)),t},getEntry,setStrong:function(t,e,r){c(t,e,(function(t,r){this._t=h(t,e),this._k=r,this._l=void 0}),(function(){for(var t=this,e=t._k,r=t._l;r&&r.r;)r=r.p;return t._t&&(t._l=r=r?r.n:t._t._f)?l(0,"keys"==e?r.k:"values"==e?r.v:[r.k,r.v]):(t._t=void 0,l(1))}),r?"entries":"values",!r,!0),f(e)}}},89518:(t,e,r)=>{var n=r(8312),o=r(42411);t.exports=function(t){return function toJSON(){if(n(this)!=t)throw TypeError(t+"#toJSON isn't generic");return o(this)}}},92600:(t,e,r)=>{"use strict";var n=r(13199),o=r(6758).getWeak,i=r(30498),a=r(39632),u=r(54677),s=r(25985),c=r(97647),l=r(20657),f=r(41081),p=c(5),d=c(6),h=0,uncaughtFrozenStore=function(t){return t._l||(t._l=new UncaughtFrozenStore)},UncaughtFrozenStore=function(){this.a=[]},findUncaughtFrozen=function(t,e){return p(t.a,(function(t){return t[0]===e}))};UncaughtFrozenStore.prototype={get:function(t){var e=findUncaughtFrozen(this,t);if(e)return e[1]},has:function(t){return!!findUncaughtFrozen(this,t)},set:function(t,e){var r=findUncaughtFrozen(this,t);r?r[1]=e:this.a.push([t,e])},delete:function(t){var e=d(this.a,(function(e){return e[0]===t}));return~e&&this.a.splice(e,1),!!~e}},t.exports={getConstructor:function(t,e,r,i){var c=t((function(t,n){u(t,c,e,"_i"),t._t=e,t._i=h++,t._l=void 0,null!=n&&s(n,r,t[i],t)}));return n(c.prototype,{delete:function(t){if(!a(t))return!1;var r=o(t);return!0===r?uncaughtFrozenStore(f(this,e)).delete(t):r&&l(r,this._i)&&delete r[this._i]},has:function has(t){if(!a(t))return!1;var r=o(t);return!0===r?uncaughtFrozenStore(f(this,e)).has(t):r&&l(r,this._i)}}),c},def:function(t,e,r){var n=o(i(e),!0);return!0===n?uncaughtFrozenStore(t).set(e,r):n[t._i]=r,t},ufstore:uncaughtFrozenStore}},70770:(t,e,r)=>{"use strict";var n=r(43280),o=r(98310),i=r(6758),a=r(90472),u=r(62292),s=r(13199),c=r(25985),l=r(54677),f=r(39632),p=r(2413),d=r(60510).f,h=r(97647)(0),v=r(75179);t.exports=function(t,e,r,y,g,m){var x=n[t],b=x,w=g?"set":"add",k=b&&b.prototype,S={};return v&&"function"==typeof b&&(m||k.forEach&&!a((function(){(new b).entries().next()})))?(b=e((function(e,r){l(e,b,t,"_c"),e._c=new x,null!=r&&c(r,g,e[w],e)})),h("add,clear,delete,forEach,get,has,set,keys,values,entries,toJSON".split(","),(function(t){var e="add"==t||"set"==t;!(t in k)||m&&"clear"==t||u(b.prototype,t,(function(r,n){if(l(this,b,t),!e&&m&&!f(r))return"get"==t&&void 0;var o=this._c[t](0===r?0:r,n);return e?this:o}))})),m||d(b.prototype,"size",{get:function(){return this._c.size}})):(b=y.getConstructor(e,t,g,w),s(b.prototype,r),i.NEED=!0),p(b,t),S[t]=b,o(o.G+o.W+o.F,S),m||y.setStrong(b,t,g),b}},47208:t=>{var e=t.exports={version:"2.6.12"};"number"==typeof __e&&(__e=e)},87352:(t,e,r)=>{"use strict";var n=r(60510),o=r(48439);t.exports=function(t,e,r){e in t?n.f(t,e,o(0,r)):t[e]=r}},61725:(t,e,r)=>{var n=r(26610);t.exports=function(t,e,r){if(n(t),void 0===e)return t;switch(r){case 1:return function(r){return t.call(e,r)};case 2:return function(r,n){return t.call(e,r,n)};case 3:return function(r,n,o){return t.call(e,r,n,o)}}return function(){return t.apply(e,arguments)}}},18239:t=>{t.exports=function(t){if(null==t)throw TypeError("Can't call method on  "+t);return t}},75179:(t,e,r)=>{t.exports=!r(90472)((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},48765:(t,e,r)=>{var n=r(39632),o=r(43280).document,i=n(o)&&n(o.createElement);t.exports=function(t){return i?o.createElement(t):{}}},31986:t=>{t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},42266:(t,e,r)=>{var n=r(86425),o=r(97739),i=r(67410);t.exports=function(t){var e=n(t),r=o.f;if(r)for(var a,u=r(t),s=i.f,c=0;u.length>c;)s.call(t,a=u[c++])&&e.push(a);return e}},98310:(t,e,r)=>{var n=r(43280),o=r(47208),i=r(61725),a=r(62292),u=r(20657),$export=function(t,e,r){var s,c,l,f=t&$export.F,p=t&$export.G,d=t&$export.S,h=t&$export.P,v=t&$export.B,y=t&$export.W,g=p?o:o[e]||(o[e]={}),m=g.prototype,x=p?n:d?n[e]:(n[e]||{}).prototype;for(s in p&&(r=e),r)(c=!f&&x&&void 0!==x[s])&&u(g,s)||(l=c?x[s]:r[s],g[s]=p&&"function"!=typeof x[s]?r[s]:v&&c?i(l,n):y&&x[s]==l?function(t){var F=function(e,r,n){if(this instanceof t){switch(arguments.length){case 0:return new t;case 1:return new t(e);case 2:return new t(e,r)}return new t(e,r,n)}return t.apply(this,arguments)};return F.prototype=t.prototype,F}(l):h&&"function"==typeof l?i(Function.call,l):l,h&&((g.virtual||(g.virtual={}))[s]=l,t&$export.R&&m&&!m[s]&&a(m,s,l)))};$export.F=1,$export.G=2,$export.S=4,$export.P=8,$export.B=16,$export.W=32,$export.U=64,$export.R=128,t.exports=$export},90472:t=>{t.exports=function(t){try{return!!t()}catch(t){return!0}}},25985:(t,e,r)=>{var n=r(61725),o=r(93086),i=r(11827),a=r(30498),u=r(37154),s=r(26116),c={},l={},f=t.exports=function(t,e,r,f,p){var d,h,v,y,g=p?function(){return t}:s(t),m=n(r,f,e?2:1),x=0;if("function"!=typeof g)throw TypeError(t+" is not iterable!");if(i(g)){for(d=u(t.length);d>x;x++)if((y=e?m(a(h=t[x])[0],h[1]):m(t[x]))===c||y===l)return y}else for(v=g.call(t);!(h=v.next()).done;)if((y=o(v,m,h.value,e))===c||y===l)return y};f.BREAK=c,f.RETURN=l},43280:t=>{var e=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=e)},20657:t=>{var e={}.hasOwnProperty;t.exports=function(t,r){return e.call(t,r)}},62292:(t,e,r)=>{var n=r(60510),o=r(48439);t.exports=r(75179)?function(t,e,r){return n.f(t,e,o(1,r))}:function(t,e,r){return t[e]=r,t}},92477:(t,e,r)=>{var n=r(43280).document;t.exports=n&&n.documentElement},64457:(t,e,r)=>{t.exports=!r(75179)&&!r(90472)((function(){return 7!=Object.defineProperty(r(48765)("div"),"a",{get:function(){return 7}}).a}))},19897:t=>{t.exports=function(t,e,r){var n=void 0===r;switch(e.length){case 0:return n?t():t.call(r);case 1:return n?t(e[0]):t.call(r,e[0]);case 2:return n?t(e[0],e[1]):t.call(r,e[0],e[1]);case 3:return n?t(e[0],e[1],e[2]):t.call(r,e[0],e[1],e[2]);case 4:return n?t(e[0],e[1],e[2],e[3]):t.call(r,e[0],e[1],e[2],e[3])}return t.apply(r,e)}},13115:(t,e,r)=>{var n=r(41352);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==n(t)?t.split(""):Object(t)}},11827:(t,e,r)=>{var n=r(79105),o=r(24300)("iterator"),i=Array.prototype;t.exports=function(t){return void 0!==t&&(n.Array===t||i[o]===t)}},7359:(t,e,r)=>{var n=r(41352);t.exports=Array.isArray||function isArray(t){return"Array"==n(t)}},39632:t=>{t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},93086:(t,e,r)=>{var n=r(30498);t.exports=function(t,e,r,o){try{return o?e(n(r)[0],r[1]):e(r)}catch(e){var i=t.return;throw void 0!==i&&n(i.call(t)),e}}},19802:(t,e,r)=>{"use strict";var n=r(82488),o=r(48439),i=r(2413),a={};r(62292)(a,r(24300)("iterator"),(function(){return this})),t.exports=function(t,e,r){t.prototype=n(a,{next:o(1,r)}),i(t,e+" Iterator")}},6125:(t,e,r)=>{"use strict";var n=r(36794),o=r(98310),i=r(19312),a=r(62292),u=r(79105),s=r(19802),c=r(2413),l=r(999),f=r(24300)("iterator"),p=!([].keys&&"next"in[].keys()),d="keys",h="values",returnThis=function(){return this};t.exports=function(t,e,r,v,y,g,m){s(r,e,v);var x,b,w,getMethod=function(t){if(!p&&t in M)return M[t];switch(t){case d:return function keys(){return new r(this,t)};case h:return function values(){return new r(this,t)}}return function entries(){return new r(this,t)}},k=e+" Iterator",S=y==h,O=!1,M=t.prototype,C=M[f]||M["@@iterator"]||y&&M[y],T=C||getMethod(y),E=y?S?getMethod("entries"):T:void 0,A="Array"==e&&M.entries||C;if(A&&(w=l(A.call(new t)))!==Object.prototype&&w.next&&(c(w,k,!0),n||"function"==typeof w[f]||a(w,f,returnThis)),S&&C&&C.name!==h&&(O=!0,T=function values(){return C.call(this)}),n&&!m||!p&&!O&&M[f]||a(M,f,T),u[e]=T,u[k]=returnThis,y)if(x={values:S?T:getMethod(h),keys:g?T:getMethod(d),entries:E},m)for(b in x)b in M||i(M,b,x[b]);else o(o.P+o.F*(p||O),e,x);return x}},26797:(t,e,r)=>{var n=r(24300)("iterator"),o=!1;try{var i=[7][n]();i.return=function(){o=!0},Array.from(i,(function(){throw 2}))}catch(t){}t.exports=function(t,e){if(!e&&!o)return!1;var r=!1;try{var i=[7],a=i[n]();a.next=function(){return{done:r=!0}},i[n]=function(){return a},t(i)}catch(t){}return r}},9329:t=>{t.exports=function(t,e){return{value:e,done:!!t}}},79105:t=>{t.exports={}},36794:t=>{t.exports=!0},6758:(t,e,r)=>{var n=r(54251)("meta"),o=r(39632),i=r(20657),a=r(60510).f,u=0,s=Object.isExtensible||function(){return!0},c=!r(90472)((function(){return s(Object.preventExtensions({}))})),setMeta=function(t){a(t,n,{value:{i:"O"+ ++u,w:{}}})},l=t.exports={KEY:n,NEED:!1,fastKey:function(t,e){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,n)){if(!s(t))return"F";if(!e)return"E";setMeta(t)}return t[n].i},getWeak:function(t,e){if(!i(t,n)){if(!s(t))return!0;if(!e)return!1;setMeta(t)}return t[n].w},onFreeze:function(t){return c&&l.NEED&&s(t)&&!i(t,n)&&setMeta(t),t}}},4326:(t,e,r)=>{var n=r(43280),o=r(6022).set,i=n.MutationObserver||n.WebKitMutationObserver,a=n.process,u=n.Promise,s="process"==r(41352)(a);t.exports=function(){var t,e,r,flush=function(){var n,o;for(s&&(n=a.domain)&&n.exit();t;){o=t.fn,t=t.next;try{o()}catch(n){throw t?r():e=void 0,n}}e=void 0,n&&n.enter()};if(s)r=function(){a.nextTick(flush)};else if(!i||n.navigator&&n.navigator.standalone)if(u&&u.resolve){var c=u.resolve(void 0);r=function(){c.then(flush)}}else r=function(){o.call(n,flush)};else{var l=!0,f=document.createTextNode("");new i(flush).observe(f,{characterData:!0}),r=function(){f.data=l=!l}}return function(n){var o={fn:n,next:void 0};e&&(e.next=o),t||(t=o,r()),e=o}}},88579:(t,e,r)=>{"use strict";var n=r(26610);function PromiseCapability(t){var e,r;this.promise=new t((function(t,n){if(void 0!==e||void 0!==r)throw TypeError("Bad Promise constructor");e=t,r=n})),this.resolve=n(e),this.reject=n(r)}t.exports.f=function(t){return new PromiseCapability(t)}},77995:(t,e,r)=>{"use strict";var n=r(75179),o=r(86425),i=r(97739),a=r(67410),u=r(60061),s=r(13115),c=Object.assign;t.exports=!c||r(90472)((function(){var t={},e={},r=Symbol(),n="abcdefghijklmnopqrst";return t[r]=7,n.split("").forEach((function(t){e[t]=t})),7!=c({},t)[r]||Object.keys(c({},e)).join("")!=n}))?function assign(t,e){for(var r=u(t),c=arguments.length,l=1,f=i.f,p=a.f;c>l;)for(var d,h=s(arguments[l++]),v=f?o(h).concat(f(h)):o(h),y=v.length,g=0;y>g;)d=v[g++],n&&!p.call(h,d)||(r[d]=h[d]);return r}:c},82488:(t,e,r)=>{var n=r(30498),o=r(36607),i=r(31986),a=r(18478)("IE_PROTO"),Empty=function(){},createDict=function(){var t,e=r(48765)("iframe"),n=i.length;for(e.style.display="none",r(92477).appendChild(e),e.src="javascript:",(t=e.contentWindow.document).open(),t.write("<script>document.F=Object<\/script>"),t.close(),createDict=t.F;n--;)delete createDict.prototype[i[n]];return createDict()};t.exports=Object.create||function create(t,e){var r;return null!==t?(Empty.prototype=n(t),r=new Empty,Empty.prototype=null,r[a]=t):r=createDict(),void 0===e?r:o(r,e)}},60510:(t,e,r)=>{var n=r(30498),o=r(64457),i=r(12737),a=Object.defineProperty;e.f=r(75179)?Object.defineProperty:function defineProperty(t,e,r){if(n(t),e=i(e,!0),n(r),o)try{return a(t,e,r)}catch(t){}if("get"in r||"set"in r)throw TypeError("Accessors not supported!");return"value"in r&&(t[e]=r.value),t}},36607:(t,e,r)=>{var n=r(60510),o=r(30498),i=r(86425);t.exports=r(75179)?Object.defineProperties:function defineProperties(t,e){o(t);for(var r,a=i(e),u=a.length,s=0;u>s;)n.f(t,r=a[s++],e[r]);return t}},83264:(t,e,r)=>{var n=r(67410),o=r(48439),i=r(1504),a=r(12737),u=r(20657),s=r(64457),c=Object.getOwnPropertyDescriptor;e.f=r(75179)?c:function getOwnPropertyDescriptor(t,e){if(t=i(t),e=a(e,!0),s)try{return c(t,e)}catch(t){}if(u(t,e))return o(!n.f.call(t,e),t[e])}},26084:(t,e,r)=>{var n=r(1504),o=r(8772).f,i={}.toString,a="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];t.exports.f=function getOwnPropertyNames(t){return a&&"[object Window]"==i.call(t)?function(t){try{return o(t)}catch(t){return a.slice()}}(t):o(n(t))}},8772:(t,e,r)=>{var n=r(65326),o=r(31986).concat("length","prototype");e.f=Object.getOwnPropertyNames||function getOwnPropertyNames(t){return n(t,o)}},97739:(t,e)=>{e.f=Object.getOwnPropertySymbols},999:(t,e,r)=>{var n=r(20657),o=r(60061),i=r(18478)("IE_PROTO"),a=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=o(t),n(t,i)?t[i]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?a:null}},65326:(t,e,r)=>{var n=r(20657),o=r(1504),i=r(69191)(!1),a=r(18478)("IE_PROTO");t.exports=function(t,e){var r,u=o(t),s=0,c=[];for(r in u)r!=a&&n(u,r)&&c.push(r);for(;e.length>s;)n(u,r=e[s++])&&(~i(c,r)||c.push(r));return c}},86425:(t,e,r)=>{var n=r(65326),o=r(31986);t.exports=Object.keys||function keys(t){return n(t,o)}},67410:(t,e)=>{e.f={}.propertyIsEnumerable},57972:(t,e,r)=>{var n=r(98310),o=r(47208),i=r(90472);t.exports=function(t,e){var r=(o.Object||{})[t]||Object[t],a={};a[t]=e(r),n(n.S+n.F*i((function(){r(1)})),"Object",a)}},9480:(t,e,r)=>{var n=r(75179),o=r(86425),i=r(1504),a=r(67410).f;t.exports=function(t){return function(e){for(var r,u=i(e),s=o(u),c=s.length,l=0,f=[];c>l;)r=s[l++],n&&!a.call(u,r)||f.push(t?[r,u[r]]:u[r]);return f}}},38230:(t,e,r)=>{var n=r(43280).parseFloat,o=r(71963).trim;t.exports=1/n(r(18458)+"-0")!=-1/0?function parseFloat(t){var e=o(String(t),3),r=n(e);return 0===r&&"-"==e.charAt(0)?-0:r}:n},60162:(t,e,r)=>{var n=r(43280).parseInt,o=r(71963).trim,i=r(18458),a=/^[-+]?0[xX]/;t.exports=8!==n(i+"08")||22!==n(i+"0x16")?function parseInt(t,e){var r=o(String(t),3);return n(r,e>>>0||(a.test(r)?16:10))}:n},52745:t=>{t.exports=function(t){try{return{e:!1,v:t()}}catch(t){return{e:!0,v:t}}}},88747:(t,e,r)=>{var n=r(30498),o=r(39632),i=r(88579);t.exports=function(t,e){if(n(t),o(e)&&e.constructor===t)return e;var r=i.f(t);return(0,r.resolve)(e),r.promise}},48439:t=>{t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},13199:(t,e,r)=>{var n=r(62292);t.exports=function(t,e,r){for(var o in e)r&&t[o]?t[o]=e[o]:n(t,o,e[o]);return t}},19312:(t,e,r)=>{t.exports=r(62292)},14689:(t,e,r)=>{"use strict";var n=r(98310),o=r(26610),i=r(61725),a=r(25985);t.exports=function(t){n(n.S,t,{from:function from(t){var e,r,n,u,s=arguments[1];return o(this),(e=void 0!==s)&&o(s),null==t?new this:(r=[],e?(n=0,u=i(s,arguments[2],2),a(t,!1,(function(t){r.push(u(t,n++))}))):a(t,!1,r.push,r),new this(r))}})}},7883:(t,e,r)=>{"use strict";var n=r(98310);t.exports=function(t){n(n.S,t,{of:function of(){for(var t=arguments.length,e=new Array(t);t--;)e[t]=arguments[t];return new this(e)}})}},25574:(t,e,r)=>{var n=r(39632),o=r(30498),check=function(t,e){if(o(t),!n(e)&&null!==e)throw TypeError(e+": can't set as prototype!")};t.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(t,e,n){try{(n=r(61725)(Function.call,r(83264).f(Object.prototype,"__proto__").set,2))(t,[]),e=!(t instanceof Array)}catch(t){e=!0}return function setPrototypeOf(t,r){return check(t,r),e?t.__proto__=r:n(t,r),t}}({},!1):void 0),check}},5698:(t,e,r)=>{"use strict";var n=r(43280),o=r(47208),i=r(60510),a=r(75179),u=r(24300)("species");t.exports=function(t){var e="function"==typeof o[t]?o[t]:n[t];a&&e&&!e[u]&&i.f(e,u,{configurable:!0,get:function(){return this}})}},2413:(t,e,r)=>{var n=r(60510).f,o=r(20657),i=r(24300)("toStringTag");t.exports=function(t,e,r){t&&!o(t=r?t:t.prototype,i)&&n(t,i,{configurable:!0,value:e})}},18478:(t,e,r)=>{var n=r(29990)("keys"),o=r(54251);t.exports=function(t){return n[t]||(n[t]=o(t))}},29990:(t,e,r)=>{var n=r(47208),o=r(43280),i="__core-js_shared__",a=o[i]||(o[i]={});(t.exports=function(t,e){return a[t]||(a[t]=void 0!==e?e:{})})("versions",[]).push({version:n.version,mode:r(36794)?"pure":"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})},73732:(t,e,r)=>{var n=r(30498),o=r(26610),i=r(24300)("species");t.exports=function(t,e){var r,a=n(t).constructor;return void 0===a||null==(r=n(a)[i])?e:o(r)}},78502:(t,e,r)=>{var n=r(58290),o=r(18239);t.exports=function(t){return function(e,r){var i,a,u=String(o(e)),s=n(r),c=u.length;return s<0||s>=c?t?"":void 0:(i=u.charCodeAt(s))<55296||i>56319||s+1===c||(a=u.charCodeAt(s+1))<56320||a>57343?t?u.charAt(s):i:t?u.slice(s,s+2):a-56320+(i-55296<<10)+65536}}},71963:(t,e,r)=>{var n=r(98310),o=r(18239),i=r(90472),a=r(18458),u="["+a+"]",s=RegExp("^"+u+u+"*"),c=RegExp(u+u+"*$"),exporter=function(t,e,r){var o={},u=i((function(){return!!a[t]()||"​…"!="​…"[t]()})),s=o[t]=u?e(l):a[t];r&&(o[r]=s),n(n.P+n.F*u,"String",o)},l=exporter.trim=function(t,e){return t=String(o(t)),1&e&&(t=t.replace(s,"")),2&e&&(t=t.replace(c,"")),t};t.exports=exporter},18458:t=>{t.exports="\t\n\v\f\r   ᠎              \u2028\u2029\ufeff"},6022:(t,e,r)=>{var n,o,i,a=r(61725),u=r(19897),s=r(92477),c=r(48765),l=r(43280),f=l.process,p=l.setImmediate,d=l.clearImmediate,h=l.MessageChannel,v=l.Dispatch,y=0,g={},m="onreadystatechange",run=function(){var t=+this;if(g.hasOwnProperty(t)){var e=g[t];delete g[t],e()}},listener=function(t){run.call(t.data)};p&&d||(p=function setImmediate(t){for(var e=[],r=1;arguments.length>r;)e.push(arguments[r++]);return g[++y]=function(){u("function"==typeof t?t:Function(t),e)},n(y),y},d=function clearImmediate(t){delete g[t]},"process"==r(41352)(f)?n=function(t){f.nextTick(a(run,t,1))}:v&&v.now?n=function(t){v.now(a(run,t,1))}:h?(i=(o=new h).port2,o.port1.onmessage=listener,n=a(i.postMessage,i,1)):l.addEventListener&&"function"==typeof postMessage&&!l.importScripts?(n=function(t){l.postMessage(t+"","*")},l.addEventListener("message",listener,!1)):n=m in c("script")?function(t){s.appendChild(c("script")).onreadystatechange=function(){s.removeChild(this),run.call(t)}}:function(t){setTimeout(a(run,t,1),0)}),t.exports={set:p,clear:d}},46723:(t,e,r)=>{var n=r(58290),o=Math.max,i=Math.min;t.exports=function(t,e){return(t=n(t))<0?o(t+e,0):i(t,e)}},58290:t=>{var e=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:e)(t)}},1504:(t,e,r)=>{var n=r(13115),o=r(18239);t.exports=function(t){return n(o(t))}},37154:(t,e,r)=>{var n=r(58290),o=Math.min;t.exports=function(t){return t>0?o(n(t),9007199254740991):0}},60061:(t,e,r)=>{var n=r(18239);t.exports=function(t){return Object(n(t))}},12737:(t,e,r)=>{var n=r(39632);t.exports=function(t,e){if(!n(t))return t;var r,o;if(e&&"function"==typeof(r=t.toString)&&!n(o=r.call(t)))return o;if("function"==typeof(r=t.valueOf)&&!n(o=r.call(t)))return o;if(!e&&"function"==typeof(r=t.toString)&&!n(o=r.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},54251:t=>{var e=0,r=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++e+r).toString(36))}},35701:(t,e,r)=>{var n=r(43280).navigator;t.exports=n&&n.userAgent||""},41081:(t,e,r)=>{var n=r(39632);t.exports=function(t,e){if(!n(t)||t._t!==e)throw TypeError("Incompatible receiver, "+e+" required!");return t}},31164:(t,e,r)=>{var n=r(43280),o=r(47208),i=r(36794),a=r(7273),u=r(60510).f;t.exports=function(t){var e=o.Symbol||(o.Symbol=i?{}:n.Symbol||{});"_"==t.charAt(0)||t in e||u(e,t,{value:a.f(t)})}},7273:(t,e,r)=>{e.f=r(24300)},24300:(t,e,r)=>{var n=r(29990)("wks"),o=r(54251),i=r(43280).Symbol,a="function"==typeof i;(t.exports=function(t){return n[t]||(n[t]=a&&i[t]||(a?i:o)("Symbol."+t))}).store=n},26116:(t,e,r)=>{var n=r(8312),o=r(24300)("iterator"),i=r(79105);t.exports=r(47208).getIteratorMethod=function(t){if(null!=t)return t[o]||t["@@iterator"]||i[n(t)]}},37627:(t,e,r)=>{"use strict";var n=r(61725),o=r(98310),i=r(60061),a=r(93086),u=r(11827),s=r(37154),c=r(87352),l=r(26116);o(o.S+o.F*!r(26797)((function(t){Array.from(t)})),"Array",{from:function from(t){var e,r,o,f,p=i(t),d="function"==typeof this?this:Array,h=arguments.length,v=h>1?arguments[1]:void 0,y=void 0!==v,g=0,m=l(p);if(y&&(v=n(v,h>2?arguments[2]:void 0,2)),null==m||d==Array&&u(m))for(r=new d(e=s(p.length));e>g;g++)c(r,g,y?v(p[g],g):p[g]);else for(f=m.call(p),r=new d;!(o=f.next()).done;g++)c(r,g,y?a(f,v,[o.value,g],!0):o.value);return r.length=g,r}})},42580:(t,e,r)=>{var n=r(98310);n(n.S,"Array",{isArray:r(7359)})},84411:(t,e,r)=>{"use strict";var n=r(29697),o=r(9329),i=r(79105),a=r(1504);t.exports=r(6125)(Array,"Array",(function(t,e){this._t=a(t),this._i=0,this._k=e}),(function(){var t=this._t,e=this._k,r=this._i++;return!t||r>=t.length?(this._t=void 0,o(1)):o(0,"keys"==e?r:"values"==e?t[r]:[r,t[r]])}),"values"),i.Arguments=i.Array,n("keys"),n("values"),n("entries")},78760:(t,e,r)=>{"use strict";var n=r(39632),o=r(999),i=r(24300)("hasInstance"),a=Function.prototype;i in a||r(60510).f(a,i,{value:function(t){if("function"!=typeof this||!n(t))return!1;if(!n(this.prototype))return t instanceof this;for(;t=o(t);)if(this.prototype===t)return!0;return!1}})},17710:(t,e,r)=>{"use strict";var n=r(29071),o=r(41081),i="Map";t.exports=r(70770)(i,(function(t){return function Map(){return t(this,arguments.length>0?arguments[0]:void 0)}}),{get:function get(t){var e=n.getEntry(o(this,i),t);return e&&e.v},set:function set(t,e){return n.def(o(this,i),0===t?0:t,e)}},n,!0)},30785:(t,e,r)=>{var n=r(98310);n(n.S,"Object",{create:r(82488)})},40168:(t,e,r)=>{var n=r(98310);n(n.S+n.F*!r(75179),"Object",{defineProperty:r(60510).f})},18576:(t,e,r)=>{var n=r(1504),o=r(83264).f;r(57972)("getOwnPropertyDescriptor",(function(){return function getOwnPropertyDescriptor(t,e){return o(n(t),e)}}))},4840:(t,e,r)=>{var n=r(60061),o=r(999);r(57972)("getPrototypeOf",(function(){return function getPrototypeOf(t){return o(n(t))}}))},5453:(t,e,r)=>{var n=r(60061),o=r(86425);r(57972)("keys",(function(){return function keys(t){return o(n(t))}}))},13890:(t,e,r)=>{var n=r(98310);n(n.S,"Object",{setPrototypeOf:r(25574).set})},70285:()=>{},58006:(t,e,r)=>{var n=r(98310),o=r(38230);n(n.G+n.F*(parseFloat!=o),{parseFloat:o})},24399:(t,e,r)=>{var n=r(98310),o=r(60162);n(n.G+n.F*(parseInt!=o),{parseInt:o})},86082:(t,e,r)=>{"use strict";var n,o,i,a,u=r(36794),s=r(43280),c=r(61725),l=r(8312),f=r(98310),p=r(39632),d=r(26610),h=r(54677),v=r(25985),y=r(73732),g=r(6022).set,m=r(4326)(),x=r(88579),b=r(52745),w=r(35701),k=r(88747),S="Promise",O=s.TypeError,M=s.process,C=M&&M.versions,T=C&&C.v8||"",E=s.Promise,A="process"==l(M),empty=function(){},P=o=x.f,I=!!function(){try{var t=E.resolve(1),e=(t.constructor={})[r(24300)("species")]=function(t){t(empty,empty)};return(A||"function"==typeof PromiseRejectionEvent)&&t.then(empty)instanceof e&&0!==T.indexOf("6.6")&&-1===w.indexOf("Chrome/66")}catch(t){}}(),isThenable=function(t){var e;return!(!p(t)||"function"!=typeof(e=t.then))&&e},notify=function(t,e){if(!t._n){t._n=!0;var r=t._c;m((function(){for(var n=t._v,o=1==t._s,i=0,run=function(e){var r,i,a,u=o?e.ok:e.fail,s=e.resolve,c=e.reject,l=e.domain;try{u?(o||(2==t._h&&onHandleUnhandled(t),t._h=1),!0===u?r=n:(l&&l.enter(),r=u(n),l&&(l.exit(),a=!0)),r===e.promise?c(O("Promise-chain cycle")):(i=isThenable(r))?i.call(r,s,c):s(r)):c(n)}catch(t){l&&!a&&l.exit(),c(t)}};r.length>i;)run(r[i++]);t._c=[],t._n=!1,e&&!t._h&&onUnhandled(t)}))}},onUnhandled=function(t){g.call(s,(function(){var e,r,n,o=t._v,i=isUnhandled(t);if(i&&(e=b((function(){A?M.emit("unhandledRejection",o,t):(r=s.onunhandledrejection)?r({promise:t,reason:o}):(n=s.console)&&n.error&&n.error("Unhandled promise rejection",o)})),t._h=A||isUnhandled(t)?2:1),t._a=void 0,i&&e.e)throw e.v}))},isUnhandled=function(t){return 1!==t._h&&0===(t._a||t._c).length},onHandleUnhandled=function(t){g.call(s,(function(){var e;A?M.emit("rejectionHandled",t):(e=s.onrejectionhandled)&&e({promise:t,reason:t._v})}))},$reject=function(t){var e=this;e._d||(e._d=!0,(e=e._w||e)._v=t,e._s=2,e._a||(e._a=e._c.slice()),notify(e,!0))},$resolve=function(t){var e,r=this;if(!r._d){r._d=!0,r=r._w||r;try{if(r===t)throw O("Promise can't be resolved itself");(e=isThenable(t))?m((function(){var n={_w:r,_d:!1};try{e.call(t,c($resolve,n,1),c($reject,n,1))}catch(t){$reject.call(n,t)}})):(r._v=t,r._s=1,notify(r,!1))}catch(t){$reject.call({_w:r,_d:!1},t)}}};I||(E=function Promise(t){h(this,E,S,"_h"),d(t),n.call(this);try{t(c($resolve,this,1),c($reject,this,1))}catch(t){$reject.call(this,t)}},(n=function Promise(t){this._c=[],this._a=void 0,this._s=0,this._d=!1,this._v=void 0,this._h=0,this._n=!1}).prototype=r(13199)(E.prototype,{then:function then(t,e){var r=P(y(this,E));return r.ok="function"!=typeof t||t,r.fail="function"==typeof e&&e,r.domain=A?M.domain:void 0,this._c.push(r),this._a&&this._a.push(r),this._s&&notify(this,!1),r.promise},catch:function(t){return this.then(void 0,t)}}),i=function(){var t=new n;this.promise=t,this.resolve=c($resolve,t,1),this.reject=c($reject,t,1)},x.f=P=function(t){return t===E||t===a?new i(t):o(t)}),f(f.G+f.W+f.F*!I,{Promise:E}),r(2413)(E,S),r(5698)(S),a=r(47208).Promise,f(f.S+f.F*!I,S,{reject:function reject(t){var e=P(this);return(0,e.reject)(t),e.promise}}),f(f.S+f.F*(u||!I),S,{resolve:function resolve(t){return k(u&&this===a?E:this,t)}}),f(f.S+f.F*!(I&&r(26797)((function(t){E.all(t).catch(empty)}))),S,{all:function all(t){var e=this,r=P(e),n=r.resolve,o=r.reject,i=b((function(){var r=[],i=0,a=1;v(t,!1,(function(t){var u=i++,s=!1;r.push(void 0),a++,e.resolve(t).then((function(t){s||(s=!0,r[u]=t,--a||n(r))}),o)})),--a||n(r)}));return i.e&&o(i.v),r.promise},race:function race(t){var e=this,r=P(e),n=r.reject,o=b((function(){v(t,!1,(function(t){e.resolve(t).then(r.resolve,n)}))}));return o.e&&n(o.v),r.promise}})},11320:(t,e,r)=>{var n=r(98310),o=r(82488),i=r(26610),a=r(30498),u=r(39632),s=r(90472),c=r(45515),l=(r(43280).Reflect||{}).construct,f=s((function(){function F(){}return!(l((function(){}),[],F)instanceof F)})),p=!s((function(){l((function(){}))}));n(n.S+n.F*(f||p),"Reflect",{construct:function construct(t,e){i(t),a(e);var r=arguments.length<3?t:i(arguments[2]);if(p&&!f)return l(t,e,r);if(t==r){switch(e.length){case 0:return new t;case 1:return new t(e[0]);case 2:return new t(e[0],e[1]);case 3:return new t(e[0],e[1],e[2]);case 4:return new t(e[0],e[1],e[2],e[3])}var n=[null];return n.push.apply(n,e),new(c.apply(t,n))}var s=r.prototype,d=o(u(s)?s:Object.prototype),h=Function.apply.call(t,d,e);return u(h)?h:d}})},36600:(t,e,r)=>{var n=r(83264),o=r(999),i=r(20657),a=r(98310),u=r(39632),s=r(30498);a(a.S,"Reflect",{get:function get(t,e){var r,a,c=arguments.length<3?t:arguments[2];return s(t)===c?t[e]:(r=n.f(t,e))?i(r,"value")?r.value:void 0!==r.get?r.get.call(c):void 0:u(a=o(t))?get(a,e,c):void 0}})},99572:(t,e,r)=>{"use strict";var n=r(78502)(!0);r(6125)(String,"String",(function(t){this._t=String(t),this._i=0}),(function(){var t,e=this._t,r=this._i;return r>=e.length?{value:void 0,done:!0}:(t=n(e,r),this._i+=t.length,{value:t,done:!1})}))},54370:(t,e,r)=>{"use strict";var n=r(43280),o=r(20657),i=r(75179),a=r(98310),u=r(19312),s=r(6758).KEY,c=r(90472),l=r(29990),f=r(2413),p=r(54251),d=r(24300),h=r(7273),v=r(31164),y=r(42266),g=r(7359),m=r(30498),x=r(39632),b=r(60061),w=r(1504),k=r(12737),S=r(48439),O=r(82488),M=r(26084),C=r(83264),T=r(97739),E=r(60510),A=r(86425),P=C.f,I=E.f,j=M.f,R=n.Symbol,L=n.JSON,N=L&&L.stringify,D=d("_hidden"),B=d("toPrimitive"),H={}.propertyIsEnumerable,$=l("symbol-registry"),G=l("symbols"),W=l("op-symbols"),q=Object.prototype,V="function"==typeof R&&!!T.f,U=n.QObject,z=!U||!U.prototype||!U.prototype.findChild,J=i&&c((function(){return 7!=O(I({},"a",{get:function(){return I(this,"a",{value:7}).a}})).a}))?function(t,e,r){var n=P(q,e);n&&delete q[e],I(t,e,r),n&&t!==q&&I(q,e,n)}:I,wrap=function(t){var e=G[t]=O(R.prototype);return e._k=t,e},Q=V&&"symbol"==typeof R.iterator?function(t){return"symbol"==typeof t}:function(t){return t instanceof R},K=function defineProperty(t,e,r){return t===q&&K(W,e,r),m(t),e=k(e,!0),m(r),o(G,e)?(r.enumerable?(o(t,D)&&t[D][e]&&(t[D][e]=!1),r=O(r,{enumerable:S(0,!1)})):(o(t,D)||I(t,D,S(1,{})),t[D][e]=!0),J(t,e,r)):I(t,e,r)},Y=function defineProperties(t,e){m(t);for(var r,n=y(e=w(e)),o=0,i=n.length;i>o;)K(t,r=n[o++],e[r]);return t},X=function propertyIsEnumerable(t){var e=H.call(this,t=k(t,!0));return!(this===q&&o(G,t)&&!o(W,t))&&(!(e||!o(this,t)||!o(G,t)||o(this,D)&&this[D][t])||e)},Z=function getOwnPropertyDescriptor(t,e){if(t=w(t),e=k(e,!0),t!==q||!o(G,e)||o(W,e)){var r=P(t,e);return!r||!o(G,e)||o(t,D)&&t[D][e]||(r.enumerable=!0),r}},tt=function getOwnPropertyNames(t){for(var e,r=j(w(t)),n=[],i=0;r.length>i;)o(G,e=r[i++])||e==D||e==s||n.push(e);return n},et=function getOwnPropertySymbols(t){for(var e,r=t===q,n=j(r?W:w(t)),i=[],a=0;n.length>a;)!o(G,e=n[a++])||r&&!o(q,e)||i.push(G[e]);return i};V||(u((R=function Symbol(){if(this instanceof R)throw TypeError("Symbol is not a constructor!");var t=p(arguments.length>0?arguments[0]:void 0),$set=function(e){this===q&&$set.call(W,e),o(this,D)&&o(this[D],t)&&(this[D][t]=!1),J(this,t,S(1,e))};return i&&z&&J(q,t,{configurable:!0,set:$set}),wrap(t)}).prototype,"toString",(function toString(){return this._k})),C.f=Z,E.f=K,r(8772).f=M.f=tt,r(67410).f=X,T.f=et,i&&!r(36794)&&u(q,"propertyIsEnumerable",X,!0),h.f=function(t){return wrap(d(t))}),a(a.G+a.W+a.F*!V,{Symbol:R});for(var rt="hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),nt=0;rt.length>nt;)d(rt[nt++]);for(var ot=A(d.store),it=0;ot.length>it;)v(ot[it++]);a(a.S+a.F*!V,"Symbol",{for:function(t){return o($,t+="")?$[t]:$[t]=R(t)},keyFor:function keyFor(t){if(!Q(t))throw TypeError(t+" is not a symbol!");for(var e in $)if($[e]===t)return e},useSetter:function(){z=!0},useSimple:function(){z=!1}}),a(a.S+a.F*!V,"Object",{create:function create(t,e){return void 0===e?O(t):Y(O(t),e)},defineProperty:K,defineProperties:Y,getOwnPropertyDescriptor:Z,getOwnPropertyNames:tt,getOwnPropertySymbols:et});var at=c((function(){T.f(1)}));a(a.S+a.F*at,"Object",{getOwnPropertySymbols:function getOwnPropertySymbols(t){return T.f(b(t))}}),L&&a(a.S+a.F*(!V||c((function(){var t=R();return"[null]"!=N([t])||"{}"!=N({a:t})||"{}"!=N(Object(t))}))),"JSON",{stringify:function stringify(t){for(var e,r,n=[t],o=1;arguments.length>o;)n.push(arguments[o++]);if(r=e=n[1],(x(e)||void 0!==t)&&!Q(t))return g(e)||(e=function(t,e){if("function"==typeof r&&(e=r.call(this,t,e)),!Q(e))return e}),n[1]=e,N.apply(L,n)}}),R.prototype[B]||r(62292)(R.prototype,B,R.prototype.valueOf),f(R,"Symbol"),f(Math,"Math",!0),f(n.JSON,"JSON",!0)},23337:(t,e,r)=>{"use strict";var n,o=r(43280),i=r(97647)(0),a=r(19312),u=r(6758),s=r(77995),c=r(92600),l=r(39632),f=r(41081),p=r(41081),d=!o.ActiveXObject&&"ActiveXObject"in o,h="WeakMap",v=u.getWeak,y=Object.isExtensible,g=c.ufstore,wrapper=function(t){return function WeakMap(){return t(this,arguments.length>0?arguments[0]:void 0)}},m={get:function get(t){if(l(t)){var e=v(t);return!0===e?g(f(this,h)).get(t):e?e[this._i]:void 0}},set:function set(t,e){return c.def(f(this,h),t,e)}},x=t.exports=r(70770)(h,wrapper,m,c,!0,!0);p&&d&&(s((n=c.getConstructor(wrapper,h)).prototype,m),u.NEED=!0,i(["delete","has","get","set"],(function(t){var e=x.prototype,r=e[t];a(e,t,(function(e,o){if(l(e)&&!y(e)){this._f||(this._f=new n);var i=this._f[t](e,o);return"set"==t?this:i}return r.call(this,e,o)}))})))},28933:(t,e,r)=>{r(14689)("Map")},61340:(t,e,r)=>{r(7883)("Map")},43849:(t,e,r)=>{var n=r(98310);n(n.P+n.R,"Map",{toJSON:r(89518)("Map")})},95260:(t,e,r)=>{var n=r(98310),o=r(9480)(!0);n(n.S,"Object",{entries:function entries(t){return o(t)}})},57188:(t,e,r)=>{var n=r(98310),o=r(9480)(!1);n(n.S,"Object",{values:function values(t){return o(t)}})},81522:(t,e,r)=>{"use strict";var n=r(98310),o=r(47208),i=r(43280),a=r(73732),u=r(88747);n(n.P+n.R,"Promise",{finally:function(t){var e=a(this,o.Promise||i.Promise),r="function"==typeof t;return this.then(r?function(r){return u(e,t()).then((function(){return r}))}:t,r?function(r){return u(e,t()).then((function(){throw r}))}:t)}})},25757:(t,e,r)=>{"use strict";var n=r(98310),o=r(88579),i=r(52745);n(n.S,"Promise",{try:function(t){var e=o.f(this),r=i(t);return(r.e?e.reject:e.resolve)(r.v),e.promise}})},87573:(t,e,r)=>{r(31164)("asyncIterator")},97224:(t,e,r)=>{r(31164)("observable")},92797:(t,e,r)=>{r(14689)("WeakMap")},10143:(t,e,r)=>{r(7883)("WeakMap")},74114:(t,e,r)=>{r(84411);for(var n=r(43280),o=r(62292),i=r(79105),a=r(24300)("toStringTag"),u="CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList".split(","),s=0;s<u.length;s++){var c=u[s],l=n[c],f=l&&l.prototype;f&&!f[a]&&o(f,a,c),i[c]=i.Array}},22761:t=>{t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},42094:(t,e,r)=>{var n=r(62190)("unscopables"),o=Array.prototype;null==o[n]&&r(74216)(o,n,{}),t.exports=function(t){o[n][t]=!0}},88492:(t,e,r)=>{"use strict";var n=r(12070)(!0);t.exports=function(t,e,r){return e+(r?n(t,e).length:1)}},6365:(t,e,r)=>{var n=r(67334);t.exports=function(t){if(!n(t))throw TypeError(t+" is not an object!");return t}},59021:(t,e,r)=>{var n=r(15703),o=r(26078),i=r(78615);t.exports=function(t){return function(e,r,a){var u,s=n(e),c=o(s.length),l=i(a,c);if(t&&r!=r){for(;c>l;)if((u=s[l++])!=u)return!0}else for(;c>l;l++)if((t||l in s)&&s[l]===r)return t||l||0;return!t&&-1}}},78309:(t,e,r)=>{var n=r(11528),o=r(8467),i=r(26033),a=r(26078),u=r(63531);t.exports=function(t,e){var r=1==t,s=2==t,c=3==t,l=4==t,f=6==t,p=5==t||f,d=e||u;return function(e,u,h){for(var v,y,g=i(e),m=o(g),x=n(u,h,3),b=a(m.length),w=0,k=r?d(e,b):s?d(e,0):void 0;b>w;w++)if((p||w in m)&&(y=x(v=m[w],w,g),t))if(r)k[w]=y;else if(y)switch(t){case 3:return!0;case 5:return v;case 6:return w;case 2:k.push(v)}else if(l)return!1;return f?-1:c||l?l:k}}},81071:(t,e,r)=>{var n=r(67334),o=r(99141),i=r(62190)("species");t.exports=function(t){var e;return o(t)&&("function"!=typeof(e=t.constructor)||e!==Array&&!o(e.prototype)||(e=void 0),n(e)&&null===(e=e[i])&&(e=void 0)),void 0===e?Array:e}},63531:(t,e,r)=>{var n=r(81071);t.exports=function(t,e){return new(n(t))(e)}},20106:(t,e,r)=>{var n=r(26688),o=r(62190)("toStringTag"),i="Arguments"==n(function(){return arguments}());t.exports=function(t){var e,r,a;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(r=function(t,e){try{return t[e]}catch(t){}}(e=Object(t),o))?r:i?n(e):"Object"==(a=n(e))&&"function"==typeof e.callee?"Arguments":a}},26688:t=>{var e={}.toString;t.exports=function(t){return e.call(t).slice(8,-1)}},60066:t=>{var e=t.exports={version:"2.6.12"};"number"==typeof __e&&(__e=e)},11528:(t,e,r)=>{var n=r(22761);t.exports=function(t,e,r){if(n(t),void 0===e)return t;switch(r){case 1:return function(r){return t.call(e,r)};case 2:return function(r,n){return t.call(e,r,n)};case 3:return function(r,n,o){return t.call(e,r,n,o)}}return function(){return t.apply(e,arguments)}}},61622:t=>{t.exports=function(t){if(null==t)throw TypeError("Can't call method on  "+t);return t}},36628:(t,e,r)=>{t.exports=!r(48625)((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},5050:(t,e,r)=>{var n=r(67334),o=r(38113).document,i=n(o)&&n(o.createElement);t.exports=function(t){return i?o.createElement(t):{}}},33603:t=>{t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},65772:(t,e,r)=>{var n=r(38113),o=r(60066),i=r(74216),a=r(17738),u=r(11528),$export=function(t,e,r){var s,c,l,f,p=t&$export.F,d=t&$export.G,h=t&$export.S,v=t&$export.P,y=t&$export.B,g=d?n:h?n[e]||(n[e]={}):(n[e]||{}).prototype,m=d?o:o[e]||(o[e]={}),x=m.prototype||(m.prototype={});for(s in d&&(r=e),r)l=((c=!p&&g&&void 0!==g[s])?g:r)[s],f=y&&c?u(l,n):v&&"function"==typeof l?u(Function.call,l):l,g&&a(g,s,l,t&$export.U),m[s]!=l&&i(m,s,f),v&&x[s]!=l&&(x[s]=l)};n.core=o,$export.F=1,$export.G=2,$export.S=4,$export.P=8,$export.B=16,$export.W=32,$export.U=64,$export.R=128,t.exports=$export},86570:(t,e,r)=>{var n=r(62190)("match");t.exports=function(t){var e=/./;try{"/./"[t](e)}catch(r){try{return e[n]=!1,!"/./"[t](e)}catch(t){}}return!0}},48625:t=>{t.exports=function(t){try{return!!t()}catch(t){return!0}}},48897:(t,e,r)=>{"use strict";r(25846);var n=r(17738),o=r(74216),i=r(48625),a=r(61622),u=r(62190),s=r(43288),c=u("species"),l=!i((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$<a>")})),f=function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var r="ab".split(t);return 2===r.length&&"a"===r[0]&&"b"===r[1]}();t.exports=function(t,e,r){var p=u(t),d=!i((function(){var e={};return e[p]=function(){return 7},7!=""[t](e)})),h=d?!i((function(){var e=!1,r=/a/;return r.exec=function(){return e=!0,null},"split"===t&&(r.constructor={},r.constructor[c]=function(){return r}),r[p](""),!e})):void 0;if(!d||!h||"replace"===t&&!l||"split"===t&&!f){var v=/./[p],y=r(a,p,""[t],(function maybeCallNative(t,e,r,n,o){return e.exec===s?d&&!o?{done:!0,value:v.call(e,r,n)}:{done:!0,value:t.call(r,e,n)}:{done:!1}})),g=y[0],m=y[1];n(String.prototype,t,g),o(RegExp.prototype,p,2==e?function(t,e){return m.call(t,this,e)}:function(t){return m.call(t,this)})}}},74859:(t,e,r)=>{"use strict";var n=r(6365);t.exports=function(){var t=n(this),e="";return t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.unicode&&(e+="u"),t.sticky&&(e+="y"),e}},20646:(t,e,r)=>{t.exports=r(8655)("native-function-to-string",Function.toString)},38113:t=>{var e=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=e)},54040:t=>{var e={}.hasOwnProperty;t.exports=function(t,r){return e.call(t,r)}},74216:(t,e,r)=>{var n=r(98558),o=r(36061);t.exports=r(36628)?function(t,e,r){return n.f(t,e,o(1,r))}:function(t,e,r){return t[e]=r,t}},8954:(t,e,r)=>{var n=r(38113).document;t.exports=n&&n.documentElement},5100:(t,e,r)=>{t.exports=!r(36628)&&!r(48625)((function(){return 7!=Object.defineProperty(r(5050)("div"),"a",{get:function(){return 7}}).a}))},8467:(t,e,r)=>{var n=r(26688);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==n(t)?t.split(""):Object(t)}},99141:(t,e,r)=>{var n=r(26688);t.exports=Array.isArray||function isArray(t){return"Array"==n(t)}},67334:t=>{t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},94587:(t,e,r)=>{var n=r(67334),o=r(26688),i=r(62190)("match");t.exports=function(t){var e;return n(t)&&(void 0!==(e=t[i])?!!e:"RegExp"==o(t))}},46445:(t,e,r)=>{"use strict";var n=r(82897),o=r(36061),i=r(55727),a={};r(74216)(a,r(62190)("iterator"),(function(){return this})),t.exports=function(t,e,r){t.prototype=n(a,{next:o(1,r)}),i(t,e+" Iterator")}},61195:(t,e,r)=>{"use strict";var n=r(81422),o=r(65772),i=r(17738),a=r(74216),u=r(23988),s=r(46445),c=r(55727),l=r(19002),f=r(62190)("iterator"),p=!([].keys&&"next"in[].keys()),d="keys",h="values",returnThis=function(){return this};t.exports=function(t,e,r,v,y,g,m){s(r,e,v);var x,b,w,getMethod=function(t){if(!p&&t in M)return M[t];switch(t){case d:return function keys(){return new r(this,t)};case h:return function values(){return new r(this,t)}}return function entries(){return new r(this,t)}},k=e+" Iterator",S=y==h,O=!1,M=t.prototype,C=M[f]||M["@@iterator"]||y&&M[y],T=C||getMethod(y),E=y?S?getMethod("entries"):T:void 0,A="Array"==e&&M.entries||C;if(A&&(w=l(A.call(new t)))!==Object.prototype&&w.next&&(c(w,k,!0),n||"function"==typeof w[f]||a(w,f,returnThis)),S&&C&&C.name!==h&&(O=!0,T=function values(){return C.call(this)}),n&&!m||!p&&!O&&M[f]||a(M,f,T),u[e]=T,u[k]=returnThis,y)if(x={values:S?T:getMethod(h),keys:g?T:getMethod(d),entries:E},m)for(b in x)b in M||i(M,b,x[b]);else o(o.P+o.F*(p||O),e,x);return x}},35038:t=>{t.exports=function(t,e){return{value:e,done:!!t}}},23988:t=>{t.exports={}},81422:t=>{t.exports=!1},82897:(t,e,r)=>{var n=r(6365),o=r(7331),i=r(33603),a=r(28034)("IE_PROTO"),Empty=function(){},createDict=function(){var t,e=r(5050)("iframe"),n=i.length;for(e.style.display="none",r(8954).appendChild(e),e.src="javascript:",(t=e.contentWindow.document).open(),t.write("<script>document.F=Object<\/script>"),t.close(),createDict=t.F;n--;)delete createDict.prototype[i[n]];return createDict()};t.exports=Object.create||function create(t,e){var r;return null!==t?(Empty.prototype=n(t),r=new Empty,Empty.prototype=null,r[a]=t):r=createDict(),void 0===e?r:o(r,e)}},98558:(t,e,r)=>{var n=r(6365),o=r(5100),i=r(31382),a=Object.defineProperty;e.f=r(36628)?Object.defineProperty:function defineProperty(t,e,r){if(n(t),e=i(e,!0),n(r),o)try{return a(t,e,r)}catch(t){}if("get"in r||"set"in r)throw TypeError("Accessors not supported!");return"value"in r&&(t[e]=r.value),t}},7331:(t,e,r)=>{var n=r(98558),o=r(6365),i=r(42912);t.exports=r(36628)?Object.defineProperties:function defineProperties(t,e){o(t);for(var r,a=i(e),u=a.length,s=0;u>s;)n.f(t,r=a[s++],e[r]);return t}},19002:(t,e,r)=>{var n=r(54040),o=r(26033),i=r(28034)("IE_PROTO"),a=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=o(t),n(t,i)?t[i]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?a:null}},75547:(t,e,r)=>{var n=r(54040),o=r(15703),i=r(59021)(!1),a=r(28034)("IE_PROTO");t.exports=function(t,e){var r,u=o(t),s=0,c=[];for(r in u)r!=a&&n(u,r)&&c.push(r);for(;e.length>s;)n(u,r=e[s++])&&(~i(c,r)||c.push(r));return c}},42912:(t,e,r)=>{var n=r(75547),o=r(33603);t.exports=Object.keys||function keys(t){return n(t,o)}},36061:t=>{t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},17738:(t,e,r)=>{var n=r(38113),o=r(74216),i=r(54040),a=r(25078)("src"),u=r(20646),s="toString",c=(""+u).split(s);r(60066).inspectSource=function(t){return u.call(t)},(t.exports=function(t,e,r,u){var s="function"==typeof r;s&&(i(r,"name")||o(r,"name",e)),t[e]!==r&&(s&&(i(r,a)||o(r,a,t[e]?""+t[e]:c.join(String(e)))),t===n?t[e]=r:u?t[e]?t[e]=r:o(t,e,r):(delete t[e],o(t,e,r)))})(Function.prototype,s,(function toString(){return"function"==typeof this&&this[a]||u.call(this)}))},62404:(t,e,r)=>{"use strict";var n=r(20106),o=RegExp.prototype.exec;t.exports=function(t,e){var r=t.exec;if("function"==typeof r){var i=r.call(t,e);if("object"!=typeof i)throw new TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==n(t))throw new TypeError("RegExp#exec called on incompatible receiver");return o.call(t,e)}},43288:(t,e,r)=>{"use strict";var n,o,i=r(74859),a=RegExp.prototype.exec,u=String.prototype.replace,s=a,c=(n=/a/,o=/b*/g,a.call(n,"a"),a.call(o,"a"),0!==n.lastIndex||0!==o.lastIndex),l=void 0!==/()??/.exec("")[1];(c||l)&&(s=function exec(t){var e,r,n,o,s=this;return l&&(r=new RegExp("^"+s.source+"$(?!\\s)",i.call(s))),c&&(e=s.lastIndex),n=a.call(s,t),c&&n&&(s.lastIndex=s.global?n.index+n[0].length:e),l&&n&&n.length>1&&u.call(n[0],r,(function(){for(o=1;o<arguments.length-2;o++)void 0===arguments[o]&&(n[o]=void 0)})),n}),t.exports=s},55727:(t,e,r)=>{var n=r(98558).f,o=r(54040),i=r(62190)("toStringTag");t.exports=function(t,e,r){t&&!o(t=r?t:t.prototype,i)&&n(t,i,{configurable:!0,value:e})}},28034:(t,e,r)=>{var n=r(8655)("keys"),o=r(25078);t.exports=function(t){return n[t]||(n[t]=o(t))}},8655:(t,e,r)=>{var n=r(60066),o=r(38113),i="__core-js_shared__",a=o[i]||(o[i]={});(t.exports=function(t,e){return a[t]||(a[t]=void 0!==e?e:{})})("versions",[]).push({version:n.version,mode:r(81422)?"pure":"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})},11987:(t,e,r)=>{var n=r(6365),o=r(22761),i=r(62190)("species");t.exports=function(t,e){var r,a=n(t).constructor;return void 0===a||null==(r=n(a)[i])?e:o(r)}},10225:(t,e,r)=>{"use strict";var n=r(48625);t.exports=function(t,e){return!!t&&n((function(){e?t.call(null,(function(){}),1):t.call(null)}))}},12070:(t,e,r)=>{var n=r(3338),o=r(61622);t.exports=function(t){return function(e,r){var i,a,u=String(o(e)),s=n(r),c=u.length;return s<0||s>=c?t?"":void 0:(i=u.charCodeAt(s))<55296||i>56319||s+1===c||(a=u.charCodeAt(s+1))<56320||a>57343?t?u.charAt(s):i:t?u.slice(s,s+2):a-56320+(i-55296<<10)+65536}}},465:(t,e,r)=>{var n=r(94587),o=r(61622);t.exports=function(t,e,r){if(n(e))throw TypeError("String#"+r+" doesn't accept regex!");return String(o(t))}},78615:(t,e,r)=>{var n=r(3338),o=Math.max,i=Math.min;t.exports=function(t,e){return(t=n(t))<0?o(t+e,0):i(t,e)}},3338:t=>{var e=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:e)(t)}},15703:(t,e,r)=>{var n=r(8467),o=r(61622);t.exports=function(t){return n(o(t))}},26078:(t,e,r)=>{var n=r(3338),o=Math.min;t.exports=function(t){return t>0?o(n(t),9007199254740991):0}},26033:(t,e,r)=>{var n=r(61622);t.exports=function(t){return Object(n(t))}},31382:(t,e,r)=>{var n=r(67334);t.exports=function(t,e){if(!n(t))return t;var r,o;if(e&&"function"==typeof(r=t.toString)&&!n(o=r.call(t)))return o;if("function"==typeof(r=t.valueOf)&&!n(o=r.call(t)))return o;if(!e&&"function"==typeof(r=t.toString)&&!n(o=r.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},25078:t=>{var e=0,r=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++e+r).toString(36))}},62190:(t,e,r)=>{var n=r(8655)("wks"),o=r(25078),i=r(38113).Symbol,a="function"==typeof i;(t.exports=function(t){return n[t]||(n[t]=a&&i[t]||(a?i:o)("Symbol."+t))}).store=n},64434:(t,e,r)=>{"use strict";var n=r(65772),o=r(78309)(2);n(n.P+n.F*!r(10225)([].filter,!0),"Array",{filter:function filter(t){return o(this,t,arguments[1])}})},12897:(t,e,r)=>{"use strict";var n=r(42094),o=r(35038),i=r(23988),a=r(15703);t.exports=r(61195)(Array,"Array",(function(t,e){this._t=a(t),this._i=0,this._k=e}),(function(){var t=this._t,e=this._k,r=this._i++;return!t||r>=t.length?(this._t=void 0,o(1)):o(0,"keys"==e?r:"values"==e?t[r]:[r,t[r]])}),"values"),i.Arguments=i.Array,n("keys"),n("values"),n("entries")},67209:(t,e,r)=>{"use strict";var n=r(65772),o=r(8954),i=r(26688),a=r(78615),u=r(26078),s=[].slice;n(n.P+n.F*r(48625)((function(){o&&s.call(o)})),"Array",{slice:function slice(t,e){var r=u(this.length),n=i(this);if(e=void 0===e?r:e,"Array"==n)return s.call(this,t,e);for(var o=a(t,r),c=a(e,r),l=u(c-o),f=new Array(l),p=0;p<l;p++)f[p]="String"==n?this.charAt(o+p):this[o+p];return f}})},99745:(t,e,r)=>{var n=r(98558).f,o=Function.prototype,i=/^\s*function ([^ (]*)/,a="name";a in o||r(36628)&&n(o,a,{configurable:!0,get:function(){try{return(""+this).match(i)[1]}catch(t){return""}}})},76139:(t,e,r)=>{"use strict";var n=r(20106),o={};o[r(62190)("toStringTag")]="z",o+""!="[object z]"&&r(17738)(Object.prototype,"toString",(function toString(){return"[object "+n(this)+"]"}),!0)},25846:(t,e,r)=>{"use strict";var n=r(43288);r(65772)({target:"RegExp",proto:!0,forced:n!==/./.exec},{exec:n})},84208:(t,e,r)=>{"use strict";var n=r(6365),o=r(26033),i=r(26078),a=r(3338),u=r(88492),s=r(62404),c=Math.max,l=Math.min,f=Math.floor,p=/\$([$&`']|\d\d?|<[^>]*>)/g,d=/\$([$&`']|\d\d?)/g;r(48897)("replace",2,(function(t,e,r,h){return[function replace(n,o){var i=t(this),a=null==n?void 0:n[e];return void 0!==a?a.call(n,i,o):r.call(String(i),n,o)},function(t,e){var o=h(r,t,this,e);if(o.done)return o.value;var f=n(t),p=String(this),d="function"==typeof e;d||(e=String(e));var v=f.global;if(v){var y=f.unicode;f.lastIndex=0}for(var g=[];;){var m=s(f,p);if(null===m)break;if(g.push(m),!v)break;""===String(m[0])&&(f.lastIndex=u(p,i(f.lastIndex),y))}for(var x,b="",w=0,k=0;k<g.length;k++){m=g[k];for(var S=String(m[0]),O=c(l(a(m.index),p.length),0),M=[],C=1;C<m.length;C++)M.push(void 0===(x=m[C])?x:String(x));var T=m.groups;if(d){var E=[S].concat(M,O,p);void 0!==T&&E.push(T);var A=String(e.apply(void 0,E))}else A=getSubstitution(S,p,O,M,T,e);O>=w&&(b+=p.slice(w,O)+A,w=O+S.length)}return b+p.slice(w)}];function getSubstitution(t,e,n,i,a,u){var s=n+t.length,c=i.length,l=d;return void 0!==a&&(a=o(a),l=p),r.call(u,l,(function(r,o){var u;switch(o.charAt(0)){case"$":return"$";case"&":return t;case"`":return e.slice(0,n);case"'":return e.slice(s);case"<":u=a[o.slice(1,-1)];break;default:var l=+o;if(0===l)return r;if(l>c){var p=f(l/10);return 0===p?r:p<=c?void 0===i[p-1]?o.charAt(1):i[p-1]+o.charAt(1):r}u=i[l-1]}return void 0===u?"":u}))}}))},99236:(t,e,r)=>{"use strict";var n=r(94587),o=r(6365),i=r(11987),a=r(88492),u=r(26078),s=r(62404),c=r(43288),l=r(48625),f=Math.min,p=[].push,d=4294967295,h=!l((function(){RegExp(d,"y")}));r(48897)("split",2,(function(t,e,r,l){var v;return v="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,e){var o=String(this);if(void 0===t&&0===e)return[];if(!n(t))return r.call(o,t,e);for(var i,a,u,s=[],l=(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":""),f=0,h=void 0===e?d:e>>>0,v=new RegExp(t.source,l+"g");(i=c.call(v,o))&&!((a=v.lastIndex)>f&&(s.push(o.slice(f,i.index)),i.length>1&&i.index<o.length&&p.apply(s,i.slice(1)),u=i[0].length,f=a,s.length>=h));)v.lastIndex===i.index&&v.lastIndex++;return f===o.length?!u&&v.test("")||s.push(""):s.push(o.slice(f)),s.length>h?s.slice(0,h):s}:"0".split(void 0,0).length?function(t,e){return void 0===t&&0===e?[]:r.call(this,t,e)}:r,[function split(r,n){var o=t(this),i=null==r?void 0:r[e];return void 0!==i?i.call(r,o,n):v.call(String(o),r,n)},function(t,e){var n=l(v,t,this,e,v!==r);if(n.done)return n.value;var c=o(t),p=String(this),y=i(c,RegExp),g=c.unicode,m=(c.ignoreCase?"i":"")+(c.multiline?"m":"")+(c.unicode?"u":"")+(h?"y":"g"),x=new y(h?c:"^(?:"+c.source+")",m),b=void 0===e?d:e>>>0;if(0===b)return[];if(0===p.length)return null===s(x,p)?[p]:[];for(var w=0,k=0,S=[];k<p.length;){x.lastIndex=h?k:0;var O,M=s(x,h?p:p.slice(k));if(null===M||(O=f(u(x.lastIndex+(h?0:k)),p.length))===w)k=a(p,k,g);else{if(S.push(p.slice(w,k)),S.length===b)return S;for(var C=1;C<=M.length-1;C++)if(S.push(M[C]),S.length===b)return S;k=w=O}}return S.push(p.slice(w)),S}]}))},3777:(t,e,r)=>{"use strict";var n=r(65772),o=r(465),i="includes";n(n.P+n.F*r(86570)(i),"String",{includes:function includes(t){return!!~o(this,t,i).indexOf(t,arguments.length>1?arguments[1]:void 0)}})},37472:(t,e,r)=>{"use strict";var n=r(12070)(!0);r(61195)(String,"String",(function(t){this._t=String(t),this._i=0}),(function(){var t,e=this._t,r=this._i;return r>=e.length?{value:void 0,done:!0}:(t=n(e,r),this._i+=t.length,{value:t,done:!1})}))},65942:(t,e,r)=>{"use strict";var n=r(65772),o=r(26078),i=r(465),a="startsWith",u="".startsWith;n(n.P+n.F*r(86570)(a),"String",{startsWith:function startsWith(t){var e=i(this,t,a),r=o(Math.min(arguments.length>1?arguments[1]:void 0,e.length)),n=String(t);return u?u.call(e,n,r):e.slice(r,r+n.length)===n}})},38081:(t,e,r)=>{"use strict";var n=r(65772),o=r(59021)(!0);n(n.P,"Array",{includes:function includes(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}}),r(42094)("includes")},93085:(t,e,r)=>{for(var n=r(12897),o=r(42912),i=r(17738),a=r(38113),u=r(74216),s=r(23988),c=r(62190),l=c("iterator"),f=c("toStringTag"),p=s.Array,d={CSSRuleList:!0,CSSStyleDeclaration:!1,CSSValueList:!1,ClientRectList:!1,DOMRectList:!1,DOMStringList:!1,DOMTokenList:!0,DataTransferItemList:!1,FileList:!1,HTMLAllCollection:!1,HTMLCollection:!1,HTMLFormElement:!1,HTMLSelectElement:!1,MediaList:!0,MimeTypeArray:!1,NamedNodeMap:!1,NodeList:!0,PaintRequestList:!1,Plugin:!1,PluginArray:!1,SVGLengthList:!1,SVGNumberList:!1,SVGPathSegList:!1,SVGPointList:!1,SVGStringList:!1,SVGTransformList:!1,SourceBufferList:!1,StyleSheetList:!0,TextTrackCueList:!1,TextTrackList:!1,TouchList:!1},h=o(d),v=0;v<h.length;v++){var y,g=h[v],m=d[g],x=a[g],b=x&&x.prototype;if(b&&(b[l]||u(b,l,p),b[f]||u(b,f,g),s[g]=p,m))for(y in n)b[y]||i(b,y,n[y],!0)}},86248:t=>{var e=function(t){"use strict";var e,r=Object.prototype,n=r.hasOwnProperty,o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",u=o.toStringTag||"@@toStringTag";function define(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{define({},"")}catch(t){define=function(t,e,r){return t[e]=r}}function wrap(t,e,r,n){var o=e&&e.prototype instanceof Generator?e:Generator,i=Object.create(o.prototype),a=new Context(n||[]);return i._invoke=function makeInvokeMethod(t,e,r){var n=s;return function invoke(o,i){if(n===l)throw new Error("Generator is already running");if(n===f){if("throw"===o)throw i;return doneResult()}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var u=maybeInvokeDelegate(a,r);if(u){if(u===p)continue;return u}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if(n===s)throw n=f,r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n=l;var d=tryCatch(t,e,r);if("normal"===d.type){if(n=r.done?f:c,d.arg===p)continue;return{value:d.arg,done:r.done}}"throw"===d.type&&(n=f,r.method="throw",r.arg=d.arg)}}}(t,r,a),i}function tryCatch(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}t.wrap=wrap;var s="suspendedStart",c="suspendedYield",l="executing",f="completed",p={};function Generator(){}function GeneratorFunction(){}function GeneratorFunctionPrototype(){}var d={};d[i]=function(){return this};var h=Object.getPrototypeOf,v=h&&h(h(values([])));v&&v!==r&&n.call(v,i)&&(d=v);var y=GeneratorFunctionPrototype.prototype=Generator.prototype=Object.create(d);function defineIteratorMethods(t){["next","throw","return"].forEach((function(e){define(t,e,(function(t){return this._invoke(e,t)}))}))}function AsyncIterator(t,e){function invoke(r,o,i,a){var u=tryCatch(t[r],t,o);if("throw"!==u.type){var s=u.arg,c=s.value;return c&&"object"==typeof c&&n.call(c,"__await")?e.resolve(c.__await).then((function(t){invoke("next",t,i,a)}),(function(t){invoke("throw",t,i,a)})):e.resolve(c).then((function(t){s.value=t,i(s)}),(function(t){return invoke("throw",t,i,a)}))}a(u.arg)}var r;this._invoke=function enqueue(t,n){function callInvokeWithMethodAndArg(){return new e((function(e,r){invoke(t,n,e,r)}))}return r=r?r.then(callInvokeWithMethodAndArg,callInvokeWithMethodAndArg):callInvokeWithMethodAndArg()}}function maybeInvokeDelegate(t,r){var n=t.iterator[r.method];if(n===e){if(r.delegate=null,"throw"===r.method){if(t.iterator.return&&(r.method="return",r.arg=e,maybeInvokeDelegate(t,r),"throw"===r.method))return p;r.method="throw",r.arg=new TypeError("The iterator does not provide a 'throw' method")}return p}var o=tryCatch(n,t.iterator,r.arg);if("throw"===o.type)return r.method="throw",r.arg=o.arg,r.delegate=null,p;var i=o.arg;return i?i.done?(r[t.resultName]=i.value,r.next=t.nextLoc,"return"!==r.method&&(r.method="next",r.arg=e),r.delegate=null,p):i:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,p)}function pushTryEntry(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function resetTryEntry(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function Context(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(pushTryEntry,this),this.reset(!0)}function values(t){if(t){var r=t[i];if(r)return r.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var o=-1,a=function next(){for(;++o<t.length;)if(n.call(t,o))return next.value=t[o],next.done=!1,next;return next.value=e,next.done=!0,next};return a.next=a}}return{next:doneResult}}function doneResult(){return{value:e,done:!0}}return GeneratorFunction.prototype=y.constructor=GeneratorFunctionPrototype,GeneratorFunctionPrototype.constructor=GeneratorFunction,GeneratorFunction.displayName=define(GeneratorFunctionPrototype,u,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===GeneratorFunction||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,GeneratorFunctionPrototype):(t.__proto__=GeneratorFunctionPrototype,define(t,u,"GeneratorFunction")),t.prototype=Object.create(y),t},t.awrap=function(t){return{__await:t}},defineIteratorMethods(AsyncIterator.prototype),AsyncIterator.prototype[a]=function(){return this},t.AsyncIterator=AsyncIterator,t.async=function(e,r,n,o,i){void 0===i&&(i=Promise);var a=new AsyncIterator(wrap(e,r,n,o),i);return t.isGeneratorFunction(r)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},defineIteratorMethods(y),define(y,u,"Generator"),y[i]=function(){return this},y.toString=function(){return"[object Generator]"},t.keys=function(t){var e=[];for(var r in t)e.push(r);return e.reverse(),function next(){for(;e.length;){var r=e.pop();if(r in t)return next.value=r,next.done=!1,next}return next.done=!0,next}},t.values=values,Context.prototype={constructor:Context,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(resetTryEntry),!t)for(var r in this)"t"===r.charAt(0)&&n.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=e)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var r=this;function handle(n,o){return a.type="throw",a.arg=t,r.next=n,o&&(r.method="next",r.arg=e),!!o}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return handle("end");if(i.tryLoc<=this.prev){var u=n.call(i,"catchLoc"),s=n.call(i,"finallyLoc");if(u&&s){if(this.prev<i.catchLoc)return handle(i.catchLoc,!0);if(this.prev<i.finallyLoc)return handle(i.finallyLoc)}else if(u){if(this.prev<i.catchLoc)return handle(i.catchLoc,!0)}else{if(!s)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return handle(i.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,p):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),p},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),resetTryEntry(r),p}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;resetTryEntry(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,r,n){return this.delegate={iterator:values(t),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=e),p}},t}(t.exports);try{regeneratorRuntime=e}catch(t){Function("r","regeneratorRuntime = r")(e)}}},e={};function __webpack_require__(r){var n=e[r];if(void 0!==n)return n.exports;var o=e[r]={exports:{}};return t[r](o,o.exports,__webpack_require__),o.exports}(()=>{"use strict";var t=__webpack_require__(67971),e=t(__webpack_require__(15955)),r=t(__webpack_require__(56525)),n=t(__webpack_require__(15591)),o=t(__webpack_require__(18427)),i=t(__webpack_require__(7918));e.default.common={get Component(){return setTimeout((function(){elementorCommon.helpers.softDeprecated("elementorModules.common.Component","2.9.0","$e.modules.ComponentBase")}),2e3),n.default},get ComponentModal(){return setTimeout((function(){elementorCommon.helpers.softDeprecated("elementorModules.common.ComponentModal","2.9.0","$e.modules.ComponentModalBase")}),2e3),o.default},get HookBreak(){return setTimeout((function(){elementorCommon.helpers.softDeprecated("elementorModules.common.HookBreak","2.9.0","$e.modules.HookBreak")}),2e3),i.default},views:{modal:{Layout:r.default}}}})()})();assets/js/preloaded-modules.js000064400000173573151327220410012442 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(self["webpackChunkelementor"] = self["webpackChunkelementor"] || []).push([["preloaded-modules"],{

/***/ "../assets/dev/js/frontend/handlers/accordion.js":
/*!*******************************************************!*\
  !*** ../assets/dev/js/frontend/handlers/accordion.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");

Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

var _baseTabs = _interopRequireDefault(__webpack_require__(/*! ./base-tabs */ "../assets/dev/js/frontend/handlers/base-tabs.js"));

class Accordion extends _baseTabs.default {
  getDefaultSettings() {
    const defaultSettings = super.getDefaultSettings();
    return { ...defaultSettings,
      showTabFn: 'slideDown',
      hideTabFn: 'slideUp'
    };
  }

}

exports.default = Accordion;

/***/ }),

/***/ "../assets/dev/js/frontend/handlers/alert.js":
/*!***************************************************!*\
  !*** ../assets/dev/js/frontend/handlers/alert.js ***!
  \***************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

class Alert extends elementorModules.frontend.handlers.Base {
  getDefaultSettings() {
    return {
      selectors: {
        dismissButton: '.elementor-alert-dismiss'
      }
    };
  }

  getDefaultElements() {
    const selectors = this.getSettings('selectors');
    return {
      $dismissButton: this.$element.find(selectors.dismissButton)
    };
  }

  bindEvents() {
    this.elements.$dismissButton.on('click', this.onDismissButtonClick.bind(this));
  }

  onDismissButtonClick() {
    this.$element.fadeOut();
  }

}

exports.default = Alert;

/***/ }),

/***/ "../assets/dev/js/frontend/handlers/base-tabs.js":
/*!*******************************************************!*\
  !*** ../assets/dev/js/frontend/handlers/base-tabs.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

class baseTabs extends elementorModules.frontend.handlers.Base {
  getDefaultSettings() {
    return {
      selectors: {
        tablist: '[role="tablist"]',
        tabTitle: '.elementor-tab-title',
        tabContent: '.elementor-tab-content'
      },
      classes: {
        active: 'elementor-active'
      },
      showTabFn: 'show',
      hideTabFn: 'hide',
      toggleSelf: true,
      hidePrevious: true,
      autoExpand: true,
      keyDirection: {
        ArrowLeft: elementorFrontendConfig.is_rtl ? 1 : -1,
        ArrowUp: -1,
        ArrowRight: elementorFrontendConfig.is_rtl ? -1 : 1,
        ArrowDown: 1
      }
    };
  }

  getDefaultElements() {
    const selectors = this.getSettings('selectors');
    return {
      $tabTitles: this.findElement(selectors.tabTitle),
      $tabContents: this.findElement(selectors.tabContent)
    };
  }

  activateDefaultTab() {
    const settings = this.getSettings();

    if (!settings.autoExpand || 'editor' === settings.autoExpand && !this.isEdit) {
      return;
    }

    const defaultActiveTab = this.getEditSettings('activeItemIndex') || 1,
          originalToggleMethods = {
      showTabFn: settings.showTabFn,
      hideTabFn: settings.hideTabFn
    }; // Toggle tabs without animation to avoid jumping

    this.setSettings({
      showTabFn: 'show',
      hideTabFn: 'hide'
    });
    this.changeActiveTab(defaultActiveTab); // Return back original toggle effects

    this.setSettings(originalToggleMethods);
  }

  handleKeyboardNavigation(event) {
    const tab = event.currentTarget,
          $tabList = jQuery(tab.closest(this.getSettings('selectors').tablist)),
          $tabs = $tabList.find(this.getSettings('selectors').tabTitle),
          isVertical = 'vertical' === $tabList.attr('aria-orientation');

    switch (event.key) {
      case 'ArrowLeft':
      case 'ArrowRight':
        if (isVertical) {
          return;
        }

        break;

      case 'ArrowUp':
      case 'ArrowDown':
        if (!isVertical) {
          return;
        }

        event.preventDefault();
        break;

      case 'Home':
        event.preventDefault();
        $tabs.first().focus();
        return;

      case 'End':
        event.preventDefault();
        $tabs.last().focus();
        return;

      default:
        return;
    }

    const tabIndex = tab.getAttribute('data-tab') - 1,
          direction = this.getSettings('keyDirection')[event.key],
          nextTab = $tabs[tabIndex + direction];

    if (nextTab) {
      nextTab.focus();
    } else if (-1 === tabIndex + direction) {
      $tabs.last().focus();
    } else {
      $tabs.first().focus();
    }
  }

  deactivateActiveTab(tabIndex) {
    const settings = this.getSettings(),
          activeClass = settings.classes.active,
          activeFilter = tabIndex ? '[data-tab="' + tabIndex + '"]' : '.' + activeClass,
          $activeTitle = this.elements.$tabTitles.filter(activeFilter),
          $activeContent = this.elements.$tabContents.filter(activeFilter);
    $activeTitle.add($activeContent).removeClass(activeClass);
    $activeTitle.attr({
      tabindex: '-1',
      'aria-selected': 'false',
      'aria-expanded': 'false'
    });
    $activeContent[settings.hideTabFn]();
    $activeContent.attr('hidden', 'hidden');
  }

  activateTab(tabIndex) {
    const settings = this.getSettings(),
          activeClass = settings.classes.active,
          $requestedTitle = this.elements.$tabTitles.filter('[data-tab="' + tabIndex + '"]'),
          $requestedContent = this.elements.$tabContents.filter('[data-tab="' + tabIndex + '"]'),
          animationDuration = 'show' === settings.showTabFn ? 0 : 400;
    $requestedTitle.add($requestedContent).addClass(activeClass);
    $requestedTitle.attr({
      tabindex: '0',
      'aria-selected': 'true',
      'aria-expanded': 'true'
    });
    $requestedContent[settings.showTabFn](animationDuration, () => elementorFrontend.elements.$window.trigger('resize'));
    $requestedContent.removeAttr('hidden');
  }

  isActiveTab(tabIndex) {
    return this.elements.$tabTitles.filter('[data-tab="' + tabIndex + '"]').hasClass(this.getSettings('classes.active'));
  }

  bindEvents() {
    this.elements.$tabTitles.on({
      keydown: event => {
        // Support for old markup that includes an `<a>` tag in the tab
        if (jQuery(event.target).is('a') && `Enter` === event.key) {
          event.preventDefault();
        } // We listen to keydowon event for these keys in order to prevent undesired page scrolling


        if (['End', 'Home', 'ArrowUp', 'ArrowDown'].includes(event.key)) {
          this.handleKeyboardNavigation(event);
        }
      },
      keyup: event => {
        switch (event.key) {
          case 'ArrowLeft':
          case 'ArrowRight':
            this.handleKeyboardNavigation(event);
            break;

          case 'Enter':
          case 'Space':
            event.preventDefault();
            this.changeActiveTab(event.currentTarget.getAttribute('data-tab'));
            break;
        }
      },
      click: event => {
        event.preventDefault();
        this.changeActiveTab(event.currentTarget.getAttribute('data-tab'));
      }
    });
  }

  onInit(...args) {
    super.onInit(...args);
    this.activateDefaultTab();
  }

  onEditSettingsChange(propertyName) {
    if ('activeItemIndex' === propertyName) {
      this.activateDefaultTab();
    }
  }

  changeActiveTab(tabIndex) {
    const isActiveTab = this.isActiveTab(tabIndex),
          settings = this.getSettings();

    if ((settings.toggleSelf || !isActiveTab) && settings.hidePrevious) {
      this.deactivateActiveTab();
    }

    if (!settings.hidePrevious && isActiveTab) {
      this.deactivateActiveTab(tabIndex);
    }

    if (!isActiveTab) {
      this.activateTab(tabIndex);
    }
  }

}

exports.default = baseTabs;

/***/ }),

/***/ "../assets/dev/js/frontend/handlers/counter.js":
/*!*****************************************************!*\
  !*** ../assets/dev/js/frontend/handlers/counter.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

class Counter extends elementorModules.frontend.handlers.Base {
  getDefaultSettings() {
    return {
      selectors: {
        counterNumber: '.elementor-counter-number'
      }
    };
  }

  getDefaultElements() {
    const selectors = this.getSettings('selectors');
    return {
      $counterNumber: this.$element.find(selectors.counterNumber)
    };
  }

  onInit() {
    super.onInit();
    this.intersectionObserver = elementorModules.utils.Scroll.scrollObserver({
      callback: event => {
        if (event.isInViewport) {
          this.intersectionObserver.unobserve(this.elements.$counterNumber[0]);
          const data = this.elements.$counterNumber.data(),
                decimalDigits = data.toValue.toString().match(/\.(.*)/);

          if (decimalDigits) {
            data.rounding = decimalDigits[1].length;
          }

          this.elements.$counterNumber.numerator(data);
        }
      }
    });
    this.intersectionObserver.observe(this.elements.$counterNumber[0]);
  }

}

exports.default = Counter;

/***/ }),

/***/ "../assets/dev/js/frontend/handlers/image-carousel.js":
/*!************************************************************!*\
  !*** ../assets/dev/js/frontend/handlers/image-carousel.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

class ImageCarousel extends elementorModules.frontend.handlers.SwiperBase {
  getDefaultSettings() {
    return {
      selectors: {
        carousel: '.elementor-image-carousel-wrapper',
        slideContent: '.swiper-slide'
      }
    };
  }

  getDefaultElements() {
    const selectors = this.getSettings('selectors');
    const elements = {
      $swiperContainer: this.$element.find(selectors.carousel)
    };
    elements.$slides = elements.$swiperContainer.find(selectors.slideContent);
    return elements;
  }

  getSwiperSettings() {
    const elementSettings = this.getElementSettings(),
          slidesToShow = +elementSettings.slides_to_show || 3,
          isSingleSlide = 1 === slidesToShow,
          elementorBreakpoints = elementorFrontend.config.responsive.activeBreakpoints,
          defaultSlidesToShowMap = {
      mobile: 1,
      tablet: isSingleSlide ? 1 : 2
    };
    const swiperOptions = {
      slidesPerView: slidesToShow,
      loop: 'yes' === elementSettings.infinite,
      speed: elementSettings.speed,
      handleElementorBreakpoints: true
    };
    swiperOptions.breakpoints = {};
    let lastBreakpointSlidesToShowValue = slidesToShow;
    Object.keys(elementorBreakpoints).reverse().forEach(breakpointName => {
      // Tablet has a specific default `slides_to_show`.
      const defaultSlidesToShow = defaultSlidesToShowMap[breakpointName] ? defaultSlidesToShowMap[breakpointName] : lastBreakpointSlidesToShowValue;
      swiperOptions.breakpoints[elementorBreakpoints[breakpointName].value] = {
        slidesPerView: +elementSettings['slides_to_show_' + breakpointName] || defaultSlidesToShow,
        slidesPerGroup: +elementSettings['slides_to_scroll_' + breakpointName] || 1
      };
      lastBreakpointSlidesToShowValue = +elementSettings['slides_to_show_' + breakpointName] || defaultSlidesToShow;
    });

    if ('yes' === elementSettings.autoplay) {
      swiperOptions.autoplay = {
        delay: elementSettings.autoplay_speed,
        disableOnInteraction: 'yes' === elementSettings.pause_on_interaction
      };
    }

    if (isSingleSlide) {
      swiperOptions.effect = elementSettings.effect;

      if ('fade' === elementSettings.effect) {
        swiperOptions.fadeEffect = {
          crossFade: true
        };
      }
    } else {
      swiperOptions.slidesPerGroup = +elementSettings.slides_to_scroll || 1;
    }

    if (elementSettings.image_spacing_custom) {
      swiperOptions.spaceBetween = elementSettings.image_spacing_custom.size;
    }

    const showArrows = 'arrows' === elementSettings.navigation || 'both' === elementSettings.navigation,
          showDots = 'dots' === elementSettings.navigation || 'both' === elementSettings.navigation;

    if (showArrows) {
      swiperOptions.navigation = {
        prevEl: '.elementor-swiper-button-prev',
        nextEl: '.elementor-swiper-button-next'
      };
    }

    if (showDots) {
      swiperOptions.pagination = {
        el: '.swiper-pagination',
        type: 'bullets',
        clickable: true
      };
    }

    return swiperOptions;
  }

  async onInit(...args) {
    super.onInit(...args);
    const elementSettings = this.getElementSettings();

    if (!this.elements.$swiperContainer.length || 2 > this.elements.$slides.length) {
      return;
    }

    const Swiper = elementorFrontend.utils.swiper;
    this.swiper = await new Swiper(this.elements.$swiperContainer, this.getSwiperSettings()); // Expose the swiper instance in the frontend

    this.elements.$swiperContainer.data('swiper', this.swiper);

    if ('yes' === elementSettings.pause_on_hover) {
      this.togglePauseOnHover(true);
    }
  }

  updateSwiperOption(propertyName) {
    const elementSettings = this.getElementSettings(),
          newSettingValue = elementSettings[propertyName],
          params = this.swiper.params; // Handle special cases where the value to update is not the value that the Swiper library accepts.

    switch (propertyName) {
      case 'image_spacing_custom':
        params.spaceBetween = newSettingValue.size || 0;
        break;

      case 'autoplay_speed':
        params.autoplay.delay = newSettingValue;
        break;

      case 'speed':
        params.speed = newSettingValue;
        break;
    }

    this.swiper.update();
  }

  getChangeableProperties() {
    return {
      pause_on_hover: 'pauseOnHover',
      autoplay_speed: 'delay',
      speed: 'speed',
      image_spacing_custom: 'spaceBetween'
    };
  }

  onElementChange(propertyName) {
    const changeableProperties = this.getChangeableProperties();

    if (changeableProperties[propertyName]) {
      // 'pause_on_hover' is implemented by the handler with event listeners, not the Swiper library.
      if ('pause_on_hover' === propertyName) {
        const newSettingValue = this.getElementSettings('pause_on_hover');
        this.togglePauseOnHover('yes' === newSettingValue);
      } else {
        this.updateSwiperOption(propertyName);
      }
    }
  }

  onEditSettingsChange(propertyName) {
    if ('activeItemIndex' === propertyName) {
      this.swiper.slideToLoop(this.getEditSettings('activeItemIndex') - 1);
    }
  }

}

exports.default = ImageCarousel;

/***/ }),

/***/ "../assets/dev/js/frontend/handlers/progress.js":
/*!******************************************************!*\
  !*** ../assets/dev/js/frontend/handlers/progress.js ***!
  \******************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

class Progress extends elementorModules.frontend.handlers.Base {
  getDefaultSettings() {
    return {
      selectors: {
        progressNumber: '.elementor-progress-bar'
      }
    };
  }

  getDefaultElements() {
    const selectors = this.getSettings('selectors');
    return {
      $progressNumber: this.$element.find(selectors.progressNumber)
    };
  }

  onInit() {
    super.onInit();
    elementorFrontend.waypoint(this.elements.$progressNumber, () => {
      const $progressbar = this.elements.$progressNumber;
      $progressbar.css('width', $progressbar.data('max') + '%');
    });
  }

}

exports.default = Progress;

/***/ }),

/***/ "../assets/dev/js/frontend/handlers/tabs.js":
/*!**************************************************!*\
  !*** ../assets/dev/js/frontend/handlers/tabs.js ***!
  \**************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");

Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

var _baseTabs = _interopRequireDefault(__webpack_require__(/*! ./base-tabs */ "../assets/dev/js/frontend/handlers/base-tabs.js"));

class Tabs extends _baseTabs.default {
  getDefaultSettings() {
    const defaultSettings = super.getDefaultSettings();
    return { ...defaultSettings,
      toggleSelf: false
    };
  }

}

exports.default = Tabs;

/***/ }),

/***/ "../assets/dev/js/frontend/handlers/text-editor.js":
/*!*********************************************************!*\
  !*** ../assets/dev/js/frontend/handlers/text-editor.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

class TextEditor extends elementorModules.frontend.handlers.Base {
  getDefaultSettings() {
    return {
      selectors: {
        paragraph: 'p:first'
      },
      classes: {
        dropCap: 'elementor-drop-cap',
        dropCapLetter: 'elementor-drop-cap-letter'
      }
    };
  }

  getDefaultElements() {
    const selectors = this.getSettings('selectors'),
          classes = this.getSettings('classes'),
          $dropCap = jQuery('<span>', {
      class: classes.dropCap
    }),
          $dropCapLetter = jQuery('<span>', {
      class: classes.dropCapLetter
    });
    $dropCap.append($dropCapLetter);
    return {
      $paragraph: this.$element.find(selectors.paragraph),
      $dropCap: $dropCap,
      $dropCapLetter: $dropCapLetter
    };
  }

  wrapDropCap() {
    const isDropCapEnabled = this.getElementSettings('drop_cap');

    if (!isDropCapEnabled) {
      // If there is an old drop cap inside the paragraph
      if (this.dropCapLetter) {
        this.elements.$dropCap.remove();
        this.elements.$paragraph.prepend(this.dropCapLetter);
        this.dropCapLetter = '';
      }

      return;
    }

    const $paragraph = this.elements.$paragraph;

    if (!$paragraph.length) {
      return;
    }

    const paragraphContent = $paragraph.html().replace(/&nbsp;/g, ' '),
          firstLetterMatch = paragraphContent.match(/^ *([^ ] ?)/);

    if (!firstLetterMatch) {
      return;
    }

    const firstLetter = firstLetterMatch[1],
          trimmedFirstLetter = firstLetter.trim(); // Don't apply drop cap when the content starting with an HTML tag

    if ('<' === trimmedFirstLetter) {
      return;
    }

    this.dropCapLetter = firstLetter;
    this.elements.$dropCapLetter.text(trimmedFirstLetter);
    const restoredParagraphContent = paragraphContent.slice(firstLetter.length).replace(/^ */, match => {
      return new Array(match.length + 1).join('&nbsp;');
    });
    $paragraph.html(restoredParagraphContent).prepend(this.elements.$dropCap);
  }

  onInit(...args) {
    super.onInit(...args);
    this.wrapDropCap();
  }

  onElementChange(propertyName) {
    if ('drop_cap' === propertyName) {
      this.wrapDropCap();
    }
  }

}

exports.default = TextEditor;

/***/ }),

/***/ "../assets/dev/js/frontend/handlers/toggle.js":
/*!****************************************************!*\
  !*** ../assets/dev/js/frontend/handlers/toggle.js ***!
  \****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");

Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

var _baseTabs = _interopRequireDefault(__webpack_require__(/*! ./base-tabs */ "../assets/dev/js/frontend/handlers/base-tabs.js"));

class Toggle extends _baseTabs.default {
  getDefaultSettings() {
    const defaultSettings = super.getDefaultSettings();
    return { ...defaultSettings,
      showTabFn: 'slideDown',
      hideTabFn: 'slideUp',
      hidePrevious: false,
      autoExpand: 'editor'
    };
  }

}

exports.default = Toggle;

/***/ }),

/***/ "../assets/dev/js/frontend/handlers/video.js":
/*!***************************************************!*\
  !*** ../assets/dev/js/frontend/handlers/video.js ***!
  \***************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

class Video extends elementorModules.frontend.handlers.Base {
  getDefaultSettings() {
    return {
      selectors: {
        imageOverlay: '.elementor-custom-embed-image-overlay',
        video: '.elementor-video',
        videoIframe: '.elementor-video-iframe'
      }
    };
  }

  getDefaultElements() {
    const selectors = this.getSettings('selectors');
    return {
      $imageOverlay: this.$element.find(selectors.imageOverlay),
      $video: this.$element.find(selectors.video),
      $videoIframe: this.$element.find(selectors.videoIframe)
    };
  }

  handleVideo() {
    if (this.getElementSettings('lightbox')) {
      return;
    }

    if ('youtube' === this.getElementSettings('video_type')) {
      this.apiProvider.onApiReady(apiObject => {
        this.elements.$imageOverlay.remove();
        this.prepareYTVideo(apiObject, true);
      });
    } else {
      this.elements.$imageOverlay.remove();
      this.playVideo();
    }
  }

  playVideo() {
    if (this.elements.$video.length) {
      // this.youtubePlayer exists only for YouTube videos, and its play function is different.
      if (this.youtubePlayer) {
        this.youtubePlayer.playVideo();
      } else {
        this.elements.$video[0].play();
      }

      return;
    }

    const $videoIframe = this.elements.$videoIframe,
          lazyLoad = $videoIframe.data('lazy-load');

    if (lazyLoad) {
      $videoIframe.attr('src', lazyLoad);
    }

    $videoIframe[0].src = this.apiProvider.getAutoplayURL($videoIframe[0].src);
  }

  async animateVideo() {
    const lightbox = await elementorFrontend.utils.lightbox;
    lightbox.setEntranceAnimation(this.getCurrentDeviceSetting('lightbox_content_animation'));
  }

  async handleAspectRatio() {
    const lightbox = await elementorFrontend.utils.lightbox;
    lightbox.setVideoAspectRatio(this.getElementSettings('aspect_ratio'));
  }

  async hideLightbox() {
    const lightbox = await elementorFrontend.utils.lightbox;
    lightbox.getModal().hide();
  }

  prepareYTVideo(YT, onOverlayClick) {
    const elementSettings = this.getElementSettings(),
          playerOptions = {
      videoId: this.videoID,
      events: {
        onReady: () => {
          if (elementSettings.mute) {
            this.youtubePlayer.mute();
          }

          if (elementSettings.autoplay || onOverlayClick) {
            this.youtubePlayer.playVideo();
          }
        },
        onStateChange: event => {
          if (event.data === YT.PlayerState.ENDED && elementSettings.loop) {
            this.youtubePlayer.seekTo(elementSettings.start || 0);
          }
        }
      },
      playerVars: {
        controls: elementSettings.controls ? 1 : 0,
        rel: elementSettings.rel ? 1 : 0,
        playsinline: elementSettings.play_on_mobile ? 1 : 0,
        modestbranding: elementSettings.modestbranding ? 1 : 0,
        autoplay: elementSettings.autoplay ? 1 : 0,
        start: elementSettings.start,
        end: elementSettings.end
      }
    }; // To handle CORS issues, when the default host is changed, the origin parameter has to be set.

    if (elementSettings.yt_privacy) {
      playerOptions.host = 'https://www.youtube-nocookie.com';
      playerOptions.origin = window.location.hostname;
    }

    this.youtubePlayer = new YT.Player(this.elements.$video[0], playerOptions);
  }

  bindEvents() {
    this.elements.$imageOverlay.on('click', this.handleVideo.bind(this));
  }

  onInit() {
    super.onInit();
    const elementSettings = this.getElementSettings();

    if (elementorFrontend.utils[elementSettings.video_type]) {
      this.apiProvider = elementorFrontend.utils[elementSettings.video_type];
    } else {
      this.apiProvider = elementorFrontend.utils.baseVideoLoader;
    }

    if ('youtube' !== elementSettings.video_type) {
      // Currently the only API integration in the Video widget is for the YT API
      return;
    }

    this.videoID = this.apiProvider.getVideoIDFromURL(elementSettings.youtube_url); // If there is an image overlay, the YouTube video prep method will be triggered on click

    if (!this.videoID) {
      return;
    } // If the user is using an image overlay, loading the API happens on overlay click instead of on init.


    if (elementSettings.show_image_overlay && elementSettings.image_overlay.url) {
      return;
    }

    if (elementSettings.lazy_load) {
      this.intersectionObserver = elementorModules.utils.Scroll.scrollObserver({
        callback: event => {
          if (event.isInViewport) {
            this.intersectionObserver.unobserve(this.elements.$video.parent()[0]);
            this.apiProvider.onApiReady(apiObject => this.prepareYTVideo(apiObject));
          }
        }
      }); // We observe the parent, since the video container has a height of 0.

      this.intersectionObserver.observe(this.elements.$video.parent()[0]);
      return;
    } // When Optimized asset loading is set to off, the video type is set to 'Youtube', and 'Privacy Mode' is set
    // to 'On', there might be a conflict with other videos that are loaded WITHOUT privacy mode, such as a
    // video bBackground in a section. In these cases, to avoid the conflict, a timeout is added to postpone the
    // initialization of the Youtube API object.


    if (!elementorFrontend.config.experimentalFeatures['e_optimized_assets_loading']) {
      setTimeout(() => {
        this.apiProvider.onApiReady(apiObject => this.prepareYTVideo(apiObject));
      }, 0);
    } else {
      this.apiProvider.onApiReady(apiObject => this.prepareYTVideo(apiObject));
    }
  }

  onElementChange(propertyName) {
    if (0 === propertyName.indexOf('lightbox_content_animation')) {
      this.animateVideo();
      return;
    }

    const isLightBoxEnabled = this.getElementSettings('lightbox');

    if ('lightbox' === propertyName && !isLightBoxEnabled) {
      this.hideLightbox();
      return;
    }

    if ('aspect_ratio' === propertyName && isLightBoxEnabled) {
      this.handleAspectRatio();
    }
  }

}

exports.default = Video;

/***/ }),

/***/ "../assets/dev/js/frontend/preloaded-modules.js":
/*!******************************************************!*\
  !*** ../assets/dev/js/frontend/preloaded-modules.js ***!
  \******************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");

var _accordion = _interopRequireDefault(__webpack_require__(/*! ./handlers/accordion */ "../assets/dev/js/frontend/handlers/accordion.js"));

var _alert = _interopRequireDefault(__webpack_require__(/*! ./handlers/alert */ "../assets/dev/js/frontend/handlers/alert.js"));

var _counter = _interopRequireDefault(__webpack_require__(/*! ./handlers/counter */ "../assets/dev/js/frontend/handlers/counter.js"));

var _progress = _interopRequireDefault(__webpack_require__(/*! ./handlers/progress */ "../assets/dev/js/frontend/handlers/progress.js"));

var _tabs = _interopRequireDefault(__webpack_require__(/*! ./handlers/tabs */ "../assets/dev/js/frontend/handlers/tabs.js"));

var _toggle = _interopRequireDefault(__webpack_require__(/*! ./handlers/toggle */ "../assets/dev/js/frontend/handlers/toggle.js"));

var _video = _interopRequireDefault(__webpack_require__(/*! ./handlers/video */ "../assets/dev/js/frontend/handlers/video.js"));

var _imageCarousel = _interopRequireDefault(__webpack_require__(/*! ./handlers/image-carousel */ "../assets/dev/js/frontend/handlers/image-carousel.js"));

var _textEditor = _interopRequireDefault(__webpack_require__(/*! ./handlers/text-editor */ "../assets/dev/js/frontend/handlers/text-editor.js"));

var _lightbox = _interopRequireDefault(__webpack_require__(/*! elementor-frontend/utils/lightbox/lightbox */ "../assets/dev/js/frontend/utils/lightbox/lightbox.js"));

elementorFrontend.elements.$window.on('elementor/frontend/init', () => {
  elementorFrontend.elementsHandler.elementsHandlers = {
    'accordion.default': _accordion.default,
    'alert.default': _alert.default,
    'counter.default': _counter.default,
    'progress.default': _progress.default,
    'tabs.default': _tabs.default,
    'toggle.default': _toggle.default,
    'video.default': _video.default,
    'image-carousel.default': _imageCarousel.default,
    'text-editor.default': _textEditor.default
  };
  elementorFrontend.on('components:init', () => {
    // We first need to delete the property because by default it's a getter function that cannot be overwritten.
    delete elementorFrontend.utils.lightbox;
    elementorFrontend.utils.lightbox = new _lightbox.default();
  });
});

/***/ }),

/***/ "../assets/dev/js/frontend/utils/lightbox/lightbox.js":
/*!************************************************************!*\
  !*** ../assets/dev/js/frontend/utils/lightbox/lightbox.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");

var _screenfull = _interopRequireDefault(__webpack_require__(/*! ./screenfull */ "../assets/dev/js/frontend/utils/lightbox/screenfull.js"));

module.exports = elementorModules.ViewModule.extend({
  oldAspectRatio: null,
  oldAnimation: null,
  swiper: null,
  player: null,
  getDefaultSettings: function () {
    return {
      classes: {
        aspectRatio: 'elementor-aspect-ratio-%s',
        item: 'elementor-lightbox-item',
        image: 'elementor-lightbox-image',
        videoContainer: 'elementor-video-container',
        videoWrapper: 'elementor-fit-aspect-ratio',
        playButton: 'elementor-custom-embed-play',
        playButtonIcon: 'fa',
        playing: 'elementor-playing',
        hidden: 'elementor-hidden',
        invisible: 'elementor-invisible',
        preventClose: 'elementor-lightbox-prevent-close',
        slideshow: {
          container: 'swiper-container',
          slidesWrapper: 'swiper-wrapper',
          prevButton: 'elementor-swiper-button elementor-swiper-button-prev',
          nextButton: 'elementor-swiper-button elementor-swiper-button-next',
          prevButtonIcon: 'eicon-chevron-left',
          nextButtonIcon: 'eicon-chevron-right',
          slide: 'swiper-slide',
          header: 'elementor-slideshow__header',
          footer: 'elementor-slideshow__footer',
          title: 'elementor-slideshow__title',
          description: 'elementor-slideshow__description',
          counter: 'elementor-slideshow__counter',
          iconExpand: 'eicon-frame-expand',
          iconShrink: 'eicon-frame-minimize',
          iconZoomIn: 'eicon-zoom-in-bold',
          iconZoomOut: 'eicon-zoom-out-bold',
          iconShare: 'eicon-share-arrow',
          shareMenu: 'elementor-slideshow__share-menu',
          shareLinks: 'elementor-slideshow__share-links',
          hideUiVisibility: 'elementor-slideshow--ui-hidden',
          shareMode: 'elementor-slideshow--share-mode',
          fullscreenMode: 'elementor-slideshow--fullscreen-mode',
          zoomMode: 'elementor-slideshow--zoom-mode'
        }
      },
      selectors: {
        image: '.elementor-lightbox-image',
        links: 'a, [data-elementor-lightbox]',
        slideshow: {
          activeSlide: '.swiper-slide-active',
          prevSlide: '.swiper-slide-prev',
          nextSlide: '.swiper-slide-next'
        }
      },
      modalOptions: {
        id: 'elementor-lightbox',
        entranceAnimation: 'zoomIn',
        videoAspectRatio: 169,
        position: {
          enable: false
        }
      }
    };
  },
  getModal: function () {
    if (!module.exports.modal) {
      this.initModal();
    }

    return module.exports.modal;
  },
  initModal: function () {
    const modal = module.exports.modal = elementorFrontend.getDialogsManager().createWidget('lightbox', {
      className: 'elementor-lightbox',
      closeButton: true,
      closeButtonOptions: {
        iconClass: 'eicon-close',
        attributes: {
          tabindex: 0,
          role: 'button',
          'aria-label': elementorFrontend.config.i18n.close + ' (Esc)'
        }
      },
      selectors: {
        preventClose: '.' + this.getSettings('classes.preventClose')
      },
      hide: {
        onClick: true
      }
    });
    modal.on('hide', function () {
      modal.setMessage('');
    });
  },
  showModal: function (options) {
    if (options.url && !options.url.startsWith('http')) {
      return;
    }

    this.elements.$closeButton = this.getModal().getElements('closeButton');
    this.$buttons = this.elements.$closeButton;
    this.focusedButton = null;
    const self = this,
          defaultOptions = self.getDefaultSettings().modalOptions;
    self.id = options.id;
    self.setSettings('modalOptions', jQuery.extend(defaultOptions, options.modalOptions));
    const modal = self.getModal();
    modal.setID(self.getSettings('modalOptions.id'));

    modal.onShow = function () {
      DialogsManager.getWidgetType('lightbox').prototype.onShow.apply(modal, arguments);
      self.setEntranceAnimation();
    };

    modal.onHide = function () {
      DialogsManager.getWidgetType('lightbox').prototype.onHide.apply(modal, arguments);
      modal.getElements('message').removeClass('animated');

      if (_screenfull.default.isFullscreen) {
        self.deactivateFullscreen();
      }

      self.unbindHotKeys();
    };

    switch (options.type) {
      case 'video':
        self.setVideoContent(options);
        break;

      case 'image':
        const slides = [{
          image: options.url,
          index: 0,
          title: options.title,
          description: options.description
        }];
        options.slideshow = {
          slides,
          swiper: {
            loop: false,
            pagination: false
          }
        };

      case 'slideshow':
        self.setSlideshowContent(options.slideshow);
        break;

      default:
        self.setHTMLContent(options.html);
    }

    modal.show();
  },
  createLightbox: function (element) {
    let lightboxData = {};

    if (element.dataset.elementorLightbox) {
      lightboxData = JSON.parse(element.dataset.elementorLightbox);
    }

    if (lightboxData.type && 'slideshow' !== lightboxData.type) {
      this.showModal(lightboxData);
      return;
    }

    if (!element.dataset.elementorLightboxSlideshow) {
      const slideshowID = 'single-img';
      this.showModal({
        type: 'image',
        id: slideshowID,
        url: element.href,
        title: element.dataset.elementorLightboxTitle,
        description: element.dataset.elementorLightboxDescription,
        modalOptions: {
          id: 'elementor-lightbox-slideshow-' + slideshowID
        }
      });
      return;
    }

    const initialSlideURL = element.dataset.elementorLightboxVideo || element.href;
    this.openSlideshow(element.dataset.elementorLightboxSlideshow, initialSlideURL);
  },
  setHTMLContent: function (html) {
    if (window.elementorCommon) {
      elementorCommon.helpers.hardDeprecated('elementorFrontend.utils.lightbox.setHTMLContent', '3.1.4');
    }

    this.getModal().setMessage(html);
  },
  setVideoContent: function (options) {
    const $ = jQuery,
          classes = this.getSettings('classes'),
          $videoContainer = $('<div>', {
      class: `${classes.videoContainer} ${classes.preventClose}`
    }),
          $videoWrapper = $('<div>', {
      class: classes.videoWrapper
    }),
          modal = this.getModal();
    let $videoElement;

    if ('hosted' === options.videoType) {
      const videoParams = $.extend({
        src: options.url,
        autoplay: ''
      }, options.videoParams);
      $videoElement = $('<video>', videoParams);
    } else {
      let apiProvider = elementorFrontend.utils.baseVideoLoader;

      if (-1 !== options.url.indexOf('vimeo.com')) {
        apiProvider = elementorFrontend.utils.vimeo;
      } else if (options.url.match(/^(?:https?:\/\/)?(?:www\.)?(?:m\.)?(?:youtu\.be\/|youtube\.com)/)) {
        apiProvider = elementorFrontend.utils.youtube;
      }

      $videoElement = $('<iframe>', {
        src: apiProvider.getAutoplayURL(options.url),
        allowfullscreen: 1
      });
    }

    $videoContainer.append($videoWrapper);
    $videoWrapper.append($videoElement);
    modal.setMessage($videoContainer);
    this.setVideoAspectRatio();
    const onHideMethod = modal.onHide;

    modal.onHide = function () {
      onHideMethod();
      this.$buttons = jQuery();
      this.focusedButton = null;
      modal.getElements('message').removeClass('elementor-fit-aspect-ratio');
    };
  },
  getShareLinks: function () {
    const {
      i18n
    } = elementorFrontend.config,
          socialNetworks = {
      facebook: i18n.shareOnFacebook,
      twitter: i18n.shareOnTwitter,
      pinterest: i18n.pinIt
    },
          $ = jQuery,
          classes = this.getSettings('classes'),
          selectors = this.getSettings('selectors'),
          $linkList = $('<div>', {
      class: classes.slideshow.shareLinks
    }),
          $activeSlide = this.getSlide('active'),
          $image = $activeSlide.find(selectors.image),
          videoUrl = $activeSlide.data('elementor-slideshow-video');
    let itemUrl;

    if (videoUrl) {
      itemUrl = videoUrl;
    } else {
      itemUrl = $image.attr('src');
    }

    $.each(socialNetworks, (key, networkLabel) => {
      const $link = $('<a>', {
        href: this.createShareLink(key, itemUrl),
        target: '_blank'
      }).text(networkLabel);
      $link.prepend($('<i>', {
        class: 'eicon-' + key
      }));
      $linkList.append($link);
    });

    if (!videoUrl) {
      $linkList.append($('<a>', {
        href: itemUrl,
        download: ''
      }).text(i18n.downloadImage).prepend($('<i>', {
        class: 'eicon-download-bold',
        'aria-label': i18n.download
      })));
    }

    return $linkList;
  },
  createShareLink: function (networkName, itemUrl) {
    const options = {};

    if ('pinterest' === networkName) {
      options.image = encodeURIComponent(itemUrl);
    } else {
      const hash = elementorFrontend.utils.urlActions.createActionHash('lightbox', {
        id: this.id,
        url: itemUrl
      });
      options.url = encodeURIComponent(location.href.replace(/#.*/, '')) + hash;
    }

    return ShareLink.getNetworkLink(networkName, options);
  },
  getSlideshowHeader: function () {
    const {
      i18n
    } = elementorFrontend.config,
          $ = jQuery,
          showCounter = 'yes' === elementorFrontend.getKitSettings('lightbox_enable_counter'),
          showFullscreen = 'yes' === elementorFrontend.getKitSettings('lightbox_enable_fullscreen'),
          showZoom = 'yes' === elementorFrontend.getKitSettings('lightbox_enable_zoom'),
          showShare = 'yes' === elementorFrontend.getKitSettings('lightbox_enable_share'),
          classes = this.getSettings('classes'),
          slideshowClasses = classes.slideshow,
          elements = this.elements;

    if (!(showCounter || showFullscreen || showZoom || showShare)) {
      return;
    }

    elements.$header = $('<header>', {
      class: slideshowClasses.header + ' ' + classes.preventClose
    });

    if (showShare) {
      elements.$iconShare = $('<i>', {
        class: slideshowClasses.iconShare,
        role: 'button',
        'aria-label': i18n.share,
        'aria-expanded': false
      }).append($('<span>'));
      const $shareLinks = $('<div>');
      $shareLinks.on('click', e => {
        e.stopPropagation();
      });
      elements.$shareMenu = $('<div>', {
        class: slideshowClasses.shareMenu
      }).append($shareLinks);
      elements.$iconShare.add(elements.$shareMenu).on('click', this.toggleShareMenu);
      elements.$header.append(elements.$iconShare, elements.$shareMenu);
      this.$buttons = this.$buttons.add(elements.$iconShare);
    }

    if (showZoom) {
      elements.$iconZoom = $('<i>', {
        class: slideshowClasses.iconZoomIn,
        role: 'switch',
        'aria-checked': false,
        'aria-label': i18n.zoom
      });
      elements.$iconZoom.on('click', this.toggleZoomMode);
      elements.$header.append(elements.$iconZoom);
      this.$buttons = this.$buttons.add(elements.$iconZoom);
    }

    if (showFullscreen) {
      elements.$iconExpand = $('<i>', {
        class: slideshowClasses.iconExpand,
        role: 'switch',
        'aria-checked': false,
        'aria-label': i18n.fullscreen
      }).append($('<span>'), $('<span>'));
      elements.$iconExpand.on('click', this.toggleFullscreen);
      elements.$header.append(elements.$iconExpand);
      this.$buttons = this.$buttons.add(elements.$iconExpand);
    }

    if (showCounter) {
      elements.$counter = $('<span>', {
        class: slideshowClasses.counter
      });
      elements.$header.append(elements.$counter);
    }

    return elements.$header;
  },
  toggleFullscreen: function () {
    if (_screenfull.default.isFullscreen) {
      this.deactivateFullscreen();
    } else if (_screenfull.default.isEnabled) {
      this.activateFullscreen();
    }
  },
  toggleZoomMode: function () {
    if (1 !== this.swiper.zoom.scale) {
      this.deactivateZoom();
    } else {
      this.activateZoom();
    }
  },
  toggleShareMenu: function () {
    if (this.shareMode) {
      this.deactivateShareMode();
    } else {
      this.elements.$shareMenu.html(this.getShareLinks());
      this.activateShareMode();
    }
  },
  activateShareMode: function () {
    const classes = this.getSettings('classes');
    this.elements.$container.addClass(classes.slideshow.shareMode);
    this.elements.$iconShare.attr('aria-expanded', true); // Prevent swiper interactions while in share mode

    this.swiper.detachEvents(); // Temporarily replace tabbable buttons with share-menu items

    this.$originalButtons = this.$buttons;
    this.$buttons = this.elements.$iconShare.add(this.elements.$shareMenu.find('a'));
    this.shareMode = true;
  },
  deactivateShareMode: function () {
    const classes = this.getSettings('classes');
    this.elements.$container.removeClass(classes.slideshow.shareMode);
    this.elements.$iconShare.attr('aria-expanded', false);
    this.swiper.attachEvents();
    this.$buttons = this.$originalButtons;
    this.shareMode = false;
  },
  activateFullscreen: function () {
    const classes = this.getSettings('classes');

    _screenfull.default.request(this.elements.$container.parents('.dialog-widget')[0]);

    this.elements.$iconExpand.removeClass(classes.slideshow.iconExpand).addClass(classes.slideshow.iconShrink).attr('aria-checked', 'true');
    this.elements.$container.addClass(classes.slideshow.fullscreenMode);
  },
  deactivateFullscreen: function () {
    const classes = this.getSettings('classes');

    _screenfull.default.exit();

    this.elements.$iconExpand.removeClass(classes.slideshow.iconShrink).addClass(classes.slideshow.iconExpand).attr('aria-checked', 'false');
    this.elements.$container.removeClass(classes.slideshow.fullscreenMode);
  },
  activateZoom: function () {
    const swiper = this.swiper,
          elements = this.elements,
          classes = this.getSettings('classes');
    swiper.zoom.in();
    swiper.allowSlideNext = false;
    swiper.allowSlidePrev = false;
    swiper.allowTouchMove = false;
    elements.$container.addClass(classes.slideshow.zoomMode);
    elements.$iconZoom.removeClass(classes.slideshow.iconZoomIn).addClass(classes.slideshow.iconZoomOut);
  },
  deactivateZoom: function () {
    const swiper = this.swiper,
          elements = this.elements,
          classes = this.getSettings('classes');
    swiper.zoom.out();
    swiper.allowSlideNext = true;
    swiper.allowSlidePrev = true;
    swiper.allowTouchMove = true;
    elements.$container.removeClass(classes.slideshow.zoomMode);
    elements.$iconZoom.removeClass(classes.slideshow.iconZoomOut).addClass(classes.slideshow.iconZoomIn);
  },
  getSlideshowFooter: function () {
    const $ = jQuery,
          classes = this.getSettings('classes'),
          $footer = $('<footer>', {
      class: classes.slideshow.footer + ' ' + classes.preventClose
    }),
          $title = $('<div>', {
      class: classes.slideshow.title
    }),
          $description = $('<div>', {
      class: classes.slideshow.description
    });
    $footer.append($title, $description);
    return $footer;
  },
  setSlideshowContent: function (options) {
    const {
      i18n
    } = elementorFrontend.config,
          $ = jQuery,
          isSingleSlide = 1 === options.slides.length,
          hasTitle = '' !== elementorFrontend.getKitSettings('lightbox_title_src'),
          hasDescription = '' !== elementorFrontend.getKitSettings('lightbox_description_src'),
          showFooter = hasTitle || hasDescription,
          classes = this.getSettings('classes'),
          slideshowClasses = classes.slideshow,
          $container = $('<div>', {
      class: slideshowClasses.container
    }),
          $slidesWrapper = $('<div>', {
      class: slideshowClasses.slidesWrapper
    });
    let $prevButton, $nextButton;
    options.slides.forEach(slide => {
      let slideClass = slideshowClasses.slide + ' ' + classes.item;

      if (slide.video) {
        slideClass += ' ' + classes.video;
      }

      const $slide = $('<div>', {
        class: slideClass
      });

      if (slide.video) {
        $slide.attr('data-elementor-slideshow-video', slide.video);
        const $playIcon = $('<div>', {
          class: classes.playButton
        }).html($('<i>', {
          class: classes.playButtonIcon,
          'aria-label': i18n.playVideo
        }));
        $slide.append($playIcon);
      } else {
        const $zoomContainer = $('<div>', {
          class: 'swiper-zoom-container'
        }),
              $slidePlaceholder = $('<div class="swiper-lazy-preloader"></div>'),
              imageAttributes = {
          'data-src': slide.image,
          class: classes.image + ' ' + classes.preventClose + ' swiper-lazy'
        };

        if (slide.title) {
          imageAttributes['data-title'] = slide.title;
          imageAttributes.alt = slide.title;
        }

        if (slide.description) {
          imageAttributes['data-description'] = slide.description;
          imageAttributes.alt += ' - ' + slide.description;
        }

        const $slideImage = $('<img>', imageAttributes);
        $zoomContainer.append([$slideImage, $slidePlaceholder]);
        $slide.append($zoomContainer);
      }

      $slidesWrapper.append($slide);
    });
    this.elements.$container = $container;
    this.elements.$header = this.getSlideshowHeader();
    $container.prepend(this.elements.$header).append($slidesWrapper);

    if (!isSingleSlide) {
      $prevButton = $('<div>', {
        class: slideshowClasses.prevButton + ' ' + classes.preventClose,
        'aria-label': i18n.previous
      }).html($('<i>', {
        class: slideshowClasses.prevButtonIcon
      }));
      $nextButton = $('<div>', {
        class: slideshowClasses.nextButton + ' ' + classes.preventClose,
        'aria-label': i18n.next
      }).html($('<i>', {
        class: slideshowClasses.nextButtonIcon
      }));
      $container.append($nextButton, $prevButton);
      this.$buttons = this.$buttons.add($nextButton).add($prevButton);
    }

    if (showFooter) {
      this.elements.$footer = this.getSlideshowFooter();
      $container.append(this.elements.$footer);
    }

    this.setSettings('hideUiTimeout', '');
    $container.on('click mousemove keypress', this.showLightboxUi);
    const modal = this.getModal();
    modal.setMessage($container);
    const onShowMethod = modal.onShow;

    modal.onShow = async () => {
      onShowMethod();
      const swiperOptions = {
        pagination: {
          el: '.' + slideshowClasses.counter,
          type: 'fraction'
        },
        on: {
          slideChangeTransitionEnd: this.onSlideChange
        },
        lazy: {
          loadPrevNext: true
        },
        zoom: true,
        spaceBetween: 100,
        grabCursor: true,
        runCallbacksOnInit: false,
        loop: true,
        keyboard: true,
        handleElementorBreakpoints: true
      };

      if (!isSingleSlide) {
        swiperOptions.navigation = {
          prevEl: $prevButton,
          nextEl: $nextButton
        };
      }

      if (options.swiper) {
        $.extend(swiperOptions, options.swiper);
      }

      const Swiper = elementorFrontend.utils.swiper;
      this.swiper = await new Swiper($container, swiperOptions); // Expose the swiper instance in the frontend

      $container.data('swiper', this.swiper);
      this.setVideoAspectRatio();
      this.playSlideVideo();

      if (showFooter) {
        this.updateFooterText();
      }

      this.bindHotKeys();
      this.makeButtonsAccessible();
    };
  },
  makeButtonsAccessible: function () {
    this.$buttons.attr('tabindex', 0).on('keypress', event => {
      const ENTER_KEY = 13,
            SPACE_KEY = 32;

      if (ENTER_KEY === event.which || SPACE_KEY === event.which) {
        jQuery(event.currentTarget).trigger('click');
      }
    });
  },
  showLightboxUi: function () {
    const slideshowClasses = this.getSettings('classes').slideshow;
    this.elements.$container.removeClass(slideshowClasses.hideUiVisibility);
    clearTimeout(this.getSettings('hideUiTimeout'));
    this.setSettings('hideUiTimeout', setTimeout(() => {
      if (!this.shareMode) {
        this.elements.$container.addClass(slideshowClasses.hideUiVisibility);
      }
    }, 3500));
  },
  bindHotKeys: function () {
    this.getModal().getElements('window').on('keydown', this.activeKeyDown);
  },
  unbindHotKeys: function () {
    this.getModal().getElements('window').off('keydown', this.activeKeyDown);
  },
  activeKeyDown: function (event) {
    this.showLightboxUi();
    const TAB_KEY = 9;

    if (event.which === TAB_KEY) {
      const $buttons = this.$buttons;
      let focusedButton,
          isFirst = false,
          isLast = false;
      $buttons.each(index => {
        const item = $buttons[index];

        if (jQuery(item).is(':focus')) {
          focusedButton = item;
          isFirst = 0 === index;
          isLast = $buttons.length - 1 === index;
          return false;
        }
      });

      if (event.shiftKey) {
        if (isFirst) {
          event.preventDefault();
          $buttons.last().trigger('focus');
        }
      } else if (isLast || !focusedButton) {
        event.preventDefault();
        $buttons.first().trigger('focus');
      }
    }
  },
  setVideoAspectRatio: function (aspectRatio) {
    aspectRatio = aspectRatio || this.getSettings('modalOptions.videoAspectRatio');
    const $widgetContent = this.getModal().getElements('widgetContent'),
          oldAspectRatio = this.oldAspectRatio,
          aspectRatioClass = this.getSettings('classes.aspectRatio');
    this.oldAspectRatio = aspectRatio;

    if (oldAspectRatio) {
      $widgetContent.removeClass(aspectRatioClass.replace('%s', oldAspectRatio));
    }

    if (aspectRatio) {
      $widgetContent.addClass(aspectRatioClass.replace('%s', aspectRatio));
    }
  },
  getSlide: function (slideState) {
    return jQuery(this.swiper.slides).filter(this.getSettings('selectors.slideshow.' + slideState + 'Slide'));
  },
  updateFooterText: function () {
    if (!this.elements.$footer) {
      return;
    }

    const classes = this.getSettings('classes'),
          $activeSlide = this.getSlide('active'),
          $image = $activeSlide.find('.elementor-lightbox-image'),
          titleText = $image.data('title'),
          descriptionText = $image.data('description'),
          $title = this.elements.$footer.find('.' + classes.slideshow.title),
          $description = this.elements.$footer.find('.' + classes.slideshow.description);
    $title.text(titleText || '');
    $description.text(descriptionText || '');
  },
  playSlideVideo: function () {
    const $activeSlide = this.getSlide('active'),
          videoURL = $activeSlide.data('elementor-slideshow-video');

    if (!videoURL) {
      return;
    }

    const classes = this.getSettings('classes'),
          $videoContainer = jQuery('<div>', {
      class: classes.videoContainer + ' ' + classes.invisible
    }),
          $videoWrapper = jQuery('<div>', {
      class: classes.videoWrapper
    }),
          $playIcon = $activeSlide.children('.' + classes.playButton);
    let videoType, apiProvider;
    $videoContainer.append($videoWrapper);
    $activeSlide.append($videoContainer);

    if (-1 !== videoURL.indexOf('vimeo.com')) {
      videoType = 'vimeo';
      apiProvider = elementorFrontend.utils.vimeo;
    } else if (videoURL.match(/^(?:https?:\/\/)?(?:www\.)?(?:m\.)?(?:youtu\.be\/|youtube\.com)/)) {
      videoType = 'youtube';
      apiProvider = elementorFrontend.utils.youtube;
    }

    const videoID = apiProvider.getVideoIDFromURL(videoURL);
    apiProvider.onApiReady(apiObject => {
      if ('youtube' === videoType) {
        this.prepareYTVideo(apiObject, videoID, $videoContainer, $videoWrapper, $playIcon);
      } else if ('vimeo' === videoType) {
        this.prepareVimeoVideo(apiObject, videoURL, $videoContainer, $videoWrapper, $playIcon);
      }
    });
    $playIcon.addClass(classes.playing).removeClass(classes.hidden);
  },
  prepareYTVideo: function (YT, videoID, $videoContainer, $videoWrapper, $playIcon) {
    const classes = this.getSettings('classes'),
          $videoPlaceholderElement = jQuery('<div>');
    let startStateCode = YT.PlayerState.PLAYING;
    $videoWrapper.append($videoPlaceholderElement); // Since version 67, Chrome doesn't fire the `PLAYING` state at start time

    if (window.chrome) {
      startStateCode = YT.PlayerState.UNSTARTED;
    }

    $videoContainer.addClass('elementor-loading' + ' ' + classes.invisible);
    this.player = new YT.Player($videoPlaceholderElement[0], {
      videoId: videoID,
      events: {
        onReady: () => {
          $playIcon.addClass(classes.hidden);
          $videoContainer.removeClass(classes.invisible);
          this.player.playVideo();
        },
        onStateChange: event => {
          if (event.data === startStateCode) {
            $videoContainer.removeClass('elementor-loading' + ' ' + classes.invisible);
          }
        }
      },
      playerVars: {
        controls: 0,
        rel: 0
      }
    });
  },
  prepareVimeoVideo: function (Vimeo, videoURL, $videoContainer, $videoWrapper, $playIcon) {
    const classes = this.getSettings('classes'),
          vimeoOptions = {
      url: videoURL,
      autoplay: true,
      transparent: false,
      playsinline: false
    };
    this.player = new Vimeo.Player($videoWrapper, vimeoOptions);
    this.player.ready().then(() => {
      $playIcon.addClass(classes.hidden);
      $videoContainer.removeClass(classes.invisible);
    });
  },
  setEntranceAnimation: function (animation) {
    animation = animation || elementorFrontend.getCurrentDeviceSetting(this.getSettings('modalOptions'), 'entranceAnimation');
    const $widgetMessage = this.getModal().getElements('message');

    if (this.oldAnimation) {
      $widgetMessage.removeClass(this.oldAnimation);
    }

    this.oldAnimation = animation;

    if (animation) {
      $widgetMessage.addClass('animated ' + animation);
    }
  },
  openSlideshow: function (slideshowID, initialSlideURL) {
    const $allSlideshowLinks = jQuery(this.getSettings('selectors.links')).filter((index, element) => {
      const $element = jQuery(element);
      return slideshowID === element.dataset.elementorLightboxSlideshow && !$element.parent('.swiper-slide-duplicate').length && !$element.parents('.slick-cloned').length;
    });
    const slides = [];
    let initialSlideIndex = 0;
    $allSlideshowLinks.each(function () {
      const slideVideo = this.dataset.elementorLightboxVideo;
      let slideIndex = this.dataset.elementorLightboxIndex;

      if (undefined === slideIndex) {
        slideIndex = $allSlideshowLinks.index(this);
      }

      if (initialSlideURL === this.href || slideVideo && initialSlideURL === slideVideo) {
        initialSlideIndex = slideIndex;
      }

      const slideData = {
        image: this.href,
        index: slideIndex,
        title: this.dataset.elementorLightboxTitle,
        description: this.dataset.elementorLightboxDescription
      };

      if (slideVideo) {
        slideData.video = slideVideo;
      }

      slides.push(slideData);
    });
    slides.sort((a, b) => a.index - b.index);
    this.showModal({
      type: 'slideshow',
      id: slideshowID,
      modalOptions: {
        id: 'elementor-lightbox-slideshow-' + slideshowID
      },
      slideshow: {
        slides: slides,
        swiper: {
          initialSlide: +initialSlideIndex
        }
      }
    });
  },
  onSlideChange: function () {
    this.getSlide('prev').add(this.getSlide('next')).add(this.getSlide('active')).find('.' + this.getSettings('classes.videoWrapper')).remove();
    this.playSlideVideo();
    this.updateFooterText();
  }
});

/***/ }),

/***/ "../assets/dev/js/frontend/utils/lightbox/screenfull.js":
/*!**************************************************************!*\
  !*** ../assets/dev/js/frontend/utils/lightbox/screenfull.js ***!
  \**************************************************************/
/***/ ((module) => {

"use strict";


(function () {
  'use strict';

  var document = typeof window !== 'undefined' && typeof window.document !== 'undefined' ? window.document : {};
  var isCommonjs =  true && module.exports;

  var fn = function () {
    var val;
    var fnMap = [['requestFullscreen', 'exitFullscreen', 'fullscreenElement', 'fullscreenEnabled', 'fullscreenchange', 'fullscreenerror'], // New WebKit
    ['webkitRequestFullscreen', 'webkitExitFullscreen', 'webkitFullscreenElement', 'webkitFullscreenEnabled', 'webkitfullscreenchange', 'webkitfullscreenerror'], // Old WebKit
    ['webkitRequestFullScreen', 'webkitCancelFullScreen', 'webkitCurrentFullScreenElement', 'webkitCancelFullScreen', 'webkitfullscreenchange', 'webkitfullscreenerror'], ['mozRequestFullScreen', 'mozCancelFullScreen', 'mozFullScreenElement', 'mozFullScreenEnabled', 'mozfullscreenchange', 'mozfullscreenerror'], ['msRequestFullscreen', 'msExitFullscreen', 'msFullscreenElement', 'msFullscreenEnabled', 'MSFullscreenChange', 'MSFullscreenError']];
    var i = 0;
    var l = fnMap.length;
    var ret = {};

    for (; i < l; i++) {
      val = fnMap[i];

      if (val && val[1] in document) {
        var valLength = val.length;

        for (i = 0; i < valLength; i++) {
          ret[fnMap[0][i]] = val[i];
        }

        return ret;
      }
    }

    return false;
  }();

  var eventNameMap = {
    change: fn.fullscreenchange,
    error: fn.fullscreenerror
  };
  var screenfull = {
    request: function (element) {
      return new Promise(function (resolve, reject) {
        var onFullScreenEntered = function () {
          this.off('change', onFullScreenEntered);
          resolve();
        }.bind(this);

        this.on('change', onFullScreenEntered);
        element = element || document.documentElement;
        Promise.resolve(element[fn.requestFullscreen]()).catch(reject);
      }.bind(this));
    },
    exit: function () {
      return new Promise(function (resolve, reject) {
        if (!this.isFullscreen) {
          resolve();
          return;
        }

        var onFullScreenExit = function () {
          this.off('change', onFullScreenExit);
          resolve();
        }.bind(this);

        this.on('change', onFullScreenExit);
        Promise.resolve(document[fn.exitFullscreen]()).catch(reject);
      }.bind(this));
    },
    toggle: function (element) {
      return this.isFullscreen ? this.exit() : this.request(element);
    },
    onchange: function (callback) {
      this.on('change', callback);
    },
    onerror: function (callback) {
      this.on('error', callback);
    },
    on: function (event, callback) {
      var eventName = eventNameMap[event];

      if (eventName) {
        document.addEventListener(eventName, callback, false);
      }
    },
    off: function (event, callback) {
      var eventName = eventNameMap[event];

      if (eventName) {
        document.removeEventListener(eventName, callback, false);
      }
    },
    raw: fn
  };

  if (!fn) {
    if (isCommonjs) {
      module.exports = {
        isEnabled: false
      };
    } else {
      window.screenfull = {
        isEnabled: false
      };
    }

    return;
  }

  Object.defineProperties(screenfull, {
    isFullscreen: {
      get: function () {
        return Boolean(document[fn.fullscreenElement]);
      }
    },
    element: {
      enumerable: true,
      get: function () {
        return document[fn.fullscreenElement];
      }
    },
    isEnabled: {
      enumerable: true,
      get: function () {
        // Coerce to boolean in case of old WebKit
        return Boolean(document[fn.fullscreenEnabled]);
      }
    }
  });

  if (isCommonjs) {
    module.exports = screenfull;
  } else {
    window.screenfull = screenfull;
  }
})();

/***/ })

},
/******/ __webpack_require__ => { // webpackRuntimeModules
/******/ "use strict";
/******/ 
/******/ var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
/******/ __webpack_require__.O(0, ["frontend","frontend-modules"], () => (__webpack_exec__("../assets/dev/js/frontend/preloaded-modules.js")));
/******/ var __webpack_exports__ = __webpack_require__.O();
/******/ }
]);
//# sourceMappingURL=preloaded-modules.js.mapassets/js/editor-modules.min.js000064400000220411151327220410012533 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(()=>{var t={75453:(t,r,o)=>{t.exports=o(7421)},59396:(t,r,o)=>{t.exports=o(70157)},38401:(t,r,o)=>{t.exports=o(14710)},67394:(t,r,o)=>{t.exports=o(43153)},38923:(t,r,o)=>{t.exports=o(8531)},23587:(t,r,o)=>{t.exports=o(32622)},82055:(t,r,o)=>{t.exports=o(58535)},83452:(t,r,o)=>{t.exports=o(97220)},28274:(t,r,o)=>{t.exports=o(65135)},35657:(t,r,o)=>{t.exports=o(69591)},75499:(t,r,o)=>{t.exports=o(43094)},78282:(t,r,o)=>{t.exports=o(17641)},41281:(t,r,o)=>{t.exports=o(19103)},29363:(t,r,o)=>{t.exports=o(21114)},50093:(t,r,o)=>{t.exports=o(39871)},72292:t=>{t.exports=function _arrayLikeToArray(t,r){(null==r||r>t.length)&&(r=t.length);for(var o=0,i=new Array(r);o<r;o++)i[o]=t[o];return i},t.exports.default=t.exports,t.exports.__esModule=!0},86870:(t,r,o)=>{var i=o(59396);t.exports=function _arrayWithHoles(t){if(i(t))return t},t.exports.default=t.exports,t.exports.__esModule=!0},38852:t=>{t.exports=function _assertThisInitialized(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t},t.exports.default=t.exports,t.exports.__esModule=!0},11959:t=>{t.exports=function _classCallCheck(t,r){if(!(t instanceof r))throw new TypeError("Cannot call a class as a function")},t.exports.default=t.exports,t.exports.__esModule=!0},39041:(t,r,o)=>{var i=o(67394);function _defineProperties(t,r){for(var o=0;o<r.length;o++){var a=r[o];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),i(t,a.key,a)}}t.exports=function _createClass(t,r,o){return r&&_defineProperties(t.prototype,r),o&&_defineProperties(t,o),t},t.exports.default=t.exports,t.exports.__esModule=!0},74758:(t,r,o)=>{var i=o(41281),a=o(50093),u=o(59396),l=o(24594);t.exports=function _createForOfIteratorHelper(t,r){var o=void 0!==i&&t[a]||t["@@iterator"];if(!o){if(u(t)||(o=l(t))||r&&t&&"number"==typeof t.length){o&&(t=o);var c=0,p=function F(){};return{s:p,n:function n(){return c>=t.length?{done:!0}:{done:!1,value:t[c++]}},e:function e(t){throw t},f:p}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var d,v=!0,h=!1;return{s:function s(){o=o.call(t)},n:function n(){var t=o.next();return v=t.done,t},e:function e(t){h=!0,d=t},f:function f(){try{v||null==o.return||o.return()}finally{if(h)throw d}}}},t.exports.default=t.exports,t.exports.__esModule=!0},68537:(t,r,o)=>{var i=o(75499),a=o(44263),u=o(898),l=o(59771);t.exports=function _createSuper(t){var r=u();return function _createSuperInternal(){var o,u=a(t);if(r){var c=a(this).constructor;o=i(u,arguments,c)}else o=u.apply(this,arguments);return l(this,o)}},t.exports.default=t.exports,t.exports.__esModule=!0},18042:(t,r,o)=>{var i=o(67394);t.exports=function _defineProperty(t,r,o){return r in t?i(t,r,{value:o,enumerable:!0,configurable:!0,writable:!0}):t[r]=o,t},t.exports.default=t.exports,t.exports.__esModule=!0},76700:(t,r,o)=>{var i=o(78282),a=o(23587),u=o(49445);function _get(r,o,l){return"undefined"!=typeof Reflect&&i?(t.exports=_get=i,t.exports.default=t.exports,t.exports.__esModule=!0):(t.exports=_get=function _get(t,r,o){var i=u(t,r);if(i){var l=a(i,r);return l.get?l.get.call(o):l.value}},t.exports.default=t.exports,t.exports.__esModule=!0),_get(r,o,l||r)}t.exports=_get,t.exports.default=t.exports,t.exports.__esModule=!0},44263:(t,r,o)=>{var i=o(28274),a=o(82055);function _getPrototypeOf(r){return t.exports=_getPrototypeOf=i?a:function _getPrototypeOf(t){return t.__proto__||a(t)},t.exports.default=t.exports,t.exports.__esModule=!0,_getPrototypeOf(r)}t.exports=_getPrototypeOf,t.exports.default=t.exports,t.exports.__esModule=!0},77371:(t,r,o)=>{var i=o(38401),a=o(76870);t.exports=function _inherits(t,r){if("function"!=typeof r&&null!==r)throw new TypeError("Super expression must either be null or a function");t.prototype=i(r&&r.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),r&&a(t,r)},t.exports.default=t.exports,t.exports.__esModule=!0},67971:t=>{t.exports=function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}},t.exports.default=t.exports,t.exports.__esModule=!0},898:(t,r,o)=>{var i=o(75499);t.exports=function _isNativeReflectConstruct(){if("undefined"==typeof Reflect||!i)return!1;if(i.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(i(Boolean,[],(function(){}))),!0}catch(t){return!1}},t.exports.default=t.exports,t.exports.__esModule=!0},79968:(t,r,o)=>{var i=o(41281),a=o(50093);t.exports=function _iterableToArrayLimit(t,r){var o=null==t?null:void 0!==i&&t[a]||t["@@iterator"];if(null!=o){var u,l,c=[],p=!0,d=!1;try{for(o=o.call(t);!(p=(u=o.next()).done)&&(c.push(u.value),!r||c.length!==r);p=!0);}catch(t){d=!0,l=t}finally{try{p||null==o.return||o.return()}finally{if(d)throw l}}return c}},t.exports.default=t.exports,t.exports.__esModule=!0},39198:t=>{t.exports=function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")},t.exports.default=t.exports,t.exports.__esModule=!0},59771:(t,r,o)=>{var i=o(24596).default,a=o(38852);t.exports=function _possibleConstructorReturn(t,r){return!r||"object"!==i(r)&&"function"!=typeof r?a(t):r},t.exports.default=t.exports,t.exports.__esModule=!0},76870:(t,r,o)=>{var i=o(28274);function _setPrototypeOf(r,o){return t.exports=_setPrototypeOf=i||function _setPrototypeOf(t,r){return t.__proto__=r,t},t.exports.default=t.exports,t.exports.__esModule=!0,_setPrototypeOf(r,o)}t.exports=_setPrototypeOf,t.exports.default=t.exports,t.exports.__esModule=!0},47834:(t,r,o)=>{var i=o(86870),a=o(79968),u=o(24594),l=o(39198);t.exports=function _slicedToArray(t,r){return i(t)||a(t,r)||u(t,r)||l()},t.exports.default=t.exports,t.exports.__esModule=!0},49445:(t,r,o)=>{var i=o(44263);t.exports=function _superPropBase(t,r){for(;!Object.prototype.hasOwnProperty.call(t,r)&&null!==(t=i(t)););return t},t.exports.default=t.exports,t.exports.__esModule=!0},24596:(t,r,o)=>{var i=o(41281),a=o(50093);function _typeof(r){return"function"==typeof i&&"symbol"==typeof a?(t.exports=_typeof=function _typeof(t){return typeof t},t.exports.default=t.exports,t.exports.__esModule=!0):(t.exports=_typeof=function _typeof(t){return t&&"function"==typeof i&&t.constructor===i&&t!==i.prototype?"symbol":typeof t},t.exports.default=t.exports,t.exports.__esModule=!0),_typeof(r)}t.exports=_typeof,t.exports.default=t.exports,t.exports.__esModule=!0},24594:(t,r,o)=>{var i=o(75453),a=o(72292);t.exports=function _unsupportedIterableToArray(t,r){if(t){if("string"==typeof t)return a(t,r);var o=Object.prototype.toString.call(t).slice(8,-1);return"Object"===o&&t.constructor&&(o=t.constructor.name),"Map"===o||"Set"===o?i(t):"Arguments"===o||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o)?a(t,r):void 0}},t.exports.default=t.exports,t.exports.__esModule=!0},61909:(t,r,o)=>{"use strict";var i=o(18194).__,a=o(67394),u=o(67971);a(r,"__esModule",{value:!0}),r.default=void 0,o(99745),o(65942),o(76139),o(44321),o(64434),o(38081),o(84208);var l=u(o(38923)),c=u(o(83452)),p=u(o(35657)),d=u(o(67394)),v=u(o(74758)),h=u(o(47834)),y=u(o(11959)),g=u(o(39041)),m=u(o(38852)),_=u(o(77371)),x=u(o(68537)),b=u(o(18042)),w=u(o(42618)),C=u(o(63225)),S=function(t){(0,_.default)(Container,t);var r=(0,x.default)(Container);function Container(t){var o;if((0,y.default)(this,Container),o=r.call(this,t),(0,b.default)((0,m.default)(o),"type",void 0),(0,b.default)((0,m.default)(o),"id",void 0),(0,b.default)((0,m.default)(o),"document",void 0),(0,b.default)((0,m.default)(o),"model",void 0),(0,b.default)((0,m.default)(o),"settings",void 0),(0,b.default)((0,m.default)(o),"view",void 0),(0,b.default)((0,m.default)(o),"parent",void 0),(0,b.default)((0,m.default)(o),"children",[]),(0,b.default)((0,m.default)(o),"dynamic",void 0),(0,b.default)((0,m.default)(o),"globals",void 0),(0,b.default)((0,m.default)(o),"label",void 0),(0,b.default)((0,m.default)(o),"controls",{}),(0,b.default)((0,m.default)(o),"repeaters",{}),(0,b.default)((0,m.default)(o),"renderer",void 0),(0,b.default)((0,m.default)(o),"panel",void 0),(0,b.default)((0,m.default)(o),"placeholders",{}),o.validateArgs(t),0===(t=(0,l.default)(t)).length)throw Error("Container cannot be empty.");return t.forEach((function(t){var r=(0,h.default)(t,2),i=r[0],a=r[1];o[i]=void 0===a?o[i]:a})),void 0===o.renderer&&(o.renderer=(0,m.default)(o)),o.document||(o.document=elementor.documents.getCurrent()),o.dynamic=new Backbone.Model(o.settings.get("__dynamic__")),o.globals=new Backbone.Model(o.settings.get("__globals__")),o.panel=new C.default((0,m.default)(o)),o.initialize(),o}return(0,g.default)(Container,[{key:"initialize",value:function initialize(){this.isViewElement()&&(this.addToParent(),this.handleChildrenRecursive(),this.view.on("destroy",this.removeFromParent.bind(this))),this.handleRepeaterChildren()}},{key:"validateArgs",value:function validateArgs(t){this.requireArgumentType("type","string",t),this.requireArgumentType("id","string",t),this.requireArgumentInstance("settings",Backbone.Model,t),this.requireArgumentInstance("model",Backbone.Model,t)}},{key:"getGroupRelatedControls",value:function getGroupRelatedControls(t){var r=this,o={};return(0,c.default)(t).forEach((function(t){(0,p.default)(r.controls).forEach((function(i){var a;if(t===i.name)o[i.name]=i;else if(null!==(a=r.controls[t])&&void 0!==a&&a.groupPrefix){var u=r.controls[t].groupPrefix;i.name.toString().startsWith(u)&&(o[i.name]=i)}}))})),o}},{key:"handleChildrenRecursive",value:function handleChildrenRecursive(){var t;null!==(t=this.view.children)&&void 0!==t&&t.length?(0,p.default)(this.view.children._views).forEach((function(t){if(t.container){var r=t.container;r.parent.children&&(r.parent.children[t._index]=r),r.handleChildrenRecursive()}})):this.children=[]}},{key:"addToParent",value:function addToParent(){this.parent.children&&!this.isRepeaterItem()&&this.parent.children.splice(this.view._index,0,this)}},{key:"removeFromParent",value:function removeFromParent(){var t=this;this.parent.children&&!this.isRepeater()&&(this.parent.children=this.parent.children.filter((function(r){return r.id!==t.id})))}},{key:"handleRepeaterChildren",value:function handleRepeaterChildren(){var t=this;if((0,p.default)(this.controls).forEach((function(r){if(r.is_repeater){var o=new Backbone.Model({name:r.name});t.repeaters[r.name]=new elementorModules.editor.Container({type:Container.TYPE_REPEATER,id:r.name,model:o,settings:o,view:t.view,parent:t,label:r.label||r.name,controls:{},renderer:t.renderer}),t.settings.get(r.name).forEach((function(o,i){t.addRepeaterItem(r.name,o,i)}))}})),["widget","document"].includes(this.type)){var r=(0,p.default)(this.controls).filter((function(t){return"repeater"===t.type}));1===r.length&&(0,d.default)(this,"children",{get:function get(){return elementorCommon.helpers.softDeprecated("children","3.0.0","container.repeaters[ repeaterName ].children"),this.repeaters[r[0].name].children}})}}},{key:"addRepeaterItem",value:function addRepeaterItem(t,r,o){var a=r.get("_id");return a||(a="bc-"+elementorCommon.helpers.getUniqueId(),r.set("_id",a)),this.repeaters[t].children.splice(o,0,new elementorModules.editor.Container({type:Container.TYPE_REPEATER_ITEM,id:r.get("_id"),model:new Backbone.Model({name:t}),settings:r,view:this.view,parent:this.repeaters[t],label:this.label+" "+i("Item","elementor"),controls:r.options.controls,renderer:this.renderer})),this.repeaters[t]}},{key:"lookup",value:function lookup(){var t,r=this;if(!this.renderer)return this;if(this!==this.renderer&&null!==(t=this.renderer.view)&&void 0!==t&&t.isDisconnected&&this.renderer.view.isDisconnected()&&(this.renderer=this.renderer.lookup()),void 0===this.view||!this.view.lookup||!this.view.isDisconnected())return Container.TYPE_REPEATER_ITEM===this.type&&(this.settings=this.parent.parent.settings.get(this.model.get("name")).findWhere({_id:this.id})),r;var lookup=this.view.lookup();if(lookup){if(r=lookup.getContainer(),Container.REPEATER===this.type)return this.settings=r.settings.get(this.model.get("name")).findWhere({_id:this.id}),this;r.parent.children&&(r.parent.children[r.view._index]=r)}return r}},{key:"findChildrenRecursive",value:function findChildrenRecursive(t){if(t(this))return this;if(this.children.length){var r,o=(0,v.default)(this.children);try{for(o.s();!(r=o.n()).done;){var i=r.value.findChildrenRecursive(t);if(i)return i}}catch(t){o.e(t)}finally{o.f()}}return!1}},{key:"forEachChildrenRecursive",value:function forEachChildrenRecursive(t){if(t(this),this.children.length){var r,o=(0,v.default)(this.children);try{for(o.s();!(r=o.n()).done;){r.value.forEachChildrenRecursive(t)}}catch(t){o.e(t)}finally{o.f()}}return!1}},{key:"render",value:function render(){this.renderer&&this.renderer.view.renderOnChange(this.settings)}},{key:"renderUI",value:function renderUI(){this.renderer&&this.renderer.view.renderUI()}},{key:"isEditable",value:function isEditable(){return"edit"===elementor.channels.dataEditMode.request("activeMode")&&"open"===this.document.editor.status}},{key:"isDesignable",value:function isDesignable(){return elementor.userCan("design")&&this.isEditable()}},{key:"isRepeater",value:function isRepeater(){return Container.TYPE_REPEATER===this.type}},{key:"isRepeaterItem",value:function isRepeaterItem(){return Container.TYPE_REPEATER_ITEM===this.type}},{key:"isViewElement",value:function isViewElement(){return this.view&&this.model.get("elType")}},{key:"getSetting",value:function getSetting(t){var r,o=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=this.settings.get(t);return o?i:(this.getGlobalKey(t)&&(r=this.getGlobalValue(t)),r||i||this.getGlobalDefault(t))}},{key:"getGlobalKey",value:function getGlobalKey(t){return this.globals.get(t)}},{key:"getGlobalValue",value:function getGlobalValue(t){var r=this.controls[t],o=this.getGlobalKey(t),i=$e.data.commandExtractArgs(o),a=$e.data.getCache($e.components.get("globals"),i.command,i.args.query);if(null!=a&&a.value){var u,l=a.id;if(r.groupType){var c=elementor.breakpoints.getActiveMatchRegex(),p=r.name.replace(r.groupPrefix,"").replace(c,"");if(!a.value[elementor.config.kit_config.typography_prefix+p])return;p=p.replace("_","-"),u="var( --e-global-".concat(r.groupType,"-").concat(l,"-").concat(p," )"),elementor.config.ui.defaultGenericFonts&&r.groupPrefix+"font_family"===r.name&&(u+=", ".concat(elementor.config.ui.defaultGenericFonts))}else u="var( --e-global-".concat(r.type,"-").concat(l," )");return u}}},{key:"isGlobalApplied",value:function isGlobalApplied(t){return this.getSetting(t)!==this.settings.get(t)}},{key:"getGlobalDefault",value:function getGlobalDefault(t){var r,o=null===(r=this.controls[t])||void 0===r?void 0:r.global;if(null!=o&&o.default){var i=this.controls[t].type;if("color"===i&&(i="colors"),!elementor.config.globals.defaults_enabled[i])return"";var a=$e.data.commandExtractArgs(o.default),u=a.command,l=a.args,c=$e.data.getCache($e.components.get("globals"),u,l.query);return null==c?void 0:c.value}return""}}]),Container}(w.default);r.default=S,(0,b.default)(S,"TYPE_REPEATER","repeater-control"),(0,b.default)(S,"TYPE_REPEATER_ITEM","repeater")},63225:(t,r,o)=>{"use strict";var i=o(67394),a=o(67971);i(r,"__esModule",{value:!0}),r.default=void 0;var u=a(o(11959)),l=a(o(39041)),c=function(){function Panel(t){(0,u.default)(this,Panel),this.container=t}return(0,l.default)(Panel,[{key:"refresh",value:function refresh(){$e.routes.isPartOf("panel/editor")&&$e.routes.refreshContainer("panel")}},{key:"closeEditor",value:function closeEditor(){$e.route("panel/elements/categories")}},{key:"getControlView",value:function getControlView(t){return elementor.getPanelView().getCurrentPageView().children.findByModelCid(this.getControlModel(t).cid)}},{key:"getControlModel",value:function getControlModel(t){return elementor.getPanelView().getCurrentPageView().collection.findWhere({name:t})}}]),Panel}();r.default=c},59472:(t,r,o)=>{"use strict";var i,a=o(67971),u=a(o(35657)),l=a(o(24596));o(99745),o(90286),o(64434),o(71954),i=Backbone.Model.extend({options:{},initialize:function initialize(t,r){var o=this;if(o.options=r,o.controls=elementor.mergeControlsSettings(r.controls),o.validators={},o.controls){var i=t||{},a={};_.each(o.controls,(function(t){if(!(t.features&&-1!==t.features.indexOf("ui"))){var r=t.name;"object"===(0,l.default)(t.default)?a[r]=elementorCommon.helpers.cloneObject(t.default):a[r]=t.default;var u=t.dynamic&&t.dynamic.active,c=u&&i.__dynamic__&&i.__dynamic__[r];u&&!c&&t.dynamic.default&&(i.__dynamic__||(i.__dynamic__={}),i.__dynamic__[r]=t.dynamic.default,c=!0);var p=jQuery.isPlainObject(t.default);void 0===i[r]||!p||_.isObject(i[r])||c||(elementorCommon.debug.addCustomError(new TypeError("An invalid argument supplied as multiple control value"),"InvalidElementData","Element `"+(o.get("widgetType")||o.get("elType"))+"` got <"+i[r]+"> as `"+r+"` value. Expected array or object."),delete i[r]),void 0===i[r]&&(i[r]=a[r])}})),o.defaults=a,o.handleRepeaterData(i),o.set(i)}},handleRepeaterData:function handleRepeaterData(t){_.each(this.controls,(function(r){r.is_repeater&&(t[r.name]instanceof Backbone.Collection||(t[r.name]=new Backbone.Collection(t[r.name],{model:function model(t,o){return(o=o||{}).controls={},(0,u.default)(r.fields).map((function(t){o.controls[t.name]=t})),t._id||(t._id=elementorCommon.helpers.getUniqueId()),new i(t,o)}})))}))},getFontControls:function getFontControls(){return this.getControlsByType("font")},getIconsControls:function getIconsControls(){return this.getControlsByType("icons")},getControlsByType:function getControlsByType(t){return _.filter(this.getActiveControls(),(function(r){return t===r.type}))},getStyleControls:function getStyleControls(t,r){var o=this;t=elementorCommon.helpers.cloneObject(o.getActiveControls(t,r));var i=[];return jQuery.each(t,(function(){var r,a=this,u=elementor.config.controls[a.type];if((a=jQuery.extend({},u,a)).fields){var l=[];o.attributes[a.name].each((function(t){l.push(o.getStyleControls(a.fields,t.attributes))})),a.styleFields=l}(a.fields||null!==(r=a.dynamic)&&void 0!==r&&r.active||o.isGlobalControl(a,t)||o.isStyleControl(a.name,t))&&i.push(a)})),i},isGlobalControl:function isGlobalControl(t,r){var o,i,a=t.name;return t.groupType&&(a=t.groupPrefix+t.groupType),!(null===(o=r[a].global)||void 0===o||!o.active)&&!!(null===(i=this.attributes.__globals__)||void 0===i?void 0:i[a])},isStyleControl:function isStyleControl(t,r){r=r||this.controls;var o=_.find(r,(function(r){return t===r.name}));return o&&!_.isEmpty(o.selectors)},getClassControls:function getClassControls(t){return t=t||this.controls,_.filter(t,(function(t){return!_.isUndefined(t.prefix_class)}))},isClassControl:function isClassControl(t){var r=_.find(this.controls,(function(r){return t===r.name}));return r&&!_.isUndefined(r.prefix_class)},getControl:function getControl(t){return _.find(this.controls,(function(r){return t===r.name}))},getActiveControls:function getActiveControls(t,r){var o={};return t||(t=this.controls),r||(r=this.attributes),r=this.parseGlobalSettings(r,t),jQuery.each(t,(function(t,i){elementor.helpers.isActiveControl(i,r)&&(o[t]=i)})),o},clone:function clone(){return new i(elementorCommon.helpers.cloneObject(this.attributes),elementorCommon.helpers.cloneObject(this.options))},setExternalChange:function setExternalChange(t,r){var o,i=this;"object"===(0,l.default)(t)?o=t:(o={})[t]=r,i.set(o),jQuery.each(o,(function(t,r){i.trigger("change:external:"+t,r)}))},parseDynamicSettings:function parseDynamicSettings(t,r,o){var i=this;return t=elementorCommon.helpers.cloneObject(t||i.attributes),r=r||{},o=o||this.controls,jQuery.each(o,(function(){var o,a=this;if(a.is_repeater)(o=t[a.name]).forEach((function(t,u){o[u]=i.parseDynamicSettings(t,r,a.fields)}));else if(o=t.__dynamic__&&t.__dynamic__[a.name]){var u=a.dynamic;if(void 0===u&&(u=elementor.config.controls[a.type].dynamic),u&&u.active){var l;try{l=elementor.dynamicTags.parseTagsText(o,u,elementor.dynamicTags.getTagDataContent)}catch(t){if(elementor.dynamicTags.CACHE_KEY_NOT_FOUND_ERROR!==t.message)throw t;l="",r.onServerRequestStart&&r.onServerRequestStart(),elementor.dynamicTags.refreshCacheFromServer((function(){r.onServerRequestEnd&&r.onServerRequestEnd()}))}u.property?t[a.name][u.property]=l:t[a.name]=l}}})),t},parseGlobalSettings:function parseGlobalSettings(t,r){var o=this;return t=elementorCommon.helpers.cloneObject(t),r=r||this.controls,jQuery.each(r,(function(r,i){var a,u,l;if(i.is_repeater)(l=t[i.name]).forEach((function(t,r){l[r]=o.parseGlobalSettings(t,i.fields)}));else if(l=null===(a=t.__globals__)||void 0===a?void 0:a[i.name]){var c=i.global;if(void 0===c&&(c=elementor.config.controls[i.type].global),null!==(u=c)&&void 0!==u&&u.active){var p=$e.data.commandExtractArgs(l),d=p.command,v=p.args,h=$e.data.getCache($e.components.get("globals"),d,v.query);i.groupType?t[i.name]="custom":t[i.name]=h}}})),t},removeDataDefaults:function removeDataDefaults(t,r){var o=this;jQuery.each(t,(function(i){var a=r[i];a&&(a.save_default||("text"===a.type||"textarea"===a.type)&&t[i]||(a.is_repeater?t[i].forEach((function(t){o.removeDataDefaults(t,a.fields)})):_.isEqual(t[i],a.default)&&delete t[i]))}))},toJSON:function toJSON(t){var r=Backbone.Model.prototype.toJSON.call(this);return t=t||{},delete r.widgetType,delete r.elType,delete r.isInner,_.each(r,(function(t,o){t&&t.toJSON&&(r[o]=t.toJSON())})),t.remove&&-1!==t.remove.indexOf("default")&&this.removeDataDefaults(r,this.controls),elementorCommon.helpers.cloneObject(r)}}),t.exports=i},10367:(t,r,o)=>{"use strict";var i;o(64434),o(71954),i=Marionette.Behavior.extend({onRenderCollection:function onRenderCollection(){this.handleInnerTabs(this.view)},handleInnerTabs:function handleInnerTabs(t){var r=t.children.filter((function(t){return"tabs"===t.model.get("type")}));_.each(r,(function(r){r.$el.find(".elementor-control-content").remove();var o=r.model.get("name"),i=t.children.filter((function(t){return"tab"===t.model.get("type")&&t.model.get("tabs_wrapper")===o}));_.each(i,(function(o,i){r._addChildView(o);var a=o.model.get("name"),u=t.children.filter((function(t){return a===t.model.get("inner_tab")}));0===i?o.$el.addClass("elementor-tab-active"):_.each(u,(function(t){t.$el.addClass("elementor-tab-close")}))}))}))},onChildviewControlTabClicked:function onChildviewControlTabClicked(t){var r="elementor-tab-close",o="elementor-tab-active",i=t.model.get("name"),a=this.view.children.filter((function(r){return"tab"!==r.model.get("type")&&t.model.get("tabs_wrapper")===r.model.get("tabs_wrapper")})),u=this.view.children.filter((function(r){return"tab"===r.model.get("type")&&t.model.get("tabs_wrapper")===r.model.get("tabs_wrapper")}));_.each(u,(function(t){t.$el.removeClass(o)})),t.$el.addClass(o),_.each(a,(function(t){t.model.get("inner_tab")===i?t.$el.removeClass(r):t.$el.addClass(r)})),elementor.getPanelView().updateScrollbar()}}),t.exports=i},93103:(t,r,o)=>{"use strict";var i=o(67394),a=o(67971);i(r,"__esModule",{value:!0}),r.default=void 0;var u=a(o(11959)),l=a(o(39041)),c=a(o(77371)),p=a(o(68537)),d=function(t){(0,c.default)(_default,t);var r=(0,p.default)(_default);function _default(){var t;(0,u.default)(this,_default);for(var o=arguments.length,i=new Array(o),a=0;a<o;a++)i[a]=arguments[a];return(t=r.call.apply(r,[this].concat(i))).initDialog(),t}return(0,l.default)(_default,[{key:"getDefaultSettings",value:function getDefaultSettings(){return{dialogType:"buttons",dialogOptions:{effects:{hide:"hide",show:"show"},hide:{onBackgroundClick:!1}}}}},{key:"initDialog",value:function initDialog(){var t,r=this;this.getDialog=function(){if(!t){var o=r.getSettings();t=elementorCommon.dialogsManager.createWidget(o.dialogType,o.dialogOptions),o.onDialogInitCallback&&o.onDialogInitCallback.call(r,t)}return t}}},{key:"show",value:function show(t){if(!this.introductionViewed){var r=this.getDialog();t&&r.setSettings("position",{of:t}),r.show()}}},{key:"setViewed",value:function setViewed(){this.introductionViewed=!0,elementorCommon.ajax.addRequest("introduction_viewed",{data:{introductionKey:this.getSettings("introductionKey")}})}}]),_default}(elementorModules.Module);r.default=d},4746:t=>{"use strict";var r=elementorModules.Module.extend({onInit:function onInit(){var t=this,r=jQuery(window);r.on("elementor:init-components",this.onElementorInitComponents.bind(this)),r.on("elementor:loaded",(function(){t.onElementorLoaded(),elementor.on("document:loaded",t.onDocumentLoaded.bind(t))})),r.on("elementor:init",this.onElementorReady)},getEditorControlView:function getEditorControlView(t){return elementor.getPanelView().getCurrentPageView().children.findByModelCid(this.getEditorControlModel(t).cid)},getEditorControlModel:function getEditorControlModel(t){return elementor.getPanelView().getCurrentPageView().collection.findWhere({name:t})},onElementorReady:function onElementorReady(){this.onElementorInit(),elementor.on("frontend:init",this.onElementorFrontendInit.bind(this)).on("preview:loaded",this.onElementorPreviewLoaded.bind(this))}});r.prototype.onElementorLoaded=function(){},r.prototype.onElementorInit=function(){},r.prototype.onElementorPreviewLoaded=function(){},r.prototype.onDocumentLoaded=function(){},r.prototype.onElementorFrontendInit=function(){},r.prototype.onElementorInitComponents=function(){},t.exports=r},59010:(t,r,o)=>{"use strict";var i=o(18194).__,a=o(67394),u=o(67971);a(r,"__esModule",{value:!0}),r.default=void 0,o(71954);var l=u(o(18042)),c=u(o(11959)),p=u(o(39041)),d=function(){function ControlsPopover(t){(0,c.default)(this,ControlsPopover),this.child=t,this.$popover=jQuery("<div>",{class:"elementor-controls-popover"}),t.$el.before(this.$popover),this.$popover.append(t.$el),this.popoverToggleView=t._parent.children.findByIndex(t._index-1),"typography"===this.child.model.attributes.groupType&&this.createPopoverHeader()}return(0,p.default)(ControlsPopover,[{key:"addChild",value:function addChild(t){this.$popover.append(t.$el)}},{key:"createPopoverHeader",value:function createPopoverHeader(){var t=this,r=this.$popover.prev().find(".elementor-control-popover-toggle-reset-label");this.$popoverHeader=jQuery("<div>",{class:"e-group-control-header"}).html("<span>"+i("Typography","elementor")+"</span>"),this.$headerControlsWrapper=jQuery("<div>",{class:"e-control-tools"}),r.addClass("e-control-tool").on("click",(function(){return t.onResetButtonClick()})),this.$headerControlsWrapper.append(r),this.$popoverHeader.append(this.$headerControlsWrapper);var o=this.popoverToggleView.model.get("global");null!=o&&o.active&&this.createAddButton(),this.$popover.prepend(this.$popoverHeader).addClass("e-controls-popover--typography")}},{key:"onResetButtonClick",value:function onResetButtonClick(){this.$popover.hide();var t=this.child.model.get("groupPrefix")+"typography",r={container:this.child.options.container,settings:(0,l.default)({},t,"")};this.child.options.container.globals.get(t)?$e.run("document/globals/disable",r):$e.run("document/elements/settings",r)}},{key:"onAddButtonClick",value:function onAddButtonClick(){this.popoverToggleView.onAddGlobalButtonClick()}},{key:"createAddButton",value:function createAddButton(){var t=this;this.$addButton=jQuery("<button>",{class:"e-control-tool"}).html(jQuery("<i>",{class:"eicon-plus"})),this.$headerControlsWrapper.append(this.$addButton),this.$addButton.on("click",(function(){return t.onAddButtonClick()})),this.$addButton.tipsy({title:function title(){return i("Create New Global Font","elementor")},gravity:function gravity(){return"s"}})}},{key:"destroy",value:function destroy(){this.$popover.remove()}}]),ControlsPopover}();r.default=d},99533:(t,r,o)=>{"use strict";var i=o(67971);o(76139),o(12897),o(93085),o(64434);var a,u=i(o(59010));a=Marionette.CompositeView.extend({classes:{popover:"elementor-controls-popover"},activeTab:null,activeSection:null,className:function className(){return"elementor-controls-stack"},templateHelpers:function templateHelpers(){return{elementData:elementor.getElementData(this.model)}},childViewOptions:function childViewOptions(){return{elementSettingsModel:this.model}},ui:function ui(){return{tabs:".elementor-panel-navigation-tab",reloadButton:".elementor-update-preview-button"}},events:function events(){return{"click @ui.reloadButton":"onReloadButtonClick"}},modelEvents:{destroy:"onModelDestroy"},behaviors:{HandleInnerTabs:{behaviorClass:o(10367)}},initialize:function initialize(t){this.initCollection(),t.tab&&(this.activeTab=t.tab,this.activateFirstSection()),this.listenTo(elementor.channels.deviceMode,"change",this.onDeviceModeChange)},initCollection:function initCollection(){this.collection=new Backbone.Collection(_.values(elementor.mergeControlsSettings(this.getOption("controls"))))},filter:function filter(t){if(t.get("tab")!==this.activeTab)return!1;if("section"===t.get("type"))return!0;var r=t.get("section");return!r||r===this.activeSection},getControlViewByModel:function getControlViewByModel(t){return this.children.findByModelCid(t.cid)},getControlViewByName:function getControlViewByName(t){return this.getControlViewByModel(this.getControlModel(t))},getControlModel:function getControlModel(t){return this.collection.findWhere({name:t})},isVisibleSectionControl:function isVisibleSectionControl(t){return this.activeTab===t.get("tab")},activateTab:function activateTab(t){return this.activeTab=t,this.activateFirstSection(),this._renderChildren(),this},activateSection:function activateSection(t){return this.activeSection=t,this},activateFirstSection:function activateFirstSection(){var t,r=this,o=r.collection.filter((function(t){return"section"===t.get("type")&&r.isVisibleSectionControl(t)}));if(o[0]?t=o[0].get("name"):(r.activeSection=null,t=null),!o.filter((function(t){return r.activeSection===t.get("name")}))[0])return r.activateSection(t),this},getChildView:function getChildView(t){var r=t.get("type");return elementor.getControlView(r)},getNamespaceArray:function getNamespaceArray(){return[elementor.getPanelView().getCurrentPageName()]},openActiveSection:function openActiveSection(){var t=this.activeSection,r=this.children.filter((function(r){return t===r.model.get("name")}));if(r[0]){r[0].$el.addClass("elementor-open");var o=this.getNamespaceArray();o.push(t,"activated"),elementor.channels.editor.trigger(o.join(":"),this)}},onRenderCollection:function onRenderCollection(){this.openActiveSection(),a.handlePopovers(this)},onModelDestroy:function onModelDestroy(){this.destroy()},onReloadButtonClick:function onReloadButtonClick(){elementor.reloadPreview()},onDeviceModeChange:function onDeviceModeChange(){"desktop"===elementor.channels.deviceMode.request("currentMode")&&this.$el.removeClass("elementor-responsive-switchers-open")},onChildviewControlSectionClicked:function onChildviewControlSectionClicked(t){var r=t.$el.hasClass("elementor-open");this.activateSection(r?null:t.model.get("name")),this._renderChildren()},onChildviewResponsiveSwitcherClick:function onChildviewResponsiveSwitcherClick(t,r){"desktop"===r&&this.$el.toggleClass("elementor-responsive-switchers-open")}},{handlePopovers:function handlePopovers(t){var r;t.popovers=[],this.removePopovers(t),t.children.each((function(o){r&&r.addChild(o);var i=o.model.get("popover");i&&(i.start&&(r=new u.default(o),t.popovers.push(r)),i.end&&(r=null))}))},removePopovers:function removePopovers(t){t.popovers.forEach((function(t){return t.destroy()}))}}),t.exports=a},42618:(t,r,o)=>{"use strict";var i=o(67394),a=o(67971);i(r,"__esModule",{value:!0}),r.default=void 0;var u=a(o(24596)),l=a(o(11959)),c=a(o(39041)),p=a(o(77371)),d=a(o(68537)),v=function(t){(0,p.default)(ArgsObject,t);var r=(0,d.default)(ArgsObject);function ArgsObject(t){var o;return(0,l.default)(this,ArgsObject),(o=r.call(this)).args=t,o}return(0,c.default)(ArgsObject,[{key:"requireArgument",value:function requireArgument(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.args;if(!r.hasOwnProperty(t))throw Error("".concat(t," is required."))}},{key:"requireArgumentType",value:function requireArgumentType(t,r){var o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.args;if(this.requireArgument(t,o),(0,u.default)(o[t])!==r)throw Error("".concat(t," invalid type: ").concat(r,"."))}},{key:"requireArgumentInstance",value:function requireArgumentInstance(t,r){var o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.args;if(this.requireArgument(t,o),!(o[t]instanceof r))throw Error("".concat(t," invalid instance."))}},{key:"requireArgumentConstructor",value:function requireArgumentConstructor(t,r){var o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.args;if(this.requireArgument(t,o),o[t].constructor!==r)throw Error("".concat(t," invalid constructor type."))}}],[{key:"getInstanceType",value:function getInstanceType(){return"ArgsObject"}}]),ArgsObject}(a(o(27597)).default);r.default=v},27597:(t,r,o)=>{"use strict";var i=o(67394),a=o(67971);i(r,"__esModule",{value:!0}),r.default=void 0;var u=a(o(29363)),l=a(o(59396));o(99745);var c=a(o(11959)),p=a(o(39041)),d=a(o(76700)),v=a(o(44263)),h=function(){function InstanceType(){var t=this;(0,c.default)(this,InstanceType);for(var r=this instanceof InstanceType?this.constructor:void 0,o=[];r.__proto__&&r.__proto__.name;)o.push(r.__proto__),r=r.__proto__;o.reverse().forEach((function(r){return t instanceof r}))}return(0,p.default)(InstanceType,null,[{key:u.default,value:function value(t){var r=(0,d.default)((0,v.default)(InstanceType),u.default,this).call(this,t);if(t&&!t.constructor.getInstanceType)return r;if(t&&(t.instanceTypes||(t.instanceTypes=[]),r||this.getInstanceType()===t.constructor.getInstanceType()&&(r=!0),r)){var o=this.getInstanceType===InstanceType.getInstanceType?"BaseInstanceType":this.getInstanceType();-1===t.instanceTypes.indexOf(o)&&t.instanceTypes.push(o)}return!r&&t&&(r=t.instanceTypes&&(0,l.default)(t.instanceTypes)&&-1!==t.instanceTypes.indexOf(this.getInstanceType())),r}},{key:"getInstanceType",value:function getInstanceType(){elementorModules.ForceMethodImplementation()}}]),InstanceType}();r.default=h},7421:(t,r,o)=>{o(99572),o(37627),t.exports=o(47208).Array.from},70157:(t,r,o)=>{o(42580),t.exports=o(47208).Array.isArray},14710:(t,r,o)=>{o(30785);var i=o(47208).Object;t.exports=function create(t,r){return i.create(t,r)}},43153:(t,r,o)=>{o(40168);var i=o(47208).Object;t.exports=function defineProperty(t,r,o){return i.defineProperty(t,r,o)}},8531:(t,r,o)=>{o(95260),t.exports=o(47208).Object.entries},32622:(t,r,o)=>{o(18576);var i=o(47208).Object;t.exports=function getOwnPropertyDescriptor(t,r){return i.getOwnPropertyDescriptor(t,r)}},58535:(t,r,o)=>{o(4840),t.exports=o(47208).Object.getPrototypeOf},97220:(t,r,o)=>{o(5453),t.exports=o(47208).Object.keys},65135:(t,r,o)=>{o(13890),t.exports=o(47208).Object.setPrototypeOf},69591:(t,r,o)=>{o(57188),t.exports=o(47208).Object.values},43094:(t,r,o)=>{o(11320),t.exports=o(47208).Reflect.construct},17641:(t,r,o)=>{o(36600),t.exports=o(47208).Reflect.get},21114:(t,r,o)=>{o(78760),t.exports=o(7273).f("hasInstance")},19103:(t,r,o)=>{o(54370),o(70285),o(87573),o(97224),t.exports=o(47208).Symbol},39871:(t,r,o)=>{o(99572),o(74114),t.exports=o(7273).f("iterator")},26610:t=>{t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},29697:t=>{t.exports=function(){}},30498:(t,r,o)=>{var i=o(39632);t.exports=function(t){if(!i(t))throw TypeError(t+" is not an object!");return t}},69191:(t,r,o)=>{var i=o(1504),a=o(37154),u=o(46723);t.exports=function(t){return function(r,o,l){var c,p=i(r),d=a(p.length),v=u(l,d);if(t&&o!=o){for(;d>v;)if((c=p[v++])!=c)return!0}else for(;d>v;v++)if((t||v in p)&&p[v]===o)return t||v||0;return!t&&-1}}},45515:(t,r,o)=>{"use strict";var i=o(26610),a=o(39632),u=o(19897),l=[].slice,c={},construct=function(t,r,o){if(!(r in c)){for(var i=[],a=0;a<r;a++)i[a]="a["+a+"]";c[r]=Function("F,a","return new F("+i.join(",")+")")}return c[r](t,o)};t.exports=Function.bind||function bind(t){var r=i(this),o=l.call(arguments,1),bound=function(){var i=o.concat(l.call(arguments));return this instanceof bound?construct(r,i.length,i):u(r,i,t)};return a(r.prototype)&&(bound.prototype=r.prototype),bound}},8312:(t,r,o)=>{var i=o(41352),a=o(24300)("toStringTag"),u="Arguments"==i(function(){return arguments}());t.exports=function(t){var r,o,l;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(o=function(t,r){try{return t[r]}catch(t){}}(r=Object(t),a))?o:u?i(r):"Object"==(l=i(r))&&"function"==typeof r.callee?"Arguments":l}},41352:t=>{var r={}.toString;t.exports=function(t){return r.call(t).slice(8,-1)}},47208:t=>{var r=t.exports={version:"2.6.12"};"number"==typeof __e&&(__e=r)},87352:(t,r,o)=>{"use strict";var i=o(60510),a=o(48439);t.exports=function(t,r,o){r in t?i.f(t,r,a(0,o)):t[r]=o}},61725:(t,r,o)=>{var i=o(26610);t.exports=function(t,r,o){if(i(t),void 0===r)return t;switch(o){case 1:return function(o){return t.call(r,o)};case 2:return function(o,i){return t.call(r,o,i)};case 3:return function(o,i,a){return t.call(r,o,i,a)}}return function(){return t.apply(r,arguments)}}},18239:t=>{t.exports=function(t){if(null==t)throw TypeError("Can't call method on  "+t);return t}},75179:(t,r,o)=>{t.exports=!o(90472)((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},48765:(t,r,o)=>{var i=o(39632),a=o(43280).document,u=i(a)&&i(a.createElement);t.exports=function(t){return u?a.createElement(t):{}}},31986:t=>{t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},42266:(t,r,o)=>{var i=o(86425),a=o(97739),u=o(67410);t.exports=function(t){var r=i(t),o=a.f;if(o)for(var l,c=o(t),p=u.f,d=0;c.length>d;)p.call(t,l=c[d++])&&r.push(l);return r}},98310:(t,r,o)=>{var i=o(43280),a=o(47208),u=o(61725),l=o(62292),c=o(20657),$export=function(t,r,o){var p,d,v,h=t&$export.F,y=t&$export.G,g=t&$export.S,m=t&$export.P,_=t&$export.B,x=t&$export.W,b=y?a:a[r]||(a[r]={}),w=b.prototype,C=y?i:g?i[r]:(i[r]||{}).prototype;for(p in y&&(o=r),o)(d=!h&&C&&void 0!==C[p])&&c(b,p)||(v=d?C[p]:o[p],b[p]=y&&"function"!=typeof C[p]?o[p]:_&&d?u(v,i):x&&C[p]==v?function(t){var F=function(r,o,i){if(this instanceof t){switch(arguments.length){case 0:return new t;case 1:return new t(r);case 2:return new t(r,o)}return new t(r,o,i)}return t.apply(this,arguments)};return F.prototype=t.prototype,F}(v):m&&"function"==typeof v?u(Function.call,v):v,m&&((b.virtual||(b.virtual={}))[p]=v,t&$export.R&&w&&!w[p]&&l(w,p,v)))};$export.F=1,$export.G=2,$export.S=4,$export.P=8,$export.B=16,$export.W=32,$export.U=64,$export.R=128,t.exports=$export},90472:t=>{t.exports=function(t){try{return!!t()}catch(t){return!0}}},43280:t=>{var r=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=r)},20657:t=>{var r={}.hasOwnProperty;t.exports=function(t,o){return r.call(t,o)}},62292:(t,r,o)=>{var i=o(60510),a=o(48439);t.exports=o(75179)?function(t,r,o){return i.f(t,r,a(1,o))}:function(t,r,o){return t[r]=o,t}},92477:(t,r,o)=>{var i=o(43280).document;t.exports=i&&i.documentElement},64457:(t,r,o)=>{t.exports=!o(75179)&&!o(90472)((function(){return 7!=Object.defineProperty(o(48765)("div"),"a",{get:function(){return 7}}).a}))},19897:t=>{t.exports=function(t,r,o){var i=void 0===o;switch(r.length){case 0:return i?t():t.call(o);case 1:return i?t(r[0]):t.call(o,r[0]);case 2:return i?t(r[0],r[1]):t.call(o,r[0],r[1]);case 3:return i?t(r[0],r[1],r[2]):t.call(o,r[0],r[1],r[2]);case 4:return i?t(r[0],r[1],r[2],r[3]):t.call(o,r[0],r[1],r[2],r[3])}return t.apply(o,r)}},13115:(t,r,o)=>{var i=o(41352);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==i(t)?t.split(""):Object(t)}},11827:(t,r,o)=>{var i=o(79105),a=o(24300)("iterator"),u=Array.prototype;t.exports=function(t){return void 0!==t&&(i.Array===t||u[a]===t)}},7359:(t,r,o)=>{var i=o(41352);t.exports=Array.isArray||function isArray(t){return"Array"==i(t)}},39632:t=>{t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},93086:(t,r,o)=>{var i=o(30498);t.exports=function(t,r,o,a){try{return a?r(i(o)[0],o[1]):r(o)}catch(r){var u=t.return;throw void 0!==u&&i(u.call(t)),r}}},19802:(t,r,o)=>{"use strict";var i=o(82488),a=o(48439),u=o(2413),l={};o(62292)(l,o(24300)("iterator"),(function(){return this})),t.exports=function(t,r,o){t.prototype=i(l,{next:a(1,o)}),u(t,r+" Iterator")}},6125:(t,r,o)=>{"use strict";var i=o(36794),a=o(98310),u=o(19312),l=o(62292),c=o(79105),p=o(19802),d=o(2413),v=o(999),h=o(24300)("iterator"),y=!([].keys&&"next"in[].keys()),g="keys",m="values",returnThis=function(){return this};t.exports=function(t,r,o,_,x,b,w){p(o,r,_);var C,S,O,getMethod=function(t){if(!y&&t in k)return k[t];switch(t){case g:return function keys(){return new o(this,t)};case m:return function values(){return new o(this,t)}}return function entries(){return new o(this,t)}},E=r+" Iterator",P=x==m,T=!1,k=t.prototype,M=k[h]||k["@@iterator"]||x&&k[x],A=M||getMethod(x),j=x?P?getMethod("entries"):A:void 0,R="Array"==r&&k.entries||M;if(R&&(O=v(R.call(new t)))!==Object.prototype&&O.next&&(d(O,E,!0),i||"function"==typeof O[h]||l(O,h,returnThis)),P&&M&&M.name!==m&&(T=!0,A=function values(){return M.call(this)}),i&&!w||!y&&!T&&k[h]||l(k,h,A),c[r]=A,c[E]=returnThis,x)if(C={values:P?A:getMethod(m),keys:b?A:getMethod(g),entries:j},w)for(S in C)S in k||u(k,S,C[S]);else a(a.P+a.F*(y||T),r,C);return C}},26797:(t,r,o)=>{var i=o(24300)("iterator"),a=!1;try{var u=[7][i]();u.return=function(){a=!0},Array.from(u,(function(){throw 2}))}catch(t){}t.exports=function(t,r){if(!r&&!a)return!1;var o=!1;try{var u=[7],l=u[i]();l.next=function(){return{done:o=!0}},u[i]=function(){return l},t(u)}catch(t){}return o}},9329:t=>{t.exports=function(t,r){return{value:r,done:!!t}}},79105:t=>{t.exports={}},36794:t=>{t.exports=!0},6758:(t,r,o)=>{var i=o(54251)("meta"),a=o(39632),u=o(20657),l=o(60510).f,c=0,p=Object.isExtensible||function(){return!0},d=!o(90472)((function(){return p(Object.preventExtensions({}))})),setMeta=function(t){l(t,i,{value:{i:"O"+ ++c,w:{}}})},v=t.exports={KEY:i,NEED:!1,fastKey:function(t,r){if(!a(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!u(t,i)){if(!p(t))return"F";if(!r)return"E";setMeta(t)}return t[i].i},getWeak:function(t,r){if(!u(t,i)){if(!p(t))return!0;if(!r)return!1;setMeta(t)}return t[i].w},onFreeze:function(t){return d&&v.NEED&&p(t)&&!u(t,i)&&setMeta(t),t}}},82488:(t,r,o)=>{var i=o(30498),a=o(36607),u=o(31986),l=o(18478)("IE_PROTO"),Empty=function(){},createDict=function(){var t,r=o(48765)("iframe"),i=u.length;for(r.style.display="none",o(92477).appendChild(r),r.src="javascript:",(t=r.contentWindow.document).open(),t.write("<script>document.F=Object<\/script>"),t.close(),createDict=t.F;i--;)delete createDict.prototype[u[i]];return createDict()};t.exports=Object.create||function create(t,r){var o;return null!==t?(Empty.prototype=i(t),o=new Empty,Empty.prototype=null,o[l]=t):o=createDict(),void 0===r?o:a(o,r)}},60510:(t,r,o)=>{var i=o(30498),a=o(64457),u=o(12737),l=Object.defineProperty;r.f=o(75179)?Object.defineProperty:function defineProperty(t,r,o){if(i(t),r=u(r,!0),i(o),a)try{return l(t,r,o)}catch(t){}if("get"in o||"set"in o)throw TypeError("Accessors not supported!");return"value"in o&&(t[r]=o.value),t}},36607:(t,r,o)=>{var i=o(60510),a=o(30498),u=o(86425);t.exports=o(75179)?Object.defineProperties:function defineProperties(t,r){a(t);for(var o,l=u(r),c=l.length,p=0;c>p;)i.f(t,o=l[p++],r[o]);return t}},83264:(t,r,o)=>{var i=o(67410),a=o(48439),u=o(1504),l=o(12737),c=o(20657),p=o(64457),d=Object.getOwnPropertyDescriptor;r.f=o(75179)?d:function getOwnPropertyDescriptor(t,r){if(t=u(t),r=l(r,!0),p)try{return d(t,r)}catch(t){}if(c(t,r))return a(!i.f.call(t,r),t[r])}},26084:(t,r,o)=>{var i=o(1504),a=o(8772).f,u={}.toString,l="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];t.exports.f=function getOwnPropertyNames(t){return l&&"[object Window]"==u.call(t)?function(t){try{return a(t)}catch(t){return l.slice()}}(t):a(i(t))}},8772:(t,r,o)=>{var i=o(65326),a=o(31986).concat("length","prototype");r.f=Object.getOwnPropertyNames||function getOwnPropertyNames(t){return i(t,a)}},97739:(t,r)=>{r.f=Object.getOwnPropertySymbols},999:(t,r,o)=>{var i=o(20657),a=o(60061),u=o(18478)("IE_PROTO"),l=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=a(t),i(t,u)?t[u]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?l:null}},65326:(t,r,o)=>{var i=o(20657),a=o(1504),u=o(69191)(!1),l=o(18478)("IE_PROTO");t.exports=function(t,r){var o,c=a(t),p=0,d=[];for(o in c)o!=l&&i(c,o)&&d.push(o);for(;r.length>p;)i(c,o=r[p++])&&(~u(d,o)||d.push(o));return d}},86425:(t,r,o)=>{var i=o(65326),a=o(31986);t.exports=Object.keys||function keys(t){return i(t,a)}},67410:(t,r)=>{r.f={}.propertyIsEnumerable},57972:(t,r,o)=>{var i=o(98310),a=o(47208),u=o(90472);t.exports=function(t,r){var o=(a.Object||{})[t]||Object[t],l={};l[t]=r(o),i(i.S+i.F*u((function(){o(1)})),"Object",l)}},9480:(t,r,o)=>{var i=o(75179),a=o(86425),u=o(1504),l=o(67410).f;t.exports=function(t){return function(r){for(var o,c=u(r),p=a(c),d=p.length,v=0,h=[];d>v;)o=p[v++],i&&!l.call(c,o)||h.push(t?[o,c[o]]:c[o]);return h}}},48439:t=>{t.exports=function(t,r){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:r}}},19312:(t,r,o)=>{t.exports=o(62292)},25574:(t,r,o)=>{var i=o(39632),a=o(30498),check=function(t,r){if(a(t),!i(r)&&null!==r)throw TypeError(r+": can't set as prototype!")};t.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(t,r,i){try{(i=o(61725)(Function.call,o(83264).f(Object.prototype,"__proto__").set,2))(t,[]),r=!(t instanceof Array)}catch(t){r=!0}return function setPrototypeOf(t,o){return check(t,o),r?t.__proto__=o:i(t,o),t}}({},!1):void 0),check}},2413:(t,r,o)=>{var i=o(60510).f,a=o(20657),u=o(24300)("toStringTag");t.exports=function(t,r,o){t&&!a(t=o?t:t.prototype,u)&&i(t,u,{configurable:!0,value:r})}},18478:(t,r,o)=>{var i=o(29990)("keys"),a=o(54251);t.exports=function(t){return i[t]||(i[t]=a(t))}},29990:(t,r,o)=>{var i=o(47208),a=o(43280),u="__core-js_shared__",l=a[u]||(a[u]={});(t.exports=function(t,r){return l[t]||(l[t]=void 0!==r?r:{})})("versions",[]).push({version:i.version,mode:o(36794)?"pure":"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})},78502:(t,r,o)=>{var i=o(58290),a=o(18239);t.exports=function(t){return function(r,o){var u,l,c=String(a(r)),p=i(o),d=c.length;return p<0||p>=d?t?"":void 0:(u=c.charCodeAt(p))<55296||u>56319||p+1===d||(l=c.charCodeAt(p+1))<56320||l>57343?t?c.charAt(p):u:t?c.slice(p,p+2):l-56320+(u-55296<<10)+65536}}},46723:(t,r,o)=>{var i=o(58290),a=Math.max,u=Math.min;t.exports=function(t,r){return(t=i(t))<0?a(t+r,0):u(t,r)}},58290:t=>{var r=Math.ceil,o=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?o:r)(t)}},1504:(t,r,o)=>{var i=o(13115),a=o(18239);t.exports=function(t){return i(a(t))}},37154:(t,r,o)=>{var i=o(58290),a=Math.min;t.exports=function(t){return t>0?a(i(t),9007199254740991):0}},60061:(t,r,o)=>{var i=o(18239);t.exports=function(t){return Object(i(t))}},12737:(t,r,o)=>{var i=o(39632);t.exports=function(t,r){if(!i(t))return t;var o,a;if(r&&"function"==typeof(o=t.toString)&&!i(a=o.call(t)))return a;if("function"==typeof(o=t.valueOf)&&!i(a=o.call(t)))return a;if(!r&&"function"==typeof(o=t.toString)&&!i(a=o.call(t)))return a;throw TypeError("Can't convert object to primitive value")}},54251:t=>{var r=0,o=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++r+o).toString(36))}},31164:(t,r,o)=>{var i=o(43280),a=o(47208),u=o(36794),l=o(7273),c=o(60510).f;t.exports=function(t){var r=a.Symbol||(a.Symbol=u?{}:i.Symbol||{});"_"==t.charAt(0)||t in r||c(r,t,{value:l.f(t)})}},7273:(t,r,o)=>{r.f=o(24300)},24300:(t,r,o)=>{var i=o(29990)("wks"),a=o(54251),u=o(43280).Symbol,l="function"==typeof u;(t.exports=function(t){return i[t]||(i[t]=l&&u[t]||(l?u:a)("Symbol."+t))}).store=i},26116:(t,r,o)=>{var i=o(8312),a=o(24300)("iterator"),u=o(79105);t.exports=o(47208).getIteratorMethod=function(t){if(null!=t)return t[a]||t["@@iterator"]||u[i(t)]}},37627:(t,r,o)=>{"use strict";var i=o(61725),a=o(98310),u=o(60061),l=o(93086),c=o(11827),p=o(37154),d=o(87352),v=o(26116);a(a.S+a.F*!o(26797)((function(t){Array.from(t)})),"Array",{from:function from(t){var r,o,a,h,y=u(t),g="function"==typeof this?this:Array,m=arguments.length,_=m>1?arguments[1]:void 0,x=void 0!==_,b=0,w=v(y);if(x&&(_=i(_,m>2?arguments[2]:void 0,2)),null==w||g==Array&&c(w))for(o=new g(r=p(y.length));r>b;b++)d(o,b,x?_(y[b],b):y[b]);else for(h=w.call(y),o=new g;!(a=h.next()).done;b++)d(o,b,x?l(h,_,[a.value,b],!0):a.value);return o.length=b,o}})},42580:(t,r,o)=>{var i=o(98310);i(i.S,"Array",{isArray:o(7359)})},84411:(t,r,o)=>{"use strict";var i=o(29697),a=o(9329),u=o(79105),l=o(1504);t.exports=o(6125)(Array,"Array",(function(t,r){this._t=l(t),this._i=0,this._k=r}),(function(){var t=this._t,r=this._k,o=this._i++;return!t||o>=t.length?(this._t=void 0,a(1)):a(0,"keys"==r?o:"values"==r?t[o]:[o,t[o]])}),"values"),u.Arguments=u.Array,i("keys"),i("values"),i("entries")},78760:(t,r,o)=>{"use strict";var i=o(39632),a=o(999),u=o(24300)("hasInstance"),l=Function.prototype;u in l||o(60510).f(l,u,{value:function(t){if("function"!=typeof this||!i(t))return!1;if(!i(this.prototype))return t instanceof this;for(;t=a(t);)if(this.prototype===t)return!0;return!1}})},30785:(t,r,o)=>{var i=o(98310);i(i.S,"Object",{create:o(82488)})},40168:(t,r,o)=>{var i=o(98310);i(i.S+i.F*!o(75179),"Object",{defineProperty:o(60510).f})},18576:(t,r,o)=>{var i=o(1504),a=o(83264).f;o(57972)("getOwnPropertyDescriptor",(function(){return function getOwnPropertyDescriptor(t,r){return a(i(t),r)}}))},4840:(t,r,o)=>{var i=o(60061),a=o(999);o(57972)("getPrototypeOf",(function(){return function getPrototypeOf(t){return a(i(t))}}))},5453:(t,r,o)=>{var i=o(60061),a=o(86425);o(57972)("keys",(function(){return function keys(t){return a(i(t))}}))},13890:(t,r,o)=>{var i=o(98310);i(i.S,"Object",{setPrototypeOf:o(25574).set})},70285:()=>{},11320:(t,r,o)=>{var i=o(98310),a=o(82488),u=o(26610),l=o(30498),c=o(39632),p=o(90472),d=o(45515),v=(o(43280).Reflect||{}).construct,h=p((function(){function F(){}return!(v((function(){}),[],F)instanceof F)})),y=!p((function(){v((function(){}))}));i(i.S+i.F*(h||y),"Reflect",{construct:function construct(t,r){u(t),l(r);var o=arguments.length<3?t:u(arguments[2]);if(y&&!h)return v(t,r,o);if(t==o){switch(r.length){case 0:return new t;case 1:return new t(r[0]);case 2:return new t(r[0],r[1]);case 3:return new t(r[0],r[1],r[2]);case 4:return new t(r[0],r[1],r[2],r[3])}var i=[null];return i.push.apply(i,r),new(d.apply(t,i))}var p=o.prototype,g=a(c(p)?p:Object.prototype),m=Function.apply.call(t,g,r);return c(m)?m:g}})},36600:(t,r,o)=>{var i=o(83264),a=o(999),u=o(20657),l=o(98310),c=o(39632),p=o(30498);l(l.S,"Reflect",{get:function get(t,r){var o,l,d=arguments.length<3?t:arguments[2];return p(t)===d?t[r]:(o=i.f(t,r))?u(o,"value")?o.value:void 0!==o.get?o.get.call(d):void 0:c(l=a(t))?get(l,r,d):void 0}})},99572:(t,r,o)=>{"use strict";var i=o(78502)(!0);o(6125)(String,"String",(function(t){this._t=String(t),this._i=0}),(function(){var t,r=this._t,o=this._i;return o>=r.length?{value:void 0,done:!0}:(t=i(r,o),this._i+=t.length,{value:t,done:!1})}))},54370:(t,r,o)=>{"use strict";var i=o(43280),a=o(20657),u=o(75179),l=o(98310),c=o(19312),p=o(6758).KEY,d=o(90472),v=o(29990),h=o(2413),y=o(54251),g=o(24300),m=o(7273),_=o(31164),x=o(42266),b=o(7359),w=o(30498),C=o(39632),S=o(60061),O=o(1504),E=o(12737),P=o(48439),T=o(82488),k=o(26084),M=o(83264),A=o(97739),j=o(60510),R=o(86425),I=M.f,D=j.f,L=k.f,B=i.Symbol,V=i.JSON,$=V&&V.stringify,N=g("_hidden"),G=g("toPrimitive"),q={}.propertyIsEnumerable,W=v("symbol-registry"),H=v("symbols"),z=v("op-symbols"),Q=Object.prototype,U="function"==typeof B&&!!A.f,K=i.QObject,Y=!K||!K.prototype||!K.prototype.findChild,J=u&&d((function(){return 7!=T(D({},"a",{get:function(){return D(this,"a",{value:7}).a}})).a}))?function(t,r,o){var i=I(Q,r);i&&delete Q[r],D(t,r,o),i&&t!==Q&&D(Q,r,i)}:D,wrap=function(t){var r=H[t]=T(B.prototype);return r._k=t,r},X=U&&"symbol"==typeof B.iterator?function(t){return"symbol"==typeof t}:function(t){return t instanceof B},Z=function defineProperty(t,r,o){return t===Q&&Z(z,r,o),w(t),r=E(r,!0),w(o),a(H,r)?(o.enumerable?(a(t,N)&&t[N][r]&&(t[N][r]=!1),o=T(o,{enumerable:P(0,!1)})):(a(t,N)||D(t,N,P(1,{})),t[N][r]=!0),J(t,r,o)):D(t,r,o)},ee=function defineProperties(t,r){w(t);for(var o,i=x(r=O(r)),a=0,u=i.length;u>a;)Z(t,o=i[a++],r[o]);return t},te=function propertyIsEnumerable(t){var r=q.call(this,t=E(t,!0));return!(this===Q&&a(H,t)&&!a(z,t))&&(!(r||!a(this,t)||!a(H,t)||a(this,N)&&this[N][t])||r)},re=function getOwnPropertyDescriptor(t,r){if(t=O(t),r=E(r,!0),t!==Q||!a(H,r)||a(z,r)){var o=I(t,r);return!o||!a(H,r)||a(t,N)&&t[N][r]||(o.enumerable=!0),o}},ne=function getOwnPropertyNames(t){for(var r,o=L(O(t)),i=[],u=0;o.length>u;)a(H,r=o[u++])||r==N||r==p||i.push(r);return i},oe=function getOwnPropertySymbols(t){for(var r,o=t===Q,i=L(o?z:O(t)),u=[],l=0;i.length>l;)!a(H,r=i[l++])||o&&!a(Q,r)||u.push(H[r]);return u};U||(c((B=function Symbol(){if(this instanceof B)throw TypeError("Symbol is not a constructor!");var t=y(arguments.length>0?arguments[0]:void 0),$set=function(r){this===Q&&$set.call(z,r),a(this,N)&&a(this[N],t)&&(this[N][t]=!1),J(this,t,P(1,r))};return u&&Y&&J(Q,t,{configurable:!0,set:$set}),wrap(t)}).prototype,"toString",(function toString(){return this._k})),M.f=re,j.f=Z,o(8772).f=k.f=ne,o(67410).f=te,A.f=oe,u&&!o(36794)&&c(Q,"propertyIsEnumerable",te,!0),m.f=function(t){return wrap(g(t))}),l(l.G+l.W+l.F*!U,{Symbol:B});for(var ie="hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),ae=0;ie.length>ae;)g(ie[ae++]);for(var se=R(g.store),ue=0;se.length>ue;)_(se[ue++]);l(l.S+l.F*!U,"Symbol",{for:function(t){return a(W,t+="")?W[t]:W[t]=B(t)},keyFor:function keyFor(t){if(!X(t))throw TypeError(t+" is not a symbol!");for(var r in W)if(W[r]===t)return r},useSetter:function(){Y=!0},useSimple:function(){Y=!1}}),l(l.S+l.F*!U,"Object",{create:function create(t,r){return void 0===r?T(t):ee(T(t),r)},defineProperty:Z,defineProperties:ee,getOwnPropertyDescriptor:re,getOwnPropertyNames:ne,getOwnPropertySymbols:oe});var le=d((function(){A.f(1)}));l(l.S+l.F*le,"Object",{getOwnPropertySymbols:function getOwnPropertySymbols(t){return A.f(S(t))}}),V&&l(l.S+l.F*(!U||d((function(){var t=B();return"[null]"!=$([t])||"{}"!=$({a:t})||"{}"!=$(Object(t))}))),"JSON",{stringify:function stringify(t){for(var r,o,i=[t],a=1;arguments.length>a;)i.push(arguments[a++]);if(o=r=i[1],(C(r)||void 0!==t)&&!X(t))return b(r)||(r=function(t,r){if("function"==typeof o&&(r=o.call(this,t,r)),!X(r))return r}),i[1]=r,$.apply(V,i)}}),B.prototype[G]||o(62292)(B.prototype,G,B.prototype.valueOf),h(B,"Symbol"),h(Math,"Math",!0),h(i.JSON,"JSON",!0)},95260:(t,r,o)=>{var i=o(98310),a=o(9480)(!0);i(i.S,"Object",{entries:function entries(t){return a(t)}})},57188:(t,r,o)=>{var i=o(98310),a=o(9480)(!1);i(i.S,"Object",{values:function values(t){return a(t)}})},87573:(t,r,o)=>{o(31164)("asyncIterator")},97224:(t,r,o)=>{o(31164)("observable")},74114:(t,r,o)=>{o(84411);for(var i=o(43280),a=o(62292),u=o(79105),l=o(24300)("toStringTag"),c="CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList".split(","),p=0;p<c.length;p++){var d=c[p],v=i[d],h=v&&v.prototype;h&&!h[l]&&a(h,l,d),u[d]=u.Array}},22761:t=>{t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},42094:(t,r,o)=>{var i=o(62190)("unscopables"),a=Array.prototype;null==a[i]&&o(74216)(a,i,{}),t.exports=function(t){a[i][t]=!0}},88492:(t,r,o)=>{"use strict";var i=o(12070)(!0);t.exports=function(t,r,o){return r+(o?i(t,r).length:1)}},6365:(t,r,o)=>{var i=o(67334);t.exports=function(t){if(!i(t))throw TypeError(t+" is not an object!");return t}},59021:(t,r,o)=>{var i=o(15703),a=o(26078),u=o(78615);t.exports=function(t){return function(r,o,l){var c,p=i(r),d=a(p.length),v=u(l,d);if(t&&o!=o){for(;d>v;)if((c=p[v++])!=c)return!0}else for(;d>v;v++)if((t||v in p)&&p[v]===o)return t||v||0;return!t&&-1}}},78309:(t,r,o)=>{var i=o(11528),a=o(8467),u=o(26033),l=o(26078),c=o(63531);t.exports=function(t,r){var o=1==t,p=2==t,d=3==t,v=4==t,h=6==t,y=5==t||h,g=r||c;return function(r,c,m){for(var _,x,b=u(r),w=a(b),C=i(c,m,3),S=l(w.length),O=0,E=o?g(r,S):p?g(r,0):void 0;S>O;O++)if((y||O in w)&&(x=C(_=w[O],O,b),t))if(o)E[O]=x;else if(x)switch(t){case 3:return!0;case 5:return _;case 6:return O;case 2:E.push(_)}else if(v)return!1;return h?-1:d||v?v:E}}},81071:(t,r,o)=>{var i=o(67334),a=o(99141),u=o(62190)("species");t.exports=function(t){var r;return a(t)&&("function"!=typeof(r=t.constructor)||r!==Array&&!a(r.prototype)||(r=void 0),i(r)&&null===(r=r[u])&&(r=void 0)),void 0===r?Array:r}},63531:(t,r,o)=>{var i=o(81071);t.exports=function(t,r){return new(i(t))(r)}},20106:(t,r,o)=>{var i=o(26688),a=o(62190)("toStringTag"),u="Arguments"==i(function(){return arguments}());t.exports=function(t){var r,o,l;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(o=function(t,r){try{return t[r]}catch(t){}}(r=Object(t),a))?o:u?i(r):"Object"==(l=i(r))&&"function"==typeof r.callee?"Arguments":l}},26688:t=>{var r={}.toString;t.exports=function(t){return r.call(t).slice(8,-1)}},60066:t=>{var r=t.exports={version:"2.6.12"};"number"==typeof __e&&(__e=r)},11528:(t,r,o)=>{var i=o(22761);t.exports=function(t,r,o){if(i(t),void 0===r)return t;switch(o){case 1:return function(o){return t.call(r,o)};case 2:return function(o,i){return t.call(r,o,i)};case 3:return function(o,i,a){return t.call(r,o,i,a)}}return function(){return t.apply(r,arguments)}}},61622:t=>{t.exports=function(t){if(null==t)throw TypeError("Can't call method on  "+t);return t}},36628:(t,r,o)=>{t.exports=!o(48625)((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},5050:(t,r,o)=>{var i=o(67334),a=o(38113).document,u=i(a)&&i(a.createElement);t.exports=function(t){return u?a.createElement(t):{}}},33603:t=>{t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},65772:(t,r,o)=>{var i=o(38113),a=o(60066),u=o(74216),l=o(17738),c=o(11528),$export=function(t,r,o){var p,d,v,h,y=t&$export.F,g=t&$export.G,m=t&$export.S,_=t&$export.P,x=t&$export.B,b=g?i:m?i[r]||(i[r]={}):(i[r]||{}).prototype,w=g?a:a[r]||(a[r]={}),C=w.prototype||(w.prototype={});for(p in g&&(o=r),o)v=((d=!y&&b&&void 0!==b[p])?b:o)[p],h=x&&d?c(v,i):_&&"function"==typeof v?c(Function.call,v):v,b&&l(b,p,v,t&$export.U),w[p]!=v&&u(w,p,h),_&&C[p]!=v&&(C[p]=v)};i.core=a,$export.F=1,$export.G=2,$export.S=4,$export.P=8,$export.B=16,$export.W=32,$export.U=64,$export.R=128,t.exports=$export},86570:(t,r,o)=>{var i=o(62190)("match");t.exports=function(t){var r=/./;try{"/./"[t](r)}catch(o){try{return r[i]=!1,!"/./"[t](r)}catch(t){}}return!0}},48625:t=>{t.exports=function(t){try{return!!t()}catch(t){return!0}}},48897:(t,r,o)=>{"use strict";o(25846);var i=o(17738),a=o(74216),u=o(48625),l=o(61622),c=o(62190),p=o(43288),d=c("species"),v=!u((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$<a>")})),h=function(){var t=/(?:)/,r=t.exec;t.exec=function(){return r.apply(this,arguments)};var o="ab".split(t);return 2===o.length&&"a"===o[0]&&"b"===o[1]}();t.exports=function(t,r,o){var y=c(t),g=!u((function(){var r={};return r[y]=function(){return 7},7!=""[t](r)})),m=g?!u((function(){var r=!1,o=/a/;return o.exec=function(){return r=!0,null},"split"===t&&(o.constructor={},o.constructor[d]=function(){return o}),o[y](""),!r})):void 0;if(!g||!m||"replace"===t&&!v||"split"===t&&!h){var _=/./[y],x=o(l,y,""[t],(function maybeCallNative(t,r,o,i,a){return r.exec===p?g&&!a?{done:!0,value:_.call(r,o,i)}:{done:!0,value:t.call(o,r,i)}:{done:!1}})),b=x[0],w=x[1];i(String.prototype,t,b),a(RegExp.prototype,y,2==r?function(t,r){return w.call(t,this,r)}:function(t){return w.call(t,this)})}}},74859:(t,r,o)=>{"use strict";var i=o(6365);t.exports=function(){var t=i(this),r="";return t.global&&(r+="g"),t.ignoreCase&&(r+="i"),t.multiline&&(r+="m"),t.unicode&&(r+="u"),t.sticky&&(r+="y"),r}},20646:(t,r,o)=>{t.exports=o(8655)("native-function-to-string",Function.toString)},38113:t=>{var r=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=r)},54040:t=>{var r={}.hasOwnProperty;t.exports=function(t,o){return r.call(t,o)}},74216:(t,r,o)=>{var i=o(98558),a=o(36061);t.exports=o(36628)?function(t,r,o){return i.f(t,r,a(1,o))}:function(t,r,o){return t[r]=o,t}},8954:(t,r,o)=>{var i=o(38113).document;t.exports=i&&i.documentElement},5100:(t,r,o)=>{t.exports=!o(36628)&&!o(48625)((function(){return 7!=Object.defineProperty(o(5050)("div"),"a",{get:function(){return 7}}).a}))},8467:(t,r,o)=>{var i=o(26688);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==i(t)?t.split(""):Object(t)}},99141:(t,r,o)=>{var i=o(26688);t.exports=Array.isArray||function isArray(t){return"Array"==i(t)}},67334:t=>{t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},94587:(t,r,o)=>{var i=o(67334),a=o(26688),u=o(62190)("match");t.exports=function(t){var r;return i(t)&&(void 0!==(r=t[u])?!!r:"RegExp"==a(t))}},46445:(t,r,o)=>{"use strict";var i=o(82897),a=o(36061),u=o(55727),l={};o(74216)(l,o(62190)("iterator"),(function(){return this})),t.exports=function(t,r,o){t.prototype=i(l,{next:a(1,o)}),u(t,r+" Iterator")}},61195:(t,r,o)=>{"use strict";var i=o(81422),a=o(65772),u=o(17738),l=o(74216),c=o(23988),p=o(46445),d=o(55727),v=o(19002),h=o(62190)("iterator"),y=!([].keys&&"next"in[].keys()),g="keys",m="values",returnThis=function(){return this};t.exports=function(t,r,o,_,x,b,w){p(o,r,_);var C,S,O,getMethod=function(t){if(!y&&t in k)return k[t];switch(t){case g:return function keys(){return new o(this,t)};case m:return function values(){return new o(this,t)}}return function entries(){return new o(this,t)}},E=r+" Iterator",P=x==m,T=!1,k=t.prototype,M=k[h]||k["@@iterator"]||x&&k[x],A=M||getMethod(x),j=x?P?getMethod("entries"):A:void 0,R="Array"==r&&k.entries||M;if(R&&(O=v(R.call(new t)))!==Object.prototype&&O.next&&(d(O,E,!0),i||"function"==typeof O[h]||l(O,h,returnThis)),P&&M&&M.name!==m&&(T=!0,A=function values(){return M.call(this)}),i&&!w||!y&&!T&&k[h]||l(k,h,A),c[r]=A,c[E]=returnThis,x)if(C={values:P?A:getMethod(m),keys:b?A:getMethod(g),entries:j},w)for(S in C)S in k||u(k,S,C[S]);else a(a.P+a.F*(y||T),r,C);return C}},35038:t=>{t.exports=function(t,r){return{value:r,done:!!t}}},23988:t=>{t.exports={}},81422:t=>{t.exports=!1},82897:(t,r,o)=>{var i=o(6365),a=o(7331),u=o(33603),l=o(28034)("IE_PROTO"),Empty=function(){},createDict=function(){var t,r=o(5050)("iframe"),i=u.length;for(r.style.display="none",o(8954).appendChild(r),r.src="javascript:",(t=r.contentWindow.document).open(),t.write("<script>document.F=Object<\/script>"),t.close(),createDict=t.F;i--;)delete createDict.prototype[u[i]];return createDict()};t.exports=Object.create||function create(t,r){var o;return null!==t?(Empty.prototype=i(t),o=new Empty,Empty.prototype=null,o[l]=t):o=createDict(),void 0===r?o:a(o,r)}},98558:(t,r,o)=>{var i=o(6365),a=o(5100),u=o(31382),l=Object.defineProperty;r.f=o(36628)?Object.defineProperty:function defineProperty(t,r,o){if(i(t),r=u(r,!0),i(o),a)try{return l(t,r,o)}catch(t){}if("get"in o||"set"in o)throw TypeError("Accessors not supported!");return"value"in o&&(t[r]=o.value),t}},7331:(t,r,o)=>{var i=o(98558),a=o(6365),u=o(42912);t.exports=o(36628)?Object.defineProperties:function defineProperties(t,r){a(t);for(var o,l=u(r),c=l.length,p=0;c>p;)i.f(t,o=l[p++],r[o]);return t}},19002:(t,r,o)=>{var i=o(54040),a=o(26033),u=o(28034)("IE_PROTO"),l=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=a(t),i(t,u)?t[u]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?l:null}},75547:(t,r,o)=>{var i=o(54040),a=o(15703),u=o(59021)(!1),l=o(28034)("IE_PROTO");t.exports=function(t,r){var o,c=a(t),p=0,d=[];for(o in c)o!=l&&i(c,o)&&d.push(o);for(;r.length>p;)i(c,o=r[p++])&&(~u(d,o)||d.push(o));return d}},42912:(t,r,o)=>{var i=o(75547),a=o(33603);t.exports=Object.keys||function keys(t){return i(t,a)}},36061:t=>{t.exports=function(t,r){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:r}}},17738:(t,r,o)=>{var i=o(38113),a=o(74216),u=o(54040),l=o(25078)("src"),c=o(20646),p="toString",d=(""+c).split(p);o(60066).inspectSource=function(t){return c.call(t)},(t.exports=function(t,r,o,c){var p="function"==typeof o;p&&(u(o,"name")||a(o,"name",r)),t[r]!==o&&(p&&(u(o,l)||a(o,l,t[r]?""+t[r]:d.join(String(r)))),t===i?t[r]=o:c?t[r]?t[r]=o:a(t,r,o):(delete t[r],a(t,r,o)))})(Function.prototype,p,(function toString(){return"function"==typeof this&&this[l]||c.call(this)}))},62404:(t,r,o)=>{"use strict";var i=o(20106),a=RegExp.prototype.exec;t.exports=function(t,r){var o=t.exec;if("function"==typeof o){var u=o.call(t,r);if("object"!=typeof u)throw new TypeError("RegExp exec method returned something other than an Object or null");return u}if("RegExp"!==i(t))throw new TypeError("RegExp#exec called on incompatible receiver");return a.call(t,r)}},43288:(t,r,o)=>{"use strict";var i,a,u=o(74859),l=RegExp.prototype.exec,c=String.prototype.replace,p=l,d=(i=/a/,a=/b*/g,l.call(i,"a"),l.call(a,"a"),0!==i.lastIndex||0!==a.lastIndex),v=void 0!==/()??/.exec("")[1];(d||v)&&(p=function exec(t){var r,o,i,a,p=this;return v&&(o=new RegExp("^"+p.source+"$(?!\\s)",u.call(p))),d&&(r=p.lastIndex),i=l.call(p,t),d&&i&&(p.lastIndex=p.global?i.index+i[0].length:r),v&&i&&i.length>1&&c.call(i[0],o,(function(){for(a=1;a<arguments.length-2;a++)void 0===arguments[a]&&(i[a]=void 0)})),i}),t.exports=p},55727:(t,r,o)=>{var i=o(98558).f,a=o(54040),u=o(62190)("toStringTag");t.exports=function(t,r,o){t&&!a(t=o?t:t.prototype,u)&&i(t,u,{configurable:!0,value:r})}},28034:(t,r,o)=>{var i=o(8655)("keys"),a=o(25078);t.exports=function(t){return i[t]||(i[t]=a(t))}},8655:(t,r,o)=>{var i=o(60066),a=o(38113),u="__core-js_shared__",l=a[u]||(a[u]={});(t.exports=function(t,r){return l[t]||(l[t]=void 0!==r?r:{})})("versions",[]).push({version:i.version,mode:o(81422)?"pure":"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})},10225:(t,r,o)=>{"use strict";var i=o(48625);t.exports=function(t,r){return!!t&&i((function(){r?t.call(null,(function(){}),1):t.call(null)}))}},12070:(t,r,o)=>{var i=o(3338),a=o(61622);t.exports=function(t){return function(r,o){var u,l,c=String(a(r)),p=i(o),d=c.length;return p<0||p>=d?t?"":void 0:(u=c.charCodeAt(p))<55296||u>56319||p+1===d||(l=c.charCodeAt(p+1))<56320||l>57343?t?c.charAt(p):u:t?c.slice(p,p+2):l-56320+(u-55296<<10)+65536}}},465:(t,r,o)=>{var i=o(94587),a=o(61622);t.exports=function(t,r,o){if(i(r))throw TypeError("String#"+o+" doesn't accept regex!");return String(a(t))}},78615:(t,r,o)=>{var i=o(3338),a=Math.max,u=Math.min;t.exports=function(t,r){return(t=i(t))<0?a(t+r,0):u(t,r)}},3338:t=>{var r=Math.ceil,o=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?o:r)(t)}},15703:(t,r,o)=>{var i=o(8467),a=o(61622);t.exports=function(t){return i(a(t))}},26078:(t,r,o)=>{var i=o(3338),a=Math.min;t.exports=function(t){return t>0?a(i(t),9007199254740991):0}},26033:(t,r,o)=>{var i=o(61622);t.exports=function(t){return Object(i(t))}},31382:(t,r,o)=>{var i=o(67334);t.exports=function(t,r){if(!i(t))return t;var o,a;if(r&&"function"==typeof(o=t.toString)&&!i(a=o.call(t)))return a;if("function"==typeof(o=t.valueOf)&&!i(a=o.call(t)))return a;if(!r&&"function"==typeof(o=t.toString)&&!i(a=o.call(t)))return a;throw TypeError("Can't convert object to primitive value")}},25078:t=>{var r=0,o=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++r+o).toString(36))}},62190:(t,r,o)=>{var i=o(8655)("wks"),a=o(25078),u=o(38113).Symbol,l="function"==typeof u;(t.exports=function(t){return i[t]||(i[t]=l&&u[t]||(l?u:a)("Symbol."+t))}).store=i},64434:(t,r,o)=>{"use strict";var i=o(65772),a=o(78309)(2);i(i.P+i.F*!o(10225)([].filter,!0),"Array",{filter:function filter(t){return a(this,t,arguments[1])}})},71954:(t,r,o)=>{"use strict";var i=o(65772),a=o(78309)(5),u="find",l=!0;u in[]&&Array(1).find((function(){l=!1})),i(i.P+i.F*l,"Array",{find:function find(t){return a(this,t,arguments.length>1?arguments[1]:void 0)}}),o(42094)(u)},12897:(t,r,o)=>{"use strict";var i=o(42094),a=o(35038),u=o(23988),l=o(15703);t.exports=o(61195)(Array,"Array",(function(t,r){this._t=l(t),this._i=0,this._k=r}),(function(){var t=this._t,r=this._k,o=this._i++;return!t||o>=t.length?(this._t=void 0,a(1)):a(0,"keys"==r?o:"values"==r?t[o]:[o,t[o]])}),"values"),u.Arguments=u.Array,i("keys"),i("values"),i("entries")},90286:(t,r,o)=>{"use strict";var i=o(65772),a=o(78309)(1);i(i.P+i.F*!o(10225)([].map,!0),"Array",{map:function map(t){return a(this,t,arguments[1])}})},99745:(t,r,o)=>{var i=o(98558).f,a=Function.prototype,u=/^\s*function ([^ (]*)/,l="name";l in a||o(36628)&&i(a,l,{configurable:!0,get:function(){try{return(""+this).match(u)[1]}catch(t){return""}}})},76139:(t,r,o)=>{"use strict";var i=o(20106),a={};a[o(62190)("toStringTag")]="z",a+""!="[object z]"&&o(17738)(Object.prototype,"toString",(function toString(){return"[object "+i(this)+"]"}),!0)},25846:(t,r,o)=>{"use strict";var i=o(43288);o(65772)({target:"RegExp",proto:!0,forced:i!==/./.exec},{exec:i})},40751:(t,r,o)=>{o(36628)&&"g"!=/./g.flags&&o(98558).f(RegExp.prototype,"flags",{configurable:!0,get:o(74859)})},84208:(t,r,o)=>{"use strict";var i=o(6365),a=o(26033),u=o(26078),l=o(3338),c=o(88492),p=o(62404),d=Math.max,v=Math.min,h=Math.floor,y=/\$([$&`']|\d\d?|<[^>]*>)/g,g=/\$([$&`']|\d\d?)/g;o(48897)("replace",2,(function(t,r,o,m){return[function replace(i,a){var u=t(this),l=null==i?void 0:i[r];return void 0!==l?l.call(i,u,a):o.call(String(u),i,a)},function(t,r){var a=m(o,t,this,r);if(a.done)return a.value;var h=i(t),y=String(this),g="function"==typeof r;g||(r=String(r));var _=h.global;if(_){var x=h.unicode;h.lastIndex=0}for(var b=[];;){var w=p(h,y);if(null===w)break;if(b.push(w),!_)break;""===String(w[0])&&(h.lastIndex=c(y,u(h.lastIndex),x))}for(var C,S="",O=0,E=0;E<b.length;E++){w=b[E];for(var P=String(w[0]),T=d(v(l(w.index),y.length),0),k=[],M=1;M<w.length;M++)k.push(void 0===(C=w[M])?C:String(C));var A=w.groups;if(g){var j=[P].concat(k,T,y);void 0!==A&&j.push(A);var R=String(r.apply(void 0,j))}else R=getSubstitution(P,y,T,k,A,r);T>=O&&(S+=y.slice(O,T)+R,O=T+P.length)}return S+y.slice(O)}];function getSubstitution(t,r,i,u,l,c){var p=i+t.length,d=u.length,v=g;return void 0!==l&&(l=a(l),v=y),o.call(c,v,(function(o,a){var c;switch(a.charAt(0)){case"$":return"$";case"&":return t;case"`":return r.slice(0,i);case"'":return r.slice(p);case"<":c=l[a.slice(1,-1)];break;default:var v=+a;if(0===v)return o;if(v>d){var y=h(v/10);return 0===y?o:y<=d?void 0===u[y-1]?a.charAt(1):u[y-1]+a.charAt(1):o}c=u[v-1]}return void 0===c?"":c}))}}))},44321:(t,r,o)=>{"use strict";o(40751);var i=o(6365),a=o(74859),u=o(36628),l="toString",c=/./.toString,define=function(t){o(17738)(RegExp.prototype,l,t,!0)};o(48625)((function(){return"/a/b"!=c.call({source:"a",flags:"b"})}))?define((function toString(){var t=i(this);return"/".concat(t.source,"/","flags"in t?t.flags:!u&&t instanceof RegExp?a.call(t):void 0)})):c.name!=l&&define((function toString(){return c.call(this)}))},65942:(t,r,o)=>{"use strict";var i=o(65772),a=o(26078),u=o(465),l="startsWith",c="".startsWith;i(i.P+i.F*o(86570)(l),"String",{startsWith:function startsWith(t){var r=u(this,t,l),o=a(Math.min(arguments.length>1?arguments[1]:void 0,r.length)),i=String(t);return c?c.call(r,i,o):r.slice(o,o+i.length)===i}})},38081:(t,r,o)=>{"use strict";var i=o(65772),a=o(59021)(!0);i(i.P,"Array",{includes:function includes(t){return a(this,t,arguments.length>1?arguments[1]:void 0)}}),o(42094)("includes")},93085:(t,r,o)=>{for(var i=o(12897),a=o(42912),u=o(17738),l=o(38113),c=o(74216),p=o(23988),d=o(62190),v=d("iterator"),h=d("toStringTag"),y=p.Array,g={CSSRuleList:!0,CSSStyleDeclaration:!1,CSSValueList:!1,ClientRectList:!1,DOMRectList:!1,DOMStringList:!1,DOMTokenList:!0,DataTransferItemList:!1,FileList:!1,HTMLAllCollection:!1,HTMLCollection:!1,HTMLFormElement:!1,HTMLSelectElement:!1,MediaList:!0,MimeTypeArray:!1,NamedNodeMap:!1,NodeList:!0,PaintRequestList:!1,Plugin:!1,PluginArray:!1,SVGLengthList:!1,SVGNumberList:!1,SVGPathSegList:!1,SVGPointList:!1,SVGStringList:!1,SVGTransformList:!1,SourceBufferList:!1,StyleSheetList:!0,TextTrackCueList:!1,TextTrackList:!1,TouchList:!1},m=a(g),_=0;_<m.length;_++){var x,b=m[_],w=g[b],C=l[b],S=C&&C.prototype;if(S&&(S[v]||c(S,v,y),S[h]||c(S,h,b),p[b]=y,w))for(x in i)S[x]||u(S,x,i[x],!0)}},18194:t=>{"use strict";t.exports=wp.i18n}},r={};function __webpack_require__(o){var i=r[o];if(void 0!==i)return i.exports;var a=r[o]={exports:{}};return t[o](a,a.exports,__webpack_require__),a.exports}(()=>{"use strict";var t=__webpack_require__(67971),r=t(__webpack_require__(4746)),o=t(__webpack_require__(93103)),i=t(__webpack_require__(99533)),a=t(__webpack_require__(59472)),u=t(__webpack_require__(61909));elementorModules.editor={elements:{models:{BaseSettings:a.default}},utils:{Module:r.default,Introduction:o.default},views:{ControlsStack:i.default},Container:u.default}})()})();assets/js/elementor-admin-bar.js000064400000423451151327220410012650 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
/******/ (() => { // webpackBootstrap
/******/ 	var __webpack_modules__ = ({

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/create.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/create.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/create */ "../node_modules/core-js/library/fn/object/create.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js":
/*!********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js ***!
  \********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/define-property */ "../node_modules/core-js/library/fn/object/define-property.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js":
/*!********************************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js ***!
  \********************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/get-own-property-descriptor */ "../node_modules/core-js/library/fn/object/get-own-property-descriptor.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/get-prototype-of.js":
/*!*********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/get-prototype-of.js ***!
  \*********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/get-prototype-of */ "../node_modules/core-js/library/fn/object/get-prototype-of.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js":
/*!*********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js ***!
  \*********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/set-prototype-of */ "../node_modules/core-js/library/fn/object/set-prototype-of.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/values.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/values */ "../node_modules/core-js/library/fn/object/values.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js":
/*!***************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js ***!
  \***************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/reflect/construct */ "../node_modules/core-js/library/fn/reflect/construct.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/reflect/get.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/reflect/get.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/reflect/get */ "../node_modules/core-js/library/fn/reflect/get.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js":
/*!****************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/symbol.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/symbol */ "../node_modules/core-js/library/fn/symbol/index.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js":
/*!*************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js ***!
  \*************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/symbol/iterator */ "../node_modules/core-js/library/fn/symbol/iterator.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js":
/*!*******************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js ***!
  \*******************************************************************************/
/***/ ((module) => {

function _assertThisInitialized(self) {
  if (self === void 0) {
    throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
  }

  return self;
}

module.exports = _assertThisInitialized;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js ***!
  \************************************************************************/
/***/ ((module) => {

function _classCallCheck(instance, Constructor) {
  if (!(instance instanceof Constructor)) {
    throw new TypeError("Cannot call a class as a function");
  }
}

module.exports = _classCallCheck;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/createClass.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

function _defineProperties(target, props) {
  for (var i = 0; i < props.length; i++) {
    var descriptor = props[i];
    descriptor.enumerable = descriptor.enumerable || false;
    descriptor.configurable = true;
    if ("value" in descriptor) descriptor.writable = true;

    _Object$defineProperty(target, descriptor.key, descriptor);
  }
}

function _createClass(Constructor, protoProps, staticProps) {
  if (protoProps) _defineProperties(Constructor.prototype, protoProps);
  if (staticProps) _defineProperties(Constructor, staticProps);
  return Constructor;
}

module.exports = _createClass;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/createSuper.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Reflect$construct = __webpack_require__(/*! @babel/runtime-corejs2/core-js/reflect/construct */ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js");

var getPrototypeOf = __webpack_require__(/*! ./getPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js");

var isNativeReflectConstruct = __webpack_require__(/*! ./isNativeReflectConstruct.js */ "../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js");

var possibleConstructorReturn = __webpack_require__(/*! ./possibleConstructorReturn.js */ "../node_modules/@babel/runtime-corejs2/helpers/possibleConstructorReturn.js");

function _createSuper(Derived) {
  var hasNativeReflectConstruct = isNativeReflectConstruct();
  return function _createSuperInternal() {
    var Super = getPrototypeOf(Derived),
        result;

    if (hasNativeReflectConstruct) {
      var NewTarget = getPrototypeOf(this).constructor;
      result = _Reflect$construct(Super, arguments, NewTarget);
    } else {
      result = Super.apply(this, arguments);
    }

    return possibleConstructorReturn(this, result);
  };
}

module.exports = _createSuper;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/get.js":
/*!*************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/get.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Reflect$get = __webpack_require__(/*! @babel/runtime-corejs2/core-js/reflect/get */ "../node_modules/@babel/runtime-corejs2/core-js/reflect/get.js");

var _Object$getOwnPropertyDescriptor = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-own-property-descriptor */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js");

var superPropBase = __webpack_require__(/*! ./superPropBase.js */ "../node_modules/@babel/runtime-corejs2/helpers/superPropBase.js");

function _get(target, property, receiver) {
  if (typeof Reflect !== "undefined" && _Reflect$get) {
    module.exports = _get = _Reflect$get;
    module.exports.default = module.exports, module.exports.__esModule = true;
  } else {
    module.exports = _get = function _get(target, property, receiver) {
      var base = superPropBase(target, property);
      if (!base) return;

      var desc = _Object$getOwnPropertyDescriptor(base, property);

      if (desc.get) {
        return desc.get.call(receiver);
      }

      return desc.value;
    };

    module.exports.default = module.exports, module.exports.__esModule = true;
  }

  return _get(target, property, receiver || target);
}

module.exports = _get;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$setPrototypeOf = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/set-prototype-of */ "../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js");

var _Object$getPrototypeOf = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-prototype-of */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-prototype-of.js");

function _getPrototypeOf(o) {
  module.exports = _getPrototypeOf = _Object$setPrototypeOf ? _Object$getPrototypeOf : function _getPrototypeOf(o) {
    return o.__proto__ || _Object$getPrototypeOf(o);
  };
  module.exports.default = module.exports, module.exports.__esModule = true;
  return _getPrototypeOf(o);
}

module.exports = _getPrototypeOf;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js":
/*!******************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/inherits.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$create = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/create */ "../node_modules/@babel/runtime-corejs2/core-js/object/create.js");

var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js");

function _inherits(subClass, superClass) {
  if (typeof superClass !== "function" && superClass !== null) {
    throw new TypeError("Super expression must either be null or a function");
  }

  subClass.prototype = _Object$create(superClass && superClass.prototype, {
    constructor: {
      value: subClass,
      writable: true,
      configurable: true
    }
  });
  if (superClass) setPrototypeOf(subClass, superClass);
}

module.exports = _inherits;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js":
/*!*******************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js ***!
  \*******************************************************************************/
/***/ ((module) => {

function _interopRequireDefault(obj) {
  return obj && obj.__esModule ? obj : {
    "default": obj
  };
}

module.exports = _interopRequireDefault;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js":
/*!**********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js ***!
  \**********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Reflect$construct = __webpack_require__(/*! @babel/runtime-corejs2/core-js/reflect/construct */ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js");

function _isNativeReflectConstruct() {
  if (typeof Reflect === "undefined" || !_Reflect$construct) return false;
  if (_Reflect$construct.sham) return false;
  if (typeof Proxy === "function") return true;

  try {
    Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {}));
    return true;
  } catch (e) {
    return false;
  }
}

module.exports = _isNativeReflectConstruct;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/possibleConstructorReturn.js":
/*!***********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/possibleConstructorReturn.js ***!
  \***********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _typeof = __webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js").default;

var assertThisInitialized = __webpack_require__(/*! ./assertThisInitialized.js */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js");

function _possibleConstructorReturn(self, call) {
  if (call && (_typeof(call) === "object" || typeof call === "function")) {
    return call;
  }

  return assertThisInitialized(self);
}

module.exports = _possibleConstructorReturn;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$setPrototypeOf = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/set-prototype-of */ "../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js");

function _setPrototypeOf(o, p) {
  module.exports = _setPrototypeOf = _Object$setPrototypeOf || function _setPrototypeOf(o, p) {
    o.__proto__ = p;
    return o;
  };

  module.exports.default = module.exports, module.exports.__esModule = true;
  return _setPrototypeOf(o, p);
}

module.exports = _setPrototypeOf;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/superPropBase.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/superPropBase.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var getPrototypeOf = __webpack_require__(/*! ./getPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js");

function _superPropBase(object, property) {
  while (!Object.prototype.hasOwnProperty.call(object, property)) {
    object = getPrototypeOf(object);
    if (object === null) break;
  }

  return object;
}

module.exports = _superPropBase;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js":
/*!****************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/typeof.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Symbol = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol */ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js");

var _Symbol$iterator = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/iterator */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js");

function _typeof(obj) {
  "@babel/helpers - typeof";

  if (typeof _Symbol === "function" && typeof _Symbol$iterator === "symbol") {
    module.exports = _typeof = function _typeof(obj) {
      return typeof obj;
    };

    module.exports.default = module.exports, module.exports.__esModule = true;
  } else {
    module.exports = _typeof = function _typeof(obj) {
      return obj && typeof _Symbol === "function" && obj.constructor === _Symbol && obj !== _Symbol.prototype ? "symbol" : typeof obj;
    };

    module.exports.default = module.exports, module.exports.__esModule = true;
  }

  return _typeof(obj);
}

module.exports = _typeof;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/core-js/library/fn/object/create.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/create.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.create */ "../node_modules/core-js/library/modules/es6.object.create.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function create(P, D) {
  return $Object.create(P, D);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/define-property.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/define-property.js ***!
  \********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.define-property */ "../node_modules/core-js/library/modules/es6.object.define-property.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function defineProperty(it, key, desc) {
  return $Object.defineProperty(it, key, desc);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/get-own-property-descriptor.js":
/*!********************************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/get-own-property-descriptor.js ***!
  \********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.get-own-property-descriptor */ "../node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function getOwnPropertyDescriptor(it, key) {
  return $Object.getOwnPropertyDescriptor(it, key);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/get-prototype-of.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/get-prototype-of.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.get-prototype-of */ "../node_modules/core-js/library/modules/es6.object.get-prototype-of.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.getPrototypeOf;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/set-prototype-of.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/set-prototype-of.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.set-prototype-of */ "../node_modules/core-js/library/modules/es6.object.set-prototype-of.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.setPrototypeOf;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/values.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/values.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es7.object.values */ "../node_modules/core-js/library/modules/es7.object.values.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.values;


/***/ }),

/***/ "../node_modules/core-js/library/fn/reflect/construct.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/fn/reflect/construct.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.reflect.construct */ "../node_modules/core-js/library/modules/es6.reflect.construct.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Reflect.construct;


/***/ }),

/***/ "../node_modules/core-js/library/fn/reflect/get.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/library/fn/reflect/get.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.reflect.get */ "../node_modules/core-js/library/modules/es6.reflect.get.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Reflect.get;


/***/ }),

/***/ "../node_modules/core-js/library/fn/symbol/index.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/fn/symbol/index.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.symbol */ "../node_modules/core-js/library/modules/es6.symbol.js");
__webpack_require__(/*! ../../modules/es6.object.to-string */ "../node_modules/core-js/library/modules/es6.object.to-string.js");
__webpack_require__(/*! ../../modules/es7.symbol.async-iterator */ "../node_modules/core-js/library/modules/es7.symbol.async-iterator.js");
__webpack_require__(/*! ../../modules/es7.symbol.observable */ "../node_modules/core-js/library/modules/es7.symbol.observable.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Symbol;


/***/ }),

/***/ "../node_modules/core-js/library/fn/symbol/iterator.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/fn/symbol/iterator.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.string.iterator */ "../node_modules/core-js/library/modules/es6.string.iterator.js");
__webpack_require__(/*! ../../modules/web.dom.iterable */ "../node_modules/core-js/library/modules/web.dom.iterable.js");
module.exports = __webpack_require__(/*! ../../modules/_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js").f('iterator');


/***/ }),

/***/ "../node_modules/core-js/library/modules/_a-function.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_a-function.js ***!
  \**************************************************************/
/***/ ((module) => {

module.exports = function (it) {
  if (typeof it != 'function') throw TypeError(it + ' is not a function!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_add-to-unscopables.js":
/*!**********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_add-to-unscopables.js ***!
  \**********************************************************************/
/***/ ((module) => {

module.exports = function () { /* empty */ };


/***/ }),

/***/ "../node_modules/core-js/library/modules/_an-object.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_an-object.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
module.exports = function (it) {
  if (!isObject(it)) throw TypeError(it + ' is not an object!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-includes.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-includes.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// false -> Array#indexOf
// true  -> Array#includes
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
var toAbsoluteIndex = __webpack_require__(/*! ./_to-absolute-index */ "../node_modules/core-js/library/modules/_to-absolute-index.js");
module.exports = function (IS_INCLUDES) {
  return function ($this, el, fromIndex) {
    var O = toIObject($this);
    var length = toLength(O.length);
    var index = toAbsoluteIndex(fromIndex, length);
    var value;
    // Array#includes uses SameValueZero equality algorithm
    // eslint-disable-next-line no-self-compare
    if (IS_INCLUDES && el != el) while (length > index) {
      value = O[index++];
      // eslint-disable-next-line no-self-compare
      if (value != value) return true;
    // Array#indexOf ignores holes, Array#includes - not
    } else for (;length > index; index++) if (IS_INCLUDES || index in O) {
      if (O[index] === el) return IS_INCLUDES || index || 0;
    } return !IS_INCLUDES && -1;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_bind.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_bind.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var invoke = __webpack_require__(/*! ./_invoke */ "../node_modules/core-js/library/modules/_invoke.js");
var arraySlice = [].slice;
var factories = {};

var construct = function (F, len, args) {
  if (!(len in factories)) {
    for (var n = [], i = 0; i < len; i++) n[i] = 'a[' + i + ']';
    // eslint-disable-next-line no-new-func
    factories[len] = Function('F,a', 'return new F(' + n.join(',') + ')');
  } return factories[len](F, args);
};

module.exports = Function.bind || function bind(that /* , ...args */) {
  var fn = aFunction(this);
  var partArgs = arraySlice.call(arguments, 1);
  var bound = function (/* args... */) {
    var args = partArgs.concat(arraySlice.call(arguments));
    return this instanceof bound ? construct(fn, args.length, args) : invoke(fn, args, that);
  };
  if (isObject(fn.prototype)) bound.prototype = fn.prototype;
  return bound;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_cof.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_cof.js ***!
  \*******************************************************/
/***/ ((module) => {

var toString = {}.toString;

module.exports = function (it) {
  return toString.call(it).slice(8, -1);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_core.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_core.js ***!
  \********************************************************/
/***/ ((module) => {

var core = module.exports = { version: '2.6.12' };
if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/library/modules/_ctx.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_ctx.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// optional / simple context binding
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
module.exports = function (fn, that, length) {
  aFunction(fn);
  if (that === undefined) return fn;
  switch (length) {
    case 1: return function (a) {
      return fn.call(that, a);
    };
    case 2: return function (a, b) {
      return fn.call(that, a, b);
    };
    case 3: return function (a, b, c) {
      return fn.call(that, a, b, c);
    };
  }
  return function (/* ...args */) {
    return fn.apply(that, arguments);
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_defined.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_defined.js ***!
  \***********************************************************/
/***/ ((module) => {

// 7.2.1 RequireObjectCoercible(argument)
module.exports = function (it) {
  if (it == undefined) throw TypeError("Can't call method on  " + it);
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_descriptors.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_descriptors.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Thank's IE8 for his funny defineProperty
module.exports = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/_dom-create.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_dom-create.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").document;
// typeof document.createElement is 'object' in old IE
var is = isObject(document) && isObject(document.createElement);
module.exports = function (it) {
  return is ? document.createElement(it) : {};
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_enum-bug-keys.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_enum-bug-keys.js ***!
  \*****************************************************************/
/***/ ((module) => {

// IE 8- don't enum bug keys
module.exports = (
  'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
).split(',');


/***/ }),

/***/ "../node_modules/core-js/library/modules/_enum-keys.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_enum-keys.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// all enumerable object keys, includes symbols
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var gOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js");
module.exports = function (it) {
  var result = getKeys(it);
  var getSymbols = gOPS.f;
  if (getSymbols) {
    var symbols = getSymbols(it);
    var isEnum = pIE.f;
    var i = 0;
    var key;
    while (symbols.length > i) if (isEnum.call(it, key = symbols[i++])) result.push(key);
  } return result;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_export.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_export.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var PROTOTYPE = 'prototype';

var $export = function (type, name, source) {
  var IS_FORCED = type & $export.F;
  var IS_GLOBAL = type & $export.G;
  var IS_STATIC = type & $export.S;
  var IS_PROTO = type & $export.P;
  var IS_BIND = type & $export.B;
  var IS_WRAP = type & $export.W;
  var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
  var expProto = exports[PROTOTYPE];
  var target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE];
  var key, own, out;
  if (IS_GLOBAL) source = name;
  for (key in source) {
    // contains in native
    own = !IS_FORCED && target && target[key] !== undefined;
    if (own && has(exports, key)) continue;
    // export native or passed
    out = own ? target[key] : source[key];
    // prevent global pollution for namespaces
    exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key]
    // bind timers to global for call from export context
    : IS_BIND && own ? ctx(out, global)
    // wrap global constructors for prevent change them in library
    : IS_WRAP && target[key] == out ? (function (C) {
      var F = function (a, b, c) {
        if (this instanceof C) {
          switch (arguments.length) {
            case 0: return new C();
            case 1: return new C(a);
            case 2: return new C(a, b);
          } return new C(a, b, c);
        } return C.apply(this, arguments);
      };
      F[PROTOTYPE] = C[PROTOTYPE];
      return F;
    // make static versions for prototype methods
    })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
    // export proto methods to core.%CONSTRUCTOR%.methods.%NAME%
    if (IS_PROTO) {
      (exports.virtual || (exports.virtual = {}))[key] = out;
      // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME%
      if (type & $export.R && expProto && !expProto[key]) hide(expProto, key, out);
    }
  }
};
// type bitmap
$export.F = 1;   // forced
$export.G = 2;   // global
$export.S = 4;   // static
$export.P = 8;   // proto
$export.B = 16;  // bind
$export.W = 32;  // wrap
$export.U = 64;  // safe
$export.R = 128; // real proto method for `library`
module.exports = $export;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_fails.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_fails.js ***!
  \*********************************************************/
/***/ ((module) => {

module.exports = function (exec) {
  try {
    return !!exec();
  } catch (e) {
    return true;
  }
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_global.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_global.js ***!
  \**********************************************************/
/***/ ((module) => {

// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
var global = module.exports = typeof window != 'undefined' && window.Math == Math
  ? window : typeof self != 'undefined' && self.Math == Math ? self
  // eslint-disable-next-line no-new-func
  : Function('return this')();
if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/library/modules/_has.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_has.js ***!
  \*******************************************************/
/***/ ((module) => {

var hasOwnProperty = {}.hasOwnProperty;
module.exports = function (it, key) {
  return hasOwnProperty.call(it, key);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_hide.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_hide.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? function (object, key, value) {
  return dP.f(object, key, createDesc(1, value));
} : function (object, key, value) {
  object[key] = value;
  return object;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_html.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_html.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").document;
module.exports = document && document.documentElement;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_ie8-dom-define.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_ie8-dom-define.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") && !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  return Object.defineProperty(__webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/library/modules/_dom-create.js")('div'), 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/_invoke.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_invoke.js ***!
  \**********************************************************/
/***/ ((module) => {

// fast apply, http://jsperf.lnkit.com/fast-apply/5
module.exports = function (fn, args, that) {
  var un = that === undefined;
  switch (args.length) {
    case 0: return un ? fn()
                      : fn.call(that);
    case 1: return un ? fn(args[0])
                      : fn.call(that, args[0]);
    case 2: return un ? fn(args[0], args[1])
                      : fn.call(that, args[0], args[1]);
    case 3: return un ? fn(args[0], args[1], args[2])
                      : fn.call(that, args[0], args[1], args[2]);
    case 4: return un ? fn(args[0], args[1], args[2], args[3])
                      : fn.call(that, args[0], args[1], args[2], args[3]);
  } return fn.apply(that, args);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iobject.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iobject.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// fallback for non-array-like ES3 and non-enumerable old V8 strings
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js");
// eslint-disable-next-line no-prototype-builtins
module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
  return cof(it) == 'String' ? it.split('') : Object(it);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_is-array.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_is-array.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.2.2 IsArray(argument)
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js");
module.exports = Array.isArray || function isArray(arg) {
  return cof(arg) == 'Array';
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_is-object.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_is-object.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = function (it) {
  return typeof it === 'object' ? it !== null : typeof it === 'function';
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-create.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-create.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
var descriptor = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var IteratorPrototype = {};

// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
__webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js")(IteratorPrototype, __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator'), function () { return this; });

module.exports = function (Constructor, NAME, next) {
  Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });
  setToStringTag(Constructor, NAME + ' Iterator');
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-define.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-define.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/library/modules/_redefine.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var $iterCreate = __webpack_require__(/*! ./_iter-create */ "../node_modules/core-js/library/modules/_iter-create.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`
var FF_ITERATOR = '@@iterator';
var KEYS = 'keys';
var VALUES = 'values';

var returnThis = function () { return this; };

module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {
  $iterCreate(Constructor, NAME, next);
  var getMethod = function (kind) {
    if (!BUGGY && kind in proto) return proto[kind];
    switch (kind) {
      case KEYS: return function keys() { return new Constructor(this, kind); };
      case VALUES: return function values() { return new Constructor(this, kind); };
    } return function entries() { return new Constructor(this, kind); };
  };
  var TAG = NAME + ' Iterator';
  var DEF_VALUES = DEFAULT == VALUES;
  var VALUES_BUG = false;
  var proto = Base.prototype;
  var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];
  var $default = $native || getMethod(DEFAULT);
  var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;
  var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;
  var methods, key, IteratorPrototype;
  // Fix native
  if ($anyNative) {
    IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));
    if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {
      // Set @@toStringTag to native iterators
      setToStringTag(IteratorPrototype, TAG, true);
      // fix for some old engines
      if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);
    }
  }
  // fix Array#{values, @@iterator}.name in V8 / FF
  if (DEF_VALUES && $native && $native.name !== VALUES) {
    VALUES_BUG = true;
    $default = function values() { return $native.call(this); };
  }
  // Define iterator
  if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {
    hide(proto, ITERATOR, $default);
  }
  // Plug for library
  Iterators[NAME] = $default;
  Iterators[TAG] = returnThis;
  if (DEFAULT) {
    methods = {
      values: DEF_VALUES ? $default : getMethod(VALUES),
      keys: IS_SET ? $default : getMethod(KEYS),
      entries: $entries
    };
    if (FORCED) for (key in methods) {
      if (!(key in proto)) redefine(proto, key, methods[key]);
    } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
  }
  return methods;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-step.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-step.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = function (done, value) {
  return { value: value, done: !!done };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iterators.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iterators.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = {};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_library.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_library.js ***!
  \***********************************************************/
/***/ ((module) => {

module.exports = true;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_meta.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_meta.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var META = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js")('meta');
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var setDesc = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
var id = 0;
var isExtensible = Object.isExtensible || function () {
  return true;
};
var FREEZE = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  return isExtensible(Object.preventExtensions({}));
});
var setMeta = function (it) {
  setDesc(it, META, { value: {
    i: 'O' + ++id, // object ID
    w: {}          // weak collections IDs
  } });
};
var fastKey = function (it, create) {
  // return primitive with prefix
  if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;
  if (!has(it, META)) {
    // can't set metadata to uncaught frozen object
    if (!isExtensible(it)) return 'F';
    // not necessary to add metadata
    if (!create) return 'E';
    // add missing metadata
    setMeta(it);
  // return object ID
  } return it[META].i;
};
var getWeak = function (it, create) {
  if (!has(it, META)) {
    // can't set metadata to uncaught frozen object
    if (!isExtensible(it)) return true;
    // not necessary to add metadata
    if (!create) return false;
    // add missing metadata
    setMeta(it);
  // return hash weak collections IDs
  } return it[META].w;
};
// add metadata on freeze-family methods calling
var onFreeze = function (it) {
  if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it);
  return it;
};
var meta = module.exports = {
  KEY: META,
  NEED: false,
  fastKey: fastKey,
  getWeak: getWeak,
  onFreeze: onFreeze
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-create.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-create.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var dPs = __webpack_require__(/*! ./_object-dps */ "../node_modules/core-js/library/modules/_object-dps.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');
var Empty = function () { /* empty */ };
var PROTOTYPE = 'prototype';

// Create object with fake `null` prototype: use iframe Object with cleared prototype
var createDict = function () {
  // Thrash, waste and sodomy: IE GC bug
  var iframe = __webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/library/modules/_dom-create.js")('iframe');
  var i = enumBugKeys.length;
  var lt = '<';
  var gt = '>';
  var iframeDocument;
  iframe.style.display = 'none';
  __webpack_require__(/*! ./_html */ "../node_modules/core-js/library/modules/_html.js").appendChild(iframe);
  iframe.src = 'javascript:'; // eslint-disable-line no-script-url
  // createDict = iframe.contentWindow.Object;
  // html.removeChild(iframe);
  iframeDocument = iframe.contentWindow.document;
  iframeDocument.open();
  iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);
  iframeDocument.close();
  createDict = iframeDocument.F;
  while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];
  return createDict();
};

module.exports = Object.create || function create(O, Properties) {
  var result;
  if (O !== null) {
    Empty[PROTOTYPE] = anObject(O);
    result = new Empty();
    Empty[PROTOTYPE] = null;
    // add "__proto__" for Object.getPrototypeOf polyfill
    result[IE_PROTO] = O;
  } else result = createDict();
  return Properties === undefined ? result : dPs(result, Properties);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-dp.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-dp.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/library/modules/_ie8-dom-define.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
var dP = Object.defineProperty;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? Object.defineProperty : function defineProperty(O, P, Attributes) {
  anObject(O);
  P = toPrimitive(P, true);
  anObject(Attributes);
  if (IE8_DOM_DEFINE) try {
    return dP(O, P, Attributes);
  } catch (e) { /* empty */ }
  if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
  if ('value' in Attributes) O[P] = Attributes.value;
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-dps.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-dps.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");

module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? Object.defineProperties : function defineProperties(O, Properties) {
  anObject(O);
  var keys = getKeys(Properties);
  var length = keys.length;
  var i = 0;
  var P;
  while (length > i) dP.f(O, P = keys[i++], Properties[P]);
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gopd.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gopd.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/library/modules/_ie8-dom-define.js");
var gOPD = Object.getOwnPropertyDescriptor;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? gOPD : function getOwnPropertyDescriptor(O, P) {
  O = toIObject(O);
  P = toPrimitive(P, true);
  if (IE8_DOM_DEFINE) try {
    return gOPD(O, P);
  } catch (e) { /* empty */ }
  if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gopn-ext.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gopn-ext.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var gOPN = __webpack_require__(/*! ./_object-gopn */ "../node_modules/core-js/library/modules/_object-gopn.js").f;
var toString = {}.toString;

var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames
  ? Object.getOwnPropertyNames(window) : [];

var getWindowNames = function (it) {
  try {
    return gOPN(it);
  } catch (e) {
    return windowNames.slice();
  }
};

module.exports.f = function getOwnPropertyNames(it) {
  return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gopn.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gopn.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)
var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/library/modules/_object-keys-internal.js");
var hiddenKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js").concat('length', 'prototype');

exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
  return $keys(O, hiddenKeys);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gops.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gops.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports) => {

exports.f = Object.getOwnPropertySymbols;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gpo.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gpo.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');
var ObjectProto = Object.prototype;

module.exports = Object.getPrototypeOf || function (O) {
  O = toObject(O);
  if (has(O, IE_PROTO)) return O[IE_PROTO];
  if (typeof O.constructor == 'function' && O instanceof O.constructor) {
    return O.constructor.prototype;
  } return O instanceof Object ? ObjectProto : null;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-keys-internal.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-keys-internal.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var arrayIndexOf = __webpack_require__(/*! ./_array-includes */ "../node_modules/core-js/library/modules/_array-includes.js")(false);
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');

module.exports = function (object, names) {
  var O = toIObject(object);
  var i = 0;
  var result = [];
  var key;
  for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);
  // Don't enum bug & hidden keys
  while (names.length > i) if (has(O, key = names[i++])) {
    ~arrayIndexOf(result, key) || result.push(key);
  }
  return result;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-keys.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-keys.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.14 / 15.2.3.14 Object.keys(O)
var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/library/modules/_object-keys-internal.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js");

module.exports = Object.keys || function keys(O) {
  return $keys(O, enumBugKeys);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-pie.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-pie.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports) => {

exports.f = {}.propertyIsEnumerable;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-sap.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-sap.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// most Object methods by ES6 should accept primitives
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
module.exports = function (KEY, exec) {
  var fn = (core.Object || {})[KEY] || Object[KEY];
  var exp = {};
  exp[KEY] = exec(fn);
  $export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-to-array.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-to-array.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var isEnum = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js").f;
module.exports = function (isEntries) {
  return function (it) {
    var O = toIObject(it);
    var keys = getKeys(O);
    var length = keys.length;
    var i = 0;
    var result = [];
    var key;
    while (length > i) {
      key = keys[i++];
      if (!DESCRIPTORS || isEnum.call(O, key)) {
        result.push(isEntries ? [key, O[key]] : O[key]);
      }
    }
    return result;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_property-desc.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_property-desc.js ***!
  \*****************************************************************/
/***/ ((module) => {

module.exports = function (bitmap, value) {
  return {
    enumerable: !(bitmap & 1),
    configurable: !(bitmap & 2),
    writable: !(bitmap & 4),
    value: value
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_redefine.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_redefine.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-proto.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-proto.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Works with __proto__ only. Old v8 can't work with null proto objects.
/* eslint-disable no-proto */
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var check = function (O, proto) {
  anObject(O);
  if (!isObject(proto) && proto !== null) throw TypeError(proto + ": can't set as prototype!");
};
module.exports = {
  set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line
    function (test, buggy, set) {
      try {
        set = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js")(Function.call, __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js").f(Object.prototype, '__proto__').set, 2);
        set(test, []);
        buggy = !(test instanceof Array);
      } catch (e) { buggy = true; }
      return function setPrototypeOf(O, proto) {
        check(O, proto);
        if (buggy) O.__proto__ = proto;
        else set(O, proto);
        return O;
      };
    }({}, false) : undefined),
  check: check
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-to-string-tag.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-to-string-tag.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var def = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('toStringTag');

module.exports = function (it, tag, stat) {
  if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_shared-key.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_shared-key.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var shared = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js")('keys');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
module.exports = function (key) {
  return shared[key] || (shared[key] = uid(key));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_shared.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_shared.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var SHARED = '__core-js_shared__';
var store = global[SHARED] || (global[SHARED] = {});

(module.exports = function (key, value) {
  return store[key] || (store[key] = value !== undefined ? value : {});
})('versions', []).push({
  version: core.version,
  mode: __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js") ? 'pure' : 'global',
  copyright: '© 2020 Denis Pushkarev (zloirock.ru)'
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/_string-at.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_string-at.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
// true  -> String#at
// false -> String#codePointAt
module.exports = function (TO_STRING) {
  return function (that, pos) {
    var s = String(defined(that));
    var i = toInteger(pos);
    var l = s.length;
    var a, b;
    if (i < 0 || i >= l) return TO_STRING ? '' : undefined;
    a = s.charCodeAt(i);
    return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
      ? TO_STRING ? s.charAt(i) : a
      : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-absolute-index.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-absolute-index.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
var max = Math.max;
var min = Math.min;
module.exports = function (index, length) {
  index = toInteger(index);
  return index < 0 ? max(index + length, 0) : min(index, length);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-integer.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-integer.js ***!
  \**************************************************************/
/***/ ((module) => {

// 7.1.4 ToInteger
var ceil = Math.ceil;
var floor = Math.floor;
module.exports = function (it) {
  return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-iobject.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-iobject.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// to indexed object, toObject with fallback for non-array-like ES3 strings
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/library/modules/_iobject.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
module.exports = function (it) {
  return IObject(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-length.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-length.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.15 ToLength
var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
var min = Math.min;
module.exports = function (it) {
  return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-object.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-object.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.13 ToObject(argument)
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
module.exports = function (it) {
  return Object(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-primitive.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-primitive.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.1 ToPrimitive(input [, PreferredType])
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
// instead of the ES6 spec version, we didn't implement @@toPrimitive case
// and the second argument - flag - preferred type is a string
module.exports = function (it, S) {
  if (!isObject(it)) return it;
  var fn, val;
  if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
  if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  throw TypeError("Can't convert object to primitive value");
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_uid.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_uid.js ***!
  \*******************************************************/
/***/ ((module) => {

var id = 0;
var px = Math.random();
module.exports = function (key) {
  return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_wks-define.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_wks-define.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js");
var wksExt = __webpack_require__(/*! ./_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js");
var defineProperty = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
module.exports = function (name) {
  var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {});
  if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_wks-ext.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_wks-ext.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

exports.f = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js");


/***/ }),

/***/ "../node_modules/core-js/library/modules/_wks.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_wks.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var store = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js")('wks');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
var Symbol = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").Symbol;
var USE_SYMBOL = typeof Symbol == 'function';

var $exports = module.exports = function (name) {
  return store[name] || (store[name] =
    USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
};

$exports.store = store;


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.array.iterator.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.array.iterator.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var addToUnscopables = __webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/library/modules/_add-to-unscopables.js");
var step = __webpack_require__(/*! ./_iter-step */ "../node_modules/core-js/library/modules/_iter-step.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");

// 22.1.3.4 Array.prototype.entries()
// 22.1.3.13 Array.prototype.keys()
// 22.1.3.29 Array.prototype.values()
// 22.1.3.30 Array.prototype[@@iterator]()
module.exports = __webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/library/modules/_iter-define.js")(Array, 'Array', function (iterated, kind) {
  this._t = toIObject(iterated); // target
  this._i = 0;                   // next index
  this._k = kind;                // kind
// 22.1.5.2.1 %ArrayIteratorPrototype%.next()
}, function () {
  var O = this._t;
  var kind = this._k;
  var index = this._i++;
  if (!O || index >= O.length) {
    this._t = undefined;
    return step(1);
  }
  if (kind == 'keys') return step(0, index);
  if (kind == 'values') return step(0, O[index]);
  return step(0, [index, O[index]]);
}, 'values');

// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
Iterators.Arguments = Iterators.Array;

addToUnscopables('keys');
addToUnscopables('values');
addToUnscopables('entries');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.create.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.create.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
$export($export.S, 'Object', { create: __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js") });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.define-property.js":
/*!*****************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.define-property.js ***!
  \*****************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)
$export($export.S + $export.F * !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js"), 'Object', { defineProperty: __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js":
/*!*****************************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js ***!
  \*****************************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var $getOwnPropertyDescriptor = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js").f;

__webpack_require__(/*! ./_object-sap */ "../node_modules/core-js/library/modules/_object-sap.js")('getOwnPropertyDescriptor', function () {
  return function getOwnPropertyDescriptor(it, key) {
    return $getOwnPropertyDescriptor(toIObject(it), key);
  };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.get-prototype-of.js":
/*!******************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.get-prototype-of.js ***!
  \******************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.9 Object.getPrototypeOf(O)
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var $getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");

__webpack_require__(/*! ./_object-sap */ "../node_modules/core-js/library/modules/_object-sap.js")('getPrototypeOf', function () {
  return function getPrototypeOf(it) {
    return $getPrototypeOf(toObject(it));
  };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.set-prototype-of.js":
/*!******************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.set-prototype-of.js ***!
  \******************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.3.19 Object.setPrototypeOf(O, proto)
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
$export($export.S, 'Object', { setPrototypeOf: __webpack_require__(/*! ./_set-proto */ "../node_modules/core-js/library/modules/_set-proto.js").set });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.to-string.js":
/*!***********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.to-string.js ***!
  \***********************************************************************/
/***/ (() => {



/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.reflect.construct.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.reflect.construct.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 26.1.2 Reflect.construct(target, argumentsList [, newTarget])
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
var bind = __webpack_require__(/*! ./_bind */ "../node_modules/core-js/library/modules/_bind.js");
var rConstruct = (__webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").Reflect || {}).construct;

// MS Edge supports only 2 arguments and argumentsList argument is optional
// FF Nightly sets third argument as `new.target`, but does not create `this` from it
var NEW_TARGET_BUG = fails(function () {
  function F() { /* empty */ }
  return !(rConstruct(function () { /* empty */ }, [], F) instanceof F);
});
var ARGS_BUG = !fails(function () {
  rConstruct(function () { /* empty */ });
});

$export($export.S + $export.F * (NEW_TARGET_BUG || ARGS_BUG), 'Reflect', {
  construct: function construct(Target, args /* , newTarget */) {
    aFunction(Target);
    anObject(args);
    var newTarget = arguments.length < 3 ? Target : aFunction(arguments[2]);
    if (ARGS_BUG && !NEW_TARGET_BUG) return rConstruct(Target, args, newTarget);
    if (Target == newTarget) {
      // w/o altered newTarget, optimization for 0-4 arguments
      switch (args.length) {
        case 0: return new Target();
        case 1: return new Target(args[0]);
        case 2: return new Target(args[0], args[1]);
        case 3: return new Target(args[0], args[1], args[2]);
        case 4: return new Target(args[0], args[1], args[2], args[3]);
      }
      // w/o altered newTarget, lot of arguments case
      var $args = [null];
      $args.push.apply($args, args);
      return new (bind.apply(Target, $args))();
    }
    // with altered newTarget, not support built-in constructors
    var proto = newTarget.prototype;
    var instance = create(isObject(proto) ? proto : Object.prototype);
    var result = Function.apply.call(Target, instance, args);
    return isObject(result) ? result : instance;
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.reflect.get.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.reflect.get.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 26.1.6 Reflect.get(target, propertyKey [, receiver])
var gOPD = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js");
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");

function get(target, propertyKey /* , receiver */) {
  var receiver = arguments.length < 3 ? target : arguments[2];
  var desc, proto;
  if (anObject(target) === receiver) return target[propertyKey];
  if (desc = gOPD.f(target, propertyKey)) return has(desc, 'value')
    ? desc.value
    : desc.get !== undefined
      ? desc.get.call(receiver)
      : undefined;
  if (isObject(proto = getPrototypeOf(target))) return get(proto, propertyKey, receiver);
}

$export($export.S, 'Reflect', { get: get });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.string.iterator.js":
/*!**********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.string.iterator.js ***!
  \**********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $at = __webpack_require__(/*! ./_string-at */ "../node_modules/core-js/library/modules/_string-at.js")(true);

// 21.1.3.27 String.prototype[@@iterator]()
__webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/library/modules/_iter-define.js")(String, 'String', function (iterated) {
  this._t = String(iterated); // target
  this._i = 0;                // next index
// 21.1.5.2.1 %StringIteratorPrototype%.next()
}, function () {
  var O = this._t;
  var index = this._i;
  var point;
  if (index >= O.length) return { value: undefined, done: true };
  point = $at(O, index);
  this._i += point.length;
  return { value: point, done: false };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.symbol.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.symbol.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// ECMAScript 6 symbols shim
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/library/modules/_redefine.js");
var META = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js").KEY;
var $fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
var shared = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
var wks = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js");
var wksExt = __webpack_require__(/*! ./_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js");
var wksDefine = __webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js");
var enumKeys = __webpack_require__(/*! ./_enum-keys */ "../node_modules/core-js/library/modules/_enum-keys.js");
var isArray = __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/library/modules/_is-array.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
var _create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
var gOPNExt = __webpack_require__(/*! ./_object-gopn-ext */ "../node_modules/core-js/library/modules/_object-gopn-ext.js");
var $GOPD = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js");
var $GOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
var $DP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var $keys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var gOPD = $GOPD.f;
var dP = $DP.f;
var gOPN = gOPNExt.f;
var $Symbol = global.Symbol;
var $JSON = global.JSON;
var _stringify = $JSON && $JSON.stringify;
var PROTOTYPE = 'prototype';
var HIDDEN = wks('_hidden');
var TO_PRIMITIVE = wks('toPrimitive');
var isEnum = {}.propertyIsEnumerable;
var SymbolRegistry = shared('symbol-registry');
var AllSymbols = shared('symbols');
var OPSymbols = shared('op-symbols');
var ObjectProto = Object[PROTOTYPE];
var USE_NATIVE = typeof $Symbol == 'function' && !!$GOPS.f;
var QObject = global.QObject;
// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173
var setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;

// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687
var setSymbolDesc = DESCRIPTORS && $fails(function () {
  return _create(dP({}, 'a', {
    get: function () { return dP(this, 'a', { value: 7 }).a; }
  })).a != 7;
}) ? function (it, key, D) {
  var protoDesc = gOPD(ObjectProto, key);
  if (protoDesc) delete ObjectProto[key];
  dP(it, key, D);
  if (protoDesc && it !== ObjectProto) dP(ObjectProto, key, protoDesc);
} : dP;

var wrap = function (tag) {
  var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]);
  sym._k = tag;
  return sym;
};

var isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function (it) {
  return typeof it == 'symbol';
} : function (it) {
  return it instanceof $Symbol;
};

var $defineProperty = function defineProperty(it, key, D) {
  if (it === ObjectProto) $defineProperty(OPSymbols, key, D);
  anObject(it);
  key = toPrimitive(key, true);
  anObject(D);
  if (has(AllSymbols, key)) {
    if (!D.enumerable) {
      if (!has(it, HIDDEN)) dP(it, HIDDEN, createDesc(1, {}));
      it[HIDDEN][key] = true;
    } else {
      if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false;
      D = _create(D, { enumerable: createDesc(0, false) });
    } return setSymbolDesc(it, key, D);
  } return dP(it, key, D);
};
var $defineProperties = function defineProperties(it, P) {
  anObject(it);
  var keys = enumKeys(P = toIObject(P));
  var i = 0;
  var l = keys.length;
  var key;
  while (l > i) $defineProperty(it, key = keys[i++], P[key]);
  return it;
};
var $create = function create(it, P) {
  return P === undefined ? _create(it) : $defineProperties(_create(it), P);
};
var $propertyIsEnumerable = function propertyIsEnumerable(key) {
  var E = isEnum.call(this, key = toPrimitive(key, true));
  if (this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return false;
  return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true;
};
var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key) {
  it = toIObject(it);
  key = toPrimitive(key, true);
  if (it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return;
  var D = gOPD(it, key);
  if (D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) D.enumerable = true;
  return D;
};
var $getOwnPropertyNames = function getOwnPropertyNames(it) {
  var names = gOPN(toIObject(it));
  var result = [];
  var i = 0;
  var key;
  while (names.length > i) {
    if (!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META) result.push(key);
  } return result;
};
var $getOwnPropertySymbols = function getOwnPropertySymbols(it) {
  var IS_OP = it === ObjectProto;
  var names = gOPN(IS_OP ? OPSymbols : toIObject(it));
  var result = [];
  var i = 0;
  var key;
  while (names.length > i) {
    if (has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true)) result.push(AllSymbols[key]);
  } return result;
};

// 19.4.1.1 Symbol([description])
if (!USE_NATIVE) {
  $Symbol = function Symbol() {
    if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor!');
    var tag = uid(arguments.length > 0 ? arguments[0] : undefined);
    var $set = function (value) {
      if (this === ObjectProto) $set.call(OPSymbols, value);
      if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;
      setSymbolDesc(this, tag, createDesc(1, value));
    };
    if (DESCRIPTORS && setter) setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set });
    return wrap(tag);
  };
  redefine($Symbol[PROTOTYPE], 'toString', function toString() {
    return this._k;
  });

  $GOPD.f = $getOwnPropertyDescriptor;
  $DP.f = $defineProperty;
  __webpack_require__(/*! ./_object-gopn */ "../node_modules/core-js/library/modules/_object-gopn.js").f = gOPNExt.f = $getOwnPropertyNames;
  __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js").f = $propertyIsEnumerable;
  $GOPS.f = $getOwnPropertySymbols;

  if (DESCRIPTORS && !__webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js")) {
    redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);
  }

  wksExt.f = function (name) {
    return wrap(wks(name));
  };
}

$export($export.G + $export.W + $export.F * !USE_NATIVE, { Symbol: $Symbol });

for (var es6Symbols = (
  // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14
  'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'
).split(','), j = 0; es6Symbols.length > j;)wks(es6Symbols[j++]);

for (var wellKnownSymbols = $keys(wks.store), k = 0; wellKnownSymbols.length > k;) wksDefine(wellKnownSymbols[k++]);

$export($export.S + $export.F * !USE_NATIVE, 'Symbol', {
  // 19.4.2.1 Symbol.for(key)
  'for': function (key) {
    return has(SymbolRegistry, key += '')
      ? SymbolRegistry[key]
      : SymbolRegistry[key] = $Symbol(key);
  },
  // 19.4.2.5 Symbol.keyFor(sym)
  keyFor: function keyFor(sym) {
    if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol!');
    for (var key in SymbolRegistry) if (SymbolRegistry[key] === sym) return key;
  },
  useSetter: function () { setter = true; },
  useSimple: function () { setter = false; }
});

$export($export.S + $export.F * !USE_NATIVE, 'Object', {
  // 19.1.2.2 Object.create(O [, Properties])
  create: $create,
  // 19.1.2.4 Object.defineProperty(O, P, Attributes)
  defineProperty: $defineProperty,
  // 19.1.2.3 Object.defineProperties(O, Properties)
  defineProperties: $defineProperties,
  // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
  getOwnPropertyDescriptor: $getOwnPropertyDescriptor,
  // 19.1.2.7 Object.getOwnPropertyNames(O)
  getOwnPropertyNames: $getOwnPropertyNames,
  // 19.1.2.8 Object.getOwnPropertySymbols(O)
  getOwnPropertySymbols: $getOwnPropertySymbols
});

// Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives
// https://bugs.chromium.org/p/v8/issues/detail?id=3443
var FAILS_ON_PRIMITIVES = $fails(function () { $GOPS.f(1); });

$export($export.S + $export.F * FAILS_ON_PRIMITIVES, 'Object', {
  getOwnPropertySymbols: function getOwnPropertySymbols(it) {
    return $GOPS.f(toObject(it));
  }
});

// 24.3.2 JSON.stringify(value [, replacer [, space]])
$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function () {
  var S = $Symbol();
  // MS Edge converts symbol values to JSON as {}
  // WebKit converts symbol values to JSON as null
  // V8 throws on boxed symbols
  return _stringify([S]) != '[null]' || _stringify({ a: S }) != '{}' || _stringify(Object(S)) != '{}';
})), 'JSON', {
  stringify: function stringify(it) {
    var args = [it];
    var i = 1;
    var replacer, $replacer;
    while (arguments.length > i) args.push(arguments[i++]);
    $replacer = replacer = args[1];
    if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined
    if (!isArray(replacer)) replacer = function (key, value) {
      if (typeof $replacer == 'function') value = $replacer.call(this, key, value);
      if (!isSymbol(value)) return value;
    };
    args[1] = replacer;
    return _stringify.apply($JSON, args);
  }
});

// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint)
$Symbol[PROTOTYPE][TO_PRIMITIVE] || __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js")($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);
// 19.4.3.5 Symbol.prototype[@@toStringTag]
setToStringTag($Symbol, 'Symbol');
// 20.2.1.9 Math[@@toStringTag]
setToStringTag(Math, 'Math', true);
// 24.3.3 JSON[@@toStringTag]
setToStringTag(global.JSON, 'JSON', true);


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.object.values.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.object.values.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://github.com/tc39/proposal-object-values-entries
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var $values = __webpack_require__(/*! ./_object-to-array */ "../node_modules/core-js/library/modules/_object-to-array.js")(false);

$export($export.S, 'Object', {
  values: function values(it) {
    return $values(it);
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.symbol.async-iterator.js":
/*!****************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.symbol.async-iterator.js ***!
  \****************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js")('asyncIterator');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.symbol.observable.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.symbol.observable.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js")('observable');


/***/ }),

/***/ "../node_modules/core-js/library/modules/web.dom.iterable.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/web.dom.iterable.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ./es6.array.iterator */ "../node_modules/core-js/library/modules/es6.array.iterator.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var TO_STRING_TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('toStringTag');

var DOMIterables = ('CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,' +
  'DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,' +
  'MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,' +
  'SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,' +
  'TextTrackList,TouchList').split(',');

for (var i = 0; i < DOMIterables.length; i++) {
  var NAME = DOMIterables[i];
  var Collection = global[NAME];
  var proto = Collection && Collection.prototype;
  if (proto && !proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);
  Iterators[NAME] = Iterators.Array;
}


/***/ }),

/***/ "../node_modules/core-js/modules/_a-function.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_a-function.js ***!
  \******************************************************/
/***/ ((module) => {

module.exports = function (it) {
  if (typeof it != 'function') throw TypeError(it + ' is not a function!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_an-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_an-object.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
module.exports = function (it) {
  if (!isObject(it)) throw TypeError(it + ' is not an object!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-methods.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_array-methods.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 0 -> Array#forEach
// 1 -> Array#map
// 2 -> Array#filter
// 3 -> Array#some
// 4 -> Array#every
// 5 -> Array#find
// 6 -> Array#findIndex
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/modules/_ctx.js");
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/modules/_iobject.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/modules/_to-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var asc = __webpack_require__(/*! ./_array-species-create */ "../node_modules/core-js/modules/_array-species-create.js");
module.exports = function (TYPE, $create) {
  var IS_MAP = TYPE == 1;
  var IS_FILTER = TYPE == 2;
  var IS_SOME = TYPE == 3;
  var IS_EVERY = TYPE == 4;
  var IS_FIND_INDEX = TYPE == 6;
  var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
  var create = $create || asc;
  return function ($this, callbackfn, that) {
    var O = toObject($this);
    var self = IObject(O);
    var f = ctx(callbackfn, that, 3);
    var length = toLength(self.length);
    var index = 0;
    var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;
    var val, res;
    for (;length > index; index++) if (NO_HOLES || index in self) {
      val = self[index];
      res = f(val, index, O);
      if (TYPE) {
        if (IS_MAP) result[index] = res;   // map
        else if (res) switch (TYPE) {
          case 3: return true;             // some
          case 5: return val;              // find
          case 6: return index;            // findIndex
          case 2: result.push(val);        // filter
        } else if (IS_EVERY) return false; // every
      }
    }
    return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-species-constructor.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/modules/_array-species-constructor.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var isArray = __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/modules/_is-array.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('species');

module.exports = function (original) {
  var C;
  if (isArray(original)) {
    C = original.constructor;
    // cross-realm fallback
    if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
    if (isObject(C)) {
      C = C[SPECIES];
      if (C === null) C = undefined;
    }
  } return C === undefined ? Array : C;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-species-create.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_array-species-create.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 9.4.2.3 ArraySpeciesCreate(originalArray, length)
var speciesConstructor = __webpack_require__(/*! ./_array-species-constructor */ "../node_modules/core-js/modules/_array-species-constructor.js");

module.exports = function (original, length) {
  return new (speciesConstructor(original))(length);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_cof.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_cof.js ***!
  \***********************************************/
/***/ ((module) => {

var toString = {}.toString;

module.exports = function (it) {
  return toString.call(it).slice(8, -1);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_core.js":
/*!************************************************!*\
  !*** ../node_modules/core-js/modules/_core.js ***!
  \************************************************/
/***/ ((module) => {

var core = module.exports = { version: '2.6.12' };
if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/modules/_ctx.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_ctx.js ***!
  \***********************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// optional / simple context binding
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/modules/_a-function.js");
module.exports = function (fn, that, length) {
  aFunction(fn);
  if (that === undefined) return fn;
  switch (length) {
    case 1: return function (a) {
      return fn.call(that, a);
    };
    case 2: return function (a, b) {
      return fn.call(that, a, b);
    };
    case 3: return function (a, b, c) {
      return fn.call(that, a, b, c);
    };
  }
  return function (/* ...args */) {
    return fn.apply(that, arguments);
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_defined.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_defined.js ***!
  \***************************************************/
/***/ ((module) => {

// 7.2.1 RequireObjectCoercible(argument)
module.exports = function (it) {
  if (it == undefined) throw TypeError("Can't call method on  " + it);
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_descriptors.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_descriptors.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Thank's IE8 for his funny defineProperty
module.exports = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () {
  return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/modules/_dom-create.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_dom-create.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js").document;
// typeof document.createElement is 'object' in old IE
var is = isObject(document) && isObject(document.createElement);
module.exports = function (it) {
  return is ? document.createElement(it) : {};
};


/***/ }),

/***/ "../node_modules/core-js/modules/_export.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_export.js ***!
  \**************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/modules/_ctx.js");
var PROTOTYPE = 'prototype';

var $export = function (type, name, source) {
  var IS_FORCED = type & $export.F;
  var IS_GLOBAL = type & $export.G;
  var IS_STATIC = type & $export.S;
  var IS_PROTO = type & $export.P;
  var IS_BIND = type & $export.B;
  var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE];
  var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
  var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {});
  var key, own, out, exp;
  if (IS_GLOBAL) source = name;
  for (key in source) {
    // contains in native
    own = !IS_FORCED && target && target[key] !== undefined;
    // export native or passed
    out = (own ? target : source)[key];
    // bind timers to global for call from export context
    exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
    // extend global
    if (target) redefine(target, key, out, type & $export.U);
    // export
    if (exports[key] != out) hide(exports, key, exp);
    if (IS_PROTO && expProto[key] != out) expProto[key] = out;
  }
};
global.core = core;
// type bitmap
$export.F = 1;   // forced
$export.G = 2;   // global
$export.S = 4;   // static
$export.P = 8;   // proto
$export.B = 16;  // bind
$export.W = 32;  // wrap
$export.U = 64;  // safe
$export.R = 128; // real proto method for `library`
module.exports = $export;


/***/ }),

/***/ "../node_modules/core-js/modules/_fails.js":
/*!*************************************************!*\
  !*** ../node_modules/core-js/modules/_fails.js ***!
  \*************************************************/
/***/ ((module) => {

module.exports = function (exec) {
  try {
    return !!exec();
  } catch (e) {
    return true;
  }
};


/***/ }),

/***/ "../node_modules/core-js/modules/_function-to-string.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/modules/_function-to-string.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/modules/_shared.js")('native-function-to-string', Function.toString);


/***/ }),

/***/ "../node_modules/core-js/modules/_global.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_global.js ***!
  \**************************************************/
/***/ ((module) => {

// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
var global = module.exports = typeof window != 'undefined' && window.Math == Math
  ? window : typeof self != 'undefined' && self.Math == Math ? self
  // eslint-disable-next-line no-new-func
  : Function('return this')();
if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/modules/_has.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_has.js ***!
  \***********************************************/
/***/ ((module) => {

var hasOwnProperty = {}.hasOwnProperty;
module.exports = function (it, key) {
  return hasOwnProperty.call(it, key);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_hide.js":
/*!************************************************!*\
  !*** ../node_modules/core-js/modules/_hide.js ***!
  \************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/modules/_property-desc.js");
module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? function (object, key, value) {
  return dP.f(object, key, createDesc(1, value));
} : function (object, key, value) {
  object[key] = value;
  return object;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_ie8-dom-define.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/_ie8-dom-define.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") && !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () {
  return Object.defineProperty(__webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/modules/_dom-create.js")('div'), 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/modules/_iobject.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_iobject.js ***!
  \***************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// fallback for non-array-like ES3 and non-enumerable old V8 strings
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
// eslint-disable-next-line no-prototype-builtins
module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
  return cof(it) == 'String' ? it.split('') : Object(it);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_is-array.js":
/*!****************************************************!*\
  !*** ../node_modules/core-js/modules/_is-array.js ***!
  \****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.2.2 IsArray(argument)
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
module.exports = Array.isArray || function isArray(arg) {
  return cof(arg) == 'Array';
};


/***/ }),

/***/ "../node_modules/core-js/modules/_is-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_is-object.js ***!
  \*****************************************************/
/***/ ((module) => {

module.exports = function (it) {
  return typeof it === 'object' ? it !== null : typeof it === 'function';
};


/***/ }),

/***/ "../node_modules/core-js/modules/_library.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_library.js ***!
  \***************************************************/
/***/ ((module) => {

module.exports = false;


/***/ }),

/***/ "../node_modules/core-js/modules/_object-dp.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_object-dp.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/modules/_ie8-dom-define.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/modules/_to-primitive.js");
var dP = Object.defineProperty;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? Object.defineProperty : function defineProperty(O, P, Attributes) {
  anObject(O);
  P = toPrimitive(P, true);
  anObject(Attributes);
  if (IE8_DOM_DEFINE) try {
    return dP(O, P, Attributes);
  } catch (e) { /* empty */ }
  if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
  if ('value' in Attributes) O[P] = Attributes.value;
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_property-desc.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_property-desc.js ***!
  \*********************************************************/
/***/ ((module) => {

module.exports = function (bitmap, value) {
  return {
    enumerable: !(bitmap & 1),
    configurable: !(bitmap & 2),
    writable: !(bitmap & 4),
    value: value
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_redefine.js":
/*!****************************************************!*\
  !*** ../node_modules/core-js/modules/_redefine.js ***!
  \****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var SRC = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/modules/_uid.js")('src');
var $toString = __webpack_require__(/*! ./_function-to-string */ "../node_modules/core-js/modules/_function-to-string.js");
var TO_STRING = 'toString';
var TPL = ('' + $toString).split(TO_STRING);

__webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js").inspectSource = function (it) {
  return $toString.call(it);
};

(module.exports = function (O, key, val, safe) {
  var isFunction = typeof val == 'function';
  if (isFunction) has(val, 'name') || hide(val, 'name', key);
  if (O[key] === val) return;
  if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));
  if (O === global) {
    O[key] = val;
  } else if (!safe) {
    delete O[key];
    hide(O, key, val);
  } else if (O[key]) {
    O[key] = val;
  } else {
    hide(O, key, val);
  }
// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
})(Function.prototype, TO_STRING, function toString() {
  return typeof this == 'function' && this[SRC] || $toString.call(this);
});


/***/ }),

/***/ "../node_modules/core-js/modules/_shared.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_shared.js ***!
  \**************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var SHARED = '__core-js_shared__';
var store = global[SHARED] || (global[SHARED] = {});

(module.exports = function (key, value) {
  return store[key] || (store[key] = value !== undefined ? value : {});
})('versions', []).push({
  version: core.version,
  mode: __webpack_require__(/*! ./_library */ "../node_modules/core-js/modules/_library.js") ? 'pure' : 'global',
  copyright: '© 2020 Denis Pushkarev (zloirock.ru)'
});


/***/ }),

/***/ "../node_modules/core-js/modules/_strict-method.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_strict-method.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js");

module.exports = function (method, arg) {
  return !!method && fails(function () {
    // eslint-disable-next-line no-useless-call
    arg ? method.call(null, function () { /* empty */ }, 1) : method.call(null);
  });
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-integer.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_to-integer.js ***!
  \******************************************************/
/***/ ((module) => {

// 7.1.4 ToInteger
var ceil = Math.ceil;
var floor = Math.floor;
module.exports = function (it) {
  return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-length.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_to-length.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.15 ToLength
var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var min = Math.min;
module.exports = function (it) {
  return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_to-object.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.13 ToObject(argument)
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
module.exports = function (it) {
  return Object(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-primitive.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/modules/_to-primitive.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.1 ToPrimitive(input [, PreferredType])
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
// instead of the ES6 spec version, we didn't implement @@toPrimitive case
// and the second argument - flag - preferred type is a string
module.exports = function (it, S) {
  if (!isObject(it)) return it;
  var fn, val;
  if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
  if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  throw TypeError("Can't convert object to primitive value");
};


/***/ }),

/***/ "../node_modules/core-js/modules/_uid.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_uid.js ***!
  \***********************************************/
/***/ ((module) => {

var id = 0;
var px = Math.random();
module.exports = function (key) {
  return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_wks.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_wks.js ***!
  \***********************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var store = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/modules/_shared.js")('wks');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/modules/_uid.js");
var Symbol = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js").Symbol;
var USE_SYMBOL = typeof Symbol == 'function';

var $exports = module.exports = function (name) {
  return store[name] || (store[name] =
    USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
};

$exports.store = store;


/***/ }),

/***/ "../node_modules/core-js/modules/es6.array.map.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.array.map.js ***!
  \********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var $map = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/modules/_array-methods.js")(1);

$export($export.P + $export.F * !__webpack_require__(/*! ./_strict-method */ "../node_modules/core-js/modules/_strict-method.js")([].map, true), 'Array', {
  // 22.1.3.15 / 15.4.4.19 Array.prototype.map(callbackfn [, thisArg])
  map: function map(callbackfn /* , thisArg */) {
    return $map(this, callbackfn, arguments[1]);
  }
});


/***/ })

/******/ 	});
/************************************************************************/
/******/ 	// The module cache
/******/ 	var __webpack_module_cache__ = {};
/******/ 	
/******/ 	// The require function
/******/ 	function __webpack_require__(moduleId) {
/******/ 		// Check if module is in cache
/******/ 		var cachedModule = __webpack_module_cache__[moduleId];
/******/ 		if (cachedModule !== undefined) {
/******/ 			return cachedModule.exports;
/******/ 		}
/******/ 		// Create a new module (and put it into the cache)
/******/ 		var module = __webpack_module_cache__[moduleId] = {
/******/ 			// no module.id needed
/******/ 			// no module.loaded needed
/******/ 			exports: {}
/******/ 		};
/******/ 	
/******/ 		// Execute the module function
/******/ 		__webpack_modules__[moduleId](module, module.exports, __webpack_require__);
/******/ 	
/******/ 		// Return the exports of the module
/******/ 		return module.exports;
/******/ 	}
/******/ 	
/************************************************************************/
var __webpack_exports__ = {};
// This entry need to be wrapped in an IIFE because it need to be in strict mode.
(() => {
"use strict";
/*!*********************************************************!*\
  !*** ../modules/admin-bar/assets/js/frontend/module.js ***!
  \*********************************************************/


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

/* global elementorAdminBarConfig, jQuery */
var AdminBar = /*#__PURE__*/function (_elementorModules$Vie) {
  (0, _inherits2.default)(AdminBar, _elementorModules$Vie);

  var _super = (0, _createSuper2.default)(AdminBar);

  function AdminBar() {
    (0, _classCallCheck2.default)(this, AdminBar);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(AdminBar, [{
    key: "getDefaultSettings",
    value:
    /**
     * @returns {{}}
     */
    function getDefaultSettings() {
      return {
        prefixes: {
          adminBarId: 'wp-admin-bar-'
        },
        classes: {
          adminBarItem: 'ab-item',
          adminBarItemTitle: 'elementor-edit-link-title',
          adminBarItemSubTitle: 'elementor-edit-link-type',
          adminBarNonLinkItem: 'ab-empty-item',
          adminBarSubItemsWrapper: 'ab-sub-wrapper',
          adminBarSubItems: 'ab-submenu'
        },
        selectors: {
          adminBar: '#wp-admin-bar-root-default',
          editMenuItem: '#wp-admin-bar-edit',
          newMenuItem: '#wp-admin-bar-new-content'
        }
      };
    }
    /**
     * @returns {{$adminBar: (jQuery)}}
     */

  }, {
    key: "getDefaultElements",
    value: function getDefaultElements() {
      var _this$getSettings = this.getSettings('selectors'),
          adminBar = _this$getSettings.adminBar,
          editMenuItem = _this$getSettings.editMenuItem,
          newMenuItem = _this$getSettings.newMenuItem;

      return {
        $adminBar: jQuery(adminBar),
        $editMenuItem: jQuery(editMenuItem),
        $newMenuItem: jQuery(newMenuItem)
      };
    }
    /**
     * Init
     */

  }, {
    key: "onInit",
    value: function onInit() {
      (0, _get2.default)((0, _getPrototypeOf2.default)(AdminBar.prototype), "onInit", this).call(this);
      this.createMenu(elementorAdminBarConfig);
    }
    /**
     * Main method that creates the menu base on the config that provided.
     *
     * @param adminBarConfig
     */

  }, {
    key: "createMenu",
    value: function createMenu(adminBarConfig) {
      var $items = this.createMenuItems((0, _values.default)(adminBarConfig));

      if (this.elements.$editMenuItem.length) {
        // This is the normal case, when user visit a preview page of single post.
        this.elements.$editMenuItem.after($items);
      } else if (this.elements.$newMenuItem) {
        // This is another case, when user visit a preview page that cannot be edited e.g: archive page.
        this.elements.$newMenuItem.after($items);
      } else {
        // Default fallback in case there are no "new" or "edit" button.
        this.elements.$adminBar.append($items);
      }
    }
    /**
     * Creates a menu items from array of declaration.
     *
     * @param items
     * @returns {jQuery[]}
     */

  }, {
    key: "createMenuItems",
    value: function createMenuItems(items) {
      var _this = this;

      return items.map(function (item) {
        return _this.createMenuItem(item);
      });
    }
    /**
     * Creates a menu item, both for menu and sub menu.
     *
     * @param item
     * @returns {jQuery}
     */

  }, {
    key: "createMenuItem",
    value: function createMenuItem(item) {
      var children = item.children ? (0, _values.default)(item.children) : [];
      var id = "".concat(this.getSettings('prefixes.adminBarId')).concat(item.id);
      var $title = jQuery('<span>', {
        class: this.getSettings('classes.adminBarItemTitle'),
        html: item.title
      });
      var $subTitle = item.sub_title ? jQuery('<span>', {
        class: this.getSettings('classes.adminBarItemSubTitle'),
        html: item.sub_title
      }) : null;
      var $item = jQuery(item.href ? '<a>' : '<div>', {
        'aria-haspopup': children.length ? true : null,
        class: [this.getSettings('classes.adminBarItem'), item.href ? '' : this.getSettings('classes.adminBarNonLinkItem'), item.class].join(' '),
        href: item.href
      }).append([$title, $subTitle]);
      return jQuery('<li>', {
        id: id,
        class: children.length ? 'menupop' : '' + (item.parent_class || 'elementor-general-section')
      }).append([$item, children.length ? this.createSubMenuItems(id, children) : null]);
    }
    /**
     * Creates sub menu items wrapper.
     *
     * @param parentId
     * @param children
     * @returns {jQuery}
     */

  }, {
    key: "createSubMenuItems",
    value: function createSubMenuItems(parentId, children) {
      var $list = jQuery('<ul>', {
        class: this.getSettings('classes.adminBarSubItems'),
        id: "".concat(parentId, "-default")
      }).append(this.createMenuItems(children));
      return jQuery('<div>', {
        class: this.getSettings('classes.adminBarSubItemsWrapper')
      }).append($list);
    }
  }]);
  return AdminBar;
}(elementorModules.ViewModule);

document.addEventListener('DOMContentLoaded', function () {
  return new AdminBar();
});
})();

/******/ })()
;
//# sourceMappingURL=elementor-admin-bar.js.mapassets/js/toggle.1aca60f44e355cb43256.bundle.min.js000064400000007205151327220410015137 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(self.webpackChunkelementor=self.webpackChunkelementor||[]).push([[181],{9728:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class baseTabs extends elementorModules.frontend.handlers.Base{getDefaultSettings(){return{selectors:{tablist:'[role="tablist"]',tabTitle:".elementor-tab-title",tabContent:".elementor-tab-content"},classes:{active:"elementor-active"},showTabFn:"show",hideTabFn:"hide",toggleSelf:!0,hidePrevious:!0,autoExpand:!0,keyDirection:{ArrowLeft:elementorFrontendConfig.is_rtl?1:-1,ArrowUp:-1,ArrowRight:elementorFrontendConfig.is_rtl?-1:1,ArrowDown:1}}}getDefaultElements(){const e=this.getSettings("selectors");return{$tabTitles:this.findElement(e.tabTitle),$tabContents:this.findElement(e.tabContent)}}activateDefaultTab(){const e=this.getSettings();if(!e.autoExpand||"editor"===e.autoExpand&&!this.isEdit)return;const t=this.getEditSettings("activeItemIndex")||1,a={showTabFn:e.showTabFn,hideTabFn:e.hideTabFn};this.setSettings({showTabFn:"show",hideTabFn:"hide"}),this.changeActiveTab(t),this.setSettings(a)}handleKeyboardNavigation(e){const t=e.currentTarget,a=jQuery(t.closest(this.getSettings("selectors").tablist)),s=a.find(this.getSettings("selectors").tabTitle),i="vertical"===a.attr("aria-orientation");switch(e.key){case"ArrowLeft":case"ArrowRight":if(i)return;break;case"ArrowUp":case"ArrowDown":if(!i)return;e.preventDefault();break;case"Home":return e.preventDefault(),void s.first().focus();case"End":return e.preventDefault(),void s.last().focus();default:return}const n=t.getAttribute("data-tab")-1,r=this.getSettings("keyDirection")[e.key],o=s[n+r];o?o.focus():-1===n+r?s.last().focus():s.first().focus()}deactivateActiveTab(e){const t=this.getSettings(),a=t.classes.active,s=e?'[data-tab="'+e+'"]':"."+a,i=this.elements.$tabTitles.filter(s),n=this.elements.$tabContents.filter(s);i.add(n).removeClass(a),i.attr({tabindex:"-1","aria-selected":"false","aria-expanded":"false"}),n[t.hideTabFn](),n.attr("hidden","hidden")}activateTab(e){const t=this.getSettings(),a=t.classes.active,s=this.elements.$tabTitles.filter('[data-tab="'+e+'"]'),i=this.elements.$tabContents.filter('[data-tab="'+e+'"]'),n="show"===t.showTabFn?0:400;s.add(i).addClass(a),s.attr({tabindex:"0","aria-selected":"true","aria-expanded":"true"}),i[t.showTabFn](n,(()=>elementorFrontend.elements.$window.trigger("resize"))),i.removeAttr("hidden")}isActiveTab(e){return this.elements.$tabTitles.filter('[data-tab="'+e+'"]').hasClass(this.getSettings("classes.active"))}bindEvents(){this.elements.$tabTitles.on({keydown:e=>{jQuery(e.target).is("a")&&"Enter"===e.key&&e.preventDefault(),["End","Home","ArrowUp","ArrowDown"].includes(e.key)&&this.handleKeyboardNavigation(e)},keyup:e=>{switch(e.key){case"ArrowLeft":case"ArrowRight":this.handleKeyboardNavigation(e);break;case"Enter":case"Space":e.preventDefault(),this.changeActiveTab(e.currentTarget.getAttribute("data-tab"))}},click:e=>{e.preventDefault(),this.changeActiveTab(e.currentTarget.getAttribute("data-tab"))}})}onInit(...e){super.onInit(...e),this.activateDefaultTab()}onEditSettingsChange(e){"activeItemIndex"===e&&this.activateDefaultTab()}changeActiveTab(e){const t=this.isActiveTab(e),a=this.getSettings();!a.toggleSelf&&t||!a.hidePrevious||this.deactivateActiveTab(),!a.hidePrevious&&t&&this.deactivateActiveTab(e),t||this.activateTab(e)}}t.default=baseTabs},2:(e,t,a)=>{"use strict";var s=a(7914);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=s(a(9728));class Toggle extends i.default{getDefaultSettings(){return{...super.getDefaultSettings(),showTabFn:"slideDown",hideTabFn:"slideUp",hidePrevious:!1,autoExpand:"editor"}}}t.default=Toggle}}]);assets/js/text-path.9b3ece1b692d34d012b5.bundle.js000064400000015271151327220410015077 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(self["webpackChunkelementor"] = self["webpackChunkelementor"] || []).push([["text-path"],{

/***/ "../modules/shapes/assets/js/frontend/handlers/text-path.js":
/*!******************************************************************!*\
  !*** ../modules/shapes/assets/js/frontend/handlers/text-path.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

var _utils = __webpack_require__(/*! elementor-frontend/utils/utils */ "../assets/dev/js/frontend/utils/utils.js");

class TextPathHandler extends elementorModules.frontend.handlers.Base {
  getDefaultSettings() {
    return {
      selectors: {
        pathContainer: '.e-text-path',
        svg: '.e-text-path > svg'
      }
    };
  }

  getDefaultElements() {
    const {
      selectors
    } = this.getSettings();
    const element = this.$element[0];
    return {
      widgetWrapper: element,
      pathContainer: element.querySelector(selectors.pathContainer),
      svg: element.querySelector(selectors.svg),
      textPath: element.querySelector(selectors.textPath)
    };
  }
  /**
   * Initialize the object.
   *
   * @returns {void}
   */


  onInit() {
    this.elements = this.getDefaultElements(); // Generate unique IDs using the wrapper's `data-id`.

    this.pathId = `e-path-${this.elements.widgetWrapper.dataset.id}`;
    this.textPathId = `e-text-path-${this.elements.widgetWrapper.dataset.id}`;

    if (!this.elements.svg) {
      return;
    }

    this.initTextPath();
  }
  /**
   *  Gets a text offset (relative to the starting point) as a string or int, and set it as percents to the
   *  `startOffset` attribute of the `<textPath>` element.
   *
   * @param offset {string|int} The text start offset.
   *
   * @returns {void}
   */


  setOffset(offset) {
    if (!this.elements.textPath) {
      return;
    }

    if (this.isRTL()) {
      offset = 100 - parseInt(offset);
    }

    this.elements.textPath.setAttribute('startOffset', offset + '%');
  }
  /**
   * Handle element settings changes.
   *
   * @param setting {Object} The settings object from the editor.
   *
   * @returns {void}
   */


  onElementChange(setting) {
    const {
      start_point: startPoint,
      text
    } = this.getElementSettings();

    switch (setting) {
      case 'start_point':
        this.setOffset(startPoint.size);
        break;

      case 'text':
        this.setText(text);
        break;

      case 'text_path_direction':
        this.setOffset(startPoint.size);
        this.setText(text);
        break;

      default:
        break;
    }
  }
  /**
   * Attach a unique ID to the `path` element in the SVG, based on the container's ID.
   * This function selects the first `path` with a `data-path-anchor` attribute, or defaults to the first `path` element.
   *
   * @returns {void}
   */


  attachIdToPath() {
    // Prioritize the custom `data` attribute over the `path` element, and fallback to the first `path`.
    const path = this.elements.svg.querySelector('[data-path-anchor]') || this.elements.svg.querySelector('path');
    path.id = this.pathId;
  }
  /**
   * Initialize & build the SVG markup of the widget using the settings from the panel.
   *
   * @returns {void}
   */


  initTextPath() {
    const {
      start_point: startPoint
    } = this.getElementSettings();
    const text = this.elements.pathContainer.dataset.text;
    this.attachIdToPath(); // Generate the `textPath` element with its settings.

    this.elements.svg.innerHTML += `
			<text>
				<textPath id="${this.textPathId}" href="#${this.pathId}"></textPath>
			</text>
		`; // Regenerate the elements object to have access to `this.elements.textPath`.

    this.elements.textPath = this.elements.svg.querySelector(`#${this.textPathId}`);
    this.setOffset(startPoint.size);
    this.setText(text);
  }
  /**
   * Sets the text on the SVG path, including the link (if set) and its properties.
   *
   * @param newText {string} The new text to put in the text path.
   *
   * @returns {void}
   */


  setText(newText) {
    var _this$getElementSetti;

    const {
      url,
      is_external: isExternal,
      nofollow
    } = (_this$getElementSetti = this.getElementSettings()) === null || _this$getElementSetti === void 0 ? void 0 : _this$getElementSetti.link;
    const target = isExternal ? '_blank' : '',
          rel = nofollow ? 'nofollow' : ''; // Add link attributes.

    if (url) {
      newText = `<a href="${(0, _utils.escapeHTML)(url)}" rel="${rel}" target="${target}">${(0, _utils.escapeHTML)(newText)}</a>`;
    } // Set the text.


    this.elements.textPath.innerHTML = newText; // Remove the cloned element if exists.

    const existingClone = this.elements.svg.querySelector(`#${this.textPathId}-clone`);

    if (existingClone) {
      existingClone.remove();
    } // Reverse the text if needed.


    if (this.shouldReverseText()) {
      // Keep an invisible selectable copy of original element for better a11y.
      const clone = this.elements.textPath.cloneNode();
      clone.id += '-clone';
      clone.classList.add('elementor-hidden');
      clone.textContent = newText;
      this.elements.textPath.parentNode.appendChild(clone);
      this.reverseToRTL();
    }
  }
  /**
   * Determine if the text direction of the widget should be RTL or not, based on the site direction and the widget's settings.
   *
   * @returns {boolean}
   */


  isRTL() {
    const {
      text_path_direction: direction
    } = this.getElementSettings();
    let isRTL = elementorFrontend.config.is_rtl;

    if (direction) {
      isRTL = 'rtl' === direction;
    }

    return isRTL;
  }
  /**
   * Determine if it should RTL the text (reversing it, etc.).
   *
   * @returns {boolean}
   */


  shouldReverseText() {
    return this.isRTL() && -1 === navigator.userAgent.indexOf('Firefox');
  }
  /**
   * Reverse the text path to support RTL.
   *
   * @returns {void}
   */


  reverseToRTL() {
    // Make sure to use the inner `a` tag if exists.
    let parentElement = this.elements.textPath;
    parentElement = parentElement.querySelector('a') || parentElement; // Catch all RTL chars and reverse their order.

    const pattern = /([\u0591-\u07FF\u200F\u202B\u202E\uFB1D-\uFDFD\uFE70-\uFEFC\s$&+,:;=?@#|'<>.^*()%!-]+)/ig; // Reverse the text.

    parentElement.textContent = parentElement.textContent.replace(pattern, word => {
      return word.split('').reverse().join('');
    }); // Add a11y attributes.

    parentElement.setAttribute('aria-hidden', true);
  }

}

exports.default = TextPathHandler;

/***/ })

}]);
//# sourceMappingURL=text-path.9b3ece1b692d34d012b5.bundle.js.mapassets/js/common-modules.js000064400001437311151327220410011765 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
/******/ (() => { // webpackBootstrap
/******/ 	var __webpack_modules__ = ({

/***/ "../node_modules/@babel/runtime-corejs2/core-js/array/from.js":
/*!********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/array/from.js ***!
  \********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/array/from */ "../node_modules/core-js/library/fn/array/from.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/array/is-array */ "../node_modules/core-js/library/fn/array/is-array.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/map.js":
/*!*************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/map.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/map */ "../node_modules/core-js/library/fn/map.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/create.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/create.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/create */ "../node_modules/core-js/library/fn/object/create.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js":
/*!********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js ***!
  \********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/define-property */ "../node_modules/core-js/library/fn/object/define-property.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/entries.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/entries */ "../node_modules/core-js/library/fn/object/entries.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js":
/*!********************************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js ***!
  \********************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/get-own-property-descriptor */ "../node_modules/core-js/library/fn/object/get-own-property-descriptor.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/get-prototype-of.js":
/*!*********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/get-prototype-of.js ***!
  \*********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/get-prototype-of */ "../node_modules/core-js/library/fn/object/get-prototype-of.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/keys.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/keys */ "../node_modules/core-js/library/fn/object/keys.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js":
/*!*********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js ***!
  \*********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/set-prototype-of */ "../node_modules/core-js/library/fn/object/set-prototype-of.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/values.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/values */ "../node_modules/core-js/library/fn/object/values.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/parse-float.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/parse-float.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/parse-float */ "../node_modules/core-js/library/fn/parse-float.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/parse-int.js":
/*!*******************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/parse-int.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/parse-int */ "../node_modules/core-js/library/fn/parse-int.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/promise.js":
/*!*****************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/promise.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/promise */ "../node_modules/core-js/library/fn/promise.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js":
/*!***************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js ***!
  \***************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/reflect/construct */ "../node_modules/core-js/library/fn/reflect/construct.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/reflect/get.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/reflect/get.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/reflect/get */ "../node_modules/core-js/library/fn/reflect/get.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js":
/*!****************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/symbol.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/symbol */ "../node_modules/core-js/library/fn/symbol/index.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/symbol/has-instance.js":
/*!*****************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/symbol/has-instance.js ***!
  \*****************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/symbol/has-instance */ "../node_modules/core-js/library/fn/symbol/has-instance.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js":
/*!*************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js ***!
  \*************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/symbol/iterator */ "../node_modules/core-js/library/fn/symbol/iterator.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/weak-map.js":
/*!******************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/weak-map.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/weak-map */ "../node_modules/core-js/library/fn/weak-map.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/arrayLikeToArray.js":
/*!**************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/arrayLikeToArray.js ***!
  \**************************************************************************/
/***/ ((module) => {

function _arrayLikeToArray(arr, len) {
  if (len == null || len > arr.length) len = arr.length;

  for (var i = 0, arr2 = new Array(len); i < len; i++) {
    arr2[i] = arr[i];
  }

  return arr2;
}

module.exports = _arrayLikeToArray;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/arrayWithHoles.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/arrayWithHoles.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Array$isArray = __webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js");

function _arrayWithHoles(arr) {
  if (_Array$isArray(arr)) return arr;
}

module.exports = _arrayWithHoles;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js":
/*!*******************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js ***!
  \*******************************************************************************/
/***/ ((module) => {

function _assertThisInitialized(self) {
  if (self === void 0) {
    throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
  }

  return self;
}

module.exports = _assertThisInitialized;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/asyncToGenerator.js":
/*!**************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/asyncToGenerator.js ***!
  \**************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Promise = __webpack_require__(/*! @babel/runtime-corejs2/core-js/promise */ "../node_modules/@babel/runtime-corejs2/core-js/promise.js");

function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
  try {
    var info = gen[key](arg);
    var value = info.value;
  } catch (error) {
    reject(error);
    return;
  }

  if (info.done) {
    resolve(value);
  } else {
    _Promise.resolve(value).then(_next, _throw);
  }
}

function _asyncToGenerator(fn) {
  return function () {
    var self = this,
        args = arguments;
    return new _Promise(function (resolve, reject) {
      var gen = fn.apply(self, args);

      function _next(value) {
        asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
      }

      function _throw(err) {
        asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
      }

      _next(undefined);
    });
  };
}

module.exports = _asyncToGenerator;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js ***!
  \************************************************************************/
/***/ ((module) => {

function _classCallCheck(instance, Constructor) {
  if (!(instance instanceof Constructor)) {
    throw new TypeError("Cannot call a class as a function");
  }
}

module.exports = _classCallCheck;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/construct.js":
/*!*******************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/construct.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Reflect$construct = __webpack_require__(/*! @babel/runtime-corejs2/core-js/reflect/construct */ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js");

var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js");

var isNativeReflectConstruct = __webpack_require__(/*! ./isNativeReflectConstruct.js */ "../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js");

function _construct(Parent, args, Class) {
  if (isNativeReflectConstruct()) {
    module.exports = _construct = _Reflect$construct;
    module.exports.default = module.exports, module.exports.__esModule = true;
  } else {
    module.exports = _construct = function _construct(Parent, args, Class) {
      var a = [null];
      a.push.apply(a, args);
      var Constructor = Function.bind.apply(Parent, a);
      var instance = new Constructor();
      if (Class) setPrototypeOf(instance, Class.prototype);
      return instance;
    };

    module.exports.default = module.exports, module.exports.__esModule = true;
  }

  return _construct.apply(null, arguments);
}

module.exports = _construct;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/createClass.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

function _defineProperties(target, props) {
  for (var i = 0; i < props.length; i++) {
    var descriptor = props[i];
    descriptor.enumerable = descriptor.enumerable || false;
    descriptor.configurable = true;
    if ("value" in descriptor) descriptor.writable = true;

    _Object$defineProperty(target, descriptor.key, descriptor);
  }
}

function _createClass(Constructor, protoProps, staticProps) {
  if (protoProps) _defineProperties(Constructor.prototype, protoProps);
  if (staticProps) _defineProperties(Constructor, staticProps);
  return Constructor;
}

module.exports = _createClass;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/createSuper.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Reflect$construct = __webpack_require__(/*! @babel/runtime-corejs2/core-js/reflect/construct */ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js");

var getPrototypeOf = __webpack_require__(/*! ./getPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js");

var isNativeReflectConstruct = __webpack_require__(/*! ./isNativeReflectConstruct.js */ "../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js");

var possibleConstructorReturn = __webpack_require__(/*! ./possibleConstructorReturn.js */ "../node_modules/@babel/runtime-corejs2/helpers/possibleConstructorReturn.js");

function _createSuper(Derived) {
  var hasNativeReflectConstruct = isNativeReflectConstruct();
  return function _createSuperInternal() {
    var Super = getPrototypeOf(Derived),
        result;

    if (hasNativeReflectConstruct) {
      var NewTarget = getPrototypeOf(this).constructor;
      result = _Reflect$construct(Super, arguments, NewTarget);
    } else {
      result = Super.apply(this, arguments);
    }

    return possibleConstructorReturn(this, result);
  };
}

module.exports = _createSuper;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

function _defineProperty(obj, key, value) {
  if (key in obj) {
    _Object$defineProperty(obj, key, {
      value: value,
      enumerable: true,
      configurable: true,
      writable: true
    });
  } else {
    obj[key] = value;
  }

  return obj;
}

module.exports = _defineProperty;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/get.js":
/*!*************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/get.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Reflect$get = __webpack_require__(/*! @babel/runtime-corejs2/core-js/reflect/get */ "../node_modules/@babel/runtime-corejs2/core-js/reflect/get.js");

var _Object$getOwnPropertyDescriptor = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-own-property-descriptor */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js");

var superPropBase = __webpack_require__(/*! ./superPropBase.js */ "../node_modules/@babel/runtime-corejs2/helpers/superPropBase.js");

function _get(target, property, receiver) {
  if (typeof Reflect !== "undefined" && _Reflect$get) {
    module.exports = _get = _Reflect$get;
    module.exports.default = module.exports, module.exports.__esModule = true;
  } else {
    module.exports = _get = function _get(target, property, receiver) {
      var base = superPropBase(target, property);
      if (!base) return;

      var desc = _Object$getOwnPropertyDescriptor(base, property);

      if (desc.get) {
        return desc.get.call(receiver);
      }

      return desc.value;
    };

    module.exports.default = module.exports, module.exports.__esModule = true;
  }

  return _get(target, property, receiver || target);
}

module.exports = _get;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$setPrototypeOf = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/set-prototype-of */ "../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js");

var _Object$getPrototypeOf = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-prototype-of */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-prototype-of.js");

function _getPrototypeOf(o) {
  module.exports = _getPrototypeOf = _Object$setPrototypeOf ? _Object$getPrototypeOf : function _getPrototypeOf(o) {
    return o.__proto__ || _Object$getPrototypeOf(o);
  };
  module.exports.default = module.exports, module.exports.__esModule = true;
  return _getPrototypeOf(o);
}

module.exports = _getPrototypeOf;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js":
/*!******************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/inherits.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$create = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/create */ "../node_modules/@babel/runtime-corejs2/core-js/object/create.js");

var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js");

function _inherits(subClass, superClass) {
  if (typeof superClass !== "function" && superClass !== null) {
    throw new TypeError("Super expression must either be null or a function");
  }

  subClass.prototype = _Object$create(superClass && superClass.prototype, {
    constructor: {
      value: subClass,
      writable: true,
      configurable: true
    }
  });
  if (superClass) setPrototypeOf(subClass, superClass);
}

module.exports = _inherits;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js":
/*!*******************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js ***!
  \*******************************************************************************/
/***/ ((module) => {

function _interopRequireDefault(obj) {
  return obj && obj.__esModule ? obj : {
    "default": obj
  };
}

module.exports = _interopRequireDefault;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js":
/*!********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js ***!
  \********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _typeof = __webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js").default;

var _WeakMap = __webpack_require__(/*! @babel/runtime-corejs2/core-js/weak-map */ "../node_modules/@babel/runtime-corejs2/core-js/weak-map.js");

var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _Object$getOwnPropertyDescriptor = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-own-property-descriptor */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js");

function _getRequireWildcardCache(nodeInterop) {
  if (typeof _WeakMap !== "function") return null;
  var cacheBabelInterop = new _WeakMap();
  var cacheNodeInterop = new _WeakMap();
  return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) {
    return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
  })(nodeInterop);
}

function _interopRequireWildcard(obj, nodeInterop) {
  if (!nodeInterop && obj && obj.__esModule) {
    return obj;
  }

  if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") {
    return {
      "default": obj
    };
  }

  var cache = _getRequireWildcardCache(nodeInterop);

  if (cache && cache.has(obj)) {
    return cache.get(obj);
  }

  var newObj = {};
  var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor;

  for (var key in obj) {
    if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
      var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null;

      if (desc && (desc.get || desc.set)) {
        _Object$defineProperty(newObj, key, desc);
      } else {
        newObj[key] = obj[key];
      }
    }
  }

  newObj["default"] = obj;

  if (cache) {
    cache.set(obj, newObj);
  }

  return newObj;
}

module.exports = _interopRequireWildcard;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/isNativeFunction.js":
/*!**************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/isNativeFunction.js ***!
  \**************************************************************************/
/***/ ((module) => {

function _isNativeFunction(fn) {
  return Function.toString.call(fn).indexOf("[native code]") !== -1;
}

module.exports = _isNativeFunction;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js":
/*!**********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js ***!
  \**********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Reflect$construct = __webpack_require__(/*! @babel/runtime-corejs2/core-js/reflect/construct */ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js");

function _isNativeReflectConstruct() {
  if (typeof Reflect === "undefined" || !_Reflect$construct) return false;
  if (_Reflect$construct.sham) return false;
  if (typeof Proxy === "function") return true;

  try {
    Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {}));
    return true;
  } catch (e) {
    return false;
  }
}

module.exports = _isNativeReflectConstruct;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/iterableToArrayLimit.js":
/*!******************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/iterableToArrayLimit.js ***!
  \******************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Symbol = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol */ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js");

var _Symbol$iterator = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/iterator */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js");

function _iterableToArrayLimit(arr, i) {
  var _i = arr == null ? null : typeof _Symbol !== "undefined" && arr[_Symbol$iterator] || arr["@@iterator"];

  if (_i == null) return;
  var _arr = [];
  var _n = true;
  var _d = false;

  var _s, _e;

  try {
    for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {
      _arr.push(_s.value);

      if (i && _arr.length === i) break;
    }
  } catch (err) {
    _d = true;
    _e = err;
  } finally {
    try {
      if (!_n && _i["return"] != null) _i["return"]();
    } finally {
      if (_d) throw _e;
    }
  }

  return _arr;
}

module.exports = _iterableToArrayLimit;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/nonIterableRest.js":
/*!*************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/nonIterableRest.js ***!
  \*************************************************************************/
/***/ ((module) => {

function _nonIterableRest() {
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
}

module.exports = _nonIterableRest;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/possibleConstructorReturn.js":
/*!***********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/possibleConstructorReturn.js ***!
  \***********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _typeof = __webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js").default;

var assertThisInitialized = __webpack_require__(/*! ./assertThisInitialized.js */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js");

function _possibleConstructorReturn(self, call) {
  if (call && (_typeof(call) === "object" || typeof call === "function")) {
    return call;
  }

  return assertThisInitialized(self);
}

module.exports = _possibleConstructorReturn;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$setPrototypeOf = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/set-prototype-of */ "../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js");

function _setPrototypeOf(o, p) {
  module.exports = _setPrototypeOf = _Object$setPrototypeOf || function _setPrototypeOf(o, p) {
    o.__proto__ = p;
    return o;
  };

  module.exports.default = module.exports, module.exports.__esModule = true;
  return _setPrototypeOf(o, p);
}

module.exports = _setPrototypeOf;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var arrayWithHoles = __webpack_require__(/*! ./arrayWithHoles.js */ "../node_modules/@babel/runtime-corejs2/helpers/arrayWithHoles.js");

var iterableToArrayLimit = __webpack_require__(/*! ./iterableToArrayLimit.js */ "../node_modules/@babel/runtime-corejs2/helpers/iterableToArrayLimit.js");

var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js");

var nonIterableRest = __webpack_require__(/*! ./nonIterableRest.js */ "../node_modules/@babel/runtime-corejs2/helpers/nonIterableRest.js");

function _slicedToArray(arr, i) {
  return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();
}

module.exports = _slicedToArray;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/superPropBase.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/superPropBase.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var getPrototypeOf = __webpack_require__(/*! ./getPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js");

function _superPropBase(object, property) {
  while (!Object.prototype.hasOwnProperty.call(object, property)) {
    object = getPrototypeOf(object);
    if (object === null) break;
  }

  return object;
}

module.exports = _superPropBase;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js":
/*!****************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/typeof.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Symbol = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol */ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js");

var _Symbol$iterator = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/iterator */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js");

function _typeof(obj) {
  "@babel/helpers - typeof";

  if (typeof _Symbol === "function" && typeof _Symbol$iterator === "symbol") {
    module.exports = _typeof = function _typeof(obj) {
      return typeof obj;
    };

    module.exports.default = module.exports, module.exports.__esModule = true;
  } else {
    module.exports = _typeof = function _typeof(obj) {
      return obj && typeof _Symbol === "function" && obj.constructor === _Symbol && obj !== _Symbol.prototype ? "symbol" : typeof obj;
    };

    module.exports.default = module.exports, module.exports.__esModule = true;
  }

  return _typeof(obj);
}

module.exports = _typeof;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js":
/*!************************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js ***!
  \************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Array$from = __webpack_require__(/*! @babel/runtime-corejs2/core-js/array/from */ "../node_modules/@babel/runtime-corejs2/core-js/array/from.js");

var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/arrayLikeToArray.js");

function _unsupportedIterableToArray(o, minLen) {
  if (!o) return;
  if (typeof o === "string") return arrayLikeToArray(o, minLen);
  var n = Object.prototype.toString.call(o).slice(8, -1);
  if (n === "Object" && o.constructor) n = o.constructor.name;
  if (n === "Map" || n === "Set") return _Array$from(o);
  if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);
}

module.exports = _unsupportedIterableToArray;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/wrapNativeSuper.js":
/*!*************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/wrapNativeSuper.js ***!
  \*************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Map = __webpack_require__(/*! @babel/runtime-corejs2/core-js/map */ "../node_modules/@babel/runtime-corejs2/core-js/map.js");

var _Object$create = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/create */ "../node_modules/@babel/runtime-corejs2/core-js/object/create.js");

var getPrototypeOf = __webpack_require__(/*! ./getPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js");

var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js");

var isNativeFunction = __webpack_require__(/*! ./isNativeFunction.js */ "../node_modules/@babel/runtime-corejs2/helpers/isNativeFunction.js");

var construct = __webpack_require__(/*! ./construct.js */ "../node_modules/@babel/runtime-corejs2/helpers/construct.js");

function _wrapNativeSuper(Class) {
  var _cache = typeof _Map === "function" ? new _Map() : undefined;

  module.exports = _wrapNativeSuper = function _wrapNativeSuper(Class) {
    if (Class === null || !isNativeFunction(Class)) return Class;

    if (typeof Class !== "function") {
      throw new TypeError("Super expression must either be null or a function");
    }

    if (typeof _cache !== "undefined") {
      if (_cache.has(Class)) return _cache.get(Class);

      _cache.set(Class, Wrapper);
    }

    function Wrapper() {
      return construct(Class, arguments, getPrototypeOf(this).constructor);
    }

    Wrapper.prototype = _Object$create(Class.prototype, {
      constructor: {
        value: Wrapper,
        enumerable: false,
        writable: true,
        configurable: true
      }
    });
    return setPrototypeOf(Wrapper, Class);
  };

  module.exports.default = module.exports, module.exports.__esModule = true;
  return _wrapNativeSuper(Class);
}

module.exports = _wrapNativeSuper;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime/regenerator/index.js":
/*!***********************************************************!*\
  !*** ../node_modules/@babel/runtime/regenerator/index.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! regenerator-runtime */ "../node_modules/regenerator-runtime/runtime.js");


/***/ }),

/***/ "../assets/dev/js/modules/imports/args-object.js":
/*!*******************************************************!*\
  !*** ../assets/dev/js/modules/imports/args-object.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _instanceType = _interopRequireDefault(__webpack_require__(/*! ./instance-type */ "../assets/dev/js/modules/imports/instance-type.js"));

var ArgsObject = /*#__PURE__*/function (_InstanceType) {
  (0, _inherits2.default)(ArgsObject, _InstanceType);

  var _super = (0, _createSuper2.default)(ArgsObject);

  /**
   * Function constructor().
   *
   * Create ArgsObject.
   *
   * @param {{}} args
   */
  function ArgsObject(args) {
    var _this;

    (0, _classCallCheck2.default)(this, ArgsObject);
    _this = _super.call(this);
    _this.args = args;
    return _this;
  }
  /**
   * Function requireArgument().
   *
   * Validate property in args.
   *
   * @param {string} property
   * @param {{}} args
   *
   * @throws {Error}
   *
   */


  (0, _createClass2.default)(ArgsObject, [{
    key: "requireArgument",
    value: function requireArgument(property) {
      var args = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.args;

      if (!args.hasOwnProperty(property)) {
        throw Error("".concat(property, " is required."));
      }
    }
    /**
     * Function requireArgumentType().
     *
     * Validate property in args using `type === typeof(args.whatever)`.
     *
     * @param {string} property
     * @param {string} type
     * @param {{}} args
     *
     * @throws {Error}
     *
     */

  }, {
    key: "requireArgumentType",
    value: function requireArgumentType(property, type) {
      var args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.args;
      this.requireArgument(property, args);

      if ((0, _typeof2.default)(args[property]) !== type) {
        throw Error("".concat(property, " invalid type: ").concat(type, "."));
      }
    }
    /**
     * Function requireArgumentInstance().
     *
     * Validate property in args using `args.whatever instanceof instance`.
     *
     * @param {string} property
     * @param {instanceof} instance
     * @param {{}} args
     *
     * @throws {Error}
     *
     */

  }, {
    key: "requireArgumentInstance",
    value: function requireArgumentInstance(property, instance) {
      var args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.args;
      this.requireArgument(property, args);

      if (!(args[property] instanceof instance)) {
        throw Error("".concat(property, " invalid instance."));
      }
    }
    /**
     * Function requireArgumentConstructor().
     *
     * Validate property in args using `type === args.whatever.constructor`.
     *
     * @param {string} property
     * @param {*} type
     * @param {{}} args
     *
     * @throws {Error}
     *
     */

  }, {
    key: "requireArgumentConstructor",
    value: function requireArgumentConstructor(property, type) {
      var args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.args;
      this.requireArgument(property, args);

      if (args[property].constructor !== type) {
        throw Error("".concat(property, " invalid constructor type."));
      }
    }
  }], [{
    key: "getInstanceType",
    value: function getInstanceType() {
      return 'ArgsObject';
    }
  }]);
  return ArgsObject;
}(_instanceType.default);

exports.default = ArgsObject;

/***/ }),

/***/ "../assets/dev/js/modules/imports/force-method-implementation.js":
/*!***********************************************************************!*\
  !*** ../assets/dev/js/modules/imports/force-method-implementation.js ***!
  \***********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.ForceMethodImplementation = void 0;

__webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");

__webpack_require__(/*! core-js/modules/es6.string.starts-with.js */ "../node_modules/core-js/modules/es6.string.starts-with.js");

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _wrapNativeSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/wrapNativeSuper */ "../node_modules/@babel/runtime-corejs2/helpers/wrapNativeSuper.js"));

// TODO: Wrong location used as `elementorModules.ForceMethodImplementation(); should be` `elementorUtils.forceMethodImplementation()`;
var ForceMethodImplementation = /*#__PURE__*/function (_Error) {
  (0, _inherits2.default)(ForceMethodImplementation, _Error);

  var _super = (0, _createSuper2.default)(ForceMethodImplementation);

  function ForceMethodImplementation() {
    var _this;

    var info = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
    (0, _classCallCheck2.default)(this, ForceMethodImplementation);
    _this = _super.call(this, "".concat(info.isStatic ? 'static ' : '').concat(info.fullName, "() should be implemented, please provide '").concat(info.functionName || info.fullName, "' functionality."));
    Error.captureStackTrace((0, _assertThisInitialized2.default)(_this), ForceMethodImplementation);
    return _this;
  }

  return ForceMethodImplementation;
}( /*#__PURE__*/(0, _wrapNativeSuper2.default)(Error));

exports.ForceMethodImplementation = ForceMethodImplementation;

var _default = function _default() {
  var stack = Error().stack,
      caller = stack.split('\n')[2].trim(),
      callerName = caller.startsWith('at new') ? 'constructor' : caller.split(' ')[1],
      info = {};
  info.functionName = callerName;
  info.fullName = callerName;

  if (info.functionName.includes('.')) {
    var parts = info.functionName.split('.');
    info.className = parts[0];
    info.functionName = parts[1];
  } else {
    info.isStatic = true;
  }

  throw new ForceMethodImplementation(info);
};

exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/modules/imports/instance-type.js":
/*!*********************************************************!*\
  !*** ../assets/dev/js/modules/imports/instance-type.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _hasInstance = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/has-instance */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/has-instance.js"));

var _isArray = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js"));

__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var InstanceType = /*#__PURE__*/function () {
  function InstanceType() {
    var _this = this;

    (0, _classCallCheck2.default)(this, InstanceType);
    // Since anonymous classes sometimes do not get validated by babel, do it manually.
    var target = this instanceof InstanceType ? this.constructor : void 0;
    var prototypes = [];

    while (target.__proto__ && target.__proto__.name) {
      prototypes.push(target.__proto__);
      target = target.__proto__;
    }

    prototypes.reverse().forEach(function (proto) {
      return _this instanceof proto;
    });
  }

  (0, _createClass2.default)(InstanceType, null, [{
    key: _hasInstance.default,
    value: function value(target) {
      /**
       * This is function extending being called each time JS uses instanceOf, since babel use it each time it create new class
       * its give's opportunity to mange capabilities of instanceOf operator.
       * saving current class each time will give option later to handle instanceOf manually.
       */
      var result = (0, _get2.default)((0, _getPrototypeOf2.default)(InstanceType), _hasInstance.default, this).call(this, target); // Act normal when validate a class, which does not have instance type.

      if (target && !target.constructor.getInstanceType) {
        return result;
      }

      if (target) {
        if (!target.instanceTypes) {
          target.instanceTypes = [];
        }

        if (!result) {
          if (this.getInstanceType() === target.constructor.getInstanceType()) {
            result = true;
          }
        }

        if (result) {
          var name = this.getInstanceType === InstanceType.getInstanceType ? 'BaseInstanceType' : this.getInstanceType();

          if (-1 === target.instanceTypes.indexOf(name)) {
            target.instanceTypes.push(name);
          }
        }
      }

      if (!result && target) {
        // Check if the given 'target', is instance of known types.
        result = target.instanceTypes && (0, _isArray.default)(target.instanceTypes) && -1 !== target.instanceTypes.indexOf(this.getInstanceType());
      }

      return result;
    }
  }, {
    key: "getInstanceType",
    value: function getInstanceType() {
      elementorModules.ForceMethodImplementation();
    }
  }]);
  return InstanceType;
}();

exports.default = InstanceType;

/***/ }),

/***/ "../assets/dev/js/modules/imports/module.js":
/*!**************************************************!*\
  !*** ../assets/dev/js/modules/imports/module.js ***!
  \**************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _create = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/create */ "../node_modules/@babel/runtime-corejs2/core-js/object/create.js"));

var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js"));

__webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

__webpack_require__(/*! core-js/modules/es6.array.slice.js */ "../node_modules/core-js/modules/es6.array.slice.js");

__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

var Module = function Module() {
  var $ = jQuery,
      instanceParams = arguments,
      self = this,
      events = {};
  var settings;

  var ensureClosureMethods = function ensureClosureMethods() {
    $.each(self, function (methodName) {
      var oldMethod = self[methodName];

      if ('function' !== typeof oldMethod) {
        return;
      }

      self[methodName] = function () {
        return oldMethod.apply(self, arguments);
      };
    });
  };

  var initSettings = function initSettings() {
    settings = self.getDefaultSettings();
    var instanceSettings = instanceParams[0];

    if (instanceSettings) {
      $.extend(true, settings, instanceSettings);
    }
  };

  var init = function init() {
    self.__construct.apply(self, instanceParams);

    ensureClosureMethods();
    initSettings();
    self.trigger('init');
  };

  this.getItems = function (items, itemKey) {
    if (itemKey) {
      var keyStack = itemKey.split('.'),
          currentKey = keyStack.splice(0, 1);

      if (!keyStack.length) {
        return items[currentKey];
      }

      if (!items[currentKey]) {
        return;
      }

      return this.getItems(items[currentKey], keyStack.join('.'));
    }

    return items;
  };

  this.getSettings = function (setting) {
    return this.getItems(settings, setting);
  };

  this.setSettings = function (settingKey, value, settingsContainer) {
    if (!settingsContainer) {
      settingsContainer = settings;
    }

    if ('object' === (0, _typeof2.default)(settingKey)) {
      $.extend(settingsContainer, settingKey);
      return self;
    }

    var keyStack = settingKey.split('.'),
        currentKey = keyStack.splice(0, 1);

    if (!keyStack.length) {
      settingsContainer[currentKey] = value;
      return self;
    }

    if (!settingsContainer[currentKey]) {
      settingsContainer[currentKey] = {};
    }

    return self.setSettings(keyStack.join('.'), value, settingsContainer[currentKey]);
  };

  this.getErrorMessage = function (type, functionName) {
    var message;

    switch (type) {
      case 'forceMethodImplementation':
        message = "The method '".concat(functionName, "' must to be implemented in the inheritor child.");
        break;

      default:
        message = 'An error occurs';
    }

    return message;
  }; // TODO: This function should be deleted ?.


  this.forceMethodImplementation = function (functionName) {
    throw new Error(this.getErrorMessage('forceMethodImplementation', functionName));
  };

  this.on = function (eventName, callback) {
    if ('object' === (0, _typeof2.default)(eventName)) {
      $.each(eventName, function (singleEventName) {
        self.on(singleEventName, this);
      });
      return self;
    }

    var eventNames = eventName.split(' ');
    eventNames.forEach(function (singleEventName) {
      if (!events[singleEventName]) {
        events[singleEventName] = [];
      }

      events[singleEventName].push(callback);
    });
    return self;
  };

  this.off = function (eventName, callback) {
    if (!events[eventName]) {
      return self;
    }

    if (!callback) {
      delete events[eventName];
      return self;
    }

    var callbackIndex = events[eventName].indexOf(callback);

    if (-1 !== callbackIndex) {
      delete events[eventName][callbackIndex]; // Reset array index (for next off on same event).

      events[eventName] = events[eventName].filter(function (val) {
        return val;
      });
    }

    return self;
  };

  this.trigger = function (eventName) {
    var methodName = 'on' + eventName[0].toUpperCase() + eventName.slice(1),
        params = Array.prototype.slice.call(arguments, 1);

    if (self[methodName]) {
      self[methodName].apply(self, params);
    }

    var callbacks = events[eventName];

    if (!callbacks) {
      return self;
    }

    $.each(callbacks, function (index, callback) {
      callback.apply(self, params);
    });
    return self;
  };

  init();
};

Module.prototype.__construct = function () {};

Module.prototype.getDefaultSettings = function () {
  return {};
};

Module.prototype.getConstructorID = function () {
  return this.constructor.name;
};

Module.extend = function (properties) {
  var $ = jQuery,
      parent = this;

  var child = function child() {
    return parent.apply(this, arguments);
  };

  $.extend(child, parent);
  child.prototype = (0, _create.default)($.extend({}, parent.prototype, properties));
  child.prototype.constructor = child;
  child.__super__ = parent.prototype;
  return child;
};

module.exports = Module;

/***/ }),

/***/ "../assets/dev/js/modules/imports/utils/masonry.js":
/*!*********************************************************!*\
  !*** ../assets/dev/js/modules/imports/utils/masonry.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _parseInt2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/parse-int */ "../node_modules/@babel/runtime-corejs2/core-js/parse-int.js"));

var _viewModule = _interopRequireDefault(__webpack_require__(/*! ../view-module */ "../assets/dev/js/modules/imports/view-module.js"));

module.exports = _viewModule.default.extend({
  getDefaultSettings: function getDefaultSettings() {
    return {
      container: null,
      items: null,
      columnsCount: 3,
      verticalSpaceBetween: 30
    };
  },
  getDefaultElements: function getDefaultElements() {
    return {
      $container: jQuery(this.getSettings('container')),
      $items: jQuery(this.getSettings('items'))
    };
  },
  run: function run() {
    var heights = [],
        distanceFromTop = this.elements.$container.position().top,
        settings = this.getSettings(),
        columnsCount = settings.columnsCount;
    distanceFromTop += (0, _parseInt2.default)(this.elements.$container.css('margin-top'), 10);
    this.elements.$items.each(function (index) {
      var row = Math.floor(index / columnsCount),
          $item = jQuery(this),
          itemHeight = $item[0].getBoundingClientRect().height + settings.verticalSpaceBetween;

      if (row) {
        var itemPosition = $item.position(),
            indexAtRow = index % columnsCount,
            pullHeight = itemPosition.top - distanceFromTop - heights[indexAtRow];
        pullHeight -= (0, _parseInt2.default)($item.css('margin-top'), 10);
        pullHeight *= -1;
        $item.css('margin-top', pullHeight + 'px');
        heights[indexAtRow] += itemHeight;
      } else {
        heights.push(itemHeight);
      }
    });
  }
});

/***/ }),

/***/ "../assets/dev/js/modules/imports/utils/scroll.js":
/*!********************************************************!*\
  !*** ../assets/dev/js/modules/imports/utils/scroll.js ***!
  \********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _parseFloat2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/parse-float */ "../node_modules/@babel/runtime-corejs2/core-js/parse-float.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

// Moved from elementor pro: 'assets/dev/js/frontend/utils'
var Scroll = /*#__PURE__*/function () {
  function Scroll() {
    (0, _classCallCheck2.default)(this, Scroll);
  }

  (0, _createClass2.default)(Scroll, null, [{
    key: "scrollObserver",
    value:
    /**
     * @param {object} obj
     * @param {number} obj.sensitivity - Value between 0-100 - Will determine the intersection trigger points on the element
     * @param {function} obj.callback - Will be triggered on each intersection point between the element and the viewport top/bottom
     * @param {string} obj.offset - Offset between the element intersection points and the viewport, written like in CSS: '-50% 0 -25%'
     * @param {HTMLElement} obj.root - The element that the events will be relative to, if 'null' will be relative to the viewport
     */
    function scrollObserver(obj) {
      var lastScrollY = 0; // Generating threshholds points along the animation height
      // More threshholds points = more trigger points of the callback

      var buildThreshholds = function buildThreshholds() {
        var sensitivityPercentage = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
        var threshholds = [];

        if (sensitivityPercentage > 0 && sensitivityPercentage <= 100) {
          var increment = 100 / sensitivityPercentage;

          for (var i = 0; i <= 100; i += increment) {
            threshholds.push(i / 100);
          }
        } else {
          threshholds.push(0);
        }

        return threshholds;
      };

      var options = {
        root: obj.root || null,
        rootMargin: obj.offset || '0px',
        threshold: buildThreshholds(obj.sensitivity)
      };

      function handleIntersect(entries, observer) {
        var currentScrollY = entries[0].boundingClientRect.y,
            isInViewport = entries[0].isIntersecting,
            intersectionScrollDirection = currentScrollY < lastScrollY ? 'down' : 'up',
            scrollPercentage = Math.abs((0, _parseFloat2.default)((entries[0].intersectionRatio * 100).toFixed(2)));
        obj.callback({
          sensitivity: obj.sensitivity,
          isInViewport: isInViewport,
          scrollPercentage: scrollPercentage,
          intersectionScrollDirection: intersectionScrollDirection
        });
        lastScrollY = currentScrollY;
      }

      return new IntersectionObserver(handleIntersect, options);
    }
    /**
     * @param {jQuery Element} $element
     * @param {object} offsetObj
     * @param {number} offsetObj.start - Offset start value in percentages
     * @param {number} offsetObj.end - Offset end value in percentages
     */

  }, {
    key: "getElementViewportPercentage",
    value: function getElementViewportPercentage($element) {
      var offsetObj = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
      var elementOffset = $element[0].getBoundingClientRect(),
          offsetStart = offsetObj.start || 0,
          offsetEnd = offsetObj.end || 0,
          windowStartOffset = window.innerHeight * offsetStart / 100,
          windowEndOffset = window.innerHeight * offsetEnd / 100,
          y1 = elementOffset.top - window.innerHeight,
          y2 = elementOffset.top + windowStartOffset + $element.height(),
          startPosition = 0 - y1 + windowStartOffset,
          endPosition = y2 - y1 + windowEndOffset,
          percent = Math.max(0, Math.min(startPosition / endPosition, 1));
      return (0, _parseFloat2.default)((percent * 100).toFixed(2));
    }
    /**
     * @param {object} offsetObj
     * @param {number} offsetObj.start - Offset start value in percentages
     * @param {number} offsetObj.end - Offset end value in percentages
     * @param {number} limitPageHeight - Will limit the page height calculation
     */

  }, {
    key: "getPageScrollPercentage",
    value: function getPageScrollPercentage() {
      var offsetObj = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      var limitPageHeight = arguments.length > 1 ? arguments[1] : undefined;
      var offsetStart = offsetObj.start || 0,
          offsetEnd = offsetObj.end || 0,
          initialPageHeight = limitPageHeight || document.documentElement.scrollHeight - document.documentElement.clientHeight,
          heightOffset = initialPageHeight * offsetStart / 100,
          pageRange = initialPageHeight + heightOffset + initialPageHeight * offsetEnd / 100,
          scrollPos = document.documentElement.scrollTop + document.body.scrollTop + heightOffset;
      return scrollPos / pageRange * 100;
    }
  }]);
  return Scroll;
}();

exports.default = Scroll;

/***/ }),

/***/ "../assets/dev/js/modules/imports/view-module.js":
/*!*******************************************************!*\
  !*** ../assets/dev/js/modules/imports/view-module.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _module = _interopRequireDefault(__webpack_require__(/*! ./module */ "../assets/dev/js/modules/imports/module.js"));

module.exports = _module.default.extend({
  elements: null,
  getDefaultElements: function getDefaultElements() {
    return {};
  },
  bindEvents: function bindEvents() {},
  onInit: function onInit() {
    this.initElements();
    this.bindEvents();
  },
  initElements: function initElements() {
    this.elements = this.getDefaultElements();
  }
});

/***/ }),

/***/ "../assets/dev/js/modules/modules.js":
/*!*******************************************!*\
  !*** ../assets/dev/js/modules/modules.js ***!
  \*******************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _module = _interopRequireDefault(__webpack_require__(/*! ./imports/module */ "../assets/dev/js/modules/imports/module.js"));

var _viewModule = _interopRequireDefault(__webpack_require__(/*! ./imports/view-module */ "../assets/dev/js/modules/imports/view-module.js"));

var _argsObject = _interopRequireDefault(__webpack_require__(/*! ./imports/args-object */ "../assets/dev/js/modules/imports/args-object.js"));

var _masonry = _interopRequireDefault(__webpack_require__(/*! ./imports/utils/masonry */ "../assets/dev/js/modules/imports/utils/masonry.js"));

var _scroll = _interopRequireDefault(__webpack_require__(/*! ./imports/utils/scroll */ "../assets/dev/js/modules/imports/utils/scroll.js"));

var _forceMethodImplementation = _interopRequireDefault(__webpack_require__(/*! ./imports/force-method-implementation */ "../assets/dev/js/modules/imports/force-method-implementation.js"));

var _default = window.elementorModules = {
  Module: _module.default,
  ViewModule: _viewModule.default,
  ArgsObject: _argsObject.default,
  ForceMethodImplementation: _forceMethodImplementation.default,
  utils: {
    Masonry: _masonry.default,
    Scroll: _scroll.default
  }
};

exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/api/modules/command-base.js":
/*!************************************************************!*\
  !*** ../core/common/assets/js/api/modules/command-base.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

__webpack_require__(/*! core-js/modules/es6.string.iterator.js */ "../node_modules/core-js/modules/es6.string.iterator.js");

__webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");

__webpack_require__(/*! core-js/modules/es6.array.iterator.js */ "../node_modules/core-js/modules/es6.array.iterator.js");

__webpack_require__(/*! core-js/modules/web.dom.iterable.js */ "../node_modules/core-js/modules/web.dom.iterable.js");

var _isArray = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js"));

var _promise = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/promise */ "../node_modules/@babel/runtime-corejs2/core-js/promise.js"));

var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js"));

var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/asyncToGenerator */ "../node_modules/@babel/runtime-corejs2/helpers/asyncToGenerator.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _argsObject = _interopRequireDefault(__webpack_require__(/*! elementor-assets-js/modules/imports/args-object */ "../assets/dev/js/modules/imports/args-object.js"));

var CommandBase = /*#__PURE__*/function (_ArgsObject) {
  (0, _inherits2.default)(CommandBase, _ArgsObject);

  var _super = (0, _createSuper2.default)(CommandBase);

  /**
   * Function constructor().
   *
   * Create Commands Base.
   *
   * @param [args={}]
   * @param [commandsAPI={}]
   */
  function CommandBase(args) {
    var _this;

    var commandsAPI = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : $e.commands;
    (0, _classCallCheck2.default)(this, CommandBase);
    _this = _super.call(this, args); // Acknowledge self about which command it run.

    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "component", void 0);
    _this.currentCommand = commandsAPI.getCurrentLast(); // Assign instance of current component.

    _this.component = commandsAPI.getComponent(_this.currentCommand); // Who ever need do something before without `super` the constructor can use `initialize` method.

    _this.initialize(args); // Refresh args, maybe the changed via `initialize`.


    args = _this.args; // Validate args before run.

    _this.validateArgs(args);

    return _this;
  }
  /**
   * Function requireContainer().
   *
   * Validate `arg.container` & `arg.containers`.
   *
   * @param {{}} args
   *
   * @throws {Error}
   */


  (0, _createClass2.default)(CommandBase, [{
    key: "requireContainer",
    value: function requireContainer() {
      var _this2 = this;

      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.args;

      if (!args.container && !args.containers) {
        throw Error('container or containers are required.');
      }

      if (args.container && args.containers) {
        throw Error('container and containers cannot go together please select one of them.');
      }

      var containers = args.containers || [args.container];
      containers.forEach(function (container) {
        _this2.requireArgumentInstance('container', elementorModules.editor.Container, {
          container: container
        });
      });
    }
    /**
     * Function initialize().
     *
     * Initialize command, called after construction.
     *
     * @param [args={}]
     */

  }, {
    key: "initialize",
    value: function initialize() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
    } // eslint-disable-line no-unused-vars

    /**
     * Function validateArgs().
     *
     * Validate command arguments.
     *
     * @param [args={}]
     */

  }, {
    key: "validateArgs",
    value: function validateArgs() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
    } // eslint-disable-line no-unused-vars

    /**
     * Function isDataChanged().
     *
     * Whether the editor needs to set change flag on/off.
     *
     * @returns {boolean}
     */

  }, {
    key: "isDataChanged",
    value: function isDataChanged() {
      return false;
    }
    /**
     * Function apply().
     *
     * Do the actual command.
     *
     * @param [args={}]
     *
     * @returns {*}
     */

  }, {
    key: "apply",
    value: function apply() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      // eslint-disable-line no-unused-vars
      elementorModules.ForceMethodImplementation();
    }
    /**
     * Function run().
     *
     * Run command with history & hooks.
     *
     * @returns {*}
     */

  }, {
    key: "run",
    value: function run() {
      var result; // For UI Hooks.

      this.onBeforeRun(this.args);

      try {
        // For Data hooks.
        this.onBeforeApply(this.args);
        result = this.apply(this.args);
      } catch (e) {
        this.onCatchApply(e); // Catch 'Hook-Break' that comes from hooks base.

        if (e instanceof $e.modules.HookBreak) {
          // Bypass.
          return false;
        }
      }

      return this.runAfter(result);
    }
  }, {
    key: "runAfter",
    value: function runAfter(result) {
      var _this3 = this;

      var onAfter = function onAfter(_result) {
        // Run Data hooks.
        _this3.onAfterApply(_this3.args, _result); // TODO: Create Command-Base for Command-Document and apply it on after.


        if (_this3.isDataChanged()) {
          $e.internal('document/save/set-is-modified', {
            status: true
          });
        } // For UI hooks.


        _this3.onAfterRun(_this3.args, _result);
      },
          asyncOnAfter = /*#__PURE__*/function () {
        var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(_result) {
          var results, promises;
          return _regenerator.default.wrap(function _callee$(_context) {
            while (1) {
              switch (_context.prev = _context.next) {
                case 0:
                  // Run Data hooks.
                  results = _this3.onAfterApply(_this3.args, _result), promises = (0, _isArray.default)(results) ? results.flat().filter(function (filtered) {
                    return filtered instanceof _promise.default;
                  }) : [];

                  if (!promises.length) {
                    _context.next = 4;
                    break;
                  }

                  _context.next = 4;
                  return _promise.default.all(promises);

                case 4:
                  if (_this3.isDataChanged()) {
                    // TODO: Create Command-Base for Command-Document and apply it on after.
                    $e.internal('document/save/set-is-modified', {
                      status: true
                    });
                  } // For UI hooks.


                  _this3.onAfterRun(_this3.args, _result);

                case 6:
                case "end":
                  return _context.stop();
              }
            }
          }, _callee);
        }));

        return function asyncOnAfter(_x) {
          return _ref.apply(this, arguments);
        };
      }(); // TODO: Temp code determine if it's a jQuery deferred object.


      if (result && 'object' === (0, _typeof2.default)(result) && result.promise && result.then && result.fail) {
        result.fail(this.onCatchApply.bind(this));
        result.done(onAfter);
      } else if (result instanceof _promise.default) {
        // Override initial result ( promise ) to await onAfter promises, first!.
        return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
          return _regenerator.default.wrap(function _callee2$(_context2) {
            while (1) {
              switch (_context2.prev = _context2.next) {
                case 0:
                  _context2.next = 2;
                  return result.catch(_this3.onCatchApply.bind(_this3));

                case 2:
                  _context2.next = 4;
                  return result.then(function (_result) {
                    return asyncOnAfter(_result);
                  });

                case 4:
                  return _context2.abrupt("return", result);

                case 5:
                case "end":
                  return _context2.stop();
              }
            }
          }, _callee2);
        }))();
      } else {
        onAfter(result);
      }

      return result;
    }
    /**
     * Run all the catch hooks.
     *
     * @param {Error} e
     */

  }, {
    key: "runCatchHooks",
    value: function runCatchHooks(e) {
      $e.hooks.runDataCatch(this.currentCommand, this.args, e);
      $e.hooks.runUICatch(this.currentCommand, this.args, e);
    }
    /**
     * Function onBeforeRun.
     *
     * Called before run().
     *
     * @param [args={}]
     */

  }, {
    key: "onBeforeRun",
    value: function onBeforeRun() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      $e.hooks.runUIBefore(this.currentCommand, args);
    }
    /**
     * Function onAfterRun.
     *
     * Called after run().
     *
     * @param [args={}]
     * @param [result={*}]
     */

  }, {
    key: "onAfterRun",
    value: function onAfterRun() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      var result = arguments.length > 1 ? arguments[1] : undefined;
      $e.hooks.runUIAfter(this.currentCommand, args, result);
    }
    /**
     * Function onBeforeApply.
     *
     * Called before apply().
     *
     * @param [args={}]
     */

  }, {
    key: "onBeforeApply",
    value: function onBeforeApply() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      $e.hooks.runDataDependency(this.currentCommand, args);
    }
    /**
     * Function onAfterApply.
     *
     * Called after apply().
     *
     * @param [args={}]
     * @param [result={*}]
     */

  }, {
    key: "onAfterApply",
    value: function onAfterApply() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      var result = arguments.length > 1 ? arguments[1] : undefined;
      return $e.hooks.runDataAfter(this.currentCommand, args, result);
    }
    /**
     * Function onCatchApply.
     *
     * Called after apply() failed.
     *
     * @param {Error} e
     */

  }, {
    key: "onCatchApply",
    value: function onCatchApply(e) {
      this.runCatchHooks(e);
      elementorCommon.helpers.consoleError(e);
    }
  }], [{
    key: "getInstanceType",
    value: function getInstanceType() {
      return 'CommandBase';
    }
    /**
     * Get info of command.
     *
     * Use to provide 'extra' information about the command.
     *
     * @returns {Object}
     */

  }, {
    key: "getInfo",
    value: function getInfo() {
      return {};
    }
    /**
     * Current component.
     *
     * @type {Component}
     */

  }]);
  return CommandBase;
}(_argsObject.default);

exports.default = CommandBase;

/***/ }),

/***/ "../core/common/assets/js/api/modules/commands/close.js":
/*!**************************************************************!*\
  !*** ../core/common/assets/js/api/modules/commands/close.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Close = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Close = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Close, _CommandBase);

  var _super = (0, _createSuper2.default)(Close);

  function Close() {
    (0, _classCallCheck2.default)(this, Close);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Close, [{
    key: "apply",
    value: function apply() {
      this.component.close();
    }
  }]);
  return Close;
}(_commandBase.default);

exports.Close = Close;
var _default = Close;
exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/api/modules/commands/index.js":
/*!**************************************************************!*\
  !*** ../core/common/assets/js/api/modules/commands/index.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "Close", {
  enumerable: true,
  get: function get() {
    return _close.Close;
  }
});

_Object$defineProperty(exports, "Open", {
  enumerable: true,
  get: function get() {
    return _open.Open;
  }
});

_Object$defineProperty(exports, "Toggle", {
  enumerable: true,
  get: function get() {
    return _toggle.Toggle;
  }
});

var _close = __webpack_require__(/*! ./close */ "../core/common/assets/js/api/modules/commands/close.js");

var _open = __webpack_require__(/*! ./open */ "../core/common/assets/js/api/modules/commands/open.js");

var _toggle = __webpack_require__(/*! ./toggle */ "../core/common/assets/js/api/modules/commands/toggle.js");

/***/ }),

/***/ "../core/common/assets/js/api/modules/commands/open.js":
/*!*************************************************************!*\
  !*** ../core/common/assets/js/api/modules/commands/open.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Open = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Open = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Open, _CommandBase);

  var _super = (0, _createSuper2.default)(Open);

  function Open() {
    (0, _classCallCheck2.default)(this, Open);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Open, [{
    key: "apply",
    value: function apply() {
      $e.route(this.component.getNamespace());
    }
  }]);
  return Open;
}(_commandBase.default);

exports.Open = Open;
var _default = Open;
exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/api/modules/commands/toggle.js":
/*!***************************************************************!*\
  !*** ../core/common/assets/js/api/modules/commands/toggle.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Toggle = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Toggle = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Toggle, _CommandBase);

  var _super = (0, _createSuper2.default)(Toggle);

  function Toggle() {
    (0, _classCallCheck2.default)(this, Toggle);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Toggle, [{
    key: "apply",
    value: function apply() {
      if (this.component.isOpen) {
        this.component.close();
      } else {
        $e.route(this.component.getNamespace());
      }
    }
  }]);
  return Toggle;
}(_commandBase.default);

exports.Toggle = Toggle;
var _default = Toggle;
exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/api/modules/component-base.js":
/*!**************************************************************!*\
  !*** ../core/common/assets/js/api/modules/component-base.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

__webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var ComponentBase = /*#__PURE__*/function (_elementorModules$Mod) {
  (0, _inherits2.default)(ComponentBase, _elementorModules$Mod);

  var _super = (0, _createSuper2.default)(ComponentBase);

  function ComponentBase() {
    (0, _classCallCheck2.default)(this, ComponentBase);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(ComponentBase, [{
    key: "__construct",
    value: function __construct() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};

      if (args.manager) {
        this.manager = args.manager;
      }

      this.commands = this.defaultCommands();
      this.commandsInternal = this.defaultCommandsInternal();
      this.hooks = this.defaultHooks();
      this.routes = this.defaultRoutes();
      this.tabs = this.defaultTabs();
      this.shortcuts = this.defaultShortcuts();
      this.utils = this.defaultUtils();
      this.data = this.defaultData();
      this.uiStates = this.defaultUiStates();
      this.defaultRoute = '';
      this.currentTab = '';
    }
  }, {
    key: "registerAPI",
    value: function registerAPI() {
      var _this = this;

      (0, _entries.default)(this.getTabs()).forEach(function (tab) {
        return _this.registerTabRoute(tab[0]);
      });
      (0, _entries.default)(this.getRoutes()).forEach(function (_ref) {
        var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
            route = _ref2[0],
            callback = _ref2[1];

        return _this.registerRoute(route, callback);
      });
      (0, _entries.default)(this.getCommands()).forEach(function (_ref3) {
        var _ref4 = (0, _slicedToArray2.default)(_ref3, 2),
            command = _ref4[0],
            callback = _ref4[1];

        return _this.registerCommand(command, callback);
      });
      (0, _entries.default)(this.getCommandsInternal()).forEach(function (_ref5) {
        var _ref6 = (0, _slicedToArray2.default)(_ref5, 2),
            command = _ref6[0],
            callback = _ref6[1];

        return _this.registerCommandInternal(command, callback);
      });
      (0, _values.default)(this.getHooks()).forEach(function (instance) {
        return _this.registerHook(instance);
      });
      (0, _entries.default)(this.getData()).forEach(function (_ref7) {
        var _ref8 = (0, _slicedToArray2.default)(_ref7, 2),
            command = _ref8[0],
            callback = _ref8[1];

        return _this.registerData(command, callback);
      });
      (0, _values.default)(this.getUiStates()).forEach(function (instance) {
        return _this.registerUiState(instance);
      });
    }
    /**
     * @returns {string}
     */

  }, {
    key: "getNamespace",
    value: function getNamespace() {
      elementorModules.ForceMethodImplementation();
    }
  }, {
    key: "getRootContainer",
    value: function getRootContainer() {
      var parts = this.getNamespace().split('/');
      return parts[0];
    }
  }, {
    key: "defaultTabs",
    value: function defaultTabs() {
      return {};
    }
  }, {
    key: "defaultRoutes",
    value: function defaultRoutes() {
      return {};
    }
  }, {
    key: "defaultCommands",
    value: function defaultCommands() {
      return {};
    }
  }, {
    key: "defaultCommandsInternal",
    value: function defaultCommandsInternal() {
      return {};
    }
  }, {
    key: "defaultHooks",
    value: function defaultHooks() {
      return {};
    }
    /**
     * Get the component's default UI states.
     *
     * @return {Object}
     */

  }, {
    key: "defaultUiStates",
    value: function defaultUiStates() {
      return {};
    }
  }, {
    key: "defaultShortcuts",
    value: function defaultShortcuts() {
      return {};
    }
  }, {
    key: "defaultUtils",
    value: function defaultUtils() {
      return {};
    }
  }, {
    key: "defaultData",
    value: function defaultData() {
      return {};
    }
  }, {
    key: "getCommands",
    value: function getCommands() {
      return this.commands;
    }
  }, {
    key: "getCommandsInternal",
    value: function getCommandsInternal() {
      return this.commandsInternal;
    }
  }, {
    key: "getHooks",
    value: function getHooks() {
      return this.hooks;
    }
    /**
     * Retrieve the component's UI states.
     *
     * @return {Object}
     */

  }, {
    key: "getUiStates",
    value: function getUiStates() {
      return this.uiStates;
    }
  }, {
    key: "getRoutes",
    value: function getRoutes() {
      return this.routes;
    }
  }, {
    key: "getTabs",
    value: function getTabs() {
      return this.tabs;
    }
  }, {
    key: "getShortcuts",
    value: function getShortcuts() {
      return this.shortcuts;
    }
  }, {
    key: "getData",
    value: function getData() {
      return this.data;
    }
  }, {
    key: "registerCommand",
    value: function registerCommand(command, callback) {
      $e.commands.register(this, command, callback);
    }
    /**
     * @param {HookBase} instance
     */

  }, {
    key: "registerHook",
    value: function registerHook(instance) {
      return instance.register();
    }
    /**
     * Register a UI state.
     *
     * @param {UiStateBase} instance - UI state instance.
     *
     * @return {void}
     */

  }, {
    key: "registerUiState",
    value: function registerUiState(instance) {
      $e.uiStates.register(instance);
    }
  }, {
    key: "registerCommandInternal",
    value: function registerCommandInternal(command, callback) {
      $e.commandsInternal.register(this, command, callback);
    }
  }, {
    key: "registerRoute",
    value: function registerRoute(route, callback) {
      $e.routes.register(this, route, callback);
    }
  }, {
    key: "registerData",
    value: function registerData(command, callback) {
      $e.data.register(this, command, callback);
    }
  }, {
    key: "unregisterRoute",
    value: function unregisterRoute(route) {
      $e.routes.unregister(this, route);
    }
  }, {
    key: "registerTabRoute",
    value: function registerTabRoute(tab) {
      var _this2 = this;

      this.registerRoute(tab, function (args) {
        return _this2.activateTab(tab, args);
      });
    }
  }, {
    key: "dependency",
    value: function dependency() {
      return true;
    }
  }, {
    key: "open",
    value: function open() {
      return true;
    }
  }, {
    key: "close",
    value: function close() {
      if (!this.isOpen) {
        return false;
      }

      this.isOpen = false;
      this.inactivate();
      $e.routes.clearCurrent(this.getNamespace());
      $e.routes.clearHistory(this.getRootContainer());
      return true;
    }
  }, {
    key: "activate",
    value: function activate() {
      $e.components.activate(this.getNamespace());
    }
  }, {
    key: "inactivate",
    value: function inactivate() {
      $e.components.inactivate(this.getNamespace());
    }
  }, {
    key: "isActive",
    value: function isActive() {
      return $e.components.isActive(this.getNamespace());
    }
  }, {
    key: "onRoute",
    value: function onRoute(route) {
      this.toggleRouteClass(route, true);
      this.toggleHistoryClass();
      this.activate();
      this.trigger('route/open', route);
    }
  }, {
    key: "onCloseRoute",
    value: function onCloseRoute(route) {
      this.toggleRouteClass(route, false);
      this.inactivate();
      this.trigger('route/close', route);
    }
  }, {
    key: "setDefaultRoute",
    value: function setDefaultRoute(route) {
      this.defaultRoute = this.getNamespace() + '/' + route;
    }
  }, {
    key: "getDefaultRoute",
    value: function getDefaultRoute() {
      return this.defaultRoute;
    }
  }, {
    key: "removeTab",
    value: function removeTab(tab) {
      delete this.tabs[tab];
      this.unregisterRoute(tab);
    }
  }, {
    key: "hasTab",
    value: function hasTab(tab) {
      return !!this.tabs[tab];
    }
  }, {
    key: "addTab",
    value: function addTab(tab, args, position) {
      var _this3 = this;

      this.tabs[tab] = args; // It can be 0.

      if ('undefined' !== typeof position) {
        var newTabs = {};
        var ids = (0, _keys.default)(this.tabs); // Remove new tab

        ids.pop(); // Add it to position.

        ids.splice(position, 0, tab);
        ids.forEach(function (id) {
          newTabs[id] = _this3.tabs[id];
        });
        this.tabs = newTabs;
      }

      this.registerTabRoute(tab);
    }
  }, {
    key: "getTabsWrapperSelector",
    value: function getTabsWrapperSelector() {
      return '';
    }
  }, {
    key: "getTabRoute",
    value: function getTabRoute(tab) {
      return this.getNamespace() + '/' + tab;
    }
  }, {
    key: "renderTab",
    value: function renderTab(tab) {} // eslint-disable-line

  }, {
    key: "activateTab",
    value: function activateTab(tab, args) {
      var _this4 = this;

      this.currentTab = tab;
      this.renderTab(tab, args);
      jQuery(this.getTabsWrapperSelector() + ' .elementor-component-tab').off('click').on('click', function (event) {
        $e.route(_this4.getTabRoute(event.currentTarget.dataset.tab), args);
      }).removeClass('elementor-active').filter('[data-tab="' + tab + '"]').addClass('elementor-active');
    }
  }, {
    key: "getActiveTabConfig",
    value: function getActiveTabConfig() {
      return this.tabs[this.currentTab] || {};
    }
  }, {
    key: "getBodyClass",
    value: function getBodyClass(route) {
      return 'e-route-' + route.replace(/\//g, '-');
    }
    /**
     * If command includes uppercase character convert it to lowercase and add `-`.
     * e.g: `CopyAll` is converted to `copy-all`.
     */

  }, {
    key: "normalizeCommandName",
    value: function normalizeCommandName(commandName) {
      return commandName.replace(/[A-Z]/g, function (match, offset) {
        return (offset > 0 ? '-' : '') + match.toLowerCase();
      });
    }
  }, {
    key: "importCommands",
    value: function importCommands(commandsFromImport) {
      var _this5 = this;

      var commands = {}; // Convert `Commands` to `ComponentBase` workable format.

      (0, _entries.default)(commandsFromImport).forEach(function (_ref9) {
        var _ref10 = (0, _slicedToArray2.default)(_ref9, 2),
            className = _ref10[0],
            Class = _ref10[1];

        var command = _this5.normalizeCommandName(className);

        commands[command] = function (args) {
          return new Class(args).run();
        }; // TODO: Temporary code, remove after merge with 'require-commands-base' branch.
        // should not return callback, but Class or Instance without run ( gain performance ).


        $e.commands.classes[_this5.getNamespace() + '/' + command] = Class;
      });
      return commands;
    }
  }, {
    key: "importHooks",
    value: function importHooks(hooksFromImport) {
      var hooks = {};

      for (var key in hooksFromImport) {
        var hook = new hooksFromImport[key]();
        hooks[hook.getId()] = hook;
      }

      return hooks;
    }
    /**
     * Import & initialize the component's UI states.
     * Should be used inside `defaultUiState()`.
     *
     * @param {Object} statesFromImport - UI states from import.
     *
     * @return {Object}
     */

  }, {
    key: "importUiStates",
    value: function importUiStates(statesFromImport) {
      var _this6 = this;

      var uiStates = {};
      (0, _values.default)(statesFromImport).forEach(function (className) {
        var uiState = new className(_this6);
        uiStates[uiState.getId()] = uiState;
      });
      return uiStates;
    }
    /**
     * Set a UI state value.
     * TODO: Should we provide such function? Maybe the developer should implicitly pass the full state ID?
     *
     * @param state - Non-prefixed state ID.
     * @param value - New state value.
     *
     * @return {void}
     */

  }, {
    key: "setUiState",
    value: function setUiState(state, value) {
      $e.uiStates.set("".concat(this.getNamespace(), "/").concat(state), value);
    }
  }, {
    key: "toggleRouteClass",
    value: function toggleRouteClass(route, state) {
      elementorCommon.elements.$body.toggleClass(this.getBodyClass(route), state);
    }
  }, {
    key: "toggleHistoryClass",
    value: function toggleHistoryClass() {
      elementorCommon.elements.$body.toggleClass('e-routes-has-history', !!$e.routes.getHistory(this.getRootContainer()).length);
    }
  }]);
  return ComponentBase;
}(elementorModules.Module);

exports.default = ComponentBase;

/***/ }),

/***/ "../core/common/assets/js/api/modules/component-modal-base.js":
/*!********************************************************************!*\
  !*** ../core/common/assets/js/api/modules/component-modal-base.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _componentBase = _interopRequireDefault(__webpack_require__(/*! ./component-base */ "../core/common/assets/js/api/modules/component-base.js"));

var commands = _interopRequireWildcard(__webpack_require__(/*! ./commands/ */ "../core/common/assets/js/api/modules/commands/index.js"));

var ComponentModalBase = /*#__PURE__*/function (_ComponentBase) {
  (0, _inherits2.default)(ComponentModalBase, _ComponentBase);

  var _super = (0, _createSuper2.default)(ComponentModalBase);

  function ComponentModalBase() {
    (0, _classCallCheck2.default)(this, ComponentModalBase);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(ComponentModalBase, [{
    key: "registerAPI",
    value: function registerAPI() {
      var _this = this;

      (0, _get2.default)((0, _getPrototypeOf2.default)(ComponentModalBase.prototype), "registerAPI", this).call(this);
      $e.shortcuts.register('esc', {
        scopes: [this.getNamespace()],
        callback: function callback() {
          return _this.close();
        }
      });
    }
  }, {
    key: "defaultCommands",
    value: function defaultCommands() {
      return this.importCommands(commands);
    }
  }, {
    key: "defaultRoutes",
    value: function defaultRoutes() {
      return {
        '': function _() {
          /* Nothing to do, it's already rendered. */
        }
      };
    }
  }, {
    key: "open",
    value: function open() {
      var _this2 = this;

      if (!this.layout) {
        var layout = this.getModalLayout();
        this.layout = new layout({
          component: this
        });
        this.layout.getModal().on('hide', function () {
          return _this2.close();
        });
      }

      this.layout.showModal();
      return true;
    }
  }, {
    key: "close",
    value: function close() {
      if (!(0, _get2.default)((0, _getPrototypeOf2.default)(ComponentModalBase.prototype), "close", this).call(this)) {
        return false;
      }

      this.layout.getModal().hide();
      return true;
    }
  }, {
    key: "getModalLayout",
    value: function getModalLayout() {
      elementorModules.ForceMethodImplementation();
    }
  }]);
  return ComponentModalBase;
}(_componentBase.default);

exports.default = ComponentModalBase;

/***/ }),

/***/ "../core/common/assets/js/api/modules/hook-break.js":
/*!**********************************************************!*\
  !*** ../core/common/assets/js/api/modules/hook-break.js ***!
  \**********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _wrapNativeSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/wrapNativeSuper */ "../node_modules/@babel/runtime-corejs2/helpers/wrapNativeSuper.js"));

var HookBreak = /*#__PURE__*/function (_Error) {
  (0, _inherits2.default)(HookBreak, _Error);

  var _super = (0, _createSuper2.default)(HookBreak);

  function HookBreak() {
    (0, _classCallCheck2.default)(this, HookBreak);
    return _super.call(this, 'HookBreak');
  }

  return HookBreak;
}( /*#__PURE__*/(0, _wrapNativeSuper2.default)(Error));

exports.default = HookBreak;

/***/ }),

/***/ "../core/common/assets/js/views/modal/header.js":
/*!******************************************************!*\
  !*** ../core/common/assets/js/views/modal/header.js ***!
  \******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _default = /*#__PURE__*/function (_Marionette$LayoutVie) {
  (0, _inherits2.default)(_default, _Marionette$LayoutVie);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "className",
    value: function className() {
      return 'elementor-templates-modal__header';
    }
  }, {
    key: "getTemplate",
    value: function getTemplate() {
      return '#tmpl-elementor-templates-modal__header';
    }
  }, {
    key: "regions",
    value: function regions() {
      return {
        logoArea: '.elementor-templates-modal__header__logo-area',
        tools: '#elementor-template-library-header-tools',
        menuArea: '.elementor-templates-modal__header__menu-area'
      };
    }
  }, {
    key: "ui",
    value: function ui() {
      return {
        closeModal: '.elementor-templates-modal__header__close'
      };
    }
  }, {
    key: "events",
    value: function events() {
      return {
        'click @ui.closeModal': 'onCloseModalClick'
      };
    }
  }, {
    key: "templateHelpers",
    value: function templateHelpers() {
      return {
        closeType: this.getOption('closeType')
      };
    }
  }, {
    key: "onCloseModalClick",
    value: function onCloseModalClick() {
      this._parent._parent._parent.hideModal();
    }
  }]);
  return _default;
}(Marionette.LayoutView);

exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/views/modal/layout.js":
/*!******************************************************!*\
  !*** ../core/common/assets/js/views/modal/layout.js ***!
  \******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _header = _interopRequireDefault(__webpack_require__(/*! ./header */ "../core/common/assets/js/views/modal/header.js"));

var _logo = _interopRequireDefault(__webpack_require__(/*! ./logo */ "../core/common/assets/js/views/modal/logo.js"));

var _loading = _interopRequireDefault(__webpack_require__(/*! ./loading */ "../core/common/assets/js/views/modal/loading.js"));

var _default = /*#__PURE__*/function (_Marionette$LayoutVie) {
  (0, _inherits2.default)(_default, _Marionette$LayoutVie);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "el",
    value: function el() {
      return this.getModal().getElements('widget');
    }
  }, {
    key: "regions",
    value: function regions() {
      return {
        modalHeader: '.dialog-header',
        modalContent: '.dialog-lightbox-content',
        modalLoading: '.dialog-lightbox-loading'
      };
    }
  }, {
    key: "initialize",
    value: function initialize() {
      this.modalHeader.show(new _header.default(this.getHeaderOptions()));
    }
  }, {
    key: "getModal",
    value: function getModal() {
      if (!this.modal) {
        this.initModal();
      }

      return this.modal;
    }
  }, {
    key: "initModal",
    value: function initModal() {
      var modalOptions = {
        className: 'elementor-templates-modal',
        closeButton: false,
        draggable: false,
        hide: {
          onOutsideClick: false,
          onEscKeyPress: false
        }
      };
      jQuery.extend(true, modalOptions, this.getModalOptions());
      this.modal = elementorCommon.dialogsManager.createWidget('lightbox', modalOptions);
      this.modal.getElements('message').append(this.modal.addElement('content'), this.modal.addElement('loading'));

      if (modalOptions.draggable) {
        this.draggableModal();
      }
    }
  }, {
    key: "showModal",
    value: function showModal() {
      this.getModal().show();
    }
  }, {
    key: "hideModal",
    value: function hideModal() {
      this.getModal().hide();
    }
  }, {
    key: "draggableModal",
    value: function draggableModal() {
      var $modalWidgetContent = this.getModal().getElements('widgetContent');
      $modalWidgetContent.draggable({
        containment: 'parent',
        stop: function stop() {
          $modalWidgetContent.height('');
        }
      });
      $modalWidgetContent.css('position', 'absolute');
    }
  }, {
    key: "getModalOptions",
    value: function getModalOptions() {
      return {};
    }
  }, {
    key: "getLogoOptions",
    value: function getLogoOptions() {
      return {};
    }
  }, {
    key: "getHeaderOptions",
    value: function getHeaderOptions() {
      return {
        closeType: 'normal'
      };
    }
  }, {
    key: "getHeaderView",
    value: function getHeaderView() {
      return this.modalHeader.currentView;
    }
  }, {
    key: "showLoadingView",
    value: function showLoadingView() {
      this.modalLoading.show(new _loading.default());
      this.modalLoading.$el.show();
      this.modalContent.$el.hide();
    }
  }, {
    key: "hideLoadingView",
    value: function hideLoadingView() {
      this.modalContent.$el.show();
      this.modalLoading.$el.hide();
    }
  }, {
    key: "showLogo",
    value: function showLogo() {
      this.getHeaderView().logoArea.show(new _logo.default(this.getLogoOptions()));
    }
  }]);
  return _default;
}(Marionette.LayoutView);

exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/views/modal/loading.js":
/*!*******************************************************!*\
  !*** ../core/common/assets/js/views/modal/loading.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _default = /*#__PURE__*/function (_Marionette$ItemView) {
  (0, _inherits2.default)(_default, _Marionette$ItemView);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "id",
    value: function id() {
      return 'elementor-template-library-loading';
    }
  }, {
    key: "getTemplate",
    value: function getTemplate() {
      return '#tmpl-elementor-template-library-loading';
    }
  }]);
  return _default;
}(Marionette.ItemView);

exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/views/modal/logo.js":
/*!****************************************************!*\
  !*** ../core/common/assets/js/views/modal/logo.js ***!
  \****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _default = /*#__PURE__*/function (_Marionette$ItemView) {
  (0, _inherits2.default)(_default, _Marionette$ItemView);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "getTemplate",
    value: function getTemplate() {
      return '#tmpl-elementor-templates-modal__header__logo';
    }
  }, {
    key: "className",
    value: function className() {
      return 'elementor-templates-modal__header__logo';
    }
  }, {
    key: "events",
    value: function events() {
      return {
        click: 'onClick'
      };
    }
  }, {
    key: "templateHelpers",
    value: function templateHelpers() {
      return {
        title: this.getOption('title')
      };
    }
  }, {
    key: "onClick",
    value: function onClick() {
      var clickCallback = this.getOption('click');

      if (clickCallback) {
        clickCallback();
      }
    }
  }]);
  return _default;
}(Marionette.ItemView);

exports.default = _default;

/***/ }),

/***/ "../node_modules/core-js/library/fn/array/from.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/fn/array/from.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.string.iterator */ "../node_modules/core-js/library/modules/es6.string.iterator.js");
__webpack_require__(/*! ../../modules/es6.array.from */ "../node_modules/core-js/library/modules/es6.array.from.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Array.from;


/***/ }),

/***/ "../node_modules/core-js/library/fn/array/is-array.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/fn/array/is-array.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.array.is-array */ "../node_modules/core-js/library/modules/es6.array.is-array.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Array.isArray;


/***/ }),

/***/ "../node_modules/core-js/library/fn/map.js":
/*!*************************************************!*\
  !*** ../node_modules/core-js/library/fn/map.js ***!
  \*************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../modules/es6.object.to-string */ "../node_modules/core-js/library/modules/es6.object.to-string.js");
__webpack_require__(/*! ../modules/es6.string.iterator */ "../node_modules/core-js/library/modules/es6.string.iterator.js");
__webpack_require__(/*! ../modules/web.dom.iterable */ "../node_modules/core-js/library/modules/web.dom.iterable.js");
__webpack_require__(/*! ../modules/es6.map */ "../node_modules/core-js/library/modules/es6.map.js");
__webpack_require__(/*! ../modules/es7.map.to-json */ "../node_modules/core-js/library/modules/es7.map.to-json.js");
__webpack_require__(/*! ../modules/es7.map.of */ "../node_modules/core-js/library/modules/es7.map.of.js");
__webpack_require__(/*! ../modules/es7.map.from */ "../node_modules/core-js/library/modules/es7.map.from.js");
module.exports = __webpack_require__(/*! ../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Map;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/create.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/create.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.create */ "../node_modules/core-js/library/modules/es6.object.create.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function create(P, D) {
  return $Object.create(P, D);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/define-property.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/define-property.js ***!
  \********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.define-property */ "../node_modules/core-js/library/modules/es6.object.define-property.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function defineProperty(it, key, desc) {
  return $Object.defineProperty(it, key, desc);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/entries.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/entries.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es7.object.entries */ "../node_modules/core-js/library/modules/es7.object.entries.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.entries;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/get-own-property-descriptor.js":
/*!********************************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/get-own-property-descriptor.js ***!
  \********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.get-own-property-descriptor */ "../node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function getOwnPropertyDescriptor(it, key) {
  return $Object.getOwnPropertyDescriptor(it, key);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/get-prototype-of.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/get-prototype-of.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.get-prototype-of */ "../node_modules/core-js/library/modules/es6.object.get-prototype-of.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.getPrototypeOf;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/keys.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/keys.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.keys */ "../node_modules/core-js/library/modules/es6.object.keys.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.keys;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/set-prototype-of.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/set-prototype-of.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.set-prototype-of */ "../node_modules/core-js/library/modules/es6.object.set-prototype-of.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.setPrototypeOf;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/values.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/values.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es7.object.values */ "../node_modules/core-js/library/modules/es7.object.values.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.values;


/***/ }),

/***/ "../node_modules/core-js/library/fn/parse-float.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/library/fn/parse-float.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../modules/es6.parse-float */ "../node_modules/core-js/library/modules/es6.parse-float.js");
module.exports = __webpack_require__(/*! ../modules/_core */ "../node_modules/core-js/library/modules/_core.js").parseFloat;


/***/ }),

/***/ "../node_modules/core-js/library/fn/parse-int.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/fn/parse-int.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../modules/es6.parse-int */ "../node_modules/core-js/library/modules/es6.parse-int.js");
module.exports = __webpack_require__(/*! ../modules/_core */ "../node_modules/core-js/library/modules/_core.js").parseInt;


/***/ }),

/***/ "../node_modules/core-js/library/fn/promise.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/library/fn/promise.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../modules/es6.object.to-string */ "../node_modules/core-js/library/modules/es6.object.to-string.js");
__webpack_require__(/*! ../modules/es6.string.iterator */ "../node_modules/core-js/library/modules/es6.string.iterator.js");
__webpack_require__(/*! ../modules/web.dom.iterable */ "../node_modules/core-js/library/modules/web.dom.iterable.js");
__webpack_require__(/*! ../modules/es6.promise */ "../node_modules/core-js/library/modules/es6.promise.js");
__webpack_require__(/*! ../modules/es7.promise.finally */ "../node_modules/core-js/library/modules/es7.promise.finally.js");
__webpack_require__(/*! ../modules/es7.promise.try */ "../node_modules/core-js/library/modules/es7.promise.try.js");
module.exports = __webpack_require__(/*! ../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Promise;


/***/ }),

/***/ "../node_modules/core-js/library/fn/reflect/construct.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/fn/reflect/construct.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.reflect.construct */ "../node_modules/core-js/library/modules/es6.reflect.construct.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Reflect.construct;


/***/ }),

/***/ "../node_modules/core-js/library/fn/reflect/get.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/library/fn/reflect/get.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.reflect.get */ "../node_modules/core-js/library/modules/es6.reflect.get.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Reflect.get;


/***/ }),

/***/ "../node_modules/core-js/library/fn/symbol/has-instance.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/fn/symbol/has-instance.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.function.has-instance */ "../node_modules/core-js/library/modules/es6.function.has-instance.js");
module.exports = __webpack_require__(/*! ../../modules/_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js").f('hasInstance');


/***/ }),

/***/ "../node_modules/core-js/library/fn/symbol/index.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/fn/symbol/index.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.symbol */ "../node_modules/core-js/library/modules/es6.symbol.js");
__webpack_require__(/*! ../../modules/es6.object.to-string */ "../node_modules/core-js/library/modules/es6.object.to-string.js");
__webpack_require__(/*! ../../modules/es7.symbol.async-iterator */ "../node_modules/core-js/library/modules/es7.symbol.async-iterator.js");
__webpack_require__(/*! ../../modules/es7.symbol.observable */ "../node_modules/core-js/library/modules/es7.symbol.observable.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Symbol;


/***/ }),

/***/ "../node_modules/core-js/library/fn/symbol/iterator.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/fn/symbol/iterator.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.string.iterator */ "../node_modules/core-js/library/modules/es6.string.iterator.js");
__webpack_require__(/*! ../../modules/web.dom.iterable */ "../node_modules/core-js/library/modules/web.dom.iterable.js");
module.exports = __webpack_require__(/*! ../../modules/_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js").f('iterator');


/***/ }),

/***/ "../node_modules/core-js/library/fn/weak-map.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/library/fn/weak-map.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../modules/es6.object.to-string */ "../node_modules/core-js/library/modules/es6.object.to-string.js");
__webpack_require__(/*! ../modules/web.dom.iterable */ "../node_modules/core-js/library/modules/web.dom.iterable.js");
__webpack_require__(/*! ../modules/es6.weak-map */ "../node_modules/core-js/library/modules/es6.weak-map.js");
__webpack_require__(/*! ../modules/es7.weak-map.of */ "../node_modules/core-js/library/modules/es7.weak-map.of.js");
__webpack_require__(/*! ../modules/es7.weak-map.from */ "../node_modules/core-js/library/modules/es7.weak-map.from.js");
module.exports = __webpack_require__(/*! ../modules/_core */ "../node_modules/core-js/library/modules/_core.js").WeakMap;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_a-function.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_a-function.js ***!
  \**************************************************************/
/***/ ((module) => {

module.exports = function (it) {
  if (typeof it != 'function') throw TypeError(it + ' is not a function!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_add-to-unscopables.js":
/*!**********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_add-to-unscopables.js ***!
  \**********************************************************************/
/***/ ((module) => {

module.exports = function () { /* empty */ };


/***/ }),

/***/ "../node_modules/core-js/library/modules/_an-instance.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_an-instance.js ***!
  \***************************************************************/
/***/ ((module) => {

module.exports = function (it, Constructor, name, forbiddenField) {
  if (!(it instanceof Constructor) || (forbiddenField !== undefined && forbiddenField in it)) {
    throw TypeError(name + ': incorrect invocation!');
  } return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_an-object.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_an-object.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
module.exports = function (it) {
  if (!isObject(it)) throw TypeError(it + ' is not an object!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-from-iterable.js":
/*!***********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-from-iterable.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");

module.exports = function (iter, ITERATOR) {
  var result = [];
  forOf(iter, false, result.push, result, ITERATOR);
  return result;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-includes.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-includes.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// false -> Array#indexOf
// true  -> Array#includes
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
var toAbsoluteIndex = __webpack_require__(/*! ./_to-absolute-index */ "../node_modules/core-js/library/modules/_to-absolute-index.js");
module.exports = function (IS_INCLUDES) {
  return function ($this, el, fromIndex) {
    var O = toIObject($this);
    var length = toLength(O.length);
    var index = toAbsoluteIndex(fromIndex, length);
    var value;
    // Array#includes uses SameValueZero equality algorithm
    // eslint-disable-next-line no-self-compare
    if (IS_INCLUDES && el != el) while (length > index) {
      value = O[index++];
      // eslint-disable-next-line no-self-compare
      if (value != value) return true;
    // Array#indexOf ignores holes, Array#includes - not
    } else for (;length > index; index++) if (IS_INCLUDES || index in O) {
      if (O[index] === el) return IS_INCLUDES || index || 0;
    } return !IS_INCLUDES && -1;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-methods.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-methods.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 0 -> Array#forEach
// 1 -> Array#map
// 2 -> Array#filter
// 3 -> Array#some
// 4 -> Array#every
// 5 -> Array#find
// 6 -> Array#findIndex
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/library/modules/_iobject.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
var asc = __webpack_require__(/*! ./_array-species-create */ "../node_modules/core-js/library/modules/_array-species-create.js");
module.exports = function (TYPE, $create) {
  var IS_MAP = TYPE == 1;
  var IS_FILTER = TYPE == 2;
  var IS_SOME = TYPE == 3;
  var IS_EVERY = TYPE == 4;
  var IS_FIND_INDEX = TYPE == 6;
  var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
  var create = $create || asc;
  return function ($this, callbackfn, that) {
    var O = toObject($this);
    var self = IObject(O);
    var f = ctx(callbackfn, that, 3);
    var length = toLength(self.length);
    var index = 0;
    var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;
    var val, res;
    for (;length > index; index++) if (NO_HOLES || index in self) {
      val = self[index];
      res = f(val, index, O);
      if (TYPE) {
        if (IS_MAP) result[index] = res;   // map
        else if (res) switch (TYPE) {
          case 3: return true;             // some
          case 5: return val;              // find
          case 6: return index;            // findIndex
          case 2: result.push(val);        // filter
        } else if (IS_EVERY) return false; // every
      }
    }
    return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-species-constructor.js":
/*!*****************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-species-constructor.js ***!
  \*****************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var isArray = __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/library/modules/_is-array.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('species');

module.exports = function (original) {
  var C;
  if (isArray(original)) {
    C = original.constructor;
    // cross-realm fallback
    if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
    if (isObject(C)) {
      C = C[SPECIES];
      if (C === null) C = undefined;
    }
  } return C === undefined ? Array : C;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-species-create.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-species-create.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 9.4.2.3 ArraySpeciesCreate(originalArray, length)
var speciesConstructor = __webpack_require__(/*! ./_array-species-constructor */ "../node_modules/core-js/library/modules/_array-species-constructor.js");

module.exports = function (original, length) {
  return new (speciesConstructor(original))(length);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_bind.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_bind.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var invoke = __webpack_require__(/*! ./_invoke */ "../node_modules/core-js/library/modules/_invoke.js");
var arraySlice = [].slice;
var factories = {};

var construct = function (F, len, args) {
  if (!(len in factories)) {
    for (var n = [], i = 0; i < len; i++) n[i] = 'a[' + i + ']';
    // eslint-disable-next-line no-new-func
    factories[len] = Function('F,a', 'return new F(' + n.join(',') + ')');
  } return factories[len](F, args);
};

module.exports = Function.bind || function bind(that /* , ...args */) {
  var fn = aFunction(this);
  var partArgs = arraySlice.call(arguments, 1);
  var bound = function (/* args... */) {
    var args = partArgs.concat(arraySlice.call(arguments));
    return this instanceof bound ? construct(fn, args.length, args) : invoke(fn, args, that);
  };
  if (isObject(fn.prototype)) bound.prototype = fn.prototype;
  return bound;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_classof.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_classof.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// getting tag from 19.1.3.6 Object.prototype.toString()
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('toStringTag');
// ES3 wrong here
var ARG = cof(function () { return arguments; }()) == 'Arguments';

// fallback for IE11 Script Access Denied error
var tryGet = function (it, key) {
  try {
    return it[key];
  } catch (e) { /* empty */ }
};

module.exports = function (it) {
  var O, T, B;
  return it === undefined ? 'Undefined' : it === null ? 'Null'
    // @@toStringTag case
    : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T
    // builtinTag case
    : ARG ? cof(O)
    // ES3 arguments fallback
    : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_cof.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_cof.js ***!
  \*******************************************************/
/***/ ((module) => {

var toString = {}.toString;

module.exports = function (it) {
  return toString.call(it).slice(8, -1);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_collection-strong.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_collection-strong.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
var create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
var redefineAll = __webpack_require__(/*! ./_redefine-all */ "../node_modules/core-js/library/modules/_redefine-all.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var anInstance = __webpack_require__(/*! ./_an-instance */ "../node_modules/core-js/library/modules/_an-instance.js");
var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");
var $iterDefine = __webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/library/modules/_iter-define.js");
var step = __webpack_require__(/*! ./_iter-step */ "../node_modules/core-js/library/modules/_iter-step.js");
var setSpecies = __webpack_require__(/*! ./_set-species */ "../node_modules/core-js/library/modules/_set-species.js");
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var fastKey = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js").fastKey;
var validate = __webpack_require__(/*! ./_validate-collection */ "../node_modules/core-js/library/modules/_validate-collection.js");
var SIZE = DESCRIPTORS ? '_s' : 'size';

var getEntry = function (that, key) {
  // fast case
  var index = fastKey(key);
  var entry;
  if (index !== 'F') return that._i[index];
  // frozen object case
  for (entry = that._f; entry; entry = entry.n) {
    if (entry.k == key) return entry;
  }
};

module.exports = {
  getConstructor: function (wrapper, NAME, IS_MAP, ADDER) {
    var C = wrapper(function (that, iterable) {
      anInstance(that, C, NAME, '_i');
      that._t = NAME;         // collection type
      that._i = create(null); // index
      that._f = undefined;    // first entry
      that._l = undefined;    // last entry
      that[SIZE] = 0;         // size
      if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);
    });
    redefineAll(C.prototype, {
      // 23.1.3.1 Map.prototype.clear()
      // 23.2.3.2 Set.prototype.clear()
      clear: function clear() {
        for (var that = validate(this, NAME), data = that._i, entry = that._f; entry; entry = entry.n) {
          entry.r = true;
          if (entry.p) entry.p = entry.p.n = undefined;
          delete data[entry.i];
        }
        that._f = that._l = undefined;
        that[SIZE] = 0;
      },
      // 23.1.3.3 Map.prototype.delete(key)
      // 23.2.3.4 Set.prototype.delete(value)
      'delete': function (key) {
        var that = validate(this, NAME);
        var entry = getEntry(that, key);
        if (entry) {
          var next = entry.n;
          var prev = entry.p;
          delete that._i[entry.i];
          entry.r = true;
          if (prev) prev.n = next;
          if (next) next.p = prev;
          if (that._f == entry) that._f = next;
          if (that._l == entry) that._l = prev;
          that[SIZE]--;
        } return !!entry;
      },
      // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined)
      // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined)
      forEach: function forEach(callbackfn /* , that = undefined */) {
        validate(this, NAME);
        var f = ctx(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3);
        var entry;
        while (entry = entry ? entry.n : this._f) {
          f(entry.v, entry.k, this);
          // revert to the last existing entry
          while (entry && entry.r) entry = entry.p;
        }
      },
      // 23.1.3.7 Map.prototype.has(key)
      // 23.2.3.7 Set.prototype.has(value)
      has: function has(key) {
        return !!getEntry(validate(this, NAME), key);
      }
    });
    if (DESCRIPTORS) dP(C.prototype, 'size', {
      get: function () {
        return validate(this, NAME)[SIZE];
      }
    });
    return C;
  },
  def: function (that, key, value) {
    var entry = getEntry(that, key);
    var prev, index;
    // change existing entry
    if (entry) {
      entry.v = value;
    // create new entry
    } else {
      that._l = entry = {
        i: index = fastKey(key, true), // <- index
        k: key,                        // <- key
        v: value,                      // <- value
        p: prev = that._l,             // <- previous entry
        n: undefined,                  // <- next entry
        r: false                       // <- removed
      };
      if (!that._f) that._f = entry;
      if (prev) prev.n = entry;
      that[SIZE]++;
      // add to index
      if (index !== 'F') that._i[index] = entry;
    } return that;
  },
  getEntry: getEntry,
  setStrong: function (C, NAME, IS_MAP) {
    // add .keys, .values, .entries, [@@iterator]
    // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11
    $iterDefine(C, NAME, function (iterated, kind) {
      this._t = validate(iterated, NAME); // target
      this._k = kind;                     // kind
      this._l = undefined;                // previous
    }, function () {
      var that = this;
      var kind = that._k;
      var entry = that._l;
      // revert to the last existing entry
      while (entry && entry.r) entry = entry.p;
      // get next entry
      if (!that._t || !(that._l = entry = entry ? entry.n : that._t._f)) {
        // or finish the iteration
        that._t = undefined;
        return step(1);
      }
      // return step by kind
      if (kind == 'keys') return step(0, entry.k);
      if (kind == 'values') return step(0, entry.v);
      return step(0, [entry.k, entry.v]);
    }, IS_MAP ? 'entries' : 'values', !IS_MAP, true);

    // add [@@species], 23.1.2.2, 23.2.2.2
    setSpecies(NAME);
  }
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_collection-to-json.js":
/*!**********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_collection-to-json.js ***!
  \**********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// https://github.com/DavidBruant/Map-Set.prototype.toJSON
var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/library/modules/_classof.js");
var from = __webpack_require__(/*! ./_array-from-iterable */ "../node_modules/core-js/library/modules/_array-from-iterable.js");
module.exports = function (NAME) {
  return function toJSON() {
    if (classof(this) != NAME) throw TypeError(NAME + "#toJSON isn't generic");
    return from(this);
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_collection-weak.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_collection-weak.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var redefineAll = __webpack_require__(/*! ./_redefine-all */ "../node_modules/core-js/library/modules/_redefine-all.js");
var getWeak = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js").getWeak;
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var anInstance = __webpack_require__(/*! ./_an-instance */ "../node_modules/core-js/library/modules/_an-instance.js");
var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");
var createArrayMethod = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/library/modules/_array-methods.js");
var $has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var validate = __webpack_require__(/*! ./_validate-collection */ "../node_modules/core-js/library/modules/_validate-collection.js");
var arrayFind = createArrayMethod(5);
var arrayFindIndex = createArrayMethod(6);
var id = 0;

// fallback for uncaught frozen keys
var uncaughtFrozenStore = function (that) {
  return that._l || (that._l = new UncaughtFrozenStore());
};
var UncaughtFrozenStore = function () {
  this.a = [];
};
var findUncaughtFrozen = function (store, key) {
  return arrayFind(store.a, function (it) {
    return it[0] === key;
  });
};
UncaughtFrozenStore.prototype = {
  get: function (key) {
    var entry = findUncaughtFrozen(this, key);
    if (entry) return entry[1];
  },
  has: function (key) {
    return !!findUncaughtFrozen(this, key);
  },
  set: function (key, value) {
    var entry = findUncaughtFrozen(this, key);
    if (entry) entry[1] = value;
    else this.a.push([key, value]);
  },
  'delete': function (key) {
    var index = arrayFindIndex(this.a, function (it) {
      return it[0] === key;
    });
    if (~index) this.a.splice(index, 1);
    return !!~index;
  }
};

module.exports = {
  getConstructor: function (wrapper, NAME, IS_MAP, ADDER) {
    var C = wrapper(function (that, iterable) {
      anInstance(that, C, NAME, '_i');
      that._t = NAME;      // collection type
      that._i = id++;      // collection id
      that._l = undefined; // leak store for uncaught frozen objects
      if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);
    });
    redefineAll(C.prototype, {
      // 23.3.3.2 WeakMap.prototype.delete(key)
      // 23.4.3.3 WeakSet.prototype.delete(value)
      'delete': function (key) {
        if (!isObject(key)) return false;
        var data = getWeak(key);
        if (data === true) return uncaughtFrozenStore(validate(this, NAME))['delete'](key);
        return data && $has(data, this._i) && delete data[this._i];
      },
      // 23.3.3.4 WeakMap.prototype.has(key)
      // 23.4.3.4 WeakSet.prototype.has(value)
      has: function has(key) {
        if (!isObject(key)) return false;
        var data = getWeak(key);
        if (data === true) return uncaughtFrozenStore(validate(this, NAME)).has(key);
        return data && $has(data, this._i);
      }
    });
    return C;
  },
  def: function (that, key, value) {
    var data = getWeak(anObject(key), true);
    if (data === true) uncaughtFrozenStore(that).set(key, value);
    else data[that._i] = value;
    return that;
  },
  ufstore: uncaughtFrozenStore
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_collection.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_collection.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var meta = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var redefineAll = __webpack_require__(/*! ./_redefine-all */ "../node_modules/core-js/library/modules/_redefine-all.js");
var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");
var anInstance = __webpack_require__(/*! ./_an-instance */ "../node_modules/core-js/library/modules/_an-instance.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
var each = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/library/modules/_array-methods.js")(0);
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");

module.exports = function (NAME, wrapper, methods, common, IS_MAP, IS_WEAK) {
  var Base = global[NAME];
  var C = Base;
  var ADDER = IS_MAP ? 'set' : 'add';
  var proto = C && C.prototype;
  var O = {};
  if (!DESCRIPTORS || typeof C != 'function' || !(IS_WEAK || proto.forEach && !fails(function () {
    new C().entries().next();
  }))) {
    // create collection constructor
    C = common.getConstructor(wrapper, NAME, IS_MAP, ADDER);
    redefineAll(C.prototype, methods);
    meta.NEED = true;
  } else {
    C = wrapper(function (target, iterable) {
      anInstance(target, C, NAME, '_c');
      target._c = new Base();
      if (iterable != undefined) forOf(iterable, IS_MAP, target[ADDER], target);
    });
    each('add,clear,delete,forEach,get,has,set,keys,values,entries,toJSON'.split(','), function (KEY) {
      var IS_ADDER = KEY == 'add' || KEY == 'set';
      if (KEY in proto && !(IS_WEAK && KEY == 'clear')) hide(C.prototype, KEY, function (a, b) {
        anInstance(this, C, KEY);
        if (!IS_ADDER && IS_WEAK && !isObject(a)) return KEY == 'get' ? undefined : false;
        var result = this._c[KEY](a === 0 ? 0 : a, b);
        return IS_ADDER ? this : result;
      });
    });
    IS_WEAK || dP(C.prototype, 'size', {
      get: function () {
        return this._c.size;
      }
    });
  }

  setToStringTag(C, NAME);

  O[NAME] = C;
  $export($export.G + $export.W + $export.F, O);

  if (!IS_WEAK) common.setStrong(C, NAME, IS_MAP);

  return C;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_core.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_core.js ***!
  \********************************************************/
/***/ ((module) => {

var core = module.exports = { version: '2.6.12' };
if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/library/modules/_create-property.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_create-property.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $defineProperty = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");

module.exports = function (object, index, value) {
  if (index in object) $defineProperty.f(object, index, createDesc(0, value));
  else object[index] = value;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_ctx.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_ctx.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// optional / simple context binding
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
module.exports = function (fn, that, length) {
  aFunction(fn);
  if (that === undefined) return fn;
  switch (length) {
    case 1: return function (a) {
      return fn.call(that, a);
    };
    case 2: return function (a, b) {
      return fn.call(that, a, b);
    };
    case 3: return function (a, b, c) {
      return fn.call(that, a, b, c);
    };
  }
  return function (/* ...args */) {
    return fn.apply(that, arguments);
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_defined.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_defined.js ***!
  \***********************************************************/
/***/ ((module) => {

// 7.2.1 RequireObjectCoercible(argument)
module.exports = function (it) {
  if (it == undefined) throw TypeError("Can't call method on  " + it);
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_descriptors.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_descriptors.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Thank's IE8 for his funny defineProperty
module.exports = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/_dom-create.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_dom-create.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").document;
// typeof document.createElement is 'object' in old IE
var is = isObject(document) && isObject(document.createElement);
module.exports = function (it) {
  return is ? document.createElement(it) : {};
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_enum-bug-keys.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_enum-bug-keys.js ***!
  \*****************************************************************/
/***/ ((module) => {

// IE 8- don't enum bug keys
module.exports = (
  'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
).split(',');


/***/ }),

/***/ "../node_modules/core-js/library/modules/_enum-keys.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_enum-keys.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// all enumerable object keys, includes symbols
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var gOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js");
module.exports = function (it) {
  var result = getKeys(it);
  var getSymbols = gOPS.f;
  if (getSymbols) {
    var symbols = getSymbols(it);
    var isEnum = pIE.f;
    var i = 0;
    var key;
    while (symbols.length > i) if (isEnum.call(it, key = symbols[i++])) result.push(key);
  } return result;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_export.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_export.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var PROTOTYPE = 'prototype';

var $export = function (type, name, source) {
  var IS_FORCED = type & $export.F;
  var IS_GLOBAL = type & $export.G;
  var IS_STATIC = type & $export.S;
  var IS_PROTO = type & $export.P;
  var IS_BIND = type & $export.B;
  var IS_WRAP = type & $export.W;
  var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
  var expProto = exports[PROTOTYPE];
  var target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE];
  var key, own, out;
  if (IS_GLOBAL) source = name;
  for (key in source) {
    // contains in native
    own = !IS_FORCED && target && target[key] !== undefined;
    if (own && has(exports, key)) continue;
    // export native or passed
    out = own ? target[key] : source[key];
    // prevent global pollution for namespaces
    exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key]
    // bind timers to global for call from export context
    : IS_BIND && own ? ctx(out, global)
    // wrap global constructors for prevent change them in library
    : IS_WRAP && target[key] == out ? (function (C) {
      var F = function (a, b, c) {
        if (this instanceof C) {
          switch (arguments.length) {
            case 0: return new C();
            case 1: return new C(a);
            case 2: return new C(a, b);
          } return new C(a, b, c);
        } return C.apply(this, arguments);
      };
      F[PROTOTYPE] = C[PROTOTYPE];
      return F;
    // make static versions for prototype methods
    })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
    // export proto methods to core.%CONSTRUCTOR%.methods.%NAME%
    if (IS_PROTO) {
      (exports.virtual || (exports.virtual = {}))[key] = out;
      // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME%
      if (type & $export.R && expProto && !expProto[key]) hide(expProto, key, out);
    }
  }
};
// type bitmap
$export.F = 1;   // forced
$export.G = 2;   // global
$export.S = 4;   // static
$export.P = 8;   // proto
$export.B = 16;  // bind
$export.W = 32;  // wrap
$export.U = 64;  // safe
$export.R = 128; // real proto method for `library`
module.exports = $export;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_fails.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_fails.js ***!
  \*********************************************************/
/***/ ((module) => {

module.exports = function (exec) {
  try {
    return !!exec();
  } catch (e) {
    return true;
  }
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_for-of.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_for-of.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var call = __webpack_require__(/*! ./_iter-call */ "../node_modules/core-js/library/modules/_iter-call.js");
var isArrayIter = __webpack_require__(/*! ./_is-array-iter */ "../node_modules/core-js/library/modules/_is-array-iter.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
var getIterFn = __webpack_require__(/*! ./core.get-iterator-method */ "../node_modules/core-js/library/modules/core.get-iterator-method.js");
var BREAK = {};
var RETURN = {};
var exports = module.exports = function (iterable, entries, fn, that, ITERATOR) {
  var iterFn = ITERATOR ? function () { return iterable; } : getIterFn(iterable);
  var f = ctx(fn, that, entries ? 2 : 1);
  var index = 0;
  var length, step, iterator, result;
  if (typeof iterFn != 'function') throw TypeError(iterable + ' is not iterable!');
  // fast case for arrays with default iterator
  if (isArrayIter(iterFn)) for (length = toLength(iterable.length); length > index; index++) {
    result = entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]);
    if (result === BREAK || result === RETURN) return result;
  } else for (iterator = iterFn.call(iterable); !(step = iterator.next()).done;) {
    result = call(iterator, f, step.value, entries);
    if (result === BREAK || result === RETURN) return result;
  }
};
exports.BREAK = BREAK;
exports.RETURN = RETURN;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_global.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_global.js ***!
  \**********************************************************/
/***/ ((module) => {

// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
var global = module.exports = typeof window != 'undefined' && window.Math == Math
  ? window : typeof self != 'undefined' && self.Math == Math ? self
  // eslint-disable-next-line no-new-func
  : Function('return this')();
if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/library/modules/_has.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_has.js ***!
  \*******************************************************/
/***/ ((module) => {

var hasOwnProperty = {}.hasOwnProperty;
module.exports = function (it, key) {
  return hasOwnProperty.call(it, key);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_hide.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_hide.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? function (object, key, value) {
  return dP.f(object, key, createDesc(1, value));
} : function (object, key, value) {
  object[key] = value;
  return object;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_html.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_html.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").document;
module.exports = document && document.documentElement;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_ie8-dom-define.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_ie8-dom-define.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") && !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  return Object.defineProperty(__webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/library/modules/_dom-create.js")('div'), 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/_invoke.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_invoke.js ***!
  \**********************************************************/
/***/ ((module) => {

// fast apply, http://jsperf.lnkit.com/fast-apply/5
module.exports = function (fn, args, that) {
  var un = that === undefined;
  switch (args.length) {
    case 0: return un ? fn()
                      : fn.call(that);
    case 1: return un ? fn(args[0])
                      : fn.call(that, args[0]);
    case 2: return un ? fn(args[0], args[1])
                      : fn.call(that, args[0], args[1]);
    case 3: return un ? fn(args[0], args[1], args[2])
                      : fn.call(that, args[0], args[1], args[2]);
    case 4: return un ? fn(args[0], args[1], args[2], args[3])
                      : fn.call(that, args[0], args[1], args[2], args[3]);
  } return fn.apply(that, args);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iobject.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iobject.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// fallback for non-array-like ES3 and non-enumerable old V8 strings
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js");
// eslint-disable-next-line no-prototype-builtins
module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
  return cof(it) == 'String' ? it.split('') : Object(it);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_is-array-iter.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_is-array-iter.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// check on default Array iterator
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var ArrayProto = Array.prototype;

module.exports = function (it) {
  return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_is-array.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_is-array.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.2.2 IsArray(argument)
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js");
module.exports = Array.isArray || function isArray(arg) {
  return cof(arg) == 'Array';
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_is-object.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_is-object.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = function (it) {
  return typeof it === 'object' ? it !== null : typeof it === 'function';
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-call.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-call.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// call something on iterator step with safe closing on error
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
module.exports = function (iterator, fn, value, entries) {
  try {
    return entries ? fn(anObject(value)[0], value[1]) : fn(value);
  // 7.4.6 IteratorClose(iterator, completion)
  } catch (e) {
    var ret = iterator['return'];
    if (ret !== undefined) anObject(ret.call(iterator));
    throw e;
  }
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-create.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-create.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
var descriptor = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var IteratorPrototype = {};

// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
__webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js")(IteratorPrototype, __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator'), function () { return this; });

module.exports = function (Constructor, NAME, next) {
  Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });
  setToStringTag(Constructor, NAME + ' Iterator');
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-define.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-define.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/library/modules/_redefine.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var $iterCreate = __webpack_require__(/*! ./_iter-create */ "../node_modules/core-js/library/modules/_iter-create.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`
var FF_ITERATOR = '@@iterator';
var KEYS = 'keys';
var VALUES = 'values';

var returnThis = function () { return this; };

module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {
  $iterCreate(Constructor, NAME, next);
  var getMethod = function (kind) {
    if (!BUGGY && kind in proto) return proto[kind];
    switch (kind) {
      case KEYS: return function keys() { return new Constructor(this, kind); };
      case VALUES: return function values() { return new Constructor(this, kind); };
    } return function entries() { return new Constructor(this, kind); };
  };
  var TAG = NAME + ' Iterator';
  var DEF_VALUES = DEFAULT == VALUES;
  var VALUES_BUG = false;
  var proto = Base.prototype;
  var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];
  var $default = $native || getMethod(DEFAULT);
  var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;
  var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;
  var methods, key, IteratorPrototype;
  // Fix native
  if ($anyNative) {
    IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));
    if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {
      // Set @@toStringTag to native iterators
      setToStringTag(IteratorPrototype, TAG, true);
      // fix for some old engines
      if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);
    }
  }
  // fix Array#{values, @@iterator}.name in V8 / FF
  if (DEF_VALUES && $native && $native.name !== VALUES) {
    VALUES_BUG = true;
    $default = function values() { return $native.call(this); };
  }
  // Define iterator
  if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {
    hide(proto, ITERATOR, $default);
  }
  // Plug for library
  Iterators[NAME] = $default;
  Iterators[TAG] = returnThis;
  if (DEFAULT) {
    methods = {
      values: DEF_VALUES ? $default : getMethod(VALUES),
      keys: IS_SET ? $default : getMethod(KEYS),
      entries: $entries
    };
    if (FORCED) for (key in methods) {
      if (!(key in proto)) redefine(proto, key, methods[key]);
    } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
  }
  return methods;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-detect.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-detect.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var SAFE_CLOSING = false;

try {
  var riter = [7][ITERATOR]();
  riter['return'] = function () { SAFE_CLOSING = true; };
  // eslint-disable-next-line no-throw-literal
  Array.from(riter, function () { throw 2; });
} catch (e) { /* empty */ }

module.exports = function (exec, skipClosing) {
  if (!skipClosing && !SAFE_CLOSING) return false;
  var safe = false;
  try {
    var arr = [7];
    var iter = arr[ITERATOR]();
    iter.next = function () { return { done: safe = true }; };
    arr[ITERATOR] = function () { return iter; };
    exec(arr);
  } catch (e) { /* empty */ }
  return safe;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-step.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-step.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = function (done, value) {
  return { value: value, done: !!done };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iterators.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iterators.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = {};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_library.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_library.js ***!
  \***********************************************************/
/***/ ((module) => {

module.exports = true;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_meta.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_meta.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var META = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js")('meta');
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var setDesc = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
var id = 0;
var isExtensible = Object.isExtensible || function () {
  return true;
};
var FREEZE = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  return isExtensible(Object.preventExtensions({}));
});
var setMeta = function (it) {
  setDesc(it, META, { value: {
    i: 'O' + ++id, // object ID
    w: {}          // weak collections IDs
  } });
};
var fastKey = function (it, create) {
  // return primitive with prefix
  if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;
  if (!has(it, META)) {
    // can't set metadata to uncaught frozen object
    if (!isExtensible(it)) return 'F';
    // not necessary to add metadata
    if (!create) return 'E';
    // add missing metadata
    setMeta(it);
  // return object ID
  } return it[META].i;
};
var getWeak = function (it, create) {
  if (!has(it, META)) {
    // can't set metadata to uncaught frozen object
    if (!isExtensible(it)) return true;
    // not necessary to add metadata
    if (!create) return false;
    // add missing metadata
    setMeta(it);
  // return hash weak collections IDs
  } return it[META].w;
};
// add metadata on freeze-family methods calling
var onFreeze = function (it) {
  if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it);
  return it;
};
var meta = module.exports = {
  KEY: META,
  NEED: false,
  fastKey: fastKey,
  getWeak: getWeak,
  onFreeze: onFreeze
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_microtask.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_microtask.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var macrotask = __webpack_require__(/*! ./_task */ "../node_modules/core-js/library/modules/_task.js").set;
var Observer = global.MutationObserver || global.WebKitMutationObserver;
var process = global.process;
var Promise = global.Promise;
var isNode = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js")(process) == 'process';

module.exports = function () {
  var head, last, notify;

  var flush = function () {
    var parent, fn;
    if (isNode && (parent = process.domain)) parent.exit();
    while (head) {
      fn = head.fn;
      head = head.next;
      try {
        fn();
      } catch (e) {
        if (head) notify();
        else last = undefined;
        throw e;
      }
    } last = undefined;
    if (parent) parent.enter();
  };

  // Node.js
  if (isNode) {
    notify = function () {
      process.nextTick(flush);
    };
  // browsers with MutationObserver, except iOS Safari - https://github.com/zloirock/core-js/issues/339
  } else if (Observer && !(global.navigator && global.navigator.standalone)) {
    var toggle = true;
    var node = document.createTextNode('');
    new Observer(flush).observe(node, { characterData: true }); // eslint-disable-line no-new
    notify = function () {
      node.data = toggle = !toggle;
    };
  // environments with maybe non-completely correct, but existent Promise
  } else if (Promise && Promise.resolve) {
    // Promise.resolve without an argument throws an error in LG WebOS 2
    var promise = Promise.resolve(undefined);
    notify = function () {
      promise.then(flush);
    };
  // for other environments - macrotask based on:
  // - setImmediate
  // - MessageChannel
  // - window.postMessag
  // - onreadystatechange
  // - setTimeout
  } else {
    notify = function () {
      // strange IE + webpack dev server bug - use .call(global)
      macrotask.call(global, flush);
    };
  }

  return function (fn) {
    var task = { fn: fn, next: undefined };
    if (last) last.next = task;
    if (!head) {
      head = task;
      notify();
    } last = task;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_new-promise-capability.js":
/*!**************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_new-promise-capability.js ***!
  \**************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 25.4.1.5 NewPromiseCapability(C)
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");

function PromiseCapability(C) {
  var resolve, reject;
  this.promise = new C(function ($$resolve, $$reject) {
    if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor');
    resolve = $$resolve;
    reject = $$reject;
  });
  this.resolve = aFunction(resolve);
  this.reject = aFunction(reject);
}

module.exports.f = function (C) {
  return new PromiseCapability(C);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-assign.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-assign.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 19.1.2.1 Object.assign(target, source, ...)
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var gOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/library/modules/_iobject.js");
var $assign = Object.assign;

// should work with symbols and should have deterministic property order (V8 bug)
module.exports = !$assign || __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  var A = {};
  var B = {};
  // eslint-disable-next-line no-undef
  var S = Symbol();
  var K = 'abcdefghijklmnopqrst';
  A[S] = 7;
  K.split('').forEach(function (k) { B[k] = k; });
  return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join('') != K;
}) ? function assign(target, source) { // eslint-disable-line no-unused-vars
  var T = toObject(target);
  var aLen = arguments.length;
  var index = 1;
  var getSymbols = gOPS.f;
  var isEnum = pIE.f;
  while (aLen > index) {
    var S = IObject(arguments[index++]);
    var keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S);
    var length = keys.length;
    var j = 0;
    var key;
    while (length > j) {
      key = keys[j++];
      if (!DESCRIPTORS || isEnum.call(S, key)) T[key] = S[key];
    }
  } return T;
} : $assign;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-create.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-create.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var dPs = __webpack_require__(/*! ./_object-dps */ "../node_modules/core-js/library/modules/_object-dps.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');
var Empty = function () { /* empty */ };
var PROTOTYPE = 'prototype';

// Create object with fake `null` prototype: use iframe Object with cleared prototype
var createDict = function () {
  // Thrash, waste and sodomy: IE GC bug
  var iframe = __webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/library/modules/_dom-create.js")('iframe');
  var i = enumBugKeys.length;
  var lt = '<';
  var gt = '>';
  var iframeDocument;
  iframe.style.display = 'none';
  __webpack_require__(/*! ./_html */ "../node_modules/core-js/library/modules/_html.js").appendChild(iframe);
  iframe.src = 'javascript:'; // eslint-disable-line no-script-url
  // createDict = iframe.contentWindow.Object;
  // html.removeChild(iframe);
  iframeDocument = iframe.contentWindow.document;
  iframeDocument.open();
  iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);
  iframeDocument.close();
  createDict = iframeDocument.F;
  while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];
  return createDict();
};

module.exports = Object.create || function create(O, Properties) {
  var result;
  if (O !== null) {
    Empty[PROTOTYPE] = anObject(O);
    result = new Empty();
    Empty[PROTOTYPE] = null;
    // add "__proto__" for Object.getPrototypeOf polyfill
    result[IE_PROTO] = O;
  } else result = createDict();
  return Properties === undefined ? result : dPs(result, Properties);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-dp.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-dp.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/library/modules/_ie8-dom-define.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
var dP = Object.defineProperty;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? Object.defineProperty : function defineProperty(O, P, Attributes) {
  anObject(O);
  P = toPrimitive(P, true);
  anObject(Attributes);
  if (IE8_DOM_DEFINE) try {
    return dP(O, P, Attributes);
  } catch (e) { /* empty */ }
  if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
  if ('value' in Attributes) O[P] = Attributes.value;
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-dps.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-dps.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");

module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? Object.defineProperties : function defineProperties(O, Properties) {
  anObject(O);
  var keys = getKeys(Properties);
  var length = keys.length;
  var i = 0;
  var P;
  while (length > i) dP.f(O, P = keys[i++], Properties[P]);
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gopd.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gopd.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/library/modules/_ie8-dom-define.js");
var gOPD = Object.getOwnPropertyDescriptor;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? gOPD : function getOwnPropertyDescriptor(O, P) {
  O = toIObject(O);
  P = toPrimitive(P, true);
  if (IE8_DOM_DEFINE) try {
    return gOPD(O, P);
  } catch (e) { /* empty */ }
  if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gopn-ext.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gopn-ext.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var gOPN = __webpack_require__(/*! ./_object-gopn */ "../node_modules/core-js/library/modules/_object-gopn.js").f;
var toString = {}.toString;

var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames
  ? Object.getOwnPropertyNames(window) : [];

var getWindowNames = function (it) {
  try {
    return gOPN(it);
  } catch (e) {
    return windowNames.slice();
  }
};

module.exports.f = function getOwnPropertyNames(it) {
  return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gopn.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gopn.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)
var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/library/modules/_object-keys-internal.js");
var hiddenKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js").concat('length', 'prototype');

exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
  return $keys(O, hiddenKeys);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gops.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gops.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports) => {

exports.f = Object.getOwnPropertySymbols;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gpo.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gpo.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');
var ObjectProto = Object.prototype;

module.exports = Object.getPrototypeOf || function (O) {
  O = toObject(O);
  if (has(O, IE_PROTO)) return O[IE_PROTO];
  if (typeof O.constructor == 'function' && O instanceof O.constructor) {
    return O.constructor.prototype;
  } return O instanceof Object ? ObjectProto : null;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-keys-internal.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-keys-internal.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var arrayIndexOf = __webpack_require__(/*! ./_array-includes */ "../node_modules/core-js/library/modules/_array-includes.js")(false);
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');

module.exports = function (object, names) {
  var O = toIObject(object);
  var i = 0;
  var result = [];
  var key;
  for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);
  // Don't enum bug & hidden keys
  while (names.length > i) if (has(O, key = names[i++])) {
    ~arrayIndexOf(result, key) || result.push(key);
  }
  return result;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-keys.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-keys.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.14 / 15.2.3.14 Object.keys(O)
var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/library/modules/_object-keys-internal.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js");

module.exports = Object.keys || function keys(O) {
  return $keys(O, enumBugKeys);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-pie.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-pie.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports) => {

exports.f = {}.propertyIsEnumerable;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-sap.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-sap.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// most Object methods by ES6 should accept primitives
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
module.exports = function (KEY, exec) {
  var fn = (core.Object || {})[KEY] || Object[KEY];
  var exp = {};
  exp[KEY] = exec(fn);
  $export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-to-array.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-to-array.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var isEnum = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js").f;
module.exports = function (isEntries) {
  return function (it) {
    var O = toIObject(it);
    var keys = getKeys(O);
    var length = keys.length;
    var i = 0;
    var result = [];
    var key;
    while (length > i) {
      key = keys[i++];
      if (!DESCRIPTORS || isEnum.call(O, key)) {
        result.push(isEntries ? [key, O[key]] : O[key]);
      }
    }
    return result;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_parse-float.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_parse-float.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var $parseFloat = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").parseFloat;
var $trim = __webpack_require__(/*! ./_string-trim */ "../node_modules/core-js/library/modules/_string-trim.js").trim;

module.exports = 1 / $parseFloat(__webpack_require__(/*! ./_string-ws */ "../node_modules/core-js/library/modules/_string-ws.js") + '-0') !== -Infinity ? function parseFloat(str) {
  var string = $trim(String(str), 3);
  var result = $parseFloat(string);
  return result === 0 && string.charAt(0) == '-' ? -0 : result;
} : $parseFloat;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_parse-int.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_parse-int.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var $parseInt = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").parseInt;
var $trim = __webpack_require__(/*! ./_string-trim */ "../node_modules/core-js/library/modules/_string-trim.js").trim;
var ws = __webpack_require__(/*! ./_string-ws */ "../node_modules/core-js/library/modules/_string-ws.js");
var hex = /^[-+]?0[xX]/;

module.exports = $parseInt(ws + '08') !== 8 || $parseInt(ws + '0x16') !== 22 ? function parseInt(str, radix) {
  var string = $trim(String(str), 3);
  return $parseInt(string, (radix >>> 0) || (hex.test(string) ? 16 : 10));
} : $parseInt;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_perform.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_perform.js ***!
  \***********************************************************/
/***/ ((module) => {

module.exports = function (exec) {
  try {
    return { e: false, v: exec() };
  } catch (e) {
    return { e: true, v: e };
  }
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_promise-resolve.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_promise-resolve.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var newPromiseCapability = __webpack_require__(/*! ./_new-promise-capability */ "../node_modules/core-js/library/modules/_new-promise-capability.js");

module.exports = function (C, x) {
  anObject(C);
  if (isObject(x) && x.constructor === C) return x;
  var promiseCapability = newPromiseCapability.f(C);
  var resolve = promiseCapability.resolve;
  resolve(x);
  return promiseCapability.promise;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_property-desc.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_property-desc.js ***!
  \*****************************************************************/
/***/ ((module) => {

module.exports = function (bitmap, value) {
  return {
    enumerable: !(bitmap & 1),
    configurable: !(bitmap & 2),
    writable: !(bitmap & 4),
    value: value
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_redefine-all.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_redefine-all.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
module.exports = function (target, src, safe) {
  for (var key in src) {
    if (safe && target[key]) target[key] = src[key];
    else hide(target, key, src[key]);
  } return target;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_redefine.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_redefine.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-collection-from.js":
/*!***********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-collection-from.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// https://tc39.github.io/proposal-setmap-offrom/
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");

module.exports = function (COLLECTION) {
  $export($export.S, COLLECTION, { from: function from(source /* , mapFn, thisArg */) {
    var mapFn = arguments[1];
    var mapping, A, n, cb;
    aFunction(this);
    mapping = mapFn !== undefined;
    if (mapping) aFunction(mapFn);
    if (source == undefined) return new this();
    A = [];
    if (mapping) {
      n = 0;
      cb = ctx(mapFn, arguments[2], 2);
      forOf(source, false, function (nextItem) {
        A.push(cb(nextItem, n++));
      });
    } else {
      forOf(source, false, A.push, A);
    }
    return new this(A);
  } });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-collection-of.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-collection-of.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// https://tc39.github.io/proposal-setmap-offrom/
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");

module.exports = function (COLLECTION) {
  $export($export.S, COLLECTION, { of: function of() {
    var length = arguments.length;
    var A = new Array(length);
    while (length--) A[length] = arguments[length];
    return new this(A);
  } });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-proto.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-proto.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Works with __proto__ only. Old v8 can't work with null proto objects.
/* eslint-disable no-proto */
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var check = function (O, proto) {
  anObject(O);
  if (!isObject(proto) && proto !== null) throw TypeError(proto + ": can't set as prototype!");
};
module.exports = {
  set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line
    function (test, buggy, set) {
      try {
        set = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js")(Function.call, __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js").f(Object.prototype, '__proto__').set, 2);
        set(test, []);
        buggy = !(test instanceof Array);
      } catch (e) { buggy = true; }
      return function setPrototypeOf(O, proto) {
        check(O, proto);
        if (buggy) O.__proto__ = proto;
        else set(O, proto);
        return O;
      };
    }({}, false) : undefined),
  check: check
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-species.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-species.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('species');

module.exports = function (KEY) {
  var C = typeof core[KEY] == 'function' ? core[KEY] : global[KEY];
  if (DESCRIPTORS && C && !C[SPECIES]) dP.f(C, SPECIES, {
    configurable: true,
    get: function () { return this; }
  });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-to-string-tag.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-to-string-tag.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var def = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('toStringTag');

module.exports = function (it, tag, stat) {
  if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_shared-key.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_shared-key.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var shared = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js")('keys');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
module.exports = function (key) {
  return shared[key] || (shared[key] = uid(key));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_shared.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_shared.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var SHARED = '__core-js_shared__';
var store = global[SHARED] || (global[SHARED] = {});

(module.exports = function (key, value) {
  return store[key] || (store[key] = value !== undefined ? value : {});
})('versions', []).push({
  version: core.version,
  mode: __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js") ? 'pure' : 'global',
  copyright: '© 2020 Denis Pushkarev (zloirock.ru)'
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/_species-constructor.js":
/*!***********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_species-constructor.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.3.20 SpeciesConstructor(O, defaultConstructor)
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('species');
module.exports = function (O, D) {
  var C = anObject(O).constructor;
  var S;
  return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_string-at.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_string-at.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
// true  -> String#at
// false -> String#codePointAt
module.exports = function (TO_STRING) {
  return function (that, pos) {
    var s = String(defined(that));
    var i = toInteger(pos);
    var l = s.length;
    var a, b;
    if (i < 0 || i >= l) return TO_STRING ? '' : undefined;
    a = s.charCodeAt(i);
    return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
      ? TO_STRING ? s.charAt(i) : a
      : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_string-trim.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_string-trim.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
var spaces = __webpack_require__(/*! ./_string-ws */ "../node_modules/core-js/library/modules/_string-ws.js");
var space = '[' + spaces + ']';
var non = '\u200b\u0085';
var ltrim = RegExp('^' + space + space + '*');
var rtrim = RegExp(space + space + '*$');

var exporter = function (KEY, exec, ALIAS) {
  var exp = {};
  var FORCE = fails(function () {
    return !!spaces[KEY]() || non[KEY]() != non;
  });
  var fn = exp[KEY] = FORCE ? exec(trim) : spaces[KEY];
  if (ALIAS) exp[ALIAS] = fn;
  $export($export.P + $export.F * FORCE, 'String', exp);
};

// 1 -> String#trimLeft
// 2 -> String#trimRight
// 3 -> String#trim
var trim = exporter.trim = function (string, TYPE) {
  string = String(defined(string));
  if (TYPE & 1) string = string.replace(ltrim, '');
  if (TYPE & 2) string = string.replace(rtrim, '');
  return string;
};

module.exports = exporter;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_string-ws.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_string-ws.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = '\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003' +
  '\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF';


/***/ }),

/***/ "../node_modules/core-js/library/modules/_task.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_task.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var invoke = __webpack_require__(/*! ./_invoke */ "../node_modules/core-js/library/modules/_invoke.js");
var html = __webpack_require__(/*! ./_html */ "../node_modules/core-js/library/modules/_html.js");
var cel = __webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/library/modules/_dom-create.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var process = global.process;
var setTask = global.setImmediate;
var clearTask = global.clearImmediate;
var MessageChannel = global.MessageChannel;
var Dispatch = global.Dispatch;
var counter = 0;
var queue = {};
var ONREADYSTATECHANGE = 'onreadystatechange';
var defer, channel, port;
var run = function () {
  var id = +this;
  // eslint-disable-next-line no-prototype-builtins
  if (queue.hasOwnProperty(id)) {
    var fn = queue[id];
    delete queue[id];
    fn();
  }
};
var listener = function (event) {
  run.call(event.data);
};
// Node.js 0.9+ & IE10+ has setImmediate, otherwise:
if (!setTask || !clearTask) {
  setTask = function setImmediate(fn) {
    var args = [];
    var i = 1;
    while (arguments.length > i) args.push(arguments[i++]);
    queue[++counter] = function () {
      // eslint-disable-next-line no-new-func
      invoke(typeof fn == 'function' ? fn : Function(fn), args);
    };
    defer(counter);
    return counter;
  };
  clearTask = function clearImmediate(id) {
    delete queue[id];
  };
  // Node.js 0.8-
  if (__webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js")(process) == 'process') {
    defer = function (id) {
      process.nextTick(ctx(run, id, 1));
    };
  // Sphere (JS game engine) Dispatch API
  } else if (Dispatch && Dispatch.now) {
    defer = function (id) {
      Dispatch.now(ctx(run, id, 1));
    };
  // Browsers with MessageChannel, includes WebWorkers
  } else if (MessageChannel) {
    channel = new MessageChannel();
    port = channel.port2;
    channel.port1.onmessage = listener;
    defer = ctx(port.postMessage, port, 1);
  // Browsers with postMessage, skip WebWorkers
  // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'
  } else if (global.addEventListener && typeof postMessage == 'function' && !global.importScripts) {
    defer = function (id) {
      global.postMessage(id + '', '*');
    };
    global.addEventListener('message', listener, false);
  // IE8-
  } else if (ONREADYSTATECHANGE in cel('script')) {
    defer = function (id) {
      html.appendChild(cel('script'))[ONREADYSTATECHANGE] = function () {
        html.removeChild(this);
        run.call(id);
      };
    };
  // Rest old browsers
  } else {
    defer = function (id) {
      setTimeout(ctx(run, id, 1), 0);
    };
  }
}
module.exports = {
  set: setTask,
  clear: clearTask
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-absolute-index.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-absolute-index.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
var max = Math.max;
var min = Math.min;
module.exports = function (index, length) {
  index = toInteger(index);
  return index < 0 ? max(index + length, 0) : min(index, length);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-integer.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-integer.js ***!
  \**************************************************************/
/***/ ((module) => {

// 7.1.4 ToInteger
var ceil = Math.ceil;
var floor = Math.floor;
module.exports = function (it) {
  return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-iobject.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-iobject.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// to indexed object, toObject with fallback for non-array-like ES3 strings
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/library/modules/_iobject.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
module.exports = function (it) {
  return IObject(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-length.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-length.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.15 ToLength
var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
var min = Math.min;
module.exports = function (it) {
  return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-object.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-object.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.13 ToObject(argument)
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
module.exports = function (it) {
  return Object(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-primitive.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-primitive.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.1 ToPrimitive(input [, PreferredType])
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
// instead of the ES6 spec version, we didn't implement @@toPrimitive case
// and the second argument - flag - preferred type is a string
module.exports = function (it, S) {
  if (!isObject(it)) return it;
  var fn, val;
  if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
  if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  throw TypeError("Can't convert object to primitive value");
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_uid.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_uid.js ***!
  \*******************************************************/
/***/ ((module) => {

var id = 0;
var px = Math.random();
module.exports = function (key) {
  return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_user-agent.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_user-agent.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var navigator = global.navigator;

module.exports = navigator && navigator.userAgent || '';


/***/ }),

/***/ "../node_modules/core-js/library/modules/_validate-collection.js":
/*!***********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_validate-collection.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
module.exports = function (it, TYPE) {
  if (!isObject(it) || it._t !== TYPE) throw TypeError('Incompatible receiver, ' + TYPE + ' required!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_wks-define.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_wks-define.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js");
var wksExt = __webpack_require__(/*! ./_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js");
var defineProperty = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
module.exports = function (name) {
  var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {});
  if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_wks-ext.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_wks-ext.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

exports.f = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js");


/***/ }),

/***/ "../node_modules/core-js/library/modules/_wks.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_wks.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var store = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js")('wks');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
var Symbol = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").Symbol;
var USE_SYMBOL = typeof Symbol == 'function';

var $exports = module.exports = function (name) {
  return store[name] || (store[name] =
    USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
};

$exports.store = store;


/***/ }),

/***/ "../node_modules/core-js/library/modules/core.get-iterator-method.js":
/*!***************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/core.get-iterator-method.js ***!
  \***************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/library/modules/_classof.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
module.exports = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js").getIteratorMethod = function (it) {
  if (it != undefined) return it[ITERATOR]
    || it['@@iterator']
    || Iterators[classof(it)];
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.array.from.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.array.from.js ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var call = __webpack_require__(/*! ./_iter-call */ "../node_modules/core-js/library/modules/_iter-call.js");
var isArrayIter = __webpack_require__(/*! ./_is-array-iter */ "../node_modules/core-js/library/modules/_is-array-iter.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
var createProperty = __webpack_require__(/*! ./_create-property */ "../node_modules/core-js/library/modules/_create-property.js");
var getIterFn = __webpack_require__(/*! ./core.get-iterator-method */ "../node_modules/core-js/library/modules/core.get-iterator-method.js");

$export($export.S + $export.F * !__webpack_require__(/*! ./_iter-detect */ "../node_modules/core-js/library/modules/_iter-detect.js")(function (iter) { Array.from(iter); }), 'Array', {
  // 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined)
  from: function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {
    var O = toObject(arrayLike);
    var C = typeof this == 'function' ? this : Array;
    var aLen = arguments.length;
    var mapfn = aLen > 1 ? arguments[1] : undefined;
    var mapping = mapfn !== undefined;
    var index = 0;
    var iterFn = getIterFn(O);
    var length, result, step, iterator;
    if (mapping) mapfn = ctx(mapfn, aLen > 2 ? arguments[2] : undefined, 2);
    // if object isn't iterable or it's array with default iterator - use simple case
    if (iterFn != undefined && !(C == Array && isArrayIter(iterFn))) {
      for (iterator = iterFn.call(O), result = new C(); !(step = iterator.next()).done; index++) {
        createProperty(result, index, mapping ? call(iterator, mapfn, [step.value, index], true) : step.value);
      }
    } else {
      length = toLength(O.length);
      for (result = new C(length); length > index; index++) {
        createProperty(result, index, mapping ? mapfn(O[index], index) : O[index]);
      }
    }
    result.length = index;
    return result;
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.array.is-array.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.array.is-array.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 22.1.2.2 / 15.4.3.2 Array.isArray(arg)
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");

$export($export.S, 'Array', { isArray: __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/library/modules/_is-array.js") });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.array.iterator.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.array.iterator.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var addToUnscopables = __webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/library/modules/_add-to-unscopables.js");
var step = __webpack_require__(/*! ./_iter-step */ "../node_modules/core-js/library/modules/_iter-step.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");

// 22.1.3.4 Array.prototype.entries()
// 22.1.3.13 Array.prototype.keys()
// 22.1.3.29 Array.prototype.values()
// 22.1.3.30 Array.prototype[@@iterator]()
module.exports = __webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/library/modules/_iter-define.js")(Array, 'Array', function (iterated, kind) {
  this._t = toIObject(iterated); // target
  this._i = 0;                   // next index
  this._k = kind;                // kind
// 22.1.5.2.1 %ArrayIteratorPrototype%.next()
}, function () {
  var O = this._t;
  var kind = this._k;
  var index = this._i++;
  if (!O || index >= O.length) {
    this._t = undefined;
    return step(1);
  }
  if (kind == 'keys') return step(0, index);
  if (kind == 'values') return step(0, O[index]);
  return step(0, [index, O[index]]);
}, 'values');

// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
Iterators.Arguments = Iterators.Array;

addToUnscopables('keys');
addToUnscopables('values');
addToUnscopables('entries');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.function.has-instance.js":
/*!****************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.function.has-instance.js ***!
  \****************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");
var HAS_INSTANCE = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('hasInstance');
var FunctionProto = Function.prototype;
// 19.2.3.6 Function.prototype[@@hasInstance](V)
if (!(HAS_INSTANCE in FunctionProto)) __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f(FunctionProto, HAS_INSTANCE, { value: function (O) {
  if (typeof this != 'function' || !isObject(O)) return false;
  if (!isObject(this.prototype)) return O instanceof this;
  // for environment w/o native `@@hasInstance` logic enough `instanceof`, but add this:
  while (O = getPrototypeOf(O)) if (this.prototype === O) return true;
  return false;
} });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.map.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.map.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var strong = __webpack_require__(/*! ./_collection-strong */ "../node_modules/core-js/library/modules/_collection-strong.js");
var validate = __webpack_require__(/*! ./_validate-collection */ "../node_modules/core-js/library/modules/_validate-collection.js");
var MAP = 'Map';

// 23.1 Map Objects
module.exports = __webpack_require__(/*! ./_collection */ "../node_modules/core-js/library/modules/_collection.js")(MAP, function (get) {
  return function Map() { return get(this, arguments.length > 0 ? arguments[0] : undefined); };
}, {
  // 23.1.3.6 Map.prototype.get(key)
  get: function get(key) {
    var entry = strong.getEntry(validate(this, MAP), key);
    return entry && entry.v;
  },
  // 23.1.3.9 Map.prototype.set(key, value)
  set: function set(key, value) {
    return strong.def(validate(this, MAP), key === 0 ? 0 : key, value);
  }
}, strong, true);


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.create.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.create.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
$export($export.S, 'Object', { create: __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js") });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.define-property.js":
/*!*****************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.define-property.js ***!
  \*****************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)
$export($export.S + $export.F * !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js"), 'Object', { defineProperty: __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js":
/*!*****************************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js ***!
  \*****************************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var $getOwnPropertyDescriptor = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js").f;

__webpack_require__(/*! ./_object-sap */ "../node_modules/core-js/library/modules/_object-sap.js")('getOwnPropertyDescriptor', function () {
  return function getOwnPropertyDescriptor(it, key) {
    return $getOwnPropertyDescriptor(toIObject(it), key);
  };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.get-prototype-of.js":
/*!******************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.get-prototype-of.js ***!
  \******************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.9 Object.getPrototypeOf(O)
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var $getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");

__webpack_require__(/*! ./_object-sap */ "../node_modules/core-js/library/modules/_object-sap.js")('getPrototypeOf', function () {
  return function getPrototypeOf(it) {
    return $getPrototypeOf(toObject(it));
  };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.keys.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.keys.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.14 Object.keys(O)
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var $keys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");

__webpack_require__(/*! ./_object-sap */ "../node_modules/core-js/library/modules/_object-sap.js")('keys', function () {
  return function keys(it) {
    return $keys(toObject(it));
  };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.set-prototype-of.js":
/*!******************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.set-prototype-of.js ***!
  \******************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.3.19 Object.setPrototypeOf(O, proto)
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
$export($export.S, 'Object', { setPrototypeOf: __webpack_require__(/*! ./_set-proto */ "../node_modules/core-js/library/modules/_set-proto.js").set });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.to-string.js":
/*!***********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.to-string.js ***!
  \***********************************************************************/
/***/ (() => {



/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.parse-float.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.parse-float.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var $parseFloat = __webpack_require__(/*! ./_parse-float */ "../node_modules/core-js/library/modules/_parse-float.js");
// 18.2.4 parseFloat(string)
$export($export.G + $export.F * (parseFloat != $parseFloat), { parseFloat: $parseFloat });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.parse-int.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.parse-int.js ***!
  \****************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var $parseInt = __webpack_require__(/*! ./_parse-int */ "../node_modules/core-js/library/modules/_parse-int.js");
// 18.2.5 parseInt(string, radix)
$export($export.G + $export.F * (parseInt != $parseInt), { parseInt: $parseInt });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.promise.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.promise.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/library/modules/_classof.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var anInstance = __webpack_require__(/*! ./_an-instance */ "../node_modules/core-js/library/modules/_an-instance.js");
var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");
var speciesConstructor = __webpack_require__(/*! ./_species-constructor */ "../node_modules/core-js/library/modules/_species-constructor.js");
var task = __webpack_require__(/*! ./_task */ "../node_modules/core-js/library/modules/_task.js").set;
var microtask = __webpack_require__(/*! ./_microtask */ "../node_modules/core-js/library/modules/_microtask.js")();
var newPromiseCapabilityModule = __webpack_require__(/*! ./_new-promise-capability */ "../node_modules/core-js/library/modules/_new-promise-capability.js");
var perform = __webpack_require__(/*! ./_perform */ "../node_modules/core-js/library/modules/_perform.js");
var userAgent = __webpack_require__(/*! ./_user-agent */ "../node_modules/core-js/library/modules/_user-agent.js");
var promiseResolve = __webpack_require__(/*! ./_promise-resolve */ "../node_modules/core-js/library/modules/_promise-resolve.js");
var PROMISE = 'Promise';
var TypeError = global.TypeError;
var process = global.process;
var versions = process && process.versions;
var v8 = versions && versions.v8 || '';
var $Promise = global[PROMISE];
var isNode = classof(process) == 'process';
var empty = function () { /* empty */ };
var Internal, newGenericPromiseCapability, OwnPromiseCapability, Wrapper;
var newPromiseCapability = newGenericPromiseCapability = newPromiseCapabilityModule.f;

var USE_NATIVE = !!function () {
  try {
    // correct subclassing with @@species support
    var promise = $Promise.resolve(1);
    var FakePromise = (promise.constructor = {})[__webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('species')] = function (exec) {
      exec(empty, empty);
    };
    // unhandled rejections tracking support, NodeJS Promise without it fails @@species test
    return (isNode || typeof PromiseRejectionEvent == 'function')
      && promise.then(empty) instanceof FakePromise
      // v8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables
      // https://bugs.chromium.org/p/chromium/issues/detail?id=830565
      // we can't detect it synchronously, so just check versions
      && v8.indexOf('6.6') !== 0
      && userAgent.indexOf('Chrome/66') === -1;
  } catch (e) { /* empty */ }
}();

// helpers
var isThenable = function (it) {
  var then;
  return isObject(it) && typeof (then = it.then) == 'function' ? then : false;
};
var notify = function (promise, isReject) {
  if (promise._n) return;
  promise._n = true;
  var chain = promise._c;
  microtask(function () {
    var value = promise._v;
    var ok = promise._s == 1;
    var i = 0;
    var run = function (reaction) {
      var handler = ok ? reaction.ok : reaction.fail;
      var resolve = reaction.resolve;
      var reject = reaction.reject;
      var domain = reaction.domain;
      var result, then, exited;
      try {
        if (handler) {
          if (!ok) {
            if (promise._h == 2) onHandleUnhandled(promise);
            promise._h = 1;
          }
          if (handler === true) result = value;
          else {
            if (domain) domain.enter();
            result = handler(value); // may throw
            if (domain) {
              domain.exit();
              exited = true;
            }
          }
          if (result === reaction.promise) {
            reject(TypeError('Promise-chain cycle'));
          } else if (then = isThenable(result)) {
            then.call(result, resolve, reject);
          } else resolve(result);
        } else reject(value);
      } catch (e) {
        if (domain && !exited) domain.exit();
        reject(e);
      }
    };
    while (chain.length > i) run(chain[i++]); // variable length - can't use forEach
    promise._c = [];
    promise._n = false;
    if (isReject && !promise._h) onUnhandled(promise);
  });
};
var onUnhandled = function (promise) {
  task.call(global, function () {
    var value = promise._v;
    var unhandled = isUnhandled(promise);
    var result, handler, console;
    if (unhandled) {
      result = perform(function () {
        if (isNode) {
          process.emit('unhandledRejection', value, promise);
        } else if (handler = global.onunhandledrejection) {
          handler({ promise: promise, reason: value });
        } else if ((console = global.console) && console.error) {
          console.error('Unhandled promise rejection', value);
        }
      });
      // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should
      promise._h = isNode || isUnhandled(promise) ? 2 : 1;
    } promise._a = undefined;
    if (unhandled && result.e) throw result.v;
  });
};
var isUnhandled = function (promise) {
  return promise._h !== 1 && (promise._a || promise._c).length === 0;
};
var onHandleUnhandled = function (promise) {
  task.call(global, function () {
    var handler;
    if (isNode) {
      process.emit('rejectionHandled', promise);
    } else if (handler = global.onrejectionhandled) {
      handler({ promise: promise, reason: promise._v });
    }
  });
};
var $reject = function (value) {
  var promise = this;
  if (promise._d) return;
  promise._d = true;
  promise = promise._w || promise; // unwrap
  promise._v = value;
  promise._s = 2;
  if (!promise._a) promise._a = promise._c.slice();
  notify(promise, true);
};
var $resolve = function (value) {
  var promise = this;
  var then;
  if (promise._d) return;
  promise._d = true;
  promise = promise._w || promise; // unwrap
  try {
    if (promise === value) throw TypeError("Promise can't be resolved itself");
    if (then = isThenable(value)) {
      microtask(function () {
        var wrapper = { _w: promise, _d: false }; // wrap
        try {
          then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1));
        } catch (e) {
          $reject.call(wrapper, e);
        }
      });
    } else {
      promise._v = value;
      promise._s = 1;
      notify(promise, false);
    }
  } catch (e) {
    $reject.call({ _w: promise, _d: false }, e); // wrap
  }
};

// constructor polyfill
if (!USE_NATIVE) {
  // 25.4.3.1 Promise(executor)
  $Promise = function Promise(executor) {
    anInstance(this, $Promise, PROMISE, '_h');
    aFunction(executor);
    Internal.call(this);
    try {
      executor(ctx($resolve, this, 1), ctx($reject, this, 1));
    } catch (err) {
      $reject.call(this, err);
    }
  };
  // eslint-disable-next-line no-unused-vars
  Internal = function Promise(executor) {
    this._c = [];             // <- awaiting reactions
    this._a = undefined;      // <- checked in isUnhandled reactions
    this._s = 0;              // <- state
    this._d = false;          // <- done
    this._v = undefined;      // <- value
    this._h = 0;              // <- rejection state, 0 - default, 1 - handled, 2 - unhandled
    this._n = false;          // <- notify
  };
  Internal.prototype = __webpack_require__(/*! ./_redefine-all */ "../node_modules/core-js/library/modules/_redefine-all.js")($Promise.prototype, {
    // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected)
    then: function then(onFulfilled, onRejected) {
      var reaction = newPromiseCapability(speciesConstructor(this, $Promise));
      reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;
      reaction.fail = typeof onRejected == 'function' && onRejected;
      reaction.domain = isNode ? process.domain : undefined;
      this._c.push(reaction);
      if (this._a) this._a.push(reaction);
      if (this._s) notify(this, false);
      return reaction.promise;
    },
    // 25.4.5.1 Promise.prototype.catch(onRejected)
    'catch': function (onRejected) {
      return this.then(undefined, onRejected);
    }
  });
  OwnPromiseCapability = function () {
    var promise = new Internal();
    this.promise = promise;
    this.resolve = ctx($resolve, promise, 1);
    this.reject = ctx($reject, promise, 1);
  };
  newPromiseCapabilityModule.f = newPromiseCapability = function (C) {
    return C === $Promise || C === Wrapper
      ? new OwnPromiseCapability(C)
      : newGenericPromiseCapability(C);
  };
}

$export($export.G + $export.W + $export.F * !USE_NATIVE, { Promise: $Promise });
__webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js")($Promise, PROMISE);
__webpack_require__(/*! ./_set-species */ "../node_modules/core-js/library/modules/_set-species.js")(PROMISE);
Wrapper = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js")[PROMISE];

// statics
$export($export.S + $export.F * !USE_NATIVE, PROMISE, {
  // 25.4.4.5 Promise.reject(r)
  reject: function reject(r) {
    var capability = newPromiseCapability(this);
    var $$reject = capability.reject;
    $$reject(r);
    return capability.promise;
  }
});
$export($export.S + $export.F * (LIBRARY || !USE_NATIVE), PROMISE, {
  // 25.4.4.6 Promise.resolve(x)
  resolve: function resolve(x) {
    return promiseResolve(LIBRARY && this === Wrapper ? $Promise : this, x);
  }
});
$export($export.S + $export.F * !(USE_NATIVE && __webpack_require__(/*! ./_iter-detect */ "../node_modules/core-js/library/modules/_iter-detect.js")(function (iter) {
  $Promise.all(iter)['catch'](empty);
})), PROMISE, {
  // 25.4.4.1 Promise.all(iterable)
  all: function all(iterable) {
    var C = this;
    var capability = newPromiseCapability(C);
    var resolve = capability.resolve;
    var reject = capability.reject;
    var result = perform(function () {
      var values = [];
      var index = 0;
      var remaining = 1;
      forOf(iterable, false, function (promise) {
        var $index = index++;
        var alreadyCalled = false;
        values.push(undefined);
        remaining++;
        C.resolve(promise).then(function (value) {
          if (alreadyCalled) return;
          alreadyCalled = true;
          values[$index] = value;
          --remaining || resolve(values);
        }, reject);
      });
      --remaining || resolve(values);
    });
    if (result.e) reject(result.v);
    return capability.promise;
  },
  // 25.4.4.4 Promise.race(iterable)
  race: function race(iterable) {
    var C = this;
    var capability = newPromiseCapability(C);
    var reject = capability.reject;
    var result = perform(function () {
      forOf(iterable, false, function (promise) {
        C.resolve(promise).then(capability.resolve, reject);
      });
    });
    if (result.e) reject(result.v);
    return capability.promise;
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.reflect.construct.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.reflect.construct.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 26.1.2 Reflect.construct(target, argumentsList [, newTarget])
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
var bind = __webpack_require__(/*! ./_bind */ "../node_modules/core-js/library/modules/_bind.js");
var rConstruct = (__webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").Reflect || {}).construct;

// MS Edge supports only 2 arguments and argumentsList argument is optional
// FF Nightly sets third argument as `new.target`, but does not create `this` from it
var NEW_TARGET_BUG = fails(function () {
  function F() { /* empty */ }
  return !(rConstruct(function () { /* empty */ }, [], F) instanceof F);
});
var ARGS_BUG = !fails(function () {
  rConstruct(function () { /* empty */ });
});

$export($export.S + $export.F * (NEW_TARGET_BUG || ARGS_BUG), 'Reflect', {
  construct: function construct(Target, args /* , newTarget */) {
    aFunction(Target);
    anObject(args);
    var newTarget = arguments.length < 3 ? Target : aFunction(arguments[2]);
    if (ARGS_BUG && !NEW_TARGET_BUG) return rConstruct(Target, args, newTarget);
    if (Target == newTarget) {
      // w/o altered newTarget, optimization for 0-4 arguments
      switch (args.length) {
        case 0: return new Target();
        case 1: return new Target(args[0]);
        case 2: return new Target(args[0], args[1]);
        case 3: return new Target(args[0], args[1], args[2]);
        case 4: return new Target(args[0], args[1], args[2], args[3]);
      }
      // w/o altered newTarget, lot of arguments case
      var $args = [null];
      $args.push.apply($args, args);
      return new (bind.apply(Target, $args))();
    }
    // with altered newTarget, not support built-in constructors
    var proto = newTarget.prototype;
    var instance = create(isObject(proto) ? proto : Object.prototype);
    var result = Function.apply.call(Target, instance, args);
    return isObject(result) ? result : instance;
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.reflect.get.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.reflect.get.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 26.1.6 Reflect.get(target, propertyKey [, receiver])
var gOPD = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js");
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");

function get(target, propertyKey /* , receiver */) {
  var receiver = arguments.length < 3 ? target : arguments[2];
  var desc, proto;
  if (anObject(target) === receiver) return target[propertyKey];
  if (desc = gOPD.f(target, propertyKey)) return has(desc, 'value')
    ? desc.value
    : desc.get !== undefined
      ? desc.get.call(receiver)
      : undefined;
  if (isObject(proto = getPrototypeOf(target))) return get(proto, propertyKey, receiver);
}

$export($export.S, 'Reflect', { get: get });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.string.iterator.js":
/*!**********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.string.iterator.js ***!
  \**********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $at = __webpack_require__(/*! ./_string-at */ "../node_modules/core-js/library/modules/_string-at.js")(true);

// 21.1.3.27 String.prototype[@@iterator]()
__webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/library/modules/_iter-define.js")(String, 'String', function (iterated) {
  this._t = String(iterated); // target
  this._i = 0;                // next index
// 21.1.5.2.1 %StringIteratorPrototype%.next()
}, function () {
  var O = this._t;
  var index = this._i;
  var point;
  if (index >= O.length) return { value: undefined, done: true };
  point = $at(O, index);
  this._i += point.length;
  return { value: point, done: false };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.symbol.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.symbol.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// ECMAScript 6 symbols shim
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/library/modules/_redefine.js");
var META = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js").KEY;
var $fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
var shared = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
var wks = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js");
var wksExt = __webpack_require__(/*! ./_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js");
var wksDefine = __webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js");
var enumKeys = __webpack_require__(/*! ./_enum-keys */ "../node_modules/core-js/library/modules/_enum-keys.js");
var isArray = __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/library/modules/_is-array.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
var _create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
var gOPNExt = __webpack_require__(/*! ./_object-gopn-ext */ "../node_modules/core-js/library/modules/_object-gopn-ext.js");
var $GOPD = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js");
var $GOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
var $DP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var $keys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var gOPD = $GOPD.f;
var dP = $DP.f;
var gOPN = gOPNExt.f;
var $Symbol = global.Symbol;
var $JSON = global.JSON;
var _stringify = $JSON && $JSON.stringify;
var PROTOTYPE = 'prototype';
var HIDDEN = wks('_hidden');
var TO_PRIMITIVE = wks('toPrimitive');
var isEnum = {}.propertyIsEnumerable;
var SymbolRegistry = shared('symbol-registry');
var AllSymbols = shared('symbols');
var OPSymbols = shared('op-symbols');
var ObjectProto = Object[PROTOTYPE];
var USE_NATIVE = typeof $Symbol == 'function' && !!$GOPS.f;
var QObject = global.QObject;
// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173
var setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;

// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687
var setSymbolDesc = DESCRIPTORS && $fails(function () {
  return _create(dP({}, 'a', {
    get: function () { return dP(this, 'a', { value: 7 }).a; }
  })).a != 7;
}) ? function (it, key, D) {
  var protoDesc = gOPD(ObjectProto, key);
  if (protoDesc) delete ObjectProto[key];
  dP(it, key, D);
  if (protoDesc && it !== ObjectProto) dP(ObjectProto, key, protoDesc);
} : dP;

var wrap = function (tag) {
  var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]);
  sym._k = tag;
  return sym;
};

var isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function (it) {
  return typeof it == 'symbol';
} : function (it) {
  return it instanceof $Symbol;
};

var $defineProperty = function defineProperty(it, key, D) {
  if (it === ObjectProto) $defineProperty(OPSymbols, key, D);
  anObject(it);
  key = toPrimitive(key, true);
  anObject(D);
  if (has(AllSymbols, key)) {
    if (!D.enumerable) {
      if (!has(it, HIDDEN)) dP(it, HIDDEN, createDesc(1, {}));
      it[HIDDEN][key] = true;
    } else {
      if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false;
      D = _create(D, { enumerable: createDesc(0, false) });
    } return setSymbolDesc(it, key, D);
  } return dP(it, key, D);
};
var $defineProperties = function defineProperties(it, P) {
  anObject(it);
  var keys = enumKeys(P = toIObject(P));
  var i = 0;
  var l = keys.length;
  var key;
  while (l > i) $defineProperty(it, key = keys[i++], P[key]);
  return it;
};
var $create = function create(it, P) {
  return P === undefined ? _create(it) : $defineProperties(_create(it), P);
};
var $propertyIsEnumerable = function propertyIsEnumerable(key) {
  var E = isEnum.call(this, key = toPrimitive(key, true));
  if (this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return false;
  return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true;
};
var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key) {
  it = toIObject(it);
  key = toPrimitive(key, true);
  if (it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return;
  var D = gOPD(it, key);
  if (D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) D.enumerable = true;
  return D;
};
var $getOwnPropertyNames = function getOwnPropertyNames(it) {
  var names = gOPN(toIObject(it));
  var result = [];
  var i = 0;
  var key;
  while (names.length > i) {
    if (!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META) result.push(key);
  } return result;
};
var $getOwnPropertySymbols = function getOwnPropertySymbols(it) {
  var IS_OP = it === ObjectProto;
  var names = gOPN(IS_OP ? OPSymbols : toIObject(it));
  var result = [];
  var i = 0;
  var key;
  while (names.length > i) {
    if (has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true)) result.push(AllSymbols[key]);
  } return result;
};

// 19.4.1.1 Symbol([description])
if (!USE_NATIVE) {
  $Symbol = function Symbol() {
    if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor!');
    var tag = uid(arguments.length > 0 ? arguments[0] : undefined);
    var $set = function (value) {
      if (this === ObjectProto) $set.call(OPSymbols, value);
      if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;
      setSymbolDesc(this, tag, createDesc(1, value));
    };
    if (DESCRIPTORS && setter) setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set });
    return wrap(tag);
  };
  redefine($Symbol[PROTOTYPE], 'toString', function toString() {
    return this._k;
  });

  $GOPD.f = $getOwnPropertyDescriptor;
  $DP.f = $defineProperty;
  __webpack_require__(/*! ./_object-gopn */ "../node_modules/core-js/library/modules/_object-gopn.js").f = gOPNExt.f = $getOwnPropertyNames;
  __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js").f = $propertyIsEnumerable;
  $GOPS.f = $getOwnPropertySymbols;

  if (DESCRIPTORS && !__webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js")) {
    redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);
  }

  wksExt.f = function (name) {
    return wrap(wks(name));
  };
}

$export($export.G + $export.W + $export.F * !USE_NATIVE, { Symbol: $Symbol });

for (var es6Symbols = (
  // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14
  'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'
).split(','), j = 0; es6Symbols.length > j;)wks(es6Symbols[j++]);

for (var wellKnownSymbols = $keys(wks.store), k = 0; wellKnownSymbols.length > k;) wksDefine(wellKnownSymbols[k++]);

$export($export.S + $export.F * !USE_NATIVE, 'Symbol', {
  // 19.4.2.1 Symbol.for(key)
  'for': function (key) {
    return has(SymbolRegistry, key += '')
      ? SymbolRegistry[key]
      : SymbolRegistry[key] = $Symbol(key);
  },
  // 19.4.2.5 Symbol.keyFor(sym)
  keyFor: function keyFor(sym) {
    if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol!');
    for (var key in SymbolRegistry) if (SymbolRegistry[key] === sym) return key;
  },
  useSetter: function () { setter = true; },
  useSimple: function () { setter = false; }
});

$export($export.S + $export.F * !USE_NATIVE, 'Object', {
  // 19.1.2.2 Object.create(O [, Properties])
  create: $create,
  // 19.1.2.4 Object.defineProperty(O, P, Attributes)
  defineProperty: $defineProperty,
  // 19.1.2.3 Object.defineProperties(O, Properties)
  defineProperties: $defineProperties,
  // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
  getOwnPropertyDescriptor: $getOwnPropertyDescriptor,
  // 19.1.2.7 Object.getOwnPropertyNames(O)
  getOwnPropertyNames: $getOwnPropertyNames,
  // 19.1.2.8 Object.getOwnPropertySymbols(O)
  getOwnPropertySymbols: $getOwnPropertySymbols
});

// Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives
// https://bugs.chromium.org/p/v8/issues/detail?id=3443
var FAILS_ON_PRIMITIVES = $fails(function () { $GOPS.f(1); });

$export($export.S + $export.F * FAILS_ON_PRIMITIVES, 'Object', {
  getOwnPropertySymbols: function getOwnPropertySymbols(it) {
    return $GOPS.f(toObject(it));
  }
});

// 24.3.2 JSON.stringify(value [, replacer [, space]])
$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function () {
  var S = $Symbol();
  // MS Edge converts symbol values to JSON as {}
  // WebKit converts symbol values to JSON as null
  // V8 throws on boxed symbols
  return _stringify([S]) != '[null]' || _stringify({ a: S }) != '{}' || _stringify(Object(S)) != '{}';
})), 'JSON', {
  stringify: function stringify(it) {
    var args = [it];
    var i = 1;
    var replacer, $replacer;
    while (arguments.length > i) args.push(arguments[i++]);
    $replacer = replacer = args[1];
    if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined
    if (!isArray(replacer)) replacer = function (key, value) {
      if (typeof $replacer == 'function') value = $replacer.call(this, key, value);
      if (!isSymbol(value)) return value;
    };
    args[1] = replacer;
    return _stringify.apply($JSON, args);
  }
});

// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint)
$Symbol[PROTOTYPE][TO_PRIMITIVE] || __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js")($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);
// 19.4.3.5 Symbol.prototype[@@toStringTag]
setToStringTag($Symbol, 'Symbol');
// 20.2.1.9 Math[@@toStringTag]
setToStringTag(Math, 'Math', true);
// 24.3.3 JSON[@@toStringTag]
setToStringTag(global.JSON, 'JSON', true);


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.weak-map.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.weak-map.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var each = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/library/modules/_array-methods.js")(0);
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/library/modules/_redefine.js");
var meta = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js");
var assign = __webpack_require__(/*! ./_object-assign */ "../node_modules/core-js/library/modules/_object-assign.js");
var weak = __webpack_require__(/*! ./_collection-weak */ "../node_modules/core-js/library/modules/_collection-weak.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var validate = __webpack_require__(/*! ./_validate-collection */ "../node_modules/core-js/library/modules/_validate-collection.js");
var NATIVE_WEAK_MAP = __webpack_require__(/*! ./_validate-collection */ "../node_modules/core-js/library/modules/_validate-collection.js");
var IS_IE11 = !global.ActiveXObject && 'ActiveXObject' in global;
var WEAK_MAP = 'WeakMap';
var getWeak = meta.getWeak;
var isExtensible = Object.isExtensible;
var uncaughtFrozenStore = weak.ufstore;
var InternalMap;

var wrapper = function (get) {
  return function WeakMap() {
    return get(this, arguments.length > 0 ? arguments[0] : undefined);
  };
};

var methods = {
  // 23.3.3.3 WeakMap.prototype.get(key)
  get: function get(key) {
    if (isObject(key)) {
      var data = getWeak(key);
      if (data === true) return uncaughtFrozenStore(validate(this, WEAK_MAP)).get(key);
      return data ? data[this._i] : undefined;
    }
  },
  // 23.3.3.5 WeakMap.prototype.set(key, value)
  set: function set(key, value) {
    return weak.def(validate(this, WEAK_MAP), key, value);
  }
};

// 23.3 WeakMap Objects
var $WeakMap = module.exports = __webpack_require__(/*! ./_collection */ "../node_modules/core-js/library/modules/_collection.js")(WEAK_MAP, wrapper, methods, weak, true, true);

// IE11 WeakMap frozen keys fix
if (NATIVE_WEAK_MAP && IS_IE11) {
  InternalMap = weak.getConstructor(wrapper, WEAK_MAP);
  assign(InternalMap.prototype, methods);
  meta.NEED = true;
  each(['delete', 'has', 'get', 'set'], function (key) {
    var proto = $WeakMap.prototype;
    var method = proto[key];
    redefine(proto, key, function (a, b) {
      // store frozen objects on internal weakmap shim
      if (isObject(a) && !isExtensible(a)) {
        if (!this._f) this._f = new InternalMap();
        var result = this._f[key](a, b);
        return key == 'set' ? this : result;
      // store all the rest on native weakmap
      } return method.call(this, a, b);
    });
  });
}


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.map.from.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.map.from.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://tc39.github.io/proposal-setmap-offrom/#sec-map.from
__webpack_require__(/*! ./_set-collection-from */ "../node_modules/core-js/library/modules/_set-collection-from.js")('Map');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.map.of.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.map.of.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://tc39.github.io/proposal-setmap-offrom/#sec-map.of
__webpack_require__(/*! ./_set-collection-of */ "../node_modules/core-js/library/modules/_set-collection-of.js")('Map');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.map.to-json.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.map.to-json.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://github.com/DavidBruant/Map-Set.prototype.toJSON
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");

$export($export.P + $export.R, 'Map', { toJSON: __webpack_require__(/*! ./_collection-to-json */ "../node_modules/core-js/library/modules/_collection-to-json.js")('Map') });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.object.entries.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.object.entries.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://github.com/tc39/proposal-object-values-entries
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var $entries = __webpack_require__(/*! ./_object-to-array */ "../node_modules/core-js/library/modules/_object-to-array.js")(true);

$export($export.S, 'Object', {
  entries: function entries(it) {
    return $entries(it);
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.object.values.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.object.values.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://github.com/tc39/proposal-object-values-entries
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var $values = __webpack_require__(/*! ./_object-to-array */ "../node_modules/core-js/library/modules/_object-to-array.js")(false);

$export($export.S, 'Object', {
  values: function values(it) {
    return $values(it);
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.promise.finally.js":
/*!**********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.promise.finally.js ***!
  \**********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
// https://github.com/tc39/proposal-promise-finally

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var speciesConstructor = __webpack_require__(/*! ./_species-constructor */ "../node_modules/core-js/library/modules/_species-constructor.js");
var promiseResolve = __webpack_require__(/*! ./_promise-resolve */ "../node_modules/core-js/library/modules/_promise-resolve.js");

$export($export.P + $export.R, 'Promise', { 'finally': function (onFinally) {
  var C = speciesConstructor(this, core.Promise || global.Promise);
  var isFunction = typeof onFinally == 'function';
  return this.then(
    isFunction ? function (x) {
      return promiseResolve(C, onFinally()).then(function () { return x; });
    } : onFinally,
    isFunction ? function (e) {
      return promiseResolve(C, onFinally()).then(function () { throw e; });
    } : onFinally
  );
} });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.promise.try.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.promise.try.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// https://github.com/tc39/proposal-promise-try
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var newPromiseCapability = __webpack_require__(/*! ./_new-promise-capability */ "../node_modules/core-js/library/modules/_new-promise-capability.js");
var perform = __webpack_require__(/*! ./_perform */ "../node_modules/core-js/library/modules/_perform.js");

$export($export.S, 'Promise', { 'try': function (callbackfn) {
  var promiseCapability = newPromiseCapability.f(this);
  var result = perform(callbackfn);
  (result.e ? promiseCapability.reject : promiseCapability.resolve)(result.v);
  return promiseCapability.promise;
} });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.symbol.async-iterator.js":
/*!****************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.symbol.async-iterator.js ***!
  \****************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js")('asyncIterator');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.symbol.observable.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.symbol.observable.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js")('observable');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.weak-map.from.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.weak-map.from.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://tc39.github.io/proposal-setmap-offrom/#sec-weakmap.from
__webpack_require__(/*! ./_set-collection-from */ "../node_modules/core-js/library/modules/_set-collection-from.js")('WeakMap');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.weak-map.of.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.weak-map.of.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://tc39.github.io/proposal-setmap-offrom/#sec-weakmap.of
__webpack_require__(/*! ./_set-collection-of */ "../node_modules/core-js/library/modules/_set-collection-of.js")('WeakMap');


/***/ }),

/***/ "../node_modules/core-js/library/modules/web.dom.iterable.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/web.dom.iterable.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ./es6.array.iterator */ "../node_modules/core-js/library/modules/es6.array.iterator.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var TO_STRING_TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('toStringTag');

var DOMIterables = ('CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,' +
  'DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,' +
  'MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,' +
  'SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,' +
  'TextTrackList,TouchList').split(',');

for (var i = 0; i < DOMIterables.length; i++) {
  var NAME = DOMIterables[i];
  var Collection = global[NAME];
  var proto = Collection && Collection.prototype;
  if (proto && !proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);
  Iterators[NAME] = Iterators.Array;
}


/***/ }),

/***/ "../node_modules/core-js/modules/_a-function.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_a-function.js ***!
  \******************************************************/
/***/ ((module) => {

module.exports = function (it) {
  if (typeof it != 'function') throw TypeError(it + ' is not a function!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_add-to-unscopables.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/modules/_add-to-unscopables.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 22.1.3.31 Array.prototype[@@unscopables]
var UNSCOPABLES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('unscopables');
var ArrayProto = Array.prototype;
if (ArrayProto[UNSCOPABLES] == undefined) __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js")(ArrayProto, UNSCOPABLES, {});
module.exports = function (key) {
  ArrayProto[UNSCOPABLES][key] = true;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_advance-string-index.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_advance-string-index.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var at = __webpack_require__(/*! ./_string-at */ "../node_modules/core-js/modules/_string-at.js")(true);

 // `AdvanceStringIndex` abstract operation
// https://tc39.github.io/ecma262/#sec-advancestringindex
module.exports = function (S, index, unicode) {
  return index + (unicode ? at(S, index).length : 1);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_an-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_an-object.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
module.exports = function (it) {
  if (!isObject(it)) throw TypeError(it + ' is not an object!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-includes.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/_array-includes.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// false -> Array#indexOf
// true  -> Array#includes
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/modules/_to-iobject.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var toAbsoluteIndex = __webpack_require__(/*! ./_to-absolute-index */ "../node_modules/core-js/modules/_to-absolute-index.js");
module.exports = function (IS_INCLUDES) {
  return function ($this, el, fromIndex) {
    var O = toIObject($this);
    var length = toLength(O.length);
    var index = toAbsoluteIndex(fromIndex, length);
    var value;
    // Array#includes uses SameValueZero equality algorithm
    // eslint-disable-next-line no-self-compare
    if (IS_INCLUDES && el != el) while (length > index) {
      value = O[index++];
      // eslint-disable-next-line no-self-compare
      if (value != value) return true;
    // Array#indexOf ignores holes, Array#includes - not
    } else for (;length > index; index++) if (IS_INCLUDES || index in O) {
      if (O[index] === el) return IS_INCLUDES || index || 0;
    } return !IS_INCLUDES && -1;
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-methods.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_array-methods.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 0 -> Array#forEach
// 1 -> Array#map
// 2 -> Array#filter
// 3 -> Array#some
// 4 -> Array#every
// 5 -> Array#find
// 6 -> Array#findIndex
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/modules/_ctx.js");
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/modules/_iobject.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/modules/_to-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var asc = __webpack_require__(/*! ./_array-species-create */ "../node_modules/core-js/modules/_array-species-create.js");
module.exports = function (TYPE, $create) {
  var IS_MAP = TYPE == 1;
  var IS_FILTER = TYPE == 2;
  var IS_SOME = TYPE == 3;
  var IS_EVERY = TYPE == 4;
  var IS_FIND_INDEX = TYPE == 6;
  var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
  var create = $create || asc;
  return function ($this, callbackfn, that) {
    var O = toObject($this);
    var self = IObject(O);
    var f = ctx(callbackfn, that, 3);
    var length = toLength(self.length);
    var index = 0;
    var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;
    var val, res;
    for (;length > index; index++) if (NO_HOLES || index in self) {
      val = self[index];
      res = f(val, index, O);
      if (TYPE) {
        if (IS_MAP) result[index] = res;   // map
        else if (res) switch (TYPE) {
          case 3: return true;             // some
          case 5: return val;              // find
          case 6: return index;            // findIndex
          case 2: result.push(val);        // filter
        } else if (IS_EVERY) return false; // every
      }
    }
    return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-species-constructor.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/modules/_array-species-constructor.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var isArray = __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/modules/_is-array.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('species');

module.exports = function (original) {
  var C;
  if (isArray(original)) {
    C = original.constructor;
    // cross-realm fallback
    if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
    if (isObject(C)) {
      C = C[SPECIES];
      if (C === null) C = undefined;
    }
  } return C === undefined ? Array : C;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-species-create.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_array-species-create.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 9.4.2.3 ArraySpeciesCreate(originalArray, length)
var speciesConstructor = __webpack_require__(/*! ./_array-species-constructor */ "../node_modules/core-js/modules/_array-species-constructor.js");

module.exports = function (original, length) {
  return new (speciesConstructor(original))(length);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_classof.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_classof.js ***!
  \***************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// getting tag from 19.1.3.6 Object.prototype.toString()
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('toStringTag');
// ES3 wrong here
var ARG = cof(function () { return arguments; }()) == 'Arguments';

// fallback for IE11 Script Access Denied error
var tryGet = function (it, key) {
  try {
    return it[key];
  } catch (e) { /* empty */ }
};

module.exports = function (it) {
  var O, T, B;
  return it === undefined ? 'Undefined' : it === null ? 'Null'
    // @@toStringTag case
    : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T
    // builtinTag case
    : ARG ? cof(O)
    // ES3 arguments fallback
    : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_cof.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_cof.js ***!
  \***********************************************/
/***/ ((module) => {

var toString = {}.toString;

module.exports = function (it) {
  return toString.call(it).slice(8, -1);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_core.js":
/*!************************************************!*\
  !*** ../node_modules/core-js/modules/_core.js ***!
  \************************************************/
/***/ ((module) => {

var core = module.exports = { version: '2.6.12' };
if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/modules/_ctx.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_ctx.js ***!
  \***********************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// optional / simple context binding
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/modules/_a-function.js");
module.exports = function (fn, that, length) {
  aFunction(fn);
  if (that === undefined) return fn;
  switch (length) {
    case 1: return function (a) {
      return fn.call(that, a);
    };
    case 2: return function (a, b) {
      return fn.call(that, a, b);
    };
    case 3: return function (a, b, c) {
      return fn.call(that, a, b, c);
    };
  }
  return function (/* ...args */) {
    return fn.apply(that, arguments);
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_defined.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_defined.js ***!
  \***************************************************/
/***/ ((module) => {

// 7.2.1 RequireObjectCoercible(argument)
module.exports = function (it) {
  if (it == undefined) throw TypeError("Can't call method on  " + it);
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_descriptors.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_descriptors.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Thank's IE8 for his funny defineProperty
module.exports = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () {
  return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/modules/_dom-create.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_dom-create.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js").document;
// typeof document.createElement is 'object' in old IE
var is = isObject(document) && isObject(document.createElement);
module.exports = function (it) {
  return is ? document.createElement(it) : {};
};


/***/ }),

/***/ "../node_modules/core-js/modules/_enum-bug-keys.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_enum-bug-keys.js ***!
  \*********************************************************/
/***/ ((module) => {

// IE 8- don't enum bug keys
module.exports = (
  'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
).split(',');


/***/ }),

/***/ "../node_modules/core-js/modules/_export.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_export.js ***!
  \**************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/modules/_ctx.js");
var PROTOTYPE = 'prototype';

var $export = function (type, name, source) {
  var IS_FORCED = type & $export.F;
  var IS_GLOBAL = type & $export.G;
  var IS_STATIC = type & $export.S;
  var IS_PROTO = type & $export.P;
  var IS_BIND = type & $export.B;
  var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE];
  var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
  var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {});
  var key, own, out, exp;
  if (IS_GLOBAL) source = name;
  for (key in source) {
    // contains in native
    own = !IS_FORCED && target && target[key] !== undefined;
    // export native or passed
    out = (own ? target : source)[key];
    // bind timers to global for call from export context
    exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
    // extend global
    if (target) redefine(target, key, out, type & $export.U);
    // export
    if (exports[key] != out) hide(exports, key, exp);
    if (IS_PROTO && expProto[key] != out) expProto[key] = out;
  }
};
global.core = core;
// type bitmap
$export.F = 1;   // forced
$export.G = 2;   // global
$export.S = 4;   // static
$export.P = 8;   // proto
$export.B = 16;  // bind
$export.W = 32;  // wrap
$export.U = 64;  // safe
$export.R = 128; // real proto method for `library`
module.exports = $export;


/***/ }),

/***/ "../node_modules/core-js/modules/_fails-is-regexp.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/_fails-is-regexp.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var MATCH = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('match');
module.exports = function (KEY) {
  var re = /./;
  try {
    '/./'[KEY](re);
  } catch (e) {
    try {
      re[MATCH] = false;
      return !'/./'[KEY](re);
    } catch (f) { /* empty */ }
  } return true;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_fails.js":
/*!*************************************************!*\
  !*** ../node_modules/core-js/modules/_fails.js ***!
  \*************************************************/
/***/ ((module) => {

module.exports = function (exec) {
  try {
    return !!exec();
  } catch (e) {
    return true;
  }
};


/***/ }),

/***/ "../node_modules/core-js/modules/_fix-re-wks.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_fix-re-wks.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

__webpack_require__(/*! ./es6.regexp.exec */ "../node_modules/core-js/modules/es6.regexp.exec.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
var wks = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js");
var regexpExec = __webpack_require__(/*! ./_regexp-exec */ "../node_modules/core-js/modules/_regexp-exec.js");

var SPECIES = wks('species');

var REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {
  // #replace needs built-in support for named groups.
  // #match works fine because it just return the exec results, even if it has
  // a "grops" property.
  var re = /./;
  re.exec = function () {
    var result = [];
    result.groups = { a: '7' };
    return result;
  };
  return ''.replace(re, '$<a>') !== '7';
});

var SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = (function () {
  // Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec
  var re = /(?:)/;
  var originalExec = re.exec;
  re.exec = function () { return originalExec.apply(this, arguments); };
  var result = 'ab'.split(re);
  return result.length === 2 && result[0] === 'a' && result[1] === 'b';
})();

module.exports = function (KEY, length, exec) {
  var SYMBOL = wks(KEY);

  var DELEGATES_TO_SYMBOL = !fails(function () {
    // String methods call symbol-named RegEp methods
    var O = {};
    O[SYMBOL] = function () { return 7; };
    return ''[KEY](O) != 7;
  });

  var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL ? !fails(function () {
    // Symbol-named RegExp methods call .exec
    var execCalled = false;
    var re = /a/;
    re.exec = function () { execCalled = true; return null; };
    if (KEY === 'split') {
      // RegExp[@@split] doesn't call the regex's exec method, but first creates
      // a new one. We need to return the patched regex when creating the new one.
      re.constructor = {};
      re.constructor[SPECIES] = function () { return re; };
    }
    re[SYMBOL]('');
    return !execCalled;
  }) : undefined;

  if (
    !DELEGATES_TO_SYMBOL ||
    !DELEGATES_TO_EXEC ||
    (KEY === 'replace' && !REPLACE_SUPPORTS_NAMED_GROUPS) ||
    (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)
  ) {
    var nativeRegExpMethod = /./[SYMBOL];
    var fns = exec(
      defined,
      SYMBOL,
      ''[KEY],
      function maybeCallNative(nativeMethod, regexp, str, arg2, forceStringMethod) {
        if (regexp.exec === regexpExec) {
          if (DELEGATES_TO_SYMBOL && !forceStringMethod) {
            // The native String method already delegates to @@method (this
            // polyfilled function), leasing to infinite recursion.
            // We avoid it by directly calling the native @@method method.
            return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };
          }
          return { done: true, value: nativeMethod.call(str, regexp, arg2) };
        }
        return { done: false };
      }
    );
    var strfn = fns[0];
    var rxfn = fns[1];

    redefine(String.prototype, KEY, strfn);
    hide(RegExp.prototype, SYMBOL, length == 2
      // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)
      // 21.2.5.11 RegExp.prototype[@@split](string, limit)
      ? function (string, arg) { return rxfn.call(string, this, arg); }
      // 21.2.5.6 RegExp.prototype[@@match](string)
      // 21.2.5.9 RegExp.prototype[@@search](string)
      : function (string) { return rxfn.call(string, this); }
    );
  }
};


/***/ }),

/***/ "../node_modules/core-js/modules/_flags.js":
/*!*************************************************!*\
  !*** ../node_modules/core-js/modules/_flags.js ***!
  \*************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 21.2.5.3 get RegExp.prototype.flags
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
module.exports = function () {
  var that = anObject(this);
  var result = '';
  if (that.global) result += 'g';
  if (that.ignoreCase) result += 'i';
  if (that.multiline) result += 'm';
  if (that.unicode) result += 'u';
  if (that.sticky) result += 'y';
  return result;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_function-to-string.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/modules/_function-to-string.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/modules/_shared.js")('native-function-to-string', Function.toString);


/***/ }),

/***/ "../node_modules/core-js/modules/_global.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_global.js ***!
  \**************************************************/
/***/ ((module) => {

// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
var global = module.exports = typeof window != 'undefined' && window.Math == Math
  ? window : typeof self != 'undefined' && self.Math == Math ? self
  // eslint-disable-next-line no-new-func
  : Function('return this')();
if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/modules/_has.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_has.js ***!
  \***********************************************/
/***/ ((module) => {

var hasOwnProperty = {}.hasOwnProperty;
module.exports = function (it, key) {
  return hasOwnProperty.call(it, key);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_hide.js":
/*!************************************************!*\
  !*** ../node_modules/core-js/modules/_hide.js ***!
  \************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/modules/_property-desc.js");
module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? function (object, key, value) {
  return dP.f(object, key, createDesc(1, value));
} : function (object, key, value) {
  object[key] = value;
  return object;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_html.js":
/*!************************************************!*\
  !*** ../node_modules/core-js/modules/_html.js ***!
  \************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js").document;
module.exports = document && document.documentElement;


/***/ }),

/***/ "../node_modules/core-js/modules/_ie8-dom-define.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/_ie8-dom-define.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") && !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () {
  return Object.defineProperty(__webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/modules/_dom-create.js")('div'), 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/modules/_iobject.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_iobject.js ***!
  \***************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// fallback for non-array-like ES3 and non-enumerable old V8 strings
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
// eslint-disable-next-line no-prototype-builtins
module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
  return cof(it) == 'String' ? it.split('') : Object(it);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_is-array.js":
/*!****************************************************!*\
  !*** ../node_modules/core-js/modules/_is-array.js ***!
  \****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.2.2 IsArray(argument)
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
module.exports = Array.isArray || function isArray(arg) {
  return cof(arg) == 'Array';
};


/***/ }),

/***/ "../node_modules/core-js/modules/_is-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_is-object.js ***!
  \*****************************************************/
/***/ ((module) => {

module.exports = function (it) {
  return typeof it === 'object' ? it !== null : typeof it === 'function';
};


/***/ }),

/***/ "../node_modules/core-js/modules/_is-regexp.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_is-regexp.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.2.8 IsRegExp(argument)
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
var MATCH = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('match');
module.exports = function (it) {
  var isRegExp;
  return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp');
};


/***/ }),

/***/ "../node_modules/core-js/modules/_iter-create.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_iter-create.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/modules/_object-create.js");
var descriptor = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/modules/_property-desc.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/modules/_set-to-string-tag.js");
var IteratorPrototype = {};

// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
__webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js")(IteratorPrototype, __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('iterator'), function () { return this; });

module.exports = function (Constructor, NAME, next) {
  Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });
  setToStringTag(Constructor, NAME + ' Iterator');
};


/***/ }),

/***/ "../node_modules/core-js/modules/_iter-define.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_iter-define.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/modules/_library.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/modules/_iterators.js");
var $iterCreate = __webpack_require__(/*! ./_iter-create */ "../node_modules/core-js/modules/_iter-create.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/modules/_set-to-string-tag.js");
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/modules/_object-gpo.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('iterator');
var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`
var FF_ITERATOR = '@@iterator';
var KEYS = 'keys';
var VALUES = 'values';

var returnThis = function () { return this; };

module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {
  $iterCreate(Constructor, NAME, next);
  var getMethod = function (kind) {
    if (!BUGGY && kind in proto) return proto[kind];
    switch (kind) {
      case KEYS: return function keys() { return new Constructor(this, kind); };
      case VALUES: return function values() { return new Constructor(this, kind); };
    } return function entries() { return new Constructor(this, kind); };
  };
  var TAG = NAME + ' Iterator';
  var DEF_VALUES = DEFAULT == VALUES;
  var VALUES_BUG = false;
  var proto = Base.prototype;
  var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];
  var $default = $native || getMethod(DEFAULT);
  var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;
  var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;
  var methods, key, IteratorPrototype;
  // Fix native
  if ($anyNative) {
    IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));
    if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {
      // Set @@toStringTag to native iterators
      setToStringTag(IteratorPrototype, TAG, true);
      // fix for some old engines
      if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);
    }
  }
  // fix Array#{values, @@iterator}.name in V8 / FF
  if (DEF_VALUES && $native && $native.name !== VALUES) {
    VALUES_BUG = true;
    $default = function values() { return $native.call(this); };
  }
  // Define iterator
  if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {
    hide(proto, ITERATOR, $default);
  }
  // Plug for library
  Iterators[NAME] = $default;
  Iterators[TAG] = returnThis;
  if (DEFAULT) {
    methods = {
      values: DEF_VALUES ? $default : getMethod(VALUES),
      keys: IS_SET ? $default : getMethod(KEYS),
      entries: $entries
    };
    if (FORCED) for (key in methods) {
      if (!(key in proto)) redefine(proto, key, methods[key]);
    } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
  }
  return methods;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_iter-step.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_iter-step.js ***!
  \*****************************************************/
/***/ ((module) => {

module.exports = function (done, value) {
  return { value: value, done: !!done };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_iterators.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_iterators.js ***!
  \*****************************************************/
/***/ ((module) => {

module.exports = {};


/***/ }),

/***/ "../node_modules/core-js/modules/_library.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_library.js ***!
  \***************************************************/
/***/ ((module) => {

module.exports = false;


/***/ }),

/***/ "../node_modules/core-js/modules/_object-create.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_object-create.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var dPs = __webpack_require__(/*! ./_object-dps */ "../node_modules/core-js/modules/_object-dps.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/modules/_enum-bug-keys.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/modules/_shared-key.js")('IE_PROTO');
var Empty = function () { /* empty */ };
var PROTOTYPE = 'prototype';

// Create object with fake `null` prototype: use iframe Object with cleared prototype
var createDict = function () {
  // Thrash, waste and sodomy: IE GC bug
  var iframe = __webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/modules/_dom-create.js")('iframe');
  var i = enumBugKeys.length;
  var lt = '<';
  var gt = '>';
  var iframeDocument;
  iframe.style.display = 'none';
  __webpack_require__(/*! ./_html */ "../node_modules/core-js/modules/_html.js").appendChild(iframe);
  iframe.src = 'javascript:'; // eslint-disable-line no-script-url
  // createDict = iframe.contentWindow.Object;
  // html.removeChild(iframe);
  iframeDocument = iframe.contentWindow.document;
  iframeDocument.open();
  iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);
  iframeDocument.close();
  createDict = iframeDocument.F;
  while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];
  return createDict();
};

module.exports = Object.create || function create(O, Properties) {
  var result;
  if (O !== null) {
    Empty[PROTOTYPE] = anObject(O);
    result = new Empty();
    Empty[PROTOTYPE] = null;
    // add "__proto__" for Object.getPrototypeOf polyfill
    result[IE_PROTO] = O;
  } else result = createDict();
  return Properties === undefined ? result : dPs(result, Properties);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-dp.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_object-dp.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/modules/_ie8-dom-define.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/modules/_to-primitive.js");
var dP = Object.defineProperty;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? Object.defineProperty : function defineProperty(O, P, Attributes) {
  anObject(O);
  P = toPrimitive(P, true);
  anObject(Attributes);
  if (IE8_DOM_DEFINE) try {
    return dP(O, P, Attributes);
  } catch (e) { /* empty */ }
  if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
  if ('value' in Attributes) O[P] = Attributes.value;
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-dps.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_object-dps.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/modules/_object-keys.js");

module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? Object.defineProperties : function defineProperties(O, Properties) {
  anObject(O);
  var keys = getKeys(Properties);
  var length = keys.length;
  var i = 0;
  var P;
  while (length > i) dP.f(O, P = keys[i++], Properties[P]);
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-gpo.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_object-gpo.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/modules/_to-object.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/modules/_shared-key.js")('IE_PROTO');
var ObjectProto = Object.prototype;

module.exports = Object.getPrototypeOf || function (O) {
  O = toObject(O);
  if (has(O, IE_PROTO)) return O[IE_PROTO];
  if (typeof O.constructor == 'function' && O instanceof O.constructor) {
    return O.constructor.prototype;
  } return O instanceof Object ? ObjectProto : null;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-keys-internal.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_object-keys-internal.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/modules/_to-iobject.js");
var arrayIndexOf = __webpack_require__(/*! ./_array-includes */ "../node_modules/core-js/modules/_array-includes.js")(false);
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/modules/_shared-key.js")('IE_PROTO');

module.exports = function (object, names) {
  var O = toIObject(object);
  var i = 0;
  var result = [];
  var key;
  for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);
  // Don't enum bug & hidden keys
  while (names.length > i) if (has(O, key = names[i++])) {
    ~arrayIndexOf(result, key) || result.push(key);
  }
  return result;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-keys.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_object-keys.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.14 / 15.2.3.14 Object.keys(O)
var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/modules/_object-keys-internal.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/modules/_enum-bug-keys.js");

module.exports = Object.keys || function keys(O) {
  return $keys(O, enumBugKeys);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_property-desc.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_property-desc.js ***!
  \*********************************************************/
/***/ ((module) => {

module.exports = function (bitmap, value) {
  return {
    enumerable: !(bitmap & 1),
    configurable: !(bitmap & 2),
    writable: !(bitmap & 4),
    value: value
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_redefine.js":
/*!****************************************************!*\
  !*** ../node_modules/core-js/modules/_redefine.js ***!
  \****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var SRC = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/modules/_uid.js")('src');
var $toString = __webpack_require__(/*! ./_function-to-string */ "../node_modules/core-js/modules/_function-to-string.js");
var TO_STRING = 'toString';
var TPL = ('' + $toString).split(TO_STRING);

__webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js").inspectSource = function (it) {
  return $toString.call(it);
};

(module.exports = function (O, key, val, safe) {
  var isFunction = typeof val == 'function';
  if (isFunction) has(val, 'name') || hide(val, 'name', key);
  if (O[key] === val) return;
  if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));
  if (O === global) {
    O[key] = val;
  } else if (!safe) {
    delete O[key];
    hide(O, key, val);
  } else if (O[key]) {
    O[key] = val;
  } else {
    hide(O, key, val);
  }
// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
})(Function.prototype, TO_STRING, function toString() {
  return typeof this == 'function' && this[SRC] || $toString.call(this);
});


/***/ }),

/***/ "../node_modules/core-js/modules/_regexp-exec-abstract.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_regexp-exec-abstract.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/modules/_classof.js");
var builtinExec = RegExp.prototype.exec;

 // `RegExpExec` abstract operation
// https://tc39.github.io/ecma262/#sec-regexpexec
module.exports = function (R, S) {
  var exec = R.exec;
  if (typeof exec === 'function') {
    var result = exec.call(R, S);
    if (typeof result !== 'object') {
      throw new TypeError('RegExp exec method returned something other than an Object or null');
    }
    return result;
  }
  if (classof(R) !== 'RegExp') {
    throw new TypeError('RegExp#exec called on incompatible receiver');
  }
  return builtinExec.call(R, S);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_regexp-exec.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_regexp-exec.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var regexpFlags = __webpack_require__(/*! ./_flags */ "../node_modules/core-js/modules/_flags.js");

var nativeExec = RegExp.prototype.exec;
// This always refers to the native implementation, because the
// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,
// which loads this file before patching the method.
var nativeReplace = String.prototype.replace;

var patchedExec = nativeExec;

var LAST_INDEX = 'lastIndex';

var UPDATES_LAST_INDEX_WRONG = (function () {
  var re1 = /a/,
      re2 = /b*/g;
  nativeExec.call(re1, 'a');
  nativeExec.call(re2, 'a');
  return re1[LAST_INDEX] !== 0 || re2[LAST_INDEX] !== 0;
})();

// nonparticipating capturing group, copied from es5-shim's String#split patch.
var NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;

var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED;

if (PATCH) {
  patchedExec = function exec(str) {
    var re = this;
    var lastIndex, reCopy, match, i;

    if (NPCG_INCLUDED) {
      reCopy = new RegExp('^' + re.source + '$(?!\\s)', regexpFlags.call(re));
    }
    if (UPDATES_LAST_INDEX_WRONG) lastIndex = re[LAST_INDEX];

    match = nativeExec.call(re, str);

    if (UPDATES_LAST_INDEX_WRONG && match) {
      re[LAST_INDEX] = re.global ? match.index + match[0].length : lastIndex;
    }
    if (NPCG_INCLUDED && match && match.length > 1) {
      // Fix browsers whose `exec` methods don't consistently return `undefined`
      // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/
      // eslint-disable-next-line no-loop-func
      nativeReplace.call(match[0], reCopy, function () {
        for (i = 1; i < arguments.length - 2; i++) {
          if (arguments[i] === undefined) match[i] = undefined;
        }
      });
    }

    return match;
  };
}

module.exports = patchedExec;


/***/ }),

/***/ "../node_modules/core-js/modules/_set-to-string-tag.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/_set-to-string-tag.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var def = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js").f;
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('toStringTag');

module.exports = function (it, tag, stat) {
  if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });
};


/***/ }),

/***/ "../node_modules/core-js/modules/_shared-key.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_shared-key.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var shared = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/modules/_shared.js")('keys');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/modules/_uid.js");
module.exports = function (key) {
  return shared[key] || (shared[key] = uid(key));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_shared.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_shared.js ***!
  \**************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var SHARED = '__core-js_shared__';
var store = global[SHARED] || (global[SHARED] = {});

(module.exports = function (key, value) {
  return store[key] || (store[key] = value !== undefined ? value : {});
})('versions', []).push({
  version: core.version,
  mode: __webpack_require__(/*! ./_library */ "../node_modules/core-js/modules/_library.js") ? 'pure' : 'global',
  copyright: '© 2020 Denis Pushkarev (zloirock.ru)'
});


/***/ }),

/***/ "../node_modules/core-js/modules/_species-constructor.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/modules/_species-constructor.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.3.20 SpeciesConstructor(O, defaultConstructor)
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/modules/_a-function.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('species');
module.exports = function (O, D) {
  var C = anObject(O).constructor;
  var S;
  return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_strict-method.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_strict-method.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js");

module.exports = function (method, arg) {
  return !!method && fails(function () {
    // eslint-disable-next-line no-useless-call
    arg ? method.call(null, function () { /* empty */ }, 1) : method.call(null);
  });
};


/***/ }),

/***/ "../node_modules/core-js/modules/_string-at.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_string-at.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
// true  -> String#at
// false -> String#codePointAt
module.exports = function (TO_STRING) {
  return function (that, pos) {
    var s = String(defined(that));
    var i = toInteger(pos);
    var l = s.length;
    var a, b;
    if (i < 0 || i >= l) return TO_STRING ? '' : undefined;
    a = s.charCodeAt(i);
    return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
      ? TO_STRING ? s.charAt(i) : a
      : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_string-context.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/_string-context.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// helper for String#{startsWith, endsWith, includes}
var isRegExp = __webpack_require__(/*! ./_is-regexp */ "../node_modules/core-js/modules/_is-regexp.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");

module.exports = function (that, searchString, NAME) {
  if (isRegExp(searchString)) throw TypeError('String#' + NAME + " doesn't accept regex!");
  return String(defined(that));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-absolute-index.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/_to-absolute-index.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var max = Math.max;
var min = Math.min;
module.exports = function (index, length) {
  index = toInteger(index);
  return index < 0 ? max(index + length, 0) : min(index, length);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-integer.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_to-integer.js ***!
  \******************************************************/
/***/ ((module) => {

// 7.1.4 ToInteger
var ceil = Math.ceil;
var floor = Math.floor;
module.exports = function (it) {
  return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-iobject.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_to-iobject.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// to indexed object, toObject with fallback for non-array-like ES3 strings
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/modules/_iobject.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
module.exports = function (it) {
  return IObject(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-length.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_to-length.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.15 ToLength
var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var min = Math.min;
module.exports = function (it) {
  return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_to-object.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.13 ToObject(argument)
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
module.exports = function (it) {
  return Object(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-primitive.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/modules/_to-primitive.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.1 ToPrimitive(input [, PreferredType])
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
// instead of the ES6 spec version, we didn't implement @@toPrimitive case
// and the second argument - flag - preferred type is a string
module.exports = function (it, S) {
  if (!isObject(it)) return it;
  var fn, val;
  if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
  if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  throw TypeError("Can't convert object to primitive value");
};


/***/ }),

/***/ "../node_modules/core-js/modules/_uid.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_uid.js ***!
  \***********************************************/
/***/ ((module) => {

var id = 0;
var px = Math.random();
module.exports = function (key) {
  return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_wks.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_wks.js ***!
  \***********************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var store = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/modules/_shared.js")('wks');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/modules/_uid.js");
var Symbol = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js").Symbol;
var USE_SYMBOL = typeof Symbol == 'function';

var $exports = module.exports = function (name) {
  return store[name] || (store[name] =
    USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
};

$exports.store = store;


/***/ }),

/***/ "../node_modules/core-js/modules/es6.array.filter.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.array.filter.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var $filter = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/modules/_array-methods.js")(2);

$export($export.P + $export.F * !__webpack_require__(/*! ./_strict-method */ "../node_modules/core-js/modules/_strict-method.js")([].filter, true), 'Array', {
  // 22.1.3.7 / 15.4.4.20 Array.prototype.filter(callbackfn [, thisArg])
  filter: function filter(callbackfn /* , thisArg */) {
    return $filter(this, callbackfn, arguments[1]);
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.array.iterator.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.array.iterator.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var addToUnscopables = __webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/modules/_add-to-unscopables.js");
var step = __webpack_require__(/*! ./_iter-step */ "../node_modules/core-js/modules/_iter-step.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/modules/_iterators.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/modules/_to-iobject.js");

// 22.1.3.4 Array.prototype.entries()
// 22.1.3.13 Array.prototype.keys()
// 22.1.3.29 Array.prototype.values()
// 22.1.3.30 Array.prototype[@@iterator]()
module.exports = __webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/modules/_iter-define.js")(Array, 'Array', function (iterated, kind) {
  this._t = toIObject(iterated); // target
  this._i = 0;                   // next index
  this._k = kind;                // kind
// 22.1.5.2.1 %ArrayIteratorPrototype%.next()
}, function () {
  var O = this._t;
  var kind = this._k;
  var index = this._i++;
  if (!O || index >= O.length) {
    this._t = undefined;
    return step(1);
  }
  if (kind == 'keys') return step(0, index);
  if (kind == 'values') return step(0, O[index]);
  return step(0, [index, O[index]]);
}, 'values');

// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
Iterators.Arguments = Iterators.Array;

addToUnscopables('keys');
addToUnscopables('values');
addToUnscopables('entries');


/***/ }),

/***/ "../node_modules/core-js/modules/es6.array.slice.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.array.slice.js ***!
  \**********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var html = __webpack_require__(/*! ./_html */ "../node_modules/core-js/modules/_html.js");
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
var toAbsoluteIndex = __webpack_require__(/*! ./_to-absolute-index */ "../node_modules/core-js/modules/_to-absolute-index.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var arraySlice = [].slice;

// fallback for not array-like ES3 strings and DOM objects
$export($export.P + $export.F * __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () {
  if (html) arraySlice.call(html);
}), 'Array', {
  slice: function slice(begin, end) {
    var len = toLength(this.length);
    var klass = cof(this);
    end = end === undefined ? len : end;
    if (klass == 'Array') return arraySlice.call(this, begin, end);
    var start = toAbsoluteIndex(begin, len);
    var upTo = toAbsoluteIndex(end, len);
    var size = toLength(upTo - start);
    var cloned = new Array(size);
    var i = 0;
    for (; i < size; i++) cloned[i] = klass == 'String'
      ? this.charAt(start + i)
      : this[start + i];
    return cloned;
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.function.name.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.function.name.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js").f;
var FProto = Function.prototype;
var nameRE = /^\s*function ([^ (]*)/;
var NAME = 'name';

// 19.2.4.2 name
NAME in FProto || __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") && dP(FProto, NAME, {
  configurable: true,
  get: function () {
    try {
      return ('' + this).match(nameRE)[1];
    } catch (e) {
      return '';
    }
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.object.to-string.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.object.to-string.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 19.1.3.6 Object.prototype.toString()
var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/modules/_classof.js");
var test = {};
test[__webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('toStringTag')] = 'z';
if (test + '' != '[object z]') {
  __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js")(Object.prototype, 'toString', function toString() {
    return '[object ' + classof(this) + ']';
  }, true);
}


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.exec.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.exec.js ***!
  \**********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var regexpExec = __webpack_require__(/*! ./_regexp-exec */ "../node_modules/core-js/modules/_regexp-exec.js");
__webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js")({
  target: 'RegExp',
  proto: true,
  forced: regexpExec !== /./.exec
}, {
  exec: regexpExec
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.replace.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.replace.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/modules/_to-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var advanceStringIndex = __webpack_require__(/*! ./_advance-string-index */ "../node_modules/core-js/modules/_advance-string-index.js");
var regExpExec = __webpack_require__(/*! ./_regexp-exec-abstract */ "../node_modules/core-js/modules/_regexp-exec-abstract.js");
var max = Math.max;
var min = Math.min;
var floor = Math.floor;
var SUBSTITUTION_SYMBOLS = /\$([$&`']|\d\d?|<[^>]*>)/g;
var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&`']|\d\d?)/g;

var maybeToString = function (it) {
  return it === undefined ? it : String(it);
};

// @@replace logic
__webpack_require__(/*! ./_fix-re-wks */ "../node_modules/core-js/modules/_fix-re-wks.js")('replace', 2, function (defined, REPLACE, $replace, maybeCallNative) {
  return [
    // `String.prototype.replace` method
    // https://tc39.github.io/ecma262/#sec-string.prototype.replace
    function replace(searchValue, replaceValue) {
      var O = defined(this);
      var fn = searchValue == undefined ? undefined : searchValue[REPLACE];
      return fn !== undefined
        ? fn.call(searchValue, O, replaceValue)
        : $replace.call(String(O), searchValue, replaceValue);
    },
    // `RegExp.prototype[@@replace]` method
    // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace
    function (regexp, replaceValue) {
      var res = maybeCallNative($replace, regexp, this, replaceValue);
      if (res.done) return res.value;

      var rx = anObject(regexp);
      var S = String(this);
      var functionalReplace = typeof replaceValue === 'function';
      if (!functionalReplace) replaceValue = String(replaceValue);
      var global = rx.global;
      if (global) {
        var fullUnicode = rx.unicode;
        rx.lastIndex = 0;
      }
      var results = [];
      while (true) {
        var result = regExpExec(rx, S);
        if (result === null) break;
        results.push(result);
        if (!global) break;
        var matchStr = String(result[0]);
        if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
      }
      var accumulatedResult = '';
      var nextSourcePosition = 0;
      for (var i = 0; i < results.length; i++) {
        result = results[i];
        var matched = String(result[0]);
        var position = max(min(toInteger(result.index), S.length), 0);
        var captures = [];
        // NOTE: This is equivalent to
        //   captures = result.slice(1).map(maybeToString)
        // but for some reason `nativeSlice.call(result, 1, result.length)` (called in
        // the slice polyfill when slicing native arrays) "doesn't work" in safari 9 and
        // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.
        for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));
        var namedCaptures = result.groups;
        if (functionalReplace) {
          var replacerArgs = [matched].concat(captures, position, S);
          if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);
          var replacement = String(replaceValue.apply(undefined, replacerArgs));
        } else {
          replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);
        }
        if (position >= nextSourcePosition) {
          accumulatedResult += S.slice(nextSourcePosition, position) + replacement;
          nextSourcePosition = position + matched.length;
        }
      }
      return accumulatedResult + S.slice(nextSourcePosition);
    }
  ];

    // https://tc39.github.io/ecma262/#sec-getsubstitution
  function getSubstitution(matched, str, position, captures, namedCaptures, replacement) {
    var tailPos = position + matched.length;
    var m = captures.length;
    var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;
    if (namedCaptures !== undefined) {
      namedCaptures = toObject(namedCaptures);
      symbols = SUBSTITUTION_SYMBOLS;
    }
    return $replace.call(replacement, symbols, function (match, ch) {
      var capture;
      switch (ch.charAt(0)) {
        case '$': return '$';
        case '&': return matched;
        case '`': return str.slice(0, position);
        case "'": return str.slice(tailPos);
        case '<':
          capture = namedCaptures[ch.slice(1, -1)];
          break;
        default: // \d\d?
          var n = +ch;
          if (n === 0) return match;
          if (n > m) {
            var f = floor(n / 10);
            if (f === 0) return match;
            if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);
            return match;
          }
          capture = captures[n - 1];
      }
      return capture === undefined ? '' : capture;
    });
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.split.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.split.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var isRegExp = __webpack_require__(/*! ./_is-regexp */ "../node_modules/core-js/modules/_is-regexp.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var speciesConstructor = __webpack_require__(/*! ./_species-constructor */ "../node_modules/core-js/modules/_species-constructor.js");
var advanceStringIndex = __webpack_require__(/*! ./_advance-string-index */ "../node_modules/core-js/modules/_advance-string-index.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var callRegExpExec = __webpack_require__(/*! ./_regexp-exec-abstract */ "../node_modules/core-js/modules/_regexp-exec-abstract.js");
var regexpExec = __webpack_require__(/*! ./_regexp-exec */ "../node_modules/core-js/modules/_regexp-exec.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js");
var $min = Math.min;
var $push = [].push;
var $SPLIT = 'split';
var LENGTH = 'length';
var LAST_INDEX = 'lastIndex';
var MAX_UINT32 = 0xffffffff;

// babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError
var SUPPORTS_Y = !fails(function () { RegExp(MAX_UINT32, 'y'); });

// @@split logic
__webpack_require__(/*! ./_fix-re-wks */ "../node_modules/core-js/modules/_fix-re-wks.js")('split', 2, function (defined, SPLIT, $split, maybeCallNative) {
  var internalSplit;
  if (
    'abbc'[$SPLIT](/(b)*/)[1] == 'c' ||
    'test'[$SPLIT](/(?:)/, -1)[LENGTH] != 4 ||
    'ab'[$SPLIT](/(?:ab)*/)[LENGTH] != 2 ||
    '.'[$SPLIT](/(.?)(.?)/)[LENGTH] != 4 ||
    '.'[$SPLIT](/()()/)[LENGTH] > 1 ||
    ''[$SPLIT](/.?/)[LENGTH]
  ) {
    // based on es5-shim implementation, need to rework it
    internalSplit = function (separator, limit) {
      var string = String(this);
      if (separator === undefined && limit === 0) return [];
      // If `separator` is not a regex, use native split
      if (!isRegExp(separator)) return $split.call(string, separator, limit);
      var output = [];
      var flags = (separator.ignoreCase ? 'i' : '') +
                  (separator.multiline ? 'm' : '') +
                  (separator.unicode ? 'u' : '') +
                  (separator.sticky ? 'y' : '');
      var lastLastIndex = 0;
      var splitLimit = limit === undefined ? MAX_UINT32 : limit >>> 0;
      // Make `global` and avoid `lastIndex` issues by working with a copy
      var separatorCopy = new RegExp(separator.source, flags + 'g');
      var match, lastIndex, lastLength;
      while (match = regexpExec.call(separatorCopy, string)) {
        lastIndex = separatorCopy[LAST_INDEX];
        if (lastIndex > lastLastIndex) {
          output.push(string.slice(lastLastIndex, match.index));
          if (match[LENGTH] > 1 && match.index < string[LENGTH]) $push.apply(output, match.slice(1));
          lastLength = match[0][LENGTH];
          lastLastIndex = lastIndex;
          if (output[LENGTH] >= splitLimit) break;
        }
        if (separatorCopy[LAST_INDEX] === match.index) separatorCopy[LAST_INDEX]++; // Avoid an infinite loop
      }
      if (lastLastIndex === string[LENGTH]) {
        if (lastLength || !separatorCopy.test('')) output.push('');
      } else output.push(string.slice(lastLastIndex));
      return output[LENGTH] > splitLimit ? output.slice(0, splitLimit) : output;
    };
  // Chakra, V8
  } else if ('0'[$SPLIT](undefined, 0)[LENGTH]) {
    internalSplit = function (separator, limit) {
      return separator === undefined && limit === 0 ? [] : $split.call(this, separator, limit);
    };
  } else {
    internalSplit = $split;
  }

  return [
    // `String.prototype.split` method
    // https://tc39.github.io/ecma262/#sec-string.prototype.split
    function split(separator, limit) {
      var O = defined(this);
      var splitter = separator == undefined ? undefined : separator[SPLIT];
      return splitter !== undefined
        ? splitter.call(separator, O, limit)
        : internalSplit.call(String(O), separator, limit);
    },
    // `RegExp.prototype[@@split]` method
    // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@split
    //
    // NOTE: This cannot be properly polyfilled in engines that don't support
    // the 'y' flag.
    function (regexp, limit) {
      var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== $split);
      if (res.done) return res.value;

      var rx = anObject(regexp);
      var S = String(this);
      var C = speciesConstructor(rx, RegExp);

      var unicodeMatching = rx.unicode;
      var flags = (rx.ignoreCase ? 'i' : '') +
                  (rx.multiline ? 'm' : '') +
                  (rx.unicode ? 'u' : '') +
                  (SUPPORTS_Y ? 'y' : 'g');

      // ^(? + rx + ) is needed, in combination with some S slicing, to
      // simulate the 'y' flag.
      var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags);
      var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;
      if (lim === 0) return [];
      if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];
      var p = 0;
      var q = 0;
      var A = [];
      while (q < S.length) {
        splitter.lastIndex = SUPPORTS_Y ? q : 0;
        var z = callRegExpExec(splitter, SUPPORTS_Y ? S : S.slice(q));
        var e;
        if (
          z === null ||
          (e = $min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p
        ) {
          q = advanceStringIndex(S, q, unicodeMatching);
        } else {
          A.push(S.slice(p, q));
          if (A.length === lim) return A;
          for (var i = 1; i <= z.length - 1; i++) {
            A.push(z[i]);
            if (A.length === lim) return A;
          }
          q = p = e;
        }
      }
      A.push(S.slice(p));
      return A;
    }
  ];
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.string.includes.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.string.includes.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
// 21.1.3.7 String.prototype.includes(searchString, position = 0)

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var context = __webpack_require__(/*! ./_string-context */ "../node_modules/core-js/modules/_string-context.js");
var INCLUDES = 'includes';

$export($export.P + $export.F * __webpack_require__(/*! ./_fails-is-regexp */ "../node_modules/core-js/modules/_fails-is-regexp.js")(INCLUDES), 'String', {
  includes: function includes(searchString /* , position = 0 */) {
    return !!~context(this, searchString, INCLUDES)
      .indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined);
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.string.iterator.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.string.iterator.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $at = __webpack_require__(/*! ./_string-at */ "../node_modules/core-js/modules/_string-at.js")(true);

// 21.1.3.27 String.prototype[@@iterator]()
__webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/modules/_iter-define.js")(String, 'String', function (iterated) {
  this._t = String(iterated); // target
  this._i = 0;                // next index
// 21.1.5.2.1 %StringIteratorPrototype%.next()
}, function () {
  var O = this._t;
  var index = this._i;
  var point;
  if (index >= O.length) return { value: undefined, done: true };
  point = $at(O, index);
  this._i += point.length;
  return { value: point, done: false };
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.string.starts-with.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.string.starts-with.js ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
// 21.1.3.18 String.prototype.startsWith(searchString [, position ])

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var context = __webpack_require__(/*! ./_string-context */ "../node_modules/core-js/modules/_string-context.js");
var STARTS_WITH = 'startsWith';
var $startsWith = ''[STARTS_WITH];

$export($export.P + $export.F * __webpack_require__(/*! ./_fails-is-regexp */ "../node_modules/core-js/modules/_fails-is-regexp.js")(STARTS_WITH), 'String', {
  startsWith: function startsWith(searchString /* , position = 0 */) {
    var that = context(this, searchString, STARTS_WITH);
    var index = toLength(Math.min(arguments.length > 1 ? arguments[1] : undefined, that.length));
    var search = String(searchString);
    return $startsWith
      ? $startsWith.call(that, search, index)
      : that.slice(index, index + search.length) === search;
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es7.array.includes.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/es7.array.includes.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// https://github.com/tc39/Array.prototype.includes
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var $includes = __webpack_require__(/*! ./_array-includes */ "../node_modules/core-js/modules/_array-includes.js")(true);

$export($export.P, 'Array', {
  includes: function includes(el /* , fromIndex = 0 */) {
    return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);
  }
});

__webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/modules/_add-to-unscopables.js")('includes');


/***/ }),

/***/ "../node_modules/core-js/modules/web.dom.iterable.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/web.dom.iterable.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $iterators = __webpack_require__(/*! ./es6.array.iterator */ "../node_modules/core-js/modules/es6.array.iterator.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/modules/_object-keys.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/modules/_iterators.js");
var wks = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js");
var ITERATOR = wks('iterator');
var TO_STRING_TAG = wks('toStringTag');
var ArrayValues = Iterators.Array;

var DOMIterables = {
  CSSRuleList: true, // TODO: Not spec compliant, should be false.
  CSSStyleDeclaration: false,
  CSSValueList: false,
  ClientRectList: false,
  DOMRectList: false,
  DOMStringList: false,
  DOMTokenList: true,
  DataTransferItemList: false,
  FileList: false,
  HTMLAllCollection: false,
  HTMLCollection: false,
  HTMLFormElement: false,
  HTMLSelectElement: false,
  MediaList: true, // TODO: Not spec compliant, should be false.
  MimeTypeArray: false,
  NamedNodeMap: false,
  NodeList: true,
  PaintRequestList: false,
  Plugin: false,
  PluginArray: false,
  SVGLengthList: false,
  SVGNumberList: false,
  SVGPathSegList: false,
  SVGPointList: false,
  SVGStringList: false,
  SVGTransformList: false,
  SourceBufferList: false,
  StyleSheetList: true, // TODO: Not spec compliant, should be false.
  TextTrackCueList: false,
  TextTrackList: false,
  TouchList: false
};

for (var collections = getKeys(DOMIterables), i = 0; i < collections.length; i++) {
  var NAME = collections[i];
  var explicit = DOMIterables[NAME];
  var Collection = global[NAME];
  var proto = Collection && Collection.prototype;
  var key;
  if (proto) {
    if (!proto[ITERATOR]) hide(proto, ITERATOR, ArrayValues);
    if (!proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);
    Iterators[NAME] = ArrayValues;
    if (explicit) for (key in $iterators) if (!proto[key]) redefine(proto, key, $iterators[key], true);
  }
}


/***/ }),

/***/ "../node_modules/regenerator-runtime/runtime.js":
/*!******************************************************!*\
  !*** ../node_modules/regenerator-runtime/runtime.js ***!
  \******************************************************/
/***/ ((module) => {

/**
 * Copyright (c) 2014-present, Facebook, Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

var runtime = (function (exports) {
  "use strict";

  var Op = Object.prototype;
  var hasOwn = Op.hasOwnProperty;
  var undefined; // More compressible than void 0.
  var $Symbol = typeof Symbol === "function" ? Symbol : {};
  var iteratorSymbol = $Symbol.iterator || "@@iterator";
  var asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator";
  var toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag";

  function define(obj, key, value) {
    Object.defineProperty(obj, key, {
      value: value,
      enumerable: true,
      configurable: true,
      writable: true
    });
    return obj[key];
  }
  try {
    // IE 8 has a broken Object.defineProperty that only works on DOM objects.
    define({}, "");
  } catch (err) {
    define = function(obj, key, value) {
      return obj[key] = value;
    };
  }

  function wrap(innerFn, outerFn, self, tryLocsList) {
    // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.
    var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;
    var generator = Object.create(protoGenerator.prototype);
    var context = new Context(tryLocsList || []);

    // The ._invoke method unifies the implementations of the .next,
    // .throw, and .return methods.
    generator._invoke = makeInvokeMethod(innerFn, self, context);

    return generator;
  }
  exports.wrap = wrap;

  // Try/catch helper to minimize deoptimizations. Returns a completion
  // record like context.tryEntries[i].completion. This interface could
  // have been (and was previously) designed to take a closure to be
  // invoked without arguments, but in all the cases we care about we
  // already have an existing method we want to call, so there's no need
  // to create a new function object. We can even get away with assuming
  // the method takes exactly one argument, since that happens to be true
  // in every case, so we don't have to touch the arguments object. The
  // only additional allocation required is the completion record, which
  // has a stable shape and so hopefully should be cheap to allocate.
  function tryCatch(fn, obj, arg) {
    try {
      return { type: "normal", arg: fn.call(obj, arg) };
    } catch (err) {
      return { type: "throw", arg: err };
    }
  }

  var GenStateSuspendedStart = "suspendedStart";
  var GenStateSuspendedYield = "suspendedYield";
  var GenStateExecuting = "executing";
  var GenStateCompleted = "completed";

  // Returning this object from the innerFn has the same effect as
  // breaking out of the dispatch switch statement.
  var ContinueSentinel = {};

  // Dummy constructor functions that we use as the .constructor and
  // .constructor.prototype properties for functions that return Generator
  // objects. For full spec compliance, you may wish to configure your
  // minifier not to mangle the names of these two functions.
  function Generator() {}
  function GeneratorFunction() {}
  function GeneratorFunctionPrototype() {}

  // This is a polyfill for %IteratorPrototype% for environments that
  // don't natively support it.
  var IteratorPrototype = {};
  IteratorPrototype[iteratorSymbol] = function () {
    return this;
  };

  var getProto = Object.getPrototypeOf;
  var NativeIteratorPrototype = getProto && getProto(getProto(values([])));
  if (NativeIteratorPrototype &&
      NativeIteratorPrototype !== Op &&
      hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {
    // This environment has a native %IteratorPrototype%; use it instead
    // of the polyfill.
    IteratorPrototype = NativeIteratorPrototype;
  }

  var Gp = GeneratorFunctionPrototype.prototype =
    Generator.prototype = Object.create(IteratorPrototype);
  GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype;
  GeneratorFunctionPrototype.constructor = GeneratorFunction;
  GeneratorFunction.displayName = define(
    GeneratorFunctionPrototype,
    toStringTagSymbol,
    "GeneratorFunction"
  );

  // Helper for defining the .next, .throw, and .return methods of the
  // Iterator interface in terms of a single ._invoke method.
  function defineIteratorMethods(prototype) {
    ["next", "throw", "return"].forEach(function(method) {
      define(prototype, method, function(arg) {
        return this._invoke(method, arg);
      });
    });
  }

  exports.isGeneratorFunction = function(genFun) {
    var ctor = typeof genFun === "function" && genFun.constructor;
    return ctor
      ? ctor === GeneratorFunction ||
        // For the native GeneratorFunction constructor, the best we can
        // do is to check its .name property.
        (ctor.displayName || ctor.name) === "GeneratorFunction"
      : false;
  };

  exports.mark = function(genFun) {
    if (Object.setPrototypeOf) {
      Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);
    } else {
      genFun.__proto__ = GeneratorFunctionPrototype;
      define(genFun, toStringTagSymbol, "GeneratorFunction");
    }
    genFun.prototype = Object.create(Gp);
    return genFun;
  };

  // Within the body of any async function, `await x` is transformed to
  // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test
  // `hasOwn.call(value, "__await")` to determine if the yielded value is
  // meant to be awaited.
  exports.awrap = function(arg) {
    return { __await: arg };
  };

  function AsyncIterator(generator, PromiseImpl) {
    function invoke(method, arg, resolve, reject) {
      var record = tryCatch(generator[method], generator, arg);
      if (record.type === "throw") {
        reject(record.arg);
      } else {
        var result = record.arg;
        var value = result.value;
        if (value &&
            typeof value === "object" &&
            hasOwn.call(value, "__await")) {
          return PromiseImpl.resolve(value.__await).then(function(value) {
            invoke("next", value, resolve, reject);
          }, function(err) {
            invoke("throw", err, resolve, reject);
          });
        }

        return PromiseImpl.resolve(value).then(function(unwrapped) {
          // When a yielded Promise is resolved, its final value becomes
          // the .value of the Promise<{value,done}> result for the
          // current iteration.
          result.value = unwrapped;
          resolve(result);
        }, function(error) {
          // If a rejected Promise was yielded, throw the rejection back
          // into the async generator function so it can be handled there.
          return invoke("throw", error, resolve, reject);
        });
      }
    }

    var previousPromise;

    function enqueue(method, arg) {
      function callInvokeWithMethodAndArg() {
        return new PromiseImpl(function(resolve, reject) {
          invoke(method, arg, resolve, reject);
        });
      }

      return previousPromise =
        // If enqueue has been called before, then we want to wait until
        // all previous Promises have been resolved before calling invoke,
        // so that results are always delivered in the correct order. If
        // enqueue has not been called before, then it is important to
        // call invoke immediately, without waiting on a callback to fire,
        // so that the async generator function has the opportunity to do
        // any necessary setup in a predictable way. This predictability
        // is why the Promise constructor synchronously invokes its
        // executor callback, and why async functions synchronously
        // execute code before the first await. Since we implement simple
        // async functions in terms of async generators, it is especially
        // important to get this right, even though it requires care.
        previousPromise ? previousPromise.then(
          callInvokeWithMethodAndArg,
          // Avoid propagating failures to Promises returned by later
          // invocations of the iterator.
          callInvokeWithMethodAndArg
        ) : callInvokeWithMethodAndArg();
    }

    // Define the unified helper method that is used to implement .next,
    // .throw, and .return (see defineIteratorMethods).
    this._invoke = enqueue;
  }

  defineIteratorMethods(AsyncIterator.prototype);
  AsyncIterator.prototype[asyncIteratorSymbol] = function () {
    return this;
  };
  exports.AsyncIterator = AsyncIterator;

  // Note that simple async functions are implemented on top of
  // AsyncIterator objects; they just return a Promise for the value of
  // the final result produced by the iterator.
  exports.async = function(innerFn, outerFn, self, tryLocsList, PromiseImpl) {
    if (PromiseImpl === void 0) PromiseImpl = Promise;

    var iter = new AsyncIterator(
      wrap(innerFn, outerFn, self, tryLocsList),
      PromiseImpl
    );

    return exports.isGeneratorFunction(outerFn)
      ? iter // If outerFn is a generator, return the full iterator.
      : iter.next().then(function(result) {
          return result.done ? result.value : iter.next();
        });
  };

  function makeInvokeMethod(innerFn, self, context) {
    var state = GenStateSuspendedStart;

    return function invoke(method, arg) {
      if (state === GenStateExecuting) {
        throw new Error("Generator is already running");
      }

      if (state === GenStateCompleted) {
        if (method === "throw") {
          throw arg;
        }

        // Be forgiving, per 25.3.3.3.3 of the spec:
        // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume
        return doneResult();
      }

      context.method = method;
      context.arg = arg;

      while (true) {
        var delegate = context.delegate;
        if (delegate) {
          var delegateResult = maybeInvokeDelegate(delegate, context);
          if (delegateResult) {
            if (delegateResult === ContinueSentinel) continue;
            return delegateResult;
          }
        }

        if (context.method === "next") {
          // Setting context._sent for legacy support of Babel's
          // function.sent implementation.
          context.sent = context._sent = context.arg;

        } else if (context.method === "throw") {
          if (state === GenStateSuspendedStart) {
            state = GenStateCompleted;
            throw context.arg;
          }

          context.dispatchException(context.arg);

        } else if (context.method === "return") {
          context.abrupt("return", context.arg);
        }

        state = GenStateExecuting;

        var record = tryCatch(innerFn, self, context);
        if (record.type === "normal") {
          // If an exception is thrown from innerFn, we leave state ===
          // GenStateExecuting and loop back for another invocation.
          state = context.done
            ? GenStateCompleted
            : GenStateSuspendedYield;

          if (record.arg === ContinueSentinel) {
            continue;
          }

          return {
            value: record.arg,
            done: context.done
          };

        } else if (record.type === "throw") {
          state = GenStateCompleted;
          // Dispatch the exception by looping back around to the
          // context.dispatchException(context.arg) call above.
          context.method = "throw";
          context.arg = record.arg;
        }
      }
    };
  }

  // Call delegate.iterator[context.method](context.arg) and handle the
  // result, either by returning a { value, done } result from the
  // delegate iterator, or by modifying context.method and context.arg,
  // setting context.delegate to null, and returning the ContinueSentinel.
  function maybeInvokeDelegate(delegate, context) {
    var method = delegate.iterator[context.method];
    if (method === undefined) {
      // A .throw or .return when the delegate iterator has no .throw
      // method always terminates the yield* loop.
      context.delegate = null;

      if (context.method === "throw") {
        // Note: ["return"] must be used for ES3 parsing compatibility.
        if (delegate.iterator["return"]) {
          // If the delegate iterator has a return method, give it a
          // chance to clean up.
          context.method = "return";
          context.arg = undefined;
          maybeInvokeDelegate(delegate, context);

          if (context.method === "throw") {
            // If maybeInvokeDelegate(context) changed context.method from
            // "return" to "throw", let that override the TypeError below.
            return ContinueSentinel;
          }
        }

        context.method = "throw";
        context.arg = new TypeError(
          "The iterator does not provide a 'throw' method");
      }

      return ContinueSentinel;
    }

    var record = tryCatch(method, delegate.iterator, context.arg);

    if (record.type === "throw") {
      context.method = "throw";
      context.arg = record.arg;
      context.delegate = null;
      return ContinueSentinel;
    }

    var info = record.arg;

    if (! info) {
      context.method = "throw";
      context.arg = new TypeError("iterator result is not an object");
      context.delegate = null;
      return ContinueSentinel;
    }

    if (info.done) {
      // Assign the result of the finished delegate to the temporary
      // variable specified by delegate.resultName (see delegateYield).
      context[delegate.resultName] = info.value;

      // Resume execution at the desired location (see delegateYield).
      context.next = delegate.nextLoc;

      // If context.method was "throw" but the delegate handled the
      // exception, let the outer generator proceed normally. If
      // context.method was "next", forget context.arg since it has been
      // "consumed" by the delegate iterator. If context.method was
      // "return", allow the original .return call to continue in the
      // outer generator.
      if (context.method !== "return") {
        context.method = "next";
        context.arg = undefined;
      }

    } else {
      // Re-yield the result returned by the delegate method.
      return info;
    }

    // The delegate iterator is finished, so forget it and continue with
    // the outer generator.
    context.delegate = null;
    return ContinueSentinel;
  }

  // Define Generator.prototype.{next,throw,return} in terms of the
  // unified ._invoke helper method.
  defineIteratorMethods(Gp);

  define(Gp, toStringTagSymbol, "Generator");

  // A Generator should always return itself as the iterator object when the
  // @@iterator function is called on it. Some browsers' implementations of the
  // iterator prototype chain incorrectly implement this, causing the Generator
  // object to not be returned from this call. This ensures that doesn't happen.
  // See https://github.com/facebook/regenerator/issues/274 for more details.
  Gp[iteratorSymbol] = function() {
    return this;
  };

  Gp.toString = function() {
    return "[object Generator]";
  };

  function pushTryEntry(locs) {
    var entry = { tryLoc: locs[0] };

    if (1 in locs) {
      entry.catchLoc = locs[1];
    }

    if (2 in locs) {
      entry.finallyLoc = locs[2];
      entry.afterLoc = locs[3];
    }

    this.tryEntries.push(entry);
  }

  function resetTryEntry(entry) {
    var record = entry.completion || {};
    record.type = "normal";
    delete record.arg;
    entry.completion = record;
  }

  function Context(tryLocsList) {
    // The root entry object (effectively a try statement without a catch
    // or a finally block) gives us a place to store values thrown from
    // locations where there is no enclosing try statement.
    this.tryEntries = [{ tryLoc: "root" }];
    tryLocsList.forEach(pushTryEntry, this);
    this.reset(true);
  }

  exports.keys = function(object) {
    var keys = [];
    for (var key in object) {
      keys.push(key);
    }
    keys.reverse();

    // Rather than returning an object with a next method, we keep
    // things simple and return the next function itself.
    return function next() {
      while (keys.length) {
        var key = keys.pop();
        if (key in object) {
          next.value = key;
          next.done = false;
          return next;
        }
      }

      // To avoid creating an additional object, we just hang the .value
      // and .done properties off the next function object itself. This
      // also ensures that the minifier will not anonymize the function.
      next.done = true;
      return next;
    };
  };

  function values(iterable) {
    if (iterable) {
      var iteratorMethod = iterable[iteratorSymbol];
      if (iteratorMethod) {
        return iteratorMethod.call(iterable);
      }

      if (typeof iterable.next === "function") {
        return iterable;
      }

      if (!isNaN(iterable.length)) {
        var i = -1, next = function next() {
          while (++i < iterable.length) {
            if (hasOwn.call(iterable, i)) {
              next.value = iterable[i];
              next.done = false;
              return next;
            }
          }

          next.value = undefined;
          next.done = true;

          return next;
        };

        return next.next = next;
      }
    }

    // Return an iterator with no values.
    return { next: doneResult };
  }
  exports.values = values;

  function doneResult() {
    return { value: undefined, done: true };
  }

  Context.prototype = {
    constructor: Context,

    reset: function(skipTempReset) {
      this.prev = 0;
      this.next = 0;
      // Resetting context._sent for legacy support of Babel's
      // function.sent implementation.
      this.sent = this._sent = undefined;
      this.done = false;
      this.delegate = null;

      this.method = "next";
      this.arg = undefined;

      this.tryEntries.forEach(resetTryEntry);

      if (!skipTempReset) {
        for (var name in this) {
          // Not sure about the optimal order of these conditions:
          if (name.charAt(0) === "t" &&
              hasOwn.call(this, name) &&
              !isNaN(+name.slice(1))) {
            this[name] = undefined;
          }
        }
      }
    },

    stop: function() {
      this.done = true;

      var rootEntry = this.tryEntries[0];
      var rootRecord = rootEntry.completion;
      if (rootRecord.type === "throw") {
        throw rootRecord.arg;
      }

      return this.rval;
    },

    dispatchException: function(exception) {
      if (this.done) {
        throw exception;
      }

      var context = this;
      function handle(loc, caught) {
        record.type = "throw";
        record.arg = exception;
        context.next = loc;

        if (caught) {
          // If the dispatched exception was caught by a catch block,
          // then let that catch block handle the exception normally.
          context.method = "next";
          context.arg = undefined;
        }

        return !! caught;
      }

      for (var i = this.tryEntries.length - 1; i >= 0; --i) {
        var entry = this.tryEntries[i];
        var record = entry.completion;

        if (entry.tryLoc === "root") {
          // Exception thrown outside of any try block that could handle
          // it, so set the completion value of the entire function to
          // throw the exception.
          return handle("end");
        }

        if (entry.tryLoc <= this.prev) {
          var hasCatch = hasOwn.call(entry, "catchLoc");
          var hasFinally = hasOwn.call(entry, "finallyLoc");

          if (hasCatch && hasFinally) {
            if (this.prev < entry.catchLoc) {
              return handle(entry.catchLoc, true);
            } else if (this.prev < entry.finallyLoc) {
              return handle(entry.finallyLoc);
            }

          } else if (hasCatch) {
            if (this.prev < entry.catchLoc) {
              return handle(entry.catchLoc, true);
            }

          } else if (hasFinally) {
            if (this.prev < entry.finallyLoc) {
              return handle(entry.finallyLoc);
            }

          } else {
            throw new Error("try statement without catch or finally");
          }
        }
      }
    },

    abrupt: function(type, arg) {
      for (var i = this.tryEntries.length - 1; i >= 0; --i) {
        var entry = this.tryEntries[i];
        if (entry.tryLoc <= this.prev &&
            hasOwn.call(entry, "finallyLoc") &&
            this.prev < entry.finallyLoc) {
          var finallyEntry = entry;
          break;
        }
      }

      if (finallyEntry &&
          (type === "break" ||
           type === "continue") &&
          finallyEntry.tryLoc <= arg &&
          arg <= finallyEntry.finallyLoc) {
        // Ignore the finally entry if control is not jumping to a
        // location outside the try/catch block.
        finallyEntry = null;
      }

      var record = finallyEntry ? finallyEntry.completion : {};
      record.type = type;
      record.arg = arg;

      if (finallyEntry) {
        this.method = "next";
        this.next = finallyEntry.finallyLoc;
        return ContinueSentinel;
      }

      return this.complete(record);
    },

    complete: function(record, afterLoc) {
      if (record.type === "throw") {
        throw record.arg;
      }

      if (record.type === "break" ||
          record.type === "continue") {
        this.next = record.arg;
      } else if (record.type === "return") {
        this.rval = this.arg = record.arg;
        this.method = "return";
        this.next = "end";
      } else if (record.type === "normal" && afterLoc) {
        this.next = afterLoc;
      }

      return ContinueSentinel;
    },

    finish: function(finallyLoc) {
      for (var i = this.tryEntries.length - 1; i >= 0; --i) {
        var entry = this.tryEntries[i];
        if (entry.finallyLoc === finallyLoc) {
          this.complete(entry.completion, entry.afterLoc);
          resetTryEntry(entry);
          return ContinueSentinel;
        }
      }
    },

    "catch": function(tryLoc) {
      for (var i = this.tryEntries.length - 1; i >= 0; --i) {
        var entry = this.tryEntries[i];
        if (entry.tryLoc === tryLoc) {
          var record = entry.completion;
          if (record.type === "throw") {
            var thrown = record.arg;
            resetTryEntry(entry);
          }
          return thrown;
        }
      }

      // The context.catch method must only be called with a location
      // argument that corresponds to a known catch block.
      throw new Error("illegal catch attempt");
    },

    delegateYield: function(iterable, resultName, nextLoc) {
      this.delegate = {
        iterator: values(iterable),
        resultName: resultName,
        nextLoc: nextLoc
      };

      if (this.method === "next") {
        // Deliberately forget the last sent value so that we don't
        // accidentally pass it on to the delegate.
        this.arg = undefined;
      }

      return ContinueSentinel;
    }
  };

  // Regardless of whether this script is executing as a CommonJS module
  // or not, return the runtime object so that we can declare the variable
  // regeneratorRuntime in the outer scope, which allows this module to be
  // injected easily by `bin/regenerator --include-runtime script.js`.
  return exports;

}(
  // If this script is executing as a CommonJS module, use module.exports
  // as the regeneratorRuntime namespace. Otherwise create a new empty
  // object. Either way, the resulting object will be used to initialize
  // the regeneratorRuntime variable at the top of this file.
   true ? module.exports : 0
));

try {
  regeneratorRuntime = runtime;
} catch (accidentalStrictMode) {
  // This module should not be running in strict mode, so the above
  // assignment should always work unless something is misconfigured. Just
  // in case runtime.js accidentally runs in strict mode, we can escape
  // strict mode using a global Function call. This could conceivably fail
  // if a Content Security Policy forbids using Function, but in that case
  // the proper solution is to fix the accidental strict mode problem. If
  // you've misconfigured your bundler to force strict mode and applied a
  // CSP to forbid Function, and you're not willing to fix either of those
  // problems, please detail your unique predicament in a GitHub issue.
  Function("r", "regeneratorRuntime = r")(runtime);
}


/***/ })

/******/ 	});
/************************************************************************/
/******/ 	// The module cache
/******/ 	var __webpack_module_cache__ = {};
/******/ 	
/******/ 	// The require function
/******/ 	function __webpack_require__(moduleId) {
/******/ 		// Check if module is in cache
/******/ 		var cachedModule = __webpack_module_cache__[moduleId];
/******/ 		if (cachedModule !== undefined) {
/******/ 			return cachedModule.exports;
/******/ 		}
/******/ 		// Create a new module (and put it into the cache)
/******/ 		var module = __webpack_module_cache__[moduleId] = {
/******/ 			// no module.id needed
/******/ 			// no module.loaded needed
/******/ 			exports: {}
/******/ 		};
/******/ 	
/******/ 		// Execute the module function
/******/ 		__webpack_modules__[moduleId](module, module.exports, __webpack_require__);
/******/ 	
/******/ 		// Return the exports of the module
/******/ 		return module.exports;
/******/ 	}
/******/ 	
/************************************************************************/
var __webpack_exports__ = {};
// This entry need to be wrapped in an IIFE because it need to be in strict mode.
(() => {
"use strict";
/*!*******************************************!*\
  !*** ../core/common/assets/js/modules.js ***!
  \*******************************************/


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _modules = _interopRequireDefault(__webpack_require__(/*! elementor-assets-js/modules/modules */ "../assets/dev/js/modules/modules.js"));

var _layout = _interopRequireDefault(__webpack_require__(/*! ./views/modal/layout */ "../core/common/assets/js/views/modal/layout.js"));

var _componentBase = _interopRequireDefault(__webpack_require__(/*! ./api/modules/component-base */ "../core/common/assets/js/api/modules/component-base.js"));

var _componentModalBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-modal-base */ "../core/common/assets/js/api/modules/component-modal-base.js"));

var _hookBreak = _interopRequireDefault(__webpack_require__(/*! ./api/modules/hook-break */ "../core/common/assets/js/api/modules/hook-break.js"));

_modules.default.common = {
  get Component() {
    // `elementorCommon` isn't available during it self initialize.
    setTimeout(function () {
      elementorCommon.helpers.softDeprecated('elementorModules.common.Component', '2.9.0', '$e.modules.ComponentBase');
    }, 2000);
    return _componentBase.default;
  },

  get ComponentModal() {
    // `elementorCommon` isn't available during it self initialize.
    setTimeout(function () {
      elementorCommon.helpers.softDeprecated('elementorModules.common.ComponentModal', '2.9.0', '$e.modules.ComponentModalBase');
    }, 2000);
    return _componentModalBase.default;
  },

  get HookBreak() {
    // `elementorCommon` isn't available during it self initialize.
    setTimeout(function () {
      elementorCommon.helpers.softDeprecated('elementorModules.common.HookBreak', '2.9.0', '$e.modules.HookBreak');
    }, 2000);
    return _hookBreak.default;
  },

  views: {
    modal: {
      Layout: _layout.default
    }
  }
};
})();

/******/ })()
;
//# sourceMappingURL=common-modules.js.mapassets/js/frontend.min.js000064400000107425151327220410011427 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(self.webpackChunkelementor=self.webpackChunkelementor||[]).push([[819],{9220:(e,t,n)=>{"use strict";var i=n(7914);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=i(n(8135));class _default extends elementorModules.ViewModule{constructor(...e){super(...e),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:s.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)=>this.attachDocumentClass(jQuery(t))))}attachDocumentClass(e){const t=e.data(),n=t.elementorId,i=t.elementorType,s=this.documentClasses[i]||this.documentClasses.base;this.documents[n]=new s({$element:e,id:n})}}t.default=_default},9804:(e,t,n)=>{"use strict";var i=n(7914),s=i(n(6397)),o=i(n(9320)),r=i(n(7537));e.exports=function(e){const t={};this.elementsHandlers={"accordion.default":()=>n.e(209).then(n.bind(n,8470)),"alert.default":()=>n.e(745).then(n.bind(n,9269)),"counter.default":()=>n.e(120).then(n.bind(n,7884)),"progress.default":()=>n.e(192).then(n.bind(n,1351)),"tabs.default":()=>n.e(520).then(n.bind(n,9459)),"toggle.default":()=>n.e(181).then(n.bind(n,2)),"video.default":()=>n.e(791).then(n.bind(n,5363)),"image-carousel.default":()=>n.e(268).then(n.bind(n,5914)),"text-editor.default":()=>n.e(357).then(n.bind(n,1327)),"wp-widget-media_audio.default":()=>n.e(52).then(n.bind(n,7602))};const addElementsHandlers=()=>{this.elementsHandlers.section=o.default,this.elementsHandlers.column=r.default,e.each(this.elementsHandlers,((e,t)=>{const n=e.split(".");e=n[0];const i=n[1]||null;this.attachHandler(e,t,i)}))},isClassHandler=e=>{var t;return null===(t=e.prototype)||void 0===t?void 0:t.getUniqueHandlerID},addHandlerWithHook=(e,t,n="default")=>{n=n?"."+n:"",elementorFrontend.hooks.addAction(`frontend/element_ready/${e}${n}`,(e=>{if(isClassHandler(t))this.addHandler(t,{$element:e},!0);else{const n=t();n instanceof Promise?n.then((({default:t})=>{this.addHandler(t,{$element:e},!0)})):this.addHandler(n,{$element:e},!0)}}))};this.addHandler=function(e,n){const i=n.$element.data("model-cid");let s;if(i){s=e.prototype.getConstructorID(),t[i]||(t[i]={});const n=t[i][s];n&&n.onDestroy()}const o=new e(n);i&&(t[i][s]=o)},this.attachHandler=(e,t,n)=>{Array.isArray(t)||(t=[t]),t.forEach((t=>addHandlerWithHook(e,t,n)))},this.getHandler=function(e){if(!e)return;const t=this.elementsHandlers[e];return isClassHandler(t)?t:new Promise((e=>{t().then((({default:t})=>{e(t)}))}))},this.getHandlers=function(e){return elementorCommon.helpers.softDeprecated("getHandlers","3.1.0","elementorFrontend.elementsHandler.getHandler"),e?this.getHandler(e):this.elementsHandlers},this.runReadyTrigger=function(t){if(elementorFrontend.config.is_static)return;const n=jQuery(t),i=n.attr("data-element_type");if(i&&(elementorFrontend.hooks.doAction("frontend/element_ready/global",n,e),elementorFrontend.hooks.doAction(`frontend/element_ready/${i}`,n,e),"widget"===i)){const t=n.attr("data-widget_type");elementorFrontend.hooks.doAction(`frontend/element_ready/${t}`,n,e)}},this.init=()=>{elementorFrontend.hooks.addAction("frontend/element_ready/global",s.default),addElementsHandlers()}}},5654:(e,t,n)=>{"use strict";var i=n(7914);n(59);var s=i(n(9220)),o=i(n(5107)),r=i(n(3308)),a=i(n(1604)),d=i(n(1911)),l=i(n(4773)),c=i(n(2064)),u=i(n(7139)),h=i(n(8646)),m=i(n(6866)),g=i(n(4375)),p=i(n(6046)),f=n(6028);const v=n(9469),b=n(9804),y=n(3346);class Frontend extends elementorModules.ViewModule{constructor(...e){super(...e),this.config=elementorFrontendConfig,this.config.legacyMode={get elementWrappers(){return elementorFrontend.isEditMode()&&elementorCommon.helpers.hardDeprecated("elementorFrontend.config.legacyMode.elementWrappers","3.1.0","elementorFrontend.config.experimentalFeatures.e_dom_optimization"),!elementorFrontend.config.experimentalFeatures.e_dom_optimization}},this.populateActiveBreakpointsConfig()}get Module(){return this.isEditMode()&&parent.elementorCommon.helpers.hardDeprecated("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("<span>",{id:"elementor-device-mode",class:"elementor-screen-only"})};return e.$body.append(e.$deviceMode),e}bindEvents(){this.elements.$window.on("resize",(()=>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()&&parent.elementorCommon.helpers.softDeprecated("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 i=elementorFrontend.breakpoints.getActiveBreakpointsList({largeToSmall:!0,withDesktop:!0});let s=i.indexOf(e);for(;s>0;){const e=t[n+"_"+i[s]];if(e||0===e)return e;s--}return t[n]}getWidescreenSetting(e,t){const n=t+"_widescreen";let i;return i=e[n]?e[n]:e[t],i}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=()=>(e||(e=new DialogsManager.Instance),e)}initOnReadyComponents(){this.utils={youtube:new a.default,vimeo:new d.default,baseVideoLoader:new l.default,anchors:new y,get lightbox(){return h.default.getLightbox()},urlActions:new c.default,swiper:u.default,environment:r.default,assetsLoader:new m.default,escapeHTML:f.escapeHTML},this.modules={StretchElement:elementorModules.frontend.tools.StretchElement,Masonry:elementorModules.utils.Masonry},this.elementsHandler.init(),this.isEditMode()?elementor.once("document:loaded",(()=>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&&this.elements.$body.addClass("e--ua-"+e)}setDeviceModeData(){this.elements.$body.attr("data-elementor-device-mode",this.getCurrentDeviceMode())}addListenerOnce(e,t,n,i){if(i||(i=this.elements.$window),this.isEditMode())if(this.removeListeners(e,t,i),i instanceof jQuery){const s=t+"."+e;i.on(s,n)}else i.on(t,n,e);else i.on(t,n)}removeListeners(e,t,n,i){if(i||(i=this.elements.$window),i instanceof jQuery){const s=t+"."+e;i.off(s,n)}else i.off(t,n,e)}debounce(e,t){let n;return function(){const i=this,s=arguments,later=()=>{n=null,e.apply(i,s)},o=!n;clearTimeout(n),n=setTimeout(later,t),o&&e.apply(i,s)}}waypoint(e,t,n){n=jQuery.extend({offset:"100%",triggerOnce:!0},n);return e.elementorWaypoint((function(){const e=this.element||this,i=t.apply(e,arguments);return n.triggerOnce&&this.destroy&&this.destroy(),i}),n)}muteMigrationTraces(){jQuery.migrateMute=!0,jQuery.migrateTrace=!1}initModules(){const e={shapes:p.default};elementorFrontend.trigger("elementor/modules/init:before"),Object.entries(e).forEach((([e,t])=>{this.modulesHandlers[e]=new t}))}populateActiveBreakpointsConfig(){this.config.responsive.activeBreakpoints={},Object.entries(this.config.responsive.breakpoints).forEach((([e,t])=>{t.is_enabled&&(this.config.responsive.activeBreakpoints[e]=t)}))}init(){this.hooks=new v,this.breakpoints=new g.default(this.config.responsive),this.storage=new o.default,this.elementsHandler=new b(jQuery),this.modulesHandlers={},this.addUserAgentClasses(),this.setDeviceModeData(),this.initDialogsManager(),this.isEditMode()&&this.muteMigrationTraces(),this.elements.$window.trigger("elementor/frontend/init"),this.initModules(),this.initOnReadyElements(),this.initOnReadyComponents()}onDocumentLoaded(){this.documentsManager=new s.default,this.trigger("components:init"),new h.default}}window.elementorFrontend=new Frontend,elementorFrontend.isEditMode()||jQuery((()=>elementorFrontend.init()))},4058:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class BackgroundSlideshow extends elementorModules.frontend.handlers.SwiperBase{getDefaultSettings(){return{classes:{swiperContainer:"elementor-background-slideshow swiper-container",swiperWrapper:"swiper-wrapper",swiperSlide:"elementor-background-slideshow__slide swiper-slide",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:()=>{e.background_slideshow_ken_burns&&this.handleKenBurns()}}};switch("yes"===e.background_slideshow_loop&&(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;case"slide_up":t.direction="vertical"}return t}buildSwiperElements(){const e=this.getSettings("classes"),t=this.getElementSettings(),n="slide_left"===t.background_slideshow_slide_transition?"ltr":"rtl",i=jQuery("<div>",{class:e.swiperContainer,dir:n}),s=jQuery("<div>",{class:e.swiperWrapper}),o=t.background_slideshow_ken_burns;let r=e.slideBackground;if(o){r+=" "+e.kenBurns;const n="in"===t.background_slideshow_ken_burns_zoom_direction?"kenBurnsIn":"kenBurnsOut";r+=" "+e[n]}this.elements.$slides=jQuery(),t.background_slideshow_gallery.forEach((t=>{const n=jQuery("<div>",{class:e.swiperSlide}),i=jQuery("<div>",{class:r,style:'background-image: url("'+t.url+'");'});n.append(i),s.append(n),this.elements.$slides=this.elements.$slides.add(n)})),i.append(s),this.$element.prepend(i),this.elements.$backgroundSlideShowContainer=i}async initSlider(){if(1>=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&&this.handleKenBurns()}activate(){this.buildSwiperElements(),this.initSlider()}deactivate(){this.swiper&&(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")&&this.run()}onDestroy(){super.onDestroy(),this.deactivate()}onElementChange(e){"background_background"===e&&this.run()}}t.default=BackgroundSlideshow},7537:(e,t,n)=>{"use strict";var i=n(7914);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=[i(n(4058)).default];t.default=s},6397:(e,t)=>{"use strict";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(),i=n._animation_delay||n.animation_delay||0;e.removeClass(t),this.currentAnimation&&e.removeClass(this.currentAnimation),this.currentAnimation=t,setTimeout((()=>{e.removeClass("elementor-invisible").addClass("animated "+t)}),i)}getAnimation(){return this.getCurrentDeviceSetting("animation")||this.getCurrentDeviceSetting("_animation")}onInit(...e){if(super.onInit(...e),this.getAnimation()){const e=elementorModules.utils.Scroll.scrollObserver({callback:t=>{t.isInViewport&&(this.animate(),e.unobserve(this.$element[0]))}});e.observe(this.$element[0])}}onElementChange(e){/^_?animation/.test(e)&&this.animate()}}t.default=e=>{elementorFrontend.elementsHandler.addHandler(GlobalHandler,{$element:e})}},2987:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;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&&(t=e[0].width+":"+e[0].height);const n=this.elements.$backgroundVideoContainer.outerWidth(),i=this.elements.$backgroundVideoContainer.outerHeight(),s=t.split(":"),o=s[0]/s[1],r=n/i>o;return{width:r?n:i*o,height:r?n/o:i}}changeVideoSize(){if("hosted"!==this.videoType&&!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&&(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,i=t.background_video_end;if(!t.background_play_once||e){if(this.player.seekTo(n),i){setTimeout((()=>{this.startVideoLoop(!1)}),1e3*(i-n+1))}}else this.player.stopVideo()}prepareVimeoVideo(e,t){const n=this.getElementSettings(),i={url:t,width:this.elements.$backgroundVideoContainer.outerWidth().width,autoplay:!0,loop:!n.background_play_once,transparent:!1,background:!0,muted:!0};this.player=new e.Player(this.elements.$backgroundVideoContainer,i),this.handleVimeoStartEndTimes(n),this.player.ready().then((()=>{jQuery(this.player.element).addClass("elementor-background-video-embed"),this.changeVideoSize()}))}handleVimeoStartEndTimes(e){e.background_video_start&&this.player.on("play",(t=>{0===t.seconds&&this.player.setCurrentTime(e.background_video_start)})),this.player.on("timeupdate",(t=>{e.background_video_end&&e.background_video_end<t.seconds&&(e.background_play_once?this.player.pause():this.player.setCurrentTime(e.background_video_start)),this.player.getDuration().then((n=>{e.background_video_start&&!e.background_video_end&&t.seconds>n-.5&&this.player.setCurrentTime(e.background_video_start)}))}))}prepareYTVideo(e,t){const n=this.elements.$backgroundVideoContainer,i=this.getElementSettings();let s=e.PlayerState.PLAYING;window.chrome&&(s=e.PlayerState.UNSTARTED);const o={videoId:t,events:{onReady:()=>{this.player.mute(),this.changeVideoSize(),this.startVideoLoop(!0),this.player.playVideo()},onStateChange:t=>{switch(t.data){case s:n.removeClass("elementor-invisible elementor-loading");break;case e.PlayerState.ENDED:this.player.seekTo(i.background_video_start||0),i.background_play_once&&this.player.destroy()}}},playerVars:{controls:0,rel:0,playsinline:1}};i.background_privacy_mode&&(o.host="https://www.youtube-nocookie.com",o.origin=window.location.hostname),n.addClass("elementor-loading elementor-invisible"),this.player=new e.Player(this.elements.$backgroundVideoEmbed[0],o)}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)/)&&(this.videoType="youtube",this.apiProvider=elementorFrontend.utils.youtube),this.apiProvider)e=this.apiProvider.getVideoIDFromURL(t),this.apiProvider.onApiReady((n=>{"youtube"===this.videoType&&this.prepareYTVideo(n,e),"vimeo"===this.videoType&&this.prepareVimeoVideo(n,t)}));else{this.videoType="hosted";const e=this.getElementSettings("background_video_start"),i=this.getElementSettings("background_video_end");(e||i)&&(t+="#t="+(e||0)+(i?","+i:"")),this.elements.$backgroundVideoHosted.attr("src",t).one("canplay",this.changeVideoSize.bind(this)),n&&this.elements.$backgroundVideoHosted.on("ended",(()=>{this.elements.$backgroundVideoHosted.hide()}))}elementorFrontend.elements.$window.on("resize",this.changeVideoSize)}deactivate(){"youtube"===this.videoType&&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())&&("video"===e.background_background&&e.background_video_link?this.activate():this.deactivate())}onInit(...e){super.onInit(...e),this.changeVideoSize=this.changeVideoSize.bind(this),this.run()}onElementChange(e){"background_background"===e&&this.run()}}t.default=BackgroundVideo},355:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;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",n=this.$element.find("> .elementor-element-overlay > .elementor-editor-section-settings");if(elementor.settings.page.model.attributes.scroll_snap)return void this.$element.addClass(t);const i=this.isOverflowHidden();if(!i&&!this.isFirstSection())return;const s=i?0:this.getOffset();s<25?(this.$element.addClass(t),s<-5?n.css("top",-s):n.css("top","")):this.$element.removeClass(t)}onInit(){this.isActive()&&(this.setHandlesPosition(),this.$element.on("mouseenter",this.setHandlesPosition.bind(this)))}}t.default=HandlesPosition},9320:(e,t,n)=>{"use strict";var i=n(7914);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=i(n(4058)),o=i(n(2987)),r=i(n(355)),a=i(n(2804)),d=i(n(3384)),l=[a.default,s.default,o.default,r.default,d.default];t.default=l},3384:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class Shapes extends elementorModules.frontend.handlers.Base{getDefaultSettings(){return{selectors:{container:"> .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&&e in elementor.config.additional_shapes&&(n=elementor.config.additional_shapes[e],-1<t.indexOf("-negative")&&(n=n.replace(".svg","-negative.svg"))),n}buildSVG(e){const t="shape_divider_"+e,n=this.getElementSettings(t),i=this.elements["$"+e+"Container"];if(i.attr("data-shape",n),!n)return void i.empty();let s=n;this.getElementSettings(t+"_negative")&&(s+="-negative");const o=this.getSvgURL(n,s);jQuery.get(o,(e=>{i.empty().append(e.childNodes[0])})),this.setNegative(e)}setNegative(e){this.elements["$"+e+"Container"].attr("data-negative",!!this.getElementSettings("shape_divider_"+e+"_negative"))}onInit(...e){this.isActive(this.getSettings())&&(super.onInit(...e),["top","bottom"].forEach((e=>{this.getElementSettings("shape_divider_"+e)&&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&&(this.buildSVG(n[1]),this.setNegative(n[1]))}}t.default=Shapes},2804:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class StretchedSection extends elementorModules.frontend.handlers.Base{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()&&(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()&&elementor.channels.editor.off("kit:change:stretchContainer",this.onKitChangeStretchContainerChange)}isActive(e){return elementorFrontend.isEditMode()||e.$element.hasClass("elementor-section-stretched")}initStretch(){this.stretch=this.stretch.bind(this),this.stretchElement=new elementorModules.frontend.tools.StretchElement({element:this.$element,selectors:{container:this.getStretchContainer()}})}getStretchContainer(){return elementorFrontend.getKitSettings("stretched_section_container")||window}stretch(){this.getElementSettings("stretch_section")&&this.stretchElement.stretch()}onInit(...e){this.isActive(this.getSettings())&&(this.initStretch(),super.onInit(...e),this.stretch())}onElementChange(e){"stretch_section"===e&&(this.getElementSettings("stretch_section")?this.stretch():this.stretchElement.reset())}onKitChangeStretchContainerChange(){this.stretchElement.setSettings("selectors.container",this.getStretchContainer()),this.stretch()}}t.default=StretchedSection},3346:e=>{"use strict";e.exports=elementorModules.ViewModule.extend({getDefaultSettings:function(){return{scrollDuration:500,selectors:{links:'a[href*="#"]',targets:".elementor-element, .elementor-menu-anchor",scrollable:"html, body"}}},getDefaultElements:function(){return{$scrollable:jQuery(this.getSettings("selectors").scrollable)}},bindEvents:function(){elementorFrontend.elements.$document.on("click",this.getSettings("selectors.links"),this.handleAnchorLinks)},handleAnchorLinks:function(e){var t,n=e.currentTarget,i=location.pathname===n.pathname;if(location.hostname===n.hostname&&i&&!(n.hash.length<2)){try{t=jQuery(n.hash).filter(this.getSettings("selectors.targets"))}catch(e){return}if(t.length){var s=t.offset().top,o=elementorFrontend.elements.$wpAdminBar,r=jQuery(".elementor-section.elementor-sticky--active:visible");o.length>0&&(s-=o.height()),r.length>0&&(s-=Math.max.apply(null,r.map((function(){return jQuery(this).outerHeight()})).get())),e.preventDefault(),s=elementorFrontend.hooks.applyFilters("frontend/handlers/menu_anchor/scroll_top_distance",s),this.elements.$scrollable.animate({scrollTop:s},this.getSettings("scrollDuration"),"linear")}}},onInit:function(){elementorModules.ViewModule.prototype.onInit.apply(this,arguments),this.bindEvents()}})},6866:(e,t)=>{"use strict";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=new Promise((t=>{const i="style"===e?this.getStyleElement(n.src):this.getScriptElement(n.src);i.onload=()=>t(!0);const s="head"===n.parent?n.parent:"body";document[s].appendChild(i)}))),n.loader}}t.default=AssetsLoader;const n=elementorFrontendConfig.environmentMode.isScriptDebug?"":".min";AssetsLoader.assets={script:{dialog:{src:`${elementorFrontendConfig.urls.assets}lib/dialog/dialog${n}.js?ver=4.8.1`},"share-link":{src:`${elementorFrontendConfig.urls.assets}lib/share-link/share-link${n}.js?ver=${elementorFrontendConfig.version}`},swiper:{src:`${elementorFrontendConfig.urls.assets}lib/swiper/swiper${n}.js?ver=5.3.6`}},style:{}}},8646:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class LightboxManager extends elementorModules.ViewModule{static getLightbox(){const e=new Promise((e=>{n.e(723).then(n.t.bind(n,3896,23)).then((({default:t})=>e(new t)))})),t=elementorFrontend.utils.assetsLoader.load("script","dialog"),i=elementorFrontend.utils.assetsLoader.load("script","share-link");return Promise.all([e,t,i]).then((()=>e))}getDefaultSettings(){return{selectors:{links:"a, [data-elementor-lightbox]"}}}getDefaultElements(){return{$links:jQuery(this.getSettings("selectors.links"))}}isLightboxLink(e){if("a"===e.tagName.toLowerCase()&&(e.hasAttribute("download")||!/^[^?]+\.(png|jpe?g|gif|svg|webp)(\?.*)?$/i.test(e.href))&&!e.dataset.elementorLightboxVideo)return!1;const t=elementorFrontend.getKitSettings("global_image_lightbox"),n=e.dataset.elementorOpenLightbox;return"yes"===n||t&&"no"!==n}async onLinkClick(e){const t=e.currentTarget,n=jQuery(e.target),i=elementorFrontend.isEditMode(),s=i&&elementor.$previewContents.find("body").hasClass("elementor-editor__ui-state__color-picker"),o=!!n.closest(".elementor-edit-area").length;if(!this.isLightboxLink(t))return void(i&&o&&e.preventDefault());if(e.preventDefault(),i&&!elementor.getPreferences("lightbox_in_editor"))return;if(s)return;(this.isOptimizedAssetsLoading()?await LightboxManager.getLightbox():elementorFrontend.utils.lightbox).createLightbox(t)}isOptimizedAssetsLoading(){return elementorFrontend.config.experimentalFeatures.e_optimized_assets_loading}bindEvents(){elementorFrontend.elements.$document.on("click",this.getSettings("selectors.links"),(e=>this.onLinkClick(e)))}onInit(...e){super.onInit(...e),this.isOptimizedAssetsLoading()&&!elementorFrontend.isEditMode()&&this.elements.$links.each(((e,t)=>{if(this.isLightboxLink(t))return LightboxManager.getLightbox(),!1}))}}t.default=LightboxManager},7139:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class SwiperBC{constructor(e,t){return this.config=t,this.config.breakpoints&&(this.config=this.adjustConfig(t)),t.legacy?this.createSwiperInstance(e,this.config):new Promise((t=>{if(!elementorFrontend.config.experimentalFeatures.e_optimized_assets_loading)return t(this.createSwiperInstance(e,this.config));elementorFrontend.utils.assetsLoader.load("script","swiper").then((()=>t(this.createSwiperInstance(e,this.config))))}))}createSwiperInstance(e,t){return!SwiperBC.isSwiperLoaded&&elementorFrontend.config.experimentalFeatures.e_optimized_assets_loading&&(n=window.Swiper,SwiperBC.isSwiperLoaded=!0,legacySwiper()),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((i=>{const s=parseInt(i);let o;if(s===t.mobile.value||s+1===t.mobile.value)o=0;else if(!t.widescreen||s!==t.widescreen.value&&s+1!==t.widescreen.value){const e=n.findIndex((e=>s===e||s+1===e));o=n[e-1]}else o=s;e.breakpoints[o]=e.breakpoints[i],e.breakpoints[i]={slidesPerView:e.slidesPerView,slidesPerGroup:e.slidesPerGroup?e.slidesPerGroup:1}})),e}}function legacySwiper(){window.Swiper=class{constructor(e,t){return t.legacy=!0,new SwiperBC(e,t)}}}t.default=SwiperBC,SwiperBC.isSwiperLoaded=!1;let n=window.Swiper;n&&legacySwiper()},2064:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;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=>{const t=await elementorFrontend.utils.lightbox;e.id?t.openSlideshow(e.id,e.url):(e.html&&delete e.html,t.showModal(e))}}}addAction(e,t){this.actions[e]=t}runAction(e,...t){const n=(e=decodeURIComponent(e)).match(/action=(.+?)&/),i=e.match(/settings=(.+)/);if(!n)return;const s=this.actions[n[1]];if(!s)return;let o={};i&&(o=JSON.parse(atob(i[1]))),s(o,...t)}runLinkAction(e){e.preventDefault(),this.runAction(jQuery(e.currentTarget).attr("href"),e)}runHashAction(){location.hash&&this.runAction(location.hash)}createActionHash(e,t){return encodeURIComponent(`#elementor-action:action=${e}&settings=${btoa(JSON.stringify(t))}`)}onInit(){super.onInit(),this.initActions(),elementorFrontend.on("components:init",this.runHashAction.bind(this))}}t.default=_default},6028:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.escapeHTML=void 0;t.escapeHTML=e=>{const t={"&":"&amp;","<":"&lt;",">":"&gt;","'":"&#39;",'"':"&quot;"};return e.replace(/[&<>'"]/g,(e=>t[e]||e))}},4773:(e,t)=>{"use strict";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("<script>",{src:this.getApiURL()})),this.setSettings("isInserted",!0)}getVideoIDFromURL(e){const t=e.match(this.getURLRegex());return t&&t[1]}onApiReady(e){this.getSettings("isInserted")||this.insertAPI(),this.isApiLoaded()?e(this.getApiObject()):setTimeout((()=>{this.onApiReady(e)}),350)}getAutoplayURL(e){return e.replace("&autoplay=0","")+"&autoplay=1"}}t.default=BaseLoader},1911:(e,t,n)=>{"use strict";var i=n(7914);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=i(n(4773));class VimeoLoader extends s.default{getApiURL(){return"https://player.vimeo.com/api/player.js"}getURLRegex(){return/^(?:https?:\/\/)?(?:www|player\.)?(?:vimeo\.com\/)?(?:video\/|external\/)?(\d+)([^.?&#"'>]?)/}isApiLoaded(){return window.Vimeo}getApiObject(){return Vimeo}getAutoplayURL(e){const t=(e=super.getAutoplayURL(e)).match(/#t=[^&]*/);return e.replace(t[0],"")+t}}t.default=VimeoLoader},1604:(e,t,n)=>{"use strict";var i=n(7914);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var s=i(n(4773));class YoutubeLoader extends s.default{getApiURL(){return"https://www.youtube.com/iframe_api"}getURLRegex(){return/^(?:https?:\/\/)?(?:www\.)?(?:m\.)?(?:youtu\.be\/|youtube\.com\/(?:(?:watch)?\?(?:.*&)?vi?=|(?:embed|v|vi|user)\/))([^?&"'>]+)/}isApiLoaded(){return window.YT&&YT.loaded}getApiObject(){return YT}}t.default=YoutubeLoader},59:(e,t,n)=>{"use strict";n.p=elementorFrontendConfig.urls.assets+"js/"},4375:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class Breakpoints extends elementorModules.Module{constructor(e){super(),this.responsiveConfig=e}getActiveBreakpointsList(e={}){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&&t.reverse(),t}getBreakpointValues(){const{activeBreakpoints:e}=this.responsiveConfig,t=[];return Object.values(e).forEach((e=>{t.push(e.value)})),t}getDesktopPreviousDeviceKey(){let e="";const{activeBreakpoints:t}=this.responsiveConfig,n=Object.keys(t),i=n.length;return e="min"===t[n[i-1]].direction?n[i-2]:n[i-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 i;if(n[0]===e)i=320;else if("widescreen"===e)i=t[e]?t[e].value:this.responsiveConfig.breakpoints.widescreen;else{const s=n.indexOf(e);i=t[n[s-1]].value+1}return i}getActiveMatchRegex(){return new RegExp(this.getActiveBreakpointsList().map((e=>"_"+e)).join("|")+"$")}}t.default=Breakpoints},9469:e=>{"use strict";e.exports=function(){var e,t=Array.prototype.slice,n={actions:{},filters:{}};function _removeHook(e,t,i,s){var o,r,a;if(n[e][t])if(i)if(o=n[e][t],s)for(a=o.length;a--;)(r=o[a]).callback===i&&r.context===s&&o.splice(a,1);else for(a=o.length;a--;)o[a].callback===i&&o.splice(a,1);else n[e][t]=[]}function _addHook(e,t,i,s,o){var r={callback:i,priority:s,context:o},a=n[e][t];if(a){var d=!1;if(jQuery.each(a,(function(){if(this.callback===i)return d=!0,!1})),d)return;a.push(r),a=function _hookInsertSort(e){for(var t,n,i,s=1,o=e.length;s<o;s++){for(t=e[s],n=s;(i=e[n-1])&&i.priority>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,i){var s,o,r=n[e][t];if(!r)return"filters"===e&&i[0];if(o=r.length,"filters"===e)for(s=0;s<o;s++)i[0]=r[s].callback.apply(r[s].context,i);else for(s=0;s<o;s++)r[s].callback.apply(r[s].context,i);return"filters"!==e||i[0]}return e={removeFilter:function removeFilter(t,n){return"string"==typeof t&&_removeHook("filters",t,n),e},applyFilters:function applyFilters(){var n=t.call(arguments),i=n.shift();return"string"==typeof i?_runHook("filters",i,n):e},addFilter:function addFilter(t,n,i,s){return"string"==typeof t&&"function"==typeof n&&_addHook("filters",t,n,i=parseInt(i||10,10),s),e},removeAction:function removeAction(t,n){return"string"==typeof t&&_removeHook("actions",t,n),e},doAction:function doAction(){var n=t.call(arguments),i=n.shift();return"string"==typeof i&&_runHook("actions",i,n),e},addAction:function addAction(t,n,i,s){return"string"==typeof t&&"function"==typeof n&&_addHook("actions",t,n,i=parseInt(i||10,10),s),e}}}},3308:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;const matchUserAgent=e=>n.indexOf(e)>=0,n=navigator.userAgent,i=!!window.opr&&!!opr.addons||!!window.opera||matchUserAgent(" OPR/"),s=matchUserAgent("Firefox"),o=/^((?!chrome|android).)*safari/i.test(n)||/constructor/i.test(window.HTMLElement)||"[object SafariRemoteNotification]"===(!window.safari||"undefined"!=typeof safari&&safari.pushNotification).toString(),r=/Trident|MSIE/.test(n)&&!!document.documentMode,a=!r&&!!window.StyleMedia||matchUserAgent("Edg"),d=!!window.chrome&&matchUserAgent("Chrome")&&!(a||i),l=matchUserAgent("Chrome")&&!!window.CSS;var c={appleWebkit:matchUserAgent("AppleWebKit")&&!l,blink:l,chrome:d,edge:a,firefox:s,ie:r,mac:matchUserAgent("Macintosh"),opera:i,safari:o,webkit:matchUserAgent("AppleWebKit")};t.default=c},5107:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;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 i=n.getItem("elementor");i=i?JSON.parse(i):{},i.__expiration||(i.__expiration={});const s=i.__expiration;let o=[];e?s[e]&&(o=[e]):o=Object.keys(s);let r=!1;return o.forEach((e=>{new Date(s[e])<new Date&&(delete i[e],delete s[e],r=!0)})),r&&this.save(i,t.session),e?i[e]:i}set(e,t,n){n=n||{};const i=this.get(null,n);if(i[e]=t,n.lifetimeInSeconds){const t=new Date;t.setTime(t.getTime()+1e3*n.lifetimeInSeconds),i.__expiration[e]=t.getTime()}this.save(i,n.session)}save(e,t){let n;try{n=t?sessionStorage:localStorage}catch(e){return}n.setItem("elementor",JSON.stringify(e))}}t.default=_default},6046:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.Module{constructor(){super(),elementorFrontend.elementsHandler.attachHandler("text-path",(()=>n.e(48).then(n.bind(n,6468))))}}t.default=_default}},e=>{"use strict";e.O(0,[354],(()=>{return t=5654,e(e.s=t);var t}));e.O()}]);assets/js/app.min.js000064400000540344151327220410010371 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(()=>{var t,r,a,o,i={68553:()=>{},26359:()=>{},89905:()=>{},45362:()=>{},54189:()=>{},22269:()=>{},96351:()=>{},8167:()=>{},40604:()=>{},38055:()=>{},632:()=>{},42749:()=>{},99694:()=>{},70808:()=>{},39355:()=>{},56453:()=>{},3272:()=>{},45813:()=>{},18713:()=>{},80322:()=>{},82254:()=>{},1431:()=>{},53591:()=>{},89784:()=>{},20186:()=>{},90358:()=>{},64392:()=>{},3714:()=>{},75453:(t,r,a)=>{t.exports=a(7421)},59396:(t,r,a)=>{t.exports=a(70157)},32009:(t,r,a)=>{t.exports=a(89710)},15149:(t,r,a)=>{t.exports=a(66458)},38401:(t,r,a)=>{t.exports=a(14710)},92937:(t,r,a)=>{t.exports=a(23022)},67394:(t,r,a)=>{t.exports=a(43153)},38923:(t,r,a)=>{t.exports=a(8531)},23587:(t,r,a)=>{t.exports=a(32622)},63774:(t,r,a)=>{t.exports=a(27410)},95315:(t,r,a)=>{t.exports=a(19035)},82055:(t,r,a)=>{t.exports=a(58535)},83452:(t,r,a)=>{t.exports=a(97220)},28274:(t,r,a)=>{t.exports=a(65135)},14176:(t,r,a)=>{t.exports=a(34345)},75499:(t,r,a)=>{t.exports=a(43094)},78282:(t,r,a)=>{t.exports=a(17641)},41281:(t,r,a)=>{t.exports=a(19103)},50093:(t,r,a)=>{t.exports=a(39871)},93168:(t,r,a)=>{t.exports=a(89999)},72292:t=>{t.exports=function _arrayLikeToArray(t,r){(null==r||r>t.length)&&(r=t.length);for(var a=0,o=new Array(r);a<r;a++)o[a]=t[a];return o},t.exports.default=t.exports,t.exports.__esModule=!0},86870:(t,r,a)=>{var o=a(59396);t.exports=function _arrayWithHoles(t){if(o(t))return t},t.exports.default=t.exports,t.exports.__esModule=!0},35693:(t,r,a)=>{var o=a(59396),i=a(72292);t.exports=function _arrayWithoutHoles(t){if(o(t))return i(t)},t.exports.default=t.exports,t.exports.__esModule=!0},38852:t=>{t.exports=function _assertThisInitialized(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t},t.exports.default=t.exports,t.exports.__esModule=!0},11959:t=>{t.exports=function _classCallCheck(t,r){if(!(t instanceof r))throw new TypeError("Cannot call a class as a function")},t.exports.default=t.exports,t.exports.__esModule=!0},39041:(t,r,a)=>{var o=a(67394);function _defineProperties(t,r){for(var a=0;a<r.length;a++){var i=r[a];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),o(t,i.key,i)}}t.exports=function _createClass(t,r,a){return r&&_defineProperties(t.prototype,r),a&&_defineProperties(t,a),t},t.exports.default=t.exports,t.exports.__esModule=!0},74758:(t,r,a)=>{var o=a(41281),i=a(50093),l=a(59396),u=a(24594);t.exports=function _createForOfIteratorHelper(t,r){var a=void 0!==o&&t[i]||t["@@iterator"];if(!a){if(l(t)||(a=u(t))||r&&t&&"number"==typeof t.length){a&&(t=a);var c=0,p=function F(){};return{s:p,n:function n(){return c>=t.length?{done:!0}:{done:!1,value:t[c++]}},e:function e(t){throw t},f:p}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var d,m=!0,v=!1;return{s:function s(){a=a.call(t)},n:function n(){var t=a.next();return m=t.done,t},e:function e(t){v=!0,d=t},f:function f(){try{m||null==a.return||a.return()}finally{if(v)throw d}}}},t.exports.default=t.exports,t.exports.__esModule=!0},68537:(t,r,a)=>{var o=a(75499),i=a(44263),l=a(898),u=a(59771);t.exports=function _createSuper(t){var r=l();return function _createSuperInternal(){var a,l=i(t);if(r){var c=i(this).constructor;a=o(l,arguments,c)}else a=l.apply(this,arguments);return u(this,a)}},t.exports.default=t.exports,t.exports.__esModule=!0},18042:(t,r,a)=>{var o=a(67394);t.exports=function _defineProperty(t,r,a){return r in t?o(t,r,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[r]=a,t},t.exports.default=t.exports,t.exports.__esModule=!0},37959:(t,r,a)=>{var o=a(15149);function _extends(){return t.exports=_extends=o||function(t){for(var r=1;r<arguments.length;r++){var a=arguments[r];for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(t[o]=a[o])}return t},t.exports.default=t.exports,t.exports.__esModule=!0,_extends.apply(this,arguments)}t.exports=_extends,t.exports.default=t.exports,t.exports.__esModule=!0},76700:(t,r,a)=>{var o=a(78282),i=a(23587),l=a(49445);function _get(r,a,u){return"undefined"!=typeof Reflect&&o?(t.exports=_get=o,t.exports.default=t.exports,t.exports.__esModule=!0):(t.exports=_get=function _get(t,r,a){var o=l(t,r);if(o){var u=i(o,r);return u.get?u.get.call(a):u.value}},t.exports.default=t.exports,t.exports.__esModule=!0),_get(r,a,u||r)}t.exports=_get,t.exports.default=t.exports,t.exports.__esModule=!0},44263:(t,r,a)=>{var o=a(28274),i=a(82055);function _getPrototypeOf(r){return t.exports=_getPrototypeOf=o?i:function _getPrototypeOf(t){return t.__proto__||i(t)},t.exports.default=t.exports,t.exports.__esModule=!0,_getPrototypeOf(r)}t.exports=_getPrototypeOf,t.exports.default=t.exports,t.exports.__esModule=!0},77371:(t,r,a)=>{var o=a(38401),i=a(76870);t.exports=function _inherits(t,r){if("function"!=typeof r&&null!==r)throw new TypeError("Super expression must either be null or a function");t.prototype=o(r&&r.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),r&&i(t,r)},t.exports.default=t.exports,t.exports.__esModule=!0},67971:t=>{t.exports=function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}},t.exports.default=t.exports,t.exports.__esModule=!0},52369:(t,r,a)=>{var o=a(24596).default,i=a(93168),l=a(67394),u=a(23587);function _getRequireWildcardCache(t){if("function"!=typeof i)return null;var r=new i,a=new i;return(_getRequireWildcardCache=function _getRequireWildcardCache(t){return t?a:r})(t)}t.exports=function _interopRequireWildcard(t,r){if(!r&&t&&t.__esModule)return t;if(null===t||"object"!==o(t)&&"function"!=typeof t)return{default:t};var a=_getRequireWildcardCache(r);if(a&&a.has(t))return a.get(t);var i={},c=l&&u;for(var p in t)if("default"!==p&&Object.prototype.hasOwnProperty.call(t,p)){var d=c?u(t,p):null;d&&(d.get||d.set)?l(i,p,d):i[p]=t[p]}return i.default=t,a&&a.set(t,i),i},t.exports.default=t.exports,t.exports.__esModule=!0},898:(t,r,a)=>{var o=a(75499);t.exports=function _isNativeReflectConstruct(){if("undefined"==typeof Reflect||!o)return!1;if(o.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(o(Boolean,[],(function(){}))),!0}catch(t){return!1}},t.exports.default=t.exports,t.exports.__esModule=!0},95915:(t,r,a)=>{var o=a(41281),i=a(50093),l=a(75453);t.exports=function _iterableToArray(t){if(void 0!==o&&null!=t[i]||null!=t["@@iterator"])return l(t)},t.exports.default=t.exports,t.exports.__esModule=!0},79968:(t,r,a)=>{var o=a(41281),i=a(50093);t.exports=function _iterableToArrayLimit(t,r){var a=null==t?null:void 0!==o&&t[i]||t["@@iterator"];if(null!=a){var l,u,c=[],p=!0,d=!1;try{for(a=a.call(t);!(p=(l=a.next()).done)&&(c.push(l.value),!r||c.length!==r);p=!0);}catch(t){d=!0,u=t}finally{try{p||null==a.return||a.return()}finally{if(d)throw u}}return c}},t.exports.default=t.exports,t.exports.__esModule=!0},39198:t=>{t.exports=function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")},t.exports.default=t.exports,t.exports.__esModule=!0},84360:t=>{t.exports=function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")},t.exports.default=t.exports,t.exports.__esModule=!0},84899:(t,r,a)=>{var o=a(83452),i=a(95315),l=a(23587),u=a(63774),c=a(92937),p=a(67394),d=a(18042);function ownKeys(t,r){var a=o(t);if(i){var u=i(t);r&&(u=u.filter((function(r){return l(t,r).enumerable}))),a.push.apply(a,u)}return a}t.exports=function _objectSpread2(t){for(var r=1;r<arguments.length;r++){var a=null!=arguments[r]?arguments[r]:{};r%2?ownKeys(Object(a),!0).forEach((function(r){d(t,r,a[r])})):u?c(t,u(a)):ownKeys(Object(a)).forEach((function(r){p(t,r,l(a,r))}))}return t},t.exports.default=t.exports,t.exports.__esModule=!0},59771:(t,r,a)=>{var o=a(24596).default,i=a(38852);t.exports=function _possibleConstructorReturn(t,r){return!r||"object"!==o(r)&&"function"!=typeof r?i(t):r},t.exports.default=t.exports,t.exports.__esModule=!0},76870:(t,r,a)=>{var o=a(28274);function _setPrototypeOf(r,a){return t.exports=_setPrototypeOf=o||function _setPrototypeOf(t,r){return t.__proto__=r,t},t.exports.default=t.exports,t.exports.__esModule=!0,_setPrototypeOf(r,a)}t.exports=_setPrototypeOf,t.exports.default=t.exports,t.exports.__esModule=!0},47834:(t,r,a)=>{var o=a(86870),i=a(79968),l=a(24594),u=a(39198);t.exports=function _slicedToArray(t,r){return o(t)||i(t,r)||l(t,r)||u()},t.exports.default=t.exports,t.exports.__esModule=!0},49445:(t,r,a)=>{var o=a(44263);t.exports=function _superPropBase(t,r){for(;!Object.prototype.hasOwnProperty.call(t,r)&&null!==(t=o(t)););return t},t.exports.default=t.exports,t.exports.__esModule=!0},74846:(t,r,a)=>{var o=a(35693),i=a(95915),l=a(24594),u=a(84360);t.exports=function _toConsumableArray(t){return o(t)||i(t)||l(t)||u()},t.exports.default=t.exports,t.exports.__esModule=!0},24596:(t,r,a)=>{var o=a(41281),i=a(50093);function _typeof(r){return"function"==typeof o&&"symbol"==typeof i?(t.exports=_typeof=function _typeof(t){return typeof t},t.exports.default=t.exports,t.exports.__esModule=!0):(t.exports=_typeof=function _typeof(t){return t&&"function"==typeof o&&t.constructor===o&&t!==o.prototype?"symbol":typeof t},t.exports.default=t.exports,t.exports.__esModule=!0),_typeof(r)}t.exports=_typeof,t.exports.default=t.exports,t.exports.__esModule=!0},24594:(t,r,a)=>{var o=a(75453),i=a(72292);t.exports=function _unsupportedIterableToArray(t,r){if(t){if("string"==typeof t)return i(t,r);var a=Object.prototype.toString.call(t).slice(8,-1);return"Object"===a&&t.constructor&&(a=t.constructor.name),"Map"===a||"Set"===a?o(t):"Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?i(t,r):void 0}},t.exports.default=t.exports,t.exports.__esModule=!0},50927:(t,r,a)=>{"use strict";a.r(r),a.d(r,{Link:()=>Q,Location:()=>A,LocationProvider:()=>B,Match:()=>re,Redirect:()=>te,Router:()=>H,ServerLocation:()=>q,createHistory:()=>S,createMemorySource:()=>O,globalHistory:()=>R,isRedirect:()=>Z,matchPath:()=>v,navigate:()=>I,redirectTo:()=>X,useLocation:()=>ne,useMatch:()=>ie,useNavigate:()=>ae,useParams:()=>oe});var o=a(63804),i=a.n(o),l=(a(23615),a(3996)),u=a.n(l),c=a(68189),p=a.n(c);function componentWillMount(){var t=this.constructor.getDerivedStateFromProps(this.props,this.state);null!=t&&this.setState(t)}function componentWillReceiveProps(t){this.setState(function updater(r){var a=this.constructor.getDerivedStateFromProps(t,r);return null!=a?a:null}.bind(this))}function componentWillUpdate(t,r){try{var a=this.props,o=this.state;this.props=t,this.state=r,this.__reactInternalSnapshotFlag=!0,this.__reactInternalSnapshot=this.getSnapshotBeforeUpdate(a,o)}finally{this.props=a,this.state=o}}componentWillMount.__suppressDeprecationWarning=!0,componentWillReceiveProps.__suppressDeprecationWarning=!0,componentWillUpdate.__suppressDeprecationWarning=!0;var d=function startsWith(t,r){return t.substr(0,r.length)===r},m=function pick(t,r){for(var a=void 0,o=void 0,i=r.split("?")[0],l=w(i),c=""===l[0],p=E(t),d=0,m=p.length;d<m;d++){var v=!1,h=p[d].route;if(h.default)o={route:h,params:{},uri:r};else{for(var g=w(h.path),_={},b=Math.max(l.length,g.length),C=0;C<b;C++){var T=g[C],P=l[C];if(x(T)){_[T.slice(1)||"*"]=l.slice(C).map(decodeURIComponent).join("/");break}if(void 0===P){v=!0;break}var S=y.exec(T);if(S&&!c){-1===N.indexOf(S[1])||u()(!1);var O=decodeURIComponent(P);_[S[1]]=O}else if(T!==P){v=!0;break}}if(!v){a={route:h,params:_,uri:"/"+l.slice(0,C).join("/")};break}}}return a||o||null},v=function match(t,r){return m([{path:t}],r)},h=function resolve(t,r){if(d(t,"/"))return t;var a=t.split("?"),o=a[0],i=a[1],l=r.split("?")[0],u=w(o),c=w(l);if(""===u[0])return C(l,i);if(!d(u[0],".")){var p=c.concat(u).join("/");return C(("/"===l?"":"/")+p,i)}for(var m=c.concat(u),v=[],h=0,g=m.length;h<g;h++){var y=m[h];".."===y?v.pop():"."!==y&&v.push(y)}return C("/"+v.join("/"),i)},g=function insertParams(t,r){var a=t.split("?"),o=a[0],i=a[1],l=void 0===i?"":i,u="/"+w(o).map((function(t){var a=y.exec(t);return a?r[a[1]]:t})).join("/"),c=r.location,p=(c=void 0===c?{}:c).search,d=(void 0===p?"":p).split("?")[1]||"";return u=C(u,l,d)},y=/^:(.+)/,_=function isDynamic(t){return y.test(t)},x=function isSplat(t){return t&&"*"===t[0]},b=function rankRoute(t,r){return{route:t,score:t.default?0:w(t.path).reduce((function(t,r){return t+=4,!function isRootSegment(t){return""===t}(r)?_(r)?t+=2:x(r)?t-=5:t+=3:t+=1,t}),0),index:r}},E=function rankRoutes(t){return t.map(b).sort((function(t,r){return t.score<r.score?1:t.score>r.score?-1:t.index-r.index}))},w=function segmentize(t){return t.replace(/(^\/+|\/+$)/g,"").split("/")},C=function addQuery(t){for(var r=arguments.length,a=Array(r>1?r-1:0),o=1;o<r;o++)a[o-1]=arguments[o];return t+((a=a.filter((function(t){return t&&t.length>0})))&&a.length>0?"?"+a.join("&"):"")},N=["uri","path"],T=Object.assign||function(t){for(var r=1;r<arguments.length;r++){var a=arguments[r];for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(t[o]=a[o])}return t},P=function getLocation(t){var r=t.location,a=r.search,o=r.hash,i=r.href,l=r.origin,u=r.protocol,c=r.host,p=r.hostname,d=r.port,m=t.location.pathname;!m&&i&&M&&(m=new URL(i).pathname);return{pathname:encodeURI(decodeURI(m)),search:a,hash:o,href:i,origin:l,protocol:u,host:c,hostname:p,port:d,state:t.history.state,key:t.history.state&&t.history.state.key||"initial"}},S=function createHistory(t,r){var a=[],o=P(t),i=!1,l=function resolveTransition(){};return{get location(){return o},get transitioning(){return i},_onTransitionComplete:function _onTransitionComplete(){i=!1,l()},listen:function listen(r){a.push(r);var i=function popstateListener(){o=P(t),r({location:o,action:"POP"})};return t.addEventListener("popstate",i),function(){t.removeEventListener("popstate",i),a=a.filter((function(t){return t!==r}))}},navigate:function navigate(r){var u=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},c=u.state,p=u.replace,d=void 0!==p&&p;if("number"==typeof r)t.history.go(r);else{c=T({},c,{key:Date.now()+""});try{i||d?t.history.replaceState(c,null,r):t.history.pushState(c,null,r)}catch(a){t.location[d?"replace":"assign"](r)}}o=P(t),i=!0;var m=new Promise((function(t){return l=t}));return a.forEach((function(t){return t({location:o,action:"PUSH"})})),m}}},O=function createMemorySource(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/",r=t.indexOf("?"),a={pathname:r>-1?t.substr(0,r):t,search:r>-1?t.substr(r):""},o=0,i=[a],l=[null];return{get location(){return i[o]},addEventListener:function addEventListener(t,r){},removeEventListener:function removeEventListener(t,r){},history:{get entries(){return i},get index(){return o},get state(){return l[o]},pushState:function pushState(t,r,a){var u=a.split("?"),c=u[0],p=u[1],d=void 0===p?"":p;o++,i.push({pathname:c,search:d.length?"?"+d:d}),l.push(t)},replaceState:function replaceState(t,r,a){var u=a.split("?"),c=u[0],p=u[1],d=void 0===p?"":p;i[o]={pathname:c,search:d},l[o]=t},go:function go(t){var r=o+t;r<0||r>l.length-1||(o=r)}}}},M=!("undefined"==typeof window||!window.document||!window.document.createElement),R=S(function getSource(){return M?window:O()}()),I=R.navigate,D=Object.assign||function(t){for(var r=1;r<arguments.length;r++){var a=arguments[r];for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(t[o]=a[o])}return t};function _objectWithoutProperties(t,r){var a={};for(var o in t)r.indexOf(o)>=0||Object.prototype.hasOwnProperty.call(t,o)&&(a[o]=t[o]);return a}function _classCallCheck(t,r){if(!(t instanceof r))throw new TypeError("Cannot call a class as a function")}function _possibleConstructorReturn(t,r){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!r||"object"!=typeof r&&"function"!=typeof r?t:r}function _inherits(t,r){if("function"!=typeof r&&null!==r)throw new TypeError("Super expression must either be null or a function, not "+typeof r);t.prototype=Object.create(r&&r.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),r&&(Object.setPrototypeOf?Object.setPrototypeOf(t,r):t.__proto__=r)}var j=function createNamedContext(t,r){var a=p()(r);return a.displayName=t,a},L=j("Location"),A=function Location(t){var r=t.children;return i().createElement(L.Consumer,null,(function(t){return t?r(t):i().createElement(B,null,r)}))},B=function(t){function LocationProvider(){var r,a;_classCallCheck(this,LocationProvider);for(var o=arguments.length,i=Array(o),l=0;l<o;l++)i[l]=arguments[l];return r=a=_possibleConstructorReturn(this,t.call.apply(t,[this].concat(i))),a.state={context:a.getContext(),refs:{unlisten:null}},_possibleConstructorReturn(a,r)}return _inherits(LocationProvider,t),LocationProvider.prototype.getContext=function getContext(){var t=this.props.history;return{navigate:t.navigate,location:t.location}},LocationProvider.prototype.componentDidCatch=function componentDidCatch(t,r){if(!Z(t))throw t;(0,this.props.history.navigate)(t.uri,{replace:!0})},LocationProvider.prototype.componentDidUpdate=function componentDidUpdate(t,r){r.context.location!==this.state.context.location&&this.props.history._onTransitionComplete()},LocationProvider.prototype.componentDidMount=function componentDidMount(){var t=this,r=this.state.refs,a=this.props.history;a._onTransitionComplete(),r.unlisten=a.listen((function(){Promise.resolve().then((function(){requestAnimationFrame((function(){t.unmounted||t.setState((function(){return{context:t.getContext()}}))}))}))}))},LocationProvider.prototype.componentWillUnmount=function componentWillUnmount(){var t=this.state.refs;this.unmounted=!0,t.unlisten()},LocationProvider.prototype.render=function render(){var t=this.state.context,r=this.props.children;return i().createElement(L.Provider,{value:t},"function"==typeof r?r(t):r||null)},LocationProvider}(i().Component);B.defaultProps={history:R};var q=function ServerLocation(t){var r=t.url,a=t.children,o=r.indexOf("?"),l=void 0,u="";return o>-1?(l=r.substring(0,o),u=r.substring(o)):l=r,i().createElement(L.Provider,{value:{location:{pathname:l,search:u,hash:""},navigate:function navigate(){throw new Error("You can't call navigate on the server.")}}},a)},W=j("Base",{baseuri:"/",basepath:"/"}),H=function Router(t){return i().createElement(W.Consumer,null,(function(r){return i().createElement(A,null,(function(a){return i().createElement(U,D({},r,a,t))}))}))},U=function(t){function RouterImpl(){return _classCallCheck(this,RouterImpl),_possibleConstructorReturn(this,t.apply(this,arguments))}return _inherits(RouterImpl,t),RouterImpl.prototype.render=function render(){var t=this.props,r=t.location,a=t.navigate,o=t.basepath,l=t.primary,u=t.children,c=(t.baseuri,t.component),p=void 0===c?"div":c,d=_objectWithoutProperties(t,["location","navigate","basepath","primary","children","baseuri","component"]),v=i().Children.toArray(u).reduce((function(t,r){var a=se(o)(r);return t.concat(a)}),[]),g=r.pathname,y=m(v,g);if(y){var _=y.params,x=y.uri,b=y.route,E=y.route.value;o=b.default?o:b.path.replace(/\*$/,"");var w=D({},_,{uri:x,location:r,navigate:function navigate(t,r){return a(h(t,x),r)}}),C=i().cloneElement(E,w,E.props.children?i().createElement(H,{location:r,primary:l},E.props.children):void 0),N=l?V:p,T=l?D({uri:x,location:r,component:p},d):d;return i().createElement(W.Provider,{value:{baseuri:x,basepath:o}},i().createElement(N,T,C))}return null},RouterImpl}(i().PureComponent);U.defaultProps={primary:!0};var K=j("Focus"),V=function FocusHandler(t){var r=t.uri,a=t.location,o=t.component,l=_objectWithoutProperties(t,["uri","location","component"]);return i().createElement(K.Consumer,null,(function(t){return i().createElement($,D({},l,{component:o,requestFocus:t,uri:r,location:a}))}))},z=!0,G=0,$=function(t){function FocusHandlerImpl(){var r,a;_classCallCheck(this,FocusHandlerImpl);for(var o=arguments.length,i=Array(o),l=0;l<o;l++)i[l]=arguments[l];return r=a=_possibleConstructorReturn(this,t.call.apply(t,[this].concat(i))),a.state={},a.requestFocus=function(t){!a.state.shouldFocus&&t&&t.focus()},_possibleConstructorReturn(a,r)}return _inherits(FocusHandlerImpl,t),FocusHandlerImpl.getDerivedStateFromProps=function getDerivedStateFromProps(t,r){if(null==r.uri)return D({shouldFocus:!0},t);var a=t.uri!==r.uri,o=r.location.pathname!==t.location.pathname&&t.location.pathname===t.uri;return D({shouldFocus:a||o},t)},FocusHandlerImpl.prototype.componentDidMount=function componentDidMount(){G++,this.focus()},FocusHandlerImpl.prototype.componentWillUnmount=function componentWillUnmount(){0===--G&&(z=!0)},FocusHandlerImpl.prototype.componentDidUpdate=function componentDidUpdate(t,r){t.location!==this.props.location&&this.state.shouldFocus&&this.focus()},FocusHandlerImpl.prototype.focus=function focus(){var t=this.props.requestFocus;t?t(this.node):z?z=!1:this.node&&(this.node.contains(document.activeElement)||this.node.focus())},FocusHandlerImpl.prototype.render=function render(){var t=this,r=this.props,a=(r.children,r.style),o=(r.requestFocus,r.component),l=void 0===o?"div":o,u=(r.uri,r.location,_objectWithoutProperties(r,["children","style","requestFocus","component","uri","location"]));return i().createElement(l,D({style:D({outline:"none"},a),tabIndex:"-1",ref:function ref(r){return t.node=r}},u),i().createElement(K.Provider,{value:this.requestFocus},this.props.children))},FocusHandlerImpl}(i().Component);!function polyfill(t){var r=t.prototype;if(!r||!r.isReactComponent)throw new Error("Can only polyfill class components");if("function"!=typeof t.getDerivedStateFromProps&&"function"!=typeof r.getSnapshotBeforeUpdate)return t;var a=null,o=null,i=null;if("function"==typeof r.componentWillMount?a="componentWillMount":"function"==typeof r.UNSAFE_componentWillMount&&(a="UNSAFE_componentWillMount"),"function"==typeof r.componentWillReceiveProps?o="componentWillReceiveProps":"function"==typeof r.UNSAFE_componentWillReceiveProps&&(o="UNSAFE_componentWillReceiveProps"),"function"==typeof r.componentWillUpdate?i="componentWillUpdate":"function"==typeof r.UNSAFE_componentWillUpdate&&(i="UNSAFE_componentWillUpdate"),null!==a||null!==o||null!==i){var l=t.displayName||t.name,u="function"==typeof t.getDerivedStateFromProps?"getDerivedStateFromProps()":"getSnapshotBeforeUpdate()";throw Error("Unsafe legacy lifecycles will not be called for components using new component APIs.\n\n"+l+" uses "+u+" but also contains the following legacy lifecycles:"+(null!==a?"\n  "+a:"")+(null!==o?"\n  "+o:"")+(null!==i?"\n  "+i:"")+"\n\nThe above lifecycles should be removed. Learn more about this warning here:\nhttps://fb.me/react-async-component-lifecycle-hooks")}if("function"==typeof t.getDerivedStateFromProps&&(r.componentWillMount=componentWillMount,r.componentWillReceiveProps=componentWillReceiveProps),"function"==typeof r.getSnapshotBeforeUpdate){if("function"!=typeof r.componentDidUpdate)throw new Error("Cannot polyfill getSnapshotBeforeUpdate() for components that do not define componentDidUpdate() on the prototype");r.componentWillUpdate=componentWillUpdate;var c=r.componentDidUpdate;r.componentDidUpdate=function componentDidUpdatePolyfill(t,r,a){var o=this.__reactInternalSnapshotFlag?this.__reactInternalSnapshot:a;c.call(this,t,r,o)}}return t}($);var Y=function k(){},J=i().forwardRef;void 0===J&&(J=function forwardRef(t){return t});var Q=J((function(t,r){var a=t.innerRef,o=_objectWithoutProperties(t,["innerRef"]);return i().createElement(W.Consumer,null,(function(t){t.basepath;var l=t.baseuri;return i().createElement(A,null,(function(t){var u=t.location,c=t.navigate,p=o.to,m=o.state,v=o.replace,g=o.getProps,y=void 0===g?Y:g,_=_objectWithoutProperties(o,["to","state","replace","getProps"]),x=h(p,l),b=encodeURI(x),E=u.pathname===b,w=d(u.pathname,b);return i().createElement("a",D({ref:r||a,"aria-current":E?"page":void 0},_,y({isCurrent:E,isPartiallyCurrent:w,href:x,location:u}),{href:x,onClick:function onClick(t){if(_.onClick&&_.onClick(t),ue(t)){t.preventDefault();var r=v;if("boolean"!=typeof v&&E){var a=D({},u.state),o=(a.key,_objectWithoutProperties(a,["key"]));r=function shallowCompare(t,r){var a=Object.keys(t);return a.length===Object.keys(r).length&&a.every((function(a){return r.hasOwnProperty(a)&&t[a]===r[a]}))}(D({},m),o)}c(x,{state:m,replace:r})}}}))}))}))}));function RedirectRequest(t){this.uri=t}Q.displayName="Link";var Z=function isRedirect(t){return t instanceof RedirectRequest},X=function redirectTo(t){throw new RedirectRequest(t)},ee=function(t){function RedirectImpl(){return _classCallCheck(this,RedirectImpl),_possibleConstructorReturn(this,t.apply(this,arguments))}return _inherits(RedirectImpl,t),RedirectImpl.prototype.componentDidMount=function componentDidMount(){var t=this.props,r=t.navigate,a=t.to,o=(t.from,t.replace),i=void 0===o||o,l=t.state,u=(t.noThrow,t.baseuri),c=_objectWithoutProperties(t,["navigate","to","from","replace","state","noThrow","baseuri"]);Promise.resolve().then((function(){var t=h(a,u);r(g(t,c),{replace:i,state:l})}))},RedirectImpl.prototype.render=function render(){var t=this.props,r=(t.navigate,t.to),a=(t.from,t.replace,t.state,t.noThrow),o=t.baseuri,i=_objectWithoutProperties(t,["navigate","to","from","replace","state","noThrow","baseuri"]),l=h(r,o);return a||X(g(l,i)),null},RedirectImpl}(i().Component),te=function Redirect(t){return i().createElement(W.Consumer,null,(function(r){var a=r.baseuri;return i().createElement(A,null,(function(r){return i().createElement(ee,D({},r,{baseuri:a},t))}))}))},re=function Match(t){var r=t.path,a=t.children;return i().createElement(W.Consumer,null,(function(t){var o=t.baseuri;return i().createElement(A,null,(function(t){var i=t.navigate,l=t.location,u=h(r,o),c=v(u,l.pathname);return a({navigate:i,location:l,match:c?D({},c.params,{uri:c.uri,path:r}):null})}))}))},ne=function useLocation(){var t=(0,o.useContext)(L);if(!t)throw new Error("useLocation hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router");return t.location},ae=function useNavigate(){var t=(0,o.useContext)(L);if(!t)throw new Error("useNavigate hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router");return t.navigate},oe=function useParams(){var t=(0,o.useContext)(W);if(!t)throw new Error("useParams hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router");var r=ne(),a=v(t.basepath,r.pathname);return a?a.params:null},ie=function useMatch(t){if(!t)throw new Error("useMatch(path: string) requires an argument of a string to match against");var r=(0,o.useContext)(W);if(!r)throw new Error("useMatch hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router");var a=ne(),i=h(t,r.baseuri),l=v(i,a.pathname);return l?D({},l.params,{uri:l.uri,path:t}):null},le=function stripSlashes(t){return t.replace(/(^\/+|\/+$)/g,"")},se=function createRoute(t){return function(r){if(!r)return null;if(r.type===i().Fragment&&r.props.children)return i().Children.map(r.props.children,createRoute(t));if(r.props.path||r.props.default||r.type===te||u()(!1),r.type!==te||r.props.from&&r.props.to||u()(!1),r.type!==te||function validateRedirect(t,r){var a=function filter(t){return _(t)};return w(t).filter(a).sort().join("/")===w(r).filter(a).sort().join("/")}(r.props.from,r.props.to)||u()(!1),r.props.default)return{value:r,default:!0};var a=r.type===te?r.props.from:r.props.path,o="/"===a?t:le(t)+"/"+le(a);return{value:r,default:r.props.default,path:r.props.children?le(o)+"/*":o}}},ue=function shouldNavigate(t){return!t.defaultPrevented&&0===t.button&&!(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey)}},11804:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=function App(){return u.default.appHistory=(0,c.createHistory)((0,p.createHashSource)()),l.default.createElement(v.default,null,l.default.createElement(c.LocationProvider,{history:u.default.appHistory},l.default.createElement(h,{fallback:null},l.default.createElement(c.Router,null,u.default.getRoutes(),l.default.createElement(m.default,{path:"/"}),l.default.createElement(d.default,{default:!0})))))};var l=i(a(63804)),u=i(a(20485)),c=a(50927),p=a(22634),d=i(a(7008)),m=i(a(61858)),v=i(a(31735));a(68553);var h=l.default.Suspense},45357:(t,r,a)=>{"use strict";a(67394)(r,"__esModule",{value:!0}),r.default=function useAction(){return{backToDashboard:function backToDashboard(){window.top===window?window.top.location=elementorAppConfig.return_url.includes(elementorAppConfig.login_url)?elementorAppConfig.admin_url:elementorAppConfig.return_url:window.top.$e.run("app/close")}}},a(3777),a(38081)},51432:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=function useAjax(){var t=(0,c.useState)(null),r=(0,u.default)(t,2),a=r[0],o=r[1],i="initial",p={status:i,isComplete:!1,response:null},d=(0,c.useState)(p),m=(0,u.default)(d,2),v=m[0],h=m[1],g={reset:function reset(){return h(i)}};return(0,c.useEffect)((function(){if(a){var t=new FormData;if(a.data){for(var r in a.data)t.append(r,a.data[r]);a.data.nonce||t.append("nonce",elementorCommon.config.ajax.nonce)}var o=(0,l.default)((0,l.default)({type:"post",url:elementorCommon.config.ajax.url,headers:{},cache:!1,contentType:!1,processData:!1},a),{},{data:t,success:function success(t){var r=t.success?"success":"error";h((function(a){return(0,l.default)((0,l.default)({},a),{},{status:r,response:null==t?void 0:t.data})}))},error:function error(){h((function(t){return(0,l.default)((0,l.default)({},t),{},{status:"error"})}))},complete:function complete(){h((function(t){return(0,l.default)((0,l.default)({},t),{},{isComplete:!0})}))}});jQuery.ajax(o)}}),[a]),{ajax:a,setAjax:o,ajaxState:v,ajaxActions:g}};var l=i(a(84899)),u=i(a(47834)),c=a(63804)},4801:(t,r,a)=>{"use strict";var o=a(18194).__;a(67394)(r,"__esModule",{value:!0}),r.default=function usePageTitle(t){var r=t.title,a=t.prefix;(0,i.useEffect)((function(){a||(a=o("Elementor","elementor")),document.title="".concat(a," | ").concat(r)}),[r,a])};var i=a(63804)},32161:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=Content;var u=l(a(63804));function Content(t){return u.default.createElement("main",{className:"eps-app__content ".concat(t.className)},t.children)}Content.propTypes={children:o.any,className:o.string},Content.defaultProps={className:""}},63679:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=Footer;var u=l(a(63804));function Footer(t){return u.default.createElement("footer",{className:"eps-app__footer"},t.children)}Footer.propTypes={children:o.object}},59175:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var l=i(a(15149)),u=i(a(11959)),c=i(a(39041)),p=i(a(76700)),d=i(a(44263)),m=i(a(77371)),v=i(a(68537)),h=i(a(18042)),g=i(a(72745)),y=function(t){(0,m.default)(Button,t);var r=(0,v.default)(Button);function Button(){return(0,u.default)(this,Button),r.apply(this,arguments)}return(0,c.default)(Button,[{key:"getCssId",value:function getCssId(){return"eps-app-header-btn-"+(0,p.default)((0,d.default)(Button.prototype),"getCssId",this).call(this)}},{key:"getClassName",value:function getClassName(){return this.props.includeHeaderBtnClass?"eps-app__header-btn "+(0,p.default)((0,d.default)(Button.prototype),"getClassName",this).call(this):(0,p.default)((0,d.default)(Button.prototype),"getClassName",this).call(this)}}]),Button}(g.default);r.default=y,(0,h.default)(y,"defaultProps",(0,l.default)({},g.default.defaultProps,{hideText:!0,includeHeaderBtnClass:!0}))},50888:(t,r,a)=>{"use strict";var o=a(18194).__,i=a(23615),l=a(67394),u=a(67971);l(r,"__esModule",{value:!0}),r.default=HeaderButtons;var c=u(a(63804)),p=u(a(37959));a(90286);var d=u(a(45357)),m=u(a(59175));function HeaderButtons(t){var r=(0,d.default)(),a="";if(t.buttons.length){var i=t.buttons.map((function(t){return c.default.createElement(m.default,(0,p.default)({key:t.id},t))}));a=c.default.createElement(c.default.Fragment,null,i)}return c.default.createElement("div",{className:"eps-app__header-buttons"},c.default.createElement(m.default,{text:o("Close","elementor"),icon:"eicon-close",className:"eps-app__close-button",onClick:r.backToDashboard}),a)}HeaderButtons.propTypes={buttons:i.arrayOf(i.object)},HeaderButtons.defaultProps={buttons:[]}},3511:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=Header;var u=l(a(63804)),c=l(a(37959)),p=l(a(57390)),d=l(a(50888)),m=l(a(4801));function Header(t){(0,m.default)({title:t.title});var r="span",a={};return t.titleRedirectRoute&&(r="a",a={href:"#".concat(t.titleRedirectRoute),target:"_self"}),u.default.createElement(p.default,{container:!0,alignItems:"center",justify:"space-between",className:"eps-app__header"},u.default.createElement(r,(0,c.default)({className:"eps-app__logo-title-wrapper"},a),u.default.createElement("i",{className:"eps-app__logo eicon-elementor"}),u.default.createElement("h1",{className:"eps-app__title"},t.title)),u.default.createElement(d.default,{buttons:t.buttons}))}Header.propTypes={title:o.string,titleRedirectRoute:o.string,buttons:o.arrayOf(o.object)},Header.defaultProps={buttons:[]}},94295:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=Page;var u=l(a(63804)),c=l(a(3511)),p=l(a(8296)),d=l(a(32161)),m=l(a(63679));function Page(t){return u.default.createElement("div",{className:"eps-app__lightbox ".concat(t.className)},u.default.createElement("div",{className:"eps-app"},u.default.createElement(c.default,{title:t.title,buttons:t.headerButtons,titleRedirectRoute:t.titleRedirectRoute}),u.default.createElement("div",{className:"eps-app__main"},function AppSidebar(){if(t.sidebar)return u.default.createElement(p.default,null,t.sidebar)}(),u.default.createElement(d.default,null,t.content)),function AppFooter(){if(t.footer)return u.default.createElement(m.default,null,t.footer)}()))}Page.propTypes={title:o.string,titleRedirectRoute:o.string,className:o.string,headerButtons:o.arrayOf(o.object),sidebar:o.object,content:o.object.isRequired,footer:o.object},Page.defaultProps={className:""}},8296:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=Sidebar;var u=l(a(63804));function Sidebar(t){return u.default.createElement("div",{className:"eps-app__sidebar"},t.children)}Sidebar.propTypes={children:o.object}},78120:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=CollapseContent;var u=l(a(63804));function CollapseContent(t){return u.default.createElement("div",{className:"e-app-collapse-content"},t.children)}CollapseContent.propTypes={className:o.string,children:o.any},CollapseContent.defaultProps={className:""}},61664:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.CollapseContext=void 0;var l=i(a(63804)).default.createContext();r.CollapseContext=l},7462:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971),u=a(52369);i(r,"__esModule",{value:!0}),r.default=CollapseToggle;var c=u(a(63804)),p=l(a(18042)),d=a(47224),m=a(61664);function CollapseToggle(t){var r=(0,c.useContext)(m.CollapseContext),a={"--e-app-collapse-toggle-icon-spacing":(0,d.pxToRem)(t.iconSpacing)},o="e-app-collapse-toggle",i=[o,(0,p.default)({},o+"--active",t.active)],l={style:a,className:(0,d.arrayToClassName)(i)};return t.active&&(l.onClick=function(){return r.toggle()}),c.default.createElement("div",l,t.children,t.active&&t.showIcon&&c.default.createElement("i",{className:"eicon-caret-down e-app-collapse-toggle__icon"}))}CollapseToggle.propTypes={className:o.string,iconSpacing:o.number,showIcon:o.bool,active:o.bool,children:o.any},CollapseToggle.defaultProps={className:"",iconSpacing:20,showIcon:!0,active:!0}},48017:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971),u=a(52369);i(r,"__esModule",{value:!0}),r.default=Collapse;var c=u(a(63804)),p=l(a(18042)),d=l(a(47834)),m=a(47224),v=a(61664),h=l(a(7462)),g=l(a(78120));function Collapse(t){var r=(0,c.useState)(t.isOpened),a=(0,d.default)(r,2),o=a[0],i=a[1],l="e-app-collapse",u=[l,t.className,(0,p.default)({},"e-app-collapse--opened",o)];return(0,c.useEffect)((function(){t.isOpened!==o&&i(t.isOpened)}),[t.isOpened]),(0,c.useEffect)((function(){t.onChange&&t.onChange(o)}),[o]),c.default.createElement(v.CollapseContext.Provider,{value:{toggle:function toggle(){return i((function(t){return!t}))}}},c.default.createElement("div",{className:(0,m.arrayToClassName)(u)},t.children))}a(26359),Collapse.propTypes={className:o.string,isOpened:o.bool,onChange:o.func,children:o.oneOfType([o.node,o.arrayOf(o.node)])},Collapse.defaultProps={className:"",isOpened:!1},Collapse.Toggle=h.default,Collapse.Content=g.default},5199:(t,r,a)=>{"use strict";var o=a(23615),i=a(18194).__,l=a(67394),u=a(67971);l(r,"__esModule",{value:!0}),r.default=DashboardButton;var c=u(a(63804)),p=u(a(37959)),d=u(a(72745)),m=u(a(45357)),v=a(47224);function DashboardButton(t){var r=(0,m.default)(),a=["e-app-dashboard-button",t.className];return c.default.createElement(d.default,(0,p.default)({},t,{className:(0,v.arrayToClassName)(a),text:t.text,onClick:r.backToDashboard}))}DashboardButton.propTypes={className:o.string,text:o.string},DashboardButton.defaultProps={className:"",variant:"contained",color:"primary",text:i("Back to dashboard","elementor")}},98063:(t,r,a)=>{"use strict";var o=a(23615),i=a(18194).__,l=a(67394),u=a(67971);l(r,"__esModule",{value:!0}),r.default=GoProButton;var c=u(a(63804)),p=u(a(37959)),d=u(a(72745)),m=a(47224);function GoProButton(t){var r=["e-app-go-pro-button",t.className];return c.default.createElement(d.default,(0,p.default)({},t,{className:(0,m.arrayToClassName)(r),text:t.text}))}GoProButton.propTypes={className:o.string,text:o.string},GoProButton.defaultProps={className:"",variant:"contained",size:"sm",color:"cta",target:"_blank",rel:"noopener noreferrer",text:i("Go Pro","elementor")}},90329:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(52369),u=a(67971);i(r,"__esModule",{value:!0}),r.default=Tooltip;var c=u(a(47834)),p=l(a(63804)),d=a(47224);function Tooltip(t){var r=["e-app-tooltip",t.className],a=(0,p.useRef)(null),o=(0,p.useRef)(!1),i=t.hasOwnProperty("show"),l=(0,p.useState)(!1),u=(0,c.default)(l,2),m=u[0],v=u[1],h=(0,p.useState)(!1),g=(0,c.default)(h,2),y=g[0],_=g[1],x={trigger:i?"manual":"hover",gravity:{top:"s",right:"w",down:"n",left:"e"}[t.direction],offset:t.offset,title:function title(){return t.title}},b=function setTipsy(){var t=jQuery(a.current);if(t.tipsy(x),i){var r=y?"show":"hide";t.tipsy(r)}};return(0,p.useEffect)((function(){return t.disabled||(o.current=!1,import("".concat(elementorCommon.config.urls.assets,"lib/tipsy/tipsy.min.js?ver=1.0.0")).then((function(){o.current||(m?b():v(!0))}))),function(){t.disabled||(o.current=!0,jQuery(".tipsy:last").remove())}}),[t.disabled]),(0,p.useEffect)((function(){m&&b()}),[m,y]),(0,p.useEffect)((function(){t.disabled||t.show===y||_(t.show)}),[t.show]),p.default.createElement(t.tag,{className:(0,d.arrayToClassName)(r),ref:a},t.children)}Tooltip.propTypes={className:o.string,offset:o.number,show:o.bool,direction:o.oneOf(["top","right","left","down"]),tag:o.string.isRequired,title:o.string.isRequired,disabled:o.bool,children:o.any},Tooltip.defaultProps={className:"",offset:10,direction:"top",disabled:!1}},54609:(t,r,a)=>{"use strict";var o=a(23615),i=a(18194).__,l=a(67394),u=a(67971),c=a(52369);l(r,"__esModule",{value:!0}),r.default=UploadFile;var p=c(a(63804));a(90286);var d=u(a(72745)),m=a(47224);function UploadFile(t){var r=(0,p.useRef)(null),a=["e-app-upload-file",t.className];return p.default.createElement("div",{className:(0,m.arrayToClassName)(a)},p.default.createElement("input",{ref:r,type:"file",accept:t.filetypes.map((function(t){return"."+t})).join(", "),className:"e-app-upload-file__input",onChange:function onChange(a){var o=a.target.files[0];o&&(0,m.isOneOf)(o.type,t.filetypes)?t.onFileSelect(o,a):(r.current.value="",t.onError())}}),p.default.createElement(d.default,{className:"e-app-upload-file__button",text:t.text,variant:"contained",color:"primary",size:"lg",hideText:t.isLoading,icon:t.isLoading?"eicon-loading eicon-animation-spin":"",onClick:function onClick(){t.isLoading||r.current.click()}}))}a(89905),UploadFile.propTypes={className:o.string,text:o.string,onFileSelect:o.func,isLoading:o.bool,filetypes:o.array.isRequired,onError:o.func},UploadFile.defaultProps={className:"",text:i("Select File","elementor"),onError:function onError(){}}},20857:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=DropZone;var u=l(a(63804)),c=l(a(37959)),p=a(47224),d=l(a(54609)),m=l(a(94789)),v=l(a(69722)),h=l(a(80957)),g=l(a(36357));function DropZone(t){var r=["e-app-drop-zone",t.className],a={onDrop:function onDrop(r){if(!t.isLoading){var a=r.dataTransfer.files[0];a&&(0,p.isOneOf)(a.type,t.filetypes)?t.onFileSelect(a,r):t.onError()}}};return u.default.createElement("section",{className:(0,p.arrayToClassName)(r)},u.default.createElement(m.default,(0,c.default)({},a,{isLoading:t.isLoading}),t.icon&&u.default.createElement(v.default,{className:"e-app-drop-zone__icon ".concat(t.icon)}),t.heading&&u.default.createElement(h.default,{variant:"display-3"},t.heading),t.text&&u.default.createElement(g.default,{variant:"xl",className:"e-app-drop-zone__text"},t.text),t.secondaryText&&u.default.createElement(g.default,{variant:"xl",className:"e-app-drop-zone__secondary-text"},t.secondaryText),t.showButton&&u.default.createElement(d.default,{isLoading:t.isLoading,onFileSelect:t.onFileSelect,onError:t.onError,text:t.buttonText,filetypes:t.filetypes})))}a(45362),DropZone.propTypes={className:o.string,children:o.any,onFileSelect:o.func.isRequired,heading:o.string,text:o.string,secondaryText:o.string,buttonText:o.string,icon:o.string,showButton:o.bool,showIcon:o.bool,isLoading:o.bool,filetypes:o.array.isRequired,onError:o.func},DropZone.defaultProps={className:"",icon:"eicon-library-upload",showButton:!0,showIcon:!0,onError:function onError(){}}},31735:(t,r,a)=>{"use strict";var o=a(18194).__,i=a(23615),l=a(67394),u=a(67971);l(r,"__esModule",{value:!0}),r.default=void 0;var c=u(a(63804)),p=u(a(11959)),d=u(a(39041)),m=u(a(77371)),v=u(a(68537)),h=u(a(18042)),g=u(a(76639)),y=function(t){(0,m.default)(ErrorBoundary,t);var r=(0,v.default)(ErrorBoundary);function ErrorBoundary(t){var a;return(0,p.default)(this,ErrorBoundary),(a=r.call(this,t)).state={hasError:null},a}return(0,d.default)(ErrorBoundary,[{key:"goBack",value:function goBack(){window.top!==window.self&&window.top.$e.run("app/close"),window.location=elementorAppConfig.return_url}},{key:"render",value:function render(){return this.state.hasError?c.default.createElement(g.default,{title:this.props.title,text:this.props.text,approveButtonUrl:this.props.learnMoreUrl,approveButtonColor:"link",approveButtonTarget:"_blank",approveButtonText:o("Learn More","elementor"),dismissButtonText:o("Go Back","elementor"),dismissButtonOnClick:this.goBack}):this.props.children}}],[{key:"getDerivedStateFromError",value:function getDerivedStateFromError(){return{hasError:!0}}}]),ErrorBoundary}(c.default.Component);r.default=y,(0,h.default)(y,"propTypes",{children:i.any,title:i.string,text:i.string,learnMoreUrl:i.string}),(0,h.default)(y,"defaultProps",{title:o("App could not be loaded","elementor"),text:o("We’re sorry, but something went wrong. Click on ‘Learn more’ and follow each of the steps to quickly solve it.","elementor"),learnMoreUrl:"https://go.elementor.com/app-general-load-issue/"})},93965:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=WizardFooter;var u=l(a(63804)),c=l(a(37959)),p=a(47224),d=l(a(57390));function WizardFooter(t){var r="e-app-wizard-footer",a=[r,t.className];return t.separator&&a.push(r+"__separator"),u.default.createElement(d.default,(0,c.default)({container:!0},t,{className:(0,p.arrayToClassName)(a)}),t.children)}a(54189),WizardFooter.propTypes={className:o.string,justify:o.any,separator:o.any,children:o.oneOfType([o.string,o.object,o.arrayOf(o.object)]).isRequired},WizardFooter.defaultProps={className:""}},61858:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=function Index(){var t,r=new URLSearchParams(window.location.search),a=Object.fromEntries(r.entries()),o=c.default[a.action]||(null===(t=elementorAppConfig.menu_url.split("#"))||void 0===t?void 0:t[1]);return l.default.createElement(u.Redirect,{to:o||"/not-found",noThrow:!0})};var l=i(a(63804));a(42679),a(76139),a(12897),a(93085),a(99236);var u=a(50927),c=i(a(77953))},7008:(t,r,a)=>{"use strict";var o=a(18194).__,i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=function NotFound(){var t={title:o("Not Found","elementor"),className:"eps-app__not-found",content:u.default.createElement("h1",null," ",o("Not Found","elementor")," "),sidebar:u.default.createElement(u.default.Fragment,null)};return u.default.createElement(c.default,t)};var u=l(a(63804)),c=l(a(94295))},7465:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=Box;var u=l(a(63804)),c=a(47224);function Box(t){var r="eps-box",a=[r,t.className],o={};return t.hasOwnProperty("padding")&&(o["--eps-box-padding"]=(0,c.pxToRem)(t.padding),a.push("eps-box--padding")),u.default.createElement("div",{style:o,className:(0,c.arrayToClassName)(a)},t.children)}a(22269),Box.propTypes={className:o.string,padding:o.string,children:o.oneOfType([o.string,o.object,o.arrayOf(o.object)]).isRequired},Box.defaultProps={className:""}},23283:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=Checkbox;var u=l(a(63804)),c=l(a(37959)),p=a(47224);function Checkbox(t){var r="eps-checkbox",a=[r,t.className];return t.rounded&&a.push("eps-checkbox--rounded"),u.default.createElement("input",(0,c.default)({},t,{type:"checkbox",disabled:t.disabled,className:(0,p.arrayToClassName)(a)}))}a(96351),Checkbox.propTypes={className:o.string,disabled:o.bool,rounded:o.bool},Checkbox.defaultProps={className:"",disabled:!1}},94789:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971),u=a(52369);i(r,"__esModule",{value:!0}),r.default=DragDrop;var c=u(a(63804)),p=l(a(37959)),d=l(a(47834)),m=a(47224);function DragDrop(t){var r=(0,c.useState)(!1),a=(0,d.default)(r,2),o=a[0],i=a[1],l=function onDragDropActions(t){t.preventDefault(),t.stopPropagation()},u={onDrop:function onDrop(r){l(r),i(!1),t.onDrop&&t.onDrop(r)},onDragOver:function onDragOver(r){l(r),i(!0),t.onDragOver&&t.onDragOver(r)},onDragLeave:function onDragLeave(r){l(r),i(!1),t.onDragLeave&&t.onDragLeave(r)}};return c.default.createElement("div",(0,p.default)({},u,{className:function getClassName(){var r="e-app-drag-drop",a=[r,t.className];return o&&!t.isLoading&&a.push(r+"--drag-over"),(0,m.arrayToClassName)(a)}()}),t.children)}a(8167),DragDrop.propTypes={className:o.string,children:o.any,onDrop:o.func,onDragLeave:o.func,onDragOver:o.func,isLoading:o.bool},DragDrop.defaultProps={className:""}},80957:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=Heading;var u=l(a(63804)),c=a(47224);function Heading(t){var r=[t.className];t.variant&&r.push("eps-"+t.variant);var a=function Element(){return u.default.createElement(t.tag,{className:(0,c.arrayToClassName)(r)},t.children)};return u.default.createElement(a,null)}Heading.propTypes={className:o.string,children:o.oneOfType([o.string,o.object,o.arrayOf(o.object)]).isRequired,tag:o.oneOf(["h1","h2","h3","h4","h5","h6"]),variant:o.oneOf(["display-1","display-2","display-3","display-4","h1","h2","h3","h4","h5","h6"]).isRequired},Heading.defaultProps={className:"",tag:"h1"}},69722:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=Icon;var u=l(a(63804));function Icon(t){return u.default.createElement("i",{className:"eps-icon ".concat(t.className)})}Icon.propTypes={className:o.string.isRequired},Icon.defaultProps={className:""}},53854:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=TextField;var u=l(a(63804)),c=l(a(37959)),p=l(a(84899)),d=l(a(18042)),m=a(47224);function TextField(t){var r="eps-text-field",a=[r,t.className,(0,d.default)({},"eps-text-field--outlined","outlined"===t.variant)],o=(0,p.default)((0,p.default)({},t),{},{className:(0,m.arrayToClassName)(a)});return o.multiline?(delete o.multiline,u.default.createElement("textarea",o)):u.default.createElement("input",(0,c.default)({},o,{type:"text"}))}a(40604),TextField.propTypes={className:o.string,multiline:o.bool,variant:o.oneOf(["standard","outlined"]),children:o.string},TextField.defaultProps={className:"",variant:"standard"}},36357:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=Text;var u=l(a(63804)),c=a(47224);function Text(t){var r=[t.className],a=t.variant&&"md"!==t.variant?"-"+t.variant:"";r.push("eps-text"+a);var o=function Element(){return u.default.createElement(t.tag,{className:(0,c.arrayToClassName)(r)},t.children)};return u.default.createElement(o,null)}Text.propTypes={className:o.string,variant:o.oneOf(["xl","lg","md","sm","xs","xxs"]),tag:o.string,children:o.any.isRequired},Text.defaultProps={className:"",tag:"p"}},67170:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=CardBody;var u=l(a(63804)),c=a(47224);function CardBody(t){var r="eps-card__body",a=[r,t.className],o={};return t.hasOwnProperty("padding")&&(o["--eps-card-body-padding"]=(0,c.pxToRem)(t.padding),a.push("eps-card__body--padding")),u.default.createElement("main",{className:(0,c.arrayToClassName)(a),style:o},t.children)}a(38055),CardBody.propTypes={className:o.string,padding:o.string,passive:o.bool,active:o.bool,children:o.any.isRequired},CardBody.defaultProps={className:""}},18401:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=CardDivider;var u=l(a(63804)),c=a(47224);function CardDivider(t){var r=["eps-card__divider",t.className];return u.default.createElement("hr",{className:(0,c.arrayToClassName)(r)})}a(38055),CardDivider.propTypes={className:o.string},CardDivider.defaultProps={className:""}},14169:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=CardFooter;var u=l(a(63804)),c=a(47224);function CardFooter(t){var r="eps-card__footer",a=[r,t.className],o={};return t.hasOwnProperty("padding")&&(o["--eps-card-footer-padding"]=(0,c.pxToRem)(t.padding),a.push(r+"--padding")),u.default.createElement("footer",{className:(0,c.arrayToClassName)(a),style:o},t.children)}a(38055),CardFooter.propTypes={className:o.string,padding:o.string,passive:o.bool,active:o.bool,children:o.object.isRequired},CardFooter.defaultProps={className:""}},11243:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=CardHeader;var u=l(a(63804)),c=a(47224);function CardHeader(t){var r="eps-card__header",a=[r,t.className],o={};return t.hasOwnProperty("padding")&&(o["--eps-card-header-padding"]=(0,c.pxToRem)(t.padding),a.push(r+"--padding")),u.default.createElement("header",{className:(0,c.arrayToClassName)(a),style:o},t.children)}a(38055),CardHeader.propTypes={className:o.string,padding:o.string,passive:o.bool,active:o.bool,children:o.any.isRequired},CardHeader.defaultProps={className:""}},10563:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=CardHeadline;var u=l(a(63804)),c=a(47224);function CardHeadline(t){var r=["eps-card__headline",t.className];return u.default.createElement("h4",{className:(0,c.arrayToClassName)(r)},t.children)}a(38055),CardHeadline.propTypes={className:o.string,children:o.any.isRequired},CardHeadline.defaultProps={className:""}},57641:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=CardImage;var u=l(a(63804));function CardImage(t){var r=u.default.createElement("img",{src:t.src,alt:t.alt,className:"eps-card__image",loading:"lazy"});return u.default.createElement("figure",{className:"eps-card__figure ".concat(t.className)},r,t.children)}a(38055),CardImage.propTypes={className:o.string,src:o.string.isRequired,alt:o.string.isRequired,children:o.any},CardImage.defaultProps={className:""}},18041:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=CardOverlay;var u=l(a(63804));function CardOverlay(t){return u.default.createElement("div",{className:"eps-card__image-overlay ".concat(t.className)},t.children)}a(38055),CardOverlay.propTypes={className:o.string,children:o.object.isRequired},CardOverlay.defaultProps={className:""}},17493:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=void 0;var u=l(a(63804)),c=l(a(11243)),p=l(a(67170)),d=l(a(57641)),m=l(a(18041)),v=l(a(14169)),h=l(a(10563)),g=l(a(18401));a(38055);var y=u.default.forwardRef((function(t,r){return u.default.createElement("article",{className:"eps-card ".concat(t.className),ref:r},t.children)}));y.propTypes={type:o.string,className:o.string,children:o.any},y.defaultProps={className:""},y.displayName="Card",y.Header=c.default,y.Body=p.default,y.Image=d.default,y.Overlay=m.default,y.Footer=v.default,y.Headline=h.default,y.Divider=g.default;var _=y;r.default=_},63783:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=DialogActions;var u=l(a(63804));function DialogActions(t){return u.default.createElement("div",{className:"eps-dialog__buttons"},t.children)}DialogActions.propTypes={children:o.any}},98246:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=DialogButton;var u=l(a(63804)),c=l(a(84899)),p=l(a(37959)),d=l(a(72745));function DialogButton(t){return u.default.createElement(d.default,(0,p.default)({},t,{className:"eps-dialog__button ".concat(t.className)}))}DialogButton.propTypes=(0,c.default)((0,c.default)({},d.default.propTypes),{},{tabIndex:o.string,type:o.string}),DialogButton.defaultProps=(0,c.default)((0,c.default)({},d.default.defaultProps),{},{tabIndex:"0",type:"button"})},51533:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=DialogContent;var u=l(a(63804));function DialogContent(t){return u.default.createElement("div",{className:"eps-dialog__content"},t.children)}DialogContent.propTypes={children:o.any}},50530:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=DialogText;var l=i(a(63804)),u=i(a(84899)),c=i(a(37959)),p=i(a(36357));function DialogText(t){return l.default.createElement(p.default,(0,c.default)({variant:"xs"},t,{className:"eps-dialog__text ".concat(t.className)}))}DialogText.propTypes=(0,u.default)({},p.default.propTypes),DialogText.defaultProps=(0,u.default)((0,u.default)({},p.default.defaultProps),{},{tag:"p",variant:"sm"})},30242:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=DialogTitle;var u=l(a(63804)),c=l(a(84899)),p=l(a(37959)),d=l(a(80957));function DialogTitle(t){return u.default.createElement(d.default,(0,p.default)({},t,{className:"eps-dialog__title ".concat(t.className)}))}DialogTitle.propTypes=(0,c.default)((0,c.default)({},d.default.propTypes),{},{className:o.string}),DialogTitle.defaultProps=(0,c.default)((0,c.default)({},d.default.propTypes),{},{variant:"h3",tag:"h3",className:""})},41252:(t,r,a)=>{"use strict";var o=a(18194).__,i=a(23615),l=a(67394),u=a(67971);l(r,"__esModule",{value:!0}),r.default=DialogWrapper;var c=u(a(63804)),p=u(a(72745));function DialogWrapper(t){var r="div";return t.onSubmit&&(r="form"),c.default.createElement("section",{className:"eps-modal__overlay"},c.default.createElement(r,{className:"eps-modal eps-dialog",onSubmit:t.onSubmit},t.onClose&&c.default.createElement(p.default,{onClick:t.onClose,text:o("Close","elementor"),hideText:!0,icon:"eicon-close",className:"eps-dialog__close-button"}),t.children))}DialogWrapper.propTypes={onClose:i.func,onSubmit:i.func,children:i.any}},76639:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=Dialog;var u=l(a(63804)),c=l(a(41252)),p=l(a(51533)),d=l(a(30242)),m=l(a(50530)),v=l(a(63783)),h=l(a(98246));function Dialog(t){return u.default.createElement(c.default,{onSubmit:t.onSubmit,onClose:t.onClose},u.default.createElement(p.default,null,t.title&&u.default.createElement(d.default,null,t.title),t.text&&u.default.createElement(m.default,null,t.text),t.children),u.default.createElement(v.default,null,u.default.createElement(h.default,{key:"dismiss",text:t.dismissButtonText,onClick:t.dismissButtonOnClick,url:t.dismissButtonUrl,target:t.dismissButtonTarget,tabIndex:"2"}),u.default.createElement(h.default,{key:"approve",text:t.approveButtonText,onClick:t.approveButtonOnClick,url:t.approveButtonUrl,target:t.approveButtonTarget,color:t.approveButtonColor,elRef:t.approveButtonRef,tabIndex:"1"})))}a(632),Dialog.propTypes={title:o.any,text:o.any,children:o.any,onSubmit:o.func,onClose:o.func,dismissButtonText:o.string.isRequired,dismissButtonOnClick:o.func,dismissButtonUrl:o.string,dismissButtonTarget:o.string,approveButtonText:o.string.isRequired,approveButtonOnClick:o.func,approveButtonUrl:o.string,approveButtonColor:o.string,approveButtonTarget:o.string,approveButtonRef:o.object},Dialog.defaultProps={},Dialog.Wrapper=c.default,Dialog.Content=p.default,Dialog.Title=d.default,Dialog.Text=m.default,Dialog.Actions=v.default,Dialog.Button=h.default},57390:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=Grid;var u=l(a(63804));a(64828),a(84208);var c=l(a(74846)),p=a(47224);function Grid(t){var r=["eps-grid",t.className].concat((0,c.default)(function getPropsClasses(t,r){var a=[];for(var o in t)if(r[o]){var i=isValidPropValue(r[o])?r[o]:"";a.push("eps-grid"+renderPropValueBrackets(t[o],i))}return a}({direction:"--direction{{ -VALUE }}",justify:"--justify{{ -VALUE }}",alignContent:"--align-content{{ -VALUE }}",alignItems:"--align-items{{ -VALUE }}",container:"-container",item:"-item",noWrap:"-container--no-wrap",wrapReverse:"-container--wrap-reverse",zeroMinWidth:"-item--zero-min-width",spacing:"-container--spacing",xs:"-item-xs{{ -VALUE }}",sm:"-item-sm{{ -VALUE }}",md:"-item-md{{ -VALUE }}",lg:"-item-lg{{ -VALUE }}",xl:"-item-xl{{ -VALUE }}",xxl:"-item-xxl{{ -VALUE }}"},t)));return u.default.createElement("div",{style:function getStyle(){return isValidPropValue(t.spacing)?{"--grid-spacing-gutter":(0,p.pxToRem)(t.spacing)}:{}}(),className:(0,p.arrayToClassName)(r)},t.children)}function renderPropValueBrackets(t,r){var a=t.match(/{{.*?}}/);if(a){var o=r?a[0].replace(/[{ }]/g,"").replace(/value/i,r):"";t=t.replace(a[0],o)}return t}function isValidPropValue(t){return t&&"boolean"!=typeof t}a(42749),Grid.propTypes={className:o.string,direction:o.oneOf(["row","column","row-reverse","column-reverse"]),justify:o.oneOf(["start","center","end","space-between","space-evenly","space-around","stretch"]),alignContent:o.oneOf(["start","center","end","space-between","stretch"]),alignItems:o.oneOf(["start","center","end","baseline","stretch"]),container:o.bool,item:o.bool,noWrap:o.bool,wrapReverse:o.bool,zeroMinWidth:o.bool,spacing:o.number,xs:o.oneOfType([o.number,o.bool]),sm:o.oneOfType([o.number,o.bool]),md:o.oneOfType([o.number,o.bool]),lg:o.oneOfType([o.number,o.bool]),xl:o.oneOfType([o.number,o.bool]),xxl:o.oneOfType([o.number,o.bool]),children:o.any.isRequired},Grid.defaultProps={className:""}},6852:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=ModalSection;var u=l(a(63804)),c=a(47224);function ModalSection(t){return u.default.createElement("section",{className:(0,c.arrayToClassName)(["eps-modal__section",t.className])},t.children)}ModalSection.propTypes={className:o.string,children:o.any},ModalSection.defaultProps={className:""}},29658:(t,r,a)=>{"use strict";var o=a(23615),i=a(18194).__,l=a(67394),u=a(67971);l(r,"__esModule",{value:!0}),r.default=ModalTip;var c=u(a(63804)),p=a(47224),d=u(a(80957)),m=u(a(36357));function ModalTip(t){return c.default.createElement("div",{className:(0,p.arrayToClassName)(["eps-modal__tip",t.className])},c.default.createElement(d.default,{variant:"h3",tag:"h3"},t.title),t.description&&c.default.createElement(m.default,{variant:"xs"},t.description))}ModalTip.propTypes={className:o.string,title:o.string,description:o.string},ModalTip.defaultProps={className:"",title:i("Tip","elementor")}},89854:(t,r,a)=>{"use strict";var o=a(23615),i=a(18194).__,l=a(67394),u=a(67971),c=a(52369);l(r,"__esModule",{value:!0}),r.default=ModalProvider,r.Modal=void 0;var p=c(a(63804)),d=u(a(37959)),m=u(a(84899)),v=u(a(47834)),h=a(47224),g=u(a(72745)),y=u(a(57390)),_=u(a(69722)),x=u(a(36357)),b=u(a(6852)),E=u(a(29658));function ModalProvider(t){var r=(0,p.useState)(t.show),a=(0,v.default)(r,2),o=a[0],i=a[1],l=function showModal(){i(!0),t.setShow&&t.setShow(!0)},u=(0,m.default)((0,m.default)({},t),{},{show:o,hideModal:function hideModal(){i(!1),t.setShow&&t.setShow(!1)},showModal:l});return(0,p.useEffect)((function(){i(t.show)}),[t.show]),p.default.createElement(p.default.Fragment,null,t.toggleButtonProps&&p.default.createElement(g.default,(0,d.default)({},t.toggleButtonProps,{onClick:l})),p.default.createElement(w,u,t.children))}a(99694),ModalProvider.propTypes={children:o.node.isRequired,toggleButtonProps:o.object,title:o.string,icon:o.string,show:o.bool,setShow:o.func},ModalProvider.defaultProps={show:!1},ModalProvider.Section=b.default,ModalProvider.Tip=E.default;var w=function Modal(t){var r=(0,p.useRef)(null),a=(0,p.useRef)(null),o=function closeModal(o){var i=r.current,l=a.current,u=l&&l.contains(o.target);i&&i.contains(o.target)&&!u||t.hideModal()};return(0,p.useEffect)((function(){return t.show&&document.addEventListener("mousedown",o,!1),function(){return document.removeEventListener("mousedown",o,!1)}}),[t.show]),t.show?p.default.createElement("div",{className:"eps-modal__overlay",onClick:o},p.default.createElement("div",{className:(0,h.arrayToClassName)(["eps-modal",t.className]),ref:r},p.default.createElement(y.default,{container:!0,className:"eps-modal__header",justify:"space-between",alignItems:"center"},p.default.createElement(y.default,{item:!0},p.default.createElement(_.default,{className:"eps-modal__icon ".concat(t.icon)}),p.default.createElement(x.default,{className:"title",tag:"span"},t.title)),p.default.createElement(y.default,{item:!0},p.default.createElement("div",{className:"eps-modal__close-wrapper",ref:a},p.default.createElement(g.default,{text:i("Close","elementor"),hideText:!0,icon:"eicon-close",onClick:t.closeModal})))),p.default.createElement("div",{className:"eps-modal__body"},t.children))):null};r.Modal=w,w.propTypes={className:o.string,children:o.any.isRequired,title:o.string.isRequired,icon:o.string,show:o.bool,setShow:o.func,hideModal:o.func,showModal:o.func,closeModal:o.func},w.defaultProps={className:""}},72745:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=void 0;var u=l(a(63804));a(64434);var c=l(a(37959)),p=l(a(11959)),d=l(a(39041)),m=l(a(77371)),v=l(a(68537)),h=l(a(18042)),g=a(50927),y=l(a(20485)),_=l(a(69722)),x=function(t){(0,m.default)(Button,t);var r=(0,v.default)(Button);function Button(){return(0,p.default)(this,Button),r.apply(this,arguments)}return(0,d.default)(Button,[{key:"getCssId",value:function getCssId(){return this.props.id}},{key:"getClassName",value:function getClassName(){var t="eps-button";return[t,this.props.className].concat(this.getStylePropsClasses(t)).filter((function(t){return""!==t})).join(" ")}},{key:"getStylePropsClasses",value:function getStylePropsClasses(t){var r=this,a=[];return["color","size","variant"].forEach((function(o){var i=r.props[o];i&&a.push(t+"--"+i)})),a}},{key:"getIcon",value:function getIcon(){if(this.props.icon){var t=this.props.tooltip||this.props.text,r=u.default.createElement(_.default,{className:this.props.icon,"aria-hidden":"true",title:t}),a="";return this.props.hideText&&(a=u.default.createElement("span",{className:"sr-only"},t)),u.default.createElement(u.default.Fragment,null,r,a)}return""}},{key:"getText",value:function getText(){return this.props.hideText?"":u.default.createElement("span",null,this.props.text)}},{key:"render",value:function render(){var t={},r=this.getCssId(),a=this.getClassName();r&&(t.id=r),a&&(t.className=a),this.props.onClick&&(t.onClick=this.props.onClick),this.props.rel&&(t.rel=this.props.rel),this.props.elRef&&(t.ref=this.props.elRef);var o=u.default.createElement(u.default.Fragment,null,this.getIcon(),this.getText());return this.props.url?0===this.props.url.indexOf("http")?u.default.createElement("a",(0,c.default)({href:this.props.url,target:this.props.target},t),o):(t.getProps=function(r){return r.isCurrent&&(t.className+=" active"),{className:t.className}},u.default.createElement(g.LocationProvider,{history:y.default.appHistory},u.default.createElement(g.Link,(0,c.default)({to:this.props.url},t),o))):u.default.createElement("div",t,o)}}]),Button}(u.default.Component);r.default=x,(0,h.default)(x,"propTypes",{text:o.string.isRequired,hideText:o.bool,icon:o.string,tooltip:o.string,id:o.string,className:o.string,url:o.string,onClick:o.func,variant:o.oneOf(["contained","underlined","outlined",""]),color:o.oneOf(["primary","secondary","cta","link","disabled"]),size:o.oneOf(["sm","md","lg"]),target:o.string,rel:o.string,elRef:o.object}),(0,h.default)(x,"defaultProps",{id:"",className:"",variant:"",target:"_parent"})},69038:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=InlineLink;var u=l(a(63804));a(3777),a(38081);var c=a(50927),p=l(a(20485)),d=a(47224);function InlineLink(t){var r="eps-inline-link",a=[r,"".concat(r,"--color-").concat(t.color),"none"!==t.underline?"".concat(r,"--underline-").concat(t.underline):"",t.italic?"".concat(r,"--italic"):"",t.className],o=(0,d.arrayToClassName)(a);return t.url?t.url.includes("http")?function getExternalLink(){return u.default.createElement("a",{href:t.url,target:t.target,rel:t.rel,className:o},t.children)}():function getRouterLink(){return u.default.createElement(c.LocationProvider,{history:p.default.appHistory},u.default.createElement(c.Link,{to:t.url,className:o},t.children))}():function getActionLink(){return u.default.createElement("button",{className:o,onClick:t.onClick},t.children)}()}a(70808),InlineLink.propTypes={className:o.string,children:o.string,url:o.string,target:o.string,rel:o.string,text:o.string,color:o.oneOf(["primary","secondary","cta","link","disabled"]),underline:o.oneOf(["none","hover","always"]),italic:o.bool},InlineLink.defaultProps={className:"",color:"link",underline:"always",target:"_blank",rel:"noopener noreferrer"}},47271:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=ListItem;var u=l(a(63804)),c=a(47224);function ListItem(t){var r,a="eps-list__item",o=[a,t.className];return t.hasOwnProperty("padding")&&(r={"--eps-list-item-padding":(0,c.pxToRem)(t.padding)},o.push("eps-list__item--padding")),u.default.createElement("li",{style:r,className:(0,c.arrayToClassName)(o)},t.children)}ListItem.propTypes={className:o.string,padding:o.string,children:o.any.isRequired},ListItem.defaultProps={className:""}},53733:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=List;var u=l(a(63804)),c=a(47224),p=l(a(47271));function List(t){var r,a="eps-list",o=[a,t.className];return t.hasOwnProperty("padding")&&(r={"--eps-list-padding":(0,c.pxToRem)(t.padding)},o.push("eps-list--padding")),t.separated&&o.push("eps-list--separated"),u.default.createElement("ul",{style:r,className:(0,c.arrayToClassName)(o)},t.children)}a(39355),List.propTypes={className:o.string,divided:o.any,separated:o.any,padding:o.string,children:o.oneOfType([o.object,o.arrayOf(o.object)]).isRequired},List.defaultProps={className:""},List.Item=p.default},63104:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=Notice;var u=l(a(63804)),c=a(47224),p=l(a(36357));function Notice(t){var r="eps-notice",a=[r,t.className];return t.color&&a.push("eps-notice--"+t.color),u.default.createElement("div",{className:(0,c.arrayToClassName)(a)},u.default.createElement(p.default,{variant:"xs",className:"eps-notice__text"},t.label&&u.default.createElement("strong",null,t.label+": ")," ",t.children))}a(56453),Notice.propTypes={className:o.string,color:o.string,label:o.string,children:o.oneOfType([o.string,o.object,o.arrayOf(o.object)]).isRequired},Notice.defaultProps={className:""}},77953:(t,r,a)=>{"use strict";a(67394)(r,"__esModule",{value:!0}),r.default=void 0;r.default={"import-kit":"/import/process"}},47224:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.isOneOf=r.rgbToHex=r.stringToRemValues=r.arrayToClassName=r.pxToRem=void 0;var l=i(a(38923)),u=i(a(24596));a(76139),a(44321),a(90286),a(99236),a(64434),a(3777),a(38081);var c=function pxToRem(t){if(t)return"string"!=typeof t&&(t=t.toString()),t.split(" ").map((function(t){return"".concat(.0625*t,"rem")})).join(" ")};r.pxToRem=c;r.arrayToClassName=function arrayToClassName(t,r){return t.filter((function(t){return"object"===(0,u.default)(t)?(0,l.default)(t)[0][1]:t})).map((function(t){var a="object"===(0,u.default)(t)?(0,l.default)(t)[0][0]:t;return r?r(a):a})).join(" ")};r.stringToRemValues=function stringToRemValues(t){return t.split(" ").map((function(t){return c(t)})).join(" ")};r.rgbToHex=function rgbToHex(t,r,a){return"#"+[t,r,a].map((function(t){var r=t.toString(16);return 1===r.length?"0"+r:r})).join("")};r.isOneOf=function isOneOf(t,r){return r.some((function(r){return t.includes(r)}))}},6432:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971),u=a(52369);i(r,"__esModule",{value:!0}),r.default=ContextProvider,r.Context=void 0;var c=u(a(63804)),p=l(a(47834)),d=a(89967),m=c.default.createContext();function ContextProvider(t){var r=(0,c.useReducer)(d.reducer,{includes:[],downloadUrl:"",fileResponse:null,file:null,overrideConditions:[],referrer:null,kitInfo:{title:null,description:null}}),a=(0,p.default)(r,2),o=a[0],i=a[1];return c.default.createElement(m.Provider,{value:{data:o,dispatch:i}},t.children)}r.Context=m,ContextProvider.propTypes={children:o.object.isRequired}},89967:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.reducer=void 0,a(3777),a(38081),a(64434);var l=i(a(18042)),u=i(a(74846)),c=i(a(84899)),p=i(a(11959)),d=i(a(39041)),m=function(){function ReducerActions(){(0,p.default)(this,ReducerActions)}return(0,d.default)(ReducerActions,null,[{key:"updateArray",value:function updateArray(t,r,a,o){return"add"===o?t[r].includes(a)?t:(0,c.default)((0,c.default)({},t),{},(0,l.default)({},r,[].concat((0,u.default)(t[r]),[a]))):"remove"===o?(0,c.default)((0,c.default)({},t),{},(0,l.default)({},r,t[r].filter((function(t){return t!==a})))):t}}]),ReducerActions}();r.reducer=function reducer(t,r){switch(r.type){case"SET_DOWNLOAD_URL":return(0,c.default)((0,c.default)({},t),{},{downloadUrl:r.payload});case"ADD_INCLUDE":return m.updateArray(t,"includes",r.payload,"add");case"REMOVE_INCLUDE":return m.updateArray(t,"includes",r.payload,"remove");case"SET_FILE_RESPONSE":return(0,c.default)((0,c.default)({},t),{},{fileResponse:r.payload});case"SET_FILE":return(0,c.default)((0,c.default)({},t),{},{file:r.payload});case"ADD_OVERRIDE_CONDITION":return m.updateArray(t,"overrideConditions",r.payload,"add");case"REMOVE_OVERRIDE_CONDITION":return m.updateArray(t,"overrideConditions",r.payload,"remove");case"SET_KIT_TITLE":return(0,c.default)((0,c.default)({},t),{},{kitInfo:(0,c.default)((0,c.default)({},t.kitInfo),{},{title:r.payload})});case"SET_KIT_DESCRIPTION":return(0,c.default)((0,c.default)({},t),{},{kitInfo:(0,c.default)((0,c.default)({},t.kitInfo),{},{description:r.payload})});case"SET_REFERRER":return(0,c.default)((0,c.default)({},t),{},{referrer:r.payload});case"SET_INCLUDES":return(0,c.default)((0,c.default)({},t),{},{includes:r.payload});default:return t}}},51122:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=function Export(){return l.default.createElement(u.default,null,l.default.createElement(c.LocationProvider,{history:p.default.appHistory},l.default.createElement(c.Router,null,l.default.createElement(m.default,{path:"complete"}),l.default.createElement(v.default,{path:"process"}),l.default.createElement(d.default,{default:!0}))))};var l=i(a(63804)),u=i(a(6432)),c=a(50927),p=i(a(20485)),d=i(a(42772)),m=i(a(27714)),v=i(a(15452))},72327:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=function Import(){return l.default.createElement(u.default,null,l.default.createElement(c.LocationProvider,{history:p.default.appHistory},l.default.createElement(c.Router,null,l.default.createElement(g.default,{path:"complete"}),l.default.createElement(h.default,{path:"process"}),l.default.createElement(v.default,{path:"resolver"}),l.default.createElement(m.default,{path:"content"}),l.default.createElement(d.default,{default:!0}))))};var l=i(a(63804)),u=i(a(6432)),c=a(50927),p=i(a(20485)),d=i(a(2200)),m=i(a(91156)),v=i(a(74285)),h=i(a(61722)),g=i(a(98302))},75302:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var l=i(a(74758)),u=i(a(11959)),c=i(a(18042)),p=i(a(20485)),d=i(a(72327)),m=i(a(51122));r.default=function ImportExport(){(0,u.default)(this,ImportExport),(0,c.default)(this,"routes",[{path:"/import/*",component:d.default},{path:"/export/*",component:m.default}]);var t,r=(0,l.default)(this.routes);try{for(r.s();!(t=r.n()).done;){var a=t.value;p.default.addRoute(a)}}catch(t){r.e(t)}finally{r.f()}}},27714:(t,r,a)=>{"use strict";var o=a(18194).__,i=a(67394),l=a(67971),u=a(52369);i(r,"__esModule",{value:!0}),r.default=function ExportComplete(){var t,r=(0,c.useContext)(p.Context),a=(0,c.useRef)(null),i=function downloadFile(){if(!a.current){var t=document.createElement("a");t.href="data:text/plain;base64,"+r.data.fileResponse.file,t.download="elementor-kit.zip",a.current=t}a.current.click()};return(0,c.useEffect)((function(){r.data.downloadUrl&&i()}),[r.data.downloadUrl]),c.default.createElement(d.default,{type:"export",footer:function getFooter(){return c.default.createElement(g.default,{separator:!0,justify:"end"},c.default.createElement(y.default,null))}()},c.default.createElement(m.default,{image:elementorAppConfig.assets_url+"images/go-pro.svg",heading:o("Your export is ready!","elementor"),description:o("Now you can import this kit and use it on other sites.","elementor"),notice:c.default.createElement(c.default.Fragment,null,o("Download not working?","elementor")," ",function getDownloadLink(){return c.default.createElement(h.default,{onClick:i,italic:!0},o("Click Here","elementor"))}()," ",o("to download","elementor"))},c.default.createElement(v.default,{data:null===(t=r.data.fileResponse)||void 0===t?void 0:t.manifest})))};var c=u(a(63804)),p=a(6432),d=l(a(64895)),m=l(a(1422)),v=l(a(54497)),h=l(a(69038)),g=l(a(93965)),y=l(a(5199));a(3272)},30344:(t,r,a)=>{"use strict";var o=a(18194).__,i=a(23615),l=a(67394),u=a(67971),c=a(52369);l(r,"__esModule",{value:!0}),r.default=ExportButton;var p=c(a(63804));a(3777),a(38081);var d=u(a(47834)),m=a(50927),v=a(6432),h=u(a(72745));function ExportButton(){var t=(0,p.useContext)(v.Context),r=(0,m.useNavigate)(),a=(0,p.useState)(!1),i=(0,d.default)(a,2),l=i[0],u=i[1],c=function getDownloadUrl(){var r=elementorAppConfig["import-export"].exportURL,a={elementor_export_kit:{include:t.data.includes,kitInfo:t.data.kitInfo}};return r+"&"+jQuery.param(a)};return(0,p.useEffect)((function(){u(!!t.data.includes.length)}),[t.data.includes]),(0,p.useEffect)((function(){t.data.downloadUrl&&r("/export/process")}),[t.data.downloadUrl]),p.default.createElement(h.default,{variant:"contained",text:o("Export","elementor"),color:l?"primary":"disabled",onClick:function onClick(){l&&t.dispatch({type:"SET_DOWNLOAD_URL",payload:c()})}})}ExportButton.propTypes={setIsDownloading:i.func}},37869:(t,r,a)=>{"use strict";var o=a(18194).__,i=a(67394),l=a(67971),u=a(52369);i(r,"__esModule",{value:!0}),r.default=function KitDescription(){var t=(0,c.useContext)(p.Context);return c.default.createElement(d.default,{variant:"outlined",placeholder:o("Say something about the style and content of these files...","elementor"),multiline:!0,rows:5,onChange:function onChange(r){t.dispatch({type:"SET_KIT_DESCRIPTION",payload:r.target.value})}})};var c=u(a(63804)),p=a(6432),d=l(a(53854))},74525:(t,r,a)=>{"use strict";var o=a(18194).__,i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=function KitInfoModal(t){return u.default.createElement(p.default,(0,c.default)({},t,{className:"e-app-export-kit-info-modal",title:o("Template Kit Information","elementor")}),u.default.createElement(p.default.Section,null,u.default.createElement(d.default,{className:"e-app-export-kit-info-modal__heading",variant:"h2",tag:"h3"},o("What is kit information?","elementor")),u.default.createElement(m.default,null,o("These are the details you’ll use to quickly find and apply this kit in the future, even as your collection grows.","elementor"))))};var u=l(a(63804)),c=l(a(37959)),p=l(a(89854)),d=l(a(80957)),m=l(a(36357))},73935:(t,r,a)=>{"use strict";var o=a(18194).__,i=a(67394),l=a(67971),u=a(52369);i(r,"__esModule",{value:!0}),r.default=function KitName(){var t=(0,c.useContext)(p.Context);return c.default.createElement(d.default,{variant:"outlined",placeholder:o("Elementor Kit","elementor"),onChange:function onChange(r){t.dispatch({type:"SET_KIT_TITLE",payload:r.target.value})}})};var c=u(a(63804)),p=a(6432),d=l(a(53854))},42772:(t,r,a)=>{"use strict";var o=a(18194).__,i=a(67394),l=a(52369),u=a(67971);i(r,"__esModule",{value:!0}),r.default=function ExportKit(){var t=(0,p.useState)(!1),r=(0,c.default)(t,2),a=r[0],i=r[1],l=o("Kit Information","elementor");return p.default.createElement(d.default,{type:"export",footer:function getFooter(){return p.default.createElement(N.default,{separator:!0,justify:"end"},p.default.createElement(v.default,null))}()},p.default.createElement("section",{className:"e-app-export-kit"},p.default.createElement(m.default,{heading:o("Export a Template Kit","elementor"),description:[o("Choose which Elementor components - templates, content and site settings - to include in your kit file.","elementor"),p.default.createElement(p.default.Fragment,{key:"description-secondary-line"},o("By default, all of your components will be exported.","elementor")," ",function getLearnMoreLink(){return p.default.createElement(w.default,{url:"https://go.elementor.com/app-what-are-kits",italic:!0},o("Learn More","elementor"))}())]}),p.default.createElement(h.default,null),p.default.createElement(g.default,{className:"e-app-export-kit-information"},p.default.createElement(g.default.Header,null,p.default.createElement(g.default.Headline,null,l,p.default.createElement(C.default,{className:"e-app-export-kit-info-modal__icon",icon:"eicon-info-circle",color:"secondary",hideText:!0,text:l,onClick:function onClick(t){t.stopPropagation(),i((function(t){return!t}))}}))),p.default.createElement(g.default.Body,null,p.default.createElement(b.default,{container:!0,spacing:20},p.default.createElement(b.default,{item:!0,md:4},p.default.createElement(b.default,{container:!0,direction:"column"},p.default.createElement(b.default,{className:"e-app-export-kit-information__field-header",container:!0,alignItems:"center"},p.default.createElement(E.default,{className:"e-app-export-kit-information__label",variant:"h6",tag:"h4"},o("Kit Name","elementor"))),p.default.createElement(b.default,{item:!0},p.default.createElement(y.default,null)))),p.default.createElement(b.default,{item:!0,md:4},p.default.createElement(b.default,{className:"e-app-export-kit-information__field-header",container:!0,alignItems:"center"},p.default.createElement(E.default,{className:"e-app-export-kit-information__label",variant:"h6",tag:"h4"},o("Kit Description","elementor"))),p.default.createElement(b.default,{item:!0},p.default.createElement(_.default,null)))))),p.default.createElement(x.default,{show:a,setShow:i})))};var c=u(a(47834)),p=l(a(63804)),d=u(a(64895)),m=u(a(73331)),v=u(a(30344)),h=u(a(57654)),g=u(a(88755)),y=u(a(73935)),_=u(a(37869)),x=u(a(74525)),b=u(a(57390)),E=u(a(80957)),w=u(a(69038)),C=u(a(72745)),N=u(a(93965));a(45813)},15452:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971),l=a(52369);o(r,"__esModule",{value:!0}),r.default=function ExportProcess(){var t=(0,v.default)(),r=t.ajaxState,a=t.setAjax,o=(0,u.useContext)(m.Context),i=(0,c.useNavigate)();return(0,u.useEffect)((function(){o.data.fileResponse&&i("export/complete")}),[o.data.fileResponse]),u.default.createElement(p.default,{type:"export"},u.default.createElement(d.default,{status:r.status,onLoad:function onLoad(){o.data.downloadUrl&&a({url:o.data.downloadUrl,headers:{"Content-Type":"application/json"}})},onSuccess:function onSuccess(){return o.dispatch({type:"SET_FILE_RESPONSE",payload:r.response})},onDialogApprove:function onDialogApprove(){return window.open("https://elementor.com/help/export-kit?utm_source=import-export&utm_medium=wp-dash&utm_campaign=learn","_blank")},onDialogDismiss:function onDialogDismiss(){o.dispatch({type:"SET_DOWNLOAD_URL",payload:""}),i("export")}}))};var u=l(a(63804)),c=a(50927),p=i(a(64895)),d=i(a(60724)),m=a(6432),v=i(a(51432))},98302:(t,r,a)=>{"use strict";var o=a(18194).__,i=a(67394),l=a(67971),u=a(52369);i(r,"__esModule",{value:!0}),r.default=function ImportComplete(){var t=(0,c.useContext)(d.Context),r=function getTemplates(t,r){var a={};for(var o in null==r||null===(i=r.templates)||void 0===i?void 0:i.succeed){var i;a[o]=t[o]}return a},a=function getContent(t,r){var a={};for(var o in null==r?void 0:r.content)for(var i in a[o]={},null===(l=r.content[o])||void 0===l?void 0:l.succeed){var l;a[o][i]=t[o][i]}return a},i=function getWPContent(t,r){var a={};for(var o in null==r?void 0:r["wp-content"]){var i,l=null===(i=r["wp-content"][o])||void 0===i?void 0:i.succeed;a[o]=l?(0,p.default)(l):[]}return a};return c.default.createElement(m.default,{type:"import",footer:function getFooter(){return c.default.createElement(_.default,{separator:!0,justify:"end"},c.default.createElement(y.default,null))}()},c.default.createElement(v.default,{image:elementorAppConfig.assets_url+"images/go-pro.svg",heading:o("Your kit is now live on your site!","elementor"),notice:c.default.createElement(c.default.Fragment,null,c.default.createElement(g.default,{url:"https://go.elementor.com/app-what-are-kits",italic:!0},o("Click Here","elementor"))," ",o("to learn more about building your site with Elementor Kits","elementor"))},c.default.createElement(h.default,{data:function getKitData(){if(!t.data.fileResponse)return{};var o=t.data.fileResponse.stage1.manifest,l=t.data.fileResponse.stage2;return{templates:r(o.templates,l),content:a(o.content,l),"wp-content":i(o["wp-content"],l),"site-settings":t.data.includes.includes("settings")?o["site-settings"]:{}}}()})))};var c=u(a(63804));a(3777),a(38081);var p=l(a(83452)),d=a(6432),m=l(a(64895)),v=l(a(1422)),h=l(a(54497)),g=l(a(69038)),y=l(a(5199)),_=l(a(93965))},5304:(t,r,a)=>{"use strict";var o=a(18194).__,i=a(23615),l=a(67394),u=a(67971),c=a(52369);l(r,"__esModule",{value:!0}),r.default=ImportButton;var p=c(a(63804));a(3777),a(38081);var d=u(a(47834)),m=a(50927),v=a(6432),h=u(a(72745));function ImportButton(){var t=(0,p.useContext)(v.Context),r=(0,m.useNavigate)(),a=(0,p.useState)(!1),i=(0,d.default)(a,2),l=i[0],u=i[1];return(0,p.useEffect)((function(){u(!!t.data.includes.length)}),[t.data.includes]),p.default.createElement(h.default,{variant:"contained",text:o("Next","elementor"),color:l?"primary":"disabled",onClick:function onClick(){l&&(t.data.includes.includes("templates")&&t.data.fileResponse.stage1.conflicts?r("import/resolver"):r("import/process"))}})}ImportButton.propTypes={setIsDownloading:i.func}},91156:(t,r,a)=>{"use strict";var o=a(18194).__,i=a(67394),l=a(67971),u=a(52369);i(r,"__esModule",{value:!0}),r.default=function ImportContent(){var t,r,a=(0,c.useContext)(d.Context),i=(0,p.useNavigate)();return(0,c.useEffect)((function(){a.data.file||i("import")}),[a.data.file]),c.default.createElement(m.default,{type:"import",footer:function getFooter(){return c.default.createElement(_.default,{separator:!0,justify:"end"},c.default.createElement(y.default,{text:o("Previous","elementor"),variant:"contained",onClick:function onClick(){return a.dispatch({type:"SET_FILE",payload:null})}}),c.default.createElement(x.default,null))}()},c.default.createElement("section",{className:"e-app-export-kit"},c.default.createElement(v.default,{heading:o("Import a Template Kit","elementor"),description:[o("Choose which Elementor components - templates, content and site settings - to include in your kit.","elementor"),c.default.createElement(c.default.Fragment,{key:"description-secondary-line"},o("By default, all of your components will be imported.","elementor")," ",function getLearnMoreLink(){return c.default.createElement(g.default,{url:"https://go.elementor.com/app-what-are-kits",italic:!0},o("Learn More","elementor"))}())]}),c.default.createElement(h.default,{manifest:null===(t=a.data.fileResponse)||void 0===t||null===(r=t.stage1)||void 0===r?void 0:r.manifest})))};var c=u(a(63804)),p=a(50927),d=a(6432),m=l(a(64895)),v=l(a(73331)),h=l(a(57654)),g=l(a(69038)),y=l(a(72745)),_=l(a(93965)),x=l(a(5304))},2200:(t,r,a)=>{"use strict";var o=a(18194).__,i=a(67394),l=a(67971),u=a(52369);i(r,"__esModule",{value:!0}),r.default=function ImportKit(){var t=(0,w.default)(),r=t.ajaxState,a=t.setAjax,i=t.ajaxActions,l=(0,c.useState)(!1),u=(0,d.default)(l,2),C=u[0],N=u[1],T=(0,c.useState)(!1),P=(0,d.default)(T,2),S=P[0],O=P[1],M=(0,c.useContext)(v.Context),R=(0,m.useNavigate)(),I=location.hash.match("referrer=([^&]+)");return(0,c.useEffect)((function(){M.data.file&&a({data:{e_import_file:M.data.file,action:"elementor_import_kit",data:(0,p.default)({stage:1})}})}),[M.data.file]),(0,c.useEffect)((function(){"success"===r.status?M.dispatch({type:"SET_FILE_RESPONSE",payload:{stage1:r.response}}):"error"===r.status&&N(!0)}),[r.status]),(0,c.useEffect)((function(){M.data.fileResponse&&M.data.file&&R("/import/content")}),[M.data.fileResponse]),(0,c.useEffect)((function(){M.dispatch({type:"SET_INCLUDES",payload:[]})}),[]),c.default.createElement(h.default,{type:"import"},c.default.createElement("section",{className:"e-app-import"},"kit-library"===(null==I?void 0:I[1])&&c.default.createElement(E.default,{className:"e-app-import__back-to-library",icon:"eicon-chevron-left",text:o("Back to Kit Library","elementor"),onClick:function onClick(){return R("/kit-library")}}),c.default.createElement(g.default,{heading:o("Import a Template Kit","elementor"),description:[o("Upload a file with templates, site settings, content, etc., and apply them to your site automatically.","elementor"),function getLearnMoreLink(){return c.default.createElement(_.default,{url:"https://go.elementor.com/app-what-are-kits",key:"learn-more-link",italic:!0},o("Learn More","elementor"))}()]}),c.default.createElement(x.default,{label:o("Important","elementor"),color:"warning",className:"e-app-import__notice"},o("We recommend that you backup your site before importing a kit file.","elementor")),c.default.createElement(b.default,{className:"e-app-import__drop-zone",heading:o("Upload Files to Your Library","elementor"),text:o("Drag & drop the .zip file with your Kit","elementor"),secondaryText:o("Or","elementor"),filetypes:["zip"],onFileSelect:function onFileSelect(t){O(!0),M.dispatch({type:"SET_FILE",payload:t})},onError:function onError(){return N(!0)},isLoading:S}),C&&c.default.createElement(y.default,{onApprove:function onApprove(){return window.open("https://elementor.com/help/import-kit?utm_source=import-export&utm_medium=wp-dash&utm_campaign=learn","_blank")},onDismiss:function resetImportProcess(){M.dispatch({type:"SET_FILE",payload:null}),N(!1),O(!1),i.reset()}})))};var c=u(a(63804)),p=l(a(32009));a(64828);var d=l(a(47834)),m=a(50927),v=a(6432),h=l(a(64895)),g=l(a(73331)),y=l(a(62858)),_=l(a(69038)),x=l(a(63104)),b=l(a(20857)),E=l(a(72745)),w=l(a(51432));a(18713)},61722:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971),l=a(52369);o(r,"__esModule",{value:!0}),r.default=function ImportProcess(){var t,r=(0,g.default)(),a=r.ajaxState,o=r.setAjax,i=(0,u.useContext)(h.Context),l=(0,d.useNavigate)(),y=new URLSearchParams(window.location.search),_=Object.fromEntries(y.entries()),x=(null==_?void 0:_.file_url)||(null===(t=location.hash.match("file_url=([^&]+)"))||void 0===t?void 0:t[1]);return(0,u.useEffect)((function(){"success"===a.status&&(i.data.fileResponse.hasOwnProperty("stage2")?l("/import/complete"):l("/import/content"))}),[i.data.fileResponse]),u.default.createElement(m.default,{type:"import"},u.default.createElement(v.default,{status:a.status,onLoad:function onLoad(){var t={data:{action:"elementor_import_kit"}};if(x||i.data.fileResponse){if(x&&!i.data.file){var r=decodeURIComponent(x);i.dispatch({type:"SET_FILE",payload:r}),t.data.e_import_file=r,t.data.data=(0,p.default)({stage:1});var a=location.hash.match("referrer=([^&]+)");a&&i.dispatch({type:"SET_REFERRER",payload:a[1]})}else t.data.data={stage:2,session:i.data.fileResponse.stage1.session,include:i.data.includes,overrideConditions:i.data.overrideConditions},i.data.referrer&&(t.data.data.referrer=i.data.referrer),t.data.data=(0,p.default)(t.data.data);o(t)}},onSuccess:function onSuccess(){var t;if(null!==(t=i.data.fileResponse)&&void 0!==t&&t.stage1){var r=i.data.fileResponse,o=(0,c.default)((0,c.default)({},r),{},{stage2:a.response});i.dispatch({type:"SET_FILE_RESPONSE",payload:o})}else i.dispatch({type:"SET_FILE_RESPONSE",payload:{stage1:a.response}})},onDialogApprove:function onDialogApprove(){},onDialogDismiss:function onDialogDismiss(){i.dispatch({type:"SET_FILE",payload:null}),l("/import")}}))};var u=l(a(63804)),c=i(a(84899)),p=i(a(32009));a(42679),a(76139),a(12897),a(93085),a(64828),a(3777),a(38081);var d=a(50927),m=i(a(64895)),v=i(a(60724)),h=a(6432),g=i(a(51432))},60753:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971),u=a(52369);i(r,"__esModule",{value:!0}),r.default=ConflictCheckbox;var c=u(a(63804));a(3777),a(38081);var p=a(6432),d=l(a(23283));function ConflictCheckbox(t){var r=(0,c.useContext)(p.Context);return(0,c.useEffect)((function(){r.data.overrideConditions.length||r.dispatch({type:"ADD_OVERRIDE_CONDITION",payload:t.id})}),[]),c.default.createElement(d.default,{checked:function isSelected(){return r.data.overrideConditions.includes(t.id)}(),onChange:function updateOverrideCondition(a){var o=a.target.checked?"ADD_OVERRIDE_CONDITION":"REMOVE_OVERRIDE_CONDITION";r.dispatch({type:o,payload:t.id})},className:t.className})}ConflictCheckbox.propTypes={className:o.string,id:o.number.isRequired},ConflictCheckbox.defaultProps={className:""}},95626:(t,r,a)=>{"use strict";var o=a(18194).__,i=a(23615),l=a(67394),u=a(67971),c=a(52369);l(r,"__esModule",{value:!0}),r.default=Conflict;var p=c(a(63804));a(3777),a(38081);var d=a(6432),m=u(a(60753)),v=u(a(80957)),h=u(a(36357)),g=u(a(57390)),y=u(a(72745));function Conflict(t){var r,a,i=(0,p.useContext)(d.Context),l=null===(r=i.data.fileResponse)||void 0===r||null===(a=r.stage1)||void 0===a?void 0:a.manifest,u=function isImportedAssetSelected(t){return i.data.overrideConditions.includes(t)},c=function getAssetClassName(t){var r=["e-app-import-resolver-conflicts__asset"];return t&&r.push("active"),r.join(" ")};return p.default.createElement(g.default,{container:!0,noWrap:!0},p.default.createElement(m.default,{id:t.importedId,type:"main-type",className:"e-app-import-resolver-conflicts__checkbox"}),p.default.createElement(g.default,{item:!0},p.default.createElement(v.default,{variant:"h5",tag:"h4",className:"e-app-import-resolver-conflicts__title"},function getConflictTitle(t){var r,a=l.templates[t].doc_type,o=null===(r=elementorAppConfig["import-export"].summaryTitles.templates)||void 0===r?void 0:r[a];return(null==o?void 0:o.single)||a}(t.importedId)),p.default.createElement(g.default,{item:!0},p.default.createElement(h.default,{variant:"sm",tag:"span",className:function getImportedAssetClasses(t){return c(u(t))}(t.importedId)},o("Imported"),": ",l.templates[t.importedId].title),p.default.createElement(h.default,{style:!0,variant:"sm",tag:"span",className:function getExistingAssetClasses(t){return c(!u(t))}(t.importedId)},o("Existing"),": ",t.conflictData.template_title," ",function getEditTemplateButton(t){return p.default.createElement(y.default,{className:"e-app-import-resolver-conflicts__edit-template",url:t,target:"_blank",icon:"eicon-editor-external-link",text:o("Edit Template","elementor"),hideText:!0})}(t.conflictData.edit_url)))))}Conflict.propTypes={importedId:i.number,conflictData:i.object}},74285:(t,r,a)=>{"use strict";var o=a(18194).__,i=a(67394),l=a(52369),u=a(67971);i(r,"__esModule",{value:!0}),r.default=function ImportResolver(){var t,r,a=(0,m.useContext)(h.Context),i=(0,v.useNavigate)(),l=(null===(t=a.data)||void 0===t||null===(r=t.fileResponse)||void 0===r?void 0:r.stage1.conflicts)||{};return m.default.createElement(g.default,{type:"import",footer:function getFooter(){return m.default.createElement(T.default,{separator:!0,justify:"end"},m.default.createElement(w.default,{text:o("Previous","elementor"),variant:"contained",onClick:function onClick(){return i("import/content")}}),m.default.createElement(w.default,{text:o("Next","elementor"),variant:"contained",color:"primary",onClick:function onClick(){return i("import/process")}}))}()},m.default.createElement("section",{className:"e-app-import-resolver"},m.default.createElement(y.default,{heading:o("Import a Template Kit","elementor"),description:[o("We noticed that items in your kit overlap with what's already live on your site.","elementor"),m.default.createElement(m.default.Fragment,{key:"description-secondary-line"},o("Items that you leave checked here will override your current design and settings.","elementor")," ",function getLearnMoreLink(){return m.default.createElement(E.default,{url:"https://go.elementor.com/app-what-are-kits",italic:!0},o("Learn More","elementor"))}())]}),function isHomePageOverride(){if(a.data.includes.includes("content")){var t,r,o,i=(null===(t=a.data)||void 0===t||null===(r=t.fileResponse)||void 0===r||null===(o=r.stage1.manifest.content)||void 0===o?void 0:o.page)||{};return(0,p.default)(i).find((function(t){return t[1].show_on_front}))}return!1}()&&m.default.createElement(b.default,{className:"e-app-import-resolver__notice",label:o("Note","elementor"),color:"warning"},o("Your site's homepage will be determined by the kit. You can change this later.","elementor")),m.default.createElement(x.default,{isOpened:!0},m.default.createElement(x.default.Header,{toggle:!1},m.default.createElement(x.default.Headline,null,o("Select the items you want to keep and apply:","elementor"))),m.default.createElement(x.default.Body,{padding:"20"},m.default.createElement(C.default,{className:"e-app-import-resolver-conflicts__container"},m.default.createElement(N.default,{separated:!0,className:"e-app-import-resolver-conflicts"},(0,p.default)(l).map((function(t,r){var a=(0,c.default)(t,2),o=a[0],i=a[1];return m.default.createElement(N.default.Item,{padding:"20",key:r,className:"e-app-import-resolver-conflicts__item"},m.default.createElement(_.default,{importedId:(0,d.default)(o),conflictData:i[0]}))}))))))))};var c=u(a(47834)),p=u(a(38923)),d=u(a(14176));a(3777),a(38081),a(71954),a(90286);var m=l(a(63804)),v=a(50927),h=a(6432),g=u(a(64895)),y=u(a(73331)),_=u(a(95626)),x=u(a(88755)),b=u(a(63104)),E=u(a(69038)),w=u(a(72745)),C=u(a(7465)),N=u(a(53733)),T=u(a(93965));a(80322)},76322:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=ContentLayout;var u=l(a(63804));function ContentLayout(t){return u.default.createElement("div",{className:"e-app-import-export-content-layout"},u.default.createElement("div",{className:"e-app-import-export-content-layout__container"},t.children))}a(82254),ContentLayout.propTypes={children:o.any.isRequired}},60724:(t,r,a)=>{"use strict";var o=a(18194).__,i=a(23615),l=a(67394),u=a(67971),c=a(52369);l(r,"__esModule",{value:!0}),r.default=FileProcess;var p=c(a(63804)),d=a(47224),m=u(a(62858)),v=u(a(1422));function FileProcess(t){return(0,p.useEffect)((function(){t.onLoad()}),[]),(0,p.useEffect)((function(){"success"===t.status&&t.onSuccess()}),[t.status]),p.default.createElement(v.default,{className:(0,d.arrayToClassName)(["e-app-import-export-file-process",t.className]),icon:"eicon-loading eicon-animation-spin",heading:o("Setting up your kit...","elementor"),description:p.default.createElement(p.default.Fragment,null,o("This usually takes a few moments.","elementor"),p.default.createElement("br",null),o("Don't close this window until the process is finished.","elementor"))},"error"===t.status&&p.default.createElement(m.default,{onApprove:t.onDialogApprove,onDismiss:t.onDialogDismiss}))}FileProcess.propTypes={className:i.string,status:i.oneOf(["initial","success","error"]),onLoad:i.func.isRequired,onSuccess:i.func.isRequired,onDialogApprove:i.func.isRequired,onDialogDismiss:i.func.isRequired},FileProcess.defaultProps={className:""}},62858:(t,r,a)=>{"use strict";var o=a(18194).__,i=a(23615),l=a(67394),u=a(67971);l(r,"__esModule",{value:!0}),r.default=ImportFailedDialog;var c=u(a(63804)),p=u(a(76639));function ImportFailedDialog(t){return c.default.createElement(p.default,{title:o("Something went wrong","elementor"),text:o("Nothing to worry about, just try again. If the problem continues, head over to the Help Center.","elementor"),approveButtonColor:"link",approveButtonText:o("Learn More","elementor"),approveButtonOnClick:t.onApprove,dismissButtonText:o("Dismiss","elementor"),dismissButtonOnClick:t.onDismiss,onClose:t.onDismiss})}ImportFailedDialog.propTypes={onApprove:i.func.isRequired,onDismiss:i.func.isRequired}},23776:(t,r,a)=>{"use strict";var o=a(18194).__,i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=function ExportInfoModal(t){return u.default.createElement(d.default,(0,c.default)({},t,{title:o("Export a Template Kit","elementor")}),u.default.createElement(d.default.Section,null,u.default.createElement(d.default.Heading,null,o("What’s a Template Kit?","elementor")),u.default.createElement(d.default.Text,null,o("A kit is a zip file containing anything from an entire site to individual components.","elementor"))),u.default.createElement(d.default.Section,null,u.default.createElement(d.default.Heading,null,o("How does exporting work?","elementor")),u.default.createElement(d.default.Text,null,u.default.createElement(u.default.Fragment,null,o("Select what to include from your site. We’ll use that to create a zip file.","elementor"),u.default.createElement("br",null),o("That’s it!","elementor")," ",u.default.createElement(p.default,{url:"http://go.elementor.com/app-export-kit"},o("Learn More","elementor"))))),u.default.createElement(d.default.Section,null,u.default.createElement(d.default.Tip,{title:o("Tip!","elementor"),description:o("Once your download is complete, import your kit to another site and get it up and running quickly.","elementor")})))};var u=l(a(63804)),c=l(a(37959)),p=l(a(69038)),d=l(a(45933))},96079:(t,r,a)=>{"use strict";var o=a(18194).__,i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=function ImportInfoModal(t){return u.default.createElement(d.default,(0,c.default)({},t,{title:o("Import a Template Kit","elementor")}),u.default.createElement(d.default.Section,null,u.default.createElement(d.default.Heading,null,o("What’s a Template Kit?","elementor")),u.default.createElement(d.default.Text,null,o("A kit is a zip file containing anything from an entire site to individual components.","elementor"))),u.default.createElement(d.default.Section,null,u.default.createElement(d.default.Heading,null,o("How does importing work?","elementor")),u.default.createElement(d.default.Text,null,u.default.createElement(u.default.Fragment,null,o("After you select what's included from your imported kit, you’ll be able to choose which current site settings should stay and which the import should override. ","elementor"),u.default.createElement("br",null),u.default.createElement(p.default,{url:"http://go.elementor.com/app-import-kit"},o("Learn More","elementor"))))))};var u=l(a(63804)),c=l(a(37959)),p=l(a(69038)),d=l(a(45933))},92236:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=InfoModalHeading;var u=l(a(63804)),c=a(47224),p=l(a(80957));function InfoModalHeading(t){return u.default.createElement(p.default,{variant:"h3",tag:"h2",className:(0,c.arrayToClassName)(["e-app-import-export-info-modal__heading",t.className])},t.children)}InfoModalHeading.propTypes={className:o.string,children:o.oneOfType([o.string,o.object,o.arrayOf(o.object)]).isRequired},InfoModalHeading.defaultProps={className:""}},71107:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=InfoModalSection;var u=l(a(63804)),c=a(47224),p=l(a(89854));function InfoModalSection(t){return u.default.createElement(p.default.Section,{className:(0,c.arrayToClassName)(["e-app-import-export-info-modal__section",t.className])},t.children)}InfoModalSection.propTypes={className:o.string,children:o.any},InfoModalSection.defaultProps={className:""}},67215:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=InfoModalText;var u=l(a(63804)),c=a(47224),p=l(a(36357));function InfoModalText(t){return u.default.createElement(p.default,{variant:"sm",className:(0,c.arrayToClassName)(["e-app-import-export-info-modal__text",t.className])},t.children)}InfoModalText.propTypes={className:o.string,children:o.any.isRequired},InfoModalText.defaultProps={className:""}},26822:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=InfoModalTip;var u=l(a(63804)),c=l(a(37959)),p=a(47224),d=l(a(89854));function InfoModalTip(t){return u.default.createElement(d.default.Tip,(0,c.default)({},t,{className:(0,p.arrayToClassName)(["e-app-import-export-info-modal__tip",t.className])}))}InfoModalTip.propTypes={className:o.string},InfoModalTip.defaultProps={className:""}},45933:(t,r,a)=>{"use strict";var o=a(18194).__,i=a(23615),l=a(67394),u=a(67971);l(r,"__esModule",{value:!0}),r.default=InfoModal,r.infoButtonProps=void 0;var c=u(a(63804)),p=u(a(37959)),d=u(a(89854)),m=u(a(71107)),v=u(a(92236)),h=u(a(67215)),g=u(a(26822));a(1431);var y={id:"info-modal",className:"e-app-export-kit-information__info-icon",icon:"eicon-info-circle",text:o("Kit Info","elementor"),color:"secondary",hideText:!0};function InfoModal(t){var r={className:"e-app-import-export-info-modal",setShow:t.setShow};return t.hasOwnProperty("show")?r.show=t.show:r.toggleButtonProps=y,c.default.createElement(d.default,(0,p.default)({},r,{title:t.title}),t.children)}r.infoButtonProps=y,InfoModal.propTypes={show:i.bool,setShow:i.func,title:i.string,children:i.any.isRequired},InfoModal.Section=m.default,InfoModal.Heading=v.default,InfoModal.Text=h.default,InfoModal.Tip=g.default},14963:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971),u=a(52369);i(r,"__esModule",{value:!0}),r.default=KitContentCheckbox;var c=u(a(63804));a(3777),a(38081);var p=a(6432),d=l(a(23283));function KitContentCheckbox(t){var r=(0,c.useContext)(p.Context),a=function isSelected(){return r.data.includes.includes(t.type)},o=function setIncludes(a){var o=a.target.checked?"ADD_INCLUDE":"REMOVE_INCLUDE";r.dispatch({type:o,payload:t.type})};return(0,c.useEffect)((function(){r.data.includes.length||r.dispatch({type:"ADD_INCLUDE",payload:t.type})}),[]),(0,c.useMemo)((function(){return c.default.createElement(d.default,{checked:a(),onChange:o,className:t.className})}),[r.data.includes])}KitContentCheckbox.propTypes={className:o.string,type:o.string.isRequired},KitContentCheckbox.defaultProps={className:""}},6581:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=TemplatesFeatures;var u=l(a(63804)),c=l(a(90329));function TemplatesFeatures(t){var r,a=null===(r=t.features.locked)||void 0===r?void 0:r.length;return u.default.createElement(u.default.Fragment,null,function getOpenFeatures(){var r;return null===(r=t.features.open)||void 0===r?void 0:r.join(", ")}(),function getLockedFeatures(){if(a)return u.default.createElement(c.default,{tag:"span",offset:19,show:t.showTooltip,title:t.features.tooltip,disabled:!t.isLocked,className:t.isLocked?"e-app-export-templates-features__locked":""},", "+t.features.locked.join(", "))}())}a(53591),TemplatesFeatures.propTypes={features:o.object,isLocked:o.bool,showTooltip:o.bool},TemplatesFeatures.defaultProps={showTooltip:!1}},5214:(t,r,a)=>{"use strict";var o=a(18194).__;a(67394)(r,"__esModule",{value:!0}),r.default=void 0;var i=[{type:"templates",data:{title:o("Templates","elementor"),features:{open:[o("Saved Templates","elementor")],locked:[o("Headers","elementor"),o("Footers","elementor"),o("Archives","elementor"),o("Single Posts","elementor"),o("Single Pages","elementor"),o("Search Results","elementor"),o("404 Error Page","elementor"),o("Popups","elementor"),o("Global widgets","elementor")],tooltip:o("To import or export these components, you’ll need Elementor Pro.","elementor")}}},{type:"content",data:{title:o("Content","elementor"),features:{open:[o("Elementor Pages","elementor"),o("Landing Pages","elementor"),o("Elementor Posts","elementor"),o("WP Pages","elementor"),o("WP Posts","elementor"),o("Custom Post Type","elementor")]}}},{type:"settings",data:{title:o("Site Settings","elementor"),features:{open:[o("Global Colors","elementor"),o("Global Fonts","elementor"),o("Theme Style settings","elementor"),o("Layout Settings","elementor"),o("Lightbox Settings","elementor"),o("Background Settings","elementor")]}}}];r.default=i},57654:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971),u=a(52369);i(r,"__esModule",{value:!0}),r.default=KitContent;var c=u(a(63804));a(90286);var p=l(a(18042)),d=l(a(84899)),m=l(a(47834)),v=l(a(6581)),h=l(a(14963)),g=l(a(98063)),y=l(a(7465)),_=l(a(53733)),x=l(a(80957)),b=l(a(36357)),E=l(a(57390)),w=l(a(5214));function KitContent(t){var r=elementorAppConfig.hasPro,a=(0,c.useState)({}),o=(0,m.default)(a,2),i=o[0],l=o[1],u=function setContainerHoverState(t,r){l((function(a){return(0,d.default)((0,d.default)({},a),{},(0,p.default)({},t,r))}))};return c.default.createElement(y.default,null,c.default.createElement(_.default,{separated:!0,className:"e-app-export-kit-content"},w.default.map((function(a,o){var l,p=(null===(l=a.data.features)||void 0===l?void 0:l.locked)&&!r;if(t.manifest){var d="settings"===a.type?"site-settings":a.type;if(!t.manifest[d])return}return c.default.createElement(_.default.Item,{padding:"20",key:a.type,className:"e-app-export-kit-content__item"},c.default.createElement("div",{onMouseEnter:function onMouseEnter(){return p&&u(o,!0)},onMouseLeave:function onMouseLeave(){return p&&u(o,!1)}},c.default.createElement(E.default,{container:!0,noWrap:!0},c.default.createElement(h.default,{type:a.type,className:"e-app-export-kit-content__checkbox"}),c.default.createElement(E.default,{item:!0},c.default.createElement(x.default,{variant:"h4",tag:"h3",className:"e-app-export-kit-content__title"},a.data.title),c.default.createElement(E.default,{item:!0},c.default.createElement(b.default,{variant:"sm",tag:"span",className:"e-app-export-kit-content__description"},a.data.description||function getTemplateFeatures(t,a){if(t)return c.default.createElement(v.default,{features:t,isLocked:!r,showTooltip:i[a]})}(a.data.features,o)),p&&function getGoProButton(){return c.default.createElement(g.default,{className:"e-app-export-kit-content__go-pro-button",url:"https://go.elementor.com/go-pro-import-export"})}())))))}))))}a(89784),KitContent.propTypes={className:o.string,manifest:o.object},KitContent.defaultProps={className:""}},54497:(t,r,a)=>{"use strict";var o=a(18194).__,i=a(23615),l=a(67394),u=a(67971);l(r,"__esModule",{value:!0}),r.default=KitData;var c=u(a(63804)),p=u(a(84899)),d=u(a(38923)),m=u(a(83452));a(90286),a(64434);var v=u(a(80957)),h=u(a(36357)),g=u(a(53733));function KitData(t){var r=t.data,a=function getSummaryTitle(t,r,a){var o=elementorAppConfig["import-export"].summaryTitles[t][r];return null!=o&&o.single?a?a+" "+(a>1?o.plural:o.single):"":o},i=[{title:o("Templates:","elementor"),data:function getTemplates(){var t={};for(var o in null==r?void 0:r.templates){var i=r.templates[o].doc_type;t[i]||(t[i]=0),t[i]++}return(0,d.default)(t).map((function(t){return a("templates",t[0],t[1])}))}()},{title:o("Site Settings:","elementor"),data:function getSiteSettings(){var t=(null==r?void 0:r["site-settings"])||{};return(0,d.default)(t).map((function(t){return a("site-settings",t[1])}))}()},{title:o("Content:","elementor"),data:function getContent(){var t=(null==r?void 0:r.content)||{},o=(null==r?void 0:r["wp-content"])||{},i=(0,p.default)({},t);for(var l in i)i[l]=(0,m.default)(i[l]).concat(o[l]||[]);return i=(0,p.default)((0,p.default)({},o),i),(0,d.default)(i).map((function(t){return a("content",t[0],t[1].length)}))}()}];return c.default.createElement(c.default.Fragment,null,c.default.createElement(v.default,{variant:"h6",tag:"h3",className:"e-app-export-complete__kit-content-title"},o("This Template Kit includes:","elementor")),c.default.createElement(g.default,{className:"e-app-export-complete-kit-data-list"},i.map((function(t,r){if(t.data.length)return c.default.createElement(g.default.Item,{key:r,className:"e-app-export-complete-kit-data-list__item"},c.default.createElement(h.default,{tag:"strong",variant:"sm"},c.default.createElement("strong",null,t.title))," ",c.default.createElement(h.default,{tag:"span",variant:"sm"},t.data.filter((function(t){return t})).join(" | ")))}))))}a(20186),KitData.propTypes={data:i.object}},64895:(t,r,a)=>{"use strict";var o=a(18194).__,i=a(23615),l=a(67394),u=a(67971),c=a(52369);l(r,"__esModule",{value:!0}),r.default=Layout;var p=c(a(63804));a(64828);var d=u(a(74846)),m=u(a(84899)),v=u(a(47834)),h=u(a(94295)),g=u(a(76322)),y=a(45933),_=u(a(96079)),x=u(a(23776));function Layout(t){var r=(0,p.useState)(!1),a=(0,v.default)(r,2),i=a[0],l=a[1],u=location.hash.match("referrer=([^&]+)"),c={title:"import"===t.type?o("Import","elementor"):o("Export","elementor"),headerButtons:[function getInfoButtonProps(){return(0,m.default)((0,m.default)({},y.infoButtonProps),{},{onClick:function onClick(){l(!0)}})}()].concat((0,d.default)(t.headerButtons)),content:function getContent(){var r={show:i,setShow:l};return p.default.createElement(g.default,null,t.children,"import"===t.type?p.default.createElement(_.default,r):p.default.createElement(x.default,r))}(),footer:t.footer},b="#tab-import-export-kit";return u||-1!==elementorAppConfig.return_url.indexOf(b)||(elementorAppConfig.return_url+=b),p.default.createElement(h.default,c)}Layout.propTypes={type:i.oneOf(["import","export"]),headerButtons:i.arrayOf(i.object),children:i.object.isRequired,footer:i.object},Layout.defaultProps={headerButtons:[]}},73331:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=PageHeader;var u=l(a(63804)),c=l(a(59396)),p=a(47224),d=l(a(57390)),m=l(a(80957)),v=l(a(36357));function PageHeader(t){var r=["e-app-import-export-page-header",t.className];return u.default.createElement("div",{className:(0,p.arrayToClassName)(r)},u.default.createElement(d.default,{container:!0},u.default.createElement(d.default,{item:!0,className:"e-app-import-export-page-header__content-wrapper"},t.heading&&u.default.createElement(m.default,{variant:"display-3",className:"e-app-import-export-page-header__heading"},t.heading),t.description&&u.default.createElement(v.default,{className:"e-app-import-export-page-header__description"},function handleMultiLine(t){if((0,c.default)(t)){var r=[];return t.forEach((function(t,a){a&&r.push(u.default.createElement("br",{key:a})),r.push(t)})),r}return t}(t.description)))))}a(90358),PageHeader.propTypes={className:o.string,heading:o.string,description:o.oneOfType([o.string,o.array,o.object])},PageHeader.defaultProps={className:""}},36355:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=PanelBody;var u=l(a(63804)),c=a(47224),p=l(a(17493)),d=l(a(48017));function PanelBody(t){return u.default.createElement(d.default.Content,null,u.default.createElement(p.default.Body,{padding:t.padding,className:(0,c.arrayToClassName)(["e-app-import-export-panel__body",t.className])},t.children))}PanelBody.propTypes={className:o.string,padding:o.string,children:o.any.isRequired},PanelBody.defaultProps={className:"",padding:"0"}},97436:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=PanelHeader;var u=l(a(63804)),c=a(47224),p=l(a(17493)),d=l(a(48017));function PanelHeader(t){return u.default.createElement(d.default.Toggle,{active:t.toggle,showIcon:t.showIcon},u.default.createElement(p.default.Header,{padding:"20",className:(0,c.arrayToClassName)(["e-app-import-export-panel__header",t.className])},t.children))}PanelHeader.propTypes={className:o.string,padding:o.string,toggle:o.bool,showIcon:o.bool,children:o.any.isRequired},PanelHeader.defaultProps={className:"",padding:"20",toggle:!0,showIcon:!0}},54009:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=PanelHeadline;var u=l(a(63804)),c=a(47224),p=l(a(17493));function PanelHeadline(t){return u.default.createElement(p.default.Headline,{className:(0,c.arrayToClassName)(["e-app-import-export-panel__headline",t.className])},t.children)}PanelHeadline.propTypes={className:o.string,children:o.any.isRequired},PanelHeadline.defaultProps={className:""}},88755:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=Panel;var u=l(a(63804)),c=a(47224),p=l(a(17493)),d=l(a(48017)),m=l(a(97436)),v=l(a(54009)),h=l(a(36355));function Panel(t){return u.default.createElement(d.default,{isOpened:t.isOpened},u.default.createElement(p.default,{className:(0,c.arrayToClassName)(["e-app-import-export-panel",t.className])},t.children))}a(64392),Panel.propTypes={className:o.string,isOpened:o.bool,children:o.any.isRequired},Panel.defaultProps={className:"",isOpened:!1},Panel.Header=m.default,Panel.Headline=v.default,Panel.Body=h.default},1422:(t,r,a)=>{"use strict";var o=a(23615),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=WizardStep;var u=l(a(63804)),c=a(47224),p=l(a(57390)),d=l(a(69722)),m=l(a(80957)),v=l(a(36357));function WizardStep(t){var r=["e-app-import-export-wizard-step",t.className];return u.default.createElement(p.default,{className:(0,c.arrayToClassName)(r),justify:"center",container:!0},u.default.createElement(p.default,{item:!0},(t.image||t.icon)&&u.default.createElement(p.default,{className:"e-app-import-export-wizard-step__media-container",justify:"center",alignItems:"end",container:!0},t.image&&u.default.createElement("img",{className:"e-app-import-export-wizard-step__image",src:t.image}),t.icon&&u.default.createElement(d.default,{className:"e-app-import-export-wizard-step__icon ".concat(t.icon)})),t.heading&&u.default.createElement(m.default,{variant:"display-3",className:"e-app-import-export-wizard-step__heading"},t.heading),t.description&&u.default.createElement(v.default,{variant:"xl",className:"e-app-import-export-wizard-step__description"},t.description),t.children&&u.default.createElement(p.default,{item:!0,className:"e-app-import-export-wizard-step__content"},t.children),t.notice&&u.default.createElement(v.default,{variant:"xs",className:"e-app-import-export-wizard-step__notice"},t.notice)))}a(3714),WizardStep.propTypes={className:o.string,image:o.string,icon:o.string,heading:o.string,description:o.oneOfType([o.string,o.object]),notice:o.oneOfType([o.string,o.object]),children:o.any},WizardStep.defaultProps={className:""}},70745:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.DownloadLink=void 0;var l=i(a(11959)),u=i(a(39041)),c=i(a(77371)),p=i(a(68537)),d=function(t){(0,c.default)(DownloadLink,t);var r=(0,p.default)(DownloadLink);function DownloadLink(){return(0,l.default)(this,DownloadLink),r.apply(this,arguments)}return(0,u.default)(DownloadLink,null,[{key:"getEndpointFormat",value:function getEndpointFormat(){return"kits/download-link/{id}"}}]),DownloadLink}($e.modules.CommandData);r.DownloadLink=d},6573:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.Favorites=void 0;var l=i(a(11959)),u=i(a(39041)),c=i(a(77371)),p=i(a(68537)),d=function(t){(0,c.default)(Favorites,t);var r=(0,p.default)(Favorites);function Favorites(){return(0,l.default)(this,Favorites),r.apply(this,arguments)}return(0,u.default)(Favorites,null,[{key:"getEndpointFormat",value:function getEndpointFormat(){return"kits/favorites/{id}"}}]),Favorites}($e.modules.CommandData);r.Favorites=d},30358:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),o(r,"DownloadLink",{enumerable:!0,get:function get(){return d.DownloadLink}}),o(r,"Favorites",{enumerable:!0,get:function get(){return m.Favorites}}),r.Index=void 0;var l=i(a(11959)),u=i(a(39041)),c=i(a(77371)),p=i(a(68537)),d=a(70745),m=a(6573),v=function(t){(0,c.default)(Index,t);var r=(0,p.default)(Index);function Index(){return(0,l.default)(this,Index),r.apply(this,arguments)}return(0,u.default)(Index,null,[{key:"getEndpointFormat",value:function getEndpointFormat(){return"kits/{id}"}}]),Index}($e.modules.CommandData);r.Index=v},69485:(t,r,a)=>{"use strict";var o=a(67394),i=a(52369),l=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var u=l(a(11959)),c=l(a(39041)),p=l(a(77371)),d=l(a(68537)),m=i(a(30358)),v=function(t){(0,p.default)(Component,t);var r=(0,d.default)(Component);function Component(){return(0,u.default)(this,Component),r.apply(this,arguments)}return(0,c.default)(Component,[{key:"getNamespace",value:function getNamespace(){return"kits"}},{key:"defaultData",value:function defaultData(){return this.importCommands(m)}}]),Component}($e.modules.ComponentBase);r.default=v},75947:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.Index=void 0;var l=i(a(11959)),u=i(a(39041)),c=i(a(77371)),p=i(a(68537)),d=function(t){(0,c.default)(Index,t);var r=(0,p.default)(Index);function Index(){return(0,l.default)(this,Index),r.apply(this,arguments)}return(0,u.default)(Index,null,[{key:"getEndpointFormat",value:function getEndpointFormat(){return"kit-taxonomies/{id}"}}]),Index}($e.modules.CommandData);r.Index=d},59263:(t,r,a)=>{"use strict";var o=a(67394),i=a(52369),l=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var u=l(a(11959)),c=l(a(39041)),p=l(a(77371)),d=l(a(68537)),m=i(a(75947)),v=function(t){(0,p.default)(Component,t);var r=(0,d.default)(Component);function Component(){return(0,u.default)(this,Component),r.apply(this,arguments)}return(0,c.default)(Component,[{key:"getNamespace",value:function getNamespace(){return"kit-taxonomies"}},{key:"defaultData",value:function defaultData(){return this.importCommands(m)}}]),Component}($e.modules.ComponentBase);r.default=v},35878:(t,r,a)=>{"use strict";var o=a(63804),i=a(67394),l=a(67971);i(r,"__esModule",{value:!0}),r.default=void 0;var u=l(a(11959)),c=l(a(39041)),p=l(a(69485)),d=l(a(20485)),m=l(a(59263)),v=function(){function KitLibrary(){(0,u.default)(this,KitLibrary),this.hasAccessToModule()&&($e.components.register(new p.default),$e.components.register(new m.default),d.default.addRoute({path:"/kit-library/*",component:o.lazy((function(){return Promise.all([a.e(262),a.e(372)]).then(a.t.bind(a,23711,23))}))}))}return(0,c.default)(KitLibrary,[{key:"hasAccessToModule",value:function hasAccessToModule(){var t;return null===(t=elementorAppConfig["kit-library"])||void 0===t?void 0:t.has_access_to_module}}]),KitLibrary}();r.default=v},7421:(t,r,a)=>{a(99572),a(37627),t.exports=a(47208).Array.from},70157:(t,r,a)=>{a(42580),t.exports=a(47208).Array.isArray},89710:(t,r,a)=>{var o=a(47208),i=o.JSON||(o.JSON={stringify:JSON.stringify});t.exports=function stringify(t){return i.stringify.apply(i,arguments)}},66458:(t,r,a)=>{a(99954),t.exports=a(47208).Object.assign},14710:(t,r,a)=>{a(30785);var o=a(47208).Object;t.exports=function create(t,r){return o.create(t,r)}},23022:(t,r,a)=>{a(23078);var o=a(47208).Object;t.exports=function defineProperties(t,r){return o.defineProperties(t,r)}},43153:(t,r,a)=>{a(40168);var o=a(47208).Object;t.exports=function defineProperty(t,r,a){return o.defineProperty(t,r,a)}},8531:(t,r,a)=>{a(95260),t.exports=a(47208).Object.entries},32622:(t,r,a)=>{a(18576);var o=a(47208).Object;t.exports=function getOwnPropertyDescriptor(t,r){return o.getOwnPropertyDescriptor(t,r)}},27410:(t,r,a)=>{a(67685),t.exports=a(47208).Object.getOwnPropertyDescriptors},19035:(t,r,a)=>{a(54370),t.exports=a(47208).Object.getOwnPropertySymbols},58535:(t,r,a)=>{a(4840),t.exports=a(47208).Object.getPrototypeOf},97220:(t,r,a)=>{a(5453),t.exports=a(47208).Object.keys},65135:(t,r,a)=>{a(13890),t.exports=a(47208).Object.setPrototypeOf},34345:(t,r,a)=>{a(24399),t.exports=a(47208).parseInt},43094:(t,r,a)=>{a(11320),t.exports=a(47208).Reflect.construct},17641:(t,r,a)=>{a(36600),t.exports=a(47208).Reflect.get},19103:(t,r,a)=>{a(54370),a(70285),a(87573),a(97224),t.exports=a(47208).Symbol},39871:(t,r,a)=>{a(99572),a(74114),t.exports=a(7273).f("iterator")},89999:(t,r,a)=>{a(70285),a(74114),a(23337),a(10143),a(92797),t.exports=a(47208).WeakMap},26610:t=>{t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},29697:t=>{t.exports=function(){}},54677:t=>{t.exports=function(t,r,a,o){if(!(t instanceof r)||void 0!==o&&o in t)throw TypeError(a+": incorrect invocation!");return t}},30498:(t,r,a)=>{var o=a(39632);t.exports=function(t){if(!o(t))throw TypeError(t+" is not an object!");return t}},69191:(t,r,a)=>{var o=a(1504),i=a(37154),l=a(46723);t.exports=function(t){return function(r,a,u){var c,p=o(r),d=i(p.length),m=l(u,d);if(t&&a!=a){for(;d>m;)if((c=p[m++])!=c)return!0}else for(;d>m;m++)if((t||m in p)&&p[m]===a)return t||m||0;return!t&&-1}}},97647:(t,r,a)=>{var o=a(61725),i=a(13115),l=a(60061),u=a(37154),c=a(41904);t.exports=function(t,r){var a=1==t,p=2==t,d=3==t,m=4==t,v=6==t,h=5==t||v,g=r||c;return function(r,c,y){for(var _,x,b=l(r),E=i(b),w=o(c,y,3),C=u(E.length),N=0,T=a?g(r,C):p?g(r,0):void 0;C>N;N++)if((h||N in E)&&(x=w(_=E[N],N,b),t))if(a)T[N]=x;else if(x)switch(t){case 3:return!0;case 5:return _;case 6:return N;case 2:T.push(_)}else if(m)return!1;return v?-1:d||m?m:T}}},88320:(t,r,a)=>{var o=a(39632),i=a(7359),l=a(24300)("species");t.exports=function(t){var r;return i(t)&&("function"!=typeof(r=t.constructor)||r!==Array&&!i(r.prototype)||(r=void 0),o(r)&&null===(r=r[l])&&(r=void 0)),void 0===r?Array:r}},41904:(t,r,a)=>{var o=a(88320);t.exports=function(t,r){return new(o(t))(r)}},45515:(t,r,a)=>{"use strict";var o=a(26610),i=a(39632),l=a(19897),u=[].slice,c={},construct=function(t,r,a){if(!(r in c)){for(var o=[],i=0;i<r;i++)o[i]="a["+i+"]";c[r]=Function("F,a","return new F("+o.join(",")+")")}return c[r](t,a)};t.exports=Function.bind||function bind(t){var r=o(this),a=u.call(arguments,1),bound=function(){var o=a.concat(u.call(arguments));return this instanceof bound?construct(r,o.length,o):l(r,o,t)};return i(r.prototype)&&(bound.prototype=r.prototype),bound}},8312:(t,r,a)=>{var o=a(41352),i=a(24300)("toStringTag"),l="Arguments"==o(function(){return arguments}());t.exports=function(t){var r,a,u;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(a=function(t,r){try{return t[r]}catch(t){}}(r=Object(t),i))?a:l?o(r):"Object"==(u=o(r))&&"function"==typeof r.callee?"Arguments":u}},41352:t=>{var r={}.toString;t.exports=function(t){return r.call(t).slice(8,-1)}},92600:(t,r,a)=>{"use strict";var o=a(13199),i=a(6758).getWeak,l=a(30498),u=a(39632),c=a(54677),p=a(25985),d=a(97647),m=a(20657),v=a(41081),h=d(5),g=d(6),y=0,uncaughtFrozenStore=function(t){return t._l||(t._l=new UncaughtFrozenStore)},UncaughtFrozenStore=function(){this.a=[]},findUncaughtFrozen=function(t,r){return h(t.a,(function(t){return t[0]===r}))};UncaughtFrozenStore.prototype={get:function(t){var r=findUncaughtFrozen(this,t);if(r)return r[1]},has:function(t){return!!findUncaughtFrozen(this,t)},set:function(t,r){var a=findUncaughtFrozen(this,t);a?a[1]=r:this.a.push([t,r])},delete:function(t){var r=g(this.a,(function(r){return r[0]===t}));return~r&&this.a.splice(r,1),!!~r}},t.exports={getConstructor:function(t,r,a,l){var d=t((function(t,o){c(t,d,r,"_i"),t._t=r,t._i=y++,t._l=void 0,null!=o&&p(o,a,t[l],t)}));return o(d.prototype,{delete:function(t){if(!u(t))return!1;var a=i(t);return!0===a?uncaughtFrozenStore(v(this,r)).delete(t):a&&m(a,this._i)&&delete a[this._i]},has:function has(t){if(!u(t))return!1;var a=i(t);return!0===a?uncaughtFrozenStore(v(this,r)).has(t):a&&m(a,this._i)}}),d},def:function(t,r,a){var o=i(l(r),!0);return!0===o?uncaughtFrozenStore(t).set(r,a):o[t._i]=a,t},ufstore:uncaughtFrozenStore}},70770:(t,r,a)=>{"use strict";var o=a(43280),i=a(98310),l=a(6758),u=a(90472),c=a(62292),p=a(13199),d=a(25985),m=a(54677),v=a(39632),h=a(2413),g=a(60510).f,y=a(97647)(0),_=a(75179);t.exports=function(t,r,a,x,b,E){var w=o[t],C=w,N=b?"set":"add",T=C&&C.prototype,P={};return _&&"function"==typeof C&&(E||T.forEach&&!u((function(){(new C).entries().next()})))?(C=r((function(r,a){m(r,C,t,"_c"),r._c=new w,null!=a&&d(a,b,r[N],r)})),y("add,clear,delete,forEach,get,has,set,keys,values,entries,toJSON".split(","),(function(t){var r="add"==t||"set"==t;!(t in T)||E&&"clear"==t||c(C.prototype,t,(function(a,o){if(m(this,C,t),!r&&E&&!v(a))return"get"==t&&void 0;var i=this._c[t](0===a?0:a,o);return r?this:i}))})),E||g(C.prototype,"size",{get:function(){return this._c.size}})):(C=x.getConstructor(r,t,b,N),p(C.prototype,a),l.NEED=!0),h(C,t),P[t]=C,i(i.G+i.W+i.F,P),E||x.setStrong(C,t,b),C}},47208:t=>{var r=t.exports={version:"2.6.12"};"number"==typeof __e&&(__e=r)},87352:(t,r,a)=>{"use strict";var o=a(60510),i=a(48439);t.exports=function(t,r,a){r in t?o.f(t,r,i(0,a)):t[r]=a}},61725:(t,r,a)=>{var o=a(26610);t.exports=function(t,r,a){if(o(t),void 0===r)return t;switch(a){case 1:return function(a){return t.call(r,a)};case 2:return function(a,o){return t.call(r,a,o)};case 3:return function(a,o,i){return t.call(r,a,o,i)}}return function(){return t.apply(r,arguments)}}},18239:t=>{t.exports=function(t){if(null==t)throw TypeError("Can't call method on  "+t);return t}},75179:(t,r,a)=>{t.exports=!a(90472)((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},48765:(t,r,a)=>{var o=a(39632),i=a(43280).document,l=o(i)&&o(i.createElement);t.exports=function(t){return l?i.createElement(t):{}}},31986:t=>{t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},42266:(t,r,a)=>{var o=a(86425),i=a(97739),l=a(67410);t.exports=function(t){var r=o(t),a=i.f;if(a)for(var u,c=a(t),p=l.f,d=0;c.length>d;)p.call(t,u=c[d++])&&r.push(u);return r}},98310:(t,r,a)=>{var o=a(43280),i=a(47208),l=a(61725),u=a(62292),c=a(20657),$export=function(t,r,a){var p,d,m,v=t&$export.F,h=t&$export.G,g=t&$export.S,y=t&$export.P,_=t&$export.B,x=t&$export.W,b=h?i:i[r]||(i[r]={}),E=b.prototype,w=h?o:g?o[r]:(o[r]||{}).prototype;for(p in h&&(a=r),a)(d=!v&&w&&void 0!==w[p])&&c(b,p)||(m=d?w[p]:a[p],b[p]=h&&"function"!=typeof w[p]?a[p]:_&&d?l(m,o):x&&w[p]==m?function(t){var F=function(r,a,o){if(this instanceof t){switch(arguments.length){case 0:return new t;case 1:return new t(r);case 2:return new t(r,a)}return new t(r,a,o)}return t.apply(this,arguments)};return F.prototype=t.prototype,F}(m):y&&"function"==typeof m?l(Function.call,m):m,y&&((b.virtual||(b.virtual={}))[p]=m,t&$export.R&&E&&!E[p]&&u(E,p,m)))};$export.F=1,$export.G=2,$export.S=4,$export.P=8,$export.B=16,$export.W=32,$export.U=64,$export.R=128,t.exports=$export},90472:t=>{t.exports=function(t){try{return!!t()}catch(t){return!0}}},25985:(t,r,a)=>{var o=a(61725),i=a(93086),l=a(11827),u=a(30498),c=a(37154),p=a(26116),d={},m={},v=t.exports=function(t,r,a,v,h){var g,y,_,x,b=h?function(){return t}:p(t),E=o(a,v,r?2:1),w=0;if("function"!=typeof b)throw TypeError(t+" is not iterable!");if(l(b)){for(g=c(t.length);g>w;w++)if((x=r?E(u(y=t[w])[0],y[1]):E(t[w]))===d||x===m)return x}else for(_=b.call(t);!(y=_.next()).done;)if((x=i(_,E,y.value,r))===d||x===m)return x};v.BREAK=d,v.RETURN=m},43280:t=>{var r=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=r)},20657:t=>{var r={}.hasOwnProperty;t.exports=function(t,a){return r.call(t,a)}},62292:(t,r,a)=>{var o=a(60510),i=a(48439);t.exports=a(75179)?function(t,r,a){return o.f(t,r,i(1,a))}:function(t,r,a){return t[r]=a,t}},92477:(t,r,a)=>{var o=a(43280).document;t.exports=o&&o.documentElement},64457:(t,r,a)=>{t.exports=!a(75179)&&!a(90472)((function(){return 7!=Object.defineProperty(a(48765)("div"),"a",{get:function(){return 7}}).a}))},19897:t=>{t.exports=function(t,r,a){var o=void 0===a;switch(r.length){case 0:return o?t():t.call(a);case 1:return o?t(r[0]):t.call(a,r[0]);case 2:return o?t(r[0],r[1]):t.call(a,r[0],r[1]);case 3:return o?t(r[0],r[1],r[2]):t.call(a,r[0],r[1],r[2]);case 4:return o?t(r[0],r[1],r[2],r[3]):t.call(a,r[0],r[1],r[2],r[3])}return t.apply(a,r)}},13115:(t,r,a)=>{var o=a(41352);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==o(t)?t.split(""):Object(t)}},11827:(t,r,a)=>{var o=a(79105),i=a(24300)("iterator"),l=Array.prototype;t.exports=function(t){return void 0!==t&&(o.Array===t||l[i]===t)}},7359:(t,r,a)=>{var o=a(41352);t.exports=Array.isArray||function isArray(t){return"Array"==o(t)}},39632:t=>{t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},93086:(t,r,a)=>{var o=a(30498);t.exports=function(t,r,a,i){try{return i?r(o(a)[0],a[1]):r(a)}catch(r){var l=t.return;throw void 0!==l&&o(l.call(t)),r}}},19802:(t,r,a)=>{"use strict";var o=a(82488),i=a(48439),l=a(2413),u={};a(62292)(u,a(24300)("iterator"),(function(){return this})),t.exports=function(t,r,a){t.prototype=o(u,{next:i(1,a)}),l(t,r+" Iterator")}},6125:(t,r,a)=>{"use strict";var o=a(36794),i=a(98310),l=a(19312),u=a(62292),c=a(79105),p=a(19802),d=a(2413),m=a(999),v=a(24300)("iterator"),h=!([].keys&&"next"in[].keys()),g="keys",y="values",returnThis=function(){return this};t.exports=function(t,r,a,_,x,b,E){p(a,r,_);var w,C,N,getMethod=function(t){if(!h&&t in O)return O[t];switch(t){case g:return function keys(){return new a(this,t)};case y:return function values(){return new a(this,t)}}return function entries(){return new a(this,t)}},T=r+" Iterator",P=x==y,S=!1,O=t.prototype,M=O[v]||O["@@iterator"]||x&&O[x],R=M||getMethod(x),I=x?P?getMethod("entries"):R:void 0,D="Array"==r&&O.entries||M;if(D&&(N=m(D.call(new t)))!==Object.prototype&&N.next&&(d(N,T,!0),o||"function"==typeof N[v]||u(N,v,returnThis)),P&&M&&M.name!==y&&(S=!0,R=function values(){return M.call(this)}),o&&!E||!h&&!S&&O[v]||u(O,v,R),c[r]=R,c[T]=returnThis,x)if(w={values:P?R:getMethod(y),keys:b?R:getMethod(g),entries:I},E)for(C in w)C in O||l(O,C,w[C]);else i(i.P+i.F*(h||S),r,w);return w}},26797:(t,r,a)=>{var o=a(24300)("iterator"),i=!1;try{var l=[7][o]();l.return=function(){i=!0},Array.from(l,(function(){throw 2}))}catch(t){}t.exports=function(t,r){if(!r&&!i)return!1;var a=!1;try{var l=[7],u=l[o]();u.next=function(){return{done:a=!0}},l[o]=function(){return u},t(l)}catch(t){}return a}},9329:t=>{t.exports=function(t,r){return{value:r,done:!!t}}},79105:t=>{t.exports={}},36794:t=>{t.exports=!0},6758:(t,r,a)=>{var o=a(54251)("meta"),i=a(39632),l=a(20657),u=a(60510).f,c=0,p=Object.isExtensible||function(){return!0},d=!a(90472)((function(){return p(Object.preventExtensions({}))})),setMeta=function(t){u(t,o,{value:{i:"O"+ ++c,w:{}}})},m=t.exports={KEY:o,NEED:!1,fastKey:function(t,r){if(!i(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!l(t,o)){if(!p(t))return"F";if(!r)return"E";setMeta(t)}return t[o].i},getWeak:function(t,r){if(!l(t,o)){if(!p(t))return!0;if(!r)return!1;setMeta(t)}return t[o].w},onFreeze:function(t){return d&&m.NEED&&p(t)&&!l(t,o)&&setMeta(t),t}}},77995:(t,r,a)=>{"use strict";var o=a(75179),i=a(86425),l=a(97739),u=a(67410),c=a(60061),p=a(13115),d=Object.assign;t.exports=!d||a(90472)((function(){var t={},r={},a=Symbol(),o="abcdefghijklmnopqrst";return t[a]=7,o.split("").forEach((function(t){r[t]=t})),7!=d({},t)[a]||Object.keys(d({},r)).join("")!=o}))?function assign(t,r){for(var a=c(t),d=arguments.length,m=1,v=l.f,h=u.f;d>m;)for(var g,y=p(arguments[m++]),_=v?i(y).concat(v(y)):i(y),x=_.length,b=0;x>b;)g=_[b++],o&&!h.call(y,g)||(a[g]=y[g]);return a}:d},82488:(t,r,a)=>{var o=a(30498),i=a(36607),l=a(31986),u=a(18478)("IE_PROTO"),Empty=function(){},createDict=function(){var t,r=a(48765)("iframe"),o=l.length;for(r.style.display="none",a(92477).appendChild(r),r.src="javascript:",(t=r.contentWindow.document).open(),t.write("<script>document.F=Object<\/script>"),t.close(),createDict=t.F;o--;)delete createDict.prototype[l[o]];return createDict()};t.exports=Object.create||function create(t,r){var a;return null!==t?(Empty.prototype=o(t),a=new Empty,Empty.prototype=null,a[u]=t):a=createDict(),void 0===r?a:i(a,r)}},60510:(t,r,a)=>{var o=a(30498),i=a(64457),l=a(12737),u=Object.defineProperty;r.f=a(75179)?Object.defineProperty:function defineProperty(t,r,a){if(o(t),r=l(r,!0),o(a),i)try{return u(t,r,a)}catch(t){}if("get"in a||"set"in a)throw TypeError("Accessors not supported!");return"value"in a&&(t[r]=a.value),t}},36607:(t,r,a)=>{var o=a(60510),i=a(30498),l=a(86425);t.exports=a(75179)?Object.defineProperties:function defineProperties(t,r){i(t);for(var a,u=l(r),c=u.length,p=0;c>p;)o.f(t,a=u[p++],r[a]);return t}},83264:(t,r,a)=>{var o=a(67410),i=a(48439),l=a(1504),u=a(12737),c=a(20657),p=a(64457),d=Object.getOwnPropertyDescriptor;r.f=a(75179)?d:function getOwnPropertyDescriptor(t,r){if(t=l(t),r=u(r,!0),p)try{return d(t,r)}catch(t){}if(c(t,r))return i(!o.f.call(t,r),t[r])}},26084:(t,r,a)=>{var o=a(1504),i=a(8772).f,l={}.toString,u="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];t.exports.f=function getOwnPropertyNames(t){return u&&"[object Window]"==l.call(t)?function(t){try{return i(t)}catch(t){return u.slice()}}(t):i(o(t))}},8772:(t,r,a)=>{var o=a(65326),i=a(31986).concat("length","prototype");r.f=Object.getOwnPropertyNames||function getOwnPropertyNames(t){return o(t,i)}},97739:(t,r)=>{r.f=Object.getOwnPropertySymbols},999:(t,r,a)=>{var o=a(20657),i=a(60061),l=a(18478)("IE_PROTO"),u=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=i(t),o(t,l)?t[l]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},65326:(t,r,a)=>{var o=a(20657),i=a(1504),l=a(69191)(!1),u=a(18478)("IE_PROTO");t.exports=function(t,r){var a,c=i(t),p=0,d=[];for(a in c)a!=u&&o(c,a)&&d.push(a);for(;r.length>p;)o(c,a=r[p++])&&(~l(d,a)||d.push(a));return d}},86425:(t,r,a)=>{var o=a(65326),i=a(31986);t.exports=Object.keys||function keys(t){return o(t,i)}},67410:(t,r)=>{r.f={}.propertyIsEnumerable},57972:(t,r,a)=>{var o=a(98310),i=a(47208),l=a(90472);t.exports=function(t,r){var a=(i.Object||{})[t]||Object[t],u={};u[t]=r(a),o(o.S+o.F*l((function(){a(1)})),"Object",u)}},9480:(t,r,a)=>{var o=a(75179),i=a(86425),l=a(1504),u=a(67410).f;t.exports=function(t){return function(r){for(var a,c=l(r),p=i(c),d=p.length,m=0,v=[];d>m;)a=p[m++],o&&!u.call(c,a)||v.push(t?[a,c[a]]:c[a]);return v}}},64344:(t,r,a)=>{var o=a(8772),i=a(97739),l=a(30498),u=a(43280).Reflect;t.exports=u&&u.ownKeys||function ownKeys(t){var r=o.f(l(t)),a=i.f;return a?r.concat(a(t)):r}},60162:(t,r,a)=>{var o=a(43280).parseInt,i=a(71963).trim,l=a(18458),u=/^[-+]?0[xX]/;t.exports=8!==o(l+"08")||22!==o(l+"0x16")?function parseInt(t,r){var a=i(String(t),3);return o(a,r>>>0||(u.test(a)?16:10))}:o},48439:t=>{t.exports=function(t,r){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:r}}},13199:(t,r,a)=>{var o=a(62292);t.exports=function(t,r,a){for(var i in r)a&&t[i]?t[i]=r[i]:o(t,i,r[i]);return t}},19312:(t,r,a)=>{t.exports=a(62292)},14689:(t,r,a)=>{"use strict";var o=a(98310),i=a(26610),l=a(61725),u=a(25985);t.exports=function(t){o(o.S,t,{from:function from(t){var r,a,o,c,p=arguments[1];return i(this),(r=void 0!==p)&&i(p),null==t?new this:(a=[],r?(o=0,c=l(p,arguments[2],2),u(t,!1,(function(t){a.push(c(t,o++))}))):u(t,!1,a.push,a),new this(a))}})}},7883:(t,r,a)=>{"use strict";var o=a(98310);t.exports=function(t){o(o.S,t,{of:function of(){for(var t=arguments.length,r=new Array(t);t--;)r[t]=arguments[t];return new this(r)}})}},25574:(t,r,a)=>{var o=a(39632),i=a(30498),check=function(t,r){if(i(t),!o(r)&&null!==r)throw TypeError(r+": can't set as prototype!")};t.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(t,r,o){try{(o=a(61725)(Function.call,a(83264).f(Object.prototype,"__proto__").set,2))(t,[]),r=!(t instanceof Array)}catch(t){r=!0}return function setPrototypeOf(t,a){return check(t,a),r?t.__proto__=a:o(t,a),t}}({},!1):void 0),check}},2413:(t,r,a)=>{var o=a(60510).f,i=a(20657),l=a(24300)("toStringTag");t.exports=function(t,r,a){t&&!i(t=a?t:t.prototype,l)&&o(t,l,{configurable:!0,value:r})}},18478:(t,r,a)=>{var o=a(29990)("keys"),i=a(54251);t.exports=function(t){return o[t]||(o[t]=i(t))}},29990:(t,r,a)=>{var o=a(47208),i=a(43280),l="__core-js_shared__",u=i[l]||(i[l]={});(t.exports=function(t,r){return u[t]||(u[t]=void 0!==r?r:{})})("versions",[]).push({version:o.version,mode:a(36794)?"pure":"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})},78502:(t,r,a)=>{var o=a(58290),i=a(18239);t.exports=function(t){return function(r,a){var l,u,c=String(i(r)),p=o(a),d=c.length;return p<0||p>=d?t?"":void 0:(l=c.charCodeAt(p))<55296||l>56319||p+1===d||(u=c.charCodeAt(p+1))<56320||u>57343?t?c.charAt(p):l:t?c.slice(p,p+2):u-56320+(l-55296<<10)+65536}}},71963:(t,r,a)=>{var o=a(98310),i=a(18239),l=a(90472),u=a(18458),c="["+u+"]",p=RegExp("^"+c+c+"*"),d=RegExp(c+c+"*$"),exporter=function(t,r,a){var i={},c=l((function(){return!!u[t]()||"​…"!="​…"[t]()})),p=i[t]=c?r(m):u[t];a&&(i[a]=p),o(o.P+o.F*c,"String",i)},m=exporter.trim=function(t,r){return t=String(i(t)),1&r&&(t=t.replace(p,"")),2&r&&(t=t.replace(d,"")),t};t.exports=exporter},18458:t=>{t.exports="\t\n\v\f\r   ᠎              \u2028\u2029\ufeff"},46723:(t,r,a)=>{var o=a(58290),i=Math.max,l=Math.min;t.exports=function(t,r){return(t=o(t))<0?i(t+r,0):l(t,r)}},58290:t=>{var r=Math.ceil,a=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?a:r)(t)}},1504:(t,r,a)=>{var o=a(13115),i=a(18239);t.exports=function(t){return o(i(t))}},37154:(t,r,a)=>{var o=a(58290),i=Math.min;t.exports=function(t){return t>0?i(o(t),9007199254740991):0}},60061:(t,r,a)=>{var o=a(18239);t.exports=function(t){return Object(o(t))}},12737:(t,r,a)=>{var o=a(39632);t.exports=function(t,r){if(!o(t))return t;var a,i;if(r&&"function"==typeof(a=t.toString)&&!o(i=a.call(t)))return i;if("function"==typeof(a=t.valueOf)&&!o(i=a.call(t)))return i;if(!r&&"function"==typeof(a=t.toString)&&!o(i=a.call(t)))return i;throw TypeError("Can't convert object to primitive value")}},54251:t=>{var r=0,a=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++r+a).toString(36))}},41081:(t,r,a)=>{var o=a(39632);t.exports=function(t,r){if(!o(t)||t._t!==r)throw TypeError("Incompatible receiver, "+r+" required!");return t}},31164:(t,r,a)=>{var o=a(43280),i=a(47208),l=a(36794),u=a(7273),c=a(60510).f;t.exports=function(t){var r=i.Symbol||(i.Symbol=l?{}:o.Symbol||{});"_"==t.charAt(0)||t in r||c(r,t,{value:u.f(t)})}},7273:(t,r,a)=>{r.f=a(24300)},24300:(t,r,a)=>{var o=a(29990)("wks"),i=a(54251),l=a(43280).Symbol,u="function"==typeof l;(t.exports=function(t){return o[t]||(o[t]=u&&l[t]||(u?l:i)("Symbol."+t))}).store=o},26116:(t,r,a)=>{var o=a(8312),i=a(24300)("iterator"),l=a(79105);t.exports=a(47208).getIteratorMethod=function(t){if(null!=t)return t[i]||t["@@iterator"]||l[o(t)]}},37627:(t,r,a)=>{"use strict";var o=a(61725),i=a(98310),l=a(60061),u=a(93086),c=a(11827),p=a(37154),d=a(87352),m=a(26116);i(i.S+i.F*!a(26797)((function(t){Array.from(t)})),"Array",{from:function from(t){var r,a,i,v,h=l(t),g="function"==typeof this?this:Array,y=arguments.length,_=y>1?arguments[1]:void 0,x=void 0!==_,b=0,E=m(h);if(x&&(_=o(_,y>2?arguments[2]:void 0,2)),null==E||g==Array&&c(E))for(a=new g(r=p(h.length));r>b;b++)d(a,b,x?_(h[b],b):h[b]);else for(v=E.call(h),a=new g;!(i=v.next()).done;b++)d(a,b,x?u(v,_,[i.value,b],!0):i.value);return a.length=b,a}})},42580:(t,r,a)=>{var o=a(98310);o(o.S,"Array",{isArray:a(7359)})},84411:(t,r,a)=>{"use strict";var o=a(29697),i=a(9329),l=a(79105),u=a(1504);t.exports=a(6125)(Array,"Array",(function(t,r){this._t=u(t),this._i=0,this._k=r}),(function(){var t=this._t,r=this._k,a=this._i++;return!t||a>=t.length?(this._t=void 0,i(1)):i(0,"keys"==r?a:"values"==r?t[a]:[a,t[a]])}),"values"),l.Arguments=l.Array,o("keys"),o("values"),o("entries")},99954:(t,r,a)=>{var o=a(98310);o(o.S+o.F,"Object",{assign:a(77995)})},30785:(t,r,a)=>{var o=a(98310);o(o.S,"Object",{create:a(82488)})},23078:(t,r,a)=>{var o=a(98310);o(o.S+o.F*!a(75179),"Object",{defineProperties:a(36607)})},40168:(t,r,a)=>{var o=a(98310);o(o.S+o.F*!a(75179),"Object",{defineProperty:a(60510).f})},18576:(t,r,a)=>{var o=a(1504),i=a(83264).f;a(57972)("getOwnPropertyDescriptor",(function(){return function getOwnPropertyDescriptor(t,r){return i(o(t),r)}}))},4840:(t,r,a)=>{var o=a(60061),i=a(999);a(57972)("getPrototypeOf",(function(){return function getPrototypeOf(t){return i(o(t))}}))},5453:(t,r,a)=>{var o=a(60061),i=a(86425);a(57972)("keys",(function(){return function keys(t){return i(o(t))}}))},13890:(t,r,a)=>{var o=a(98310);o(o.S,"Object",{setPrototypeOf:a(25574).set})},70285:()=>{},24399:(t,r,a)=>{var o=a(98310),i=a(60162);o(o.G+o.F*(parseInt!=i),{parseInt:i})},11320:(t,r,a)=>{var o=a(98310),i=a(82488),l=a(26610),u=a(30498),c=a(39632),p=a(90472),d=a(45515),m=(a(43280).Reflect||{}).construct,v=p((function(){function F(){}return!(m((function(){}),[],F)instanceof F)})),h=!p((function(){m((function(){}))}));o(o.S+o.F*(v||h),"Reflect",{construct:function construct(t,r){l(t),u(r);var a=arguments.length<3?t:l(arguments[2]);if(h&&!v)return m(t,r,a);if(t==a){switch(r.length){case 0:return new t;case 1:return new t(r[0]);case 2:return new t(r[0],r[1]);case 3:return new t(r[0],r[1],r[2]);case 4:return new t(r[0],r[1],r[2],r[3])}var o=[null];return o.push.apply(o,r),new(d.apply(t,o))}var p=a.prototype,g=i(c(p)?p:Object.prototype),y=Function.apply.call(t,g,r);return c(y)?y:g}})},36600:(t,r,a)=>{var o=a(83264),i=a(999),l=a(20657),u=a(98310),c=a(39632),p=a(30498);u(u.S,"Reflect",{get:function get(t,r){var a,u,d=arguments.length<3?t:arguments[2];return p(t)===d?t[r]:(a=o.f(t,r))?l(a,"value")?a.value:void 0!==a.get?a.get.call(d):void 0:c(u=i(t))?get(u,r,d):void 0}})},99572:(t,r,a)=>{"use strict";var o=a(78502)(!0);a(6125)(String,"String",(function(t){this._t=String(t),this._i=0}),(function(){var t,r=this._t,a=this._i;return a>=r.length?{value:void 0,done:!0}:(t=o(r,a),this._i+=t.length,{value:t,done:!1})}))},54370:(t,r,a)=>{"use strict";var o=a(43280),i=a(20657),l=a(75179),u=a(98310),c=a(19312),p=a(6758).KEY,d=a(90472),m=a(29990),v=a(2413),h=a(54251),g=a(24300),y=a(7273),_=a(31164),x=a(42266),b=a(7359),E=a(30498),w=a(39632),C=a(60061),N=a(1504),T=a(12737),P=a(48439),S=a(82488),O=a(26084),M=a(83264),R=a(97739),I=a(60510),D=a(86425),j=M.f,L=I.f,A=O.f,B=o.Symbol,q=o.JSON,W=q&&q.stringify,H=g("_hidden"),U=g("toPrimitive"),K={}.propertyIsEnumerable,V=m("symbol-registry"),z=m("symbols"),G=m("op-symbols"),$=Object.prototype,Y="function"==typeof B&&!!R.f,J=o.QObject,Q=!J||!J.prototype||!J.prototype.findChild,Z=l&&d((function(){return 7!=S(L({},"a",{get:function(){return L(this,"a",{value:7}).a}})).a}))?function(t,r,a){var o=j($,r);o&&delete $[r],L(t,r,a),o&&t!==$&&L($,r,o)}:L,wrap=function(t){var r=z[t]=S(B.prototype);return r._k=t,r},X=Y&&"symbol"==typeof B.iterator?function(t){return"symbol"==typeof t}:function(t){return t instanceof B},ee=function defineProperty(t,r,a){return t===$&&ee(G,r,a),E(t),r=T(r,!0),E(a),i(z,r)?(a.enumerable?(i(t,H)&&t[H][r]&&(t[H][r]=!1),a=S(a,{enumerable:P(0,!1)})):(i(t,H)||L(t,H,P(1,{})),t[H][r]=!0),Z(t,r,a)):L(t,r,a)},te=function defineProperties(t,r){E(t);for(var a,o=x(r=N(r)),i=0,l=o.length;l>i;)ee(t,a=o[i++],r[a]);return t},re=function propertyIsEnumerable(t){var r=K.call(this,t=T(t,!0));return!(this===$&&i(z,t)&&!i(G,t))&&(!(r||!i(this,t)||!i(z,t)||i(this,H)&&this[H][t])||r)},ne=function getOwnPropertyDescriptor(t,r){if(t=N(t),r=T(r,!0),t!==$||!i(z,r)||i(G,r)){var a=j(t,r);return!a||!i(z,r)||i(t,H)&&t[H][r]||(a.enumerable=!0),a}},ae=function getOwnPropertyNames(t){for(var r,a=A(N(t)),o=[],l=0;a.length>l;)i(z,r=a[l++])||r==H||r==p||o.push(r);return o},oe=function getOwnPropertySymbols(t){for(var r,a=t===$,o=A(a?G:N(t)),l=[],u=0;o.length>u;)!i(z,r=o[u++])||a&&!i($,r)||l.push(z[r]);return l};Y||(c((B=function Symbol(){if(this instanceof B)throw TypeError("Symbol is not a constructor!");var t=h(arguments.length>0?arguments[0]:void 0),$set=function(r){this===$&&$set.call(G,r),i(this,H)&&i(this[H],t)&&(this[H][t]=!1),Z(this,t,P(1,r))};return l&&Q&&Z($,t,{configurable:!0,set:$set}),wrap(t)}).prototype,"toString",(function toString(){return this._k})),M.f=ne,I.f=ee,a(8772).f=O.f=ae,a(67410).f=re,R.f=oe,l&&!a(36794)&&c($,"propertyIsEnumerable",re,!0),y.f=function(t){return wrap(g(t))}),u(u.G+u.W+u.F*!Y,{Symbol:B});for(var ie="hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),le=0;ie.length>le;)g(ie[le++]);for(var se=D(g.store),ue=0;se.length>ue;)_(se[ue++]);u(u.S+u.F*!Y,"Symbol",{for:function(t){return i(V,t+="")?V[t]:V[t]=B(t)},keyFor:function keyFor(t){if(!X(t))throw TypeError(t+" is not a symbol!");for(var r in V)if(V[r]===t)return r},useSetter:function(){Q=!0},useSimple:function(){Q=!1}}),u(u.S+u.F*!Y,"Object",{create:function create(t,r){return void 0===r?S(t):te(S(t),r)},defineProperty:ee,defineProperties:te,getOwnPropertyDescriptor:ne,getOwnPropertyNames:ae,getOwnPropertySymbols:oe});var ce=d((function(){R.f(1)}));u(u.S+u.F*ce,"Object",{getOwnPropertySymbols:function getOwnPropertySymbols(t){return R.f(C(t))}}),q&&u(u.S+u.F*(!Y||d((function(){var t=B();return"[null]"!=W([t])||"{}"!=W({a:t})||"{}"!=W(Object(t))}))),"JSON",{stringify:function stringify(t){for(var r,a,o=[t],i=1;arguments.length>i;)o.push(arguments[i++]);if(a=r=o[1],(w(r)||void 0!==t)&&!X(t))return b(r)||(r=function(t,r){if("function"==typeof a&&(r=a.call(this,t,r)),!X(r))return r}),o[1]=r,W.apply(q,o)}}),B.prototype[U]||a(62292)(B.prototype,U,B.prototype.valueOf),v(B,"Symbol"),v(Math,"Math",!0),v(o.JSON,"JSON",!0)},23337:(t,r,a)=>{"use strict";var o,i=a(43280),l=a(97647)(0),u=a(19312),c=a(6758),p=a(77995),d=a(92600),m=a(39632),v=a(41081),h=a(41081),g=!i.ActiveXObject&&"ActiveXObject"in i,y="WeakMap",_=c.getWeak,x=Object.isExtensible,b=d.ufstore,wrapper=function(t){return function WeakMap(){return t(this,arguments.length>0?arguments[0]:void 0)}},E={get:function get(t){if(m(t)){var r=_(t);return!0===r?b(v(this,y)).get(t):r?r[this._i]:void 0}},set:function set(t,r){return d.def(v(this,y),t,r)}},w=t.exports=a(70770)(y,wrapper,E,d,!0,!0);h&&g&&(p((o=d.getConstructor(wrapper,y)).prototype,E),c.NEED=!0,l(["delete","has","get","set"],(function(t){var r=w.prototype,a=r[t];u(r,t,(function(r,i){if(m(r)&&!x(r)){this._f||(this._f=new o);var l=this._f[t](r,i);return"set"==t?this:l}return a.call(this,r,i)}))})))},95260:(t,r,a)=>{var o=a(98310),i=a(9480)(!0);o(o.S,"Object",{entries:function entries(t){return i(t)}})},67685:(t,r,a)=>{var o=a(98310),i=a(64344),l=a(1504),u=a(83264),c=a(87352);o(o.S,"Object",{getOwnPropertyDescriptors:function getOwnPropertyDescriptors(t){for(var r,a,o=l(t),p=u.f,d=i(o),m={},v=0;d.length>v;)void 0!==(a=p(o,r=d[v++]))&&c(m,r,a);return m}})},87573:(t,r,a)=>{a(31164)("asyncIterator")},97224:(t,r,a)=>{a(31164)("observable")},92797:(t,r,a)=>{a(14689)("WeakMap")},10143:(t,r,a)=>{a(7883)("WeakMap")},74114:(t,r,a)=>{a(84411);for(var o=a(43280),i=a(62292),l=a(79105),u=a(24300)("toStringTag"),c="CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList".split(","),p=0;p<c.length;p++){var d=c[p],m=o[d],v=m&&m.prototype;v&&!v[u]&&i(v,u,d),l[d]=l.Array}},22761:t=>{t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},42094:(t,r,a)=>{var o=a(62190)("unscopables"),i=Array.prototype;null==i[o]&&a(74216)(i,o,{}),t.exports=function(t){i[o][t]=!0}},88492:(t,r,a)=>{"use strict";var o=a(12070)(!0);t.exports=function(t,r,a){return r+(a?o(t,r).length:1)}},6365:(t,r,a)=>{var o=a(67334);t.exports=function(t){if(!o(t))throw TypeError(t+" is not an object!");return t}},59021:(t,r,a)=>{var o=a(15703),i=a(26078),l=a(78615);t.exports=function(t){return function(r,a,u){var c,p=o(r),d=i(p.length),m=l(u,d);if(t&&a!=a){for(;d>m;)if((c=p[m++])!=c)return!0}else for(;d>m;m++)if((t||m in p)&&p[m]===a)return t||m||0;return!t&&-1}}},78309:(t,r,a)=>{var o=a(11528),i=a(8467),l=a(26033),u=a(26078),c=a(63531);t.exports=function(t,r){var a=1==t,p=2==t,d=3==t,m=4==t,v=6==t,h=5==t||v,g=r||c;return function(r,c,y){for(var _,x,b=l(r),E=i(b),w=o(c,y,3),C=u(E.length),N=0,T=a?g(r,C):p?g(r,0):void 0;C>N;N++)if((h||N in E)&&(x=w(_=E[N],N,b),t))if(a)T[N]=x;else if(x)switch(t){case 3:return!0;case 5:return _;case 6:return N;case 2:T.push(_)}else if(m)return!1;return v?-1:d||m?m:T}}},81071:(t,r,a)=>{var o=a(67334),i=a(99141),l=a(62190)("species");t.exports=function(t){var r;return i(t)&&("function"!=typeof(r=t.constructor)||r!==Array&&!i(r.prototype)||(r=void 0),o(r)&&null===(r=r[l])&&(r=void 0)),void 0===r?Array:r}},63531:(t,r,a)=>{var o=a(81071);t.exports=function(t,r){return new(o(t))(r)}},20106:(t,r,a)=>{var o=a(26688),i=a(62190)("toStringTag"),l="Arguments"==o(function(){return arguments}());t.exports=function(t){var r,a,u;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(a=function(t,r){try{return t[r]}catch(t){}}(r=Object(t),i))?a:l?o(r):"Object"==(u=o(r))&&"function"==typeof r.callee?"Arguments":u}},26688:t=>{var r={}.toString;t.exports=function(t){return r.call(t).slice(8,-1)}},60066:t=>{var r=t.exports={version:"2.6.12"};"number"==typeof __e&&(__e=r)},11528:(t,r,a)=>{var o=a(22761);t.exports=function(t,r,a){if(o(t),void 0===r)return t;switch(a){case 1:return function(a){return t.call(r,a)};case 2:return function(a,o){return t.call(r,a,o)};case 3:return function(a,o,i){return t.call(r,a,o,i)}}return function(){return t.apply(r,arguments)}}},61622:t=>{t.exports=function(t){if(null==t)throw TypeError("Can't call method on  "+t);return t}},36628:(t,r,a)=>{t.exports=!a(48625)((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},5050:(t,r,a)=>{var o=a(67334),i=a(38113).document,l=o(i)&&o(i.createElement);t.exports=function(t){return l?i.createElement(t):{}}},33603:t=>{t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},65772:(t,r,a)=>{var o=a(38113),i=a(60066),l=a(74216),u=a(17738),c=a(11528),$export=function(t,r,a){var p,d,m,v,h=t&$export.F,g=t&$export.G,y=t&$export.S,_=t&$export.P,x=t&$export.B,b=g?o:y?o[r]||(o[r]={}):(o[r]||{}).prototype,E=g?i:i[r]||(i[r]={}),w=E.prototype||(E.prototype={});for(p in g&&(a=r),a)m=((d=!h&&b&&void 0!==b[p])?b:a)[p],v=x&&d?c(m,o):_&&"function"==typeof m?c(Function.call,m):m,b&&u(b,p,m,t&$export.U),E[p]!=m&&l(E,p,v),_&&w[p]!=m&&(w[p]=m)};o.core=i,$export.F=1,$export.G=2,$export.S=4,$export.P=8,$export.B=16,$export.W=32,$export.U=64,$export.R=128,t.exports=$export},86570:(t,r,a)=>{var o=a(62190)("match");t.exports=function(t){var r=/./;try{"/./"[t](r)}catch(a){try{return r[o]=!1,!"/./"[t](r)}catch(t){}}return!0}},48625:t=>{t.exports=function(t){try{return!!t()}catch(t){return!0}}},48897:(t,r,a)=>{"use strict";a(25846);var o=a(17738),i=a(74216),l=a(48625),u=a(61622),c=a(62190),p=a(43288),d=c("species"),m=!l((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$<a>")})),v=function(){var t=/(?:)/,r=t.exec;t.exec=function(){return r.apply(this,arguments)};var a="ab".split(t);return 2===a.length&&"a"===a[0]&&"b"===a[1]}();t.exports=function(t,r,a){var h=c(t),g=!l((function(){var r={};return r[h]=function(){return 7},7!=""[t](r)})),y=g?!l((function(){var r=!1,a=/a/;return a.exec=function(){return r=!0,null},"split"===t&&(a.constructor={},a.constructor[d]=function(){return a}),a[h](""),!r})):void 0;if(!g||!y||"replace"===t&&!m||"split"===t&&!v){var _=/./[h],x=a(u,h,""[t],(function maybeCallNative(t,r,a,o,i){return r.exec===p?g&&!i?{done:!0,value:_.call(r,a,o)}:{done:!0,value:t.call(a,r,o)}:{done:!1}})),b=x[0],E=x[1];o(String.prototype,t,b),i(RegExp.prototype,h,2==r?function(t,r){return E.call(t,this,r)}:function(t){return E.call(t,this)})}}},74859:(t,r,a)=>{"use strict";var o=a(6365);t.exports=function(){var t=o(this),r="";return t.global&&(r+="g"),t.ignoreCase&&(r+="i"),t.multiline&&(r+="m"),t.unicode&&(r+="u"),t.sticky&&(r+="y"),r}},20646:(t,r,a)=>{t.exports=a(8655)("native-function-to-string",Function.toString)},38113:t=>{var r=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=r)},54040:t=>{var r={}.hasOwnProperty;t.exports=function(t,a){return r.call(t,a)}},74216:(t,r,a)=>{var o=a(98558),i=a(36061);t.exports=a(36628)?function(t,r,a){return o.f(t,r,i(1,a))}:function(t,r,a){return t[r]=a,t}},8954:(t,r,a)=>{var o=a(38113).document;t.exports=o&&o.documentElement},5100:(t,r,a)=>{t.exports=!a(36628)&&!a(48625)((function(){return 7!=Object.defineProperty(a(5050)("div"),"a",{get:function(){return 7}}).a}))},8467:(t,r,a)=>{var o=a(26688);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==o(t)?t.split(""):Object(t)}},99141:(t,r,a)=>{var o=a(26688);t.exports=Array.isArray||function isArray(t){return"Array"==o(t)}},67334:t=>{t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},94587:(t,r,a)=>{var o=a(67334),i=a(26688),l=a(62190)("match");t.exports=function(t){var r;return o(t)&&(void 0!==(r=t[l])?!!r:"RegExp"==i(t))}},46445:(t,r,a)=>{"use strict";var o=a(82897),i=a(36061),l=a(55727),u={};a(74216)(u,a(62190)("iterator"),(function(){return this})),t.exports=function(t,r,a){t.prototype=o(u,{next:i(1,a)}),l(t,r+" Iterator")}},61195:(t,r,a)=>{"use strict";var o=a(81422),i=a(65772),l=a(17738),u=a(74216),c=a(23988),p=a(46445),d=a(55727),m=a(19002),v=a(62190)("iterator"),h=!([].keys&&"next"in[].keys()),g="keys",y="values",returnThis=function(){return this};t.exports=function(t,r,a,_,x,b,E){p(a,r,_);var w,C,N,getMethod=function(t){if(!h&&t in O)return O[t];switch(t){case g:return function keys(){return new a(this,t)};case y:return function values(){return new a(this,t)}}return function entries(){return new a(this,t)}},T=r+" Iterator",P=x==y,S=!1,O=t.prototype,M=O[v]||O["@@iterator"]||x&&O[x],R=M||getMethod(x),I=x?P?getMethod("entries"):R:void 0,D="Array"==r&&O.entries||M;if(D&&(N=m(D.call(new t)))!==Object.prototype&&N.next&&(d(N,T,!0),o||"function"==typeof N[v]||u(N,v,returnThis)),P&&M&&M.name!==y&&(S=!0,R=function values(){return M.call(this)}),o&&!E||!h&&!S&&O[v]||u(O,v,R),c[r]=R,c[T]=returnThis,x)if(w={values:P?R:getMethod(y),keys:b?R:getMethod(g),entries:I},E)for(C in w)C in O||l(O,C,w[C]);else i(i.P+i.F*(h||S),r,w);return w}},35038:t=>{t.exports=function(t,r){return{value:r,done:!!t}}},23988:t=>{t.exports={}},81422:t=>{t.exports=!1},82897:(t,r,a)=>{var o=a(6365),i=a(7331),l=a(33603),u=a(28034)("IE_PROTO"),Empty=function(){},createDict=function(){var t,r=a(5050)("iframe"),o=l.length;for(r.style.display="none",a(8954).appendChild(r),r.src="javascript:",(t=r.contentWindow.document).open(),t.write("<script>document.F=Object<\/script>"),t.close(),createDict=t.F;o--;)delete createDict.prototype[l[o]];return createDict()};t.exports=Object.create||function create(t,r){var a;return null!==t?(Empty.prototype=o(t),a=new Empty,Empty.prototype=null,a[u]=t):a=createDict(),void 0===r?a:i(a,r)}},98558:(t,r,a)=>{var o=a(6365),i=a(5100),l=a(31382),u=Object.defineProperty;r.f=a(36628)?Object.defineProperty:function defineProperty(t,r,a){if(o(t),r=l(r,!0),o(a),i)try{return u(t,r,a)}catch(t){}if("get"in a||"set"in a)throw TypeError("Accessors not supported!");return"value"in a&&(t[r]=a.value),t}},7331:(t,r,a)=>{var o=a(98558),i=a(6365),l=a(42912);t.exports=a(36628)?Object.defineProperties:function defineProperties(t,r){i(t);for(var a,u=l(r),c=u.length,p=0;c>p;)o.f(t,a=u[p++],r[a]);return t}},19002:(t,r,a)=>{var o=a(54040),i=a(26033),l=a(28034)("IE_PROTO"),u=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=i(t),o(t,l)?t[l]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},75547:(t,r,a)=>{var o=a(54040),i=a(15703),l=a(59021)(!1),u=a(28034)("IE_PROTO");t.exports=function(t,r){var a,c=i(t),p=0,d=[];for(a in c)a!=u&&o(c,a)&&d.push(a);for(;r.length>p;)o(c,a=r[p++])&&(~l(d,a)||d.push(a));return d}},42912:(t,r,a)=>{var o=a(75547),i=a(33603);t.exports=Object.keys||function keys(t){return o(t,i)}},36061:t=>{t.exports=function(t,r){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:r}}},17738:(t,r,a)=>{var o=a(38113),i=a(74216),l=a(54040),u=a(25078)("src"),c=a(20646),p="toString",d=(""+c).split(p);a(60066).inspectSource=function(t){return c.call(t)},(t.exports=function(t,r,a,c){var p="function"==typeof a;p&&(l(a,"name")||i(a,"name",r)),t[r]!==a&&(p&&(l(a,u)||i(a,u,t[r]?""+t[r]:d.join(String(r)))),t===o?t[r]=a:c?t[r]?t[r]=a:i(t,r,a):(delete t[r],i(t,r,a)))})(Function.prototype,p,(function toString(){return"function"==typeof this&&this[u]||c.call(this)}))},62404:(t,r,a)=>{"use strict";var o=a(20106),i=RegExp.prototype.exec;t.exports=function(t,r){var a=t.exec;if("function"==typeof a){var l=a.call(t,r);if("object"!=typeof l)throw new TypeError("RegExp exec method returned something other than an Object or null");return l}if("RegExp"!==o(t))throw new TypeError("RegExp#exec called on incompatible receiver");return i.call(t,r)}},43288:(t,r,a)=>{"use strict";var o,i,l=a(74859),u=RegExp.prototype.exec,c=String.prototype.replace,p=u,d=(o=/a/,i=/b*/g,u.call(o,"a"),u.call(i,"a"),0!==o.lastIndex||0!==i.lastIndex),m=void 0!==/()??/.exec("")[1];(d||m)&&(p=function exec(t){var r,a,o,i,p=this;return m&&(a=new RegExp("^"+p.source+"$(?!\\s)",l.call(p))),d&&(r=p.lastIndex),o=u.call(p,t),d&&o&&(p.lastIndex=p.global?o.index+o[0].length:r),m&&o&&o.length>1&&c.call(o[0],a,(function(){for(i=1;i<arguments.length-2;i++)void 0===arguments[i]&&(o[i]=void 0)})),o}),t.exports=p},80339:t=>{t.exports=Object.is||function is(t,r){return t===r?0!==t||1/t==1/r:t!=t&&r!=r}},55727:(t,r,a)=>{var o=a(98558).f,i=a(54040),l=a(62190)("toStringTag");t.exports=function(t,r,a){t&&!i(t=a?t:t.prototype,l)&&o(t,l,{configurable:!0,value:r})}},28034:(t,r,a)=>{var o=a(8655)("keys"),i=a(25078);t.exports=function(t){return o[t]||(o[t]=i(t))}},8655:(t,r,a)=>{var o=a(60066),i=a(38113),l="__core-js_shared__",u=i[l]||(i[l]={});(t.exports=function(t,r){return u[t]||(u[t]=void 0!==r?r:{})})("versions",[]).push({version:o.version,mode:a(81422)?"pure":"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})},11987:(t,r,a)=>{var o=a(6365),i=a(22761),l=a(62190)("species");t.exports=function(t,r){var a,u=o(t).constructor;return void 0===u||null==(a=o(u)[l])?r:i(a)}},10225:(t,r,a)=>{"use strict";var o=a(48625);t.exports=function(t,r){return!!t&&o((function(){r?t.call(null,(function(){}),1):t.call(null)}))}},12070:(t,r,a)=>{var o=a(3338),i=a(61622);t.exports=function(t){return function(r,a){var l,u,c=String(i(r)),p=o(a),d=c.length;return p<0||p>=d?t?"":void 0:(l=c.charCodeAt(p))<55296||l>56319||p+1===d||(u=c.charCodeAt(p+1))<56320||u>57343?t?c.charAt(p):l:t?c.slice(p,p+2):u-56320+(l-55296<<10)+65536}}},465:(t,r,a)=>{var o=a(94587),i=a(61622);t.exports=function(t,r,a){if(o(r))throw TypeError("String#"+a+" doesn't accept regex!");return String(i(t))}},78615:(t,r,a)=>{var o=a(3338),i=Math.max,l=Math.min;t.exports=function(t,r){return(t=o(t))<0?i(t+r,0):l(t,r)}},3338:t=>{var r=Math.ceil,a=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?a:r)(t)}},15703:(t,r,a)=>{var o=a(8467),i=a(61622);t.exports=function(t){return o(i(t))}},26078:(t,r,a)=>{var o=a(3338),i=Math.min;t.exports=function(t){return t>0?i(o(t),9007199254740991):0}},26033:(t,r,a)=>{var o=a(61622);t.exports=function(t){return Object(o(t))}},31382:(t,r,a)=>{var o=a(67334);t.exports=function(t,r){if(!o(t))return t;var a,i;if(r&&"function"==typeof(a=t.toString)&&!o(i=a.call(t)))return i;if("function"==typeof(a=t.valueOf)&&!o(i=a.call(t)))return i;if(!r&&"function"==typeof(a=t.toString)&&!o(i=a.call(t)))return i;throw TypeError("Can't convert object to primitive value")}},25078:t=>{var r=0,a=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++r+a).toString(36))}},62190:(t,r,a)=>{var o=a(8655)("wks"),i=a(25078),l=a(38113).Symbol,u="function"==typeof l;(t.exports=function(t){return o[t]||(o[t]=u&&l[t]||(u?l:i)("Symbol."+t))}).store=o},64434:(t,r,a)=>{"use strict";var o=a(65772),i=a(78309)(2);o(o.P+o.F*!a(10225)([].filter,!0),"Array",{filter:function filter(t){return i(this,t,arguments[1])}})},71954:(t,r,a)=>{"use strict";var o=a(65772),i=a(78309)(5),l="find",u=!0;l in[]&&Array(1).find((function(){u=!1})),o(o.P+o.F*u,"Array",{find:function find(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}}),a(42094)(l)},12897:(t,r,a)=>{"use strict";var o=a(42094),i=a(35038),l=a(23988),u=a(15703);t.exports=a(61195)(Array,"Array",(function(t,r){this._t=u(t),this._i=0,this._k=r}),(function(){var t=this._t,r=this._k,a=this._i++;return!t||a>=t.length?(this._t=void 0,i(1)):i(0,"keys"==r?a:"values"==r?t[a]:[a,t[a]])}),"values"),l.Arguments=l.Array,o("keys"),o("values"),o("entries")},90286:(t,r,a)=>{"use strict";var o=a(65772),i=a(78309)(1);o(o.P+o.F*!a(10225)([].map,!0),"Array",{map:function map(t){return i(this,t,arguments[1])}})},76139:(t,r,a)=>{"use strict";var o=a(20106),i={};i[a(62190)("toStringTag")]="z",i+""!="[object z]"&&a(17738)(Object.prototype,"toString",(function toString(){return"[object "+o(this)+"]"}),!0)},25846:(t,r,a)=>{"use strict";var o=a(43288);a(65772)({target:"RegExp",proto:!0,forced:o!==/./.exec},{exec:o})},40751:(t,r,a)=>{a(36628)&&"g"!=/./g.flags&&a(98558).f(RegExp.prototype,"flags",{configurable:!0,get:a(74859)})},64828:(t,r,a)=>{"use strict";var o=a(6365),i=a(26078),l=a(88492),u=a(62404);a(48897)("match",1,(function(t,r,a,c){return[function match(a){var o=t(this),i=null==a?void 0:a[r];return void 0!==i?i.call(a,o):new RegExp(a)[r](String(o))},function(t){var r=c(a,t,this);if(r.done)return r.value;var p=o(t),d=String(this);if(!p.global)return u(p,d);var m=p.unicode;p.lastIndex=0;for(var v,h=[],g=0;null!==(v=u(p,d));){var y=String(v[0]);h[g]=y,""===y&&(p.lastIndex=l(d,i(p.lastIndex),m)),g++}return 0===g?null:h}]}))},84208:(t,r,a)=>{"use strict";var o=a(6365),i=a(26033),l=a(26078),u=a(3338),c=a(88492),p=a(62404),d=Math.max,m=Math.min,v=Math.floor,h=/\$([$&`']|\d\d?|<[^>]*>)/g,g=/\$([$&`']|\d\d?)/g;a(48897)("replace",2,(function(t,r,a,y){return[function replace(o,i){var l=t(this),u=null==o?void 0:o[r];return void 0!==u?u.call(o,l,i):a.call(String(l),o,i)},function(t,r){var i=y(a,t,this,r);if(i.done)return i.value;var v=o(t),h=String(this),g="function"==typeof r;g||(r=String(r));var _=v.global;if(_){var x=v.unicode;v.lastIndex=0}for(var b=[];;){var E=p(v,h);if(null===E)break;if(b.push(E),!_)break;""===String(E[0])&&(v.lastIndex=c(h,l(v.lastIndex),x))}for(var w,C="",N=0,T=0;T<b.length;T++){E=b[T];for(var P=String(E[0]),S=d(m(u(E.index),h.length),0),O=[],M=1;M<E.length;M++)O.push(void 0===(w=E[M])?w:String(w));var R=E.groups;if(g){var I=[P].concat(O,S,h);void 0!==R&&I.push(R);var D=String(r.apply(void 0,I))}else D=getSubstitution(P,h,S,O,R,r);S>=N&&(C+=h.slice(N,S)+D,N=S+P.length)}return C+h.slice(N)}];function getSubstitution(t,r,o,l,u,c){var p=o+t.length,d=l.length,m=g;return void 0!==u&&(u=i(u),m=h),a.call(c,m,(function(a,i){var c;switch(i.charAt(0)){case"$":return"$";case"&":return t;case"`":return r.slice(0,o);case"'":return r.slice(p);case"<":c=u[i.slice(1,-1)];break;default:var m=+i;if(0===m)return a;if(m>d){var h=v(m/10);return 0===h?a:h<=d?void 0===l[h-1]?i.charAt(1):l[h-1]+i.charAt(1):a}c=l[m-1]}return void 0===c?"":c}))}}))},42679:(t,r,a)=>{"use strict";var o=a(6365),i=a(80339),l=a(62404);a(48897)("search",1,(function(t,r,a,u){return[function search(a){var o=t(this),i=null==a?void 0:a[r];return void 0!==i?i.call(a,o):new RegExp(a)[r](String(o))},function(t){var r=u(a,t,this);if(r.done)return r.value;var c=o(t),p=String(this),d=c.lastIndex;i(d,0)||(c.lastIndex=0);var m=l(c,p);return i(c.lastIndex,d)||(c.lastIndex=d),null===m?-1:m.index}]}))},99236:(t,r,a)=>{"use strict";var o=a(94587),i=a(6365),l=a(11987),u=a(88492),c=a(26078),p=a(62404),d=a(43288),m=a(48625),v=Math.min,h=[].push,g=4294967295,y=!m((function(){RegExp(g,"y")}));a(48897)("split",2,(function(t,r,a,m){var _;return _="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,r){var i=String(this);if(void 0===t&&0===r)return[];if(!o(t))return a.call(i,t,r);for(var l,u,c,p=[],m=(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":""),v=0,y=void 0===r?g:r>>>0,_=new RegExp(t.source,m+"g");(l=d.call(_,i))&&!((u=_.lastIndex)>v&&(p.push(i.slice(v,l.index)),l.length>1&&l.index<i.length&&h.apply(p,l.slice(1)),c=l[0].length,v=u,p.length>=y));)_.lastIndex===l.index&&_.lastIndex++;return v===i.length?!c&&_.test("")||p.push(""):p.push(i.slice(v)),p.length>y?p.slice(0,y):p}:"0".split(void 0,0).length?function(t,r){return void 0===t&&0===r?[]:a.call(this,t,r)}:a,[function split(a,o){var i=t(this),l=null==a?void 0:a[r];return void 0!==l?l.call(a,i,o):_.call(String(i),a,o)},function(t,r){var o=m(_,t,this,r,_!==a);if(o.done)return o.value;var d=i(t),h=String(this),x=l(d,RegExp),b=d.unicode,E=(d.ignoreCase?"i":"")+(d.multiline?"m":"")+(d.unicode?"u":"")+(y?"y":"g"),w=new x(y?d:"^(?:"+d.source+")",E),C=void 0===r?g:r>>>0;if(0===C)return[];if(0===h.length)return null===p(w,h)?[h]:[];for(var N=0,T=0,P=[];T<h.length;){w.lastIndex=y?T:0;var S,O=p(w,y?h:h.slice(T));if(null===O||(S=v(c(w.lastIndex+(y?0:T)),h.length))===N)T=u(h,T,b);else{if(P.push(h.slice(N,T)),P.length===C)return P;for(var M=1;M<=O.length-1;M++)if(P.push(O[M]),P.length===C)return P;T=N=S}}return P.push(h.slice(N)),P}]}))},44321:(t,r,a)=>{"use strict";a(40751);var o=a(6365),i=a(74859),l=a(36628),u="toString",c=/./.toString,define=function(t){a(17738)(RegExp.prototype,u,t,!0)};a(48625)((function(){return"/a/b"!=c.call({source:"a",flags:"b"})}))?define((function toString(){var t=o(this);return"/".concat(t.source,"/","flags"in t?t.flags:!l&&t instanceof RegExp?i.call(t):void 0)})):c.name!=u&&define((function toString(){return c.call(this)}))},3777:(t,r,a)=>{"use strict";var o=a(65772),i=a(465),l="includes";o(o.P+o.F*a(86570)(l),"String",{includes:function includes(t){return!!~i(this,t,l).indexOf(t,arguments.length>1?arguments[1]:void 0)}})},38081:(t,r,a)=>{"use strict";var o=a(65772),i=a(59021)(!0);o(o.P,"Array",{includes:function includes(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}}),a(42094)("includes")},93085:(t,r,a)=>{for(var o=a(12897),i=a(42912),l=a(17738),u=a(38113),c=a(74216),p=a(23988),d=a(62190),m=d("iterator"),v=d("toStringTag"),h=p.Array,g={CSSRuleList:!0,CSSStyleDeclaration:!1,CSSValueList:!1,ClientRectList:!1,DOMRectList:!1,DOMStringList:!1,DOMTokenList:!0,DataTransferItemList:!1,FileList:!1,HTMLAllCollection:!1,HTMLCollection:!1,HTMLFormElement:!1,HTMLSelectElement:!1,MediaList:!0,MimeTypeArray:!1,NamedNodeMap:!1,NodeList:!0,PaintRequestList:!1,Plugin:!1,PluginArray:!1,SVGLengthList:!1,SVGNumberList:!1,SVGPathSegList:!1,SVGPointList:!1,SVGStringList:!1,SVGTransformList:!1,SourceBufferList:!1,StyleSheetList:!0,TextTrackCueList:!1,TextTrackList:!1,TouchList:!1},y=i(g),_=0;_<y.length;_++){var x,b=y[_],E=g[b],w=u[b],C=w&&w.prototype;if(C&&(C[m]||c(C,m,h),C[v]||c(C,v,b),p[b]=h,E))for(x in o)C[x]||l(C,x,o[x],!0)}},24457:(t,r,a)=>{"use strict";r.__esModule=!0;var o=a(63804),i=(_interopRequireDefault(o),_interopRequireDefault(a(23615))),l=_interopRequireDefault(a(51230));_interopRequireDefault(a(91895));function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}}function _classCallCheck(t,r){if(!(t instanceof r))throw new TypeError("Cannot call a class as a function")}function _possibleConstructorReturn(t,r){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!r||"object"!=typeof r&&"function"!=typeof r?t:r}function _inherits(t,r){if("function"!=typeof r&&null!==r)throw new TypeError("Super expression must either be null or a function, not "+typeof r);t.prototype=Object.create(r&&r.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),r&&(Object.setPrototypeOf?Object.setPrototypeOf(t,r):t.__proto__=r)}var u=1073741823;function createEventEmitter(t){var r=[];return{on:function on(t){r.push(t)},off:function off(t){r=r.filter((function(r){return r!==t}))},get:function get(){return t},set:function set(a,o){t=a,r.forEach((function(r){return r(t,o)}))}}}r.default=function createReactContext(t,r){var a,c,p="__create-react-context-"+(0,l.default)()+"__",d=function(t){function Provider(){var r,a;_classCallCheck(this,Provider);for(var o=arguments.length,i=Array(o),l=0;l<o;l++)i[l]=arguments[l];return r=a=_possibleConstructorReturn(this,t.call.apply(t,[this].concat(i))),a.emitter=createEventEmitter(a.props.value),_possibleConstructorReturn(a,r)}return _inherits(Provider,t),Provider.prototype.getChildContext=function getChildContext(){var t;return(t={})[p]=this.emitter,t},Provider.prototype.componentWillReceiveProps=function componentWillReceiveProps(t){if(this.props.value!==t.value){var a=this.props.value,o=t.value,i=void 0;!function objectIs(t,r){return t===r?0!==t||1/t==1/r:t!=t&&r!=r}(a,o)?(i="function"==typeof r?r(a,o):u,0!==(i|=0)&&this.emitter.set(t.value,i)):i=0}},Provider.prototype.render=function render(){return this.props.children},Provider}(o.Component);d.childContextTypes=((a={})[p]=i.default.object.isRequired,a);var m=function(r){function Consumer(){var t,a;_classCallCheck(this,Consumer);for(var o=arguments.length,i=Array(o),l=0;l<o;l++)i[l]=arguments[l];return t=a=_possibleConstructorReturn(this,r.call.apply(r,[this].concat(i))),a.state={value:a.getValue()},a.onUpdate=function(t,r){0!=((0|a.observedBits)&r)&&a.setState({value:a.getValue()})},_possibleConstructorReturn(a,t)}return _inherits(Consumer,r),Consumer.prototype.componentWillReceiveProps=function componentWillReceiveProps(t){var r=t.observedBits;this.observedBits=null==r?u:r},Consumer.prototype.componentDidMount=function componentDidMount(){this.context[p]&&this.context[p].on(this.onUpdate);var t=this.props.observedBits;this.observedBits=null==t?u:t},Consumer.prototype.componentWillUnmount=function componentWillUnmount(){this.context[p]&&this.context[p].off(this.onUpdate)},Consumer.prototype.getValue=function getValue(){return this.context[p]?this.context[p].get():t},Consumer.prototype.render=function render(){return function onlyChild(t){return Array.isArray(t)?t[0]:t}(this.props.children)(this.state.value)},Consumer}(o.Component);return m.contextTypes=((c={})[p]=i.default.object,c),{Provider:d,Consumer:m}},t.exports=r.default},68189:(t,r,a)=>{"use strict";r.__esModule=!0;var o=_interopRequireDefault(a(63804)),i=_interopRequireDefault(a(24457));function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}}r.default=o.default.createContext||i.default,t.exports=r.default},51230:(t,r,a)=>{"use strict";var o="__global_unique_id__";t.exports=function(){return a.g[o]=(a.g[o]||0)+1}},3996:t=>{"use strict";t.exports=function(t,r,a,o,i,l,u,c){if(!t){var p;if(void 0===r)p=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var d=[a,o,i,l,u,c],m=0;(p=new Error(r.replace(/%s/g,(function(){return d[m++]})))).name="Invariant Violation"}throw p.framesToPop=1,p}}},58772:(t,r,a)=>{"use strict";var o=a(90331);function emptyFunction(){}function emptyFunctionWithReset(){}emptyFunctionWithReset.resetWarningCache=emptyFunction,t.exports=function(){function shim(t,r,a,i,l,u){if(u!==o){var c=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw c.name="Invariant Violation",c}}function getShim(){return shim}shim.isRequired=shim;var t={array:shim,bool:shim,func:shim,number:shim,object:shim,string:shim,symbol:shim,any:shim,arrayOf:getShim,element:shim,elementType:shim,instanceOf:getShim,node:shim,objectOf:getShim,oneOf:getShim,oneOfType:getShim,shape:getShim,exact:getShim,checkPropTypes:emptyFunctionWithReset,resetWarningCache:emptyFunction};return t.PropTypes=t,t}},23615:(t,r,a)=>{t.exports=a(58772)()},90331:t=>{"use strict";t.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},22634:(t,r,a)=>{"use strict";function getHashPath(){const t=window.location.href,r=t.indexOf("#");return-1===r?"":t.substring(r+1)}a.r(r),a.d(r,{createHashSource:()=>createHashSource});let createHashSource=(t="/")=>({get location(){return{pathname:getHashPath(),search:""}},addEventListener(t,r){"popstate"===t&&window.addEventListener("hashchange",r)},removeEventListener(t,r){"popstate"===t&&window.addEventListener("hashchange",r)},history:{get entries(){return[{pathname:getHashPath(),search:""}]},get index(){return 0},get state(){},pushState(t,r,a){!function pushHashPath(t){window.location.hash="#"+t}(a)},replaceState(t,r,a){!function replaceHashPath(t){const r=window.location.href.indexOf("#");window.location.replace(window.location.href.slice(0,r>=0?r:0)+"#"+t)}(a)}}})},91895:t=>{"use strict";var warning=function(){};t.exports=warning},63804:t=>{"use strict";t.exports=React},27196:t=>{"use strict";t.exports=ReactDOM},78675:t=>{"use strict";t.exports=elementorAppPackages.appUi},20485:t=>{"use strict";t.exports=elementorAppPackages.router},34381:t=>{"use strict";t.exports=elementorAppPackages.siteEditor},18194:t=>{"use strict";t.exports=wp.i18n}},l={};function __webpack_require__(t){var r=l[t];if(void 0!==r)return r.exports;var a=l[t]={exports:{}};return i[t](a,a.exports,__webpack_require__),a.exports}__webpack_require__.m=i,__webpack_require__.n=t=>{var r=t&&t.__esModule?()=>t.default:()=>t;return __webpack_require__.d(r,{a:r}),r},r=Object.getPrototypeOf?t=>Object.getPrototypeOf(t):t=>t.__proto__,__webpack_require__.t=function(a,o){if(1&o&&(a=this(a)),8&o)return a;if("object"==typeof a&&a){if(4&o&&a.__esModule)return a;if(16&o&&"function"==typeof a.then)return a}var i=Object.create(null);__webpack_require__.r(i);var l={};t=t||[null,r({}),r([]),r(r)];for(var u=2&o&&a;"object"==typeof u&&!~t.indexOf(u);u=r(u))Object.getOwnPropertyNames(u).forEach((t=>l[t]=()=>a[t]));return l.default=()=>a,__webpack_require__.d(i,l),i},__webpack_require__.d=(t,r)=>{for(var a in r)__webpack_require__.o(r,a)&&!__webpack_require__.o(t,a)&&Object.defineProperty(t,a,{enumerable:!0,get:r[a]})},__webpack_require__.f={},__webpack_require__.e=t=>Promise.all(Object.keys(__webpack_require__.f).reduce(((r,a)=>(__webpack_require__.f[a](t,r),r)),[])),__webpack_require__.u=t=>262===t?"d44a57c594ce7771dd50.bundle.min.js":372===t?"kit-library.e61c291a7b6bbc946eeb.bundle.min.js":void 0,__webpack_require__.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),__webpack_require__.o=(t,r)=>Object.prototype.hasOwnProperty.call(t,r),a={},o="elementor:",__webpack_require__.l=(t,r,i,l)=>{if(a[t])a[t].push(r);else{var u,c;if(void 0!==i)for(var p=document.getElementsByTagName("script"),d=0;d<p.length;d++){var m=p[d];if(m.getAttribute("src")==t||m.getAttribute("data-webpack")==o+i){u=m;break}}u||(c=!0,(u=document.createElement("script")).charset="utf-8",u.timeout=120,__webpack_require__.nc&&u.setAttribute("nonce",__webpack_require__.nc),u.setAttribute("data-webpack",o+i),u.src=t),a[t]=[r];var onScriptComplete=(r,o)=>{u.onerror=u.onload=null,clearTimeout(v);var i=a[t];if(delete a[t],u.parentNode&&u.parentNode.removeChild(u),i&&i.forEach((t=>t(o))),r)return r(o)},v=setTimeout(onScriptComplete.bind(null,void 0,{type:"timeout",target:u}),12e4);u.onerror=onScriptComplete.bind(null,u.onerror),u.onload=onScriptComplete.bind(null,u.onload),c&&document.head.appendChild(u)}},__webpack_require__.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},(()=>{var t;__webpack_require__.g.importScripts&&(t=__webpack_require__.g.location+"");var r=__webpack_require__.g.document;if(!t&&r&&(r.currentScript&&(t=r.currentScript.src),!t)){var a=r.getElementsByTagName("script");a.length&&(t=a[a.length-1].src)}if(!t)throw new Error("Automatic publicPath is not supported in this browser");t=t.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),__webpack_require__.p=t})(),(()=>{var t={181:0};__webpack_require__.f.j=(r,a)=>{var o=__webpack_require__.o(t,r)?t[r]:void 0;if(0!==o)if(o)a.push(o[2]);else{var i=new Promise(((a,i)=>o=t[r]=[a,i]));a.push(o[2]=i);var l=__webpack_require__.p+__webpack_require__.u(r),u=new Error;__webpack_require__.l(l,(a=>{if(__webpack_require__.o(t,r)&&(0!==(o=t[r])&&(t[r]=void 0),o)){var i=a&&("load"===a.type?"missing":a.type),l=a&&a.target&&a.target.src;u.message="Loading chunk "+r+" failed.\n("+i+": "+l+")",u.name="ChunkLoadError",u.type=i,u.request=l,o[1](u)}}),"chunk-"+r,r)}};var webpackJsonpCallback=(r,a)=>{var o,i,[l,u,c]=a,p=0;for(o in u)__webpack_require__.o(u,o)&&(__webpack_require__.m[o]=u[o]);if(c)c(__webpack_require__);for(r&&r(a);p<l.length;p++)i=l[p],__webpack_require__.o(t,i)&&t[i]&&t[i][0](),t[l[p]]=0},r=self.webpackChunkelementor=self.webpackChunkelementor||[];r.forEach(webpackJsonpCallback.bind(null,0)),r.push=webpackJsonpCallback.bind(null,r.push.bind(r))})(),(()=>{"use strict";var t=__webpack_require__(27196),r=__webpack_require__(67971),a=r(__webpack_require__(63804)),o=r(__webpack_require__(11804)),i=r(__webpack_require__(75302)),l=r(__webpack_require__(35878)),u=__webpack_require__(34381);new i.default,new l.default,new u.Module;var c=elementorCommon.config.isDebug?a.default.StrictMode:a.default.Fragment;t.render(a.default.createElement(c,null,a.default.createElement(o.default,null)),document.getElementById("e-app"))})()})();assets/js/webpack.runtime.js000064400000035555151327220410012130 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
/******/ (() => { // webpackBootstrap
/******/ 	"use strict";
/******/ 	var __webpack_modules__ = ({});
/************************************************************************/
/******/ 	// The module cache
/******/ 	var __webpack_module_cache__ = {};
/******/ 	
/******/ 	// The require function
/******/ 	function __webpack_require__(moduleId) {
/******/ 		// Check if module is in cache
/******/ 		var cachedModule = __webpack_module_cache__[moduleId];
/******/ 		if (cachedModule !== undefined) {
/******/ 			return cachedModule.exports;
/******/ 		}
/******/ 		// Create a new module (and put it into the cache)
/******/ 		var module = __webpack_module_cache__[moduleId] = {
/******/ 			// no module.id needed
/******/ 			// no module.loaded needed
/******/ 			exports: {}
/******/ 		};
/******/ 	
/******/ 		// Execute the module function
/******/ 		__webpack_modules__[moduleId](module, module.exports, __webpack_require__);
/******/ 	
/******/ 		// Return the exports of the module
/******/ 		return module.exports;
/******/ 	}
/******/ 	
/******/ 	// expose the modules object (__webpack_modules__)
/******/ 	__webpack_require__.m = __webpack_modules__;
/******/ 	
/************************************************************************/
/******/ 	/* webpack/runtime/chunk loaded */
/******/ 	(() => {
/******/ 		var deferred = [];
/******/ 		__webpack_require__.O = (result, chunkIds, fn, priority) => {
/******/ 			if(chunkIds) {
/******/ 				priority = priority || 0;
/******/ 				for(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];
/******/ 				deferred[i] = [chunkIds, fn, priority];
/******/ 				return;
/******/ 			}
/******/ 			var notFulfilled = Infinity;
/******/ 			for (var i = 0; i < deferred.length; i++) {
/******/ 				var [chunkIds, fn, priority] = deferred[i];
/******/ 				var fulfilled = true;
/******/ 				for (var j = 0; j < chunkIds.length; j++) {
/******/ 					if ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {
/******/ 						chunkIds.splice(j--, 1);
/******/ 					} else {
/******/ 						fulfilled = false;
/******/ 						if(priority < notFulfilled) notFulfilled = priority;
/******/ 					}
/******/ 				}
/******/ 				if(fulfilled) {
/******/ 					deferred.splice(i--, 1)
/******/ 					var r = fn();
/******/ 					if (r !== undefined) result = r;
/******/ 				}
/******/ 			}
/******/ 			return result;
/******/ 		};
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/create fake namespace object */
/******/ 	(() => {
/******/ 		var getProto = Object.getPrototypeOf ? (obj) => (Object.getPrototypeOf(obj)) : (obj) => (obj.__proto__);
/******/ 		var leafPrototypes;
/******/ 		// create a fake namespace object
/******/ 		// mode & 1: value is a module id, require it
/******/ 		// mode & 2: merge all properties of value into the ns
/******/ 		// mode & 4: return value when already ns object
/******/ 		// mode & 16: return value when it's Promise-like
/******/ 		// mode & 8|1: behave like require
/******/ 		__webpack_require__.t = function(value, mode) {
/******/ 			if(mode & 1) value = this(value);
/******/ 			if(mode & 8) return value;
/******/ 			if(typeof value === 'object' && value) {
/******/ 				if((mode & 4) && value.__esModule) return value;
/******/ 				if((mode & 16) && typeof value.then === 'function') return value;
/******/ 			}
/******/ 			var ns = Object.create(null);
/******/ 			__webpack_require__.r(ns);
/******/ 			var def = {};
/******/ 			leafPrototypes = leafPrototypes || [null, getProto({}), getProto([]), getProto(getProto)];
/******/ 			for(var current = mode & 2 && value; typeof current == 'object' && !~leafPrototypes.indexOf(current); current = getProto(current)) {
/******/ 				Object.getOwnPropertyNames(current).forEach((key) => (def[key] = () => (value[key])));
/******/ 			}
/******/ 			def['default'] = () => (value);
/******/ 			__webpack_require__.d(ns, def);
/******/ 			return ns;
/******/ 		};
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/define property getters */
/******/ 	(() => {
/******/ 		// define getter functions for harmony exports
/******/ 		__webpack_require__.d = (exports, definition) => {
/******/ 			for(var key in definition) {
/******/ 				if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
/******/ 					Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
/******/ 				}
/******/ 			}
/******/ 		};
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/ensure chunk */
/******/ 	(() => {
/******/ 		__webpack_require__.f = {};
/******/ 		// This file contains only the entry chunk.
/******/ 		// The chunk loading function for additional chunks
/******/ 		__webpack_require__.e = (chunkId) => {
/******/ 			return Promise.all(Object.keys(__webpack_require__.f).reduce((promises, key) => {
/******/ 				__webpack_require__.f[key](chunkId, promises);
/******/ 				return promises;
/******/ 			}, []));
/******/ 		};
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/get javascript chunk filename */
/******/ 	(() => {
/******/ 		// This function allow to reference async chunks
/******/ 		__webpack_require__.u = (chunkId) => {
/******/ 			// return url for filenames not based on template
/******/ 			if (chunkId === "lightbox") return "" + chunkId + ".8c3d45f71a9a1ecd69fc.bundle.js";
/******/ 			if (chunkId === "text-path") return "" + chunkId + ".9b3ece1b692d34d012b5.bundle.js";
/******/ 			if (chunkId === "accordion") return "" + chunkId + ".5824c4bc9e26d54f2918.bundle.js";
/******/ 			if (chunkId === "alert") return "" + chunkId + ".f04b9d16129bc8aa4cdc.bundle.js";
/******/ 			if (chunkId === "counter") return "" + chunkId + ".b452600865ffc51a6ea0.bundle.js";
/******/ 			if (chunkId === "progress") return "" + chunkId + ".5306267e0436c8de4985.bundle.js";
/******/ 			if (chunkId === "tabs") return "tabs.b7bd957161644e810d53.bundle.js";
/******/ 			if (chunkId === "toggle") return "" + chunkId + ".5e8aae8d1c1e897e9b4e.bundle.js";
/******/ 			if (chunkId === "video") return "" + chunkId + ".509fb0e07b97e0f603d7.bundle.js";
/******/ 			if (chunkId === "image-carousel") return "" + chunkId + ".024943eec9daaabea9ff.bundle.js";
/******/ 			if (chunkId === "text-editor") return "" + chunkId + ".a8434931ecdcd5ff7589.bundle.js";
/******/ 			if (chunkId === "wp-audio") return "" + chunkId + ".de344657de8b792ed9b0.bundle.js";
/******/ 			// return url for filenames based on template
/******/ 			return undefined;
/******/ 		};
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/global */
/******/ 	(() => {
/******/ 		__webpack_require__.g = (function() {
/******/ 			if (typeof globalThis === 'object') return globalThis;
/******/ 			try {
/******/ 				return this || new Function('return this')();
/******/ 			} catch (e) {
/******/ 				if (typeof window === 'object') return window;
/******/ 			}
/******/ 		})();
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/hasOwnProperty shorthand */
/******/ 	(() => {
/******/ 		__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/load script */
/******/ 	(() => {
/******/ 		var inProgress = {};
/******/ 		var dataWebpackPrefix = "elementor:";
/******/ 		// loadScript function to load a script via script tag
/******/ 		__webpack_require__.l = (url, done, key, chunkId) => {
/******/ 			if(inProgress[url]) { inProgress[url].push(done); return; }
/******/ 			var script, needAttach;
/******/ 			if(key !== undefined) {
/******/ 				var scripts = document.getElementsByTagName("script");
/******/ 				for(var i = 0; i < scripts.length; i++) {
/******/ 					var s = scripts[i];
/******/ 					if(s.getAttribute("src") == url || s.getAttribute("data-webpack") == dataWebpackPrefix + key) { script = s; break; }
/******/ 				}
/******/ 			}
/******/ 			if(!script) {
/******/ 				needAttach = true;
/******/ 				script = document.createElement('script');
/******/ 		
/******/ 				script.charset = 'utf-8';
/******/ 				script.timeout = 120;
/******/ 				if (__webpack_require__.nc) {
/******/ 					script.setAttribute("nonce", __webpack_require__.nc);
/******/ 				}
/******/ 				script.setAttribute("data-webpack", dataWebpackPrefix + key);
/******/ 				script.src = url;
/******/ 			}
/******/ 			inProgress[url] = [done];
/******/ 			var onScriptComplete = (prev, event) => {
/******/ 				// avoid mem leaks in IE.
/******/ 				script.onerror = script.onload = null;
/******/ 				clearTimeout(timeout);
/******/ 				var doneFns = inProgress[url];
/******/ 				delete inProgress[url];
/******/ 				script.parentNode && script.parentNode.removeChild(script);
/******/ 				doneFns && doneFns.forEach((fn) => (fn(event)));
/******/ 				if(prev) return prev(event);
/******/ 			}
/******/ 			;
/******/ 			var timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);
/******/ 			script.onerror = onScriptComplete.bind(null, script.onerror);
/******/ 			script.onload = onScriptComplete.bind(null, script.onload);
/******/ 			needAttach && document.head.appendChild(script);
/******/ 		};
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/make namespace object */
/******/ 	(() => {
/******/ 		// define __esModule on exports
/******/ 		__webpack_require__.r = (exports) => {
/******/ 			if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ 				Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ 			}
/******/ 			Object.defineProperty(exports, '__esModule', { value: true });
/******/ 		};
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/publicPath */
/******/ 	(() => {
/******/ 		var scriptUrl;
/******/ 		if (__webpack_require__.g.importScripts) scriptUrl = __webpack_require__.g.location + "";
/******/ 		var document = __webpack_require__.g.document;
/******/ 		if (!scriptUrl && document) {
/******/ 			if (document.currentScript)
/******/ 				scriptUrl = document.currentScript.src
/******/ 			if (!scriptUrl) {
/******/ 				var scripts = document.getElementsByTagName("script");
/******/ 				if(scripts.length) scriptUrl = scripts[scripts.length - 1].src
/******/ 			}
/******/ 		}
/******/ 		// When supporting browsers where an automatic publicPath is not supported you must specify an output.publicPath manually via configuration
/******/ 		// or pass an empty string ("") and set the __webpack_public_path__ variable from your code to use your own logic.
/******/ 		if (!scriptUrl) throw new Error("Automatic publicPath is not supported in this browser");
/******/ 		scriptUrl = scriptUrl.replace(/#.*$/, "").replace(/\?.*$/, "").replace(/\/[^\/]+$/, "/");
/******/ 		__webpack_require__.p = scriptUrl;
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/jsonp chunk loading */
/******/ 	(() => {
/******/ 		// no baseURI
/******/ 		
/******/ 		// object to store loaded and loading chunks
/******/ 		// undefined = chunk not loaded, null = chunk preloaded/prefetched
/******/ 		// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded
/******/ 		var installedChunks = {
/******/ 			"webpack.runtime": 0
/******/ 		};
/******/ 		
/******/ 		__webpack_require__.f.j = (chunkId, promises) => {
/******/ 				// JSONP chunk loading for javascript
/******/ 				var installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;
/******/ 				if(installedChunkData !== 0) { // 0 means "already installed".
/******/ 		
/******/ 					// a Promise means "currently loading".
/******/ 					if(installedChunkData) {
/******/ 						promises.push(installedChunkData[2]);
/******/ 					} else {
/******/ 						if("webpack.runtime" != chunkId) {
/******/ 							// setup Promise in chunk cache
/******/ 							var promise = new Promise((resolve, reject) => (installedChunkData = installedChunks[chunkId] = [resolve, reject]));
/******/ 							promises.push(installedChunkData[2] = promise);
/******/ 		
/******/ 							// start chunk loading
/******/ 							var url = __webpack_require__.p + __webpack_require__.u(chunkId);
/******/ 							// create error before stack unwound to get useful stacktrace later
/******/ 							var error = new Error();
/******/ 							var loadingEnded = (event) => {
/******/ 								if(__webpack_require__.o(installedChunks, chunkId)) {
/******/ 									installedChunkData = installedChunks[chunkId];
/******/ 									if(installedChunkData !== 0) installedChunks[chunkId] = undefined;
/******/ 									if(installedChunkData) {
/******/ 										var errorType = event && (event.type === 'load' ? 'missing' : event.type);
/******/ 										var realSrc = event && event.target && event.target.src;
/******/ 										error.message = 'Loading chunk ' + chunkId + ' failed.\n(' + errorType + ': ' + realSrc + ')';
/******/ 										error.name = 'ChunkLoadError';
/******/ 										error.type = errorType;
/******/ 										error.request = realSrc;
/******/ 										installedChunkData[1](error);
/******/ 									}
/******/ 								}
/******/ 							};
/******/ 							__webpack_require__.l(url, loadingEnded, "chunk-" + chunkId, chunkId);
/******/ 						} else installedChunks[chunkId] = 0;
/******/ 					}
/******/ 				}
/******/ 		};
/******/ 		
/******/ 		// no prefetching
/******/ 		
/******/ 		// no preloaded
/******/ 		
/******/ 		// no HMR
/******/ 		
/******/ 		// no HMR manifest
/******/ 		
/******/ 		__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);
/******/ 		
/******/ 		// install a JSONP callback for chunk loading
/******/ 		var webpackJsonpCallback = (parentChunkLoadingFunction, data) => {
/******/ 			var [chunkIds, moreModules, runtime] = data;
/******/ 			// add "moreModules" to the modules object,
/******/ 			// then flag all "chunkIds" as loaded and fire callback
/******/ 			var moduleId, chunkId, i = 0;
/******/ 			for(moduleId in moreModules) {
/******/ 				if(__webpack_require__.o(moreModules, moduleId)) {
/******/ 					__webpack_require__.m[moduleId] = moreModules[moduleId];
/******/ 				}
/******/ 			}
/******/ 			if(runtime) var result = runtime(__webpack_require__);
/******/ 			if(parentChunkLoadingFunction) parentChunkLoadingFunction(data);
/******/ 			for(;i < chunkIds.length; i++) {
/******/ 				chunkId = chunkIds[i];
/******/ 				if(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {
/******/ 					installedChunks[chunkId][0]();
/******/ 				}
/******/ 				installedChunks[chunkIds[i]] = 0;
/******/ 			}
/******/ 			return __webpack_require__.O(result);
/******/ 		}
/******/ 		
/******/ 		var chunkLoadingGlobal = self["webpackChunkelementor"] = self["webpackChunkelementor"] || [];
/******/ 		chunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));
/******/ 		chunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));
/******/ 	})();
/******/ 	
/************************************************************************/
/******/ 	
/******/ 	
/******/ })()
;
//# sourceMappingURL=webpack.runtime.js.mapassets/js/d44a57c594ce7771dd50.bundle.min.js000064400000167763151327220410013723 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(self.webpackChunkelementor=self.webpackChunkelementor||[]).push([[262],{35657:(t,e,n)=>{t.exports=n(69591)},73220:(t,e,n)=>{t.exports=n(76483)},29603:(t,e,n)=>{"use strict";function _extends(){return(_extends=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t}).apply(this,arguments)}n.d(e,{Z:()=>_extends})},60656:(t,e,n)=>{"use strict";function _setPrototypeOf(t,e){return(_setPrototypeOf=Object.setPrototypeOf||function _setPrototypeOf(t,e){return t.__proto__=e,t})(t,e)}function _inheritsLoose(t,e){t.prototype=Object.create(e.prototype),t.prototype.constructor=t,_setPrototypeOf(t,e)}n.d(e,{Z:()=>_inheritsLoose})},69591:(t,e,n)=>{n(57188),t.exports=n(47208).Object.values},76483:(t,e,n)=>{n(70285),n(99572),n(74114),n(86082),n(81522),n(25757),t.exports=n(47208).Promise},4326:(t,e,n)=>{var r=n(43280),i=n(6022).set,s=r.MutationObserver||r.WebKitMutationObserver,u=r.process,o=r.Promise,a="process"==n(41352)(u);t.exports=function(){var t,e,n,flush=function(){var r,i;for(a&&(r=u.domain)&&r.exit();t;){i=t.fn,t=t.next;try{i()}catch(r){throw t?n():e=void 0,r}}e=void 0,r&&r.enter()};if(a)n=function(){u.nextTick(flush)};else if(!s||r.navigator&&r.navigator.standalone)if(o&&o.resolve){var c=o.resolve(void 0);n=function(){c.then(flush)}}else n=function(){i.call(r,flush)};else{var l=!0,h=document.createTextNode("");new s(flush).observe(h,{characterData:!0}),n=function(){h.data=l=!l}}return function(r){var i={fn:r,next:void 0};e&&(e.next=i),t||(t=i,n()),e=i}}},88579:(t,e,n)=>{"use strict";var r=n(26610);function PromiseCapability(t){var e,n;this.promise=new t((function(t,r){if(void 0!==e||void 0!==n)throw TypeError("Bad Promise constructor");e=t,n=r})),this.resolve=r(e),this.reject=r(n)}t.exports.f=function(t){return new PromiseCapability(t)}},52745:t=>{t.exports=function(t){try{return{e:!1,v:t()}}catch(t){return{e:!0,v:t}}}},88747:(t,e,n)=>{var r=n(30498),i=n(39632),s=n(88579);t.exports=function(t,e){if(r(t),i(e)&&e.constructor===t)return e;var n=s.f(t);return(0,n.resolve)(e),n.promise}},5698:(t,e,n)=>{"use strict";var r=n(43280),i=n(47208),s=n(60510),u=n(75179),o=n(24300)("species");t.exports=function(t){var e="function"==typeof i[t]?i[t]:r[t];u&&e&&!e[o]&&s.f(e,o,{configurable:!0,get:function(){return this}})}},73732:(t,e,n)=>{var r=n(30498),i=n(26610),s=n(24300)("species");t.exports=function(t,e){var n,u=r(t).constructor;return void 0===u||null==(n=r(u)[s])?e:i(n)}},6022:(t,e,n)=>{var r,i,s,u=n(61725),o=n(19897),a=n(92477),c=n(48765),l=n(43280),h=l.process,f=l.setImmediate,d=l.clearImmediate,v=l.MessageChannel,p=l.Dispatch,y=0,m={},b="onreadystatechange",run=function(){var t=+this;if(m.hasOwnProperty(t)){var e=m[t];delete m[t],e()}},listener=function(t){run.call(t.data)};f&&d||(f=function setImmediate(t){for(var e=[],n=1;arguments.length>n;)e.push(arguments[n++]);return m[++y]=function(){o("function"==typeof t?t:Function(t),e)},r(y),y},d=function clearImmediate(t){delete m[t]},"process"==n(41352)(h)?r=function(t){h.nextTick(u(run,t,1))}:p&&p.now?r=function(t){p.now(u(run,t,1))}:v?(s=(i=new v).port2,i.port1.onmessage=listener,r=u(s.postMessage,s,1)):l.addEventListener&&"function"==typeof postMessage&&!l.importScripts?(r=function(t){l.postMessage(t+"","*")},l.addEventListener("message",listener,!1)):r=b in c("script")?function(t){a.appendChild(c("script")).onreadystatechange=function(){a.removeChild(this),run.call(t)}}:function(t){setTimeout(u(run,t,1),0)}),t.exports={set:f,clear:d}},35701:(t,e,n)=>{var r=n(43280).navigator;t.exports=r&&r.userAgent||""},86082:(t,e,n)=>{"use strict";var r,i,s,u,o=n(36794),a=n(43280),c=n(61725),l=n(8312),h=n(98310),f=n(39632),d=n(26610),v=n(54677),p=n(25985),y=n(73732),m=n(6022).set,b=n(4326)(),g=n(88579),O=n(52745),Q=n(35701),P=n(88747),C="Promise",R=a.TypeError,E=a.process,M=E&&E.versions,F=M&&M.v8||"",S=a.Promise,w="process"==l(E),empty=function(){},x=i=g.f,q=!!function(){try{var t=S.resolve(1),e=(t.constructor={})[n(24300)("species")]=function(t){t(empty,empty)};return(w||"function"==typeof PromiseRejectionEvent)&&t.then(empty)instanceof e&&0!==F.indexOf("6.6")&&-1===Q.indexOf("Chrome/66")}catch(t){}}(),isThenable=function(t){var e;return!(!f(t)||"function"!=typeof(e=t.then))&&e},notify=function(t,e){if(!t._n){t._n=!0;var n=t._c;b((function(){for(var r=t._v,i=1==t._s,s=0,run=function(e){var n,s,u,o=i?e.ok:e.fail,a=e.resolve,c=e.reject,l=e.domain;try{o?(i||(2==t._h&&onHandleUnhandled(t),t._h=1),!0===o?n=r:(l&&l.enter(),n=o(r),l&&(l.exit(),u=!0)),n===e.promise?c(R("Promise-chain cycle")):(s=isThenable(n))?s.call(n,a,c):a(n)):c(r)}catch(t){l&&!u&&l.exit(),c(t)}};n.length>s;)run(n[s++]);t._c=[],t._n=!1,e&&!t._h&&onUnhandled(t)}))}},onUnhandled=function(t){m.call(a,(function(){var e,n,r,i=t._v,s=isUnhandled(t);if(s&&(e=O((function(){w?E.emit("unhandledRejection",i,t):(n=a.onunhandledrejection)?n({promise:t,reason:i}):(r=a.console)&&r.error&&r.error("Unhandled promise rejection",i)})),t._h=w||isUnhandled(t)?2:1),t._a=void 0,s&&e.e)throw e.v}))},isUnhandled=function(t){return 1!==t._h&&0===(t._a||t._c).length},onHandleUnhandled=function(t){m.call(a,(function(){var e;w?E.emit("rejectionHandled",t):(e=a.onrejectionhandled)&&e({promise:t,reason:t._v})}))},$reject=function(t){var e=this;e._d||(e._d=!0,(e=e._w||e)._v=t,e._s=2,e._a||(e._a=e._c.slice()),notify(e,!0))},$resolve=function(t){var e,n=this;if(!n._d){n._d=!0,n=n._w||n;try{if(n===t)throw R("Promise can't be resolved itself");(e=isThenable(t))?b((function(){var r={_w:n,_d:!1};try{e.call(t,c($resolve,r,1),c($reject,r,1))}catch(t){$reject.call(r,t)}})):(n._v=t,n._s=1,notify(n,!1))}catch(t){$reject.call({_w:n,_d:!1},t)}}};q||(S=function Promise(t){v(this,S,C,"_h"),d(t),r.call(this);try{t(c($resolve,this,1),c($reject,this,1))}catch(t){$reject.call(this,t)}},(r=function Promise(t){this._c=[],this._a=void 0,this._s=0,this._d=!1,this._v=void 0,this._h=0,this._n=!1}).prototype=n(13199)(S.prototype,{then:function then(t,e){var n=x(y(this,S));return n.ok="function"!=typeof t||t,n.fail="function"==typeof e&&e,n.domain=w?E.domain:void 0,this._c.push(n),this._a&&this._a.push(n),this._s&&notify(this,!1),n.promise},catch:function(t){return this.then(void 0,t)}}),s=function(){var t=new r;this.promise=t,this.resolve=c($resolve,t,1),this.reject=c($reject,t,1)},g.f=x=function(t){return t===S||t===u?new s(t):i(t)}),h(h.G+h.W+h.F*!q,{Promise:S}),n(2413)(S,C),n(5698)(C),u=n(47208).Promise,h(h.S+h.F*!q,C,{reject:function reject(t){var e=x(this);return(0,e.reject)(t),e.promise}}),h(h.S+h.F*(o||!q),C,{resolve:function resolve(t){return P(o&&this===u?S:this,t)}}),h(h.S+h.F*!(q&&n(26797)((function(t){S.all(t).catch(empty)}))),C,{all:function all(t){var e=this,n=x(e),r=n.resolve,i=n.reject,s=O((function(){var n=[],s=0,u=1;p(t,!1,(function(t){var o=s++,a=!1;n.push(void 0),u++,e.resolve(t).then((function(t){a||(a=!0,n[o]=t,--u||r(n))}),i)})),--u||r(n)}));return s.e&&i(s.v),n.promise},race:function race(t){var e=this,n=x(e),r=n.reject,i=O((function(){p(t,!1,(function(t){e.resolve(t).then(n.resolve,r)}))}));return i.e&&r(i.v),n.promise}})},57188:(t,e,n)=>{var r=n(98310),i=n(9480)(!1);r(r.S,"Object",{values:function values(t){return i(t)}})},81522:(t,e,n)=>{"use strict";var r=n(98310),i=n(47208),s=n(43280),u=n(73732),o=n(88747);r(r.P+r.R,"Promise",{finally:function(t){var e=u(this,i.Promise||s.Promise),n="function"==typeof t;return this.then(n?function(n){return o(e,t()).then((function(){return n}))}:t,n?function(n){return o(e,t()).then((function(){throw n}))}:t)}})},25757:(t,e,n)=>{"use strict";var r=n(98310),i=n(88579),s=n(52745);r(r.S,"Promise",{try:function(t){var e=i.f(this),n=s(t);return(n.e?e.reject:e.resolve)(n.v),e.promise}})},29029:t=>{t.exports={ReactQueryDevtools:function(){return null},ReactQueryDevtoolsPanel:function(){return null}}},85123:(t,e,n)=>{"use strict";n.d(e,{j:()=>u});var r=n(60656),i=n(90270),s=n(12860),u=new(function(t){function FocusManager(){return t.apply(this,arguments)||this}(0,r.Z)(FocusManager,t);var e=FocusManager.prototype;return e.onSubscribe=function onSubscribe(){this.removeEventListener||this.setDefaultEventListener()},e.setEventListener=function setEventListener(t){var e=this;this.removeEventListener&&this.removeEventListener(),this.removeEventListener=t((function(t){"boolean"==typeof t?e.setFocused(t):e.onFocus()}))},e.setFocused=function setFocused(t){this.focused=t,t&&this.onFocus()},e.onFocus=function onFocus(){this.listeners.forEach((function(t){t()}))},e.isFocused=function isFocused(){return"boolean"==typeof this.focused?this.focused:"undefined"==typeof document||[void 0,"visible","prerender"].includes(document.visibilityState)},e.setDefaultEventListener=function setDefaultEventListener(){var t;!s.sk&&(null==(t=window)?void 0:t.addEventListener)&&this.setEventListener((function(t){var e=function listener(){return t()};return window.addEventListener("visibilitychange",e,!1),window.addEventListener("focus",e,!1),function(){window.removeEventListener("visibilitychange",e),window.removeEventListener("focus",e)}}))},FocusManager}(i.l))},30795:(t,e,n)=>{"use strict";n.r(e),n.d(e,{CancelledError:()=>r.p8,QueryCache:()=>i.t,QueryClient:()=>s.S,QueryObserver:()=>u.z,QueriesObserver:()=>o.y,InfiniteQueryObserver:()=>a.c,MutationCache:()=>c.L,MutationObserver:()=>l.X,setLogger:()=>h.E,notifyManager:()=>f.V,focusManager:()=>d.j,onlineManager:()=>v.N,hashQueryKey:()=>p.yF,isError:()=>p.VZ,isCancelledError:()=>r.DV});var r=n(98973),i=n(89157),s=n(37710),u=n(87978),o=n(27282),a=n(15830),c=n(79560),l=n(40424),h=n(16129),f=n(87226),d=n(85123),v=n(19240),p=n(12860),y=n(46503),m={};for(const t in y)["default","CancelledError","QueryCache","QueryClient","QueryObserver","QueriesObserver","InfiniteQueryObserver","MutationCache","MutationObserver","setLogger","notifyManager","focusManager","onlineManager","hashQueryKey","isError","isCancelledError"].indexOf(t)<0&&(m[t]=()=>y[t]);n.d(e,m)},47798:(t,e,n)=>{"use strict";n.d(e,{Gm:()=>infiniteQueryBehavior,Qy:()=>hasNextPage,ZF:()=>hasPreviousPage});var r=n(98973);function infiniteQueryBehavior(){return{onFetch:function onFetch(t){t.fetchFn=function(){var e,n,i,s,u,o=null==(e=t.fetchOptions)||null==(n=e.meta)?void 0:n.fetchMore,a=null==o?void 0:o.pageParam,c="forward"===(null==o?void 0:o.direction),l="backward"===(null==o?void 0:o.direction),h=(null==(i=t.state.data)?void 0:i.pages)||[],f=(null==(s=t.state.data)?void 0:s.pageParams)||[],d=f,v=!1,p=t.options.queryFn||function(){return Promise.reject("Missing queryFn")},y=function fetchPage(e,n,i,s){if(v)return Promise.reject("Cancelled");if(void 0===i&&!n&&e.length)return Promise.resolve(e);var u={queryKey:t.queryKey,pageParam:i},o=p(u),a=Promise.resolve(o).then((function(t){return d=s?[i].concat(d):[].concat(d,[i]),s?[t].concat(e):[].concat(e,[t])}));(0,r.LE)(o)&&(a.cancel=o.cancel);return a};if(h.length)if(c){var m=void 0!==a,b=m?a:getNextPageParam(t.options,h);u=y(h,m,b)}else if(l){var g=void 0!==a,O=g?a:getPreviousPageParam(t.options,h);u=y(h,g,O,!0)}else!function(){d=[];var e=void 0===t.options.getNextPageParam;u=y([],e,f[0]);for(var n=function _loop(n){u=u.then((function(r){var i=e?f[n]:getNextPageParam(t.options,r);return y(r,e,i)}))},r=1;r<h.length;r++)n(r)}();else u=y([]);var Q=u.then((function(t){return{pages:t,pageParams:d}}));return Q.cancel=function(){v=!0,(0,r.LE)(u)&&u.cancel()},Q}}}}function getNextPageParam(t,e){return null==t.getNextPageParam?void 0:t.getNextPageParam(e[e.length-1],e)}function getPreviousPageParam(t,e){return null==t.getPreviousPageParam?void 0:t.getPreviousPageParam(e[0],e)}function hasNextPage(t,e){if(t.getNextPageParam&&Array.isArray(e)){var n=getNextPageParam(t,e);return null!=n&&!1!==n}}function hasPreviousPage(t,e){if(t.getPreviousPageParam&&Array.isArray(e)){var n=getPreviousPageParam(t,e);return null!=n&&!1!==n}}},15830:(t,e,n)=>{"use strict";n.d(e,{c:()=>o});var r=n(29603),i=n(60656),s=n(87978),u=n(47798),o=function(t){function InfiniteQueryObserver(e,n){return t.call(this,e,n)||this}(0,i.Z)(InfiniteQueryObserver,t);var e=InfiniteQueryObserver.prototype;return e.bindMethods=function bindMethods(){t.prototype.bindMethods.call(this),this.fetchNextPage=this.fetchNextPage.bind(this),this.fetchPreviousPage=this.fetchPreviousPage.bind(this)},e.setOptions=function setOptions(e){t.prototype.setOptions.call(this,(0,r.Z)({},e,{behavior:(0,u.Gm)()}))},e.getOptimisticResult=function getOptimisticResult(e){return e.behavior=(0,u.Gm)(),t.prototype.getOptimisticResult.call(this,e)},e.fetchNextPage=function fetchNextPage(t){return this.fetch({cancelRefetch:!0,throwOnError:null==t?void 0:t.throwOnError,meta:{fetchMore:{direction:"forward",pageParam:null==t?void 0:t.pageParam}}})},e.fetchPreviousPage=function fetchPreviousPage(t){return this.fetch({cancelRefetch:!0,throwOnError:null==t?void 0:t.throwOnError,meta:{fetchMore:{direction:"backward",pageParam:null==t?void 0:t.pageParam}}})},e.createResult=function createResult(e,n){var i,s,o,a,c,l,h=e.state,f=t.prototype.createResult.call(this,e,n);return(0,r.Z)({},f,{fetchNextPage:this.fetchNextPage,fetchPreviousPage:this.fetchPreviousPage,hasNextPage:(0,u.Qy)(n,null==(i=h.data)?void 0:i.pages),hasPreviousPage:(0,u.ZF)(n,null==(s=h.data)?void 0:s.pages),isFetchingNextPage:h.isFetching&&"forward"===(null==(o=h.fetchMeta)||null==(a=o.fetchMore)?void 0:a.direction),isFetchingPreviousPage:h.isFetching&&"backward"===(null==(c=h.fetchMeta)||null==(l=c.fetchMore)?void 0:l.direction)})},InfiniteQueryObserver}(s.z)},16129:(t,e,n)=>{"use strict";n.d(e,{j:()=>getLogger,E:()=>setLogger});var r=n(12860),i=console||{error:r.ZT,warn:r.ZT,log:r.ZT};function getLogger(){return i}function setLogger(t){i=t}},12790:(t,e,n)=>{"use strict";n.d(e,{m:()=>a,R:()=>getDefaultState});var r=n(29603),i=n(16129),s=n(87226),u=n(98973),o=n(12860),a=function(){function Mutation(t){this.options=(0,r.Z)({},t.defaultOptions,t.options),this.mutationId=t.mutationId,this.mutationCache=t.mutationCache,this.observers=[],this.state=t.state||getDefaultState()}var t=Mutation.prototype;return t.setState=function setState(t){this.dispatch({type:"setState",state:t})},t.addObserver=function addObserver(t){-1===this.observers.indexOf(t)&&this.observers.push(t)},t.removeObserver=function removeObserver(t){this.observers=this.observers.filter((function(e){return e!==t}))},t.cancel=function cancel(){return this.retryer?(this.retryer.cancel(),this.retryer.promise.then(o.ZT).catch(o.ZT)):Promise.resolve()},t.continue=function _continue(){return this.retryer?(this.retryer.continue(),this.retryer.promise):this.execute()},t.execute=function execute(){var t,e=this,n="loading"===this.state.status,r=Promise.resolve();return n||(this.dispatch({type:"loading",variables:this.options.variables}),r=r.then((function(){return null==e.options.onMutate?void 0:e.options.onMutate(e.state.variables)})).then((function(t){t!==e.state.context&&e.dispatch({type:"loading",context:t,variables:e.state.variables})}))),r.then((function(){return e.executeMutation()})).then((function(n){t=n,null==e.mutationCache.config.onSuccess||e.mutationCache.config.onSuccess(t,e.state.variables,e.state.context,e)})).then((function(){return null==e.options.onSuccess?void 0:e.options.onSuccess(t,e.state.variables,e.state.context)})).then((function(){return null==e.options.onSettled?void 0:e.options.onSettled(t,null,e.state.variables,e.state.context)})).then((function(){return e.dispatch({type:"success",data:t}),t})).catch((function(t){return null==e.mutationCache.config.onError||e.mutationCache.config.onError(t,e.state.variables,e.state.context,e),(0,i.j)().error(t),Promise.resolve().then((function(){return null==e.options.onError?void 0:e.options.onError(t,e.state.variables,e.state.context)})).then((function(){return null==e.options.onSettled?void 0:e.options.onSettled(void 0,t,e.state.variables,e.state.context)})).then((function(){throw e.dispatch({type:"error",error:t}),t}))}))},t.executeMutation=function executeMutation(){var t,e=this;return this.retryer=new u.m4({fn:function fn(){return e.options.mutationFn?e.options.mutationFn(e.state.variables):Promise.reject("No mutationFn found")},onFail:function onFail(){e.dispatch({type:"failed"})},onPause:function onPause(){e.dispatch({type:"pause"})},onContinue:function onContinue(){e.dispatch({type:"continue"})},retry:null!=(t=this.options.retry)?t:0,retryDelay:this.options.retryDelay}),this.retryer.promise},t.dispatch=function dispatch(t){var e=this;this.state=function reducer(t,e){switch(e.type){case"failed":return(0,r.Z)({},t,{failureCount:t.failureCount+1});case"pause":return(0,r.Z)({},t,{isPaused:!0});case"continue":return(0,r.Z)({},t,{isPaused:!1});case"loading":return(0,r.Z)({},t,{context:e.context,data:void 0,error:null,isPaused:!1,status:"loading",variables:e.variables});case"success":return(0,r.Z)({},t,{data:e.data,error:null,status:"success",isPaused:!1});case"error":return(0,r.Z)({},t,{data:void 0,error:e.error,failureCount:t.failureCount+1,isPaused:!1,status:"error"});case"setState":return(0,r.Z)({},t,e.state);default:return t}}(this.state,t),s.V.batch((function(){e.observers.forEach((function(e){e.onMutationUpdate(t)})),e.mutationCache.notify(e)}))},Mutation}();function getDefaultState(){return{context:void 0,data:void 0,error:null,failureCount:0,isPaused:!1,status:"idle",variables:void 0}}},79560:(t,e,n)=>{"use strict";n.d(e,{L:()=>o});var r=n(60656),i=n(87226),s=n(12790),u=n(12860),o=function(t){function MutationCache(e){var n;return(n=t.call(this)||this).config=e||{},n.mutations=[],n.mutationId=0,n}(0,r.Z)(MutationCache,t);var e=MutationCache.prototype;return e.build=function build(t,e,n){var r=new s.m({mutationCache:this,mutationId:++this.mutationId,options:t.defaultMutationOptions(e),state:n,defaultOptions:e.mutationKey?t.getMutationDefaults(e.mutationKey):void 0});return this.add(r),r},e.add=function add(t){this.mutations.push(t),this.notify(t)},e.remove=function remove(t){this.mutations=this.mutations.filter((function(e){return e!==t})),t.cancel(),this.notify(t)},e.clear=function clear(){var t=this;i.V.batch((function(){t.mutations.forEach((function(e){t.remove(e)}))}))},e.getAll=function getAll(){return this.mutations},e.find=function find(t){return void 0===t.exact&&(t.exact=!0),this.mutations.find((function(e){return(0,u.X7)(t,e)}))},e.findAll=function findAll(t){return this.mutations.filter((function(e){return(0,u.X7)(t,e)}))},e.notify=function notify(t){var e=this;i.V.batch((function(){e.listeners.forEach((function(e){e(t)}))}))},e.onFocus=function onFocus(){this.resumePausedMutations()},e.onOnline=function onOnline(){this.resumePausedMutations()},e.resumePausedMutations=function resumePausedMutations(){var t=this.mutations.filter((function(t){return t.state.isPaused}));return i.V.batch((function(){return t.reduce((function(t,e){return t.then((function(){return e.continue().catch(u.ZT)}))}),Promise.resolve())}))},MutationCache}(n(90270).l)},40424:(t,e,n)=>{"use strict";n.d(e,{X:()=>o});var r=n(29603),i=n(60656),s=n(12790),u=n(87226),o=function(t){function MutationObserver(e,n){var r;return(r=t.call(this)||this).client=e,r.setOptions(n),r.bindMethods(),r.updateResult(),r}(0,i.Z)(MutationObserver,t);var e=MutationObserver.prototype;return e.bindMethods=function bindMethods(){this.mutate=this.mutate.bind(this),this.reset=this.reset.bind(this)},e.setOptions=function setOptions(t){this.options=this.client.defaultMutationOptions(t)},e.onUnsubscribe=function onUnsubscribe(){var t;this.listeners.length||(null==(t=this.currentMutation)||t.removeObserver(this))},e.onMutationUpdate=function onMutationUpdate(t){this.updateResult();var e={listeners:!0};"success"===t.type?e.onSuccess=!0:"error"===t.type&&(e.onError=!0),this.notify(e)},e.getCurrentResult=function getCurrentResult(){return this.currentResult},e.reset=function reset(){this.currentMutation=void 0,this.updateResult(),this.notify({listeners:!0})},e.mutate=function mutate(t,e){return this.mutateOptions=e,this.currentMutation&&this.currentMutation.removeObserver(this),this.currentMutation=this.client.getMutationCache().build(this.client,(0,r.Z)({},this.options,{variables:void 0!==t?t:this.options.variables})),this.currentMutation.addObserver(this),this.currentMutation.execute()},e.updateResult=function updateResult(){var t=this.currentMutation?this.currentMutation.state:(0,s.R)();this.currentResult=(0,r.Z)({},t,{isLoading:"loading"===t.status,isSuccess:"success"===t.status,isError:"error"===t.status,isIdle:"idle"===t.status,mutate:this.mutate,reset:this.reset})},e.notify=function notify(t){var e=this;u.V.batch((function(){e.mutateOptions&&(t.onSuccess?(null==e.mutateOptions.onSuccess||e.mutateOptions.onSuccess(e.currentResult.data,e.currentResult.variables,e.currentResult.context),null==e.mutateOptions.onSettled||e.mutateOptions.onSettled(e.currentResult.data,null,e.currentResult.variables,e.currentResult.context)):t.onError&&(null==e.mutateOptions.onError||e.mutateOptions.onError(e.currentResult.error,e.currentResult.variables,e.currentResult.context),null==e.mutateOptions.onSettled||e.mutateOptions.onSettled(void 0,e.currentResult.error,e.currentResult.variables,e.currentResult.context))),t.listeners&&e.listeners.forEach((function(t){t(e.currentResult)}))}))},MutationObserver}(n(90270).l)},87226:(t,e,n)=>{"use strict";n.d(e,{V:()=>i});var r=n(12860),i=new(function(){function NotifyManager(){this.queue=[],this.transactions=0,this.notifyFn=function(t){t()},this.batchNotifyFn=function(t){t()}}var t=NotifyManager.prototype;return t.batch=function batch(t){this.transactions++;var e=t();return this.transactions--,this.transactions||this.flush(),e},t.schedule=function schedule(t){var e=this;this.transactions?this.queue.push(t):(0,r.A4)((function(){e.notifyFn(t)}))},t.batchCalls=function batchCalls(t){var e=this;return function(){for(var n=arguments.length,r=new Array(n),i=0;i<n;i++)r[i]=arguments[i];e.schedule((function(){t.apply(void 0,r)}))}},t.flush=function flush(){var t=this,e=this.queue;this.queue=[],e.length&&(0,r.A4)((function(){t.batchNotifyFn((function(){e.forEach((function(e){t.notifyFn(e)}))}))}))},t.setNotifyFunction=function setNotifyFunction(t){this.notifyFn=t},t.setBatchNotifyFunction=function setBatchNotifyFunction(t){this.batchNotifyFn=t},NotifyManager}())},19240:(t,e,n)=>{"use strict";n.d(e,{N:()=>u});var r=n(60656),i=n(90270),s=n(12860),u=new(function(t){function OnlineManager(){return t.apply(this,arguments)||this}(0,r.Z)(OnlineManager,t);var e=OnlineManager.prototype;return e.onSubscribe=function onSubscribe(){this.removeEventListener||this.setDefaultEventListener()},e.setEventListener=function setEventListener(t){var e=this;this.removeEventListener&&this.removeEventListener(),this.removeEventListener=t((function(t){"boolean"==typeof t?e.setOnline(t):e.onOnline()}))},e.setOnline=function setOnline(t){this.online=t,t&&this.onOnline()},e.onOnline=function onOnline(){this.listeners.forEach((function(t){t()}))},e.isOnline=function isOnline(){return"boolean"==typeof this.online?this.online:"undefined"==typeof navigator||void 0===navigator.onLine||navigator.onLine},e.setDefaultEventListener=function setDefaultEventListener(){var t;!s.sk&&(null==(t=window)?void 0:t.addEventListener)&&this.setEventListener((function(t){var e=function listener(){return t()};return window.addEventListener("online",e,!1),window.addEventListener("offline",e,!1),function(){window.removeEventListener("online",e),window.removeEventListener("offline",e)}}))},OnlineManager}(i.l))},27282:(t,e,n)=>{"use strict";n.d(e,{y:()=>o});var r=n(60656),i=n(12860),s=n(87226),u=n(87978),o=function(t){function QueriesObserver(e,n){var r;return(r=t.call(this)||this).client=e,r.queries=[],r.result=[],r.observers=[],r.observersMap={},n&&r.setQueries(n),r}(0,r.Z)(QueriesObserver,t);var e=QueriesObserver.prototype;return e.onSubscribe=function onSubscribe(){var t=this;1===this.listeners.length&&this.observers.forEach((function(e){e.subscribe((function(n){t.onUpdate(e,n)}))}))},e.onUnsubscribe=function onUnsubscribe(){this.listeners.length||this.destroy()},e.destroy=function destroy(){this.listeners=[],this.observers.forEach((function(t){t.destroy()}))},e.setQueries=function setQueries(t,e){this.queries=t,this.updateObservers(e)},e.getCurrentResult=function getCurrentResult(){return this.result},e.getOptimisticResult=function getOptimisticResult(t){var e=this;return t.map((function(t){var n=e.client.defaultQueryObserverOptions(t);return e.getObserver(n).getOptimisticResult(n)}))},e.getObserver=function getObserver(t){var e=this.client.defaultQueryObserverOptions(t);return this.observersMap[e.queryHash]||new u.z(this.client,e)},e.updateObservers=function updateObservers(t){var e=this;s.V.batch((function(){var n=!1,r=e.observers,s=e.observersMap,u=[],o=[],a={};e.queries.forEach((function(i,c){var l=e.client.defaultQueryObserverOptions(i),h=l.queryHash,f=e.getObserver(l);s[h]&&f.setOptions(l,t),f!==r[c]&&(n=!0),o.push(f),u.push(f.getCurrentResult()),a[h]=f})),(r.length!==o.length||n)&&(e.observers=o,e.observersMap=a,e.result=u,e.hasListeners()&&((0,i.e5)(r,o).forEach((function(t){t.destroy()})),(0,i.e5)(o,r).forEach((function(t){t.subscribe((function(n){e.onUpdate(t,n)}))})),e.notify()))}))},e.onUpdate=function onUpdate(t,e){var n=this.observers.indexOf(t);-1!==n&&(this.result=(0,i.Rc)(this.result,n,e),this.notify())},e.notify=function notify(){var t=this;s.V.batch((function(){t.listeners.forEach((function(e){e(t.result)}))}))},QueriesObserver}(n(90270).l)},89157:(t,e,n)=>{"use strict";n.d(e,{t:()=>l});var r=n(60656),i=n(12860),s=n(29603),u=n(87226),o=n(16129),a=n(98973),c=function(){function Query(t){this.defaultOptions=t.defaultOptions,this.setOptions(t.options),this.observers=[],this.cache=t.cache,this.queryKey=t.queryKey,this.queryHash=t.queryHash,this.initialState=t.state||this.getDefaultState(this.options),this.state=this.initialState,this.scheduleGc()}var t=Query.prototype;return t.setOptions=function setOptions(t){var e;this.options=(0,s.Z)({},this.defaultOptions,t),this.cacheTime=Math.max(this.cacheTime||0,null!=(e=this.options.cacheTime)?e:3e5)},t.setDefaultOptions=function setDefaultOptions(t){this.defaultOptions=t},t.scheduleGc=function scheduleGc(){var t=this;this.clearGcTimeout(),(0,i.PN)(this.cacheTime)&&(this.gcTimeout=setTimeout((function(){t.optionalRemove()}),this.cacheTime))},t.clearGcTimeout=function clearGcTimeout(){clearTimeout(this.gcTimeout),this.gcTimeout=void 0},t.optionalRemove=function optionalRemove(){this.observers.length||this.state.isFetching||this.cache.remove(this)},t.setData=function setData(t,e){var n,r,s=this.state.data,u=(0,i.SE)(t,s);return(null==(n=(r=this.options).isDataEqual)?void 0:n.call(r,s,u))?u=s:!1!==this.options.structuralSharing&&(u=(0,i.Q$)(s,u)),this.dispatch({data:u,type:"success",dataUpdatedAt:null==e?void 0:e.updatedAt}),u},t.setState=function setState(t,e){this.dispatch({type:"setState",state:t,setStateOptions:e})},t.cancel=function cancel(t){var e,n=this.promise;return null==(e=this.retryer)||e.cancel(t),n?n.then(i.ZT).catch(i.ZT):Promise.resolve()},t.destroy=function destroy(){this.clearGcTimeout(),this.cancel({silent:!0})},t.reset=function reset(){this.destroy(),this.setState(this.initialState)},t.isActive=function isActive(){return this.observers.some((function(t){return!1!==t.options.enabled}))},t.isFetching=function isFetching(){return this.state.isFetching},t.isStale=function isStale(){return this.state.isInvalidated||!this.state.dataUpdatedAt||this.observers.some((function(t){return t.getCurrentResult().isStale}))},t.isStaleByTime=function isStaleByTime(t){return void 0===t&&(t=0),this.state.isInvalidated||!this.state.dataUpdatedAt||!(0,i.Kp)(this.state.dataUpdatedAt,t)},t.onFocus=function onFocus(){var t,e=this.observers.find((function(t){return t.shouldFetchOnWindowFocus()}));e&&e.refetch(),null==(t=this.retryer)||t.continue()},t.onOnline=function onOnline(){var t,e=this.observers.find((function(t){return t.shouldFetchOnReconnect()}));e&&e.refetch(),null==(t=this.retryer)||t.continue()},t.addObserver=function addObserver(t){-1===this.observers.indexOf(t)&&(this.observers.push(t),this.clearGcTimeout(),this.cache.notify({type:"observerAdded",query:this,observer:t}))},t.removeObserver=function removeObserver(t){-1!==this.observers.indexOf(t)&&(this.observers=this.observers.filter((function(e){return e!==t})),this.observers.length||(this.retryer&&(this.retryer.isTransportCancelable?this.retryer.cancel({revert:!0}):this.retryer.cancelRetry()),this.cacheTime?this.scheduleGc():this.cache.remove(this)),this.cache.notify({type:"observerRemoved",query:this,observer:t}))},t.getObserversCount=function getObserversCount(){return this.observers.length},t.invalidate=function invalidate(){this.state.isInvalidated||this.dispatch({type:"invalidate"})},t.fetch=function fetch(t,e){var n,r,s=this;if(this.state.isFetching)if(this.state.dataUpdatedAt&&(null==e?void 0:e.cancelRefetch))this.cancel({silent:!0});else if(this.promise)return this.promise;if(t&&this.setOptions(t),!this.options.queryFn){var u=this.observers.find((function(t){return t.options.queryFn}));u&&this.setOptions(u.options)}var c,l,h=(0,i.mc)(this.queryKey),f={queryKey:h,pageParam:void 0},d={fetchOptions:e,options:this.options,queryKey:h,state:this.state,fetchFn:function fetchFn(){return s.options.queryFn?s.options.queryFn(f):Promise.reject("Missing queryFn")}};(null==(n=this.options.behavior)?void 0:n.onFetch)&&(null==(c=this.options.behavior)||c.onFetch(d));(this.revertState=this.state,this.state.isFetching&&this.state.fetchMeta===(null==(r=d.fetchOptions)?void 0:r.meta))||this.dispatch({type:"fetch",meta:null==(l=d.fetchOptions)?void 0:l.meta});return this.retryer=new a.m4({fn:d.fetchFn,onSuccess:function onSuccess(t){s.setData(t),null==s.cache.config.onSuccess||s.cache.config.onSuccess(t,s),0===s.cacheTime&&s.optionalRemove()},onError:function onError(t){(0,a.DV)(t)&&t.silent||s.dispatch({type:"error",error:t}),(0,a.DV)(t)||(null==s.cache.config.onError||s.cache.config.onError(t,s),(0,o.j)().error(t)),0===s.cacheTime&&s.optionalRemove()},onFail:function onFail(){s.dispatch({type:"failed"})},onPause:function onPause(){s.dispatch({type:"pause"})},onContinue:function onContinue(){s.dispatch({type:"continue"})},retry:d.options.retry,retryDelay:d.options.retryDelay}),this.promise=this.retryer.promise,this.promise},t.dispatch=function dispatch(t){var e=this;this.state=this.reducer(this.state,t),u.V.batch((function(){e.observers.forEach((function(e){e.onQueryUpdate(t)})),e.cache.notify({query:e,type:"queryUpdated",action:t})}))},t.getDefaultState=function getDefaultState(t){var e="function"==typeof t.initialData?t.initialData():t.initialData,n=void 0!==t.initialData?"function"==typeof t.initialDataUpdatedAt?t.initialDataUpdatedAt():t.initialDataUpdatedAt:0,r=void 0!==e;return{data:e,dataUpdateCount:0,dataUpdatedAt:r?null!=n?n:Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchMeta:null,isFetching:!1,isInvalidated:!1,isPaused:!1,status:r?"success":"idle"}},t.reducer=function reducer(t,e){var n,r;switch(e.type){case"failed":return(0,s.Z)({},t,{fetchFailureCount:t.fetchFailureCount+1});case"pause":return(0,s.Z)({},t,{isPaused:!0});case"continue":return(0,s.Z)({},t,{isPaused:!1});case"fetch":return(0,s.Z)({},t,{fetchFailureCount:0,fetchMeta:null!=(n=e.meta)?n:null,isFetching:!0,isPaused:!1,status:t.dataUpdatedAt?t.status:"loading"});case"success":return(0,s.Z)({},t,{data:e.data,dataUpdateCount:t.dataUpdateCount+1,dataUpdatedAt:null!=(r=e.dataUpdatedAt)?r:Date.now(),error:null,fetchFailureCount:0,isFetching:!1,isInvalidated:!1,isPaused:!1,status:"success"});case"error":var i=e.error;return(0,a.DV)(i)&&i.revert&&this.revertState?(0,s.Z)({},this.revertState):(0,s.Z)({},t,{error:i,errorUpdateCount:t.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:t.fetchFailureCount+1,isFetching:!1,isPaused:!1,status:"error"});case"invalidate":return(0,s.Z)({},t,{isInvalidated:!0});case"setState":return(0,s.Z)({},t,e.state);default:return t}},Query}(),l=function(t){function QueryCache(e){var n;return(n=t.call(this)||this).config=e||{},n.queries=[],n.queriesMap={},n}(0,r.Z)(QueryCache,t);var e=QueryCache.prototype;return e.build=function build(t,e,n){var r,s=e.queryKey,u=null!=(r=e.queryHash)?r:(0,i.Rm)(s,e),o=this.get(u);return o||(o=new c({cache:this,queryKey:s,queryHash:u,options:t.defaultQueryOptions(e),state:n,defaultOptions:t.getQueryDefaults(s)}),this.add(o)),o},e.add=function add(t){this.queriesMap[t.queryHash]||(this.queriesMap[t.queryHash]=t,this.queries.push(t),this.notify({type:"queryAdded",query:t}))},e.remove=function remove(t){var e=this.queriesMap[t.queryHash];e&&(t.destroy(),this.queries=this.queries.filter((function(e){return e!==t})),e===t&&delete this.queriesMap[t.queryHash],this.notify({type:"queryRemoved",query:t}))},e.clear=function clear(){var t=this;u.V.batch((function(){t.queries.forEach((function(e){t.remove(e)}))}))},e.get=function get(t){return this.queriesMap[t]},e.getAll=function getAll(){return this.queries},e.find=function find(t,e){var n=(0,i.I6)(t,e)[0];return void 0===n.exact&&(n.exact=!0),this.queries.find((function(t){return(0,i._x)(n,t)}))},e.findAll=function findAll(t,e){var n=(0,i.I6)(t,e)[0];return n?this.queries.filter((function(t){return(0,i._x)(n,t)})):this.queries},e.notify=function notify(t){var e=this;u.V.batch((function(){e.listeners.forEach((function(e){e(t)}))}))},e.onFocus=function onFocus(){var t=this;u.V.batch((function(){t.queries.forEach((function(t){t.onFocus()}))}))},e.onOnline=function onOnline(){var t=this;u.V.batch((function(){t.queries.forEach((function(t){t.onOnline()}))}))},QueryCache}(n(90270).l)},37710:(t,e,n)=>{"use strict";n.d(e,{S:()=>h});var r=n(29603),i=n(12860),s=n(89157),u=n(79560),o=n(85123),a=n(19240),c=n(87226),l=n(47798),h=function(){function QueryClient(t){void 0===t&&(t={}),this.queryCache=t.queryCache||new s.t,this.mutationCache=t.mutationCache||new u.L,this.defaultOptions=t.defaultOptions||{},this.queryDefaults=[],this.mutationDefaults=[]}var t=QueryClient.prototype;return t.mount=function mount(){var t=this;this.unsubscribeFocus=o.j.subscribe((function(){o.j.isFocused()&&a.N.isOnline()&&(t.mutationCache.onFocus(),t.queryCache.onFocus())})),this.unsubscribeOnline=a.N.subscribe((function(){o.j.isFocused()&&a.N.isOnline()&&(t.mutationCache.onOnline(),t.queryCache.onOnline())}))},t.unmount=function unmount(){var t,e;null==(t=this.unsubscribeFocus)||t.call(this),null==(e=this.unsubscribeOnline)||e.call(this)},t.isFetching=function isFetching(t,e){var n=(0,i.I6)(t,e)[0];return n.fetching=!0,this.queryCache.findAll(n).length},t.isMutating=function isMutating(t){return this.mutationCache.findAll((0,r.Z)({},t,{fetching:!0})).length},t.getQueryData=function getQueryData(t,e){var n;return null==(n=this.queryCache.find(t,e))?void 0:n.state.data},t.setQueryData=function setQueryData(t,e,n){var r=(0,i._v)(t),s=this.defaultQueryOptions(r);return this.queryCache.build(this,s).setData(e,n)},t.setQueriesData=function setQueriesData(t,e,n){var r=this;return c.V.batch((function(){return r.getQueryCache().findAll(t).map((function(t){var i=t.queryKey;return[i,r.setQueryData(i,e,n)]}))}))},t.getQueryState=function getQueryState(t,e){var n;return null==(n=this.queryCache.find(t,e))?void 0:n.state},t.removeQueries=function removeQueries(t,e){var n=(0,i.I6)(t,e)[0],r=this.queryCache;c.V.batch((function(){r.findAll(n).forEach((function(t){r.remove(t)}))}))},t.resetQueries=function resetQueries(t,e,n){var s=this,u=(0,i.I6)(t,e,n),o=u[0],a=u[1],l=this.queryCache,h=(0,r.Z)({},o,{active:!0});return c.V.batch((function(){return l.findAll(o).forEach((function(t){t.reset()})),s.refetchQueries(h,a)}))},t.cancelQueries=function cancelQueries(t,e,n){var r=this,s=(0,i.I6)(t,e,n),u=s[0],o=s[1],a=void 0===o?{}:o;void 0===a.revert&&(a.revert=!0);var l=c.V.batch((function(){return r.queryCache.findAll(u).map((function(t){return t.cancel(a)}))}));return Promise.all(l).then(i.ZT).catch(i.ZT)},t.invalidateQueries=function invalidateQueries(t,e,n){var s,u,o,a=this,l=(0,i.I6)(t,e,n),h=l[0],f=l[1],d=(0,r.Z)({},h,{active:null==(s=null!=(u=h.refetchActive)?u:h.active)||s,inactive:null!=(o=h.refetchInactive)&&o});return c.V.batch((function(){return a.queryCache.findAll(h).forEach((function(t){t.invalidate()})),a.refetchQueries(d,f)}))},t.refetchQueries=function refetchQueries(t,e,n){var r=this,s=(0,i.I6)(t,e,n),u=s[0],o=s[1],a=c.V.batch((function(){return r.queryCache.findAll(u).map((function(t){return t.fetch()}))})),l=Promise.all(a).then(i.ZT);return(null==o?void 0:o.throwOnError)||(l=l.catch(i.ZT)),l},t.fetchQuery=function fetchQuery(t,e,n){var r=(0,i._v)(t,e,n),s=this.defaultQueryOptions(r);void 0===s.retry&&(s.retry=!1);var u=this.queryCache.build(this,s);return u.isStaleByTime(s.staleTime)?u.fetch(s):Promise.resolve(u.state.data)},t.prefetchQuery=function prefetchQuery(t,e,n){return this.fetchQuery(t,e,n).then(i.ZT).catch(i.ZT)},t.fetchInfiniteQuery=function fetchInfiniteQuery(t,e,n){var r=(0,i._v)(t,e,n);return r.behavior=(0,l.Gm)(),this.fetchQuery(r)},t.prefetchInfiniteQuery=function prefetchInfiniteQuery(t,e,n){return this.fetchInfiniteQuery(t,e,n).then(i.ZT).catch(i.ZT)},t.cancelMutations=function cancelMutations(){var t=this,e=c.V.batch((function(){return t.mutationCache.getAll().map((function(t){return t.cancel()}))}));return Promise.all(e).then(i.ZT).catch(i.ZT)},t.resumePausedMutations=function resumePausedMutations(){return this.getMutationCache().resumePausedMutations()},t.executeMutation=function executeMutation(t){return this.mutationCache.build(this,t).execute()},t.getQueryCache=function getQueryCache(){return this.queryCache},t.getMutationCache=function getMutationCache(){return this.mutationCache},t.getDefaultOptions=function getDefaultOptions(){return this.defaultOptions},t.setDefaultOptions=function setDefaultOptions(t){this.defaultOptions=t},t.setQueryDefaults=function setQueryDefaults(t,e){var n=this.queryDefaults.find((function(e){return(0,i.yF)(t)===(0,i.yF)(e.queryKey)}));n?n.defaultOptions=e:this.queryDefaults.push({queryKey:t,defaultOptions:e})},t.getQueryDefaults=function getQueryDefaults(t){var e;return t?null==(e=this.queryDefaults.find((function(e){return(0,i.to)(t,e.queryKey)})))?void 0:e.defaultOptions:void 0},t.setMutationDefaults=function setMutationDefaults(t,e){var n=this.mutationDefaults.find((function(e){return(0,i.yF)(t)===(0,i.yF)(e.mutationKey)}));n?n.defaultOptions=e:this.mutationDefaults.push({mutationKey:t,defaultOptions:e})},t.getMutationDefaults=function getMutationDefaults(t){var e;return t?null==(e=this.mutationDefaults.find((function(e){return(0,i.to)(t,e.mutationKey)})))?void 0:e.defaultOptions:void 0},t.defaultQueryOptions=function defaultQueryOptions(t){if(null==t?void 0:t._defaulted)return t;var e=(0,r.Z)({},this.defaultOptions.queries,this.getQueryDefaults(null==t?void 0:t.queryKey),t,{_defaulted:!0});return!e.queryHash&&e.queryKey&&(e.queryHash=(0,i.Rm)(e.queryKey,e)),e},t.defaultQueryObserverOptions=function defaultQueryObserverOptions(t){return this.defaultQueryOptions(t)},t.defaultMutationOptions=function defaultMutationOptions(t){return(null==t?void 0:t._defaulted)?t:(0,r.Z)({},this.defaultOptions.mutations,this.getMutationDefaults(null==t?void 0:t.mutationKey),t,{_defaulted:!0})},t.clear=function clear(){this.queryCache.clear(),this.mutationCache.clear()},QueryClient}()},87978:(t,e,n)=>{"use strict";n.d(e,{z:()=>h});var r=n(29603),i=n(60656),s=n(12860),u=n(87226),o=n(85123),a=n(90270),c=n(16129),l=n(98973),h=function(t){function QueryObserver(e,n){var r;return(r=t.call(this)||this).client=e,r.options=n,r.trackedProps=[],r.previousSelectError=null,r.bindMethods(),r.setOptions(n),r}(0,i.Z)(QueryObserver,t);var e=QueryObserver.prototype;return e.bindMethods=function bindMethods(){this.remove=this.remove.bind(this),this.refetch=this.refetch.bind(this)},e.onSubscribe=function onSubscribe(){1===this.listeners.length&&(this.currentQuery.addObserver(this),shouldFetchOnMount(this.currentQuery,this.options)&&this.executeFetch(),this.updateTimers())},e.onUnsubscribe=function onUnsubscribe(){this.listeners.length||this.destroy()},e.shouldFetchOnReconnect=function shouldFetchOnReconnect(){return function _shouldFetchOnReconnect(t,e){return!1!==e.enabled&&("always"===e.refetchOnReconnect||!1!==e.refetchOnReconnect&&isStale(t,e))}(this.currentQuery,this.options)},e.shouldFetchOnWindowFocus=function shouldFetchOnWindowFocus(){return function _shouldFetchOnWindowFocus(t,e){return!1!==e.enabled&&("always"===e.refetchOnWindowFocus||!1!==e.refetchOnWindowFocus&&isStale(t,e))}(this.currentQuery,this.options)},e.destroy=function destroy(){this.listeners=[],this.clearTimers(),this.currentQuery.removeObserver(this)},e.setOptions=function setOptions(t,e){var n=this.options,r=this.currentQuery;if(this.options=this.client.defaultQueryObserverOptions(t),void 0!==this.options.enabled&&"boolean"!=typeof this.options.enabled)throw new Error("Expected enabled to be a boolean");this.options.queryKey||(this.options.queryKey=n.queryKey),this.updateQuery();var i=this.hasListeners();i&&shouldFetchOptionally(this.currentQuery,r,this.options,n)&&this.executeFetch(),this.updateResult(e),!i||this.currentQuery===r&&this.options.enabled===n.enabled&&this.options.staleTime===n.staleTime||this.updateStaleTimeout(),!i||this.currentQuery===r&&this.options.enabled===n.enabled&&this.options.refetchInterval===n.refetchInterval||this.updateRefetchInterval()},e.getOptimisticResult=function getOptimisticResult(t){var e=this.client.defaultQueryObserverOptions(t),n=this.client.getQueryCache().build(this.client,e);return this.createResult(n,e)},e.getCurrentResult=function getCurrentResult(){return this.currentResult},e.trackResult=function trackResult(t){var e=this,n={};return Object.keys(t).forEach((function(r){Object.defineProperty(n,r,{configurable:!1,enumerable:!0,get:function get(){var n=r;return e.trackedProps.includes(n)||e.trackedProps.push(n),t[n]}})})),n},e.getNextResult=function getNextResult(t){var e=this;return new Promise((function(n,r){var i=e.subscribe((function(e){e.isFetching||(i(),e.isError&&(null==t?void 0:t.throwOnError)?r(e.error):n(e))}))}))},e.getCurrentQuery=function getCurrentQuery(){return this.currentQuery},e.remove=function remove(){this.client.getQueryCache().remove(this.currentQuery)},e.refetch=function refetch(t){return this.fetch(t)},e.fetchOptimistic=function fetchOptimistic(t){var e=this,n=this.client.defaultQueryObserverOptions(t),r=this.client.getQueryCache().build(this.client,n);return r.fetch().then((function(){return e.createResult(r,n)}))},e.fetch=function fetch(t){var e=this;return this.executeFetch(t).then((function(){return e.updateResult(),e.currentResult}))},e.executeFetch=function executeFetch(t){this.updateQuery();var e=this.currentQuery.fetch(this.options,t);return(null==t?void 0:t.throwOnError)||(e=e.catch(s.ZT)),e},e.updateStaleTimeout=function updateStaleTimeout(){var t=this;if(this.clearStaleTimeout(),!s.sk&&!this.currentResult.isStale&&(0,s.PN)(this.options.staleTime)){var e=(0,s.Kp)(this.currentResult.dataUpdatedAt,this.options.staleTime)+1;this.staleTimeoutId=setTimeout((function(){t.currentResult.isStale||t.updateResult()}),e)}},e.updateRefetchInterval=function updateRefetchInterval(){var t=this;this.clearRefetchInterval(),!s.sk&&!1!==this.options.enabled&&(0,s.PN)(this.options.refetchInterval)&&(this.refetchIntervalId=setInterval((function(){(t.options.refetchIntervalInBackground||o.j.isFocused())&&t.executeFetch()}),this.options.refetchInterval))},e.updateTimers=function updateTimers(){this.updateStaleTimeout(),this.updateRefetchInterval()},e.clearTimers=function clearTimers(){this.clearStaleTimeout(),this.clearRefetchInterval()},e.clearStaleTimeout=function clearStaleTimeout(){clearTimeout(this.staleTimeoutId),this.staleTimeoutId=void 0},e.clearRefetchInterval=function clearRefetchInterval(){clearInterval(this.refetchIntervalId),this.refetchIntervalId=void 0},e.createResult=function createResult(t,e){var n,r=this.currentQuery,i=this.options,u=this.currentResult,o=this.currentResultState,a=this.currentResultOptions,l=t!==r,h=l?t.state:this.currentQueryInitialState,f=l?this.currentResult:this.previousQueryResult,d=t.state,v=d.dataUpdatedAt,p=d.error,y=d.errorUpdatedAt,m=d.isFetching,b=d.status,g=!1,O=!1;if(e.optimisticResults){var Q=this.hasListeners(),P=!Q&&shouldFetchOnMount(t,e),C=Q&&shouldFetchOptionally(t,r,e,i);(P||C)&&(m=!0,v||(b="loading"))}if(e.keepPreviousData&&!d.dataUpdateCount&&(null==f?void 0:f.isSuccess)&&"error"!==b)n=f.data,v=f.dataUpdatedAt,b=f.status,g=!0;else if(e.select&&void 0!==d.data)if(u&&d.data===(null==o?void 0:o.data)&&e.select===(null==a?void 0:a.select)&&!this.previousSelectError)n=u.data;else try{n=e.select(d.data),!1!==e.structuralSharing&&(n=(0,s.Q$)(null==u?void 0:u.data,n)),this.previousSelectError=null}catch(t){(0,c.j)().error(t),p=t,this.previousSelectError=t,y=Date.now(),b="error"}else n=d.data;if(void 0!==e.placeholderData&&void 0===n&&"loading"===b){var R;if((null==u?void 0:u.isPlaceholderData)&&e.placeholderData===(null==a?void 0:a.placeholderData))R=u.data;else if(R="function"==typeof e.placeholderData?e.placeholderData():e.placeholderData,e.select&&void 0!==R)try{R=e.select(R),!1!==e.structuralSharing&&(R=(0,s.Q$)(null==u?void 0:u.data,R)),this.previousSelectError=null}catch(t){(0,c.j)().error(t),p=t,this.previousSelectError=t,y=Date.now(),b="error"}void 0!==R&&(b="success",n=R,O=!0)}return{status:b,isLoading:"loading"===b,isSuccess:"success"===b,isError:"error"===b,isIdle:"idle"===b,data:n,dataUpdatedAt:v,error:p,errorUpdatedAt:y,failureCount:d.fetchFailureCount,isFetched:d.dataUpdateCount>0||d.errorUpdateCount>0,isFetchedAfterMount:d.dataUpdateCount>h.dataUpdateCount||d.errorUpdateCount>h.errorUpdateCount,isFetching:m,isLoadingError:"error"===b&&0===d.dataUpdatedAt,isPlaceholderData:O,isPreviousData:g,isRefetchError:"error"===b&&0!==d.dataUpdatedAt,isStale:isStale(t,e),refetch:this.refetch,remove:this.remove}},e.shouldNotifyListeners=function shouldNotifyListeners(t,e){if(!e)return!0;if(t===e)return!1;var n=this.options,r=n.notifyOnChangeProps,i=n.notifyOnChangePropsExclusions;if(!r&&!i)return!0;if("tracked"===r&&!this.trackedProps.length)return!0;var s="tracked"===r?this.trackedProps:r;return Object.keys(t).some((function(n){var r=n,u=t[r]!==e[r],o=null==s?void 0:s.some((function(t){return t===n})),a=null==i?void 0:i.some((function(t){return t===n}));return u&&!a&&(!s||o)}))},e.updateResult=function updateResult(t){var e=this.currentResult;if(this.currentResult=this.createResult(this.currentQuery,this.options),this.currentResultState=this.currentQuery.state,this.currentResultOptions=this.options,!(0,s.VS)(this.currentResult,e)){var n={cache:!0};!1!==(null==t?void 0:t.listeners)&&this.shouldNotifyListeners(this.currentResult,e)&&(n.listeners=!0),this.notify((0,r.Z)({},n,t))}},e.updateQuery=function updateQuery(){var t=this.client.getQueryCache().build(this.client,this.options);if(t!==this.currentQuery){var e=this.currentQuery;this.currentQuery=t,this.currentQueryInitialState=t.state,this.previousQueryResult=this.currentResult,this.hasListeners()&&(null==e||e.removeObserver(this),t.addObserver(this))}},e.onQueryUpdate=function onQueryUpdate(t){var e={};"success"===t.type?e.onSuccess=!0:"error"!==t.type||(0,l.DV)(t.error)||(e.onError=!0),this.updateResult(e),this.hasListeners()&&this.updateTimers()},e.notify=function notify(t){var e=this;u.V.batch((function(){t.onSuccess?(null==e.options.onSuccess||e.options.onSuccess(e.currentResult.data),null==e.options.onSettled||e.options.onSettled(e.currentResult.data,null)):t.onError&&(null==e.options.onError||e.options.onError(e.currentResult.error),null==e.options.onSettled||e.options.onSettled(void 0,e.currentResult.error)),t.listeners&&e.listeners.forEach((function(t){t(e.currentResult)})),t.cache&&e.client.getQueryCache().notify({query:e.currentQuery,type:"observerResultsUpdated"})}))},QueryObserver}(a.l);function shouldFetchOnMount(t,e){return function shouldLoadOnMount(t,e){return!(!1===e.enabled||t.state.dataUpdatedAt||"error"===t.state.status&&!1===e.retryOnMount)}(t,e)||function shouldRefetchOnMount(t,e){return!1!==e.enabled&&t.state.dataUpdatedAt>0&&("always"===e.refetchOnMount||!1!==e.refetchOnMount&&isStale(t,e))}(t,e)}function shouldFetchOptionally(t,e,n,r){return!1!==n.enabled&&(t!==e||!1===r.enabled)&&isStale(t,n)}function isStale(t,e){return t.isStaleByTime(e.staleTime)}},98973:(t,e,n)=>{"use strict";n.d(e,{LE:()=>isCancelable,p8:()=>u,DV:()=>isCancelledError,m4:()=>o});var r=n(85123),i=n(19240),s=n(12860);function defaultRetryDelay(t){return Math.min(1e3*Math.pow(2,t),3e4)}function isCancelable(t){return"function"==typeof(null==t?void 0:t.cancel)}var u=function CancelledError(t){this.revert=null==t?void 0:t.revert,this.silent=null==t?void 0:t.silent};function isCancelledError(t){return t instanceof u}var o=function Retryer(t){var e,n,o,a,c=this,l=!1;this.cancel=function(t){return null==e?void 0:e(t)},this.cancelRetry=function(){l=!0},this.continue=function(){return null==n?void 0:n()},this.failureCount=0,this.isPaused=!1,this.isResolved=!1,this.isTransportCancelable=!1,this.promise=new Promise((function(t,e){o=t,a=e}));var h=function resolve(e){c.isResolved||(c.isResolved=!0,null==t.onSuccess||t.onSuccess(e),null==n||n(),o(e))},f=function reject(e){c.isResolved||(c.isResolved=!0,null==t.onError||t.onError(e),null==n||n(),a(e))};!function run(){if(!c.isResolved){var o;try{o=t.fn()}catch(t){o=Promise.reject(t)}e=function cancelFn(t){if(!c.isResolved&&(f(new u(t)),isCancelable(o)))try{o.cancel()}catch(t){}},c.isTransportCancelable=isCancelable(o),Promise.resolve(o).then(h).catch((function(e){var u,o;if(!c.isResolved){var a=null!=(u=t.retry)?u:3,h=null!=(o=t.retryDelay)?o:defaultRetryDelay,d="function"==typeof h?h(c.failureCount,e):h,v=!0===a||"number"==typeof a&&c.failureCount<a||"function"==typeof a&&a(c.failureCount,e);!l&&v?(c.failureCount++,null==t.onFail||t.onFail(c.failureCount,e),(0,s.Gh)(d).then((function(){if(!r.j.isFocused()||!i.N.isOnline())return function pause(){return new Promise((function(e){n=e,c.isPaused=!0,null==t.onPause||t.onPause()})).then((function(){n=void 0,c.isPaused=!1,null==t.onContinue||t.onContinue()}))}()})).then((function(){l?f(e):run()}))):f(e)}}))}}()}},90270:(t,e,n)=>{"use strict";n.d(e,{l:()=>r});var r=function(){function Subscribable(){this.listeners=[]}var t=Subscribable.prototype;return t.subscribe=function subscribe(t){var e=this,n=t||function(){};return this.listeners.push(n),this.onSubscribe(),function(){e.listeners=e.listeners.filter((function(t){return t!==n})),e.onUnsubscribe()}},t.hasListeners=function hasListeners(){return this.listeners.length>0},t.onSubscribe=function onSubscribe(){},t.onUnsubscribe=function onUnsubscribe(){},Subscribable}()},46503:()=>{},12860:(t,e,n)=>{"use strict";n.d(e,{sk:()=>i,ZT:()=>noop,SE:()=>functionalUpdate,PN:()=>isValidTimeout,mc:()=>ensureQueryKeyArray,e5:()=>difference,Rc:()=>replaceAt,Kp:()=>timeUntilStale,_v:()=>parseQueryArgs,lV:()=>parseMutationArgs,I6:()=>parseFilterArgs,_x:()=>matchQuery,X7:()=>matchMutation,Rm:()=>hashQueryKeyByOptions,yF:()=>hashQueryKey,to:()=>partialMatchKey,Q$:()=>replaceEqualDeep,VS:()=>shallowEqualObjects,VZ:()=>isError,Gh:()=>sleep,A4:()=>scheduleMicrotask});var r=n(29603),i="undefined"==typeof window;function noop(){}function functionalUpdate(t,e){return"function"==typeof t?t(e):t}function isValidTimeout(t){return"number"==typeof t&&t>=0&&t!==1/0}function ensureQueryKeyArray(t){return Array.isArray(t)?t:[t]}function difference(t,e){return t.filter((function(t){return-1===e.indexOf(t)}))}function replaceAt(t,e,n){var r=t.slice(0);return r[e]=n,r}function timeUntilStale(t,e){return Math.max(t+(e||0)-Date.now(),0)}function parseQueryArgs(t,e,n){return isQueryKey(t)?"function"==typeof e?(0,r.Z)({},n,{queryKey:t,queryFn:e}):(0,r.Z)({},e,{queryKey:t}):t}function parseMutationArgs(t,e,n){return isQueryKey(t)?"function"==typeof e?(0,r.Z)({},n,{mutationKey:t,mutationFn:e}):(0,r.Z)({},e,{mutationKey:t}):"function"==typeof t?(0,r.Z)({},e,{mutationFn:t}):(0,r.Z)({},t)}function parseFilterArgs(t,e,n){return isQueryKey(t)?[(0,r.Z)({},e,{queryKey:t}),n]:[t||{},e]}function matchQuery(t,e){var n=t.active,r=t.exact,i=t.fetching,s=t.inactive,u=t.predicate,o=t.queryKey,a=t.stale;if(isQueryKey(o))if(r){if(e.queryHash!==hashQueryKeyByOptions(o,e.options))return!1}else if(!partialMatchKey(e.queryKey,o))return!1;var c=function mapQueryStatusFilter(t,e){return!0===t&&!0===e||null==t&&null==e?"all":!1===t&&!1===e?"none":(null!=t?t:!e)?"active":"inactive"}(n,s);if("none"===c)return!1;if("all"!==c){var l=e.isActive();if("active"===c&&!l)return!1;if("inactive"===c&&l)return!1}return("boolean"!=typeof a||e.isStale()===a)&&(("boolean"!=typeof i||e.isFetching()===i)&&!(u&&!u(e)))}function matchMutation(t,e){var n=t.exact,r=t.fetching,i=t.predicate,s=t.mutationKey;if(isQueryKey(s)){if(!e.options.mutationKey)return!1;if(n){if(hashQueryKey(e.options.mutationKey)!==hashQueryKey(s))return!1}else if(!partialMatchKey(e.options.mutationKey,s))return!1}return("boolean"!=typeof r||"loading"===e.state.status===r)&&!(i&&!i(e))}function hashQueryKeyByOptions(t,e){return((null==e?void 0:e.queryKeyHashFn)||hashQueryKey)(t)}function hashQueryKey(t){return function stableValueHash(t){return JSON.stringify(t,(function(t,e){return isPlainObject(e)?Object.keys(e).sort().reduce((function(t,n){return t[n]=e[n],t}),{}):e}))}(ensureQueryKeyArray(t))}function partialMatchKey(t,e){return partialDeepEqual(ensureQueryKeyArray(t),ensureQueryKeyArray(e))}function partialDeepEqual(t,e){return t===e||typeof t==typeof e&&(!(!t||!e||"object"!=typeof t||"object"!=typeof e)&&!Object.keys(e).some((function(n){return!partialDeepEqual(t[n],e[n])})))}function replaceEqualDeep(t,e){if(t===e)return t;var n=Array.isArray(t)&&Array.isArray(e);if(n||isPlainObject(t)&&isPlainObject(e)){for(var r=n?t.length:Object.keys(t).length,i=n?e:Object.keys(e),s=i.length,u=n?[]:{},o=0,a=0;a<s;a++){var c=n?a:i[a];u[c]=replaceEqualDeep(t[c],e[c]),u[c]===t[c]&&o++}return r===s&&o===r?t:u}return e}function shallowEqualObjects(t,e){if(t&&!e||e&&!t)return!1;for(var n in t)if(t[n]!==e[n])return!1;return!0}function isPlainObject(t){if(!hasObjectPrototype(t))return!1;var e=t.constructor;if(void 0===e)return!0;var n=e.prototype;return!!hasObjectPrototype(n)&&!!n.hasOwnProperty("isPrototypeOf")}function hasObjectPrototype(t){return"[object Object]"===Object.prototype.toString.call(t)}function isQueryKey(t){return"string"==typeof t||Array.isArray(t)}function isError(t){return t instanceof Error}function sleep(t){return new Promise((function(e){setTimeout(e,t)}))}function scheduleMicrotask(t){Promise.resolve().then(t).catch((function(t){return setTimeout((function(){throw t}))}))}},56552:(t,e,n)=>{"use strict";n.r(e);var r=n(30795),i={};for(const t in r)"default"!==t&&(i[t]=()=>r[t]);n.d(e,i);var s=n(43606);i={};for(const t in s)["default","CancelledError","QueryCache","QueryClient","QueryObserver","QueriesObserver","InfiniteQueryObserver","MutationCache","MutationObserver","setLogger","notifyManager","focusManager","onlineManager","hashQueryKey","isError","isCancelledError"].indexOf(t)<0&&(i[t]=()=>s[t]);n.d(e,i)},4667:(t,e,n)=>{"use strict";n.d(e,{N:()=>o,a:()=>a});var r=n(63804),i=n.n(r),s=i().createContext(void 0),u=i().createContext(!1);function getQueryClientContext(t){return t&&"undefined"!=typeof window?(window.ReactQueryClientContext||(window.ReactQueryClientContext=s),window.ReactQueryClientContext):s}var o=function useQueryClient(){var t=i().useContext(getQueryClientContext(i().useContext(u)));if(!t)throw new Error("No QueryClient set, use QueryClientProvider to set one");return t},a=function QueryClientProvider(t){var e=t.client,n=t.contextSharing,r=void 0!==n&&n,s=t.children;i().useEffect((function(){return e.mount(),function(){e.unmount()}}),[e]);var o=getQueryClientContext(r);return i().createElement(u.Provider,{value:r},i().createElement(o.Provider,{value:e},s))}},39877:(t,e,n)=>{"use strict";n.d(e,{_:()=>u,k:()=>o});var r=n(63804),i=n.n(r);function createValue(){var t=!1;return{clearReset:function clearReset(){t=!1},reset:function reset(){t=!0},isReset:function isReset(){return t}}}var s=i().createContext(createValue()),u=function useQueryErrorResetBoundary(){return i().useContext(s)},o=function QueryErrorResetBoundary(t){var e=t.children,n=i().useMemo((function(){return createValue()}),[]);return i().createElement(s.Provider,{value:n},"function"==typeof e?e(n):e)}},43606:(t,e,n)=>{"use strict";n.r(e),n.d(e,{QueryClientProvider:()=>r.a,useQueryClient:()=>r.N,QueryErrorResetBoundary:()=>i.k,useQueryErrorResetBoundary:()=>i._,useIsFetching:()=>s.y,useIsMutating:()=>u.B,useMutation:()=>o.D,useQuery:()=>a.a,useQueries:()=>c.h,useInfiniteQuery:()=>l.N});n(28861),n(24902);var r=n(4667),i=n(39877),s=n(37074),u=n(54321),o=n(68544),a=n(3988),c=n(96467),l=n(65469),h=n(68412),f={};for(const t in h)["default","QueryClientProvider","useQueryClient","QueryErrorResetBoundary","useQueryErrorResetBoundary","useIsFetching","useIsMutating","useMutation","useQuery","useQueries","useInfiniteQuery"].indexOf(t)<0&&(f[t]=()=>h[t]);n.d(e,f)},28861:(t,e,n)=>{"use strict";var r=n(87226),i=n(27196),s=n.n(i)().unstable_batchedUpdates;r.V.setBatchNotifyFunction(s)},24902:(t,e,n)=>{"use strict";var r=n(16129),i=console;i&&(0,r.E)(i)},68412:()=>{},85055:(t,e,n)=>{"use strict";n.d(e,{r:()=>useBaseQuery});var r=n(63804),i=n.n(r),s=n(87226),u=n(39877),o=n(4667);function useBaseQuery(t,e){var n=i().useRef(!1),r=i().useState(0)[1],a=(0,o.N)(),c=(0,u._)(),l=a.defaultQueryObserverOptions(t);l.optimisticResults=!0,l.onError&&(l.onError=s.V.batchCalls(l.onError)),l.onSuccess&&(l.onSuccess=s.V.batchCalls(l.onSuccess)),l.onSettled&&(l.onSettled=s.V.batchCalls(l.onSettled)),l.suspense&&"number"!=typeof l.staleTime&&(l.staleTime=1e3),(l.suspense||l.useErrorBoundary)&&(c.isReset()||(l.retryOnMount=!1));var h=i().useState((function(){return new e(a,l)}))[0],f=h.getOptimisticResult(l);if(i().useEffect((function(){n.current=!0,c.clearReset();var t=h.subscribe(s.V.batchCalls((function(){n.current&&r((function(t){return t+1}))})));return h.updateResult(),function(){n.current=!1,t()}}),[c,h]),i().useEffect((function(){h.setOptions(l,{listeners:!1})}),[l,h]),l.suspense&&f.isLoading)throw h.fetchOptimistic(l).then((function(t){var e=t.data;null==l.onSuccess||l.onSuccess(e),null==l.onSettled||l.onSettled(e,null)})).catch((function(t){c.clearReset(),null==l.onError||l.onError(t),null==l.onSettled||l.onSettled(void 0,t)}));if((l.suspense||l.useErrorBoundary)&&f.isError&&!f.isFetching)throw f.error;return"tracked"===l.notifyOnChangeProps&&(f=h.trackResult(f)),f}},65469:(t,e,n)=>{"use strict";n.d(e,{N:()=>useInfiniteQuery});var r=n(15830),i=n(12860),s=n(85055);function useInfiniteQuery(t,e,n){var u=(0,i._v)(t,e,n);return(0,s.r)(u,r.c)}},37074:(t,e,n)=>{"use strict";n.d(e,{y:()=>useIsFetching});var r=n(63804),i=n.n(r),s=n(87226),u=n(12860),o=n(4667);function useIsFetching(t,e){var n=i().useRef(!1),r=(0,o.N)(),a=(0,u.I6)(t,e)[0],c=i().useState(r.isFetching(a)),l=c[0],h=c[1],f=i().useRef(a);f.current=a;var d=i().useRef(l);return d.current=l,i().useEffect((function(){n.current=!0;var t=r.getQueryCache().subscribe(s.V.batchCalls((function(){if(n.current){var t=r.isFetching(f.current);d.current!==t&&h(t)}})));return function(){n.current=!1,t()}}),[r]),l}},54321:(t,e,n)=>{"use strict";n.d(e,{B:()=>useIsMutating});var r=n(63804),i=n.n(r),s=n(87226),u=n(4667);function useIsMutating(t){var e=i().useRef(!1),n=(0,u.N)(),r=i().useState(n.isMutating(t)),o=r[0],a=r[1],c=i().useRef(t);c.current=t;var l=i().useRef(o);return l.current=o,i().useEffect((function(){e.current=!0;var t=n.getMutationCache().subscribe(s.V.batchCalls((function(){if(e.current){var t=n.isMutating(c.current);l.current!==t&&a(t)}})));return function(){e.current=!1,t()}}),[n]),o}},68544:(t,e,n)=>{"use strict";n.d(e,{D:()=>useMutation});var r=n(29603),i=n(63804),s=n.n(i),u=n(87226),o=n(12860),a=n(40424),c=n(4667);function useMutation(t,e,n){var i=s().useRef(!1),l=s().useState(0)[1],h=(0,o.lV)(t,e,n),f=(0,c.N)(),d=s().useRef();d.current?d.current.setOptions(h):d.current=new a.X(f,h);var v=d.current.getCurrentResult();s().useEffect((function(){i.current=!0;var t=d.current.subscribe(u.V.batchCalls((function(){i.current&&l((function(t){return t+1}))})));return function(){i.current=!1,t()}}),[]);var p=s().useCallback((function(t,e){d.current.mutate(t,e).catch(o.ZT)}),[]);if(v.error&&d.current.options.useErrorBoundary)throw v.error;return(0,r.Z)({},v,{mutate:p,mutateAsync:v.mutate})}},96467:(t,e,n)=>{"use strict";n.d(e,{h:()=>useQueries});var r=n(63804),i=n.n(r),s=n(87226),u=n(27282),o=n(4667);function useQueries(t){var e=i().useRef(!1),n=i().useState(0)[1],r=(0,o.N)(),a=t.map((function(t){var e=r.defaultQueryObserverOptions(t);return e.optimisticResults=!0,e})),c=i().useState((function(){return new u.y(r,a)}))[0],l=c.getOptimisticResult(a);return i().useEffect((function(){e.current=!0;var t=c.subscribe(s.V.batchCalls((function(){e.current&&n((function(t){return t+1}))})));return function(){e.current=!1,t()}}),[c]),i().useEffect((function(){c.setQueries(a,{listeners:!1})}),[a,c]),l}},3988:(t,e,n)=>{"use strict";n.d(e,{a:()=>useQuery});var r=n(87978),i=n(12860),s=n(85055);function useQuery(t,e,n){var u=(0,i._v)(t,e,n);return(0,s.r)(u,r.z)}}}]);assets/js/beta-tester.js000064400000324176151327220410011251 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
/******/ (() => { // webpackBootstrap
/******/ 	var __webpack_modules__ = ({

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/create.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/create.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/create */ "../node_modules/core-js/library/fn/object/create.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js":
/*!********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js ***!
  \********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/define-property */ "../node_modules/core-js/library/fn/object/define-property.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/get-prototype-of.js":
/*!*********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/get-prototype-of.js ***!
  \*********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/get-prototype-of */ "../node_modules/core-js/library/fn/object/get-prototype-of.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js":
/*!*********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js ***!
  \*********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/set-prototype-of */ "../node_modules/core-js/library/fn/object/set-prototype-of.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js":
/*!***************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js ***!
  \***************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/reflect/construct */ "../node_modules/core-js/library/fn/reflect/construct.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js":
/*!****************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/symbol.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/symbol */ "../node_modules/core-js/library/fn/symbol/index.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js":
/*!*************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js ***!
  \*************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/symbol/iterator */ "../node_modules/core-js/library/fn/symbol/iterator.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js":
/*!*******************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js ***!
  \*******************************************************************************/
/***/ ((module) => {

function _assertThisInitialized(self) {
  if (self === void 0) {
    throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
  }

  return self;
}

module.exports = _assertThisInitialized;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js ***!
  \************************************************************************/
/***/ ((module) => {

function _classCallCheck(instance, Constructor) {
  if (!(instance instanceof Constructor)) {
    throw new TypeError("Cannot call a class as a function");
  }
}

module.exports = _classCallCheck;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/createClass.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

function _defineProperties(target, props) {
  for (var i = 0; i < props.length; i++) {
    var descriptor = props[i];
    descriptor.enumerable = descriptor.enumerable || false;
    descriptor.configurable = true;
    if ("value" in descriptor) descriptor.writable = true;

    _Object$defineProperty(target, descriptor.key, descriptor);
  }
}

function _createClass(Constructor, protoProps, staticProps) {
  if (protoProps) _defineProperties(Constructor.prototype, protoProps);
  if (staticProps) _defineProperties(Constructor, staticProps);
  return Constructor;
}

module.exports = _createClass;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/createSuper.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Reflect$construct = __webpack_require__(/*! @babel/runtime-corejs2/core-js/reflect/construct */ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js");

var getPrototypeOf = __webpack_require__(/*! ./getPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js");

var isNativeReflectConstruct = __webpack_require__(/*! ./isNativeReflectConstruct.js */ "../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js");

var possibleConstructorReturn = __webpack_require__(/*! ./possibleConstructorReturn.js */ "../node_modules/@babel/runtime-corejs2/helpers/possibleConstructorReturn.js");

function _createSuper(Derived) {
  var hasNativeReflectConstruct = isNativeReflectConstruct();
  return function _createSuperInternal() {
    var Super = getPrototypeOf(Derived),
        result;

    if (hasNativeReflectConstruct) {
      var NewTarget = getPrototypeOf(this).constructor;
      result = _Reflect$construct(Super, arguments, NewTarget);
    } else {
      result = Super.apply(this, arguments);
    }

    return possibleConstructorReturn(this, result);
  };
}

module.exports = _createSuper;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$setPrototypeOf = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/set-prototype-of */ "../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js");

var _Object$getPrototypeOf = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-prototype-of */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-prototype-of.js");

function _getPrototypeOf(o) {
  module.exports = _getPrototypeOf = _Object$setPrototypeOf ? _Object$getPrototypeOf : function _getPrototypeOf(o) {
    return o.__proto__ || _Object$getPrototypeOf(o);
  };
  module.exports.default = module.exports, module.exports.__esModule = true;
  return _getPrototypeOf(o);
}

module.exports = _getPrototypeOf;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js":
/*!******************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/inherits.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$create = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/create */ "../node_modules/@babel/runtime-corejs2/core-js/object/create.js");

var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js");

function _inherits(subClass, superClass) {
  if (typeof superClass !== "function" && superClass !== null) {
    throw new TypeError("Super expression must either be null or a function");
  }

  subClass.prototype = _Object$create(superClass && superClass.prototype, {
    constructor: {
      value: subClass,
      writable: true,
      configurable: true
    }
  });
  if (superClass) setPrototypeOf(subClass, superClass);
}

module.exports = _inherits;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js":
/*!*******************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js ***!
  \*******************************************************************************/
/***/ ((module) => {

function _interopRequireDefault(obj) {
  return obj && obj.__esModule ? obj : {
    "default": obj
  };
}

module.exports = _interopRequireDefault;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js":
/*!**********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js ***!
  \**********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Reflect$construct = __webpack_require__(/*! @babel/runtime-corejs2/core-js/reflect/construct */ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js");

function _isNativeReflectConstruct() {
  if (typeof Reflect === "undefined" || !_Reflect$construct) return false;
  if (_Reflect$construct.sham) return false;
  if (typeof Proxy === "function") return true;

  try {
    Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {}));
    return true;
  } catch (e) {
    return false;
  }
}

module.exports = _isNativeReflectConstruct;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/possibleConstructorReturn.js":
/*!***********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/possibleConstructorReturn.js ***!
  \***********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _typeof = __webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js").default;

var assertThisInitialized = __webpack_require__(/*! ./assertThisInitialized.js */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js");

function _possibleConstructorReturn(self, call) {
  if (call && (_typeof(call) === "object" || typeof call === "function")) {
    return call;
  }

  return assertThisInitialized(self);
}

module.exports = _possibleConstructorReturn;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$setPrototypeOf = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/set-prototype-of */ "../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js");

function _setPrototypeOf(o, p) {
  module.exports = _setPrototypeOf = _Object$setPrototypeOf || function _setPrototypeOf(o, p) {
    o.__proto__ = p;
    return o;
  };

  module.exports.default = module.exports, module.exports.__esModule = true;
  return _setPrototypeOf(o, p);
}

module.exports = _setPrototypeOf;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js":
/*!****************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/typeof.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Symbol = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol */ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js");

var _Symbol$iterator = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/iterator */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js");

function _typeof(obj) {
  "@babel/helpers - typeof";

  if (typeof _Symbol === "function" && typeof _Symbol$iterator === "symbol") {
    module.exports = _typeof = function _typeof(obj) {
      return typeof obj;
    };

    module.exports.default = module.exports, module.exports.__esModule = true;
  } else {
    module.exports = _typeof = function _typeof(obj) {
      return obj && typeof _Symbol === "function" && obj.constructor === _Symbol && obj !== _Symbol.prototype ? "symbol" : typeof obj;
    };

    module.exports.default = module.exports, module.exports.__esModule = true;
  }

  return _typeof(obj);
}

module.exports = _typeof;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../assets/dev/js/admin/beta-tester/layout.js":
/*!****************************************************!*\
  !*** ../assets/dev/js/admin/beta-tester/layout.js ***!
  \****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _view = _interopRequireDefault(__webpack_require__(/*! ./view */ "../assets/dev/js/admin/beta-tester/view.js"));

var BetaTesterLayout = /*#__PURE__*/function (_elementorModules$com) {
  (0, _inherits2.default)(BetaTesterLayout, _elementorModules$com);

  var _super = (0, _createSuper2.default)(BetaTesterLayout);

  function BetaTesterLayout() {
    (0, _classCallCheck2.default)(this, BetaTesterLayout);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(BetaTesterLayout, [{
    key: "ui",
    value: function ui() {
      return {
        closeModal: '.elementor-templates-modal__header__close',
        dontShowAgain: '.elementor-beta-tester-do-not-show-again'
      };
    }
  }, {
    key: "events",
    value: function events() {
      return {
        'click @ui.closeModal': this.onCloseModalClick,
        'click @ui.dontShowAgain': this.onDontShowAgainClick
      };
    }
  }, {
    key: "getModalOptions",
    value: function getModalOptions() {
      return {
        id: 'elementor-beta-tester-modal',
        hide: {
          onBackgroundClick: false
        }
      };
    }
  }, {
    key: "getLogoOptions",
    value: function getLogoOptions() {
      return {
        title: __('Sign Up', 'elementor')
      };
    }
  }, {
    key: "initialize",
    value: function initialize() {
      elementorModules.common.views.modal.Layout.prototype.initialize.apply(this, arguments);
      this.showLogo();
      this.showContentView();

      var doNotShowAgain = __('Don\'t Show Again', 'elementor');

      this.modalHeader.currentView.ui.closeModal.after(jQuery('<div>', {
        class: 'elementor-beta-tester-do-not-show-again'
      }).text(doNotShowAgain));
    }
  }, {
    key: "showContentView",
    value: function showContentView() {
      this.modalContent.show(new _view.default());
    }
  }, {
    key: "onDontShowAgainClick",
    value: function onDontShowAgainClick() {
      this.hideModal();
      this.onCloseModalClick();
    }
  }, {
    key: "onCloseModalClick",
    value: function onCloseModalClick() {
      elementorCommon.ajax.addRequest('introduction_viewed', {
        data: {
          introductionKey: elementorAdmin.config.beta_tester.beta_tester_signup
        }
      });
    }
  }]);
  return BetaTesterLayout;
}(elementorModules.common.views.modal.Layout);

exports.default = BetaTesterLayout;

/***/ }),

/***/ "../assets/dev/js/admin/beta-tester/view.js":
/*!**************************************************!*\
  !*** ../assets/dev/js/admin/beta-tester/view.js ***!
  \**************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var BetaTesterView = /*#__PURE__*/function (_Marionette$ItemView) {
  (0, _inherits2.default)(BetaTesterView, _Marionette$ItemView);

  var _super = (0, _createSuper2.default)(BetaTesterView);

  function BetaTesterView() {
    var _this;

    (0, _classCallCheck2.default)(this, BetaTesterView);
    _this = _super.call(this);
    _this.id = 'elementor-beta-tester-dialog-content';
    _this.template = '#tmpl-elementor-beta-tester';
    return _this;
  }

  (0, _createClass2.default)(BetaTesterView, [{
    key: "ui",
    value: function ui() {
      return {
        betaForm: '#elementor-beta-tester-form',
        betaEmail: '#elementor-beta-tester-form__email',
        betaButton: '#elementor-beta-tester-form__submit'
      };
    }
  }, {
    key: "events",
    value: function events() {
      return {
        'submit @ui.betaForm': 'onBetaFormSubmit'
      };
    }
  }, {
    key: "onBetaFormSubmit",
    value: function onBetaFormSubmit(event) {
      event.preventDefault();
      var email = this.ui.betaEmail.val();
      this.ui.betaButton.addClass('elementor-button-state');
      elementorCommon.ajax.addRequest('beta_tester_signup', {
        data: {
          betaTesterEmail: email
        } // Do not wait for response.

      });
      elementorBetaTester.layout.hideModal();
    }
  }, {
    key: "onRender",
    value: function onRender() {}
  }]);
  return BetaTesterView;
}(Marionette.ItemView);

exports.default = BetaTesterView;

/***/ }),

/***/ "../node_modules/core-js/library/fn/object/create.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/create.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.create */ "../node_modules/core-js/library/modules/es6.object.create.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function create(P, D) {
  return $Object.create(P, D);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/define-property.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/define-property.js ***!
  \********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.define-property */ "../node_modules/core-js/library/modules/es6.object.define-property.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function defineProperty(it, key, desc) {
  return $Object.defineProperty(it, key, desc);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/get-prototype-of.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/get-prototype-of.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.get-prototype-of */ "../node_modules/core-js/library/modules/es6.object.get-prototype-of.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.getPrototypeOf;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/set-prototype-of.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/set-prototype-of.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.set-prototype-of */ "../node_modules/core-js/library/modules/es6.object.set-prototype-of.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.setPrototypeOf;


/***/ }),

/***/ "../node_modules/core-js/library/fn/reflect/construct.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/fn/reflect/construct.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.reflect.construct */ "../node_modules/core-js/library/modules/es6.reflect.construct.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Reflect.construct;


/***/ }),

/***/ "../node_modules/core-js/library/fn/symbol/index.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/fn/symbol/index.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.symbol */ "../node_modules/core-js/library/modules/es6.symbol.js");
__webpack_require__(/*! ../../modules/es6.object.to-string */ "../node_modules/core-js/library/modules/es6.object.to-string.js");
__webpack_require__(/*! ../../modules/es7.symbol.async-iterator */ "../node_modules/core-js/library/modules/es7.symbol.async-iterator.js");
__webpack_require__(/*! ../../modules/es7.symbol.observable */ "../node_modules/core-js/library/modules/es7.symbol.observable.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Symbol;


/***/ }),

/***/ "../node_modules/core-js/library/fn/symbol/iterator.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/fn/symbol/iterator.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.string.iterator */ "../node_modules/core-js/library/modules/es6.string.iterator.js");
__webpack_require__(/*! ../../modules/web.dom.iterable */ "../node_modules/core-js/library/modules/web.dom.iterable.js");
module.exports = __webpack_require__(/*! ../../modules/_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js").f('iterator');


/***/ }),

/***/ "../node_modules/core-js/library/modules/_a-function.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_a-function.js ***!
  \**************************************************************/
/***/ ((module) => {

module.exports = function (it) {
  if (typeof it != 'function') throw TypeError(it + ' is not a function!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_add-to-unscopables.js":
/*!**********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_add-to-unscopables.js ***!
  \**********************************************************************/
/***/ ((module) => {

module.exports = function () { /* empty */ };


/***/ }),

/***/ "../node_modules/core-js/library/modules/_an-object.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_an-object.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
module.exports = function (it) {
  if (!isObject(it)) throw TypeError(it + ' is not an object!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-includes.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-includes.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// false -> Array#indexOf
// true  -> Array#includes
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
var toAbsoluteIndex = __webpack_require__(/*! ./_to-absolute-index */ "../node_modules/core-js/library/modules/_to-absolute-index.js");
module.exports = function (IS_INCLUDES) {
  return function ($this, el, fromIndex) {
    var O = toIObject($this);
    var length = toLength(O.length);
    var index = toAbsoluteIndex(fromIndex, length);
    var value;
    // Array#includes uses SameValueZero equality algorithm
    // eslint-disable-next-line no-self-compare
    if (IS_INCLUDES && el != el) while (length > index) {
      value = O[index++];
      // eslint-disable-next-line no-self-compare
      if (value != value) return true;
    // Array#indexOf ignores holes, Array#includes - not
    } else for (;length > index; index++) if (IS_INCLUDES || index in O) {
      if (O[index] === el) return IS_INCLUDES || index || 0;
    } return !IS_INCLUDES && -1;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_bind.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_bind.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var invoke = __webpack_require__(/*! ./_invoke */ "../node_modules/core-js/library/modules/_invoke.js");
var arraySlice = [].slice;
var factories = {};

var construct = function (F, len, args) {
  if (!(len in factories)) {
    for (var n = [], i = 0; i < len; i++) n[i] = 'a[' + i + ']';
    // eslint-disable-next-line no-new-func
    factories[len] = Function('F,a', 'return new F(' + n.join(',') + ')');
  } return factories[len](F, args);
};

module.exports = Function.bind || function bind(that /* , ...args */) {
  var fn = aFunction(this);
  var partArgs = arraySlice.call(arguments, 1);
  var bound = function (/* args... */) {
    var args = partArgs.concat(arraySlice.call(arguments));
    return this instanceof bound ? construct(fn, args.length, args) : invoke(fn, args, that);
  };
  if (isObject(fn.prototype)) bound.prototype = fn.prototype;
  return bound;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_cof.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_cof.js ***!
  \*******************************************************/
/***/ ((module) => {

var toString = {}.toString;

module.exports = function (it) {
  return toString.call(it).slice(8, -1);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_core.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_core.js ***!
  \********************************************************/
/***/ ((module) => {

var core = module.exports = { version: '2.6.12' };
if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/library/modules/_ctx.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_ctx.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// optional / simple context binding
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
module.exports = function (fn, that, length) {
  aFunction(fn);
  if (that === undefined) return fn;
  switch (length) {
    case 1: return function (a) {
      return fn.call(that, a);
    };
    case 2: return function (a, b) {
      return fn.call(that, a, b);
    };
    case 3: return function (a, b, c) {
      return fn.call(that, a, b, c);
    };
  }
  return function (/* ...args */) {
    return fn.apply(that, arguments);
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_defined.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_defined.js ***!
  \***********************************************************/
/***/ ((module) => {

// 7.2.1 RequireObjectCoercible(argument)
module.exports = function (it) {
  if (it == undefined) throw TypeError("Can't call method on  " + it);
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_descriptors.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_descriptors.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Thank's IE8 for his funny defineProperty
module.exports = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/_dom-create.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_dom-create.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").document;
// typeof document.createElement is 'object' in old IE
var is = isObject(document) && isObject(document.createElement);
module.exports = function (it) {
  return is ? document.createElement(it) : {};
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_enum-bug-keys.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_enum-bug-keys.js ***!
  \*****************************************************************/
/***/ ((module) => {

// IE 8- don't enum bug keys
module.exports = (
  'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
).split(',');


/***/ }),

/***/ "../node_modules/core-js/library/modules/_enum-keys.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_enum-keys.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// all enumerable object keys, includes symbols
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var gOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js");
module.exports = function (it) {
  var result = getKeys(it);
  var getSymbols = gOPS.f;
  if (getSymbols) {
    var symbols = getSymbols(it);
    var isEnum = pIE.f;
    var i = 0;
    var key;
    while (symbols.length > i) if (isEnum.call(it, key = symbols[i++])) result.push(key);
  } return result;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_export.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_export.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var PROTOTYPE = 'prototype';

var $export = function (type, name, source) {
  var IS_FORCED = type & $export.F;
  var IS_GLOBAL = type & $export.G;
  var IS_STATIC = type & $export.S;
  var IS_PROTO = type & $export.P;
  var IS_BIND = type & $export.B;
  var IS_WRAP = type & $export.W;
  var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
  var expProto = exports[PROTOTYPE];
  var target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE];
  var key, own, out;
  if (IS_GLOBAL) source = name;
  for (key in source) {
    // contains in native
    own = !IS_FORCED && target && target[key] !== undefined;
    if (own && has(exports, key)) continue;
    // export native or passed
    out = own ? target[key] : source[key];
    // prevent global pollution for namespaces
    exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key]
    // bind timers to global for call from export context
    : IS_BIND && own ? ctx(out, global)
    // wrap global constructors for prevent change them in library
    : IS_WRAP && target[key] == out ? (function (C) {
      var F = function (a, b, c) {
        if (this instanceof C) {
          switch (arguments.length) {
            case 0: return new C();
            case 1: return new C(a);
            case 2: return new C(a, b);
          } return new C(a, b, c);
        } return C.apply(this, arguments);
      };
      F[PROTOTYPE] = C[PROTOTYPE];
      return F;
    // make static versions for prototype methods
    })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
    // export proto methods to core.%CONSTRUCTOR%.methods.%NAME%
    if (IS_PROTO) {
      (exports.virtual || (exports.virtual = {}))[key] = out;
      // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME%
      if (type & $export.R && expProto && !expProto[key]) hide(expProto, key, out);
    }
  }
};
// type bitmap
$export.F = 1;   // forced
$export.G = 2;   // global
$export.S = 4;   // static
$export.P = 8;   // proto
$export.B = 16;  // bind
$export.W = 32;  // wrap
$export.U = 64;  // safe
$export.R = 128; // real proto method for `library`
module.exports = $export;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_fails.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_fails.js ***!
  \*********************************************************/
/***/ ((module) => {

module.exports = function (exec) {
  try {
    return !!exec();
  } catch (e) {
    return true;
  }
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_global.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_global.js ***!
  \**********************************************************/
/***/ ((module) => {

// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
var global = module.exports = typeof window != 'undefined' && window.Math == Math
  ? window : typeof self != 'undefined' && self.Math == Math ? self
  // eslint-disable-next-line no-new-func
  : Function('return this')();
if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/library/modules/_has.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_has.js ***!
  \*******************************************************/
/***/ ((module) => {

var hasOwnProperty = {}.hasOwnProperty;
module.exports = function (it, key) {
  return hasOwnProperty.call(it, key);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_hide.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_hide.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? function (object, key, value) {
  return dP.f(object, key, createDesc(1, value));
} : function (object, key, value) {
  object[key] = value;
  return object;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_html.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_html.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").document;
module.exports = document && document.documentElement;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_ie8-dom-define.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_ie8-dom-define.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") && !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  return Object.defineProperty(__webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/library/modules/_dom-create.js")('div'), 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/_invoke.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_invoke.js ***!
  \**********************************************************/
/***/ ((module) => {

// fast apply, http://jsperf.lnkit.com/fast-apply/5
module.exports = function (fn, args, that) {
  var un = that === undefined;
  switch (args.length) {
    case 0: return un ? fn()
                      : fn.call(that);
    case 1: return un ? fn(args[0])
                      : fn.call(that, args[0]);
    case 2: return un ? fn(args[0], args[1])
                      : fn.call(that, args[0], args[1]);
    case 3: return un ? fn(args[0], args[1], args[2])
                      : fn.call(that, args[0], args[1], args[2]);
    case 4: return un ? fn(args[0], args[1], args[2], args[3])
                      : fn.call(that, args[0], args[1], args[2], args[3]);
  } return fn.apply(that, args);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iobject.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iobject.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// fallback for non-array-like ES3 and non-enumerable old V8 strings
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js");
// eslint-disable-next-line no-prototype-builtins
module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
  return cof(it) == 'String' ? it.split('') : Object(it);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_is-array.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_is-array.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.2.2 IsArray(argument)
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js");
module.exports = Array.isArray || function isArray(arg) {
  return cof(arg) == 'Array';
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_is-object.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_is-object.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = function (it) {
  return typeof it === 'object' ? it !== null : typeof it === 'function';
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-create.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-create.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
var descriptor = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var IteratorPrototype = {};

// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
__webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js")(IteratorPrototype, __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator'), function () { return this; });

module.exports = function (Constructor, NAME, next) {
  Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });
  setToStringTag(Constructor, NAME + ' Iterator');
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-define.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-define.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/library/modules/_redefine.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var $iterCreate = __webpack_require__(/*! ./_iter-create */ "../node_modules/core-js/library/modules/_iter-create.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`
var FF_ITERATOR = '@@iterator';
var KEYS = 'keys';
var VALUES = 'values';

var returnThis = function () { return this; };

module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {
  $iterCreate(Constructor, NAME, next);
  var getMethod = function (kind) {
    if (!BUGGY && kind in proto) return proto[kind];
    switch (kind) {
      case KEYS: return function keys() { return new Constructor(this, kind); };
      case VALUES: return function values() { return new Constructor(this, kind); };
    } return function entries() { return new Constructor(this, kind); };
  };
  var TAG = NAME + ' Iterator';
  var DEF_VALUES = DEFAULT == VALUES;
  var VALUES_BUG = false;
  var proto = Base.prototype;
  var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];
  var $default = $native || getMethod(DEFAULT);
  var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;
  var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;
  var methods, key, IteratorPrototype;
  // Fix native
  if ($anyNative) {
    IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));
    if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {
      // Set @@toStringTag to native iterators
      setToStringTag(IteratorPrototype, TAG, true);
      // fix for some old engines
      if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);
    }
  }
  // fix Array#{values, @@iterator}.name in V8 / FF
  if (DEF_VALUES && $native && $native.name !== VALUES) {
    VALUES_BUG = true;
    $default = function values() { return $native.call(this); };
  }
  // Define iterator
  if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {
    hide(proto, ITERATOR, $default);
  }
  // Plug for library
  Iterators[NAME] = $default;
  Iterators[TAG] = returnThis;
  if (DEFAULT) {
    methods = {
      values: DEF_VALUES ? $default : getMethod(VALUES),
      keys: IS_SET ? $default : getMethod(KEYS),
      entries: $entries
    };
    if (FORCED) for (key in methods) {
      if (!(key in proto)) redefine(proto, key, methods[key]);
    } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
  }
  return methods;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-step.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-step.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = function (done, value) {
  return { value: value, done: !!done };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iterators.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iterators.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = {};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_library.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_library.js ***!
  \***********************************************************/
/***/ ((module) => {

module.exports = true;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_meta.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_meta.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var META = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js")('meta');
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var setDesc = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
var id = 0;
var isExtensible = Object.isExtensible || function () {
  return true;
};
var FREEZE = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  return isExtensible(Object.preventExtensions({}));
});
var setMeta = function (it) {
  setDesc(it, META, { value: {
    i: 'O' + ++id, // object ID
    w: {}          // weak collections IDs
  } });
};
var fastKey = function (it, create) {
  // return primitive with prefix
  if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;
  if (!has(it, META)) {
    // can't set metadata to uncaught frozen object
    if (!isExtensible(it)) return 'F';
    // not necessary to add metadata
    if (!create) return 'E';
    // add missing metadata
    setMeta(it);
  // return object ID
  } return it[META].i;
};
var getWeak = function (it, create) {
  if (!has(it, META)) {
    // can't set metadata to uncaught frozen object
    if (!isExtensible(it)) return true;
    // not necessary to add metadata
    if (!create) return false;
    // add missing metadata
    setMeta(it);
  // return hash weak collections IDs
  } return it[META].w;
};
// add metadata on freeze-family methods calling
var onFreeze = function (it) {
  if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it);
  return it;
};
var meta = module.exports = {
  KEY: META,
  NEED: false,
  fastKey: fastKey,
  getWeak: getWeak,
  onFreeze: onFreeze
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-create.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-create.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var dPs = __webpack_require__(/*! ./_object-dps */ "../node_modules/core-js/library/modules/_object-dps.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');
var Empty = function () { /* empty */ };
var PROTOTYPE = 'prototype';

// Create object with fake `null` prototype: use iframe Object with cleared prototype
var createDict = function () {
  // Thrash, waste and sodomy: IE GC bug
  var iframe = __webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/library/modules/_dom-create.js")('iframe');
  var i = enumBugKeys.length;
  var lt = '<';
  var gt = '>';
  var iframeDocument;
  iframe.style.display = 'none';
  __webpack_require__(/*! ./_html */ "../node_modules/core-js/library/modules/_html.js").appendChild(iframe);
  iframe.src = 'javascript:'; // eslint-disable-line no-script-url
  // createDict = iframe.contentWindow.Object;
  // html.removeChild(iframe);
  iframeDocument = iframe.contentWindow.document;
  iframeDocument.open();
  iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);
  iframeDocument.close();
  createDict = iframeDocument.F;
  while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];
  return createDict();
};

module.exports = Object.create || function create(O, Properties) {
  var result;
  if (O !== null) {
    Empty[PROTOTYPE] = anObject(O);
    result = new Empty();
    Empty[PROTOTYPE] = null;
    // add "__proto__" for Object.getPrototypeOf polyfill
    result[IE_PROTO] = O;
  } else result = createDict();
  return Properties === undefined ? result : dPs(result, Properties);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-dp.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-dp.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/library/modules/_ie8-dom-define.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
var dP = Object.defineProperty;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? Object.defineProperty : function defineProperty(O, P, Attributes) {
  anObject(O);
  P = toPrimitive(P, true);
  anObject(Attributes);
  if (IE8_DOM_DEFINE) try {
    return dP(O, P, Attributes);
  } catch (e) { /* empty */ }
  if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
  if ('value' in Attributes) O[P] = Attributes.value;
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-dps.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-dps.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");

module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? Object.defineProperties : function defineProperties(O, Properties) {
  anObject(O);
  var keys = getKeys(Properties);
  var length = keys.length;
  var i = 0;
  var P;
  while (length > i) dP.f(O, P = keys[i++], Properties[P]);
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gopd.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gopd.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/library/modules/_ie8-dom-define.js");
var gOPD = Object.getOwnPropertyDescriptor;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? gOPD : function getOwnPropertyDescriptor(O, P) {
  O = toIObject(O);
  P = toPrimitive(P, true);
  if (IE8_DOM_DEFINE) try {
    return gOPD(O, P);
  } catch (e) { /* empty */ }
  if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gopn-ext.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gopn-ext.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var gOPN = __webpack_require__(/*! ./_object-gopn */ "../node_modules/core-js/library/modules/_object-gopn.js").f;
var toString = {}.toString;

var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames
  ? Object.getOwnPropertyNames(window) : [];

var getWindowNames = function (it) {
  try {
    return gOPN(it);
  } catch (e) {
    return windowNames.slice();
  }
};

module.exports.f = function getOwnPropertyNames(it) {
  return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gopn.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gopn.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)
var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/library/modules/_object-keys-internal.js");
var hiddenKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js").concat('length', 'prototype');

exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
  return $keys(O, hiddenKeys);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gops.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gops.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports) => {

exports.f = Object.getOwnPropertySymbols;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gpo.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gpo.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');
var ObjectProto = Object.prototype;

module.exports = Object.getPrototypeOf || function (O) {
  O = toObject(O);
  if (has(O, IE_PROTO)) return O[IE_PROTO];
  if (typeof O.constructor == 'function' && O instanceof O.constructor) {
    return O.constructor.prototype;
  } return O instanceof Object ? ObjectProto : null;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-keys-internal.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-keys-internal.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var arrayIndexOf = __webpack_require__(/*! ./_array-includes */ "../node_modules/core-js/library/modules/_array-includes.js")(false);
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');

module.exports = function (object, names) {
  var O = toIObject(object);
  var i = 0;
  var result = [];
  var key;
  for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);
  // Don't enum bug & hidden keys
  while (names.length > i) if (has(O, key = names[i++])) {
    ~arrayIndexOf(result, key) || result.push(key);
  }
  return result;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-keys.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-keys.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.14 / 15.2.3.14 Object.keys(O)
var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/library/modules/_object-keys-internal.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js");

module.exports = Object.keys || function keys(O) {
  return $keys(O, enumBugKeys);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-pie.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-pie.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports) => {

exports.f = {}.propertyIsEnumerable;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-sap.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-sap.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// most Object methods by ES6 should accept primitives
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
module.exports = function (KEY, exec) {
  var fn = (core.Object || {})[KEY] || Object[KEY];
  var exp = {};
  exp[KEY] = exec(fn);
  $export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_property-desc.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_property-desc.js ***!
  \*****************************************************************/
/***/ ((module) => {

module.exports = function (bitmap, value) {
  return {
    enumerable: !(bitmap & 1),
    configurable: !(bitmap & 2),
    writable: !(bitmap & 4),
    value: value
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_redefine.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_redefine.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-proto.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-proto.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Works with __proto__ only. Old v8 can't work with null proto objects.
/* eslint-disable no-proto */
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var check = function (O, proto) {
  anObject(O);
  if (!isObject(proto) && proto !== null) throw TypeError(proto + ": can't set as prototype!");
};
module.exports = {
  set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line
    function (test, buggy, set) {
      try {
        set = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js")(Function.call, __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js").f(Object.prototype, '__proto__').set, 2);
        set(test, []);
        buggy = !(test instanceof Array);
      } catch (e) { buggy = true; }
      return function setPrototypeOf(O, proto) {
        check(O, proto);
        if (buggy) O.__proto__ = proto;
        else set(O, proto);
        return O;
      };
    }({}, false) : undefined),
  check: check
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-to-string-tag.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-to-string-tag.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var def = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('toStringTag');

module.exports = function (it, tag, stat) {
  if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_shared-key.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_shared-key.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var shared = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js")('keys');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
module.exports = function (key) {
  return shared[key] || (shared[key] = uid(key));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_shared.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_shared.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var SHARED = '__core-js_shared__';
var store = global[SHARED] || (global[SHARED] = {});

(module.exports = function (key, value) {
  return store[key] || (store[key] = value !== undefined ? value : {});
})('versions', []).push({
  version: core.version,
  mode: __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js") ? 'pure' : 'global',
  copyright: '© 2020 Denis Pushkarev (zloirock.ru)'
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/_string-at.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_string-at.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
// true  -> String#at
// false -> String#codePointAt
module.exports = function (TO_STRING) {
  return function (that, pos) {
    var s = String(defined(that));
    var i = toInteger(pos);
    var l = s.length;
    var a, b;
    if (i < 0 || i >= l) return TO_STRING ? '' : undefined;
    a = s.charCodeAt(i);
    return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
      ? TO_STRING ? s.charAt(i) : a
      : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-absolute-index.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-absolute-index.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
var max = Math.max;
var min = Math.min;
module.exports = function (index, length) {
  index = toInteger(index);
  return index < 0 ? max(index + length, 0) : min(index, length);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-integer.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-integer.js ***!
  \**************************************************************/
/***/ ((module) => {

// 7.1.4 ToInteger
var ceil = Math.ceil;
var floor = Math.floor;
module.exports = function (it) {
  return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-iobject.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-iobject.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// to indexed object, toObject with fallback for non-array-like ES3 strings
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/library/modules/_iobject.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
module.exports = function (it) {
  return IObject(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-length.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-length.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.15 ToLength
var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
var min = Math.min;
module.exports = function (it) {
  return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-object.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-object.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.13 ToObject(argument)
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
module.exports = function (it) {
  return Object(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-primitive.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-primitive.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.1 ToPrimitive(input [, PreferredType])
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
// instead of the ES6 spec version, we didn't implement @@toPrimitive case
// and the second argument - flag - preferred type is a string
module.exports = function (it, S) {
  if (!isObject(it)) return it;
  var fn, val;
  if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
  if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  throw TypeError("Can't convert object to primitive value");
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_uid.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_uid.js ***!
  \*******************************************************/
/***/ ((module) => {

var id = 0;
var px = Math.random();
module.exports = function (key) {
  return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_wks-define.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_wks-define.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js");
var wksExt = __webpack_require__(/*! ./_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js");
var defineProperty = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
module.exports = function (name) {
  var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {});
  if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_wks-ext.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_wks-ext.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

exports.f = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js");


/***/ }),

/***/ "../node_modules/core-js/library/modules/_wks.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_wks.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var store = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js")('wks');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
var Symbol = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").Symbol;
var USE_SYMBOL = typeof Symbol == 'function';

var $exports = module.exports = function (name) {
  return store[name] || (store[name] =
    USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
};

$exports.store = store;


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.array.iterator.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.array.iterator.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var addToUnscopables = __webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/library/modules/_add-to-unscopables.js");
var step = __webpack_require__(/*! ./_iter-step */ "../node_modules/core-js/library/modules/_iter-step.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");

// 22.1.3.4 Array.prototype.entries()
// 22.1.3.13 Array.prototype.keys()
// 22.1.3.29 Array.prototype.values()
// 22.1.3.30 Array.prototype[@@iterator]()
module.exports = __webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/library/modules/_iter-define.js")(Array, 'Array', function (iterated, kind) {
  this._t = toIObject(iterated); // target
  this._i = 0;                   // next index
  this._k = kind;                // kind
// 22.1.5.2.1 %ArrayIteratorPrototype%.next()
}, function () {
  var O = this._t;
  var kind = this._k;
  var index = this._i++;
  if (!O || index >= O.length) {
    this._t = undefined;
    return step(1);
  }
  if (kind == 'keys') return step(0, index);
  if (kind == 'values') return step(0, O[index]);
  return step(0, [index, O[index]]);
}, 'values');

// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
Iterators.Arguments = Iterators.Array;

addToUnscopables('keys');
addToUnscopables('values');
addToUnscopables('entries');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.create.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.create.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
$export($export.S, 'Object', { create: __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js") });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.define-property.js":
/*!*****************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.define-property.js ***!
  \*****************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)
$export($export.S + $export.F * !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js"), 'Object', { defineProperty: __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.get-prototype-of.js":
/*!******************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.get-prototype-of.js ***!
  \******************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.9 Object.getPrototypeOf(O)
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var $getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");

__webpack_require__(/*! ./_object-sap */ "../node_modules/core-js/library/modules/_object-sap.js")('getPrototypeOf', function () {
  return function getPrototypeOf(it) {
    return $getPrototypeOf(toObject(it));
  };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.set-prototype-of.js":
/*!******************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.set-prototype-of.js ***!
  \******************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.3.19 Object.setPrototypeOf(O, proto)
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
$export($export.S, 'Object', { setPrototypeOf: __webpack_require__(/*! ./_set-proto */ "../node_modules/core-js/library/modules/_set-proto.js").set });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.to-string.js":
/*!***********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.to-string.js ***!
  \***********************************************************************/
/***/ (() => {



/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.reflect.construct.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.reflect.construct.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 26.1.2 Reflect.construct(target, argumentsList [, newTarget])
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
var bind = __webpack_require__(/*! ./_bind */ "../node_modules/core-js/library/modules/_bind.js");
var rConstruct = (__webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").Reflect || {}).construct;

// MS Edge supports only 2 arguments and argumentsList argument is optional
// FF Nightly sets third argument as `new.target`, but does not create `this` from it
var NEW_TARGET_BUG = fails(function () {
  function F() { /* empty */ }
  return !(rConstruct(function () { /* empty */ }, [], F) instanceof F);
});
var ARGS_BUG = !fails(function () {
  rConstruct(function () { /* empty */ });
});

$export($export.S + $export.F * (NEW_TARGET_BUG || ARGS_BUG), 'Reflect', {
  construct: function construct(Target, args /* , newTarget */) {
    aFunction(Target);
    anObject(args);
    var newTarget = arguments.length < 3 ? Target : aFunction(arguments[2]);
    if (ARGS_BUG && !NEW_TARGET_BUG) return rConstruct(Target, args, newTarget);
    if (Target == newTarget) {
      // w/o altered newTarget, optimization for 0-4 arguments
      switch (args.length) {
        case 0: return new Target();
        case 1: return new Target(args[0]);
        case 2: return new Target(args[0], args[1]);
        case 3: return new Target(args[0], args[1], args[2]);
        case 4: return new Target(args[0], args[1], args[2], args[3]);
      }
      // w/o altered newTarget, lot of arguments case
      var $args = [null];
      $args.push.apply($args, args);
      return new (bind.apply(Target, $args))();
    }
    // with altered newTarget, not support built-in constructors
    var proto = newTarget.prototype;
    var instance = create(isObject(proto) ? proto : Object.prototype);
    var result = Function.apply.call(Target, instance, args);
    return isObject(result) ? result : instance;
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.string.iterator.js":
/*!**********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.string.iterator.js ***!
  \**********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $at = __webpack_require__(/*! ./_string-at */ "../node_modules/core-js/library/modules/_string-at.js")(true);

// 21.1.3.27 String.prototype[@@iterator]()
__webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/library/modules/_iter-define.js")(String, 'String', function (iterated) {
  this._t = String(iterated); // target
  this._i = 0;                // next index
// 21.1.5.2.1 %StringIteratorPrototype%.next()
}, function () {
  var O = this._t;
  var index = this._i;
  var point;
  if (index >= O.length) return { value: undefined, done: true };
  point = $at(O, index);
  this._i += point.length;
  return { value: point, done: false };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.symbol.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.symbol.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// ECMAScript 6 symbols shim
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/library/modules/_redefine.js");
var META = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js").KEY;
var $fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
var shared = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
var wks = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js");
var wksExt = __webpack_require__(/*! ./_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js");
var wksDefine = __webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js");
var enumKeys = __webpack_require__(/*! ./_enum-keys */ "../node_modules/core-js/library/modules/_enum-keys.js");
var isArray = __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/library/modules/_is-array.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
var _create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
var gOPNExt = __webpack_require__(/*! ./_object-gopn-ext */ "../node_modules/core-js/library/modules/_object-gopn-ext.js");
var $GOPD = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js");
var $GOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
var $DP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var $keys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var gOPD = $GOPD.f;
var dP = $DP.f;
var gOPN = gOPNExt.f;
var $Symbol = global.Symbol;
var $JSON = global.JSON;
var _stringify = $JSON && $JSON.stringify;
var PROTOTYPE = 'prototype';
var HIDDEN = wks('_hidden');
var TO_PRIMITIVE = wks('toPrimitive');
var isEnum = {}.propertyIsEnumerable;
var SymbolRegistry = shared('symbol-registry');
var AllSymbols = shared('symbols');
var OPSymbols = shared('op-symbols');
var ObjectProto = Object[PROTOTYPE];
var USE_NATIVE = typeof $Symbol == 'function' && !!$GOPS.f;
var QObject = global.QObject;
// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173
var setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;

// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687
var setSymbolDesc = DESCRIPTORS && $fails(function () {
  return _create(dP({}, 'a', {
    get: function () { return dP(this, 'a', { value: 7 }).a; }
  })).a != 7;
}) ? function (it, key, D) {
  var protoDesc = gOPD(ObjectProto, key);
  if (protoDesc) delete ObjectProto[key];
  dP(it, key, D);
  if (protoDesc && it !== ObjectProto) dP(ObjectProto, key, protoDesc);
} : dP;

var wrap = function (tag) {
  var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]);
  sym._k = tag;
  return sym;
};

var isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function (it) {
  return typeof it == 'symbol';
} : function (it) {
  return it instanceof $Symbol;
};

var $defineProperty = function defineProperty(it, key, D) {
  if (it === ObjectProto) $defineProperty(OPSymbols, key, D);
  anObject(it);
  key = toPrimitive(key, true);
  anObject(D);
  if (has(AllSymbols, key)) {
    if (!D.enumerable) {
      if (!has(it, HIDDEN)) dP(it, HIDDEN, createDesc(1, {}));
      it[HIDDEN][key] = true;
    } else {
      if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false;
      D = _create(D, { enumerable: createDesc(0, false) });
    } return setSymbolDesc(it, key, D);
  } return dP(it, key, D);
};
var $defineProperties = function defineProperties(it, P) {
  anObject(it);
  var keys = enumKeys(P = toIObject(P));
  var i = 0;
  var l = keys.length;
  var key;
  while (l > i) $defineProperty(it, key = keys[i++], P[key]);
  return it;
};
var $create = function create(it, P) {
  return P === undefined ? _create(it) : $defineProperties(_create(it), P);
};
var $propertyIsEnumerable = function propertyIsEnumerable(key) {
  var E = isEnum.call(this, key = toPrimitive(key, true));
  if (this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return false;
  return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true;
};
var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key) {
  it = toIObject(it);
  key = toPrimitive(key, true);
  if (it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return;
  var D = gOPD(it, key);
  if (D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) D.enumerable = true;
  return D;
};
var $getOwnPropertyNames = function getOwnPropertyNames(it) {
  var names = gOPN(toIObject(it));
  var result = [];
  var i = 0;
  var key;
  while (names.length > i) {
    if (!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META) result.push(key);
  } return result;
};
var $getOwnPropertySymbols = function getOwnPropertySymbols(it) {
  var IS_OP = it === ObjectProto;
  var names = gOPN(IS_OP ? OPSymbols : toIObject(it));
  var result = [];
  var i = 0;
  var key;
  while (names.length > i) {
    if (has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true)) result.push(AllSymbols[key]);
  } return result;
};

// 19.4.1.1 Symbol([description])
if (!USE_NATIVE) {
  $Symbol = function Symbol() {
    if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor!');
    var tag = uid(arguments.length > 0 ? arguments[0] : undefined);
    var $set = function (value) {
      if (this === ObjectProto) $set.call(OPSymbols, value);
      if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;
      setSymbolDesc(this, tag, createDesc(1, value));
    };
    if (DESCRIPTORS && setter) setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set });
    return wrap(tag);
  };
  redefine($Symbol[PROTOTYPE], 'toString', function toString() {
    return this._k;
  });

  $GOPD.f = $getOwnPropertyDescriptor;
  $DP.f = $defineProperty;
  __webpack_require__(/*! ./_object-gopn */ "../node_modules/core-js/library/modules/_object-gopn.js").f = gOPNExt.f = $getOwnPropertyNames;
  __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js").f = $propertyIsEnumerable;
  $GOPS.f = $getOwnPropertySymbols;

  if (DESCRIPTORS && !__webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js")) {
    redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);
  }

  wksExt.f = function (name) {
    return wrap(wks(name));
  };
}

$export($export.G + $export.W + $export.F * !USE_NATIVE, { Symbol: $Symbol });

for (var es6Symbols = (
  // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14
  'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'
).split(','), j = 0; es6Symbols.length > j;)wks(es6Symbols[j++]);

for (var wellKnownSymbols = $keys(wks.store), k = 0; wellKnownSymbols.length > k;) wksDefine(wellKnownSymbols[k++]);

$export($export.S + $export.F * !USE_NATIVE, 'Symbol', {
  // 19.4.2.1 Symbol.for(key)
  'for': function (key) {
    return has(SymbolRegistry, key += '')
      ? SymbolRegistry[key]
      : SymbolRegistry[key] = $Symbol(key);
  },
  // 19.4.2.5 Symbol.keyFor(sym)
  keyFor: function keyFor(sym) {
    if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol!');
    for (var key in SymbolRegistry) if (SymbolRegistry[key] === sym) return key;
  },
  useSetter: function () { setter = true; },
  useSimple: function () { setter = false; }
});

$export($export.S + $export.F * !USE_NATIVE, 'Object', {
  // 19.1.2.2 Object.create(O [, Properties])
  create: $create,
  // 19.1.2.4 Object.defineProperty(O, P, Attributes)
  defineProperty: $defineProperty,
  // 19.1.2.3 Object.defineProperties(O, Properties)
  defineProperties: $defineProperties,
  // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
  getOwnPropertyDescriptor: $getOwnPropertyDescriptor,
  // 19.1.2.7 Object.getOwnPropertyNames(O)
  getOwnPropertyNames: $getOwnPropertyNames,
  // 19.1.2.8 Object.getOwnPropertySymbols(O)
  getOwnPropertySymbols: $getOwnPropertySymbols
});

// Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives
// https://bugs.chromium.org/p/v8/issues/detail?id=3443
var FAILS_ON_PRIMITIVES = $fails(function () { $GOPS.f(1); });

$export($export.S + $export.F * FAILS_ON_PRIMITIVES, 'Object', {
  getOwnPropertySymbols: function getOwnPropertySymbols(it) {
    return $GOPS.f(toObject(it));
  }
});

// 24.3.2 JSON.stringify(value [, replacer [, space]])
$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function () {
  var S = $Symbol();
  // MS Edge converts symbol values to JSON as {}
  // WebKit converts symbol values to JSON as null
  // V8 throws on boxed symbols
  return _stringify([S]) != '[null]' || _stringify({ a: S }) != '{}' || _stringify(Object(S)) != '{}';
})), 'JSON', {
  stringify: function stringify(it) {
    var args = [it];
    var i = 1;
    var replacer, $replacer;
    while (arguments.length > i) args.push(arguments[i++]);
    $replacer = replacer = args[1];
    if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined
    if (!isArray(replacer)) replacer = function (key, value) {
      if (typeof $replacer == 'function') value = $replacer.call(this, key, value);
      if (!isSymbol(value)) return value;
    };
    args[1] = replacer;
    return _stringify.apply($JSON, args);
  }
});

// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint)
$Symbol[PROTOTYPE][TO_PRIMITIVE] || __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js")($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);
// 19.4.3.5 Symbol.prototype[@@toStringTag]
setToStringTag($Symbol, 'Symbol');
// 20.2.1.9 Math[@@toStringTag]
setToStringTag(Math, 'Math', true);
// 24.3.3 JSON[@@toStringTag]
setToStringTag(global.JSON, 'JSON', true);


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.symbol.async-iterator.js":
/*!****************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.symbol.async-iterator.js ***!
  \****************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js")('asyncIterator');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.symbol.observable.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.symbol.observable.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js")('observable');


/***/ }),

/***/ "../node_modules/core-js/library/modules/web.dom.iterable.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/web.dom.iterable.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ./es6.array.iterator */ "../node_modules/core-js/library/modules/es6.array.iterator.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var TO_STRING_TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('toStringTag');

var DOMIterables = ('CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,' +
  'DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,' +
  'MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,' +
  'SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,' +
  'TextTrackList,TouchList').split(',');

for (var i = 0; i < DOMIterables.length; i++) {
  var NAME = DOMIterables[i];
  var Collection = global[NAME];
  var proto = Collection && Collection.prototype;
  if (proto && !proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);
  Iterators[NAME] = Iterators.Array;
}


/***/ }),

/***/ "@wordpress/i18n":
/*!**************************!*\
  !*** external "wp.i18n" ***!
  \**************************/
/***/ ((module) => {

"use strict";
module.exports = wp.i18n;

/***/ })

/******/ 	});
/************************************************************************/
/******/ 	// The module cache
/******/ 	var __webpack_module_cache__ = {};
/******/ 	
/******/ 	// The require function
/******/ 	function __webpack_require__(moduleId) {
/******/ 		// Check if module is in cache
/******/ 		var cachedModule = __webpack_module_cache__[moduleId];
/******/ 		if (cachedModule !== undefined) {
/******/ 			return cachedModule.exports;
/******/ 		}
/******/ 		// Create a new module (and put it into the cache)
/******/ 		var module = __webpack_module_cache__[moduleId] = {
/******/ 			// no module.id needed
/******/ 			// no module.loaded needed
/******/ 			exports: {}
/******/ 		};
/******/ 	
/******/ 		// Execute the module function
/******/ 		__webpack_modules__[moduleId](module, module.exports, __webpack_require__);
/******/ 	
/******/ 		// Return the exports of the module
/******/ 		return module.exports;
/******/ 	}
/******/ 	
/************************************************************************/
var __webpack_exports__ = {};
// This entry need to be wrapped in an IIFE because it need to be in strict mode.
(() => {
"use strict";
/*!*********************************************************!*\
  !*** ../assets/dev/js/admin/beta-tester/beta-tester.js ***!
  \*********************************************************/


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _layout = _interopRequireDefault(__webpack_require__(/*! ./layout */ "../assets/dev/js/admin/beta-tester/layout.js"));

var BetaTesterModule = /*#__PURE__*/function (_elementorModules$Vie) {
  (0, _inherits2.default)(BetaTesterModule, _elementorModules$Vie);

  var _super = (0, _createSuper2.default)(BetaTesterModule);

  function BetaTesterModule() {
    (0, _classCallCheck2.default)(this, BetaTesterModule);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(BetaTesterModule, [{
    key: "onInit",
    value: function onInit() {
      elementorModules.ViewModule.prototype.onInit.apply(this, arguments);
      this.showLayout(false);
    }
  }, {
    key: "showLayout",
    value: function showLayout() {
      var always = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;

      if (!always && (!elementorAdmin.config.beta_tester.option_enabled || elementorAdmin.config.beta_tester.signup_dismissed || '#tab-fontawesome4_migration' === location.hash)) {
        return;
      }

      this.layout = new _layout.default();
      this.layout.showModal();
    }
  }, {
    key: "getDefaultSettings",
    value: function getDefaultSettings() {
      return {
        selectors: {
          betaTesterFirstToKnow: '#beta-tester-first-to-know'
        }
      };
    }
  }, {
    key: "getDefaultElements",
    value: function getDefaultElements() {
      var elements = {};
      var selectors = this.getSettings('selectors');
      elements.$betaTesterFirstToKnow = jQuery(selectors.betaTesterFirstToKnow);
      return elements;
    }
  }, {
    key: "bindEvents",
    value: function bindEvents() {
      var elements = this.elements;
      elements.$betaTesterFirstToKnow.on('click', this.showLayout.bind(this));
    }
  }]);
  return BetaTesterModule;
}(elementorModules.ViewModule);

jQuery(function () {
  window.elementorBetaTester = new BetaTesterModule();
});
})();

/******/ })()
;
//# sourceMappingURL=beta-tester.js.mapassets/js/elementor-admin-bar.min.js000064400000076760151327220410013441 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(()=>{var t={38401:(t,e,r)=>{t.exports=r(14710)},67394:(t,e,r)=>{t.exports=r(43153)},23587:(t,e,r)=>{t.exports=r(32622)},82055:(t,e,r)=>{t.exports=r(58535)},28274:(t,e,r)=>{t.exports=r(65135)},35657:(t,e,r)=>{t.exports=r(69591)},75499:(t,e,r)=>{t.exports=r(43094)},78282:(t,e,r)=>{t.exports=r(17641)},41281:(t,e,r)=>{t.exports=r(19103)},50093:(t,e,r)=>{t.exports=r(39871)},38852:t=>{t.exports=function _assertThisInitialized(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t},t.exports.default=t.exports,t.exports.__esModule=!0},11959:t=>{t.exports=function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")},t.exports.default=t.exports,t.exports.__esModule=!0},39041:(t,e,r)=>{var n=r(67394);function _defineProperties(t,e){for(var r=0;r<e.length;r++){var o=e[r];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),n(t,o.key,o)}}t.exports=function _createClass(t,e,r){return e&&_defineProperties(t.prototype,e),r&&_defineProperties(t,r),t},t.exports.default=t.exports,t.exports.__esModule=!0},68537:(t,e,r)=>{var n=r(75499),o=r(44263),i=r(898),u=r(59771);t.exports=function _createSuper(t){var e=i();return function _createSuperInternal(){var r,i=o(t);if(e){var s=o(this).constructor;r=n(i,arguments,s)}else r=i.apply(this,arguments);return u(this,r)}},t.exports.default=t.exports,t.exports.__esModule=!0},76700:(t,e,r)=>{var n=r(78282),o=r(23587),i=r(49445);function _get(e,r,u){return"undefined"!=typeof Reflect&&n?(t.exports=_get=n,t.exports.default=t.exports,t.exports.__esModule=!0):(t.exports=_get=function _get(t,e,r){var n=i(t,e);if(n){var u=o(n,e);return u.get?u.get.call(r):u.value}},t.exports.default=t.exports,t.exports.__esModule=!0),_get(e,r,u||e)}t.exports=_get,t.exports.default=t.exports,t.exports.__esModule=!0},44263:(t,e,r)=>{var n=r(28274),o=r(82055);function _getPrototypeOf(e){return t.exports=_getPrototypeOf=n?o:function _getPrototypeOf(t){return t.__proto__||o(t)},t.exports.default=t.exports,t.exports.__esModule=!0,_getPrototypeOf(e)}t.exports=_getPrototypeOf,t.exports.default=t.exports,t.exports.__esModule=!0},77371:(t,e,r)=>{var n=r(38401),o=r(76870);t.exports=function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=n(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&o(t,e)},t.exports.default=t.exports,t.exports.__esModule=!0},67971:t=>{t.exports=function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}},t.exports.default=t.exports,t.exports.__esModule=!0},898:(t,e,r)=>{var n=r(75499);t.exports=function _isNativeReflectConstruct(){if("undefined"==typeof Reflect||!n)return!1;if(n.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(n(Boolean,[],(function(){}))),!0}catch(t){return!1}},t.exports.default=t.exports,t.exports.__esModule=!0},59771:(t,e,r)=>{var n=r(24596).default,o=r(38852);t.exports=function _possibleConstructorReturn(t,e){return!e||"object"!==n(e)&&"function"!=typeof e?o(t):e},t.exports.default=t.exports,t.exports.__esModule=!0},76870:(t,e,r)=>{var n=r(28274);function _setPrototypeOf(e,r){return t.exports=_setPrototypeOf=n||function _setPrototypeOf(t,e){return t.__proto__=e,t},t.exports.default=t.exports,t.exports.__esModule=!0,_setPrototypeOf(e,r)}t.exports=_setPrototypeOf,t.exports.default=t.exports,t.exports.__esModule=!0},49445:(t,e,r)=>{var n=r(44263);t.exports=function _superPropBase(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=n(t)););return t},t.exports.default=t.exports,t.exports.__esModule=!0},24596:(t,e,r)=>{var n=r(41281),o=r(50093);function _typeof(e){return"function"==typeof n&&"symbol"==typeof o?(t.exports=_typeof=function _typeof(t){return typeof t},t.exports.default=t.exports,t.exports.__esModule=!0):(t.exports=_typeof=function _typeof(t){return t&&"function"==typeof n&&t.constructor===n&&t!==n.prototype?"symbol":typeof t},t.exports.default=t.exports,t.exports.__esModule=!0),_typeof(e)}t.exports=_typeof,t.exports.default=t.exports,t.exports.__esModule=!0},14710:(t,e,r)=>{r(30785);var n=r(47208).Object;t.exports=function create(t,e){return n.create(t,e)}},43153:(t,e,r)=>{r(40168);var n=r(47208).Object;t.exports=function defineProperty(t,e,r){return n.defineProperty(t,e,r)}},32622:(t,e,r)=>{r(18576);var n=r(47208).Object;t.exports=function getOwnPropertyDescriptor(t,e){return n.getOwnPropertyDescriptor(t,e)}},58535:(t,e,r)=>{r(4840),t.exports=r(47208).Object.getPrototypeOf},65135:(t,e,r)=>{r(13890),t.exports=r(47208).Object.setPrototypeOf},69591:(t,e,r)=>{r(57188),t.exports=r(47208).Object.values},43094:(t,e,r)=>{r(11320),t.exports=r(47208).Reflect.construct},17641:(t,e,r)=>{r(36600),t.exports=r(47208).Reflect.get},19103:(t,e,r)=>{r(54370),r(70285),r(87573),r(97224),t.exports=r(47208).Symbol},39871:(t,e,r)=>{r(99572),r(74114),t.exports=r(7273).f("iterator")},26610:t=>{t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},29697:t=>{t.exports=function(){}},30498:(t,e,r)=>{var n=r(39632);t.exports=function(t){if(!n(t))throw TypeError(t+" is not an object!");return t}},69191:(t,e,r)=>{var n=r(1504),o=r(37154),i=r(46723);t.exports=function(t){return function(e,r,u){var s,a=n(e),c=o(a.length),p=i(u,c);if(t&&r!=r){for(;c>p;)if((s=a[p++])!=s)return!0}else for(;c>p;p++)if((t||p in a)&&a[p]===r)return t||p||0;return!t&&-1}}},45515:(t,e,r)=>{"use strict";var n=r(26610),o=r(39632),i=r(19897),u=[].slice,s={},construct=function(t,e,r){if(!(e in s)){for(var n=[],o=0;o<e;o++)n[o]="a["+o+"]";s[e]=Function("F,a","return new F("+n.join(",")+")")}return s[e](t,r)};t.exports=Function.bind||function bind(t){var e=n(this),r=u.call(arguments,1),bound=function(){var n=r.concat(u.call(arguments));return this instanceof bound?construct(e,n.length,n):i(e,n,t)};return o(e.prototype)&&(bound.prototype=e.prototype),bound}},41352:t=>{var e={}.toString;t.exports=function(t){return e.call(t).slice(8,-1)}},47208:t=>{var e=t.exports={version:"2.6.12"};"number"==typeof __e&&(__e=e)},61725:(t,e,r)=>{var n=r(26610);t.exports=function(t,e,r){if(n(t),void 0===e)return t;switch(r){case 1:return function(r){return t.call(e,r)};case 2:return function(r,n){return t.call(e,r,n)};case 3:return function(r,n,o){return t.call(e,r,n,o)}}return function(){return t.apply(e,arguments)}}},18239:t=>{t.exports=function(t){if(null==t)throw TypeError("Can't call method on  "+t);return t}},75179:(t,e,r)=>{t.exports=!r(90472)((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},48765:(t,e,r)=>{var n=r(39632),o=r(43280).document,i=n(o)&&n(o.createElement);t.exports=function(t){return i?o.createElement(t):{}}},31986:t=>{t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},42266:(t,e,r)=>{var n=r(86425),o=r(97739),i=r(67410);t.exports=function(t){var e=n(t),r=o.f;if(r)for(var u,s=r(t),a=i.f,c=0;s.length>c;)a.call(t,u=s[c++])&&e.push(u);return e}},98310:(t,e,r)=>{var n=r(43280),o=r(47208),i=r(61725),u=r(62292),s=r(20657),$export=function(t,e,r){var a,c,p,f=t&$export.F,l=t&$export.G,y=t&$export.S,v=t&$export.P,d=t&$export.B,h=t&$export.W,_=l?o:o[e]||(o[e]={}),x=_.prototype,m=l?n:y?n[e]:(n[e]||{}).prototype;for(a in l&&(r=e),r)(c=!f&&m&&void 0!==m[a])&&s(_,a)||(p=c?m[a]:r[a],_[a]=l&&"function"!=typeof m[a]?r[a]:d&&c?i(p,n):h&&m[a]==p?function(t){var F=function(e,r,n){if(this instanceof t){switch(arguments.length){case 0:return new t;case 1:return new t(e);case 2:return new t(e,r)}return new t(e,r,n)}return t.apply(this,arguments)};return F.prototype=t.prototype,F}(p):v&&"function"==typeof p?i(Function.call,p):p,v&&((_.virtual||(_.virtual={}))[a]=p,t&$export.R&&x&&!x[a]&&u(x,a,p)))};$export.F=1,$export.G=2,$export.S=4,$export.P=8,$export.B=16,$export.W=32,$export.U=64,$export.R=128,t.exports=$export},90472:t=>{t.exports=function(t){try{return!!t()}catch(t){return!0}}},43280:t=>{var e=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=e)},20657:t=>{var e={}.hasOwnProperty;t.exports=function(t,r){return e.call(t,r)}},62292:(t,e,r)=>{var n=r(60510),o=r(48439);t.exports=r(75179)?function(t,e,r){return n.f(t,e,o(1,r))}:function(t,e,r){return t[e]=r,t}},92477:(t,e,r)=>{var n=r(43280).document;t.exports=n&&n.documentElement},64457:(t,e,r)=>{t.exports=!r(75179)&&!r(90472)((function(){return 7!=Object.defineProperty(r(48765)("div"),"a",{get:function(){return 7}}).a}))},19897:t=>{t.exports=function(t,e,r){var n=void 0===r;switch(e.length){case 0:return n?t():t.call(r);case 1:return n?t(e[0]):t.call(r,e[0]);case 2:return n?t(e[0],e[1]):t.call(r,e[0],e[1]);case 3:return n?t(e[0],e[1],e[2]):t.call(r,e[0],e[1],e[2]);case 4:return n?t(e[0],e[1],e[2],e[3]):t.call(r,e[0],e[1],e[2],e[3])}return t.apply(r,e)}},13115:(t,e,r)=>{var n=r(41352);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==n(t)?t.split(""):Object(t)}},7359:(t,e,r)=>{var n=r(41352);t.exports=Array.isArray||function isArray(t){return"Array"==n(t)}},39632:t=>{t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},19802:(t,e,r)=>{"use strict";var n=r(82488),o=r(48439),i=r(2413),u={};r(62292)(u,r(24300)("iterator"),(function(){return this})),t.exports=function(t,e,r){t.prototype=n(u,{next:o(1,r)}),i(t,e+" Iterator")}},6125:(t,e,r)=>{"use strict";var n=r(36794),o=r(98310),i=r(19312),u=r(62292),s=r(79105),a=r(19802),c=r(2413),p=r(999),f=r(24300)("iterator"),l=!([].keys&&"next"in[].keys()),y="keys",v="values",returnThis=function(){return this};t.exports=function(t,e,r,d,h,_,x){a(r,e,d);var m,b,g,getMethod=function(t){if(!l&&t in P)return P[t];switch(t){case y:return function keys(){return new r(this,t)};case v:return function values(){return new r(this,t)}}return function entries(){return new r(this,t)}},w=e+" Iterator",O=h==v,S=!1,P=t.prototype,j=P[f]||P["@@iterator"]||h&&P[h],M=j||getMethod(h),I=h?O?getMethod("entries"):M:void 0,k="Array"==e&&P.entries||j;if(k&&(g=p(k.call(new t)))!==Object.prototype&&g.next&&(c(g,w,!0),n||"function"==typeof g[f]||u(g,f,returnThis)),O&&j&&j.name!==v&&(S=!0,M=function values(){return j.call(this)}),n&&!x||!l&&!S&&P[f]||u(P,f,M),s[e]=M,s[w]=returnThis,h)if(m={values:O?M:getMethod(v),keys:_?M:getMethod(y),entries:I},x)for(b in m)b in P||i(P,b,m[b]);else o(o.P+o.F*(l||S),e,m);return m}},9329:t=>{t.exports=function(t,e){return{value:e,done:!!t}}},79105:t=>{t.exports={}},36794:t=>{t.exports=!0},6758:(t,e,r)=>{var n=r(54251)("meta"),o=r(39632),i=r(20657),u=r(60510).f,s=0,a=Object.isExtensible||function(){return!0},c=!r(90472)((function(){return a(Object.preventExtensions({}))})),setMeta=function(t){u(t,n,{value:{i:"O"+ ++s,w:{}}})},p=t.exports={KEY:n,NEED:!1,fastKey:function(t,e){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,n)){if(!a(t))return"F";if(!e)return"E";setMeta(t)}return t[n].i},getWeak:function(t,e){if(!i(t,n)){if(!a(t))return!0;if(!e)return!1;setMeta(t)}return t[n].w},onFreeze:function(t){return c&&p.NEED&&a(t)&&!i(t,n)&&setMeta(t),t}}},82488:(t,e,r)=>{var n=r(30498),o=r(36607),i=r(31986),u=r(18478)("IE_PROTO"),Empty=function(){},createDict=function(){var t,e=r(48765)("iframe"),n=i.length;for(e.style.display="none",r(92477).appendChild(e),e.src="javascript:",(t=e.contentWindow.document).open(),t.write("<script>document.F=Object<\/script>"),t.close(),createDict=t.F;n--;)delete createDict.prototype[i[n]];return createDict()};t.exports=Object.create||function create(t,e){var r;return null!==t?(Empty.prototype=n(t),r=new Empty,Empty.prototype=null,r[u]=t):r=createDict(),void 0===e?r:o(r,e)}},60510:(t,e,r)=>{var n=r(30498),o=r(64457),i=r(12737),u=Object.defineProperty;e.f=r(75179)?Object.defineProperty:function defineProperty(t,e,r){if(n(t),e=i(e,!0),n(r),o)try{return u(t,e,r)}catch(t){}if("get"in r||"set"in r)throw TypeError("Accessors not supported!");return"value"in r&&(t[e]=r.value),t}},36607:(t,e,r)=>{var n=r(60510),o=r(30498),i=r(86425);t.exports=r(75179)?Object.defineProperties:function defineProperties(t,e){o(t);for(var r,u=i(e),s=u.length,a=0;s>a;)n.f(t,r=u[a++],e[r]);return t}},83264:(t,e,r)=>{var n=r(67410),o=r(48439),i=r(1504),u=r(12737),s=r(20657),a=r(64457),c=Object.getOwnPropertyDescriptor;e.f=r(75179)?c:function getOwnPropertyDescriptor(t,e){if(t=i(t),e=u(e,!0),a)try{return c(t,e)}catch(t){}if(s(t,e))return o(!n.f.call(t,e),t[e])}},26084:(t,e,r)=>{var n=r(1504),o=r(8772).f,i={}.toString,u="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];t.exports.f=function getOwnPropertyNames(t){return u&&"[object Window]"==i.call(t)?function(t){try{return o(t)}catch(t){return u.slice()}}(t):o(n(t))}},8772:(t,e,r)=>{var n=r(65326),o=r(31986).concat("length","prototype");e.f=Object.getOwnPropertyNames||function getOwnPropertyNames(t){return n(t,o)}},97739:(t,e)=>{e.f=Object.getOwnPropertySymbols},999:(t,e,r)=>{var n=r(20657),o=r(60061),i=r(18478)("IE_PROTO"),u=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=o(t),n(t,i)?t[i]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},65326:(t,e,r)=>{var n=r(20657),o=r(1504),i=r(69191)(!1),u=r(18478)("IE_PROTO");t.exports=function(t,e){var r,s=o(t),a=0,c=[];for(r in s)r!=u&&n(s,r)&&c.push(r);for(;e.length>a;)n(s,r=e[a++])&&(~i(c,r)||c.push(r));return c}},86425:(t,e,r)=>{var n=r(65326),o=r(31986);t.exports=Object.keys||function keys(t){return n(t,o)}},67410:(t,e)=>{e.f={}.propertyIsEnumerable},57972:(t,e,r)=>{var n=r(98310),o=r(47208),i=r(90472);t.exports=function(t,e){var r=(o.Object||{})[t]||Object[t],u={};u[t]=e(r),n(n.S+n.F*i((function(){r(1)})),"Object",u)}},9480:(t,e,r)=>{var n=r(75179),o=r(86425),i=r(1504),u=r(67410).f;t.exports=function(t){return function(e){for(var r,s=i(e),a=o(s),c=a.length,p=0,f=[];c>p;)r=a[p++],n&&!u.call(s,r)||f.push(t?[r,s[r]]:s[r]);return f}}},48439:t=>{t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},19312:(t,e,r)=>{t.exports=r(62292)},25574:(t,e,r)=>{var n=r(39632),o=r(30498),check=function(t,e){if(o(t),!n(e)&&null!==e)throw TypeError(e+": can't set as prototype!")};t.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(t,e,n){try{(n=r(61725)(Function.call,r(83264).f(Object.prototype,"__proto__").set,2))(t,[]),e=!(t instanceof Array)}catch(t){e=!0}return function setPrototypeOf(t,r){return check(t,r),e?t.__proto__=r:n(t,r),t}}({},!1):void 0),check}},2413:(t,e,r)=>{var n=r(60510).f,o=r(20657),i=r(24300)("toStringTag");t.exports=function(t,e,r){t&&!o(t=r?t:t.prototype,i)&&n(t,i,{configurable:!0,value:e})}},18478:(t,e,r)=>{var n=r(29990)("keys"),o=r(54251);t.exports=function(t){return n[t]||(n[t]=o(t))}},29990:(t,e,r)=>{var n=r(47208),o=r(43280),i="__core-js_shared__",u=o[i]||(o[i]={});(t.exports=function(t,e){return u[t]||(u[t]=void 0!==e?e:{})})("versions",[]).push({version:n.version,mode:r(36794)?"pure":"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})},78502:(t,e,r)=>{var n=r(58290),o=r(18239);t.exports=function(t){return function(e,r){var i,u,s=String(o(e)),a=n(r),c=s.length;return a<0||a>=c?t?"":void 0:(i=s.charCodeAt(a))<55296||i>56319||a+1===c||(u=s.charCodeAt(a+1))<56320||u>57343?t?s.charAt(a):i:t?s.slice(a,a+2):u-56320+(i-55296<<10)+65536}}},46723:(t,e,r)=>{var n=r(58290),o=Math.max,i=Math.min;t.exports=function(t,e){return(t=n(t))<0?o(t+e,0):i(t,e)}},58290:t=>{var e=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:e)(t)}},1504:(t,e,r)=>{var n=r(13115),o=r(18239);t.exports=function(t){return n(o(t))}},37154:(t,e,r)=>{var n=r(58290),o=Math.min;t.exports=function(t){return t>0?o(n(t),9007199254740991):0}},60061:(t,e,r)=>{var n=r(18239);t.exports=function(t){return Object(n(t))}},12737:(t,e,r)=>{var n=r(39632);t.exports=function(t,e){if(!n(t))return t;var r,o;if(e&&"function"==typeof(r=t.toString)&&!n(o=r.call(t)))return o;if("function"==typeof(r=t.valueOf)&&!n(o=r.call(t)))return o;if(!e&&"function"==typeof(r=t.toString)&&!n(o=r.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},54251:t=>{var e=0,r=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++e+r).toString(36))}},31164:(t,e,r)=>{var n=r(43280),o=r(47208),i=r(36794),u=r(7273),s=r(60510).f;t.exports=function(t){var e=o.Symbol||(o.Symbol=i?{}:n.Symbol||{});"_"==t.charAt(0)||t in e||s(e,t,{value:u.f(t)})}},7273:(t,e,r)=>{e.f=r(24300)},24300:(t,e,r)=>{var n=r(29990)("wks"),o=r(54251),i=r(43280).Symbol,u="function"==typeof i;(t.exports=function(t){return n[t]||(n[t]=u&&i[t]||(u?i:o)("Symbol."+t))}).store=n},84411:(t,e,r)=>{"use strict";var n=r(29697),o=r(9329),i=r(79105),u=r(1504);t.exports=r(6125)(Array,"Array",(function(t,e){this._t=u(t),this._i=0,this._k=e}),(function(){var t=this._t,e=this._k,r=this._i++;return!t||r>=t.length?(this._t=void 0,o(1)):o(0,"keys"==e?r:"values"==e?t[r]:[r,t[r]])}),"values"),i.Arguments=i.Array,n("keys"),n("values"),n("entries")},30785:(t,e,r)=>{var n=r(98310);n(n.S,"Object",{create:r(82488)})},40168:(t,e,r)=>{var n=r(98310);n(n.S+n.F*!r(75179),"Object",{defineProperty:r(60510).f})},18576:(t,e,r)=>{var n=r(1504),o=r(83264).f;r(57972)("getOwnPropertyDescriptor",(function(){return function getOwnPropertyDescriptor(t,e){return o(n(t),e)}}))},4840:(t,e,r)=>{var n=r(60061),o=r(999);r(57972)("getPrototypeOf",(function(){return function getPrototypeOf(t){return o(n(t))}}))},13890:(t,e,r)=>{var n=r(98310);n(n.S,"Object",{setPrototypeOf:r(25574).set})},70285:()=>{},11320:(t,e,r)=>{var n=r(98310),o=r(82488),i=r(26610),u=r(30498),s=r(39632),a=r(90472),c=r(45515),p=(r(43280).Reflect||{}).construct,f=a((function(){function F(){}return!(p((function(){}),[],F)instanceof F)})),l=!a((function(){p((function(){}))}));n(n.S+n.F*(f||l),"Reflect",{construct:function construct(t,e){i(t),u(e);var r=arguments.length<3?t:i(arguments[2]);if(l&&!f)return p(t,e,r);if(t==r){switch(e.length){case 0:return new t;case 1:return new t(e[0]);case 2:return new t(e[0],e[1]);case 3:return new t(e[0],e[1],e[2]);case 4:return new t(e[0],e[1],e[2],e[3])}var n=[null];return n.push.apply(n,e),new(c.apply(t,n))}var a=r.prototype,y=o(s(a)?a:Object.prototype),v=Function.apply.call(t,y,e);return s(v)?v:y}})},36600:(t,e,r)=>{var n=r(83264),o=r(999),i=r(20657),u=r(98310),s=r(39632),a=r(30498);u(u.S,"Reflect",{get:function get(t,e){var r,u,c=arguments.length<3?t:arguments[2];return a(t)===c?t[e]:(r=n.f(t,e))?i(r,"value")?r.value:void 0!==r.get?r.get.call(c):void 0:s(u=o(t))?get(u,e,c):void 0}})},99572:(t,e,r)=>{"use strict";var n=r(78502)(!0);r(6125)(String,"String",(function(t){this._t=String(t),this._i=0}),(function(){var t,e=this._t,r=this._i;return r>=e.length?{value:void 0,done:!0}:(t=n(e,r),this._i+=t.length,{value:t,done:!1})}))},54370:(t,e,r)=>{"use strict";var n=r(43280),o=r(20657),i=r(75179),u=r(98310),s=r(19312),a=r(6758).KEY,c=r(90472),p=r(29990),f=r(2413),l=r(54251),y=r(24300),v=r(7273),d=r(31164),h=r(42266),_=r(7359),x=r(30498),m=r(39632),b=r(60061),g=r(1504),w=r(12737),O=r(48439),S=r(82488),P=r(26084),j=r(83264),M=r(97739),I=r(60510),k=r(86425),E=j.f,T=I.f,A=P.f,B=n.Symbol,L=n.JSON,C=L&&L.stringify,N=y("_hidden"),D=y("toPrimitive"),R={}.propertyIsEnumerable,q=p("symbol-registry"),G=p("symbols"),Q=p("op-symbols"),W=Object.prototype,V="function"==typeof B&&!!M.f,$=n.QObject,z=!$||!$.prototype||!$.prototype.findChild,H=i&&c((function(){return 7!=S(T({},"a",{get:function(){return T(this,"a",{value:7}).a}})).a}))?function(t,e,r){var n=E(W,e);n&&delete W[e],T(t,e,r),n&&t!==W&&T(W,e,n)}:T,wrap=function(t){var e=G[t]=S(B.prototype);return e._k=t,e},J=V&&"symbol"==typeof B.iterator?function(t){return"symbol"==typeof t}:function(t){return t instanceof B},K=function defineProperty(t,e,r){return t===W&&K(Q,e,r),x(t),e=w(e,!0),x(r),o(G,e)?(r.enumerable?(o(t,N)&&t[N][e]&&(t[N][e]=!1),r=S(r,{enumerable:O(0,!1)})):(o(t,N)||T(t,N,O(1,{})),t[N][e]=!0),H(t,e,r)):T(t,e,r)},U=function defineProperties(t,e){x(t);for(var r,n=h(e=g(e)),o=0,i=n.length;i>o;)K(t,r=n[o++],e[r]);return t},Y=function propertyIsEnumerable(t){var e=R.call(this,t=w(t,!0));return!(this===W&&o(G,t)&&!o(Q,t))&&(!(e||!o(this,t)||!o(G,t)||o(this,N)&&this[N][t])||e)},X=function getOwnPropertyDescriptor(t,e){if(t=g(t),e=w(e,!0),t!==W||!o(G,e)||o(Q,e)){var r=E(t,e);return!r||!o(G,e)||o(t,N)&&t[N][e]||(r.enumerable=!0),r}},Z=function getOwnPropertyNames(t){for(var e,r=A(g(t)),n=[],i=0;r.length>i;)o(G,e=r[i++])||e==N||e==a||n.push(e);return n},tt=function getOwnPropertySymbols(t){for(var e,r=t===W,n=A(r?Q:g(t)),i=[],u=0;n.length>u;)!o(G,e=n[u++])||r&&!o(W,e)||i.push(G[e]);return i};V||(s((B=function Symbol(){if(this instanceof B)throw TypeError("Symbol is not a constructor!");var t=l(arguments.length>0?arguments[0]:void 0),$set=function(e){this===W&&$set.call(Q,e),o(this,N)&&o(this[N],t)&&(this[N][t]=!1),H(this,t,O(1,e))};return i&&z&&H(W,t,{configurable:!0,set:$set}),wrap(t)}).prototype,"toString",(function toString(){return this._k})),j.f=X,I.f=K,r(8772).f=P.f=Z,r(67410).f=Y,M.f=tt,i&&!r(36794)&&s(W,"propertyIsEnumerable",Y,!0),v.f=function(t){return wrap(y(t))}),u(u.G+u.W+u.F*!V,{Symbol:B});for(var et="hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),rt=0;et.length>rt;)y(et[rt++]);for(var nt=k(y.store),ot=0;nt.length>ot;)d(nt[ot++]);u(u.S+u.F*!V,"Symbol",{for:function(t){return o(q,t+="")?q[t]:q[t]=B(t)},keyFor:function keyFor(t){if(!J(t))throw TypeError(t+" is not a symbol!");for(var e in q)if(q[e]===t)return e},useSetter:function(){z=!0},useSimple:function(){z=!1}}),u(u.S+u.F*!V,"Object",{create:function create(t,e){return void 0===e?S(t):U(S(t),e)},defineProperty:K,defineProperties:U,getOwnPropertyDescriptor:X,getOwnPropertyNames:Z,getOwnPropertySymbols:tt});var it=c((function(){M.f(1)}));u(u.S+u.F*it,"Object",{getOwnPropertySymbols:function getOwnPropertySymbols(t){return M.f(b(t))}}),L&&u(u.S+u.F*(!V||c((function(){var t=B();return"[null]"!=C([t])||"{}"!=C({a:t})||"{}"!=C(Object(t))}))),"JSON",{stringify:function stringify(t){for(var e,r,n=[t],o=1;arguments.length>o;)n.push(arguments[o++]);if(r=e=n[1],(m(e)||void 0!==t)&&!J(t))return _(e)||(e=function(t,e){if("function"==typeof r&&(e=r.call(this,t,e)),!J(e))return e}),n[1]=e,C.apply(L,n)}}),B.prototype[D]||r(62292)(B.prototype,D,B.prototype.valueOf),f(B,"Symbol"),f(Math,"Math",!0),f(n.JSON,"JSON",!0)},57188:(t,e,r)=>{var n=r(98310),o=r(9480)(!1);n(n.S,"Object",{values:function values(t){return o(t)}})},87573:(t,e,r)=>{r(31164)("asyncIterator")},97224:(t,e,r)=>{r(31164)("observable")},74114:(t,e,r)=>{r(84411);for(var n=r(43280),o=r(62292),i=r(79105),u=r(24300)("toStringTag"),s="CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList".split(","),a=0;a<s.length;a++){var c=s[a],p=n[c],f=p&&p.prototype;f&&!f[u]&&o(f,u,c),i[c]=i.Array}},22761:t=>{t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},6365:(t,e,r)=>{var n=r(67334);t.exports=function(t){if(!n(t))throw TypeError(t+" is not an object!");return t}},78309:(t,e,r)=>{var n=r(11528),o=r(8467),i=r(26033),u=r(26078),s=r(63531);t.exports=function(t,e){var r=1==t,a=2==t,c=3==t,p=4==t,f=6==t,l=5==t||f,y=e||s;return function(e,s,v){for(var d,h,_=i(e),x=o(_),m=n(s,v,3),b=u(x.length),g=0,w=r?y(e,b):a?y(e,0):void 0;b>g;g++)if((l||g in x)&&(h=m(d=x[g],g,_),t))if(r)w[g]=h;else if(h)switch(t){case 3:return!0;case 5:return d;case 6:return g;case 2:w.push(d)}else if(p)return!1;return f?-1:c||p?p:w}}},81071:(t,e,r)=>{var n=r(67334),o=r(99141),i=r(62190)("species");t.exports=function(t){var e;return o(t)&&("function"!=typeof(e=t.constructor)||e!==Array&&!o(e.prototype)||(e=void 0),n(e)&&null===(e=e[i])&&(e=void 0)),void 0===e?Array:e}},63531:(t,e,r)=>{var n=r(81071);t.exports=function(t,e){return new(n(t))(e)}},26688:t=>{var e={}.toString;t.exports=function(t){return e.call(t).slice(8,-1)}},60066:t=>{var e=t.exports={version:"2.6.12"};"number"==typeof __e&&(__e=e)},11528:(t,e,r)=>{var n=r(22761);t.exports=function(t,e,r){if(n(t),void 0===e)return t;switch(r){case 1:return function(r){return t.call(e,r)};case 2:return function(r,n){return t.call(e,r,n)};case 3:return function(r,n,o){return t.call(e,r,n,o)}}return function(){return t.apply(e,arguments)}}},61622:t=>{t.exports=function(t){if(null==t)throw TypeError("Can't call method on  "+t);return t}},36628:(t,e,r)=>{t.exports=!r(48625)((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},5050:(t,e,r)=>{var n=r(67334),o=r(38113).document,i=n(o)&&n(o.createElement);t.exports=function(t){return i?o.createElement(t):{}}},65772:(t,e,r)=>{var n=r(38113),o=r(60066),i=r(74216),u=r(17738),s=r(11528),$export=function(t,e,r){var a,c,p,f,l=t&$export.F,y=t&$export.G,v=t&$export.S,d=t&$export.P,h=t&$export.B,_=y?n:v?n[e]||(n[e]={}):(n[e]||{}).prototype,x=y?o:o[e]||(o[e]={}),m=x.prototype||(x.prototype={});for(a in y&&(r=e),r)p=((c=!l&&_&&void 0!==_[a])?_:r)[a],f=h&&c?s(p,n):d&&"function"==typeof p?s(Function.call,p):p,_&&u(_,a,p,t&$export.U),x[a]!=p&&i(x,a,f),d&&m[a]!=p&&(m[a]=p)};n.core=o,$export.F=1,$export.G=2,$export.S=4,$export.P=8,$export.B=16,$export.W=32,$export.U=64,$export.R=128,t.exports=$export},48625:t=>{t.exports=function(t){try{return!!t()}catch(t){return!0}}},20646:(t,e,r)=>{t.exports=r(8655)("native-function-to-string",Function.toString)},38113:t=>{var e=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=e)},54040:t=>{var e={}.hasOwnProperty;t.exports=function(t,r){return e.call(t,r)}},74216:(t,e,r)=>{var n=r(98558),o=r(36061);t.exports=r(36628)?function(t,e,r){return n.f(t,e,o(1,r))}:function(t,e,r){return t[e]=r,t}},5100:(t,e,r)=>{t.exports=!r(36628)&&!r(48625)((function(){return 7!=Object.defineProperty(r(5050)("div"),"a",{get:function(){return 7}}).a}))},8467:(t,e,r)=>{var n=r(26688);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==n(t)?t.split(""):Object(t)}},99141:(t,e,r)=>{var n=r(26688);t.exports=Array.isArray||function isArray(t){return"Array"==n(t)}},67334:t=>{t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},81422:t=>{t.exports=!1},98558:(t,e,r)=>{var n=r(6365),o=r(5100),i=r(31382),u=Object.defineProperty;e.f=r(36628)?Object.defineProperty:function defineProperty(t,e,r){if(n(t),e=i(e,!0),n(r),o)try{return u(t,e,r)}catch(t){}if("get"in r||"set"in r)throw TypeError("Accessors not supported!");return"value"in r&&(t[e]=r.value),t}},36061:t=>{t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},17738:(t,e,r)=>{var n=r(38113),o=r(74216),i=r(54040),u=r(25078)("src"),s=r(20646),a="toString",c=(""+s).split(a);r(60066).inspectSource=function(t){return s.call(t)},(t.exports=function(t,e,r,s){var a="function"==typeof r;a&&(i(r,"name")||o(r,"name",e)),t[e]!==r&&(a&&(i(r,u)||o(r,u,t[e]?""+t[e]:c.join(String(e)))),t===n?t[e]=r:s?t[e]?t[e]=r:o(t,e,r):(delete t[e],o(t,e,r)))})(Function.prototype,a,(function toString(){return"function"==typeof this&&this[u]||s.call(this)}))},8655:(t,e,r)=>{var n=r(60066),o=r(38113),i="__core-js_shared__",u=o[i]||(o[i]={});(t.exports=function(t,e){return u[t]||(u[t]=void 0!==e?e:{})})("versions",[]).push({version:n.version,mode:r(81422)?"pure":"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})},10225:(t,e,r)=>{"use strict";var n=r(48625);t.exports=function(t,e){return!!t&&n((function(){e?t.call(null,(function(){}),1):t.call(null)}))}},3338:t=>{var e=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:e)(t)}},26078:(t,e,r)=>{var n=r(3338),o=Math.min;t.exports=function(t){return t>0?o(n(t),9007199254740991):0}},26033:(t,e,r)=>{var n=r(61622);t.exports=function(t){return Object(n(t))}},31382:(t,e,r)=>{var n=r(67334);t.exports=function(t,e){if(!n(t))return t;var r,o;if(e&&"function"==typeof(r=t.toString)&&!n(o=r.call(t)))return o;if("function"==typeof(r=t.valueOf)&&!n(o=r.call(t)))return o;if(!e&&"function"==typeof(r=t.toString)&&!n(o=r.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},25078:t=>{var e=0,r=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++e+r).toString(36))}},62190:(t,e,r)=>{var n=r(8655)("wks"),o=r(25078),i=r(38113).Symbol,u="function"==typeof i;(t.exports=function(t){return n[t]||(n[t]=u&&i[t]||(u?i:o)("Symbol."+t))}).store=n},90286:(t,e,r)=>{"use strict";var n=r(65772),o=r(78309)(1);n(n.P+n.F*!r(10225)([].map,!0),"Array",{map:function map(t){return o(this,t,arguments[1])}})}},e={};function __webpack_require__(r){var n=e[r];if(void 0!==n)return n.exports;var o=e[r]={exports:{}};return t[r](o,o.exports,__webpack_require__),o.exports}(()=>{"use strict";var t=__webpack_require__(67971);__webpack_require__(90286);var e=t(__webpack_require__(35657)),r=t(__webpack_require__(11959)),n=t(__webpack_require__(39041)),o=t(__webpack_require__(76700)),i=t(__webpack_require__(44263)),u=t(__webpack_require__(77371)),s=t(__webpack_require__(68537)),a=function(t){(0,u.default)(AdminBar,t);var a=(0,s.default)(AdminBar);function AdminBar(){return(0,r.default)(this,AdminBar),a.apply(this,arguments)}return(0,n.default)(AdminBar,[{key:"getDefaultSettings",value:function getDefaultSettings(){return{prefixes:{adminBarId:"wp-admin-bar-"},classes:{adminBarItem:"ab-item",adminBarItemTitle:"elementor-edit-link-title",adminBarItemSubTitle:"elementor-edit-link-type",adminBarNonLinkItem:"ab-empty-item",adminBarSubItemsWrapper:"ab-sub-wrapper",adminBarSubItems:"ab-submenu"},selectors:{adminBar:"#wp-admin-bar-root-default",editMenuItem:"#wp-admin-bar-edit",newMenuItem:"#wp-admin-bar-new-content"}}}},{key:"getDefaultElements",value:function getDefaultElements(){var t=this.getSettings("selectors"),e=t.adminBar,r=t.editMenuItem,n=t.newMenuItem;return{$adminBar:jQuery(e),$editMenuItem:jQuery(r),$newMenuItem:jQuery(n)}}},{key:"onInit",value:function onInit(){(0,o.default)((0,i.default)(AdminBar.prototype),"onInit",this).call(this),this.createMenu(elementorAdminBarConfig)}},{key:"createMenu",value:function createMenu(t){var r=this.createMenuItems((0,e.default)(t));this.elements.$editMenuItem.length?this.elements.$editMenuItem.after(r):this.elements.$newMenuItem?this.elements.$newMenuItem.after(r):this.elements.$adminBar.append(r)}},{key:"createMenuItems",value:function createMenuItems(t){var e=this;return t.map((function(t){return e.createMenuItem(t)}))}},{key:"createMenuItem",value:function createMenuItem(t){var r=t.children?(0,e.default)(t.children):[],n="".concat(this.getSettings("prefixes.adminBarId")).concat(t.id),o=jQuery("<span>",{class:this.getSettings("classes.adminBarItemTitle"),html:t.title}),i=t.sub_title?jQuery("<span>",{class:this.getSettings("classes.adminBarItemSubTitle"),html:t.sub_title}):null,u=jQuery(t.href?"<a>":"<div>",{"aria-haspopup":!!r.length||null,class:[this.getSettings("classes.adminBarItem"),t.href?"":this.getSettings("classes.adminBarNonLinkItem"),t.class].join(" "),href:t.href}).append([o,i]);return jQuery("<li>",{id:n,class:r.length?"menupop":""+(t.parent_class||"elementor-general-section")}).append([u,r.length?this.createSubMenuItems(n,r):null])}},{key:"createSubMenuItems",value:function createSubMenuItems(t,e){var r=jQuery("<ul>",{class:this.getSettings("classes.adminBarSubItems"),id:"".concat(t,"-default")}).append(this.createMenuItems(e));return jQuery("<div>",{class:this.getSettings("classes.adminBarSubItemsWrapper")}).append(r)}}]),AdminBar}(elementorModules.ViewModule);document.addEventListener("DOMContentLoaded",(function(){return new a}))})()})();assets/js/new-template.min.js000064400000003510151327220410012200 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(()=>{"use strict";var e,t,o={70119:(e,t,o)=>{var n=o(18194).__,i=o(97631);e.exports=elementorModules.common.views.modal.Layout.extend({getModalOptions:function getModalOptions(){return{id:"elementor-new-template-modal"}},getLogoOptions:function getLogoOptions(){return{title:n("New Template","elementor")}},initialize:function initialize(){elementorModules.common.views.modal.Layout.prototype.initialize.apply(this,arguments),this.showLogo(),this.showContentView()},showContentView:function showContentView(){this.modalContent.show(new i)}})},97631:e=>{e.exports=Marionette.ItemView.extend({id:"elementor-new-template-dialog-content",template:"#tmpl-elementor-new-template",ui:{},events:{},onRender:function onRender(){}})},18194:e=>{e.exports=wp.i18n}},n={};function __webpack_require__(e){var t=n[e];if(void 0!==t)return t.exports;var i=n[e]={exports:{}};return o[e](i,i.exports,__webpack_require__),i.exports}e=__webpack_require__(70119),t=elementorModules.ViewModule.extend({getDefaultSettings:function getDefaultSettings(){return{selectors:{addButton:".page-title-action:first, #elementor-template-library-add-new"}}},getDefaultElements:function getDefaultElements(){var e=this.getSettings("selectors");return{$addButton:jQuery(e.addButton)}},bindEvents:function bindEvents(){this.elements.$addButton.on("click",this.onAddButtonClick),elementorCommon.elements.$window.on("hashchange",this.showModalByHash.bind(this))},showModalByHash:function showModalByHash(){"#add_new"===location.hash&&(this.layout.showModal(),location.hash="")},onInit:function onInit(){elementorModules.ViewModule.prototype.onInit.apply(this,arguments),this.layout=new e,this.showModalByHash()},onAddButtonClick:function onAddButtonClick(e){e.preventDefault(),this.layout.showModal()}}),jQuery((function(){window.elementorNewTemplate=new t}))})();assets/js/app-packages.js000064400002653324151327220410011370 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
/******/ (() => { // webpackBootstrap
/******/ 	var __webpack_modules__ = ({

/***/ "../core/app/assets/js/molecules/collapse.scss":
/*!*****************************************************!*\
  !*** ../core/app/assets/js/molecules/collapse.scss ***!
  \*****************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/assets/js/molecules/upload-file.scss":
/*!********************************************************!*\
  !*** ../core/app/assets/js/molecules/upload-file.scss ***!
  \********************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/assets/js/organisms/drop-zone.scss":
/*!******************************************************!*\
  !*** ../core/app/assets/js/organisms/drop-zone.scss ***!
  \******************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/assets/js/organisms/wizard-footer.scss":
/*!**********************************************************!*\
  !*** ../core/app/assets/js/organisms/wizard-footer.scss ***!
  \**********************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/assets/js/ui/atoms/box.scss":
/*!***********************************************!*\
  !*** ../core/app/assets/js/ui/atoms/box.scss ***!
  \***********************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/assets/js/ui/atoms/checkbox.scss":
/*!****************************************************!*\
  !*** ../core/app/assets/js/ui/atoms/checkbox.scss ***!
  \****************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/assets/js/ui/atoms/css-grid.scss":
/*!****************************************************!*\
  !*** ../core/app/assets/js/ui/atoms/css-grid.scss ***!
  \****************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/assets/js/ui/atoms/drag-drop.scss":
/*!*****************************************************!*\
  !*** ../core/app/assets/js/ui/atoms/drag-drop.scss ***!
  \*****************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/assets/js/ui/atoms/text-field.scss":
/*!******************************************************!*\
  !*** ../core/app/assets/js/ui/atoms/text-field.scss ***!
  \******************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/assets/js/ui/card/card.scss":
/*!***********************************************!*\
  !*** ../core/app/assets/js/ui/card/card.scss ***!
  \***********************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/assets/js/ui/dialog/dialog.scss":
/*!***************************************************!*\
  !*** ../core/app/assets/js/ui/dialog/dialog.scss ***!
  \***************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/assets/js/ui/grid/grid.scss":
/*!***********************************************!*\
  !*** ../core/app/assets/js/ui/grid/grid.scss ***!
  \***********************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/assets/js/ui/menu/menu-item.scss":
/*!****************************************************!*\
  !*** ../core/app/assets/js/ui/menu/menu-item.scss ***!
  \****************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/assets/js/ui/menu/menu.scss":
/*!***********************************************!*\
  !*** ../core/app/assets/js/ui/menu/menu.scss ***!
  \***********************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/assets/js/ui/modal/modal.scss":
/*!*************************************************!*\
  !*** ../core/app/assets/js/ui/modal/modal.scss ***!
  \*************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/assets/js/ui/molecules/add-new-button.scss":
/*!**************************************************************!*\
  !*** ../core/app/assets/js/ui/molecules/add-new-button.scss ***!
  \**************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/assets/js/ui/molecules/inline-link.scss":
/*!***********************************************************!*\
  !*** ../core/app/assets/js/ui/molecules/inline-link.scss ***!
  \***********************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/assets/js/ui/molecules/list.scss":
/*!****************************************************!*\
  !*** ../core/app/assets/js/ui/molecules/list.scss ***!
  \****************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/assets/js/ui/molecules/notice.scss":
/*!******************************************************!*\
  !*** ../core/app/assets/js/ui/molecules/notice.scss ***!
  \******************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/assets/js/ui/molecules/popover.scss":
/*!*******************************************************!*\
  !*** ../core/app/assets/js/ui/molecules/popover.scss ***!
  \*******************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/assets/js/ui/molecules/select2.scss":
/*!*******************************************************!*\
  !*** ../core/app/assets/js/ui/molecules/select2.scss ***!
  \*******************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/import-export/assets/js/pages/export/export-complete/export-complete.scss":
/*!*****************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/pages/export/export-complete/export-complete.scss ***!
  \*****************************************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/import-export/assets/js/pages/export/export-kit/export-kit.scss":
/*!*******************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/pages/export/export-kit/export-kit.scss ***!
  \*******************************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/import-export/assets/js/pages/import/import-kit/import-kit.scss":
/*!*******************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/pages/import/import-kit/import-kit.scss ***!
  \*******************************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/import-export/assets/js/pages/import/import-resolver/import-resolver.scss":
/*!*****************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/pages/import/import-resolver/import-resolver.scss ***!
  \*****************************************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/content-layout/content-layout.scss":
/*!*********************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/content-layout/content-layout.scss ***!
  \*********************************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/info-modal/info-modal.scss":
/*!*************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/info-modal/info-modal.scss ***!
  \*************************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/kit-content/components/templates-features/templates-features.scss":
/*!****************************************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/kit-content/components/templates-features/templates-features.scss ***!
  \****************************************************************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/kit-content/kit-content.scss":
/*!***************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/kit-content/kit-content.scss ***!
  \***************************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/kit-data/kit-data.scss":
/*!*********************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/kit-data/kit-data.scss ***!
  \*********************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/import-export/assets/js/ui/page-header/page-header.scss":
/*!***********************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/ui/page-header/page-header.scss ***!
  \***********************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/import-export/assets/js/ui/panel/panel.scss":
/*!***********************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/ui/panel/panel.scss ***!
  \***********************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/import-export/assets/js/ui/wizard-step/wizard-step.scss":
/*!***********************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/ui/wizard-step/wizard-step.scss ***!
  \***********************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/site-editor/assets/js/molecules/site-part.scss":
/*!**************************************************************************!*\
  !*** ../core/app/modules/site-editor/assets/js/molecules/site-part.scss ***!
  \**************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/site-editor/assets/js/organisms/menu.scss":
/*!*********************************************************************!*\
  !*** ../core/app/modules/site-editor/assets/js/organisms/menu.scss ***!
  \*********************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/site-editor/assets/js/pages/promotion.scss":
/*!**********************************************************************!*\
  !*** ../core/app/modules/site-editor/assets/js/pages/promotion.scss ***!
  \**********************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/site-editor/assets/js/templates/site-editor.scss":
/*!****************************************************************************!*\
  !*** ../core/app/modules/site-editor/assets/js/templates/site-editor.scss ***!
  \****************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/site-editor/assets/scss/loading.scss":
/*!****************************************************************!*\
  !*** ../core/app/modules/site-editor/assets/scss/loading.scss ***!
  \****************************************************************/
/***/ (() => {



/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/array/from.js":
/*!********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/array/from.js ***!
  \********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/array/from */ "../node_modules/core-js/library/fn/array/from.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/array/is-array */ "../node_modules/core-js/library/fn/array/is-array.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/json/stringify.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/json/stringify.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/json/stringify */ "../node_modules/core-js/library/fn/json/stringify.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/assign.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/assign.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/assign */ "../node_modules/core-js/library/fn/object/assign.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/create.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/create.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/create */ "../node_modules/core-js/library/fn/object/create.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/define-properties.js":
/*!**********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/define-properties.js ***!
  \**********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/define-properties */ "../node_modules/core-js/library/fn/object/define-properties.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js":
/*!********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js ***!
  \********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/define-property */ "../node_modules/core-js/library/fn/object/define-property.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/entries.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/entries */ "../node_modules/core-js/library/fn/object/entries.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js":
/*!********************************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js ***!
  \********************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/get-own-property-descriptor */ "../node_modules/core-js/library/fn/object/get-own-property-descriptor.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptors.js":
/*!*********************************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptors.js ***!
  \*********************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/get-own-property-descriptors */ "../node_modules/core-js/library/fn/object/get-own-property-descriptors.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-symbols.js":
/*!*****************************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-symbols.js ***!
  \*****************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/get-own-property-symbols */ "../node_modules/core-js/library/fn/object/get-own-property-symbols.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/get-prototype-of.js":
/*!*********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/get-prototype-of.js ***!
  \*********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/get-prototype-of */ "../node_modules/core-js/library/fn/object/get-prototype-of.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/keys.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/keys */ "../node_modules/core-js/library/fn/object/keys.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js":
/*!*********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js ***!
  \*********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/set-prototype-of */ "../node_modules/core-js/library/fn/object/set-prototype-of.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/parse-int.js":
/*!*******************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/parse-int.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/parse-int */ "../node_modules/core-js/library/fn/parse-int.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js":
/*!***************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js ***!
  \***************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/reflect/construct */ "../node_modules/core-js/library/fn/reflect/construct.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/reflect/get.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/reflect/get.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/reflect/get */ "../node_modules/core-js/library/fn/reflect/get.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js":
/*!****************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/symbol.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/symbol */ "../node_modules/core-js/library/fn/symbol/index.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js":
/*!*************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js ***!
  \*************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/symbol/iterator */ "../node_modules/core-js/library/fn/symbol/iterator.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/weak-map.js":
/*!******************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/weak-map.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/weak-map */ "../node_modules/core-js/library/fn/weak-map.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/arrayLikeToArray.js":
/*!**************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/arrayLikeToArray.js ***!
  \**************************************************************************/
/***/ ((module) => {

function _arrayLikeToArray(arr, len) {
  if (len == null || len > arr.length) len = arr.length;

  for (var i = 0, arr2 = new Array(len); i < len; i++) {
    arr2[i] = arr[i];
  }

  return arr2;
}

module.exports = _arrayLikeToArray;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/arrayWithHoles.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/arrayWithHoles.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Array$isArray = __webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js");

function _arrayWithHoles(arr) {
  if (_Array$isArray(arr)) return arr;
}

module.exports = _arrayWithHoles;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/arrayWithoutHoles.js":
/*!***************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/arrayWithoutHoles.js ***!
  \***************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Array$isArray = __webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js");

var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/arrayLikeToArray.js");

function _arrayWithoutHoles(arr) {
  if (_Array$isArray(arr)) return arrayLikeToArray(arr);
}

module.exports = _arrayWithoutHoles;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js":
/*!*******************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js ***!
  \*******************************************************************************/
/***/ ((module) => {

function _assertThisInitialized(self) {
  if (self === void 0) {
    throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
  }

  return self;
}

module.exports = _assertThisInitialized;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js ***!
  \************************************************************************/
/***/ ((module) => {

function _classCallCheck(instance, Constructor) {
  if (!(instance instanceof Constructor)) {
    throw new TypeError("Cannot call a class as a function");
  }
}

module.exports = _classCallCheck;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/createClass.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

function _defineProperties(target, props) {
  for (var i = 0; i < props.length; i++) {
    var descriptor = props[i];
    descriptor.enumerable = descriptor.enumerable || false;
    descriptor.configurable = true;
    if ("value" in descriptor) descriptor.writable = true;

    _Object$defineProperty(target, descriptor.key, descriptor);
  }
}

function _createClass(Constructor, protoProps, staticProps) {
  if (protoProps) _defineProperties(Constructor.prototype, protoProps);
  if (staticProps) _defineProperties(Constructor, staticProps);
  return Constructor;
}

module.exports = _createClass;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/createForOfIteratorHelper.js":
/*!***********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/createForOfIteratorHelper.js ***!
  \***********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Symbol = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol */ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js");

var _Symbol$iterator = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/iterator */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js");

var _Array$isArray = __webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js");

var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js");

function _createForOfIteratorHelper(o, allowArrayLike) {
  var it = typeof _Symbol !== "undefined" && o[_Symbol$iterator] || o["@@iterator"];

  if (!it) {
    if (_Array$isArray(o) || (it = unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") {
      if (it) o = it;
      var i = 0;

      var F = function F() {};

      return {
        s: F,
        n: function n() {
          if (i >= o.length) return {
            done: true
          };
          return {
            done: false,
            value: o[i++]
          };
        },
        e: function e(_e) {
          throw _e;
        },
        f: F
      };
    }

    throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
  }

  var normalCompletion = true,
      didErr = false,
      err;
  return {
    s: function s() {
      it = it.call(o);
    },
    n: function n() {
      var step = it.next();
      normalCompletion = step.done;
      return step;
    },
    e: function e(_e2) {
      didErr = true;
      err = _e2;
    },
    f: function f() {
      try {
        if (!normalCompletion && it["return"] != null) it["return"]();
      } finally {
        if (didErr) throw err;
      }
    }
  };
}

module.exports = _createForOfIteratorHelper;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/createSuper.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Reflect$construct = __webpack_require__(/*! @babel/runtime-corejs2/core-js/reflect/construct */ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js");

var getPrototypeOf = __webpack_require__(/*! ./getPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js");

var isNativeReflectConstruct = __webpack_require__(/*! ./isNativeReflectConstruct.js */ "../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js");

var possibleConstructorReturn = __webpack_require__(/*! ./possibleConstructorReturn.js */ "../node_modules/@babel/runtime-corejs2/helpers/possibleConstructorReturn.js");

function _createSuper(Derived) {
  var hasNativeReflectConstruct = isNativeReflectConstruct();
  return function _createSuperInternal() {
    var Super = getPrototypeOf(Derived),
        result;

    if (hasNativeReflectConstruct) {
      var NewTarget = getPrototypeOf(this).constructor;
      result = _Reflect$construct(Super, arguments, NewTarget);
    } else {
      result = Super.apply(this, arguments);
    }

    return possibleConstructorReturn(this, result);
  };
}

module.exports = _createSuper;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

function _defineProperty(obj, key, value) {
  if (key in obj) {
    _Object$defineProperty(obj, key, {
      value: value,
      enumerable: true,
      configurable: true,
      writable: true
    });
  } else {
    obj[key] = value;
  }

  return obj;
}

module.exports = _defineProperty;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/extends.js":
/*!*****************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/extends.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$assign = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/assign */ "../node_modules/@babel/runtime-corejs2/core-js/object/assign.js");

function _extends() {
  module.exports = _extends = _Object$assign || function (target) {
    for (var i = 1; i < arguments.length; i++) {
      var source = arguments[i];

      for (var key in source) {
        if (Object.prototype.hasOwnProperty.call(source, key)) {
          target[key] = source[key];
        }
      }
    }

    return target;
  };

  module.exports.default = module.exports, module.exports.__esModule = true;
  return _extends.apply(this, arguments);
}

module.exports = _extends;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/get.js":
/*!*************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/get.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Reflect$get = __webpack_require__(/*! @babel/runtime-corejs2/core-js/reflect/get */ "../node_modules/@babel/runtime-corejs2/core-js/reflect/get.js");

var _Object$getOwnPropertyDescriptor = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-own-property-descriptor */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js");

var superPropBase = __webpack_require__(/*! ./superPropBase.js */ "../node_modules/@babel/runtime-corejs2/helpers/superPropBase.js");

function _get(target, property, receiver) {
  if (typeof Reflect !== "undefined" && _Reflect$get) {
    module.exports = _get = _Reflect$get;
    module.exports.default = module.exports, module.exports.__esModule = true;
  } else {
    module.exports = _get = function _get(target, property, receiver) {
      var base = superPropBase(target, property);
      if (!base) return;

      var desc = _Object$getOwnPropertyDescriptor(base, property);

      if (desc.get) {
        return desc.get.call(receiver);
      }

      return desc.value;
    };

    module.exports.default = module.exports, module.exports.__esModule = true;
  }

  return _get(target, property, receiver || target);
}

module.exports = _get;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$setPrototypeOf = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/set-prototype-of */ "../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js");

var _Object$getPrototypeOf = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-prototype-of */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-prototype-of.js");

function _getPrototypeOf(o) {
  module.exports = _getPrototypeOf = _Object$setPrototypeOf ? _Object$getPrototypeOf : function _getPrototypeOf(o) {
    return o.__proto__ || _Object$getPrototypeOf(o);
  };
  module.exports.default = module.exports, module.exports.__esModule = true;
  return _getPrototypeOf(o);
}

module.exports = _getPrototypeOf;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js":
/*!******************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/inherits.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$create = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/create */ "../node_modules/@babel/runtime-corejs2/core-js/object/create.js");

var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js");

function _inherits(subClass, superClass) {
  if (typeof superClass !== "function" && superClass !== null) {
    throw new TypeError("Super expression must either be null or a function");
  }

  subClass.prototype = _Object$create(superClass && superClass.prototype, {
    constructor: {
      value: subClass,
      writable: true,
      configurable: true
    }
  });
  if (superClass) setPrototypeOf(subClass, superClass);
}

module.exports = _inherits;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js":
/*!*******************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js ***!
  \*******************************************************************************/
/***/ ((module) => {

function _interopRequireDefault(obj) {
  return obj && obj.__esModule ? obj : {
    "default": obj
  };
}

module.exports = _interopRequireDefault;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js":
/*!********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js ***!
  \********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _typeof = __webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js").default;

var _WeakMap = __webpack_require__(/*! @babel/runtime-corejs2/core-js/weak-map */ "../node_modules/@babel/runtime-corejs2/core-js/weak-map.js");

var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _Object$getOwnPropertyDescriptor = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-own-property-descriptor */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js");

function _getRequireWildcardCache(nodeInterop) {
  if (typeof _WeakMap !== "function") return null;
  var cacheBabelInterop = new _WeakMap();
  var cacheNodeInterop = new _WeakMap();
  return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) {
    return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
  })(nodeInterop);
}

function _interopRequireWildcard(obj, nodeInterop) {
  if (!nodeInterop && obj && obj.__esModule) {
    return obj;
  }

  if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") {
    return {
      "default": obj
    };
  }

  var cache = _getRequireWildcardCache(nodeInterop);

  if (cache && cache.has(obj)) {
    return cache.get(obj);
  }

  var newObj = {};
  var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor;

  for (var key in obj) {
    if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
      var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null;

      if (desc && (desc.get || desc.set)) {
        _Object$defineProperty(newObj, key, desc);
      } else {
        newObj[key] = obj[key];
      }
    }
  }

  newObj["default"] = obj;

  if (cache) {
    cache.set(obj, newObj);
  }

  return newObj;
}

module.exports = _interopRequireWildcard;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js":
/*!**********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js ***!
  \**********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Reflect$construct = __webpack_require__(/*! @babel/runtime-corejs2/core-js/reflect/construct */ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js");

function _isNativeReflectConstruct() {
  if (typeof Reflect === "undefined" || !_Reflect$construct) return false;
  if (_Reflect$construct.sham) return false;
  if (typeof Proxy === "function") return true;

  try {
    Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {}));
    return true;
  } catch (e) {
    return false;
  }
}

module.exports = _isNativeReflectConstruct;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/iterableToArray.js":
/*!*************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/iterableToArray.js ***!
  \*************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Symbol = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol */ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js");

var _Symbol$iterator = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/iterator */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js");

var _Array$from = __webpack_require__(/*! @babel/runtime-corejs2/core-js/array/from */ "../node_modules/@babel/runtime-corejs2/core-js/array/from.js");

function _iterableToArray(iter) {
  if (typeof _Symbol !== "undefined" && iter[_Symbol$iterator] != null || iter["@@iterator"] != null) return _Array$from(iter);
}

module.exports = _iterableToArray;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/iterableToArrayLimit.js":
/*!******************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/iterableToArrayLimit.js ***!
  \******************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Symbol = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol */ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js");

var _Symbol$iterator = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/iterator */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js");

function _iterableToArrayLimit(arr, i) {
  var _i = arr == null ? null : typeof _Symbol !== "undefined" && arr[_Symbol$iterator] || arr["@@iterator"];

  if (_i == null) return;
  var _arr = [];
  var _n = true;
  var _d = false;

  var _s, _e;

  try {
    for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {
      _arr.push(_s.value);

      if (i && _arr.length === i) break;
    }
  } catch (err) {
    _d = true;
    _e = err;
  } finally {
    try {
      if (!_n && _i["return"] != null) _i["return"]();
    } finally {
      if (_d) throw _e;
    }
  }

  return _arr;
}

module.exports = _iterableToArrayLimit;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/nonIterableRest.js":
/*!*************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/nonIterableRest.js ***!
  \*************************************************************************/
/***/ ((module) => {

function _nonIterableRest() {
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
}

module.exports = _nonIterableRest;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/nonIterableSpread.js":
/*!***************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/nonIterableSpread.js ***!
  \***************************************************************************/
/***/ ((module) => {

function _nonIterableSpread() {
  throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
}

module.exports = _nonIterableSpread;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$keys = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js");

var _Object$getOwnPropertySymbols = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-own-property-symbols */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-symbols.js");

var _Object$getOwnPropertyDescriptor = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-own-property-descriptor */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js");

var _Object$getOwnPropertyDescriptors = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-own-property-descriptors */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptors.js");

var _Object$defineProperties = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-properties */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-properties.js");

var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var defineProperty = __webpack_require__(/*! ./defineProperty.js */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js");

function ownKeys(object, enumerableOnly) {
  var keys = _Object$keys(object);

  if (_Object$getOwnPropertySymbols) {
    var symbols = _Object$getOwnPropertySymbols(object);

    if (enumerableOnly) {
      symbols = symbols.filter(function (sym) {
        return _Object$getOwnPropertyDescriptor(object, sym).enumerable;
      });
    }

    keys.push.apply(keys, symbols);
  }

  return keys;
}

function _objectSpread2(target) {
  for (var i = 1; i < arguments.length; i++) {
    var source = arguments[i] != null ? arguments[i] : {};

    if (i % 2) {
      ownKeys(Object(source), true).forEach(function (key) {
        defineProperty(target, key, source[key]);
      });
    } else if (_Object$getOwnPropertyDescriptors) {
      _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source));
    } else {
      ownKeys(Object(source)).forEach(function (key) {
        _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key));
      });
    }
  }

  return target;
}

module.exports = _objectSpread2;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/possibleConstructorReturn.js":
/*!***********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/possibleConstructorReturn.js ***!
  \***********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _typeof = __webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js").default;

var assertThisInitialized = __webpack_require__(/*! ./assertThisInitialized.js */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js");

function _possibleConstructorReturn(self, call) {
  if (call && (_typeof(call) === "object" || typeof call === "function")) {
    return call;
  }

  return assertThisInitialized(self);
}

module.exports = _possibleConstructorReturn;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$setPrototypeOf = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/set-prototype-of */ "../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js");

function _setPrototypeOf(o, p) {
  module.exports = _setPrototypeOf = _Object$setPrototypeOf || function _setPrototypeOf(o, p) {
    o.__proto__ = p;
    return o;
  };

  module.exports.default = module.exports, module.exports.__esModule = true;
  return _setPrototypeOf(o, p);
}

module.exports = _setPrototypeOf;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var arrayWithHoles = __webpack_require__(/*! ./arrayWithHoles.js */ "../node_modules/@babel/runtime-corejs2/helpers/arrayWithHoles.js");

var iterableToArrayLimit = __webpack_require__(/*! ./iterableToArrayLimit.js */ "../node_modules/@babel/runtime-corejs2/helpers/iterableToArrayLimit.js");

var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js");

var nonIterableRest = __webpack_require__(/*! ./nonIterableRest.js */ "../node_modules/@babel/runtime-corejs2/helpers/nonIterableRest.js");

function _slicedToArray(arr, i) {
  return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();
}

module.exports = _slicedToArray;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/superPropBase.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/superPropBase.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var getPrototypeOf = __webpack_require__(/*! ./getPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js");

function _superPropBase(object, property) {
  while (!Object.prototype.hasOwnProperty.call(object, property)) {
    object = getPrototypeOf(object);
    if (object === null) break;
  }

  return object;
}

module.exports = _superPropBase;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/toConsumableArray.js":
/*!***************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/toConsumableArray.js ***!
  \***************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var arrayWithoutHoles = __webpack_require__(/*! ./arrayWithoutHoles.js */ "../node_modules/@babel/runtime-corejs2/helpers/arrayWithoutHoles.js");

var iterableToArray = __webpack_require__(/*! ./iterableToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/iterableToArray.js");

var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js");

var nonIterableSpread = __webpack_require__(/*! ./nonIterableSpread.js */ "../node_modules/@babel/runtime-corejs2/helpers/nonIterableSpread.js");

function _toConsumableArray(arr) {
  return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();
}

module.exports = _toConsumableArray;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js":
/*!****************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/typeof.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Symbol = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol */ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js");

var _Symbol$iterator = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/iterator */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js");

function _typeof(obj) {
  "@babel/helpers - typeof";

  if (typeof _Symbol === "function" && typeof _Symbol$iterator === "symbol") {
    module.exports = _typeof = function _typeof(obj) {
      return typeof obj;
    };

    module.exports.default = module.exports, module.exports.__esModule = true;
  } else {
    module.exports = _typeof = function _typeof(obj) {
      return obj && typeof _Symbol === "function" && obj.constructor === _Symbol && obj !== _Symbol.prototype ? "symbol" : typeof obj;
    };

    module.exports.default = module.exports, module.exports.__esModule = true;
  }

  return _typeof(obj);
}

module.exports = _typeof;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js":
/*!************************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js ***!
  \************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Array$from = __webpack_require__(/*! @babel/runtime-corejs2/core-js/array/from */ "../node_modules/@babel/runtime-corejs2/core-js/array/from.js");

var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/arrayLikeToArray.js");

function _unsupportedIterableToArray(o, minLen) {
  if (!o) return;
  if (typeof o === "string") return arrayLikeToArray(o, minLen);
  var n = Object.prototype.toString.call(o).slice(8, -1);
  if (n === "Object" && o.constructor) n = o.constructor.name;
  if (n === "Map" || n === "Set") return _Array$from(o);
  if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);
}

module.exports = _unsupportedIterableToArray;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@reach/router/es/index.js":
/*!*************************************************!*\
  !*** ../node_modules/@reach/router/es/index.js ***!
  \*************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "Link": () => (/* binding */ Link),
/* harmony export */   "Location": () => (/* binding */ Location),
/* harmony export */   "LocationProvider": () => (/* binding */ LocationProvider),
/* harmony export */   "Match": () => (/* binding */ Match),
/* harmony export */   "Redirect": () => (/* binding */ Redirect),
/* harmony export */   "Router": () => (/* binding */ Router),
/* harmony export */   "ServerLocation": () => (/* binding */ ServerLocation),
/* harmony export */   "createHistory": () => (/* reexport safe */ _lib_history__WEBPACK_IMPORTED_MODULE_6__.createHistory),
/* harmony export */   "createMemorySource": () => (/* reexport safe */ _lib_history__WEBPACK_IMPORTED_MODULE_6__.createMemorySource),
/* harmony export */   "isRedirect": () => (/* binding */ isRedirect),
/* harmony export */   "navigate": () => (/* reexport safe */ _lib_history__WEBPACK_IMPORTED_MODULE_6__.navigate),
/* harmony export */   "redirectTo": () => (/* binding */ redirectTo),
/* harmony export */   "globalHistory": () => (/* reexport safe */ _lib_history__WEBPACK_IMPORTED_MODULE_6__.globalHistory),
/* harmony export */   "matchPath": () => (/* reexport safe */ _lib_utils__WEBPACK_IMPORTED_MODULE_5__.match),
/* harmony export */   "useLocation": () => (/* binding */ useLocation),
/* harmony export */   "useNavigate": () => (/* binding */ useNavigate),
/* harmony export */   "useParams": () => (/* binding */ useParams),
/* harmony export */   "useMatch": () => (/* binding */ useMatch)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var invariant__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! invariant */ "../node_modules/invariant/browser.js");
/* harmony import */ var invariant__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(invariant__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var create_react_context__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! create-react-context */ "../node_modules/create-react-context/lib/index.js");
/* harmony import */ var create_react_context__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(create_react_context__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var react_lifecycles_compat__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! react-lifecycles-compat */ "../node_modules/react-lifecycles-compat/react-lifecycles-compat.es.js");
/* harmony import */ var _lib_utils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./lib/utils */ "../node_modules/@reach/router/es/lib/utils.js");
/* harmony import */ var _lib_history__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./lib/history */ "../node_modules/@reach/router/es/lib/history.js");
var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };

function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }

function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }

function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }

function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }

/* eslint-disable jsx-a11y/anchor-has-content */








////////////////////////////////////////////////////////////////////////////////

var createNamedContext = function createNamedContext(name, defaultValue) {
  var Ctx = create_react_context__WEBPACK_IMPORTED_MODULE_3___default()(defaultValue);
  Ctx.displayName = name;
  return Ctx;
};

////////////////////////////////////////////////////////////////////////////////
// Location Context/Provider
var LocationContext = createNamedContext("Location");

// sets up a listener if there isn't one already so apps don't need to be
// wrapped in some top level provider
var Location = function Location(_ref) {
  var children = _ref.children;
  return react__WEBPACK_IMPORTED_MODULE_0___default().createElement(
    LocationContext.Consumer,
    null,
    function (context) {
      return context ? children(context) : react__WEBPACK_IMPORTED_MODULE_0___default().createElement(
        LocationProvider,
        null,
        children
      );
    }
  );
};

var LocationProvider = function (_React$Component) {
  _inherits(LocationProvider, _React$Component);

  function LocationProvider() {
    var _temp, _this, _ret;

    _classCallCheck(this, LocationProvider);

    for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }

    return _ret = (_temp = (_this = _possibleConstructorReturn(this, _React$Component.call.apply(_React$Component, [this].concat(args))), _this), _this.state = {
      context: _this.getContext(),
      refs: { unlisten: null }
    }, _temp), _possibleConstructorReturn(_this, _ret);
  }

  LocationProvider.prototype.getContext = function getContext() {
    var _props$history = this.props.history,
        navigate = _props$history.navigate,
        location = _props$history.location;

    return { navigate: navigate, location: location };
  };

  LocationProvider.prototype.componentDidCatch = function componentDidCatch(error, info) {
    if (isRedirect(error)) {
      var _navigate = this.props.history.navigate;

      _navigate(error.uri, { replace: true });
    } else {
      throw error;
    }
  };

  LocationProvider.prototype.componentDidUpdate = function componentDidUpdate(prevProps, prevState) {
    if (prevState.context.location !== this.state.context.location) {
      this.props.history._onTransitionComplete();
    }
  };

  LocationProvider.prototype.componentDidMount = function componentDidMount() {
    var _this2 = this;

    var refs = this.state.refs,
        history = this.props.history;

    history._onTransitionComplete();
    refs.unlisten = history.listen(function () {
      Promise.resolve().then(function () {
        // TODO: replace rAF with react deferred update API when it's ready https://github.com/facebook/react/issues/13306
        requestAnimationFrame(function () {
          if (!_this2.unmounted) {
            _this2.setState(function () {
              return { context: _this2.getContext() };
            });
          }
        });
      });
    });
  };

  LocationProvider.prototype.componentWillUnmount = function componentWillUnmount() {
    var refs = this.state.refs;

    this.unmounted = true;
    refs.unlisten();
  };

  LocationProvider.prototype.render = function render() {
    var context = this.state.context,
        children = this.props.children;

    return react__WEBPACK_IMPORTED_MODULE_0___default().createElement(
      LocationContext.Provider,
      { value: context },
      typeof children === "function" ? children(context) : children || null
    );
  };

  return LocationProvider;
}((react__WEBPACK_IMPORTED_MODULE_0___default().Component));

////////////////////////////////////////////////////////////////////////////////


LocationProvider.defaultProps = {
  history: _lib_history__WEBPACK_IMPORTED_MODULE_6__.globalHistory
};
 true ? LocationProvider.propTypes = {
  history: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().object.isRequired)
} : 0;
var ServerLocation = function ServerLocation(_ref2) {
  var url = _ref2.url,
      children = _ref2.children;

  var searchIndex = url.indexOf("?");
  var searchExists = searchIndex > -1;
  var pathname = void 0;
  var search = "";
  var hash = "";

  if (searchExists) {
    pathname = url.substring(0, searchIndex);
    search = url.substring(searchIndex);
  } else {
    pathname = url;
  }

  return react__WEBPACK_IMPORTED_MODULE_0___default().createElement(
    LocationContext.Provider,
    {
      value: {
        location: {
          pathname: pathname,
          search: search,
          hash: hash
        },
        navigate: function navigate() {
          throw new Error("You can't call navigate on the server.");
        }
      }
    },
    children
  );
};
////////////////////////////////////////////////////////////////////////////////
// Sets baseuri and basepath for nested routers and links
var BaseContext = createNamedContext("Base", { baseuri: "/", basepath: "/" });

////////////////////////////////////////////////////////////////////////////////
// The main event, welcome to the show everybody.
var Router = function Router(props) {
  return react__WEBPACK_IMPORTED_MODULE_0___default().createElement(
    BaseContext.Consumer,
    null,
    function (baseContext) {
      return react__WEBPACK_IMPORTED_MODULE_0___default().createElement(
        Location,
        null,
        function (locationContext) {
          return react__WEBPACK_IMPORTED_MODULE_0___default().createElement(RouterImpl, _extends({}, baseContext, locationContext, props));
        }
      );
    }
  );
};

var RouterImpl = function (_React$PureComponent) {
  _inherits(RouterImpl, _React$PureComponent);

  function RouterImpl() {
    _classCallCheck(this, RouterImpl);

    return _possibleConstructorReturn(this, _React$PureComponent.apply(this, arguments));
  }

  RouterImpl.prototype.render = function render() {
    var _props = this.props,
        location = _props.location,
        _navigate2 = _props.navigate,
        basepath = _props.basepath,
        primary = _props.primary,
        children = _props.children,
        baseuri = _props.baseuri,
        _props$component = _props.component,
        component = _props$component === undefined ? "div" : _props$component,
        domProps = _objectWithoutProperties(_props, ["location", "navigate", "basepath", "primary", "children", "baseuri", "component"]);

    var routes = react__WEBPACK_IMPORTED_MODULE_0___default().Children.toArray(children).reduce(function (array, child) {
      var routes = createRoute(basepath)(child);
      return array.concat(routes);
    }, []);
    var pathname = location.pathname;


    var match = (0,_lib_utils__WEBPACK_IMPORTED_MODULE_5__.pick)(routes, pathname);

    if (match) {
      var params = match.params,
          uri = match.uri,
          route = match.route,
          element = match.route.value;

      // remove the /* from the end for child routes relative paths

      basepath = route.default ? basepath : route.path.replace(/\*$/, "");

      var props = _extends({}, params, {
        uri: uri,
        location: location,
        navigate: function navigate(to, options) {
          return _navigate2((0,_lib_utils__WEBPACK_IMPORTED_MODULE_5__.resolve)(to, uri), options);
        }
      });

      var clone = react__WEBPACK_IMPORTED_MODULE_0___default().cloneElement(element, props, element.props.children ? react__WEBPACK_IMPORTED_MODULE_0___default().createElement(
        Router,
        { location: location, primary: primary },
        element.props.children
      ) : undefined);

      // using 'div' for < 16.3 support
      var FocusWrapper = primary ? FocusHandler : component;
      // don't pass any props to 'div'
      var wrapperProps = primary ? _extends({ uri: uri, location: location, component: component }, domProps) : domProps;

      return react__WEBPACK_IMPORTED_MODULE_0___default().createElement(
        BaseContext.Provider,
        { value: { baseuri: uri, basepath: basepath } },
        react__WEBPACK_IMPORTED_MODULE_0___default().createElement(
          FocusWrapper,
          wrapperProps,
          clone
        )
      );
    } else {
      // Not sure if we want this, would require index routes at every level
      // warning(
      //   false,
      //   `<Router basepath="${basepath}">\n\nNothing matched:\n\t${
      //     location.pathname
      //   }\n\nPaths checked: \n\t${routes
      //     .map(route => route.path)
      //     .join(
      //       "\n\t"
      //     )}\n\nTo get rid of this warning, add a default NotFound component as child of Router:
      //   \n\tlet NotFound = () => <div>Not Found!</div>
      //   \n\t<Router>\n\t  <NotFound default/>\n\t  {/* ... */}\n\t</Router>`
      // );
      return null;
    }
  };

  return RouterImpl;
}((react__WEBPACK_IMPORTED_MODULE_0___default().PureComponent));

RouterImpl.defaultProps = {
  primary: true
};


var FocusContext = createNamedContext("Focus");

var FocusHandler = function FocusHandler(_ref3) {
  var uri = _ref3.uri,
      location = _ref3.location,
      component = _ref3.component,
      domProps = _objectWithoutProperties(_ref3, ["uri", "location", "component"]);

  return react__WEBPACK_IMPORTED_MODULE_0___default().createElement(
    FocusContext.Consumer,
    null,
    function (requestFocus) {
      return react__WEBPACK_IMPORTED_MODULE_0___default().createElement(FocusHandlerImpl, _extends({}, domProps, {
        component: component,
        requestFocus: requestFocus,
        uri: uri,
        location: location
      }));
    }
  );
};

// don't focus on initial render
var initialRender = true;
var focusHandlerCount = 0;

var FocusHandlerImpl = function (_React$Component2) {
  _inherits(FocusHandlerImpl, _React$Component2);

  function FocusHandlerImpl() {
    var _temp2, _this4, _ret2;

    _classCallCheck(this, FocusHandlerImpl);

    for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
      args[_key2] = arguments[_key2];
    }

    return _ret2 = (_temp2 = (_this4 = _possibleConstructorReturn(this, _React$Component2.call.apply(_React$Component2, [this].concat(args))), _this4), _this4.state = {}, _this4.requestFocus = function (node) {
      if (!_this4.state.shouldFocus && node) {
        node.focus();
      }
    }, _temp2), _possibleConstructorReturn(_this4, _ret2);
  }

  FocusHandlerImpl.getDerivedStateFromProps = function getDerivedStateFromProps(nextProps, prevState) {
    var initial = prevState.uri == null;
    if (initial) {
      return _extends({
        shouldFocus: true
      }, nextProps);
    } else {
      var myURIChanged = nextProps.uri !== prevState.uri;
      var navigatedUpToMe = prevState.location.pathname !== nextProps.location.pathname && nextProps.location.pathname === nextProps.uri;
      return _extends({
        shouldFocus: myURIChanged || navigatedUpToMe
      }, nextProps);
    }
  };

  FocusHandlerImpl.prototype.componentDidMount = function componentDidMount() {
    focusHandlerCount++;
    this.focus();
  };

  FocusHandlerImpl.prototype.componentWillUnmount = function componentWillUnmount() {
    focusHandlerCount--;
    if (focusHandlerCount === 0) {
      initialRender = true;
    }
  };

  FocusHandlerImpl.prototype.componentDidUpdate = function componentDidUpdate(prevProps, prevState) {
    if (prevProps.location !== this.props.location && this.state.shouldFocus) {
      this.focus();
    }
  };

  FocusHandlerImpl.prototype.focus = function focus() {
    if (false) {}

    var requestFocus = this.props.requestFocus;


    if (requestFocus) {
      requestFocus(this.node);
    } else {
      if (initialRender) {
        initialRender = false;
      } else if (this.node) {
        // React polyfills [autofocus] and it fires earlier than cDM,
        // so we were stealing focus away, this line prevents that.
        if (!this.node.contains(document.activeElement)) {
          this.node.focus();
        }
      }
    }
  };

  FocusHandlerImpl.prototype.render = function render() {
    var _this5 = this;

    var _props2 = this.props,
        children = _props2.children,
        style = _props2.style,
        requestFocus = _props2.requestFocus,
        _props2$component = _props2.component,
        Comp = _props2$component === undefined ? "div" : _props2$component,
        uri = _props2.uri,
        location = _props2.location,
        domProps = _objectWithoutProperties(_props2, ["children", "style", "requestFocus", "component", "uri", "location"]);

    return react__WEBPACK_IMPORTED_MODULE_0___default().createElement(
      Comp,
      _extends({
        style: _extends({ outline: "none" }, style),
        tabIndex: "-1",
        ref: function ref(n) {
          return _this5.node = n;
        }
      }, domProps),
      react__WEBPACK_IMPORTED_MODULE_0___default().createElement(
        FocusContext.Provider,
        { value: this.requestFocus },
        this.props.children
      )
    );
  };

  return FocusHandlerImpl;
}((react__WEBPACK_IMPORTED_MODULE_0___default().Component));

(0,react_lifecycles_compat__WEBPACK_IMPORTED_MODULE_4__.polyfill)(FocusHandlerImpl);

var k = function k() {};

////////////////////////////////////////////////////////////////////////////////
var forwardRef = (react__WEBPACK_IMPORTED_MODULE_0___default().forwardRef);

if (typeof forwardRef === "undefined") {
  forwardRef = function forwardRef(C) {
    return C;
  };
}

var Link = forwardRef(function (_ref4, ref) {
  var innerRef = _ref4.innerRef,
      props = _objectWithoutProperties(_ref4, ["innerRef"]);

  return react__WEBPACK_IMPORTED_MODULE_0___default().createElement(
    BaseContext.Consumer,
    null,
    function (_ref5) {
      var basepath = _ref5.basepath,
          baseuri = _ref5.baseuri;
      return react__WEBPACK_IMPORTED_MODULE_0___default().createElement(
        Location,
        null,
        function (_ref6) {
          var location = _ref6.location,
              navigate = _ref6.navigate;

          var to = props.to,
              state = props.state,
              replace = props.replace,
              _props$getProps = props.getProps,
              getProps = _props$getProps === undefined ? k : _props$getProps,
              anchorProps = _objectWithoutProperties(props, ["to", "state", "replace", "getProps"]);

          var href = (0,_lib_utils__WEBPACK_IMPORTED_MODULE_5__.resolve)(to, baseuri);
          var encodedHref = encodeURI(href);
          var isCurrent = location.pathname === encodedHref;
          var isPartiallyCurrent = (0,_lib_utils__WEBPACK_IMPORTED_MODULE_5__.startsWith)(location.pathname, encodedHref);

          return react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", _extends({
            ref: ref || innerRef,
            "aria-current": isCurrent ? "page" : undefined
          }, anchorProps, getProps({ isCurrent: isCurrent, isPartiallyCurrent: isPartiallyCurrent, href: href, location: location }), {
            href: href,
            onClick: function onClick(event) {
              if (anchorProps.onClick) anchorProps.onClick(event);
              if (shouldNavigate(event)) {
                event.preventDefault();
                var shouldReplace = replace;
                if (typeof replace !== "boolean" && isCurrent) {
                  var _location$state = _extends({}, location.state),
                      key = _location$state.key,
                      restState = _objectWithoutProperties(_location$state, ["key"]);

                  shouldReplace = (0,_lib_utils__WEBPACK_IMPORTED_MODULE_5__.shallowCompare)(_extends({}, state), restState);
                }
                navigate(href, {
                  state: state,
                  replace: shouldReplace
                });
              }
            }
          }));
        }
      );
    }
  );
});

Link.displayName = "Link";

 true ? Link.propTypes = {
  to: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string.isRequired)
} : 0;

////////////////////////////////////////////////////////////////////////////////
function RedirectRequest(uri) {
  this.uri = uri;
}

var isRedirect = function isRedirect(o) {
  return o instanceof RedirectRequest;
};

var redirectTo = function redirectTo(to) {
  throw new RedirectRequest(to);
};

var RedirectImpl = function (_React$Component3) {
  _inherits(RedirectImpl, _React$Component3);

  function RedirectImpl() {
    _classCallCheck(this, RedirectImpl);

    return _possibleConstructorReturn(this, _React$Component3.apply(this, arguments));
  }

  // Support React < 16 with this hook
  RedirectImpl.prototype.componentDidMount = function componentDidMount() {
    var _props3 = this.props,
        navigate = _props3.navigate,
        to = _props3.to,
        from = _props3.from,
        _props3$replace = _props3.replace,
        replace = _props3$replace === undefined ? true : _props3$replace,
        state = _props3.state,
        noThrow = _props3.noThrow,
        baseuri = _props3.baseuri,
        props = _objectWithoutProperties(_props3, ["navigate", "to", "from", "replace", "state", "noThrow", "baseuri"]);

    Promise.resolve().then(function () {
      var resolvedTo = (0,_lib_utils__WEBPACK_IMPORTED_MODULE_5__.resolve)(to, baseuri);
      navigate((0,_lib_utils__WEBPACK_IMPORTED_MODULE_5__.insertParams)(resolvedTo, props), { replace: replace, state: state });
    });
  };

  RedirectImpl.prototype.render = function render() {
    var _props4 = this.props,
        navigate = _props4.navigate,
        to = _props4.to,
        from = _props4.from,
        replace = _props4.replace,
        state = _props4.state,
        noThrow = _props4.noThrow,
        baseuri = _props4.baseuri,
        props = _objectWithoutProperties(_props4, ["navigate", "to", "from", "replace", "state", "noThrow", "baseuri"]);

    var resolvedTo = (0,_lib_utils__WEBPACK_IMPORTED_MODULE_5__.resolve)(to, baseuri);
    if (!noThrow) redirectTo((0,_lib_utils__WEBPACK_IMPORTED_MODULE_5__.insertParams)(resolvedTo, props));
    return null;
  };

  return RedirectImpl;
}((react__WEBPACK_IMPORTED_MODULE_0___default().Component));

var Redirect = function Redirect(props) {
  return react__WEBPACK_IMPORTED_MODULE_0___default().createElement(
    BaseContext.Consumer,
    null,
    function (_ref7) {
      var baseuri = _ref7.baseuri;
      return react__WEBPACK_IMPORTED_MODULE_0___default().createElement(
        Location,
        null,
        function (locationContext) {
          return react__WEBPACK_IMPORTED_MODULE_0___default().createElement(RedirectImpl, _extends({}, locationContext, { baseuri: baseuri }, props));
        }
      );
    }
  );
};

 true ? Redirect.propTypes = {
  from: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string),
  to: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string.isRequired)
} : 0;

////////////////////////////////////////////////////////////////////////////////
var Match = function Match(_ref8) {
  var path = _ref8.path,
      children = _ref8.children;
  return react__WEBPACK_IMPORTED_MODULE_0___default().createElement(
    BaseContext.Consumer,
    null,
    function (_ref9) {
      var baseuri = _ref9.baseuri;
      return react__WEBPACK_IMPORTED_MODULE_0___default().createElement(
        Location,
        null,
        function (_ref10) {
          var navigate = _ref10.navigate,
              location = _ref10.location;

          var resolvedPath = (0,_lib_utils__WEBPACK_IMPORTED_MODULE_5__.resolve)(path, baseuri);
          var result = (0,_lib_utils__WEBPACK_IMPORTED_MODULE_5__.match)(resolvedPath, location.pathname);
          return children({
            navigate: navigate,
            location: location,
            match: result ? _extends({}, result.params, {
              uri: result.uri,
              path: path
            }) : null
          });
        }
      );
    }
  );
};

////////////////////////////////////////////////////////////////////////////////
// Hooks

var useLocation = function useLocation() {
  var context = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(LocationContext);

  if (!context) {
    throw new Error("useLocation hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router");
  }

  return context.location;
};

var useNavigate = function useNavigate() {
  var context = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(LocationContext);

  if (!context) {
    throw new Error("useNavigate hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router");
  }

  return context.navigate;
};

var useParams = function useParams() {
  var context = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(BaseContext);

  if (!context) {
    throw new Error("useParams hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router");
  }

  var location = useLocation();

  var results = (0,_lib_utils__WEBPACK_IMPORTED_MODULE_5__.match)(context.basepath, location.pathname);

  return results ? results.params : null;
};

var useMatch = function useMatch(path) {
  if (!path) {
    throw new Error("useMatch(path: string) requires an argument of a string to match against");
  }
  var context = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(BaseContext);

  if (!context) {
    throw new Error("useMatch hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router");
  }

  var location = useLocation();

  var resolvedPath = (0,_lib_utils__WEBPACK_IMPORTED_MODULE_5__.resolve)(path, context.baseuri);
  var result = (0,_lib_utils__WEBPACK_IMPORTED_MODULE_5__.match)(resolvedPath, location.pathname);
  return result ? _extends({}, result.params, {
    uri: result.uri,
    path: path
  }) : null;
};

////////////////////////////////////////////////////////////////////////////////
// Junk
var stripSlashes = function stripSlashes(str) {
  return str.replace(/(^\/+|\/+$)/g, "");
};

var createRoute = function createRoute(basepath) {
  return function (element) {
    if (!element) {
      return null;
    }

    if (element.type === (react__WEBPACK_IMPORTED_MODULE_0___default().Fragment) && element.props.children) {
      return react__WEBPACK_IMPORTED_MODULE_0___default().Children.map(element.props.children, createRoute(basepath));
    }
    !(element.props.path || element.props.default || element.type === Redirect) ?  true ? invariant__WEBPACK_IMPORTED_MODULE_2___default()(false, "<Router>: Children of <Router> must have a `path` or `default` prop, or be a `<Redirect>`. None found on element type `" + element.type + "`") : 0 : void 0;

    !!(element.type === Redirect && (!element.props.from || !element.props.to)) ?  true ? invariant__WEBPACK_IMPORTED_MODULE_2___default()(false, "<Redirect from=\"" + element.props.from + "\" to=\"" + element.props.to + "\"/> requires both \"from\" and \"to\" props when inside a <Router>.") : 0 : void 0;

    !!(element.type === Redirect && !(0,_lib_utils__WEBPACK_IMPORTED_MODULE_5__.validateRedirect)(element.props.from, element.props.to)) ?  true ? invariant__WEBPACK_IMPORTED_MODULE_2___default()(false, "<Redirect from=\"" + element.props.from + " to=\"" + element.props.to + "\"/> has mismatched dynamic segments, ensure both paths have the exact same dynamic segments.") : 0 : void 0;

    if (element.props.default) {
      return { value: element, default: true };
    }

    var elementPath = element.type === Redirect ? element.props.from : element.props.path;

    var path = elementPath === "/" ? basepath : stripSlashes(basepath) + "/" + stripSlashes(elementPath);

    return {
      value: element,
      default: element.props.default,
      path: element.props.children ? stripSlashes(path) + "/*" : path
    };
  };
};

var shouldNavigate = function shouldNavigate(event) {
  return !event.defaultPrevented && event.button === 0 && !(event.metaKey || event.altKey || event.ctrlKey || event.shiftKey);
};

////////////////////////////////////////////////////////////////////////


/***/ }),

/***/ "../node_modules/@reach/router/es/lib/history.js":
/*!*******************************************************!*\
  !*** ../node_modules/@reach/router/es/lib/history.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "globalHistory": () => (/* binding */ globalHistory),
/* harmony export */   "navigate": () => (/* binding */ navigate),
/* harmony export */   "createHistory": () => (/* binding */ createHistory),
/* harmony export */   "createMemorySource": () => (/* binding */ createMemorySource)
/* harmony export */ });
var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };

var getLocation = function getLocation(source) {
  var _source$location = source.location,
      search = _source$location.search,
      hash = _source$location.hash,
      href = _source$location.href,
      origin = _source$location.origin,
      protocol = _source$location.protocol,
      host = _source$location.host,
      hostname = _source$location.hostname,
      port = _source$location.port;
  var pathname = source.location.pathname;


  if (!pathname && href && canUseDOM) {
    var url = new URL(href);
    pathname = url.pathname;
  }

  return {
    pathname: encodeURI(decodeURI(pathname)),
    search: search,
    hash: hash,
    href: href,
    origin: origin,
    protocol: protocol,
    host: host,
    hostname: hostname,
    port: port,
    state: source.history.state,
    key: source.history.state && source.history.state.key || "initial"
  };
};

var createHistory = function createHistory(source, options) {
  var listeners = [];
  var location = getLocation(source);
  var transitioning = false;
  var resolveTransition = function resolveTransition() {};

  return {
    get location() {
      return location;
    },

    get transitioning() {
      return transitioning;
    },

    _onTransitionComplete: function _onTransitionComplete() {
      transitioning = false;
      resolveTransition();
    },
    listen: function listen(listener) {
      listeners.push(listener);

      var popstateListener = function popstateListener() {
        location = getLocation(source);
        listener({ location: location, action: "POP" });
      };

      source.addEventListener("popstate", popstateListener);

      return function () {
        source.removeEventListener("popstate", popstateListener);
        listeners = listeners.filter(function (fn) {
          return fn !== listener;
        });
      };
    },
    navigate: function navigate(to) {
      var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
          state = _ref.state,
          _ref$replace = _ref.replace,
          replace = _ref$replace === undefined ? false : _ref$replace;

      if (typeof to === "number") {
        source.history.go(to);
      } else {
        state = _extends({}, state, { key: Date.now() + "" });
        // try...catch iOS Safari limits to 100 pushState calls
        try {
          if (transitioning || replace) {
            source.history.replaceState(state, null, to);
          } else {
            source.history.pushState(state, null, to);
          }
        } catch (e) {
          source.location[replace ? "replace" : "assign"](to);
        }
      }

      location = getLocation(source);
      transitioning = true;
      var transition = new Promise(function (res) {
        return resolveTransition = res;
      });
      listeners.forEach(function (listener) {
        return listener({ location: location, action: "PUSH" });
      });
      return transition;
    }
  };
};

////////////////////////////////////////////////////////////////////////////////
// Stores history entries in memory for testing or other platforms like Native
var createMemorySource = function createMemorySource() {
  var initialPath = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : "/";

  var searchIndex = initialPath.indexOf("?");
  var initialLocation = {
    pathname: searchIndex > -1 ? initialPath.substr(0, searchIndex) : initialPath,
    search: searchIndex > -1 ? initialPath.substr(searchIndex) : ""
  };
  var index = 0;
  var stack = [initialLocation];
  var states = [null];

  return {
    get location() {
      return stack[index];
    },
    addEventListener: function addEventListener(name, fn) {},
    removeEventListener: function removeEventListener(name, fn) {},

    history: {
      get entries() {
        return stack;
      },
      get index() {
        return index;
      },
      get state() {
        return states[index];
      },
      pushState: function pushState(state, _, uri) {
        var _uri$split = uri.split("?"),
            pathname = _uri$split[0],
            _uri$split$ = _uri$split[1],
            search = _uri$split$ === undefined ? "" : _uri$split$;

        index++;
        stack.push({ pathname: pathname, search: search.length ? "?" + search : search });
        states.push(state);
      },
      replaceState: function replaceState(state, _, uri) {
        var _uri$split2 = uri.split("?"),
            pathname = _uri$split2[0],
            _uri$split2$ = _uri$split2[1],
            search = _uri$split2$ === undefined ? "" : _uri$split2$;

        stack[index] = { pathname: pathname, search: search };
        states[index] = state;
      },
      go: function go(to) {
        var newIndex = index + to;

        if (newIndex < 0 || newIndex > states.length - 1) {
          return;
        }

        index = newIndex;
      }
    }
  };
};

////////////////////////////////////////////////////////////////////////////////
// global history - uses window.history as the source if available, otherwise a
// memory history
var canUseDOM = !!(typeof window !== "undefined" && window.document && window.document.createElement);
var getSource = function getSource() {
  return canUseDOM ? window : createMemorySource();
};

var globalHistory = createHistory(getSource());
var navigate = globalHistory.navigate;

////////////////////////////////////////////////////////////////////////////////



/***/ }),

/***/ "../node_modules/@reach/router/es/lib/utils.js":
/*!*****************************************************!*\
  !*** ../node_modules/@reach/router/es/lib/utils.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "startsWith": () => (/* binding */ startsWith),
/* harmony export */   "pick": () => (/* binding */ pick),
/* harmony export */   "match": () => (/* binding */ match),
/* harmony export */   "resolve": () => (/* binding */ resolve),
/* harmony export */   "insertParams": () => (/* binding */ insertParams),
/* harmony export */   "validateRedirect": () => (/* binding */ validateRedirect),
/* harmony export */   "shallowCompare": () => (/* binding */ shallowCompare)
/* harmony export */ });
/* harmony import */ var invariant__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! invariant */ "../node_modules/invariant/browser.js");
/* harmony import */ var invariant__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(invariant__WEBPACK_IMPORTED_MODULE_0__);


////////////////////////////////////////////////////////////////////////////////
// startsWith(string, search) - Check if `string` starts with `search`
var startsWith = function startsWith(string, search) {
  return string.substr(0, search.length) === search;
};

////////////////////////////////////////////////////////////////////////////////
// pick(routes, uri)
//
// Ranks and picks the best route to match. Each segment gets the highest
// amount of points, then the type of segment gets an additional amount of
// points where
//
//     static > dynamic > splat > root
//
// This way we don't have to worry about the order of our routes, let the
// computers do it.
//
// A route looks like this
//
//     { path, default, value }
//
// And a returned match looks like:
//
//     { route, params, uri }
//
// I know, I should use TypeScript not comments for these types.
var pick = function pick(routes, uri) {
  var match = void 0;
  var default_ = void 0;

  var _uri$split = uri.split("?"),
      uriPathname = _uri$split[0];

  var uriSegments = segmentize(uriPathname);
  var isRootUri = uriSegments[0] === "";
  var ranked = rankRoutes(routes);

  for (var i = 0, l = ranked.length; i < l; i++) {
    var missed = false;
    var route = ranked[i].route;

    if (route.default) {
      default_ = {
        route: route,
        params: {},
        uri: uri
      };
      continue;
    }

    var routeSegments = segmentize(route.path);
    var params = {};
    var max = Math.max(uriSegments.length, routeSegments.length);
    var index = 0;

    for (; index < max; index++) {
      var routeSegment = routeSegments[index];
      var uriSegment = uriSegments[index];

      if (isSplat(routeSegment)) {
        // Hit a splat, just grab the rest, and return a match
        // uri:   /files/documents/work
        // route: /files/*
        var param = routeSegment.slice(1) || "*";
        params[param] = uriSegments.slice(index).map(decodeURIComponent).join("/");
        break;
      }

      if (uriSegment === undefined) {
        // URI is shorter than the route, no match
        // uri:   /users
        // route: /users/:userId
        missed = true;
        break;
      }

      var dynamicMatch = paramRe.exec(routeSegment);

      if (dynamicMatch && !isRootUri) {
        var matchIsNotReserved = reservedNames.indexOf(dynamicMatch[1]) === -1;
        !matchIsNotReserved ?  true ? invariant__WEBPACK_IMPORTED_MODULE_0___default()(false, "<Router> dynamic segment \"" + dynamicMatch[1] + "\" is a reserved name. Please use a different name in path \"" + route.path + "\".") : 0 : void 0;
        var value = decodeURIComponent(uriSegment);
        params[dynamicMatch[1]] = value;
      } else if (routeSegment !== uriSegment) {
        // Current segments don't match, not dynamic, not splat, so no match
        // uri:   /users/123/settings
        // route: /users/:id/profile
        missed = true;
        break;
      }
    }

    if (!missed) {
      match = {
        route: route,
        params: params,
        uri: "/" + uriSegments.slice(0, index).join("/")
      };
      break;
    }
  }

  return match || default_ || null;
};

////////////////////////////////////////////////////////////////////////////////
// match(path, uri) - Matches just one path to a uri, also lol
var match = function match(path, uri) {
  return pick([{ path: path }], uri);
};

////////////////////////////////////////////////////////////////////////////////
// resolve(to, basepath)
//
// Resolves URIs as though every path is a directory, no files.  Relative URIs
// in the browser can feel awkward because not only can you be "in a directory"
// you can be "at a file", too. For example
//
//     browserSpecResolve('foo', '/bar/') => /bar/foo
//     browserSpecResolve('foo', '/bar') => /foo
//
// But on the command line of a file system, it's not as complicated, you can't
// `cd` from a file, only directories.  This way, links have to know less about
// their current path. To go deeper you can do this:
//
//     <Link to="deeper"/>
//     // instead of
//     <Link to=`{${props.uri}/deeper}`/>
//
// Just like `cd`, if you want to go deeper from the command line, you do this:
//
//     cd deeper
//     # not
//     cd $(pwd)/deeper
//
// By treating every path as a directory, linking to relative paths should
// require less contextual information and (fingers crossed) be more intuitive.
var resolve = function resolve(to, base) {
  // /foo/bar, /baz/qux => /foo/bar
  if (startsWith(to, "/")) {
    return to;
  }

  var _to$split = to.split("?"),
      toPathname = _to$split[0],
      toQuery = _to$split[1];

  var _base$split = base.split("?"),
      basePathname = _base$split[0];

  var toSegments = segmentize(toPathname);
  var baseSegments = segmentize(basePathname);

  // ?a=b, /users?b=c => /users?a=b
  if (toSegments[0] === "") {
    return addQuery(basePathname, toQuery);
  }

  // profile, /users/789 => /users/789/profile
  if (!startsWith(toSegments[0], ".")) {
    var pathname = baseSegments.concat(toSegments).join("/");
    return addQuery((basePathname === "/" ? "" : "/") + pathname, toQuery);
  }

  // ./         /users/123  =>  /users/123
  // ../        /users/123  =>  /users
  // ../..      /users/123  =>  /
  // ../../one  /a/b/c/d    =>  /a/b/one
  // .././one   /a/b/c/d    =>  /a/b/c/one
  var allSegments = baseSegments.concat(toSegments);
  var segments = [];
  for (var i = 0, l = allSegments.length; i < l; i++) {
    var segment = allSegments[i];
    if (segment === "..") segments.pop();else if (segment !== ".") segments.push(segment);
  }

  return addQuery("/" + segments.join("/"), toQuery);
};

////////////////////////////////////////////////////////////////////////////////
// insertParams(path, params)

var insertParams = function insertParams(path, params) {
  var _path$split = path.split("?"),
      pathBase = _path$split[0],
      _path$split$ = _path$split[1],
      query = _path$split$ === undefined ? "" : _path$split$;

  var segments = segmentize(pathBase);
  var constructedPath = "/" + segments.map(function (segment) {
    var match = paramRe.exec(segment);
    return match ? params[match[1]] : segment;
  }).join("/");
  var _params$location = params.location;
  _params$location = _params$location === undefined ? {} : _params$location;
  var _params$location$sear = _params$location.search,
      search = _params$location$sear === undefined ? "" : _params$location$sear;

  var searchSplit = search.split("?")[1] || "";
  constructedPath = addQuery(constructedPath, query, searchSplit);
  return constructedPath;
};

var validateRedirect = function validateRedirect(from, to) {
  var filter = function filter(segment) {
    return isDynamic(segment);
  };
  var fromString = segmentize(from).filter(filter).sort().join("/");
  var toString = segmentize(to).filter(filter).sort().join("/");
  return fromString === toString;
};

////////////////////////////////////////////////////////////////////////////////
// Junk
var paramRe = /^:(.+)/;

var SEGMENT_POINTS = 4;
var STATIC_POINTS = 3;
var DYNAMIC_POINTS = 2;
var SPLAT_PENALTY = 1;
var ROOT_POINTS = 1;

var isRootSegment = function isRootSegment(segment) {
  return segment === "";
};
var isDynamic = function isDynamic(segment) {
  return paramRe.test(segment);
};
var isSplat = function isSplat(segment) {
  return segment && segment[0] === "*";
};

var rankRoute = function rankRoute(route, index) {
  var score = route.default ? 0 : segmentize(route.path).reduce(function (score, segment) {
    score += SEGMENT_POINTS;
    if (isRootSegment(segment)) score += ROOT_POINTS;else if (isDynamic(segment)) score += DYNAMIC_POINTS;else if (isSplat(segment)) score -= SEGMENT_POINTS + SPLAT_PENALTY;else score += STATIC_POINTS;
    return score;
  }, 0);
  return { route: route, score: score, index: index };
};

var rankRoutes = function rankRoutes(routes) {
  return routes.map(rankRoute).sort(function (a, b) {
    return a.score < b.score ? 1 : a.score > b.score ? -1 : a.index - b.index;
  });
};

var segmentize = function segmentize(uri) {
  return uri
  // strip starting/ending slashes
  .replace(/(^\/+|\/+$)/g, "").split("/");
};

var addQuery = function addQuery(pathname) {
  for (var _len = arguments.length, query = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
    query[_key - 1] = arguments[_key];
  }

  query = query.filter(function (q) {
    return q && q.length > 0;
  });
  return pathname + (query && query.length > 0 ? "?" + query.join("&") : "");
};

var reservedNames = ["uri", "path"];

/**
 * Shallow compares two objects.
 * @param {Object} obj1 The first object to compare.
 * @param {Object} obj2 The second object to compare.
 */
var shallowCompare = function shallowCompare(obj1, obj2) {
  var obj1Keys = Object.keys(obj1);
  return obj1Keys.length === Object.keys(obj2).length && obj1Keys.every(function (key) {
    return obj2.hasOwnProperty(key) && obj1[key] === obj2[key];
  });
};

////////////////////////////////////////////////////////////////////////////////


/***/ }),

/***/ "../core/app/assets/js/hooks/use-action.js":
/*!*************************************************!*\
  !*** ../core/app/assets/js/hooks/use-action.js ***!
  \*************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = useAction;

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

function useAction() {
  return {
    backToDashboard: function backToDashboard() {
      if (window.top === window) {
        // Directly - in case that the return_url is the login-page, the target should be the admin-page and not the login-page again.
        window.top.location = elementorAppConfig.return_url.includes(elementorAppConfig.login_url) ? elementorAppConfig.admin_url : elementorAppConfig.return_url;
      } else {
        // Iframe.
        window.top.$e.run('app/close');
      }
    }
  };
}

/***/ }),

/***/ "../core/app/assets/js/hooks/use-ajax.js":
/*!***********************************************!*\
  !*** ../core/app/assets/js/hooks/use-ajax.js ***!
  \***********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = useAjax;

var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _react = __webpack_require__(/*! react */ "react");

function useAjax() {
  var _useState = (0, _react.useState)(null),
      _useState2 = (0, _slicedToArray2.default)(_useState, 2),
      ajax = _useState2[0],
      setAjax = _useState2[1],
      initialStatusKey = 'initial',
      uploadInitialState = {
    status: initialStatusKey,
    isComplete: false,
    response: null
  },
      _useState3 = (0, _react.useState)(uploadInitialState),
      _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
      ajaxState = _useState4[0],
      setAjaxState = _useState4[1],
      ajaxActions = {
    reset: function reset() {
      return setAjaxState(initialStatusKey);
    }
  };

  (0, _react.useEffect)(function () {
    if (ajax) {
      var formData = new FormData();

      if (ajax.data) {
        for (var key in ajax.data) {
          formData.append(key, ajax.data[key]);
        }

        if (!ajax.data.nonce) {
          formData.append('nonce', elementorCommon.config.ajax.nonce);
        }
      }

      var options = (0, _objectSpread2.default)((0, _objectSpread2.default)({
        type: 'post',
        url: elementorCommon.config.ajax.url,
        headers: {},
        cache: false,
        contentType: false,
        processData: false
      }, ajax), {}, {
        data: formData,
        success: function success(response) {
          var status = response.success ? 'success' : 'error';
          setAjaxState(function (prevState) {
            return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, prevState), {}, {
              status: status,
              response: response === null || response === void 0 ? void 0 : response.data
            });
          });
        },
        error: function error() {
          setAjaxState(function (prevState) {
            return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, prevState), {}, {
              status: 'error'
            });
          });
        },
        complete: function complete() {
          setAjaxState(function (prevState) {
            return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, prevState), {}, {
              isComplete: true
            });
          });
        }
      });
      jQuery.ajax(options);
    }
  }, [ajax]);
  return {
    ajax: ajax,
    setAjax: setAjax,
    ajaxState: ajaxState,
    ajaxActions: ajaxActions
  };
}

/***/ }),

/***/ "../core/app/assets/js/hooks/use-page-title.js":
/*!*****************************************************!*\
  !*** ../core/app/assets/js/hooks/use-page-title.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = usePageTitle;

var _react = __webpack_require__(/*! react */ "react");

function usePageTitle(_ref) {
  var title = _ref.title,
      prefix = _ref.prefix;
  (0, _react.useEffect)(function () {
    if (!prefix) {
      prefix = __('Elementor', 'elementor');
    }

    document.title = "".concat(prefix, " | ").concat(title);
  }, [title, prefix]);
}

/***/ }),

/***/ "../core/app/assets/js/layout/content.js":
/*!***********************************************!*\
  !*** ../core/app/assets/js/layout/content.js ***!
  \***********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Content;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

function Content(props) {
  return /*#__PURE__*/_react.default.createElement("main", {
    className: "eps-app__content ".concat(props.className)
  }, props.children);
}

Content.propTypes = {
  children: PropTypes.any,
  className: PropTypes.string
};
Content.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/layout/footer.js":
/*!**********************************************!*\
  !*** ../core/app/assets/js/layout/footer.js ***!
  \**********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Footer;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

function Footer(props) {
  return /*#__PURE__*/_react.default.createElement("footer", {
    className: "eps-app__footer"
  }, props.children);
}

Footer.propTypes = {
  children: PropTypes.object
};

/***/ }),

/***/ "../core/app/assets/js/layout/header-button.js":
/*!*****************************************************!*\
  !*** ../core/app/assets/js/layout/header-button.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _assign = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/assign */ "../node_modules/@babel/runtime-corejs2/core-js/object/assign.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _button = _interopRequireDefault(__webpack_require__(/*! ../ui/molecules/button */ "../core/app/assets/js/ui/molecules/button.js"));

var Button = /*#__PURE__*/function (_BaseButton) {
  (0, _inherits2.default)(Button, _BaseButton);

  var _super = (0, _createSuper2.default)(Button);

  function Button() {
    (0, _classCallCheck2.default)(this, Button);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Button, [{
    key: "getCssId",
    value: function getCssId() {
      return "eps-app-header-btn-" + (0, _get2.default)((0, _getPrototypeOf2.default)(Button.prototype), "getCssId", this).call(this);
    }
  }, {
    key: "getClassName",
    value: function getClassName() {
      // Avoid using the 'eps-app__header-btn' class to make sure it is not override custom styles.
      if (!this.props.includeHeaderBtnClass) {
        return (0, _get2.default)((0, _getPrototypeOf2.default)(Button.prototype), "getClassName", this).call(this);
      }

      return "eps-app__header-btn " + (0, _get2.default)((0, _getPrototypeOf2.default)(Button.prototype), "getClassName", this).call(this);
    }
  }]);
  return Button;
}(_button.default);

exports.default = Button;
(0, _defineProperty2.default)(Button, "defaultProps", (0, _assign.default)({}
/* clone */
, _button.default.defaultProps, {
  hideText: true,
  includeHeaderBtnClass: true
}));

/***/ }),

/***/ "../core/app/assets/js/layout/header-buttons.js":
/*!******************************************************!*\
  !*** ../core/app/assets/js/layout/header-buttons.js ***!
  \******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = HeaderButtons;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

var _useAction = _interopRequireDefault(__webpack_require__(/*! elementor-app/hooks/use-action */ "../core/app/assets/js/hooks/use-action.js"));

var _headerButton = _interopRequireDefault(__webpack_require__(/*! ./header-button */ "../core/app/assets/js/layout/header-button.js"));

function HeaderButtons(props) {
  var action = (0, _useAction.default)();
  var tools = '';

  if (props.buttons.length) {
    var buttons = props.buttons.map(function (button) {
      return /*#__PURE__*/_react.default.createElement(_headerButton.default, (0, _extends2.default)({
        key: button.id
      }, button));
    });
    tools = /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, buttons);
  }

  return /*#__PURE__*/_react.default.createElement("div", {
    className: "eps-app__header-buttons"
  }, /*#__PURE__*/_react.default.createElement(_headerButton.default, {
    text: __('Close', 'elementor'),
    icon: "eicon-close",
    className: "eps-app__close-button",
    onClick: action.backToDashboard
  }), tools);
}

HeaderButtons.propTypes = {
  buttons: PropTypes.arrayOf(PropTypes.object)
};
HeaderButtons.defaultProps = {
  buttons: []
};

/***/ }),

/***/ "../core/app/assets/js/layout/header.js":
/*!**********************************************!*\
  !*** ../core/app/assets/js/layout/header.js ***!
  \**********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Header;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

var _grid = _interopRequireDefault(__webpack_require__(/*! ../ui/grid/grid */ "../core/app/assets/js/ui/grid/grid.js"));

var _headerButtons = _interopRequireDefault(__webpack_require__(/*! ./header-buttons */ "../core/app/assets/js/layout/header-buttons.js"));

var _usePageTitle = _interopRequireDefault(__webpack_require__(/*! elementor-app/hooks/use-page-title */ "../core/app/assets/js/hooks/use-page-title.js"));

function Header(props) {
  (0, _usePageTitle.default)({
    title: props.title
  });
  var TitleTag = 'span',
      titleAttrs = {};

  if (props.titleRedirectRoute) {
    TitleTag = 'a';
    titleAttrs = {
      href: "#".concat(props.titleRedirectRoute),
      target: '_self'
    };
  }

  return /*#__PURE__*/_react.default.createElement(_grid.default, {
    container: true,
    alignItems: "center",
    justify: "space-between",
    className: "eps-app__header"
  }, /*#__PURE__*/_react.default.createElement(TitleTag, (0, _extends2.default)({
    className: "eps-app__logo-title-wrapper"
  }, titleAttrs), /*#__PURE__*/_react.default.createElement("i", {
    className: "eps-app__logo eicon-elementor"
  }), /*#__PURE__*/_react.default.createElement("h1", {
    className: "eps-app__title"
  }, props.title)), /*#__PURE__*/_react.default.createElement(_headerButtons.default, {
    buttons: props.buttons
  }));
}

Header.propTypes = {
  title: PropTypes.string,
  titleRedirectRoute: PropTypes.string,
  buttons: PropTypes.arrayOf(PropTypes.object)
};
Header.defaultProps = {
  buttons: []
};

/***/ }),

/***/ "../core/app/assets/js/layout/page.js":
/*!********************************************!*\
  !*** ../core/app/assets/js/layout/page.js ***!
  \********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Page;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _header = _interopRequireDefault(__webpack_require__(/*! ./header */ "../core/app/assets/js/layout/header.js"));

var _sidebar = _interopRequireDefault(__webpack_require__(/*! ./sidebar */ "../core/app/assets/js/layout/sidebar.js"));

var _content = _interopRequireDefault(__webpack_require__(/*! ./content */ "../core/app/assets/js/layout/content.js"));

var _footer = _interopRequireDefault(__webpack_require__(/*! ./footer */ "../core/app/assets/js/layout/footer.js"));

function Page(props) {
  var AppSidebar = function AppSidebar() {
    if (!props.sidebar) {
      return;
    }

    return /*#__PURE__*/_react.default.createElement(_sidebar.default, null, props.sidebar);
  },
      AppFooter = function AppFooter() {
    if (!props.footer) {
      return;
    }

    return /*#__PURE__*/_react.default.createElement(_footer.default, null, props.footer);
  };

  return /*#__PURE__*/_react.default.createElement("div", {
    className: "eps-app__lightbox ".concat(props.className)
  }, /*#__PURE__*/_react.default.createElement("div", {
    className: "eps-app"
  }, /*#__PURE__*/_react.default.createElement(_header.default, {
    title: props.title,
    buttons: props.headerButtons,
    titleRedirectRoute: props.titleRedirectRoute
  }), /*#__PURE__*/_react.default.createElement("div", {
    className: "eps-app__main"
  }, AppSidebar(), /*#__PURE__*/_react.default.createElement(_content.default, null, props.content)), AppFooter()));
}

Page.propTypes = {
  title: PropTypes.string,
  titleRedirectRoute: PropTypes.string,
  className: PropTypes.string,
  headerButtons: PropTypes.arrayOf(PropTypes.object),
  sidebar: PropTypes.object,
  content: PropTypes.object.isRequired,
  footer: PropTypes.object
};
Page.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/layout/sidebar.js":
/*!***********************************************!*\
  !*** ../core/app/assets/js/layout/sidebar.js ***!
  \***********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Sidebar;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

function Sidebar(props) {
  return /*#__PURE__*/_react.default.createElement("div", {
    className: "eps-app__sidebar"
  }, props.children);
}

Sidebar.propTypes = {
  children: PropTypes.object
};

/***/ }),

/***/ "../core/app/assets/js/molecules/collapse-content.js":
/*!***********************************************************!*\
  !*** ../core/app/assets/js/molecules/collapse-content.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = CollapseContent;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

function CollapseContent(props) {
  return /*#__PURE__*/_react.default.createElement("div", {
    className: "e-app-collapse-content"
  }, props.children);
}

CollapseContent.propTypes = {
  className: PropTypes.string,
  children: PropTypes.any
};
CollapseContent.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/molecules/collapse-context.js":
/*!***********************************************************!*\
  !*** ../core/app/assets/js/molecules/collapse-context.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.CollapseContext = void 0;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var CollapseContext = _react.default.createContext();

exports.CollapseContext = CollapseContext;

/***/ }),

/***/ "../core/app/assets/js/molecules/collapse-toggle.js":
/*!**********************************************************!*\
  !*** ../core/app/assets/js/molecules/collapse-toggle.js ***!
  \**********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = CollapseToggle;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

var _collapseContext = __webpack_require__(/*! ./collapse-context */ "../core/app/assets/js/molecules/collapse-context.js");

function CollapseToggle(props) {
  var context = (0, _react.useContext)(_collapseContext.CollapseContext),
      style = {
    '--e-app-collapse-toggle-icon-spacing': (0, _utils.pxToRem)(props.iconSpacing)
  },
      classNameBase = 'e-app-collapse-toggle',
      classes = [classNameBase, (0, _defineProperty2.default)({}, classNameBase + '--active', props.active)],
      attrs = {
    style: style,
    className: (0, _utils.arrayToClassName)(classes)
  };

  if (props.active) {
    attrs.onClick = function () {
      return context.toggle();
    };
  }

  return /*#__PURE__*/_react.default.createElement("div", attrs, props.children, props.active && props.showIcon && /*#__PURE__*/_react.default.createElement("i", {
    className: "eicon-caret-down e-app-collapse-toggle__icon"
  }));
}

CollapseToggle.propTypes = {
  className: PropTypes.string,
  iconSpacing: PropTypes.number,
  showIcon: PropTypes.bool,
  active: PropTypes.bool,
  children: PropTypes.any
};
CollapseToggle.defaultProps = {
  className: '',
  iconSpacing: 20,
  showIcon: true,
  active: true
};

/***/ }),

/***/ "../core/app/assets/js/molecules/collapse.js":
/*!***************************************************!*\
  !*** ../core/app/assets/js/molecules/collapse.js ***!
  \***************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Collapse;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

var _collapseContext = __webpack_require__(/*! ./collapse-context */ "../core/app/assets/js/molecules/collapse-context.js");

var _collapseToggle = _interopRequireDefault(__webpack_require__(/*! ./collapse-toggle */ "../core/app/assets/js/molecules/collapse-toggle.js"));

var _collapseContent = _interopRequireDefault(__webpack_require__(/*! ./collapse-content */ "../core/app/assets/js/molecules/collapse-content.js"));

__webpack_require__(/*! ./collapse.scss */ "../core/app/assets/js/molecules/collapse.scss");

function Collapse(props) {
  var _useState = (0, _react.useState)(props.isOpened),
      _useState2 = (0, _slicedToArray2.default)(_useState, 2),
      isOpened = _useState2[0],
      setIsOpened = _useState2[1],
      classNameBase = 'e-app-collapse',
      classes = [classNameBase, props.className, (0, _defineProperty2.default)({}, classNameBase + '--opened', isOpened)],
      toggle = function toggle() {
    return setIsOpened(function (prevState) {
      return !prevState;
    });
  };

  (0, _react.useEffect)(function () {
    if (props.isOpened !== isOpened) {
      setIsOpened(props.isOpened);
    }
  }, [props.isOpened]);
  (0, _react.useEffect)(function () {
    if (props.onChange) {
      props.onChange(isOpened);
    }
  }, [isOpened]);
  return /*#__PURE__*/_react.default.createElement(_collapseContext.CollapseContext.Provider, {
    value: {
      toggle: toggle
    }
  }, /*#__PURE__*/_react.default.createElement("div", {
    className: (0, _utils.arrayToClassName)(classes)
  }, props.children));
}

Collapse.propTypes = {
  className: PropTypes.string,
  isOpened: PropTypes.bool,
  onChange: PropTypes.func,
  children: PropTypes.oneOfType([PropTypes.node, PropTypes.arrayOf(PropTypes.node)])
};
Collapse.defaultProps = {
  className: '',
  isOpened: false
};
Collapse.Toggle = _collapseToggle.default;
Collapse.Content = _collapseContent.default;

/***/ }),

/***/ "../core/app/assets/js/molecules/dashboard-button.js":
/*!***********************************************************!*\
  !*** ../core/app/assets/js/molecules/dashboard-button.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = DashboardButton;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

var _button = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/button */ "../core/app/assets/js/ui/molecules/button.js"));

var _useAction = _interopRequireDefault(__webpack_require__(/*! elementor-app/hooks/use-action */ "../core/app/assets/js/hooks/use-action.js"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

function DashboardButton(props) {
  var action = (0, _useAction.default)(),
      baseClassName = 'e-app-dashboard-button',
      classes = [baseClassName, props.className];
  return /*#__PURE__*/_react.default.createElement(_button.default, (0, _extends2.default)({}, props, {
    className: (0, _utils.arrayToClassName)(classes),
    text: props.text,
    onClick: action.backToDashboard
  }));
}

DashboardButton.propTypes = {
  className: PropTypes.string,
  text: PropTypes.string
};
DashboardButton.defaultProps = {
  className: '',
  variant: 'contained',
  color: 'primary',
  text: __('Back to dashboard', 'elementor')
};

/***/ }),

/***/ "../core/app/assets/js/molecules/go-pro-button.js":
/*!********************************************************!*\
  !*** ../core/app/assets/js/molecules/go-pro-button.js ***!
  \********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = GoProButton;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

var _button = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/button */ "../core/app/assets/js/ui/molecules/button.js"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

function GoProButton(props) {
  var baseClassName = 'e-app-go-pro-button',
      classes = [baseClassName, props.className];
  return /*#__PURE__*/_react.default.createElement(_button.default, (0, _extends2.default)({}, props, {
    className: (0, _utils.arrayToClassName)(classes),
    text: props.text
  }));
}

GoProButton.propTypes = {
  className: PropTypes.string,
  text: PropTypes.string
};
GoProButton.defaultProps = {
  className: '',
  variant: 'contained',
  size: 'sm',
  color: 'cta',
  target: '_blank',
  rel: 'noopener noreferrer',
  text: __('Go Pro', 'elementor')
};

/***/ }),

/***/ "../core/app/assets/js/molecules/tooltip.js":
/*!**************************************************!*\
  !*** ../core/app/assets/js/molecules/tooltip.js ***!
  \**************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Tooltip;

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! ../utils/utils */ "../core/app/assets/js/utils/utils.js");

function Tooltip(props) {
  var baseClassName = 'e-app-tooltip',
      classes = [baseClassName, props.className],
      childRef = (0, _react.useRef)(null),
      isAborted = (0, _react.useRef)(false),
      isManualControl = props.hasOwnProperty('show'),
      _useState = (0, _react.useState)(false),
      _useState2 = (0, _slicedToArray2.default)(_useState, 2),
      isLibraryLoaded = _useState2[0],
      setIsLibraryLoaded = _useState2[1],
      _useState3 = (0, _react.useState)(false),
      _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
      showTooltip = _useState4[0],
      setShowTooltip = _useState4[1],
      directionsMap = {
    top: 's',
    right: 'w',
    down: 'n',
    left: 'e'
  },
      tipsyConfig = {
    trigger: isManualControl ? 'manual' : 'hover',
    gravity: directionsMap[props.direction],
    offset: props.offset,
    title: function title() {
      return props.title;
    }
  },
      setTipsy = function setTipsy() {
    var $tooltipContainer = jQuery(childRef.current);
    $tooltipContainer.tipsy(tipsyConfig);

    if (isManualControl) {
      var displayMode = showTooltip ? 'show' : 'hide';
      $tooltipContainer.tipsy(displayMode);
    }
  };

  (0, _react.useEffect)(function () {
    // In case that the component is disabled the tipsy library will not be loaded by default.
    if (!props.disabled) {
      isAborted.current = false;
      import(
      /* webpackIgnore: true */
      "".concat(elementorCommon.config.urls.assets, "lib/tipsy/tipsy.min.js?ver=1.0.0")).then(function () {
        if (!isAborted.current) {
          if (isLibraryLoaded) {
            setTipsy();
          } else {
            setIsLibraryLoaded(true);
          }
        }
      });
    }

    return function () {
      if (!props.disabled) {
        // Aborting the current dynamic-import state update in case of re-render.
        isAborted.current = true; // Cleanup of existing tipsy element in case of re-render.

        jQuery('.tipsy:last').remove();
      }
    };
  }, [props.disabled]);
  (0, _react.useEffect)(function () {
    if (isLibraryLoaded) {
      setTipsy();
    }
  }, [isLibraryLoaded, showTooltip]);
  (0, _react.useEffect)(function () {
    // The "show" state should not be changed while the component is disabled.
    if (!props.disabled && props.show !== showTooltip) {
      setShowTooltip(props.show);
    }
  }, [props.show]);
  return /*#__PURE__*/_react.default.createElement(props.tag, {
    className: (0, _utils.arrayToClassName)(classes),
    ref: childRef
  }, props.children);
}

Tooltip.propTypes = {
  className: PropTypes.string,
  offset: PropTypes.number,
  show: PropTypes.bool,
  direction: PropTypes.oneOf(['top', 'right', 'left', 'down']),
  tag: PropTypes.string.isRequired,
  title: PropTypes.string.isRequired,
  disabled: PropTypes.bool,
  children: PropTypes.any
};
Tooltip.defaultProps = {
  className: '',
  offset: 10,
  direction: 'top',
  disabled: false
};

/***/ }),

/***/ "../core/app/assets/js/molecules/upload-file.js":
/*!******************************************************!*\
  !*** ../core/app/assets/js/molecules/upload-file.js ***!
  \******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = UploadFile;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

var _button = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/button */ "../core/app/assets/js/ui/molecules/button.js"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

__webpack_require__(/*! ./upload-file.scss */ "../core/app/assets/js/molecules/upload-file.scss");

function UploadFile(props) {
  var fileInput = (0, _react.useRef)(null),
      baseClassName = 'e-app-upload-file',
      classes = [baseClassName, props.className];
  return /*#__PURE__*/_react.default.createElement("div", {
    className: (0, _utils.arrayToClassName)(classes)
  }, /*#__PURE__*/_react.default.createElement("input", {
    ref: fileInput,
    type: "file",
    accept: props.filetypes.map(function (type) {
      return '.' + type;
    }).join(', '),
    className: "e-app-upload-file__input",
    onChange: function onChange(event) {
      var file = event.target.files[0];

      if (file && (0, _utils.isOneOf)(file.type, props.filetypes)) {
        props.onFileSelect(file, event);
      } else {
        fileInput.current.value = '';
        props.onError();
      }
    }
  }), /*#__PURE__*/_react.default.createElement(_button.default, {
    className: "e-app-upload-file__button",
    text: props.text,
    variant: "contained",
    color: "primary",
    size: "lg",
    hideText: props.isLoading,
    icon: props.isLoading ? 'eicon-loading eicon-animation-spin' : '',
    onClick: function onClick() {
      if (!props.isLoading) {
        fileInput.current.click();
      }
    }
  }));
}

UploadFile.propTypes = {
  className: PropTypes.string,
  text: PropTypes.string,
  onFileSelect: PropTypes.func,
  isLoading: PropTypes.bool,
  filetypes: PropTypes.array.isRequired,
  onError: PropTypes.func
};
UploadFile.defaultProps = {
  className: '',
  text: __('Select File', 'elementor'),
  onError: function onError() {}
};

/***/ }),

/***/ "../core/app/assets/js/organisms/drop-zone.js":
/*!****************************************************!*\
  !*** ../core/app/assets/js/organisms/drop-zone.js ***!
  \****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = DropZone;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

var _uploadFile = _interopRequireDefault(__webpack_require__(/*! elementor-app/molecules/upload-file */ "../core/app/assets/js/molecules/upload-file.js"));

var _dragDrop = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/drag-drop */ "../core/app/assets/js/ui/atoms/drag-drop.js"));

var _icon = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/icon */ "../core/app/assets/js/ui/atoms/icon.js"));

var _heading = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/heading */ "../core/app/assets/js/ui/atoms/heading.js"));

var _text = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/text */ "../core/app/assets/js/ui/atoms/text.js"));

__webpack_require__(/*! ./drop-zone.scss */ "../core/app/assets/js/organisms/drop-zone.scss");

function DropZone(props) {
  var classes = ['e-app-drop-zone', props.className],
      dragDropEvents = {
    onDrop: function onDrop(event) {
      if (!props.isLoading) {
        var file = event.dataTransfer.files[0];

        if (file && (0, _utils.isOneOf)(file.type, props.filetypes)) {
          props.onFileSelect(file, event);
        } else {
          props.onError();
        }
      }
    }
  };
  return /*#__PURE__*/_react.default.createElement("section", {
    className: (0, _utils.arrayToClassName)(classes)
  }, /*#__PURE__*/_react.default.createElement(_dragDrop.default, (0, _extends2.default)({}, dragDropEvents, {
    isLoading: props.isLoading
  }), props.icon && /*#__PURE__*/_react.default.createElement(_icon.default, {
    className: "e-app-drop-zone__icon ".concat(props.icon)
  }), props.heading && /*#__PURE__*/_react.default.createElement(_heading.default, {
    variant: "display-3"
  }, props.heading), props.text && /*#__PURE__*/_react.default.createElement(_text.default, {
    variant: "xl",
    className: "e-app-drop-zone__text"
  }, props.text), props.secondaryText && /*#__PURE__*/_react.default.createElement(_text.default, {
    variant: "xl",
    className: "e-app-drop-zone__secondary-text"
  }, props.secondaryText), props.showButton && /*#__PURE__*/_react.default.createElement(_uploadFile.default, {
    isLoading: props.isLoading,
    onFileSelect: props.onFileSelect,
    onError: props.onError,
    text: props.buttonText,
    filetypes: props.filetypes
  })));
}

DropZone.propTypes = {
  className: PropTypes.string,
  children: PropTypes.any,
  onFileSelect: PropTypes.func.isRequired,
  heading: PropTypes.string,
  text: PropTypes.string,
  secondaryText: PropTypes.string,
  buttonText: PropTypes.string,
  icon: PropTypes.string,
  showButton: PropTypes.bool,
  showIcon: PropTypes.bool,
  isLoading: PropTypes.bool,
  filetypes: PropTypes.array.isRequired,
  onError: PropTypes.func
};
DropZone.defaultProps = {
  className: '',
  icon: 'eicon-library-upload',
  showButton: true,
  showIcon: true,
  onError: function onError() {}
};

/***/ }),

/***/ "../core/app/assets/js/organisms/error-boundary.js":
/*!*********************************************************!*\
  !*** ../core/app/assets/js/organisms/error-boundary.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _dialog = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/dialog/dialog */ "../core/app/assets/js/ui/dialog/dialog.js"));

// In the current time there is no solution to use "getDerivedStateFromError" static method with functional component
// That is why this component is a class component.
// @link https://reactjs.org/docs/hooks-faq.html#do-hooks-cover-all-use-cases-for-classes
var ErrorBoundary = /*#__PURE__*/function (_React$Component) {
  (0, _inherits2.default)(ErrorBoundary, _React$Component);

  var _super = (0, _createSuper2.default)(ErrorBoundary);

  function ErrorBoundary(props) {
    var _this;

    (0, _classCallCheck2.default)(this, ErrorBoundary);
    _this = _super.call(this, props);
    _this.state = {
      hasError: null
    };
    return _this;
  }

  (0, _createClass2.default)(ErrorBoundary, [{
    key: "goBack",
    value: function goBack() {
      // If the app was opened inside an iframe, it will close it,
      // if not, it will redirect to the last location.
      if (window.top !== window.self) {
        window.top.$e.run('app/close');
      }

      window.location = elementorAppConfig.return_url;
    }
  }, {
    key: "render",
    value: function render() {
      if (this.state.hasError) {
        return /*#__PURE__*/_react.default.createElement(_dialog.default, {
          title: this.props.title,
          text: this.props.text,
          approveButtonUrl: this.props.learnMoreUrl,
          approveButtonColor: "link",
          approveButtonTarget: "_blank",
          approveButtonText: __('Learn More', 'elementor'),
          dismissButtonText: __('Go Back', 'elementor'),
          dismissButtonOnClick: this.goBack
        });
      }

      return this.props.children;
    }
  }], [{
    key: "getDerivedStateFromError",
    value: function getDerivedStateFromError() {
      return {
        hasError: true
      };
    }
  }]);
  return ErrorBoundary;
}(_react.default.Component);

exports.default = ErrorBoundary;
(0, _defineProperty2.default)(ErrorBoundary, "propTypes", {
  children: PropTypes.any,
  title: PropTypes.string,
  text: PropTypes.string,
  learnMoreUrl: PropTypes.string
});
(0, _defineProperty2.default)(ErrorBoundary, "defaultProps", {
  title: __('App could not be loaded', 'elementor'),
  text: __('We’re sorry, but something went wrong. Click on ‘Learn more’ and follow each of the steps to quickly solve it.', 'elementor'),
  learnMoreUrl: 'https://go.elementor.com/app-general-load-issue/'
});

/***/ }),

/***/ "../core/app/assets/js/organisms/wizard-footer.js":
/*!********************************************************!*\
  !*** ../core/app/assets/js/organisms/wizard-footer.js ***!
  \********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = WizardFooter;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

var _grid = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/grid/grid */ "../core/app/assets/js/ui/grid/grid.js"));

__webpack_require__(/*! ./wizard-footer.scss */ "../core/app/assets/js/organisms/wizard-footer.scss");

function WizardFooter(props) {
  var baseClassName = 'e-app-wizard-footer',
      classes = [baseClassName, props.className];

  if (props.separator) {
    classes.push(baseClassName + '__separator');
  }

  return /*#__PURE__*/_react.default.createElement(_grid.default, (0, _extends2.default)({
    container: true
  }, props, {
    className: (0, _utils.arrayToClassName)(classes)
  }), props.children);
}

WizardFooter.propTypes = {
  className: PropTypes.string,
  justify: PropTypes.any,
  separator: PropTypes.any,
  children: PropTypes.oneOfType([PropTypes.string, PropTypes.object, PropTypes.arrayOf(PropTypes.object)]).isRequired
};
WizardFooter.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/package.js":
/*!****************************************!*\
  !*** ../core/app/assets/js/package.js ***!
  \****************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _addNewButton = _interopRequireDefault(__webpack_require__(/*! ./ui/molecules/add-new-button */ "../core/app/assets/js/ui/molecules/add-new-button.js"));

var _box = _interopRequireDefault(__webpack_require__(/*! ./ui/atoms/box */ "../core/app/assets/js/ui/atoms/box.js"));

var _button = _interopRequireDefault(__webpack_require__(/*! ./ui/molecules/button */ "../core/app/assets/js/ui/molecules/button.js"));

var _card = _interopRequireDefault(__webpack_require__(/*! ./ui/card/card */ "../core/app/assets/js/ui/card/card.js"));

var _cardBody = _interopRequireDefault(__webpack_require__(/*! ./ui/card/card-body */ "../core/app/assets/js/ui/card/card-body.js"));

var _cardFooter = _interopRequireDefault(__webpack_require__(/*! ./ui/card/card-footer */ "../core/app/assets/js/ui/card/card-footer.js"));

var _cardImage = _interopRequireDefault(__webpack_require__(/*! ./ui/card/card-image */ "../core/app/assets/js/ui/card/card-image.js"));

var _cardHeader = _interopRequireDefault(__webpack_require__(/*! ./ui/card/card-header */ "../core/app/assets/js/ui/card/card-header.js"));

var _cardOverlay = _interopRequireDefault(__webpack_require__(/*! ./ui/card/card-overlay */ "../core/app/assets/js/ui/card/card-overlay.js"));

var _checkbox = _interopRequireDefault(__webpack_require__(/*! ./ui/atoms/checkbox */ "../core/app/assets/js/ui/atoms/checkbox.js"));

var _collapse = _interopRequireDefault(__webpack_require__(/*! ./molecules/collapse */ "../core/app/assets/js/molecules/collapse.js"));

var _cssGrid = _interopRequireDefault(__webpack_require__(/*! ./ui/atoms/css-grid */ "../core/app/assets/js/ui/atoms/css-grid.js"));

var _dialog = _interopRequireDefault(__webpack_require__(/*! ./ui/dialog/dialog */ "../core/app/assets/js/ui/dialog/dialog.js"));

var _dragDrop = _interopRequireDefault(__webpack_require__(/*! ./ui/atoms/drag-drop */ "../core/app/assets/js/ui/atoms/drag-drop.js"));

var _dropZone = _interopRequireDefault(__webpack_require__(/*! ./organisms/drop-zone */ "../core/app/assets/js/organisms/drop-zone.js"));

var _errorBoundary = _interopRequireDefault(__webpack_require__(/*! ./organisms/error-boundary */ "../core/app/assets/js/organisms/error-boundary.js"));

var _heading = _interopRequireDefault(__webpack_require__(/*! ./ui/atoms/heading */ "../core/app/assets/js/ui/atoms/heading.js"));

var _grid = _interopRequireDefault(__webpack_require__(/*! ./ui/grid/grid */ "../core/app/assets/js/ui/grid/grid.js"));

var _icon = _interopRequireDefault(__webpack_require__(/*! ./ui/atoms/icon */ "../core/app/assets/js/ui/atoms/icon.js"));

var _list = _interopRequireDefault(__webpack_require__(/*! ./ui/molecules/list */ "../core/app/assets/js/ui/molecules/list.js"));

var _menu = _interopRequireDefault(__webpack_require__(/*! ./ui/menu/menu */ "../core/app/assets/js/ui/menu/menu.js"));

var _menuItem = _interopRequireDefault(__webpack_require__(/*! ./ui/menu/menu-item */ "../core/app/assets/js/ui/menu/menu-item.js"));

var _modal = _interopRequireWildcard(__webpack_require__(/*! ./ui/modal/modal */ "../core/app/assets/js/ui/modal/modal.js"));

var _notFound = _interopRequireDefault(__webpack_require__(/*! ./pages/not-found */ "../core/app/assets/js/pages/not-found.js"));

var _notice = _interopRequireDefault(__webpack_require__(/*! ./ui/molecules/notice */ "../core/app/assets/js/ui/molecules/notice.js"));

var _page = _interopRequireDefault(__webpack_require__(/*! ./layout/page */ "../core/app/assets/js/layout/page.js"));

var _popover = _interopRequireDefault(__webpack_require__(/*! ./ui/molecules/popover */ "../core/app/assets/js/ui/molecules/popover.js"));

var _select = _interopRequireDefault(__webpack_require__(/*! ./ui/atoms/select */ "../core/app/assets/js/ui/atoms/select.js"));

var _select2 = _interopRequireDefault(__webpack_require__(/*! ./ui/molecules/select2 */ "../core/app/assets/js/ui/molecules/select2.js"));

var _text = _interopRequireDefault(__webpack_require__(/*! ./ui/atoms/text */ "../core/app/assets/js/ui/atoms/text.js"));

var _uploadFile = _interopRequireDefault(__webpack_require__(/*! ./molecules/upload-file */ "../core/app/assets/js/molecules/upload-file.js"));

var _inlineLink = _interopRequireDefault(__webpack_require__(/*! ./ui/molecules/inline-link */ "../core/app/assets/js/ui/molecules/inline-link.js"));

// Alphabetical order.
var _default = {
  AddNewButton: _addNewButton.default,
  Box: _box.default,
  Button: _button.default,
  Card: _card.default,
  CardBody: _cardBody.default,
  CardFooter: _cardFooter.default,
  CardHeader: _cardHeader.default,
  CardImage: _cardImage.default,
  CardOverlay: _cardOverlay.default,
  Checkbox: _checkbox.default,
  Collapse: _collapse.default,
  CssGrid: _cssGrid.default,
  Dialog: _dialog.default,
  DragDrop: _dragDrop.default,
  DropZone: _dropZone.default,
  ErrorBoundary: _errorBoundary.default,
  Heading: _heading.default,
  Grid: _grid.default,
  Icon: _icon.default,
  List: _list.default,
  Menu: _menu.default,
  MenuItem: _menuItem.default,
  Modal: _modal.Modal,
  ModalProvider: _modal.default,
  NotFound: _notFound.default,
  Notice: _notice.default,
  Page: _page.default,
  Popover: _popover.default,
  Select: _select.default,
  Select2: _select2.default,
  Text: _text.default,
  UploadFile: _uploadFile.default,
  InlineLink: _inlineLink.default
};
exports.default = _default;

/***/ }),

/***/ "../core/app/assets/js/pages/not-found.js":
/*!************************************************!*\
  !*** ../core/app/assets/js/pages/not-found.js ***!
  \************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = NotFound;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _page = _interopRequireDefault(__webpack_require__(/*! elementor-app/layout/page */ "../core/app/assets/js/layout/page.js"));

function NotFound() {
  var config = {
    title: __('Not Found', 'elementor'),
    className: 'eps-app__not-found',
    content: /*#__PURE__*/_react.default.createElement("h1", null, " ", __('Not Found', 'elementor'), " "),
    sidebar: /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null)
  };
  return /*#__PURE__*/_react.default.createElement(_page.default, config);
}

/***/ }),

/***/ "../core/app/assets/js/router.js":
/*!***************************************!*\
  !*** ../core/app/assets/js/router.js ***!
  \***************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var React = __webpack_require__(/*! react */ "react");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

/**
 * App Router
 *
 * TODO: Temporary solution for routing extensibility.
 */
var Router = /*#__PURE__*/function () {
  function Router() {
    (0, _classCallCheck2.default)(this, Router);
    (0, _defineProperty2.default)(this, "routes", []);
    (0, _defineProperty2.default)(this, "history", null);
  }

  (0, _createClass2.default)(Router, [{
    key: "addRoute",
    value:
    /**
     *
     * @param route {{
     *		path: string,
     *		component: object,
     *		props: object,
     * }}
     */
    function addRoute(route) {
      this.routes.push(route);
    }
  }, {
    key: "getRoutes",
    value: function getRoutes() {
      return this.routes.map(function (route) {
        var props = route.props || {}; // Use the path as a key, and add it as a prop.

        props.path = props.key = route.path;
        return React.createElement(route.component, props);
      });
    }
  }]);
  return Router;
}();

var router = new Router(); // Make router available for use within packages.

window.elementorAppPackages = {
  router: router
};
var _default = router;
exports.default = _default;

/***/ }),

/***/ "../core/app/assets/js/ui/atoms/box.js":
/*!*********************************************!*\
  !*** ../core/app/assets/js/ui/atoms/box.js ***!
  \*********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Box;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

__webpack_require__(/*! ./box.scss */ "../core/app/assets/js/ui/atoms/box.scss");

function Box(props) {
  var baseClassName = 'eps-box',
      classes = [baseClassName, props.className],
      style = {};

  if (props.hasOwnProperty('padding')) {
    style['--eps-box-padding'] = (0, _utils.pxToRem)(props.padding);
    classes.push(baseClassName + '--padding');
  }

  return /*#__PURE__*/_react.default.createElement("div", {
    style: style,
    className: (0, _utils.arrayToClassName)(classes)
  }, props.children);
}

Box.propTypes = {
  className: PropTypes.string,
  padding: PropTypes.string,
  children: PropTypes.oneOfType([PropTypes.string, PropTypes.object, PropTypes.arrayOf(PropTypes.object)]).isRequired
};
Box.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/ui/atoms/checkbox.js":
/*!**************************************************!*\
  !*** ../core/app/assets/js/ui/atoms/checkbox.js ***!
  \**************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Checkbox;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

__webpack_require__(/*! ./checkbox.scss */ "../core/app/assets/js/ui/atoms/checkbox.scss");

function Checkbox(props) {
  var baseClassName = 'eps-checkbox',
      classes = [baseClassName, props.className];

  if (props.rounded) {
    classes.push(baseClassName + '--rounded');
  }

  return /*#__PURE__*/_react.default.createElement("input", (0, _extends2.default)({}, props, {
    type: "checkbox",
    disabled: props.disabled,
    className: (0, _utils.arrayToClassName)(classes)
  }));
}

Checkbox.propTypes = {
  className: PropTypes.string,
  disabled: PropTypes.bool,
  rounded: PropTypes.bool
};
Checkbox.defaultProps = {
  className: '',
  disabled: false
};

/***/ }),

/***/ "../core/app/assets/js/ui/atoms/css-grid.js":
/*!**************************************************!*\
  !*** ../core/app/assets/js/ui/atoms/css-grid.js ***!
  \**************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = CssGrid;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! ../../utils/utils */ "../core/app/assets/js/utils/utils.js");

__webpack_require__(/*! ./css-grid.scss */ "../core/app/assets/js/ui/atoms/css-grid.scss");

function CssGrid(props) {
  var gridStyle = {
    '--eps-grid-columns': props.columns,
    '--eps-grid-spacing': (0, _utils.pxToRem)(props.spacing),
    '--eps-grid-col-min-width': (0, _utils.pxToRem)(props.colMinWidth),
    '--eps-grid-col-max-width': (0, _utils.pxToRem)(props.colMaxWidth)
  };
  return /*#__PURE__*/_react.default.createElement("div", {
    style: gridStyle,
    className: "eps-css-grid ".concat(props.className)
  }, props.children);
}

CssGrid.propTypes = {
  className: PropTypes.string,
  children: PropTypes.any.isRequired,
  columns: PropTypes.number,
  spacing: PropTypes.number,
  colMinWidth: PropTypes.number,
  colMaxWidth: PropTypes.number
};
CssGrid.defaultProps = {
  spacing: 24,
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/ui/atoms/drag-drop.js":
/*!***************************************************!*\
  !*** ../core/app/assets/js/ui/atoms/drag-drop.js ***!
  \***************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = DragDrop;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _utils = __webpack_require__(/*! ../../utils/utils */ "../core/app/assets/js/utils/utils.js");

__webpack_require__(/*! ./drag-drop.scss */ "../core/app/assets/js/ui/atoms/drag-drop.scss");

function DragDrop(props) {
  var _useState = (0, _react.useState)(false),
      _useState2 = (0, _slicedToArray2.default)(_useState, 2),
      isDragOver = _useState2[0],
      setIsDragOver = _useState2[1],
      getClassName = function getClassName() {
    var baseClassName = 'e-app-drag-drop',
        classes = [baseClassName, props.className];

    if (isDragOver && !props.isLoading) {
      classes.push(baseClassName + '--drag-over');
    }

    return (0, _utils.arrayToClassName)(classes);
  },
      onDragDropActions = function onDragDropActions(event) {
    event.preventDefault();
    event.stopPropagation();
  },
      dragDropEvents = {
    onDrop: function onDrop(event) {
      onDragDropActions(event);
      setIsDragOver(false);

      if (props.onDrop) {
        props.onDrop(event);
      }
    },
    onDragOver: function onDragOver(event) {
      onDragDropActions(event);
      setIsDragOver(true);

      if (props.onDragOver) {
        props.onDragOver(event);
      }
    },
    onDragLeave: function onDragLeave(event) {
      onDragDropActions(event);
      setIsDragOver(false);

      if (props.onDragLeave) {
        props.onDragLeave(event);
      }
    }
  };

  return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({}, dragDropEvents, {
    className: getClassName()
  }), props.children);
}

DragDrop.propTypes = {
  className: PropTypes.string,
  children: PropTypes.any,
  onDrop: PropTypes.func,
  onDragLeave: PropTypes.func,
  onDragOver: PropTypes.func,
  isLoading: PropTypes.bool
};
DragDrop.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/ui/atoms/heading.js":
/*!*************************************************!*\
  !*** ../core/app/assets/js/ui/atoms/heading.js ***!
  \*************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Heading;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! ../../utils/utils */ "../core/app/assets/js/utils/utils.js");

function Heading(props) {
  var baseClassName = 'eps',
      classes = [props.className];

  if (props.variant) {
    classes.push(baseClassName + '-' + props.variant);
  }

  var Element = function Element() {
    return _react.default.createElement(props.tag, {
      className: (0, _utils.arrayToClassName)(classes)
    }, props.children);
  };

  return /*#__PURE__*/_react.default.createElement(Element, null);
}

Heading.propTypes = {
  className: PropTypes.string,
  children: PropTypes.oneOfType([PropTypes.string, PropTypes.object, PropTypes.arrayOf(PropTypes.object)]).isRequired,
  tag: PropTypes.oneOf(['h1', 'h2', 'h3', 'h4', 'h5', 'h6']),
  variant: PropTypes.oneOf(['display-1', 'display-2', 'display-3', 'display-4', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6']).isRequired
};
Heading.defaultProps = {
  className: '',
  tag: 'h1'
};

/***/ }),

/***/ "../core/app/assets/js/ui/atoms/icon.js":
/*!**********************************************!*\
  !*** ../core/app/assets/js/ui/atoms/icon.js ***!
  \**********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Icon;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

function Icon(props) {
  return /*#__PURE__*/_react.default.createElement("i", {
    className: "eps-icon ".concat(props.className)
  });
}

Icon.propTypes = {
  className: PropTypes.string.isRequired
};
Icon.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/ui/atoms/select.js":
/*!************************************************!*\
  !*** ../core/app/assets/js/ui/atoms/select.js ***!
  \************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Select;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

function Select(props) {
  return /*#__PURE__*/_react.default.createElement("select", {
    multiple: props.multiple,
    className: props.className,
    value: props.value,
    onChange: props.onChange,
    ref: props.elRef
  }, props.options.map(function (option) {
    return option.children ? /*#__PURE__*/_react.default.createElement("optgroup", {
      label: option.label,
      key: option.label
    }, option.children.map(function (childOption) {
      return /*#__PURE__*/_react.default.createElement("option", {
        key: childOption.value,
        value: childOption.value
      }, childOption.label);
    })) : /*#__PURE__*/_react.default.createElement("option", {
      key: option.value,
      value: option.value
    }, option.label);
  }));
}

Select.propTypes = {
  className: PropTypes.string,
  value: PropTypes.string,
  onChange: PropTypes.func,
  options: PropTypes.array,
  elRef: PropTypes.object,
  multiple: PropTypes.bool
};
Select.defaultProps = {
  className: '',
  options: []
};

/***/ }),

/***/ "../core/app/assets/js/ui/atoms/text-field.js":
/*!****************************************************!*\
  !*** ../core/app/assets/js/ui/atoms/text-field.js ***!
  \****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = TextField;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _utils = __webpack_require__(/*! ../../utils/utils */ "../core/app/assets/js/utils/utils.js");

__webpack_require__(/*! ./text-field.scss */ "../core/app/assets/js/ui/atoms/text-field.scss");

function TextField(props) {
  var classNameBase = 'eps-text-field',
      classes = [classNameBase, props.className, (0, _defineProperty2.default)({}, classNameBase + '--outlined', 'outlined' === props.variant)],
      validProps = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, props), {}, {
    className: (0, _utils.arrayToClassName)(classes)
  });

  if (validProps.multiline) {
    delete validProps.multiline;
    return /*#__PURE__*/_react.default.createElement("textarea", validProps);
  }

  return /*#__PURE__*/_react.default.createElement("input", (0, _extends2.default)({}, validProps, {
    type: "text"
  }));
}

TextField.propTypes = {
  className: PropTypes.string,
  multiline: PropTypes.bool,
  variant: PropTypes.oneOf(['standard', 'outlined']),
  children: PropTypes.string
};
TextField.defaultProps = {
  className: '',
  variant: 'standard'
};

/***/ }),

/***/ "../core/app/assets/js/ui/atoms/text.js":
/*!**********************************************!*\
  !*** ../core/app/assets/js/ui/atoms/text.js ***!
  \**********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Text;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! ../../utils/utils */ "../core/app/assets/js/utils/utils.js");

function Text(props) {
  var baseClassName = 'eps',
      classes = [props.className],
      variant = props.variant && 'md' !== props.variant ? '-' + props.variant : '';
  classes.push(baseClassName + '-text' + variant);

  var Element = function Element() {
    return _react.default.createElement(props.tag, {
      className: (0, _utils.arrayToClassName)(classes)
    }, props.children);
  };

  return /*#__PURE__*/_react.default.createElement(Element, null);
}

Text.propTypes = {
  className: PropTypes.string,
  variant: PropTypes.oneOf(['xl', 'lg', 'md', 'sm', 'xs', 'xxs']),
  tag: PropTypes.string,
  children: PropTypes.any.isRequired
};
Text.defaultProps = {
  className: '',
  tag: 'p'
};

/***/ }),

/***/ "../core/app/assets/js/ui/card/card-body.js":
/*!**************************************************!*\
  !*** ../core/app/assets/js/ui/card/card-body.js ***!
  \**************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = CardBody;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

__webpack_require__(/*! ./card.scss */ "../core/app/assets/js/ui/card/card.scss");

function CardBody(props) {
  var classNameBase = 'eps-card__body',
      classes = [classNameBase, props.className],
      style = {};

  if (props.hasOwnProperty('padding')) {
    style['--eps-card-body-padding'] = (0, _utils.pxToRem)(props.padding);
    classes.push(classNameBase + '--padding');
  }

  return /*#__PURE__*/_react.default.createElement("main", {
    className: (0, _utils.arrayToClassName)(classes),
    style: style
  }, props.children);
}

CardBody.propTypes = {
  className: PropTypes.string,
  padding: PropTypes.string,
  passive: PropTypes.bool,
  active: PropTypes.bool,
  children: PropTypes.any.isRequired
};
CardBody.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/ui/card/card-divider.js":
/*!*****************************************************!*\
  !*** ../core/app/assets/js/ui/card/card-divider.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = CardDivider;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

__webpack_require__(/*! ./card.scss */ "../core/app/assets/js/ui/card/card.scss");

function CardDivider(props) {
  var classNameBase = 'eps-card__divider',
      classes = [classNameBase, props.className];
  return /*#__PURE__*/_react.default.createElement("hr", {
    className: (0, _utils.arrayToClassName)(classes)
  });
}

CardDivider.propTypes = {
  className: PropTypes.string
};
CardDivider.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/ui/card/card-footer.js":
/*!****************************************************!*\
  !*** ../core/app/assets/js/ui/card/card-footer.js ***!
  \****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = CardFooter;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

__webpack_require__(/*! ./card.scss */ "../core/app/assets/js/ui/card/card.scss");

function CardFooter(props) {
  var classNameBase = 'eps-card__footer',
      classes = [classNameBase, props.className],
      style = {};

  if (props.hasOwnProperty('padding')) {
    style['--eps-card-footer-padding'] = (0, _utils.pxToRem)(props.padding);
    classes.push(classNameBase + '--padding');
  }

  return /*#__PURE__*/_react.default.createElement("footer", {
    className: (0, _utils.arrayToClassName)(classes),
    style: style
  }, props.children);
}

CardFooter.propTypes = {
  className: PropTypes.string,
  padding: PropTypes.string,
  passive: PropTypes.bool,
  active: PropTypes.bool,
  children: PropTypes.object.isRequired
};
CardFooter.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/ui/card/card-header.js":
/*!****************************************************!*\
  !*** ../core/app/assets/js/ui/card/card-header.js ***!
  \****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = CardHeader;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

__webpack_require__(/*! ./card.scss */ "../core/app/assets/js/ui/card/card.scss");

function CardHeader(props) {
  var classNameBase = 'eps-card__header',
      classes = [classNameBase, props.className],
      style = {};

  if (props.hasOwnProperty('padding')) {
    style['--eps-card-header-padding'] = (0, _utils.pxToRem)(props.padding);
    classes.push(classNameBase + '--padding');
  }

  return /*#__PURE__*/_react.default.createElement("header", {
    className: (0, _utils.arrayToClassName)(classes),
    style: style
  }, props.children);
}

CardHeader.propTypes = {
  className: PropTypes.string,
  padding: PropTypes.string,
  passive: PropTypes.bool,
  active: PropTypes.bool,
  children: PropTypes.any.isRequired
};
CardHeader.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/ui/card/card-headline.js":
/*!******************************************************!*\
  !*** ../core/app/assets/js/ui/card/card-headline.js ***!
  \******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = CardHeadline;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

__webpack_require__(/*! ./card.scss */ "../core/app/assets/js/ui/card/card.scss");

function CardHeadline(props) {
  var classNameBase = 'eps-card__headline',
      classes = [classNameBase, props.className];
  return /*#__PURE__*/_react.default.createElement("h4", {
    className: (0, _utils.arrayToClassName)(classes)
  }, props.children);
}

CardHeadline.propTypes = {
  className: PropTypes.string,
  children: PropTypes.any.isRequired
};
CardHeadline.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/ui/card/card-image.js":
/*!***************************************************!*\
  !*** ../core/app/assets/js/ui/card/card-image.js ***!
  \***************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = CardImage;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! ./card.scss */ "../core/app/assets/js/ui/card/card.scss");

function CardImage(props) {
  var image = /*#__PURE__*/_react.default.createElement("img", {
    src: props.src,
    alt: props.alt,
    className: "eps-card__image",
    loading: "lazy"
  });

  return /*#__PURE__*/_react.default.createElement("figure", {
    className: "eps-card__figure ".concat(props.className)
  }, image, props.children);
}

CardImage.propTypes = {
  className: PropTypes.string,
  src: PropTypes.string.isRequired,
  alt: PropTypes.string.isRequired,
  children: PropTypes.any
};
CardImage.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/ui/card/card-overlay.js":
/*!*****************************************************!*\
  !*** ../core/app/assets/js/ui/card/card-overlay.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = CardOverlay;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! ./card.scss */ "../core/app/assets/js/ui/card/card.scss");

function CardOverlay(props) {
  return /*#__PURE__*/_react.default.createElement("div", {
    className: "eps-card__image-overlay ".concat(props.className)
  }, props.children);
}

CardOverlay.propTypes = {
  className: PropTypes.string,
  children: PropTypes.object.isRequired
};
CardOverlay.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/ui/card/card.js":
/*!*********************************************!*\
  !*** ../core/app/assets/js/ui/card/card.js ***!
  \*********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _cardHeader = _interopRequireDefault(__webpack_require__(/*! ./card-header */ "../core/app/assets/js/ui/card/card-header.js"));

var _cardBody = _interopRequireDefault(__webpack_require__(/*! ./card-body */ "../core/app/assets/js/ui/card/card-body.js"));

var _cardImage = _interopRequireDefault(__webpack_require__(/*! ./card-image */ "../core/app/assets/js/ui/card/card-image.js"));

var _cardOverlay = _interopRequireDefault(__webpack_require__(/*! ./card-overlay */ "../core/app/assets/js/ui/card/card-overlay.js"));

var _cardFooter = _interopRequireDefault(__webpack_require__(/*! ./card-footer */ "../core/app/assets/js/ui/card/card-footer.js"));

var _cardHeadline = _interopRequireDefault(__webpack_require__(/*! ./card-headline */ "../core/app/assets/js/ui/card/card-headline.js"));

var _cardDivider = _interopRequireDefault(__webpack_require__(/*! ./card-divider */ "../core/app/assets/js/ui/card/card-divider.js"));

__webpack_require__(/*! ./card.scss */ "../core/app/assets/js/ui/card/card.scss");

var Card = _react.default.forwardRef(function (props, ref) {
  return /*#__PURE__*/_react.default.createElement("article", {
    className: "eps-card ".concat(props.className),
    ref: ref
  }, props.children);
});

Card.propTypes = {
  type: PropTypes.string,
  className: PropTypes.string,
  children: PropTypes.any
};
Card.defaultProps = {
  className: ''
};
Card.displayName = 'Card';
Card.Header = _cardHeader.default;
Card.Body = _cardBody.default;
Card.Image = _cardImage.default;
Card.Overlay = _cardOverlay.default;
Card.Footer = _cardFooter.default;
Card.Headline = _cardHeadline.default;
Card.Divider = _cardDivider.default;
var _default = Card;
exports.default = _default;

/***/ }),

/***/ "../core/app/assets/js/ui/dialog/dialog-actions.js":
/*!*********************************************************!*\
  !*** ../core/app/assets/js/ui/dialog/dialog-actions.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = DialogActions;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

function DialogActions(props) {
  return /*#__PURE__*/_react.default.createElement("div", {
    className: "eps-dialog__buttons"
  }, props.children);
}

DialogActions.propTypes = {
  children: PropTypes.any
};

/***/ }),

/***/ "../core/app/assets/js/ui/dialog/dialog-button.js":
/*!********************************************************!*\
  !*** ../core/app/assets/js/ui/dialog/dialog-button.js ***!
  \********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = DialogButton;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

var _button = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/button */ "../core/app/assets/js/ui/molecules/button.js"));

function DialogButton(props) {
  return /*#__PURE__*/_react.default.createElement(_button.default, (0, _extends2.default)({}, props, {
    className: "eps-dialog__button ".concat(props.className)
  }));
}

DialogButton.propTypes = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, _button.default.propTypes), {}, {
  tabIndex: PropTypes.string,
  type: PropTypes.string
});
DialogButton.defaultProps = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, _button.default.defaultProps), {}, {
  tabIndex: '0',
  type: 'button'
});

/***/ }),

/***/ "../core/app/assets/js/ui/dialog/dialog-content.js":
/*!*********************************************************!*\
  !*** ../core/app/assets/js/ui/dialog/dialog-content.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = DialogContent;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

function DialogContent(props) {
  return /*#__PURE__*/_react.default.createElement("div", {
    className: "eps-dialog__content"
  }, props.children);
}

DialogContent.propTypes = {
  children: PropTypes.any
};

/***/ }),

/***/ "../core/app/assets/js/ui/dialog/dialog-text.js":
/*!******************************************************!*\
  !*** ../core/app/assets/js/ui/dialog/dialog-text.js ***!
  \******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = DialogText;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

var _text = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/text */ "../core/app/assets/js/ui/atoms/text.js"));

function DialogText(props) {
  return /*#__PURE__*/_react.default.createElement(_text.default, (0, _extends2.default)({
    variant: "xs"
  }, props, {
    className: "eps-dialog__text ".concat(props.className)
  }));
}

DialogText.propTypes = (0, _objectSpread2.default)({}, _text.default.propTypes);
DialogText.defaultProps = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, _text.default.defaultProps), {}, {
  tag: 'p',
  variant: 'sm'
});

/***/ }),

/***/ "../core/app/assets/js/ui/dialog/dialog-title.js":
/*!*******************************************************!*\
  !*** ../core/app/assets/js/ui/dialog/dialog-title.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = DialogTitle;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

var _heading = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/heading */ "../core/app/assets/js/ui/atoms/heading.js"));

function DialogTitle(props) {
  return /*#__PURE__*/_react.default.createElement(_heading.default, (0, _extends2.default)({}, props, {
    className: "eps-dialog__title ".concat(props.className)
  }));
}

DialogTitle.propTypes = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, _heading.default.propTypes), {}, {
  className: PropTypes.string
});
DialogTitle.defaultProps = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, _heading.default.propTypes), {}, {
  variant: 'h3',
  tag: 'h3',
  className: ''
});

/***/ }),

/***/ "../core/app/assets/js/ui/dialog/dialog-wrapper.js":
/*!*********************************************************!*\
  !*** ../core/app/assets/js/ui/dialog/dialog-wrapper.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = DialogWrapper;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _button = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/button */ "../core/app/assets/js/ui/molecules/button.js"));

function DialogWrapper(props) {
  var WrapperTag = 'div';

  if (props.onSubmit) {
    WrapperTag = 'form';
  }

  return /*#__PURE__*/_react.default.createElement("section", {
    className: "eps-modal__overlay"
  }, /*#__PURE__*/_react.default.createElement(WrapperTag, {
    className: "eps-modal eps-dialog",
    onSubmit: props.onSubmit
  }, props.onClose && /*#__PURE__*/_react.default.createElement(_button.default, {
    onClick: props.onClose,
    text: __('Close', 'elementor'),
    hideText: true,
    icon: "eicon-close",
    className: "eps-dialog__close-button"
  }), props.children));
}

DialogWrapper.propTypes = {
  onClose: PropTypes.func,
  onSubmit: PropTypes.func,
  children: PropTypes.any
};

/***/ }),

/***/ "../core/app/assets/js/ui/dialog/dialog.js":
/*!*************************************************!*\
  !*** ../core/app/assets/js/ui/dialog/dialog.js ***!
  \*************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Dialog;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _dialogWrapper = _interopRequireDefault(__webpack_require__(/*! ./dialog-wrapper */ "../core/app/assets/js/ui/dialog/dialog-wrapper.js"));

var _dialogContent = _interopRequireDefault(__webpack_require__(/*! ./dialog-content */ "../core/app/assets/js/ui/dialog/dialog-content.js"));

var _dialogTitle = _interopRequireDefault(__webpack_require__(/*! ./dialog-title */ "../core/app/assets/js/ui/dialog/dialog-title.js"));

var _dialogText = _interopRequireDefault(__webpack_require__(/*! ./dialog-text */ "../core/app/assets/js/ui/dialog/dialog-text.js"));

var _dialogActions = _interopRequireDefault(__webpack_require__(/*! ./dialog-actions */ "../core/app/assets/js/ui/dialog/dialog-actions.js"));

var _dialogButton = _interopRequireDefault(__webpack_require__(/*! ./dialog-button */ "../core/app/assets/js/ui/dialog/dialog-button.js"));

__webpack_require__(/*! ./dialog.scss */ "../core/app/assets/js/ui/dialog/dialog.scss");

function Dialog(props) {
  return /*#__PURE__*/_react.default.createElement(_dialogWrapper.default, {
    onSubmit: props.onSubmit,
    onClose: props.onClose
  }, /*#__PURE__*/_react.default.createElement(_dialogContent.default, null, props.title && /*#__PURE__*/_react.default.createElement(_dialogTitle.default, null, props.title), props.text && /*#__PURE__*/_react.default.createElement(_dialogText.default, null, props.text), props.children), /*#__PURE__*/_react.default.createElement(_dialogActions.default, null, /*#__PURE__*/_react.default.createElement(_dialogButton.default, {
    key: "dismiss",
    text: props.dismissButtonText,
    onClick: props.dismissButtonOnClick,
    url: props.dismissButtonUrl,
    target: props.dismissButtonTarget,
    tabIndex: "2"
  }), /*#__PURE__*/_react.default.createElement(_dialogButton.default, {
    key: "approve",
    text: props.approveButtonText,
    onClick: props.approveButtonOnClick,
    url: props.approveButtonUrl,
    target: props.approveButtonTarget,
    color: props.approveButtonColor,
    elRef: props.approveButtonRef,
    tabIndex: "1"
  })));
}

Dialog.propTypes = {
  title: PropTypes.any,
  text: PropTypes.any,
  children: PropTypes.any,
  onSubmit: PropTypes.func,
  onClose: PropTypes.func,
  dismissButtonText: PropTypes.string.isRequired,
  dismissButtonOnClick: PropTypes.func,
  dismissButtonUrl: PropTypes.string,
  dismissButtonTarget: PropTypes.string,
  approveButtonText: PropTypes.string.isRequired,
  approveButtonOnClick: PropTypes.func,
  approveButtonUrl: PropTypes.string,
  approveButtonColor: PropTypes.string,
  approveButtonTarget: PropTypes.string,
  approveButtonRef: PropTypes.object
};
Dialog.defaultProps = {};
Dialog.Wrapper = _dialogWrapper.default;
Dialog.Content = _dialogContent.default;
Dialog.Title = _dialogTitle.default;
Dialog.Text = _dialogText.default;
Dialog.Actions = _dialogActions.default;
Dialog.Button = _dialogButton.default;

/***/ }),

/***/ "../core/app/assets/js/ui/grid/grid.js":
/*!*********************************************!*\
  !*** ../core/app/assets/js/ui/grid/grid.js ***!
  \*********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Grid;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.regexp.match.js */ "../node_modules/core-js/modules/es6.regexp.match.js");

__webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");

var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/toConsumableArray */ "../node_modules/@babel/runtime-corejs2/helpers/toConsumableArray.js"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

__webpack_require__(/*! ./grid.scss */ "../core/app/assets/js/ui/grid/grid.scss");

function Grid(props) {
  var propsMap = {
    direction: '--direction{{ -VALUE }}',
    justify: '--justify{{ -VALUE }}',
    alignContent: '--align-content{{ -VALUE }}',
    alignItems: '--align-items{{ -VALUE }}',
    container: '-container',
    item: '-item',
    noWrap: '-container--no-wrap',
    wrapReverse: '-container--wrap-reverse',
    zeroMinWidth: '-item--zero-min-width',
    spacing: '-container--spacing',
    xs: '-item-xs{{ -VALUE }}',
    sm: '-item-sm{{ -VALUE }}',
    md: '-item-md{{ -VALUE }}',
    lg: '-item-lg{{ -VALUE }}',
    xl: '-item-xl{{ -VALUE }}',
    xxl: '-item-xxl{{ -VALUE }}'
  },
      getStyle = function getStyle() {
    return isValidPropValue(props.spacing) ? {
      '--grid-spacing-gutter': (0, _utils.pxToRem)(props.spacing)
    } : {};
  },
      classes = [getBaseClassName(), props.className].concat((0, _toConsumableArray2.default)(getPropsClasses(propsMap, props)));

  return /*#__PURE__*/_react.default.createElement("div", {
    style: getStyle(),
    className: (0, _utils.arrayToClassName)(classes)
  }, props.children);
}

function getPropsClasses(propsMap, props) {
  var classes = [];

  for (var prop in propsMap) {
    if (props[prop]) {
      var propValue = isValidPropValue(props[prop]) ? props[prop] : '';
      classes.push(getBaseClassName() + renderPropValueBrackets(propsMap[prop], propValue));
    }
  }

  return classes;
}

function renderPropValueBrackets(propClass, propValue) {
  var brackets = propClass.match(/{{.*?}}/);

  if (brackets) {
    var bracketsValue = propValue ? brackets[0].replace(/[{ }]/g, '').replace(/value/i, propValue) : '';
    propClass = propClass.replace(brackets[0], bracketsValue);
  }

  return propClass;
}

function getBaseClassName() {
  return 'eps-grid';
}

function isValidPropValue(propValue) {
  return propValue && 'boolean' !== typeof propValue;
}

Grid.propTypes = {
  className: PropTypes.string,
  direction: PropTypes.oneOf(['row', 'column', 'row-reverse', 'column-reverse']),
  justify: PropTypes.oneOf(['start', 'center', 'end', 'space-between', 'space-evenly', 'space-around', 'stretch']),
  alignContent: PropTypes.oneOf(['start', 'center', 'end', 'space-between', 'stretch']),
  alignItems: PropTypes.oneOf(['start', 'center', 'end', 'baseline', 'stretch']),
  container: PropTypes.bool,
  item: PropTypes.bool,
  noWrap: PropTypes.bool,
  wrapReverse: PropTypes.bool,
  zeroMinWidth: PropTypes.bool,
  spacing: PropTypes.number,
  xs: PropTypes.oneOfType([PropTypes.number, PropTypes.bool]),
  sm: PropTypes.oneOfType([PropTypes.number, PropTypes.bool]),
  md: PropTypes.oneOfType([PropTypes.number, PropTypes.bool]),
  lg: PropTypes.oneOfType([PropTypes.number, PropTypes.bool]),
  xl: PropTypes.oneOfType([PropTypes.number, PropTypes.bool]),
  xxl: PropTypes.oneOfType([PropTypes.number, PropTypes.bool]),
  children: PropTypes.any.isRequired
};
Grid.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/ui/menu/menu-item.js":
/*!**************************************************!*\
  !*** ../core/app/assets/js/ui/menu/menu-item.js ***!
  \**************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

__webpack_require__(/*! ./menu-item.scss */ "../core/app/assets/js/ui/menu/menu-item.scss");

var _button = _interopRequireDefault(__webpack_require__(/*! ../molecules/button */ "../core/app/assets/js/ui/molecules/button.js"));

var SideMenuItem = /*#__PURE__*/function (_BaseButton) {
  (0, _inherits2.default)(SideMenuItem, _BaseButton);

  var _super = (0, _createSuper2.default)(SideMenuItem);

  function SideMenuItem() {
    (0, _classCallCheck2.default)(this, SideMenuItem);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(SideMenuItem, [{
    key: "getCssId",
    value: function getCssId() {
      return "eps-menu-item-" + (0, _get2.default)((0, _getPrototypeOf2.default)(SideMenuItem.prototype), "getCssId", this).call(this);
    }
  }, {
    key: "getClassName",
    value: function getClassName() {
      return "eps-menu-item " + (0, _get2.default)((0, _getPrototypeOf2.default)(SideMenuItem.prototype), "getClassName", this).call(this);
    }
  }]);
  return SideMenuItem;
}(_button.default);

exports.default = SideMenuItem;

/***/ }),

/***/ "../core/app/assets/js/ui/menu/menu.js":
/*!*********************************************!*\
  !*** ../core/app/assets/js/ui/menu/menu.js ***!
  \*********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Menu;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

__webpack_require__(/*! core-js/modules/es6.regexp.match.js */ "../node_modules/core-js/modules/es6.regexp.match.js");

__webpack_require__(/*! ./menu.scss */ "../core/app/assets/js/ui/menu/menu.scss");

var _button = _interopRequireDefault(__webpack_require__(/*! ../molecules/button */ "../core/app/assets/js/ui/molecules/button.js"));

var _router = _interopRequireDefault(__webpack_require__(/*! @elementor/router */ "@elementor/router"));

var _router2 = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js");

function Menu(props) {
  var ActionButton = function ActionButton(itemProps) {
    if (!props.actionButton) {
      return '';
    }

    return props.actionButton(itemProps);
  };

  if (props.promotion) {
    return /*#__PURE__*/_react.default.createElement("nav", {
      className: "eps-menu"
    }, props.children, /*#__PURE__*/_react.default.createElement("ul", null, props.menuItems.map(function (item) {
      return /*#__PURE__*/_react.default.createElement("li", {
        key: item.type,
        className: "eps-menu-item"
      }, /*#__PURE__*/_react.default.createElement(_button.default, (0, _extends2.default)({
        text: item.title,
        className: "eps-menu-item__link"
      }, item)), /*#__PURE__*/_react.default.createElement(ActionButton, item));
    })));
  }

  return /*#__PURE__*/_react.default.createElement(_router2.LocationProvider, {
    history: _router.default.appHistory
  }, /*#__PURE__*/_react.default.createElement("nav", {
    className: "eps-menu"
  }, props.children, /*#__PURE__*/_react.default.createElement("ul", null, props.menuItems.map(function (item) {
    return /*#__PURE__*/_react.default.createElement(_router2.Match, {
      key: item.type,
      path: item.url
    }, function (_ref) {
      var match = _ref.match;
      return /*#__PURE__*/_react.default.createElement("li", {
        key: item.type,
        className: "eps-menu-item".concat(match ? ' eps-menu-item--active' : '')
      }, /*#__PURE__*/_react.default.createElement(_button.default, (0, _extends2.default)({
        text: item.title,
        className: "eps-menu-item__link"
      }, item)), /*#__PURE__*/_react.default.createElement(ActionButton, item));
    });
  }))));
}

Menu.propTypes = {
  menuItems: PropTypes.arrayOf(PropTypes.object),
  children: PropTypes.any,
  actionButton: PropTypes.func,
  promotion: PropTypes.bool
};

/***/ }),

/***/ "../core/app/assets/js/ui/modal/modal-section.js":
/*!*******************************************************!*\
  !*** ../core/app/assets/js/ui/modal/modal-section.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ModalSection;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! ../../utils/utils */ "../core/app/assets/js/utils/utils.js");

function ModalSection(props) {
  return /*#__PURE__*/_react.default.createElement("section", {
    className: (0, _utils.arrayToClassName)(['eps-modal__section', props.className])
  }, props.children);
}

ModalSection.propTypes = {
  className: PropTypes.string,
  children: PropTypes.any
};
ModalSection.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/ui/modal/modal-tip.js":
/*!***************************************************!*\
  !*** ../core/app/assets/js/ui/modal/modal-tip.js ***!
  \***************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ModalTip;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! ../../utils/utils */ "../core/app/assets/js/utils/utils.js");

var _heading = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/heading */ "../core/app/assets/js/ui/atoms/heading.js"));

var _text = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/text */ "../core/app/assets/js/ui/atoms/text.js"));

function ModalTip(props) {
  return /*#__PURE__*/_react.default.createElement("div", {
    className: (0, _utils.arrayToClassName)(['eps-modal__tip', props.className])
  }, /*#__PURE__*/_react.default.createElement(_heading.default, {
    variant: "h3",
    tag: "h3"
  }, props.title), props.description && /*#__PURE__*/_react.default.createElement(_text.default, {
    variant: "xs"
  }, props.description));
}

ModalTip.propTypes = {
  className: PropTypes.string,
  title: PropTypes.string,
  description: PropTypes.string
};
ModalTip.defaultProps = {
  className: '',
  title: __('Tip', 'elementor')
};

/***/ }),

/***/ "../core/app/assets/js/ui/modal/modal.js":
/*!***********************************************!*\
  !*** ../core/app/assets/js/ui/modal/modal.js ***!
  \***********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ModalProvider;
exports.Modal = void 0;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

var _button = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/button */ "../core/app/assets/js/ui/molecules/button.js"));

var _grid = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/grid/grid */ "../core/app/assets/js/ui/grid/grid.js"));

var _icon = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/icon */ "../core/app/assets/js/ui/atoms/icon.js"));

var _text = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/text */ "../core/app/assets/js/ui/atoms/text.js"));

var _modalSection = _interopRequireDefault(__webpack_require__(/*! ./modal-section */ "../core/app/assets/js/ui/modal/modal-section.js"));

var _modalTip = _interopRequireDefault(__webpack_require__(/*! ./modal-tip */ "../core/app/assets/js/ui/modal/modal-tip.js"));

__webpack_require__(/*! ./modal.scss */ "../core/app/assets/js/ui/modal/modal.scss");

function ModalProvider(props) {
  var _useState = (0, _react.useState)(props.show),
      _useState2 = (0, _slicedToArray2.default)(_useState, 2),
      show = _useState2[0],
      setShow = _useState2[1],
      hideModal = function hideModal() {
    setShow(false); // The purpose of the props.setShow is to sync an external state with the component inner state.

    // The purpose of the props.setShow is to sync an external state with the component inner state.
    if (props.setShow) {
      props.setShow(false);
    }
  },
      showModal = function showModal() {
    setShow(true); // The purpose of the props.setShow is to sync an external state with the component inner state.

    // The purpose of the props.setShow is to sync an external state with the component inner state.
    if (props.setShow) {
      props.setShow(true);
    }
  },
      modalAttrs = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, props), {}, {
    show: show,
    hideModal: hideModal,
    showModal: showModal
  });

  (0, _react.useEffect)(function () {
    // Sync with external state.
    setShow(props.show);
  }, [props.show]);
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, props.toggleButtonProps && /*#__PURE__*/_react.default.createElement(_button.default, (0, _extends2.default)({}, props.toggleButtonProps, {
    onClick: showModal
  })), /*#__PURE__*/_react.default.createElement(Modal, modalAttrs, props.children));
}

ModalProvider.propTypes = {
  children: PropTypes.node.isRequired,
  toggleButtonProps: PropTypes.object,
  title: PropTypes.string,
  icon: PropTypes.string,
  show: PropTypes.bool,
  setShow: PropTypes.func
};
ModalProvider.defaultProps = {
  show: false
};
ModalProvider.Section = _modalSection.default;
ModalProvider.Tip = _modalTip.default;

var Modal = function Modal(props) {
  var modalRef = (0, _react.useRef)(null),
      closeRef = (0, _react.useRef)(null),
      closeModal = function closeModal(e) {
    var node = modalRef.current,
        closeNode = closeRef.current,
        isInCloseNode = closeNode && closeNode.contains(e.target); // ignore if click is inside the modal

    if (node && node.contains(e.target) && !isInCloseNode) {
      return;
    }

    props.hideModal();
  };

  (0, _react.useEffect)(function () {
    if (props.show) {
      document.addEventListener('mousedown', closeModal, false);
    }

    return function () {
      return document.removeEventListener('mousedown', closeModal, false);
    };
  }, [props.show]);

  if (!props.show) {
    return null;
  }

  return /*#__PURE__*/_react.default.createElement("div", {
    className: "eps-modal__overlay",
    onClick: closeModal
  }, /*#__PURE__*/_react.default.createElement("div", {
    className: (0, _utils.arrayToClassName)(['eps-modal', props.className]),
    ref: modalRef
  }, /*#__PURE__*/_react.default.createElement(_grid.default, {
    container: true,
    className: "eps-modal__header",
    justify: "space-between",
    alignItems: "center"
  }, /*#__PURE__*/_react.default.createElement(_grid.default, {
    item: true
  }, /*#__PURE__*/_react.default.createElement(_icon.default, {
    className: "eps-modal__icon ".concat(props.icon)
  }), /*#__PURE__*/_react.default.createElement(_text.default, {
    className: "title",
    tag: "span"
  }, props.title)), /*#__PURE__*/_react.default.createElement(_grid.default, {
    item: true
  }, /*#__PURE__*/_react.default.createElement("div", {
    className: "eps-modal__close-wrapper",
    ref: closeRef
  }, /*#__PURE__*/_react.default.createElement(_button.default, {
    text: __('Close', 'elementor'),
    hideText: true,
    icon: "eicon-close",
    onClick: props.closeModal
  })))), /*#__PURE__*/_react.default.createElement("div", {
    className: "eps-modal__body"
  }, props.children)));
};

exports.Modal = Modal;
Modal.propTypes = {
  className: PropTypes.string,
  children: PropTypes.any.isRequired,
  title: PropTypes.string.isRequired,
  icon: PropTypes.string,
  show: PropTypes.bool,
  setShow: PropTypes.func,
  hideModal: PropTypes.func,
  showModal: PropTypes.func,
  closeModal: PropTypes.func
};
Modal.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/ui/molecules/add-new-button.js":
/*!************************************************************!*\
  !*** ../core/app/assets/js/ui/molecules/add-new-button.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _button = _interopRequireDefault(__webpack_require__(/*! ./button */ "../core/app/assets/js/ui/molecules/button.js"));

__webpack_require__(/*! ./add-new-button.scss */ "../core/app/assets/js/ui/molecules/add-new-button.scss");

var AddNewButton = /*#__PURE__*/function (_Button) {
  (0, _inherits2.default)(AddNewButton, _Button);

  var _super = (0, _createSuper2.default)(AddNewButton);

  function AddNewButton() {
    (0, _classCallCheck2.default)(this, AddNewButton);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(AddNewButton, [{
    key: "getClassName",
    value: function getClassName() {
      var className = this.props.className;

      if (this.props.size) {
        className += ' eps-add-new-button--' + this.props.size;
      }

      return className;
    }
  }]);
  return AddNewButton;
}(_button.default);

exports.default = AddNewButton;
(0, _defineProperty2.default)(AddNewButton, "propTypes", (0, _objectSpread2.default)((0, _objectSpread2.default)({}, _button.default.propTypes), {}, {
  text: PropTypes.string,
  size: PropTypes.string
}));
(0, _defineProperty2.default)(AddNewButton, "defaultProps", (0, _objectSpread2.default)((0, _objectSpread2.default)({}, _button.default.defaultProps), {}, {
  className: 'eps-add-new-button',
  text: __('Add New', 'elementor-pro'),
  icon: 'eicon-plus'
}));

/***/ }),

/***/ "../core/app/assets/js/ui/molecules/button.js":
/*!****************************************************!*\
  !*** ../core/app/assets/js/ui/molecules/button.js ***!
  \****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js");

var _router2 = _interopRequireDefault(__webpack_require__(/*! @elementor/router */ "@elementor/router"));

var _icon = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/icon */ "../core/app/assets/js/ui/atoms/icon.js"));

var Button = /*#__PURE__*/function (_React$Component) {
  (0, _inherits2.default)(Button, _React$Component);

  var _super = (0, _createSuper2.default)(Button);

  function Button() {
    (0, _classCallCheck2.default)(this, Button);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Button, [{
    key: "getCssId",
    value: function getCssId() {
      return this.props.id;
    }
  }, {
    key: "getClassName",
    value: function getClassName() {
      var baseClassName = 'eps-button',
          classes = [baseClassName, this.props.className];
      return classes.concat(this.getStylePropsClasses(baseClassName)).filter(function (classItem) {
        return '' !== classItem;
      }).join(' ');
    }
  }, {
    key: "getStylePropsClasses",
    value: function getStylePropsClasses(baseClassName) {
      var _this = this;

      var styleProps = ['color', 'size', 'variant'],
          stylePropClasses = [];
      styleProps.forEach(function (styleProp) {
        var stylePropValue = _this.props[styleProp];

        if (stylePropValue) {
          stylePropClasses.push(baseClassName + '--' + stylePropValue);
        }
      });
      return stylePropClasses;
    }
  }, {
    key: "getIcon",
    value: function getIcon() {
      if (this.props.icon) {
        var tooltip = this.props.tooltip || this.props.text;

        var icon = /*#__PURE__*/_react.default.createElement(_icon.default, {
          className: this.props.icon,
          "aria-hidden": "true",
          title: tooltip
        });

        var screenReaderText = '';

        if (this.props.hideText) {
          screenReaderText = /*#__PURE__*/_react.default.createElement("span", {
            className: "sr-only"
          }, tooltip);
        }

        return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, icon, screenReaderText);
      }

      return '';
    }
  }, {
    key: "getText",
    value: function getText() {
      return this.props.hideText ? '' : /*#__PURE__*/_react.default.createElement("span", null, this.props.text);
    }
  }, {
    key: "render",
    value: function render() {
      var attributes = {},
          id = this.getCssId(),
          className = this.getClassName(); // Add attributes only if they are not empty.

      if (id) {
        attributes.id = id;
      }

      if (className) {
        attributes.className = className;
      }

      if (this.props.onClick) {
        attributes.onClick = this.props.onClick;
      }

      if (this.props.rel) {
        attributes.rel = this.props.rel;
      }

      if (this.props.elRef) {
        attributes.ref = this.props.elRef;
      }

      var buttonContent = /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, this.getIcon(), this.getText());

      if (this.props.url) {
        if (0 === this.props.url.indexOf('http')) {
          return /*#__PURE__*/_react.default.createElement("a", (0, _extends2.default)({
            href: this.props.url,
            target: this.props.target
          }, attributes), buttonContent);
        } // @see https://reach.tech/router/example/active-links.


        attributes.getProps = function (props) {
          if (props.isCurrent) {
            attributes.className += ' active';
          }

          return {
            className: attributes.className
          };
        };

        return /*#__PURE__*/_react.default.createElement(_router.LocationProvider, {
          history: _router2.default.appHistory
        }, /*#__PURE__*/_react.default.createElement(_router.Link, (0, _extends2.default)({
          to: this.props.url
        }, attributes), buttonContent));
      }

      return /*#__PURE__*/_react.default.createElement("div", attributes, buttonContent);
    }
  }]);
  return Button;
}(_react.default.Component);

exports.default = Button;
(0, _defineProperty2.default)(Button, "propTypes", {
  text: PropTypes.string.isRequired,
  hideText: PropTypes.bool,
  icon: PropTypes.string,
  tooltip: PropTypes.string,
  id: PropTypes.string,
  className: PropTypes.string,
  url: PropTypes.string,
  onClick: PropTypes.func,
  variant: PropTypes.oneOf(['contained', 'underlined', 'outlined', '']),
  color: PropTypes.oneOf(['primary', 'secondary', 'cta', 'link', 'disabled']),
  size: PropTypes.oneOf(['sm', 'md', 'lg']),
  target: PropTypes.string,
  rel: PropTypes.string,
  elRef: PropTypes.object
});
(0, _defineProperty2.default)(Button, "defaultProps", {
  id: '',
  className: '',
  variant: '',
  target: '_parent'
});

/***/ }),

/***/ "../core/app/assets/js/ui/molecules/inline-link.js":
/*!*********************************************************!*\
  !*** ../core/app/assets/js/ui/molecules/inline-link.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = InlineLink;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js");

var _router2 = _interopRequireDefault(__webpack_require__(/*! @elementor/router */ "@elementor/router"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

__webpack_require__(/*! ./inline-link.scss */ "../core/app/assets/js/ui/molecules/inline-link.scss");

function InlineLink(props) {
  var baseClassName = 'eps-inline-link',
      colorClassName = "".concat(baseClassName, "--color-").concat(props.color),
      underlineClassName = 'none' !== props.underline ? "".concat(baseClassName, "--underline-").concat(props.underline) : '',
      italicClassName = props.italic ? "".concat(baseClassName, "--italic") : '',
      classes = [baseClassName, colorClassName, underlineClassName, italicClassName, props.className],
      className = (0, _utils.arrayToClassName)(classes),
      getRouterLink = function getRouterLink() {
    return /*#__PURE__*/_react.default.createElement(_router.LocationProvider, {
      history: _router2.default.appHistory
    }, /*#__PURE__*/_react.default.createElement(_router.Link, {
      to: props.url,
      className: className
    }, props.children));
  },
      getExternalLink = function getExternalLink() {
    return /*#__PURE__*/_react.default.createElement("a", {
      href: props.url,
      target: props.target,
      rel: props.rel,
      className: className
    }, props.children);
  },
      getActionLink = function getActionLink() {
    return /*#__PURE__*/_react.default.createElement("button", {
      className: className,
      onClick: props.onClick
    }, props.children);
  };

  if (!props.url) {
    return getActionLink();
  }

  return props.url.includes('http') ? getExternalLink() : getRouterLink();
}

InlineLink.propTypes = {
  className: PropTypes.string,
  children: PropTypes.string,
  url: PropTypes.string,
  target: PropTypes.string,
  rel: PropTypes.string,
  text: PropTypes.string,
  color: PropTypes.oneOf(['primary', 'secondary', 'cta', 'link', 'disabled']),
  underline: PropTypes.oneOf(['none', 'hover', 'always']),
  italic: PropTypes.bool
};
InlineLink.defaultProps = {
  className: '',
  color: 'link',
  underline: 'always',
  target: '_blank',
  rel: 'noopener noreferrer'
};

/***/ }),

/***/ "../core/app/assets/js/ui/molecules/list-item.js":
/*!*******************************************************!*\
  !*** ../core/app/assets/js/ui/molecules/list-item.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ListItem;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

function ListItem(props) {
  var baseClassName = 'eps-list__item',
      classes = [baseClassName, props.className];
  var style;

  if (props.hasOwnProperty('padding')) {
    style = {
      '--eps-list-item-padding': (0, _utils.pxToRem)(props.padding)
    };
    classes.push(baseClassName + '--padding');
  }

  return /*#__PURE__*/_react.default.createElement("li", {
    style: style,
    className: (0, _utils.arrayToClassName)(classes)
  }, props.children);
}

ListItem.propTypes = {
  className: PropTypes.string,
  padding: PropTypes.string,
  children: PropTypes.any.isRequired
};
ListItem.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/ui/molecules/list.js":
/*!**************************************************!*\
  !*** ../core/app/assets/js/ui/molecules/list.js ***!
  \**************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = List;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

var _listItem = _interopRequireDefault(__webpack_require__(/*! ./list-item */ "../core/app/assets/js/ui/molecules/list-item.js"));

__webpack_require__(/*! ./list.scss */ "../core/app/assets/js/ui/molecules/list.scss");

function List(props) {
  var baseClassName = 'eps-list',
      classes = [baseClassName, props.className];
  var style;

  if (props.hasOwnProperty('padding')) {
    style = {
      '--eps-list-padding': (0, _utils.pxToRem)(props.padding)
    };
    classes.push(baseClassName + '--padding');
  }

  if (props.separated) {
    classes.push(baseClassName + '--separated');
  }

  return /*#__PURE__*/_react.default.createElement("ul", {
    style: style,
    className: (0, _utils.arrayToClassName)(classes)
  }, props.children);
}

List.propTypes = {
  className: PropTypes.string,
  divided: PropTypes.any,
  separated: PropTypes.any,
  padding: PropTypes.string,
  children: PropTypes.oneOfType([PropTypes.object, PropTypes.arrayOf(PropTypes.object)]).isRequired
};
List.defaultProps = {
  className: ''
};
List.Item = _listItem.default;

/***/ }),

/***/ "../core/app/assets/js/ui/molecules/notice.js":
/*!****************************************************!*\
  !*** ../core/app/assets/js/ui/molecules/notice.js ***!
  \****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Notice;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

var _text = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/text */ "../core/app/assets/js/ui/atoms/text.js"));

__webpack_require__(/*! ./notice.scss */ "../core/app/assets/js/ui/molecules/notice.scss");

function Notice(props) {
  var baseClassName = 'eps-notice',
      classes = [baseClassName, props.className];

  if (props.color) {
    classes.push(baseClassName + '--' + props.color);
  }

  return /*#__PURE__*/_react.default.createElement("div", {
    className: (0, _utils.arrayToClassName)(classes)
  }, /*#__PURE__*/_react.default.createElement(_text.default, {
    variant: "xs",
    className: "eps-notice__text"
  }, props.label && /*#__PURE__*/_react.default.createElement("strong", null, props.label + ': '), " ", props.children));
}

Notice.propTypes = {
  className: PropTypes.string,
  color: PropTypes.string,
  label: PropTypes.string,
  children: PropTypes.oneOfType([PropTypes.string, PropTypes.object, PropTypes.arrayOf(PropTypes.object)]).isRequired
};
Notice.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/ui/molecules/popover.js":
/*!*****************************************************!*\
  !*** ../core/app/assets/js/ui/molecules/popover.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Popover;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! ./popover.scss */ "../core/app/assets/js/ui/molecules/popover.scss");

function Popover(props) {
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
    className: "eps-popover__background",
    onClick: props.closeFunction
  }), /*#__PURE__*/_react.default.createElement("ul", {
    className: "eps-popover ".concat(props.className),
    onClick: props.closeFunction
  }, props.children));
}

Popover.propTypes = {
  children: PropTypes.any.isRequired,
  className: PropTypes.string,
  closeFunction: PropTypes.func
};
Popover.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/ui/molecules/select2.js":
/*!*****************************************************!*\
  !*** ../core/app/assets/js/ui/molecules/select2.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Select2;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

var _select = _interopRequireDefault(__webpack_require__(/*! ../atoms/select */ "../core/app/assets/js/ui/atoms/select.js"));

__webpack_require__(/*! ./select2.scss */ "../core/app/assets/js/ui/molecules/select2.scss");

/**
 * Default settings of the select 2
 *
 * @returns {{placeholder: string, allowClear: boolean, dir: string}}
 */
var getDefaultSettings = function getDefaultSettings() {
  return {
    allowClear: true,
    placeholder: '',
    dir: elementorCommon.config.isRTL ? 'rtl' : 'ltr'
  };
};
/**
 * Main component
 *
 * @param props
 * @returns {*}
 * @constructor
 */


function Select2(props) {
  var ref = _react.default.useRef(null); // Initiate the select 2 library, call to onReady after initiate, and
  // listen to select event on the select instance.


  _react.default.useEffect(function () {
    var $select2 = jQuery(ref.current).select2((0, _objectSpread2.default)((0, _objectSpread2.default)({}, getDefaultSettings()), props.settings)).on('select2:select select2:unselect', props.onChange);

    if (props.onReady) {
      props.onReady($select2);
    }

    return function () {
      $select2.select2('destroy').off('select2:select select2:unselect');
    };
  }, [props.settings, props.options]); // Listen to changes in the prop `value`, if changed update the select 2.


  _react.default.useEffect(function () {
    jQuery(ref.current).val(props.value).trigger('change');
  }, [props.value]);

  return /*#__PURE__*/_react.default.createElement(_select.default, {
    multiple: props.multiple,
    value: props.value,
    onChange: props.onChange,
    elRef: ref,
    options: props.options
  });
}

Select2.propTypes = {
  value: PropTypes.string,
  onChange: PropTypes.func,
  onReady: PropTypes.func,
  options: PropTypes.array,
  settings: PropTypes.object,
  multiple: PropTypes.bool
};
Select2.defaultProps = {
  settings: {},
  options: [],
  dependencies: []
};

/***/ }),

/***/ "../core/app/assets/js/utils/utils.js":
/*!********************************************!*\
  !*** ../core/app/assets/js/utils/utils.js ***!
  \********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.isOneOf = exports.rgbToHex = exports.stringToRemValues = exports.arrayToClassName = exports.pxToRem = void 0;

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js"));

__webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");

__webpack_require__(/*! core-js/modules/es6.regexp.to-string.js */ "../node_modules/core-js/modules/es6.regexp.to-string.js");

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

__webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

var pxToRem = function pxToRem(pixels) {
  if (!pixels) {
    return;
  } else if ('string' !== typeof pixels) {
    pixels = pixels.toString();
  }

  return pixels.split(' ').map(function (value) {
    return "".concat(value * 0.0625, "rem");
  }).join(' ');
};

exports.pxToRem = pxToRem;

var arrayToClassName = function arrayToClassName(array, action) {
  return array.filter(function (item) {
    return 'object' === (0, _typeof2.default)(item) ? (0, _entries.default)(item)[0][1] : item;
  }).map(function (item) {
    var value = 'object' === (0, _typeof2.default)(item) ? (0, _entries.default)(item)[0][0] : item;
    return action ? action(value) : value;
  }).join(' ');
};

exports.arrayToClassName = arrayToClassName;

var stringToRemValues = function stringToRemValues(string) {
  return string.split(' ').map(function (value) {
    return pxToRem(value);
  }).join(' ');
};

exports.stringToRemValues = stringToRemValues;

var rgbToHex = function rgbToHex(r, g, b) {
  return '#' + [r, g, b].map(function (x) {
    var hex = x.toString(16);
    return 1 === hex.length ? '0' + hex : hex;
  }).join('');
};

exports.rgbToHex = rgbToHex;

var isOneOf = function isOneOf(filetype, filetypeOptions) {
  return filetypeOptions.some(function (type) {
    return filetype.includes(type);
  });
};

exports.isOneOf = isOneOf;

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/context/context-provider.js":
/*!*******************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/context/context-provider.js ***!
  \*******************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ContextProvider;
exports.Context = void 0;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _contextReducer = __webpack_require__(/*! ./context-reducer */ "../core/app/modules/import-export/assets/js/context/context-reducer.js");

var Context = _react.default.createContext();

exports.Context = Context;

function ContextProvider(props) {
  var initialState = {
    includes: [],
    downloadUrl: '',
    fileResponse: null,
    file: null,
    overrideConditions: [],
    referrer: null,
    kitInfo: {
      title: null,
      description: null
    }
  },
      _useReducer = (0, _react.useReducer)(_contextReducer.reducer, initialState),
      _useReducer2 = (0, _slicedToArray2.default)(_useReducer, 2),
      data = _useReducer2[0],
      dispatch = _useReducer2[1];

  return /*#__PURE__*/_react.default.createElement(Context.Provider, {
    value: {
      data: data,
      dispatch: dispatch
    }
  }, props.children);
}

ContextProvider.propTypes = {
  children: PropTypes.object.isRequired
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/context/context-reducer.js":
/*!******************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/context/context-reducer.js ***!
  \******************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.reducer = void 0;

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/toConsumableArray */ "../node_modules/@babel/runtime-corejs2/helpers/toConsumableArray.js"));

var _objectSpread4 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var ReducerActions = /*#__PURE__*/function () {
  function ReducerActions() {
    (0, _classCallCheck2.default)(this, ReducerActions);
  }

  (0, _createClass2.default)(ReducerActions, null, [{
    key: "updateArray",
    value: function updateArray(state, key, value, action) {
      if ('add' === action) {
        // If the value already exists, then do nothing.
        if (state[key].includes(value)) {
          return state;
        }

        return (0, _objectSpread4.default)((0, _objectSpread4.default)({}, state), {}, (0, _defineProperty2.default)({}, key, [].concat((0, _toConsumableArray2.default)(state[key]), [value])));
      } else if ('remove' === action) {
        return (0, _objectSpread4.default)((0, _objectSpread4.default)({}, state), {}, (0, _defineProperty2.default)({}, key, state[key].filter(function (item) {
          return item !== value;
        })));
      }

      return state;
    }
  }]);
  return ReducerActions;
}();

var reducer = function reducer(state, action) {
  switch (action.type) {
    case 'SET_DOWNLOAD_URL':
      return (0, _objectSpread4.default)((0, _objectSpread4.default)({}, state), {}, {
        downloadUrl: action.payload
      });

    case 'ADD_INCLUDE':
      return ReducerActions.updateArray(state, 'includes', action.payload, 'add');

    case 'REMOVE_INCLUDE':
      return ReducerActions.updateArray(state, 'includes', action.payload, 'remove');

    case 'SET_FILE_RESPONSE':
      return (0, _objectSpread4.default)((0, _objectSpread4.default)({}, state), {}, {
        fileResponse: action.payload
      });

    case 'SET_FILE':
      return (0, _objectSpread4.default)((0, _objectSpread4.default)({}, state), {}, {
        file: action.payload
      });

    case 'ADD_OVERRIDE_CONDITION':
      return ReducerActions.updateArray(state, 'overrideConditions', action.payload, 'add');

    case 'REMOVE_OVERRIDE_CONDITION':
      return ReducerActions.updateArray(state, 'overrideConditions', action.payload, 'remove');

    case 'SET_KIT_TITLE':
      return (0, _objectSpread4.default)((0, _objectSpread4.default)({}, state), {}, {
        kitInfo: (0, _objectSpread4.default)((0, _objectSpread4.default)({}, state.kitInfo), {}, {
          title: action.payload
        })
      });

    case 'SET_KIT_DESCRIPTION':
      return (0, _objectSpread4.default)((0, _objectSpread4.default)({}, state), {}, {
        kitInfo: (0, _objectSpread4.default)((0, _objectSpread4.default)({}, state.kitInfo), {}, {
          description: action.payload
        })
      });

    case 'SET_REFERRER':
      return (0, _objectSpread4.default)((0, _objectSpread4.default)({}, state), {}, {
        referrer: action.payload
      });

    case 'SET_INCLUDES':
      return (0, _objectSpread4.default)((0, _objectSpread4.default)({}, state), {}, {
        includes: action.payload
      });

    default:
      return state;
  }
};

exports.reducer = reducer;

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/export.js":
/*!*************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/export.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Export;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _contextProvider = _interopRequireDefault(__webpack_require__(/*! ./context/context-provider */ "../core/app/modules/import-export/assets/js/context/context-provider.js"));

var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js");

var _router2 = _interopRequireDefault(__webpack_require__(/*! @elementor/router */ "@elementor/router"));

var _exportKit = _interopRequireDefault(__webpack_require__(/*! ./pages/export/export-kit/export-kit */ "../core/app/modules/import-export/assets/js/pages/export/export-kit/export-kit.js"));

var _exportComplete = _interopRequireDefault(__webpack_require__(/*! ./pages/export/export-complete/export-complete */ "../core/app/modules/import-export/assets/js/pages/export/export-complete/export-complete.js"));

var _exportProcess = _interopRequireDefault(__webpack_require__(/*! ./pages/export/export-process/export-process */ "../core/app/modules/import-export/assets/js/pages/export/export-process/export-process.js"));

function Export() {
  return /*#__PURE__*/_react.default.createElement(_contextProvider.default, null, /*#__PURE__*/_react.default.createElement(_router.LocationProvider, {
    history: _router2.default.appHistory
  }, /*#__PURE__*/_react.default.createElement(_router.Router, null, /*#__PURE__*/_react.default.createElement(_exportComplete.default, {
    path: "complete"
  }), /*#__PURE__*/_react.default.createElement(_exportProcess.default, {
    path: "process"
  }), /*#__PURE__*/_react.default.createElement(_exportKit.default, {
    default: true
  }))));
}

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/import.js":
/*!*************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/import.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Import;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _contextProvider = _interopRequireDefault(__webpack_require__(/*! ./context/context-provider */ "../core/app/modules/import-export/assets/js/context/context-provider.js"));

var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js");

var _router2 = _interopRequireDefault(__webpack_require__(/*! @elementor/router */ "@elementor/router"));

var _importKit = _interopRequireDefault(__webpack_require__(/*! ./pages/import/import-kit/import-kit */ "../core/app/modules/import-export/assets/js/pages/import/import-kit/import-kit.js"));

var _importContent = _interopRequireDefault(__webpack_require__(/*! ./pages/import/import-content/import-content */ "../core/app/modules/import-export/assets/js/pages/import/import-content/import-content.js"));

var _importResolver = _interopRequireDefault(__webpack_require__(/*! ./pages/import/import-resolver/import-resolver */ "../core/app/modules/import-export/assets/js/pages/import/import-resolver/import-resolver.js"));

var _importProcess = _interopRequireDefault(__webpack_require__(/*! ./pages/import/import-process/import-process */ "../core/app/modules/import-export/assets/js/pages/import/import-process/import-process.js"));

var _importComplete = _interopRequireDefault(__webpack_require__(/*! ./pages/import/import-complete/import-complete */ "../core/app/modules/import-export/assets/js/pages/import/import-complete/import-complete.js"));

function Import() {
  return /*#__PURE__*/_react.default.createElement(_contextProvider.default, null, /*#__PURE__*/_react.default.createElement(_router.LocationProvider, {
    history: _router2.default.appHistory
  }, /*#__PURE__*/_react.default.createElement(_router.Router, null, /*#__PURE__*/_react.default.createElement(_importComplete.default, {
    path: "complete"
  }), /*#__PURE__*/_react.default.createElement(_importProcess.default, {
    path: "process"
  }), /*#__PURE__*/_react.default.createElement(_importResolver.default, {
    path: "resolver"
  }), /*#__PURE__*/_react.default.createElement(_importContent.default, {
    path: "content"
  }), /*#__PURE__*/_react.default.createElement(_importKit.default, {
    default: true
  }))));
}

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/module.js":
/*!*************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/module.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _createForOfIteratorHelper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createForOfIteratorHelper */ "../node_modules/@babel/runtime-corejs2/helpers/createForOfIteratorHelper.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _router = _interopRequireDefault(__webpack_require__(/*! @elementor/router */ "@elementor/router"));

var _import = _interopRequireDefault(__webpack_require__(/*! ./import */ "../core/app/modules/import-export/assets/js/import.js"));

var _export = _interopRequireDefault(__webpack_require__(/*! ./export */ "../core/app/modules/import-export/assets/js/export.js"));

var ImportExport = function ImportExport() {
  (0, _classCallCheck2.default)(this, ImportExport);
  (0, _defineProperty2.default)(this, "routes", [{
    path: '/import/*',
    component: _import.default
  }, {
    path: '/export/*',
    component: _export.default
  }]);

  var _iterator = (0, _createForOfIteratorHelper2.default)(this.routes),
      _step;

  try {
    for (_iterator.s(); !(_step = _iterator.n()).done;) {
      var route = _step.value;

      _router.default.addRoute(route);
    }
  } catch (err) {
    _iterator.e(err);
  } finally {
    _iterator.f();
  }
};

exports.default = ImportExport;

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/package.js":
/*!**************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/package.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _layout = _interopRequireDefault(__webpack_require__(/*! ./templates/layout */ "../core/app/modules/import-export/assets/js/templates/layout.js"));

var _module = _interopRequireDefault(__webpack_require__(/*! ./module */ "../core/app/modules/import-export/assets/js/module.js"));

// Alphabetical order.
var _default = {
  Layout: _layout.default,
  Module: _module.default
};
exports.default = _default;

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/pages/export/export-complete/export-complete.js":
/*!***************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/pages/export/export-complete/export-complete.js ***!
  \***************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ExportComplete;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _contextProvider = __webpack_require__(/*! ../../../context/context-provider */ "../core/app/modules/import-export/assets/js/context/context-provider.js");

var _layout = _interopRequireDefault(__webpack_require__(/*! ../../../templates/layout */ "../core/app/modules/import-export/assets/js/templates/layout.js"));

var _wizardStep = _interopRequireDefault(__webpack_require__(/*! ../../../ui/wizard-step/wizard-step */ "../core/app/modules/import-export/assets/js/ui/wizard-step/wizard-step.js"));

var _kitData = _interopRequireDefault(__webpack_require__(/*! ../../../shared/kit-data/kit-data */ "../core/app/modules/import-export/assets/js/shared/kit-data/kit-data.js"));

var _inlineLink = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/inline-link */ "../core/app/assets/js/ui/molecules/inline-link.js"));

var _wizardFooter = _interopRequireDefault(__webpack_require__(/*! elementor-app/organisms/wizard-footer */ "../core/app/assets/js/organisms/wizard-footer.js"));

var _dashboardButton = _interopRequireDefault(__webpack_require__(/*! elementor-app/molecules/dashboard-button */ "../core/app/assets/js/molecules/dashboard-button.js"));

__webpack_require__(/*! ./export-complete.scss */ "../core/app/modules/import-export/assets/js/pages/export/export-complete/export-complete.scss");

function ExportComplete() {
  var _context$data$fileRes;

  var context = (0, _react.useContext)(_contextProvider.Context),
      downloadLink = (0, _react.useRef)(null),
      getFooter = function getFooter() {
    return /*#__PURE__*/_react.default.createElement(_wizardFooter.default, {
      separator: true,
      justify: "end"
    }, /*#__PURE__*/_react.default.createElement(_dashboardButton.default, null));
  },
      downloadFile = function downloadFile() {
    if (!downloadLink.current) {
      var link = document.createElement('a');
      link.href = 'data:text/plain;base64,' + context.data.fileResponse.file;
      link.download = 'elementor-kit.zip';
      downloadLink.current = link;
    }

    downloadLink.current.click();
  },
      getDownloadLink = function getDownloadLink() {
    return /*#__PURE__*/_react.default.createElement(_inlineLink.default, {
      onClick: downloadFile,
      italic: true
    }, __('Click Here', 'elementor'));
  };

  (0, _react.useEffect)(function () {
    if (context.data.downloadUrl) {
      downloadFile();
    }
  }, [context.data.downloadUrl]);
  return /*#__PURE__*/_react.default.createElement(_layout.default, {
    type: "export",
    footer: getFooter()
  }, /*#__PURE__*/_react.default.createElement(_wizardStep.default, {
    image: elementorAppConfig.assets_url + 'images/go-pro.svg',
    heading: __('Your export is ready!', 'elementor'),
    description: __('Now you can import this kit and use it on other sites.', 'elementor'),
    notice: /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, __('Download not working?', 'elementor'), " ", getDownloadLink(), " ", __('to download', 'elementor'))
  }, /*#__PURE__*/_react.default.createElement(_kitData.default, {
    data: (_context$data$fileRes = context.data.fileResponse) === null || _context$data$fileRes === void 0 ? void 0 : _context$data$fileRes.manifest
  })));
}

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/pages/export/export-kit/components/export-button/export-button.js":
/*!*********************************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/pages/export/export-kit/components/export-button/export-button.js ***!
  \*********************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ExportButton;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js");

var _contextProvider = __webpack_require__(/*! ../../../../../context/context-provider */ "../core/app/modules/import-export/assets/js/context/context-provider.js");

var _button = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/button */ "../core/app/assets/js/ui/molecules/button.js"));

function ExportButton() {
  var context = (0, _react.useContext)(_contextProvider.Context),
      navigate = (0, _router.useNavigate)(),
      _useState = (0, _react.useState)(false),
      _useState2 = (0, _slicedToArray2.default)(_useState, 2),
      isDownloadAllowed = _useState2[0],
      setIsDownloadAllowed = _useState2[1],
      getDownloadUrl = function getDownloadUrl() {
    var exportURL = elementorAppConfig['import-export'].exportURL,
        exportData = {
      elementor_export_kit: {
        include: context.data.includes,
        kitInfo: context.data.kitInfo
      }
    };
    return exportURL + '&' + jQuery.param(exportData);
  };

  (0, _react.useEffect)(function () {
    setIsDownloadAllowed(!!context.data.includes.length);
  }, [context.data.includes]);
  (0, _react.useEffect)(function () {
    if (context.data.downloadUrl) {
      navigate('/export/process');
    }
  }, [context.data.downloadUrl]);
  return /*#__PURE__*/_react.default.createElement(_button.default, {
    variant: "contained",
    text: __('Export', 'elementor'),
    color: isDownloadAllowed ? 'primary' : 'disabled',
    onClick: function onClick() {
      if (isDownloadAllowed) {
        context.dispatch({
          type: 'SET_DOWNLOAD_URL',
          payload: getDownloadUrl()
        });
      }
    }
  });
}

ExportButton.propTypes = {
  setIsDownloading: PropTypes.func
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/pages/export/export-kit/components/kit-description/kit-description.js":
/*!*************************************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/pages/export/export-kit/components/kit-description/kit-description.js ***!
  \*************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = KitDescription;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _contextProvider = __webpack_require__(/*! ../../../../../context/context-provider */ "../core/app/modules/import-export/assets/js/context/context-provider.js");

var _textField = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/text-field */ "../core/app/assets/js/ui/atoms/text-field.js"));

function KitDescription() {
  var context = (0, _react.useContext)(_contextProvider.Context);
  return /*#__PURE__*/_react.default.createElement(_textField.default, {
    variant: "outlined",
    placeholder: __('Say something about the style and content of these files...', 'elementor'),
    multiline: true,
    rows: 5,
    onChange: function onChange(event) {
      context.dispatch({
        type: 'SET_KIT_DESCRIPTION',
        payload: event.target.value
      });
    }
  });
}

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/pages/export/export-kit/components/kit-info-modal/kit-info-modal.js":
/*!***********************************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/pages/export/export-kit/components/kit-info-modal/kit-info-modal.js ***!
  \***********************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = KitInfoModal;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

var _modal = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/modal/modal */ "../core/app/assets/js/ui/modal/modal.js"));

var _heading = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/heading */ "../core/app/assets/js/ui/atoms/heading.js"));

var _text = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/text */ "../core/app/assets/js/ui/atoms/text.js"));

function KitInfoModal(props) {
  return /*#__PURE__*/_react.default.createElement(_modal.default, (0, _extends2.default)({}, props, {
    className: "e-app-export-kit-info-modal",
    title: __('Template Kit Information', 'elementor')
  }), /*#__PURE__*/_react.default.createElement(_modal.default.Section, null, /*#__PURE__*/_react.default.createElement(_heading.default, {
    className: "e-app-export-kit-info-modal__heading",
    variant: "h2",
    tag: "h3"
  }, __('What is kit information?', 'elementor')), /*#__PURE__*/_react.default.createElement(_text.default, null, __('These are the details you’ll use to quickly find and apply this kit in the future, even as your collection grows.', 'elementor'))));
}

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/pages/export/export-kit/components/kit-name/kit-name.js":
/*!***********************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/pages/export/export-kit/components/kit-name/kit-name.js ***!
  \***********************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = KitName;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _contextProvider = __webpack_require__(/*! ../../../../../context/context-provider */ "../core/app/modules/import-export/assets/js/context/context-provider.js");

var _textField = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/text-field */ "../core/app/assets/js/ui/atoms/text-field.js"));

function KitName() {
  var context = (0, _react.useContext)(_contextProvider.Context);
  return /*#__PURE__*/_react.default.createElement(_textField.default, {
    variant: "outlined",
    placeholder: __('Elementor Kit', 'elementor'),
    onChange: function onChange(event) {
      context.dispatch({
        type: 'SET_KIT_TITLE',
        payload: event.target.value
      });
    }
  });
}

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/pages/export/export-kit/export-kit.js":
/*!*****************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/pages/export/export-kit/export-kit.js ***!
  \*****************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ExportKit;

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _layout = _interopRequireDefault(__webpack_require__(/*! ../../../templates/layout */ "../core/app/modules/import-export/assets/js/templates/layout.js"));

var _pageHeader = _interopRequireDefault(__webpack_require__(/*! ../../../ui/page-header/page-header */ "../core/app/modules/import-export/assets/js/ui/page-header/page-header.js"));

var _exportButton = _interopRequireDefault(__webpack_require__(/*! ./components/export-button/export-button */ "../core/app/modules/import-export/assets/js/pages/export/export-kit/components/export-button/export-button.js"));

var _kitContent = _interopRequireDefault(__webpack_require__(/*! ../../../shared/kit-content/kit-content */ "../core/app/modules/import-export/assets/js/shared/kit-content/kit-content.js"));

var _panel = _interopRequireDefault(__webpack_require__(/*! ../../../ui/panel/panel */ "../core/app/modules/import-export/assets/js/ui/panel/panel.js"));

var _kitName = _interopRequireDefault(__webpack_require__(/*! ./components/kit-name/kit-name */ "../core/app/modules/import-export/assets/js/pages/export/export-kit/components/kit-name/kit-name.js"));

var _kitDescription = _interopRequireDefault(__webpack_require__(/*! ./components/kit-description/kit-description */ "../core/app/modules/import-export/assets/js/pages/export/export-kit/components/kit-description/kit-description.js"));

var _kitInfoModal = _interopRequireDefault(__webpack_require__(/*! ./components/kit-info-modal/kit-info-modal */ "../core/app/modules/import-export/assets/js/pages/export/export-kit/components/kit-info-modal/kit-info-modal.js"));

var _grid = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/grid/grid */ "../core/app/assets/js/ui/grid/grid.js"));

var _heading = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/heading */ "../core/app/assets/js/ui/atoms/heading.js"));

var _inlineLink = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/inline-link */ "../core/app/assets/js/ui/molecules/inline-link.js"));

var _button = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/button */ "../core/app/assets/js/ui/molecules/button.js"));

var _wizardFooter = _interopRequireDefault(__webpack_require__(/*! elementor-app/organisms/wizard-footer */ "../core/app/assets/js/organisms/wizard-footer.js"));

__webpack_require__(/*! ./export-kit.scss */ "../core/app/modules/import-export/assets/js/pages/export/export-kit/export-kit.scss");

function ExportKit() {
  var _useState = (0, _react.useState)(false),
      _useState2 = (0, _slicedToArray2.default)(_useState, 2),
      showKitInfoModal = _useState2[0],
      setShowKitInfoModal = _useState2[1],
      kitInfoTitle = __('Kit Information', 'elementor'),
      getFooter = function getFooter() {
    return /*#__PURE__*/_react.default.createElement(_wizardFooter.default, {
      separator: true,
      justify: "end"
    }, /*#__PURE__*/_react.default.createElement(_exportButton.default, null));
  },
      getLearnMoreLink = function getLearnMoreLink() {
    return /*#__PURE__*/_react.default.createElement(_inlineLink.default, {
      url: "https://go.elementor.com/app-what-are-kits",
      italic: true
    }, __('Learn More', 'elementor'));
  };

  return /*#__PURE__*/_react.default.createElement(_layout.default, {
    type: "export",
    footer: getFooter()
  }, /*#__PURE__*/_react.default.createElement("section", {
    className: "e-app-export-kit"
  }, /*#__PURE__*/_react.default.createElement(_pageHeader.default, {
    heading: __('Export a Template Kit', 'elementor'),
    description: [__('Choose which Elementor components - templates, content and site settings - to include in your kit file.', 'elementor'), /*#__PURE__*/_react.default.createElement(_react.default.Fragment, {
      key: "description-secondary-line"
    }, __('By default, all of your components will be exported.', 'elementor'), " ", getLearnMoreLink())]
  }), /*#__PURE__*/_react.default.createElement(_kitContent.default, null), /*#__PURE__*/_react.default.createElement(_panel.default, {
    className: "e-app-export-kit-information"
  }, /*#__PURE__*/_react.default.createElement(_panel.default.Header, null, /*#__PURE__*/_react.default.createElement(_panel.default.Headline, null, kitInfoTitle, /*#__PURE__*/_react.default.createElement(_button.default, {
    className: "e-app-export-kit-info-modal__icon",
    icon: "eicon-info-circle",
    color: "secondary",
    hideText: true,
    text: kitInfoTitle,
    onClick: function onClick(event) {
      event.stopPropagation();
      setShowKitInfoModal(function (prevState) {
        return !prevState;
      });
    }
  }))), /*#__PURE__*/_react.default.createElement(_panel.default.Body, null, /*#__PURE__*/_react.default.createElement(_grid.default, {
    container: true,
    spacing: 20
  }, /*#__PURE__*/_react.default.createElement(_grid.default, {
    item: true,
    md: 4
  }, /*#__PURE__*/_react.default.createElement(_grid.default, {
    container: true,
    direction: "column"
  }, /*#__PURE__*/_react.default.createElement(_grid.default, {
    className: "e-app-export-kit-information__field-header",
    container: true,
    alignItems: "center"
  }, /*#__PURE__*/_react.default.createElement(_heading.default, {
    className: "e-app-export-kit-information__label",
    variant: "h6",
    tag: "h4"
  }, __('Kit Name', 'elementor'))), /*#__PURE__*/_react.default.createElement(_grid.default, {
    item: true
  }, /*#__PURE__*/_react.default.createElement(_kitName.default, null)))), /*#__PURE__*/_react.default.createElement(_grid.default, {
    item: true,
    md: 4
  }, /*#__PURE__*/_react.default.createElement(_grid.default, {
    className: "e-app-export-kit-information__field-header",
    container: true,
    alignItems: "center"
  }, /*#__PURE__*/_react.default.createElement(_heading.default, {
    className: "e-app-export-kit-information__label",
    variant: "h6",
    tag: "h4"
  }, __('Kit Description', 'elementor'))), /*#__PURE__*/_react.default.createElement(_grid.default, {
    item: true
  }, /*#__PURE__*/_react.default.createElement(_kitDescription.default, null)))))), /*#__PURE__*/_react.default.createElement(_kitInfoModal.default, {
    show: showKitInfoModal,
    setShow: setShowKitInfoModal
  })));
}

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/pages/export/export-process/export-process.js":
/*!*************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/pages/export/export-process/export-process.js ***!
  \*************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ExportProcess;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js");

var _layout = _interopRequireDefault(__webpack_require__(/*! ../../../templates/layout */ "../core/app/modules/import-export/assets/js/templates/layout.js"));

var _fileProcess = _interopRequireDefault(__webpack_require__(/*! ../../../shared/file-process/file-process */ "../core/app/modules/import-export/assets/js/shared/file-process/file-process.js"));

var _contextProvider = __webpack_require__(/*! ../../../context/context-provider */ "../core/app/modules/import-export/assets/js/context/context-provider.js");

var _useAjax2 = _interopRequireDefault(__webpack_require__(/*! elementor-app/hooks/use-ajax */ "../core/app/assets/js/hooks/use-ajax.js"));

function ExportProcess() {
  var _useAjax = (0, _useAjax2.default)(),
      ajaxState = _useAjax.ajaxState,
      setAjax = _useAjax.setAjax,
      context = (0, _react.useContext)(_contextProvider.Context),
      navigate = (0, _router.useNavigate)(),
      onLoad = function onLoad() {
    if (context.data.downloadUrl) {
      setAjax({
        url: context.data.downloadUrl,
        headers: {
          'Content-Type': 'application/json'
        }
      });
    }
  },
      onSuccess = function onSuccess() {
    return context.dispatch({
      type: 'SET_FILE_RESPONSE',
      payload: ajaxState.response
    });
  },
      onDialogDismiss = function onDialogDismiss() {
    context.dispatch({
      type: 'SET_DOWNLOAD_URL',
      payload: ''
    });
    navigate('export');
  };

  (0, _react.useEffect)(function () {
    if (context.data.fileResponse) {
      navigate('export/complete');
    }
  }, [context.data.fileResponse]);
  return /*#__PURE__*/_react.default.createElement(_layout.default, {
    type: "export"
  }, /*#__PURE__*/_react.default.createElement(_fileProcess.default, {
    status: ajaxState.status,
    onLoad: onLoad,
    onSuccess: onSuccess,
    onDialogApprove: function onDialogApprove() {
      return window.open('https://elementor.com/help/export-kit?utm_source=import-export&utm_medium=wp-dash&utm_campaign=learn', '_blank');
    },
    onDialogDismiss: onDialogDismiss
  }));
}

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/pages/import/import-complete/import-complete.js":
/*!***************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/pages/import/import-complete/import-complete.js ***!
  \***************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ImportComplete;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var _contextProvider = __webpack_require__(/*! ../../../context/context-provider */ "../core/app/modules/import-export/assets/js/context/context-provider.js");

var _layout = _interopRequireDefault(__webpack_require__(/*! ../../../templates/layout */ "../core/app/modules/import-export/assets/js/templates/layout.js"));

var _wizardStep = _interopRequireDefault(__webpack_require__(/*! ../../../ui/wizard-step/wizard-step */ "../core/app/modules/import-export/assets/js/ui/wizard-step/wizard-step.js"));

var _kitData = _interopRequireDefault(__webpack_require__(/*! ../../../shared/kit-data/kit-data */ "../core/app/modules/import-export/assets/js/shared/kit-data/kit-data.js"));

var _inlineLink = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/inline-link */ "../core/app/assets/js/ui/molecules/inline-link.js"));

var _dashboardButton = _interopRequireDefault(__webpack_require__(/*! elementor-app/molecules/dashboard-button */ "../core/app/assets/js/molecules/dashboard-button.js"));

var _wizardFooter = _interopRequireDefault(__webpack_require__(/*! elementor-app/organisms/wizard-footer */ "../core/app/assets/js/organisms/wizard-footer.js"));

function ImportComplete() {
  var context = (0, _react.useContext)(_contextProvider.Context),
      getFooter = function getFooter() {
    return /*#__PURE__*/_react.default.createElement(_wizardFooter.default, {
      separator: true,
      justify: "end"
    }, /*#__PURE__*/_react.default.createElement(_dashboardButton.default, null));
  },
      getTemplates = function getTemplates(templates, importedData) {
    var kitTemplates = {};

    for (var key in importedData === null || importedData === void 0 ? void 0 : (_importedData$templat = importedData.templates) === null || _importedData$templat === void 0 ? void 0 : _importedData$templat.succeed) {
      var _importedData$templat;

      kitTemplates[key] = templates[key];
    }

    return kitTemplates;
  },
      getContent = function getContent(content, importedData) {
    var kitContent = {};

    for (var contentType in importedData === null || importedData === void 0 ? void 0 : importedData.content) {
      kitContent[contentType] = {};

      for (var key in (_importedData$content = importedData.content[contentType]) === null || _importedData$content === void 0 ? void 0 : _importedData$content.succeed) {
        var _importedData$content;

        kitContent[contentType][key] = content[contentType][key];
      }
    }

    return kitContent;
  },
      getWPContent = function getWPContent(content, importedData) {
    var kitWPContent = {};

    for (var contentType in importedData === null || importedData === void 0 ? void 0 : importedData['wp-content']) {
      var _importedData$wpCont;

      var succeededItems = (_importedData$wpCont = importedData['wp-content'][contentType]) === null || _importedData$wpCont === void 0 ? void 0 : _importedData$wpCont.succeed;
      kitWPContent[contentType] = succeededItems ? (0, _keys.default)(succeededItems) : [];
    }

    return kitWPContent;
  },
      getKitData = function getKitData() {
    if (!context.data.fileResponse) {
      return {};
    }

    var manifest = context.data.fileResponse.stage1.manifest,
        importedData = context.data.fileResponse.stage2;
    return {
      templates: getTemplates(manifest.templates, importedData),
      content: getContent(manifest.content, importedData),
      'wp-content': getWPContent(manifest['wp-content'], importedData),
      'site-settings': context.data.includes.includes('settings') ? manifest['site-settings'] : {}
    };
  };

  return /*#__PURE__*/_react.default.createElement(_layout.default, {
    type: "import",
    footer: getFooter()
  }, /*#__PURE__*/_react.default.createElement(_wizardStep.default, {
    image: elementorAppConfig.assets_url + 'images/go-pro.svg',
    heading: __('Your kit is now live on your site!', 'elementor'),
    notice: /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_inlineLink.default, {
      url: "https://go.elementor.com/app-what-are-kits",
      italic: true
    }, __('Click Here', 'elementor')), " ", __('to learn more about building your site with Elementor Kits', 'elementor'))
  }, /*#__PURE__*/_react.default.createElement(_kitData.default, {
    data: getKitData()
  })));
}

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/pages/import/import-content/components/import-button/import-button.js":
/*!*************************************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/pages/import/import-content/components/import-button/import-button.js ***!
  \*************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ImportButton;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js");

var _contextProvider = __webpack_require__(/*! ../../../../../context/context-provider */ "../core/app/modules/import-export/assets/js/context/context-provider.js");

var _button = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/button */ "../core/app/assets/js/ui/molecules/button.js"));

function ImportButton() {
  var context = (0, _react.useContext)(_contextProvider.Context),
      navigate = (0, _router.useNavigate)(),
      _useState = (0, _react.useState)(false),
      _useState2 = (0, _slicedToArray2.default)(_useState, 2),
      isImportAllowed = _useState2[0],
      setIsImportAllowed = _useState2[1];

  (0, _react.useEffect)(function () {
    setIsImportAllowed(!!context.data.includes.length);
  }, [context.data.includes]);
  return /*#__PURE__*/_react.default.createElement(_button.default, {
    variant: "contained",
    text: __('Next', 'elementor'),
    color: isImportAllowed ? 'primary' : 'disabled',
    onClick: function onClick() {
      if (isImportAllowed) {
        if (context.data.includes.includes('templates') && context.data.fileResponse.stage1.conflicts) {
          navigate('import/resolver');
        } else {
          navigate('import/process');
        }
      }
    }
  });
}

ImportButton.propTypes = {
  setIsDownloading: PropTypes.func
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/pages/import/import-content/import-content.js":
/*!*************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/pages/import/import-content/import-content.js ***!
  \*************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ImportContent;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js");

var _contextProvider = __webpack_require__(/*! ../../../context/context-provider */ "../core/app/modules/import-export/assets/js/context/context-provider.js");

var _layout = _interopRequireDefault(__webpack_require__(/*! ../../../templates/layout */ "../core/app/modules/import-export/assets/js/templates/layout.js"));

var _pageHeader = _interopRequireDefault(__webpack_require__(/*! ../../../ui/page-header/page-header */ "../core/app/modules/import-export/assets/js/ui/page-header/page-header.js"));

var _kitContent = _interopRequireDefault(__webpack_require__(/*! ../../../shared/kit-content/kit-content */ "../core/app/modules/import-export/assets/js/shared/kit-content/kit-content.js"));

var _inlineLink = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/inline-link */ "../core/app/assets/js/ui/molecules/inline-link.js"));

var _button = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/button */ "../core/app/assets/js/ui/molecules/button.js"));

var _wizardFooter = _interopRequireDefault(__webpack_require__(/*! elementor-app/organisms/wizard-footer */ "../core/app/assets/js/organisms/wizard-footer.js"));

var _importButton = _interopRequireDefault(__webpack_require__(/*! ./components/import-button/import-button */ "../core/app/modules/import-export/assets/js/pages/import/import-content/components/import-button/import-button.js"));

function ImportContent() {
  var _context$data$fileRes, _context$data$fileRes2;

  var context = (0, _react.useContext)(_contextProvider.Context),
      navigate = (0, _router.useNavigate)(),
      getFooter = function getFooter() {
    return /*#__PURE__*/_react.default.createElement(_wizardFooter.default, {
      separator: true,
      justify: "end"
    }, /*#__PURE__*/_react.default.createElement(_button.default, {
      text: __('Previous', 'elementor'),
      variant: "contained",
      onClick: function onClick() {
        return context.dispatch({
          type: 'SET_FILE',
          payload: null
        });
      }
    }), /*#__PURE__*/_react.default.createElement(_importButton.default, null));
  },
      getLearnMoreLink = function getLearnMoreLink() {
    return /*#__PURE__*/_react.default.createElement(_inlineLink.default, {
      url: "https://go.elementor.com/app-what-are-kits",
      italic: true
    }, __('Learn More', 'elementor'));
  };

  (0, _react.useEffect)(function () {
    if (!context.data.file) {
      navigate('import');
    }
  }, [context.data.file]);
  return /*#__PURE__*/_react.default.createElement(_layout.default, {
    type: "import",
    footer: getFooter()
  }, /*#__PURE__*/_react.default.createElement("section", {
    className: "e-app-export-kit"
  }, /*#__PURE__*/_react.default.createElement(_pageHeader.default, {
    heading: __('Import a Template Kit', 'elementor'),
    description: [__('Choose which Elementor components - templates, content and site settings - to include in your kit.', 'elementor'), /*#__PURE__*/_react.default.createElement(_react.default.Fragment, {
      key: "description-secondary-line"
    }, __('By default, all of your components will be imported.', 'elementor'), " ", getLearnMoreLink())]
  }), /*#__PURE__*/_react.default.createElement(_kitContent.default, {
    manifest: (_context$data$fileRes = context.data.fileResponse) === null || _context$data$fileRes === void 0 ? void 0 : (_context$data$fileRes2 = _context$data$fileRes.stage1) === null || _context$data$fileRes2 === void 0 ? void 0 : _context$data$fileRes2.manifest
  })));
}

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/pages/import/import-kit/import-kit.js":
/*!*****************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/pages/import/import-kit/import-kit.js ***!
  \*****************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ImportKit;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _stringify = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/json/stringify */ "../node_modules/@babel/runtime-corejs2/core-js/json/stringify.js"));

__webpack_require__(/*! core-js/modules/es6.regexp.match.js */ "../node_modules/core-js/modules/es6.regexp.match.js");

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js");

var _contextProvider = __webpack_require__(/*! ../../../context/context-provider */ "../core/app/modules/import-export/assets/js/context/context-provider.js");

var _layout = _interopRequireDefault(__webpack_require__(/*! ../../../templates/layout */ "../core/app/modules/import-export/assets/js/templates/layout.js"));

var _pageHeader = _interopRequireDefault(__webpack_require__(/*! ../../../ui/page-header/page-header */ "../core/app/modules/import-export/assets/js/ui/page-header/page-header.js"));

var _importFailedDialog = _interopRequireDefault(__webpack_require__(/*! ../../../shared/import-failed-dialog/import-failed-dialog */ "../core/app/modules/import-export/assets/js/shared/import-failed-dialog/import-failed-dialog.js"));

var _inlineLink = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/inline-link */ "../core/app/assets/js/ui/molecules/inline-link.js"));

var _notice = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/notice */ "../core/app/assets/js/ui/molecules/notice.js"));

var _dropZone = _interopRequireDefault(__webpack_require__(/*! elementor-app/organisms/drop-zone */ "../core/app/assets/js/organisms/drop-zone.js"));

var _button = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/button */ "../core/app/assets/js/ui/molecules/button.js"));

var _useAjax2 = _interopRequireDefault(__webpack_require__(/*! elementor-app/hooks/use-ajax */ "../core/app/assets/js/hooks/use-ajax.js"));

__webpack_require__(/*! ./import-kit.scss */ "../core/app/modules/import-export/assets/js/pages/import/import-kit/import-kit.scss");

function ImportKit() {
  var _useAjax = (0, _useAjax2.default)(),
      ajaxState = _useAjax.ajaxState,
      setAjax = _useAjax.setAjax,
      ajaxActions = _useAjax.ajaxActions,
      _useState = (0, _react.useState)(false),
      _useState2 = (0, _slicedToArray2.default)(_useState, 2),
      isImportFailed = _useState2[0],
      setIsImportFailed = _useState2[1],
      _useState3 = (0, _react.useState)(false),
      _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
      isLoading = _useState4[0],
      setIsLoading = _useState4[1],
      context = (0, _react.useContext)(_contextProvider.Context),
      navigate = (0, _router.useNavigate)(),
      referrer = location.hash.match('referrer=([^&]+)'),
      resetImportProcess = function resetImportProcess() {
    context.dispatch({
      type: 'SET_FILE',
      payload: null
    });
    setIsImportFailed(false);
    setIsLoading(false);
    ajaxActions.reset();
  },
      getLearnMoreLink = function getLearnMoreLink() {
    return /*#__PURE__*/_react.default.createElement(_inlineLink.default, {
      url: "https://go.elementor.com/app-what-are-kits",
      key: "learn-more-link",
      italic: true
    }, __('Learn More', 'elementor'));
  };

  (0, _react.useEffect)(function () {
    if (context.data.file) {
      setAjax({
        data: {
          e_import_file: context.data.file,
          action: 'elementor_import_kit',
          data: (0, _stringify.default)({
            stage: 1
          })
        }
      });
    }
  }, [context.data.file]);
  (0, _react.useEffect)(function () {
    if ('success' === ajaxState.status) {
      context.dispatch({
        type: 'SET_FILE_RESPONSE',
        payload: {
          stage1: ajaxState.response
        }
      });
    } else if ('error' === ajaxState.status) {
      setIsImportFailed(true);
    }
  }, [ajaxState.status]);
  (0, _react.useEffect)(function () {
    if (context.data.fileResponse && context.data.file) {
      navigate('/import/content');
    }
  }, [context.data.fileResponse]);
  (0, _react.useEffect)(function () {
    context.dispatch({
      type: 'SET_INCLUDES',
      payload: []
    });
  }, []);
  return /*#__PURE__*/_react.default.createElement(_layout.default, {
    type: "import"
  }, /*#__PURE__*/_react.default.createElement("section", {
    className: "e-app-import"
  }, 'kit-library' === (referrer === null || referrer === void 0 ? void 0 : referrer[1]) && /*#__PURE__*/_react.default.createElement(_button.default, {
    className: "e-app-import__back-to-library",
    icon: "eicon-chevron-left",
    text: __('Back to Kit Library', 'elementor'),
    onClick: function onClick() {
      return navigate('/kit-library');
    }
  }), /*#__PURE__*/_react.default.createElement(_pageHeader.default, {
    heading: __('Import a Template Kit', 'elementor'),
    description: [__('Upload a file with templates, site settings, content, etc., and apply them to your site automatically.', 'elementor'), getLearnMoreLink()]
  }), /*#__PURE__*/_react.default.createElement(_notice.default, {
    label: __('Important', 'elementor'),
    color: "warning",
    className: "e-app-import__notice"
  }, __('We recommend that you backup your site before importing a kit file.', 'elementor')), /*#__PURE__*/_react.default.createElement(_dropZone.default, {
    className: "e-app-import__drop-zone",
    heading: __('Upload Files to Your Library', 'elementor'),
    text: __('Drag & drop the .zip file with your Kit', 'elementor'),
    secondaryText: __('Or', 'elementor'),
    filetypes: ['zip'],
    onFileSelect: function onFileSelect(file) {
      setIsLoading(true);
      context.dispatch({
        type: 'SET_FILE',
        payload: file
      });
    },
    onError: function onError() {
      return setIsImportFailed(true);
    },
    isLoading: isLoading
  }), isImportFailed && /*#__PURE__*/_react.default.createElement(_importFailedDialog.default, {
    onApprove: function onApprove() {
      return window.open('https://elementor.com/help/import-kit?utm_source=import-export&utm_medium=wp-dash&utm_campaign=learn', '_blank');
    },
    onDismiss: resetImportProcess
  })));
}

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/pages/import/import-process/import-process.js":
/*!*************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/pages/import/import-process/import-process.js ***!
  \*************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ImportProcess;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

var _stringify = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/json/stringify */ "../node_modules/@babel/runtime-corejs2/core-js/json/stringify.js"));

__webpack_require__(/*! core-js/modules/es6.regexp.search.js */ "../node_modules/core-js/modules/es6.regexp.search.js");

__webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");

__webpack_require__(/*! core-js/modules/es6.array.iterator.js */ "../node_modules/core-js/modules/es6.array.iterator.js");

__webpack_require__(/*! core-js/modules/web.dom.iterable.js */ "../node_modules/core-js/modules/web.dom.iterable.js");

__webpack_require__(/*! core-js/modules/es6.regexp.match.js */ "../node_modules/core-js/modules/es6.regexp.match.js");

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js");

var _layout = _interopRequireDefault(__webpack_require__(/*! ../../../templates/layout */ "../core/app/modules/import-export/assets/js/templates/layout.js"));

var _fileProcess = _interopRequireDefault(__webpack_require__(/*! ../../../shared/file-process/file-process */ "../core/app/modules/import-export/assets/js/shared/file-process/file-process.js"));

var _contextProvider = __webpack_require__(/*! ../../../context/context-provider */ "../core/app/modules/import-export/assets/js/context/context-provider.js");

var _useAjax2 = _interopRequireDefault(__webpack_require__(/*! elementor-app/hooks/use-ajax */ "../core/app/assets/js/hooks/use-ajax.js"));

function ImportProcess() {
  var _location$hash$match;

  var _useAjax = (0, _useAjax2.default)(),
      ajaxState = _useAjax.ajaxState,
      setAjax = _useAjax.setAjax,
      context = (0, _react.useContext)(_contextProvider.Context),
      navigate = (0, _router.useNavigate)(),
      urlSearchParams = new URLSearchParams(window.location.search),
      queryParams = Object.fromEntries(urlSearchParams.entries()),
      fileURL = (queryParams === null || queryParams === void 0 ? void 0 : queryParams['file_url']) || ((_location$hash$match = location.hash.match('file_url=([^&]+)')) === null || _location$hash$match === void 0 ? void 0 : _location$hash$match[1]),
      onLoad = function onLoad() {
    var ajaxConfig = {
      data: {
        action: 'elementor_import_kit'
      }
    };

    if (fileURL || context.data.fileResponse) {
      if (fileURL && !context.data.file) {
        // When the starting point of the app is the import/process screen and importing via file_url.
        var decodedFileURL = decodeURIComponent(fileURL);
        context.dispatch({
          type: 'SET_FILE',
          payload: decodedFileURL
        });
        ajaxConfig.data.e_import_file = decodedFileURL;
        ajaxConfig.data.data = (0, _stringify.default)({
          stage: 1
        });
        var referrer = location.hash.match('referrer=([^&]+)');

        if (referrer) {
          context.dispatch({
            type: 'SET_REFERRER',
            payload: referrer[1]
          });
        }
      } else {
        // When the import/process is the second step of the kit import process, after selecting the kit content.
        ajaxConfig.data.data = {
          stage: 2,
          session: context.data.fileResponse.stage1.session,
          include: context.data.includes,
          overrideConditions: context.data.overrideConditions
        };

        if (context.data.referrer) {
          ajaxConfig.data.data.referrer = context.data.referrer;
        }

        ajaxConfig.data.data = (0, _stringify.default)(ajaxConfig.data.data);
      }

      setAjax(ajaxConfig);
    }
  },
      onSuccess = function onSuccess() {
    var _context$data$fileRes;

    if ((_context$data$fileRes = context.data.fileResponse) !== null && _context$data$fileRes !== void 0 && _context$data$fileRes.stage1) {
      var previousFileResponse = context.data.fileResponse,
          fileResponse = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, previousFileResponse), {}, {
        stage2: ajaxState.response
      });
      context.dispatch({
        type: 'SET_FILE_RESPONSE',
        payload: fileResponse
      });
    } else {
      context.dispatch({
        type: 'SET_FILE_RESPONSE',
        payload: {
          stage1: ajaxState.response
        }
      });
    }
  },
      onDialogDismiss = function onDialogDismiss() {
    context.dispatch({
      type: 'SET_FILE',
      payload: null
    });
    navigate('/import');
  };

  (0, _react.useEffect)(function () {
    if ('success' === ajaxState.status) {
      if (context.data.fileResponse.hasOwnProperty('stage2')) {
        navigate('/import/complete');
      } else {
        navigate('/import/content');
      }
    }
  }, [context.data.fileResponse]);
  return /*#__PURE__*/_react.default.createElement(_layout.default, {
    type: "import"
  }, /*#__PURE__*/_react.default.createElement(_fileProcess.default, {
    status: ajaxState.status,
    onLoad: onLoad,
    onSuccess: onSuccess,
    onDialogApprove: function onDialogApprove() {},
    onDialogDismiss: onDialogDismiss
  }));
}

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/pages/import/import-resolver/components/conflict/components/conflict-checkbox/conflict-checkbox.js":
/*!******************************************************************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/pages/import/import-resolver/components/conflict/components/conflict-checkbox/conflict-checkbox.js ***!
  \******************************************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ConflictCheckbox;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

var _contextProvider = __webpack_require__(/*! ../../../../../../../context/context-provider */ "../core/app/modules/import-export/assets/js/context/context-provider.js");

var _checkbox = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/checkbox */ "../core/app/assets/js/ui/atoms/checkbox.js"));

function ConflictCheckbox(props) {
  var context = (0, _react.useContext)(_contextProvider.Context),
      isSelected = function isSelected() {
    return context.data.overrideConditions.includes(props.id);
  },
      updateOverrideCondition = function updateOverrideCondition(event) {
    var isChecked = event.target.checked,
        actionType = isChecked ? 'ADD_OVERRIDE_CONDITION' : 'REMOVE_OVERRIDE_CONDITION';
    context.dispatch({
      type: actionType,
      payload: props.id
    });
  };

  (0, _react.useEffect)(function () {
    if (!context.data.overrideConditions.length) {
      context.dispatch({
        type: 'ADD_OVERRIDE_CONDITION',
        payload: props.id
      });
    }
  }, []);
  return /*#__PURE__*/_react.default.createElement(_checkbox.default, {
    checked: isSelected(),
    onChange: updateOverrideCondition,
    className: props.className
  });
}

ConflictCheckbox.propTypes = {
  className: PropTypes.string,
  id: PropTypes.number.isRequired
};
ConflictCheckbox.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/pages/import/import-resolver/components/conflict/conflict.js":
/*!****************************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/pages/import/import-resolver/components/conflict/conflict.js ***!
  \****************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Conflict;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

var _contextProvider = __webpack_require__(/*! ../../../../../context/context-provider */ "../core/app/modules/import-export/assets/js/context/context-provider.js");

var _conflictCheckbox = _interopRequireDefault(__webpack_require__(/*! ./components/conflict-checkbox/conflict-checkbox */ "../core/app/modules/import-export/assets/js/pages/import/import-resolver/components/conflict/components/conflict-checkbox/conflict-checkbox.js"));

var _heading = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/heading */ "../core/app/assets/js/ui/atoms/heading.js"));

var _text = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/text */ "../core/app/assets/js/ui/atoms/text.js"));

var _grid = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/grid/grid */ "../core/app/assets/js/ui/grid/grid.js"));

var _button = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/button */ "../core/app/assets/js/ui/molecules/button.js"));

function Conflict(props) {
  var _context$data$fileRes, _context$data$fileRes2;

  var context = (0, _react.useContext)(_contextProvider.Context),
      manifest = (_context$data$fileRes = context.data.fileResponse) === null || _context$data$fileRes === void 0 ? void 0 : (_context$data$fileRes2 = _context$data$fileRes.stage1) === null || _context$data$fileRes2 === void 0 ? void 0 : _context$data$fileRes2.manifest,
      getConflictTitle = function getConflictTitle(id) {
    var _elementorAppConfig$i;

    var templateType = manifest.templates[id].doc_type,
        summaryTitle = (_elementorAppConfig$i = elementorAppConfig['import-export'].summaryTitles.templates) === null || _elementorAppConfig$i === void 0 ? void 0 : _elementorAppConfig$i[templateType];
    return (summaryTitle === null || summaryTitle === void 0 ? void 0 : summaryTitle.single) || templateType;
  },
      getEditTemplateButton = function getEditTemplateButton(editUrl) {
    return /*#__PURE__*/_react.default.createElement(_button.default, {
      className: "e-app-import-resolver-conflicts__edit-template",
      url: editUrl,
      target: "_blank",
      icon: "eicon-editor-external-link",
      text: __('Edit Template', 'elementor'),
      hideText: true
    });
  },
      isImportedAssetSelected = function isImportedAssetSelected(importedAssetId) {
    return context.data.overrideConditions.includes(importedAssetId);
  },
      getAssetClassName = function getAssetClassName(isActive) {
    var classes = ['e-app-import-resolver-conflicts__asset'];

    if (isActive) {
      classes.push('active');
    }

    return classes.join(' ');
  },
      getImportedAssetClasses = function getImportedAssetClasses(importedAssetId) {
    return getAssetClassName(isImportedAssetSelected(importedAssetId));
  },
      getExistingAssetClasses = function getExistingAssetClasses(importedAssetId) {
    return getAssetClassName(!isImportedAssetSelected(importedAssetId));
  };

  return /*#__PURE__*/_react.default.createElement(_grid.default, {
    container: true,
    noWrap: true
  }, /*#__PURE__*/_react.default.createElement(_conflictCheckbox.default, {
    id: props.importedId,
    type: "main-type",
    className: "e-app-import-resolver-conflicts__checkbox"
  }), /*#__PURE__*/_react.default.createElement(_grid.default, {
    item: true
  }, /*#__PURE__*/_react.default.createElement(_heading.default, {
    variant: "h5",
    tag: "h4",
    className: "e-app-import-resolver-conflicts__title"
  }, getConflictTitle(props.importedId)), /*#__PURE__*/_react.default.createElement(_grid.default, {
    item: true
  }, /*#__PURE__*/_react.default.createElement(_text.default, {
    variant: "sm",
    tag: "span",
    className: getImportedAssetClasses(props.importedId)
  }, __('Imported'), ": ", manifest.templates[props.importedId].title), /*#__PURE__*/_react.default.createElement(_text.default, {
    style: true,
    variant: "sm",
    tag: "span",
    className: getExistingAssetClasses(props.importedId)
  }, __('Existing'), ": ", props.conflictData.template_title, " ", getEditTemplateButton(props.conflictData.edit_url)))));
}

Conflict.propTypes = {
  importedId: PropTypes.number,
  conflictData: PropTypes.object
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/pages/import/import-resolver/import-resolver.js":
/*!***************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/pages/import/import-resolver/import-resolver.js ***!
  \***************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ImportResolver;

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _parseInt2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/parse-int */ "../node_modules/@babel/runtime-corejs2/core-js/parse-int.js"));

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js");

var _contextProvider = __webpack_require__(/*! ../../../context/context-provider */ "../core/app/modules/import-export/assets/js/context/context-provider.js");

var _layout = _interopRequireDefault(__webpack_require__(/*! ../../../templates/layout */ "../core/app/modules/import-export/assets/js/templates/layout.js"));

var _pageHeader = _interopRequireDefault(__webpack_require__(/*! ../../../ui/page-header/page-header */ "../core/app/modules/import-export/assets/js/ui/page-header/page-header.js"));

var _conflict = _interopRequireDefault(__webpack_require__(/*! ./components/conflict/conflict */ "../core/app/modules/import-export/assets/js/pages/import/import-resolver/components/conflict/conflict.js"));

var _panel = _interopRequireDefault(__webpack_require__(/*! ../../../ui/panel/panel */ "../core/app/modules/import-export/assets/js/ui/panel/panel.js"));

var _notice = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/notice */ "../core/app/assets/js/ui/molecules/notice.js"));

var _inlineLink = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/inline-link */ "../core/app/assets/js/ui/molecules/inline-link.js"));

var _button = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/button */ "../core/app/assets/js/ui/molecules/button.js"));

var _box = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/box */ "../core/app/assets/js/ui/atoms/box.js"));

var _list = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/list */ "../core/app/assets/js/ui/molecules/list.js"));

var _wizardFooter = _interopRequireDefault(__webpack_require__(/*! elementor-app/organisms/wizard-footer */ "../core/app/assets/js/organisms/wizard-footer.js"));

__webpack_require__(/*! ./import-resolver.scss */ "../core/app/modules/import-export/assets/js/pages/import/import-resolver/import-resolver.scss");

function ImportResolver() {
  var _context$data, _context$data$fileRes;

  var context = (0, _react.useContext)(_contextProvider.Context),
      navigate = (0, _router.useNavigate)(),
      conflicts = ((_context$data = context.data) === null || _context$data === void 0 ? void 0 : (_context$data$fileRes = _context$data.fileResponse) === null || _context$data$fileRes === void 0 ? void 0 : _context$data$fileRes.stage1.conflicts) || {},
      getFooter = function getFooter() {
    return /*#__PURE__*/_react.default.createElement(_wizardFooter.default, {
      separator: true,
      justify: "end"
    }, /*#__PURE__*/_react.default.createElement(_button.default, {
      text: __('Previous', 'elementor'),
      variant: "contained",
      onClick: function onClick() {
        return navigate('import/content');
      }
    }), /*#__PURE__*/_react.default.createElement(_button.default, {
      text: __('Next', 'elementor'),
      variant: "contained",
      color: "primary",
      onClick: function onClick() {
        return navigate('import/process');
      }
    }));
  },
      getLearnMoreLink = function getLearnMoreLink() {
    return /*#__PURE__*/_react.default.createElement(_inlineLink.default, {
      url: "https://go.elementor.com/app-what-are-kits",
      italic: true
    }, __('Learn More', 'elementor'));
  },
      isHomePageOverride = function isHomePageOverride() {
    if (context.data.includes.includes('content')) {
      var _context$data2, _context$data2$fileRe, _context$data2$fileRe2;

      var pages = ((_context$data2 = context.data) === null || _context$data2 === void 0 ? void 0 : (_context$data2$fileRe = _context$data2.fileResponse) === null || _context$data2$fileRe === void 0 ? void 0 : (_context$data2$fileRe2 = _context$data2$fileRe.stage1.manifest.content) === null || _context$data2$fileRe2 === void 0 ? void 0 : _context$data2$fileRe2.page) || {};
      return (0, _entries.default)(pages).find(function (pageData) {
        return pageData[1].show_on_front;
      });
    }

    return false;
  };

  return /*#__PURE__*/_react.default.createElement(_layout.default, {
    type: "import",
    footer: getFooter()
  }, /*#__PURE__*/_react.default.createElement("section", {
    className: "e-app-import-resolver"
  }, /*#__PURE__*/_react.default.createElement(_pageHeader.default, {
    heading: __('Import a Template Kit', 'elementor'),
    description: [__("We noticed that items in your kit overlap with what's already live on your site.", 'elementor'), /*#__PURE__*/_react.default.createElement(_react.default.Fragment, {
      key: "description-secondary-line"
    }, __('Items that you leave checked here will override your current design and settings.', 'elementor'), " ", getLearnMoreLink())]
  }), isHomePageOverride() && /*#__PURE__*/_react.default.createElement(_notice.default, {
    className: "e-app-import-resolver__notice",
    label: __('Note', 'elementor'),
    color: "warning"
  }, __("Your site's homepage will be determined by the kit. You can change this later.", 'elementor')), /*#__PURE__*/_react.default.createElement(_panel.default, {
    isOpened: true
  }, /*#__PURE__*/_react.default.createElement(_panel.default.Header, {
    toggle: false
  }, /*#__PURE__*/_react.default.createElement(_panel.default.Headline, null, __('Select the items you want to keep and apply:', 'elementor'))), /*#__PURE__*/_react.default.createElement(_panel.default.Body, {
    padding: "20"
  }, /*#__PURE__*/_react.default.createElement(_box.default, {
    className: "e-app-import-resolver-conflicts__container"
  }, /*#__PURE__*/_react.default.createElement(_list.default, {
    separated: true,
    className: "e-app-import-resolver-conflicts"
  }, (0, _entries.default)(conflicts).map(function (_ref, index) {
    var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
        id = _ref2[0],
        conflict = _ref2[1];

    return /*#__PURE__*/_react.default.createElement(_list.default.Item, {
      padding: "20",
      key: index,
      className: "e-app-import-resolver-conflicts__item"
    }, /*#__PURE__*/_react.default.createElement(_conflict.default, {
      importedId: (0, _parseInt2.default)(id),
      conflictData: conflict[0]
    }));
  })))))));
}

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/content-layout/content-layout.js":
/*!*******************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/content-layout/content-layout.js ***!
  \*******************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ContentLayout;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! ./content-layout.scss */ "../core/app/modules/import-export/assets/js/shared/content-layout/content-layout.scss");

function ContentLayout(props) {
  return /*#__PURE__*/_react.default.createElement("div", {
    className: "e-app-import-export-content-layout"
  }, /*#__PURE__*/_react.default.createElement("div", {
    className: "e-app-import-export-content-layout__container"
  }, props.children));
}

ContentLayout.propTypes = {
  children: PropTypes.any.isRequired
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/file-process/file-process.js":
/*!***************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/file-process/file-process.js ***!
  \***************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = FileProcess;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

var _importFailedDialog = _interopRequireDefault(__webpack_require__(/*! ../import-failed-dialog/import-failed-dialog */ "../core/app/modules/import-export/assets/js/shared/import-failed-dialog/import-failed-dialog.js"));

var _wizardStep = _interopRequireDefault(__webpack_require__(/*! ../../ui/wizard-step/wizard-step */ "../core/app/modules/import-export/assets/js/ui/wizard-step/wizard-step.js"));

function FileProcess(props) {
  (0, _react.useEffect)(function () {
    props.onLoad();
  }, []);
  (0, _react.useEffect)(function () {
    if ('success' === props.status) {
      props.onSuccess();
    }
  }, [props.status]);
  return /*#__PURE__*/_react.default.createElement(_wizardStep.default, {
    className: (0, _utils.arrayToClassName)(['e-app-import-export-file-process', props.className]),
    icon: "eicon-loading eicon-animation-spin",
    heading: __('Setting up your kit...', 'elementor'),
    description: /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, __('This usually takes a few moments.', 'elementor'), /*#__PURE__*/_react.default.createElement("br", null), __("Don't close this window until the process is finished.", 'elementor'))
  }, 'error' === props.status && /*#__PURE__*/_react.default.createElement(_importFailedDialog.default, {
    onApprove: props.onDialogApprove,
    onDismiss: props.onDialogDismiss
  }));
}

FileProcess.propTypes = {
  className: PropTypes.string,
  status: PropTypes.oneOf(['initial', 'success', 'error']),
  onLoad: PropTypes.func.isRequired,
  onSuccess: PropTypes.func.isRequired,
  onDialogApprove: PropTypes.func.isRequired,
  onDialogDismiss: PropTypes.func.isRequired
};
FileProcess.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/import-failed-dialog/import-failed-dialog.js":
/*!*******************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/import-failed-dialog/import-failed-dialog.js ***!
  \*******************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ImportFailedDialog;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _dialog = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/dialog/dialog */ "../core/app/assets/js/ui/dialog/dialog.js"));

function ImportFailedDialog(props) {
  return /*#__PURE__*/_react.default.createElement(_dialog.default, {
    title: __('Something went wrong', 'elementor'),
    text: __('Nothing to worry about, just try again. If the problem continues, head over to the Help Center.', 'elementor'),
    approveButtonColor: "link",
    approveButtonText: __('Learn More', 'elementor'),
    approveButtonOnClick: props.onApprove,
    dismissButtonText: __('Dismiss', 'elementor'),
    dismissButtonOnClick: props.onDismiss,
    onClose: props.onDismiss
  });
}

ImportFailedDialog.propTypes = {
  onApprove: PropTypes.func.isRequired,
  onDismiss: PropTypes.func.isRequired
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/info-modal/export-info-modal.js":
/*!******************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/info-modal/export-info-modal.js ***!
  \******************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ExportInfoModal;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

var _inlineLink = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/inline-link */ "../core/app/assets/js/ui/molecules/inline-link.js"));

var _infoModal = _interopRequireDefault(__webpack_require__(/*! ./info-modal */ "../core/app/modules/import-export/assets/js/shared/info-modal/info-modal.js"));

function ExportInfoModal(props) {
  return /*#__PURE__*/_react.default.createElement(_infoModal.default, (0, _extends2.default)({}, props, {
    title: __('Export a Template Kit', 'elementor')
  }), /*#__PURE__*/_react.default.createElement(_infoModal.default.Section, null, /*#__PURE__*/_react.default.createElement(_infoModal.default.Heading, null, __('What’s a Template Kit?', 'elementor')), /*#__PURE__*/_react.default.createElement(_infoModal.default.Text, null, __('A kit is a zip file containing anything from an entire site to individual components.', 'elementor'))), /*#__PURE__*/_react.default.createElement(_infoModal.default.Section, null, /*#__PURE__*/_react.default.createElement(_infoModal.default.Heading, null, __('How does exporting work?', 'elementor')), /*#__PURE__*/_react.default.createElement(_infoModal.default.Text, null, /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, __('Select what to include from your site. We’ll use that to create a zip file.', 'elementor'), /*#__PURE__*/_react.default.createElement("br", null), __('That’s it!', 'elementor'), " ", /*#__PURE__*/_react.default.createElement(_inlineLink.default, {
    url: "http://go.elementor.com/app-export-kit"
  }, __('Learn More', 'elementor'))))), /*#__PURE__*/_react.default.createElement(_infoModal.default.Section, null, /*#__PURE__*/_react.default.createElement(_infoModal.default.Tip, {
    title: __('Tip!', 'elementor'),
    description: __('Once your download is complete, import your kit to another site and get it up and running quickly.', 'elementor')
  })));
}

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/info-modal/import-info-modal.js":
/*!******************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/info-modal/import-info-modal.js ***!
  \******************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ImportInfoModal;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

var _inlineLink = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/inline-link */ "../core/app/assets/js/ui/molecules/inline-link.js"));

var _infoModal = _interopRequireDefault(__webpack_require__(/*! ./info-modal */ "../core/app/modules/import-export/assets/js/shared/info-modal/info-modal.js"));

function ImportInfoModal(props) {
  return /*#__PURE__*/_react.default.createElement(_infoModal.default, (0, _extends2.default)({}, props, {
    title: __('Import a Template Kit', 'elementor')
  }), /*#__PURE__*/_react.default.createElement(_infoModal.default.Section, null, /*#__PURE__*/_react.default.createElement(_infoModal.default.Heading, null, __('What’s a Template Kit?', 'elementor')), /*#__PURE__*/_react.default.createElement(_infoModal.default.Text, null, __('A kit is a zip file containing anything from an entire site to individual components.', 'elementor'))), /*#__PURE__*/_react.default.createElement(_infoModal.default.Section, null, /*#__PURE__*/_react.default.createElement(_infoModal.default.Heading, null, __('How does importing work?', 'elementor')), /*#__PURE__*/_react.default.createElement(_infoModal.default.Text, null, /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, __('After you select what\'s included from your imported kit, you’ll be able to choose which current site settings should stay and which the import should override. ', 'elementor'), /*#__PURE__*/_react.default.createElement("br", null), /*#__PURE__*/_react.default.createElement(_inlineLink.default, {
    url: "http://go.elementor.com/app-import-kit"
  }, __('Learn More', 'elementor'))))));
}

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/info-modal/info-modal-heading.js":
/*!*******************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/info-modal/info-modal-heading.js ***!
  \*******************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = InfoModalHeading;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

var _heading = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/heading */ "../core/app/assets/js/ui/atoms/heading.js"));

function InfoModalHeading(props) {
  return /*#__PURE__*/_react.default.createElement(_heading.default, {
    variant: "h3",
    tag: "h2",
    className: (0, _utils.arrayToClassName)(['e-app-import-export-info-modal__heading', props.className])
  }, props.children);
}

InfoModalHeading.propTypes = {
  className: PropTypes.string,
  children: PropTypes.oneOfType([PropTypes.string, PropTypes.object, PropTypes.arrayOf(PropTypes.object)]).isRequired
};
InfoModalHeading.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/info-modal/info-modal-section.js":
/*!*******************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/info-modal/info-modal-section.js ***!
  \*******************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = InfoModalSection;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

var _modal = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/modal/modal */ "../core/app/assets/js/ui/modal/modal.js"));

function InfoModalSection(props) {
  return /*#__PURE__*/_react.default.createElement(_modal.default.Section, {
    className: (0, _utils.arrayToClassName)(['e-app-import-export-info-modal__section', props.className])
  }, props.children);
}

InfoModalSection.propTypes = {
  className: PropTypes.string,
  children: PropTypes.any
};
InfoModalSection.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/info-modal/info-modal-text.js":
/*!****************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/info-modal/info-modal-text.js ***!
  \****************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = InfoModalText;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

var _text = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/text */ "../core/app/assets/js/ui/atoms/text.js"));

function InfoModalText(props) {
  return /*#__PURE__*/_react.default.createElement(_text.default, {
    variant: "sm",
    className: (0, _utils.arrayToClassName)(['e-app-import-export-info-modal__text', props.className])
  }, props.children);
}

InfoModalText.propTypes = {
  className: PropTypes.string,
  children: PropTypes.any.isRequired
};
InfoModalText.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/info-modal/info-modal-tip.js":
/*!***************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/info-modal/info-modal-tip.js ***!
  \***************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = InfoModalTip;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

var _modal = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/modal/modal */ "../core/app/assets/js/ui/modal/modal.js"));

function InfoModalTip(props) {
  return /*#__PURE__*/_react.default.createElement(_modal.default.Tip, (0, _extends2.default)({}, props, {
    className: (0, _utils.arrayToClassName)(['e-app-import-export-info-modal__tip', props.className])
  }));
}

InfoModalTip.propTypes = {
  className: PropTypes.string
};
InfoModalTip.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/info-modal/info-modal.js":
/*!***********************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/info-modal/info-modal.js ***!
  \***********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = InfoModal;
exports.infoButtonProps = void 0;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

var _modal = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/modal/modal */ "../core/app/assets/js/ui/modal/modal.js"));

var _infoModalSection = _interopRequireDefault(__webpack_require__(/*! ./info-modal-section */ "../core/app/modules/import-export/assets/js/shared/info-modal/info-modal-section.js"));

var _infoModalHeading = _interopRequireDefault(__webpack_require__(/*! ./info-modal-heading */ "../core/app/modules/import-export/assets/js/shared/info-modal/info-modal-heading.js"));

var _infoModalText = _interopRequireDefault(__webpack_require__(/*! ./info-modal-text */ "../core/app/modules/import-export/assets/js/shared/info-modal/info-modal-text.js"));

var _infoModalTip = _interopRequireDefault(__webpack_require__(/*! ./info-modal-tip */ "../core/app/modules/import-export/assets/js/shared/info-modal/info-modal-tip.js"));

__webpack_require__(/*! ./info-modal.scss */ "../core/app/modules/import-export/assets/js/shared/info-modal/info-modal.scss");

var infoButtonProps = {
  id: 'info-modal',
  className: 'e-app-export-kit-information__info-icon',
  icon: 'eicon-info-circle',
  text: __('Kit Info', 'elementor'),
  color: 'secondary',
  hideText: true
};
exports.infoButtonProps = infoButtonProps;

function InfoModal(props) {
  var attrs = {
    className: 'e-app-import-export-info-modal',
    setShow: props.setShow
  };

  if (props.hasOwnProperty('show')) {
    attrs.show = props.show;
  } else {
    attrs.toggleButtonProps = infoButtonProps;
  }

  return /*#__PURE__*/_react.default.createElement(_modal.default, (0, _extends2.default)({}, attrs, {
    title: props.title
  }), props.children);
}

InfoModal.propTypes = {
  show: PropTypes.bool,
  setShow: PropTypes.func,
  title: PropTypes.string,
  children: PropTypes.any.isRequired
};
InfoModal.Section = _infoModalSection.default;
InfoModal.Heading = _infoModalHeading.default;
InfoModal.Text = _infoModalText.default;
InfoModal.Tip = _infoModalTip.default;

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/kit-content/components/kit-content-checkbox/kit-content-checkbox.js":
/*!******************************************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/kit-content/components/kit-content-checkbox/kit-content-checkbox.js ***!
  \******************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = KitContentCheckbox;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

var _contextProvider = __webpack_require__(/*! ../../../../context/context-provider */ "../core/app/modules/import-export/assets/js/context/context-provider.js");

var _checkbox = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/checkbox */ "../core/app/assets/js/ui/atoms/checkbox.js"));

function KitContentCheckbox(props) {
  var context = (0, _react.useContext)(_contextProvider.Context),
      isSelected = function isSelected() {
    return context.data.includes.includes(props.type);
  },
      setIncludes = function setIncludes(event) {
    var isChecked = event.target.checked,
        actionType = isChecked ? 'ADD_INCLUDE' : 'REMOVE_INCLUDE';
    context.dispatch({
      type: actionType,
      payload: props.type
    });
  };

  (0, _react.useEffect)(function () {
    if (!context.data.includes.length) {
      context.dispatch({
        type: 'ADD_INCLUDE',
        payload: props.type
      });
    }
  }, []);
  return (0, _react.useMemo)(function () {
    return /*#__PURE__*/_react.default.createElement(_checkbox.default, {
      checked: isSelected(),
      onChange: setIncludes,
      className: props.className
    });
  }, [context.data.includes]);
}

KitContentCheckbox.propTypes = {
  className: PropTypes.string,
  type: PropTypes.string.isRequired
};
KitContentCheckbox.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/kit-content/components/templates-features/templates-features.js":
/*!**************************************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/kit-content/components/templates-features/templates-features.js ***!
  \**************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = TemplatesFeatures;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _tooltip = _interopRequireDefault(__webpack_require__(/*! elementor-app/molecules/tooltip */ "../core/app/assets/js/molecules/tooltip.js"));

__webpack_require__(/*! ./templates-features.scss */ "../core/app/modules/import-export/assets/js/shared/kit-content/components/templates-features/templates-features.scss");

function TemplatesFeatures(props) {
  var _props$features$locke;

  var isLockedFeatures = (_props$features$locke = props.features.locked) === null || _props$features$locke === void 0 ? void 0 : _props$features$locke.length,
      getLockedFeatures = function getLockedFeatures() {
    if (!isLockedFeatures) {
      return;
    }

    return /*#__PURE__*/_react.default.createElement(_tooltip.default, {
      tag: "span",
      offset: 19,
      show: props.showTooltip,
      title: props.features.tooltip,
      disabled: !props.isLocked,
      className: props.isLocked ? 'e-app-export-templates-features__locked' : ''
    }, ', ' + props.features.locked.join(', '));
  },
      getOpenFeatures = function getOpenFeatures() {
    var _props$features$open;

    return (_props$features$open = props.features.open) === null || _props$features$open === void 0 ? void 0 : _props$features$open.join(', ');
  };

  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, getOpenFeatures(), getLockedFeatures());
}

TemplatesFeatures.propTypes = {
  features: PropTypes.object,
  isLocked: PropTypes.bool,
  showTooltip: PropTypes.bool
};
TemplatesFeatures.defaultProps = {
  showTooltip: false
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/kit-content/kit-content-data/kit-content-data.js":
/*!***********************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/kit-content/kit-content-data/kit-content-data.js ***!
  \***********************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;
var kitContentData = [{
  type: 'templates',
  data: {
    title: __('Templates', 'elementor'),
    features: {
      open: [__('Saved Templates', 'elementor')],
      locked: [__('Headers', 'elementor'), __('Footers', 'elementor'), __('Archives', 'elementor'), __('Single Posts', 'elementor'), __('Single Pages', 'elementor'), __('Search Results', 'elementor'), __('404 Error Page', 'elementor'), __('Popups', 'elementor'), __('Global widgets', 'elementor')],
      tooltip: __('To import or export these components, you’ll need Elementor Pro.', 'elementor')
    }
  }
}, {
  type: 'content',
  data: {
    title: __('Content', 'elementor'),
    features: {
      open: [__('Elementor Pages', 'elementor'), __('Landing Pages', 'elementor'), __('Elementor Posts', 'elementor'), __('WP Pages', 'elementor'), __('WP Posts', 'elementor'), __('Custom Post Type', 'elementor')]
    }
  }
}, {
  type: 'settings',
  data: {
    title: __('Site Settings', 'elementor'),
    features: {
      open: [__('Global Colors', 'elementor'), __('Global Fonts', 'elementor'), __('Theme Style settings', 'elementor'), __('Layout Settings', 'elementor'), __('Lightbox Settings', 'elementor'), __('Background Settings', 'elementor')]
    }
  }
}];
var _default = kitContentData;
exports.default = _default;

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/kit-content/kit-content.js":
/*!*************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/kit-content/kit-content.js ***!
  \*************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = KitContent;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _objectSpread3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _templatesFeatures = _interopRequireDefault(__webpack_require__(/*! ./components/templates-features/templates-features */ "../core/app/modules/import-export/assets/js/shared/kit-content/components/templates-features/templates-features.js"));

var _kitContentCheckbox = _interopRequireDefault(__webpack_require__(/*! ./components/kit-content-checkbox/kit-content-checkbox */ "../core/app/modules/import-export/assets/js/shared/kit-content/components/kit-content-checkbox/kit-content-checkbox.js"));

var _goProButton = _interopRequireDefault(__webpack_require__(/*! elementor-app/molecules/go-pro-button */ "../core/app/assets/js/molecules/go-pro-button.js"));

var _box = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/box */ "../core/app/assets/js/ui/atoms/box.js"));

var _list = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/list */ "../core/app/assets/js/ui/molecules/list.js"));

var _heading = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/heading */ "../core/app/assets/js/ui/atoms/heading.js"));

var _text = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/text */ "../core/app/assets/js/ui/atoms/text.js"));

var _grid = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/grid/grid */ "../core/app/assets/js/ui/grid/grid.js"));

var _kitContentData = _interopRequireDefault(__webpack_require__(/*! ./kit-content-data/kit-content-data */ "../core/app/modules/import-export/assets/js/shared/kit-content/kit-content-data/kit-content-data.js"));

__webpack_require__(/*! ./kit-content.scss */ "../core/app/modules/import-export/assets/js/shared/kit-content/kit-content.scss");

function KitContent(props) {
  var hasPro = elementorAppConfig.hasPro,
      _useState = (0, _react.useState)({}),
      _useState2 = (0, _slicedToArray2.default)(_useState, 2),
      containerHover = _useState2[0],
      setContainerHover = _useState2[1],
      getTemplateFeatures = function getTemplateFeatures(features, index) {
    if (!features) {
      return;
    }

    return /*#__PURE__*/_react.default.createElement(_templatesFeatures.default, {
      features: features,
      isLocked: !hasPro,
      showTooltip: containerHover[index]
    });
  },
      getGoProButton = function getGoProButton() {
    return /*#__PURE__*/_react.default.createElement(_goProButton.default, {
      className: "e-app-export-kit-content__go-pro-button",
      url: "https://go.elementor.com/go-pro-import-export"
    });
  },
      setContainerHoverState = function setContainerHoverState(index, state) {
    setContainerHover(function (prevState) {
      return (0, _objectSpread3.default)((0, _objectSpread3.default)({}, prevState), {}, (0, _defineProperty2.default)({}, index, state));
    });
  };

  return /*#__PURE__*/_react.default.createElement(_box.default, null, /*#__PURE__*/_react.default.createElement(_list.default, {
    separated: true,
    className: "e-app-export-kit-content"
  }, _kitContentData.default.map(function (item, index) {
    var _item$data$features;

    var isLockedFeaturesNoPro = ((_item$data$features = item.data.features) === null || _item$data$features === void 0 ? void 0 : _item$data$features.locked) && !hasPro;

    if (props.manifest) {
      var contentType = 'settings' === item.type ? 'site-settings' : item.type;

      if (!props.manifest[contentType]) {
        return;
      }
    }

    return /*#__PURE__*/_react.default.createElement(_list.default.Item, {
      padding: "20",
      key: item.type,
      className: "e-app-export-kit-content__item"
    }, /*#__PURE__*/_react.default.createElement("div", {
      onMouseEnter: function onMouseEnter() {
        return isLockedFeaturesNoPro && setContainerHoverState(index, true);
      },
      onMouseLeave: function onMouseLeave() {
        return isLockedFeaturesNoPro && setContainerHoverState(index, false);
      }
    }, /*#__PURE__*/_react.default.createElement(_grid.default, {
      container: true,
      noWrap: true
    }, /*#__PURE__*/_react.default.createElement(_kitContentCheckbox.default, {
      type: item.type,
      className: "e-app-export-kit-content__checkbox"
    }), /*#__PURE__*/_react.default.createElement(_grid.default, {
      item: true
    }, /*#__PURE__*/_react.default.createElement(_heading.default, {
      variant: "h4",
      tag: "h3",
      className: "e-app-export-kit-content__title"
    }, item.data.title), /*#__PURE__*/_react.default.createElement(_grid.default, {
      item: true
    }, /*#__PURE__*/_react.default.createElement(_text.default, {
      variant: "sm",
      tag: "span",
      className: "e-app-export-kit-content__description"
    }, item.data.description || getTemplateFeatures(item.data.features, index)), isLockedFeaturesNoPro && getGoProButton())))));
  })));
}

KitContent.propTypes = {
  className: PropTypes.string,
  manifest: PropTypes.object
};
KitContent.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/kit-data/kit-data.js":
/*!*******************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/kit-data/kit-data.js ***!
  \*******************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = KitData;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

var _heading = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/heading */ "../core/app/assets/js/ui/atoms/heading.js"));

var _text = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/text */ "../core/app/assets/js/ui/atoms/text.js"));

var _list = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/list */ "../core/app/assets/js/ui/molecules/list.js"));

__webpack_require__(/*! ./kit-data.scss */ "../core/app/modules/import-export/assets/js/shared/kit-data/kit-data.scss");

function KitData(props) {
  var kitData = props.data,
      getSummaryTitle = function getSummaryTitle(type, key, amount) {
    var data = elementorAppConfig['import-export'].summaryTitles[type][key];

    if (data !== null && data !== void 0 && data.single) {
      if (!amount) {
        return '';
      }

      var title = amount > 1 ? data.plural : data.single;
      return amount + ' ' + title;
    }

    return data;
  },
      getTemplates = function getTemplates() {
    var templates = {};

    for (var key in kitData === null || kitData === void 0 ? void 0 : kitData.templates) {
      var type = kitData.templates[key].doc_type;

      if (!templates[type]) {
        templates[type] = 0;
      }

      templates[type]++;
    }

    return (0, _entries.default)(templates).map(function (item) {
      return getSummaryTitle('templates', item[0], item[1]);
    });
  },
      getSiteSettings = function getSiteSettings() {
    var siteSettings = (kitData === null || kitData === void 0 ? void 0 : kitData['site-settings']) || {};
    return (0, _entries.default)(siteSettings).map(function (item) {
      return getSummaryTitle('site-settings', item[1]);
    });
  },
      getContent = function getContent() {
    var content = (kitData === null || kitData === void 0 ? void 0 : kitData.content) || {},
        wpContent = (kitData === null || kitData === void 0 ? void 0 : kitData['wp-content']) || {};
    var mergedContent = (0, _objectSpread2.default)({}, content);

    for (var key in mergedContent) {
      mergedContent[key] = (0, _keys.default)(mergedContent[key]).concat(wpContent[key] || []);
    } // In case that wpContent has properties that doesn't exist in the content object.


    mergedContent = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, wpContent), mergedContent);
    return (0, _entries.default)(mergedContent).map(function (item) {
      return getSummaryTitle('content', item[0], item[1].length);
    });
  },
      kitContent = [{
    title: __('Templates:', 'elementor'),
    data: getTemplates()
  }, {
    title: __('Site Settings:', 'elementor'),
    data: getSiteSettings()
  }, {
    title: __('Content:', 'elementor'),
    data: getContent()
  }];

  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_heading.default, {
    variant: "h6",
    tag: "h3",
    className: "e-app-export-complete__kit-content-title"
  }, __('This Template Kit includes:', 'elementor')), /*#__PURE__*/_react.default.createElement(_list.default, {
    className: "e-app-export-complete-kit-data-list"
  }, kitContent.map(function (item, index) {
    if (!item.data.length) {
      return;
    }

    return /*#__PURE__*/_react.default.createElement(_list.default.Item, {
      key: index,
      className: "e-app-export-complete-kit-data-list__item"
    }, /*#__PURE__*/_react.default.createElement(_text.default, {
      tag: "strong",
      variant: "sm"
    }, /*#__PURE__*/_react.default.createElement("strong", null, item.title)), " ", /*#__PURE__*/_react.default.createElement(_text.default, {
      tag: "span",
      variant: "sm"
    }, item.data.filter(function (value) {
      return value;
    }).join(' | ')));
  })));
}

KitData.propTypes = {
  data: PropTypes.object
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/templates/layout.js":
/*!***********************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/templates/layout.js ***!
  \***********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Layout;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.regexp.match.js */ "../node_modules/core-js/modules/es6.regexp.match.js");

var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/toConsumableArray */ "../node_modules/@babel/runtime-corejs2/helpers/toConsumableArray.js"));

var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _page = _interopRequireDefault(__webpack_require__(/*! elementor-app/layout/page */ "../core/app/assets/js/layout/page.js"));

var _contentLayout = _interopRequireDefault(__webpack_require__(/*! ../shared/content-layout/content-layout */ "../core/app/modules/import-export/assets/js/shared/content-layout/content-layout.js"));

var _infoModal = __webpack_require__(/*! ../shared/info-modal/info-modal */ "../core/app/modules/import-export/assets/js/shared/info-modal/info-modal.js");

var _importInfoModal = _interopRequireDefault(__webpack_require__(/*! ../shared/info-modal/import-info-modal */ "../core/app/modules/import-export/assets/js/shared/info-modal/import-info-modal.js"));

var _exportInfoModal = _interopRequireDefault(__webpack_require__(/*! ../shared/info-modal/export-info-modal */ "../core/app/modules/import-export/assets/js/shared/info-modal/export-info-modal.js"));

function Layout(props) {
  var _useState = (0, _react.useState)(false),
      _useState2 = (0, _slicedToArray2.default)(_useState, 2),
      showInfoModal = _useState2[0],
      setShowInfoModal = _useState2[1],
      referrer = location.hash.match('referrer=([^&]+)'),
      getContent = function getContent() {
    var infoModalProps = {
      show: showInfoModal,
      setShow: setShowInfoModal
    };
    return /*#__PURE__*/_react.default.createElement(_contentLayout.default, null, props.children, 'import' === props.type ? /*#__PURE__*/_react.default.createElement(_importInfoModal.default, infoModalProps) : /*#__PURE__*/_react.default.createElement(_exportInfoModal.default, infoModalProps));
  },
      getInfoButtonProps = function getInfoButtonProps() {
    return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, _infoModal.infoButtonProps), {}, {
      onClick: function onClick() {
        setShowInfoModal(true);
      }
    });
  },
      config = {
    title: 'import' === props.type ? __('Import', 'elementor') : __('Export', 'elementor'),
    headerButtons: [getInfoButtonProps()].concat((0, _toConsumableArray2.default)(props.headerButtons)),
    content: getContent(),
    footer: props.footer
  },
      moduleAdminTab = '#tab-import-export-kit'; // Targeting the return_url value to the import-export dedicated admin tab (only when there is no specific referrer).


  if (!referrer && -1 === elementorAppConfig.return_url.indexOf(moduleAdminTab)) {
    elementorAppConfig.return_url += moduleAdminTab;
  }

  return /*#__PURE__*/_react.default.createElement(_page.default, config);
}

Layout.propTypes = {
  type: PropTypes.oneOf(['import', 'export']),
  headerButtons: PropTypes.arrayOf(PropTypes.object),
  children: PropTypes.object.isRequired,
  footer: PropTypes.object
};
Layout.defaultProps = {
  headerButtons: []
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/ui/page-header/page-header.js":
/*!*********************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/ui/page-header/page-header.js ***!
  \*********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = PageHeader;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _isArray = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

var _grid = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/grid/grid */ "../core/app/assets/js/ui/grid/grid.js"));

var _heading = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/heading */ "../core/app/assets/js/ui/atoms/heading.js"));

var _text = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/text */ "../core/app/assets/js/ui/atoms/text.js"));

__webpack_require__(/*! ./page-header.scss */ "../core/app/modules/import-export/assets/js/ui/page-header/page-header.scss");

// Page header.
function PageHeader(props) {
  var baseClassName = 'e-app-import-export-page-header',
      classes = [baseClassName, props.className];

  var handleMultiLine = function handleMultiLine(content) {
    if ((0, _isArray.default)(content)) {
      var multiLineArray = [];
      content.forEach(function (line, index) {
        if (index) {
          multiLineArray.push( /*#__PURE__*/_react.default.createElement("br", {
            key: index
          }));
        }

        multiLineArray.push(line);
      });
      return multiLineArray;
    }

    return content;
  };

  return /*#__PURE__*/_react.default.createElement("div", {
    className: (0, _utils.arrayToClassName)(classes)
  }, /*#__PURE__*/_react.default.createElement(_grid.default, {
    container: true
  }, /*#__PURE__*/_react.default.createElement(_grid.default, {
    item: true,
    className: "e-app-import-export-page-header__content-wrapper"
  }, props.heading && /*#__PURE__*/_react.default.createElement(_heading.default, {
    variant: "display-3",
    className: "e-app-import-export-page-header__heading"
  }, props.heading), props.description && /*#__PURE__*/_react.default.createElement(_text.default, {
    className: "e-app-import-export-page-header__description"
  }, handleMultiLine(props.description)))));
}

PageHeader.propTypes = {
  className: PropTypes.string,
  heading: PropTypes.string,
  description: PropTypes.oneOfType([PropTypes.string, PropTypes.array, PropTypes.object])
};
PageHeader.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/ui/panel/panel-body.js":
/*!**************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/ui/panel/panel-body.js ***!
  \**************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = PanelBody;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

var _card = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/card/card */ "../core/app/assets/js/ui/card/card.js"));

var _collapse = _interopRequireDefault(__webpack_require__(/*! elementor-app/molecules/collapse */ "../core/app/assets/js/molecules/collapse.js"));

function PanelBody(props) {
  return /*#__PURE__*/_react.default.createElement(_collapse.default.Content, null, /*#__PURE__*/_react.default.createElement(_card.default.Body, {
    padding: props.padding,
    className: (0, _utils.arrayToClassName)(['e-app-import-export-panel__body', props.className])
  }, props.children));
}

PanelBody.propTypes = {
  className: PropTypes.string,
  padding: PropTypes.string,
  children: PropTypes.any.isRequired
};
PanelBody.defaultProps = {
  className: '',
  padding: '0'
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/ui/panel/panel-header.js":
/*!****************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/ui/panel/panel-header.js ***!
  \****************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = PanelHeader;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

var _card = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/card/card */ "../core/app/assets/js/ui/card/card.js"));

var _collapse = _interopRequireDefault(__webpack_require__(/*! elementor-app/molecules/collapse */ "../core/app/assets/js/molecules/collapse.js"));

function PanelHeader(props) {
  return /*#__PURE__*/_react.default.createElement(_collapse.default.Toggle, {
    active: props.toggle,
    showIcon: props.showIcon
  }, /*#__PURE__*/_react.default.createElement(_card.default.Header, {
    padding: "20",
    className: (0, _utils.arrayToClassName)(['e-app-import-export-panel__header', props.className])
  }, props.children));
}

PanelHeader.propTypes = {
  className: PropTypes.string,
  padding: PropTypes.string,
  toggle: PropTypes.bool,
  showIcon: PropTypes.bool,
  children: PropTypes.any.isRequired
};
PanelHeader.defaultProps = {
  className: '',
  padding: '20',
  toggle: true,
  showIcon: true
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/ui/panel/panel-headline.js":
/*!******************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/ui/panel/panel-headline.js ***!
  \******************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = PanelHeadline;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

var _card = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/card/card */ "../core/app/assets/js/ui/card/card.js"));

function PanelHeadline(props) {
  return /*#__PURE__*/_react.default.createElement(_card.default.Headline, {
    className: (0, _utils.arrayToClassName)(['e-app-import-export-panel__headline', props.className])
  }, props.children);
}

PanelHeadline.propTypes = {
  className: PropTypes.string,
  children: PropTypes.any.isRequired
};
PanelHeadline.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/ui/panel/panel.js":
/*!*********************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/ui/panel/panel.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Panel;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

var _card = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/card/card */ "../core/app/assets/js/ui/card/card.js"));

var _collapse = _interopRequireDefault(__webpack_require__(/*! elementor-app/molecules/collapse */ "../core/app/assets/js/molecules/collapse.js"));

var _panelHeader = _interopRequireDefault(__webpack_require__(/*! ./panel-header */ "../core/app/modules/import-export/assets/js/ui/panel/panel-header.js"));

var _panelHeadline = _interopRequireDefault(__webpack_require__(/*! ./panel-headline */ "../core/app/modules/import-export/assets/js/ui/panel/panel-headline.js"));

var _panelBody = _interopRequireDefault(__webpack_require__(/*! ./panel-body */ "../core/app/modules/import-export/assets/js/ui/panel/panel-body.js"));

__webpack_require__(/*! ./panel.scss */ "../core/app/modules/import-export/assets/js/ui/panel/panel.scss");

function Panel(props) {
  return /*#__PURE__*/_react.default.createElement(_collapse.default, {
    isOpened: props.isOpened
  }, /*#__PURE__*/_react.default.createElement(_card.default, {
    className: (0, _utils.arrayToClassName)(['e-app-import-export-panel', props.className])
  }, props.children));
}

Panel.propTypes = {
  className: PropTypes.string,
  isOpened: PropTypes.bool,
  children: PropTypes.any.isRequired
};
Panel.defaultProps = {
  className: '',
  isOpened: false
};
Panel.Header = _panelHeader.default;
Panel.Headline = _panelHeadline.default;
Panel.Body = _panelBody.default;

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/ui/wizard-step/wizard-step.js":
/*!*********************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/ui/wizard-step/wizard-step.js ***!
  \*********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = WizardStep;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

var _grid = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/grid/grid */ "../core/app/assets/js/ui/grid/grid.js"));

var _icon = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/icon */ "../core/app/assets/js/ui/atoms/icon.js"));

var _heading = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/heading */ "../core/app/assets/js/ui/atoms/heading.js"));

var _text = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/text */ "../core/app/assets/js/ui/atoms/text.js"));

__webpack_require__(/*! ./wizard-step.scss */ "../core/app/modules/import-export/assets/js/ui/wizard-step/wizard-step.scss");

function WizardStep(props) {
  var baseClassName = 'e-app-import-export-wizard-step',
      classes = [baseClassName, props.className];
  return /*#__PURE__*/_react.default.createElement(_grid.default, {
    className: (0, _utils.arrayToClassName)(classes),
    justify: "center",
    container: true
  }, /*#__PURE__*/_react.default.createElement(_grid.default, {
    item: true
  }, (props.image || props.icon) && /*#__PURE__*/_react.default.createElement(_grid.default, {
    className: "e-app-import-export-wizard-step__media-container",
    justify: "center",
    alignItems: "end",
    container: true
  }, props.image && /*#__PURE__*/_react.default.createElement("img", {
    className: "e-app-import-export-wizard-step__image",
    src: props.image
  }), props.icon && /*#__PURE__*/_react.default.createElement(_icon.default, {
    className: "e-app-import-export-wizard-step__icon ".concat(props.icon)
  })), props.heading && /*#__PURE__*/_react.default.createElement(_heading.default, {
    variant: "display-3",
    className: "e-app-import-export-wizard-step__heading"
  }, props.heading), props.description && /*#__PURE__*/_react.default.createElement(_text.default, {
    variant: "xl",
    className: "e-app-import-export-wizard-step__description"
  }, props.description), props.children && /*#__PURE__*/_react.default.createElement(_grid.default, {
    item: true,
    className: "e-app-import-export-wizard-step__content"
  }, props.children), props.notice && /*#__PURE__*/_react.default.createElement(_text.default, {
    variant: "xs",
    className: "e-app-import-export-wizard-step__notice"
  }, props.notice)));
}

WizardStep.propTypes = {
  className: PropTypes.string,
  image: PropTypes.string,
  icon: PropTypes.string,
  heading: PropTypes.string,
  description: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),
  notice: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),
  children: PropTypes.any
};
WizardStep.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/modules/site-editor/assets/js/context/template-types.js":
/*!***************************************************************************!*\
  !*** ../core/app/modules/site-editor/assets/js/context/template-types.js ***!
  \***************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.TemplateTypesConsumer = exports.Context = void 0;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

__webpack_require__(/*! ../../scss/loading.scss */ "../core/app/modules/site-editor/assets/scss/loading.scss");

var Context = _react.default.createContext();

exports.Context = Context;

var TemplateTypesContext = /*#__PURE__*/function (_React$Component) {
  (0, _inherits2.default)(TemplateTypesContext, _React$Component);

  var _super = (0, _createSuper2.default)(TemplateTypesContext);

  function TemplateTypesContext(props) {
    var _this;

    (0, _classCallCheck2.default)(this, TemplateTypesContext);
    _this = _super.call(this, props);
    _this.state = {
      templateTypes: [],
      loading: true,
      error: false
    };
    return _this;
  }

  (0, _createClass2.default)(TemplateTypesContext, [{
    key: "componentDidMount",
    value: function componentDidMount() {
      var _this2 = this;

      this.getTemplateTypes().then(function (response) {
        _this2.setState({
          templateTypes: response,
          loading: false
        });
      }).fail(function (error) {
        _this2.setState({
          error: error.statusText ? error.statusText : error,
          loading: false
        });
      });
    }
  }, {
    key: "getTemplateTypes",
    value: function getTemplateTypes() {
      return elementorCommon.ajax.load({
        action: 'app_site_editor_template_types'
      });
    }
  }, {
    key: "render",
    value: function render() {
      if (this.state.error) {
        return /*#__PURE__*/_react.default.createElement("div", {
          className: "e-loading-wrapper"
        }, /*#__PURE__*/_react.default.createElement("h3", null, __('Error:', 'elementor'), " ", this.state.error));
      }

      if (this.state.loading) {
        return /*#__PURE__*/_react.default.createElement("div", {
          className: "elementor-loading"
        }, /*#__PURE__*/_react.default.createElement("div", {
          className: "elementor-loader-wrapper"
        }, /*#__PURE__*/_react.default.createElement("div", {
          className: "elementor-loader"
        }, /*#__PURE__*/_react.default.createElement("div", {
          className: "elementor-loader-boxes"
        }, /*#__PURE__*/_react.default.createElement("div", {
          className: "elementor-loader-box"
        }), /*#__PURE__*/_react.default.createElement("div", {
          className: "elementor-loader-box"
        }), /*#__PURE__*/_react.default.createElement("div", {
          className: "elementor-loader-box"
        }), /*#__PURE__*/_react.default.createElement("div", {
          className: "elementor-loader-box"
        }))), /*#__PURE__*/_react.default.createElement("div", {
          className: "elementor-loading-title"
        }, __('Loading', 'elementor')))); // <div className="e-loading-wrapper"><h3>{ __( 'Loading', 'elementor' ) }...</h3></div>;
      }

      return /*#__PURE__*/_react.default.createElement(Context.Provider, {
        value: this.state
      }, this.props.children);
    }
  }]);
  return TemplateTypesContext;
}(_react.default.Component);

(0, _defineProperty2.default)(TemplateTypesContext, "propTypes", {
  children: PropTypes.object.isRequired
});
var TemplateTypesConsumer = Context.Consumer;
exports.TemplateTypesConsumer = TemplateTypesConsumer;
var _default = TemplateTypesContext;
exports.default = _default;

/***/ }),

/***/ "../core/app/modules/site-editor/assets/js/module.js":
/*!***********************************************************!*\
  !*** ../core/app/modules/site-editor/assets/js/module.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _router = _interopRequireDefault(__webpack_require__(/*! @elementor/router */ "@elementor/router"));

var _promotion = _interopRequireDefault(__webpack_require__(/*! ./pages/promotion */ "../core/app/modules/site-editor/assets/js/pages/promotion.js"));

var _notFound = _interopRequireDefault(__webpack_require__(/*! ./pages/not-found */ "../core/app/modules/site-editor/assets/js/pages/not-found.js"));

var SiteEditor = /*#__PURE__*/function () {
  function SiteEditor() {
    (0, _classCallCheck2.default)(this, SiteEditor);
    this.saveTemplateTypesToCache();

    _router.default.addRoute({
      path: '/site-editor/promotion',
      component: _promotion.default
    });

    _router.default.addRoute({
      path: '/site-editor/*',
      component: _notFound.default
    });
  }

  (0, _createClass2.default)(SiteEditor, [{
    key: "saveTemplateTypesToCache",
    value: function saveTemplateTypesToCache() {
      var types = this.getTypes();
      elementorCommon.ajax.addRequestCache({
        unique_id: 'app_site_editor_template_types'
      }, types);
    }
  }, {
    key: "getTypes",
    value: function getTypes() {
      return [{
        type: 'header',
        icon: 'eicon-header',
        title: __('Header', 'elementor'),
        urls: {
          thumbnail: elementorAppConfig.assets_url + '/images/app/site-editor/header.svg'
        },
        tooltip_data: {
          title: __('What is a Header Template?', 'elementor'),
          content: __('The header template allows you to easily design and edit custom WordPress headers so you are no longer constrained by your theme’s header design limitations.', 'elementor'),
          tip: __('You can create multiple headers, and assign each to different areas of your site.', 'elementor'),
          docs: 'https://go.elementor.com/app-theme-builder-header',
          video_url: 'https://www.youtube.com/embed/HHy5RK6W-6I'
        }
      }, {
        type: 'footer',
        icon: 'eicon-footer',
        title: __('Footer', 'elementor'),
        urls: {
          thumbnail: elementorAppConfig.assets_url + '/images/app/site-editor/footer.svg'
        },
        tooltip_data: {
          title: __('What is a Footer Template?', 'elementor'),
          content: __('The footer template allows you to easily design and edit custom WordPress footers without the limits of your theme’s footer design constraints', 'elementor'),
          tip: __('You can create multiple footers, and assign each to different areas of your site.', 'elementor'),
          docs: 'https://go.elementor.com/app-theme-builder-footer',
          video_url: 'https://www.youtube.com/embed/xa8DoR4tQrY'
        }
      }, {
        type: 'single-page',
        icon: 'eicon-single-page',
        title: __('Single Page', 'elementor'),
        urls: {
          thumbnail: elementorAppConfig.assets_url + '/images/app/site-editor/single-page.svg'
        },
        tooltip_data: {
          title: __('What is a Single Page Template?', 'elementor'),
          content: __('A single page template allows you to easily create the layout and style of pages, ensuring design consistency across all the pages of your site.', 'elementor'),
          tip: __('You can create multiple single page templates, and assign each to different areas of your site.', 'elementor'),
          docs: 'https://go.elementor.com/app-theme-builder-page',
          video_url: 'https://www.youtube.com/embed/_y5eZ60lVoY'
        }
      }, {
        type: 'single-post',
        icon: 'eicon-single-post',
        title: __('Single Post', 'elementor'),
        urls: {
          thumbnail: elementorAppConfig.assets_url + '/images/app/site-editor/single-post.svg'
        },
        tooltip_data: {
          title: __('What is a Single Post Template?', 'elementor'),
          content: __('A single post template allows you to easily design the layout and style of posts, ensuring a design consistency throughout all your blog posts, for example.', 'elementor'),
          tip: __('You can create multiple single post templates, and assign each to a different category.', 'elementor'),
          docs: 'https://go.elementor.com/app-theme-builder-post',
          video_url: 'https://www.youtube.com/embed/8Fk-Edu7DL0'
        }
      }, {
        type: 'archive',
        icon: 'eicon-archive',
        title: __('Archive', 'elementor'),
        urls: {
          thumbnail: elementorAppConfig.assets_url + '/images/app/site-editor/archive.svg'
        },
        tooltip_data: {
          title: __('What is an Archive Template?', 'elementor'),
          content: __('An archive template allows you to easily design the layout and style of archive pages - those pages that show a list of posts (e.g. a blog’s list of recent posts), which may be filtered by terms such as authors, categories, tags, search results, etc.', 'elementor'),
          tip: __('If you’d like a different style for a specific category, it’s easy to create a separate archive template whose condition is to only display when users are viewing that category’s list of posts.', 'elementor'),
          docs: 'https://go.elementor.com/app-theme-builder-archive',
          video_url: 'https://www.youtube.com/embed/wxElpEh9bfA'
        }
      }, {
        type: 'search-results',
        icon: 'eicon-search-results',
        title: __('Search Results', 'elementor'),
        urls: {
          thumbnail: elementorAppConfig.assets_url + '/images/app/site-editor/search-results.svg'
        },
        tooltip_data: {
          title: __('What is a Search Results Template?', 'elementor'),
          content: __('You can easily control the layout and design of the Search Results page with the Search Results template, which is simply a special archive template just for displaying search results.', 'elementor'),
          tip: __('You can customize the message if there are no results for the search term.', 'elementor'),
          docs: 'https://go.elementor.com/app-theme-builder-search-results',
          video_url: 'https://www.youtube.com/embed/KKkIU_L5sDo'
        }
      }, {
        type: 'product',
        icon: 'eicon-single-product',
        title: __('Product', 'elementor'),
        urls: {
          thumbnail: elementorAppConfig.assets_url + '/images/app/site-editor/product.svg'
        },
        tooltip_data: {
          title: __('What is a Single Product Template?', 'elementor'),
          content: __('A single product template allows you to easily design the layout and style of WooCommerce single product pages, and apply that template to various conditions that you assign.', 'elementor'),
          tip: __('You can create multiple single product templates, and assign each to different types of products, enabling a custom design for each group of similar products.', 'elementor'),
          docs: 'https://go.elementor.com/app-theme-builder-product',
          video_url: 'https://www.youtube.com/embed/PjhoB1RWkBM'
        }
      }, {
        type: 'products',
        icon: 'eicon-products',
        title: __('Products Archive', 'elementor'),
        urls: {
          thumbnail: elementorAppConfig.assets_url + '/images/app/site-editor/products.svg'
        },
        tooltip_data: {
          title: __('What is a Products Archive Template?', 'elementor'),
          content: __('A products archive template allows you to easily design the layout and style of your WooCommerce shop page or other product archive pages - those pages that show a list of products, which may be filtered by terms such as categories, tags, etc.', 'elementor'),
          tip: __('You can create multiple archive product templates, and assign each to different categories of products. This gives you the freedom to customize the appearance for each type of product being shown.', 'elementor'),
          docs: 'https://go.elementor.com/app-theme-builder-products-archive',
          video_url: 'https://www.youtube.com/embed/cQLeirgkguA'
        }
      }, {
        type: 'error-404',
        icon: 'eicon-error-404',
        title: __('Error 404', 'elementor'),
        urls: {
          thumbnail: elementorAppConfig.assets_url + '/images/app/site-editor/error-404.svg'
        },
        tooltip_data: {
          title: __('What is a 404 Page Template?', 'elementor'),
          content: __('A 404 page template allows you to easily design the layout and style of the page that is displayed when a visitor arrives at a page that does not exist.', 'elementor'),
          tip: __('Keep your site\'s visitors happy when they get lost by displaying your recent posts, a search bar, or any information that might help the user find what they were looking for.', 'elementor'),
          docs: 'https://go.elementor.com/app-theme-builder-404',
          video_url: 'https://www.youtube.com/embed/ACCNp9tBMQg'
        }
      }];
    }
  }]);
  return SiteEditor;
}();

exports.default = SiteEditor;

/***/ }),

/***/ "../core/app/modules/site-editor/assets/js/molecules/site-part.js":
/*!************************************************************************!*\
  !*** ../core/app/modules/site-editor/assets/js/molecules/site-part.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = SitePart;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _card = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/card/card */ "../core/app/assets/js/ui/card/card.js"));

var _cardHeader = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/card/card-header */ "../core/app/assets/js/ui/card/card-header.js"));

var _cardBody = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/card/card-body */ "../core/app/assets/js/ui/card/card-body.js"));

var _cardImage = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/card/card-image */ "../core/app/assets/js/ui/card/card-image.js"));

var _heading = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/heading */ "../core/app/assets/js/ui/atoms/heading.js"));

__webpack_require__(/*! ./site-part.scss */ "../core/app/modules/site-editor/assets/js/molecules/site-part.scss");

function SitePart(props) {
  return /*#__PURE__*/_react.default.createElement(_card.default, {
    className: "e-site-part"
  }, /*#__PURE__*/_react.default.createElement(_cardHeader.default, null, /*#__PURE__*/_react.default.createElement(_heading.default, {
    tag: "h1",
    variant: "text-sm",
    className: "eps-card__headline"
  }, props.title), props.actionButton), /*#__PURE__*/_react.default.createElement(_cardBody.default, null, /*#__PURE__*/_react.default.createElement(_cardImage.default, {
    alt: props.title,
    src: props.thumbnail
  }, props.children)));
}

SitePart.propTypes = {
  thumbnail: PropTypes.string.isRequired,
  title: PropTypes.string.isRequired,
  children: PropTypes.object,
  showIndicator: PropTypes.bool,
  actionButton: PropTypes.object
};

/***/ }),

/***/ "../core/app/modules/site-editor/assets/js/organisms/all-parts-button.js":
/*!*******************************************************************************!*\
  !*** ../core/app/modules/site-editor/assets/js/organisms/all-parts-button.js ***!
  \*******************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = AllPartsButton;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.regexp.match.js */ "../node_modules/core-js/modules/es6.regexp.match.js");

var _menuItem = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/menu/menu-item */ "../core/app/assets/js/ui/menu/menu-item.js"));

var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js");

function AllPartsButton(props) {
  var activePathname = '/site-editor/templates';
  return /*#__PURE__*/_react.default.createElement(_router.Match, {
    path: activePathname
  }, function (_ref) {
    var match = _ref.match;
    var className = "eps-menu-item__link".concat(match || props.promotion ? ' eps-menu-item--active' : '');
    return /*#__PURE__*/_react.default.createElement(_menuItem.default, {
      text: __('All Parts', 'elementor'),
      className: className,
      icon: "eicon-filter",
      url: props.url
    });
  });
}

AllPartsButton.propTypes = {
  url: PropTypes.string,
  promotion: PropTypes.bool
};

/***/ }),

/***/ "../core/app/modules/site-editor/assets/js/organisms/menu.js":
/*!*******************************************************************!*\
  !*** ../core/app/modules/site-editor/assets/js/organisms/menu.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Menu;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _menu = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/menu/menu */ "../core/app/assets/js/ui/menu/menu.js"));

var _templateTypes = __webpack_require__(/*! ../context/template-types */ "../core/app/modules/site-editor/assets/js/context/template-types.js");

var _button = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/button */ "../core/app/assets/js/ui/molecules/button.js"));

var _addNewButton = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/add-new-button */ "../core/app/assets/js/ui/molecules/add-new-button.js"));

__webpack_require__(/*! ./menu.scss */ "../core/app/modules/site-editor/assets/js/organisms/menu.scss");

function Menu(props) {
  var _React$useContext = _react.default.useContext(_templateTypes.Context),
      templateTypes = _React$useContext.templateTypes,
      actionButton = function actionButton(itemProps) {
    var className = 'eps-menu-item__action-button';

    if (props.promotion) {
      return /*#__PURE__*/_react.default.createElement(_button.default, {
        text: __('Go Pro', 'elementor'),
        hideText: true,
        icon: "eicon-lock",
        className: className
      });
    }

    var goToCreate = function goToCreate() {
      location.href = itemProps.urls.create;
    };

    return /*#__PURE__*/_react.default.createElement("span", {
      className: className
    }, /*#__PURE__*/_react.default.createElement(_addNewButton.default, {
      hideText: true,
      size: "sm",
      onClick: function onClick() {
        return goToCreate();
      }
    }));
  };

  return /*#__PURE__*/_react.default.createElement(_menu.default, {
    menuItems: templateTypes,
    actionButton: actionButton,
    promotion: props.promotion
  }, props.allPartsButton, /*#__PURE__*/_react.default.createElement("div", {
    className: "eps-menu__title"
  }, __('Site Parts', 'elementor')));
}

Menu.propTypes = {
  allPartsButton: PropTypes.element.isRequired,
  promotion: PropTypes.bool
};

/***/ }),

/***/ "../core/app/modules/site-editor/assets/js/organisms/site-parts.js":
/*!*************************************************************************!*\
  !*** ../core/app/modules/site-editor/assets/js/organisms/site-parts.js ***!
  \*************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = SiteParts;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

var _button = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/button */ "../core/app/assets/js/ui/molecules/button.js"));

var _cssGrid = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/css-grid */ "../core/app/assets/js/ui/atoms/css-grid.js"));

var _modal = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/modal/modal */ "../core/app/assets/js/ui/modal/modal.js"));

var _sitePart = _interopRequireDefault(__webpack_require__(/*! ../molecules/site-part */ "../core/app/modules/site-editor/assets/js/molecules/site-part.js"));

var _templateTypes = __webpack_require__(/*! ../context/template-types */ "../core/app/modules/site-editor/assets/js/context/template-types.js");

var InfoButton = function InfoButton(props) {
  var toggleButtonProps = {
    text: __('Info', 'elementor'),
    hideText: true,
    icon: 'eicon-info-circle e-site-part__info-toggle'
  };
  return /*#__PURE__*/_react.default.createElement(_modal.default, {
    toggleButtonProps: toggleButtonProps,
    title: props.title
  }, /*#__PURE__*/_react.default.createElement(_cssGrid.default, {
    columns: 2,
    spacing: 60
  }, /*#__PURE__*/_react.default.createElement("section", null, /*#__PURE__*/_react.default.createElement("h3", null, props.type), /*#__PURE__*/_react.default.createElement("p", null, props.content, /*#__PURE__*/_react.default.createElement("br", null), /*#__PURE__*/_react.default.createElement(_button.default, {
    text: __('Learn More', 'elementor'),
    color: "link",
    target: "_blank",
    url: props.docs
  })), /*#__PURE__*/_react.default.createElement("div", {
    className: "eps-modal__tip"
  }, /*#__PURE__*/_react.default.createElement("h3", null, __('Tip', 'elementor')), /*#__PURE__*/_react.default.createElement("p", null, props.tip))), /*#__PURE__*/_react.default.createElement("section", null, /*#__PURE__*/_react.default.createElement("h3", null, __('Watch Video', 'elementor')), /*#__PURE__*/_react.default.createElement("div", {
    className: "video-wrapper"
  }, /*#__PURE__*/_react.default.createElement("iframe", {
    id: "ytplayer",
    src: props.video_url,
    frameBorder: "0"
  })))));
};

InfoButton.propTypes = {
  content: PropTypes.string.isRequired,
  docs: PropTypes.string.isRequired,
  tip: PropTypes.string.isRequired,
  title: PropTypes.string.isRequired,
  type: PropTypes.string.isRequired,
  video_url: PropTypes.string.isRequired
};

function SiteParts(props) {
  var _React$useContext = _react.default.useContext(_templateTypes.Context),
      templateTypes = _React$useContext.templateTypes;

  return /*#__PURE__*/_react.default.createElement(_cssGrid.default, {
    className: "e-site-editor__site-parts",
    colMinWidth: 200,
    spacing: 25
  }, templateTypes.map(function (item) {
    return /*#__PURE__*/_react.default.createElement(_sitePart.default, (0, _extends2.default)({
      className: "e-site-editor__site-part",
      actionButton: /*#__PURE__*/_react.default.createElement(InfoButton, (0, _extends2.default)({
        type: item.title
      }, item.tooltip_data)),
      thumbnail: item.urls.thumbnail,
      key: item.type
    }, item), _react.default.createElement(props.hoverElement, item));
  }));
}

SiteParts.propTypes = {
  hoverElement: PropTypes.func.isRequired
};

/***/ }),

/***/ "../core/app/modules/site-editor/assets/js/package.js":
/*!************************************************************!*\
  !*** ../core/app/modules/site-editor/assets/js/package.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _allPartsButton = _interopRequireDefault(__webpack_require__(/*! ./organisms/all-parts-button */ "../core/app/modules/site-editor/assets/js/organisms/all-parts-button.js"));

var _layout = _interopRequireDefault(__webpack_require__(/*! ./templates/layout */ "../core/app/modules/site-editor/assets/js/templates/layout.js"));

var _module = _interopRequireDefault(__webpack_require__(/*! ./module */ "../core/app/modules/site-editor/assets/js/module.js"));

var _notFound = _interopRequireDefault(__webpack_require__(/*! ./pages/not-found */ "../core/app/modules/site-editor/assets/js/pages/not-found.js"));

var _siteParts = _interopRequireDefault(__webpack_require__(/*! ./organisms/site-parts */ "../core/app/modules/site-editor/assets/js/organisms/site-parts.js"));

var _sitePart = _interopRequireDefault(__webpack_require__(/*! ./molecules/site-part */ "../core/app/modules/site-editor/assets/js/molecules/site-part.js"));

var _templateTypes = __webpack_require__(/*! ./context/template-types */ "../core/app/modules/site-editor/assets/js/context/template-types.js");

// Alphabetical order.
var _default = {
  AllPartsButton: _allPartsButton.default,
  Layout: _layout.default,
  Module: _module.default,
  NotFound: _notFound.default,
  SitePart: _sitePart.default,
  SiteParts: _siteParts.default,
  TemplateTypesContext: _templateTypes.Context
};
exports.default = _default;

/***/ }),

/***/ "../core/app/modules/site-editor/assets/js/pages/not-found.js":
/*!********************************************************************!*\
  !*** ../core/app/modules/site-editor/assets/js/pages/not-found.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = NotFound;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");

var _dialog = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/dialog/dialog */ "../core/app/assets/js/ui/dialog/dialog.js"));

function NotFound() {
  var url = _react.default.useMemo(function () {
    var _elementorAppConfig$m;

    return ((_elementorAppConfig$m = elementorAppConfig.menu_url.split('#')) === null || _elementorAppConfig$m === void 0 ? void 0 : _elementorAppConfig$m[1]) || '/site-editor';
  }, []);

  return /*#__PURE__*/_react.default.createElement(_dialog.default, {
    title: __('Theme Builder could not be loaded', 'elementor'),
    text: __('We’re sorry, but something went wrong. Click on ‘Learn more’ and follow each of the steps to quickly solve it.', 'elementor'),
    approveButtonUrl: "https://go.elementor.com/app-theme-builder-load-issue",
    approveButtonColor: "link",
    approveButtonTarget: "_blank",
    approveButtonText: __('Learn More', 'elementor'),
    dismissButtonText: __('Go Back', 'elementor'),
    dismissButtonUrl: url
  });
}

/***/ }),

/***/ "../core/app/modules/site-editor/assets/js/pages/promotion.js":
/*!********************************************************************!*\
  !*** ../core/app/modules/site-editor/assets/js/pages/promotion.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Promotion;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _allPartsButton = _interopRequireDefault(__webpack_require__(/*! ../organisms/all-parts-button */ "../core/app/modules/site-editor/assets/js/organisms/all-parts-button.js"));

var _button = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/button */ "../core/app/assets/js/ui/molecules/button.js"));

var _cardOverlay = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/card/card-overlay */ "../core/app/assets/js/ui/card/card-overlay.js"));

var _grid = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/grid/grid */ "../core/app/assets/js/ui/grid/grid.js"));

var _heading = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/heading */ "../core/app/assets/js/ui/atoms/heading.js"));

var _layout = _interopRequireDefault(__webpack_require__(/*! ../templates/layout */ "../core/app/modules/site-editor/assets/js/templates/layout.js"));

var _siteParts = _interopRequireDefault(__webpack_require__(/*! ../organisms/site-parts */ "../core/app/modules/site-editor/assets/js/organisms/site-parts.js"));

var _text = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/text */ "../core/app/assets/js/ui/atoms/text.js"));

__webpack_require__(/*! ./promotion.scss */ "../core/app/modules/site-editor/assets/js/pages/promotion.scss");

function Promotion() {
  var promotionUrl = 'https://go.elementor.com/go-pro-theme-builder',
      PromotionHoverElement = function PromotionHoverElement(props) {
    var promotionUrlWithType = "".concat(promotionUrl, "?type=").concat(props.type);
    return /*#__PURE__*/_react.default.createElement(_cardOverlay.default, {
      className: "e-site-editor__promotion-overlay"
    }, /*#__PURE__*/_react.default.createElement("a", {
      className: "e-site-editor__promotion-overlay__link",
      target: "_blank",
      rel: "noopener noreferrer",
      href: promotionUrlWithType
    }, /*#__PURE__*/_react.default.createElement("i", {
      className: "e-site-editor__promotion-overlay__icon eicon-lock"
    }), /*#__PURE__*/_react.default.createElement(_button.default, {
      size: "sm",
      color: "cta",
      variant: "contained",
      text: __('Go Pro', 'elementor')
    })));
  };

  PromotionHoverElement.propTypes = {
    className: PropTypes.string,
    type: PropTypes.string.isRequired
  };
  return /*#__PURE__*/_react.default.createElement(_layout.default, {
    allPartsButton: /*#__PURE__*/_react.default.createElement(_allPartsButton.default, {
      promotion: true
    }),
    promotion: true
  }, /*#__PURE__*/_react.default.createElement("section", {
    className: "e-site-editor__promotion"
  }, /*#__PURE__*/_react.default.createElement(_grid.default, {
    container: true,
    className: "page-header"
  }, /*#__PURE__*/_react.default.createElement(_grid.default, {
    item: true,
    sm: 7,
    justify: "end"
  }, /*#__PURE__*/_react.default.createElement(_heading.default, {
    variant: "h1"
  }, __('Create Full Site', 'elementor')), /*#__PURE__*/_react.default.createElement(_text.default, null, __('Theme Builder is the industry leading all-in-one solution that lets you customize every part of your WordPress theme visually: Header, Footer, Single, Archive & WooCommerce', 'elementor'))), /*#__PURE__*/_react.default.createElement(_grid.default, {
    item: true,
    container: true,
    justify: "end",
    alignItems: "start",
    sm: 5
  }, /*#__PURE__*/_react.default.createElement(_button.default, {
    size: "sm",
    color: "cta",
    variant: "contained",
    url: promotionUrl,
    text: __('Go Pro', 'elementor')
  }))), /*#__PURE__*/_react.default.createElement("hr", {
    className: "eps-separator"
  }), /*#__PURE__*/_react.default.createElement(_siteParts.default, {
    hoverElement: PromotionHoverElement
  })));
}

/***/ }),

/***/ "../core/app/modules/site-editor/assets/js/templates/layout.js":
/*!*********************************************************************!*\
  !*** ../core/app/modules/site-editor/assets/js/templates/layout.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Layout;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _page = _interopRequireDefault(__webpack_require__(/*! elementor-app/layout/page */ "../core/app/assets/js/layout/page.js"));

var _menu = _interopRequireDefault(__webpack_require__(/*! ../organisms/menu */ "../core/app/modules/site-editor/assets/js/organisms/menu.js"));

var _templateTypes = _interopRequireDefault(__webpack_require__(/*! ../context/template-types */ "../core/app/modules/site-editor/assets/js/context/template-types.js"));

__webpack_require__(/*! ./site-editor.scss */ "../core/app/modules/site-editor/assets/js/templates/site-editor.scss");

function Layout(props) {
  var config = {
    title: __('Theme Builder', 'elementor'),
    titleRedirectRoute: '/site-editor',
    headerButtons: props.headerButtons,
    sidebar: /*#__PURE__*/_react.default.createElement(_menu.default, {
      allPartsButton: props.allPartsButton,
      promotion: props.promotion
    }),
    content: props.children
  };
  return /*#__PURE__*/_react.default.createElement(_templateTypes.default, null, /*#__PURE__*/_react.default.createElement(_page.default, config));
}

Layout.propTypes = {
  headerButtons: PropTypes.arrayOf(PropTypes.object),
  allPartsButton: PropTypes.element.isRequired,
  children: PropTypes.object.isRequired,
  promotion: PropTypes.bool
};
Layout.defaultProps = {
  headerButtons: []
};

/***/ }),

/***/ "../node_modules/core-js/library/fn/array/from.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/fn/array/from.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.string.iterator */ "../node_modules/core-js/library/modules/es6.string.iterator.js");
__webpack_require__(/*! ../../modules/es6.array.from */ "../node_modules/core-js/library/modules/es6.array.from.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Array.from;


/***/ }),

/***/ "../node_modules/core-js/library/fn/array/is-array.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/fn/array/is-array.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.array.is-array */ "../node_modules/core-js/library/modules/es6.array.is-array.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Array.isArray;


/***/ }),

/***/ "../node_modules/core-js/library/fn/json/stringify.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/fn/json/stringify.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var core = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js");
var $JSON = core.JSON || (core.JSON = { stringify: JSON.stringify });
module.exports = function stringify(it) { // eslint-disable-line no-unused-vars
  return $JSON.stringify.apply($JSON, arguments);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/assign.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/assign.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.assign */ "../node_modules/core-js/library/modules/es6.object.assign.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.assign;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/create.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/create.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.create */ "../node_modules/core-js/library/modules/es6.object.create.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function create(P, D) {
  return $Object.create(P, D);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/define-properties.js":
/*!**********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/define-properties.js ***!
  \**********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.define-properties */ "../node_modules/core-js/library/modules/es6.object.define-properties.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function defineProperties(T, D) {
  return $Object.defineProperties(T, D);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/define-property.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/define-property.js ***!
  \********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.define-property */ "../node_modules/core-js/library/modules/es6.object.define-property.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function defineProperty(it, key, desc) {
  return $Object.defineProperty(it, key, desc);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/entries.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/entries.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es7.object.entries */ "../node_modules/core-js/library/modules/es7.object.entries.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.entries;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/get-own-property-descriptor.js":
/*!********************************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/get-own-property-descriptor.js ***!
  \********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.get-own-property-descriptor */ "../node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function getOwnPropertyDescriptor(it, key) {
  return $Object.getOwnPropertyDescriptor(it, key);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/get-own-property-descriptors.js":
/*!*********************************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/get-own-property-descriptors.js ***!
  \*********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es7.object.get-own-property-descriptors */ "../node_modules/core-js/library/modules/es7.object.get-own-property-descriptors.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.getOwnPropertyDescriptors;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/get-own-property-symbols.js":
/*!*****************************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/get-own-property-symbols.js ***!
  \*****************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.symbol */ "../node_modules/core-js/library/modules/es6.symbol.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.getOwnPropertySymbols;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/get-prototype-of.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/get-prototype-of.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.get-prototype-of */ "../node_modules/core-js/library/modules/es6.object.get-prototype-of.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.getPrototypeOf;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/keys.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/keys.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.keys */ "../node_modules/core-js/library/modules/es6.object.keys.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.keys;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/set-prototype-of.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/set-prototype-of.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.set-prototype-of */ "../node_modules/core-js/library/modules/es6.object.set-prototype-of.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.setPrototypeOf;


/***/ }),

/***/ "../node_modules/core-js/library/fn/parse-int.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/fn/parse-int.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../modules/es6.parse-int */ "../node_modules/core-js/library/modules/es6.parse-int.js");
module.exports = __webpack_require__(/*! ../modules/_core */ "../node_modules/core-js/library/modules/_core.js").parseInt;


/***/ }),

/***/ "../node_modules/core-js/library/fn/reflect/construct.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/fn/reflect/construct.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.reflect.construct */ "../node_modules/core-js/library/modules/es6.reflect.construct.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Reflect.construct;


/***/ }),

/***/ "../node_modules/core-js/library/fn/reflect/get.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/library/fn/reflect/get.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.reflect.get */ "../node_modules/core-js/library/modules/es6.reflect.get.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Reflect.get;


/***/ }),

/***/ "../node_modules/core-js/library/fn/symbol/index.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/fn/symbol/index.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.symbol */ "../node_modules/core-js/library/modules/es6.symbol.js");
__webpack_require__(/*! ../../modules/es6.object.to-string */ "../node_modules/core-js/library/modules/es6.object.to-string.js");
__webpack_require__(/*! ../../modules/es7.symbol.async-iterator */ "../node_modules/core-js/library/modules/es7.symbol.async-iterator.js");
__webpack_require__(/*! ../../modules/es7.symbol.observable */ "../node_modules/core-js/library/modules/es7.symbol.observable.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Symbol;


/***/ }),

/***/ "../node_modules/core-js/library/fn/symbol/iterator.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/fn/symbol/iterator.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.string.iterator */ "../node_modules/core-js/library/modules/es6.string.iterator.js");
__webpack_require__(/*! ../../modules/web.dom.iterable */ "../node_modules/core-js/library/modules/web.dom.iterable.js");
module.exports = __webpack_require__(/*! ../../modules/_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js").f('iterator');


/***/ }),

/***/ "../node_modules/core-js/library/fn/weak-map.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/library/fn/weak-map.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../modules/es6.object.to-string */ "../node_modules/core-js/library/modules/es6.object.to-string.js");
__webpack_require__(/*! ../modules/web.dom.iterable */ "../node_modules/core-js/library/modules/web.dom.iterable.js");
__webpack_require__(/*! ../modules/es6.weak-map */ "../node_modules/core-js/library/modules/es6.weak-map.js");
__webpack_require__(/*! ../modules/es7.weak-map.of */ "../node_modules/core-js/library/modules/es7.weak-map.of.js");
__webpack_require__(/*! ../modules/es7.weak-map.from */ "../node_modules/core-js/library/modules/es7.weak-map.from.js");
module.exports = __webpack_require__(/*! ../modules/_core */ "../node_modules/core-js/library/modules/_core.js").WeakMap;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_a-function.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_a-function.js ***!
  \**************************************************************/
/***/ ((module) => {

module.exports = function (it) {
  if (typeof it != 'function') throw TypeError(it + ' is not a function!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_add-to-unscopables.js":
/*!**********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_add-to-unscopables.js ***!
  \**********************************************************************/
/***/ ((module) => {

module.exports = function () { /* empty */ };


/***/ }),

/***/ "../node_modules/core-js/library/modules/_an-instance.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_an-instance.js ***!
  \***************************************************************/
/***/ ((module) => {

module.exports = function (it, Constructor, name, forbiddenField) {
  if (!(it instanceof Constructor) || (forbiddenField !== undefined && forbiddenField in it)) {
    throw TypeError(name + ': incorrect invocation!');
  } return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_an-object.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_an-object.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
module.exports = function (it) {
  if (!isObject(it)) throw TypeError(it + ' is not an object!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-includes.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-includes.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// false -> Array#indexOf
// true  -> Array#includes
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
var toAbsoluteIndex = __webpack_require__(/*! ./_to-absolute-index */ "../node_modules/core-js/library/modules/_to-absolute-index.js");
module.exports = function (IS_INCLUDES) {
  return function ($this, el, fromIndex) {
    var O = toIObject($this);
    var length = toLength(O.length);
    var index = toAbsoluteIndex(fromIndex, length);
    var value;
    // Array#includes uses SameValueZero equality algorithm
    // eslint-disable-next-line no-self-compare
    if (IS_INCLUDES && el != el) while (length > index) {
      value = O[index++];
      // eslint-disable-next-line no-self-compare
      if (value != value) return true;
    // Array#indexOf ignores holes, Array#includes - not
    } else for (;length > index; index++) if (IS_INCLUDES || index in O) {
      if (O[index] === el) return IS_INCLUDES || index || 0;
    } return !IS_INCLUDES && -1;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-methods.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-methods.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 0 -> Array#forEach
// 1 -> Array#map
// 2 -> Array#filter
// 3 -> Array#some
// 4 -> Array#every
// 5 -> Array#find
// 6 -> Array#findIndex
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/library/modules/_iobject.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
var asc = __webpack_require__(/*! ./_array-species-create */ "../node_modules/core-js/library/modules/_array-species-create.js");
module.exports = function (TYPE, $create) {
  var IS_MAP = TYPE == 1;
  var IS_FILTER = TYPE == 2;
  var IS_SOME = TYPE == 3;
  var IS_EVERY = TYPE == 4;
  var IS_FIND_INDEX = TYPE == 6;
  var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
  var create = $create || asc;
  return function ($this, callbackfn, that) {
    var O = toObject($this);
    var self = IObject(O);
    var f = ctx(callbackfn, that, 3);
    var length = toLength(self.length);
    var index = 0;
    var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;
    var val, res;
    for (;length > index; index++) if (NO_HOLES || index in self) {
      val = self[index];
      res = f(val, index, O);
      if (TYPE) {
        if (IS_MAP) result[index] = res;   // map
        else if (res) switch (TYPE) {
          case 3: return true;             // some
          case 5: return val;              // find
          case 6: return index;            // findIndex
          case 2: result.push(val);        // filter
        } else if (IS_EVERY) return false; // every
      }
    }
    return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-species-constructor.js":
/*!*****************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-species-constructor.js ***!
  \*****************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var isArray = __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/library/modules/_is-array.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('species');

module.exports = function (original) {
  var C;
  if (isArray(original)) {
    C = original.constructor;
    // cross-realm fallback
    if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
    if (isObject(C)) {
      C = C[SPECIES];
      if (C === null) C = undefined;
    }
  } return C === undefined ? Array : C;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-species-create.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-species-create.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 9.4.2.3 ArraySpeciesCreate(originalArray, length)
var speciesConstructor = __webpack_require__(/*! ./_array-species-constructor */ "../node_modules/core-js/library/modules/_array-species-constructor.js");

module.exports = function (original, length) {
  return new (speciesConstructor(original))(length);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_bind.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_bind.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var invoke = __webpack_require__(/*! ./_invoke */ "../node_modules/core-js/library/modules/_invoke.js");
var arraySlice = [].slice;
var factories = {};

var construct = function (F, len, args) {
  if (!(len in factories)) {
    for (var n = [], i = 0; i < len; i++) n[i] = 'a[' + i + ']';
    // eslint-disable-next-line no-new-func
    factories[len] = Function('F,a', 'return new F(' + n.join(',') + ')');
  } return factories[len](F, args);
};

module.exports = Function.bind || function bind(that /* , ...args */) {
  var fn = aFunction(this);
  var partArgs = arraySlice.call(arguments, 1);
  var bound = function (/* args... */) {
    var args = partArgs.concat(arraySlice.call(arguments));
    return this instanceof bound ? construct(fn, args.length, args) : invoke(fn, args, that);
  };
  if (isObject(fn.prototype)) bound.prototype = fn.prototype;
  return bound;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_classof.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_classof.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// getting tag from 19.1.3.6 Object.prototype.toString()
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('toStringTag');
// ES3 wrong here
var ARG = cof(function () { return arguments; }()) == 'Arguments';

// fallback for IE11 Script Access Denied error
var tryGet = function (it, key) {
  try {
    return it[key];
  } catch (e) { /* empty */ }
};

module.exports = function (it) {
  var O, T, B;
  return it === undefined ? 'Undefined' : it === null ? 'Null'
    // @@toStringTag case
    : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T
    // builtinTag case
    : ARG ? cof(O)
    // ES3 arguments fallback
    : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_cof.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_cof.js ***!
  \*******************************************************/
/***/ ((module) => {

var toString = {}.toString;

module.exports = function (it) {
  return toString.call(it).slice(8, -1);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_collection-weak.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_collection-weak.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var redefineAll = __webpack_require__(/*! ./_redefine-all */ "../node_modules/core-js/library/modules/_redefine-all.js");
var getWeak = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js").getWeak;
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var anInstance = __webpack_require__(/*! ./_an-instance */ "../node_modules/core-js/library/modules/_an-instance.js");
var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");
var createArrayMethod = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/library/modules/_array-methods.js");
var $has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var validate = __webpack_require__(/*! ./_validate-collection */ "../node_modules/core-js/library/modules/_validate-collection.js");
var arrayFind = createArrayMethod(5);
var arrayFindIndex = createArrayMethod(6);
var id = 0;

// fallback for uncaught frozen keys
var uncaughtFrozenStore = function (that) {
  return that._l || (that._l = new UncaughtFrozenStore());
};
var UncaughtFrozenStore = function () {
  this.a = [];
};
var findUncaughtFrozen = function (store, key) {
  return arrayFind(store.a, function (it) {
    return it[0] === key;
  });
};
UncaughtFrozenStore.prototype = {
  get: function (key) {
    var entry = findUncaughtFrozen(this, key);
    if (entry) return entry[1];
  },
  has: function (key) {
    return !!findUncaughtFrozen(this, key);
  },
  set: function (key, value) {
    var entry = findUncaughtFrozen(this, key);
    if (entry) entry[1] = value;
    else this.a.push([key, value]);
  },
  'delete': function (key) {
    var index = arrayFindIndex(this.a, function (it) {
      return it[0] === key;
    });
    if (~index) this.a.splice(index, 1);
    return !!~index;
  }
};

module.exports = {
  getConstructor: function (wrapper, NAME, IS_MAP, ADDER) {
    var C = wrapper(function (that, iterable) {
      anInstance(that, C, NAME, '_i');
      that._t = NAME;      // collection type
      that._i = id++;      // collection id
      that._l = undefined; // leak store for uncaught frozen objects
      if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);
    });
    redefineAll(C.prototype, {
      // 23.3.3.2 WeakMap.prototype.delete(key)
      // 23.4.3.3 WeakSet.prototype.delete(value)
      'delete': function (key) {
        if (!isObject(key)) return false;
        var data = getWeak(key);
        if (data === true) return uncaughtFrozenStore(validate(this, NAME))['delete'](key);
        return data && $has(data, this._i) && delete data[this._i];
      },
      // 23.3.3.4 WeakMap.prototype.has(key)
      // 23.4.3.4 WeakSet.prototype.has(value)
      has: function has(key) {
        if (!isObject(key)) return false;
        var data = getWeak(key);
        if (data === true) return uncaughtFrozenStore(validate(this, NAME)).has(key);
        return data && $has(data, this._i);
      }
    });
    return C;
  },
  def: function (that, key, value) {
    var data = getWeak(anObject(key), true);
    if (data === true) uncaughtFrozenStore(that).set(key, value);
    else data[that._i] = value;
    return that;
  },
  ufstore: uncaughtFrozenStore
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_collection.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_collection.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var meta = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var redefineAll = __webpack_require__(/*! ./_redefine-all */ "../node_modules/core-js/library/modules/_redefine-all.js");
var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");
var anInstance = __webpack_require__(/*! ./_an-instance */ "../node_modules/core-js/library/modules/_an-instance.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
var each = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/library/modules/_array-methods.js")(0);
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");

module.exports = function (NAME, wrapper, methods, common, IS_MAP, IS_WEAK) {
  var Base = global[NAME];
  var C = Base;
  var ADDER = IS_MAP ? 'set' : 'add';
  var proto = C && C.prototype;
  var O = {};
  if (!DESCRIPTORS || typeof C != 'function' || !(IS_WEAK || proto.forEach && !fails(function () {
    new C().entries().next();
  }))) {
    // create collection constructor
    C = common.getConstructor(wrapper, NAME, IS_MAP, ADDER);
    redefineAll(C.prototype, methods);
    meta.NEED = true;
  } else {
    C = wrapper(function (target, iterable) {
      anInstance(target, C, NAME, '_c');
      target._c = new Base();
      if (iterable != undefined) forOf(iterable, IS_MAP, target[ADDER], target);
    });
    each('add,clear,delete,forEach,get,has,set,keys,values,entries,toJSON'.split(','), function (KEY) {
      var IS_ADDER = KEY == 'add' || KEY == 'set';
      if (KEY in proto && !(IS_WEAK && KEY == 'clear')) hide(C.prototype, KEY, function (a, b) {
        anInstance(this, C, KEY);
        if (!IS_ADDER && IS_WEAK && !isObject(a)) return KEY == 'get' ? undefined : false;
        var result = this._c[KEY](a === 0 ? 0 : a, b);
        return IS_ADDER ? this : result;
      });
    });
    IS_WEAK || dP(C.prototype, 'size', {
      get: function () {
        return this._c.size;
      }
    });
  }

  setToStringTag(C, NAME);

  O[NAME] = C;
  $export($export.G + $export.W + $export.F, O);

  if (!IS_WEAK) common.setStrong(C, NAME, IS_MAP);

  return C;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_core.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_core.js ***!
  \********************************************************/
/***/ ((module) => {

var core = module.exports = { version: '2.6.12' };
if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/library/modules/_create-property.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_create-property.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $defineProperty = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");

module.exports = function (object, index, value) {
  if (index in object) $defineProperty.f(object, index, createDesc(0, value));
  else object[index] = value;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_ctx.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_ctx.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// optional / simple context binding
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
module.exports = function (fn, that, length) {
  aFunction(fn);
  if (that === undefined) return fn;
  switch (length) {
    case 1: return function (a) {
      return fn.call(that, a);
    };
    case 2: return function (a, b) {
      return fn.call(that, a, b);
    };
    case 3: return function (a, b, c) {
      return fn.call(that, a, b, c);
    };
  }
  return function (/* ...args */) {
    return fn.apply(that, arguments);
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_defined.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_defined.js ***!
  \***********************************************************/
/***/ ((module) => {

// 7.2.1 RequireObjectCoercible(argument)
module.exports = function (it) {
  if (it == undefined) throw TypeError("Can't call method on  " + it);
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_descriptors.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_descriptors.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Thank's IE8 for his funny defineProperty
module.exports = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/_dom-create.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_dom-create.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").document;
// typeof document.createElement is 'object' in old IE
var is = isObject(document) && isObject(document.createElement);
module.exports = function (it) {
  return is ? document.createElement(it) : {};
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_enum-bug-keys.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_enum-bug-keys.js ***!
  \*****************************************************************/
/***/ ((module) => {

// IE 8- don't enum bug keys
module.exports = (
  'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
).split(',');


/***/ }),

/***/ "../node_modules/core-js/library/modules/_enum-keys.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_enum-keys.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// all enumerable object keys, includes symbols
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var gOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js");
module.exports = function (it) {
  var result = getKeys(it);
  var getSymbols = gOPS.f;
  if (getSymbols) {
    var symbols = getSymbols(it);
    var isEnum = pIE.f;
    var i = 0;
    var key;
    while (symbols.length > i) if (isEnum.call(it, key = symbols[i++])) result.push(key);
  } return result;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_export.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_export.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var PROTOTYPE = 'prototype';

var $export = function (type, name, source) {
  var IS_FORCED = type & $export.F;
  var IS_GLOBAL = type & $export.G;
  var IS_STATIC = type & $export.S;
  var IS_PROTO = type & $export.P;
  var IS_BIND = type & $export.B;
  var IS_WRAP = type & $export.W;
  var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
  var expProto = exports[PROTOTYPE];
  var target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE];
  var key, own, out;
  if (IS_GLOBAL) source = name;
  for (key in source) {
    // contains in native
    own = !IS_FORCED && target && target[key] !== undefined;
    if (own && has(exports, key)) continue;
    // export native or passed
    out = own ? target[key] : source[key];
    // prevent global pollution for namespaces
    exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key]
    // bind timers to global for call from export context
    : IS_BIND && own ? ctx(out, global)
    // wrap global constructors for prevent change them in library
    : IS_WRAP && target[key] == out ? (function (C) {
      var F = function (a, b, c) {
        if (this instanceof C) {
          switch (arguments.length) {
            case 0: return new C();
            case 1: return new C(a);
            case 2: return new C(a, b);
          } return new C(a, b, c);
        } return C.apply(this, arguments);
      };
      F[PROTOTYPE] = C[PROTOTYPE];
      return F;
    // make static versions for prototype methods
    })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
    // export proto methods to core.%CONSTRUCTOR%.methods.%NAME%
    if (IS_PROTO) {
      (exports.virtual || (exports.virtual = {}))[key] = out;
      // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME%
      if (type & $export.R && expProto && !expProto[key]) hide(expProto, key, out);
    }
  }
};
// type bitmap
$export.F = 1;   // forced
$export.G = 2;   // global
$export.S = 4;   // static
$export.P = 8;   // proto
$export.B = 16;  // bind
$export.W = 32;  // wrap
$export.U = 64;  // safe
$export.R = 128; // real proto method for `library`
module.exports = $export;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_fails.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_fails.js ***!
  \*********************************************************/
/***/ ((module) => {

module.exports = function (exec) {
  try {
    return !!exec();
  } catch (e) {
    return true;
  }
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_for-of.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_for-of.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var call = __webpack_require__(/*! ./_iter-call */ "../node_modules/core-js/library/modules/_iter-call.js");
var isArrayIter = __webpack_require__(/*! ./_is-array-iter */ "../node_modules/core-js/library/modules/_is-array-iter.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
var getIterFn = __webpack_require__(/*! ./core.get-iterator-method */ "../node_modules/core-js/library/modules/core.get-iterator-method.js");
var BREAK = {};
var RETURN = {};
var exports = module.exports = function (iterable, entries, fn, that, ITERATOR) {
  var iterFn = ITERATOR ? function () { return iterable; } : getIterFn(iterable);
  var f = ctx(fn, that, entries ? 2 : 1);
  var index = 0;
  var length, step, iterator, result;
  if (typeof iterFn != 'function') throw TypeError(iterable + ' is not iterable!');
  // fast case for arrays with default iterator
  if (isArrayIter(iterFn)) for (length = toLength(iterable.length); length > index; index++) {
    result = entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]);
    if (result === BREAK || result === RETURN) return result;
  } else for (iterator = iterFn.call(iterable); !(step = iterator.next()).done;) {
    result = call(iterator, f, step.value, entries);
    if (result === BREAK || result === RETURN) return result;
  }
};
exports.BREAK = BREAK;
exports.RETURN = RETURN;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_global.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_global.js ***!
  \**********************************************************/
/***/ ((module) => {

// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
var global = module.exports = typeof window != 'undefined' && window.Math == Math
  ? window : typeof self != 'undefined' && self.Math == Math ? self
  // eslint-disable-next-line no-new-func
  : Function('return this')();
if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/library/modules/_has.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_has.js ***!
  \*******************************************************/
/***/ ((module) => {

var hasOwnProperty = {}.hasOwnProperty;
module.exports = function (it, key) {
  return hasOwnProperty.call(it, key);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_hide.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_hide.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? function (object, key, value) {
  return dP.f(object, key, createDesc(1, value));
} : function (object, key, value) {
  object[key] = value;
  return object;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_html.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_html.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").document;
module.exports = document && document.documentElement;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_ie8-dom-define.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_ie8-dom-define.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") && !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  return Object.defineProperty(__webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/library/modules/_dom-create.js")('div'), 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/_invoke.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_invoke.js ***!
  \**********************************************************/
/***/ ((module) => {

// fast apply, http://jsperf.lnkit.com/fast-apply/5
module.exports = function (fn, args, that) {
  var un = that === undefined;
  switch (args.length) {
    case 0: return un ? fn()
                      : fn.call(that);
    case 1: return un ? fn(args[0])
                      : fn.call(that, args[0]);
    case 2: return un ? fn(args[0], args[1])
                      : fn.call(that, args[0], args[1]);
    case 3: return un ? fn(args[0], args[1], args[2])
                      : fn.call(that, args[0], args[1], args[2]);
    case 4: return un ? fn(args[0], args[1], args[2], args[3])
                      : fn.call(that, args[0], args[1], args[2], args[3]);
  } return fn.apply(that, args);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iobject.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iobject.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// fallback for non-array-like ES3 and non-enumerable old V8 strings
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js");
// eslint-disable-next-line no-prototype-builtins
module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
  return cof(it) == 'String' ? it.split('') : Object(it);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_is-array-iter.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_is-array-iter.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// check on default Array iterator
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var ArrayProto = Array.prototype;

module.exports = function (it) {
  return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_is-array.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_is-array.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.2.2 IsArray(argument)
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js");
module.exports = Array.isArray || function isArray(arg) {
  return cof(arg) == 'Array';
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_is-object.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_is-object.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = function (it) {
  return typeof it === 'object' ? it !== null : typeof it === 'function';
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-call.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-call.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// call something on iterator step with safe closing on error
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
module.exports = function (iterator, fn, value, entries) {
  try {
    return entries ? fn(anObject(value)[0], value[1]) : fn(value);
  // 7.4.6 IteratorClose(iterator, completion)
  } catch (e) {
    var ret = iterator['return'];
    if (ret !== undefined) anObject(ret.call(iterator));
    throw e;
  }
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-create.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-create.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
var descriptor = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var IteratorPrototype = {};

// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
__webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js")(IteratorPrototype, __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator'), function () { return this; });

module.exports = function (Constructor, NAME, next) {
  Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });
  setToStringTag(Constructor, NAME + ' Iterator');
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-define.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-define.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/library/modules/_redefine.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var $iterCreate = __webpack_require__(/*! ./_iter-create */ "../node_modules/core-js/library/modules/_iter-create.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`
var FF_ITERATOR = '@@iterator';
var KEYS = 'keys';
var VALUES = 'values';

var returnThis = function () { return this; };

module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {
  $iterCreate(Constructor, NAME, next);
  var getMethod = function (kind) {
    if (!BUGGY && kind in proto) return proto[kind];
    switch (kind) {
      case KEYS: return function keys() { return new Constructor(this, kind); };
      case VALUES: return function values() { return new Constructor(this, kind); };
    } return function entries() { return new Constructor(this, kind); };
  };
  var TAG = NAME + ' Iterator';
  var DEF_VALUES = DEFAULT == VALUES;
  var VALUES_BUG = false;
  var proto = Base.prototype;
  var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];
  var $default = $native || getMethod(DEFAULT);
  var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;
  var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;
  var methods, key, IteratorPrototype;
  // Fix native
  if ($anyNative) {
    IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));
    if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {
      // Set @@toStringTag to native iterators
      setToStringTag(IteratorPrototype, TAG, true);
      // fix for some old engines
      if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);
    }
  }
  // fix Array#{values, @@iterator}.name in V8 / FF
  if (DEF_VALUES && $native && $native.name !== VALUES) {
    VALUES_BUG = true;
    $default = function values() { return $native.call(this); };
  }
  // Define iterator
  if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {
    hide(proto, ITERATOR, $default);
  }
  // Plug for library
  Iterators[NAME] = $default;
  Iterators[TAG] = returnThis;
  if (DEFAULT) {
    methods = {
      values: DEF_VALUES ? $default : getMethod(VALUES),
      keys: IS_SET ? $default : getMethod(KEYS),
      entries: $entries
    };
    if (FORCED) for (key in methods) {
      if (!(key in proto)) redefine(proto, key, methods[key]);
    } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
  }
  return methods;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-detect.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-detect.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var SAFE_CLOSING = false;

try {
  var riter = [7][ITERATOR]();
  riter['return'] = function () { SAFE_CLOSING = true; };
  // eslint-disable-next-line no-throw-literal
  Array.from(riter, function () { throw 2; });
} catch (e) { /* empty */ }

module.exports = function (exec, skipClosing) {
  if (!skipClosing && !SAFE_CLOSING) return false;
  var safe = false;
  try {
    var arr = [7];
    var iter = arr[ITERATOR]();
    iter.next = function () { return { done: safe = true }; };
    arr[ITERATOR] = function () { return iter; };
    exec(arr);
  } catch (e) { /* empty */ }
  return safe;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-step.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-step.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = function (done, value) {
  return { value: value, done: !!done };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iterators.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iterators.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = {};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_library.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_library.js ***!
  \***********************************************************/
/***/ ((module) => {

module.exports = true;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_meta.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_meta.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var META = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js")('meta');
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var setDesc = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
var id = 0;
var isExtensible = Object.isExtensible || function () {
  return true;
};
var FREEZE = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  return isExtensible(Object.preventExtensions({}));
});
var setMeta = function (it) {
  setDesc(it, META, { value: {
    i: 'O' + ++id, // object ID
    w: {}          // weak collections IDs
  } });
};
var fastKey = function (it, create) {
  // return primitive with prefix
  if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;
  if (!has(it, META)) {
    // can't set metadata to uncaught frozen object
    if (!isExtensible(it)) return 'F';
    // not necessary to add metadata
    if (!create) return 'E';
    // add missing metadata
    setMeta(it);
  // return object ID
  } return it[META].i;
};
var getWeak = function (it, create) {
  if (!has(it, META)) {
    // can't set metadata to uncaught frozen object
    if (!isExtensible(it)) return true;
    // not necessary to add metadata
    if (!create) return false;
    // add missing metadata
    setMeta(it);
  // return hash weak collections IDs
  } return it[META].w;
};
// add metadata on freeze-family methods calling
var onFreeze = function (it) {
  if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it);
  return it;
};
var meta = module.exports = {
  KEY: META,
  NEED: false,
  fastKey: fastKey,
  getWeak: getWeak,
  onFreeze: onFreeze
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-assign.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-assign.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 19.1.2.1 Object.assign(target, source, ...)
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var gOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/library/modules/_iobject.js");
var $assign = Object.assign;

// should work with symbols and should have deterministic property order (V8 bug)
module.exports = !$assign || __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  var A = {};
  var B = {};
  // eslint-disable-next-line no-undef
  var S = Symbol();
  var K = 'abcdefghijklmnopqrst';
  A[S] = 7;
  K.split('').forEach(function (k) { B[k] = k; });
  return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join('') != K;
}) ? function assign(target, source) { // eslint-disable-line no-unused-vars
  var T = toObject(target);
  var aLen = arguments.length;
  var index = 1;
  var getSymbols = gOPS.f;
  var isEnum = pIE.f;
  while (aLen > index) {
    var S = IObject(arguments[index++]);
    var keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S);
    var length = keys.length;
    var j = 0;
    var key;
    while (length > j) {
      key = keys[j++];
      if (!DESCRIPTORS || isEnum.call(S, key)) T[key] = S[key];
    }
  } return T;
} : $assign;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-create.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-create.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var dPs = __webpack_require__(/*! ./_object-dps */ "../node_modules/core-js/library/modules/_object-dps.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');
var Empty = function () { /* empty */ };
var PROTOTYPE = 'prototype';

// Create object with fake `null` prototype: use iframe Object with cleared prototype
var createDict = function () {
  // Thrash, waste and sodomy: IE GC bug
  var iframe = __webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/library/modules/_dom-create.js")('iframe');
  var i = enumBugKeys.length;
  var lt = '<';
  var gt = '>';
  var iframeDocument;
  iframe.style.display = 'none';
  __webpack_require__(/*! ./_html */ "../node_modules/core-js/library/modules/_html.js").appendChild(iframe);
  iframe.src = 'javascript:'; // eslint-disable-line no-script-url
  // createDict = iframe.contentWindow.Object;
  // html.removeChild(iframe);
  iframeDocument = iframe.contentWindow.document;
  iframeDocument.open();
  iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);
  iframeDocument.close();
  createDict = iframeDocument.F;
  while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];
  return createDict();
};

module.exports = Object.create || function create(O, Properties) {
  var result;
  if (O !== null) {
    Empty[PROTOTYPE] = anObject(O);
    result = new Empty();
    Empty[PROTOTYPE] = null;
    // add "__proto__" for Object.getPrototypeOf polyfill
    result[IE_PROTO] = O;
  } else result = createDict();
  return Properties === undefined ? result : dPs(result, Properties);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-dp.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-dp.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/library/modules/_ie8-dom-define.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
var dP = Object.defineProperty;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? Object.defineProperty : function defineProperty(O, P, Attributes) {
  anObject(O);
  P = toPrimitive(P, true);
  anObject(Attributes);
  if (IE8_DOM_DEFINE) try {
    return dP(O, P, Attributes);
  } catch (e) { /* empty */ }
  if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
  if ('value' in Attributes) O[P] = Attributes.value;
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-dps.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-dps.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");

module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? Object.defineProperties : function defineProperties(O, Properties) {
  anObject(O);
  var keys = getKeys(Properties);
  var length = keys.length;
  var i = 0;
  var P;
  while (length > i) dP.f(O, P = keys[i++], Properties[P]);
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gopd.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gopd.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/library/modules/_ie8-dom-define.js");
var gOPD = Object.getOwnPropertyDescriptor;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? gOPD : function getOwnPropertyDescriptor(O, P) {
  O = toIObject(O);
  P = toPrimitive(P, true);
  if (IE8_DOM_DEFINE) try {
    return gOPD(O, P);
  } catch (e) { /* empty */ }
  if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gopn-ext.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gopn-ext.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var gOPN = __webpack_require__(/*! ./_object-gopn */ "../node_modules/core-js/library/modules/_object-gopn.js").f;
var toString = {}.toString;

var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames
  ? Object.getOwnPropertyNames(window) : [];

var getWindowNames = function (it) {
  try {
    return gOPN(it);
  } catch (e) {
    return windowNames.slice();
  }
};

module.exports.f = function getOwnPropertyNames(it) {
  return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gopn.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gopn.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)
var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/library/modules/_object-keys-internal.js");
var hiddenKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js").concat('length', 'prototype');

exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
  return $keys(O, hiddenKeys);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gops.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gops.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports) => {

exports.f = Object.getOwnPropertySymbols;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gpo.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gpo.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');
var ObjectProto = Object.prototype;

module.exports = Object.getPrototypeOf || function (O) {
  O = toObject(O);
  if (has(O, IE_PROTO)) return O[IE_PROTO];
  if (typeof O.constructor == 'function' && O instanceof O.constructor) {
    return O.constructor.prototype;
  } return O instanceof Object ? ObjectProto : null;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-keys-internal.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-keys-internal.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var arrayIndexOf = __webpack_require__(/*! ./_array-includes */ "../node_modules/core-js/library/modules/_array-includes.js")(false);
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');

module.exports = function (object, names) {
  var O = toIObject(object);
  var i = 0;
  var result = [];
  var key;
  for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);
  // Don't enum bug & hidden keys
  while (names.length > i) if (has(O, key = names[i++])) {
    ~arrayIndexOf(result, key) || result.push(key);
  }
  return result;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-keys.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-keys.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.14 / 15.2.3.14 Object.keys(O)
var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/library/modules/_object-keys-internal.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js");

module.exports = Object.keys || function keys(O) {
  return $keys(O, enumBugKeys);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-pie.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-pie.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports) => {

exports.f = {}.propertyIsEnumerable;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-sap.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-sap.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// most Object methods by ES6 should accept primitives
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
module.exports = function (KEY, exec) {
  var fn = (core.Object || {})[KEY] || Object[KEY];
  var exp = {};
  exp[KEY] = exec(fn);
  $export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-to-array.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-to-array.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var isEnum = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js").f;
module.exports = function (isEntries) {
  return function (it) {
    var O = toIObject(it);
    var keys = getKeys(O);
    var length = keys.length;
    var i = 0;
    var result = [];
    var key;
    while (length > i) {
      key = keys[i++];
      if (!DESCRIPTORS || isEnum.call(O, key)) {
        result.push(isEntries ? [key, O[key]] : O[key]);
      }
    }
    return result;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_own-keys.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_own-keys.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// all object keys, includes non-enumerable and symbols
var gOPN = __webpack_require__(/*! ./_object-gopn */ "../node_modules/core-js/library/modules/_object-gopn.js");
var gOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var Reflect = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").Reflect;
module.exports = Reflect && Reflect.ownKeys || function ownKeys(it) {
  var keys = gOPN.f(anObject(it));
  var getSymbols = gOPS.f;
  return getSymbols ? keys.concat(getSymbols(it)) : keys;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_parse-int.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_parse-int.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var $parseInt = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").parseInt;
var $trim = __webpack_require__(/*! ./_string-trim */ "../node_modules/core-js/library/modules/_string-trim.js").trim;
var ws = __webpack_require__(/*! ./_string-ws */ "../node_modules/core-js/library/modules/_string-ws.js");
var hex = /^[-+]?0[xX]/;

module.exports = $parseInt(ws + '08') !== 8 || $parseInt(ws + '0x16') !== 22 ? function parseInt(str, radix) {
  var string = $trim(String(str), 3);
  return $parseInt(string, (radix >>> 0) || (hex.test(string) ? 16 : 10));
} : $parseInt;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_property-desc.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_property-desc.js ***!
  \*****************************************************************/
/***/ ((module) => {

module.exports = function (bitmap, value) {
  return {
    enumerable: !(bitmap & 1),
    configurable: !(bitmap & 2),
    writable: !(bitmap & 4),
    value: value
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_redefine-all.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_redefine-all.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
module.exports = function (target, src, safe) {
  for (var key in src) {
    if (safe && target[key]) target[key] = src[key];
    else hide(target, key, src[key]);
  } return target;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_redefine.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_redefine.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-collection-from.js":
/*!***********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-collection-from.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// https://tc39.github.io/proposal-setmap-offrom/
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");

module.exports = function (COLLECTION) {
  $export($export.S, COLLECTION, { from: function from(source /* , mapFn, thisArg */) {
    var mapFn = arguments[1];
    var mapping, A, n, cb;
    aFunction(this);
    mapping = mapFn !== undefined;
    if (mapping) aFunction(mapFn);
    if (source == undefined) return new this();
    A = [];
    if (mapping) {
      n = 0;
      cb = ctx(mapFn, arguments[2], 2);
      forOf(source, false, function (nextItem) {
        A.push(cb(nextItem, n++));
      });
    } else {
      forOf(source, false, A.push, A);
    }
    return new this(A);
  } });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-collection-of.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-collection-of.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// https://tc39.github.io/proposal-setmap-offrom/
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");

module.exports = function (COLLECTION) {
  $export($export.S, COLLECTION, { of: function of() {
    var length = arguments.length;
    var A = new Array(length);
    while (length--) A[length] = arguments[length];
    return new this(A);
  } });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-proto.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-proto.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Works with __proto__ only. Old v8 can't work with null proto objects.
/* eslint-disable no-proto */
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var check = function (O, proto) {
  anObject(O);
  if (!isObject(proto) && proto !== null) throw TypeError(proto + ": can't set as prototype!");
};
module.exports = {
  set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line
    function (test, buggy, set) {
      try {
        set = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js")(Function.call, __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js").f(Object.prototype, '__proto__').set, 2);
        set(test, []);
        buggy = !(test instanceof Array);
      } catch (e) { buggy = true; }
      return function setPrototypeOf(O, proto) {
        check(O, proto);
        if (buggy) O.__proto__ = proto;
        else set(O, proto);
        return O;
      };
    }({}, false) : undefined),
  check: check
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-to-string-tag.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-to-string-tag.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var def = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('toStringTag');

module.exports = function (it, tag, stat) {
  if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_shared-key.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_shared-key.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var shared = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js")('keys');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
module.exports = function (key) {
  return shared[key] || (shared[key] = uid(key));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_shared.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_shared.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var SHARED = '__core-js_shared__';
var store = global[SHARED] || (global[SHARED] = {});

(module.exports = function (key, value) {
  return store[key] || (store[key] = value !== undefined ? value : {});
})('versions', []).push({
  version: core.version,
  mode: __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js") ? 'pure' : 'global',
  copyright: '© 2020 Denis Pushkarev (zloirock.ru)'
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/_string-at.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_string-at.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
// true  -> String#at
// false -> String#codePointAt
module.exports = function (TO_STRING) {
  return function (that, pos) {
    var s = String(defined(that));
    var i = toInteger(pos);
    var l = s.length;
    var a, b;
    if (i < 0 || i >= l) return TO_STRING ? '' : undefined;
    a = s.charCodeAt(i);
    return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
      ? TO_STRING ? s.charAt(i) : a
      : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_string-trim.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_string-trim.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
var spaces = __webpack_require__(/*! ./_string-ws */ "../node_modules/core-js/library/modules/_string-ws.js");
var space = '[' + spaces + ']';
var non = '\u200b\u0085';
var ltrim = RegExp('^' + space + space + '*');
var rtrim = RegExp(space + space + '*$');

var exporter = function (KEY, exec, ALIAS) {
  var exp = {};
  var FORCE = fails(function () {
    return !!spaces[KEY]() || non[KEY]() != non;
  });
  var fn = exp[KEY] = FORCE ? exec(trim) : spaces[KEY];
  if (ALIAS) exp[ALIAS] = fn;
  $export($export.P + $export.F * FORCE, 'String', exp);
};

// 1 -> String#trimLeft
// 2 -> String#trimRight
// 3 -> String#trim
var trim = exporter.trim = function (string, TYPE) {
  string = String(defined(string));
  if (TYPE & 1) string = string.replace(ltrim, '');
  if (TYPE & 2) string = string.replace(rtrim, '');
  return string;
};

module.exports = exporter;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_string-ws.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_string-ws.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = '\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003' +
  '\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF';


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-absolute-index.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-absolute-index.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
var max = Math.max;
var min = Math.min;
module.exports = function (index, length) {
  index = toInteger(index);
  return index < 0 ? max(index + length, 0) : min(index, length);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-integer.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-integer.js ***!
  \**************************************************************/
/***/ ((module) => {

// 7.1.4 ToInteger
var ceil = Math.ceil;
var floor = Math.floor;
module.exports = function (it) {
  return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-iobject.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-iobject.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// to indexed object, toObject with fallback for non-array-like ES3 strings
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/library/modules/_iobject.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
module.exports = function (it) {
  return IObject(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-length.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-length.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.15 ToLength
var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
var min = Math.min;
module.exports = function (it) {
  return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-object.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-object.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.13 ToObject(argument)
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
module.exports = function (it) {
  return Object(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-primitive.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-primitive.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.1 ToPrimitive(input [, PreferredType])
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
// instead of the ES6 spec version, we didn't implement @@toPrimitive case
// and the second argument - flag - preferred type is a string
module.exports = function (it, S) {
  if (!isObject(it)) return it;
  var fn, val;
  if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
  if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  throw TypeError("Can't convert object to primitive value");
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_uid.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_uid.js ***!
  \*******************************************************/
/***/ ((module) => {

var id = 0;
var px = Math.random();
module.exports = function (key) {
  return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_validate-collection.js":
/*!***********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_validate-collection.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
module.exports = function (it, TYPE) {
  if (!isObject(it) || it._t !== TYPE) throw TypeError('Incompatible receiver, ' + TYPE + ' required!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_wks-define.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_wks-define.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js");
var wksExt = __webpack_require__(/*! ./_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js");
var defineProperty = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
module.exports = function (name) {
  var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {});
  if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_wks-ext.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_wks-ext.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

exports.f = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js");


/***/ }),

/***/ "../node_modules/core-js/library/modules/_wks.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_wks.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var store = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js")('wks');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
var Symbol = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").Symbol;
var USE_SYMBOL = typeof Symbol == 'function';

var $exports = module.exports = function (name) {
  return store[name] || (store[name] =
    USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
};

$exports.store = store;


/***/ }),

/***/ "../node_modules/core-js/library/modules/core.get-iterator-method.js":
/*!***************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/core.get-iterator-method.js ***!
  \***************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/library/modules/_classof.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
module.exports = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js").getIteratorMethod = function (it) {
  if (it != undefined) return it[ITERATOR]
    || it['@@iterator']
    || Iterators[classof(it)];
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.array.from.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.array.from.js ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var call = __webpack_require__(/*! ./_iter-call */ "../node_modules/core-js/library/modules/_iter-call.js");
var isArrayIter = __webpack_require__(/*! ./_is-array-iter */ "../node_modules/core-js/library/modules/_is-array-iter.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
var createProperty = __webpack_require__(/*! ./_create-property */ "../node_modules/core-js/library/modules/_create-property.js");
var getIterFn = __webpack_require__(/*! ./core.get-iterator-method */ "../node_modules/core-js/library/modules/core.get-iterator-method.js");

$export($export.S + $export.F * !__webpack_require__(/*! ./_iter-detect */ "../node_modules/core-js/library/modules/_iter-detect.js")(function (iter) { Array.from(iter); }), 'Array', {
  // 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined)
  from: function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {
    var O = toObject(arrayLike);
    var C = typeof this == 'function' ? this : Array;
    var aLen = arguments.length;
    var mapfn = aLen > 1 ? arguments[1] : undefined;
    var mapping = mapfn !== undefined;
    var index = 0;
    var iterFn = getIterFn(O);
    var length, result, step, iterator;
    if (mapping) mapfn = ctx(mapfn, aLen > 2 ? arguments[2] : undefined, 2);
    // if object isn't iterable or it's array with default iterator - use simple case
    if (iterFn != undefined && !(C == Array && isArrayIter(iterFn))) {
      for (iterator = iterFn.call(O), result = new C(); !(step = iterator.next()).done; index++) {
        createProperty(result, index, mapping ? call(iterator, mapfn, [step.value, index], true) : step.value);
      }
    } else {
      length = toLength(O.length);
      for (result = new C(length); length > index; index++) {
        createProperty(result, index, mapping ? mapfn(O[index], index) : O[index]);
      }
    }
    result.length = index;
    return result;
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.array.is-array.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.array.is-array.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 22.1.2.2 / 15.4.3.2 Array.isArray(arg)
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");

$export($export.S, 'Array', { isArray: __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/library/modules/_is-array.js") });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.array.iterator.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.array.iterator.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var addToUnscopables = __webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/library/modules/_add-to-unscopables.js");
var step = __webpack_require__(/*! ./_iter-step */ "../node_modules/core-js/library/modules/_iter-step.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");

// 22.1.3.4 Array.prototype.entries()
// 22.1.3.13 Array.prototype.keys()
// 22.1.3.29 Array.prototype.values()
// 22.1.3.30 Array.prototype[@@iterator]()
module.exports = __webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/library/modules/_iter-define.js")(Array, 'Array', function (iterated, kind) {
  this._t = toIObject(iterated); // target
  this._i = 0;                   // next index
  this._k = kind;                // kind
// 22.1.5.2.1 %ArrayIteratorPrototype%.next()
}, function () {
  var O = this._t;
  var kind = this._k;
  var index = this._i++;
  if (!O || index >= O.length) {
    this._t = undefined;
    return step(1);
  }
  if (kind == 'keys') return step(0, index);
  if (kind == 'values') return step(0, O[index]);
  return step(0, [index, O[index]]);
}, 'values');

// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
Iterators.Arguments = Iterators.Array;

addToUnscopables('keys');
addToUnscopables('values');
addToUnscopables('entries');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.assign.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.assign.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.3.1 Object.assign(target, source)
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");

$export($export.S + $export.F, 'Object', { assign: __webpack_require__(/*! ./_object-assign */ "../node_modules/core-js/library/modules/_object-assign.js") });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.create.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.create.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
$export($export.S, 'Object', { create: __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js") });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.define-properties.js":
/*!*******************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.define-properties.js ***!
  \*******************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
// 19.1.2.3 / 15.2.3.7 Object.defineProperties(O, Properties)
$export($export.S + $export.F * !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js"), 'Object', { defineProperties: __webpack_require__(/*! ./_object-dps */ "../node_modules/core-js/library/modules/_object-dps.js") });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.define-property.js":
/*!*****************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.define-property.js ***!
  \*****************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)
$export($export.S + $export.F * !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js"), 'Object', { defineProperty: __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js":
/*!*****************************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js ***!
  \*****************************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var $getOwnPropertyDescriptor = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js").f;

__webpack_require__(/*! ./_object-sap */ "../node_modules/core-js/library/modules/_object-sap.js")('getOwnPropertyDescriptor', function () {
  return function getOwnPropertyDescriptor(it, key) {
    return $getOwnPropertyDescriptor(toIObject(it), key);
  };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.get-prototype-of.js":
/*!******************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.get-prototype-of.js ***!
  \******************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.9 Object.getPrototypeOf(O)
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var $getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");

__webpack_require__(/*! ./_object-sap */ "../node_modules/core-js/library/modules/_object-sap.js")('getPrototypeOf', function () {
  return function getPrototypeOf(it) {
    return $getPrototypeOf(toObject(it));
  };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.keys.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.keys.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.14 Object.keys(O)
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var $keys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");

__webpack_require__(/*! ./_object-sap */ "../node_modules/core-js/library/modules/_object-sap.js")('keys', function () {
  return function keys(it) {
    return $keys(toObject(it));
  };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.set-prototype-of.js":
/*!******************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.set-prototype-of.js ***!
  \******************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.3.19 Object.setPrototypeOf(O, proto)
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
$export($export.S, 'Object', { setPrototypeOf: __webpack_require__(/*! ./_set-proto */ "../node_modules/core-js/library/modules/_set-proto.js").set });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.to-string.js":
/*!***********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.to-string.js ***!
  \***********************************************************************/
/***/ (() => {



/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.parse-int.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.parse-int.js ***!
  \****************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var $parseInt = __webpack_require__(/*! ./_parse-int */ "../node_modules/core-js/library/modules/_parse-int.js");
// 18.2.5 parseInt(string, radix)
$export($export.G + $export.F * (parseInt != $parseInt), { parseInt: $parseInt });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.reflect.construct.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.reflect.construct.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 26.1.2 Reflect.construct(target, argumentsList [, newTarget])
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
var bind = __webpack_require__(/*! ./_bind */ "../node_modules/core-js/library/modules/_bind.js");
var rConstruct = (__webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").Reflect || {}).construct;

// MS Edge supports only 2 arguments and argumentsList argument is optional
// FF Nightly sets third argument as `new.target`, but does not create `this` from it
var NEW_TARGET_BUG = fails(function () {
  function F() { /* empty */ }
  return !(rConstruct(function () { /* empty */ }, [], F) instanceof F);
});
var ARGS_BUG = !fails(function () {
  rConstruct(function () { /* empty */ });
});

$export($export.S + $export.F * (NEW_TARGET_BUG || ARGS_BUG), 'Reflect', {
  construct: function construct(Target, args /* , newTarget */) {
    aFunction(Target);
    anObject(args);
    var newTarget = arguments.length < 3 ? Target : aFunction(arguments[2]);
    if (ARGS_BUG && !NEW_TARGET_BUG) return rConstruct(Target, args, newTarget);
    if (Target == newTarget) {
      // w/o altered newTarget, optimization for 0-4 arguments
      switch (args.length) {
        case 0: return new Target();
        case 1: return new Target(args[0]);
        case 2: return new Target(args[0], args[1]);
        case 3: return new Target(args[0], args[1], args[2]);
        case 4: return new Target(args[0], args[1], args[2], args[3]);
      }
      // w/o altered newTarget, lot of arguments case
      var $args = [null];
      $args.push.apply($args, args);
      return new (bind.apply(Target, $args))();
    }
    // with altered newTarget, not support built-in constructors
    var proto = newTarget.prototype;
    var instance = create(isObject(proto) ? proto : Object.prototype);
    var result = Function.apply.call(Target, instance, args);
    return isObject(result) ? result : instance;
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.reflect.get.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.reflect.get.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 26.1.6 Reflect.get(target, propertyKey [, receiver])
var gOPD = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js");
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");

function get(target, propertyKey /* , receiver */) {
  var receiver = arguments.length < 3 ? target : arguments[2];
  var desc, proto;
  if (anObject(target) === receiver) return target[propertyKey];
  if (desc = gOPD.f(target, propertyKey)) return has(desc, 'value')
    ? desc.value
    : desc.get !== undefined
      ? desc.get.call(receiver)
      : undefined;
  if (isObject(proto = getPrototypeOf(target))) return get(proto, propertyKey, receiver);
}

$export($export.S, 'Reflect', { get: get });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.string.iterator.js":
/*!**********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.string.iterator.js ***!
  \**********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $at = __webpack_require__(/*! ./_string-at */ "../node_modules/core-js/library/modules/_string-at.js")(true);

// 21.1.3.27 String.prototype[@@iterator]()
__webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/library/modules/_iter-define.js")(String, 'String', function (iterated) {
  this._t = String(iterated); // target
  this._i = 0;                // next index
// 21.1.5.2.1 %StringIteratorPrototype%.next()
}, function () {
  var O = this._t;
  var index = this._i;
  var point;
  if (index >= O.length) return { value: undefined, done: true };
  point = $at(O, index);
  this._i += point.length;
  return { value: point, done: false };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.symbol.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.symbol.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// ECMAScript 6 symbols shim
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/library/modules/_redefine.js");
var META = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js").KEY;
var $fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
var shared = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
var wks = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js");
var wksExt = __webpack_require__(/*! ./_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js");
var wksDefine = __webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js");
var enumKeys = __webpack_require__(/*! ./_enum-keys */ "../node_modules/core-js/library/modules/_enum-keys.js");
var isArray = __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/library/modules/_is-array.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
var _create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
var gOPNExt = __webpack_require__(/*! ./_object-gopn-ext */ "../node_modules/core-js/library/modules/_object-gopn-ext.js");
var $GOPD = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js");
var $GOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
var $DP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var $keys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var gOPD = $GOPD.f;
var dP = $DP.f;
var gOPN = gOPNExt.f;
var $Symbol = global.Symbol;
var $JSON = global.JSON;
var _stringify = $JSON && $JSON.stringify;
var PROTOTYPE = 'prototype';
var HIDDEN = wks('_hidden');
var TO_PRIMITIVE = wks('toPrimitive');
var isEnum = {}.propertyIsEnumerable;
var SymbolRegistry = shared('symbol-registry');
var AllSymbols = shared('symbols');
var OPSymbols = shared('op-symbols');
var ObjectProto = Object[PROTOTYPE];
var USE_NATIVE = typeof $Symbol == 'function' && !!$GOPS.f;
var QObject = global.QObject;
// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173
var setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;

// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687
var setSymbolDesc = DESCRIPTORS && $fails(function () {
  return _create(dP({}, 'a', {
    get: function () { return dP(this, 'a', { value: 7 }).a; }
  })).a != 7;
}) ? function (it, key, D) {
  var protoDesc = gOPD(ObjectProto, key);
  if (protoDesc) delete ObjectProto[key];
  dP(it, key, D);
  if (protoDesc && it !== ObjectProto) dP(ObjectProto, key, protoDesc);
} : dP;

var wrap = function (tag) {
  var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]);
  sym._k = tag;
  return sym;
};

var isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function (it) {
  return typeof it == 'symbol';
} : function (it) {
  return it instanceof $Symbol;
};

var $defineProperty = function defineProperty(it, key, D) {
  if (it === ObjectProto) $defineProperty(OPSymbols, key, D);
  anObject(it);
  key = toPrimitive(key, true);
  anObject(D);
  if (has(AllSymbols, key)) {
    if (!D.enumerable) {
      if (!has(it, HIDDEN)) dP(it, HIDDEN, createDesc(1, {}));
      it[HIDDEN][key] = true;
    } else {
      if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false;
      D = _create(D, { enumerable: createDesc(0, false) });
    } return setSymbolDesc(it, key, D);
  } return dP(it, key, D);
};
var $defineProperties = function defineProperties(it, P) {
  anObject(it);
  var keys = enumKeys(P = toIObject(P));
  var i = 0;
  var l = keys.length;
  var key;
  while (l > i) $defineProperty(it, key = keys[i++], P[key]);
  return it;
};
var $create = function create(it, P) {
  return P === undefined ? _create(it) : $defineProperties(_create(it), P);
};
var $propertyIsEnumerable = function propertyIsEnumerable(key) {
  var E = isEnum.call(this, key = toPrimitive(key, true));
  if (this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return false;
  return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true;
};
var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key) {
  it = toIObject(it);
  key = toPrimitive(key, true);
  if (it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return;
  var D = gOPD(it, key);
  if (D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) D.enumerable = true;
  return D;
};
var $getOwnPropertyNames = function getOwnPropertyNames(it) {
  var names = gOPN(toIObject(it));
  var result = [];
  var i = 0;
  var key;
  while (names.length > i) {
    if (!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META) result.push(key);
  } return result;
};
var $getOwnPropertySymbols = function getOwnPropertySymbols(it) {
  var IS_OP = it === ObjectProto;
  var names = gOPN(IS_OP ? OPSymbols : toIObject(it));
  var result = [];
  var i = 0;
  var key;
  while (names.length > i) {
    if (has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true)) result.push(AllSymbols[key]);
  } return result;
};

// 19.4.1.1 Symbol([description])
if (!USE_NATIVE) {
  $Symbol = function Symbol() {
    if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor!');
    var tag = uid(arguments.length > 0 ? arguments[0] : undefined);
    var $set = function (value) {
      if (this === ObjectProto) $set.call(OPSymbols, value);
      if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;
      setSymbolDesc(this, tag, createDesc(1, value));
    };
    if (DESCRIPTORS && setter) setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set });
    return wrap(tag);
  };
  redefine($Symbol[PROTOTYPE], 'toString', function toString() {
    return this._k;
  });

  $GOPD.f = $getOwnPropertyDescriptor;
  $DP.f = $defineProperty;
  __webpack_require__(/*! ./_object-gopn */ "../node_modules/core-js/library/modules/_object-gopn.js").f = gOPNExt.f = $getOwnPropertyNames;
  __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js").f = $propertyIsEnumerable;
  $GOPS.f = $getOwnPropertySymbols;

  if (DESCRIPTORS && !__webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js")) {
    redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);
  }

  wksExt.f = function (name) {
    return wrap(wks(name));
  };
}

$export($export.G + $export.W + $export.F * !USE_NATIVE, { Symbol: $Symbol });

for (var es6Symbols = (
  // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14
  'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'
).split(','), j = 0; es6Symbols.length > j;)wks(es6Symbols[j++]);

for (var wellKnownSymbols = $keys(wks.store), k = 0; wellKnownSymbols.length > k;) wksDefine(wellKnownSymbols[k++]);

$export($export.S + $export.F * !USE_NATIVE, 'Symbol', {
  // 19.4.2.1 Symbol.for(key)
  'for': function (key) {
    return has(SymbolRegistry, key += '')
      ? SymbolRegistry[key]
      : SymbolRegistry[key] = $Symbol(key);
  },
  // 19.4.2.5 Symbol.keyFor(sym)
  keyFor: function keyFor(sym) {
    if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol!');
    for (var key in SymbolRegistry) if (SymbolRegistry[key] === sym) return key;
  },
  useSetter: function () { setter = true; },
  useSimple: function () { setter = false; }
});

$export($export.S + $export.F * !USE_NATIVE, 'Object', {
  // 19.1.2.2 Object.create(O [, Properties])
  create: $create,
  // 19.1.2.4 Object.defineProperty(O, P, Attributes)
  defineProperty: $defineProperty,
  // 19.1.2.3 Object.defineProperties(O, Properties)
  defineProperties: $defineProperties,
  // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
  getOwnPropertyDescriptor: $getOwnPropertyDescriptor,
  // 19.1.2.7 Object.getOwnPropertyNames(O)
  getOwnPropertyNames: $getOwnPropertyNames,
  // 19.1.2.8 Object.getOwnPropertySymbols(O)
  getOwnPropertySymbols: $getOwnPropertySymbols
});

// Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives
// https://bugs.chromium.org/p/v8/issues/detail?id=3443
var FAILS_ON_PRIMITIVES = $fails(function () { $GOPS.f(1); });

$export($export.S + $export.F * FAILS_ON_PRIMITIVES, 'Object', {
  getOwnPropertySymbols: function getOwnPropertySymbols(it) {
    return $GOPS.f(toObject(it));
  }
});

// 24.3.2 JSON.stringify(value [, replacer [, space]])
$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function () {
  var S = $Symbol();
  // MS Edge converts symbol values to JSON as {}
  // WebKit converts symbol values to JSON as null
  // V8 throws on boxed symbols
  return _stringify([S]) != '[null]' || _stringify({ a: S }) != '{}' || _stringify(Object(S)) != '{}';
})), 'JSON', {
  stringify: function stringify(it) {
    var args = [it];
    var i = 1;
    var replacer, $replacer;
    while (arguments.length > i) args.push(arguments[i++]);
    $replacer = replacer = args[1];
    if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined
    if (!isArray(replacer)) replacer = function (key, value) {
      if (typeof $replacer == 'function') value = $replacer.call(this, key, value);
      if (!isSymbol(value)) return value;
    };
    args[1] = replacer;
    return _stringify.apply($JSON, args);
  }
});

// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint)
$Symbol[PROTOTYPE][TO_PRIMITIVE] || __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js")($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);
// 19.4.3.5 Symbol.prototype[@@toStringTag]
setToStringTag($Symbol, 'Symbol');
// 20.2.1.9 Math[@@toStringTag]
setToStringTag(Math, 'Math', true);
// 24.3.3 JSON[@@toStringTag]
setToStringTag(global.JSON, 'JSON', true);


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.weak-map.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.weak-map.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var each = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/library/modules/_array-methods.js")(0);
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/library/modules/_redefine.js");
var meta = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js");
var assign = __webpack_require__(/*! ./_object-assign */ "../node_modules/core-js/library/modules/_object-assign.js");
var weak = __webpack_require__(/*! ./_collection-weak */ "../node_modules/core-js/library/modules/_collection-weak.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var validate = __webpack_require__(/*! ./_validate-collection */ "../node_modules/core-js/library/modules/_validate-collection.js");
var NATIVE_WEAK_MAP = __webpack_require__(/*! ./_validate-collection */ "../node_modules/core-js/library/modules/_validate-collection.js");
var IS_IE11 = !global.ActiveXObject && 'ActiveXObject' in global;
var WEAK_MAP = 'WeakMap';
var getWeak = meta.getWeak;
var isExtensible = Object.isExtensible;
var uncaughtFrozenStore = weak.ufstore;
var InternalMap;

var wrapper = function (get) {
  return function WeakMap() {
    return get(this, arguments.length > 0 ? arguments[0] : undefined);
  };
};

var methods = {
  // 23.3.3.3 WeakMap.prototype.get(key)
  get: function get(key) {
    if (isObject(key)) {
      var data = getWeak(key);
      if (data === true) return uncaughtFrozenStore(validate(this, WEAK_MAP)).get(key);
      return data ? data[this._i] : undefined;
    }
  },
  // 23.3.3.5 WeakMap.prototype.set(key, value)
  set: function set(key, value) {
    return weak.def(validate(this, WEAK_MAP), key, value);
  }
};

// 23.3 WeakMap Objects
var $WeakMap = module.exports = __webpack_require__(/*! ./_collection */ "../node_modules/core-js/library/modules/_collection.js")(WEAK_MAP, wrapper, methods, weak, true, true);

// IE11 WeakMap frozen keys fix
if (NATIVE_WEAK_MAP && IS_IE11) {
  InternalMap = weak.getConstructor(wrapper, WEAK_MAP);
  assign(InternalMap.prototype, methods);
  meta.NEED = true;
  each(['delete', 'has', 'get', 'set'], function (key) {
    var proto = $WeakMap.prototype;
    var method = proto[key];
    redefine(proto, key, function (a, b) {
      // store frozen objects on internal weakmap shim
      if (isObject(a) && !isExtensible(a)) {
        if (!this._f) this._f = new InternalMap();
        var result = this._f[key](a, b);
        return key == 'set' ? this : result;
      // store all the rest on native weakmap
      } return method.call(this, a, b);
    });
  });
}


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.object.entries.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.object.entries.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://github.com/tc39/proposal-object-values-entries
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var $entries = __webpack_require__(/*! ./_object-to-array */ "../node_modules/core-js/library/modules/_object-to-array.js")(true);

$export($export.S, 'Object', {
  entries: function entries(it) {
    return $entries(it);
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.object.get-own-property-descriptors.js":
/*!******************************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.object.get-own-property-descriptors.js ***!
  \******************************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://github.com/tc39/proposal-object-getownpropertydescriptors
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var ownKeys = __webpack_require__(/*! ./_own-keys */ "../node_modules/core-js/library/modules/_own-keys.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var gOPD = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js");
var createProperty = __webpack_require__(/*! ./_create-property */ "../node_modules/core-js/library/modules/_create-property.js");

$export($export.S, 'Object', {
  getOwnPropertyDescriptors: function getOwnPropertyDescriptors(object) {
    var O = toIObject(object);
    var getDesc = gOPD.f;
    var keys = ownKeys(O);
    var result = {};
    var i = 0;
    var key, desc;
    while (keys.length > i) {
      desc = getDesc(O, key = keys[i++]);
      if (desc !== undefined) createProperty(result, key, desc);
    }
    return result;
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.symbol.async-iterator.js":
/*!****************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.symbol.async-iterator.js ***!
  \****************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js")('asyncIterator');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.symbol.observable.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.symbol.observable.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js")('observable');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.weak-map.from.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.weak-map.from.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://tc39.github.io/proposal-setmap-offrom/#sec-weakmap.from
__webpack_require__(/*! ./_set-collection-from */ "../node_modules/core-js/library/modules/_set-collection-from.js")('WeakMap');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.weak-map.of.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.weak-map.of.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://tc39.github.io/proposal-setmap-offrom/#sec-weakmap.of
__webpack_require__(/*! ./_set-collection-of */ "../node_modules/core-js/library/modules/_set-collection-of.js")('WeakMap');


/***/ }),

/***/ "../node_modules/core-js/library/modules/web.dom.iterable.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/web.dom.iterable.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ./es6.array.iterator */ "../node_modules/core-js/library/modules/es6.array.iterator.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var TO_STRING_TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('toStringTag');

var DOMIterables = ('CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,' +
  'DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,' +
  'MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,' +
  'SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,' +
  'TextTrackList,TouchList').split(',');

for (var i = 0; i < DOMIterables.length; i++) {
  var NAME = DOMIterables[i];
  var Collection = global[NAME];
  var proto = Collection && Collection.prototype;
  if (proto && !proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);
  Iterators[NAME] = Iterators.Array;
}


/***/ }),

/***/ "../node_modules/core-js/modules/_a-function.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_a-function.js ***!
  \******************************************************/
/***/ ((module) => {

module.exports = function (it) {
  if (typeof it != 'function') throw TypeError(it + ' is not a function!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_add-to-unscopables.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/modules/_add-to-unscopables.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 22.1.3.31 Array.prototype[@@unscopables]
var UNSCOPABLES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('unscopables');
var ArrayProto = Array.prototype;
if (ArrayProto[UNSCOPABLES] == undefined) __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js")(ArrayProto, UNSCOPABLES, {});
module.exports = function (key) {
  ArrayProto[UNSCOPABLES][key] = true;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_advance-string-index.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_advance-string-index.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var at = __webpack_require__(/*! ./_string-at */ "../node_modules/core-js/modules/_string-at.js")(true);

 // `AdvanceStringIndex` abstract operation
// https://tc39.github.io/ecma262/#sec-advancestringindex
module.exports = function (S, index, unicode) {
  return index + (unicode ? at(S, index).length : 1);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_an-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_an-object.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
module.exports = function (it) {
  if (!isObject(it)) throw TypeError(it + ' is not an object!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-includes.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/_array-includes.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// false -> Array#indexOf
// true  -> Array#includes
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/modules/_to-iobject.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var toAbsoluteIndex = __webpack_require__(/*! ./_to-absolute-index */ "../node_modules/core-js/modules/_to-absolute-index.js");
module.exports = function (IS_INCLUDES) {
  return function ($this, el, fromIndex) {
    var O = toIObject($this);
    var length = toLength(O.length);
    var index = toAbsoluteIndex(fromIndex, length);
    var value;
    // Array#includes uses SameValueZero equality algorithm
    // eslint-disable-next-line no-self-compare
    if (IS_INCLUDES && el != el) while (length > index) {
      value = O[index++];
      // eslint-disable-next-line no-self-compare
      if (value != value) return true;
    // Array#indexOf ignores holes, Array#includes - not
    } else for (;length > index; index++) if (IS_INCLUDES || index in O) {
      if (O[index] === el) return IS_INCLUDES || index || 0;
    } return !IS_INCLUDES && -1;
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-methods.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_array-methods.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 0 -> Array#forEach
// 1 -> Array#map
// 2 -> Array#filter
// 3 -> Array#some
// 4 -> Array#every
// 5 -> Array#find
// 6 -> Array#findIndex
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/modules/_ctx.js");
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/modules/_iobject.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/modules/_to-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var asc = __webpack_require__(/*! ./_array-species-create */ "../node_modules/core-js/modules/_array-species-create.js");
module.exports = function (TYPE, $create) {
  var IS_MAP = TYPE == 1;
  var IS_FILTER = TYPE == 2;
  var IS_SOME = TYPE == 3;
  var IS_EVERY = TYPE == 4;
  var IS_FIND_INDEX = TYPE == 6;
  var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
  var create = $create || asc;
  return function ($this, callbackfn, that) {
    var O = toObject($this);
    var self = IObject(O);
    var f = ctx(callbackfn, that, 3);
    var length = toLength(self.length);
    var index = 0;
    var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;
    var val, res;
    for (;length > index; index++) if (NO_HOLES || index in self) {
      val = self[index];
      res = f(val, index, O);
      if (TYPE) {
        if (IS_MAP) result[index] = res;   // map
        else if (res) switch (TYPE) {
          case 3: return true;             // some
          case 5: return val;              // find
          case 6: return index;            // findIndex
          case 2: result.push(val);        // filter
        } else if (IS_EVERY) return false; // every
      }
    }
    return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-species-constructor.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/modules/_array-species-constructor.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var isArray = __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/modules/_is-array.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('species');

module.exports = function (original) {
  var C;
  if (isArray(original)) {
    C = original.constructor;
    // cross-realm fallback
    if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
    if (isObject(C)) {
      C = C[SPECIES];
      if (C === null) C = undefined;
    }
  } return C === undefined ? Array : C;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-species-create.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_array-species-create.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 9.4.2.3 ArraySpeciesCreate(originalArray, length)
var speciesConstructor = __webpack_require__(/*! ./_array-species-constructor */ "../node_modules/core-js/modules/_array-species-constructor.js");

module.exports = function (original, length) {
  return new (speciesConstructor(original))(length);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_classof.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_classof.js ***!
  \***************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// getting tag from 19.1.3.6 Object.prototype.toString()
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('toStringTag');
// ES3 wrong here
var ARG = cof(function () { return arguments; }()) == 'Arguments';

// fallback for IE11 Script Access Denied error
var tryGet = function (it, key) {
  try {
    return it[key];
  } catch (e) { /* empty */ }
};

module.exports = function (it) {
  var O, T, B;
  return it === undefined ? 'Undefined' : it === null ? 'Null'
    // @@toStringTag case
    : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T
    // builtinTag case
    : ARG ? cof(O)
    // ES3 arguments fallback
    : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_cof.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_cof.js ***!
  \***********************************************/
/***/ ((module) => {

var toString = {}.toString;

module.exports = function (it) {
  return toString.call(it).slice(8, -1);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_core.js":
/*!************************************************!*\
  !*** ../node_modules/core-js/modules/_core.js ***!
  \************************************************/
/***/ ((module) => {

var core = module.exports = { version: '2.6.12' };
if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/modules/_ctx.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_ctx.js ***!
  \***********************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// optional / simple context binding
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/modules/_a-function.js");
module.exports = function (fn, that, length) {
  aFunction(fn);
  if (that === undefined) return fn;
  switch (length) {
    case 1: return function (a) {
      return fn.call(that, a);
    };
    case 2: return function (a, b) {
      return fn.call(that, a, b);
    };
    case 3: return function (a, b, c) {
      return fn.call(that, a, b, c);
    };
  }
  return function (/* ...args */) {
    return fn.apply(that, arguments);
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_defined.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_defined.js ***!
  \***************************************************/
/***/ ((module) => {

// 7.2.1 RequireObjectCoercible(argument)
module.exports = function (it) {
  if (it == undefined) throw TypeError("Can't call method on  " + it);
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_descriptors.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_descriptors.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Thank's IE8 for his funny defineProperty
module.exports = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () {
  return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/modules/_dom-create.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_dom-create.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js").document;
// typeof document.createElement is 'object' in old IE
var is = isObject(document) && isObject(document.createElement);
module.exports = function (it) {
  return is ? document.createElement(it) : {};
};


/***/ }),

/***/ "../node_modules/core-js/modules/_enum-bug-keys.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_enum-bug-keys.js ***!
  \*********************************************************/
/***/ ((module) => {

// IE 8- don't enum bug keys
module.exports = (
  'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
).split(',');


/***/ }),

/***/ "../node_modules/core-js/modules/_export.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_export.js ***!
  \**************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/modules/_ctx.js");
var PROTOTYPE = 'prototype';

var $export = function (type, name, source) {
  var IS_FORCED = type & $export.F;
  var IS_GLOBAL = type & $export.G;
  var IS_STATIC = type & $export.S;
  var IS_PROTO = type & $export.P;
  var IS_BIND = type & $export.B;
  var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE];
  var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
  var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {});
  var key, own, out, exp;
  if (IS_GLOBAL) source = name;
  for (key in source) {
    // contains in native
    own = !IS_FORCED && target && target[key] !== undefined;
    // export native or passed
    out = (own ? target : source)[key];
    // bind timers to global for call from export context
    exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
    // extend global
    if (target) redefine(target, key, out, type & $export.U);
    // export
    if (exports[key] != out) hide(exports, key, exp);
    if (IS_PROTO && expProto[key] != out) expProto[key] = out;
  }
};
global.core = core;
// type bitmap
$export.F = 1;   // forced
$export.G = 2;   // global
$export.S = 4;   // static
$export.P = 8;   // proto
$export.B = 16;  // bind
$export.W = 32;  // wrap
$export.U = 64;  // safe
$export.R = 128; // real proto method for `library`
module.exports = $export;


/***/ }),

/***/ "../node_modules/core-js/modules/_fails-is-regexp.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/_fails-is-regexp.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var MATCH = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('match');
module.exports = function (KEY) {
  var re = /./;
  try {
    '/./'[KEY](re);
  } catch (e) {
    try {
      re[MATCH] = false;
      return !'/./'[KEY](re);
    } catch (f) { /* empty */ }
  } return true;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_fails.js":
/*!*************************************************!*\
  !*** ../node_modules/core-js/modules/_fails.js ***!
  \*************************************************/
/***/ ((module) => {

module.exports = function (exec) {
  try {
    return !!exec();
  } catch (e) {
    return true;
  }
};


/***/ }),

/***/ "../node_modules/core-js/modules/_fix-re-wks.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_fix-re-wks.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

__webpack_require__(/*! ./es6.regexp.exec */ "../node_modules/core-js/modules/es6.regexp.exec.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
var wks = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js");
var regexpExec = __webpack_require__(/*! ./_regexp-exec */ "../node_modules/core-js/modules/_regexp-exec.js");

var SPECIES = wks('species');

var REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {
  // #replace needs built-in support for named groups.
  // #match works fine because it just return the exec results, even if it has
  // a "grops" property.
  var re = /./;
  re.exec = function () {
    var result = [];
    result.groups = { a: '7' };
    return result;
  };
  return ''.replace(re, '$<a>') !== '7';
});

var SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = (function () {
  // Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec
  var re = /(?:)/;
  var originalExec = re.exec;
  re.exec = function () { return originalExec.apply(this, arguments); };
  var result = 'ab'.split(re);
  return result.length === 2 && result[0] === 'a' && result[1] === 'b';
})();

module.exports = function (KEY, length, exec) {
  var SYMBOL = wks(KEY);

  var DELEGATES_TO_SYMBOL = !fails(function () {
    // String methods call symbol-named RegEp methods
    var O = {};
    O[SYMBOL] = function () { return 7; };
    return ''[KEY](O) != 7;
  });

  var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL ? !fails(function () {
    // Symbol-named RegExp methods call .exec
    var execCalled = false;
    var re = /a/;
    re.exec = function () { execCalled = true; return null; };
    if (KEY === 'split') {
      // RegExp[@@split] doesn't call the regex's exec method, but first creates
      // a new one. We need to return the patched regex when creating the new one.
      re.constructor = {};
      re.constructor[SPECIES] = function () { return re; };
    }
    re[SYMBOL]('');
    return !execCalled;
  }) : undefined;

  if (
    !DELEGATES_TO_SYMBOL ||
    !DELEGATES_TO_EXEC ||
    (KEY === 'replace' && !REPLACE_SUPPORTS_NAMED_GROUPS) ||
    (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)
  ) {
    var nativeRegExpMethod = /./[SYMBOL];
    var fns = exec(
      defined,
      SYMBOL,
      ''[KEY],
      function maybeCallNative(nativeMethod, regexp, str, arg2, forceStringMethod) {
        if (regexp.exec === regexpExec) {
          if (DELEGATES_TO_SYMBOL && !forceStringMethod) {
            // The native String method already delegates to @@method (this
            // polyfilled function), leasing to infinite recursion.
            // We avoid it by directly calling the native @@method method.
            return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };
          }
          return { done: true, value: nativeMethod.call(str, regexp, arg2) };
        }
        return { done: false };
      }
    );
    var strfn = fns[0];
    var rxfn = fns[1];

    redefine(String.prototype, KEY, strfn);
    hide(RegExp.prototype, SYMBOL, length == 2
      // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)
      // 21.2.5.11 RegExp.prototype[@@split](string, limit)
      ? function (string, arg) { return rxfn.call(string, this, arg); }
      // 21.2.5.6 RegExp.prototype[@@match](string)
      // 21.2.5.9 RegExp.prototype[@@search](string)
      : function (string) { return rxfn.call(string, this); }
    );
  }
};


/***/ }),

/***/ "../node_modules/core-js/modules/_flags.js":
/*!*************************************************!*\
  !*** ../node_modules/core-js/modules/_flags.js ***!
  \*************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 21.2.5.3 get RegExp.prototype.flags
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
module.exports = function () {
  var that = anObject(this);
  var result = '';
  if (that.global) result += 'g';
  if (that.ignoreCase) result += 'i';
  if (that.multiline) result += 'm';
  if (that.unicode) result += 'u';
  if (that.sticky) result += 'y';
  return result;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_function-to-string.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/modules/_function-to-string.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/modules/_shared.js")('native-function-to-string', Function.toString);


/***/ }),

/***/ "../node_modules/core-js/modules/_global.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_global.js ***!
  \**************************************************/
/***/ ((module) => {

// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
var global = module.exports = typeof window != 'undefined' && window.Math == Math
  ? window : typeof self != 'undefined' && self.Math == Math ? self
  // eslint-disable-next-line no-new-func
  : Function('return this')();
if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/modules/_has.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_has.js ***!
  \***********************************************/
/***/ ((module) => {

var hasOwnProperty = {}.hasOwnProperty;
module.exports = function (it, key) {
  return hasOwnProperty.call(it, key);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_hide.js":
/*!************************************************!*\
  !*** ../node_modules/core-js/modules/_hide.js ***!
  \************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/modules/_property-desc.js");
module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? function (object, key, value) {
  return dP.f(object, key, createDesc(1, value));
} : function (object, key, value) {
  object[key] = value;
  return object;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_html.js":
/*!************************************************!*\
  !*** ../node_modules/core-js/modules/_html.js ***!
  \************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js").document;
module.exports = document && document.documentElement;


/***/ }),

/***/ "../node_modules/core-js/modules/_ie8-dom-define.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/_ie8-dom-define.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") && !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () {
  return Object.defineProperty(__webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/modules/_dom-create.js")('div'), 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/modules/_iobject.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_iobject.js ***!
  \***************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// fallback for non-array-like ES3 and non-enumerable old V8 strings
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
// eslint-disable-next-line no-prototype-builtins
module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
  return cof(it) == 'String' ? it.split('') : Object(it);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_is-array.js":
/*!****************************************************!*\
  !*** ../node_modules/core-js/modules/_is-array.js ***!
  \****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.2.2 IsArray(argument)
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
module.exports = Array.isArray || function isArray(arg) {
  return cof(arg) == 'Array';
};


/***/ }),

/***/ "../node_modules/core-js/modules/_is-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_is-object.js ***!
  \*****************************************************/
/***/ ((module) => {

module.exports = function (it) {
  return typeof it === 'object' ? it !== null : typeof it === 'function';
};


/***/ }),

/***/ "../node_modules/core-js/modules/_is-regexp.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_is-regexp.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.2.8 IsRegExp(argument)
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
var MATCH = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('match');
module.exports = function (it) {
  var isRegExp;
  return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp');
};


/***/ }),

/***/ "../node_modules/core-js/modules/_iter-create.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_iter-create.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/modules/_object-create.js");
var descriptor = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/modules/_property-desc.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/modules/_set-to-string-tag.js");
var IteratorPrototype = {};

// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
__webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js")(IteratorPrototype, __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('iterator'), function () { return this; });

module.exports = function (Constructor, NAME, next) {
  Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });
  setToStringTag(Constructor, NAME + ' Iterator');
};


/***/ }),

/***/ "../node_modules/core-js/modules/_iter-define.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_iter-define.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/modules/_library.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/modules/_iterators.js");
var $iterCreate = __webpack_require__(/*! ./_iter-create */ "../node_modules/core-js/modules/_iter-create.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/modules/_set-to-string-tag.js");
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/modules/_object-gpo.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('iterator');
var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`
var FF_ITERATOR = '@@iterator';
var KEYS = 'keys';
var VALUES = 'values';

var returnThis = function () { return this; };

module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {
  $iterCreate(Constructor, NAME, next);
  var getMethod = function (kind) {
    if (!BUGGY && kind in proto) return proto[kind];
    switch (kind) {
      case KEYS: return function keys() { return new Constructor(this, kind); };
      case VALUES: return function values() { return new Constructor(this, kind); };
    } return function entries() { return new Constructor(this, kind); };
  };
  var TAG = NAME + ' Iterator';
  var DEF_VALUES = DEFAULT == VALUES;
  var VALUES_BUG = false;
  var proto = Base.prototype;
  var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];
  var $default = $native || getMethod(DEFAULT);
  var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;
  var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;
  var methods, key, IteratorPrototype;
  // Fix native
  if ($anyNative) {
    IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));
    if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {
      // Set @@toStringTag to native iterators
      setToStringTag(IteratorPrototype, TAG, true);
      // fix for some old engines
      if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);
    }
  }
  // fix Array#{values, @@iterator}.name in V8 / FF
  if (DEF_VALUES && $native && $native.name !== VALUES) {
    VALUES_BUG = true;
    $default = function values() { return $native.call(this); };
  }
  // Define iterator
  if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {
    hide(proto, ITERATOR, $default);
  }
  // Plug for library
  Iterators[NAME] = $default;
  Iterators[TAG] = returnThis;
  if (DEFAULT) {
    methods = {
      values: DEF_VALUES ? $default : getMethod(VALUES),
      keys: IS_SET ? $default : getMethod(KEYS),
      entries: $entries
    };
    if (FORCED) for (key in methods) {
      if (!(key in proto)) redefine(proto, key, methods[key]);
    } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
  }
  return methods;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_iter-step.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_iter-step.js ***!
  \*****************************************************/
/***/ ((module) => {

module.exports = function (done, value) {
  return { value: value, done: !!done };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_iterators.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_iterators.js ***!
  \*****************************************************/
/***/ ((module) => {

module.exports = {};


/***/ }),

/***/ "../node_modules/core-js/modules/_library.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_library.js ***!
  \***************************************************/
/***/ ((module) => {

module.exports = false;


/***/ }),

/***/ "../node_modules/core-js/modules/_object-create.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_object-create.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var dPs = __webpack_require__(/*! ./_object-dps */ "../node_modules/core-js/modules/_object-dps.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/modules/_enum-bug-keys.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/modules/_shared-key.js")('IE_PROTO');
var Empty = function () { /* empty */ };
var PROTOTYPE = 'prototype';

// Create object with fake `null` prototype: use iframe Object with cleared prototype
var createDict = function () {
  // Thrash, waste and sodomy: IE GC bug
  var iframe = __webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/modules/_dom-create.js")('iframe');
  var i = enumBugKeys.length;
  var lt = '<';
  var gt = '>';
  var iframeDocument;
  iframe.style.display = 'none';
  __webpack_require__(/*! ./_html */ "../node_modules/core-js/modules/_html.js").appendChild(iframe);
  iframe.src = 'javascript:'; // eslint-disable-line no-script-url
  // createDict = iframe.contentWindow.Object;
  // html.removeChild(iframe);
  iframeDocument = iframe.contentWindow.document;
  iframeDocument.open();
  iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);
  iframeDocument.close();
  createDict = iframeDocument.F;
  while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];
  return createDict();
};

module.exports = Object.create || function create(O, Properties) {
  var result;
  if (O !== null) {
    Empty[PROTOTYPE] = anObject(O);
    result = new Empty();
    Empty[PROTOTYPE] = null;
    // add "__proto__" for Object.getPrototypeOf polyfill
    result[IE_PROTO] = O;
  } else result = createDict();
  return Properties === undefined ? result : dPs(result, Properties);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-dp.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_object-dp.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/modules/_ie8-dom-define.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/modules/_to-primitive.js");
var dP = Object.defineProperty;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? Object.defineProperty : function defineProperty(O, P, Attributes) {
  anObject(O);
  P = toPrimitive(P, true);
  anObject(Attributes);
  if (IE8_DOM_DEFINE) try {
    return dP(O, P, Attributes);
  } catch (e) { /* empty */ }
  if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
  if ('value' in Attributes) O[P] = Attributes.value;
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-dps.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_object-dps.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/modules/_object-keys.js");

module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? Object.defineProperties : function defineProperties(O, Properties) {
  anObject(O);
  var keys = getKeys(Properties);
  var length = keys.length;
  var i = 0;
  var P;
  while (length > i) dP.f(O, P = keys[i++], Properties[P]);
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-gpo.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_object-gpo.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/modules/_to-object.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/modules/_shared-key.js")('IE_PROTO');
var ObjectProto = Object.prototype;

module.exports = Object.getPrototypeOf || function (O) {
  O = toObject(O);
  if (has(O, IE_PROTO)) return O[IE_PROTO];
  if (typeof O.constructor == 'function' && O instanceof O.constructor) {
    return O.constructor.prototype;
  } return O instanceof Object ? ObjectProto : null;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-keys-internal.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_object-keys-internal.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/modules/_to-iobject.js");
var arrayIndexOf = __webpack_require__(/*! ./_array-includes */ "../node_modules/core-js/modules/_array-includes.js")(false);
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/modules/_shared-key.js")('IE_PROTO');

module.exports = function (object, names) {
  var O = toIObject(object);
  var i = 0;
  var result = [];
  var key;
  for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);
  // Don't enum bug & hidden keys
  while (names.length > i) if (has(O, key = names[i++])) {
    ~arrayIndexOf(result, key) || result.push(key);
  }
  return result;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-keys.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_object-keys.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.14 / 15.2.3.14 Object.keys(O)
var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/modules/_object-keys-internal.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/modules/_enum-bug-keys.js");

module.exports = Object.keys || function keys(O) {
  return $keys(O, enumBugKeys);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_property-desc.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_property-desc.js ***!
  \*********************************************************/
/***/ ((module) => {

module.exports = function (bitmap, value) {
  return {
    enumerable: !(bitmap & 1),
    configurable: !(bitmap & 2),
    writable: !(bitmap & 4),
    value: value
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_redefine.js":
/*!****************************************************!*\
  !*** ../node_modules/core-js/modules/_redefine.js ***!
  \****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var SRC = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/modules/_uid.js")('src');
var $toString = __webpack_require__(/*! ./_function-to-string */ "../node_modules/core-js/modules/_function-to-string.js");
var TO_STRING = 'toString';
var TPL = ('' + $toString).split(TO_STRING);

__webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js").inspectSource = function (it) {
  return $toString.call(it);
};

(module.exports = function (O, key, val, safe) {
  var isFunction = typeof val == 'function';
  if (isFunction) has(val, 'name') || hide(val, 'name', key);
  if (O[key] === val) return;
  if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));
  if (O === global) {
    O[key] = val;
  } else if (!safe) {
    delete O[key];
    hide(O, key, val);
  } else if (O[key]) {
    O[key] = val;
  } else {
    hide(O, key, val);
  }
// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
})(Function.prototype, TO_STRING, function toString() {
  return typeof this == 'function' && this[SRC] || $toString.call(this);
});


/***/ }),

/***/ "../node_modules/core-js/modules/_regexp-exec-abstract.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_regexp-exec-abstract.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/modules/_classof.js");
var builtinExec = RegExp.prototype.exec;

 // `RegExpExec` abstract operation
// https://tc39.github.io/ecma262/#sec-regexpexec
module.exports = function (R, S) {
  var exec = R.exec;
  if (typeof exec === 'function') {
    var result = exec.call(R, S);
    if (typeof result !== 'object') {
      throw new TypeError('RegExp exec method returned something other than an Object or null');
    }
    return result;
  }
  if (classof(R) !== 'RegExp') {
    throw new TypeError('RegExp#exec called on incompatible receiver');
  }
  return builtinExec.call(R, S);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_regexp-exec.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_regexp-exec.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var regexpFlags = __webpack_require__(/*! ./_flags */ "../node_modules/core-js/modules/_flags.js");

var nativeExec = RegExp.prototype.exec;
// This always refers to the native implementation, because the
// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,
// which loads this file before patching the method.
var nativeReplace = String.prototype.replace;

var patchedExec = nativeExec;

var LAST_INDEX = 'lastIndex';

var UPDATES_LAST_INDEX_WRONG = (function () {
  var re1 = /a/,
      re2 = /b*/g;
  nativeExec.call(re1, 'a');
  nativeExec.call(re2, 'a');
  return re1[LAST_INDEX] !== 0 || re2[LAST_INDEX] !== 0;
})();

// nonparticipating capturing group, copied from es5-shim's String#split patch.
var NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;

var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED;

if (PATCH) {
  patchedExec = function exec(str) {
    var re = this;
    var lastIndex, reCopy, match, i;

    if (NPCG_INCLUDED) {
      reCopy = new RegExp('^' + re.source + '$(?!\\s)', regexpFlags.call(re));
    }
    if (UPDATES_LAST_INDEX_WRONG) lastIndex = re[LAST_INDEX];

    match = nativeExec.call(re, str);

    if (UPDATES_LAST_INDEX_WRONG && match) {
      re[LAST_INDEX] = re.global ? match.index + match[0].length : lastIndex;
    }
    if (NPCG_INCLUDED && match && match.length > 1) {
      // Fix browsers whose `exec` methods don't consistently return `undefined`
      // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/
      // eslint-disable-next-line no-loop-func
      nativeReplace.call(match[0], reCopy, function () {
        for (i = 1; i < arguments.length - 2; i++) {
          if (arguments[i] === undefined) match[i] = undefined;
        }
      });
    }

    return match;
  };
}

module.exports = patchedExec;


/***/ }),

/***/ "../node_modules/core-js/modules/_same-value.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_same-value.js ***!
  \******************************************************/
/***/ ((module) => {

// 7.2.9 SameValue(x, y)
module.exports = Object.is || function is(x, y) {
  // eslint-disable-next-line no-self-compare
  return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_set-to-string-tag.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/_set-to-string-tag.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var def = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js").f;
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('toStringTag');

module.exports = function (it, tag, stat) {
  if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });
};


/***/ }),

/***/ "../node_modules/core-js/modules/_shared-key.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_shared-key.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var shared = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/modules/_shared.js")('keys');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/modules/_uid.js");
module.exports = function (key) {
  return shared[key] || (shared[key] = uid(key));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_shared.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_shared.js ***!
  \**************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var SHARED = '__core-js_shared__';
var store = global[SHARED] || (global[SHARED] = {});

(module.exports = function (key, value) {
  return store[key] || (store[key] = value !== undefined ? value : {});
})('versions', []).push({
  version: core.version,
  mode: __webpack_require__(/*! ./_library */ "../node_modules/core-js/modules/_library.js") ? 'pure' : 'global',
  copyright: '© 2020 Denis Pushkarev (zloirock.ru)'
});


/***/ }),

/***/ "../node_modules/core-js/modules/_species-constructor.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/modules/_species-constructor.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.3.20 SpeciesConstructor(O, defaultConstructor)
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/modules/_a-function.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('species');
module.exports = function (O, D) {
  var C = anObject(O).constructor;
  var S;
  return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_strict-method.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_strict-method.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js");

module.exports = function (method, arg) {
  return !!method && fails(function () {
    // eslint-disable-next-line no-useless-call
    arg ? method.call(null, function () { /* empty */ }, 1) : method.call(null);
  });
};


/***/ }),

/***/ "../node_modules/core-js/modules/_string-at.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_string-at.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
// true  -> String#at
// false -> String#codePointAt
module.exports = function (TO_STRING) {
  return function (that, pos) {
    var s = String(defined(that));
    var i = toInteger(pos);
    var l = s.length;
    var a, b;
    if (i < 0 || i >= l) return TO_STRING ? '' : undefined;
    a = s.charCodeAt(i);
    return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
      ? TO_STRING ? s.charAt(i) : a
      : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_string-context.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/_string-context.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// helper for String#{startsWith, endsWith, includes}
var isRegExp = __webpack_require__(/*! ./_is-regexp */ "../node_modules/core-js/modules/_is-regexp.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");

module.exports = function (that, searchString, NAME) {
  if (isRegExp(searchString)) throw TypeError('String#' + NAME + " doesn't accept regex!");
  return String(defined(that));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-absolute-index.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/_to-absolute-index.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var max = Math.max;
var min = Math.min;
module.exports = function (index, length) {
  index = toInteger(index);
  return index < 0 ? max(index + length, 0) : min(index, length);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-integer.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_to-integer.js ***!
  \******************************************************/
/***/ ((module) => {

// 7.1.4 ToInteger
var ceil = Math.ceil;
var floor = Math.floor;
module.exports = function (it) {
  return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-iobject.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_to-iobject.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// to indexed object, toObject with fallback for non-array-like ES3 strings
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/modules/_iobject.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
module.exports = function (it) {
  return IObject(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-length.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_to-length.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.15 ToLength
var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var min = Math.min;
module.exports = function (it) {
  return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_to-object.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.13 ToObject(argument)
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
module.exports = function (it) {
  return Object(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-primitive.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/modules/_to-primitive.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.1 ToPrimitive(input [, PreferredType])
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
// instead of the ES6 spec version, we didn't implement @@toPrimitive case
// and the second argument - flag - preferred type is a string
module.exports = function (it, S) {
  if (!isObject(it)) return it;
  var fn, val;
  if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
  if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  throw TypeError("Can't convert object to primitive value");
};


/***/ }),

/***/ "../node_modules/core-js/modules/_uid.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_uid.js ***!
  \***********************************************/
/***/ ((module) => {

var id = 0;
var px = Math.random();
module.exports = function (key) {
  return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_wks.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_wks.js ***!
  \***********************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var store = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/modules/_shared.js")('wks');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/modules/_uid.js");
var Symbol = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js").Symbol;
var USE_SYMBOL = typeof Symbol == 'function';

var $exports = module.exports = function (name) {
  return store[name] || (store[name] =
    USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
};

$exports.store = store;


/***/ }),

/***/ "../node_modules/core-js/modules/es6.array.filter.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.array.filter.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var $filter = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/modules/_array-methods.js")(2);

$export($export.P + $export.F * !__webpack_require__(/*! ./_strict-method */ "../node_modules/core-js/modules/_strict-method.js")([].filter, true), 'Array', {
  // 22.1.3.7 / 15.4.4.20 Array.prototype.filter(callbackfn [, thisArg])
  filter: function filter(callbackfn /* , thisArg */) {
    return $filter(this, callbackfn, arguments[1]);
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.array.find.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.array.find.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 22.1.3.8 Array.prototype.find(predicate, thisArg = undefined)
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var $find = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/modules/_array-methods.js")(5);
var KEY = 'find';
var forced = true;
// Shouldn't skip holes
if (KEY in []) Array(1)[KEY](function () { forced = false; });
$export($export.P + $export.F * forced, 'Array', {
  find: function find(callbackfn /* , that = undefined */) {
    return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
  }
});
__webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/modules/_add-to-unscopables.js")(KEY);


/***/ }),

/***/ "../node_modules/core-js/modules/es6.array.iterator.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.array.iterator.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var addToUnscopables = __webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/modules/_add-to-unscopables.js");
var step = __webpack_require__(/*! ./_iter-step */ "../node_modules/core-js/modules/_iter-step.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/modules/_iterators.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/modules/_to-iobject.js");

// 22.1.3.4 Array.prototype.entries()
// 22.1.3.13 Array.prototype.keys()
// 22.1.3.29 Array.prototype.values()
// 22.1.3.30 Array.prototype[@@iterator]()
module.exports = __webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/modules/_iter-define.js")(Array, 'Array', function (iterated, kind) {
  this._t = toIObject(iterated); // target
  this._i = 0;                   // next index
  this._k = kind;                // kind
// 22.1.5.2.1 %ArrayIteratorPrototype%.next()
}, function () {
  var O = this._t;
  var kind = this._k;
  var index = this._i++;
  if (!O || index >= O.length) {
    this._t = undefined;
    return step(1);
  }
  if (kind == 'keys') return step(0, index);
  if (kind == 'values') return step(0, O[index]);
  return step(0, [index, O[index]]);
}, 'values');

// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
Iterators.Arguments = Iterators.Array;

addToUnscopables('keys');
addToUnscopables('values');
addToUnscopables('entries');


/***/ }),

/***/ "../node_modules/core-js/modules/es6.array.map.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.array.map.js ***!
  \********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var $map = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/modules/_array-methods.js")(1);

$export($export.P + $export.F * !__webpack_require__(/*! ./_strict-method */ "../node_modules/core-js/modules/_strict-method.js")([].map, true), 'Array', {
  // 22.1.3.15 / 15.4.4.19 Array.prototype.map(callbackfn [, thisArg])
  map: function map(callbackfn /* , thisArg */) {
    return $map(this, callbackfn, arguments[1]);
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.object.to-string.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.object.to-string.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 19.1.3.6 Object.prototype.toString()
var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/modules/_classof.js");
var test = {};
test[__webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('toStringTag')] = 'z';
if (test + '' != '[object z]') {
  __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js")(Object.prototype, 'toString', function toString() {
    return '[object ' + classof(this) + ']';
  }, true);
}


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.exec.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.exec.js ***!
  \**********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var regexpExec = __webpack_require__(/*! ./_regexp-exec */ "../node_modules/core-js/modules/_regexp-exec.js");
__webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js")({
  target: 'RegExp',
  proto: true,
  forced: regexpExec !== /./.exec
}, {
  exec: regexpExec
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.flags.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.flags.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 21.2.5.3 get RegExp.prototype.flags()
if (__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") && /./g.flags != 'g') __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js").f(RegExp.prototype, 'flags', {
  configurable: true,
  get: __webpack_require__(/*! ./_flags */ "../node_modules/core-js/modules/_flags.js")
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.match.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.match.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var advanceStringIndex = __webpack_require__(/*! ./_advance-string-index */ "../node_modules/core-js/modules/_advance-string-index.js");
var regExpExec = __webpack_require__(/*! ./_regexp-exec-abstract */ "../node_modules/core-js/modules/_regexp-exec-abstract.js");

// @@match logic
__webpack_require__(/*! ./_fix-re-wks */ "../node_modules/core-js/modules/_fix-re-wks.js")('match', 1, function (defined, MATCH, $match, maybeCallNative) {
  return [
    // `String.prototype.match` method
    // https://tc39.github.io/ecma262/#sec-string.prototype.match
    function match(regexp) {
      var O = defined(this);
      var fn = regexp == undefined ? undefined : regexp[MATCH];
      return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));
    },
    // `RegExp.prototype[@@match]` method
    // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match
    function (regexp) {
      var res = maybeCallNative($match, regexp, this);
      if (res.done) return res.value;
      var rx = anObject(regexp);
      var S = String(this);
      if (!rx.global) return regExpExec(rx, S);
      var fullUnicode = rx.unicode;
      rx.lastIndex = 0;
      var A = [];
      var n = 0;
      var result;
      while ((result = regExpExec(rx, S)) !== null) {
        var matchStr = String(result[0]);
        A[n] = matchStr;
        if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
        n++;
      }
      return n === 0 ? null : A;
    }
  ];
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.replace.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.replace.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/modules/_to-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var advanceStringIndex = __webpack_require__(/*! ./_advance-string-index */ "../node_modules/core-js/modules/_advance-string-index.js");
var regExpExec = __webpack_require__(/*! ./_regexp-exec-abstract */ "../node_modules/core-js/modules/_regexp-exec-abstract.js");
var max = Math.max;
var min = Math.min;
var floor = Math.floor;
var SUBSTITUTION_SYMBOLS = /\$([$&`']|\d\d?|<[^>]*>)/g;
var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&`']|\d\d?)/g;

var maybeToString = function (it) {
  return it === undefined ? it : String(it);
};

// @@replace logic
__webpack_require__(/*! ./_fix-re-wks */ "../node_modules/core-js/modules/_fix-re-wks.js")('replace', 2, function (defined, REPLACE, $replace, maybeCallNative) {
  return [
    // `String.prototype.replace` method
    // https://tc39.github.io/ecma262/#sec-string.prototype.replace
    function replace(searchValue, replaceValue) {
      var O = defined(this);
      var fn = searchValue == undefined ? undefined : searchValue[REPLACE];
      return fn !== undefined
        ? fn.call(searchValue, O, replaceValue)
        : $replace.call(String(O), searchValue, replaceValue);
    },
    // `RegExp.prototype[@@replace]` method
    // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace
    function (regexp, replaceValue) {
      var res = maybeCallNative($replace, regexp, this, replaceValue);
      if (res.done) return res.value;

      var rx = anObject(regexp);
      var S = String(this);
      var functionalReplace = typeof replaceValue === 'function';
      if (!functionalReplace) replaceValue = String(replaceValue);
      var global = rx.global;
      if (global) {
        var fullUnicode = rx.unicode;
        rx.lastIndex = 0;
      }
      var results = [];
      while (true) {
        var result = regExpExec(rx, S);
        if (result === null) break;
        results.push(result);
        if (!global) break;
        var matchStr = String(result[0]);
        if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
      }
      var accumulatedResult = '';
      var nextSourcePosition = 0;
      for (var i = 0; i < results.length; i++) {
        result = results[i];
        var matched = String(result[0]);
        var position = max(min(toInteger(result.index), S.length), 0);
        var captures = [];
        // NOTE: This is equivalent to
        //   captures = result.slice(1).map(maybeToString)
        // but for some reason `nativeSlice.call(result, 1, result.length)` (called in
        // the slice polyfill when slicing native arrays) "doesn't work" in safari 9 and
        // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.
        for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));
        var namedCaptures = result.groups;
        if (functionalReplace) {
          var replacerArgs = [matched].concat(captures, position, S);
          if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);
          var replacement = String(replaceValue.apply(undefined, replacerArgs));
        } else {
          replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);
        }
        if (position >= nextSourcePosition) {
          accumulatedResult += S.slice(nextSourcePosition, position) + replacement;
          nextSourcePosition = position + matched.length;
        }
      }
      return accumulatedResult + S.slice(nextSourcePosition);
    }
  ];

    // https://tc39.github.io/ecma262/#sec-getsubstitution
  function getSubstitution(matched, str, position, captures, namedCaptures, replacement) {
    var tailPos = position + matched.length;
    var m = captures.length;
    var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;
    if (namedCaptures !== undefined) {
      namedCaptures = toObject(namedCaptures);
      symbols = SUBSTITUTION_SYMBOLS;
    }
    return $replace.call(replacement, symbols, function (match, ch) {
      var capture;
      switch (ch.charAt(0)) {
        case '$': return '$';
        case '&': return matched;
        case '`': return str.slice(0, position);
        case "'": return str.slice(tailPos);
        case '<':
          capture = namedCaptures[ch.slice(1, -1)];
          break;
        default: // \d\d?
          var n = +ch;
          if (n === 0) return match;
          if (n > m) {
            var f = floor(n / 10);
            if (f === 0) return match;
            if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);
            return match;
          }
          capture = captures[n - 1];
      }
      return capture === undefined ? '' : capture;
    });
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.search.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.search.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var sameValue = __webpack_require__(/*! ./_same-value */ "../node_modules/core-js/modules/_same-value.js");
var regExpExec = __webpack_require__(/*! ./_regexp-exec-abstract */ "../node_modules/core-js/modules/_regexp-exec-abstract.js");

// @@search logic
__webpack_require__(/*! ./_fix-re-wks */ "../node_modules/core-js/modules/_fix-re-wks.js")('search', 1, function (defined, SEARCH, $search, maybeCallNative) {
  return [
    // `String.prototype.search` method
    // https://tc39.github.io/ecma262/#sec-string.prototype.search
    function search(regexp) {
      var O = defined(this);
      var fn = regexp == undefined ? undefined : regexp[SEARCH];
      return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[SEARCH](String(O));
    },
    // `RegExp.prototype[@@search]` method
    // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@search
    function (regexp) {
      var res = maybeCallNative($search, regexp, this);
      if (res.done) return res.value;
      var rx = anObject(regexp);
      var S = String(this);
      var previousLastIndex = rx.lastIndex;
      if (!sameValue(previousLastIndex, 0)) rx.lastIndex = 0;
      var result = regExpExec(rx, S);
      if (!sameValue(rx.lastIndex, previousLastIndex)) rx.lastIndex = previousLastIndex;
      return result === null ? -1 : result.index;
    }
  ];
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.split.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.split.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var isRegExp = __webpack_require__(/*! ./_is-regexp */ "../node_modules/core-js/modules/_is-regexp.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var speciesConstructor = __webpack_require__(/*! ./_species-constructor */ "../node_modules/core-js/modules/_species-constructor.js");
var advanceStringIndex = __webpack_require__(/*! ./_advance-string-index */ "../node_modules/core-js/modules/_advance-string-index.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var callRegExpExec = __webpack_require__(/*! ./_regexp-exec-abstract */ "../node_modules/core-js/modules/_regexp-exec-abstract.js");
var regexpExec = __webpack_require__(/*! ./_regexp-exec */ "../node_modules/core-js/modules/_regexp-exec.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js");
var $min = Math.min;
var $push = [].push;
var $SPLIT = 'split';
var LENGTH = 'length';
var LAST_INDEX = 'lastIndex';
var MAX_UINT32 = 0xffffffff;

// babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError
var SUPPORTS_Y = !fails(function () { RegExp(MAX_UINT32, 'y'); });

// @@split logic
__webpack_require__(/*! ./_fix-re-wks */ "../node_modules/core-js/modules/_fix-re-wks.js")('split', 2, function (defined, SPLIT, $split, maybeCallNative) {
  var internalSplit;
  if (
    'abbc'[$SPLIT](/(b)*/)[1] == 'c' ||
    'test'[$SPLIT](/(?:)/, -1)[LENGTH] != 4 ||
    'ab'[$SPLIT](/(?:ab)*/)[LENGTH] != 2 ||
    '.'[$SPLIT](/(.?)(.?)/)[LENGTH] != 4 ||
    '.'[$SPLIT](/()()/)[LENGTH] > 1 ||
    ''[$SPLIT](/.?/)[LENGTH]
  ) {
    // based on es5-shim implementation, need to rework it
    internalSplit = function (separator, limit) {
      var string = String(this);
      if (separator === undefined && limit === 0) return [];
      // If `separator` is not a regex, use native split
      if (!isRegExp(separator)) return $split.call(string, separator, limit);
      var output = [];
      var flags = (separator.ignoreCase ? 'i' : '') +
                  (separator.multiline ? 'm' : '') +
                  (separator.unicode ? 'u' : '') +
                  (separator.sticky ? 'y' : '');
      var lastLastIndex = 0;
      var splitLimit = limit === undefined ? MAX_UINT32 : limit >>> 0;
      // Make `global` and avoid `lastIndex` issues by working with a copy
      var separatorCopy = new RegExp(separator.source, flags + 'g');
      var match, lastIndex, lastLength;
      while (match = regexpExec.call(separatorCopy, string)) {
        lastIndex = separatorCopy[LAST_INDEX];
        if (lastIndex > lastLastIndex) {
          output.push(string.slice(lastLastIndex, match.index));
          if (match[LENGTH] > 1 && match.index < string[LENGTH]) $push.apply(output, match.slice(1));
          lastLength = match[0][LENGTH];
          lastLastIndex = lastIndex;
          if (output[LENGTH] >= splitLimit) break;
        }
        if (separatorCopy[LAST_INDEX] === match.index) separatorCopy[LAST_INDEX]++; // Avoid an infinite loop
      }
      if (lastLastIndex === string[LENGTH]) {
        if (lastLength || !separatorCopy.test('')) output.push('');
      } else output.push(string.slice(lastLastIndex));
      return output[LENGTH] > splitLimit ? output.slice(0, splitLimit) : output;
    };
  // Chakra, V8
  } else if ('0'[$SPLIT](undefined, 0)[LENGTH]) {
    internalSplit = function (separator, limit) {
      return separator === undefined && limit === 0 ? [] : $split.call(this, separator, limit);
    };
  } else {
    internalSplit = $split;
  }

  return [
    // `String.prototype.split` method
    // https://tc39.github.io/ecma262/#sec-string.prototype.split
    function split(separator, limit) {
      var O = defined(this);
      var splitter = separator == undefined ? undefined : separator[SPLIT];
      return splitter !== undefined
        ? splitter.call(separator, O, limit)
        : internalSplit.call(String(O), separator, limit);
    },
    // `RegExp.prototype[@@split]` method
    // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@split
    //
    // NOTE: This cannot be properly polyfilled in engines that don't support
    // the 'y' flag.
    function (regexp, limit) {
      var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== $split);
      if (res.done) return res.value;

      var rx = anObject(regexp);
      var S = String(this);
      var C = speciesConstructor(rx, RegExp);

      var unicodeMatching = rx.unicode;
      var flags = (rx.ignoreCase ? 'i' : '') +
                  (rx.multiline ? 'm' : '') +
                  (rx.unicode ? 'u' : '') +
                  (SUPPORTS_Y ? 'y' : 'g');

      // ^(? + rx + ) is needed, in combination with some S slicing, to
      // simulate the 'y' flag.
      var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags);
      var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;
      if (lim === 0) return [];
      if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];
      var p = 0;
      var q = 0;
      var A = [];
      while (q < S.length) {
        splitter.lastIndex = SUPPORTS_Y ? q : 0;
        var z = callRegExpExec(splitter, SUPPORTS_Y ? S : S.slice(q));
        var e;
        if (
          z === null ||
          (e = $min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p
        ) {
          q = advanceStringIndex(S, q, unicodeMatching);
        } else {
          A.push(S.slice(p, q));
          if (A.length === lim) return A;
          for (var i = 1; i <= z.length - 1; i++) {
            A.push(z[i]);
            if (A.length === lim) return A;
          }
          q = p = e;
        }
      }
      A.push(S.slice(p));
      return A;
    }
  ];
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.to-string.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.to-string.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

__webpack_require__(/*! ./es6.regexp.flags */ "../node_modules/core-js/modules/es6.regexp.flags.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var $flags = __webpack_require__(/*! ./_flags */ "../node_modules/core-js/modules/_flags.js");
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js");
var TO_STRING = 'toString';
var $toString = /./[TO_STRING];

var define = function (fn) {
  __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js")(RegExp.prototype, TO_STRING, fn, true);
};

// 21.2.5.14 RegExp.prototype.toString()
if (__webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () { return $toString.call({ source: 'a', flags: 'b' }) != '/a/b'; })) {
  define(function toString() {
    var R = anObject(this);
    return '/'.concat(R.source, '/',
      'flags' in R ? R.flags : !DESCRIPTORS && R instanceof RegExp ? $flags.call(R) : undefined);
  });
// FF44- RegExp#toString has a wrong name
} else if ($toString.name != TO_STRING) {
  define(function toString() {
    return $toString.call(this);
  });
}


/***/ }),

/***/ "../node_modules/core-js/modules/es6.string.includes.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.string.includes.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
// 21.1.3.7 String.prototype.includes(searchString, position = 0)

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var context = __webpack_require__(/*! ./_string-context */ "../node_modules/core-js/modules/_string-context.js");
var INCLUDES = 'includes';

$export($export.P + $export.F * __webpack_require__(/*! ./_fails-is-regexp */ "../node_modules/core-js/modules/_fails-is-regexp.js")(INCLUDES), 'String', {
  includes: function includes(searchString /* , position = 0 */) {
    return !!~context(this, searchString, INCLUDES)
      .indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined);
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es7.array.includes.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/es7.array.includes.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// https://github.com/tc39/Array.prototype.includes
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var $includes = __webpack_require__(/*! ./_array-includes */ "../node_modules/core-js/modules/_array-includes.js")(true);

$export($export.P, 'Array', {
  includes: function includes(el /* , fromIndex = 0 */) {
    return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);
  }
});

__webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/modules/_add-to-unscopables.js")('includes');


/***/ }),

/***/ "../node_modules/core-js/modules/web.dom.iterable.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/web.dom.iterable.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $iterators = __webpack_require__(/*! ./es6.array.iterator */ "../node_modules/core-js/modules/es6.array.iterator.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/modules/_object-keys.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/modules/_iterators.js");
var wks = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js");
var ITERATOR = wks('iterator');
var TO_STRING_TAG = wks('toStringTag');
var ArrayValues = Iterators.Array;

var DOMIterables = {
  CSSRuleList: true, // TODO: Not spec compliant, should be false.
  CSSStyleDeclaration: false,
  CSSValueList: false,
  ClientRectList: false,
  DOMRectList: false,
  DOMStringList: false,
  DOMTokenList: true,
  DataTransferItemList: false,
  FileList: false,
  HTMLAllCollection: false,
  HTMLCollection: false,
  HTMLFormElement: false,
  HTMLSelectElement: false,
  MediaList: true, // TODO: Not spec compliant, should be false.
  MimeTypeArray: false,
  NamedNodeMap: false,
  NodeList: true,
  PaintRequestList: false,
  Plugin: false,
  PluginArray: false,
  SVGLengthList: false,
  SVGNumberList: false,
  SVGPathSegList: false,
  SVGPointList: false,
  SVGStringList: false,
  SVGTransformList: false,
  SourceBufferList: false,
  StyleSheetList: true, // TODO: Not spec compliant, should be false.
  TextTrackCueList: false,
  TextTrackList: false,
  TouchList: false
};

for (var collections = getKeys(DOMIterables), i = 0; i < collections.length; i++) {
  var NAME = collections[i];
  var explicit = DOMIterables[NAME];
  var Collection = global[NAME];
  var proto = Collection && Collection.prototype;
  var key;
  if (proto) {
    if (!proto[ITERATOR]) hide(proto, ITERATOR, ArrayValues);
    if (!proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);
    Iterators[NAME] = ArrayValues;
    if (explicit) for (key in $iterators) if (!proto[key]) redefine(proto, key, $iterators[key], true);
  }
}


/***/ }),

/***/ "../node_modules/create-react-context/lib/implementation.js":
/*!******************************************************************!*\
  !*** ../node_modules/create-react-context/lib/implementation.js ***!
  \******************************************************************/
/***/ ((module, exports, __webpack_require__) => {

"use strict";


exports.__esModule = true;

var _react = __webpack_require__(/*! react */ "react");

var _react2 = _interopRequireDefault(_react);

var _propTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");

var _propTypes2 = _interopRequireDefault(_propTypes);

var _gud = __webpack_require__(/*! gud */ "../node_modules/gud/index.js");

var _gud2 = _interopRequireDefault(_gud);

var _warning = __webpack_require__(/*! warning */ "../node_modules/warning/warning.js");

var _warning2 = _interopRequireDefault(_warning);

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }

function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }

function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }

var MAX_SIGNED_31_BIT_INT = 1073741823;

// Inlined Object.is polyfill.
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is
function objectIs(x, y) {
  if (x === y) {
    return x !== 0 || 1 / x === 1 / y;
  } else {
    return x !== x && y !== y;
  }
}

function createEventEmitter(value) {
  var handlers = [];
  return {
    on: function on(handler) {
      handlers.push(handler);
    },
    off: function off(handler) {
      handlers = handlers.filter(function (h) {
        return h !== handler;
      });
    },
    get: function get() {
      return value;
    },
    set: function set(newValue, changedBits) {
      value = newValue;
      handlers.forEach(function (handler) {
        return handler(value, changedBits);
      });
    }
  };
}

function onlyChild(children) {
  return Array.isArray(children) ? children[0] : children;
}

function createReactContext(defaultValue, calculateChangedBits) {
  var _Provider$childContex, _Consumer$contextType;

  var contextProp = '__create-react-context-' + (0, _gud2.default)() + '__';

  var Provider = function (_Component) {
    _inherits(Provider, _Component);

    function Provider() {
      var _temp, _this, _ret;

      _classCallCheck(this, Provider);

      for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
        args[_key] = arguments[_key];
      }

      return _ret = (_temp = (_this = _possibleConstructorReturn(this, _Component.call.apply(_Component, [this].concat(args))), _this), _this.emitter = createEventEmitter(_this.props.value), _temp), _possibleConstructorReturn(_this, _ret);
    }

    Provider.prototype.getChildContext = function getChildContext() {
      var _ref;

      return _ref = {}, _ref[contextProp] = this.emitter, _ref;
    };

    Provider.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {
      if (this.props.value !== nextProps.value) {
        var oldValue = this.props.value;
        var newValue = nextProps.value;
        var changedBits = void 0;

        if (objectIs(oldValue, newValue)) {
          changedBits = 0; // No change
        } else {
          changedBits = typeof calculateChangedBits === 'function' ? calculateChangedBits(oldValue, newValue) : MAX_SIGNED_31_BIT_INT;
          if (true) {
            (0, _warning2.default)((changedBits & MAX_SIGNED_31_BIT_INT) === changedBits, 'calculateChangedBits: Expected the return value to be a ' + '31-bit integer. Instead received: %s', changedBits);
          }

          changedBits |= 0;

          if (changedBits !== 0) {
            this.emitter.set(nextProps.value, changedBits);
          }
        }
      }
    };

    Provider.prototype.render = function render() {
      return this.props.children;
    };

    return Provider;
  }(_react.Component);

  Provider.childContextTypes = (_Provider$childContex = {}, _Provider$childContex[contextProp] = _propTypes2.default.object.isRequired, _Provider$childContex);

  var Consumer = function (_Component2) {
    _inherits(Consumer, _Component2);

    function Consumer() {
      var _temp2, _this2, _ret2;

      _classCallCheck(this, Consumer);

      for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
        args[_key2] = arguments[_key2];
      }

      return _ret2 = (_temp2 = (_this2 = _possibleConstructorReturn(this, _Component2.call.apply(_Component2, [this].concat(args))), _this2), _this2.state = {
        value: _this2.getValue()
      }, _this2.onUpdate = function (newValue, changedBits) {
        var observedBits = _this2.observedBits | 0;
        if ((observedBits & changedBits) !== 0) {
          _this2.setState({ value: _this2.getValue() });
        }
      }, _temp2), _possibleConstructorReturn(_this2, _ret2);
    }

    Consumer.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {
      var observedBits = nextProps.observedBits;

      this.observedBits = observedBits === undefined || observedBits === null ? MAX_SIGNED_31_BIT_INT // Subscribe to all changes by default
      : observedBits;
    };

    Consumer.prototype.componentDidMount = function componentDidMount() {
      if (this.context[contextProp]) {
        this.context[contextProp].on(this.onUpdate);
      }
      var observedBits = this.props.observedBits;

      this.observedBits = observedBits === undefined || observedBits === null ? MAX_SIGNED_31_BIT_INT // Subscribe to all changes by default
      : observedBits;
    };

    Consumer.prototype.componentWillUnmount = function componentWillUnmount() {
      if (this.context[contextProp]) {
        this.context[contextProp].off(this.onUpdate);
      }
    };

    Consumer.prototype.getValue = function getValue() {
      if (this.context[contextProp]) {
        return this.context[contextProp].get();
      } else {
        return defaultValue;
      }
    };

    Consumer.prototype.render = function render() {
      return onlyChild(this.props.children)(this.state.value);
    };

    return Consumer;
  }(_react.Component);

  Consumer.contextTypes = (_Consumer$contextType = {}, _Consumer$contextType[contextProp] = _propTypes2.default.object, _Consumer$contextType);


  return {
    Provider: Provider,
    Consumer: Consumer
  };
}

exports.default = createReactContext;
module.exports = exports['default'];

/***/ }),

/***/ "../node_modules/create-react-context/lib/index.js":
/*!*********************************************************!*\
  !*** ../node_modules/create-react-context/lib/index.js ***!
  \*********************************************************/
/***/ ((module, exports, __webpack_require__) => {

"use strict";


exports.__esModule = true;

var _react = __webpack_require__(/*! react */ "react");

var _react2 = _interopRequireDefault(_react);

var _implementation = __webpack_require__(/*! ./implementation */ "../node_modules/create-react-context/lib/implementation.js");

var _implementation2 = _interopRequireDefault(_implementation);

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

exports.default = _react2.default.createContext || _implementation2.default;
module.exports = exports['default'];

/***/ }),

/***/ "../node_modules/gud/index.js":
/*!************************************!*\
  !*** ../node_modules/gud/index.js ***!
  \************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
// @flow


var key = '__global_unique_id__';

module.exports = function() {
  return __webpack_require__.g[key] = (__webpack_require__.g[key] || 0) + 1;
};


/***/ }),

/***/ "../node_modules/invariant/browser.js":
/*!********************************************!*\
  !*** ../node_modules/invariant/browser.js ***!
  \********************************************/
/***/ ((module) => {

"use strict";
/**
 * Copyright (c) 2013-present, Facebook, Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */



/**
 * Use invariant() to assert state which your program assumes to be true.
 *
 * Provide sprintf-style format (only %s is supported) and arguments
 * to provide information about what broke and what you were
 * expecting.
 *
 * The invariant message will be stripped in production, but the invariant
 * will remain to ensure logic does not differ in production.
 */

var invariant = function(condition, format, a, b, c, d, e, f) {
  if (true) {
    if (format === undefined) {
      throw new Error('invariant requires an error message argument');
    }
  }

  if (!condition) {
    var error;
    if (format === undefined) {
      error = new Error(
        'Minified exception occurred; use the non-minified dev environment ' +
        'for the full error message and additional helpful warnings.'
      );
    } else {
      var args = [a, b, c, d, e, f];
      var argIndex = 0;
      error = new Error(
        format.replace(/%s/g, function() { return args[argIndex++]; })
      );
      error.name = 'Invariant Violation';
    }

    error.framesToPop = 1; // we don't care about invariant's own frame
    throw error;
  }
};

module.exports = invariant;


/***/ }),

/***/ "../node_modules/object-assign/index.js":
/*!**********************************************!*\
  !*** ../node_modules/object-assign/index.js ***!
  \**********************************************/
/***/ ((module) => {

"use strict";
/*
object-assign
(c) Sindre Sorhus
@license MIT
*/


/* eslint-disable no-unused-vars */
var getOwnPropertySymbols = Object.getOwnPropertySymbols;
var hasOwnProperty = Object.prototype.hasOwnProperty;
var propIsEnumerable = Object.prototype.propertyIsEnumerable;

function toObject(val) {
	if (val === null || val === undefined) {
		throw new TypeError('Object.assign cannot be called with null or undefined');
	}

	return Object(val);
}

function shouldUseNative() {
	try {
		if (!Object.assign) {
			return false;
		}

		// Detect buggy property enumeration order in older V8 versions.

		// https://bugs.chromium.org/p/v8/issues/detail?id=4118
		var test1 = new String('abc');  // eslint-disable-line no-new-wrappers
		test1[5] = 'de';
		if (Object.getOwnPropertyNames(test1)[0] === '5') {
			return false;
		}

		// https://bugs.chromium.org/p/v8/issues/detail?id=3056
		var test2 = {};
		for (var i = 0; i < 10; i++) {
			test2['_' + String.fromCharCode(i)] = i;
		}
		var order2 = Object.getOwnPropertyNames(test2).map(function (n) {
			return test2[n];
		});
		if (order2.join('') !== '0123456789') {
			return false;
		}

		// https://bugs.chromium.org/p/v8/issues/detail?id=3056
		var test3 = {};
		'abcdefghijklmnopqrst'.split('').forEach(function (letter) {
			test3[letter] = letter;
		});
		if (Object.keys(Object.assign({}, test3)).join('') !==
				'abcdefghijklmnopqrst') {
			return false;
		}

		return true;
	} catch (err) {
		// We don't expect any of the above to throw, but better to be safe.
		return false;
	}
}

module.exports = shouldUseNative() ? Object.assign : function (target, source) {
	var from;
	var to = toObject(target);
	var symbols;

	for (var s = 1; s < arguments.length; s++) {
		from = Object(arguments[s]);

		for (var key in from) {
			if (hasOwnProperty.call(from, key)) {
				to[key] = from[key];
			}
		}

		if (getOwnPropertySymbols) {
			symbols = getOwnPropertySymbols(from);
			for (var i = 0; i < symbols.length; i++) {
				if (propIsEnumerable.call(from, symbols[i])) {
					to[symbols[i]] = from[symbols[i]];
				}
			}
		}
	}

	return to;
};


/***/ }),

/***/ "../node_modules/prop-types/checkPropTypes.js":
/*!****************************************************!*\
  !*** ../node_modules/prop-types/checkPropTypes.js ***!
  \****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/**
 * Copyright (c) 2013-present, Facebook, Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */



var printWarning = function() {};

if (true) {
  var ReactPropTypesSecret = __webpack_require__(/*! ./lib/ReactPropTypesSecret */ "../node_modules/prop-types/lib/ReactPropTypesSecret.js");
  var loggedTypeFailures = {};
  var has = Function.call.bind(Object.prototype.hasOwnProperty);

  printWarning = function(text) {
    var message = 'Warning: ' + text;
    if (typeof console !== 'undefined') {
      console.error(message);
    }
    try {
      // --- Welcome to debugging React ---
      // This error was thrown as a convenience so that you can use this stack
      // to find the callsite that caused this warning to fire.
      throw new Error(message);
    } catch (x) {}
  };
}

/**
 * Assert that the values match with the type specs.
 * Error messages are memorized and will only be shown once.
 *
 * @param {object} typeSpecs Map of name to a ReactPropType
 * @param {object} values Runtime values that need to be type-checked
 * @param {string} location e.g. "prop", "context", "child context"
 * @param {string} componentName Name of the component for error messages.
 * @param {?Function} getStack Returns the component stack.
 * @private
 */
function checkPropTypes(typeSpecs, values, location, componentName, getStack) {
  if (true) {
    for (var typeSpecName in typeSpecs) {
      if (has(typeSpecs, typeSpecName)) {
        var error;
        // Prop type validation may throw. In case they do, we don't want to
        // fail the render phase where it didn't fail before. So we log it.
        // After these have been cleaned up, we'll let them throw.
        try {
          // This is intentionally an invariant that gets caught. It's the same
          // behavior as without this statement except with a better message.
          if (typeof typeSpecs[typeSpecName] !== 'function') {
            var err = Error(
              (componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' +
              'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.'
            );
            err.name = 'Invariant Violation';
            throw err;
          }
          error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);
        } catch (ex) {
          error = ex;
        }
        if (error && !(error instanceof Error)) {
          printWarning(
            (componentName || 'React class') + ': type specification of ' +
            location + ' `' + typeSpecName + '` is invalid; the type checker ' +
            'function must return `null` or an `Error` but returned a ' + typeof error + '. ' +
            'You may have forgotten to pass an argument to the type checker ' +
            'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' +
            'shape all require an argument).'
          );
        }
        if (error instanceof Error && !(error.message in loggedTypeFailures)) {
          // Only monitor this failure once because there tends to be a lot of the
          // same error.
          loggedTypeFailures[error.message] = true;

          var stack = getStack ? getStack() : '';

          printWarning(
            'Failed ' + location + ' type: ' + error.message + (stack != null ? stack : '')
          );
        }
      }
    }
  }
}

/**
 * Resets warning cache when testing.
 *
 * @private
 */
checkPropTypes.resetWarningCache = function() {
  if (true) {
    loggedTypeFailures = {};
  }
}

module.exports = checkPropTypes;


/***/ }),

/***/ "../node_modules/prop-types/factoryWithTypeCheckers.js":
/*!*************************************************************!*\
  !*** ../node_modules/prop-types/factoryWithTypeCheckers.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/**
 * Copyright (c) 2013-present, Facebook, Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */



var ReactIs = __webpack_require__(/*! react-is */ "../node_modules/react-is/index.js");
var assign = __webpack_require__(/*! object-assign */ "../node_modules/object-assign/index.js");

var ReactPropTypesSecret = __webpack_require__(/*! ./lib/ReactPropTypesSecret */ "../node_modules/prop-types/lib/ReactPropTypesSecret.js");
var checkPropTypes = __webpack_require__(/*! ./checkPropTypes */ "../node_modules/prop-types/checkPropTypes.js");

var has = Function.call.bind(Object.prototype.hasOwnProperty);
var printWarning = function() {};

if (true) {
  printWarning = function(text) {
    var message = 'Warning: ' + text;
    if (typeof console !== 'undefined') {
      console.error(message);
    }
    try {
      // --- Welcome to debugging React ---
      // This error was thrown as a convenience so that you can use this stack
      // to find the callsite that caused this warning to fire.
      throw new Error(message);
    } catch (x) {}
  };
}

function emptyFunctionThatReturnsNull() {
  return null;
}

module.exports = function(isValidElement, throwOnDirectAccess) {
  /* global Symbol */
  var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;
  var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.

  /**
   * Returns the iterator method function contained on the iterable object.
   *
   * Be sure to invoke the function with the iterable as context:
   *
   *     var iteratorFn = getIteratorFn(myIterable);
   *     if (iteratorFn) {
   *       var iterator = iteratorFn.call(myIterable);
   *       ...
   *     }
   *
   * @param {?object} maybeIterable
   * @return {?function}
   */
  function getIteratorFn(maybeIterable) {
    var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);
    if (typeof iteratorFn === 'function') {
      return iteratorFn;
    }
  }

  /**
   * Collection of methods that allow declaration and validation of props that are
   * supplied to React components. Example usage:
   *
   *   var Props = require('ReactPropTypes');
   *   var MyArticle = React.createClass({
   *     propTypes: {
   *       // An optional string prop named "description".
   *       description: Props.string,
   *
   *       // A required enum prop named "category".
   *       category: Props.oneOf(['News','Photos']).isRequired,
   *
   *       // A prop named "dialog" that requires an instance of Dialog.
   *       dialog: Props.instanceOf(Dialog).isRequired
   *     },
   *     render: function() { ... }
   *   });
   *
   * A more formal specification of how these methods are used:
   *
   *   type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)
   *   decl := ReactPropTypes.{type}(.isRequired)?
   *
   * Each and every declaration produces a function with the same signature. This
   * allows the creation of custom validation functions. For example:
   *
   *  var MyLink = React.createClass({
   *    propTypes: {
   *      // An optional string or URI prop named "href".
   *      href: function(props, propName, componentName) {
   *        var propValue = props[propName];
   *        if (propValue != null && typeof propValue !== 'string' &&
   *            !(propValue instanceof URI)) {
   *          return new Error(
   *            'Expected a string or an URI for ' + propName + ' in ' +
   *            componentName
   *          );
   *        }
   *      }
   *    },
   *    render: function() {...}
   *  });
   *
   * @internal
   */

  var ANONYMOUS = '<<anonymous>>';

  // Important!
  // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.
  var ReactPropTypes = {
    array: createPrimitiveTypeChecker('array'),
    bool: createPrimitiveTypeChecker('boolean'),
    func: createPrimitiveTypeChecker('function'),
    number: createPrimitiveTypeChecker('number'),
    object: createPrimitiveTypeChecker('object'),
    string: createPrimitiveTypeChecker('string'),
    symbol: createPrimitiveTypeChecker('symbol'),

    any: createAnyTypeChecker(),
    arrayOf: createArrayOfTypeChecker,
    element: createElementTypeChecker(),
    elementType: createElementTypeTypeChecker(),
    instanceOf: createInstanceTypeChecker,
    node: createNodeChecker(),
    objectOf: createObjectOfTypeChecker,
    oneOf: createEnumTypeChecker,
    oneOfType: createUnionTypeChecker,
    shape: createShapeTypeChecker,
    exact: createStrictShapeTypeChecker,
  };

  /**
   * inlined Object.is polyfill to avoid requiring consumers ship their own
   * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is
   */
  /*eslint-disable no-self-compare*/
  function is(x, y) {
    // SameValue algorithm
    if (x === y) {
      // Steps 1-5, 7-10
      // Steps 6.b-6.e: +0 != -0
      return x !== 0 || 1 / x === 1 / y;
    } else {
      // Step 6.a: NaN == NaN
      return x !== x && y !== y;
    }
  }
  /*eslint-enable no-self-compare*/

  /**
   * We use an Error-like object for backward compatibility as people may call
   * PropTypes directly and inspect their output. However, we don't use real
   * Errors anymore. We don't inspect their stack anyway, and creating them
   * is prohibitively expensive if they are created too often, such as what
   * happens in oneOfType() for any type before the one that matched.
   */
  function PropTypeError(message) {
    this.message = message;
    this.stack = '';
  }
  // Make `instanceof Error` still work for returned errors.
  PropTypeError.prototype = Error.prototype;

  function createChainableTypeChecker(validate) {
    if (true) {
      var manualPropTypeCallCache = {};
      var manualPropTypeWarningCount = 0;
    }
    function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {
      componentName = componentName || ANONYMOUS;
      propFullName = propFullName || propName;

      if (secret !== ReactPropTypesSecret) {
        if (throwOnDirectAccess) {
          // New behavior only for users of `prop-types` package
          var err = new Error(
            'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +
            'Use `PropTypes.checkPropTypes()` to call them. ' +
            'Read more at http://fb.me/use-check-prop-types'
          );
          err.name = 'Invariant Violation';
          throw err;
        } else if ( true && typeof console !== 'undefined') {
          // Old behavior for people using React.PropTypes
          var cacheKey = componentName + ':' + propName;
          if (
            !manualPropTypeCallCache[cacheKey] &&
            // Avoid spamming the console because they are often not actionable except for lib authors
            manualPropTypeWarningCount < 3
          ) {
            printWarning(
              'You are manually calling a React.PropTypes validation ' +
              'function for the `' + propFullName + '` prop on `' + componentName  + '`. This is deprecated ' +
              'and will throw in the standalone `prop-types` package. ' +
              'You may be seeing this warning due to a third-party PropTypes ' +
              'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.'
            );
            manualPropTypeCallCache[cacheKey] = true;
            manualPropTypeWarningCount++;
          }
        }
      }
      if (props[propName] == null) {
        if (isRequired) {
          if (props[propName] === null) {
            return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));
          }
          return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));
        }
        return null;
      } else {
        return validate(props, propName, componentName, location, propFullName);
      }
    }

    var chainedCheckType = checkType.bind(null, false);
    chainedCheckType.isRequired = checkType.bind(null, true);

    return chainedCheckType;
  }

  function createPrimitiveTypeChecker(expectedType) {
    function validate(props, propName, componentName, location, propFullName, secret) {
      var propValue = props[propName];
      var propType = getPropType(propValue);
      if (propType !== expectedType) {
        // `propValue` being instance of, say, date/regexp, pass the 'object'
        // check, but we can offer a more precise error message here rather than
        // 'of type `object`'.
        var preciseType = getPreciseType(propValue);

        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'));
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createAnyTypeChecker() {
    return createChainableTypeChecker(emptyFunctionThatReturnsNull);
  }

  function createArrayOfTypeChecker(typeChecker) {
    function validate(props, propName, componentName, location, propFullName) {
      if (typeof typeChecker !== 'function') {
        return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');
      }
      var propValue = props[propName];
      if (!Array.isArray(propValue)) {
        var propType = getPropType(propValue);
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));
      }
      for (var i = 0; i < propValue.length; i++) {
        var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);
        if (error instanceof Error) {
          return error;
        }
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createElementTypeChecker() {
    function validate(props, propName, componentName, location, propFullName) {
      var propValue = props[propName];
      if (!isValidElement(propValue)) {
        var propType = getPropType(propValue);
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createElementTypeTypeChecker() {
    function validate(props, propName, componentName, location, propFullName) {
      var propValue = props[propName];
      if (!ReactIs.isValidElementType(propValue)) {
        var propType = getPropType(propValue);
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement type.'));
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createInstanceTypeChecker(expectedClass) {
    function validate(props, propName, componentName, location, propFullName) {
      if (!(props[propName] instanceof expectedClass)) {
        var expectedClassName = expectedClass.name || ANONYMOUS;
        var actualClassName = getClassName(props[propName]);
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createEnumTypeChecker(expectedValues) {
    if (!Array.isArray(expectedValues)) {
      if (true) {
        if (arguments.length > 1) {
          printWarning(
            'Invalid arguments supplied to oneOf, expected an array, got ' + arguments.length + ' arguments. ' +
            'A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).'
          );
        } else {
          printWarning('Invalid argument supplied to oneOf, expected an array.');
        }
      }
      return emptyFunctionThatReturnsNull;
    }

    function validate(props, propName, componentName, location, propFullName) {
      var propValue = props[propName];
      for (var i = 0; i < expectedValues.length; i++) {
        if (is(propValue, expectedValues[i])) {
          return null;
        }
      }

      var valuesString = JSON.stringify(expectedValues, function replacer(key, value) {
        var type = getPreciseType(value);
        if (type === 'symbol') {
          return String(value);
        }
        return value;
      });
      return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + String(propValue) + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));
    }
    return createChainableTypeChecker(validate);
  }

  function createObjectOfTypeChecker(typeChecker) {
    function validate(props, propName, componentName, location, propFullName) {
      if (typeof typeChecker !== 'function') {
        return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');
      }
      var propValue = props[propName];
      var propType = getPropType(propValue);
      if (propType !== 'object') {
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));
      }
      for (var key in propValue) {
        if (has(propValue, key)) {
          var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
          if (error instanceof Error) {
            return error;
          }
        }
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createUnionTypeChecker(arrayOfTypeCheckers) {
    if (!Array.isArray(arrayOfTypeCheckers)) {
       true ? printWarning('Invalid argument supplied to oneOfType, expected an instance of array.') : 0;
      return emptyFunctionThatReturnsNull;
    }

    for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
      var checker = arrayOfTypeCheckers[i];
      if (typeof checker !== 'function') {
        printWarning(
          'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +
          'received ' + getPostfixForTypeWarning(checker) + ' at index ' + i + '.'
        );
        return emptyFunctionThatReturnsNull;
      }
    }

    function validate(props, propName, componentName, location, propFullName) {
      for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
        var checker = arrayOfTypeCheckers[i];
        if (checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret) == null) {
          return null;
        }
      }

      return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`.'));
    }
    return createChainableTypeChecker(validate);
  }

  function createNodeChecker() {
    function validate(props, propName, componentName, location, propFullName) {
      if (!isNode(props[propName])) {
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createShapeTypeChecker(shapeTypes) {
    function validate(props, propName, componentName, location, propFullName) {
      var propValue = props[propName];
      var propType = getPropType(propValue);
      if (propType !== 'object') {
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));
      }
      for (var key in shapeTypes) {
        var checker = shapeTypes[key];
        if (!checker) {
          continue;
        }
        var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
        if (error) {
          return error;
        }
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createStrictShapeTypeChecker(shapeTypes) {
    function validate(props, propName, componentName, location, propFullName) {
      var propValue = props[propName];
      var propType = getPropType(propValue);
      if (propType !== 'object') {
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));
      }
      // We need to check all keys in case some are required but missing from
      // props.
      var allKeys = assign({}, props[propName], shapeTypes);
      for (var key in allKeys) {
        var checker = shapeTypes[key];
        if (!checker) {
          return new PropTypeError(
            'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' +
            '\nBad object: ' + JSON.stringify(props[propName], null, '  ') +
            '\nValid keys: ' +  JSON.stringify(Object.keys(shapeTypes), null, '  ')
          );
        }
        var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
        if (error) {
          return error;
        }
      }
      return null;
    }

    return createChainableTypeChecker(validate);
  }

  function isNode(propValue) {
    switch (typeof propValue) {
      case 'number':
      case 'string':
      case 'undefined':
        return true;
      case 'boolean':
        return !propValue;
      case 'object':
        if (Array.isArray(propValue)) {
          return propValue.every(isNode);
        }
        if (propValue === null || isValidElement(propValue)) {
          return true;
        }

        var iteratorFn = getIteratorFn(propValue);
        if (iteratorFn) {
          var iterator = iteratorFn.call(propValue);
          var step;
          if (iteratorFn !== propValue.entries) {
            while (!(step = iterator.next()).done) {
              if (!isNode(step.value)) {
                return false;
              }
            }
          } else {
            // Iterator will provide entry [k,v] tuples rather than values.
            while (!(step = iterator.next()).done) {
              var entry = step.value;
              if (entry) {
                if (!isNode(entry[1])) {
                  return false;
                }
              }
            }
          }
        } else {
          return false;
        }

        return true;
      default:
        return false;
    }
  }

  function isSymbol(propType, propValue) {
    // Native Symbol.
    if (propType === 'symbol') {
      return true;
    }

    // falsy value can't be a Symbol
    if (!propValue) {
      return false;
    }

    // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'
    if (propValue['@@toStringTag'] === 'Symbol') {
      return true;
    }

    // Fallback for non-spec compliant Symbols which are polyfilled.
    if (typeof Symbol === 'function' && propValue instanceof Symbol) {
      return true;
    }

    return false;
  }

  // Equivalent of `typeof` but with special handling for array and regexp.
  function getPropType(propValue) {
    var propType = typeof propValue;
    if (Array.isArray(propValue)) {
      return 'array';
    }
    if (propValue instanceof RegExp) {
      // Old webkits (at least until Android 4.0) return 'function' rather than
      // 'object' for typeof a RegExp. We'll normalize this here so that /bla/
      // passes PropTypes.object.
      return 'object';
    }
    if (isSymbol(propType, propValue)) {
      return 'symbol';
    }
    return propType;
  }

  // This handles more types than `getPropType`. Only used for error messages.
  // See `createPrimitiveTypeChecker`.
  function getPreciseType(propValue) {
    if (typeof propValue === 'undefined' || propValue === null) {
      return '' + propValue;
    }
    var propType = getPropType(propValue);
    if (propType === 'object') {
      if (propValue instanceof Date) {
        return 'date';
      } else if (propValue instanceof RegExp) {
        return 'regexp';
      }
    }
    return propType;
  }

  // Returns a string that is postfixed to a warning about an invalid type.
  // For example, "undefined" or "of type array"
  function getPostfixForTypeWarning(value) {
    var type = getPreciseType(value);
    switch (type) {
      case 'array':
      case 'object':
        return 'an ' + type;
      case 'boolean':
      case 'date':
      case 'regexp':
        return 'a ' + type;
      default:
        return type;
    }
  }

  // Returns class name of the object, if any.
  function getClassName(propValue) {
    if (!propValue.constructor || !propValue.constructor.name) {
      return ANONYMOUS;
    }
    return propValue.constructor.name;
  }

  ReactPropTypes.checkPropTypes = checkPropTypes;
  ReactPropTypes.resetWarningCache = checkPropTypes.resetWarningCache;
  ReactPropTypes.PropTypes = ReactPropTypes;

  return ReactPropTypes;
};


/***/ }),

/***/ "../node_modules/prop-types/index.js":
/*!*******************************************!*\
  !*** ../node_modules/prop-types/index.js ***!
  \*******************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

/**
 * Copyright (c) 2013-present, Facebook, Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

if (true) {
  var ReactIs = __webpack_require__(/*! react-is */ "../node_modules/react-is/index.js");

  // By explicitly using `prop-types` you are opting into new development behavior.
  // http://fb.me/prop-types-in-prod
  var throwOnDirectAccess = true;
  module.exports = __webpack_require__(/*! ./factoryWithTypeCheckers */ "../node_modules/prop-types/factoryWithTypeCheckers.js")(ReactIs.isElement, throwOnDirectAccess);
} else {}


/***/ }),

/***/ "../node_modules/prop-types/lib/ReactPropTypesSecret.js":
/*!**************************************************************!*\
  !*** ../node_modules/prop-types/lib/ReactPropTypesSecret.js ***!
  \**************************************************************/
/***/ ((module) => {

"use strict";
/**
 * Copyright (c) 2013-present, Facebook, Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */



var ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';

module.exports = ReactPropTypesSecret;


/***/ }),

/***/ "../node_modules/react-is/cjs/react-is.development.js":
/*!************************************************************!*\
  !*** ../node_modules/react-is/cjs/react-is.development.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";
/** @license React v16.13.1
 * react-is.development.js
 *
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */





if (true) {
  (function() {
'use strict';

// The Symbol used to tag the ReactElement-like types. If there is no native Symbol
// nor polyfill, then a plain number is used for performance.
var hasSymbol = typeof Symbol === 'function' && Symbol.for;
var REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;
var REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;
var REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;
var REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;
var REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;
var REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;
var REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary
// (unstable) APIs that have been removed. Can we remove the symbols?

var REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;
var REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;
var REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;
var REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;
var REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;
var REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;
var REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;
var REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;
var REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;
var REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;
var REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;

function isValidElementType(type) {
  return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
  type === REACT_FRAGMENT_TYPE || type === REACT_CONCURRENT_MODE_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || typeof type === 'object' && type !== null && (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || type.$$typeof === REACT_FUNDAMENTAL_TYPE || type.$$typeof === REACT_RESPONDER_TYPE || type.$$typeof === REACT_SCOPE_TYPE || type.$$typeof === REACT_BLOCK_TYPE);
}

function typeOf(object) {
  if (typeof object === 'object' && object !== null) {
    var $$typeof = object.$$typeof;

    switch ($$typeof) {
      case REACT_ELEMENT_TYPE:
        var type = object.type;

        switch (type) {
          case REACT_ASYNC_MODE_TYPE:
          case REACT_CONCURRENT_MODE_TYPE:
          case REACT_FRAGMENT_TYPE:
          case REACT_PROFILER_TYPE:
          case REACT_STRICT_MODE_TYPE:
          case REACT_SUSPENSE_TYPE:
            return type;

          default:
            var $$typeofType = type && type.$$typeof;

            switch ($$typeofType) {
              case REACT_CONTEXT_TYPE:
              case REACT_FORWARD_REF_TYPE:
              case REACT_LAZY_TYPE:
              case REACT_MEMO_TYPE:
              case REACT_PROVIDER_TYPE:
                return $$typeofType;

              default:
                return $$typeof;
            }

        }

      case REACT_PORTAL_TYPE:
        return $$typeof;
    }
  }

  return undefined;
} // AsyncMode is deprecated along with isAsyncMode

var AsyncMode = REACT_ASYNC_MODE_TYPE;
var ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;
var ContextConsumer = REACT_CONTEXT_TYPE;
var ContextProvider = REACT_PROVIDER_TYPE;
var Element = REACT_ELEMENT_TYPE;
var ForwardRef = REACT_FORWARD_REF_TYPE;
var Fragment = REACT_FRAGMENT_TYPE;
var Lazy = REACT_LAZY_TYPE;
var Memo = REACT_MEMO_TYPE;
var Portal = REACT_PORTAL_TYPE;
var Profiler = REACT_PROFILER_TYPE;
var StrictMode = REACT_STRICT_MODE_TYPE;
var Suspense = REACT_SUSPENSE_TYPE;
var hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated

function isAsyncMode(object) {
  {
    if (!hasWarnedAboutDeprecatedIsAsyncMode) {
      hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint

      console['warn']('The ReactIs.isAsyncMode() alias has been deprecated, ' + 'and will be removed in React 17+. Update your code to use ' + 'ReactIs.isConcurrentMode() instead. It has the exact same API.');
    }
  }

  return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;
}
function isConcurrentMode(object) {
  return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;
}
function isContextConsumer(object) {
  return typeOf(object) === REACT_CONTEXT_TYPE;
}
function isContextProvider(object) {
  return typeOf(object) === REACT_PROVIDER_TYPE;
}
function isElement(object) {
  return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;
}
function isForwardRef(object) {
  return typeOf(object) === REACT_FORWARD_REF_TYPE;
}
function isFragment(object) {
  return typeOf(object) === REACT_FRAGMENT_TYPE;
}
function isLazy(object) {
  return typeOf(object) === REACT_LAZY_TYPE;
}
function isMemo(object) {
  return typeOf(object) === REACT_MEMO_TYPE;
}
function isPortal(object) {
  return typeOf(object) === REACT_PORTAL_TYPE;
}
function isProfiler(object) {
  return typeOf(object) === REACT_PROFILER_TYPE;
}
function isStrictMode(object) {
  return typeOf(object) === REACT_STRICT_MODE_TYPE;
}
function isSuspense(object) {
  return typeOf(object) === REACT_SUSPENSE_TYPE;
}

exports.AsyncMode = AsyncMode;
exports.ConcurrentMode = ConcurrentMode;
exports.ContextConsumer = ContextConsumer;
exports.ContextProvider = ContextProvider;
exports.Element = Element;
exports.ForwardRef = ForwardRef;
exports.Fragment = Fragment;
exports.Lazy = Lazy;
exports.Memo = Memo;
exports.Portal = Portal;
exports.Profiler = Profiler;
exports.StrictMode = StrictMode;
exports.Suspense = Suspense;
exports.isAsyncMode = isAsyncMode;
exports.isConcurrentMode = isConcurrentMode;
exports.isContextConsumer = isContextConsumer;
exports.isContextProvider = isContextProvider;
exports.isElement = isElement;
exports.isForwardRef = isForwardRef;
exports.isFragment = isFragment;
exports.isLazy = isLazy;
exports.isMemo = isMemo;
exports.isPortal = isPortal;
exports.isProfiler = isProfiler;
exports.isStrictMode = isStrictMode;
exports.isSuspense = isSuspense;
exports.isValidElementType = isValidElementType;
exports.typeOf = typeOf;
  })();
}


/***/ }),

/***/ "../node_modules/react-is/index.js":
/*!*****************************************!*\
  !*** ../node_modules/react-is/index.js ***!
  \*****************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


if (false) {} else {
  module.exports = __webpack_require__(/*! ./cjs/react-is.development.js */ "../node_modules/react-is/cjs/react-is.development.js");
}


/***/ }),

/***/ "../node_modules/react-lifecycles-compat/react-lifecycles-compat.es.js":
/*!*****************************************************************************!*\
  !*** ../node_modules/react-lifecycles-compat/react-lifecycles-compat.es.js ***!
  \*****************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "polyfill": () => (/* binding */ polyfill)
/* harmony export */ });
/**
 * Copyright (c) 2013-present, Facebook, Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

function componentWillMount() {
  // Call this.constructor.gDSFP to support sub-classes.
  var state = this.constructor.getDerivedStateFromProps(this.props, this.state);
  if (state !== null && state !== undefined) {
    this.setState(state);
  }
}

function componentWillReceiveProps(nextProps) {
  // Call this.constructor.gDSFP to support sub-classes.
  // Use the setState() updater to ensure state isn't stale in certain edge cases.
  function updater(prevState) {
    var state = this.constructor.getDerivedStateFromProps(nextProps, prevState);
    return state !== null && state !== undefined ? state : null;
  }
  // Binding "this" is important for shallow renderer support.
  this.setState(updater.bind(this));
}

function componentWillUpdate(nextProps, nextState) {
  try {
    var prevProps = this.props;
    var prevState = this.state;
    this.props = nextProps;
    this.state = nextState;
    this.__reactInternalSnapshotFlag = true;
    this.__reactInternalSnapshot = this.getSnapshotBeforeUpdate(
      prevProps,
      prevState
    );
  } finally {
    this.props = prevProps;
    this.state = prevState;
  }
}

// React may warn about cWM/cWRP/cWU methods being deprecated.
// Add a flag to suppress these warnings for this special case.
componentWillMount.__suppressDeprecationWarning = true;
componentWillReceiveProps.__suppressDeprecationWarning = true;
componentWillUpdate.__suppressDeprecationWarning = true;

function polyfill(Component) {
  var prototype = Component.prototype;

  if (!prototype || !prototype.isReactComponent) {
    throw new Error('Can only polyfill class components');
  }

  if (
    typeof Component.getDerivedStateFromProps !== 'function' &&
    typeof prototype.getSnapshotBeforeUpdate !== 'function'
  ) {
    return Component;
  }

  // If new component APIs are defined, "unsafe" lifecycles won't be called.
  // Error if any of these lifecycles are present,
  // Because they would work differently between older and newer (16.3+) versions of React.
  var foundWillMountName = null;
  var foundWillReceivePropsName = null;
  var foundWillUpdateName = null;
  if (typeof prototype.componentWillMount === 'function') {
    foundWillMountName = 'componentWillMount';
  } else if (typeof prototype.UNSAFE_componentWillMount === 'function') {
    foundWillMountName = 'UNSAFE_componentWillMount';
  }
  if (typeof prototype.componentWillReceiveProps === 'function') {
    foundWillReceivePropsName = 'componentWillReceiveProps';
  } else if (typeof prototype.UNSAFE_componentWillReceiveProps === 'function') {
    foundWillReceivePropsName = 'UNSAFE_componentWillReceiveProps';
  }
  if (typeof prototype.componentWillUpdate === 'function') {
    foundWillUpdateName = 'componentWillUpdate';
  } else if (typeof prototype.UNSAFE_componentWillUpdate === 'function') {
    foundWillUpdateName = 'UNSAFE_componentWillUpdate';
  }
  if (
    foundWillMountName !== null ||
    foundWillReceivePropsName !== null ||
    foundWillUpdateName !== null
  ) {
    var componentName = Component.displayName || Component.name;
    var newApiName =
      typeof Component.getDerivedStateFromProps === 'function'
        ? 'getDerivedStateFromProps()'
        : 'getSnapshotBeforeUpdate()';

    throw Error(
      'Unsafe legacy lifecycles will not be called for components using new component APIs.\n\n' +
        componentName +
        ' uses ' +
        newApiName +
        ' but also contains the following legacy lifecycles:' +
        (foundWillMountName !== null ? '\n  ' + foundWillMountName : '') +
        (foundWillReceivePropsName !== null
          ? '\n  ' + foundWillReceivePropsName
          : '') +
        (foundWillUpdateName !== null ? '\n  ' + foundWillUpdateName : '') +
        '\n\nThe above lifecycles should be removed. Learn more about this warning here:\n' +
        'https://fb.me/react-async-component-lifecycle-hooks'
    );
  }

  // React <= 16.2 does not support static getDerivedStateFromProps.
  // As a workaround, use cWM and cWRP to invoke the new static lifecycle.
  // Newer versions of React will ignore these lifecycles if gDSFP exists.
  if (typeof Component.getDerivedStateFromProps === 'function') {
    prototype.componentWillMount = componentWillMount;
    prototype.componentWillReceiveProps = componentWillReceiveProps;
  }

  // React <= 16.2 does not support getSnapshotBeforeUpdate.
  // As a workaround, use cWU to invoke the new lifecycle.
  // Newer versions of React will ignore that lifecycle if gSBU exists.
  if (typeof prototype.getSnapshotBeforeUpdate === 'function') {
    if (typeof prototype.componentDidUpdate !== 'function') {
      throw new Error(
        'Cannot polyfill getSnapshotBeforeUpdate() for components that do not define componentDidUpdate() on the prototype'
      );
    }

    prototype.componentWillUpdate = componentWillUpdate;

    var componentDidUpdate = prototype.componentDidUpdate;

    prototype.componentDidUpdate = function componentDidUpdatePolyfill(
      prevProps,
      prevState,
      maybeSnapshot
    ) {
      // 16.3+ will not execute our will-update method;
      // It will pass a snapshot value to did-update though.
      // Older versions will require our polyfilled will-update value.
      // We need to handle both cases, but can't just check for the presence of "maybeSnapshot",
      // Because for <= 15.x versions this might be a "prevContext" object.
      // We also can't just check "__reactInternalSnapshot",
      // Because get-snapshot might return a falsy value.
      // So check for the explicit __reactInternalSnapshotFlag flag to determine behavior.
      var snapshot = this.__reactInternalSnapshotFlag
        ? this.__reactInternalSnapshot
        : maybeSnapshot;

      componentDidUpdate.call(this, prevProps, prevState, snapshot);
    };
  }

  return Component;
}




/***/ }),

/***/ "../node_modules/warning/warning.js":
/*!******************************************!*\
  !*** ../node_modules/warning/warning.js ***!
  \******************************************/
/***/ ((module) => {

"use strict";
/**
 * Copyright (c) 2014-present, Facebook, Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */



/**
 * Similar to invariant but only logs a warning if the condition is not met.
 * This can be used to log issues in development environments in critical
 * paths. Removing the logging code for production environments will keep the
 * same logic and follow the same code paths.
 */

var __DEV__ = "development" !== 'production';

var warning = function() {};

if (__DEV__) {
  var printWarning = function printWarning(format, args) {
    var len = arguments.length;
    args = new Array(len > 1 ? len - 1 : 0);
    for (var key = 1; key < len; key++) {
      args[key - 1] = arguments[key];
    }
    var argIndex = 0;
    var message = 'Warning: ' +
      format.replace(/%s/g, function() {
        return args[argIndex++];
      });
    if (typeof console !== 'undefined') {
      console.error(message);
    }
    try {
      // --- Welcome to debugging React ---
      // This error was thrown as a convenience so that you can use this stack
      // to find the callsite that caused this warning to fire.
      throw new Error(message);
    } catch (x) {}
  }

  warning = function(condition, format, args) {
    var len = arguments.length;
    args = new Array(len > 2 ? len - 2 : 0);
    for (var key = 2; key < len; key++) {
      args[key - 2] = arguments[key];
    }
    if (format === undefined) {
      throw new Error(
          '`warning(condition, format, ...args)` requires a warning ' +
          'message argument'
      );
    }
    if (!condition) {
      printWarning.apply(null, [format].concat(args));
    }
  };
}

module.exports = warning;


/***/ }),

/***/ "react":
/*!************************!*\
  !*** external "React" ***!
  \************************/
/***/ ((module) => {

"use strict";
module.exports = React;

/***/ }),

/***/ "@elementor/router":
/*!**********************************************!*\
  !*** external "elementorAppPackages.router" ***!
  \**********************************************/
/***/ ((module) => {

"use strict";
module.exports = elementorAppPackages.router;

/***/ }),

/***/ "@wordpress/i18n":
/*!**************************!*\
  !*** external "wp.i18n" ***!
  \**************************/
/***/ ((module) => {

"use strict";
module.exports = wp.i18n;

/***/ })

/******/ 	});
/************************************************************************/
/******/ 	// The module cache
/******/ 	var __webpack_module_cache__ = {};
/******/ 	
/******/ 	// The require function
/******/ 	function __webpack_require__(moduleId) {
/******/ 		// Check if module is in cache
/******/ 		var cachedModule = __webpack_module_cache__[moduleId];
/******/ 		if (cachedModule !== undefined) {
/******/ 			return cachedModule.exports;
/******/ 		}
/******/ 		// Create a new module (and put it into the cache)
/******/ 		var module = __webpack_module_cache__[moduleId] = {
/******/ 			// no module.id needed
/******/ 			// no module.loaded needed
/******/ 			exports: {}
/******/ 		};
/******/ 	
/******/ 		// Execute the module function
/******/ 		__webpack_modules__[moduleId](module, module.exports, __webpack_require__);
/******/ 	
/******/ 		// Return the exports of the module
/******/ 		return module.exports;
/******/ 	}
/******/ 	
/************************************************************************/
/******/ 	/* webpack/runtime/compat get default export */
/******/ 	(() => {
/******/ 		// getDefaultExport function for compatibility with non-harmony modules
/******/ 		__webpack_require__.n = (module) => {
/******/ 			var getter = module && module.__esModule ?
/******/ 				() => (module['default']) :
/******/ 				() => (module);
/******/ 			__webpack_require__.d(getter, { a: getter });
/******/ 			return getter;
/******/ 		};
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/define property getters */
/******/ 	(() => {
/******/ 		// define getter functions for harmony exports
/******/ 		__webpack_require__.d = (exports, definition) => {
/******/ 			for(var key in definition) {
/******/ 				if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
/******/ 					Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
/******/ 				}
/******/ 			}
/******/ 		};
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/global */
/******/ 	(() => {
/******/ 		__webpack_require__.g = (function() {
/******/ 			if (typeof globalThis === 'object') return globalThis;
/******/ 			try {
/******/ 				return this || new Function('return this')();
/******/ 			} catch (e) {
/******/ 				if (typeof window === 'object') return window;
/******/ 			}
/******/ 		})();
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/hasOwnProperty shorthand */
/******/ 	(() => {
/******/ 		__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/make namespace object */
/******/ 	(() => {
/******/ 		// define __esModule on exports
/******/ 		__webpack_require__.r = (exports) => {
/******/ 			if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ 				Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ 			}
/******/ 			Object.defineProperty(exports, '__esModule', { value: true });
/******/ 		};
/******/ 	})();
/******/ 	
/************************************************************************/
var __webpack_exports__ = {};
// This entry need to be wrapped in an IIFE because it need to be in strict mode.
(() => {
"use strict";
/*!*********************************************!*\
  !*** ../core/app/assets/js/app-packages.js ***!
  \*********************************************/


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _router = _interopRequireDefault(__webpack_require__(/*! ./router */ "../core/app/assets/js/router.js"));

var _package = _interopRequireDefault(__webpack_require__(/*! ./package */ "../core/app/assets/js/package.js"));

var _package2 = _interopRequireDefault(__webpack_require__(/*! ../../modules/site-editor/assets/js/package */ "../core/app/modules/site-editor/assets/js/package.js"));

var _package3 = _interopRequireDefault(__webpack_require__(/*! ../../modules/import-export/assets/js/package */ "../core/app/modules/import-export/assets/js/package.js"));

/**
 * Temporary solution for share components.
 * TODO.
 */
// Make router available for use within packages.
// Alphabetical order.
window.elementorAppPackages = {
  appUi: _package.default,
  router: _router.default,
  siteEditor: _package2.default,
  importExport: _package3.default
};
})();

/******/ })()
;
//# sourceMappingURL=app-packages.js.mapassets/js/image-carousel.f9dc73796adfb21bb945.bundle.min.js000064400000005233151327220410016741 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(self.webpackChunkelementor=self.webpackChunkelementor||[]).push([[268],{5914:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class ImageCarousel extends elementorModules.frontend.handlers.SwiperBase{getDefaultSettings(){return{selectors:{carousel:".elementor-image-carousel-wrapper",slideContent:".swiper-slide"}}}getDefaultElements(){const e=this.getSettings("selectors"),t={$swiperContainer:this.$element.find(e.carousel)};return t.$slides=t.$swiperContainer.find(e.slideContent),t}getSwiperSettings(){const e=this.getElementSettings(),t=+e.slides_to_show||3,s=1===t,i=elementorFrontend.config.responsive.activeBreakpoints,n={mobile:1,tablet:s?1:2},a={slidesPerView:t,loop:"yes"===e.infinite,speed:e.speed,handleElementorBreakpoints:!0,breakpoints:{}};let o=t;Object.keys(i).reverse().forEach((t=>{const s=n[t]?n[t]:o;a.breakpoints[i[t].value]={slidesPerView:+e["slides_to_show_"+t]||s,slidesPerGroup:+e["slides_to_scroll_"+t]||1},o=+e["slides_to_show_"+t]||s})),"yes"===e.autoplay&&(a.autoplay={delay:e.autoplay_speed,disableOnInteraction:"yes"===e.pause_on_interaction}),s?(a.effect=e.effect,"fade"===e.effect&&(a.fadeEffect={crossFade:!0})):a.slidesPerGroup=+e.slides_to_scroll||1,e.image_spacing_custom&&(a.spaceBetween=e.image_spacing_custom.size);const r="arrows"===e.navigation||"both"===e.navigation,l="dots"===e.navigation||"both"===e.navigation;return r&&(a.navigation={prevEl:".elementor-swiper-button-prev",nextEl:".elementor-swiper-button-next"}),l&&(a.pagination={el:".swiper-pagination",type:"bullets",clickable:!0}),a}async onInit(...e){super.onInit(...e);const t=this.getElementSettings();if(!this.elements.$swiperContainer.length||2>this.elements.$slides.length)return;const s=elementorFrontend.utils.swiper;this.swiper=await new s(this.elements.$swiperContainer,this.getSwiperSettings()),this.elements.$swiperContainer.data("swiper",this.swiper),"yes"===t.pause_on_hover&&this.togglePauseOnHover(!0)}updateSwiperOption(e){const t=this.getElementSettings()[e],s=this.swiper.params;switch(e){case"image_spacing_custom":s.spaceBetween=t.size||0;break;case"autoplay_speed":s.autoplay.delay=t;break;case"speed":s.speed=t}this.swiper.update()}getChangeableProperties(){return{pause_on_hover:"pauseOnHover",autoplay_speed:"delay",speed:"speed",image_spacing_custom:"spaceBetween"}}onElementChange(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&&this.swiper.slideToLoop(this.getEditSettings("activeItemIndex")-1)}}t.default=ImageCarousel}}]);assets/js/gutenberg.min.js000064400000021221151327220410011557 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(()=>{var e={22761:e=>{e.exports=function(e){if("function"!=typeof e)throw TypeError(e+" is not a function!");return e}},42094:(e,t,r)=>{var n=r(62190)("unscopables"),o=Array.prototype;null==o[n]&&r(74216)(o,n,{}),e.exports=function(e){o[n][e]=!0}},6365:(e,t,r)=>{var n=r(67334);e.exports=function(e){if(!n(e))throw TypeError(e+" is not an object!");return e}},78309:(e,t,r)=>{var n=r(11528),o=r(8467),i=r(26033),c=r(26078),a=r(63531);e.exports=function(e,t){var r=1==e,u=2==e,s=3==e,l=4==e,f=6==e,d=5==e||f,p=t||a;return function(t,a,h){for(var v,g,m=i(t),y=o(m),b=n(a,h,3),_=c(y.length),w=0,x=r?p(t,_):u?p(t,0):void 0;_>w;w++)if((d||w in y)&&(g=b(v=y[w],w,m),e))if(r)x[w]=g;else if(g)switch(e){case 3:return!0;case 5:return v;case 6:return w;case 2:x.push(v)}else if(l)return!1;return f?-1:s||l?l:x}}},81071:(e,t,r)=>{var n=r(67334),o=r(99141),i=r(62190)("species");e.exports=function(e){var t;return o(e)&&("function"!=typeof(t=e.constructor)||t!==Array&&!o(t.prototype)||(t=void 0),n(t)&&null===(t=t[i])&&(t=void 0)),void 0===t?Array:t}},63531:(e,t,r)=>{var n=r(81071);e.exports=function(e,t){return new(n(e))(t)}},26688:e=>{var t={}.toString;e.exports=function(e){return t.call(e).slice(8,-1)}},60066:e=>{var t=e.exports={version:"2.6.12"};"number"==typeof __e&&(__e=t)},11528:(e,t,r)=>{var n=r(22761);e.exports=function(e,t,r){if(n(e),void 0===t)return e;switch(r){case 1:return function(r){return e.call(t,r)};case 2:return function(r,n){return e.call(t,r,n)};case 3:return function(r,n,o){return e.call(t,r,n,o)}}return function(){return e.apply(t,arguments)}}},61622:e=>{e.exports=function(e){if(null==e)throw TypeError("Can't call method on  "+e);return e}},36628:(e,t,r)=>{e.exports=!r(48625)((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},5050:(e,t,r)=>{var n=r(67334),o=r(38113).document,i=n(o)&&n(o.createElement);e.exports=function(e){return i?o.createElement(e):{}}},65772:(e,t,r)=>{var n=r(38113),o=r(60066),i=r(74216),c=r(17738),a=r(11528),$export=function(e,t,r){var u,s,l,f,d=e&$export.F,p=e&$export.G,h=e&$export.S,v=e&$export.P,g=e&$export.B,m=p?n:h?n[t]||(n[t]={}):(n[t]||{}).prototype,y=p?o:o[t]||(o[t]={}),b=y.prototype||(y.prototype={});for(u in p&&(r=t),r)l=((s=!d&&m&&void 0!==m[u])?m:r)[u],f=g&&s?a(l,n):v&&"function"==typeof l?a(Function.call,l):l,m&&c(m,u,l,e&$export.U),y[u]!=l&&i(y,u,f),v&&b[u]!=l&&(b[u]=l)};n.core=o,$export.F=1,$export.G=2,$export.S=4,$export.P=8,$export.B=16,$export.W=32,$export.U=64,$export.R=128,e.exports=$export},48625:e=>{e.exports=function(e){try{return!!e()}catch(e){return!0}}},20646:(e,t,r)=>{e.exports=r(8655)("native-function-to-string",Function.toString)},38113:e=>{var t=e.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=t)},54040:e=>{var t={}.hasOwnProperty;e.exports=function(e,r){return t.call(e,r)}},74216:(e,t,r)=>{var n=r(98558),o=r(36061);e.exports=r(36628)?function(e,t,r){return n.f(e,t,o(1,r))}:function(e,t,r){return e[t]=r,e}},5100:(e,t,r)=>{e.exports=!r(36628)&&!r(48625)((function(){return 7!=Object.defineProperty(r(5050)("div"),"a",{get:function(){return 7}}).a}))},8467:(e,t,r)=>{var n=r(26688);e.exports=Object("z").propertyIsEnumerable(0)?Object:function(e){return"String"==n(e)?e.split(""):Object(e)}},99141:(e,t,r)=>{var n=r(26688);e.exports=Array.isArray||function isArray(e){return"Array"==n(e)}},67334:e=>{e.exports=function(e){return"object"==typeof e?null!==e:"function"==typeof e}},81422:e=>{e.exports=!1},98558:(e,t,r)=>{var n=r(6365),o=r(5100),i=r(31382),c=Object.defineProperty;t.f=r(36628)?Object.defineProperty:function defineProperty(e,t,r){if(n(e),t=i(t,!0),n(r),o)try{return c(e,t,r)}catch(e){}if("get"in r||"set"in r)throw TypeError("Accessors not supported!");return"value"in r&&(e[t]=r.value),e}},36061:e=>{e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},17738:(e,t,r)=>{var n=r(38113),o=r(74216),i=r(54040),c=r(25078)("src"),a=r(20646),u="toString",s=(""+a).split(u);r(60066).inspectSource=function(e){return a.call(e)},(e.exports=function(e,t,r,a){var u="function"==typeof r;u&&(i(r,"name")||o(r,"name",t)),e[t]!==r&&(u&&(i(r,c)||o(r,c,e[t]?""+e[t]:s.join(String(t)))),e===n?e[t]=r:a?e[t]?e[t]=r:o(e,t,r):(delete e[t],o(e,t,r)))})(Function.prototype,u,(function toString(){return"function"==typeof this&&this[c]||a.call(this)}))},8655:(e,t,r)=>{var n=r(60066),o=r(38113),i="__core-js_shared__",c=o[i]||(o[i]={});(e.exports=function(e,t){return c[e]||(c[e]=void 0!==t?t:{})})("versions",[]).push({version:n.version,mode:r(81422)?"pure":"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})},3338:e=>{var t=Math.ceil,r=Math.floor;e.exports=function(e){return isNaN(e=+e)?0:(e>0?r:t)(e)}},26078:(e,t,r)=>{var n=r(3338),o=Math.min;e.exports=function(e){return e>0?o(n(e),9007199254740991):0}},26033:(e,t,r)=>{var n=r(61622);e.exports=function(e){return Object(n(e))}},31382:(e,t,r)=>{var n=r(67334);e.exports=function(e,t){if(!n(e))return e;var r,o;if(t&&"function"==typeof(r=e.toString)&&!n(o=r.call(e)))return o;if("function"==typeof(r=e.valueOf)&&!n(o=r.call(e)))return o;if(!t&&"function"==typeof(r=e.toString)&&!n(o=r.call(e)))return o;throw TypeError("Can't convert object to primitive value")}},25078:e=>{var t=0,r=Math.random();e.exports=function(e){return"Symbol(".concat(void 0===e?"":e,")_",(++t+r).toString(36))}},62190:(e,t,r)=>{var n=r(8655)("wks"),o=r(25078),i=r(38113).Symbol,c="function"==typeof i;(e.exports=function(e){return n[e]||(n[e]=c&&i[e]||(c?i:o)("Symbol."+e))}).store=n},71954:(e,t,r)=>{"use strict";var n=r(65772),o=r(78309)(5),i="find",c=!0;i in[]&&Array(1).find((function(){c=!1})),n(n.P+n.F*c,"Array",{find:function find(e){return o(this,e,arguments.length>1?arguments[1]:void 0)}}),r(42094)(i)},18194:e=>{"use strict";e.exports=wp.i18n}},t={};function __webpack_require__(r){var n=t[r];if(void 0!==n)return n.exports;var o=t[r]={exports:{}};return e[r](o,o.exports,__webpack_require__),o.exports}(()=>{"use strict";var e,t,r=__webpack_require__(18194).__;__webpack_require__(71954),e=jQuery,t={cacheElements:function cacheElements(){var t=this;t.isElementorMode=ElementorGutenbergSettings.isElementorMode,t.cache={},t.cache.$gutenberg=e("#editor"),t.cache.$switchMode=e(e("#elementor-gutenberg-button-switch-mode").html()),t.cache.$switchModeButton=t.cache.$switchMode.find("#elementor-switch-mode-button"),t.bindEvents(),t.toggleStatus(),wp.data.subscribe((function(){setTimeout((function(){t.buildPanel()}),1)}))},buildPanel:function buildPanel(){var t=this;t.cache.$gutenberg.find("#elementor-switch-mode").length||t.cache.$gutenberg.find(".edit-post-header-toolbar").append(t.cache.$switchMode),e("#elementor-editor").length||(t.cache.$editorPanel=e(e("#elementor-gutenberg-panel").html()),t.cache.$gurenbergBlockList=t.cache.$gutenberg.find(".editor-block-list__layout, .editor-post-text-editor, .block-editor-block-list__layout"),t.cache.$gurenbergBlockList.after(t.cache.$editorPanel),t.cache.$editorPanelButton=t.cache.$editorPanel.find("#elementor-go-to-edit-page-link"),t.cache.$editorPanelButton.on("click",(function(r){r.preventDefault(),t.animateLoader(),"auto-draft"===wp.data.select("core/editor").getCurrentPost().status&&(wp.data.select("core/editor").getEditedPostAttribute("title")||wp.data.dispatch("core/editor").editPost({title:"Elementor #"+e("#post_ID").val()}),wp.data.dispatch("core/editor").savePost()),t.redirectWhenSave()})))},bindEvents:function bindEvents(){var e=this;e.cache.$switchModeButton.on("click",(function(){e.isElementorMode?elementorCommon.dialogsManager.createWidget("confirm",{message:r("Please note that you are switching to WordPress default editor. Your current layout, design and content might break.","elementor"),headerMessage:r("Back to WordPress Editor","elementor"),strings:{confirm:r("Continue","elementor"),cancel:r("Cancel","elementor")},defaultOption:"confirm",onConfirm:function onConfirm(){var t=wp.data.dispatch("core/editor");t.editPost({gutenberg_elementor_mode:!1}),t.savePost(),e.isElementorMode=!e.isElementorMode,e.toggleStatus()}}).show():(e.isElementorMode=!e.isElementorMode,e.toggleStatus(),e.cache.$editorPanelButton.trigger("click"))}))},redirectWhenSave:function redirectWhenSave(){var e=this;setTimeout((function(){wp.data.select("core/editor").isSavingPost()?e.redirectWhenSave():location.href=ElementorGutenbergSettings.editLink}),300)},animateLoader:function animateLoader(){this.cache.$editorPanelButton.addClass("elementor-animate")},toggleStatus:function toggleStatus(){jQuery("body").toggleClass("elementor-editor-active",this.isElementorMode).toggleClass("elementor-editor-inactive",!this.isElementorMode)},init:function init(){this.cacheElements()}},e((function(){t.init()}))})()})();assets/js/webpack.runtime.min.js000064400000011417151327220410012701 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(()=>{"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](_,_.exports,__webpack_require__),_.exports}__webpack_require__.m=i,e=[],__webpack_require__.O=(r,_,t,a)=>{if(!_){var i=1/0;for(u=0;u<e.length;u++){for(var[_,t,a]=e[u],n=!0,c=0;c<_.length;c++)(!1&a||i>=a)&&Object.keys(__webpack_require__.O).every((e=>__webpack_require__.O[e](_[c])))?_.splice(c--,1):(n=!1,a<i&&(i=a));if(n){e.splice(u--,1);var o=t();void 0!==o&&(r=o)}}return r}a=a||0;for(var u=e.length;u>0&&e[u-1][2]>a;u--)e[u]=e[u-1];e[u]=[_,t,a]},_=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,__webpack_require__.t=function(e,t){if(1&t&&(e=this(e)),8&t)return e;if("object"==typeof e&&e){if(4&t&&e.__esModule)return e;if(16&t&&"function"==typeof e.then)return e}var a=Object.create(null);__webpack_require__.r(a);var i={};r=r||[null,_({}),_([]),_(_)];for(var n=2&t&&e;"object"==typeof n&&!~r.indexOf(n);n=_(n))Object.getOwnPropertyNames(n).forEach((r=>i[r]=()=>e[r]));return i.default=()=>e,__webpack_require__.d(a,i),a},__webpack_require__.d=(e,r)=>{for(var _ in r)__webpack_require__.o(r,_)&&!__webpack_require__.o(e,_)&&Object.defineProperty(e,_,{enumerable:!0,get:r[_]})},__webpack_require__.f={},__webpack_require__.e=e=>Promise.all(Object.keys(__webpack_require__.f).reduce(((r,_)=>(__webpack_require__.f[_](e,r),r)),[])),__webpack_require__.u=e=>723===e?"lightbox.c3bb4b95635c5e3ad984.bundle.min.js":48===e?"text-path.15daa9710b97d5cf86b9.bundle.min.js":209===e?"accordion.839112600fade8979d16.bundle.min.js":745===e?"alert.124c2442b8a696597f9e.bundle.min.js":120===e?"counter.1bf6011c2ab9506880c2.bundle.min.js":192===e?"progress.4079971c3240c226b858.bundle.min.js":520===e?"tabs.cd05b61e107cc58d1be9.bundle.min.js":181===e?"toggle.1aca60f44e355cb43256.bundle.min.js":791===e?"video.505da250f982d8f15187.bundle.min.js":268===e?"image-carousel.f9dc73796adfb21bb945.bundle.min.js":357===e?"text-editor.9efe2dca043f0f618897.bundle.min.js":52===e?"wp-audio.2332b719d144261993a3.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)=>Object.prototype.hasOwnProperty.call(e,r),t={},a="elementor:",__webpack_require__.l=(e,r,_,i)=>{if(t[e])t[e].push(r);else{var n,c;if(void 0!==_)for(var o=document.getElementsByTagName("script"),u=0;u<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&&n.setAttribute("nonce",__webpack_require__.nc),n.setAttribute("data-webpack",a+_),n.src=e),t[e]=[r];var onScriptComplete=(r,_)=>{n.onerror=n.onload=null,clearTimeout(p);var a=t[e];if(delete t[e],n.parentNode&&n.parentNode.removeChild(n),a&&a.forEach((e=>e(_))),r)return r(_)},p=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&&document.head.appendChild(n)}},__webpack_require__.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{var e;__webpack_require__.g.importScripts&&(e=__webpack_require__.g.location+"");var r=__webpack_require__.g.document;if(!e&&r&&(r.currentScript&&(e=r.currentScript.src),!e)){var _=r.getElementsByTagName("script");_.length&&(e=_[_.length-1].src)}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),__webpack_require__.p=e})(),(()=>{var e={162:0};__webpack_require__.f.j=(r,_)=>{var t=__webpack_require__.o(e,r)?e[r]:void 0;if(0!==t)if(t)_.push(t[2]);else if(162!=r){var a=new Promise(((_,a)=>t=e[r]=[_,a]));_.push(t[2]=a);var i=__webpack_require__.p+__webpack_require__.u(r),n=new Error;__webpack_require__.l(i,(_=>{if(__webpack_require__.o(e,r)&&(0!==(t=e[r])&&(e[r]=void 0),t)){var a=_&&("load"===_.type?"missing":_.type),i=_&&_.target&&_.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=>0===e[r];var webpackJsonpCallback=(r,_)=>{var t,a,[i,n,c]=_,o=0;for(t in n)__webpack_require__.o(n,t)&&(__webpack_require__.m[t]=n[t]);if(c)var u=c(__webpack_require__);for(r&&r(_);o<i.length;o++)a=i[o],__webpack_require__.o(e,a)&&e[a]&&e[a][0](),e[i[o]]=0;return __webpack_require__.O(u)},r=self.webpackChunkelementor=self.webpackChunkelementor||[];r.forEach(webpackJsonpCallback.bind(null,0)),r.push=webpackJsonpCallback.bind(null,r.push.bind(r))})()})();assets/js/kit-library.d3688acfaab28676a99c.bundle.js000064400000535131151327220410015522 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(self["webpackChunkelementor"] = self["webpackChunkelementor"] || []).push([["kit-library"],{

/***/ "../core/app/modules/kit-library/assets/js/components/badge.scss":
/*!***********************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/components/badge.scss ***!
  \***********************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/components/collapse.scss":
/*!**************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/components/collapse.scss ***!
  \**************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/components/envato-promotion.scss":
/*!**********************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/components/envato-promotion.scss ***!
  \**********************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/components/error-screen.scss":
/*!******************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/components/error-screen.scss ***!
  \******************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/components/favorites-actions.scss":
/*!***********************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/components/favorites-actions.scss ***!
  \***********************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/components/filter-indication-text.scss":
/*!****************************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/components/filter-indication-text.scss ***!
  \****************************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/components/item-header.scss":
/*!*****************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/components/item-header.scss ***!
  \*****************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/components/kit-list-item.scss":
/*!*******************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/components/kit-list-item.scss ***!
  \*******************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/components/layout/header-back-button.scss":
/*!*******************************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/components/layout/header-back-button.scss ***!
  \*******************************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/components/page-loader.scss":
/*!*****************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/components/page-loader.scss ***!
  \*****************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/components/search-input.scss":
/*!******************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/components/search-input.scss ***!
  \******************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/components/sort-select.scss":
/*!*****************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/components/sort-select.scss ***!
  \*****************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/components/tags-filter.scss":
/*!*****************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/components/tags-filter.scss ***!
  \*****************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/pages/index/index-header.scss":
/*!*******************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/pages/index/index-header.scss ***!
  \*******************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/pages/index/index.scss":
/*!************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/pages/index/index.scss ***!
  \************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/pages/overview/overview-sidebar.scss":
/*!**************************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/pages/overview/overview-sidebar.scss ***!
  \**************************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/pages/overview/overview.scss":
/*!******************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/pages/overview/overview.scss ***!
  \******************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/pages/preview/preview-responsive-controls.scss":
/*!************************************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/pages/preview/preview-responsive-controls.scss ***!
  \************************************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/pages/preview/preview.scss":
/*!****************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/pages/preview/preview.scss ***!
  \****************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/app.js":
/*!********************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/app.js ***!
  \********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = App;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _favorites = _interopRequireDefault(__webpack_require__(/*! ./pages/favorites/favorites */ "../core/app/modules/kit-library/assets/js/pages/favorites/favorites.js"));

var _index = _interopRequireDefault(__webpack_require__(/*! ./pages/index */ "../core/app/modules/kit-library/assets/js/pages/index/index.js"));

var _overview = _interopRequireDefault(__webpack_require__(/*! ./pages/overview/overview */ "../core/app/modules/kit-library/assets/js/pages/overview/overview.js"));

var _preview = _interopRequireDefault(__webpack_require__(/*! ./pages/preview/preview */ "../core/app/modules/kit-library/assets/js/pages/preview/preview.js"));

var _lastFilterContext = __webpack_require__(/*! ./context/last-filter-context */ "../core/app/modules/kit-library/assets/js/context/last-filter-context.js");

var _reactQuery = __webpack_require__(/*! react-query */ "../node_modules/react-query/es/index.js");

var _devtools = __webpack_require__(/*! react-query/devtools */ "../node_modules/react-query/devtools/index.js");

var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js");

var _settingsContext = __webpack_require__(/*! ./context/settings-context */ "../core/app/modules/kit-library/assets/js/context/settings-context.js");

var queryClient = new _reactQuery.QueryClient({
  defaultOptions: {
    queries: {
      refetchOnWindowFocus: false,
      retry: false,
      staleTime: 1000 * 60 * 30 // 30 minutes

    }
  }
});

function App() {
  return /*#__PURE__*/_react.default.createElement("div", {
    className: "e-kit-library"
  }, /*#__PURE__*/_react.default.createElement(_reactQuery.QueryClientProvider, {
    client: queryClient
  }, /*#__PURE__*/_react.default.createElement(_settingsContext.SettingsProvider, {
    value: elementorAppConfig['kit-library']
  }, /*#__PURE__*/_react.default.createElement(_lastFilterContext.LastFilterProvider, null, /*#__PURE__*/_react.default.createElement(_router.Router, null, /*#__PURE__*/_react.default.createElement(_index.default, {
    path: "/"
  }), /*#__PURE__*/_react.default.createElement(_favorites.default, {
    path: "/favorites"
  }), /*#__PURE__*/_react.default.createElement(_preview.default, {
    path: "/preview/:id"
  }), /*#__PURE__*/_react.default.createElement(_overview.default, {
    path: "/overview/:id"
  })))), elementorCommon.config.isElementorDebug && /*#__PURE__*/_react.default.createElement(_devtools.ReactQueryDevtools, {
    initialIsOpen: false
  })));
}

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/components/badge.js":
/*!*********************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/components/badge.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Badge;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! ./badge.scss */ "../core/app/modules/kit-library/assets/js/components/badge.scss");

function Badge(props) {
  return /*#__PURE__*/_react.default.createElement("span", {
    className: "eps-badge eps-badge--".concat(props.variant, " ").concat(props.className),
    style: props.style
  }, props.children);
}

Badge.propTypes = {
  children: PropTypes.node,
  className: PropTypes.string,
  style: PropTypes.object,
  variant: PropTypes.oneOf(['sm', 'md'])
};
Badge.defaultProps = {
  className: '',
  style: {},
  variant: 'md'
};

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/components/collapse.js":
/*!************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/components/collapse.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Collapse;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! ./collapse.scss */ "../core/app/modules/kit-library/assets/js/components/collapse.scss");

function Collapse(props) {
  // The state of the collapse managed by the parent component to let the parent control if the collapse is open or closed by default.
  return /*#__PURE__*/_react.default.createElement("div", {
    className: "eps-collapse ".concat(props.className),
    "data-open": props.isOpen || undefined
    /* set `undefined` when 'isOpen' equals `false` to avoid showing the attr "data-open" */

  }, /*#__PURE__*/_react.default.createElement("button", {
    className: "eps-collapse__title",
    onClick: function onClick() {
      return props.onChange(function (value) {
        return !value;
      });
    }
  }, /*#__PURE__*/_react.default.createElement("span", null, props.title), /*#__PURE__*/_react.default.createElement("i", {
    className: "eicon-chevron-right eps-collapse__icon"
  })), /*#__PURE__*/_react.default.createElement("div", {
    className: "eps-collapse__content"
  }, props.children));
}

Collapse.propTypes = {
  isOpen: PropTypes.bool,
  onChange: PropTypes.func,
  className: PropTypes.string,
  title: PropTypes.node,
  children: PropTypes.oneOfType([PropTypes.node, PropTypes.arrayOf(PropTypes.node)])
};
Collapse.defaultProps = {
  className: '',
  isOpen: false
};

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/components/connect-dialog.js":
/*!******************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/components/connect-dialog.js ***!
  \******************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ConnectDialog;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _appUi = __webpack_require__(/*! @elementor/app-ui */ "@elementor/app-ui");

var _settingsContext = __webpack_require__(/*! ../context/settings-context */ "../core/app/modules/kit-library/assets/js/context/settings-context.js");

var _React = _react.default,
    useEffect = _React.useEffect,
    useRef = _React.useRef;

function ConnectDialog(props) {
  var _useSettingsContext = (0, _settingsContext.useSettingsContext)(),
      settings = _useSettingsContext.settings;

  var approveButtonRef = useRef();
  useEffect(function () {
    jQuery(approveButtonRef.current).elementorConnect({
      success: function success(e, data) {
        return props.onSuccess(data);
      },
      error: function error() {
        return props.onError(__('Unable to connect', 'elementor'));
      },
      UTM: function UTM() {
        return '&utm_source=kit-library&utm_medium=wp-dash&utm_campaign=';
      }
    });
  }, []);
  return /*#__PURE__*/_react.default.createElement(_appUi.Dialog, {
    title: __('Connect to Template Library', 'elementor'),
    text: __('Access this template and our entire library by creating an account', 'elementor'),
    approveButtonText: __('Get Started', 'elementor'),
    approveButtonUrl: settings.library_connect_url,
    approveButtonOnClick: function approveButtonOnClick() {
      return props.onClose();
    },
    approveButtonColor: "primary",
    approveButtonRef: approveButtonRef,
    dismissButtonText: __('Cancel', 'elementor-pro'),
    dismissButtonOnClick: function dismissButtonOnClick() {
      return props.onClose();
    },
    onClose: function onClose() {
      return props.onClose();
    }
  });
}

ConnectDialog.propTypes = {
  onClose: PropTypes.func.isRequired,
  onError: PropTypes.func.isRequired,
  onSuccess: PropTypes.func.isRequired
};

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/components/elementor-loading.js":
/*!*********************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/components/elementor-loading.js ***!
  \*********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ElementorLoading;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

function ElementorLoading() {
  return /*#__PURE__*/_react.default.createElement("div", {
    className: "elementor-loading"
  }, /*#__PURE__*/_react.default.createElement("div", {
    className: "elementor-loader-wrapper"
  }, /*#__PURE__*/_react.default.createElement("div", {
    className: "elementor-loader"
  }, /*#__PURE__*/_react.default.createElement("div", {
    className: "elementor-loader-boxes"
  }, /*#__PURE__*/_react.default.createElement("div", {
    className: "elementor-loader-box"
  }), /*#__PURE__*/_react.default.createElement("div", {
    className: "elementor-loader-box"
  }), /*#__PURE__*/_react.default.createElement("div", {
    className: "elementor-loader-box"
  }), /*#__PURE__*/_react.default.createElement("div", {
    className: "elementor-loader-box"
  }))), /*#__PURE__*/_react.default.createElement("div", {
    className: "elementor-loading-title"
  }, __('Loading', 'elementor'))));
}

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/components/envato-promotion.js":
/*!********************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/components/envato-promotion.js ***!
  \********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = EnvatoPromotion;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _appUi = __webpack_require__(/*! @elementor/app-ui */ "@elementor/app-ui");

__webpack_require__(/*! ./envato-promotion.scss */ "../core/app/modules/kit-library/assets/js/components/envato-promotion.scss");

function EnvatoPromotion() {
  return /*#__PURE__*/_react.default.createElement(_appUi.Text, {
    className: "e-kit-library-bottom-promotion",
    variant: "xl"
  }, __('Looking for more Kits?', 'elementor'), " ", ' ', /*#__PURE__*/_react.default.createElement(_appUi.Button, {
    variant: "underlined",
    color: "link",
    url: "https://go.elementor.com/app-envato-kits/",
    target: "_blank",
    rel: "noreferrer",
    text: __('Check out Elementor Template Kits on ThemeForest', 'elementor')
  }));
}

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/components/error-screen.js":
/*!****************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/components/error-screen.js ***!
  \****************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ErrorScreen;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _appUi = __webpack_require__(/*! @elementor/app-ui */ "@elementor/app-ui");

__webpack_require__(/*! ./error-screen.scss */ "../core/app/modules/kit-library/assets/js/components/error-screen.scss");

function ErrorScreen(props) {
  return /*#__PURE__*/_react.default.createElement(_appUi.Grid, {
    container: true,
    alignItems: "center",
    justify: "center",
    direction: "column",
    className: "e-kit-library__error-screen"
  }, /*#__PURE__*/_react.default.createElement("img", {
    src: "".concat(elementorAppConfig.assets_url, "images/no-search-results.svg")
  }), /*#__PURE__*/_react.default.createElement(_appUi.Heading, {
    tag: "h3",
    variant: "display-1",
    className: "e-kit-library__error-screen-title"
  }, props.title), /*#__PURE__*/_react.default.createElement(_appUi.Text, {
    variant: "xl",
    className: "e-kit-library__error-screen-description"
  }, props.description, " ", ' ', /*#__PURE__*/_react.default.createElement(_appUi.Button, {
    text: props.button.text,
    color: "link",
    onClick: props.button.action,
    url: props.button.url,
    target: props.button.target
  })));
}

ErrorScreen.propTypes = {
  title: PropTypes.string,
  description: PropTypes.string,
  button: PropTypes.shape({
    text: PropTypes.string,
    action: PropTypes.func,
    url: PropTypes.string,
    target: PropTypes.string
  })
};

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/components/favorites-actions.js":
/*!*********************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/components/favorites-actions.js ***!
  \*********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = FavoritesActions;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _useKitFavoritesMutations = __webpack_require__(/*! ../hooks/use-kit-favorites-mutations */ "../core/app/modules/kit-library/assets/js/hooks/use-kit-favorites-mutations.js");

var _appUi = __webpack_require__(/*! @elementor/app-ui */ "@elementor/app-ui");

__webpack_require__(/*! ./favorites-actions.scss */ "../core/app/modules/kit-library/assets/js/components/favorites-actions.scss");

function FavoritesActions(props) {
  var _useKitFavoritesMutat = (0, _useKitFavoritesMutations.useKitFavoritesMutations)(),
      addToFavorites = _useKitFavoritesMutat.addToFavorites,
      removeFromFavorites = _useKitFavoritesMutat.removeFromFavorites,
      isLoading = _useKitFavoritesMutat.isLoading;

  var loadingClasses = isLoading ? 'e-kit-library__kit-favorite-actions--loading' : '';
  return props.isFavorite ? /*#__PURE__*/_react.default.createElement(_appUi.Button, {
    text: __('Remove From Favorites', 'elementor'),
    hideText: true,
    icon: "eicon-heart",
    className: "e-kit-library__kit-favorite-actions e-kit-library__kit-favorite-actions--active ".concat(loadingClasses),
    onClick: function onClick() {
      return !isLoading && removeFromFavorites.mutate(props.id);
    }
  }) : /*#__PURE__*/_react.default.createElement(_appUi.Button, {
    text: __('Add To Favorites', 'elementor'),
    hideText: true,
    icon: "eicon-heart-o",
    className: "e-kit-library__kit-favorite-actions ".concat(loadingClasses),
    onClick: function onClick() {
      return !isLoading && addToFavorites.mutate(props.id);
    }
  });
}

FavoritesActions.propTypes = {
  isFavorite: PropTypes.bool,
  id: PropTypes.string
};

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/components/filter-indication-text.js":
/*!**************************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/components/filter-indication-text.js ***!
  \**************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = FilterIndicationText;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.regexp.search.js */ "../node_modules/core-js/modules/es6.regexp.search.js");

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

var _useSelectedTaxonomies = _interopRequireDefault(__webpack_require__(/*! ../hooks/use-selected-taxonomies */ "../core/app/modules/kit-library/assets/js/hooks/use-selected-taxonomies.js"));

var _badge = _interopRequireDefault(__webpack_require__(/*! ./badge */ "../core/app/modules/kit-library/assets/js/components/badge.js"));

var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");

var _appUi = __webpack_require__(/*! @elementor/app-ui */ "@elementor/app-ui");

__webpack_require__(/*! ./filter-indication-text.scss */ "../core/app/modules/kit-library/assets/js/components/filter-indication-text.scss");

function FilterIndicationText(props) {
  var selectedTaxonomies = (0, _useSelectedTaxonomies.default)(props.queryParams.taxonomies);
  return /*#__PURE__*/_react.default.createElement(_appUi.Grid, {
    container: true,
    className: "e-kit-library__filter-indication"
  }, /*#__PURE__*/_react.default.createElement(_appUi.Text, {
    className: "e-kit-library__filter-indication-text"
  }, (0, _i18n.sprintf)((0, _i18n._n)('Showing %s result for', 'Showing %s results for', props.resultCount, 'elementor'), !props.resultCount ? __('no', 'elementor') : props.resultCount), ' ', props.queryParams.search && "\"".concat(props.queryParams.search, "\""), ' ', selectedTaxonomies.length > 0 && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, selectedTaxonomies.map(function (taxonomy) {
    return /*#__PURE__*/_react.default.createElement(_badge.default, {
      key: taxonomy,
      className: "e-kit-library__filter-indication-badge"
    }, taxonomy, /*#__PURE__*/_react.default.createElement(_appUi.Button, {
      text: __('Remove', 'elementor'),
      hideText: true,
      icon: "eicon-editor-close",
      className: "e-kit-library__filter-indication-badge-remove",
      onClick: function onClick() {
        return props.onRemoveTag(taxonomy);
      }
    }));
  }))), /*#__PURE__*/_react.default.createElement(_appUi.Button, {
    className: "e-kit-library__filter-indication-button",
    text: __('Clear all', 'elementor'),
    variant: "underlined",
    onClick: props.onClear
  }));
}

FilterIndicationText.propTypes = {
  queryParams: PropTypes.shape({
    search: PropTypes.string,
    taxonomies: PropTypes.objectOf(PropTypes.arrayOf(PropTypes.string)),
    favorite: PropTypes.bool
  }),
  resultCount: PropTypes.number.isRequired,
  onClear: PropTypes.func.isRequired,
  onRemoveTag: PropTypes.func.isRequired
};

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/components/item-header.js":
/*!***************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/components/item-header.js ***!
  \***************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ItemHeader;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");

var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/toConsumableArray */ "../node_modules/@babel/runtime-corejs2/helpers/toConsumableArray.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _connectDialog = _interopRequireDefault(__webpack_require__(/*! ./connect-dialog */ "../core/app/modules/kit-library/assets/js/components/connect-dialog.js"));

var _header = _interopRequireDefault(__webpack_require__(/*! ./layout/header */ "../core/app/modules/kit-library/assets/js/components/layout/header.js"));

var _headerBackButton = _interopRequireDefault(__webpack_require__(/*! ./layout/header-back-button */ "../core/app/modules/kit-library/assets/js/components/layout/header-back-button.js"));

var _kit = _interopRequireDefault(__webpack_require__(/*! ../models/kit */ "../core/app/modules/kit-library/assets/js/models/kit.js"));

var _useDownloadLinkMutation = _interopRequireDefault(__webpack_require__(/*! ../hooks/use-download-link-mutation */ "../core/app/modules/kit-library/assets/js/hooks/use-download-link-mutation.js"));

var _useKitCallToAction3 = _interopRequireWildcard(__webpack_require__(/*! ../hooks/use-kit-call-to-action */ "../core/app/modules/kit-library/assets/js/hooks/use-kit-call-to-action.js"));

var _appUi = __webpack_require__(/*! @elementor/app-ui */ "@elementor/app-ui");

var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js");

var _settingsContext = __webpack_require__(/*! ../context/settings-context */ "../core/app/modules/kit-library/assets/js/context/settings-context.js");

__webpack_require__(/*! ./item-header.scss */ "../core/app/modules/kit-library/assets/js/components/item-header.scss");

/**
 * Returns the right call to action button.
 *
 * @param model
 * @param onConnect
 * @param onApply
 * @returns {object}
 */
function useKitCallToActionButton(model, _ref) {
  var apply = _ref.apply,
      isApplyLoading = _ref.isApplyLoading,
      onConnect = _ref.onConnect;

  var _useKitCallToAction = (0, _useKitCallToAction3.default)(model.accessLevel),
      _useKitCallToAction2 = (0, _slicedToArray2.default)(_useKitCallToAction, 2),
      type = _useKitCallToAction2[0],
      subscriptionPlan = _useKitCallToAction2[1].subscriptionPlan;

  return (0, _react.useMemo)(function () {
    if (type === _useKitCallToAction3.TYPE_CONNECT) {
      return {
        id: 'connect',
        text: __('Apply Kit', 'elementor'),
        // The label is Apply kit but the this is connect button
        hideText: false,
        variant: 'contained',
        color: 'primary',
        size: 'sm',
        onClick: onConnect,
        includeHeaderBtnClass: false
      };
    }

    if (type === _useKitCallToAction3.TYPE_PROMOTION && subscriptionPlan) {
      return {
        id: 'promotion',
        text: __('Go %s', 'elementor').replace('%s', subscriptionPlan.label),
        hideText: false,
        variant: 'contained',
        color: 'cta',
        size: 'sm',
        url: subscriptionPlan.promotion_url,
        target: '_blank',
        includeHeaderBtnClass: false
      };
    }

    return {
      id: 'apply',
      text: __('Apply Kit', 'elementor'),
      className: 'e-kit-library__apply-button',
      icon: isApplyLoading ? 'eicon-loading eicon-animation-spin' : '',
      hideText: false,
      variant: 'contained',
      color: isApplyLoading ? 'disabled' : 'primary',
      size: 'sm',
      onClick: isApplyLoading ? null : apply,
      includeHeaderBtnClass: false
    };
  }, [type, subscriptionPlan, isApplyLoading, apply]);
}

function ItemHeader(props) {
  var _useSettingsContext = (0, _settingsContext.useSettingsContext)(),
      updateSettings = _useSettingsContext.updateSettings;

  var navigate = (0, _router.useNavigate)();

  var _useState = (0, _react.useState)(false),
      _useState2 = (0, _slicedToArray2.default)(_useState, 2),
      isConnectDialogOpen = _useState2[0],
      setIsConnectDialogOpen = _useState2[1];

  var _useState3 = (0, _react.useState)(false),
      _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
      error = _useState4[0],
      setError = _useState4[1];

  var _useDownloadLinkMutat = (0, _useDownloadLinkMutation.default)(props.model, {
    onSuccess: function onSuccess(_ref2) {
      var data = _ref2.data;
      return navigate("/import/process?file_url=".concat(encodeURIComponent(data.data.download_link), "&nonce=").concat(data.meta.nonce, "&referrer=kit-library"));
    },
    onError: function onError(errorResponse) {
      if (401 === errorResponse.code) {
        updateSettings({
          is_library_connected: false,
          access_level: 0
        });
        setIsConnectDialogOpen(true);
        return;
      }

      setError({
        code: errorResponse.code,
        message: __('Something went wrong.', 'elementor')
      });
    }
  }),
      apply = _useDownloadLinkMutat.mutate,
      isApplyLoading = _useDownloadLinkMutat.isLoading;

  var applyButton = useKitCallToActionButton(props.model, {
    onConnect: function onConnect() {
      return setIsConnectDialogOpen(true);
    },
    apply: apply,
    isApplyLoading: isApplyLoading
  });
  var buttons = (0, _react.useMemo)(function () {
    return [applyButton].concat((0, _toConsumableArray2.default)(props.buttons));
  }, [props.buttons, applyButton]);
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, error && /*#__PURE__*/_react.default.createElement(_appUi.Dialog, {
    title: error.message,
    text: __('Nothing to worry about, just try again. If the problem continues, head over to the Help Center.', 'elementor'),
    approveButtonText: __('Learn More', 'elementor'),
    approveButtonColor: "link",
    approveButtonUrl: "http://go.elementor.com/app-kit-library-error",
    approveButtonOnClick: function approveButtonOnClick() {
      return setError(false);
    },
    dismissButtonText: __('Got it', 'elementor'),
    dismissButtonOnClick: function dismissButtonOnClick() {
      return setError(false);
    },
    onClose: function onClose() {
      return setError(false);
    }
  }), isConnectDialogOpen && /*#__PURE__*/_react.default.createElement(_connectDialog.default, {
    onClose: function onClose() {
      return setIsConnectDialogOpen(false);
    },
    onSuccess: function onSuccess(data) {
      updateSettings({
        is_library_connected: true,
        access_level: data.kits_access_level || data.access_level || 0 // BC: Check for 'access_level' prop

      });

      if (data.access_level < props.model.accessLevel) {
        return;
      }

      apply();
    },
    onError: function onError(message) {
      return setError({
        message: message
      });
    }
  }), /*#__PURE__*/_react.default.createElement(_header.default, {
    startColumn: /*#__PURE__*/_react.default.createElement(_headerBackButton.default, null),
    centerColumn: props.centerColumn,
    buttons: buttons
  }));
}

ItemHeader.propTypes = {
  model: PropTypes.instanceOf(_kit.default).isRequired,
  centerColumn: PropTypes.node,
  buttons: PropTypes.arrayOf(PropTypes.object)
};

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/components/kit-list-item.js":
/*!*****************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/components/kit-list-item.js ***!
  \*****************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = KitListItem;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _badge = _interopRequireDefault(__webpack_require__(/*! ./badge */ "../core/app/modules/kit-library/assets/js/components/badge.js"));

var _favoritesActions = _interopRequireDefault(__webpack_require__(/*! ../components/favorites-actions */ "../core/app/modules/kit-library/assets/js/components/favorites-actions.js"));

var _kit = _interopRequireDefault(__webpack_require__(/*! ../models/kit */ "../core/app/modules/kit-library/assets/js/models/kit.js"));

var _useKitCallToAction3 = _interopRequireWildcard(__webpack_require__(/*! ../hooks/use-kit-call-to-action */ "../core/app/modules/kit-library/assets/js/hooks/use-kit-call-to-action.js"));

var _appUi = __webpack_require__(/*! @elementor/app-ui */ "@elementor/app-ui");

__webpack_require__(/*! ./kit-list-item.scss */ "../core/app/modules/kit-library/assets/js/components/kit-list-item.scss");

function KitListItem(props) {
  var _useKitCallToAction = (0, _useKitCallToAction3.default)(props.model.accessLevel),
      _useKitCallToAction2 = (0, _slicedToArray2.default)(_useKitCallToAction, 2),
      type = _useKitCallToAction2[0],
      subscriptionPlan = _useKitCallToAction2[1].subscriptionPlan;

  return /*#__PURE__*/_react.default.createElement(_appUi.Card, {
    className: "e-kit-library__kit-item"
  }, /*#__PURE__*/_react.default.createElement(_appUi.CardHeader, null, /*#__PURE__*/_react.default.createElement(_appUi.Heading, {
    tag: "h3",
    title: props.model.title,
    variant: "h5",
    className: "eps-card__headline"
  }, props.model.title), /*#__PURE__*/_react.default.createElement(_favoritesActions.default, {
    id: props.model.id,
    isFavorite: props.model.isFavorite
  })), /*#__PURE__*/_react.default.createElement(_appUi.CardBody, null, /*#__PURE__*/_react.default.createElement(_appUi.CardImage, {
    alt: props.model.title,
    src: props.model.thumbnailUrl || ''
  }, (subscriptionPlan === null || subscriptionPlan === void 0 ? void 0 : subscriptionPlan.label) && /*#__PURE__*/_react.default.createElement(_badge.default, {
    variant: "sm",
    className: "e-kit-library__kit-item-subscription-plan-badge",
    style: {
      backgroundColor: subscriptionPlan.color
    }
  }, subscriptionPlan.label), /*#__PURE__*/_react.default.createElement(_appUi.CardOverlay, null, /*#__PURE__*/_react.default.createElement(_appUi.Grid, {
    container: true,
    direction: "column",
    className: "e-kit-library__kit-item-overlay"
  }, /*#__PURE__*/_react.default.createElement(_appUi.Button, {
    className: "e-kit-library__kit-item-overlay-overview-button",
    text: __('View Demo', 'elementor'),
    icon: "eicon-preview-medium",
    url: "/kit-library/preview/".concat(props.model.id)
  }), type === _useKitCallToAction3.TYPE_PROMOTION && (subscriptionPlan === null || subscriptionPlan === void 0 ? void 0 : subscriptionPlan.label) && /*#__PURE__*/_react.default.createElement(_appUi.Button, {
    className: "e-kit-library__kit-item-overlay-promotion-button",
    text: "Go ".concat(subscriptionPlan.label),
    icon: "eicon-external-link-square",
    url: subscriptionPlan.promotion_url,
    target: "_blank"
  }))))));
}

KitListItem.propTypes = {
  model: PropTypes.instanceOf(_kit.default).isRequired
};

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/components/kit-list.js":
/*!************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/components/kit-list.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = KitList;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

var _kit = _interopRequireDefault(__webpack_require__(/*! ../models/kit */ "../core/app/modules/kit-library/assets/js/models/kit.js"));

var _kitListItem = _interopRequireDefault(__webpack_require__(/*! ./kit-list-item */ "../core/app/modules/kit-library/assets/js/components/kit-list-item.js"));

var _appUi = __webpack_require__(/*! @elementor/app-ui */ "@elementor/app-ui");

function KitList(props) {
  return /*#__PURE__*/_react.default.createElement(_appUi.CssGrid, {
    spacing: 24,
    colMinWidth: 290
  }, props.data.map(function (model) {
    return /*#__PURE__*/_react.default.createElement(_kitListItem.default, {
      key: model.id,
      model: model
    });
  }));
}

KitList.propTypes = {
  data: PropTypes.arrayOf(PropTypes.instanceOf(_kit.default))
};

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/components/layout/header-back-button.js":
/*!*****************************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/components/layout/header-back-button.js ***!
  \*****************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = HeaderBackButton;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _appUi = __webpack_require__(/*! @elementor/app-ui */ "@elementor/app-ui");

var _lastFilterContext = __webpack_require__(/*! ../../context/last-filter-context */ "../core/app/modules/kit-library/assets/js/context/last-filter-context.js");

var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js");

__webpack_require__(/*! ./header-back-button.scss */ "../core/app/modules/kit-library/assets/js/components/layout/header-back-button.scss");

function HeaderBackButton() {
  var navigate = (0, _router.useNavigate)(),
      _useLastFilterContext = (0, _lastFilterContext.useLastFilterContext)(),
      lastFilter = _useLastFilterContext.lastFilter;

  return /*#__PURE__*/_react.default.createElement("div", {
    className: "e-kit-library__header-back-container"
  }, /*#__PURE__*/_react.default.createElement(_appUi.Button, {
    className: "e-kit-library__header-back",
    icon: "eicon-chevron-left",
    text: __('Back to Library', 'elementor'),
    onClick: function onClick() {
      return navigate(wp.url.addQueryArgs('/kit-library', lastFilter));
    }
  }));
}

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/components/layout/header.js":
/*!*****************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/components/layout/header.js ***!
  \*****************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Header;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _appUi = __webpack_require__(/*! @elementor/app-ui */ "@elementor/app-ui");

var _headerButtons = _interopRequireDefault(__webpack_require__(/*! ../../../../../../assets/js/layout/header-buttons */ "../core/app/assets/js/layout/header-buttons.js"));

function Header(props) {
  return /*#__PURE__*/_react.default.createElement(_appUi.Grid, {
    container: true,
    alignItems: "center",
    justify: "space-between",
    className: "eps-app__header"
  }, props.startColumn || /*#__PURE__*/_react.default.createElement("a", {
    className: "eps-app__logo-title-wrapper",
    href: "#/kit-library"
  }, /*#__PURE__*/_react.default.createElement("i", {
    className: "eps-app__logo eicon-elementor"
  }), /*#__PURE__*/_react.default.createElement("h1", {
    className: "eps-app__title"
  }, __('Kit Library', 'elementor'))), props.centerColumn || /*#__PURE__*/_react.default.createElement("span", null), props.endColumn || /*#__PURE__*/_react.default.createElement("div", {
    style: {
      flex: 1
    }
  }, /*#__PURE__*/_react.default.createElement(_headerButtons.default, {
    buttons: props.buttons
  })));
}

Header.propTypes = {
  startColumn: PropTypes.node,
  endColumn: PropTypes.node,
  centerColumn: PropTypes.node,
  buttons: PropTypes.arrayOf(PropTypes.object)
};

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/components/layout/index.js":
/*!****************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/components/layout/index.js ***!
  \****************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Index;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _sidebar = _interopRequireDefault(__webpack_require__(/*! ../../../../../../assets/js/layout/sidebar */ "../core/app/assets/js/layout/sidebar.js"));

function Index(props) {
  return /*#__PURE__*/_react.default.createElement("div", {
    className: "eps-app__lightbox"
  }, /*#__PURE__*/_react.default.createElement("div", {
    className: "eps-app"
  }, props.header, /*#__PURE__*/_react.default.createElement("div", {
    className: "eps-app__main"
  }, props.sidebar && /*#__PURE__*/_react.default.createElement(_sidebar.default, null, props.sidebar), props.children)));
}

Index.propTypes = {
  header: PropTypes.node,
  sidebar: PropTypes.node,
  children: PropTypes.node
};

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/components/page-loader.js":
/*!***************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/components/page-loader.js ***!
  \***************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = PageLoader;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _appUi = __webpack_require__(/*! @elementor/app-ui */ "@elementor/app-ui");

__webpack_require__(/*! ./page-loader.scss */ "../core/app/modules/kit-library/assets/js/components/page-loader.scss");

function PageLoader(props) {
  return /*#__PURE__*/_react.default.createElement("div", {
    className: "e-kit-library__page-loader ".concat(props.className)
  }, /*#__PURE__*/_react.default.createElement(_appUi.Icon, {
    className: "eicon-loading eicon-animation-spin"
  }));
}

PageLoader.propTypes = {
  className: PropTypes.string
};
PageLoader.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/components/search-input.js":
/*!****************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/components/search-input.js ***!
  \****************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = SearchInput;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _appUi = __webpack_require__(/*! @elementor/app-ui */ "@elementor/app-ui");

__webpack_require__(/*! ./search-input.scss */ "../core/app/modules/kit-library/assets/js/components/search-input.scss");

function SearchInput(props) {
  return /*#__PURE__*/_react.default.createElement("div", {
    className: "eps-search-input__container ".concat(props.className)
  }, /*#__PURE__*/_react.default.createElement("input", {
    className: "eps-search-input eps-search-input--".concat(props.size),
    placeholder: props.placeholder,
    value: props.value || '',
    onChange: function onChange(e) {
      return props.onChange(e.target.value);
    }
  }), /*#__PURE__*/_react.default.createElement(_appUi.Icon, {
    className: "eicon-search-bold eps-search-input__icon eps-search-input__icon--".concat(props.size)
  }), props.value && /*#__PURE__*/_react.default.createElement(_appUi.Button, {
    text: __('Clear', 'elementor'),
    hideText: true,
    className: "eicon-close-circle eps-search-input__clear-icon eps-search-input__clear-icon--".concat(props.size),
    onClick: function onClick() {
      return props.onChange('');
    }
  }));
}

SearchInput.propTypes = {
  placeholder: PropTypes.string,
  value: PropTypes.string.isRequired,
  onChange: PropTypes.func.isRequired,
  className: PropTypes.string,
  size: PropTypes.oneOf(['md', 'sm'])
};
SearchInput.defaultProps = {
  className: '',
  size: 'md'
};

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/components/sort-select.js":
/*!***************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/components/sort-select.js ***!
  \***************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = SortSelect;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _appUi = __webpack_require__(/*! @elementor/app-ui */ "@elementor/app-ui");

__webpack_require__(/*! ./sort-select.scss */ "../core/app/modules/kit-library/assets/js/components/sort-select.scss");

function SortSelect(props) {
  return /*#__PURE__*/_react.default.createElement("div", {
    className: "eps-sort-select"
  }, /*#__PURE__*/_react.default.createElement("div", {
    className: "eps-sort-select__select-wrapper"
  }, /*#__PURE__*/_react.default.createElement(_appUi.Select, {
    options: props.options,
    value: props.value.by,
    onChange: function onChange(e) {
      var value = e.target.value;
      props.onChange({
        by: value,
        direction: props.value.direction
      });
    },
    className: "eps-sort-select__select"
  })), /*#__PURE__*/_react.default.createElement(_appUi.Button, {
    text: 'asc' === props.value.direction ? __('Sort Descending', 'elementor') : __('Sort Ascending', 'elementor'),
    hideText: true,
    icon: 'asc' === props.value.direction ? 'eicon-arrow-up' : 'eicon-arrow-down',
    className: "eps-sort-select__button",
    onClick: function onClick() {
      props.onChange({
        by: props.value.by,
        direction: 'asc' === props.value.direction ? 'desc' : 'asc'
      });
    }
  }));
}

SortSelect.propTypes = {
  options: PropTypes.arrayOf(PropTypes.shape({
    label: PropTypes.string.isRequired,
    value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).isRequired
  })).isRequired,
  value: PropTypes.shape({
    direction: PropTypes.oneOf(['asc', 'desc']).isRequired,
    by: PropTypes.string.isRequired
  }).isRequired,
  onChange: PropTypes.func.isRequired
};

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/components/taxonomies-filter-list.js":
/*!**************************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/components/taxonomies-filter-list.js ***!
  \**************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = TaxonomiesFilterList;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/toConsumableArray */ "../node_modules/@babel/runtime-corejs2/helpers/toConsumableArray.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _taxonomy = _interopRequireDefault(__webpack_require__(/*! ../models/taxonomy */ "../core/app/modules/kit-library/assets/js/models/taxonomy.js"));

var _collapse = _interopRequireDefault(__webpack_require__(/*! ./collapse */ "../core/app/modules/kit-library/assets/js/components/collapse.js"));

var _searchInput = _interopRequireDefault(__webpack_require__(/*! ./search-input */ "../core/app/modules/kit-library/assets/js/components/search-input.js"));

var _appUi = __webpack_require__(/*! @elementor/app-ui */ "@elementor/app-ui");

var _i18n = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");

var MIN_TAGS_LENGTH_FOR_SEARCH_INPUT = 15;

function TaxonomiesFilterList(props) {
  var _useState = (0, _react.useState)(props.taxonomiesByType.isOpenByDefault),
      _useState2 = (0, _slicedToArray2.default)(_useState, 2),
      isOpen = _useState2[0],
      setIsOpen = _useState2[1];

  var _useState3 = (0, _react.useState)(''),
      _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
      search = _useState4[0],
      setSearch = _useState4[1];

  var taxonomies = (0, _react.useMemo)(function () {
    if (!search) {
      return props.taxonomiesByType.data;
    }

    var lowerCaseSearch = search.toLowerCase();
    return props.taxonomiesByType.data.filter(function (tag) {
      return tag.text.toLowerCase().includes(lowerCaseSearch);
    });
  }, [props.taxonomiesByType.data, search]);
  return /*#__PURE__*/_react.default.createElement(_collapse.default, {
    className: "e-kit-library__tags-filter-list",
    title: props.taxonomiesByType.label,
    isOpen: isOpen,
    onChange: setIsOpen
  }, props.taxonomiesByType.data.length >= MIN_TAGS_LENGTH_FOR_SEARCH_INPUT && /*#__PURE__*/_react.default.createElement(_searchInput.default, {
    size: "sm",
    className: "e-kit-library__tags-filter-list-search",
    placeholder: (0, _i18n.sprintf)(__('Search %s...', 'elementor'), props.taxonomiesByType.label),
    value: search,
    onChange: setSearch
  }), /*#__PURE__*/_react.default.createElement("div", {
    className: "e-kit-library__tags-filter-list-container"
  }, 0 === taxonomies.length && /*#__PURE__*/_react.default.createElement(_appUi.Text, null, __('No Results Found', 'elementor')), taxonomies.map(function (taxonomy) {
    var _props$selected$taxon;

    return /*#__PURE__*/_react.default.createElement("label", {
      key: taxonomy.text,
      className: "e-kit-library__tags-filter-list-item"
    }, /*#__PURE__*/_react.default.createElement(_appUi.Checkbox, {
      checked: ((_props$selected$taxon = props.selected[taxonomy.type]) === null || _props$selected$taxon === void 0 ? void 0 : _props$selected$taxon.includes(taxonomy.text)) || false,
      onChange: function onChange(e) {
        var checked = e.target.checked;
        props.onSelect(taxonomy.type, function (prev) {
          return checked ? [].concat((0, _toConsumableArray2.default)(prev), [taxonomy.text]) : prev.filter(function (tagId) {
            return tagId !== taxonomy.text;
          });
        });
      }
    }), taxonomy.text);
  })));
}

TaxonomiesFilterList.propTypes = {
  taxonomiesByType: PropTypes.shape({
    key: PropTypes.string,
    label: PropTypes.string,
    data: PropTypes.arrayOf(PropTypes.instanceOf(_taxonomy.default)),
    isOpenByDefault: PropTypes.bool
  }),
  selected: PropTypes.objectOf(PropTypes.arrayOf(PropTypes.string)),
  onSelect: PropTypes.func
};

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/components/taxonomies-filter.js":
/*!*********************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/components/taxonomies-filter.js ***!
  \*********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = TaxonomiesFilter;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

var _taxonomiesFilterList = _interopRequireDefault(__webpack_require__(/*! ./taxonomies-filter-list */ "../core/app/modules/kit-library/assets/js/components/taxonomies-filter-list.js"));

var _taxonomy = _interopRequireWildcard(__webpack_require__(/*! ../models/taxonomy */ "../core/app/modules/kit-library/assets/js/models/taxonomy.js"));

__webpack_require__(/*! ./tags-filter.scss */ "../core/app/modules/kit-library/assets/js/components/tags-filter.scss");

var _React = _react.default,
    useMemo = _React.useMemo;

function TaxonomiesFilter(props) {
  var taxonomiesByType = useMemo(function () {
    if (!props.taxonomies) {
      return [];
    }

    return _taxonomy.taxonomyType.map(function (tagType) {
      return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, tagType), {}, {
        data: props.taxonomies.filter(function (item) {
          return item.type === tagType.key;
        })
      });
    }).filter(function (_ref) {
      var data = _ref.data;
      return data.length > 0;
    });
  }, [props.taxonomies]);
  return /*#__PURE__*/_react.default.createElement("div", {
    className: "e-kit-library__tags-filter"
  }, taxonomiesByType.map(function (group) {
    return /*#__PURE__*/_react.default.createElement(_taxonomiesFilterList.default, {
      key: group.key,
      taxonomiesByType: group,
      selected: props.selected,
      onSelect: props.onSelect
    });
  }));
}

TaxonomiesFilter.propTypes = {
  selected: PropTypes.objectOf(PropTypes.arrayOf(PropTypes.string)),
  onSelect: PropTypes.func,
  taxonomies: PropTypes.arrayOf(PropTypes.instanceOf(_taxonomy.default))
};

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/context/last-filter-context.js":
/*!********************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/context/last-filter-context.js ***!
  \********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.useLastFilterContext = useLastFilterContext;
exports.LastFilterProvider = LastFilterProvider;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var LastFilterContext = (0, _react.createContext)({});
/**
 * Consume the context
 *
 * @returns {{}}
 */

function useLastFilterContext() {
  return (0, _react.useContext)(LastFilterContext);
}
/**
 * Settings Provider
 *
 * @param props
 * @returns {JSX.Element}
 * @constructor
 */


function LastFilterProvider(props) {
  var _useState = (0, _react.useState)({}),
      _useState2 = (0, _slicedToArray2.default)(_useState, 2),
      lastFilter = _useState2[0],
      setLastFilter = _useState2[1];

  return /*#__PURE__*/_react.default.createElement(LastFilterContext.Provider, {
    value: {
      lastFilter: lastFilter,
      setLastFilter: setLastFilter
    }
  }, props.children);
}

LastFilterProvider.propTypes = {
  children: PropTypes.any
};

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/context/settings-context.js":
/*!*****************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/context/settings-context.js ***!
  \*****************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.useSettingsContext = useSettingsContext;
exports.SettingsProvider = SettingsProvider;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var SettingsContext = (0, _react.createContext)({});
/**
 * Consume the context
 *
 * @returns {{emptyTrashDays: number}}
 */

function useSettingsContext() {
  return (0, _react.useContext)(SettingsContext);
}
/**
 * Settings Provider
 *
 * @param props
 * @returns {JSX.Element}
 * @constructor
 */


function SettingsProvider(props) {
  var _useState = (0, _react.useState)({}),
      _useState2 = (0, _slicedToArray2.default)(_useState, 2),
      settings = _useState2[0],
      setSettings = _useState2[1];

  var updateSettings = (0, _react.useCallback)(function (newSettings) {
    setSettings(function (prev) {
      return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, prev), newSettings);
    });
  }, [setSettings]);
  (0, _react.useEffect)(function () {
    setSettings(props.value);
  }, [setSettings]);
  return /*#__PURE__*/_react.default.createElement(SettingsContext.Provider, {
    value: {
      settings: settings,
      setSettings: setSettings,
      updateSettings: updateSettings
    }
  }, props.children);
}

SettingsProvider.propTypes = {
  children: PropTypes.any,
  value: PropTypes.object.isRequired
};

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/hooks/use-content-types.js":
/*!****************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/hooks/use-content-types.js ***!
  \****************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = useContentTypes;
exports.KEY = void 0;

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

var _promise = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/promise */ "../node_modules/@babel/runtime-corejs2/core-js/promise.js"));

var _contentType = _interopRequireDefault(__webpack_require__(/*! ../models/content-type */ "../core/app/modules/kit-library/assets/js/models/content-type.js"));

var _reactQuery = __webpack_require__(/*! react-query */ "../node_modules/react-query/es/index.js");

var KEY = 'content-types';
/**
 * The data should come from the server, this is a temp solution that helps to demonstrate that data comes from the server
 * but for now this is a local data.
 *
 * @returns {UseQueryResult<Promise.constructor, unknown>}
 */

exports.KEY = KEY;

function useContentTypes() {
  return (0, _reactQuery.useQuery)([KEY], fetchContentTypes);
}
/**
 * @returns {Promise.constructor}
 */


function fetchContentTypes() {
  return _promise.default.resolve([{
    id: 'page',
    label: __('Pages', 'elementor'),
    doc_types: ['wp-page'],
    order: 0
  }, {
    id: 'site-parts',
    label: __('Site Parts', 'elementor'),
    doc_types: ['archive', 'error-404', 'footer', 'header', 'search-results', 'single-page', 'single-post', // WooCommerce types
    'product', 'product-archive', // Legacy Types
    '404', 'single'],
    order: 1
  }, {
    id: 'popup',
    label: __('Popups', 'elementor'),
    doc_types: ['popup'],
    order: 2
  }]).then(function (data) {
    return data.map(function (contentType) {
      return _contentType.default.createFromResponse(contentType);
    });
  });
}

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/hooks/use-download-link-mutation.js":
/*!*************************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/hooks/use-download-link-mutation.js ***!
  \*************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = useDownloadLinkMutation;

var _react = __webpack_require__(/*! react */ "react");

var _reactQuery = __webpack_require__(/*! react-query */ "../node_modules/react-query/es/index.js");

function useDownloadLinkMutation(model, _ref) {
  var onError = _ref.onError,
      onSuccess = _ref.onSuccess;
  var downloadLink = (0, _react.useCallback)(function () {
    return $e.data.get('kits/download-link', {
      id: model.id
    }, {
      refresh: true
    });
  }, [model]);
  return (0, _reactQuery.useMutation)(downloadLink, {
    onSuccess: onSuccess,
    onError: onError
  });
}

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/hooks/use-kit-call-to-action.js":
/*!*********************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/hooks/use-kit-call-to-action.js ***!
  \*********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = useKitCallToAction;
exports.TYPE_APPLY = exports.TYPE_PROMOTION = exports.TYPE_CONNECT = void 0;

var _react = __webpack_require__(/*! react */ "react");

var _settingsContext = __webpack_require__(/*! ../context/settings-context */ "../core/app/modules/kit-library/assets/js/context/settings-context.js");

var TYPE_CONNECT = 'connect';
exports.TYPE_CONNECT = TYPE_CONNECT;
var TYPE_PROMOTION = 'promotion';
exports.TYPE_PROMOTION = TYPE_PROMOTION;
var TYPE_APPLY = 'apply';
exports.TYPE_APPLY = TYPE_APPLY;

function useKitCallToAction(kitAccessLevel) {
  var _useSettingsContext = (0, _settingsContext.useSettingsContext)(),
      settings = _useSettingsContext.settings; // subscriptionPlan can be null when the context is not filled (can be happened when using back button in the browser.)


  var subscriptionPlan = (0, _react.useMemo)(function () {
    var _settings$subscriptio;

    return (_settings$subscriptio = settings.subscription_plans) === null || _settings$subscriptio === void 0 ? void 0 : _settings$subscriptio[kitAccessLevel];
  }, [settings, kitAccessLevel]);
  var type = (0, _react.useMemo)(function () {
    // The user can apply this kit (the user access level is equal or greater then the kit access level).
    var isAuthorizeToApplyKit = settings.access_level >= kitAccessLevel; // The user in not connected and has pro plugin or the kit is a free kit.

    if (!settings.is_library_connected && (settings.is_pro || isAuthorizeToApplyKit)) {
      return TYPE_CONNECT;
    } // The user is connected or has only core plugin and cannot access this kit.


    if (!isAuthorizeToApplyKit) {
      return TYPE_PROMOTION;
    } // The user is connected and can access the kit.


    return TYPE_APPLY;
  }, [settings, kitAccessLevel]);
  return [type, {
    subscriptionPlan: subscriptionPlan
  }];
}

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/hooks/use-kit-document-by-type.js":
/*!***********************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/hooks/use-kit-document-by-type.js ***!
  \***********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = useKitDocumentByType;

var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

var _useContentTypes = _interopRequireDefault(__webpack_require__(/*! ./use-content-types */ "../core/app/modules/kit-library/assets/js/hooks/use-content-types.js"));

var _react = __webpack_require__(/*! react */ "react");

function useKitDocumentByType(kit) {
  var contentTypesQuery = (0, _useContentTypes.default)();
  var data = (0, _react.useMemo)(function () {
    if (!kit || !contentTypesQuery.data) {
      return [];
    }

    return kit.getDocumentsByTypes(contentTypesQuery.data).sort(function (a, b) {
      return a.order - b.order;
    });
  }, [kit, contentTypesQuery.data]);
  return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, contentTypesQuery), {}, {
    data: data
  });
}

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/hooks/use-kit-favorites-mutations.js":
/*!**************************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/hooks/use-kit-favorites-mutations.js ***!
  \**************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.useKitFavoritesMutations = useKitFavoritesMutations;

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

var _kit = _interopRequireDefault(__webpack_require__(/*! ../models/kit */ "../core/app/modules/kit-library/assets/js/models/kit.js"));

var _react = __webpack_require__(/*! react */ "react");

var _useKits = __webpack_require__(/*! ../hooks/use-kits */ "../core/app/modules/kit-library/assets/js/hooks/use-kits.js");

var _useKit = __webpack_require__(/*! ../hooks/use-kit */ "../core/app/modules/kit-library/assets/js/hooks/use-kit.js");

var _reactQuery = __webpack_require__(/*! react-query */ "../node_modules/react-query/es/index.js");

function useKitFavoritesMutations() {
  var queryClient = (0, _reactQuery.useQueryClient)();
  var onSuccess = (0, _react.useCallback)(function (_ref) {
    var data = _ref.data;
    var id = data.data.id;
    var isFavorite = data.data.is_favorite; // Update the kit list if the list exists.

    if (queryClient.getQueryData([_useKits.KEY])) {
      queryClient.setQueryData([_useKits.KEY], function (kits) {
        if (!kits) {
          return kits;
        }

        return kits.map(function (item) {
          if (item.id === id) {
            item.isFavorite = isFavorite; // Should return a new kit to trigger rerender.

            return item.clone();
          }

          return item;
        });
      });
    } // Update specific kit if the kit exists


    if (queryClient.getQueryData([_useKit.KEY, id])) {
      queryClient.setQueryData([_useKit.KEY, id], function (currentKit) {
        currentKit.isFavorite = isFavorite; // Should return a new kit to trigger rerender.

        return currentKit.clone();
      });
    }
  }, [queryClient]);
  var addToFavorites = (0, _reactQuery.useMutation)(function (id) {
    return $e.data.create('kits/favorites', {}, {
      id: id
    });
  }, {
    onSuccess: onSuccess
  });
  var removeFromFavorites = (0, _reactQuery.useMutation)(function (id) {
    return $e.data.delete('kits/favorites', {
      id: id
    });
  }, {
    onSuccess: onSuccess
  });
  return {
    addToFavorites: addToFavorites,
    removeFromFavorites: removeFromFavorites,
    isLoading: addToFavorites.isLoading || removeFromFavorites.isLoading
  };
}

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/hooks/use-kit.js":
/*!******************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/hooks/use-kit.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = useKit;
exports.KEY = void 0;

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

var _kit = _interopRequireDefault(__webpack_require__(/*! ../models/kit */ "../core/app/modules/kit-library/assets/js/models/kit.js"));

var _useKits = __webpack_require__(/*! ./use-kits */ "../core/app/modules/kit-library/assets/js/hooks/use-kits.js");

var _react = __webpack_require__(/*! react */ "react");

var _reactQuery = __webpack_require__(/*! react-query */ "../node_modules/react-query/es/index.js");

var KEY = 'kit';
exports.KEY = KEY;

function useKit(id) {
  // A function that returns existing data from the kit list for a placeholder data before the kit request will resolved.
  var placeholderDataCallback = usePlaceholderDataCallback(id);
  return (0, _reactQuery.useQuery)([KEY, id], fetchKitItem, {
    placeholderData: placeholderDataCallback
  });
}
/**
 * Return placeholder function for kit query.
 *
 * @param id
 * @returns {function(): (undefined|*)}
 */


function usePlaceholderDataCallback(id) {
  var queryClient = (0, _reactQuery.useQueryClient)();
  return (0, _react.useCallback)(function () {
    var _queryClient$getQuery;

    var placeholder = (_queryClient$getQuery = queryClient.getQueryData(_useKits.KEY)) === null || _queryClient$getQuery === void 0 ? void 0 : _queryClient$getQuery.find(function (kit) {
      return kit.id === id;
    });

    if (!placeholder) {
      return;
    }

    return placeholder;
  }, [queryClient, id]);
}
/**
 * Fetch kit
 *
 * @param key
 * @param id
 * @returns {Promise<Kit>}
 */


function fetchKitItem(_ref) {
  var _ref$queryKey = (0, _slicedToArray2.default)(_ref.queryKey, 2),
      key = _ref$queryKey[0],
      id = _ref$queryKey[1];

  return $e.data.get('kits/index', {
    id: id
  }, {
    refresh: true
  }).then(function (response) {
    return response.data;
  }).then(function (_ref2) {
    var data = _ref2.data;
    return _kit.default.createFromResponse(data);
  });
}

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/hooks/use-kits.js":
/*!*******************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/hooks/use-kits.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = useKits;
exports.defaultQueryParams = exports.KEY = void 0;

var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

__webpack_require__(/*! core-js/modules/es6.regexp.search.js */ "../node_modules/core-js/modules/es6.regexp.search.js");

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/toConsumableArray */ "../node_modules/@babel/runtime-corejs2/helpers/toConsumableArray.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _objectSpread3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

var _kit = _interopRequireDefault(__webpack_require__(/*! ../models/kit */ "../core/app/modules/kit-library/assets/js/models/kit.js"));

var _useSelectedTaxonomies = _interopRequireDefault(__webpack_require__(/*! ./use-selected-taxonomies */ "../core/app/modules/kit-library/assets/js/hooks/use-selected-taxonomies.js"));

var _taxonomy = __webpack_require__(/*! ../models/taxonomy */ "../core/app/modules/kit-library/assets/js/models/taxonomy.js");

var _reactQuery = __webpack_require__(/*! react-query */ "../node_modules/react-query/es/index.js");

var _react = __webpack_require__(/*! react */ "react");

var KEY = 'kits';
/**
 * The default query params
 *
 * @type {object}
 */

exports.KEY = KEY;
var defaultQueryParams = {
  favorite: false,
  search: '',
  taxonomies: _taxonomy.taxonomyType.reduce(function (current, _ref) {
    var key = _ref.key;
    return (0, _objectSpread3.default)((0, _objectSpread3.default)({}, current), {}, (0, _defineProperty2.default)({}, key, []));
  }, {}),
  order: {
    direction: 'desc',
    by: 'featuredIndex'
  }
};
exports.defaultQueryParams = defaultQueryParams;
var kitsPipeFunctions = {
  /**
   * Filter by favorite
   *
   * @param data
   * @param queryParams
   * @returns {array}
   */
  favoriteFilter: function favoriteFilter(data, queryParams) {
    if (!queryParams.favorite) {
      return data;
    }

    return data.filter(function (item) {
      return item.isFavorite;
    });
  },

  /**
   * filter by search term.
   *
   * @param data
   * @param queryParams
   * @returns {array}
   */
  searchFilter: function searchFilter(data, queryParams) {
    if (!queryParams.search) {
      return data;
    }

    return data.filter(function (item) {
      var keywords = [].concat((0, _toConsumableArray2.default)(item.keywords), [item.title]);
      var searchTerm = queryParams.search.toLowerCase();
      return keywords.some(function (keyword) {
        return keyword.toLowerCase().includes(searchTerm);
      });
    });
  },

  /**
   * Filter by taxonomies.
   * In each taxonomy type it use the OR operator and between types it uses the AND operator.
   *
   * @param data
   * @param queryParams
   * @returns {array}
   */
  taxonomiesFilter: function taxonomiesFilter(data, queryParams) {
    return (0, _values.default)(queryParams.taxonomies).filter(function (taxonomies) {
      return taxonomies.length;
    }).reduce(function (current, taxonomies) {
      return current.filter(function (item) {
        return taxonomies.some(function (taxonomy) {
          return item.taxonomies.some(function (itemTaxonomy) {
            return taxonomy === itemTaxonomy;
          });
        });
      });
    }, data);
  },

  /**
   * Sort all the data by the "order" query param
   *
   * @param data
   * @param queryParams
   * @returns {array}
   */
  sort: function sort(data, queryParams) {
    var order = queryParams.order;
    return data.sort(function (item1, item2) {
      if ('asc' === order.direction) {
        return item1[order.by] - item2[order.by];
      }

      return item2[order.by] - item1[order.by];
    });
  }
};
/**
 * A util function to transform data throw transform functions
 *
 * @param functions
 * @returns {function(*=, ...[*]): *}
 */

function pipe() {
  for (var _len = arguments.length, functions = new Array(_len), _key = 0; _key < _len; _key++) {
    functions[_key] = arguments[_key];
  }

  return function (value) {
    for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
      args[_key2 - 1] = arguments[_key2];
    }

    return functions.reduce(function (currentValue, currentFunction) {
      return currentFunction.apply(void 0, [currentValue].concat(args));
    }, value);
  };
}
/**
 * Fetch kits
 *
 * @param force
 * @returns {*}
 */


function fetchKits(force) {
  return $e.data.get('kits/index', {
    force: force ? 1 : undefined
  }, {
    refresh: true
  }).then(function (response) {
    return response.data;
  }).then(function (_ref2) {
    var data = _ref2.data;
    return data.map(function (item) {
      return _kit.default.createFromResponse(item);
    });
  });
}
/**
 * Main function.
 *
 * @param initialQueryParams
 * @returns {object}
 */


function useKits() {
  var initialQueryParams = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};

  var _useState = (0, _react.useState)(false),
      _useState2 = (0, _slicedToArray2.default)(_useState, 2),
      force = _useState2[0],
      setForce = _useState2[1];

  var _useState3 = (0, _react.useState)(function () {
    return (0, _objectSpread3.default)((0, _objectSpread3.default)({
      ready: false
    }, defaultQueryParams), initialQueryParams);
  }),
      _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
      queryParams = _useState4[0],
      setQueryParams = _useState4[1];

  var forceRefetch = (0, _react.useCallback)(function () {
    return setForce(true);
  }, [setForce]);
  var clearQueryParams = (0, _react.useCallback)(function () {
    return setQueryParams((0, _objectSpread3.default)((0, _objectSpread3.default)({
      ready: true
    }, defaultQueryParams), initialQueryParams));
  }, [setQueryParams]);
  var query = (0, _reactQuery.useQuery)([KEY], function () {
    return fetchKits(force);
  });
  var data = (0, _react.useMemo)(function () {
    return !query.data ? [] : pipe.apply(void 0, (0, _toConsumableArray2.default)((0, _values.default)(kitsPipeFunctions)))((0, _toConsumableArray2.default)(query.data), queryParams);
  }, [query.data, queryParams]);
  var selectedTaxonomies = (0, _useSelectedTaxonomies.default)(queryParams.taxonomies);
  var isFilterActive = (0, _react.useMemo)(function () {
    return !!queryParams.search || !!selectedTaxonomies.length;
  }, [queryParams]);
  (0, _react.useEffect)(function () {
    if (!force) {
      return;
    }

    query.refetch().then(function () {
      return setForce(false);
    });
  }, [force]);
  return (0, _objectSpread3.default)((0, _objectSpread3.default)({}, query), {}, {
    data: data,
    queryParams: queryParams,
    setQueryParams: setQueryParams,
    clearQueryParams: clearQueryParams,
    forceRefetch: forceRefetch,
    isFilterActive: isFilterActive
  });
}

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/hooks/use-selected-taxonomies.js":
/*!**********************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/hooks/use-selected-taxonomies.js ***!
  \**********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = useSelectedTaxonomies;

var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/toConsumableArray */ "../node_modules/@babel/runtime-corejs2/helpers/toConsumableArray.js"));

var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));

var _react = __webpack_require__(/*! react */ "react");

function useSelectedTaxonomies(taxonomiesFilter) {
  return (0, _react.useMemo)(function () {
    return (0, _values.default)(taxonomiesFilter).reduce(function (current, groupedTaxonomies) {
      return [].concat((0, _toConsumableArray2.default)(current), (0, _toConsumableArray2.default)(groupedTaxonomies));
    });
  }, [taxonomiesFilter]);
}

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/hooks/use-taxonomies.js":
/*!*************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/hooks/use-taxonomies.js ***!
  \*************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = useTaxonomies;
exports.KEY = void 0;

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _taxonomy = _interopRequireDefault(__webpack_require__(/*! ../models/taxonomy */ "../core/app/modules/kit-library/assets/js/models/taxonomy.js"));

var _reactQuery = __webpack_require__(/*! react-query */ "../node_modules/react-query/es/index.js");

var _react = __webpack_require__(/*! react */ "react");

var KEY = 'tags';
exports.KEY = KEY;

function useTaxonomies() {
  var _useState = (0, _react.useState)(false),
      _useState2 = (0, _slicedToArray2.default)(_useState, 2),
      force = _useState2[0],
      setForce = _useState2[1];

  var forceRefetch = (0, _react.useCallback)(function () {
    return setForce(true);
  }, [setForce]);
  var query = (0, _reactQuery.useQuery)([KEY], function () {
    return fetchTaxonomies(force);
  });
  (0, _react.useEffect)(function () {
    if (!force) {
      return;
    }

    query.refetch().then(function () {
      return setForce(false);
    });
  }, [force]);
  return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, query), {}, {
    forceRefetch: forceRefetch
  });
}

function fetchTaxonomies(force) {
  return $e.data.get('kit-taxonomies/index', {
    force: force ? 1 : undefined
  }, {
    refresh: true
  }).then(function (response) {
    return response.data;
  }).then(function (_ref) {
    var data = _ref.data;
    return data.map(function (taxonomy) {
      return _taxonomy.default.createFromResponse(taxonomy);
    });
  });
}

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/models/base-model.js":
/*!**********************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/models/base-model.js ***!
  \**********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var BaseModel = /*#__PURE__*/function () {
  function BaseModel() {
    (0, _classCallCheck2.default)(this, BaseModel);
  }

  (0, _createClass2.default)(BaseModel, [{
    key: "clone",
    value:
    /**
     * Clone to object to avoid changing the reference.
     *
     * @returns {BaseModel}
     */
    function clone() {
      var _this = this;

      var instance = new this.constructor();
      (0, _keys.default)(this).forEach(function (key) {
        instance[key] = _this[key];
      });
      return instance;
    }
    /**
     * Using init and not the default constructor because there is a problem to fill the instance
     * dynamically in the constructor.
     *
     * @param data
     * @returns {BaseModel}
     */

  }, {
    key: "init",
    value: function init() {
      var _this2 = this;

      var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      (0, _entries.default)(data).forEach(function (_ref) {
        var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
            key = _ref2[0],
            value = _ref2[1];

        _this2[key] = value;
      });
      return this;
    }
  }]);
  return BaseModel;
}();

exports.default = BaseModel;

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/models/content-type.js":
/*!************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/models/content-type.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _baseModel = _interopRequireDefault(__webpack_require__(/*! ./base-model */ "../core/app/modules/kit-library/assets/js/models/base-model.js"));

var ContentType = /*#__PURE__*/function (_BaseModel) {
  (0, _inherits2.default)(ContentType, _BaseModel);

  var _super = (0, _createSuper2.default)(ContentType);

  function ContentType() {
    var _this;

    (0, _classCallCheck2.default)(this, ContentType);

    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }

    _this = _super.call.apply(_super, [this].concat(args));
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "id", '');
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "label", '');
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "documentTypes", []);
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "documents", []);
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "order", 0);
    return _this;
  }

  (0, _createClass2.default)(ContentType, null, [{
    key: "createFromResponse",
    value: function createFromResponse(documentType) {
      return new ContentType().init({
        id: documentType.id,
        label: documentType.label,
        documentTypes: documentType.doc_types,
        order: documentType.order,
        documents: []
      });
    }
  }]);
  return ContentType;
}(_baseModel.default);

exports.default = ContentType;

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/models/document.js":
/*!********************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/models/document.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _baseModel = _interopRequireDefault(__webpack_require__(/*! ./base-model */ "../core/app/modules/kit-library/assets/js/models/base-model.js"));

var Document = /*#__PURE__*/function (_BaseModel) {
  (0, _inherits2.default)(Document, _BaseModel);

  var _super = (0, _createSuper2.default)(Document);

  function Document() {
    var _this;

    (0, _classCallCheck2.default)(this, Document);

    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }

    _this = _super.call.apply(_super, [this].concat(args));
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "id", '');
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "title", '');
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "documentType", '');
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "thumbnailUrl", '');
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "previewUrl", '');
    return _this;
  }

  (0, _createClass2.default)(Document, null, [{
    key: "createFromResponse",
    value:
    /**
     * Create a tag from server response
     *
     * @param document
     */
    function createFromResponse(document) {
      return new Document().init({
        id: document.id,
        title: document.title,
        documentType: document.doc_type,
        thumbnailUrl: document.thumbnail_url,
        previewUrl: document.preview_url
      });
    }
  }]);
  return Document;
}(_baseModel.default);

exports.default = Document;

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/models/kit.js":
/*!***************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/models/kit.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _baseModel = _interopRequireDefault(__webpack_require__(/*! ./base-model */ "../core/app/modules/kit-library/assets/js/models/base-model.js"));

var _document = _interopRequireDefault(__webpack_require__(/*! ./document */ "../core/app/modules/kit-library/assets/js/models/document.js"));

var Kit = /*#__PURE__*/function (_BaseModel) {
  (0, _inherits2.default)(Kit, _BaseModel);

  var _super = (0, _createSuper2.default)(Kit);

  function Kit() {
    var _this;

    (0, _classCallCheck2.default)(this, Kit);

    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }

    _this = _super.call.apply(_super, [this].concat(args));
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "id", '');
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "title", '');
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "description", '');
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "isFavorite", false);
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "thumbnailUrl", null);
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "previewUrl", '');
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "accessLevel", 0);
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "trendIndex", null);
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "popularityIndex", null);
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "featuredIndex", null);
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "createdAt", null);
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "updatedAt", null);
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "keywords", []);
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "taxonomies", []);
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "documents", []);
    return _this;
  }

  (0, _createClass2.default)(Kit, [{
    key: "getDocumentsByTypes",
    value:
    /**
     * Get content types as param and group all the documents based on it.
     *
     * @param {ContentType[]} contentTypes
     * @returns {ContentType[]}
     */
    function getDocumentsByTypes(contentTypes) {
      var _this2 = this;

      return contentTypes.map(function (contentType) {
        contentType = contentType.clone();
        contentType.documents = _this2.documents.filter(function (document) {
          return contentType.documentTypes.includes(document.documentType);
        });
        return contentType;
      });
    }
  }], [{
    key: "createFromResponse",
    value:
    /**
     * Create a kit from server response
     *
     * @param kit
     */
    function createFromResponse(kit) {
      return new Kit().init({
        id: kit.id,
        title: kit.title,
        description: kit.description,
        isFavorite: kit.is_favorite,
        thumbnailUrl: kit.thumbnail_url,
        previewUrl: kit.preview_url,
        accessLevel: kit.access_level,
        trendIndex: kit.trend_index,
        popularityIndex: kit.popularity_index,
        featuredIndex: kit.featured_index,
        // TODO: Remove when the API is stable (when date params always exists)
        createdAt: kit.created_at ? new Date(kit.created_at) : null,
        updatedAt: kit.updated_at ? new Date(kit.updated_at) : null,
        //
        keywords: kit.keywords,
        taxonomies: kit.taxonomies,
        documents: kit.documents ? kit.documents.map(function (document) {
          return _document.default.createFromResponse(document);
        }) : []
      });
    }
  }]);
  return Kit;
}(_baseModel.default);

exports.default = Kit;

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/models/taxonomy.js":
/*!********************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/models/taxonomy.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.taxonomyType = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _baseModel = _interopRequireDefault(__webpack_require__(/*! ./base-model */ "../core/app/modules/kit-library/assets/js/models/base-model.js"));

var taxonomyType = [{
  key: 'categories',
  label: __('Categories', 'elementor'),
  isOpenByDefault: true
}, {
  key: 'tags',
  label: __('Tags', 'elementor')
}, {
  key: 'types',
  label: __('Kit Types', 'elementor')
}, {
  key: 'features',
  label: __('Features', 'elementor')
}];
exports.taxonomyType = taxonomyType;

var Taxonomy = /*#__PURE__*/function (_BaseModel) {
  (0, _inherits2.default)(Taxonomy, _BaseModel);

  var _super = (0, _createSuper2.default)(Taxonomy);

  function Taxonomy() {
    var _this;

    (0, _classCallCheck2.default)(this, Taxonomy);

    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }

    _this = _super.call.apply(_super, [this].concat(args));
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "text", '');
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "type", 'tag');
    return _this;
  }

  (0, _createClass2.default)(Taxonomy, null, [{
    key: "createFromResponse",
    value:
    /**
     * Create a tag from server response
     *
     * @param taxonomy
     */
    function createFromResponse(taxonomy) {
      return new Taxonomy().init({
        text: taxonomy.text,
        type: taxonomy.type
      });
    }
  }]);
  return Taxonomy;
}(_baseModel.default);

exports.default = Taxonomy;

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/pages/favorites/favorites.js":
/*!******************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/pages/favorites/favorites.js ***!
  \******************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Favorites;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _index = _interopRequireDefault(__webpack_require__(/*! ../index/index */ "../core/app/modules/kit-library/assets/js/pages/index/index.js"));

var _errorScreen = _interopRequireDefault(__webpack_require__(/*! ../../components/error-screen */ "../core/app/modules/kit-library/assets/js/components/error-screen.js"));

var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js");

function Favorites(props) {
  var navigate = (0, _router.useNavigate)();

  var indexNotResultsFavorites = /*#__PURE__*/_react.default.createElement(_errorScreen.default, {
    title: __('No favorites here yet...', 'elementor'),
    description: __('Use the heart icon to save kits that inspire you. You\'ll be able to find them here.', 'elementor'),
    button: {
      text: __('Continue browsing.', 'elementor'),
      action: function action() {
        return navigate('/kit-library');
      }
    }
  });

  return /*#__PURE__*/_react.default.createElement(_index.default, {
    path: props.path,
    initialQueryParams: {
      favorite: true
    },
    renderNoResultsComponent: function renderNoResultsComponent(_ref) {
      var defaultComponent = _ref.defaultComponent,
          isFilterActive = _ref.isFilterActive;

      if (!isFilterActive) {
        return indexNotResultsFavorites;
      }

      return defaultComponent;
    }
  });
}

Favorites.propTypes = {
  path: PropTypes.string
};

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/pages/index/index-header.js":
/*!*****************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/pages/index/index-header.js ***!
  \*****************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = IndexHeader;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _header = _interopRequireDefault(__webpack_require__(/*! ../../components/layout/header */ "../core/app/modules/kit-library/assets/js/components/layout/header.js"));

var _appUi = __webpack_require__(/*! @elementor/app-ui */ "@elementor/app-ui");

var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js");

__webpack_require__(/*! ./index-header.scss */ "../core/app/modules/kit-library/assets/js/pages/index/index-header.scss");

function IndexHeader(props) {
  var navigate = (0, _router.useNavigate)();

  var _useState = (0, _react.useState)(false),
      _useState2 = (0, _slicedToArray2.default)(_useState, 2),
      isInfoModalOpen = _useState2[0],
      setIsInfoModalOpen = _useState2[1];

  var buttons = (0, _react.useMemo)(function () {
    return [{
      id: 'info',
      text: __('Info', 'elementor-pro'),
      hideText: true,
      icon: 'eicon-info-circle-o',
      onClick: function onClick() {
        return setIsInfoModalOpen(true);
      }
    }, {
      id: 'refetch',
      text: __('Refetch', 'elementor-pro'),
      hideText: true,
      icon: "eicon-sync ".concat(props.isFetching ? 'eicon-animation-spin' : ''),
      onClick: props.refetch
    }, {
      id: 'import',
      text: __('Import', 'elementor-pro'),
      hideText: true,
      icon: 'eicon-upload-circle-o',
      onClick: function onClick() {
        return navigate('/import?referrer=kit-library');
      }
    }];
  }, [props.isFetching, props.refetch]);
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_header.default, {
    buttons: buttons
  }), /*#__PURE__*/_react.default.createElement(_appUi.ModalProvider, {
    title: __('Welcome to the Library', 'elementor'),
    show: isInfoModalOpen,
    setShow: setIsInfoModalOpen
  }, /*#__PURE__*/_react.default.createElement("div", {
    className: "e-kit-library-header-info-modal-container"
  }, /*#__PURE__*/_react.default.createElement(_appUi.Heading, {
    tag: "h3",
    variant: "h3"
  }, __('What\'s a kit?', 'elementor')), /*#__PURE__*/_react.default.createElement(_appUi.Text, null, __('A Template Kit is full, ready-made design that you can apply to your site. It includes all the pages, parts, settings and content that you\'d expect in a fully functional website.', 'elementor'))), /*#__PURE__*/_react.default.createElement("div", {
    className: "e-kit-library-header-info-modal-container"
  }, /*#__PURE__*/_react.default.createElement(_appUi.Heading, {
    tag: "h3",
    variant: "h3"
  }, __('What\'s going on in the Kit Library?', 'elementor')), /*#__PURE__*/_react.default.createElement(_appUi.Text, null, __('Search & filter for kits by category and tags, or browse through individual kits to see what\'s inside.', 'elementor'), /*#__PURE__*/_react.default.createElement("br", null), __('Once you\'ve picked a winner, apply it to your site!', 'elementor'))), /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(_appUi.Heading, {
    tag: "h3",
    variant: "h3"
  }, __('Happy browsing!', 'elementor')), /*#__PURE__*/_react.default.createElement(_appUi.Text, null, /*#__PURE__*/_react.default.createElement(_appUi.Button, {
    url: "https://go.elementor.com/app-kit-library-how-to-use-kits",
    target: "_blank",
    rel: "noreferrer",
    text: __('Learn more', 'elementor'),
    color: "link"
  }), ' ', __('about using templates', 'elementor')))));
}

IndexHeader.propTypes = {
  refetch: PropTypes.func.isRequired,
  isFetching: PropTypes.bool
};

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/pages/index/index-sidebar.js":
/*!******************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/pages/index/index-sidebar.js ***!
  \******************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = IndexSidebar;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

var _appUi = __webpack_require__(/*! @elementor/app-ui */ "@elementor/app-ui");

function IndexSidebar(props) {
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, props.menuItems.map(function (item) {
    return /*#__PURE__*/_react.default.createElement(_appUi.MenuItem, {
      key: item.label,
      text: item.label,
      className: "eps-menu-item__link ".concat(item.isActive ? 'eps-menu-item--active' : ''),
      icon: item.icon,
      url: item.url
    });
  }), props.tagsFilterSlot);
}

IndexSidebar.propTypes = {
  tagsFilterSlot: PropTypes.node,
  menuItems: PropTypes.arrayOf(PropTypes.shape({
    label: PropTypes.string,
    icon: PropTypes.string,
    isActive: PropTypes.bool,
    url: PropTypes.string
  }))
};

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/pages/index/index.js":
/*!**********************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/pages/index/index.js ***!
  \**********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Index;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

__webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

__webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");

__webpack_require__(/*! core-js/modules/es6.regexp.search.js */ "../node_modules/core-js/modules/es6.regexp.search.js");

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/toConsumableArray */ "../node_modules/@babel/runtime-corejs2/helpers/toConsumableArray.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _objectSpread4 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

var _content = _interopRequireDefault(__webpack_require__(/*! ../../../../../../assets/js/layout/content */ "../core/app/assets/js/layout/content.js"));

var _envatoPromotion = _interopRequireDefault(__webpack_require__(/*! ../../components/envato-promotion */ "../core/app/modules/kit-library/assets/js/components/envato-promotion.js"));

var _errorScreen = _interopRequireDefault(__webpack_require__(/*! ../../components/error-screen */ "../core/app/modules/kit-library/assets/js/components/error-screen.js"));

var _filterIndicationText = _interopRequireDefault(__webpack_require__(/*! ../../components/filter-indication-text */ "../core/app/modules/kit-library/assets/js/components/filter-indication-text.js"));

var _indexHeader = _interopRequireDefault(__webpack_require__(/*! ./index-header */ "../core/app/modules/kit-library/assets/js/pages/index/index-header.js"));

var _indexSidebar = _interopRequireDefault(__webpack_require__(/*! ./index-sidebar */ "../core/app/modules/kit-library/assets/js/pages/index/index-sidebar.js"));

var _kitList = _interopRequireDefault(__webpack_require__(/*! ../../components/kit-list */ "../core/app/modules/kit-library/assets/js/components/kit-list.js"));

var _layout = _interopRequireDefault(__webpack_require__(/*! ../../components/layout */ "../core/app/modules/kit-library/assets/js/components/layout/index.js"));

var _pageLoader = _interopRequireDefault(__webpack_require__(/*! ../../components/page-loader */ "../core/app/modules/kit-library/assets/js/components/page-loader.js"));

var _searchInput = _interopRequireDefault(__webpack_require__(/*! ../../components/search-input */ "../core/app/modules/kit-library/assets/js/components/search-input.js"));

var _sortSelect = _interopRequireDefault(__webpack_require__(/*! ../../components/sort-select */ "../core/app/modules/kit-library/assets/js/components/sort-select.js"));

var _taxonomiesFilter = _interopRequireDefault(__webpack_require__(/*! ../../components/taxonomies-filter */ "../core/app/modules/kit-library/assets/js/components/taxonomies-filter.js"));

var _useKits2 = _interopRequireWildcard(__webpack_require__(/*! ../../hooks/use-kits */ "../core/app/modules/kit-library/assets/js/hooks/use-kits.js"));

var _usePageTitle = _interopRequireDefault(__webpack_require__(/*! elementor-app/hooks/use-page-title */ "../core/app/assets/js/hooks/use-page-title.js"));

var _useTaxonomies2 = _interopRequireDefault(__webpack_require__(/*! ../../hooks/use-taxonomies */ "../core/app/modules/kit-library/assets/js/hooks/use-taxonomies.js"));

var _appUi = __webpack_require__(/*! @elementor/app-ui */ "@elementor/app-ui");

var _lastFilterContext = __webpack_require__(/*! ../../context/last-filter-context */ "../core/app/modules/kit-library/assets/js/context/last-filter-context.js");

var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js");

__webpack_require__(/*! ./index.scss */ "../core/app/modules/kit-library/assets/js/pages/index/index.scss");

/**
 * Generate select and unselect taxonomy functions.
 *
 * @param setQueryParams
 * @returns {((function(*, *): *)|(function(*=): *))[]}
 */
function useTaxonomiesSelection(setQueryParams) {
  var selectTaxonomy = (0, _react.useCallback)(function (type, callback) {
    return setQueryParams(function (prev) {
      var taxonomies = (0, _objectSpread4.default)({}, prev.taxonomies);
      taxonomies[type] = callback(prev.taxonomies[type]);
      return (0, _objectSpread4.default)((0, _objectSpread4.default)({}, prev), {}, {
        taxonomies: taxonomies
      });
    });
  }, [setQueryParams]);
  var unselectTaxonomy = (0, _react.useCallback)(function (taxonomy) {
    return setQueryParams(function (prev) {
      var taxonomies = (0, _entries.default)(prev.taxonomies).reduce(function (current, _ref) {
        var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
            key = _ref2[0],
            groupedTaxonomies = _ref2[1];

        return (0, _objectSpread4.default)((0, _objectSpread4.default)({}, current), {}, (0, _defineProperty2.default)({}, key, groupedTaxonomies.filter(function (item) {
          return item !== taxonomy;
        })));
      }, {});
      return (0, _objectSpread4.default)((0, _objectSpread4.default)({}, prev), {}, {
        taxonomies: taxonomies
      });
    });
  }, [setQueryParams]);
  return [selectTaxonomy, unselectTaxonomy];
}
/**
 * Generate the menu items for the index page.
 *
 * @param path
 * @returns {array}
 */


function useMenuItems(path) {
  return (0, _react.useMemo)(function () {
    var page = path.replace('/', '');
    return [{
      label: __('All Template Kits', 'elementor'),
      icon: 'eicon-filter',
      isActive: !page,
      url: '/kit-library'
    }, {
      label: __('Favorites', 'elementor'),
      icon: 'eicon-heart-o',
      isActive: 'favorites' === page,
      url: '/kit-library/favorites'
    }];
  }, [path]);
}
/**
 * Update and read the query param from the url
 *
 * @param queryParams
 * @param setQueryParams
 * @param exclude
 */


function useRouterQueryParams(queryParams, setQueryParams) {
  var exclude = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];

  var location = (0, _router.useLocation)(),
      _useLastFilterContext = (0, _lastFilterContext.useLastFilterContext)(),
      setLastFilter = _useLastFilterContext.setLastFilter;

  (0, _react.useEffect)(function () {
    var filteredQueryParams = Object.fromEntries((0, _entries.default)(queryParams).filter(function (_ref3) {
      var _ref4 = (0, _slicedToArray2.default)(_ref3, 2),
          key = _ref4[0],
          item = _ref4[1];

      return !exclude.includes(key) && item;
    }));
    setLastFilter(filteredQueryParams);
    history.replaceState(null, '', decodeURI("#".concat(wp.url.addQueryArgs(location.pathname.split('?')[0] || '/', filteredQueryParams))));
  }, [queryParams]);
  (0, _react.useEffect)(function () {
    var routerQueryParams = (0, _keys.default)(_useKits2.defaultQueryParams).reduce(function (current, key) {
      // TODO: Replace with `wp.url.getQueryArgs` when WordPress 5.7 is the min version
      var queryArg = wp.url.getQueryArg(location.pathname, key);

      if (!queryArg) {
        return current;
      }

      return (0, _objectSpread4.default)((0, _objectSpread4.default)({}, current), {}, (0, _defineProperty2.default)({}, key, queryArg));
    }, {});
    setQueryParams(function (prev) {
      return (0, _objectSpread4.default)((0, _objectSpread4.default)((0, _objectSpread4.default)({}, prev), routerQueryParams), {}, {
        taxonomies: (0, _objectSpread4.default)((0, _objectSpread4.default)({}, prev.taxonomies), routerQueryParams.taxonomies),
        ready: true
      });
    });
  }, []);
}

function Index(props) {
  (0, _usePageTitle.default)({
    title: __('Kit Library', 'elementor')
  });
  var menuItems = useMenuItems(props.path);

  var _useKits = (0, _useKits2.default)(props.initialQueryParams),
      data = _useKits.data,
      isSuccess = _useKits.isSuccess,
      isLoading = _useKits.isLoading,
      isFetching = _useKits.isFetching,
      isError = _useKits.isError,
      queryParams = _useKits.queryParams,
      setQueryParams = _useKits.setQueryParams,
      clearQueryParams = _useKits.clearQueryParams,
      forceRefetch = _useKits.forceRefetch,
      isFilterActive = _useKits.isFilterActive;

  useRouterQueryParams(queryParams, setQueryParams, ['ready'].concat((0, _toConsumableArray2.default)((0, _keys.default)(props.initialQueryParams))));

  var _useTaxonomies = (0, _useTaxonomies2.default)(),
      taxonomiesData = _useTaxonomies.data,
      forceRefetchTaxonomies = _useTaxonomies.forceRefetch,
      isFetchingTaxonomies = _useTaxonomies.isFetching;

  var _useTaxonomiesSelecti = useTaxonomiesSelection(setQueryParams),
      _useTaxonomiesSelecti2 = (0, _slicedToArray2.default)(_useTaxonomiesSelecti, 2),
      selectTaxonomy = _useTaxonomiesSelecti2[0],
      unselectTaxonomy = _useTaxonomiesSelecti2[1];

  return /*#__PURE__*/_react.default.createElement(_layout.default, {
    sidebar: /*#__PURE__*/_react.default.createElement(_indexSidebar.default, {
      tagsFilterSlot: /*#__PURE__*/_react.default.createElement(_taxonomiesFilter.default, {
        selected: queryParams.taxonomies,
        onSelect: selectTaxonomy,
        taxonomies: taxonomiesData
      }),
      menuItems: menuItems
    }),
    header: /*#__PURE__*/_react.default.createElement(_indexHeader.default, {
      refetch: function refetch() {
        forceRefetch();
        forceRefetchTaxonomies();
      },
      isFetching: isFetching || isFetchingTaxonomies
    })
  }, /*#__PURE__*/_react.default.createElement("div", {
    className: "e-kit-library__index-layout-container"
  }, /*#__PURE__*/_react.default.createElement(_appUi.Grid, {
    container: true,
    className: "e-kit-library__index-layout-top-area"
  }, /*#__PURE__*/_react.default.createElement(_appUi.Grid, {
    item: true,
    className: "e-kit-library__index-layout-top-area-search"
  }, /*#__PURE__*/_react.default.createElement(_searchInput.default, {
    placeholder: __('Search all Template Kits...', 'elementor'),
    value: queryParams.search,
    onChange: function onChange(value) {
      return setQueryParams(function (prev) {
        return (0, _objectSpread4.default)((0, _objectSpread4.default)({}, prev), {}, {
          search: value
        });
      });
    }
  }), isFilterActive && /*#__PURE__*/_react.default.createElement(_filterIndicationText.default, {
    queryParams: queryParams,
    resultCount: data.length || 0,
    onClear: clearQueryParams,
    onRemoveTag: unselectTaxonomy
  })), /*#__PURE__*/_react.default.createElement(_appUi.Grid, {
    item: true,
    className: "e-kit-library__index-layout-top-area-sort"
  }, /*#__PURE__*/_react.default.createElement(_sortSelect.default, {
    options: [{
      label: __('Featured', 'elementor'),
      value: 'featuredIndex'
    }, {
      label: __('New', 'elementor'),
      value: 'createdAt'
    }, {
      label: __('Popular', 'elementor'),
      value: 'popularityIndex'
    }, {
      label: __('Trending', 'elementor'),
      value: 'trendIndex'
    }],
    value: queryParams.order,
    onChange: function onChange(order) {
      return setQueryParams(function (prev) {
        return (0, _objectSpread4.default)((0, _objectSpread4.default)({}, prev), {}, {
          order: order
        });
      });
    }
  }))), /*#__PURE__*/_react.default.createElement(_content.default, {
    className: "e-kit-library__index-layout-main"
  }, /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, isLoading && /*#__PURE__*/_react.default.createElement(_pageLoader.default, null), isError && /*#__PURE__*/_react.default.createElement(_errorScreen.default, {
    title: __('Something went wrong.', 'elementor'),
    description: __('Nothing to worry about, use 🔄 on the top right to try again. If the problem continues, head over to the Help Center.', 'elementor'),
    button: {
      text: __('Learn More', 'elementor'),
      url: 'http://go.elementor.com/app-kit-library-error',
      target: '_blank'
    }
  }), isSuccess && 0 < data.length && queryParams.ready && /*#__PURE__*/_react.default.createElement(_kitList.default, {
    data: data
  }), isSuccess && 0 === data.length && queryParams.ready && props.renderNoResultsComponent({
    defaultComponent: /*#__PURE__*/_react.default.createElement(_errorScreen.default, {
      title: __('No results matched your search.', 'elementor'),
      description: __('Try different keywords or ', 'elementor'),
      button: {
        text: __('Continue browsing.', 'elementor'),
        action: clearQueryParams
      }
    }),
    isFilterActive: isFilterActive
  }), /*#__PURE__*/_react.default.createElement(_envatoPromotion.default, null)))));
}

Index.propTypes = {
  path: PropTypes.string,
  initialQueryParams: PropTypes.object,
  renderNoResultsComponent: PropTypes.func
};
Index.defaultProps = {
  initialQueryParams: {},
  renderNoResultsComponent: function renderNoResultsComponent(_ref5) {
    var defaultComponent = _ref5.defaultComponent;
    return defaultComponent;
  }
};

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/pages/overview/overview-content-group-item.js":
/*!***********************************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/pages/overview/overview-content-group-item.js ***!
  \***********************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = OverviewContentGroupItem;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _document = _interopRequireDefault(__webpack_require__(/*! ../../models/document */ "../core/app/modules/kit-library/assets/js/models/document.js"));

var _appUi = __webpack_require__(/*! @elementor/app-ui */ "@elementor/app-ui");

function OverviewContentGroupItem(props) {
  return /*#__PURE__*/_react.default.createElement(_appUi.Card, null, /*#__PURE__*/_react.default.createElement(_appUi.CardHeader, null, /*#__PURE__*/_react.default.createElement(_appUi.Heading, {
    tag: "h3",
    title: props.document.title,
    variant: "h5",
    className: "eps-card__headline"
  }, props.document.title)), /*#__PURE__*/_react.default.createElement(_appUi.CardBody, null, /*#__PURE__*/_react.default.createElement(_appUi.CardImage, {
    alt: props.document.title,
    src: props.document.thumbnailUrl || ''
  }, props.document.previewUrl && /*#__PURE__*/_react.default.createElement(_appUi.CardOverlay, null, /*#__PURE__*/_react.default.createElement(_appUi.Button, {
    className: "e-kit-library__kit-item-overlay-overview-button",
    text: __('View Demo', 'elementor'),
    icon: "eicon-preview-medium",
    url: "/kit-library/preview/".concat(props.kitId, "?document_id=").concat(props.document.id)
  })))));
}

OverviewContentGroupItem.propTypes = {
  document: PropTypes.instanceOf(_document.default).isRequired,
  kitId: PropTypes.string.isRequired
};

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/pages/overview/overview-content-group.js":
/*!******************************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/pages/overview/overview-content-group.js ***!
  \******************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = OverviewContentGroup;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

var _contentType = _interopRequireDefault(__webpack_require__(/*! ../../models/content-type */ "../core/app/modules/kit-library/assets/js/models/content-type.js"));

var _overviewContentGroupItem = _interopRequireDefault(__webpack_require__(/*! ./overview-content-group-item */ "../core/app/modules/kit-library/assets/js/pages/overview/overview-content-group-item.js"));

var _appUi = __webpack_require__(/*! @elementor/app-ui */ "@elementor/app-ui");

function OverviewContentGroup(props) {
  var _props$contentType, _props$contentType$do;

  if (((_props$contentType = props.contentType) === null || _props$contentType === void 0 ? void 0 : (_props$contentType$do = _props$contentType.documents) === null || _props$contentType$do === void 0 ? void 0 : _props$contentType$do.length) <= 0) {
    return '';
  }

  return /*#__PURE__*/_react.default.createElement("div", {
    className: "e-kit-library__content-overview-group-item"
  }, /*#__PURE__*/_react.default.createElement(_appUi.Heading, {
    tag: "h3",
    variant: "h3",
    className: "e-kit-library__content-overview-group-title"
  }, props.contentType.label), /*#__PURE__*/_react.default.createElement(_appUi.CssGrid, {
    spacing: 24,
    colMinWidth: 250
  }, props.contentType.documents.map(function (document) {
    return /*#__PURE__*/_react.default.createElement(_overviewContentGroupItem.default, {
      key: document.id,
      document: document,
      kitId: props.kitId
    });
  })));
}

OverviewContentGroup.propTypes = {
  contentType: PropTypes.instanceOf(_contentType.default),
  kitId: PropTypes.string.isRequired
};

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/pages/overview/overview-sidebar.js":
/*!************************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/pages/overview/overview-sidebar.js ***!
  \************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = OverviewSidebar;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _collapse = _interopRequireDefault(__webpack_require__(/*! ../../components/collapse */ "../core/app/modules/kit-library/assets/js/components/collapse.js"));

var _contentType = _interopRequireDefault(__webpack_require__(/*! ../../models/content-type */ "../core/app/modules/kit-library/assets/js/models/content-type.js"));

var _favoritesActions = _interopRequireDefault(__webpack_require__(/*! ../../components/favorites-actions */ "../core/app/modules/kit-library/assets/js/components/favorites-actions.js"));

var _kit = _interopRequireDefault(__webpack_require__(/*! ../../models/kit */ "../core/app/modules/kit-library/assets/js/models/kit.js"));

var _overviewTaxonomyBadge = _interopRequireDefault(__webpack_require__(/*! ./overview-taxonomy-badge */ "../core/app/modules/kit-library/assets/js/pages/overview/overview-taxonomy-badge.js"));

var _appUi = __webpack_require__(/*! @elementor/app-ui */ "@elementor/app-ui");

__webpack_require__(/*! ./overview-sidebar.scss */ "../core/app/modules/kit-library/assets/js/pages/overview/overview-sidebar.scss");

function OverviewSidebar(props) {
  var _props$groupedKitCont;

  var _useState = (0, _react.useState)(true),
      _useState2 = (0, _slicedToArray2.default)(_useState, 2),
      isTagsCollapseOpen = _useState2[0],
      setIsTagsCollapseOpen = _useState2[1];

  var _useState3 = (0, _react.useState)(false),
      _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
      isInformationCollapseOpen = _useState4[0],
      setIsInformationCollapseOpen = _useState4[1];

  return /*#__PURE__*/_react.default.createElement("div", {
    className: "e-kit-library__item-sidebar"
  }, /*#__PURE__*/_react.default.createElement("div", {
    className: "e-kit-library__item-sidebar-header"
  }, /*#__PURE__*/_react.default.createElement(_appUi.Heading, {
    tag: "h1",
    variant: "h5",
    className: "e-kit-library__item-sidebar-header-title"
  }, props.model.title), /*#__PURE__*/_react.default.createElement(_favoritesActions.default, {
    isFavorite: props.model.isFavorite,
    id: props.model.id
  })), /*#__PURE__*/_react.default.createElement(_appUi.CardImage, {
    className: "e-kit-library__item-sidebar-thumbnail",
    alt: props.model.title,
    src: props.model.thumbnailUrl || ''
  }), /*#__PURE__*/_react.default.createElement(_appUi.Text, {
    className: "e-kit-library__item-sidebar-description"
  }, props.model.description || ''), props.model.taxonomies.length > 0 && /*#__PURE__*/_react.default.createElement(_collapse.default, {
    isOpen: isTagsCollapseOpen,
    onChange: setIsTagsCollapseOpen,
    title: __('TAGS', 'elementor'),
    className: "e-kit-library__item-sidebar-collapse-tags"
  }, /*#__PURE__*/_react.default.createElement(_appUi.Grid, {
    container: true,
    className: "e-kit-library__item-sidebar-tags-container"
  }, props.model.taxonomies.map(function (taxonomy) {
    return /*#__PURE__*/_react.default.createElement(_overviewTaxonomyBadge.default, {
      key: taxonomy
    }, taxonomy);
  }))), ((_props$groupedKitCont = props.groupedKitContent) === null || _props$groupedKitCont === void 0 ? void 0 : _props$groupedKitCont.length) > 0 && props.model.documents.length > 0 && /*#__PURE__*/_react.default.createElement(_collapse.default, {
    isOpen: isInformationCollapseOpen,
    onChange: setIsInformationCollapseOpen,
    title: __('WHAT\'S INSIDE', 'elementor'),
    className: "e-kit-library__item-sidebar-collapse-info"
  }, props.groupedKitContent.map(function (contentType) {
    if (contentType.documents <= 0) {
      return '';
    }

    return /*#__PURE__*/_react.default.createElement(_appUi.Text, {
      className: "e-kit-library__item-information-text",
      key: contentType.id
    }, contentType.documents.length, " ", contentType.label);
  })));
}

OverviewSidebar.propTypes = {
  model: PropTypes.instanceOf(_kit.default).isRequired,
  groupedKitContent: PropTypes.arrayOf(PropTypes.instanceOf(_contentType.default))
};

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/pages/overview/overview-taxonomy-badge.js":
/*!*******************************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/pages/overview/overview-taxonomy-badge.js ***!
  \*******************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = OverviewTaxonomyBadge;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

var _badge = _interopRequireDefault(__webpack_require__(/*! ../../components/badge */ "../core/app/modules/kit-library/assets/js/components/badge.js"));

var _useTaxonomies2 = _interopRequireDefault(__webpack_require__(/*! ../../hooks/use-taxonomies */ "../core/app/modules/kit-library/assets/js/hooks/use-taxonomies.js"));

var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js");

function OverviewTaxonomyBadge(props) {
  var _useTaxonomies = (0, _useTaxonomies2.default)(),
      data = _useTaxonomies.data;

  var taxonomyText = props.children;
  var type = (0, _react.useMemo)(function () {
    var _data$find;

    if (!data) {
      return null;
    }

    return (_data$find = data.find(function (item) {
      return item.text === taxonomyText;
    })) === null || _data$find === void 0 ? void 0 : _data$find.type;
  }, [data, taxonomyText]);

  if (!type) {
    return '';
  }

  return /*#__PURE__*/_react.default.createElement(_router.Link, {
    to: "/kit-library?taxonomies[".concat(type, "][]=").concat(taxonomyText)
  }, /*#__PURE__*/_react.default.createElement(_badge.default, null, props.children));
}

OverviewTaxonomyBadge.propTypes = {
  children: PropTypes.string
};

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/pages/overview/overview.js":
/*!****************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/pages/overview/overview.js ***!
  \****************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Overview;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

var _content = _interopRequireDefault(__webpack_require__(/*! elementor/core/app/assets/js/layout/content */ "../core/app/assets/js/layout/content.js"));

var _elementorLoading = _interopRequireDefault(__webpack_require__(/*! ../../components/elementor-loading */ "../core/app/modules/kit-library/assets/js/components/elementor-loading.js"));

var _itemHeader = _interopRequireDefault(__webpack_require__(/*! ../../components/item-header */ "../core/app/modules/kit-library/assets/js/components/item-header.js"));

var _layout = _interopRequireDefault(__webpack_require__(/*! ../../components/layout */ "../core/app/modules/kit-library/assets/js/components/layout/index.js"));

var _overviewContentGroup = _interopRequireDefault(__webpack_require__(/*! ./overview-content-group */ "../core/app/modules/kit-library/assets/js/pages/overview/overview-content-group.js"));

var _overviewSidebar = _interopRequireDefault(__webpack_require__(/*! ./overview-sidebar */ "../core/app/modules/kit-library/assets/js/pages/overview/overview-sidebar.js"));

var _useKit2 = _interopRequireDefault(__webpack_require__(/*! ../../hooks/use-kit */ "../core/app/modules/kit-library/assets/js/hooks/use-kit.js"));

var _useKitDocumentByType2 = _interopRequireDefault(__webpack_require__(/*! ../../hooks/use-kit-document-by-type */ "../core/app/modules/kit-library/assets/js/hooks/use-kit-document-by-type.js"));

var _usePageTitle = _interopRequireDefault(__webpack_require__(/*! elementor-app/hooks/use-page-title */ "../core/app/assets/js/hooks/use-page-title.js"));

var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js");

__webpack_require__(/*! ./overview.scss */ "../core/app/modules/kit-library/assets/js/pages/overview/overview.scss");

function useHeaderButtons(id) {
  var navigate = (0, _router.useNavigate)();
  return (0, _react.useMemo)(function () {
    return [{
      id: 'view-demo',
      text: __('View Demo', 'elementor'),
      hideText: false,
      variant: 'outlined',
      color: 'secondary',
      size: 'sm',
      onClick: function onClick() {
        return navigate("/kit-library/preview/".concat(id));
      },
      includeHeaderBtnClass: false
    }];
  }, [id]);
}

function Overview(props) {
  var _useKit = (0, _useKit2.default)(props.id),
      kit = _useKit.data,
      isError = _useKit.isError,
      isLoading = _useKit.isLoading;

  var _useKitDocumentByType = (0, _useKitDocumentByType2.default)(kit),
      documentsByType = _useKitDocumentByType.data;

  var headerButtons = useHeaderButtons(props.id);
  (0, _usePageTitle.default)({
    title: kit ? "".concat(__('Kit Library', 'elementor'), " | ").concat(kit.title) : __('Loading...', 'elementor')
  });

  if (isError) {
    // Will be caught by the App error boundary.
    throw new Error();
  }

  if (isLoading) {
    return /*#__PURE__*/_react.default.createElement(_elementorLoading.default, null);
  }

  return /*#__PURE__*/_react.default.createElement(_layout.default, {
    header: /*#__PURE__*/_react.default.createElement(_itemHeader.default, {
      model: kit,
      buttons: headerButtons
    }),
    sidebar: /*#__PURE__*/_react.default.createElement(_overviewSidebar.default, {
      model: kit,
      groupedKitContent: documentsByType
    })
  }, documentsByType.length > 0 && /*#__PURE__*/_react.default.createElement(_content.default, null, documentsByType.map(function (contentType) {
    return /*#__PURE__*/_react.default.createElement(_overviewContentGroup.default, {
      key: contentType.id,
      contentType: contentType,
      kitId: props.id
    });
  })));
}

Overview.propTypes = {
  id: PropTypes.string
};

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/pages/preview/preview-iframe.js":
/*!*********************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/pages/preview/preview-iframe.js ***!
  \*********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.PreviewIframe = PreviewIframe;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _appUi = __webpack_require__(/*! @elementor/app-ui */ "@elementor/app-ui");

function PreviewIframe(props) {
  var ref = (0, _react.useRef)();
  (0, _react.useEffect)(function () {
    if (!ref.current) {
      return;
    }

    var listener = function listener() {
      return props.onLoaded();
    };

    ref.current.addEventListener('load', listener);
    return function () {
      return ref.current && ref.current.removeEventListener('load', listener);
    };
  }, [ref.current, props.previewUrl]);
  return /*#__PURE__*/_react.default.createElement(_appUi.Grid, {
    container: true,
    justify: "center",
    className: "e-kit-library__preview-iframe-container"
  }, /*#__PURE__*/_react.default.createElement("iframe", {
    className: "e-kit-library__preview-iframe",
    src: props.previewUrl,
    style: props.style,
    ref: ref
  }));
}

PreviewIframe.propTypes = {
  previewUrl: PropTypes.string.isRequired,
  style: PropTypes.object,
  onLoaded: PropTypes.func
};
PreviewIframe.defaultProps = {
  style: {
    width: '100%',
    height: '100%'
  },
  onLoaded: function onLoaded() {}
};

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/pages/preview/preview-responsive-controls.js":
/*!**********************************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/pages/preview/preview-responsive-controls.js ***!
  \**********************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = PreviewResponsiveControls;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

var _preview = __webpack_require__(/*! ./preview */ "../core/app/modules/kit-library/assets/js/pages/preview/preview.js");

var _appUi = __webpack_require__(/*! @elementor/app-ui */ "@elementor/app-ui");

__webpack_require__(/*! ./preview-responsive-controls.scss */ "../core/app/modules/kit-library/assets/js/pages/preview/preview-responsive-controls.scss");

function PreviewResponsiveControls(props) {
  return /*#__PURE__*/_react.default.createElement(_appUi.Grid, {
    container: true,
    alignItems: "center",
    justify: "center",
    className: "e-kit-library__preview-responsive-controls"
  }, _preview.breakpoints.map(function (_ref) {
    var label = _ref.label,
        value = _ref.value;
    var className = 'e-kit-library__preview-responsive-controls-item';

    if (props.active === value) {
      className += ' e-kit-library__preview-responsive-controls-item--active';
    }

    return /*#__PURE__*/_react.default.createElement(_appUi.Button, {
      key: value,
      text: label,
      hideText: true,
      className: className,
      icon: "eicon-device-".concat(value),
      onClick: function onClick() {
        return props.onChange(value);
      }
    });
  }));
}

PreviewResponsiveControls.propTypes = {
  active: PropTypes.string,
  onChange: PropTypes.func.isRequired
};
PreviewResponsiveControls.defaultProps = {
  active: 'desktop'
};

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/pages/preview/preview.js":
/*!**************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/pages/preview/preview.js ***!
  \**************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Preview;
exports.breakpoints = void 0;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _parseInt2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/parse-int */ "../node_modules/@babel/runtime-corejs2/core-js/parse-int.js"));

__webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

var _elementorLoading = _interopRequireDefault(__webpack_require__(/*! ../../components/elementor-loading */ "../core/app/modules/kit-library/assets/js/components/elementor-loading.js"));

var _itemHeader = _interopRequireDefault(__webpack_require__(/*! ../../components/item-header */ "../core/app/modules/kit-library/assets/js/components/item-header.js"));

var _layout = _interopRequireDefault(__webpack_require__(/*! ../../components/layout */ "../core/app/modules/kit-library/assets/js/components/layout/index.js"));

var _pageLoader = _interopRequireDefault(__webpack_require__(/*! ../../components/page-loader */ "../core/app/modules/kit-library/assets/js/components/page-loader.js"));

var _previewResponsiveControls = _interopRequireDefault(__webpack_require__(/*! ./preview-responsive-controls */ "../core/app/modules/kit-library/assets/js/pages/preview/preview-responsive-controls.js"));

var _useKit2 = _interopRequireDefault(__webpack_require__(/*! ../../hooks/use-kit */ "../core/app/modules/kit-library/assets/js/hooks/use-kit.js"));

var _usePageTitle = _interopRequireDefault(__webpack_require__(/*! elementor-app/hooks/use-page-title */ "../core/app/assets/js/hooks/use-page-title.js"));

var _previewIframe = __webpack_require__(/*! ./preview-iframe */ "../core/app/modules/kit-library/assets/js/pages/preview/preview-iframe.js");

var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js");

__webpack_require__(/*! ./preview.scss */ "../core/app/modules/kit-library/assets/js/pages/preview/preview.scss");

var breakpoints = [{
  value: 'desktop',
  label: __('Desktop', 'elementor'),
  style: {
    width: '100%',
    height: '100%'
  }
}, {
  value: 'tablet',
  label: __('Tablet', 'elementor'),
  style: {
    marginTop: '30px',
    marginBottom: '30px',
    width: '768px',
    height: '1024px'
  }
}, {
  value: 'mobile',
  label: __('Mobile', 'elementor'),
  style: {
    marginTop: '30px',
    marginBottom: '30px',
    width: '375px',
    height: '667px'
  }
}];
exports.breakpoints = breakpoints;

function useHeaderButtons(id) {
  var navigate = (0, _router.useNavigate)();
  return (0, _react.useMemo)(function () {
    return [{
      id: 'overview',
      text: __('Overview', 'elementor'),
      hideText: false,
      variant: 'outlined',
      color: 'secondary',
      size: 'sm',
      onClick: function onClick() {
        return navigate("/kit-library/overview/".concat(id));
      },
      includeHeaderBtnClass: false
    }];
  }, [id]);
}
/**
 * Get preview url.
 *
 * @param data
 * @returns {null|string}
 */


function usePreviewUrl(data) {
  var location = (0, _router.useLocation)();
  return (0, _react.useMemo)(function () {
    var _location$pathname$sp, _data$documents$find;

    if (!data) {
      return null;
    }

    var documentId = new URLSearchParams((_location$pathname$sp = location.pathname.split('?')) === null || _location$pathname$sp === void 0 ? void 0 : _location$pathname$sp[1]).get('document_id');

    if (!documentId) {
      return data.previewUrl;
    }

    return ((_data$documents$find = data.documents.find(function (item) {
      return item.id === (0, _parseInt2.default)(documentId);
    })) === null || _data$documents$find === void 0 ? void 0 : _data$documents$find.previewUrl) || data.previewUrl;
  }, [location, data]);
}

function Preview(props) {
  var _useKit = (0, _useKit2.default)(props.id),
      data = _useKit.data,
      isError = _useKit.isError,
      isLoading = _useKit.isLoading;

  var _useState = (0, _react.useState)(true),
      _useState2 = (0, _slicedToArray2.default)(_useState, 2),
      isIframeLoading = _useState2[0],
      setIsIframeLoading = _useState2[1];

  var headersButtons = useHeaderButtons(props.id);
  var previewUrl = usePreviewUrl(data);

  var _useState3 = (0, _react.useState)('desktop'),
      _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
      activeDevice = _useState4[0],
      setActiveDevice = _useState4[1];

  var iframeStyle = (0, _react.useMemo)(function () {
    return breakpoints.find(function (_ref) {
      var value = _ref.value;
      return value === activeDevice;
    }).style;
  }, [activeDevice]);
  (0, _usePageTitle.default)({
    title: data ? "".concat(__('Kit Library', 'elementor'), " | ").concat(data.title) : __('Loading...', 'elementor')
  });

  if (isError) {
    // Will be caught by the App error boundary.
    throw new Error();
  }

  if (isLoading) {
    return /*#__PURE__*/_react.default.createElement(_elementorLoading.default, null);
  }

  return /*#__PURE__*/_react.default.createElement(_layout.default, {
    header: /*#__PURE__*/_react.default.createElement(_itemHeader.default, {
      model: data,
      buttons: headersButtons,
      centerColumn: /*#__PURE__*/_react.default.createElement(_previewResponsiveControls.default, {
        active: activeDevice,
        onChange: setActiveDevice
      })
    })
  }, isIframeLoading && /*#__PURE__*/_react.default.createElement(_pageLoader.default, {
    className: "e-kit-library__preview-loader"
  }), previewUrl && /*#__PURE__*/_react.default.createElement(_previewIframe.PreviewIframe, {
    previewUrl: previewUrl,
    style: iframeStyle,
    onLoaded: function onLoaded() {
      return setIsIframeLoading(false);
    }
  }));
}

Preview.propTypes = {
  id: PropTypes.string
};

/***/ })

}]);
//# sourceMappingURL=kit-library.d3688acfaab28676a99c.bundle.js.mapassets/js/progress.5306267e0436c8de4985.bundle.js000064400000002325151327220410014546 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(self["webpackChunkelementor"] = self["webpackChunkelementor"] || []).push([["progress"],{

/***/ "../assets/dev/js/frontend/handlers/progress.js":
/*!******************************************************!*\
  !*** ../assets/dev/js/frontend/handlers/progress.js ***!
  \******************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

class Progress extends elementorModules.frontend.handlers.Base {
  getDefaultSettings() {
    return {
      selectors: {
        progressNumber: '.elementor-progress-bar'
      }
    };
  }

  getDefaultElements() {
    const selectors = this.getSettings('selectors');
    return {
      $progressNumber: this.$element.find(selectors.progressNumber)
    };
  }

  onInit() {
    super.onInit();
    elementorFrontend.waypoint(this.elements.$progressNumber, () => {
      const $progressbar = this.elements.$progressNumber;
      $progressbar.css('width', $progressbar.data('max') + '%');
    });
  }

}

exports.default = Progress;

/***/ })

}]);
//# sourceMappingURL=progress.5306267e0436c8de4985.bundle.js.mapassets/js/editor-document.min.js000064400001043232151327220410012706 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(()=>{var e={75453:(e,t,n)=>{e.exports=n(7421)},59396:(e,t,n)=>{e.exports=n(70157)},15091:(e,t,n)=>{e.exports=n(373)},15149:(e,t,n)=>{e.exports=n(66458)},38401:(e,t,n)=>{e.exports=n(14710)},92937:(e,t,n)=>{e.exports=n(23022)},67394:(e,t,n)=>{e.exports=n(43153)},38923:(e,t,n)=>{e.exports=n(8531)},23587:(e,t,n)=>{e.exports=n(32622)},63774:(e,t,n)=>{e.exports=n(27410)},95315:(e,t,n)=>{e.exports=n(19035)},82055:(e,t,n)=>{e.exports=n(58535)},83452:(e,t,n)=>{e.exports=n(97220)},28274:(e,t,n)=>{e.exports=n(65135)},35657:(e,t,n)=>{e.exports=n(69591)},14176:(e,t,n)=>{e.exports=n(34345)},73220:(e,t,n)=>{e.exports=n(76483)},75499:(e,t,n)=>{e.exports=n(43094)},78282:(e,t,n)=>{e.exports=n(17641)},41281:(e,t,n)=>{e.exports=n(19103)},29363:(e,t,n)=>{e.exports=n(21114)},50093:(e,t,n)=>{e.exports=n(39871)},93168:(e,t,n)=>{e.exports=n(89999)},72292:e=>{e.exports=function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r},e.exports.default=e.exports,e.exports.__esModule=!0},86870:(e,t,n)=>{var r=n(59396);e.exports=function _arrayWithHoles(e){if(r(e))return e},e.exports.default=e.exports,e.exports.__esModule=!0},38852:e=>{e.exports=function _assertThisInitialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e},e.exports.default=e.exports,e.exports.__esModule=!0},49117:(e,t,n)=>{var r=n(73220);function asyncGeneratorStep(e,t,n,o,a,i,u){try{var l=e[i](u),s=l.value}catch(e){return void n(e)}l.done?t(s):r.resolve(s).then(o,a)}e.exports=function _asyncToGenerator(e){return function(){var t=this,n=arguments;return new r((function(r,o){var a=e.apply(t,n);function _next(e){asyncGeneratorStep(a,r,o,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep(a,r,o,_next,_throw,"throw",e)}_next(void 0)}))}},e.exports.default=e.exports,e.exports.__esModule=!0},11959:e=>{e.exports=function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},e.exports.default=e.exports,e.exports.__esModule=!0},60846:(e,t,n)=>{var r=n(75499),o=n(76870),a=n(898);function _construct(t,n,i){return a()?(e.exports=_construct=r,e.exports.default=e.exports,e.exports.__esModule=!0):(e.exports=_construct=function _construct(e,t,n){var r=[null];r.push.apply(r,t);var a=new(Function.bind.apply(e,r));return n&&o(a,n.prototype),a},e.exports.default=e.exports,e.exports.__esModule=!0),_construct.apply(null,arguments)}e.exports=_construct,e.exports.default=e.exports,e.exports.__esModule=!0},39041:(e,t,n)=>{var r=n(67394);function _defineProperties(e,t){for(var n=0;n<t.length;n++){var o=t[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),r(e,o.key,o)}}e.exports=function _createClass(e,t,n){return t&&_defineProperties(e.prototype,t),n&&_defineProperties(e,n),e},e.exports.default=e.exports,e.exports.__esModule=!0},68537:(e,t,n)=>{var r=n(75499),o=n(44263),a=n(898),i=n(59771);e.exports=function _createSuper(e){var t=a();return function _createSuperInternal(){var n,a=o(e);if(t){var u=o(this).constructor;n=r(a,arguments,u)}else n=a.apply(this,arguments);return i(this,n)}},e.exports.default=e.exports,e.exports.__esModule=!0},18042:(e,t,n)=>{var r=n(67394);e.exports=function _defineProperty(e,t,n){return t in e?r(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e},e.exports.default=e.exports,e.exports.__esModule=!0},76700:(e,t,n)=>{var r=n(78282),o=n(23587),a=n(49445);function _get(t,n,i){return"undefined"!=typeof Reflect&&r?(e.exports=_get=r,e.exports.default=e.exports,e.exports.__esModule=!0):(e.exports=_get=function _get(e,t,n){var r=a(e,t);if(r){var i=o(r,t);return i.get?i.get.call(n):i.value}},e.exports.default=e.exports,e.exports.__esModule=!0),_get(t,n,i||t)}e.exports=_get,e.exports.default=e.exports,e.exports.__esModule=!0},44263:(e,t,n)=>{var r=n(28274),o=n(82055);function _getPrototypeOf(t){return e.exports=_getPrototypeOf=r?o:function _getPrototypeOf(e){return e.__proto__||o(e)},e.exports.default=e.exports,e.exports.__esModule=!0,_getPrototypeOf(t)}e.exports=_getPrototypeOf,e.exports.default=e.exports,e.exports.__esModule=!0},77371:(e,t,n)=>{var r=n(38401),o=n(76870);e.exports=function _inherits(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=r(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&o(e,t)},e.exports.default=e.exports,e.exports.__esModule=!0},67971:e=>{e.exports=function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}},e.exports.default=e.exports,e.exports.__esModule=!0},52369:(e,t,n)=>{var r=n(24596).default,o=n(93168),a=n(67394),i=n(23587);function _getRequireWildcardCache(e){if("function"!=typeof o)return null;var t=new o,n=new o;return(_getRequireWildcardCache=function _getRequireWildcardCache(e){return e?n:t})(e)}e.exports=function _interopRequireWildcard(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==r(e)&&"function"!=typeof e)return{default:e};var n=_getRequireWildcardCache(t);if(n&&n.has(e))return n.get(e);var o={},u=a&&i;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var s=u?i(e,l):null;s&&(s.get||s.set)?a(o,l,s):o[l]=e[l]}return o.default=e,n&&n.set(e,o),o},e.exports.default=e.exports,e.exports.__esModule=!0},60653:e=>{e.exports=function _isNativeFunction(e){return-1!==Function.toString.call(e).indexOf("[native code]")},e.exports.default=e.exports,e.exports.__esModule=!0},898:(e,t,n)=>{var r=n(75499);e.exports=function _isNativeReflectConstruct(){if("undefined"==typeof Reflect||!r)return!1;if(r.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(r(Boolean,[],(function(){}))),!0}catch(e){return!1}},e.exports.default=e.exports,e.exports.__esModule=!0},79968:(e,t,n)=>{var r=n(41281),o=n(50093);e.exports=function _iterableToArrayLimit(e,t){var n=null==e?null:void 0!==r&&e[o]||e["@@iterator"];if(null!=n){var a,i,u=[],l=!0,s=!1;try{for(n=n.call(e);!(l=(a=n.next()).done)&&(u.push(a.value),!t||u.length!==t);l=!0);}catch(e){s=!0,i=e}finally{try{l||null==n.return||n.return()}finally{if(s)throw i}}return u}},e.exports.default=e.exports,e.exports.__esModule=!0},39198:e=>{e.exports=function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")},e.exports.default=e.exports,e.exports.__esModule=!0},84899:(e,t,n)=>{var r=n(83452),o=n(95315),a=n(23587),i=n(63774),u=n(92937),l=n(67394),s=n(18042);function ownKeys(e,t){var n=r(e);if(o){var i=o(e);t&&(i=i.filter((function(t){return a(e,t).enumerable}))),n.push.apply(n,i)}return n}e.exports=function _objectSpread2(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(Object(n),!0).forEach((function(t){s(e,t,n[t])})):i?u(e,i(n)):ownKeys(Object(n)).forEach((function(t){l(e,t,a(n,t))}))}return e},e.exports.default=e.exports,e.exports.__esModule=!0},59771:(e,t,n)=>{var r=n(24596).default,o=n(38852);e.exports=function _possibleConstructorReturn(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?o(e):t},e.exports.default=e.exports,e.exports.__esModule=!0},76870:(e,t,n)=>{var r=n(28274);function _setPrototypeOf(t,n){return e.exports=_setPrototypeOf=r||function _setPrototypeOf(e,t){return e.__proto__=t,e},e.exports.default=e.exports,e.exports.__esModule=!0,_setPrototypeOf(t,n)}e.exports=_setPrototypeOf,e.exports.default=e.exports,e.exports.__esModule=!0},47834:(e,t,n)=>{var r=n(86870),o=n(79968),a=n(24594),i=n(39198);e.exports=function _slicedToArray(e,t){return r(e)||o(e,t)||a(e,t)||i()},e.exports.default=e.exports,e.exports.__esModule=!0},49445:(e,t,n)=>{var r=n(44263);e.exports=function _superPropBase(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=r(e)););return e},e.exports.default=e.exports,e.exports.__esModule=!0},24596:(e,t,n)=>{var r=n(41281),o=n(50093);function _typeof(t){return"function"==typeof r&&"symbol"==typeof o?(e.exports=_typeof=function _typeof(e){return typeof e},e.exports.default=e.exports,e.exports.__esModule=!0):(e.exports=_typeof=function _typeof(e){return e&&"function"==typeof r&&e.constructor===r&&e!==r.prototype?"symbol":typeof e},e.exports.default=e.exports,e.exports.__esModule=!0),_typeof(t)}e.exports=_typeof,e.exports.default=e.exports,e.exports.__esModule=!0},24594:(e,t,n)=>{var r=n(75453),o=n(72292);e.exports=function _unsupportedIterableToArray(e,t){if(e){if("string"==typeof e)return o(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?r(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?o(e,t):void 0}},e.exports.default=e.exports,e.exports.__esModule=!0},73629:(e,t,n)=>{var r=n(15091),o=n(38401),a=n(44263),i=n(76870),u=n(60653),l=n(60846);function _wrapNativeSuper(t){var n="function"==typeof r?new r:void 0;return e.exports=_wrapNativeSuper=function _wrapNativeSuper(e){if(null===e||!u(e))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==n){if(n.has(e))return n.get(e);n.set(e,Wrapper)}function Wrapper(){return l(e,arguments,a(this).constructor)}return Wrapper.prototype=o(e.prototype,{constructor:{value:Wrapper,enumerable:!1,writable:!0,configurable:!0}}),i(Wrapper,e)},e.exports.default=e.exports,e.exports.__esModule=!0,_wrapNativeSuper(t)}e.exports=_wrapNativeSuper,e.exports.default=e.exports,e.exports.__esModule=!0},57135:(e,t,n)=>{e.exports=n(86248)},96731:e=>{"use strict";e.exports=elementorModules.Module.extend({errors:[],__construct:function __construct(e){var t=e.customValidationMethod;t&&(this.validationMethod=t)},getDefaultSettings:function getDefaultSettings(){return{validationTerms:{}}},isValid:function isValid(){var e=this.validationMethod.apply(this,arguments);return!e.length||(this.errors=e,!1)},validationMethod:function validationMethod(e){var t=[];return this.getSettings("validationTerms").required&&((""+e).length||t.push("Required value is empty")),t}})},82509:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(CreateBase,e);var t=(0,l.default)(CreateBase);function CreateBase(){return(0,a.default)(this,CreateBase),t.apply(this,arguments)}return(0,i.default)(CreateBase,[{key:"validateArgs",value:function validateArgs(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.requireContainer(e),this.requireArgumentType("setting","string",e),this.requireArgumentType("title","string",e)}}]),CreateBase}(o(n(68689)).default);t.default=s},47721:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.Create=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(Create,e);var t=(0,l.default)(Create);function Create(){return(0,a.default)(this,Create),t.apply(this,arguments)}return(0,i.default)(Create,[{key:"apply",value:function apply(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.container,n=e.setting,r=e.title,o=t.controls;if(!o[n])throw new Error("Invalid setting: control '".concat(n,"', not found."));var a=e.id||elementorCommon.helpers.getUniqueId();return $e.data.create("globals/colors?id=".concat(a),{title:r,value:t.settings.get(n)})}}]),Create}(o(n(82509)).default);t.Create=s},78178:(e,t,n)=>{"use strict";var r=n(67394);r(t,"__esModule",{value:!0}),r(t,"Create",{enumerable:!0,get:function get(){return o.Create}});var o=n(47721)},27360:(e,t,n)=>{"use strict";var r=n(67394),o=n(52369),a=n(67971);r(t,"__esModule",{value:!0}),t.default=void 0;var i=a(n(11959)),u=a(n(39041)),l=a(n(77371)),s=a(n(68537)),c=a(n(15591)),d=o(n(78178)),f=function(e){(0,l.default)(Component,e);var t=(0,s.default)(Component);function Component(){return(0,i.default)(this,Component),t.apply(this,arguments)}return(0,u.default)(Component,[{key:"getNamespace",value:function getNamespace(){return"globals/colors"}},{key:"defaultCommands",value:function defaultCommands(){return this.importCommands(d)}}]),Component}(c.default);t.default=f},19547:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.Colors=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(Colors,e);var t=(0,l.default)(Colors);function Colors(){return(0,a.default)(this,Colors),t.apply(this,arguments)}return(0,i.default)(Colors,null,[{key:"getEndpointFormat",value:function getEndpointFormat(){return"globals/colors/{id}"}}]),Colors}(o(n(79314)).default);t.Colors=s;var c=s;t.default=c},70695:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),r(t,"Colors",{enumerable:!0,get:function get(){return c.Colors}}),r(t,"Typography",{enumerable:!0,get:function get(){return d.Typography}}),t.Index=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=o(n(79314)),c=n(19547),d=n(671),f=function(e){(0,u.default)(Index,e);var t=(0,l.default)(Index);function Index(){return(0,a.default)(this,Index),t.apply(this,arguments)}return(0,i.default)(Index,null,[{key:"getEndpointFormat",value:function getEndpointFormat(){return"globals"}}]),Index}(s.default);t.Index=f},671:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.Typography=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(Typography,e);var t=(0,l.default)(Typography);function Typography(){return(0,a.default)(this,Typography),t.apply(this,arguments)}return(0,i.default)(Typography,null,[{key:"getEndpointFormat",value:function getEndpointFormat(){return"globals/typography/{id}"}}]),Typography}(o(n(79314)).default);t.Typography=s;var c=s;t.default=c},94202:(e,t,n)=>{"use strict";var r=n(67394),o=n(52369),a=n(67971);r(t,"__esModule",{value:!0}),t.default=void 0;var i=a(n(11959)),u=a(n(39041)),l=a(n(76700)),s=a(n(44263)),c=a(n(77371)),d=a(n(68537)),f=a(n(15591)),p=a(n(96959)),v=a(n(27360)),m=o(n(70695)),g=function(e){(0,c.default)(Component,e);var t=(0,d.default)(Component);function Component(){return(0,i.default)(this,Component),t.apply(this,arguments)}return(0,u.default)(Component,[{key:"__construct",value:function __construct(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,l.default)((0,s.default)(Component.prototype),"__construct",this).call(this,t),elementorCommon.elements.$window.on("elementor:loaded",(function(){return e.refreshGlobalData()}))}},{key:"getNamespace",value:function getNamespace(){return"globals"}},{key:"registerAPI",value:function registerAPI(){$e.components.register(new p.default({manager:this})),$e.components.register(new v.default({manager:this})),(0,l.default)((0,s.default)(Component.prototype),"registerAPI",this).call(this)}},{key:"defaultData",value:function defaultData(){return this.importCommands(m)}},{key:"refreshGlobalData",value:function refreshGlobalData(){$e.data.deleteCache($e.components.get("globals"),"globals/index")}}]),Component}(f.default);t.default=g},39690:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.Create=void 0,n(3777),n(38081),n(84208);var a=o(n(38923)),i=o(n(35657)),u=o(n(47834)),l=o(n(11959)),s=o(n(39041)),c=o(n(77371)),d=o(n(68537)),f=function(e){(0,c.default)(Create,e);var t=(0,d.default)(Create);function Create(){return(0,l.default)(this,Create),t.apply(this,arguments)}return(0,s.default)(Create,[{key:"apply",value:function apply(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.container,n=e.setting,r=e.title,o=t.controls,l={},s=!1,c="";if(!o[n]||!o[n].groupPrefix)throw new Error("Invalid setting: control '".concat(n,"', not found."));if((c=o[n].groupPrefix)&&(0,a.default)(o).forEach((function(e){var n=(0,u.default)(e,1)[0];if(n.includes(c)){var r=t.settings.get(n),o=t.controls[n].default;_.isEqual(r,o)||(l[n.replace(c,elementor.config.kit_config.typography_prefix)]=t.settings.get(n))}})),(0,i.default)(l).length){var d=elementorCommon.helpers.getUniqueId();s=$e.data.create("globals/typography?id=".concat(d),{title:r,value:l})}return s}}]),Create}(o(n(82509)).default);t.Create=f},10602:(e,t,n)=>{"use strict";var r=n(67394);r(t,"__esModule",{value:!0}),r(t,"Create",{enumerable:!0,get:function get(){return o.Create}});var o=n(39690)},96959:(e,t,n)=>{"use strict";var r=n(67394),o=n(52369),a=n(67971);r(t,"__esModule",{value:!0}),t.default=void 0;var i=a(n(11959)),u=a(n(39041)),l=a(n(76700)),s=a(n(44263)),c=a(n(77371)),d=a(n(68537)),f=a(n(15591)),p=o(n(10602)),v=function(e){(0,c.default)(Component,e);var t=(0,d.default)(Component);function Component(){return(0,i.default)(this,Component),t.apply(this,arguments)}return(0,u.default)(Component,[{key:"__construct",value:function __construct(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,l.default)((0,s.default)(Component.prototype),"__construct",this).call(this,e)}},{key:"getNamespace",value:function getNamespace(){return"globals/typography"}},{key:"defaultCommands",value:function defaultCommands(){return this.importCommands(p)}}]),Component}(f.default);t.default=v},76008:(e,t,n)=>{"use strict";var r=n(18194).__,o=n(67394),a=n(67971);o(t,"__esModule",{value:!0}),t.default=void 0;var i=a(n(11959)),u=a(n(39041)),l=function(){function BackwardsCompatibility(){(0,i.default)(this,BackwardsCompatibility),elementorCommon.elements.$window.on("elementor:init",this.deprecatedEvents),elementor.channels.data.on("template:before:insert",this.startInsertTemplate).on("template:after:insert",this.endItem)}return(0,u.default)(BackwardsCompatibility,[{key:"deprecatedEvents",value:function deprecatedEvents(){var e=elementor.channels.data._events;["drag:before:update","drag:after:update","element:before:add","element:after:add","element:before:remove","element:after:remove","element:before:paste:style","element:after:paste:style","element:before:reset:style","element:after:reset:style","section:before:drop","section:after:drop"].forEach((function(t){e[t]&&e[t].length&&elementorCommon.helpers.softDeprecated("event: ".concat(t),"2.8.0","$e.hooks")}))}},{key:"startInsertTemplate",value:function startInsertTemplate(e){elementorCommon.helpers.softDeprecated("event: template:before:insert","2.8.0","$e.run( 'document/import' )"),elementor.documents.getCurrent().history.startItem({type:"add",title:r("Template","elementor"),subTitle:e.get("title"),elementType:"template"})}},{key:"endItem",value:function endItem(){elementor.documents.getCurrent().history.endItem()}}]),BackwardsCompatibility}();t.default=l},26353:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(76700)),l=o(n(44263)),s=o(n(77371)),c=o(n(68537)),d=o(n(78627)),f=o(n(30889)),p=function(e){(0,s.default)(CommandDisableEnable,e);var t=(0,c.default)(CommandDisableEnable);function CommandDisableEnable(){return(0,a.default)(this,CommandDisableEnable),t.apply(this,arguments)}return(0,i.default)(CommandDisableEnable,[{key:"initialize",value:function initialize(e){(0,u.default)((0,l.default)(CommandDisableEnable.prototype),"initialize",this).call(this,e),this.type=this.currentCommand===this.constructor.getEnableCommand()?"enable":"disable"}},{key:"getTitle",value:function getTitle(){elementorModules.ForceMethodImplementation()}},{key:"validateArgs",value:function validateArgs(e){this.requireContainer(e),this.requireArgumentConstructor("settings",Object,e)}},{key:"getHistory",value:function getHistory(e){var t=e.settings,n=e.containers,r=void 0===n?[e.container]:n,o={};r.forEach((function(e){var n=e.id;o[n]||(o[n]={}),o[n]=t}));var a=this.getTitle()+" "+f.default.getSubTitle(e),i=this.type;return{containers:r,subTitle:a,data:{changes:o,command:this.currentCommand},type:i,restore:this.constructor.restore}}},{key:"isDataChanged",value:function isDataChanged(){return!0}}],[{key:"getEnableCommand",value:function getEnableCommand(){elementorModules.ForceMethodImplementation()}},{key:"getDisableCommand",value:function getDisableCommand(){elementorModules.ForceMethodImplementation()}},{key:"restore",value:function restore(e,t){var n=e.get("data"),r=$e.commands.getCommandClass(n.command);r.getDisableCommand()===n.command&&(t=!t),e.get("containers").forEach((function(e){var o=n.changes[e.id],a=t?r.getEnableCommand():r.getDisableCommand();$e.run(a,{container:e,settings:o}),e.panel.refresh()}))}}]),CommandDisableEnable}(d.default);t.default=p},28819:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.getDefaultDebounceDelay=t.DEFAULT_DEBOUNCE_DELAY=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(76700)),l=o(n(44263)),s=o(n(77371)),c=o(n(68537)),d=o(n(18042)),f=o(n(68689)),p=o(n(78627));t.DEFAULT_DEBOUNCE_DELAY=800;var v=function getDefaultDebounceDelay(){var e=800;return elementor.config.document&&void 0!==elementor.config.document.debounceDelay&&(e=elementor.config.document.debounceDelay),e};t.getDefaultDebounceDelay=v;var m=function(e){(0,s.default)(CommandHistoryDebounce,e);var t=(0,c.default)(CommandHistoryDebounce);function CommandHistoryDebounce(){return(0,a.default)(this,CommandHistoryDebounce),t.apply(this,arguments)}return(0,i.default)(CommandHistoryDebounce,[{key:"initialize",value:function initialize(e){var t=e.options,n=void 0===t?{}:t;(0,u.default)((0,l.default)(CommandHistoryDebounce.prototype),"initialize",this).call(this,e),this.constructor.debounce||(this.constructor.debounce=_.debounce((function(e){return e()}),v())),(1===$e.commands.currentTrace.length||n.debounce)&&(this.isDebounceRequired=!0)}},{key:"onBeforeRun",value:function onBeforeRun(e){f.default.prototype.onBeforeRun.call(this,e),this.history&&this.isHistoryActive()&&$e.internal("document/history/add-transaction",this.history)}},{key:"onAfterRun",value:function onAfterRun(e,t){f.default.prototype.onAfterRun.call(this,e,t),this.isHistoryActive()&&(this.isDebounceRequired?this.constructor.debounce((function(){return $e.internal("document/history/end-transaction")})):$e.internal("document/history/end-transaction"))}},{key:"onCatchApply",value:function onCatchApply(e){f.default.prototype.onCatchApply.call(this,e),e instanceof $e.modules.HookBreak&&this.history&&(this.isDebounceRequired?this.constructor.debounce((function(){return $e.internal("document/history/clear-transaction")})):$e.internal("document/history/clear-transaction"))}}],[{key:"getInstanceType",value:function getInstanceType(){return"CommandHistoryDebounce"}}]),CommandHistoryDebounce}(p.default);t.default=m,(0,d.default)(m,"debounce",void 0)},78627:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(76700)),l=o(n(44263)),s=o(n(77371)),c=o(n(68537)),d=function(e){(0,s.default)(CommandHistory,e);var t=(0,c.default)(CommandHistory);function CommandHistory(e){var n;return(0,a.default)(this,CommandHistory),(n=t.call(this,e)).history=n.getHistory(e),n.historyId=!1,n}return(0,i.default)(CommandHistory,[{key:"getHistory",value:function getHistory(){elementorModules.ForceMethodImplementation()}},{key:"isHistoryActive",value:function isHistoryActive(){return elementor.documents.getCurrent().history.getActive()}},{key:"onBeforeRun",value:function onBeforeRun(e){(0,u.default)((0,l.default)(CommandHistory.prototype),"onBeforeRun",this).call(this,e),this.history&&this.isHistoryActive()&&(this.historyId=$e.internal("document/history/start-log",this.history))}},{key:"onAfterRun",value:function onAfterRun(e,t){(0,u.default)((0,l.default)(CommandHistory.prototype),"onAfterRun",this).call(this,e,t),this.history&&this.isHistoryActive()&&$e.internal("document/history/end-log",{id:this.historyId})}},{key:"onCatchApply",value:function onCatchApply(e){(0,u.default)((0,l.default)(CommandHistory.prototype),"onCatchApply",this).call(this,e),e instanceof $e.modules.HookBreak&&this.historyId&&$e.internal("document/history/delete-log",{id:this.historyId})}}],[{key:"getInstanceType",value:function getInstanceType(){return"CommandHistory"}}]),CommandHistory}(o(n(68689)).default);t.default=d},5116:(e,t,n)=>{"use strict";var r=n(67394),o=n(52369),a=n(67971);r(t,"__esModule",{value:!0}),t.default=void 0;var i=a(n(35657)),u=a(n(11959)),l=a(n(39041)),s=a(n(76700)),c=a(n(44263)),d=a(n(77371)),f=a(n(68537)),p=a(n(15591)),v=a(n(76008)),m=a(n(78627)),g=a(n(28819)),h=o(n(24475)),y=o(n(63916)),C=function(e){(0,d.default)(Component,e);var t=(0,f.default)(Component);function Component(){return(0,u.default)(this,Component),t.apply(this,arguments)}return(0,l.default)(Component,[{key:"getNamespace",value:function getNamespace(){return"document"}},{key:"registerAPI",value:function registerAPI(){new v.default,(0,i.default)(h).forEach((function(e){return $e.components.register(new e)})),(0,s.default)((0,c.default)(Component.prototype),"registerAPI",this).call(this)}},{key:"defaultCommands",value:function defaultCommands(){return{}}},{key:"defaultHooks",value:function defaultHooks(){return this.importHooks(y)}},{key:"defaultUtils",value:function defaultUtils(){var e=this;return{findViewRecursive:function findViewRecursive(t,n,r){var o=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],a=[];for(var i in t._views){var u=t._views[i];if(r===u.model.get(n)&&(a.push(u),!o))return a;if(u.children){var l=e.utils.findViewRecursive(u.children,n,r,o);if(l.length&&(a=a.concat(l),!o))return a}}return a},findViewById:function findViewById(t){var n=e.utils.findViewRecursive(elementor.getPreviewView().children,"id",t,!1);return!!n&&n[0]},findContainerById:function findContainerById(t){var n=e.utils.findViewById(t);return n&&(n=n.getContainer()),n}}}}],[{key:"getModules",value:function getModules(){return{get CommandHistoryBase(){return elementorCommon.helpers.hardDeprecated("$e.modules.document.CommandHistoryBase","3.0.0","$e.modules.document.CommandHistory"),this.CommandHistory},get CommandHistoryDebounceBase(){return elementorCommon.helpers.hardDeprecated("$e.modules.document.CommandHistoryDebounceBase","3.0.0","$e.modules.document.CommandHistoryDebounce"),this.CommandHistoryDebounce},CommandHistory:m.default,CommandHistoryDebounce:g.default}}}]),Component}(p.default);t.default=C},12146:(e,t,n)=>{"use strict";var r=n(18194).__,o=n(67394),a=n(67971);o(t,"__esModule",{value:!0}),t.default=void 0;var i=a(n(11959)),u=a(n(39041)),l=a(n(77371)),s=a(n(68537)),c=function(e){(0,l.default)(DisableEnable,e);var t=(0,s.default)(DisableEnable);function DisableEnable(){return(0,i.default)(this,DisableEnable),t.apply(this,arguments)}return(0,u.default)(DisableEnable,[{key:"getTitle",value:function getTitle(){return r("Dynamic")}}],[{key:"getEnableCommand",value:function getEnableCommand(){return"document/dynamic/enable"}},{key:"getDisableCommand",value:function getDisableCommand(){return"document/dynamic/disable"}}]),DisableEnable}(a(n(26353)).default);t.default=c},9471:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.Disable=void 0;var a=o(n(83452)),i=o(n(11959)),u=o(n(39041)),l=o(n(77371)),s=o(n(68537)),c=function(e){(0,l.default)(Disable,e);var t=(0,s.default)(Disable);function Disable(){return(0,i.default)(this,Disable),t.apply(this,arguments)}return(0,u.default)(Disable,[{key:"apply",value:function apply(e){var t=e.settings,n=e.containers;(void 0===n?[e.container]:n).forEach((function(e){e=e.lookup(),(0,a.default)(t).forEach((function(t){e.dynamic.unset(t)})),$e.internal("document/elements/set-settings",{container:e,settings:{__dynamic__:e.dynamic.toJSON()}})}))}}]),Disable}(o(n(12146)).default);t.Disable=c;var d=c;t.default=d},28910:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.Enable=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(Enable,e);var t=(0,l.default)(Enable);function Enable(){return(0,a.default)(this,Enable),t.apply(this,arguments)}return(0,i.default)(Enable,[{key:"apply",value:function apply(e){var t=e.settings,n=e.containers;(void 0===n?[e.container]:n).forEach((function(e){(e=e.lookup()).dynamic.set(t),$e.internal("document/elements/set-settings",{container:e,settings:{__dynamic__:e.dynamic.toJSON()}})}))}}]),Enable}(o(n(12146)).default);t.Enable=s;var c=s;t.default=c},75775:(e,t,n)=>{"use strict";var r=n(67394);r(t,"__esModule",{value:!0}),r(t,"Disable",{enumerable:!0,get:function get(){return o.Disable}}),r(t,"Enable",{enumerable:!0,get:function get(){return a.Enable}}),r(t,"Settings",{enumerable:!0,get:function get(){return i.Settings}});var o=n(9471),a=n(28910),i=n(67122)},67122:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.Settings=void 0;var a=o(n(83452)),i=o(n(11959)),u=o(n(39041)),l=o(n(77371)),s=o(n(68537)),c=o(n(28819)),d=o(n(30889)),f=function(e){(0,l.default)(Settings,e);var t=(0,s.default)(Settings);function Settings(){return(0,i.default)(this,Settings),t.apply(this,arguments)}return(0,u.default)(Settings,[{key:"validateArgs",value:function validateArgs(e){this.requireContainer(e),this.requireArgumentConstructor("settings",Object,e)}},{key:"getHistory",value:function getHistory(e){var t=e.settings,n=e.containers,r=void 0===n?[e.container]:n,o={};return r.forEach((function(e){var n=e.id;o[n]||(o[n]={}),o[n]={old:e.dynamic.toJSON(),new:t}})),{containers:r,subTitle:d.default.getSubTitle(e),data:{changes:o},type:"change",restore:this.constructor.restore}}},{key:"apply",value:function apply(e){var t=e.settings,n=e.containers;(void 0===n?[e.container]:n).forEach((function(e){e=e.lookup(),(0,a.default)(t).length?e.dynamic.set(t):e.dynamic.clear(),$e.internal("document/elements/set-settings",{container:e,settings:{__dynamic__:e.dynamic.toJSON()}})}))}}],[{key:"restore",value:function restore(e,t){var n=e.get("data");e.get("containers").forEach((function(e){var r=n.changes[e.id];$e.run("document/dynamic/settings",{container:e,settings:t?r.new:r.old}),e.panel.refresh()}))}}]),Settings}(c.default);t.Settings=f;var p=f;t.default=p},82203:(e,t,n)=>{"use strict";var r=n(67394),o=n(52369),a=n(67971);r(t,"__esModule",{value:!0}),t.default=void 0;var i=a(n(11959)),u=a(n(39041)),l=a(n(77371)),s=a(n(68537)),c=a(n(15591)),d=o(n(75775)),f=function(e){(0,l.default)(Component,e);var t=(0,s.default)(Component);function Component(){return(0,i.default)(this,Component),t.apply(this,arguments)}return(0,u.default)(Component,[{key:"getNamespace",value:function getNamespace(){return"document/dynamic"}},{key:"defaultCommands",value:function defaultCommands(){return this.importCommands(d)}}]),Component}(c.default);t.default=f},19817:(e,t,n)=>{"use strict";var r=n(67394);r(t,"__esModule",{value:!0}),r(t,"SetSettings",{enumerable:!0,get:function get(){return o.SetSettings}});var o=n(7820)},7820:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.SetSettings=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(SetSettings,e);var t=(0,l.default)(SetSettings);function SetSettings(){return(0,a.default)(this,SetSettings),t.apply(this,arguments)}return(0,i.default)(SetSettings,[{key:"validateArgs",value:function validateArgs(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(this.requireContainer(e),this.requireArgumentType("settings","object",e),void 0!==e.render&&void 0!==e.renderUI)throw new Error("Args: `render` and `renderUI` cannot be applied together.")}},{key:"apply",value:function apply(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.containers,n=void 0===t?[e.container]:t,r=e.settings,o=e.options,a=void 0===o?{}:o,i=a.external,u=a.render,l=void 0===u||u,s=a.renderUI,c=void 0!==s&&s;n.forEach((function(e){i?e.settings.setExternalChange(r):e.settings.set(r),c?e.renderUI():l&&e.render()}))}}]),SetSettings}(o(n(23714)).default);t.SetSettings=s;var c=s;t.default=c},75185:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.CopyAll=void 0;var a=o(n(35657));n(90286);var i=o(n(11959)),u=o(n(39041)),l=o(n(77371)),s=o(n(68537)),c=function(e){(0,l.default)(CopyAll,e);var t=(0,s.default)(CopyAll);function CopyAll(){return(0,i.default)(this,CopyAll),t.apply(this,arguments)}return(0,u.default)(CopyAll,[{key:"apply",value:function apply(){$e.run("document/elements/copy",{containers:(0,a.default)(elementor.getPreviewView().children._views).map((function(e){return e.getContainer()}))})}}]),CopyAll}(o(n(68689)).default);t.CopyAll=c;var d=c;t.default=d},882:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.Copy=void 0,n(90286);var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(Copy,e);var t=(0,l.default)(Copy);function Copy(){return(0,a.default)(this,Copy),t.apply(this,arguments)}return(0,i.default)(Copy,[{key:"validateArgs",value:function validateArgs(e){this.requireContainer(e)}},{key:"apply",value:function apply(e){var t=e.storageKey,n=void 0===t?"clipboard":t,r=e.containers,o=void 0===r?[e.container]:r;elementorCommon.storage.set(n,o.map((function(e){return e.model.toJSON({copyHtmlCache:!0})})))}}]),Copy}(o(n(68689)).default);t.Copy=s;var c=s;t.default=c},2040:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.Create=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(Create,e);var t=(0,l.default)(Create);function Create(){return(0,a.default)(this,Create),t.apply(this,arguments)}return(0,i.default)(Create,[{key:"validateArgs",value:function validateArgs(e){this.requireContainer(e),this.requireArgumentConstructor("model",Object,e)}},{key:"getHistory",value:function getHistory(e){var t=e.model,n=e.containers;return{containers:void 0===n?[e.container]:n,model:t,type:"add",title:elementor.helpers.getModelLabel(t)}}},{key:"apply",value:function apply(e){var t=this,n=e.model,r=e.options,o=void 0===r?{}:r,a=e.containers,i=void 0===a?[e.container]:a,u=[];return o.trigger||(o.trigger={beforeAdd:"element:before:add",afterAdd:"element:after:add"}),i.forEach((function(e){var r=(e=e.lookup()).view.addElement(n,o).getContainer();u.push(r),t.isHistoryActive()&&$e.internal("document/history/log-sub-item",{container:e,type:"sub-add",restore:t.constructor.restore,options:o,data:{containerToRestore:r,modelToRestore:r.model.toJSON()}})})),1===u.length&&(u=u[0]),u}},{key:"isDataChanged",value:function isDataChanged(){return!0}}],[{key:"restore",value:function restore(e,t){var n=e.get("data"),r=e.get("container"),o=e.get("options")||{};o.clone&&(o.clone=!1),t?$e.run("document/elements/create",{container:r,model:n.modelToRestore,options:o}):$e.run("document/elements/delete",{container:n.containerToRestore})}}]),Create}(o(n(78627)).default);t.Create=s;var c=s;t.default=c},74217:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.Delete=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(Delete,e);var t=(0,l.default)(Delete);function Delete(){return(0,a.default)(this,Delete),t.apply(this,arguments)}return(0,i.default)(Delete,[{key:"validateArgs",value:function validateArgs(e){this.requireContainer(e)}},{key:"getHistory",value:function getHistory(e){var t=e.containers;return{containers:void 0===t?[e.container]:t,type:"remove"}}},{key:"apply",value:function apply(e){var t=this,n=e.containers,r=void 0===n?[e.container]:n;return r.forEach((function(e){e=e.lookup(),t.isHistoryActive()&&$e.internal("document/history/log-sub-item",{container:e,type:"sub-remove",restore:t.constructor.restore,data:{model:e.model.toJSON(),parent:e.parent,at:e.view._index}}),elementor.channels.data.trigger("element:before:remove",e.model),e.model.destroy(),elementor.channels.data.trigger("element:after:remove",e.model),e.panel.refresh()})),1===r.length?r[0]:r}},{key:"isDataChanged",value:function isDataChanged(){return!0}}],[{key:"restore",value:function restore(e,t){var n=e.get("container"),r=e.get("data");t?$e.run("document/elements/delete",{container:n}):$e.run("document/elements/create",{container:r.parent,model:r.model,options:{at:r.at}})}}]),Delete}(o(n(78627)).default);t.Delete=s;var c=s;t.default=c},45596:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.Duplicate=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(Duplicate,e);var t=(0,l.default)(Duplicate);function Duplicate(){return(0,a.default)(this,Duplicate),t.apply(this,arguments)}return(0,i.default)(Duplicate,[{key:"validateArgs",value:function validateArgs(e){this.requireContainer(e)}},{key:"getHistory",value:function getHistory(e){var t=e.containers;return{containers:void 0===t?[e.container]:t,type:"duplicate"}}},{key:"apply",value:function apply(e){var t=e.containers,n=void 0===t?[e.container]:t,r=[];return n.forEach((function(e){var t=e.parent,n=e.view._index+1;r.push($e.run("document/elements/create",{container:t,model:e.model.toJSON(),options:{at:n,clone:!0}}))})),1===r.length?r[0]:r}}]),Duplicate}(o(n(78627)).default);t.Duplicate=s;var c=s;t.default=c},5894:(e,t,n)=>{"use strict";var r=n(18194).__,o=n(67394),a=n(67971);o(t,"__esModule",{value:!0}),t.default=t.Empty=void 0;var i=a(n(11959)),u=a(n(39041)),l=a(n(77371)),s=a(n(68537)),c=function(e){(0,l.default)(Empty,e);var t=(0,s.default)(Empty);function Empty(){return(0,i.default)(this,Empty),t.apply(this,arguments)}return(0,u.default)(Empty,[{key:"getHistory",value:function getHistory(e){return!!e.force&&{type:"remove",title:r("All Content","elementor"),data:elementor.elements?elementor.elements.toJSON():null,restore:this.constructor.restore}}},{key:"apply",value:function apply(e){if(e.force&&elementor.elements)return elementor.elements.reset(),void elementor.getPreviewContainer().panel.closeEditor();elementor.getClearPageDialog().show()}},{key:"isDataChanged",value:function isDataChanged(){if(this.args.force)return!0}}],[{key:"restore",value:function restore(e,t){if(t)$e.run("document/elements/empty",{force:!0});else{var n=e.get("data");n&&elementor.getPreviewView().addChildModel(n),$e.internal("document/save/set-is-modified",{status:!0})}}}]),Empty}(a(n(78627)).default);t.Empty=c;var d=c;t.default=d},69507:(e,t,n)=>{"use strict";var r=n(18194).__,o=n(67394),a=n(67971);o(t,"__esModule",{value:!0}),t.default=t.Import=void 0;var i=a(n(35657)),u=a(n(15149)),l=a(n(11959)),s=a(n(39041)),c=a(n(77371)),d=a(n(68537)),f=function(e){(0,c.default)(Import,e);var t=(0,d.default)(Import);function Import(){return(0,l.default)(this,Import),t.apply(this,arguments)}return(0,s.default)(Import,[{key:"validateArgs",value:function validateArgs(e){this.requireArgumentInstance("model",Backbone.Model,e),this.requireArgumentConstructor("data",Object,e)}},{key:"getHistory",value:function getHistory(e){var t=e.model;return{type:"add",title:r("Template","elementor"),subTitle:t.get("title")}}},{key:"apply",value:function apply(e){var t=e.data,n=e.options,r=void 0===n?e.options||{}:n,o=elementor.getPreviewContainer(),a=[],l=isNaN(r.at)?o.view.collection.length:r.at;return(0,i.default)(t.content).forEach((function(e){a.push($e.run("document/elements/create",{container:elementor.getPreviewContainer(),model:e,options:(0,u.default)(r,{at:l})})),l++})),r.withPageSettings&&$e.run("document/elements/settings",{container:elementor.settings.page.getEditedView().getContainer(),settings:t.page_settings,options:{external:!0}}),a}}]),Import}(a(n(78627)).default);t.Import=f;var p=f;t.default=p},81682:(e,t,n)=>{"use strict";var r=n(67394);r(t,"__esModule",{value:!0}),r(t,"Copy",{enumerable:!0,get:function get(){return o.Copy}}),r(t,"CopyAll",{enumerable:!0,get:function get(){return a.CopyAll}}),r(t,"Create",{enumerable:!0,get:function get(){return i.Create}}),r(t,"Delete",{enumerable:!0,get:function get(){return u.Delete}}),r(t,"Duplicate",{enumerable:!0,get:function get(){return l.Duplicate}}),r(t,"Empty",{enumerable:!0,get:function get(){return s.Empty}}),r(t,"Import",{enumerable:!0,get:function get(){return c.Import}}),r(t,"Paste",{enumerable:!0,get:function get(){return d.Paste}}),r(t,"Move",{enumerable:!0,get:function get(){return f.Move}}),r(t,"PasteStyle",{enumerable:!0,get:function get(){return p.PasteStyle}}),r(t,"ResetSettings",{enumerable:!0,get:function get(){return v.ResetSettings}}),r(t,"ResetStyle",{enumerable:!0,get:function get(){return m.ResetStyle}}),r(t,"Settings",{enumerable:!0,get:function get(){return g.Settings}});var o=n(882),a=n(75185),i=n(2040),u=n(74217),l=n(45596),s=n(5894),c=n(69507),d=n(27318),f=n(29881),p=n(73330),v=n(99563),m=n(75357),g=n(30889)},29881:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.Move=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(Move,e);var t=(0,l.default)(Move);function Move(){return(0,a.default)(this,Move),t.apply(this,arguments)}return(0,i.default)(Move,[{key:"validateArgs",value:function validateArgs(e){this.requireContainer(e),this.requireArgumentInstance("target",elementorModules.editor.Container,e)}},{key:"getHistory",value:function getHistory(e){var t=e.containers;return{containers:void 0===t?[e.container]:t,type:"move"}}},{key:"apply",value:function apply(e){var t=e.target,n=e.options,r=void 0===n?{}:n,o=e.containers,a=void 0===o?[e.container]:o,i=[];a.forEach((function(e){i.push(e.model.toJSON()),$e.run("document/elements/delete",{container:e})}));var u=0;i.forEach((function(e){r.hasOwnProperty("at")&&i.length>1&&0!==u&&(r.at+=u),r.trigger={beforeAdd:"drag:before:update",afterAdd:"drag:after:update"},$e.run("document/elements/create",{container:t,model:e,options:r}),u++}))}}]),Move}(o(n(78627)).default);t.Move=s;var c=s;t.default=c},73330:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.PasteStyle=void 0;var a=o(n(38923)),i=o(n(83452)),u=o(n(47834)),l=o(n(24596)),s=o(n(11959)),c=o(n(39041)),d=o(n(77371)),f=o(n(68537)),p=function(e){(0,d.default)(PasteStyle,e);var t=(0,f.default)(PasteStyle);function PasteStyle(){return(0,s.default)(this,PasteStyle),t.apply(this,arguments)}return(0,c.default)(PasteStyle,[{key:"validateArgs",value:function validateArgs(e){this.requireContainer(e);var t=e.storageKey,n=void 0===t?"clipboard":t,r=elementorCommon.storage.get(n);this.requireArgumentType("storageData","object",{storageData:r})}},{key:"validateControls",value:function validateControls(e,t){var n=!0;return(null===e||null===t||void 0===e||void 0===t||"object"===(0,l.default)(e)^"object"===(0,l.default)(t))&&(n=!1),n}},{key:"getHistory",value:function getHistory(e){var t=e.containers;return{containers:void 0===t?[e.container]:t,type:"paste_style"}}},{key:"apply",value:function apply(e){var t=this,n=e.containers,r=void 0===n?[e.container]:n,o=e.storageKey,s=void 0===o?"clipboard":o,c=elementorCommon.storage.get(s);r.forEach((function(e){var n=e.settings,r=n.attributes,o=n.controls,s={},d=function addExtraControls(t,n){t[n]&&(0,a.default)(t[n]).forEach((function(t){var r=(0,u.default)(t,2),a=r[0],i=r[1],l=o[a];e.view.isStyleTransferControl(l)&&(s[n]=s[n]||{},s[n][a]=i)}))};c.forEach((function(n){var c=n.settings;d(c,"__globals__"),d(c,"__dynamic__"),(0,a.default)(o).forEach((function(n){var o=(0,u.default)(n,2),a=o[0],d=o[1];if(e.view.isStyleTransferControl(d)){var f=c[a],p=r[a];if(t.validateControls(f,p)){if("object"===(0,l.default)(f))if((0,i.default)(f).some((function(e){if(f[e]!==p[e])return!1})))return;f!==p&&elementor.getControlView(d.type).onPasteStyle(d,f)&&(s[a]=f)}}})),t.pasteStyle(e,s)}))}))}},{key:"pasteStyle",value:function pasteStyle(e,t){elementor.channels.data.trigger("element:before:paste:style",e.model);var n=t.__globals__;n&&delete t.__globals__,$e.run("document/elements/settings",{container:e,settings:t,options:{external:!0,render:!1}}),n&&($e.run("document/globals/settings",{container:e,settings:n,options:{external:!0,render:!1}}),e.panel.refresh()),elementor.channels.data.trigger("element:after:paste:style",e.model),e.render()}}]),PasteStyle}(o(n(78627)).default);t.PasteStyle=p;var v=p;t.default=v},27318:(e,t,n)=>{"use strict";var r=n(18194).__,o=n(67394),a=n(67971);o(t,"__esModule",{value:!0}),t.default=t.Paste=void 0;var i=a(n(15149)),u=a(n(11959)),l=a(n(39041)),s=a(n(77371)),c=a(n(68537)),d=function(e){(0,s.default)(Paste,e);var t=(0,c.default)(Paste);function Paste(){return(0,u.default)(this,Paste),t.apply(this,arguments)}return(0,l.default)(Paste,[{key:"validateArgs",value:function validateArgs(e){this.requireContainer(e);var t=e.storageKey,n=void 0===t?"clipboard":t,r=elementorCommon.storage.get(n);this.requireArgumentType("storageData","object",{storageData:r})}},{key:"getHistory",value:function getHistory(){return{type:"paste",title:r("Elements","elementor")}}},{key:"apply",value:function apply(e){var t=this,n=e.at,r=e.rebuild,o=void 0!==r&&r,a=e.storageKey,i=void 0===a?"clipboard":a,u=e.containers,l=void 0===u?[e.container]:u,s=e.options,c=void 0===s?{}:s,d=elementorCommon.storage.get(i),f=[];return o?l.forEach((function(e){var r=void 0===n?e.view.collection.length:n;d.forEach((function(n){switch(n.elType){case"section":if(n.isInner){var o=$e.run("document/elements/create",{container:e,model:{elType:"section"},columns:1,options:{at:r,edit:!1}});e=o.view.children.findByIndex(0).getContainer()}f.push(t.pasteTo([e],[n],{at:r,edit:!1})),r++;break;case"column":var a=$e.run("document/elements/create",{container:e,model:{elType:"section"},columns:0,options:{at:r,edit:!1}});f.push(t.pasteTo([a],[n]));break;default:var i;if("section"===e.model.get("elType"))i=[e.view.children.findByIndex(0).getContainer()];else i=[$e.run("document/elements/create",{container:e,model:{elType:"section"},columns:1,options:{at:r}}).view.children.first().getContainer()];f.push(t.pasteTo(i,[n]))}}))})):(void 0!==n&&(c.at=n),f.push(this.pasteTo(l,d,c))),1===f.length?f[0]:f}},{key:"pasteTo",value:function pasteTo(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};n=(0,i.default)({at:null,clone:!0},n);var r=[];return t.forEach((function(t){r.push($e.run("document/elements/create",{containers:e,model:t,options:n})),null!==n.at&&n.at++})),1===r.length?r[0]:r}}]),Paste}(a(n(78627)).default);t.Paste=d;var f=d;t.default=f},99563:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.ResetSettings=void 0,n(71954);var a=o(n(38923)),i=o(n(47834)),u=o(n(11959)),l=o(n(39041)),s=o(n(77371)),c=o(n(68537)),d=function(e){(0,s.default)(ResetSettings,e);var t=(0,c.default)(ResetSettings);function ResetSettings(){return(0,u.default)(this,ResetSettings),t.apply(this,arguments)}return(0,l.default)(ResetSettings,[{key:"validateArgs",value:function validateArgs(e){this.requireContainer(e)}},{key:"getHistory",value:function getHistory(e){var t=e.containers;return{containers:void 0===t?[e.container]:t,type:"reset_settings"}}},{key:"apply",value:function apply(e){var t=e.containers,n=void 0===t?[e.container]:t,r=e.settings,o=void 0===r?[]:r;n.forEach((function(e){var t=(0,a.default)(e.settings.controls),n={};t.forEach((function(e){var t=(0,i.default)(e,2),r=t[0],a=t[1];o&&o.length&&!o.find((function(e){return e===r}))||(n[r]=a.default)})),$e.run("document/elements/settings",{container:e,settings:n}),e.render()}))}}]),ResetSettings}(o(n(78627)).default);t.ResetSettings=d;var f=d;t.default=f},75357:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.ResetStyle=void 0;var a=o(n(38923)),i=o(n(47834)),u=o(n(11959)),l=o(n(39041)),s=o(n(77371)),c=o(n(68537)),d=function(e){(0,s.default)(ResetStyle,e);var t=(0,c.default)(ResetStyle);function ResetStyle(){return(0,u.default)(this,ResetStyle),t.apply(this,arguments)}return(0,l.default)(ResetStyle,[{key:"validateArgs",value:function validateArgs(e){this.requireContainer(e)}},{key:"getHistory",value:function getHistory(e){var t=e.containers;return{containers:void 0===t?[e.container]:t,type:"reset_style"}}},{key:"apply",value:function apply(e){var t=e.containers;(void 0===t?[e.container]:t).forEach((function(e){var t=e.settings.controls,n=[];e.view.allowRender=!1,(0,a.default)(t).forEach((function(t){var r=(0,i.default)(t,2),o=r[0],a=r[1];e.view.isStyleTransferControl(a)&&n.push(o)})),elementor.channels.data.trigger("element:before:reset:style",e.model),$e.run("document/elements/reset-settings",{container:e,settings:n,options:{external:!0}}),elementor.channels.data.trigger("element:after:reset:style",e.model),e.view.allowRender=!0,e.render()}))}}]),ResetStyle}(o(n(78627)).default);t.ResetStyle=d;var f=d;t.default=f},30889:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.Settings=void 0;var a=o(n(83452)),i=o(n(18042)),u=o(n(11959)),l=o(n(39041)),s=o(n(77371)),c=o(n(68537)),d=function(e){(0,s.default)(Settings,e);var t=(0,c.default)(Settings);function Settings(){return(0,u.default)(this,Settings),t.apply(this,arguments)}return(0,l.default)(Settings,[{key:"addToHistory",value:function addToHistory(e,t,n){var r={containers:[e],data:{changes:(0,i.default)({},e.id,{old:n,new:t})},type:"change",restore:Settings.restore};$e.internal("document/history/add-transaction",r)}},{key:"validateArgs",value:function validateArgs(e){this.requireContainer(e),this.requireArgumentConstructor("settings",Object,e)}},{key:"getHistory",value:function getHistory(e){var t=e.containers;return{containers:void 0===t?[e.container]:t,subTitle:this.constructor.getSubTitle(e),type:"change"}}},{key:"apply",value:function apply(e){var t=this,n=e.containers,r=void 0===n?[e.container]:n,o=e.settings,i=void 0===o?{}:o,u=e.isMultiSettings,l=void 0!==u&&u,s=e.options,c=void 0===s?{}:s;r.forEach((function(e){e=e.lookup();var n=l?i[e.id]:i,r=e.settings.toJSON();e.oldValues={},(0,a.default)(n).forEach((function(t){e.oldValues[t]=r[t]})),t.isHistoryActive()&&t.addToHistory(e,n,e.oldValues),$e.internal("document/elements/set-settings",{container:e,options:c,settings:n})}))}},{key:"isDataChanged",value:function isDataChanged(){return!0}}],[{key:"getSubTitle",value:function getSubTitle(e){var t=e.containers,n=void 0===t?[e.container]:t,r=e.settings,o=void 0===r?{}:r,i=e.isMultiSettings,u=(0,a.default)(o),l=n[0].controls,s=u[0],c="";return!i&&1===u.length&&l&&l[s]&&(c=l[s].label),c}},{key:"restore",value:function restore(e,t){var n=e.get("data");e.get("containers").forEach((function(e){var r=n.changes[e.id];$e.run("document/elements/settings",{container:e,settings:t?r.new:r.old,options:{external:!0}})}))}}]),Settings}(o(n(28819)).default);t.Settings=d;var f=d;t.default=f},37583:(e,t,n)=>{"use strict";var r=n(67394),o=n(52369),a=n(67971);r(t,"__esModule",{value:!0}),t.default=void 0;var i=a(n(35657)),u=a(n(11959)),l=a(n(39041)),s=a(n(77371)),c=a(n(68537)),d=a(n(15591)),f=o(n(81682)),p=o(n(19817)),v=function(e){(0,s.default)(Component,e);var t=(0,c.default)(Component);function Component(){return(0,u.default)(this,Component),t.apply(this,arguments)}return(0,l.default)(Component,[{key:"getNamespace",value:function getNamespace(){return"document/elements"}},{key:"defaultCommands",value:function defaultCommands(){return this.importCommands(f)}},{key:"defaultCommandsInternal",value:function defaultCommandsInternal(){return this.importCommands(p)}},{key:"defaultUtils",value:function defaultUtils(){var e=this;return{isValidChild:function isValidChild(e,t){var n=t.get("elType"),r=e.get("elType"),o=t.get("isInner"),a=e.get("isInner");if(a&&"section"===r&&o&&"column"===n)return!1;if(r===n)return!1;if("section"===r&&!a&&"column"===n)return!1;var i=elementor.helpers.getElementChildType(n);return i&&-1!==i.indexOf(e.get("elType"))},isValidGrandChild:function isValidGrandChild(e,t){var n,r=e.get("elType");switch(t.model.get("elType")){case"document":n=!0;break;case"section":n="widget"===r;break;default:n=!1}return n},isSameElement:function isSameElement(e,t){var n=t.model.get("elType"),r=e.get("elType");return n===r&&("column"===n&&"column"===r||t.model.get("isInner")===e.get("isInner"))},getPasteOptions:function getPasteOptions(t,n){var r={};return r.isValidChild=e.utils.isValidChild(t,n.model),r.isSameElement=e.utils.isSameElement(t,n),r.isValidGrandChild=e.utils.isValidGrandChild(t,n),r},isPasteEnabled:function isPasteEnabled(t){var n=elementorCommon.storage.get("clipboard");if(!n||!n[0])return!1;n[0]instanceof Backbone.Model||(n[0]=new Backbone.Model(n[0]));var r=e.utils.getPasteOptions(n[0],t);return(0,i.default)(r).some((function(e){return!!e}))}}}}]),Component}(d.default);t.default=v},8847:(e,t,n)=>{"use strict";var r=n(18194).__,o=n(67394),a=n(67971);o(t,"__esModule",{value:!0}),t.default=void 0;var i=a(n(11959)),u=a(n(39041)),l=a(n(77371)),s=a(n(68537)),c=function(e){(0,l.default)(DisableEnable,e);var t=(0,s.default)(DisableEnable);function DisableEnable(){return(0,i.default)(this,DisableEnable),t.apply(this,arguments)}return(0,u.default)(DisableEnable,[{key:"getTitle",value:function getTitle(){return r("Global")}}],[{key:"getName",value:function getName(){return"Global"}},{key:"getEnableCommand",value:function getEnableCommand(){return"document/globals/enable"}},{key:"getDisableCommand",value:function getDisableCommand(){return"document/globals/disable"}}]),DisableEnable}(a(n(26353)).default);t.default=c},89636:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.Disable=void 0;var a=o(n(57135)),i=o(n(38923)),u=o(n(73220)),l=o(n(83452));n(90286),n(37472),n(76139),n(12897),n(93085);var s=o(n(47834)),c=o(n(49117)),d=o(n(11959)),f=o(n(39041)),p=o(n(77371)),v=o(n(68537)),m=function(e){(0,p.default)(Disable,e);var t,n=(0,v.default)(Disable);function Disable(){return(0,d.default)(this,Disable),n.apply(this,arguments)}return(0,f.default)(Disable,[{key:"apply",value:(t=(0,c.default)(a.default.mark((function _callee3(e){var t,n,r,o,d,f;return a.default.wrap((function _callee3$(p){for(;;)switch(p.prev=p.next){case 0:return t=e.settings,n=e.containers,r=void 0===n?[e.container]:n,o=e.options,d=void 0===o?{}:o,f=r.map(function(){var e=(0,c.default)(a.default.mark((function _callee2(e){var n;return a.default.wrap((function _callee2$(r){for(;;)switch(r.prev=r.next){case 0:if(e=e.lookup(),!d.restore){r.next=6;break}return n=(0,i.default)(e.globals.attributes).map(function(){var t=(0,c.default)(a.default.mark((function _callee(t){var n,r,o;return a.default.wrap((function _callee$(a){for(;;)switch(a.prev=a.next){case 0:if(n=(0,s.default)(t,2),r=n[0],o=n[1]){a.next=3;break}return a.abrupt("return");case 3:return a.abrupt("return",$e.run("document/globals/unlink",{container:e,options:{external:!0},globalValue:o,setting:r}));case 4:case"end":return a.stop()}}),_callee)})));return function(e){return t.apply(this,arguments)}}()),r.next=6,u.default.all(n);case 6:(0,l.default)(t).forEach((function(t){return e.globals.set(t,"")})),$e.internal("document/elements/set-settings",{container:e,settings:{__globals__:e.globals.toJSON()},options:{renderUI:!0}});case 8:case"end":return r.stop()}}),_callee2)})));return function(t){return e.apply(this,arguments)}}()),p.next=4,u.default.all(f);case 4:case"end":return p.stop()}}),_callee3)}))),function apply(e){return t.apply(this,arguments)})}]),Disable}(o(n(8847)).default);t.Disable=m;var g=m;t.default=g},16602:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.Enable=void 0,n(99745);var a=o(n(35657)),i=o(n(11959)),u=o(n(39041)),l=o(n(77371)),s=o(n(68537)),c=function(e){(0,l.default)(Enable,e);var t=(0,s.default)(Enable);function Enable(){return(0,i.default)(this,Enable),t.apply(this,arguments)}return(0,u.default)(Enable,[{key:"apply",value:function apply(e){var t=e.settings,n=e.containers;(void 0===n?[e.container]:n).forEach((function(e){(e=e.lookup()).globals.set(t),$e.internal("document/elements/set-settings",{container:e,settings:{__globals__:e.globals.toJSON()},options:{renderUI:!0}}),(0,a.default)(e.getGroupRelatedControls(t)).forEach((function(t){e.settings.set(t.name,t.default)}))}))}}]),Enable}(o(n(8847)).default);t.Enable=c;var d=c;t.default=d},76030:(e,t,n)=>{"use strict";var r=n(67394);r(t,"__esModule",{value:!0}),r(t,"Disable",{enumerable:!0,get:function get(){return o.Disable}}),r(t,"Enable",{enumerable:!0,get:function get(){return a.Enable}}),r(t,"Settings",{enumerable:!0,get:function get(){return i.Settings}}),r(t,"Unlink",{enumerable:!0,get:function get(){return u.Unlink}});var o=n(89636),a=n(16602),i=n(88667),u=n(5743)},88667:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.Settings=void 0;var a=o(n(83452)),i=o(n(11959)),u=o(n(39041)),l=o(n(77371)),s=o(n(68537)),c=o(n(28819)),d=o(n(30889)),f=function(e){(0,l.default)(Settings,e);var t=(0,s.default)(Settings);function Settings(){return(0,i.default)(this,Settings),t.apply(this,arguments)}return(0,u.default)(Settings,[{key:"validateArgs",value:function validateArgs(e){this.requireContainer(e),this.requireArgumentConstructor("settings",Object,e)}},{key:"getHistory",value:function getHistory(e){var t=e.settings,n=e.containers,r=void 0===n?[e.container]:n,o={};return r.forEach((function(e){var n=e.id;o[n]||(o[n]={}),o[n]={old:e.globals.toJSON(),new:t}})),{containers:r,subTitle:d.default.getSubTitle(e),data:{changes:o},type:"change",restore:this.constructor.restore}}},{key:"apply",value:function apply(e){var t=e.settings,n=e.containers,r=void 0===n?[e.container]:n,o=e.options,i=void 0===o?{}:o;r.forEach((function(e){e=e.lookup(),(0,a.default)(t).length?e.globals.set(t):e.globals.clear(),$e.internal("document/elements/set-settings",{container:e,options:i,settings:{__globals__:e.globals.toJSON()}})}))}},{key:"isDataChanged",value:function isDataChanged(){return!0}}],[{key:"restore",value:function restore(e,t){var n=e.get("data");e.get("containers").forEach((function(e){var r=n.changes[e.id];$e.run("document/globals/settings",{container:e,settings:t?r.new:r.old}),e.panel.refresh()}))}}]),Settings}(c.default);t.Settings=f;var p=f;t.default=p},5743:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.Unlink=void 0;var a=o(n(57135)),i=o(n(73220)),u=o(n(38923)),l=o(n(83452));n(37472),n(76139),n(12897),n(93085),n(90286),n(84208);var s=o(n(47834)),c=o(n(49117)),d=o(n(11959)),f=o(n(39041)),p=o(n(77371)),v=o(n(68537)),m=function(e){(0,p.default)(Unlink,e);var t,n=(0,v.default)(Unlink);function Unlink(){return(0,d.default)(this,Unlink),n.apply(this,arguments)}return(0,f.default)(Unlink,[{key:"validateArgs",value:function validateArgs(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.requireContainer(e),this.requireArgumentType("setting","string",e),this.requireArgumentType("globalValue","string",e)}},{key:"apply",value:(t=(0,c.default)(a.default.mark((function _callee2(e){var t,n,r,o,d,f,p;return a.default.wrap((function _callee2$(v){for(;;)switch(v.prev=v.next){case 0:return t=e.containers,n=void 0===t?[e.container]:t,r=e.setting,o=e.globalValue,d=e.options,f=void 0===d?{}:d,p={},v.next=3,i.default.all(n.map(function(){var e=(0,c.default)(a.default.mark((function _callee(e){var t,n,l,c;return a.default.wrap((function _callee$(a){for(;;)switch(a.prev=a.next){case 0:return a.next=2,$e.data.get(o);case 2:return(t=a.sent)&&(l=t.data.value,(c=null===(n=e.controls[r])||void 0===n?void 0:n.groupPrefix)?(0,u.default)(l).forEach((function(e){var t=(0,s.default)(e,2),n=t[0],r=t[1];n=n.replace(elementor.config.kit_config.typography_prefix,c),p[n]=r})):p[r]=l),a.abrupt("return",i.default.resolve());case 5:case"end":return a.stop()}}),_callee)})));return function(t){return e.apply(this,arguments)}}()));case 3:(0,l.default)(p).length&&$e.run("document/elements/settings",{containers:n,options:f,settings:p});case 4:case"end":return v.stop()}}),_callee2)}))),function apply(e){return t.apply(this,arguments)})},{key:"isDataChanged",value:function isDataChanged(){return!0}}]),Unlink}(o(n(68689)).default);t.Unlink=m;var g=m;t.default=g},92787:(e,t,n)=>{"use strict";var r=n(67394),o=n(52369),a=n(67971);r(t,"__esModule",{value:!0}),t.default=void 0;var i=a(n(11959)),u=a(n(39041)),l=a(n(77371)),s=a(n(68537)),c=a(n(15591)),d=o(n(76030)),f=function(e){(0,l.default)(Component,e);var t=(0,s.default)(Component);function Component(){return(0,i.default)(this,Component),t.apply(this,arguments)}return(0,u.default)(Component,[{key:"getNamespace",value:function getNamespace(){return"document/globals"}},{key:"defaultCommands",value:function defaultCommands(){return this.importCommands(d)}}]),Component}(c.default);t.default=f},16284:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(76700)),l=o(n(44263)),s=o(n(77371)),c=o(n(68537)),d=function(e){(0,s.default)(Base,e);var t=(0,c.default)(Base);function Base(){return(0,a.default)(this,Base),t.apply(this,arguments)}return(0,i.default)(Base,[{key:"initialize",value:function initialize(e){(0,u.default)((0,l.default)(Base.prototype),"initialize",this).call(this,e),this.history=elementor.documents.getCurrent().history}}]),Base}(o(n(23714)).default);t.default=d},95573:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.Do=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(Do,e);var t=(0,l.default)(Do);function Do(){return(0,a.default)(this,Do),t.apply(this,arguments)}return(0,i.default)(Do,[{key:"apply",value:function apply(e){var t=e.index;return elementor.documents.getCurrent().history.doItem(t)}}]),Do}(o(n(68689)).default);t.Do=s;var c=s;t.default=c},58410:(e,t,n)=>{"use strict";var r=n(67394);r(t,"__esModule",{value:!0}),r(t,"Do",{enumerable:!0,get:function get(){return o.Do}}),r(t,"Redo",{enumerable:!0,get:function get(){return a.Redo}}),r(t,"Undo",{enumerable:!0,get:function get(){return i.Undo}}),r(t,"UndoAll",{enumerable:!0,get:function get(){return u.UndoAll}});var o=n(95573),a=n(91976),i=n(85156),u=n(34245)},93059:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.AddTransaction=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(76700)),l=o(n(44263)),s=o(n(77371)),c=o(n(68537)),d=function(e){(0,s.default)(AddTransaction,e);var t=(0,c.default)(AddTransaction);function AddTransaction(){return(0,a.default)(this,AddTransaction),t.apply(this,arguments)}return(0,i.default)(AddTransaction,[{key:"initialize",value:function initialize(e){(0,u.default)((0,l.default)(AddTransaction.prototype),"initialize",this).call(this,e),this.component.isTransactionStarted()&&(delete e.title,delete e.subTitle)}},{key:"validateArgs",value:function validateArgs(e){this.requireContainer(),this.requireArgumentType("type","string",e)}},{key:"apply",value:function apply(e){var t=this.history.getCurrentId();t&&(e.id=t),e=this.component.normalizeLogTitle(e),this.component.transactions.push(e)}}]),AddTransaction}(o(n(16284)).default);t.AddTransaction=d;var f=d;t.default=f},28891:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.ClearTransaction=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(ClearTransaction,e);var t=(0,l.default)(ClearTransaction);function ClearTransaction(){return(0,a.default)(this,ClearTransaction),t.apply(this,arguments)}return(0,i.default)(ClearTransaction,[{key:"apply",value:function apply(){this.component.transactions=[]}}]),ClearTransaction}(o(n(16284)).default);t.ClearTransaction=s;var c=s;t.default=c},85795:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.DeleteLog=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(DeleteLog,e);var t=(0,l.default)(DeleteLog);function DeleteLog(){return(0,a.default)(this,DeleteLog),t.apply(this,arguments)}return(0,i.default)(DeleteLog,[{key:"apply",value:function apply(e){e.id&&this.history.deleteItem(e.id)}}]),DeleteLog}(o(n(16284)).default);t.DeleteLog=s;var c=s;t.default=c},35962:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.EndLog=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(EndLog,e);var t=(0,l.default)(EndLog);function EndLog(){return(0,a.default)(this,EndLog),t.apply(this,arguments)}return(0,i.default)(EndLog,[{key:"apply",value:function apply(e){e.id&&this.history.endItem(e.id)}}]),EndLog}(o(n(16284)).default);t.EndLog=s;var c=s;t.default=c},83808:(e,t,n)=>{"use strict";var r=n(18194).__,o=n(67394),a=n(67971);o(t,"__esModule",{value:!0}),t.default=t.EndTransaction=void 0;var i=a(n(35657)),u=a(n(11959)),l=a(n(39041)),s=a(n(77371)),c=a(n(68537)),d=function(e){(0,s.default)(EndTransaction,e);var t=(0,c.default)(EndTransaction);function EndTransaction(){return(0,u.default)(this,EndTransaction),t.apply(this,arguments)}return(0,l.default)(EndTransaction,[{key:"apply",value:function apply(){if(this.component.isTransactionStarted()){var e=this.component.transactions[0],t=e.type,n=this.component.mergeTransactions(this.component.transactions),o=e.title,a=void 0===o?"":o,u=e.subTitle,l=void 0===u?"":u;n.length>1&&(a=r("Elements","elementor"),l="");var s={title:a,subTitle:l,type:t};e.id&&(s.id=e.id);var c=$e.internal("document/history/start-log",s);(0,i.default)(n).forEach((function(t){var n=t;e.id&&(n.id=e.id),$e.internal("document/history/log-sub-item",n)})),$e.internal("document/history/end-log",{id:c}),$e.internal("document/history/clear-transaction")}}}]),EndTransaction}(a(n(16284)).default);t.EndTransaction=d;var f=d;t.default=f},77543:(e,t,n)=>{"use strict";var r=n(67394);r(t,"__esModule",{value:!0}),r(t,"AddTransaction",{enumerable:!0,get:function get(){return o.AddTransaction}}),r(t,"ClearTransaction",{enumerable:!0,get:function get(){return a.ClearTransaction}}),r(t,"DeleteLog",{enumerable:!0,get:function get(){return i.DeleteLog}}),r(t,"EndLog",{enumerable:!0,get:function get(){return u.EndLog}}),r(t,"EndTransaction",{enumerable:!0,get:function get(){return l.EndTransaction}}),r(t,"LogSubItem",{enumerable:!0,get:function get(){return s.LogSubItem}}),r(t,"StartLog",{enumerable:!0,get:function get(){return c.StartLog}});var o=n(93059),a=n(28891),i=n(85795),u=n(35962),l=n(83808),s=n(65739),c=n(63397)},65739:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.LogSubItem=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(LogSubItem,e);var t=(0,l.default)(LogSubItem);function LogSubItem(){return(0,a.default)(this,LogSubItem),t.apply(this,arguments)}return(0,i.default)(LogSubItem,[{key:"apply",value:function apply(e){if(this.history.getActive()){var t=e.id||this.history.getCurrentId();e=this.component.normalizeLogTitle(e);var n=this.history.getItems().findWhere({id:t});if(!n)throw new Error("History item not found.");e.id&&delete e.id,n.get("items").unshift(e)}}}]),LogSubItem}(o(n(16284)).default);t.LogSubItem=s;var c=s;t.default=c},63397:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.StartLog=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(76700)),l=o(n(44263)),s=o(n(77371)),c=o(n(68537)),d=function(e){(0,s.default)(StartLog,e);var t=(0,c.default)(StartLog);function StartLog(){return(0,a.default)(this,StartLog),t.apply(this,arguments)}return(0,i.default)(StartLog,[{key:"initialize",value:function initialize(e){(0,u.default)((0,l.default)(StartLog.prototype),"initialize",this).call(this,e),this.history.isItemStarted()||e.id?this.isSubItem=!0:this.args=this.component.normalizeLogTitle(e)}},{key:"validateArgs",value:function validateArgs(e){this.isSubItem||(this.requireArgumentType("type","string",e),this.requireArgumentType("title","string",e))}},{key:"apply",value:function apply(e){return this.isSubItem?($e.internal("document/history/log-sub-item",e),null):this.history.startItem(e)}}]),StartLog}(o(n(16284)).default);t.StartLog=d;var f=d;t.default=f},91976:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.Redo=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(Redo,e);var t=(0,l.default)(Redo);function Redo(){return(0,a.default)(this,Redo),t.apply(this,arguments)}return(0,i.default)(Redo,[{key:"apply",value:function apply(){elementor.documents.getCurrent().history.navigate(!0)}}]),Redo}(o(n(68689)).default);t.Redo=s;var c=s;t.default=c},34245:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.UndoAll=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(UndoAll,e);var t=(0,l.default)(UndoAll);function UndoAll(){return(0,a.default)(this,UndoAll),t.apply(this,arguments)}return(0,i.default)(UndoAll,[{key:"apply",value:function apply(e){var t=e.document;t.history.doItem(t.history.getItems().length-1)}}]),UndoAll}(o(n(68689)).default);t.UndoAll=s;var c=s;t.default=c},85156:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.Undo=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(Undo,e);var t=(0,l.default)(Undo);function Undo(){return(0,a.default)(this,Undo),t.apply(this,arguments)}return(0,i.default)(Undo,[{key:"apply",value:function apply(){elementor.documents.getCurrent().history.navigate()}}]),Undo}(o(n(68689)).default);t.Undo=s;var c=s;t.default=c},76710:(e,t,n)=>{"use strict";var r=n(18194).__,o=n(67394),a=n(52369),i=n(67971);o(t,"__esModule",{value:!0}),t.default=void 0;var u=i(n(11959)),l=i(n(39041)),s=i(n(76700)),c=i(n(44263)),d=i(n(77371)),f=i(n(68537)),p=i(n(15591)),v=a(n(58410)),m=a(n(77543)),g=function(e){(0,d.default)(Component,e);var t=(0,f.default)(Component);function Component(){return(0,u.default)(this,Component),t.apply(this,arguments)}return(0,l.default)(Component,[{key:"__construct",value:function __construct(e){(0,s.default)((0,c.default)(Component.prototype),"__construct",this).call(this,e),this.transactions=[]}},{key:"getNamespace",value:function getNamespace(){return"document/history"}},{key:"defaultCommands",value:function defaultCommands(){return this.importCommands(v)}},{key:"defaultCommandsInternal",value:function defaultCommandsInternal(){return this.importCommands(m)}},{key:"normalizeLogTitle",value:function normalizeLogTitle(e){var t=e.containers,n=void 0===t?[e.container]:t;return!e.title&&n[0]&&(1===n.length?e.title=n[0].label:e.title=r("Elements","elementor")),e}},{key:"mergeTransactions",value:function mergeTransactions(e){var t={};return e.forEach((function(e){if(e.container||e.containers){var n=e.containers,r=void 0===n?[e.container]:n;r&&r.forEach((function(n){e.data&&(t[n.id]?t[n.id].data.changes[n.id].new=e.data.changes[n.id].new:t[n.id]=e)}))}})),t}},{key:"isTransactionStarted",value:function isTransactionStarted(){return Boolean(this.transactions.length)}}]),Component}(p.default);t.default=g},58135:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=void 0;var a=o(n(59396)),i=o(n(11959)),u=o(n(39041)),l=o(n(77371)),s=o(n(68537)),c=function(e){(0,l.default)(ResetLayoutBase,e);var t=(0,s.default)(ResetLayoutBase);function ResetLayoutBase(){return(0,i.default)(this,ResetLayoutBase),t.apply(this,arguments)}return(0,u.default)(ResetLayoutBase,[{key:"getConditions",value:function getConditions(){return!$e.commands.isCurrentFirstTrace("document/elements/move")}},{key:"apply",value:function apply(e,t){(0,a.default)(t)||(t=[t]),t.forEach((function(e){return e.parent.view.resetLayout(!1)}))}}]),ResetLayoutBase}(o(n(91706)).default);t.default=c},46105:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.CreateSectionColumnsResetLayout=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(CreateSectionColumnsResetLayout,e);var t=(0,l.default)(CreateSectionColumnsResetLayout);function CreateSectionColumnsResetLayout(){return(0,a.default)(this,CreateSectionColumnsResetLayout),t.apply(this,arguments)}return(0,i.default)(CreateSectionColumnsResetLayout,[{key:"getCommand",value:function getCommand(){return"document/elements/create"}},{key:"getId",value:function getId(){return"section-columns-reset-layout--document/elements/create"}},{key:"getContainerType",value:function getContainerType(){return"section"}}]),CreateSectionColumnsResetLayout}(o(n(58135)).default);t.CreateSectionColumnsResetLayout=s;var c=s;t.default=c},8372:(e,t,n)=>{"use strict";var r=n(67394);r(t,"__esModule",{value:!0}),r(t,"CreateSectionColumnsResetLayout",{enumerable:!0,get:function get(){return o.CreateSectionColumnsResetLayout}}),r(t,"InnerSectionColumns",{enumerable:!0,get:function get(){return a.InnerSectionColumns}}),r(t,"IsValidChild",{enumerable:!0,get:function get(){return i.IsValidChild}}),r(t,"SectionColumns",{enumerable:!0,get:function get(){return u.SectionColumns}}),r(t,"SectionColumnsLimit",{enumerable:!0,get:function get(){return l.SectionColumnsLimit}});var o=n(46105),a=n(43965),i=n(52359),u=n(93678),l=n(61339)},43965:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.InnerSectionColumns=void 0;var a=o(n(59396)),i=o(n(11959)),u=o(n(39041)),l=o(n(77371)),s=o(n(68537)),c=o(n(91706)),d=o(n(88738)),f=n(39872),p=function(e){(0,l.default)(InnerSectionColumns,e);var t=(0,s.default)(InnerSectionColumns);function InnerSectionColumns(){return(0,i.default)(this,InnerSectionColumns),t.apply(this,arguments)}return(0,u.default)(InnerSectionColumns,[{key:"getCommand",value:function getCommand(){return"document/elements/create"}},{key:"getId",value:function getId(){return"create-inner-section-columns"}},{key:"getContainerType",value:function getContainerType(){return"column"}},{key:"getConditions",value:function getConditions(e){return e.model.isInner&&!e.model.elements}},{key:"apply",value:function apply(e,t){var n=e.structure,r=void 0===n?"20":n,o=e.options,i=void 0===o?{}:o;(0,a.default)(t)||(t=[t]),d.default.createSectionColumns(t,f.DEFAULT_INNER_SECTION_COLUMNS,i,r)}}]),InnerSectionColumns}(c.default);t.InnerSectionColumns=p;var v=p;t.default=v},52359:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.IsValidChild=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(IsValidChild,e);var t=(0,l.default)(IsValidChild);function IsValidChild(){return(0,a.default)(this,IsValidChild),t.apply(this,arguments)}return(0,i.default)(IsValidChild,[{key:"getCommand",value:function getCommand(){return"document/elements/create"}},{key:"getId",value:function getId(){return"is-valid-child"}},{key:"apply",value:function apply(e){var t=e.containers,n=void 0===t?[e.container]:t,r=e.model,o=void 0===r?{}:r,a=new Backbone.Model(o);return n.some((function(e){return $e.components.get("document/elements").utils.isValidChild(a,e.model)}))}}]),IsValidChild}(o(n(52642)).default);t.IsValidChild=s;var c=s;t.default=c},61339:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.SectionColumnsLimit=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(SectionColumnsLimit,e);var t=(0,l.default)(SectionColumnsLimit);function SectionColumnsLimit(){return(0,a.default)(this,SectionColumnsLimit),t.apply(this,arguments)}return(0,i.default)(SectionColumnsLimit,[{key:"getCommand",value:function getCommand(){return"document/elements/create"}},{key:"getId",value:function getId(){return"section-columns-limit"}},{key:"getContainerType",value:function getContainerType(){return"section"}},{key:"apply",value:function apply(e){var t=e.containers;return!(void 0===t?[e.container]:t).some((function(e){return e.view.isCollectionFilled()}))}}]),SectionColumnsLimit}(o(n(52642)).default);t.SectionColumnsLimit=s;var c=s;t.default=c},93678:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.SectionColumns=void 0;var a=o(n(59396)),i=o(n(11959)),u=o(n(39041)),l=o(n(77371)),s=o(n(68537)),c=o(n(91706)),d=o(n(88738)),f=n(39872),p=function(e){(0,l.default)(SectionColumns,e);var t=(0,s.default)(SectionColumns);function SectionColumns(){return(0,i.default)(this,SectionColumns),t.apply(this,arguments)}return(0,u.default)(SectionColumns,[{key:"getCommand",value:function getCommand(){return"document/elements/create"}},{key:"getId",value:function getId(){return"create-section-columns"}},{key:"getContainerType",value:function getContainerType(){return"document"}},{key:"getConditions",value:function getConditions(e){return!e.model.elements}},{key:"apply",value:function apply(e,t){var n=e.structure,r=void 0!==n&&n,o=e.options,i=void 0===o?{}:o;(0,a.default)(t)||(t=[t]);var u=e.columns,l=void 0===u?1:u;e.model.isInner&&1===l&&(l=f.DEFAULT_INNER_SECTION_COLUMNS),d.default.createSectionColumns(t,l,i,r)}}]),SectionColumns}(c.default);t.SectionColumns=p;var v=p;t.default=v},51043:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.CreateColumnForEmptySection=void 0;var a=o(n(59396)),i=o(n(11959)),u=o(n(39041)),l=o(n(77371)),s=o(n(68537)),c=function(e){(0,l.default)(CreateColumnForEmptySection,e);var t=(0,s.default)(CreateColumnForEmptySection);function CreateColumnForEmptySection(){return(0,i.default)(this,CreateColumnForEmptySection),t.apply(this,arguments)}return(0,u.default)(CreateColumnForEmptySection,[{key:"getCommand",value:function getCommand(){return"document/elements/delete"}},{key:"getId",value:function getId(){return"create-column-for-empty-section--document/elements/delete"}},{key:"getContainerType",value:function getContainerType(){return"column"}},{key:"getConditions",value:function getConditions(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.containers,n=void 0===t?[e.container]:t;return n.some((function(e){return"section"===e.parent.type&&0===e.parent.children.length}))}},{key:"apply",value:function apply(e,t){(0,a.default)(t)||(t=[t]),t.forEach((function(e){var t=e.parent;0===t.children.length&&$e.run("document/elements/create",{container:t,model:{elType:"column"}})}))}}]),CreateColumnForEmptySection}(o(n(91706)).default);t.CreateColumnForEmptySection=c;var d=c;t.default=d},6868:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.DeleteColumnColumnsResetLayout=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(DeleteColumnColumnsResetLayout,e);var t=(0,l.default)(DeleteColumnColumnsResetLayout);function DeleteColumnColumnsResetLayout(){return(0,a.default)(this,DeleteColumnColumnsResetLayout),t.apply(this,arguments)}return(0,i.default)(DeleteColumnColumnsResetLayout,[{key:"getCommand",value:function getCommand(){return"document/elements/delete"}},{key:"getId",value:function getId(){return"section-columns-reset-layout--document/elements/delete"}},{key:"getContainerType",value:function getContainerType(){return"column"}}]),DeleteColumnColumnsResetLayout}(o(n(58135)).default);t.DeleteColumnColumnsResetLayout=s;var c=s;t.default=c},60212:(e,t,n)=>{"use strict";var r=n(67394);r(t,"__esModule",{value:!0}),r(t,"CreateColumnForEmptySection",{enumerable:!0,get:function get(){return o.CreateColumnForEmptySection}}),r(t,"DeleteColumnColumnsResetLayout",{enumerable:!0,get:function get(){return a.DeleteColumnColumnsResetLayout}});var o=n(51043),a=n(6868)},88738:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=void 0;var a=o(n(11959)),i=o(n(39041)),u=n(81682),l=function(){function Helper(){(0,a.default)(this,Helper)}return(0,i.default)(Helper,null,[{key:"createSectionColumns",value:function createSectionColumns(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]&&arguments[3];e.forEach((function(e){for(var r=0;r<t;r++){var o={id:elementorCommon.helpers.getUniqueId(),elType:"column",settings:{},elements:[]};e.view.addChildModel(o),$e.internal("document/history/log-sub-item",{container:e,type:"sub-add",restore:u.Create.restore,options:n,data:{containerToRestore:e,modelToRestore:o}})}})),r?e.forEach((function(e){e.view.setStructure(r,!1)})):t&&(e.forEach((function(e){return e.view.resetLayout()})),e[e.length-1].model.trigger("request:edit"))}}]),Helper}();t.default=l},15464:(e,t,n)=>{"use strict";var r=n(67394);r(t,"__esModule",{value:!0}),r(t,"SectionColumnsSetStructure",{enumerable:!0,get:function get(){return o.SectionColumnsSetStructure}});var o=n(70401)},70401:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.SectionColumnsSetStructure=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(SectionColumnsSetStructure,e);var t=(0,l.default)(SectionColumnsSetStructure);function SectionColumnsSetStructure(){return(0,a.default)(this,SectionColumnsSetStructure),t.apply(this,arguments)}return(0,i.default)(SectionColumnsSetStructure,[{key:"getCommand",value:function getCommand(){return"document/elements/move"}},{key:"getId",value:function getId(){return"section-columns-set-structure"}},{key:"getContainerType",value:function getContainerType(){return"column"}},{key:"getConditions",value:function getConditions(e){var t=e.containers,n=void 0===t?[e.container]:t,r=e.target;return n.some((function(e){return e.parent!==r}))}},{key:"apply",value:function apply(e){var t=e.containers,n=void 0===t?[e.container]:t,r=e.target;return n.forEach((function(e){return e.parent.view.resetLayout()})),r.view.resetLayout(),!0}}]),SectionColumnsSetStructure}(o(n(91706)).default);t.SectionColumnsSetStructure=s;var c=s;t.default=c},30607:(e,t,n)=>{"use strict";var r=n(67394);r(t,"__esModule",{value:!0}),r(t,"IsPasteEnabled",{enumerable:!0,get:function get(){return o.IsPasteEnabled}});var o=n(53468)},53468:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.IsPasteEnabled=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(IsPasteEnabled,e);var t=(0,l.default)(IsPasteEnabled);function IsPasteEnabled(){return(0,a.default)(this,IsPasteEnabled),t.apply(this,arguments)}return(0,i.default)(IsPasteEnabled,[{key:"getCommand",value:function getCommand(){return"document/elements/paste"}},{key:"getId",value:function getId(){return"is-paste-enabled"}},{key:"getConditions",value:function getConditions(e){return!e.rebuild}},{key:"apply",value:function apply(e){var t=e.containers;return(void 0===t?[e.container]:t).some((function(e){return $e.components.get("document/elements").utils.isPasteEnabled(e)}))}}]),IsPasteEnabled}(o(n(52642)).default);t.IsPasteEnabled=s;var c=s;t.default=c},57570:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.HandleDynamic=void 0;var a=o(n(18042)),i=o(n(11959)),u=o(n(39041)),l=o(n(77371)),s=o(n(68537)),c=function(e){(0,l.default)(HandleDynamic,e);var t=(0,s.default)(HandleDynamic);function HandleDynamic(){return(0,i.default)(this,HandleDynamic),t.apply(this,arguments)}return(0,u.default)(HandleDynamic,[{key:"getCommand",value:function getCommand(){return"document/elements/settings"}},{key:"getId",value:function getId(){return"handle-dynamic"}},{key:"getContainerType",value:function getContainerType(){return"dynamic"}},{key:"getConditions",value:function getConditions(e){var t=e.containers;return(void 0===t?[e.container]:t).some((function(e){return"dynamic"===e.type}))}},{key:"apply",value:function apply(e){var t=e.containers;return(void 0===t?[e.container]:t).forEach((function(e){if("dynamic"===e.type){var t=elementor.dynamicTags.tagContainerToTagText(e),n={container:e.parent,settings:(0,a.default)({},e.view.options.controlName,t)};$e.run("document/dynamic/settings",n)}})),!0}}]),HandleDynamic}(o(n(91706)).default);t.HandleDynamic=c;var d=c;t.default=d},1364:(e,t,n)=>{"use strict";var r=n(67394);r(t,"__esModule",{value:!0}),r(t,"HandleDynamic",{enumerable:!0,get:function get(){return o.HandleDynamic}}),r(t,"ResizeColumn",{enumerable:!0,get:function get(){return a.ResizeColumn}}),r(t,"ResizeColumnLimit",{enumerable:!0,get:function get(){return i.ResizeColumnLimit}}),r(t,"SetStructure",{enumerable:!0,get:function get(){return u.SetStructure}});var o=n(57570),a=n(1540),i=n(19744),u=n(78154)},19744:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.ResizeColumnLimit=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=o(n(52642)),c=n(39872),d=function(e){(0,u.default)(ResizeColumnLimit,e);var t=(0,l.default)(ResizeColumnLimit);function ResizeColumnLimit(){return(0,a.default)(this,ResizeColumnLimit),t.apply(this,arguments)}return(0,i.default)(ResizeColumnLimit,[{key:"getCommand",value:function getCommand(){return"document/elements/settings"}},{key:"getId",value:function getId(){return"resize-column-limit"}},{key:"getContainerType",value:function getContainerType(){return"column"}},{key:"getConditions",value:function getConditions(e){return e.settings._inline_size}},{key:"apply",value:function apply(e){var t=e.containers;return(void 0===t?[e.container]:t).some((function(t){var n=t.parent.view,r=t.view,o=t.settings.get("_inline_size")||t.settings.get("_column_size"),a=e.settings._inline_size,i=n.getNextColumn(r)||n.getPreviousColumn(r);if(!i)return $e.devTools&&$e.devTools.log.error("There is not any next column"),!1;var u=i.$el;return+(o+(+i.model.getSetting("_inline_size")||n.getColumnPercentSize(u,u[0].getBoundingClientRect().width))-a).toFixed(3)<c.DEFAULT_INNER_SECTION_COLUMNS?($e.devTools&&$e.devTools.log.error("New column width is too large"),!1):!(a<c.DEFAULT_INNER_SECTION_COLUMNS)||($e.devTools&&$e.devTools.log.error("New column width is too small"),!1)}))}}]),ResizeColumnLimit}(s.default);t.ResizeColumnLimit=d;var f=d;t.default=f},1540:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.ResizeColumn=void 0,n(71954);var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(ResizeColumn,e);var t=(0,l.default)(ResizeColumn);function ResizeColumn(){return(0,a.default)(this,ResizeColumn),t.apply(this,arguments)}return(0,i.default)(ResizeColumn,[{key:"getCommand",value:function getCommand(){return"document/elements/settings"}},{key:"getId",value:function getId(){return"resize-column"}},{key:"getContainerType",value:function getContainerType(){return"column"}},{key:"getConditions",value:function getConditions(e){return e.settings._inline_size}},{key:"apply",value:function apply(e){var t=this,n=e.containers;return(void 0===n?[e.container]:n).forEach((function(n){t.resizeColumn(n,e.settings._inline_size)})),!0}},{key:"resizeColumn",value:function resizeColumn(e,t){var n=e.parent.view.getNeighborContainer(e);if(!n)return!1;var r=e.parent.view,o=e.view,a=null;if(void 0===e.oldValues||null===e.oldValues._inline_size)a=e.settings.get("_column_size");else{var i=r.$el.find(" > .elementor-container")[0].getBoundingClientRect().width;a=+(e.oldValues._inline_size||o.el.getBoundingClientRect().width/i*100)}var u=n.view,l=u.$el,s=+(a+(+u.model.getSetting("_inline_size")||e.parent.view.getColumnPercentSize(l,l[0].getBoundingClientRect().width))-t).toFixed(3);return $e.run("document/elements/settings",{containers:[n],settings:{_inline_size:s},options:{callbacks:{"resize-column-limit":!1},history:{title:elementor.config.elements.column.controls._inline_size.label},external:!0,debounce:!0}}),!0}}]),ResizeColumn}(o(n(91706)).default);t.ResizeColumn=s;var c=s;t.default=c},78154:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.SetStructure=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(SetStructure,e);var t=(0,l.default)(SetStructure);function SetStructure(){return(0,a.default)(this,SetStructure),t.apply(this,arguments)}return(0,i.default)(SetStructure,[{key:"getCommand",value:function getCommand(){return"document/elements/settings"}},{key:"getId",value:function getId(){return"set-structure"}},{key:"getContainerType",value:function getContainerType(){return"section"}},{key:"getConditions",value:function getConditions(e){return!!e.settings.structure}},{key:"apply",value:function apply(e){var t=e.containers;return(void 0===t?[e.container]:t).forEach((function(e){e.view.adjustColumns()})),!0}}]),SetStructure}(o(n(91706)).default);t.SetStructure=s;var c=s;t.default=c},95460:(e,t,n)=>{"use strict";var r=n(67394),o=n(83452);r(t,"__esModule",{value:!0});var a=n(8372);o(a).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===a[e]||r(t,e,{enumerable:!0,get:function get(){return a[e]}}))}));var i=n(60212);o(i).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===i[e]||r(t,e,{enumerable:!0,get:function get(){return i[e]}}))}));var u=n(15464);o(u).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===u[e]||r(t,e,{enumerable:!0,get:function get(){return u[e]}}))}));var l=n(30607);o(l).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===l[e]||r(t,e,{enumerable:!0,get:function get(){return l[e]}}))}));var s=n(1364);o(s).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===s[e]||r(t,e,{enumerable:!0,get:function get(){return s[e]}}))}))},63916:(e,t,n)=>{"use strict";var r=n(67394),o=n(83452);r(t,"__esModule",{value:!0});var a=n(95460);o(a).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===a[e]||r(t,e,{enumerable:!0,get:function get(){return a[e]}}))}));var i=n(71363);o(i).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===i[e]||r(t,e,{enumerable:!0,get:function get(){return i[e]}}))}))},80461:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.ColumnIsPopulated=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(ColumnIsPopulated,e);var t=(0,l.default)(ColumnIsPopulated);function ColumnIsPopulated(){return(0,a.default)(this,ColumnIsPopulated),t.apply(this,arguments)}return(0,i.default)(ColumnIsPopulated,[{key:"getCommand",value:function getCommand(){return"document/elements/create"}},{key:"getId",value:function getId(){return"column-is-populated"}},{key:"getConditions",value:function getConditions(e){var t=e.containers;return(void 0===t?[e.container]:t).some((function(e){return"column"===e.model.get("elType")}))}},{key:"apply",value:function apply(e){var t=e.containers;(void 0===t?[e.container]:t).forEach((function(e){"column"===e.model.get("elType")&&e.view.changeChildContainerClasses()}))}}]),ColumnIsPopulated}(o(n(57061)).default);t.ColumnIsPopulated=s;var c=s;t.default=c},89959:(e,t,n)=>{"use strict";var r=n(67394);r(t,"__esModule",{value:!0}),r(t,"ColumnIsPopulated",{enumerable:!0,get:function get(){return o.ColumnIsPopulated}}),r(t,"CreateSectionIsFull",{enumerable:!0,get:function get(){return a.CreateSectionIsFull}});var o=n(80461),a=n(90736)},90736:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.CreateSectionIsFull=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(CreateSectionIsFull,e);var t=(0,l.default)(CreateSectionIsFull);function CreateSectionIsFull(){return(0,a.default)(this,CreateSectionIsFull),t.apply(this,arguments)}return(0,i.default)(CreateSectionIsFull,[{key:"getCommand",value:function getCommand(){return"document/elements/create"}},{key:"getId",value:function getId(){return"create-section-is-full"}},{key:"getConditions",value:function getConditions(e){var t=e.containers;return(void 0===t?[e.container]:t).some((function(e){return"section"===e.model.get("elType")}))}},{key:"apply",value:function apply(e){var t=e.containers;(void 0===t?[e.container]:t).forEach((function(e){"section"===e.model.get("elType")&&e.view.toggleSectionIsFull()}))}}]),CreateSectionIsFull}(o(n(57061)).default);t.CreateSectionIsFull=s;var c=s;t.default=c},35736:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.ColumnIsEmpty=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(ColumnIsEmpty,e);var t=(0,l.default)(ColumnIsEmpty);function ColumnIsEmpty(){return(0,a.default)(this,ColumnIsEmpty),t.apply(this,arguments)}return(0,i.default)(ColumnIsEmpty,[{key:"getCommand",value:function getCommand(){return"document/elements/delete"}},{key:"getId",value:function getId(){return"column-is-empty"}},{key:"getConditions",value:function getConditions(e){var t=e.containers;return(void 0===t?[e.container]:t).some((function(e){return"column"===e.parent.model.get("elType")}))}},{key:"apply",value:function apply(e){var t=e.containers;(void 0===t?[e.container]:t).forEach((function(e){"column"===e.parent.model.get("elType")&&e.parent.view.changeChildContainerClasses()}))}}]),ColumnIsEmpty}(o(n(57061)).default);t.ColumnIsEmpty=s;var c=s;t.default=c},69298:(e,t,n)=>{"use strict";var r=n(67394);r(t,"__esModule",{value:!0}),r(t,"ColumnIsEmpty",{enumerable:!0,get:function get(){return o.ColumnIsEmpty}}),r(t,"DeleteSectionIsFull",{enumerable:!0,get:function get(){return a.DeleteSectionIsFull}});var o=n(35736),a=n(35550)},35550:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.DeleteSectionIsFull=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(DeleteSectionIsFull,e);var t=(0,l.default)(DeleteSectionIsFull);function DeleteSectionIsFull(){return(0,a.default)(this,DeleteSectionIsFull),t.apply(this,arguments)}return(0,i.default)(DeleteSectionIsFull,[{key:"getCommand",value:function getCommand(){return"document/elements/delete"}},{key:"getId",value:function getId(){return"delete-section-is-full"}},{key:"getConditions",value:function getConditions(e){var t=e.containers;return(void 0===t?[e.container]:t).some((function(e){return"column"===e.model.get("elType")}))}},{key:"apply",value:function apply(e){var t=e.containers;(void 0===t?[e.container]:t).forEach((function(e){"column"===e.model.get("elType")&&e.parent.view.toggleSectionIsFull()}))}}]),DeleteSectionIsFull}(o(n(57061)).default);t.DeleteSectionIsFull=s;var c=s;t.default=c},71363:(e,t,n)=>{"use strict";var r=n(67394),o=n(83452);r(t,"__esModule",{value:!0});var a=n(89959);o(a).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===a[e]||r(t,e,{enumerable:!0,get:function get(){return a[e]}}))}));var i=n(69298);o(i).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===i[e]||r(t,e,{enumerable:!0,get:function get(){return i[e]}}))}));var u=n(54464);o(u).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===u[e]||r(t,e,{enumerable:!0,get:function get(){return u[e]}}))}))},18386:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.ChangePostTitle=void 0,n(71954);var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(ChangePostTitle,e);var t=(0,l.default)(ChangePostTitle);function ChangePostTitle(){return(0,a.default)(this,ChangePostTitle),t.apply(this,arguments)}return(0,i.default)(ChangePostTitle,[{key:"getCommand",value:function getCommand(){return"document/elements/settings"}},{key:"getId",value:function getId(){return"change-post-title"}},{key:"getContainerType",value:function getContainerType(){return"document"}},{key:"getConditions",value:function getConditions(e){return void 0!==e.settings.post_title}},{key:"apply",value:function apply(e){elementorFrontend.elements.$document.find(elementor.config.page_title_selector).text(e.settings.post_title)}}]),ChangePostTitle}(o(n(57061)).default);t.ChangePostTitle=s;var c=s;t.default=c},61439:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.ColumnChangeSize=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(ColumnChangeSize,e);var t=(0,l.default)(ColumnChangeSize);function ColumnChangeSize(){return(0,a.default)(this,ColumnChangeSize),t.apply(this,arguments)}return(0,i.default)(ColumnChangeSize,[{key:"getCommand",value:function getCommand(){return"document/elements/settings"}},{key:"getId",value:function getId(){return"column-change-size"}},{key:"getConditions",value:function getConditions(e){return void 0!==e.settings._inline_size||void 0!==e.settings._column_size}},{key:"apply",value:function apply(e){var t=e.containers;(void 0===t?[e.container]:t).forEach((function(e){e.view.changeSizeUI()}))}}]),ColumnChangeSize}(o(n(57061)).default);t.ColumnChangeSize=s;var c=s;t.default=c},17005:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.Draggable=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(Draggable,e);var t=(0,l.default)(Draggable);function Draggable(){return(0,a.default)(this,Draggable),t.apply(this,arguments)}return(0,i.default)(Draggable,[{key:"getCommand",value:function getCommand(){return"document/elements/settings"}},{key:"getId",value:function getId(){return"draggable"}},{key:"getConditions",value:function getConditions(e){return void 0!==e.settings._position}},{key:"apply",value:function apply(e){var t=e.containers;(void 0===t?[e.container]:t).forEach((function(e){e.view.options.draggable&&e.view.options.draggable.toggle()}))}}]),Draggable}(o(n(57061)).default);t.Draggable=s;var c=s;t.default=c},54464:(e,t,n)=>{"use strict";var r=n(67394);r(t,"__esModule",{value:!0}),r(t,"ChangePostTitle",{enumerable:!0,get:function get(){return o.ChangePostTitle}}),r(t,"ColumnChangeSize",{enumerable:!0,get:function get(){return a.ColumnChangeSize}}),r(t,"Draggable",{enumerable:!0,get:function get(){return i.Draggable}}),r(t,"Resizeable",{enumerable:!0,get:function get(){return u.Resizeable}}),r(t,"ReloadPreview",{enumerable:!0,get:function get(){return l.ReloadPreview}});var o=n(18386),a=n(61439),i=n(17005),u=n(70370),l=n(82519)},82519:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.ReloadPreview=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(ReloadPreview,e);var t=(0,l.default)(ReloadPreview);function ReloadPreview(){return(0,a.default)(this,ReloadPreview),t.apply(this,arguments)}return(0,i.default)(ReloadPreview,[{key:"getCommand",value:function getCommand(){return"document/elements/settings"}},{key:"getId",value:function getId(){return"save-layout"}},{key:"getContainerType",value:function getContainerType(){return"document"}},{key:"getConditions",value:function getConditions(e){return!!e.settings.template}},{key:"apply",value:function apply(){return $e.run("document/save/auto",{force:!0}).then((function(){elementor.reloadPreview(),elementor.once("preview:loaded",(function(){$e.route("panel/page-settings/settings")}))}))}}]),ReloadPreview}(o(n(57061)).default);t.ReloadPreview=s},70370:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.Resizeable=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(Resizeable,e);var t=(0,l.default)(Resizeable);function Resizeable(){return(0,a.default)(this,Resizeable),t.apply(this,arguments)}return(0,i.default)(Resizeable,[{key:"getCommand",value:function getCommand(){return"document/elements/settings"}},{key:"getId",value:function getId(){return"resizeable"}},{key:"getConditions",value:function getConditions(e){return void 0!==e.settings._position||void 0!==e.settings._element_width}},{key:"apply",value:function apply(e){var t=e.containers;(void 0===t?[e.container]:t).forEach((function(e){e.view.options.resizeable&&e.view.options.resizeable.toggle()}))}}]),Resizeable}(o(n(57061)).default);t.Resizeable=s;var c=s;t.default=c},24475:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),r(t,"DynamicComponent",{enumerable:!0,get:function get(){return a.default}}),r(t,"ElementsComponent",{enumerable:!0,get:function get(){return i.default}}),r(t,"GlobalsComponent",{enumerable:!0,get:function get(){return u.default}}),r(t,"HistoryComponent",{enumerable:!0,get:function get(){return l.default}}),r(t,"RepeaterComponent",{enumerable:!0,get:function get(){return s.default}}),r(t,"SaveComponent",{enumerable:!0,get:function get(){return c.default}}),r(t,"UIComponent",{enumerable:!0,get:function get(){return d.default}});var a=o(n(82203)),i=o(n(37583)),u=o(n(92787)),l=o(n(76710)),s=o(n(26746)),c=o(n(49884)),d=o(n(14138))},58576:(e,t,n)=>{"use strict";var r=n(18194).__,o=n(67394),a=n(67971);o(t,"__esModule",{value:!0}),t.default=t.Duplicate=void 0;var i=a(n(15149));n(99745);var u=a(n(11959)),l=a(n(39041)),s=a(n(77371)),c=a(n(68537)),d=function(e){(0,s.default)(Duplicate,e);var t=(0,c.default)(Duplicate);function Duplicate(){return(0,u.default)(this,Duplicate),t.apply(this,arguments)}return(0,l.default)(Duplicate,[{key:"validateArgs",value:function validateArgs(e){this.requireContainer(e),this.requireArgumentType("name","string",e),this.requireArgumentType("index","number",e)}},{key:"getHistory",value:function getHistory(e){var t=e.containers;return{containers:void 0===t?[e.container]:t,type:"duplicate",subTitle:r("Item","elementor")}}},{key:"apply",value:function apply(e){var t=e.index,n=e.name,r=e.options,o=void 0===r?{}:r,a=e.containers,u=void 0===a?[e.container]:a,l=[];return u.forEach((function(e){var r=e.settings.get(n).at(t).toJSON();r._id&&delete r._id,l.push($e.run("document/repeater/insert",{container:e,name:n,model:r,options:(0,i.default)({at:t+1},o)}))})),1===l.length?l[0]:l}}]),Duplicate}(a(n(78627)).default);t.Duplicate=d;var f=d;t.default=f},40568:(e,t,n)=>{"use strict";var r=n(67394);r(t,"__esModule",{value:!0}),r(t,"Duplicate",{enumerable:!0,get:function get(){return o.Duplicate}}),r(t,"Insert",{enumerable:!0,get:function get(){return a.Insert}}),r(t,"Move",{enumerable:!0,get:function get(){return i.Move}}),r(t,"Remove",{enumerable:!0,get:function get(){return u.Remove}});var o=n(58576),a=n(43210),i=n(47045),u=n(8810)},43210:(e,t,n)=>{"use strict";var r=n(18194).__,o=n(67394),a=n(67971);o(t,"__esModule",{value:!0}),t.default=t.Insert=void 0,n(99745);var i=a(n(11959)),u=a(n(39041)),l=a(n(76700)),s=a(n(44263)),c=a(n(77371)),d=a(n(68537)),f=function(e){(0,c.default)(Insert,e);var t=(0,d.default)(Insert);function Insert(){return(0,i.default)(this,Insert),t.apply(this,arguments)}return(0,u.default)(Insert,[{key:"initialize",value:function initialize(e){(0,l.default)((0,s.default)(Insert.prototype),"initialize",this).call(this,e),e.model._id||(e.model._id=elementorCommon.helpers.getUniqueId())}},{key:"validateArgs",value:function validateArgs(e){this.requireContainer(e),this.requireArgumentType("model","object",e),this.requireArgumentConstructor("name",String,e)}},{key:"getHistory",value:function getHistory(e){var t=e.model,n=e.name,o=e.options,a=void 0===o?{at:null}:o,i=e.containers;return{containers:void 0===i?[e.container]:i,type:"add",subTitle:r("Item","elementor"),data:{model:t,name:n,index:a.at},restore:this.constructor.restore}}},{key:"isDataChanged",value:function isDataChanged(){return!0}},{key:"apply",value:function apply(e){var t=e.model,n=e.name,r=e.options,o=void 0===r?{at:null}:r,a=e.containers,i=void 0===a?[e.container]:a,u=[];return i.forEach((function(e){var r=(e=e.lookup()).settings.get(n);o.at=null===o.at?r.length:o.at;var a=r._prepareModel(t),i=e.addRepeaterItem(n,a,o.at);u.push(r.push(a,o)),i.render()})),1===u.length?u[0]:u}}],[{key:"restore",value:function restore(e,t){var n=e.get("containers"),r=e.get("data");t?$e.run("document/repeater/insert",{containers:n,model:r.model,name:r.name,options:{at:r.index}}):$e.run("document/repeater/remove",{containers:n,name:r.name,index:r.index})}}]),Insert}(a(n(78627)).default);t.Insert=f;var p=f;t.default=p},47045:(e,t,n)=>{"use strict";var r=n(18194).__,o=n(67394),a=n(67971);o(t,"__esModule",{value:!0}),t.default=t.Move=void 0,n(99745);var i=a(n(11959)),u=a(n(39041)),l=a(n(77371)),s=a(n(68537)),c=function(e){(0,l.default)(Move,e);var t=(0,s.default)(Move);function Move(){return(0,i.default)(this,Move),t.apply(this,arguments)}return(0,u.default)(Move,[{key:"validateArgs",value:function validateArgs(e){this.requireContainer(e),this.requireArgumentType("name","string",e),this.requireArgumentType("sourceIndex","number",e),this.requireArgumentType("targetIndex","number",e)}},{key:"getHistory",value:function getHistory(e){var t=e.containers;return{containers:void 0===t?[e.container]:t,type:"move",subTitle:r("Item","elementor")}}},{key:"apply",value:function apply(e){var t=e.sourceIndex,n=e.targetIndex,r=e.name,o=e.containers,a=void 0===o?[e.container]:o,i=[];return a.forEach((function(e){var o=e.settings.get(r),a=elementorCommon.helpers.cloneObject(o.at(t));$e.run("document/repeater/remove",{container:e,name:r,index:t}),i.push($e.run("document/repeater/insert",{container:e,name:r,model:a,options:{at:n}}))})),1===i.length?i[0]:i}}]),Move}(a(n(78627)).default);t.Move=c;var d=c;t.default=d},8810:(e,t,n)=>{"use strict";var r=n(18194).__,o=n(67394),a=n(67971);o(t,"__esModule",{value:!0}),t.default=t.Remove=void 0,n(99745);var i=a(n(11959)),u=a(n(39041)),l=a(n(77371)),s=a(n(68537)),c=function(e){(0,l.default)(Remove,e);var t=(0,s.default)(Remove);function Remove(){return(0,i.default)(this,Remove),t.apply(this,arguments)}return(0,u.default)(Remove,[{key:"validateArgs",value:function validateArgs(e){this.requireContainer(e),this.requireArgumentType("name","string",e),this.requireArgument("index",e)}},{key:"getHistory",value:function getHistory(e){var t=e.containers;return{containers:void 0===t?[e.container]:t,type:"remove",subTitle:r("Item","elementor")}}},{key:"isDataChanged",value:function isDataChanged(){return!0}},{key:"apply",value:function apply(e){var t=this,n=e.name,r=e.containers,o=void 0===r?[e.container]:r,a=null===e.index?-1:e.index,i=[];return o.forEach((function(e){var r=(e=e.lookup()).settings.get(n),o=r.at(a),u=e.repeaters[n];t.isHistoryActive()&&$e.internal("document/history/log-sub-item",{container:e,data:{name:n,model:o,index:a},restore:t.constructor.restore}),i.push(u.children.splice(a,1)),r.remove(o),u.render()})),1===i.length?i[0]:i}}],[{key:"restore",value:function restore(e,t){var n=e.get("data"),r=e.get("container");t?$e.run("document/repeater/remove",{container:r,name:n.name,index:n.index}):$e.run("document/repeater/insert",{container:r,model:n.model,name:n.name,options:{at:n.index}})}}]),Remove}(a(n(78627)).default);t.Remove=c;var d=c;t.default=d},26746:(e,t,n)=>{"use strict";var r=n(67394),o=n(52369),a=n(67971);r(t,"__esModule",{value:!0}),t.default=void 0;var i=a(n(11959)),u=a(n(39041)),l=a(n(77371)),s=a(n(68537)),c=a(n(15591)),d=o(n(40568)),f=function(e){(0,l.default)(Component,e);var t=(0,s.default)(Component);function Component(){return(0,i.default)(this,Component),t.apply(this,arguments)}return(0,u.default)(Component,[{key:"getNamespace",value:function getNamespace(){return"document/repeater"}},{key:"defaultCommands",value:function defaultCommands(){return this.importCommands(d)}}]),Component}(c.default);t.default=f},70608:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=void 0;var a=o(n(67394)),i=o(n(11959)),u=o(n(39041)),l=o(n(76700)),s=o(n(44263)),c=o(n(77371)),d=o(n(68537)),f=function(e){(0,c.default)(BackwardsCompatibility,e);var t=(0,d.default)(BackwardsCompatibility);function BackwardsCompatibility(){return(0,i.default)(this,BackwardsCompatibility),t.apply(this,arguments)}return(0,u.default)(BackwardsCompatibility,[{key:"__construct",value:function __construct(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,l.default)((0,s.default)(BackwardsCompatibility.prototype),"__construct",this).call(this,e),(0,a.default)(this,"autoSaveTimer",{get:function get(){return elementorCommon.helpers.softDeprecated("elementor.saver.autoSaveTimer","2.9.0","$e.components.get( 'editor/documents' ).autoSaveTimers"),$e.components.get("editor/documents").autoSaveTimers},set:function set(e){elementorCommon.helpers.softDeprecated("elementor.saver.autoSaveTimer","2.9.0","$e.components.get( 'editor/documents' ).autoSaveTimers[ documentId ]");var t=elementor.documents.getCurrent();$e.components.get("editor/documents").autoSaveTimers[t]=e}});var t=this.on;this.on=function(e,n,r){elementorCommon.helpers.softDeprecated("elementor.saver.on","2.9.0","$e.hooks"),t(e,n,r)},elementor.on("document:loaded",(function(){elementor.channels.editor._events&&elementor.channels.editor._events.saved&&elementorCommon.helpers.softDeprecated("elementor.channels.editor.on( 'saved', ... )","2.9.0","$e.hooks")}))}},{key:"defaultSave",value:function defaultSave(){return elementorCommon.helpers.softDeprecated("defaultSave","2.9.0","$e.run( 'document/save/default' )"),$e.run("document/save/default")}},{key:"discard",value:function discard(){return elementorCommon.helpers.softDeprecated("discard","2.9.0","$e.run( 'document/save/discard' )"),$e.run("document/save/discard")}},{key:"doAutoSave",value:function doAutoSave(){return elementorCommon.helpers.softDeprecated("doAutoSave","2.9.0","$e.run( 'document/save/auto' )"),$e.run("document/save/auto")}},{key:"publish",value:function publish(e){return elementorCommon.helpers.softDeprecated("publish","2.9.0","$e.run( 'document/save/publish' )"),$e.run("document/save/auto",{options:e})}},{key:"saveAutoSave",value:function saveAutoSave(e){return elementorCommon.helpers.softDeprecated("saveAutoSave","2.9.0","$e.run( 'document/save/auto', { force: true } )"),e.force=!0,$e.run("document/save/auto",e)}},{key:"saveDraft",value:function saveDraft(){return elementorCommon.helpers.softDeprecated("saveDraft","2.9.0","$e.run( 'document/save/draft' )"),$e.run("document/save/draft")}},{key:"savePending",value:function savePending(){return elementorCommon.helpers.softDeprecated("savePending","2.9.0","$e.run( 'document/save/pending' )"),$e.run("document/save/pending")}},{key:"update",value:function update(e){return elementorCommon.helpers.softDeprecated("update","2.9.0","$e.run( 'document/save/update' )"),$e.run("document/save/update",e)}},{key:"startTimer",value:function startTimer(){throw elementorCommon.helpers.softDeprecated("startTimer","2.9.0","$e.components.get( 'document/save' ).startAutoSave"),Error("Deprecated")}},{key:"saveEditor",value:function saveEditor(e){elementorCommon.helpers.softDeprecated("saveEditor","2.9.0","$e.internal( 'document/save/save' )"),$e.internal("document/save/save",e)}},{key:"setFlagEditorChange",value:function setFlagEditorChange(e){elementorCommon.helpers.softDeprecated("setFlagEditorChange","2.9.0","$e.internal( 'document/save/set-is-modified' )"),$e.internal("document/save/set-is-modified",{status:e})}}]),BackwardsCompatibility}(o(n(15591)).default);t.default=f},8466:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.Auto=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(Auto,e);var t=(0,l.default)(Auto);function Auto(){return(0,a.default)(this,Auto),t.apply(this,arguments)}return(0,i.default)(Auto,[{key:"apply",value:function apply(e){var t=e.force,n=void 0!==t&&t,r=e.document,o=void 0===r?this.document:r;return n||o.container.isEditable()?o.editor.isChanged?(e.status="autosave",e.document=o,$e.internal("document/save/save",e)):jQuery.Deferred().resolve("Document is not changed"):jQuery.Deferred().reject("Document is not editable")}}]),Auto}(o(n(61045)).default);t.Auto=s;var c=s;t.default=c},61045:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(76700)),l=o(n(44263)),s=o(n(77371)),c=o(n(68537)),d=function(e){(0,s.default)(Base,e);var t=(0,c.default)(Base);function Base(){return(0,a.default)(this,Base),t.apply(this,arguments)}return(0,i.default)(Base,[{key:"initialize",value:function initialize(e){(0,u.default)((0,l.default)(Base.prototype),"initialize",this).call(this,e);var t=e.document,n=void 0===t?elementor.documents.getCurrent():t;this.document=n}}]),Base}(o(n(68689)).default);t.default=d},1757:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.Default=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(Default,e);var t=(0,l.default)(Default);function Default(){return(0,a.default)(this,Default),t.apply(this,arguments)}return(0,i.default)(Default,[{key:"apply",value:function apply(){var e,t=this.document;switch(t.container.settings.get("post_status")){case"publish":case"future":case"private":e=$e.run("document/save/update",{document:t});break;case"draft":e=t.config.user.can_publish?$e.run("document/save/publish",{document:t}):$e.run("document/save/pending",{document:t});break;case"pending":case void 0:e=t.config.user.can_publish?$e.run("document/save/publish",{document:t}):$e.run("document/save/update",{document:t})}return e}}]),Default}(o(n(61045)).default);t.Default=s;var c=s;t.default=c},78730:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.Discard=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(Discard,e);var t=(0,l.default)(Discard);function Discard(){return(0,a.default)(this,Discard),t.apply(this,arguments)}return(0,i.default)(Discard,[{key:"apply",value:function apply(e){var t=e.document,n=void 0===t?elementor.documents.getCurrent():t,r=elementorCommon.ajax.addRequest("discard_changes");return $e.run("document/history/undo-all",{document:n}),r}}]),Discard}(o(n(61045)).default);t.Discard=s;var c=s;t.default=c},22009:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.Draft=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(Draft,e);var t=(0,l.default)(Draft);function Draft(){return(0,a.default)(this,Draft),t.apply(this,arguments)}return(0,i.default)(Draft,[{key:"apply",value:function apply(){var e,t=this.document,n=t.container.settings.get("post_status");if(!t.editor.isChanged&&"draft"!==n)return jQuery.Deferred().reject("Document is not editable");switch(n){case"publish":case"private":e=$e.run("document/save/auto",{document:t});break;default:e=$e.run("document/save/update",{document:t})}return e}}]),Draft}(o(n(61045)).default);t.Draft=s;var c=s;t.default=c},52623:(e,t,n)=>{"use strict";var r=n(67394);r(t,"__esModule",{value:!0}),r(t,"Auto",{enumerable:!0,get:function get(){return o.Auto}}),r(t,"Default",{enumerable:!0,get:function get(){return a.Default}}),r(t,"Discard",{enumerable:!0,get:function get(){return i.Discard}}),r(t,"Draft",{enumerable:!0,get:function get(){return u.Draft}}),r(t,"Pending",{enumerable:!0,get:function get(){return l.Pending}}),r(t,"Publish",{enumerable:!0,get:function get(){return s.Publish}}),r(t,"Update",{enumerable:!0,get:function get(){return c.Update}});var o=n(8466),a=n(1757),i=n(78730),u=n(22009),l=n(73904),s=n(32732),c=n(10461)},45615:(e,t,n)=>{"use strict";var r=n(67394);r(t,"__esModule",{value:!0}),r(t,"Save",{enumerable:!0,get:function get(){return o.Save}}),r(t,"SetIsModified",{enumerable:!0,get:function get(){return a.SetIsModified}});var o=n(52557),a=n(54970)},52557:(e,t,n)=>{"use strict";var r=n(18194).__,o=n(67394),a=n(67971);o(t,"__esModule",{value:!0}),t.default=t.Save=void 0;var i=a(n(11959)),u=a(n(39041)),l=a(n(77371)),s=a(n(68537)),c=function(e){(0,l.default)(Save,e);var t=(0,s.default)(Save);function Save(){return(0,i.default)(this,Save),t.apply(this,arguments)}return(0,u.default)(Save,[{key:"apply",value:function apply(e){var t=this,n=e.status,r=void 0===n?"draft":n,o=e.force,a=void 0!==o&&o,i=e.onSuccess,u=void 0===i?null:i,l=e.document,s=void 0===l?elementor.documents.getCurrent():l;if(!a&&s.editor.isSaving)return jQuery.Deferred().reject("Document already in save progress");var c=s.container,d=c.settings.toJSON({remove:["default"]}),f=c.settings.get("post_status");elementor.saver.trigger("before:save",e).trigger("before:save:"+r,e),s.editor.isSaving=!0,s.editor.isChangedDuringSave=!1,d.post_status=r;var p=[];elementor.config.document.panel.has_elements&&(p=c.model.get("elements").toJSON({remove:["default","editSettings","defaultEditSettings"]}));var v={status:r,oldStatus:f,elements:p,document:s,currentHistoryId:s.history.currentItem.get("id")},m=elementorCommon.ajax.addRequest("save_builder",{data:{status:r,elements:p,settings:d},error:function error(e){return t.onSaveError(e,r,s)}}).then((function(e){return t.onSaveSuccess(e,v,u)}));return elementor.saver.trigger("save",e),m}},{key:"onSaveSuccess",value:function onSaveSuccess(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=t.status,o=t.oldStatus,a=t.elements,i=t.document,u=t.currentHistoryId;this.onAfterAjax(i),i.editor.lastSaveHistoryId=u,elementor.documents.invalidateCache(i.id);var l=r!==o,s={data:e,statusChanged:l};return i!==elementor.documents.getCurrent()||(i.editor.isChangedDuringSave||(i.editor.isSaved=!0),"autosave"!==r&&(l&&$e.run("document/elements/settings",{container:elementor.settings.page.getEditedView().getContainer(),settings:{post_status:r},options:{external:!0}}),i.editor.isChangedDuringSave||$e.internal("document/save/set-is-modified",{status:!1})),e.config&&jQuery.extend(!0,i.config,e.config.document),i.config.elements&&(i.config.elements=a),elementor.channels.editor.trigger("saved",e),elementor.saver.trigger("after:save",e).trigger("after:save:"+r,e),l&&elementor.saver.trigger("page:status:change",r,o),_.isFunction(n)&&n.call(this,s)),s}},{key:"onSaveError",value:function onSaveError(e,t,n){var o;this.onAfterAjax(n),elementor.saver.trigger("after:saveError",e).trigger("after:saveError:"+t,e),_.isString(e)?o=e:e.statusText?(o=elementor.createAjaxErrorMessage(e),0===e.readyState&&(o+=" "+r("Saving has been disabled until you’re reconnected.","elementor"))):e[0]&&e[0].code&&(o=r("Server Error","elementor")+" "+e[0].code),elementor.notifications.showToast({message:o})}},{key:"onAfterAjax",value:function onAfterAjax(e){e.editor.isSaving=!1}}]),Save}(a(n(23714)).default);t.Save=c;var d=c;t.default=d},54970:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.SetIsModified=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(SetIsModified,e);var t=(0,l.default)(SetIsModified);function SetIsModified(){return(0,a.default)(this,SetIsModified),t.apply(this,arguments)}return(0,i.default)(SetIsModified,[{key:"validateArgs",value:function validateArgs(e){this.requireArgumentType("status","boolean",e)}},{key:"apply",value:function apply(e){var t=e.status,n=e.document,r=void 0===n?elementor.documents.getCurrent():n;e.document=r,r.editor.isChanged=t,t&&r.editor.isSaving&&(r.editor.isChangedDuringSave=!0),t&&(r.editor.isSaved=!1),elementor.channels.editor.reply("status",t).trigger("status:change",t),r.editor.isChanged&&this.component.startAutoSave(r)}}]),SetIsModified}(o(n(23714)).default);t.SetIsModified=s;var c=s;t.default=c},73904:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.Pending=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(Pending,e);var t=(0,l.default)(Pending);function Pending(){return(0,a.default)(this,Pending),t.apply(this,arguments)}return(0,i.default)(Pending,[{key:"apply",value:function apply(e){var t=e.status,n=void 0===t?"pending":t,r=e.document,o=void 0===r?this.document:r;return $e.internal("document/save/save",{status:n,document:o})}}]),Pending}(o(n(61045)).default);t.Pending=s},32732:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.Publish=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(Publish,e);var t=(0,l.default)(Publish);function Publish(){return(0,a.default)(this,Publish),t.apply(this,arguments)}return(0,i.default)(Publish,[{key:"apply",value:function apply(e){var t=e.status,n=void 0===t?"publish":t,r=e.document,o=void 0===r?this.document:r;return $e.internal("document/save/save",{status:n,document:o})}}]),Publish}(o(n(61045)).default);t.Publish=s},10461:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.Update=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(Update,e);var t=(0,l.default)(Update);function Update(){return(0,a.default)(this,Update),t.apply(this,arguments)}return(0,i.default)(Update,[{key:"apply",value:function apply(e){var t=e.document,n=void 0===t?this.document:t,r=e.status,o=void 0===r?n.container.settings.get("post_status"):r;return $e.internal("document/save/save",{status:o,document:n})}}]),Update}(o(n(61045)).default);t.Update=s},49884:(e,t,n)=>{"use strict";var r=n(18194).__,o=n(67394),a=n(52369),i=n(67971);o(t,"__esModule",{value:!0}),t.default=void 0;var u=i(n(11959)),l=i(n(39041)),s=i(n(38852)),c=i(n(76700)),d=i(n(44263)),f=i(n(77371)),p=i(n(68537)),v=i(n(18042)),m=i(n(70608)),g=a(n(52623)),h=a(n(45615)),y=a(n(56847)),C=function(e){(0,f.default)(Component,e);var t=(0,p.default)(Component);function Component(){var e;(0,u.default)(this,Component);for(var n=arguments.length,r=new Array(n),o=0;o<n;o++)r[o]=arguments[o];return e=t.call.apply(t,[this].concat(r)),(0,v.default)((0,s.default)(e),"footerSaver",void 0),e}return(0,l.default)(Component,[{key:"__construct",value:function __construct(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,c.default)((0,d.default)(Component.prototype),"__construct",this).call(this,t),this.autoSaveTimers={},this.autoSaveInterval=1e3*elementor.config.autosave_interval,elementorCommon.elements.$window.on("beforeunload",(function(){if(e.isEditorChanged())return r("Please note: All unsaved changes will be lost.","elementor")}))}},{key:"getNamespace",value:function getNamespace(){return"document/save"}},{key:"startAutoSave",value:function startAutoSave(e){var t=this;this.stopAutoSave(e),this.autoSaveTimers[e.id]=setTimeout((function(){$e.run("document/save/auto",{document:e}),delete t.autoSaveTimers[e.id]}),this.autoSaveInterval)}},{key:"stopAutoSave",value:function stopAutoSave(e){this.autoSaveTimers[e.id]&&(clearTimeout(this.autoSaveTimers[e.id]),delete this.autoSaveTimers[e.id])}},{key:"defaultCommands",value:function defaultCommands(){return this.importCommands(g)}},{key:"defaultCommandsInternal",value:function defaultCommandsInternal(){return this.importCommands(h)}},{key:"defaultHooks",value:function defaultHooks(){return this.importHooks(y)}},{key:"isEditorChanged",value:function isEditorChanged(){return!0===elementor.channels.editor.request("status")}}]),Component}(m.default);t.default=C},56847:(e,t,n)=>{"use strict";var r=n(67394),o=n(83452);r(t,"__esModule",{value:!0});var a=n(11663);o(a).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===a[e]||r(t,e,{enumerable:!0,get:function get(){return a[e]}}))}))},11663:(e,t,n)=>{"use strict";var r=n(67394),o=n(83452);r(t,"__esModule",{value:!0});var a=n(59051);o(a).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===a[e]||r(t,e,{enumerable:!0,get:function get(){return a[e]}}))}));var i=n(85240);o(i).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===i[e]||r(t,e,{enumerable:!0,get:function get(){return i[e]}}))}));var u=n(41647);o(u).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===u[e]||r(t,e,{enumerable:!0,get:function get(){return u[e]}}))}))},65229:(e,t,n)=>{"use strict";var r=n(18194).__,o=n(67394),a=n(67971);o(t,"__esModule",{value:!0}),t.default=t.FooterSaverAfterSave=void 0;var i=a(n(11959)),u=a(n(39041)),l=a(n(77371)),s=a(n(68537)),c=function(e){(0,l.default)(FooterSaverAfterSave,e);var t=(0,s.default)(FooterSaverAfterSave);function FooterSaverAfterSave(){return(0,i.default)(this,FooterSaverAfterSave),t.apply(this,arguments)}return(0,u.default)(FooterSaverAfterSave,[{key:"getCommand",value:function getCommand(){return"document/save/save"}},{key:"getId",value:function getId(){return"footer-saver-after-save"}},{key:"apply",value:function apply(e,t){var n=e.status,r=t.data,o=$e.components.get("document/save").footerSaver;NProgress.done(),o.ui.buttonPublish.removeClass("elementor-button-state"),o.ui.lastEditedWrapper.removeClass("elementor-state-active"),o.refreshWpPreview(),o.setLastEdited(r.config.document.last_edited),t.statusChanged&&"publish"===n&&elementor.config.document.urls.have_a_look&&this.onPageStatusChange()}},{key:"onPageStatusChange",value:function onPageStatusChange(){var e=[];e.push({name:"view_page",text:r("Have a look","elementor"),callback:function callback(){open(elementor.config.document.urls.have_a_look)}}),elementor.notifications.showToast({message:elementor.config.document.panel.messages.publish_notification,buttons:e})}}]),FooterSaverAfterSave}(a(n(57061)).default);t.FooterSaverAfterSave=c;var d=c;t.default=d},99331:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.FooterSaverBeforeSave=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(FooterSaverBeforeSave,e);var t=(0,l.default)(FooterSaverBeforeSave);function FooterSaverBeforeSave(){return(0,a.default)(this,FooterSaverBeforeSave),t.apply(this,arguments)}return(0,i.default)(FooterSaverBeforeSave,[{key:"getCommand",value:function getCommand(){return"document/save/save"}},{key:"getId",value:function getId(){return"footer-saver-before-save"}},{key:"apply",value:function apply(e){var t=e.status,n=$e.components.get("document/save").footerSaver;NProgress.start(),"autosave"===t?n.ui.lastEditedWrapper.addClass("elementor-state-active"):n.ui.buttonPublish.addClass("elementor-button-state")}}]),FooterSaverBeforeSave}(o(n(26556)).default);t.FooterSaverBeforeSave=s;var c=s;t.default=c},29756:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.FooterSaverCatchSave=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(FooterSaverCatchSave,e);var t=(0,l.default)(FooterSaverCatchSave);function FooterSaverCatchSave(){return(0,a.default)(this,FooterSaverCatchSave),t.apply(this,arguments)}return(0,i.default)(FooterSaverCatchSave,[{key:"getCommand",value:function getCommand(){return"document/save/save"}},{key:"getId",value:function getId(){return"footer-saver-catch-save"}},{key:"apply",value:function apply(){NProgress.done(),$e.components.get("document/save").footerSaver.ui.buttonPublish.removeClass("elementor-button-state")}}]),FooterSaverCatchSave}(o(n(8295)).default);t.FooterSaverCatchSave=s;var c=s;t.default=c},59051:(e,t,n)=>{"use strict";var r=n(67394);r(t,"__esModule",{value:!0}),r(t,"FooterSaverAfterSave",{enumerable:!0,get:function get(){return o.FooterSaverAfterSave}}),r(t,"FooterSaverBeforeSave",{enumerable:!0,get:function get(){return a.FooterSaverBeforeSave}}),r(t,"FooterSaverCatchSave",{enumerable:!0,get:function get(){return i.FooterSaverCatchSave}});var o=n(65229),a=n(99331),i=n(29756)},46240:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.FooterSaverActiveSaveButtons=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(FooterSaverActiveSaveButtons,e);var t=(0,l.default)(FooterSaverActiveSaveButtons);function FooterSaverActiveSaveButtons(){return(0,a.default)(this,FooterSaverActiveSaveButtons),t.apply(this,arguments)}return(0,i.default)(FooterSaverActiveSaveButtons,[{key:"getCommand",value:function getCommand(){return"document/save/set-is-modified"}},{key:"getId",value:function getId(){return"footer-saver-activate-save-buttons"}},{key:"apply",value:function apply(e){var t=e.status,n=e.document;$e.components.get("document/save").footerSaver.activateSaveButtons(n,t)}}]),FooterSaverActiveSaveButtons}(o(n(57061)).default);t.FooterSaverActiveSaveButtons=s;var c=s;t.default=c},85240:(e,t,n)=>{"use strict";var r=n(67394);r(t,"__esModule",{value:!0}),r(t,"FooterSaverActiveSaveButtons",{enumerable:!0,get:function get(){return o.FooterSaverActiveSaveButtons}});var o=n(46240)},41647:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.FooterSeverRefreshMenu=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(FooterSeverRefreshMenu,e);var t=(0,l.default)(FooterSeverRefreshMenu);function FooterSeverRefreshMenu(){return(0,a.default)(this,FooterSeverRefreshMenu),t.apply(this,arguments)}return(0,i.default)(FooterSeverRefreshMenu,[{key:"getCommand",value:function getCommand(){return"document/elements/settings"}},{key:"getId",value:function getId(){return"footer-saver-refresh-menu"}},{key:"getContainerType",value:function getContainerType(){return"document"}},{key:"getConditions",value:function getConditions(e){return e.settings&&void 0!==e.settings.post_status}},{key:"apply",value:function apply(e){var t=$e.components.get("document/save").footerSaver;t.setMenuItems(e.container.document),t.refreshWpPreview()}}]),FooterSeverRefreshMenu}(o(n(57061)).default);t.FooterSeverRefreshMenu=s;var c=s;t.default=c},9862:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.Copy=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(Copy,e);var t=(0,l.default)(Copy);function Copy(){return(0,a.default)(this,Copy),t.apply(this,arguments)}return(0,i.default)(Copy,[{key:"apply",value:function apply(){var e=elementor.getCurrentElement();return!!e&&$e.run("document/elements/copy",{container:e.getContainer()})}}]),Copy}(o(n(68689)).default);t.Copy=s;var c=s;t.default=c},93792:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.Delete=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(Delete,e);var t=(0,l.default)(Delete);function Delete(){return(0,a.default)(this,Delete),t.apply(this,arguments)}return(0,i.default)(Delete,[{key:"apply",value:function apply(){var e=elementor.getCurrentElement();return!!e&&$e.run("document/elements/delete",{container:e.getContainer()})}}]),Delete}(o(n(68689)).default);t.Delete=s;var c=s;t.default=c},68628:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.Duplicate=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(Duplicate,e);var t=(0,l.default)(Duplicate);function Duplicate(){return(0,a.default)(this,Duplicate),t.apply(this,arguments)}return(0,i.default)(Duplicate,[{key:"apply",value:function apply(){var e=elementor.getCurrentElement();return!!e&&$e.run("document/elements/duplicate",{container:e.getContainer()})}}]),Duplicate}(o(n(68689)).default);t.Duplicate=s;var c=s;t.default=c},4201:(e,t,n)=>{"use strict";var r=n(67394);r(t,"__esModule",{value:!0}),r(t,"Copy",{enumerable:!0,get:function get(){return o.Copy}}),r(t,"Delete",{enumerable:!0,get:function get(){return a.Delete}}),r(t,"Duplicate",{enumerable:!0,get:function get(){return i.Duplicate}}),r(t,"Paste",{enumerable:!0,get:function get(){return u.Paste}}),r(t,"PasteStyle",{enumerable:!0,get:function get(){return l.PasteStyle}});var o=n(9862),a=n(93792),i=n(68628),u=n(39513),l=n(29073)},29073:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.PasteStyle=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(PasteStyle,e);var t=(0,l.default)(PasteStyle);function PasteStyle(){return(0,a.default)(this,PasteStyle),t.apply(this,arguments)}return(0,i.default)(PasteStyle,[{key:"apply",value:function apply(){var e=elementor.getCurrentElement();return!!e&&$e.run("document/elements/paste-style",{container:e.getContainer()})}}]),PasteStyle}(o(n(68689)).default);t.PasteStyle=s;var c=s;t.default=c},39513:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.Paste=void 0;var a=o(n(35657));n(90286),n(78703);var i=o(n(11959)),u=o(n(39041)),l=o(n(76700)),s=o(n(44263)),c=o(n(77371)),d=o(n(68537)),f=function(e){(0,c.default)(Paste,e);var t=(0,d.default)(Paste);function Paste(){return(0,i.default)(this,Paste),t.apply(this,arguments)}return(0,u.default)(Paste,[{key:"initialize",value:function initialize(e){var t=e.containers,n=void 0===t?[e.container]:t;(0,l.default)((0,s.default)(Paste.prototype),"initialize",this).call(this,e),this.storage=elementorCommon.storage.get("clipboard")||[],this.storage=this.storage.map((function(e){return new Backbone.Model(e)})),n[0]?this.target=n:(this.target=elementor.getCurrentElement(),this.target=this.target?[this.target.getContainer()]:null)}},{key:"apply",value:function apply(e){var t=this;if(!this.target||0===this.storage.length)return!1;var n=[];return this.target.forEach((function(r){var o=e.options,i=void 0===o?{}:o,u=$e.components.get("document/elements").utils.getPasteOptions(t.storage[0],r);if(u.isValidChild||(u.isSameElement?(i.at=r.parent.model.get("elements").findIndex(r.model)+1,r=r.parent):u.isValidGrandChild&&(i.rebuild=!0)),(0,a.default)(u).some((function(e){return!!e}))){var l={container:r};void 0!==i.rebuild&&(l.rebuild=i.rebuild),void 0!==i.at&&(l.at=i.at),n.push($e.run("document/elements/paste",l))}})),0!==n.length&&(1===n.length?n[0]:n)}}]),Paste}(o(n(68689)).default);t.Paste=f;var p=f;t.default=p},14138:(e,t,n)=>{"use strict";var r=n(67394),o=n(52369),a=n(67971);r(t,"__esModule",{value:!0}),t.default=void 0;var i=a(n(11959)),u=a(n(39041)),l=a(n(77371)),s=a(n(68537)),c=a(n(15591)),d=o(n(4201)),f=function(e){(0,l.default)(Component,e);var t=(0,s.default)(Component);function Component(){return(0,i.default)(this,Component),t.apply(this,arguments)}return(0,u.default)(Component,[{key:"getNamespace",value:function getNamespace(){return"document/ui"}},{key:"defaultCommands",value:function defaultCommands(){return this.importCommands(d)}},{key:"defaultShortcuts",value:function defaultShortcuts(){return{copy:{keys:"ctrl+c",exclude:["input"]},delete:{keys:"del",exclude:["input"]},duplicate:{keys:"ctrl+d"},paste:{keys:"ctrl+v",exclude:["input"]},"paste-style":{keys:"ctrl+shift+v",exclude:["input"]}}}}]),Component}(c.default);t.default=f},83866:(e,t,n)=>{"use strict";var r=n(18194).sprintf,o=n(18194).__,a=n(67971);n(99745),n(71954);var i,u=a(n(24596)),l=a(n(83452)),s=a(n(14176)),c=a(n(59396)),d=a(n(73308)),f=n(99292),p=n(96731),v=n(47071);i=v.extend({tagName:"div",controlsCSSParser:null,allowRender:!0,toggleEditTools:!1,renderAttributes:{},className:function className(){var e="elementor-element elementor-element-edit-mode "+this.getElementUniqueID();return this.toggleEditTools&&(e+=" elementor-element--toggle-edit-tools"),e},attributes:function attributes(){return{"data-id":this.getID(),"data-element_type":this.model.get("elType")}},ui:function ui(){return{tools:"> .elementor-element-overlay > .elementor-editor-element-settings",editButton:"> .elementor-element-overlay .elementor-editor-element-edit",duplicateButton:"> .elementor-element-overlay .elementor-editor-element-duplicate",addButton:"> .elementor-element-overlay .elementor-editor-element-add",removeButton:"> .elementor-element-overlay .elementor-editor-element-remove"}},behaviors:function behaviors(){var e=this.options.model.get("elType"),t=elementor.hooks.applyFilters("elements/".concat(e,"/contextMenuGroups"),this.getContextMenuGroups(),this),behaviors={contextMenu:{behaviorClass:n(81152),groups:t}};return elementor.hooks.applyFilters("elements/base/behaviors",behaviors,this)},getBehavior:function getBehavior(e){return this._behaviors[(0,l.default)(this.behaviors()).indexOf(e)]},events:function events(){return{mousedown:"onMouseDown","click @ui.editButton":"onEditButtonClick","click @ui.duplicateButton":"onDuplicateButtonClick","click @ui.addButton":"onAddButtonClick","click @ui.removeButton":"onRemoveButtonClick"}},getElementType:function getElementType(){return this.model.get("elType")},getIDInt:function getIDInt(){return(0,s.default)(this.getID(),16)},getChildType:function getChildType(){return elementor.helpers.getElementChildType(this.getElementType())},getChildView:function getChildView(e){var t,r=e.get("elType");return t="section"===r?n(39872):"column"===r?n(99722):elementor.modules.elements.views.Widget,elementor.hooks.applyFilters("element/view",t,e,this)},getTemplateType:function getTemplateType(){return"js"},getEditModel:function getEditModel(){return this.model},getContainer:function getContainer(){if(!this.container){var e=this.model.get("settings");this.container=new elementorModules.editor.Container({type:this.model.get("elType"),id:this.model.id,model:this.model,settings:e,view:this,parent:this._parent?this._parent.getContainer():{},children:[],label:elementor.helpers.getModelLabel(this.model),controls:e.options.controls})}return this.container},getContextMenuGroups:function getContextMenuGroups(){var e=this,t=d.default.mac?"⌘":"^";return[{name:"general",actions:[{name:"edit",icon:"eicon-edit",title:r(o("Edit %s","elementor"),this.options.model.getTitle()),callback:function callback(){return $e.run("panel/editor/open",{model:e.options.model,view:e,container:e.getContainer()})}},{name:"duplicate",icon:"eicon-clone",title:o("Duplicate","elementor"),shortcut:t+"+D",callback:function callback(){return $e.run("document/elements/duplicate",{container:e.getContainer()})}}]},{name:"clipboard",actions:[{name:"copy",title:o("Copy","elementor"),shortcut:t+"+C",callback:function callback(){return $e.run("document/elements/copy",{container:e.getContainer()})}},{name:"paste",title:o("Paste","elementor"),shortcut:t+"+V",isEnabled:function isEnabled(){return $e.components.get("document/elements").utils.isPasteEnabled(e.getContainer())},callback:function callback(){return $e.run("document/ui/paste",{container:e.getContainer()})}},{name:"pasteStyle",title:o("Paste Style","elementor"),shortcut:t+"+⇧+V",isEnabled:function isEnabled(){return!!elementorCommon.storage.get("clipboard")},callback:function callback(){return $e.run("document/elements/paste-style",{container:e.getContainer()})}},{name:"resetStyle",title:o("Reset Style","elementor"),callback:function callback(){return $e.run("document/elements/reset-style",{container:e.getContainer()})}}]},{name:"delete",actions:[{name:"delete",icon:"eicon-trash",title:o("Delete","elementor"),shortcut:"⌦",callback:function callback(){return $e.run("document/elements/delete",{container:e.getContainer()})}}]}]},getEditButtons:function getEditButtons(){return{}},initialize:function initialize(){var e=this;v.prototype.initialize.apply(this,arguments);var t=this.getEditModel();this.collection&&this.onCollectionChanged&&(elementorCommon.helpers.softDeprecated("onCollectionChanged","2.8.0","$e.hooks"),this.listenTo(this.collection,"add remove reset",this.onCollectionChanged,this)),this.onSettingsChanged&&(elementorCommon.helpers.softDeprecated("onSettingsChanged","2.8.0","$e.hooks"),this.listenTo(t.get("settings"),"change",this.onSettingsChanged)),this.listenTo(t.get("editSettings"),"change",this.onEditSettingsChanged).listenTo(this.model,"request:edit",this.onEditRequest).listenTo(this.model,"request:toggleVisibility",this.toggleVisibility),this.initControlsCSSParser(),_.defer((function(){e.getContainer()}))},getHandlesOverlay:function getHandlesOverlay(){var e=jQuery("<div>",{class:"elementor-element-overlay"}),t=jQuery("<ul>",{class:"elementor-editor-element-settings elementor-editor-".concat(this.getElementType(),"-settings")});return jQuery.each(this.getEditButtons(),(function(e,n){var r=jQuery("<li>",{class:"elementor-editor-element-setting elementor-editor-element-".concat(e),title:n.title}),o=jQuery("<i>",{class:"eicon-".concat(n.icon),"aria-hidden":!0}),a=jQuery("<span>",{class:"elementor-screen-only"});a.text(n.title),r.append(o,a),t.append(r)})),e.append(t),e},attachElContent:function attachElContent(e){this.$el.empty().append(this.getHandlesOverlay(),e)},startTransport:function startTransport(){elementorCommon.helpers.softDeprecated("element.startTransport","2.8.0","$e.run( 'document/elements/copy' )"),$e.run("document/elements/copy",{container:this.getContainer()})},copy:function copy(){elementorCommon.helpers.softDeprecated("element.copy","2.8.0","$e.run( 'document/elements/copy' )"),$e.run("document/elements/copy",{container:this.getContainer()})},cut:function cut(){elementorCommon.helpers.softDeprecated("element.cut","2.8.0")},paste:function paste(){elementorCommon.helpers.softDeprecated("element.paste","2.8.0","$e.run( 'document/elements/paste' )"),$e.run("document/elements/paste",{container:this.getContainer(),at:this._parent.collection.indexOf(this.model)})},duplicate:function duplicate(){elementorCommon.helpers.softDeprecated("element.duplicate","2.8.0","$e.run( 'document/elements/duplicate' )"),$e.run("document/elements/duplicate",{container:this.getContainer()})},pasteStyle:function pasteStyle(){elementorCommon.helpers.softDeprecated("element.pasteStyle","2.8.0","$e.run( 'document/elements/paste-style' )"),$e.run("document/elements/paste-style",{container:this.getContainer()})},resetStyle:function resetStyle(){elementorCommon.helpers.softDeprecated("element.resetStyle","2.8.0","$e.run( 'document/elements/reset-style' )"),$e.run("document/elements/reset-style",{container:this.getContainer()})},isStyleTransferControl:function isStyleTransferControl(e){return void 0!==e.style_transfer?e.style_transfer:"content"!==e.tab||e.selectors||e.prefix_class},toggleVisibility:function toggleVisibility(){this.model.set("hidden",!this.model.get("hidden")),this.toggleVisibilityClass()},toggleVisibilityClass:function toggleVisibilityClass(){this.$el.toggleClass("elementor-edit-hidden",!!this.model.get("hidden"))},addElementFromPanel:function addElementFromPanel(e){e=e||{};var t=elementor.channels.panelElements.request("element:selected"),n={elType:t.model.get("elType")};if(!elementor.helpers.maybeDisableWidget()){if("widget"===n.elType)n.widgetType=t.model.get("widgetType");else{if("section"!==n.elType)return;n.isInner=!0}var r=t.model.get("custom");return r&&jQuery.extend(n,r),$e.run("document/elements/create",{container:this.getContainer(),model:n,options:e})}},addControlValidator:function addControlValidator(e,t){t=t.bind(this);var n=new p({customValidationMethod:t}),r=this.getEditModel().get("settings").validators;r[e]||(r[e]=[]),r[e].push(n)},addRenderAttribute:function addRenderAttribute(e,t,n,r){var o=this;return"object"===(0,u.default)(e)?(jQuery.each(e,(function(e,t){o.addRenderAttribute(e,t,null,r)})),o):"object"===(0,u.default)(t)?(jQuery.each(t,(function(t,n){o.addRenderAttribute(e,t,n,r)})),o):(o.renderAttributes[e]||(o.renderAttributes[e]={}),o.renderAttributes[e][t]||(o.renderAttributes[e][t]=[]),(0,c.default)(n)||(n=[n]),void(o.renderAttributes[e][t]=r?n:o.renderAttributes[e][t].concat(n)))},getRenderAttributeString:function getRenderAttributeString(e){if(!this.renderAttributes[e])return"";var t=this.renderAttributes[e],n=[];return jQuery.each(t,(function(e,t){n.push(e+'="'+_.escape(t.join(" "))+'"')})),n.join(" ")},isInner:function isInner(){return!!this.model.get("isInner")},initControlsCSSParser:function initControlsCSSParser(){this.controlsCSSParser=new f({id:this.model.get("id"),context:this,settingsModel:this.getEditModel().get("settings"),dynamicParsing:this.getDynamicParsingSettings()})},enqueueFonts:function enqueueFonts(){var e=this.getEditModel(),t=e.get("settings");jQuery.each(t.getIconsControls(),(function(t,n){var r=e.getSetting(n.name);r&&r.library&&elementor.helpers.enqueueIconFonts(r.library)}))},renderStyles:function renderStyles(e){e||(e=this.getEditModel().get("settings")),this.controlsCSSParser.stylesheet.empty(),this.controlsCSSParser.addStyleRules(e.getStyleControls(),e.attributes,this.getEditModel().get("settings").controls,[/{{ID}}/g,/{{WRAPPER}}/g],[this.getID(),".elementor-"+elementor.config.document.id+" .elementor-element."+this.getElementUniqueID()]),this.controlsCSSParser.addStyleToDocument()},renderCustomClasses:function renderCustomClasses(){var e=this,t=e.getEditModel().get("settings"),n=t.getClassControls();_.each(n,(function(n){var r=t.previous(n.name);n.classes_dictionary&&void 0!==n.classes_dictionary[r]&&(r=n.classes_dictionary[r]),e.$el.removeClass(n.prefix_class+r)})),_.each(n,(function(n){var r=t.attributes[n.name],o=r;n.classes_dictionary&&void 0!==n.classes_dictionary[r]&&(o=n.classes_dictionary[r]),elementor.helpers.isActiveControl(n,t.attributes)&&(o||0===o)&&e.$el.addClass(n.prefix_class+o)})),e.$el.addClass(_.result(e,"className")),e.toggleVisibilityClass()},renderCustomElementID:function renderCustomElementID(){var e=this.getEditModel().get("settings").get("_element_id");this.$el.attr("id",e)},renderUI:function renderUI(){this.renderStyles(),this.renderCustomClasses(),this.renderCustomElementID(),this.enqueueFonts()},runReadyTrigger:function runReadyTrigger(){var e=this;_.defer((function(){elementorFrontend.elementsHandler.runReadyTrigger(e.el),elementorFrontend.isEditMode()&&e.$el.find(".elementor-element.elementor-"+e.model.get("elType")+":not(.elementor-element-edit-mode)").each((function(){elementorFrontend.elementsHandler.runReadyTrigger(this)}))}))},getID:function getID(){return this.model.get("id")},getElementUniqueID:function getElementUniqueID(){return"elementor-element-"+this.getID()},renderHTML:function renderHTML(){var e=this.getTemplateType(),t=this.getEditModel();"js"===e?(this.getEditModel().setHtmlCache(),this.render(),t.renderOnLeave=!0):t.renderRemoteServer()},renderOnChange:function renderOnChange(e){if(this.allowRender){if(e instanceof elementorModules.editor.elements.models.BaseSettings){var t=e.hasChanged(),n=!t,r=!t;if(_.each(e.changedAttributes(),(function(t,o){var a=e.getControl(o);if("_column_size"!==o){if(!a)return r=!0,void(n=!0);"none"!==a.render_type&&(r=!0),-1===["none","ui"].indexOf(a.render_type)&&("template"!==a.render_type&&(e.isStyleControl(o)||e.isClassControl(o)||"_element_id"===o)||(n=!0))}else r=!0})),!r)return;if(!n)return void this.renderUI()}this.renderHTML()}},getDynamicParsingSettings:function getDynamicParsingSettings(){var e=this;return{onServerRequestStart:function onServerRequestStart(){e.$el.addClass("elementor-loading")},onServerRequestEnd:function onServerRequestEnd(){e.render(),e.$el.removeClass("elementor-loading")}}},serializeData:function serializeData(){var e=v.prototype.serializeData.apply(this,arguments);return e.settings=this.getEditModel().get("settings").parseDynamicSettings(e.settings,this.getDynamicParsingSettings()),e},save:function save(){$e.route("library/save-template",{model:this.model})},onBeforeRender:function onBeforeRender(){this.renderAttributes={}},onRender:function onRender(){if(this.renderUI(),this.runReadyTrigger(),this.toggleEditTools){var e=this.ui.editButton;this.ui.tools&&this.ui.tools.hoverIntent((function(){e.addClass("elementor-active")}),(function(){e.removeClass("elementor-active")}),{timeout:500})}},onEditSettingsChanged:function onEditSettingsChanged(e){elementor.channels.editor.trigger("change:editSettings",e,this)},onEditButtonClick:function onEditButtonClick(){this.model.trigger("request:edit")},onEditRequest:function onEditRequest(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(this.container.isEditable()){var t=this.getEditModel(),n=elementor.getPanelView();$e.routes.isPartOf("panel/editor")&&n.getCurrentPageView().model===t||(e.scrollIntoView&&elementor.helpers.scrollToView(this.$el,200),$e.run("panel/editor/open",{model:t,view:this}))}},onDuplicateButtonClick:function onDuplicateButtonClick(e){e.stopPropagation(),$e.run("document/elements/duplicate",{container:this.getContainer()})},onRemoveButtonClick:function onRemoveButtonClick(e){e.stopPropagation(),$e.run("document/elements/delete",{container:this.getContainer()})},onMouseDown:function onMouseDown(e){jQuery(e.target).closest(".elementor-inline-editing").length||elementorFrontend.elements.window.document.activeElement.blur()},onDestroy:function onDestroy(){this.controlsCSSParser.removeStyleFromDocument(),this.getEditModel().get("settings").validators={},elementor.channels.data.trigger("element:destroy",this.model)}}),e.exports=i},63960:e=>{"use strict";var t;t=Marionette.Behavior.extend({defaults:{handles:elementorCommon.config.isRTL?"w":"e"},events:{resizestart:"onResizeStart",resizestop:"onResizeStop",resize:"onResize"},initialize:function initialize(){Marionette.Behavior.prototype.initialize.apply(this,arguments),this.listenTo(elementor.channels.dataEditMode,"switch",this.onEditModeSwitched)},active:function active(){if(elementor.userCan("design")){this.deactivate();var e=_.clone(this.options);delete e.behaviorClass;var t=this.getChildViewContainer(),n=_.extend({},e);t.resizable(n)}},deactivate:function deactivate(){this.getChildViewContainer().resizable("instance")&&this.getChildViewContainer().resizable("destroy")},onEditModeSwitched:function onEditModeSwitched(e){"edit"===e?this.active():this.deactivate()},onRender:function onRender(){var e=this;_.defer((function(){e.onEditModeSwitched(elementor.channels.dataEditMode.request("activeMode"))}))},onDestroy:function onDestroy(){this.deactivate()},onResizeStart:function onResizeStart(e){e.stopPropagation(),this.view.$el.data("originalWidth",this.view.el.getBoundingClientRect().width),this.view.triggerMethod("request:resize:start",e)},onResizeStop:function onResizeStop(e){e.stopPropagation(),this.view.triggerMethod("request:resize:stop")},onResize:function onResize(e,t){e.stopPropagation(),this.view.triggerMethod("request:resize",t,e)},getChildViewContainer:function getChildViewContainer(){return this.$el}}),e.exports=t},81152:(e,t,n)=>{"use strict";var r=n(18194).__,o=n(67971)(n(59113)),a=n(6430);e.exports=Marionette.Behavior.extend({defaults:{groups:[],eventTargets:["el"]},events:function events(){var events={};return this.getOption("eventTargets").forEach((function(e){var t="contextmenu";"el"!==e&&(t+=" "+e),events[t]="onContextMenu"})),events},initialize:function initialize(){this.listenTo(this.view.options.model,"request:contextmenu",this.onRequestContextMenu)},initContextMenu:function initContextMenu(){var e=this,t=this.getOption("groups"),n=_.findWhere(t,{name:"delete"}),o=t.indexOf(n);-1===o&&(o=t.length),t.splice(o,0,{name:"tools",actions:[{name:"navigator",title:r("Navigator","elementor"),callback:function callback(){return $e.route("navigator",{reOpen:!0,model:e.view.model})}}]}),this.contextMenu=new a({groups:t}),this.contextMenu.getModal().on("hide",this.onContextMenuHide)},getContextMenu:function getContextMenu(){return this.contextMenu||this.initContextMenu(),this.contextMenu},onContextMenu:function onContextMenu(e){$e.shortcuts.isControlEvent(e)||(this.view instanceof o.default||this.view.container&&this.view.container.isDesignable())&&(e.preventDefault(),e.stopPropagation(),this.getContextMenu().show(e),elementor.channels.editor.reply("contextMenu:targetView",this.view))},onRequestContextMenu:function onRequestContextMenu(e){var t=this.getContextMenu().getModal(),n=t.getSettings("iframe"),r=_.findWhere(this.contextMenu.getSettings("groups"),{name:"tools"});r.isVisible=!1,t.setSettings("iframe",null),this.onContextMenu(e),r.isVisible=!0,t.setSettings("iframe",n)},onContextMenuHide:function onContextMenuHide(){elementor.channels.editor.reply("contextMenu:targetView",null)},onDestroy:function onDestroy(){this.contextMenu&&this.contextMenu.destroy()}})},92243:e=>{"use strict";var t;t=Marionette.Behavior.extend({defaults:{elChildType:"widget"},events:{sortstart:"onSortStart",sortreceive:"onSortReceive",sortupdate:"onSortUpdate",sortover:"onSortOver",sortout:"onSortOut"},initialize:function initialize(){this.listenTo(elementor.channels.dataEditMode,"switch",this.onEditModeSwitched).listenTo(this.view.options.model,"request:sort:start",this.startSort).listenTo(this.view.options.model,"request:sort:update",this.updateSort).listenTo(this.view.options.model,"request:sort:receive",this.receiveSort)},onEditModeSwitched:function onEditModeSwitched(e){"edit"===e?this.activate():this.deactivate()},onRender:function onRender(){var e=this;_.defer((function(){e.onEditModeSwitched(elementor.channels.dataEditMode.request("activeMode"))}))},onDestroy:function onDestroy(){this.deactivate()},activate:function activate(){if(elementor.userCan("design")&&!this.getChildViewContainer().sortable("instance")){var e=this.getChildViewContainer(),t={placeholder:"elementor-sortable-placeholder elementor-"+this.getOption("elChildType")+"-placeholder",cursorAt:{top:20,left:25},helper:this._getSortableHelper.bind(this),cancel:"input, textarea, button, select, option, .elementor-inline-editing, .elementor-tab-title",start:function start(){e.sortable("refreshPositions")}},n=_.extend(t,this.view.getSortableOptions());e.sortable(n)}},_getSortableHelper:function _getSortableHelper(e,t){var n=this.view.collection.get({cid:t.data("model-cid")});return'<div style="height: 84px; width: 125px;" class="elementor-sortable-helper elementor-sortable-helper-'+n.get("elType")+'"><div class="icon"><i class="'+n.getIcon()+'"></i></div><div class="elementor-element-title-wrapper"><div class="title">'+n.getTitle()+"</div></div></div>"},getChildViewContainer:function getChildViewContainer(){return this.view.getChildViewContainer(this.view)},getSortedElementNewIndex:function getSortedElementNewIndex(e){var t=elementor.channels.data.request("dragging:model").get("elType"),n=e.index();return"widget"===t&&elementorCommon.config.experimentalFeatures.e_dom_optimization&&n--,n},deactivate:function deactivate(){var e=this.getChildViewContainer();e.sortable("instance")&&e.sortable("destroy")},startSort:function startSort(e,t){e.stopPropagation();var n=elementor.getContainer(t.item.attr("data-id"));elementor.channels.data.reply("dragging:model",n.model).reply("dragging:view",n.view).reply("dragging:parent:view",this.view).trigger("drag:start",n.model).trigger(n.model.get("elType")+":drag:start")},updateSort:function updateSort(e,t){void 0===t&&(t=e.item.index()),$e.run("document/elements/move",{container:elementor.channels.data.request("dragging:view").getContainer(),target:this.view.getContainer(),options:{at:t}})},receiveSort:function receiveSort(e,t,n){if(e.stopPropagation(),this.view.isCollectionFilled())jQuery(t.sender).sortable("cancel");else{var r=elementor.channels.data.request("dragging:model"),o="section"===r.get("elType")&&r.get("isInner"),a="column"===this.view.getElementType()&&this.view.isInner();o&&a?jQuery(t.sender).sortable("cancel"):(void 0===n&&(n=t.item.index()),$e.run("document/elements/move",{container:elementor.channels.data.request("dragging:view").getContainer(),target:this.view.getContainer(),options:{at:n}}))}},onSortStart:function onSortStart(e,t){if("column"===this.options.elChildType){var n=t.item.data("sortableItem").items,r=0;n.forEach((function(e){if(e.item[0]===t.item[0])return r=e.height,!1})),t.placeholder.height(r)}this.startSort(e,t)},onSortOver:function onSortOver(e){e.stopPropagation();var t=elementor.channels.data.request("dragging:model");jQuery(e.target).addClass("elementor-draggable-over").attr({"data-dragged-element":t.get("elType"),"data-dragged-is-inner":t.get("isInner")}),this.$el.addClass("elementor-dragging-on-child")},onSortOut:function onSortOut(e){e.stopPropagation(),jQuery(e.target).removeClass("elementor-draggable-over").removeAttr("data-dragged-element data-dragged-is-inner"),this.$el.removeClass("elementor-dragging-on-child")},onSortReceive:function onSortReceive(e,t){this.receiveSort(e,t,this.getSortedElementNewIndex(t.item))},onSortUpdate:function onSortUpdate(e,t){e.stopPropagation(),this.getChildViewContainer()[0]===t.item.parent()[0]&&this.updateSort(t,this.getSortedElementNewIndex(t.item))},onAddChild:function onAddChild(e){e.$el.attr("data-model-cid",e.model.cid)}}),e.exports=t},20708:(e,t,n)=>{"use strict";var r=n(18194).__;e.exports=Marionette.ItemView.extend({template:"#tmpl-elementor-empty-preview",className:"elementor-empty-view",events:{click:"onClickAdd"},behaviors:function behaviors(){return{contextMenu:{behaviorClass:n(81152),groups:this.getContextMenuGroups()}}},getContextMenuGroups:function getContextMenuGroups(){var e=this;return[{name:"general",actions:[{name:"paste",title:r("Paste","elementor"),isEnabled:function isEnabled(){return $e.components.get("document/elements").utils.isPasteEnabled(e._parent.getContainer())},callback:function callback(){return $e.run("document/ui/paste",{container:e._parent.getContainer()})}}]}]},onClickAdd:function onClickAdd(){$e.route("panel/elements/categories")}})},99722:(e,t,n)=>{"use strict";var r,o=n(18194).sprintf,a=n(18194).__,i=n(39872),u=n(83866),l=n(20708);r=u.extend({template:Marionette.TemplateCache.get("#tmpl-elementor-column-content"),emptyView:l,childViewContainer:elementorCommon.config.experimentalFeatures.e_dom_optimization?"> .elementor-widget-wrap":"> .elementor-column-wrap > .elementor-widget-wrap",toggleEditTools:!0,behaviors:function behaviors(){var behaviors=u.prototype.behaviors.apply(this,arguments);return _.extend(behaviors,{Sortable:{behaviorClass:n(92243),elChildType:"widget"},Resizable:{behaviorClass:n(63960)}}),elementor.hooks.applyFilters("elements/column/behaviors",behaviors,this)},className:function className(){var e=u.prototype.className.apply(this,arguments),t=this.isInner()?"inner":"top";return e+" elementor-column elementor-"+t+"-column"},tagName:function tagName(){return this.model.getSetting("html_tag")||"div"},ui:function ui(){var ui=u.prototype.ui.apply(this,arguments);return ui.columnInner=elementorCommon.config.experimentalFeatures.e_dom_optimization?"> .elementor-widget-wrap":"> .elementor-column-wrap",ui.percentsTooltip="> .elementor-element-overlay .elementor-column-percents-tooltip",ui},getEditButtons:function getEditButtons(){var e=elementor.getElementData(this.model),t={};return t.edit={title:o(a("Edit %s","elementor"),e.title),icon:"column"},elementor.getPreferences("edit_buttons")&&(t.duplicate={title:o(a("Duplicate %s","elementor"),e.title),icon:"clone"},t.add={title:o(a("Add %s","elementor"),e.title),icon:"plus"},t.remove={title:o(a("Delete %s","elementor"),e.title),icon:"close"}),t},initialize:function initialize(){u.prototype.initialize.apply(this,arguments),this.model.get("editSettings").set("defaultEditRoute","layout")},attachElContent:function attachElContent(){u.prototype.attachElContent.apply(this,arguments);var e=jQuery("<div>",{class:"elementor-column-percents-tooltip"});this.$el.children(".elementor-element-overlay").append(e)},getContextMenuGroups:function getContextMenuGroups(){var e=this,t=u.prototype.getContextMenuGroups.apply(this,arguments),n=t.indexOf(_.findWhere(t,{name:"general"}));return t.splice(n+1,0,{name:"addNew",actions:[{name:"addNew",icon:"eicon-plus",title:a("Add New Column","elementor"),callback:this.addNewColumn.bind(this),isEnabled:function isEnabled(){return e.model.collection.length<i.DEFAULT_MAX_COLUMNS}}]}),t},isDroppingAllowed:function isDroppingAllowed(){if(!this.getContainer().isEditable())return!1;var e=elementor.channels.panelElements.request("element:selected");if(!e)return!1;var t=e.model.get("elType");return"section"===t?!this.isInner():"widget"===t},getPercentsForDisplay:function getPercentsForDisplay(){return(+this.model.getSetting("_inline_size")||this.getPercentSize()).toFixed(1)+"%"},changeSizeUI:function changeSizeUI(){var e=this,t=e.model.getSetting("_column_size");e.$el.attr("data-col",t),_.defer((function(){e.ui.percentsTooltip&&e.ui.percentsTooltip.text(e.getPercentsForDisplay())}))},getPercentSize:function getPercentSize(e){return e||(e=this.el.getBoundingClientRect().width),+(e/this.$el.parent().width()*100).toFixed(3)},getSortableOptions:function getSortableOptions(){return{connectWith:".elementor-widget-wrap",items:"> .elementor-element"}},changeChildContainerClasses:function changeChildContainerClasses(){var e="elementor-element-empty",t="elementor-element-populated";this.ui.columnInner&&(this.collection.isEmpty()?this.ui.columnInner.removeClass(t).addClass(e):this.ui.columnInner.removeClass(e).addClass(t))},addNewColumn:function addNewColumn(){$e.run("document/elements/create",{model:{elType:"column"},container:this.getContainer().parent,options:{at:this.$el.index()+1}})},onRender:function onRender(){var e=this,t=elementorCommon.config.experimentalFeatures.e_dom_optimization,n="";n=t?" > .elementor-widget-wrap > .elementor-element, >.elementor-widget-wrap > .elementor-empty-view > .elementor-first-add":" > .elementor-column-wrap > .elementor-widget-wrap > .elementor-element, >.elementor-column-wrap > .elementor-widget-wrap > .elementor-empty-view > .elementor-first-add",u.prototype.onRender.apply(this,arguments),this.changeChildContainerClasses(),this.changeSizeUI(),this.$el.html5Droppable({items:n,axis:["vertical"],groups:["elementor-element"],isDroppingAllowed:this.isDroppingAllowed.bind(this),currentElementClass:"elementor-html5dnd-current-element",placeholderClass:"elementor-sortable-placeholder elementor-widget-placeholder",hasDraggingOnChildClass:"elementor-dragging-on-child",onDropping:function onDropping(n,r){r.stopPropagation(),elementor.getPreviewView().onPanelElementDragEnd();var o=jQuery(r.currentTarget).index();"bottom"!==n||t?"top"===n&&t&&o--:o++,e.addElementFromPanel({at:o})}})},onAddButtonClick:function onAddButtonClick(e){e.stopPropagation(),this.addNewColumn()}}),e.exports=r},39872:(e,t,n)=>{"use strict";var r=n(18194).sprintf,o=n(18194).__,a=n(67971);n(71954);var i=a(n(57846)),u=n(83866),l=u.extend({childViewContainer:function childViewContainer(){var e="> .elementor-container";return elementorCommon.config.experimentalFeatures.e_dom_optimization||(e+=" > .elementor-row"),e},template:Marionette.TemplateCache.get("#tmpl-elementor-section-content"),addSectionView:null,_checkIsFull:function _checkIsFull(){this.toggleSectionIsFull(),elementorCommon.helpers.softDeprecated("_checkIsFull","2.9.0","toggleSectionIsFull()")},toggleSectionIsFull:function toggleSectionIsFull(){this.$el.toggleClass("elementor-section-filled",this.isCollectionFilled())},addChildModel:function addChildModel(e){var t=e instanceof Backbone.Model,n=this.isInner();return t?e.set("isInner",n):e.isInner=n,u.prototype.addChildModel.apply(this,arguments)},className:function className(){var e=u.prototype.className.apply(this,arguments),t=this.isInner()?"inner":"top";return e+" elementor-section elementor-"+t+"-section"},tagName:function tagName(){return this.model.getSetting("html_tag")||"section"},behaviors:function behaviors(){var behaviors=u.prototype.behaviors.apply(this,arguments);return _.extend(behaviors,{Sortable:{behaviorClass:n(92243),elChildType:"column"}}),elementor.hooks.applyFilters("elements/section/behaviors",behaviors,this)},initialize:function initialize(){u.prototype.initialize.apply(this,arguments),this.model.get("editSettings").set("defaultEditRoute","layout")},getEditButtons:function getEditButtons(){var e=elementor.getElementData(this.model),t={};return this.isInner()||(t.add={title:r(o("Add %s","elementor"),e.title),icon:"plus"}),t.edit={title:r(o("Edit %s","elementor"),e.title),icon:"handle"},elementor.getPreferences("edit_buttons")&&(t.duplicate={title:r(o("Duplicate %s","elementor"),e.title),icon:"clone"}),t.remove={title:r(o("Delete %s","elementor"),e.title),icon:"close"},t},getContextMenuGroups:function getContextMenuGroups(){var e=u.prototype.getContextMenuGroups.apply(this,arguments),t=e.indexOf(_.findWhere(e,{name:"clipboard"}));return e.splice(t+1,0,{name:"save",actions:[{name:"save",title:o("Save as Template","elementor"),callback:this.save.bind(this)}]}),e},getSortableOptions:function getSortableOptions(){return{connectWith:(this.isInner()?".elementor-inner-section":".elementor-top-section")+this.childViewContainer(),handle:"> .elementor-element-overlay .elementor-editor-element-edit",items:"> .elementor-column",forcePlaceholderSize:!0,tolerance:"pointer"}},getColumnPercentSize:function getColumnPercentSize(e,t){return+(t/e.parent().width()*100).toFixed(3)},getDefaultStructure:function getDefaultStructure(){return this.collection.length+"0"},getStructure:function getStructure(){return this.model.getSetting("structure")},getColumnAt:function getColumnAt(e){var t=this.collection.at(e);return t?this.children.findByModelCid(t.cid):null},getNextColumn:function getNextColumn(e){return this.getColumnAt(this.collection.indexOf(e.model)+1)},getPreviousColumn:function getPreviousColumn(e){return this.getColumnAt(this.collection.indexOf(e.model)-1)},getNeighborContainer:function getNeighborContainer(e){var t=e.parent.view,n=t.getNextColumn(e.view)||t.getPreviousColumn(e.view);return!!n&&n.getContainer()},setStructure:function setStructure(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=elementor.presetsFactory.getParsedStructure(e);if(+n.columnsCount!==this.collection.length)throw new TypeError("The provided structure doesn't match the columns count.");$e.run("document/elements/settings",{container:this.getContainer(),settings:{structure:e},options:{external:!0}}),t&&this.adjustColumns()},adjustColumns:function adjustColumns(){var e=elementor.presetsFactory.getPresetByStructure(this.getStructure());this.children.each((function(t,n){var r=t.getContainer();$e.run("document/elements/settings",{container:r,settings:{_column_size:e.preset[n],_inline_size:null}})}))},resetLayout:function resetLayout(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.setStructure(this.getDefaultStructure(),e)},resetColumnsCustomSize:function resetColumnsCustomSize(){this.children.each((function(e){$e.run("document/elements/settings",{container:e.getContainer(),settings:{_inline_size:null},options:{external:!0}})}))},isCollectionFilled:function isCollectionFilled(){return 10<=this.collection.length},showChildrenPercentsTooltip:function showChildrenPercentsTooltip(e,t){e.ui.percentsTooltip.show(),e.ui.percentsTooltip.attr("data-side",elementorCommon.config.isRTL?"right":"left"),t.ui.percentsTooltip.show(),t.ui.percentsTooltip.attr("data-side",elementorCommon.config.isRTL?"left":"right")},hideChildrenPercentsTooltip:function hideChildrenPercentsTooltip(e,t){e.ui.percentsTooltip.hide(),t.ui.percentsTooltip.hide()},destroyAddSectionView:function destroyAddSectionView(){this.addSectionView&&!this.addSectionView.isDestroyed&&this.addSectionView.destroy()},onRender:function onRender(){u.prototype.onRender.apply(this,arguments),this.toggleSectionIsFull()},onAddButtonClick:function onAddButtonClick(){if(!this.addSectionView||this.addSectionView.isDestroyed){var e=new i.default({at:this.model.collection.indexOf(this.model)});e.render(),this.$el.before(e.$el),e.$el.hide(),setTimeout((function(){e.$el.slideDown(null,(function(){jQuery(this).css("display","")}))})),this.addSectionView=e}else this.addSectionView.fadeToDeath()},onChildviewRequestResizeStart:function onChildviewRequestResizeStart(e){var t=this.getNextColumn(e);if(t){this.showChildrenPercentsTooltip(e,t);var n=e.$el.find("iframe").add(t.$el.find("iframe"));elementor.helpers.disableElementEvents(n)}},onChildviewRequestResizeStop:function onChildviewRequestResizeStop(e){var t=this.getNextColumn(e);if(t){this.hideChildrenPercentsTooltip(e,t);var n=e.$el.find("iframe").add(t.$el.find("iframe"));elementor.helpers.enableElementEvents(n)}},onChildviewRequestResize:function onChildviewRequestResize(e,t){t.element.css({width:"",left:"initial"}),$e.run("document/elements/settings",{container:e.getContainer(),settings:{_inline_size:this.getColumnPercentSize(t.element,t.size.width)}})},onDestroy:function onDestroy(){u.prototype.onDestroy.apply(this,arguments),this.destroyAddSectionView()}});e.exports=l,e.exports.DEFAULT_INNER_SECTION_COLUMNS=2,e.exports.DEFAULT_MIN_COLUMN_SIZE=2,e.exports.DEFAULT_MAX_COLUMNS=10},6430:(e,t,n)=>{"use strict";n(99745),e.exports=elementorModules.Module.extend({getDefaultSettings:function getDefaultSettings(){return{actions:{},classes:{list:"elementor-context-menu-list",group:"elementor-context-menu-list__group",groupPrefix:"elementor-context-menu-list__group-",item:"elementor-context-menu-list__item",itemTypePrefix:"elementor-context-menu-list__item-",itemTitle:"elementor-context-menu-list__item__title",itemShortcut:"elementor-context-menu-list__item__shortcut",iconShortcut:"elementor-context-menu-list__item__icon",itemDisabled:"elementor-context-menu-list__item--disabled",divider:"elementor-context-menu-list__divider",hidden:"elementor-hidden"}}},buildActionItem:function buildActionItem(e){var t=this,n=t.getSettings("classes"),r=jQuery("<div>",{class:n.item+" "+n.itemTypePrefix+e.name}),o=jQuery("<div>",{class:n.itemTitle}).text(e.title),a=jQuery("<div>",{class:n.iconShortcut});if(e.icon&&a.html(jQuery("<i>",{class:e.icon})),r.append(a,o),e.shortcut){var i=jQuery("<div>",{class:n.itemShortcut}).html(e.shortcut);r.append(i)}return e.callback&&r.on("click",(function(){t.runAction(e)})),e.$item=r,r},buildActionsList:function buildActionsList(){var e=this,t=e.getSettings("classes"),n=e.getSettings("groups"),r=jQuery("<div>",{class:t.list});return n.forEach((function(n){var o=jQuery("<div>",{class:t.group+" "+t.groupPrefix+n.name});n.actions.forEach((function(t){o.append(e.buildActionItem(t))})),r.append(o),n.$item=o})),r},toggleGroupVisibility:function toggleGroupVisibility(e,t){e.$item.toggleClass(this.getSettings("classes.hidden"),!t)},toggleActionVisibility:function toggleActionVisibility(e,t){e.$item.toggleClass(this.getSettings("classes.hidden"),!t)},toggleActionUsability:function toggleActionUsability(e,t){e.$item.toggleClass(this.getSettings("classes.itemDisabled"),!t)},isActionEnabled:function isActionEnabled(e){return!(!e.callback&&!e.groups)&&(!e.isEnabled||e.isEnabled())},runAction:function runAction(e){this.isActionEnabled(e)&&(e.callback(),this.getModal().hide())},initModal:function initModal(){var e;this.getModal=function(){return e||(e=elementorCommon.dialogsManager.createWidget("simple",{className:"elementor-context-menu",message:this.buildActionsList(),iframe:elementor.$preview,effects:{hide:"hide",show:"show"},hide:{onOutsideContextMenu:!0},position:{my:(elementorCommon.config.isRTL?"right":"left")+" top",collision:"fit"}})),e}},show:function show(e){var t=this,n=t.getModal();n.setSettings("position",{of:e}),t.getSettings("groups").forEach((function(e){var n=!1!==e.isVisible;t.toggleGroupVisibility(e,n),n&&e.actions.forEach((function(e){var n=!1!==e.isVisible;t.toggleActionVisibility(e,n),n&&t.toggleActionUsability(e,t.isActionEnabled(e))}))})),n.show()},destroy:function destroy(){this.getModal().destroy()},onInit:function onInit(){this.initModal()}})},99292:(e,t,n)=>{"use strict";var r=n(67971),o=r(n(47834)),a=r(n(38923)),i=r(n(83452));n(71954),n(99745),n(84208),n(64828),n(55506);var u,l=n(34533);u=elementorModules.ViewModule.extend({stylesheet:null,getDefaultSettings:function getDefaultSettings(){return{id:0,context:null,settingsModel:null,dynamicParsing:{}}},getDefaultElements:function getDefaultElements(){var e="elementor-style-".concat(this.getSettings("id")),t=elementor.$previewContents.find("#".concat(e));return t.length||(t=jQuery("<style>",{id:e})),{$stylesheetElement:t}},initStylesheet:function initStylesheet(){var e=this,t=elementorFrontend.config.responsive.activeBreakpoints;this.stylesheet=new l,(0,a.default)(t).forEach((function(t){var n=(0,o.default)(t,2),r=n[0],a=n[1];e.stylesheet.addDevice(r,a.value)}))},addStyleRules:function addStyleRules(e,t,n,r,o){var a=this,i=this.getSettings("settingsModel").parseDynamicSettings(t,this.getSettings("dynamicParsing"),e);_.each(e,(function(e){var u,l;if(e.styleFields&&e.styleFields.length&&a.addRepeaterControlsStyleRules(t[e.name],e.styleFields,e.fields,r,o),null!==(u=e.dynamic)&&void 0!==u&&u.active&&null!==(l=t.__dynamic__)&&void 0!==l&&l[e.name]&&a.addDynamicControlStyleRules(t.__dynamic__[e.name],e),e.selectors){var s,c=a.getSettings("context");c&&(s=c.model.get("settings").get("__globals__")),a.addControlStyleRules(e,i,n,r,o,s)}}))},addControlStyleRules:function addControlStyleRules(e,t,n,r,o,a){var u,l,s=this;if(a){var c=e.name;e.groupType&&(c=e.groupPrefix+e.groupType),u=a[c]}(u||void 0!==(l=this.getStyleControlValue(e,t)))&&_.each(e.selectors,(function(a,c){var d;if(u){var f=s.getSelectorGlobalValue(e,u);f&&("font"===e.type&&$e.data.get(u).then((function(e){elementor.helpers.enqueueFont(e.data.value.typography_font_family)})),d=a.replace(/(:)[^;]+(;?)/g,"$1"+f+"$2"))}else try{d=a.replace(/{{(?:([^.}]+)\.)?([^}| ]*)(?: *\|\| *(?:([^.}]+)\.)?([^}| ]*) *)*}}/g,(function(r,o,a,i,u){var c=o&&!n[o],d="";if(c||(d=s.parsePropertyPlaceholder(e,l,n,t,a,o)),!d&&0!==d){if(u){var f=(d=u).match(/^(['"])(.*)\1$/);if(f)d=f[2];else if(!isFinite(d)){if(i&&!n[i])return"";d=s.parsePropertyPlaceholder(e,l,n,t,u,i)}}if(!d&&0!==d){if(c)return"";throw""}}return"font"===e.type&&elementor.helpers.enqueueFont(d),d}))}catch(e){return}if(!_.isEmpty(d)){var p=/^(?:\([^)]+\)){1,2}/,v=c.match(p),m={};if(v){v=v[0],c=c.replace(p,"");var g,h=/\(([^)]+)\)/g,y=[];for(g=h.exec(v);g;)y.push(g[1]),g=h.exec(v);_.each(y,(function(e){if("desktop"!==e){var t=e.replace(/\+$/,"");m[t===e?"max":"min"]=t}}))}_.each(r,(function(e,t){var n=e.source?e.source:e,r=new RegExp(n,"g");c=c.replace(r,o[t])})),!(0,i.default)(m).length&&e.responsive&&"desktop"===(m=_.pick(elementorCommon.helpers.cloneObject(e.responsive),["min","max"])).max&&delete m.max,s.stylesheet.addRules(c,d,m)}}))},parsePropertyPlaceholder:function parsePropertyPlaceholder(e,t,n,r,o,a){return a&&(e=_.findWhere(n,{name:a}),t=this.getStyleControlValue(e,r)),elementor.getControlView(e.type).getStyleValue(o,t,e)},getStyleControlValue:function getStyleControlValue(e,t){var n,r,o,a,i=null===(n=this.getSettings())||void 0===n||null===(r=n.context)||void 0===r?void 0:r.container,u=null==i?void 0:i.isGlobalApplied(e.name),l=(null===(o=t.__globals__)||void 0===o?void 0:o[e.name])||(null===(a=e.global)||void 0===a?void 0:a.default);if(u&&l)return this.getSelectorGlobalValue(e,l);var s=t[e.name];return e.selectors_dictionary&&(s=e.selectors_dictionary[s]||s),_.isNumber(s)||!_.isEmpty(s)?s:void 0},getSelectorGlobalValue:function getSelectorGlobalValue(e,t){var n=$e.data.commandExtractArgs(t),r=$e.data.getCache($e.components.get("globals"),n.command,n.args.query);if(null!=r&&r.value){var o,a=r.id;if(e.groupType){var i=elementor.breakpoints.getActiveMatchRegex(),u=e.name.replace(e.groupPrefix,"").replace(i,"");if(!r.value[elementor.config.kit_config.typography_prefix+u])return;u=u.replace("_","-"),o="var( --e-global-".concat(e.groupType,"-").concat(a,"-").concat(u," )"),elementor.config.ui.defaultGenericFonts&&e.groupPrefix+"font_family"===e.name&&(o+=", ".concat(elementor.config.ui.defaultGenericFonts))}else o="var( --e-global-".concat(e.type,"-").concat(a," )");return o}},addRepeaterControlsStyleRules:function addRepeaterControlsStyleRules(e,t,n,r,o){var a=this;t.forEach((function(t,i){var u=e.models[i];a.addStyleRules(t,u.attributes,n,r.concat(["{{CURRENT_ITEM}}"]),o.concat([".elementor-repeater-item-"+u.get("_id")]))}))},addDynamicControlStyleRules:function addDynamicControlStyleRules(e,t){var n=this;elementor.dynamicTags.parseTagsText(e,t.dynamic,(function(e,t,r){var o=elementor.dynamicTags.createTag(e,t,r);if(o){var a=o.model;a.getStyleControls().length&&n.addStyleRules(a.getStyleControls(),a.attributes,a.controls,["{{WRAPPER}}"],["#elementor-tag-"+e])}}))},addStyleToDocument:function addStyleToDocument(e){var t=elementor.$previewContents.find("head"),n="append",r=t;if(e){var o=t.children(e.of);o.length&&(n=e.at,r=o)}r[n](this.elements.$stylesheetElement);var a=elementor.hooks.applyFilters("editor/style/styleText","",this.getSettings("context"));this.elements.$stylesheetElement.text(this.stylesheet+a)},removeStyleFromDocument:function removeStyleFromDocument(){this.elements.$stylesheetElement.remove()},onInit:function onInit(){elementorModules.ViewModule.prototype.onInit.apply(this,arguments),this.initStylesheet()}}),e.exports=u},34533:(e,t,n)=>{"use strict";var r,o,a=n(67971)(n(83452));n(64434),n(99236),n(64828),n(84208),n(76139),n(44321),r=jQuery,(o=function Stylesheet(){var e=this,t={},n={},o={},i=function hashToQuery(e){var t={};return(e=e.split("-").filter(String)).forEach((function(e){var n=e.split(/_(.+)/),r=n[0],a=n[1];t[r]="max"===r?o[a]:elementorFrontend.breakpoints.getDeviceMinBreakpoint(a)})),t};this.addDevice=function(t,n){o[t]=n;var r=(0,a.default)(o);if(r.length<2)return e;r.sort((function(e,t){return o[e]-o[t]}));var i={};return r.forEach((function(e){i[e]=o[e]})),o=i,e},this.addRawCSS=function(e,t){n[e]=t},this.addRules=function(n,o,u){var l="all";if(_.isEmpty(u)||(l=function queryToHash(e){var t=[];return r.each(e,(function(e){t.push(e+"_"+this)})),t.join("-")}(u)),t[l]||function addQueryHash(e){t[e]={};var n=(0,a.default)(t);if(!(n.length<2)){n.sort((function(e,t){if("all"===e)return-1;if("all"===t)return 1;var n=i(e);return i(t).max-n.max}));var r={};n.forEach((function(e){r[e]=t[e]})),t=r}}(l),o){if(t[l][n]||(t[l][n]={}),"string"==typeof o){o=o.split(";").filter(String);var s={};try{r.each(o,(function(){var e=this.split(/:(.*)?/);s[e[0].trim()]=e[1].trim().replace(";","")}))}catch(e){return}o=s}return r.extend(t[l][n],o),e}var c=n.match(/[^{]+\{[^}]+}/g);r.each(c,(function(){var t=this.match(/([^{]+)\{([^}]+)}/);t&&e.addRules(t[1].trim(),t[2].trim(),u)}))},this.getRules=function(){return t},this.empty=function(){t={},n={}},this.toString=function(){var e="";return r.each(t,(function(t){var n=Stylesheet.parseRules(this);"all"!==t&&(n=function getQueryHashStyleFormat(e){var t=i(e),n=[];return r.each(t,(function(e){n.push("("+e+"-width:"+this+"px)")})),"@media"+n.join(" and ")}(t)+"{"+n+"}"),e+=n})),r.each(n,(function(){e+=this})),e}}).parseRules=function(e){var t="";return r.each(e,(function(e){var n=o.parseProperties(this);n&&(t+=e+"{"+n+"}")})),t},o.parseProperties=function(e){var t="";return r.each(e,(function(e){this&&(t+=e+":"+this+";")})),t},e.exports=o},59113:(e,t,n)=>{"use strict";var r=n(18194).__,o=n(67394),a=n(67971);o(t,"__esModule",{value:!0}),t.default=void 0;var i=a(n(15149)),u=a(n(11959)),l=a(n(39041)),s=a(n(77371)),c=a(n(68537)),d=function(e){(0,s.default)(AddSectionBase,e);var t=(0,c.default)(AddSectionBase);function AddSectionBase(){return(0,u.default)(this,AddSectionBase),t.apply(this,arguments)}return(0,l.default)(AddSectionBase,[{key:"template",value:function template(){return Marionette.TemplateCache.get("#tmpl-elementor-add-section")}},{key:"attributes",value:function attributes(){return{"data-view":"choose-action"}}},{key:"ui",value:function ui(){return{addNewSection:".elementor-add-new-section",closeButton:".elementor-add-section-close",addSectionButton:".elementor-add-section-button",addTemplateButton:".elementor-add-template-button",selectPreset:".elementor-select-preset",presets:".elementor-preset"}}},{key:"events",value:function events(){return{"click @ui.addSectionButton":"onAddSectionButtonClick","click @ui.addTemplateButton":"onAddTemplateButtonClick","click @ui.closeButton":"onCloseButtonClick","click @ui.presets":"onPresetSelected"}}},{key:"behaviors",value:function behaviors(){return{contextMenu:{behaviorClass:n(81152),groups:this.getContextMenuGroups()}}}},{key:"className",value:function className(){return"elementor-add-section elementor-visible-desktop"}},{key:"setView",value:function setView(e){this.$el.attr("data-view",e)}},{key:"showSelectPresets",value:function showSelectPresets(){this.setView("select-preset")}},{key:"closeSelectPresets",value:function closeSelectPresets(){this.setView("choose-action")}},{key:"getTemplatesModalOptions",value:function getTemplatesModalOptions(){return{importOptions:{at:this.getOption("at")}}}},{key:"getContextMenuGroups",value:function getContextMenuGroups(){var e=this,t=function hasContent(){return elementor.elements.length>0};return[{name:"paste",actions:[{name:"paste",title:r("Paste","elementor"),isEnabled:function isEnabled(){return $e.components.get("document/elements").utils.isPasteEnabled(elementor.getPreviewContainer())},callback:function callback(){return $e.run("document/ui/paste",{container:elementor.getPreviewContainer(),options:{at:e.getOption("at"),rebuild:!0},onAfter:function onAfter(){return e.onAfterPaste()}})}}]},{name:"content",actions:[{name:"copy_all_content",title:r("Copy All Content","elementor"),isEnabled:t,callback:function callback(){return $e.run("document/elements/copy-all")}},{name:"delete_all_content",title:r("Delete All Content","elementor"),isEnabled:t,callback:function callback(){return $e.run("document/elements/empty")}}]}]}},{key:"onAddSectionButtonClick",value:function onAddSectionButtonClick(){this.showSelectPresets()}},{key:"onAddTemplateButtonClick",value:function onAddTemplateButtonClick(){$e.run("library/open",this.getTemplatesModalOptions())}},{key:"onRender",value:function onRender(){this.$el.html5Droppable({axis:["vertical"],groups:["elementor-element"],placeholder:!1,currentElementClass:"elementor-html5dnd-current-element",hasDraggingOnChildClass:"elementor-dragging-on-child",onDropping:this.onDropping.bind(this)})}},{key:"onPresetSelected",value:function onPresetSelected(e){this.closeSelectPresets();var t=e.currentTarget.dataset.structure,n=elementor.presetsFactory.getParsedStructure(t);$e.run("document/elements/create",{model:{elType:"section"},container:elementor.getPreviewContainer(),columns:n.columnsCount,structure:t,options:(0,i.default)({},this.options)})}},{key:"onDropping",value:function onDropping(){if(!elementor.helpers.maybeDisableWidget()){var e=elementor.channels.panelElements.request("element:selected"),t=$e.internal("document/history/start-log",{type:"add",title:elementor.helpers.getModelLabel(e.model)});$e.run("document/elements/create",{model:{elType:"section"},container:elementor.getPreviewContainer(),columns:1,options:{at:this.getOption("at"),trigger:{beforeAdd:"section:before:drop",afterAdd:"section:after:drop"}}}).view.children.findByIndex(0).addElementFromPanel(),$e.internal("document/history/end-log",{id:t})}}},{key:"onAfterPaste",value:function onAfterPaste(){}}]),AddSectionBase}(Marionette.ItemView);t.default=d},57846:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(76700)),l=o(n(44263)),s=o(n(77371)),c=o(n(68537)),d=function(e){(0,s.default)(AddSectionView,e);var t=(0,c.default)(AddSectionView);function AddSectionView(){return(0,a.default)(this,AddSectionView),t.apply(this,arguments)}return(0,i.default)(AddSectionView,[{key:"className",value:function className(){return(0,u.default)((0,l.default)(AddSectionView.prototype),"className",this).call(this)+" elementor-add-section-inline"}},{key:"fadeToDeath",value:function fadeToDeath(){var e=this;e.$el.slideUp((function(){e.destroy()}))}},{key:"onAfterPaste",value:function onAfterPaste(){(0,u.default)((0,l.default)(AddSectionView.prototype),"onAfterPaste",this).call(this),this.destroy()}},{key:"onCloseButtonClick",value:function onCloseButtonClick(){this.fadeToDeath()}},{key:"onPresetSelected",value:function onPresetSelected(e){(0,u.default)((0,l.default)(AddSectionView.prototype),"onPresetSelected",this).call(this,e),this.destroy()}},{key:"onAddTemplateButtonClick",value:function onAddTemplateButtonClick(){(0,u.default)((0,l.default)(AddSectionView.prototype),"onAddTemplateButtonClick",this).call(this),this.destroy()}},{key:"onDropping",value:function onDropping(){(0,u.default)((0,l.default)(AddSectionView.prototype),"onDropping",this).call(this),this.destroy()}}]),AddSectionView}(o(n(59113)).default);t.default=d},47071:(e,t,n)=>{"use strict";var r=n(67971)(n(83452));e.exports=Marionette.CompositeView.extend({templateHelpers:function templateHelpers(){return{view:this}},getBehavior:function getBehavior(e){return this._behaviors[(0,r.default)(this.behaviors()).indexOf(e)]},initialize:function initialize(){this.collection=this.model.get("elements")},addChildModel:function addChildModel(e,t){return this.collection.add(e,t,!0)},addElement:function addElement(e,t){if(!this.isCollectionFilled()){t=jQuery.extend({trigger:!1,edit:!0,onBeforeAdd:null,onAfterAdd:null},t);var n,r,o=this.getChildType();if(e instanceof Backbone.Model?r=(n=e).get("elType"):(n={id:elementorCommon.helpers.getUniqueId(),elType:o[0],settings:{},elements:[]},e&&jQuery.extend(n,e),r=n.elType),-1===o.indexOf(r))return this.children.last().addElement(n,t);t.clone&&(n=this.cloneItem(n)),t.trigger&&elementor.channels.data.trigger(t.trigger.beforeAdd,n),t.onBeforeAdd&&t.onBeforeAdd();var a=this.addChildModel(n,{at:t.at}),i=this.children.findByModel(a);return t.onAfterAdd&&t.onAfterAdd(a,i),t.trigger&&elementor.channels.data.trigger(t.trigger.afterAdd,n),t.edit&&elementor.documents.getCurrent().history.getActive()&&(i.getContainer(),a.trigger("request:edit")),i}},addChildElement:function addChildElement(e,t){elementorCommon.helpers.softDeprecated("addChildElement","2.8.0","$e.run( 'document/elements/create' )"),Object!==e.constructor&&(e=jQuery.extend({},e)),$e.run("document/elements/create",{container:this.getContainer(),model:e,options:t})},cloneItem:function cloneItem(e){var t=this;return e instanceof Backbone.Model?e.clone():(e.id=elementorCommon.helpers.getUniqueId(),e.settings._element_id="",e.elements.forEach((function(n,r){e.elements[r]=t.cloneItem(n)})),e)},lookup:function lookup(){var e=this;return e.isDisconnected()&&(e=$e.components.get("document").utils.findViewById(e.model.id)),e},isDisconnected:function isDisconnected(){return this.isDestroyed||!this.el.isConnected},isCollectionFilled:function isCollectionFilled(){return!1}})},42618:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=void 0;var a=o(n(24596)),i=o(n(11959)),u=o(n(39041)),l=o(n(77371)),s=o(n(68537)),c=function(e){(0,l.default)(ArgsObject,e);var t=(0,s.default)(ArgsObject);function ArgsObject(e){var n;return(0,i.default)(this,ArgsObject),(n=t.call(this)).args=e,n}return(0,u.default)(ArgsObject,[{key:"requireArgument",value:function requireArgument(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.args;if(!t.hasOwnProperty(e))throw Error("".concat(e," is required."))}},{key:"requireArgumentType",value:function requireArgumentType(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.args;if(this.requireArgument(e,n),(0,a.default)(n[e])!==t)throw Error("".concat(e," invalid type: ").concat(t,"."))}},{key:"requireArgumentInstance",value:function requireArgumentInstance(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.args;if(this.requireArgument(e,n),!(n[e]instanceof t))throw Error("".concat(e," invalid instance."))}},{key:"requireArgumentConstructor",value:function requireArgumentConstructor(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.args;if(this.requireArgument(e,n),n[e].constructor!==t)throw Error("".concat(e," invalid constructor type."))}}],[{key:"getInstanceType",value:function getInstanceType(){return"ArgsObject"}}]),ArgsObject}(o(n(27597)).default);t.default=c},27597:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=void 0;var a=o(n(29363)),i=o(n(59396));n(99745);var u=o(n(11959)),l=o(n(39041)),s=o(n(76700)),c=o(n(44263)),d=function(){function InstanceType(){var e=this;(0,u.default)(this,InstanceType);for(var t=this instanceof InstanceType?this.constructor:void 0,n=[];t.__proto__&&t.__proto__.name;)n.push(t.__proto__),t=t.__proto__;n.reverse().forEach((function(t){return e instanceof t}))}return(0,l.default)(InstanceType,null,[{key:a.default,value:function value(e){var t=(0,s.default)((0,c.default)(InstanceType),a.default,this).call(this,e);if(e&&!e.constructor.getInstanceType)return t;if(e&&(e.instanceTypes||(e.instanceTypes=[]),t||this.getInstanceType()===e.constructor.getInstanceType()&&(t=!0),t)){var n=this.getInstanceType===InstanceType.getInstanceType?"BaseInstanceType":this.getInstanceType();-1===e.instanceTypes.indexOf(n)&&e.instanceTypes.push(n)}return!t&&e&&(t=e.instanceTypes&&(0,i.default)(e.instanceTypes)&&-1!==e.instanceTypes.indexOf(this.getInstanceType())),t}},{key:"getInstanceType",value:function getInstanceType(){elementorModules.ForceMethodImplementation()}}]),InstanceType}();t.default=d},68689:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=void 0;var a=o(n(57135));n(64434),n(37472),n(76139),n(12897),n(93085);var i=o(n(59396)),u=o(n(73220)),l=o(n(24596)),s=o(n(49117)),c=o(n(11959)),d=o(n(39041)),f=o(n(38852)),p=o(n(77371)),v=o(n(68537)),m=o(n(18042)),g=function(e){(0,p.default)(CommandBase,e);var t=(0,v.default)(CommandBase);function CommandBase(e){var n,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:$e.commands;return(0,c.default)(this,CommandBase),n=t.call(this,e),(0,m.default)((0,f.default)(n),"component",void 0),n.currentCommand=r.getCurrentLast(),n.component=r.getComponent(n.currentCommand),n.initialize(e),e=n.args,n.validateArgs(e),n}return(0,d.default)(CommandBase,[{key:"requireContainer",value:function requireContainer(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.args;if(!t.container&&!t.containers)throw Error("container or containers are required.");if(t.container&&t.containers)throw Error("container and containers cannot go together please select one of them.");var n=t.containers||[t.container];n.forEach((function(t){e.requireArgumentInstance("container",elementorModules.editor.Container,{container:t})}))}},{key:"initialize",value:function initialize(){}},{key:"validateArgs",value:function validateArgs(){}},{key:"isDataChanged",value:function isDataChanged(){return!1}},{key:"apply",value:function apply(){elementorModules.ForceMethodImplementation()}},{key:"run",value:function run(){var e;this.onBeforeRun(this.args);try{this.onBeforeApply(this.args),e=this.apply(this.args)}catch(e){if(this.onCatchApply(e),e instanceof $e.modules.HookBreak)return!1}return this.runAfter(e)}},{key:"runAfter",value:function runAfter(e){var t=this,n=function onAfter(e){t.onAfterApply(t.args,e),t.isDataChanged()&&$e.internal("document/save/set-is-modified",{status:!0}),t.onAfterRun(t.args,e)},r=function(){var e=(0,s.default)(a.default.mark((function _callee(e){var n,r;return a.default.wrap((function _callee$(o){for(;;)switch(o.prev=o.next){case 0:if(n=t.onAfterApply(t.args,e),!(r=(0,i.default)(n)?n.flat().filter((function(e){return e instanceof u.default})):[]).length){o.next=4;break}return o.next=4,u.default.all(r);case 4:t.isDataChanged()&&$e.internal("document/save/set-is-modified",{status:!0}),t.onAfterRun(t.args,e);case 6:case"end":return o.stop()}}),_callee)})));return function asyncOnAfter(t){return e.apply(this,arguments)}}();if(e&&"object"===(0,l.default)(e)&&e.promise&&e.then&&e.fail)e.fail(this.onCatchApply.bind(this)),e.done(n);else{if(e instanceof u.default)return(0,s.default)(a.default.mark((function _callee2(){return a.default.wrap((function _callee2$(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,e.catch(t.onCatchApply.bind(t));case 2:return n.next=4,e.then((function(e){return r(e)}));case 4:return n.abrupt("return",e);case 5:case"end":return n.stop()}}),_callee2)})))();n(e)}return e}},{key:"runCatchHooks",value:function runCatchHooks(e){$e.hooks.runDataCatch(this.currentCommand,this.args,e),$e.hooks.runUICatch(this.currentCommand,this.args,e)}},{key:"onBeforeRun",value:function onBeforeRun(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};$e.hooks.runUIBefore(this.currentCommand,e)}},{key:"onAfterRun",value:function onAfterRun(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;$e.hooks.runUIAfter(this.currentCommand,e,t)}},{key:"onBeforeApply",value:function onBeforeApply(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};$e.hooks.runDataDependency(this.currentCommand,e)}},{key:"onAfterApply",value:function onAfterApply(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;return $e.hooks.runDataAfter(this.currentCommand,e,t)}},{key:"onCatchApply",value:function onCatchApply(e){this.runCatchHooks(e),elementorCommon.helpers.consoleError(e)}}],[{key:"getInstanceType",value:function getInstanceType(){return"CommandBase"}},{key:"getInfo",value:function getInfo(){return{}}}]),CommandBase}(o(n(42618)).default);t.default=g},79314:(e,t,n)=>{"use strict";var r=n(67394),o=n(52369),a=n(67971);r(t,"__esModule",{value:!0}),t.default=void 0,n(71954);var i=a(n(15149)),u=a(n(35657)),l=a(n(11959)),s=a(n(39041)),c=a(n(38852)),d=a(n(77371)),f=a(n(68537)),p=a(n(18042)),v=a(n(68689)),m=o(n(43861)),g=function(e){(0,d.default)(CommandData,e);var t=(0,f.default)(CommandData);function CommandData(e){var n,r,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:$e.data;return(0,l.default)(this,CommandData),r=t.call(this,e,o),(0,p.default)((0,c.default)(r),"data",void 0),(0,p.default)((0,c.default)(r),"type",void 0),null!==(n=r.args.options)&&void 0!==n&&n.type&&(r.type=r.args.options.type),r}return(0,s.default)(CommandData,[{key:"getApplyMethods",value:function getApplyMethods(){var e,t,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.type;switch(n){case"create":e=this.applyBeforeCreate,t=this.applyAfterCreate;break;case"delete":e=this.applyBeforeDelete,t=this.applyAfterDelete;break;case"get":e=this.applyBeforeGet,t=this.applyAfterGet;break;case"update":e=this.applyBeforeUpdate,t=this.applyAfterUpdate;break;case"options":e=this.applyBeforeOptions,t=this.applyAfterOptions;break;default:return!1}return{before:e,after:t}}},{key:"getRequestData",value:function getRequestData(){return{type:this.type,args:this.args,timestamp:(new Date).getTime(),component:this.component,command:this.currentCommand,endpoint:$e.data.commandToEndpoint(this.currentCommand,elementorCommon.helpers.cloneObject(this.args),this.constructor.getEndpointFormat())}}},{key:"apply",value:function apply(){var e=this,t=this.getApplyMethods();this.args=t.before(this.args);var n=this.getRequestData();return $e.data.fetch(n).then((function(r){return e.data=r,e.data=t.after(r,e.args),e.data={data:e.data},e.data=(0,i.default)({__requestData__:n},e.data),e.data}))}},{key:"applyBeforeCreate",value:function applyBeforeCreate(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e}},{key:"applyAfterCreate",value:function applyAfterCreate(e){return e}},{key:"applyBeforeDelete",value:function applyBeforeDelete(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e}},{key:"applyAfterDelete",value:function applyAfterDelete(e){return e}},{key:"applyBeforeGet",value:function applyBeforeGet(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e}},{key:"applyAfterGet",value:function applyAfterGet(e){return e}},{key:"applyBeforeUpdate",value:function applyBeforeUpdate(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e}},{key:"applyAfterUpdate",value:function applyAfterUpdate(e){return e}},{key:"applyBeforeOptions",value:function applyBeforeOptions(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e}},{key:"applyAfterOptions",value:function applyAfterOptions(e){return e}},{key:"onCatchApply",value:function onCatchApply(e){var t,n,r=(null===(t=e)||void 0===t||null===(n=t.data)||void 0===n?void 0:n.status)||0,o=(0,u.default)(m).find((function(e){return e.getStatus()===r}));o||(o=m.DefaultError),e=o.create(e.message,e.code,e.data||[]),this.runCatchHooks(e),e.notify()}}],[{key:"getInstanceType",value:function getInstanceType(){return"CommandData"}},{key:"getEndpointFormat",value:function getEndpointFormat(){return null}}]),CommandData}(v.default);t.default=g},23714:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(CommandInternalBase,e);var t=(0,l.default)(CommandInternalBase);function CommandInternalBase(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:$e.commandsInternal;return(0,a.default)(this,CommandInternalBase),t.call(this,e,n)}return(0,i.default)(CommandInternalBase,null,[{key:"getInstanceType",value:function getInstanceType(){return"CommandInternalBase"}}]),CommandInternalBase}(o(n(68689)).default);t.default=s},15591:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=void 0,n(99236),n(64434),n(84208);var a=o(n(38923)),i=o(n(35657)),u=o(n(83452)),l=o(n(47834)),s=o(n(11959)),c=o(n(39041)),d=o(n(77371)),f=o(n(68537)),p=function(e){(0,d.default)(ComponentBase,e);var t=(0,f.default)(ComponentBase);function ComponentBase(){return(0,s.default)(this,ComponentBase),t.apply(this,arguments)}return(0,c.default)(ComponentBase,[{key:"__construct",value:function __construct(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};e.manager&&(this.manager=e.manager),this.commands=this.defaultCommands(),this.commandsInternal=this.defaultCommandsInternal(),this.hooks=this.defaultHooks(),this.routes=this.defaultRoutes(),this.tabs=this.defaultTabs(),this.shortcuts=this.defaultShortcuts(),this.utils=this.defaultUtils(),this.data=this.defaultData(),this.uiStates=this.defaultUiStates(),this.defaultRoute="",this.currentTab=""}},{key:"registerAPI",value:function registerAPI(){var e=this;(0,a.default)(this.getTabs()).forEach((function(t){return e.registerTabRoute(t[0])})),(0,a.default)(this.getRoutes()).forEach((function(t){var n=(0,l.default)(t,2),r=n[0],o=n[1];return e.registerRoute(r,o)})),(0,a.default)(this.getCommands()).forEach((function(t){var n=(0,l.default)(t,2),r=n[0],o=n[1];return e.registerCommand(r,o)})),(0,a.default)(this.getCommandsInternal()).forEach((function(t){var n=(0,l.default)(t,2),r=n[0],o=n[1];return e.registerCommandInternal(r,o)})),(0,i.default)(this.getHooks()).forEach((function(t){return e.registerHook(t)})),(0,a.default)(this.getData()).forEach((function(t){var n=(0,l.default)(t,2),r=n[0],o=n[1];return e.registerData(r,o)})),(0,i.default)(this.getUiStates()).forEach((function(t){return e.registerUiState(t)}))}},{key:"getNamespace",value:function getNamespace(){elementorModules.ForceMethodImplementation()}},{key:"getRootContainer",value:function getRootContainer(){return this.getNamespace().split("/")[0]}},{key:"defaultTabs",value:function defaultTabs(){return{}}},{key:"defaultRoutes",value:function defaultRoutes(){return{}}},{key:"defaultCommands",value:function defaultCommands(){return{}}},{key:"defaultCommandsInternal",value:function defaultCommandsInternal(){return{}}},{key:"defaultHooks",value:function defaultHooks(){return{}}},{key:"defaultUiStates",value:function defaultUiStates(){return{}}},{key:"defaultShortcuts",value:function defaultShortcuts(){return{}}},{key:"defaultUtils",value:function defaultUtils(){return{}}},{key:"defaultData",value:function defaultData(){return{}}},{key:"getCommands",value:function getCommands(){return this.commands}},{key:"getCommandsInternal",value:function getCommandsInternal(){return this.commandsInternal}},{key:"getHooks",value:function getHooks(){return this.hooks}},{key:"getUiStates",value:function getUiStates(){return this.uiStates}},{key:"getRoutes",value:function getRoutes(){return this.routes}},{key:"getTabs",value:function getTabs(){return this.tabs}},{key:"getShortcuts",value:function getShortcuts(){return this.shortcuts}},{key:"getData",value:function getData(){return this.data}},{key:"registerCommand",value:function registerCommand(e,t){$e.commands.register(this,e,t)}},{key:"registerHook",value:function registerHook(e){return e.register()}},{key:"registerUiState",value:function registerUiState(e){$e.uiStates.register(e)}},{key:"registerCommandInternal",value:function registerCommandInternal(e,t){$e.commandsInternal.register(this,e,t)}},{key:"registerRoute",value:function registerRoute(e,t){$e.routes.register(this,e,t)}},{key:"registerData",value:function registerData(e,t){$e.data.register(this,e,t)}},{key:"unregisterRoute",value:function unregisterRoute(e){$e.routes.unregister(this,e)}},{key:"registerTabRoute",value:function registerTabRoute(e){var t=this;this.registerRoute(e,(function(n){return t.activateTab(e,n)}))}},{key:"dependency",value:function dependency(){return!0}},{key:"open",value:function open(){return!0}},{key:"close",value:function close(){return!!this.isOpen&&(this.isOpen=!1,this.inactivate(),$e.routes.clearCurrent(this.getNamespace()),$e.routes.clearHistory(this.getRootContainer()),!0)}},{key:"activate",value:function activate(){$e.components.activate(this.getNamespace())}},{key:"inactivate",value:function inactivate(){$e.components.inactivate(this.getNamespace())}},{key:"isActive",value:function isActive(){return $e.components.isActive(this.getNamespace())}},{key:"onRoute",value:function onRoute(e){this.toggleRouteClass(e,!0),this.toggleHistoryClass(),this.activate(),this.trigger("route/open",e)}},{key:"onCloseRoute",value:function onCloseRoute(e){this.toggleRouteClass(e,!1),this.inactivate(),this.trigger("route/close",e)}},{key:"setDefaultRoute",value:function setDefaultRoute(e){this.defaultRoute=this.getNamespace()+"/"+e}},{key:"getDefaultRoute",value:function getDefaultRoute(){return this.defaultRoute}},{key:"removeTab",value:function removeTab(e){delete this.tabs[e],this.unregisterRoute(e)}},{key:"hasTab",value:function hasTab(e){return!!this.tabs[e]}},{key:"addTab",value:function addTab(e,t,n){var r=this;if(this.tabs[e]=t,void 0!==n){var o={},a=(0,u.default)(this.tabs);a.pop(),a.splice(n,0,e),a.forEach((function(e){o[e]=r.tabs[e]})),this.tabs=o}this.registerTabRoute(e)}},{key:"getTabsWrapperSelector",value:function getTabsWrapperSelector(){return""}},{key:"getTabRoute",value:function getTabRoute(e){return this.getNamespace()+"/"+e}},{key:"renderTab",value:function renderTab(e){}},{key:"activateTab",value:function activateTab(e,t){var n=this;this.currentTab=e,this.renderTab(e,t),jQuery(this.getTabsWrapperSelector()+" .elementor-component-tab").off("click").on("click",(function(e){$e.route(n.getTabRoute(e.currentTarget.dataset.tab),t)})).removeClass("elementor-active").filter('[data-tab="'+e+'"]').addClass("elementor-active")}},{key:"getActiveTabConfig",value:function getActiveTabConfig(){return this.tabs[this.currentTab]||{}}},{key:"getBodyClass",value:function getBodyClass(e){return"e-route-"+e.replace(/\//g,"-")}},{key:"normalizeCommandName",value:function normalizeCommandName(e){return e.replace(/[A-Z]/g,(function(e,t){return(t>0?"-":"")+e.toLowerCase()}))}},{key:"importCommands",value:function importCommands(e){var t=this,n={};return(0,a.default)(e).forEach((function(e){var r=(0,l.default)(e,2),o=r[0],a=r[1],i=t.normalizeCommandName(o);n[i]=function(e){return new a(e).run()},$e.commands.classes[t.getNamespace()+"/"+i]=a})),n}},{key:"importHooks",value:function importHooks(e){var t={};for(var n in e){var r=new e[n];t[r.getId()]=r}return t}},{key:"importUiStates",value:function importUiStates(e){var t=this,n={};return(0,i.default)(e).forEach((function(e){var r=new e(t);n[r.getId()]=r})),n}},{key:"setUiState",value:function setUiState(e,t){$e.uiStates.set("".concat(this.getNamespace(),"/").concat(e),t)}},{key:"toggleRouteClass",value:function toggleRouteClass(e,t){elementorCommon.elements.$body.toggleClass(this.getBodyClass(e),t)}},{key:"toggleHistoryClass",value:function toggleHistoryClass(){elementorCommon.elements.$body.toggleClass("e-routes-has-history",!!$e.routes.getHistory(this.getRootContainer()).length)}}]),ComponentBase}(elementorModules.Module);t.default=p},7793:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=void 0;var a=o(n(84899)),i=o(n(11959)),u=o(n(39041)),l=o(n(38852)),s=o(n(77371)),c=o(n(68537)),d=o(n(73629)),f=o(n(18042)),p=function(e){(0,s.default)(BaseError,e);var t=(0,c.default)(BaseError);function BaseError(){var e,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[];return(0,i.default)(this,BaseError),e=t.call(this,n),(0,f.default)((0,l.default)(e),"code",""),(0,f.default)((0,l.default)(e),"data",[]),e.code=r,e.data=o,e}return(0,u.default)(BaseError,[{key:"notify",value:function notify(){elementorCommon.helpers.consoleError((0,a.default)({message:this.message},this))}}],[{key:"create",value:function create(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[];return new this(e,t,n)}},{key:"getStatus",value:function getStatus(){elementorModules.ForceMethodImplementation()}}]),BaseError}((0,d.default)(Error));t.default=p},96461:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.DefaultError=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(DefaultError,e);var t=(0,l.default)(DefaultError);function DefaultError(){return(0,a.default)(this,DefaultError),t.apply(this,arguments)}return(0,i.default)(DefaultError,null,[{key:"getStatus",value:function getStatus(){return 0}}]),DefaultError}(o(n(7793)).default);t.DefaultError=s;var c=s;t.default=c},43861:(e,t,n)=>{"use strict";var r=n(67394);r(t,"__esModule",{value:!0}),r(t,"NotFoundError",{enumerable:!0,get:function get(){return o.NotFoundError}}),r(t,"DefaultError",{enumerable:!0,get:function get(){return a.DefaultError}});var o=n(37990),a=n(96461)},37990:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.NotFoundError=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(NotFoundError,e);var t=(0,l.default)(NotFoundError);function NotFoundError(){return(0,a.default)(this,NotFoundError),t.apply(this,arguments)}return(0,i.default)(NotFoundError,[{key:"notify",value:function notify(){elementorCommon.helpers.consoleWarn(this.message)}}],[{key:"getStatus",value:function getStatus(){return 404}}]),NotFoundError}(o(n(7793)).default);t.NotFoundError=s;var c=s;t.default=c},2857:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(18042)),l=function(){function HookBase(){(0,a.default)(this,HookBase),(0,u.default)(this,"type",void 0),(0,u.default)(this,"command",void 0),(0,u.default)(this,"id",void 0),this.initialize(),this.type=this.getType(),this.command=this.getCommand(),this.id=this.getId()}return(0,i.default)(HookBase,[{key:"initialize",value:function initialize(){}},{key:"register",value:function register(){elementorModules.ForceMethodImplementation()}},{key:"getType",value:function getType(){elementorModules.ForceMethodImplementation()}},{key:"getCommand",value:function getCommand(){elementorModules.ForceMethodImplementation()}},{key:"getId",value:function getId(){elementorModules.ForceMethodImplementation()}},{key:"getContainerType",value:function getContainerType(){}},{key:"getConditions",value:function getConditions(){return!0}},{key:"apply",value:function apply(e){elementorModules.ForceMethodImplementation()}},{key:"run",value:function run(){var e=arguments.length<=0?void 0:arguments[0],t=e.options,n=void 0===t?{}:t;return!(!n.callbacks||!1!==n.callbacks[this.id])||(!this.getConditions.apply(this,arguments)||($e.devTools&&$e.devTools.log.callbacks().active(this.type,this.command,this.id),this.apply.apply(this,arguments)))}}]),HookBase}();t.default=l},91706:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.After=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(After,e);var t=(0,l.default)(After);function After(){return(0,a.default)(this,After),t.apply(this,arguments)}return(0,i.default)(After,[{key:"register",value:function register(){$e.hooks.registerDataAfter(this)}}]),After}(o(n(85895)).default);t.After=s;var c=s;t.default=c},85895:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.Base=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(Base,e);var t=(0,l.default)(Base);function Base(){return(0,a.default)(this,Base),t.apply(this,arguments)}return(0,i.default)(Base,[{key:"getType",value:function getType(){return"data"}}]),Base}(o(n(2857)).default);t.Base=s;var c=s;t.default=c},52642:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.Dependency=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(Dependency,e);var t=(0,l.default)(Dependency);function Dependency(){return(0,a.default)(this,Dependency),t.apply(this,arguments)}return(0,i.default)(Dependency,[{key:"register",value:function register(){$e.hooks.registerDataDependency(this)}}]),Dependency}(o(n(85895)).default);t.Dependency=s;var c=s;t.default=c},57061:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.After=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(After,e);var t=(0,l.default)(After);function After(){return(0,a.default)(this,After),t.apply(this,arguments)}return(0,i.default)(After,[{key:"register",value:function register(){$e.hooks.registerUIAfter(this)}}]),After}(o(n(22803)).default);t.After=s;var c=s;t.default=c},22803:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.Base=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(Base,e);var t=(0,l.default)(Base);function Base(){return(0,a.default)(this,Base),t.apply(this,arguments)}return(0,i.default)(Base,[{key:"getType",value:function getType(){return"ui"}}]),Base}(o(n(2857)).default);t.Base=s;var c=s;t.default=c},26556:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.Before=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(Before,e);var t=(0,l.default)(Before);function Before(){return(0,a.default)(this,Before),t.apply(this,arguments)}return(0,i.default)(Before,[{key:"register",value:function register(){$e.hooks.registerUIBefore(this)}}]),Before}(o(n(22803)).default);t.Before=s;var c=s;t.default=c},8295:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=t.Catch=void 0;var a=o(n(11959)),i=o(n(39041)),u=o(n(77371)),l=o(n(68537)),s=function(e){(0,u.default)(Catch,e);var t=(0,l.default)(Catch);function Catch(){return(0,a.default)(this,Catch),t.apply(this,arguments)}return(0,i.default)(Catch,[{key:"register",value:function register(){$e.hooks.registerUICatch(this)}}]),Catch}(o(n(22803)).default);t.Catch=s;var c=s;t.default=c},73308:(e,t,n)=>{"use strict";n(67394)(t,"__esModule",{value:!0}),t.default=void 0,n(76139),n(44321);var r=function matchUserAgent(e){return o.indexOf(e)>=0},o=navigator.userAgent,a=!!window.opr&&!!opr.addons||!!window.opera||r(" OPR/"),i=r("Firefox"),u=/^((?!chrome|android).)*safari/i.test(o)||/constructor/i.test(window.HTMLElement)||"[object SafariRemoteNotification]"===(!window.safari||"undefined"!=typeof safari&&safari.pushNotification).toString(),l=/Trident|MSIE/.test(o)&&!!document.documentMode,s=!l&&!!window.StyleMedia||r("Edg"),c=!!window.chrome&&r("Chrome")&&!(s||a),d=r("Chrome")&&!!window.CSS,f={appleWebkit:r("AppleWebKit")&&!d,blink:d,chrome:c,edge:s,firefox:i,ie:l,mac:r("Macintosh"),opera:a,safari:u,webkit:r("AppleWebKit")};t.default=f},7421:(e,t,n)=>{n(99572),n(37627),e.exports=n(47208).Array.from},70157:(e,t,n)=>{n(42580),e.exports=n(47208).Array.isArray},373:(e,t,n)=>{n(70285),n(99572),n(74114),n(17710),n(43849),n(61340),n(28933),e.exports=n(47208).Map},66458:(e,t,n)=>{n(99954),e.exports=n(47208).Object.assign},14710:(e,t,n)=>{n(30785);var r=n(47208).Object;e.exports=function create(e,t){return r.create(e,t)}},23022:(e,t,n)=>{n(23078);var r=n(47208).Object;e.exports=function defineProperties(e,t){return r.defineProperties(e,t)}},43153:(e,t,n)=>{n(40168);var r=n(47208).Object;e.exports=function defineProperty(e,t,n){return r.defineProperty(e,t,n)}},8531:(e,t,n)=>{n(95260),e.exports=n(47208).Object.entries},32622:(e,t,n)=>{n(18576);var r=n(47208).Object;e.exports=function getOwnPropertyDescriptor(e,t){return r.getOwnPropertyDescriptor(e,t)}},27410:(e,t,n)=>{n(67685),e.exports=n(47208).Object.getOwnPropertyDescriptors},19035:(e,t,n)=>{n(54370),e.exports=n(47208).Object.getOwnPropertySymbols},58535:(e,t,n)=>{n(4840),e.exports=n(47208).Object.getPrototypeOf},97220:(e,t,n)=>{n(5453),e.exports=n(47208).Object.keys},65135:(e,t,n)=>{n(13890),e.exports=n(47208).Object.setPrototypeOf},69591:(e,t,n)=>{n(57188),e.exports=n(47208).Object.values},34345:(e,t,n)=>{n(24399),e.exports=n(47208).parseInt},76483:(e,t,n)=>{n(70285),n(99572),n(74114),n(86082),n(81522),n(25757),e.exports=n(47208).Promise},43094:(e,t,n)=>{n(11320),e.exports=n(47208).Reflect.construct},17641:(e,t,n)=>{n(36600),e.exports=n(47208).Reflect.get},21114:(e,t,n)=>{n(78760),e.exports=n(7273).f("hasInstance")},19103:(e,t,n)=>{n(54370),n(70285),n(87573),n(97224),e.exports=n(47208).Symbol},39871:(e,t,n)=>{n(99572),n(74114),e.exports=n(7273).f("iterator")},89999:(e,t,n)=>{n(70285),n(74114),n(23337),n(10143),n(92797),e.exports=n(47208).WeakMap},26610:e=>{e.exports=function(e){if("function"!=typeof e)throw TypeError(e+" is not a function!");return e}},29697:e=>{e.exports=function(){}},54677:e=>{e.exports=function(e,t,n,r){if(!(e instanceof t)||void 0!==r&&r in e)throw TypeError(n+": incorrect invocation!");return e}},30498:(e,t,n)=>{var r=n(39632);e.exports=function(e){if(!r(e))throw TypeError(e+" is not an object!");return e}},42411:(e,t,n)=>{var r=n(25985);e.exports=function(e,t){var n=[];return r(e,!1,n.push,n,t),n}},69191:(e,t,n)=>{var r=n(1504),o=n(37154),a=n(46723);e.exports=function(e){return function(t,n,i){var u,l=r(t),s=o(l.length),c=a(i,s);if(e&&n!=n){for(;s>c;)if((u=l[c++])!=u)return!0}else for(;s>c;c++)if((e||c in l)&&l[c]===n)return e||c||0;return!e&&-1}}},97647:(e,t,n)=>{var r=n(61725),o=n(13115),a=n(60061),i=n(37154),u=n(41904);e.exports=function(e,t){var n=1==e,l=2==e,s=3==e,c=4==e,d=6==e,f=5==e||d,p=t||u;return function(t,u,v){for(var m,g,h=a(t),y=o(h),C=r(u,v,3),_=i(y.length),b=0,S=n?p(t,_):l?p(t,0):void 0;_>b;b++)if((f||b in y)&&(g=C(m=y[b],b,h),e))if(n)S[b]=g;else if(g)switch(e){case 3:return!0;case 5:return m;case 6:return b;case 2:S.push(m)}else if(c)return!1;return d?-1:s||c?c:S}}},88320:(e,t,n)=>{var r=n(39632),o=n(7359),a=n(24300)("species");e.exports=function(e){var t;return o(e)&&("function"!=typeof(t=e.constructor)||t!==Array&&!o(t.prototype)||(t=void 0),r(t)&&null===(t=t[a])&&(t=void 0)),void 0===t?Array:t}},41904:(e,t,n)=>{var r=n(88320);e.exports=function(e,t){return new(r(e))(t)}},45515:(e,t,n)=>{"use strict";var r=n(26610),o=n(39632),a=n(19897),i=[].slice,u={},construct=function(e,t,n){if(!(t in u)){for(var r=[],o=0;o<t;o++)r[o]="a["+o+"]";u[t]=Function("F,a","return new F("+r.join(",")+")")}return u[t](e,n)};e.exports=Function.bind||function bind(e){var t=r(this),n=i.call(arguments,1),bound=function(){var r=n.concat(i.call(arguments));return this instanceof bound?construct(t,r.length,r):a(t,r,e)};return o(t.prototype)&&(bound.prototype=t.prototype),bound}},8312:(e,t,n)=>{var r=n(41352),o=n(24300)("toStringTag"),a="Arguments"==r(function(){return arguments}());e.exports=function(e){var t,n,i;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(n=function(e,t){try{return e[t]}catch(e){}}(t=Object(e),o))?n:a?r(t):"Object"==(i=r(t))&&"function"==typeof t.callee?"Arguments":i}},41352:e=>{var t={}.toString;e.exports=function(e){return t.call(e).slice(8,-1)}},29071:(e,t,n)=>{"use strict";var r=n(60510).f,o=n(82488),a=n(13199),i=n(61725),u=n(54677),l=n(25985),s=n(6125),c=n(9329),d=n(5698),f=n(75179),p=n(6758).fastKey,v=n(41081),m=f?"_s":"size",getEntry=function(e,t){var n,r=p(t);if("F"!==r)return e._i[r];for(n=e._f;n;n=n.n)if(n.k==t)return n};e.exports={getConstructor:function(e,t,n,s){var c=e((function(e,r){u(e,c,t,"_i"),e._t=t,e._i=o(null),e._f=void 0,e._l=void 0,e[m]=0,null!=r&&l(r,n,e[s],e)}));return a(c.prototype,{clear:function clear(){for(var e=v(this,t),n=e._i,r=e._f;r;r=r.n)r.r=!0,r.p&&(r.p=r.p.n=void 0),delete n[r.i];e._f=e._l=void 0,e[m]=0},delete:function(e){var n=v(this,t),r=getEntry(n,e);if(r){var o=r.n,a=r.p;delete n._i[r.i],r.r=!0,a&&(a.n=o),o&&(o.p=a),n._f==r&&(n._f=o),n._l==r&&(n._l=a),n[m]--}return!!r},forEach:function forEach(e){v(this,t);for(var n,r=i(e,arguments.length>1?arguments[1]:void 0,3);n=n?n.n:this._f;)for(r(n.v,n.k,this);n&&n.r;)n=n.p},has:function has(e){return!!getEntry(v(this,t),e)}}),f&&r(c.prototype,"size",{get:function(){return v(this,t)[m]}}),c},def:function(e,t,n){var r,o,a=getEntry(e,t);return a?a.v=n:(e._l=a={i:o=p(t,!0),k:t,v:n,p:r=e._l,n:void 0,r:!1},e._f||(e._f=a),r&&(r.n=a),e[m]++,"F"!==o&&(e._i[o]=a)),e},getEntry,setStrong:function(e,t,n){s(e,t,(function(e,n){this._t=v(e,t),this._k=n,this._l=void 0}),(function(){for(var e=this,t=e._k,n=e._l;n&&n.r;)n=n.p;return e._t&&(e._l=n=n?n.n:e._t._f)?c(0,"keys"==t?n.k:"values"==t?n.v:[n.k,n.v]):(e._t=void 0,c(1))}),n?"entries":"values",!n,!0),d(t)}}},89518:(e,t,n)=>{var r=n(8312),o=n(42411);e.exports=function(e){return function toJSON(){if(r(this)!=e)throw TypeError(e+"#toJSON isn't generic");return o(this)}}},92600:(e,t,n)=>{"use strict";var r=n(13199),o=n(6758).getWeak,a=n(30498),i=n(39632),u=n(54677),l=n(25985),s=n(97647),c=n(20657),d=n(41081),f=s(5),p=s(6),v=0,uncaughtFrozenStore=function(e){return e._l||(e._l=new UncaughtFrozenStore)},UncaughtFrozenStore=function(){this.a=[]},findUncaughtFrozen=function(e,t){return f(e.a,(function(e){return e[0]===t}))};UncaughtFrozenStore.prototype={get:function(e){var t=findUncaughtFrozen(this,e);if(t)return t[1]},has:function(e){return!!findUncaughtFrozen(this,e)},set:function(e,t){var n=findUncaughtFrozen(this,e);n?n[1]=t:this.a.push([e,t])},delete:function(e){var t=p(this.a,(function(t){return t[0]===e}));return~t&&this.a.splice(t,1),!!~t}},e.exports={getConstructor:function(e,t,n,a){var s=e((function(e,r){u(e,s,t,"_i"),e._t=t,e._i=v++,e._l=void 0,null!=r&&l(r,n,e[a],e)}));return r(s.prototype,{delete:function(e){if(!i(e))return!1;var n=o(e);return!0===n?uncaughtFrozenStore(d(this,t)).delete(e):n&&c(n,this._i)&&delete n[this._i]},has:function has(e){if(!i(e))return!1;var n=o(e);return!0===n?uncaughtFrozenStore(d(this,t)).has(e):n&&c(n,this._i)}}),s},def:function(e,t,n){var r=o(a(t),!0);return!0===r?uncaughtFrozenStore(e).set(t,n):r[e._i]=n,e},ufstore:uncaughtFrozenStore}},70770:(e,t,n)=>{"use strict";var r=n(43280),o=n(98310),a=n(6758),i=n(90472),u=n(62292),l=n(13199),s=n(25985),c=n(54677),d=n(39632),f=n(2413),p=n(60510).f,v=n(97647)(0),m=n(75179);e.exports=function(e,t,n,g,h,y){var C=r[e],_=C,b=h?"set":"add",S=_&&_.prototype,k={};return m&&"function"==typeof _&&(y||S.forEach&&!i((function(){(new _).entries().next()})))?(_=t((function(t,n){c(t,_,e,"_c"),t._c=new C,null!=n&&s(n,h,t[b],t)})),v("add,clear,delete,forEach,get,has,set,keys,values,entries,toJSON".split(","),(function(e){var t="add"==e||"set"==e;!(e in S)||y&&"clear"==e||u(_.prototype,e,(function(n,r){if(c(this,_,e),!t&&y&&!d(n))return"get"==e&&void 0;var o=this._c[e](0===n?0:n,r);return t?this:o}))})),y||p(_.prototype,"size",{get:function(){return this._c.size}})):(_=g.getConstructor(t,e,h,b),l(_.prototype,n),a.NEED=!0),f(_,e),k[e]=_,o(o.G+o.W+o.F,k),y||g.setStrong(_,e,h),_}},47208:e=>{var t=e.exports={version:"2.6.12"};"number"==typeof __e&&(__e=t)},87352:(e,t,n)=>{"use strict";var r=n(60510),o=n(48439);e.exports=function(e,t,n){t in e?r.f(e,t,o(0,n)):e[t]=n}},61725:(e,t,n)=>{var r=n(26610);e.exports=function(e,t,n){if(r(e),void 0===t)return e;switch(n){case 1:return function(n){return e.call(t,n)};case 2:return function(n,r){return e.call(t,n,r)};case 3:return function(n,r,o){return e.call(t,n,r,o)}}return function(){return e.apply(t,arguments)}}},18239:e=>{e.exports=function(e){if(null==e)throw TypeError("Can't call method on  "+e);return e}},75179:(e,t,n)=>{e.exports=!n(90472)((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},48765:(e,t,n)=>{var r=n(39632),o=n(43280).document,a=r(o)&&r(o.createElement);e.exports=function(e){return a?o.createElement(e):{}}},31986:e=>{e.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},42266:(e,t,n)=>{var r=n(86425),o=n(97739),a=n(67410);e.exports=function(e){var t=r(e),n=o.f;if(n)for(var i,u=n(e),l=a.f,s=0;u.length>s;)l.call(e,i=u[s++])&&t.push(i);return t}},98310:(e,t,n)=>{var r=n(43280),o=n(47208),a=n(61725),i=n(62292),u=n(20657),$export=function(e,t,n){var l,s,c,d=e&$export.F,f=e&$export.G,p=e&$export.S,v=e&$export.P,m=e&$export.B,g=e&$export.W,h=f?o:o[t]||(o[t]={}),y=h.prototype,C=f?r:p?r[t]:(r[t]||{}).prototype;for(l in f&&(n=t),n)(s=!d&&C&&void 0!==C[l])&&u(h,l)||(c=s?C[l]:n[l],h[l]=f&&"function"!=typeof C[l]?n[l]:m&&s?a(c,r):g&&C[l]==c?function(e){var F=function(t,n,r){if(this instanceof e){switch(arguments.length){case 0:return new e;case 1:return new e(t);case 2:return new e(t,n)}return new e(t,n,r)}return e.apply(this,arguments)};return F.prototype=e.prototype,F}(c):v&&"function"==typeof c?a(Function.call,c):c,v&&((h.virtual||(h.virtual={}))[l]=c,e&$export.R&&y&&!y[l]&&i(y,l,c)))};$export.F=1,$export.G=2,$export.S=4,$export.P=8,$export.B=16,$export.W=32,$export.U=64,$export.R=128,e.exports=$export},90472:e=>{e.exports=function(e){try{return!!e()}catch(e){return!0}}},25985:(e,t,n)=>{var r=n(61725),o=n(93086),a=n(11827),i=n(30498),u=n(37154),l=n(26116),s={},c={},d=e.exports=function(e,t,n,d,f){var p,v,m,g,h=f?function(){return e}:l(e),y=r(n,d,t?2:1),C=0;if("function"!=typeof h)throw TypeError(e+" is not iterable!");if(a(h)){for(p=u(e.length);p>C;C++)if((g=t?y(i(v=e[C])[0],v[1]):y(e[C]))===s||g===c)return g}else for(m=h.call(e);!(v=m.next()).done;)if((g=o(m,y,v.value,t))===s||g===c)return g};d.BREAK=s,d.RETURN=c},43280:e=>{var t=e.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=t)},20657:e=>{var t={}.hasOwnProperty;e.exports=function(e,n){return t.call(e,n)}},62292:(e,t,n)=>{var r=n(60510),o=n(48439);e.exports=n(75179)?function(e,t,n){return r.f(e,t,o(1,n))}:function(e,t,n){return e[t]=n,e}},92477:(e,t,n)=>{var r=n(43280).document;e.exports=r&&r.documentElement},64457:(e,t,n)=>{e.exports=!n(75179)&&!n(90472)((function(){return 7!=Object.defineProperty(n(48765)("div"),"a",{get:function(){return 7}}).a}))},19897:e=>{e.exports=function(e,t,n){var r=void 0===n;switch(t.length){case 0:return r?e():e.call(n);case 1:return r?e(t[0]):e.call(n,t[0]);case 2:return r?e(t[0],t[1]):e.call(n,t[0],t[1]);case 3:return r?e(t[0],t[1],t[2]):e.call(n,t[0],t[1],t[2]);case 4:return r?e(t[0],t[1],t[2],t[3]):e.call(n,t[0],t[1],t[2],t[3])}return e.apply(n,t)}},13115:(e,t,n)=>{var r=n(41352);e.exports=Object("z").propertyIsEnumerable(0)?Object:function(e){return"String"==r(e)?e.split(""):Object(e)}},11827:(e,t,n)=>{var r=n(79105),o=n(24300)("iterator"),a=Array.prototype;e.exports=function(e){return void 0!==e&&(r.Array===e||a[o]===e)}},7359:(e,t,n)=>{var r=n(41352);e.exports=Array.isArray||function isArray(e){return"Array"==r(e)}},39632:e=>{e.exports=function(e){return"object"==typeof e?null!==e:"function"==typeof e}},93086:(e,t,n)=>{var r=n(30498);e.exports=function(e,t,n,o){try{return o?t(r(n)[0],n[1]):t(n)}catch(t){var a=e.return;throw void 0!==a&&r(a.call(e)),t}}},19802:(e,t,n)=>{"use strict";var r=n(82488),o=n(48439),a=n(2413),i={};n(62292)(i,n(24300)("iterator"),(function(){return this})),e.exports=function(e,t,n){e.prototype=r(i,{next:o(1,n)}),a(e,t+" Iterator")}},6125:(e,t,n)=>{"use strict";var r=n(36794),o=n(98310),a=n(19312),i=n(62292),u=n(79105),l=n(19802),s=n(2413),c=n(999),d=n(24300)("iterator"),f=!([].keys&&"next"in[].keys()),p="keys",v="values",returnThis=function(){return this};e.exports=function(e,t,n,m,g,h,y){l(n,t,m);var C,_,b,getMethod=function(e){if(!f&&e in w)return w[e];switch(e){case p:return function keys(){return new n(this,e)};case v:return function values(){return new n(this,e)}}return function entries(){return new n(this,e)}},S=t+" Iterator",k=g==v,x=!1,w=e.prototype,E=w[d]||w["@@iterator"]||g&&w[g],T=E||getMethod(g),M=g?k?getMethod("entries"):T:void 0,A="Array"==t&&w.entries||E;if(A&&(b=c(A.call(new e)))!==Object.prototype&&b.next&&(s(b,S,!0),r||"function"==typeof b[d]||i(b,d,returnThis)),k&&E&&E.name!==v&&(x=!0,T=function values(){return E.call(this)}),r&&!y||!f&&!x&&w[d]||i(w,d,T),u[t]=T,u[S]=returnThis,g)if(C={values:k?T:getMethod(v),keys:h?T:getMethod(p),entries:M},y)for(_ in C)_ in w||a(w,_,C[_]);else o(o.P+o.F*(f||x),t,C);return C}},26797:(e,t,n)=>{var r=n(24300)("iterator"),o=!1;try{var a=[7][r]();a.return=function(){o=!0},Array.from(a,(function(){throw 2}))}catch(e){}e.exports=function(e,t){if(!t&&!o)return!1;var n=!1;try{var a=[7],i=a[r]();i.next=function(){return{done:n=!0}},a[r]=function(){return i},e(a)}catch(e){}return n}},9329:e=>{e.exports=function(e,t){return{value:t,done:!!e}}},79105:e=>{e.exports={}},36794:e=>{e.exports=!0},6758:(e,t,n)=>{var r=n(54251)("meta"),o=n(39632),a=n(20657),i=n(60510).f,u=0,l=Object.isExtensible||function(){return!0},s=!n(90472)((function(){return l(Object.preventExtensions({}))})),setMeta=function(e){i(e,r,{value:{i:"O"+ ++u,w:{}}})},c=e.exports={KEY:r,NEED:!1,fastKey:function(e,t){if(!o(e))return"symbol"==typeof e?e:("string"==typeof e?"S":"P")+e;if(!a(e,r)){if(!l(e))return"F";if(!t)return"E";setMeta(e)}return e[r].i},getWeak:function(e,t){if(!a(e,r)){if(!l(e))return!0;if(!t)return!1;setMeta(e)}return e[r].w},onFreeze:function(e){return s&&c.NEED&&l(e)&&!a(e,r)&&setMeta(e),e}}},4326:(e,t,n)=>{var r=n(43280),o=n(6022).set,a=r.MutationObserver||r.WebKitMutationObserver,i=r.process,u=r.Promise,l="process"==n(41352)(i);e.exports=function(){var e,t,n,flush=function(){var r,o;for(l&&(r=i.domain)&&r.exit();e;){o=e.fn,e=e.next;try{o()}catch(r){throw e?n():t=void 0,r}}t=void 0,r&&r.enter()};if(l)n=function(){i.nextTick(flush)};else if(!a||r.navigator&&r.navigator.standalone)if(u&&u.resolve){var s=u.resolve(void 0);n=function(){s.then(flush)}}else n=function(){o.call(r,flush)};else{var c=!0,d=document.createTextNode("");new a(flush).observe(d,{characterData:!0}),n=function(){d.data=c=!c}}return function(r){var o={fn:r,next:void 0};t&&(t.next=o),e||(e=o,n()),t=o}}},88579:(e,t,n)=>{"use strict";var r=n(26610);function PromiseCapability(e){var t,n;this.promise=new e((function(e,r){if(void 0!==t||void 0!==n)throw TypeError("Bad Promise constructor");t=e,n=r})),this.resolve=r(t),this.reject=r(n)}e.exports.f=function(e){return new PromiseCapability(e)}},77995:(e,t,n)=>{"use strict";var r=n(75179),o=n(86425),a=n(97739),i=n(67410),u=n(60061),l=n(13115),s=Object.assign;e.exports=!s||n(90472)((function(){var e={},t={},n=Symbol(),r="abcdefghijklmnopqrst";return e[n]=7,r.split("").forEach((function(e){t[e]=e})),7!=s({},e)[n]||Object.keys(s({},t)).join("")!=r}))?function assign(e,t){for(var n=u(e),s=arguments.length,c=1,d=a.f,f=i.f;s>c;)for(var p,v=l(arguments[c++]),m=d?o(v).concat(d(v)):o(v),g=m.length,h=0;g>h;)p=m[h++],r&&!f.call(v,p)||(n[p]=v[p]);return n}:s},82488:(e,t,n)=>{var r=n(30498),o=n(36607),a=n(31986),i=n(18478)("IE_PROTO"),Empty=function(){},createDict=function(){var e,t=n(48765)("iframe"),r=a.length;for(t.style.display="none",n(92477).appendChild(t),t.src="javascript:",(e=t.contentWindow.document).open(),e.write("<script>document.F=Object<\/script>"),e.close(),createDict=e.F;r--;)delete createDict.prototype[a[r]];return createDict()};e.exports=Object.create||function create(e,t){var n;return null!==e?(Empty.prototype=r(e),n=new Empty,Empty.prototype=null,n[i]=e):n=createDict(),void 0===t?n:o(n,t)}},60510:(e,t,n)=>{var r=n(30498),o=n(64457),a=n(12737),i=Object.defineProperty;t.f=n(75179)?Object.defineProperty:function defineProperty(e,t,n){if(r(e),t=a(t,!0),r(n),o)try{return i(e,t,n)}catch(e){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(e[t]=n.value),e}},36607:(e,t,n)=>{var r=n(60510),o=n(30498),a=n(86425);e.exports=n(75179)?Object.defineProperties:function defineProperties(e,t){o(e);for(var n,i=a(t),u=i.length,l=0;u>l;)r.f(e,n=i[l++],t[n]);return e}},83264:(e,t,n)=>{var r=n(67410),o=n(48439),a=n(1504),i=n(12737),u=n(20657),l=n(64457),s=Object.getOwnPropertyDescriptor;t.f=n(75179)?s:function getOwnPropertyDescriptor(e,t){if(e=a(e),t=i(t,!0),l)try{return s(e,t)}catch(e){}if(u(e,t))return o(!r.f.call(e,t),e[t])}},26084:(e,t,n)=>{var r=n(1504),o=n(8772).f,a={}.toString,i="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];e.exports.f=function getOwnPropertyNames(e){return i&&"[object Window]"==a.call(e)?function(e){try{return o(e)}catch(e){return i.slice()}}(e):o(r(e))}},8772:(e,t,n)=>{var r=n(65326),o=n(31986).concat("length","prototype");t.f=Object.getOwnPropertyNames||function getOwnPropertyNames(e){return r(e,o)}},97739:(e,t)=>{t.f=Object.getOwnPropertySymbols},999:(e,t,n)=>{var r=n(20657),o=n(60061),a=n(18478)("IE_PROTO"),i=Object.prototype;e.exports=Object.getPrototypeOf||function(e){return e=o(e),r(e,a)?e[a]:"function"==typeof e.constructor&&e instanceof e.constructor?e.constructor.prototype:e instanceof Object?i:null}},65326:(e,t,n)=>{var r=n(20657),o=n(1504),a=n(69191)(!1),i=n(18478)("IE_PROTO");e.exports=function(e,t){var n,u=o(e),l=0,s=[];for(n in u)n!=i&&r(u,n)&&s.push(n);for(;t.length>l;)r(u,n=t[l++])&&(~a(s,n)||s.push(n));return s}},86425:(e,t,n)=>{var r=n(65326),o=n(31986);e.exports=Object.keys||function keys(e){return r(e,o)}},67410:(e,t)=>{t.f={}.propertyIsEnumerable},57972:(e,t,n)=>{var r=n(98310),o=n(47208),a=n(90472);e.exports=function(e,t){var n=(o.Object||{})[e]||Object[e],i={};i[e]=t(n),r(r.S+r.F*a((function(){n(1)})),"Object",i)}},9480:(e,t,n)=>{var r=n(75179),o=n(86425),a=n(1504),i=n(67410).f;e.exports=function(e){return function(t){for(var n,u=a(t),l=o(u),s=l.length,c=0,d=[];s>c;)n=l[c++],r&&!i.call(u,n)||d.push(e?[n,u[n]]:u[n]);return d}}},64344:(e,t,n)=>{var r=n(8772),o=n(97739),a=n(30498),i=n(43280).Reflect;e.exports=i&&i.ownKeys||function ownKeys(e){var t=r.f(a(e)),n=o.f;return n?t.concat(n(e)):t}},60162:(e,t,n)=>{var r=n(43280).parseInt,o=n(71963).trim,a=n(18458),i=/^[-+]?0[xX]/;e.exports=8!==r(a+"08")||22!==r(a+"0x16")?function parseInt(e,t){var n=o(String(e),3);return r(n,t>>>0||(i.test(n)?16:10))}:r},52745:e=>{e.exports=function(e){try{return{e:!1,v:e()}}catch(e){return{e:!0,v:e}}}},88747:(e,t,n)=>{var r=n(30498),o=n(39632),a=n(88579);e.exports=function(e,t){if(r(e),o(t)&&t.constructor===e)return t;var n=a.f(e);return(0,n.resolve)(t),n.promise}},48439:e=>{e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},13199:(e,t,n)=>{var r=n(62292);e.exports=function(e,t,n){for(var o in t)n&&e[o]?e[o]=t[o]:r(e,o,t[o]);return e}},19312:(e,t,n)=>{e.exports=n(62292)},14689:(e,t,n)=>{"use strict";var r=n(98310),o=n(26610),a=n(61725),i=n(25985);e.exports=function(e){r(r.S,e,{from:function from(e){var t,n,r,u,l=arguments[1];return o(this),(t=void 0!==l)&&o(l),null==e?new this:(n=[],t?(r=0,u=a(l,arguments[2],2),i(e,!1,(function(e){n.push(u(e,r++))}))):i(e,!1,n.push,n),new this(n))}})}},7883:(e,t,n)=>{"use strict";var r=n(98310);e.exports=function(e){r(r.S,e,{of:function of(){for(var e=arguments.length,t=new Array(e);e--;)t[e]=arguments[e];return new this(t)}})}},25574:(e,t,n)=>{var r=n(39632),o=n(30498),check=function(e,t){if(o(e),!r(t)&&null!==t)throw TypeError(t+": can't set as prototype!")};e.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(e,t,r){try{(r=n(61725)(Function.call,n(83264).f(Object.prototype,"__proto__").set,2))(e,[]),t=!(e instanceof Array)}catch(e){t=!0}return function setPrototypeOf(e,n){return check(e,n),t?e.__proto__=n:r(e,n),e}}({},!1):void 0),check}},5698:(e,t,n)=>{"use strict";var r=n(43280),o=n(47208),a=n(60510),i=n(75179),u=n(24300)("species");e.exports=function(e){var t="function"==typeof o[e]?o[e]:r[e];i&&t&&!t[u]&&a.f(t,u,{configurable:!0,get:function(){return this}})}},2413:(e,t,n)=>{var r=n(60510).f,o=n(20657),a=n(24300)("toStringTag");e.exports=function(e,t,n){e&&!o(e=n?e:e.prototype,a)&&r(e,a,{configurable:!0,value:t})}},18478:(e,t,n)=>{var r=n(29990)("keys"),o=n(54251);e.exports=function(e){return r[e]||(r[e]=o(e))}},29990:(e,t,n)=>{var r=n(47208),o=n(43280),a="__core-js_shared__",i=o[a]||(o[a]={});(e.exports=function(e,t){return i[e]||(i[e]=void 0!==t?t:{})})("versions",[]).push({version:r.version,mode:n(36794)?"pure":"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})},73732:(e,t,n)=>{var r=n(30498),o=n(26610),a=n(24300)("species");e.exports=function(e,t){var n,i=r(e).constructor;return void 0===i||null==(n=r(i)[a])?t:o(n)}},78502:(e,t,n)=>{var r=n(58290),o=n(18239);e.exports=function(e){return function(t,n){var a,i,u=String(o(t)),l=r(n),s=u.length;return l<0||l>=s?e?"":void 0:(a=u.charCodeAt(l))<55296||a>56319||l+1===s||(i=u.charCodeAt(l+1))<56320||i>57343?e?u.charAt(l):a:e?u.slice(l,l+2):i-56320+(a-55296<<10)+65536}}},71963:(e,t,n)=>{var r=n(98310),o=n(18239),a=n(90472),i=n(18458),u="["+i+"]",l=RegExp("^"+u+u+"*"),s=RegExp(u+u+"*$"),exporter=function(e,t,n){var o={},u=a((function(){return!!i[e]()||"​…"!="​…"[e]()})),l=o[e]=u?t(c):i[e];n&&(o[n]=l),r(r.P+r.F*u,"String",o)},c=exporter.trim=function(e,t){return e=String(o(e)),1&t&&(e=e.replace(l,"")),2&t&&(e=e.replace(s,"")),e};e.exports=exporter},18458:e=>{e.exports="\t\n\v\f\r   ᠎              \u2028\u2029\ufeff"},6022:(e,t,n)=>{var r,o,a,i=n(61725),u=n(19897),l=n(92477),s=n(48765),c=n(43280),d=c.process,f=c.setImmediate,p=c.clearImmediate,v=c.MessageChannel,m=c.Dispatch,g=0,h={},y="onreadystatechange",run=function(){var e=+this;if(h.hasOwnProperty(e)){var t=h[e];delete h[e],t()}},listener=function(e){run.call(e.data)};f&&p||(f=function setImmediate(e){for(var t=[],n=1;arguments.length>n;)t.push(arguments[n++]);return h[++g]=function(){u("function"==typeof e?e:Function(e),t)},r(g),g},p=function clearImmediate(e){delete h[e]},"process"==n(41352)(d)?r=function(e){d.nextTick(i(run,e,1))}:m&&m.now?r=function(e){m.now(i(run,e,1))}:v?(a=(o=new v).port2,o.port1.onmessage=listener,r=i(a.postMessage,a,1)):c.addEventListener&&"function"==typeof postMessage&&!c.importScripts?(r=function(e){c.postMessage(e+"","*")},c.addEventListener("message",listener,!1)):r=y in s("script")?function(e){l.appendChild(s("script")).onreadystatechange=function(){l.removeChild(this),run.call(e)}}:function(e){setTimeout(i(run,e,1),0)}),e.exports={set:f,clear:p}},46723:(e,t,n)=>{var r=n(58290),o=Math.max,a=Math.min;e.exports=function(e,t){return(e=r(e))<0?o(e+t,0):a(e,t)}},58290:e=>{var t=Math.ceil,n=Math.floor;e.exports=function(e){return isNaN(e=+e)?0:(e>0?n:t)(e)}},1504:(e,t,n)=>{var r=n(13115),o=n(18239);e.exports=function(e){return r(o(e))}},37154:(e,t,n)=>{var r=n(58290),o=Math.min;e.exports=function(e){return e>0?o(r(e),9007199254740991):0}},60061:(e,t,n)=>{var r=n(18239);e.exports=function(e){return Object(r(e))}},12737:(e,t,n)=>{var r=n(39632);e.exports=function(e,t){if(!r(e))return e;var n,o;if(t&&"function"==typeof(n=e.toString)&&!r(o=n.call(e)))return o;if("function"==typeof(n=e.valueOf)&&!r(o=n.call(e)))return o;if(!t&&"function"==typeof(n=e.toString)&&!r(o=n.call(e)))return o;throw TypeError("Can't convert object to primitive value")}},54251:e=>{var t=0,n=Math.random();e.exports=function(e){return"Symbol(".concat(void 0===e?"":e,")_",(++t+n).toString(36))}},35701:(e,t,n)=>{var r=n(43280).navigator;e.exports=r&&r.userAgent||""},41081:(e,t,n)=>{var r=n(39632);e.exports=function(e,t){if(!r(e)||e._t!==t)throw TypeError("Incompatible receiver, "+t+" required!");return e}},31164:(e,t,n)=>{var r=n(43280),o=n(47208),a=n(36794),i=n(7273),u=n(60510).f;e.exports=function(e){var t=o.Symbol||(o.Symbol=a?{}:r.Symbol||{});"_"==e.charAt(0)||e in t||u(t,e,{value:i.f(e)})}},7273:(e,t,n)=>{t.f=n(24300)},24300:(e,t,n)=>{var r=n(29990)("wks"),o=n(54251),a=n(43280).Symbol,i="function"==typeof a;(e.exports=function(e){return r[e]||(r[e]=i&&a[e]||(i?a:o)("Symbol."+e))}).store=r},26116:(e,t,n)=>{var r=n(8312),o=n(24300)("iterator"),a=n(79105);e.exports=n(47208).getIteratorMethod=function(e){if(null!=e)return e[o]||e["@@iterator"]||a[r(e)]}},37627:(e,t,n)=>{"use strict";var r=n(61725),o=n(98310),a=n(60061),i=n(93086),u=n(11827),l=n(37154),s=n(87352),c=n(26116);o(o.S+o.F*!n(26797)((function(e){Array.from(e)})),"Array",{from:function from(e){var t,n,o,d,f=a(e),p="function"==typeof this?this:Array,v=arguments.length,m=v>1?arguments[1]:void 0,g=void 0!==m,h=0,y=c(f);if(g&&(m=r(m,v>2?arguments[2]:void 0,2)),null==y||p==Array&&u(y))for(n=new p(t=l(f.length));t>h;h++)s(n,h,g?m(f[h],h):f[h]);else for(d=y.call(f),n=new p;!(o=d.next()).done;h++)s(n,h,g?i(d,m,[o.value,h],!0):o.value);return n.length=h,n}})},42580:(e,t,n)=>{var r=n(98310);r(r.S,"Array",{isArray:n(7359)})},84411:(e,t,n)=>{"use strict";var r=n(29697),o=n(9329),a=n(79105),i=n(1504);e.exports=n(6125)(Array,"Array",(function(e,t){this._t=i(e),this._i=0,this._k=t}),(function(){var e=this._t,t=this._k,n=this._i++;return!e||n>=e.length?(this._t=void 0,o(1)):o(0,"keys"==t?n:"values"==t?e[n]:[n,e[n]])}),"values"),a.Arguments=a.Array,r("keys"),r("values"),r("entries")},78760:(e,t,n)=>{"use strict";var r=n(39632),o=n(999),a=n(24300)("hasInstance"),i=Function.prototype;a in i||n(60510).f(i,a,{value:function(e){if("function"!=typeof this||!r(e))return!1;if(!r(this.prototype))return e instanceof this;for(;e=o(e);)if(this.prototype===e)return!0;return!1}})},17710:(e,t,n)=>{"use strict";var r=n(29071),o=n(41081),a="Map";e.exports=n(70770)(a,(function(e){return function Map(){return e(this,arguments.length>0?arguments[0]:void 0)}}),{get:function get(e){var t=r.getEntry(o(this,a),e);return t&&t.v},set:function set(e,t){return r.def(o(this,a),0===e?0:e,t)}},r,!0)},99954:(e,t,n)=>{var r=n(98310);r(r.S+r.F,"Object",{assign:n(77995)})},30785:(e,t,n)=>{var r=n(98310);r(r.S,"Object",{create:n(82488)})},23078:(e,t,n)=>{var r=n(98310);r(r.S+r.F*!n(75179),"Object",{defineProperties:n(36607)})},40168:(e,t,n)=>{var r=n(98310);r(r.S+r.F*!n(75179),"Object",{defineProperty:n(60510).f})},18576:(e,t,n)=>{var r=n(1504),o=n(83264).f;n(57972)("getOwnPropertyDescriptor",(function(){return function getOwnPropertyDescriptor(e,t){return o(r(e),t)}}))},4840:(e,t,n)=>{var r=n(60061),o=n(999);n(57972)("getPrototypeOf",(function(){return function getPrototypeOf(e){return o(r(e))}}))},5453:(e,t,n)=>{var r=n(60061),o=n(86425);n(57972)("keys",(function(){return function keys(e){return o(r(e))}}))},13890:(e,t,n)=>{var r=n(98310);r(r.S,"Object",{setPrototypeOf:n(25574).set})},70285:()=>{},24399:(e,t,n)=>{var r=n(98310),o=n(60162);r(r.G+r.F*(parseInt!=o),{parseInt:o})},86082:(e,t,n)=>{"use strict";var r,o,a,i,u=n(36794),l=n(43280),s=n(61725),c=n(8312),d=n(98310),f=n(39632),p=n(26610),v=n(54677),m=n(25985),g=n(73732),h=n(6022).set,y=n(4326)(),C=n(88579),_=n(52745),b=n(35701),S=n(88747),k="Promise",x=l.TypeError,w=l.process,E=w&&w.versions,T=E&&E.v8||"",M=l.Promise,A="process"==c(w),empty=function(){},I=o=C.f,D=!!function(){try{var e=M.resolve(1),t=(e.constructor={})[n(24300)("species")]=function(e){e(empty,empty)};return(A||"function"==typeof PromiseRejectionEvent)&&e.then(empty)instanceof t&&0!==T.indexOf("6.6")&&-1===b.indexOf("Chrome/66")}catch(e){}}(),isThenable=function(e){var t;return!(!f(e)||"function"!=typeof(t=e.then))&&t},notify=function(e,t){if(!e._n){e._n=!0;var n=e._c;y((function(){for(var r=e._v,o=1==e._s,a=0,run=function(t){var n,a,i,u=o?t.ok:t.fail,l=t.resolve,s=t.reject,c=t.domain;try{u?(o||(2==e._h&&onHandleUnhandled(e),e._h=1),!0===u?n=r:(c&&c.enter(),n=u(r),c&&(c.exit(),i=!0)),n===t.promise?s(x("Promise-chain cycle")):(a=isThenable(n))?a.call(n,l,s):l(n)):s(r)}catch(e){c&&!i&&c.exit(),s(e)}};n.length>a;)run(n[a++]);e._c=[],e._n=!1,t&&!e._h&&onUnhandled(e)}))}},onUnhandled=function(e){h.call(l,(function(){var t,n,r,o=e._v,a=isUnhandled(e);if(a&&(t=_((function(){A?w.emit("unhandledRejection",o,e):(n=l.onunhandledrejection)?n({promise:e,reason:o}):(r=l.console)&&r.error&&r.error("Unhandled promise rejection",o)})),e._h=A||isUnhandled(e)?2:1),e._a=void 0,a&&t.e)throw t.v}))},isUnhandled=function(e){return 1!==e._h&&0===(e._a||e._c).length},onHandleUnhandled=function(e){h.call(l,(function(){var t;A?w.emit("rejectionHandled",e):(t=l.onrejectionhandled)&&t({promise:e,reason:e._v})}))},$reject=function(e){var t=this;t._d||(t._d=!0,(t=t._w||t)._v=e,t._s=2,t._a||(t._a=t._c.slice()),notify(t,!0))},$resolve=function(e){var t,n=this;if(!n._d){n._d=!0,n=n._w||n;try{if(n===e)throw x("Promise can't be resolved itself");(t=isThenable(e))?y((function(){var r={_w:n,_d:!1};try{t.call(e,s($resolve,r,1),s($reject,r,1))}catch(e){$reject.call(r,e)}})):(n._v=e,n._s=1,notify(n,!1))}catch(e){$reject.call({_w:n,_d:!1},e)}}};D||(M=function Promise(e){v(this,M,k,"_h"),p(e),r.call(this);try{e(s($resolve,this,1),s($reject,this,1))}catch(e){$reject.call(this,e)}},(r=function Promise(e){this._c=[],this._a=void 0,this._s=0,this._d=!1,this._v=void 0,this._h=0,this._n=!1}).prototype=n(13199)(M.prototype,{then:function then(e,t){var n=I(g(this,M));return n.ok="function"!=typeof e||e,n.fail="function"==typeof t&&t,n.domain=A?w.domain:void 0,this._c.push(n),this._a&&this._a.push(n),this._s&&notify(this,!1),n.promise},catch:function(e){return this.then(void 0,e)}}),a=function(){var e=new r;this.promise=e,this.resolve=s($resolve,e,1),this.reject=s($reject,e,1)},C.f=I=function(e){return e===M||e===i?new a(e):o(e)}),d(d.G+d.W+d.F*!D,{Promise:M}),n(2413)(M,k),n(5698)(k),i=n(47208).Promise,d(d.S+d.F*!D,k,{reject:function reject(e){var t=I(this);return(0,t.reject)(e),t.promise}}),d(d.S+d.F*(u||!D),k,{resolve:function resolve(e){return S(u&&this===i?M:this,e)}}),d(d.S+d.F*!(D&&n(26797)((function(e){M.all(e).catch(empty)}))),k,{all:function all(e){var t=this,n=I(t),r=n.resolve,o=n.reject,a=_((function(){var n=[],a=0,i=1;m(e,!1,(function(e){var u=a++,l=!1;n.push(void 0),i++,t.resolve(e).then((function(e){l||(l=!0,n[u]=e,--i||r(n))}),o)})),--i||r(n)}));return a.e&&o(a.v),n.promise},race:function race(e){var t=this,n=I(t),r=n.reject,o=_((function(){m(e,!1,(function(e){t.resolve(e).then(n.resolve,r)}))}));return o.e&&r(o.v),n.promise}})},11320:(e,t,n)=>{var r=n(98310),o=n(82488),a=n(26610),i=n(30498),u=n(39632),l=n(90472),s=n(45515),c=(n(43280).Reflect||{}).construct,d=l((function(){function F(){}return!(c((function(){}),[],F)instanceof F)})),f=!l((function(){c((function(){}))}));r(r.S+r.F*(d||f),"Reflect",{construct:function construct(e,t){a(e),i(t);var n=arguments.length<3?e:a(arguments[2]);if(f&&!d)return c(e,t,n);if(e==n){switch(t.length){case 0:return new e;case 1:return new e(t[0]);case 2:return new e(t[0],t[1]);case 3:return new e(t[0],t[1],t[2]);case 4:return new e(t[0],t[1],t[2],t[3])}var r=[null];return r.push.apply(r,t),new(s.apply(e,r))}var l=n.prototype,p=o(u(l)?l:Object.prototype),v=Function.apply.call(e,p,t);return u(v)?v:p}})},36600:(e,t,n)=>{var r=n(83264),o=n(999),a=n(20657),i=n(98310),u=n(39632),l=n(30498);i(i.S,"Reflect",{get:function get(e,t){var n,i,s=arguments.length<3?e:arguments[2];return l(e)===s?e[t]:(n=r.f(e,t))?a(n,"value")?n.value:void 0!==n.get?n.get.call(s):void 0:u(i=o(e))?get(i,t,s):void 0}})},99572:(e,t,n)=>{"use strict";var r=n(78502)(!0);n(6125)(String,"String",(function(e){this._t=String(e),this._i=0}),(function(){var e,t=this._t,n=this._i;return n>=t.length?{value:void 0,done:!0}:(e=r(t,n),this._i+=e.length,{value:e,done:!1})}))},54370:(e,t,n)=>{"use strict";var r=n(43280),o=n(20657),a=n(75179),i=n(98310),u=n(19312),l=n(6758).KEY,s=n(90472),c=n(29990),d=n(2413),f=n(54251),p=n(24300),v=n(7273),m=n(31164),g=n(42266),h=n(7359),y=n(30498),C=n(39632),_=n(60061),b=n(1504),S=n(12737),k=n(48439),x=n(82488),w=n(26084),E=n(83264),T=n(97739),M=n(60510),A=n(86425),I=E.f,D=M.f,P=w.f,R=r.Symbol,$=r.JSON,O=$&&$.stringify,B=p("_hidden"),j=p("toPrimitive"),L={}.propertyIsEnumerable,N=c("symbol-registry"),z=c("symbols"),H=c("op-symbols"),V=Object.prototype,q="function"==typeof R&&!!T.f,U=r.QObject,G=!U||!U.prototype||!U.prototype.findChild,W=a&&s((function(){return 7!=x(D({},"a",{get:function(){return D(this,"a",{value:7}).a}})).a}))?function(e,t,n){var r=I(V,t);r&&delete V[t],D(e,t,n),r&&e!==V&&D(V,t,r)}:D,wrap=function(e){var t=z[e]=x(R.prototype);return t._k=e,t},Q=q&&"symbol"==typeof R.iterator?function(e){return"symbol"==typeof e}:function(e){return e instanceof R},J=function defineProperty(e,t,n){return e===V&&J(H,t,n),y(e),t=S(t,!0),y(n),o(z,t)?(n.enumerable?(o(e,B)&&e[B][t]&&(e[B][t]=!1),n=x(n,{enumerable:k(0,!1)})):(o(e,B)||D(e,B,k(1,{})),e[B][t]=!0),W(e,t,n)):D(e,t,n)},K=function defineProperties(e,t){y(e);for(var n,r=g(t=b(t)),o=0,a=r.length;a>o;)J(e,n=r[o++],t[n]);return e},Y=function propertyIsEnumerable(e){var t=L.call(this,e=S(e,!0));return!(this===V&&o(z,e)&&!o(H,e))&&(!(t||!o(this,e)||!o(z,e)||o(this,B)&&this[B][e])||t)},X=function getOwnPropertyDescriptor(e,t){if(e=b(e),t=S(t,!0),e!==V||!o(z,t)||o(H,t)){var n=I(e,t);return!n||!o(z,t)||o(e,B)&&e[B][t]||(n.enumerable=!0),n}},Z=function getOwnPropertyNames(e){for(var t,n=P(b(e)),r=[],a=0;n.length>a;)o(z,t=n[a++])||t==B||t==l||r.push(t);return r},ee=function getOwnPropertySymbols(e){for(var t,n=e===V,r=P(n?H:b(e)),a=[],i=0;r.length>i;)!o(z,t=r[i++])||n&&!o(V,t)||a.push(z[t]);return a};q||(u((R=function Symbol(){if(this instanceof R)throw TypeError("Symbol is not a constructor!");var e=f(arguments.length>0?arguments[0]:void 0),$set=function(t){this===V&&$set.call(H,t),o(this,B)&&o(this[B],e)&&(this[B][e]=!1),W(this,e,k(1,t))};return a&&G&&W(V,e,{configurable:!0,set:$set}),wrap(e)}).prototype,"toString",(function toString(){return this._k})),E.f=X,M.f=J,n(8772).f=w.f=Z,n(67410).f=Y,T.f=ee,a&&!n(36794)&&u(V,"propertyIsEnumerable",Y,!0),v.f=function(e){return wrap(p(e))}),i(i.G+i.W+i.F*!q,{Symbol:R});for(var te="hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),ne=0;te.length>ne;)p(te[ne++]);for(var re=A(p.store),oe=0;re.length>oe;)m(re[oe++]);i(i.S+i.F*!q,"Symbol",{for:function(e){return o(N,e+="")?N[e]:N[e]=R(e)},keyFor:function keyFor(e){if(!Q(e))throw TypeError(e+" is not a symbol!");for(var t in N)if(N[t]===e)return t},useSetter:function(){G=!0},useSimple:function(){G=!1}}),i(i.S+i.F*!q,"Object",{create:function create(e,t){return void 0===t?x(e):K(x(e),t)},defineProperty:J,defineProperties:K,getOwnPropertyDescriptor:X,getOwnPropertyNames:Z,getOwnPropertySymbols:ee});var ae=s((function(){T.f(1)}));i(i.S+i.F*ae,"Object",{getOwnPropertySymbols:function getOwnPropertySymbols(e){return T.f(_(e))}}),$&&i(i.S+i.F*(!q||s((function(){var e=R();return"[null]"!=O([e])||"{}"!=O({a:e})||"{}"!=O(Object(e))}))),"JSON",{stringify:function stringify(e){for(var t,n,r=[e],o=1;arguments.length>o;)r.push(arguments[o++]);if(n=t=r[1],(C(t)||void 0!==e)&&!Q(e))return h(t)||(t=function(e,t){if("function"==typeof n&&(t=n.call(this,e,t)),!Q(t))return t}),r[1]=t,O.apply($,r)}}),R.prototype[j]||n(62292)(R.prototype,j,R.prototype.valueOf),d(R,"Symbol"),d(Math,"Math",!0),d(r.JSON,"JSON",!0)},23337:(e,t,n)=>{"use strict";var r,o=n(43280),a=n(97647)(0),i=n(19312),u=n(6758),l=n(77995),s=n(92600),c=n(39632),d=n(41081),f=n(41081),p=!o.ActiveXObject&&"ActiveXObject"in o,v="WeakMap",m=u.getWeak,g=Object.isExtensible,h=s.ufstore,wrapper=function(e){return function WeakMap(){return e(this,arguments.length>0?arguments[0]:void 0)}},y={get:function get(e){if(c(e)){var t=m(e);return!0===t?h(d(this,v)).get(e):t?t[this._i]:void 0}},set:function set(e,t){return s.def(d(this,v),e,t)}},C=e.exports=n(70770)(v,wrapper,y,s,!0,!0);f&&p&&(l((r=s.getConstructor(wrapper,v)).prototype,y),u.NEED=!0,a(["delete","has","get","set"],(function(e){var t=C.prototype,n=t[e];i(t,e,(function(t,o){if(c(t)&&!g(t)){this._f||(this._f=new r);var a=this._f[e](t,o);return"set"==e?this:a}return n.call(this,t,o)}))})))},28933:(e,t,n)=>{n(14689)("Map")},61340:(e,t,n)=>{n(7883)("Map")},43849:(e,t,n)=>{var r=n(98310);r(r.P+r.R,"Map",{toJSON:n(89518)("Map")})},95260:(e,t,n)=>{var r=n(98310),o=n(9480)(!0);r(r.S,"Object",{entries:function entries(e){return o(e)}})},67685:(e,t,n)=>{var r=n(98310),o=n(64344),a=n(1504),i=n(83264),u=n(87352);r(r.S,"Object",{getOwnPropertyDescriptors:function getOwnPropertyDescriptors(e){for(var t,n,r=a(e),l=i.f,s=o(r),c={},d=0;s.length>d;)void 0!==(n=l(r,t=s[d++]))&&u(c,t,n);return c}})},57188:(e,t,n)=>{var r=n(98310),o=n(9480)(!1);r(r.S,"Object",{values:function values(e){return o(e)}})},81522:(e,t,n)=>{"use strict";var r=n(98310),o=n(47208),a=n(43280),i=n(73732),u=n(88747);r(r.P+r.R,"Promise",{finally:function(e){var t=i(this,o.Promise||a.Promise),n="function"==typeof e;return this.then(n?function(n){return u(t,e()).then((function(){return n}))}:e,n?function(n){return u(t,e()).then((function(){throw n}))}:e)}})},25757:(e,t,n)=>{"use strict";var r=n(98310),o=n(88579),a=n(52745);r(r.S,"Promise",{try:function(e){var t=o.f(this),n=a(e);return(n.e?t.reject:t.resolve)(n.v),t.promise}})},87573:(e,t,n)=>{n(31164)("asyncIterator")},97224:(e,t,n)=>{n(31164)("observable")},92797:(e,t,n)=>{n(14689)("WeakMap")},10143:(e,t,n)=>{n(7883)("WeakMap")},74114:(e,t,n)=>{n(84411);for(var r=n(43280),o=n(62292),a=n(79105),i=n(24300)("toStringTag"),u="CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList".split(","),l=0;l<u.length;l++){var s=u[l],c=r[s],d=c&&c.prototype;d&&!d[i]&&o(d,i,s),a[s]=a.Array}},22761:e=>{e.exports=function(e){if("function"!=typeof e)throw TypeError(e+" is not a function!");return e}},42094:(e,t,n)=>{var r=n(62190)("unscopables"),o=Array.prototype;null==o[r]&&n(74216)(o,r,{}),e.exports=function(e){o[r][e]=!0}},88492:(e,t,n)=>{"use strict";var r=n(12070)(!0);e.exports=function(e,t,n){return t+(n?r(e,t).length:1)}},6365:(e,t,n)=>{var r=n(67334);e.exports=function(e){if(!r(e))throw TypeError(e+" is not an object!");return e}},59021:(e,t,n)=>{var r=n(15703),o=n(26078),a=n(78615);e.exports=function(e){return function(t,n,i){var u,l=r(t),s=o(l.length),c=a(i,s);if(e&&n!=n){for(;s>c;)if((u=l[c++])!=u)return!0}else for(;s>c;c++)if((e||c in l)&&l[c]===n)return e||c||0;return!e&&-1}}},78309:(e,t,n)=>{var r=n(11528),o=n(8467),a=n(26033),i=n(26078),u=n(63531);e.exports=function(e,t){var n=1==e,l=2==e,s=3==e,c=4==e,d=6==e,f=5==e||d,p=t||u;return function(t,u,v){for(var m,g,h=a(t),y=o(h),C=r(u,v,3),_=i(y.length),b=0,S=n?p(t,_):l?p(t,0):void 0;_>b;b++)if((f||b in y)&&(g=C(m=y[b],b,h),e))if(n)S[b]=g;else if(g)switch(e){case 3:return!0;case 5:return m;case 6:return b;case 2:S.push(m)}else if(c)return!1;return d?-1:s||c?c:S}}},81071:(e,t,n)=>{var r=n(67334),o=n(99141),a=n(62190)("species");e.exports=function(e){var t;return o(e)&&("function"!=typeof(t=e.constructor)||t!==Array&&!o(t.prototype)||(t=void 0),r(t)&&null===(t=t[a])&&(t=void 0)),void 0===t?Array:t}},63531:(e,t,n)=>{var r=n(81071);e.exports=function(e,t){return new(r(e))(t)}},20106:(e,t,n)=>{var r=n(26688),o=n(62190)("toStringTag"),a="Arguments"==r(function(){return arguments}());e.exports=function(e){var t,n,i;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(n=function(e,t){try{return e[t]}catch(e){}}(t=Object(e),o))?n:a?r(t):"Object"==(i=r(t))&&"function"==typeof t.callee?"Arguments":i}},26688:e=>{var t={}.toString;e.exports=function(e){return t.call(e).slice(8,-1)}},60066:e=>{var t=e.exports={version:"2.6.12"};"number"==typeof __e&&(__e=t)},11528:(e,t,n)=>{var r=n(22761);e.exports=function(e,t,n){if(r(e),void 0===t)return e;switch(n){case 1:return function(n){return e.call(t,n)};case 2:return function(n,r){return e.call(t,n,r)};case 3:return function(n,r,o){return e.call(t,n,r,o)}}return function(){return e.apply(t,arguments)}}},61622:e=>{e.exports=function(e){if(null==e)throw TypeError("Can't call method on  "+e);return e}},36628:(e,t,n)=>{e.exports=!n(48625)((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},5050:(e,t,n)=>{var r=n(67334),o=n(38113).document,a=r(o)&&r(o.createElement);e.exports=function(e){return a?o.createElement(e):{}}},33603:e=>{e.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},65772:(e,t,n)=>{var r=n(38113),o=n(60066),a=n(74216),i=n(17738),u=n(11528),$export=function(e,t,n){var l,s,c,d,f=e&$export.F,p=e&$export.G,v=e&$export.S,m=e&$export.P,g=e&$export.B,h=p?r:v?r[t]||(r[t]={}):(r[t]||{}).prototype,y=p?o:o[t]||(o[t]={}),C=y.prototype||(y.prototype={});for(l in p&&(n=t),n)c=((s=!f&&h&&void 0!==h[l])?h:n)[l],d=g&&s?u(c,r):m&&"function"==typeof c?u(Function.call,c):c,h&&i(h,l,c,e&$export.U),y[l]!=c&&a(y,l,d),m&&C[l]!=c&&(C[l]=c)};r.core=o,$export.F=1,$export.G=2,$export.S=4,$export.P=8,$export.B=16,$export.W=32,$export.U=64,$export.R=128,e.exports=$export},86570:(e,t,n)=>{var r=n(62190)("match");e.exports=function(e){var t=/./;try{"/./"[e](t)}catch(n){try{return t[r]=!1,!"/./"[e](t)}catch(e){}}return!0}},48625:e=>{e.exports=function(e){try{return!!e()}catch(e){return!0}}},48897:(e,t,n)=>{"use strict";n(25846);var r=n(17738),o=n(74216),a=n(48625),i=n(61622),u=n(62190),l=n(43288),s=u("species"),c=!a((function(){var e=/./;return e.exec=function(){var e=[];return e.groups={a:"7"},e},"7"!=="".replace(e,"$<a>")})),d=function(){var e=/(?:)/,t=e.exec;e.exec=function(){return t.apply(this,arguments)};var n="ab".split(e);return 2===n.length&&"a"===n[0]&&"b"===n[1]}();e.exports=function(e,t,n){var f=u(e),p=!a((function(){var t={};return t[f]=function(){return 7},7!=""[e](t)})),v=p?!a((function(){var t=!1,n=/a/;return n.exec=function(){return t=!0,null},"split"===e&&(n.constructor={},n.constructor[s]=function(){return n}),n[f](""),!t})):void 0;if(!p||!v||"replace"===e&&!c||"split"===e&&!d){var m=/./[f],g=n(i,f,""[e],(function maybeCallNative(e,t,n,r,o){return t.exec===l?p&&!o?{done:!0,value:m.call(t,n,r)}:{done:!0,value:e.call(n,t,r)}:{done:!1}})),h=g[0],y=g[1];r(String.prototype,e,h),o(RegExp.prototype,f,2==t?function(e,t){return y.call(e,this,t)}:function(e){return y.call(e,this)})}}},74859:(e,t,n)=>{"use strict";var r=n(6365);e.exports=function(){var e=r(this),t="";return e.global&&(t+="g"),e.ignoreCase&&(t+="i"),e.multiline&&(t+="m"),e.unicode&&(t+="u"),e.sticky&&(t+="y"),t}},20646:(e,t,n)=>{e.exports=n(8655)("native-function-to-string",Function.toString)},38113:e=>{var t=e.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=t)},54040:e=>{var t={}.hasOwnProperty;e.exports=function(e,n){return t.call(e,n)}},74216:(e,t,n)=>{var r=n(98558),o=n(36061);e.exports=n(36628)?function(e,t,n){return r.f(e,t,o(1,n))}:function(e,t,n){return e[t]=n,e}},8954:(e,t,n)=>{var r=n(38113).document;e.exports=r&&r.documentElement},5100:(e,t,n)=>{e.exports=!n(36628)&&!n(48625)((function(){return 7!=Object.defineProperty(n(5050)("div"),"a",{get:function(){return 7}}).a}))},18938:(e,t,n)=>{var r=n(67334),o=n(86095).set;e.exports=function(e,t,n){var a,i=t.constructor;return i!==n&&"function"==typeof i&&(a=i.prototype)!==n.prototype&&r(a)&&o&&o(e,a),e}},8467:(e,t,n)=>{var r=n(26688);e.exports=Object("z").propertyIsEnumerable(0)?Object:function(e){return"String"==r(e)?e.split(""):Object(e)}},99141:(e,t,n)=>{var r=n(26688);e.exports=Array.isArray||function isArray(e){return"Array"==r(e)}},67334:e=>{e.exports=function(e){return"object"==typeof e?null!==e:"function"==typeof e}},94587:(e,t,n)=>{var r=n(67334),o=n(26688),a=n(62190)("match");e.exports=function(e){var t;return r(e)&&(void 0!==(t=e[a])?!!t:"RegExp"==o(e))}},46445:(e,t,n)=>{"use strict";var r=n(82897),o=n(36061),a=n(55727),i={};n(74216)(i,n(62190)("iterator"),(function(){return this})),e.exports=function(e,t,n){e.prototype=r(i,{next:o(1,n)}),a(e,t+" Iterator")}},61195:(e,t,n)=>{"use strict";var r=n(81422),o=n(65772),a=n(17738),i=n(74216),u=n(23988),l=n(46445),s=n(55727),c=n(19002),d=n(62190)("iterator"),f=!([].keys&&"next"in[].keys()),p="keys",v="values",returnThis=function(){return this};e.exports=function(e,t,n,m,g,h,y){l(n,t,m);var C,_,b,getMethod=function(e){if(!f&&e in w)return w[e];switch(e){case p:return function keys(){return new n(this,e)};case v:return function values(){return new n(this,e)}}return function entries(){return new n(this,e)}},S=t+" Iterator",k=g==v,x=!1,w=e.prototype,E=w[d]||w["@@iterator"]||g&&w[g],T=E||getMethod(g),M=g?k?getMethod("entries"):T:void 0,A="Array"==t&&w.entries||E;if(A&&(b=c(A.call(new e)))!==Object.prototype&&b.next&&(s(b,S,!0),r||"function"==typeof b[d]||i(b,d,returnThis)),k&&E&&E.name!==v&&(x=!0,T=function values(){return E.call(this)}),r&&!y||!f&&!x&&w[d]||i(w,d,T),u[t]=T,u[S]=returnThis,g)if(C={values:k?T:getMethod(v),keys:h?T:getMethod(p),entries:M},y)for(_ in C)_ in w||a(w,_,C[_]);else o(o.P+o.F*(f||x),t,C);return C}},35038:e=>{e.exports=function(e,t){return{value:t,done:!!e}}},23988:e=>{e.exports={}},81422:e=>{e.exports=!1},82897:(e,t,n)=>{var r=n(6365),o=n(7331),a=n(33603),i=n(28034)("IE_PROTO"),Empty=function(){},createDict=function(){var e,t=n(5050)("iframe"),r=a.length;for(t.style.display="none",n(8954).appendChild(t),t.src="javascript:",(e=t.contentWindow.document).open(),e.write("<script>document.F=Object<\/script>"),e.close(),createDict=e.F;r--;)delete createDict.prototype[a[r]];return createDict()};e.exports=Object.create||function create(e,t){var n;return null!==e?(Empty.prototype=r(e),n=new Empty,Empty.prototype=null,n[i]=e):n=createDict(),void 0===t?n:o(n,t)}},98558:(e,t,n)=>{var r=n(6365),o=n(5100),a=n(31382),i=Object.defineProperty;t.f=n(36628)?Object.defineProperty:function defineProperty(e,t,n){if(r(e),t=a(t,!0),r(n),o)try{return i(e,t,n)}catch(e){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(e[t]=n.value),e}},7331:(e,t,n)=>{var r=n(98558),o=n(6365),a=n(42912);e.exports=n(36628)?Object.defineProperties:function defineProperties(e,t){o(e);for(var n,i=a(t),u=i.length,l=0;u>l;)r.f(e,n=i[l++],t[n]);return e}},94662:(e,t,n)=>{var r=n(65873),o=n(36061),a=n(15703),i=n(31382),u=n(54040),l=n(5100),s=Object.getOwnPropertyDescriptor;t.f=n(36628)?s:function getOwnPropertyDescriptor(e,t){if(e=a(e),t=i(t,!0),l)try{return s(e,t)}catch(e){}if(u(e,t))return o(!r.f.call(e,t),e[t])}},76604:(e,t,n)=>{var r=n(75547),o=n(33603).concat("length","prototype");t.f=Object.getOwnPropertyNames||function getOwnPropertyNames(e){return r(e,o)}},19002:(e,t,n)=>{var r=n(54040),o=n(26033),a=n(28034)("IE_PROTO"),i=Object.prototype;e.exports=Object.getPrototypeOf||function(e){return e=o(e),r(e,a)?e[a]:"function"==typeof e.constructor&&e instanceof e.constructor?e.constructor.prototype:e instanceof Object?i:null}},75547:(e,t,n)=>{var r=n(54040),o=n(15703),a=n(59021)(!1),i=n(28034)("IE_PROTO");e.exports=function(e,t){var n,u=o(e),l=0,s=[];for(n in u)n!=i&&r(u,n)&&s.push(n);for(;t.length>l;)r(u,n=t[l++])&&(~a(s,n)||s.push(n));return s}},42912:(e,t,n)=>{var r=n(75547),o=n(33603);e.exports=Object.keys||function keys(e){return r(e,o)}},65873:(e,t)=>{t.f={}.propertyIsEnumerable},36061:e=>{e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},17738:(e,t,n)=>{var r=n(38113),o=n(74216),a=n(54040),i=n(25078)("src"),u=n(20646),l="toString",s=(""+u).split(l);n(60066).inspectSource=function(e){return u.call(e)},(e.exports=function(e,t,n,u){var l="function"==typeof n;l&&(a(n,"name")||o(n,"name",t)),e[t]!==n&&(l&&(a(n,i)||o(n,i,e[t]?""+e[t]:s.join(String(t)))),e===r?e[t]=n:u?e[t]?e[t]=n:o(e,t,n):(delete e[t],o(e,t,n)))})(Function.prototype,l,(function toString(){return"function"==typeof this&&this[i]||u.call(this)}))},62404:(e,t,n)=>{"use strict";var r=n(20106),o=RegExp.prototype.exec;e.exports=function(e,t){var n=e.exec;if("function"==typeof n){var a=n.call(e,t);if("object"!=typeof a)throw new TypeError("RegExp exec method returned something other than an Object or null");return a}if("RegExp"!==r(e))throw new TypeError("RegExp#exec called on incompatible receiver");return o.call(e,t)}},43288:(e,t,n)=>{"use strict";var r,o,a=n(74859),i=RegExp.prototype.exec,u=String.prototype.replace,l=i,s=(r=/a/,o=/b*/g,i.call(r,"a"),i.call(o,"a"),0!==r.lastIndex||0!==o.lastIndex),c=void 0!==/()??/.exec("")[1];(s||c)&&(l=function exec(e){var t,n,r,o,l=this;return c&&(n=new RegExp("^"+l.source+"$(?!\\s)",a.call(l))),s&&(t=l.lastIndex),r=i.call(l,e),s&&r&&(l.lastIndex=l.global?r.index+r[0].length:t),c&&r&&r.length>1&&u.call(r[0],n,(function(){for(o=1;o<arguments.length-2;o++)void 0===arguments[o]&&(r[o]=void 0)})),r}),e.exports=l},86095:(e,t,n)=>{var r=n(67334),o=n(6365),check=function(e,t){if(o(e),!r(t)&&null!==t)throw TypeError(t+": can't set as prototype!")};e.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(e,t,r){try{(r=n(11528)(Function.call,n(94662).f(Object.prototype,"__proto__").set,2))(e,[]),t=!(e instanceof Array)}catch(e){t=!0}return function setPrototypeOf(e,n){return check(e,n),t?e.__proto__=n:r(e,n),e}}({},!1):void 0),check}},49766:(e,t,n)=>{"use strict";var r=n(38113),o=n(98558),a=n(36628),i=n(62190)("species");e.exports=function(e){var t=r[e];a&&t&&!t[i]&&o.f(t,i,{configurable:!0,get:function(){return this}})}},55727:(e,t,n)=>{var r=n(98558).f,o=n(54040),a=n(62190)("toStringTag");e.exports=function(e,t,n){e&&!o(e=n?e:e.prototype,a)&&r(e,a,{configurable:!0,value:t})}},28034:(e,t,n)=>{var r=n(8655)("keys"),o=n(25078);e.exports=function(e){return r[e]||(r[e]=o(e))}},8655:(e,t,n)=>{var r=n(60066),o=n(38113),a="__core-js_shared__",i=o[a]||(o[a]={});(e.exports=function(e,t){return i[e]||(i[e]=void 0!==t?t:{})})("versions",[]).push({version:r.version,mode:n(81422)?"pure":"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})},11987:(e,t,n)=>{var r=n(6365),o=n(22761),a=n(62190)("species");e.exports=function(e,t){var n,i=r(e).constructor;return void 0===i||null==(n=r(i)[a])?t:o(n)}},10225:(e,t,n)=>{"use strict";var r=n(48625);e.exports=function(e,t){return!!e&&r((function(){t?e.call(null,(function(){}),1):e.call(null)}))}},12070:(e,t,n)=>{var r=n(3338),o=n(61622);e.exports=function(e){return function(t,n){var a,i,u=String(o(t)),l=r(n),s=u.length;return l<0||l>=s?e?"":void 0:(a=u.charCodeAt(l))<55296||a>56319||l+1===s||(i=u.charCodeAt(l+1))<56320||i>57343?e?u.charAt(l):a:e?u.slice(l,l+2):i-56320+(a-55296<<10)+65536}}},465:(e,t,n)=>{var r=n(94587),o=n(61622);e.exports=function(e,t,n){if(r(t))throw TypeError("String#"+n+" doesn't accept regex!");return String(o(e))}},78615:(e,t,n)=>{var r=n(3338),o=Math.max,a=Math.min;e.exports=function(e,t){return(e=r(e))<0?o(e+t,0):a(e,t)}},3338:e=>{var t=Math.ceil,n=Math.floor;e.exports=function(e){return isNaN(e=+e)?0:(e>0?n:t)(e)}},15703:(e,t,n)=>{var r=n(8467),o=n(61622);e.exports=function(e){return r(o(e))}},26078:(e,t,n)=>{var r=n(3338),o=Math.min;e.exports=function(e){return e>0?o(r(e),9007199254740991):0}},26033:(e,t,n)=>{var r=n(61622);e.exports=function(e){return Object(r(e))}},31382:(e,t,n)=>{var r=n(67334);e.exports=function(e,t){if(!r(e))return e;var n,o;if(t&&"function"==typeof(n=e.toString)&&!r(o=n.call(e)))return o;if("function"==typeof(n=e.valueOf)&&!r(o=n.call(e)))return o;if(!t&&"function"==typeof(n=e.toString)&&!r(o=n.call(e)))return o;throw TypeError("Can't convert object to primitive value")}},25078:e=>{var t=0,n=Math.random();e.exports=function(e){return"Symbol(".concat(void 0===e?"":e,")_",(++t+n).toString(36))}},62190:(e,t,n)=>{var r=n(8655)("wks"),o=n(25078),a=n(38113).Symbol,i="function"==typeof a;(e.exports=function(e){return r[e]||(r[e]=i&&a[e]||(i?a:o)("Symbol."+e))}).store=r},64434:(e,t,n)=>{"use strict";var r=n(65772),o=n(78309)(2);r(r.P+r.F*!n(10225)([].filter,!0),"Array",{filter:function filter(e){return o(this,e,arguments[1])}})},78703:(e,t,n)=>{"use strict";var r=n(65772),o=n(78309)(6),a="findIndex",i=!0;a in[]&&Array(1)[a]((function(){i=!1})),r(r.P+r.F*i,"Array",{findIndex:function findIndex(e){return o(this,e,arguments.length>1?arguments[1]:void 0)}}),n(42094)(a)},71954:(e,t,n)=>{"use strict";var r=n(65772),o=n(78309)(5),a="find",i=!0;a in[]&&Array(1).find((function(){i=!1})),r(r.P+r.F*i,"Array",{find:function find(e){return o(this,e,arguments.length>1?arguments[1]:void 0)}}),n(42094)(a)},12897:(e,t,n)=>{"use strict";var r=n(42094),o=n(35038),a=n(23988),i=n(15703);e.exports=n(61195)(Array,"Array",(function(e,t){this._t=i(e),this._i=0,this._k=t}),(function(){var e=this._t,t=this._k,n=this._i++;return!e||n>=e.length?(this._t=void 0,o(1)):o(0,"keys"==t?n:"values"==t?e[n]:[n,e[n]])}),"values"),a.Arguments=a.Array,r("keys"),r("values"),r("entries")},90286:(e,t,n)=>{"use strict";var r=n(65772),o=n(78309)(1);r(r.P+r.F*!n(10225)([].map,!0),"Array",{map:function map(e){return o(this,e,arguments[1])}})},99745:(e,t,n)=>{var r=n(98558).f,o=Function.prototype,a=/^\s*function ([^ (]*)/,i="name";i in o||n(36628)&&r(o,i,{configurable:!0,get:function(){try{return(""+this).match(a)[1]}catch(e){return""}}})},76139:(e,t,n)=>{"use strict";var r=n(20106),o={};o[n(62190)("toStringTag")]="z",o+""!="[object z]"&&n(17738)(Object.prototype,"toString",(function toString(){return"[object "+r(this)+"]"}),!0)},55506:(e,t,n)=>{var r=n(38113),o=n(18938),a=n(98558).f,i=n(76604).f,u=n(94587),l=n(74859),s=r.RegExp,c=s,d=s.prototype,f=/a/g,p=/a/g,v=new s(f)!==f;if(n(36628)&&(!v||n(48625)((function(){return p[n(62190)("match")]=!1,s(f)!=f||s(p)==p||"/a/i"!=s(f,"i")})))){s=function RegExp(e,t){var n=this instanceof s,r=u(e),a=void 0===t;return!n&&r&&e.constructor===s&&a?e:o(v?new c(r&&!a?e.source:e,t):c((r=e instanceof s)?e.source:e,r&&a?l.call(e):t),n?this:d,s)};for(var proxy=function(e){e in s||a(s,e,{configurable:!0,get:function(){return c[e]},set:function(t){c[e]=t}})},m=i(c),g=0;m.length>g;)proxy(m[g++]);d.constructor=s,s.prototype=d,n(17738)(r,"RegExp",s)}n(49766)("RegExp")},25846:(e,t,n)=>{"use strict";var r=n(43288);n(65772)({target:"RegExp",proto:!0,forced:r!==/./.exec},{exec:r})},40751:(e,t,n)=>{n(36628)&&"g"!=/./g.flags&&n(98558).f(RegExp.prototype,"flags",{configurable:!0,get:n(74859)})},64828:(e,t,n)=>{"use strict";var r=n(6365),o=n(26078),a=n(88492),i=n(62404);n(48897)("match",1,(function(e,t,n,u){return[function match(n){var r=e(this),o=null==n?void 0:n[t];return void 0!==o?o.call(n,r):new RegExp(n)[t](String(r))},function(e){var t=u(n,e,this);if(t.done)return t.value;var l=r(e),s=String(this);if(!l.global)return i(l,s);var c=l.unicode;l.lastIndex=0;for(var d,f=[],p=0;null!==(d=i(l,s));){var v=String(d[0]);f[p]=v,""===v&&(l.lastIndex=a(s,o(l.lastIndex),c)),p++}return 0===p?null:f}]}))},84208:(e,t,n)=>{"use strict";var r=n(6365),o=n(26033),a=n(26078),i=n(3338),u=n(88492),l=n(62404),s=Math.max,c=Math.min,d=Math.floor,f=/\$([$&`']|\d\d?|<[^>]*>)/g,p=/\$([$&`']|\d\d?)/g;n(48897)("replace",2,(function(e,t,n,v){return[function replace(r,o){var a=e(this),i=null==r?void 0:r[t];return void 0!==i?i.call(r,a,o):n.call(String(a),r,o)},function(e,t){var o=v(n,e,this,t);if(o.done)return o.value;var d=r(e),f=String(this),p="function"==typeof t;p||(t=String(t));var m=d.global;if(m){var g=d.unicode;d.lastIndex=0}for(var h=[];;){var y=l(d,f);if(null===y)break;if(h.push(y),!m)break;""===String(y[0])&&(d.lastIndex=u(f,a(d.lastIndex),g))}for(var C,_="",b=0,S=0;S<h.length;S++){y=h[S];for(var k=String(y[0]),x=s(c(i(y.index),f.length),0),w=[],E=1;E<y.length;E++)w.push(void 0===(C=y[E])?C:String(C));var T=y.groups;if(p){var M=[k].concat(w,x,f);void 0!==T&&M.push(T);var A=String(t.apply(void 0,M))}else A=getSubstitution(k,f,x,w,T,t);x>=b&&(_+=f.slice(b,x)+A,b=x+k.length)}return _+f.slice(b)}];function getSubstitution(e,t,r,a,i,u){var l=r+e.length,s=a.length,c=p;return void 0!==i&&(i=o(i),c=f),n.call(u,c,(function(n,o){var u;switch(o.charAt(0)){case"$":return"$";case"&":return e;case"`":return t.slice(0,r);case"'":return t.slice(l);case"<":u=i[o.slice(1,-1)];break;default:var c=+o;if(0===c)return n;if(c>s){var f=d(c/10);return 0===f?n:f<=s?void 0===a[f-1]?o.charAt(1):a[f-1]+o.charAt(1):n}u=a[c-1]}return void 0===u?"":u}))}}))},99236:(e,t,n)=>{"use strict";var r=n(94587),o=n(6365),a=n(11987),i=n(88492),u=n(26078),l=n(62404),s=n(43288),c=n(48625),d=Math.min,f=[].push,p=4294967295,v=!c((function(){RegExp(p,"y")}));n(48897)("split",2,(function(e,t,n,c){var m;return m="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(e,t){var o=String(this);if(void 0===e&&0===t)return[];if(!r(e))return n.call(o,e,t);for(var a,i,u,l=[],c=(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.unicode?"u":"")+(e.sticky?"y":""),d=0,v=void 0===t?p:t>>>0,m=new RegExp(e.source,c+"g");(a=s.call(m,o))&&!((i=m.lastIndex)>d&&(l.push(o.slice(d,a.index)),a.length>1&&a.index<o.length&&f.apply(l,a.slice(1)),u=a[0].length,d=i,l.length>=v));)m.lastIndex===a.index&&m.lastIndex++;return d===o.length?!u&&m.test("")||l.push(""):l.push(o.slice(d)),l.length>v?l.slice(0,v):l}:"0".split(void 0,0).length?function(e,t){return void 0===e&&0===t?[]:n.call(this,e,t)}:n,[function split(n,r){var o=e(this),a=null==n?void 0:n[t];return void 0!==a?a.call(n,o,r):m.call(String(o),n,r)},function(e,t){var r=c(m,e,this,t,m!==n);if(r.done)return r.value;var s=o(e),f=String(this),g=a(s,RegExp),h=s.unicode,y=(s.ignoreCase?"i":"")+(s.multiline?"m":"")+(s.unicode?"u":"")+(v?"y":"g"),C=new g(v?s:"^(?:"+s.source+")",y),_=void 0===t?p:t>>>0;if(0===_)return[];if(0===f.length)return null===l(C,f)?[f]:[];for(var b=0,S=0,k=[];S<f.length;){C.lastIndex=v?S:0;var x,w=l(C,v?f:f.slice(S));if(null===w||(x=d(u(C.lastIndex+(v?0:S)),f.length))===b)S=i(f,S,h);else{if(k.push(f.slice(b,S)),k.length===_)return k;for(var E=1;E<=w.length-1;E++)if(k.push(w[E]),k.length===_)return k;S=b=x}}return k.push(f.slice(b)),k}]}))},44321:(e,t,n)=>{"use strict";n(40751);var r=n(6365),o=n(74859),a=n(36628),i="toString",u=/./.toString,define=function(e){n(17738)(RegExp.prototype,i,e,!0)};n(48625)((function(){return"/a/b"!=u.call({source:"a",flags:"b"})}))?define((function toString(){var e=r(this);return"/".concat(e.source,"/","flags"in e?e.flags:!a&&e instanceof RegExp?o.call(e):void 0)})):u.name!=i&&define((function toString(){return u.call(this)}))},3777:(e,t,n)=>{"use strict";var r=n(65772),o=n(465),a="includes";r(r.P+r.F*n(86570)(a),"String",{includes:function includes(e){return!!~o(this,e,a).indexOf(e,arguments.length>1?arguments[1]:void 0)}})},37472:(e,t,n)=>{"use strict";var r=n(12070)(!0);n(61195)(String,"String",(function(e){this._t=String(e),this._i=0}),(function(){var e,t=this._t,n=this._i;return n>=t.length?{value:void 0,done:!0}:(e=r(t,n),this._i+=e.length,{value:e,done:!1})}))},38081:(e,t,n)=>{"use strict";var r=n(65772),o=n(59021)(!0);r(r.P,"Array",{includes:function includes(e){return o(this,e,arguments.length>1?arguments[1]:void 0)}}),n(42094)("includes")},93085:(e,t,n)=>{for(var r=n(12897),o=n(42912),a=n(17738),i=n(38113),u=n(74216),l=n(23988),s=n(62190),c=s("iterator"),d=s("toStringTag"),f=l.Array,p={CSSRuleList:!0,CSSStyleDeclaration:!1,CSSValueList:!1,ClientRectList:!1,DOMRectList:!1,DOMStringList:!1,DOMTokenList:!0,DataTransferItemList:!1,FileList:!1,HTMLAllCollection:!1,HTMLCollection:!1,HTMLFormElement:!1,HTMLSelectElement:!1,MediaList:!0,MimeTypeArray:!1,NamedNodeMap:!1,NodeList:!0,PaintRequestList:!1,Plugin:!1,PluginArray:!1,SVGLengthList:!1,SVGNumberList:!1,SVGPathSegList:!1,SVGPointList:!1,SVGStringList:!1,SVGTransformList:!1,SourceBufferList:!1,StyleSheetList:!0,TextTrackCueList:!1,TextTrackList:!1,TouchList:!1},v=o(p),m=0;m<v.length;m++){var g,h=v[m],y=p[h],C=i[h],_=C&&C.prototype;if(_&&(_[c]||u(_,c,f),_[d]||u(_,d,h),l[h]=f,y))for(g in r)_[g]||a(_,g,r[g],!0)}},86248:e=>{var t=function(e){"use strict";var t,n=Object.prototype,r=n.hasOwnProperty,o="function"==typeof Symbol?Symbol:{},a=o.iterator||"@@iterator",i=o.asyncIterator||"@@asyncIterator",u=o.toStringTag||"@@toStringTag";function define(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{define({},"")}catch(e){define=function(e,t,n){return e[t]=n}}function wrap(e,t,n,r){var o=t&&t.prototype instanceof Generator?t:Generator,a=Object.create(o.prototype),i=new Context(r||[]);return a._invoke=function makeInvokeMethod(e,t,n){var r=l;return function invoke(o,a){if(r===c)throw new Error("Generator is already running");if(r===d){if("throw"===o)throw a;return doneResult()}for(n.method=o,n.arg=a;;){var i=n.delegate;if(i){var u=maybeInvokeDelegate(i,n);if(u){if(u===f)continue;return u}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(r===l)throw r=d,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r=c;var p=tryCatch(e,t,n);if("normal"===p.type){if(r=n.done?d:s,p.arg===f)continue;return{value:p.arg,done:n.done}}"throw"===p.type&&(r=d,n.method="throw",n.arg=p.arg)}}}(e,n,i),a}function tryCatch(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=wrap;var l="suspendedStart",s="suspendedYield",c="executing",d="completed",f={};function Generator(){}function GeneratorFunction(){}function GeneratorFunctionPrototype(){}var p={};p[a]=function(){return this};var v=Object.getPrototypeOf,m=v&&v(v(values([])));m&&m!==n&&r.call(m,a)&&(p=m);var g=GeneratorFunctionPrototype.prototype=Generator.prototype=Object.create(p);function defineIteratorMethods(e){["next","throw","return"].forEach((function(t){define(e,t,(function(e){return this._invoke(t,e)}))}))}function AsyncIterator(e,t){function invoke(n,o,a,i){var u=tryCatch(e[n],e,o);if("throw"!==u.type){var l=u.arg,s=l.value;return s&&"object"==typeof s&&r.call(s,"__await")?t.resolve(s.__await).then((function(e){invoke("next",e,a,i)}),(function(e){invoke("throw",e,a,i)})):t.resolve(s).then((function(e){l.value=e,a(l)}),(function(e){return invoke("throw",e,a,i)}))}i(u.arg)}var n;this._invoke=function enqueue(e,r){function callInvokeWithMethodAndArg(){return new t((function(t,n){invoke(e,r,t,n)}))}return n=n?n.then(callInvokeWithMethodAndArg,callInvokeWithMethodAndArg):callInvokeWithMethodAndArg()}}function maybeInvokeDelegate(e,n){var r=e.iterator[n.method];if(r===t){if(n.delegate=null,"throw"===n.method){if(e.iterator.return&&(n.method="return",n.arg=t,maybeInvokeDelegate(e,n),"throw"===n.method))return f;n.method="throw",n.arg=new TypeError("The iterator does not provide a 'throw' method")}return f}var o=tryCatch(r,e.iterator,n.arg);if("throw"===o.type)return n.method="throw",n.arg=o.arg,n.delegate=null,f;var a=o.arg;return a?a.done?(n[e.resultName]=a.value,n.next=e.nextLoc,"return"!==n.method&&(n.method="next",n.arg=t),n.delegate=null,f):a:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,f)}function pushTryEntry(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function resetTryEntry(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function Context(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(pushTryEntry,this),this.reset(!0)}function values(e){if(e){var n=e[a];if(n)return n.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var o=-1,i=function next(){for(;++o<e.length;)if(r.call(e,o))return next.value=e[o],next.done=!1,next;return next.value=t,next.done=!0,next};return i.next=i}}return{next:doneResult}}function doneResult(){return{value:t,done:!0}}return GeneratorFunction.prototype=g.constructor=GeneratorFunctionPrototype,GeneratorFunctionPrototype.constructor=GeneratorFunction,GeneratorFunction.displayName=define(GeneratorFunctionPrototype,u,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===GeneratorFunction||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,GeneratorFunctionPrototype):(e.__proto__=GeneratorFunctionPrototype,define(e,u,"GeneratorFunction")),e.prototype=Object.create(g),e},e.awrap=function(e){return{__await:e}},defineIteratorMethods(AsyncIterator.prototype),AsyncIterator.prototype[i]=function(){return this},e.AsyncIterator=AsyncIterator,e.async=function(t,n,r,o,a){void 0===a&&(a=Promise);var i=new AsyncIterator(wrap(t,n,r,o),a);return e.isGeneratorFunction(n)?i:i.next().then((function(e){return e.done?e.value:i.next()}))},defineIteratorMethods(g),define(g,u,"Generator"),g[a]=function(){return this},g.toString=function(){return"[object Generator]"},e.keys=function(e){var t=[];for(var n in e)t.push(n);return t.reverse(),function next(){for(;t.length;){var n=t.pop();if(n in e)return next.value=n,next.done=!1,next}return next.done=!0,next}},e.values=values,Context.prototype={constructor:Context,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=t,this.done=!1,this.delegate=null,this.method="next",this.arg=t,this.tryEntries.forEach(resetTryEntry),!e)for(var n in this)"t"===n.charAt(0)&&r.call(this,n)&&!isNaN(+n.slice(1))&&(this[n]=t)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var n=this;function handle(r,o){return i.type="throw",i.arg=e,n.next=r,o&&(n.method="next",n.arg=t),!!o}for(var o=this.tryEntries.length-1;o>=0;--o){var a=this.tryEntries[o],i=a.completion;if("root"===a.tryLoc)return handle("end");if(a.tryLoc<=this.prev){var u=r.call(a,"catchLoc"),l=r.call(a,"finallyLoc");if(u&&l){if(this.prev<a.catchLoc)return handle(a.catchLoc,!0);if(this.prev<a.finallyLoc)return handle(a.finallyLoc)}else if(u){if(this.prev<a.catchLoc)return handle(a.catchLoc,!0)}else{if(!l)throw new Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return handle(a.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var a=o;break}}a&&("break"===e||"continue"===e)&&a.tryLoc<=t&&t<=a.finallyLoc&&(a=null);var i=a?a.completion:{};return i.type=e,i.arg=t,a?(this.method="next",this.next=a.finallyLoc,f):this.complete(i)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),f},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),resetTryEntry(n),f}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;resetTryEntry(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,n,r){return this.delegate={iterator:values(e),resultName:n,nextLoc:r},"next"===this.method&&(this.arg=t),f}},e}(e.exports);try{regeneratorRuntime=t}catch(e){Function("r","regeneratorRuntime = r")(t)}},18194:e=>{"use strict";e.exports=wp.i18n}},t={};function __webpack_require__(n){var r=t[n];if(void 0!==r)return r.exports;var o=t[n]={exports:{}};return e[n](o,o.exports,__webpack_require__),o.exports}(()=>{"use strict";var e=__webpack_require__(67971),t=e(__webpack_require__(5116)),n=e(__webpack_require__(94202));elementorCommon.elements.$window.on("elementor:init-components",(function(){$e.components.register(new n.default),$e.components.register(new t.default),elementor.saver=$e.components.get("document/save")})),$e.modules.document=t.default.getModules()})()})();assets/js/admin-feedback.min.js000064400000017337151327220410012424 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(()=>{var t={22761:t=>{t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},42094:(t,e,n)=>{var r=n(62190)("unscopables"),o=Array.prototype;null==o[r]&&n(74216)(o,r,{}),t.exports=function(t){o[r][t]=!0}},6365:(t,e,n)=>{var r=n(67334);t.exports=function(t){if(!r(t))throw TypeError(t+" is not an object!");return t}},78309:(t,e,n)=>{var r=n(11528),o=n(8467),i=n(26033),a=n(26078),c=n(63531);t.exports=function(t,e){var n=1==t,u=2==t,s=3==t,f=4==t,l=6==t,d=5==t||l,p=e||c;return function(e,c,v){for(var h,y,g=i(e),b=o(g),m=r(c,v,3),x=a(b.length),_=0,k=n?p(e,x):u?p(e,0):void 0;x>_;_++)if((d||_ in b)&&(y=m(h=b[_],_,g),t))if(n)k[_]=y;else if(y)switch(t){case 3:return!0;case 5:return h;case 6:return _;case 2:k.push(h)}else if(f)return!1;return l?-1:s||f?f:k}}},81071:(t,e,n)=>{var r=n(67334),o=n(99141),i=n(62190)("species");t.exports=function(t){var e;return o(t)&&("function"!=typeof(e=t.constructor)||e!==Array&&!o(e.prototype)||(e=void 0),r(e)&&null===(e=e[i])&&(e=void 0)),void 0===e?Array:e}},63531:(t,e,n)=>{var r=n(81071);t.exports=function(t,e){return new(r(t))(e)}},26688:t=>{var e={}.toString;t.exports=function(t){return e.call(t).slice(8,-1)}},60066:t=>{var e=t.exports={version:"2.6.12"};"number"==typeof __e&&(__e=e)},11528:(t,e,n)=>{var r=n(22761);t.exports=function(t,e,n){if(r(t),void 0===e)return t;switch(n){case 1:return function(n){return t.call(e,n)};case 2:return function(n,r){return t.call(e,n,r)};case 3:return function(n,r,o){return t.call(e,n,r,o)}}return function(){return t.apply(e,arguments)}}},61622:t=>{t.exports=function(t){if(null==t)throw TypeError("Can't call method on  "+t);return t}},36628:(t,e,n)=>{t.exports=!n(48625)((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},5050:(t,e,n)=>{var r=n(67334),o=n(38113).document,i=r(o)&&r(o.createElement);t.exports=function(t){return i?o.createElement(t):{}}},65772:(t,e,n)=>{var r=n(38113),o=n(60066),i=n(74216),a=n(17738),c=n(11528),$export=function(t,e,n){var u,s,f,l,d=t&$export.F,p=t&$export.G,v=t&$export.S,h=t&$export.P,y=t&$export.B,g=p?r:v?r[e]||(r[e]={}):(r[e]||{}).prototype,b=p?o:o[e]||(o[e]={}),m=b.prototype||(b.prototype={});for(u in p&&(n=e),n)f=((s=!d&&g&&void 0!==g[u])?g:n)[u],l=y&&s?c(f,r):h&&"function"==typeof f?c(Function.call,f):f,g&&a(g,u,f,t&$export.U),b[u]!=f&&i(b,u,l),h&&m[u]!=f&&(m[u]=f)};r.core=o,$export.F=1,$export.G=2,$export.S=4,$export.P=8,$export.B=16,$export.W=32,$export.U=64,$export.R=128,t.exports=$export},48625:t=>{t.exports=function(t){try{return!!t()}catch(t){return!0}}},20646:(t,e,n)=>{t.exports=n(8655)("native-function-to-string",Function.toString)},38113:t=>{var e=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=e)},54040:t=>{var e={}.hasOwnProperty;t.exports=function(t,n){return e.call(t,n)}},74216:(t,e,n)=>{var r=n(98558),o=n(36061);t.exports=n(36628)?function(t,e,n){return r.f(t,e,o(1,n))}:function(t,e,n){return t[e]=n,t}},5100:(t,e,n)=>{t.exports=!n(36628)&&!n(48625)((function(){return 7!=Object.defineProperty(n(5050)("div"),"a",{get:function(){return 7}}).a}))},8467:(t,e,n)=>{var r=n(26688);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==r(t)?t.split(""):Object(t)}},99141:(t,e,n)=>{var r=n(26688);t.exports=Array.isArray||function isArray(t){return"Array"==r(t)}},67334:t=>{t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},81422:t=>{t.exports=!1},98558:(t,e,n)=>{var r=n(6365),o=n(5100),i=n(31382),a=Object.defineProperty;e.f=n(36628)?Object.defineProperty:function defineProperty(t,e,n){if(r(t),e=i(e,!0),r(n),o)try{return a(t,e,n)}catch(t){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(t[e]=n.value),t}},36061:t=>{t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},17738:(t,e,n)=>{var r=n(38113),o=n(74216),i=n(54040),a=n(25078)("src"),c=n(20646),u="toString",s=(""+c).split(u);n(60066).inspectSource=function(t){return c.call(t)},(t.exports=function(t,e,n,c){var u="function"==typeof n;u&&(i(n,"name")||o(n,"name",e)),t[e]!==n&&(u&&(i(n,a)||o(n,a,t[e]?""+t[e]:s.join(String(e)))),t===r?t[e]=n:c?t[e]?t[e]=n:o(t,e,n):(delete t[e],o(t,e,n)))})(Function.prototype,u,(function toString(){return"function"==typeof this&&this[a]||c.call(this)}))},8655:(t,e,n)=>{var r=n(60066),o=n(38113),i="__core-js_shared__",a=o[i]||(o[i]={});(t.exports=function(t,e){return a[t]||(a[t]=void 0!==e?e:{})})("versions",[]).push({version:r.version,mode:n(81422)?"pure":"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})},3338:t=>{var e=Math.ceil,n=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?n:e)(t)}},26078:(t,e,n)=>{var r=n(3338),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},26033:(t,e,n)=>{var r=n(61622);t.exports=function(t){return Object(r(t))}},31382:(t,e,n)=>{var r=n(67334);t.exports=function(t,e){if(!r(t))return t;var n,o;if(e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;if("function"==typeof(n=t.valueOf)&&!r(o=n.call(t)))return o;if(!e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},25078:t=>{var e=0,n=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++e+n).toString(36))}},62190:(t,e,n)=>{var r=n(8655)("wks"),o=n(25078),i=n(38113).Symbol,a="function"==typeof i;(t.exports=function(t){return r[t]||(r[t]=a&&i[t]||(a?i:o)("Symbol."+t))}).store=r},71954:(t,e,n)=>{"use strict";var r=n(65772),o=n(78309)(5),i="find",a=!0;i in[]&&Array(1).find((function(){a=!1})),r(r.P+r.F*a,"Array",{find:function find(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}}),n(42094)(i)},18194:t=>{"use strict";t.exports=wp.i18n}},e={};function __webpack_require__(n){var r=e[n];if(void 0!==r)return r.exports;var o=e[n]={exports:{}};return t[n](o,o.exports,__webpack_require__),o.exports}(()=>{"use strict";var t,e,n=__webpack_require__(18194).__;__webpack_require__(71954),t=jQuery,e={cacheElements:function cacheElements(){this.cache={$deactivateLink:t("#the-list").find('[data-slug="elementor"] span.deactivate a'),$dialogHeader:t("#elementor-deactivate-feedback-dialog-header"),$dialogForm:t("#elementor-deactivate-feedback-dialog-form")}},bindEvents:function bindEvents(){var t=this;t.cache.$deactivateLink.on("click",(function(e){e.preventDefault(),t.getModal().show()}))},deactivate:function deactivate(){location.href=this.cache.$deactivateLink.attr("href")},initModal:function initModal(){var e,r=this;r.getModal=function(){return e||(e=elementorCommon.dialogsManager.createWidget("lightbox",{id:"elementor-deactivate-feedback-modal",headerMessage:r.cache.$dialogHeader,message:r.cache.$dialogForm,hide:{onButtonClick:!1},position:{my:"center",at:"center"},onReady:function onReady(){DialogsManager.getWidgetType("lightbox").prototype.onReady.apply(this,arguments),this.addButton({name:"submit",text:n("Submit & Deactivate","elementor"),callback:r.sendFeedback.bind(r)}),elementorAdmin.config.feedback.is_tracker_opted_in||this.addButton({name:"skip",text:n("Skip & Deactivate","elementor"),callback:function callback(){r.deactivate()}})},onShow:function onShow(){var e=t("#elementor-deactivate-feedback-modal"),n=".elementor-deactivate-feedback-dialog-input";e.find(n).on("change",(function(){e.attr("data-feedback-selected",t(this).val())})),e.find(n+":checked").trigger("change")}})),e}},sendFeedback:function sendFeedback(){var e=this.cache.$dialogForm.serialize();this.getModal().getElements("submit").text("").addClass("elementor-loading"),t.post(ajaxurl,e,this.deactivate.bind(this))},init:function init(){this.initModal(),this.cacheElements(),this.bindEvents()}},t((function(){e.init()}))})()})();assets/js/admin.js000064400000712226151327220410010117 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
/******/ (() => { // webpackBootstrap
/******/ 	var __webpack_modules__ = ({

/***/ "../node_modules/@babel/runtime-corejs2/core-js/array/from.js":
/*!********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/array/from.js ***!
  \********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/array/from */ "../node_modules/core-js/library/fn/array/from.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/array/is-array */ "../node_modules/core-js/library/fn/array/is-array.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/create.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/create.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/create */ "../node_modules/core-js/library/fn/object/create.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js":
/*!********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js ***!
  \********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/define-property */ "../node_modules/core-js/library/fn/object/define-property.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/entries.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/entries */ "../node_modules/core-js/library/fn/object/entries.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js":
/*!********************************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js ***!
  \********************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/get-own-property-descriptor */ "../node_modules/core-js/library/fn/object/get-own-property-descriptor.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/get-prototype-of.js":
/*!*********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/get-prototype-of.js ***!
  \*********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/get-prototype-of */ "../node_modules/core-js/library/fn/object/get-prototype-of.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js":
/*!*********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js ***!
  \*********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/set-prototype-of */ "../node_modules/core-js/library/fn/object/set-prototype-of.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js":
/*!***************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js ***!
  \***************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/reflect/construct */ "../node_modules/core-js/library/fn/reflect/construct.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/reflect/get.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/reflect/get.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/reflect/get */ "../node_modules/core-js/library/fn/reflect/get.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js":
/*!****************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/symbol.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/symbol */ "../node_modules/core-js/library/fn/symbol/index.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js":
/*!*************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js ***!
  \*************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/symbol/iterator */ "../node_modules/core-js/library/fn/symbol/iterator.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/arrayLikeToArray.js":
/*!**************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/arrayLikeToArray.js ***!
  \**************************************************************************/
/***/ ((module) => {

function _arrayLikeToArray(arr, len) {
  if (len == null || len > arr.length) len = arr.length;

  for (var i = 0, arr2 = new Array(len); i < len; i++) {
    arr2[i] = arr[i];
  }

  return arr2;
}

module.exports = _arrayLikeToArray;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/arrayWithHoles.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/arrayWithHoles.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Array$isArray = __webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js");

function _arrayWithHoles(arr) {
  if (_Array$isArray(arr)) return arr;
}

module.exports = _arrayWithHoles;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js":
/*!*******************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js ***!
  \*******************************************************************************/
/***/ ((module) => {

function _assertThisInitialized(self) {
  if (self === void 0) {
    throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
  }

  return self;
}

module.exports = _assertThisInitialized;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js ***!
  \************************************************************************/
/***/ ((module) => {

function _classCallCheck(instance, Constructor) {
  if (!(instance instanceof Constructor)) {
    throw new TypeError("Cannot call a class as a function");
  }
}

module.exports = _classCallCheck;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/createClass.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

function _defineProperties(target, props) {
  for (var i = 0; i < props.length; i++) {
    var descriptor = props[i];
    descriptor.enumerable = descriptor.enumerable || false;
    descriptor.configurable = true;
    if ("value" in descriptor) descriptor.writable = true;

    _Object$defineProperty(target, descriptor.key, descriptor);
  }
}

function _createClass(Constructor, protoProps, staticProps) {
  if (protoProps) _defineProperties(Constructor.prototype, protoProps);
  if (staticProps) _defineProperties(Constructor, staticProps);
  return Constructor;
}

module.exports = _createClass;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/createSuper.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Reflect$construct = __webpack_require__(/*! @babel/runtime-corejs2/core-js/reflect/construct */ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js");

var getPrototypeOf = __webpack_require__(/*! ./getPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js");

var isNativeReflectConstruct = __webpack_require__(/*! ./isNativeReflectConstruct.js */ "../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js");

var possibleConstructorReturn = __webpack_require__(/*! ./possibleConstructorReturn.js */ "../node_modules/@babel/runtime-corejs2/helpers/possibleConstructorReturn.js");

function _createSuper(Derived) {
  var hasNativeReflectConstruct = isNativeReflectConstruct();
  return function _createSuperInternal() {
    var Super = getPrototypeOf(Derived),
        result;

    if (hasNativeReflectConstruct) {
      var NewTarget = getPrototypeOf(this).constructor;
      result = _Reflect$construct(Super, arguments, NewTarget);
    } else {
      result = Super.apply(this, arguments);
    }

    return possibleConstructorReturn(this, result);
  };
}

module.exports = _createSuper;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/get.js":
/*!*************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/get.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Reflect$get = __webpack_require__(/*! @babel/runtime-corejs2/core-js/reflect/get */ "../node_modules/@babel/runtime-corejs2/core-js/reflect/get.js");

var _Object$getOwnPropertyDescriptor = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-own-property-descriptor */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js");

var superPropBase = __webpack_require__(/*! ./superPropBase.js */ "../node_modules/@babel/runtime-corejs2/helpers/superPropBase.js");

function _get(target, property, receiver) {
  if (typeof Reflect !== "undefined" && _Reflect$get) {
    module.exports = _get = _Reflect$get;
    module.exports.default = module.exports, module.exports.__esModule = true;
  } else {
    module.exports = _get = function _get(target, property, receiver) {
      var base = superPropBase(target, property);
      if (!base) return;

      var desc = _Object$getOwnPropertyDescriptor(base, property);

      if (desc.get) {
        return desc.get.call(receiver);
      }

      return desc.value;
    };

    module.exports.default = module.exports, module.exports.__esModule = true;
  }

  return _get(target, property, receiver || target);
}

module.exports = _get;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$setPrototypeOf = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/set-prototype-of */ "../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js");

var _Object$getPrototypeOf = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-prototype-of */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-prototype-of.js");

function _getPrototypeOf(o) {
  module.exports = _getPrototypeOf = _Object$setPrototypeOf ? _Object$getPrototypeOf : function _getPrototypeOf(o) {
    return o.__proto__ || _Object$getPrototypeOf(o);
  };
  module.exports.default = module.exports, module.exports.__esModule = true;
  return _getPrototypeOf(o);
}

module.exports = _getPrototypeOf;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js":
/*!******************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/inherits.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$create = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/create */ "../node_modules/@babel/runtime-corejs2/core-js/object/create.js");

var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js");

function _inherits(subClass, superClass) {
  if (typeof superClass !== "function" && superClass !== null) {
    throw new TypeError("Super expression must either be null or a function");
  }

  subClass.prototype = _Object$create(superClass && superClass.prototype, {
    constructor: {
      value: subClass,
      writable: true,
      configurable: true
    }
  });
  if (superClass) setPrototypeOf(subClass, superClass);
}

module.exports = _inherits;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js":
/*!*******************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js ***!
  \*******************************************************************************/
/***/ ((module) => {

function _interopRequireDefault(obj) {
  return obj && obj.__esModule ? obj : {
    "default": obj
  };
}

module.exports = _interopRequireDefault;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js":
/*!**********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js ***!
  \**********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Reflect$construct = __webpack_require__(/*! @babel/runtime-corejs2/core-js/reflect/construct */ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js");

function _isNativeReflectConstruct() {
  if (typeof Reflect === "undefined" || !_Reflect$construct) return false;
  if (_Reflect$construct.sham) return false;
  if (typeof Proxy === "function") return true;

  try {
    Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {}));
    return true;
  } catch (e) {
    return false;
  }
}

module.exports = _isNativeReflectConstruct;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/iterableToArrayLimit.js":
/*!******************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/iterableToArrayLimit.js ***!
  \******************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Symbol = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol */ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js");

var _Symbol$iterator = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/iterator */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js");

function _iterableToArrayLimit(arr, i) {
  var _i = arr == null ? null : typeof _Symbol !== "undefined" && arr[_Symbol$iterator] || arr["@@iterator"];

  if (_i == null) return;
  var _arr = [];
  var _n = true;
  var _d = false;

  var _s, _e;

  try {
    for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {
      _arr.push(_s.value);

      if (i && _arr.length === i) break;
    }
  } catch (err) {
    _d = true;
    _e = err;
  } finally {
    try {
      if (!_n && _i["return"] != null) _i["return"]();
    } finally {
      if (_d) throw _e;
    }
  }

  return _arr;
}

module.exports = _iterableToArrayLimit;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/nonIterableRest.js":
/*!*************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/nonIterableRest.js ***!
  \*************************************************************************/
/***/ ((module) => {

function _nonIterableRest() {
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
}

module.exports = _nonIterableRest;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/possibleConstructorReturn.js":
/*!***********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/possibleConstructorReturn.js ***!
  \***********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _typeof = __webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js").default;

var assertThisInitialized = __webpack_require__(/*! ./assertThisInitialized.js */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js");

function _possibleConstructorReturn(self, call) {
  if (call && (_typeof(call) === "object" || typeof call === "function")) {
    return call;
  }

  return assertThisInitialized(self);
}

module.exports = _possibleConstructorReturn;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$setPrototypeOf = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/set-prototype-of */ "../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js");

function _setPrototypeOf(o, p) {
  module.exports = _setPrototypeOf = _Object$setPrototypeOf || function _setPrototypeOf(o, p) {
    o.__proto__ = p;
    return o;
  };

  module.exports.default = module.exports, module.exports.__esModule = true;
  return _setPrototypeOf(o, p);
}

module.exports = _setPrototypeOf;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var arrayWithHoles = __webpack_require__(/*! ./arrayWithHoles.js */ "../node_modules/@babel/runtime-corejs2/helpers/arrayWithHoles.js");

var iterableToArrayLimit = __webpack_require__(/*! ./iterableToArrayLimit.js */ "../node_modules/@babel/runtime-corejs2/helpers/iterableToArrayLimit.js");

var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js");

var nonIterableRest = __webpack_require__(/*! ./nonIterableRest.js */ "../node_modules/@babel/runtime-corejs2/helpers/nonIterableRest.js");

function _slicedToArray(arr, i) {
  return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();
}

module.exports = _slicedToArray;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/superPropBase.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/superPropBase.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var getPrototypeOf = __webpack_require__(/*! ./getPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js");

function _superPropBase(object, property) {
  while (!Object.prototype.hasOwnProperty.call(object, property)) {
    object = getPrototypeOf(object);
    if (object === null) break;
  }

  return object;
}

module.exports = _superPropBase;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js":
/*!****************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/typeof.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Symbol = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol */ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js");

var _Symbol$iterator = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/iterator */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js");

function _typeof(obj) {
  "@babel/helpers - typeof";

  if (typeof _Symbol === "function" && typeof _Symbol$iterator === "symbol") {
    module.exports = _typeof = function _typeof(obj) {
      return typeof obj;
    };

    module.exports.default = module.exports, module.exports.__esModule = true;
  } else {
    module.exports = _typeof = function _typeof(obj) {
      return obj && typeof _Symbol === "function" && obj.constructor === _Symbol && obj !== _Symbol.prototype ? "symbol" : typeof obj;
    };

    module.exports.default = module.exports, module.exports.__esModule = true;
  }

  return _typeof(obj);
}

module.exports = _typeof;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js":
/*!************************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js ***!
  \************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Array$from = __webpack_require__(/*! @babel/runtime-corejs2/core-js/array/from */ "../node_modules/@babel/runtime-corejs2/core-js/array/from.js");

var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/arrayLikeToArray.js");

function _unsupportedIterableToArray(o, minLen) {
  if (!o) return;
  if (typeof o === "string") return arrayLikeToArray(o, minLen);
  var n = Object.prototype.toString.call(o).slice(8, -1);
  if (n === "Object" && o.constructor) n = o.constructor.name;
  if (n === "Map" || n === "Set") return _Array$from(o);
  if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);
}

module.exports = _unsupportedIterableToArray;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../assets/dev/js/admin/admin-menu.js":
/*!********************************************!*\
  !*** ../assets/dev/js/admin/admin-menu.js ***!
  \********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var AdminMenuHandler = /*#__PURE__*/function (_elementorModules$Vie) {
  (0, _inherits2.default)(AdminMenuHandler, _elementorModules$Vie);

  var _super = (0, _createSuper2.default)(AdminMenuHandler);

  function AdminMenuHandler() {
    (0, _classCallCheck2.default)(this, AdminMenuHandler);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(AdminMenuHandler, [{
    key: "getDefaultElements",
    value: function getDefaultElements() {
      var settings = this.getSettings();
      return {
        $adminPageMenuLink: jQuery("a[href=\"".concat(settings.path, "\"]"))
      };
    } // This method highlights the currently visited submenu item for the slug provided as an argument to this handler.
    // This method also accepts a jQuery instance of a custom submenu item to highlight. If provided, the provided
    // item will be the one highlighted.

  }, {
    key: "highlightSubMenuItem",
    value: function highlightSubMenuItem() {
      var $element = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
      var $submenuItem = $element || this.elements.$adminPageMenuLink;
      $submenuItem.addClass('current'); // Need to add the 'current' class to the link element's parent `<li>` element as well.

      $submenuItem.parent().addClass('current');
    }
  }, {
    key: "highlightTopLevelMenuItem",
    value: function highlightTopLevelMenuItem($elementToHighlight) {
      var $elementToRemove = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
      var activeClasses = 'wp-has-current-submenu wp-menu-open current';
      $elementToHighlight.parent().addClass(activeClasses).removeClass('wp-not-current-submenu');

      if ($elementToRemove) {
        $elementToRemove.removeClass(activeClasses);
      }
    }
  }, {
    key: "onInit",
    value: function onInit() {
      (0, _get2.default)((0, _getPrototypeOf2.default)(AdminMenuHandler.prototype), "onInit", this).call(this);
      var settings = this.getSettings();

      if (window.location.href.includes(settings.path)) {
        this.highlightSubMenuItem();
      }
    }
  }]);
  return AdminMenuHandler;
}(elementorModules.ViewModule);

exports.default = AdminMenuHandler;

/***/ }),

/***/ "../assets/dev/js/admin/maintenance-mode.js":
/*!**************************************************!*\
  !*** ../assets/dev/js/admin/maintenance-mode.js ***!
  \**************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

module.exports = elementorModules.ViewModule.extend({
  getDefaultSettings: function getDefaultSettings() {
    return {
      selectors: {
        modeSelect: '.elementor_maintenance_mode_mode select',
        maintenanceModeTable: '#tab-maintenance_mode table',
        maintenanceModeDescriptions: '.elementor-maintenance-mode-description',
        excludeModeSelect: '.elementor_maintenance_mode_exclude_mode select',
        excludeRolesArea: '.elementor_maintenance_mode_exclude_roles',
        templateSelect: '.elementor_maintenance_mode_template_id select',
        editTemplateButton: '.elementor-edit-template',
        maintenanceModeError: '.elementor-maintenance-mode-error'
      },
      classes: {
        isEnabled: 'elementor-maintenance-mode-is-enabled'
      }
    };
  },
  getDefaultElements: function getDefaultElements() {
    var elements = {},
        selectors = this.getSettings('selectors');
    elements.$modeSelect = jQuery(selectors.modeSelect);
    elements.$maintenanceModeTable = elements.$modeSelect.parents(selectors.maintenanceModeTable);
    elements.$excludeModeSelect = elements.$maintenanceModeTable.find(selectors.excludeModeSelect);
    elements.$excludeRolesArea = elements.$maintenanceModeTable.find(selectors.excludeRolesArea);
    elements.$templateSelect = elements.$maintenanceModeTable.find(selectors.templateSelect);
    elements.$editTemplateButton = elements.$maintenanceModeTable.find(selectors.editTemplateButton);
    elements.$maintenanceModeDescriptions = elements.$maintenanceModeTable.find(selectors.maintenanceModeDescriptions);
    elements.$maintenanceModeError = elements.$maintenanceModeTable.find(selectors.maintenanceModeError);
    return elements;
  },
  handleModeSelectChange: function handleModeSelectChange() {
    var settings = this.getSettings(),
        elements = this.elements;
    elements.$maintenanceModeTable.toggleClass(settings.classes.isEnabled, !!elements.$modeSelect.val());
    elements.$maintenanceModeDescriptions.hide();
    elements.$maintenanceModeDescriptions.filter('[data-value="' + elements.$modeSelect.val() + '"]').show();
  },
  handleExcludeModeSelectChange: function handleExcludeModeSelectChange() {
    var elements = this.elements;
    elements.$excludeRolesArea.toggle('custom' === elements.$excludeModeSelect.val());
  },
  handleTemplateSelectChange: function handleTemplateSelectChange() {
    var elements = this.elements;
    var templateID = elements.$templateSelect.val();

    if (!templateID) {
      elements.$editTemplateButton.hide();
      elements.$maintenanceModeError.show();
      return;
    }

    var editUrl = elementorAdmin.config.home_url + '?p=' + templateID + '&elementor';
    elements.$editTemplateButton.prop('href', editUrl).show();
    elements.$maintenanceModeError.hide();
  },
  bindEvents: function bindEvents() {
    var elements = this.elements;
    elements.$modeSelect.on('change', this.handleModeSelectChange.bind(this));
    elements.$excludeModeSelect.on('change', this.handleExcludeModeSelectChange.bind(this));
    elements.$templateSelect.on('change', this.handleTemplateSelectChange.bind(this));
  },
  onAdminInit: function onAdminInit() {
    this.handleModeSelectChange();
    this.handleExcludeModeSelectChange();
    this.handleTemplateSelectChange();
  },
  onInit: function onInit() {
    elementorModules.ViewModule.prototype.onInit.apply(this, arguments);
    elementorCommon.elements.$window.on('elementor/admin/init', this.onAdminInit);
  }
});

/***/ }),

/***/ "../core/common/assets/js/utils/environment.js":
/*!*****************************************************!*\
  !*** ../core/common/assets/js/utils/environment.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");

__webpack_require__(/*! core-js/modules/es6.regexp.to-string.js */ "../node_modules/core-js/modules/es6.regexp.to-string.js");

var matchUserAgent = function matchUserAgent(UserAgentStr) {
  return userAgent.indexOf(UserAgentStr) >= 0;
},
    userAgent = navigator.userAgent,
    // Solution influenced by https://stackoverflow.com/questions/9847580/how-to-detect-safari-chrome-ie-firefox-and-opera-browser
// Opera 8.0+
isOpera = !!window.opr && !!opr.addons || !!window.opera || matchUserAgent(' OPR/'),
    // Firefox 1.0+
isFirefox = matchUserAgent('Firefox'),
    // Safari 3.0+ "[object HTMLElementConstructor]"
isSafari = /^((?!chrome|android).)*safari/i.test(userAgent) || /constructor/i.test(window.HTMLElement) || function (p) {
  return '[object SafariRemoteNotification]' === p.toString();
}(!window.safari || typeof safari !== 'undefined' && safari.pushNotification),
    // Internet Explorer 6-11
isIE = /Trident|MSIE/.test(userAgent) && (
/*@cc_on!@*/
 false || !!document.documentMode),
    // Edge 20+
isEdge = !isIE && !!window.StyleMedia || matchUserAgent('Edg'),
    // Google Chrome (Not accurate)
isChrome = !!window.chrome && matchUserAgent('Chrome') && !(isEdge || isOpera),
    // Blink engine
isBlink = matchUserAgent('Chrome') && !!window.CSS,
    // Apple Webkit engine
isAppleWebkit = matchUserAgent('AppleWebKit') && !isBlink,
    environment = {
  appleWebkit: isAppleWebkit,
  blink: isBlink,
  chrome: isChrome,
  edge: isEdge,
  firefox: isFirefox,
  ie: isIE,
  mac: matchUserAgent('Macintosh'),
  opera: isOpera,
  safari: isSafari,
  webkit: matchUserAgent('AppleWebKit')
};

var _default = environment;
exports.default = _default;

/***/ }),

/***/ "../core/experiments/assets/js/admin/module.js":
/*!*****************************************************!*\
  !*** ../core/experiments/assets/js/admin/module.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var ExperimentsModule = /*#__PURE__*/function (_elementorModules$Vie) {
  (0, _inherits2.default)(ExperimentsModule, _elementorModules$Vie);

  var _super = (0, _createSuper2.default)(ExperimentsModule);

  function ExperimentsModule() {
    (0, _classCallCheck2.default)(this, ExperimentsModule);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(ExperimentsModule, [{
    key: "getDefaultSettings",
    value: function getDefaultSettings() {
      return {
        selectors: {
          experimentIndicators: '.e-experiment__title__indicator'
        }
      };
    }
  }, {
    key: "getDefaultElements",
    value: function getDefaultElements() {
      return {
        $experimentIndicators: jQuery(this.getSettings('selectors.experimentIndicators'))
      };
    }
  }, {
    key: "addTipsy",
    value: function addTipsy($element) {
      $element.tipsy({
        gravity: 's',
        offset: 8,
        title: function title() {
          return this.getAttribute('data-tooltip');
        }
      });
    }
  }, {
    key: "addIndicatorsTooltips",
    value: function addIndicatorsTooltips() {
      var _this = this;

      this.elements.$experimentIndicators.each(function (index, experimentIndicator) {
        return _this.addTipsy(jQuery(experimentIndicator));
      });
    }
  }, {
    key: "onInit",
    value: function onInit() {
      var _this2 = this;

      (0, _get2.default)((0, _getPrototypeOf2.default)(ExperimentsModule.prototype), "onInit", this).call(this);

      if (this.elements.$experimentIndicators.length) {
        import(
        /* webpackIgnore: true */
        "".concat(elementorCommon.config.urls.assets, "lib/tipsy/tipsy.min.js?ver=1.0.0")).then(function () {
          return _this2.addIndicatorsTooltips();
        });
      }
    }
  }]);
  return ExperimentsModule;
}(elementorModules.ViewModule);

exports.default = ExperimentsModule;

/***/ }),

/***/ "../modules/landing-pages/assets/js/admin/landing-pages.js":
/*!*****************************************************************!*\
  !*** ../modules/landing-pages/assets/js/admin/landing-pages.js ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _adminMenu = _interopRequireDefault(__webpack_require__(/*! elementor-admin/admin-menu */ "../assets/dev/js/admin/admin-menu.js"));

var LandingPagesHandler = /*#__PURE__*/function (_AdminMenuHandler) {
  (0, _inherits2.default)(LandingPagesHandler, _AdminMenuHandler);

  var _super = (0, _createSuper2.default)(LandingPagesHandler);

  function LandingPagesHandler() {
    (0, _classCallCheck2.default)(this, LandingPagesHandler);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(LandingPagesHandler, [{
    key: "getDefaultSettings",
    value: function getDefaultSettings() {
      var pageName = 'e-landing-page',
          adminMenuSelectors = {
        // The escaping is done because jQuery requires it for selectors.
        landingPagesTablePage: 'a[href=\"edit.php?post_type=' + pageName + '\"]',
        landingPagesAddNewPage: 'a[href=\"edit.php?post_type=elementor_library&page=' + pageName + '\"]'
      };
      return {
        selectors: {
          addButton: '.page-title-action:first',
          pagesMenuItemAndLink: '#menu-pages, #menu-pages > a',
          landingPagesMenuItem: "".concat(adminMenuSelectors.landingPagesTablePage, ", ").concat(adminMenuSelectors.landingPagesAddNewPage),
          templatesMenuItem: '.menu-icon-elementor_library'
        }
      };
    }
  }, {
    key: "getDefaultElements",
    value: function getDefaultElements() {
      var selectors = this.getSettings('selectors'),
          elements = (0, _get2.default)((0, _getPrototypeOf2.default)(LandingPagesHandler.prototype), "getDefaultElements", this).call(this);
      elements.$landingPagesMenuItem = jQuery(selectors.landingPagesMenuItem);
      elements.$templatesMenuItem = jQuery(selectors.templatesMenuItem);
      elements.$pagesMenuItemAndLink = jQuery(selectors.pagesMenuItemAndLink);
      return elements;
    }
  }, {
    key: "onInit",
    value: function onInit() {
      (0, _get2.default)((0, _getPrototypeOf2.default)(LandingPagesHandler.prototype), "onInit", this).call(this);
      var settings = this.getSettings(),
          isLandingPagesTablePage = !!window.location.href.includes(settings.paths.landingPagesTablePage),
          isLandingPagesTrashPage = !!window.location.href.includes(settings.paths.landingPagesTrashPage),
          isLandingPagesCreateYourFirstPage = !!window.location.href.includes(settings.paths.landingPagesAddNewPage); // If the current page is a Landing Pages Page (the Posts Table page, "Create Your First.." page, or a native
      // WordPress dashboard page edit screen when using WordPress' Classic Editor).

      if (isLandingPagesTablePage || isLandingPagesTrashPage || isLandingPagesCreateYourFirstPage || settings.isLandingPageAdminEdit) {
        // Make sure the active admin top level menu item is 'Templates', and not 'Pages'.
        this.highlightTopLevelMenuItem(this.elements.$templatesMenuItem, this.elements.$pagesMenuItemAndLink);
        this.highlightSubMenuItem(this.elements.$landingPagesMenuItem); // Overwrite the 'Add New' button at the top of the page to open in Elementor with the library module open.

        jQuery(settings.selectors.addButton).attr('href', elementorAdminConfig.urls.addNewLandingPageUrl);
      }
    }
  }]);
  return LandingPagesHandler;
}(_adminMenu.default);

exports.default = LandingPagesHandler;

/***/ }),

/***/ "../modules/landing-pages/assets/js/admin/module.js":
/*!**********************************************************!*\
  !*** ../modules/landing-pages/assets/js/admin/module.js ***!
  \**********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _landingPages = _interopRequireDefault(__webpack_require__(/*! ./landing-pages */ "../modules/landing-pages/assets/js/admin/landing-pages.js"));

var _default = /*#__PURE__*/function (_elementorModules$Mod) {
  (0, _inherits2.default)(_default, _elementorModules$Mod);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    var _this;

    (0, _classCallCheck2.default)(this, _default);
    _this = _super.call(this);
    elementorCommon.elements.$window.on('elementor/admin/init', function () {
      _this.runHandler();
    });
    return _this;
  }

  (0, _createClass2.default)(_default, [{
    key: "runHandler",
    value: function runHandler() {
      var _elementorAdmin$confi, _elementorAdmin$confi2;

      var pageName = 'e-landing-page',
          paths = {
        landingPagesTablePage: 'edit.php?post_type=' + pageName,
        landingPagesAddNewPage: 'edit.php?post_type=elementor_library&page=' + pageName,
        landingPagesTrashPage: 'edit.php?post_status=trash&post_type=' + pageName
      },
          args = {
        path: (_elementorAdmin$confi = elementorAdmin.config.landingPages) !== null && _elementorAdmin$confi !== void 0 && _elementorAdmin$confi.landingPagesHasPages ? paths.landingPagesTablePage : paths.landingPagesAddNewPage,
        isLandingPageAdminEdit: (_elementorAdmin$confi2 = elementorAdmin.config.landingPages) === null || _elementorAdmin$confi2 === void 0 ? void 0 : _elementorAdmin$confi2.isLandingPageAdminEdit,
        paths: paths
      }; // This class modifies elements in the WordPress admin that are rendered "wrong" by the WordPress core
      // and could not be modified in the backend.

      new _landingPages.default(args);
    }
  }]);
  return _default;
}(elementorModules.Module);

exports.default = _default;

/***/ }),

/***/ "../node_modules/core-js/library/fn/array/from.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/fn/array/from.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.string.iterator */ "../node_modules/core-js/library/modules/es6.string.iterator.js");
__webpack_require__(/*! ../../modules/es6.array.from */ "../node_modules/core-js/library/modules/es6.array.from.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Array.from;


/***/ }),

/***/ "../node_modules/core-js/library/fn/array/is-array.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/fn/array/is-array.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.array.is-array */ "../node_modules/core-js/library/modules/es6.array.is-array.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Array.isArray;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/create.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/create.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.create */ "../node_modules/core-js/library/modules/es6.object.create.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function create(P, D) {
  return $Object.create(P, D);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/define-property.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/define-property.js ***!
  \********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.define-property */ "../node_modules/core-js/library/modules/es6.object.define-property.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function defineProperty(it, key, desc) {
  return $Object.defineProperty(it, key, desc);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/entries.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/entries.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es7.object.entries */ "../node_modules/core-js/library/modules/es7.object.entries.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.entries;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/get-own-property-descriptor.js":
/*!********************************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/get-own-property-descriptor.js ***!
  \********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.get-own-property-descriptor */ "../node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function getOwnPropertyDescriptor(it, key) {
  return $Object.getOwnPropertyDescriptor(it, key);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/get-prototype-of.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/get-prototype-of.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.get-prototype-of */ "../node_modules/core-js/library/modules/es6.object.get-prototype-of.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.getPrototypeOf;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/set-prototype-of.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/set-prototype-of.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.set-prototype-of */ "../node_modules/core-js/library/modules/es6.object.set-prototype-of.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.setPrototypeOf;


/***/ }),

/***/ "../node_modules/core-js/library/fn/reflect/construct.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/fn/reflect/construct.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.reflect.construct */ "../node_modules/core-js/library/modules/es6.reflect.construct.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Reflect.construct;


/***/ }),

/***/ "../node_modules/core-js/library/fn/reflect/get.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/library/fn/reflect/get.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.reflect.get */ "../node_modules/core-js/library/modules/es6.reflect.get.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Reflect.get;


/***/ }),

/***/ "../node_modules/core-js/library/fn/symbol/index.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/fn/symbol/index.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.symbol */ "../node_modules/core-js/library/modules/es6.symbol.js");
__webpack_require__(/*! ../../modules/es6.object.to-string */ "../node_modules/core-js/library/modules/es6.object.to-string.js");
__webpack_require__(/*! ../../modules/es7.symbol.async-iterator */ "../node_modules/core-js/library/modules/es7.symbol.async-iterator.js");
__webpack_require__(/*! ../../modules/es7.symbol.observable */ "../node_modules/core-js/library/modules/es7.symbol.observable.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Symbol;


/***/ }),

/***/ "../node_modules/core-js/library/fn/symbol/iterator.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/fn/symbol/iterator.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.string.iterator */ "../node_modules/core-js/library/modules/es6.string.iterator.js");
__webpack_require__(/*! ../../modules/web.dom.iterable */ "../node_modules/core-js/library/modules/web.dom.iterable.js");
module.exports = __webpack_require__(/*! ../../modules/_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js").f('iterator');


/***/ }),

/***/ "../node_modules/core-js/library/modules/_a-function.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_a-function.js ***!
  \**************************************************************/
/***/ ((module) => {

module.exports = function (it) {
  if (typeof it != 'function') throw TypeError(it + ' is not a function!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_add-to-unscopables.js":
/*!**********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_add-to-unscopables.js ***!
  \**********************************************************************/
/***/ ((module) => {

module.exports = function () { /* empty */ };


/***/ }),

/***/ "../node_modules/core-js/library/modules/_an-object.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_an-object.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
module.exports = function (it) {
  if (!isObject(it)) throw TypeError(it + ' is not an object!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-includes.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-includes.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// false -> Array#indexOf
// true  -> Array#includes
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
var toAbsoluteIndex = __webpack_require__(/*! ./_to-absolute-index */ "../node_modules/core-js/library/modules/_to-absolute-index.js");
module.exports = function (IS_INCLUDES) {
  return function ($this, el, fromIndex) {
    var O = toIObject($this);
    var length = toLength(O.length);
    var index = toAbsoluteIndex(fromIndex, length);
    var value;
    // Array#includes uses SameValueZero equality algorithm
    // eslint-disable-next-line no-self-compare
    if (IS_INCLUDES && el != el) while (length > index) {
      value = O[index++];
      // eslint-disable-next-line no-self-compare
      if (value != value) return true;
    // Array#indexOf ignores holes, Array#includes - not
    } else for (;length > index; index++) if (IS_INCLUDES || index in O) {
      if (O[index] === el) return IS_INCLUDES || index || 0;
    } return !IS_INCLUDES && -1;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_bind.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_bind.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var invoke = __webpack_require__(/*! ./_invoke */ "../node_modules/core-js/library/modules/_invoke.js");
var arraySlice = [].slice;
var factories = {};

var construct = function (F, len, args) {
  if (!(len in factories)) {
    for (var n = [], i = 0; i < len; i++) n[i] = 'a[' + i + ']';
    // eslint-disable-next-line no-new-func
    factories[len] = Function('F,a', 'return new F(' + n.join(',') + ')');
  } return factories[len](F, args);
};

module.exports = Function.bind || function bind(that /* , ...args */) {
  var fn = aFunction(this);
  var partArgs = arraySlice.call(arguments, 1);
  var bound = function (/* args... */) {
    var args = partArgs.concat(arraySlice.call(arguments));
    return this instanceof bound ? construct(fn, args.length, args) : invoke(fn, args, that);
  };
  if (isObject(fn.prototype)) bound.prototype = fn.prototype;
  return bound;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_classof.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_classof.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// getting tag from 19.1.3.6 Object.prototype.toString()
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('toStringTag');
// ES3 wrong here
var ARG = cof(function () { return arguments; }()) == 'Arguments';

// fallback for IE11 Script Access Denied error
var tryGet = function (it, key) {
  try {
    return it[key];
  } catch (e) { /* empty */ }
};

module.exports = function (it) {
  var O, T, B;
  return it === undefined ? 'Undefined' : it === null ? 'Null'
    // @@toStringTag case
    : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T
    // builtinTag case
    : ARG ? cof(O)
    // ES3 arguments fallback
    : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_cof.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_cof.js ***!
  \*******************************************************/
/***/ ((module) => {

var toString = {}.toString;

module.exports = function (it) {
  return toString.call(it).slice(8, -1);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_core.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_core.js ***!
  \********************************************************/
/***/ ((module) => {

var core = module.exports = { version: '2.6.12' };
if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/library/modules/_create-property.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_create-property.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $defineProperty = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");

module.exports = function (object, index, value) {
  if (index in object) $defineProperty.f(object, index, createDesc(0, value));
  else object[index] = value;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_ctx.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_ctx.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// optional / simple context binding
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
module.exports = function (fn, that, length) {
  aFunction(fn);
  if (that === undefined) return fn;
  switch (length) {
    case 1: return function (a) {
      return fn.call(that, a);
    };
    case 2: return function (a, b) {
      return fn.call(that, a, b);
    };
    case 3: return function (a, b, c) {
      return fn.call(that, a, b, c);
    };
  }
  return function (/* ...args */) {
    return fn.apply(that, arguments);
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_defined.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_defined.js ***!
  \***********************************************************/
/***/ ((module) => {

// 7.2.1 RequireObjectCoercible(argument)
module.exports = function (it) {
  if (it == undefined) throw TypeError("Can't call method on  " + it);
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_descriptors.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_descriptors.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Thank's IE8 for his funny defineProperty
module.exports = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/_dom-create.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_dom-create.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").document;
// typeof document.createElement is 'object' in old IE
var is = isObject(document) && isObject(document.createElement);
module.exports = function (it) {
  return is ? document.createElement(it) : {};
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_enum-bug-keys.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_enum-bug-keys.js ***!
  \*****************************************************************/
/***/ ((module) => {

// IE 8- don't enum bug keys
module.exports = (
  'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
).split(',');


/***/ }),

/***/ "../node_modules/core-js/library/modules/_enum-keys.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_enum-keys.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// all enumerable object keys, includes symbols
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var gOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js");
module.exports = function (it) {
  var result = getKeys(it);
  var getSymbols = gOPS.f;
  if (getSymbols) {
    var symbols = getSymbols(it);
    var isEnum = pIE.f;
    var i = 0;
    var key;
    while (symbols.length > i) if (isEnum.call(it, key = symbols[i++])) result.push(key);
  } return result;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_export.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_export.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var PROTOTYPE = 'prototype';

var $export = function (type, name, source) {
  var IS_FORCED = type & $export.F;
  var IS_GLOBAL = type & $export.G;
  var IS_STATIC = type & $export.S;
  var IS_PROTO = type & $export.P;
  var IS_BIND = type & $export.B;
  var IS_WRAP = type & $export.W;
  var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
  var expProto = exports[PROTOTYPE];
  var target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE];
  var key, own, out;
  if (IS_GLOBAL) source = name;
  for (key in source) {
    // contains in native
    own = !IS_FORCED && target && target[key] !== undefined;
    if (own && has(exports, key)) continue;
    // export native or passed
    out = own ? target[key] : source[key];
    // prevent global pollution for namespaces
    exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key]
    // bind timers to global for call from export context
    : IS_BIND && own ? ctx(out, global)
    // wrap global constructors for prevent change them in library
    : IS_WRAP && target[key] == out ? (function (C) {
      var F = function (a, b, c) {
        if (this instanceof C) {
          switch (arguments.length) {
            case 0: return new C();
            case 1: return new C(a);
            case 2: return new C(a, b);
          } return new C(a, b, c);
        } return C.apply(this, arguments);
      };
      F[PROTOTYPE] = C[PROTOTYPE];
      return F;
    // make static versions for prototype methods
    })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
    // export proto methods to core.%CONSTRUCTOR%.methods.%NAME%
    if (IS_PROTO) {
      (exports.virtual || (exports.virtual = {}))[key] = out;
      // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME%
      if (type & $export.R && expProto && !expProto[key]) hide(expProto, key, out);
    }
  }
};
// type bitmap
$export.F = 1;   // forced
$export.G = 2;   // global
$export.S = 4;   // static
$export.P = 8;   // proto
$export.B = 16;  // bind
$export.W = 32;  // wrap
$export.U = 64;  // safe
$export.R = 128; // real proto method for `library`
module.exports = $export;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_fails.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_fails.js ***!
  \*********************************************************/
/***/ ((module) => {

module.exports = function (exec) {
  try {
    return !!exec();
  } catch (e) {
    return true;
  }
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_global.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_global.js ***!
  \**********************************************************/
/***/ ((module) => {

// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
var global = module.exports = typeof window != 'undefined' && window.Math == Math
  ? window : typeof self != 'undefined' && self.Math == Math ? self
  // eslint-disable-next-line no-new-func
  : Function('return this')();
if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/library/modules/_has.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_has.js ***!
  \*******************************************************/
/***/ ((module) => {

var hasOwnProperty = {}.hasOwnProperty;
module.exports = function (it, key) {
  return hasOwnProperty.call(it, key);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_hide.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_hide.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? function (object, key, value) {
  return dP.f(object, key, createDesc(1, value));
} : function (object, key, value) {
  object[key] = value;
  return object;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_html.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_html.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").document;
module.exports = document && document.documentElement;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_ie8-dom-define.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_ie8-dom-define.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") && !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  return Object.defineProperty(__webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/library/modules/_dom-create.js")('div'), 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/_invoke.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_invoke.js ***!
  \**********************************************************/
/***/ ((module) => {

// fast apply, http://jsperf.lnkit.com/fast-apply/5
module.exports = function (fn, args, that) {
  var un = that === undefined;
  switch (args.length) {
    case 0: return un ? fn()
                      : fn.call(that);
    case 1: return un ? fn(args[0])
                      : fn.call(that, args[0]);
    case 2: return un ? fn(args[0], args[1])
                      : fn.call(that, args[0], args[1]);
    case 3: return un ? fn(args[0], args[1], args[2])
                      : fn.call(that, args[0], args[1], args[2]);
    case 4: return un ? fn(args[0], args[1], args[2], args[3])
                      : fn.call(that, args[0], args[1], args[2], args[3]);
  } return fn.apply(that, args);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iobject.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iobject.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// fallback for non-array-like ES3 and non-enumerable old V8 strings
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js");
// eslint-disable-next-line no-prototype-builtins
module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
  return cof(it) == 'String' ? it.split('') : Object(it);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_is-array-iter.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_is-array-iter.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// check on default Array iterator
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var ArrayProto = Array.prototype;

module.exports = function (it) {
  return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_is-array.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_is-array.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.2.2 IsArray(argument)
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js");
module.exports = Array.isArray || function isArray(arg) {
  return cof(arg) == 'Array';
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_is-object.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_is-object.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = function (it) {
  return typeof it === 'object' ? it !== null : typeof it === 'function';
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-call.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-call.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// call something on iterator step with safe closing on error
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
module.exports = function (iterator, fn, value, entries) {
  try {
    return entries ? fn(anObject(value)[0], value[1]) : fn(value);
  // 7.4.6 IteratorClose(iterator, completion)
  } catch (e) {
    var ret = iterator['return'];
    if (ret !== undefined) anObject(ret.call(iterator));
    throw e;
  }
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-create.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-create.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
var descriptor = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var IteratorPrototype = {};

// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
__webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js")(IteratorPrototype, __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator'), function () { return this; });

module.exports = function (Constructor, NAME, next) {
  Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });
  setToStringTag(Constructor, NAME + ' Iterator');
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-define.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-define.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/library/modules/_redefine.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var $iterCreate = __webpack_require__(/*! ./_iter-create */ "../node_modules/core-js/library/modules/_iter-create.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`
var FF_ITERATOR = '@@iterator';
var KEYS = 'keys';
var VALUES = 'values';

var returnThis = function () { return this; };

module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {
  $iterCreate(Constructor, NAME, next);
  var getMethod = function (kind) {
    if (!BUGGY && kind in proto) return proto[kind];
    switch (kind) {
      case KEYS: return function keys() { return new Constructor(this, kind); };
      case VALUES: return function values() { return new Constructor(this, kind); };
    } return function entries() { return new Constructor(this, kind); };
  };
  var TAG = NAME + ' Iterator';
  var DEF_VALUES = DEFAULT == VALUES;
  var VALUES_BUG = false;
  var proto = Base.prototype;
  var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];
  var $default = $native || getMethod(DEFAULT);
  var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;
  var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;
  var methods, key, IteratorPrototype;
  // Fix native
  if ($anyNative) {
    IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));
    if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {
      // Set @@toStringTag to native iterators
      setToStringTag(IteratorPrototype, TAG, true);
      // fix for some old engines
      if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);
    }
  }
  // fix Array#{values, @@iterator}.name in V8 / FF
  if (DEF_VALUES && $native && $native.name !== VALUES) {
    VALUES_BUG = true;
    $default = function values() { return $native.call(this); };
  }
  // Define iterator
  if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {
    hide(proto, ITERATOR, $default);
  }
  // Plug for library
  Iterators[NAME] = $default;
  Iterators[TAG] = returnThis;
  if (DEFAULT) {
    methods = {
      values: DEF_VALUES ? $default : getMethod(VALUES),
      keys: IS_SET ? $default : getMethod(KEYS),
      entries: $entries
    };
    if (FORCED) for (key in methods) {
      if (!(key in proto)) redefine(proto, key, methods[key]);
    } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
  }
  return methods;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-detect.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-detect.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var SAFE_CLOSING = false;

try {
  var riter = [7][ITERATOR]();
  riter['return'] = function () { SAFE_CLOSING = true; };
  // eslint-disable-next-line no-throw-literal
  Array.from(riter, function () { throw 2; });
} catch (e) { /* empty */ }

module.exports = function (exec, skipClosing) {
  if (!skipClosing && !SAFE_CLOSING) return false;
  var safe = false;
  try {
    var arr = [7];
    var iter = arr[ITERATOR]();
    iter.next = function () { return { done: safe = true }; };
    arr[ITERATOR] = function () { return iter; };
    exec(arr);
  } catch (e) { /* empty */ }
  return safe;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-step.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-step.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = function (done, value) {
  return { value: value, done: !!done };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iterators.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iterators.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = {};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_library.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_library.js ***!
  \***********************************************************/
/***/ ((module) => {

module.exports = true;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_meta.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_meta.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var META = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js")('meta');
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var setDesc = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
var id = 0;
var isExtensible = Object.isExtensible || function () {
  return true;
};
var FREEZE = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  return isExtensible(Object.preventExtensions({}));
});
var setMeta = function (it) {
  setDesc(it, META, { value: {
    i: 'O' + ++id, // object ID
    w: {}          // weak collections IDs
  } });
};
var fastKey = function (it, create) {
  // return primitive with prefix
  if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;
  if (!has(it, META)) {
    // can't set metadata to uncaught frozen object
    if (!isExtensible(it)) return 'F';
    // not necessary to add metadata
    if (!create) return 'E';
    // add missing metadata
    setMeta(it);
  // return object ID
  } return it[META].i;
};
var getWeak = function (it, create) {
  if (!has(it, META)) {
    // can't set metadata to uncaught frozen object
    if (!isExtensible(it)) return true;
    // not necessary to add metadata
    if (!create) return false;
    // add missing metadata
    setMeta(it);
  // return hash weak collections IDs
  } return it[META].w;
};
// add metadata on freeze-family methods calling
var onFreeze = function (it) {
  if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it);
  return it;
};
var meta = module.exports = {
  KEY: META,
  NEED: false,
  fastKey: fastKey,
  getWeak: getWeak,
  onFreeze: onFreeze
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-create.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-create.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var dPs = __webpack_require__(/*! ./_object-dps */ "../node_modules/core-js/library/modules/_object-dps.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');
var Empty = function () { /* empty */ };
var PROTOTYPE = 'prototype';

// Create object with fake `null` prototype: use iframe Object with cleared prototype
var createDict = function () {
  // Thrash, waste and sodomy: IE GC bug
  var iframe = __webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/library/modules/_dom-create.js")('iframe');
  var i = enumBugKeys.length;
  var lt = '<';
  var gt = '>';
  var iframeDocument;
  iframe.style.display = 'none';
  __webpack_require__(/*! ./_html */ "../node_modules/core-js/library/modules/_html.js").appendChild(iframe);
  iframe.src = 'javascript:'; // eslint-disable-line no-script-url
  // createDict = iframe.contentWindow.Object;
  // html.removeChild(iframe);
  iframeDocument = iframe.contentWindow.document;
  iframeDocument.open();
  iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);
  iframeDocument.close();
  createDict = iframeDocument.F;
  while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];
  return createDict();
};

module.exports = Object.create || function create(O, Properties) {
  var result;
  if (O !== null) {
    Empty[PROTOTYPE] = anObject(O);
    result = new Empty();
    Empty[PROTOTYPE] = null;
    // add "__proto__" for Object.getPrototypeOf polyfill
    result[IE_PROTO] = O;
  } else result = createDict();
  return Properties === undefined ? result : dPs(result, Properties);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-dp.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-dp.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/library/modules/_ie8-dom-define.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
var dP = Object.defineProperty;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? Object.defineProperty : function defineProperty(O, P, Attributes) {
  anObject(O);
  P = toPrimitive(P, true);
  anObject(Attributes);
  if (IE8_DOM_DEFINE) try {
    return dP(O, P, Attributes);
  } catch (e) { /* empty */ }
  if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
  if ('value' in Attributes) O[P] = Attributes.value;
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-dps.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-dps.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");

module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? Object.defineProperties : function defineProperties(O, Properties) {
  anObject(O);
  var keys = getKeys(Properties);
  var length = keys.length;
  var i = 0;
  var P;
  while (length > i) dP.f(O, P = keys[i++], Properties[P]);
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gopd.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gopd.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/library/modules/_ie8-dom-define.js");
var gOPD = Object.getOwnPropertyDescriptor;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? gOPD : function getOwnPropertyDescriptor(O, P) {
  O = toIObject(O);
  P = toPrimitive(P, true);
  if (IE8_DOM_DEFINE) try {
    return gOPD(O, P);
  } catch (e) { /* empty */ }
  if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gopn-ext.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gopn-ext.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var gOPN = __webpack_require__(/*! ./_object-gopn */ "../node_modules/core-js/library/modules/_object-gopn.js").f;
var toString = {}.toString;

var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames
  ? Object.getOwnPropertyNames(window) : [];

var getWindowNames = function (it) {
  try {
    return gOPN(it);
  } catch (e) {
    return windowNames.slice();
  }
};

module.exports.f = function getOwnPropertyNames(it) {
  return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gopn.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gopn.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)
var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/library/modules/_object-keys-internal.js");
var hiddenKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js").concat('length', 'prototype');

exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
  return $keys(O, hiddenKeys);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gops.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gops.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports) => {

exports.f = Object.getOwnPropertySymbols;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gpo.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gpo.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');
var ObjectProto = Object.prototype;

module.exports = Object.getPrototypeOf || function (O) {
  O = toObject(O);
  if (has(O, IE_PROTO)) return O[IE_PROTO];
  if (typeof O.constructor == 'function' && O instanceof O.constructor) {
    return O.constructor.prototype;
  } return O instanceof Object ? ObjectProto : null;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-keys-internal.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-keys-internal.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var arrayIndexOf = __webpack_require__(/*! ./_array-includes */ "../node_modules/core-js/library/modules/_array-includes.js")(false);
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');

module.exports = function (object, names) {
  var O = toIObject(object);
  var i = 0;
  var result = [];
  var key;
  for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);
  // Don't enum bug & hidden keys
  while (names.length > i) if (has(O, key = names[i++])) {
    ~arrayIndexOf(result, key) || result.push(key);
  }
  return result;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-keys.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-keys.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.14 / 15.2.3.14 Object.keys(O)
var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/library/modules/_object-keys-internal.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js");

module.exports = Object.keys || function keys(O) {
  return $keys(O, enumBugKeys);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-pie.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-pie.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports) => {

exports.f = {}.propertyIsEnumerable;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-sap.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-sap.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// most Object methods by ES6 should accept primitives
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
module.exports = function (KEY, exec) {
  var fn = (core.Object || {})[KEY] || Object[KEY];
  var exp = {};
  exp[KEY] = exec(fn);
  $export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-to-array.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-to-array.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var isEnum = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js").f;
module.exports = function (isEntries) {
  return function (it) {
    var O = toIObject(it);
    var keys = getKeys(O);
    var length = keys.length;
    var i = 0;
    var result = [];
    var key;
    while (length > i) {
      key = keys[i++];
      if (!DESCRIPTORS || isEnum.call(O, key)) {
        result.push(isEntries ? [key, O[key]] : O[key]);
      }
    }
    return result;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_property-desc.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_property-desc.js ***!
  \*****************************************************************/
/***/ ((module) => {

module.exports = function (bitmap, value) {
  return {
    enumerable: !(bitmap & 1),
    configurable: !(bitmap & 2),
    writable: !(bitmap & 4),
    value: value
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_redefine.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_redefine.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-proto.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-proto.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Works with __proto__ only. Old v8 can't work with null proto objects.
/* eslint-disable no-proto */
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var check = function (O, proto) {
  anObject(O);
  if (!isObject(proto) && proto !== null) throw TypeError(proto + ": can't set as prototype!");
};
module.exports = {
  set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line
    function (test, buggy, set) {
      try {
        set = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js")(Function.call, __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js").f(Object.prototype, '__proto__').set, 2);
        set(test, []);
        buggy = !(test instanceof Array);
      } catch (e) { buggy = true; }
      return function setPrototypeOf(O, proto) {
        check(O, proto);
        if (buggy) O.__proto__ = proto;
        else set(O, proto);
        return O;
      };
    }({}, false) : undefined),
  check: check
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-to-string-tag.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-to-string-tag.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var def = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('toStringTag');

module.exports = function (it, tag, stat) {
  if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_shared-key.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_shared-key.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var shared = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js")('keys');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
module.exports = function (key) {
  return shared[key] || (shared[key] = uid(key));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_shared.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_shared.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var SHARED = '__core-js_shared__';
var store = global[SHARED] || (global[SHARED] = {});

(module.exports = function (key, value) {
  return store[key] || (store[key] = value !== undefined ? value : {});
})('versions', []).push({
  version: core.version,
  mode: __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js") ? 'pure' : 'global',
  copyright: '© 2020 Denis Pushkarev (zloirock.ru)'
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/_string-at.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_string-at.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
// true  -> String#at
// false -> String#codePointAt
module.exports = function (TO_STRING) {
  return function (that, pos) {
    var s = String(defined(that));
    var i = toInteger(pos);
    var l = s.length;
    var a, b;
    if (i < 0 || i >= l) return TO_STRING ? '' : undefined;
    a = s.charCodeAt(i);
    return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
      ? TO_STRING ? s.charAt(i) : a
      : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-absolute-index.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-absolute-index.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
var max = Math.max;
var min = Math.min;
module.exports = function (index, length) {
  index = toInteger(index);
  return index < 0 ? max(index + length, 0) : min(index, length);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-integer.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-integer.js ***!
  \**************************************************************/
/***/ ((module) => {

// 7.1.4 ToInteger
var ceil = Math.ceil;
var floor = Math.floor;
module.exports = function (it) {
  return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-iobject.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-iobject.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// to indexed object, toObject with fallback for non-array-like ES3 strings
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/library/modules/_iobject.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
module.exports = function (it) {
  return IObject(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-length.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-length.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.15 ToLength
var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
var min = Math.min;
module.exports = function (it) {
  return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-object.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-object.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.13 ToObject(argument)
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
module.exports = function (it) {
  return Object(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-primitive.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-primitive.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.1 ToPrimitive(input [, PreferredType])
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
// instead of the ES6 spec version, we didn't implement @@toPrimitive case
// and the second argument - flag - preferred type is a string
module.exports = function (it, S) {
  if (!isObject(it)) return it;
  var fn, val;
  if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
  if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  throw TypeError("Can't convert object to primitive value");
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_uid.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_uid.js ***!
  \*******************************************************/
/***/ ((module) => {

var id = 0;
var px = Math.random();
module.exports = function (key) {
  return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_wks-define.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_wks-define.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js");
var wksExt = __webpack_require__(/*! ./_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js");
var defineProperty = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
module.exports = function (name) {
  var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {});
  if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_wks-ext.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_wks-ext.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

exports.f = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js");


/***/ }),

/***/ "../node_modules/core-js/library/modules/_wks.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_wks.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var store = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js")('wks');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
var Symbol = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").Symbol;
var USE_SYMBOL = typeof Symbol == 'function';

var $exports = module.exports = function (name) {
  return store[name] || (store[name] =
    USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
};

$exports.store = store;


/***/ }),

/***/ "../node_modules/core-js/library/modules/core.get-iterator-method.js":
/*!***************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/core.get-iterator-method.js ***!
  \***************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/library/modules/_classof.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
module.exports = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js").getIteratorMethod = function (it) {
  if (it != undefined) return it[ITERATOR]
    || it['@@iterator']
    || Iterators[classof(it)];
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.array.from.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.array.from.js ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var call = __webpack_require__(/*! ./_iter-call */ "../node_modules/core-js/library/modules/_iter-call.js");
var isArrayIter = __webpack_require__(/*! ./_is-array-iter */ "../node_modules/core-js/library/modules/_is-array-iter.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
var createProperty = __webpack_require__(/*! ./_create-property */ "../node_modules/core-js/library/modules/_create-property.js");
var getIterFn = __webpack_require__(/*! ./core.get-iterator-method */ "../node_modules/core-js/library/modules/core.get-iterator-method.js");

$export($export.S + $export.F * !__webpack_require__(/*! ./_iter-detect */ "../node_modules/core-js/library/modules/_iter-detect.js")(function (iter) { Array.from(iter); }), 'Array', {
  // 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined)
  from: function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {
    var O = toObject(arrayLike);
    var C = typeof this == 'function' ? this : Array;
    var aLen = arguments.length;
    var mapfn = aLen > 1 ? arguments[1] : undefined;
    var mapping = mapfn !== undefined;
    var index = 0;
    var iterFn = getIterFn(O);
    var length, result, step, iterator;
    if (mapping) mapfn = ctx(mapfn, aLen > 2 ? arguments[2] : undefined, 2);
    // if object isn't iterable or it's array with default iterator - use simple case
    if (iterFn != undefined && !(C == Array && isArrayIter(iterFn))) {
      for (iterator = iterFn.call(O), result = new C(); !(step = iterator.next()).done; index++) {
        createProperty(result, index, mapping ? call(iterator, mapfn, [step.value, index], true) : step.value);
      }
    } else {
      length = toLength(O.length);
      for (result = new C(length); length > index; index++) {
        createProperty(result, index, mapping ? mapfn(O[index], index) : O[index]);
      }
    }
    result.length = index;
    return result;
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.array.is-array.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.array.is-array.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 22.1.2.2 / 15.4.3.2 Array.isArray(arg)
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");

$export($export.S, 'Array', { isArray: __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/library/modules/_is-array.js") });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.array.iterator.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.array.iterator.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var addToUnscopables = __webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/library/modules/_add-to-unscopables.js");
var step = __webpack_require__(/*! ./_iter-step */ "../node_modules/core-js/library/modules/_iter-step.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");

// 22.1.3.4 Array.prototype.entries()
// 22.1.3.13 Array.prototype.keys()
// 22.1.3.29 Array.prototype.values()
// 22.1.3.30 Array.prototype[@@iterator]()
module.exports = __webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/library/modules/_iter-define.js")(Array, 'Array', function (iterated, kind) {
  this._t = toIObject(iterated); // target
  this._i = 0;                   // next index
  this._k = kind;                // kind
// 22.1.5.2.1 %ArrayIteratorPrototype%.next()
}, function () {
  var O = this._t;
  var kind = this._k;
  var index = this._i++;
  if (!O || index >= O.length) {
    this._t = undefined;
    return step(1);
  }
  if (kind == 'keys') return step(0, index);
  if (kind == 'values') return step(0, O[index]);
  return step(0, [index, O[index]]);
}, 'values');

// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
Iterators.Arguments = Iterators.Array;

addToUnscopables('keys');
addToUnscopables('values');
addToUnscopables('entries');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.create.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.create.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
$export($export.S, 'Object', { create: __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js") });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.define-property.js":
/*!*****************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.define-property.js ***!
  \*****************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)
$export($export.S + $export.F * !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js"), 'Object', { defineProperty: __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js":
/*!*****************************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js ***!
  \*****************************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var $getOwnPropertyDescriptor = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js").f;

__webpack_require__(/*! ./_object-sap */ "../node_modules/core-js/library/modules/_object-sap.js")('getOwnPropertyDescriptor', function () {
  return function getOwnPropertyDescriptor(it, key) {
    return $getOwnPropertyDescriptor(toIObject(it), key);
  };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.get-prototype-of.js":
/*!******************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.get-prototype-of.js ***!
  \******************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.9 Object.getPrototypeOf(O)
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var $getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");

__webpack_require__(/*! ./_object-sap */ "../node_modules/core-js/library/modules/_object-sap.js")('getPrototypeOf', function () {
  return function getPrototypeOf(it) {
    return $getPrototypeOf(toObject(it));
  };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.set-prototype-of.js":
/*!******************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.set-prototype-of.js ***!
  \******************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.3.19 Object.setPrototypeOf(O, proto)
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
$export($export.S, 'Object', { setPrototypeOf: __webpack_require__(/*! ./_set-proto */ "../node_modules/core-js/library/modules/_set-proto.js").set });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.to-string.js":
/*!***********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.to-string.js ***!
  \***********************************************************************/
/***/ (() => {



/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.reflect.construct.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.reflect.construct.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 26.1.2 Reflect.construct(target, argumentsList [, newTarget])
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
var bind = __webpack_require__(/*! ./_bind */ "../node_modules/core-js/library/modules/_bind.js");
var rConstruct = (__webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").Reflect || {}).construct;

// MS Edge supports only 2 arguments and argumentsList argument is optional
// FF Nightly sets third argument as `new.target`, but does not create `this` from it
var NEW_TARGET_BUG = fails(function () {
  function F() { /* empty */ }
  return !(rConstruct(function () { /* empty */ }, [], F) instanceof F);
});
var ARGS_BUG = !fails(function () {
  rConstruct(function () { /* empty */ });
});

$export($export.S + $export.F * (NEW_TARGET_BUG || ARGS_BUG), 'Reflect', {
  construct: function construct(Target, args /* , newTarget */) {
    aFunction(Target);
    anObject(args);
    var newTarget = arguments.length < 3 ? Target : aFunction(arguments[2]);
    if (ARGS_BUG && !NEW_TARGET_BUG) return rConstruct(Target, args, newTarget);
    if (Target == newTarget) {
      // w/o altered newTarget, optimization for 0-4 arguments
      switch (args.length) {
        case 0: return new Target();
        case 1: return new Target(args[0]);
        case 2: return new Target(args[0], args[1]);
        case 3: return new Target(args[0], args[1], args[2]);
        case 4: return new Target(args[0], args[1], args[2], args[3]);
      }
      // w/o altered newTarget, lot of arguments case
      var $args = [null];
      $args.push.apply($args, args);
      return new (bind.apply(Target, $args))();
    }
    // with altered newTarget, not support built-in constructors
    var proto = newTarget.prototype;
    var instance = create(isObject(proto) ? proto : Object.prototype);
    var result = Function.apply.call(Target, instance, args);
    return isObject(result) ? result : instance;
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.reflect.get.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.reflect.get.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 26.1.6 Reflect.get(target, propertyKey [, receiver])
var gOPD = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js");
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");

function get(target, propertyKey /* , receiver */) {
  var receiver = arguments.length < 3 ? target : arguments[2];
  var desc, proto;
  if (anObject(target) === receiver) return target[propertyKey];
  if (desc = gOPD.f(target, propertyKey)) return has(desc, 'value')
    ? desc.value
    : desc.get !== undefined
      ? desc.get.call(receiver)
      : undefined;
  if (isObject(proto = getPrototypeOf(target))) return get(proto, propertyKey, receiver);
}

$export($export.S, 'Reflect', { get: get });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.string.iterator.js":
/*!**********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.string.iterator.js ***!
  \**********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $at = __webpack_require__(/*! ./_string-at */ "../node_modules/core-js/library/modules/_string-at.js")(true);

// 21.1.3.27 String.prototype[@@iterator]()
__webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/library/modules/_iter-define.js")(String, 'String', function (iterated) {
  this._t = String(iterated); // target
  this._i = 0;                // next index
// 21.1.5.2.1 %StringIteratorPrototype%.next()
}, function () {
  var O = this._t;
  var index = this._i;
  var point;
  if (index >= O.length) return { value: undefined, done: true };
  point = $at(O, index);
  this._i += point.length;
  return { value: point, done: false };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.symbol.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.symbol.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// ECMAScript 6 symbols shim
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/library/modules/_redefine.js");
var META = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js").KEY;
var $fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
var shared = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
var wks = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js");
var wksExt = __webpack_require__(/*! ./_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js");
var wksDefine = __webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js");
var enumKeys = __webpack_require__(/*! ./_enum-keys */ "../node_modules/core-js/library/modules/_enum-keys.js");
var isArray = __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/library/modules/_is-array.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
var _create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
var gOPNExt = __webpack_require__(/*! ./_object-gopn-ext */ "../node_modules/core-js/library/modules/_object-gopn-ext.js");
var $GOPD = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js");
var $GOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
var $DP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var $keys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var gOPD = $GOPD.f;
var dP = $DP.f;
var gOPN = gOPNExt.f;
var $Symbol = global.Symbol;
var $JSON = global.JSON;
var _stringify = $JSON && $JSON.stringify;
var PROTOTYPE = 'prototype';
var HIDDEN = wks('_hidden');
var TO_PRIMITIVE = wks('toPrimitive');
var isEnum = {}.propertyIsEnumerable;
var SymbolRegistry = shared('symbol-registry');
var AllSymbols = shared('symbols');
var OPSymbols = shared('op-symbols');
var ObjectProto = Object[PROTOTYPE];
var USE_NATIVE = typeof $Symbol == 'function' && !!$GOPS.f;
var QObject = global.QObject;
// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173
var setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;

// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687
var setSymbolDesc = DESCRIPTORS && $fails(function () {
  return _create(dP({}, 'a', {
    get: function () { return dP(this, 'a', { value: 7 }).a; }
  })).a != 7;
}) ? function (it, key, D) {
  var protoDesc = gOPD(ObjectProto, key);
  if (protoDesc) delete ObjectProto[key];
  dP(it, key, D);
  if (protoDesc && it !== ObjectProto) dP(ObjectProto, key, protoDesc);
} : dP;

var wrap = function (tag) {
  var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]);
  sym._k = tag;
  return sym;
};

var isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function (it) {
  return typeof it == 'symbol';
} : function (it) {
  return it instanceof $Symbol;
};

var $defineProperty = function defineProperty(it, key, D) {
  if (it === ObjectProto) $defineProperty(OPSymbols, key, D);
  anObject(it);
  key = toPrimitive(key, true);
  anObject(D);
  if (has(AllSymbols, key)) {
    if (!D.enumerable) {
      if (!has(it, HIDDEN)) dP(it, HIDDEN, createDesc(1, {}));
      it[HIDDEN][key] = true;
    } else {
      if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false;
      D = _create(D, { enumerable: createDesc(0, false) });
    } return setSymbolDesc(it, key, D);
  } return dP(it, key, D);
};
var $defineProperties = function defineProperties(it, P) {
  anObject(it);
  var keys = enumKeys(P = toIObject(P));
  var i = 0;
  var l = keys.length;
  var key;
  while (l > i) $defineProperty(it, key = keys[i++], P[key]);
  return it;
};
var $create = function create(it, P) {
  return P === undefined ? _create(it) : $defineProperties(_create(it), P);
};
var $propertyIsEnumerable = function propertyIsEnumerable(key) {
  var E = isEnum.call(this, key = toPrimitive(key, true));
  if (this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return false;
  return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true;
};
var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key) {
  it = toIObject(it);
  key = toPrimitive(key, true);
  if (it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return;
  var D = gOPD(it, key);
  if (D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) D.enumerable = true;
  return D;
};
var $getOwnPropertyNames = function getOwnPropertyNames(it) {
  var names = gOPN(toIObject(it));
  var result = [];
  var i = 0;
  var key;
  while (names.length > i) {
    if (!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META) result.push(key);
  } return result;
};
var $getOwnPropertySymbols = function getOwnPropertySymbols(it) {
  var IS_OP = it === ObjectProto;
  var names = gOPN(IS_OP ? OPSymbols : toIObject(it));
  var result = [];
  var i = 0;
  var key;
  while (names.length > i) {
    if (has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true)) result.push(AllSymbols[key]);
  } return result;
};

// 19.4.1.1 Symbol([description])
if (!USE_NATIVE) {
  $Symbol = function Symbol() {
    if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor!');
    var tag = uid(arguments.length > 0 ? arguments[0] : undefined);
    var $set = function (value) {
      if (this === ObjectProto) $set.call(OPSymbols, value);
      if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;
      setSymbolDesc(this, tag, createDesc(1, value));
    };
    if (DESCRIPTORS && setter) setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set });
    return wrap(tag);
  };
  redefine($Symbol[PROTOTYPE], 'toString', function toString() {
    return this._k;
  });

  $GOPD.f = $getOwnPropertyDescriptor;
  $DP.f = $defineProperty;
  __webpack_require__(/*! ./_object-gopn */ "../node_modules/core-js/library/modules/_object-gopn.js").f = gOPNExt.f = $getOwnPropertyNames;
  __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js").f = $propertyIsEnumerable;
  $GOPS.f = $getOwnPropertySymbols;

  if (DESCRIPTORS && !__webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js")) {
    redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);
  }

  wksExt.f = function (name) {
    return wrap(wks(name));
  };
}

$export($export.G + $export.W + $export.F * !USE_NATIVE, { Symbol: $Symbol });

for (var es6Symbols = (
  // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14
  'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'
).split(','), j = 0; es6Symbols.length > j;)wks(es6Symbols[j++]);

for (var wellKnownSymbols = $keys(wks.store), k = 0; wellKnownSymbols.length > k;) wksDefine(wellKnownSymbols[k++]);

$export($export.S + $export.F * !USE_NATIVE, 'Symbol', {
  // 19.4.2.1 Symbol.for(key)
  'for': function (key) {
    return has(SymbolRegistry, key += '')
      ? SymbolRegistry[key]
      : SymbolRegistry[key] = $Symbol(key);
  },
  // 19.4.2.5 Symbol.keyFor(sym)
  keyFor: function keyFor(sym) {
    if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol!');
    for (var key in SymbolRegistry) if (SymbolRegistry[key] === sym) return key;
  },
  useSetter: function () { setter = true; },
  useSimple: function () { setter = false; }
});

$export($export.S + $export.F * !USE_NATIVE, 'Object', {
  // 19.1.2.2 Object.create(O [, Properties])
  create: $create,
  // 19.1.2.4 Object.defineProperty(O, P, Attributes)
  defineProperty: $defineProperty,
  // 19.1.2.3 Object.defineProperties(O, Properties)
  defineProperties: $defineProperties,
  // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
  getOwnPropertyDescriptor: $getOwnPropertyDescriptor,
  // 19.1.2.7 Object.getOwnPropertyNames(O)
  getOwnPropertyNames: $getOwnPropertyNames,
  // 19.1.2.8 Object.getOwnPropertySymbols(O)
  getOwnPropertySymbols: $getOwnPropertySymbols
});

// Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives
// https://bugs.chromium.org/p/v8/issues/detail?id=3443
var FAILS_ON_PRIMITIVES = $fails(function () { $GOPS.f(1); });

$export($export.S + $export.F * FAILS_ON_PRIMITIVES, 'Object', {
  getOwnPropertySymbols: function getOwnPropertySymbols(it) {
    return $GOPS.f(toObject(it));
  }
});

// 24.3.2 JSON.stringify(value [, replacer [, space]])
$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function () {
  var S = $Symbol();
  // MS Edge converts symbol values to JSON as {}
  // WebKit converts symbol values to JSON as null
  // V8 throws on boxed symbols
  return _stringify([S]) != '[null]' || _stringify({ a: S }) != '{}' || _stringify(Object(S)) != '{}';
})), 'JSON', {
  stringify: function stringify(it) {
    var args = [it];
    var i = 1;
    var replacer, $replacer;
    while (arguments.length > i) args.push(arguments[i++]);
    $replacer = replacer = args[1];
    if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined
    if (!isArray(replacer)) replacer = function (key, value) {
      if (typeof $replacer == 'function') value = $replacer.call(this, key, value);
      if (!isSymbol(value)) return value;
    };
    args[1] = replacer;
    return _stringify.apply($JSON, args);
  }
});

// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint)
$Symbol[PROTOTYPE][TO_PRIMITIVE] || __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js")($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);
// 19.4.3.5 Symbol.prototype[@@toStringTag]
setToStringTag($Symbol, 'Symbol');
// 20.2.1.9 Math[@@toStringTag]
setToStringTag(Math, 'Math', true);
// 24.3.3 JSON[@@toStringTag]
setToStringTag(global.JSON, 'JSON', true);


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.object.entries.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.object.entries.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://github.com/tc39/proposal-object-values-entries
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var $entries = __webpack_require__(/*! ./_object-to-array */ "../node_modules/core-js/library/modules/_object-to-array.js")(true);

$export($export.S, 'Object', {
  entries: function entries(it) {
    return $entries(it);
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.symbol.async-iterator.js":
/*!****************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.symbol.async-iterator.js ***!
  \****************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js")('asyncIterator');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.symbol.observable.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.symbol.observable.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js")('observable');


/***/ }),

/***/ "../node_modules/core-js/library/modules/web.dom.iterable.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/web.dom.iterable.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ./es6.array.iterator */ "../node_modules/core-js/library/modules/es6.array.iterator.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var TO_STRING_TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('toStringTag');

var DOMIterables = ('CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,' +
  'DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,' +
  'MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,' +
  'SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,' +
  'TextTrackList,TouchList').split(',');

for (var i = 0; i < DOMIterables.length; i++) {
  var NAME = DOMIterables[i];
  var Collection = global[NAME];
  var proto = Collection && Collection.prototype;
  if (proto && !proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);
  Iterators[NAME] = Iterators.Array;
}


/***/ }),

/***/ "../node_modules/core-js/modules/_a-function.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_a-function.js ***!
  \******************************************************/
/***/ ((module) => {

module.exports = function (it) {
  if (typeof it != 'function') throw TypeError(it + ' is not a function!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_add-to-unscopables.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/modules/_add-to-unscopables.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 22.1.3.31 Array.prototype[@@unscopables]
var UNSCOPABLES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('unscopables');
var ArrayProto = Array.prototype;
if (ArrayProto[UNSCOPABLES] == undefined) __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js")(ArrayProto, UNSCOPABLES, {});
module.exports = function (key) {
  ArrayProto[UNSCOPABLES][key] = true;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_advance-string-index.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_advance-string-index.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var at = __webpack_require__(/*! ./_string-at */ "../node_modules/core-js/modules/_string-at.js")(true);

 // `AdvanceStringIndex` abstract operation
// https://tc39.github.io/ecma262/#sec-advancestringindex
module.exports = function (S, index, unicode) {
  return index + (unicode ? at(S, index).length : 1);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_an-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_an-object.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
module.exports = function (it) {
  if (!isObject(it)) throw TypeError(it + ' is not an object!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-includes.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/_array-includes.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// false -> Array#indexOf
// true  -> Array#includes
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/modules/_to-iobject.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var toAbsoluteIndex = __webpack_require__(/*! ./_to-absolute-index */ "../node_modules/core-js/modules/_to-absolute-index.js");
module.exports = function (IS_INCLUDES) {
  return function ($this, el, fromIndex) {
    var O = toIObject($this);
    var length = toLength(O.length);
    var index = toAbsoluteIndex(fromIndex, length);
    var value;
    // Array#includes uses SameValueZero equality algorithm
    // eslint-disable-next-line no-self-compare
    if (IS_INCLUDES && el != el) while (length > index) {
      value = O[index++];
      // eslint-disable-next-line no-self-compare
      if (value != value) return true;
    // Array#indexOf ignores holes, Array#includes - not
    } else for (;length > index; index++) if (IS_INCLUDES || index in O) {
      if (O[index] === el) return IS_INCLUDES || index || 0;
    } return !IS_INCLUDES && -1;
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-methods.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_array-methods.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 0 -> Array#forEach
// 1 -> Array#map
// 2 -> Array#filter
// 3 -> Array#some
// 4 -> Array#every
// 5 -> Array#find
// 6 -> Array#findIndex
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/modules/_ctx.js");
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/modules/_iobject.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/modules/_to-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var asc = __webpack_require__(/*! ./_array-species-create */ "../node_modules/core-js/modules/_array-species-create.js");
module.exports = function (TYPE, $create) {
  var IS_MAP = TYPE == 1;
  var IS_FILTER = TYPE == 2;
  var IS_SOME = TYPE == 3;
  var IS_EVERY = TYPE == 4;
  var IS_FIND_INDEX = TYPE == 6;
  var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
  var create = $create || asc;
  return function ($this, callbackfn, that) {
    var O = toObject($this);
    var self = IObject(O);
    var f = ctx(callbackfn, that, 3);
    var length = toLength(self.length);
    var index = 0;
    var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;
    var val, res;
    for (;length > index; index++) if (NO_HOLES || index in self) {
      val = self[index];
      res = f(val, index, O);
      if (TYPE) {
        if (IS_MAP) result[index] = res;   // map
        else if (res) switch (TYPE) {
          case 3: return true;             // some
          case 5: return val;              // find
          case 6: return index;            // findIndex
          case 2: result.push(val);        // filter
        } else if (IS_EVERY) return false; // every
      }
    }
    return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-species-constructor.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/modules/_array-species-constructor.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var isArray = __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/modules/_is-array.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('species');

module.exports = function (original) {
  var C;
  if (isArray(original)) {
    C = original.constructor;
    // cross-realm fallback
    if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
    if (isObject(C)) {
      C = C[SPECIES];
      if (C === null) C = undefined;
    }
  } return C === undefined ? Array : C;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-species-create.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_array-species-create.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 9.4.2.3 ArraySpeciesCreate(originalArray, length)
var speciesConstructor = __webpack_require__(/*! ./_array-species-constructor */ "../node_modules/core-js/modules/_array-species-constructor.js");

module.exports = function (original, length) {
  return new (speciesConstructor(original))(length);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_classof.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_classof.js ***!
  \***************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// getting tag from 19.1.3.6 Object.prototype.toString()
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('toStringTag');
// ES3 wrong here
var ARG = cof(function () { return arguments; }()) == 'Arguments';

// fallback for IE11 Script Access Denied error
var tryGet = function (it, key) {
  try {
    return it[key];
  } catch (e) { /* empty */ }
};

module.exports = function (it) {
  var O, T, B;
  return it === undefined ? 'Undefined' : it === null ? 'Null'
    // @@toStringTag case
    : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T
    // builtinTag case
    : ARG ? cof(O)
    // ES3 arguments fallback
    : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_cof.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_cof.js ***!
  \***********************************************/
/***/ ((module) => {

var toString = {}.toString;

module.exports = function (it) {
  return toString.call(it).slice(8, -1);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_core.js":
/*!************************************************!*\
  !*** ../node_modules/core-js/modules/_core.js ***!
  \************************************************/
/***/ ((module) => {

var core = module.exports = { version: '2.6.12' };
if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/modules/_ctx.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_ctx.js ***!
  \***********************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// optional / simple context binding
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/modules/_a-function.js");
module.exports = function (fn, that, length) {
  aFunction(fn);
  if (that === undefined) return fn;
  switch (length) {
    case 1: return function (a) {
      return fn.call(that, a);
    };
    case 2: return function (a, b) {
      return fn.call(that, a, b);
    };
    case 3: return function (a, b, c) {
      return fn.call(that, a, b, c);
    };
  }
  return function (/* ...args */) {
    return fn.apply(that, arguments);
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_defined.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_defined.js ***!
  \***************************************************/
/***/ ((module) => {

// 7.2.1 RequireObjectCoercible(argument)
module.exports = function (it) {
  if (it == undefined) throw TypeError("Can't call method on  " + it);
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_descriptors.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_descriptors.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Thank's IE8 for his funny defineProperty
module.exports = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () {
  return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/modules/_dom-create.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_dom-create.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js").document;
// typeof document.createElement is 'object' in old IE
var is = isObject(document) && isObject(document.createElement);
module.exports = function (it) {
  return is ? document.createElement(it) : {};
};


/***/ }),

/***/ "../node_modules/core-js/modules/_export.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_export.js ***!
  \**************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/modules/_ctx.js");
var PROTOTYPE = 'prototype';

var $export = function (type, name, source) {
  var IS_FORCED = type & $export.F;
  var IS_GLOBAL = type & $export.G;
  var IS_STATIC = type & $export.S;
  var IS_PROTO = type & $export.P;
  var IS_BIND = type & $export.B;
  var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE];
  var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
  var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {});
  var key, own, out, exp;
  if (IS_GLOBAL) source = name;
  for (key in source) {
    // contains in native
    own = !IS_FORCED && target && target[key] !== undefined;
    // export native or passed
    out = (own ? target : source)[key];
    // bind timers to global for call from export context
    exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
    // extend global
    if (target) redefine(target, key, out, type & $export.U);
    // export
    if (exports[key] != out) hide(exports, key, exp);
    if (IS_PROTO && expProto[key] != out) expProto[key] = out;
  }
};
global.core = core;
// type bitmap
$export.F = 1;   // forced
$export.G = 2;   // global
$export.S = 4;   // static
$export.P = 8;   // proto
$export.B = 16;  // bind
$export.W = 32;  // wrap
$export.U = 64;  // safe
$export.R = 128; // real proto method for `library`
module.exports = $export;


/***/ }),

/***/ "../node_modules/core-js/modules/_fails-is-regexp.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/_fails-is-regexp.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var MATCH = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('match');
module.exports = function (KEY) {
  var re = /./;
  try {
    '/./'[KEY](re);
  } catch (e) {
    try {
      re[MATCH] = false;
      return !'/./'[KEY](re);
    } catch (f) { /* empty */ }
  } return true;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_fails.js":
/*!*************************************************!*\
  !*** ../node_modules/core-js/modules/_fails.js ***!
  \*************************************************/
/***/ ((module) => {

module.exports = function (exec) {
  try {
    return !!exec();
  } catch (e) {
    return true;
  }
};


/***/ }),

/***/ "../node_modules/core-js/modules/_fix-re-wks.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_fix-re-wks.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

__webpack_require__(/*! ./es6.regexp.exec */ "../node_modules/core-js/modules/es6.regexp.exec.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
var wks = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js");
var regexpExec = __webpack_require__(/*! ./_regexp-exec */ "../node_modules/core-js/modules/_regexp-exec.js");

var SPECIES = wks('species');

var REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {
  // #replace needs built-in support for named groups.
  // #match works fine because it just return the exec results, even if it has
  // a "grops" property.
  var re = /./;
  re.exec = function () {
    var result = [];
    result.groups = { a: '7' };
    return result;
  };
  return ''.replace(re, '$<a>') !== '7';
});

var SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = (function () {
  // Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec
  var re = /(?:)/;
  var originalExec = re.exec;
  re.exec = function () { return originalExec.apply(this, arguments); };
  var result = 'ab'.split(re);
  return result.length === 2 && result[0] === 'a' && result[1] === 'b';
})();

module.exports = function (KEY, length, exec) {
  var SYMBOL = wks(KEY);

  var DELEGATES_TO_SYMBOL = !fails(function () {
    // String methods call symbol-named RegEp methods
    var O = {};
    O[SYMBOL] = function () { return 7; };
    return ''[KEY](O) != 7;
  });

  var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL ? !fails(function () {
    // Symbol-named RegExp methods call .exec
    var execCalled = false;
    var re = /a/;
    re.exec = function () { execCalled = true; return null; };
    if (KEY === 'split') {
      // RegExp[@@split] doesn't call the regex's exec method, but first creates
      // a new one. We need to return the patched regex when creating the new one.
      re.constructor = {};
      re.constructor[SPECIES] = function () { return re; };
    }
    re[SYMBOL]('');
    return !execCalled;
  }) : undefined;

  if (
    !DELEGATES_TO_SYMBOL ||
    !DELEGATES_TO_EXEC ||
    (KEY === 'replace' && !REPLACE_SUPPORTS_NAMED_GROUPS) ||
    (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)
  ) {
    var nativeRegExpMethod = /./[SYMBOL];
    var fns = exec(
      defined,
      SYMBOL,
      ''[KEY],
      function maybeCallNative(nativeMethod, regexp, str, arg2, forceStringMethod) {
        if (regexp.exec === regexpExec) {
          if (DELEGATES_TO_SYMBOL && !forceStringMethod) {
            // The native String method already delegates to @@method (this
            // polyfilled function), leasing to infinite recursion.
            // We avoid it by directly calling the native @@method method.
            return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };
          }
          return { done: true, value: nativeMethod.call(str, regexp, arg2) };
        }
        return { done: false };
      }
    );
    var strfn = fns[0];
    var rxfn = fns[1];

    redefine(String.prototype, KEY, strfn);
    hide(RegExp.prototype, SYMBOL, length == 2
      // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)
      // 21.2.5.11 RegExp.prototype[@@split](string, limit)
      ? function (string, arg) { return rxfn.call(string, this, arg); }
      // 21.2.5.6 RegExp.prototype[@@match](string)
      // 21.2.5.9 RegExp.prototype[@@search](string)
      : function (string) { return rxfn.call(string, this); }
    );
  }
};


/***/ }),

/***/ "../node_modules/core-js/modules/_flags.js":
/*!*************************************************!*\
  !*** ../node_modules/core-js/modules/_flags.js ***!
  \*************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 21.2.5.3 get RegExp.prototype.flags
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
module.exports = function () {
  var that = anObject(this);
  var result = '';
  if (that.global) result += 'g';
  if (that.ignoreCase) result += 'i';
  if (that.multiline) result += 'm';
  if (that.unicode) result += 'u';
  if (that.sticky) result += 'y';
  return result;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_function-to-string.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/modules/_function-to-string.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/modules/_shared.js")('native-function-to-string', Function.toString);


/***/ }),

/***/ "../node_modules/core-js/modules/_global.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_global.js ***!
  \**************************************************/
/***/ ((module) => {

// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
var global = module.exports = typeof window != 'undefined' && window.Math == Math
  ? window : typeof self != 'undefined' && self.Math == Math ? self
  // eslint-disable-next-line no-new-func
  : Function('return this')();
if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/modules/_has.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_has.js ***!
  \***********************************************/
/***/ ((module) => {

var hasOwnProperty = {}.hasOwnProperty;
module.exports = function (it, key) {
  return hasOwnProperty.call(it, key);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_hide.js":
/*!************************************************!*\
  !*** ../node_modules/core-js/modules/_hide.js ***!
  \************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/modules/_property-desc.js");
module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? function (object, key, value) {
  return dP.f(object, key, createDesc(1, value));
} : function (object, key, value) {
  object[key] = value;
  return object;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_html.js":
/*!************************************************!*\
  !*** ../node_modules/core-js/modules/_html.js ***!
  \************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js").document;
module.exports = document && document.documentElement;


/***/ }),

/***/ "../node_modules/core-js/modules/_ie8-dom-define.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/_ie8-dom-define.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") && !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () {
  return Object.defineProperty(__webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/modules/_dom-create.js")('div'), 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/modules/_iobject.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_iobject.js ***!
  \***************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// fallback for non-array-like ES3 and non-enumerable old V8 strings
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
// eslint-disable-next-line no-prototype-builtins
module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
  return cof(it) == 'String' ? it.split('') : Object(it);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_is-array.js":
/*!****************************************************!*\
  !*** ../node_modules/core-js/modules/_is-array.js ***!
  \****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.2.2 IsArray(argument)
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
module.exports = Array.isArray || function isArray(arg) {
  return cof(arg) == 'Array';
};


/***/ }),

/***/ "../node_modules/core-js/modules/_is-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_is-object.js ***!
  \*****************************************************/
/***/ ((module) => {

module.exports = function (it) {
  return typeof it === 'object' ? it !== null : typeof it === 'function';
};


/***/ }),

/***/ "../node_modules/core-js/modules/_is-regexp.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_is-regexp.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.2.8 IsRegExp(argument)
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
var MATCH = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('match');
module.exports = function (it) {
  var isRegExp;
  return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp');
};


/***/ }),

/***/ "../node_modules/core-js/modules/_library.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_library.js ***!
  \***************************************************/
/***/ ((module) => {

module.exports = false;


/***/ }),

/***/ "../node_modules/core-js/modules/_object-dp.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_object-dp.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/modules/_ie8-dom-define.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/modules/_to-primitive.js");
var dP = Object.defineProperty;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? Object.defineProperty : function defineProperty(O, P, Attributes) {
  anObject(O);
  P = toPrimitive(P, true);
  anObject(Attributes);
  if (IE8_DOM_DEFINE) try {
    return dP(O, P, Attributes);
  } catch (e) { /* empty */ }
  if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
  if ('value' in Attributes) O[P] = Attributes.value;
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_property-desc.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_property-desc.js ***!
  \*********************************************************/
/***/ ((module) => {

module.exports = function (bitmap, value) {
  return {
    enumerable: !(bitmap & 1),
    configurable: !(bitmap & 2),
    writable: !(bitmap & 4),
    value: value
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_redefine.js":
/*!****************************************************!*\
  !*** ../node_modules/core-js/modules/_redefine.js ***!
  \****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var SRC = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/modules/_uid.js")('src');
var $toString = __webpack_require__(/*! ./_function-to-string */ "../node_modules/core-js/modules/_function-to-string.js");
var TO_STRING = 'toString';
var TPL = ('' + $toString).split(TO_STRING);

__webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js").inspectSource = function (it) {
  return $toString.call(it);
};

(module.exports = function (O, key, val, safe) {
  var isFunction = typeof val == 'function';
  if (isFunction) has(val, 'name') || hide(val, 'name', key);
  if (O[key] === val) return;
  if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));
  if (O === global) {
    O[key] = val;
  } else if (!safe) {
    delete O[key];
    hide(O, key, val);
  } else if (O[key]) {
    O[key] = val;
  } else {
    hide(O, key, val);
  }
// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
})(Function.prototype, TO_STRING, function toString() {
  return typeof this == 'function' && this[SRC] || $toString.call(this);
});


/***/ }),

/***/ "../node_modules/core-js/modules/_regexp-exec-abstract.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_regexp-exec-abstract.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/modules/_classof.js");
var builtinExec = RegExp.prototype.exec;

 // `RegExpExec` abstract operation
// https://tc39.github.io/ecma262/#sec-regexpexec
module.exports = function (R, S) {
  var exec = R.exec;
  if (typeof exec === 'function') {
    var result = exec.call(R, S);
    if (typeof result !== 'object') {
      throw new TypeError('RegExp exec method returned something other than an Object or null');
    }
    return result;
  }
  if (classof(R) !== 'RegExp') {
    throw new TypeError('RegExp#exec called on incompatible receiver');
  }
  return builtinExec.call(R, S);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_regexp-exec.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_regexp-exec.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var regexpFlags = __webpack_require__(/*! ./_flags */ "../node_modules/core-js/modules/_flags.js");

var nativeExec = RegExp.prototype.exec;
// This always refers to the native implementation, because the
// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,
// which loads this file before patching the method.
var nativeReplace = String.prototype.replace;

var patchedExec = nativeExec;

var LAST_INDEX = 'lastIndex';

var UPDATES_LAST_INDEX_WRONG = (function () {
  var re1 = /a/,
      re2 = /b*/g;
  nativeExec.call(re1, 'a');
  nativeExec.call(re2, 'a');
  return re1[LAST_INDEX] !== 0 || re2[LAST_INDEX] !== 0;
})();

// nonparticipating capturing group, copied from es5-shim's String#split patch.
var NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;

var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED;

if (PATCH) {
  patchedExec = function exec(str) {
    var re = this;
    var lastIndex, reCopy, match, i;

    if (NPCG_INCLUDED) {
      reCopy = new RegExp('^' + re.source + '$(?!\\s)', regexpFlags.call(re));
    }
    if (UPDATES_LAST_INDEX_WRONG) lastIndex = re[LAST_INDEX];

    match = nativeExec.call(re, str);

    if (UPDATES_LAST_INDEX_WRONG && match) {
      re[LAST_INDEX] = re.global ? match.index + match[0].length : lastIndex;
    }
    if (NPCG_INCLUDED && match && match.length > 1) {
      // Fix browsers whose `exec` methods don't consistently return `undefined`
      // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/
      // eslint-disable-next-line no-loop-func
      nativeReplace.call(match[0], reCopy, function () {
        for (i = 1; i < arguments.length - 2; i++) {
          if (arguments[i] === undefined) match[i] = undefined;
        }
      });
    }

    return match;
  };
}

module.exports = patchedExec;


/***/ }),

/***/ "../node_modules/core-js/modules/_same-value.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_same-value.js ***!
  \******************************************************/
/***/ ((module) => {

// 7.2.9 SameValue(x, y)
module.exports = Object.is || function is(x, y) {
  // eslint-disable-next-line no-self-compare
  return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_shared.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_shared.js ***!
  \**************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var SHARED = '__core-js_shared__';
var store = global[SHARED] || (global[SHARED] = {});

(module.exports = function (key, value) {
  return store[key] || (store[key] = value !== undefined ? value : {});
})('versions', []).push({
  version: core.version,
  mode: __webpack_require__(/*! ./_library */ "../node_modules/core-js/modules/_library.js") ? 'pure' : 'global',
  copyright: '© 2020 Denis Pushkarev (zloirock.ru)'
});


/***/ }),

/***/ "../node_modules/core-js/modules/_species-constructor.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/modules/_species-constructor.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.3.20 SpeciesConstructor(O, defaultConstructor)
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/modules/_a-function.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('species');
module.exports = function (O, D) {
  var C = anObject(O).constructor;
  var S;
  return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_strict-method.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_strict-method.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js");

module.exports = function (method, arg) {
  return !!method && fails(function () {
    // eslint-disable-next-line no-useless-call
    arg ? method.call(null, function () { /* empty */ }, 1) : method.call(null);
  });
};


/***/ }),

/***/ "../node_modules/core-js/modules/_string-at.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_string-at.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
// true  -> String#at
// false -> String#codePointAt
module.exports = function (TO_STRING) {
  return function (that, pos) {
    var s = String(defined(that));
    var i = toInteger(pos);
    var l = s.length;
    var a, b;
    if (i < 0 || i >= l) return TO_STRING ? '' : undefined;
    a = s.charCodeAt(i);
    return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
      ? TO_STRING ? s.charAt(i) : a
      : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_string-context.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/_string-context.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// helper for String#{startsWith, endsWith, includes}
var isRegExp = __webpack_require__(/*! ./_is-regexp */ "../node_modules/core-js/modules/_is-regexp.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");

module.exports = function (that, searchString, NAME) {
  if (isRegExp(searchString)) throw TypeError('String#' + NAME + " doesn't accept regex!");
  return String(defined(that));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-absolute-index.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/_to-absolute-index.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var max = Math.max;
var min = Math.min;
module.exports = function (index, length) {
  index = toInteger(index);
  return index < 0 ? max(index + length, 0) : min(index, length);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-integer.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_to-integer.js ***!
  \******************************************************/
/***/ ((module) => {

// 7.1.4 ToInteger
var ceil = Math.ceil;
var floor = Math.floor;
module.exports = function (it) {
  return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-iobject.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_to-iobject.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// to indexed object, toObject with fallback for non-array-like ES3 strings
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/modules/_iobject.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
module.exports = function (it) {
  return IObject(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-length.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_to-length.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.15 ToLength
var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var min = Math.min;
module.exports = function (it) {
  return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_to-object.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.13 ToObject(argument)
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
module.exports = function (it) {
  return Object(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-primitive.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/modules/_to-primitive.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.1 ToPrimitive(input [, PreferredType])
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
// instead of the ES6 spec version, we didn't implement @@toPrimitive case
// and the second argument - flag - preferred type is a string
module.exports = function (it, S) {
  if (!isObject(it)) return it;
  var fn, val;
  if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
  if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  throw TypeError("Can't convert object to primitive value");
};


/***/ }),

/***/ "../node_modules/core-js/modules/_uid.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_uid.js ***!
  \***********************************************/
/***/ ((module) => {

var id = 0;
var px = Math.random();
module.exports = function (key) {
  return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_wks.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_wks.js ***!
  \***********************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var store = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/modules/_shared.js")('wks');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/modules/_uid.js");
var Symbol = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js").Symbol;
var USE_SYMBOL = typeof Symbol == 'function';

var $exports = module.exports = function (name) {
  return store[name] || (store[name] =
    USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
};

$exports.store = store;


/***/ }),

/***/ "../node_modules/core-js/modules/es6.array.filter.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.array.filter.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var $filter = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/modules/_array-methods.js")(2);

$export($export.P + $export.F * !__webpack_require__(/*! ./_strict-method */ "../node_modules/core-js/modules/_strict-method.js")([].filter, true), 'Array', {
  // 22.1.3.7 / 15.4.4.20 Array.prototype.filter(callbackfn [, thisArg])
  filter: function filter(callbackfn /* , thisArg */) {
    return $filter(this, callbackfn, arguments[1]);
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.array.find.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.array.find.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 22.1.3.8 Array.prototype.find(predicate, thisArg = undefined)
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var $find = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/modules/_array-methods.js")(5);
var KEY = 'find';
var forced = true;
// Shouldn't skip holes
if (KEY in []) Array(1)[KEY](function () { forced = false; });
$export($export.P + $export.F * forced, 'Array', {
  find: function find(callbackfn /* , that = undefined */) {
    return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
  }
});
__webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/modules/_add-to-unscopables.js")(KEY);


/***/ }),

/***/ "../node_modules/core-js/modules/es6.array.slice.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.array.slice.js ***!
  \**********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var html = __webpack_require__(/*! ./_html */ "../node_modules/core-js/modules/_html.js");
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
var toAbsoluteIndex = __webpack_require__(/*! ./_to-absolute-index */ "../node_modules/core-js/modules/_to-absolute-index.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var arraySlice = [].slice;

// fallback for not array-like ES3 strings and DOM objects
$export($export.P + $export.F * __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () {
  if (html) arraySlice.call(html);
}), 'Array', {
  slice: function slice(begin, end) {
    var len = toLength(this.length);
    var klass = cof(this);
    end = end === undefined ? len : end;
    if (klass == 'Array') return arraySlice.call(this, begin, end);
    var start = toAbsoluteIndex(begin, len);
    var upTo = toAbsoluteIndex(end, len);
    var size = toLength(upTo - start);
    var cloned = new Array(size);
    var i = 0;
    for (; i < size; i++) cloned[i] = klass == 'String'
      ? this.charAt(start + i)
      : this[start + i];
    return cloned;
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.object.to-string.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.object.to-string.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 19.1.3.6 Object.prototype.toString()
var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/modules/_classof.js");
var test = {};
test[__webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('toStringTag')] = 'z';
if (test + '' != '[object z]') {
  __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js")(Object.prototype, 'toString', function toString() {
    return '[object ' + classof(this) + ']';
  }, true);
}


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.exec.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.exec.js ***!
  \**********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var regexpExec = __webpack_require__(/*! ./_regexp-exec */ "../node_modules/core-js/modules/_regexp-exec.js");
__webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js")({
  target: 'RegExp',
  proto: true,
  forced: regexpExec !== /./.exec
}, {
  exec: regexpExec
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.flags.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.flags.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 21.2.5.3 get RegExp.prototype.flags()
if (__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") && /./g.flags != 'g') __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js").f(RegExp.prototype, 'flags', {
  configurable: true,
  get: __webpack_require__(/*! ./_flags */ "../node_modules/core-js/modules/_flags.js")
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.replace.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.replace.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/modules/_to-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var advanceStringIndex = __webpack_require__(/*! ./_advance-string-index */ "../node_modules/core-js/modules/_advance-string-index.js");
var regExpExec = __webpack_require__(/*! ./_regexp-exec-abstract */ "../node_modules/core-js/modules/_regexp-exec-abstract.js");
var max = Math.max;
var min = Math.min;
var floor = Math.floor;
var SUBSTITUTION_SYMBOLS = /\$([$&`']|\d\d?|<[^>]*>)/g;
var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&`']|\d\d?)/g;

var maybeToString = function (it) {
  return it === undefined ? it : String(it);
};

// @@replace logic
__webpack_require__(/*! ./_fix-re-wks */ "../node_modules/core-js/modules/_fix-re-wks.js")('replace', 2, function (defined, REPLACE, $replace, maybeCallNative) {
  return [
    // `String.prototype.replace` method
    // https://tc39.github.io/ecma262/#sec-string.prototype.replace
    function replace(searchValue, replaceValue) {
      var O = defined(this);
      var fn = searchValue == undefined ? undefined : searchValue[REPLACE];
      return fn !== undefined
        ? fn.call(searchValue, O, replaceValue)
        : $replace.call(String(O), searchValue, replaceValue);
    },
    // `RegExp.prototype[@@replace]` method
    // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace
    function (regexp, replaceValue) {
      var res = maybeCallNative($replace, regexp, this, replaceValue);
      if (res.done) return res.value;

      var rx = anObject(regexp);
      var S = String(this);
      var functionalReplace = typeof replaceValue === 'function';
      if (!functionalReplace) replaceValue = String(replaceValue);
      var global = rx.global;
      if (global) {
        var fullUnicode = rx.unicode;
        rx.lastIndex = 0;
      }
      var results = [];
      while (true) {
        var result = regExpExec(rx, S);
        if (result === null) break;
        results.push(result);
        if (!global) break;
        var matchStr = String(result[0]);
        if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
      }
      var accumulatedResult = '';
      var nextSourcePosition = 0;
      for (var i = 0; i < results.length; i++) {
        result = results[i];
        var matched = String(result[0]);
        var position = max(min(toInteger(result.index), S.length), 0);
        var captures = [];
        // NOTE: This is equivalent to
        //   captures = result.slice(1).map(maybeToString)
        // but for some reason `nativeSlice.call(result, 1, result.length)` (called in
        // the slice polyfill when slicing native arrays) "doesn't work" in safari 9 and
        // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.
        for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));
        var namedCaptures = result.groups;
        if (functionalReplace) {
          var replacerArgs = [matched].concat(captures, position, S);
          if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);
          var replacement = String(replaceValue.apply(undefined, replacerArgs));
        } else {
          replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);
        }
        if (position >= nextSourcePosition) {
          accumulatedResult += S.slice(nextSourcePosition, position) + replacement;
          nextSourcePosition = position + matched.length;
        }
      }
      return accumulatedResult + S.slice(nextSourcePosition);
    }
  ];

    // https://tc39.github.io/ecma262/#sec-getsubstitution
  function getSubstitution(matched, str, position, captures, namedCaptures, replacement) {
    var tailPos = position + matched.length;
    var m = captures.length;
    var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;
    if (namedCaptures !== undefined) {
      namedCaptures = toObject(namedCaptures);
      symbols = SUBSTITUTION_SYMBOLS;
    }
    return $replace.call(replacement, symbols, function (match, ch) {
      var capture;
      switch (ch.charAt(0)) {
        case '$': return '$';
        case '&': return matched;
        case '`': return str.slice(0, position);
        case "'": return str.slice(tailPos);
        case '<':
          capture = namedCaptures[ch.slice(1, -1)];
          break;
        default: // \d\d?
          var n = +ch;
          if (n === 0) return match;
          if (n > m) {
            var f = floor(n / 10);
            if (f === 0) return match;
            if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);
            return match;
          }
          capture = captures[n - 1];
      }
      return capture === undefined ? '' : capture;
    });
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.search.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.search.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var sameValue = __webpack_require__(/*! ./_same-value */ "../node_modules/core-js/modules/_same-value.js");
var regExpExec = __webpack_require__(/*! ./_regexp-exec-abstract */ "../node_modules/core-js/modules/_regexp-exec-abstract.js");

// @@search logic
__webpack_require__(/*! ./_fix-re-wks */ "../node_modules/core-js/modules/_fix-re-wks.js")('search', 1, function (defined, SEARCH, $search, maybeCallNative) {
  return [
    // `String.prototype.search` method
    // https://tc39.github.io/ecma262/#sec-string.prototype.search
    function search(regexp) {
      var O = defined(this);
      var fn = regexp == undefined ? undefined : regexp[SEARCH];
      return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[SEARCH](String(O));
    },
    // `RegExp.prototype[@@search]` method
    // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@search
    function (regexp) {
      var res = maybeCallNative($search, regexp, this);
      if (res.done) return res.value;
      var rx = anObject(regexp);
      var S = String(this);
      var previousLastIndex = rx.lastIndex;
      if (!sameValue(previousLastIndex, 0)) rx.lastIndex = 0;
      var result = regExpExec(rx, S);
      if (!sameValue(rx.lastIndex, previousLastIndex)) rx.lastIndex = previousLastIndex;
      return result === null ? -1 : result.index;
    }
  ];
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.split.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.split.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var isRegExp = __webpack_require__(/*! ./_is-regexp */ "../node_modules/core-js/modules/_is-regexp.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var speciesConstructor = __webpack_require__(/*! ./_species-constructor */ "../node_modules/core-js/modules/_species-constructor.js");
var advanceStringIndex = __webpack_require__(/*! ./_advance-string-index */ "../node_modules/core-js/modules/_advance-string-index.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var callRegExpExec = __webpack_require__(/*! ./_regexp-exec-abstract */ "../node_modules/core-js/modules/_regexp-exec-abstract.js");
var regexpExec = __webpack_require__(/*! ./_regexp-exec */ "../node_modules/core-js/modules/_regexp-exec.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js");
var $min = Math.min;
var $push = [].push;
var $SPLIT = 'split';
var LENGTH = 'length';
var LAST_INDEX = 'lastIndex';
var MAX_UINT32 = 0xffffffff;

// babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError
var SUPPORTS_Y = !fails(function () { RegExp(MAX_UINT32, 'y'); });

// @@split logic
__webpack_require__(/*! ./_fix-re-wks */ "../node_modules/core-js/modules/_fix-re-wks.js")('split', 2, function (defined, SPLIT, $split, maybeCallNative) {
  var internalSplit;
  if (
    'abbc'[$SPLIT](/(b)*/)[1] == 'c' ||
    'test'[$SPLIT](/(?:)/, -1)[LENGTH] != 4 ||
    'ab'[$SPLIT](/(?:ab)*/)[LENGTH] != 2 ||
    '.'[$SPLIT](/(.?)(.?)/)[LENGTH] != 4 ||
    '.'[$SPLIT](/()()/)[LENGTH] > 1 ||
    ''[$SPLIT](/.?/)[LENGTH]
  ) {
    // based on es5-shim implementation, need to rework it
    internalSplit = function (separator, limit) {
      var string = String(this);
      if (separator === undefined && limit === 0) return [];
      // If `separator` is not a regex, use native split
      if (!isRegExp(separator)) return $split.call(string, separator, limit);
      var output = [];
      var flags = (separator.ignoreCase ? 'i' : '') +
                  (separator.multiline ? 'm' : '') +
                  (separator.unicode ? 'u' : '') +
                  (separator.sticky ? 'y' : '');
      var lastLastIndex = 0;
      var splitLimit = limit === undefined ? MAX_UINT32 : limit >>> 0;
      // Make `global` and avoid `lastIndex` issues by working with a copy
      var separatorCopy = new RegExp(separator.source, flags + 'g');
      var match, lastIndex, lastLength;
      while (match = regexpExec.call(separatorCopy, string)) {
        lastIndex = separatorCopy[LAST_INDEX];
        if (lastIndex > lastLastIndex) {
          output.push(string.slice(lastLastIndex, match.index));
          if (match[LENGTH] > 1 && match.index < string[LENGTH]) $push.apply(output, match.slice(1));
          lastLength = match[0][LENGTH];
          lastLastIndex = lastIndex;
          if (output[LENGTH] >= splitLimit) break;
        }
        if (separatorCopy[LAST_INDEX] === match.index) separatorCopy[LAST_INDEX]++; // Avoid an infinite loop
      }
      if (lastLastIndex === string[LENGTH]) {
        if (lastLength || !separatorCopy.test('')) output.push('');
      } else output.push(string.slice(lastLastIndex));
      return output[LENGTH] > splitLimit ? output.slice(0, splitLimit) : output;
    };
  // Chakra, V8
  } else if ('0'[$SPLIT](undefined, 0)[LENGTH]) {
    internalSplit = function (separator, limit) {
      return separator === undefined && limit === 0 ? [] : $split.call(this, separator, limit);
    };
  } else {
    internalSplit = $split;
  }

  return [
    // `String.prototype.split` method
    // https://tc39.github.io/ecma262/#sec-string.prototype.split
    function split(separator, limit) {
      var O = defined(this);
      var splitter = separator == undefined ? undefined : separator[SPLIT];
      return splitter !== undefined
        ? splitter.call(separator, O, limit)
        : internalSplit.call(String(O), separator, limit);
    },
    // `RegExp.prototype[@@split]` method
    // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@split
    //
    // NOTE: This cannot be properly polyfilled in engines that don't support
    // the 'y' flag.
    function (regexp, limit) {
      var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== $split);
      if (res.done) return res.value;

      var rx = anObject(regexp);
      var S = String(this);
      var C = speciesConstructor(rx, RegExp);

      var unicodeMatching = rx.unicode;
      var flags = (rx.ignoreCase ? 'i' : '') +
                  (rx.multiline ? 'm' : '') +
                  (rx.unicode ? 'u' : '') +
                  (SUPPORTS_Y ? 'y' : 'g');

      // ^(? + rx + ) is needed, in combination with some S slicing, to
      // simulate the 'y' flag.
      var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags);
      var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;
      if (lim === 0) return [];
      if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];
      var p = 0;
      var q = 0;
      var A = [];
      while (q < S.length) {
        splitter.lastIndex = SUPPORTS_Y ? q : 0;
        var z = callRegExpExec(splitter, SUPPORTS_Y ? S : S.slice(q));
        var e;
        if (
          z === null ||
          (e = $min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p
        ) {
          q = advanceStringIndex(S, q, unicodeMatching);
        } else {
          A.push(S.slice(p, q));
          if (A.length === lim) return A;
          for (var i = 1; i <= z.length - 1; i++) {
            A.push(z[i]);
            if (A.length === lim) return A;
          }
          q = p = e;
        }
      }
      A.push(S.slice(p));
      return A;
    }
  ];
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.to-string.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.to-string.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

__webpack_require__(/*! ./es6.regexp.flags */ "../node_modules/core-js/modules/es6.regexp.flags.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var $flags = __webpack_require__(/*! ./_flags */ "../node_modules/core-js/modules/_flags.js");
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js");
var TO_STRING = 'toString';
var $toString = /./[TO_STRING];

var define = function (fn) {
  __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js")(RegExp.prototype, TO_STRING, fn, true);
};

// 21.2.5.14 RegExp.prototype.toString()
if (__webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () { return $toString.call({ source: 'a', flags: 'b' }) != '/a/b'; })) {
  define(function toString() {
    var R = anObject(this);
    return '/'.concat(R.source, '/',
      'flags' in R ? R.flags : !DESCRIPTORS && R instanceof RegExp ? $flags.call(R) : undefined);
  });
// FF44- RegExp#toString has a wrong name
} else if ($toString.name != TO_STRING) {
  define(function toString() {
    return $toString.call(this);
  });
}


/***/ }),

/***/ "../node_modules/core-js/modules/es6.string.includes.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.string.includes.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
// 21.1.3.7 String.prototype.includes(searchString, position = 0)

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var context = __webpack_require__(/*! ./_string-context */ "../node_modules/core-js/modules/_string-context.js");
var INCLUDES = 'includes';

$export($export.P + $export.F * __webpack_require__(/*! ./_fails-is-regexp */ "../node_modules/core-js/modules/_fails-is-regexp.js")(INCLUDES), 'String', {
  includes: function includes(searchString /* , position = 0 */) {
    return !!~context(this, searchString, INCLUDES)
      .indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined);
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es7.array.includes.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/es7.array.includes.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// https://github.com/tc39/Array.prototype.includes
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var $includes = __webpack_require__(/*! ./_array-includes */ "../node_modules/core-js/modules/_array-includes.js")(true);

$export($export.P, 'Array', {
  includes: function includes(el /* , fromIndex = 0 */) {
    return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);
  }
});

__webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/modules/_add-to-unscopables.js")('includes');


/***/ }),

/***/ "@wordpress/i18n":
/*!**************************!*\
  !*** external "wp.i18n" ***!
  \**************************/
/***/ ((module) => {

"use strict";
module.exports = wp.i18n;

/***/ })

/******/ 	});
/************************************************************************/
/******/ 	// The module cache
/******/ 	var __webpack_module_cache__ = {};
/******/ 	
/******/ 	// The require function
/******/ 	function __webpack_require__(moduleId) {
/******/ 		// Check if module is in cache
/******/ 		var cachedModule = __webpack_module_cache__[moduleId];
/******/ 		if (cachedModule !== undefined) {
/******/ 			return cachedModule.exports;
/******/ 		}
/******/ 		// Create a new module (and put it into the cache)
/******/ 		var module = __webpack_module_cache__[moduleId] = {
/******/ 			// no module.id needed
/******/ 			// no module.loaded needed
/******/ 			exports: {}
/******/ 		};
/******/ 	
/******/ 		// Execute the module function
/******/ 		__webpack_modules__[moduleId](module, module.exports, __webpack_require__);
/******/ 	
/******/ 		// Return the exports of the module
/******/ 		return module.exports;
/******/ 	}
/******/ 	
/************************************************************************/
var __webpack_exports__ = {};
// This entry need to be wrapped in an IIFE because it need to be in strict mode.
(() => {
"use strict";
/*!***************************************!*\
  !*** ../assets/dev/js/admin/admin.js ***!
  \***************************************/
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

__webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");

__webpack_require__(/*! core-js/modules/es6.regexp.search.js */ "../node_modules/core-js/modules/es6.regexp.search.js");

__webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");

__webpack_require__(/*! core-js/modules/es6.array.slice.js */ "../node_modules/core-js/modules/es6.array.slice.js");

var _module = _interopRequireDefault(__webpack_require__(/*! elementor/modules/landing-pages/assets/js/admin/module */ "../modules/landing-pages/assets/js/admin/module.js"));

var _module2 = _interopRequireDefault(__webpack_require__(/*! elementor/core/experiments/assets/js/admin/module */ "../core/experiments/assets/js/admin/module.js"));

var _environment = _interopRequireDefault(__webpack_require__(/*! ../../../../core/common/assets/js/utils/environment */ "../core/common/assets/js/utils/environment.js"));

(function ($) {
  var ElementorAdmin = elementorModules.ViewModule.extend({
    maintenanceMode: null,
    config: elementorAdminConfig,
    getDefaultElements: function getDefaultElements() {
      var elements = {
        $switchMode: $('#elementor-switch-mode'),
        $goToEditLink: $('#elementor-go-to-edit-page-link'),
        $switchModeInput: $('#elementor-switch-mode-input'),
        $switchModeButton: $('#elementor-switch-mode-button'),
        $elementorLoader: $('.elementor-loader'),
        $builderEditor: $('#elementor-editor'),
        $importButton: $('#elementor-import-template-trigger'),
        $importArea: $('#elementor-import-template-area'),
        $settingsForm: $('#elementor-settings-form'),
        $settingsTabsWrapper: $('#elementor-settings-tabs-wrapper'),
        $menuGetHelpLink: $('a[href="admin.php?page=go_knowledge_base_site"]'),
        $reMigrateGlobalsButton: $('.elementor-re-migrate-globals-button')
      };
      elements.$settingsFormPages = elements.$settingsForm.find('.elementor-settings-form-page');
      elements.$activeSettingsPage = elements.$settingsFormPages.filter('.elementor-active');
      elements.$settingsTabs = elements.$settingsTabsWrapper.children();
      elements.$activeSettingsTab = elements.$settingsTabs.filter('.nav-tab-active');
      return elements;
    },
    toggleStatus: function toggleStatus() {
      var isElementorMode = this.isElementorMode();
      elementorCommon.elements.$body.toggleClass('elementor-editor-active', isElementorMode).toggleClass('elementor-editor-inactive', !isElementorMode);
    },
    bindEvents: function bindEvents() {
      var self = this;
      self.elements.$switchModeButton.on('click', function (event) {
        event.preventDefault();

        if (self.isElementorMode()) {
          elementorCommon.dialogsManager.createWidget('confirm', {
            message: __('Please note that you are switching to WordPress default editor. Your current layout, design and content might break.', 'elementor'),
            headerMessage: __('Back to WordPress Editor', 'elementor'),
            strings: {
              confirm: __('Continue', 'elementor'),
              cancel: __('Cancel', 'elementor')
            },
            defaultOption: 'confirm',
            onConfirm: function onConfirm() {
              self.elements.$switchModeInput.val('');
              self.toggleStatus();
            }
          }).show();
        } else {
          self.elements.$switchModeInput.val(true);
          var $wpTitle = $('#title');

          if (!$wpTitle.val()) {
            $wpTitle.val('Elementor #' + $('#post_ID').val());
          }

          if (wp.autosave) {
            wp.autosave.server.triggerSave();
          }

          self.animateLoader();
          $(document).on('heartbeat-tick.autosave', function () {
            elementorCommon.elements.$window.off('beforeunload.edit-post');
            location.href = self.elements.$goToEditLink.attr('href');
          });
          self.toggleStatus();
        }
      });
      self.elements.$goToEditLink.on('click', function () {
        self.animateLoader();
      });
      $('.e-notice--dismissible').on('click', '.e-notice__dismiss, .e-notice-dismiss', function (event) {
        event.preventDefault();
        var $wrapperElm = $(this).closest('.e-notice--dismissible');
        $.post(ajaxurl, {
          action: 'elementor_set_admin_notice_viewed',
          notice_id: $wrapperElm.data('notice_id')
        });
        $wrapperElm.fadeTo(100, 0, function () {
          $wrapperElm.slideUp(100, function () {
            $wrapperElm.remove();
          });
        });
      });
      $('#elementor-clear-cache-button').on('click', function (event) {
        event.preventDefault();
        var $thisButton = $(this);
        $thisButton.removeClass('success').addClass('loading');
        $.post(ajaxurl, {
          action: 'elementor_clear_cache',
          _nonce: $thisButton.data('nonce')
        }).done(function () {
          $thisButton.removeClass('loading').addClass('success');
        });
      });
      $('#elementor-library-sync-button').on('click', function (event) {
        event.preventDefault();
        var $thisButton = $(this);
        $thisButton.removeClass('success').addClass('loading');
        $.post(ajaxurl, {
          action: 'elementor_reset_library',
          _nonce: $thisButton.data('nonce')
        }).done(function () {
          $thisButton.removeClass('loading').addClass('success');
        });
      });
      $('#elementor-recreate-kit-button').on('click', function (event) {
        event.preventDefault();
        var $thisButton = $(this);
        $thisButton.removeClass('success error').addClass('loading').next('.e-recreate-kit-error-message').remove();
        $.post(ajaxurl, {
          action: 'elementor_recreate_kit',
          _nonce: $thisButton.data('nonce')
        }).done(function () {
          $thisButton.removeClass('loading').addClass('success');
        }).fail(function (_ref) {
          var _responseJSON$data;

          var responseJSON = _ref.responseJSON;
          $thisButton.removeClass('loading').addClass('error');

          if ((_responseJSON$data = responseJSON.data) !== null && _responseJSON$data !== void 0 && _responseJSON$data.message) {
            $thisButton.after("<div class=\"e-recreate-kit-error-message\">".concat(responseJSON.data.message, "</div>"));
          }
        });
      });
      $('#elementor-replace-url-button').on('click', function (event) {
        event.preventDefault();
        var $this = $(this),
            $tr = $this.parents('tr'),
            $from = $tr.find('[name="from"]'),
            $to = $tr.find('[name="to"]');
        $this.removeClass('success').addClass('loading');
        $.post(ajaxurl, {
          action: 'elementor_replace_url',
          from: $from.val(),
          to: $to.val(),
          _nonce: $this.data('nonce')
        }).done(function (response) {
          $this.removeClass('loading');

          if (response.success) {
            $this.addClass('success');
          }

          elementorCommon.dialogsManager.createWidget('alert', {
            message: response.data
          }).show();
        });
      });
      $('#elementor_upgrade_fa_button').on('click', function (event) {
        event.preventDefault();
        var $updateButton = $(this);
        $updateButton.addClass('loading');
        elementorCommon.dialogsManager.createWidget('confirm', {
          id: 'confirm_fa_migration_admin_modal',
          message: __('I understand that by upgrading to Font Awesome 5,', 'elementor') + '<br>' + __('I acknowledge that some changes may affect my website and that this action cannot be undone.', 'elementor'),
          headerMessage: __('Font Awesome 5 Migration', 'elementor'),
          strings: {
            confirm: __('Continue', 'elementor'),
            cancel: __('Cancel', 'elementor')
          },
          defaultOption: 'confirm',
          onConfirm: function onConfirm() {
            $updateButton.removeClass('error').addClass('loading');
            $.post(ajaxurl, $updateButton.data()).done(function (response) {
              $updateButton.removeClass('loading').addClass('success');
              $('#elementor_upgrade_fa_button').parent().append(response.data.message);
              var redirectTo = (location.search.split('redirect_to=')[1] || '').split('&')[0];

              if (redirectTo) {
                location.href = decodeURIComponent(redirectTo);
                return;
              }

              history.go(-1);
            }).fail(function () {
              $updateButton.removeClass('loading').addClass('error');
            });
          },
          onCancel: function onCancel() {
            $updateButton.removeClass('loading').addClass('error');
          }
        }).show();
      });
      self.elements.$settingsTabs.on({
        click: function click(event) {
          event.preventDefault();
          event.currentTarget.focus(); // Safari does not focus the tab automatically
        },
        focus: function focus() {
          // Using focus event to enable navigation by tab key
          var hrefWithoutHash = location.href.replace(/#.*/, '');
          history.pushState({}, '', hrefWithoutHash + this.hash);
          self.goToSettingsTabFromHash();
        }
      });
      $('select.elementor-rollback-select').on('change', function () {
        var $this = $(this),
            $rollbackButton = $this.next('.elementor-rollback-button'),
            placeholderText = $rollbackButton.data('placeholder-text'),
            placeholderUrl = $rollbackButton.data('placeholder-url');
        $rollbackButton.html(placeholderText.replace('{VERSION}', $this.val()));
        $rollbackButton.attr('href', placeholderUrl.replace('VERSION', $this.val()));
      }).trigger('change');
      $('.elementor-rollback-button').on('click', function (event) {
        event.preventDefault();
        var $this = $(this);
        elementorCommon.dialogsManager.createWidget('confirm', {
          headerMessage: __('Rollback to Previous Version', 'elementor'),
          message: __('Are you sure you want to reinstall previous version?', 'elementor'),
          strings: {
            confirm: __('Continue', 'elementor'),
            cancel: __('Cancel', 'elementor')
          },
          onConfirm: function onConfirm() {
            $this.addClass('loading');
            location.href = $this.attr('href');
          }
        }).show();
      });
      self.elements.$reMigrateGlobalsButton.on('click', function (event) {
        event.preventDefault();
        var $this = $(event.currentTarget);
        elementorCommon.dialogsManager.createWidget('confirm', {
          headerMessage: __('Migrate to v3.0', 'elementor'),
          message: __('Please note that this process will revert all changes made to Global Colors and Fonts since upgrading to v3.x.', 'elementor'),
          strings: {
            confirm: __('Continue', 'elementor'),
            cancel: __('Cancel', 'elementor')
          },
          onConfirm: function onConfirm() {
            $this.removeClass('success').addClass('loading');
            elementorCommon.ajax.addRequest('re_migrate_globals', {
              success: function success() {
                return $this.removeClass('loading').addClass('success');
              }
            });
          }
        }).show();
      });
      $('.elementor_css_print_method select').on('change', function () {
        var $descriptions = $('.elementor-css-print-method-description');
        $descriptions.hide();
        $descriptions.filter('[data-value="' + $(this).val() + '"]').show();
      }).trigger('change');
    },
    onInit: function onInit() {
      elementorModules.ViewModule.prototype.onInit.apply(this, arguments);
      this.initTemplatesImport();
      this.initMaintenanceMode();
      this.goToSettingsTabFromHash();
      this.openGetHelpInNewTab();
      this.addUserAgentClasses();
      this.roleManager.init();

      if (elementorCommon.config.experimentalFeatures['landing-pages']) {
        new _module.default();
      }

      new _module2.default();
    },
    addUserAgentClasses: function addUserAgentClasses() {
      var body = document.querySelector('body');
      (0, _entries.default)(_environment.default).forEach(function (_ref2) {
        var _ref3 = (0, _slicedToArray2.default)(_ref2, 2),
            key = _ref3[0],
            value = _ref3[1];

        if (!value) {
          return;
        }

        body.classList.add('e--ua-' + key);
      });
    },
    openGetHelpInNewTab: function openGetHelpInNewTab() {
      this.elements.$menuGetHelpLink.attr('target', '_blank');
    },
    initTemplatesImport: function initTemplatesImport() {
      if (!elementorCommon.elements.$body.hasClass('post-type-elementor_library')) {
        return;
      }

      var self = this,
          $importButton = self.elements.$importButton,
          $importArea = self.elements.$importArea;
      self.elements.$formAnchor = $('.wp-header-end');
      $('#wpbody-content').find('.page-title-action').last().after($importButton);
      self.elements.$formAnchor.after($importArea);
      $importButton.on('click', function () {
        $('#elementor-import-template-area').toggle();
      });
    },
    initMaintenanceMode: function initMaintenanceMode() {
      var MaintenanceMode = __webpack_require__(/*! elementor-admin/maintenance-mode */ "../assets/dev/js/admin/maintenance-mode.js");

      this.maintenanceMode = new MaintenanceMode();
    },
    isElementorMode: function isElementorMode() {
      return !!this.elements.$switchModeInput.val();
    },
    animateLoader: function animateLoader() {
      this.elements.$goToEditLink.addClass('elementor-animate');
    },
    goToSettingsTabFromHash: function goToSettingsTabFromHash() {
      var hash = location.hash.slice(1);

      if (hash) {
        this.goToSettingsTab(hash);
      }
    },
    goToSettingsTab: function goToSettingsTab(tabName) {
      var $pages = this.elements.$settingsFormPages;

      if (!$pages.length) {
        return;
      }

      var $activePage = $pages.filter('#' + tabName);
      this.elements.$activeSettingsPage.removeClass('elementor-active');
      this.elements.$activeSettingsTab.removeClass('nav-tab-active');
      var $activeTab = this.elements.$settingsTabs.filter('#elementor-settings-' + tabName);
      $activePage.addClass('elementor-active');
      $activeTab.addClass('nav-tab-active');
      this.elements.$settingsForm.attr('action', 'options.php#' + tabName);
      this.elements.$activeSettingsPage = $activePage;
      this.elements.$activeSettingsTab = $activeTab;
    },
    translate: function translate(stringKey, templateArgs) {
      return elementorCommon.translate(stringKey, null, templateArgs, this.config.i18n);
    },
    roleManager: {
      selectors: {
        body: 'elementor-role-manager',
        row: '.elementor-role-row',
        label: '.elementor-role-label',
        excludedIndicator: '.elementor-role-excluded-indicator',
        excludedField: 'input[name="elementor_exclude_user_roles[]"]',
        controlsContainer: '.elementor-role-controls',
        toggleHandle: '.elementor-role-toggle',
        arrowUp: 'dashicons-arrow-up',
        arrowDown: 'dashicons-arrow-down'
      },
      toggle: function toggle($trigger) {
        var self = this,
            $row = $trigger.closest(self.selectors.row),
            $toggleHandleIcon = $row.find(self.selectors.toggleHandle).find('.dashicons'),
            $controls = $row.find(self.selectors.controlsContainer);
        $controls.toggleClass('hidden');

        if ($controls.hasClass('hidden')) {
          $toggleHandleIcon.removeClass(self.selectors.arrowUp).addClass(self.selectors.arrowDown);
        } else {
          $toggleHandleIcon.removeClass(self.selectors.arrowDown).addClass(self.selectors.arrowUp);
        }

        self.updateLabel($row);
      },
      updateLabel: function updateLabel($row) {
        var self = this,
            $indicator = $row.find(self.selectors.excludedIndicator),
            excluded = $row.find(self.selectors.excludedField).is(':checked');

        if (excluded) {
          $indicator.html($indicator.data('excluded-label'));
        } else {
          $indicator.html('');
        }

        self.setAdvancedState($row, excluded);
      },
      setAdvancedState: function setAdvancedState($row, state) {
        var self = this,
            $controls = $row.find('input[type="checkbox"]').not(self.selectors.excludedField);
        $controls.each(function (index, input) {
          $(input).prop('disabled', state);
        });
      },
      bind: function bind() {
        var self = this;
        $(document).on('click', self.selectors.label + ',' + self.selectors.toggleHandle, function (event) {
          event.stopPropagation();
          event.preventDefault();
          self.toggle($(this));
        }).on('change', self.selectors.excludedField, function () {
          self.updateLabel($(this).closest(self.selectors.row));
        });
      },
      init: function init() {
        var self = this;

        if (!$('body[class*="' + self.selectors.body + '"]').length) {
          return;
        }

        self.bind();
        $(self.selectors.row).each(function (index, row) {
          self.updateLabel($(row));
        });
      }
    }
  });
  $(function () {
    window.elementorAdmin = new ElementorAdmin();
    elementorCommon.elements.$window.trigger('elementor/admin/init');
  });
})(jQuery);
})();

/******/ })()
;
//# sourceMappingURL=admin.js.mapassets/js/tabs.cd05b61e107cc58d1be9.bundle.min.js000064400000007104151327220410014752 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(self.webpackChunkelementor=self.webpackChunkelementor||[]).push([[520],{9728:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class baseTabs extends elementorModules.frontend.handlers.Base{getDefaultSettings(){return{selectors:{tablist:'[role="tablist"]',tabTitle:".elementor-tab-title",tabContent:".elementor-tab-content"},classes:{active:"elementor-active"},showTabFn:"show",hideTabFn:"hide",toggleSelf:!0,hidePrevious:!0,autoExpand:!0,keyDirection:{ArrowLeft:elementorFrontendConfig.is_rtl?1:-1,ArrowUp:-1,ArrowRight:elementorFrontendConfig.is_rtl?-1:1,ArrowDown:1}}}getDefaultElements(){const e=this.getSettings("selectors");return{$tabTitles:this.findElement(e.tabTitle),$tabContents:this.findElement(e.tabContent)}}activateDefaultTab(){const e=this.getSettings();if(!e.autoExpand||"editor"===e.autoExpand&&!this.isEdit)return;const t=this.getEditSettings("activeItemIndex")||1,a={showTabFn:e.showTabFn,hideTabFn:e.hideTabFn};this.setSettings({showTabFn:"show",hideTabFn:"hide"}),this.changeActiveTab(t),this.setSettings(a)}handleKeyboardNavigation(e){const t=e.currentTarget,a=jQuery(t.closest(this.getSettings("selectors").tablist)),s=a.find(this.getSettings("selectors").tabTitle),i="vertical"===a.attr("aria-orientation");switch(e.key){case"ArrowLeft":case"ArrowRight":if(i)return;break;case"ArrowUp":case"ArrowDown":if(!i)return;e.preventDefault();break;case"Home":return e.preventDefault(),void s.first().focus();case"End":return e.preventDefault(),void s.last().focus();default:return}const n=t.getAttribute("data-tab")-1,r=this.getSettings("keyDirection")[e.key],o=s[n+r];o?o.focus():-1===n+r?s.last().focus():s.first().focus()}deactivateActiveTab(e){const t=this.getSettings(),a=t.classes.active,s=e?'[data-tab="'+e+'"]':"."+a,i=this.elements.$tabTitles.filter(s),n=this.elements.$tabContents.filter(s);i.add(n).removeClass(a),i.attr({tabindex:"-1","aria-selected":"false","aria-expanded":"false"}),n[t.hideTabFn](),n.attr("hidden","hidden")}activateTab(e){const t=this.getSettings(),a=t.classes.active,s=this.elements.$tabTitles.filter('[data-tab="'+e+'"]'),i=this.elements.$tabContents.filter('[data-tab="'+e+'"]'),n="show"===t.showTabFn?0:400;s.add(i).addClass(a),s.attr({tabindex:"0","aria-selected":"true","aria-expanded":"true"}),i[t.showTabFn](n,(()=>elementorFrontend.elements.$window.trigger("resize"))),i.removeAttr("hidden")}isActiveTab(e){return this.elements.$tabTitles.filter('[data-tab="'+e+'"]').hasClass(this.getSettings("classes.active"))}bindEvents(){this.elements.$tabTitles.on({keydown:e=>{jQuery(e.target).is("a")&&"Enter"===e.key&&e.preventDefault(),["End","Home","ArrowUp","ArrowDown"].includes(e.key)&&this.handleKeyboardNavigation(e)},keyup:e=>{switch(e.key){case"ArrowLeft":case"ArrowRight":this.handleKeyboardNavigation(e);break;case"Enter":case"Space":e.preventDefault(),this.changeActiveTab(e.currentTarget.getAttribute("data-tab"))}},click:e=>{e.preventDefault(),this.changeActiveTab(e.currentTarget.getAttribute("data-tab"))}})}onInit(...e){super.onInit(...e),this.activateDefaultTab()}onEditSettingsChange(e){"activeItemIndex"===e&&this.activateDefaultTab()}changeActiveTab(e){const t=this.isActiveTab(e),a=this.getSettings();!a.toggleSelf&&t||!a.hidePrevious||this.deactivateActiveTab(),!a.hidePrevious&&t&&this.deactivateActiveTab(e),t||this.activateTab(e)}}t.default=baseTabs},9459:(e,t,a)=>{"use strict";var s=a(7914);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=s(a(9728));class Tabs extends i.default{getDefaultSettings(){return{...super.getDefaultSettings(),toggleSelf:!1}}}t.default=Tabs}}]);assets/js/alert.124c2442b8a696597f9e.bundle.min.js000064400000001157151327220410014657 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(self.webpackChunkelementor=self.webpackChunkelementor||[]).push([[745],{9269:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class Alert extends elementorModules.frontend.handlers.Base{getDefaultSettings(){return{selectors:{dismissButton:".elementor-alert-dismiss"}}}getDefaultElements(){const e=this.getSettings("selectors");return{$dismissButton:this.$element.find(e.dismissButton)}}bindEvents(){this.elements.$dismissButton.on("click",this.onDismissButtonClick.bind(this))}onDismissButtonClick(){this.$element.fadeOut()}}t.default=Alert}}]);assets/js/lightbox.c3bb4b95635c5e3ad984.bundle.min.js000064400000044017151327220410015601 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(self.webpackChunkelementor=self.webpackChunkelementor||[]).push([[723],{3896:(e,t,i)=>{"use strict";var s=i(7914)(i(3251));e.exports=elementorModules.ViewModule.extend({oldAspectRatio:null,oldAnimation:null,swiper:null,player:null,getDefaultSettings:function(){return{classes:{aspectRatio:"elementor-aspect-ratio-%s",item:"elementor-lightbox-item",image:"elementor-lightbox-image",videoContainer:"elementor-video-container",videoWrapper:"elementor-fit-aspect-ratio",playButton:"elementor-custom-embed-play",playButtonIcon:"fa",playing:"elementor-playing",hidden:"elementor-hidden",invisible:"elementor-invisible",preventClose:"elementor-lightbox-prevent-close",slideshow:{container:"swiper-container",slidesWrapper:"swiper-wrapper",prevButton:"elementor-swiper-button elementor-swiper-button-prev",nextButton:"elementor-swiper-button elementor-swiper-button-next",prevButtonIcon:"eicon-chevron-left",nextButtonIcon:"eicon-chevron-right",slide:"swiper-slide",header:"elementor-slideshow__header",footer:"elementor-slideshow__footer",title:"elementor-slideshow__title",description:"elementor-slideshow__description",counter:"elementor-slideshow__counter",iconExpand:"eicon-frame-expand",iconShrink:"eicon-frame-minimize",iconZoomIn:"eicon-zoom-in-bold",iconZoomOut:"eicon-zoom-out-bold",iconShare:"eicon-share-arrow",shareMenu:"elementor-slideshow__share-menu",shareLinks:"elementor-slideshow__share-links",hideUiVisibility:"elementor-slideshow--ui-hidden",shareMode:"elementor-slideshow--share-mode",fullscreenMode:"elementor-slideshow--fullscreen-mode",zoomMode:"elementor-slideshow--zoom-mode"}},selectors:{image:".elementor-lightbox-image",links:"a, [data-elementor-lightbox]",slideshow:{activeSlide:".swiper-slide-active",prevSlide:".swiper-slide-prev",nextSlide:".swiper-slide-next"}},modalOptions:{id:"elementor-lightbox",entranceAnimation:"zoomIn",videoAspectRatio:169,position:{enable:!1}}}},getModal:function(){return e.exports.modal||this.initModal(),e.exports.modal},initModal:function(){const t=e.exports.modal=elementorFrontend.getDialogsManager().createWidget("lightbox",{className:"elementor-lightbox",closeButton:!0,closeButtonOptions:{iconClass:"eicon-close",attributes:{tabindex:0,role:"button","aria-label":elementorFrontend.config.i18n.close+" (Esc)"}},selectors:{preventClose:"."+this.getSettings("classes.preventClose")},hide:{onClick:!0}});t.on("hide",(function(){t.setMessage("")}))},showModal:function(e){if(e.url&&!e.url.startsWith("http"))return;this.elements.$closeButton=this.getModal().getElements("closeButton"),this.$buttons=this.elements.$closeButton,this.focusedButton=null;const t=this,i=t.getDefaultSettings().modalOptions;t.id=e.id,t.setSettings("modalOptions",jQuery.extend(i,e.modalOptions));const n=t.getModal();switch(n.setID(t.getSettings("modalOptions.id")),n.onShow=function(){DialogsManager.getWidgetType("lightbox").prototype.onShow.apply(n,arguments),t.setEntranceAnimation()},n.onHide=function(){DialogsManager.getWidgetType("lightbox").prototype.onHide.apply(n,arguments),n.getElements("message").removeClass("animated"),s.default.isFullscreen&&t.deactivateFullscreen(),t.unbindHotKeys()},e.type){case"video":t.setVideoContent(e);break;case"image":const i=[{image:e.url,index:0,title:e.title,description:e.description}];e.slideshow={slides:i,swiper:{loop:!1,pagination:!1}};case"slideshow":t.setSlideshowContent(e.slideshow);break;default:t.setHTMLContent(e.html)}n.show()},createLightbox:function(e){let t={};if(e.dataset.elementorLightbox&&(t=JSON.parse(e.dataset.elementorLightbox)),t.type&&"slideshow"!==t.type)return void this.showModal(t);if(!e.dataset.elementorLightboxSlideshow){const t="single-img";return void this.showModal({type:"image",id:t,url:e.href,title:e.dataset.elementorLightboxTitle,description:e.dataset.elementorLightboxDescription,modalOptions:{id:"elementor-lightbox-slideshow-"+t}})}const i=e.dataset.elementorLightboxVideo||e.href;this.openSlideshow(e.dataset.elementorLightboxSlideshow,i)},setHTMLContent:function(e){window.elementorCommon&&elementorCommon.helpers.hardDeprecated("elementorFrontend.utils.lightbox.setHTMLContent","3.1.4"),this.getModal().setMessage(e)},setVideoContent:function(e){const t=jQuery,i=this.getSettings("classes"),s=t("<div>",{class:`${i.videoContainer} ${i.preventClose}`}),n=t("<div>",{class:i.videoWrapper}),o=this.getModal();let l;if("hosted"===e.videoType){const i=t.extend({src:e.url,autoplay:""},e.videoParams);l=t("<video>",i)}else{let i=elementorFrontend.utils.baseVideoLoader;-1!==e.url.indexOf("vimeo.com")?i=elementorFrontend.utils.vimeo:e.url.match(/^(?:https?:\/\/)?(?:www\.)?(?:m\.)?(?:youtu\.be\/|youtube\.com)/)&&(i=elementorFrontend.utils.youtube),l=t("<iframe>",{src:i.getAutoplayURL(e.url),allowfullscreen:1})}s.append(n),n.append(l),o.setMessage(s),this.setVideoAspectRatio();const a=o.onHide;o.onHide=function(){a(),this.$buttons=jQuery(),this.focusedButton=null,o.getElements("message").removeClass("elementor-fit-aspect-ratio")}},getShareLinks:function(){const{i18n:e}=elementorFrontend.config,t={facebook:e.shareOnFacebook,twitter:e.shareOnTwitter,pinterest:e.pinIt},i=jQuery,s=this.getSettings("classes"),n=this.getSettings("selectors"),o=i("<div>",{class:s.slideshow.shareLinks}),l=this.getSlide("active"),a=l.find(n.image),r=l.data("elementor-slideshow-video");let d;return d=r||a.attr("src"),i.each(t,((e,t)=>{const s=i("<a>",{href:this.createShareLink(e,d),target:"_blank"}).text(t);s.prepend(i("<i>",{class:"eicon-"+e})),o.append(s)})),r||o.append(i("<a>",{href:d,download:""}).text(e.downloadImage).prepend(i("<i>",{class:"eicon-download-bold","aria-label":e.download}))),o},createShareLink:function(e,t){const i={};if("pinterest"===e)i.image=encodeURIComponent(t);else{const e=elementorFrontend.utils.urlActions.createActionHash("lightbox",{id:this.id,url:t});i.url=encodeURIComponent(location.href.replace(/#.*/,""))+e}return ShareLink.getNetworkLink(e,i)},getSlideshowHeader:function(){const{i18n:e}=elementorFrontend.config,t=jQuery,i="yes"===elementorFrontend.getKitSettings("lightbox_enable_counter"),s="yes"===elementorFrontend.getKitSettings("lightbox_enable_fullscreen"),n="yes"===elementorFrontend.getKitSettings("lightbox_enable_zoom"),o="yes"===elementorFrontend.getKitSettings("lightbox_enable_share"),l=this.getSettings("classes"),a=l.slideshow,r=this.elements;if(i||s||n||o){if(r.$header=t("<header>",{class:a.header+" "+l.preventClose}),o){r.$iconShare=t("<i>",{class:a.iconShare,role:"button","aria-label":e.share,"aria-expanded":!1}).append(t("<span>"));const i=t("<div>");i.on("click",(e=>{e.stopPropagation()})),r.$shareMenu=t("<div>",{class:a.shareMenu}).append(i),r.$iconShare.add(r.$shareMenu).on("click",this.toggleShareMenu),r.$header.append(r.$iconShare,r.$shareMenu),this.$buttons=this.$buttons.add(r.$iconShare)}return n&&(r.$iconZoom=t("<i>",{class:a.iconZoomIn,role:"switch","aria-checked":!1,"aria-label":e.zoom}),r.$iconZoom.on("click",this.toggleZoomMode),r.$header.append(r.$iconZoom),this.$buttons=this.$buttons.add(r.$iconZoom)),s&&(r.$iconExpand=t("<i>",{class:a.iconExpand,role:"switch","aria-checked":!1,"aria-label":e.fullscreen}).append(t("<span>"),t("<span>")),r.$iconExpand.on("click",this.toggleFullscreen),r.$header.append(r.$iconExpand),this.$buttons=this.$buttons.add(r.$iconExpand)),i&&(r.$counter=t("<span>",{class:a.counter}),r.$header.append(r.$counter)),r.$header}},toggleFullscreen:function(){s.default.isFullscreen?this.deactivateFullscreen():s.default.isEnabled&&this.activateFullscreen()},toggleZoomMode:function(){1!==this.swiper.zoom.scale?this.deactivateZoom():this.activateZoom()},toggleShareMenu:function(){this.shareMode?this.deactivateShareMode():(this.elements.$shareMenu.html(this.getShareLinks()),this.activateShareMode())},activateShareMode:function(){const e=this.getSettings("classes");this.elements.$container.addClass(e.slideshow.shareMode),this.elements.$iconShare.attr("aria-expanded",!0),this.swiper.detachEvents(),this.$originalButtons=this.$buttons,this.$buttons=this.elements.$iconShare.add(this.elements.$shareMenu.find("a")),this.shareMode=!0},deactivateShareMode:function(){const e=this.getSettings("classes");this.elements.$container.removeClass(e.slideshow.shareMode),this.elements.$iconShare.attr("aria-expanded",!1),this.swiper.attachEvents(),this.$buttons=this.$originalButtons,this.shareMode=!1},activateFullscreen:function(){const e=this.getSettings("classes");s.default.request(this.elements.$container.parents(".dialog-widget")[0]),this.elements.$iconExpand.removeClass(e.slideshow.iconExpand).addClass(e.slideshow.iconShrink).attr("aria-checked","true"),this.elements.$container.addClass(e.slideshow.fullscreenMode)},deactivateFullscreen:function(){const e=this.getSettings("classes");s.default.exit(),this.elements.$iconExpand.removeClass(e.slideshow.iconShrink).addClass(e.slideshow.iconExpand).attr("aria-checked","false"),this.elements.$container.removeClass(e.slideshow.fullscreenMode)},activateZoom:function(){const e=this.swiper,t=this.elements,i=this.getSettings("classes");e.zoom.in(),e.allowSlideNext=!1,e.allowSlidePrev=!1,e.allowTouchMove=!1,t.$container.addClass(i.slideshow.zoomMode),t.$iconZoom.removeClass(i.slideshow.iconZoomIn).addClass(i.slideshow.iconZoomOut)},deactivateZoom:function(){const e=this.swiper,t=this.elements,i=this.getSettings("classes");e.zoom.out(),e.allowSlideNext=!0,e.allowSlidePrev=!0,e.allowTouchMove=!0,t.$container.removeClass(i.slideshow.zoomMode),t.$iconZoom.removeClass(i.slideshow.iconZoomOut).addClass(i.slideshow.iconZoomIn)},getSlideshowFooter:function(){const e=jQuery,t=this.getSettings("classes"),i=e("<footer>",{class:t.slideshow.footer+" "+t.preventClose}),s=e("<div>",{class:t.slideshow.title}),n=e("<div>",{class:t.slideshow.description});return i.append(s,n),i},setSlideshowContent:function(e){const{i18n:t}=elementorFrontend.config,i=jQuery,s=1===e.slides.length,n=""!==elementorFrontend.getKitSettings("lightbox_title_src"),o=""!==elementorFrontend.getKitSettings("lightbox_description_src"),l=n||o,a=this.getSettings("classes"),r=a.slideshow,d=i("<div>",{class:r.container}),c=i("<div>",{class:r.slidesWrapper});let h,u;e.slides.forEach((e=>{let s=r.slide+" "+a.item;e.video&&(s+=" "+a.video);const n=i("<div>",{class:s});if(e.video){n.attr("data-elementor-slideshow-video",e.video);const s=i("<div>",{class:a.playButton}).html(i("<i>",{class:a.playButtonIcon,"aria-label":t.playVideo}));n.append(s)}else{const t=i("<div>",{class:"swiper-zoom-container"}),s=i('<div class="swiper-lazy-preloader"></div>'),o={"data-src":e.image,class:a.image+" "+a.preventClose+" swiper-lazy"};e.title&&(o["data-title"]=e.title,o.alt=e.title),e.description&&(o["data-description"]=e.description,o.alt+=" - "+e.description);const l=i("<img>",o);t.append([l,s]),n.append(t)}c.append(n)})),this.elements.$container=d,this.elements.$header=this.getSlideshowHeader(),d.prepend(this.elements.$header).append(c),s||(h=i("<div>",{class:r.prevButton+" "+a.preventClose,"aria-label":t.previous}).html(i("<i>",{class:r.prevButtonIcon})),u=i("<div>",{class:r.nextButton+" "+a.preventClose,"aria-label":t.next}).html(i("<i>",{class:r.nextButtonIcon})),d.append(u,h),this.$buttons=this.$buttons.add(u).add(h)),l&&(this.elements.$footer=this.getSlideshowFooter(),d.append(this.elements.$footer)),this.setSettings("hideUiTimeout",""),d.on("click mousemove keypress",this.showLightboxUi);const m=this.getModal();m.setMessage(d);const p=m.onShow;m.onShow=async()=>{p();const t={pagination:{el:"."+r.counter,type:"fraction"},on:{slideChangeTransitionEnd:this.onSlideChange},lazy:{loadPrevNext:!0},zoom:!0,spaceBetween:100,grabCursor:!0,runCallbacksOnInit:!1,loop:!0,keyboard:!0,handleElementorBreakpoints:!0};s||(t.navigation={prevEl:h,nextEl:u}),e.swiper&&i.extend(t,e.swiper);const n=elementorFrontend.utils.swiper;this.swiper=await new n(d,t),d.data("swiper",this.swiper),this.setVideoAspectRatio(),this.playSlideVideo(),l&&this.updateFooterText(),this.bindHotKeys(),this.makeButtonsAccessible()}},makeButtonsAccessible:function(){this.$buttons.attr("tabindex",0).on("keypress",(e=>{13!==e.which&&32!==e.which||jQuery(e.currentTarget).trigger("click")}))},showLightboxUi:function(){const e=this.getSettings("classes").slideshow;this.elements.$container.removeClass(e.hideUiVisibility),clearTimeout(this.getSettings("hideUiTimeout")),this.setSettings("hideUiTimeout",setTimeout((()=>{this.shareMode||this.elements.$container.addClass(e.hideUiVisibility)}),3500))},bindHotKeys:function(){this.getModal().getElements("window").on("keydown",this.activeKeyDown)},unbindHotKeys:function(){this.getModal().getElements("window").off("keydown",this.activeKeyDown)},activeKeyDown:function(e){this.showLightboxUi();if(9===e.which){const t=this.$buttons;let i,s=!1,n=!1;t.each((e=>{const o=t[e];if(jQuery(o).is(":focus"))return i=o,s=0===e,n=t.length-1===e,!1})),e.shiftKey?s&&(e.preventDefault(),t.last().trigger("focus")):!n&&i||(e.preventDefault(),t.first().trigger("focus"))}},setVideoAspectRatio:function(e){e=e||this.getSettings("modalOptions.videoAspectRatio");const t=this.getModal().getElements("widgetContent"),i=this.oldAspectRatio,s=this.getSettings("classes.aspectRatio");this.oldAspectRatio=e,i&&t.removeClass(s.replace("%s",i)),e&&t.addClass(s.replace("%s",e))},getSlide:function(e){return jQuery(this.swiper.slides).filter(this.getSettings("selectors.slideshow."+e+"Slide"))},updateFooterText:function(){if(!this.elements.$footer)return;const e=this.getSettings("classes"),t=this.getSlide("active").find(".elementor-lightbox-image"),i=t.data("title"),s=t.data("description"),n=this.elements.$footer.find("."+e.slideshow.title),o=this.elements.$footer.find("."+e.slideshow.description);n.text(i||""),o.text(s||"")},playSlideVideo:function(){const e=this.getSlide("active"),t=e.data("elementor-slideshow-video");if(!t)return;const i=this.getSettings("classes"),s=jQuery("<div>",{class:i.videoContainer+" "+i.invisible}),n=jQuery("<div>",{class:i.videoWrapper}),o=e.children("."+i.playButton);let l,a;s.append(n),e.append(s),-1!==t.indexOf("vimeo.com")?(l="vimeo",a=elementorFrontend.utils.vimeo):t.match(/^(?:https?:\/\/)?(?:www\.)?(?:m\.)?(?:youtu\.be\/|youtube\.com)/)&&(l="youtube",a=elementorFrontend.utils.youtube);const r=a.getVideoIDFromURL(t);a.onApiReady((e=>{"youtube"===l?this.prepareYTVideo(e,r,s,n,o):"vimeo"===l&&this.prepareVimeoVideo(e,t,s,n,o)})),o.addClass(i.playing).removeClass(i.hidden)},prepareYTVideo:function(e,t,i,s,n){const o=this.getSettings("classes"),l=jQuery("<div>");let a=e.PlayerState.PLAYING;s.append(l),window.chrome&&(a=e.PlayerState.UNSTARTED),i.addClass("elementor-loading "+o.invisible),this.player=new e.Player(l[0],{videoId:t,events:{onReady:()=>{n.addClass(o.hidden),i.removeClass(o.invisible),this.player.playVideo()},onStateChange:e=>{e.data===a&&i.removeClass("elementor-loading "+o.invisible)}},playerVars:{controls:0,rel:0}})},prepareVimeoVideo:function(e,t,i,s,n){const o=this.getSettings("classes"),l={url:t,autoplay:!0,transparent:!1,playsinline:!1};this.player=new e.Player(s,l),this.player.ready().then((()=>{n.addClass(o.hidden),i.removeClass(o.invisible)}))},setEntranceAnimation:function(e){e=e||elementorFrontend.getCurrentDeviceSetting(this.getSettings("modalOptions"),"entranceAnimation");const t=this.getModal().getElements("message");this.oldAnimation&&t.removeClass(this.oldAnimation),this.oldAnimation=e,e&&t.addClass("animated "+e)},openSlideshow:function(e,t){const i=jQuery(this.getSettings("selectors.links")).filter(((t,i)=>{const s=jQuery(i);return e===i.dataset.elementorLightboxSlideshow&&!s.parent(".swiper-slide-duplicate").length&&!s.parents(".slick-cloned").length})),s=[];let n=0;i.each((function(){const e=this.dataset.elementorLightboxVideo;let o=this.dataset.elementorLightboxIndex;void 0===o&&(o=i.index(this)),(t===this.href||e&&t===e)&&(n=o);const l={image:this.href,index:o,title:this.dataset.elementorLightboxTitle,description:this.dataset.elementorLightboxDescription};e&&(l.video=e),s.push(l)})),s.sort(((e,t)=>e.index-t.index)),this.showModal({type:"slideshow",id:e,modalOptions:{id:"elementor-lightbox-slideshow-"+e},slideshow:{slides:s,swiper:{initialSlide:+n}}})},onSlideChange:function(){this.getSlide("prev").add(this.getSlide("next")).add(this.getSlide("active")).find("."+this.getSettings("classes.videoWrapper")).remove(),this.playSlideVideo(),this.updateFooterText()}})},3251:e=>{"use strict";var t,i,s,n,o;t="undefined"!=typeof window&&void 0!==window.document?window.document:{},i=e.exports,s=function(){for(var e,i=[["requestFullscreen","exitFullscreen","fullscreenElement","fullscreenEnabled","fullscreenchange","fullscreenerror"],["webkitRequestFullscreen","webkitExitFullscreen","webkitFullscreenElement","webkitFullscreenEnabled","webkitfullscreenchange","webkitfullscreenerror"],["webkitRequestFullScreen","webkitCancelFullScreen","webkitCurrentFullScreenElement","webkitCancelFullScreen","webkitfullscreenchange","webkitfullscreenerror"],["mozRequestFullScreen","mozCancelFullScreen","mozFullScreenElement","mozFullScreenEnabled","mozfullscreenchange","mozfullscreenerror"],["msRequestFullscreen","msExitFullscreen","msFullscreenElement","msFullscreenEnabled","MSFullscreenChange","MSFullscreenError"]],s=0,n=i.length,o={};s<n;s++)if((e=i[s])&&e[1]in t){var l=e.length;for(s=0;s<l;s++)o[i[0][s]]=e[s];return o}return!1}(),n={change:s.fullscreenchange,error:s.fullscreenerror},o={request:function(e){return new Promise(function(i,n){var o=function(){this.off("change",o),i()}.bind(this);this.on("change",o),e=e||t.documentElement,Promise.resolve(e[s.requestFullscreen]()).catch(n)}.bind(this))},exit:function(){return new Promise(function(e,i){if(this.isFullscreen){var n=function(){this.off("change",n),e()}.bind(this);this.on("change",n),Promise.resolve(t[s.exitFullscreen]()).catch(i)}else e()}.bind(this))},toggle:function(e){return this.isFullscreen?this.exit():this.request(e)},onchange:function(e){this.on("change",e)},onerror:function(e){this.on("error",e)},on:function(e,i){var s=n[e];s&&t.addEventListener(s,i,!1)},off:function(e,i){var s=n[e];s&&t.removeEventListener(s,i,!1)},raw:s},s?(Object.defineProperties(o,{isFullscreen:{get:function(){return Boolean(t[s.fullscreenElement])}},element:{enumerable:!0,get:function(){return t[s.fullscreenElement]}},isEnabled:{enumerable:!0,get:function(){return Boolean(t[s.fullscreenEnabled])}}}),i?e.exports=o:window.screenfull=o):i?e.exports={isEnabled:!1}:window.screenfull={isEnabled:!1}}}]);assets/js/accordion.839112600fade8979d16.bundle.min.js000064400000007152151327220410015505 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(self.webpackChunkelementor=self.webpackChunkelementor||[]).push([[209],{8470:(e,t,a)=>{"use strict";var s=a(7914);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=s(a(9728));class Accordion extends i.default{getDefaultSettings(){return{...super.getDefaultSettings(),showTabFn:"slideDown",hideTabFn:"slideUp"}}}t.default=Accordion},9728:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class baseTabs extends elementorModules.frontend.handlers.Base{getDefaultSettings(){return{selectors:{tablist:'[role="tablist"]',tabTitle:".elementor-tab-title",tabContent:".elementor-tab-content"},classes:{active:"elementor-active"},showTabFn:"show",hideTabFn:"hide",toggleSelf:!0,hidePrevious:!0,autoExpand:!0,keyDirection:{ArrowLeft:elementorFrontendConfig.is_rtl?1:-1,ArrowUp:-1,ArrowRight:elementorFrontendConfig.is_rtl?-1:1,ArrowDown:1}}}getDefaultElements(){const e=this.getSettings("selectors");return{$tabTitles:this.findElement(e.tabTitle),$tabContents:this.findElement(e.tabContent)}}activateDefaultTab(){const e=this.getSettings();if(!e.autoExpand||"editor"===e.autoExpand&&!this.isEdit)return;const t=this.getEditSettings("activeItemIndex")||1,a={showTabFn:e.showTabFn,hideTabFn:e.hideTabFn};this.setSettings({showTabFn:"show",hideTabFn:"hide"}),this.changeActiveTab(t),this.setSettings(a)}handleKeyboardNavigation(e){const t=e.currentTarget,a=jQuery(t.closest(this.getSettings("selectors").tablist)),s=a.find(this.getSettings("selectors").tabTitle),i="vertical"===a.attr("aria-orientation");switch(e.key){case"ArrowLeft":case"ArrowRight":if(i)return;break;case"ArrowUp":case"ArrowDown":if(!i)return;e.preventDefault();break;case"Home":return e.preventDefault(),void s.first().focus();case"End":return e.preventDefault(),void s.last().focus();default:return}const n=t.getAttribute("data-tab")-1,r=this.getSettings("keyDirection")[e.key],o=s[n+r];o?o.focus():-1===n+r?s.last().focus():s.first().focus()}deactivateActiveTab(e){const t=this.getSettings(),a=t.classes.active,s=e?'[data-tab="'+e+'"]':"."+a,i=this.elements.$tabTitles.filter(s),n=this.elements.$tabContents.filter(s);i.add(n).removeClass(a),i.attr({tabindex:"-1","aria-selected":"false","aria-expanded":"false"}),n[t.hideTabFn](),n.attr("hidden","hidden")}activateTab(e){const t=this.getSettings(),a=t.classes.active,s=this.elements.$tabTitles.filter('[data-tab="'+e+'"]'),i=this.elements.$tabContents.filter('[data-tab="'+e+'"]'),n="show"===t.showTabFn?0:400;s.add(i).addClass(a),s.attr({tabindex:"0","aria-selected":"true","aria-expanded":"true"}),i[t.showTabFn](n,(()=>elementorFrontend.elements.$window.trigger("resize"))),i.removeAttr("hidden")}isActiveTab(e){return this.elements.$tabTitles.filter('[data-tab="'+e+'"]').hasClass(this.getSettings("classes.active"))}bindEvents(){this.elements.$tabTitles.on({keydown:e=>{jQuery(e.target).is("a")&&"Enter"===e.key&&e.preventDefault(),["End","Home","ArrowUp","ArrowDown"].includes(e.key)&&this.handleKeyboardNavigation(e)},keyup:e=>{switch(e.key){case"ArrowLeft":case"ArrowRight":this.handleKeyboardNavigation(e);break;case"Enter":case"Space":e.preventDefault(),this.changeActiveTab(e.currentTarget.getAttribute("data-tab"))}},click:e=>{e.preventDefault(),this.changeActiveTab(e.currentTarget.getAttribute("data-tab"))}})}onInit(...e){super.onInit(...e),this.activateDefaultTab()}onEditSettingsChange(e){"activeItemIndex"===e&&this.activateDefaultTab()}changeActiveTab(e){const t=this.isActiveTab(e),a=this.getSettings();!a.toggleSelf&&t||!a.hidePrevious||this.deactivateActiveTab(),!a.hidePrevious&&t&&this.deactivateActiveTab(e),t||this.activateTab(e)}}t.default=baseTabs}}]);assets/js/editor.js000064400006275361151327220410010327 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
/******/ (() => { // webpackBootstrap
/******/ 	var __webpack_modules__ = ({

/***/ "../node_modules/@babel/runtime-corejs2/core-js/array/from.js":
/*!********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/array/from.js ***!
  \********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/array/from */ "../node_modules/core-js/library/fn/array/from.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/array/is-array */ "../node_modules/core-js/library/fn/array/is-array.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/is-iterable.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/is-iterable.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/is-iterable */ "../node_modules/core-js/library/fn/is-iterable.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/json/stringify.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/json/stringify.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/json/stringify */ "../node_modules/core-js/library/fn/json/stringify.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/assign.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/assign.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/assign */ "../node_modules/core-js/library/fn/object/assign.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/create.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/create.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/create */ "../node_modules/core-js/library/fn/object/create.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/define-properties.js":
/*!**********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/define-properties.js ***!
  \**********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/define-properties */ "../node_modules/core-js/library/fn/object/define-properties.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js":
/*!********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js ***!
  \********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/define-property */ "../node_modules/core-js/library/fn/object/define-property.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/entries.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/entries */ "../node_modules/core-js/library/fn/object/entries.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js":
/*!********************************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js ***!
  \********************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/get-own-property-descriptor */ "../node_modules/core-js/library/fn/object/get-own-property-descriptor.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptors.js":
/*!*********************************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptors.js ***!
  \*********************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/get-own-property-descriptors */ "../node_modules/core-js/library/fn/object/get-own-property-descriptors.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-symbols.js":
/*!*****************************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-symbols.js ***!
  \*****************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/get-own-property-symbols */ "../node_modules/core-js/library/fn/object/get-own-property-symbols.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/get-prototype-of.js":
/*!*********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/get-prototype-of.js ***!
  \*********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/get-prototype-of */ "../node_modules/core-js/library/fn/object/get-prototype-of.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/keys.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/keys */ "../node_modules/core-js/library/fn/object/keys.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js":
/*!*********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js ***!
  \*********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/set-prototype-of */ "../node_modules/core-js/library/fn/object/set-prototype-of.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/values.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/values */ "../node_modules/core-js/library/fn/object/values.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/parse-int.js":
/*!*******************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/parse-int.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/parse-int */ "../node_modules/core-js/library/fn/parse-int.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/promise.js":
/*!*****************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/promise.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/promise */ "../node_modules/core-js/library/fn/promise.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js":
/*!***************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js ***!
  \***************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/reflect/construct */ "../node_modules/core-js/library/fn/reflect/construct.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/reflect/get.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/reflect/get.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/reflect/get */ "../node_modules/core-js/library/fn/reflect/get.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js":
/*!****************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/symbol.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/symbol */ "../node_modules/core-js/library/fn/symbol/index.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/symbol/has-instance.js":
/*!*****************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/symbol/has-instance.js ***!
  \*****************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/symbol/has-instance */ "../node_modules/core-js/library/fn/symbol/has-instance.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js":
/*!*************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js ***!
  \*************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/symbol/iterator */ "../node_modules/core-js/library/fn/symbol/iterator.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/weak-map.js":
/*!******************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/weak-map.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/weak-map */ "../node_modules/core-js/library/fn/weak-map.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/arrayLikeToArray.js":
/*!**************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/arrayLikeToArray.js ***!
  \**************************************************************************/
/***/ ((module) => {

function _arrayLikeToArray(arr, len) {
  if (len == null || len > arr.length) len = arr.length;

  for (var i = 0, arr2 = new Array(len); i < len; i++) {
    arr2[i] = arr[i];
  }

  return arr2;
}

module.exports = _arrayLikeToArray;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/arrayWithHoles.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/arrayWithHoles.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Array$isArray = __webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js");

function _arrayWithHoles(arr) {
  if (_Array$isArray(arr)) return arr;
}

module.exports = _arrayWithHoles;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/arrayWithoutHoles.js":
/*!***************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/arrayWithoutHoles.js ***!
  \***************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Array$isArray = __webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js");

var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/arrayLikeToArray.js");

function _arrayWithoutHoles(arr) {
  if (_Array$isArray(arr)) return arrayLikeToArray(arr);
}

module.exports = _arrayWithoutHoles;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js":
/*!*******************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js ***!
  \*******************************************************************************/
/***/ ((module) => {

function _assertThisInitialized(self) {
  if (self === void 0) {
    throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
  }

  return self;
}

module.exports = _assertThisInitialized;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/asyncToGenerator.js":
/*!**************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/asyncToGenerator.js ***!
  \**************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Promise = __webpack_require__(/*! @babel/runtime-corejs2/core-js/promise */ "../node_modules/@babel/runtime-corejs2/core-js/promise.js");

function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
  try {
    var info = gen[key](arg);
    var value = info.value;
  } catch (error) {
    reject(error);
    return;
  }

  if (info.done) {
    resolve(value);
  } else {
    _Promise.resolve(value).then(_next, _throw);
  }
}

function _asyncToGenerator(fn) {
  return function () {
    var self = this,
        args = arguments;
    return new _Promise(function (resolve, reject) {
      var gen = fn.apply(self, args);

      function _next(value) {
        asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
      }

      function _throw(err) {
        asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
      }

      _next(undefined);
    });
  };
}

module.exports = _asyncToGenerator;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js ***!
  \************************************************************************/
/***/ ((module) => {

function _classCallCheck(instance, Constructor) {
  if (!(instance instanceof Constructor)) {
    throw new TypeError("Cannot call a class as a function");
  }
}

module.exports = _classCallCheck;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/createClass.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

function _defineProperties(target, props) {
  for (var i = 0; i < props.length; i++) {
    var descriptor = props[i];
    descriptor.enumerable = descriptor.enumerable || false;
    descriptor.configurable = true;
    if ("value" in descriptor) descriptor.writable = true;

    _Object$defineProperty(target, descriptor.key, descriptor);
  }
}

function _createClass(Constructor, protoProps, staticProps) {
  if (protoProps) _defineProperties(Constructor.prototype, protoProps);
  if (staticProps) _defineProperties(Constructor, staticProps);
  return Constructor;
}

module.exports = _createClass;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/createForOfIteratorHelper.js":
/*!***********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/createForOfIteratorHelper.js ***!
  \***********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Symbol = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol */ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js");

var _Symbol$iterator = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/iterator */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js");

var _Array$isArray = __webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js");

var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js");

function _createForOfIteratorHelper(o, allowArrayLike) {
  var it = typeof _Symbol !== "undefined" && o[_Symbol$iterator] || o["@@iterator"];

  if (!it) {
    if (_Array$isArray(o) || (it = unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") {
      if (it) o = it;
      var i = 0;

      var F = function F() {};

      return {
        s: F,
        n: function n() {
          if (i >= o.length) return {
            done: true
          };
          return {
            done: false,
            value: o[i++]
          };
        },
        e: function e(_e) {
          throw _e;
        },
        f: F
      };
    }

    throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
  }

  var normalCompletion = true,
      didErr = false,
      err;
  return {
    s: function s() {
      it = it.call(o);
    },
    n: function n() {
      var step = it.next();
      normalCompletion = step.done;
      return step;
    },
    e: function e(_e2) {
      didErr = true;
      err = _e2;
    },
    f: function f() {
      try {
        if (!normalCompletion && it["return"] != null) it["return"]();
      } finally {
        if (didErr) throw err;
      }
    }
  };
}

module.exports = _createForOfIteratorHelper;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/createSuper.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Reflect$construct = __webpack_require__(/*! @babel/runtime-corejs2/core-js/reflect/construct */ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js");

var getPrototypeOf = __webpack_require__(/*! ./getPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js");

var isNativeReflectConstruct = __webpack_require__(/*! ./isNativeReflectConstruct.js */ "../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js");

var possibleConstructorReturn = __webpack_require__(/*! ./possibleConstructorReturn.js */ "../node_modules/@babel/runtime-corejs2/helpers/possibleConstructorReturn.js");

function _createSuper(Derived) {
  var hasNativeReflectConstruct = isNativeReflectConstruct();
  return function _createSuperInternal() {
    var Super = getPrototypeOf(Derived),
        result;

    if (hasNativeReflectConstruct) {
      var NewTarget = getPrototypeOf(this).constructor;
      result = _Reflect$construct(Super, arguments, NewTarget);
    } else {
      result = Super.apply(this, arguments);
    }

    return possibleConstructorReturn(this, result);
  };
}

module.exports = _createSuper;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

function _defineProperty(obj, key, value) {
  if (key in obj) {
    _Object$defineProperty(obj, key, {
      value: value,
      enumerable: true,
      configurable: true,
      writable: true
    });
  } else {
    obj[key] = value;
  }

  return obj;
}

module.exports = _defineProperty;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/extends.js":
/*!*****************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/extends.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$assign = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/assign */ "../node_modules/@babel/runtime-corejs2/core-js/object/assign.js");

function _extends() {
  module.exports = _extends = _Object$assign || function (target) {
    for (var i = 1; i < arguments.length; i++) {
      var source = arguments[i];

      for (var key in source) {
        if (Object.prototype.hasOwnProperty.call(source, key)) {
          target[key] = source[key];
        }
      }
    }

    return target;
  };

  module.exports.default = module.exports, module.exports.__esModule = true;
  return _extends.apply(this, arguments);
}

module.exports = _extends;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/get.js":
/*!*************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/get.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Reflect$get = __webpack_require__(/*! @babel/runtime-corejs2/core-js/reflect/get */ "../node_modules/@babel/runtime-corejs2/core-js/reflect/get.js");

var _Object$getOwnPropertyDescriptor = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-own-property-descriptor */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js");

var superPropBase = __webpack_require__(/*! ./superPropBase.js */ "../node_modules/@babel/runtime-corejs2/helpers/superPropBase.js");

function _get(target, property, receiver) {
  if (typeof Reflect !== "undefined" && _Reflect$get) {
    module.exports = _get = _Reflect$get;
    module.exports.default = module.exports, module.exports.__esModule = true;
  } else {
    module.exports = _get = function _get(target, property, receiver) {
      var base = superPropBase(target, property);
      if (!base) return;

      var desc = _Object$getOwnPropertyDescriptor(base, property);

      if (desc.get) {
        return desc.get.call(receiver);
      }

      return desc.value;
    };

    module.exports.default = module.exports, module.exports.__esModule = true;
  }

  return _get(target, property, receiver || target);
}

module.exports = _get;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$setPrototypeOf = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/set-prototype-of */ "../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js");

var _Object$getPrototypeOf = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-prototype-of */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-prototype-of.js");

function _getPrototypeOf(o) {
  module.exports = _getPrototypeOf = _Object$setPrototypeOf ? _Object$getPrototypeOf : function _getPrototypeOf(o) {
    return o.__proto__ || _Object$getPrototypeOf(o);
  };
  module.exports.default = module.exports, module.exports.__esModule = true;
  return _getPrototypeOf(o);
}

module.exports = _getPrototypeOf;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js":
/*!******************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/inherits.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$create = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/create */ "../node_modules/@babel/runtime-corejs2/core-js/object/create.js");

var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js");

function _inherits(subClass, superClass) {
  if (typeof superClass !== "function" && superClass !== null) {
    throw new TypeError("Super expression must either be null or a function");
  }

  subClass.prototype = _Object$create(superClass && superClass.prototype, {
    constructor: {
      value: subClass,
      writable: true,
      configurable: true
    }
  });
  if (superClass) setPrototypeOf(subClass, superClass);
}

module.exports = _inherits;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js":
/*!*******************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js ***!
  \*******************************************************************************/
/***/ ((module) => {

function _interopRequireDefault(obj) {
  return obj && obj.__esModule ? obj : {
    "default": obj
  };
}

module.exports = _interopRequireDefault;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js":
/*!********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js ***!
  \********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _typeof = __webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js").default;

var _WeakMap = __webpack_require__(/*! @babel/runtime-corejs2/core-js/weak-map */ "../node_modules/@babel/runtime-corejs2/core-js/weak-map.js");

var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _Object$getOwnPropertyDescriptor = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-own-property-descriptor */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js");

function _getRequireWildcardCache(nodeInterop) {
  if (typeof _WeakMap !== "function") return null;
  var cacheBabelInterop = new _WeakMap();
  var cacheNodeInterop = new _WeakMap();
  return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) {
    return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
  })(nodeInterop);
}

function _interopRequireWildcard(obj, nodeInterop) {
  if (!nodeInterop && obj && obj.__esModule) {
    return obj;
  }

  if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") {
    return {
      "default": obj
    };
  }

  var cache = _getRequireWildcardCache(nodeInterop);

  if (cache && cache.has(obj)) {
    return cache.get(obj);
  }

  var newObj = {};
  var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor;

  for (var key in obj) {
    if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
      var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null;

      if (desc && (desc.get || desc.set)) {
        _Object$defineProperty(newObj, key, desc);
      } else {
        newObj[key] = obj[key];
      }
    }
  }

  newObj["default"] = obj;

  if (cache) {
    cache.set(obj, newObj);
  }

  return newObj;
}

module.exports = _interopRequireWildcard;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js":
/*!**********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js ***!
  \**********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Reflect$construct = __webpack_require__(/*! @babel/runtime-corejs2/core-js/reflect/construct */ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js");

function _isNativeReflectConstruct() {
  if (typeof Reflect === "undefined" || !_Reflect$construct) return false;
  if (_Reflect$construct.sham) return false;
  if (typeof Proxy === "function") return true;

  try {
    Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {}));
    return true;
  } catch (e) {
    return false;
  }
}

module.exports = _isNativeReflectConstruct;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/iterableToArray.js":
/*!*************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/iterableToArray.js ***!
  \*************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Symbol = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol */ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js");

var _Symbol$iterator = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/iterator */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js");

var _Array$from = __webpack_require__(/*! @babel/runtime-corejs2/core-js/array/from */ "../node_modules/@babel/runtime-corejs2/core-js/array/from.js");

function _iterableToArray(iter) {
  if (typeof _Symbol !== "undefined" && iter[_Symbol$iterator] != null || iter["@@iterator"] != null) return _Array$from(iter);
}

module.exports = _iterableToArray;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/iterableToArrayLimit.js":
/*!******************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/iterableToArrayLimit.js ***!
  \******************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Symbol = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol */ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js");

var _Symbol$iterator = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/iterator */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js");

function _iterableToArrayLimit(arr, i) {
  var _i = arr == null ? null : typeof _Symbol !== "undefined" && arr[_Symbol$iterator] || arr["@@iterator"];

  if (_i == null) return;
  var _arr = [];
  var _n = true;
  var _d = false;

  var _s, _e;

  try {
    for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {
      _arr.push(_s.value);

      if (i && _arr.length === i) break;
    }
  } catch (err) {
    _d = true;
    _e = err;
  } finally {
    try {
      if (!_n && _i["return"] != null) _i["return"]();
    } finally {
      if (_d) throw _e;
    }
  }

  return _arr;
}

module.exports = _iterableToArrayLimit;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/nonIterableRest.js":
/*!*************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/nonIterableRest.js ***!
  \*************************************************************************/
/***/ ((module) => {

function _nonIterableRest() {
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
}

module.exports = _nonIterableRest;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/nonIterableSpread.js":
/*!***************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/nonIterableSpread.js ***!
  \***************************************************************************/
/***/ ((module) => {

function _nonIterableSpread() {
  throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
}

module.exports = _nonIterableSpread;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$keys = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js");

var _Object$getOwnPropertySymbols = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-own-property-symbols */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-symbols.js");

var _Object$getOwnPropertyDescriptor = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-own-property-descriptor */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js");

var _Object$getOwnPropertyDescriptors = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-own-property-descriptors */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptors.js");

var _Object$defineProperties = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-properties */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-properties.js");

var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var defineProperty = __webpack_require__(/*! ./defineProperty.js */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js");

function ownKeys(object, enumerableOnly) {
  var keys = _Object$keys(object);

  if (_Object$getOwnPropertySymbols) {
    var symbols = _Object$getOwnPropertySymbols(object);

    if (enumerableOnly) {
      symbols = symbols.filter(function (sym) {
        return _Object$getOwnPropertyDescriptor(object, sym).enumerable;
      });
    }

    keys.push.apply(keys, symbols);
  }

  return keys;
}

function _objectSpread2(target) {
  for (var i = 1; i < arguments.length; i++) {
    var source = arguments[i] != null ? arguments[i] : {};

    if (i % 2) {
      ownKeys(Object(source), true).forEach(function (key) {
        defineProperty(target, key, source[key]);
      });
    } else if (_Object$getOwnPropertyDescriptors) {
      _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source));
    } else {
      ownKeys(Object(source)).forEach(function (key) {
        _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key));
      });
    }
  }

  return target;
}

module.exports = _objectSpread2;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/possibleConstructorReturn.js":
/*!***********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/possibleConstructorReturn.js ***!
  \***********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _typeof = __webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js").default;

var assertThisInitialized = __webpack_require__(/*! ./assertThisInitialized.js */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js");

function _possibleConstructorReturn(self, call) {
  if (call && (_typeof(call) === "object" || typeof call === "function")) {
    return call;
  }

  return assertThisInitialized(self);
}

module.exports = _possibleConstructorReturn;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$setPrototypeOf = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/set-prototype-of */ "../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js");

function _setPrototypeOf(o, p) {
  module.exports = _setPrototypeOf = _Object$setPrototypeOf || function _setPrototypeOf(o, p) {
    o.__proto__ = p;
    return o;
  };

  module.exports.default = module.exports, module.exports.__esModule = true;
  return _setPrototypeOf(o, p);
}

module.exports = _setPrototypeOf;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var arrayWithHoles = __webpack_require__(/*! ./arrayWithHoles.js */ "../node_modules/@babel/runtime-corejs2/helpers/arrayWithHoles.js");

var iterableToArrayLimit = __webpack_require__(/*! ./iterableToArrayLimit.js */ "../node_modules/@babel/runtime-corejs2/helpers/iterableToArrayLimit.js");

var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js");

var nonIterableRest = __webpack_require__(/*! ./nonIterableRest.js */ "../node_modules/@babel/runtime-corejs2/helpers/nonIterableRest.js");

function _slicedToArray(arr, i) {
  return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();
}

module.exports = _slicedToArray;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/superPropBase.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/superPropBase.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var getPrototypeOf = __webpack_require__(/*! ./getPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js");

function _superPropBase(object, property) {
  while (!Object.prototype.hasOwnProperty.call(object, property)) {
    object = getPrototypeOf(object);
    if (object === null) break;
  }

  return object;
}

module.exports = _superPropBase;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/toConsumableArray.js":
/*!***************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/toConsumableArray.js ***!
  \***************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var arrayWithoutHoles = __webpack_require__(/*! ./arrayWithoutHoles.js */ "../node_modules/@babel/runtime-corejs2/helpers/arrayWithoutHoles.js");

var iterableToArray = __webpack_require__(/*! ./iterableToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/iterableToArray.js");

var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js");

var nonIterableSpread = __webpack_require__(/*! ./nonIterableSpread.js */ "../node_modules/@babel/runtime-corejs2/helpers/nonIterableSpread.js");

function _toConsumableArray(arr) {
  return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();
}

module.exports = _toConsumableArray;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js":
/*!****************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/typeof.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Symbol = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol */ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js");

var _Symbol$iterator = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/iterator */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js");

function _typeof(obj) {
  "@babel/helpers - typeof";

  if (typeof _Symbol === "function" && typeof _Symbol$iterator === "symbol") {
    module.exports = _typeof = function _typeof(obj) {
      return typeof obj;
    };

    module.exports.default = module.exports, module.exports.__esModule = true;
  } else {
    module.exports = _typeof = function _typeof(obj) {
      return obj && typeof _Symbol === "function" && obj.constructor === _Symbol && obj !== _Symbol.prototype ? "symbol" : typeof obj;
    };

    module.exports.default = module.exports, module.exports.__esModule = true;
  }

  return _typeof(obj);
}

module.exports = _typeof;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js":
/*!************************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js ***!
  \************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Array$from = __webpack_require__(/*! @babel/runtime-corejs2/core-js/array/from */ "../node_modules/@babel/runtime-corejs2/core-js/array/from.js");

var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/arrayLikeToArray.js");

function _unsupportedIterableToArray(o, minLen) {
  if (!o) return;
  if (typeof o === "string") return arrayLikeToArray(o, minLen);
  var n = Object.prototype.toString.call(o).slice(8, -1);
  if (n === "Object" && o.constructor) n = o.constructor.name;
  if (n === "Map" || n === "Set") return _Array$from(o);
  if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);
}

module.exports = _unsupportedIterableToArray;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime/regenerator/index.js":
/*!***********************************************************!*\
  !*** ../node_modules/@babel/runtime/regenerator/index.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! regenerator-runtime */ "../node_modules/regenerator-runtime/runtime.js");


/***/ }),

/***/ "../assets/dev/js/editor/commands/close.js":
/*!*************************************************!*\
  !*** ../assets/dev/js/editor/commands/close.js ***!
  \*************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Close = void 0;

var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));

var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/asyncToGenerator */ "../node_modules/@babel/runtime-corejs2/helpers/asyncToGenerator.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Close = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Close, _CommandBase);

  var _super = (0, _createSuper2.default)(Close);

  function Close() {
    (0, _classCallCheck2.default)(this, Close);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Close, [{
    key: "validateArgs",
    value: function validateArgs(args) {
      this.requireArgument('id', args);
    }
  }, {
    key: "apply",
    value: function () {
      var _apply = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(args) {
        var id, mode, onClose, document, deferred;
        return _regenerator.default.wrap(function _callee$(_context) {
          while (1) {
            switch (_context.prev = _context.next) {
              case 0:
                id = args.id, mode = args.mode, onClose = args.onClose, document = elementor.documents.get(id); // Already closed.

                if (!('closed' === document.editor.status)) {
                  _context.next = 3;
                  break;
                }

                return _context.abrupt("return", jQuery.Deferred().resolve());

              case 3:
                if (!(!mode && (document.editor.isChanged || document.isDraft()))) {
                  _context.next = 7;
                  break;
                }

                deferred = jQuery.Deferred();
                this.getConfirmDialog(deferred).show();
                return _context.abrupt("return", deferred.promise());

              case 7:
                _context.t0 = mode;
                _context.next = _context.t0 === 'autosave' ? 10 : _context.t0 === 'save' ? 13 : _context.t0 === 'discard' ? 16 : 19;
                break;

              case 10:
                _context.next = 12;
                return $e.run('document/save/auto');

              case 12:
                return _context.abrupt("break", 19);

              case 13:
                _context.next = 15;
                return $e.run('document/save/update');

              case 15:
                return _context.abrupt("break", 19);

              case 16:
                _context.next = 18;
                return $e.run('document/save/discard', {
                  document: document
                });

              case 18:
                return _context.abrupt("break", 19);

              case 19:
                $e.internal('editor/documents/unload', {
                  document: document
                });

                if (!onClose) {
                  _context.next = 23;
                  break;
                }

                _context.next = 23;
                return onClose(document);

              case 23:
                return _context.abrupt("return", jQuery.Deferred().resolve());

              case 24:
              case "end":
                return _context.stop();
            }
          }
        }, _callee, this);
      }));

      function apply(_x) {
        return _apply.apply(this, arguments);
      }

      return apply;
    }()
  }, {
    key: "getConfirmDialog",
    value: function getConfirmDialog(deferred) {
      var _this = this;

      if (this.confirmDialog) {
        return this.confirmDialog;
      }

      this.confirmDialog = elementorCommon.dialogsManager.createWidget('confirm', {
        id: 'elementor-document-save-on-close',
        headerMessage: __('Save Changes', 'elementor'),
        message: __('Would you like to save the changes you\'ve made?', 'elementor'),
        position: {
          my: 'center center',
          at: 'center center'
        },
        strings: {
          confirm: __('Save', 'elementor'),
          cancel: __('Discard', 'elementor')
        },
        onHide: function onHide() {
          // If still not action chosen. use `defer` because onHide is called before onConfirm/onCancel.
          _.defer(function () {
            if (!_this.args.mode) {
              deferred.reject('Close document has been canceled.');
            }
          });
        },
        onConfirm: function onConfirm() {
          _this.args.mode = 'save'; // Re-run with same args.

          $e.run('editor/documents/close', _this.args).then(function () {
            deferred.resolve();
          });
        },
        onCancel: function onCancel() {
          _this.args.mode = 'discard'; // Re-run with same args.

          $e.run('editor/documents/close', _this.args).then(function () {
            deferred.resolve();
          });
        }
      });
      return this.confirmDialog;
    }
  }]);
  return Close;
}(_commandBase.default);

exports.Close = Close;
var _default = Close;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/commands/index.js":
/*!*************************************************!*\
  !*** ../assets/dev/js/editor/commands/index.js ***!
  \*************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "Close", {
  enumerable: true,
  get: function get() {
    return _close.Close;
  }
});

_Object$defineProperty(exports, "Open", {
  enumerable: true,
  get: function get() {
    return _open.Open;
  }
});

_Object$defineProperty(exports, "Preview", {
  enumerable: true,
  get: function get() {
    return _preview.Preview;
  }
});

_Object$defineProperty(exports, "Switch", {
  enumerable: true,
  get: function get() {
    return _switch.Switch;
  }
});

var _close = __webpack_require__(/*! ./close */ "../assets/dev/js/editor/commands/close.js");

var _open = __webpack_require__(/*! ./open */ "../assets/dev/js/editor/commands/open.js");

var _preview = __webpack_require__(/*! ./preview */ "../assets/dev/js/editor/commands/preview.js");

var _switch = __webpack_require__(/*! ./switch */ "../assets/dev/js/editor/commands/switch.js");

/***/ }),

/***/ "../assets/dev/js/editor/commands/internal/attach-preview.js":
/*!*******************************************************************!*\
  !*** ../assets/dev/js/editor/commands/internal/attach-preview.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.AttachPreview = void 0;

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

var _promise = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/promise */ "../node_modules/@babel/runtime-corejs2/core-js/promise.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandInternalBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-internal-base */ "../core/common/assets/js/api/modules/command-internal-base.js"));

var AttachPreview = /*#__PURE__*/function (_CommandInternalBaseB) {
  (0, _inherits2.default)(AttachPreview, _CommandInternalBaseB);

  var _super = (0, _createSuper2.default)(AttachPreview);

  function AttachPreview() {
    (0, _classCallCheck2.default)(this, AttachPreview);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(AttachPreview, [{
    key: "apply",
    value: function apply() {
      var _this = this;

      var document = elementor.documents.getCurrent();
      return $e.data.get('globals/index').then(function () {
        elementor.trigger('globals:loaded');
        return _this.attachDocumentToPreview(document);
      }).then(function () {
        elementor.toggleDocumentCssFiles(document, false);
        elementor.onEditModeSwitched();
        elementor.checkPageStatus();
        elementor.trigger('document:loaded', document);
        return $e.internal('panel/open-default', {
          refresh: true
        });
      });
    }
  }, {
    key: "attachDocumentToPreview",
    value: function attachDocumentToPreview(document) {
      return new _promise.default(function (resolve, reject) {
        // Not yet loaded.
        if (!document) {
          return reject();
        }

        if (!document.config.elements) {
          return resolve();
        }

        document.$element = elementor.$previewContents.find('.elementor-' + document.id);

        if (!document.$element.length) {
          elementor.onPreviewElNotFound();
          return reject();
        }

        document.$element.addClass('elementor-edit-area elementor-edit-mode'); // If not the same document.

        if (document.id !== elementor.config.initial_document.id) {
          elementor.$previewElementorEl.addClass('elementor-embedded-editor');
        }

        elementor.initElements();
        elementor.initPreviewView(document);
        document.container.view = elementor.getPreviewView();
        document.container.model.attributes.elements = elementor.elements;
        elementor.helpers.scrollToView(document.$element);
        document.$element.addClass('elementor-edit-area-active').removeClass('elementor-editor-preview');
        resolve();
      });
    }
  }]);
  return AttachPreview;
}(_commandInternalBase.default);

exports.AttachPreview = AttachPreview;
var _default = AttachPreview;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/commands/internal/index.js":
/*!**********************************************************!*\
  !*** ../assets/dev/js/editor/commands/internal/index.js ***!
  \**********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "AttachPreview", {
  enumerable: true,
  get: function get() {
    return _attachPreview.AttachPreview;
  }
});

_Object$defineProperty(exports, "Load", {
  enumerable: true,
  get: function get() {
    return _load.Load;
  }
});

_Object$defineProperty(exports, "Unload", {
  enumerable: true,
  get: function get() {
    return _unload.Unload;
  }
});

var _attachPreview = __webpack_require__(/*! ./attach-preview */ "../assets/dev/js/editor/commands/internal/attach-preview.js");

var _load = __webpack_require__(/*! ./load */ "../assets/dev/js/editor/commands/internal/load.js");

var _unload = __webpack_require__(/*! ./unload */ "../assets/dev/js/editor/commands/internal/unload.js");

/***/ }),

/***/ "../assets/dev/js/editor/commands/internal/load.js":
/*!*********************************************************!*\
  !*** ../assets/dev/js/editor/commands/internal/load.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Load = void 0;

var _promise = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/promise */ "../node_modules/@babel/runtime-corejs2/core-js/promise.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandInternalBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-internal-base */ "../core/common/assets/js/api/modules/command-internal-base.js"));

var _document = _interopRequireDefault(__webpack_require__(/*! elementor-editor/document */ "../assets/dev/js/editor/document.js"));

var _heartbeat = _interopRequireDefault(__webpack_require__(/*! elementor-editor-utils/heartbeat */ "../assets/dev/js/editor/utils/heartbeat.js"));

var Load = /*#__PURE__*/function (_CommandInternalBase) {
  (0, _inherits2.default)(Load, _CommandInternalBase);

  var _super = (0, _createSuper2.default)(Load);

  function Load() {
    (0, _classCallCheck2.default)(this, Load);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Load, [{
    key: "validateArgs",
    value: function validateArgs() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      this.requireArgument('config', args);
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var config = args.config;

      if (elementorCommon.config.experimentalFeatures.additional_custom_breakpoints) {
        // When the Responsive Optimization experiment is active, the responsive controls are generated on the
        // JS side instead of the PHP.
        config.settings.controls = elementor.generateResponsiveControls(config.settings.controls);
      }

      elementor.config.document = config;
      elementor.setAjax();
      elementor.addWidgetsCache(config.widgets);
      elementor.templates.init();
      var document = new _document.default(config);
      elementor.documents.add(document); // Must set current before create a container.

      elementor.documents.setCurrent(document);
      elementor.settings.page = new elementor.settings.modules.page(config.settings);
      document.container = elementor.settings.page.getEditedView().getContainer(); // Reference container back to document.

      document.container.document = document;
      elementor.heartbeat = new _heartbeat.default(document);
      var isOldPageVersion = elementor.config.document.version && elementor.helpers.compareVersions(elementor.config.document.version, '2.5.0', '<');

      if (!elementor.config.user.introduction.flexbox && isOldPageVersion) {
        elementor.showFlexBoxAttentionDialog();
      }

      if (elementor.loaded) {
        // TODO: Find better solution - Fix issue when globals does not render after saving from kit.
        // The issue is that the css-parser is depends upon cache and cache is not available during this time.
        return $e.data.get('globals/index').then(function () {
          return $e.internal('editor/documents/attach-preview');
        });
      }

      return _promise.default.resolve(document);
    }
  }]);
  return Load;
}(_commandInternalBase.default);

exports.Load = Load;
var _default = Load;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/commands/internal/unload.js":
/*!***********************************************************!*\
  !*** ../assets/dev/js/editor/commands/internal/unload.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Unload = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandInternalBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-internal-base */ "../core/common/assets/js/api/modules/command-internal-base.js"));

var _document = _interopRequireDefault(__webpack_require__(/*! elementor-editor/document */ "../assets/dev/js/editor/document.js"));

var Unload = /*#__PURE__*/function (_CommandInternalBase) {
  (0, _inherits2.default)(Unload, _CommandInternalBase);

  var _super = (0, _createSuper2.default)(Unload);

  function Unload() {
    (0, _classCallCheck2.default)(this, Unload);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Unload, [{
    key: "validateArgs",
    value: function validateArgs() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      this.requireArgumentConstructor('document', _document.default, args);
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var document = args.document;

      if (document.id !== elementor.config.document.id) {
        return;
      }

      elementor.elements = [];
      elementor.saver.stopAutoSave(document);
      elementor.channels.dataEditMode.trigger('switch', 'preview');

      if (document.$element) {
        document.$element.removeClass('elementor-edit-area-active elementor-edit-mode').addClass('elementor-editor-preview');
      }

      elementorCommon.elements.$body.removeClass("elementor-editor-".concat(document.config.type));
      elementor.settings.page.destroy();
      elementor.heartbeat.destroy();
      document.editor.status = 'closed';
      elementor.config.document = {};
      elementor.documents.unsetCurrent();
      elementor.trigger('document:unloaded', document);
    }
  }]);
  return Unload;
}(_commandInternalBase.default);

exports.Unload = Unload;
var _default = Unload;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/commands/open.js":
/*!************************************************!*\
  !*** ../assets/dev/js/editor/commands/open.js ***!
  \************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Open = void 0;

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Open = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Open, _CommandBase);

  var _super = (0, _createSuper2.default)(Open);

  function Open() {
    (0, _classCallCheck2.default)(this, Open);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Open, [{
    key: "validateArgs",
    value: function validateArgs(args) {
      this.requireArgument('id', args);
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var id = args.id,
          currentDocument = elementor.documents.getCurrent(); // Already opened.

      if (currentDocument && id === currentDocument.id) {
        return jQuery.Deferred().resolve();
      } // TODO: move to $e.hooks.ui.


      if (elementor.loaded) {
        elementor.$previewContents.find(".elementor-".concat(id)).addClass('loading');
      }

      return elementor.documents.request(id).then(function (config) {
        elementorCommon.elements.$body.addClass("elementor-editor-".concat(config.type)); // Tell the editor to load the document.

        return $e.internal('editor/documents/load', {
          config: config
        });
      }).always(function () {
        // TODO: move to $e.hooks.ui.
        if (elementor.loaded) {
          elementor.$previewContents.find(".elementor-".concat(id)).removeClass('loading');
        }
      });
    }
  }]);
  return Open;
}(_commandBase.default);

exports.Open = Open;
var _default = Open;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/commands/preview.js":
/*!***************************************************!*\
  !*** ../assets/dev/js/editor/commands/preview.js ***!
  \***************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Preview = void 0;

var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));

var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/asyncToGenerator */ "../node_modules/@babel/runtime-corejs2/helpers/asyncToGenerator.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Preview = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Preview, _CommandBase);

  var _super = (0, _createSuper2.default)(Preview);

  function Preview() {
    (0, _classCallCheck2.default)(this, Preview);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Preview, [{
    key: "validateArgs",
    value: function validateArgs(args) {
      this.requireArgument('id', args);
    } // TODO: Check if blocking is required.

  }, {
    key: "apply",
    value: function () {
      var _apply = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(args) {
        var id, _$e$components$get, footerSaver, document;

        return _regenerator.default.wrap(function _callee$(_context) {
          while (1) {
            switch (_context.prev = _context.next) {
              case 0:
                id = args.id, _$e$components$get = $e.components.get('document/save'), footerSaver = _$e$components$get.footerSaver, document = elementor.documents.get(id);

                if (!document.editor.isChanged) {
                  _context.next = 4;
                  break;
                }

                _context.next = 4;
                return $e.run('document/save/auto', {
                  force: true
                });

              case 4:
                // Open immediately in order to avoid popup blockers.
                footerSaver.previewWindow = open(document.config.urls.wp_preview, "wp-preview-".concat(document.id));

              case 5:
              case "end":
                return _context.stop();
            }
          }
        }, _callee);
      }));

      function apply(_x) {
        return _apply.apply(this, arguments);
      }

      return apply;
    }()
  }]);
  return Preview;
}(_commandBase.default);

exports.Preview = Preview;
var _default = Preview;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/commands/switch.js":
/*!**************************************************!*\
  !*** ../assets/dev/js/editor/commands/switch.js ***!
  \**************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Switch = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Switch = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Switch, _CommandBase);

  var _super = (0, _createSuper2.default)(Switch);

  function Switch() {
    (0, _classCallCheck2.default)(this, Switch);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Switch, [{
    key: "validateArgs",
    value: function validateArgs(args) {
      this.requireArgument('id', args);
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var id = args.id,
          mode = args.mode,
          onClose = args.onClose;
      return $e.run('editor/documents/close', {
        id: elementor.documents.getCurrentId(),
        mode: mode,
        onClose: onClose
      }).then(function () {
        return $e.run('editor/documents/open', {
          id: id
        });
      });
    }
  }]);
  return Switch;
}(_commandBase.default);

exports.Switch = Switch;
var _default = Switch;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/component.js":
/*!********************************************!*\
  !*** ../assets/dev/js/editor/component.js ***!
  \********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _parseInt2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/parse-int */ "../node_modules/@babel/runtime-corejs2/core-js/parse-int.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _componentBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-base */ "../core/common/assets/js/api/modules/component-base.js"));

var _document = _interopRequireDefault(__webpack_require__(/*! ./document */ "../assets/dev/js/editor/document.js"));

var commands = _interopRequireWildcard(__webpack_require__(/*! ./commands/ */ "../assets/dev/js/editor/commands/index.js"));

var internalCommands = _interopRequireWildcard(__webpack_require__(/*! ./commands/internal/ */ "../assets/dev/js/editor/commands/internal/index.js"));

var Component = /*#__PURE__*/function (_ComponentBase) {
  (0, _inherits2.default)(Component, _ComponentBase);

  var _super = (0, _createSuper2.default)(Component);

  function Component() {
    (0, _classCallCheck2.default)(this, Component);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Component, [{
    key: "__construct",
    value: function __construct() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      (0, _get2.default)((0, _getPrototypeOf2.default)(Component.prototype), "__construct", this).call(this, args);
      /**
       * All the documents.
       *
       * @type {Object.<Document>}
       */

      this.documents = {};
      /**
       * Current document.
       *
       * @type {Document}
       */

      this.currentDocument = null;
      this.saveInitialDocumentToCache();
    }
  }, {
    key: "getNamespace",
    value: function getNamespace() {
      return 'editor/documents';
    }
  }, {
    key: "defaultCommands",
    value: function defaultCommands() {
      return this.importCommands(commands);
    }
  }, {
    key: "defaultCommandsInternal",
    value: function defaultCommandsInternal() {
      return this.importCommands(internalCommands);
    }
    /**
     * Function add().
     *
     * Add's document to the manager.
     *
     * @param {Document} document
     *
     * @returns {Document}
     */

  }, {
    key: "add",
    value: function add(document) {
      var id = document.id; // Save the document.

      this.documents[id] = document;
      return document;
    }
    /**
     * Function addDocumentByConfig().
     *
     * Add document to manager by config.
     *
     * @param {{}} config
     *
     * @returns {Document}
     */

  }, {
    key: "addDocumentByConfig",
    value: function addDocumentByConfig(config) {
      return this.add(new _document.default(config));
    }
    /**
     * Function get().
     *
     * Get document by id.
     *
     * @param {number} id
     *
     * @returns {Document|boolean}
     */

  }, {
    key: "get",
    value: function get(id) {
      if (undefined !== this.documents[id]) {
        return this.documents[id];
      }

      return false;
    }
    /**
     * Function getCurrent().
     *
     * Return's current document.
     *
     * @returns {Document}
     */

  }, {
    key: "getCurrent",
    value: function getCurrent() {
      return this.currentDocument;
    }
    /**
     * Function getCurrentId().
     *
     * Return's current document id.
     *
     * @returns {number}
     */

  }, {
    key: "getCurrentId",
    value: function getCurrentId() {
      return this.currentDocument.id;
    }
    /**
     * Function setCurrent().
     *
     * set current document by document instance.
     *
     * @param {Document} document
     */

  }, {
    key: "setCurrent",
    value: function setCurrent(document) {
      if (undefined === this.documents[document.id]) {
        throw Error("The document with id: '".concat(document.id, "' does not exist/loaded"));
      }

      if (this.currentDocument) {
        this.currentDocument.editor.status = 'closed';
      }

      this.currentDocument = this.documents[document.id];
      this.currentDocument.editor.status = 'open';
      elementorCommon.ajax.addRequestConstant('editor_post_id', document.id);
    }
  }, {
    key: "isCurrent",
    value: function isCurrent(id) {
      return (0, _parseInt2.default)(id) === this.currentDocument.id;
    }
  }, {
    key: "unsetCurrent",
    value: function unsetCurrent() {
      this.currentDocument = null;
      elementorCommon.ajax.addRequestConstant('editor_post_id', null);
    }
  }, {
    key: "request",
    value: function request(id) {
      return elementorCommon.ajax.load(this.getRequestArgs(id), true);
    }
  }, {
    key: "invalidateCache",
    value: function invalidateCache(id) {
      elementorCommon.ajax.invalidateCache(this.getRequestArgs(id));
    }
  }, {
    key: "getRequestArgs",
    value: function getRequestArgs(id) {
      id = (0, _parseInt2.default)(id);
      return {
        action: 'get_document_config',
        unique_id: "document-".concat(id),
        data: {
          id: id
        },
        success: function success(config) {
          return config;
        },
        error: function error(data) {
          var message;

          if (_.isString(data)) {
            message = data;
          } else if (data.statusText) {
            message = elementor.createAjaxErrorMessage(data);

            if (0 === data.readyState) {
              message += ' ' + __('Cannot load editor', 'elementor');
            }
          } else if (data[0] && data[0].code) {
            message = __('Server Error', 'elementor') + ' ' + data[0].code;
          }

          alert(message);
        }
      };
    }
    /**
     * Temp: Don't request initial document via ajax.
     * Keep the event `elementor:init` before `preview:loaded`.
     */

  }, {
    key: "saveInitialDocumentToCache",
    value: function saveInitialDocumentToCache() {
      var document = elementor.config.initial_document;
      elementorCommon.ajax.addRequestCache(this.getRequestArgs(document.id), document);
    }
  }]);
  return Component;
}(_componentBase.default);

exports.default = Component;

/***/ }),

/***/ "../assets/dev/js/editor/components/dynamic-tags/control-behavior.js":
/*!***************************************************************************!*\
  !*** ../assets/dev/js/editor/components/dynamic-tags/control-behavior.js ***!
  \***************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

var TagPanelView = __webpack_require__(/*! elementor-dynamic-tags/tag-panel-view */ "../assets/dev/js/editor/components/dynamic-tags/tag-panel-view.js");

module.exports = Marionette.Behavior.extend({
  tagView: null,
  listenerAttached: false,
  initialize: function initialize() {
    if (!this.listenerAttached) {
      this.listenTo(this.view.options.container.settings, 'change:external:__dynamic__', this.onAfterExternalChange);
      this.listenerAttached = true;
    }
  },
  renderTools: function renderTools() {
    var _this = this;

    // If the user has Elementor Pro and the current control has no dynamic tags available, don't generate the dynamic switcher.
    // If the user has the core version only, we do display the dynamic switcher for the promotion.
    if (this.getOption('dynamicSettings').default || elementor.helpers.hasPro() && !this.getOption('tags').length) {
      return;
    }

    var $dynamicSwitcher = jQuery(Marionette.Renderer.render('#tmpl-elementor-control-dynamic-switcher'));
    $dynamicSwitcher.on('click', function (event) {
      return _this.onDynamicSwitcherClick(event);
    });
    this.$el.find('.elementor-control-dynamic-switcher-wrapper').append($dynamicSwitcher);
    this.ui.dynamicSwitcher = $dynamicSwitcher;

    if ('color' === this.view.model.get('type')) {
      if (this.view.colorPicker) {
        this.moveDynamicSwitcherToColorPicker();
      } else {
        setTimeout(function () {
          return _this.moveDynamicSwitcherToColorPicker();
        });
      }
    } // Add a Tipsy Tooltip to the Dynamic Switcher


    this.ui.dynamicSwitcher.tipsy({
      title: function title() {
        return this.getAttribute('data-tooltip');
      },
      gravity: 's'
    });
  },
  moveDynamicSwitcherToColorPicker: function moveDynamicSwitcherToColorPicker() {
    var $colorPickerToolsContainer = this.view.colorPicker.$pickerToolsContainer;
    this.ui.dynamicSwitcher.removeClass('elementor-control-unit-1').addClass('e-control-tool');
    var $eyedropper = $colorPickerToolsContainer.find('.elementor-control-element-color-picker');

    if ($eyedropper.length) {
      this.ui.dynamicSwitcher.insertBefore($eyedropper);
    } else {
      $colorPickerToolsContainer.append(this.ui.dynamicSwitcher);
    }
  },
  toggleDynamicClass: function toggleDynamicClass() {
    this.$el.toggleClass('elementor-control-dynamic-value', this.isDynamicMode());
  },
  isDynamicMode: function isDynamicMode() {
    var dynamicSettings = this.view.container.settings.get('__dynamic__');
    return !!(dynamicSettings && dynamicSettings[this.view.model.get('name')]);
  },
  createTagsList: function createTagsList() {
    var tags = _.groupBy(this.getOption('tags'), 'group'),
        groups = elementor.dynamicTags.getConfig('groups'),
        $tagsList = this.ui.tagsList = jQuery('<div>', {
      class: 'elementor-tags-list'
    }),
        $tagsListInner = jQuery('<div>', {
      class: 'elementor-tags-list__inner'
    });

    $tagsList.append($tagsListInner);
    jQuery.each(groups, function (groupName) {
      var groupTags = tags[groupName];

      if (!groupTags) {
        return;
      }

      var group = this,
          $groupTitle = jQuery('<div>', {
        class: 'elementor-tags-list__group-title'
      }).text(group.title);
      $tagsListInner.append($groupTitle);
      groupTags.forEach(function (tag) {
        var $tag = jQuery('<div>', {
          class: 'elementor-tags-list__item'
        });
        $tag.text(tag.title).attr('data-tag-name', tag.name);
        $tagsListInner.append($tag);
      });
    }); // Create and inject pro dynamic teaser template if Pro is not installed

    if (!elementor.helpers.hasPro() && (0, _keys.default)(tags).length) {
      var proTeaser = Marionette.Renderer.render('#tmpl-elementor-dynamic-tags-promo');
      $tagsListInner.append(proTeaser);
    }

    $tagsListInner.on('click', '.elementor-tags-list__item', this.onTagsListItemClick.bind(this));
    elementorCommon.elements.$body.append($tagsList);
  },
  getTagsList: function getTagsList() {
    if (!this.ui.tagsList) {
      this.createTagsList();
    }

    return this.ui.tagsList;
  },
  toggleTagsList: function toggleTagsList() {
    var $tagsList = this.getTagsList();

    if ($tagsList.is(':visible')) {
      $tagsList.hide();
      return;
    }

    var direction = elementorCommon.config.isRTL ? 'left' : 'right';
    $tagsList.show().position({
      my: "".concat(direction, " top"),
      at: "".concat(direction, " bottom+5"),
      of: this.ui.dynamicSwitcher
    });
  },
  setTagView: function setTagView(id, name, settings) {
    if (this.tagView) {
      this.tagView.destroy();
    }

    var tagView = this.tagView = new TagPanelView({
      id: id,
      name: name,
      settings: settings,
      controlName: this.view.model.get('name'),
      dynamicSettings: this.getOption('dynamicSettings')
    }),
        elementContainer = this.view.options.container,
        tagViewLabel = elementContainer.controls[tagView.options.controlName].label;
    tagView.options.container = new elementorModules.editor.Container({
      type: 'dynamic',
      id: id,
      model: tagView.model,
      settings: tagView.model,
      view: tagView,
      parent: elementContainer,
      label: elementContainer.label + ' ' + tagViewLabel,
      controls: tagView.model.options.controls,
      renderer: elementContainer
    });
    tagView.render();
    this.$el.find('.elementor-control-tag-area').after(tagView.el);
    this.listenTo(tagView, 'remove', this.onTagViewRemove.bind(this));
  },
  setDefaultTagView: function setDefaultTagView() {
    var tagData = elementor.dynamicTags.tagTextToTagData(this.getDynamicValue());
    this.setTagView(tagData.id, tagData.name, tagData.settings);
  },
  tagViewToTagText: function tagViewToTagText() {
    var tagView = this.tagView;
    return elementor.dynamicTags.tagDataToTagText(tagView.getOption('id'), tagView.getOption('name'), tagView.model);
  },
  getDynamicValue: function getDynamicValue() {
    return this.view.container.dynamic.get(this.view.model.get('name'));
  },
  destroyTagView: function destroyTagView() {
    if (this.tagView) {
      this.tagView.destroy();
      this.tagView = null;
    }
  },
  showPromotion: function showPromotion() {
    var message = __('Create more personalized and dynamic sites by populating data from various sources with dozens of dynamic tags to choose from.', 'elementor');

    elementor.promotion.showDialog({
      headerMessage: __('Dynamic Content', 'elementor'),
      message: message,
      top: '-10',
      element: this.ui.dynamicSwitcher,
      actionURL: elementor.config.dynamicPromotionURL
    });
  },
  onRender: function onRender() {
    this.$el.addClass('elementor-control-dynamic');
    this.renderTools();
    this.toggleDynamicClass();

    if (this.isDynamicMode()) {
      this.setDefaultTagView();
    }
  },
  onDynamicSwitcherClick: function onDynamicSwitcherClick(event) {
    event.stopPropagation();

    if (this.getOption('tags').length) {
      this.toggleTagsList();
    } else {
      this.showPromotion();
    }
  },
  onTagsListItemClick: function onTagsListItemClick(event) {
    var $tag = jQuery(event.currentTarget);
    this.setTagView(elementorCommon.helpers.getUniqueId(), $tag.data('tagName'), {}); // If an element has an active global value, disable it before applying the dynamic value.

    if (this.view.getGlobalKey()) {
      this.view.triggerMethod('unset:global:value');
    }

    if (this.isDynamicMode()) {
      $e.run('document/dynamic/settings', {
        container: this.view.options.container,
        settings: (0, _defineProperty2.default)({}, this.view.model.get('name'), this.tagViewToTagText())
      });
    } else {
      $e.run('document/dynamic/enable', {
        container: this.view.options.container,
        settings: (0, _defineProperty2.default)({}, this.view.model.get('name'), this.tagViewToTagText())
      });
    }

    this.toggleDynamicClass();
    this.toggleTagsList();

    if (this.tagView.getTagConfig().settings_required) {
      this.tagView.showSettingsPopup();
    }
  },
  onTagViewRemove: function onTagViewRemove() {
    $e.run('document/dynamic/disable', {
      container: this.view.options.container,
      settings: (0, _defineProperty2.default)({}, this.view.model.get('name'), this.tagViewToTagText())
    });
    this.toggleDynamicClass();
  },
  onAfterExternalChange: function onAfterExternalChange() {
    this.destroyTagView();

    if (this.isDynamicMode()) {
      this.setDefaultTagView();
    }

    this.toggleDynamicClass();
  },
  onDestroy: function onDestroy() {
    this.destroyTagView();

    if (this.ui.tagsList) {
      this.ui.tagsList.remove();
    }
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/components/dynamic-tags/manager.js":
/*!******************************************************************!*\
  !*** ../assets/dev/js/editor/components/dynamic-tags/manager.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

__webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");

__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

__webpack_require__(/*! core-js/modules/es6.regexp.match.js */ "../node_modules/core-js/modules/es6.regexp.match.js");

var _stringify = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/json/stringify */ "../node_modules/@babel/runtime-corejs2/core-js/json/stringify.js"));

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

module.exports = elementorModules.Module.extend({
  CACHE_KEY_NOT_FOUND_ERROR: 'Cache key not found',
  tags: {
    Base: __webpack_require__(/*! elementor-dynamic-tags/tag */ "../assets/dev/js/editor/components/dynamic-tags/tag.js")
  },
  cache: {},
  cacheRequests: {},
  cacheCallbacks: [],
  addCacheRequest: function addCacheRequest(tag) {
    this.cacheRequests[this.createCacheKey(tag)] = true;
  },
  createCacheKey: function createCacheKey(tag) {
    return btoa(tag.getOption('name')) + '-' + btoa(encodeURIComponent((0, _stringify.default)(tag.model)));
  },
  loadTagDataFromCache: function loadTagDataFromCache(tag) {
    var cacheKey = this.createCacheKey(tag);

    if (undefined !== this.cache[cacheKey]) {
      return this.cache[cacheKey];
    }

    if (!this.cacheRequests[cacheKey]) {
      this.addCacheRequest(tag);
    }
  },
  loadCacheRequests: function loadCacheRequests() {
    var cache = this.cache,
        cacheRequests = this.cacheRequests,
        cacheCallbacks = this.cacheCallbacks;
    this.cacheRequests = {};
    this.cacheCallbacks = [];
    elementorCommon.ajax.addRequest('render_tags', {
      data: {
        post_id: elementor.config.document.id,
        tags: (0, _keys.default)(cacheRequests)
      },
      success: function success(data) {
        jQuery.extend(cache, data);
        cacheCallbacks.forEach(function (callback) {
          callback();
        });
      }
    });
  },
  refreshCacheFromServer: function refreshCacheFromServer(callback) {
    this.cacheCallbacks.push(callback);
    this.loadCacheRequests();
  },
  getConfig: function getConfig(key) {
    return this.getItems(elementor.config.dynamicTags, key);
  },
  parseTagsText: function parseTagsText(text, settings, parseCallback) {
    var self = this;

    if ('object' === settings.returnType) {
      return self.parseTagText(text, settings, parseCallback);
    }

    return text.replace(/\[elementor-tag[^\]]+]/g, function (tagText) {
      return self.parseTagText(tagText, settings, parseCallback);
    });
  },
  parseTagText: function parseTagText(tagText, settings, parseCallback) {
    var tagData = this.tagTextToTagData(tagText);

    if (!tagData) {
      if ('object' === settings.returnType) {
        return {};
      }

      return '';
    }

    return parseCallback(tagData.id, tagData.name, tagData.settings);
  },
  tagTextToTagData: function tagTextToTagData(tagText) {
    var tagIDMatch = tagText.match(/id="(.*?(?="))"/),
        tagNameMatch = tagText.match(/name="(.*?(?="))"/),
        tagSettingsMatch = tagText.match(/settings="(.*?(?="]))/);

    if (!tagIDMatch || !tagNameMatch || !tagSettingsMatch) {
      return false;
    }

    return {
      id: tagIDMatch[1],
      name: tagNameMatch[1],
      settings: JSON.parse(decodeURIComponent(tagSettingsMatch[1]))
    };
  },
  createTag: function createTag(tagID, tagName, tagSettings) {
    var tagConfig = this.getConfig('tags.' + tagName);

    if (!tagConfig) {
      return;
    }

    var TagClass = this.tags[tagName] || this.tags.Base,
        model = new elementorModules.editor.elements.models.BaseSettings(tagSettings, {
      controls: tagConfig.controls
    });
    return new TagClass({
      id: tagID,
      name: tagName,
      model: model
    });
  },
  getTagDataContent: function getTagDataContent(tagID, tagName, tagSettings) {
    var tag = this.createTag(tagID, tagName, tagSettings);

    if (!tag) {
      return;
    }

    return tag.getContent();
  },
  tagDataToTagText: function tagDataToTagText(tagID, tagName, tagSettings) {
    tagSettings = encodeURIComponent((0, _stringify.default)(tagSettings && tagSettings.toJSON({
      remove: ['default']
    }) || {}));
    return '[elementor-tag id="' + tagID + '" name="' + tagName + '" settings="' + tagSettings + '"]';
  },
  tagContainerToTagText: function tagContainerToTagText(
  /**Container*/
  container) {
    return elementor.dynamicTags.tagDataToTagText(container.view.getOption('id'), container.view.getOption('name'), container.view.model);
  },
  cleanCache: function cleanCache() {
    this.cache = {};
  },
  onInit: function onInit() {
    this.loadCacheRequests = _.debounce(this.loadCacheRequests, 300);
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/components/dynamic-tags/tag-controls-stack-empty.js":
/*!***********************************************************************************!*\
  !*** ../assets/dev/js/editor/components/dynamic-tags/tag-controls-stack-empty.js ***!
  \***********************************************************************************/
/***/ ((module) => {

"use strict";


module.exports = Marionette.ItemView.extend({
  className: 'elementor-tag-controls-stack-empty',
  template: '#tmpl-elementor-tag-controls-stack-empty'
});

/***/ }),

/***/ "../assets/dev/js/editor/components/dynamic-tags/tag-controls-stack.js":
/*!*****************************************************************************!*\
  !*** ../assets/dev/js/editor/components/dynamic-tags/tag-controls-stack.js ***!
  \*****************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var EmptyView = __webpack_require__(/*! elementor-dynamic-tags/tag-controls-stack-empty */ "../assets/dev/js/editor/components/dynamic-tags/tag-controls-stack-empty.js");

module.exports = elementorModules.editor.views.ControlsStack.extend({
  activeTab: 'content',
  template: _.noop,
  emptyView: EmptyView,
  isEmpty: function isEmpty() {
    // Ignore the section control
    return this.collection.length < 2;
  },
  childViewOptions: function childViewOptions() {
    return {
      container: this.options.container
    };
  },
  getNamespaceArray: function getNamespaceArray() {
    var currentPageView = elementor.getPanelView().getCurrentPageView(),
        eventNamespace = currentPageView.getNamespaceArray();
    eventNamespace.push(currentPageView.activeSection);
    eventNamespace.push(this.getOption('controlName'));
    eventNamespace.push(this.getOption('name'));
    return eventNamespace;
  },
  onRenderTemplate: function onRenderTemplate() {
    this.activateFirstSection();
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/components/dynamic-tags/tag-panel-view.js":
/*!*************************************************************************!*\
  !*** ../assets/dev/js/editor/components/dynamic-tags/tag-panel-view.js ***!
  \*************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));

var TagControlsStack = __webpack_require__(/*! elementor-dynamic-tags/tag-controls-stack */ "../assets/dev/js/editor/components/dynamic-tags/tag-controls-stack.js");

module.exports = Marionette.ItemView.extend({
  className: 'elementor-dynamic-cover elementor-input-style',
  tagControlsStack: null,
  templateHelpers: function templateHelpers() {
    var helpers = {};

    if (this.model) {
      helpers.controls = this.model.options.controls;
    }

    return helpers;
  },
  ui: {
    remove: '.elementor-dynamic-cover__remove'
  },
  events: function events() {
    var events = {
      'click @ui.remove': 'onRemoveClick'
    };

    if (this.hasSettings()) {
      events.click = 'onClick';
    }

    return events;
  },
  getTemplate: function getTemplate() {
    var config = this.getTagConfig(),
        templateFunction = Marionette.TemplateCache.get('#tmpl-elementor-control-dynamic-cover'),
        renderedTemplate = Marionette.Renderer.render(templateFunction, {
      hasSettings: this.hasSettings(),
      isRemovable: !this.getOption('dynamicSettings').default,
      title: config.title,
      content: config.panel_template
    });
    return Marionette.TemplateCache.prototype.compileTemplate(renderedTemplate.trim());
  },
  getTagConfig: function getTagConfig() {
    return elementor.dynamicTags.getConfig('tags.' + this.getOption('name'));
  },
  initSettingsPopup: function initSettingsPopup() {
    var settingsPopupOptions = {
      className: 'elementor-tag-settings-popup',
      position: {
        my: 'left top+5',
        at: 'left bottom',
        of: this.$el,
        autoRefresh: true
      },
      hide: {
        ignore: '.select2-container'
      }
    };
    var settingsPopup = elementorCommon.dialogsManager.createWidget('buttons', settingsPopupOptions);

    this.getSettingsPopup = function () {
      return settingsPopup;
    };
  },
  hasSettings: function hasSettings() {
    return !!(0, _values.default)(this.getTagConfig().controls).length;
  },
  showSettingsPopup: function showSettingsPopup() {
    if (!this.tagControlsStack) {
      this.initTagControlsStack();
    }

    var settingsPopup = this.getSettingsPopup();

    if (settingsPopup.isVisible()) {
      return;
    }

    settingsPopup.show();
  },
  initTagControlsStack: function initTagControlsStack() {
    this.tagControlsStack = new TagControlsStack({
      model: this.model,
      controls: this.model.controls,
      name: this.options.name,
      controlName: this.options.controlName,
      container: this.options.container,
      el: this.getSettingsPopup().getElements('message')[0]
    });
    this.tagControlsStack.render();
  },
  initModel: function initModel() {
    this.model = new elementorModules.editor.elements.models.BaseSettings(this.getOption('settings'), {
      controls: this.getTagConfig().controls
    });
  },
  initialize: function initialize() {
    // The `model` should always be available.
    this.initModel();

    if (!this.hasSettings()) {
      return;
    }

    this.initSettingsPopup();
    this.listenTo(this.model, 'change', this.render);
  },
  onClick: function onClick() {
    this.showSettingsPopup();
  },
  onRemoveClick: function onRemoveClick(event) {
    event.stopPropagation();
    this.destroy();
    this.trigger('remove');
  },
  onDestroy: function onDestroy() {
    if (this.hasSettings()) {
      this.getSettingsPopup().destroy();
    }

    if (this.tagControlsStack) {
      this.tagControlsStack.destroy();
    }
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/components/dynamic-tags/tag.js":
/*!**************************************************************!*\
  !*** ../assets/dev/js/editor/components/dynamic-tags/tag.js ***!
  \**************************************************************/
/***/ ((module) => {

"use strict";


module.exports = Marionette.ItemView.extend({
  hasTemplate: true,
  tagName: 'span',
  className: function className() {
    return 'elementor-tag';
  },
  getTemplate: function getTemplate() {
    if (!this.hasTemplate) {
      return false;
    }

    return Marionette.TemplateCache.get('#tmpl-elementor-tag-' + this.getOption('name') + '-content');
  },
  initialize: function initialize() {
    try {
      this.getTemplate();
    } catch (e) {
      this.hasTemplate = false;
    }
  },
  getConfig: function getConfig(key) {
    var config = elementor.dynamicTags.getConfig('tags.' + this.getOption('name'));

    if (key) {
      return config[key];
    }

    return config;
  },
  getContent: function getContent() {
    var contentType = this.getConfig('content_type'),
        data;

    if (!this.hasTemplate) {
      data = elementor.dynamicTags.loadTagDataFromCache(this);

      if (undefined === data) {
        throw new Error(elementor.dynamicTags.CACHE_KEY_NOT_FOUND_ERROR);
      }
    }

    if ('ui' === contentType) {
      this.render();

      if (this.hasTemplate) {
        return this.el.outerHTML;
      }

      if (this.getConfig('wrapped_tag')) {
        data = jQuery(data).html();
      }

      this.$el.html(data);
    }

    return data;
  },
  onRender: function onRender() {
    this.el.id = 'elementor-tag-' + this.getOption('id');
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/components/hotkeys/component.js":
/*!***************************************************************!*\
  !*** ../assets/dev/js/editor/components/hotkeys/component.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _componentModalBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-modal-base */ "../core/common/assets/js/api/modules/component-modal-base.js"));

var _modalLayout = _interopRequireDefault(__webpack_require__(/*! ./modal-layout */ "../assets/dev/js/editor/components/hotkeys/modal-layout.js"));

var Component = /*#__PURE__*/function (_ComponentModalBase) {
  (0, _inherits2.default)(Component, _ComponentModalBase);

  var _super = (0, _createSuper2.default)(Component);

  function Component() {
    (0, _classCallCheck2.default)(this, Component);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Component, [{
    key: "getNamespace",
    value: function getNamespace() {
      return 'shortcuts';
    }
  }, {
    key: "defaultShortcuts",
    value: function defaultShortcuts() {
      return {
        '': {
          keys: 'ctrl+?, shift+?',
          exclude: ['input']
        }
      };
    }
  }, {
    key: "getModalLayout",
    value: function getModalLayout() {
      return _modalLayout.default;
    }
  }]);
  return Component;
}(_componentModalBase.default);

exports.default = Component;

/***/ }),

/***/ "../assets/dev/js/editor/components/hotkeys/hotkeys.js":
/*!*************************************************************!*\
  !*** ../assets/dev/js/editor/components/hotkeys/hotkeys.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _component = _interopRequireDefault(__webpack_require__(/*! ./component */ "../assets/dev/js/editor/components/hotkeys/component.js"));

var _default = /*#__PURE__*/function (_elementorModules$Mod) {
  (0, _inherits2.default)(_default, _elementorModules$Mod);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "onInit",
    value: function onInit() {
      $e.components.register(new _component.default({
        manager: this
      }));
    }
  }]);
  return _default;
}(elementorModules.Module);

exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/components/hotkeys/modal-content.js":
/*!*******************************************************************!*\
  !*** ../assets/dev/js/editor/components/hotkeys/modal-content.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _environment = _interopRequireDefault(__webpack_require__(/*! elementor-common/utils/environment */ "../core/common/assets/js/utils/environment.js"));

var _default = /*#__PURE__*/function (_Marionette$LayoutVie) {
  (0, _inherits2.default)(_default, _Marionette$LayoutVie);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "id",
    value: function id() {
      return 'elementor-hotkeys';
    }
  }, {
    key: "templateHelpers",
    value: function templateHelpers() {
      return {
        environment: _environment.default
      };
    }
  }, {
    key: "getTemplate",
    value: function getTemplate() {
      return '#tmpl-elementor-hotkeys';
    }
  }]);
  return _default;
}(Marionette.LayoutView);

exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/components/hotkeys/modal-layout.js":
/*!******************************************************************!*\
  !*** ../assets/dev/js/editor/components/hotkeys/modal-layout.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _modalContent = _interopRequireDefault(__webpack_require__(/*! ./modal-content */ "../assets/dev/js/editor/components/hotkeys/modal-content.js"));

var _default = /*#__PURE__*/function (_elementorModules$com) {
  (0, _inherits2.default)(_default, _elementorModules$com);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "getModalOptions",
    value: function getModalOptions() {
      return {
        id: 'elementor-hotkeys__modal'
      };
    }
  }, {
    key: "getLogoOptions",
    value: function getLogoOptions() {
      return {
        title: __('Keyboard Shortcuts', 'elementor')
      };
    }
  }, {
    key: "initialize",
    value: function initialize() {
      var _get2;

      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
        args[_key] = arguments[_key];
      }

      (_get2 = (0, _get3.default)((0, _getPrototypeOf2.default)(_default.prototype), "initialize", this)).call.apply(_get2, [this].concat(args));

      this.showLogo();
      this.showContentView();
    }
  }, {
    key: "showContentView",
    value: function showContentView() {
      this.modalContent.show(new _modalContent.default());
    }
  }]);
  return _default;
}(elementorModules.common.views.modal.Layout);

exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/components/icons-manager/classes/icon-library.js":
/*!********************************************************************************!*\
  !*** ../assets/dev/js/editor/components/icons-manager/classes/icon-library.js ***!
  \********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

__webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");

__webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");

var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _default = /*#__PURE__*/function () {
  function _default() {
    var _this = this;

    (0, _classCallCheck2.default)(this, _default);
    (0, _defineProperty2.default)(this, "loaded", {});
    (0, _defineProperty2.default)(this, "notifyCallback", null);
    (0, _defineProperty2.default)(this, "fetchIcons", function (library) {
      fetch(library.fetchJson, {
        mode: 'cors'
      }).then(function (res) {
        return res.json();
      }).then(function (json) {
        library.icons = json.icons;
        return _this.normalizeIconList(library);
      });
    });
    (0, _defineProperty2.default)(this, "runCallback", function (library) {
      if ('function' !== typeof _this.notifyCallback) {
        return library;
      }

      return _this.notifyCallback(library);
    });
    (0, _defineProperty2.default)(this, "initIconType", function (libraryConfig, callback) {
      _this.notifyCallback = callback;
      var store = elementor.iconManager.store;

      if (_this.loaded[libraryConfig.name]) {
        libraryConfig.icons = store.getIcons(libraryConfig);
        return _this.runCallback(libraryConfig);
      } // Enqueue CSS


      if (libraryConfig.enqueue) {
        libraryConfig.enqueue.forEach(function (assetURL) {
          elementor.helpers.enqueueEditorStylesheet(assetURL);
        });
      }

      if (libraryConfig.url) {
        elementor.helpers.enqueueEditorStylesheet(libraryConfig.url);
      } //already saved an stored


      if (store.isValid(libraryConfig)) {
        var data = store.get(store.getKey(libraryConfig));
        return _this.normalizeIconList(data);
      } // comes with icons


      if (libraryConfig.icons && libraryConfig.icons.length) {
        return _this.normalizeIconList(libraryConfig);
      } // Get icons from via ajax


      if (libraryConfig.fetchJson) {
        return _this.fetchIcons(libraryConfig);
      } // @todo: error handling

    });
  }

  (0, _createClass2.default)(_default, [{
    key: "normalizeIconList",
    value: function normalizeIconList(library) {
      var icons = {};
      var name;
      jQuery.each(library.icons, function (index, icon) {
        name = icon;

        if ('object' === (0, _typeof2.default)(name)) {
          name = (0, _entries.default)(name)[0][0];
        }

        if (!name) {
          return;
        }

        icons[name] = {
          prefix: library.prefix,
          selector: library.prefix + name.trim(':'),
          name: elementorCommon.helpers.upperCaseWords(name).trim(':').split('-').join(' '),
          filter: name.trim(':'),
          displayPrefix: library.displayPrefix || library.prefix.replace('-', '')
        };
      });

      if ((0, _keys.default)(icons).length) {
        library.icons = icons;
        this.loaded[library.name] = true;
        elementor.iconManager.store.save(library);
        this.runCallback(library);
      }
    }
  }]);
  return _default;
}();

exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/components/icons-manager/classes/store.js":
/*!*************************************************************************!*\
  !*** ../assets/dev/js/editor/components/icons-manager/classes/store.js ***!
  \*************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var Store = /*#__PURE__*/function () {
  function Store() {
    (0, _classCallCheck2.default)(this, Store);
  }

  (0, _createClass2.default)(Store, [{
    key: "save",
    value: function save(library) {
      elementorCommon.storage.set(Store.getKey(library), library);
    }
  }, {
    key: "getIcons",
    value: function getIcons(library) {
      var data = this.get(Store.getKey(library));

      if (data && data.icons) {
        return data.icons;
      }

      return false;
    }
  }, {
    key: "get",
    value: function get(key) {
      return elementorCommon.storage.get(key);
    }
  }, {
    key: "isValid",
    value: function isValid(library) {
      var saved = this.get(Store.getKey(library));

      if (!saved) {
        return false;
      }

      if (saved.ver !== library.ver) {
        // @todo: delete from localStorage if version is invalid
        return false;
      }

      return saved.icons && saved.icons.length;
    }
  }], [{
    key: "getKey",
    value: function getKey(library) {
      var name = library.name ? library.name : library;
      return "elementor_".concat(name, "_icons");
    }
  }]);
  return Store;
}();

var _default = Store;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/components/icons-manager/components/icon-list.js":
/*!********************************************************************************!*\
  !*** ../assets/dev/js/editor/components/icons-manager/components/icon-list.js ***!
  \********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es6.array.slice.js */ "../node_modules/core-js/modules/es6.array.slice.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var LazyIconList = /*#__PURE__*/function (_Component) {
  (0, _inherits2.default)(LazyIconList, _Component);

  var _super = (0, _createSuper2.default)(LazyIconList);

  function LazyIconList() {
    var _this;

    (0, _classCallCheck2.default)(this, LazyIconList);

    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }

    _this = _super.call.apply(_super, [this].concat(args));
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "state", {
      itemSize: {
        width: 0,
        height: 0
      },
      wrapperSize: {
        width: 0,
        height: 0
      },
      firstRowInView: 0
    });
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "selectors", {
      item: '.elementor-icons-manager__tab__item',
      wrapper: 'elementor-icons-manager__tab__wrapper'
    });
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "attachScrollListener", function () {
      var element = document.getElementById(_this.selectors.wrapper);

      if (element) {
        element.addEventListener('scroll', _this.handleScroll);
      }
    });
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "maybeMeasureItem", function () {
      if (_this.state.itemSize.width) {
        return;
      } // CSS Item Padding


      var itemPadding = 20,
          wrapper = document.getElementById(_this.selectors.wrapper),
          testElement = document.querySelector(_this.selectors.item);

      if (!testElement) {
        return;
      }

      var newState = {
        itemSize: {
          width: testElement.offsetWidth + itemPadding,
          height: testElement.offsetHeight + itemPadding
        },
        wrapperSize: {
          width: wrapper.offsetWidth,
          height: wrapper.clientHeight
        }
      };
      return _this.setState(newState, function () {
        _this.maybeScrollToSelected();
      });
    });
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "maybeScrollToSelected", function () {
      if (!_this.hasSelected()) {
        return;
      }

      var selectedIndex = _this.props.selectedIndex,
          _this$state = _this.state,
          wrapperSize = _this$state.wrapperSize,
          itemSize = _this$state.itemSize,
          itemsInRow = Math.floor(wrapperSize.width / itemSize.width),
          selectedItemRow = Math.ceil(selectedIndex / itemsInRow) - 1,
          scrollTop = selectedItemRow * itemSize.height;
      setTimeout(function () {
        _this.props.parentRef.current.scrollTo({
          top: scrollTop,
          left: 0,
          behavior: 'auto'
        });
      }, 0);
    });
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "handleScroll", function () {
      _this.clearDebounceScrollCallback();

      _this._debounce = setTimeout(function () {
        var element = document.getElementById(_this.selectors.wrapper);
        var itemSize = _this.state.itemSize;

        _this.setState({
          firstRowInView: Math.floor(element.scrollTop / itemSize.height)
        });
      }, 10);
    });
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "render", function () {
      var _this$state2 = _this.state,
          itemSize = _this$state2.itemSize,
          wrapperSize = _this$state2.wrapperSize;
      var firstRowInView = _this.state.firstRowInView;

      if (!itemSize.width) {
        return _this.renderFirstElementForMeasurement();
      }

      var items = _this.props.items,
          itemsInRow = Math.floor(wrapperSize.width / itemSize.width),
          totalRows = Math.ceil(items.length / itemsInRow),
          spareRows = 4;
      var rowsInView = Math.ceil(wrapperSize.height / itemSize.height) + spareRows;

      if (rowsInView > totalRows) {
        rowsInView = totalRows;
      } // Prevent scroll overflow


      if (firstRowInView > totalRows - rowsInView) {
        firstRowInView = totalRows - rowsInView;
      }

      var tailRows = totalRows - firstRowInView - rowsInView,
          firstItemIndexInWindow = firstRowInView * itemsInRow,
          lastItemIndexInWindow = (firstRowInView + rowsInView) * itemsInRow - 1,
          itemsInView = items.slice(firstItemIndexInWindow, lastItemIndexInWindow + 1),
          offsetStyle = {
        height: "".concat(firstRowInView * itemSize.height, "px")
      },
          tailStyle = {
        height: "".concat(tailRows * itemSize.height, "px")
      };
      return /*#__PURE__*/_react.default.createElement(_react.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
        className: 'elementor-icons-manager__tab__content__offset',
        style: offsetStyle
      }), /*#__PURE__*/_react.default.createElement("div", {
        id: 'elementor-icons-manager__tab__content'
      }, itemsInView), /*#__PURE__*/_react.default.createElement("div", {
        className: 'elementor-icons-manager__tab__content__tail',
        style: tailStyle
      }));
    });
    return _this;
  }

  (0, _createClass2.default)(LazyIconList, [{
    key: "componentDidMount",
    value: function componentDidMount() {
      this.attachScrollListener();
      this.maybeMeasureItem();
    }
  }, {
    key: "componentWillUnmount",
    value: function componentWillUnmount() {
      this.clearDebounceScrollCallback();
      var element = document.getElementById(this.selectors.wrapper);

      if (element) {
        element.removeEventListener('scroll', this.handleScroll);
      }
    }
  }, {
    key: "clearDebounceScrollCallback",
    value: function clearDebounceScrollCallback() {
      clearTimeout(this._debounce);
    }
  }, {
    key: "renderFirstElementForMeasurement",
    value: function renderFirstElementForMeasurement() {
      return /*#__PURE__*/_react.default.createElement("div", {
        id: 'elementor-icons-manager__tab__content'
      }, this.props.items[0]);
    }
  }, {
    key: "hasSelected",
    value: function hasSelected() {
      return -1 !== this.props.selectedIndex;
    }
  }]);
  return LazyIconList;
}(_react.Component);

var _default = LazyIconList;
exports.default = _default;
LazyIconList.propTypes = {
  items: _propTypes.default.array,
  selectedIndex: _propTypes.default.number,
  parentRef: _propTypes.default.any
};

/***/ }),

/***/ "../assets/dev/js/editor/components/icons-manager/components/icon-manager.js":
/*!***********************************************************************************!*\
  !*** ../assets/dev/js/editor/components/icons-manager/components/icon-manager.js ***!
  \***********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.renderIconManager = exports.default = void 0;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));

var _reactDom = __webpack_require__(/*! react-dom */ "react-dom");

var _tab = _interopRequireDefault(__webpack_require__(/*! ./tab */ "../assets/dev/js/editor/components/icons-manager/components/tab.js"));

var _iconsGoPro = _interopRequireDefault(__webpack_require__(/*! ./icons-go-pro */ "../assets/dev/js/editor/components/icons-manager/components/icons-go-pro.js"));

var IconsManager = /*#__PURE__*/function (_Component) {
  (0, _inherits2.default)(IconsManager, _Component);

  var _super = (0, _createSuper2.default)(IconsManager);

  function IconsManager() {
    var _this;

    (0, _classCallCheck2.default)(this, IconsManager);

    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }

    _this = _super.call.apply(_super, [this].concat(args));
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "scrollViewRef", (0, _react.createRef)());
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "state", {
      activeTab: _this.props.activeTab,
      selected: {
        library: '',
        value: ''
      },
      iconTabs: elementor.config.icons.libraries,
      loaded: _this.props.loaded,
      filter: ''
    });
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "cache", {});
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "loadAllTabs", function () {
      var loaded = _this.state.loaded;
      var icons = _this.props.icons;
      icons.forEach(function (tabSettings) {
        if (loaded[tabSettings.name]) {
          return;
        }

        if (-1 < ['all', 'recommended'].indexOf(tabSettings.name)) {
          return;
        }

        elementor.iconManager.library.initIconType((0, _objectSpread2.default)({}, tabSettings), function (library) {
          _this.cache[library.name] = library;
          loaded[tabSettings.name] = true;
        });
      });
      loaded.all = true;
      loaded.recommended = true;

      _this.setState({
        loaded: loaded
      });
    });
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "getActiveTab", function () {
      var activeTab = _this.state.activeTab;
      var loaded = _this.state.loaded,
          icons = _this.props.icons;

      if (!activeTab) {
        if (_this.props.activeTab) {
          activeTab = _this.props.activeTab;
        }
      }

      if ('GoPro' === activeTab) {
        return activeTab;
      }

      if (!loaded[activeTab]) {
        return false;
      }

      var tabSettings = (0, _objectSpread2.default)({}, icons.filter(function (tab) {
        return tab.name === activeTab;
      })[0]);

      if (loaded[activeTab]) {
        return (0, _objectSpread2.default)({}, tabSettings);
      }

      if ('all' === tabSettings.name && !loaded.all) {
        return _this.loadAllTabs();
      }

      elementor.iconManager.library.initIconType((0, _objectSpread2.default)({}, tabSettings), function (library) {
        _this.cache[library.name] = library;

        _this.updateLoaded(library.name);
      });
      return false;
    });
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "getIconTabsLinks", function () {
      var native = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
      return _this.props.icons.map(function (tab) {
        if (native ^ _this.isNativeTab(tab)) {
          return '';
        }

        var isCurrentTab = tab.name === _this.state.activeTab;
        var className = 'elementor-icons-manager__tab-link';

        if (isCurrentTab) {
          className += ' elementor-active';
        }

        return /*#__PURE__*/_react.default.createElement("div", {
          className: className,
          key: tab.name,
          onClick: function onClick() {
            if (isCurrentTab) {
              return;
            }

            _this.setState({
              activeTab: tab.name
            });
          }
        }, /*#__PURE__*/_react.default.createElement("i", {
          className: tab.labelIcon
        }), tab.label);
      });
    });
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "getActiveTabIcons", function (activeTab) {
      if (activeTab.name) {
        return _this.getActiveTabIcons(activeTab.name);
      }

      if (_this.cache[activeTab]) {
        return _this.cache[activeTab].icons;
      }

      if ('recommended' === activeTab) {
        return _this.state.iconTabs[0].icons;
      }

      if ('all' === activeTab) {
        return _this.getAllIcons();
      }

      if (!_this.state.loaded[activeTab]) {
        var librarySettings = _this.props.icons.filter(function (library) {
          return activeTab === library.name;
        });

        return elementor.iconManager.library.initIconType((0, _objectSpread2.default)({}, librarySettings[0]), function (library) {
          _this.cache[library.name] = library;

          _this.updateLoaded(library.name);
        });
      }

      return elementor.iconManager.store.getIcons(activeTab);
    });
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "getAllIcons", function () {
      if (_this.cache.all) {
        return _this.cache.all.icons;
      }

      var icons = {};

      _this.props.icons.forEach(function (tabSettings) {
        if ('all' === tabSettings.name || 'recommended' === tabSettings.name) {
          return;
        }

        icons[tabSettings.name] = _this.getActiveTabIcons(tabSettings.name);
      });

      _this.cache.all = {
        icons: icons
      };
      return icons;
    });
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "handleSearch", function (event) {
      var filter = event.target.value;

      if (filter && '' !== filter) {
        filter = filter.toLocaleLowerCase();

        if (_this.state.filter === filter) {
          return;
        }
      } else {
        filter = '';
      }

      _this.setState({
        filter: filter
      });
    });
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "setSelected", function (selected) {
      elementor.iconManager.setSettings('selectedIcon', selected);

      _this.setState({
        selected: selected
      });
    });
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "getSelected", function () {
      var selected = _this.state.selected;

      if ('' === selected.value && _this.props.selected && _this.props.selected.value) {
        selected = {
          value: _this.props.selected.value,
          library: _this.props.selected.library
        };
      }

      return selected;
    });
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "render", function () {
      var activeTab = _this.getActiveTab(),
          activeTabName = activeTab.name ? activeTab.name : activeTab,
          _this$props$showSearc = _this.props.showSearch,
          showSearch = _this$props$showSearc === void 0 ? true : _this$props$showSearc,
          filter = _this.state.filter,
          selected = _this.getSelected();

      if ('GoPro' !== activeTab) {
        if (!activeTabName || !_this.state.loaded[activeTabName]) {
          return 'Loading';
        }

        if (activeTab) {
          activeTab.icons = _this.getActiveTabIcons(activeTab);
        }
      }

      return /*#__PURE__*/_react.default.createElement(_react.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
        id: "elementor-icons-manager__sidebar",
        className: 'elementor-templates-modal__sidebar'
      }, /*#__PURE__*/_react.default.createElement("div", {
        id: "elementor-icons-manager__tab-links"
      }, _this.getIconTabsLinks(), _this.getUploadCustomButton(), _this.getIconTabsLinks(false))), /*#__PURE__*/_react.default.createElement("div", {
        id: "elementor-icons-manager__main",
        className: 'elementor-templates-modal__content'
      }, 'GoPro' === activeTabName ? /*#__PURE__*/_react.default.createElement(_iconsGoPro.default, null) : /*#__PURE__*/_react.default.createElement(_react.Fragment, null, showSearch ? _this.getSearchHTML() : '', /*#__PURE__*/_react.default.createElement("div", {
        id: "elementor-icons-manager__tab__wrapper",
        ref: _this.scrollViewRef
      }, /*#__PURE__*/_react.default.createElement("div", {
        id: "elementor-icons-manager__tab__title"
      }, activeTab.label), /*#__PURE__*/_react.default.createElement("div", {
        id: "elementor-icons-manager__tab__content_wrapper"
      }, /*#__PURE__*/_react.default.createElement("input", {
        type: "hidden",
        name: "icon_value",
        id: "icon_value",
        value: selected.value
      }), /*#__PURE__*/_react.default.createElement("input", {
        type: "hidden",
        name: "icon_type",
        id: "icon_type",
        value: selected.library
      }), _this.state.loaded[activeTab.name] ? /*#__PURE__*/_react.default.createElement(_tab.default, (0, _extends2.default)({
        setSelected: _this.setSelected,
        selected: selected,
        filter: filter,
        key: activeTab.name,
        parentRef: _this.scrollViewRef
      }, activeTab)) : 'Loading')))));
    });
    return _this;
  }

  (0, _createClass2.default)(IconsManager, [{
    key: "updateLoaded",
    value: function updateLoaded(libraryName) {
      var loaded = this.state.loaded;
      loaded[libraryName] = true;
      this.setState({
        loaded: loaded
      });
    }
  }, {
    key: "isNativeTab",
    value: function isNativeTab(tab) {
      return ('all' === tab.name || 'recommended' === tab.name || 'fa-' === tab.name.substr(0, 3)) && tab.native;
    }
  }, {
    key: "getUploadCustomButton",
    value: function getUploadCustomButton() {
      var _this2 = this;

      var onClick = function onClick() {
        if ('GoPro' === _this2.state.activeTab) {
          return;
        }

        _this2.setState({
          activeTab: 'GoPro'
        });
      };

      if (this.props.customIconsURL) {
        onClick = function onClick() {
          window.open(_this2.props.customIconsURL, '_blank');
        };
      }

      return /*#__PURE__*/_react.default.createElement("div", {
        id: "elementor-icons-manager__upload"
      }, /*#__PURE__*/_react.default.createElement("div", {
        id: "elementor-icons-manager__upload__title"
      }, __('My Libraries', 'elementor')), /*#__PURE__*/_react.default.createElement("button", {
        id: "elementor-icons-manager__upload__button",
        className: "elementor-button elementor-button-default",
        onClick: onClick
      }, __('Upload', 'elementor')));
    }
  }, {
    key: "getSearchHTML",
    value: function getSearchHTML() {
      return /*#__PURE__*/_react.default.createElement("div", {
        id: "elementor-icons-manager__search"
      }, /*#__PURE__*/_react.default.createElement("input", {
        placeholder: 'Filter by name...',
        onInput: this.handleSearch
      }), /*#__PURE__*/_react.default.createElement("i", {
        className: 'eicon-search'
      }));
    }
  }]);
  return IconsManager;
}(_react.Component);

var _default = IconsManager;
exports.default = _default;

var renderIconManager = function renderIconManager(props) {
  var containerElement = document.querySelector('#elementor-icons-manager-modal .dialog-content');
  return (0, _reactDom.render)( /*#__PURE__*/_react.default.createElement(IconsManager, (0, _extends2.default)({}, props, {
    containerElement: containerElement
  })), containerElement);
};

exports.renderIconManager = renderIconManager;
IconsManager.propTypes = {
  activeTab: _propTypes.default.any,
  customIconsURL: _propTypes.default.string,
  icons: _propTypes.default.any,
  loaded: _propTypes.default.any,
  modalView: _propTypes.default.any,
  recommended: _propTypes.default.oneOfType([_propTypes.default.bool, _propTypes.default.object]),
  selected: _propTypes.default.any,
  showSearch: _propTypes.default.bool
};

/***/ }),

/***/ "../assets/dev/js/editor/components/icons-manager/components/icon.js":
/*!***************************************************************************!*\
  !*** ../assets/dev/js/editor/components/icons-manager/components/icon.js ***!
  \***************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));

var Icon = /*#__PURE__*/function (_Component) {
  (0, _inherits2.default)(Icon, _Component);

  var _super = (0, _createSuper2.default)(Icon);

  function Icon() {
    var _this;

    (0, _classCallCheck2.default)(this, Icon);

    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }

    _this = _super.call.apply(_super, [this].concat(args));
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "setSelected", function () {
      _this.props.setSelectedHandler({
        value: _this.props.data.displayPrefix + ' ' + _this.props.data.selector,
        library: _this.props.library
      });
    });
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "render", function () {
      return /*#__PURE__*/_react.default.createElement("div", {
        className: _this.props.containerClass,
        key: _this.props.keyID,
        onClick: _this.setSelected,
        filter: _this.props.data.filter
      }, /*#__PURE__*/_react.default.createElement("div", {
        className: "elementor-icons-manager__tab__item__content"
      }, /*#__PURE__*/_react.default.createElement("i", {
        className: 'elementor-icons-manager__tab__item__icon ' + _this.props.className
      }), /*#__PURE__*/_react.default.createElement("div", {
        className: 'elementor-icons-manager__tab__item__name',
        title: _this.props.data.name
      }, _this.props.data.name)));
    });
    return _this;
  }

  return Icon;
}(_react.Component);

exports.default = Icon;
Icon.propTypes = {
  className: _propTypes.default.string,
  containerClass: _propTypes.default.string,
  data: _propTypes.default.object,
  keyID: _propTypes.default.string,
  library: _propTypes.default.string,
  selector: _propTypes.default.string,
  setSelectedHandler: _propTypes.default.func
};

/***/ }),

/***/ "../assets/dev/js/editor/components/icons-manager/components/icons-go-pro.js":
/*!***********************************************************************************!*\
  !*** ../assets/dev/js/editor/components/icons-manager/components/icons-go-pro.js ***!
  \***********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var IconsGoPro = /*#__PURE__*/function (_Component) {
  (0, _inherits2.default)(IconsGoPro, _Component);

  var _super = (0, _createSuper2.default)(IconsGoPro);

  function IconsGoPro() {
    var _this;

    (0, _classCallCheck2.default)(this, IconsGoPro);

    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }

    _this = _super.call.apply(_super, [this].concat(args));
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "render", function () {
      return /*#__PURE__*/_react.default.createElement("div", {
        id: "elementor-icons-manager__promotion"
      }, /*#__PURE__*/_react.default.createElement("i", {
        id: "elementor-icons-manager__promotion__icon",
        className: "eicon-nerd"
      }), /*#__PURE__*/_react.default.createElement("div", {
        id: "elementor-icons-manager__promotion__text"
      }, __('Become a Pro user to upload unlimited font icon folders to your website.', 'elementor')), /*#__PURE__*/_react.default.createElement("a", {
        href: elementor.config.icons.goProURL,
        id: "elementor-icons-manager__promotion__link",
        className: "elementor-button elementor-button-default elementor-button-go-pro",
        target: "_blank",
        rel: "noopener noreferrer"
      }, __('Go Pro', 'elementor')));
    });
    return _this;
  }

  return IconsGoPro;
}(_react.Component);

var _default = IconsGoPro;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/components/icons-manager/components/tab.js":
/*!**************************************************************************!*\
  !*** ../assets/dev/js/editor/components/icons-manager/components/tab.js ***!
  \**************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

__webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");

__webpack_require__(/*! core-js/modules/es6.array.iterator.js */ "../node_modules/core-js/modules/es6.array.iterator.js");

__webpack_require__(/*! core-js/modules/web.dom.iterable.js */ "../node_modules/core-js/modules/web.dom.iterable.js");

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _createForOfIteratorHelper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createForOfIteratorHelper */ "../node_modules/@babel/runtime-corejs2/helpers/createForOfIteratorHelper.js"));

var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/toConsumableArray */ "../node_modules/@babel/runtime-corejs2/helpers/toConsumableArray.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _propTypes = _interopRequireDefault(__webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js"));

var _iconList = _interopRequireDefault(__webpack_require__(/*! ./icon-list */ "../assets/dev/js/editor/components/icons-manager/components/icon-list.js"));

var _icon = _interopRequireDefault(__webpack_require__(/*! ./icon */ "../assets/dev/js/editor/components/icons-manager/components/icon.js"));

var Tab = /*#__PURE__*/function (_Component) {
  (0, _inherits2.default)(Tab, _Component);

  var _super = (0, _createSuper2.default)(Tab);

  function Tab() {
    var _this;

    (0, _classCallCheck2.default)(this, Tab);

    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }

    _this = _super.call.apply(_super, [this].concat(args));
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "componentDidMount", function () {
      if (_this.props.selected && _this.props.selected.value) {
        setTimeout(function () {
          var element = document.querySelector('.elementor-selected');

          if (element) {
            element.scrollIntoView(false);
          }
        }, 0);
      }
    });
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "handleFullIconList", function () {
      var fullIconList = [];
      (0, _entries.default)(_this.props.icons).forEach(function (library) {
        if ('recommended' !== library[0]) {
          fullIconList = [].concat((0, _toConsumableArray2.default)(fullIconList), (0, _toConsumableArray2.default)(_this.getIconsOfType(library[0], library[1])));
        }
      });
      return fullIconList.sort(function (a, b) {
        return a.filter === b.filter ? 0 : +(a.filter > b.filter) || -1;
      });
    });
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "getLibrary", function (libraryName) {
      var icons = elementor.config.icons.libraries.filter(function (library) {
        return libraryName === library.name;
      });
      return icons;
    });
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "handleRecommendedList", function () {
      var recommendedIconList = [];
      (0, _entries.default)(_this.props.icons).forEach(function (library) {
        var iconLibrary = _this.getLibrary(library[0]),
            iconsOfType = iconLibrary[0].icons,
            recommendedIconsOfType = {};

        library[1].forEach(function (iconName) {
          if (iconsOfType[iconName]) {
            recommendedIconsOfType[iconName] = iconsOfType[iconName];
          }
        });
        recommendedIconList = [].concat((0, _toConsumableArray2.default)(recommendedIconList), (0, _toConsumableArray2.default)(_this.getIconsOfType(library[0], recommendedIconsOfType)));
      });
      return recommendedIconList;
    });
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "getIconsComponentList", function () {
      var iconsToShow = [];
      var _this$props = _this.props,
          name = _this$props.name,
          icons = _this$props.icons,
          filter = _this$props.filter;

      switch (name) {
        case 'all':
          iconsToShow = _this.handleFullIconList();
          break;

        case 'recommended':
          iconsToShow = _this.handleRecommendedList();
          break;

        default:
          iconsToShow = _this.getIconsOfType(name, icons);
          break;
      }

      if (filter) {
        iconsToShow = (0, _values.default)(iconsToShow).filter(function (icon) {
          return icon.props.data.name.toLowerCase().indexOf(filter) > -1;
        });
      }

      return iconsToShow;
    });
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "render", function () {
      var icons = _this.getIconsComponentList();

      var selectedIndex = -1;

      var _iterator = (0, _createForOfIteratorHelper2.default)(icons.entries()),
          _step;

      try {
        for (_iterator.s(); !(_step = _iterator.n()).done;) {
          var _step$value = (0, _slicedToArray2.default)(_step.value, 2),
              index = _step$value[0],
              icon = _step$value[1];

          if (icon.props.containerClass.includes('elementor-selected')) {
            selectedIndex = index;
            break;
          }
        }
      } catch (err) {
        _iterator.e(err);
      } finally {
        _iterator.f();
      }

      return /*#__PURE__*/_react.default.createElement(_iconList.default, {
        selectedIndex: selectedIndex,
        items: icons,
        parentRef: _this.props.parentRef
      });
    });
    return _this;
  }

  (0, _createClass2.default)(Tab, [{
    key: "getIconsOfType",
    value: function getIconsOfType(type, icons) {
      var _this2 = this;

      var _this$props2 = this.props,
          selected = _this$props2.selected,
          filter = _this$props2.filter;
      return (0, _entries.default)(icons).map(function (icon) {
        var iconData = icon[1],
            iconName = icon[0],
            className = iconData.displayPrefix + ' ' + iconData.selector;
        var containerClass = 'elementor-icons-manager__tab__item';

        if (selected.value === className) {
          containerClass += ' elementor-selected';
        }

        var key = containerClass + type + '-' + iconName + filter;
        return /*#__PURE__*/_react.default.createElement(_icon.default, {
          key: key,
          library: type,
          keyID: iconName,
          containerClass: containerClass,
          className: className,
          setSelectedHandler: _this2.props.setSelected,
          data: iconData
        });
      });
    }
  }]);
  return Tab;
}(_react.Component);

Tab.propTypes = {
  data: _propTypes.default.any,
  filter: _propTypes.default.any,
  icons: _propTypes.default.object,
  name: _propTypes.default.string,
  selected: _propTypes.default.object,
  setSelected: _propTypes.default.func,
  parentRef: _propTypes.default.any
};
var _default = Tab;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/components/icons-manager/icons-manager.js":
/*!*************************************************************************!*\
  !*** ../assets/dev/js/editor/components/icons-manager/icons-manager.js ***!
  \*************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

__webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _modalLayout = _interopRequireDefault(__webpack_require__(/*! ./modal-layout */ "../assets/dev/js/editor/components/icons-manager/modal-layout.js"));

var _iconManager = __webpack_require__(/*! ./components/icon-manager */ "../assets/dev/js/editor/components/icons-manager/components/icon-manager.js");

var _iconLibrary = _interopRequireDefault(__webpack_require__(/*! ./classes/icon-library */ "../assets/dev/js/editor/components/icons-manager/classes/icon-library.js"));

var _store = _interopRequireDefault(__webpack_require__(/*! ./classes/store */ "../assets/dev/js/editor/components/icons-manager/classes/store.js"));

var _reactDom = __webpack_require__(/*! react-dom */ "react-dom");

var _default = /*#__PURE__*/function (_elementorModules$Mod) {
  (0, _inherits2.default)(_default, _elementorModules$Mod);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "onInit",
    value: function onInit() {
      // Init icon library helper
      this.library = new _iconLibrary.default(); // Init Icon library Storage helper

      this.store = new _store.default(); // Fetch fa4 to fa5 migration data

      elementor.helpers.fetchFa4ToFa5Mapping();
      this.cache = {};
    }
  }, {
    key: "getLayout",
    value: function getLayout() {
      var _this = this;

      if (!this.layout) {
        this.layout = new _modalLayout.default();
        var layoutModal = this.layout.getModal();
        layoutModal.addButton({
          name: 'insert_icon',
          text: __('Insert', 'elementor'),
          classes: 'elementor-button elementor-button-success',
          callback: function callback() {
            _this.updateControlValue();

            _this.unMountIconManager();
          }
        });
        layoutModal.on('show', this.onPickerShow.bind(this)).on('hide', this.unMountIconManager);
      }

      return this.layout;
    }
  }, {
    key: "getDefaultSettings",
    value: function getDefaultSettings() {
      return {
        selectedIcon: {}
      };
    }
  }, {
    key: "unMountIconManager",
    value: function unMountIconManager() {
      var containerElement = document.querySelector('#elementor-icons-manager-modal .dialog-content');
      (0, _reactDom.unmountComponentAtNode)(containerElement);
    }
  }, {
    key: "loadIconLibraries",
    value: function loadIconLibraries() {
      if (!this.cache.loaded) {
        elementor.config.icons.libraries.forEach(function (library) {
          if ('all' === library.name) {
            return;
          }

          elementor.iconManager.library.initIconType(library);
        });
        this.cache.loaded = true;
      }
    }
  }, {
    key: "onPickerShow",
    value: function onPickerShow() {
      var controlView = this.getSettings('controlView'),
          loaded = {
        GoPro: true
      },
          iconManagerConfig = {
        recommended: controlView.model.get('recommended') || false
      };
      var selected = controlView.getControlValue(),
          icons = elementor.config.icons.libraries;

      if (!selected.library || !selected.value) {
        selected = {
          value: '',
          library: ''
        };
      }

      iconManagerConfig.selected = selected;
      this.setSettings('selectedIcon', selected);

      if (iconManagerConfig.recommended) {
        var hasRecommended = false;
        icons.forEach(function (library, index) {
          if ('recommended' === library.name) {
            hasRecommended = true;
            icons[index].icons = iconManagerConfig.recommended;
          }
        });

        if (!hasRecommended) {
          icons.unshift({
            name: 'recommended',
            label: 'Recommended',
            icons: iconManagerConfig.recommended,
            labelIcon: 'eicon-star-o',
            native: true
          });
        }
      } else {
        icons = icons.filter(function (library) {
          return 'recommended' !== library.name;
        });
      }

      icons.forEach(function (tab, index) {
        if (-1 === ['all', 'recommended'].indexOf(tab.name)) {
          elementor.iconManager.library.initIconType(tab, function (lib) {
            icons[index] = lib;
          });
        }

        loaded[tab.name] = true;
      });
      iconManagerConfig.loaded = loaded;
      iconManagerConfig.icons = icons; // Set active tab

      var activeTab = selected.library || icons[0].name;

      if ('svg' === selected.library) {
        activeTab = icons[0].name;
      } // selected Library exists


      if (!(0, _keys.default)(icons).some(function (library) {
        return library === activeTab;
      })) {
        activeTab = icons[0].name;
      } // Show recommended tab if selected from it


      if (iconManagerConfig.recommended && '' !== selected.library && '' !== selected.value && iconManagerConfig.recommended.hasOwnProperty(selected.library)) {
        var iconLibrary = icons.filter(function (library) {
          return selected.library === library.name;
        });
        var selectedIconName = selected.value.replace(iconLibrary[0].displayPrefix + ' ' + iconLibrary[0].prefix, '');

        if (iconManagerConfig.recommended[selected.library].some(function (icon) {
          return -1 < icon.indexOf(selectedIconName);
        })) {
          activeTab = icons[0].name;
        }
      }

      iconManagerConfig.customIconsURL = elementor.config.customIconsURL;
      iconManagerConfig.activeTab = activeTab;
      return (0, _iconManager.renderIconManager)(iconManagerConfig);
    }
  }, {
    key: "updateControlValue",
    value: function updateControlValue() {
      var settings = this.getSettings();
      settings.controlView.setValue(settings.selectedIcon);
      settings.controlView.applySavedValue();
    }
  }, {
    key: "show",
    value: function show(options) {
      this.setSettings('controlView', options.view);
      this.getLayout().showModal(options);
    }
  }]);
  return _default;
}(elementorModules.Module);

exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/components/icons-manager/modal-layout.js":
/*!************************************************************************!*\
  !*** ../assets/dev/js/editor/components/icons-manager/modal-layout.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _layout = _interopRequireDefault(__webpack_require__(/*! elementor-common/views/modal/layout */ "../core/common/assets/js/views/modal/layout.js"));

var _default = /*#__PURE__*/function (_BaseModalLayout) {
  (0, _inherits2.default)(_default, _BaseModalLayout);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "getModalOptions",
    value: function getModalOptions() {
      return {
        id: 'elementor-icons-manager-modal'
      };
    }
  }, {
    key: "getLogoOptions",
    value: function getLogoOptions() {
      return {
        title: __('Icon Library', 'elementor')
      };
    }
  }, {
    key: "initialize",
    value: function initialize() {
      var _get2;

      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
        args[_key] = arguments[_key];
      }

      (_get2 = (0, _get3.default)((0, _getPrototypeOf2.default)(_default.prototype), "initialize", this)).call.apply(_get2, [this].concat(args));

      this.showLogo();
    }
  }]);
  return _default;
}(_layout.default);

exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/components/settings/base/manager.js":
/*!*******************************************************************!*\
  !*** ../assets/dev/js/editor/components/settings/base/manager.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var ControlsCSSParser = __webpack_require__(/*! elementor-editor-utils/controls-css-parser */ "../assets/dev/js/editor/utils/controls-css-parser.js");

module.exports = elementorModules.ViewModule.extend({
  model: null,
  hasChange: false,
  changeCallbacks: {},
  addChangeCallback: function addChangeCallback(attribute, callback) {
    this.changeCallbacks[attribute] = callback;
  },
  bindEvents: function bindEvents() {
    elementor.on('document:loaded', this.onElementorDocumentLoaded);
    this.model.on('change', this.onModelChange);
  },
  unbindEvents: function unbindEvents() {
    elementor.off('document:loaded', this.onElementorDocumentLoaded);
  },
  addPanelPage: function addPanelPage() {
    var name = this.getSettings('name');
    elementor.getPanelView().addPage(name + '_settings', {
      view: elementor.settings.panelPages[name] || elementor.settings.panelPages.base,
      title: this.getSettings('panelPage.title'),
      options: {
        editedView: this.getEditedView(),
        model: this.model,
        controls: this.model.controls,
        name: name
      }
    });
  },
  getContainerId: function getContainerId() {
    return this.getSettings('name') + '_settings';
  },
  // Emulate an element view/model structure with the parts needed for a container.
  getEditedView: function getEditedView() {
    var id = this.getContainerId(),
        editModel = new Backbone.Model({
      id: id,
      elType: id,
      settings: this.model
    });
    var container = new elementorModules.editor.Container({
      type: id,
      id: editModel.id,
      model: editModel,
      settings: editModel.get('settings'),
      view: false,
      label: this.getSettings('panelPage').title,
      controls: this.model.controls,
      document: this.getDocument(),
      renderer: false
    });
    return {
      getContainer: function getContainer() {
        return container;
      },
      getEditModel: function getEditModel() {
        return editModel;
      },
      model: editModel
    };
  },
  getDocument: function getDocument() {
    return false;
  },
  updateStylesheet: function updateStylesheet(keepOldEntries) {
    var controlsCSS = this.getControlsCSS();

    if (!keepOldEntries) {
      controlsCSS.stylesheet.empty();
    }

    this.model.handleRepeaterData(this.model.attributes);
    controlsCSS.addStyleRules(this.model.getStyleControls(), this.model.attributes, this.model.controls, [/{{WRAPPER}}/g], [this.getSettings('cssWrapperSelector')]);
    controlsCSS.addStyleToDocument({
      // Ensures we don't override default global style
      at: 'before',
      of: '#elementor-style-e-global-style'
    });
  },
  initModel: function initModel() {
    this.model = new elementorModules.editor.elements.models.BaseSettings(this.getSettings('settings'), {
      controls: this.getSettings('controls')
    });
  },
  getStyleId: function getStyleId() {
    return this.getSettings('name');
  },
  initControlsCSSParser: function initControlsCSSParser() {
    var controlsCSS;

    this.destroyControlsCSS = function () {
      controlsCSS.removeStyleFromDocument();
    };

    this.getControlsCSS = function () {
      if (!controlsCSS) {
        controlsCSS = new ControlsCSSParser({
          id: this.getStyleId(),
          settingsModel: this.model,
          context: this.getEditedView()
        });
      }

      return controlsCSS;
    };
  },
  getDataToSave: function getDataToSave(data) {
    return data;
  },
  save: function save(callback) {
    var self = this;

    if (!self.hasChange) {
      return;
    }

    var settings = this.model.toJSON({
      remove: ['default']
    }),
        data = this.getDataToSave({
      data: settings
    });

    if (!elementorCommonConfig.isTesting) {
      NProgress.start();
    }

    elementorCommon.ajax.addRequest('save_' + this.getSettings('name') + '_settings', {
      data: data,
      success: function success() {
        if (!elementorCommonConfig.isTesting) {
          NProgress.done();
        }

        self.setSettings('settings', settings);
        self.hasChange = false;

        if (callback) {
          callback.apply(self, arguments);
        }
      },
      error: function error() {
        alert('An error occurred');
      }
    });
  },
  onInit: function onInit() {
    this.initModel();
    this.initControlsCSSParser();
    this.addPanelMenuItem();
    this.debounceSave = _.debounce(this.save, 3000);
    elementorModules.ViewModule.prototype.onInit.apply(this, arguments);
  },

  /**
   * BC for custom settings without a JS component.
   */
  addPanelMenuItem: function addPanelMenuItem() {
    var menuSettings = this.getSettings('panelPage.menu');

    if (!menuSettings) {
      return;
    }

    var namespace = 'panel/' + this.getSettings('name') + '-settings',
        menuItemOptions = {
      icon: menuSettings.icon,
      title: this.getSettings('panelPage.title'),
      type: 'page',
      pageName: this.getSettings('name') + '_settings',
      callback: function callback() {
        return $e.route("".concat(namespace, "/settings"));
      }
    };
    $e.bc.ensureTab(namespace, 'settings', menuItemOptions.pageName);
    elementor.modules.layouts.panel.pages.menu.Menu.addItem(menuItemOptions, 'settings', menuSettings.beforeItem);
  },
  onModelChange: function onModelChange(model) {
    var self = this;
    self.hasChange = true;
    this.getControlsCSS().stylesheet.empty();

    _.each(model.changed, function (value, key) {
      if (self.changeCallbacks[key]) {
        self.changeCallbacks[key].call(self, value);
      }
    });

    self.updateStylesheet(true);
    self.debounceSave();
  },
  onElementorDocumentLoaded: function onElementorDocumentLoaded() {
    this.updateStylesheet();
    this.addPanelPage();
  },
  destroy: function destroy() {
    this.unbindEvents();
    this.model.destroy();
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/components/settings/base/panel.js":
/*!*****************************************************************!*\
  !*** ../assets/dev/js/editor/components/settings/base/panel.js ***!
  \*****************************************************************/
/***/ ((module) => {

"use strict";


module.exports = elementorModules.editor.views.ControlsStack.extend({
  id: function id() {
    return 'elementor-panel-' + this.getOption('name') + '-settings';
  },
  getTemplate: function getTemplate() {
    return '#tmpl-elementor-panel-' + this.getOption('name') + '-settings';
  },
  childViewContainer: function childViewContainer() {
    return '#elementor-panel-' + this.getOption('name') + '-settings-controls';
  },
  childViewOptions: function childViewOptions() {
    return {
      container: this.getOption('editedView').getContainer()
    };
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/components/settings/editor-preferences/manager.js":
/*!*********************************************************************************!*\
  !*** ../assets/dev/js/editor/components/settings/editor-preferences/manager.js ***!
  \*********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _manager = _interopRequireDefault(__webpack_require__(/*! ../base/manager */ "../assets/dev/js/editor/components/settings/base/manager.js"));

var _default = /*#__PURE__*/function (_BaseManager) {
  (0, _inherits2.default)(_default, _BaseManager);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    var _this;

    (0, _classCallCheck2.default)(this, _default);

    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }

    _this = _super.call.apply(_super, [this].concat(args));
    _this.changeCallbacks = {
      ui_theme: _this.onUIThemeChanged,
      panel_width: _this.onPanelWidthChanged,
      edit_buttons: _this.onEditButtonsChanged,
      show_hidden_elements: _this.onShowHiddenElementsChange
    };
    return _this;
  }

  (0, _createClass2.default)(_default, [{
    key: "getDefaultSettings",
    value: function getDefaultSettings() {
      return {
        darkModeLinkID: 'elementor-editor-dark-mode-css'
      };
    }
  }, {
    key: "createDarkModeStylesheetLink",
    value: function createDarkModeStylesheetLink() {
      var darkModeLinkID = this.getSettings('darkModeLinkID');
      var $darkModeLink = jQuery('#' + darkModeLinkID);

      if (!$darkModeLink.length) {
        $darkModeLink = jQuery('<link>', {
          id: darkModeLinkID,
          rel: 'stylesheet',
          href: elementor.config.ui.darkModeStylesheetURL
        });
      }

      this.$link = $darkModeLink;
    }
  }, {
    key: "getDarkModeStylesheetLink",
    value: function getDarkModeStylesheetLink() {
      if (!this.$link) {
        this.createDarkModeStylesheetLink();
      }

      return this.$link;
    }
  }, {
    key: "onUIThemeChanged",
    value: function onUIThemeChanged(newValue) {
      var $link = this.getDarkModeStylesheetLink();

      if ('light' === newValue) {
        $link.remove();
        return;
      }

      $link.attr('media', 'auto' === newValue ? '(prefers-color-scheme: dark)' : '').appendTo(elementorCommon.elements.$body);
    }
  }, {
    key: "onPanelWidthChanged",
    value: function onPanelWidthChanged(newValue) {
      elementor.panel.saveSize({
        width: newValue.size + newValue.unit
      });
      elementor.panel.setSize();
    }
  }, {
    key: "onEditButtonsChanged",
    value: function onEditButtonsChanged() {
      // Let the button change before the high-performance action of rendering the entire page
      setTimeout(function () {
        return elementor.getPreviewView()._renderChildren();
      }, 300);
    }
  }, {
    key: "onShowHiddenElementsChange",
    value: function onShowHiddenElementsChange() {
      elementorFrontend.elements.$body.toggleClass('e-preview--show-hidden-elements');
    }
  }]);
  return _default;
}(_manager.default);

exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/components/settings/page/component.js":
/*!*********************************************************************!*\
  !*** ../assets/dev/js/editor/components/settings/page/component.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _componentBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-base */ "../core/common/assets/js/api/modules/component-base.js"));

var Component = /*#__PURE__*/function (_ComponentBase) {
  (0, _inherits2.default)(Component, _ComponentBase);

  var _super = (0, _createSuper2.default)(Component);

  function Component() {
    (0, _classCallCheck2.default)(this, Component);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Component, [{
    key: "getNamespace",
    value: function getNamespace() {
      return 'panel/page-settings';
    }
  }, {
    key: "defaultTabs",
    value: function defaultTabs() {
      return {
        settings: {
          title: __('Settings', 'elementor')
        },
        style: {
          title: __('Style', 'elementor')
        },
        advanced: {
          title: __('Advanced', 'elementor')
        }
      };
    }
  }, {
    key: "renderTab",
    value: function renderTab(tab) {
      elementor.getPanelView().setPage('page_settings').activateTab(tab);
    }
  }, {
    key: "getTabsWrapperSelector",
    value: function getTabsWrapperSelector() {
      return '.elementor-panel-navigation';
    }
  }]);
  return Component;
}(_componentBase.default);

exports.default = Component;

/***/ }),

/***/ "../assets/dev/js/editor/components/settings/page/manager.js":
/*!*******************************************************************!*\
  !*** ../assets/dev/js/editor/components/settings/page/manager.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _component = _interopRequireDefault(__webpack_require__(/*! ./component */ "../assets/dev/js/editor/components/settings/page/component.js"));

var BaseSettings = __webpack_require__(/*! elementor-editor/components/settings/base/manager */ "../assets/dev/js/editor/components/settings/base/manager.js");

module.exports = BaseSettings.extend({
  getStyleId: function getStyleId() {
    return this.getSettings('name') + '-' + elementor.documents.getCurrent().id;
  },
  onInit: function onInit() {
    BaseSettings.prototype.onInit.apply(this);
    $e.components.register(new _component.default({
      manager: this
    }));
  },
  save: function save() {},
  getDataToSave: function getDataToSave(data) {
    data.id = elementor.config.document.id;
    return data;
  },
  // Emulate an element view/model structure with the parts needed for a container.
  getEditedView: function getEditedView() {
    var _this = this;

    if (this.editedView) {
      return this.editedView;
    }

    var id = this.getContainerId(),
        editModel = new Backbone.Model({
      id: id,
      elType: id,
      settings: this.model,
      elements: elementor.elements
    });
    var container = new elementorModules.editor.Container({
      type: id,
      id: editModel.id,
      model: editModel,
      settings: editModel.get('settings'),
      label: elementor.config.document.panel.title,
      controls: this.model.controls,
      children: elementor.elements,
      // Emulate a view that can render the style.
      renderer: {
        view: {
          lookup: function lookup() {
            return container;
          },
          renderOnChange: function renderOnChange() {
            return _this.updateStylesheet();
          },
          renderUI: function renderUI() {
            return _this.updateStylesheet();
          }
        }
      }
    });
    this.editedView = {
      getContainer: function getContainer() {
        return container;
      },
      getEditModel: function getEditModel() {
        return editModel;
      },
      model: editModel
    };
    return this.editedView;
  },
  getContainerId: function getContainerId() {
    return 'document';
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/components/settings/settings.js":
/*!***************************************************************!*\
  !*** ../assets/dev/js/editor/components/settings/settings.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _manager = _interopRequireDefault(__webpack_require__(/*! ./editor-preferences/manager */ "../assets/dev/js/editor/components/settings/editor-preferences/manager.js"));

module.exports = elementorModules.Module.extend({
  modules: {
    base: __webpack_require__(/*! elementor-editor/components/settings/base/manager */ "../assets/dev/js/editor/components/settings/base/manager.js"),
    page: __webpack_require__(/*! elementor-editor/components/settings/page/manager */ "../assets/dev/js/editor/components/settings/page/manager.js"),
    editorPreferences: _manager.default
  },
  panelPages: {
    base: __webpack_require__(/*! elementor-editor/components/settings/base/panel */ "../assets/dev/js/editor/components/settings/base/panel.js")
  },
  onInit: function onInit() {
    this.initSettings();
  },
  initSettings: function initSettings() {
    var self = this;

    _.each(elementor.config.settings, function (config, name) {
      var Manager = self.modules[name] || self.modules.base;
      self[name] = new Manager(config);
    });
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/components/template-library/behaviors/insert-template.js":
/*!****************************************************************************************!*\
  !*** ../assets/dev/js/editor/components/template-library/behaviors/insert-template.js ***!
  \****************************************************************************************/
/***/ ((module) => {

"use strict";


var InsertTemplateHandler;
InsertTemplateHandler = Marionette.Behavior.extend({
  ui: {
    insertButton: '.elementor-template-library-template-insert'
  },
  events: {
    'click @ui.insertButton': 'onInsertButtonClick'
  },
  onInsertButtonClick: function onInsertButtonClick() {
    var args = {
      model: this.view.model
    };

    if ('remote' === args.model.get('source') && !elementor.config.library_connect.is_connected) {
      $e.route('library/connect', args);
      return;
    }

    $e.run('library/insert-template', args);
  }
});
module.exports = InsertTemplateHandler;

/***/ }),

/***/ "../assets/dev/js/editor/components/template-library/collections/templates.js":
/*!************************************************************************************!*\
  !*** ../assets/dev/js/editor/components/template-library/collections/templates.js ***!
  \************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var TemplateLibraryTemplateModel = __webpack_require__(/*! elementor-templates/models/template */ "../assets/dev/js/editor/components/template-library/models/template.js"),
    TemplateLibraryCollection;

TemplateLibraryCollection = Backbone.Collection.extend({
  model: TemplateLibraryTemplateModel
});
module.exports = TemplateLibraryCollection;

/***/ }),

/***/ "../assets/dev/js/editor/components/template-library/commands/index.js":
/*!*****************************************************************************!*\
  !*** ../assets/dev/js/editor/components/template-library/commands/index.js ***!
  \*****************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "InsertTemplate", {
  enumerable: true,
  get: function get() {
    return _insertTemplate.InsertTemplate;
  }
});

_Object$defineProperty(exports, "Open", {
  enumerable: true,
  get: function get() {
    return _open.Open;
  }
});

var _insertTemplate = __webpack_require__(/*! ./insert-template */ "../assets/dev/js/editor/components/template-library/commands/insert-template.js");

var _open = __webpack_require__(/*! ./open */ "../assets/dev/js/editor/components/template-library/commands/open.js");

/***/ }),

/***/ "../assets/dev/js/editor/components/template-library/commands/insert-template.js":
/*!***************************************************************************************!*\
  !*** ../assets/dev/js/editor/components/template-library/commands/insert-template.js ***!
  \***************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.InsertTemplate = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var InsertTemplate = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(InsertTemplate, _CommandBase);

  var _super = (0, _createSuper2.default)(InsertTemplate);

  function InsertTemplate() {
    (0, _classCallCheck2.default)(this, InsertTemplate);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(InsertTemplate, [{
    key: "apply",
    value: function apply(args) {
      return this.component.insertTemplate(args);
    }
  }]);
  return InsertTemplate;
}(_commandBase.default);

exports.InsertTemplate = InsertTemplate;
var _default = InsertTemplate;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/components/template-library/commands/open.js":
/*!****************************************************************************!*\
  !*** ../assets/dev/js/editor/components/template-library/commands/open.js ***!
  \****************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Open = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Open = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Open, _CommandBase);

  var _super = (0, _createSuper2.default)(Open);

  function Open() {
    (0, _classCallCheck2.default)(this, Open);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Open, [{
    key: "apply",
    value: function apply(args) {
      return this.component.show(args);
    }
  }]);
  return Open;
}(_commandBase.default);

exports.Open = Open;
var _default = Open;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/components/template-library/component.js":
/*!************************************************************************!*\
  !*** ../assets/dev/js/editor/components/template-library/component.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _componentModalBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-modal-base */ "../core/common/assets/js/api/modules/component-modal-base.js"));

var commands = _interopRequireWildcard(__webpack_require__(/*! ./commands/ */ "../assets/dev/js/editor/components/template-library/commands/index.js"));

var TemplateLibraryLayoutView = __webpack_require__(/*! elementor-templates/views/library-layout */ "../assets/dev/js/editor/components/template-library/views/library-layout.js");

var Component = /*#__PURE__*/function (_ComponentModalBase) {
  (0, _inherits2.default)(Component, _ComponentModalBase);

  var _super = (0, _createSuper2.default)(Component);

  function Component() {
    (0, _classCallCheck2.default)(this, Component);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Component, [{
    key: "__construct",
    value: function __construct(args) {
      (0, _get2.default)((0, _getPrototypeOf2.default)(Component.prototype), "__construct", this).call(this, args); // When switching documents update defaultTabs.

      elementor.on('document:loaded', this.onDocumentLoaded.bind(this));
    }
  }, {
    key: "getNamespace",
    value: function getNamespace() {
      return 'library';
    }
  }, {
    key: "defaultTabs",
    value: function defaultTabs() {
      return {
        'templates/blocks': {
          title: __('Blocks', 'elementor'),
          getFilter: function getFilter() {
            return {
              source: 'remote',
              type: 'block',
              subtype: elementor.config.document.remoteLibrary.category
            };
          }
        },
        'templates/pages': {
          title: __('Pages', 'elementor'),
          filter: {
            source: 'remote',
            type: 'page'
          }
        },
        'templates/my-templates': {
          title: __('My Templates', 'elementor'),
          filter: {
            source: 'local'
          }
        }
      };
    }
  }, {
    key: "defaultRoutes",
    value: function defaultRoutes() {
      var _this = this;

      return {
        import: function _import() {
          _this.manager.layout.showImportView();
        },
        'save-template': function saveTemplate(args) {
          _this.manager.layout.showSaveTemplateView(args.model);
        },
        preview: function preview(args) {
          _this.manager.layout.showPreviewView(args.model);
        },
        connect: function connect(args) {
          args.texts = {
            title: __('Connect to Template Library', 'elementor'),
            message: __('Access this template and our entire library by creating a free personal account', 'elementor'),
            button: __('Get Started', 'elementor')
          };

          _this.manager.layout.showConnectView(args);
        }
      };
    }
  }, {
    key: "defaultCommands",
    value: function defaultCommands() {
      var modalCommands = (0, _get2.default)((0, _getPrototypeOf2.default)(Component.prototype), "defaultCommands", this).call(this);
      return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, modalCommands), this.importCommands(commands));
    }
  }, {
    key: "defaultShortcuts",
    value: function defaultShortcuts() {
      return {
        open: {
          keys: 'ctrl+shift+l'
        }
      };
    }
  }, {
    key: "onDocumentLoaded",
    value: function onDocumentLoaded(document) {
      this.setDefaultRoute(document.config.remoteLibrary.default_route);
      this.maybeOpenLibrary();
    }
  }, {
    key: "renderTab",
    value: function renderTab(tab) {
      var currentTab = this.tabs[tab],
          filter = currentTab.getFilter ? currentTab.getFilter() : currentTab.filter;
      this.manager.setScreen(filter);
    }
  }, {
    key: "activateTab",
    value: function activateTab(tab) {
      $e.routes.saveState('library');
      (0, _get2.default)((0, _getPrototypeOf2.default)(Component.prototype), "activateTab", this).call(this, tab);
    }
  }, {
    key: "open",
    value: function open() {
      (0, _get2.default)((0, _getPrototypeOf2.default)(Component.prototype), "open", this).call(this);

      if (!this.manager.layout) {
        this.manager.layout = this.layout;
      }

      this.manager.layout.setHeaderDefaultParts();
      return true;
    }
  }, {
    key: "close",
    value: function close() {
      if (!(0, _get2.default)((0, _getPrototypeOf2.default)(Component.prototype), "close", this).call(this)) {
        return false;
      }

      this.manager.modalConfig = {};
      return true;
    }
  }, {
    key: "show",
    value: function show(args) {
      this.manager.modalConfig = args;

      if (args.toDefault || !$e.routes.restoreState('library')) {
        $e.route(this.getDefaultRoute());
      }
    } // TODO: Move function to 'insert-template' command.

  }, {
    key: "insertTemplate",
    value: function insertTemplate(args) {
      var _this2 = this;

      var autoImportSettings = elementor.config.document.remoteLibrary.autoImportSettings,
          model = args.model;
      var _args$withPageSetting = args.withPageSettings,
          withPageSettings = _args$withPageSetting === void 0 ? null : _args$withPageSetting;

      if (autoImportSettings) {
        withPageSettings = true;
      }

      if (null === withPageSettings && model.get('hasPageSettings')) {
        var insertTemplateHandler = this.getImportSettingsDialog();
        insertTemplateHandler.showImportDialog(model);
        return;
      }

      this.manager.layout.showLoadingView();
      this.manager.requestTemplateContent(model.get('source'), model.get('template_id'), {
        data: {
          with_page_settings: withPageSettings
        },
        success: function success(data) {
          // Clone the `modalConfig.importOptions` because it deleted during the closing.
          var importOptions = jQuery.extend({}, _this2.manager.modalConfig.importOptions);
          importOptions.withPageSettings = withPageSettings; // Hide for next open.

          _this2.manager.layout.hideLoadingView();

          _this2.manager.layout.hideModal();

          $e.run('document/elements/import', {
            model: model,
            data: data,
            options: importOptions
          });
        },
        error: function error(data) {
          _this2.manager.showErrorDialog(data);
        },
        complete: function complete() {
          _this2.manager.layout.hideLoadingView();
        }
      });
    }
  }, {
    key: "getImportSettingsDialog",
    value: function getImportSettingsDialog() {
      // Moved from ./behaviors/insert-template.js
      var InsertTemplateHandler = {
        dialog: null,
        showImportDialog: function showImportDialog(model) {
          var dialog = InsertTemplateHandler.getDialog();

          dialog.onConfirm = function () {
            $e.run('library/insert-template', {
              model: model,
              withPageSettings: true
            });
          };

          dialog.onCancel = function () {
            $e.run('library/insert-template', {
              model: model,
              withPageSettings: false
            });
          };

          dialog.show();
        },
        initDialog: function initDialog() {
          InsertTemplateHandler.dialog = elementorCommon.dialogsManager.createWidget('confirm', {
            id: 'elementor-insert-template-settings-dialog',
            headerMessage: __('Import Document Settings', 'elementor'),
            message: __('Do you want to also import the document settings of the template?', 'elementor') + '<br>' + __('Attention: Importing may override previous settings.', 'elementor'),
            strings: {
              confirm: __('Yes', 'elementor'),
              cancel: __('No', 'elementor')
            }
          });
        },
        getDialog: function getDialog() {
          if (!InsertTemplateHandler.dialog) {
            InsertTemplateHandler.initDialog();
          }

          return InsertTemplateHandler.dialog;
        }
      };
      return InsertTemplateHandler;
    }
  }, {
    key: "getTabsWrapperSelector",
    value: function getTabsWrapperSelector() {
      return '#elementor-template-library-header-menu';
    }
  }, {
    key: "getModalLayout",
    value: function getModalLayout() {
      return TemplateLibraryLayoutView;
    }
  }, {
    key: "maybeOpenLibrary",
    value: function maybeOpenLibrary() {
      if ('#library' === location.hash) {
        $e.run('library/open');
        location.hash = '';
      }
    }
  }]);
  return Component;
}(_componentModalBase.default);

exports.default = Component;

/***/ }),

/***/ "../assets/dev/js/editor/components/template-library/manager.js":
/*!**********************************************************************!*\
  !*** ../assets/dev/js/editor/components/template-library/manager.js ***!
  \**********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var sprintf = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["sprintf"];


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

var _stringify = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/json/stringify */ "../node_modules/@babel/runtime-corejs2/core-js/json/stringify.js"));

var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _component = _interopRequireDefault(__webpack_require__(/*! ./component */ "../assets/dev/js/editor/components/template-library/component.js"));

var TemplateLibraryCollection = __webpack_require__(/*! elementor-templates/collections/templates */ "../assets/dev/js/editor/components/template-library/collections/templates.js"),
    TemplateLibraryManager;

TemplateLibraryManager = function TemplateLibraryManager() {
  this.modalConfig = {};
  var self = this,
      templateTypes = {};
  var deleteDialog,
      errorDialog,
      templatesCollection,
      config = {},
      filterTerms = {};

  var registerDefaultTemplateTypes = function registerDefaultTemplateTypes() {
    var data = {
      saveDialog: {
        description: __('Your designs will be available for export and reuse on any page or website', 'elementor')
      },
      ajaxParams: {
        success: function success(successData) {
          $e.route('library/templates/my-templates', {
            onBefore: function onBefore() {
              if (templatesCollection) {
                var itemExist = templatesCollection.findWhere({
                  template_id: successData.template_id
                });

                if (!itemExist) {
                  templatesCollection.add(successData);
                }
              }
            }
          });
        },
        error: function error(errorData) {
          self.showErrorDialog(errorData);
        }
      }
    };
    var translationMap = (0, _defineProperty2.default)({
      page: __('Page', 'elementor'),
      section: __('Section', 'elementor')
    }, elementor.config.document.type, elementor.config.document.panel.title);
    jQuery.each(translationMap, function (type, title) {
      var safeData = jQuery.extend(true, {}, data, {
        saveDialog: {
          /* translators: %s: Template type. */
          title: sprintf(__('Save Your %s to Library', 'elementor'), title)
        }
      });
      self.registerTemplateType(type, safeData);
    });
  };

  var registerDefaultFilterTerms = function registerDefaultFilterTerms() {
    filterTerms = {
      text: {
        callback: function callback(value) {
          value = value.toLowerCase();

          if (this.get('title').toLowerCase().indexOf(value) >= 0) {
            return true;
          }

          return _.any(this.get('tags'), function (tag) {
            return tag.toLowerCase().indexOf(value) >= 0;
          });
        }
      },
      type: {},
      subtype: {},
      favorite: {}
    };
  };

  this.init = function () {
    registerDefaultTemplateTypes();
    registerDefaultFilterTerms();
    this.component = $e.components.register(new _component.default({
      manager: this
    }));
    elementor.addBackgroundClickListener('libraryToggleMore', {
      element: '.elementor-template-library-template-more'
    });
  };

  this.getTemplateTypes = function (type) {
    if (type) {
      return templateTypes[type];
    }

    return templateTypes;
  };

  this.registerTemplateType = function (type, data) {
    templateTypes[type] = data;
  };

  this.deleteTemplate = function (templateModel, options) {
    var dialog = self.getDeleteDialog();

    dialog.onConfirm = function () {
      if (options.onConfirm) {
        options.onConfirm();
      }

      elementorCommon.ajax.addRequest('delete_template', {
        data: {
          source: templateModel.get('source'),
          template_id: templateModel.get('template_id')
        },
        success: function success(response) {
          templatesCollection.remove(templateModel, {
            silent: true
          });

          if (options.onSuccess) {
            options.onSuccess(response);
          }
        }
      });
    };

    dialog.show();
  };

  this.importTemplate = function (model) {
    var args = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
    elementorCommon.helpers.softDeprecated('importTemplate', '2.8.0', "$e.run( 'library/insert-template' )");
    args.model = model;
    $e.run('library/insert-template', args);
  };

  this.saveTemplate = function (type, data) {
    var templateType = templateTypes[type];

    _.extend(data, {
      source: 'local',
      type: type
    });

    if (templateType.prepareSavedData) {
      data = templateType.prepareSavedData(data);
    }

    data.content = (0, _stringify.default)(data.content);
    var ajaxParams = {
      data: data
    };

    if (templateType.ajaxParams) {
      _.extend(ajaxParams, templateType.ajaxParams);
    }

    elementorCommon.ajax.addRequest('save_template', ajaxParams);
  };

  this.requestTemplateContent = function (source, id, ajaxOptions) {
    var options = {
      unique_id: id,
      data: {
        source: source,
        edit_mode: true,
        display: true,
        template_id: id
      }
    };

    if (ajaxOptions) {
      jQuery.extend(true, options, ajaxOptions);
    }

    return elementorCommon.ajax.addRequest('get_template_data', options);
  };

  this.markAsFavorite = function (templateModel, favorite) {
    var options = {
      data: {
        source: templateModel.get('source'),
        template_id: templateModel.get('template_id'),
        favorite: favorite
      }
    };
    return elementorCommon.ajax.addRequest('mark_template_as_favorite', options);
  };

  this.getDeleteDialog = function () {
    if (!deleteDialog) {
      deleteDialog = elementorCommon.dialogsManager.createWidget('confirm', {
        id: 'elementor-template-library-delete-dialog',
        headerMessage: __('Delete Template', 'elementor'),
        message: __('Are you sure you want to delete this template?', 'elementor'),
        strings: {
          confirm: __('Delete', 'elementor')
        }
      });
    }

    return deleteDialog;
  };

  this.getErrorDialog = function () {
    if (!errorDialog) {
      errorDialog = elementorCommon.dialogsManager.createWidget('alert', {
        id: 'elementor-template-library-error-dialog',
        headerMessage: __('An error occurred', 'elementor')
      });
    }

    return errorDialog;
  };

  this.getTemplatesCollection = function () {
    return templatesCollection;
  };

  this.getConfig = function (item) {
    if (item) {
      return config[item] ? config[item] : {};
    }

    return config;
  };

  this.requestLibraryData = function (options) {
    if (templatesCollection && !options.forceUpdate) {
      if (options.onUpdate) {
        options.onUpdate();
      }

      return;
    }

    if (options.onBeforeUpdate) {
      options.onBeforeUpdate();
    }

    var ajaxOptions = {
      data: {},
      success: function success(data) {
        templatesCollection = new TemplateLibraryCollection(data.templates);

        if (data.config) {
          config = data.config;
        }

        if (options.onUpdate) {
          options.onUpdate();
        }
      }
    };

    if (options.forceSync) {
      ajaxOptions.data.sync = true;
    }

    elementorCommon.ajax.addRequest('get_library_data', ajaxOptions);
  };

  this.getFilter = function (name) {
    return elementor.channels.templates.request('filter:' + name);
  };

  this.setFilter = function (name, value, silent) {
    elementor.channels.templates.reply('filter:' + name, value);

    if (!silent) {
      elementor.channels.templates.trigger('filter:change');
    }
  };

  this.getFilterTerms = function (termName) {
    if (termName) {
      return filterTerms[termName];
    }

    return filterTerms;
  };

  this.setScreen = function (args) {
    elementor.channels.templates.stopReplying();
    self.setFilter('source', args.source, true);
    self.setFilter('type', args.type, true);
    self.setFilter('subtype', args.subtype, true);
    self.showTemplates();
  };

  this.loadTemplates = function (_onUpdate) {
    self.requestLibraryData({
      onBeforeUpdate: self.layout.showLoadingView.bind(self.layout),
      onUpdate: function onUpdate() {
        self.layout.hideLoadingView();

        if (_onUpdate) {
          _onUpdate();
        }
      }
    });
  };

  this.showTemplates = function () {
    // The tabs should exist in DOM on loading.
    self.layout.setHeaderDefaultParts();
    self.loadTemplates(function () {
      var templatesToShow = self.filterTemplates();
      self.layout.showTemplatesView(new TemplateLibraryCollection(templatesToShow));
    });
  };

  this.filterTemplates = function () {
    var activeSource = self.getFilter('source');
    return templatesCollection.filter(function (model) {
      if (activeSource !== model.get('source')) {
        return false;
      }

      var typeInfo = templateTypes[model.get('type')];
      return !typeInfo || false !== typeInfo.showInLibrary;
    });
  };

  this.showErrorDialog = function (errorMessage) {
    if ('object' === (0, _typeof2.default)(errorMessage)) {
      var message = '';

      _.each(errorMessage, function (error) {
        if (!(error !== null && error !== void 0 && error.message)) {
          return;
        }

        message += '<div>' + error.message + '.</div>';
      });

      errorMessage = message;
    } else if (errorMessage) {
      errorMessage += '.';
    }

    if (errorMessage) {
      errorMessage = __('The following error(s) occurred while processing the request:', 'elementor') + '<div id="elementor-template-library-error-info">' + errorMessage + '</div>';
    } else {
      errorMessage = __('Please try again.', 'elementor');
    }

    self.getErrorDialog().setMessage(errorMessage).show();
  };
};

module.exports = new TemplateLibraryManager();

/***/ }),

/***/ "../assets/dev/js/editor/components/template-library/models/template.js":
/*!******************************************************************************!*\
  !*** ../assets/dev/js/editor/components/template-library/models/template.js ***!
  \******************************************************************************/
/***/ ((module) => {

"use strict";


module.exports = Backbone.Model.extend({
  defaults: {
    template_id: 0,
    title: '',
    source: '',
    type: '',
    subtype: '',
    author: '',
    thumbnail: '',
    url: '',
    export_link: '',
    tags: []
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/components/template-library/views/library-layout.js":
/*!***********************************************************************************!*\
  !*** ../assets/dev/js/editor/components/template-library/views/library-layout.js ***!
  \***********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

var TemplateLibraryHeaderActionsView = __webpack_require__(/*! elementor-templates/views/parts/header-parts/actions */ "../assets/dev/js/editor/components/template-library/views/parts/header-parts/actions.js"),
    TemplateLibraryHeaderMenuView = __webpack_require__(/*! elementor-templates/views/parts/header-parts/menu */ "../assets/dev/js/editor/components/template-library/views/parts/header-parts/menu.js"),
    TemplateLibraryHeaderPreviewView = __webpack_require__(/*! elementor-templates/views/parts/header-parts/preview */ "../assets/dev/js/editor/components/template-library/views/parts/header-parts/preview.js"),
    TemplateLibraryHeaderBackView = __webpack_require__(/*! elementor-templates/views/parts/header-parts/back */ "../assets/dev/js/editor/components/template-library/views/parts/header-parts/back.js"),
    TemplateLibraryCollectionView = __webpack_require__(/*! elementor-templates/views/parts/templates */ "../assets/dev/js/editor/components/template-library/views/parts/templates.js"),
    TemplateLibrarySaveTemplateView = __webpack_require__(/*! elementor-templates/views/parts/save-template */ "../assets/dev/js/editor/components/template-library/views/parts/save-template.js"),
    TemplateLibraryImportView = __webpack_require__(/*! elementor-templates/views/parts/import */ "../assets/dev/js/editor/components/template-library/views/parts/import.js"),
    TemplateLibraryConnectView = __webpack_require__(/*! elementor-templates/views/parts/connect */ "../assets/dev/js/editor/components/template-library/views/parts/connect.js"),
    TemplateLibraryPreviewView = __webpack_require__(/*! elementor-templates/views/parts/preview */ "../assets/dev/js/editor/components/template-library/views/parts/preview.js");

module.exports = elementorModules.common.views.modal.Layout.extend({
  getModalOptions: function getModalOptions() {
    return {
      id: 'elementor-template-library-modal'
    };
  },
  getLogoOptions: function getLogoOptions() {
    return {
      title: __('Library', 'elementor'),
      click: function click() {
        $e.run('library/open', {
          toDefault: true
        });
      }
    };
  },
  getTemplateActionButton: function getTemplateActionButton(templateData) {
    var subscriptionPlans = elementor.config.library_connect.subscription_plans,
        baseAccessLevel = elementor.config.library_connect.base_access_level;
    var viewId = '#tmpl-elementor-template-library-' + (baseAccessLevel !== templateData.accessLevel ? 'upgrade-plan-button' : 'insert-button');
    viewId = elementor.hooks.applyFilters('elementor/editor/template-library/template/action-button', viewId, templateData);
    var template = Marionette.TemplateCache.get(viewId); // In case the access level of the template is not one of the defined.
    // it will find the next access level that was defined.
    // Example: access_level = 15, and access_level 15 is not exists in the plans the button will be "Go Expert" which is 20

    var closestAccessLevel = (0, _keys.default)(subscriptionPlans).sort().find(function (accessLevel) {
      return accessLevel >= templateData.accessLevel;
    });
    var subscriptionPlan = subscriptionPlans[closestAccessLevel];
    return Marionette.Renderer.render(template, {
      promotionText: "Go ".concat(subscriptionPlan.label),
      promotionLink: subscriptionPlan.promotion_url
    });
  },
  setHeaderDefaultParts: function setHeaderDefaultParts() {
    var headerView = this.getHeaderView();
    headerView.tools.show(new TemplateLibraryHeaderActionsView());
    headerView.menuArea.show(new TemplateLibraryHeaderMenuView());
    this.showLogo();
  },
  showTemplatesView: function showTemplatesView(templatesCollection) {
    this.modalContent.show(new TemplateLibraryCollectionView({
      collection: templatesCollection
    }));
  },
  showImportView: function showImportView() {
    var headerView = this.getHeaderView();
    headerView.menuArea.reset();
    this.modalContent.show(new TemplateLibraryImportView());
    headerView.logoArea.show(new TemplateLibraryHeaderBackView());
  },
  showConnectView: function showConnectView(args) {
    this.getHeaderView().menuArea.reset();
    this.modalContent.show(new TemplateLibraryConnectView(args));
  },
  showSaveTemplateView: function showSaveTemplateView(elementModel) {
    this.getHeaderView().menuArea.reset();
    this.modalContent.show(new TemplateLibrarySaveTemplateView({
      model: elementModel
    }));
  },
  showPreviewView: function showPreviewView(templateModel) {
    this.modalContent.show(new TemplateLibraryPreviewView({
      url: templateModel.get('url')
    }));
    var headerView = this.getHeaderView();
    headerView.menuArea.reset();
    headerView.tools.show(new TemplateLibraryHeaderPreviewView({
      model: templateModel
    }));
    headerView.logoArea.show(new TemplateLibraryHeaderBackView());
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/components/template-library/views/parts/connect.js":
/*!**********************************************************************************!*\
  !*** ../assets/dev/js/editor/components/template-library/views/parts/connect.js ***!
  \**********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


module.exports = Marionette.ItemView.extend({
  template: '#tmpl-elementor-template-library-connect',
  id: 'elementor-template-library-connect',
  ui: {
    connect: '#elementor-template-library-connect__button',
    thumbnails: '#elementor-template-library-connect-thumbnails'
  },
  templateHelpers: function templateHelpers() {
    return this.getOption('texts');
  },
  onRender: function onRender() {
    var _this = this;

    this.ui.connect.elementorConnect({
      UTM: function UTM() {
        return "&utm_source=editor-panel&utm_medium=wp-dash&utm_campaign=insert-".concat(_this.model.get('type'));
      },
      success: function success() {
        elementor.config.library_connect.is_connected = true; // If is connecting during insert template.

        if (_this.getOption('model')) {
          $e.run('library/insert-template', {
            model: _this.getOption('model')
          });
        } else {
          $e.run('library/close');
          elementor.notifications.showToast({
            message: __('Connected successfully', 'elementor')
          });
        }
      },
      error: function error() {
        elementor.config.library_connect.is_connected = false;
      }
    });
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/components/template-library/views/parts/header-parts/actions.js":
/*!***********************************************************************************************!*\
  !*** ../assets/dev/js/editor/components/template-library/views/parts/header-parts/actions.js ***!
  \***********************************************************************************************/
/***/ ((module) => {

"use strict";


module.exports = Marionette.ItemView.extend({
  template: '#tmpl-elementor-template-library-header-actions',
  id: 'elementor-template-library-header-actions',
  ui: {
    import: '#elementor-template-library-header-import i',
    sync: '#elementor-template-library-header-sync i',
    save: '#elementor-template-library-header-save i'
  },
  events: {
    'click @ui.import': 'onImportClick',
    'click @ui.sync': 'onSyncClick',
    'click @ui.save': 'onSaveClick'
  },
  onImportClick: function onImportClick() {
    $e.route('library/import');
  },
  onSyncClick: function onSyncClick() {
    var self = this;
    self.ui.sync.addClass('eicon-animation-spin');
    elementor.templates.requestLibraryData({
      onUpdate: function onUpdate() {
        self.ui.sync.removeClass('eicon-animation-spin');
        $e.routes.refreshContainer('library');
      },
      forceUpdate: true,
      forceSync: true
    });
  },
  onSaveClick: function onSaveClick() {
    $e.route('library/save-template');
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/components/template-library/views/parts/header-parts/back.js":
/*!********************************************************************************************!*\
  !*** ../assets/dev/js/editor/components/template-library/views/parts/header-parts/back.js ***!
  \********************************************************************************************/
/***/ ((module) => {

"use strict";


module.exports = Marionette.ItemView.extend({
  template: '#tmpl-elementor-template-library-header-back',
  id: 'elementor-template-library-header-preview-back',
  events: {
    click: 'onClick'
  },
  onClick: function onClick() {
    $e.routes.restoreState('library');
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/components/template-library/views/parts/header-parts/menu.js":
/*!********************************************************************************************!*\
  !*** ../assets/dev/js/editor/components/template-library/views/parts/header-parts/menu.js ***!
  \********************************************************************************************/
/***/ ((module) => {

"use strict";


module.exports = Marionette.ItemView.extend({
  template: '#tmpl-elementor-template-library-header-menu',
  id: 'elementor-template-library-header-menu',
  templateHelpers: function templateHelpers() {
    return {
      tabs: $e.components.get('library').getTabs()
    };
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/components/template-library/views/parts/header-parts/preview.js":
/*!***********************************************************************************************!*\
  !*** ../assets/dev/js/editor/components/template-library/views/parts/header-parts/preview.js ***!
  \***********************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var TemplateLibraryInsertTemplateBehavior = __webpack_require__(/*! elementor-templates/behaviors/insert-template */ "../assets/dev/js/editor/components/template-library/behaviors/insert-template.js");

module.exports = Marionette.ItemView.extend({
  template: '#tmpl-elementor-template-library-header-preview',
  id: 'elementor-template-library-header-preview',
  behaviors: {
    insertTemplate: {
      behaviorClass: TemplateLibraryInsertTemplateBehavior
    }
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/components/template-library/views/parts/import.js":
/*!*********************************************************************************!*\
  !*** ../assets/dev/js/editor/components/template-library/views/parts/import.js ***!
  \*********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

__webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");

var TemplateLibraryImportView;
TemplateLibraryImportView = Marionette.ItemView.extend({
  template: '#tmpl-elementor-template-library-import',
  id: 'elementor-template-library-import',
  ui: {
    uploadForm: '#elementor-template-library-import-form',
    fileInput: '#elementor-template-library-import-form-input'
  },
  events: {
    'change @ui.fileInput': 'onFileInputChange'
  },
  droppedFiles: null,
  submitForm: function submitForm() {
    var _this = this;

    var file;

    if (this.droppedFiles) {
      file = this.droppedFiles[0];
      this.droppedFiles = null;
    } else {
      file = this.ui.fileInput[0].files[0];
      this.ui.uploadForm[0].reset();
    }

    var fileReader = new FileReader();

    fileReader.onload = function (event) {
      return _this.importTemplate(file.name, event.target.result.replace(/^[^,]+,/, ''));
    };

    fileReader.readAsDataURL(file);
  },
  importTemplate: function importTemplate(fileName, fileData) {
    var layout = elementor.templates.layout;
    var options = {
      data: {
        fileName: fileName,
        fileData: fileData
      },
      success: function success(successData) {
        elementor.templates.getTemplatesCollection().add(successData);
        $e.route('library/templates/my-templates');
      },
      error: function error(errorData) {
        elementor.templates.showErrorDialog(errorData);
        layout.showImportView();
      },
      complete: function complete() {
        layout.hideLoadingView();
      }
    };
    elementorCommon.ajax.addRequest('import_template', options);
    layout.showLoadingView();
  },
  onRender: function onRender() {
    this.ui.uploadForm.on({
      'drag dragstart dragend dragover dragenter dragleave drop': this.onFormActions.bind(this),
      dragenter: this.onFormDragEnter.bind(this),
      'dragleave drop': this.onFormDragLeave.bind(this),
      drop: this.onFormDrop.bind(this)
    });
  },
  onFormActions: function onFormActions(event) {
    event.preventDefault();
    event.stopPropagation();
  },
  onFormDragEnter: function onFormDragEnter() {
    this.ui.uploadForm.addClass('elementor-drag-over');
  },
  onFormDragLeave: function onFormDragLeave(event) {
    if (jQuery(event.relatedTarget).closest(this.ui.uploadForm).length) {
      return;
    }

    this.ui.uploadForm.removeClass('elementor-drag-over');
  },
  onFormDrop: function onFormDrop(event) {
    this.droppedFiles = event.originalEvent.dataTransfer.files;
    this.submitForm();
  },
  onFileInputChange: function onFileInputChange() {
    this.submitForm();
  }
});
module.exports = TemplateLibraryImportView;

/***/ }),

/***/ "../assets/dev/js/editor/components/template-library/views/parts/preview.js":
/*!**********************************************************************************!*\
  !*** ../assets/dev/js/editor/components/template-library/views/parts/preview.js ***!
  \**********************************************************************************/
/***/ ((module) => {

"use strict";


var TemplateLibraryPreviewView;
TemplateLibraryPreviewView = Marionette.ItemView.extend({
  template: '#tmpl-elementor-template-library-preview',
  id: 'elementor-template-library-preview',
  ui: {
    iframe: '> iframe'
  },
  onRender: function onRender() {
    this.ui.iframe.attr('src', this.getOption('url'));
  }
});
module.exports = TemplateLibraryPreviewView;

/***/ }),

/***/ "../assets/dev/js/editor/components/template-library/views/parts/save-template.js":
/*!****************************************************************************************!*\
  !*** ../assets/dev/js/editor/components/template-library/views/parts/save-template.js ***!
  \****************************************************************************************/
/***/ ((module) => {

"use strict";


var TemplateLibrarySaveTemplateView;
TemplateLibrarySaveTemplateView = Marionette.ItemView.extend({
  id: 'elementor-template-library-save-template',
  template: '#tmpl-elementor-template-library-save-template',
  ui: {
    form: '#elementor-template-library-save-template-form',
    submitButton: '#elementor-template-library-save-template-submit'
  },
  events: {
    'submit @ui.form': 'onFormSubmit'
  },
  getSaveType: function getSaveType() {
    var type;

    if (this.model) {
      type = this.model.get('elType');
    } else if (elementor.config.document.library && elementor.config.document.library.save_as_same_type) {
      type = elementor.config.document.type;
    } else {
      type = 'page';
    }

    return type;
  },
  templateHelpers: function templateHelpers() {
    var saveType = this.getSaveType(),
        templateType = elementor.templates.getTemplateTypes(saveType);
    return templateType.saveDialog;
  },
  onFormSubmit: function onFormSubmit(event) {
    event.preventDefault();
    var formData = this.ui.form.elementorSerializeObject(),
        saveType = this.getSaveType(),
        JSONParams = {
      remove: ['default']
    };
    formData.content = this.model ? [this.model.toJSON(JSONParams)] : elementor.elements.toJSON(JSONParams);
    this.ui.submitButton.addClass('elementor-button-state');
    elementor.templates.saveTemplate(saveType, formData);
  }
});
module.exports = TemplateLibrarySaveTemplateView;

/***/ }),

/***/ "../assets/dev/js/editor/components/template-library/views/parts/templates-empty.js":
/*!******************************************************************************************!*\
  !*** ../assets/dev/js/editor/components/template-library/views/parts/templates-empty.js ***!
  \******************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var TemplateLibraryTemplatesEmptyView;
TemplateLibraryTemplatesEmptyView = Marionette.ItemView.extend({
  id: 'elementor-template-library-templates-empty',
  template: '#tmpl-elementor-template-library-templates-empty',
  ui: {
    title: '.elementor-template-library-blank-title',
    message: '.elementor-template-library-blank-message'
  },
  modesStrings: {
    empty: {
      title: __('Haven’t Saved Templates Yet?', 'elementor'),
      message: __('This is where your templates should be. Design it. Save it. Reuse it.', 'elementor')
    },
    noResults: {
      title: __('No Results Found', 'elementor'),
      message: __('Please make sure your search is spelled correctly or try a different words.', 'elementor')
    },
    noFavorites: {
      title: __('No Favorite Templates', 'elementor'),
      message: __('You can mark any pre-designed template as a favorite.', 'elementor')
    }
  },
  getCurrentMode: function getCurrentMode() {
    if (elementor.templates.getFilter('text')) {
      return 'noResults';
    }

    if (elementor.templates.getFilter('favorite')) {
      return 'noFavorites';
    }

    return 'empty';
  },
  onRender: function onRender() {
    var modeStrings = this.modesStrings[this.getCurrentMode()];
    this.ui.title.html(modeStrings.title);
    this.ui.message.html(modeStrings.message);
  }
});
module.exports = TemplateLibraryTemplatesEmptyView;

/***/ }),

/***/ "../assets/dev/js/editor/components/template-library/views/parts/templates.js":
/*!************************************************************************************!*\
  !*** ../assets/dev/js/editor/components/template-library/views/parts/templates.js ***!
  \************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _select = _interopRequireDefault(__webpack_require__(/*! elementor-editor-utils/select2.js */ "../assets/dev/js/editor/utils/select2.js"));

var TemplateLibraryTemplateLocalView = __webpack_require__(/*! elementor-templates/views/template/local */ "../assets/dev/js/editor/components/template-library/views/template/local.js"),
    TemplateLibraryTemplateRemoteView = __webpack_require__(/*! elementor-templates/views/template/remote */ "../assets/dev/js/editor/components/template-library/views/template/remote.js"),
    TemplateLibraryCollectionView;

TemplateLibraryCollectionView = Marionette.CompositeView.extend({
  template: '#tmpl-elementor-template-library-templates',
  id: 'elementor-template-library-templates',
  childViewContainer: '#elementor-template-library-templates-container',
  reorderOnSort: true,
  emptyView: function emptyView() {
    var EmptyView = __webpack_require__(/*! elementor-templates/views/parts/templates-empty */ "../assets/dev/js/editor/components/template-library/views/parts/templates-empty.js");

    return new EmptyView();
  },
  ui: {
    textFilter: '#elementor-template-library-filter-text',
    selectFilter: '.elementor-template-library-filter-select',
    myFavoritesFilter: '#elementor-template-library-filter-my-favorites',
    orderInputs: '.elementor-template-library-order-input',
    orderLabels: 'label.elementor-template-library-order-label'
  },
  events: {
    'input @ui.textFilter': 'onTextFilterInput',
    'change @ui.selectFilter': 'onSelectFilterChange',
    'change @ui.myFavoritesFilter': 'onMyFavoritesFilterChange',
    'mousedown @ui.orderLabels': 'onOrderLabelsClick'
  },
  comparators: {
    title: function title(model) {
      return model.get('title').toLowerCase();
    },
    popularityIndex: function popularityIndex(model) {
      var popularityIndex = model.get('popularityIndex');

      if (!popularityIndex) {
        popularityIndex = model.get('date');
      }

      return -popularityIndex;
    },
    trendIndex: function trendIndex(model) {
      var trendIndex = model.get('trendIndex');

      if (!trendIndex) {
        trendIndex = model.get('date');
      }

      return -trendIndex;
    }
  },
  getChildView: function getChildView(childModel) {
    if ('remote' === childModel.get('source')) {
      return TemplateLibraryTemplateRemoteView;
    }

    return TemplateLibraryTemplateLocalView;
  },
  initialize: function initialize() {
    this.listenTo(elementor.channels.templates, 'filter:change', this._renderChildren);
  },
  filter: function filter(childModel) {
    var filterTerms = elementor.templates.getFilterTerms(),
        passingFilter = true;
    jQuery.each(filterTerms, function (filterTermName) {
      var filterValue = elementor.templates.getFilter(filterTermName);

      if (!filterValue) {
        return;
      }

      if (this.callback) {
        var callbackResult = this.callback.call(childModel, filterValue);

        if (!callbackResult) {
          passingFilter = false;
        }

        return callbackResult;
      }

      var filterResult = filterValue === childModel.get(filterTermName);

      if (!filterResult) {
        passingFilter = false;
      }

      return filterResult;
    });
    return passingFilter;
  },
  order: function order(by, reverseOrder) {
    var comparator = this.comparators[by] || by;

    if (reverseOrder) {
      comparator = this.reverseOrder(comparator);
    }

    this.collection.comparator = comparator;
    this.collection.sort();
  },
  reverseOrder: function reverseOrder(comparator) {
    if ('function' !== typeof comparator) {
      var comparatorValue = comparator;

      comparator = function comparator(model) {
        return model.get(comparatorValue);
      };
    }

    return function (left, right) {
      var l = comparator(left),
          r = comparator(right);

      if (undefined === l) {
        return -1;
      }

      if (undefined === r) {
        return 1;
      }

      if (l < r) {
        return 1;
      }

      if (l > r) {
        return -1;
      }

      return 0;
    };
  },
  addSourceData: function addSourceData() {
    var isEmpty = this.children.isEmpty();
    this.$el.attr('data-template-source', isEmpty ? 'empty' : elementor.templates.getFilter('source'));
  },
  setFiltersUI: function setFiltersUI() {
    if (!this.select2Instance) {
      var $filters = this.$(this.ui.selectFilter),
          select2Options = {
        placeholder: __('Category', 'elementor'),
        allowClear: true,
        width: 150,
        dropdownParent: this.$el
      };
      this.select2Instance = new _select.default({
        $element: $filters,
        options: select2Options
      });
    }
  },
  setMasonrySkin: function setMasonrySkin() {
    var masonry = new elementorModules.utils.Masonry({
      container: this.$childViewContainer,
      items: this.$childViewContainer.children()
    });
    this.$childViewContainer.imagesLoaded(masonry.run.bind(masonry));
  },
  toggleFilterClass: function toggleFilterClass() {
    this.$el.toggleClass('elementor-templates-filter-active', !!(elementor.templates.getFilter('text') || elementor.templates.getFilter('favorite')));
  },
  isPageOrLandingPageTemplates: function isPageOrLandingPageTemplates() {
    var templatesType = elementor.templates.getFilter('type');
    return 'page' === templatesType || 'lp' === templatesType;
  },
  onRender: function onRender() {
    if ('remote' === elementor.templates.getFilter('source') && 'page' !== elementor.templates.getFilter('type')) {
      this.setFiltersUI();
    }
  },
  onRenderCollection: function onRenderCollection() {
    this.addSourceData();
    this.toggleFilterClass();

    if ('remote' === elementor.templates.getFilter('source') && !this.isPageOrLandingPageTemplates()) {
      this.setMasonrySkin();
    }
  },
  onBeforeRenderEmpty: function onBeforeRenderEmpty() {
    this.addSourceData();
  },
  onTextFilterInput: function onTextFilterInput() {
    elementor.templates.setFilter('text', this.ui.textFilter.val());
  },
  onSelectFilterChange: function onSelectFilterChange(event) {
    var $select = jQuery(event.currentTarget),
        filterName = $select.data('elementor-filter');
    elementor.templates.setFilter(filterName, $select.val());
  },
  onMyFavoritesFilterChange: function onMyFavoritesFilterChange() {
    elementor.templates.setFilter('favorite', this.ui.myFavoritesFilter[0].checked);
  },
  onOrderLabelsClick: function onOrderLabelsClick(event) {
    var $clickedInput = jQuery(event.currentTarget.control),
        toggle;

    if (!$clickedInput[0].checked) {
      toggle = 'asc' !== $clickedInput.data('default-ordering-direction');
    }

    $clickedInput.toggleClass('elementor-template-library-order-reverse', toggle);
    this.order($clickedInput.val(), $clickedInput.hasClass('elementor-template-library-order-reverse'));
  }
});
module.exports = TemplateLibraryCollectionView;

/***/ }),

/***/ "../assets/dev/js/editor/components/template-library/views/template/base.js":
/*!**********************************************************************************!*\
  !*** ../assets/dev/js/editor/components/template-library/views/template/base.js ***!
  \**********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var TemplateLibraryInsertTemplateBehavior = __webpack_require__(/*! elementor-templates/behaviors/insert-template */ "../assets/dev/js/editor/components/template-library/behaviors/insert-template.js"),
    TemplateLibraryTemplateView;

TemplateLibraryTemplateView = Marionette.ItemView.extend({
  className: function className() {
    var classes = 'elementor-template-library-template',
        source = this.model.get('source');
    classes += ' elementor-template-library-template-' + source;

    if ('remote' === source) {
      classes += ' elementor-template-library-template-' + this.model.get('type');
    }

    if (elementor.config.library_connect.base_access_level !== this.model.get('accessLevel')) {
      classes += ' elementor-template-library-pro-template';
    }

    return classes;
  },
  attributes: function attributes() {
    var subscriptionPlan = elementor.config.library_connect.subscription_plans[this.model.get('accessLevel')];

    if (!subscriptionPlan) {
      return {};
    }

    return {
      style: "--elementor-template-library-subscription-plan-label: \"".concat(subscriptionPlan.label, "\";--elementor-template-library-subscription-plan-color: ").concat(subscriptionPlan.color, ";")
    };
  },
  ui: function ui() {
    return {
      previewButton: '.elementor-template-library-template-preview'
    };
  },
  events: function events() {
    return {
      'click @ui.previewButton': 'onPreviewButtonClick'
    };
  },
  behaviors: {
    insertTemplate: {
      behaviorClass: TemplateLibraryInsertTemplateBehavior
    }
  }
});
module.exports = TemplateLibraryTemplateView;

/***/ }),

/***/ "../assets/dev/js/editor/components/template-library/views/template/local.js":
/*!***********************************************************************************!*\
  !*** ../assets/dev/js/editor/components/template-library/views/template/local.js ***!
  \***********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var TemplateLibraryTemplateView = __webpack_require__(/*! elementor-templates/views/template/base */ "../assets/dev/js/editor/components/template-library/views/template/base.js"),
    TemplateLibraryTemplateLocalView;

TemplateLibraryTemplateLocalView = TemplateLibraryTemplateView.extend({
  template: '#tmpl-elementor-template-library-template-local',
  ui: function ui() {
    return _.extend(TemplateLibraryTemplateView.prototype.ui.apply(this, arguments), {
      deleteButton: '.elementor-template-library-template-delete',
      morePopup: '.elementor-template-library-template-more',
      toggleMore: '.elementor-template-library-template-more-toggle',
      toggleMoreIcon: '.elementor-template-library-template-more-toggle i'
    });
  },
  events: function events() {
    return _.extend(TemplateLibraryTemplateView.prototype.events.apply(this, arguments), {
      'click @ui.deleteButton': 'onDeleteButtonClick',
      'click @ui.toggleMore': 'onToggleMoreClick'
    });
  },
  onDeleteButtonClick: function onDeleteButtonClick() {
    var toggleMoreIcon = this.ui.toggleMoreIcon;
    elementor.templates.deleteTemplate(this.model, {
      onConfirm: function onConfirm() {
        toggleMoreIcon.removeClass('eicon-ellipsis-h').addClass('eicon-loading eicon-animation-spin');
      },
      onSuccess: function onSuccess() {
        elementor.templates.showTemplates();
      }
    });
  },
  onToggleMoreClick: function onToggleMoreClick() {
    this.ui.morePopup.show();
  },
  onPreviewButtonClick: function onPreviewButtonClick() {
    open(this.model.get('url'), '_blank');
  }
});
module.exports = TemplateLibraryTemplateLocalView;

/***/ }),

/***/ "../assets/dev/js/editor/components/template-library/views/template/remote.js":
/*!************************************************************************************!*\
  !*** ../assets/dev/js/editor/components/template-library/views/template/remote.js ***!
  \************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var TemplateLibraryTemplateView = __webpack_require__(/*! elementor-templates/views/template/base */ "../assets/dev/js/editor/components/template-library/views/template/base.js"),
    TemplateLibraryTemplateRemoteView;

TemplateLibraryTemplateRemoteView = TemplateLibraryTemplateView.extend({
  template: '#tmpl-elementor-template-library-template-remote',
  ui: function ui() {
    return jQuery.extend(TemplateLibraryTemplateView.prototype.ui.apply(this, arguments), {
      favoriteCheckbox: '.elementor-template-library-template-favorite-input'
    });
  },
  events: function events() {
    return jQuery.extend(TemplateLibraryTemplateView.prototype.events.apply(this, arguments), {
      'change @ui.favoriteCheckbox': 'onFavoriteCheckboxChange'
    });
  },
  onPreviewButtonClick: function onPreviewButtonClick() {
    $e.route('library/preview', {
      model: this.model
    });
  },
  onFavoriteCheckboxChange: function onFavoriteCheckboxChange() {
    var isFavorite = this.ui.favoriteCheckbox[0].checked;
    this.model.set('favorite', isFavorite);
    elementor.templates.markAsFavorite(this.model, isFavorite);

    if (!isFavorite && elementor.templates.getFilter('favorite')) {
      elementor.channels.templates.trigger('filter:change');
    }
  }
});
module.exports = TemplateLibraryTemplateRemoteView;

/***/ }),

/***/ "../assets/dev/js/editor/components/validator/base.js":
/*!************************************************************!*\
  !*** ../assets/dev/js/editor/components/validator/base.js ***!
  \************************************************************/
/***/ ((module) => {

"use strict";


module.exports = elementorModules.Module.extend({
  errors: [],
  __construct: function __construct(settings) {
    var customValidationMethod = settings.customValidationMethod;

    if (customValidationMethod) {
      this.validationMethod = customValidationMethod;
    }
  },
  getDefaultSettings: function getDefaultSettings() {
    return {
      validationTerms: {}
    };
  },
  isValid: function isValid() {
    var validationErrors = this.validationMethod.apply(this, arguments);

    if (validationErrors.length) {
      this.errors = validationErrors;
      return false;
    }

    return true;
  },
  validationMethod: function validationMethod(newValue) {
    var validationTerms = this.getSettings('validationTerms'),
        errors = [];

    if (validationTerms.required) {
      if (!('' + newValue).length) {
        errors.push('Required value is empty');
      }
    }

    return errors;
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/components/validator/breakpoint.js":
/*!******************************************************************!*\
  !*** ../assets/dev/js/editor/components/validator/breakpoint.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

__webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var NumberValidator = __webpack_require__(/*! elementor-validator/number */ "../assets/dev/js/editor/components/validator/number.js");

var BreakpointValidator = /*#__PURE__*/function (_NumberValidator) {
  (0, _inherits2.default)(BreakpointValidator, _NumberValidator);

  var _super = (0, _createSuper2.default)(BreakpointValidator);

  function BreakpointValidator() {
    (0, _classCallCheck2.default)(this, BreakpointValidator);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(BreakpointValidator, [{
    key: "getDefaultSettings",
    value: function getDefaultSettings() {
      return {
        validationTerms: {
          // Max width we allow in general
          max: 5120
        }
      };
    }
    /**
     * Get Panel Active Breakpoints
     *
     * Since the active kit used in the Site Settings panel could be a draft, we need to use the panel's active
     * breakpoints settings and not the elementorFrontend.config values (which come from the DB).
     *
     * @returns Object
     */

  }, {
    key: "getPanelActiveBreakpoints",
    value: function getPanelActiveBreakpoints() {
      var panelBreakpoints = elementor.documents.currentDocument.config.settings.settings.active_breakpoints.map(function (breakpointName) {
        return breakpointName.replace('viewport_', '');
      }),
          panelActiveBreakpoints = {};
      panelBreakpoints.forEach(function (breakpointName) {
        panelActiveBreakpoints[breakpointName] = elementorFrontend.config.responsive.breakpoints[breakpointName];
      });
      return panelActiveBreakpoints;
    }
  }, {
    key: "initBreakpointProperties",
    value: function initBreakpointProperties() {
      var _activeBreakpoints$br, _activeBreakpoints$br2;

      var validationTerms = this.getSettings('validationTerms'),
          activeBreakpoints = this.getPanelActiveBreakpoints(),
          breakpointKeys = (0, _keys.default)(activeBreakpoints);
      this.breakpointIndex = breakpointKeys.indexOf(validationTerms.breakpointName);
      this.topBreakpoint = (_activeBreakpoints$br = activeBreakpoints[breakpointKeys[this.breakpointIndex + 1]]) === null || _activeBreakpoints$br === void 0 ? void 0 : _activeBreakpoints$br.value;
      this.bottomBreakpoint = (_activeBreakpoints$br2 = activeBreakpoints[breakpointKeys[this.breakpointIndex - 1]]) === null || _activeBreakpoints$br2 === void 0 ? void 0 : _activeBreakpoints$br2.value;
    }
  }, {
    key: "validationMethod",
    value: function validationMethod(newValue) {
      var validationTerms = this.getSettings('validationTerms'),
          errors = NumberValidator.prototype.validationMethod.call(this, newValue); // Validate both numeric and empty values, since breakpoints utilize default values when empty.

      if (_.isFinite(newValue) || '' === newValue) {
        if (!this.validateMinMaxForBreakpoint(newValue, validationTerms)) {
          errors.push('Value is not between the breakpoints above or under the edited breakpoint');
        }
      }

      return errors;
    }
  }, {
    key: "validateMinMaxForBreakpoint",
    value: function validateMinMaxForBreakpoint(newValue, validationTerms) {
      var breakpointDefaultValue = elementorFrontend.config.responsive.breakpoints[validationTerms.breakpointName].default_value;
      var isValid = true;
      this.initBreakpointProperties(); // Since the following comparison is <=, allow usage of the 320px value for the mobile breakpoint.

      if ('mobile' === validationTerms.breakpointName && 320 === this.bottomBreakpoint) {
        this.bottomBreakpoint -= 1;
      } // If there is a breakpoint below the currently edited breakpoint


      if (this.bottomBreakpoint) {
        // Check that the new value is not under the bottom breakpoint's value.
        if ('' !== newValue && newValue <= this.bottomBreakpoint) {
          isValid = false;
        } // If the new value is empty, check that the default breakpoint value is not below the bottom breakpoint.


        if ('' === newValue && breakpointDefaultValue <= this.bottomBreakpoint) {
          isValid = false;
        }
      } // If there is a breakpoint above the currently edited breakpoint.


      if (this.topBreakpoint) {
        // Check that the value is not above the top breakpoint's value.
        if ('' !== newValue && newValue >= this.topBreakpoint) {
          isValid = false;
        } // If the new value is empty, check that the default breakpoint value is not above the top breakpoint.


        if ('' === newValue && breakpointDefaultValue >= this.topBreakpoint) {
          isValid = false;
        }
      }

      return isValid;
    }
  }]);
  return BreakpointValidator;
}(NumberValidator);

exports.default = BreakpointValidator;

/***/ }),

/***/ "../assets/dev/js/editor/components/validator/number.js":
/*!**************************************************************!*\
  !*** ../assets/dev/js/editor/components/validator/number.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var Validator = __webpack_require__(/*! elementor-validator/base */ "../assets/dev/js/editor/components/validator/base.js");

module.exports = Validator.extend({
  validationMethod: function validationMethod(newValue) {
    var validationTerms = this.getSettings('validationTerms'),
        errors = [];

    if (_.isFinite(newValue)) {
      if (undefined !== validationTerms.min && newValue < validationTerms.min) {
        errors.push('Value is less than minimum');
      }

      if (undefined !== validationTerms.max && newValue > validationTerms.max) {
        errors.push('Value is greater than maximum');
      }
    }

    return errors;
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/controls/base-data.js":
/*!*****************************************************!*\
  !*** ../assets/dev/js/editor/controls/base-data.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _assign = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/assign */ "../node_modules/@babel/runtime-corejs2/core-js/object/assign.js"));

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _createForOfIteratorHelper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createForOfIteratorHelper */ "../node_modules/@babel/runtime-corejs2/helpers/createForOfIteratorHelper.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

__webpack_require__(/*! core-js/modules/es6.array.slice.js */ "../node_modules/core-js/modules/es6.array.slice.js");

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

var _breakpoint = _interopRequireDefault(__webpack_require__(/*! elementor-validator/breakpoint */ "../assets/dev/js/editor/components/validator/breakpoint.js"));

var ControlBaseView = __webpack_require__(/*! elementor-controls/base */ "../assets/dev/js/editor/controls/base.js"),
    TagsBehavior = __webpack_require__(/*! elementor-dynamic-tags/control-behavior */ "../assets/dev/js/editor/components/dynamic-tags/control-behavior.js"),
    Validator = __webpack_require__(/*! elementor-validator/base */ "../assets/dev/js/editor/components/validator/base.js"),
    NumberValidator = __webpack_require__(/*! elementor-validator/number */ "../assets/dev/js/editor/components/validator/number.js"),
    ControlBaseDataView;

ControlBaseDataView = ControlBaseView.extend({
  validatorTypes: {
    Base: Validator,
    Number: NumberValidator,
    Breakpoint: _breakpoint.default
  },
  ui: function ui() {
    var ui = ControlBaseView.prototype.ui.apply(this, arguments);

    _.extend(ui, {
      input: 'input[data-setting][type!="checkbox"][type!="radio"]',
      checkbox: 'input[data-setting][type="checkbox"]',
      radio: 'input[data-setting][type="radio"]',
      select: 'select[data-setting]',
      textarea: 'textarea[data-setting]',
      responsiveSwitchers: '.elementor-responsive-switcher',
      contentEditable: '[contenteditable="true"]'
    });

    return ui;
  },
  templateHelpers: function templateHelpers() {
    var controlData = ControlBaseView.prototype.templateHelpers.apply(this, arguments);
    controlData.data.controlValue = this.getControlValue();
    return controlData;
  },
  events: function events() {
    return {
      'input @ui.input': 'onBaseInputTextChange',
      'change @ui.checkbox': 'onBaseInputChange',
      'change @ui.radio': 'onBaseInputChange',
      'input @ui.textarea': 'onBaseInputTextChange',
      'change @ui.select': 'onBaseInputChange',
      'input @ui.contentEditable': 'onBaseInputTextChange',
      'click @ui.responsiveSwitchers': 'onResponsiveSwitchersClick'
    };
  },
  behaviors: function behaviors() {
    var behaviors = ControlBaseView.prototype.behaviors.apply(this, arguments),
        dynamicSettings = this.options.model.get('dynamic');

    if (dynamicSettings && dynamicSettings.active) {
      var tags = _.filter(elementor.dynamicTags.getConfig('tags'), function (tag) {
        return tag.editable && _.intersection(tag.categories, dynamicSettings.categories).length;
      });

      if (tags.length || elementor.config.user.is_administrator) {
        behaviors.tags = {
          behaviorClass: TagsBehavior,
          tags: tags,
          dynamicSettings: dynamicSettings
        };
      }
    }

    return behaviors;
  },
  initialize: function initialize() {
    ControlBaseView.prototype.initialize.apply(this, arguments);
    this.registerValidators();

    if (this.model.get('responsive')) {
      this.setPlaceholderFromParent();
    } // TODO: this.elementSettingsModel is deprecated since 2.8.0.


    var settings = this.container ? this.container.settings : this.elementSettingsModel;
    this.listenTo(settings, 'change:external:' + this.model.get('name'), this.onAfterExternalChange);
  },
  getControlValue: function getControlValue() {
    return this.container.settings.get(this.model.get('name'));
  },
  getGlobalKey: function getGlobalKey() {
    return this.container.globals.get(this.model.get('name'));
  },
  getGlobalValue: function getGlobalValue() {
    return this.globalValue;
  },
  getGlobalDefault: function getGlobalDefault() {
    var controlGlobalArgs = this.model.get('global');

    if (controlGlobalArgs !== null && controlGlobalArgs !== void 0 && controlGlobalArgs.default) {
      // If the control is a color/typography control and default colors/typography are disabled, don't return the global value.
      if (!elementor.config.globals.defaults_enabled[this.getGlobalMeta().controlType]) {
        return '';
      }

      var _$e$data$commandExtra = $e.data.commandExtractArgs(controlGlobalArgs.default),
          command = _$e$data$commandExtra.command,
          args = _$e$data$commandExtra.args,
          result = $e.data.getCache($e.components.get('globals'), command, args.query);

      return result === null || result === void 0 ? void 0 : result.value;
    } // No global default.


    return '';
  },
  getCurrentValue: function getCurrentValue() {
    if (this.getGlobalKey() && !this.globalValue) {
      return '';
    }

    if (this.globalValue) {
      return this.globalValue;
    }

    var controlValue = this.getControlValue();

    if (controlValue) {
      return controlValue;
    }

    return this.getGlobalDefault();
  },
  isGlobalActive: function isGlobalActive() {
    var _this$options$model$g;

    return (_this$options$model$g = this.options.model.get('global')) === null || _this$options$model$g === void 0 ? void 0 : _this$options$model$g.active;
  },
  setValue: function setValue(value) {
    this.setSettingsModel(value);
  },
  setSettingsModel: function setSettingsModel(value) {
    var key = this.model.get('name');
    $e.run('document/elements/settings', {
      container: this.options.container,
      settings: (0, _defineProperty2.default)({}, key, value)
    });
    this.triggerMethod('settings:change');
  },
  applySavedValue: function applySavedValue() {
    this.setInputValue('[data-setting="' + this.model.get('name') + '"]', this.getControlValue());
  },
  getEditSettings: function getEditSettings(setting) {
    var settings = this.getOption('elementEditSettings').toJSON();

    if (setting) {
      return settings[setting];
    }

    return settings;
  },
  setEditSetting: function setEditSetting(settingKey, settingValue) {
    var settings = this.getOption('elementEditSettings') || this.getOption('container').settings;
    settings.set(settingKey, settingValue);
  },

  /**
   * Get the placeholder for the current control.
   * @returns {*}
   */
  getControlPlaceholder: function getControlPlaceholder() {
    var placeholder = this.model.get('placeholder');

    if (this.model.get('responsive')) {
      placeholder = placeholder || this.container.placeholders[this.model.get('name')];
    }

    return placeholder;
  },

  /**
   * Get the responsive parent view if exists.
   *
   * @returns {ControlBaseDataView|null}
   */
  getResponsiveParentView: function getResponsiveParentView() {
    var parent = this.model.get('parent');

    try {
      return parent && this.container.panel.getControlView(parent);
    } catch (e) {}
  },

  /**
   * Get the responsive children views if exists.
   *
   * @returns {ControlBaseDataView|null}
   */
  getResponsiveChildrenViews: function getResponsiveChildrenViews() {
    var children = this.model.get('inheritors'),
        views = [];

    try {
      var _iterator = (0, _createForOfIteratorHelper2.default)(children),
          _step;

      try {
        for (_iterator.s(); !(_step = _iterator.n()).done;) {
          var child = _step.value;
          views.push(this.container.panel.getControlView(child));
        }
      } catch (err) {
        _iterator.e(err);
      } finally {
        _iterator.f();
      }
    } catch (e) {}

    return views;
  },

  /**
   * Get prepared placeholder from the responsive parent, and put it into current
   * control model as placeholder.
   */
  setPlaceholderFromParent: function setPlaceholderFromParent() {
    var parent = this.getResponsiveParentView();

    if (parent) {
      this.container.placeholders[this.model.get('name')] = parent.preparePlaceholderForChildren();
    }
  },

  /**
   * Returns the value of the current control if exists, or the parent value if not,
   * so responsive children can set it as their placeholder. When there are multiple
   * inputs, the inputs which are empty on this control will inherit their values
   * from the responsive parent.
   * For example, if on desktop the padding of all edges is 10, and on tablet only
   * padding right and left is set to 15, the mobile control placeholder will
   * eventually be: { top: 10, right: 15, left: 15, bottom: 10 }, because of the
   * inheritance of multiple values.
   *
   * @returns {*}
   */
  preparePlaceholderForChildren: function preparePlaceholderForChildren() {
    var _this$getResponsivePa;

    var cleanValue = this.getCleanControlValue(),
        parentValue = (_this$getResponsivePa = this.getResponsiveParentView()) === null || _this$getResponsivePa === void 0 ? void 0 : _this$getResponsivePa.preparePlaceholderForChildren();

    if (cleanValue instanceof Object) {
      return (0, _assign.default)({}, parentValue, cleanValue);
    }

    return cleanValue || parentValue;
  },

  /**
   * Start the re-rendering recursive chain from the responsive child of this
   * control. It's useful when the current control value is changed and we want
   * to update all responsive children. In this case, the re-rendering is supposed
   * to be applied only from the responsive child of this control and on.
   */
  propagatePlaceholder: function propagatePlaceholder() {
    var children = this.getResponsiveChildrenViews();

    var _iterator2 = (0, _createForOfIteratorHelper2.default)(children),
        _step2;

    try {
      for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
        var child = _step2.value;
        child.renderWithChildren();
      }
    } catch (err) {
      _iterator2.e(err);
    } finally {
      _iterator2.f();
    }
  },

  /**
   * Re-render current control and trigger this method on the responsive child.
   * The purpose of those actions is to recursively re-render all responsive
   * children.
   */
  renderWithChildren: function renderWithChildren() {
    this.render();
    this.propagatePlaceholder();
  },

  /**
   * Get control value without empty properties, and without default values.
   *
   * @returns {{}}
   */
  getCleanControlValue: function getCleanControlValue() {
    var value = this.getControlValue();
    return value && value !== this.model.get('default') ? value : undefined;
  },
  onAfterChange: function onAfterChange(control) {
    if ((0, _keys.default)(control.changed).includes(this.model.get('name'))) {
      this.propagatePlaceholder();
    }

    ControlBaseView.prototype.onAfterChange.apply(this, arguments);
  },
  getInputValue: function getInputValue(input) {
    var $input = this.$(input);

    if ($input.is('[contenteditable="true"]')) {
      return $input.html();
    }

    var inputValue = $input.val(),
        inputType = $input.attr('type');

    if (-1 !== ['radio', 'checkbox'].indexOf(inputType)) {
      return $input.prop('checked') ? inputValue : '';
    }

    if ('number' === inputType && _.isFinite(inputValue)) {
      return +inputValue;
    } // Temp fix for jQuery (< 3.0) that return null instead of empty array


    if ('SELECT' === input.tagName && $input.prop('multiple') && null === inputValue) {
      inputValue = [];
    }

    return inputValue;
  },
  setInputValue: function setInputValue(input, value) {
    var $input = this.$(input),
        inputType = $input.attr('type');

    if ('checkbox' === inputType) {
      $input.prop('checked', !!value);
    } else if ('radio' === inputType) {
      $input.filter('[value="' + value + '"]').prop('checked', true);
    } else {
      $input.val(value);
    }
  },
  addValidator: function addValidator(validator) {
    this.validators.push(validator);
  },
  registerValidators: function registerValidators() {
    var _this = this;

    this.validators = [];
    var validationTerms = {};

    if (this.model.get('required')) {
      validationTerms.required = true;
    }

    if (!jQuery.isEmptyObject(validationTerms)) {
      this.addValidator(new this.validatorTypes.Base({
        validationTerms: validationTerms
      }));
    }

    var validators = this.model.get('validators');

    if (validators) {
      (0, _entries.default)(validators).forEach(function (_ref) {
        var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
            key = _ref2[0],
            args = _ref2[1];

        _this.addValidator(new _this.validatorTypes[key]({
          validationTerms: args
        }));
      });
    }
  },
  onBeforeRender: function onBeforeRender() {
    this.setPlaceholderFromParent();
  },
  onRender: function onRender() {
    ControlBaseView.prototype.onRender.apply(this, arguments);

    if (this.model.get('responsive')) {
      this.renderResponsiveSwitchers();
    }

    this.applySavedValue();
    this.triggerMethod('ready');
    this.toggleControlVisibility();
    this.addTooltip();
  },
  onBaseInputTextChange: function onBaseInputTextChange(event) {
    this.onBaseInputChange(event);
  },
  onBaseInputChange: function onBaseInputChange(event) {
    clearTimeout(this.correctionTimeout);
    var input = event.currentTarget,
        value = this.getInputValue(input),
        validators = this.validators.slice(0),
        settingsValidators = this.container.settings.validators[this.model.get('name')];

    if (settingsValidators) {
      validators = validators.concat(settingsValidators);
    }

    if (validators) {
      var oldValue = this.getControlValue(input.dataset.setting);
      var isValidValue = validators.every(function (validator) {
        return validator.isValid(value, oldValue);
      });

      if (!isValidValue) {
        this.correctionTimeout = setTimeout(this.setInputValue.bind(this, input, oldValue), 1200);
        return;
      }
    }

    this.updateElementModel(value, input);
    this.triggerMethod('input:change', event);
  },
  onResponsiveSwitchersClick: function onResponsiveSwitchersClick(event) {
    var $switcher = jQuery(event.currentTarget),
        device = $switcher.data('device'),
        $switchersWrapper = this.ui.responsiveSwitchersWrapper,
        selectedOption = $switcher.index();
    $switchersWrapper.toggleClass('elementor-responsive-switchers-open');
    $switchersWrapper[0].style.setProperty('--selected-option', selectedOption);
    this.triggerMethod('responsive:switcher:click', device);
    elementor.changeDeviceMode(device);
  },
  renderResponsiveSwitchers: function renderResponsiveSwitchers() {
    var templateHtml = Marionette.Renderer.render('#tmpl-elementor-control-responsive-switchers', this.model.attributes);
    this.ui.controlTitle.after(templateHtml);
    this.ui.responsiveSwitchersWrapper = this.$el.find('.elementor-control-responsive-switchers');
  },
  onAfterExternalChange: function onAfterExternalChange() {
    this.hideTooltip();
    this.applySavedValue();
  },
  addTooltip: function addTooltip() {
    this.ui.tooltipTargets = this.$el.find('.tooltip-target');

    if (!this.ui.tooltipTargets.length) {
      return;
    } // Create tooltip on controls


    this.ui.tooltipTargets.tipsy({
      gravity: function gravity() {
        // `n` for down, `s` for up
        var gravity = jQuery(this).data('tooltip-pos');

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

        return 's';
      },
      title: function title() {
        return this.getAttribute('data-tooltip');
      }
    });
  },
  hideTooltip: function hideTooltip() {
    if (this.ui.tooltipTargets.length) {
      this.ui.tooltipTargets.tipsy('hide');
    }
  },
  updateElementModel: function updateElementModel(value) {
    this.setValue(value);
  }
}, {
  // Static methods
  getStyleValue: function getStyleValue(placeholder, controlValue, controlData) {
    if ('DEFAULT' === placeholder) {
      return controlData.default;
    }

    return controlValue;
  },
  onPasteStyle: function onPasteStyle() {
    return true;
  }
});
module.exports = ControlBaseDataView;

/***/ }),

/***/ "../assets/dev/js/editor/controls/base-multiple.js":
/*!*********************************************************!*\
  !*** ../assets/dev/js/editor/controls/base-multiple.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

var ControlBaseDataView = __webpack_require__(/*! elementor-controls/base-data */ "../assets/dev/js/editor/controls/base-data.js"),
    ControlBaseMultipleItemView;

ControlBaseMultipleItemView = ControlBaseDataView.extend({
  applySavedValue: function applySavedValue() {
    var values = this.getControlValue(),
        $inputs = this.$('[data-setting]'),
        self = this;

    _.each(values, function (value, key) {
      var $input = $inputs.filter(function () {
        return key === this.dataset.setting;
      });
      self.setInputValue($input, value);
    });
  },
  getControlValue: function getControlValue(key) {
    var values = this.container.settings.get(this.model.get('name'));

    if (!jQuery.isPlainObject(values)) {
      return {};
    }

    if (key) {
      var value = values[key];

      if (undefined === value) {
        value = '';
      }

      return value;
    }

    return elementorCommon.helpers.cloneObject(values);
  },

  /**
   * @inheritDoc
   */
  getCleanControlValue: function getCleanControlValue(key) {
    var _this = this;

    var values = Object.fromEntries((0, _entries.default)(this.getControlValue()).filter(function (_ref) {
      var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
          k = _ref2[0],
          v = _ref2[1];

      return v && _this.model.get('default')[k] !== v;
    }));

    if (key) {
      return values === null || values === void 0 ? void 0 : values[key];
    }

    return (0, _keys.default)(values).length ? values : undefined;
  },
  setValue: function setValue(key, value) {
    var values = this.getControlValue();

    if ('object' === (0, _typeof2.default)(key)) {
      _.each(key, function (internalValue, internalKey) {
        values[internalKey] = internalValue;
      });
    } else {
      values[key] = value;
    }

    this.setSettingsModel(values);
  },
  updateElementModel: function updateElementModel(value, input) {
    var key = input.dataset.setting;
    this.setValue(key, value);
  }
}, {
  // Static methods
  getStyleValue: function getStyleValue(placeholder, controlValue) {
    if (!_.isObject(controlValue)) {
      return ''; // invalid
    }

    return controlValue[placeholder.toLowerCase()];
  }
});
module.exports = ControlBaseMultipleItemView;

/***/ }),

/***/ "../assets/dev/js/editor/controls/base-units.js":
/*!******************************************************!*\
  !*** ../assets/dev/js/editor/controls/base-units.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

var _assign = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/assign */ "../node_modules/@babel/runtime-corejs2/core-js/object/assign.js"));

var ControlBaseMultipleItemView = __webpack_require__(/*! elementor-controls/base-multiple */ "../assets/dev/js/editor/controls/base-multiple.js"),
    ControlBaseUnitsItemView;

ControlBaseUnitsItemView = ControlBaseMultipleItemView.extend({
  ui: function ui() {
    return (0, _assign.default)(ControlBaseMultipleItemView.prototype.ui.apply(this, arguments), {
      units: '.elementor-units-choices>input'
    });
  },
  events: function events() {
    return (0, _assign.default)(ControlBaseMultipleItemView.prototype.events.apply(this, arguments), {
      'change @ui.units': 'onUnitChange'
    });
  },
  updatePlaceholder: function updatePlaceholder() {
    var _this$getControlPlace;

    var placeholder = (_this$getControlPlace = this.getControlPlaceholder()) === null || _this$getControlPlace === void 0 ? void 0 : _this$getControlPlace.unit;
    this.ui.units.removeClass('e-units-placeholder');

    if (placeholder) {
      this.ui.units.filter("[value=\"".concat(placeholder, "\"]")).addClass('e-units-placeholder');
    }
  },
  onRender: function onRender() {
    ControlBaseMultipleItemView.prototype.onRender.apply(this, arguments);
    this.updatePlaceholder();
  },
  onUnitChange: function onUnitChange() {
    this.updatePlaceholder();
  },
  getCurrentRange: function getCurrentRange() {
    return this.getUnitRange(this.getControlValue('unit'));
  },
  getUnitRange: function getUnitRange(unit) {
    var ranges = this.model.get('range');

    if (!ranges || !ranges[unit]) {
      return false;
    }

    return ranges[unit];
  }
});
module.exports = ControlBaseUnitsItemView;

/***/ }),

/***/ "../assets/dev/js/editor/controls/base.js":
/*!************************************************!*\
  !*** ../assets/dev/js/editor/controls/base.js ***!
  \************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var _defineProperty = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js"));

var ControlBaseView;
ControlBaseView = Marionette.CompositeView.extend({
  ui: function ui() {
    return {
      controlTitle: '.elementor-control-title'
    };
  },
  behaviors: function behaviors() {
    var behaviors = {};
    return elementor.hooks.applyFilters('controls/base/behaviors', behaviors, this);
  },
  getBehavior: function getBehavior(name) {
    return this._behaviors[(0, _keys.default)(this.behaviors()).indexOf(name)];
  },
  className: function className() {
    // TODO: Any better classes for that?
    var classes = 'elementor-control elementor-control-' + this.model.get('name') + ' elementor-control-type-' + this.model.get('type'),
        modelClasses = this.model.get('classes'),
        responsive = this.model.get('responsive');

    if (!_.isEmpty(modelClasses)) {
      classes += ' ' + modelClasses;
    }

    if (!_.isEmpty(responsive)) {
      var responsiveControlName = responsive.max || responsive.min;
      classes += ' elementor-control-responsive-' + responsiveControlName;
    }

    return classes;
  },
  templateHelpers: function templateHelpers() {
    var controlData = {
      _cid: this.model.cid
    };
    return {
      view: this,
      data: _.extend({}, this.model.toJSON(), controlData)
    };
  },
  getTemplate: function getTemplate() {
    return Marionette.TemplateCache.get('#tmpl-elementor-control-' + this.model.get('type') + '-content');
  },
  initialize: function initialize(options) {
    var label = this.model.get('label'); // TODO: Temp backwards compatibility. since 2.8.0.

    (0, _defineProperty.default)(this, 'container', {
      get: function get() {
        if (!options.container) {
          var settingsModel = options.elementSettingsModel,
              view = $e.components.get('document').utils.findViewById(settingsModel.id); // Element control.

          if (view && view.getContainer) {
            options.container = view.getContainer();
          } else {
            if (!settingsModel.id) {
              settingsModel.id = 'bc-' + elementorCommon.helpers.getUniqueId();
            } // Document/General/Other control.


            options.container = new elementorModules.editor.Container({
              type: 'bc-container',
              id: settingsModel.id,
              model: settingsModel,
              settings: settingsModel,
              label: label,
              view: false,
              renderer: false,
              controls: settingsModel.options.controls
            });
          }
        }

        return options.container;
      }
    }); // Use `defineProperty` because `get elementSettingsModel()` fails during the `Marionette.CompositeView.extend`.

    (0, _defineProperty.default)(this, 'elementSettingsModel', {
      get: function get() {
        elementorCommon.helpers.softDeprecated('elementSettingsModel', '2.8.0', 'container.settings');
        return options.container ? options.container.settings : options.elementSettingsModel;
      }
    });
    var controlType = this.model.get('type'),
        controlSettings = jQuery.extend(true, {}, elementor.config.controls[controlType], this.model.attributes);
    this.model.set(controlSettings); // TODO: this.elementSettingsModel is deprecated since 2.8.0.

    var settings = this.container ? this.container.settings : this.elementSettingsModel;
    this.listenTo(settings, 'change', this.onAfterChange);
  },
  onAfterChange: function onAfterChange() {
    this.toggleControlVisibility();
  },
  toggleControlVisibility: function toggleControlVisibility() {
    // TODO: this.elementSettingsModel is deprecated since 2.8.0.
    var settings = this.container ? this.container.settings : this.elementSettingsModel;
    var isVisible = elementor.helpers.isActiveControl(this.model, settings.attributes);
    this.$el.toggleClass('elementor-hidden-control', !isVisible);
    elementor.getPanelView().updateScrollbar();
  },
  onRender: function onRender() {
    var layoutType = this.model.get('label_block') ? 'block' : 'inline',
        showLabel = this.model.get('show_label'),
        elClasses = 'elementor-label-' + layoutType;
    elClasses += ' elementor-control-separator-' + this.model.get('separator');

    if (!showLabel) {
      elClasses += ' elementor-control-hidden-label';
    }

    this.$el.addClass(elClasses);
    this.toggleControlVisibility();
  }
});
module.exports = ControlBaseView;

/***/ }),

/***/ "../assets/dev/js/editor/controls/box-shadow.js":
/*!******************************************************!*\
  !*** ../assets/dev/js/editor/controls/box-shadow.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

var _colorPicker = _interopRequireDefault(__webpack_require__(/*! ../utils/color-picker */ "../assets/dev/js/editor/utils/color-picker.js"));

var ControlMultipleBaseItemView = __webpack_require__(/*! elementor-controls/base-multiple */ "../assets/dev/js/editor/controls/base-multiple.js"),
    ControlBoxShadowItemView;

ControlBoxShadowItemView = ControlMultipleBaseItemView.extend({
  ui: function ui() {
    var ui = ControlMultipleBaseItemView.prototype.ui.apply(this, arguments);
    ui.sliders = '.elementor-slider';
    ui.colorPickerPlaceholder = '.elementor-color-picker-placeholder';
    return ui;
  },
  initSliders: function initSliders() {
    var _this = this;

    var value = this.getControlValue();
    this.ui.sliders.each(function (index, slider) {
      var $input = jQuery(slider).next('.elementor-slider-input').find('input');
      var sliderInstance = noUiSlider.create(slider, {
        start: [value[slider.dataset.input]],
        step: 1,
        range: {
          min: +$input.attr('min'),
          max: +$input.attr('max')
        },
        format: {
          to: function to(sliderValue) {
            return +sliderValue.toFixed(1);
          },
          from: function from(sliderValue) {
            return +sliderValue;
          }
        }
      });
      sliderInstance.on('slide', function (values) {
        var type = sliderInstance.target.dataset.input;
        $input.val(values[0]);

        _this.setValue(type, values[0]);
      });
    });
  },
  initColors: function initColors() {
    var _this2 = this;

    this.colorPicker = new _colorPicker.default({
      picker: {
        el: this.ui.colorPickerPlaceholder[0],
        default: this.getControlValue('color')
      },
      onChange: function onChange() {
        _this2.setValue('color', _this2.colorPicker.getColor());
      },
      onClear: function onClear() {
        _this2.setValue('color', '');
      }
    });
  },
  onInputChange: function onInputChange(event) {
    var type = event.currentTarget.dataset.setting,
        $slider = this.ui.sliders.filter('[data-input="' + type + '"]');
    $slider[0].noUiSlider.set(this.getControlValue(type));
  },
  onReady: function onReady() {
    this.initSliders();
    this.initColors();
  },
  onBeforeDestroy: function onBeforeDestroy() {
    this.colorPicker.destroy();
  }
});
module.exports = ControlBoxShadowItemView;

/***/ }),

/***/ "../assets/dev/js/editor/controls/button.js":
/*!**************************************************!*\
  !*** ../assets/dev/js/editor/controls/button.js ***!
  \**************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var ControlBaseView = __webpack_require__(/*! elementor-controls/base */ "../assets/dev/js/editor/controls/base.js");

module.exports = ControlBaseView.extend({
  ui: function ui() {
    var ui = ControlBaseView.prototype.ui.apply(this, arguments);
    ui.button = 'button';
    return ui;
  },
  events: {
    'click @ui.button': 'onButtonClick'
  },
  onButtonClick: function onButtonClick() {
    var eventName = this.model.get('event');
    elementor.channels.editor.trigger(eventName, this);
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/controls/choose.js":
/*!**************************************************!*\
  !*** ../assets/dev/js/editor/controls/choose.js ***!
  \**************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

var ControlBaseDataView = __webpack_require__(/*! elementor-controls/base-data */ "../assets/dev/js/editor/controls/base-data.js"),
    ControlChooseItemView;

ControlChooseItemView = ControlBaseDataView.extend({
  ui: function ui() {
    var ui = ControlBaseDataView.prototype.ui.apply(this, arguments);
    ui.inputs = '[type="radio"]';
    return ui;
  },
  events: function events() {
    return _.extend(ControlBaseDataView.prototype.events.apply(this, arguments), {
      'mousedown label': 'onMouseDownLabel',
      'click @ui.inputs': 'onClickInput',
      'change @ui.inputs': 'onBaseInputChange'
    });
  },
  updatePlaceholder: function updatePlaceholder() {
    var placeholder = this.getControlPlaceholder();

    if (!this.getControlValue() && placeholder) {
      // Find the input which has value equals to the placeholder (which is the parent's value),
      // and add it a placeholder class, to indicate which value is selected in the parent.
      this.ui.inputs.filter("[value=\"".concat(this.getControlPlaceholder(), "\"]")).addClass('e-choose-placeholder');
    } else {
      this.ui.inputs.removeClass('e-choose-placeholder');
    }
  },
  onReady: function onReady() {
    this.updatePlaceholder();
  },
  applySavedValue: function applySavedValue() {
    var currentValue = this.getControlValue();

    if (currentValue) {
      this.ui.inputs.filter('[value="' + currentValue + '"]').prop('checked', true);
    } else {
      this.ui.inputs.filter(':checked').prop('checked', false);
    }
  },
  onMouseDownLabel: function onMouseDownLabel(event) {
    var $clickedLabel = this.$(event.currentTarget),
        $selectedInput = this.$('#' + $clickedLabel.attr('for'));
    $selectedInput.data('checked', $selectedInput.prop('checked'));
  },
  onClickInput: function onClickInput(event) {
    if (!this.model.get('toggle')) {
      return;
    }

    var $selectedInput = this.$(event.currentTarget);

    if ($selectedInput.data('checked')) {
      $selectedInput.prop('checked', false).trigger('change');
    }
  },
  onBaseInputChange: function onBaseInputChange(event) {
    ControlBaseDataView.prototype.onBaseInputChange.apply(this, arguments);
    this.updatePlaceholder();
  }
}, {
  onPasteStyle: function onPasteStyle(control, clipboardValue) {
    return '' === clipboardValue || undefined !== control.options[clipboardValue];
  }
});
module.exports = ControlChooseItemView;

/***/ }),

/***/ "../assets/dev/js/editor/controls/code.js":
/*!************************************************!*\
  !*** ../assets/dev/js/editor/controls/code.js ***!
  \************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var ControlBaseDataView = __webpack_require__(/*! elementor-controls/base-data */ "../assets/dev/js/editor/controls/base-data.js"),
    ControlCodeEditorItemView;

ControlCodeEditorItemView = ControlBaseDataView.extend({
  ui: function ui() {
    var ui = ControlBaseDataView.prototype.ui.apply(this, arguments);
    ui.editor = '.elementor-code-editor';
    return ui;
  },
  onReady: function onReady() {
    var self = this;

    if ('undefined' === typeof ace) {
      return;
    }

    var langTools = ace.require('ace/ext/language_tools'),
        uiTheme = elementor.settings.editorPreferences.model.get('ui_theme'),
        userPrefersDark = matchMedia('(prefers-color-scheme: dark)').matches;

    self.editor = ace.edit(this.ui.editor[0]); // Since the code control is wrapped with a dynamic div, the class elementor-control-tag-area need to be had dynamically to handle the dynamic tag functionality.

    jQuery(self.editor.container).addClass('elementor-input-style elementor-code-editor elementor-control-tag-area');
    self.editor.setOptions({
      mode: 'ace/mode/' + self.model.attributes.language,
      minLines: 10,
      maxLines: Infinity,
      showGutter: true,
      useWorker: true,
      enableBasicAutocompletion: true,
      enableLiveAutocompletion: true
    });

    if ('dark' === uiTheme || 'auto' === uiTheme && userPrefersDark) {
      self.editor.setTheme('ace/theme/merbivore_soft');
    }

    self.editor.getSession().setUseWrapMode(true);
    elementor.panel.$el.on('resize.aceEditor', self.onResize.bind(this));

    if ('css' === self.model.attributes.language) {
      var selectorCompleter = {
        getCompletions: function getCompletions(editor, session, pos, prefix, callback) {
          var list = [],
              token = session.getTokenAt(pos.row, pos.column);

          if (0 < prefix.length && 'selector'.match(prefix) && 'constant' === token.type) {
            list = [{
              name: 'selector',
              value: 'selector',
              score: 1,
              meta: 'Elementor'
            }];
          }

          callback(null, list);
        }
      };
      langTools.addCompleter(selectorCompleter);
    }

    self.editor.setValue(self.getControlValue(), -1); // -1 =  move cursor to the start

    self.editor.on('change', function () {
      self.setValue(self.editor.getValue());
    });

    if ('html' === self.model.attributes.language) {
      // Remove the `doctype` annotation
      var session = self.editor.getSession();
      session.on('changeAnnotation', function () {
        var annotations = session.getAnnotations() || [],
            annotationsLength = annotations.length,
            index = annotations.length;

        while (index--) {
          if (/doctype first\. Expected/.test(annotations[index].text)) {
            annotations.splice(index, 1);
          }
        }

        if (annotationsLength > annotations.length) {
          session.setAnnotations(annotations);
        }
      });
    }
  },
  onResize: function onResize() {
    this.editor.resize();
  },
  onDestroy: function onDestroy() {
    elementor.panel.$el.off('resize.aceEditor');
  }
});
module.exports = ControlCodeEditorItemView;

/***/ }),

/***/ "../assets/dev/js/editor/controls/color.js":
/*!*************************************************!*\
  !*** ../assets/dev/js/editor/controls/color.js ***!
  \*************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));

var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));

__webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");

__webpack_require__(/*! core-js/modules/es6.array.iterator.js */ "../node_modules/core-js/modules/es6.array.iterator.js");

__webpack_require__(/*! core-js/modules/web.dom.iterable.js */ "../node_modules/core-js/modules/web.dom.iterable.js");

__webpack_require__(/*! core-js/modules/es6.regexp.to-string.js */ "../node_modules/core-js/modules/es6.regexp.to-string.js");

var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/asyncToGenerator */ "../node_modules/@babel/runtime-corejs2/helpers/asyncToGenerator.js"));

var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/toConsumableArray */ "../node_modules/@babel/runtime-corejs2/helpers/toConsumableArray.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _baseData = _interopRequireDefault(__webpack_require__(/*! ./base-data */ "../assets/dev/js/editor/controls/base-data.js"));

var _colorPicker = _interopRequireDefault(__webpack_require__(/*! ../utils/color-picker */ "../assets/dev/js/editor/utils/color-picker.js"));

var _default = /*#__PURE__*/function (_ControlBaseDataView) {
  (0, _inherits2.default)(_default, _ControlBaseDataView);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "ui",
    value: function ui() {
      var ui = (0, _get2.default)((0, _getPrototypeOf2.default)(_default.prototype), "ui", this).call(this);
      ui.pickerContainer = '.elementor-color-picker-placeholder';
      return ui;
    }
  }, {
    key: "applySavedValue",
    value: function applySavedValue() {
      // Gets the current OR default value of the control.
      var currentValue = this.getCurrentValue();

      if (this.colorPicker) {
        // When there is a global set on the control but there is no value/it doesn't exist, don't show a value.
        if (currentValue) {
          var _this$colorPicker$pic;

          // Set the picker color without triggering the 'onChange' event.
          var parsedColor = this.colorPicker.picker._parseLocalColor(currentValue);

          (_this$colorPicker$pic = this.colorPicker.picker).setHSVA.apply(_this$colorPicker$pic, (0, _toConsumableArray2.default)(parsedColor.values).concat([false]));
        } else {
          this.colorPicker.picker._clearColor(true);
        }
      } else {
        this.initPicker();
      }

      this.$el.toggleClass('e-control-color--no-value', !currentValue);
    }
  }, {
    key: "initPicker",
    value: function initPicker() {
      var _this$model$get,
          _this = this;

      var options = {
        picker: {
          el: this.ui.pickerContainer[0],
          default: this.getCurrentValue(),
          components: {
            opacity: this.model.get('alpha')
          },
          defaultRepresentation: 'HEX'
        },
        // Don't create the add button in the Global Settings color pickers.
        addButton: (_this$model$get = this.model.get('global')) === null || _this$model$get === void 0 ? void 0 : _this$model$get.active,
        onChange: function onChange() {
          return _this.onPickerChange();
        },
        onClear: function onClear() {
          return _this.onPickerClear();
        },
        onAddButtonClick: function onAddButtonClick() {
          return _this.onAddGlobalButtonClick();
        }
      };
      this.colorPicker = new _colorPicker.default(options);
      this.$pickerButton = jQuery(this.colorPicker.picker.getRoot().button);
      this.addTipsyToPickerButton();
      this.addEyedropper();
      this.$pickerButton.on('click', function () {
        return _this.onPickerButtonClick();
      });
      jQuery(this.colorPicker.picker.getRoot().root).addClass('elementor-control-unit-1 elementor-control-tag-area');
    }
  }, {
    key: "addTipsyToPickerButton",
    value: function addTipsyToPickerButton() {
      var _this2 = this;

      this.$pickerButton.tipsy({
        title: function title() {
          var currentValue = _this2.getCurrentValue(); // If there is a global enabled for the control, but the global has no value.


          if (_this2.getGlobalKey() && !currentValue) {
            currentValue = "".concat(__('Invalid Global Color', 'elementor'));
          }

          return currentValue || '';
        },
        offset: 4,
        gravity: function gravity() {
          return 's';
        }
      });
    }
  }, {
    key: "addEyedropper",
    value: function addEyedropper() {
      var _this3 = this;

      if (!elementorCommon.config.experimentalFeatures['elements-color-picker']) {
        return;
      }

      var $colorPicker = jQuery(Marionette.Renderer.render('#tmpl-elementor-control-element-color-picker')),
          $colorPickerToolsContainer = this.colorPicker.$pickerToolsContainer,
          container = this.getOption('container');
      var kit = null; // When it's a kit (i.e "Site Settings").

      if ('kit' === container.document.config.type) {
        kit = container.document;
      } // Add a tooltip to the Eye Dropper.


      $colorPicker.tipsy({
        title: function title() {
          return __('Color Sampler', 'elementor');
        },
        gravity: 's'
      });
      $colorPicker.on('click', function () {
        $e.run('elements-color-picker/start', {
          container: container,
          kit: kit,
          control: _this3.model.get('name'),
          trigger: $colorPicker[0]
        });
      });
      $colorPickerToolsContainer.append($colorPicker);
    }
  }, {
    key: "getGlobalMeta",
    value: function getGlobalMeta() {
      return {
        commandName: this.getGlobalCommand(),
        key: this.model.get('name'),
        controlType: 'colors',
        route: 'panel/global/global-colors'
      };
    }
  }, {
    key: "getNameAlreadyExistsMessage",
    value: function getNameAlreadyExistsMessage() {
      return '<i class="eicon-info-circle"></i> ' + __('Please note that the same exact color already exists in your Global Colors list. Are you sure you want to create it?', 'elementor');
    }
  }, {
    key: "getConfirmTextMessage",
    value: function getConfirmTextMessage() {
      return __('Are you sure you want to create a new Global Color?', 'elementor');
    }
  }, {
    key: "getAddGlobalConfirmMessage",
    value: function getAddGlobalConfirmMessage(globalColors) {
      var colorTitle = __('New Global Color', 'elementor'),
          currentValue = this.getCurrentValue(),
          $message = jQuery('<div>', {
        class: 'e-global__confirm-message'
      }),
          $messageText = jQuery('<div>', {
        class: 'e-global__confirm-message-text'
      }),
          $inputWrapper = jQuery('<div>', {
        class: 'e-global__confirm-input-wrapper'
      }),
          $colorPreview = this.createColorPreviewBox(currentValue),
          $input = jQuery('<input>', {
        type: 'text',
        name: 'global-name',
        placeholder: colorTitle
      }).val(colorTitle);

      var messageContent; // Check if the color already exists in the global colors, and display an appropriate message.

      for (var _i = 0, _Object$values = (0, _values.default)(globalColors); _i < _Object$values.length; _i++) {
        var globalColor = _Object$values[_i];

        if (currentValue === globalColor.value) {
          messageContent = this.getNameAlreadyExistsMessage();
          break;
        } else if (colorTitle === globalColor.title) {
          messageContent = this.getConfirmTextMessage();
          break;
        } else {
          messageContent = __('Are you sure you want to create a new Global Color?', 'elementor');
        }
      }

      $messageText.html(messageContent);
      $inputWrapper.append($colorPreview, $input);
      $message.append($messageText, $inputWrapper);
      return $message;
    }
  }, {
    key: "getGlobalCommand",
    value: function getGlobalCommand() {
      return 'globals/colors';
    } // The globalData parameter is received from the Data API.

  }, {
    key: "createGlobalItemMarkup",
    value: function createGlobalItemMarkup(globalData) {
      var $color = jQuery('<div>', {
        class: 'e-global__preview-item e-global__color',
        'data-global-id': globalData.id
      }),
          $colorPreview = this.createColorPreviewBox(globalData.value),
          $colorTitle = jQuery('<span>', {
        class: 'e-global__color-title'
      }).html(globalData.title),
          $colorHex = jQuery('<span>', {
        class: 'e-global__color-hex'
      }).html(globalData.value);
      $color.append($colorPreview, $colorTitle, $colorHex);
      return $color;
    }
  }, {
    key: "createColorPreviewBox",
    value: function createColorPreviewBox(color) {
      var $colorPreviewContainer = jQuery('<div>', {
        class: 'e-global__color-preview-container'
      }),
          $colorPreviewColor = jQuery('<div>', {
        class: 'e-global__color-preview-color',
        style: 'background-color: ' + color
      }),
          $colorPreviewBg = jQuery('<div>', {
        class: 'e-global__color-preview-transparent-bg'
      });
      $colorPreviewContainer.append($colorPreviewBg, $colorPreviewColor);
      return $colorPreviewContainer;
    }
  }, {
    key: "getGlobalsList",
    value: function () {
      var _getGlobalsList = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
        var result;
        return _regenerator.default.wrap(function _callee$(_context) {
          while (1) {
            switch (_context.prev = _context.next) {
              case 0:
                _context.next = 2;
                return $e.data.get(this.getGlobalCommand());

              case 2:
                result = _context.sent;
                return _context.abrupt("return", result.data);

              case 4:
              case "end":
                return _context.stop();
            }
          }
        }, _callee, this);
      }));

      function getGlobalsList() {
        return _getGlobalsList.apply(this, arguments);
      }

      return getGlobalsList;
    }() // Create the markup for the colors in the global select dropdown.

  }, {
    key: "buildGlobalsList",
    value: function buildGlobalsList(globalColors, $globalPreviewItemsContainer) {
      var _this4 = this;

      (0, _values.default)(globalColors).forEach(function (color) {
        if (!color.value) {
          return;
        }

        var $color = _this4.createGlobalItemMarkup(color);

        $globalPreviewItemsContainer.append($color);
      });
    }
  }, {
    key: "onPickerChange",
    value: function onPickerChange() {
      this.setValue(this.colorPicker.picker.getColor().toHEXA().toString());

      if (!this.isCustom) {
        this.triggerMethod('value:type:change');
        this.colorPicker.toggleClearButtonState(true);

        if (this.$el.hasClass('e-control-color--no-value')) {
          this.$el.removeClass('e-control-color--no-value');
        }

        this.isCustom = true;
      }
    }
  }, {
    key: "onPickerClear",
    value: function onPickerClear() {
      this.isCustom = false; // Empty the value saved in the control.

      this.setValue(''); // Adjust the Global select box text according to the cleared value.

      this.triggerMethod('value:type:change');
      this.applySavedValue();
      this.colorPicker.toggleClearButtonState(false);
    }
  }, {
    key: "onPickerButtonClick",
    value: function onPickerButtonClick() {
      if (this.getGlobalKey()) {
        this.triggerMethod('unset:global:value');
      } else if (this.isGlobalActive() && !this.getControlValue() && this.getGlobalDefault()) {
        this.triggerMethod('unlink:global:default');
      } // If there is a value in the control, set the clear button to active, if not, deactivate it.


      this.colorPicker.toggleClearButtonState(!!this.getCurrentValue());
    }
  }, {
    key: "onAddGlobalButtonClick",
    value: function onAddGlobalButtonClick() {
      var _this5 = this;

      this.getGlobalsList().then(function (globalsList) {
        _this5.globalsList = globalsList;

        _this5.triggerMethod('add:global:to:list', _this5.getAddGlobalConfirmMessage(globalsList));
      });
    }
  }, {
    key: "onBeforeDestroy",
    value: function onBeforeDestroy() {
      if (this.colorPicker) {
        this.colorPicker.destroy();
      }
    }
  }]);
  return _default;
}(_baseData.default);

exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/controls/date-time.js":
/*!*****************************************************!*\
  !*** ../assets/dev/js/editor/controls/date-time.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var ControlBaseDataView = __webpack_require__(/*! elementor-controls/base-data */ "../assets/dev/js/editor/controls/base-data.js");

var _default = /*#__PURE__*/function (_ControlBaseDataView) {
  (0, _inherits2.default)(_default, _ControlBaseDataView);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "onReady",
    value: function onReady() {
      var options = _.extend({
        enableTime: true,
        minuteIncrement: 1
      }, this.model.get('picker_options'));

      this.ui.input.flatpickr(options);
    }
  }, {
    key: "onBeforeDestroy",
    value: function onBeforeDestroy() {
      this.ui.input.flatpickr().destroy();
    }
  }]);
  return _default;
}(ControlBaseDataView);

exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/controls/dimensions.js":
/*!******************************************************!*\
  !*** ../assets/dev/js/editor/controls/dimensions.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


__webpack_require__(/*! core-js/modules/es6.string.link.js */ "../node_modules/core-js/modules/es6.string.link.js");

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

var ControlBaseUnitsItemView = __webpack_require__(/*! elementor-controls/base-units */ "../assets/dev/js/editor/controls/base-units.js"),
    ControlDimensionsItemView;

ControlDimensionsItemView = ControlBaseUnitsItemView.extend({
  ui: function ui() {
    var ui = ControlBaseUnitsItemView.prototype.ui.apply(this, arguments);
    ui.controls = '.elementor-control-dimension > input:enabled';
    ui.link = 'button.elementor-link-dimensions';
    return ui;
  },
  events: function events() {
    return _.extend(ControlBaseUnitsItemView.prototype.events.apply(this, arguments), {
      'click @ui.link': 'onLinkDimensionsClicked'
    });
  },
  defaultDimensionValue: 0,
  initialize: function initialize() {
    ControlBaseUnitsItemView.prototype.initialize.apply(this, arguments); // TODO: Need to be in helpers, and not in variable

    this.model.set('allowed_dimensions', this.filterDimensions(this.model.get('allowed_dimensions')));
  },
  getPossibleDimensions: function getPossibleDimensions() {
    return ['top', 'right', 'bottom', 'left'];
  },
  filterDimensions: function filterDimensions(filter) {
    filter = filter || 'all';
    var dimensions = this.getPossibleDimensions();

    if ('all' === filter) {
      return dimensions;
    }

    if (!_.isArray(filter)) {
      if ('horizontal' === filter) {
        filter = ['right', 'left'];
      } else if ('vertical' === filter) {
        filter = ['top', 'bottom'];
      }
    }

    return filter;
  },
  onReady: function onReady() {
    var self = this,
        currentValue = self.getControlValue();

    if (!self.isLinkedDimensions()) {
      self.ui.link.addClass('unlinked');
      self.ui.controls.each(function (index, element) {
        var value = currentValue[element.dataset.setting];

        if (_.isEmpty(value)) {
          value = self.defaultDimensionValue;
        }

        self.$(element).val(value);
      });
    }

    self.fillEmptyDimensions();
  },
  updateDimensionsValue: function updateDimensionsValue() {
    var currentValue = {},
        dimensions = this.getPossibleDimensions(),
        $controls = this.ui.controls,
        defaultDimensionValue = this.defaultDimensionValue;
    dimensions.forEach(function (dimension) {
      var $element = $controls.filter('[data-setting="' + dimension + '"]');
      currentValue[dimension] = $element.length ? $element.val() : defaultDimensionValue;
    });
    this.setValue(currentValue);
  },
  fillEmptyDimensions: function fillEmptyDimensions() {
    var dimensions = this.getPossibleDimensions(),
        allowedDimensions = this.model.get('allowed_dimensions'),
        $controls = this.ui.controls,
        defaultDimensionValue = this.defaultDimensionValue;

    if (this.isLinkedDimensions()) {
      return;
    }

    dimensions.forEach(function (dimension) {
      var $element = $controls.filter('[data-setting="' + dimension + '"]'),
          isAllowedDimension = -1 !== _.indexOf(allowedDimensions, dimension);

      if (isAllowedDimension && $element.length && _.isEmpty($element.val())) {
        $element.val(defaultDimensionValue);
      }
    });
  },
  updateDimensions: function updateDimensions() {
    this.fillEmptyDimensions();
    this.updateDimensionsValue();
  },
  resetDimensions: function resetDimensions() {
    this.ui.controls.val('');
    this.updateDimensionsValue();
  },
  onInputChange: function onInputChange(event) {
    var inputSetting = event.target.dataset.setting;

    if ('unit' === inputSetting) {
      this.resetDimensions();
    }

    if (!_.contains(this.getPossibleDimensions(), inputSetting)) {
      return;
    }

    if (this.isLinkedDimensions()) {
      var $thisControl = this.$(event.target);
      this.ui.controls.val($thisControl.val());
    }

    this.updateDimensions();
  },
  onLinkDimensionsClicked: function onLinkDimensionsClicked(event) {
    event.preventDefault();
    event.stopPropagation();
    this.ui.link.toggleClass('unlinked');
    this.setValue('isLinked', !this.ui.link.hasClass('unlinked'));

    if (this.isLinkedDimensions()) {
      // Set all controls value from the first control.
      this.ui.controls.val(this.ui.controls.eq(0).val());
    }

    this.updateDimensions();
  },
  isLinkedDimensions: function isLinkedDimensions() {
    return this.getControlValue('isLinked');
  }
});
module.exports = ControlDimensionsItemView;

/***/ }),

/***/ "../assets/dev/js/editor/controls/font.js":
/*!************************************************!*\
  !*** ../assets/dev/js/editor/controls/font.js ***!
  \************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

__webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");

__webpack_require__(/*! core-js/modules/es6.regexp.to-string.js */ "../node_modules/core-js/modules/es6.regexp.to-string.js");

var ControlSelect2View = __webpack_require__(/*! elementor-controls/select2 */ "../assets/dev/js/editor/controls/select2.js");

module.exports = ControlSelect2View.extend({
  $previewContainer: null,
  getSelect2Options: function getSelect2Options() {
    return {
      dir: elementorCommon.config.isRTL ? 'rtl' : 'ltr',
      templateSelection: this.fontPreviewTemplate,
      templateResult: this.fontPreviewTemplate
    };
  },
  onReady: function onReady() {
    var self = this;
    this.ui.select.select2(this.getSelect2Options());
    this.ui.select.on('select2:open', function () {
      self.$previewContainer = jQuery('.select2-results__options[role="tree"]:visible'); // load initial?

      setTimeout(function () {
        self.enqueueFontsInView();
      }, 100); // On search

      jQuery('input.select2-search__field:visible').on('keyup', function () {
        self.typeStopDetection.action.apply(self);
      }); // On scroll

      self.$previewContainer.on('scroll', function () {
        self.scrollStopDetection.onScroll.apply(self);
      });
    });
  },
  typeStopDetection: {
    idle: 350,
    timeOut: null,
    action: function action() {
      var parent = this,
          self = this.typeStopDetection;
      clearTimeout(self.timeOut);
      self.timeOut = setTimeout(function () {
        parent.enqueueFontsInView();
      }, self.idle);
    }
  },
  scrollStopDetection: {
    idle: 350,
    timeOut: null,
    onScroll: function onScroll() {
      var parent = this,
          self = this.scrollStopDetection;
      clearTimeout(self.timeOut);
      self.timeOut = setTimeout(function () {
        parent.enqueueFontsInView();
      }, self.idle);
    }
  },
  enqueueFontsInView: function enqueueFontsInView() {
    var self = this,
        containerOffset = this.$previewContainer.offset(),
        top = containerOffset.top,
        bottom = top + this.$previewContainer.innerHeight(),
        fontsInView = [];
    this.$previewContainer.children().find('li:visible').each(function (index, font) {
      var $font = jQuery(font),
          offset = $font.offset();

      if (offset && offset.top > top && offset.top < bottom) {
        fontsInView.push($font);
      }
    });
    fontsInView.forEach(function (font) {
      var fontFamily = jQuery(font).find('span').html();
      elementor.helpers.enqueueFont(fontFamily, 'editor');
    });
  },
  fontPreviewTemplate: function fontPreviewTemplate(state) {
    if (!state.id) {
      return state.text;
    }

    return jQuery('<span>', {
      text: state.text,
      css: {
        'font-family': state.element.value.toString()
      }
    });
  },
  templateHelpers: function templateHelpers() {
    var helpers = ControlSelect2View.prototype.templateHelpers.apply(this, arguments),
        fonts = this.model.get('options');

    helpers.getFontsByGroups = function (groups) {
      var filteredFonts = {};

      _.each(fonts, function (fontType, fontName) {
        if (_.isArray(groups) && _.contains(groups, fontType) || fontType === groups) {
          filteredFonts[fontName] = fontName;
        }
      });

      return filteredFonts;
    };

    return helpers;
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/controls/gallery.js":
/*!***************************************************!*\
  !*** ../assets/dev/js/editor/controls/gallery.js ***!
  \***************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var sprintf = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["sprintf"];
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _filesUploadHandler = _interopRequireDefault(__webpack_require__(/*! ../utils/files-upload-handler */ "../assets/dev/js/editor/utils/files-upload-handler.js"));

var ControlBaseDataView = __webpack_require__(/*! elementor-controls/base-data */ "../assets/dev/js/editor/controls/base-data.js"),
    ControlMediaItemView;

ControlMediaItemView = ControlBaseDataView.extend({
  ui: function ui() {
    var ui = ControlBaseDataView.prototype.ui.apply(this, arguments);
    ui.addImages = '.elementor-control-gallery-add';
    ui.clearGallery = '.elementor-control-gallery-clear';
    ui.galleryThumbnails = '.elementor-control-gallery-thumbnails';
    ui.status = '.elementor-control-gallery-status-title';
    return ui;
  },
  events: function events() {
    return _.extend(ControlBaseDataView.prototype.events.apply(this, arguments), {
      'click @ui.addImages': 'onAddImagesClick',
      'click @ui.clearGallery': 'onClearGalleryClick',
      'click @ui.galleryThumbnails': 'onGalleryThumbnailsClick'
    });
  },
  onReady: function onReady() {
    this.initRemoveDialog();
  },
  applySavedValue: function applySavedValue() {
    var images = this.getControlValue(),
        imagesCount = images.length,
        hasImages = !!imagesCount;
    this.$el.toggleClass('elementor-gallery-has-images', hasImages).toggleClass('elementor-gallery-empty', !hasImages);
    var $galleryThumbnails = this.ui.galleryThumbnails;
    $galleryThumbnails.empty();
    /* translators: %s: Selected images count. */

    this.ui.status.text(hasImages ? sprintf(__('%s Images Selected', 'elementor'), imagesCount) : __('No Images Selected', 'elementor'));

    if (!hasImages) {
      return;
    }

    this.getControlValue().forEach(function (image) {
      var $thumbnail = jQuery('<div>', {
        class: 'elementor-control-gallery-thumbnail'
      });
      $thumbnail.css('background-image', 'url(' + image.url + ')');
      $galleryThumbnails.append($thumbnail);
    });
  },
  hasImages: function hasImages() {
    return !!this.getControlValue().length;
  },
  openFrame: function openFrame(action) {
    this.initFrame(action);
    this.frame.open(); // Set params to trigger sanitizer

    if (_filesUploadHandler.default.isUploadEnabled('svg')) {
      _filesUploadHandler.default.setUploadTypeCaller(this.frame);
    }
  },
  initFrame: function initFrame(action) {
    var frameStates = {
      create: 'gallery',
      add: 'gallery-library',
      edit: 'gallery-edit'
    };
    var options = {
      frame: 'post',
      multiple: true,
      state: frameStates[action],
      button: {
        text: __('Insert Media', 'elementor')
      }
    };

    if (this.hasImages()) {
      options.selection = this.fetchSelection();
    }

    this.frame = wp.media(options);
    this.addSvgMimeType(); // When a file is selected, run a callback.

    this.frame.on({
      update: this.select,
      'menu:render:default': this.menuRender,
      'content:render:browse': this.gallerySettings
    }, this);
  },
  addSvgMimeType: function addSvgMimeType() {
    if (!_filesUploadHandler.default.isUploadEnabled('svg')) {
      return;
    } // Add the SVG to the currently allowed extensions


    var oldExtensions = _wpPluploadSettings.defaults.filters.mime_types[0].extensions;
    this.frame.on('ready', function () {
      _wpPluploadSettings.defaults.filters.mime_types[0].extensions = oldExtensions + ',svg';
    }); // restore allowed upload extensions

    this.frame.on('close', function () {
      _wpPluploadSettings.defaults.filters.mime_types[0].extensions = oldExtensions;
    });
  },
  menuRender: function menuRender(view) {
    view.unset('insert');
    view.unset('featured-image');
  },
  gallerySettings: function gallerySettings(browser) {
    browser.sidebar.on('ready', function () {
      browser.sidebar.unset('gallery');
    });
  },
  fetchSelection: function fetchSelection() {
    var attachments = wp.media.query({
      orderby: 'post__in',
      order: 'ASC',
      type: 'image',
      perPage: -1,
      post__in: _.pluck(this.getControlValue(), 'id')
    });
    return new wp.media.model.Selection(attachments.models, {
      props: attachments.props.toJSON(),
      multiple: true
    });
  },

  /**
   * Callback handler for when an attachment is selected in the media modal.
   * Gets the selected image information, and sets it within the control.
   */
  select: function select(selection) {
    var images = [];
    selection.each(function (image) {
      images.push({
        id: image.get('id'),
        url: image.get('url')
      });
    });
    this.setValue(images);
    this.applySavedValue();
  },
  onBeforeDestroy: function onBeforeDestroy() {
    if (this.frame) {
      this.frame.off();
    }

    this.$el.remove();
  },
  resetGallery: function resetGallery() {
    this.setValue([]);
    this.applySavedValue();
  },
  initRemoveDialog: function initRemoveDialog() {
    var removeDialog;

    this.getRemoveDialog = function () {
      if (!removeDialog) {
        removeDialog = elementorCommon.dialogsManager.createWidget('confirm', {
          message: __('Are you sure you want to reset this gallery?', 'elementor'),
          headerMessage: __('Reset Gallery', 'elementor'),
          strings: {
            confirm: __('Delete', 'elementor'),
            cancel: __('Cancel', 'elementor')
          },
          defaultOption: 'confirm',
          onConfirm: this.resetGallery.bind(this)
        });
      }

      return removeDialog;
    };
  },
  onAddImagesClick: function onAddImagesClick() {
    this.openFrame(this.hasImages() ? 'add' : 'create');
  },
  onClearGalleryClick: function onClearGalleryClick() {
    this.getRemoveDialog().show();
  },
  onGalleryThumbnailsClick: function onGalleryThumbnailsClick() {
    this.openFrame('edit');
  }
});
module.exports = ControlMediaItemView;

/***/ }),

/***/ "../assets/dev/js/editor/controls/hidden.js":
/*!**************************************************!*\
  !*** ../assets/dev/js/editor/controls/hidden.js ***!
  \**************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _baseData = _interopRequireDefault(__webpack_require__(/*! ./base-data */ "../assets/dev/js/editor/controls/base-data.js"));

module.exports = _baseData.default.extend({}, {
  onPasteStyle: function onPasteStyle() {
    return false;
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/controls/icon.js":
/*!************************************************!*\
  !*** ../assets/dev/js/editor/controls/icon.js ***!
  \************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var ControlSelect2View = __webpack_require__(/*! elementor-controls/select2 */ "../assets/dev/js/editor/controls/select2.js"),
    ControlIconView;

ControlIconView = ControlSelect2View.extend({
  initialize: function initialize() {
    ControlSelect2View.prototype.initialize.apply(this, arguments);
    this.filterIcons();
  },
  filterIcons: function filterIcons() {
    var icons = this.model.get('options'),
        include = this.model.get('include'),
        exclude = this.model.get('exclude');

    if (include) {
      var filteredIcons = {};

      _.each(include, function (iconKey) {
        filteredIcons[iconKey] = icons[iconKey];
      });

      this.model.set('options', filteredIcons);
      return;
    }

    if (exclude) {
      _.each(exclude, function (iconKey) {
        delete icons[iconKey];
      });
    }
  },
  iconsList: function iconsList(icon) {
    if (!icon.id) {
      return icon.text;
    }

    return jQuery('<span><i class="' + icon.id + '"></i> ' + icon.text + '</span>');
  },
  getSelect2Options: function getSelect2Options() {
    return {
      allowClear: true,
      templateResult: this.iconsList.bind(this),
      templateSelection: this.iconsList.bind(this)
    };
  }
});
module.exports = ControlIconView;

/***/ }),

/***/ "../assets/dev/js/editor/controls/icons.js":
/*!*************************************************!*\
  !*** ../assets/dev/js/editor/controls/icons.js ***!
  \*************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _filesUploadHandler = _interopRequireDefault(__webpack_require__(/*! ../utils/files-upload-handler */ "../assets/dev/js/editor/utils/files-upload-handler.js"));

var ControlMultipleBaseItemView = __webpack_require__(/*! elementor-controls/base-multiple */ "../assets/dev/js/editor/controls/base-multiple.js");

var ControlIconsView = /*#__PURE__*/function (_ControlMultipleBaseI) {
  (0, _inherits2.default)(ControlIconsView, _ControlMultipleBaseI);

  var _super = (0, _createSuper2.default)(ControlIconsView);

  function ControlIconsView() {
    var _this;

    (0, _classCallCheck2.default)(this, ControlIconsView);

    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }

    _this = _super.call.apply(_super, [this].concat(args));
    _this.cache = {
      loaded: false,
      dialog: false,
      enableClicked: false,
      fa4Mapping: false,
      migratedFlag: {}
    };
    _this.dataKeys = {
      migratedKey: '__fa4_migrated',
      fa4MigrationFlag: 'fa4compatibility'
    };
    return _this;
  }

  (0, _createClass2.default)(ControlIconsView, [{
    key: "enqueueIconFonts",
    value: function enqueueIconFonts(iconType) {
      var iconSetting = elementor.helpers.getIconLibrarySettings(iconType);

      if (false === iconSetting || !this.isMigrationAllowed()) {
        return;
      }

      if (iconSetting.enqueue) {
        iconSetting.enqueue.forEach(function (assetURL) {
          elementor.helpers.enqueueEditorStylesheet(assetURL);
          elementor.helpers.enqueuePreviewStylesheet(assetURL);
        });
      }

      if (iconSetting.url) {
        elementor.helpers.enqueueEditorStylesheet(iconSetting.url);
        elementor.helpers.enqueuePreviewStylesheet(iconSetting.url);
      }
    }
  }, {
    key: "ui",
    value: function ui() {
      var ui = (0, _get2.default)((0, _getPrototypeOf2.default)(ControlIconsView.prototype), "ui", this).call(this),
          skin = this.model.get('skin');
      ui.controlMedia = '.elementor-control-media';
      ui.svgUploader = 'media' === skin ? '.elementor-control-svg-uploader' : '.elementor-control-icons--inline__svg';
      ui.iconPickers = 'media' === skin ? '.elementor-control-icon-picker, .elementor-control-media__preview, .elementor-control-media-upload-button' : '.elementor-control-icons--inline__icon';
      ui.deleteButton = 'media' === skin ? '.elementor-control-media__remove' : '.elementor-control-icons--inline__none';
      ui.previewPlaceholder = '.elementor-control-media__preview';
      ui.previewContainer = '.elementor-control-preview-area';
      ui.inlineIconContainer = '.elementor-control-inline-icon';
      ui.inlineDisplayedIcon = '.elementor-control-icons--inline__displayed-icon';
      ui.radioInputs = '[type="radio"]';
      return ui;
    }
  }, {
    key: "events",
    value: function events() {
      return jQuery.extend(ControlMultipleBaseItemView.prototype.events.apply(this, arguments), {
        'click @ui.iconPickers': 'openPicker',
        'click @ui.svgUploader': 'openFrame',
        'click @ui.radioInputs': 'onClickInput',
        'click @ui.deleteButton': 'deleteIcon'
      });
    }
  }, {
    key: "getControlValue",
    value: function getControlValue() {
      var value = (0, _get2.default)((0, _getPrototypeOf2.default)(ControlIconsView.prototype), "getControlValue", this).call(this),
          model = this.model,
          valueToMigrate = this.getValueToMigrate();

      if (!this.isMigrationAllowed()) {
        return valueToMigrate;
      } // Bail if no migration flag or no value to migrate


      if (!valueToMigrate) {
        return value;
      }

      var didMigration = this.elementSettingsModel.get(this.dataKeys.migratedKey),
          controlName = model.get('name'); // Check if migration had been done and is stored locally

      if (this.cache.migratedFlag[controlName]) {
        return this.cache.migratedFlag[controlName];
      } // Check if already migrated


      if (didMigration && didMigration[controlName]) {
        return value;
      } // Do migration


      return this.migrateFa4toFa5(valueToMigrate);
    }
  }, {
    key: "migrateFa4toFa5",
    value: function migrateFa4toFa5(fa4Value) {
      var fa5Value = elementor.helpers.mapFa4ToFa5(fa4Value);
      this.cache.migratedFlag[this.model.get('name')] = fa5Value;
      this.enqueueIconFonts(fa5Value.library);
      return fa5Value;
    }
  }, {
    key: "setControlAsMigrated",
    value: function setControlAsMigrated(controlName) {
      var didMigration = this.elementSettingsModel.get(this.dataKeys.migratedKey) || {};
      didMigration[controlName] = true;
      this.elementSettingsModel.set(this.dataKeys.migratedKey, didMigration, {
        silent: true
      });
    }
  }, {
    key: "isMigrationAllowed",
    value: function isMigrationAllowed() {
      return !elementor.config['icons_update_needed'];
    }
  }, {
    key: "getValueToMigrate",
    value: function getValueToMigrate() {
      var controlToMigrate = this.model.get(this.dataKeys.fa4MigrationFlag);

      if (!controlToMigrate) {
        return false;
      } // Check if there is a value to migrate


      var valueToMigrate = this.container.settings.get(controlToMigrate);

      if (valueToMigrate) {
        return valueToMigrate;
      }

      return false;
    }
  }, {
    key: "onReady",
    value: function onReady() {
      var _this2 = this;

      // is migration allowed from fa4
      if (!this.isMigrationAllowed()) {
        var migrationPopupTrigger = 'media' === this.model.get('skin') ? this.ui.previewContainer[0] : this.ui.inlineIconContainer[0];
        migrationPopupTrigger.addEventListener('click', function (event) {
          // Prevent default to prevent marking the inline icons as selected on click when migration is not allowed
          event.preventDefault();
          event.stopPropagation();

          var onConfirm = function onConfirm() {
            window.location.href = elementor.config.tools_page_link + '&redirect_to=' + encodeURIComponent(document.location.href) + '#tab-fontawesome4_migration';
          };

          var enableMigrationDialog = elementor.helpers.getSimpleDialog('elementor-enable-fa5-dialog', __('Elementor\'s New Icon Library', 'elementor'), __('Elementor v2.6 includes an upgrade from Font Awesome 4 to 5. In order to continue using icons, be sure to click "Update".', 'elementor') + ' <a href="https://go.elementor.com/fontawesome-migration/" target="_blank">' + __('Learn More', 'elementor') + '</a>', __('Update', 'elementor'), onConfirm);
          enableMigrationDialog.show();
          return false;
        }, true);
      }

      var controlName = this.model.get('name');

      if (this.cache.migratedFlag[controlName]) {
        this.setControlAsMigrated(controlName);
        setTimeout(function () {
          _this2.setValue(_this2.cache.migratedFlag[controlName]);
        }, 10);
      }
    }
  }, {
    key: "onRender",
    value: function onRender() {
      (0, _get2.default)((0, _getPrototypeOf2.default)(ControlIconsView.prototype), "onRender", this).call(this);

      if (this.isMigrationAllowed()) {
        elementor.iconManager.loadIconLibraries();
      }
    }
  }, {
    key: "initFrame",
    value: function initFrame() {
      var _this3 = this;

      // Set current doc id to attach uploaded images.
      wp.media.view.settings.post.id = elementor.config.document.id;
      this.frame = wp.media({
        button: {
          text: __('Insert Media', 'elementor')
        },
        library: {
          type: ['image/svg+xml']
        },
        states: [new wp.media.controller.Library({
          title: __('Insert Media', 'elementor'),
          library: wp.media.query({
            type: ['image/svg+xml']
          }),
          multiple: false,
          date: false
        })]
      });

      var handleSelect = function handleSelect() {
        return _this3.selectSvg();
      }; // When a file is selected, run a callback.


      this.frame.on('insert select', handleSelect);
      this.setUploadMimeType(this.frame, 'svg');
    }
  }, {
    key: "setUploadMimeType",
    value: function setUploadMimeType(frame, ext) {
      // Set svg as only allowed upload extensions
      var oldExtensions = _wpPluploadSettings.defaults.filters.mime_types[0].extensions;
      frame.on('ready', function () {
        _wpPluploadSettings.defaults.filters.mime_types[0].extensions = ext;
      });
      this.frame.on('close', function () {
        // restore allowed upload extensions
        _wpPluploadSettings.defaults.filters.mime_types[0].extensions = oldExtensions;
      });
    }
    /**
     * Callback handler for when an attachment is selected in the media modal.
     * Gets the selected image information, and sets it within the control.
     */

  }, {
    key: "selectSvg",
    value: function selectSvg() {
      this.trigger('before:select'); // Get the attachment from the modal frame.

      var attachment = this.frame.state().get('selection').first().toJSON();

      if (attachment.url) {
        this.setValue({
          value: {
            url: attachment.url,
            id: attachment.id
          },
          library: 'svg'
        });
        this.applySavedValue();
      }

      this.trigger('after:select');
    }
  }, {
    key: "openFrame",
    value: function openFrame() {
      var _this4 = this;

      if (!_filesUploadHandler.default.isUploadEnabled('svg')) {
        _filesUploadHandler.default.getUnfilteredFilesNotEnabledDialog(function () {
          return _this4.openFrame();
        }).show();

        return false;
      }

      if (!this.frame) {
        this.initFrame();
      }

      this.frame.open(); // Set params to trigger sanitizer

      _filesUploadHandler.default.setUploadTypeCaller(this.frame);

      var selectedId = this.getControlValue('id');

      if (!selectedId) {
        return;
      }

      var selection = this.frame.state().get('selection');
      selection.add(wp.media.attachment(selectedId));
    }
  }, {
    key: "openPicker",
    value: function openPicker() {
      elementor.iconManager.show({
        view: this
      });
    }
  }, {
    key: "applySavedValue",
    value: function applySavedValue() {
      var _this5 = this;

      var controlValue = this.getControlValue(),
          skin = this.model.get('skin'),
          iconContainer = 'inline' === skin ? this.ui.inlineDisplayedIcon : this.ui.previewPlaceholder,
          defaultIcon = this.model.get('default');
      var iconValue = controlValue.value,
          iconType = controlValue.library;

      if (!this.isMigrationAllowed() && !iconValue && this.getValueToMigrate()) {
        iconValue = this.getControlValue();
        iconType = '';
      }

      if ('media' === skin) {
        this.ui.controlMedia.toggleClass('elementor-media-empty', !iconValue);
      } else {
        this.markChecked(iconType);
      }

      if (!iconValue) {
        if ('inline' === skin) {
          this.setDefaultIconLibraryLabel(defaultIcon, iconContainer);
          return;
        }

        this.ui.previewPlaceholder.html('');
        return;
      }

      if ('svg' === iconType && 'inline' !== skin) {
        return elementor.helpers.fetchInlineSvg(iconValue.url, function (data) {
          _this5.ui.previewPlaceholder.html(data);
        });
      }

      if ('media' === skin || 'svg' !== iconType) {
        var previewHTML = '<i class="' + iconValue + '"></i>';
        iconContainer.html(previewHTML);
      }

      this.enqueueIconFonts(iconType);
    }
  }, {
    key: "setDefaultIconLibraryLabel",
    value: function setDefaultIconLibraryLabel(defaultIcon, iconContainer) {
      // Check if the control has a default icon
      if ('' !== defaultIcon.value && 'svg' !== defaultIcon.library) {
        // If the default icon is not an SVG, set the icon-library label's icon to the default icon
        iconContainer.html('<i class="' + defaultIcon.value + '"></i>');
      } else {
        // If (1) the control does NOT have a default icon,
        // OR (2) the control DOES have a default icon BUT the default icon is an SVG,
        // set the default icon-library label's icon to a simple circle
        iconContainer.html('<i class="eicon-circle"></i>');
      }
    }
  }, {
    key: "markChecked",
    value: function markChecked(iconType) {
      this.ui.radioInputs.filter(':checked').prop('checked', false);

      if (!iconType) {
        return this.ui.radioInputs.filter('[value="none"]').prop('checked', true);
      }

      if ('svg' !== iconType) {
        iconType = 'icon';
      }

      this.ui.radioInputs.filter('[value="' + iconType + '"]').prop('checked', true);
    }
  }, {
    key: "onClickInput",
    value: function onClickInput() {
      this.markChecked(this.getControlValue().library);
    }
  }, {
    key: "deleteIcon",
    value: function deleteIcon(event) {
      event.stopPropagation();
      this.setValue({
        value: '',
        library: ''
      });
      this.applySavedValue();
    }
  }, {
    key: "onBeforeDestroy",
    value: function onBeforeDestroy() {
      this.$el.remove();
    }
  }]);
  return ControlIconsView;
}(ControlMultipleBaseItemView);

module.exports = ControlIconsView;

/***/ }),

/***/ "../assets/dev/js/editor/controls/image-dimensions.js":
/*!************************************************************!*\
  !*** ../assets/dev/js/editor/controls/image-dimensions.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var ControlMultipleBaseItemView = __webpack_require__(/*! elementor-controls/base-multiple */ "../assets/dev/js/editor/controls/base-multiple.js"),
    ControlImageDimensionsItemView;

ControlImageDimensionsItemView = ControlMultipleBaseItemView.extend({
  ui: function ui() {
    return {
      inputWidth: 'input[data-setting="width"]',
      inputHeight: 'input[data-setting="height"]',
      btnApply: 'button.elementor-image-dimensions-apply-button'
    };
  },
  // Override the base events
  events: function events() {
    return {
      'click @ui.btnApply': 'onApplyClicked',
      'keyup @ui.inputWidth': 'onDimensionKeyUp',
      'keyup @ui.inputHeight': 'onDimensionKeyUp'
    };
  },
  onDimensionKeyUp: function onDimensionKeyUp(event) {
    var ENTER_KEY = 13;

    if (ENTER_KEY === event.keyCode) {
      this.onApplyClicked(event);
    }
  },
  onApplyClicked: function onApplyClicked(event) {
    event.preventDefault();
    this.setValue({
      width: this.ui.inputWidth.val(),
      height: this.ui.inputHeight.val()
    });
  }
});
module.exports = ControlImageDimensionsItemView;

/***/ }),

/***/ "../assets/dev/js/editor/controls/media.js":
/*!*************************************************!*\
  !*** ../assets/dev/js/editor/controls/media.js ***!
  \*************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

__webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

var _filesUploadHandler = _interopRequireDefault(__webpack_require__(/*! ../utils/files-upload-handler */ "../assets/dev/js/editor/utils/files-upload-handler.js"));

var ControlMultipleBaseItemView = __webpack_require__(/*! elementor-controls/base-multiple */ "../assets/dev/js/editor/controls/base-multiple.js"),
    ControlMediaItemView;

ControlMediaItemView = ControlMultipleBaseItemView.extend({
  ui: function ui() {
    var ui = ControlMultipleBaseItemView.prototype.ui.apply(this, arguments);
    ui.controlMedia = '.elementor-control-media';
    ui.mediaImage = '.elementor-control-media__preview';
    ui.mediaVideo = '.elementor-control-media-video';
    ui.frameOpeners = '.elementor-control-preview-area';
    ui.removeButton = '.elementor-control-media__remove';
    ui.fileName = '.elementor-control-media__file__content__info__name';
    return ui;
  },
  events: function events() {
    return _.extend(ControlMultipleBaseItemView.prototype.events.apply(this, arguments), {
      'click @ui.frameOpeners': 'openFrame',
      'click @ui.removeButton': 'deleteImage'
    });
  },
  getMediaType: function getMediaType() {
    // `get( 'media_type' )` is for BC.
    return this.mediaType || this.model.get('media_type') || this.model.get('media_types')[0];
  },

  /**
   * Get library type for `wp.media` using a given media type.
   *
   * @param {String} mediaType - The media type to get the library for.
   * @returns {String}
   */
  getLibraryType: function getLibraryType(mediaType) {
    if (!mediaType) {
      mediaType = this.getMediaType();
    }

    return 'svg' === mediaType ? 'image/svg+xml' : mediaType;
  },
  applySavedValue: function applySavedValue() {
    var _this$getControlPlace;

    var value = this.getControlValue('url'),
        url = value || ((_this$getControlPlace = this.getControlPlaceholder()) === null || _this$getControlPlace === void 0 ? void 0 : _this$getControlPlace.url),
        mediaType = this.getMediaType();

    if (['image', 'svg'].includes(mediaType)) {
      this.ui.mediaImage.css('background-image', url ? 'url(' + url + ')' : '');

      if (!value && url) {
        this.ui.mediaImage.css('opacity', 0.5);
      }
    } else if ('video' === mediaType) {
      this.ui.mediaVideo.attr('src', url);
    } else {
      var fileName = url ? url.split('/').pop() : '';
      this.ui.fileName.text(fileName);
    }

    this.ui.controlMedia.toggleClass('elementor-media-empty', !value);
  },
  openFrame: function openFrame(e) {
    var _e$target,
        _e$target$dataset,
        _this = this;

    var mediaType = (e === null || e === void 0 ? void 0 : (_e$target = e.target) === null || _e$target === void 0 ? void 0 : (_e$target$dataset = _e$target.dataset) === null || _e$target$dataset === void 0 ? void 0 : _e$target$dataset.mediaType) || this.getMediaType();
    this.mediaType = mediaType;

    if (!mediaType) {
      return;
    }

    if (!_filesUploadHandler.default.isUploadEnabled(mediaType)) {
      _filesUploadHandler.default.getUnfilteredFilesNotEnabledDialog(function () {
        return _this.openFrame(e);
      }).show();

      return false;
    } // If there is no frame, or the current initialized frame contains a different library than
    // the `data-media-type` of the clicked button, (re)initialize the frame.


    if (!this.frame || this.getLibraryType(mediaType) !== this.currentLibraryType) {
      this.initFrame();
    }

    this.frame.open(); // Set params to trigger sanitizer

    _filesUploadHandler.default.setUploadTypeCaller(this.frame);

    var selectedId = this.getControlValue('id');

    if (!selectedId) {
      return;
    }

    this.frame.state().get('selection').add(wp.media.attachment(selectedId));
  },
  deleteImage: function deleteImage(event) {
    event.stopPropagation();
    this.setValue({
      url: '',
      id: ''
    });
    this.applySavedValue();
  },

  /**
   * Create a media modal select frame, and store it so the instance can be reused when needed.
   */
  initFrame: function initFrame() {
    var mediaType = this.getMediaType();
    this.currentLibraryType = this.getLibraryType(mediaType); // Set current doc id to attach uploaded images.

    wp.media.view.settings.post.id = elementor.config.document.id;
    this.frame = wp.media({
      frame: 'post',
      type: 'image',
      multiple: false,
      states: [new wp.media.controller.Library({
        title: __('Insert Media', 'elementor'),
        library: wp.media.query({
          type: this.currentLibraryType
        }),
        multiple: false,
        date: false
      })]
    }); // Remove unwanted elements when frame is opened.

    this.frame.on('ready open', this.onFrameReady.bind(this)); // When a file is selected, run a callback.

    this.frame.on('insert select', this.select.bind(this));

    if (elementor.config.filesUpload.unfilteredFiles) {
      this.setUploadMimeType(this.frame, mediaType);
    }
  },

  /**
   * Hack to remove unwanted elements from modal & Open the `Insert from URL` tab.
   */
  onFrameReady: function onFrameReady() {
    var $frame = this.frame.$el;
    var elementsToRemove = ['#menu-item-insert', '#menu-item-gallery', '#menu-item-playlist', '#menu-item-video-playlist', '.embed-link-settings'];
    $frame.find(elementsToRemove.join(',')).remove(); // Change the default button text using CSS by passing the text as a variable.

    $frame.css('--button-text', "'".concat(__('Insert Media', 'elementor'), "'")); // Remove elements from the URL upload tab.

    $frame.addClass('e-wp-media-elements-removed');

    if ('url' === this.getControlValue('source')) {
      // Go to the url tab.
      $frame.find('#menu-item-embed').trigger('click'); // Hide the top media tabs ( WordPress does that automatically if a real user clicks the url tab ).

      $frame.addClass('hide-router'); // Load the image URL.

      this.frame.views.get('.media-frame-content')[0].url.model.set({
        url: this.getControlValue('url'),
        alt: this.getControlValue('alt')
      });
    } else {
      // Go to the upload tab.
      $frame.find('#menu-item-library').trigger('click');
    }
  },
  setUploadMimeType: function setUploadMimeType(frame, ext) {
    // Add unfiltered files to the allowed upload extensions
    var oldExtensions = _wpPluploadSettings.defaults.filters.mime_types[0].extensions;
    frame.on('ready', function () {
      _wpPluploadSettings.defaults.filters.mime_types[0].extensions = 'application/json' === ext ? 'json' : oldExtensions + ',svg';
    });
    this.frame.on('close', function () {
      // Restore allowed upload extensions
      _wpPluploadSettings.defaults.filters.mime_types[0].extensions = oldExtensions;
    });
  },

  /**
   * Callback handler for when an attachment is selected in the media modal.
   * Gets the selected image information, and sets it within the control.
   */
  select: function select() {
    this.trigger('before:select');
    var state = this.frame.state();
    var attachment;

    if ('embed' === state.get('id')) {
      // Insert from URL.
      attachment = {
        url: state.props.get('url'),
        id: '',
        alt: state.props.get('alt'),
        source: 'url'
      };
    } else {
      // Get the attachment from the modal frame.
      attachment = this.frame.state().get('selection').first().toJSON();
      attachment.source = 'library';
    }

    if (attachment.url) {
      this.setValue({
        url: attachment.url,
        id: attachment.id,
        alt: attachment.alt,
        source: attachment.source
      });

      if (this.model.get('responsive')) {
        // Render is already calls `applySavedValue`, therefore there's no need for it in this case.
        this.renderWithChildren();
      } else {
        this.applySavedValue();
      }
    }

    this.trigger('after:select');
  },
  onBeforeDestroy: function onBeforeDestroy() {
    this.$el.remove();
  }
});
module.exports = ControlMediaItemView;

/***/ }),

/***/ "../assets/dev/js/editor/controls/number.js":
/*!**************************************************!*\
  !*** ../assets/dev/js/editor/controls/number.js ***!
  \**************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var ControlBaseDataView = __webpack_require__(/*! elementor-controls/base-data */ "../assets/dev/js/editor/controls/base-data.js"),
    ControlNumberItemView;

ControlNumberItemView = ControlBaseDataView.extend({
  registerValidators: function registerValidators() {
    ControlBaseDataView.prototype.registerValidators.apply(this, arguments);
    var validationTerms = {},
        model = this.model;
    ['min', 'max'].forEach(function (term) {
      var termValue = model.get(term);

      if (_.isFinite(termValue)) {
        validationTerms[term] = termValue;
      }
    });

    if (!jQuery.isEmptyObject(validationTerms)) {
      this.addValidator(new this.validatorTypes.Number({
        validationTerms: validationTerms
      }));
    }
  }
});
module.exports = ControlNumberItemView;

/***/ }),

/***/ "../assets/dev/js/editor/controls/order.js":
/*!*************************************************!*\
  !*** ../assets/dev/js/editor/controls/order.js ***!
  \*************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var ControlMultipleBaseItemView = __webpack_require__(/*! elementor-controls/base-multiple */ "../assets/dev/js/editor/controls/base-multiple.js"),
    ControlOrderItemView;

ControlOrderItemView = ControlMultipleBaseItemView.extend({
  ui: function ui() {
    var ui = ControlMultipleBaseItemView.prototype.ui.apply(this, arguments);
    ui.reverseOrderLabel = '.elementor-control-order-label';
    return ui;
  },
  changeLabelTitle: function changeLabelTitle() {
    var reverseOrder = this.getControlValue('reverse_order');
    this.ui.reverseOrderLabel.attr('title', reverseOrder ? __('Ascending order', 'elementor') : __('Descending order', 'elementor'));
  },
  onRender: function onRender() {
    ControlMultipleBaseItemView.prototype.onRender.apply(this, arguments);
    this.changeLabelTitle();
  },
  onInputChange: function onInputChange() {
    this.changeLabelTitle();
  }
});
module.exports = ControlOrderItemView;

/***/ }),

/***/ "../assets/dev/js/editor/controls/popover-toggle.js":
/*!**********************************************************!*\
  !*** ../assets/dev/js/editor/controls/popover-toggle.js ***!
  \**********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));

__webpack_require__(/*! core-js/modules/es6.string.starts-with.js */ "../node_modules/core-js/modules/es6.string.starts-with.js");

__webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));

var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/asyncToGenerator */ "../node_modules/@babel/runtime-corejs2/helpers/asyncToGenerator.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var ControlChooseView = __webpack_require__(/*! elementor-controls/choose */ "../assets/dev/js/editor/controls/choose.js");

var ControlPopoverStarterView = /*#__PURE__*/function (_ControlChooseView) {
  (0, _inherits2.default)(ControlPopoverStarterView, _ControlChooseView);

  var _super = (0, _createSuper2.default)(ControlPopoverStarterView);

  function ControlPopoverStarterView() {
    (0, _classCallCheck2.default)(this, ControlPopoverStarterView);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(ControlPopoverStarterView, [{
    key: "ui",
    value: function ui() {
      var ui = ControlChooseView.prototype.ui.apply(this, arguments);
      ui.popoverToggle = '.elementor-control-popover-toggle-toggle';
      ui.resetInput = '.elementor-control-popover-toggle-reset';
      return ui;
    }
  }, {
    key: "events",
    value: function events() {
      return _.extend(ControlChooseView.prototype.events.apply(this, arguments), {
        'click @ui.popoverToggle': 'onPopoverToggleClick',
        'click @ui.resetInput': 'onResetInputClick'
      });
    }
  }, {
    key: "onResetInputClick",
    value: function onResetInputClick() {
      var globalData = this.model.get('global');

      if (globalData !== null && globalData !== void 0 && globalData.active) {
        this.triggerMethod('value:type:change');
      }
    }
  }, {
    key: "onInputChange",
    value: function onInputChange(event) {
      if (event.currentTarget !== this.ui.popoverToggle[0]) {
        return;
      } // If the control has a global value, unset the global.


      if (this.getGlobalKey()) {
        this.triggerMethod('unset:global:value');
      } else if (this.isGlobalActive()) {
        this.triggerMethod('value:type:change');
      }
    }
  }, {
    key: "onPopoverToggleClick",
    value: function onPopoverToggleClick() {
      if (this.isGlobalActive() && !this.getControlValue() && !this.getGlobalKey() && this.getGlobalDefault()) {
        this.triggerMethod('unlink:global:default');
      }

      this.$el.next('.elementor-controls-popover').toggle();
    }
  }, {
    key: "getGlobalCommand",
    value: function getGlobalCommand() {
      return 'globals/typography';
    }
  }, {
    key: "buildPreviewItemCSS",
    value: function buildPreviewItemCSS(globalValue) {
      var cssObject = {};
      (0, _entries.default)(globalValue).forEach(function (_ref) {
        var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
            property = _ref2[0],
            value = _ref2[1];

        // If a control value is empty, ignore it.
        if (!value || '' === value.size) {
          return;
        }

        if (property.startsWith('typography_')) {
          property = property.replace('typography_', '');
        }

        if ('font_family' === property) {
          elementor.helpers.enqueueFont(value, 'editor');
        }

        if ('font_size' === property) {
          // Set max size for Typography previews in the select popover so it isn't too big.
          if (value.size > 40) {
            value.size = 40;
          }

          cssObject.fontSize = value.size + value.unit;
        } else {
          // Convert the snake case property names into camel case to match their corresponding CSS property names.
          if (property.includes('_')) {
            property = property.replace(/([_][a-z])/g, function (result) {
              return result.toUpperCase().replace('_', '');
            });
          }

          cssObject[property] = value;
        }
      });
      return cssObject;
    }
  }, {
    key: "createGlobalItemMarkup",
    value: function createGlobalItemMarkup(globalData) {
      var $typographyPreview = jQuery('<div>', {
        class: 'e-global__preview-item e-global__typography',
        'data-global-id': globalData.id
      });
      $typographyPreview.html(globalData.title).css(this.buildPreviewItemCSS(globalData.value));
      return $typographyPreview;
    }
  }, {
    key: "getGlobalMeta",
    value: function getGlobalMeta() {
      return {
        commandName: this.getGlobalCommand(),
        key: this.model.get('name'),
        title: __('New Typography Setting', 'elementor'),
        controlType: 'typography',
        route: 'panel/global/global-typography'
      };
    }
  }, {
    key: "getAddGlobalConfirmMessage",
    value: function getAddGlobalConfirmMessage() {
      var globalData = this.getGlobalMeta(),
          $message = jQuery('<div>', {
        class: 'e-global__confirm-message'
      }),
          $messageText = jQuery('<div>').html(__('Are you sure you want to create a new Global Font setting?', 'elementor')),
          $inputWrapper = jQuery('<div>', {
        class: 'e-global__confirm-input-wrapper'
      }),
          $input = jQuery('<input>', {
        type: 'text',
        name: 'global-name',
        placeholder: globalData.title
      }).val(globalData.title);
      $inputWrapper.append($input);
      $message.append($messageText, $inputWrapper);
      return $message;
    }
  }, {
    key: "getGlobalsList",
    value: function () {
      var _getGlobalsList = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
        var result;
        return _regenerator.default.wrap(function _callee$(_context) {
          while (1) {
            switch (_context.prev = _context.next) {
              case 0:
                _context.next = 2;
                return $e.data.get(this.getGlobalCommand());

              case 2:
                result = _context.sent;
                return _context.abrupt("return", result.data);

              case 4:
              case "end":
                return _context.stop();
            }
          }
        }, _callee, this);
      }));

      function getGlobalsList() {
        return _getGlobalsList.apply(this, arguments);
      }

      return getGlobalsList;
    }()
  }, {
    key: "buildGlobalsList",
    value: function buildGlobalsList(globalTypographies, $globalPreviewItemsContainer) {
      var _this = this;

      (0, _values.default)(globalTypographies).forEach(function (typography) {
        // Only build markup if the typography is valid.
        if (typography) {
          var $typographyPreview = _this.createGlobalItemMarkup(typography);

          $globalPreviewItemsContainer.append($typographyPreview);
        }
      });
    }
  }, {
    key: "onAddGlobalButtonClick",
    value: function onAddGlobalButtonClick() {
      this.triggerMethod('add:global:to:list', this.getAddGlobalConfirmMessage());
    }
  }]);
  return ControlPopoverStarterView;
}(ControlChooseView);

exports.default = ControlPopoverStarterView;

ControlPopoverStarterView.onPasteStyle = function (control, clipboardValue) {
  return !clipboardValue || clipboardValue === control.return_value;
};

/***/ }),

/***/ "../assets/dev/js/editor/controls/repeater-row.js":
/*!********************************************************!*\
  !*** ../assets/dev/js/editor/controls/repeater-row.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var sprintf = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["sprintf"];
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

__webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");

__webpack_require__(/*! core-js/modules/es6.array.iterator.js */ "../node_modules/core-js/modules/es6.array.iterator.js");

__webpack_require__(/*! core-js/modules/web.dom.iterable.js */ "../node_modules/core-js/modules/web.dom.iterable.js");

var _controlsStack = _interopRequireDefault(__webpack_require__(/*! elementor-views/controls-stack */ "../assets/dev/js/editor/views/controls-stack.js"));

module.exports = Marionette.CompositeView.extend({
  template: Marionette.TemplateCache.get('#tmpl-elementor-repeater-row'),
  className: 'elementor-repeater-fields',
  ui: {
    duplicateButton: '.elementor-repeater-tool-duplicate',
    editButton: '.elementor-repeater-tool-edit',
    removeButton: '.elementor-repeater-tool-remove',
    itemTitle: '.elementor-repeater-row-item-title'
  },
  behaviors: {
    HandleInnerTabs: {
      behaviorClass: __webpack_require__(/*! elementor-behaviors/inner-tabs */ "../assets/dev/js/editor/elements/views/behaviors/inner-tabs.js")
    }
  },
  triggers: {
    'click @ui.removeButton': 'click:remove',
    'click @ui.duplicateButton': 'click:duplicate',
    'click @ui.itemTitle': 'click:edit'
  },
  modelEvents: {
    change: 'onModelChange'
  },
  templateHelpers: function templateHelpers() {
    return {
      itemIndex: this.getOption('itemIndex'),
      itemActions: this.getOption('itemActions')
    };
  },
  childViewContainer: '.elementor-repeater-row-controls',
  getChildView: function getChildView(item) {
    var controlType = item.get('type');
    return elementor.getControlView(controlType);
  },
  childViewOptions: function childViewOptions() {
    return {
      container: this.options.container
    };
  },
  updateIndex: function updateIndex(newIndex) {
    this.itemIndex = newIndex;
  },
  setTitle: function setTitle() {
    var titleField = this.getOption('titleField');
    var title = '';

    if (titleField) {
      title = Marionette.TemplateCache.prototype.compileTemplate(titleField)(this.model.parseDynamicSettings());
    }

    if (!title) {
      /* translators: %s: Item Index (number). */
      title = sprintf(__('Item #%s', 'elementor'), this.getOption('itemIndex'));
    }

    this.ui.itemTitle.html(title);
  },
  toggleSort: function toggleSort(enable) {
    this.$el.toggleClass('elementor-repeater-row--disable-sort', !enable);
  },
  initialize: function initialize(options) {
    this.itemIndex = 0; // Collection for Controls list

    this.collection = new Backbone.Collection(_.values(elementor.mergeControlsSettings(options.controlFields)));
  },
  onRender: function onRender() {
    this.setTitle();

    _controlsStack.default.handlePopovers(this);
  },
  onModelChange: function onModelChange() {
    if (this.getOption('titleField')) {
      this.setTitle();
    }
  },
  onChildviewResponsiveSwitcherClick: function onChildviewResponsiveSwitcherClick(childView, device) {
    if ('desktop' === device) {
      elementor.getPanelView().getCurrentPageView().$el.toggleClass('elementor-responsive-switchers-open');
    }
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/controls/repeater.js":
/*!****************************************************!*\
  !*** ../assets/dev/js/editor/controls/repeater.js ***!
  \****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

var ControlBaseDataView = __webpack_require__(/*! elementor-controls/base-data */ "../assets/dev/js/editor/controls/base-data.js"),
    RepeaterRowView = __webpack_require__(/*! elementor-controls/repeater-row */ "../assets/dev/js/editor/controls/repeater-row.js"),
    ControlRepeaterItemView;

ControlRepeaterItemView = ControlBaseDataView.extend({
  ui: {
    btnAddRow: '.elementor-repeater-add',
    fieldContainer: '.elementor-repeater-fields-wrapper'
  },
  events: function events() {
    return {
      'click @ui.btnAddRow': 'onButtonAddRowClick',
      'sortstart @ui.fieldContainer': 'onSortStart',
      'sortupdate @ui.fieldContainer': 'onSortUpdate',
      'sortstop @ui.fieldContainer': 'onSortStop'
    };
  },
  childView: RepeaterRowView,
  childViewContainer: '.elementor-repeater-fields-wrapper',
  templateHelpers: function templateHelpers() {
    return {
      itemActions: this.model.get('item_actions'),
      data: _.extend({}, this.model.toJSON(), {
        controlValue: []
      })
    };
  },
  childViewOptions: function childViewOptions(rowModel, index) {
    var elementContainer = this.getOption('container');
    return {
      container: elementContainer.repeaters[this.model.get('name')].children[index],
      controlFields: this.model.get('fields'),
      titleField: this.model.get('title_field'),
      itemActions: this.model.get('item_actions')
    };
  },
  createItemModel: function createItemModel(attrs, options, controlView) {
    options.controls = controlView.model.get('fields');
    return new elementorModules.editor.elements.models.BaseSettings(attrs, options);
  },
  fillCollection: function fillCollection() {
    // TODO: elementSettingsModel is deprecated since 2.8.0.
    var settings = this.container ? this.container.settings : this.elementSettingsModel;
    var controlName = this.model.get('name');
    this.collection = settings.get(controlName); // Hack for history redo/undo

    if (!(this.collection instanceof Backbone.Collection)) {
      this.collection = new Backbone.Collection(this.collection, {
        // Use `partial` to supply the `this` as an argument, but not as context
        // the `_` is a place holder for original arguments: `attrs` & `options`
        model: _.partial(this.createItemModel, _, _, this)
      }); // Set the value silent

      settings.set(controlName, this.collection, {
        silent: true
      });
    }
  },
  initialize: function initialize() {
    ControlBaseDataView.prototype.initialize.apply(this, arguments);
    this.fillCollection();
    this.listenTo(this.collection, 'reset', this.resetContainer.bind(this));
    this.listenTo(this.collection, 'add', this.updateContainer.bind(this));
  },
  editRow: function editRow(rowView) {
    if (this.currentEditableChild) {
      var currentEditable = this.currentEditableChild.getChildViewContainer(this.currentEditableChild);
      currentEditable.removeClass('editable'); // If the repeater contains TinyMCE editors, fire the `hide` trigger to hide floated toolbars

      currentEditable.find('.elementor-wp-editor').each(function () {
        tinymce.get(this.id).fire('hide');
      });
    }

    if (this.currentEditableChild === rowView) {
      delete this.currentEditableChild;
      return;
    }

    rowView.getChildViewContainer(rowView).addClass('editable');
    this.currentEditableChild = rowView;
    this.updateActiveRow();
  },
  toggleMinRowsClass: function toggleMinRowsClass() {
    if (!this.model.get('prevent_empty')) {
      return;
    }

    this.$el.toggleClass('elementor-repeater-has-minimum-rows', 1 >= this.collection.length);
  },
  updateActiveRow: function updateActiveRow() {
    var activeItemIndex = 1;

    if (this.currentEditableChild) {
      activeItemIndex = this.currentEditableChild.itemIndex;
    }

    this.setEditSetting('activeItemIndex', activeItemIndex);
  },
  updateChildIndexes: function updateChildIndexes() {
    var collection = this.collection;
    this.children.each(function (view) {
      view.updateIndex(collection.indexOf(view.model) + 1);
      view.setTitle();
    });
  },
  onRender: function onRender() {
    ControlBaseDataView.prototype.onRender.apply(this, arguments);

    if (this.model.get('item_actions').sort) {
      this.ui.fieldContainer.sortable({
        axis: 'y',
        handle: '.elementor-repeater-row-tools',
        items: ' > :not(.elementor-repeater-row--disable-sort)'
      });
    }

    this.toggleMinRowsClass();
  },
  onSortStart: function onSortStart(event, ui) {
    ui.item.data('oldIndex', ui.item.index());
  },
  onSortStop: function onSortStop(event, ui) {
    // Reload TinyMCE editors (if exist), it's a bug that TinyMCE content is missing after stop dragging
    var self = this,
        sortedIndex = ui.item.index();

    if (-1 === sortedIndex) {
      return;
    }

    var sortedRowView = self.children.findByIndex(ui.item.index()),
        rowControls = sortedRowView.children._views;
    jQuery.each(rowControls, function () {
      if ('wysiwyg' === this.model.get('type')) {
        sortedRowView.render();
        delete self.currentEditableChild;
        return false;
      }
    });
  },
  onSortUpdate: function onSortUpdate(event, ui) {
    var oldIndex = ui.item.data('oldIndex'),
        newIndex = ui.item.index();
    $e.run('document/repeater/move', {
      container: this.options.container,
      name: this.model.get('name'),
      sourceIndex: oldIndex,
      targetIndex: newIndex
    });
  },
  onAddChild: function onAddChild() {
    this.updateChildIndexes();
    this.updateActiveRow();
  },
  // BC since 3.0.0, ensure a new child is appear in container children.
  updateContainer: function updateContainer(model) {
    var container = this.options.container.repeaters[this.model.get('name')],
        isInChildren = container.children.filter(function (child) {
      return child.id === model.get('_id');
    });

    if (!isInChildren.length) {
      elementorCommon.helpers.softDeprecated('Don\'t add models directly to the repeater.', '3.0.0', '$e.run( \'document/repeater/insert\' )');
      this.options.container.addRepeaterItem(this.model.get('name'), model, model.collection.indexOf(model));
    }
  },
  // BC since 3.0.0, ensure a container children are reset on collection reset.
  resetContainer: function resetContainer() {
    elementorCommon.helpers.softDeprecated('Don\'t reset repeater collection directly.', '3.0.0', '$e.run( \'document/repeater/remove\' )');
    this.options.container.repeaters[this.model.get('name')].children = [];
  },
  getDefaults: function getDefaults() {
    var defaults = {}; // Get default fields.

    _.each(this.model.get('fields'), function (field) {
      defaults[field.name] = field.default;
    });

    return defaults;
  },
  onButtonAddRowClick: function onButtonAddRowClick() {
    var newModel = $e.run('document/repeater/insert', {
      container: this.options.container,
      name: this.model.get('name'),
      model: this.getDefaults()
    });
    var newChild = this.children.findByModel(newModel);
    this.editRow(newChild);
    this.toggleMinRowsClass();
  },
  onChildviewClickRemove: function onChildviewClickRemove(childView) {
    if (childView === this.currentEditableChild) {
      delete this.currentEditableChild;
    }

    $e.run('document/repeater/remove', {
      container: this.options.container,
      name: this.model.get('name'),
      index: childView._index
    });
    this.updateActiveRow();
    this.updateChildIndexes();
    this.toggleMinRowsClass();
  },
  onChildviewClickDuplicate: function onChildviewClickDuplicate(childView) {
    $e.run('document/repeater/duplicate', {
      container: this.options.container,
      name: this.model.get('name'),
      index: childView._index
    });
    this.toggleMinRowsClass();
  },
  onChildviewClickEdit: function onChildviewClickEdit(childView) {
    this.editRow(childView);
  },
  onAfterExternalChange: function onAfterExternalChange() {
    // Update the collection with current value
    this.fillCollection();
    ControlBaseDataView.prototype.onAfterExternalChange.apply(this, arguments);
  }
});
module.exports = ControlRepeaterItemView;

/***/ }),

/***/ "../assets/dev/js/editor/controls/section.js":
/*!***************************************************!*\
  !*** ../assets/dev/js/editor/controls/section.js ***!
  \***************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var ControlBaseView = __webpack_require__(/*! elementor-controls/base */ "../assets/dev/js/editor/controls/base.js"),
    ControlSectionItemView;

ControlSectionItemView = ControlBaseView.extend({
  ui: function ui() {
    var ui = ControlBaseView.prototype.ui.apply(this, arguments);
    ui.heading = '.elementor-panel-heading';
    return ui;
  },
  triggers: {
    click: 'control:section:clicked'
  }
});
module.exports = ControlSectionItemView;

/***/ }),

/***/ "../assets/dev/js/editor/controls/select.js":
/*!**************************************************!*\
  !*** ../assets/dev/js/editor/controls/select.js ***!
  \**************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

var ControlBaseDataView = __webpack_require__(/*! elementor-controls/base-data */ "../assets/dev/js/editor/controls/base-data.js"),
    ControlSelectItemView;

ControlSelectItemView = ControlBaseDataView.extend({
  updatePlaceholder: function updatePlaceholder() {
    var select = this.ui.select;
    var selected = select.find('option:selected'); // When option with an empty value ('') selected, and it's not the placeholder option,
    // set the selected option to the placeholder.

    if ('' === selected.val() && !selected.hasClass('e-option-placeholder')) {
      selected = select.find('.e-option-placeholder');
      selected.prop('selected', true);
    }

    if (selected.hasClass('e-option-placeholder')) {
      select.addClass('e-select-placeholder');
    } else {
      select.removeClass('e-select-placeholder');
    }
  },
  onReady: function onReady() {
    var placeholder = this.getControlPlaceholder();

    if (placeholder) {
      jQuery('<option>').val('').text(this.model.get('options')[placeholder]).addClass('e-option-placeholder').prependTo(this.ui.select);
    }

    this.updatePlaceholder();
  },
  onInputChange: function onInputChange() {
    this.updatePlaceholder();
  }
}, {
  onPasteStyle: function onPasteStyle(control, clipboardValue) {
    if (control.groups) {
      return control.groups.some(function (group) {
        return ControlSelectItemView.onPasteStyle(group, clipboardValue);
      });
    }

    return undefined !== control.options[clipboardValue];
  }
});
module.exports = ControlSelectItemView;

/***/ }),

/***/ "../assets/dev/js/editor/controls/select2.js":
/*!***************************************************!*\
  !*** ../assets/dev/js/editor/controls/select2.js ***!
  \***************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

var _select = _interopRequireDefault(__webpack_require__(/*! elementor-editor-utils/select2.js */ "../assets/dev/js/editor/utils/select2.js"));

var ControlBaseDataView = __webpack_require__(/*! elementor-controls/base-data */ "../assets/dev/js/editor/controls/base-data.js"),
    ControlSelect2ItemView;

ControlSelect2ItemView = ControlBaseDataView.extend({
  getSelect2Placeholder: function getSelect2Placeholder() {
    return this.ui.select.find("[value=\"".concat(this.getControlPlaceholder(), "\"]")).text() || this.ui.select.children('option:first[value=""]').text();
  },
  getSelect2DefaultOptions: function getSelect2DefaultOptions() {
    var defaultOptions = {
      allowClear: true,
      placeholder: this.getSelect2Placeholder(),
      dir: elementorCommon.config.isRTL ? 'rtl' : 'ltr'
    },
        lockedOptions = this.model.get('lockedOptions'); // If any non-deletable options are passed, remove the 'x' element from the template for selected items.

    if (lockedOptions) {
      defaultOptions.templateSelection = function (data, container) {
        if (lockedOptions.includes(data.id)) {
          jQuery(container).addClass('e-non-deletable').find('.select2-selection__choice__remove').remove();
        }

        return data.text;
      };
    }

    return defaultOptions;
  },
  getSelect2Options: function getSelect2Options() {
    return jQuery.extend(this.getSelect2DefaultOptions(), this.model.get('select2options'));
  },
  updatePlaceholder: function updatePlaceholder() {
    if (this.getControlPlaceholder()) {
      this.select2Instance.elements.$container.find('.select2-selection__placeholder').addClass('e-select2-placeholder');
    }
  },
  applySavedValue: function applySavedValue() {
    ControlBaseDataView.prototype.applySavedValue.apply(this, arguments);
    var elementSelect2Data = this.ui.select.data('select2'); // Checking if the element itself was initiated with select2 functionality in case of multiple renders.

    if (!elementSelect2Data) {
      this.select2Instance = new _select.default({
        $element: this.ui.select,
        options: this.getSelect2Options()
      });
      this.updatePlaceholder();
      this.handleLockedOptions();
    } else {
      this.ui.select.trigger('change');
    }
  },
  handleLockedOptions: function handleLockedOptions() {
    var lockedOptions = this.model.get('lockedOptions');

    if (lockedOptions) {
      this.ui.select.on('select2:unselecting', function (event) {
        if (lockedOptions.includes(event.params.args.data.id)) {
          event.preventDefault();
        }
      });
    }
  },
  onReady: function onReady() {
    elementorCommon.helpers.softDeprecated('onReady', '3.0.0');
  },
  onBaseInputChange: function onBaseInputChange() {
    ControlBaseDataView.prototype.onBaseInputChange.apply(this, arguments);
    this.updatePlaceholder();
  },
  onBeforeDestroy: function onBeforeDestroy() {
    // We always destroy the select2 instance because there are cases where the DOM element's data cache
    // itself has been destroyed but the select2 instance on it still exists
    this.select2Instance.destroy();
    this.$el.remove();
  }
});
module.exports = ControlSelect2ItemView;

/***/ }),

/***/ "../assets/dev/js/editor/controls/slider.js":
/*!**************************************************!*\
  !*** ../assets/dev/js/editor/controls/slider.js ***!
  \**************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var ControlBaseUnitsItemView = __webpack_require__(/*! elementor-controls/base-units */ "../assets/dev/js/editor/controls/base-units.js"),
    ControlSliderItemView;

ControlSliderItemView = ControlBaseUnitsItemView.extend({
  ui: function ui() {
    var ui = ControlBaseUnitsItemView.prototype.ui.apply(this, arguments);
    ui.slider = '.elementor-slider';
    return ui;
  },
  templateHelpers: function templateHelpers() {
    var templateHelpers = ControlBaseUnitsItemView.prototype.templateHelpers.apply(this, arguments);
    templateHelpers.isMultiple = this.isMultiple();
    return templateHelpers;
  },
  isMultiple: function isMultiple() {
    var sizes = this.getControlValue('sizes');
    return !jQuery.isEmptyObject(sizes);
  },
  initSlider: function initSlider() {
    // Slider does not exist in tests.
    if (!this.ui.slider[0]) {
      return;
    }

    this.destroySlider();
    var isMultiple = this.isMultiple(),
        unitRange = elementorCommon.helpers.cloneObject(this.getCurrentRange()),
        step = unitRange.step;
    var sizes = this.getSize();

    if (isMultiple) {
      sizes = (0, _values.default)(sizes);
    } else {
      sizes = [sizes];
      this.ui.input.attr(unitRange);
    }

    delete unitRange.step;
    var tooltips;
    var self = this;

    if (isMultiple) {
      tooltips = [];
      sizes.forEach(function () {
        return tooltips.push({
          to: function to(value) {
            return value + self.getControlValue('unit');
          }
        });
      });
    }

    var sliderInstance = noUiSlider.create(this.ui.slider[0], {
      start: sizes,
      range: unitRange,
      step: step,
      tooltips: tooltips,
      connect: isMultiple,
      format: {
        to: function to(value) {
          return Math.round(value * 1000) / 1000;
        },
        from: function from(value) {
          return +value;
        }
      }
    });
    sliderInstance.on('slide', this.onSlideChange.bind(this));
  },
  applySavedValue: function applySavedValue() {
    ControlBaseUnitsItemView.prototype.applySavedValue.apply(this, arguments); // Slider does not exist in tests.

    if (this.ui.slider[0] && this.ui.slider[0].noUiSlider) {
      this.ui.slider[0].noUiSlider.set(this.getSize());
    }
  },
  getSize: function getSize() {
    var _this$getControlPlace, _this$model$get;

    var property = this.isMultiple() ? 'sizes' : 'size',
        value = this.getControlValue(property);
    return value || ((_this$getControlPlace = this.getControlPlaceholder()) === null || _this$getControlPlace === void 0 ? void 0 : _this$getControlPlace[property]) || ((_this$model$get = this.model.get('default')) === null || _this$model$get === void 0 ? void 0 : _this$model$get[property]);
  },
  resetSize: function resetSize() {
    if (this.isMultiple()) {
      this.setValue('sizes', {});
    } else {
      this.setValue('size', '');
    }

    this.initSlider();
  },
  destroySlider: function destroySlider() {
    // Slider does not exist in tests.
    if (this.ui.slider[0] && this.ui.slider[0].noUiSlider) {
      this.ui.slider[0].noUiSlider.destroy();
    }
  },
  onReady: function onReady() {
    if (this.isMultiple()) {
      this.$el.addClass('elementor-control-type-slider--multiple elementor-control-type-slider--handles-' + this.model.get('handles'));
    }

    this.initSlider();
  },
  onSlideChange: function onSlideChange(values, index) {
    if (this.isMultiple()) {
      var sizes = elementorCommon.helpers.cloneObject(this.getSize()),
          key = (0, _keys.default)(sizes)[index];
      sizes[key] = values[index];
      this.setValue('sizes', sizes);
    } else {
      this.setValue('size', values[0]);
      this.ui.input.val(values[0]);
    }
  },
  onInputChange: function onInputChange(event) {
    var dataChanged = event.currentTarget.dataset.setting;

    if ('size' === dataChanged) {
      this.ui.slider[0].noUiSlider.set(this.getSize());
    } else if ('unit' === dataChanged) {
      this.resetSize();
    }
  },
  onBeforeDestroy: function onBeforeDestroy() {
    this.destroySlider();
    this.$el.remove();
  }
});
module.exports = ControlSliderItemView;

/***/ }),

/***/ "../assets/dev/js/editor/controls/structure.js":
/*!*****************************************************!*\
  !*** ../assets/dev/js/editor/controls/structure.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var ControlBaseDataView = __webpack_require__(/*! elementor-controls/base-data */ "../assets/dev/js/editor/controls/base-data.js"),
    ControlStructureItemView;

ControlStructureItemView = ControlBaseDataView.extend({
  ui: function ui() {
    var ui = ControlBaseDataView.prototype.ui.apply(this, arguments);
    ui.resetStructure = '.elementor-control-structure-reset';
    return ui;
  },
  events: function events() {
    return _.extend(ControlBaseDataView.prototype.events.apply(this, arguments), {
      'click @ui.resetStructure': 'onResetStructureClick'
    });
  },
  templateHelpers: function templateHelpers() {
    var helpers = ControlBaseDataView.prototype.templateHelpers.apply(this, arguments);
    helpers.getMorePresets = this.getMorePresets.bind(this);
    return helpers;
  },
  getCurrentEditedSection: function getCurrentEditedSection() {
    var editor = elementor.getPanelView().getCurrentPageView();
    return editor.getOption('editedElementView');
  },
  getMorePresets: function getMorePresets() {
    var parsedStructure = elementor.presetsFactory.getParsedStructure(this.getControlValue());
    return elementor.presetsFactory.getPresets(parsedStructure.columnsCount);
  },
  onResetStructureClick: function onResetStructureClick() {
    this.getCurrentEditedSection().resetColumnsCustomSize();
  }
});
module.exports = ControlStructureItemView;

/***/ }),

/***/ "../assets/dev/js/editor/controls/switcher.js":
/*!****************************************************!*\
  !*** ../assets/dev/js/editor/controls/switcher.js ***!
  \****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var ControlBaseDataView = __webpack_require__(/*! elementor-controls/base-data */ "../assets/dev/js/editor/controls/base-data.js");

module.exports = ControlBaseDataView.extend({
  setInputValue: function setInputValue(input, value) {
    this.$(input).prop('checked', this.model.get('return_value') === value);
  }
}, {
  onPasteStyle: function onPasteStyle(control, clipboardValue) {
    return !clipboardValue || clipboardValue === control.return_value;
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/controls/tab.js":
/*!***********************************************!*\
  !*** ../assets/dev/js/editor/controls/tab.js ***!
  \***********************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var ControlBaseView = __webpack_require__(/*! elementor-controls/base */ "../assets/dev/js/editor/controls/base.js"),
    ControlTabItemView;

ControlTabItemView = ControlBaseView.extend({
  triggers: {
    click: {
      event: 'control:tab:clicked',
      stopPropagation: false
    }
  }
});
module.exports = ControlTabItemView;

/***/ }),

/***/ "../assets/dev/js/editor/controls/url.js":
/*!***********************************************!*\
  !*** ../assets/dev/js/editor/controls/url.js ***!
  \***********************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var BaseMultiple = __webpack_require__(/*! elementor-controls/base-multiple */ "../assets/dev/js/editor/controls/base-multiple.js");

var URL = /*#__PURE__*/function (_BaseMultiple) {
  (0, _inherits2.default)(URL, _BaseMultiple);

  var _super = (0, _createSuper2.default)(URL);

  function URL() {
    (0, _classCallCheck2.default)(this, URL);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(URL, [{
    key: "ui",
    value: function ui() {
      var ui = (0, _get2.default)((0, _getPrototypeOf2.default)(URL.prototype), "ui", this).call(this);
      ui.mainInput = '.elementor-input';
      ui.moreOptionsToggle = '.elementor-control-url-more';
      ui.moreOptions = '.elementor-control-url-more-options';
      return ui;
    }
  }, {
    key: "events",
    value: function events() {
      var events = (0, _get2.default)((0, _getPrototypeOf2.default)(URL.prototype), "events", this).call(this);
      events['click @ui.moreOptionsToggle'] = 'onMoreOptionsToggleClick';
      return events;
    }
  }, {
    key: "autoComplete",
    value: function autoComplete() {
      var _this = this;

      var $mainInput = this.ui.mainInput,
          positionBase = elementorCommon.config.isRTL ? 'right' : 'left';
      var last, cache; // Based on /wp-includes/js/tinymce/plugins/wplink/plugin.js.

      $mainInput.autocomplete({
        source: function source(request, response) {
          if (!_this.options.model.attributes.autocomplete) {
            return;
          }

          if (last === request.term) {
            response(cache);
            return;
          }

          if (/^https?:/.test(request.term) || request.term.indexOf('.') !== -1) {
            return response();
          } // Show Spinner.


          $mainInput.prev().show();
          jQuery.post(window.ajaxurl, {
            editor: 'elementor',
            action: 'wp-link-ajax',
            page: 1,
            search: request.term,
            _ajax_linking_nonce: jQuery('#_ajax_linking_nonce').val()
          }, function (data) {
            cache = data;
            response(data);
          }, 'json').always(function () {
            return $mainInput.prev().hide();
          });
          last = request.term;
        },
        focus: function focus(event) {
          /*
           * Don't empty the URL input field, when using the arrow keys to
           * highlight items. See api.jqueryui.com/autocomplete/#event-focus
           */
          event.preventDefault();
        },
        select: function select(event, ui) {
          $mainInput.val(ui.item.permalink);

          _this.setValue('url', ui.item.permalink);

          return false;
        },
        open: function open(event) {
          jQuery(event.target).data('uiAutocomplete').menu.activeMenu.addClass('elementor-autocomplete-menu');
        },
        minLength: 2,
        position: {
          my: positionBase + ' top+2',
          at: positionBase + ' bottom'
        }
      }); // The `_renderItem` cannot be override via the arguments.

      $mainInput.autocomplete('instance')._renderItem = function (ul, item) {
        var fallbackTitle = window.wpLinkL10n ? window.wpLinkL10n.noTitle : '',
            title = item.title ? item.title : fallbackTitle;
        return jQuery('<li role="option" id="mce-wp-autocomplete-' + item.ID + '">').append('<span>' + title + '</span>&nbsp;<span class="elementor-autocomplete-item-info">' + item.info + '</span>').appendTo(ul);
      };
    }
  }, {
    key: "onReady",
    value: function onReady() {
      this.autoComplete();
    }
  }, {
    key: "onMoreOptionsToggleClick",
    value: function onMoreOptionsToggleClick() {
      this.ui.moreOptions.slideToggle();
    }
  }, {
    key: "onBeforeDestroy",
    value: function onBeforeDestroy() {
      if (this.ui.mainInput.data('autocomplete')) {
        this.ui.mainInput.autocomplete('destroy');
      }

      this.$el.remove();
    }
  }]);
  return URL;
}(BaseMultiple);

module.exports = URL;

/***/ }),

/***/ "../assets/dev/js/editor/controls/wp_widget.js":
/*!*****************************************************!*\
  !*** ../assets/dev/js/editor/controls/wp_widget.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var ControlBaseDataView = __webpack_require__(/*! elementor-controls/base-data */ "../assets/dev/js/editor/controls/base-data.js"),
    ControlWPWidgetItemView;

ControlWPWidgetItemView = ControlBaseDataView.extend({
  ui: function ui() {
    var ui = ControlBaseDataView.prototype.ui.apply(this, arguments);
    ui.form = 'form';
    ui.loading = '.wp-widget-form-loading';
    return ui;
  },
  events: function events() {
    return {
      'keyup @ui.form :input': 'onFormChanged',
      'change @ui.form :input': 'onFormChanged'
    };
  },
  onFormChanged: function onFormChanged() {
    var idBase = 'widget-' + this.model.get('id_base'),
        settings = this.ui.form.elementorSerializeObject()[idBase].REPLACE_TO_ID;
    this.setValue(settings);
  },
  onReady: function onReady() {
    var self = this;
    elementorCommon.ajax.addRequest('editor_get_wp_widget_form', {
      data: {
        // Fake Widget ID
        id: self.model.cid,
        widget_type: self.model.get('widget'),
        data: self.container.settings.toJSON()
      },
      success: function success(data) {
        self.ui.form.html(data); // WP >= 4.8

        if (wp.textWidgets) {
          self.ui.form.addClass('open');
          var event = new jQuery.Event('widget-added');
          wp.textWidgets.handleWidgetAdded(event, self.ui.form);
          wp.mediaWidgets.handleWidgetAdded(event, self.ui.form); // WP >= 4.9

          if (wp.customHtmlWidgets) {
            wp.customHtmlWidgets.handleWidgetAdded(event, self.ui.form);
          }
        }

        var widgetType = self.model.get('widget');
        elementor.hooks.doAction("panel/widgets/".concat(widgetType, "/controls/wp_widget/loaded"), self);
      }
    });
  }
});
module.exports = ControlWPWidgetItemView;

/***/ }),

/***/ "../assets/dev/js/editor/controls/wysiwyg.js":
/*!***************************************************!*\
  !*** ../assets/dev/js/editor/controls/wysiwyg.js ***!
  \***************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


__webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");

__webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

var ControlBaseDataView = __webpack_require__(/*! elementor-controls/base-data */ "../assets/dev/js/editor/controls/base-data.js"),
    ControlWysiwygItemView;

ControlWysiwygItemView = ControlBaseDataView.extend({
  editor: null,
  ui: function ui() {
    var ui = ControlBaseDataView.prototype.ui.apply(this, arguments);
    jQuery.extend(ui, {
      inputWrapper: '.elementor-control-input-wrapper'
    });
    return ui;
  },
  events: function events() {
    return _.extend(ControlBaseDataView.prototype.events.apply(this, arguments), {
      'keyup textarea.elementor-wp-editor': 'onBaseInputChange'
    });
  },
  // List of buttons to move {buttonToMove: afterButton}
  buttons: {
    addToBasic: {
      underline: 'italic'
    },
    addToAdvanced: {},
    moveToAdvanced: {
      blockquote: 'removeformat',
      alignleft: 'blockquote',
      aligncenter: 'alignleft',
      alignright: 'aligncenter'
    },
    moveToBasic: {},
    removeFromBasic: ['unlink', 'wp_more'],
    removeFromAdvanced: []
  },
  initialize: function initialize() {
    ControlBaseDataView.prototype.initialize.apply(this, arguments);
    var self = this;
    self.editorID = 'elementorwpeditor' + self.cid; // Wait a cycle before initializing the editors.

    _.defer(function () {
      if (self.isDestroyed) {
        return;
      } // Initialize QuickTags, and set as the default mode.


      quicktags({
        buttons: 'strong,em,del,link,img,close',
        id: self.editorID
      });

      if (elementor.config.rich_editing_enabled) {
        switchEditors.go(self.editorID, 'tmce');
      }

      delete QTags.instances[0];
    });

    if (!elementor.config.rich_editing_enabled) {
      self.$el.addClass('elementor-rich-editing-disabled');
      return;
    }

    var editorConfig = {
      id: self.editorID,
      selector: '#' + self.editorID,
      setup: function setup(editor) {
        self.editor = editor;
      }
    };
    tinyMCEPreInit.mceInit[self.editorID] = _.extend(_.clone(tinyMCEPreInit.mceInit.elementorwpeditor), editorConfig);

    if (!elementor.config.tinymceHasCustomConfig) {
      self.rearrangeButtons();
    }
  },
  applySavedValue: function applySavedValue() {
    if (!this.editor) {
      return;
    }

    var controlValue = this.getControlValue();
    this.editor.setContent(controlValue); // Update also the plain textarea

    jQuery('#' + this.editorID).val(controlValue);
  },
  saveEditor: function saveEditor() {
    this.setValue(this.editor.getContent());
  },
  moveButtons: function moveButtons(buttonsToMove, from, to) {
    if (!to) {
      to = from;
      from = null;
    }

    _.each(buttonsToMove, function (afterButton, button) {
      var afterButtonIndex = to.indexOf(afterButton);

      if (from) {
        var buttonIndex = from.indexOf(button);

        if (-1 === buttonIndex) {
          throw new ReferenceError('Trying to move non-existing button `' + button + '`');
        }

        from.splice(buttonIndex, 1);
      }

      if (-1 === afterButtonIndex) {
        throw new ReferenceError('Trying to move button after non-existing button `' + afterButton + '`');
      }

      to.splice(afterButtonIndex + 1, 0, button);
    });
  },
  rearrangeButtons: function rearrangeButtons() {
    var editorProps = tinyMCEPreInit.mceInit[this.editorID],
        editorBasicToolbarButtons = editorProps.toolbar1.split(','),
        editorAdvancedToolbarButtons = editorProps.toolbar2.split(',');
    editorBasicToolbarButtons = _.difference(editorBasicToolbarButtons, this.buttons.removeFromBasic);
    editorAdvancedToolbarButtons = _.difference(editorAdvancedToolbarButtons, this.buttons.removeFromAdvanced);
    this.moveButtons(this.buttons.moveToBasic, editorAdvancedToolbarButtons, editorBasicToolbarButtons);
    this.moveButtons(this.buttons.moveToAdvanced, editorBasicToolbarButtons, editorAdvancedToolbarButtons);
    this.moveButtons(this.buttons.addToBasic, editorBasicToolbarButtons);
    this.moveButtons(this.buttons.addToAdvanced, editorAdvancedToolbarButtons);
    editorProps.toolbar1 = editorBasicToolbarButtons.join(',');
    editorProps.toolbar2 = editorAdvancedToolbarButtons.join(',');
  },
  onReady: function onReady() {
    var _this = this;

    var $editor = jQuery(elementor.config.wp_editor.replace(/elementorwpeditor/g, this.editorID).replace('%%EDITORCONTENT%%', this.getControlValue()));
    $editor.find(".wp-editor-tabs").addClass('elementor-control-dynamic-switcher-wrapper');
    this.ui.inputWrapper.html($editor);
    setTimeout(function () {
      if (!_this.isDestroyed && _this.editor) {
        _this.editor.on('keyup change undo redo', _this.saveEditor.bind(_this));
      }
    }, 100);
  },
  onBeforeDestroy: function onBeforeDestroy() {
    // Remove TinyMCE and QuickTags instances
    delete QTags.instances[this.editorID];

    if (!elementor.config.rich_editing_enabled) {
      return;
    }

    tinymce.EditorManager.execCommand('mceRemoveEditor', true, this.editorID); // Cleanup PreInit data

    delete tinyMCEPreInit.mceInit[this.editorID];
    delete tinyMCEPreInit.qtInit[this.editorID];
  }
});
module.exports = ControlWysiwygItemView;

/***/ }),

/***/ "../assets/dev/js/editor/document.js":
/*!*******************************************!*\
  !*** ../assets/dev/js/editor/document.js ***!
  \*******************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _manager = _interopRequireDefault(__webpack_require__(/*! elementor/modules/history/assets/js/history/manager */ "../modules/history/assets/js/history/manager.js"));

var _manager2 = _interopRequireDefault(__webpack_require__(/*! elementor/modules/history/assets/js/revisions/manager */ "../modules/history/assets/js/revisions/manager.js"));

/**
 * TODO: Wrong class name + location, conflict with 'editor.js'.
 */
var Editor = function Editor() {
  (0, _classCallCheck2.default)(this, Editor);
  (0, _defineProperty2.default)(this, "status", 'closed');
  (0, _defineProperty2.default)(this, "isSaving", false);
  (0, _defineProperty2.default)(this, "isChanged", false);
  (0, _defineProperty2.default)(this, "isChangedDuringSave", false);
  (0, _defineProperty2.default)(this, "isSaved", true);
  (0, _defineProperty2.default)(this, "lastSaveHistoryId", 0);
};

var Document = /*#__PURE__*/function () {
  /**
   * Document id.
   *
   * @type {number|null}
   */

  /**
   * History of the document.
   *
   * @type {HistoryManager}
   */

  /**
   * Revisions of the document.
   *
   * @type {RevisionsManager}
   */

  /**
   * Current container.
   *
   * @type {Container}
   */

  /**
   * Editor Settings.
   *
   * @type {Editor}
   */

  /**
   * Function constructor().
   *
   * Create document.
   *
   * @param {{}} config
   */
  function Document(config) {
    (0, _classCallCheck2.default)(this, Document);
    (0, _defineProperty2.default)(this, "id", null);
    (0, _defineProperty2.default)(this, "history", null);
    (0, _defineProperty2.default)(this, "revisions", null);
    (0, _defineProperty2.default)(this, "container", null);
    (0, _defineProperty2.default)(this, "editor", new Editor());
    this.config = config;
    this.id = config.id;
    this.history = new _manager.default(this);
    this.revisions = new _manager2.default(this);
  }

  (0, _createClass2.default)(Document, [{
    key: "isDraft",
    value: function isDraft() {
      return this.config.revisions.current_id !== this.config.id;
    }
  }]);
  return Document;
}();

exports.default = Document;

/***/ }),

/***/ "../assets/dev/js/editor/document/helper-bc.js":
/*!*****************************************************!*\
  !*** ../assets/dev/js/editor/document/helper-bc.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var BackwardsCompatibility = /*#__PURE__*/function () {
  function BackwardsCompatibility() {
    (0, _classCallCheck2.default)(this, BackwardsCompatibility);
  }

  (0, _createClass2.default)(BackwardsCompatibility, null, [{
    key: "findViewRecursive",
    value: function findViewRecursive(parent, key, value) {
      var multiple = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;
      elementorCommon.helpers.softDeprecated('findViewRecursive', '2.9.0', "$e.components.get( 'document' ).utils.findViewRecursive( parent, key, value, multiple )");
      return $e.components.get('document').utils.findViewRecursive(parent, key, value, multiple);
    }
  }, {
    key: "findViewById",
    value: function findViewById(id) {
      elementorCommon.helpers.softDeprecated('findViewById', '2.9.0', "$e.components.get( 'document' ).utils.findViewById( id )");
      return $e.components.get('document').utils.findViewById(id);
    }
  }, {
    key: "findContainerById",
    value: function findContainerById(id) {
      elementorCommon.helpers.softDeprecated('findContainerById', '2.9.0', "$e.components.get( 'document' ).utils.findContainerById( id )");
      return $e.components.get('document').utils.findContainerById(id);
    }
  }, {
    key: "isValidChild",
    value: function isValidChild(childModel, parentModel) {
      elementorCommon.helpers.softDeprecated('isValidChild', '3.4.0', "$e.components.get( 'document/elements' ).utils.isValidChild( childModel, parentModel )");
      return $e.components.get('document/elements').utils.isValidChild(childModel, parentModel);
    }
  }, {
    key: "isValidGrandChild",
    value: function isValidGrandChild(childModel, targetContainer) {
      elementorCommon.helpers.softDeprecated('isValidGrandChild', '3.4.0', "$e.components.get( 'document/elements' ).utils.isValidGrandChild( childModel, targetContainer )");
      return $e.components.get('document/elements').utils.isValidGrandChild(childModel, targetContainer);
    }
  }, {
    key: "isSameElement",
    value: function isSameElement(sourceModel, targetContainer) {
      elementorCommon.helpers.softDeprecated('isSameElement', '3.4.0', "$e.components.get( 'document/elements' ).utils.isSameElement( sourceModel, targetContainer )");
      return $e.components.get('document/elements').utils.isSameElement(sourceModel, targetContainer);
    }
  }, {
    key: "getPasteOptions",
    value: function getPasteOptions(sourceModel, targetContainer) {
      elementorCommon.helpers.softDeprecated('getPasteOptions', '3.4.0', "$e.components.get( 'document/elements' ).utils.getPasteOptions( sourceModel, targetContainer )");
      return $e.components.get('document/elements').utils.getPasteOptions(sourceModel, targetContainer);
    }
  }, {
    key: "isPasteEnabled",
    value: function isPasteEnabled(targetContainer) {
      elementorCommon.helpers.softDeprecated('isPasteEnabled', '3.4.0', "$e.components.get( 'document/elements' ).utils.isPasteEnabled( targetContainer )");
      return $e.components.get('document/elements').utils.isPasteEnabled(targetContainer);
    }
  }]);
  return BackwardsCompatibility;
}();

exports.default = BackwardsCompatibility;

/***/ }),

/***/ "../assets/dev/js/editor/document/history/commands/do.js":
/*!***************************************************************!*\
  !*** ../assets/dev/js/editor/document/history/commands/do.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Do = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Do = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Do, _CommandBase);

  var _super = (0, _createSuper2.default)(Do);

  function Do() {
    (0, _classCallCheck2.default)(this, Do);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Do, [{
    key: "apply",
    value: function apply(args) {
      var index = args.index;
      return elementor.documents.getCurrent().history.doItem(index);
    }
  }]);
  return Do;
}(_commandBase.default);

exports.Do = Do;
var _default = Do;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/history/commands/index.js":
/*!******************************************************************!*\
  !*** ../assets/dev/js/editor/document/history/commands/index.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "Do", {
  enumerable: true,
  get: function get() {
    return _do.Do;
  }
});

_Object$defineProperty(exports, "Redo", {
  enumerable: true,
  get: function get() {
    return _redo.Redo;
  }
});

_Object$defineProperty(exports, "Undo", {
  enumerable: true,
  get: function get() {
    return _undo.Undo;
  }
});

_Object$defineProperty(exports, "UndoAll", {
  enumerable: true,
  get: function get() {
    return _undoAll.UndoAll;
  }
});

var _do = __webpack_require__(/*! ./do */ "../assets/dev/js/editor/document/history/commands/do.js");

var _redo = __webpack_require__(/*! ./redo */ "../assets/dev/js/editor/document/history/commands/redo.js");

var _undo = __webpack_require__(/*! ./undo */ "../assets/dev/js/editor/document/history/commands/undo.js");

var _undoAll = __webpack_require__(/*! ./undo-all */ "../assets/dev/js/editor/document/history/commands/undo-all.js");

/***/ }),

/***/ "../assets/dev/js/editor/document/history/commands/redo.js":
/*!*****************************************************************!*\
  !*** ../assets/dev/js/editor/document/history/commands/redo.js ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Redo = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Redo = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Redo, _CommandBase);

  var _super = (0, _createSuper2.default)(Redo);

  function Redo() {
    (0, _classCallCheck2.default)(this, Redo);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Redo, [{
    key: "apply",
    value: function apply() {
      elementor.documents.getCurrent().history.navigate(true);
    }
  }]);
  return Redo;
}(_commandBase.default);

exports.Redo = Redo;
var _default = Redo;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/history/commands/undo-all.js":
/*!*********************************************************************!*\
  !*** ../assets/dev/js/editor/document/history/commands/undo-all.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.UndoAll = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var UndoAll = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(UndoAll, _CommandBase);

  var _super = (0, _createSuper2.default)(UndoAll);

  function UndoAll() {
    (0, _classCallCheck2.default)(this, UndoAll);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(UndoAll, [{
    key: "apply",
    value: function apply(args) {
      var document = args.document;
      document.history.doItem(document.history.getItems().length - 1);
    }
  }]);
  return UndoAll;
}(_commandBase.default);

exports.UndoAll = UndoAll;
var _default = UndoAll;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/history/commands/undo.js":
/*!*****************************************************************!*\
  !*** ../assets/dev/js/editor/document/history/commands/undo.js ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Undo = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Undo = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Undo, _CommandBase);

  var _super = (0, _createSuper2.default)(Undo);

  function Undo() {
    (0, _classCallCheck2.default)(this, Undo);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Undo, [{
    key: "apply",
    value: function apply() {
      elementor.documents.getCurrent().history.navigate();
    }
  }]);
  return Undo;
}(_commandBase.default);

exports.Undo = Undo;
var _default = Undo;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/save/behaviors/footer-saver.js":
/*!***********************************************************************!*\
  !*** ../assets/dev/js/editor/document/save/behaviors/footer-saver.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

module.exports = /*#__PURE__*/function (_Marionette$Behavior) {
  (0, _inherits2.default)(FooterSaver, _Marionette$Behavior);

  var _super = (0, _createSuper2.default)(FooterSaver);

  function FooterSaver() {
    var _this;

    (0, _classCallCheck2.default)(this, FooterSaver);

    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }

    _this = _super.call.apply(_super, [this].concat(args));
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "previewWindow", null);
    return _this;
  }

  (0, _createClass2.default)(FooterSaver, [{
    key: "ui",
    value: function ui() {
      return {
        buttonPreview: '#elementor-panel-footer-saver-preview',
        buttonPublish: '#elementor-panel-saver-button-publish',
        buttonSaveOptions: '#elementor-panel-saver-button-save-options',
        buttonPublishLabel: '#elementor-panel-saver-button-publish-label',
        menuSaveDraft: '#elementor-panel-footer-sub-menu-item-save-draft',
        lastEditedWrapper: '.elementor-last-edited-wrapper'
      };
    }
  }, {
    key: "events",
    value: function events() {
      return {
        'click @ui.buttonPreview': 'onClickButtonPreview',
        'click @ui.buttonPublish': 'onClickButtonPublish',
        'click @ui.menuSaveDraft': 'onClickMenuSaveDraft'
      };
    }
  }, {
    key: "initialize",
    value: function initialize(options) {
      var _this2 = this;

      this.document = options.document || elementor.documents.getCurrent();
      elementor.on('document:loaded', function (document) {
        _this2.setMenuItems(document);

        _this2.setLastEdited(document.config.last_edited);
      }); // TODO: Temp, footerSaver should be removed.

      $e.components.get('document/save').footerSaver = this;
    }
  }, {
    key: "activateSaveButtons",
    value: function activateSaveButtons(document, status) {
      var hasChanges = status || 'draft' === document.container.settings.get('post_status');
      this.ui.buttonPublish.add(this.ui.menuSaveDraft).toggleClass('elementor-disabled', !hasChanges);
      this.ui.buttonSaveOptions.toggleClass('elementor-disabled', !hasChanges);
    }
  }, {
    key: "onRender",
    value: function onRender() {
      this.addTooltip();
    }
  }, {
    key: "setLastEdited",
    value: function setLastEdited(lastEdited) {
      this.ui.lastEditedWrapper.removeClass('elementor-button-state').find('.elementor-last-edited').html(lastEdited);
    }
  }, {
    key: "onClickButtonPreview",
    value: function onClickButtonPreview() {
      $e.run('editor/documents/preview', {
        id: elementor.documents.getCurrent().id
      });
    }
  }, {
    key: "onClickButtonPublish",
    value: function onClickButtonPublish() {
      if (this.ui.buttonPublish.hasClass('elementor-disabled')) {
        return;
      }

      $e.run('document/save/default');
    }
  }, {
    key: "onClickMenuSaveDraft",
    value: function onClickMenuSaveDraft() {
      $e.run('document/save/draft');
    }
  }, {
    key: "setMenuItems",
    value: function setMenuItems(document) {
      var postStatus = document.container.settings.get('post_status'),
          translationMap = {
        publish: __('Publish', 'elementor'),
        update: __('Update', 'elementor'),
        submit: __('Submit', 'elementor')
      };
      var publishLabel = 'publish';

      switch (postStatus) {
        case 'publish':
        case 'private':
          publishLabel = 'update';

          if (document.config.revisions.current_id !== document.id) {
            this.activateSaveButtons(document, true);
          }

          break;

        case 'draft':
          if (!document.config.user.can_publish) {
            publishLabel = 'submit';
          }

          this.activateSaveButtons(document, true);
          break;

        case 'pending': // User cannot change post status

        case undefined:
          // TODO: as a contributor it's undefined instead of 'pending'.
          if (!document.config.user.can_publish) {
            publishLabel = 'update';
          }

          break;
      }

      this.ui.buttonPublishLabel.html(translationMap[publishLabel]);
    }
  }, {
    key: "addTooltip",
    value: function addTooltip() {
      // Create tooltip on controls
      this.$el.find('.tooltip-target').each(function (index, button) {
        var $button = jQuery(button);
        $button.tipsy({
          // `n` for down, `s` for up
          gravity: 's',
          offset: $button.data('tooltip-offset'),
          title: function title() {
            return this.getAttribute('data-tooltip');
          }
        });
      });
    } // TODO: Consider $e.internal( 'editor/documents/preview-refresh' ); ?.

  }, {
    key: "refreshWpPreview",
    value: function refreshWpPreview() {
      if (this.previewWindow) {
        // Refresh URL form updated config.
        try {
          this.previewWindow.location.href = elementor.config.document.urls.wp_preview;
        } catch (e) {// If the this.previewWindow is closed or it's domain was changed.
          // Do nothing.
        }
      }
    }
  }]);
  return FooterSaver;
}(Marionette.Behavior);

/***/ }),

/***/ "../assets/dev/js/editor/editor-base.js":
/*!**********************************************!*\
  !*** ../assets/dev/js/editor/editor-base.js ***!
  \**********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty2 = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty2(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _isArray = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js"));

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js"));

__webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");

__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js"));

var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _defineProperty3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _color = _interopRequireDefault(__webpack_require__(/*! ./controls/color */ "../assets/dev/js/editor/controls/color.js"));

var _dateTime = _interopRequireDefault(__webpack_require__(/*! elementor-controls/date-time */ "../assets/dev/js/editor/controls/date-time.js"));

var _component = _interopRequireDefault(__webpack_require__(/*! elementor-editor/component */ "../assets/dev/js/editor/component.js"));

var _environment = _interopRequireDefault(__webpack_require__(/*! elementor-common/utils/environment */ "../core/common/assets/js/utils/environment.js"));

var _module = _interopRequireDefault(__webpack_require__(/*! elementor/modules/history/assets/js/module */ "../modules/history/assets/js/module.js"));

var _hotkeys = _interopRequireDefault(__webpack_require__(/*! ./components/hotkeys/hotkeys */ "../assets/dev/js/editor/components/hotkeys/hotkeys.js"));

var _iconsManager = _interopRequireDefault(__webpack_require__(/*! ./components/icons-manager/icons-manager */ "../assets/dev/js/editor/components/icons-manager/icons-manager.js"));

var _menu = _interopRequireDefault(__webpack_require__(/*! elementor-panel/pages/menu/menu */ "../assets/dev/js/editor/regions/panel/pages/menu/menu.js"));

var _promotion = _interopRequireDefault(__webpack_require__(/*! ./utils/promotion */ "../assets/dev/js/editor/utils/promotion.js"));

var _manager = _interopRequireDefault(__webpack_require__(/*! ../../../../core/kits/assets/js/manager.js */ "../core/kits/assets/js/manager.js"));

var _navigator = _interopRequireDefault(__webpack_require__(/*! ./regions/navigator/navigator */ "../assets/dev/js/editor/regions/navigator/navigator.js"));

var _noticeBar = _interopRequireDefault(__webpack_require__(/*! ./utils/notice-bar */ "../assets/dev/js/editor/utils/notice-bar.js"));

var _preview = _interopRequireDefault(__webpack_require__(/*! elementor-views/preview */ "../assets/dev/js/editor/views/preview.js"));

var _popoverToggle = _interopRequireDefault(__webpack_require__(/*! elementor-controls/popover-toggle */ "../assets/dev/js/editor/controls/popover-toggle.js"));

var _responsiveBar = _interopRequireDefault(__webpack_require__(/*! ./regions/responsive-bar/responsive-bar */ "../assets/dev/js/editor/regions/responsive-bar/responsive-bar.js"));

var _devTools = _interopRequireDefault(__webpack_require__(/*! elementor/modules/dev-tools/assets/js/editor/dev-tools */ "../modules/dev-tools/assets/js/editor/dev-tools.js"));

var _module2 = _interopRequireDefault(__webpack_require__(/*! elementor/modules/landing-pages/assets/js/editor/module */ "../modules/landing-pages/assets/js/editor/module.js"));

var _module3 = _interopRequireDefault(__webpack_require__(/*! elementor/modules/elements-color-picker/assets/js/editor/module */ "../modules/elements-color-picker/assets/js/editor/module.js"));

var _breakpoints = _interopRequireDefault(__webpack_require__(/*! elementor-utils/breakpoints */ "../assets/dev/js/utils/breakpoints.js"));

/* global ElementorConfig */
var EditorBase = /*#__PURE__*/function (_Marionette$Applicati) {
  (0, _inherits2.default)(EditorBase, _Marionette$Applicati);

  var _super = (0, _createSuper2.default)(EditorBase);

  function EditorBase() {
    var _this;

    (0, _classCallCheck2.default)(this, EditorBase);

    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }

    _this = _super.call.apply(_super, [this].concat(args));
    (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "widgetsCache", {});
    (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "config", {});
    (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "loaded", false);
    (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "previewLoadedOnce", false);
    (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "activeBreakpointsUpdated", false);
    (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "helpers", __webpack_require__(/*! elementor-editor-utils/helpers */ "../assets/dev/js/editor/utils/helpers.js"));
    (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "imagesManager", __webpack_require__(/*! elementor-editor-utils/images-manager */ "../assets/dev/js/editor/utils/images-manager.js"));
    (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "schemes", __webpack_require__(/*! elementor-editor-utils/schemes */ "../assets/dev/js/editor/utils/schemes.js"));
    (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "presetsFactory", __webpack_require__(/*! elementor-editor-utils/presets-factory */ "../assets/dev/js/editor/utils/presets-factory.js"));
    (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "templates", __webpack_require__(/*! elementor-templates/manager */ "../assets/dev/js/editor/components/template-library/manager.js"));
    (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "ajax", elementorCommon.ajax);
    (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "conditions", __webpack_require__(/*! elementor-editor-utils/conditions */ "../assets/dev/js/editor/utils/conditions.js"));
    (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "history", __webpack_require__(/*! elementor/modules/history/assets/js/module */ "../modules/history/assets/js/module.js"));
    (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "channels", {
      editor: Backbone.Radio.channel('ELEMENTOR:editor'),
      data: Backbone.Radio.channel('ELEMENTOR:data'),
      panelElements: Backbone.Radio.channel('ELEMENTOR:panelElements'),
      dataEditMode: Backbone.Radio.channel('ELEMENTOR:editmode'),
      deviceMode: Backbone.Radio.channel('ELEMENTOR:deviceMode'),
      templates: Backbone.Radio.channel('ELEMENTOR:templates'),
      responsivePreview: Backbone.Radio.channel('ELEMENTOR:responsivePreview')
    });
    (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "backgroundClickListeners", {
      popover: {
        element: '.elementor-controls-popover',
        ignore: '.elementor-control-popover-toggle-toggle, .elementor-control-popover-toggle-toggle-label, .select2-container, .pcr-app'
      },
      globalControlsSelect: {
        element: '.e-global__popover',
        ignore: '.e-global__popover-toggle'
      },
      tagsList: {
        element: '.elementor-tags-list',
        ignore: '.elementor-control-dynamic-switcher'
      },
      panelFooterSubMenus: {
        element: '.elementor-panel-footer-tool.elementor-toggle-state',
        ignore: '.elementor-panel-footer-tool.elementor-toggle-state, #elementor-panel-saver-button-publish-label',
        callback: function callback($elementsToHide) {
          $elementsToHide.removeClass('elementor-open');
        }
      },
      panelResponsiveSwitchers: {
        element: '.elementor-control-responsive-switchers',
        callback: function callback($elementsToHide) {
          $elementsToHide.removeClass('elementor-responsive-switchers-open');
        }
      },
      promotion: {
        ignore: '.elementor-responsive-panel',
        callback: function callback() {
          var dialog = elementor.promotion.dialog;

          if (dialog) {
            dialog.hide();
          }
        }
      }
    });
    (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "modules", {
      // TODO: Deprecated alias since 2.3.0
      get Module() {
        elementorCommon.helpers.hardDeprecated('elementor.modules.Module', '2.3.0', 'elementorModules.Module');
        return elementorModules.Module;
      },

      components: {
        templateLibrary: {
          views: {
            // TODO: Deprecated alias since 2.4.0
            get BaseModalLayout() {
              elementorCommon.helpers.hardDeprecated('elementor.modules.components.templateLibrary.views.BaseModalLayout', '2.4.0', 'elementorModules.common.views.modal.Layout');
              return elementorModules.common.views.modal.Layout;
            }

          }
        },
        saver: {
          behaviors: {
            FooterSaver: __webpack_require__(/*! ./document/save/behaviors/footer-saver */ "../assets/dev/js/editor/document/save/behaviors/footer-saver.js")
          }
        }
      },
      saver: {
        get footerBehavior() {
          elementorCommon.helpers.softDeprecated('elementor.modules.saver.footerBehavior.', '2.9.0', 'elementor.modules.components.saver.behaviors.FooterSaver');
          return elementor.modules.components.saver.behaviors.FooterSaver;
        }

      },
      controls: {
        Animation: __webpack_require__(/*! elementor-controls/select2 */ "../assets/dev/js/editor/controls/select2.js"),
        Base: __webpack_require__(/*! elementor-controls/base */ "../assets/dev/js/editor/controls/base.js"),
        BaseData: __webpack_require__(/*! elementor-controls/base-data */ "../assets/dev/js/editor/controls/base-data.js"),
        BaseMultiple: __webpack_require__(/*! elementor-controls/base-multiple */ "../assets/dev/js/editor/controls/base-multiple.js"),
        Box_shadow: __webpack_require__(/*! elementor-controls/box-shadow */ "../assets/dev/js/editor/controls/box-shadow.js"),
        Button: __webpack_require__(/*! elementor-controls/button */ "../assets/dev/js/editor/controls/button.js"),
        Choose: __webpack_require__(/*! elementor-controls/choose */ "../assets/dev/js/editor/controls/choose.js"),
        Code: __webpack_require__(/*! elementor-controls/code */ "../assets/dev/js/editor/controls/code.js"),
        Color: _color.default,
        Date_time: _dateTime.default,
        Dimensions: __webpack_require__(/*! elementor-controls/dimensions */ "../assets/dev/js/editor/controls/dimensions.js"),
        Exit_animation: __webpack_require__(/*! elementor-controls/select2 */ "../assets/dev/js/editor/controls/select2.js"),
        Font: __webpack_require__(/*! elementor-controls/font */ "../assets/dev/js/editor/controls/font.js"),
        Gallery: __webpack_require__(/*! elementor-controls/gallery */ "../assets/dev/js/editor/controls/gallery.js"),
        Hidden: __webpack_require__(/*! elementor-controls/hidden */ "../assets/dev/js/editor/controls/hidden.js"),
        Hover_animation: __webpack_require__(/*! elementor-controls/select2 */ "../assets/dev/js/editor/controls/select2.js"),
        Icon: __webpack_require__(/*! elementor-controls/icon */ "../assets/dev/js/editor/controls/icon.js"),
        Icons: __webpack_require__(/*! elementor-controls/icons */ "../assets/dev/js/editor/controls/icons.js"),
        Image_dimensions: __webpack_require__(/*! elementor-controls/image-dimensions */ "../assets/dev/js/editor/controls/image-dimensions.js"),
        Media: __webpack_require__(/*! elementor-controls/media */ "../assets/dev/js/editor/controls/media.js"),
        Number: __webpack_require__(/*! elementor-controls/number */ "../assets/dev/js/editor/controls/number.js"),
        Order: __webpack_require__(/*! elementor-controls/order */ "../assets/dev/js/editor/controls/order.js"),
        Popover_toggle: _popoverToggle.default,
        Repeater: __webpack_require__(/*! elementor-controls/repeater */ "../assets/dev/js/editor/controls/repeater.js"),
        RepeaterRow: __webpack_require__(/*! elementor-controls/repeater-row */ "../assets/dev/js/editor/controls/repeater-row.js"),
        Section: __webpack_require__(/*! elementor-controls/section */ "../assets/dev/js/editor/controls/section.js"),
        Select: __webpack_require__(/*! elementor-controls/select */ "../assets/dev/js/editor/controls/select.js"),
        Select2: __webpack_require__(/*! elementor-controls/select2 */ "../assets/dev/js/editor/controls/select2.js"),
        Slider: __webpack_require__(/*! elementor-controls/slider */ "../assets/dev/js/editor/controls/slider.js"),
        Structure: __webpack_require__(/*! elementor-controls/structure */ "../assets/dev/js/editor/controls/structure.js"),
        Switcher: __webpack_require__(/*! elementor-controls/switcher */ "../assets/dev/js/editor/controls/switcher.js"),
        Tab: __webpack_require__(/*! elementor-controls/tab */ "../assets/dev/js/editor/controls/tab.js"),
        Text_shadow: __webpack_require__(/*! elementor-controls/box-shadow */ "../assets/dev/js/editor/controls/box-shadow.js"),
        Url: __webpack_require__(/*! elementor-controls/url */ "../assets/dev/js/editor/controls/url.js"),
        Wp_widget: __webpack_require__(/*! elementor-controls/wp_widget */ "../assets/dev/js/editor/controls/wp_widget.js"),
        Wysiwyg: __webpack_require__(/*! elementor-controls/wysiwyg */ "../assets/dev/js/editor/controls/wysiwyg.js")
      },
      elements: {
        models: {
          // TODO: Deprecated alias since 2.4.0
          get BaseSettings() {
            elementorCommon.helpers.hardDeprecated('elementor.modules.elements.models.BaseSettings', '2.4.0', 'elementorModules.editor.elements.models.BaseSettings');
            return elementorModules.editor.elements.models.BaseSettings;
          },

          Element: __webpack_require__(/*! elementor-elements/models/element */ "../assets/dev/js/editor/elements/models/element.js")
        },
        views: {
          Widget: __webpack_require__(/*! elementor-elements/views/widget */ "../assets/dev/js/editor/elements/views/widget.js")
        }
      },
      layouts: {
        panel: {
          pages: {
            elements: {
              views: {
                Global: __webpack_require__(/*! elementor-panel/pages/elements/views/global */ "../assets/dev/js/editor/regions/panel/pages/elements/views/global.js"),
                Elements: __webpack_require__(/*! elementor-panel/pages/elements/views/elements */ "../assets/dev/js/editor/regions/panel/pages/elements/views/elements.js")
              }
            },
            menu: {
              Menu: _menu.default
            }
          }
        }
      },
      views: {
        // TODO: Deprecated alias since 2.4.0
        get ControlsStack() {
          elementorCommon.helpers.hardDeprecated('elementor.modules.views.ControlsStack', '2.4.0', 'elementorModules.editor.views.ControlsStack');
          return elementorModules.editor.views.ControlsStack;
        }

      }
    });
    return _this;
  }

  (0, _createClass2.default)(EditorBase, [{
    key: "debug",
    get: function get() {
      elementorCommon.helpers.softDeprecated('elementor.debug', '3.0.0', 'elementorCommon.debug');
      return elementorCommon.debug;
    }
  }, {
    key: "userCan",
    value: function userCan(capability) {
      return -1 === this.config.user.restrictions.indexOf(capability);
    }
  }, {
    key: "addControlView",
    value: function addControlView(controlID, ControlView) {
      this.modules.controls[elementorCommon.helpers.upperCaseWords(controlID)] = ControlView;
    }
  }, {
    key: "checkEnvCompatibility",
    value: function checkEnvCompatibility() {
      return _environment.default.firefox || _environment.default.webkit;
    }
  }, {
    key: "getElementData",
    value: function getElementData(model) {
      var elType = model.get('elType');

      if ('widget' === elType) {
        var widgetType = model.get('widgetType');

        if (!this.widgetsCache[widgetType]) {
          return false;
        }

        if (!this.widgetsCache[widgetType].commonMerged) {
          jQuery.extend(this.widgetsCache[widgetType].controls, this.widgetsCache.common.controls);
          this.widgetsCache[widgetType].commonMerged = true;
        }

        return this.widgetsCache[widgetType];
      }

      if (!this.config.elements[elType]) {
        return false;
      }

      var elementConfig = elementorCommon.helpers.cloneObject(this.config.elements[elType]);

      if ('section' === elType && model.get('isInner')) {
        elementConfig.title = __('Inner Section', 'elementor');
      }

      return elementConfig;
    }
  }, {
    key: "getElementControls",
    value: function getElementControls(modelElement) {
      var elementData = this.getElementData(modelElement);

      if (!elementData) {
        return false;
      }

      var isInner = modelElement.get('isInner'),
          controls = {};

      _.each(elementData.controls, function (controlData, controlKey) {
        if (isInner && controlData.hide_in_inner || !isInner && controlData.hide_in_top) {
          return;
        }

        controls[controlKey] = controlData;
      });

      return controls;
    }
  }, {
    key: "mergeControlsSettings",
    value: function mergeControlsSettings(controls) {
      var _this2 = this;

      _.each(controls, function (controlData, controlKey) {
        controls[controlKey] = jQuery.extend(true, {}, _this2.config.controls[controlData.type], controlData);
      });

      return controls;
    }
  }, {
    key: "getControlView",
    value: function getControlView(controlID) {
      var capitalizedControlName = elementorCommon.helpers.upperCaseWords(controlID);
      var View = this.modules.controls[capitalizedControlName];

      if (!View) {
        var controlData = this.config.controls[controlID],
            isUIControl = controlData && -1 !== controlData.features.indexOf('ui');
        View = this.modules.controls[isUIControl ? 'Base' : 'BaseData'];
      }

      return View;
    }
  }, {
    key: "getPanelView",
    value: function getPanelView() {
      return this.panel.currentView;
    }
  }, {
    key: "getPreviewView",
    value: function getPreviewView() {
      return this.previewView;
    }
    /**
     * @returns {Container}
     */

  }, {
    key: "getPreviewContainer",
    value: function getPreviewContainer() {
      return this.getPreviewView().getContainer();
    }
  }, {
    key: "getContainer",
    value: function getContainer(id) {
      if ('document' === id) {
        return this.getPreviewContainer();
      }

      return $e.components.get('document').utils.findContainerById(id);
    }
  }, {
    key: "initComponents",
    value: function initComponents() {
      var EventManager = __webpack_require__(/*! elementor-utils/hooks */ "../assets/dev/js/utils/hooks.js"),
          DynamicTags = __webpack_require__(/*! elementor-dynamic-tags/manager */ "../assets/dev/js/editor/components/dynamic-tags/manager.js"),
          Settings = __webpack_require__(/*! elementor-editor/components/settings/settings */ "../assets/dev/js/editor/components/settings/settings.js"),
          Notifications = __webpack_require__(/*! elementor-editor-utils/notifications */ "../assets/dev/js/editor/utils/notifications.js");

      this.hooks = new EventManager();
      this.settings = new Settings();
      this.dynamicTags = new DynamicTags();
      this.initDialogsManager();
      this.notifications = new Notifications();
      this.kitManager = new _manager.default();
      this.hotkeysScreen = new _hotkeys.default();
      this.iconManager = new _iconsManager.default();
      this.noticeBar = new _noticeBar.default();
      this.history = new _module.default();
      this.promotion = new _promotion.default();
      this.devTools = new _devTools.default();
      this.documents = $e.components.register(new _component.default()); // Adds the Landing Page tab to the Template library modal when editing Landing Pages.

      if (elementorCommon.config.experimentalFeatures['landing-pages']) {
        this.modules.landingLibraryPageModule = new _module2.default();
      }

      if (elementorCommon.config.experimentalFeatures['elements-color-picker']) {
        this.modules.elementsColorPicker = new _module3.default();
      }

      elementorCommon.elements.$window.trigger('elementor:init-components');
    } // TODO: BC method since 2.3.0

  }, {
    key: "initDialogsManager",
    value: function initDialogsManager() {
      this.dialogsManager = elementorCommon.dialogsManager;
    }
  }, {
    key: "initElements",
    value: function initElements() {
      var ElementCollection = __webpack_require__(/*! elementor-elements/collections/elements */ "../assets/dev/js/editor/elements/collections/elements.js");

      var config = this.config.document.elements; // If it's an reload, use the not-saved data

      if (this.elements && this.elements.length && this.config.document.id === this.config.initial_document.id) {
        config = this.elements.toJSON();
      }

      this.elements = new ElementCollection(config);
      this.elementsModel = new Backbone.Model({
        elements: this.elements
      });
    }
  }, {
    key: "initPreview",
    value: function initPreview() {
      var $ = jQuery,
          previewIframeId = 'elementor-preview-iframe';
      this.$previewWrapper = $('#elementor-preview');
      this.$previewResponsiveWrapper = $('#elementor-preview-responsive-wrapper'); // Make sure the iFrame does not exist.

      if (!this.$preview) {
        this.$preview = $('<iframe>', {
          id: previewIframeId,
          src: this.config.initial_document.urls.preview,
          allowfullscreen: 1
        });
        this.$previewResponsiveWrapper.append(this.$preview);
      }

      this.$preview.on('load', this.onPreviewLoaded.bind(this));
    }
  }, {
    key: "initPreviewView",
    value: function initPreviewView(document) {
      elementor.trigger('document:before:preview', document);
      var preview = new _preview.default({
        el: document.$element[0],
        model: elementor.elementsModel
      });
      preview.$el.empty(); // In order to force rendering of children

      preview.isRendered = true;

      preview._renderChildren();

      preview.triggerMethod('render');
      this.previewView = preview;
    }
  }, {
    key: "initFrontend",
    value: function initFrontend() {
      var frontendWindow = this.$preview[0].contentWindow;
      window.elementorFrontend = frontendWindow.elementorFrontend;
      frontendWindow.elementor = this;
      frontendWindow.elementorCommon = elementorCommon;
      elementorFrontend.init();
      this.trigger('frontend:init');
    }
  }, {
    key: "initClearPageDialog",
    value: function initClearPageDialog() {
      var dialog;

      this.getClearPageDialog = function () {
        if (dialog) {
          return dialog;
        }

        dialog = elementorCommon.dialogsManager.createWidget('confirm', {
          id: 'elementor-clear-page-dialog',
          headerMessage: __('Delete All Content', 'elementor'),
          message: __('Attention: We are going to DELETE ALL CONTENT from this page. Are you sure you want to do that?', 'elementor'),
          position: {
            my: 'center center',
            at: 'center center'
          },
          strings: {
            confirm: __('Delete', 'elementor'),
            cancel: __('Cancel', 'elementor')
          },
          onConfirm: function onConfirm() {
            return $e.run('document/elements/empty', {
              force: true
            });
          }
        });
        return dialog;
      };
    }
  }, {
    key: "getCurrentElement",
    value: function getCurrentElement() {
      var isPreview = -1 !== ['BODY', 'IFRAME'].indexOf(document.activeElement.tagName) && 'BODY' === elementorFrontend.elements.window.document.activeElement.tagName;

      if (!isPreview && !elementorCommonConfig.isTesting) {
        return false;
      }

      var targetElement = elementor.channels.editor.request('contextMenu:targetView');

      if (!targetElement) {
        var panel = elementor.getPanelView();

        if ($e.routes.isPartOf('panel/editor')) {
          targetElement = panel.getCurrentPageView().getOption('editedElementView');
        }
      }

      if (!targetElement) {
        targetElement = elementor.getPreviewView();
      }

      return targetElement;
    }
  }, {
    key: "initPanel",
    value: function initPanel() {
      this.addRegions({
        panel: __webpack_require__(/*! elementor-regions/panel/panel */ "../assets/dev/js/editor/regions/panel/panel.js")
      });
      this.trigger('panel:init');
    }
  }, {
    key: "initResponsiveBar",
    value: function initResponsiveBar() {
      this.addRegions({
        responsiveBar: {
          el: '#elementor-responsive-bar',
          regionClass: _responsiveBar.default
        }
      });
      this.trigger('responsiveBar:init');
    }
  }, {
    key: "initNavigator",
    value: function initNavigator() {
      this.addRegions({
        navigator: {
          el: '#elementor-navigator',
          regionClass: _navigator.default
        }
      });
      this.trigger('navigator:init');
    }
  }, {
    key: "setAjax",
    value: function setAjax() {
      elementorCommon.ajax.addRequestConstant('editor_post_id', this.config.document.id);
      elementorCommon.ajax.addRequestConstant('initial_document_id', this.config.initial_document.id);
      elementorCommon.ajax.on('request:unhandledError', function (xmlHttpRequest) {
        elementor.notifications.showToast({
          message: elementor.createAjaxErrorMessage(xmlHttpRequest)
        });
      });
    }
  }, {
    key: "createAjaxErrorMessage",
    value: function createAjaxErrorMessage(xmlHttpRequest) {
      var message;

      if (4 === xmlHttpRequest.readyState) {
        message = __('Server Error', 'elementor');

        if (200 !== xmlHttpRequest.status) {
          message += ' (' + xmlHttpRequest.status + ' ' + xmlHttpRequest.statusText + ')';
        }
      } else if (0 === xmlHttpRequest.readyState) {
        message = __('Connection Lost', 'elementor');
      } else {
        message = __('Unknown Error', 'elementor');
      }

      return message + '.';
    }
  }, {
    key: "activatePreviewResizable",
    value: function activatePreviewResizable() {
      var $responsiveWrapper = this.$previewResponsiveWrapper;

      if ($responsiveWrapper.resizable('instance')) {
        return;
      }

      $responsiveWrapper.resizable({
        handles: 'e, s, w',
        stop: function stop() {
          $responsiveWrapper.css({
            width: '',
            height: '',
            left: '',
            right: '',
            top: '',
            bottom: ''
          });
        },
        resize: function resize(event, ui) {
          $responsiveWrapper.css({
            right: '0',
            left: '0',
            top: '0',
            bottom: '0'
          }); // Old versions of jQuery don't support custom properties

          var style = $responsiveWrapper[0].style;
          style.setProperty('--e-editor-preview-width', ui.size.width + 'px');
          style.setProperty('--e-editor-preview-height', ui.size.height + 'px');
        }
      });
    }
  }, {
    key: "destroyPreviewResizable",
    value: function destroyPreviewResizable() {
      if (this.$previewResponsiveWrapper.resizable('instance')) {
        this.$previewResponsiveWrapper.resizable('destroy');
      }
    }
  }, {
    key: "broadcastPreviewResize",
    value: function broadcastPreviewResize() {
      this.channels.responsivePreview.reply('size', {
        width: this.$preview.innerWidth(),
        height: this.$preview.innerHeight()
      }).trigger('resize');
    }
  }, {
    key: "getCurrentDeviceConstrains",
    value: function getCurrentDeviceConstrains() {
      var currentBreakpoint = elementor.channels.deviceMode.request('currentMode'),
          activeBreakpoints = elementorFrontend.config.responsive.activeBreakpoints,
          currentBreakpointData = activeBreakpoints[currentBreakpoint],
          currentBreakpointMaxPoint = 'widescreen' === currentBreakpoint ? 9999 : currentBreakpointData.value;
      var currentBreakpointMinPoint = this.breakpoints.getDeviceMinBreakpoint(currentBreakpoint); // If the device under the current device mode's breakpoint has a larger max value - use the current device's
      // value as the min width point.

      if (currentBreakpointMinPoint > currentBreakpointData.value) {
        currentBreakpointMinPoint = currentBreakpointData.value;
      }

      return {
        maxWidth: currentBreakpointMaxPoint,
        minWidth: currentBreakpointMinPoint
      };
    }
  }, {
    key: "getBreakpointResizeOptions",
    value: function getBreakpointResizeOptions(currentBreakpoint) {
      var previewHeight = elementor.$previewWrapper.height() - 80,
          // 80 = responsive bar height + ui-resizable-handle
      specialBreakpointsHeights = {
        mobile: {
          minHeight: 480,
          height: 736,
          width: 360,
          maxHeight: 896
        },
        mobile_extra: {
          minHeight: 320,
          height: 736,
          maxHeight: 896
        },
        tablet: {
          minHeight: 768,
          height: previewHeight,
          maxHeight: 1024
        },
        tablet_extra: {
          minHeight: 768,
          height: previewHeight,
          maxHeight: 1024
        },
        laptop: {
          minHeight: 768,
          height: previewHeight,
          maxHeight: 1024
        },
        widescreen: {
          minHeight: 768,
          height: previewHeight,
          maxHeight: 1200
        }
      };
      var deviceConstrains = this.getCurrentDeviceConstrains();

      if (specialBreakpointsHeights[currentBreakpoint]) {
        deviceConstrains = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, deviceConstrains), specialBreakpointsHeights[currentBreakpoint]);
      }

      return deviceConstrains;
    }
  }, {
    key: "updatePreviewResizeOptions",
    value: function updatePreviewResizeOptions() {
      var preserveCurrentSize = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
      var $responsiveWrapper = this.$previewResponsiveWrapper,
          currentBreakpoint = elementor.channels.deviceMode.request('currentMode');

      if ('desktop' === currentBreakpoint) {
        this.destroyPreviewResizable(); // Old versions of jQuery don't support custom properties

        var style = $responsiveWrapper[0].style;
        style.setProperty('--e-editor-preview-width', '');
        style.setProperty('--e-editor-preview-height', '');
      } else {
        var _breakpointResizeOpti;

        this.activatePreviewResizable();
        var breakpointResizeOptions = this.getBreakpointResizeOptions(currentBreakpoint);
        var widthToShow = (_breakpointResizeOpti = breakpointResizeOptions.width) !== null && _breakpointResizeOpti !== void 0 ? _breakpointResizeOpti : breakpointResizeOptions.minWidth;

        if (preserveCurrentSize) {
          var currentSize = elementor.channels.responsivePreview.request('size');

          if (currentSize.width > breakpointResizeOptions.maxWidth) {
            widthToShow = breakpointResizeOptions.maxWidth;
          } else if (currentSize.width >= breakpointResizeOptions.minWidth) {
            widthToShow = currentSize.width;
          }
        }

        $responsiveWrapper.resizable('option', (0, _objectSpread2.default)({}, breakpointResizeOptions)); // Old versions of jQuery don't support custom properties

        var _style = $responsiveWrapper[0].style;

        _style.setProperty('--e-editor-preview-width', widthToShow + 'px');

        _style.setProperty('--e-editor-preview-height', breakpointResizeOptions.height + 'px');
      }
    }
  }, {
    key: "preventClicksInsideEditor",
    value: function preventClicksInsideEditor() {
      this.$previewContents.on('submit', function (event) {
        return event.preventDefault();
      }); // Cannot use arrow function here since it use `this.contains`.

      this.$previewContents.on('click', function (event) {
        var _elementor$documents$;

        var $target = jQuery(event.target),
            isClickInsideElementor = !!$target.closest('.elementor-edit-area, .pen-menu').length,
            isTargetInsideDocument = this.contains($target[0]);

        if ($target.closest('a:not(.elementor-clickable)').length) {
          event.preventDefault();
        }

        if (isClickInsideElementor && elementor.getPreviewContainer().isEditable() || !isTargetInsideDocument) {
          return;
        } // It's a click on the preview area, not in the edit area,
        // and a document is open and has an edit area.


        if (!isClickInsideElementor && (_elementor$documents$ = elementor.documents.getCurrent()) !== null && _elementor$documents$ !== void 0 && _elementor$documents$.$element) {
          $e.internal('panel/open-default');
        }
      });
    }
  }, {
    key: "addBackgroundClickArea",
    value: function addBackgroundClickArea(element) {
      element.addEventListener('click', this.onBackgroundClick.bind(this), true);
    }
  }, {
    key: "addBackgroundClickListener",
    value: function addBackgroundClickListener(key, listener) {
      this.backgroundClickListeners[key] = listener;
    }
  }, {
    key: "removeBackgroundClickListener",
    value: function removeBackgroundClickListener(key) {
      delete this.backgroundClickListeners[key];
    }
  }, {
    key: "showFatalErrorDialog",
    value: function showFatalErrorDialog(options) {
      var defaultOptions = {
        id: 'elementor-fatal-error-dialog',
        headerMessage: '',
        message: '',
        position: {
          my: 'center center',
          at: 'center center'
        },
        strings: {
          confirm: __('Learn More', 'elementor'),
          cancel: __('Go Back', 'elementor')
        },
        onConfirm: null,
        onCancel: function onCancel() {
          return parent.history.go(-1);
        },
        hide: {
          onBackgroundClick: false,
          onButtonClick: false
        }
      };
      options = jQuery.extend(true, defaultOptions, options);
      elementorCommon.dialogsManager.createWidget('confirm', options).show();
    }
  }, {
    key: "showFlexBoxAttentionDialog",
    value: function showFlexBoxAttentionDialog() {
      var _this3 = this;

      var introduction = new elementorModules.editor.utils.Introduction({
        introductionKey: 'flexbox',
        dialogType: 'confirm',
        dialogOptions: {
          id: 'elementor-flexbox-attention-dialog',
          headerMessage: __('Note: Flexbox Changes', 'elementor'),
          message: __('Elementor 2.5 introduces key changes to the layout using CSS Flexbox. Your existing pages might have been affected, please review your page before publishing.', 'elementor'),
          position: {
            my: 'center center',
            at: 'center center'
          },
          strings: {
            confirm: __('Learn More', 'elementor'),
            cancel: __('Got It', 'elementor')
          },
          hide: {
            onButtonClick: false
          },
          onCancel: function onCancel() {
            introduction.setViewed();
            introduction.getDialog().hide();
          },
          onConfirm: function onConfirm() {
            return open(_this3.config.help_flexbox_bc_url, '_blank');
          }
        }
      });
      introduction.show();
    }
  }, {
    key: "checkPageStatus",
    value: function checkPageStatus() {
      if (elementor.documents.getCurrent().isDraft()) {
        this.notifications.showToast({
          message: __('This is just a draft. Play around and when you\'re done - click update.', 'elementor'),
          buttons: [{
            name: 'view_revisions',
            text: __('View All Revisions', 'elementor'),
            callback: function callback() {
              return $e.route('panel/history/revisions');
            }
          }]
        });
      }
    }
  }, {
    key: "enterDeviceMode",
    value: function enterDeviceMode() {
      var _this4 = this;

      elementorCommon.elements.$body.addClass('e-is-device-mode');
      this.activatePreviewResizable();
      this.resizeListenerThrottled = false;
      this.broadcastPreviewResize();
      elementorFrontend.elements.$window.on('resize.deviceModeDesktop', function () {
        if (_this4.resizeListenerThrottled) {
          return;
        }

        _this4.resizeListenerThrottled = true;

        _this4.broadcastPreviewResize();

        setTimeout(function () {
          _this4.resizeListenerThrottled = false;

          _this4.broadcastPreviewResize();
        }, 300);
      });
    }
  }, {
    key: "exitDeviceMode",
    value: function exitDeviceMode() {
      elementorCommon.elements.$body.removeClass('e-is-device-mode');
      this.destroyPreviewResizable();
      elementorCommon.elements.$window.off('resize.deviceModeDesktop');
      this.channels.deviceMode.trigger('close');
    }
  }, {
    key: "isDeviceModeActive",
    value: function isDeviceModeActive() {
      return elementorCommon.elements.$body.hasClass('e-is-device-mode');
    }
  }, {
    key: "updatePreviewSize",
    value: function updatePreviewSize(size) {
      // Old versions of jQuery don't support custom properties
      var style = this.$previewResponsiveWrapper[0].style;
      style.setProperty('--e-editor-preview-width', size.width + 'px');
      style.setProperty('--e-editor-preview-height', size.height + 'px');
    }
  }, {
    key: "enterPreviewMode",
    value: function enterPreviewMode(hidePanel) {
      var $elements = elementorFrontend.elements.$body;

      if (hidePanel) {
        $elements = $elements.add(elementorCommon.elements.$body);
      }

      $elements.removeClass('elementor-editor-active').addClass('elementor-editor-preview');
      var $element = this.documents.getCurrent().$element;

      if ($element) {
        $element.removeClass('elementor-edit-area-active');
      }
    }
  }, {
    key: "exitPreviewMode",
    value: function exitPreviewMode() {
      elementorFrontend.elements.$body.add(elementorCommon.elements.$body).removeClass('elementor-editor-preview').addClass('elementor-editor-active');

      if (elementor.config.document.panel.has_elements) {
        this.documents.getCurrent().$element.addClass('elementor-edit-area-active');
      }
    }
  }, {
    key: "changeEditMode",
    value: function changeEditMode(newMode) {
      var dataEditMode = elementor.channels.dataEditMode,
          oldEditMode = dataEditMode.request('activeMode');
      dataEditMode.reply('activeMode', newMode);

      if (newMode !== oldEditMode) {
        dataEditMode.trigger('switch', newMode);
      }
    }
  }, {
    key: "reloadPreview",
    value: function reloadPreview() {
      // TODO: Should be command?
      jQuery('#elementor-preview-loading').show();
      this.$preview[0].contentWindow.location.reload(true);
    }
  }, {
    key: "changeDeviceMode",
    value: function changeDeviceMode(newDeviceMode) {
      var hideBarOnDesktop = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
      var oldDeviceMode = this.channels.deviceMode.request('currentMode');

      if (oldDeviceMode === newDeviceMode) {
        return;
      }

      elementorCommon.elements.$body.removeClass('elementor-device-' + oldDeviceMode).addClass('elementor-device-' + newDeviceMode);
      this.channels.deviceMode.reply('previousMode', oldDeviceMode).reply('currentMode', newDeviceMode).trigger('change');

      if (this.isDeviceModeActive() && hideBarOnDesktop) {
        if ('desktop' === newDeviceMode) {
          this.exitDeviceMode();
        }
      } else if ('desktop' !== newDeviceMode) {
        this.enterDeviceMode();
      }
    }
  }, {
    key: "translate",
    value: function translate(stringKey, templateArgs, i18nStack) {
      // TODO: BC since 2.3.0, it always should be `this.config.i18n`
      if (!i18nStack) {
        i18nStack = this.config.i18n;
      }

      return elementorCommon.translate(stringKey, null, templateArgs, i18nStack);
    }
  }, {
    key: "logSite",
    value: function logSite() {
      var text = '',
          style = '';

      if (_environment.default.firefox) {
        var asciiText = [' ;;;;;;;;;;;;;;; ', ';;;  ;;       ;;;', ';;;  ;;;;;;;;;;;;', ';;;  ;;;;;;;;;;;;', ';;;  ;;       ;;;', ';;;  ;;;;;;;;;;;;', ';;;  ;;;;;;;;;;;;', ';;;  ;;       ;;;', ' ;;;;;;;;;;;;;;; '];
        text += '%c' + asciiText.join('\n') + '\n';
        style = 'color: #C42961';
      } else {
        text += '%c00';
        style = 'font-size: 22px; background-image: url("' + elementorCommon.config.urls.assets + 'images/logo-icon.png"); color: transparent; background-repeat: no-repeat';
      }

      setTimeout(console.log.bind(console, text, style)); // eslint-disable-line

      text = '%cLove using Elementor? Join our growing community of Elementor developers: %chttps://github.com/elementor/elementor';
      setTimeout(console.log.bind(console, text, 'color: #9B0A46', '')); // eslint-disable-line
    }
  }, {
    key: "requestWidgetsConfig",
    value: function requestWidgetsConfig() {
      var _this5 = this;

      var excludeWidgets = {};
      jQuery.each(this.widgetsCache, function (widgetName, widgetConfig) {
        if (widgetConfig.controls) {
          excludeWidgets[widgetName] = true;
        }
      });
      elementorCommon.ajax.addRequest('get_widgets_config', {
        data: {
          exclude: excludeWidgets
        },
        success: function success(data) {
          _this5.addWidgetsCache(data);

          if (_this5.loaded) {
            _this5.kitManager.renderGlobalsDefaultCSS();

            $e.internal('panel/state-ready');
          } else {
            _this5.once('panel:init', function () {
              $e.internal('panel/state-ready');
            });
          }
        }
      });
    }
  }, {
    key: "getPreferences",
    value: function getPreferences(key) {
      var settings = elementor.settings.editorPreferences.model.attributes;

      if (key) {
        return settings[key];
      }

      return settings;
    }
  }, {
    key: "getConfig",
    value: function getConfig() {
      return ElementorConfig;
    }
  }, {
    key: "onStart",
    value: function onStart() {
      var _this6 = this;

      this.config = this.getConfig();
      Backbone.Radio.DEBUG = false;
      Backbone.Radio.tuneIn('ELEMENTOR');
      this.populateActiveBreakpointsConfig();
      this.breakpoints = new _breakpoints.default(this.config.responsive);

      if (elementorCommon.config.experimentalFeatures.additional_custom_breakpoints) {
        // Duplicate responsive controls for section and column default configs.
        this.generateResponsiveControlsForElements();
      }

      this.initComponents();

      if (!this.checkEnvCompatibility()) {
        this.onEnvNotCompatible();
      }

      this.initPreview();
      this.requestWidgetsConfig();
      this.channels.dataEditMode.reply('activeMode', 'edit');
      this.listenTo(this.channels.dataEditMode, 'switch', this.onEditModeSwitched);
      this.listenTo(elementor.channels.deviceMode, 'change', this.updatePreviewResizeOptions);
      this.initClearPageDialog();
      this.addBackgroundClickArea(document);
      this.addDeprecatedConfigProperties();
      elementorCommon.elements.$window.trigger('elementor:loaded');
      $e.run('editor/documents/open', {
        id: this.config.initial_document.id
      }).then(function () {
        elementorCommon.elements.$window.trigger('elementor:init');

        _this6.initNavigator();
      });
      this.logSite();
    }
  }, {
    key: "onPreviewLoaded",
    value: function onPreviewLoaded() {
      var previewWindow = this.$preview[0].contentWindow;

      if (!previewWindow.elementorFrontend) {
        this.onPreviewLoadingError();
        return;
      } // Cannot load editor without kit.


      if (!elementor.config.kit_id) {
        this.kitNotExistsError();
        return;
      }

      this.$previewContents = this.$preview.contents();
      this.initFrontend();
      this.schemes.init();
      this.preventClicksInsideEditor();
      this.addBackgroundClickArea(elementorFrontend.elements.window.document);

      if (!this.previewLoadedOnce) {
        this.onFirstPreviewLoaded();
      }

      this.$previewContents.children().addClass('elementor-html');
      var $frontendBody = elementorFrontend.elements.$body;
      $frontendBody.addClass('elementor-editor-active');

      if (!elementor.userCan('design')) {
        $frontendBody.addClass('elementor-editor-content-only');
      }

      this.changeDeviceMode('desktop');

      _.defer(function () {
        elementorFrontend.elements.window.jQuery.holdReady(false);
      });

      $e.shortcuts.bindListener(elementorFrontend.elements.$window);
      this.trigger('preview:loaded', !this.loaded
      /* isFirst */
      );
      $e.internal('editor/documents/attach-preview').then(function () {
        return jQuery('#elementor-loading, #elementor-preview-loading').fadeOut(600);
      });
      this.loaded = true;
    }
  }, {
    key: "onFirstPreviewLoaded",
    value: function onFirstPreviewLoaded() {
      this.initPanel();
      this.initResponsiveBar();
      this.previewLoadedOnce = true;
    }
  }, {
    key: "onEditModeSwitched",
    value: function onEditModeSwitched() {
      var activeMode = this.channels.dataEditMode.request('activeMode');

      if ('edit' === activeMode) {
        this.exitPreviewMode();
      } else {
        this.enterPreviewMode('preview' === activeMode);
      }
    }
  }, {
    key: "onEnvNotCompatible",
    value: function onEnvNotCompatible() {
      var _this7 = this;

      this.showFatalErrorDialog({
        headerMessage: __('Your browser isn\'t compatible', 'elementor'),
        message: __('Your browser isn\'t compatible with all of Elementor\'s editing features. We recommend you switch to another browser like Chrome or Firefox.', 'elementor'),
        strings: {
          confirm: __('Proceed Anyway', 'elementor')
        },
        hide: {
          onButtonClick: true
        },
        onConfirm: function onConfirm() {
          return _this7.hide();
        }
      });
    }
  }, {
    key: "kitNotExistsError",
    value: function kitNotExistsError() {
      this.showFatalErrorDialog({
        className: 'elementor-preview-loading-error',
        headerMessage: __('Your site doesn\'t have a default kit', 'elementor'),
        message: __('Seems like your kit was deleted, please create new one or try restore it from trash.', 'elementor'),
        strings: {
          confirm: __('Recreate Kit', 'elementor'),
          cancel: __('Go Back', 'elementor')
        },
        onConfirm: function onConfirm() {
          return open(elementor.config.admin_tools_url, '_blank');
        }
      });
    }
  }, {
    key: "onPreviewLoadingError",
    value: function onPreviewLoadingError() {
      var _this8 = this;

      var debugUrl = this.config.document.urls.preview + '&preview-debug',
          previewDebugLinkText = __('Click here for preview debug', 'elementor'),
          previewDebugLink = '<div id="elementor-preview-debug-link-text"><a href="' + debugUrl + '" target="_blank">' + previewDebugLinkText + '</a></div>',
          debugData = elementor.config.preview.debug_data,
          dialogOptions = {
        className: 'elementor-preview-loading-error',
        headerMessage: debugData.header,
        message: debugData.message + previewDebugLink,
        onConfirm: function onConfirm() {
          return open(debugData.doc_url, '_blank');
        }
      };

      if (debugData.error) {
        this.showFatalErrorDialog(dialogOptions);
        return;
      }

      jQuery.get(debugUrl, function () {
        _this8.showFatalErrorDialog(dialogOptions);
      }).fail(function (response) {
        //Iframe can't be loaded
        _this8.showFatalErrorDialog({
          className: 'elementor-preview-loading-error',
          headerMessage: debugData.header,
          message: response.statusText + ' ' + response.status + ' ' + previewDebugLink,
          onConfirm: function onConfirm() {
            var url = 500 <= response.status ? elementor.config.preview.help_preview_http_error_500_url : elementor.config.preview.help_preview_http_error_url;
            open(url, '_blank');
          }
        });
      });
    }
  }, {
    key: "onPreviewElNotFound",
    value: function onPreviewElNotFound() {
      var args = this.$preview[0].contentWindow.elementorPreviewErrorArgs;

      if (!args) {
        args = {
          headerMessage: __('Sorry, the content area was not found in your page.', 'elementor'),
          message: __('You must call \'the_content\' function in the current template, in order for Elementor to work on this page.', 'elementor'),
          confirmURL: elementor.config.help_the_content_url
        };
      }

      args.onConfirm = function () {
        return open(args.confirmURL, '_blank');
      };

      this.showFatalErrorDialog(args);
    }
  }, {
    key: "onBackgroundClick",
    value: function onBackgroundClick(event) {
      jQuery.each(this.backgroundClickListeners, function (index, config) {
        var $clickedTarget = jQuery(event.target); // If it's a label that associated with an input

        if ($clickedTarget[0].control) {
          $clickedTarget = $clickedTarget.add($clickedTarget[0].control);
        }

        if (config.ignore && $clickedTarget.closest(config.ignore).length) {
          return;
        }

        var $clickedTargetClosestElement = $clickedTarget.closest(config.element),
            $elementsToHide = jQuery(config.element).not($clickedTargetClosestElement);

        if (config.callback) {
          config.callback($elementsToHide);
          return;
        }

        $elementsToHide.hide();
      });
    }
  }, {
    key: "compileTemplate",
    value: function compileTemplate(template, data) {
      return Marionette.TemplateCache.prototype.compileTemplate(template)(data);
    }
  }, {
    key: "addWidgetsCache",
    value: function addWidgetsCache(widgets) {
      var _this9 = this;

      jQuery.each(widgets, function (widgetName, widgetConfig) {
        if (elementorCommon.config.experimentalFeatures.additional_custom_breakpoints) {
          // When the Responsive Optimization experiment is active, the responsive controls are generated on the
          // JS side instead of the PHP.
          widgetConfig.controls = _this9.generateResponsiveControls(widgetConfig.controls);
        }

        _this9.widgetsCache[widgetName] = jQuery.extend(true, {}, _this9.widgetsCache[widgetName], widgetConfig);
      });
    }
  }, {
    key: "generateResponsiveControls",
    value: function generateResponsiveControls(controls) {
      var _this10 = this;

      var activeBreakpoints = this.config.responsive.activeBreakpoints,
          devices = this.breakpoints.getActiveBreakpointsList({
        largeToSmall: true,
        withDesktop: true
      }),
          newControlsStack = {},
          secondDesktopChild = devices[devices.indexOf('desktop') + 1]; // Set the desktop to be the fist device, so desktop will the the parent of all devices.

      devices.unshift(devices.splice(devices.indexOf('desktop'), 1)[0]);
      jQuery.each(controls, function (controlName, controlConfig) {
        var _controlConfig$popove;

        var responsiveControlName; // Handle repeater controls.

        if ('object' === (0, _typeof2.default)(controlConfig.fields)) {
          controlConfig.fields = _this10.generateResponsiveControls(controlConfig.fields);
        } // Only handle responsive controls in this loop.


        if (!controlConfig.is_responsive) {
          newControlsStack[controlName] = controlConfig;
          return;
        }

        var popoverEndProperty = (_controlConfig$popove = controlConfig.popover) === null || _controlConfig$popove === void 0 ? void 0 : _controlConfig$popove.end; // Since the `popoverEndProperty` variable now holds the value, we want to prevent this property from
        // being duplicated to all responsive control instances. It should only be applied in the LAST responsive
        // control.

        if (popoverEndProperty) {
          var _controlConfig$popove2;

          (_controlConfig$popove2 = controlConfig.popover) === null || _controlConfig$popove2 === void 0 ? true : delete _controlConfig$popove2.end;
        } // Move the control's default to the desktop control


        if (controlConfig.default) {
          controlConfig.desktop_default = controlConfig.default;
        }

        var multipleDefaultValue = _this10.config.controls[controlConfig.type].default_value;
        var deleteControlDefault = true; // For multiple controls that implement get_default_value() in the control class, make sure the duplicated
        // controls receive that default value.

        if (multipleDefaultValue) {
          controlConfig.default = multipleDefaultValue;
          deleteControlDefault = false;
        }

        devices.forEach(function (device, index) {
          var _controlArgs$popover;

          var controlArgs = elementorCommon.helpers.cloneObject(controlConfig);

          if (controlArgs.device_args) {
            if (controlArgs.device_args[device]) {
              controlArgs = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, controlArgs), controlArgs.device_args[device]);
            }

            delete controlArgs.device_args;
          } // If there is a prefix class with a device modifier in it, add in the device modifier.


          if (controlArgs.prefix_class && -1 !== controlArgs.prefix_class.indexOf('%s')) {
            var deviceModifier = 'desktop' === device ? '' : '-' + device;
            controlArgs.prefix_class = controlArgs.prefix_class.replace('%s', deviceModifier);
          } // If the 'responsive' property is empty, it is transferred from the PHP to JS as an array and not an
          // object.


          if ((0, _isArray.default)(controlArgs.responsive)) {
            controlArgs.responsive = {};
          }

          var direction = 'max';
          controlArgs.parent = null;

          if ('desktop' !== device) {
            direction = activeBreakpoints[device].direction; // Set the parent to be the previous device

            controlArgs.parent = device === secondDesktopChild ? controlName : responsiveControlName;
          }

          controlArgs.responsive[direction] = device;

          if (controlArgs.min_affected_device) {
            if (controlArgs.min_affected_device[device]) {
              controlArgs.responsive.min = controlArgs.min_affected_device[device];
            }

            delete controlArgs.min_affected_device;
          }

          if (controlArgs[device + '_default']) {
            if ('object' === (0, _typeof2.default)(controlArgs[device + '_default'])) {
              controlArgs.default = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, controlArgs.default), controlArgs[device + '_default']);
            } else {
              controlArgs.default = controlArgs[device + '_default'];
            }
          } else if (deleteControlDefault) {
            // In the Editor, controls without default values should have an empty string as the default value.
            controlArgs.default = '';
          } // If the control is the first inside a popover, only the first device starts the popover,
          // so the 'start' property has to be deleted from all other devices.


          if (0 !== index && (_controlArgs$popover = controlArgs.popover) !== null && _controlArgs$popover !== void 0 && _controlArgs$popover.start) {
            delete controlArgs.popover.start;
          } // If the control is inside a popover, AND this control is the last one in the popover, AND this is the
          // last device in the devices array - add the 'popover.end = true' value to it to make sure it closes
          // the popover.


          if (index === devices.length - 1 && popoverEndProperty) {
            controlArgs.popover = {
              end: true
            };
          } // For each new responsive control, delete the responsive defaults


          devices.forEach(function (breakpoint) {
            delete controlArgs[breakpoint + '_default'];
          });
          delete controlArgs.is_responsive;
          responsiveControlName = 'desktop' === device ? controlName : controlName + '_' + device;

          if (controlArgs.parent) {
            var parentControlArgs = newControlsStack[controlArgs.parent];

            if (!parentControlArgs.inheritors) {
              parentControlArgs.inheritors = [];
            }

            parentControlArgs.inheritors.push(responsiveControlName);
          }

          controlArgs.name = responsiveControlName;
          newControlsStack[responsiveControlName] = controlArgs;
        });
      });
      return newControlsStack;
    }
  }, {
    key: "generateResponsiveControlsForElements",
    value: function generateResponsiveControlsForElements() {
      var _this11 = this;

      // Handle the default config for section and column.
      var elementNames = (0, _keys.default)(this.config.elements);
      elementNames.forEach(function (elementName) {
        _this11.config.elements[elementName].controls = _this11.generateResponsiveControls(_this11.config.elements[elementName].controls);
      });
    }
  }, {
    key: "populateActiveBreakpointsConfig",
    value: function populateActiveBreakpointsConfig() {
      var _this12 = this;

      this.config.responsive.activeBreakpoints = {};
      (0, _entries.default)(this.config.responsive.breakpoints).forEach(function (_ref) {
        var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
            breakpointKey = _ref2[0],
            breakpointData = _ref2[1];

        if (breakpointData.is_enabled) {
          _this12.config.responsive.activeBreakpoints[breakpointKey] = breakpointData;
        }
      });
    }
  }, {
    key: "addDeprecatedConfigProperties",
    value: function addDeprecatedConfigProperties() {
      var _this13 = this;

      var map = {
        data: {
          replacement: 'elements',
          value: function value() {
            return elementor.config.document.elements;
          }
        },
        current_user_can_publish: {
          replacement: 'user.can_publish',
          value: function value() {
            return elementor.config.document.user.can_publish;
          }
        },
        locked_user: {
          replacement: '',
          value: function value() {
            return elementor.config.document.user.locked;
          }
        },
        revisions_enabled: {
          replacement: 'revisions.enabled',
          value: function value() {
            return elementor.config.document.revisions.enabled;
          }
        },
        current_revision_id: {
          replacement: 'revisions.current_id',
          value: function value() {
            return elementor.config.document.revisions.current_id;
          }
        }
      };
      jQuery.each(map, function (key, data) {
        // Use `defineProperty` because `get property()` fails during the `Marionette...extend`.
        (0, _defineProperty2.default)(_this13.config, key, {
          get: function get() {
            var replacement = data.replacement ? 'elementor.config.document.' + data.replacement : '';
            elementorCommon.helpers.softDeprecated('elementor.config.' + key, '2.9.0', replacement); // return from current document.

            return data.value();
          },
          set: function set() {
            elementorCommon.helpers.softDeprecated('elementor.config.' + key, '2.9.0', 'elementor.config.document.' + data.replacement);
            throw Error('Deprecated');
          }
        });
      });
      (0, _defineProperty2.default)(this.config.settings, 'page', {
        get: function get() {
          elementorCommon.helpers.softDeprecated('elementor.config.settings.page', '2.9.0', 'elementor.config.document.settings');
          return elementor.config.document.settings;
        }
      });
      (0, _defineProperty2.default)(this.config, 'widgets', {
        get: function get() {
          elementorCommon.helpers.softDeprecated('elementor.config.widgets', '2.9.0', 'elementor.widgetsCache');
          return elementor.widgetsCache;
        }
      });
      (0, _defineProperty2.default)(this, '$previewElementorEl', {
        get: function get() {
          elementorCommon.helpers.softDeprecated('elementor.$previewElementorEl', '2.9.4', 'elementor.documents.getCurrent().$element');
          return elementor.documents.getCurrent().$element;
        }
      });
    }
  }, {
    key: "toggleDocumentCssFiles",
    value: function toggleDocumentCssFiles(document, state) {
      var selectors = ["#elementor-post-".concat(document.config.id, "-css"), "#elementor-preview-".concat(document.config.revisions.current_id)],
          $files = this.$previewContents.find(selectors.join(',')),
          type = state ? 'text/css' : 'elementor/disabled-css';
      $files.attr({
        type: type
      });
    }
  }]);
  return EditorBase;
}(Marionette.Application);

exports.default = EditorBase;

/***/ }),

/***/ "../assets/dev/js/editor/editor.js":
/*!*****************************************!*\
  !*** ../assets/dev/js/editor/editor.js ***!
  \*****************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.Editor = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _editorBase = _interopRequireDefault(__webpack_require__(/*! ./editor-base */ "../assets/dev/js/editor/editor-base.js"));

var Editor = /*#__PURE__*/function (_EditorBase) {
  (0, _inherits2.default)(Editor, _EditorBase);

  var _super = (0, _createSuper2.default)(Editor);

  function Editor() {
    (0, _classCallCheck2.default)(this, Editor);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Editor, [{
    key: "onStart",
    value: function onStart(options) {
      NProgress.start();
      NProgress.inc(0.2);
      (0, _get2.default)((0, _getPrototypeOf2.default)(Editor.prototype), "onStart", this).call(this, options);
    }
  }, {
    key: "onPreviewLoaded",
    value: function onPreviewLoaded() {
      NProgress.done();
      (0, _get2.default)((0, _getPrototypeOf2.default)(Editor.prototype), "onPreviewLoaded", this).call(this);
    }
  }]);
  return Editor;
}(_editorBase.default);

exports.Editor = Editor;
window.elementor = new Editor();
elementor.start();

/***/ }),

/***/ "../assets/dev/js/editor/elements/collections/elements.js":
/*!****************************************************************!*\
  !*** ../assets/dev/js/editor/elements/collections/elements.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var ElementModel = __webpack_require__(/*! elementor-elements/models/element */ "../assets/dev/js/editor/elements/models/element.js");

var ElementsCollection = Backbone.Collection.extend({
  add: function add(models, options, isCorrectSet) {
    if ((!options || !options.silent) && !isCorrectSet) {
      throw 'Call Error: Adding model to element collection is allowed only by the dedicated addChildModel() method.';
    }

    return Backbone.Collection.prototype.add.call(this, models, options);
  },
  model: function model(attrs, options) {
    var ModelClass = Backbone.Model;

    if (attrs.elType) {
      ModelClass = elementor.hooks.applyFilters('element/model', ElementModel, attrs);
    }

    return new ModelClass(attrs, options);
  },
  clone: function clone() {
    var tempCollection = Backbone.Collection.prototype.clone.apply(this, arguments),
        newCollection = new ElementsCollection();
    tempCollection.forEach(function (model) {
      newCollection.add(model.clone(), null, true);
    });
    return newCollection;
  }
});
ElementsCollection.prototype.sync = ElementsCollection.prototype.fetch = ElementsCollection.prototype.save = _.noop;
module.exports = ElementsCollection;

/***/ }),

/***/ "../assets/dev/js/editor/elements/models/column-settings.js":
/*!******************************************************************!*\
  !*** ../assets/dev/js/editor/elements/models/column-settings.js ***!
  \******************************************************************/
/***/ ((module) => {

"use strict";


module.exports = elementorModules.editor.elements.models.BaseSettings.extend({
  defaults: {
    _column_size: 100
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/elements/models/element.js":
/*!**********************************************************!*\
  !*** ../assets/dev/js/editor/elements/models/element.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

__webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");

var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js"));

var ColumnSettingsModel = __webpack_require__(/*! elementor-elements/models/column-settings */ "../assets/dev/js/editor/elements/models/column-settings.js"),
    ElementModel;

ElementModel = Backbone.Model.extend({
  defaults: {
    id: '',
    elType: '',
    isInner: false,
    settings: {},
    defaultEditSettings: {
      defaultEditRoute: 'content'
    }
  },
  remoteRender: false,
  _htmlCache: null,
  _jqueryXhr: null,
  renderOnLeave: false,
  initialize: function initialize(options) {
    var elType = this.get('elType'),
        elements = this.get('elements');

    if (undefined !== elements) {
      var ElementsCollection = __webpack_require__(/*! elementor-elements/collections/elements */ "../assets/dev/js/editor/elements/collections/elements.js");

      this.set('elements', new ElementsCollection(elements));
    }

    if ('widget' === elType) {
      this.remoteRender = true;
      this.setHtmlCache(options.htmlCache || '');
    } // No need this variable anymore


    delete options.htmlCache; // Make call to remote server as throttle function

    this.renderRemoteServer = _.throttle(this.renderRemoteServer, 1000);
    this.initSettings();
    this.initEditSettings();
    this.on({
      destroy: this.onDestroy,
      'editor:close': this.onCloseEditor
    });
  },
  initSettings: function initSettings() {
    var elType = this.get('elType'),
        settings = this.get('settings'),
        settingModels = {
      column: ColumnSettingsModel
    },
        SettingsModel = settingModels[elType] || elementorModules.editor.elements.models.BaseSettings;

    if (jQuery.isEmptyObject(settings)) {
      settings = elementorCommon.helpers.cloneObject(settings);
    }

    if ('widget' === elType) {
      settings.widgetType = this.get('widgetType');
    }

    settings.elType = elType;
    settings.isInner = this.get('isInner');
    settings = new SettingsModel(settings, {
      controls: elementor.getElementControls(this)
    });
    this.set('settings', settings);
    elementorFrontend.config.elements.data[this.cid] = settings;
  },
  initEditSettings: function initEditSettings() {
    var editSettings = new Backbone.Model(this.get('defaultEditSettings'));
    this.set('editSettings', editSettings);
    elementorFrontend.config.elements.editSettings[this.cid] = editSettings;
  },
  setSetting: function setSetting(key, value) {
    var settings = this.get('settings');

    if ('object' !== (0, _typeof2.default)(key)) {
      var keyParts = key.split('.'),
          isRepeaterKey = 3 === keyParts.length;
      key = keyParts[0];

      if (isRepeaterKey) {
        settings = settings.get(key).models[keyParts[1]];
        key = keyParts[2];
      }
    }

    settings.setExternalChange(key, value);
  },
  getSetting: function getSetting(key) {
    var keyParts = key.split('.'),
        isRepeaterKey = 3 === keyParts.length,
        settings = this.get('settings');
    key = keyParts[0];
    var value = settings.get(key);

    if (undefined === value) {
      return '';
    }

    if (isRepeaterKey) {
      value = value.models[keyParts[1]].get(keyParts[2]);
    }

    return value;
  },
  setHtmlCache: function setHtmlCache(htmlCache) {
    this._htmlCache = htmlCache;
  },
  getHtmlCache: function getHtmlCache() {
    return this._htmlCache;
  },
  getDefaultTitle: function getDefaultTitle() {
    return elementor.getElementData(this).title;
  },
  getTitle: function getTitle() {
    var title = this.getSetting('_title');

    if (!title) {
      title = this.getDefaultTitle();
    }

    return title;
  },
  getIcon: function getIcon() {
    return elementor.getElementData(this).icon;
  },
  createRemoteRenderRequest: function createRemoteRenderRequest() {
    var data = this.toJSON();
    return elementorCommon.ajax.addRequest('render_widget', {
      unique_id: this.cid,
      data: {
        data: data
      },
      success: this.onRemoteGetHtml.bind(this)
    }, true).jqXhr;
  },
  renderRemoteServer: function renderRemoteServer() {
    if (!this.remoteRender) {
      return;
    }

    this.renderOnLeave = false;
    this.trigger('before:remote:render');

    if (this.isRemoteRequestActive()) {
      this._jqueryXhr.abort();
    }

    this._jqueryXhr = this.createRemoteRenderRequest();
  },
  isRemoteRequestActive: function isRemoteRequestActive() {
    return this._jqueryXhr && 4 !== this._jqueryXhr.readyState;
  },
  onRemoteGetHtml: function onRemoteGetHtml(data) {
    this.setHtmlCache(data.render);
    this.trigger('remote:render');
  },
  clone: function clone() {
    var newModel = new this.constructor(elementorCommon.helpers.cloneObject(this.attributes));
    newModel.set('id', elementorCommon.helpers.getUniqueId());
    newModel.setHtmlCache(this.getHtmlCache());
    var elements = this.get('elements');

    if (!_.isEmpty(elements)) {
      newModel.set('elements', elements.clone());
    }

    return newModel;
  },
  toJSON: function toJSON(options) {
    options = options || {}; // Call parent's toJSON method

    var data = Backbone.Model.prototype.toJSON.call(this);

    _.each(data, function (attribute, key) {
      if (attribute && attribute.toJSON) {
        data[key] = attribute.toJSON(options);
      }
    });

    if (options.copyHtmlCache) {
      data.htmlCache = this.getHtmlCache();
    } else {
      delete data.htmlCache;
    }

    if (options.remove) {
      options.remove.forEach(function (key) {
        return delete data[key];
      });
    }

    return data;
  },
  onCloseEditor: function onCloseEditor() {
    if (this.renderOnLeave) {
      this.renderRemoteServer();
    }
  },
  onDestroy: function onDestroy() {
    // Clean the memory for all use instances
    var settings = this.get('settings'),
        elements = this.get('elements');

    if (undefined !== elements) {
      _.each(_.clone(elements.models), function (model) {
        model.destroy();
      });
    }

    settings.destroy();
  }
});
ElementModel.prototype.sync = ElementModel.prototype.fetch = ElementModel.prototype.save = _.noop;
module.exports = ElementModel;

/***/ }),

/***/ "../assets/dev/js/editor/elements/views/base.js":
/*!******************************************************!*\
  !*** ../assets/dev/js/editor/elements/views/base.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var sprintf = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["sprintf"];
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js"));

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var _parseInt2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/parse-int */ "../node_modules/@babel/runtime-corejs2/core-js/parse-int.js"));

var _isArray = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js"));

var _environment = _interopRequireDefault(__webpack_require__(/*! elementor-common/utils/environment */ "../core/common/assets/js/utils/environment.js"));

var ControlsCSSParser = __webpack_require__(/*! elementor-editor-utils/controls-css-parser */ "../assets/dev/js/editor/utils/controls-css-parser.js"),
    Validator = __webpack_require__(/*! elementor-validator/base */ "../assets/dev/js/editor/components/validator/base.js"),
    BaseContainer = __webpack_require__(/*! elementor-views/base-container */ "../assets/dev/js/editor/views/base-container.js"),
    BaseElementView;

BaseElementView = BaseContainer.extend({
  tagName: 'div',
  controlsCSSParser: null,
  allowRender: true,
  toggleEditTools: false,
  renderAttributes: {},
  className: function className() {
    var classes = 'elementor-element elementor-element-edit-mode ' + this.getElementUniqueID();

    if (this.toggleEditTools) {
      classes += ' elementor-element--toggle-edit-tools';
    }

    return classes;
  },
  attributes: function attributes() {
    return {
      'data-id': this.getID(),
      'data-element_type': this.model.get('elType')
    };
  },
  ui: function ui() {
    return {
      tools: '> .elementor-element-overlay > .elementor-editor-element-settings',
      editButton: '> .elementor-element-overlay .elementor-editor-element-edit',
      duplicateButton: '> .elementor-element-overlay .elementor-editor-element-duplicate',
      addButton: '> .elementor-element-overlay .elementor-editor-element-add',
      removeButton: '> .elementor-element-overlay .elementor-editor-element-remove'
    };
  },
  behaviors: function behaviors() {
    var elementType = this.options.model.get('elType');
    var groups = elementor.hooks.applyFilters("elements/".concat(elementType, "/contextMenuGroups"), this.getContextMenuGroups(), this);
    var behaviors = {
      contextMenu: {
        behaviorClass: __webpack_require__(/*! elementor-behaviors/context-menu */ "../assets/dev/js/editor/elements/views/behaviors/context-menu.js"),
        groups: groups
      }
    };
    return elementor.hooks.applyFilters('elements/base/behaviors', behaviors, this);
  },
  getBehavior: function getBehavior(name) {
    return this._behaviors[(0, _keys.default)(this.behaviors()).indexOf(name)];
  },
  events: function events() {
    return {
      mousedown: 'onMouseDown',
      'click @ui.editButton': 'onEditButtonClick',
      'click @ui.duplicateButton': 'onDuplicateButtonClick',
      'click @ui.addButton': 'onAddButtonClick',
      'click @ui.removeButton': 'onRemoveButtonClick'
    };
  },
  getElementType: function getElementType() {
    return this.model.get('elType');
  },
  getIDInt: function getIDInt() {
    return (0, _parseInt2.default)(this.getID(), 16);
  },
  getChildType: function getChildType() {
    return elementor.helpers.getElementChildType(this.getElementType());
  },
  getChildView: function getChildView(model) {
    var ChildView;
    var elType = model.get('elType');

    if ('section' === elType) {
      ChildView = __webpack_require__(/*! elementor-elements/views/section */ "../assets/dev/js/editor/elements/views/section.js");
    } else if ('column' === elType) {
      ChildView = __webpack_require__(/*! elementor-elements/views/column */ "../assets/dev/js/editor/elements/views/column.js");
    } else {
      ChildView = elementor.modules.elements.views.Widget;
    }

    return elementor.hooks.applyFilters('element/view', ChildView, model, this);
  },
  getTemplateType: function getTemplateType() {
    return 'js';
  },
  getEditModel: function getEditModel() {
    return this.model;
  },
  getContainer: function getContainer() {
    if (!this.container) {
      var settingsModel = this.model.get('settings');
      this.container = new elementorModules.editor.Container({
        type: this.model.get('elType'),
        id: this.model.id,
        model: this.model,
        settings: settingsModel,
        view: this,
        parent: this._parent ? this._parent.getContainer() : {},
        children: [],
        label: elementor.helpers.getModelLabel(this.model),
        controls: settingsModel.options.controls
      });
    }

    return this.container;
  },
  getContextMenuGroups: function getContextMenuGroups() {
    var _this = this;

    var controlSign = _environment.default.mac ? '⌘' : '^';
    return [{
      name: 'general',
      actions: [{
        name: 'edit',
        icon: 'eicon-edit',

        /* translators: %s: Element name. */
        title: sprintf(__('Edit %s', 'elementor'), this.options.model.getTitle()),
        callback: function callback() {
          return $e.run('panel/editor/open', {
            model: _this.options.model,
            // Todo: remove on merge router
            view: _this,
            // Todo: remove on merge router
            container: _this.getContainer()
          });
        }
      }, {
        name: 'duplicate',
        icon: 'eicon-clone',
        title: __('Duplicate', 'elementor'),
        shortcut: controlSign + '+D',
        callback: function callback() {
          return $e.run('document/elements/duplicate', {
            container: _this.getContainer()
          });
        }
      }]
    }, {
      name: 'clipboard',
      actions: [{
        name: 'copy',
        title: __('Copy', 'elementor'),
        shortcut: controlSign + '+C',
        callback: function callback() {
          return $e.run('document/elements/copy', {
            container: _this.getContainer()
          });
        }
      }, {
        name: 'paste',
        title: __('Paste', 'elementor'),
        shortcut: controlSign + '+V',
        isEnabled: function isEnabled() {
          return $e.components.get('document/elements').utils.isPasteEnabled(_this.getContainer());
        },
        callback: function callback() {
          return $e.run('document/ui/paste', {
            container: _this.getContainer()
          });
        }
      }, {
        name: 'pasteStyle',
        title: __('Paste Style', 'elementor'),
        shortcut: controlSign + '+⇧+V',
        isEnabled: function isEnabled() {
          return !!elementorCommon.storage.get('clipboard');
        },
        callback: function callback() {
          return $e.run('document/elements/paste-style', {
            container: _this.getContainer()
          });
        }
      }, {
        name: 'resetStyle',
        title: __('Reset Style', 'elementor'),
        callback: function callback() {
          return $e.run('document/elements/reset-style', {
            container: _this.getContainer()
          });
        }
      }]
    }, {
      name: 'delete',
      actions: [{
        name: 'delete',
        icon: 'eicon-trash',
        title: __('Delete', 'elementor'),
        shortcut: '⌦',
        callback: function callback() {
          return $e.run('document/elements/delete', {
            container: _this.getContainer()
          });
        }
      }]
    }];
  },
  getEditButtons: function getEditButtons() {
    return {};
  },
  initialize: function initialize() {
    var _this2 = this;

    BaseContainer.prototype.initialize.apply(this, arguments);
    var editModel = this.getEditModel();

    if (this.collection && this.onCollectionChanged) {
      elementorCommon.helpers.softDeprecated('onCollectionChanged', '2.8.0', '$e.hooks');
      this.listenTo(this.collection, 'add remove reset', this.onCollectionChanged, this);
    }

    if (this.onSettingsChanged) {
      elementorCommon.helpers.softDeprecated('onSettingsChanged', '2.8.0', '$e.hooks');
      this.listenTo(editModel.get('settings'), 'change', this.onSettingsChanged);
    }

    this.listenTo(editModel.get('editSettings'), 'change', this.onEditSettingsChanged).listenTo(this.model, 'request:edit', this.onEditRequest).listenTo(this.model, 'request:toggleVisibility', this.toggleVisibility);
    this.initControlsCSSParser();

    _.defer(function () {
      // Init container. Defer - in order to init the container after the element is fully initialized, and properties like `_parent` are available.
      _this2.getContainer();
    });
  },
  getHandlesOverlay: function getHandlesOverlay() {
    var $handlesOverlay = jQuery('<div>', {
      class: 'elementor-element-overlay'
    }),
        $overlayList = jQuery('<ul>', {
      class: "elementor-editor-element-settings elementor-editor-".concat(this.getElementType(), "-settings")
    });
    jQuery.each(this.getEditButtons(), function (toolName, tool) {
      var $item = jQuery('<li>', {
        class: "elementor-editor-element-setting elementor-editor-element-".concat(toolName),
        title: tool.title
      }),
          $icon = jQuery('<i>', {
        class: "eicon-".concat(tool.icon),
        'aria-hidden': true
      }),
          $a11y = jQuery('<span>', {
        class: 'elementor-screen-only'
      });
      $a11y.text(tool.title);
      $item.append($icon, $a11y);
      $overlayList.append($item);
    });
    $handlesOverlay.append($overlayList);
    return $handlesOverlay;
  },
  attachElContent: function attachElContent(html) {
    this.$el.empty().append(this.getHandlesOverlay(), html);
  },
  startTransport: function startTransport() {
    elementorCommon.helpers.softDeprecated('element.startTransport', '2.8.0', "$e.run( 'document/elements/copy' )");
    $e.run('document/elements/copy', {
      container: this.getContainer()
    });
  },
  copy: function copy() {
    elementorCommon.helpers.softDeprecated('element.copy', '2.8.0', "$e.run( 'document/elements/copy' )");
    $e.run('document/elements/copy', {
      container: this.getContainer()
    });
  },
  cut: function cut() {
    elementorCommon.helpers.softDeprecated('element.cut', '2.8.0');
  },
  paste: function paste() {
    elementorCommon.helpers.softDeprecated('element.paste', '2.8.0', "$e.run( 'document/elements/paste' )");
    $e.run('document/elements/paste', {
      container: this.getContainer(),
      at: this._parent.collection.indexOf(this.model)
    });
  },
  duplicate: function duplicate() {
    elementorCommon.helpers.softDeprecated('element.duplicate', '2.8.0', "$e.run( 'document/elements/duplicate' )");
    $e.run('document/elements/duplicate', {
      container: this.getContainer()
    });
  },
  pasteStyle: function pasteStyle() {
    elementorCommon.helpers.softDeprecated('element.pasteStyle', '2.8.0', "$e.run( 'document/elements/paste-style' )");
    $e.run('document/elements/paste-style', {
      container: this.getContainer()
    });
  },
  resetStyle: function resetStyle() {
    elementorCommon.helpers.softDeprecated('element.resetStyle', '2.8.0', "$e.run( 'document/elements/reset-style' )");
    $e.run('document/elements/reset-style', {
      container: this.getContainer()
    });
  },
  isStyleTransferControl: function isStyleTransferControl(control) {
    if (undefined !== control.style_transfer) {
      return control.style_transfer;
    }

    return 'content' !== control.tab || control.selectors || control.prefix_class;
  },
  toggleVisibility: function toggleVisibility() {
    this.model.set('hidden', !this.model.get('hidden'));
    this.toggleVisibilityClass();
  },
  toggleVisibilityClass: function toggleVisibilityClass() {
    this.$el.toggleClass('elementor-edit-hidden', !!this.model.get('hidden'));
  },
  addElementFromPanel: function addElementFromPanel(options) {
    options = options || {};
    var elementView = elementor.channels.panelElements.request('element:selected'),
        model = {
      elType: elementView.model.get('elType')
    };

    if (elementor.helpers.maybeDisableWidget()) {
      return;
    }

    if ('widget' === model.elType) {
      model.widgetType = elementView.model.get('widgetType');
    } else if ('section' === model.elType) {
      model.isInner = true;
    } else {
      return;
    }

    var customData = elementView.model.get('custom');

    if (customData) {
      jQuery.extend(model, customData);
    }

    return $e.run('document/elements/create', {
      container: this.getContainer(),
      model: model,
      options: options
    });
  },
  // TODO: Unused function.
  addControlValidator: function addControlValidator(controlName, validationCallback) {
    validationCallback = validationCallback.bind(this);
    var validator = new Validator({
      customValidationMethod: validationCallback
    }),
        validators = this.getEditModel().get('settings').validators;

    if (!validators[controlName]) {
      validators[controlName] = [];
    }

    validators[controlName].push(validator);
  },
  addRenderAttribute: function addRenderAttribute(element, key, value, overwrite) {
    var self = this;

    if ('object' === (0, _typeof2.default)(element)) {
      jQuery.each(element, function (elementKey, elementValue) {
        self.addRenderAttribute(elementKey, elementValue, null, overwrite);
      });
      return self;
    }

    if ('object' === (0, _typeof2.default)(key)) {
      jQuery.each(key, function (attributeKey, attributeValue) {
        self.addRenderAttribute(element, attributeKey, attributeValue, overwrite);
      });
      return self;
    }

    if (!self.renderAttributes[element]) {
      self.renderAttributes[element] = {};
    }

    if (!self.renderAttributes[element][key]) {
      self.renderAttributes[element][key] = [];
    }

    if (!(0, _isArray.default)(value)) {
      value = [value];
    }

    if (overwrite) {
      self.renderAttributes[element][key] = value;
    } else {
      self.renderAttributes[element][key] = self.renderAttributes[element][key].concat(value);
    }
  },
  getRenderAttributeString: function getRenderAttributeString(element) {
    if (!this.renderAttributes[element]) {
      return '';
    }

    var renderAttributes = this.renderAttributes[element],
        attributes = [];
    jQuery.each(renderAttributes, function (attributeKey, attributeValue) {
      attributes.push(attributeKey + '="' + _.escape(attributeValue.join(' ')) + '"');
    });
    return attributes.join(' ');
  },
  isInner: function isInner() {
    return !!this.model.get('isInner');
  },
  initControlsCSSParser: function initControlsCSSParser() {
    this.controlsCSSParser = new ControlsCSSParser({
      id: this.model.get('id'),
      context: this,
      settingsModel: this.getEditModel().get('settings'),
      dynamicParsing: this.getDynamicParsingSettings()
    });
  },
  enqueueFonts: function enqueueFonts() {
    var editModel = this.getEditModel(),
        settings = editModel.get('settings'); // Enqueue Icon Fonts

    jQuery.each(settings.getIconsControls(), function (index, control) {
      var iconType = editModel.getSetting(control.name);

      if (!iconType || !iconType.library) {
        return;
      }

      elementor.helpers.enqueueIconFonts(iconType.library);
    });
  },
  renderStyles: function renderStyles(settings) {
    if (!settings) {
      settings = this.getEditModel().get('settings');
    }

    this.controlsCSSParser.stylesheet.empty();
    this.controlsCSSParser.addStyleRules(settings.getStyleControls(), settings.attributes, this.getEditModel().get('settings').controls, [/{{ID}}/g, /{{WRAPPER}}/g], [this.getID(), '.elementor-' + elementor.config.document.id + ' .elementor-element.' + this.getElementUniqueID()]);
    this.controlsCSSParser.addStyleToDocument();
  },
  renderCustomClasses: function renderCustomClasses() {
    var self = this;
    var settings = self.getEditModel().get('settings'),
        classControls = settings.getClassControls(); // Remove all previous classes

    _.each(classControls, function (control) {
      var previousClassValue = settings.previous(control.name);

      if (control.classes_dictionary) {
        if (undefined !== control.classes_dictionary[previousClassValue]) {
          previousClassValue = control.classes_dictionary[previousClassValue];
        }
      }

      self.$el.removeClass(control.prefix_class + previousClassValue);
    }); // Add new classes


    _.each(classControls, function (control) {
      var value = settings.attributes[control.name];
      var classValue = value;

      if (control.classes_dictionary) {
        if (undefined !== control.classes_dictionary[value]) {
          classValue = control.classes_dictionary[value];
        }
      }

      var isVisible = elementor.helpers.isActiveControl(control, settings.attributes);

      if (isVisible && (classValue || 0 === classValue)) {
        self.$el.addClass(control.prefix_class + classValue);
      }
    });

    self.$el.addClass(_.result(self, 'className'));
    self.toggleVisibilityClass();
  },
  renderCustomElementID: function renderCustomElementID() {
    var customElementID = this.getEditModel().get('settings').get('_element_id');
    this.$el.attr('id', customElementID);
  },
  renderUI: function renderUI() {
    this.renderStyles();
    this.renderCustomClasses();
    this.renderCustomElementID();
    this.enqueueFonts();
  },
  runReadyTrigger: function runReadyTrigger() {
    var self = this;

    _.defer(function () {
      elementorFrontend.elementsHandler.runReadyTrigger(self.el);

      if (!elementorFrontend.isEditMode()) {
        return;
      } // In edit mode - handle an external elements that loaded by another elements like shortcode etc.


      self.$el.find('.elementor-element.elementor-' + self.model.get('elType') + ':not(.elementor-element-edit-mode)').each(function () {
        elementorFrontend.elementsHandler.runReadyTrigger(this);
      });
    });
  },
  getID: function getID() {
    return this.model.get('id');
  },
  getElementUniqueID: function getElementUniqueID() {
    return 'elementor-element-' + this.getID();
  },
  renderHTML: function renderHTML() {
    var templateType = this.getTemplateType(),
        editModel = this.getEditModel();

    if ('js' === templateType) {
      this.getEditModel().setHtmlCache();
      this.render();
      editModel.renderOnLeave = true;
    } else {
      editModel.renderRemoteServer();
    }
  },
  renderOnChange: function renderOnChange(settings) {
    if (!this.allowRender) {
      return;
    } // Make sure is correct model


    if (settings instanceof elementorModules.editor.elements.models.BaseSettings) {
      var hasChanged = settings.hasChanged();
      var isContentChanged = !hasChanged,
          isRenderRequired = !hasChanged;

      _.each(settings.changedAttributes(), function (settingValue, settingKey) {
        var control = settings.getControl(settingKey);

        if ('_column_size' === settingKey) {
          isRenderRequired = true;
          return;
        }

        if (!control) {
          isRenderRequired = true;
          isContentChanged = true;
          return;
        }

        if ('none' !== control.render_type) {
          isRenderRequired = true;
        }

        if (-1 !== ['none', 'ui'].indexOf(control.render_type)) {
          return;
        }

        if ('template' === control.render_type || !settings.isStyleControl(settingKey) && !settings.isClassControl(settingKey) && '_element_id' !== settingKey) {
          isContentChanged = true;
        }
      });

      if (!isRenderRequired) {
        return;
      }

      if (!isContentChanged) {
        this.renderUI();
        return;
      }
    } // Re-render the template


    this.renderHTML();
  },
  getDynamicParsingSettings: function getDynamicParsingSettings() {
    var self = this;
    return {
      onServerRequestStart: function onServerRequestStart() {
        self.$el.addClass('elementor-loading');
      },
      onServerRequestEnd: function onServerRequestEnd() {
        self.render();
        self.$el.removeClass('elementor-loading');
      }
    };
  },
  serializeData: function serializeData() {
    var data = BaseContainer.prototype.serializeData.apply(this, arguments);
    data.settings = this.getEditModel().get('settings').parseDynamicSettings(data.settings, this.getDynamicParsingSettings());
    return data;
  },
  save: function save() {
    $e.route('library/save-template', {
      model: this.model
    });
  },
  onBeforeRender: function onBeforeRender() {
    this.renderAttributes = {};
  },
  onRender: function onRender() {
    this.renderUI();
    this.runReadyTrigger();

    if (this.toggleEditTools) {
      var editButton = this.ui.editButton; // Since this.ui.tools does not exist while testing.

      if (this.ui.tools) {
        this.ui.tools.hoverIntent(function () {
          editButton.addClass('elementor-active');
        }, function () {
          editButton.removeClass('elementor-active');
        }, {
          timeout: 500
        });
      }
    }
  },
  onEditSettingsChanged: function onEditSettingsChanged(changedModel) {
    elementor.channels.editor.trigger('change:editSettings', changedModel, this);
  },
  onEditButtonClick: function onEditButtonClick() {
    this.model.trigger('request:edit');
  },
  onEditRequest: function onEditRequest() {
    var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};

    if (!this.container.isEditable()) {
      return;
    }

    var model = this.getEditModel(),
        panel = elementor.getPanelView();

    if ($e.routes.isPartOf('panel/editor') && panel.getCurrentPageView().model === model) {
      return;
    }

    if (options.scrollIntoView) {
      elementor.helpers.scrollToView(this.$el, 200);
    }

    $e.run('panel/editor/open', {
      model: model,
      view: this
    });
  },
  onDuplicateButtonClick: function onDuplicateButtonClick(event) {
    event.stopPropagation();
    $e.run('document/elements/duplicate', {
      container: this.getContainer()
    });
  },
  onRemoveButtonClick: function onRemoveButtonClick(event) {
    event.stopPropagation();
    $e.run('document/elements/delete', {
      container: this.getContainer()
    });
  },

  /* jQuery ui sortable preventing any `mousedown` event above any element, and as a result is preventing the `blur`
   * event on the currently active element. Therefor, we need to blur the active element manually.
   */
  onMouseDown: function onMouseDown(event) {
    if (jQuery(event.target).closest('.elementor-inline-editing').length) {
      return;
    }

    elementorFrontend.elements.window.document.activeElement.blur();
  },
  onDestroy: function onDestroy() {
    this.controlsCSSParser.removeStyleFromDocument();
    this.getEditModel().get('settings').validators = {};
    elementor.channels.data.trigger('element:destroy', this.model);
  }
});
module.exports = BaseElementView;

/***/ }),

/***/ "../assets/dev/js/editor/elements/views/behaviors/column-resizable.js":
/*!****************************************************************************!*\
  !*** ../assets/dev/js/editor/elements/views/behaviors/column-resizable.js ***!
  \****************************************************************************/
/***/ ((module) => {

"use strict";


var ResizableBehavior;
ResizableBehavior = Marionette.Behavior.extend({
  defaults: {
    handles: elementorCommon.config.isRTL ? 'w' : 'e'
  },
  events: {
    resizestart: 'onResizeStart',
    resizestop: 'onResizeStop',
    resize: 'onResize'
  },
  initialize: function initialize() {
    Marionette.Behavior.prototype.initialize.apply(this, arguments);
    this.listenTo(elementor.channels.dataEditMode, 'switch', this.onEditModeSwitched);
  },
  active: function active() {
    if (!elementor.userCan('design')) {
      return;
    }

    this.deactivate();

    var options = _.clone(this.options);

    delete options.behaviorClass;

    var $childViewContainer = this.getChildViewContainer(),
        defaultResizableOptions = {},
        resizableOptions = _.extend(defaultResizableOptions, options);

    $childViewContainer.resizable(resizableOptions);
  },
  deactivate: function deactivate() {
    if (this.getChildViewContainer().resizable('instance')) {
      this.getChildViewContainer().resizable('destroy');
    }
  },
  onEditModeSwitched: function onEditModeSwitched(activeMode) {
    if ('edit' === activeMode) {
      this.active();
    } else {
      this.deactivate();
    }
  },
  onRender: function onRender() {
    var self = this;

    _.defer(function () {
      self.onEditModeSwitched(elementor.channels.dataEditMode.request('activeMode'));
    });
  },
  onDestroy: function onDestroy() {
    this.deactivate();
  },
  onResizeStart: function onResizeStart(event) {
    event.stopPropagation();
    this.view.$el.data('originalWidth', this.view.el.getBoundingClientRect().width);
    this.view.triggerMethod('request:resize:start', event);
  },
  onResizeStop: function onResizeStop(event) {
    event.stopPropagation();
    this.view.triggerMethod('request:resize:stop');
  },
  onResize: function onResize(event, ui) {
    event.stopPropagation();
    this.view.triggerMethod('request:resize', ui, event);
  },
  getChildViewContainer: function getChildViewContainer() {
    return this.$el;
  }
});
module.exports = ResizableBehavior;

/***/ }),

/***/ "../assets/dev/js/editor/elements/views/behaviors/context-menu.js":
/*!************************************************************************!*\
  !*** ../assets/dev/js/editor/elements/views/behaviors/context-menu.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _base = _interopRequireDefault(__webpack_require__(/*! elementor-views/add-section/base */ "../assets/dev/js/editor/views/add-section/base.js"));

var ContextMenu = __webpack_require__(/*! elementor-editor-utils/context-menu */ "../assets/dev/js/editor/utils/context-menu.js");

module.exports = Marionette.Behavior.extend({
  defaults: {
    groups: [],
    eventTargets: ['el']
  },
  events: function events() {
    var events = {};
    this.getOption('eventTargets').forEach(function (eventTarget) {
      var eventName = 'contextmenu';

      if ('el' !== eventTarget) {
        eventName += ' ' + eventTarget;
      }

      events[eventName] = 'onContextMenu';
    });
    return events;
  },
  initialize: function initialize() {
    this.listenTo(this.view.options.model, 'request:contextmenu', this.onRequestContextMenu);
  },
  initContextMenu: function initContextMenu() {
    var _this = this;

    var contextMenuGroups = this.getOption('groups'),
        deleteGroup = _.findWhere(contextMenuGroups, {
      name: 'delete'
    }),
        afterGroupIndex = contextMenuGroups.indexOf(deleteGroup);

    if (-1 === afterGroupIndex) {
      afterGroupIndex = contextMenuGroups.length;
    }

    contextMenuGroups.splice(afterGroupIndex, 0, {
      name: 'tools',
      actions: [{
        name: 'navigator',
        title: __('Navigator', 'elementor'),
        callback: function callback() {
          return $e.route('navigator', {
            reOpen: true,
            model: _this.view.model
          });
        }
      }]
    });
    this.contextMenu = new ContextMenu({
      groups: contextMenuGroups
    });
    this.contextMenu.getModal().on('hide', this.onContextMenuHide);
  },
  getContextMenu: function getContextMenu() {
    if (!this.contextMenu) {
      this.initContextMenu();
    }

    return this.contextMenu;
  },
  onContextMenu: function onContextMenu(event) {
    if ($e.shortcuts.isControlEvent(event)) {
      return;
    }

    var isAddSectionView = this.view instanceof _base.default;

    if (!isAddSectionView && (!this.view.container || !this.view.container.isDesignable())) {
      return;
    }

    event.preventDefault();
    event.stopPropagation();
    this.getContextMenu().show(event);
    elementor.channels.editor.reply('contextMenu:targetView', this.view);
  },
  onRequestContextMenu: function onRequestContextMenu(event) {
    var modal = this.getContextMenu().getModal(),
        iframe = modal.getSettings('iframe'),
        toolsGroup = _.findWhere(this.contextMenu.getSettings('groups'), {
      name: 'tools'
    });

    toolsGroup.isVisible = false;
    modal.setSettings('iframe', null);
    this.onContextMenu(event);
    toolsGroup.isVisible = true;
    modal.setSettings('iframe', iframe);
  },
  onContextMenuHide: function onContextMenuHide() {
    elementor.channels.editor.reply('contextMenu:targetView', null);
  },
  onDestroy: function onDestroy() {
    if (this.contextMenu) {
      this.contextMenu.destroy();
    }
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/elements/views/behaviors/inline-editing.js":
/*!**************************************************************************!*\
  !*** ../assets/dev/js/editor/elements/views/behaviors/inline-editing.js ***!
  \**************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

__webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");

var InlineEditingBehavior;
InlineEditingBehavior = Marionette.Behavior.extend({
  editing: false,
  $currentEditingArea: null,
  ui: function ui() {
    return {
      inlineEditingArea: '.' + this.getOption('inlineEditingClass')
    };
  },
  events: function events() {
    return {
      'click @ui.inlineEditingArea': 'onInlineEditingClick',
      'input @ui.inlineEditingArea': 'onInlineEditingUpdate'
    };
  },
  initialize: function initialize() {
    this.onInlineEditingBlur = this.onInlineEditingBlur.bind(this);
  },
  getEditingSettingKey: function getEditingSettingKey() {
    return this.$currentEditingArea.data().elementorSettingKey;
  },
  startEditing: function startEditing($element) {
    if (this.editing || !this.view.container.isEditable() || this.view.model.isRemoteRequestActive()) {
      return;
    }

    var elementorSettingKey = $element.data().elementorSettingKey,
        settingKey = elementorSettingKey,
        keyParts = elementorSettingKey.split('.'),
        isRepeaterKey = 3 === keyParts.length,
        settingsModel = this.view.getEditModel().get('settings');

    if (isRepeaterKey) {
      settingsModel = settingsModel.get(keyParts[0]).models[keyParts[1]];
      settingKey = keyParts[2];
    }

    var dynamicSettings = settingsModel.get('__dynamic__'),
        isDynamic = dynamicSettings && dynamicSettings[settingKey];

    if (isDynamic) {
      return;
    }

    this.$currentEditingArea = $element;
    var elementData = this.$currentEditingArea.data(),
        elementDataToolbar = elementData.elementorInlineEditingToolbar,
        mode = 'advanced' === elementDataToolbar ? 'advanced' : 'basic',
        editModel = this.view.getEditModel(),
        inlineEditingConfig = elementor.config.inlineEditing,
        contentHTML = editModel.getSetting(this.getEditingSettingKey());

    if ('advanced' === mode) {
      contentHTML = wp.editor.autop(contentHTML);
    }
    /**
     *  Replace rendered content with unrendered content.
     *  This way the user can edit the original content, before shortcodes and oEmbeds are fired.
     */


    this.$currentEditingArea.html(contentHTML);
    var ElementorInlineEditor = elementorFrontend.elements.window.ElementorInlineEditor;
    this.editing = true;
    this.view.allowRender = false; // Avoid retrieving of old content (e.g. in case of sorting)

    this.view.model.setHtmlCache('');
    this.editor = new ElementorInlineEditor({
      linksInNewWindow: true,
      stay: false,
      editor: this.$currentEditingArea[0],
      mode: mode,
      list: 'none' === elementDataToolbar ? [] : inlineEditingConfig.toolbar[elementDataToolbar || 'basic'],
      cleanAttrs: ['id', 'class', 'name'],
      placeholder: __('Type Here', 'elementor') + '...',
      toolbarIconsPrefix: 'eicon-editor-',
      toolbarIconsDictionary: {
        externalLink: {
          className: 'eicon-editor-external-link'
        },
        list: {
          className: 'eicon-editor-list-ul'
        },
        insertOrderedList: {
          className: 'eicon-editor-list-ol'
        },
        insertUnorderedList: {
          className: 'eicon-editor-list-ul'
        },
        createlink: {
          className: 'eicon-editor-link'
        },
        unlink: {
          className: 'eicon-editor-unlink'
        },
        blockquote: {
          className: 'eicon-editor-quote'
        },
        p: {
          className: 'eicon-editor-paragraph'
        },
        pre: {
          className: 'eicon-editor-code'
        }
      }
    });
    var $menuItems = jQuery(this.editor._menu).children();
    /**
     * When the edit area is not focused (on blur) the inline editing is stopped.
     * In order to prevent blur event when the user clicks on toolbar buttons while editing the
     * content, we need the prevent their mousedown event. This also prevents the blur event.
     */

    $menuItems.on('mousedown', function (event) {
      event.preventDefault();
    });
    this.$currentEditingArea.on('blur', this.onInlineEditingBlur);
    elementorCommon.elements.$body.on('mousedown', this.onInlineEditingBlur);
  },
  stopEditing: function stopEditing() {
    this.editing = false;
    this.$currentEditingArea.off('blur', this.onInlineEditingBlur);
    elementorCommon.elements.$body.off('mousedown', this.onInlineEditingBlur);
    this.editor.destroy();
    this.view.allowRender = true;
    /**
     * Inline editing has several toolbar types (advanced, basic and none). When editing is stopped,
     * we need to rerender the area. To prevent multiple renderings, we will render only areas that
     * use advanced toolbars.
     */

    if ('advanced' === this.$currentEditingArea.data().elementorInlineEditingToolbar) {
      this.view.getEditModel().renderRemoteServer();
    }
  },
  onInlineEditingClick: function onInlineEditingClick(event) {
    var self = this,
        $targetElement = jQuery(event.currentTarget);
    /**
     * When starting inline editing we need to set timeout, this allows other inline items to finish
     * their operations before focusing new editing area.
     */

    setTimeout(function () {
      self.startEditing($targetElement);
    }, 30);
  },
  onInlineEditingBlur: function onInlineEditingBlur(event) {
    var _this = this;

    if ('mousedown' === event.type) {
      this.stopEditing();
      return;
    }
    /**
     * When exiting inline editing we need to set timeout, to make sure there is no focus on internal
     * toolbar action. This prevent the blur and allows the user to continue the inline editing.
     */


    setTimeout(function () {
      var selection = elementorFrontend.elements.window.getSelection(),
          $focusNode = jQuery(selection.focusNode);

      if ($focusNode.closest('.pen-input-wrapper').length) {
        return;
      }

      _this.stopEditing();
    }, 20);
  },
  onInlineEditingUpdate: function onInlineEditingUpdate() {
    var key = this.getEditingSettingKey(),
        container = this.view.getContainer();
    var parts = key.split('.'); // Is it repeater?

    if (3 === parts.length) {
      container = container.children[parts[1]];
      key = parts[2];
    }

    $e.run('document/elements/settings', {
      container: container,
      settings: (0, _defineProperty2.default)({}, key, this.editor.getContent()),
      options: {
        external: true
      }
    });
  }
});
module.exports = InlineEditingBehavior;

/***/ }),

/***/ "../assets/dev/js/editor/elements/views/behaviors/inner-tabs.js":
/*!**********************************************************************!*\
  !*** ../assets/dev/js/editor/elements/views/behaviors/inner-tabs.js ***!
  \**********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

var InnerTabsBehavior;
InnerTabsBehavior = Marionette.Behavior.extend({
  onRenderCollection: function onRenderCollection() {
    this.handleInnerTabs(this.view);
  },
  handleInnerTabs: function handleInnerTabs(parent) {
    var closedClass = 'elementor-tab-close',
        activeClass = 'elementor-tab-active',
        tabsWrappers = parent.children.filter(function (view) {
      return 'tabs' === view.model.get('type');
    });

    _.each(tabsWrappers, function (view) {
      view.$el.find('.elementor-control-content').remove();
      var tabsId = view.model.get('name'),
          tabs = parent.children.filter(function (childView) {
        return 'tab' === childView.model.get('type') && childView.model.get('tabs_wrapper') === tabsId;
      });

      _.each(tabs, function (childView, index) {
        view._addChildView(childView);

        var tabId = childView.model.get('name'),
            controlsUnderTab = parent.children.filter(function (controlView) {
          return tabId === controlView.model.get('inner_tab');
        });

        if (0 === index) {
          childView.$el.addClass(activeClass);
        } else {
          _.each(controlsUnderTab, function (controlView) {
            controlView.$el.addClass(closedClass);
          });
        }
      });
    });
  },
  onChildviewControlTabClicked: function onChildviewControlTabClicked(childView) {
    var closedClass = 'elementor-tab-close',
        activeClass = 'elementor-tab-active',
        tabClicked = childView.model.get('name'),
        childrenUnderTab = this.view.children.filter(function (view) {
      return 'tab' !== view.model.get('type') && childView.model.get('tabs_wrapper') === view.model.get('tabs_wrapper');
    }),
        siblingTabs = this.view.children.filter(function (view) {
      return 'tab' === view.model.get('type') && childView.model.get('tabs_wrapper') === view.model.get('tabs_wrapper');
    });

    _.each(siblingTabs, function (view) {
      view.$el.removeClass(activeClass);
    });

    childView.$el.addClass(activeClass);

    _.each(childrenUnderTab, function (view) {
      if (view.model.get('inner_tab') === tabClicked) {
        view.$el.removeClass(closedClass);
      } else {
        view.$el.addClass(closedClass);
      }
    });

    elementor.getPanelView().updateScrollbar();
  }
});
module.exports = InnerTabsBehavior;

/***/ }),

/***/ "../assets/dev/js/editor/elements/views/behaviors/sortable.js":
/*!********************************************************************!*\
  !*** ../assets/dev/js/editor/elements/views/behaviors/sortable.js ***!
  \********************************************************************/
/***/ ((module) => {

"use strict";


var SortableBehavior;
SortableBehavior = Marionette.Behavior.extend({
  defaults: {
    elChildType: 'widget'
  },
  events: {
    sortstart: 'onSortStart',
    sortreceive: 'onSortReceive',
    sortupdate: 'onSortUpdate',
    sortover: 'onSortOver',
    sortout: 'onSortOut'
  },
  initialize: function initialize() {
    this.listenTo(elementor.channels.dataEditMode, 'switch', this.onEditModeSwitched).listenTo(this.view.options.model, 'request:sort:start', this.startSort).listenTo(this.view.options.model, 'request:sort:update', this.updateSort).listenTo(this.view.options.model, 'request:sort:receive', this.receiveSort);
  },
  onEditModeSwitched: function onEditModeSwitched(activeMode) {
    if ('edit' === activeMode) {
      this.activate();
    } else {
      this.deactivate();
    }
  },
  onRender: function onRender() {
    var self = this;

    _.defer(function () {
      self.onEditModeSwitched(elementor.channels.dataEditMode.request('activeMode'));
    });
  },
  onDestroy: function onDestroy() {
    this.deactivate();
  },
  activate: function activate() {
    if (!elementor.userCan('design')) {
      return;
    }

    if (this.getChildViewContainer().sortable('instance')) {
      return;
    }

    var $childViewContainer = this.getChildViewContainer(),
        defaultSortableOptions = {
      placeholder: 'elementor-sortable-placeholder elementor-' + this.getOption('elChildType') + '-placeholder',
      cursorAt: {
        top: 20,
        left: 25
      },
      helper: this._getSortableHelper.bind(this),
      cancel: 'input, textarea, button, select, option, .elementor-inline-editing, .elementor-tab-title',
      // Fix: Sortable - Unable to drag and drop sections with huge height.
      start: function start() {
        $childViewContainer.sortable('refreshPositions');
      }
    },
        sortableOptions = _.extend(defaultSortableOptions, this.view.getSortableOptions());

    $childViewContainer.sortable(sortableOptions);
  },
  _getSortableHelper: function _getSortableHelper(event, $item) {
    var model = this.view.collection.get({
      cid: $item.data('model-cid')
    });
    return '<div style="height: 84px; width: 125px;" class="elementor-sortable-helper elementor-sortable-helper-' + model.get('elType') + '"><div class="icon"><i class="' + model.getIcon() + '"></i></div><div class="elementor-element-title-wrapper"><div class="title">' + model.getTitle() + '</div></div></div>';
  },
  getChildViewContainer: function getChildViewContainer() {
    return this.view.getChildViewContainer(this.view);
  },
  // This method is used to fix widgets index detection when dragging or sorting using the preview interface,
  // The natural widget index in the column is wrong, since there is a `.elementor-background-overlay` element
  // at the beginning of the column
  getSortedElementNewIndex: function getSortedElementNewIndex($element) {
    var draggedModel = elementor.channels.data.request('dragging:model'),
        draggedElType = draggedModel.get('elType');
    var newIndex = $element.index();

    if ('widget' === draggedElType && elementorCommon.config.experimentalFeatures['e_dom_optimization']) {
      newIndex--;
    }

    return newIndex;
  },
  deactivate: function deactivate() {
    var childViewContainer = this.getChildViewContainer();

    if (childViewContainer.sortable('instance')) {
      childViewContainer.sortable('destroy');
    }
  },
  startSort: function startSort(event, ui) {
    event.stopPropagation();
    var container = elementor.getContainer(ui.item.attr('data-id'));
    elementor.channels.data.reply('dragging:model', container.model).reply('dragging:view', container.view).reply('dragging:parent:view', this.view).trigger('drag:start', container.model).trigger(container.model.get('elType') + ':drag:start');
  },
  // On sorting element
  updateSort: function updateSort(ui, newIndex) {
    if (undefined === newIndex) {
      newIndex = ui.item.index();
    }

    $e.run('document/elements/move', {
      container: elementor.channels.data.request('dragging:view').getContainer(),
      target: this.view.getContainer(),
      options: {
        at: newIndex
      }
    });
  },
  // On receiving element from another container
  receiveSort: function receiveSort(event, ui, newIndex) {
    event.stopPropagation();

    if (this.view.isCollectionFilled()) {
      jQuery(ui.sender).sortable('cancel');
      return;
    }

    var model = elementor.channels.data.request('dragging:model'),
        draggedElType = model.get('elType'),
        draggedIsInnerSection = 'section' === draggedElType && model.get('isInner'),
        targetIsInnerColumn = 'column' === this.view.getElementType() && this.view.isInner();

    if (draggedIsInnerSection && targetIsInnerColumn) {
      jQuery(ui.sender).sortable('cancel');
      return;
    }

    if (undefined === newIndex) {
      newIndex = ui.item.index();
    }

    $e.run('document/elements/move', {
      container: elementor.channels.data.request('dragging:view').getContainer(),
      target: this.view.getContainer(),
      options: {
        at: newIndex
      }
    });
  },
  onSortStart: function onSortStart(event, ui) {
    if ('column' === this.options.elChildType) {
      var uiData = ui.item.data('sortableItem'),
          uiItems = uiData.items,
          itemHeight = 0;
      uiItems.forEach(function (item) {
        if (item.item[0] === ui.item[0]) {
          itemHeight = item.height;
          return false;
        }
      });
      ui.placeholder.height(itemHeight);
    }

    this.startSort(event, ui);
  },
  onSortOver: function onSortOver(event) {
    event.stopPropagation();
    var model = elementor.channels.data.request('dragging:model');
    jQuery(event.target).addClass('elementor-draggable-over').attr({
      'data-dragged-element': model.get('elType'),
      'data-dragged-is-inner': model.get('isInner')
    });
    this.$el.addClass('elementor-dragging-on-child');
  },
  onSortOut: function onSortOut(event) {
    event.stopPropagation();
    jQuery(event.target).removeClass('elementor-draggable-over').removeAttr('data-dragged-element data-dragged-is-inner');
    this.$el.removeClass('elementor-dragging-on-child');
  },
  onSortReceive: function onSortReceive(event, ui) {
    this.receiveSort(event, ui, this.getSortedElementNewIndex(ui.item));
  },
  onSortUpdate: function onSortUpdate(event, ui) {
    event.stopPropagation();

    if (this.getChildViewContainer()[0] !== ui.item.parent()[0]) {
      return;
    }

    this.updateSort(ui, this.getSortedElementNewIndex(ui.item));
  },
  onAddChild: function onAddChild(view) {
    view.$el.attr('data-model-cid', view.model.cid);
  }
});
module.exports = SortableBehavior;

/***/ }),

/***/ "../assets/dev/js/editor/elements/views/behaviors/widget-draggable.js":
/*!****************************************************************************!*\
  !*** ../assets/dev/js/editor/elements/views/behaviors/widget-draggable.js ***!
  \****************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _default = /*#__PURE__*/function (_Marionette$Behavior) {
  (0, _inherits2.default)(_default, _Marionette$Behavior);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "events",
    value: function events() {
      return {
        dragstart: 'onDragStart',
        dragstop: 'onDragStop'
      };
    }
  }, {
    key: "initialize",
    value: function initialize() {
      (0, _get2.default)((0, _getPrototypeOf2.default)(_default.prototype), "initialize", this).call(this);
      this.listenTo(elementor.channels.dataEditMode, 'switch', this.toggle); // Save this instance for external use eg: ( hooks ).

      this.view.options.draggable = this;
    }
  }, {
    key: "activate",
    value: function activate() {
      this.$el.draggable({
        addClasses: false
      });
    }
  }, {
    key: "deactivate",
    value: function deactivate() {
      if (!this.$el.draggable('instance')) {
        return;
      }

      this.$el.draggable('destroy');
    }
  }, {
    key: "toggle",
    value: function toggle() {
      var isAbsolute = this.view.getEditModel().getSetting('_position');
      this.deactivate();

      if (isAbsolute && this.view.getContainer().isDesignable()) {
        this.activate();
      }
    }
  }, {
    key: "onRender",
    value: function onRender() {
      var _this = this;

      _.defer(function () {
        return _this.toggle();
      });
    }
  }, {
    key: "onDestroy",
    value: function onDestroy() {
      this.deactivate();
    }
  }, {
    key: "onDragStart",
    value: function onDragStart(event) {
      event.stopPropagation();
      this.view.model.trigger('request:edit');
    }
  }, {
    key: "onDragStop",
    value: function onDragStop(event, ui) {
      var _this2 = this;

      event.stopPropagation();
      var currentDeviceMode = elementorFrontend.getCurrentDeviceMode(),
          deviceSuffix = 'desktop' === currentDeviceMode ? '' : '_' + currentDeviceMode,
          editModel = this.view.getEditModel(),
          hOrientation = editModel.getSetting('_offset_orientation_h'),
          vOrientation = editModel.getSetting('_offset_orientation_v'),
          settingToChange = {},
          isRTL = elementorFrontend.config.is_rtl;
      var parentWidth = this.$el.offsetParent().width(),
          elementWidth = this.$el.outerWidth(true),
          left = ui.position.left,
          right = parentWidth - left - elementWidth;
      var xPos = isRTL ? right : left,
          yPos = ui.position.top,
          offsetX = '_offset_x',
          offsetY = '_offset_y';

      if ('end' === hOrientation) {
        xPos = parentWidth - xPos - elementWidth;
        offsetX = '_offset_x_end';
      }

      var offsetXUnit = editModel.getSetting(offsetX + deviceSuffix).unit;
      xPos = elementor.helpers.elementSizeToUnit(this.$el, xPos, offsetXUnit);
      var parentHeight = this.$el.offsetParent().height(),
          elementHeight = this.$el.outerHeight(true);

      if ('end' === vOrientation) {
        yPos = parentHeight - yPos - elementHeight;
        offsetY = '_offset_y_end';
      }

      var offsetYUnit = editModel.getSetting(offsetY + deviceSuffix).unit;
      yPos = elementor.helpers.elementSizeToUnit(this.$el, yPos, offsetYUnit);
      settingToChange[offsetX + deviceSuffix] = {
        size: xPos,
        unit: offsetXUnit
      };
      settingToChange[offsetY + deviceSuffix] = {
        size: yPos,
        unit: offsetYUnit
      };
      $e.run('document/elements/settings', {
        container: this.view.container,
        settings: settingToChange,
        options: {
          external: true
        }
      });
      setTimeout(function () {
        _this2.$el.css({
          top: '',
          left: '',
          right: '',
          bottom: '',
          width: '',
          height: ''
        });
      }, 250);
    }
  }]);
  return _default;
}(Marionette.Behavior);

exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/elements/views/behaviors/widget-resizeable.js":
/*!*****************************************************************************!*\
  !*** ../assets/dev/js/editor/elements/views/behaviors/widget-resizeable.js ***!
  \*****************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _default = /*#__PURE__*/function (_Marionette$Behavior) {
  (0, _inherits2.default)(_default, _Marionette$Behavior);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "events",
    value: function events() {
      return {
        resizestart: 'onResizeStart',
        resizestop: 'onResizeStop',
        resize: 'onResize'
      };
    }
  }, {
    key: "initialize",
    value: function initialize() {
      (0, _get2.default)((0, _getPrototypeOf2.default)(_default.prototype), "initialize", this).call(this);
      this.listenTo(elementor.channels.dataEditMode, 'switch', this.toggle); // Save this instance for external use eg: ( hooks ).

      this.view.options.resizeable = this;
    }
  }, {
    key: "activate",
    value: function activate() {
      this.$el.resizable({
        handles: 'e, w'
      });
    }
  }, {
    key: "deactivate",
    value: function deactivate() {
      if (!this.$el.resizable('instance')) {
        return;
      }

      this.$el.resizable('destroy');
    }
  }, {
    key: "toggle",
    value: function toggle() {
      var editModel = this.view.getEditModel(),
          isAbsolute = editModel.getSetting('_position'),
          isInline = 'initial' === editModel.getSetting('_element_width');
      this.deactivate();

      if ((isAbsolute || isInline) && this.view.container.isDesignable()) {
        this.activate();
      }
    }
  }, {
    key: "onRender",
    value: function onRender() {
      var _this = this;

      _.defer(function () {
        return _this.toggle();
      });
    }
  }, {
    key: "onDestroy",
    value: function onDestroy() {
      this.deactivate();
    }
  }, {
    key: "onResizeStart",
    value: function onResizeStart(event) {
      event.stopPropagation();
      this.view.model.trigger('request:edit');
    }
  }, {
    key: "onResizeStop",
    value: function onResizeStop(event, ui) {
      event.stopPropagation();
      var currentDeviceMode = elementorFrontend.getCurrentDeviceMode(),
          deviceSuffix = 'desktop' === currentDeviceMode ? '' : '_' + currentDeviceMode,
          editModel = this.view.getEditModel(),
          unit = editModel.getSetting('_element_custom_width' + deviceSuffix).unit,
          width = elementor.helpers.elementSizeToUnit(this.$el, ui.size.width, unit),
          settingToChange = {};
      settingToChange['_element_width' + deviceSuffix] = 'initial';
      settingToChange['_element_custom_width' + deviceSuffix] = {
        unit: unit,
        size: width
      };
      $e.run('document/elements/settings', {
        container: this.view.container,
        settings: settingToChange,
        options: {
          external: true
        }
      });
      this.$el.css({
        width: '',
        height: '',
        left: ''
      });
    }
  }, {
    key: "onResize",
    value: function onResize(event) {
      event.stopPropagation();
    }
  }]);
  return _default;
}(Marionette.Behavior);

exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/elements/views/column-empty.js":
/*!**************************************************************!*\
  !*** ../assets/dev/js/editor/elements/views/column-empty.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


module.exports = Marionette.ItemView.extend({
  template: '#tmpl-elementor-empty-preview',
  className: 'elementor-empty-view',
  events: {
    click: 'onClickAdd'
  },
  behaviors: function behaviors() {
    return {
      contextMenu: {
        behaviorClass: __webpack_require__(/*! elementor-behaviors/context-menu */ "../assets/dev/js/editor/elements/views/behaviors/context-menu.js"),
        groups: this.getContextMenuGroups()
      }
    };
  },
  getContextMenuGroups: function getContextMenuGroups() {
    var _this = this;

    return [{
      name: 'general',
      actions: [{
        name: 'paste',
        title: __('Paste', 'elementor'),
        isEnabled: function isEnabled() {
          return $e.components.get('document/elements').utils.isPasteEnabled(_this._parent.getContainer());
        },
        callback: function callback() {
          return $e.run('document/ui/paste', {
            container: _this._parent.getContainer()
          });
        }
      }]
    }];
  },
  onClickAdd: function onClickAdd() {
    $e.route('panel/elements/categories');
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/elements/views/column.js":
/*!********************************************************!*\
  !*** ../assets/dev/js/editor/elements/views/column.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var sprintf = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["sprintf"];
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _section = __webpack_require__(/*! elementor-elements/views/section */ "../assets/dev/js/editor/elements/views/section.js");

var BaseElementView = __webpack_require__(/*! elementor-elements/views/base */ "../assets/dev/js/editor/elements/views/base.js"),
    ColumnEmptyView = __webpack_require__(/*! elementor-elements/views/column-empty */ "../assets/dev/js/editor/elements/views/column-empty.js"),
    ColumnView;

ColumnView = BaseElementView.extend({
  template: Marionette.TemplateCache.get('#tmpl-elementor-column-content'),
  emptyView: ColumnEmptyView,
  childViewContainer: elementorCommon.config.experimentalFeatures['e_dom_optimization'] ? '> .elementor-widget-wrap' : '> .elementor-column-wrap > .elementor-widget-wrap',
  toggleEditTools: true,
  behaviors: function behaviors() {
    var behaviors = BaseElementView.prototype.behaviors.apply(this, arguments);

    _.extend(behaviors, {
      Sortable: {
        behaviorClass: __webpack_require__(/*! elementor-behaviors/sortable */ "../assets/dev/js/editor/elements/views/behaviors/sortable.js"),
        elChildType: 'widget'
      },
      Resizable: {
        behaviorClass: __webpack_require__(/*! elementor-behaviors/column-resizable */ "../assets/dev/js/editor/elements/views/behaviors/column-resizable.js")
      }
    });

    return elementor.hooks.applyFilters('elements/column/behaviors', behaviors, this);
  },
  className: function className() {
    var classes = BaseElementView.prototype.className.apply(this, arguments),
        type = this.isInner() ? 'inner' : 'top';
    return classes + ' elementor-column elementor-' + type + '-column';
  },
  tagName: function tagName() {
    return this.model.getSetting('html_tag') || 'div';
  },
  ui: function ui() {
    var ui = BaseElementView.prototype.ui.apply(this, arguments);
    ui.columnInner = elementorCommon.config.experimentalFeatures['e_dom_optimization'] ? '> .elementor-widget-wrap' : '> .elementor-column-wrap';
    ui.percentsTooltip = '> .elementor-element-overlay .elementor-column-percents-tooltip';
    return ui;
  },
  getEditButtons: function getEditButtons() {
    var elementData = elementor.getElementData(this.model),
        editTools = {};
    editTools.edit = {
      /* translators: %s: Element name. */
      title: sprintf(__('Edit %s', 'elementor'), elementData.title),
      icon: 'column'
    };

    if (elementor.getPreferences('edit_buttons')) {
      editTools.duplicate = {
        /* translators: %s: Element name. */
        title: sprintf(__('Duplicate %s', 'elementor'), elementData.title),
        icon: 'clone'
      };
      editTools.add = {
        /* translators: %s: Element name. */
        title: sprintf(__('Add %s', 'elementor'), elementData.title),
        icon: 'plus'
      };
      editTools.remove = {
        /* translators: %s: Element name. */
        title: sprintf(__('Delete %s', 'elementor'), elementData.title),
        icon: 'close'
      };
    }

    return editTools;
  },
  initialize: function initialize() {
    BaseElementView.prototype.initialize.apply(this, arguments);
    this.model.get('editSettings').set('defaultEditRoute', 'layout');
  },
  attachElContent: function attachElContent() {
    BaseElementView.prototype.attachElContent.apply(this, arguments);
    var $tooltip = jQuery('<div>', {
      class: 'elementor-column-percents-tooltip'
    });
    this.$el.children('.elementor-element-overlay').append($tooltip);
  },
  getContextMenuGroups: function getContextMenuGroups() {
    var self = this,
        groups = BaseElementView.prototype.getContextMenuGroups.apply(this, arguments),
        generalGroupIndex = groups.indexOf(_.findWhere(groups, {
      name: 'general'
    }));
    groups.splice(generalGroupIndex + 1, 0, {
      name: 'addNew',
      actions: [{
        name: 'addNew',
        icon: 'eicon-plus',
        title: __('Add New Column', 'elementor'),
        callback: this.addNewColumn.bind(this),
        isEnabled: function isEnabled() {
          return self.model.collection.length < _section.DEFAULT_MAX_COLUMNS;
        }
      }]
    });
    return groups;
  },
  isDroppingAllowed: function isDroppingAllowed() {
    // Don't allow dragging items to document which is not editable.
    if (!this.getContainer().isEditable()) {
      return false;
    }

    var elementView = elementor.channels.panelElements.request('element:selected');

    if (!elementView) {
      return false;
    }

    var elType = elementView.model.get('elType');

    if ('section' === elType) {
      return !this.isInner();
    }

    return 'widget' === elType;
  },
  getPercentsForDisplay: function getPercentsForDisplay() {
    var inlineSize = +this.model.getSetting('_inline_size') || this.getPercentSize();
    return inlineSize.toFixed(1) + '%';
  },
  changeSizeUI: function changeSizeUI() {
    var self = this,
        columnSize = self.model.getSetting('_column_size');
    self.$el.attr('data-col', columnSize);

    _.defer(function () {
      // Wait for the column size to be applied
      if (self.ui.percentsTooltip) {
        self.ui.percentsTooltip.text(self.getPercentsForDisplay());
      }
    });
  },
  getPercentSize: function getPercentSize(size) {
    if (!size) {
      size = this.el.getBoundingClientRect().width;
    }

    return +(size / this.$el.parent().width() * 100).toFixed(3);
  },
  getSortableOptions: function getSortableOptions() {
    return {
      connectWith: '.elementor-widget-wrap',
      items: '> .elementor-element'
    };
  },
  changeChildContainerClasses: function changeChildContainerClasses() {
    var emptyClass = 'elementor-element-empty',
        populatedClass = 'elementor-element-populated';

    if (this.ui.columnInner) {
      if (this.collection.isEmpty()) {
        this.ui.columnInner.removeClass(populatedClass).addClass(emptyClass);
      } else {
        this.ui.columnInner.removeClass(emptyClass).addClass(populatedClass);
      }
    }
  },
  addNewColumn: function addNewColumn() {
    $e.run('document/elements/create', {
      model: {
        elType: 'column'
      },
      container: this.getContainer().parent,
      options: {
        at: this.$el.index() + 1
      }
    });
  },
  onRender: function onRender() {
    var _this = this;

    var isDomOptimizationActive = elementorCommon.config.experimentalFeatures['e_dom_optimization'];
    var itemsClasses = '';

    if (isDomOptimizationActive) {
      itemsClasses = ' > .elementor-widget-wrap > .elementor-element, >.elementor-widget-wrap > .elementor-empty-view > .elementor-first-add';
    } else {
      itemsClasses = ' > .elementor-column-wrap > .elementor-widget-wrap > .elementor-element, >.elementor-column-wrap > .elementor-widget-wrap > .elementor-empty-view > .elementor-first-add';
    }

    BaseElementView.prototype.onRender.apply(this, arguments);
    this.changeChildContainerClasses();
    this.changeSizeUI();
    this.$el.html5Droppable({
      items: itemsClasses,
      axis: ['vertical'],
      groups: ['elementor-element'],
      isDroppingAllowed: this.isDroppingAllowed.bind(this),
      currentElementClass: 'elementor-html5dnd-current-element',
      placeholderClass: 'elementor-sortable-placeholder elementor-widget-placeholder',
      hasDraggingOnChildClass: 'elementor-dragging-on-child',
      onDropping: function onDropping(side, event) {
        event.stopPropagation(); // Triggering drag end manually, since it won't fired above iframe

        elementor.getPreviewView().onPanelElementDragEnd();
        var newIndex = jQuery(event.currentTarget).index(); // Since 3.0.0, the `.elementor-background-overlay` element sit at the same level as widgets

        if ('bottom' === side && !isDomOptimizationActive) {
          newIndex++;
        } else if ('top' === side && isDomOptimizationActive) {
          newIndex--;
        }

        _this.addElementFromPanel({
          at: newIndex
        });
      }
    });
  },
  onAddButtonClick: function onAddButtonClick(event) {
    event.stopPropagation();
    this.addNewColumn();
  }
});
module.exports = ColumnView;

/***/ }),

/***/ "../assets/dev/js/editor/elements/views/section.js":
/*!*********************************************************!*\
  !*** ../assets/dev/js/editor/elements/views/section.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var sprintf = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["sprintf"];
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

var _inline = _interopRequireDefault(__webpack_require__(/*! ../../views/add-section/inline */ "../assets/dev/js/editor/views/add-section/inline.js"));

var BaseElementView = __webpack_require__(/*! elementor-elements/views/base */ "../assets/dev/js/editor/elements/views/base.js");

var DEFAULT_INNER_SECTION_COLUMNS = 2,
    DEFAULT_MIN_COLUMN_SIZE = 2,
    DEFAULT_MAX_COLUMNS = 10;
var SectionView = BaseElementView.extend({
  childViewContainer: function childViewContainer() {
    var containerSelector = '> .elementor-container';

    if (!elementorCommon.config.experimentalFeatures['e_dom_optimization']) {
      containerSelector += ' > .elementor-row';
    }

    return containerSelector;
  },
  template: Marionette.TemplateCache.get('#tmpl-elementor-section-content'),
  addSectionView: null,
  _checkIsFull: function _checkIsFull() {
    this.toggleSectionIsFull();
    elementorCommon.helpers.softDeprecated('_checkIsFull', '2.9.0', 'toggleSectionIsFull()');
  },
  toggleSectionIsFull: function toggleSectionIsFull() {
    this.$el.toggleClass('elementor-section-filled', this.isCollectionFilled());
  },
  addChildModel: function addChildModel(model) {
    /// TODO: maybe should be part of $e.hooks.
    var isModelInstance = model instanceof Backbone.Model,
        isInner = this.isInner();

    if (isModelInstance) {
      // TODO: change to command.
      model.set('isInner', isInner);
    } else {
      model.isInner = isInner;
    }

    return BaseElementView.prototype.addChildModel.apply(this, arguments);
  },
  className: function className() {
    var classes = BaseElementView.prototype.className.apply(this, arguments),
        type = this.isInner() ? 'inner' : 'top';
    return classes + ' elementor-section elementor-' + type + '-section';
  },
  tagName: function tagName() {
    return this.model.getSetting('html_tag') || 'section';
  },
  behaviors: function behaviors() {
    var behaviors = BaseElementView.prototype.behaviors.apply(this, arguments);

    _.extend(behaviors, {
      Sortable: {
        behaviorClass: __webpack_require__(/*! elementor-behaviors/sortable */ "../assets/dev/js/editor/elements/views/behaviors/sortable.js"),
        elChildType: 'column'
      }
    });

    return elementor.hooks.applyFilters('elements/section/behaviors', behaviors, this);
  },
  initialize: function initialize() {
    BaseElementView.prototype.initialize.apply(this, arguments);
    this.model.get('editSettings').set('defaultEditRoute', 'layout');
  },
  getEditButtons: function getEditButtons() {
    var elementData = elementor.getElementData(this.model),
        editTools = {};

    if (!this.isInner()) {
      editTools.add = {
        /* translators: %s: Element name. */
        title: sprintf(__('Add %s', 'elementor'), elementData.title),
        icon: 'plus'
      };
    }

    editTools.edit = {
      /* translators: %s: Element name. */
      title: sprintf(__('Edit %s', 'elementor'), elementData.title),
      icon: 'handle'
    };

    if (elementor.getPreferences('edit_buttons')) {
      editTools.duplicate = {
        /* translators: %s: Element name. */
        title: sprintf(__('Duplicate %s', 'elementor'), elementData.title),
        icon: 'clone'
      };
    }

    editTools.remove = {
      /* translators: %s: Element name. */
      title: sprintf(__('Delete %s', 'elementor'), elementData.title),
      icon: 'close'
    };
    return editTools;
  },
  getContextMenuGroups: function getContextMenuGroups() {
    var groups = BaseElementView.prototype.getContextMenuGroups.apply(this, arguments),
        transferGroupIndex = groups.indexOf(_.findWhere(groups, {
      name: 'clipboard'
    }));
    groups.splice(transferGroupIndex + 1, 0, {
      name: 'save',
      actions: [{
        name: 'save',
        title: __('Save as Template', 'elementor'),
        callback: this.save.bind(this)
      }]
    });
    return groups;
  },
  getSortableOptions: function getSortableOptions() {
    var sectionConnectClass = this.isInner() ? '.elementor-inner-section' : '.elementor-top-section';
    return {
      connectWith: sectionConnectClass + this.childViewContainer(),
      handle: '> .elementor-element-overlay .elementor-editor-element-edit',
      items: '> .elementor-column',
      forcePlaceholderSize: true,
      tolerance: 'pointer'
    };
  },
  getColumnPercentSize: function getColumnPercentSize(element, size) {
    return +(size / element.parent().width() * 100).toFixed(3);
  },
  getDefaultStructure: function getDefaultStructure() {
    return this.collection.length + '0';
  },
  getStructure: function getStructure() {
    return this.model.getSetting('structure');
  },
  getColumnAt: function getColumnAt(index) {
    var model = this.collection.at(index);
    return model ? this.children.findByModelCid(model.cid) : null;
  },
  getNextColumn: function getNextColumn(columnView) {
    return this.getColumnAt(this.collection.indexOf(columnView.model) + 1);
  },
  getPreviousColumn: function getPreviousColumn(columnView) {
    return this.getColumnAt(this.collection.indexOf(columnView.model) - 1);
  },
  getNeighborContainer: function getNeighborContainer(container) {
    var parentView = container.parent.view,
        nextView = parentView.getNextColumn(container.view) || parentView.getPreviousColumn(container.view);

    if (!nextView) {
      return false;
    }

    return nextView.getContainer();
  },
  setStructure: function setStructure(structure) {
    var shouldAdjustColumns = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
    var parsedStructure = elementor.presetsFactory.getParsedStructure(structure);

    if (+parsedStructure.columnsCount !== this.collection.length) {
      throw new TypeError('The provided structure doesn\'t match the columns count.');
    }

    $e.run('document/elements/settings', {
      container: this.getContainer(),
      settings: {
        structure: structure
      },
      options: {
        external: true
      }
    });

    if (shouldAdjustColumns) {
      this.adjustColumns();
    }
  },
  adjustColumns: function adjustColumns() {
    var preset = elementor.presetsFactory.getPresetByStructure(this.getStructure());
    this.children.each(function (columnView, index) {
      var container = columnView.getContainer();
      $e.run('document/elements/settings', {
        container: container,
        settings: {
          _column_size: preset.preset[index],
          _inline_size: null
        }
      });
    });
  },
  resetLayout: function resetLayout() {
    var shouldAdjustColumns = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
    this.setStructure(this.getDefaultStructure(), shouldAdjustColumns);
  },
  resetColumnsCustomSize: function resetColumnsCustomSize() {
    this.children.each(function (columnView) {
      $e.run('document/elements/settings', {
        container: columnView.getContainer(),
        settings: {
          _inline_size: null
        },
        options: {
          external: true
        }
      });
    });
  },
  isCollectionFilled: function isCollectionFilled() {
    return DEFAULT_MAX_COLUMNS <= this.collection.length;
  },
  showChildrenPercentsTooltip: function showChildrenPercentsTooltip(columnView, nextColumnView) {
    columnView.ui.percentsTooltip.show();
    columnView.ui.percentsTooltip.attr('data-side', elementorCommon.config.isRTL ? 'right' : 'left');
    nextColumnView.ui.percentsTooltip.show();
    nextColumnView.ui.percentsTooltip.attr('data-side', elementorCommon.config.isRTL ? 'left' : 'right');
  },
  hideChildrenPercentsTooltip: function hideChildrenPercentsTooltip(columnView, nextColumnView) {
    columnView.ui.percentsTooltip.hide();
    nextColumnView.ui.percentsTooltip.hide();
  },
  destroyAddSectionView: function destroyAddSectionView() {
    if (this.addSectionView && !this.addSectionView.isDestroyed) {
      this.addSectionView.destroy();
    }
  },
  onRender: function onRender() {
    BaseElementView.prototype.onRender.apply(this, arguments);
    this.toggleSectionIsFull();
  },
  onAddButtonClick: function onAddButtonClick() {
    if (this.addSectionView && !this.addSectionView.isDestroyed) {
      this.addSectionView.fadeToDeath();
      return;
    }

    var addSectionView = new _inline.default({
      at: this.model.collection.indexOf(this.model)
    });
    addSectionView.render();
    this.$el.before(addSectionView.$el);
    addSectionView.$el.hide(); // Delaying the slide down for slow-render browsers (such as FF)

    setTimeout(function () {
      addSectionView.$el.slideDown(null, function () {
        // Remove inline style, for preview mode.
        jQuery(this).css('display', '');
      });
    });
    this.addSectionView = addSectionView;
  },
  onChildviewRequestResizeStart: function onChildviewRequestResizeStart(columnView) {
    var nextColumnView = this.getNextColumn(columnView);

    if (!nextColumnView) {
      return;
    }

    this.showChildrenPercentsTooltip(columnView, nextColumnView);
    var $iframes = columnView.$el.find('iframe').add(nextColumnView.$el.find('iframe'));
    elementor.helpers.disableElementEvents($iframes);
  },
  onChildviewRequestResizeStop: function onChildviewRequestResizeStop(columnView) {
    var nextColumnView = this.getNextColumn(columnView);

    if (!nextColumnView) {
      return;
    }

    this.hideChildrenPercentsTooltip(columnView, nextColumnView);
    var $iframes = columnView.$el.find('iframe').add(nextColumnView.$el.find('iframe'));
    elementor.helpers.enableElementEvents($iframes);
  },
  onChildviewRequestResize: function onChildviewRequestResize(columnView, ui) {
    ui.element.css({
      width: '',
      left: 'initial' // Fix for RTL resizing

    });
    $e.run('document/elements/settings', {
      container: columnView.getContainer(),
      settings: {
        _inline_size: this.getColumnPercentSize(ui.element, ui.size.width)
      }
    });
  },
  onDestroy: function onDestroy() {
    BaseElementView.prototype.onDestroy.apply(this, arguments);
    this.destroyAddSectionView();
  }
});
module.exports = SectionView;
module.exports.DEFAULT_INNER_SECTION_COLUMNS = DEFAULT_INNER_SECTION_COLUMNS;
module.exports.DEFAULT_MIN_COLUMN_SIZE = DEFAULT_MIN_COLUMN_SIZE;
module.exports.DEFAULT_MAX_COLUMNS = DEFAULT_MAX_COLUMNS;

/***/ }),

/***/ "../assets/dev/js/editor/elements/views/widget.js":
/*!********************************************************!*\
  !*** ../assets/dev/js/editor/elements/views/widget.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var sprintf = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["sprintf"];
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

var _widgetDraggable = _interopRequireDefault(__webpack_require__(/*! ./behaviors/widget-draggable */ "../assets/dev/js/editor/elements/views/behaviors/widget-draggable.js"));

var _widgetResizeable = _interopRequireDefault(__webpack_require__(/*! ./behaviors/widget-resizeable */ "../assets/dev/js/editor/elements/views/behaviors/widget-resizeable.js"));

var BaseElementView = __webpack_require__(/*! elementor-elements/views/base */ "../assets/dev/js/editor/elements/views/base.js"),
    WidgetView;

WidgetView = BaseElementView.extend({
  _templateType: null,
  toggleEditTools: true,
  getTemplate: function getTemplate() {
    var editModel = this.getEditModel();

    if ('remote' !== this.getTemplateType()) {
      return Marionette.TemplateCache.get('#tmpl-elementor-' + editModel.get('widgetType') + '-content');
    }

    return _.template('');
  },
  className: function className() {
    var baseClasses = BaseElementView.prototype.className.apply(this, arguments);
    return baseClasses + ' elementor-widget ' + elementor.getElementData(this.getEditModel()).html_wrapper_class;
  },
  events: function events() {
    var events = BaseElementView.prototype.events.apply(this, arguments);
    events.click = 'onClickEdit';
    return events;
  },
  behaviors: function behaviors() {
    var behaviors = BaseElementView.prototype.behaviors.apply(this, arguments);

    _.extend(behaviors, {
      InlineEditing: {
        behaviorClass: __webpack_require__(/*! elementor-behaviors/inline-editing */ "../assets/dev/js/editor/elements/views/behaviors/inline-editing.js"),
        inlineEditingClass: 'elementor-inline-editing'
      },
      Draggable: {
        behaviorClass: _widgetDraggable.default
      },
      Resizable: {
        behaviorClass: _widgetResizeable.default
      }
    });

    return elementor.hooks.applyFilters('elements/widget/behaviors', behaviors, this);
  },
  getEditButtons: function getEditButtons() {
    var elementData = elementor.getElementData(this.model),
        editTools = {};
    editTools.edit = {
      /* translators: %s: Element name. */
      title: sprintf(__('Edit %s', 'elementor'), elementData.title),
      icon: 'edit'
    };

    if (elementor.getPreferences('edit_buttons')) {
      editTools.duplicate = {
        /* translators: %s: Element name. */
        title: sprintf(__('Duplicate %s', 'elementor'), elementData.title),
        icon: 'clone'
      };
      editTools.remove = {
        /* translators: %s: Element name. */
        title: sprintf(__('Delete %s', 'elementor'), elementData.title),
        icon: 'close'
      };
    }

    return editTools;
  },
  initialize: function initialize() {
    var _this = this;

    BaseElementView.prototype.initialize.apply(this, arguments);
    var editModel = this.getEditModel();
    editModel.on({
      'before:remote:render': this.onModelBeforeRemoteRender.bind(this),
      'remote:render': this.onModelRemoteRender.bind(this),
      'settings:loaded': function settingsLoaded() {
        return setTimeout(_this.render.bind(_this));
      }
    });

    if ('remote' === this.getTemplateType() && !this.getEditModel().getHtmlCache()) {
      editModel.renderRemoteServer();
    }

    var onRenderMethod = this.onRender;
    this.render = _.throttle(this.render, 300);

    this.onRender = function () {
      _.defer(onRenderMethod.bind(this));
    };
  },
  getContextMenuGroups: function getContextMenuGroups() {
    var _this2 = this;

    var groups = BaseElementView.prototype.getContextMenuGroups.apply(this, arguments),
        transferGroupIndex = groups.indexOf(_.findWhere(groups, {
      name: 'clipboard'
    }));
    groups.splice(transferGroupIndex + 1, 0, {
      name: 'save',
      actions: [{
        name: 'save',
        title: __('Save as a Global', 'elementor'),
        shortcut: jQuery('<i>', {
          class: 'eicon-pro-icon'
        }),
        isEnabled: function isEnabled() {
          return 'global' !== _this2.options.model.get('widgetType');
        }
      }]
    });
    return groups;
  },
  render: function render() {
    if (this.model.isRemoteRequestActive()) {
      this.handleEmptyWidget();
      this.$el.addClass('elementor-element');
      return;
    }

    if (elementorCommonConfig.isTesting && this.isDestroyed) {
      return;
    }

    Marionette.CompositeView.prototype.render.apply(this, arguments);
  },
  handleEmptyWidget: function handleEmptyWidget() {
    this.$el.addClass('elementor-widget-empty').append('<i class="elementor-widget-empty-icon ' + this.getEditModel().getIcon() + '"></i>');
  },
  getTemplateType: function getTemplateType() {
    if (null === this._templateType) {
      var editModel = this.getEditModel(),
          $template = jQuery('#tmpl-elementor-' + editModel.get('widgetType') + '-content');
      this._templateType = $template.length ? 'js' : 'remote';
    }

    return this._templateType;
  },
  getHTMLContent: function getHTMLContent(html) {
    var htmlCache = this.getEditModel().getHtmlCache();
    return htmlCache || html;
  },
  attachElContent: function attachElContent(html) {
    var _this3 = this;

    _.defer(function () {
      elementorFrontend.elements.window.jQuery(_this3.el).empty().append(_this3.getHandlesOverlay(), _this3.getHTMLContent(html));

      _this3.bindUIElements(); // Build again the UI elements since the content attached just now

    });

    return this;
  },
  addInlineEditingAttributes: function addInlineEditingAttributes(key, toolbar) {
    this.addRenderAttribute(key, {
      class: 'elementor-inline-editing',
      'data-elementor-setting-key': key
    });

    if (toolbar) {
      this.addRenderAttribute(key, {
        'data-elementor-inline-editing-toolbar': toolbar
      });
    }
  },
  getRepeaterSettingKey: function getRepeaterSettingKey(settingKey, repeaterKey, repeaterItemIndex) {
    return [repeaterKey, repeaterItemIndex, settingKey].join('.');
  },
  onModelBeforeRemoteRender: function onModelBeforeRemoteRender() {
    this.$el.addClass('elementor-loading');
  },
  onBeforeDestroy: function onBeforeDestroy() {
    // Remove old style from the DOM.
    elementor.$previewContents.find('#elementor-style-' + this.model.get('id')).remove();
  },
  onModelRemoteRender: function onModelRemoteRender() {
    if (this.isDestroyed) {
      return;
    }

    this.$el.removeClass('elementor-loading'); // If container document has been changed during the remote request, don't render.

    if (this.getContainer().document.id !== elementor.documents.getCurrent().id) {
      return;
    }

    this.render();
  },
  onRender: function onRender() {
    var self = this;
    BaseElementView.prototype.onRender.apply(self, arguments);
    var editModel = self.getEditModel(),
        skinType = editModel.getSetting('_skin') || 'default';
    self.$el.attr('data-widget_type', editModel.get('widgetType') + '.' + skinType).removeClass('elementor-widget-empty').children('.elementor-widget-empty-icon').remove(); // TODO: Find a better way to detect if all the images have been loaded

    self.$el.imagesLoaded().always(function () {
      setTimeout(function () {
        if (!self.$el.children('.elementor-widget-container').outerHeight()) {
          self.handleEmptyWidget();
        }
      }, 200); // Is element empty?
    });
  },
  onClickEdit: function onClickEdit() {
    if (this.container.isEditable()) {
      this.model.trigger('request:edit');
    }
  }
});
module.exports = WidgetView;

/***/ }),

/***/ "../assets/dev/js/editor/regions/base.js":
/*!***********************************************!*\
  !*** ../assets/dev/js/editor/regions/base.js ***!
  \***********************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

module.exports = Marionette.Region.extend({
  storage: null,
  storageSizeKeys: null,
  constructor: function constructor() {
    Marionette.Region.prototype.constructor.apply(this, arguments);
    var savedStorage = elementorCommon.storage.get(this.getStorageKey());
    this.storage = savedStorage ? savedStorage : this.getDefaultStorage();
    this.storageSizeKeys = (0, _keys.default)(this.storage.size);
  },
  saveStorage: function saveStorage(key, value) {
    this.storage[key] = value;
    elementorCommon.storage.set(this.getStorageKey(), this.storage);
  },
  saveSize: function saveSize(size) {
    if (!size) {
      size = elementor.helpers.getElementInlineStyle(this.$el, this.storageSizeKeys);
    }

    this.saveStorage('size', size);
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/regions/navigator/commands/close.js":
/*!*******************************************************************!*\
  !*** ../assets/dev/js/editor/regions/navigator/commands/close.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Close = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Close = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Close, _CommandBase);

  var _super = (0, _createSuper2.default)(Close);

  function Close() {
    (0, _classCallCheck2.default)(this, Close);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Close, [{
    key: "apply",
    value: function apply() {
      return this.component.close();
    }
  }]);
  return Close;
}(_commandBase.default);

exports.Close = Close;
var _default = Close;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/regions/navigator/commands/index.js":
/*!*******************************************************************!*\
  !*** ../assets/dev/js/editor/regions/navigator/commands/index.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "Close", {
  enumerable: true,
  get: function get() {
    return _close.Close;
  }
});

_Object$defineProperty(exports, "Open", {
  enumerable: true,
  get: function get() {
    return _open.Open;
  }
});

_Object$defineProperty(exports, "Toggle", {
  enumerable: true,
  get: function get() {
    return _toggle.Toggle;
  }
});

var _close = __webpack_require__(/*! ./close */ "../assets/dev/js/editor/regions/navigator/commands/close.js");

var _open = __webpack_require__(/*! ./open */ "../assets/dev/js/editor/regions/navigator/commands/open.js");

var _toggle = __webpack_require__(/*! ./toggle */ "../assets/dev/js/editor/regions/navigator/commands/toggle.js");

/***/ }),

/***/ "../assets/dev/js/editor/regions/navigator/commands/open.js":
/*!******************************************************************!*\
  !*** ../assets/dev/js/editor/regions/navigator/commands/open.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Open = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Open = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Open, _CommandBase);

  var _super = (0, _createSuper2.default)(Open);

  function Open() {
    (0, _classCallCheck2.default)(this, Open);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Open, [{
    key: "apply",
    value: function apply() {
      $e.route(this.component.getNamespace());
    }
  }]);
  return Open;
}(_commandBase.default);

exports.Open = Open;
var _default = Open;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/regions/navigator/commands/toggle.js":
/*!********************************************************************!*\
  !*** ../assets/dev/js/editor/regions/navigator/commands/toggle.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Toggle = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Toggle = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Toggle, _CommandBase);

  var _super = (0, _createSuper2.default)(Toggle);

  function Toggle() {
    (0, _classCallCheck2.default)(this, Toggle);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Toggle, [{
    key: "apply",
    value: function apply() {
      if (this.component.isOpen) {
        $e.run('navigator/close');
      } else {
        $e.run('navigator/open');
      }
    }
  }]);
  return Toggle;
}(_commandBase.default);

exports.Toggle = Toggle;
var _default = Toggle;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/regions/navigator/component.js":
/*!**************************************************************!*\
  !*** ../assets/dev/js/editor/regions/navigator/component.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _componentBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-base */ "../core/common/assets/js/api/modules/component-base.js"));

var commands = _interopRequireWildcard(__webpack_require__(/*! ./commands/ */ "../assets/dev/js/editor/regions/navigator/commands/index.js"));

var Component = /*#__PURE__*/function (_ComponentBase) {
  (0, _inherits2.default)(Component, _ComponentBase);

  var _super = (0, _createSuper2.default)(Component);

  function Component() {
    (0, _classCallCheck2.default)(this, Component);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Component, [{
    key: "getNamespace",
    value: function getNamespace() {
      return 'navigator';
    }
  }, {
    key: "defaultRoutes",
    value: function defaultRoutes() {
      return {
        '': function _() {}
      };
    }
  }, {
    key: "defaultCommands",
    value: function defaultCommands() {
      return this.importCommands(commands);
    }
  }, {
    key: "defaultShortcuts",
    value: function defaultShortcuts() {
      return {
        toggle: {
          keys: 'ctrl+i',
          dependency: function dependency() {
            return elementor.getPreviewContainer().isEditable();
          }
        }
      };
    }
  }, {
    key: "open",
    value: function open(args) {
      var _args$model = args.model,
          model = _args$model === void 0 ? false : _args$model;
      this.manager.open(model);
      return true;
    }
  }, {
    key: "close",
    value: function close(silent) {
      if (!(0, _get2.default)((0, _getPrototypeOf2.default)(Component.prototype), "close", this).call(this)) {
        return false;
      }

      this.manager.close(silent);
      return true;
    }
  }]);
  return Component;
}(_componentBase.default);

exports.default = Component;

/***/ }),

/***/ "../assets/dev/js/editor/regions/navigator/element-empty.js":
/*!******************************************************************!*\
  !*** ../assets/dev/js/editor/regions/navigator/element-empty.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _default = /*#__PURE__*/function (_Marionette$ItemView) {
  (0, _inherits2.default)(_default, _Marionette$ItemView);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "getTemplate",
    value: function getTemplate() {
      return '#tmpl-elementor-navigator__elements--empty';
    }
  }, {
    key: "className",
    value: function className() {
      return 'elementor-empty-view';
    }
  }, {
    key: "onRendr",
    value: function onRendr() {
      this.$el.css('padding-' + (elementorCommon.config.isRTL ? 'right' : 'left'), this.getOption('indent'));
    }
  }]);
  return _default;
}(Marionette.ItemView);

exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/regions/navigator/element.js":
/*!************************************************************!*\
  !*** ../assets/dev/js/editor/regions/navigator/element.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _elementEmpty = _interopRequireDefault(__webpack_require__(/*! ./element-empty */ "../assets/dev/js/editor/regions/navigator/element-empty.js"));

var _rootEmpty = _interopRequireDefault(__webpack_require__(/*! ./root-empty */ "../assets/dev/js/editor/regions/navigator/root-empty.js"));

var _default = /*#__PURE__*/function (_Marionette$Composite) {
  (0, _inherits2.default)(_default, _Marionette$Composite);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "getTemplate",
    value: function getTemplate() {
      return '#tmpl-elementor-navigator__elements';
    }
  }, {
    key: "ui",
    value: function ui() {
      return {
        item: '> .elementor-navigator__item',
        title: '> .elementor-navigator__item .elementor-navigator__element__title__text',
        toggle: '> .elementor-navigator__item > .elementor-navigator__element__toggle',
        toggleList: '> .elementor-navigator__item > .elementor-navigator__element__list-toggle',
        indicators: '> .elementor-navigator__item > .elementor-navigator__element__indicators',
        indicator: '> .elementor-navigator__item > .elementor-navigator__element__indicators > .elementor-navigator__element__indicator',
        elements: '> .elementor-navigator__elements'
      };
    }
  }, {
    key: "events",
    value: function events() {
      return {
        contextmenu: 'onContextMenu',
        'click @ui.item': 'onItemClick',
        'click @ui.toggle': 'onToggleClick',
        'click @ui.toggleList': 'onToggleListClick',
        'click @ui.indicator': 'onIndicatorClick',
        'dblclick @ui.title': 'onTitleDoubleClick',
        'keydown @ui.title': 'onTitleKeyDown',
        'paste @ui.title': 'onTitlePaste',
        'sortstart @ui.elements': 'onSortStart',
        'sortover @ui.elements': 'onSortOver',
        'sortout @ui.elements': 'onSortOut',
        'sortstop @ui.elements': 'onSortStop',
        'sortupdate @ui.elements': 'onSortUpdate',
        'sortreceive @ui.elements': 'onSortReceive'
      };
    }
  }, {
    key: "getEmptyView",
    value: function getEmptyView() {
      if (this.isRoot()) {
        return _rootEmpty.default;
      }

      if (this.hasChildren()) {
        return _elementEmpty.default;
      }

      return null;
    }
  }, {
    key: "childViewOptions",
    value: function childViewOptions() {
      return {
        indent: this.getIndent() + 10
      };
    }
  }, {
    key: "className",
    value: function className() {
      var elType = this.model.get('elType');
      var classes = 'elementor-navigator__element';

      if (elType) {
        classes += ' elementor-navigator__element-' + elType;
      }

      if (this.hasChildren()) {
        classes += ' elementor-navigator__element--has-children';
      }

      return classes;
    }
  }, {
    key: "attributes",
    value: function attributes() {
      return {
        'data-id': this.model.id,
        'data-model-cid': this.model.cid
      };
    }
  }, {
    key: "templateHelpers",
    value: function templateHelpers() {
      var helpers = {};

      if (!this.isRoot()) {
        helpers.title = this.model.getTitle();
        helpers.icon = 'section' === this.model.get('elType') ? '' : this.model.getIcon();
      }

      return helpers;
    }
  }, {
    key: "initialize",
    value: function initialize() {
      this.collection = this.model.get('elements');
      this.childViewContainer = '.elementor-navigator__elements';
      this.listenTo(this.model, 'request:edit', this.onEditRequest).listenTo(this.model, 'change', this.onModelChange).listenTo(this.model.get('settings'), 'change', this.onModelSettingsChange);
    }
  }, {
    key: "getIndent",
    value: function getIndent() {
      return this.getOption('indent') || 0;
    }
  }, {
    key: "isRoot",
    value: function isRoot() {
      return !this.model.get('elType');
    }
  }, {
    key: "hasChildren",
    value: function hasChildren() {
      return 'widget' !== this.model.get('elType');
    }
  }, {
    key: "toggleList",
    value: function toggleList(state, callback) {
      if (!this.hasChildren() || this.isRoot()) {
        return;
      }

      var isActive = this.ui.item.hasClass('elementor-active');

      if (isActive === state) {
        return;
      }

      this.ui.item.toggleClass('elementor-active', state);
      var slideMethod = 'slideToggle';

      if (undefined !== state) {
        slideMethod = 'slide' + (state ? 'Down' : 'Up');
      }

      this.ui.elements[slideMethod](300, callback);
    }
  }, {
    key: "toggleHiddenClass",
    value: function toggleHiddenClass() {
      this.$el.toggleClass('elementor-navigator__element--hidden', !!this.model.get('hidden'));
    }
  }, {
    key: "recursiveChildInvoke",
    value: function recursiveChildInvoke(method) {
      var _arguments = arguments,
          _this = this;

      for (var _len = arguments.length, restArgs = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
        restArgs[_key - 1] = arguments[_key];
      }

      this[method].apply(this, restArgs);
      this.children.each(function (child) {
        if (!(child instanceof _this.constructor)) {
          return;
        }

        child.recursiveChildInvoke.apply(child, _arguments);
      });
    }
  }, {
    key: "recursiveParentInvoke",
    value: function recursiveParentInvoke(method) {
      for (var _len2 = arguments.length, restArgs = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
        restArgs[_key2 - 1] = arguments[_key2];
      }

      if (!(this._parent instanceof this.constructor)) {
        return;
      }

      this._parent[method].apply(this._parent, restArgs);

      this._parent.recursiveParentInvoke.apply(this._parent, arguments);
    }
  }, {
    key: "recursiveChildAgreement",
    value: function recursiveChildAgreement(method) {
      for (var _len3 = arguments.length, restArgs = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {
        restArgs[_key3 - 1] = arguments[_key3];
      }

      if (!this[method].apply(this, restArgs)) {
        return false;
      }

      var hasAgreement = true;

      for (var _i = 0, _Object$values = (0, _values.default)(this.children._views); _i < _Object$values.length; _i++) {
        var child = _Object$values[_i];

        if (!(child instanceof this.constructor)) {
          continue;
        }

        if (!child.recursiveChildAgreement.apply(child, arguments)) {
          hasAgreement = false;
          break;
        }
      }

      return hasAgreement;
    }
  }, {
    key: "activateMouseInteraction",
    value: function activateMouseInteraction() {
      this.$el.on({
        mouseenter: this.onMouseEnter.bind(this),
        mouseleave: this.onMouseLeave.bind(this)
      });
    }
  }, {
    key: "deactivateMouseInteraction",
    value: function deactivateMouseInteraction() {
      this.$el.off('mouseenter mouseleave');
    }
  }, {
    key: "dragShouldBeIgnored",
    value: function dragShouldBeIgnored(draggedModel) {
      return !$e.components.get('document/elements').utils.isValidChild(draggedModel, this.model);
    }
  }, {
    key: "addEditingClass",
    value: function addEditingClass() {
      this.ui.item.addClass('elementor-editing');
    }
  }, {
    key: "removeEditingClass",
    value: function removeEditingClass() {
      this.ui.item.removeClass('elementor-editing');
    }
  }, {
    key: "enterTitleEditing",
    value: function enterTitleEditing() {
      this.ui.title.attr('contenteditable', true).focus();
      document.execCommand('selectAll');
      elementor.addBackgroundClickListener('navigator', {
        ignore: this.ui.title,
        callback: this.exitTitleEditing.bind(this)
      });
    }
  }, {
    key: "exitTitleEditing",
    value: function exitTitleEditing() {
      this.ui.title.attr('contenteditable', false);
      var settingsModel = this.model.get('settings'),
          oldTitle = settingsModel.get('_title'),
          newTitle = this.ui.title.text().trim(); // When there isn't an old title and a new title, allow backbone to recognize the `set` as a change

      if (!oldTitle) {
        settingsModel.unset('_title', {
          silent: true
        });
      }

      settingsModel.set('_title', newTitle); // TODO: Remove - After merge pull request #13605.

      $e.internal('document/save/set-is-modified', {
        status: true
      });
      elementor.removeBackgroundClickListener('navigator');
    }
  }, {
    key: "activateSortable",
    value: function activateSortable() {
      if (!elementor.userCan('design')) {
        return;
      }

      this.ui.elements.sortable({
        items: '> .elementor-navigator__element',
        placeholder: 'ui-sortable-placeholder',
        axis: 'y',
        forcePlaceholderSize: true,
        connectWith: '.elementor-navigator__element-' + this.model.get('elType') + ' > .elementor-navigator__elements',
        cancel: '[contenteditable="true"]'
      });
    }
  }, {
    key: "renderIndicators",
    value: function renderIndicators() {
      var _this2 = this;

      var settings = this.model.get('settings').attributes;
      this.ui.indicators.empty();
      jQuery.each(elementor.navigator.indicators, function (indicatorName, indicatorSettings) {
        var isShouldBeIndicated = indicatorSettings.settingKeys.some(function (key) {
          return settings[key];
        });

        if (!isShouldBeIndicated) {
          return;
        }

        var $indicator = jQuery('<div>', {
          class: 'elementor-navigator__element__indicator',
          title: indicatorSettings.title
        }).attr('data-section', indicatorSettings.section).html("<i class=\"eicon-".concat(indicatorSettings.icon, "\"></i>"));

        _this2.ui.indicators.append($indicator); // Added delay of 500ms because the indicators bar has a CSS transition attribute of .5s


        $indicator.tipsy({
          delayIn: 300,
          gravity: 's'
        });
      });
    }
  }, {
    key: "onRender",
    value: function onRender() {
      this.activateSortable();

      if (this.isRoot()) {
        return;
      }

      this.ui.item.css('padding-' + (elementorCommon.config.isRTL ? 'right' : 'left'), this.getIndent());
      this.toggleHiddenClass();
      this.renderIndicators();
    }
  }, {
    key: "onModelChange",
    value: function onModelChange() {
      if (undefined !== this.model.changed.hidden) {
        this.toggleHiddenClass();
      }
    }
  }, {
    key: "onModelSettingsChange",
    value: function onModelSettingsChange(settingsModel) {
      var _this3 = this;

      if (undefined !== settingsModel.changed._title) {
        this.ui.title.text(this.model.getTitle());
      }

      jQuery.each(elementor.navigator.indicators, function (indicatorName, indicatorSettings) {
        if ((0, _keys.default)(settingsModel.changed).filter(function (key) {
          return indicatorSettings.settingKeys.includes(key);
        }).length) {
          _this3.renderIndicators();

          return false;
        }
      });
    }
  }, {
    key: "onItemClick",
    value: function onItemClick() {
      this.model.trigger('request:edit', {
        scrollIntoView: true
      });
    }
  }, {
    key: "onToggleClick",
    value: function onToggleClick(event) {
      event.stopPropagation();
      this.model.trigger('request:toggleVisibility');
    }
  }, {
    key: "onTitleDoubleClick",
    value: function onTitleDoubleClick() {
      this.enterTitleEditing();
    }
  }, {
    key: "onTitleKeyDown",
    value: function onTitleKeyDown(event) {
      var ENTER_KEY = 13;

      if (ENTER_KEY === event.which) {
        event.preventDefault();
        this.exitTitleEditing();
      }
    }
  }, {
    key: "onTitlePaste",
    value: function onTitlePaste(event) {
      event.preventDefault();
      document.execCommand('insertHTML', false, event.originalEvent.clipboardData.getData('text/plain'));
    }
  }, {
    key: "onToggleListClick",
    value: function onToggleListClick(event) {
      event.stopPropagation();
      this.toggleList();
    }
  }, {
    key: "onSortStart",
    value: function onSortStart(event, ui) {
      this.model.trigger('request:sort:start', event, ui);
      jQuery(ui.item).children('.elementor-navigator__item').trigger('click');
      elementor.navigator.getLayout().activateElementsMouseInteraction();
    }
  }, {
    key: "onSortStop",
    value: function onSortStop() {
      elementor.navigator.getLayout().deactivateElementsMouseInteraction();
    }
  }, {
    key: "onSortOver",
    value: function onSortOver(event) {
      event.stopPropagation();
      this.$el.addClass('elementor-dragging-on-child');
    }
  }, {
    key: "onSortOut",
    value: function onSortOut(event) {
      event.stopPropagation();
      this.$el.removeClass('elementor-dragging-on-child');
    }
  }, {
    key: "onSortUpdate",
    value: function onSortUpdate(event, ui) {
      event.stopPropagation();

      if (!this.ui.elements.is(ui.item.parent())) {
        return;
      }

      this.model.trigger('request:sort:update', ui);
    }
  }, {
    key: "onSortReceive",
    value: function onSortReceive(event, ui) {
      this.model.trigger('request:sort:receive', event, ui);
    }
  }, {
    key: "onMouseEnter",
    value: function onMouseEnter(event) {
      var _this4 = this;

      event.stopPropagation();
      var dragShouldBeIgnored = this.recursiveChildAgreement('dragShouldBeIgnored', elementor.channels.data.request('dragging:model'));

      if (dragShouldBeIgnored) {
        return;
      }

      this.autoExpandTimeout = setTimeout(function () {
        _this4.toggleList(true, function () {
          _this4.ui.elements.sortable('refreshPositions');
        });
      }, 500);
    }
  }, {
    key: "onMouseLeave",
    value: function onMouseLeave(event) {
      event.stopPropagation();
      clearTimeout(this.autoExpandTimeout);
    }
  }, {
    key: "onContextMenu",
    value: function onContextMenu(event) {
      this.model.trigger('request:contextmenu', event);
    }
  }, {
    key: "onEditRequest",
    value: function onEditRequest() {
      this.recursiveParentInvoke('toggleList', true);
      elementor.navigator.getLayout().elements.currentView.recursiveChildInvoke('removeEditingClass');
      this.addEditingClass();
      elementor.helpers.scrollToView(this.$el, 400, elementor.navigator.getLayout().elements.$el);
    }
  }, {
    key: "onIndicatorClick",
    value: function onIndicatorClick(event) {
      var section = event.currentTarget.dataset.section;
      setTimeout(function () {
        var editor = elementor.getPanelView().currentPageView,
            tab = editor.getControlModel(section).get('tab');
        editor.activateSection(section);
        editor.activateTab(tab);
        editor.render();
      });
    }
  }]);
  return _default;
}(Marionette.CompositeView);

exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/regions/navigator/layout.js":
/*!***********************************************************!*\
  !*** ../assets/dev/js/editor/regions/navigator/layout.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _element = _interopRequireDefault(__webpack_require__(/*! ./element */ "../assets/dev/js/editor/regions/navigator/element.js"));

var _default = /*#__PURE__*/function (_Marionette$LayoutVie) {
  (0, _inherits2.default)(_default, _Marionette$LayoutVie);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "getTemplate",
    value: function getTemplate() {
      return '#tmpl-elementor-navigator';
    }
  }, {
    key: "id",
    value: function id() {
      return 'elementor-navigator__inner';
    }
  }, {
    key: "ui",
    value: function ui() {
      return {
        toggleAll: '#elementor-navigator__toggle-all',
        close: '#elementor-navigator__close'
      };
    }
  }, {
    key: "events",
    value: function events() {
      return {
        'click @ui.toggleAll': 'toggleAll',
        'click @ui.close': 'onCloseClick'
      };
    }
  }, {
    key: "regions",
    value: function regions() {
      return {
        elements: '#elementor-navigator__elements'
      };
    }
  }, {
    key: "toggleAll",
    value: function toggleAll() {
      var state = 'expand' === this.ui.toggleAll.data('elementor-action'),
          classes = ['eicon-collapse', 'eicon-expand'];
      this.ui.toggleAll.data('elementor-action', state ? 'collapse' : 'expand').removeClass(classes[+state]).addClass(classes[+!state]);
      this.elements.currentView.recursiveChildInvoke('toggleList', state);
    }
  }, {
    key: "activateElementsMouseInteraction",
    value: function activateElementsMouseInteraction() {
      this.elements.currentView.recursiveChildInvoke('activateMouseInteraction');
    }
  }, {
    key: "deactivateElementsMouseInteraction",
    value: function deactivateElementsMouseInteraction() {
      this.elements.currentView.recursiveChildInvoke('deactivateMouseInteraction');
    }
  }, {
    key: "onShow",
    value: function onShow() {
      this.elements.show(new _element.default({
        model: elementor.elementsModel
      }));
    }
  }, {
    key: "onCloseClick",
    value: function onCloseClick() {
      $e.components.get('navigator').close();
    }
  }]);
  return _default;
}(Marionette.LayoutView);

exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/regions/navigator/navigator.js":
/*!**************************************************************!*\
  !*** ../assets/dev/js/editor/regions/navigator/navigator.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _component = _interopRequireDefault(__webpack_require__(/*! ./component */ "../assets/dev/js/editor/regions/navigator/component.js"));

var _layout = _interopRequireDefault(__webpack_require__(/*! ./layout */ "../assets/dev/js/editor/regions/navigator/layout.js"));

var BaseRegion = __webpack_require__(/*! elementor-regions/base */ "../assets/dev/js/editor/regions/base.js");

var _default = /*#__PURE__*/function (_BaseRegion) {
  (0, _inherits2.default)(_default, _BaseRegion);

  var _super = (0, _createSuper2.default)(_default);

  function _default(options) {
    var _this;

    (0, _classCallCheck2.default)(this, _default);
    _this = _super.call(this, options);
    _this.component = $e.components.register(new _component.default({
      manager: (0, _assertThisInitialized2.default)(_this)
    }));
    _this.isDocked = false;

    _this.setSize();

    _this.indicators = {
      customPosition: {
        title: __('Custom Positioning', 'elementor'),
        icon: 'cursor-move',
        settingKeys: ['_position', '_element_width'],
        section: '_section_position'
      }
    };
    _this.ensurePosition = _this.ensurePosition.bind((0, _assertThisInitialized2.default)(_this));

    _this.listenTo(elementor.channels.dataEditMode, 'switch', _this.onEditModeSwitched); // TODO: Move to hook on 'editor/documents/load'.


    elementor.on('document:loaded', _this.onDocumentLoaded.bind((0, _assertThisInitialized2.default)(_this)));
    elementor.on('document:unloaded', _this.onDocumentUnloaded.bind((0, _assertThisInitialized2.default)(_this)));
    return _this;
  }

  (0, _createClass2.default)(_default, [{
    key: "getStorageKey",
    value: function getStorageKey() {
      return 'navigator';
    }
  }, {
    key: "getDefaultStorage",
    value: function getDefaultStorage() {
      return {
        visible: false,
        size: {
          width: '',
          height: '',
          top: '',
          bottom: '',
          right: '',
          left: ''
        }
      };
    }
  }, {
    key: "getLayout",
    value: function getLayout() {
      return this.currentView;
    }
  }, {
    key: "getDraggableOptions",
    value: function getDraggableOptions() {
      return {
        iframeFix: true,
        handle: '#elementor-navigator__header',
        drag: this.onDrag.bind(this),
        stop: this.onDragStop.bind(this)
      };
    }
  }, {
    key: "getResizableOptions",
    value: function getResizableOptions() {
      var _this2 = this;

      return {
        handles: 'all',
        containment: 'document',
        minWidth: 150,
        maxWidth: 500,
        minHeight: 240,
        start: function start() {
          elementor.$previewWrapper.addClass('ui-resizable-resizing');
        },
        stop: function stop() {
          elementor.$previewWrapper.removeClass('ui-resizable-resizing');

          if (_this2.isDocked) {
            _this2.storage.size.width = elementor.helpers.getElementInlineStyle(_this2.$el, ['width']).width;
            elementorCommon.storage.set('navigator', _this2.storage);
          } else {
            _this2.saveSize();
          }
        },
        resize: function resize(event, ui) {
          _this2.setSize(ui.size.width + 'px');
        }
      };
    }
  }, {
    key: "initLayout",
    value: function initLayout() {
      this.show(new _layout.default());
      this.$el.draggable(this.getDraggableOptions());
      this.$el.resizable(this.getResizableOptions());
    }
  }, {
    key: "open",
    value: function open(model) {
      this.$el.show();
      this.setSize();

      if (this.storage.docked) {
        this.dock();
      }

      if (model) {
        model.trigger('request:edit');
      }

      this.saveStorage('visible', true);
      this.ensurePosition();
      elementorCommon.elements.$window.on('resize', this.ensurePosition);
    }
  }, {
    key: "close",
    value: function close(silent) {
      this.$el.hide();

      if (this.isDocked) {
        this.undock(true);
      }

      if (!silent) {
        this.saveStorage('visible', false);
      }

      if (this.$el.resizable('instance')) {
        this.$el.resizable('destroy');
      }

      elementorCommon.elements.$window.off('resize', this.ensurePosition);
    }
  }, {
    key: "isOpen",
    value: function isOpen() {
      return this.$el.is(':visible');
    }
  }, {
    key: "dock",
    value: function dock() {
      elementorCommon.elements.$body.addClass('elementor-navigator-docked');
      this.setSize();
      var resizableOptions = this.getResizableOptions();
      this.$el.css({
        height: '',
        top: '',
        bottom: '',
        left: '',
        right: ''
      });

      if (this.$el.resizable('instance')) {
        this.$el.resizable('destroy');
      }

      resizableOptions.handles = elementorCommon.config.isRTL ? 'e' : 'w';
      this.$el.resizable(resizableOptions);
      this.isDocked = true;
      this.saveStorage('docked', true);
    }
  }, {
    key: "undock",
    value: function undock(silent) {
      elementorCommon.elements.$body.removeClass('elementor-navigator-docked');
      this.setSize();
      elementor.$previewWrapper.css(elementorCommon.config.isRTL ? 'left' : 'right', '');

      if (this.$el.resizable('instance')) {
        this.$el.resizable('destroy');
        this.$el.resizable(this.getResizableOptions());
      }

      this.isDocked = false;

      if (!silent) {
        this.saveStorage('docked', false);
      }
    }
    /**
     * Set the navigator size to a specific value or default to the storage-saved value.
     *
     * @param {String} size A specific new size.
     */

  }, {
    key: "setSize",
    value: function setSize() {
      var size = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;

      if (size) {
        this.storage.size.width = size;
      } else {
        this.storage.size.width = this.storage.size.width || elementorCommon.elements.$body.css('--e-editor-navigator-width');
      } // Set the navigator size using a CSS variable, and remove the inline CSS that was set by jQuery Resizeable.


      elementorCommon.elements.$body.css('--e-editor-navigator-width', this.storage.size.width);
      this.$el.css('width', '');
    }
  }, {
    key: "ensurePosition",
    value: function ensurePosition() {
      if (this.isDocked) {
        return;
      }

      var offset = this.$el.offset();

      if (offset.left > innerWidth) {
        this.$el.css({
          left: '',
          right: ''
        });
      }

      if (offset.top > innerHeight) {
        this.$el.css({
          top: '',
          bottom: ''
        });
      }
    }
  }, {
    key: "onDrag",
    value: function onDrag(event, ui) {
      if (this.isDocked) {
        if (ui.position.left === ui.originalPosition.left) {
          if (ui.position.top !== ui.originalPosition.top) {
            return false;
          }
        } else {
          this.undock();
        }

        return;
      }

      if (0 > ui.position.top) {
        ui.position.top = 0;
      }

      var isOutOfLeft = 0 > ui.position.left,
          isOutOfRight = ui.position.left + this.el.offsetWidth > innerWidth;

      if (elementorCommon.config.isRTL) {
        if (isOutOfRight) {
          ui.position.left = innerWidth - this.el.offsetWidth;
        }
      } else if (isOutOfLeft) {
        ui.position.left = 0;
      }

      elementorCommon.elements.$body.toggleClass('elementor-navigator--dock-hint', elementorCommon.config.isRTL ? isOutOfLeft : isOutOfRight);
    }
  }, {
    key: "onDragStop",
    value: function onDragStop(event, ui) {
      if (this.isDocked) {
        return;
      }

      this.saveSize();
      var elementRight = ui.position.left + this.el.offsetWidth;

      if (0 > ui.position.left || elementRight > innerWidth) {
        this.dock();
      }

      elementorCommon.elements.$body.removeClass('elementor-navigator--dock-hint');
    }
  }, {
    key: "onEditModeSwitched",
    value: function onEditModeSwitched(activeMode) {
      // Determine when the navigator should be visible.
      var visibleModes = ['edit', 'picker'];

      if (visibleModes.includes(activeMode) && this.storage.visible) {
        this.open();
      } else {
        this.close(true);
      }
    }
  }, {
    key: "onDocumentLoaded",
    value: function onDocumentLoaded(document) {
      if (document.config.panel.has_elements) {
        this.initLayout();

        if (this.storage.visible) {
          $e.route('navigator');
        }
      }
    }
  }, {
    key: "onDocumentUnloaded",
    value: function onDocumentUnloaded() {
      if (this.component.isOpen) {
        this.component.close(true);
      }
    }
  }]);
  return _default;
}(BaseRegion);

exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/regions/navigator/root-empty.js":
/*!***************************************************************!*\
  !*** ../assets/dev/js/editor/regions/navigator/root-empty.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _default = /*#__PURE__*/function (_Marionette$ItemView) {
  (0, _inherits2.default)(_default, _Marionette$ItemView);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "getTemplate",
    value: function getTemplate() {
      return '#tmpl-elementor-navigator__root--empty';
    }
  }, {
    key: "className",
    value: function className() {
      return 'elementor-nerd-box';
    }
  }]);
  return _default;
}(Marionette.ItemView);

exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/commands/change-device-mode.js":
/*!****************************************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/commands/change-device-mode.js ***!
  \****************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.ChangeDeviceMode = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var ChangeDeviceMode = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(ChangeDeviceMode, _CommandBase);

  var _super = (0, _createSuper2.default)(ChangeDeviceMode);

  function ChangeDeviceMode() {
    (0, _classCallCheck2.default)(this, ChangeDeviceMode);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(ChangeDeviceMode, [{
    key: "apply",
    value: function apply() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      var devices = elementor.breakpoints.getActiveBreakpointsList({
        largeToSmall: true,
        withDesktop: true
      });
      var device = args.device;

      if (!device) {
        var currentDeviceMode = elementor.channels.deviceMode.request('currentMode');
        var modeIndex = devices.indexOf(currentDeviceMode);
        modeIndex++;

        if (modeIndex >= devices.length) {
          modeIndex = 0;
        }

        device = devices[modeIndex];
      }

      elementor.changeDeviceMode(device);
    }
  }]);
  return ChangeDeviceMode;
}(_commandBase.default);

exports.ChangeDeviceMode = ChangeDeviceMode;
var _default = ChangeDeviceMode;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/commands/close.js":
/*!***************************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/commands/close.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Close = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Close = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Close, _CommandBase);

  var _super = (0, _createSuper2.default)(Close);

  function Close() {
    (0, _classCallCheck2.default)(this, Close);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Close, [{
    key: "apply",
    value: function apply() {
      elementor.changeEditMode('preview');
    }
  }]);
  return Close;
}(_commandBase.default);

exports.Close = Close;
var _default = Close;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/commands/exit.js":
/*!**************************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/commands/exit.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Exit = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Exit = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Exit, _CommandBase);

  var _super = (0, _createSuper2.default)(Exit);

  function Exit() {
    (0, _classCallCheck2.default)(this, Exit);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Exit, [{
    key: "apply",
    value: function apply() {
      $e.route('panel/menu');
    }
  }]);
  return Exit;
}(_commandBase.default);

exports.Exit = Exit;
var _default = Exit;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/commands/index.js":
/*!***************************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/commands/index.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "ChangeDeviceMode", {
  enumerable: true,
  get: function get() {
    return _changeDeviceMode.ChangeDeviceMode;
  }
});

_Object$defineProperty(exports, "Close", {
  enumerable: true,
  get: function get() {
    return _close.Close;
  }
});

_Object$defineProperty(exports, "Exit", {
  enumerable: true,
  get: function get() {
    return _exit.Exit;
  }
});

_Object$defineProperty(exports, "Open", {
  enumerable: true,
  get: function get() {
    return _open.Open;
  }
});

_Object$defineProperty(exports, "Publish", {
  enumerable: true,
  get: function get() {
    return _publish.Publish;
  }
});

_Object$defineProperty(exports, "Save", {
  enumerable: true,
  get: function get() {
    return _save.Save;
  }
});

_Object$defineProperty(exports, "Toggle", {
  enumerable: true,
  get: function get() {
    return _toggle.Toggle;
  }
});

var _changeDeviceMode = __webpack_require__(/*! ./change-device-mode */ "../assets/dev/js/editor/regions/panel/commands/change-device-mode.js");

var _close = __webpack_require__(/*! ./close */ "../assets/dev/js/editor/regions/panel/commands/close.js");

var _exit = __webpack_require__(/*! ./exit */ "../assets/dev/js/editor/regions/panel/commands/exit.js");

var _open = __webpack_require__(/*! ./open */ "../assets/dev/js/editor/regions/panel/commands/open.js");

var _publish = __webpack_require__(/*! ./publish */ "../assets/dev/js/editor/regions/panel/commands/publish.js");

var _save = __webpack_require__(/*! ./save */ "../assets/dev/js/editor/regions/panel/commands/save.js");

var _toggle = __webpack_require__(/*! ./toggle */ "../assets/dev/js/editor/regions/panel/commands/toggle.js");

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/commands/internal/index.js":
/*!************************************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/commands/internal/index.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "OpenDefault", {
  enumerable: true,
  get: function get() {
    return _openDefault.OpenDefault;
  }
});

_Object$defineProperty(exports, "StateLoading", {
  enumerable: true,
  get: function get() {
    return _stateLoading.StateLoading;
  }
});

_Object$defineProperty(exports, "StateReady", {
  enumerable: true,
  get: function get() {
    return _stateReady.StateReady;
  }
});

var _openDefault = __webpack_require__(/*! ./open-default */ "../assets/dev/js/editor/regions/panel/commands/internal/open-default.js");

var _stateLoading = __webpack_require__(/*! ./state-loading */ "../assets/dev/js/editor/regions/panel/commands/internal/state-loading.js");

var _stateReady = __webpack_require__(/*! ./state-ready */ "../assets/dev/js/editor/regions/panel/commands/internal/state-ready.js");

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/commands/internal/open-default.js":
/*!*******************************************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/commands/internal/open-default.js ***!
  \*******************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.OpenDefault = void 0;

var _promise = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/promise */ "../node_modules/@babel/runtime-corejs2/core-js/promise.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandInternalBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-internal-base */ "../core/common/assets/js/api/modules/command-internal-base.js"));

var OpenDefault = /*#__PURE__*/function (_CommandInternalBase) {
  (0, _inherits2.default)(OpenDefault, _CommandInternalBase);

  var _super = (0, _createSuper2.default)(OpenDefault);

  function OpenDefault() {
    (0, _classCallCheck2.default)(this, OpenDefault);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(OpenDefault, [{
    key: "apply",
    value: function apply() {
      $e.route(elementor.documents.getCurrent().config.panel.default_route);
      return _promise.default.resolve();
    }
  }]);
  return OpenDefault;
}(_commandInternalBase.default);

exports.OpenDefault = OpenDefault;
var _default = OpenDefault;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/commands/internal/state-loading.js":
/*!********************************************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/commands/internal/state-loading.js ***!
  \********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.StateLoading = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandInternalBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-internal-base */ "../core/common/assets/js/api/modules/command-internal-base.js"));

var StateLoading = /*#__PURE__*/function (_CommandInternalBase) {
  (0, _inherits2.default)(StateLoading, _CommandInternalBase);

  var _super = (0, _createSuper2.default)(StateLoading);

  function StateLoading() {
    (0, _classCallCheck2.default)(this, StateLoading);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(StateLoading, [{
    key: "apply",
    value: function apply() {
      elementorCommon.elements.$body.addClass('elementor-panel-loading');
    }
  }]);
  return StateLoading;
}(_commandInternalBase.default);

exports.StateLoading = StateLoading;
var _default = StateLoading;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/commands/internal/state-ready.js":
/*!******************************************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/commands/internal/state-ready.js ***!
  \******************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.StateReady = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandInternalBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-internal-base */ "../core/common/assets/js/api/modules/command-internal-base.js"));

var StateReady = /*#__PURE__*/function (_CommandInternalBase) {
  (0, _inherits2.default)(StateReady, _CommandInternalBase);

  var _super = (0, _createSuper2.default)(StateReady);

  function StateReady() {
    (0, _classCallCheck2.default)(this, StateReady);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(StateReady, [{
    key: "apply",
    value: function apply() {
      elementorCommon.elements.$body.removeClass('elementor-panel-loading'); // Cannot be hook because not sure if it affects UI or data.

      if (!this.component.stateReadyOnce) {
        this.component.stateReadyOnce = true;
        $e.extras.hashCommands.runOnce();
      }
    }
  }]);
  return StateReady;
}(_commandInternalBase.default);

exports.StateReady = StateReady;
var _default = StateReady;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/commands/open.js":
/*!**************************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/commands/open.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Open = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Open = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Open, _CommandBase);

  var _super = (0, _createSuper2.default)(Open);

  function Open() {
    (0, _classCallCheck2.default)(this, Open);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Open, [{
    key: "apply",
    value: function apply() {
      elementor.changeEditMode('edit');
    }
  }]);
  return Open;
}(_commandBase.default);

exports.Open = Open;
var _default = Open;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/commands/publish.js":
/*!*****************************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/commands/publish.js ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Publish = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Publish = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Publish, _CommandBase);

  var _super = (0, _createSuper2.default)(Publish);

  function Publish() {
    (0, _classCallCheck2.default)(this, Publish);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Publish, [{
    key: "apply",
    value: function apply() {
      $e.run('document/save/publish');
    }
  }]);
  return Publish;
}(_commandBase.default);

exports.Publish = Publish;
var _default = Publish;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/commands/save.js":
/*!**************************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/commands/save.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Save = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Save = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Save, _CommandBase);

  var _super = (0, _createSuper2.default)(Save);

  function Save() {
    (0, _classCallCheck2.default)(this, Save);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Save, [{
    key: "apply",
    value: function apply() {
      $e.run('document/save/draft');
    }
  }]);
  return Save;
}(_commandBase.default);

exports.Save = Save;
var _default = Save;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/commands/toggle.js":
/*!****************************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/commands/toggle.js ***!
  \****************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Toggle = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Toggle = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Toggle, _CommandBase);

  var _super = (0, _createSuper2.default)(Toggle);

  function Toggle() {
    (0, _classCallCheck2.default)(this, Toggle);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Toggle, [{
    key: "apply",
    value: function apply() {
      elementor.getPanelView().modeSwitcher.currentView.toggleMode();
    }
  }]);
  return Toggle;
}(_commandBase.default);

exports.Toggle = Toggle;
var _default = Toggle;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/component.js":
/*!**********************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/component.js ***!
  \**********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _componentBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-base */ "../core/common/assets/js/api/modules/component-base.js"));

var commands = _interopRequireWildcard(__webpack_require__(/*! ./commands/ */ "../assets/dev/js/editor/regions/panel/commands/index.js"));

var commandsInternal = _interopRequireWildcard(__webpack_require__(/*! ./commands/internal/ */ "../assets/dev/js/editor/regions/panel/commands/internal/index.js"));

var Component = /*#__PURE__*/function (_ComponentBase) {
  (0, _inherits2.default)(Component, _ComponentBase);

  var _super = (0, _createSuper2.default)(Component);

  function Component() {
    var _this;

    (0, _classCallCheck2.default)(this, Component);

    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }

    _this = _super.call.apply(_super, [this].concat(args));
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "stateReadyOnce", false);
    return _this;
  }

  (0, _createClass2.default)(Component, [{
    key: "getNamespace",
    value: function getNamespace() {
      return 'panel';
    }
  }, {
    key: "defaultRoutes",
    value: function defaultRoutes() {
      var _this2 = this;

      return {
        menu: function menu() {
          return _this2.manager.setPage('menu');
        },
        'global-colors': function globalColors() {
          return _this2.manager.setPage('colorScheme');
        },
        'global-fonts': function globalFonts() {
          return _this2.manager.setPage('typographyScheme');
        },
        'editor-preferences': function editorPreferences() {
          return _this2.manager.setPage('editorPreferences_settings').activateTab('settings');
        }
      };
    }
  }, {
    key: "defaultCommandsInternal",
    value: function defaultCommandsInternal() {
      return this.importCommands(commandsInternal);
    }
  }, {
    key: "defaultCommands",
    value: function defaultCommands() {
      return this.importCommands(commands);
    }
  }, {
    key: "defaultShortcuts",
    value: function defaultShortcuts() {
      return {
        toggle: {
          keys: 'ctrl+p'
        },
        save: {
          keys: 'ctrl+s'
        },
        exit: {
          keys: 'esc',
          // TODO: replace dependency with scopes.
          dependency: function dependency() {
            return !jQuery('.dialog-widget:visible').length;
          },
          scopes: ['panel', 'preview']
        },
        'change-device-mode': {
          keys: 'ctrl+shift+m'
        }
      };
    }
  }]);
  return Component;
}(_componentBase.default);

exports.default = Component;

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/edit-mode.js":
/*!**********************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/edit-mode.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var EditModeItemView;
EditModeItemView = Marionette.ItemView.extend({
  template: '#tmpl-elementor-mode-switcher-content',
  id: 'elementor-mode-switcher-inner',
  ui: {
    previewButton: '#elementor-mode-switcher-preview-input',
    previewLabel: '#elementor-mode-switcher-preview',
    previewLabelA11y: '#elementor-mode-switcher-preview .elementor-screen-only'
  },
  events: {
    'change @ui.previewButton': 'onPreviewButtonChange'
  },
  initialize: function initialize() {
    this.listenTo(elementor.channels.dataEditMode, 'switch', this.onEditModeChanged);
  },
  getCurrentMode: function getCurrentMode() {
    return this.ui.previewButton.is(':checked') ? 'preview' : 'edit';
  },
  setMode: function setMode(mode) {
    this.ui.previewButton.prop('checked', 'preview' === mode).trigger('change');
  },
  toggleMode: function toggleMode() {
    this.setMode(this.ui.previewButton.prop('checked') ? 'edit' : 'preview');
  },
  onRender: function onRender() {
    this.onEditModeChanged();
  },
  onPreviewButtonChange: function onPreviewButtonChange() {
    var mode = this.getCurrentMode();

    if ('edit' === mode) {
      $e.run('panel/open');
    } else if ('preview' === mode) {
      $e.run('panel/close');
    } else {
      throw Error("Invalid mode: '".concat(mode, "'"));
    }
  },
  onEditModeChanged: function onEditModeChanged(activeMode) {
    var title = 'preview' === activeMode ? __('Back to Editor', 'elementor') : __('Preview', 'elementor');
    this.ui.previewLabel.attr('title', title);
    this.ui.previewLabelA11y.text(title);
  }
});
module.exports = EditModeItemView;

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/footer.js":
/*!*******************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/footer.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

module.exports = Marionette.ItemView.extend({
  template: '#tmpl-elementor-panel-footer-content',
  tagName: 'nav',
  id: 'elementor-panel-footer-tools',
  possibleRotateModes: ['portrait', 'landscape'],
  ui: {
    menuButtons: '.elementor-panel-footer-tool',
    settings: '#elementor-panel-footer-settings',
    deviceModeIcon: '#elementor-panel-footer-responsive > i',
    saveTemplate: '#elementor-panel-footer-sub-menu-item-save-template',
    history: '#elementor-panel-footer-history',
    navigator: '#elementor-panel-footer-navigator'
  },
  events: {
    'click @ui.menuButtons': 'onMenuButtonsClick',
    'click @ui.settings': 'onSettingsClick',
    'click @ui.deviceModeIcon': 'onDeviceModeIconClick',
    'click @ui.saveTemplate': 'onSaveTemplateClick',
    'click @ui.history': 'onHistoryClick',
    'click @ui.navigator': 'onNavigatorClick'
  },
  behaviors: function behaviors() {
    var behaviors = {
      saver: {
        behaviorClass: elementor.modules.components.saver.behaviors.FooterSaver
      }
    };
    return elementor.hooks.applyFilters('panel/footer/behaviors', behaviors, this);
  },
  initialize: function initialize() {
    this.listenTo(elementor.channels.deviceMode, 'change', this.onDeviceModeChange);
  },
  addSubMenuItem: function addSubMenuItem(subMenuName, itemData) {
    var $newItem = jQuery('<div>', {
      id: 'elementor-panel-footer-sub-menu-item-' + itemData.name,
      class: 'elementor-panel-footer-sub-menu-item'
    }),
        $itemIcon = jQuery('<i>', {
      class: 'elementor-icon ' + itemData.icon,
      'aria-hidden': true
    }),
        $itemTitle = jQuery('<div>', {
      class: 'elementor-title'
    }).text(itemData.title);
    $newItem.append($itemIcon, $itemTitle);

    if (itemData.description) {
      var $itemDescription = jQuery('<div>', {
        class: 'elementor-description'
      }).text(itemData.description);
      $newItem.append($itemDescription);
    }

    if (itemData.callback) {
      $newItem.on('click', itemData.callback);
    }

    var $menuTool = this.ui.menuButtons.filter('#elementor-panel-footer-' + subMenuName);

    if (itemData.before) {
      var $beforeItem = $menuTool.find('#elementor-panel-footer-sub-menu-item-' + itemData.before);

      if ($beforeItem.length) {
        return $newItem.insertBefore($beforeItem);
      }
    }

    var $subMenu = $menuTool.find('.elementor-panel-footer-sub-menu');
    return $newItem.appendTo($subMenu);
  },
  removeSubMenuItem: function removeSubMenuItem(subMenuName, itemData) {
    var $item = jQuery('#elementor-panel-footer-sub-menu-item-' + itemData.name);
    return $item.remove();
  },
  showSettingsPage: function showSettingsPage() {
    $e.route('panel/page-settings/settings');
  },
  onMenuButtonsClick: function onMenuButtonsClick(event) {
    var $tool = jQuery(event.currentTarget); // If the tool is not toggleable or the click is inside of a tool

    if (!$tool.hasClass('elementor-toggle-state') || jQuery(event.target).closest('.elementor-panel-footer-sub-menu-item').length) {
      return;
    }

    var isOpen = $tool.hasClass('elementor-open');
    this.ui.menuButtons.not('.elementor-leave-open').removeClass('elementor-open');

    if (!isOpen) {
      $tool.addClass('elementor-open');
    }
  },
  onSettingsClick: function onSettingsClick() {
    $e.route('panel/page-settings/settings');
  },
  onDeviceModeIconClick: function onDeviceModeIconClick() {
    if (elementor.isDeviceModeActive()) {
      elementor.changeDeviceMode('desktop'); // Force exit if device mode is already desktop

      elementor.exitDeviceMode();
    } else {
      var deviceView = 'default' === elementor.getPreferences('default_device_view') ? 'desktop' : elementor.getPreferences('default_device_view');
      elementor.changeDeviceMode(deviceView);

      if ('desktop' === deviceView) {
        elementor.enterDeviceMode();
      }
    }
  },
  onSaveTemplateClick: function onSaveTemplateClick() {
    $e.route('library/save-template');
  },
  onHistoryClick: function onHistoryClick() {
    $e.route('panel/history/actions');
  },
  onNavigatorClick: function onNavigatorClick() {
    $e.run('navigator/toggle');
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/header.js":
/*!*******************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/header.js ***!
  \*******************************************************/
/***/ ((module) => {

"use strict";


var PanelHeaderItemView;
PanelHeaderItemView = Marionette.ItemView.extend({
  template: '#tmpl-elementor-panel-header',
  id: 'elementor-panel-header',
  ui: {
    menuButton: '#elementor-panel-header-menu-button',
    menuIcon: '#elementor-panel-header-menu-button i',
    title: '#elementor-panel-header-title',
    addButton: '#elementor-panel-header-add-button'
  },
  events: {
    'click @ui.addButton': 'onClickAdd',
    'click @ui.menuButton': 'onClickMenu'
  },
  behaviors: function behaviors() {
    return elementor.hooks.applyFilters('panel/header/behaviors', {}, this);
  },
  setTitle: function setTitle(title) {
    this.ui.title.html(title);
  },
  onClickAdd: function onClickAdd() {
    $e.route('panel/elements/categories');
  },
  onClickMenu: function onClickMenu() {
    if ($e.routes.is('panel/menu')) {
      $e.route('panel/elements/categories');
    } else {
      $e.route('panel/menu');
    }
  }
});
module.exports = PanelHeaderItemView;

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/layout.js":
/*!*******************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/layout.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var _component = _interopRequireDefault(__webpack_require__(/*! ./component */ "../assets/dev/js/editor/regions/panel/component.js"));

var _component2 = _interopRequireDefault(__webpack_require__(/*! ./pages/elements/component */ "../assets/dev/js/editor/regions/panel/pages/elements/component.js"));

var _component3 = _interopRequireDefault(__webpack_require__(/*! ./pages/editor/component */ "../assets/dev/js/editor/regions/panel/pages/editor/component.js"));

var EditModeItemView = __webpack_require__(/*! elementor-regions/panel/edit-mode */ "../assets/dev/js/editor/regions/panel/edit-mode.js"),
    PanelLayoutView;

PanelLayoutView = Marionette.LayoutView.extend({
  template: '#tmpl-elementor-panel',
  id: 'elementor-panel-inner',
  regions: {
    content: '#elementor-panel-content-wrapper',
    header: '#elementor-panel-header-wrapper',
    footer: '#elementor-panel-footer',
    modeSwitcher: '#elementor-mode-switcher'
  },
  pages: {},
  childEvents: {
    'click:add': function clickAdd() {
      $e.route('panel/elements/categories');
    },
    'editor:destroy': function editorDestroy() {
      $e.route('panel/elements/categories', {
        autoFocusSearch: false
      });
    }
  },
  currentPageName: null,
  currentPageView: null,
  perfectScrollbar: null,
  initialize: function initialize() {
    $e.components.register(new _component.default({
      manager: this
    }));
    $e.internal('panel/state-loading');
    $e.components.register(new _component2.default({
      manager: this
    }));
    $e.components.register(new _component3.default({
      manager: this
    }));
    this.initPages();
  },
  buildPages: function buildPages() {
    var pages = {
      elements: {
        view: __webpack_require__(/*! elementor-panel/pages/elements/elements */ "../assets/dev/js/editor/regions/panel/pages/elements/elements.js"),
        title: '<img src="' + elementorCommon.config.urls.assets + 'images/logo-panel.svg">'
      },
      editor: {
        view: __webpack_require__(/*! elementor-panel/pages/editor */ "../assets/dev/js/editor/regions/panel/pages/editor.js")
      },
      menu: {
        view: elementor.modules.layouts.panel.pages.menu.Menu,
        title: '<img src="' + elementorCommon.config.urls.assets + 'images/logo-panel.svg">'
      },
      colorScheme: {
        view: __webpack_require__(/*! elementor-panel/pages/schemes/colors */ "../assets/dev/js/editor/regions/panel/pages/schemes/colors.js")
      },
      typographyScheme: {
        view: __webpack_require__(/*! elementor-panel/pages/schemes/typography */ "../assets/dev/js/editor/regions/panel/pages/schemes/typography.js")
      }
    };

    var schemesTypes = (0, _keys.default)(elementor.schemes.getSchemes()),
        disabledSchemes = _.difference(schemesTypes, elementor.schemes.getEnabledSchemesTypes());

    _.each(disabledSchemes, function (schemeType) {
      var scheme = elementor.schemes.getScheme(schemeType);
      pages[schemeType + 'Scheme'].view = __webpack_require__(/*! elementor-panel/pages/schemes/disabled */ "../assets/dev/js/editor/regions/panel/pages/schemes/disabled.js").extend({
        disabledTitle: scheme.disabled_title
      });
    });

    return pages;
  },
  initPages: function initPages() {
    var pages;

    this.getPages = function (page) {
      if (!pages) {
        pages = this.buildPages();
      }

      return page ? pages[page] : pages;
    };

    this.addPage = function (pageName, pageData) {
      if (!pages) {
        pages = this.buildPages();
      }

      pages[pageName] = pageData;
    };
  },
  getHeaderView: function getHeaderView() {
    return this.getChildView('header');
  },
  getFooterView: function getFooterView() {
    return this.getChildView('footer');
  },
  getCurrentPageName: function getCurrentPageName() {
    return this.currentPageName;
  },
  getCurrentPageView: function getCurrentPageView() {
    return this.currentPageView;
  },
  setPage: function setPage(page, title, viewOptions) {
    var pages = this.getPages();

    if ('elements' === page && !elementor.userCan('design')) {
      if (pages.page_settings) {
        page = 'page_settings';
      }
    }

    var pageData = pages[page];

    if (!pageData) {
      throw new ReferenceError('Elementor panel doesn\'t have page named \'' + page + '\'');
    }

    if (pageData.options) {
      viewOptions = _.extend(pageData.options, viewOptions);
    }

    var View = pageData.view;

    if (pageData.getView) {
      View = pageData.getView();
    }

    this.currentPageName = page;
    this.currentPageView = new View(viewOptions);
    this.showChildView('content', this.currentPageView);
    this.getHeaderView().setTitle(title || pageData.title);
    this.trigger('set:page', this.currentPageView).trigger('set:page:' + page, this.currentPageView);

    if (elementor.promotion.dialog) {
      elementor.promotion.dialog.hide();
    }

    return this.currentPageView;
  },
  onBeforeShow: function onBeforeShow() {
    var PanelFooterItemView = __webpack_require__(/*! elementor-regions/panel/footer */ "../assets/dev/js/editor/regions/panel/footer.js"),
        PanelHeaderItemView = __webpack_require__(/*! elementor-regions/panel/header */ "../assets/dev/js/editor/regions/panel/header.js"); // Edit Mode


    this.showChildView('modeSwitcher', new EditModeItemView()); // Header

    this.showChildView('header', new PanelHeaderItemView()); // Footer

    this.showChildView('footer', new PanelFooterItemView()); // Added Editor events

    this.updateScrollbar = _.throttle(this.updateScrollbar, 100);
    this.getRegion('content').on('before:show', this.onEditorBeforeShow.bind(this)).on('empty', this.onEditorEmpty.bind(this)).on('show', this.updateScrollbar.bind(this));
  },
  onEditorBeforeShow: function onEditorBeforeShow() {
    _.defer(this.updateScrollbar.bind(this));
  },
  onEditorEmpty: function onEditorEmpty() {
    this.updateScrollbar();
  },
  updateScrollbar: function updateScrollbar() {
    if (!this.perfectScrollbar) {
      this.perfectScrollbar = new PerfectScrollbar(this.content.el, {
        suppressScrollX: true
      }); // The RTL is buggy, so always keep it LTR.

      this.perfectScrollbar.isRtl = false;
      return;
    }

    this.perfectScrollbar.update();
  }
});
module.exports = PanelLayoutView;

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/pages/editor.js":
/*!*************************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/pages/editor.js ***!
  \*************************************************************/
/***/ ((module) => {

"use strict";


var ControlsStack = elementorModules.editor.views.ControlsStack,
    EditorView;
EditorView = ControlsStack.extend({
  template: Marionette.TemplateCache.get('#tmpl-editor-content'),
  id: 'elementor-panel-page-editor',
  childViewContainer: '#elementor-controls',
  childViewOptions: function childViewOptions() {
    return {
      element: this.getOption('editedElementView'),
      container: this.getOption('editedElementView').getContainer(),
      // TODO: elementSettingsModel is deprecated since 2.8.0.
      elementSettingsModel: this.model.get('settings'),
      elementEditSettings: this.model.get('editSettings')
    };
  },
  getNamespaceArray: function getNamespaceArray() {
    var eventNamespace = elementorModules.editor.views.ControlsStack.prototype.getNamespaceArray();
    var model = this.getOption('editedElementView').getEditModel(),
        currentElementType = model.get('elType'); // Element Type: section / column / widget.

    eventNamespace.push(currentElementType);

    if ('widget' === currentElementType) {
      // Widget Type: heading / button and etc.
      eventNamespace.push(model.get('widgetType'));
    }

    return eventNamespace;
  },
  initialize: function initialize() {
    ControlsStack.prototype.initialize.apply(this, arguments);
    var editSettings = this.model.get('editSettings');

    if (editSettings) {
      var panelSettings = editSettings.get('panel');

      if (panelSettings) {
        this.activeTab = panelSettings.activeTab;
        this.activeSection = panelSettings.activeSection;
      }
    }
  },
  activateSection: function activateSection() {
    ControlsStack.prototype.activateSection.apply(this, arguments);
    this.model.get('editSettings').set('panel', {
      activeTab: this.activeTab,
      activeSection: this.activeSection
    });
    return this;
  },
  openActiveSection: function openActiveSection() {
    ControlsStack.prototype.openActiveSection.apply(this, arguments);
    elementor.channels.editor.trigger('section:activated', this.activeSection, this);
  },
  isVisibleSectionControl: function isVisibleSectionControl(sectionControlModel) {
    return ControlsStack.prototype.isVisibleSectionControl.apply(this, arguments) && elementor.helpers.isActiveControl(sectionControlModel, this.model.get('settings').attributes);
  },
  scrollToEditedElement: function scrollToEditedElement() {
    elementor.helpers.scrollToView(this.getOption('editedElementView').$el);
  },
  onDestroy: function onDestroy() {
    var editedElementView = this.getOption('editedElementView');

    if (editedElementView) {
      editedElementView.$el.removeClass('elementor-element-editable');
    }

    this.model.trigger('editor:close');
    this.triggerMethod('editor:destroy');
  },
  onRender: function onRender() {
    var editedElementView = this.getOption('editedElementView');

    if (editedElementView) {
      editedElementView.$el.addClass('elementor-element-editable');
    }
  },
  onDeviceModeChange: function onDeviceModeChange() {
    ControlsStack.prototype.onDeviceModeChange.apply(this, arguments);
    this.scrollToEditedElement();
  },
  onChildviewSettingsChange: function onChildviewSettingsChange(childView) {
    var editedElementView = this.getOption('editedElementView'),
        editedElementType = editedElementView.model.get('elType');

    if ('widget' === editedElementType) {
      editedElementType = editedElementView.model.get('widgetType');
    }

    elementor.channels.editor.trigger('change', childView, editedElementView).trigger('change:' + editedElementType, childView, editedElementView).trigger('change:' + editedElementType + ':' + childView.model.get('name'), childView, editedElementView);
  }
});
module.exports = EditorView;

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/pages/editor/commands/index.js":
/*!****************************************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/pages/editor/commands/index.js ***!
  \****************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "Open", {
  enumerable: true,
  get: function get() {
    return _open.Open;
  }
});

var _open = __webpack_require__(/*! ./open */ "../assets/dev/js/editor/regions/panel/pages/editor/commands/open.js");

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/pages/editor/commands/open.js":
/*!***************************************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/pages/editor/commands/open.js ***!
  \***************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Open = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Open = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Open, _CommandBase);

  var _super = (0, _createSuper2.default)(Open);

  function Open() {
    (0, _classCallCheck2.default)(this, Open);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Open, [{
    key: "apply",
    value: function apply(args) {
      if (!this.component.setDefaultTab(args)) {
        elementorCommon.helpers.softDeprecated("model.trigger( 'request:edit' )", '2.9.0', 'editSettings.defaultEditRoute');
        args.model.trigger('request:edit');
      } else {
        $e.route(this.component.getDefaultRoute(), args);
      } // BC: Run hooks after the route render's the view


      var elementType = args.model.get('elType'),
          widgetType = args.model.get('widgetType'); // Example: panel/open_editor/widget

      elementor.hooks.doAction("panel/open_editor/".concat(elementType), this.component.manager, args.model, args.view); // Example: panel/open_editor/widget/heading

      elementor.hooks.doAction("panel/open_editor/".concat(elementType, "/").concat(widgetType), this.component.manager, args.model, args.view);
    }
  }]);
  return Open;
}(_commandBase.default);

exports.Open = Open;
var _default = Open;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/pages/editor/component.js":
/*!***********************************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/pages/editor/component.js ***!
  \***********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var sprintf = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["sprintf"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _componentBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-base */ "../core/common/assets/js/api/modules/component-base.js"));

var commands = _interopRequireWildcard(__webpack_require__(/*! ./commands/ */ "../assets/dev/js/editor/regions/panel/pages/editor/commands/index.js"));

var Component = /*#__PURE__*/function (_ComponentBase) {
  (0, _inherits2.default)(Component, _ComponentBase);

  var _super = (0, _createSuper2.default)(Component);

  function Component() {
    (0, _classCallCheck2.default)(this, Component);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Component, [{
    key: "__construct",
    value: function __construct(args) {
      (0, _get2.default)((0, _getPrototypeOf2.default)(Component.prototype), "__construct", this).call(this, args); // Remember last used tab.

      this.activeTabs = {};
    }
  }, {
    key: "getNamespace",
    value: function getNamespace() {
      return 'panel/editor';
    }
  }, {
    key: "defaultTabs",
    value: function defaultTabs() {
      return {
        content: {
          title: __('Content', 'elementor')
        },
        style: {
          title: __('Style', 'elementor')
        },
        advanced: {
          title: __('Advanced', 'elementor')
        },
        layout: {
          title: __('Layout', 'elementor')
        }
      };
    }
  }, {
    key: "defaultCommands",
    value: function defaultCommands() {
      return this.importCommands(commands);
    }
  }, {
    key: "getTabsWrapperSelector",
    value: function getTabsWrapperSelector() {
      return '.elementor-panel-navigation';
    }
  }, {
    key: "renderTab",
    value: function renderTab(tab, args) {
      var model = args.model,
          view = args.view,
          title = sprintf(__('Edit %s', 'elementor'), elementor.getElementData(model).title);
      elementor.getPanelView().setPage('editor', title, {
        tab: tab,
        model: model,
        controls: elementor.getElementControls(model),
        editedElementView: view
      });
    }
  }, {
    key: "activateTab",
    value: function activateTab(tab, args) {
      this.activeTabs[args.model.id] = tab;
      (0, _get2.default)((0, _getPrototypeOf2.default)(Component.prototype), "activateTab", this).call(this, tab, args);
    }
  }, {
    key: "setDefaultTab",
    value: function setDefaultTab(args) {
      var defaultTab;
      var editSettings = args.model.get('editSettings');

      if (this.activeTabs[args.model.id]) {
        defaultTab = this.activeTabs[args.model.id];
      } else if (editSettings && editSettings.get('defaultEditRoute')) {
        defaultTab = editSettings.get('defaultEditRoute');
      }

      if (defaultTab) {
        // Ensure tab is exist.
        var controlsTabs = elementor.getElementData(args.model).tabs_controls; // Fallback to first tab.

        if (!controlsTabs[defaultTab]) {
          defaultTab = (0, _keys.default)(controlsTabs)[0];
        }

        this.setDefaultRoute(defaultTab);
        return true;
      }

      return false;
    }
  }]);
  return Component;
}(_componentBase.default);

exports.default = Component;

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/pages/elements/collections/categories.js":
/*!**************************************************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/pages/elements/collections/categories.js ***!
  \**************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var PanelElementsCategory = __webpack_require__(/*! ../models/element */ "../assets/dev/js/editor/regions/panel/pages/elements/models/element.js"),
    PanelElementsCategoriesCollection;

PanelElementsCategoriesCollection = Backbone.Collection.extend({
  model: PanelElementsCategory
});
module.exports = PanelElementsCategoriesCollection;

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/pages/elements/collections/elements.js":
/*!************************************************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/pages/elements/collections/elements.js ***!
  \************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var PanelElementsElementModel = __webpack_require__(/*! ../models/element */ "../assets/dev/js/editor/regions/panel/pages/elements/models/element.js"),
    PanelElementsElementsCollection;

PanelElementsElementsCollection = Backbone.Collection.extend({
  model: PanelElementsElementModel
  /*,
  comparator: 'title'*/

});
module.exports = PanelElementsElementsCollection;

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/pages/elements/component.js":
/*!*************************************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/pages/elements/component.js ***!
  \*************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _componentBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-base */ "../core/common/assets/js/api/modules/component-base.js"));

var Component = /*#__PURE__*/function (_ComponentBase) {
  (0, _inherits2.default)(Component, _ComponentBase);

  var _super = (0, _createSuper2.default)(Component);

  function Component() {
    (0, _classCallCheck2.default)(this, Component);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Component, [{
    key: "getNamespace",
    value: function getNamespace() {
      return 'panel/elements';
    }
  }, {
    key: "defaultTabs",
    value: function defaultTabs() {
      return {
        categories: {
          title: __('Elements', 'elementor')
        },
        global: {
          title: __('Global', 'elementor')
        }
      };
    }
  }, {
    key: "getTabsWrapperSelector",
    value: function getTabsWrapperSelector() {
      return '#elementor-panel-elements-navigation';
    }
  }, {
    key: "renderTab",
    value: function renderTab(tab) {
      this.manager.setPage('elements').showView(tab);
    }
  }]);
  return Component;
}(_componentBase.default);

exports.default = Component;

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/pages/elements/elements.js":
/*!************************************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/pages/elements/elements.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


__webpack_require__(/*! core-js/modules/es6.regexp.search.js */ "../node_modules/core-js/modules/es6.regexp.search.js");

__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

var PanelElementsCategoriesCollection = __webpack_require__(/*! ./collections/categories */ "../assets/dev/js/editor/regions/panel/pages/elements/collections/categories.js"),
    PanelElementsElementsCollection = __webpack_require__(/*! ./collections/elements */ "../assets/dev/js/editor/regions/panel/pages/elements/collections/elements.js"),
    PanelElementsCategoriesView = __webpack_require__(/*! ./views/categories */ "../assets/dev/js/editor/regions/panel/pages/elements/views/categories.js"),
    PanelElementsElementsView = elementor.modules.layouts.panel.pages.elements.views.Elements,
    PanelElementsSearchView = __webpack_require__(/*! ./views/search */ "../assets/dev/js/editor/regions/panel/pages/elements/views/search.js"),
    PanelElementsGlobalView = __webpack_require__(/*! ./views/global */ "../assets/dev/js/editor/regions/panel/pages/elements/views/global.js"),
    PanelElementsLayoutView;

PanelElementsLayoutView = Marionette.LayoutView.extend({
  template: '#tmpl-elementor-panel-elements',
  id: 'elementor-panel-page-elements',
  options: {
    autoFocusSearch: true
  },
  regions: {
    elements: '#elementor-panel-elements-wrapper',
    search: '#elementor-panel-elements-search-area'
  },
  regionViews: {},
  elementsCollection: null,
  categoriesCollection: null,
  initialize: function initialize() {
    this.listenTo(elementor.channels.panelElements, 'element:selected', this.destroy);
    this.initElementsCollection();
    this.initCategoriesCollection();
    this.initRegionViews();
  },
  initRegionViews: function initRegionViews() {
    var regionViews = {
      elements: {
        region: this.elements,
        view: PanelElementsElementsView,
        options: {
          collection: this.elementsCollection
        }
      },
      categories: {
        region: this.elements,
        view: PanelElementsCategoriesView,
        options: {
          collection: this.categoriesCollection
        }
      },
      search: {
        region: this.search,
        view: PanelElementsSearchView
      },
      global: {
        region: this.elements,
        view: PanelElementsGlobalView
      }
    };
    this.regionViews = elementor.hooks.applyFilters('panel/elements/regionViews', regionViews);
  },
  initElementsCollection: function initElementsCollection() {
    var elementsCollection = new PanelElementsElementsCollection(),
        sectionConfig = elementor.config.elements.section;
    elementsCollection.add({
      title: __('Inner Section', 'elementor'),
      elType: 'section',
      categories: ['basic'],
      keywords: ['row', 'columns', 'nested'],
      icon: sectionConfig.icon
    }); // TODO: Change the array from server syntax, and no need each loop for initialize

    _.each(elementor.widgetsCache, function (widget) {
      if (elementor.config.document.panel.widgets_settings[widget.widget_type]) {
        widget = _.extend(widget, elementor.config.document.panel.widgets_settings[widget.widget_type]);
      }

      if (!widget.show_in_panel) {
        return;
      }

      elementsCollection.add({
        title: widget.title,
        elType: widget.elType,
        categories: widget.categories,
        keywords: widget.keywords,
        icon: widget.icon,
        widgetType: widget.widget_type,
        custom: widget.custom,
        editable: widget.editable
      });
    });

    jQuery.each(elementor.config.promotionWidgets, function (index, widget) {
      elementsCollection.add({
        name: widget.name,
        title: widget.title,
        icon: widget.icon,
        categories: JSON.parse(widget.categories),
        editable: false
      });
    });
    this.elementsCollection = elementsCollection;
  },
  initCategoriesCollection: function initCategoriesCollection() {
    var categories = {};
    this.elementsCollection.each(function (element) {
      _.each(element.get('categories'), function (category) {
        if (!categories[category]) {
          categories[category] = [];
        }

        categories[category].push(element);
      });
    });
    var categoriesCollection = new PanelElementsCategoriesCollection();

    _.each(elementor.config.document.panel.elements_categories, function (categoryConfig, categoryName) {
      if (!categories[categoryName]) {
        return;
      } // Set defaults.


      if ('undefined' === typeof categoryConfig.active) {
        categoryConfig.active = true;
      }

      if ('undefined' === typeof categoryConfig.icon) {
        categoryConfig.icon = 'font';
      }

      categoriesCollection.add({
        name: categoryName,
        title: categoryConfig.title,
        icon: categoryConfig.icon,
        defaultActive: categoryConfig.active,
        items: categories[categoryName]
      });
    });

    this.categoriesCollection = categoriesCollection;
  },
  showView: function showView(viewName) {
    var viewDetails = this.regionViews[viewName],
        options = viewDetails.options || {};
    viewDetails.region.show(new viewDetails.view(options));
  },
  clearSearchInput: function clearSearchInput() {
    this.getChildView('search').clearInput();
  },
  changeFilter: function changeFilter(filterValue) {
    elementor.channels.panelElements.reply('filter:value', filterValue).trigger('filter:change');
  },
  clearFilters: function clearFilters() {
    this.changeFilter(null);
    this.clearSearchInput();
  },
  focusSearch: function focusSearch() {
    if (!elementor.userCan('design') || !this.search
    /* default panel is not elements */
    || !this.search.currentView
    /* on global elements empty */
    ) {
      return;
    }

    this.search.currentView.ui.input.focus();
  },
  onChildviewChildrenRender: function onChildviewChildrenRender() {
    elementor.getPanelView().updateScrollbar();
  },
  onChildviewSearchChangeInput: function onChildviewSearchChangeInput(child) {
    this.changeFilter(child.ui.input.val(), 'search');
  },
  onDestroy: function onDestroy() {
    elementor.channels.panelElements.reply('filter:value', null);
  },
  onShow: function onShow() {
    this.showView('search');

    if (this.options.autoFocusSearch) {
      setTimeout(this.focusSearch.bind(this));
    }
  }
});
module.exports = PanelElementsLayoutView;

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/pages/elements/models/element.js":
/*!******************************************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/pages/elements/models/element.js ***!
  \******************************************************************************/
/***/ ((module) => {

"use strict";


var PanelElementsElementModel;
PanelElementsElementModel = Backbone.Model.extend({
  defaults: {
    title: '',
    categories: [],
    keywords: [],
    icon: '',
    elType: 'widget',
    widgetType: ''
  }
});
module.exports = PanelElementsElementModel;

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/pages/elements/views/categories.js":
/*!********************************************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/pages/elements/views/categories.js ***!
  \********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var PanelElementsCategoryView = __webpack_require__(/*! ./category */ "../assets/dev/js/editor/regions/panel/pages/elements/views/category.js"),
    PanelElementsCategoriesView;

PanelElementsCategoriesView = Marionette.CompositeView.extend({
  template: '#tmpl-elementor-panel-categories',
  childView: PanelElementsCategoryView,
  childViewContainer: '#elementor-panel-categories',
  id: 'elementor-panel-elements-categories',
  initialize: function initialize() {
    this.listenTo(elementor.channels.panelElements, 'filter:change', this.onPanelElementsFilterChange);
  },
  onPanelElementsFilterChange: function onPanelElementsFilterChange() {
    if (elementor.channels.panelElements.request('filter:value')) {
      elementor.getPanelView().getCurrentPageView().showView('elements');
    }
  }
});
module.exports = PanelElementsCategoriesView;

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/pages/elements/views/category.js":
/*!******************************************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/pages/elements/views/category.js ***!
  \******************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var PanelElementsElementsCollection = __webpack_require__(/*! ../collections/elements */ "../assets/dev/js/editor/regions/panel/pages/elements/collections/elements.js"),
    PanelElementsCategoryView;

PanelElementsCategoryView = Marionette.CompositeView.extend({
  template: '#tmpl-elementor-panel-elements-category',
  className: 'elementor-panel-category',
  ui: {
    title: '.elementor-panel-category-title',
    items: '.elementor-panel-category-items'
  },
  events: {
    'click @ui.title': 'onTitleClick'
  },
  id: function id() {
    return 'elementor-panel-category-' + this.model.get('name');
  },
  childView: __webpack_require__(/*! elementor-panel/pages/elements/views/element */ "../assets/dev/js/editor/regions/panel/pages/elements/views/element.js"),
  childViewContainer: '.elementor-panel-category-items',
  initialize: function initialize() {
    this.collection = new PanelElementsElementsCollection(this.model.get('items'));
  },
  onRender: function onRender() {
    var isActive = elementor.channels.panelElements.request('category:' + this.model.get('name') + ':active');

    if (undefined === isActive) {
      isActive = this.model.get('defaultActive');
    }

    if (isActive) {
      this.$el.addClass('elementor-active');
    } else {
      this.ui.items.css('display', 'none');
    }
  },
  onTitleClick: function onTitleClick() {
    var $items = this.ui.items,
        activeClass = 'elementor-active',
        isActive = this.$el.hasClass(activeClass),
        slideFn = isActive ? 'slideUp' : 'slideDown';
    elementor.channels.panelElements.reply('category:' + this.model.get('name') + ':active', !isActive);
    this.$el.toggleClass(activeClass, !isActive);
    $items[slideFn](300, function () {
      elementor.getPanelView().updateScrollbar();
    });
  }
});
module.exports = PanelElementsCategoryView;

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/pages/elements/views/element.js":
/*!*****************************************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/pages/elements/views/element.js ***!
  \*****************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var sprintf = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["sprintf"];
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


__webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");

module.exports = Marionette.ItemView.extend({
  template: '#tmpl-elementor-element-library-element',
  className: function className() {
    var className = 'elementor-element-wrapper';

    if (!this.isEditable()) {
      className += ' elementor-element--promotion';
    }

    return className;
  },
  events: function events() {
    var events = {};

    if (!this.isEditable()) {
      events.mousedown = 'onMouseDown';
    }

    return events;
  },
  ui: {
    element: '.elementor-element'
  },
  isEditable: function isEditable() {
    return false !== this.model.get('editable');
  },
  onRender: function onRender() {
    var _this = this;

    if (!elementor.userCan('design') || !this.isEditable()) {
      return;
    }

    this.ui.element.html5Draggable({
      onDragStart: function onDragStart() {
        elementor.channels.panelElements.reply('element:selected', _this).trigger('element:drag:start');
      },
      onDragEnd: function onDragEnd() {
        elementor.channels.panelElements.trigger('element:drag:end');
      },
      groups: ['elementor-element']
    });
  },
  onMouseDown: function onMouseDown() {
    var title = this.model.get('title');
    elementor.promotion.showDialog({
      /* translators: %s: Widget title. */
      headerMessage: sprintf(__('%s Widget', 'elementor'), title),

      /* translators: %s: Widget title. */
      message: sprintf(__('Use %s widget and dozens more pro features to extend your toolbox and build sites faster and better.', 'elementor'), title),
      top: '-7',
      element: this.el,
      actionURL: elementor.config.elementPromotionURL.replace('%s', this.model.get('name'))
    });
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/pages/elements/views/elements.js":
/*!******************************************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/pages/elements/views/elements.js ***!
  \******************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var PanelElementsElementsView;
PanelElementsElementsView = Marionette.CollectionView.extend({
  childView: __webpack_require__(/*! elementor-panel/pages/elements/views/element */ "../assets/dev/js/editor/regions/panel/pages/elements/views/element.js"),
  id: 'elementor-panel-elements',
  className: 'elementor-responsive-panel',
  initialize: function initialize() {
    this.listenTo(elementor.channels.panelElements, 'filter:change', this.onFilterChanged);
  },
  filter: function filter(childModel) {
    var filterValue = elementor.channels.panelElements.request('filter:value');

    if (!filterValue) {
      return true;
    }

    if (-1 !== childModel.get('title').toLowerCase().indexOf(filterValue.toLowerCase())) {
      return true;
    } // Get the filter input localized value.


    var localized = elementor.channels.panelElements.request('filter:localized') || '';
    return _.any(childModel.get('keywords'), function (keyword) {
      keyword = keyword.toLowerCase();
      var regularFilter = -1 !== keyword.indexOf(filterValue.toLowerCase()),
          localizedFilter = localized && -1 !== keyword.indexOf(localized.toLowerCase());
      return regularFilter || localizedFilter;
    });
  },
  onFilterChanged: function onFilterChanged() {
    var filterValue = elementor.channels.panelElements.request('filter:value');

    if (!filterValue) {
      this.onFilterEmpty();
    }

    this._renderChildren();

    this.triggerMethod('children:render');
  },
  onFilterEmpty: function onFilterEmpty() {
    $e.routes.refreshContainer('panel');
  }
});
module.exports = PanelElementsElementsView;

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/pages/elements/views/global.js":
/*!****************************************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/pages/elements/views/global.js ***!
  \****************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


__webpack_require__(/*! core-js/modules/es6.regexp.search.js */ "../node_modules/core-js/modules/es6.regexp.search.js");

module.exports = Marionette.ItemView.extend({
  template: '#tmpl-elementor-panel-global',
  id: 'elementor-panel-global',
  initialize: function initialize() {
    elementor.getPanelView().getCurrentPageView().search.reset();
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/pages/elements/views/search.js":
/*!****************************************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/pages/elements/views/search.js ***!
  \****************************************************************************/
/***/ ((module) => {

"use strict";


var PanelElementsSearchView;
PanelElementsSearchView = Marionette.ItemView.extend({
  template: '#tmpl-elementor-panel-element-search',
  localizedValue: '',
  id: 'elementor-panel-elements-search-wrapper',
  ui: {
    input: 'input'
  },
  events: {
    'keyup @ui.input': 'onInputChanged',
    'input @ui.input': 'onInputChanged'
  },
  clearInput: function clearInput() {
    this.ui.input.val('');
  },
  onInputChanged: function onInputChanged(event) {
    var ESC_KEY = 27;

    if (ESC_KEY === event.keyCode) {
      this.clearInput();
    } // Don't catch keyboard shortcut.


    if (event.shiftKey || event.ctrlKey || event.altKey) {
      this.triggerMethod('search:change:input');
      return;
    } // Reset localized value if the input is empty or some chars were deleted.


    if (!event.target.value || event.target.value.length < this.localizedValue.length) {
      this.localizedValue = '';
    }

    var isLetter = event.keyCode >= 65 && event.keyCode <= 90,
        isSpace = 32 === event.keyCode;

    if (isLetter || isSpace) {
      this.localizedValue += String.fromCharCode(event.keyCode);
    } // Broadcast the localized value.


    elementor.channels.panelElements.reply('filter:localized', this.localizedValue);
    this.triggerMethod('search:change:input');
  }
});
module.exports = PanelElementsSearchView;

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/pages/menu/base.js":
/*!****************************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/pages/menu/base.js ***!
  \****************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _group = _interopRequireDefault(__webpack_require__(/*! elementor-panel/pages/menu/views/group */ "../assets/dev/js/editor/regions/panel/pages/menu/views/group.js"));

var MenuPageView = /*#__PURE__*/function (_Marionette$Composite) {
  (0, _inherits2.default)(MenuPageView, _Marionette$Composite);

  var _super = (0, _createSuper2.default)(MenuPageView);

  function MenuPageView() {
    (0, _classCallCheck2.default)(this, MenuPageView);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(MenuPageView, [{
    key: "id",
    value: function id() {
      return 'elementor-panel-page-menu';
    }
  }, {
    key: "getTemplate",
    value: function getTemplate() {
      return '#tmpl-elementor-panel-menu';
    }
  }, {
    key: "getChildView",
    value: function getChildView() {
      return _group.default;
    }
  }, {
    key: "childViewContainer",
    value: function childViewContainer() {
      return '#elementor-panel-page-menu-content';
    } // Remove empty groups that exist for BC.

  }, {
    key: "filter",
    value: function filter(child) {
      return child.get('items').length;
    }
  }]);
  return MenuPageView;
}(Marionette.CompositeView);

exports.default = MenuPageView;

MenuPageView.addItem = function (groups, itemData, groupName, before) {
  var group = groups.findWhere({
    name: groupName
  });

  if (!group) {
    return;
  }

  var items = group.get('items'),
      exists = _.findWhere(items, {
    name: itemData.name
  }); // Remove if exist.


  var beforeItem;

  if (exists) {
    items.splice(items.indexOf(exists), 1);
  }

  if (before) {
    beforeItem = _.findWhere(items, {
      name: before
    });
  }

  if (beforeItem) {
    items.splice(items.indexOf(beforeItem), 0, itemData);
  } else {
    items.push(itemData);
  }
};

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/pages/menu/menu.js":
/*!****************************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/pages/menu/menu.js ***!
  \****************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _base = _interopRequireDefault(__webpack_require__(/*! elementor-panel/pages/menu/base */ "../assets/dev/js/editor/regions/panel/pages/menu/base.js"));

var PanelMenu = /*#__PURE__*/function (_MenuPageView) {
  (0, _inherits2.default)(PanelMenu, _MenuPageView);

  var _super = (0, _createSuper2.default)(PanelMenu);

  function PanelMenu() {
    (0, _classCallCheck2.default)(this, PanelMenu);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(PanelMenu, [{
    key: "initialize",
    value: function initialize() {
      this.collection = PanelMenu.getGroups();
    }
  }, {
    key: "getArrowClass",
    value: function getArrowClass() {
      return 'eicon-chevron-' + (elementorCommon.config.isRTL ? 'right' : 'left');
    }
  }, {
    key: "onRender",
    value: function onRender() {
      elementor.getPanelView().getHeaderView().ui.menuIcon.removeClass('eicon-menu-bar').addClass(this.getArrowClass());
    }
  }, {
    key: "onDestroy",
    value: function onDestroy() {
      elementor.getPanelView().getHeaderView().ui.menuIcon.removeClass(this.getArrowClass()).addClass('eicon-menu-bar');
    }
  }]);
  return PanelMenu;
}(_base.default);

exports.default = PanelMenu;
PanelMenu.groups = null;

PanelMenu.initGroups = function () {
  PanelMenu.groups = new Backbone.Collection([]); // Keep the old `more` for BC, since 3.0.0.

  PanelMenu.groups.add({
    name: 'more',
    title: __('More', 'elementor'),
    items: []
  });
  PanelMenu.groups.add({
    name: 'navigate_from_page',
    title: __('Navigate From Page', 'elementor'),
    items: [// Todo: internal command.
    {
      name: 'view-page',
      icon: 'eicon-preview-thin',
      title: __('View Page', 'elementor'),
      type: 'link',
      link: elementor.config.document.urls.permalink
    }, // Todo: internal command.
    {
      name: 'exit-to-dashboard',
      icon: 'eicon-wordpress-light',
      title: __('Exit To Dashboard', 'elementor'),
      type: 'link',
      link: elementor.config.document.urls.exit_to_dashboard
    }]
  });

  if (elementor.config.user.is_administrator) {
    PanelMenu.addAdminMenu();
  }
};

PanelMenu.addAdminMenu = function () {
  PanelMenu.groups.add({
    name: 'style',
    title: __('Settings', 'elementor'),
    items: [{
      name: 'editor-preferences',
      icon: 'eicon-user-preferences',
      title: __('User Preferences', 'elementor'),
      type: 'page',
      callback: function callback() {
        return $e.route('panel/editor-preferences');
      }
    }]
  }, {
    at: 0
  });
  PanelMenu.addItem({
    name: 'finder',
    icon: 'eicon-search',
    title: __('Finder', 'elementor'),
    callback: function callback() {
      return $e.route('finder');
    }
  }, 'navigate_from_page', 'view-page');
};

PanelMenu.getGroups = function () {
  if (!PanelMenu.groups) {
    PanelMenu.initGroups();
  }

  return PanelMenu.groups;
};

PanelMenu.addItem = function (itemData, groupName, before) {
  _base.default.addItem(PanelMenu.getGroups(), itemData, groupName, before);
};

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/pages/menu/views/group.js":
/*!***********************************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/pages/menu/views/group.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var PanelMenuItemView = __webpack_require__(/*! elementor-panel/pages/menu/views/item */ "../assets/dev/js/editor/regions/panel/pages/menu/views/item.js");

module.exports = Marionette.CompositeView.extend({
  template: '#tmpl-elementor-panel-menu-group',
  className: 'elementor-panel-menu-group',
  childView: PanelMenuItemView,
  childViewContainer: '.elementor-panel-menu-items',
  initialize: function initialize() {
    this.collection = new Backbone.Collection(this.model.get('items'));
  },
  onChildviewClick: function onChildviewClick(childView) {
    var callback = childView.model.get('callback');

    if (_.isFunction(callback)) {
      callback.call(childView);
    }
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/pages/menu/views/item.js":
/*!**********************************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/pages/menu/views/item.js ***!
  \**********************************************************************/
/***/ ((module) => {

"use strict";


module.exports = Marionette.ItemView.extend({
  template: '#tmpl-elementor-panel-menu-item',
  className: function className() {
    return 'elementor-panel-menu-item elementor-panel-menu-item-' + this.model.get('name');
  },
  triggers: {
    click: {
      event: 'click',
      preventDefault: false
    }
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/pages/schemes/base.js":
/*!*******************************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/pages/schemes/base.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var childViewTypes = {
  color: __webpack_require__(/*! elementor-panel/pages/schemes/items/color */ "../assets/dev/js/editor/regions/panel/pages/schemes/items/color.js"),
  typography: __webpack_require__(/*! elementor-panel/pages/schemes/items/typography */ "../assets/dev/js/editor/regions/panel/pages/schemes/items/typography.js")
},
    PanelSchemeBaseView;
PanelSchemeBaseView = Marionette.CompositeView.extend({
  id: function id() {
    return 'elementor-panel-scheme-' + this.getType();
  },
  className: function className() {
    return 'elementor-panel-scheme elementor-panel-scheme-' + this.getUIType();
  },
  childViewContainer: '.elementor-panel-scheme-items',
  getTemplate: function getTemplate() {
    return Marionette.TemplateCache.get('#tmpl-elementor-panel-schemes-' + this.getType());
  },
  getChildView: function getChildView() {
    return childViewTypes[this.getUIType()];
  },
  getUIType: function getUIType() {
    return this.getType();
  },
  ui: function ui() {
    return {
      saveButton: '.elementor-panel-scheme-save .elementor-button',
      discardButton: '.elementor-panel-scheme-discard .elementor-button',
      resetButton: '.elementor-panel-scheme-reset .elementor-button'
    };
  },
  events: function events() {
    return {
      'click @ui.saveButton': 'saveScheme',
      'click @ui.discardButton': 'discardScheme',
      'click @ui.resetButton': 'setDefaultScheme'
    };
  },
  initialize: function initialize() {
    this.model = new Backbone.Model();
    this.resetScheme();
  },
  getType: function getType() {},
  getScheme: function getScheme() {
    return elementor.schemes.getScheme(this.getType());
  },
  changeChildrenUIValues: function changeChildrenUIValues(schemeItems) {
    var self = this;

    _.each(schemeItems, function (value, key) {
      var model = self.collection.findWhere({
        key: key
      }),
          childView = self.children.findByModelCid(model.cid);
      childView.changeUIValue(value);
    });
  },
  discardScheme: function discardScheme() {
    elementor.schemes.resetSchemes(this.getType());
    this.onSchemeChange();
    this.ui.saveButton.prop('disabled', true);

    this._renderChildren();
  },
  setSchemeValue: function setSchemeValue(key, value) {
    elementor.schemes.setSchemeValue(this.getType(), key, value);
    this.onSchemeChange();
  },
  saveScheme: function saveScheme() {
    NProgress.start();
    elementor.schemes.saveScheme(this.getType()).done(NProgress.done);
    this.ui.saveButton.prop('disabled', true);
    this.resetScheme();

    this._renderChildren();
  },
  setDefaultScheme: function setDefaultScheme() {
    var defaultScheme = elementor.config.default_schemes[this.getType()].items;
    this.changeChildrenUIValues(defaultScheme);
  },
  resetItems: function resetItems() {
    this.model.set('items', this.getScheme().items);
  },
  resetCollection: function resetCollection() {
    var self = this,
        items = self.model.get('items');
    self.collection = new Backbone.Collection();

    _.each(items, function (item, key) {
      item.type = self.getType();
      item.key = key;
      self.collection.add(item);
    });
  },
  resetScheme: function resetScheme() {
    this.resetItems();
    this.resetCollection();
  },
  onSchemeChange: function onSchemeChange() {
    elementor.schemes.printSchemesStyle();
  },
  onChildviewValueChange: function onChildviewValueChange(childView, newValue) {
    this.ui.saveButton.removeProp('disabled');
    this.setSchemeValue(childView.model.get('key'), newValue);
  }
});
module.exports = PanelSchemeBaseView;

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/pages/schemes/colors.js":
/*!*********************************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/pages/schemes/colors.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var PanelSchemeBaseView = __webpack_require__(/*! elementor-panel/pages/schemes/base */ "../assets/dev/js/editor/regions/panel/pages/schemes/base.js"),
    PanelSchemeColorsView;

PanelSchemeColorsView = PanelSchemeBaseView.extend({
  ui: function ui() {
    var ui = PanelSchemeBaseView.prototype.ui.apply(this, arguments);
    ui.systemSchemes = '.elementor-panel-scheme-color-system-scheme';
    return ui;
  },
  events: function events() {
    var events = PanelSchemeBaseView.prototype.events.apply(this, arguments);
    events['click @ui.systemSchemes'] = 'onSystemSchemeClick';
    return events;
  },
  getType: function getType() {
    return 'color';
  },
  onSystemSchemeClick: function onSystemSchemeClick(event) {
    var $schemeClicked = jQuery(event.currentTarget),
        schemeName = $schemeClicked.data('schemeName'),
        scheme = elementor.config.system_schemes[this.getType()][schemeName].items;
    this.changeChildrenUIValues(scheme);
  }
});
module.exports = PanelSchemeColorsView;

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/pages/schemes/disabled.js":
/*!***********************************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/pages/schemes/disabled.js ***!
  \***********************************************************************/
/***/ ((module) => {

"use strict";


var PanelSchemeDisabledView;
PanelSchemeDisabledView = Marionette.ItemView.extend({
  template: '#tmpl-elementor-panel-schemes-disabled',
  id: 'elementor-panel-schemes-disabled',
  className: 'elementor-nerd-box',
  disabledTitle: '',
  templateHelpers: function templateHelpers() {
    return {
      disabledTitle: this.disabledTitle
    };
  }
});
module.exports = PanelSchemeDisabledView;

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/pages/schemes/items/base.js":
/*!*************************************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/pages/schemes/items/base.js ***!
  \*************************************************************************/
/***/ ((module) => {

"use strict";


var PanelSchemeItemView;
PanelSchemeItemView = Marionette.ItemView.extend({
  getTemplate: function getTemplate() {
    return Marionette.TemplateCache.get('#tmpl-elementor-panel-scheme-' + this.getUIType() + '-item');
  },
  className: function className() {
    return 'elementor-panel-scheme-item';
  }
});
module.exports = PanelSchemeItemView;

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/pages/schemes/items/color.js":
/*!**************************************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/pages/schemes/items/color.js ***!
  \**************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _colorPicker = _interopRequireDefault(__webpack_require__(/*! elementor-editor/utils/color-picker */ "../assets/dev/js/editor/utils/color-picker.js"));

var PanelSchemeItemView = __webpack_require__(/*! elementor-panel/pages/schemes/items/base */ "../assets/dev/js/editor/regions/panel/pages/schemes/items/base.js");

module.exports = PanelSchemeItemView.extend({
  getUIType: function getUIType() {
    return 'color';
  },
  ui: {
    pickerPlaceholder: '.elementor-panel-scheme-color-picker-placeholder'
  },
  changeUIValue: function changeUIValue(newValue) {
    this.colorPicker.picker.setColor(newValue);
  },
  onRender: function onRender() {
    var _this = this;

    this.colorPicker = new _colorPicker.default({
      picker: {
        el: this.ui.pickerPlaceholder[0],
        default: this.model.get('value')
      },
      onChange: function onChange() {
        _this.triggerMethod('value:change', _this.colorPicker.getColor());
      },
      onClear: function onClear() {
        _this.triggerMethod('value:change', '');
      }
    });
  },
  onBeforeDestroy: function onBeforeDestroy() {
    this.colorPicker.destroy();
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/pages/schemes/items/typography.js":
/*!*******************************************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/pages/schemes/items/typography.js ***!
  \*******************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var PanelSchemeItemView = __webpack_require__(/*! elementor-panel/pages/schemes/items/base */ "../assets/dev/js/editor/regions/panel/pages/schemes/items/base.js"),
    PanelSchemeTypographyView;

PanelSchemeTypographyView = PanelSchemeItemView.extend({
  getUIType: function getUIType() {
    return 'typography';
  },
  className: function className() {
    var classes = PanelSchemeItemView.prototype.className.apply(this, arguments);
    return classes + ' elementor-panel-box';
  },
  ui: {
    heading: '.elementor-panel-heading',
    allFields: '.elementor-panel-scheme-typography-item-field',
    inputFields: 'input.elementor-panel-scheme-typography-item-field',
    selectFields: 'select.elementor-panel-scheme-typography-item-field',
    selectFamilyFields: 'select.elementor-panel-scheme-typography-item-field[name="font_family"]'
  },
  events: {
    'input @ui.inputFields': 'onFieldChange',
    'change @ui.selectFields': 'onFieldChange',
    'click @ui.heading': 'toggleVisibility'
  },
  onRender: function onRender() {
    var self = this;
    this.ui.inputFields.add(this.ui.selectFields).each(function () {
      var $this = jQuery(this),
          name = $this.attr('name'),
          value = self.model.get('value')[name];
      $this.val(value);
    });
    this.ui.selectFamilyFields.select2({
      dir: elementorCommon.config.isRTL ? 'rtl' : 'ltr'
    });
  },
  toggleVisibility: function toggleVisibility() {
    this.$el.toggleClass('elementor-open');
  },
  changeUIValue: function changeUIValue(newValue) {
    this.ui.allFields.each(function () {
      var $this = jQuery(this),
          thisName = $this.attr('name'),
          newFieldValue = newValue[thisName];
      $this.val(newFieldValue).trigger('change');
    });
  },
  onFieldChange: function onFieldChange() {
    var currentValue = elementor.schemes.getSchemeValue('typography', this.model.get('key')).value;
    this.triggerMethod('value:change', currentValue);
  }
});
module.exports = PanelSchemeTypographyView;

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/pages/schemes/typography.js":
/*!*************************************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/pages/schemes/typography.js ***!
  \*************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var PanelSchemeBaseView = __webpack_require__(/*! elementor-panel/pages/schemes/base */ "../assets/dev/js/editor/regions/panel/pages/schemes/base.js"),
    PanelSchemeTypographyView;

PanelSchemeTypographyView = PanelSchemeBaseView.extend({
  getType: function getType() {
    return 'typography';
  }
});
module.exports = PanelSchemeTypographyView;

/***/ }),

/***/ "../assets/dev/js/editor/regions/panel/panel.js":
/*!******************************************************!*\
  !*** ../assets/dev/js/editor/regions/panel/panel.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var BaseRegion = __webpack_require__(/*! elementor-regions/base */ "../assets/dev/js/editor/regions/base.js");

module.exports = BaseRegion.extend({
  el: '#elementor-panel',
  getStorageKey: function getStorageKey() {
    return 'panel';
  },
  getDefaultStorage: function getDefaultStorage() {
    return {
      size: {
        width: ''
      }
    };
  },
  constructor: function constructor() {
    BaseRegion.prototype.constructor.apply(this, arguments);

    var PanelLayoutView = __webpack_require__(/*! elementor-regions/panel/layout */ "../assets/dev/js/editor/regions/panel/layout.js");

    this.show(new PanelLayoutView());
    this.resizable();
    this.setSize();
    this.listenTo(elementor.channels.dataEditMode, 'switch', this.onEditModeSwitched);
  },
  setSize: function setSize() {
    var savedWidth = this.storage.size.width;
    elementorCommon.elements.$body.css('--e-editor-panel-width', savedWidth);
  },
  resizable: function resizable() {
    var self = this;
    self.$el.resizable({
      handles: elementorCommon.config.isRTL ? 'w' : 'e',
      minWidth: 200,
      maxWidth: 680,
      start: function start() {
        elementor.$previewWrapper.addClass('ui-resizable-resizing');
      },
      stop: function stop(event, ui) {
        elementor.$previewWrapper.removeClass('ui-resizable-resizing');
        elementor.getPanelView().updateScrollbar();
        self.saveSize({
          width: ui.size.width + 'px'
        });
      },
      resize: function resize(event, ui) {
        elementorCommon.elements.$body.css('--e-editor-panel-width', ui.size.width + 'px');
        self.$el.css({
          width: '',
          // For RTL
          left: ''
        });
      }
    });
  },
  onEditModeSwitched: function onEditModeSwitched(activeMode) {
    if ('edit' !== activeMode) {
      return;
    }

    this.setSize();
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/regions/responsive-bar/responsive-bar.js":
/*!************************************************************************!*\
  !*** ../assets/dev/js/editor/regions/responsive-bar/responsive-bar.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _view = _interopRequireDefault(__webpack_require__(/*! ./view */ "../assets/dev/js/editor/regions/responsive-bar/view.js"));

var _default = /*#__PURE__*/function (_Marionette$Region) {
  (0, _inherits2.default)(_default, _Marionette$Region);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "initialize",
    value: function initialize() {
      var _this = this;

      this.show(new _view.default());
      elementor.panel.$el.on({
        resizestart: function resizestart() {
          return _this.onPanelResizeStart();
        },
        resizestop: function resizestop() {
          return _this.onPanelResizeStop();
        }
      });
    }
  }, {
    key: "onPanelResizeStart",
    value: function onPanelResizeStart() {
      this.$el.addClass('ui-resizable-resizing');
    }
  }, {
    key: "onPanelResizeStop",
    value: function onPanelResizeStop() {
      this.$el.removeClass('ui-resizable-resizing');
    }
  }]);
  return _default;
}(Marionette.Region);

exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/regions/responsive-bar/view.js":
/*!**************************************************************!*\
  !*** ../assets/dev/js/editor/regions/responsive-bar/view.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

var _parseInt2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/parse-int */ "../node_modules/@babel/runtime-corejs2/core-js/parse-int.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var View = /*#__PURE__*/function (_Marionette$ItemView) {
  (0, _inherits2.default)(View, _Marionette$ItemView);

  var _super = (0, _createSuper2.default)(View);

  function View() {
    (0, _classCallCheck2.default)(this, View);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(View, [{
    key: "getTemplate",
    value: function getTemplate() {
      return '#tmpl-elementor-templates-responsive-bar';
    }
  }, {
    key: "id",
    value: function id() {
      return 'e-responsive-bar';
    }
  }, {
    key: "ui",
    value: function ui() {
      var prefix = '#' + this.id();
      return {
        switcherInput: '.e-responsive-bar-switcher__option input',
        switcherLabel: '.e-responsive-bar-switcher__option',
        switcher: prefix + '-switcher',
        sizeInputWidth: prefix + '__input-width',
        sizeInputHeight: prefix + '__input-height',
        scaleValue: prefix + '-scale__value',
        scalePlusButton: prefix + '-scale__plus',
        scaleMinusButton: prefix + '-scale__minus',
        scaleResetButton: prefix + '-scale__reset',
        closeButton: prefix + '__close-button',
        breakpointSettingsButton: prefix + '__settings-button'
      };
    }
  }, {
    key: "events",
    value: function events() {
      return {
        'change @ui.switcherInput': 'onBreakpointSelected',
        'input @ui.sizeInputWidth': 'onSizeInputChange',
        'input @ui.sizeInputHeight': 'onSizeInputChange',
        'click @ui.scalePlusButton': 'onScalePlusButtonClick',
        'click @ui.scaleMinusButton': 'onScaleMinusButtonClick',
        'click @ui.scaleResetButton': 'onScaleResetButtonClick',
        'click @ui.closeButton': 'onCloseButtonClick',
        'click @ui.breakpointSettingsButton': 'onBreakpointSettingsOpen'
      };
    }
  }, {
    key: "initialize",
    value: function initialize() {
      this.listenTo(elementor.channels.deviceMode, 'change', this.onDeviceModeChange);
      this.listenTo(elementor.channels.responsivePreview, 'resize', this.onPreviewResize);
      this.listenTo(elementor.channels.deviceMode, 'close', this.resetScale);
    }
  }, {
    key: "addTipsyToIconButtons",
    value: function addTipsyToIconButtons() {
      this.ui.switcherLabel.add(this.ui.closeButton).add(this.ui.breakpointSettingsButton).tipsy({
        html: true,
        gravity: 'n',
        title: function title() {
          return jQuery(this).data('tooltip');
        }
      });
    }
  }, {
    key: "restoreLastValidPreviewSize",
    value: function restoreLastValidPreviewSize() {
      var lastSize = elementor.channels.responsivePreview.request('size');
      this.ui.sizeInputWidth.val(lastSize.width).tipsy({
        html: true,
        trigger: 'manual',
        gravity: 'n',
        title: function title() {
          return __('The value inserted isn\'t in the breakpoint boundaries', 'elementor');
        }
      });
      var tipsy = this.ui.sizeInputWidth.data('tipsy');
      tipsy.show();
      setTimeout(function () {
        return tipsy.hide();
      }, 3000);
    }
  }, {
    key: "autoScale",
    value: function autoScale() {
      var handlesWidth = 40 * this.scalePercentage / 100,
          previewWidth = elementor.$previewWrapper.width() - handlesWidth,
          iframeWidth = (0, _parseInt2.default)(elementor.$preview.css('--e-editor-preview-width')),
          iframeScaleWidth = iframeWidth * this.scalePercentage / 100;

      if (iframeScaleWidth > previewWidth) {
        var scalePercentage = previewWidth / iframeWidth * 100;
        this.setScalePercentage(scalePercentage);
      } else {
        this.setScalePercentage();
      }

      this.scalePreview();
    }
  }, {
    key: "scalePreview",
    value: function scalePreview() {
      var scale = this.scalePercentage / 100;
      elementor.$previewWrapper.css('--e-preview-scale', scale);
    }
  }, {
    key: "resetScale",
    value: function resetScale() {
      this.setScalePercentage();
      this.scalePreview();
    }
  }, {
    key: "setScalePercentage",
    value: function setScalePercentage() {
      var scalePercentage = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 100;
      this.scalePercentage = scalePercentage;
      this.ui.scaleValue.text((0, _parseInt2.default)(this.scalePercentage));
    }
  }, {
    key: "onRender",
    value: function onRender() {
      this.addTipsyToIconButtons();
      this.setScalePercentage();
    }
  }, {
    key: "onDeviceModeChange",
    value: function onDeviceModeChange() {
      var currentDeviceMode = elementor.channels.deviceMode.request('currentMode'),
          $currentDeviceSwitcherInput = this.ui.switcherInput.filter('[value=' + currentDeviceMode + ']');
      this.ui.switcherLabel.attr('aria-selected', false);
      $currentDeviceSwitcherInput.closest('label').attr('aria-selected', true);

      if (!$currentDeviceSwitcherInput.prop('checked')) {
        $currentDeviceSwitcherInput.prop('checked', true);
      }
    }
  }, {
    key: "onBreakpointSelected",
    value: function onBreakpointSelected(e) {
      var selectedDeviceMode = e.target.value;
      elementor.changeDeviceMode(selectedDeviceMode, false);
      this.autoScale();
    }
  }, {
    key: "onBreakpointSettingsOpen",
    value: function onBreakpointSettingsOpen() {
      var isWPPreviewMode = elementorCommon.elements.$body.hasClass('elementor-editor-preview');

      if (isWPPreviewMode) {
        elementor.exitPreviewMode();
      }

      var isInSettingsPanelActive = 'panel/global/menu' === elementor.documents.currentDocument.config.panel.default_route;

      if (isInSettingsPanelActive) {
        $e.run('panel/global/close');
        return;
      } //  Open Settings Panel for Global/Layout/Breakpoints Settings


      $e.run('editor/documents/switch', {
        id: elementor.config.kit_id,
        mode: 'autosave'
      }).then(function () {
        return $e.route('panel/global/settings-layout');
      }) // TODO: Replace with a standard routing solution once one is available
      .then(function () {
        return jQuery('.elementor-control-section_breakpoints').trigger('click');
      });
    }
  }, {
    key: "onPreviewResize",
    value: function onPreviewResize() {
      if (this.updatingPreviewSize) {
        return;
      }

      var size = elementor.channels.responsivePreview.request('size');
      this.ui.sizeInputWidth.val(Math.round(size.width));
      this.ui.sizeInputHeight.val(Math.round(size.height));
    }
  }, {
    key: "onCloseButtonClick",
    value: function onCloseButtonClick() {
      elementor.changeDeviceMode('desktop'); // Force exit if device mode is already desktop

      elementor.exitDeviceMode();
    }
  }, {
    key: "onSizeInputChange",
    value: function onSizeInputChange() {
      var _this = this;

      clearTimeout(this.restorePreviewSizeTimeout);
      var size = {
        width: this.ui.sizeInputWidth.val(),
        height: this.ui.sizeInputHeight.val()
      };
      var currentDeviceConstrains = elementor.getCurrentDeviceConstrains();

      if (size.width < currentDeviceConstrains.minWidth || size.width > currentDeviceConstrains.maxWidth) {
        this.restorePreviewSizeTimeout = setTimeout(function () {
          return _this.restoreLastValidPreviewSize();
        }, 1500);
        return;
      }

      this.updatingPreviewSize = true;
      setTimeout(function () {
        return _this.updatingPreviewSize = false;
      }, 300);
      elementor.updatePreviewSize(size);
      this.autoScale();
    }
  }, {
    key: "onScalePlusButtonClick",
    value: function onScalePlusButtonClick() {
      var scaleUp = 0 === this.scalePercentage % 10 ? this.scalePercentage + 10 : Math.ceil(this.scalePercentage / 10) * 10;

      if (scaleUp > 200) {
        return;
      }

      this.setScalePercentage(scaleUp);
      this.scalePreview();
    }
  }, {
    key: "onScaleMinusButtonClick",
    value: function onScaleMinusButtonClick() {
      var scaleDown = 0 === this.scalePercentage % 10 ? this.scalePercentage - 10 : Math.floor(this.scalePercentage / 10) * 10;

      if (scaleDown < 50) {
        return;
      }

      this.setScalePercentage(scaleDown);
      this.scalePreview();
    }
  }, {
    key: "onScaleResetButtonClick",
    value: function onScaleResetButtonClick() {
      this.resetScale();
    }
  }]);
  return View;
}(Marionette.ItemView);

exports.default = View;

/***/ }),

/***/ "../assets/dev/js/editor/utils/color-picker.js":
/*!*****************************************************!*\
  !*** ../assets/dev/js/editor/utils/color-picker.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");

__webpack_require__(/*! core-js/modules/es6.regexp.to-string.js */ "../node_modules/core-js/modules/es6.regexp.to-string.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var ColorPicker = /*#__PURE__*/function (_elementorModules$Mod) {
  (0, _inherits2.default)(ColorPicker, _elementorModules$Mod);

  var _super = (0, _createSuper2.default)(ColorPicker);

  function ColorPicker() {
    var _this;

    (0, _classCallCheck2.default)(this, ColorPicker);

    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }

    _this = _super.call.apply(_super, [this].concat(args));

    _this.createPicker();

    return _this;
  }

  (0, _createClass2.default)(ColorPicker, [{
    key: "getDefaultSettings",
    value: function getDefaultSettings() {
      return {
        picker: {
          theme: 'monolith',
          position: 'bottom-' + (elementorCommon.config.isRTL ? 'end' : 'start'),
          components: {
            opacity: true,
            hue: true,
            interaction: {
              input: true
            }
          }
        },
        classes: {
          active: 'elementor-active',
          pickerHeader: 'elementor-color-picker__header',
          pickerToolsContainer: 'e-color-picker__tools',
          pickerTool: 'e-control-tool',
          clearButton: 'e-color-picker__clear',
          plusIcon: 'eicon-plus'
        }
      };
    }
  }, {
    key: "createPicker",
    value: function createPicker() {
      var _this2 = this;

      var pickerSettings = this.getSettings('picker');
      pickerSettings.default = pickerSettings.default || null;
      this.picker = new Pickr(pickerSettings); // Set a default palette. It doesn't affect the selected value.

      this.picker.setColor(pickerSettings.default || '#020101');
      this.color = this.processColor();
      this.picker.on('change', function () {
        return _this2.onPickerChange();
      }).on('clear', function () {
        return _this2.onPickerClear();
      }).on('show', function () {
        return _this2.onPickerShow();
      });
      this.$pickerAppContainer = jQuery(this.picker.getRoot().app);
      this.createPickerHeader();
    }
  }, {
    key: "addTipsyToClearButton",
    value: function addTipsyToClearButton() {
      this.$clearButton.tipsy({
        title: function title() {
          return __('Clear', 'elementor');
        },
        gravity: function gravity() {
          return 's';
        }
      });
    }
  }, {
    key: "processColor",
    value: function processColor() {
      var color = this.picker.getColor();
      var colorRepresentation;

      if (1 === color.a) {
        colorRepresentation = color.toHEXA();
      } else {
        colorRepresentation = color.toRGBA();
      }

      return colorRepresentation.toString();
    }
  }, {
    key: "getColor",
    value: function getColor() {
      return this.color;
    }
  }, {
    key: "createPickerHeader",
    value: function createPickerHeader() {
      var _this$getSettings = this.getSettings(),
          classes = _this$getSettings.classes,
          $pickerHeader = jQuery('<div>', {
        class: classes.pickerHeader
      }).text(__('Color Picker', 'elementor')),
          $pickerToolsContainer = jQuery('<div>', {
        class: classes.pickerToolsContainer
      }),
          addButton = this.getSettings('addButton');

      this.$pickerToolsContainer = $pickerToolsContainer;

      if (addButton) {
        this.createAddButton();
      }

      this.createClearButton();
      $pickerToolsContainer.append(this.$clearButton, this.$addButton);
      $pickerHeader.append($pickerToolsContainer);
      this.$pickerAppContainer.prepend($pickerHeader);
    }
  }, {
    key: "createAddButton",
    value: function createAddButton() {
      var _this3 = this;

      var _this$getSettings2 = this.getSettings(),
          classes = _this$getSettings2.classes;

      this.$addButton = jQuery('<button>', {
        class: classes.pickerTool
      }).html(jQuery('<i>', {
        class: classes.plusIcon
      }));
      this.$addButton.on('click', function () {
        return _this3.onAddButtonClick();
      });
      this.$addButton.tipsy({
        title: function title() {
          return __('Create New Global Color', 'elementor');
        },
        gravity: function gravity() {
          return 's';
        }
      });
    } // Move the clear button from Pickr's default location into the Color Picker header.

  }, {
    key: "createClearButton",
    value: function createClearButton() {
      var _this4 = this;

      var _this$getSettings3 = this.getSettings(),
          classes = _this$getSettings3.classes;

      this.$clearButton = jQuery('<div>', {
        class: classes.clearButton + ' ' + classes.pickerTool
      }).html('<i class="eicon-undo"></i>');
      this.$clearButton.on('click', function () {
        return _this4.picker._clearColor();
      });
      this.addTipsyToClearButton();
    }
  }, {
    key: "destroy",
    value: function destroy() {
      this.picker.destroyAndRemove();
    } // TODO: CHECK IF THIS IS STILL NECESSARY

  }, {
    key: "fixTipsyForFF",
    value: function fixTipsyForFF($button) {
      // There's a bug in FireFox about hiding the tooltip after the button was clicked,
      // So let's force it to hide.
      $button.data('tipsy').hide();
    }
  }, {
    key: "introductionViewed",
    value: function introductionViewed() {
      return ColorPicker.droppingIntroductionViewed || elementor.config.user.introduction.colorPickerDropping;
    }
  }, {
    key: "toggleClearButtonState",
    value: function toggleClearButtonState(active) {
      this.$clearButton.toggleClass('e-control-tool-disabled', !active);
    }
  }, {
    key: "onPickerChange",
    value: function onPickerChange() {
      this.picker.applyColor();
      var newColor = this.processColor();

      if (newColor === this.color) {
        return;
      }

      this.color = newColor;
      var onChange = this.getSettings('onChange');

      if (onChange) {
        onChange();
      }
    }
  }, {
    key: "onPickerClear",
    value: function onPickerClear() {
      this.color = '';
      var onClear = this.getSettings('onClear');

      if (onClear) {
        onClear();
      }
    }
  }, {
    key: "onPickerShow",
    value: function onPickerShow() {
      var _this5 = this;

      var resultInput = this.picker.getRoot().interaction.result;
      setTimeout(function () {
        resultInput.select();
        _this5.picker._recalc = true;
      }, 100);
    }
  }, {
    key: "onAddButtonClick",
    value: function onAddButtonClick() {
      this.picker.hide();
      var onPickerAddButtonClick = this.getSettings('onAddButtonClick');

      if (onPickerAddButtonClick) {
        onPickerAddButtonClick();
      }

      this.fixTipsyForFF(this.$addButton);
    }
  }]);
  return ColorPicker;
}(elementorModules.Module);

exports.default = ColorPicker;

/***/ }),

/***/ "../assets/dev/js/editor/utils/conditions.js":
/*!***************************************************!*\
  !*** ../assets/dev/js/editor/utils/conditions.js ***!
  \***************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js"));

__webpack_require__(/*! core-js/modules/es6.regexp.match.js */ "../node_modules/core-js/modules/es6.regexp.match.js");

__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

var Conditions;

Conditions = function Conditions() {
  var self = this;

  this.compare = function (leftValue, rightValue, operator) {
    switch (operator) {
      /* eslint-disable eqeqeq */
      case '==':
        return leftValue == rightValue;

      case '!=':
        return leftValue != rightValue;

      /* eslint-enable eqeqeq */

      case '!==':
        return leftValue !== rightValue;

      case 'in':
        return -1 !== rightValue.indexOf(leftValue);

      case '!in':
        return -1 === rightValue.indexOf(leftValue);

      case 'contains':
        return -1 !== leftValue.indexOf(rightValue);

      case '!contains':
        return -1 === leftValue.indexOf(rightValue);

      case '<':
        return leftValue < rightValue;

      case '<=':
        return leftValue <= rightValue;

      case '>':
        return leftValue > rightValue;

      case '>=':
        return leftValue >= rightValue;

      default:
        return leftValue === rightValue;
    }
  };

  this.check = function (conditions, comparisonObject) {
    var isOrCondition = 'or' === conditions.relation;
    var conditionSucceed = !isOrCondition;
    jQuery.each(conditions.terms, function () {
      var term = this;
      var comparisonResult;

      if (term.terms) {
        comparisonResult = self.check(term, comparisonObject);
      } else {
        var _elementor$getCurrent, _elementor$getCurrent2;

        // A term consists of a control name to be examined, and a sub key if needed. For example, a term
        // can look like 'image_overlay[url]' (the 'url' is the sub key). Here we want to isolate the
        // condition name and the sub key, so later it can be retrieved and examined.
        var parsedName = term.name.match(/([\w-]+)(?:\[([\w-]+)])?/),
            conditionRealName = parsedName[1],
            conditionSubKey = parsedName[2],
            // We use null-safe operator since we're trying to get the current element, which is not always
        // exists, since it's only created when the specific element appears in the panel.
        placeholder = (_elementor$getCurrent = elementor.getCurrentElement()) === null || _elementor$getCurrent === void 0 ? void 0 : (_elementor$getCurrent2 = _elementor$getCurrent.container) === null || _elementor$getCurrent2 === void 0 ? void 0 : _elementor$getCurrent2.placeholders[conditionRealName]; // If a placeholder exists for the examined control, we check against it. In any other case, we
        // use the 'comparisonObject', which includes all values of the selected widget.

        var value = placeholder || comparisonObject[conditionRealName];

        if (comparisonObject.__dynamic__ && comparisonObject.__dynamic__[conditionRealName]) {
          value = comparisonObject.__dynamic__[conditionRealName];
        }

        if ('object' === (0, _typeof2.default)(value) && conditionSubKey) {
          value = value[conditionSubKey];
        }

        comparisonResult = undefined !== value && self.compare(value, term.value, term.operator);
      }

      if (isOrCondition) {
        if (comparisonResult) {
          conditionSucceed = true;
        }

        return !comparisonResult;
      }

      if (!comparisonResult) {
        return conditionSucceed = false;
      }
    });
    return conditionSucceed;
  };
};

module.exports = new Conditions();

/***/ }),

/***/ "../assets/dev/js/editor/utils/context-menu.js":
/*!*****************************************************!*\
  !*** ../assets/dev/js/editor/utils/context-menu.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

module.exports = elementorModules.Module.extend({
  getDefaultSettings: function getDefaultSettings() {
    return {
      actions: {},
      classes: {
        list: 'elementor-context-menu-list',
        group: 'elementor-context-menu-list__group',
        groupPrefix: 'elementor-context-menu-list__group-',
        item: 'elementor-context-menu-list__item',
        itemTypePrefix: 'elementor-context-menu-list__item-',
        itemTitle: 'elementor-context-menu-list__item__title',
        itemShortcut: 'elementor-context-menu-list__item__shortcut',
        iconShortcut: 'elementor-context-menu-list__item__icon',
        itemDisabled: 'elementor-context-menu-list__item--disabled',
        divider: 'elementor-context-menu-list__divider',
        hidden: 'elementor-hidden'
      }
    };
  },
  buildActionItem: function buildActionItem(action) {
    var self = this,
        classes = self.getSettings('classes'),
        $item = jQuery('<div>', {
      class: classes.item + ' ' + classes.itemTypePrefix + action.name
    }),
        $itemTitle = jQuery('<div>', {
      class: classes.itemTitle
    }).text(action.title),
        $itemIcon = jQuery('<div>', {
      class: classes.iconShortcut
    });

    if (action.icon) {
      $itemIcon.html(jQuery('<i>', {
        class: action.icon
      }));
    }

    $item.append($itemIcon, $itemTitle);

    if (action.shortcut) {
      var $itemShortcut = jQuery('<div>', {
        class: classes.itemShortcut
      }).html(action.shortcut);
      $item.append($itemShortcut);
    }

    if (action.callback) {
      $item.on('click', function () {
        self.runAction(action);
      });
    }

    action.$item = $item;
    return $item;
  },
  buildActionsList: function buildActionsList() {
    var self = this,
        classes = self.getSettings('classes'),
        groups = self.getSettings('groups'),
        $list = jQuery('<div>', {
      class: classes.list
    });
    groups.forEach(function (group) {
      var $group = jQuery('<div>', {
        class: classes.group + ' ' + classes.groupPrefix + group.name
      });
      group.actions.forEach(function (action) {
        $group.append(self.buildActionItem(action));
      });
      $list.append($group);
      group.$item = $group;
    });
    return $list;
  },
  toggleGroupVisibility: function toggleGroupVisibility(group, state) {
    group.$item.toggleClass(this.getSettings('classes.hidden'), !state);
  },
  toggleActionVisibility: function toggleActionVisibility(action, state) {
    action.$item.toggleClass(this.getSettings('classes.hidden'), !state);
  },
  toggleActionUsability: function toggleActionUsability(action, state) {
    action.$item.toggleClass(this.getSettings('classes.itemDisabled'), !state);
  },
  isActionEnabled: function isActionEnabled(action) {
    if (!action.callback && !action.groups) {
      return false;
    }

    return action.isEnabled ? action.isEnabled() : true;
  },
  runAction: function runAction(action) {
    if (!this.isActionEnabled(action)) {
      return;
    }

    action.callback();
    this.getModal().hide();
  },
  initModal: function initModal() {
    var modal;

    this.getModal = function () {
      if (!modal) {
        modal = elementorCommon.dialogsManager.createWidget('simple', {
          className: 'elementor-context-menu',
          message: this.buildActionsList(),
          iframe: elementor.$preview,
          effects: {
            hide: 'hide',
            show: 'show'
          },
          hide: {
            onOutsideContextMenu: true
          },
          position: {
            my: (elementorCommon.config.isRTL ? 'right' : 'left') + ' top',
            collision: 'fit'
          }
        });
      }

      return modal;
    };
  },
  show: function show(event) {
    var self = this,
        modal = self.getModal();
    modal.setSettings('position', {
      of: event
    });
    self.getSettings('groups').forEach(function (group) {
      var isGroupVisible = false !== group.isVisible;
      self.toggleGroupVisibility(group, isGroupVisible);

      if (isGroupVisible) {
        group.actions.forEach(function (action) {
          var isActionVisible = false !== action.isVisible;
          self.toggleActionVisibility(action, isActionVisible);

          if (isActionVisible) {
            self.toggleActionUsability(action, self.isActionEnabled(action));
          }
        });
      }
    });
    modal.show();
  },
  destroy: function destroy() {
    this.getModal().destroy();
  },
  onInit: function onInit() {
    this.initModal();
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/utils/controls-css-parser.js":
/*!************************************************************!*\
  !*** ../assets/dev/js/editor/utils/controls-css-parser.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

__webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");

__webpack_require__(/*! core-js/modules/es6.regexp.match.js */ "../node_modules/core-js/modules/es6.regexp.match.js");

__webpack_require__(/*! core-js/modules/es6.regexp.constructor.js */ "../node_modules/core-js/modules/es6.regexp.constructor.js");

var Stylesheet = __webpack_require__(/*! elementor-editor-utils/stylesheet */ "../assets/dev/js/editor/utils/stylesheet.js"),
    ControlsCSSParser;

ControlsCSSParser = elementorModules.ViewModule.extend({
  stylesheet: null,
  getDefaultSettings: function getDefaultSettings() {
    return {
      id: 0,
      context: null,
      settingsModel: null,
      dynamicParsing: {}
    };
  },
  getDefaultElements: function getDefaultElements() {
    var id = "elementor-style-".concat(this.getSettings('id'));
    var $stylesheet = elementor.$previewContents.find("#".concat(id));

    if (!$stylesheet.length) {
      $stylesheet = jQuery('<style>', {
        id: id
      });
    }

    return {
      $stylesheetElement: $stylesheet
    };
  },
  initStylesheet: function initStylesheet() {
    var _this = this;

    var breakpoints = elementorFrontend.config.responsive.activeBreakpoints;
    this.stylesheet = new Stylesheet();
    (0, _entries.default)(breakpoints).forEach(function (_ref) {
      var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
          breakpointName = _ref2[0],
          breakpointConfig = _ref2[1];

      _this.stylesheet.addDevice(breakpointName, breakpointConfig.value);
    });
  },
  addStyleRules: function addStyleRules(styleControls, values, controls, placeholders, replacements) {
    var _this2 = this;

    // If the current element contains dynamic values, parse these values
    var dynamicParsedValues = this.getSettings('settingsModel').parseDynamicSettings(values, this.getSettings('dynamicParsing'), styleControls);

    _.each(styleControls, function (control) {
      var _control$dynamic, _values$__dynamic__;

      if (control.styleFields && control.styleFields.length) {
        _this2.addRepeaterControlsStyleRules(values[control.name], control.styleFields, control.fields, placeholders, replacements);
      } // If a dynamic tag includes controls with CSS implementations, Take their CSS and apply it.


      if ((_control$dynamic = control.dynamic) !== null && _control$dynamic !== void 0 && _control$dynamic.active && (_values$__dynamic__ = values.__dynamic__) !== null && _values$__dynamic__ !== void 0 && _values$__dynamic__[control.name]) {
        _this2.addDynamicControlStyleRules(values.__dynamic__[control.name], control);
      }

      if (!control.selectors) {
        return;
      }

      var context = _this2.getSettings('context');

      var globalKeys;

      if (context) {
        globalKeys = context.model.get('settings').get('__globals__');
      }

      _this2.addControlStyleRules(control, dynamicParsedValues, controls, placeholders, replacements, globalKeys);
    });
  },
  addControlStyleRules: function addControlStyleRules(control, values, controls, placeholders, replacements, globalKeys) {
    var _this3 = this;

    var globalKey;

    if (globalKeys) {
      var controlGlobalKey = control.name;

      if (control.groupType) {
        controlGlobalKey = control.groupPrefix + control.groupType;
      }

      globalKey = globalKeys[controlGlobalKey];
    }

    var value;

    if (!globalKey) {
      value = this.getStyleControlValue(control, values);

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

    _.each(control.selectors, function (cssProperty, selector) {
      var outputCssProperty;

      if (globalKey) {
        var selectorGlobalValue = _this3.getSelectorGlobalValue(control, globalKey);

        if (selectorGlobalValue) {
          if ('font' === control.type) {
            $e.data.get(globalKey).then(function (response) {
              elementor.helpers.enqueueFont(response.data.value.typography_font_family);
            });
          } // This regex handles a case where a control's selector property value includes more than one CSS selector.
          // Example: 'selector' => 'background: {{VALUE}}; background-color: {{VALUE}};'.


          outputCssProperty = cssProperty.replace(/(:)[^;]+(;?)/g, '$1' + selectorGlobalValue + '$2');
        }
      } else {
        try {
          outputCssProperty = cssProperty.replace(/{{(?:([^.}]+)\.)?([^}| ]*)(?: *\|\| *(?:([^.}]+)\.)?([^}| ]*) *)*}}/g, function (originalPhrase, controlName, placeholder, fallbackControlName, fallbackValue) {
            var externalControlMissing = controlName && !controls[controlName];
            var parsedValue = '';

            if (!externalControlMissing) {
              parsedValue = _this3.parsePropertyPlaceholder(control, value, controls, values, placeholder, controlName);
            }

            if (!parsedValue && 0 !== parsedValue) {
              if (fallbackValue) {
                parsedValue = fallbackValue;
                var stringValueMatches = parsedValue.match(/^(['"])(.*)\1$/);

                if (stringValueMatches) {
                  parsedValue = stringValueMatches[2];
                } else if (!isFinite(parsedValue)) {
                  if (fallbackControlName && !controls[fallbackControlName]) {
                    return '';
                  }

                  parsedValue = _this3.parsePropertyPlaceholder(control, value, controls, values, fallbackValue, fallbackControlName);
                }
              }

              if (!parsedValue && 0 !== parsedValue) {
                if (externalControlMissing) {
                  return '';
                }

                throw '';
              }
            }

            if ('font' === control.type) {
              elementor.helpers.enqueueFont(parsedValue);
            }

            return parsedValue;
          });
        } catch (e) {
          return;
        }
      }

      if (_.isEmpty(outputCssProperty)) {
        return;
      }

      var devicePattern = /^(?:\([^)]+\)){1,2}/,
          deviceRules = selector.match(devicePattern),
          query = {};

      if (deviceRules) {
        deviceRules = deviceRules[0];
        selector = selector.replace(devicePattern, '');
        var pureDevicePattern = /\(([^)]+)\)/g,
            pureDeviceRules = [],
            matches;
        matches = pureDevicePattern.exec(deviceRules);

        while (matches) {
          pureDeviceRules.push(matches[1]);
          matches = pureDevicePattern.exec(deviceRules);
        }

        _.each(pureDeviceRules, function (deviceRule) {
          if ('desktop' === deviceRule) {
            return;
          }

          var device = deviceRule.replace(/\+$/, ''),
              endPoint = device === deviceRule ? 'max' : 'min';
          query[endPoint] = device;
        });
      }

      _.each(placeholders, function (placeholder, index) {
        // Check if it's a RegExp
        var regexp = placeholder.source ? placeholder.source : placeholder,
            placeholderPattern = new RegExp(regexp, 'g');
        selector = selector.replace(placeholderPattern, replacements[index]);
      });

      if (!(0, _keys.default)(query).length && control.responsive) {
        query = _.pick(elementorCommon.helpers.cloneObject(control.responsive), ['min', 'max']);

        if ('desktop' === query.max) {
          delete query.max;
        }
      }

      _this3.stylesheet.addRules(selector, outputCssProperty, query);
    });
  },
  parsePropertyPlaceholder: function parsePropertyPlaceholder(control, value, controls, values, placeholder, parserControlName) {
    if (parserControlName) {
      control = _.findWhere(controls, {
        name: parserControlName
      });
      value = this.getStyleControlValue(control, values);
    }

    return elementor.getControlView(control.type).getStyleValue(placeholder, value, control);
  },
  getStyleControlValue: function getStyleControlValue(control, values) {
    var _this$getSettings, _this$getSettings$con, _values$__globals__, _control$global;

    var container = (_this$getSettings = this.getSettings()) === null || _this$getSettings === void 0 ? void 0 : (_this$getSettings$con = _this$getSettings.context) === null || _this$getSettings$con === void 0 ? void 0 : _this$getSettings$con.container,
        isGlobalApplied = container === null || container === void 0 ? void 0 : container.isGlobalApplied(control.name),
        globalKey = ((_values$__globals__ = values.__globals__) === null || _values$__globals__ === void 0 ? void 0 : _values$__globals__[control.name]) || ((_control$global = control.global) === null || _control$global === void 0 ? void 0 : _control$global.default); // Set a global value only if it's is applied.

    if (isGlobalApplied && globalKey) {
      // When the control itself has no global value, but it refers to another control global value
      return this.getSelectorGlobalValue(control, globalKey);
    }

    var value = values[control.name];

    if (control.selectors_dictionary) {
      value = control.selectors_dictionary[value] || value;
    }

    if (!_.isNumber(value) && _.isEmpty(value)) {
      return;
    }

    return value;
  },
  getSelectorGlobalValue: function getSelectorGlobalValue(control, globalKey) {
    var globalArgs = $e.data.commandExtractArgs(globalKey),
        data = $e.data.getCache($e.components.get('globals'), globalArgs.command, globalArgs.args.query);

    if (!(data !== null && data !== void 0 && data.value)) {
      return;
    }

    var id = data.id;
    var value; // it's a global settings with additional controls in group.

    if (control.groupType) {
      // A regex containing all of the active breakpoints' prefixes ('_mobile', '_tablet' etc.).
      var responsivePrefixRegex = elementor.breakpoints.getActiveMatchRegex();
      var propertyName = control.name.replace(control.groupPrefix, '').replace(responsivePrefixRegex, '');

      if (!data.value[elementor.config.kit_config.typography_prefix + propertyName]) {
        return;
      }

      propertyName = propertyName.replace('_', '-');
      value = "var( --e-global-".concat(control.groupType, "-").concat(id, "-").concat(propertyName, " )");

      if (elementor.config.ui.defaultGenericFonts && control.groupPrefix + 'font_family' === control.name) {
        value += ", ".concat(elementor.config.ui.defaultGenericFonts);
      }
    } else {
      value = "var( --e-global-".concat(control.type, "-").concat(id, " )");
    }

    return value;
  },
  addRepeaterControlsStyleRules: function addRepeaterControlsStyleRules(repeaterValues, repeaterControlsItems, controls, placeholders, replacements) {
    var _this4 = this;

    repeaterControlsItems.forEach(function (item, index) {
      var itemModel = repeaterValues.models[index];

      _this4.addStyleRules(item, itemModel.attributes, controls, placeholders.concat(['{{CURRENT_ITEM}}']), replacements.concat(['.elementor-repeater-item-' + itemModel.get('_id')]));
    });
  },
  addDynamicControlStyleRules: function addDynamicControlStyleRules(value, control) {
    var self = this;
    elementor.dynamicTags.parseTagsText(value, control.dynamic, function (id, name, settings) {
      var tag = elementor.dynamicTags.createTag(id, name, settings);

      if (!tag) {
        return;
      }

      var tagSettingsModel = tag.model,
          styleControls = tagSettingsModel.getStyleControls();

      if (!styleControls.length) {
        return;
      }

      self.addStyleRules(tagSettingsModel.getStyleControls(), tagSettingsModel.attributes, tagSettingsModel.controls, ['{{WRAPPER}}'], ['#elementor-tag-' + id]);
    });
  },
  addStyleToDocument: function addStyleToDocument(position) {
    var $head = elementor.$previewContents.find('head');
    var insertMethod = 'append',
        $insertBy = $head;

    if (position) {
      var $targetElement = $head.children(position.of);

      if ($targetElement.length) {
        insertMethod = position.at;
        $insertBy = $targetElement;
      }
    }

    $insertBy[insertMethod](this.elements.$stylesheetElement);
    var extraCSS = elementor.hooks.applyFilters('editor/style/styleText', '', this.getSettings('context'));
    this.elements.$stylesheetElement.text(this.stylesheet + extraCSS);
  },
  removeStyleFromDocument: function removeStyleFromDocument() {
    this.elements.$stylesheetElement.remove();
  },
  onInit: function onInit() {
    elementorModules.ViewModule.prototype.onInit.apply(this, arguments);
    this.initStylesheet();
  }
});
module.exports = ControlsCSSParser;

/***/ }),

/***/ "../assets/dev/js/editor/utils/files-upload-handler.js":
/*!*************************************************************!*\
  !*** ../assets/dev/js/editor/utils/files-upload-handler.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var FilesUploadHandler = /*#__PURE__*/function () {
  function FilesUploadHandler() {
    (0, _classCallCheck2.default)(this, FilesUploadHandler);
  }

  (0, _createClass2.default)(FilesUploadHandler, null, [{
    key: "isUploadEnabled",
    value: function isUploadEnabled(mediaType) {
      var unfilteredFilesTypes = ['svg', 'application/json'];

      if (!unfilteredFilesTypes.includes(mediaType)) {
        return true;
      }

      return elementor.config.filesUpload.unfilteredFiles;
    }
  }, {
    key: "setUploadTypeCaller",
    value: function setUploadTypeCaller(frame) {
      frame.uploader.uploader.param('uploadTypeCaller', 'elementor-wp-media-upload');
    }
  }, {
    key: "getUnfilteredFilesNotEnabledDialog",
    value: function getUnfilteredFilesNotEnabledDialog(callback) {
      var onConfirm = function onConfirm() {
        elementorCommon.ajax.addRequest('enable_unfiltered_files_upload', {}, true);
        elementor.config.filesUpload.unfilteredFiles = true;
        callback();
      };

      return elementor.helpers.getSimpleDialog('e-enable-unfiltered-files-dialog', __('Enable Unfiltered File Uploads', 'elementor'), __('Before you enable unfiltered files upload, note that this kind of files include a security risk. Elementor does run a process to remove possible malicious code, but there is still risk involved when using such files.', 'elementor'), __('Enable', 'elementor'), onConfirm);
    }
  }]);
  return FilesUploadHandler;
}();

exports.default = FilesUploadHandler;

/***/ }),

/***/ "../assets/dev/js/editor/utils/heartbeat.js":
/*!**************************************************!*\
  !*** ../assets/dev/js/editor/utils/heartbeat.js ***!
  \**************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var sprintf = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["sprintf"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var Heartbeat = /*#__PURE__*/function () {
  function Heartbeat(document) {
    var _this = this;

    (0, _classCallCheck2.default)(this, Heartbeat);
    (0, _defineProperty2.default)(this, "modal", null);
    (0, _defineProperty2.default)(this, "document", null);
    (0, _defineProperty2.default)(this, "getModal", function () {
      if (!_this.modal) {
        _this.modal = _this.initModal();
      }

      return _this.modal;
    });
    this.document = document;
    this.onSend = this.onSend.bind(this);
    this.onTick = this.onTick.bind(this);
    this.onRefreshNonce = this.onRefreshNonce.bind(this);
    this.bindEvents();
    wp.heartbeat.connectNow();
  }

  (0, _createClass2.default)(Heartbeat, [{
    key: "initModal",
    value: function initModal() {
      var modal = elementorCommon.dialogsManager.createWidget('lightbox', {
        headerMessage: __('Take Over', 'elementor')
      });
      modal.addButton({
        name: 'go_back',
        text: __('Go Back', 'elementor'),
        callback: function callback() {
          parent.history.go(-1);
        }
      });
      modal.addButton({
        name: 'take_over',
        text: __('Take Over', 'elementor'),
        callback: function callback() {
          wp.heartbeat.enqueue('elementor_force_post_lock', true);
          wp.heartbeat.connectNow();
        }
      });
      return modal;
    }
  }, {
    key: "showLockMessage",
    value: function showLockMessage(lockedUser) {
      var modal = this.getModal();
      modal
      /* translators: %s: Locked user name. */
      .setMessage(sprintf(__('%s has taken over and is currently editing. Do you want to take over this page editing?', 'elementor'), lockedUser)).show();
    }
  }, {
    key: "onSend",
    value: function onSend(event, data) {
      data.elementor_post_lock = {
        post_ID: this.document.id
      };
    }
  }, {
    key: "onTick",
    value: function onTick(event, response) {
      if (response.locked_user) {
        if (this.document.editor.isChanged) {
          $e.run('document/save/auto', {
            document: this.document
          });
        }

        this.showLockMessage(response.locked_user);
      } else {
        this.getModal().hide();
      }

      elementorCommon.ajax.addRequestConstant('_nonce', response.elementorNonce);
    }
  }, {
    key: "onRefreshNonce",
    value: function onRefreshNonce(event, response) {
      var nonces = response['elementor-refresh-nonces'];

      if (nonces) {
        if (nonces.heartbeatNonce) {
          elementorCommon.ajax.addRequestConstant('_nonce', nonces.elementorNonce);
        }

        if (nonces.heartbeatNonce) {
          window.heartbeatSettings.nonce = nonces.heartbeatNonce;
        }
      }
    }
  }, {
    key: "bindEvents",
    value: function bindEvents() {
      jQuery(document).on({
        'heartbeat-send': this.onSend,
        'heartbeat-tick': this.onTick,
        'heartbeat-tick.wp-refresh-nonces': this.onRefreshNonce
      });
    }
  }, {
    key: "destroy",
    value: function destroy() {
      jQuery(document).off({
        'heartbeat-send': this.onSend,
        'heartbeat-tick': this.onTick,
        'heartbeat-tick.wp-refresh-nonces': this.onRefreshNonce
      });
    }
  }]);
  return Heartbeat;
}();

exports.default = Heartbeat;

/***/ }),

/***/ "../assets/dev/js/editor/utils/helpers.js":
/*!************************************************!*\
  !*** ../assets/dev/js/editor/utils/helpers.js ***!
  \************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _isArray = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js"));

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

__webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");

__webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");

__webpack_require__(/*! core-js/modules/es6.regexp.constructor.js */ "../node_modules/core-js/modules/es6.regexp.constructor.js");

__webpack_require__(/*! core-js/modules/es6.regexp.match.js */ "../node_modules/core-js/modules/es6.regexp.match.js");

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

__webpack_require__(/*! core-js/modules/es6.number.constructor.js */ "../node_modules/core-js/modules/es6.number.constructor.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

var _colorPicker = _interopRequireDefault(__webpack_require__(/*! ./color-picker */ "../assets/dev/js/editor/utils/color-picker.js"));

var _helperBc = _interopRequireDefault(__webpack_require__(/*! elementor-editor/document/helper-bc */ "../assets/dev/js/editor/document/helper-bc.js"));

var allowedHTMLWrapperTags = ['article', 'aside', 'div', 'footer', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'header', 'main', 'nav', 'p', 'section', 'span'];
module.exports = {
  document: _helperBc.default,
  _enqueuedFonts: {
    editor: [],
    preview: []
  },
  _enqueuedIconFonts: [],
  _inlineSvg: [],
  elementsHierarchy: {
    document: {
      section: {
        column: {
          widget: null,
          section: null
        }
      }
    }
  },
  enqueueCSS: function enqueueCSS(url, $document) {
    var selector = 'link[href="' + url + '"]',
        link = '<link href="' + url + '" rel="stylesheet" type="text/css">';

    if (!$document) {
      return;
    }

    if (!$document.find(selector).length) {
      $document.find('link').last().after(link);
    }
  },
  enqueuePreviewStylesheet: function enqueuePreviewStylesheet(url) {
    this.enqueueCSS(url, elementor.$previewContents);
  },
  enqueueEditorStylesheet: function enqueueEditorStylesheet(url) {
    this.enqueueCSS(url, elementorCommon.elements.$document);
  },

  /**
   * @deprecated 2.6.0
   */
  enqueueStylesheet: function enqueueStylesheet(url) {
    elementorCommon.helpers.hardDeprecated('elementor.helpers.enqueueStylesheet()', '2.6.0', 'elementor.helpers.enqueuePreviewStylesheet()');
    this.enqueuePreviewStylesheet(url);
  },
  fetchInlineSvg: function fetchInlineSvg(svgUrl) {
    var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
    fetch(svgUrl).then(function (response) {
      return response.ok ? response.text() : '';
    }).then(function (data) {
      if (callback) {
        callback(data);
      }
    });
  },
  getInlineSvg: function getInlineSvg(value, view) {
    if (!value.id) {
      return;
    }

    if (this._inlineSvg.hasOwnProperty(value.id)) {
      return this._inlineSvg[value.id];
    }

    var self = this;
    this.fetchInlineSvg(value.url, function (data) {
      if (data) {
        self._inlineSvg[value.id] = data; //$( data ).find( 'svg' )[ 0 ].outerHTML;

        if (view) {
          view.render();
        }

        elementor.channels.editor.trigger('svg:insertion', data, value.id);
      }
    });
  },
  enqueueIconFonts: function enqueueIconFonts(iconType) {
    var _this = this;

    if (-1 !== this._enqueuedIconFonts.indexOf(iconType) || !!elementor.config['icons_update_needed']) {
      return;
    }

    var iconSetting = this.getIconLibrarySettings(iconType);

    if (!iconSetting) {
      return;
    }

    if (iconSetting.enqueue) {
      iconSetting.enqueue.forEach(function (assetURL) {
        _this.enqueuePreviewStylesheet(assetURL);

        _this.enqueueEditorStylesheet(assetURL);
      });
    }

    if (iconSetting.url) {
      this.enqueuePreviewStylesheet(iconSetting.url);
      this.enqueueEditorStylesheet(iconSetting.url);
    }

    this._enqueuedIconFonts.push(iconType);

    elementor.channels.editor.trigger('fontIcon:insertion', iconType, iconSetting);
  },
  getIconLibrarySettings: function getIconLibrarySettings(iconType) {
    var iconSetting = elementor.config.icons.libraries.filter(function (library) {
      return iconType === library.name;
    });

    if (iconSetting[0] && iconSetting[0].name) {
      return iconSetting[0];
    }

    return false;
  },

  /**
   *
   * @param view - view to refresh if needed
   * @param icon - icon control data
   * @param attributes - default {} - attributes to attach to rendered html tag
   * @param tag - default i - html tag to render
   * @param returnType - default value - retrun type
   * @returns {string|boolean|*}
   */
  renderIcon: function renderIcon(view, icon) {
    var attributes = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
    var tag = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 'i';
    var returnType = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 'value';

    if (!icon || !icon.library) {
      if ('object' === returnType) {
        return {
          rendered: false
        };
      }

      return;
    }

    var iconType = icon.library,
        iconValue = icon.value;

    if ('svg' === iconType) {
      if ('panel' === returnType) {
        return '<img src="' + iconValue.url + '">';
      }

      return {
        rendered: true,
        value: this.getInlineSvg(iconValue, view)
      };
    }

    var iconSettings = this.getIconLibrarySettings(iconType);

    if (iconSettings && !iconSettings.hasOwnProperty('isCustom')) {
      this.enqueueIconFonts(iconType);

      if ('panel' === returnType) {
        return '<' + tag + ' class="' + iconValue + '"></' + tag + '>';
      }

      var tagUniqueID = tag + this.getUniqueID();
      view.addRenderAttribute(tagUniqueID, attributes);
      view.addRenderAttribute(tagUniqueID, 'class', iconValue);
      var htmlTag = '<' + tag + ' ' + view.getRenderAttributeString(tagUniqueID) + '></' + tag + '>';

      if ('object' === returnType) {
        return {
          rendered: true,
          value: htmlTag
        };
      }

      return htmlTag;
    }

    elementor.channels.editor.trigger('Icon:insertion', iconType, iconValue, attributes, tag, view);

    if ('object' === returnType) {
      return {
        rendered: false
      };
    }
  },
  isIconMigrated: function isIconMigrated(settings, controlName) {
    return settings.__fa4_migrated && settings.__fa4_migrated[controlName];
  },
  fetchFa4ToFa5Mapping: function fetchFa4ToFa5Mapping() {
    var storageKey = 'fa4Tofa5Mapping';
    var mapping = elementorCommon.storage.get(storageKey);

    if (!mapping) {
      jQuery.getJSON(elementor.config.fa4_to_fa5_mapping_url, function (data) {
        mapping = data;
        elementorCommon.storage.set(storageKey, data);
      });
    }

    return mapping;
  },
  mapFa4ToFa5: function mapFa4ToFa5(fa4Value) {
    var mapping = this.fetchFa4ToFa5Mapping();

    if (mapping[fa4Value]) {
      return mapping[fa4Value];
    } // every thing else is converted to solid


    return {
      value: 'fas' + fa4Value.replace('fa ', ' '),
      library: 'fa-solid'
    };
  },
  // The target parameter = 'editor'/'preview'. Defaults to 'preview' for backwards compatibility.
  enqueueFont: function enqueueFont(font) {
    var target = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'preview';

    if ($e.devTools) {
      $e.devTools.log.info("enqueueFont font: '".concat(font, "', target: '").concat(target, "'"));
    }

    if (-1 !== this._enqueuedFonts[target].indexOf(font)) {
      return;
    }

    var fontType = elementor.config.controls.font.options[font],
        subsets = {
      ru_RU: 'cyrillic',
      uk: 'cyrillic',
      bg_BG: 'cyrillic',
      vi: 'vietnamese',
      el: 'greek',
      he_IL: 'hebrew'
    };
    var fontUrl;

    switch (fontType) {
      case 'googlefonts':
        fontUrl = 'https://fonts.googleapis.com/css?family=' + font + ':100,100italic,200,200italic,300,300italic,400,400italic,500,500italic,600,600italic,700,700italic,800,800italic,900,900italic';

        if (subsets[elementor.config.locale]) {
          fontUrl += '&subset=' + subsets[elementor.config.locale];
        }

        break;

      case 'earlyaccess':
        var fontLowerString = font.replace(/\s+/g, '').toLowerCase();
        fontUrl = 'https://fonts.googleapis.com/earlyaccess/' + fontLowerString + '.css';
        break;
    }

    if (!_.isEmpty(fontUrl)) {
      if ('editor' === target) {
        // TODO: Find better solution, temporary fix, covering issue: 'fonts does not rendered in global styles'.
        this.enqueueCSS(fontUrl, elementorCommon.elements.$document);
      } else {
        this.enqueueCSS(fontUrl, elementor.$previewContents);
      }
    }

    this._enqueuedFonts[target].push(font);

    elementor.channels.editor.trigger('font:insertion', fontType, font);
  },
  resetEnqueuedFontsCache: function resetEnqueuedFontsCache() {
    this._enqueuedFonts = {
      editor: [],
      preview: []
    };
    this._enqueuedIconFonts = [];
  },
  getElementChildType: function getElementChildType(elementType, container) {
    var _this2 = this;

    if (!container) {
      container = this.elementsHierarchy;
    }

    if (undefined !== container[elementType]) {
      if (jQuery.isPlainObject(container[elementType])) {
        return (0, _keys.default)(container[elementType]);
      }

      return null;
    }

    var result = null;
    jQuery.each(container, function (index, type) {
      if (!jQuery.isPlainObject(type)) {
        return;
      }

      var childType = _this2.getElementChildType(elementType, type);

      if (childType) {
        result = childType;
        return false;
      }
    });
    return result;
  },
  getUniqueID: function getUniqueID() {
    elementorCommon.helpers.softDeprecated('elementor.helpers.getUniqueID()', '3.0.0', 'elementorCommon.helpers.getUniqueId()');
    return elementorCommon.helpers.getUniqueId();
  },
  getSocialNetworkNameFromIcon: function getSocialNetworkNameFromIcon(iconsControl, fallbackControl) {
    var toUpperCase = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
    var migrated = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;
    var withIcon = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;
    var social = '',
        icon = '';

    if (fallbackControl && !migrated) {
      social = fallbackControl.replace('fa fa-', '');
      icon = '<i class="' + fallbackControl + '"></i>';
    } else if (iconsControl.value && 'svg' !== iconsControl.library) {
      social = iconsControl.value.split(' ')[1];

      if (!social) {
        social = '';
      } else {
        social = social.replace('fa-', '');
      }

      icon = this.renderIcon(null, iconsControl, {}, 'i', 'panel');
    } else {
      icon = this.renderIcon(null, iconsControl, {}, 'i', 'panel');
    }

    if ('' !== social && toUpperCase) {
      social = social.split('-').join(' ');
      social = social.replace(/\b\w/g, function (letter) {
        return letter.toUpperCase();
      });
    }

    social = elementor.hooks.applyFilters('elementor/social_icons/network_name', social, iconsControl, fallbackControl, toUpperCase, withIcon);

    if (withIcon) {
      social = icon + ' ' + social;
    }

    return social;
  },
  getSimpleDialog: function getSimpleDialog(id, title, message, confirmString, onConfirm) {
    return elementorCommon.dialogsManager.createWidget('confirm', {
      id: id,
      headerMessage: title,
      message: message,
      position: {
        my: 'center center',
        at: 'center center'
      },
      strings: {
        confirm: confirmString,
        cancel: __('Cancel', 'elementor')
      },
      onConfirm: onConfirm
    });
  },
  maybeDisableWidget: function maybeDisableWidget() {
    if (!elementor.config['icons_update_needed']) {
      return false;
    }

    var elementView = elementor.channels.panelElements.request('element:selected'),
        widgetType = elementView.model.get('widgetType'),
        widgetData = elementor.widgetsCache[widgetType],
        hasControlOfType = function hasControlOfType(controls, type) {
      var has = false;
      jQuery.each(controls, function (controlName, controlData) {
        if (type === controlData.type) {
          has = true;
          return false;
        }

        if (controlData.is_repeater) {
          has = hasControlOfType(controlData.fields, type);

          if (has) {
            return false;
          }
        }
      });
      return has;
    };

    if (widgetData) {
      var hasIconsControl = hasControlOfType(widgetData.controls, 'icons');

      if (hasIconsControl) {
        var onConfirm = function onConfirm() {
          window.location.href = elementor.config.tools_page_link + '&redirect_to=' + encodeURIComponent(document.location.href) + '#tab-fontawesome4_migration';
        };

        elementor.helpers.getSimpleDialog('elementor-enable-fa5-dialog', __('Elementor\'s New Icon Library', 'elementor'), __('Elementor v2.6 includes an upgrade from Font Awesome 4 to 5. In order to continue using icons, be sure to click "Update".', 'elementor') + ' <a href="https://go.elementor.com/fontawesome-migration/" target="_blank">' + __('Learn More', 'elementor') + '</a>', __('Update', 'elementor'), onConfirm).show();
        return true;
      }
    }

    return false;
  },

  /*
  * @deprecated 2.0.0
  */
  stringReplaceAll: function stringReplaceAll(string, replaces) {
    var re = new RegExp((0, _keys.default)(replaces).join('|'), 'gi');
    return string.replace(re, function (matched) {
      return replaces[matched];
    });
  },
  isActiveControl: function isActiveControl(controlModel, values) {
    var _controlModel$get, _controlModel$get2;

    var condition = controlModel.condition || ((_controlModel$get = controlModel.get) === null || _controlModel$get === void 0 ? void 0 : _controlModel$get.call(controlModel, 'condition'));
    var conditions = controlModel.conditions || ((_controlModel$get2 = controlModel.get) === null || _controlModel$get2 === void 0 ? void 0 : _controlModel$get2.call(controlModel, 'conditions')); // If there is a 'condition' format, convert it to a 'conditions' format.

    if (condition) {
      var terms = [];
      (0, _entries.default)(condition).forEach(function (_ref) {
        var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
            conditionName = _ref2[0],
            conditionValue = _ref2[1];

        // Here we want to convert the 'condition' format to a 'conditions' format. The first step is to
        // isolate the term from the negative operator if exists. For example, a condition format can look
        // like 'selected_icon[value]!', so we examine this term with a negative connotation.
        var conditionNameParts = conditionName.match(/([\w-]+(?:\[[\w-]+])?)?(!?)$/i),
            conditionRealName = conditionNameParts[1],
            isNegativeCondition = !!conditionNameParts[2],
            controlValue = values[conditionRealName];
        var operator;

        if ((0, _isArray.default)(conditionValue) && conditionValue.length) {
          operator = isNegativeCondition ? '!in' : 'in';
        } else if ((0, _isArray.default)(controlValue) && controlValue.length) {
          operator = isNegativeCondition ? '!contains' : 'contains';
        } else if (isNegativeCondition) {
          operator = '!==';
        }

        terms.push({
          name: conditionRealName,
          operator: operator,
          value: conditionValue
        });
      });
      conditions = {
        relation: 'and',
        terms: conditions ? terms.concat(conditions) : terms
      };
    }

    return !(conditions && !elementor.conditions.check(conditions, values));
  },
  cloneObject: function cloneObject(object) {
    elementorCommon.helpers.hardDeprecated('elementor.helpers.cloneObject', '2.3.0', 'elementorCommon.helpers.cloneObject');
    return elementorCommon.helpers.cloneObject(object);
  },
  disableElementEvents: function disableElementEvents($element) {
    $element.each(function () {
      var currentPointerEvents = this.style.pointerEvents;

      if ('none' === currentPointerEvents) {
        return;
      }

      jQuery(this).data('backup-pointer-events', currentPointerEvents).css('pointer-events', 'none');
    });
  },
  enableElementEvents: function enableElementEvents($element) {
    $element.each(function () {
      var $this = jQuery(this),
          backupPointerEvents = $this.data('backup-pointer-events');

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

      $this.removeData('backup-pointer-events').css('pointer-events', backupPointerEvents);
    });
  },
  wpColorPicker: function wpColorPicker($element) {
    elementorCommon.helpers.deprecatedMethod('elementor.helpers.wpColorPicker()', '2.8.0', 'new ColorPicker()');
    return new _colorPicker.default({
      picker: {
        el: $element
      }
    });
  },
  isInViewport: function isInViewport(element, html) {
    var rect = element.getBoundingClientRect();
    html = html || document.documentElement;
    return rect.top >= 0 && rect.left >= 0 && rect.bottom <= (window.innerHeight || html.clientHeight) && rect.right <= (window.innerWidth || html.clientWidth);
  },
  scrollToView: function scrollToView($element, timeout, $parent) {
    if (undefined === timeout) {
      timeout = 500;
    }

    var $scrolled = $parent;
    var $elementorFrontendWindow = elementorFrontend.elements.$window;

    if (!$parent) {
      $parent = $elementorFrontendWindow;
      $scrolled = elementor.$previewContents.find('html, body');
    }

    setTimeout(function () {
      // Sometimes element removed during the timeout.
      if (!$element[0].isConnected) {
        return;
      }

      var parentHeight = $parent.height(),
          parentScrollTop = $parent.scrollTop(),
          elementTop = $parent === $elementorFrontendWindow ? $element.offset().top : $element[0].offsetTop,
          topToCheck = elementTop - parentScrollTop;

      if (topToCheck > 0 && topToCheck < parentHeight) {
        return;
      }

      var scrolling = elementTop - parentHeight / 2;
      $scrolled.stop(true).animate({
        scrollTop: scrolling
      }, 1000);
    }, timeout);
  },
  getElementInlineStyle: function getElementInlineStyle($element, properties) {
    var style = {},
        elementStyle = $element[0].style;
    properties.forEach(function (property) {
      style[property] = undefined !== elementStyle[property] ? elementStyle[property] : '';
    });
    return style;
  },
  cssWithBackup: function cssWithBackup($element, backupState, rules) {
    var cssBackup = this.getElementInlineStyle($element, (0, _keys.default)(rules));
    $element.data('css-backup-' + backupState, cssBackup).css(rules);
  },
  recoverCSSBackup: function recoverCSSBackup($element, backupState) {
    var backupKey = 'css-backup-' + backupState;
    $element.css($element.data(backupKey));
    $element.removeData(backupKey);
  },
  elementSizeToUnit: function elementSizeToUnit($element, size, unit) {
    var window = elementorFrontend.elements.window;

    switch (unit) {
      case '%':
        size = size / ($element.offsetParent().width() / 100);
        break;

      case 'vw':
        size = size / (window.innerWidth / 100);
        break;

      case 'vh':
        size = size / (window.innerHeight / 100);
    }

    return Math.round(size * 1000) / 1000;
  },
  compareVersions: function compareVersions(versionA, versionB, operator) {
    var prepareVersion = function prepareVersion(version) {
      version = version + '';
      return version.replace(/[^\d.]+/, '.-1.');
    };

    versionA = prepareVersion(versionA);
    versionB = prepareVersion(versionB);

    if (versionA === versionB) {
      return !operator || /^={2,3}$/.test(operator);
    }

    var versionAParts = versionA.split('.').map(Number),
        versionBParts = versionB.split('.').map(Number),
        longestVersionParts = Math.max(versionAParts.length, versionBParts.length);

    for (var i = 0; i < longestVersionParts; i++) {
      var valueA = versionAParts[i] || 0,
          valueB = versionBParts[i] || 0;

      if (valueA !== valueB) {
        return elementor.conditions.compare(valueA, valueB, operator);
      }
    }
  },
  getModelLabel: function getModelLabel(model) {
    var result;

    if (!(model instanceof Backbone.Model)) {
      model = new Backbone.Model(model);
    }

    if (model.get('labelSuffix')) {
      result = model.get('title') + ' ' + model.get('labelSuffix');
    } else if ('global' === model.get('widgetType')) {
      if (model.getTitle) {
        result = model.getTitle();
      }
    }

    if (!result) {
      result = elementor.getElementData(model).title;
    }

    return result;
  },
  hasPro: function hasPro() {
    return !!window.elementorPro;
  },

  /**
   * Function validateHTMLTag().
   *
   * Validate an HTML tag against a safe allowed list.
   *
   * @param {string} tag
   *
   * @returns {string}
   */
  validateHTMLTag: function validateHTMLTag(tag) {
    return allowedHTMLWrapperTags.includes(tag.toLowerCase()) ? tag : 'div';
  }
};

/***/ }),

/***/ "../assets/dev/js/editor/utils/images-manager.js":
/*!*******************************************************!*\
  !*** ../assets/dev/js/editor/utils/images-manager.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var ImagesManager;

ImagesManager = function ImagesManager() {
  var self = this;
  var cache = {};
  var debounceDelay = 300;
  var registeredItems = [];

  var getNormalizedSize = function getNormalizedSize(image) {
    var size,
        imageSize = image.size;

    if ('custom' === imageSize) {
      var customDimension = image.dimension;

      if (customDimension.width || customDimension.height) {
        size = 'custom_' + customDimension.width + 'x' + customDimension.height;
      } else {
        return 'full';
      }
    } else {
      size = imageSize;
    }

    return size;
  };

  var viewsToUpdate = {};

  self.updateOnReceiveImage = function () {
    var elementView = elementor.getPanelView().getCurrentPageView().getOption('editedElementView');
    elementView.$el.addClass('elementor-loading'); // Add per cid for multiple images in a single view.

    viewsToUpdate[elementView.cid] = elementView;
    elementor.channels.editor.once('imagesManager:detailsReceived', function () {
      if (!_.isEmpty(viewsToUpdate)) {
        _(viewsToUpdate).each(function (view) {
          view.render();
          view.$el.removeClass('elementor-loading');
        });
      }

      viewsToUpdate = {};
    });
  };

  self.getImageUrl = function (image) {
    // Register for AJAX checking
    self.registerItem(image);
    var imageUrl = self.getItem(image); // If it's not in cache, like a new dropped widget or a custom size - get from settings

    if (!imageUrl) {
      if ('custom' === image.size) {
        if ($e.routes.isPartOf('panel/editor') && image.model) {
          self.updateOnReceiveImage();
        }

        return;
      } // If it's a new dropped widget


      imageUrl = image.url;
    }

    return imageUrl;
  };

  self.getItem = function (image) {
    var size = getNormalizedSize(image),
        id = image.id;

    if (!size) {
      return false;
    }

    if (cache[id] && cache[id][size]) {
      return cache[id][size];
    }

    return false;
  };

  self.registerItem = function (image) {
    if ('' === image.id) {
      // It's a new dropped widget
      return;
    }

    if (self.getItem(image)) {
      // It's already in cache
      return;
    }

    registeredItems.push(image);
    self.debounceGetRemoteItems();
  };

  self.getRemoteItems = function () {
    var requestedItems = [],
        registeredItemsLength = (0, _keys.default)(registeredItems).length,
        image,
        index; // It's one item, so we can render it from remote server

    if (0 === registeredItemsLength) {
      return;
    }

    for (index in registeredItems) {
      image = registeredItems[index];
      var size = getNormalizedSize(image),
          id = image.id,
          isFirstTime = !cache[id] || 0 === (0, _keys.default)(cache[id]).length;
      requestedItems.push({
        id: id,
        size: size,
        is_first_time: isFirstTime
      });
    }

    elementorCommon.ajax.send('get_images_details', {
      data: {
        items: requestedItems
      },
      success: function success(data) {
        var imageId, imageSize;

        for (imageId in data) {
          if (!cache[imageId]) {
            cache[imageId] = {};
          }

          for (imageSize in data[imageId]) {
            cache[imageId][imageSize] = data[imageId][imageSize];
          }
        }

        registeredItems = [];
        elementor.channels.editor.trigger('imagesManager:detailsReceived', data);
      }
    });
  };

  self.debounceGetRemoteItems = _.debounce(self.getRemoteItems, debounceDelay);
};

module.exports = new ImagesManager();

/***/ }),

/***/ "../assets/dev/js/editor/utils/jquery-html5-dnd.js":
/*!*********************************************************!*\
  !*** ../assets/dev/js/editor/utils/jquery-html5-dnd.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

__webpack_require__(/*! core-js/modules/es6.regexp.match.js */ "../node_modules/core-js/modules/es6.regexp.match.js");

__webpack_require__(/*! core-js/modules/es6.array.slice.js */ "../node_modules/core-js/modules/es6.array.slice.js");

var _stringify = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/json/stringify */ "../node_modules/@babel/runtime-corejs2/core-js/json/stringify.js"));

/**
 * HTML5 - Drag and Drop
 */
(function ($) {
  var hasFullDataTransferSupport = function hasFullDataTransferSupport(event) {
    try {
      event.originalEvent.dataTransfer.setData('test', 'test');
      event.originalEvent.dataTransfer.clearData('test');
      return true;
    } catch (e) {
      return false;
    }
  };

  var Draggable = function Draggable(userSettings) {
    var self = this,
        settings = {},
        elementsCache = {},
        defaultSettings = {
      element: '',
      groups: null,
      onDragStart: null,
      onDragEnd: null
    };

    var initSettings = function initSettings() {
      $.extend(true, settings, defaultSettings, userSettings);
    };

    var initElementsCache = function initElementsCache() {
      elementsCache.$element = $(settings.element);
    };

    var buildElements = function buildElements() {
      elementsCache.$element.attr('draggable', true);
    };

    var onDragEnd = function onDragEnd(event) {
      if ('function' === typeof settings.onDragEnd) {
        settings.onDragEnd.call(elementsCache.$element, event, self);
      }
    };

    var onDragStart = function onDragStart(event) {
      var groups = settings.groups || [],
          dataContainer = {
        groups: groups
      };

      if (hasFullDataTransferSupport(event)) {
        event.originalEvent.dataTransfer.setData((0, _stringify.default)(dataContainer), true);
      }

      if ('function' === typeof settings.onDragStart) {
        settings.onDragStart.call(elementsCache.$element, event, self);
      }
    };

    var attachEvents = function attachEvents() {
      elementsCache.$element.on('dragstart', onDragStart).on('dragend', onDragEnd);
    };

    var init = function init() {
      initSettings();
      initElementsCache();
      buildElements();
      attachEvents();
    };

    this.destroy = function () {
      elementsCache.$element.off('dragstart', onDragStart);
      elementsCache.$element.removeAttr('draggable');
    };

    init();
  };

  var Droppable = function Droppable(userSettings) {
    var self = this,
        settings = {},
        elementsCache = {},
        currentElement,
        currentSide,
        defaultSettings = {
      element: '',
      items: '>',
      horizontalSensitivity: '10%',
      axis: ['vertical', 'horizontal'],
      placeholder: true,
      currentElementClass: 'html5dnd-current-element',
      placeholderClass: 'html5dnd-placeholder',
      hasDraggingOnChildClass: 'html5dnd-has-dragging-on-child',
      groups: null,
      isDroppingAllowed: null,
      onDragEnter: null,
      onDragging: null,
      onDropping: null,
      onDragLeave: null
    };

    var initSettings = function initSettings() {
      $.extend(settings, defaultSettings, userSettings);
    };

    var initElementsCache = function initElementsCache() {
      elementsCache.$element = $(settings.element);
      elementsCache.$placeholder = $('<div>', {
        class: settings.placeholderClass
      });
    };

    var hasHorizontalDetection = function hasHorizontalDetection() {
      return -1 !== settings.axis.indexOf('horizontal');
    };

    var hasVerticalDetection = function hasVerticalDetection() {
      return -1 !== settings.axis.indexOf('vertical');
    };

    var checkHorizontal = function checkHorizontal(offsetX, elementWidth) {
      var isPercentValue, sensitivity;

      if (!hasHorizontalDetection()) {
        return false;
      }

      if (!hasVerticalDetection()) {
        return offsetX > elementWidth / 2 ? 'right' : 'left';
      }

      sensitivity = settings.horizontalSensitivity.match(/\d+/);

      if (!sensitivity) {
        return false;
      }

      sensitivity = sensitivity[0];
      isPercentValue = /%$/.test(settings.horizontalSensitivity);

      if (isPercentValue) {
        sensitivity = elementWidth / sensitivity;
      }

      if (offsetX > elementWidth - sensitivity) {
        return 'right';
      } else if (offsetX < sensitivity) {
        return 'left';
      }

      return false;
    };

    var setSide = function setSide(event) {
      var $element = $(currentElement),
          elementHeight = $element.outerHeight() - elementsCache.$placeholder.outerHeight(),
          elementWidth = $element.outerWidth();
      event = event.originalEvent;
      currentSide = checkHorizontal(event.offsetX, elementWidth);

      if (currentSide) {
        return;
      }

      if (!hasVerticalDetection()) {
        currentSide = null;
        return;
      }

      var elementPosition = currentElement.getBoundingClientRect();
      currentSide = event.clientY > elementPosition.top + elementHeight / 2 ? 'bottom' : 'top';
    };

    var insertPlaceholder = function insertPlaceholder() {
      if (!settings.placeholder) {
        return;
      }

      var insertMethod = 'top' === currentSide ? 'prependTo' : 'appendTo';
      elementsCache.$placeholder[insertMethod](currentElement);
    };

    var isDroppingAllowed = function isDroppingAllowed(event) {
      var dataTransferTypes, draggableGroups, isGroupMatch, droppingAllowed;

      if (settings.groups && hasFullDataTransferSupport(event)) {
        dataTransferTypes = event.originalEvent.dataTransfer.types;
        isGroupMatch = false;
        dataTransferTypes = Array.prototype.slice.apply(dataTransferTypes); // Convert to array, since Firefox hold it as DOMStringList

        dataTransferTypes.forEach(function (type) {
          try {
            draggableGroups = JSON.parse(type);

            if (!draggableGroups.groups.slice) {
              return;
            }

            settings.groups.forEach(function (groupName) {
              if (-1 !== draggableGroups.groups.indexOf(groupName)) {
                isGroupMatch = true;
                return false; // stops the forEach from extra loops
              }
            });
          } catch (e) {}
        });

        if (!isGroupMatch) {
          return false;
        }
      }

      if ('function' === typeof settings.isDroppingAllowed) {
        droppingAllowed = settings.isDroppingAllowed.call(currentElement, currentSide, event, self);

        if (!droppingAllowed) {
          return false;
        }
      }

      return true;
    };

    var onDragEnter = function onDragEnter(event) {
      event.stopPropagation();

      if (currentElement) {
        return;
      }

      currentElement = this;
      elementsCache.$element.parents().each(function () {
        var droppableInstance = $(this).data('html5Droppable');

        if (!droppableInstance) {
          return;
        }

        droppableInstance.doDragLeave();
      });
      setSide(event);

      if (!isDroppingAllowed(event)) {
        return;
      }

      insertPlaceholder();
      elementsCache.$element.addClass(settings.hasDraggingOnChildClass);
      $(currentElement).addClass(settings.currentElementClass);

      if ('function' === typeof settings.onDragEnter) {
        settings.onDragEnter.call(currentElement, currentSide, event, self);
      }
    };

    var onDragOver = function onDragOver(event) {
      event.stopPropagation();

      if (!currentElement) {
        onDragEnter.call(this, event);
      }

      var oldSide = currentSide;
      setSide(event);

      if (!isDroppingAllowed(event)) {
        return;
      }

      event.preventDefault();

      if (oldSide !== currentSide) {
        insertPlaceholder();
      }

      if ('function' === typeof settings.onDragging) {
        settings.onDragging.call(this, currentSide, event, self);
      }
    };

    var onDragLeave = function onDragLeave(event) {
      var elementPosition = this.getBoundingClientRect();

      if ('dragleave' === event.type && !(event.clientX < elementPosition.left || event.clientX >= elementPosition.right || event.clientY < elementPosition.top || event.clientY >= elementPosition.bottom)) {
        return;
      }

      $(currentElement).removeClass(settings.currentElementClass);
      self.doDragLeave();
    };

    var onDrop = function onDrop(event) {
      setSide(event);

      if (!isDroppingAllowed(event)) {
        return;
      }

      event.preventDefault();

      if ('function' === typeof settings.onDropping) {
        settings.onDropping.call(this, currentSide, event, self);
      }
    };

    var attachEvents = function attachEvents() {
      elementsCache.$element.on('dragenter', settings.items, onDragEnter).on('dragover', settings.items, onDragOver).on('drop', settings.items, onDrop).on('dragleave drop', settings.items, onDragLeave);
    };

    var init = function init() {
      initSettings();
      initElementsCache();
      attachEvents();
    };

    this.doDragLeave = function () {
      if (settings.placeholder) {
        elementsCache.$placeholder.remove();
      }

      elementsCache.$element.removeClass(settings.hasDraggingOnChildClass);

      if ('function' === typeof settings.onDragLeave) {
        settings.onDragLeave.call(currentElement, event, self);
      }

      currentElement = currentSide = null;
    };

    this.destroy = function () {
      elementsCache.$element.off('dragenter', settings.items, onDragEnter).off('dragover', settings.items, onDragOver).off('drop', settings.items, onDrop).off('dragleave drop', settings.items, onDragLeave);
    };

    init();
  };

  var plugins = {
    html5Draggable: Draggable,
    html5Droppable: Droppable
  };
  $.each(plugins, function (pluginName, Plugin) {
    $.fn[pluginName] = function (options) {
      options = options || {};
      this.each(function () {
        var instance = $.data(this, pluginName),
            hasInstance = instance instanceof Plugin;

        if (hasInstance) {
          if ('destroy' === options) {
            instance.destroy();
            $.removeData(this, pluginName);
          }

          return;
        }

        options.element = this;
        $.data(this, pluginName, new Plugin(options));
      });
      return this;
    };
  });
})(jQuery);

/***/ }),

/***/ "../assets/dev/js/editor/utils/jquery-serialize-object.js":
/*!****************************************************************!*\
  !*** ../assets/dev/js/editor/utils/jquery-serialize-object.js ***!
  \****************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


__webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");

__webpack_require__(/*! core-js/modules/es6.regexp.match.js */ "../node_modules/core-js/modules/es6.regexp.match.js");

__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

/*
 * jQuery Serialize Object v1.0.1
 */
(function ($) {
  $.fn.elementorSerializeObject = function () {
    var serializedArray = this.serializeArray(),
        data = {};

    var parseObject = function parseObject(dataContainer, key, value) {
      var isArrayKey = /^[^\[\]]+\[]/.test(key),
          isObjectKey = /^[^\[\]]+\[[^\[\]]+]/.test(key),
          keyName = key.replace(/\[.*/, '');

      if (isArrayKey) {
        if (!dataContainer[keyName]) {
          dataContainer[keyName] = [];
        }
      } else {
        if (!isObjectKey) {
          if (dataContainer.push) {
            dataContainer.push(value);
          } else {
            dataContainer[keyName] = value;
          }

          return;
        }

        if (!dataContainer[keyName]) {
          dataContainer[keyName] = {};
        }
      }

      var nextKeys = key.match(/\[[^\[\]]*]/g);
      nextKeys[0] = nextKeys[0].replace(/\[|]/g, '');
      return parseObject(dataContainer[keyName], nextKeys.join(''), value);
    };

    $.each(serializedArray, function () {
      parseObject(data, this.name, this.value);
    });
    return data;
  };
})(jQuery);

/***/ }),

/***/ "../assets/dev/js/editor/utils/notice-bar.js":
/*!***************************************************!*\
  !*** ../assets/dev/js/editor/utils/notice-bar.js ***!
  \***************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _default = /*#__PURE__*/function (_elementorModules$Vie) {
  (0, _inherits2.default)(_default, _elementorModules$Vie);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "getDefaultSettings",
    value: function getDefaultSettings() {
      return {
        selectors: {
          notice: '#elementor-notice-bar',
          close: '#elementor-notice-bar__close'
        }
      };
    }
  }, {
    key: "getDefaultElements",
    value: function getDefaultElements() {
      var settings = this.getSettings();
      return {
        $notice: jQuery(settings.selectors.notice),
        $close: jQuery(settings.selectors.close)
      };
    }
  }, {
    key: "bindEvents",
    value: function bindEvents() {
      this.elements.$close.on('click', this.onCloseClick.bind(this));
    }
  }, {
    key: "onCloseClick",
    value: function onCloseClick() {
      this.elements.$notice.slideUp();
      elementorCommon.ajax.addRequest('notice_bar_dismiss');
    }
  }]);
  return _default;
}(elementorModules.ViewModule);

exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/utils/notifications.js":
/*!******************************************************!*\
  !*** ../assets/dev/js/editor/utils/notifications.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _parseInt2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/parse-int */ "../node_modules/@babel/runtime-corejs2/core-js/parse-int.js"));

module.exports = elementorModules.Module.extend({
  initToast: function initToast() {
    var toast = elementorCommon.dialogsManager.createWidget('buttons', {
      id: 'elementor-toast',
      position: {
        my: 'center bottom',
        at: 'center bottom-10',
        of: '#elementor-panel-content-wrapper',
        autoRefresh: true
      },
      hide: {
        onClick: true,
        auto: true,
        autoDelay: 10000
      },
      effects: {
        show: function show() {
          var $widget = toast.getElements('widget');
          $widget.show();
          toast.refreshPosition();
          var top = (0, _parseInt2.default)($widget.css('top'), 10);
          $widget.hide().css('top', top + 100);
          $widget.animate({
            opacity: 'show',
            height: 'show',
            paddingBottom: 'show',
            paddingTop: 'show',
            top: top
          }, {
            easing: 'linear',
            duration: 300
          });
        },
        hide: function hide() {
          var $widget = toast.getElements('widget'),
              top = (0, _parseInt2.default)($widget.css('top'), 10);
          $widget.animate({
            opacity: 'hide',
            height: 'hide',
            paddingBottom: 'hide',
            paddingTop: 'hide',
            top: top + 100
          }, {
            easing: 'linear',
            duration: 300
          });
        }
      },
      button: {
        tag: 'div'
      }
    });

    this.getToast = function () {
      return toast;
    };
  },
  showToast: function showToast(options) {
    var toast = this.getToast();
    toast.setMessage(options.message);
    toast.getElements('buttonsWrapper').empty();

    if (options.buttons) {
      options.buttons.forEach(function (button) {
        toast.addButton(button);
      });
    } else {
      toast.getElements('buttonsWrapper').remove();
    }

    if (options.classes) {
      toast.getElements('widget').addClass(options.classes);
    }

    toast.show();
  },
  onInit: function onInit() {
    this.initToast();
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/utils/presets-factory.js":
/*!********************************************************!*\
  !*** ../assets/dev/js/editor/utils/presets-factory.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


__webpack_require__(/*! core-js/modules/es6.array.slice.js */ "../node_modules/core-js/modules/es6.array.slice.js");

var presetsFactory;
presetsFactory = {
  getPresetsDictionary: function getPresetsDictionary() {
    return {
      11: 100 / 9,
      12: 100 / 8,
      14: 100 / 7,
      16: 100 / 6,
      33: 100 / 3,
      66: 2 / 3 * 100,
      83: 5 / 6 * 100
    };
  },
  getAbsolutePresetValues: function getAbsolutePresetValues(preset) {
    var clonedPreset = elementorCommon.helpers.cloneObject(preset),
        presetDictionary = this.getPresetsDictionary();

    _.each(clonedPreset, function (unitValue, unitIndex) {
      if (presetDictionary[unitValue]) {
        clonedPreset[unitIndex] = presetDictionary[unitValue];
      }
    });

    return clonedPreset;
  },
  getPresets: function getPresets(columnsCount, presetIndex) {
    var presets = elementorCommon.helpers.cloneObject(elementor.config.elements.section.presets);

    if (columnsCount) {
      presets = presets[columnsCount];
    }

    if (presetIndex) {
      presets = presets[presetIndex];
    }

    return presets;
  },
  getPresetByStructure: function getPresetByStructure(structure) {
    var parsedStructure = this.getParsedStructure(structure);
    return this.getPresets(parsedStructure.columnsCount, parsedStructure.presetIndex);
  },
  getParsedStructure: function getParsedStructure(structure) {
    structure += ''; // Make sure this is a string

    return {
      columnsCount: structure.slice(0, -1),
      presetIndex: structure.substr(-1)
    };
  },
  getPresetSVG: function getPresetSVG(preset, svgWidth, svgHeight, separatorWidth) {
    svgWidth = svgWidth || 100;
    svgHeight = svgHeight || 50;
    separatorWidth = separatorWidth || 2;

    var absolutePresetValues = this.getAbsolutePresetValues(preset),
        presetSVGPath = this._generatePresetSVGPath(absolutePresetValues, svgWidth, svgHeight, separatorWidth);

    return this._createSVGPreset(presetSVGPath, svgWidth, svgHeight);
  },
  _createSVGPreset: function _createSVGPreset(presetPath, svgWidth, svgHeight) {
    // this is here to avoid being picked up by https re-write systems
    var protocol = 'ht' + 'tp';
    var svg = document.createElementNS(protocol + '://www.w3.org/2000/svg', 'svg');
    svg.setAttributeNS(protocol + '://www.w3.org/2000/xmlns/', 'xmlns:xlink', protocol + '://www.w3.org/1999/xlink');
    svg.setAttribute('viewBox', '0 0 ' + svgWidth + ' ' + svgHeight);
    var path = document.createElementNS(protocol + '://www.w3.org/2000/svg', 'path');
    path.setAttribute('d', presetPath);
    svg.appendChild(path);
    return svg;
  },
  _generatePresetSVGPath: function _generatePresetSVGPath(preset, svgWidth, svgHeight, separatorWidth) {
    var DRAW_SIZE = svgWidth - separatorWidth * (preset.length - 1);
    var xPointer = 0,
        dOutput = '';

    for (var i = 0; i < preset.length; i++) {
      if (i) {
        dOutput += ' ';
      }

      var increment = preset[i] / 100 * DRAW_SIZE;
      xPointer += increment;
      dOutput += 'M' + +xPointer.toFixed(4) + ',0';
      dOutput += 'V' + svgHeight;
      dOutput += 'H' + +(xPointer - increment).toFixed(4);
      dOutput += 'V0Z';
      xPointer += separatorWidth;
    }

    return dOutput;
  }
};
module.exports = presetsFactory;

/***/ }),

/***/ "../assets/dev/js/editor/utils/promotion.js":
/*!**************************************************!*\
  !*** ../assets/dev/js/editor/utils/promotion.js ***!
  \**************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _default = /*#__PURE__*/function (_elementorModules$Mod) {
  (0, _inherits2.default)(_default, _elementorModules$Mod);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    var _this;

    (0, _classCallCheck2.default)(this, _default);
    _this = _super.call(this);

    _this.initDialog();

    return _this;
  }

  (0, _createClass2.default)(_default, [{
    key: "initDialog",
    value: function initDialog() {
      var _this2 = this;

      this.dialog = elementor.dialogsManager.createWidget('buttons', {
        id: 'elementor-element--promotion__dialog',
        effects: {
          show: 'show',
          hide: 'hide'
        },
        hide: {
          onOutsideClick: false
        },
        position: {
          my: (elementorCommon.config.isRTL ? 'right' : 'left') + '+5 top'
        }
      });
      this.dialog.addButton({
        name: 'action',
        text: __('See it in Action', 'elementor'),
        callback: function callback() {
          open(_this2.actionURL, '_blank');
        }
      });
      this.dialog.getElements('action').addClass('elementor-button elementor-button-success');
      var $promotionTitle = jQuery('<div>', {
        id: 'elementor-element--promotion__dialog__title'
      }),
          $proIcon = jQuery('<i>', {
        class: 'eicon-pro-icon'
      }),
          $closeButton = jQuery('<i>', {
        class: 'eicon-close'
      });
      $closeButton.on('click', function () {
        return _this2.dialog.hide();
      });
      this.dialog.getElements('header').append($promotionTitle, $proIcon, $closeButton);
      this.$promotionTitle = $promotionTitle;
    }
  }, {
    key: "showDialog",
    value: function showDialog(options) {
      if (!this.dialog) {
        this.initDialog();
      }

      this.actionURL = options.actionURL;
      this.$promotionTitle.text(options.headerMessage);
      this.dialog.setMessage(options.message).setSettings('position', {
        of: options.element,
        at: (elementorCommon.config.isRTL ? 'left' : 'right') + ' top' + options.top
      });
      return this.dialog.show();
    }
  }]);
  return _default;
}(elementorModules.Module);

exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/utils/schemes.js":
/*!************************************************!*\
  !*** ../assets/dev/js/editor/utils/schemes.js ***!
  \************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _stringify = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/json/stringify */ "../node_modules/@babel/runtime-corejs2/core-js/json/stringify.js"));

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

__webpack_require__(/*! core-js/modules/es6.array.slice.js */ "../node_modules/core-js/modules/es6.array.slice.js");

var Schemes,
    Stylesheet = __webpack_require__(/*! elementor-editor-utils/stylesheet */ "../assets/dev/js/editor/utils/stylesheet.js"),
    ControlsCSSParser = __webpack_require__(/*! elementor-editor-utils/controls-css-parser */ "../assets/dev/js/editor/utils/controls-css-parser.js");

Schemes = function Schemes() {
  var self = this,
      stylesheet = new Stylesheet(),
      schemes = {},
      settings = {
    selectorWrapperPrefix: '.elementor-widget-'
  },
      elements = {};

  var buildUI = function buildUI() {
    elements.$previewHead.append(elements.$style);
  };

  var initElements = function initElements() {
    var id = 'elementor-style-scheme';
    elements.$style = elementor.$previewContents.find("#".concat(id));

    if (!elements.$style.length) {
      elements.$style = jQuery('<style>', {
        id: id
      });
    }

    elements.$previewHead = elementor.$previewContents.find('head');
  };

  var initSchemes = function initSchemes() {
    schemes = elementorCommon.helpers.cloneObject(elementor.config.schemes.items);
  };

  var fetchControlStyles = function fetchControlStyles(control, controlsStack, widgetType) {
    ControlsCSSParser.addControlStyleRules(stylesheet, control, controlsStack, function (controlStyles) {
      return self.getSchemeValue(controlStyles.scheme.type, controlStyles.scheme.value, controlStyles.scheme.key).value;
    }, ['{{WRAPPER}}'], [settings.selectorWrapperPrefix + widgetType]);
  };

  var fetchWidgetControlsStyles = function fetchWidgetControlsStyles(widget) {
    var widgetSchemeControls = self.getWidgetSchemeControls(widget);

    _.each(widgetSchemeControls, function (control) {
      fetchControlStyles(control, widgetSchemeControls, widget.widget_type);
    });
  };

  var fetchAllWidgetsSchemesStyle = function fetchAllWidgetsSchemesStyle() {
    _.each(elementor.widgetsCache, function (widget) {
      fetchWidgetControlsStyles(widget);
    });
  };

  this.init = function () {
    initElements();
    buildUI();
    initSchemes();
    return self;
  };

  this.getWidgetSchemeControls = function (widget) {
    return _.filter(widget.controls, function (control) {
      return _.isObject(control.scheme);
    });
  };

  this.getSchemes = function () {
    return schemes;
  };

  this.getEnabledSchemesTypes = function () {
    return elementor.config.schemes.enabled_schemes;
  };

  this.getScheme = function (schemeType) {
    return schemes[schemeType];
  };

  this.getSchemeValue = function (schemeType, value, key) {
    if (this.getEnabledSchemesTypes().indexOf(schemeType) < 0) {
      return false;
    }

    var scheme = self.getScheme(schemeType),
        schemeValue = scheme.items[value];

    if (key && _.isObject(schemeValue)) {
      var clonedSchemeValue = elementorCommon.helpers.cloneObject(schemeValue);
      clonedSchemeValue.value = schemeValue.value[key];
      return clonedSchemeValue;
    }

    return schemeValue;
  };

  this.printSchemesStyle = function () {
    stylesheet.empty();
    fetchAllWidgetsSchemesStyle();
    elements.$style.text(stylesheet);
  };

  this.resetSchemes = function (schemeName) {
    schemes[schemeName] = elementorCommon.helpers.cloneObject(elementor.config.schemes.items[schemeName]);
  };

  this.saveScheme = function (schemeName) {
    elementor.config.schemes.items[schemeName].items = elementorCommon.helpers.cloneObject(schemes[schemeName].items);
    var itemsToSave = {};

    _.each(schemes[schemeName].items, function (item, key) {
      itemsToSave[key] = item.value;
    });

    return elementorCommon.ajax.addRequest('apply_scheme', {
      data: {
        scheme_name: schemeName,
        data: (0, _stringify.default)(itemsToSave)
      }
    });
  };

  this.setSchemeValue = function (schemeName, itemKey, value) {
    schemes[schemeName].items[itemKey].value = value;
  };

  this.addSchemeItem = function (schemeName, item, at) {
    var scheme = schemes[schemeName],
        schemeKeys = (0, _keys.default)(scheme.items),
        hasAt = undefined !== at,
        targetIndex = hasAt ? at : +schemeKeys.slice(-1)[0] || 0;

    if (hasAt) {
      var itemIndex = schemeKeys.length + 1;

      for (; itemIndex > at; itemIndex--) {
        scheme.items[itemIndex] = scheme.items[itemIndex - 1];
      }
    }

    scheme.items[targetIndex + 1] = item;
  };

  this.removeSchemeItem = function (schemeName, itemKey) {
    var items = schemes[schemeName].items;

    while (true) {
      itemKey++;
      var nextItem = items[itemKey + 1];

      if (!nextItem) {
        delete items[itemKey];
        break;
      }

      items[itemKey] = nextItem;
    }
  };
};

module.exports = new Schemes();

/***/ }),

/***/ "../assets/dev/js/editor/utils/select2.js":
/*!************************************************!*\
  !*** ../assets/dev/js/editor/utils/select2.js ***!
  \************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var Select2 = /*#__PURE__*/function (_elementorModules$Vie) {
  (0, _inherits2.default)(Select2, _elementorModules$Vie);

  var _super = (0, _createSuper2.default)(Select2);

  function Select2() {
    (0, _classCallCheck2.default)(this, Select2);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Select2, [{
    key: "getDefaultSettings",
    value: function getDefaultSettings() {
      return {
        selectors: {
          plusButton: '.select2-selection__e-plus-button',
          // The select2InlineSearch selector can not be changed.
          select2InlineSearch: '.select2-selection__rendered .select2-search--inline'
        },
        classes: {
          plusButton: 'select2-selection__e-plus-button',
          // The select2Choice class name can not be changed to get the select2 choice style.
          select2Choice: 'select2-selection__choice'
        }
      };
    }
  }, {
    key: "isAllSelected",
    value: function isAllSelected() {
      var _this = this;

      var isAllSelected = false;
      this.select2.dataAdapter.query({}, function (data) {
        var totalOptionsCount = data.results.length,
            currentSelectionsCount = _this.elements.$element.select2('data').length;

        if (currentSelectionsCount === totalOptionsCount) {
          isAllSelected = true;
        }
      });
      return isAllSelected;
    }
  }, {
    key: "addPlusButton",
    value: function addPlusButton() {
      var _this$getSettings = this.getSettings('classes'),
          plusButton = _this$getSettings.plusButton,
          select2Choice = _this$getSettings.select2Choice,
          plusButtonClasses = [select2Choice, plusButton].join(' ');

      this.elements.$plusButton = jQuery('<li>', {
        class: plusButtonClasses
      }).text('+');
      this.elements.$plusButton.insertBefore(this.elements.$inlineSearch);
    }
  }, {
    key: "togglePlusButton",
    value: function togglePlusButton() {
      if (this.isAllSelected()) {
        if (this.elements.$plusButton) {
          this.elements.$plusButton.remove();
        }
      } else {
        this.addPlusButton();
      }
    }
  }, {
    key: "addSelect2Events",
    value: function addSelect2Events() {
      var _this2 = this;

      this.select2.on('select', function () {
        return _this2.onSelectionChange();
      });
      this.select2.on('unselect', function () {
        return _this2.onSelectionChange();
      });
    }
  }, {
    key: "onSelectionChange",
    value: function onSelectionChange() {
      this.togglePlusButton();
    }
  }, {
    key: "extendBaseFunctionality",
    value: function extendBaseFunctionality() {
      var config = this.select2.options.options; // When select2 has ajax the selected items re-render multiple times and deletes the injected plus-button.

      if (config.multiple && !config.ajax) {
        this.togglePlusButton();
        this.addSelect2Events();
      }
    }
  }, {
    key: "initSelect2Elements",
    value: function initSelect2Elements() {
      var select2InlineSearch = this.getSettings('selectors.select2InlineSearch');
      this.elements.$element = this.select2.$element;
      this.elements.$container = this.select2.$container;
      this.elements.$inlineSearch = this.elements.$container.find(select2InlineSearch);
    }
  }, {
    key: "destroy",
    value: function destroy() {
      this.elements.$element.select2('destroy');
    }
  }, {
    key: "onInit",
    value: function onInit() {
      var _get2;

      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
        args[_key] = arguments[_key];
      }

      (_get2 = (0, _get3.default)((0, _getPrototypeOf2.default)(Select2.prototype), "onInit", this)).call.apply(_get2, [this].concat(args));

      var _this$getSettings2 = this.getSettings(),
          $element = _this$getSettings2.$element,
          options = _this$getSettings2.options;

      this.select2 = $element.select2(options).data('select2');
      this.initSelect2Elements();
      this.extendBaseFunctionality();
    }
  }]);
  return Select2;
}(elementorModules.ViewModule);

exports.default = Select2;

/***/ }),

/***/ "../assets/dev/js/editor/utils/stylesheet.js":
/*!***************************************************!*\
  !*** ../assets/dev/js/editor/utils/stylesheet.js ***!
  \***************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

__webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");

__webpack_require__(/*! core-js/modules/es6.regexp.match.js */ "../node_modules/core-js/modules/es6.regexp.match.js");

__webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");

__webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");

__webpack_require__(/*! core-js/modules/es6.regexp.to-string.js */ "../node_modules/core-js/modules/es6.regexp.to-string.js");

(function ($) {
  var Stylesheet = function Stylesheet() {
    var self = this,
        rules = {},
        rawCSS = {},
        devices = {};

    var queryToHash = function queryToHash(query) {
      var hash = [];
      $.each(query, function (endPoint) {
        hash.push(endPoint + '_' + this);
      });
      return hash.join('-');
    };

    var hashToQuery = function hashToQuery(hash) {
      var query = {};
      hash = hash.split('-').filter(String);
      hash.forEach(function (singleQuery) {
        // split {max}/{min}_{device name} to separate strings
        var queryParts = singleQuery.split(/_(.+)/),
            endPoint = queryParts[0],
            deviceName = queryParts[1];
        query[endPoint] = 'max' === endPoint ? devices[deviceName] : elementorFrontend.breakpoints.getDeviceMinBreakpoint(deviceName);
      });
      return query;
    };

    var addQueryHash = function addQueryHash(queryHash) {
      rules[queryHash] = {};
      var hashes = (0, _keys.default)(rules);

      if (hashes.length < 2) {
        return;
      } // Sort the devices from narrowest to widest


      hashes.sort(function (a, b) {
        if ('all' === a) {
          return -1;
        }

        if ('all' === b) {
          return 1;
        }

        var aQuery = hashToQuery(a),
            bQuery = hashToQuery(b);
        return bQuery.max - aQuery.max;
      });
      var sortedRules = {};
      hashes.forEach(function (deviceName) {
        sortedRules[deviceName] = rules[deviceName];
      });
      rules = sortedRules;
    };

    var getQueryHashStyleFormat = function getQueryHashStyleFormat(queryHash) {
      var query = hashToQuery(queryHash),
          styleFormat = [];
      $.each(query, function (endPoint) {
        styleFormat.push('(' + endPoint + '-width:' + this + 'px)');
      });
      return '@media' + styleFormat.join(' and ');
    };

    this.addDevice = function (newDeviceName, deviceValue) {
      devices[newDeviceName] = deviceValue;
      var deviceNames = (0, _keys.default)(devices);

      if (deviceNames.length < 2) {
        return self;
      } // Sort the devices from narrowest to widest


      deviceNames.sort(function (a, b) {
        return devices[a] - devices[b];
      });
      var sortedDevices = {};
      deviceNames.forEach(function (deviceName) {
        sortedDevices[deviceName] = devices[deviceName];
      });
      devices = sortedDevices;
      return self;
    };

    this.addRawCSS = function (key, css) {
      rawCSS[key] = css;
    };

    this.addRules = function (selector, styleRules, query) {
      var queryHash = 'all';

      if (!_.isEmpty(query)) {
        queryHash = queryToHash(query);
      }

      if (!rules[queryHash]) {
        addQueryHash(queryHash);
      }

      if (!styleRules) {
        var parsedRules = selector.match(/[^{]+\{[^}]+}/g);
        $.each(parsedRules, function () {
          var parsedRule = this.match(/([^{]+)\{([^}]+)}/);

          if (parsedRule) {
            self.addRules(parsedRule[1].trim(), parsedRule[2].trim(), query);
          }
        });
        return;
      }

      if (!rules[queryHash][selector]) {
        rules[queryHash][selector] = {};
      }

      if ('string' === typeof styleRules) {
        styleRules = styleRules.split(';').filter(String);
        var orderedRules = {};

        try {
          $.each(styleRules, function () {
            var property = this.split(/:(.*)?/);
            orderedRules[property[0].trim()] = property[1].trim().replace(';', '');
          });
        } catch (error) {
          // At least one of the properties is incorrect
          return;
        }

        styleRules = orderedRules;
      }

      $.extend(rules[queryHash][selector], styleRules);
      return self;
    };

    this.getRules = function () {
      return rules;
    };

    this.empty = function () {
      rules = {};
      rawCSS = {};
    };

    this.toString = function () {
      var styleText = '';
      $.each(rules, function (queryHash) {
        var deviceText = Stylesheet.parseRules(this);

        if ('all' !== queryHash) {
          deviceText = getQueryHashStyleFormat(queryHash) + '{' + deviceText + '}';
        }

        styleText += deviceText;
      });
      $.each(rawCSS, function () {
        styleText += this;
      });
      return styleText;
    };
  };

  Stylesheet.parseRules = function (rules) {
    var parsedRules = '';
    $.each(rules, function (selector) {
      var selectorContent = Stylesheet.parseProperties(this);

      if (selectorContent) {
        parsedRules += selector + '{' + selectorContent + '}';
      }
    });
    return parsedRules;
  };

  Stylesheet.parseProperties = function (properties) {
    var parsedProperties = '';
    $.each(properties, function (propertyKey) {
      if (this) {
        parsedProperties += propertyKey + ':' + this + ';';
      }
    });
    return parsedProperties;
  };

  module.exports = Stylesheet;
})(jQuery);

/***/ }),

/***/ "../assets/dev/js/editor/views/add-section/base.js":
/*!*********************************************************!*\
  !*** ../assets/dev/js/editor/views/add-section/base.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _assign = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/assign */ "../node_modules/@babel/runtime-corejs2/core-js/object/assign.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var AddSectionBase = /*#__PURE__*/function (_Marionette$ItemView) {
  (0, _inherits2.default)(AddSectionBase, _Marionette$ItemView);

  var _super = (0, _createSuper2.default)(AddSectionBase);

  function AddSectionBase() {
    (0, _classCallCheck2.default)(this, AddSectionBase);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(AddSectionBase, [{
    key: "template",
    value: function template() {
      return Marionette.TemplateCache.get('#tmpl-elementor-add-section');
    }
  }, {
    key: "attributes",
    value: function attributes() {
      return {
        'data-view': 'choose-action'
      };
    }
  }, {
    key: "ui",
    value: function ui() {
      return {
        addNewSection: '.elementor-add-new-section',
        closeButton: '.elementor-add-section-close',
        addSectionButton: '.elementor-add-section-button',
        addTemplateButton: '.elementor-add-template-button',
        selectPreset: '.elementor-select-preset',
        presets: '.elementor-preset'
      };
    }
  }, {
    key: "events",
    value: function events() {
      return {
        'click @ui.addSectionButton': 'onAddSectionButtonClick',
        'click @ui.addTemplateButton': 'onAddTemplateButtonClick',
        'click @ui.closeButton': 'onCloseButtonClick',
        'click @ui.presets': 'onPresetSelected'
      };
    }
  }, {
    key: "behaviors",
    value: function behaviors() {
      return {
        contextMenu: {
          behaviorClass: __webpack_require__(/*! elementor-behaviors/context-menu */ "../assets/dev/js/editor/elements/views/behaviors/context-menu.js"),
          groups: this.getContextMenuGroups()
        }
      };
    }
  }, {
    key: "className",
    value: function className() {
      return 'elementor-add-section elementor-visible-desktop';
    }
  }, {
    key: "setView",
    value: function setView(view) {
      this.$el.attr('data-view', view);
    }
  }, {
    key: "showSelectPresets",
    value: function showSelectPresets() {
      this.setView('select-preset');
    }
  }, {
    key: "closeSelectPresets",
    value: function closeSelectPresets() {
      this.setView('choose-action');
    }
  }, {
    key: "getTemplatesModalOptions",
    value: function getTemplatesModalOptions() {
      return {
        importOptions: {
          at: this.getOption('at')
        }
      };
    }
  }, {
    key: "getContextMenuGroups",
    value: function getContextMenuGroups() {
      var _this = this;

      var hasContent = function hasContent() {
        return elementor.elements.length > 0;
      };

      return [{
        name: 'paste',
        actions: [{
          name: 'paste',
          title: __('Paste', 'elementor'),
          isEnabled: function isEnabled() {
            return $e.components.get('document/elements').utils.isPasteEnabled(elementor.getPreviewContainer());
          },
          callback: function callback() {
            return $e.run('document/ui/paste', {
              container: elementor.getPreviewContainer(),
              options: {
                at: _this.getOption('at'),
                rebuild: true
              },
              onAfter: function onAfter() {
                return _this.onAfterPaste();
              }
            });
          }
        }]
      }, {
        name: 'content',
        actions: [{
          name: 'copy_all_content',
          title: __('Copy All Content', 'elementor'),
          isEnabled: hasContent,
          callback: function callback() {
            return $e.run('document/elements/copy-all');
          }
        }, {
          name: 'delete_all_content',
          title: __('Delete All Content', 'elementor'),
          isEnabled: hasContent,
          callback: function callback() {
            return $e.run('document/elements/empty');
          }
        }]
      }];
    }
  }, {
    key: "onAddSectionButtonClick",
    value: function onAddSectionButtonClick() {
      this.showSelectPresets();
    }
  }, {
    key: "onAddTemplateButtonClick",
    value: function onAddTemplateButtonClick() {
      $e.run('library/open', this.getTemplatesModalOptions());
    }
  }, {
    key: "onRender",
    value: function onRender() {
      this.$el.html5Droppable({
        axis: ['vertical'],
        groups: ['elementor-element'],
        placeholder: false,
        currentElementClass: 'elementor-html5dnd-current-element',
        hasDraggingOnChildClass: 'elementor-dragging-on-child',
        onDropping: this.onDropping.bind(this)
      });
    }
  }, {
    key: "onPresetSelected",
    value: function onPresetSelected(event) {
      this.closeSelectPresets();
      var selectedStructure = event.currentTarget.dataset.structure,
          parsedStructure = elementor.presetsFactory.getParsedStructure(selectedStructure);
      $e.run('document/elements/create', {
        model: {
          elType: 'section'
        },
        container: elementor.getPreviewContainer(),
        columns: parsedStructure.columnsCount,
        structure: selectedStructure,
        options: (0, _assign.default)({}, this.options)
      });
    }
  }, {
    key: "onDropping",
    value: function onDropping() {
      if (elementor.helpers.maybeDisableWidget()) {
        return;
      }

      var selectedElement = elementor.channels.panelElements.request('element:selected'),
          historyId = $e.internal('document/history/start-log', {
        type: 'add',
        title: elementor.helpers.getModelLabel(selectedElement.model)
      }),
          eSection = $e.run('document/elements/create', {
        model: {
          elType: 'section'
        },
        container: elementor.getPreviewContainer(),
        columns: 1,
        options: {
          at: this.getOption('at'),
          // BC: Deprecated since 2.8.0 - use `$e.hooks`.
          trigger: {
            beforeAdd: 'section:before:drop',
            afterAdd: 'section:after:drop'
          }
        }
      }); // Create the element in column.

      eSection.view.children.findByIndex(0).addElementFromPanel();
      $e.internal('document/history/end-log', {
        id: historyId
      });
    }
  }, {
    key: "onAfterPaste",
    value: function onAfterPaste() {}
  }]);
  return AddSectionBase;
}(Marionette.ItemView);

var _default = AddSectionBase;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/views/add-section/independent.js":
/*!****************************************************************!*\
  !*** ../assets/dev/js/editor/views/add-section/independent.js ***!
  \****************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _base = _interopRequireDefault(__webpack_require__(/*! ./base */ "../assets/dev/js/editor/views/add-section/base.js"));

var AddSectionView = /*#__PURE__*/function (_BaseAddSectionView) {
  (0, _inherits2.default)(AddSectionView, _BaseAddSectionView);

  var _super = (0, _createSuper2.default)(AddSectionView);

  function AddSectionView() {
    (0, _classCallCheck2.default)(this, AddSectionView);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(AddSectionView, [{
    key: "id",
    get: function get() {
      return 'elementor-add-new-section';
    }
  }, {
    key: "onCloseButtonClick",
    value: function onCloseButtonClick() {
      this.closeSelectPresets();
    }
  }]);
  return AddSectionView;
}(_base.default);

exports.default = AddSectionView;

/***/ }),

/***/ "../assets/dev/js/editor/views/add-section/inline.js":
/*!***********************************************************!*\
  !*** ../assets/dev/js/editor/views/add-section/inline.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _base = _interopRequireDefault(__webpack_require__(/*! ./base */ "../assets/dev/js/editor/views/add-section/base.js"));

var AddSectionView = /*#__PURE__*/function (_BaseAddSectionView) {
  (0, _inherits2.default)(AddSectionView, _BaseAddSectionView);

  var _super = (0, _createSuper2.default)(AddSectionView);

  function AddSectionView() {
    (0, _classCallCheck2.default)(this, AddSectionView);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(AddSectionView, [{
    key: "className",
    value: function className() {
      return (0, _get2.default)((0, _getPrototypeOf2.default)(AddSectionView.prototype), "className", this).call(this) + ' elementor-add-section-inline';
    }
  }, {
    key: "fadeToDeath",
    value: function fadeToDeath() {
      var self = this;
      self.$el.slideUp(function () {
        self.destroy();
      });
    }
  }, {
    key: "onAfterPaste",
    value: function onAfterPaste() {
      (0, _get2.default)((0, _getPrototypeOf2.default)(AddSectionView.prototype), "onAfterPaste", this).call(this);
      this.destroy();
    }
  }, {
    key: "onCloseButtonClick",
    value: function onCloseButtonClick() {
      this.fadeToDeath();
    }
  }, {
    key: "onPresetSelected",
    value: function onPresetSelected(event) {
      (0, _get2.default)((0, _getPrototypeOf2.default)(AddSectionView.prototype), "onPresetSelected", this).call(this, event);
      this.destroy();
    }
  }, {
    key: "onAddTemplateButtonClick",
    value: function onAddTemplateButtonClick() {
      (0, _get2.default)((0, _getPrototypeOf2.default)(AddSectionView.prototype), "onAddTemplateButtonClick", this).call(this);
      this.destroy();
    }
  }, {
    key: "onDropping",
    value: function onDropping() {
      (0, _get2.default)((0, _getPrototypeOf2.default)(AddSectionView.prototype), "onDropping", this).call(this);
      this.destroy();
    }
  }]);
  return AddSectionView;
}(_base.default);

var _default = AddSectionView;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/views/base-container.js":
/*!*******************************************************!*\
  !*** ../assets/dev/js/editor/views/base-container.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

module.exports = Marionette.CompositeView.extend({
  templateHelpers: function templateHelpers() {
    return {
      view: this
    };
  },
  getBehavior: function getBehavior(name) {
    return this._behaviors[(0, _keys.default)(this.behaviors()).indexOf(name)];
  },
  initialize: function initialize() {
    this.collection = this.model.get('elements');
  },
  addChildModel: function addChildModel(model, options) {
    return this.collection.add(model, options, true);
  },
  addElement: function addElement(data, options) {
    if (this.isCollectionFilled()) {
      return;
    }

    options = jQuery.extend({
      trigger: false,
      edit: true,
      onBeforeAdd: null,
      onAfterAdd: null
    }, options);
    var childTypes = this.getChildType();
    var newItem, elType;

    if (data instanceof Backbone.Model) {
      newItem = data;
      elType = newItem.get('elType');
    } else {
      newItem = {
        id: elementorCommon.helpers.getUniqueId(),
        elType: childTypes[0],
        settings: {},
        elements: []
      };

      if (data) {
        jQuery.extend(newItem, data);
      }

      elType = newItem.elType;
    }

    if (-1 === childTypes.indexOf(elType)) {
      return this.children.last().addElement(newItem, options);
    }

    if (options.clone) {
      newItem = this.cloneItem(newItem);
    }

    if (options.trigger) {
      elementor.channels.data.trigger(options.trigger.beforeAdd, newItem);
    }

    if (options.onBeforeAdd) {
      options.onBeforeAdd();
    }

    var newModel = this.addChildModel(newItem, {
      at: options.at
    }),
        newView = this.children.findByModel(newModel);

    if (options.onAfterAdd) {
      options.onAfterAdd(newModel, newView);
    }

    if (options.trigger) {
      elementor.channels.data.trigger(options.trigger.afterAdd, newItem);
    }

    if (options.edit && elementor.documents.getCurrent().history.getActive()) {
      // Ensure container is created. TODO: Open editor via UI hook after `document/elements/create`.
      newView.getContainer();
      newModel.trigger('request:edit');
    }

    return newView;
  },
  addChildElement: function addChildElement(data, options) {
    elementorCommon.helpers.softDeprecated('addChildElement', '2.8.0', "$e.run( 'document/elements/create' )");

    if (Object !== data.constructor) {
      data = jQuery.extend({}, data);
    }

    $e.run('document/elements/create', {
      container: this.getContainer(),
      model: data,
      options: options
    });
  },
  cloneItem: function cloneItem(item) {
    var self = this;

    if (item instanceof Backbone.Model) {
      return item.clone();
    }

    item.id = elementorCommon.helpers.getUniqueId();
    item.settings._element_id = '';
    item.elements.forEach(function (childItem, index) {
      item.elements[index] = self.cloneItem(childItem);
    });
    return item;
  },
  lookup: function lookup() {
    var element = this;

    if (element.isDisconnected()) {
      element = $e.components.get('document').utils.findViewById(element.model.id);
    }

    return element;
  },
  isDisconnected: function isDisconnected() {
    return this.isDestroyed || !this.el.isConnected;
  },
  isCollectionFilled: function isCollectionFilled() {
    return false;
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/views/base-sections-container.js":
/*!****************************************************************!*\
  !*** ../assets/dev/js/editor/views/base-sections-container.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

var SectionView = __webpack_require__(/*! elementor-elements/views/section */ "../assets/dev/js/editor/elements/views/section.js"),
    BaseContainer = __webpack_require__(/*! elementor-views/base-container */ "../assets/dev/js/editor/views/base-container.js"),
    BaseSectionsContainerView;

BaseSectionsContainerView = BaseContainer.extend({
  childView: SectionView,
  behaviors: function behaviors() {
    var behaviors = {
      Sortable: {
        behaviorClass: __webpack_require__(/*! elementor-behaviors/sortable */ "../assets/dev/js/editor/elements/views/behaviors/sortable.js"),
        elChildType: 'section'
      }
    };
    return elementor.hooks.applyFilters('elements/base-section-container/behaviors', behaviors, this);
  },
  getSortableOptions: function getSortableOptions() {
    return {
      handle: '> .elementor-element-overlay .elementor-editor-element-edit',
      items: '> .elementor-section'
    };
  },
  getChildType: function getChildType() {
    return ['section'];
  },
  initialize: function initialize() {
    BaseContainer.prototype.initialize.apply(this, arguments);
    this.listenTo(elementor.channels.panelElements, 'element:drag:start', this.onPanelElementDragStart).listenTo(elementor.channels.panelElements, 'element:drag:end', this.onPanelElementDragEnd);
  },
  onPanelElementDragStart: function onPanelElementDragStart() {
    // A temporary workaround in order to fix Chrome's 70+ dragging above nested iframe bug
    this.$el.find('.elementor-background-video-embed').hide();
    elementor.helpers.disableElementEvents(this.$el.find('iframe'));
  },
  onPanelElementDragEnd: function onPanelElementDragEnd() {
    this.$el.find('.elementor-background-video-embed').show();
    elementor.helpers.enableElementEvents(this.$el.find('iframe'));
  }
});
module.exports = BaseSectionsContainerView;

/***/ }),

/***/ "../assets/dev/js/editor/views/controls-popover.js":
/*!*********************************************************!*\
  !*** ../assets/dev/js/editor/views/controls-popover.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var ControlsPopover = /*#__PURE__*/function () {
  function ControlsPopover(child) {
    (0, _classCallCheck2.default)(this, ControlsPopover);
    this.child = child;
    this.$popover = jQuery('<div>', {
      class: 'elementor-controls-popover'
    });
    child.$el.before(this.$popover);
    this.$popover.append(child.$el);
    this.popoverToggleView = child._parent.children.findByIndex(child._index - 1); // Add the "Typography" header to the popover

    if ('typography' === this.child.model.attributes.groupType) {
      this.createPopoverHeader();
    }
  }

  (0, _createClass2.default)(ControlsPopover, [{
    key: "addChild",
    value: function addChild(child) {
      this.$popover.append(child.$el);
    }
  }, {
    key: "createPopoverHeader",
    value: function createPopoverHeader() {
      var _this = this;

      var $popoverToggleControl = this.$popover.prev(),
          // Get the existing reset button.
      $resetLabel = $popoverToggleControl.find('.elementor-control-popover-toggle-reset-label');
      this.$popoverHeader = jQuery('<div>', {
        class: 'e-group-control-header'
      }).html('<span>' + __('Typography', 'elementor') + '</span>');
      this.$headerControlsWrapper = jQuery('<div>', {
        class: 'e-control-tools'
      }); // Give the reset button the control tool styling, and add a click event so clicking on it closes the popover.

      $resetLabel.addClass('e-control-tool').on('click', function () {
        return _this.onResetButtonClick();
      }); // Move the popover toggle reset button into the popover header.

      this.$headerControlsWrapper.append($resetLabel);
      this.$popoverHeader.append(this.$headerControlsWrapper);
      var globalConfig = this.popoverToggleView.model.get('global');

      if (globalConfig !== null && globalConfig !== void 0 && globalConfig.active) {
        this.createAddButton();
      }

      this.$popover.prepend(this.$popoverHeader).addClass('e-controls-popover--typography');
    }
  }, {
    key: "onResetButtonClick",
    value: function onResetButtonClick() {
      this.$popover.hide();
      var groupControlName = this.child.model.get('groupPrefix') + 'typography',
          args = {
        container: this.child.options.container,
        settings: (0, _defineProperty2.default)({}, groupControlName, '')
      };

      if (this.child.options.container.globals.get(groupControlName)) {
        // The Disable Globals command applies global settings locally,
        // so disabling the global shouldn't actually change the appearance of the widget.
        $e.run('document/globals/disable', args);
      } else {
        $e.run('document/elements/settings', args);
      }
    }
  }, {
    key: "onAddButtonClick",
    value: function onAddButtonClick() {
      this.popoverToggleView.onAddGlobalButtonClick();
    }
  }, {
    key: "createAddButton",
    value: function createAddButton() {
      var _this2 = this;

      this.$addButton = jQuery('<button>', {
        class: 'e-control-tool'
      }).html(jQuery('<i>', {
        class: 'eicon-plus'
      }));
      this.$headerControlsWrapper.append(this.$addButton);
      this.$addButton.on('click', function () {
        return _this2.onAddButtonClick();
      });
      this.$addButton.tipsy({
        title: function title() {
          return __('Create New Global Font', 'elementor');
        },
        gravity: function gravity() {
          return 's';
        }
      });
    }
  }, {
    key: "destroy",
    value: function destroy() {
      this.$popover.remove();
    }
  }]);
  return ControlsPopover;
}();

exports.default = ControlsPopover;

/***/ }),

/***/ "../assets/dev/js/editor/views/controls-stack.js":
/*!*******************************************************!*\
  !*** ../assets/dev/js/editor/views/controls-stack.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

__webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");

__webpack_require__(/*! core-js/modules/es6.array.iterator.js */ "../node_modules/core-js/modules/es6.array.iterator.js");

__webpack_require__(/*! core-js/modules/web.dom.iterable.js */ "../node_modules/core-js/modules/web.dom.iterable.js");

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

var _controlsPopover = _interopRequireDefault(__webpack_require__(/*! ./controls-popover */ "../assets/dev/js/editor/views/controls-popover.js"));

var ControlsStack;
ControlsStack = Marionette.CompositeView.extend({
  classes: {
    popover: 'elementor-controls-popover'
  },
  activeTab: null,
  activeSection: null,
  className: function className() {
    return 'elementor-controls-stack';
  },
  templateHelpers: function templateHelpers() {
    return {
      elementData: elementor.getElementData(this.model)
    };
  },
  childViewOptions: function childViewOptions() {
    return {
      // TODO: elementSettingsModel is deprecated since 2.8.0.
      elementSettingsModel: this.model
    };
  },
  ui: function ui() {
    return {
      tabs: '.elementor-panel-navigation-tab',
      reloadButton: '.elementor-update-preview-button'
    };
  },
  events: function events() {
    return {
      'click @ui.reloadButton': 'onReloadButtonClick'
    };
  },
  modelEvents: {
    destroy: 'onModelDestroy'
  },
  behaviors: {
    HandleInnerTabs: {
      behaviorClass: __webpack_require__(/*! elementor-behaviors/inner-tabs */ "../assets/dev/js/editor/elements/views/behaviors/inner-tabs.js")
    }
  },
  initialize: function initialize(options) {
    this.initCollection();

    if (options.tab) {
      this.activeTab = options.tab;
      this.activateFirstSection();
    }

    this.listenTo(elementor.channels.deviceMode, 'change', this.onDeviceModeChange);
  },
  initCollection: function initCollection() {
    this.collection = new Backbone.Collection(_.values(elementor.mergeControlsSettings(this.getOption('controls'))));
  },
  filter: function filter(controlModel) {
    if (controlModel.get('tab') !== this.activeTab) {
      return false;
    }

    if ('section' === controlModel.get('type')) {
      return true;
    }

    var section = controlModel.get('section');
    return !section || section === this.activeSection;
  },
  getControlViewByModel: function getControlViewByModel(model) {
    return this.children.findByModelCid(model.cid);
  },
  getControlViewByName: function getControlViewByName(name) {
    return this.getControlViewByModel(this.getControlModel(name));
  },
  getControlModel: function getControlModel(name) {
    return this.collection.findWhere({
      name: name
    });
  },
  isVisibleSectionControl: function isVisibleSectionControl(sectionControlModel) {
    return this.activeTab === sectionControlModel.get('tab');
  },
  activateTab: function activateTab(tab) {
    this.activeTab = tab;
    this.activateFirstSection();

    this._renderChildren();

    return this;
  },
  activateSection: function activateSection(sectionName) {
    this.activeSection = sectionName;
    return this;
  },
  activateFirstSection: function activateFirstSection() {
    var self = this;
    var sectionControls = self.collection.filter(function (controlModel) {
      return 'section' === controlModel.get('type') && self.isVisibleSectionControl(controlModel);
    });
    var sectionToActivate;

    if (!sectionControls[0]) {
      self.activeSection = null;
      sectionToActivate = null;
    } else {
      sectionToActivate = sectionControls[0].get('name');
    }

    var preActivatedSection = sectionControls.filter(function (controlModel) {
      return self.activeSection === controlModel.get('name');
    });

    if (preActivatedSection[0]) {
      return;
    }

    self.activateSection(sectionToActivate);
    return this;
  },
  getChildView: function getChildView(item) {
    var controlType = item.get('type');
    return elementor.getControlView(controlType);
  },
  getNamespaceArray: function getNamespaceArray() {
    return [elementor.getPanelView().getCurrentPageName()];
  },
  openActiveSection: function openActiveSection() {
    var activeSection = this.activeSection,
        activeSectionView = this.children.filter(function (view) {
      return activeSection === view.model.get('name');
    });

    if (activeSectionView[0]) {
      activeSectionView[0].$el.addClass('elementor-open');
      var eventNamespace = this.getNamespaceArray();
      eventNamespace.push(activeSection, 'activated');
      elementor.channels.editor.trigger(eventNamespace.join(':'), this);
    }
  },
  onRenderCollection: function onRenderCollection() {
    this.openActiveSection();
    ControlsStack.handlePopovers(this);
  },
  onModelDestroy: function onModelDestroy() {
    this.destroy();
  },
  onReloadButtonClick: function onReloadButtonClick() {
    elementor.reloadPreview();
  },
  onDeviceModeChange: function onDeviceModeChange() {
    if ('desktop' === elementor.channels.deviceMode.request('currentMode')) {
      this.$el.removeClass('elementor-responsive-switchers-open');
    }
  },
  onChildviewControlSectionClicked: function onChildviewControlSectionClicked(childView) {
    var isSectionOpen = childView.$el.hasClass('elementor-open');
    this.activateSection(isSectionOpen ? null : childView.model.get('name'));

    this._renderChildren();
  },
  onChildviewResponsiveSwitcherClick: function onChildviewResponsiveSwitcherClick(childView, device) {
    if ('desktop' === device) {
      this.$el.toggleClass('elementor-responsive-switchers-open');
    }
  }
}, {
  handlePopovers: function handlePopovers(view) {
    var popover;
    view.popovers = [];
    this.removePopovers(view);
    view.children.each(function (control) {
      if (popover) {
        popover.addChild(control);
      }

      var popoverData = control.model.get('popover');

      if (!popoverData) {
        return;
      }

      if (popoverData.start) {
        popover = new _controlsPopover.default(control);
        view.popovers.push(popover);
      }

      if (popoverData.end) {
        popover = null;
      }
    });
  },
  removePopovers: function removePopovers(view) {
    view.popovers.forEach(function (popover) {
      return popover.destroy();
    });
  }
});
module.exports = ControlsStack;

/***/ }),

/***/ "../assets/dev/js/editor/views/preview.js":
/*!************************************************!*\
  !*** ../assets/dev/js/editor/views/preview.js ***!
  \************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _independent = _interopRequireDefault(__webpack_require__(/*! ./add-section/independent */ "../assets/dev/js/editor/views/add-section/independent.js"));

var BaseSectionsContainerView = __webpack_require__(/*! elementor-views/base-sections-container */ "../assets/dev/js/editor/views/base-sections-container.js");

var Preview = BaseSectionsContainerView.extend({
  initialize: function initialize() {
    this.$childViewContainer = jQuery('<div>', {
      class: 'elementor-section-wrap'
    });
    BaseSectionsContainerView.prototype.initialize.apply(this, arguments);
  },
  getChildViewContainer: function getChildViewContainer() {
    return this.$childViewContainer;
  },
  behaviors: function behaviors() {
    var parentBehaviors = BaseSectionsContainerView.prototype.behaviors.apply(this, arguments),
        behaviors = {
      contextMenu: {
        behaviorClass: __webpack_require__(/*! elementor-behaviors/context-menu */ "../assets/dev/js/editor/elements/views/behaviors/context-menu.js"),
        groups: this.getContextMenuGroups()
      }
    };
    return jQuery.extend(parentBehaviors, behaviors);
  },
  getContainer: function getContainer() {
    return elementor.settings.page.getEditedView().getContainer();
  },
  getContextMenuGroups: function getContextMenuGroups() {
    var _this = this;

    var hasContent = function hasContent() {
      return elementor.elements.length > 0;
    };

    return [{
      name: 'paste',
      actions: [{
        name: 'paste',
        title: __('Paste', 'elementor'),
        isEnabled: function isEnabled() {
          return $e.components.get('document/elements').utils.isPasteEnabled(_this.getContainer());
        },
        callback: function callback(at) {
          return $e.run('document/ui/paste', {
            container: _this.getContainer(),
            options: {
              at: at,
              rebuild: true
            }
          });
        }
      }]
    }, {
      name: 'content',
      actions: [{
        name: 'copy_all_content',
        title: __('Copy All Content', 'elementor'),
        isEnabled: hasContent,
        callback: function callback() {
          return $e.run('document/elements/copy-all');
        }
      }, {
        name: 'delete_all_content',
        title: __('Delete All Content', 'elementor'),
        isEnabled: hasContent,
        callback: function callback() {
          return $e.run('document/elements/empty');
        }
      }]
    }];
  },
  onRender: function onRender() {
    var $contentContainer;

    if (elementorCommon.config.experimentalFeatures['e_dom_optimization']) {
      $contentContainer = this.$el;
    } else {
      var $inner = jQuery('<div>', {
        class: 'elementor-inner'
      });
      this.$el.html($inner);
      $contentContainer = $inner;
    }

    $contentContainer.html(this.$childViewContainer);

    if (elementor.userCan('design')) {
      var addNewSectionView = new _independent.default();
      addNewSectionView.render();
      $contentContainer.append(addNewSectionView.$el);
    }
  }
});
module.exports = Preview;

/***/ }),

/***/ "../assets/dev/js/modules/imports/args-object.js":
/*!*******************************************************!*\
  !*** ../assets/dev/js/modules/imports/args-object.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _instanceType = _interopRequireDefault(__webpack_require__(/*! ./instance-type */ "../assets/dev/js/modules/imports/instance-type.js"));

var ArgsObject = /*#__PURE__*/function (_InstanceType) {
  (0, _inherits2.default)(ArgsObject, _InstanceType);

  var _super = (0, _createSuper2.default)(ArgsObject);

  /**
   * Function constructor().
   *
   * Create ArgsObject.
   *
   * @param {{}} args
   */
  function ArgsObject(args) {
    var _this;

    (0, _classCallCheck2.default)(this, ArgsObject);
    _this = _super.call(this);
    _this.args = args;
    return _this;
  }
  /**
   * Function requireArgument().
   *
   * Validate property in args.
   *
   * @param {string} property
   * @param {{}} args
   *
   * @throws {Error}
   *
   */


  (0, _createClass2.default)(ArgsObject, [{
    key: "requireArgument",
    value: function requireArgument(property) {
      var args = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.args;

      if (!args.hasOwnProperty(property)) {
        throw Error("".concat(property, " is required."));
      }
    }
    /**
     * Function requireArgumentType().
     *
     * Validate property in args using `type === typeof(args.whatever)`.
     *
     * @param {string} property
     * @param {string} type
     * @param {{}} args
     *
     * @throws {Error}
     *
     */

  }, {
    key: "requireArgumentType",
    value: function requireArgumentType(property, type) {
      var args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.args;
      this.requireArgument(property, args);

      if ((0, _typeof2.default)(args[property]) !== type) {
        throw Error("".concat(property, " invalid type: ").concat(type, "."));
      }
    }
    /**
     * Function requireArgumentInstance().
     *
     * Validate property in args using `args.whatever instanceof instance`.
     *
     * @param {string} property
     * @param {instanceof} instance
     * @param {{}} args
     *
     * @throws {Error}
     *
     */

  }, {
    key: "requireArgumentInstance",
    value: function requireArgumentInstance(property, instance) {
      var args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.args;
      this.requireArgument(property, args);

      if (!(args[property] instanceof instance)) {
        throw Error("".concat(property, " invalid instance."));
      }
    }
    /**
     * Function requireArgumentConstructor().
     *
     * Validate property in args using `type === args.whatever.constructor`.
     *
     * @param {string} property
     * @param {*} type
     * @param {{}} args
     *
     * @throws {Error}
     *
     */

  }, {
    key: "requireArgumentConstructor",
    value: function requireArgumentConstructor(property, type) {
      var args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.args;
      this.requireArgument(property, args);

      if (args[property].constructor !== type) {
        throw Error("".concat(property, " invalid constructor type."));
      }
    }
  }], [{
    key: "getInstanceType",
    value: function getInstanceType() {
      return 'ArgsObject';
    }
  }]);
  return ArgsObject;
}(_instanceType.default);

exports.default = ArgsObject;

/***/ }),

/***/ "../assets/dev/js/modules/imports/instance-type.js":
/*!*********************************************************!*\
  !*** ../assets/dev/js/modules/imports/instance-type.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _hasInstance = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/has-instance */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/has-instance.js"));

var _isArray = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js"));

__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var InstanceType = /*#__PURE__*/function () {
  function InstanceType() {
    var _this = this;

    (0, _classCallCheck2.default)(this, InstanceType);
    // Since anonymous classes sometimes do not get validated by babel, do it manually.
    var target = this instanceof InstanceType ? this.constructor : void 0;
    var prototypes = [];

    while (target.__proto__ && target.__proto__.name) {
      prototypes.push(target.__proto__);
      target = target.__proto__;
    }

    prototypes.reverse().forEach(function (proto) {
      return _this instanceof proto;
    });
  }

  (0, _createClass2.default)(InstanceType, null, [{
    key: _hasInstance.default,
    value: function value(target) {
      /**
       * This is function extending being called each time JS uses instanceOf, since babel use it each time it create new class
       * its give's opportunity to mange capabilities of instanceOf operator.
       * saving current class each time will give option later to handle instanceOf manually.
       */
      var result = (0, _get2.default)((0, _getPrototypeOf2.default)(InstanceType), _hasInstance.default, this).call(this, target); // Act normal when validate a class, which does not have instance type.

      if (target && !target.constructor.getInstanceType) {
        return result;
      }

      if (target) {
        if (!target.instanceTypes) {
          target.instanceTypes = [];
        }

        if (!result) {
          if (this.getInstanceType() === target.constructor.getInstanceType()) {
            result = true;
          }
        }

        if (result) {
          var name = this.getInstanceType === InstanceType.getInstanceType ? 'BaseInstanceType' : this.getInstanceType();

          if (-1 === target.instanceTypes.indexOf(name)) {
            target.instanceTypes.push(name);
          }
        }
      }

      if (!result && target) {
        // Check if the given 'target', is instance of known types.
        result = target.instanceTypes && (0, _isArray.default)(target.instanceTypes) && -1 !== target.instanceTypes.indexOf(this.getInstanceType());
      }

      return result;
    }
  }, {
    key: "getInstanceType",
    value: function getInstanceType() {
      elementorModules.ForceMethodImplementation();
    }
  }]);
  return InstanceType;
}();

exports.default = InstanceType;

/***/ }),

/***/ "../assets/dev/js/utils/breakpoints.js":
/*!*********************************************!*\
  !*** ../assets/dev/js/utils/breakpoints.js ***!
  \*********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es6.regexp.constructor.js */ "../node_modules/core-js/modules/es6.regexp.constructor.js");

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));

var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

/**
 * Breakpoints
 *
 * This utility class contains helper functions relating to Elementor's breakpoints system.
 *
 * @since 3.4.0
 */
var Breakpoints = /*#__PURE__*/function (_elementorModules$Mod) {
  (0, _inherits2.default)(Breakpoints, _elementorModules$Mod);

  var _super = (0, _createSuper2.default)(Breakpoints);

  function Breakpoints(responsiveConfig) {
    var _this;

    (0, _classCallCheck2.default)(this, Breakpoints);
    _this = _super.call(this); // The passed config is either `elementor.config.responsive` or `elementorFrontend.config.responsive`

    _this.responsiveConfig = responsiveConfig;
    return _this;
  }
  /**
   * Get Active Breakpoints List
   *
   * Returns a flat array containing the active breakpoints/devices. By default, it returns the li
   * the list ordered from smallest to largest breakpoint. If `true` is passed as a parameter, it reverses the order.
   *
   * @since 3.4.0
   *
   * @param {Object} args
   */


  (0, _createClass2.default)(Breakpoints, [{
    key: "getActiveBreakpointsList",
    value: function getActiveBreakpointsList() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      var defaultArgs = {
        largeToSmall: false,
        withDesktop: false
      };
      args = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, defaultArgs), args);
      var breakpointKeys = (0, _keys.default)(this.responsiveConfig.activeBreakpoints);

      if (args.withDesktop) {
        // If there is an active 'widescreen' breakpoint, insert the artificial 'desktop' device below it.
        var widescreenIndex = breakpointKeys.indexOf('widescreen'),
            indexToInsertDesktopDevice = -1 === widescreenIndex ? breakpointKeys.length : breakpointKeys.length - 1;
        breakpointKeys.splice(indexToInsertDesktopDevice, 0, 'desktop');
      }

      if (args.largeToSmall) {
        breakpointKeys.reverse();
      }

      return breakpointKeys;
    }
    /**
     * Get Active Breakpoint Values
     *
     * Returns a flat array containing the list of active breakpoint values, from smallest to largest.
     *
     * @since 3.4.0
     */

  }, {
    key: "getBreakpointValues",
    value: function getBreakpointValues() {
      var activeBreakpoints = this.responsiveConfig.activeBreakpoints,
          breakpointValues = [];
      (0, _values.default)(activeBreakpoints).forEach(function (breakpointConfig) {
        breakpointValues.push(breakpointConfig.value);
      });
      return breakpointValues;
    }
    /**
     * Get Desktop Previous Device Key
     *
     * Returns the key of the device directly under desktop (can be 'tablet', 'tablet_extra', 'laptop').
     *
     * @since 3.4.0
     *
     * @returns {string}
     */

  }, {
    key: "getDesktopPreviousDeviceKey",
    value: function getDesktopPreviousDeviceKey() {
      var desktopPreviousDevice = '';
      var activeBreakpoints = this.responsiveConfig.activeBreakpoints,
          breakpointKeys = (0, _keys.default)(activeBreakpoints),
          numOfDevices = breakpointKeys.length;

      if ('min' === activeBreakpoints[breakpointKeys[numOfDevices - 1]].direction) {
        // If the widescreen breakpoint is active, the device that's previous to desktop is the last one before
        // widescreen.
        desktopPreviousDevice = breakpointKeys[numOfDevices - 2];
      } else {
        // If the widescreen breakpoint isn't active, we just take the last device returned by the config.
        desktopPreviousDevice = breakpointKeys[numOfDevices - 1];
      }

      return desktopPreviousDevice;
    }
    /**
     * Get Device Minimum Breakpoint
     *
     * Returns the minimum point in the device's display range. For each device, the minimum point of its display range
     * is the max point of the device below it + 1px. For example, if the active devices are mobile, tablet,
     * and desktop, and the mobile breakpoint is 767px, the minimum display point for tablet devices is 768px.
     *
     * @since 3.4.0
     *
     * @returns {number|*}
     */

  }, {
    key: "getDesktopMinPoint",
    value: function getDesktopMinPoint() {
      var activeBreakpoints = this.responsiveConfig.activeBreakpoints,
          desktopPreviousDevice = this.getDesktopPreviousDeviceKey();
      return activeBreakpoints[desktopPreviousDevice].value + 1;
    }
    /**
     * Get Device Minimum Breakpoint
     *
     * Returns the minimum point in the device's display range. For each device, the minimum point of its display range
     * is the max point of the device below it + 1px. For example, if the active devices are mobile, tablet,
     * and desktop, and the mobile breakpoint is 767px, the minimum display point for tablet devices is 768px.
     *
     * @since 3.4.0
     *
     * @param device
     * @returns {number|*}
     */

  }, {
    key: "getDeviceMinBreakpoint",
    value: function getDeviceMinBreakpoint(device) {
      if ('desktop' === device) {
        return this.getDesktopMinPoint();
      }

      var activeBreakpoints = this.responsiveConfig.activeBreakpoints,
          breakpointNames = (0, _keys.default)(activeBreakpoints);
      var minBreakpoint;

      if (breakpointNames[0] === device) {
        // For the lowest breakpoint, the min point is always 320.
        minBreakpoint = 320;
      } else if ('widescreen' === device) {
        // Widescreen only has a minimum point. In this case, the breakpoint
        // value in the Breakpoints config is itself the device min point.
        if (activeBreakpoints[device]) {
          minBreakpoint = activeBreakpoints[device].value;
        } else {
          // If the widescreen breakpoint does not exist in the active breakpoints config (for example, in the
          // case this method runs as the breakpoint is being added), get the value from the full config.
          minBreakpoint = this.responsiveConfig.breakpoints.widescreen;
        }
      } else {
        var deviceNameIndex = breakpointNames.indexOf(device),
            previousIndex = deviceNameIndex - 1;
        minBreakpoint = activeBreakpoints[breakpointNames[previousIndex]].value + 1;
      }

      return minBreakpoint;
    }
    /**
     * Get Active Match Regex
     *
     * Returns a regular expression containing all active breakpoints prefixed with an underscore.
     *
     * @returns {RegExp}
     */

  }, {
    key: "getActiveMatchRegex",
    value: function getActiveMatchRegex() {
      return new RegExp(this.getActiveBreakpointsList().map(function (device) {
        return '_' + device;
      }).join('|') + '$');
    }
  }]);
  return Breakpoints;
}(elementorModules.Module);

exports.default = Breakpoints;

/***/ }),

/***/ "../assets/dev/js/utils/hooks.js":
/*!***************************************!*\
  !*** ../assets/dev/js/utils/hooks.js ***!
  \***************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

/**
 * Handles managing all events for whatever you plug it into. Priorities for hooks are based on lowest to highest in
 * that, lowest priority hooks are fired first.
 */

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _parseInt2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/parse-int */ "../node_modules/@babel/runtime-corejs2/core-js/parse-int.js"));

__webpack_require__(/*! core-js/modules/es6.array.slice.js */ "../node_modules/core-js/modules/es6.array.slice.js");

var EventManager = function EventManager() {
  var slice = Array.prototype.slice,
      MethodsAvailable;
  /**
   * Contains the hooks that get registered with this EventManager. The array for storage utilizes a "flat"
   * object literal such that looking up the hook utilizes the native object literal hash.
   */

  var STORAGE = {
    actions: {},
    filters: {}
  };
  /**
   * Removes the specified hook by resetting the value of it.
   *
   * @param type Type of hook, either 'actions' or 'filters'
   * @param hook The hook (namespace.identifier) to remove
   *
   * @private
   */

  function _removeHook(type, hook, callback, context) {
    var handlers, handler, i;

    if (!STORAGE[type][hook]) {
      return;
    }

    if (!callback) {
      STORAGE[type][hook] = [];
    } else {
      handlers = STORAGE[type][hook];

      if (!context) {
        for (i = handlers.length; i--;) {
          if (handlers[i].callback === callback) {
            handlers.splice(i, 1);
          }
        }
      } else {
        for (i = handlers.length; i--;) {
          handler = handlers[i];

          if (handler.callback === callback && handler.context === context) {
            handlers.splice(i, 1);
          }
        }
      }
    }
  }
  /**
   * Use an insert sort for keeping our hooks organized based on priority. This function is ridiculously faster
   * than bubble sort, etc: http://jsperf.com/javascript-sort
   *
   * @param hooks The custom array containing all of the appropriate hooks to perform an insert sort on.
   * @private
   */


  function _hookInsertSort(hooks) {
    var tmpHook, j, prevHook;

    for (var i = 1, len = hooks.length; i < len; i++) {
      tmpHook = hooks[i];
      j = i;

      while ((prevHook = hooks[j - 1]) && prevHook.priority > tmpHook.priority) {
        hooks[j] = hooks[j - 1];
        --j;
      }

      hooks[j] = tmpHook;
    }

    return hooks;
  }
  /**
   * Adds the hook to the appropriate storage container
   *
   * @param type 'actions' or 'filters'
   * @param hook The hook (namespace.identifier) to add to our event manager
   * @param callback The function that will be called when the hook is executed.
   * @param priority The priority of this hook. Must be an integer.
   * @param [context] A value to be used for this
   * @private
   */


  function _addHook(type, hook, callback, priority, context) {
    var hookObject = {
      callback: callback,
      priority: priority,
      context: context
    }; // Utilize 'prop itself' : http://jsperf.com/hasownproperty-vs-in-vs-undefined/19

    var hooks = STORAGE[type][hook];

    if (hooks) {
      // TEMP FIX BUG
      var hasSameCallback = false;
      jQuery.each(hooks, function () {
        if (this.callback === callback) {
          hasSameCallback = true;
          return false;
        }
      });

      if (hasSameCallback) {
        return;
      } // END TEMP FIX BUG


      hooks.push(hookObject);
      hooks = _hookInsertSort(hooks);
    } else {
      hooks = [hookObject];
    }

    STORAGE[type][hook] = hooks;
  }
  /**
   * Runs the specified hook. If it is an action, the value is not modified but if it is a filter, it is.
   *
   * @param type 'actions' or 'filters'
   * @param hook The hook ( namespace.identifier ) to be ran.
   * @param args Arguments to pass to the action/filter. If it's a filter, args is actually a single parameter.
   * @private
   */


  function _runHook(type, hook, args) {
    var handlers = STORAGE[type][hook],
        i,
        len;

    if (!handlers) {
      return 'filters' === type ? args[0] : false;
    }

    len = handlers.length;

    if ('filters' === type) {
      for (i = 0; i < len; i++) {
        args[0] = handlers[i].callback.apply(handlers[i].context, args);
      }
    } else {
      for (i = 0; i < len; i++) {
        handlers[i].callback.apply(handlers[i].context, args);
      }
    }

    return 'filters' === type ? args[0] : true;
  }
  /**
   * Adds an action to the event manager.
   *
   * @param action Must contain namespace.identifier
   * @param callback Must be a valid callback function before this action is added
   * @param [priority=10] Used to control when the function is executed in relation to other callbacks bound to the same hook
   * @param [context] Supply a value to be used for this
   */


  function addAction(action, callback, priority, context) {
    if ('string' === typeof action && 'function' === typeof callback) {
      priority = (0, _parseInt2.default)(priority || 10, 10);

      _addHook('actions', action, callback, priority, context);
    }

    return MethodsAvailable;
  }
  /**
   * Performs an action if it exists. You can pass as many arguments as you want to this function; the only rule is
   * that the first argument must always be the action.
   */


  function doAction() {
    var args = slice.call(arguments);
    var action = args.shift();

    if ('string' === typeof action) {
      _runHook('actions', action, args);
    }

    return MethodsAvailable;
  }
  /**
   * Removes the specified action if it contains a namespace.identifier & exists.
   *
   * @param action The action to remove
   * @param [callback] Callback function to remove
   */


  function removeAction(action, callback) {
    if ('string' === typeof action) {
      _removeHook('actions', action, callback);
    }

    return MethodsAvailable;
  }
  /**
   * Adds a filter to the event manager.
   *
   * @param filter Must contain namespace.identifier
   * @param callback Must be a valid callback function before this action is added
   * @param [priority=10] Used to control when the function is executed in relation to other callbacks bound to the same hook
   * @param [context] Supply a value to be used for this
   */


  function addFilter(filter, callback, priority, context) {
    if ('string' === typeof filter && 'function' === typeof callback) {
      priority = (0, _parseInt2.default)(priority || 10, 10);

      _addHook('filters', filter, callback, priority, context);
    }

    return MethodsAvailable;
  }
  /**
   * Performs a filter if it exists. You should only ever pass 1 argument to be filtered. The only rule is that
   * the first argument must always be the filter.
   */


  function applyFilters() {
    var args = slice.call(arguments);
    var filter = args.shift();

    if ('string' === typeof filter) {
      return _runHook('filters', filter, args);
    }

    return MethodsAvailable;
  }
  /**
   * Removes the specified filter if it contains a namespace.identifier & exists.
   *
   * @param filter The action to remove
   * @param [callback] Callback function to remove
   */


  function removeFilter(filter, callback) {
    if ('string' === typeof filter) {
      _removeHook('filters', filter, callback);
    }

    return MethodsAvailable;
  }
  /**
   * Maintain a reference to the object scope so our public methods never get confusing.
   */


  MethodsAvailable = {
    removeFilter: removeFilter,
    applyFilters: applyFilters,
    addFilter: addFilter,
    removeAction: removeAction,
    doAction: doAction,
    addAction: addAction
  }; // return all of the publicly available methods

  return MethodsAvailable;
};

module.exports = EventManager;

/***/ }),

/***/ "../core/app/assets/js/utils/utils.js":
/*!********************************************!*\
  !*** ../core/app/assets/js/utils/utils.js ***!
  \********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.isOneOf = exports.rgbToHex = exports.stringToRemValues = exports.arrayToClassName = exports.pxToRem = void 0;

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js"));

__webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");

__webpack_require__(/*! core-js/modules/es6.regexp.to-string.js */ "../node_modules/core-js/modules/es6.regexp.to-string.js");

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

__webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

var pxToRem = function pxToRem(pixels) {
  if (!pixels) {
    return;
  } else if ('string' !== typeof pixels) {
    pixels = pixels.toString();
  }

  return pixels.split(' ').map(function (value) {
    return "".concat(value * 0.0625, "rem");
  }).join(' ');
};

exports.pxToRem = pxToRem;

var arrayToClassName = function arrayToClassName(array, action) {
  return array.filter(function (item) {
    return 'object' === (0, _typeof2.default)(item) ? (0, _entries.default)(item)[0][1] : item;
  }).map(function (item) {
    var value = 'object' === (0, _typeof2.default)(item) ? (0, _entries.default)(item)[0][0] : item;
    return action ? action(value) : value;
  }).join(' ');
};

exports.arrayToClassName = arrayToClassName;

var stringToRemValues = function stringToRemValues(string) {
  return string.split(' ').map(function (value) {
    return pxToRem(value);
  }).join(' ');
};

exports.stringToRemValues = stringToRemValues;

var rgbToHex = function rgbToHex(r, g, b) {
  return '#' + [r, g, b].map(function (x) {
    var hex = x.toString(16);
    return 1 === hex.length ? '0' + hex : hex;
  }).join('');
};

exports.rgbToHex = rgbToHex;

var isOneOf = function isOneOf(filetype, filetypeOptions) {
  return filetypeOptions.some(function (type) {
    return filetype.includes(type);
  });
};

exports.isOneOf = isOneOf;

/***/ }),

/***/ "../core/common/assets/js/api/modules/command-base.js":
/*!************************************************************!*\
  !*** ../core/common/assets/js/api/modules/command-base.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

__webpack_require__(/*! core-js/modules/es6.string.iterator.js */ "../node_modules/core-js/modules/es6.string.iterator.js");

__webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");

__webpack_require__(/*! core-js/modules/es6.array.iterator.js */ "../node_modules/core-js/modules/es6.array.iterator.js");

__webpack_require__(/*! core-js/modules/web.dom.iterable.js */ "../node_modules/core-js/modules/web.dom.iterable.js");

var _isArray = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js"));

var _promise = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/promise */ "../node_modules/@babel/runtime-corejs2/core-js/promise.js"));

var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js"));

var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/asyncToGenerator */ "../node_modules/@babel/runtime-corejs2/helpers/asyncToGenerator.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _argsObject = _interopRequireDefault(__webpack_require__(/*! elementor-assets-js/modules/imports/args-object */ "../assets/dev/js/modules/imports/args-object.js"));

var CommandBase = /*#__PURE__*/function (_ArgsObject) {
  (0, _inherits2.default)(CommandBase, _ArgsObject);

  var _super = (0, _createSuper2.default)(CommandBase);

  /**
   * Function constructor().
   *
   * Create Commands Base.
   *
   * @param [args={}]
   * @param [commandsAPI={}]
   */
  function CommandBase(args) {
    var _this;

    var commandsAPI = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : $e.commands;
    (0, _classCallCheck2.default)(this, CommandBase);
    _this = _super.call(this, args); // Acknowledge self about which command it run.

    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "component", void 0);
    _this.currentCommand = commandsAPI.getCurrentLast(); // Assign instance of current component.

    _this.component = commandsAPI.getComponent(_this.currentCommand); // Who ever need do something before without `super` the constructor can use `initialize` method.

    _this.initialize(args); // Refresh args, maybe the changed via `initialize`.


    args = _this.args; // Validate args before run.

    _this.validateArgs(args);

    return _this;
  }
  /**
   * Function requireContainer().
   *
   * Validate `arg.container` & `arg.containers`.
   *
   * @param {{}} args
   *
   * @throws {Error}
   */


  (0, _createClass2.default)(CommandBase, [{
    key: "requireContainer",
    value: function requireContainer() {
      var _this2 = this;

      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.args;

      if (!args.container && !args.containers) {
        throw Error('container or containers are required.');
      }

      if (args.container && args.containers) {
        throw Error('container and containers cannot go together please select one of them.');
      }

      var containers = args.containers || [args.container];
      containers.forEach(function (container) {
        _this2.requireArgumentInstance('container', elementorModules.editor.Container, {
          container: container
        });
      });
    }
    /**
     * Function initialize().
     *
     * Initialize command, called after construction.
     *
     * @param [args={}]
     */

  }, {
    key: "initialize",
    value: function initialize() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
    } // eslint-disable-line no-unused-vars

    /**
     * Function validateArgs().
     *
     * Validate command arguments.
     *
     * @param [args={}]
     */

  }, {
    key: "validateArgs",
    value: function validateArgs() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
    } // eslint-disable-line no-unused-vars

    /**
     * Function isDataChanged().
     *
     * Whether the editor needs to set change flag on/off.
     *
     * @returns {boolean}
     */

  }, {
    key: "isDataChanged",
    value: function isDataChanged() {
      return false;
    }
    /**
     * Function apply().
     *
     * Do the actual command.
     *
     * @param [args={}]
     *
     * @returns {*}
     */

  }, {
    key: "apply",
    value: function apply() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      // eslint-disable-line no-unused-vars
      elementorModules.ForceMethodImplementation();
    }
    /**
     * Function run().
     *
     * Run command with history & hooks.
     *
     * @returns {*}
     */

  }, {
    key: "run",
    value: function run() {
      var result; // For UI Hooks.

      this.onBeforeRun(this.args);

      try {
        // For Data hooks.
        this.onBeforeApply(this.args);
        result = this.apply(this.args);
      } catch (e) {
        this.onCatchApply(e); // Catch 'Hook-Break' that comes from hooks base.

        if (e instanceof $e.modules.HookBreak) {
          // Bypass.
          return false;
        }
      }

      return this.runAfter(result);
    }
  }, {
    key: "runAfter",
    value: function runAfter(result) {
      var _this3 = this;

      var onAfter = function onAfter(_result) {
        // Run Data hooks.
        _this3.onAfterApply(_this3.args, _result); // TODO: Create Command-Base for Command-Document and apply it on after.


        if (_this3.isDataChanged()) {
          $e.internal('document/save/set-is-modified', {
            status: true
          });
        } // For UI hooks.


        _this3.onAfterRun(_this3.args, _result);
      },
          asyncOnAfter = /*#__PURE__*/function () {
        var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(_result) {
          var results, promises;
          return _regenerator.default.wrap(function _callee$(_context) {
            while (1) {
              switch (_context.prev = _context.next) {
                case 0:
                  // Run Data hooks.
                  results = _this3.onAfterApply(_this3.args, _result), promises = (0, _isArray.default)(results) ? results.flat().filter(function (filtered) {
                    return filtered instanceof _promise.default;
                  }) : [];

                  if (!promises.length) {
                    _context.next = 4;
                    break;
                  }

                  _context.next = 4;
                  return _promise.default.all(promises);

                case 4:
                  if (_this3.isDataChanged()) {
                    // TODO: Create Command-Base for Command-Document and apply it on after.
                    $e.internal('document/save/set-is-modified', {
                      status: true
                    });
                  } // For UI hooks.


                  _this3.onAfterRun(_this3.args, _result);

                case 6:
                case "end":
                  return _context.stop();
              }
            }
          }, _callee);
        }));

        return function asyncOnAfter(_x) {
          return _ref.apply(this, arguments);
        };
      }(); // TODO: Temp code determine if it's a jQuery deferred object.


      if (result && 'object' === (0, _typeof2.default)(result) && result.promise && result.then && result.fail) {
        result.fail(this.onCatchApply.bind(this));
        result.done(onAfter);
      } else if (result instanceof _promise.default) {
        // Override initial result ( promise ) to await onAfter promises, first!.
        return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
          return _regenerator.default.wrap(function _callee2$(_context2) {
            while (1) {
              switch (_context2.prev = _context2.next) {
                case 0:
                  _context2.next = 2;
                  return result.catch(_this3.onCatchApply.bind(_this3));

                case 2:
                  _context2.next = 4;
                  return result.then(function (_result) {
                    return asyncOnAfter(_result);
                  });

                case 4:
                  return _context2.abrupt("return", result);

                case 5:
                case "end":
                  return _context2.stop();
              }
            }
          }, _callee2);
        }))();
      } else {
        onAfter(result);
      }

      return result;
    }
    /**
     * Run all the catch hooks.
     *
     * @param {Error} e
     */

  }, {
    key: "runCatchHooks",
    value: function runCatchHooks(e) {
      $e.hooks.runDataCatch(this.currentCommand, this.args, e);
      $e.hooks.runUICatch(this.currentCommand, this.args, e);
    }
    /**
     * Function onBeforeRun.
     *
     * Called before run().
     *
     * @param [args={}]
     */

  }, {
    key: "onBeforeRun",
    value: function onBeforeRun() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      $e.hooks.runUIBefore(this.currentCommand, args);
    }
    /**
     * Function onAfterRun.
     *
     * Called after run().
     *
     * @param [args={}]
     * @param [result={*}]
     */

  }, {
    key: "onAfterRun",
    value: function onAfterRun() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      var result = arguments.length > 1 ? arguments[1] : undefined;
      $e.hooks.runUIAfter(this.currentCommand, args, result);
    }
    /**
     * Function onBeforeApply.
     *
     * Called before apply().
     *
     * @param [args={}]
     */

  }, {
    key: "onBeforeApply",
    value: function onBeforeApply() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      $e.hooks.runDataDependency(this.currentCommand, args);
    }
    /**
     * Function onAfterApply.
     *
     * Called after apply().
     *
     * @param [args={}]
     * @param [result={*}]
     */

  }, {
    key: "onAfterApply",
    value: function onAfterApply() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      var result = arguments.length > 1 ? arguments[1] : undefined;
      return $e.hooks.runDataAfter(this.currentCommand, args, result);
    }
    /**
     * Function onCatchApply.
     *
     * Called after apply() failed.
     *
     * @param {Error} e
     */

  }, {
    key: "onCatchApply",
    value: function onCatchApply(e) {
      this.runCatchHooks(e);
      elementorCommon.helpers.consoleError(e);
    }
  }], [{
    key: "getInstanceType",
    value: function getInstanceType() {
      return 'CommandBase';
    }
    /**
     * Get info of command.
     *
     * Use to provide 'extra' information about the command.
     *
     * @returns {Object}
     */

  }, {
    key: "getInfo",
    value: function getInfo() {
      return {};
    }
    /**
     * Current component.
     *
     * @type {Component}
     */

  }]);
  return CommandBase;
}(_argsObject.default);

exports.default = CommandBase;

/***/ }),

/***/ "../core/common/assets/js/api/modules/command-internal-base.js":
/*!*********************************************************************!*\
  !*** ../core/common/assets/js/api/modules/command-internal-base.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! ./command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var CommandInternalBase = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(CommandInternalBase, _CommandBase);

  var _super = (0, _createSuper2.default)(CommandInternalBase);

  function CommandInternalBase(args) {
    var commandsAPI = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : $e.commandsInternal;
    (0, _classCallCheck2.default)(this, CommandInternalBase);
    return _super.call(this, args, commandsAPI);
  }

  (0, _createClass2.default)(CommandInternalBase, null, [{
    key: "getInstanceType",
    value: function getInstanceType() {
      return 'CommandInternalBase';
    }
  }]);
  return CommandInternalBase;
}(_commandBase.default);

exports.default = CommandInternalBase;

/***/ }),

/***/ "../core/common/assets/js/api/modules/commands/close.js":
/*!**************************************************************!*\
  !*** ../core/common/assets/js/api/modules/commands/close.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Close = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Close = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Close, _CommandBase);

  var _super = (0, _createSuper2.default)(Close);

  function Close() {
    (0, _classCallCheck2.default)(this, Close);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Close, [{
    key: "apply",
    value: function apply() {
      this.component.close();
    }
  }]);
  return Close;
}(_commandBase.default);

exports.Close = Close;
var _default = Close;
exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/api/modules/commands/index.js":
/*!**************************************************************!*\
  !*** ../core/common/assets/js/api/modules/commands/index.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "Close", {
  enumerable: true,
  get: function get() {
    return _close.Close;
  }
});

_Object$defineProperty(exports, "Open", {
  enumerable: true,
  get: function get() {
    return _open.Open;
  }
});

_Object$defineProperty(exports, "Toggle", {
  enumerable: true,
  get: function get() {
    return _toggle.Toggle;
  }
});

var _close = __webpack_require__(/*! ./close */ "../core/common/assets/js/api/modules/commands/close.js");

var _open = __webpack_require__(/*! ./open */ "../core/common/assets/js/api/modules/commands/open.js");

var _toggle = __webpack_require__(/*! ./toggle */ "../core/common/assets/js/api/modules/commands/toggle.js");

/***/ }),

/***/ "../core/common/assets/js/api/modules/commands/open.js":
/*!*************************************************************!*\
  !*** ../core/common/assets/js/api/modules/commands/open.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Open = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Open = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Open, _CommandBase);

  var _super = (0, _createSuper2.default)(Open);

  function Open() {
    (0, _classCallCheck2.default)(this, Open);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Open, [{
    key: "apply",
    value: function apply() {
      $e.route(this.component.getNamespace());
    }
  }]);
  return Open;
}(_commandBase.default);

exports.Open = Open;
var _default = Open;
exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/api/modules/commands/toggle.js":
/*!***************************************************************!*\
  !*** ../core/common/assets/js/api/modules/commands/toggle.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Toggle = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Toggle = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Toggle, _CommandBase);

  var _super = (0, _createSuper2.default)(Toggle);

  function Toggle() {
    (0, _classCallCheck2.default)(this, Toggle);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Toggle, [{
    key: "apply",
    value: function apply() {
      if (this.component.isOpen) {
        this.component.close();
      } else {
        $e.route(this.component.getNamespace());
      }
    }
  }]);
  return Toggle;
}(_commandBase.default);

exports.Toggle = Toggle;
var _default = Toggle;
exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/api/modules/component-base.js":
/*!**************************************************************!*\
  !*** ../core/common/assets/js/api/modules/component-base.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

__webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var ComponentBase = /*#__PURE__*/function (_elementorModules$Mod) {
  (0, _inherits2.default)(ComponentBase, _elementorModules$Mod);

  var _super = (0, _createSuper2.default)(ComponentBase);

  function ComponentBase() {
    (0, _classCallCheck2.default)(this, ComponentBase);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(ComponentBase, [{
    key: "__construct",
    value: function __construct() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};

      if (args.manager) {
        this.manager = args.manager;
      }

      this.commands = this.defaultCommands();
      this.commandsInternal = this.defaultCommandsInternal();
      this.hooks = this.defaultHooks();
      this.routes = this.defaultRoutes();
      this.tabs = this.defaultTabs();
      this.shortcuts = this.defaultShortcuts();
      this.utils = this.defaultUtils();
      this.data = this.defaultData();
      this.uiStates = this.defaultUiStates();
      this.defaultRoute = '';
      this.currentTab = '';
    }
  }, {
    key: "registerAPI",
    value: function registerAPI() {
      var _this = this;

      (0, _entries.default)(this.getTabs()).forEach(function (tab) {
        return _this.registerTabRoute(tab[0]);
      });
      (0, _entries.default)(this.getRoutes()).forEach(function (_ref) {
        var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
            route = _ref2[0],
            callback = _ref2[1];

        return _this.registerRoute(route, callback);
      });
      (0, _entries.default)(this.getCommands()).forEach(function (_ref3) {
        var _ref4 = (0, _slicedToArray2.default)(_ref3, 2),
            command = _ref4[0],
            callback = _ref4[1];

        return _this.registerCommand(command, callback);
      });
      (0, _entries.default)(this.getCommandsInternal()).forEach(function (_ref5) {
        var _ref6 = (0, _slicedToArray2.default)(_ref5, 2),
            command = _ref6[0],
            callback = _ref6[1];

        return _this.registerCommandInternal(command, callback);
      });
      (0, _values.default)(this.getHooks()).forEach(function (instance) {
        return _this.registerHook(instance);
      });
      (0, _entries.default)(this.getData()).forEach(function (_ref7) {
        var _ref8 = (0, _slicedToArray2.default)(_ref7, 2),
            command = _ref8[0],
            callback = _ref8[1];

        return _this.registerData(command, callback);
      });
      (0, _values.default)(this.getUiStates()).forEach(function (instance) {
        return _this.registerUiState(instance);
      });
    }
    /**
     * @returns {string}
     */

  }, {
    key: "getNamespace",
    value: function getNamespace() {
      elementorModules.ForceMethodImplementation();
    }
  }, {
    key: "getRootContainer",
    value: function getRootContainer() {
      var parts = this.getNamespace().split('/');
      return parts[0];
    }
  }, {
    key: "defaultTabs",
    value: function defaultTabs() {
      return {};
    }
  }, {
    key: "defaultRoutes",
    value: function defaultRoutes() {
      return {};
    }
  }, {
    key: "defaultCommands",
    value: function defaultCommands() {
      return {};
    }
  }, {
    key: "defaultCommandsInternal",
    value: function defaultCommandsInternal() {
      return {};
    }
  }, {
    key: "defaultHooks",
    value: function defaultHooks() {
      return {};
    }
    /**
     * Get the component's default UI states.
     *
     * @return {Object}
     */

  }, {
    key: "defaultUiStates",
    value: function defaultUiStates() {
      return {};
    }
  }, {
    key: "defaultShortcuts",
    value: function defaultShortcuts() {
      return {};
    }
  }, {
    key: "defaultUtils",
    value: function defaultUtils() {
      return {};
    }
  }, {
    key: "defaultData",
    value: function defaultData() {
      return {};
    }
  }, {
    key: "getCommands",
    value: function getCommands() {
      return this.commands;
    }
  }, {
    key: "getCommandsInternal",
    value: function getCommandsInternal() {
      return this.commandsInternal;
    }
  }, {
    key: "getHooks",
    value: function getHooks() {
      return this.hooks;
    }
    /**
     * Retrieve the component's UI states.
     *
     * @return {Object}
     */

  }, {
    key: "getUiStates",
    value: function getUiStates() {
      return this.uiStates;
    }
  }, {
    key: "getRoutes",
    value: function getRoutes() {
      return this.routes;
    }
  }, {
    key: "getTabs",
    value: function getTabs() {
      return this.tabs;
    }
  }, {
    key: "getShortcuts",
    value: function getShortcuts() {
      return this.shortcuts;
    }
  }, {
    key: "getData",
    value: function getData() {
      return this.data;
    }
  }, {
    key: "registerCommand",
    value: function registerCommand(command, callback) {
      $e.commands.register(this, command, callback);
    }
    /**
     * @param {HookBase} instance
     */

  }, {
    key: "registerHook",
    value: function registerHook(instance) {
      return instance.register();
    }
    /**
     * Register a UI state.
     *
     * @param {UiStateBase} instance - UI state instance.
     *
     * @return {void}
     */

  }, {
    key: "registerUiState",
    value: function registerUiState(instance) {
      $e.uiStates.register(instance);
    }
  }, {
    key: "registerCommandInternal",
    value: function registerCommandInternal(command, callback) {
      $e.commandsInternal.register(this, command, callback);
    }
  }, {
    key: "registerRoute",
    value: function registerRoute(route, callback) {
      $e.routes.register(this, route, callback);
    }
  }, {
    key: "registerData",
    value: function registerData(command, callback) {
      $e.data.register(this, command, callback);
    }
  }, {
    key: "unregisterRoute",
    value: function unregisterRoute(route) {
      $e.routes.unregister(this, route);
    }
  }, {
    key: "registerTabRoute",
    value: function registerTabRoute(tab) {
      var _this2 = this;

      this.registerRoute(tab, function (args) {
        return _this2.activateTab(tab, args);
      });
    }
  }, {
    key: "dependency",
    value: function dependency() {
      return true;
    }
  }, {
    key: "open",
    value: function open() {
      return true;
    }
  }, {
    key: "close",
    value: function close() {
      if (!this.isOpen) {
        return false;
      }

      this.isOpen = false;
      this.inactivate();
      $e.routes.clearCurrent(this.getNamespace());
      $e.routes.clearHistory(this.getRootContainer());
      return true;
    }
  }, {
    key: "activate",
    value: function activate() {
      $e.components.activate(this.getNamespace());
    }
  }, {
    key: "inactivate",
    value: function inactivate() {
      $e.components.inactivate(this.getNamespace());
    }
  }, {
    key: "isActive",
    value: function isActive() {
      return $e.components.isActive(this.getNamespace());
    }
  }, {
    key: "onRoute",
    value: function onRoute(route) {
      this.toggleRouteClass(route, true);
      this.toggleHistoryClass();
      this.activate();
      this.trigger('route/open', route);
    }
  }, {
    key: "onCloseRoute",
    value: function onCloseRoute(route) {
      this.toggleRouteClass(route, false);
      this.inactivate();
      this.trigger('route/close', route);
    }
  }, {
    key: "setDefaultRoute",
    value: function setDefaultRoute(route) {
      this.defaultRoute = this.getNamespace() + '/' + route;
    }
  }, {
    key: "getDefaultRoute",
    value: function getDefaultRoute() {
      return this.defaultRoute;
    }
  }, {
    key: "removeTab",
    value: function removeTab(tab) {
      delete this.tabs[tab];
      this.unregisterRoute(tab);
    }
  }, {
    key: "hasTab",
    value: function hasTab(tab) {
      return !!this.tabs[tab];
    }
  }, {
    key: "addTab",
    value: function addTab(tab, args, position) {
      var _this3 = this;

      this.tabs[tab] = args; // It can be 0.

      if ('undefined' !== typeof position) {
        var newTabs = {};
        var ids = (0, _keys.default)(this.tabs); // Remove new tab

        ids.pop(); // Add it to position.

        ids.splice(position, 0, tab);
        ids.forEach(function (id) {
          newTabs[id] = _this3.tabs[id];
        });
        this.tabs = newTabs;
      }

      this.registerTabRoute(tab);
    }
  }, {
    key: "getTabsWrapperSelector",
    value: function getTabsWrapperSelector() {
      return '';
    }
  }, {
    key: "getTabRoute",
    value: function getTabRoute(tab) {
      return this.getNamespace() + '/' + tab;
    }
  }, {
    key: "renderTab",
    value: function renderTab(tab) {} // eslint-disable-line

  }, {
    key: "activateTab",
    value: function activateTab(tab, args) {
      var _this4 = this;

      this.currentTab = tab;
      this.renderTab(tab, args);
      jQuery(this.getTabsWrapperSelector() + ' .elementor-component-tab').off('click').on('click', function (event) {
        $e.route(_this4.getTabRoute(event.currentTarget.dataset.tab), args);
      }).removeClass('elementor-active').filter('[data-tab="' + tab + '"]').addClass('elementor-active');
    }
  }, {
    key: "getActiveTabConfig",
    value: function getActiveTabConfig() {
      return this.tabs[this.currentTab] || {};
    }
  }, {
    key: "getBodyClass",
    value: function getBodyClass(route) {
      return 'e-route-' + route.replace(/\//g, '-');
    }
    /**
     * If command includes uppercase character convert it to lowercase and add `-`.
     * e.g: `CopyAll` is converted to `copy-all`.
     */

  }, {
    key: "normalizeCommandName",
    value: function normalizeCommandName(commandName) {
      return commandName.replace(/[A-Z]/g, function (match, offset) {
        return (offset > 0 ? '-' : '') + match.toLowerCase();
      });
    }
  }, {
    key: "importCommands",
    value: function importCommands(commandsFromImport) {
      var _this5 = this;

      var commands = {}; // Convert `Commands` to `ComponentBase` workable format.

      (0, _entries.default)(commandsFromImport).forEach(function (_ref9) {
        var _ref10 = (0, _slicedToArray2.default)(_ref9, 2),
            className = _ref10[0],
            Class = _ref10[1];

        var command = _this5.normalizeCommandName(className);

        commands[command] = function (args) {
          return new Class(args).run();
        }; // TODO: Temporary code, remove after merge with 'require-commands-base' branch.
        // should not return callback, but Class or Instance without run ( gain performance ).


        $e.commands.classes[_this5.getNamespace() + '/' + command] = Class;
      });
      return commands;
    }
  }, {
    key: "importHooks",
    value: function importHooks(hooksFromImport) {
      var hooks = {};

      for (var key in hooksFromImport) {
        var hook = new hooksFromImport[key]();
        hooks[hook.getId()] = hook;
      }

      return hooks;
    }
    /**
     * Import & initialize the component's UI states.
     * Should be used inside `defaultUiState()`.
     *
     * @param {Object} statesFromImport - UI states from import.
     *
     * @return {Object}
     */

  }, {
    key: "importUiStates",
    value: function importUiStates(statesFromImport) {
      var _this6 = this;

      var uiStates = {};
      (0, _values.default)(statesFromImport).forEach(function (className) {
        var uiState = new className(_this6);
        uiStates[uiState.getId()] = uiState;
      });
      return uiStates;
    }
    /**
     * Set a UI state value.
     * TODO: Should we provide such function? Maybe the developer should implicitly pass the full state ID?
     *
     * @param state - Non-prefixed state ID.
     * @param value - New state value.
     *
     * @return {void}
     */

  }, {
    key: "setUiState",
    value: function setUiState(state, value) {
      $e.uiStates.set("".concat(this.getNamespace(), "/").concat(state), value);
    }
  }, {
    key: "toggleRouteClass",
    value: function toggleRouteClass(route, state) {
      elementorCommon.elements.$body.toggleClass(this.getBodyClass(route), state);
    }
  }, {
    key: "toggleHistoryClass",
    value: function toggleHistoryClass() {
      elementorCommon.elements.$body.toggleClass('e-routes-has-history', !!$e.routes.getHistory(this.getRootContainer()).length);
    }
  }]);
  return ComponentBase;
}(elementorModules.Module);

exports.default = ComponentBase;

/***/ }),

/***/ "../core/common/assets/js/api/modules/component-modal-base.js":
/*!********************************************************************!*\
  !*** ../core/common/assets/js/api/modules/component-modal-base.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _componentBase = _interopRequireDefault(__webpack_require__(/*! ./component-base */ "../core/common/assets/js/api/modules/component-base.js"));

var commands = _interopRequireWildcard(__webpack_require__(/*! ./commands/ */ "../core/common/assets/js/api/modules/commands/index.js"));

var ComponentModalBase = /*#__PURE__*/function (_ComponentBase) {
  (0, _inherits2.default)(ComponentModalBase, _ComponentBase);

  var _super = (0, _createSuper2.default)(ComponentModalBase);

  function ComponentModalBase() {
    (0, _classCallCheck2.default)(this, ComponentModalBase);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(ComponentModalBase, [{
    key: "registerAPI",
    value: function registerAPI() {
      var _this = this;

      (0, _get2.default)((0, _getPrototypeOf2.default)(ComponentModalBase.prototype), "registerAPI", this).call(this);
      $e.shortcuts.register('esc', {
        scopes: [this.getNamespace()],
        callback: function callback() {
          return _this.close();
        }
      });
    }
  }, {
    key: "defaultCommands",
    value: function defaultCommands() {
      return this.importCommands(commands);
    }
  }, {
    key: "defaultRoutes",
    value: function defaultRoutes() {
      return {
        '': function _() {
          /* Nothing to do, it's already rendered. */
        }
      };
    }
  }, {
    key: "open",
    value: function open() {
      var _this2 = this;

      if (!this.layout) {
        var layout = this.getModalLayout();
        this.layout = new layout({
          component: this
        });
        this.layout.getModal().on('hide', function () {
          return _this2.close();
        });
      }

      this.layout.showModal();
      return true;
    }
  }, {
    key: "close",
    value: function close() {
      if (!(0, _get2.default)((0, _getPrototypeOf2.default)(ComponentModalBase.prototype), "close", this).call(this)) {
        return false;
      }

      this.layout.getModal().hide();
      return true;
    }
  }, {
    key: "getModalLayout",
    value: function getModalLayout() {
      elementorModules.ForceMethodImplementation();
    }
  }]);
  return ComponentModalBase;
}(_componentBase.default);

exports.default = ComponentModalBase;

/***/ }),

/***/ "../core/common/assets/js/api/modules/hook-base.js":
/*!*********************************************************!*\
  !*** ../core/common/assets/js/api/modules/hook-base.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var HookBase = /*#__PURE__*/function () {
  /**
   * Callback type, eg ( hook, event ).
   *
   * @type {string}
   */

  /**
   * Full command address, that will hook the callback.
   *
   * @type (string)
   */

  /**
   * Unique id of the callback.
   *
   * @type {string}
   */

  /**
   * Function constructor().
   *
   * Create callback base.
   */
  function HookBase() {
    (0, _classCallCheck2.default)(this, HookBase);
    (0, _defineProperty2.default)(this, "type", void 0);
    (0, _defineProperty2.default)(this, "command", void 0);
    (0, _defineProperty2.default)(this, "id", void 0);
    this.initialize();
    this.type = this.getType();
    this.command = this.getCommand();
    this.id = this.getId();
  }
  /**
   * Function initialize().
   *
   * Called after creation of the base, used for initialize extras.
   * Without expending constructor.
   */


  (0, _createClass2.default)(HookBase, [{
    key: "initialize",
    value: function initialize() {}
    /**
     * Function register().
     *
     * Used to register the callback.
     *
     * @throws {Error}
     */

  }, {
    key: "register",
    value: function register() {
      elementorModules.ForceMethodImplementation();
    }
    /**
     * Function getType().
     *
     * Get type eg: ( hook, event, etc ... ).
     *
     * @returns {string}
     *
     * @throws {Error}
     */

  }, {
    key: "getType",
    value: function getType() {
      elementorModules.ForceMethodImplementation();
    }
    /**
     * Function getCommand().
     *
     * Returns the full command path for callback binding.
     *
     * Supports array of strings ( commands ).
     *
     * @returns {string}
     *
     * @throws {Error}
     */

  }, {
    key: "getCommand",
    value: function getCommand() {
      elementorModules.ForceMethodImplementation();
    }
    /**
     * Function getId().
     *
     * Returns command id for the hook (should be unique).
     *
     * @returns {string}
     *
     * @throws {Error}
     */

  }, {
    key: "getId",
    value: function getId() {
      elementorModules.ForceMethodImplementation();
    }
    /**
     * Function getContainerType().
     *
     * Bind eContainer type to callback.
     *
     * Used to gain performance.
     *
     * @return {string} type
     */

  }, {
    key: "getContainerType",
    value: function getContainerType() {}
    /**
     * Function getConditions().
     *
     * Condition for running the callback, if true, call to apply().
     *
     * @param [args={}]
     * @param [result=*]
     *
     * @returns {boolean}
     */

  }, {
    key: "getConditions",
    value: function getConditions() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      var result = arguments.length > 1 ? arguments[1] : undefined;
      // eslint-disable-line no-unused-vars
      return true;
    }
    /**
     * Function apply().
     *
     * Apply the callback, ( The actual affect of the callback ).
     *
     * @param [args={}]
     *
     * @returns {*}
     */

  }, {
    key: "apply",
    value: function apply(args) {
      // eslint-disable-line no-unused-vars
      elementorModules.ForceMethodImplementation();
    }
    /**
     * Function run().
     *
     * Run the callback.
     *
     * @param {*} args
     *
     * @returns {*}
     */

  }, {
    key: "run",
    value: function run() {
      var _ref = arguments.length <= 0 ? undefined : arguments[0],
          _ref$options = _ref.options,
          options = _ref$options === void 0 ? {} : _ref$options; // Disable callback if requested by args.options.


      if (options.callbacks && false === options.callbacks[this.id]) {
        return true;
      }

      if (this.getConditions.apply(this, arguments)) {
        if ($e.devTools) {
          $e.devTools.log.callbacks().active(this.type, this.command, this.id);
        }

        return this.apply.apply(this, arguments);
      }

      return true;
    }
  }]);
  return HookBase;
}();

exports.default = HookBase;

/***/ }),

/***/ "../core/common/assets/js/api/modules/hooks/data/after.js":
/*!****************************************************************!*\
  !*** ../core/common/assets/js/api/modules/hooks/data/after.js ***!
  \****************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.After = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _base = _interopRequireDefault(__webpack_require__(/*! ./base */ "../core/common/assets/js/api/modules/hooks/data/base.js"));

var After = /*#__PURE__*/function (_Base) {
  (0, _inherits2.default)(After, _Base);

  var _super = (0, _createSuper2.default)(After);

  function After() {
    (0, _classCallCheck2.default)(this, After);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(After, [{
    key: "register",
    value: function register() {
      $e.hooks.registerDataAfter(this);
    }
  }]);
  return After;
}(_base.default);

exports.After = After;
var _default = After;
exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/api/modules/hooks/data/base.js":
/*!***************************************************************!*\
  !*** ../core/common/assets/js/api/modules/hooks/data/base.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Base = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _hookBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/hook-base */ "../core/common/assets/js/api/modules/hook-base.js"));

var Base = /*#__PURE__*/function (_HookBase) {
  (0, _inherits2.default)(Base, _HookBase);

  var _super = (0, _createSuper2.default)(Base);

  function Base() {
    (0, _classCallCheck2.default)(this, Base);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Base, [{
    key: "getType",
    value: function getType() {
      return 'data';
    }
  }]);
  return Base;
}(_hookBase.default);

exports.Base = Base;
var _default = Base;
exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/utils/environment.js":
/*!*****************************************************!*\
  !*** ../core/common/assets/js/utils/environment.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");

__webpack_require__(/*! core-js/modules/es6.regexp.to-string.js */ "../node_modules/core-js/modules/es6.regexp.to-string.js");

var matchUserAgent = function matchUserAgent(UserAgentStr) {
  return userAgent.indexOf(UserAgentStr) >= 0;
},
    userAgent = navigator.userAgent,
    // Solution influenced by https://stackoverflow.com/questions/9847580/how-to-detect-safari-chrome-ie-firefox-and-opera-browser
// Opera 8.0+
isOpera = !!window.opr && !!opr.addons || !!window.opera || matchUserAgent(' OPR/'),
    // Firefox 1.0+
isFirefox = matchUserAgent('Firefox'),
    // Safari 3.0+ "[object HTMLElementConstructor]"
isSafari = /^((?!chrome|android).)*safari/i.test(userAgent) || /constructor/i.test(window.HTMLElement) || function (p) {
  return '[object SafariRemoteNotification]' === p.toString();
}(!window.safari || typeof safari !== 'undefined' && safari.pushNotification),
    // Internet Explorer 6-11
isIE = /Trident|MSIE/.test(userAgent) && (
/*@cc_on!@*/
 false || !!document.documentMode),
    // Edge 20+
isEdge = !isIE && !!window.StyleMedia || matchUserAgent('Edg'),
    // Google Chrome (Not accurate)
isChrome = !!window.chrome && matchUserAgent('Chrome') && !(isEdge || isOpera),
    // Blink engine
isBlink = matchUserAgent('Chrome') && !!window.CSS,
    // Apple Webkit engine
isAppleWebkit = matchUserAgent('AppleWebKit') && !isBlink,
    environment = {
  appleWebkit: isAppleWebkit,
  blink: isBlink,
  chrome: isChrome,
  edge: isEdge,
  firefox: isFirefox,
  ie: isIE,
  mac: matchUserAgent('Macintosh'),
  opera: isOpera,
  safari: isSafari,
  webkit: matchUserAgent('AppleWebKit')
};

var _default = environment;
exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/views/modal/header.js":
/*!******************************************************!*\
  !*** ../core/common/assets/js/views/modal/header.js ***!
  \******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _default = /*#__PURE__*/function (_Marionette$LayoutVie) {
  (0, _inherits2.default)(_default, _Marionette$LayoutVie);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "className",
    value: function className() {
      return 'elementor-templates-modal__header';
    }
  }, {
    key: "getTemplate",
    value: function getTemplate() {
      return '#tmpl-elementor-templates-modal__header';
    }
  }, {
    key: "regions",
    value: function regions() {
      return {
        logoArea: '.elementor-templates-modal__header__logo-area',
        tools: '#elementor-template-library-header-tools',
        menuArea: '.elementor-templates-modal__header__menu-area'
      };
    }
  }, {
    key: "ui",
    value: function ui() {
      return {
        closeModal: '.elementor-templates-modal__header__close'
      };
    }
  }, {
    key: "events",
    value: function events() {
      return {
        'click @ui.closeModal': 'onCloseModalClick'
      };
    }
  }, {
    key: "templateHelpers",
    value: function templateHelpers() {
      return {
        closeType: this.getOption('closeType')
      };
    }
  }, {
    key: "onCloseModalClick",
    value: function onCloseModalClick() {
      this._parent._parent._parent.hideModal();
    }
  }]);
  return _default;
}(Marionette.LayoutView);

exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/views/modal/layout.js":
/*!******************************************************!*\
  !*** ../core/common/assets/js/views/modal/layout.js ***!
  \******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _header = _interopRequireDefault(__webpack_require__(/*! ./header */ "../core/common/assets/js/views/modal/header.js"));

var _logo = _interopRequireDefault(__webpack_require__(/*! ./logo */ "../core/common/assets/js/views/modal/logo.js"));

var _loading = _interopRequireDefault(__webpack_require__(/*! ./loading */ "../core/common/assets/js/views/modal/loading.js"));

var _default = /*#__PURE__*/function (_Marionette$LayoutVie) {
  (0, _inherits2.default)(_default, _Marionette$LayoutVie);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "el",
    value: function el() {
      return this.getModal().getElements('widget');
    }
  }, {
    key: "regions",
    value: function regions() {
      return {
        modalHeader: '.dialog-header',
        modalContent: '.dialog-lightbox-content',
        modalLoading: '.dialog-lightbox-loading'
      };
    }
  }, {
    key: "initialize",
    value: function initialize() {
      this.modalHeader.show(new _header.default(this.getHeaderOptions()));
    }
  }, {
    key: "getModal",
    value: function getModal() {
      if (!this.modal) {
        this.initModal();
      }

      return this.modal;
    }
  }, {
    key: "initModal",
    value: function initModal() {
      var modalOptions = {
        className: 'elementor-templates-modal',
        closeButton: false,
        draggable: false,
        hide: {
          onOutsideClick: false,
          onEscKeyPress: false
        }
      };
      jQuery.extend(true, modalOptions, this.getModalOptions());
      this.modal = elementorCommon.dialogsManager.createWidget('lightbox', modalOptions);
      this.modal.getElements('message').append(this.modal.addElement('content'), this.modal.addElement('loading'));

      if (modalOptions.draggable) {
        this.draggableModal();
      }
    }
  }, {
    key: "showModal",
    value: function showModal() {
      this.getModal().show();
    }
  }, {
    key: "hideModal",
    value: function hideModal() {
      this.getModal().hide();
    }
  }, {
    key: "draggableModal",
    value: function draggableModal() {
      var $modalWidgetContent = this.getModal().getElements('widgetContent');
      $modalWidgetContent.draggable({
        containment: 'parent',
        stop: function stop() {
          $modalWidgetContent.height('');
        }
      });
      $modalWidgetContent.css('position', 'absolute');
    }
  }, {
    key: "getModalOptions",
    value: function getModalOptions() {
      return {};
    }
  }, {
    key: "getLogoOptions",
    value: function getLogoOptions() {
      return {};
    }
  }, {
    key: "getHeaderOptions",
    value: function getHeaderOptions() {
      return {
        closeType: 'normal'
      };
    }
  }, {
    key: "getHeaderView",
    value: function getHeaderView() {
      return this.modalHeader.currentView;
    }
  }, {
    key: "showLoadingView",
    value: function showLoadingView() {
      this.modalLoading.show(new _loading.default());
      this.modalLoading.$el.show();
      this.modalContent.$el.hide();
    }
  }, {
    key: "hideLoadingView",
    value: function hideLoadingView() {
      this.modalContent.$el.show();
      this.modalLoading.$el.hide();
    }
  }, {
    key: "showLogo",
    value: function showLogo() {
      this.getHeaderView().logoArea.show(new _logo.default(this.getLogoOptions()));
    }
  }]);
  return _default;
}(Marionette.LayoutView);

exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/views/modal/loading.js":
/*!*******************************************************!*\
  !*** ../core/common/assets/js/views/modal/loading.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _default = /*#__PURE__*/function (_Marionette$ItemView) {
  (0, _inherits2.default)(_default, _Marionette$ItemView);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "id",
    value: function id() {
      return 'elementor-template-library-loading';
    }
  }, {
    key: "getTemplate",
    value: function getTemplate() {
      return '#tmpl-elementor-template-library-loading';
    }
  }]);
  return _default;
}(Marionette.ItemView);

exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/views/modal/logo.js":
/*!****************************************************!*\
  !*** ../core/common/assets/js/views/modal/logo.js ***!
  \****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _default = /*#__PURE__*/function (_Marionette$ItemView) {
  (0, _inherits2.default)(_default, _Marionette$ItemView);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "getTemplate",
    value: function getTemplate() {
      return '#tmpl-elementor-templates-modal__header__logo';
    }
  }, {
    key: "className",
    value: function className() {
      return 'elementor-templates-modal__header__logo';
    }
  }, {
    key: "events",
    value: function events() {
      return {
        click: 'onClick'
      };
    }
  }, {
    key: "templateHelpers",
    value: function templateHelpers() {
      return {
        title: this.getOption('title')
      };
    }
  }, {
    key: "onClick",
    value: function onClick() {
      var clickCallback = this.getOption('click');

      if (clickCallback) {
        clickCallback();
      }
    }
  }]);
  return _default;
}(Marionette.ItemView);

exports.default = _default;

/***/ }),

/***/ "../core/kits/assets/js/commands/back.js":
/*!***********************************************!*\
  !*** ../core/kits/assets/js/commands/back.js ***!
  \***********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Back = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Back = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Back, _CommandBase);

  var _super = (0, _createSuper2.default)(Back);

  function Back() {
    var _this;

    (0, _classCallCheck2.default)(this, Back);

    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }

    _this = _super.call.apply(_super, [this].concat(args));
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "confirmDialog", null);
    return _this;
  }

  (0, _createClass2.default)(Back, [{
    key: "apply",
    value: function apply() {
      var panelHistory = $e.routes.getHistory('panel'); // Don't go back if no where.

      if (1 === panelHistory.length) {
        this.getCloseConfirmDialog(event).show();
        return;
      }

      return $e.routes.back('panel');
    }
  }, {
    key: "getCloseConfirmDialog",
    value: function getCloseConfirmDialog(event) {
      if (!this.confirmDialog) {
        var modalOptions = {
          id: 'elementor-kit-warn-on-close',
          headerMessage: __('Exit', 'elementor'),
          message: __('Would you like to exit?', 'elementor'),
          position: {
            my: 'center center',
            at: 'center center'
          },
          strings: {
            confirm: __('Exit', 'elementor'),
            cancel: __('Cancel', 'elementor')
          },
          onConfirm: function onConfirm() {
            $e.run('panel/global/close');
          }
        };
        this.confirmDialog = elementorCommon.dialogsManager.createWidget('confirm', modalOptions);
      }

      this.confirmDialog.setSettings('hide', {
        onEscKeyPress: !event
      });
      return this.confirmDialog;
    }
  }]);
  return Back;
}(_commandBase.default);

exports.Back = Back;
var _default = Back;
exports.default = _default;

/***/ }),

/***/ "../core/kits/assets/js/commands/close.js":
/*!************************************************!*\
  !*** ../core/kits/assets/js/commands/close.js ***!
  \************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Close = void 0;

__webpack_require__(/*! core-js/modules/es7.promise.finally.js */ "../node_modules/core-js/modules/es7.promise.finally.js");

__webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");

__webpack_require__(/*! core-js/modules/es6.promise.js */ "../node_modules/core-js/modules/es6.promise.js");

var _parseInt2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/parse-int */ "../node_modules/@babel/runtime-corejs2/core-js/parse-int.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Close = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Close, _CommandBase);

  var _super = (0, _createSuper2.default)(Close);

  function Close() {
    (0, _classCallCheck2.default)(this, Close);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Close, [{
    key: "apply",
    value: function apply(args) {
      var _this = this;

      var mode = args.mode; // The kit is opened directly.

      if (elementor.config.initial_document.id === (0, _parseInt2.default)(elementor.config.kit_id)) {
        return $e.run('panel/global/exit');
      }

      $e.internal('panel/state-loading');
      return $e.run('editor/documents/switch', {
        mode: mode,
        id: elementor.config.initial_document.id,
        onClose: function onClose(document) {
          if (document.isDraft()) {
            // Restore published style.
            elementor.toggleDocumentCssFiles(document, true);
            elementor.settings.page.destroyControlsCSS();
          }

          $e.components.get('panel/global').close();
          $e.routes.clearHistory(_this.component.getRootContainer()); // The kit shouldn't be cached for next open. (it may be changed via create colors/typography).

          elementor.documents.invalidateCache(elementor.config.kit_id);
        }
      }).finally(function () {
        return $e.internal('panel/state-ready');
      });
    }
  }]);
  return Close;
}(_commandBase.default);

exports.Close = Close;
var _default = Close;
exports.default = _default;

/***/ }),

/***/ "../core/kits/assets/js/commands/exit.js":
/*!***********************************************!*\
  !*** ../core/kits/assets/js/commands/exit.js ***!
  \***********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Exit = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Exit = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Exit, _CommandBase);

  var _super = (0, _createSuper2.default)(Exit);

  function Exit() {
    (0, _classCallCheck2.default)(this, Exit);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Exit, [{
    key: "apply",
    value: function apply() {
      return $e.run('editor/documents/close', {
        id: elementor.config.kit_id,
        onClose: function onClose(document) {
          location = document.config.urls.exit_to_dashboard;
        }
      });
    }
  }]);
  return Exit;
}(_commandBase.default);

exports.Exit = Exit;
var _default = Exit;
exports.default = _default;

/***/ }),

/***/ "../core/kits/assets/js/commands/index.js":
/*!************************************************!*\
  !*** ../core/kits/assets/js/commands/index.js ***!
  \************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "Back", {
  enumerable: true,
  get: function get() {
    return _back.Back;
  }
});

_Object$defineProperty(exports, "Close", {
  enumerable: true,
  get: function get() {
    return _close.Close;
  }
});

_Object$defineProperty(exports, "Exit", {
  enumerable: true,
  get: function get() {
    return _exit.Exit;
  }
});

_Object$defineProperty(exports, "Open", {
  enumerable: true,
  get: function get() {
    return _open.Open;
  }
});

var _back = __webpack_require__(/*! ./back */ "../core/kits/assets/js/commands/back.js");

var _close = __webpack_require__(/*! ./close */ "../core/kits/assets/js/commands/close.js");

var _exit = __webpack_require__(/*! ./exit */ "../core/kits/assets/js/commands/exit.js");

var _open = __webpack_require__(/*! ./open */ "../core/kits/assets/js/commands/open.js");

/***/ }),

/***/ "../core/kits/assets/js/commands/open.js":
/*!***********************************************!*\
  !*** ../core/kits/assets/js/commands/open.js ***!
  \***********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Open = void 0;

__webpack_require__(/*! core-js/modules/es7.promise.finally.js */ "../node_modules/core-js/modules/es7.promise.finally.js");

__webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");

__webpack_require__(/*! core-js/modules/es6.promise.js */ "../node_modules/core-js/modules/es6.promise.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Open = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Open, _CommandBase);

  var _super = (0, _createSuper2.default)(Open);

  function Open() {
    (0, _classCallCheck2.default)(this, Open);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Open, [{
    key: "apply",
    value: function apply() {
      var kit = elementor.documents.get(elementor.config.kit_id);

      if (kit && 'open' === kit.editor.status) {
        return jQuery.Deferred().resolve();
      }

      $e.routes.clearHistory(this.component.getRootContainer());
      this.component.toggleHistoryClass();
      $e.internal('panel/state-loading');
      return $e.run('editor/documents/switch', {
        id: elementor.config.kit_id,
        mode: 'autosave'
      }).finally(function () {
        return $e.internal('panel/state-ready');
      });
    }
  }], [{
    key: "getInfo",
    value: function getInfo() {
      return {
        isSafe: true
      };
    }
  }]);
  return Open;
}(_commandBase.default);

exports.Open = Open;
var _default = Open;
exports.default = _default;

/***/ }),

/***/ "../core/kits/assets/js/component.js":
/*!*******************************************!*\
  !*** ../core/kits/assets/js/component.js ***!
  \*******************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var hooks = _interopRequireWildcard(__webpack_require__(/*! ./hooks */ "../core/kits/assets/js/hooks/index.js"));

var commands = _interopRequireWildcard(__webpack_require__(/*! ./commands/ */ "../core/kits/assets/js/commands/index.js"));

var _repeater = _interopRequireDefault(__webpack_require__(/*! ./repeater */ "../core/kits/assets/js/repeater.js"));

var _default = /*#__PURE__*/function (_$e$modules$Component) {
  (0, _inherits2.default)(_default, _$e$modules$Component);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    var _this;

    (0, _classCallCheck2.default)(this, _default);

    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }

    _this = _super.call.apply(_super, [this].concat(args));
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "pages", {});
    return _this;
  }

  (0, _createClass2.default)(_default, [{
    key: "__construct",
    value: function __construct(args) {
      (0, _get2.default)((0, _getPrototypeOf2.default)(_default.prototype), "__construct", this).call(this, args);
      elementor.on('panel:init', function () {
        args.manager.addPanelPages();
        args.manager.addPanelMenuItem();
      });
      elementor.hooks.addFilter('panel/header/behaviors', args.manager.addHeaderBehavior);
      elementor.addControlView('global-style-repeater', _repeater.default);
    }
  }, {
    key: "getNamespace",
    value: function getNamespace() {
      return 'panel/global';
    }
  }, {
    key: "defaultRoutes",
    value: function defaultRoutes() {
      return {
        menu: function menu() {
          elementor.getPanelView().setPage('kit_menu');
        }
      };
    }
  }, {
    key: "defaultCommands",
    value: function defaultCommands() {
      return this.importCommands(commands);
    }
  }, {
    key: "defaultShortcuts",
    value: function defaultShortcuts() {
      return {
        open: {
          keys: 'ctrl+k',
          dependency: function dependency() {
            return 'kit' !== elementor.documents.getCurrent().config.type;
          }
        },
        back: {
          keys: 'esc',
          scopes: ['panel'],
          dependency: function dependency() {
            return elementor.documents.isCurrent(elementor.config.kit_id) && !jQuery('.dialog-widget:visible').length;
          }
        }
      };
    }
  }, {
    key: "defaultHooks",
    value: function defaultHooks() {
      return this.importHooks(hooks);
    }
  }, {
    key: "renderTab",
    value: function renderTab(tab) {
      elementor.getPanelView().setPage('kit_settings').content.currentView.activateTab(tab);
    }
  }]);
  return _default;
}($e.modules.ComponentBase);

exports.default = _default;

/***/ }),

/***/ "../core/kits/assets/js/globals/global-select-behavior.js":
/*!****************************************************************!*\
  !*** ../core/kits/assets/js/globals/global-select-behavior.js ***!
  \****************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _promise = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/promise */ "../node_modules/@babel/runtime-corejs2/core-js/promise.js"));

var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var GlobalControlSelect = /*#__PURE__*/function (_Marionette$Behavior) {
  (0, _inherits2.default)(GlobalControlSelect, _Marionette$Behavior);

  var _super = (0, _createSuper2.default)(GlobalControlSelect);

  function GlobalControlSelect() {
    (0, _classCallCheck2.default)(this, GlobalControlSelect);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(GlobalControlSelect, [{
    key: "getClassNames",
    value: function getClassNames() {
      return {
        previewItemsContainer: 'e-global__preview-items-container',
        previewItem: 'e-global__preview-item',
        selectedPreviewItem: 'e-global__preview-item--selected',
        manageButton: 'e-global__manage-button',
        popover: 'e-global__popover',
        popoverToggle: 'e-global__popover-toggle',
        popoverToggleActive: 'e-global__popover-toggle--active',
        controlGlobal: 'e-control-global',
        globalPopoverContainer: 'e-global__popover-container',
        globalPopoverTitle: 'e-global__popover-title',
        globalPopoverTitleText: 'e-global__popover-title-text',
        globalPopoverInfo: 'e-global__popover-info',
        globalPopoverInfoTooltip: 'e-global__popover-info-tooltip',
        confirmAddNewGlobal: 'e-global__confirm-add',
        confirmMessageText: '.e-global__confirm-message-text'
      };
    } // This method exists because the UI elements are printed after controls are already rendered.

  }, {
    key: "registerUiElements",
    value: function registerUiElements() {
      var popoverWidget = this.popover.getElements('widget');
      this.ui.manageGlobalsButton = popoverWidget.find(".".concat(this.getClassNames().manageButton));
    }
  }, {
    key: "registerPreviewElements",
    value: function registerPreviewElements() {
      var popoverWidget = this.popover.getElements('widget'),
          classes = this.getClassNames();
      this.ui.globalPreviewItems = popoverWidget.find(".".concat(classes.previewItem));
    } // This method exists because the UI elements are printed after controls are already rendered.

  }, {
    key: "registerEvents",
    value: function registerEvents() {
      var _this = this;

      this.ui.globalPopoverToggle.on('click', function (event) {
        return _this.toggleGlobalPopover(event);
      });
      this.ui.manageGlobalsButton.on('click', function () {
        var _this$view$getGlobalM = _this.view.getGlobalMeta(),
            route = _this$view$getGlobalM.route,
            args = {
          route: $e.routes.getHistory('panel').reverse()[0].route,
          container: _this.view.options.container
        };

        $e.run('panel/global/open', args).then(function () {
          return $e.route(route);
        });

        _this.popover.hide();
      });
    }
  }, {
    key: "addPreviewItemsClickListener",
    value: function addPreviewItemsClickListener() {
      var _this2 = this;

      this.ui.$globalPreviewItemsContainer.on('click', ".".concat(this.getClassNames().previewItem), function (event) {
        return _this2.applySavedGlobalValue(event.currentTarget.dataset.globalId);
      });
    }
  }, {
    key: "fetchGlobalValue",
    value: function fetchGlobalValue() {
      var _this3 = this;

      return $e.data.get(this.view.getGlobalKey()).then(function (globalData) {
        _this3.view.globalValue = globalData.data.value;

        _this3.onValueTypeChange();

        elementor.kitManager.renderGlobalVariables();

        _this3.view.applySavedValue();

        return globalData.data;
      }).catch(function (e) {
        var _e$data;

        // TODO: Need to be replaced by "e instanceof NotFoundError"
        if (404 !== (e === null || e === void 0 ? void 0 : (_e$data = e.data) === null || _e$data === void 0 ? void 0 : _e$data.status)) {
          return _promise.default.reject(e);
        }

        _this3.disableGlobalValue(false);
      });
    }
  }, {
    key: "setCurrentActivePreviewItem",
    value: function setCurrentActivePreviewItem() {
      var selectedClass = this.getClassNames().selectedPreviewItem,
          defaultGlobalsAreEnabled = elementor.config.globals.defaults_enabled[this.view.getGlobalMeta().controlType];

      if (this.activePreviewItem) {
        this.resetActivePreviewItem();
      } // If there is an active global on the control, get it.


      var globalKey = this.view.getGlobalKey(); // If the control has no active global and no active custom value, check if there is a default global and use it.

      if (!globalKey && !this.view.getControlValue() && defaultGlobalsAreEnabled) {
        var _this$view$model$get;

        globalKey = (_this$view$model$get = this.view.model.get('global')) === null || _this$view$model$get === void 0 ? void 0 : _this$view$model$get.default;
      }

      if (!globalKey) {
        // If there is no active global or global default, reset the active preview item.
        this.activePreviewItem = null;
        return;
      } // Extract the Global's ID from the Global key


      var _$e$data$commandExtra = $e.data.commandExtractArgs(globalKey),
          args = _$e$data$commandExtra.args,
          globalId = args.query.id; // Get the active global's corresponding preview item in the Global Select Popover


      var $item = this.ui.globalPreviewItems.filter("[data-global-id=\"".concat(globalId, "\"]"));

      if (!$item) {
        return;
      }

      this.activePreviewItem = $item;
      this.activePreviewItem.addClass(selectedClass);
    }
  }, {
    key: "resetActivePreviewItem",
    value: function resetActivePreviewItem() {
      if (this.activePreviewItem) {
        this.activePreviewItem.removeClass(this.getClassNames().selectedPreviewItem);
      }

      this.activePreviewItem = null;
    }
  }, {
    key: "applySavedGlobalValue",
    value: function applySavedGlobalValue(globalId) {
      this.setGlobalValue(globalId);
      this.fetchGlobalValue();
      this.popover.hide();
    } // Update the behavior's components.

  }, {
    key: "onValueTypeChange",
    value: function onValueTypeChange() {
      this.updateCurrentGlobalName();
    }
  }, {
    key: "updateCurrentGlobalName",
    value: function updateCurrentGlobalName(value) {
      var _this4 = this;

      var classes = this.getClassNames();
      var globalTooltipText = '';

      if (value) {
        globalTooltipText = value;
      } else {
        value = this.view.getControlValue();
        var globalValue = this.view.getGlobalKey();

        if (!globalValue && !value && elementor.config.globals.defaults_enabled[this.view.getGlobalMeta().controlType]) {
          var _this$view$model$get2;

          globalValue = (_this$view$model$get2 = this.view.model.get('global')) === null || _this$view$model$get2 === void 0 ? void 0 : _this$view$model$get2.default;
        }

        if (globalValue) {
          // If there is a global value saved, get the global's name and display it.
          $e.data.get(globalValue).then(function (result) {
            var text = '';

            if (result.data.title) {
              text = result.data.title;
            } else {
              text = __('Default', 'elementor');
            }

            _this4.updateCurrentGlobalName(text);
          });
          this.ui.globalPopoverToggle.addClass(classes.popoverToggleActive);
          return;
        } else if (value) {
          // If there is a value and it is not a global, set the text to custom.
          globalTooltipText = __('Custom', 'elementor');
        } else {
          // If there is no value, set the text as default.
          globalTooltipText = __('Default', 'elementor');
        } // If there is no value, remove the 'active' class from the Global Toggle button.


        this.ui.globalPopoverToggle.removeClass(classes.popoverToggleActive);
      } // This is used in the Global Toggle Button's tooltip.


      this.globalName = globalTooltipText;
    } // The Global Control elements are initialized onRender and not with initialize() because their position depends
    // on elements that are not yet rendered when initialize() is called.

  }, {
    key: "onRender",
    value: function onRender() {
      var _this5 = this;

      this.printGlobalToggleButton();
      this.initGlobalPopover();

      if (this.view.getGlobalKey()) {
        // This setTimeout is here to overcome an issue with a requestAnimationFrame that runs in the Pickr library.
        setTimeout(function () {
          return _this5.fetchGlobalValue();
        }, 50);
      } else {
        this.onValueTypeChange();
      }

      this.$el.addClass(this.getClassNames().controlGlobal);
    }
  }, {
    key: "toggleGlobalPopover",
    value: function toggleGlobalPopover() {
      var _this6 = this;

      if (this.popover.isVisible()) {
        this.popover.hide();
      } else {
        if (this.ui.$globalPreviewItemsContainer) {
          // This element is not defined when the controls popover is first loaded.
          this.ui.$globalPreviewItemsContainer.remove();
        }

        this.view.getGlobalsList().then(function (globalsList) {
          // We just deleted the existing list of global preview items, so we need to rebuild it
          // with the updated list of globals, register the elements and re-add the on click listeners.
          _this6.addGlobalsListToPopover(globalsList);

          _this6.registerPreviewElements();

          _this6.addPreviewItemsClickListener();

          _this6.popover.show();

          _this6.setCurrentActivePreviewItem();
        });
      }
    }
  }, {
    key: "buildGlobalPopover",
    value: function buildGlobalPopover() {
      var _this7 = this;

      var classes = this.getClassNames(),
          $popover = jQuery('<div>', {
        class: classes.globalPopoverContainer
      }),
          $popoverTitle = jQuery('<div>', {
        class: classes.globalPopoverTitle
      }).html('<div class="' + classes.globalPopoverInfo + '"><i class="eicon-info-circle"></i></div><span class="' + classes.globalPopoverTitleText + '">' + this.getOption('popoverTitle') + '</span>'),
          $manageGlobalsLink = jQuery('<div>', {
        class: classes.manageButton
      }).html('<i class="eicon-cog"></i>');
      $popoverTitle.append($manageGlobalsLink);
      $popover.append($popoverTitle);
      this.manageButtonTooltipText = this.getOption('manageButtonText');
      $manageGlobalsLink.tipsy({
        title: function title() {
          return _this7.manageButtonTooltipText;
        },
        offset: 3,
        gravity: function gravity() {
          return 's';
        }
      });
      return $popover;
    }
  }, {
    key: "printGlobalToggleButton",
    value: function printGlobalToggleButton() {
      var _this8 = this;

      var $globalToggleButton = jQuery('<div>', {
        class: this.getClassNames().popoverToggle + ' elementor-control-unit-1'
      }),
          $globalPopoverToggleIcon = jQuery('<i>', {
        class: 'eicon-globe'
      }),
          $globalsLoadingSpinner = jQuery('<span>', {
        class: 'elementor-control-spinner'
      }).html('<i class="eicon-spinner eicon-animation-spin"></i></span>');
      $globalToggleButton.append($globalPopoverToggleIcon);
      this.$el.find('.elementor-control-input-wrapper').prepend($globalToggleButton);
      this.ui.globalPopoverToggle = $globalToggleButton;
      this.ui.globalPopoverToggleIcon = $globalPopoverToggleIcon;
      this.ui.$globalsLoadingSpinner = $globalsLoadingSpinner; // Add tooltip to the Global Popover toggle button, displaying the current Global Name / 'Default' / 'Custom'.

      this.ui.globalPopoverToggleIcon.tipsy({
        title: function title() {
          return _this8.globalName;
        },
        offset: 7,
        gravity: function gravity() {
          return 's';
        }
      });
      $globalToggleButton.before($globalsLoadingSpinner);
      this.ui.$globalsLoadingSpinner.hide();
    }
  }, {
    key: "initGlobalPopover",
    value: function initGlobalPopover() {
      this.popover = elementorCommon.dialogsManager.createWidget('simple', {
        className: this.getClassNames().popover,
        message: this.buildGlobalPopover(),
        effects: {
          show: 'show',
          hide: 'hide'
        },
        hide: {
          onOutsideClick: false
        },
        position: {
          my: "right top",
          at: "right bottom+5",
          of: this.ui.globalPopoverToggle,
          collision: 'fit flip',
          autoRefresh: true
        }
      }); // Add Popover elements to the this.ui object and register click events.

      this.registerUiElementsAndEvents();
      this.createGlobalInfoTooltip();
    }
  }, {
    key: "addGlobalsListToPopover",
    value: function addGlobalsListToPopover(globalsList) {
      var $globalPreviewItemsContainer = jQuery('<div>', {
        class: 'e-global__preview-items-container'
      });
      this.view.buildGlobalsList(globalsList, $globalPreviewItemsContainer);
      this.popover.getElements('widget').find(".".concat(this.getClassNames().globalPopoverTitle)).after($globalPreviewItemsContainer); // The populated list is nested under the previews container element.

      this.ui.$globalPreviewItemsContainer = $globalPreviewItemsContainer;
    }
  }, {
    key: "registerUiElementsAndEvents",
    value: function registerUiElementsAndEvents() {
      // Instead of ui()
      this.registerUiElements(); // Instead of events()

      this.registerEvents();
    } // This method is not called directly, but triggered by Marionette's .triggerMethod(),
    // in the onAddGlobalButtonClick() method in the color and typography global controls.

  }, {
    key: "onAddGlobalToList",
    value: function onAddGlobalToList($confirmMessage) {
      var _this9 = this;

      var classes = this.getClassNames();
      this.confirmNewGlobalModal = elementorCommon.dialogsManager.createWidget('confirm', {
        className: classes.confirmAddNewGlobal,
        headerMessage: this.getOption('newGlobalConfirmTitle'),
        message: $confirmMessage,
        strings: {
          confirm: __('Create', 'elementor'),
          cancel: __('Cancel', 'elementor')
        },
        hide: {
          onBackgroundClick: false
        },
        onConfirm: function onConfirm() {
          return _this9.onConfirmNewGlobal();
        },
        onShow: function onShow() {
          // Put focus on the naming input.
          var modalWidget = _this9.confirmNewGlobalModal.getElements('widget');

          _this9.ui.globalNameInput = modalWidget.find('input').focus();
          _this9.ui.confirmMessageText = modalWidget.find(classes.confirmMessageText);

          _this9.ui.globalNameInput.on('input', function () {
            return _this9.onAddGlobalConfirmInputChange();
          });
        }
      });
      this.confirmNewGlobalModal.show();
    }
  }, {
    key: "onAddGlobalConfirmInputChange",
    value: function onAddGlobalConfirmInputChange() {
      if (!this.view.globalsList) {
        return;
      }

      var messageContent;

      for (var _i = 0, _Object$values = (0, _values.default)(this.view.globalsList); _i < _Object$values.length; _i++) {
        var globalValue = _Object$values[_i];

        if (this.ui.globalNameInput.val() === globalValue.title) {
          messageContent = this.view.getNameAlreadyExistsMessage();
          break;
        } else {
          messageContent = this.view.getConfirmTextMessage();
        }
      }

      this.ui.confirmMessageText.html(messageContent);
    }
  }, {
    key: "onConfirmNewGlobal",
    value: function onConfirmNewGlobal() {
      var globalMeta = this.view.getGlobalMeta();
      globalMeta.title = this.ui.globalNameInput.val();
      this.createNewGlobal(globalMeta);
    }
  }, {
    key: "createNewGlobal",
    value: function createNewGlobal(globalMeta) {
      var _this10 = this;

      this.ui.$globalsLoadingSpinner.show();
      $e.run(globalMeta.commandName + '/create', {
        container: this.view.container,
        setting: globalMeta.key,
        // group control name
        title: globalMeta.title
      }).then(function (result) {
        _this10.applySavedGlobalValue(result.data.id);

        _this10.ui.$globalsLoadingSpinner.hide();
      });
    }
  }, {
    key: "setGlobalValue",
    value: function setGlobalValue(globalId) {
      var command = '';
      var settings = {};

      if (this.view.getGlobalKey()) {
        // If a global setting is already active, switch them without disabling globals.
        command = 'document/globals/settings';
      } else {
        // If the active setting is NOT a global, enable globals and apply the selected global.
        command = 'document/globals/enable';
      } // colors / typography


      settings[this.view.model.get('name')] = this.view.getGlobalCommand() + '?id=' + globalId; // Trigger async render.

      $e.run(command, {
        container: this.view.options.container,
        settings: settings
      });
    } // The unset method is triggered from the controls via triggerMethod.

  }, {
    key: "onUnsetGlobalValue",
    value: function onUnsetGlobalValue() {
      this.disableGlobalValue();
    }
  }, {
    key: "onUnlinkGlobalDefault",
    value: function onUnlinkGlobalDefault() {
      var _this11 = this;

      var globalMeta = this.view.getGlobalMeta();
      $e.run('document/globals/unlink', {
        container: this.view.container,
        globalValue: this.view.model.get('global').default,
        setting: globalMeta.key,
        options: {
          external: true
        }
      }).then(function () {
        _this11.onValueTypeChange();

        _this11.view.globalValue = null;

        _this11.resetActivePreviewItem();
      });
    }
  }, {
    key: "createGlobalInfoTooltip",
    value: function createGlobalInfoTooltip() {
      var _this12 = this;

      var classes = this.getClassNames(),
          $infoIcon = this.popover.getElements('widget').find(".".concat(classes.globalPopoverInfo));
      this.globalInfoTooltip = elementorCommon.dialogsManager.createWidget('simple', {
        className: classes.globalPopoverInfoTooltip,
        message: this.getOption('tooltipText'),
        effects: {
          show: 'show',
          hide: 'hide'
        },
        position: {
          my: "left bottom",
          at: "left top+9",
          of: this.popover.getElements('widget'),
          autoRefresh: true
        }
      });
      $infoIcon.on({
        mouseenter: function mouseenter() {
          return _this12.globalInfoTooltip.show();
        },
        mouseleave: function mouseleave() {
          return _this12.globalInfoTooltip.hide();
        }
      });
    }
  }, {
    key: "disableGlobalValue",
    value: function disableGlobalValue() {
      var _this13 = this;

      var restore = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
      var globalMeta = this.view.getGlobalMeta();
      return $e.run('document/globals/disable', {
        container: this.view.container,
        settings: (0, _defineProperty2.default)({}, globalMeta.key, ''),
        options: {
          restore: restore
        }
      }).then(function () {
        _this13.onValueTypeChange();

        _this13.view.globalValue = null;

        _this13.resetActivePreviewItem();
      });
    }
  }]);
  return GlobalControlSelect;
}(Marionette.Behavior);

exports.default = GlobalControlSelect;

/***/ }),

/***/ "../core/kits/assets/js/hooks/data/globals/base-globals-update.js":
/*!************************************************************************!*\
  !*** ../core/kits/assets/js/hooks/data/globals/base-globals-update.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.BaseGlobalsUpdate = void 0;

var _assign = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/assign */ "../node_modules/@babel/runtime-corejs2/core-js/object/assign.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var BaseGlobalsUpdate = /*#__PURE__*/function (_$e$modules$hookData$) {
  (0, _inherits2.default)(BaseGlobalsUpdate, _$e$modules$hookData$);

  var _super = (0, _createSuper2.default)(BaseGlobalsUpdate);

  function BaseGlobalsUpdate() {
    (0, _classCallCheck2.default)(this, BaseGlobalsUpdate);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(BaseGlobalsUpdate, [{
    key: "getContainerType",
    value: function getContainerType() {
      return 'document';
    }
  }, {
    key: "getConditions",
    value: function getConditions() {
      return $e.routes.isPartOf('panel/global');
    }
  }, {
    key: "getRepeaterName",
    value: function getRepeaterName() {
      elementorModules.ForceMethodImplementation();
    }
  }, {
    key: "applyModel",
    value: function applyModel(model, id, value) {
      elementorModules.ForceMethodImplementation();
    }
  }, {
    key: "apply",
    value: function apply(args, result) {
      var _this = this;

      var _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers,
          model = (0, _assign.default)({}, result.data);
      var id = model.id,
          value = model.value;
      delete model.id;
      delete model.value;
      model._id = id;
      this.applyModel(model, value);
      containers.forEach(function (container) {
        $e.run('document/repeater/insert', {
          container: container,
          model: model,
          name: _this.getRepeaterName()
        });
      });
    }
  }]);
  return BaseGlobalsUpdate;
}($e.modules.hookData.After);

exports.BaseGlobalsUpdate = BaseGlobalsUpdate;
var _default = BaseGlobalsUpdate;
exports.default = _default;

/***/ }),

/***/ "../core/kits/assets/js/hooks/data/globals/colors/globals-update-colors.js":
/*!*********************************************************************************!*\
  !*** ../core/kits/assets/js/hooks/data/globals/colors/globals-update-colors.js ***!
  \*********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.KitGlobalsUpdateColors = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _baseGlobalsUpdate = _interopRequireDefault(__webpack_require__(/*! ../base-globals-update */ "../core/kits/assets/js/hooks/data/globals/base-globals-update.js"));

var KitGlobalsUpdateColors = /*#__PURE__*/function (_BaseGlobalsUpdate) {
  (0, _inherits2.default)(KitGlobalsUpdateColors, _BaseGlobalsUpdate);

  var _super = (0, _createSuper2.default)(KitGlobalsUpdateColors);

  function KitGlobalsUpdateColors() {
    (0, _classCallCheck2.default)(this, KitGlobalsUpdateColors);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(KitGlobalsUpdateColors, [{
    key: "getCommand",
    value: function getCommand() {
      return 'globals/colors/create';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'globals-update-colors-/globals/colors/create';
    }
  }, {
    key: "getRepeaterName",
    value: function getRepeaterName() {
      return 'custom_colors';
    }
  }, {
    key: "applyModel",
    value: function applyModel(model, value) {
      model.color = value;
    }
  }]);
  return KitGlobalsUpdateColors;
}(_baseGlobalsUpdate.default);

exports.KitGlobalsUpdateColors = KitGlobalsUpdateColors;
var _default = KitGlobalsUpdateColors;
exports.default = _default;

/***/ }),

/***/ "../core/kits/assets/js/hooks/data/globals/typography/globals-update-typography.js":
/*!*****************************************************************************************!*\
  !*** ../core/kits/assets/js/hooks/data/globals/typography/globals-update-typography.js ***!
  \*****************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.KitGlobalsUpdateTypography = void 0;

var _assign = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/assign */ "../node_modules/@babel/runtime-corejs2/core-js/object/assign.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _baseGlobalsUpdate = _interopRequireDefault(__webpack_require__(/*! ../base-globals-update */ "../core/kits/assets/js/hooks/data/globals/base-globals-update.js"));

var KitGlobalsUpdateTypography = /*#__PURE__*/function (_BaseGlobalsUpdate) {
  (0, _inherits2.default)(KitGlobalsUpdateTypography, _BaseGlobalsUpdate);

  var _super = (0, _createSuper2.default)(KitGlobalsUpdateTypography);

  function KitGlobalsUpdateTypography() {
    (0, _classCallCheck2.default)(this, KitGlobalsUpdateTypography);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(KitGlobalsUpdateTypography, [{
    key: "getCommand",
    value: function getCommand() {
      return 'globals/typography/create';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'globals-update-typography-/globals/typography/create';
    }
  }, {
    key: "getRepeaterName",
    value: function getRepeaterName() {
      return 'custom_typography';
    }
  }, {
    key: "applyModel",
    value: function applyModel(model, value) {
      (0, _assign.default)(model, value);
    }
  }]);
  return KitGlobalsUpdateTypography;
}(_baseGlobalsUpdate.default);

exports.KitGlobalsUpdateTypography = KitGlobalsUpdateTypography;
var _default = KitGlobalsUpdateTypography;
exports.default = _default;

/***/ }),

/***/ "../core/kits/assets/js/hooks/index.js":
/*!*********************************************!*\
  !*** ../core/kits/assets/js/hooks/index.js ***!
  \*********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "KitGlobalsUpdateColors", {
  enumerable: true,
  get: function get() {
    return _globalsUpdateColors.KitGlobalsUpdateColors;
  }
});

_Object$defineProperty(exports, "KitGlobalsUpdateTypography", {
  enumerable: true,
  get: function get() {
    return _globalsUpdateTypography.KitGlobalsUpdateTypography;
  }
});

_Object$defineProperty(exports, "KitDeleteGlobalsCache", {
  enumerable: true,
  get: function get() {
    return _deleteGlobalsCache.KitDeleteGlobalsCache;
  }
});

_Object$defineProperty(exports, "KitAfterSave", {
  enumerable: true,
  get: function get() {
    return _after.KitAfterSave;
  }
});

_Object$defineProperty(exports, "KitUpdateBreakpointsPreview", {
  enumerable: true,
  get: function get() {
    return _updateBreakpointsPreview.KitUpdateBreakpointsPreview;
  }
});

_Object$defineProperty(exports, "KitUpdateLightboxPreview", {
  enumerable: true,
  get: function get() {
    return _updateLightboxPreview.KitUpdateLightboxPreview;
  }
});

_Object$defineProperty(exports, "KitUpdateStretchContainer", {
  enumerable: true,
  get: function get() {
    return _updateStretchContainer.KitUpdateStretchContainer;
  }
});

_Object$defineProperty(exports, "KitSaveRouteHistory", {
  enumerable: true,
  get: function get() {
    return _saveRouteHistory.KitSaveRouteHistory;
  }
});

_Object$defineProperty(exports, "KitRemoveEditorActiveCSSDocumentsOpen", {
  enumerable: true,
  get: function get() {
    return _removeEditorActiveCss.KitRemoveEditorActiveCSSDocumentsOpen;
  }
});

_Object$defineProperty(exports, "KitRemoveEditorActiveCSSPanelOpen", {
  enumerable: true,
  get: function get() {
    return _removeEditorActiveCss2.KitRemoveEditorActiveCSSPanelOpen;
  }
});

_Object$defineProperty(exports, "KitBackToRouteHistory", {
  enumerable: true,
  get: function get() {
    return _backToRouteHistory.KitBackToRouteHistory;
  }
});

_Object$defineProperty(exports, "KitRemovePreviewDeletedVariables", {
  enumerable: true,
  get: function get() {
    return _removePreviewDeletedVariables.KitRemovePreviewDeletedVariables;
  }
});

_Object$defineProperty(exports, "KitAddMenuItems", {
  enumerable: true,
  get: function get() {
    return _addMenuItems.KitAddMenuItems;
  }
});

var _globalsUpdateColors = __webpack_require__(/*! ./data/globals/colors/globals-update-colors */ "../core/kits/assets/js/hooks/data/globals/colors/globals-update-colors.js");

var _globalsUpdateTypography = __webpack_require__(/*! ./data/globals/typography/globals-update-typography */ "../core/kits/assets/js/hooks/data/globals/typography/globals-update-typography.js");

var _deleteGlobalsCache = __webpack_require__(/*! ./ui/document/save/save/delete-globals-cache */ "../core/kits/assets/js/hooks/ui/document/save/save/delete-globals-cache.js");

var _after = __webpack_require__(/*! ./ui/document/save/save/after */ "../core/kits/assets/js/hooks/ui/document/save/save/after.js");

var _updateBreakpointsPreview = __webpack_require__(/*! ./ui/document/elements/settings/update-breakpoints-preview */ "../core/kits/assets/js/hooks/ui/document/elements/settings/update-breakpoints-preview.js");

var _updateLightboxPreview = __webpack_require__(/*! ./ui/document/elements/settings/update-lightbox-preview */ "../core/kits/assets/js/hooks/ui/document/elements/settings/update-lightbox-preview.js");

var _updateStretchContainer = __webpack_require__(/*! ./ui/document/elements/settings/update-stretch-container */ "../core/kits/assets/js/hooks/ui/document/elements/settings/update-stretch-container.js");

var _saveRouteHistory = __webpack_require__(/*! ./ui/panel/global/open/save-route-history */ "../core/kits/assets/js/hooks/ui/panel/global/open/save-route-history.js");

var _removeEditorActiveCss = __webpack_require__(/*! ./ui/editor/documents/open/remove-editor-active-css */ "../core/kits/assets/js/hooks/ui/editor/documents/open/remove-editor-active-css.js");

var _removeEditorActiveCss2 = __webpack_require__(/*! ./ui/panel/open/remove-editor-active-css */ "../core/kits/assets/js/hooks/ui/panel/open/remove-editor-active-css.js");

var _backToRouteHistory = __webpack_require__(/*! ./ui/panel/global/close/back-to-route-history */ "../core/kits/assets/js/hooks/ui/panel/global/close/back-to-route-history.js");

var _removePreviewDeletedVariables = __webpack_require__(/*! ./ui/document/repeater/remove/remove-preview-deleted-variables */ "../core/kits/assets/js/hooks/ui/document/repeater/remove/remove-preview-deleted-variables.js");

var _addMenuItems = __webpack_require__(/*! ./ui/editor/documents/load/add-menu-items */ "../core/kits/assets/js/hooks/ui/editor/documents/load/add-menu-items.js");

/***/ }),

/***/ "../core/kits/assets/js/hooks/ui/document/elements/settings/update-breakpoints-preview.js":
/*!************************************************************************************************!*\
  !*** ../core/kits/assets/js/hooks/ui/document/elements/settings/update-breakpoints-preview.js ***!
  \************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.KitUpdateBreakpointsPreview = void 0;

__webpack_require__(/*! core-js/modules/es6.string.starts-with.js */ "../node_modules/core-js/modules/es6.string.starts-with.js");

__webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var KitUpdateBreakpointsPreview = /*#__PURE__*/function (_$e$modules$hookUI$Af) {
  (0, _inherits2.default)(KitUpdateBreakpointsPreview, _$e$modules$hookUI$Af);

  var _super = (0, _createSuper2.default)(KitUpdateBreakpointsPreview);

  function KitUpdateBreakpointsPreview() {
    (0, _classCallCheck2.default)(this, KitUpdateBreakpointsPreview);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(KitUpdateBreakpointsPreview, [{
    key: "getCommand",
    value: function getCommand() {
      return 'document/elements/settings';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'kit-update-breakpoints-preview';
    }
  }, {
    key: "getContainerType",
    value: function getContainerType() {
      return 'document';
    }
  }, {
    key: "getConditions",
    value: function getConditions() {
      return 'kit' === elementor.documents.getCurrent().config.type;
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var settings = args.settings;

      if (settings.active_breakpoints) {
        // Updating the current document config necessary, even if the page has to be reloaded for these settings
        // to take place, because users can add breakpoints and then immediately choose a value for them, before
        // saving the site settings. The breakpoint control's validator needs to have the actual active breakpoints
        // in the panel at that moment breakpoints config in order to validate the user input properly.
        elementor.documents.currentDocument.config.settings.settings.active_breakpoints = settings.active_breakpoints; // This flag is used to notify users that if they make a change to the active breakpoints list, they need
        // to reload the editor for the changes to take effect.

        elementor.activeBreakpointsUpdated = true; // If this is the modified setting, no need to do further checks.

        return;
      } // If a breakpoint value was updated, update the value in the config.


      (0, _entries.default)(settings).forEach(function (_ref) {
        var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
            key = _ref2[0],
            value = _ref2[1];

        if (key.startsWith('viewport_')) {
          var keyWithoutPrefix = key.replace('viewport_', ''); // Update both the config for all breakpoints and the one for active breakpoints.

          if (!value) {
            value = elementorFrontend.config.responsive.breakpoints[keyWithoutPrefix].default_value;
          }

          elementorFrontend.config.responsive.breakpoints[keyWithoutPrefix].value = value;
        }
      });
      elementor.updatePreviewResizeOptions(true);
    }
  }]);
  return KitUpdateBreakpointsPreview;
}($e.modules.hookUI.After);

exports.KitUpdateBreakpointsPreview = KitUpdateBreakpointsPreview;

/***/ }),

/***/ "../core/kits/assets/js/hooks/ui/document/elements/settings/update-lightbox-preview.js":
/*!*********************************************************************************************!*\
  !*** ../core/kits/assets/js/hooks/ui/document/elements/settings/update-lightbox-preview.js ***!
  \*********************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.KitUpdateLightboxPreview = void 0;

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

/**
 * On change kit lightbox settings - update the lightbox preview config.
 */
var KitUpdateLightboxPreview = /*#__PURE__*/function (_$e$modules$hookUI$Af) {
  (0, _inherits2.default)(KitUpdateLightboxPreview, _$e$modules$hookUI$Af);

  var _super = (0, _createSuper2.default)(KitUpdateLightboxPreview);

  function KitUpdateLightboxPreview() {
    (0, _classCallCheck2.default)(this, KitUpdateLightboxPreview);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(KitUpdateLightboxPreview, [{
    key: "getCommand",
    value: function getCommand() {
      return 'document/elements/settings';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'kit-update-lightbox-preview';
    }
  }, {
    key: "getContainerType",
    value: function getContainerType() {
      return 'document';
    }
  }, {
    key: "getConditions",
    value: function getConditions() {
      return 'kit' === elementor.documents.getCurrent().config.type;
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var settings = args.settings;
      (0, _entries.default)(settings).forEach(function (_ref) {
        var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
            key = _ref2[0],
            value = _ref2[1];

        if (-1 !== key.indexOf('lightbox')) {
          elementorFrontend.config.kit[key] = value;
        }
      });
    }
  }]);
  return KitUpdateLightboxPreview;
}($e.modules.hookUI.After);

exports.KitUpdateLightboxPreview = KitUpdateLightboxPreview;
var _default = KitUpdateLightboxPreview;
exports.default = _default;

/***/ }),

/***/ "../core/kits/assets/js/hooks/ui/document/elements/settings/update-stretch-container.js":
/*!**********************************************************************************************!*\
  !*** ../core/kits/assets/js/hooks/ui/document/elements/settings/update-stretch-container.js ***!
  \**********************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.KitUpdateStretchContainer = void 0;

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

/**
 * On change kit stretch container settings - update the preview stretched sections.
 */
var KitUpdateStretchContainer = /*#__PURE__*/function (_$e$modules$hookUI$Af) {
  (0, _inherits2.default)(KitUpdateStretchContainer, _$e$modules$hookUI$Af);

  var _super = (0, _createSuper2.default)(KitUpdateStretchContainer);

  function KitUpdateStretchContainer() {
    (0, _classCallCheck2.default)(this, KitUpdateStretchContainer);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(KitUpdateStretchContainer, [{
    key: "getCommand",
    value: function getCommand() {
      return 'document/elements/settings';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'kit-update-stretch-container';
    }
  }, {
    key: "getContainerType",
    value: function getContainerType() {
      return 'document';
    }
  }, {
    key: "getConditions",
    value: function getConditions() {
      return 'kit' === elementor.documents.getCurrent().config.type;
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var settings = args.settings;
      (0, _entries.default)(settings).forEach(function (_ref) {
        var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
            key = _ref2[0],
            value = _ref2[1];

        if ('stretched_section_container' === key) {
          elementorFrontend.config.kit[key] = value;
          elementor.channels.editor.trigger('kit:change:stretchContainer');
        }
      });
    }
  }]);
  return KitUpdateStretchContainer;
}($e.modules.hookUI.After);

exports.KitUpdateStretchContainer = KitUpdateStretchContainer;
var _default = KitUpdateStretchContainer;
exports.default = _default;

/***/ }),

/***/ "../core/kits/assets/js/hooks/ui/document/repeater/remove/remove-preview-deleted-variables.js":
/*!****************************************************************************************************!*\
  !*** ../core/kits/assets/js/hooks/ui/document/repeater/remove/remove-preview-deleted-variables.js ***!
  \****************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.KitRemovePreviewDeletedVariables = void 0;

var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

/**
 * On delete a design system item - the used variables on the preview frame are
 * invalid and cause the elements to get the user-agent default style instead of
 * inherit higher CSS rules.
 *
 * The hook finds and removes all deleted item variables from the preview inline styles.
 */
var KitRemovePreviewDeletedVariables = /*#__PURE__*/function (_$e$modules$hookUI$Be) {
  (0, _inherits2.default)(KitRemovePreviewDeletedVariables, _$e$modules$hookUI$Be);

  var _super = (0, _createSuper2.default)(KitRemovePreviewDeletedVariables);

  function KitRemovePreviewDeletedVariables() {
    var _this;

    (0, _classCallCheck2.default)(this, KitRemovePreviewDeletedVariables);

    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }

    _this = _super.call.apply(_super, [this].concat(args));
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "controls", ['custom_colors', 'custom_typography']);
    return _this;
  }

  (0, _createClass2.default)(KitRemovePreviewDeletedVariables, [{
    key: "getCommand",
    value: function getCommand() {
      return 'document/repeater/remove';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'kit-remove-preview-deleted-variables';
    }
  }, {
    key: "getContainerType",
    value: function getContainerType() {
      return 'document';
    }
  }, {
    key: "getConditions",
    value: function getConditions(args) {
      return this.controls.includes(args.name) && 'kit' === elementor.documents.getCurrent().config.type;
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var _this2 = this;

      // Store on component in order to use it in undo hook.
      this.component = $e.components.get('panel/global');
      this.component.tempStyle = this.component.tempStyle || {};
      var _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers,
          kitCSSId = "elementor-style-page-".concat(elementor.config.kit_id);
      containers.forEach(function (container) {
        var item = container.repeaters[args.name].children[args.index],
            stylesheets = (0, _values.default)(elementor.$previewContents[0].styleSheets).filter(function (stylesheet) {
          // Don't touch the kit CSS itself.
          return kitCSSId !== stylesheet.ownerNode.id && stylesheet.ownerNode.innerHTML.includes(item.id);
        });
        stylesheets.forEach(function (stylesheet) {
          _this2.component.tempStyle[item.id] = _this2.extractVariables(stylesheet.cssRules, item.id);
        });
      });
    }
  }, {
    key: "extractVariables",
    value: function extractVariables(cssRules, id) {
      var variablesRules = {};
      (0, _values.default)(cssRules).forEach(function (rule) {
        if (!rule.style) {
          // TODO Handle CSSMediaRule.
          return;
        }

        variablesRules[rule.selectorText] = {}; // Get the original properties for undo.

        for (var i = 0; i < rule.style.length; i++) {
          var property = rule.style[i],
              value = rule.style[property];

          if (value.includes(id)) {
            variablesRules[rule.selectorText][property] = value;
          }
        } // Delete in a separated loop, because it changes the `style.length`.


        (0, _keys.default)(variablesRules[rule.selectorText]).forEach(function (property) {
          rule.style[property] = '';
        });
      });
      return variablesRules;
    }
  }]);
  return KitRemovePreviewDeletedVariables;
}($e.modules.hookUI.Before);

exports.KitRemovePreviewDeletedVariables = KitRemovePreviewDeletedVariables;

/***/ }),

/***/ "../core/kits/assets/js/hooks/ui/document/save/save/after.js":
/*!*******************************************************************!*\
  !*** ../core/kits/assets/js/hooks/ui/document/save/save/after.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.KitAfterSave = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _after = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/hooks/data/after */ "../core/common/assets/js/api/modules/hooks/data/after.js"));

var KitAfterSave = /*#__PURE__*/function (_After) {
  (0, _inherits2.default)(KitAfterSave, _After);

  var _super = (0, _createSuper2.default)(KitAfterSave);

  function KitAfterSave() {
    (0, _classCallCheck2.default)(this, KitAfterSave);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(KitAfterSave, [{
    key: "getCommand",
    value: function getCommand() {
      return 'document/save/save';
    }
  }, {
    key: "getConditions",
    value: function getConditions(args) {
      var status = args.status,
          _args$document = args.document,
          document = _args$document === void 0 ? elementor.documents.getCurrent() : _args$document;
      return 'publish' === status && 'kit' === document.config.type;
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'kit-footer-saver-after-save';
    }
  }, {
    key: "apply",
    value: function apply(args) {
      if ('publish' === args.status) {
        elementor.notifications.showToast({
          message: __('Your changes have been updated.', 'elementor'),
          buttons: [{
            name: 'back_to_editor',
            text: __('Back to Editor', 'elementor'),
            callback: function callback() {
              $e.run('panel/global/close');
            }
          }]
        });
      }

      if (elementor.activeBreakpointsUpdated) {
        var reloadConfirm = elementorCommon.dialogsManager.createWidget('alert', {
          id: 'elementor-save-kit-refersh-page',
          headerMessage: __('Reload Elementor Editor', 'elementor'),
          message: __('You have made modifications to the list of Active Breakpoints. For these changes to take effect, you need to reload Elementor Editor.', 'elementor'),
          position: {
            my: 'center center',
            at: 'center center'
          },
          strings: {
            confirm: __('Reload Now', 'elementor')
          },
          onConfirm: function onConfirm() {
            return location.reload();
          }
        });
        reloadConfirm.show();
      }
    }
  }]);
  return KitAfterSave;
}(_after.default);

exports.KitAfterSave = KitAfterSave;
var _default = KitAfterSave;
exports.default = _default;

/***/ }),

/***/ "../core/kits/assets/js/hooks/ui/document/save/save/delete-globals-cache.js":
/*!**********************************************************************************!*\
  !*** ../core/kits/assets/js/hooks/ui/document/save/save/delete-globals-cache.js ***!
  \**********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.KitDeleteGlobalsCache = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _after = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/hooks/data/after */ "../core/common/assets/js/api/modules/hooks/data/after.js"));

var KitDeleteGlobalsCache = /*#__PURE__*/function (_After) {
  (0, _inherits2.default)(KitDeleteGlobalsCache, _After);

  var _super = (0, _createSuper2.default)(KitDeleteGlobalsCache);

  function KitDeleteGlobalsCache() {
    (0, _classCallCheck2.default)(this, KitDeleteGlobalsCache);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(KitDeleteGlobalsCache, [{
    key: "getCommand",
    value: function getCommand() {
      return 'document/save/save';
    }
  }, {
    key: "getConditions",
    value: function getConditions(args) {
      var status = args.status,
          _args$document = args.document,
          document = _args$document === void 0 ? elementor.documents.getCurrent() : _args$document;
      return 'publish' === status && 'kit' === document.config.type;
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'document/save/save::update-globals-cache';
    }
  }, {
    key: "apply",
    value: function apply() {
      // After kit updates - remove globals from cache and force re-request from server.
      $e.components.get('globals').refreshGlobalData();
    }
  }]);
  return KitDeleteGlobalsCache;
}(_after.default);

exports.KitDeleteGlobalsCache = KitDeleteGlobalsCache;
var _default = KitDeleteGlobalsCache;
exports.default = _default;

/***/ }),

/***/ "../core/kits/assets/js/hooks/ui/editor/documents/load/add-menu-items.js":
/*!*******************************************************************************!*\
  !*** ../core/kits/assets/js/hooks/ui/editor/documents/load/add-menu-items.js ***!
  \*******************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.KitAddMenuItems = void 0;

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var KitAddMenuItems = /*#__PURE__*/function (_$e$modules$hookUI$Be) {
  (0, _inherits2.default)(KitAddMenuItems, _$e$modules$hookUI$Be);

  var _super = (0, _createSuper2.default)(KitAddMenuItems);

  function KitAddMenuItems() {
    (0, _classCallCheck2.default)(this, KitAddMenuItems);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(KitAddMenuItems, [{
    key: "getCommand",
    value: function getCommand() {
      return 'editor/documents/attach-preview';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'kit-add-menu-item';
    }
  }, {
    key: "getConditions",
    value: function getConditions() {
      return 'kit' === elementor.documents.getCurrent().config.type && !(0, _keys.default)($e.components.get('panel/global').getTabs()).length;
    }
  }, {
    key: "apply",
    value: function apply() {
      var document = elementor.documents.getCurrent();
      (0, _entries.default)(document.config.tabs).forEach(function (_ref) {
        var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
            tabId = _ref2[0],
            tabConfig = _ref2[1];

        $e.components.get('panel/global').addTab(tabId, tabConfig);
      });
    }
  }]);
  return KitAddMenuItems;
}($e.modules.hookUI.Before);

exports.KitAddMenuItems = KitAddMenuItems;
var _default = KitAddMenuItems;
exports.default = _default;

/***/ }),

/***/ "../core/kits/assets/js/hooks/ui/editor/documents/open/remove-editor-active-css.js":
/*!*****************************************************************************************!*\
  !*** ../core/kits/assets/js/hooks/ui/editor/documents/open/remove-editor-active-css.js ***!
  \*****************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.KitRemoveEditorActiveCSSDocumentsOpen = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var KitRemoveEditorActiveCSSDocumentsOpen = /*#__PURE__*/function (_$e$modules$hookUI$Af) {
  (0, _inherits2.default)(KitRemoveEditorActiveCSSDocumentsOpen, _$e$modules$hookUI$Af);

  var _super = (0, _createSuper2.default)(KitRemoveEditorActiveCSSDocumentsOpen);

  function KitRemoveEditorActiveCSSDocumentsOpen() {
    (0, _classCallCheck2.default)(this, KitRemoveEditorActiveCSSDocumentsOpen);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(KitRemoveEditorActiveCSSDocumentsOpen, [{
    key: "getCommand",
    value: function getCommand() {
      return 'editor/documents/open';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'kit-remove-editor-active-css--editor/documents/open';
    }
  }, {
    key: "getConditions",
    value: function getConditions() {
      return 'kit' === elementor.documents.getCurrent().config.type;
    }
  }, {
    key: "apply",
    value: function apply() {
      // TODO: Remove - Temporary fix to avoid conflict with `elementor.exitPreviewMode()`.
      setTimeout(function () {
        elementorFrontend.elements.$body.removeClass('elementor-editor-active');
      });
    }
  }]);
  return KitRemoveEditorActiveCSSDocumentsOpen;
}($e.modules.hookUI.After);

exports.KitRemoveEditorActiveCSSDocumentsOpen = KitRemoveEditorActiveCSSDocumentsOpen;
var _default = KitRemoveEditorActiveCSSDocumentsOpen;
exports.default = _default;

/***/ }),

/***/ "../core/kits/assets/js/hooks/ui/panel/global/base/base-open-close.js":
/*!****************************************************************************!*\
  !*** ../core/kits/assets/js/hooks/ui/panel/global/base/base-open-close.js ***!
  \****************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var BaseOpenClose = /*#__PURE__*/function (_$e$modules$hookUI$Af) {
  (0, _inherits2.default)(BaseOpenClose, _$e$modules$hookUI$Af);

  var _super = (0, _createSuper2.default)(BaseOpenClose);

  function BaseOpenClose() {
    (0, _classCallCheck2.default)(this, BaseOpenClose);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(BaseOpenClose, [{
    key: "initialize",
    value: function initialize() {
      var _this = this;

      elementor.on('preview:loaded', function () {
        _this.component = $e.components.get('panel/global');
      });
    }
  }]);
  return BaseOpenClose;
}($e.modules.hookUI.After);

exports.default = BaseOpenClose;

/***/ }),

/***/ "../core/kits/assets/js/hooks/ui/panel/global/close/back-to-route-history.js":
/*!***********************************************************************************!*\
  !*** ../core/kits/assets/js/hooks/ui/panel/global/close/back-to-route-history.js ***!
  \***********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.KitBackToRouteHistory = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _baseOpenClose = _interopRequireDefault(__webpack_require__(/*! ../base/base-open-close */ "../core/kits/assets/js/hooks/ui/panel/global/base/base-open-close.js"));

var KitBackToRouteHistory = /*#__PURE__*/function (_BaseOpenClose) {
  (0, _inherits2.default)(KitBackToRouteHistory, _BaseOpenClose);

  var _super = (0, _createSuper2.default)(KitBackToRouteHistory);

  function KitBackToRouteHistory() {
    (0, _classCallCheck2.default)(this, KitBackToRouteHistory);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(KitBackToRouteHistory, [{
    key: "getCommand",
    value: function getCommand() {
      return 'panel/global/close';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'back-to-route-history-/panel/global/close';
    }
  }, {
    key: "getConditions",
    value: function getConditions() {
      return this.component.routeHistory;
    }
  }, {
    key: "apply",
    value: function apply() {
      var historyBeforeOpen = this.component.routeHistory;
      delete this.component.routeHistory;
      /**
       * TODO: Find better solution.
       * Since cache deleted after leaving globals.
       * Cover issue: When back to route, it back to style, it causes the UI ask for styles separately and since,
       * Cache deleted, it asks the remote ( $e.data ) for specific colors/typography endpoints and causes a delay in global select box.
       * To handle the the issue, request globals manually, then back to route.
       */

      if (historyBeforeOpen.container) {
        $e.data.get('globals/index').then(function () {
          // Since the container comes from history, its not connected element.
          historyBeforeOpen.container = historyBeforeOpen.container.lookup();
          historyBeforeOpen.container.model.trigger('request:edit', {
            scrollIntoView: true
          });
          $e.route(historyBeforeOpen.route, {
            model: historyBeforeOpen.container.model,
            view: historyBeforeOpen.container.view
          });
        });
      }
    }
  }]);
  return KitBackToRouteHistory;
}(_baseOpenClose.default);

exports.KitBackToRouteHistory = KitBackToRouteHistory;
var _default = KitBackToRouteHistory;
exports.default = _default;

/***/ }),

/***/ "../core/kits/assets/js/hooks/ui/panel/global/open/save-route-history.js":
/*!*******************************************************************************!*\
  !*** ../core/kits/assets/js/hooks/ui/panel/global/open/save-route-history.js ***!
  \*******************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.KitSaveRouteHistory = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _baseOpenClose = _interopRequireDefault(__webpack_require__(/*! ../base/base-open-close */ "../core/kits/assets/js/hooks/ui/panel/global/base/base-open-close.js"));

var KitSaveRouteHistory = /*#__PURE__*/function (_BaseOpenClose) {
  (0, _inherits2.default)(KitSaveRouteHistory, _BaseOpenClose);

  var _super = (0, _createSuper2.default)(KitSaveRouteHistory);

  function KitSaveRouteHistory() {
    (0, _classCallCheck2.default)(this, KitSaveRouteHistory);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(KitSaveRouteHistory, [{
    key: "getCommand",
    value: function getCommand() {
      return 'panel/global/open';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'save-route-history--/panel/global/open';
    }
  }, {
    key: "getConditions",
    value: function getConditions() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      var result = arguments.length > 1 ? arguments[1] : undefined;
      return args.route;
    }
  }, {
    key: "apply",
    value: function apply(args) {
      this.component.routeHistory = args;
    }
  }]);
  return KitSaveRouteHistory;
}(_baseOpenClose.default);

exports.KitSaveRouteHistory = KitSaveRouteHistory;
var _default = KitSaveRouteHistory;
exports.default = _default;

/***/ }),

/***/ "../core/kits/assets/js/hooks/ui/panel/open/remove-editor-active-css.js":
/*!******************************************************************************!*\
  !*** ../core/kits/assets/js/hooks/ui/panel/open/remove-editor-active-css.js ***!
  \******************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.KitRemoveEditorActiveCSSPanelOpen = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var KitRemoveEditorActiveCSSPanelOpen = /*#__PURE__*/function (_$e$modules$hookUI$Af) {
  (0, _inherits2.default)(KitRemoveEditorActiveCSSPanelOpen, _$e$modules$hookUI$Af);

  var _super = (0, _createSuper2.default)(KitRemoveEditorActiveCSSPanelOpen);

  function KitRemoveEditorActiveCSSPanelOpen() {
    (0, _classCallCheck2.default)(this, KitRemoveEditorActiveCSSPanelOpen);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(KitRemoveEditorActiveCSSPanelOpen, [{
    key: "getCommand",
    value: function getCommand() {
      return 'panel/open';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'kit-remove-editor-active-css--/panel/open';
    }
  }, {
    key: "getConditions",
    value: function getConditions() {
      return 'kit' === elementor.documents.getCurrent().config.type;
    }
  }, {
    key: "apply",
    value: function apply() {
      // TODO: Remove - Temporary fix to avoid conflict with `elementor.exitPreviewMode()`.
      setTimeout(function () {
        elementorFrontend.elements.$body.removeClass('elementor-editor-active');
      });
    }
  }]);
  return KitRemoveEditorActiveCSSPanelOpen;
}($e.modules.hookUI.After);

exports.KitRemoveEditorActiveCSSPanelOpen = KitRemoveEditorActiveCSSPanelOpen;
var _default = KitRemoveEditorActiveCSSPanelOpen;
exports.default = _default;

/***/ }),

/***/ "../core/kits/assets/js/manager.js":
/*!*****************************************!*\
  !*** ../core/kits/assets/js/manager.js ***!
  \*****************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));

var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _component = _interopRequireDefault(__webpack_require__(/*! ./component */ "../core/kits/assets/js/component.js"));

var _panel = _interopRequireDefault(__webpack_require__(/*! ./panel */ "../core/kits/assets/js/panel.js"));

var _panelMenu = _interopRequireDefault(__webpack_require__(/*! ./panel-menu */ "../core/kits/assets/js/panel-menu.js"));

var _panelHeaderBehavior = _interopRequireDefault(__webpack_require__(/*! ./panel-header-behavior */ "../core/kits/assets/js/panel-header-behavior.js"));

var _globalSelectBehavior = _interopRequireDefault(__webpack_require__(/*! ./globals/global-select-behavior */ "../core/kits/assets/js/globals/global-select-behavior.js"));

var _controlsCssParser = _interopRequireDefault(__webpack_require__(/*! elementor-assets-js/editor/utils/controls-css-parser */ "../assets/dev/js/editor/utils/controls-css-parser.js"));

var Manager = /*#__PURE__*/function (_elementorModules$edi) {
  (0, _inherits2.default)(Manager, _elementorModules$edi);

  var _super = (0, _createSuper2.default)(Manager);

  function Manager() {
    var _this;

    (0, _classCallCheck2.default)(this, Manager);

    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }

    _this = _super.call.apply(_super, [this].concat(args));
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "loadingTriggers", {
      preview: false,
      globals: false
    });
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "variablesCSS", null);
    return _this;
  }

  (0, _createClass2.default)(Manager, [{
    key: "initialize",
    value: function initialize() {
      var _this2 = this;

      elementor.on('preview:loaded', function () {
        _this2.loadingTriggers.preview = true;

        _this2.renderGlobalsDefaultCSS();
      });
      elementor.on('document:loaded', function () {
        _this2.renderGlobalVariables();
      });
      elementor.once('globals:loaded', function () {
        _this2.loadingTriggers.globals = true;

        _this2.renderGlobalsDefaultCSS();
      });
      elementor.hooks.addFilter('controls/base/behaviors', this.addGlobalsBehavior);

      if (!elementor.config.user.can_edit_kit) {
        return;
      }

      $e.components.register(new _component.default({
        manager: this
      }));
    }
  }, {
    key: "addPanelPages",
    value: function addPanelPages() {
      elementor.getPanelView().addPage('kit_settings', {
        view: _panel.default,
        title: __('Site Settings', 'elementor')
      });
      elementor.getPanelView().addPage('kit_menu', {
        view: _panelMenu.default,
        title: __('Site Settings', 'elementor')
      });
    }
  }, {
    key: "addPanelMenuItem",
    value: function addPanelMenuItem() {
      var menu = elementor.modules.layouts.panel.pages.menu.Menu;
      menu.addItem({
        name: 'global-settings',
        icon: 'eicon-global-settings',
        title: __('Site Settings', 'elementor'),
        type: 'page',
        callback: function callback() {
          $e.run('panel/global/open', {
            route: $e.routes.getHistory('panel').reverse()[0].route
          });
        }
      }, 'style', 'editor-preferences');
      menu.addItem({
        name: 'site-editor',
        icon: 'eicon-theme-builder',
        title: __('Theme Builder', 'elementor'),
        type: 'page',
        callback: function callback() {
          return $e.run('app/open');
        }
      }, 'style', 'editor-preferences');
    }
  }, {
    key: "addHeaderBehavior",
    value: function addHeaderBehavior(behaviors) {
      behaviors.kit = {
        behaviorClass: _panelHeaderBehavior.default
      };
      return behaviors;
    }
  }, {
    key: "addGlobalsBehavior",
    value: function addGlobalsBehavior(behaviors, view) {
      // The view can be a UI control which does not have this method.
      if (!view.isGlobalActive) {
        return;
      }

      var isGlobalActive = view.isGlobalActive();

      if ('color' === view.options.model.get('type') && isGlobalActive) {
        behaviors.globals = {
          behaviorClass: _globalSelectBehavior.default,
          popoverTitle: __('Global Colors', 'elementor'),
          manageButtonText: __('Manage Global Colors', 'elementor'),
          tooltipText: __('Global Colors help you work smarter. Save a color, and use it anywhere throughout your site. Access and edit your global colors by clicking the Manage button.', 'elementor'),
          newGlobalConfirmTitle: __('Create New Global Color', 'elementor')
        };
      }

      if ('popover_toggle' === view.options.model.get('type') && 'typography' === view.options.model.get('groupType') && isGlobalActive) {
        behaviors.globals = {
          behaviorClass: _globalSelectBehavior.default,
          popoverTitle: __('Global Fonts', 'elementor'),
          manageButtonText: __('Manage Global Fonts', 'elementor'),
          tooltipText: __('Global Fonts help you work smarter. Save a Typography, and use it anywhere throughout your site. Access and edit your Global Fonts by clicking the Manage button.', 'elementor'),
          newGlobalConfirmTitle: __('Create New Global Font', 'elementor')
        };
      }

      return behaviors;
    }
    /**
     * In case there is a new global color/typography convert current globals to CSS variables.
     */

  }, {
    key: "renderGlobalVariables",
    value: function renderGlobalVariables() {
      var _this3 = this;

      if (!this.variablesCSS) {
        this.variablesCSS = new _controlsCssParser.default({
          id: 'e-kit-variables',
          settingsModel: new elementorModules.editor.elements.models.BaseSettings({}, {})
        });
      } // The kit document has its own CSS.


      if ('kit' === elementor.documents.getCurrent().config.type) {
        this.variablesCSS.removeStyleFromDocument();
        return;
      }

      $e.data.get('globals/index').then(function (_ref) {
        var data = _ref.data;

        if (data.colors) {
          (0, _values.default)(data.colors).forEach(function (item) {
            var controls = elementor.config.kit_config.design_system_controls.colors,
                values = {
              _id: item.id,
              color: item.value
            };

            _this3.variablesCSS.addStyleRules(controls, values, controls, ['{{WRAPPER}}'], ['body']);
          });
        }

        if (data.typography) {
          (0, _values.default)(data.typography).forEach(function (item) {
            var controls = elementor.config.kit_config.design_system_controls.typography,
                values = (0, _objectSpread2.default)({
              _id: item.id
            }, item.value); // Enqueue fonts.

            if (item.value.typography_font_family) {
              elementor.helpers.enqueueFont(item.value.typography_font_family);
            }

            _this3.variablesCSS.addStyleRules(controls, values, controls, ['{{WRAPPER}}'], ['body']);
          });
        }

        _this3.variablesCSS.addStyleToDocument();
      });
    } // Use the Controls CSS Parser to add the global defaults CSS to the page.

  }, {
    key: "renderGlobalsDefaultCSS",
    value: function renderGlobalsDefaultCSS() {
      if (!this.loadingTriggers.preview || !this.loadingTriggers.globals) {
        return;
      }

      var cssParser = new _controlsCssParser.default({
        id: 'e-global-style'
      }),
          defaultColorsEnabled = elementor.config.globals.defaults_enabled.colors,
          defaultTypographyEnabled = elementor.config.globals.defaults_enabled.typography; // If both default colors and typography are disabled, there is no need to render schemes and default global css.

      if (!defaultColorsEnabled && !defaultTypographyEnabled) {
        return;
      }

      (0, _values.default)(elementor.widgetsCache).forEach(function (widget) {
        if (!widget.controls) {
          return;
        }

        var globalControls = [],
            globalValues = {};
        (0, _values.default)(widget.controls).forEach(function (control) {
          var _control$global, _globalControl$global;

          var isColorControl = 'color' === control.type,
              isTypographyControl = 'typography' === control.groupType;

          if (isColorControl && !defaultColorsEnabled || isTypographyControl && !defaultTypographyEnabled) {
            return;
          }

          var globalControl = control;

          if (control.groupType) {
            globalControl = widget.controls[control.groupPrefix + control.groupType];
          }

          if ((_control$global = control.global) !== null && _control$global !== void 0 && _control$global.default) {
            globalValues[control.name] = globalControl.global.default;
          }

          if ((_globalControl$global = globalControl.global) !== null && _globalControl$global !== void 0 && _globalControl$global.default) {
            globalControls.push(control);
          }
        });
        globalControls.forEach(function (control) {
          cssParser.addControlStyleRules(control, widget.controls, // values
          widget.controls, // controls
          ['{{WRAPPER}}'], ['.elementor-widget-' + widget.widget_type], globalValues);
        });
      });
      cssParser.addStyleToDocument();
    }
  }, {
    key: "onInit",
    value: function onInit() {
      var _this4 = this;

      (0, _get2.default)((0, _getPrototypeOf2.default)(Manager.prototype), "onInit", this).call(this);
      elementorCommon.elements.$window.on('elementor:loaded', function () {
        if (elementor.config.initial_document.panel.support_kit) {
          _this4.initialize();
        }
      });
    }
  }]);
  return Manager;
}(elementorModules.editor.utils.Module);

exports.default = Manager;

/***/ }),

/***/ "../core/kits/assets/js/panel-content.js":
/*!***********************************************!*\
  !*** ../core/kits/assets/js/panel-content.js ***!
  \***********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _default = /*#__PURE__*/function (_elementorModules$edi) {
  (0, _inherits2.default)(_default, _elementorModules$edi);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "id",
    value: function id() {
      return 'elementor-kit-panel-content';
    }
  }, {
    key: "getTemplate",
    value: function getTemplate() {
      return '#tmpl-elementor-kit-panel-content';
    }
  }, {
    key: "childViewContainer",
    value: function childViewContainer() {
      return '#elementor-kit-panel-content-controls';
    }
  }, {
    key: "childViewOptions",
    value: function childViewOptions() {
      var container = this.getOption('container');
      return {
        elementSettingsModel: container.settings,
        container: container
      };
    }
  }]);
  return _default;
}(elementorModules.editor.views.ControlsStack);

exports.default = _default;

/***/ }),

/***/ "../core/kits/assets/js/panel-header-behavior.js":
/*!*******************************************************!*\
  !*** ../core/kits/assets/js/panel-header-behavior.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _panelHeaderButtons = __webpack_require__(/*! ./panel-header-buttons */ "../core/kits/assets/js/panel-header-buttons.js");

var _default = /*#__PURE__*/function (_Marionette$Behavior) {
  (0, _inherits2.default)(_default, _Marionette$Behavior);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "ui",
    value: function ui() {
      return {
        buttonClose: '#elementor-panel-header-kit-close',
        buttonBack: '#elementor-panel-header-kit-back'
      };
    }
  }, {
    key: "events",
    value: function events() {
      return {
        'click @ui.buttonClose': 'onClickClose',
        'click @ui.buttonBack': 'onClickBack'
      };
    }
  }, {
    key: "onBeforeShow",
    value: function onBeforeShow() {
      this.$el.prepend(elementor.compileTemplate(_panelHeaderButtons.buttonBack, {
        Back: __('Back', 'elementor')
      }));
      this.$el.append(elementor.compileTemplate(_panelHeaderButtons.buttonClose, {
        Close: __('Close', 'elementor')
      }));
    }
  }, {
    key: "onClickClose",
    value: function onClickClose() {
      $e.run('panel/global/close');
    }
  }, {
    key: "onClickBack",
    value: function onClickBack() {
      $e.run('panel/global/back');
    }
  }]);
  return _default;
}(Marionette.Behavior);

exports.default = _default;

/***/ }),

/***/ "../core/kits/assets/js/panel-header-buttons.js":
/*!******************************************************!*\
  !*** ../core/kits/assets/js/panel-header-buttons.js ***!
  \******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.buttonClose = exports.buttonBack = void 0;
var arrowIconClass = 'eicon-chevron-' + (elementorCommon.config.isRTL ? 'right' : 'left');
var buttonBack = "\n<div id=\"elementor-panel-header-kit-back\" class=\"elementor-header-button\">\n\t<i class=\"elementor-icon ".concat(arrowIconClass, " tooltip-target\" aria-hidden=\"true\" data-tooltip=\"{{ Back }}\"></i>\n\t<span class=\"elementor-screen-only\">{{ Back }}</span>\n</div>\n");
exports.buttonBack = buttonBack;
var buttonClose = "\n<div id=\"elementor-panel-header-kit-close\" class=\"elementor-header-button\">\n\t<i class=\"elementor-icon eicon-close tooltip-target\" aria-hidden=\"true\" data-tooltip=\"{{ Close }}\"></i>\n\t<span class=\"elementor-screen-only\">{{ Close }}</span>\n</div>\n";
exports.buttonClose = buttonClose;

/***/ }),

/***/ "../core/kits/assets/js/panel-menu.js":
/*!********************************************!*\
  !*** ../core/kits/assets/js/panel-menu.js ***!
  \********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _base = _interopRequireDefault(__webpack_require__(/*! elementor-panel/pages/menu/base */ "../assets/dev/js/editor/regions/panel/pages/menu/base.js"));

var PanelMenu = /*#__PURE__*/function (_MenuPageView) {
  (0, _inherits2.default)(PanelMenu, _MenuPageView);

  var _super = (0, _createSuper2.default)(PanelMenu);

  function PanelMenu() {
    (0, _classCallCheck2.default)(this, PanelMenu);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(PanelMenu, [{
    key: "initialize",
    value: function initialize() {
      this.collection = PanelMenu.getGroups();
    }
  }]);
  return PanelMenu;
}(_base.default);

exports.default = PanelMenu;
PanelMenu.groups = null;

PanelMenu.createGroupItems = function (groupName) {
  var tabs = $e.components.get('panel/global').getTabs(),
      groupTabs = (0, _entries.default)(tabs).filter(function (_ref) {
    var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
        tabId = _ref2[0],
        tabConfig = _ref2[1];

    return groupName === tabConfig.group;
  });
  return groupTabs.map(function (_ref3) {
    var _ref4 = (0, _slicedToArray2.default)(_ref3, 2),
        tabId = _ref4[0],
        tabConfig = _ref4[1];

    return {
      name: tabId,
      icon: tabConfig.icon,
      title: tabConfig.title,
      callback: function callback() {
        return $e.route('panel/global/' + tabId);
      }
    };
  });
};

PanelMenu.initGroups = function () {
  var settingsItems = PanelMenu.createGroupItems('settings'),
      additionalSettingsProps = {
    name: 'settings-additional-settings',
    icon: 'eicon-tools',
    title: __('Additional Settings', 'elementor'),
    type: 'link',
    link: elementor.config.admin_settings_url,
    newTab: true
  };
  settingsItems.push(additionalSettingsProps);
  PanelMenu.groups = new Backbone.Collection([{
    name: 'design_system',
    title: __('Design System', 'elementor'),
    items: PanelMenu.createGroupItems('global')
  }, {
    name: 'theme_style',
    title: __('Theme Style', 'elementor'),
    items: PanelMenu.createGroupItems('theme-style')
  }, {
    name: 'settings',
    title: __('Settings', 'elementor'),
    items: settingsItems
  }]);
};

PanelMenu.getGroups = function () {
  if (!PanelMenu.groups) {
    PanelMenu.initGroups();
  }

  return PanelMenu.groups;
};

/***/ }),

/***/ "../core/kits/assets/js/panel.js":
/*!***************************************!*\
  !*** ../core/kits/assets/js/panel.js ***!
  \***************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _panelContent = _interopRequireDefault(__webpack_require__(/*! ./panel-content */ "../core/kits/assets/js/panel-content.js"));

module.exports = Marionette.LayoutView.extend({
  id: 'elementor-kit-panel',
  template: '#tmpl-elementor-kit-panel',
  regions: {
    content: '#elementor-kit__panel-content__wrapper'
  },
  onBeforeShow: function onBeforeShow() {
    var container = elementor.documents.getCurrent().container,
        options = {
      container: container,
      model: container.model,
      controls: container.settings.controls,
      name: 'kit'
    };
    this.showChildView('content', new _panelContent.default(options));
  }
});

/***/ }),

/***/ "../core/kits/assets/js/repeater-row.js":
/*!**********************************************!*\
  !*** ../core/kits/assets/js/repeater-row.js ***!
  \**********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var sprintf = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["sprintf"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _repeaterRow = _interopRequireDefault(__webpack_require__(/*! ../../../../assets/dev/js/editor/controls/repeater-row */ "../assets/dev/js/editor/controls/repeater-row.js"));

var _default = /*#__PURE__*/function (_RepeaterRow) {
  (0, _inherits2.default)(_default, _RepeaterRow);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "getTemplate",
    value: function getTemplate() {
      return '#tmpl-elementor-global-style-repeater-row';
    }
  }, {
    key: "events",
    value: function events() {
      return {
        'click @ui.removeButton': 'onRemoveButtonClick'
      };
    }
  }, {
    key: "updateColorValue",
    value: function updateColorValue() {
      this.$colorValue.text(this.model.get('color'));
    }
  }, {
    key: "getDisabledRemoveButtons",
    value: function getDisabledRemoveButtons() {
      if (!this.ui.disabledRemoveButtons) {
        this.ui.disabledRemoveButtons = this.$el.find('.elementor-repeater-tool-remove--disabled');
      }

      return this.ui.disabledRemoveButtons;
    }
  }, {
    key: "getRemoveButton",
    value: function getRemoveButton() {
      return this.ui.removeButton.add(this.getDisabledRemoveButtons());
    }
  }, {
    key: "triggers",
    value: function triggers() {
      return {};
    }
  }, {
    key: "onChildviewRender",
    value: function onChildviewRender(childView) {
      var isColor = 'color' === childView.model.get('type'),
          isPopoverToggle = 'popover_toggle' === childView.model.get('type');
      var globalType = '',
          globalTypeTranslated = '';

      if (isColor) {
        this.$colorValue = jQuery('<div>', {
          class: 'e-global-colors__color-value elementor-control-unit-3'
        });
        childView.$el.find('.elementor-control-input-wrapper').prepend(this.getRemoveButton(), this.$colorValue);
        globalType = 'color';
        globalTypeTranslated = __('Color', 'elementor');
        this.updateColorValue();
      }

      if (isPopoverToggle) {
        childView.$el.find('.elementor-control-input-wrapper').append(this.getRemoveButton());
        globalType = 'font';
        globalTypeTranslated = __('Font', 'elementor');
      }

      if (isColor || isPopoverToggle) {
        var removeButtons = this.getDisabledRemoveButtons();
        this.ui.removeButton.data('e-global-type', globalType);
        this.ui.removeButton.tipsy({
          /* translators: %s: Font/Color. */
          title: function title() {
            return sprintf(__('Delete Global %s', 'elementor'), globalTypeTranslated);
          },
          gravity: function gravity() {
            return 's';
          }
        });
        removeButtons.tipsy({
          /* translators: %s: Font/Color. */
          title: function title() {
            return sprintf(__('System %s can\'t be deleted', 'elementor'), globalTypeTranslated);
          },
          gravity: function gravity() {
            return 's';
          }
        });
      }
    }
  }, {
    key: "onModelChange",
    value: function onModelChange(model) {
      if (undefined !== model.changed.color) {
        this.updateColorValue();
      }
    }
  }, {
    key: "onRemoveButtonClick",
    value: function onRemoveButtonClick() {
      var _this = this;

      var globalType = this.ui.removeButton.data('e-global-type'),
          globalTypeTranslatedCapitalized = 'font' === globalType ? __('Font', 'elementor') : __('Color', 'elementor'),
          globalTypeTranslatedLowercase = 'font' === globalType ? __('font', 'elementor') : __('color', 'elementor'),

      /* translators: 1: Font/Color, 2: typography/color. */
      translatedMessage = sprintf(__('You\'re about to delete a Global %s. Note that if it\'s being used anywhere on your site, it will inherit a default %s.', 'elementor'), globalTypeTranslatedCapitalized, globalTypeTranslatedLowercase);
      this.confirmDeleteModal = elementorCommon.dialogsManager.createWidget('confirm', {
        className: 'e-global__confirm-delete',

        /* translators: %s: Font/Color. */
        headerMessage: sprintf(__('Delete Global %s', 'elementor'), globalTypeTranslatedCapitalized),
        message: '<i class="eicon-info-circle"></i> ' + translatedMessage,
        strings: {
          confirm: __('Delete', 'elementor'),
          cancel: __('Cancel', 'elementor')
        },
        hide: {
          onBackgroundClick: false
        },
        onConfirm: function onConfirm() {
          _this.trigger('click:remove');
        }
      });
      this.confirmDeleteModal.show();
    }
  }]);
  return _default;
}(_repeaterRow.default);

exports.default = _default;

/***/ }),

/***/ "../core/kits/assets/js/repeater.js":
/*!******************************************!*\
  !*** ../core/kits/assets/js/repeater.js ***!
  \******************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _repeater = _interopRequireDefault(__webpack_require__(/*! ../../../../assets/dev/js/editor/controls/repeater */ "../assets/dev/js/editor/controls/repeater.js"));

var _repeaterRow = _interopRequireDefault(__webpack_require__(/*! ./repeater-row */ "../core/kits/assets/js/repeater-row.js"));

var _default = /*#__PURE__*/function (_Repeater) {
  (0, _inherits2.default)(_default, _Repeater);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    var _this;

    (0, _classCallCheck2.default)(this, _default);

    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }

    _this = _super.call.apply(_super, [this].concat(args));
    _this.childView = _repeaterRow.default;
    return _this;
  }

  (0, _createClass2.default)(_default, [{
    key: "templateHelpers",
    value: function templateHelpers() {
      var templateHelpers = (0, _get2.default)((0, _getPrototypeOf2.default)(_default.prototype), "templateHelpers", this).call(this);
      templateHelpers.addButtonText = 'custom_colors' === this.model.get('name') ? __('Add Color', 'elementor') : __('Add Style', 'elementor');
      return templateHelpers;
    }
  }, {
    key: "getDefaults",
    value: function getDefaults() {
      var defaults = (0, _get2.default)((0, _getPrototypeOf2.default)(_default.prototype), "getDefaults", this).call(this);
      defaults.title = "".concat(__('New Item', 'elementor'), " #").concat(this.children.length + 1);
      return defaults;
    }
  }]);
  return _default;
}(_repeater.default);

exports.default = _default;

/***/ }),

/***/ "../modules/dev-tools/assets/js/editor/dev-tools.js":
/*!**********************************************************!*\
  !*** ../modules/dev-tools/assets/js/editor/dev-tools.js ***!
  \**********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/toConsumableArray */ "../node_modules/@babel/runtime-corejs2/helpers/toConsumableArray.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _default = /*#__PURE__*/function (_elementorModules$edi) {
  (0, _inherits2.default)(_default, _elementorModules$edi);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "onElementorLoaded",
    value: function onElementorLoaded() {
      this.notifyDeprecated();
    }
  }, {
    key: "notifyDeprecated",
    value: function notifyDeprecated() {
      // eslint-disable-next-line camelcase
      var notices = elementor.config.dev_tools.deprecation.soft_notices;
      (0, _entries.default)(notices).forEach(function (_ref) {
        var _elementorCommon$help;

        var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
            key = _ref2[0],
            notice = _ref2[1];

        (_elementorCommon$help = elementorCommon.helpers).softDeprecated.apply(_elementorCommon$help, [key].concat((0, _toConsumableArray2.default)(notice)));
      });
    }
  }]);
  return _default;
}(elementorModules.editor.utils.Module);

exports.default = _default;

/***/ }),

/***/ "../modules/elements-color-picker/assets/js/editor/commands/apply.js":
/*!***************************************************************************!*\
  !*** ../modules/elements-color-picker/assets/js/editor/commands/apply.js ***!
  \***************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.Apply = void 0;

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

/**
 * Apply & Save the selected color on click.
 */
var Apply = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Apply, _CommandBase);

  var _super = (0, _createSuper2.default)(Apply);

  function Apply() {
    (0, _classCallCheck2.default)(this, Apply);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Apply, [{
    key: "validateArgs",
    value:
    /**
     * Validate the command arguments.
     *
     * @param {object} args
     */
    function validateArgs(args) {
      this.requireArgumentType('value', 'string');
    }
    /**
     * Execute the color apply command.
     *
     * @param {string} value The new color to apply.
     * @param {HTMLElement} trigger The element which triggered the Apply command. Used to show `Selected` text & listen to `mouseleave`.
     *
     * @returns {void}
     */

  }, {
    key: "apply",
    value: function apply(_ref) {
      var value = _ref.value,
          trigger = _ref.trigger;
      this.setColor(value);

      if (trigger) {
        var prevText = trigger.swatch.dataset.text; // Show `Selected!` message.

        trigger.swatch.dataset.text = __('Selected!', 'elementor'); // Hide message after a second.

        setTimeout(function () {
          trigger.swatch.dataset.text = prevText;
        }, 1000); // End picking only after the user leaves the swatch container.

        trigger.palette.addEventListener('mouseleave', function handler(e) {
          e.currentTarget.removeEventListener('mouseleave', handler);
          $e.run('elements-color-picker/end');
        });
      } else {
        $e.run('elements-color-picker/end');
      }
    }
    /**
     * Set a color to the current selected element.
     *
     * @param color
     *
     * @returns {void}
     */

  }, {
    key: "setColor",
    value: function setColor(color) {
      $e.run('document/elements/settings', {
        container: this.component.currentPicker.container,
        settings: (0, _defineProperty2.default)({}, this.component.currentPicker.control, color),
        options: {
          external: true
        }
      });
      this.component.currentPicker.initialColor = color;
    }
  }]);
  return Apply;
}(_commandBase.default);

exports.Apply = Apply;

/***/ }),

/***/ "../modules/elements-color-picker/assets/js/editor/commands/end.js":
/*!*************************************************************************!*\
  !*** ../modules/elements-color-picker/assets/js/editor/commands/end.js ***!
  \*************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.End = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var _utils = __webpack_require__(/*! elementor/modules/elements-color-picker/assets/js/editor/utils */ "../modules/elements-color-picker/assets/js/editor/utils.js");

/**
 * End the color picking process and return to the normal editor state.
 */
var End = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(End, _CommandBase);

  var _super = (0, _createSuper2.default)(End);

  function End() {
    (0, _classCallCheck2.default)(this, End);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(End, [{
    key: "apply",
    value:
    /**
     * Initialize the command.
     *
     * @returns {void}
     */
    function apply() {
      var _this$component$curre;

      // In-Activate the component since the default behavior will in-activate it only on route change,
      // but this component doesn't have any routes.
      this.component.inactivate(); // Remove all elements & event listeners.

      elementor.$previewContents[0].querySelector('body').classList.remove('elementor-editor__ui-state__color-picker');
      elementor.$previewContents[0].querySelectorAll('.e-element-color-picker').forEach(function (picker) {
        jQuery(picker).tipsy('hide');
        picker.remove();
      });
      var elementorElements = elementor.$previewContents[0].querySelectorAll('.elementor-element');
      (0, _utils.removeNamespaceHandler)(elementorElements, 'click.color-picker');
      (0, _utils.removeNamespaceHandler)(elementor.$previewWrapper[0], 'mouseleave.color-picker'); // Set the picking process trigger to inactive mode.
      // eslint-disable-next-line no-unused-expressions

      (_this$component$curre = this.component.currentPicker.trigger) === null || _this$component$curre === void 0 ? void 0 : _this$component$curre.classList.remove('e-control-tool-disabled'); // Reset the current picker.

      this.component.resetPicker(); // Return to edit mode.

      elementor.changeEditMode('edit');
    }
  }]);
  return End;
}(_commandBase.default);

exports.End = End;

/***/ }),

/***/ "../modules/elements-color-picker/assets/js/editor/commands/enter-preview.js":
/*!***********************************************************************************!*\
  !*** ../modules/elements-color-picker/assets/js/editor/commands/enter-preview.js ***!
  \***********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.EnterPreview = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

/**
 * Show the user a UI preview of the currently hovered color.
 */
var EnterPreview = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(EnterPreview, _CommandBase);

  var _super = (0, _createSuper2.default)(EnterPreview);

  function EnterPreview() {
    (0, _classCallCheck2.default)(this, EnterPreview);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(EnterPreview, [{
    key: "apply",
    value:
    /**
     * Initialize the command.
     *
     * @param {object} args
     *
     * @returns {void}
     */
    function apply(args) {
      this.component.renderUI(args.value);
    }
  }]);
  return EnterPreview;
}(_commandBase.default);

exports.EnterPreview = EnterPreview;

/***/ }),

/***/ "../modules/elements-color-picker/assets/js/editor/commands/exit-preview.js":
/*!**********************************************************************************!*\
  !*** ../modules/elements-color-picker/assets/js/editor/commands/exit-preview.js ***!
  \**********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.ExitPreview = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

/**
 * Exit the UI preview mode on mouseout.
 */
var ExitPreview = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(ExitPreview, _CommandBase);

  var _super = (0, _createSuper2.default)(ExitPreview);

  function ExitPreview() {
    (0, _classCallCheck2.default)(this, ExitPreview);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(ExitPreview, [{
    key: "apply",
    value:
    /**
     * Initialize the command.
     *
     * @param {object} args
     *
     * @returns {void}
     */
    function apply(args) {
      var initialColor = this.component.currentPicker.initialColor;

      if (null === initialColor) {
        return;
      }

      this.component.renderUI(initialColor);
    }
  }]);
  return ExitPreview;
}(_commandBase.default);

exports.ExitPreview = ExitPreview;

/***/ }),

/***/ "../modules/elements-color-picker/assets/js/editor/commands/index.js":
/*!***************************************************************************!*\
  !*** ../modules/elements-color-picker/assets/js/editor/commands/index.js ***!
  \***************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "Apply", {
  enumerable: true,
  get: function get() {
    return _apply.Apply;
  }
});

_Object$defineProperty(exports, "End", {
  enumerable: true,
  get: function get() {
    return _end.End;
  }
});

_Object$defineProperty(exports, "EnterPreview", {
  enumerable: true,
  get: function get() {
    return _enterPreview.EnterPreview;
  }
});

_Object$defineProperty(exports, "ExitPreview", {
  enumerable: true,
  get: function get() {
    return _exitPreview.ExitPreview;
  }
});

_Object$defineProperty(exports, "ShowSwatches", {
  enumerable: true,
  get: function get() {
    return _showSwatches.ShowSwatches;
  }
});

_Object$defineProperty(exports, "Start", {
  enumerable: true,
  get: function get() {
    return _start.Start;
  }
});

var _apply = __webpack_require__(/*! ./apply */ "../modules/elements-color-picker/assets/js/editor/commands/apply.js");

var _end = __webpack_require__(/*! ./end */ "../modules/elements-color-picker/assets/js/editor/commands/end.js");

var _enterPreview = __webpack_require__(/*! ./enter-preview */ "../modules/elements-color-picker/assets/js/editor/commands/enter-preview.js");

var _exitPreview = __webpack_require__(/*! ./exit-preview */ "../modules/elements-color-picker/assets/js/editor/commands/exit-preview.js");

var _showSwatches = __webpack_require__(/*! ./show-swatches */ "../modules/elements-color-picker/assets/js/editor/commands/show-swatches.js");

var _start = __webpack_require__(/*! ./start */ "../modules/elements-color-picker/assets/js/editor/commands/start.js");

/***/ }),

/***/ "../modules/elements-color-picker/assets/js/editor/commands/show-swatches.js":
/*!***********************************************************************************!*\
  !*** ../modules/elements-color-picker/assets/js/editor/commands/show-swatches.js ***!
  \***********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.ShowSwatches = void 0;

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _parseInt2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/parse-int */ "../node_modules/@babel/runtime-corejs2/core-js/parse-int.js"));

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

__webpack_require__(/*! core-js/modules/es6.regexp.match.js */ "../node_modules/core-js/modules/es6.regexp.match.js");

__webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var _utils = __webpack_require__(/*! elementor/core/app/assets/js/utils/utils */ "../core/app/assets/js/utils/utils.js");

/**
 * Show a palette of color swatches on click.
 */
var ShowSwatches = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(ShowSwatches, _CommandBase);

  var _super = (0, _createSuper2.default)(ShowSwatches);

  /**
   * Initialize the command.
   *
   * @param {object} args
   *
   * @returns {void}
   */
  function ShowSwatches(args) {
    var _this;

    (0, _classCallCheck2.default)(this, ShowSwatches);
    _this = _super.call(this, args);
    _this.colors = {};
    _this.classes = {
      picker: 'e-element-color-picker',
      tooltip: 'e-element-color-picker__tooltip',
      swatch: 'e-element-color-picker__swatch',
      hidden: 'e-picker-hidden'
    };
    _this.selectors = {
      picker: ".".concat(_this.classes.picker),
      tooltip: ".".concat(_this.classes.tooltip)
    };
    _this.container = null;
    _this.backgroundImages = [];
    return _this;
  }
  /**
   * Validate the command arguments.
   *
   * @param {Object} args
   *
   * @returns {void}
   */


  (0, _createClass2.default)(ShowSwatches, [{
    key: "validateArgs",
    value: function validateArgs(args) {
      this.requireArgument('event', args);
    }
    /**
     * Execute the command.
     *
     * @param {Object} args
     *
     * @returns {void}
     */

  }, {
    key: "apply",
    value: function apply(args) {
      var _this2 = this;

      var e = args.event;
      var id = e.currentTarget.dataset.id; // Calculate swatch location.

      var rect = e.currentTarget.getBoundingClientRect(),
          x = Math.round(e.clientX - rect.left) + 'px',
          y = Math.round(e.clientY - rect.top) + 'px';
      this.container = elementor.getContainer(id);
      var activePicker = elementor.$previewContents[0].querySelector(this.selectors.picker); // If there is a picker already, remove it.

      if (activePicker) {
        this.removeTooltip(activePicker);
        activePicker.remove();
      }

      e.stopPropagation(); // Hack to wait for the images to load before picking the colors from it
      // when extracting colors from a background image control.
      // TODO: Find a better solution.

      setTimeout(function () {
        var isImage = 'img' === e.target.tagName.toLowerCase();

        if (isImage) {
          _this2.extractColorsFromImage(e.target);
        } else {
          // Colors from the parent container.
          _this2.extractColorsFromSettings(); // Colors from repeaters.


          _this2.extractColorsFromRepeaters();

          _this2.extractColorsFromImages();
        }

        _this2.initSwatch(x, y);
      }, 100);
    }
    /**
     * Extract colors from color controls of the current selected element.
     *
     * @param {Container} container - A container to extract colors from its settings.
     *
     * @returns {void}
     */

  }, {
    key: "extractColorsFromSettings",
    value: function extractColorsFromSettings() {
      var _this3 = this;

      var container = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.container;
      // Iterate over the widget controls.
      (0, _keys.default)(container.settings.attributes).map(function (control) {
        var _container$controls$c;

        // Limit colors count.
        if (_this3.reachedColorsLimit()) {
          return;
        }

        if (!(control in container.controls)) {
          return;
        }

        var isColor = 'color' === ((_container$controls$c = container.controls[control]) === null || _container$controls$c === void 0 ? void 0 : _container$controls$c.type);
        var isBgImage = control.includes('background_image'); // Determine if the current control is active.

        var isActive = function isActive() {
          return elementor.helpers.isActiveControl(container.controls[control], container.settings.attributes);
        }; // Throw non-color and non-background-image controls.


        if (!isColor && !isBgImage) {
          return;
        } // Throw non-active controls.


        if (!isActive()) {
          return;
        } // Handle background images.


        if (isBgImage) {
          _this3.addTempBackgroundImage(container.getSetting(control));

          return;
        }

        var value = container.getSetting(control);
        var globalValue = container.globals.get(control); // Extract global value if present.

        if (globalValue) {
          var matches = globalValue.match(/id=(.+)/i); // Build the global color CSS variable & resolve it to a HEX value.
          // It's used instead of `$e.data.get( globalValue )` in order to avoid async/await hell.

          if (matches) {
            var cssVar = "--e-global-color-".concat(matches[1]);
            value = getComputedStyle(container.view.$el[0]).getPropertyValue(cssVar);
          }
        }

        if (value && !(0, _values.default)(_this3.colors).includes(value)) {
          // Create a unique index based on the container ID and the control name.
          // Used in order to avoid key overriding when used with repeaters (which share the same controls names).
          _this3.colors["".concat(container.id, " - ").concat(control)] = value;
        }
      });
    }
    /**
     * Extract colors from repeater controls.
     *
     * @returns {void}
     */

  }, {
    key: "extractColorsFromRepeaters",
    value: function extractColorsFromRepeaters() {
      var _this4 = this;

      // Iterate over repeaters.
      (0, _values.default)(this.container.repeaters).forEach(function (repeater) {
        // Iterate over each repeater items.
        repeater.children.forEach(function (child) {
          _this4.extractColorsFromSettings(child);
        });
      });
    }
    /**
     * Create a temporary image element in order to extract colors from it using ColorThief.
     * Used with background images from background controls.
     *
     * @param {Object} setting - A settings object from URL control.
     * @param {string} setting.url
     *
     * @returns {void}
     */

  }, {
    key: "addTempBackgroundImage",
    value: function addTempBackgroundImage(_ref) {
      var url = _ref.url;

      if (!url) {
        return;
      } // Create the image.


      var img = document.createElement('img');
      img.src = url; // Push the image to the temporary images array.

      this.backgroundImages.push(img);
    }
    /**
     * Extract colors from image and push it ot the colors array.
     *
     * @param {Object} image - The image element to extract colors from
     * @param {String} suffix - An optional suffix for the key in the colors array.
     *
     * @returns {void}
     */

  }, {
    key: "extractColorsFromImage",
    value: function extractColorsFromImage(image) {
      var _this5 = this;

      var suffix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
      var colorThief = new ColorThief();
      var palette;

      try {
        palette = colorThief.getPalette(image);
      } catch (e) {
        return;
      } // Add the palette to the colors array.


      palette.forEach(function (color, index) {
        var hex = (0, _utils.rgbToHex)(color[0], color[1], color[2]); // Limit colors count.

        if (_this5.reachedColorsLimit()) {
          return;
        }

        if (!(0, _values.default)(_this5.colors).includes(hex)) {
          _this5.colors["palette-".concat(suffix, "-").concat(index)] = hex;
        }
      });
    }
    /**
     * Iterate over all images in the current selected element and extract colors from them.
     *
     * @returns {void}
     */

  }, {
    key: "extractColorsFromImages",
    value: function extractColorsFromImages() {
      var _this6 = this;

      // Iterate over all images in the widget.
      var images = this.backgroundImages;
      images.forEach(function (img, i) {
        _this6.extractColorsFromImage(img, i);
      });
      this.backgroundImages = [];
    }
    /**
     * Add the color swatches to a picker container.
     *
     * @param {HTMLElement} picker - Picker HTML element to append the swatches to.
     *
     * @returns {void}
     */

  }, {
    key: "addColorSwatches",
    value: function addColorSwatches(picker) {
      var _this7 = this;

      (0, _entries.default)(this.colors).map(function (_ref2) {
        var _ref3 = (0, _slicedToArray2.default)(_ref2, 2),
            control = _ref3[0],
            value = _ref3[1];

        var swatch = document.createElement('div');
        swatch.classList.add(_this7.classes.swatch);
        swatch.style = "--color: ".concat(value);
        swatch.dataset.text = value.replace('#', '');
        swatch.addEventListener('mouseenter', function () {
          $e.run('elements-color-picker/enter-preview', {
            value: value
          });
        });
        swatch.addEventListener('mouseleave', function () {
          $e.run('elements-color-picker/exit-preview');
        });
        swatch.addEventListener('click', function (e) {
          $e.run('elements-color-picker/apply', {
            value: value,
            trigger: {
              palette: picker,
              swatch: e.target
            }
          });
          e.stopPropagation();
        });
        picker.append(swatch);
      });
    }
    /**
     * Add a tooltip to a picker container.
     *
     * @param {HTMLElement} picker - Picker HTML element to add the tooltip to.
     *
     * @returns {void}
     */

  }, {
    key: "addTooltip",
    value: function addTooltip(picker) {
      jQuery(picker).tipsy({
        gravity: 's',
        className: this.classes.tooltip,
        trigger: 'manual',
        title: function title() {
          return __('Select a color from any image, or from an element whose color you\'ve manually defined.', 'elementor');
        }
      }).tipsy('show'); // Hack to move Tipsy to the preview wrapper because it defaults to the editor's `document.body`.
      // TODO: Use something other than Tipsy.

      var tooltip = document.querySelector(this.selectors.tooltip);
      elementor.$previewWrapper[0].appendChild(tooltip); // Hack to prevent hover on tooltip triggering a `mouseleave` event on the preview wrapper.

      tooltip.style.pointerEvents = 'none';
    }
    /**
     * Remove a tooltip from a picker container.
     *
     * @param {HTMLElement} picker - Picker HTML element to remove the tooltip from.
     *
     * @returns {void}
     */

  }, {
    key: "removeTooltip",
    value: function removeTooltip(picker) {
      jQuery(picker).tipsy('hide');
    }
    /**
     * Initialize the swatch with the color palette, using x & y positions, relative to the parent.
     *
     * @param {int} x
     * @param {int} y
     *
     * @returns {void}
     */

  }, {
    key: "initSwatch",
    value: function initSwatch() {
      var _this8 = this;

      var x = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
      var y = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
      var count = (0, _entries.default)(this.colors).length;
      var picker = document.createElement('div');
      picker.dataset.count = count;
      picker.classList.add(this.classes.picker, this.classes.hidden);
      picker.style = "\n\t\t\t--count: ".concat(count, ";\n\t\t\t--left: ").concat(x, ";\n\t\t\t--top: ").concat(y, ";\n\t\t"); // Append the swatch before adding colors to it in order to avoid the click event of the swatches,
      // which will fire the `apply` command and will close everything.

      this.container.view.$el[0].append(picker); // Check if the picker is overflowing out of the parent.

      var observer = elementorModules.utils.Scroll.scrollObserver({
        callback: function callback(event) {
          observer.unobserve(picker);

          if (!event.isInViewport) {
            picker.style.setProperty('--left', 'unset');
            picker.style.setProperty('--right', '0');
          }

          picker.classList.remove(_this8.classes.hidden);
        },
        root: this.container.view.$el[0],
        offset: "0px -".concat((0, _parseInt2.default)(picker.getBoundingClientRect().width), "px 0px")
      });
      observer.observe(picker);

      if (0 === count) {
        // Show a Tipsy tooltip.
        this.addTooltip(picker);
      } else {
        // Add the colors swatches.
        this.addColorSwatches(picker);
      } // Remove the picker on mouse leave.


      this.container.view.$el[0].addEventListener('mouseleave', function () {
        _this8.removeTooltip(picker); // Remove only after the animation has finished.


        setTimeout(function () {
          picker.remove();
        }, 300);
      }, {
        once: true
      });
    }
    /**
     * Check if the palette reached its colors limit.
     *
     * @returns {boolean}
     */

  }, {
    key: "reachedColorsLimit",
    value: function reachedColorsLimit() {
      var COLORS_LIMIT = 5;
      return COLORS_LIMIT <= (0, _keys.default)(this.colors).length;
    }
  }]);
  return ShowSwatches;
}(_commandBase.default);

exports.ShowSwatches = ShowSwatches;

/***/ }),

/***/ "../modules/elements-color-picker/assets/js/editor/commands/start.js":
/*!***************************************************************************!*\
  !*** ../modules/elements-color-picker/assets/js/editor/commands/start.js ***!
  \***************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.Start = void 0;

var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var _utils = __webpack_require__(/*! elementor/modules/elements-color-picker/assets/js/editor/utils */ "../modules/elements-color-picker/assets/js/editor/utils.js");

/**
 * Start the color picking process.
 */
var Start = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Start, _CommandBase);

  var _super = (0, _createSuper2.default)(Start);

  function Start() {
    (0, _classCallCheck2.default)(this, Start);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Start, [{
    key: "apply",
    value: function apply(args) {
      // Activate the component since the default behavior will activate it only on route change,
      // but this component doesn't have any routes.
      this.component.activate(); // Prevent elements from triggering edit mode on click.

      elementor.changeEditMode('picker');
      elementor.$previewContents[0].querySelector('body').classList.add('elementor-editor__ui-state__color-picker', 'elementor-edit-area-active');
      this.component.currentPicker = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, args), {}, {
        initialColor: args.container.getSetting(args.control)
      }); // Set the picking process trigger to active mode.

      this.component.currentPicker.trigger.classList.add('e-control-tool-disabled'); // Initialize a swatch on click.

      var elementorElements = elementor.$previewContents[0].querySelectorAll('.elementor-element');
      (0, _utils.addNamespaceHandler)(elementorElements, 'click.color-picker', function (e) {
        e.preventDefault();
        $e.run('elements-color-picker/show-swatches', {
          event: e
        });
      }); // Stop the picking process when the user leaves the preview area.

      (0, _utils.addNamespaceHandler)(elementor.$previewWrapper[0], 'mouseleave.color-picker', function () {
        $e.run('elements-color-picker/end');
      });
    }
  }]);
  return Start;
}(_commandBase.default);

exports.Start = Start;

/***/ }),

/***/ "../modules/elements-color-picker/assets/js/editor/component.js":
/*!**********************************************************************!*\
  !*** ../modules/elements-color-picker/assets/js/editor/component.js ***!
  \**********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _componentBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-base */ "../core/common/assets/js/api/modules/component-base.js"));

var commands = _interopRequireWildcard(__webpack_require__(/*! ./commands/ */ "../modules/elements-color-picker/assets/js/editor/commands/index.js"));

var Component = /*#__PURE__*/function (_ComponentBase) {
  (0, _inherits2.default)(Component, _ComponentBase);

  var _super = (0, _createSuper2.default)(Component);

  function Component() {
    var _this;

    (0, _classCallCheck2.default)(this, Component);

    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }

    _this = _super.call.apply(_super, [this].concat(args));
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "currentPicker", _this.getDefaultPicker());
    return _this;
  }

  (0, _createClass2.default)(Component, [{
    key: "getDefaultPicker",
    value:
    /**
     * Get the default picker object.
     *
     * @returns {object}
     */
    function getDefaultPicker() {
      return {
        kit: null,
        container: null,
        control: null,
        trigger: null,
        initialColor: null
      };
    }
    /**
     * Reset the current picker to its default.
     *
     * @returns {void}
     */

  }, {
    key: "resetPicker",
    value: function resetPicker() {
      this.currentPicker = this.getDefaultPicker();
    }
    /**
     * Silently render the UI using a new color value.
     *
     * @param {string} value - The new color to set.
     *
     * @returns {void}
     */

  }, {
    key: "renderUI",
    value: function renderUI(value) {
      var _this$currentPicker = this.currentPicker,
          container = _this$currentPicker.container,
          control = _this$currentPicker.control,
          kit = _this$currentPicker.kit; // Silent.

      container.settings.set(control, value);
      var view = container.view; // If the container has a View that can be rendered.

      if (view !== null && view !== void 0 && view.renderUI) {
        view.renderUI();
      } // If it's a kit which uses CSS variables.


      if (kit) {
        var id = kit.config.id,
            cssVar = "--e-global-color-".concat(container.id);
        elementor.$previewContents[0].querySelector(".elementor-kit-".concat(id)).style.setProperty(cssVar, value);
      }
    }
    /**
     * Retrieve the Eye-Dropper namespace.
     *
     * @returns {string}
     */

  }, {
    key: "getNamespace",
    value: function getNamespace() {
      return 'elements-color-picker';
    }
    /**
     * Import the component commands.
     *
     * @returns {object}
     */

  }, {
    key: "defaultCommands",
    value: function defaultCommands() {
      return this.importCommands(commands);
    }
    /**
     * Set the commands keyboard shortcuts.
     *
     * @returns {object}
     */

  }, {
    key: "defaultShortcuts",
    value: function defaultShortcuts() {
      return {
        end: {
          keys: 'esc',
          scopes: [this.getNamespace()]
        }
      };
    }
  }]);
  return Component;
}(_componentBase.default);

exports.default = Component;

/***/ }),

/***/ "../modules/elements-color-picker/assets/js/editor/module.js":
/*!*******************************************************************!*\
  !*** ../modules/elements-color-picker/assets/js/editor/module.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _component = _interopRequireDefault(__webpack_require__(/*! ./component */ "../modules/elements-color-picker/assets/js/editor/component.js"));

var ElementsColorPicker = /*#__PURE__*/function (_elementorModules$Vie) {
  (0, _inherits2.default)(ElementsColorPicker, _elementorModules$Vie);

  var _super = (0, _createSuper2.default)(ElementsColorPicker);

  function ElementsColorPicker() {
    (0, _classCallCheck2.default)(this, ElementsColorPicker);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(ElementsColorPicker, [{
    key: "onInit",
    value:
    /**
     * Initialize the Eye-Dropper module.
     *
     * @returns {void}
     */
    function onInit() {
      (0, _get2.default)((0, _getPrototypeOf2.default)(ElementsColorPicker.prototype), "onInit", this).call(this);
      $e.components.register(new _component.default());
    }
  }]);
  return ElementsColorPicker;
}(elementorModules.ViewModule);

exports.default = ElementsColorPicker;

/***/ }),

/***/ "../modules/elements-color-picker/assets/js/editor/utils.js":
/*!******************************************************************!*\
  !*** ../modules/elements-color-picker/assets/js/editor/utils.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.removeNamespaceHandler = exports.addNamespaceHandler = void 0;

var _isIterable2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/is-iterable */ "../node_modules/@babel/runtime-corejs2/core-js/is-iterable.js"));

__webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

/**
 * Add custom namespaced event using ES6. Equivalent to jQuery's `.on()`.
 * NOTE: Might cause memory leaks if the element is removed from then DOM without removing its `nsEvents`.
 *
 * @param {HTMLElement|NodeList} elements - An HTML element to attach the event to.
 * @param {string} nsEvent - Namespaced event name, e.g. `click.color-picker`.
 * @param {function} callback - Callback handler to the attached event.
 * @param {object} options - Additional event options.
 *
 * @returns {void}
 */
var addNamespaceHandler = function addNamespaceHandler(elements, nsEvent, callback) {
  var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};

  var _nsEvent$split = nsEvent.split('.'),
      _nsEvent$split2 = (0, _slicedToArray2.default)(_nsEvent$split, 1),
      event = _nsEvent$split2[0]; // Add support for multi elements.


  if (!(0, _isIterable2.default)(Object(elements))) {
    elements = [elements];
  }

  elements.forEach(function (element) {
    if (!element.nsEvents) {
      element.nsEvents = {};
    }

    element.addEventListener(event, callback, options);
    element.nsEvents[nsEvent] = callback;
  });
};
/**
 * Remove custom namespaced event using ES6. Equivalent to jQuery's `.off()`.
 *
 * @param {NodeList} elements - An HTML element to remove the event from.
 * @param {string} nsEvent - Namespaced event name, e.g. `click.color-picker`.
 *
 * @returns {void}
 */


exports.addNamespaceHandler = addNamespaceHandler;

var removeNamespaceHandler = function removeNamespaceHandler(elements, nsEvent) {
  var _nsEvent$split3 = nsEvent.split('.'),
      _nsEvent$split4 = (0, _slicedToArray2.default)(_nsEvent$split3, 1),
      event = _nsEvent$split4[0]; // Add support for multi elements.


  if (!(0, _isIterable2.default)(Object(elements))) {
    elements = [elements];
  }

  elements.forEach(function (element) {
    var _element$nsEvents, _element$nsEvents2;

    element.removeEventListener(event, (_element$nsEvents = element.nsEvents) === null || _element$nsEvents === void 0 ? void 0 : _element$nsEvents[nsEvent]);
    (_element$nsEvents2 = element.nsEvents) === null || _element$nsEvents2 === void 0 ? true : delete _element$nsEvents2[nsEvent];
  });
};

exports.removeNamespaceHandler = removeNamespaceHandler;

/***/ }),

/***/ "../modules/history/assets/js/component.js":
/*!*************************************************!*\
  !*** ../modules/history/assets/js/component.js ***!
  \*************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _componentBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-base */ "../core/common/assets/js/api/modules/component-base.js"));

var Component = /*#__PURE__*/function (_ComponentBase) {
  (0, _inherits2.default)(Component, _ComponentBase);

  var _super = (0, _createSuper2.default)(Component);

  function Component() {
    (0, _classCallCheck2.default)(this, Component);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Component, [{
    key: "getNamespace",
    value: function getNamespace() {
      return 'panel/history';
    }
  }, {
    key: "defaultTabs",
    value: function defaultTabs() {
      return {
        actions: {
          title: __('Actions', 'elementor')
        },
        revisions: {
          title: __('Revisions', 'elementor')
        }
      };
    }
  }, {
    key: "defaultShortcuts",
    value: function defaultShortcuts() {
      return {
        actions: {
          keys: 'ctrl+shift+h'
        }
      };
    }
  }, {
    key: "renderTab",
    value: function renderTab(tab) {
      elementor.getPanelView().setPage('historyPage').showView(tab);
    }
  }, {
    key: "activate",
    value: function activate() {
      // Activate the tab component itself.
      $e.components.activate(this.getTabRoute(this.currentTab));
    }
  }, {
    key: "getTabsWrapperSelector",
    value: function getTabsWrapperSelector() {
      return '#elementor-panel-elements-navigation';
    }
  }]);
  return Component;
}(_componentBase.default);

exports.default = Component;

/***/ }),

/***/ "../modules/history/assets/js/history/component.js":
/*!*********************************************************!*\
  !*** ../modules/history/assets/js/history/component.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _componentBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-base */ "../core/common/assets/js/api/modules/component-base.js"));

var commands = _interopRequireWildcard(__webpack_require__(/*! elementor-document/history/commands/ */ "../assets/dev/js/editor/document/history/commands/index.js"));

var Component = /*#__PURE__*/function (_ComponentBase) {
  (0, _inherits2.default)(Component, _ComponentBase);

  var _super = (0, _createSuper2.default)(Component);

  function Component() {
    (0, _classCallCheck2.default)(this, Component);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Component, [{
    key: "getNamespace",
    value: function getNamespace() {
      return 'panel/history/actions';
    }
  }, {
    key: "defaultCommands",
    value: function defaultCommands() {
      return this.importCommands(commands);
    }
  }, {
    key: "defaultShortcuts",
    value: function defaultShortcuts() {
      return {
        undo: {
          keys: 'ctrl+z',
          exclude: ['input'],
          scopes: ['panel', 'navigator']
        },
        redo: {
          keys: 'ctrl+shift+z, ctrl+y',
          exclude: ['input'],
          scopes: ['panel', 'navigator']
        }
      };
    }
  }]);
  return Component;
}(_componentBase.default);

exports.default = Component;

/***/ }),

/***/ "../modules/history/assets/js/history/empty.js":
/*!*****************************************************!*\
  !*** ../modules/history/assets/js/history/empty.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _default = /*#__PURE__*/function (_Marionette$ItemView) {
  (0, _inherits2.default)(_default, _Marionette$ItemView);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "getTemplate",
    value: function getTemplate() {
      return '#tmpl-elementor-panel-history-no-items';
    }
  }, {
    key: "id",
    value: function id() {
      return 'elementor-panel-history-no-items';
    }
  }, {
    key: "onDestroy",
    value: function onDestroy() {
      this._parent.$el.removeClass('elementor-empty');
    }
  }]);
  return _default;
}(Marionette.ItemView);

exports.default = _default;

/***/ }),

/***/ "../modules/history/assets/js/history/item-model.js":
/*!**********************************************************!*\
  !*** ../modules/history/assets/js/history/item-model.js ***!
  \**********************************************************/
/***/ ((module) => {

"use strict";


module.exports = Backbone.Model.extend({
  defaults: {
    id: 0,
    type: '',
    status: 'not_applied',
    title: '',
    subTitle: '',
    action: '',
    history: {}
  },
  initialize: function initialize() {
    this.set('items', new Backbone.Collection());
  }
});

/***/ }),

/***/ "../modules/history/assets/js/history/item-view.js":
/*!*********************************************************!*\
  !*** ../modules/history/assets/js/history/item-view.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _default = /*#__PURE__*/function (_Marionette$ItemView) {
  (0, _inherits2.default)(_default, _Marionette$ItemView);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "getTemplate",
    value: function getTemplate() {
      return '#tmpl-elementor-panel-history-item';
    }
  }, {
    key: "className",
    value: function className() {
      return 'elementor-history-item elementor-history-item-' + this.model.get('status');
    }
  }, {
    key: "triggers",
    value: function triggers() {
      return {
        click: 'click'
      };
    }
  }]);
  return _default;
}(Marionette.ItemView);

exports.default = _default;

/***/ }),

/***/ "../modules/history/assets/js/history/manager.js":
/*!*******************************************************!*\
  !*** ../modules/history/assets/js/history/manager.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _isArray = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js"));

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _itemModel = _interopRequireDefault(__webpack_require__(/*! ./item-model */ "../modules/history/assets/js/history/item-model.js"));

/**
 * TODO: consider refactor this class.
 * TODO: should be `Document/History` component.
 * TODO: should be attached to elementor.history.history + BC.
 */
var HistoryManager = /*#__PURE__*/function () {
  function HistoryManager(document) {
    (0, _classCallCheck2.default)(this, HistoryManager);
    (0, _defineProperty2.default)(this, "currentItemID", null);
    (0, _defineProperty2.default)(this, "items", new Backbone.Collection([], {
      model: _itemModel.default
    }));
    (0, _defineProperty2.default)(this, "active", true);
    (0, _defineProperty2.default)(this, "translations", {
      add: __('Added', 'elementor'),
      change: __('Edited', 'elementor'),
      disable: __('Disabled', 'elementor'),
      duplicate: __('Duplicate', 'elementor'),
      enable: __('Enabled', 'elementor'),
      move: __('Moved', 'elementor'),
      paste: __('Pasted', 'elementor'),
      paste_style: __('Style Pasted', 'elementor'),
      remove: __('Removed', 'elementor'),
      reset_style: __('Style Reset', 'elementor'),
      reset_settings: __('Settings Reset', 'elementor')
    });
    this.document = document;
    this.currentItem = new Backbone.Model({
      id: 0
    });
  }

  (0, _createClass2.default)(HistoryManager, [{
    key: "getActionLabel",
    value: function getActionLabel(itemData) {
      // TODO: this function should be static.
      if (this.translations[itemData.type]) {
        return this.translations[itemData.type];
      }

      return itemData.type;
    }
  }, {
    key: "navigate",
    value: function navigate(isRedo) {
      var currentItem = this.items.find(function (model) {
        return 'not_applied' === model.get('status');
      }),
          currentItemIndex = this.items.indexOf(currentItem),
          requiredIndex = isRedo ? currentItemIndex - 1 : currentItemIndex + 1;

      if (!isRedo && !currentItem || requiredIndex < 0 || requiredIndex >= this.items.length) {
        return;
      }

      this.doItem(requiredIndex);
    }
  }, {
    key: "setActive",
    value: function setActive(value) {
      this.active = value;
    }
  }, {
    key: "getActive",
    value: function getActive(value) {
      return this.active;
    }
  }, {
    key: "getItems",
    value: function getItems() {
      return this.items;
    }
  }, {
    key: "startItem",
    value: function startItem(itemData) {
      this.currentItemID = this.addItem(itemData);
      return this.currentItemID;
    }
  }, {
    key: "endItem",
    value: function endItem(id) {
      if (this.currentItemID !== id) {
        return;
      }

      this.currentItemID = null;
    }
  }, {
    key: "deleteItem",
    value: function deleteItem(id) {
      var item = this.items.findWhere({
        id: id
      });
      this.items.remove(item);
      this.currentItemID = null;
    }
  }, {
    key: "isItemStarted",
    value: function isItemStarted() {
      return null !== this.currentItemID;
    }
  }, {
    key: "getCurrentId",
    value: function getCurrentId() {
      return this.currentItemID;
    }
  }, {
    key: "addItem",
    value: function addItem(itemData) {
      if (!this.getActive()) {
        return;
      }

      if (!this.items.length) {
        this.items.add({
          status: 'not_applied',
          title: __('Editing Started', 'elementor'),
          subTitle: '',
          action: '',
          editing_started: true
        });
      } // Remove old applied items from top of list


      while (this.items.length && 'applied' === this.items.first().get('status')) {
        this.items.shift();
      }

      var id = this.currentItemID ? this.currentItemID : new Date().getTime();
      var currentItem = this.items.findWhere({
        id: id
      });

      if (!currentItem) {
        currentItem = new _itemModel.default({
          id: id,
          title: itemData.title,
          subTitle: itemData.subTitle,
          action: this.getActionLabel(itemData),
          type: itemData.type
        });
        this.startItemTitle = '';
        this.startItemAction = '';
      }

      currentItem.get('items').add(itemData, {
        at: 0
      });
      this.items.add(currentItem, {
        at: 0
      });
      this.updateCurrentItem(currentItem);
      return id;
    }
  }, {
    key: "doItem",
    value: function doItem(index) {
      // Don't track while restoring the item
      this.setActive(false);
      var item = this.items.at(index);

      if ('not_applied' === item.get('status')) {
        this.undoItem(index);
      } else {
        this.redoItem(index);
      }

      this.setActive(true);
      var panel = elementor.getPanelView(),
          panelPage = panel.getCurrentPageView(),
          editedElementView = panelPage.getOption('editedElementView');
      var viewToScroll;

      if ($e.routes.isPartOf('panel/editor') && editedElementView) {
        if (editedElementView.isDestroyed) {
          // If the the element isn't exist - show the history panel
          $e.route('panel/history/actions');
        } else {
          // If element exist - render again, maybe the settings has been changed
          viewToScroll = editedElementView;
        }
      } else if (item instanceof Backbone.Model && item.get('items').length) {
        var historyItem = item.get('items').first();

        if (historyItem.get('restore')) {
          var container = 'sub-add' === historyItem.get('type') ? historyItem.get('data').containerToRestore : historyItem.get('container') || historyItem.get('containers');

          if ((0, _isArray.default)(container)) {
            container = container[0];
          }

          if (container) {
            viewToScroll = container.lookup().view;
          }
        }
      }

      $e.internal('document/save/set-is-modified', {
        status: item.get('id') !== this.document.editor.lastSaveHistoryId
      });
      this.updateCurrentItem(item);

      if (viewToScroll && !elementor.helpers.isInViewport(viewToScroll.$el[0], elementor.$previewContents.find('html')[0])) {
        elementor.helpers.scrollToView(viewToScroll.$el);
      }
    }
  }, {
    key: "undoItem",
    value: function undoItem(index) {
      for (var stepNum = 0; stepNum < index; stepNum++) {
        var item = this.items.at(stepNum);

        if ('not_applied' === item.get('status')) {
          item.get('items').each(function (subItem) {
            var restore = subItem.get('restore');

            if (restore) {
              restore(subItem);
            }
          });
          item.set('status', 'applied');
        }
      }
    }
  }, {
    key: "redoItem",
    value: function redoItem(index) {
      for (var stepNum = this.items.length - 1; stepNum >= index; stepNum--) {
        var item = this.items.at(stepNum);

        if ('applied' === item.get('status')) {
          var reversedSubItems = _.toArray(item.get('items').models).reverse();

          _(reversedSubItems).each(function (subItem) {
            var restore = subItem.get('restore');

            if (restore) {
              restore(subItem, true);
            }
          });

          item.set('status', 'not_applied');
        }
      }
    }
  }, {
    key: "updateCurrentItem",
    value: function updateCurrentItem(item) {
      // Save last selected item.
      this.currentItem = item;
      this.updatePanelPageCurrentItem();
    }
  }, {
    key: "updatePanelPageCurrentItem",
    value: function updatePanelPageCurrentItem() {
      if ($e.routes.is('panel/history/actions')) {
        elementor.getPanelView().getCurrentPageView().getCurrentTab().updateCurrentItem();
      }
    }
  }]);
  return HistoryManager;
}();

exports.default = HistoryManager;

/***/ }),

/***/ "../modules/history/assets/js/history/panel-tab.js":
/*!*********************************************************!*\
  !*** ../modules/history/assets/js/history/panel-tab.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

__webpack_require__(/*! core-js/modules/es6.array.find-index.js */ "../node_modules/core-js/modules/es6.array.find-index.js");

var _itemView = _interopRequireDefault(__webpack_require__(/*! ./item-view */ "../modules/history/assets/js/history/item-view.js"));

var _empty = _interopRequireDefault(__webpack_require__(/*! ./empty */ "../modules/history/assets/js/history/empty.js"));

module.exports = Marionette.CompositeView.extend({
  id: 'elementor-panel-history',
  template: '#tmpl-elementor-panel-history-tab',
  childView: _itemView.default,
  childViewContainer: '#elementor-history-list',
  emptyView: _empty.default,
  currentItem: null,
  updateCurrentItem: function updateCurrentItem() {
    var _this = this;

    if (this.children.length <= 1) {
      return;
    }

    _.defer(function () {
      // Set current item - the first not applied item
      var currentItem = _this.collection.find(function (model) {
        return 'not_applied' === model.get('status');
      }),
          currentView = _this.children.findByModel(currentItem);

      if (!currentView) {
        return;
      }

      var currentItemClass = 'elementor-history-item-current';

      if (_this.currentItem) {
        _this.currentItem.removeClass(currentItemClass);
      }

      _this.currentItem = currentView.$el;

      _this.currentItem.addClass(currentItemClass);
    });
  },
  onRender: function onRender() {
    this.updateCurrentItem();
  },
  onRenderEmpty: function onRenderEmpty() {
    this.$el.addClass('elementor-empty');
  },
  onChildviewClick: function onChildviewClick(childView, event) {
    if (childView.$el === this.currentItem) {
      return;
    }

    var collection = event.model.collection,
        index = collection.findIndex(event.model);
    $e.run('panel/history/actions/do', {
      index: index
    });
  }
});

/***/ }),

/***/ "../modules/history/assets/js/module.js":
/*!**********************************************!*\
  !*** ../modules/history/assets/js/module.js ***!
  \**********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _component = _interopRequireDefault(__webpack_require__(/*! ./component */ "../modules/history/assets/js/component.js"));

var _component2 = _interopRequireDefault(__webpack_require__(/*! ./history/component */ "../modules/history/assets/js/history/component.js"));

var _component3 = _interopRequireDefault(__webpack_require__(/*! ./revisions/component */ "../modules/history/assets/js/revisions/component.js"));

var _panelPage = _interopRequireDefault(__webpack_require__(/*! ./panel-page */ "../modules/history/assets/js/panel-page.js"));

var Manager = /*#__PURE__*/function () {
  function Manager() {
    (0, _classCallCheck2.default)(this, Manager);
    elementorCommon.elements.$window.on('elementor:loaded', this.init);
  }

  (0, _createClass2.default)(Manager, [{
    key: "init",
    value: function init() {
      $e.components.register(new _component.default());
      $e.components.register(new _component2.default());
      $e.components.register(new _component3.default());
      elementor.on('panel:init', function () {
        elementor.getPanelView().addPage('historyPage', {
          view: _panelPage.default,
          title: __('History', 'elementor')
        });
      });
    }
  }, {
    key: "history",
    get: function get() {
      elementorCommon.helpers.softDeprecated('elementor.history.history', '2.9.0', 'elementor.documents.getCurrent().history');
      return elementor.documents.getCurrent().history;
    }
  }, {
    key: "revisions",
    get: function get() {
      elementorCommon.helpers.softDeprecated('elementor.history.revisions', '2.9.0', 'elementor.documents.getCurrent().revisions');
      return elementor.documents.getCurrent().revisions;
    }
  }]);
  return Manager;
}();

exports.default = Manager;

/***/ }),

/***/ "../modules/history/assets/js/panel-page.js":
/*!**************************************************!*\
  !*** ../modules/history/assets/js/panel-page.js ***!
  \**************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _loading = _interopRequireDefault(__webpack_require__(/*! ./revisions/panel/loading */ "../modules/history/assets/js/revisions/panel/loading.js"));

var _tab = _interopRequireDefault(__webpack_require__(/*! ./revisions/panel/tab */ "../modules/history/assets/js/revisions/panel/tab.js"));

var _empty = _interopRequireDefault(__webpack_require__(/*! ./revisions/panel/empty */ "../modules/history/assets/js/revisions/panel/empty.js"));

var TabHistoryView = __webpack_require__(/*! ./history/panel-tab */ "../modules/history/assets/js/history/panel-tab.js");

module.exports = Marionette.LayoutView.extend({
  template: '#tmpl-elementor-panel-history-page',
  regions: {
    content: '#elementor-panel-history-content'
  },
  ui: {
    tabs: '.elementor-panel-navigation-tab'
  },
  regionViews: {},
  currentTab: null,

  /**
   * @type {Document}
   */
  document: null,
  initialize: function initialize(options) {
    this.document = options.document || elementor.documents.getCurrent();
    this.initRegionViews();
  },
  initRegionViews: function initRegionViews() {
    var _this = this;

    var historyItems = this.document.history.getItems();
    this.regionViews = {
      actions: {
        view: function view() {
          return TabHistoryView;
        },
        options: {
          collection: historyItems,
          history: this.document.history
        }
      },
      revisions: {
        view: function view() {
          var revisionsItems = _this.document.revisions.getItems();

          if (!revisionsItems) {
            return _loading.default;
          }

          if (1 === revisionsItems.length && 'current' === revisionsItems.models[0].get('type')) {
            return _empty.default;
          }

          return _tab.default;
        },
        options: {
          document: this.document
        }
      }
    };
  },
  getCurrentTab: function getCurrentTab() {
    return this.currentTab;
  },
  showView: function showView(viewName) {
    var viewDetails = this.regionViews[viewName],
        options = viewDetails.options || {},
        View = viewDetails.view();

    if (this.currentTab && this.currentTab.constructor === View) {
      return;
    }

    this.currentTab = new View(options);
    this.content.show(this.currentTab);
  }
});

/***/ }),

/***/ "../modules/history/assets/js/revisions/collection.js":
/*!************************************************************!*\
  !*** ../modules/history/assets/js/revisions/collection.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var RevisionModel = __webpack_require__(/*! ./model */ "../modules/history/assets/js/revisions/model.js");

module.exports = Backbone.Collection.extend({
  model: RevisionModel,
  comparator: function comparator(model) {
    return -model.get('timestamp');
  }
});

/***/ }),

/***/ "../modules/history/assets/js/revisions/commands/down.js":
/*!***************************************************************!*\
  !*** ../modules/history/assets/js/revisions/commands/down.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Down = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Down = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Down, _CommandBase);

  var _super = (0, _createSuper2.default)(Down);

  function Down() {
    (0, _classCallCheck2.default)(this, Down);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Down, [{
    key: "apply",
    value: function apply() {
      this.component.navigate();
    }
  }]);
  return Down;
}(_commandBase.default);

exports.Down = Down;
var _default = Down;
exports.default = _default;

/***/ }),

/***/ "../modules/history/assets/js/revisions/commands/index.js":
/*!****************************************************************!*\
  !*** ../modules/history/assets/js/revisions/commands/index.js ***!
  \****************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "Down", {
  enumerable: true,
  get: function get() {
    return _down.Down;
  }
});

_Object$defineProperty(exports, "Up", {
  enumerable: true,
  get: function get() {
    return _up.Up;
  }
});

var _down = __webpack_require__(/*! ./down */ "../modules/history/assets/js/revisions/commands/down.js");

var _up = __webpack_require__(/*! ./up */ "../modules/history/assets/js/revisions/commands/up.js");

/***/ }),

/***/ "../modules/history/assets/js/revisions/commands/up.js":
/*!*************************************************************!*\
  !*** ../modules/history/assets/js/revisions/commands/up.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Up = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Up = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Up, _CommandBase);

  var _super = (0, _createSuper2.default)(Up);

  function Up() {
    (0, _classCallCheck2.default)(this, Up);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Up, [{
    key: "apply",
    value: function apply() {
      this.component.navigate(true);
    }
  }]);
  return Up;
}(_commandBase.default);

exports.Up = Up;
var _default = Up;
exports.default = _default;

/***/ }),

/***/ "../modules/history/assets/js/revisions/component.js":
/*!***********************************************************!*\
  !*** ../modules/history/assets/js/revisions/component.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _componentBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-base */ "../core/common/assets/js/api/modules/component-base.js"));

var commands = _interopRequireWildcard(__webpack_require__(/*! ./commands/ */ "../modules/history/assets/js/revisions/commands/index.js"));

var hooks = _interopRequireWildcard(__webpack_require__(/*! ./hooks/ */ "../modules/history/assets/js/revisions/hooks/index.js"));

var Component = /*#__PURE__*/function (_ComponentBase) {
  (0, _inherits2.default)(Component, _ComponentBase);

  var _super = (0, _createSuper2.default)(Component);

  function Component() {
    (0, _classCallCheck2.default)(this, Component);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Component, [{
    key: "getNamespace",
    value: function getNamespace() {
      return 'panel/history/revisions';
    }
  }, {
    key: "defaultCommands",
    value: function defaultCommands() {
      return this.importCommands(commands);
    }
  }, {
    key: "defaultHooks",
    value: function defaultHooks() {
      return this.importHooks(hooks);
    }
  }, {
    key: "defaultShortcuts",
    value: function defaultShortcuts() {
      return {
        up: {
          keys: 'up',
          scopes: [this.getNamespace()]
        },
        down: {
          keys: 'down',
          scopes: [this.getNamespace()]
        }
      };
    }
  }, {
    key: "navigate",
    value: function navigate(up) {
      if (elementor.documents.getCurrent().revisions.getItems().length > 1) {
        elementor.getPanelView().getCurrentPageView().currentTab.navigate(up);
      }
    }
  }]);
  return Component;
}(_componentBase.default);

exports.default = Component;

/***/ }),

/***/ "../modules/history/assets/js/revisions/hooks/data/save.js":
/*!*****************************************************************!*\
  !*** ../modules/history/assets/js/revisions/hooks/data/save.js ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.RevisionsAfterSave = void 0;

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _after = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/hooks/data/after */ "../core/common/assets/js/api/modules/hooks/data/after.js"));

var RevisionsAfterSave = /*#__PURE__*/function (_HookDataAfter) {
  (0, _inherits2.default)(RevisionsAfterSave, _HookDataAfter);

  var _super = (0, _createSuper2.default)(RevisionsAfterSave);

  function RevisionsAfterSave() {
    (0, _classCallCheck2.default)(this, RevisionsAfterSave);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(RevisionsAfterSave, [{
    key: "getCommand",
    value: function getCommand() {
      return 'document/save/save';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'revisions-after-save';
    }
  }, {
    key: "apply",
    value: function apply(args, result) {
      var data = result.data,
          revisionsModule = elementor.documents.getCurrent().revisions;

      if (data.latest_revisions) {
        revisionsModule.addRevisions(data.latest_revisions);
      }

      revisionsModule.requestRevisions(function () {
        if (data.revisions_ids) {
          var revisionsToKeep = revisionsModule.revisions.filter(function (revision) {
            return -1 !== data.revisions_ids.indexOf(revision.get('id'));
          });
          revisionsModule.revisions.reset(revisionsToKeep);
        }
      });
    }
  }]);
  return RevisionsAfterSave;
}(_after.default);

exports.RevisionsAfterSave = RevisionsAfterSave;
var _default = RevisionsAfterSave;
exports.default = _default;

/***/ }),

/***/ "../modules/history/assets/js/revisions/hooks/index.js":
/*!*************************************************************!*\
  !*** ../modules/history/assets/js/revisions/hooks/index.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "RevisionsAfterSave", {
  enumerable: true,
  get: function get() {
    return _save.RevisionsAfterSave;
  }
});

var _save = __webpack_require__(/*! ./data/save */ "../modules/history/assets/js/revisions/hooks/data/save.js");

/***/ }),

/***/ "../modules/history/assets/js/revisions/manager.js":
/*!*********************************************************!*\
  !*** ../modules/history/assets/js/revisions/manager.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var RevisionsCollection = __webpack_require__(/*! ./collection */ "../modules/history/assets/js/revisions/collection.js");
/**
 * TODO: consider refactor this class.
 * TODO: Rename to RevisionsModule.
 */


var RevisionsManager = /*#__PURE__*/function () {
  function RevisionsManager(document) {
    (0, _classCallCheck2.default)(this, RevisionsManager);
    (0, _defineProperty2.default)(this, "document", void 0);
    (0, _defineProperty2.default)(this, "revisions", void 0);
    this.document = document;
  }

  (0, _createClass2.default)(RevisionsManager, [{
    key: "getItems",
    value: function getItems() {
      return this.revisions;
    }
  }, {
    key: "requestRevisions",
    value: function requestRevisions(callback) {
      var _this = this;

      if (this.revisions) {
        callback(this.revisions);
        return;
      }

      elementorCommon.ajax.addRequest('get_revisions', {
        success: function success(data) {
          _this.revisions = new RevisionsCollection(data);

          _this.revisions.on('update', _this.onRevisionsUpdate.bind(_this));

          callback(_this.revisions);
        }
      });
    }
  }, {
    key: "setEditorData",
    value: function setEditorData(data) {
      var collection = elementor.getPreviewView().collection;
      collection.reset(data);
    }
  }, {
    key: "getRevisionDataAsync",
    value: function getRevisionDataAsync(id, options) {
      _.extend(options, {
        data: {
          id: id
        }
      });

      return elementorCommon.ajax.addRequest('get_revision_data', options);
    }
  }, {
    key: "addRevisions",
    value: function addRevisions(items) {
      var _this2 = this;

      this.requestRevisions(function () {
        items.forEach(function (item) {
          var existedModel = _this2.revisions.findWhere({
            id: item.id
          });

          if (existedModel) {
            _this2.revisions.remove(existedModel, {
              silent: true
            });
          }

          _this2.revisions.add(item, {
            silent: true
          });
        });

        _this2.revisions.trigger('update');
      });
    }
  }, {
    key: "deleteRevision",
    value: function deleteRevision(revisionModel, options) {
      var params = {
        data: {
          id: revisionModel.get('id')
        },
        success: function success() {
          if (options.success) {
            options.success();
          }

          revisionModel.destroy();
        }
      };

      if (options.error) {
        params.error = options.error;
      }

      elementorCommon.ajax.addRequest('delete_revision', params);
    }
  }, {
    key: "onRevisionsUpdate",
    value: function onRevisionsUpdate() {
      if ($e.routes.is('panel/history/revisions')) {
        $e.routes.refreshContainer('panel');
      }
    }
  }]);
  return RevisionsManager;
}();

exports.default = RevisionsManager;

/***/ }),

/***/ "../modules/history/assets/js/revisions/model.js":
/*!*******************************************************!*\
  !*** ../modules/history/assets/js/revisions/model.js ***!
  \*******************************************************/
/***/ ((module) => {

"use strict";


var RevisionModel;
RevisionModel = Backbone.Model.extend();

RevisionModel.prototype.sync = function () {
  return null;
};

module.exports = RevisionModel;

/***/ }),

/***/ "../modules/history/assets/js/revisions/panel/empty.js":
/*!*************************************************************!*\
  !*** ../modules/history/assets/js/revisions/panel/empty.js ***!
  \*************************************************************/
/***/ ((module) => {

"use strict";


module.exports = Marionette.ItemView.extend({
  template: '#tmpl-elementor-panel-revisions-no-revisions',
  id: 'elementor-panel-revisions-no-revisions',
  className: 'elementor-nerd-box'
});

/***/ }),

/***/ "../modules/history/assets/js/revisions/panel/loading.js":
/*!***************************************************************!*\
  !*** ../modules/history/assets/js/revisions/panel/loading.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _default = /*#__PURE__*/function (_Marionette$ItemView) {
  (0, _inherits2.default)(_default, _Marionette$ItemView);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "getTemplate",
    value: function getTemplate() {
      return '#tmpl-elementor-panel-revisions-loading';
    }
  }, {
    key: "id",
    value: function id() {
      return 'elementor-panel-revisions-loading';
    }
  }, {
    key: "onRender",
    value: function onRender() {
      this.options.document.revisions.requestRevisions(function () {
        setTimeout(function () {
          return $e.routes.refreshContainer('panel');
        });
      });
    }
  }]);
  return _default;
}(Marionette.ItemView);

exports.default = _default;

/***/ }),

/***/ "../modules/history/assets/js/revisions/panel/tab.js":
/*!***********************************************************!*\
  !*** ../modules/history/assets/js/revisions/panel/tab.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


module.exports = Marionette.CompositeView.extend({
  id: 'elementor-panel-revisions',
  template: '#tmpl-elementor-panel-revisions',
  childView: __webpack_require__(/*! ./view */ "../modules/history/assets/js/revisions/panel/view.js"),
  childViewContainer: '#elementor-revisions-list',
  ui: {
    discard: '.elementor-panel-scheme-discard .elementor-button',
    apply: '.elementor-panel-scheme-save .elementor-button'
  },
  events: {
    'click @ui.discard': 'onDiscardClick',
    'click @ui.apply': 'onApplyClick'
  },
  isRevisionApplied: false,
  currentPreviewId: null,
  currentPreviewItem: null,
  document: null,
  initialize: function initialize(options) {
    this.document = options.document;
    this.collection = this.document.revisions.getItems();
    this.listenTo(elementor.channels.editor, 'saved', this.onEditorSaved);
    this.currentPreviewId = elementor.config.document.revisions.current_id;
  },
  getRevisionViewData: function getRevisionViewData(revisionView) {
    var _this = this;

    this.document.revisions.getRevisionDataAsync(revisionView.model.get('id'), {
      success: function success(data) {
        if (_this.document.config.panel.has_elements) {
          _this.document.revisions.setEditorData(data.elements);
        }

        elementor.settings.page.model.set(data.settings);

        _this.setRevisionsButtonsActive(true);

        revisionView.$el.removeClass('elementor-revision-item-loading');

        _this.enterReviewMode();
      },
      error: function error(errorMessage) {
        revisionView.$el.removeClass('elementor-revision-item-loading');
        _this.currentPreviewItem = null;
        _this.currentPreviewId = null;
        alert(errorMessage);
      }
    });
  },
  setRevisionsButtonsActive: function setRevisionsButtonsActive(active) {
    // Check the tab is open.
    if (!this.isDestroyed) {
      this.ui.apply.add(this.ui.discard).prop('disabled', !active);
    }
  },
  deleteRevision: function deleteRevision(revisionView) {
    var _this2 = this;

    revisionView.$el.addClass('elementor-revision-item-loading');
    this.document.revisions.deleteRevision(revisionView.model, {
      success: function success() {
        if (revisionView.model.get('id') === _this2.currentPreviewId) {
          _this2.onDiscardClick();
        }

        _this2.currentPreviewId = null;
      },
      error: function error() {
        revisionView.$el.removeClass('elementor-revision-item-loading');
        alert('An error occurred');
      }
    });
  },
  enterReviewMode: function enterReviewMode() {
    elementor.changeEditMode('review');
  },
  exitReviewMode: function exitReviewMode() {
    elementor.changeEditMode('edit');
  },
  navigate: function navigate(reverse) {
    if (!this.currentPreviewId || !this.currentPreviewItem || this.children.length <= 1) {
      return;
    }

    var currentPreviewItemIndex = this.collection.indexOf(this.currentPreviewItem.model),
        requiredIndex = reverse ? currentPreviewItemIndex - 1 : currentPreviewItemIndex + 1;

    if (requiredIndex < 0) {
      requiredIndex = this.collection.length - 1;
    }

    if (requiredIndex >= this.collection.length) {
      requiredIndex = 0;
    }

    this.children.findByIndex(requiredIndex).ui.detailsArea.trigger('click');
  },
  onEditorSaved: function onEditorSaved() {
    this.exitReviewMode();
    this.setRevisionsButtonsActive(false);
    this.currentPreviewId = elementor.config.document.revisions.current_id;
  },
  onApplyClick: function onApplyClick() {
    $e.internal('document/save/set-is-modified', {
      status: true
    });
    $e.run('document/save/auto', {
      force: true
    });
    this.isRevisionApplied = true;
    this.currentPreviewId = null;
    this.document.history.getItems().reset();
  },
  onDiscardClick: function onDiscardClick() {
    if (this.document.config.panel.has_elements) {
      this.document.revisions.setEditorData(elementor.config.document.elements);
    }

    $e.internal('document/save/set-is-modified', {
      status: this.isRevisionApplied
    });
    this.isRevisionApplied = false;
    this.setRevisionsButtonsActive(false);
    this.currentPreviewId = null;
    this.exitReviewMode();

    if (this.currentPreviewItem) {
      this.currentPreviewItem.$el.removeClass('elementor-revision-current-preview');
    }
  },
  onDestroy: function onDestroy() {
    if (this.currentPreviewId && this.currentPreviewId !== elementor.config.document.revisions.current_id) {
      this.onDiscardClick();
    }
  },
  onRenderCollection: function onRenderCollection() {
    if (!this.currentPreviewId) {
      return;
    }

    var currentPreviewModel = this.collection.findWhere({
      id: this.currentPreviewId
    }); // Ensure the model is exist and not deleted during a save.

    if (currentPreviewModel) {
      this.currentPreviewItem = this.children.findByModelCid(currentPreviewModel.cid);
      this.currentPreviewItem.$el.addClass('elementor-revision-current-preview');
    }
  },
  onChildviewDetailsAreaClick: function onChildviewDetailsAreaClick(childView) {
    var _this3 = this;

    var revisionID = childView.model.get('id');

    if (revisionID === this.currentPreviewId) {
      return;
    }

    if (this.currentPreviewItem) {
      this.currentPreviewItem.$el.removeClass('elementor-revision-current-preview elementor-revision-item-loading');
    }

    childView.$el.addClass('elementor-revision-current-preview elementor-revision-item-loading');
    var revision = null === this.currentPreviewId || elementor.config.document.revisions.current_id === this.currentPreviewId;

    if (revision && elementor.saver.isEditorChanged()) {
      // TODO: Change to 'document/save/auto' ?.
      $e.internal('document/save/save', {
        status: 'autosave',
        onSuccess: function onSuccess() {
          _this3.getRevisionViewData(childView);
        }
      });
    } else {
      this.getRevisionViewData(childView);
    }

    this.currentPreviewItem = childView;
    this.currentPreviewId = revisionID;
  }
});

/***/ }),

/***/ "../modules/history/assets/js/revisions/panel/view.js":
/*!************************************************************!*\
  !*** ../modules/history/assets/js/revisions/panel/view.js ***!
  \************************************************************/
/***/ ((module) => {

"use strict";


module.exports = Marionette.ItemView.extend({
  template: '#tmpl-elementor-panel-revisions-revision-item',
  className: 'elementor-revision-item',
  ui: {
    detailsArea: '.elementor-revision-item__details'
  },
  triggers: {
    'click @ui.detailsArea': 'detailsArea:click'
  }
});

/***/ }),

/***/ "../modules/landing-pages/assets/js/editor/component.js":
/*!**************************************************************!*\
  !*** ../modules/landing-pages/assets/js/editor/component.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var hooks = _interopRequireWildcard(__webpack_require__(/*! ./hooks/ */ "../modules/landing-pages/assets/js/editor/hooks/index.js"));

var LandingPageComponent = /*#__PURE__*/function (_$e$modules$Component) {
  (0, _inherits2.default)(LandingPageComponent, _$e$modules$Component);

  var _super = (0, _createSuper2.default)(LandingPageComponent);

  function LandingPageComponent() {
    (0, _classCallCheck2.default)(this, LandingPageComponent);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(LandingPageComponent, [{
    key: "getNamespace",
    value: function getNamespace() {
      return 'document/landing-page';
    }
  }, {
    key: "defaultHooks",
    value: function defaultHooks() {
      return this.importHooks(hooks);
    }
  }]);
  return LandingPageComponent;
}($e.modules.ComponentBase);

exports.default = LandingPageComponent;

/***/ }),

/***/ "../modules/landing-pages/assets/js/editor/hooks/index.js":
/*!****************************************************************!*\
  !*** ../modules/landing-pages/assets/js/editor/hooks/index.js ***!
  \****************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "LandingPageAddLibraryTab", {
  enumerable: true,
  get: function get() {
    return _addLandingPagesTab.LandingPageAddLibraryTab;
  }
});

_Object$defineProperty(exports, "LandingPageRemoveLibraryTab", {
  enumerable: true,
  get: function get() {
    return _removeLandingPagesTab.LandingPageRemoveLibraryTab;
  }
});

var _addLandingPagesTab = __webpack_require__(/*! ./ui/editor/documents/open/add-landing-pages-tab */ "../modules/landing-pages/assets/js/editor/hooks/ui/editor/documents/open/add-landing-pages-tab.js");

var _removeLandingPagesTab = __webpack_require__(/*! ./ui/editor/documents/close/remove-landing-pages-tab */ "../modules/landing-pages/assets/js/editor/hooks/ui/editor/documents/close/remove-landing-pages-tab.js");

/***/ }),

/***/ "../modules/landing-pages/assets/js/editor/hooks/ui/editor/documents/close/remove-landing-pages-tab.js":
/*!*************************************************************************************************************!*\
  !*** ../modules/landing-pages/assets/js/editor/hooks/ui/editor/documents/close/remove-landing-pages-tab.js ***!
  \*************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.LandingPageRemoveLibraryTab = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var LandingPageRemoveLibraryTab = /*#__PURE__*/function (_$e$modules$hookUI$Af) {
  (0, _inherits2.default)(LandingPageRemoveLibraryTab, _$e$modules$hookUI$Af);

  var _super = (0, _createSuper2.default)(LandingPageRemoveLibraryTab);

  function LandingPageRemoveLibraryTab() {
    (0, _classCallCheck2.default)(this, LandingPageRemoveLibraryTab);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(LandingPageRemoveLibraryTab, [{
    key: "getCommand",
    value: function getCommand() {
      return 'editor/documents/unload';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'elementor-landing-pages-remove-library-tab';
    }
  }, {
    key: "getConditions",
    value: function getConditions(args) {
      var document = args.document;
      return 'landing-page' === document.config.type;
    }
  }, {
    key: "apply",
    value: function apply() {
      $e.components.get('library').removeTab('templates/landing-pages'); // Pages are replaced by landing pages so when Landing Pages are removed, the Pages have to be re-added.

      $e.components.get('library').addTab('templates/pages');
    }
  }]);
  return LandingPageRemoveLibraryTab;
}($e.modules.hookUI.After);

exports.LandingPageRemoveLibraryTab = LandingPageRemoveLibraryTab;
var _default = LandingPageRemoveLibraryTab;
exports.default = _default;

/***/ }),

/***/ "../modules/landing-pages/assets/js/editor/hooks/ui/editor/documents/open/add-landing-pages-tab.js":
/*!*********************************************************************************************************!*\
  !*** ../modules/landing-pages/assets/js/editor/hooks/ui/editor/documents/open/add-landing-pages-tab.js ***!
  \*********************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.LandingPageAddLibraryTab = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var LandingPageAddLibraryTab = /*#__PURE__*/function (_$e$modules$hookUI$Af) {
  (0, _inherits2.default)(LandingPageAddLibraryTab, _$e$modules$hookUI$Af);

  var _super = (0, _createSuper2.default)(LandingPageAddLibraryTab);

  function LandingPageAddLibraryTab() {
    (0, _classCallCheck2.default)(this, LandingPageAddLibraryTab);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(LandingPageAddLibraryTab, [{
    key: "getCommand",
    value: function getCommand() {
      return 'editor/documents/open';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'elementor-landing-pages-add-library-tab';
    }
  }, {
    key: "getConditions",
    value: function getConditions(args) {
      var document = elementor.documents.get(args.id);
      return 'landing-page' === document.config.type;
    }
  }, {
    key: "apply",
    value: function apply() {
      $e.components.get('library').addTab('templates/landing-pages', {
        title: __('Landing Pages', 'elementor'),
        filter: {
          source: 'remote',
          type: 'lp'
        }
      }, 2); // Pages are replaced by landing pages so they need to be removed.

      $e.components.get('library').removeTab('templates/pages');
    }
  }]);
  return LandingPageAddLibraryTab;
}($e.modules.hookUI.After);

exports.LandingPageAddLibraryTab = LandingPageAddLibraryTab;
var _default = LandingPageAddLibraryTab;
exports.default = _default;

/***/ }),

/***/ "../modules/landing-pages/assets/js/editor/module.js":
/*!***********************************************************!*\
  !*** ../modules/landing-pages/assets/js/editor/module.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _component = _interopRequireDefault(__webpack_require__(/*! ./component */ "../modules/landing-pages/assets/js/editor/component.js"));

var LandingPageLibraryModule = /*#__PURE__*/function (_elementorModules$edi) {
  (0, _inherits2.default)(LandingPageLibraryModule, _elementorModules$edi);

  var _super = (0, _createSuper2.default)(LandingPageLibraryModule);

  function LandingPageLibraryModule() {
    (0, _classCallCheck2.default)(this, LandingPageLibraryModule);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(LandingPageLibraryModule, [{
    key: "onElementorLoaded",
    value: function onElementorLoaded() {
      this.component = $e.components.register(new _component.default({
        manager: this
      }));
    }
  }]);
  return LandingPageLibraryModule;
}(elementorModules.editor.utils.Module);

var _default = LandingPageLibraryModule;
exports.default = _default;

/***/ }),

/***/ "../node_modules/core-js/library/fn/array/from.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/fn/array/from.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.string.iterator */ "../node_modules/core-js/library/modules/es6.string.iterator.js");
__webpack_require__(/*! ../../modules/es6.array.from */ "../node_modules/core-js/library/modules/es6.array.from.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Array.from;


/***/ }),

/***/ "../node_modules/core-js/library/fn/array/is-array.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/fn/array/is-array.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.array.is-array */ "../node_modules/core-js/library/modules/es6.array.is-array.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Array.isArray;


/***/ }),

/***/ "../node_modules/core-js/library/fn/is-iterable.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/library/fn/is-iterable.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../modules/web.dom.iterable */ "../node_modules/core-js/library/modules/web.dom.iterable.js");
__webpack_require__(/*! ../modules/es6.string.iterator */ "../node_modules/core-js/library/modules/es6.string.iterator.js");
module.exports = __webpack_require__(/*! ../modules/core.is-iterable */ "../node_modules/core-js/library/modules/core.is-iterable.js");


/***/ }),

/***/ "../node_modules/core-js/library/fn/json/stringify.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/fn/json/stringify.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var core = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js");
var $JSON = core.JSON || (core.JSON = { stringify: JSON.stringify });
module.exports = function stringify(it) { // eslint-disable-line no-unused-vars
  return $JSON.stringify.apply($JSON, arguments);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/assign.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/assign.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.assign */ "../node_modules/core-js/library/modules/es6.object.assign.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.assign;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/create.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/create.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.create */ "../node_modules/core-js/library/modules/es6.object.create.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function create(P, D) {
  return $Object.create(P, D);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/define-properties.js":
/*!**********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/define-properties.js ***!
  \**********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.define-properties */ "../node_modules/core-js/library/modules/es6.object.define-properties.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function defineProperties(T, D) {
  return $Object.defineProperties(T, D);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/define-property.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/define-property.js ***!
  \********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.define-property */ "../node_modules/core-js/library/modules/es6.object.define-property.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function defineProperty(it, key, desc) {
  return $Object.defineProperty(it, key, desc);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/entries.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/entries.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es7.object.entries */ "../node_modules/core-js/library/modules/es7.object.entries.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.entries;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/get-own-property-descriptor.js":
/*!********************************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/get-own-property-descriptor.js ***!
  \********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.get-own-property-descriptor */ "../node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function getOwnPropertyDescriptor(it, key) {
  return $Object.getOwnPropertyDescriptor(it, key);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/get-own-property-descriptors.js":
/*!*********************************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/get-own-property-descriptors.js ***!
  \*********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es7.object.get-own-property-descriptors */ "../node_modules/core-js/library/modules/es7.object.get-own-property-descriptors.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.getOwnPropertyDescriptors;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/get-own-property-symbols.js":
/*!*****************************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/get-own-property-symbols.js ***!
  \*****************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.symbol */ "../node_modules/core-js/library/modules/es6.symbol.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.getOwnPropertySymbols;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/get-prototype-of.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/get-prototype-of.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.get-prototype-of */ "../node_modules/core-js/library/modules/es6.object.get-prototype-of.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.getPrototypeOf;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/keys.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/keys.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.keys */ "../node_modules/core-js/library/modules/es6.object.keys.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.keys;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/set-prototype-of.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/set-prototype-of.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.set-prototype-of */ "../node_modules/core-js/library/modules/es6.object.set-prototype-of.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.setPrototypeOf;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/values.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/values.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es7.object.values */ "../node_modules/core-js/library/modules/es7.object.values.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.values;


/***/ }),

/***/ "../node_modules/core-js/library/fn/parse-int.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/fn/parse-int.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../modules/es6.parse-int */ "../node_modules/core-js/library/modules/es6.parse-int.js");
module.exports = __webpack_require__(/*! ../modules/_core */ "../node_modules/core-js/library/modules/_core.js").parseInt;


/***/ }),

/***/ "../node_modules/core-js/library/fn/promise.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/library/fn/promise.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../modules/es6.object.to-string */ "../node_modules/core-js/library/modules/es6.object.to-string.js");
__webpack_require__(/*! ../modules/es6.string.iterator */ "../node_modules/core-js/library/modules/es6.string.iterator.js");
__webpack_require__(/*! ../modules/web.dom.iterable */ "../node_modules/core-js/library/modules/web.dom.iterable.js");
__webpack_require__(/*! ../modules/es6.promise */ "../node_modules/core-js/library/modules/es6.promise.js");
__webpack_require__(/*! ../modules/es7.promise.finally */ "../node_modules/core-js/library/modules/es7.promise.finally.js");
__webpack_require__(/*! ../modules/es7.promise.try */ "../node_modules/core-js/library/modules/es7.promise.try.js");
module.exports = __webpack_require__(/*! ../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Promise;


/***/ }),

/***/ "../node_modules/core-js/library/fn/reflect/construct.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/fn/reflect/construct.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.reflect.construct */ "../node_modules/core-js/library/modules/es6.reflect.construct.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Reflect.construct;


/***/ }),

/***/ "../node_modules/core-js/library/fn/reflect/get.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/library/fn/reflect/get.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.reflect.get */ "../node_modules/core-js/library/modules/es6.reflect.get.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Reflect.get;


/***/ }),

/***/ "../node_modules/core-js/library/fn/symbol/has-instance.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/fn/symbol/has-instance.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.function.has-instance */ "../node_modules/core-js/library/modules/es6.function.has-instance.js");
module.exports = __webpack_require__(/*! ../../modules/_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js").f('hasInstance');


/***/ }),

/***/ "../node_modules/core-js/library/fn/symbol/index.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/fn/symbol/index.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.symbol */ "../node_modules/core-js/library/modules/es6.symbol.js");
__webpack_require__(/*! ../../modules/es6.object.to-string */ "../node_modules/core-js/library/modules/es6.object.to-string.js");
__webpack_require__(/*! ../../modules/es7.symbol.async-iterator */ "../node_modules/core-js/library/modules/es7.symbol.async-iterator.js");
__webpack_require__(/*! ../../modules/es7.symbol.observable */ "../node_modules/core-js/library/modules/es7.symbol.observable.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Symbol;


/***/ }),

/***/ "../node_modules/core-js/library/fn/symbol/iterator.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/fn/symbol/iterator.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.string.iterator */ "../node_modules/core-js/library/modules/es6.string.iterator.js");
__webpack_require__(/*! ../../modules/web.dom.iterable */ "../node_modules/core-js/library/modules/web.dom.iterable.js");
module.exports = __webpack_require__(/*! ../../modules/_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js").f('iterator');


/***/ }),

/***/ "../node_modules/core-js/library/fn/weak-map.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/library/fn/weak-map.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../modules/es6.object.to-string */ "../node_modules/core-js/library/modules/es6.object.to-string.js");
__webpack_require__(/*! ../modules/web.dom.iterable */ "../node_modules/core-js/library/modules/web.dom.iterable.js");
__webpack_require__(/*! ../modules/es6.weak-map */ "../node_modules/core-js/library/modules/es6.weak-map.js");
__webpack_require__(/*! ../modules/es7.weak-map.of */ "../node_modules/core-js/library/modules/es7.weak-map.of.js");
__webpack_require__(/*! ../modules/es7.weak-map.from */ "../node_modules/core-js/library/modules/es7.weak-map.from.js");
module.exports = __webpack_require__(/*! ../modules/_core */ "../node_modules/core-js/library/modules/_core.js").WeakMap;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_a-function.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_a-function.js ***!
  \**************************************************************/
/***/ ((module) => {

module.exports = function (it) {
  if (typeof it != 'function') throw TypeError(it + ' is not a function!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_add-to-unscopables.js":
/*!**********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_add-to-unscopables.js ***!
  \**********************************************************************/
/***/ ((module) => {

module.exports = function () { /* empty */ };


/***/ }),

/***/ "../node_modules/core-js/library/modules/_an-instance.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_an-instance.js ***!
  \***************************************************************/
/***/ ((module) => {

module.exports = function (it, Constructor, name, forbiddenField) {
  if (!(it instanceof Constructor) || (forbiddenField !== undefined && forbiddenField in it)) {
    throw TypeError(name + ': incorrect invocation!');
  } return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_an-object.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_an-object.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
module.exports = function (it) {
  if (!isObject(it)) throw TypeError(it + ' is not an object!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-includes.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-includes.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// false -> Array#indexOf
// true  -> Array#includes
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
var toAbsoluteIndex = __webpack_require__(/*! ./_to-absolute-index */ "../node_modules/core-js/library/modules/_to-absolute-index.js");
module.exports = function (IS_INCLUDES) {
  return function ($this, el, fromIndex) {
    var O = toIObject($this);
    var length = toLength(O.length);
    var index = toAbsoluteIndex(fromIndex, length);
    var value;
    // Array#includes uses SameValueZero equality algorithm
    // eslint-disable-next-line no-self-compare
    if (IS_INCLUDES && el != el) while (length > index) {
      value = O[index++];
      // eslint-disable-next-line no-self-compare
      if (value != value) return true;
    // Array#indexOf ignores holes, Array#includes - not
    } else for (;length > index; index++) if (IS_INCLUDES || index in O) {
      if (O[index] === el) return IS_INCLUDES || index || 0;
    } return !IS_INCLUDES && -1;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-methods.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-methods.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 0 -> Array#forEach
// 1 -> Array#map
// 2 -> Array#filter
// 3 -> Array#some
// 4 -> Array#every
// 5 -> Array#find
// 6 -> Array#findIndex
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/library/modules/_iobject.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
var asc = __webpack_require__(/*! ./_array-species-create */ "../node_modules/core-js/library/modules/_array-species-create.js");
module.exports = function (TYPE, $create) {
  var IS_MAP = TYPE == 1;
  var IS_FILTER = TYPE == 2;
  var IS_SOME = TYPE == 3;
  var IS_EVERY = TYPE == 4;
  var IS_FIND_INDEX = TYPE == 6;
  var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
  var create = $create || asc;
  return function ($this, callbackfn, that) {
    var O = toObject($this);
    var self = IObject(O);
    var f = ctx(callbackfn, that, 3);
    var length = toLength(self.length);
    var index = 0;
    var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;
    var val, res;
    for (;length > index; index++) if (NO_HOLES || index in self) {
      val = self[index];
      res = f(val, index, O);
      if (TYPE) {
        if (IS_MAP) result[index] = res;   // map
        else if (res) switch (TYPE) {
          case 3: return true;             // some
          case 5: return val;              // find
          case 6: return index;            // findIndex
          case 2: result.push(val);        // filter
        } else if (IS_EVERY) return false; // every
      }
    }
    return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-species-constructor.js":
/*!*****************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-species-constructor.js ***!
  \*****************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var isArray = __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/library/modules/_is-array.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('species');

module.exports = function (original) {
  var C;
  if (isArray(original)) {
    C = original.constructor;
    // cross-realm fallback
    if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
    if (isObject(C)) {
      C = C[SPECIES];
      if (C === null) C = undefined;
    }
  } return C === undefined ? Array : C;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-species-create.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-species-create.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 9.4.2.3 ArraySpeciesCreate(originalArray, length)
var speciesConstructor = __webpack_require__(/*! ./_array-species-constructor */ "../node_modules/core-js/library/modules/_array-species-constructor.js");

module.exports = function (original, length) {
  return new (speciesConstructor(original))(length);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_bind.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_bind.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var invoke = __webpack_require__(/*! ./_invoke */ "../node_modules/core-js/library/modules/_invoke.js");
var arraySlice = [].slice;
var factories = {};

var construct = function (F, len, args) {
  if (!(len in factories)) {
    for (var n = [], i = 0; i < len; i++) n[i] = 'a[' + i + ']';
    // eslint-disable-next-line no-new-func
    factories[len] = Function('F,a', 'return new F(' + n.join(',') + ')');
  } return factories[len](F, args);
};

module.exports = Function.bind || function bind(that /* , ...args */) {
  var fn = aFunction(this);
  var partArgs = arraySlice.call(arguments, 1);
  var bound = function (/* args... */) {
    var args = partArgs.concat(arraySlice.call(arguments));
    return this instanceof bound ? construct(fn, args.length, args) : invoke(fn, args, that);
  };
  if (isObject(fn.prototype)) bound.prototype = fn.prototype;
  return bound;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_classof.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_classof.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// getting tag from 19.1.3.6 Object.prototype.toString()
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('toStringTag');
// ES3 wrong here
var ARG = cof(function () { return arguments; }()) == 'Arguments';

// fallback for IE11 Script Access Denied error
var tryGet = function (it, key) {
  try {
    return it[key];
  } catch (e) { /* empty */ }
};

module.exports = function (it) {
  var O, T, B;
  return it === undefined ? 'Undefined' : it === null ? 'Null'
    // @@toStringTag case
    : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T
    // builtinTag case
    : ARG ? cof(O)
    // ES3 arguments fallback
    : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_cof.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_cof.js ***!
  \*******************************************************/
/***/ ((module) => {

var toString = {}.toString;

module.exports = function (it) {
  return toString.call(it).slice(8, -1);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_collection-weak.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_collection-weak.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var redefineAll = __webpack_require__(/*! ./_redefine-all */ "../node_modules/core-js/library/modules/_redefine-all.js");
var getWeak = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js").getWeak;
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var anInstance = __webpack_require__(/*! ./_an-instance */ "../node_modules/core-js/library/modules/_an-instance.js");
var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");
var createArrayMethod = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/library/modules/_array-methods.js");
var $has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var validate = __webpack_require__(/*! ./_validate-collection */ "../node_modules/core-js/library/modules/_validate-collection.js");
var arrayFind = createArrayMethod(5);
var arrayFindIndex = createArrayMethod(6);
var id = 0;

// fallback for uncaught frozen keys
var uncaughtFrozenStore = function (that) {
  return that._l || (that._l = new UncaughtFrozenStore());
};
var UncaughtFrozenStore = function () {
  this.a = [];
};
var findUncaughtFrozen = function (store, key) {
  return arrayFind(store.a, function (it) {
    return it[0] === key;
  });
};
UncaughtFrozenStore.prototype = {
  get: function (key) {
    var entry = findUncaughtFrozen(this, key);
    if (entry) return entry[1];
  },
  has: function (key) {
    return !!findUncaughtFrozen(this, key);
  },
  set: function (key, value) {
    var entry = findUncaughtFrozen(this, key);
    if (entry) entry[1] = value;
    else this.a.push([key, value]);
  },
  'delete': function (key) {
    var index = arrayFindIndex(this.a, function (it) {
      return it[0] === key;
    });
    if (~index) this.a.splice(index, 1);
    return !!~index;
  }
};

module.exports = {
  getConstructor: function (wrapper, NAME, IS_MAP, ADDER) {
    var C = wrapper(function (that, iterable) {
      anInstance(that, C, NAME, '_i');
      that._t = NAME;      // collection type
      that._i = id++;      // collection id
      that._l = undefined; // leak store for uncaught frozen objects
      if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);
    });
    redefineAll(C.prototype, {
      // 23.3.3.2 WeakMap.prototype.delete(key)
      // 23.4.3.3 WeakSet.prototype.delete(value)
      'delete': function (key) {
        if (!isObject(key)) return false;
        var data = getWeak(key);
        if (data === true) return uncaughtFrozenStore(validate(this, NAME))['delete'](key);
        return data && $has(data, this._i) && delete data[this._i];
      },
      // 23.3.3.4 WeakMap.prototype.has(key)
      // 23.4.3.4 WeakSet.prototype.has(value)
      has: function has(key) {
        if (!isObject(key)) return false;
        var data = getWeak(key);
        if (data === true) return uncaughtFrozenStore(validate(this, NAME)).has(key);
        return data && $has(data, this._i);
      }
    });
    return C;
  },
  def: function (that, key, value) {
    var data = getWeak(anObject(key), true);
    if (data === true) uncaughtFrozenStore(that).set(key, value);
    else data[that._i] = value;
    return that;
  },
  ufstore: uncaughtFrozenStore
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_collection.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_collection.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var meta = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var redefineAll = __webpack_require__(/*! ./_redefine-all */ "../node_modules/core-js/library/modules/_redefine-all.js");
var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");
var anInstance = __webpack_require__(/*! ./_an-instance */ "../node_modules/core-js/library/modules/_an-instance.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
var each = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/library/modules/_array-methods.js")(0);
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");

module.exports = function (NAME, wrapper, methods, common, IS_MAP, IS_WEAK) {
  var Base = global[NAME];
  var C = Base;
  var ADDER = IS_MAP ? 'set' : 'add';
  var proto = C && C.prototype;
  var O = {};
  if (!DESCRIPTORS || typeof C != 'function' || !(IS_WEAK || proto.forEach && !fails(function () {
    new C().entries().next();
  }))) {
    // create collection constructor
    C = common.getConstructor(wrapper, NAME, IS_MAP, ADDER);
    redefineAll(C.prototype, methods);
    meta.NEED = true;
  } else {
    C = wrapper(function (target, iterable) {
      anInstance(target, C, NAME, '_c');
      target._c = new Base();
      if (iterable != undefined) forOf(iterable, IS_MAP, target[ADDER], target);
    });
    each('add,clear,delete,forEach,get,has,set,keys,values,entries,toJSON'.split(','), function (KEY) {
      var IS_ADDER = KEY == 'add' || KEY == 'set';
      if (KEY in proto && !(IS_WEAK && KEY == 'clear')) hide(C.prototype, KEY, function (a, b) {
        anInstance(this, C, KEY);
        if (!IS_ADDER && IS_WEAK && !isObject(a)) return KEY == 'get' ? undefined : false;
        var result = this._c[KEY](a === 0 ? 0 : a, b);
        return IS_ADDER ? this : result;
      });
    });
    IS_WEAK || dP(C.prototype, 'size', {
      get: function () {
        return this._c.size;
      }
    });
  }

  setToStringTag(C, NAME);

  O[NAME] = C;
  $export($export.G + $export.W + $export.F, O);

  if (!IS_WEAK) common.setStrong(C, NAME, IS_MAP);

  return C;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_core.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_core.js ***!
  \********************************************************/
/***/ ((module) => {

var core = module.exports = { version: '2.6.12' };
if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/library/modules/_create-property.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_create-property.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $defineProperty = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");

module.exports = function (object, index, value) {
  if (index in object) $defineProperty.f(object, index, createDesc(0, value));
  else object[index] = value;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_ctx.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_ctx.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// optional / simple context binding
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
module.exports = function (fn, that, length) {
  aFunction(fn);
  if (that === undefined) return fn;
  switch (length) {
    case 1: return function (a) {
      return fn.call(that, a);
    };
    case 2: return function (a, b) {
      return fn.call(that, a, b);
    };
    case 3: return function (a, b, c) {
      return fn.call(that, a, b, c);
    };
  }
  return function (/* ...args */) {
    return fn.apply(that, arguments);
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_defined.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_defined.js ***!
  \***********************************************************/
/***/ ((module) => {

// 7.2.1 RequireObjectCoercible(argument)
module.exports = function (it) {
  if (it == undefined) throw TypeError("Can't call method on  " + it);
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_descriptors.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_descriptors.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Thank's IE8 for his funny defineProperty
module.exports = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/_dom-create.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_dom-create.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").document;
// typeof document.createElement is 'object' in old IE
var is = isObject(document) && isObject(document.createElement);
module.exports = function (it) {
  return is ? document.createElement(it) : {};
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_enum-bug-keys.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_enum-bug-keys.js ***!
  \*****************************************************************/
/***/ ((module) => {

// IE 8- don't enum bug keys
module.exports = (
  'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
).split(',');


/***/ }),

/***/ "../node_modules/core-js/library/modules/_enum-keys.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_enum-keys.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// all enumerable object keys, includes symbols
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var gOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js");
module.exports = function (it) {
  var result = getKeys(it);
  var getSymbols = gOPS.f;
  if (getSymbols) {
    var symbols = getSymbols(it);
    var isEnum = pIE.f;
    var i = 0;
    var key;
    while (symbols.length > i) if (isEnum.call(it, key = symbols[i++])) result.push(key);
  } return result;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_export.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_export.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var PROTOTYPE = 'prototype';

var $export = function (type, name, source) {
  var IS_FORCED = type & $export.F;
  var IS_GLOBAL = type & $export.G;
  var IS_STATIC = type & $export.S;
  var IS_PROTO = type & $export.P;
  var IS_BIND = type & $export.B;
  var IS_WRAP = type & $export.W;
  var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
  var expProto = exports[PROTOTYPE];
  var target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE];
  var key, own, out;
  if (IS_GLOBAL) source = name;
  for (key in source) {
    // contains in native
    own = !IS_FORCED && target && target[key] !== undefined;
    if (own && has(exports, key)) continue;
    // export native or passed
    out = own ? target[key] : source[key];
    // prevent global pollution for namespaces
    exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key]
    // bind timers to global for call from export context
    : IS_BIND && own ? ctx(out, global)
    // wrap global constructors for prevent change them in library
    : IS_WRAP && target[key] == out ? (function (C) {
      var F = function (a, b, c) {
        if (this instanceof C) {
          switch (arguments.length) {
            case 0: return new C();
            case 1: return new C(a);
            case 2: return new C(a, b);
          } return new C(a, b, c);
        } return C.apply(this, arguments);
      };
      F[PROTOTYPE] = C[PROTOTYPE];
      return F;
    // make static versions for prototype methods
    })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
    // export proto methods to core.%CONSTRUCTOR%.methods.%NAME%
    if (IS_PROTO) {
      (exports.virtual || (exports.virtual = {}))[key] = out;
      // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME%
      if (type & $export.R && expProto && !expProto[key]) hide(expProto, key, out);
    }
  }
};
// type bitmap
$export.F = 1;   // forced
$export.G = 2;   // global
$export.S = 4;   // static
$export.P = 8;   // proto
$export.B = 16;  // bind
$export.W = 32;  // wrap
$export.U = 64;  // safe
$export.R = 128; // real proto method for `library`
module.exports = $export;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_fails.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_fails.js ***!
  \*********************************************************/
/***/ ((module) => {

module.exports = function (exec) {
  try {
    return !!exec();
  } catch (e) {
    return true;
  }
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_for-of.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_for-of.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var call = __webpack_require__(/*! ./_iter-call */ "../node_modules/core-js/library/modules/_iter-call.js");
var isArrayIter = __webpack_require__(/*! ./_is-array-iter */ "../node_modules/core-js/library/modules/_is-array-iter.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
var getIterFn = __webpack_require__(/*! ./core.get-iterator-method */ "../node_modules/core-js/library/modules/core.get-iterator-method.js");
var BREAK = {};
var RETURN = {};
var exports = module.exports = function (iterable, entries, fn, that, ITERATOR) {
  var iterFn = ITERATOR ? function () { return iterable; } : getIterFn(iterable);
  var f = ctx(fn, that, entries ? 2 : 1);
  var index = 0;
  var length, step, iterator, result;
  if (typeof iterFn != 'function') throw TypeError(iterable + ' is not iterable!');
  // fast case for arrays with default iterator
  if (isArrayIter(iterFn)) for (length = toLength(iterable.length); length > index; index++) {
    result = entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]);
    if (result === BREAK || result === RETURN) return result;
  } else for (iterator = iterFn.call(iterable); !(step = iterator.next()).done;) {
    result = call(iterator, f, step.value, entries);
    if (result === BREAK || result === RETURN) return result;
  }
};
exports.BREAK = BREAK;
exports.RETURN = RETURN;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_global.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_global.js ***!
  \**********************************************************/
/***/ ((module) => {

// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
var global = module.exports = typeof window != 'undefined' && window.Math == Math
  ? window : typeof self != 'undefined' && self.Math == Math ? self
  // eslint-disable-next-line no-new-func
  : Function('return this')();
if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/library/modules/_has.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_has.js ***!
  \*******************************************************/
/***/ ((module) => {

var hasOwnProperty = {}.hasOwnProperty;
module.exports = function (it, key) {
  return hasOwnProperty.call(it, key);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_hide.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_hide.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? function (object, key, value) {
  return dP.f(object, key, createDesc(1, value));
} : function (object, key, value) {
  object[key] = value;
  return object;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_html.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_html.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").document;
module.exports = document && document.documentElement;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_ie8-dom-define.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_ie8-dom-define.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") && !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  return Object.defineProperty(__webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/library/modules/_dom-create.js")('div'), 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/_invoke.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_invoke.js ***!
  \**********************************************************/
/***/ ((module) => {

// fast apply, http://jsperf.lnkit.com/fast-apply/5
module.exports = function (fn, args, that) {
  var un = that === undefined;
  switch (args.length) {
    case 0: return un ? fn()
                      : fn.call(that);
    case 1: return un ? fn(args[0])
                      : fn.call(that, args[0]);
    case 2: return un ? fn(args[0], args[1])
                      : fn.call(that, args[0], args[1]);
    case 3: return un ? fn(args[0], args[1], args[2])
                      : fn.call(that, args[0], args[1], args[2]);
    case 4: return un ? fn(args[0], args[1], args[2], args[3])
                      : fn.call(that, args[0], args[1], args[2], args[3]);
  } return fn.apply(that, args);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iobject.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iobject.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// fallback for non-array-like ES3 and non-enumerable old V8 strings
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js");
// eslint-disable-next-line no-prototype-builtins
module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
  return cof(it) == 'String' ? it.split('') : Object(it);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_is-array-iter.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_is-array-iter.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// check on default Array iterator
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var ArrayProto = Array.prototype;

module.exports = function (it) {
  return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_is-array.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_is-array.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.2.2 IsArray(argument)
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js");
module.exports = Array.isArray || function isArray(arg) {
  return cof(arg) == 'Array';
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_is-object.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_is-object.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = function (it) {
  return typeof it === 'object' ? it !== null : typeof it === 'function';
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-call.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-call.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// call something on iterator step with safe closing on error
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
module.exports = function (iterator, fn, value, entries) {
  try {
    return entries ? fn(anObject(value)[0], value[1]) : fn(value);
  // 7.4.6 IteratorClose(iterator, completion)
  } catch (e) {
    var ret = iterator['return'];
    if (ret !== undefined) anObject(ret.call(iterator));
    throw e;
  }
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-create.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-create.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
var descriptor = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var IteratorPrototype = {};

// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
__webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js")(IteratorPrototype, __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator'), function () { return this; });

module.exports = function (Constructor, NAME, next) {
  Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });
  setToStringTag(Constructor, NAME + ' Iterator');
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-define.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-define.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/library/modules/_redefine.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var $iterCreate = __webpack_require__(/*! ./_iter-create */ "../node_modules/core-js/library/modules/_iter-create.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`
var FF_ITERATOR = '@@iterator';
var KEYS = 'keys';
var VALUES = 'values';

var returnThis = function () { return this; };

module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {
  $iterCreate(Constructor, NAME, next);
  var getMethod = function (kind) {
    if (!BUGGY && kind in proto) return proto[kind];
    switch (kind) {
      case KEYS: return function keys() { return new Constructor(this, kind); };
      case VALUES: return function values() { return new Constructor(this, kind); };
    } return function entries() { return new Constructor(this, kind); };
  };
  var TAG = NAME + ' Iterator';
  var DEF_VALUES = DEFAULT == VALUES;
  var VALUES_BUG = false;
  var proto = Base.prototype;
  var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];
  var $default = $native || getMethod(DEFAULT);
  var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;
  var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;
  var methods, key, IteratorPrototype;
  // Fix native
  if ($anyNative) {
    IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));
    if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {
      // Set @@toStringTag to native iterators
      setToStringTag(IteratorPrototype, TAG, true);
      // fix for some old engines
      if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);
    }
  }
  // fix Array#{values, @@iterator}.name in V8 / FF
  if (DEF_VALUES && $native && $native.name !== VALUES) {
    VALUES_BUG = true;
    $default = function values() { return $native.call(this); };
  }
  // Define iterator
  if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {
    hide(proto, ITERATOR, $default);
  }
  // Plug for library
  Iterators[NAME] = $default;
  Iterators[TAG] = returnThis;
  if (DEFAULT) {
    methods = {
      values: DEF_VALUES ? $default : getMethod(VALUES),
      keys: IS_SET ? $default : getMethod(KEYS),
      entries: $entries
    };
    if (FORCED) for (key in methods) {
      if (!(key in proto)) redefine(proto, key, methods[key]);
    } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
  }
  return methods;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-detect.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-detect.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var SAFE_CLOSING = false;

try {
  var riter = [7][ITERATOR]();
  riter['return'] = function () { SAFE_CLOSING = true; };
  // eslint-disable-next-line no-throw-literal
  Array.from(riter, function () { throw 2; });
} catch (e) { /* empty */ }

module.exports = function (exec, skipClosing) {
  if (!skipClosing && !SAFE_CLOSING) return false;
  var safe = false;
  try {
    var arr = [7];
    var iter = arr[ITERATOR]();
    iter.next = function () { return { done: safe = true }; };
    arr[ITERATOR] = function () { return iter; };
    exec(arr);
  } catch (e) { /* empty */ }
  return safe;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-step.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-step.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = function (done, value) {
  return { value: value, done: !!done };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iterators.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iterators.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = {};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_library.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_library.js ***!
  \***********************************************************/
/***/ ((module) => {

module.exports = true;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_meta.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_meta.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var META = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js")('meta');
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var setDesc = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
var id = 0;
var isExtensible = Object.isExtensible || function () {
  return true;
};
var FREEZE = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  return isExtensible(Object.preventExtensions({}));
});
var setMeta = function (it) {
  setDesc(it, META, { value: {
    i: 'O' + ++id, // object ID
    w: {}          // weak collections IDs
  } });
};
var fastKey = function (it, create) {
  // return primitive with prefix
  if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;
  if (!has(it, META)) {
    // can't set metadata to uncaught frozen object
    if (!isExtensible(it)) return 'F';
    // not necessary to add metadata
    if (!create) return 'E';
    // add missing metadata
    setMeta(it);
  // return object ID
  } return it[META].i;
};
var getWeak = function (it, create) {
  if (!has(it, META)) {
    // can't set metadata to uncaught frozen object
    if (!isExtensible(it)) return true;
    // not necessary to add metadata
    if (!create) return false;
    // add missing metadata
    setMeta(it);
  // return hash weak collections IDs
  } return it[META].w;
};
// add metadata on freeze-family methods calling
var onFreeze = function (it) {
  if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it);
  return it;
};
var meta = module.exports = {
  KEY: META,
  NEED: false,
  fastKey: fastKey,
  getWeak: getWeak,
  onFreeze: onFreeze
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_microtask.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_microtask.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var macrotask = __webpack_require__(/*! ./_task */ "../node_modules/core-js/library/modules/_task.js").set;
var Observer = global.MutationObserver || global.WebKitMutationObserver;
var process = global.process;
var Promise = global.Promise;
var isNode = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js")(process) == 'process';

module.exports = function () {
  var head, last, notify;

  var flush = function () {
    var parent, fn;
    if (isNode && (parent = process.domain)) parent.exit();
    while (head) {
      fn = head.fn;
      head = head.next;
      try {
        fn();
      } catch (e) {
        if (head) notify();
        else last = undefined;
        throw e;
      }
    } last = undefined;
    if (parent) parent.enter();
  };

  // Node.js
  if (isNode) {
    notify = function () {
      process.nextTick(flush);
    };
  // browsers with MutationObserver, except iOS Safari - https://github.com/zloirock/core-js/issues/339
  } else if (Observer && !(global.navigator && global.navigator.standalone)) {
    var toggle = true;
    var node = document.createTextNode('');
    new Observer(flush).observe(node, { characterData: true }); // eslint-disable-line no-new
    notify = function () {
      node.data = toggle = !toggle;
    };
  // environments with maybe non-completely correct, but existent Promise
  } else if (Promise && Promise.resolve) {
    // Promise.resolve without an argument throws an error in LG WebOS 2
    var promise = Promise.resolve(undefined);
    notify = function () {
      promise.then(flush);
    };
  // for other environments - macrotask based on:
  // - setImmediate
  // - MessageChannel
  // - window.postMessag
  // - onreadystatechange
  // - setTimeout
  } else {
    notify = function () {
      // strange IE + webpack dev server bug - use .call(global)
      macrotask.call(global, flush);
    };
  }

  return function (fn) {
    var task = { fn: fn, next: undefined };
    if (last) last.next = task;
    if (!head) {
      head = task;
      notify();
    } last = task;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_new-promise-capability.js":
/*!**************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_new-promise-capability.js ***!
  \**************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 25.4.1.5 NewPromiseCapability(C)
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");

function PromiseCapability(C) {
  var resolve, reject;
  this.promise = new C(function ($$resolve, $$reject) {
    if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor');
    resolve = $$resolve;
    reject = $$reject;
  });
  this.resolve = aFunction(resolve);
  this.reject = aFunction(reject);
}

module.exports.f = function (C) {
  return new PromiseCapability(C);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-assign.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-assign.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 19.1.2.1 Object.assign(target, source, ...)
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var gOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/library/modules/_iobject.js");
var $assign = Object.assign;

// should work with symbols and should have deterministic property order (V8 bug)
module.exports = !$assign || __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  var A = {};
  var B = {};
  // eslint-disable-next-line no-undef
  var S = Symbol();
  var K = 'abcdefghijklmnopqrst';
  A[S] = 7;
  K.split('').forEach(function (k) { B[k] = k; });
  return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join('') != K;
}) ? function assign(target, source) { // eslint-disable-line no-unused-vars
  var T = toObject(target);
  var aLen = arguments.length;
  var index = 1;
  var getSymbols = gOPS.f;
  var isEnum = pIE.f;
  while (aLen > index) {
    var S = IObject(arguments[index++]);
    var keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S);
    var length = keys.length;
    var j = 0;
    var key;
    while (length > j) {
      key = keys[j++];
      if (!DESCRIPTORS || isEnum.call(S, key)) T[key] = S[key];
    }
  } return T;
} : $assign;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-create.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-create.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var dPs = __webpack_require__(/*! ./_object-dps */ "../node_modules/core-js/library/modules/_object-dps.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');
var Empty = function () { /* empty */ };
var PROTOTYPE = 'prototype';

// Create object with fake `null` prototype: use iframe Object with cleared prototype
var createDict = function () {
  // Thrash, waste and sodomy: IE GC bug
  var iframe = __webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/library/modules/_dom-create.js")('iframe');
  var i = enumBugKeys.length;
  var lt = '<';
  var gt = '>';
  var iframeDocument;
  iframe.style.display = 'none';
  __webpack_require__(/*! ./_html */ "../node_modules/core-js/library/modules/_html.js").appendChild(iframe);
  iframe.src = 'javascript:'; // eslint-disable-line no-script-url
  // createDict = iframe.contentWindow.Object;
  // html.removeChild(iframe);
  iframeDocument = iframe.contentWindow.document;
  iframeDocument.open();
  iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);
  iframeDocument.close();
  createDict = iframeDocument.F;
  while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];
  return createDict();
};

module.exports = Object.create || function create(O, Properties) {
  var result;
  if (O !== null) {
    Empty[PROTOTYPE] = anObject(O);
    result = new Empty();
    Empty[PROTOTYPE] = null;
    // add "__proto__" for Object.getPrototypeOf polyfill
    result[IE_PROTO] = O;
  } else result = createDict();
  return Properties === undefined ? result : dPs(result, Properties);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-dp.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-dp.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/library/modules/_ie8-dom-define.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
var dP = Object.defineProperty;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? Object.defineProperty : function defineProperty(O, P, Attributes) {
  anObject(O);
  P = toPrimitive(P, true);
  anObject(Attributes);
  if (IE8_DOM_DEFINE) try {
    return dP(O, P, Attributes);
  } catch (e) { /* empty */ }
  if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
  if ('value' in Attributes) O[P] = Attributes.value;
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-dps.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-dps.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");

module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? Object.defineProperties : function defineProperties(O, Properties) {
  anObject(O);
  var keys = getKeys(Properties);
  var length = keys.length;
  var i = 0;
  var P;
  while (length > i) dP.f(O, P = keys[i++], Properties[P]);
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gopd.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gopd.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/library/modules/_ie8-dom-define.js");
var gOPD = Object.getOwnPropertyDescriptor;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? gOPD : function getOwnPropertyDescriptor(O, P) {
  O = toIObject(O);
  P = toPrimitive(P, true);
  if (IE8_DOM_DEFINE) try {
    return gOPD(O, P);
  } catch (e) { /* empty */ }
  if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gopn-ext.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gopn-ext.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var gOPN = __webpack_require__(/*! ./_object-gopn */ "../node_modules/core-js/library/modules/_object-gopn.js").f;
var toString = {}.toString;

var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames
  ? Object.getOwnPropertyNames(window) : [];

var getWindowNames = function (it) {
  try {
    return gOPN(it);
  } catch (e) {
    return windowNames.slice();
  }
};

module.exports.f = function getOwnPropertyNames(it) {
  return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gopn.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gopn.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)
var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/library/modules/_object-keys-internal.js");
var hiddenKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js").concat('length', 'prototype');

exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
  return $keys(O, hiddenKeys);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gops.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gops.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports) => {

exports.f = Object.getOwnPropertySymbols;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gpo.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gpo.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');
var ObjectProto = Object.prototype;

module.exports = Object.getPrototypeOf || function (O) {
  O = toObject(O);
  if (has(O, IE_PROTO)) return O[IE_PROTO];
  if (typeof O.constructor == 'function' && O instanceof O.constructor) {
    return O.constructor.prototype;
  } return O instanceof Object ? ObjectProto : null;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-keys-internal.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-keys-internal.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var arrayIndexOf = __webpack_require__(/*! ./_array-includes */ "../node_modules/core-js/library/modules/_array-includes.js")(false);
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');

module.exports = function (object, names) {
  var O = toIObject(object);
  var i = 0;
  var result = [];
  var key;
  for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);
  // Don't enum bug & hidden keys
  while (names.length > i) if (has(O, key = names[i++])) {
    ~arrayIndexOf(result, key) || result.push(key);
  }
  return result;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-keys.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-keys.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.14 / 15.2.3.14 Object.keys(O)
var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/library/modules/_object-keys-internal.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js");

module.exports = Object.keys || function keys(O) {
  return $keys(O, enumBugKeys);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-pie.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-pie.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports) => {

exports.f = {}.propertyIsEnumerable;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-sap.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-sap.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// most Object methods by ES6 should accept primitives
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
module.exports = function (KEY, exec) {
  var fn = (core.Object || {})[KEY] || Object[KEY];
  var exp = {};
  exp[KEY] = exec(fn);
  $export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-to-array.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-to-array.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var isEnum = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js").f;
module.exports = function (isEntries) {
  return function (it) {
    var O = toIObject(it);
    var keys = getKeys(O);
    var length = keys.length;
    var i = 0;
    var result = [];
    var key;
    while (length > i) {
      key = keys[i++];
      if (!DESCRIPTORS || isEnum.call(O, key)) {
        result.push(isEntries ? [key, O[key]] : O[key]);
      }
    }
    return result;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_own-keys.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_own-keys.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// all object keys, includes non-enumerable and symbols
var gOPN = __webpack_require__(/*! ./_object-gopn */ "../node_modules/core-js/library/modules/_object-gopn.js");
var gOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var Reflect = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").Reflect;
module.exports = Reflect && Reflect.ownKeys || function ownKeys(it) {
  var keys = gOPN.f(anObject(it));
  var getSymbols = gOPS.f;
  return getSymbols ? keys.concat(getSymbols(it)) : keys;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_parse-int.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_parse-int.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var $parseInt = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").parseInt;
var $trim = __webpack_require__(/*! ./_string-trim */ "../node_modules/core-js/library/modules/_string-trim.js").trim;
var ws = __webpack_require__(/*! ./_string-ws */ "../node_modules/core-js/library/modules/_string-ws.js");
var hex = /^[-+]?0[xX]/;

module.exports = $parseInt(ws + '08') !== 8 || $parseInt(ws + '0x16') !== 22 ? function parseInt(str, radix) {
  var string = $trim(String(str), 3);
  return $parseInt(string, (radix >>> 0) || (hex.test(string) ? 16 : 10));
} : $parseInt;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_perform.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_perform.js ***!
  \***********************************************************/
/***/ ((module) => {

module.exports = function (exec) {
  try {
    return { e: false, v: exec() };
  } catch (e) {
    return { e: true, v: e };
  }
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_promise-resolve.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_promise-resolve.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var newPromiseCapability = __webpack_require__(/*! ./_new-promise-capability */ "../node_modules/core-js/library/modules/_new-promise-capability.js");

module.exports = function (C, x) {
  anObject(C);
  if (isObject(x) && x.constructor === C) return x;
  var promiseCapability = newPromiseCapability.f(C);
  var resolve = promiseCapability.resolve;
  resolve(x);
  return promiseCapability.promise;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_property-desc.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_property-desc.js ***!
  \*****************************************************************/
/***/ ((module) => {

module.exports = function (bitmap, value) {
  return {
    enumerable: !(bitmap & 1),
    configurable: !(bitmap & 2),
    writable: !(bitmap & 4),
    value: value
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_redefine-all.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_redefine-all.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
module.exports = function (target, src, safe) {
  for (var key in src) {
    if (safe && target[key]) target[key] = src[key];
    else hide(target, key, src[key]);
  } return target;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_redefine.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_redefine.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-collection-from.js":
/*!***********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-collection-from.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// https://tc39.github.io/proposal-setmap-offrom/
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");

module.exports = function (COLLECTION) {
  $export($export.S, COLLECTION, { from: function from(source /* , mapFn, thisArg */) {
    var mapFn = arguments[1];
    var mapping, A, n, cb;
    aFunction(this);
    mapping = mapFn !== undefined;
    if (mapping) aFunction(mapFn);
    if (source == undefined) return new this();
    A = [];
    if (mapping) {
      n = 0;
      cb = ctx(mapFn, arguments[2], 2);
      forOf(source, false, function (nextItem) {
        A.push(cb(nextItem, n++));
      });
    } else {
      forOf(source, false, A.push, A);
    }
    return new this(A);
  } });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-collection-of.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-collection-of.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// https://tc39.github.io/proposal-setmap-offrom/
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");

module.exports = function (COLLECTION) {
  $export($export.S, COLLECTION, { of: function of() {
    var length = arguments.length;
    var A = new Array(length);
    while (length--) A[length] = arguments[length];
    return new this(A);
  } });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-proto.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-proto.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Works with __proto__ only. Old v8 can't work with null proto objects.
/* eslint-disable no-proto */
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var check = function (O, proto) {
  anObject(O);
  if (!isObject(proto) && proto !== null) throw TypeError(proto + ": can't set as prototype!");
};
module.exports = {
  set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line
    function (test, buggy, set) {
      try {
        set = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js")(Function.call, __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js").f(Object.prototype, '__proto__').set, 2);
        set(test, []);
        buggy = !(test instanceof Array);
      } catch (e) { buggy = true; }
      return function setPrototypeOf(O, proto) {
        check(O, proto);
        if (buggy) O.__proto__ = proto;
        else set(O, proto);
        return O;
      };
    }({}, false) : undefined),
  check: check
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-species.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-species.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('species');

module.exports = function (KEY) {
  var C = typeof core[KEY] == 'function' ? core[KEY] : global[KEY];
  if (DESCRIPTORS && C && !C[SPECIES]) dP.f(C, SPECIES, {
    configurable: true,
    get: function () { return this; }
  });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-to-string-tag.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-to-string-tag.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var def = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('toStringTag');

module.exports = function (it, tag, stat) {
  if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_shared-key.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_shared-key.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var shared = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js")('keys');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
module.exports = function (key) {
  return shared[key] || (shared[key] = uid(key));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_shared.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_shared.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var SHARED = '__core-js_shared__';
var store = global[SHARED] || (global[SHARED] = {});

(module.exports = function (key, value) {
  return store[key] || (store[key] = value !== undefined ? value : {});
})('versions', []).push({
  version: core.version,
  mode: __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js") ? 'pure' : 'global',
  copyright: '© 2020 Denis Pushkarev (zloirock.ru)'
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/_species-constructor.js":
/*!***********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_species-constructor.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.3.20 SpeciesConstructor(O, defaultConstructor)
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('species');
module.exports = function (O, D) {
  var C = anObject(O).constructor;
  var S;
  return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_string-at.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_string-at.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
// true  -> String#at
// false -> String#codePointAt
module.exports = function (TO_STRING) {
  return function (that, pos) {
    var s = String(defined(that));
    var i = toInteger(pos);
    var l = s.length;
    var a, b;
    if (i < 0 || i >= l) return TO_STRING ? '' : undefined;
    a = s.charCodeAt(i);
    return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
      ? TO_STRING ? s.charAt(i) : a
      : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_string-trim.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_string-trim.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
var spaces = __webpack_require__(/*! ./_string-ws */ "../node_modules/core-js/library/modules/_string-ws.js");
var space = '[' + spaces + ']';
var non = '\u200b\u0085';
var ltrim = RegExp('^' + space + space + '*');
var rtrim = RegExp(space + space + '*$');

var exporter = function (KEY, exec, ALIAS) {
  var exp = {};
  var FORCE = fails(function () {
    return !!spaces[KEY]() || non[KEY]() != non;
  });
  var fn = exp[KEY] = FORCE ? exec(trim) : spaces[KEY];
  if (ALIAS) exp[ALIAS] = fn;
  $export($export.P + $export.F * FORCE, 'String', exp);
};

// 1 -> String#trimLeft
// 2 -> String#trimRight
// 3 -> String#trim
var trim = exporter.trim = function (string, TYPE) {
  string = String(defined(string));
  if (TYPE & 1) string = string.replace(ltrim, '');
  if (TYPE & 2) string = string.replace(rtrim, '');
  return string;
};

module.exports = exporter;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_string-ws.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_string-ws.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = '\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003' +
  '\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF';


/***/ }),

/***/ "../node_modules/core-js/library/modules/_task.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_task.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var invoke = __webpack_require__(/*! ./_invoke */ "../node_modules/core-js/library/modules/_invoke.js");
var html = __webpack_require__(/*! ./_html */ "../node_modules/core-js/library/modules/_html.js");
var cel = __webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/library/modules/_dom-create.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var process = global.process;
var setTask = global.setImmediate;
var clearTask = global.clearImmediate;
var MessageChannel = global.MessageChannel;
var Dispatch = global.Dispatch;
var counter = 0;
var queue = {};
var ONREADYSTATECHANGE = 'onreadystatechange';
var defer, channel, port;
var run = function () {
  var id = +this;
  // eslint-disable-next-line no-prototype-builtins
  if (queue.hasOwnProperty(id)) {
    var fn = queue[id];
    delete queue[id];
    fn();
  }
};
var listener = function (event) {
  run.call(event.data);
};
// Node.js 0.9+ & IE10+ has setImmediate, otherwise:
if (!setTask || !clearTask) {
  setTask = function setImmediate(fn) {
    var args = [];
    var i = 1;
    while (arguments.length > i) args.push(arguments[i++]);
    queue[++counter] = function () {
      // eslint-disable-next-line no-new-func
      invoke(typeof fn == 'function' ? fn : Function(fn), args);
    };
    defer(counter);
    return counter;
  };
  clearTask = function clearImmediate(id) {
    delete queue[id];
  };
  // Node.js 0.8-
  if (__webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js")(process) == 'process') {
    defer = function (id) {
      process.nextTick(ctx(run, id, 1));
    };
  // Sphere (JS game engine) Dispatch API
  } else if (Dispatch && Dispatch.now) {
    defer = function (id) {
      Dispatch.now(ctx(run, id, 1));
    };
  // Browsers with MessageChannel, includes WebWorkers
  } else if (MessageChannel) {
    channel = new MessageChannel();
    port = channel.port2;
    channel.port1.onmessage = listener;
    defer = ctx(port.postMessage, port, 1);
  // Browsers with postMessage, skip WebWorkers
  // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'
  } else if (global.addEventListener && typeof postMessage == 'function' && !global.importScripts) {
    defer = function (id) {
      global.postMessage(id + '', '*');
    };
    global.addEventListener('message', listener, false);
  // IE8-
  } else if (ONREADYSTATECHANGE in cel('script')) {
    defer = function (id) {
      html.appendChild(cel('script'))[ONREADYSTATECHANGE] = function () {
        html.removeChild(this);
        run.call(id);
      };
    };
  // Rest old browsers
  } else {
    defer = function (id) {
      setTimeout(ctx(run, id, 1), 0);
    };
  }
}
module.exports = {
  set: setTask,
  clear: clearTask
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-absolute-index.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-absolute-index.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
var max = Math.max;
var min = Math.min;
module.exports = function (index, length) {
  index = toInteger(index);
  return index < 0 ? max(index + length, 0) : min(index, length);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-integer.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-integer.js ***!
  \**************************************************************/
/***/ ((module) => {

// 7.1.4 ToInteger
var ceil = Math.ceil;
var floor = Math.floor;
module.exports = function (it) {
  return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-iobject.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-iobject.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// to indexed object, toObject with fallback for non-array-like ES3 strings
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/library/modules/_iobject.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
module.exports = function (it) {
  return IObject(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-length.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-length.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.15 ToLength
var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
var min = Math.min;
module.exports = function (it) {
  return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-object.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-object.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.13 ToObject(argument)
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
module.exports = function (it) {
  return Object(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-primitive.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-primitive.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.1 ToPrimitive(input [, PreferredType])
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
// instead of the ES6 spec version, we didn't implement @@toPrimitive case
// and the second argument - flag - preferred type is a string
module.exports = function (it, S) {
  if (!isObject(it)) return it;
  var fn, val;
  if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
  if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  throw TypeError("Can't convert object to primitive value");
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_uid.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_uid.js ***!
  \*******************************************************/
/***/ ((module) => {

var id = 0;
var px = Math.random();
module.exports = function (key) {
  return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_user-agent.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_user-agent.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var navigator = global.navigator;

module.exports = navigator && navigator.userAgent || '';


/***/ }),

/***/ "../node_modules/core-js/library/modules/_validate-collection.js":
/*!***********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_validate-collection.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
module.exports = function (it, TYPE) {
  if (!isObject(it) || it._t !== TYPE) throw TypeError('Incompatible receiver, ' + TYPE + ' required!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_wks-define.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_wks-define.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js");
var wksExt = __webpack_require__(/*! ./_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js");
var defineProperty = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
module.exports = function (name) {
  var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {});
  if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_wks-ext.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_wks-ext.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

exports.f = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js");


/***/ }),

/***/ "../node_modules/core-js/library/modules/_wks.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_wks.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var store = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js")('wks');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
var Symbol = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").Symbol;
var USE_SYMBOL = typeof Symbol == 'function';

var $exports = module.exports = function (name) {
  return store[name] || (store[name] =
    USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
};

$exports.store = store;


/***/ }),

/***/ "../node_modules/core-js/library/modules/core.get-iterator-method.js":
/*!***************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/core.get-iterator-method.js ***!
  \***************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/library/modules/_classof.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
module.exports = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js").getIteratorMethod = function (it) {
  if (it != undefined) return it[ITERATOR]
    || it['@@iterator']
    || Iterators[classof(it)];
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/core.is-iterable.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/core.is-iterable.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/library/modules/_classof.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
module.exports = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js").isIterable = function (it) {
  var O = Object(it);
  return O[ITERATOR] !== undefined
    || '@@iterator' in O
    // eslint-disable-next-line no-prototype-builtins
    || Iterators.hasOwnProperty(classof(O));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.array.from.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.array.from.js ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var call = __webpack_require__(/*! ./_iter-call */ "../node_modules/core-js/library/modules/_iter-call.js");
var isArrayIter = __webpack_require__(/*! ./_is-array-iter */ "../node_modules/core-js/library/modules/_is-array-iter.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
var createProperty = __webpack_require__(/*! ./_create-property */ "../node_modules/core-js/library/modules/_create-property.js");
var getIterFn = __webpack_require__(/*! ./core.get-iterator-method */ "../node_modules/core-js/library/modules/core.get-iterator-method.js");

$export($export.S + $export.F * !__webpack_require__(/*! ./_iter-detect */ "../node_modules/core-js/library/modules/_iter-detect.js")(function (iter) { Array.from(iter); }), 'Array', {
  // 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined)
  from: function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {
    var O = toObject(arrayLike);
    var C = typeof this == 'function' ? this : Array;
    var aLen = arguments.length;
    var mapfn = aLen > 1 ? arguments[1] : undefined;
    var mapping = mapfn !== undefined;
    var index = 0;
    var iterFn = getIterFn(O);
    var length, result, step, iterator;
    if (mapping) mapfn = ctx(mapfn, aLen > 2 ? arguments[2] : undefined, 2);
    // if object isn't iterable or it's array with default iterator - use simple case
    if (iterFn != undefined && !(C == Array && isArrayIter(iterFn))) {
      for (iterator = iterFn.call(O), result = new C(); !(step = iterator.next()).done; index++) {
        createProperty(result, index, mapping ? call(iterator, mapfn, [step.value, index], true) : step.value);
      }
    } else {
      length = toLength(O.length);
      for (result = new C(length); length > index; index++) {
        createProperty(result, index, mapping ? mapfn(O[index], index) : O[index]);
      }
    }
    result.length = index;
    return result;
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.array.is-array.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.array.is-array.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 22.1.2.2 / 15.4.3.2 Array.isArray(arg)
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");

$export($export.S, 'Array', { isArray: __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/library/modules/_is-array.js") });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.array.iterator.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.array.iterator.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var addToUnscopables = __webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/library/modules/_add-to-unscopables.js");
var step = __webpack_require__(/*! ./_iter-step */ "../node_modules/core-js/library/modules/_iter-step.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");

// 22.1.3.4 Array.prototype.entries()
// 22.1.3.13 Array.prototype.keys()
// 22.1.3.29 Array.prototype.values()
// 22.1.3.30 Array.prototype[@@iterator]()
module.exports = __webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/library/modules/_iter-define.js")(Array, 'Array', function (iterated, kind) {
  this._t = toIObject(iterated); // target
  this._i = 0;                   // next index
  this._k = kind;                // kind
// 22.1.5.2.1 %ArrayIteratorPrototype%.next()
}, function () {
  var O = this._t;
  var kind = this._k;
  var index = this._i++;
  if (!O || index >= O.length) {
    this._t = undefined;
    return step(1);
  }
  if (kind == 'keys') return step(0, index);
  if (kind == 'values') return step(0, O[index]);
  return step(0, [index, O[index]]);
}, 'values');

// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
Iterators.Arguments = Iterators.Array;

addToUnscopables('keys');
addToUnscopables('values');
addToUnscopables('entries');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.function.has-instance.js":
/*!****************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.function.has-instance.js ***!
  \****************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");
var HAS_INSTANCE = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('hasInstance');
var FunctionProto = Function.prototype;
// 19.2.3.6 Function.prototype[@@hasInstance](V)
if (!(HAS_INSTANCE in FunctionProto)) __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f(FunctionProto, HAS_INSTANCE, { value: function (O) {
  if (typeof this != 'function' || !isObject(O)) return false;
  if (!isObject(this.prototype)) return O instanceof this;
  // for environment w/o native `@@hasInstance` logic enough `instanceof`, but add this:
  while (O = getPrototypeOf(O)) if (this.prototype === O) return true;
  return false;
} });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.assign.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.assign.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.3.1 Object.assign(target, source)
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");

$export($export.S + $export.F, 'Object', { assign: __webpack_require__(/*! ./_object-assign */ "../node_modules/core-js/library/modules/_object-assign.js") });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.create.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.create.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
$export($export.S, 'Object', { create: __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js") });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.define-properties.js":
/*!*******************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.define-properties.js ***!
  \*******************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
// 19.1.2.3 / 15.2.3.7 Object.defineProperties(O, Properties)
$export($export.S + $export.F * !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js"), 'Object', { defineProperties: __webpack_require__(/*! ./_object-dps */ "../node_modules/core-js/library/modules/_object-dps.js") });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.define-property.js":
/*!*****************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.define-property.js ***!
  \*****************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)
$export($export.S + $export.F * !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js"), 'Object', { defineProperty: __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js":
/*!*****************************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js ***!
  \*****************************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var $getOwnPropertyDescriptor = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js").f;

__webpack_require__(/*! ./_object-sap */ "../node_modules/core-js/library/modules/_object-sap.js")('getOwnPropertyDescriptor', function () {
  return function getOwnPropertyDescriptor(it, key) {
    return $getOwnPropertyDescriptor(toIObject(it), key);
  };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.get-prototype-of.js":
/*!******************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.get-prototype-of.js ***!
  \******************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.9 Object.getPrototypeOf(O)
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var $getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");

__webpack_require__(/*! ./_object-sap */ "../node_modules/core-js/library/modules/_object-sap.js")('getPrototypeOf', function () {
  return function getPrototypeOf(it) {
    return $getPrototypeOf(toObject(it));
  };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.keys.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.keys.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.14 Object.keys(O)
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var $keys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");

__webpack_require__(/*! ./_object-sap */ "../node_modules/core-js/library/modules/_object-sap.js")('keys', function () {
  return function keys(it) {
    return $keys(toObject(it));
  };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.set-prototype-of.js":
/*!******************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.set-prototype-of.js ***!
  \******************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.3.19 Object.setPrototypeOf(O, proto)
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
$export($export.S, 'Object', { setPrototypeOf: __webpack_require__(/*! ./_set-proto */ "../node_modules/core-js/library/modules/_set-proto.js").set });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.to-string.js":
/*!***********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.to-string.js ***!
  \***********************************************************************/
/***/ (() => {



/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.parse-int.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.parse-int.js ***!
  \****************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var $parseInt = __webpack_require__(/*! ./_parse-int */ "../node_modules/core-js/library/modules/_parse-int.js");
// 18.2.5 parseInt(string, radix)
$export($export.G + $export.F * (parseInt != $parseInt), { parseInt: $parseInt });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.promise.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.promise.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/library/modules/_classof.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var anInstance = __webpack_require__(/*! ./_an-instance */ "../node_modules/core-js/library/modules/_an-instance.js");
var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");
var speciesConstructor = __webpack_require__(/*! ./_species-constructor */ "../node_modules/core-js/library/modules/_species-constructor.js");
var task = __webpack_require__(/*! ./_task */ "../node_modules/core-js/library/modules/_task.js").set;
var microtask = __webpack_require__(/*! ./_microtask */ "../node_modules/core-js/library/modules/_microtask.js")();
var newPromiseCapabilityModule = __webpack_require__(/*! ./_new-promise-capability */ "../node_modules/core-js/library/modules/_new-promise-capability.js");
var perform = __webpack_require__(/*! ./_perform */ "../node_modules/core-js/library/modules/_perform.js");
var userAgent = __webpack_require__(/*! ./_user-agent */ "../node_modules/core-js/library/modules/_user-agent.js");
var promiseResolve = __webpack_require__(/*! ./_promise-resolve */ "../node_modules/core-js/library/modules/_promise-resolve.js");
var PROMISE = 'Promise';
var TypeError = global.TypeError;
var process = global.process;
var versions = process && process.versions;
var v8 = versions && versions.v8 || '';
var $Promise = global[PROMISE];
var isNode = classof(process) == 'process';
var empty = function () { /* empty */ };
var Internal, newGenericPromiseCapability, OwnPromiseCapability, Wrapper;
var newPromiseCapability = newGenericPromiseCapability = newPromiseCapabilityModule.f;

var USE_NATIVE = !!function () {
  try {
    // correct subclassing with @@species support
    var promise = $Promise.resolve(1);
    var FakePromise = (promise.constructor = {})[__webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('species')] = function (exec) {
      exec(empty, empty);
    };
    // unhandled rejections tracking support, NodeJS Promise without it fails @@species test
    return (isNode || typeof PromiseRejectionEvent == 'function')
      && promise.then(empty) instanceof FakePromise
      // v8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables
      // https://bugs.chromium.org/p/chromium/issues/detail?id=830565
      // we can't detect it synchronously, so just check versions
      && v8.indexOf('6.6') !== 0
      && userAgent.indexOf('Chrome/66') === -1;
  } catch (e) { /* empty */ }
}();

// helpers
var isThenable = function (it) {
  var then;
  return isObject(it) && typeof (then = it.then) == 'function' ? then : false;
};
var notify = function (promise, isReject) {
  if (promise._n) return;
  promise._n = true;
  var chain = promise._c;
  microtask(function () {
    var value = promise._v;
    var ok = promise._s == 1;
    var i = 0;
    var run = function (reaction) {
      var handler = ok ? reaction.ok : reaction.fail;
      var resolve = reaction.resolve;
      var reject = reaction.reject;
      var domain = reaction.domain;
      var result, then, exited;
      try {
        if (handler) {
          if (!ok) {
            if (promise._h == 2) onHandleUnhandled(promise);
            promise._h = 1;
          }
          if (handler === true) result = value;
          else {
            if (domain) domain.enter();
            result = handler(value); // may throw
            if (domain) {
              domain.exit();
              exited = true;
            }
          }
          if (result === reaction.promise) {
            reject(TypeError('Promise-chain cycle'));
          } else if (then = isThenable(result)) {
            then.call(result, resolve, reject);
          } else resolve(result);
        } else reject(value);
      } catch (e) {
        if (domain && !exited) domain.exit();
        reject(e);
      }
    };
    while (chain.length > i) run(chain[i++]); // variable length - can't use forEach
    promise._c = [];
    promise._n = false;
    if (isReject && !promise._h) onUnhandled(promise);
  });
};
var onUnhandled = function (promise) {
  task.call(global, function () {
    var value = promise._v;
    var unhandled = isUnhandled(promise);
    var result, handler, console;
    if (unhandled) {
      result = perform(function () {
        if (isNode) {
          process.emit('unhandledRejection', value, promise);
        } else if (handler = global.onunhandledrejection) {
          handler({ promise: promise, reason: value });
        } else if ((console = global.console) && console.error) {
          console.error('Unhandled promise rejection', value);
        }
      });
      // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should
      promise._h = isNode || isUnhandled(promise) ? 2 : 1;
    } promise._a = undefined;
    if (unhandled && result.e) throw result.v;
  });
};
var isUnhandled = function (promise) {
  return promise._h !== 1 && (promise._a || promise._c).length === 0;
};
var onHandleUnhandled = function (promise) {
  task.call(global, function () {
    var handler;
    if (isNode) {
      process.emit('rejectionHandled', promise);
    } else if (handler = global.onrejectionhandled) {
      handler({ promise: promise, reason: promise._v });
    }
  });
};
var $reject = function (value) {
  var promise = this;
  if (promise._d) return;
  promise._d = true;
  promise = promise._w || promise; // unwrap
  promise._v = value;
  promise._s = 2;
  if (!promise._a) promise._a = promise._c.slice();
  notify(promise, true);
};
var $resolve = function (value) {
  var promise = this;
  var then;
  if (promise._d) return;
  promise._d = true;
  promise = promise._w || promise; // unwrap
  try {
    if (promise === value) throw TypeError("Promise can't be resolved itself");
    if (then = isThenable(value)) {
      microtask(function () {
        var wrapper = { _w: promise, _d: false }; // wrap
        try {
          then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1));
        } catch (e) {
          $reject.call(wrapper, e);
        }
      });
    } else {
      promise._v = value;
      promise._s = 1;
      notify(promise, false);
    }
  } catch (e) {
    $reject.call({ _w: promise, _d: false }, e); // wrap
  }
};

// constructor polyfill
if (!USE_NATIVE) {
  // 25.4.3.1 Promise(executor)
  $Promise = function Promise(executor) {
    anInstance(this, $Promise, PROMISE, '_h');
    aFunction(executor);
    Internal.call(this);
    try {
      executor(ctx($resolve, this, 1), ctx($reject, this, 1));
    } catch (err) {
      $reject.call(this, err);
    }
  };
  // eslint-disable-next-line no-unused-vars
  Internal = function Promise(executor) {
    this._c = [];             // <- awaiting reactions
    this._a = undefined;      // <- checked in isUnhandled reactions
    this._s = 0;              // <- state
    this._d = false;          // <- done
    this._v = undefined;      // <- value
    this._h = 0;              // <- rejection state, 0 - default, 1 - handled, 2 - unhandled
    this._n = false;          // <- notify
  };
  Internal.prototype = __webpack_require__(/*! ./_redefine-all */ "../node_modules/core-js/library/modules/_redefine-all.js")($Promise.prototype, {
    // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected)
    then: function then(onFulfilled, onRejected) {
      var reaction = newPromiseCapability(speciesConstructor(this, $Promise));
      reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;
      reaction.fail = typeof onRejected == 'function' && onRejected;
      reaction.domain = isNode ? process.domain : undefined;
      this._c.push(reaction);
      if (this._a) this._a.push(reaction);
      if (this._s) notify(this, false);
      return reaction.promise;
    },
    // 25.4.5.1 Promise.prototype.catch(onRejected)
    'catch': function (onRejected) {
      return this.then(undefined, onRejected);
    }
  });
  OwnPromiseCapability = function () {
    var promise = new Internal();
    this.promise = promise;
    this.resolve = ctx($resolve, promise, 1);
    this.reject = ctx($reject, promise, 1);
  };
  newPromiseCapabilityModule.f = newPromiseCapability = function (C) {
    return C === $Promise || C === Wrapper
      ? new OwnPromiseCapability(C)
      : newGenericPromiseCapability(C);
  };
}

$export($export.G + $export.W + $export.F * !USE_NATIVE, { Promise: $Promise });
__webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js")($Promise, PROMISE);
__webpack_require__(/*! ./_set-species */ "../node_modules/core-js/library/modules/_set-species.js")(PROMISE);
Wrapper = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js")[PROMISE];

// statics
$export($export.S + $export.F * !USE_NATIVE, PROMISE, {
  // 25.4.4.5 Promise.reject(r)
  reject: function reject(r) {
    var capability = newPromiseCapability(this);
    var $$reject = capability.reject;
    $$reject(r);
    return capability.promise;
  }
});
$export($export.S + $export.F * (LIBRARY || !USE_NATIVE), PROMISE, {
  // 25.4.4.6 Promise.resolve(x)
  resolve: function resolve(x) {
    return promiseResolve(LIBRARY && this === Wrapper ? $Promise : this, x);
  }
});
$export($export.S + $export.F * !(USE_NATIVE && __webpack_require__(/*! ./_iter-detect */ "../node_modules/core-js/library/modules/_iter-detect.js")(function (iter) {
  $Promise.all(iter)['catch'](empty);
})), PROMISE, {
  // 25.4.4.1 Promise.all(iterable)
  all: function all(iterable) {
    var C = this;
    var capability = newPromiseCapability(C);
    var resolve = capability.resolve;
    var reject = capability.reject;
    var result = perform(function () {
      var values = [];
      var index = 0;
      var remaining = 1;
      forOf(iterable, false, function (promise) {
        var $index = index++;
        var alreadyCalled = false;
        values.push(undefined);
        remaining++;
        C.resolve(promise).then(function (value) {
          if (alreadyCalled) return;
          alreadyCalled = true;
          values[$index] = value;
          --remaining || resolve(values);
        }, reject);
      });
      --remaining || resolve(values);
    });
    if (result.e) reject(result.v);
    return capability.promise;
  },
  // 25.4.4.4 Promise.race(iterable)
  race: function race(iterable) {
    var C = this;
    var capability = newPromiseCapability(C);
    var reject = capability.reject;
    var result = perform(function () {
      forOf(iterable, false, function (promise) {
        C.resolve(promise).then(capability.resolve, reject);
      });
    });
    if (result.e) reject(result.v);
    return capability.promise;
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.reflect.construct.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.reflect.construct.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 26.1.2 Reflect.construct(target, argumentsList [, newTarget])
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
var bind = __webpack_require__(/*! ./_bind */ "../node_modules/core-js/library/modules/_bind.js");
var rConstruct = (__webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").Reflect || {}).construct;

// MS Edge supports only 2 arguments and argumentsList argument is optional
// FF Nightly sets third argument as `new.target`, but does not create `this` from it
var NEW_TARGET_BUG = fails(function () {
  function F() { /* empty */ }
  return !(rConstruct(function () { /* empty */ }, [], F) instanceof F);
});
var ARGS_BUG = !fails(function () {
  rConstruct(function () { /* empty */ });
});

$export($export.S + $export.F * (NEW_TARGET_BUG || ARGS_BUG), 'Reflect', {
  construct: function construct(Target, args /* , newTarget */) {
    aFunction(Target);
    anObject(args);
    var newTarget = arguments.length < 3 ? Target : aFunction(arguments[2]);
    if (ARGS_BUG && !NEW_TARGET_BUG) return rConstruct(Target, args, newTarget);
    if (Target == newTarget) {
      // w/o altered newTarget, optimization for 0-4 arguments
      switch (args.length) {
        case 0: return new Target();
        case 1: return new Target(args[0]);
        case 2: return new Target(args[0], args[1]);
        case 3: return new Target(args[0], args[1], args[2]);
        case 4: return new Target(args[0], args[1], args[2], args[3]);
      }
      // w/o altered newTarget, lot of arguments case
      var $args = [null];
      $args.push.apply($args, args);
      return new (bind.apply(Target, $args))();
    }
    // with altered newTarget, not support built-in constructors
    var proto = newTarget.prototype;
    var instance = create(isObject(proto) ? proto : Object.prototype);
    var result = Function.apply.call(Target, instance, args);
    return isObject(result) ? result : instance;
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.reflect.get.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.reflect.get.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 26.1.6 Reflect.get(target, propertyKey [, receiver])
var gOPD = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js");
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");

function get(target, propertyKey /* , receiver */) {
  var receiver = arguments.length < 3 ? target : arguments[2];
  var desc, proto;
  if (anObject(target) === receiver) return target[propertyKey];
  if (desc = gOPD.f(target, propertyKey)) return has(desc, 'value')
    ? desc.value
    : desc.get !== undefined
      ? desc.get.call(receiver)
      : undefined;
  if (isObject(proto = getPrototypeOf(target))) return get(proto, propertyKey, receiver);
}

$export($export.S, 'Reflect', { get: get });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.string.iterator.js":
/*!**********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.string.iterator.js ***!
  \**********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $at = __webpack_require__(/*! ./_string-at */ "../node_modules/core-js/library/modules/_string-at.js")(true);

// 21.1.3.27 String.prototype[@@iterator]()
__webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/library/modules/_iter-define.js")(String, 'String', function (iterated) {
  this._t = String(iterated); // target
  this._i = 0;                // next index
// 21.1.5.2.1 %StringIteratorPrototype%.next()
}, function () {
  var O = this._t;
  var index = this._i;
  var point;
  if (index >= O.length) return { value: undefined, done: true };
  point = $at(O, index);
  this._i += point.length;
  return { value: point, done: false };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.symbol.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.symbol.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// ECMAScript 6 symbols shim
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/library/modules/_redefine.js");
var META = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js").KEY;
var $fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
var shared = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
var wks = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js");
var wksExt = __webpack_require__(/*! ./_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js");
var wksDefine = __webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js");
var enumKeys = __webpack_require__(/*! ./_enum-keys */ "../node_modules/core-js/library/modules/_enum-keys.js");
var isArray = __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/library/modules/_is-array.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
var _create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
var gOPNExt = __webpack_require__(/*! ./_object-gopn-ext */ "../node_modules/core-js/library/modules/_object-gopn-ext.js");
var $GOPD = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js");
var $GOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
var $DP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var $keys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var gOPD = $GOPD.f;
var dP = $DP.f;
var gOPN = gOPNExt.f;
var $Symbol = global.Symbol;
var $JSON = global.JSON;
var _stringify = $JSON && $JSON.stringify;
var PROTOTYPE = 'prototype';
var HIDDEN = wks('_hidden');
var TO_PRIMITIVE = wks('toPrimitive');
var isEnum = {}.propertyIsEnumerable;
var SymbolRegistry = shared('symbol-registry');
var AllSymbols = shared('symbols');
var OPSymbols = shared('op-symbols');
var ObjectProto = Object[PROTOTYPE];
var USE_NATIVE = typeof $Symbol == 'function' && !!$GOPS.f;
var QObject = global.QObject;
// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173
var setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;

// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687
var setSymbolDesc = DESCRIPTORS && $fails(function () {
  return _create(dP({}, 'a', {
    get: function () { return dP(this, 'a', { value: 7 }).a; }
  })).a != 7;
}) ? function (it, key, D) {
  var protoDesc = gOPD(ObjectProto, key);
  if (protoDesc) delete ObjectProto[key];
  dP(it, key, D);
  if (protoDesc && it !== ObjectProto) dP(ObjectProto, key, protoDesc);
} : dP;

var wrap = function (tag) {
  var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]);
  sym._k = tag;
  return sym;
};

var isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function (it) {
  return typeof it == 'symbol';
} : function (it) {
  return it instanceof $Symbol;
};

var $defineProperty = function defineProperty(it, key, D) {
  if (it === ObjectProto) $defineProperty(OPSymbols, key, D);
  anObject(it);
  key = toPrimitive(key, true);
  anObject(D);
  if (has(AllSymbols, key)) {
    if (!D.enumerable) {
      if (!has(it, HIDDEN)) dP(it, HIDDEN, createDesc(1, {}));
      it[HIDDEN][key] = true;
    } else {
      if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false;
      D = _create(D, { enumerable: createDesc(0, false) });
    } return setSymbolDesc(it, key, D);
  } return dP(it, key, D);
};
var $defineProperties = function defineProperties(it, P) {
  anObject(it);
  var keys = enumKeys(P = toIObject(P));
  var i = 0;
  var l = keys.length;
  var key;
  while (l > i) $defineProperty(it, key = keys[i++], P[key]);
  return it;
};
var $create = function create(it, P) {
  return P === undefined ? _create(it) : $defineProperties(_create(it), P);
};
var $propertyIsEnumerable = function propertyIsEnumerable(key) {
  var E = isEnum.call(this, key = toPrimitive(key, true));
  if (this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return false;
  return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true;
};
var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key) {
  it = toIObject(it);
  key = toPrimitive(key, true);
  if (it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return;
  var D = gOPD(it, key);
  if (D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) D.enumerable = true;
  return D;
};
var $getOwnPropertyNames = function getOwnPropertyNames(it) {
  var names = gOPN(toIObject(it));
  var result = [];
  var i = 0;
  var key;
  while (names.length > i) {
    if (!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META) result.push(key);
  } return result;
};
var $getOwnPropertySymbols = function getOwnPropertySymbols(it) {
  var IS_OP = it === ObjectProto;
  var names = gOPN(IS_OP ? OPSymbols : toIObject(it));
  var result = [];
  var i = 0;
  var key;
  while (names.length > i) {
    if (has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true)) result.push(AllSymbols[key]);
  } return result;
};

// 19.4.1.1 Symbol([description])
if (!USE_NATIVE) {
  $Symbol = function Symbol() {
    if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor!');
    var tag = uid(arguments.length > 0 ? arguments[0] : undefined);
    var $set = function (value) {
      if (this === ObjectProto) $set.call(OPSymbols, value);
      if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;
      setSymbolDesc(this, tag, createDesc(1, value));
    };
    if (DESCRIPTORS && setter) setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set });
    return wrap(tag);
  };
  redefine($Symbol[PROTOTYPE], 'toString', function toString() {
    return this._k;
  });

  $GOPD.f = $getOwnPropertyDescriptor;
  $DP.f = $defineProperty;
  __webpack_require__(/*! ./_object-gopn */ "../node_modules/core-js/library/modules/_object-gopn.js").f = gOPNExt.f = $getOwnPropertyNames;
  __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js").f = $propertyIsEnumerable;
  $GOPS.f = $getOwnPropertySymbols;

  if (DESCRIPTORS && !__webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js")) {
    redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);
  }

  wksExt.f = function (name) {
    return wrap(wks(name));
  };
}

$export($export.G + $export.W + $export.F * !USE_NATIVE, { Symbol: $Symbol });

for (var es6Symbols = (
  // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14
  'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'
).split(','), j = 0; es6Symbols.length > j;)wks(es6Symbols[j++]);

for (var wellKnownSymbols = $keys(wks.store), k = 0; wellKnownSymbols.length > k;) wksDefine(wellKnownSymbols[k++]);

$export($export.S + $export.F * !USE_NATIVE, 'Symbol', {
  // 19.4.2.1 Symbol.for(key)
  'for': function (key) {
    return has(SymbolRegistry, key += '')
      ? SymbolRegistry[key]
      : SymbolRegistry[key] = $Symbol(key);
  },
  // 19.4.2.5 Symbol.keyFor(sym)
  keyFor: function keyFor(sym) {
    if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol!');
    for (var key in SymbolRegistry) if (SymbolRegistry[key] === sym) return key;
  },
  useSetter: function () { setter = true; },
  useSimple: function () { setter = false; }
});

$export($export.S + $export.F * !USE_NATIVE, 'Object', {
  // 19.1.2.2 Object.create(O [, Properties])
  create: $create,
  // 19.1.2.4 Object.defineProperty(O, P, Attributes)
  defineProperty: $defineProperty,
  // 19.1.2.3 Object.defineProperties(O, Properties)
  defineProperties: $defineProperties,
  // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
  getOwnPropertyDescriptor: $getOwnPropertyDescriptor,
  // 19.1.2.7 Object.getOwnPropertyNames(O)
  getOwnPropertyNames: $getOwnPropertyNames,
  // 19.1.2.8 Object.getOwnPropertySymbols(O)
  getOwnPropertySymbols: $getOwnPropertySymbols
});

// Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives
// https://bugs.chromium.org/p/v8/issues/detail?id=3443
var FAILS_ON_PRIMITIVES = $fails(function () { $GOPS.f(1); });

$export($export.S + $export.F * FAILS_ON_PRIMITIVES, 'Object', {
  getOwnPropertySymbols: function getOwnPropertySymbols(it) {
    return $GOPS.f(toObject(it));
  }
});

// 24.3.2 JSON.stringify(value [, replacer [, space]])
$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function () {
  var S = $Symbol();
  // MS Edge converts symbol values to JSON as {}
  // WebKit converts symbol values to JSON as null
  // V8 throws on boxed symbols
  return _stringify([S]) != '[null]' || _stringify({ a: S }) != '{}' || _stringify(Object(S)) != '{}';
})), 'JSON', {
  stringify: function stringify(it) {
    var args = [it];
    var i = 1;
    var replacer, $replacer;
    while (arguments.length > i) args.push(arguments[i++]);
    $replacer = replacer = args[1];
    if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined
    if (!isArray(replacer)) replacer = function (key, value) {
      if (typeof $replacer == 'function') value = $replacer.call(this, key, value);
      if (!isSymbol(value)) return value;
    };
    args[1] = replacer;
    return _stringify.apply($JSON, args);
  }
});

// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint)
$Symbol[PROTOTYPE][TO_PRIMITIVE] || __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js")($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);
// 19.4.3.5 Symbol.prototype[@@toStringTag]
setToStringTag($Symbol, 'Symbol');
// 20.2.1.9 Math[@@toStringTag]
setToStringTag(Math, 'Math', true);
// 24.3.3 JSON[@@toStringTag]
setToStringTag(global.JSON, 'JSON', true);


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.weak-map.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.weak-map.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var each = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/library/modules/_array-methods.js")(0);
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/library/modules/_redefine.js");
var meta = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js");
var assign = __webpack_require__(/*! ./_object-assign */ "../node_modules/core-js/library/modules/_object-assign.js");
var weak = __webpack_require__(/*! ./_collection-weak */ "../node_modules/core-js/library/modules/_collection-weak.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var validate = __webpack_require__(/*! ./_validate-collection */ "../node_modules/core-js/library/modules/_validate-collection.js");
var NATIVE_WEAK_MAP = __webpack_require__(/*! ./_validate-collection */ "../node_modules/core-js/library/modules/_validate-collection.js");
var IS_IE11 = !global.ActiveXObject && 'ActiveXObject' in global;
var WEAK_MAP = 'WeakMap';
var getWeak = meta.getWeak;
var isExtensible = Object.isExtensible;
var uncaughtFrozenStore = weak.ufstore;
var InternalMap;

var wrapper = function (get) {
  return function WeakMap() {
    return get(this, arguments.length > 0 ? arguments[0] : undefined);
  };
};

var methods = {
  // 23.3.3.3 WeakMap.prototype.get(key)
  get: function get(key) {
    if (isObject(key)) {
      var data = getWeak(key);
      if (data === true) return uncaughtFrozenStore(validate(this, WEAK_MAP)).get(key);
      return data ? data[this._i] : undefined;
    }
  },
  // 23.3.3.5 WeakMap.prototype.set(key, value)
  set: function set(key, value) {
    return weak.def(validate(this, WEAK_MAP), key, value);
  }
};

// 23.3 WeakMap Objects
var $WeakMap = module.exports = __webpack_require__(/*! ./_collection */ "../node_modules/core-js/library/modules/_collection.js")(WEAK_MAP, wrapper, methods, weak, true, true);

// IE11 WeakMap frozen keys fix
if (NATIVE_WEAK_MAP && IS_IE11) {
  InternalMap = weak.getConstructor(wrapper, WEAK_MAP);
  assign(InternalMap.prototype, methods);
  meta.NEED = true;
  each(['delete', 'has', 'get', 'set'], function (key) {
    var proto = $WeakMap.prototype;
    var method = proto[key];
    redefine(proto, key, function (a, b) {
      // store frozen objects on internal weakmap shim
      if (isObject(a) && !isExtensible(a)) {
        if (!this._f) this._f = new InternalMap();
        var result = this._f[key](a, b);
        return key == 'set' ? this : result;
      // store all the rest on native weakmap
      } return method.call(this, a, b);
    });
  });
}


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.object.entries.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.object.entries.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://github.com/tc39/proposal-object-values-entries
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var $entries = __webpack_require__(/*! ./_object-to-array */ "../node_modules/core-js/library/modules/_object-to-array.js")(true);

$export($export.S, 'Object', {
  entries: function entries(it) {
    return $entries(it);
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.object.get-own-property-descriptors.js":
/*!******************************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.object.get-own-property-descriptors.js ***!
  \******************************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://github.com/tc39/proposal-object-getownpropertydescriptors
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var ownKeys = __webpack_require__(/*! ./_own-keys */ "../node_modules/core-js/library/modules/_own-keys.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var gOPD = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js");
var createProperty = __webpack_require__(/*! ./_create-property */ "../node_modules/core-js/library/modules/_create-property.js");

$export($export.S, 'Object', {
  getOwnPropertyDescriptors: function getOwnPropertyDescriptors(object) {
    var O = toIObject(object);
    var getDesc = gOPD.f;
    var keys = ownKeys(O);
    var result = {};
    var i = 0;
    var key, desc;
    while (keys.length > i) {
      desc = getDesc(O, key = keys[i++]);
      if (desc !== undefined) createProperty(result, key, desc);
    }
    return result;
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.object.values.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.object.values.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://github.com/tc39/proposal-object-values-entries
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var $values = __webpack_require__(/*! ./_object-to-array */ "../node_modules/core-js/library/modules/_object-to-array.js")(false);

$export($export.S, 'Object', {
  values: function values(it) {
    return $values(it);
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.promise.finally.js":
/*!**********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.promise.finally.js ***!
  \**********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
// https://github.com/tc39/proposal-promise-finally

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var speciesConstructor = __webpack_require__(/*! ./_species-constructor */ "../node_modules/core-js/library/modules/_species-constructor.js");
var promiseResolve = __webpack_require__(/*! ./_promise-resolve */ "../node_modules/core-js/library/modules/_promise-resolve.js");

$export($export.P + $export.R, 'Promise', { 'finally': function (onFinally) {
  var C = speciesConstructor(this, core.Promise || global.Promise);
  var isFunction = typeof onFinally == 'function';
  return this.then(
    isFunction ? function (x) {
      return promiseResolve(C, onFinally()).then(function () { return x; });
    } : onFinally,
    isFunction ? function (e) {
      return promiseResolve(C, onFinally()).then(function () { throw e; });
    } : onFinally
  );
} });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.promise.try.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.promise.try.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// https://github.com/tc39/proposal-promise-try
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var newPromiseCapability = __webpack_require__(/*! ./_new-promise-capability */ "../node_modules/core-js/library/modules/_new-promise-capability.js");
var perform = __webpack_require__(/*! ./_perform */ "../node_modules/core-js/library/modules/_perform.js");

$export($export.S, 'Promise', { 'try': function (callbackfn) {
  var promiseCapability = newPromiseCapability.f(this);
  var result = perform(callbackfn);
  (result.e ? promiseCapability.reject : promiseCapability.resolve)(result.v);
  return promiseCapability.promise;
} });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.symbol.async-iterator.js":
/*!****************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.symbol.async-iterator.js ***!
  \****************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js")('asyncIterator');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.symbol.observable.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.symbol.observable.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js")('observable');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.weak-map.from.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.weak-map.from.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://tc39.github.io/proposal-setmap-offrom/#sec-weakmap.from
__webpack_require__(/*! ./_set-collection-from */ "../node_modules/core-js/library/modules/_set-collection-from.js")('WeakMap');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.weak-map.of.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.weak-map.of.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://tc39.github.io/proposal-setmap-offrom/#sec-weakmap.of
__webpack_require__(/*! ./_set-collection-of */ "../node_modules/core-js/library/modules/_set-collection-of.js")('WeakMap');


/***/ }),

/***/ "../node_modules/core-js/library/modules/web.dom.iterable.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/web.dom.iterable.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ./es6.array.iterator */ "../node_modules/core-js/library/modules/es6.array.iterator.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var TO_STRING_TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('toStringTag');

var DOMIterables = ('CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,' +
  'DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,' +
  'MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,' +
  'SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,' +
  'TextTrackList,TouchList').split(',');

for (var i = 0; i < DOMIterables.length; i++) {
  var NAME = DOMIterables[i];
  var Collection = global[NAME];
  var proto = Collection && Collection.prototype;
  if (proto && !proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);
  Iterators[NAME] = Iterators.Array;
}


/***/ }),

/***/ "../node_modules/core-js/modules/_a-function.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_a-function.js ***!
  \******************************************************/
/***/ ((module) => {

module.exports = function (it) {
  if (typeof it != 'function') throw TypeError(it + ' is not a function!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_add-to-unscopables.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/modules/_add-to-unscopables.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 22.1.3.31 Array.prototype[@@unscopables]
var UNSCOPABLES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('unscopables');
var ArrayProto = Array.prototype;
if (ArrayProto[UNSCOPABLES] == undefined) __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js")(ArrayProto, UNSCOPABLES, {});
module.exports = function (key) {
  ArrayProto[UNSCOPABLES][key] = true;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_advance-string-index.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_advance-string-index.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var at = __webpack_require__(/*! ./_string-at */ "../node_modules/core-js/modules/_string-at.js")(true);

 // `AdvanceStringIndex` abstract operation
// https://tc39.github.io/ecma262/#sec-advancestringindex
module.exports = function (S, index, unicode) {
  return index + (unicode ? at(S, index).length : 1);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_an-instance.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_an-instance.js ***!
  \*******************************************************/
/***/ ((module) => {

module.exports = function (it, Constructor, name, forbiddenField) {
  if (!(it instanceof Constructor) || (forbiddenField !== undefined && forbiddenField in it)) {
    throw TypeError(name + ': incorrect invocation!');
  } return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_an-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_an-object.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
module.exports = function (it) {
  if (!isObject(it)) throw TypeError(it + ' is not an object!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-includes.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/_array-includes.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// false -> Array#indexOf
// true  -> Array#includes
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/modules/_to-iobject.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var toAbsoluteIndex = __webpack_require__(/*! ./_to-absolute-index */ "../node_modules/core-js/modules/_to-absolute-index.js");
module.exports = function (IS_INCLUDES) {
  return function ($this, el, fromIndex) {
    var O = toIObject($this);
    var length = toLength(O.length);
    var index = toAbsoluteIndex(fromIndex, length);
    var value;
    // Array#includes uses SameValueZero equality algorithm
    // eslint-disable-next-line no-self-compare
    if (IS_INCLUDES && el != el) while (length > index) {
      value = O[index++];
      // eslint-disable-next-line no-self-compare
      if (value != value) return true;
    // Array#indexOf ignores holes, Array#includes - not
    } else for (;length > index; index++) if (IS_INCLUDES || index in O) {
      if (O[index] === el) return IS_INCLUDES || index || 0;
    } return !IS_INCLUDES && -1;
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-methods.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_array-methods.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 0 -> Array#forEach
// 1 -> Array#map
// 2 -> Array#filter
// 3 -> Array#some
// 4 -> Array#every
// 5 -> Array#find
// 6 -> Array#findIndex
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/modules/_ctx.js");
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/modules/_iobject.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/modules/_to-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var asc = __webpack_require__(/*! ./_array-species-create */ "../node_modules/core-js/modules/_array-species-create.js");
module.exports = function (TYPE, $create) {
  var IS_MAP = TYPE == 1;
  var IS_FILTER = TYPE == 2;
  var IS_SOME = TYPE == 3;
  var IS_EVERY = TYPE == 4;
  var IS_FIND_INDEX = TYPE == 6;
  var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
  var create = $create || asc;
  return function ($this, callbackfn, that) {
    var O = toObject($this);
    var self = IObject(O);
    var f = ctx(callbackfn, that, 3);
    var length = toLength(self.length);
    var index = 0;
    var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;
    var val, res;
    for (;length > index; index++) if (NO_HOLES || index in self) {
      val = self[index];
      res = f(val, index, O);
      if (TYPE) {
        if (IS_MAP) result[index] = res;   // map
        else if (res) switch (TYPE) {
          case 3: return true;             // some
          case 5: return val;              // find
          case 6: return index;            // findIndex
          case 2: result.push(val);        // filter
        } else if (IS_EVERY) return false; // every
      }
    }
    return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-species-constructor.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/modules/_array-species-constructor.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var isArray = __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/modules/_is-array.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('species');

module.exports = function (original) {
  var C;
  if (isArray(original)) {
    C = original.constructor;
    // cross-realm fallback
    if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
    if (isObject(C)) {
      C = C[SPECIES];
      if (C === null) C = undefined;
    }
  } return C === undefined ? Array : C;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-species-create.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_array-species-create.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 9.4.2.3 ArraySpeciesCreate(originalArray, length)
var speciesConstructor = __webpack_require__(/*! ./_array-species-constructor */ "../node_modules/core-js/modules/_array-species-constructor.js");

module.exports = function (original, length) {
  return new (speciesConstructor(original))(length);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_classof.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_classof.js ***!
  \***************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// getting tag from 19.1.3.6 Object.prototype.toString()
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('toStringTag');
// ES3 wrong here
var ARG = cof(function () { return arguments; }()) == 'Arguments';

// fallback for IE11 Script Access Denied error
var tryGet = function (it, key) {
  try {
    return it[key];
  } catch (e) { /* empty */ }
};

module.exports = function (it) {
  var O, T, B;
  return it === undefined ? 'Undefined' : it === null ? 'Null'
    // @@toStringTag case
    : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T
    // builtinTag case
    : ARG ? cof(O)
    // ES3 arguments fallback
    : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_cof.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_cof.js ***!
  \***********************************************/
/***/ ((module) => {

var toString = {}.toString;

module.exports = function (it) {
  return toString.call(it).slice(8, -1);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_core.js":
/*!************************************************!*\
  !*** ../node_modules/core-js/modules/_core.js ***!
  \************************************************/
/***/ ((module) => {

var core = module.exports = { version: '2.6.12' };
if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/modules/_ctx.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_ctx.js ***!
  \***********************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// optional / simple context binding
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/modules/_a-function.js");
module.exports = function (fn, that, length) {
  aFunction(fn);
  if (that === undefined) return fn;
  switch (length) {
    case 1: return function (a) {
      return fn.call(that, a);
    };
    case 2: return function (a, b) {
      return fn.call(that, a, b);
    };
    case 3: return function (a, b, c) {
      return fn.call(that, a, b, c);
    };
  }
  return function (/* ...args */) {
    return fn.apply(that, arguments);
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_defined.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_defined.js ***!
  \***************************************************/
/***/ ((module) => {

// 7.2.1 RequireObjectCoercible(argument)
module.exports = function (it) {
  if (it == undefined) throw TypeError("Can't call method on  " + it);
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_descriptors.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_descriptors.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Thank's IE8 for his funny defineProperty
module.exports = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () {
  return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/modules/_dom-create.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_dom-create.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js").document;
// typeof document.createElement is 'object' in old IE
var is = isObject(document) && isObject(document.createElement);
module.exports = function (it) {
  return is ? document.createElement(it) : {};
};


/***/ }),

/***/ "../node_modules/core-js/modules/_enum-bug-keys.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_enum-bug-keys.js ***!
  \*********************************************************/
/***/ ((module) => {

// IE 8- don't enum bug keys
module.exports = (
  'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
).split(',');


/***/ }),

/***/ "../node_modules/core-js/modules/_export.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_export.js ***!
  \**************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/modules/_ctx.js");
var PROTOTYPE = 'prototype';

var $export = function (type, name, source) {
  var IS_FORCED = type & $export.F;
  var IS_GLOBAL = type & $export.G;
  var IS_STATIC = type & $export.S;
  var IS_PROTO = type & $export.P;
  var IS_BIND = type & $export.B;
  var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE];
  var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
  var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {});
  var key, own, out, exp;
  if (IS_GLOBAL) source = name;
  for (key in source) {
    // contains in native
    own = !IS_FORCED && target && target[key] !== undefined;
    // export native or passed
    out = (own ? target : source)[key];
    // bind timers to global for call from export context
    exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
    // extend global
    if (target) redefine(target, key, out, type & $export.U);
    // export
    if (exports[key] != out) hide(exports, key, exp);
    if (IS_PROTO && expProto[key] != out) expProto[key] = out;
  }
};
global.core = core;
// type bitmap
$export.F = 1;   // forced
$export.G = 2;   // global
$export.S = 4;   // static
$export.P = 8;   // proto
$export.B = 16;  // bind
$export.W = 32;  // wrap
$export.U = 64;  // safe
$export.R = 128; // real proto method for `library`
module.exports = $export;


/***/ }),

/***/ "../node_modules/core-js/modules/_fails-is-regexp.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/_fails-is-regexp.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var MATCH = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('match');
module.exports = function (KEY) {
  var re = /./;
  try {
    '/./'[KEY](re);
  } catch (e) {
    try {
      re[MATCH] = false;
      return !'/./'[KEY](re);
    } catch (f) { /* empty */ }
  } return true;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_fails.js":
/*!*************************************************!*\
  !*** ../node_modules/core-js/modules/_fails.js ***!
  \*************************************************/
/***/ ((module) => {

module.exports = function (exec) {
  try {
    return !!exec();
  } catch (e) {
    return true;
  }
};


/***/ }),

/***/ "../node_modules/core-js/modules/_fix-re-wks.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_fix-re-wks.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

__webpack_require__(/*! ./es6.regexp.exec */ "../node_modules/core-js/modules/es6.regexp.exec.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
var wks = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js");
var regexpExec = __webpack_require__(/*! ./_regexp-exec */ "../node_modules/core-js/modules/_regexp-exec.js");

var SPECIES = wks('species');

var REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {
  // #replace needs built-in support for named groups.
  // #match works fine because it just return the exec results, even if it has
  // a "grops" property.
  var re = /./;
  re.exec = function () {
    var result = [];
    result.groups = { a: '7' };
    return result;
  };
  return ''.replace(re, '$<a>') !== '7';
});

var SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = (function () {
  // Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec
  var re = /(?:)/;
  var originalExec = re.exec;
  re.exec = function () { return originalExec.apply(this, arguments); };
  var result = 'ab'.split(re);
  return result.length === 2 && result[0] === 'a' && result[1] === 'b';
})();

module.exports = function (KEY, length, exec) {
  var SYMBOL = wks(KEY);

  var DELEGATES_TO_SYMBOL = !fails(function () {
    // String methods call symbol-named RegEp methods
    var O = {};
    O[SYMBOL] = function () { return 7; };
    return ''[KEY](O) != 7;
  });

  var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL ? !fails(function () {
    // Symbol-named RegExp methods call .exec
    var execCalled = false;
    var re = /a/;
    re.exec = function () { execCalled = true; return null; };
    if (KEY === 'split') {
      // RegExp[@@split] doesn't call the regex's exec method, but first creates
      // a new one. We need to return the patched regex when creating the new one.
      re.constructor = {};
      re.constructor[SPECIES] = function () { return re; };
    }
    re[SYMBOL]('');
    return !execCalled;
  }) : undefined;

  if (
    !DELEGATES_TO_SYMBOL ||
    !DELEGATES_TO_EXEC ||
    (KEY === 'replace' && !REPLACE_SUPPORTS_NAMED_GROUPS) ||
    (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)
  ) {
    var nativeRegExpMethod = /./[SYMBOL];
    var fns = exec(
      defined,
      SYMBOL,
      ''[KEY],
      function maybeCallNative(nativeMethod, regexp, str, arg2, forceStringMethod) {
        if (regexp.exec === regexpExec) {
          if (DELEGATES_TO_SYMBOL && !forceStringMethod) {
            // The native String method already delegates to @@method (this
            // polyfilled function), leasing to infinite recursion.
            // We avoid it by directly calling the native @@method method.
            return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };
          }
          return { done: true, value: nativeMethod.call(str, regexp, arg2) };
        }
        return { done: false };
      }
    );
    var strfn = fns[0];
    var rxfn = fns[1];

    redefine(String.prototype, KEY, strfn);
    hide(RegExp.prototype, SYMBOL, length == 2
      // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)
      // 21.2.5.11 RegExp.prototype[@@split](string, limit)
      ? function (string, arg) { return rxfn.call(string, this, arg); }
      // 21.2.5.6 RegExp.prototype[@@match](string)
      // 21.2.5.9 RegExp.prototype[@@search](string)
      : function (string) { return rxfn.call(string, this); }
    );
  }
};


/***/ }),

/***/ "../node_modules/core-js/modules/_flags.js":
/*!*************************************************!*\
  !*** ../node_modules/core-js/modules/_flags.js ***!
  \*************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 21.2.5.3 get RegExp.prototype.flags
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
module.exports = function () {
  var that = anObject(this);
  var result = '';
  if (that.global) result += 'g';
  if (that.ignoreCase) result += 'i';
  if (that.multiline) result += 'm';
  if (that.unicode) result += 'u';
  if (that.sticky) result += 'y';
  return result;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_for-of.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_for-of.js ***!
  \**************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/modules/_ctx.js");
var call = __webpack_require__(/*! ./_iter-call */ "../node_modules/core-js/modules/_iter-call.js");
var isArrayIter = __webpack_require__(/*! ./_is-array-iter */ "../node_modules/core-js/modules/_is-array-iter.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var getIterFn = __webpack_require__(/*! ./core.get-iterator-method */ "../node_modules/core-js/modules/core.get-iterator-method.js");
var BREAK = {};
var RETURN = {};
var exports = module.exports = function (iterable, entries, fn, that, ITERATOR) {
  var iterFn = ITERATOR ? function () { return iterable; } : getIterFn(iterable);
  var f = ctx(fn, that, entries ? 2 : 1);
  var index = 0;
  var length, step, iterator, result;
  if (typeof iterFn != 'function') throw TypeError(iterable + ' is not iterable!');
  // fast case for arrays with default iterator
  if (isArrayIter(iterFn)) for (length = toLength(iterable.length); length > index; index++) {
    result = entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]);
    if (result === BREAK || result === RETURN) return result;
  } else for (iterator = iterFn.call(iterable); !(step = iterator.next()).done;) {
    result = call(iterator, f, step.value, entries);
    if (result === BREAK || result === RETURN) return result;
  }
};
exports.BREAK = BREAK;
exports.RETURN = RETURN;


/***/ }),

/***/ "../node_modules/core-js/modules/_function-to-string.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/modules/_function-to-string.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/modules/_shared.js")('native-function-to-string', Function.toString);


/***/ }),

/***/ "../node_modules/core-js/modules/_global.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_global.js ***!
  \**************************************************/
/***/ ((module) => {

// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
var global = module.exports = typeof window != 'undefined' && window.Math == Math
  ? window : typeof self != 'undefined' && self.Math == Math ? self
  // eslint-disable-next-line no-new-func
  : Function('return this')();
if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/modules/_has.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_has.js ***!
  \***********************************************/
/***/ ((module) => {

var hasOwnProperty = {}.hasOwnProperty;
module.exports = function (it, key) {
  return hasOwnProperty.call(it, key);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_hide.js":
/*!************************************************!*\
  !*** ../node_modules/core-js/modules/_hide.js ***!
  \************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/modules/_property-desc.js");
module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? function (object, key, value) {
  return dP.f(object, key, createDesc(1, value));
} : function (object, key, value) {
  object[key] = value;
  return object;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_html.js":
/*!************************************************!*\
  !*** ../node_modules/core-js/modules/_html.js ***!
  \************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js").document;
module.exports = document && document.documentElement;


/***/ }),

/***/ "../node_modules/core-js/modules/_ie8-dom-define.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/_ie8-dom-define.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") && !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () {
  return Object.defineProperty(__webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/modules/_dom-create.js")('div'), 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/modules/_inherit-if-required.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/modules/_inherit-if-required.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var setPrototypeOf = __webpack_require__(/*! ./_set-proto */ "../node_modules/core-js/modules/_set-proto.js").set;
module.exports = function (that, target, C) {
  var S = target.constructor;
  var P;
  if (S !== C && typeof S == 'function' && (P = S.prototype) !== C.prototype && isObject(P) && setPrototypeOf) {
    setPrototypeOf(that, P);
  } return that;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_invoke.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_invoke.js ***!
  \**************************************************/
/***/ ((module) => {

// fast apply, http://jsperf.lnkit.com/fast-apply/5
module.exports = function (fn, args, that) {
  var un = that === undefined;
  switch (args.length) {
    case 0: return un ? fn()
                      : fn.call(that);
    case 1: return un ? fn(args[0])
                      : fn.call(that, args[0]);
    case 2: return un ? fn(args[0], args[1])
                      : fn.call(that, args[0], args[1]);
    case 3: return un ? fn(args[0], args[1], args[2])
                      : fn.call(that, args[0], args[1], args[2]);
    case 4: return un ? fn(args[0], args[1], args[2], args[3])
                      : fn.call(that, args[0], args[1], args[2], args[3]);
  } return fn.apply(that, args);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_iobject.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_iobject.js ***!
  \***************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// fallback for non-array-like ES3 and non-enumerable old V8 strings
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
// eslint-disable-next-line no-prototype-builtins
module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
  return cof(it) == 'String' ? it.split('') : Object(it);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_is-array-iter.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_is-array-iter.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// check on default Array iterator
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/modules/_iterators.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('iterator');
var ArrayProto = Array.prototype;

module.exports = function (it) {
  return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_is-array.js":
/*!****************************************************!*\
  !*** ../node_modules/core-js/modules/_is-array.js ***!
  \****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.2.2 IsArray(argument)
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
module.exports = Array.isArray || function isArray(arg) {
  return cof(arg) == 'Array';
};


/***/ }),

/***/ "../node_modules/core-js/modules/_is-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_is-object.js ***!
  \*****************************************************/
/***/ ((module) => {

module.exports = function (it) {
  return typeof it === 'object' ? it !== null : typeof it === 'function';
};


/***/ }),

/***/ "../node_modules/core-js/modules/_is-regexp.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_is-regexp.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.2.8 IsRegExp(argument)
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
var MATCH = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('match');
module.exports = function (it) {
  var isRegExp;
  return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp');
};


/***/ }),

/***/ "../node_modules/core-js/modules/_iter-call.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_iter-call.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// call something on iterator step with safe closing on error
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
module.exports = function (iterator, fn, value, entries) {
  try {
    return entries ? fn(anObject(value)[0], value[1]) : fn(value);
  // 7.4.6 IteratorClose(iterator, completion)
  } catch (e) {
    var ret = iterator['return'];
    if (ret !== undefined) anObject(ret.call(iterator));
    throw e;
  }
};


/***/ }),

/***/ "../node_modules/core-js/modules/_iter-create.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_iter-create.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/modules/_object-create.js");
var descriptor = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/modules/_property-desc.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/modules/_set-to-string-tag.js");
var IteratorPrototype = {};

// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
__webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js")(IteratorPrototype, __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('iterator'), function () { return this; });

module.exports = function (Constructor, NAME, next) {
  Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });
  setToStringTag(Constructor, NAME + ' Iterator');
};


/***/ }),

/***/ "../node_modules/core-js/modules/_iter-define.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_iter-define.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/modules/_library.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/modules/_iterators.js");
var $iterCreate = __webpack_require__(/*! ./_iter-create */ "../node_modules/core-js/modules/_iter-create.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/modules/_set-to-string-tag.js");
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/modules/_object-gpo.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('iterator');
var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`
var FF_ITERATOR = '@@iterator';
var KEYS = 'keys';
var VALUES = 'values';

var returnThis = function () { return this; };

module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {
  $iterCreate(Constructor, NAME, next);
  var getMethod = function (kind) {
    if (!BUGGY && kind in proto) return proto[kind];
    switch (kind) {
      case KEYS: return function keys() { return new Constructor(this, kind); };
      case VALUES: return function values() { return new Constructor(this, kind); };
    } return function entries() { return new Constructor(this, kind); };
  };
  var TAG = NAME + ' Iterator';
  var DEF_VALUES = DEFAULT == VALUES;
  var VALUES_BUG = false;
  var proto = Base.prototype;
  var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];
  var $default = $native || getMethod(DEFAULT);
  var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;
  var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;
  var methods, key, IteratorPrototype;
  // Fix native
  if ($anyNative) {
    IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));
    if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {
      // Set @@toStringTag to native iterators
      setToStringTag(IteratorPrototype, TAG, true);
      // fix for some old engines
      if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);
    }
  }
  // fix Array#{values, @@iterator}.name in V8 / FF
  if (DEF_VALUES && $native && $native.name !== VALUES) {
    VALUES_BUG = true;
    $default = function values() { return $native.call(this); };
  }
  // Define iterator
  if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {
    hide(proto, ITERATOR, $default);
  }
  // Plug for library
  Iterators[NAME] = $default;
  Iterators[TAG] = returnThis;
  if (DEFAULT) {
    methods = {
      values: DEF_VALUES ? $default : getMethod(VALUES),
      keys: IS_SET ? $default : getMethod(KEYS),
      entries: $entries
    };
    if (FORCED) for (key in methods) {
      if (!(key in proto)) redefine(proto, key, methods[key]);
    } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
  }
  return methods;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_iter-detect.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_iter-detect.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('iterator');
var SAFE_CLOSING = false;

try {
  var riter = [7][ITERATOR]();
  riter['return'] = function () { SAFE_CLOSING = true; };
  // eslint-disable-next-line no-throw-literal
  Array.from(riter, function () { throw 2; });
} catch (e) { /* empty */ }

module.exports = function (exec, skipClosing) {
  if (!skipClosing && !SAFE_CLOSING) return false;
  var safe = false;
  try {
    var arr = [7];
    var iter = arr[ITERATOR]();
    iter.next = function () { return { done: safe = true }; };
    arr[ITERATOR] = function () { return iter; };
    exec(arr);
  } catch (e) { /* empty */ }
  return safe;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_iter-step.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_iter-step.js ***!
  \*****************************************************/
/***/ ((module) => {

module.exports = function (done, value) {
  return { value: value, done: !!done };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_iterators.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_iterators.js ***!
  \*****************************************************/
/***/ ((module) => {

module.exports = {};


/***/ }),

/***/ "../node_modules/core-js/modules/_library.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_library.js ***!
  \***************************************************/
/***/ ((module) => {

module.exports = false;


/***/ }),

/***/ "../node_modules/core-js/modules/_microtask.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_microtask.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var macrotask = __webpack_require__(/*! ./_task */ "../node_modules/core-js/modules/_task.js").set;
var Observer = global.MutationObserver || global.WebKitMutationObserver;
var process = global.process;
var Promise = global.Promise;
var isNode = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js")(process) == 'process';

module.exports = function () {
  var head, last, notify;

  var flush = function () {
    var parent, fn;
    if (isNode && (parent = process.domain)) parent.exit();
    while (head) {
      fn = head.fn;
      head = head.next;
      try {
        fn();
      } catch (e) {
        if (head) notify();
        else last = undefined;
        throw e;
      }
    } last = undefined;
    if (parent) parent.enter();
  };

  // Node.js
  if (isNode) {
    notify = function () {
      process.nextTick(flush);
    };
  // browsers with MutationObserver, except iOS Safari - https://github.com/zloirock/core-js/issues/339
  } else if (Observer && !(global.navigator && global.navigator.standalone)) {
    var toggle = true;
    var node = document.createTextNode('');
    new Observer(flush).observe(node, { characterData: true }); // eslint-disable-line no-new
    notify = function () {
      node.data = toggle = !toggle;
    };
  // environments with maybe non-completely correct, but existent Promise
  } else if (Promise && Promise.resolve) {
    // Promise.resolve without an argument throws an error in LG WebOS 2
    var promise = Promise.resolve(undefined);
    notify = function () {
      promise.then(flush);
    };
  // for other environments - macrotask based on:
  // - setImmediate
  // - MessageChannel
  // - window.postMessag
  // - onreadystatechange
  // - setTimeout
  } else {
    notify = function () {
      // strange IE + webpack dev server bug - use .call(global)
      macrotask.call(global, flush);
    };
  }

  return function (fn) {
    var task = { fn: fn, next: undefined };
    if (last) last.next = task;
    if (!head) {
      head = task;
      notify();
    } last = task;
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_new-promise-capability.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/modules/_new-promise-capability.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 25.4.1.5 NewPromiseCapability(C)
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/modules/_a-function.js");

function PromiseCapability(C) {
  var resolve, reject;
  this.promise = new C(function ($$resolve, $$reject) {
    if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor');
    resolve = $$resolve;
    reject = $$reject;
  });
  this.resolve = aFunction(resolve);
  this.reject = aFunction(reject);
}

module.exports.f = function (C) {
  return new PromiseCapability(C);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-create.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_object-create.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var dPs = __webpack_require__(/*! ./_object-dps */ "../node_modules/core-js/modules/_object-dps.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/modules/_enum-bug-keys.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/modules/_shared-key.js")('IE_PROTO');
var Empty = function () { /* empty */ };
var PROTOTYPE = 'prototype';

// Create object with fake `null` prototype: use iframe Object with cleared prototype
var createDict = function () {
  // Thrash, waste and sodomy: IE GC bug
  var iframe = __webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/modules/_dom-create.js")('iframe');
  var i = enumBugKeys.length;
  var lt = '<';
  var gt = '>';
  var iframeDocument;
  iframe.style.display = 'none';
  __webpack_require__(/*! ./_html */ "../node_modules/core-js/modules/_html.js").appendChild(iframe);
  iframe.src = 'javascript:'; // eslint-disable-line no-script-url
  // createDict = iframe.contentWindow.Object;
  // html.removeChild(iframe);
  iframeDocument = iframe.contentWindow.document;
  iframeDocument.open();
  iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);
  iframeDocument.close();
  createDict = iframeDocument.F;
  while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];
  return createDict();
};

module.exports = Object.create || function create(O, Properties) {
  var result;
  if (O !== null) {
    Empty[PROTOTYPE] = anObject(O);
    result = new Empty();
    Empty[PROTOTYPE] = null;
    // add "__proto__" for Object.getPrototypeOf polyfill
    result[IE_PROTO] = O;
  } else result = createDict();
  return Properties === undefined ? result : dPs(result, Properties);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-dp.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_object-dp.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/modules/_ie8-dom-define.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/modules/_to-primitive.js");
var dP = Object.defineProperty;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? Object.defineProperty : function defineProperty(O, P, Attributes) {
  anObject(O);
  P = toPrimitive(P, true);
  anObject(Attributes);
  if (IE8_DOM_DEFINE) try {
    return dP(O, P, Attributes);
  } catch (e) { /* empty */ }
  if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
  if ('value' in Attributes) O[P] = Attributes.value;
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-dps.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_object-dps.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/modules/_object-keys.js");

module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? Object.defineProperties : function defineProperties(O, Properties) {
  anObject(O);
  var keys = getKeys(Properties);
  var length = keys.length;
  var i = 0;
  var P;
  while (length > i) dP.f(O, P = keys[i++], Properties[P]);
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-gopd.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_object-gopd.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/modules/_object-pie.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/modules/_property-desc.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/modules/_to-iobject.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/modules/_to-primitive.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/modules/_ie8-dom-define.js");
var gOPD = Object.getOwnPropertyDescriptor;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? gOPD : function getOwnPropertyDescriptor(O, P) {
  O = toIObject(O);
  P = toPrimitive(P, true);
  if (IE8_DOM_DEFINE) try {
    return gOPD(O, P);
  } catch (e) { /* empty */ }
  if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-gopn.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_object-gopn.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)
var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/modules/_object-keys-internal.js");
var hiddenKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/modules/_enum-bug-keys.js").concat('length', 'prototype');

exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
  return $keys(O, hiddenKeys);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-gpo.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_object-gpo.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/modules/_to-object.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/modules/_shared-key.js")('IE_PROTO');
var ObjectProto = Object.prototype;

module.exports = Object.getPrototypeOf || function (O) {
  O = toObject(O);
  if (has(O, IE_PROTO)) return O[IE_PROTO];
  if (typeof O.constructor == 'function' && O instanceof O.constructor) {
    return O.constructor.prototype;
  } return O instanceof Object ? ObjectProto : null;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-keys-internal.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_object-keys-internal.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/modules/_to-iobject.js");
var arrayIndexOf = __webpack_require__(/*! ./_array-includes */ "../node_modules/core-js/modules/_array-includes.js")(false);
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/modules/_shared-key.js")('IE_PROTO');

module.exports = function (object, names) {
  var O = toIObject(object);
  var i = 0;
  var result = [];
  var key;
  for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);
  // Don't enum bug & hidden keys
  while (names.length > i) if (has(O, key = names[i++])) {
    ~arrayIndexOf(result, key) || result.push(key);
  }
  return result;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-keys.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_object-keys.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.14 / 15.2.3.14 Object.keys(O)
var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/modules/_object-keys-internal.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/modules/_enum-bug-keys.js");

module.exports = Object.keys || function keys(O) {
  return $keys(O, enumBugKeys);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-pie.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_object-pie.js ***!
  \******************************************************/
/***/ ((__unused_webpack_module, exports) => {

exports.f = {}.propertyIsEnumerable;


/***/ }),

/***/ "../node_modules/core-js/modules/_perform.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_perform.js ***!
  \***************************************************/
/***/ ((module) => {

module.exports = function (exec) {
  try {
    return { e: false, v: exec() };
  } catch (e) {
    return { e: true, v: e };
  }
};


/***/ }),

/***/ "../node_modules/core-js/modules/_promise-resolve.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/_promise-resolve.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var newPromiseCapability = __webpack_require__(/*! ./_new-promise-capability */ "../node_modules/core-js/modules/_new-promise-capability.js");

module.exports = function (C, x) {
  anObject(C);
  if (isObject(x) && x.constructor === C) return x;
  var promiseCapability = newPromiseCapability.f(C);
  var resolve = promiseCapability.resolve;
  resolve(x);
  return promiseCapability.promise;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_property-desc.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_property-desc.js ***!
  \*********************************************************/
/***/ ((module) => {

module.exports = function (bitmap, value) {
  return {
    enumerable: !(bitmap & 1),
    configurable: !(bitmap & 2),
    writable: !(bitmap & 4),
    value: value
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_redefine-all.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/modules/_redefine-all.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
module.exports = function (target, src, safe) {
  for (var key in src) redefine(target, key, src[key], safe);
  return target;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_redefine.js":
/*!****************************************************!*\
  !*** ../node_modules/core-js/modules/_redefine.js ***!
  \****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var SRC = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/modules/_uid.js")('src');
var $toString = __webpack_require__(/*! ./_function-to-string */ "../node_modules/core-js/modules/_function-to-string.js");
var TO_STRING = 'toString';
var TPL = ('' + $toString).split(TO_STRING);

__webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js").inspectSource = function (it) {
  return $toString.call(it);
};

(module.exports = function (O, key, val, safe) {
  var isFunction = typeof val == 'function';
  if (isFunction) has(val, 'name') || hide(val, 'name', key);
  if (O[key] === val) return;
  if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));
  if (O === global) {
    O[key] = val;
  } else if (!safe) {
    delete O[key];
    hide(O, key, val);
  } else if (O[key]) {
    O[key] = val;
  } else {
    hide(O, key, val);
  }
// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
})(Function.prototype, TO_STRING, function toString() {
  return typeof this == 'function' && this[SRC] || $toString.call(this);
});


/***/ }),

/***/ "../node_modules/core-js/modules/_regexp-exec-abstract.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_regexp-exec-abstract.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/modules/_classof.js");
var builtinExec = RegExp.prototype.exec;

 // `RegExpExec` abstract operation
// https://tc39.github.io/ecma262/#sec-regexpexec
module.exports = function (R, S) {
  var exec = R.exec;
  if (typeof exec === 'function') {
    var result = exec.call(R, S);
    if (typeof result !== 'object') {
      throw new TypeError('RegExp exec method returned something other than an Object or null');
    }
    return result;
  }
  if (classof(R) !== 'RegExp') {
    throw new TypeError('RegExp#exec called on incompatible receiver');
  }
  return builtinExec.call(R, S);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_regexp-exec.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_regexp-exec.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var regexpFlags = __webpack_require__(/*! ./_flags */ "../node_modules/core-js/modules/_flags.js");

var nativeExec = RegExp.prototype.exec;
// This always refers to the native implementation, because the
// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,
// which loads this file before patching the method.
var nativeReplace = String.prototype.replace;

var patchedExec = nativeExec;

var LAST_INDEX = 'lastIndex';

var UPDATES_LAST_INDEX_WRONG = (function () {
  var re1 = /a/,
      re2 = /b*/g;
  nativeExec.call(re1, 'a');
  nativeExec.call(re2, 'a');
  return re1[LAST_INDEX] !== 0 || re2[LAST_INDEX] !== 0;
})();

// nonparticipating capturing group, copied from es5-shim's String#split patch.
var NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;

var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED;

if (PATCH) {
  patchedExec = function exec(str) {
    var re = this;
    var lastIndex, reCopy, match, i;

    if (NPCG_INCLUDED) {
      reCopy = new RegExp('^' + re.source + '$(?!\\s)', regexpFlags.call(re));
    }
    if (UPDATES_LAST_INDEX_WRONG) lastIndex = re[LAST_INDEX];

    match = nativeExec.call(re, str);

    if (UPDATES_LAST_INDEX_WRONG && match) {
      re[LAST_INDEX] = re.global ? match.index + match[0].length : lastIndex;
    }
    if (NPCG_INCLUDED && match && match.length > 1) {
      // Fix browsers whose `exec` methods don't consistently return `undefined`
      // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/
      // eslint-disable-next-line no-loop-func
      nativeReplace.call(match[0], reCopy, function () {
        for (i = 1; i < arguments.length - 2; i++) {
          if (arguments[i] === undefined) match[i] = undefined;
        }
      });
    }

    return match;
  };
}

module.exports = patchedExec;


/***/ }),

/***/ "../node_modules/core-js/modules/_same-value.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_same-value.js ***!
  \******************************************************/
/***/ ((module) => {

// 7.2.9 SameValue(x, y)
module.exports = Object.is || function is(x, y) {
  // eslint-disable-next-line no-self-compare
  return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_set-proto.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_set-proto.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Works with __proto__ only. Old v8 can't work with null proto objects.
/* eslint-disable no-proto */
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var check = function (O, proto) {
  anObject(O);
  if (!isObject(proto) && proto !== null) throw TypeError(proto + ": can't set as prototype!");
};
module.exports = {
  set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line
    function (test, buggy, set) {
      try {
        set = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/modules/_ctx.js")(Function.call, __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/modules/_object-gopd.js").f(Object.prototype, '__proto__').set, 2);
        set(test, []);
        buggy = !(test instanceof Array);
      } catch (e) { buggy = true; }
      return function setPrototypeOf(O, proto) {
        check(O, proto);
        if (buggy) O.__proto__ = proto;
        else set(O, proto);
        return O;
      };
    }({}, false) : undefined),
  check: check
};


/***/ }),

/***/ "../node_modules/core-js/modules/_set-species.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_set-species.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js");
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('species');

module.exports = function (KEY) {
  var C = global[KEY];
  if (DESCRIPTORS && C && !C[SPECIES]) dP.f(C, SPECIES, {
    configurable: true,
    get: function () { return this; }
  });
};


/***/ }),

/***/ "../node_modules/core-js/modules/_set-to-string-tag.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/_set-to-string-tag.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var def = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js").f;
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('toStringTag');

module.exports = function (it, tag, stat) {
  if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });
};


/***/ }),

/***/ "../node_modules/core-js/modules/_shared-key.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_shared-key.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var shared = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/modules/_shared.js")('keys');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/modules/_uid.js");
module.exports = function (key) {
  return shared[key] || (shared[key] = uid(key));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_shared.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_shared.js ***!
  \**************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var SHARED = '__core-js_shared__';
var store = global[SHARED] || (global[SHARED] = {});

(module.exports = function (key, value) {
  return store[key] || (store[key] = value !== undefined ? value : {});
})('versions', []).push({
  version: core.version,
  mode: __webpack_require__(/*! ./_library */ "../node_modules/core-js/modules/_library.js") ? 'pure' : 'global',
  copyright: '© 2020 Denis Pushkarev (zloirock.ru)'
});


/***/ }),

/***/ "../node_modules/core-js/modules/_species-constructor.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/modules/_species-constructor.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.3.20 SpeciesConstructor(O, defaultConstructor)
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/modules/_a-function.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('species');
module.exports = function (O, D) {
  var C = anObject(O).constructor;
  var S;
  return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_strict-method.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_strict-method.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js");

module.exports = function (method, arg) {
  return !!method && fails(function () {
    // eslint-disable-next-line no-useless-call
    arg ? method.call(null, function () { /* empty */ }, 1) : method.call(null);
  });
};


/***/ }),

/***/ "../node_modules/core-js/modules/_string-at.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_string-at.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
// true  -> String#at
// false -> String#codePointAt
module.exports = function (TO_STRING) {
  return function (that, pos) {
    var s = String(defined(that));
    var i = toInteger(pos);
    var l = s.length;
    var a, b;
    if (i < 0 || i >= l) return TO_STRING ? '' : undefined;
    a = s.charCodeAt(i);
    return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
      ? TO_STRING ? s.charAt(i) : a
      : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_string-context.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/_string-context.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// helper for String#{startsWith, endsWith, includes}
var isRegExp = __webpack_require__(/*! ./_is-regexp */ "../node_modules/core-js/modules/_is-regexp.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");

module.exports = function (that, searchString, NAME) {
  if (isRegExp(searchString)) throw TypeError('String#' + NAME + " doesn't accept regex!");
  return String(defined(that));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_string-html.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_string-html.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
var quot = /"/g;
// B.2.3.2.1 CreateHTML(string, tag, attribute, value)
var createHTML = function (string, tag, attribute, value) {
  var S = String(defined(string));
  var p1 = '<' + tag;
  if (attribute !== '') p1 += ' ' + attribute + '="' + String(value).replace(quot, '&quot;') + '"';
  return p1 + '>' + S + '</' + tag + '>';
};
module.exports = function (NAME, exec) {
  var O = {};
  O[NAME] = exec(createHTML);
  $export($export.P + $export.F * fails(function () {
    var test = ''[NAME]('"');
    return test !== test.toLowerCase() || test.split('"').length > 3;
  }), 'String', O);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_string-trim.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_string-trim.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js");
var spaces = __webpack_require__(/*! ./_string-ws */ "../node_modules/core-js/modules/_string-ws.js");
var space = '[' + spaces + ']';
var non = '\u200b\u0085';
var ltrim = RegExp('^' + space + space + '*');
var rtrim = RegExp(space + space + '*$');

var exporter = function (KEY, exec, ALIAS) {
  var exp = {};
  var FORCE = fails(function () {
    return !!spaces[KEY]() || non[KEY]() != non;
  });
  var fn = exp[KEY] = FORCE ? exec(trim) : spaces[KEY];
  if (ALIAS) exp[ALIAS] = fn;
  $export($export.P + $export.F * FORCE, 'String', exp);
};

// 1 -> String#trimLeft
// 2 -> String#trimRight
// 3 -> String#trim
var trim = exporter.trim = function (string, TYPE) {
  string = String(defined(string));
  if (TYPE & 1) string = string.replace(ltrim, '');
  if (TYPE & 2) string = string.replace(rtrim, '');
  return string;
};

module.exports = exporter;


/***/ }),

/***/ "../node_modules/core-js/modules/_string-ws.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_string-ws.js ***!
  \*****************************************************/
/***/ ((module) => {

module.exports = '\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003' +
  '\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF';


/***/ }),

/***/ "../node_modules/core-js/modules/_task.js":
/*!************************************************!*\
  !*** ../node_modules/core-js/modules/_task.js ***!
  \************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/modules/_ctx.js");
var invoke = __webpack_require__(/*! ./_invoke */ "../node_modules/core-js/modules/_invoke.js");
var html = __webpack_require__(/*! ./_html */ "../node_modules/core-js/modules/_html.js");
var cel = __webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/modules/_dom-create.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var process = global.process;
var setTask = global.setImmediate;
var clearTask = global.clearImmediate;
var MessageChannel = global.MessageChannel;
var Dispatch = global.Dispatch;
var counter = 0;
var queue = {};
var ONREADYSTATECHANGE = 'onreadystatechange';
var defer, channel, port;
var run = function () {
  var id = +this;
  // eslint-disable-next-line no-prototype-builtins
  if (queue.hasOwnProperty(id)) {
    var fn = queue[id];
    delete queue[id];
    fn();
  }
};
var listener = function (event) {
  run.call(event.data);
};
// Node.js 0.9+ & IE10+ has setImmediate, otherwise:
if (!setTask || !clearTask) {
  setTask = function setImmediate(fn) {
    var args = [];
    var i = 1;
    while (arguments.length > i) args.push(arguments[i++]);
    queue[++counter] = function () {
      // eslint-disable-next-line no-new-func
      invoke(typeof fn == 'function' ? fn : Function(fn), args);
    };
    defer(counter);
    return counter;
  };
  clearTask = function clearImmediate(id) {
    delete queue[id];
  };
  // Node.js 0.8-
  if (__webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js")(process) == 'process') {
    defer = function (id) {
      process.nextTick(ctx(run, id, 1));
    };
  // Sphere (JS game engine) Dispatch API
  } else if (Dispatch && Dispatch.now) {
    defer = function (id) {
      Dispatch.now(ctx(run, id, 1));
    };
  // Browsers with MessageChannel, includes WebWorkers
  } else if (MessageChannel) {
    channel = new MessageChannel();
    port = channel.port2;
    channel.port1.onmessage = listener;
    defer = ctx(port.postMessage, port, 1);
  // Browsers with postMessage, skip WebWorkers
  // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'
  } else if (global.addEventListener && typeof postMessage == 'function' && !global.importScripts) {
    defer = function (id) {
      global.postMessage(id + '', '*');
    };
    global.addEventListener('message', listener, false);
  // IE8-
  } else if (ONREADYSTATECHANGE in cel('script')) {
    defer = function (id) {
      html.appendChild(cel('script'))[ONREADYSTATECHANGE] = function () {
        html.removeChild(this);
        run.call(id);
      };
    };
  // Rest old browsers
  } else {
    defer = function (id) {
      setTimeout(ctx(run, id, 1), 0);
    };
  }
}
module.exports = {
  set: setTask,
  clear: clearTask
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-absolute-index.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/_to-absolute-index.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var max = Math.max;
var min = Math.min;
module.exports = function (index, length) {
  index = toInteger(index);
  return index < 0 ? max(index + length, 0) : min(index, length);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-integer.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_to-integer.js ***!
  \******************************************************/
/***/ ((module) => {

// 7.1.4 ToInteger
var ceil = Math.ceil;
var floor = Math.floor;
module.exports = function (it) {
  return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-iobject.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_to-iobject.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// to indexed object, toObject with fallback for non-array-like ES3 strings
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/modules/_iobject.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
module.exports = function (it) {
  return IObject(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-length.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_to-length.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.15 ToLength
var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var min = Math.min;
module.exports = function (it) {
  return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_to-object.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.13 ToObject(argument)
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
module.exports = function (it) {
  return Object(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-primitive.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/modules/_to-primitive.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.1 ToPrimitive(input [, PreferredType])
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
// instead of the ES6 spec version, we didn't implement @@toPrimitive case
// and the second argument - flag - preferred type is a string
module.exports = function (it, S) {
  if (!isObject(it)) return it;
  var fn, val;
  if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
  if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  throw TypeError("Can't convert object to primitive value");
};


/***/ }),

/***/ "../node_modules/core-js/modules/_uid.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_uid.js ***!
  \***********************************************/
/***/ ((module) => {

var id = 0;
var px = Math.random();
module.exports = function (key) {
  return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_user-agent.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_user-agent.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var navigator = global.navigator;

module.exports = navigator && navigator.userAgent || '';


/***/ }),

/***/ "../node_modules/core-js/modules/_wks.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_wks.js ***!
  \***********************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var store = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/modules/_shared.js")('wks');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/modules/_uid.js");
var Symbol = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js").Symbol;
var USE_SYMBOL = typeof Symbol == 'function';

var $exports = module.exports = function (name) {
  return store[name] || (store[name] =
    USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
};

$exports.store = store;


/***/ }),

/***/ "../node_modules/core-js/modules/core.get-iterator-method.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/modules/core.get-iterator-method.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/modules/_classof.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('iterator');
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/modules/_iterators.js");
module.exports = __webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js").getIteratorMethod = function (it) {
  if (it != undefined) return it[ITERATOR]
    || it['@@iterator']
    || Iterators[classof(it)];
};


/***/ }),

/***/ "../node_modules/core-js/modules/es6.array.filter.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.array.filter.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var $filter = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/modules/_array-methods.js")(2);

$export($export.P + $export.F * !__webpack_require__(/*! ./_strict-method */ "../node_modules/core-js/modules/_strict-method.js")([].filter, true), 'Array', {
  // 22.1.3.7 / 15.4.4.20 Array.prototype.filter(callbackfn [, thisArg])
  filter: function filter(callbackfn /* , thisArg */) {
    return $filter(this, callbackfn, arguments[1]);
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.array.find-index.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.array.find-index.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 22.1.3.9 Array.prototype.findIndex(predicate, thisArg = undefined)
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var $find = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/modules/_array-methods.js")(6);
var KEY = 'findIndex';
var forced = true;
// Shouldn't skip holes
if (KEY in []) Array(1)[KEY](function () { forced = false; });
$export($export.P + $export.F * forced, 'Array', {
  findIndex: function findIndex(callbackfn /* , that = undefined */) {
    return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
  }
});
__webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/modules/_add-to-unscopables.js")(KEY);


/***/ }),

/***/ "../node_modules/core-js/modules/es6.array.find.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.array.find.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 22.1.3.8 Array.prototype.find(predicate, thisArg = undefined)
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var $find = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/modules/_array-methods.js")(5);
var KEY = 'find';
var forced = true;
// Shouldn't skip holes
if (KEY in []) Array(1)[KEY](function () { forced = false; });
$export($export.P + $export.F * forced, 'Array', {
  find: function find(callbackfn /* , that = undefined */) {
    return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
  }
});
__webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/modules/_add-to-unscopables.js")(KEY);


/***/ }),

/***/ "../node_modules/core-js/modules/es6.array.iterator.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.array.iterator.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var addToUnscopables = __webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/modules/_add-to-unscopables.js");
var step = __webpack_require__(/*! ./_iter-step */ "../node_modules/core-js/modules/_iter-step.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/modules/_iterators.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/modules/_to-iobject.js");

// 22.1.3.4 Array.prototype.entries()
// 22.1.3.13 Array.prototype.keys()
// 22.1.3.29 Array.prototype.values()
// 22.1.3.30 Array.prototype[@@iterator]()
module.exports = __webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/modules/_iter-define.js")(Array, 'Array', function (iterated, kind) {
  this._t = toIObject(iterated); // target
  this._i = 0;                   // next index
  this._k = kind;                // kind
// 22.1.5.2.1 %ArrayIteratorPrototype%.next()
}, function () {
  var O = this._t;
  var kind = this._k;
  var index = this._i++;
  if (!O || index >= O.length) {
    this._t = undefined;
    return step(1);
  }
  if (kind == 'keys') return step(0, index);
  if (kind == 'values') return step(0, O[index]);
  return step(0, [index, O[index]]);
}, 'values');

// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
Iterators.Arguments = Iterators.Array;

addToUnscopables('keys');
addToUnscopables('values');
addToUnscopables('entries');


/***/ }),

/***/ "../node_modules/core-js/modules/es6.array.map.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.array.map.js ***!
  \********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var $map = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/modules/_array-methods.js")(1);

$export($export.P + $export.F * !__webpack_require__(/*! ./_strict-method */ "../node_modules/core-js/modules/_strict-method.js")([].map, true), 'Array', {
  // 22.1.3.15 / 15.4.4.19 Array.prototype.map(callbackfn [, thisArg])
  map: function map(callbackfn /* , thisArg */) {
    return $map(this, callbackfn, arguments[1]);
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.array.slice.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.array.slice.js ***!
  \**********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var html = __webpack_require__(/*! ./_html */ "../node_modules/core-js/modules/_html.js");
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
var toAbsoluteIndex = __webpack_require__(/*! ./_to-absolute-index */ "../node_modules/core-js/modules/_to-absolute-index.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var arraySlice = [].slice;

// fallback for not array-like ES3 strings and DOM objects
$export($export.P + $export.F * __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () {
  if (html) arraySlice.call(html);
}), 'Array', {
  slice: function slice(begin, end) {
    var len = toLength(this.length);
    var klass = cof(this);
    end = end === undefined ? len : end;
    if (klass == 'Array') return arraySlice.call(this, begin, end);
    var start = toAbsoluteIndex(begin, len);
    var upTo = toAbsoluteIndex(end, len);
    var size = toLength(upTo - start);
    var cloned = new Array(size);
    var i = 0;
    for (; i < size; i++) cloned[i] = klass == 'String'
      ? this.charAt(start + i)
      : this[start + i];
    return cloned;
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.function.name.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.function.name.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js").f;
var FProto = Function.prototype;
var nameRE = /^\s*function ([^ (]*)/;
var NAME = 'name';

// 19.2.4.2 name
NAME in FProto || __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") && dP(FProto, NAME, {
  configurable: true,
  get: function () {
    try {
      return ('' + this).match(nameRE)[1];
    } catch (e) {
      return '';
    }
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.number.constructor.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.number.constructor.js ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
var inheritIfRequired = __webpack_require__(/*! ./_inherit-if-required */ "../node_modules/core-js/modules/_inherit-if-required.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/modules/_to-primitive.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js");
var gOPN = __webpack_require__(/*! ./_object-gopn */ "../node_modules/core-js/modules/_object-gopn.js").f;
var gOPD = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/modules/_object-gopd.js").f;
var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js").f;
var $trim = __webpack_require__(/*! ./_string-trim */ "../node_modules/core-js/modules/_string-trim.js").trim;
var NUMBER = 'Number';
var $Number = global[NUMBER];
var Base = $Number;
var proto = $Number.prototype;
// Opera ~12 has broken Object#toString
var BROKEN_COF = cof(__webpack_require__(/*! ./_object-create */ "../node_modules/core-js/modules/_object-create.js")(proto)) == NUMBER;
var TRIM = 'trim' in String.prototype;

// 7.1.3 ToNumber(argument)
var toNumber = function (argument) {
  var it = toPrimitive(argument, false);
  if (typeof it == 'string' && it.length > 2) {
    it = TRIM ? it.trim() : $trim(it, 3);
    var first = it.charCodeAt(0);
    var third, radix, maxCode;
    if (first === 43 || first === 45) {
      third = it.charCodeAt(2);
      if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix
    } else if (first === 48) {
      switch (it.charCodeAt(1)) {
        case 66: case 98: radix = 2; maxCode = 49; break; // fast equal /^0b[01]+$/i
        case 79: case 111: radix = 8; maxCode = 55; break; // fast equal /^0o[0-7]+$/i
        default: return +it;
      }
      for (var digits = it.slice(2), i = 0, l = digits.length, code; i < l; i++) {
        code = digits.charCodeAt(i);
        // parseInt parses a string to a first unavailable symbol
        // but ToNumber should return NaN if a string contains unavailable symbols
        if (code < 48 || code > maxCode) return NaN;
      } return parseInt(digits, radix);
    }
  } return +it;
};

if (!$Number(' 0o1') || !$Number('0b1') || $Number('+0x1')) {
  $Number = function Number(value) {
    var it = arguments.length < 1 ? 0 : value;
    var that = this;
    return that instanceof $Number
      // check on 1..constructor(foo) case
      && (BROKEN_COF ? fails(function () { proto.valueOf.call(that); }) : cof(that) != NUMBER)
        ? inheritIfRequired(new Base(toNumber(it)), that, $Number) : toNumber(it);
  };
  for (var keys = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? gOPN(Base) : (
    // ES3:
    'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +
    // ES6 (in case, if modules with ES6 Number statics required before):
    'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' +
    'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger'
  ).split(','), j = 0, key; keys.length > j; j++) {
    if (has(Base, key = keys[j]) && !has($Number, key)) {
      dP($Number, key, gOPD(Base, key));
    }
  }
  $Number.prototype = proto;
  proto.constructor = $Number;
  __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js")(global, NUMBER, $Number);
}


/***/ }),

/***/ "../node_modules/core-js/modules/es6.object.to-string.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.object.to-string.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 19.1.3.6 Object.prototype.toString()
var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/modules/_classof.js");
var test = {};
test[__webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('toStringTag')] = 'z';
if (test + '' != '[object z]') {
  __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js")(Object.prototype, 'toString', function toString() {
    return '[object ' + classof(this) + ']';
  }, true);
}


/***/ }),

/***/ "../node_modules/core-js/modules/es6.promise.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/es6.promise.js ***!
  \******************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/modules/_library.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/modules/_ctx.js");
var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/modules/_classof.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/modules/_a-function.js");
var anInstance = __webpack_require__(/*! ./_an-instance */ "../node_modules/core-js/modules/_an-instance.js");
var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/modules/_for-of.js");
var speciesConstructor = __webpack_require__(/*! ./_species-constructor */ "../node_modules/core-js/modules/_species-constructor.js");
var task = __webpack_require__(/*! ./_task */ "../node_modules/core-js/modules/_task.js").set;
var microtask = __webpack_require__(/*! ./_microtask */ "../node_modules/core-js/modules/_microtask.js")();
var newPromiseCapabilityModule = __webpack_require__(/*! ./_new-promise-capability */ "../node_modules/core-js/modules/_new-promise-capability.js");
var perform = __webpack_require__(/*! ./_perform */ "../node_modules/core-js/modules/_perform.js");
var userAgent = __webpack_require__(/*! ./_user-agent */ "../node_modules/core-js/modules/_user-agent.js");
var promiseResolve = __webpack_require__(/*! ./_promise-resolve */ "../node_modules/core-js/modules/_promise-resolve.js");
var PROMISE = 'Promise';
var TypeError = global.TypeError;
var process = global.process;
var versions = process && process.versions;
var v8 = versions && versions.v8 || '';
var $Promise = global[PROMISE];
var isNode = classof(process) == 'process';
var empty = function () { /* empty */ };
var Internal, newGenericPromiseCapability, OwnPromiseCapability, Wrapper;
var newPromiseCapability = newGenericPromiseCapability = newPromiseCapabilityModule.f;

var USE_NATIVE = !!function () {
  try {
    // correct subclassing with @@species support
    var promise = $Promise.resolve(1);
    var FakePromise = (promise.constructor = {})[__webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('species')] = function (exec) {
      exec(empty, empty);
    };
    // unhandled rejections tracking support, NodeJS Promise without it fails @@species test
    return (isNode || typeof PromiseRejectionEvent == 'function')
      && promise.then(empty) instanceof FakePromise
      // v8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables
      // https://bugs.chromium.org/p/chromium/issues/detail?id=830565
      // we can't detect it synchronously, so just check versions
      && v8.indexOf('6.6') !== 0
      && userAgent.indexOf('Chrome/66') === -1;
  } catch (e) { /* empty */ }
}();

// helpers
var isThenable = function (it) {
  var then;
  return isObject(it) && typeof (then = it.then) == 'function' ? then : false;
};
var notify = function (promise, isReject) {
  if (promise._n) return;
  promise._n = true;
  var chain = promise._c;
  microtask(function () {
    var value = promise._v;
    var ok = promise._s == 1;
    var i = 0;
    var run = function (reaction) {
      var handler = ok ? reaction.ok : reaction.fail;
      var resolve = reaction.resolve;
      var reject = reaction.reject;
      var domain = reaction.domain;
      var result, then, exited;
      try {
        if (handler) {
          if (!ok) {
            if (promise._h == 2) onHandleUnhandled(promise);
            promise._h = 1;
          }
          if (handler === true) result = value;
          else {
            if (domain) domain.enter();
            result = handler(value); // may throw
            if (domain) {
              domain.exit();
              exited = true;
            }
          }
          if (result === reaction.promise) {
            reject(TypeError('Promise-chain cycle'));
          } else if (then = isThenable(result)) {
            then.call(result, resolve, reject);
          } else resolve(result);
        } else reject(value);
      } catch (e) {
        if (domain && !exited) domain.exit();
        reject(e);
      }
    };
    while (chain.length > i) run(chain[i++]); // variable length - can't use forEach
    promise._c = [];
    promise._n = false;
    if (isReject && !promise._h) onUnhandled(promise);
  });
};
var onUnhandled = function (promise) {
  task.call(global, function () {
    var value = promise._v;
    var unhandled = isUnhandled(promise);
    var result, handler, console;
    if (unhandled) {
      result = perform(function () {
        if (isNode) {
          process.emit('unhandledRejection', value, promise);
        } else if (handler = global.onunhandledrejection) {
          handler({ promise: promise, reason: value });
        } else if ((console = global.console) && console.error) {
          console.error('Unhandled promise rejection', value);
        }
      });
      // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should
      promise._h = isNode || isUnhandled(promise) ? 2 : 1;
    } promise._a = undefined;
    if (unhandled && result.e) throw result.v;
  });
};
var isUnhandled = function (promise) {
  return promise._h !== 1 && (promise._a || promise._c).length === 0;
};
var onHandleUnhandled = function (promise) {
  task.call(global, function () {
    var handler;
    if (isNode) {
      process.emit('rejectionHandled', promise);
    } else if (handler = global.onrejectionhandled) {
      handler({ promise: promise, reason: promise._v });
    }
  });
};
var $reject = function (value) {
  var promise = this;
  if (promise._d) return;
  promise._d = true;
  promise = promise._w || promise; // unwrap
  promise._v = value;
  promise._s = 2;
  if (!promise._a) promise._a = promise._c.slice();
  notify(promise, true);
};
var $resolve = function (value) {
  var promise = this;
  var then;
  if (promise._d) return;
  promise._d = true;
  promise = promise._w || promise; // unwrap
  try {
    if (promise === value) throw TypeError("Promise can't be resolved itself");
    if (then = isThenable(value)) {
      microtask(function () {
        var wrapper = { _w: promise, _d: false }; // wrap
        try {
          then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1));
        } catch (e) {
          $reject.call(wrapper, e);
        }
      });
    } else {
      promise._v = value;
      promise._s = 1;
      notify(promise, false);
    }
  } catch (e) {
    $reject.call({ _w: promise, _d: false }, e); // wrap
  }
};

// constructor polyfill
if (!USE_NATIVE) {
  // 25.4.3.1 Promise(executor)
  $Promise = function Promise(executor) {
    anInstance(this, $Promise, PROMISE, '_h');
    aFunction(executor);
    Internal.call(this);
    try {
      executor(ctx($resolve, this, 1), ctx($reject, this, 1));
    } catch (err) {
      $reject.call(this, err);
    }
  };
  // eslint-disable-next-line no-unused-vars
  Internal = function Promise(executor) {
    this._c = [];             // <- awaiting reactions
    this._a = undefined;      // <- checked in isUnhandled reactions
    this._s = 0;              // <- state
    this._d = false;          // <- done
    this._v = undefined;      // <- value
    this._h = 0;              // <- rejection state, 0 - default, 1 - handled, 2 - unhandled
    this._n = false;          // <- notify
  };
  Internal.prototype = __webpack_require__(/*! ./_redefine-all */ "../node_modules/core-js/modules/_redefine-all.js")($Promise.prototype, {
    // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected)
    then: function then(onFulfilled, onRejected) {
      var reaction = newPromiseCapability(speciesConstructor(this, $Promise));
      reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;
      reaction.fail = typeof onRejected == 'function' && onRejected;
      reaction.domain = isNode ? process.domain : undefined;
      this._c.push(reaction);
      if (this._a) this._a.push(reaction);
      if (this._s) notify(this, false);
      return reaction.promise;
    },
    // 25.4.5.1 Promise.prototype.catch(onRejected)
    'catch': function (onRejected) {
      return this.then(undefined, onRejected);
    }
  });
  OwnPromiseCapability = function () {
    var promise = new Internal();
    this.promise = promise;
    this.resolve = ctx($resolve, promise, 1);
    this.reject = ctx($reject, promise, 1);
  };
  newPromiseCapabilityModule.f = newPromiseCapability = function (C) {
    return C === $Promise || C === Wrapper
      ? new OwnPromiseCapability(C)
      : newGenericPromiseCapability(C);
  };
}

$export($export.G + $export.W + $export.F * !USE_NATIVE, { Promise: $Promise });
__webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/modules/_set-to-string-tag.js")($Promise, PROMISE);
__webpack_require__(/*! ./_set-species */ "../node_modules/core-js/modules/_set-species.js")(PROMISE);
Wrapper = __webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js")[PROMISE];

// statics
$export($export.S + $export.F * !USE_NATIVE, PROMISE, {
  // 25.4.4.5 Promise.reject(r)
  reject: function reject(r) {
    var capability = newPromiseCapability(this);
    var $$reject = capability.reject;
    $$reject(r);
    return capability.promise;
  }
});
$export($export.S + $export.F * (LIBRARY || !USE_NATIVE), PROMISE, {
  // 25.4.4.6 Promise.resolve(x)
  resolve: function resolve(x) {
    return promiseResolve(LIBRARY && this === Wrapper ? $Promise : this, x);
  }
});
$export($export.S + $export.F * !(USE_NATIVE && __webpack_require__(/*! ./_iter-detect */ "../node_modules/core-js/modules/_iter-detect.js")(function (iter) {
  $Promise.all(iter)['catch'](empty);
})), PROMISE, {
  // 25.4.4.1 Promise.all(iterable)
  all: function all(iterable) {
    var C = this;
    var capability = newPromiseCapability(C);
    var resolve = capability.resolve;
    var reject = capability.reject;
    var result = perform(function () {
      var values = [];
      var index = 0;
      var remaining = 1;
      forOf(iterable, false, function (promise) {
        var $index = index++;
        var alreadyCalled = false;
        values.push(undefined);
        remaining++;
        C.resolve(promise).then(function (value) {
          if (alreadyCalled) return;
          alreadyCalled = true;
          values[$index] = value;
          --remaining || resolve(values);
        }, reject);
      });
      --remaining || resolve(values);
    });
    if (result.e) reject(result.v);
    return capability.promise;
  },
  // 25.4.4.4 Promise.race(iterable)
  race: function race(iterable) {
    var C = this;
    var capability = newPromiseCapability(C);
    var reject = capability.reject;
    var result = perform(function () {
      forOf(iterable, false, function (promise) {
        C.resolve(promise).then(capability.resolve, reject);
      });
    });
    if (result.e) reject(result.v);
    return capability.promise;
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.constructor.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.constructor.js ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var inheritIfRequired = __webpack_require__(/*! ./_inherit-if-required */ "../node_modules/core-js/modules/_inherit-if-required.js");
var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js").f;
var gOPN = __webpack_require__(/*! ./_object-gopn */ "../node_modules/core-js/modules/_object-gopn.js").f;
var isRegExp = __webpack_require__(/*! ./_is-regexp */ "../node_modules/core-js/modules/_is-regexp.js");
var $flags = __webpack_require__(/*! ./_flags */ "../node_modules/core-js/modules/_flags.js");
var $RegExp = global.RegExp;
var Base = $RegExp;
var proto = $RegExp.prototype;
var re1 = /a/g;
var re2 = /a/g;
// "new" creates a new object, old webkit buggy here
var CORRECT_NEW = new $RegExp(re1) !== re1;

if (__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") && (!CORRECT_NEW || __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () {
  re2[__webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('match')] = false;
  // RegExp constructor can alter flags and IsRegExp works correct with @@match
  return $RegExp(re1) != re1 || $RegExp(re2) == re2 || $RegExp(re1, 'i') != '/a/i';
}))) {
  $RegExp = function RegExp(p, f) {
    var tiRE = this instanceof $RegExp;
    var piRE = isRegExp(p);
    var fiU = f === undefined;
    return !tiRE && piRE && p.constructor === $RegExp && fiU ? p
      : inheritIfRequired(CORRECT_NEW
        ? new Base(piRE && !fiU ? p.source : p, f)
        : Base((piRE = p instanceof $RegExp) ? p.source : p, piRE && fiU ? $flags.call(p) : f)
      , tiRE ? this : proto, $RegExp);
  };
  var proxy = function (key) {
    key in $RegExp || dP($RegExp, key, {
      configurable: true,
      get: function () { return Base[key]; },
      set: function (it) { Base[key] = it; }
    });
  };
  for (var keys = gOPN(Base), i = 0; keys.length > i;) proxy(keys[i++]);
  proto.constructor = $RegExp;
  $RegExp.prototype = proto;
  __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js")(global, 'RegExp', $RegExp);
}

__webpack_require__(/*! ./_set-species */ "../node_modules/core-js/modules/_set-species.js")('RegExp');


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.exec.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.exec.js ***!
  \**********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var regexpExec = __webpack_require__(/*! ./_regexp-exec */ "../node_modules/core-js/modules/_regexp-exec.js");
__webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js")({
  target: 'RegExp',
  proto: true,
  forced: regexpExec !== /./.exec
}, {
  exec: regexpExec
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.flags.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.flags.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 21.2.5.3 get RegExp.prototype.flags()
if (__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") && /./g.flags != 'g') __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js").f(RegExp.prototype, 'flags', {
  configurable: true,
  get: __webpack_require__(/*! ./_flags */ "../node_modules/core-js/modules/_flags.js")
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.match.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.match.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var advanceStringIndex = __webpack_require__(/*! ./_advance-string-index */ "../node_modules/core-js/modules/_advance-string-index.js");
var regExpExec = __webpack_require__(/*! ./_regexp-exec-abstract */ "../node_modules/core-js/modules/_regexp-exec-abstract.js");

// @@match logic
__webpack_require__(/*! ./_fix-re-wks */ "../node_modules/core-js/modules/_fix-re-wks.js")('match', 1, function (defined, MATCH, $match, maybeCallNative) {
  return [
    // `String.prototype.match` method
    // https://tc39.github.io/ecma262/#sec-string.prototype.match
    function match(regexp) {
      var O = defined(this);
      var fn = regexp == undefined ? undefined : regexp[MATCH];
      return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));
    },
    // `RegExp.prototype[@@match]` method
    // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match
    function (regexp) {
      var res = maybeCallNative($match, regexp, this);
      if (res.done) return res.value;
      var rx = anObject(regexp);
      var S = String(this);
      if (!rx.global) return regExpExec(rx, S);
      var fullUnicode = rx.unicode;
      rx.lastIndex = 0;
      var A = [];
      var n = 0;
      var result;
      while ((result = regExpExec(rx, S)) !== null) {
        var matchStr = String(result[0]);
        A[n] = matchStr;
        if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
        n++;
      }
      return n === 0 ? null : A;
    }
  ];
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.replace.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.replace.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/modules/_to-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var advanceStringIndex = __webpack_require__(/*! ./_advance-string-index */ "../node_modules/core-js/modules/_advance-string-index.js");
var regExpExec = __webpack_require__(/*! ./_regexp-exec-abstract */ "../node_modules/core-js/modules/_regexp-exec-abstract.js");
var max = Math.max;
var min = Math.min;
var floor = Math.floor;
var SUBSTITUTION_SYMBOLS = /\$([$&`']|\d\d?|<[^>]*>)/g;
var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&`']|\d\d?)/g;

var maybeToString = function (it) {
  return it === undefined ? it : String(it);
};

// @@replace logic
__webpack_require__(/*! ./_fix-re-wks */ "../node_modules/core-js/modules/_fix-re-wks.js")('replace', 2, function (defined, REPLACE, $replace, maybeCallNative) {
  return [
    // `String.prototype.replace` method
    // https://tc39.github.io/ecma262/#sec-string.prototype.replace
    function replace(searchValue, replaceValue) {
      var O = defined(this);
      var fn = searchValue == undefined ? undefined : searchValue[REPLACE];
      return fn !== undefined
        ? fn.call(searchValue, O, replaceValue)
        : $replace.call(String(O), searchValue, replaceValue);
    },
    // `RegExp.prototype[@@replace]` method
    // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace
    function (regexp, replaceValue) {
      var res = maybeCallNative($replace, regexp, this, replaceValue);
      if (res.done) return res.value;

      var rx = anObject(regexp);
      var S = String(this);
      var functionalReplace = typeof replaceValue === 'function';
      if (!functionalReplace) replaceValue = String(replaceValue);
      var global = rx.global;
      if (global) {
        var fullUnicode = rx.unicode;
        rx.lastIndex = 0;
      }
      var results = [];
      while (true) {
        var result = regExpExec(rx, S);
        if (result === null) break;
        results.push(result);
        if (!global) break;
        var matchStr = String(result[0]);
        if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
      }
      var accumulatedResult = '';
      var nextSourcePosition = 0;
      for (var i = 0; i < results.length; i++) {
        result = results[i];
        var matched = String(result[0]);
        var position = max(min(toInteger(result.index), S.length), 0);
        var captures = [];
        // NOTE: This is equivalent to
        //   captures = result.slice(1).map(maybeToString)
        // but for some reason `nativeSlice.call(result, 1, result.length)` (called in
        // the slice polyfill when slicing native arrays) "doesn't work" in safari 9 and
        // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.
        for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));
        var namedCaptures = result.groups;
        if (functionalReplace) {
          var replacerArgs = [matched].concat(captures, position, S);
          if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);
          var replacement = String(replaceValue.apply(undefined, replacerArgs));
        } else {
          replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);
        }
        if (position >= nextSourcePosition) {
          accumulatedResult += S.slice(nextSourcePosition, position) + replacement;
          nextSourcePosition = position + matched.length;
        }
      }
      return accumulatedResult + S.slice(nextSourcePosition);
    }
  ];

    // https://tc39.github.io/ecma262/#sec-getsubstitution
  function getSubstitution(matched, str, position, captures, namedCaptures, replacement) {
    var tailPos = position + matched.length;
    var m = captures.length;
    var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;
    if (namedCaptures !== undefined) {
      namedCaptures = toObject(namedCaptures);
      symbols = SUBSTITUTION_SYMBOLS;
    }
    return $replace.call(replacement, symbols, function (match, ch) {
      var capture;
      switch (ch.charAt(0)) {
        case '$': return '$';
        case '&': return matched;
        case '`': return str.slice(0, position);
        case "'": return str.slice(tailPos);
        case '<':
          capture = namedCaptures[ch.slice(1, -1)];
          break;
        default: // \d\d?
          var n = +ch;
          if (n === 0) return match;
          if (n > m) {
            var f = floor(n / 10);
            if (f === 0) return match;
            if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);
            return match;
          }
          capture = captures[n - 1];
      }
      return capture === undefined ? '' : capture;
    });
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.search.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.search.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var sameValue = __webpack_require__(/*! ./_same-value */ "../node_modules/core-js/modules/_same-value.js");
var regExpExec = __webpack_require__(/*! ./_regexp-exec-abstract */ "../node_modules/core-js/modules/_regexp-exec-abstract.js");

// @@search logic
__webpack_require__(/*! ./_fix-re-wks */ "../node_modules/core-js/modules/_fix-re-wks.js")('search', 1, function (defined, SEARCH, $search, maybeCallNative) {
  return [
    // `String.prototype.search` method
    // https://tc39.github.io/ecma262/#sec-string.prototype.search
    function search(regexp) {
      var O = defined(this);
      var fn = regexp == undefined ? undefined : regexp[SEARCH];
      return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[SEARCH](String(O));
    },
    // `RegExp.prototype[@@search]` method
    // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@search
    function (regexp) {
      var res = maybeCallNative($search, regexp, this);
      if (res.done) return res.value;
      var rx = anObject(regexp);
      var S = String(this);
      var previousLastIndex = rx.lastIndex;
      if (!sameValue(previousLastIndex, 0)) rx.lastIndex = 0;
      var result = regExpExec(rx, S);
      if (!sameValue(rx.lastIndex, previousLastIndex)) rx.lastIndex = previousLastIndex;
      return result === null ? -1 : result.index;
    }
  ];
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.split.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.split.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var isRegExp = __webpack_require__(/*! ./_is-regexp */ "../node_modules/core-js/modules/_is-regexp.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var speciesConstructor = __webpack_require__(/*! ./_species-constructor */ "../node_modules/core-js/modules/_species-constructor.js");
var advanceStringIndex = __webpack_require__(/*! ./_advance-string-index */ "../node_modules/core-js/modules/_advance-string-index.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var callRegExpExec = __webpack_require__(/*! ./_regexp-exec-abstract */ "../node_modules/core-js/modules/_regexp-exec-abstract.js");
var regexpExec = __webpack_require__(/*! ./_regexp-exec */ "../node_modules/core-js/modules/_regexp-exec.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js");
var $min = Math.min;
var $push = [].push;
var $SPLIT = 'split';
var LENGTH = 'length';
var LAST_INDEX = 'lastIndex';
var MAX_UINT32 = 0xffffffff;

// babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError
var SUPPORTS_Y = !fails(function () { RegExp(MAX_UINT32, 'y'); });

// @@split logic
__webpack_require__(/*! ./_fix-re-wks */ "../node_modules/core-js/modules/_fix-re-wks.js")('split', 2, function (defined, SPLIT, $split, maybeCallNative) {
  var internalSplit;
  if (
    'abbc'[$SPLIT](/(b)*/)[1] == 'c' ||
    'test'[$SPLIT](/(?:)/, -1)[LENGTH] != 4 ||
    'ab'[$SPLIT](/(?:ab)*/)[LENGTH] != 2 ||
    '.'[$SPLIT](/(.?)(.?)/)[LENGTH] != 4 ||
    '.'[$SPLIT](/()()/)[LENGTH] > 1 ||
    ''[$SPLIT](/.?/)[LENGTH]
  ) {
    // based on es5-shim implementation, need to rework it
    internalSplit = function (separator, limit) {
      var string = String(this);
      if (separator === undefined && limit === 0) return [];
      // If `separator` is not a regex, use native split
      if (!isRegExp(separator)) return $split.call(string, separator, limit);
      var output = [];
      var flags = (separator.ignoreCase ? 'i' : '') +
                  (separator.multiline ? 'm' : '') +
                  (separator.unicode ? 'u' : '') +
                  (separator.sticky ? 'y' : '');
      var lastLastIndex = 0;
      var splitLimit = limit === undefined ? MAX_UINT32 : limit >>> 0;
      // Make `global` and avoid `lastIndex` issues by working with a copy
      var separatorCopy = new RegExp(separator.source, flags + 'g');
      var match, lastIndex, lastLength;
      while (match = regexpExec.call(separatorCopy, string)) {
        lastIndex = separatorCopy[LAST_INDEX];
        if (lastIndex > lastLastIndex) {
          output.push(string.slice(lastLastIndex, match.index));
          if (match[LENGTH] > 1 && match.index < string[LENGTH]) $push.apply(output, match.slice(1));
          lastLength = match[0][LENGTH];
          lastLastIndex = lastIndex;
          if (output[LENGTH] >= splitLimit) break;
        }
        if (separatorCopy[LAST_INDEX] === match.index) separatorCopy[LAST_INDEX]++; // Avoid an infinite loop
      }
      if (lastLastIndex === string[LENGTH]) {
        if (lastLength || !separatorCopy.test('')) output.push('');
      } else output.push(string.slice(lastLastIndex));
      return output[LENGTH] > splitLimit ? output.slice(0, splitLimit) : output;
    };
  // Chakra, V8
  } else if ('0'[$SPLIT](undefined, 0)[LENGTH]) {
    internalSplit = function (separator, limit) {
      return separator === undefined && limit === 0 ? [] : $split.call(this, separator, limit);
    };
  } else {
    internalSplit = $split;
  }

  return [
    // `String.prototype.split` method
    // https://tc39.github.io/ecma262/#sec-string.prototype.split
    function split(separator, limit) {
      var O = defined(this);
      var splitter = separator == undefined ? undefined : separator[SPLIT];
      return splitter !== undefined
        ? splitter.call(separator, O, limit)
        : internalSplit.call(String(O), separator, limit);
    },
    // `RegExp.prototype[@@split]` method
    // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@split
    //
    // NOTE: This cannot be properly polyfilled in engines that don't support
    // the 'y' flag.
    function (regexp, limit) {
      var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== $split);
      if (res.done) return res.value;

      var rx = anObject(regexp);
      var S = String(this);
      var C = speciesConstructor(rx, RegExp);

      var unicodeMatching = rx.unicode;
      var flags = (rx.ignoreCase ? 'i' : '') +
                  (rx.multiline ? 'm' : '') +
                  (rx.unicode ? 'u' : '') +
                  (SUPPORTS_Y ? 'y' : 'g');

      // ^(? + rx + ) is needed, in combination with some S slicing, to
      // simulate the 'y' flag.
      var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags);
      var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;
      if (lim === 0) return [];
      if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];
      var p = 0;
      var q = 0;
      var A = [];
      while (q < S.length) {
        splitter.lastIndex = SUPPORTS_Y ? q : 0;
        var z = callRegExpExec(splitter, SUPPORTS_Y ? S : S.slice(q));
        var e;
        if (
          z === null ||
          (e = $min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p
        ) {
          q = advanceStringIndex(S, q, unicodeMatching);
        } else {
          A.push(S.slice(p, q));
          if (A.length === lim) return A;
          for (var i = 1; i <= z.length - 1; i++) {
            A.push(z[i]);
            if (A.length === lim) return A;
          }
          q = p = e;
        }
      }
      A.push(S.slice(p));
      return A;
    }
  ];
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.to-string.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.to-string.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

__webpack_require__(/*! ./es6.regexp.flags */ "../node_modules/core-js/modules/es6.regexp.flags.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var $flags = __webpack_require__(/*! ./_flags */ "../node_modules/core-js/modules/_flags.js");
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js");
var TO_STRING = 'toString';
var $toString = /./[TO_STRING];

var define = function (fn) {
  __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js")(RegExp.prototype, TO_STRING, fn, true);
};

// 21.2.5.14 RegExp.prototype.toString()
if (__webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () { return $toString.call({ source: 'a', flags: 'b' }) != '/a/b'; })) {
  define(function toString() {
    var R = anObject(this);
    return '/'.concat(R.source, '/',
      'flags' in R ? R.flags : !DESCRIPTORS && R instanceof RegExp ? $flags.call(R) : undefined);
  });
// FF44- RegExp#toString has a wrong name
} else if ($toString.name != TO_STRING) {
  define(function toString() {
    return $toString.call(this);
  });
}


/***/ }),

/***/ "../node_modules/core-js/modules/es6.string.includes.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.string.includes.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
// 21.1.3.7 String.prototype.includes(searchString, position = 0)

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var context = __webpack_require__(/*! ./_string-context */ "../node_modules/core-js/modules/_string-context.js");
var INCLUDES = 'includes';

$export($export.P + $export.F * __webpack_require__(/*! ./_fails-is-regexp */ "../node_modules/core-js/modules/_fails-is-regexp.js")(INCLUDES), 'String', {
  includes: function includes(searchString /* , position = 0 */) {
    return !!~context(this, searchString, INCLUDES)
      .indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined);
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.string.iterator.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.string.iterator.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $at = __webpack_require__(/*! ./_string-at */ "../node_modules/core-js/modules/_string-at.js")(true);

// 21.1.3.27 String.prototype[@@iterator]()
__webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/modules/_iter-define.js")(String, 'String', function (iterated) {
  this._t = String(iterated); // target
  this._i = 0;                // next index
// 21.1.5.2.1 %StringIteratorPrototype%.next()
}, function () {
  var O = this._t;
  var index = this._i;
  var point;
  if (index >= O.length) return { value: undefined, done: true };
  point = $at(O, index);
  this._i += point.length;
  return { value: point, done: false };
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.string.link.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.string.link.js ***!
  \**********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// B.2.3.10 String.prototype.link(url)
__webpack_require__(/*! ./_string-html */ "../node_modules/core-js/modules/_string-html.js")('link', function (createHTML) {
  return function link(url) {
    return createHTML(this, 'a', 'href', url);
  };
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.string.starts-with.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.string.starts-with.js ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
// 21.1.3.18 String.prototype.startsWith(searchString [, position ])

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var context = __webpack_require__(/*! ./_string-context */ "../node_modules/core-js/modules/_string-context.js");
var STARTS_WITH = 'startsWith';
var $startsWith = ''[STARTS_WITH];

$export($export.P + $export.F * __webpack_require__(/*! ./_fails-is-regexp */ "../node_modules/core-js/modules/_fails-is-regexp.js")(STARTS_WITH), 'String', {
  startsWith: function startsWith(searchString /* , position = 0 */) {
    var that = context(this, searchString, STARTS_WITH);
    var index = toLength(Math.min(arguments.length > 1 ? arguments[1] : undefined, that.length));
    var search = String(searchString);
    return $startsWith
      ? $startsWith.call(that, search, index)
      : that.slice(index, index + search.length) === search;
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es7.array.includes.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/es7.array.includes.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// https://github.com/tc39/Array.prototype.includes
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var $includes = __webpack_require__(/*! ./_array-includes */ "../node_modules/core-js/modules/_array-includes.js")(true);

$export($export.P, 'Array', {
  includes: function includes(el /* , fromIndex = 0 */) {
    return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);
  }
});

__webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/modules/_add-to-unscopables.js")('includes');


/***/ }),

/***/ "../node_modules/core-js/modules/es7.promise.finally.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/modules/es7.promise.finally.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
// https://github.com/tc39/proposal-promise-finally

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var speciesConstructor = __webpack_require__(/*! ./_species-constructor */ "../node_modules/core-js/modules/_species-constructor.js");
var promiseResolve = __webpack_require__(/*! ./_promise-resolve */ "../node_modules/core-js/modules/_promise-resolve.js");

$export($export.P + $export.R, 'Promise', { 'finally': function (onFinally) {
  var C = speciesConstructor(this, core.Promise || global.Promise);
  var isFunction = typeof onFinally == 'function';
  return this.then(
    isFunction ? function (x) {
      return promiseResolve(C, onFinally()).then(function () { return x; });
    } : onFinally,
    isFunction ? function (e) {
      return promiseResolve(C, onFinally()).then(function () { throw e; });
    } : onFinally
  );
} });


/***/ }),

/***/ "../node_modules/core-js/modules/web.dom.iterable.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/web.dom.iterable.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $iterators = __webpack_require__(/*! ./es6.array.iterator */ "../node_modules/core-js/modules/es6.array.iterator.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/modules/_object-keys.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/modules/_iterators.js");
var wks = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js");
var ITERATOR = wks('iterator');
var TO_STRING_TAG = wks('toStringTag');
var ArrayValues = Iterators.Array;

var DOMIterables = {
  CSSRuleList: true, // TODO: Not spec compliant, should be false.
  CSSStyleDeclaration: false,
  CSSValueList: false,
  ClientRectList: false,
  DOMRectList: false,
  DOMStringList: false,
  DOMTokenList: true,
  DataTransferItemList: false,
  FileList: false,
  HTMLAllCollection: false,
  HTMLCollection: false,
  HTMLFormElement: false,
  HTMLSelectElement: false,
  MediaList: true, // TODO: Not spec compliant, should be false.
  MimeTypeArray: false,
  NamedNodeMap: false,
  NodeList: true,
  PaintRequestList: false,
  Plugin: false,
  PluginArray: false,
  SVGLengthList: false,
  SVGNumberList: false,
  SVGPathSegList: false,
  SVGPointList: false,
  SVGStringList: false,
  SVGTransformList: false,
  SourceBufferList: false,
  StyleSheetList: true, // TODO: Not spec compliant, should be false.
  TextTrackCueList: false,
  TextTrackList: false,
  TouchList: false
};

for (var collections = getKeys(DOMIterables), i = 0; i < collections.length; i++) {
  var NAME = collections[i];
  var explicit = DOMIterables[NAME];
  var Collection = global[NAME];
  var proto = Collection && Collection.prototype;
  var key;
  if (proto) {
    if (!proto[ITERATOR]) hide(proto, ITERATOR, ArrayValues);
    if (!proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);
    Iterators[NAME] = ArrayValues;
    if (explicit) for (key in $iterators) if (!proto[key]) redefine(proto, key, $iterators[key], true);
  }
}


/***/ }),

/***/ "../node_modules/object-assign/index.js":
/*!**********************************************!*\
  !*** ../node_modules/object-assign/index.js ***!
  \**********************************************/
/***/ ((module) => {

"use strict";
/*
object-assign
(c) Sindre Sorhus
@license MIT
*/


/* eslint-disable no-unused-vars */
var getOwnPropertySymbols = Object.getOwnPropertySymbols;
var hasOwnProperty = Object.prototype.hasOwnProperty;
var propIsEnumerable = Object.prototype.propertyIsEnumerable;

function toObject(val) {
	if (val === null || val === undefined) {
		throw new TypeError('Object.assign cannot be called with null or undefined');
	}

	return Object(val);
}

function shouldUseNative() {
	try {
		if (!Object.assign) {
			return false;
		}

		// Detect buggy property enumeration order in older V8 versions.

		// https://bugs.chromium.org/p/v8/issues/detail?id=4118
		var test1 = new String('abc');  // eslint-disable-line no-new-wrappers
		test1[5] = 'de';
		if (Object.getOwnPropertyNames(test1)[0] === '5') {
			return false;
		}

		// https://bugs.chromium.org/p/v8/issues/detail?id=3056
		var test2 = {};
		for (var i = 0; i < 10; i++) {
			test2['_' + String.fromCharCode(i)] = i;
		}
		var order2 = Object.getOwnPropertyNames(test2).map(function (n) {
			return test2[n];
		});
		if (order2.join('') !== '0123456789') {
			return false;
		}

		// https://bugs.chromium.org/p/v8/issues/detail?id=3056
		var test3 = {};
		'abcdefghijklmnopqrst'.split('').forEach(function (letter) {
			test3[letter] = letter;
		});
		if (Object.keys(Object.assign({}, test3)).join('') !==
				'abcdefghijklmnopqrst') {
			return false;
		}

		return true;
	} catch (err) {
		// We don't expect any of the above to throw, but better to be safe.
		return false;
	}
}

module.exports = shouldUseNative() ? Object.assign : function (target, source) {
	var from;
	var to = toObject(target);
	var symbols;

	for (var s = 1; s < arguments.length; s++) {
		from = Object(arguments[s]);

		for (var key in from) {
			if (hasOwnProperty.call(from, key)) {
				to[key] = from[key];
			}
		}

		if (getOwnPropertySymbols) {
			symbols = getOwnPropertySymbols(from);
			for (var i = 0; i < symbols.length; i++) {
				if (propIsEnumerable.call(from, symbols[i])) {
					to[symbols[i]] = from[symbols[i]];
				}
			}
		}
	}

	return to;
};


/***/ }),

/***/ "../node_modules/prop-types/checkPropTypes.js":
/*!****************************************************!*\
  !*** ../node_modules/prop-types/checkPropTypes.js ***!
  \****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/**
 * Copyright (c) 2013-present, Facebook, Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */



var printWarning = function() {};

if (true) {
  var ReactPropTypesSecret = __webpack_require__(/*! ./lib/ReactPropTypesSecret */ "../node_modules/prop-types/lib/ReactPropTypesSecret.js");
  var loggedTypeFailures = {};
  var has = Function.call.bind(Object.prototype.hasOwnProperty);

  printWarning = function(text) {
    var message = 'Warning: ' + text;
    if (typeof console !== 'undefined') {
      console.error(message);
    }
    try {
      // --- Welcome to debugging React ---
      // This error was thrown as a convenience so that you can use this stack
      // to find the callsite that caused this warning to fire.
      throw new Error(message);
    } catch (x) {}
  };
}

/**
 * Assert that the values match with the type specs.
 * Error messages are memorized and will only be shown once.
 *
 * @param {object} typeSpecs Map of name to a ReactPropType
 * @param {object} values Runtime values that need to be type-checked
 * @param {string} location e.g. "prop", "context", "child context"
 * @param {string} componentName Name of the component for error messages.
 * @param {?Function} getStack Returns the component stack.
 * @private
 */
function checkPropTypes(typeSpecs, values, location, componentName, getStack) {
  if (true) {
    for (var typeSpecName in typeSpecs) {
      if (has(typeSpecs, typeSpecName)) {
        var error;
        // Prop type validation may throw. In case they do, we don't want to
        // fail the render phase where it didn't fail before. So we log it.
        // After these have been cleaned up, we'll let them throw.
        try {
          // This is intentionally an invariant that gets caught. It's the same
          // behavior as without this statement except with a better message.
          if (typeof typeSpecs[typeSpecName] !== 'function') {
            var err = Error(
              (componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' +
              'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.'
            );
            err.name = 'Invariant Violation';
            throw err;
          }
          error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);
        } catch (ex) {
          error = ex;
        }
        if (error && !(error instanceof Error)) {
          printWarning(
            (componentName || 'React class') + ': type specification of ' +
            location + ' `' + typeSpecName + '` is invalid; the type checker ' +
            'function must return `null` or an `Error` but returned a ' + typeof error + '. ' +
            'You may have forgotten to pass an argument to the type checker ' +
            'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' +
            'shape all require an argument).'
          );
        }
        if (error instanceof Error && !(error.message in loggedTypeFailures)) {
          // Only monitor this failure once because there tends to be a lot of the
          // same error.
          loggedTypeFailures[error.message] = true;

          var stack = getStack ? getStack() : '';

          printWarning(
            'Failed ' + location + ' type: ' + error.message + (stack != null ? stack : '')
          );
        }
      }
    }
  }
}

/**
 * Resets warning cache when testing.
 *
 * @private
 */
checkPropTypes.resetWarningCache = function() {
  if (true) {
    loggedTypeFailures = {};
  }
}

module.exports = checkPropTypes;


/***/ }),

/***/ "../node_modules/prop-types/factoryWithTypeCheckers.js":
/*!*************************************************************!*\
  !*** ../node_modules/prop-types/factoryWithTypeCheckers.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/**
 * Copyright (c) 2013-present, Facebook, Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */



var ReactIs = __webpack_require__(/*! react-is */ "../node_modules/react-is/index.js");
var assign = __webpack_require__(/*! object-assign */ "../node_modules/object-assign/index.js");

var ReactPropTypesSecret = __webpack_require__(/*! ./lib/ReactPropTypesSecret */ "../node_modules/prop-types/lib/ReactPropTypesSecret.js");
var checkPropTypes = __webpack_require__(/*! ./checkPropTypes */ "../node_modules/prop-types/checkPropTypes.js");

var has = Function.call.bind(Object.prototype.hasOwnProperty);
var printWarning = function() {};

if (true) {
  printWarning = function(text) {
    var message = 'Warning: ' + text;
    if (typeof console !== 'undefined') {
      console.error(message);
    }
    try {
      // --- Welcome to debugging React ---
      // This error was thrown as a convenience so that you can use this stack
      // to find the callsite that caused this warning to fire.
      throw new Error(message);
    } catch (x) {}
  };
}

function emptyFunctionThatReturnsNull() {
  return null;
}

module.exports = function(isValidElement, throwOnDirectAccess) {
  /* global Symbol */
  var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;
  var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.

  /**
   * Returns the iterator method function contained on the iterable object.
   *
   * Be sure to invoke the function with the iterable as context:
   *
   *     var iteratorFn = getIteratorFn(myIterable);
   *     if (iteratorFn) {
   *       var iterator = iteratorFn.call(myIterable);
   *       ...
   *     }
   *
   * @param {?object} maybeIterable
   * @return {?function}
   */
  function getIteratorFn(maybeIterable) {
    var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);
    if (typeof iteratorFn === 'function') {
      return iteratorFn;
    }
  }

  /**
   * Collection of methods that allow declaration and validation of props that are
   * supplied to React components. Example usage:
   *
   *   var Props = require('ReactPropTypes');
   *   var MyArticle = React.createClass({
   *     propTypes: {
   *       // An optional string prop named "description".
   *       description: Props.string,
   *
   *       // A required enum prop named "category".
   *       category: Props.oneOf(['News','Photos']).isRequired,
   *
   *       // A prop named "dialog" that requires an instance of Dialog.
   *       dialog: Props.instanceOf(Dialog).isRequired
   *     },
   *     render: function() { ... }
   *   });
   *
   * A more formal specification of how these methods are used:
   *
   *   type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)
   *   decl := ReactPropTypes.{type}(.isRequired)?
   *
   * Each and every declaration produces a function with the same signature. This
   * allows the creation of custom validation functions. For example:
   *
   *  var MyLink = React.createClass({
   *    propTypes: {
   *      // An optional string or URI prop named "href".
   *      href: function(props, propName, componentName) {
   *        var propValue = props[propName];
   *        if (propValue != null && typeof propValue !== 'string' &&
   *            !(propValue instanceof URI)) {
   *          return new Error(
   *            'Expected a string or an URI for ' + propName + ' in ' +
   *            componentName
   *          );
   *        }
   *      }
   *    },
   *    render: function() {...}
   *  });
   *
   * @internal
   */

  var ANONYMOUS = '<<anonymous>>';

  // Important!
  // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.
  var ReactPropTypes = {
    array: createPrimitiveTypeChecker('array'),
    bool: createPrimitiveTypeChecker('boolean'),
    func: createPrimitiveTypeChecker('function'),
    number: createPrimitiveTypeChecker('number'),
    object: createPrimitiveTypeChecker('object'),
    string: createPrimitiveTypeChecker('string'),
    symbol: createPrimitiveTypeChecker('symbol'),

    any: createAnyTypeChecker(),
    arrayOf: createArrayOfTypeChecker,
    element: createElementTypeChecker(),
    elementType: createElementTypeTypeChecker(),
    instanceOf: createInstanceTypeChecker,
    node: createNodeChecker(),
    objectOf: createObjectOfTypeChecker,
    oneOf: createEnumTypeChecker,
    oneOfType: createUnionTypeChecker,
    shape: createShapeTypeChecker,
    exact: createStrictShapeTypeChecker,
  };

  /**
   * inlined Object.is polyfill to avoid requiring consumers ship their own
   * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is
   */
  /*eslint-disable no-self-compare*/
  function is(x, y) {
    // SameValue algorithm
    if (x === y) {
      // Steps 1-5, 7-10
      // Steps 6.b-6.e: +0 != -0
      return x !== 0 || 1 / x === 1 / y;
    } else {
      // Step 6.a: NaN == NaN
      return x !== x && y !== y;
    }
  }
  /*eslint-enable no-self-compare*/

  /**
   * We use an Error-like object for backward compatibility as people may call
   * PropTypes directly and inspect their output. However, we don't use real
   * Errors anymore. We don't inspect their stack anyway, and creating them
   * is prohibitively expensive if they are created too often, such as what
   * happens in oneOfType() for any type before the one that matched.
   */
  function PropTypeError(message) {
    this.message = message;
    this.stack = '';
  }
  // Make `instanceof Error` still work for returned errors.
  PropTypeError.prototype = Error.prototype;

  function createChainableTypeChecker(validate) {
    if (true) {
      var manualPropTypeCallCache = {};
      var manualPropTypeWarningCount = 0;
    }
    function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {
      componentName = componentName || ANONYMOUS;
      propFullName = propFullName || propName;

      if (secret !== ReactPropTypesSecret) {
        if (throwOnDirectAccess) {
          // New behavior only for users of `prop-types` package
          var err = new Error(
            'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +
            'Use `PropTypes.checkPropTypes()` to call them. ' +
            'Read more at http://fb.me/use-check-prop-types'
          );
          err.name = 'Invariant Violation';
          throw err;
        } else if ( true && typeof console !== 'undefined') {
          // Old behavior for people using React.PropTypes
          var cacheKey = componentName + ':' + propName;
          if (
            !manualPropTypeCallCache[cacheKey] &&
            // Avoid spamming the console because they are often not actionable except for lib authors
            manualPropTypeWarningCount < 3
          ) {
            printWarning(
              'You are manually calling a React.PropTypes validation ' +
              'function for the `' + propFullName + '` prop on `' + componentName  + '`. This is deprecated ' +
              'and will throw in the standalone `prop-types` package. ' +
              'You may be seeing this warning due to a third-party PropTypes ' +
              'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.'
            );
            manualPropTypeCallCache[cacheKey] = true;
            manualPropTypeWarningCount++;
          }
        }
      }
      if (props[propName] == null) {
        if (isRequired) {
          if (props[propName] === null) {
            return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));
          }
          return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));
        }
        return null;
      } else {
        return validate(props, propName, componentName, location, propFullName);
      }
    }

    var chainedCheckType = checkType.bind(null, false);
    chainedCheckType.isRequired = checkType.bind(null, true);

    return chainedCheckType;
  }

  function createPrimitiveTypeChecker(expectedType) {
    function validate(props, propName, componentName, location, propFullName, secret) {
      var propValue = props[propName];
      var propType = getPropType(propValue);
      if (propType !== expectedType) {
        // `propValue` being instance of, say, date/regexp, pass the 'object'
        // check, but we can offer a more precise error message here rather than
        // 'of type `object`'.
        var preciseType = getPreciseType(propValue);

        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'));
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createAnyTypeChecker() {
    return createChainableTypeChecker(emptyFunctionThatReturnsNull);
  }

  function createArrayOfTypeChecker(typeChecker) {
    function validate(props, propName, componentName, location, propFullName) {
      if (typeof typeChecker !== 'function') {
        return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');
      }
      var propValue = props[propName];
      if (!Array.isArray(propValue)) {
        var propType = getPropType(propValue);
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));
      }
      for (var i = 0; i < propValue.length; i++) {
        var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);
        if (error instanceof Error) {
          return error;
        }
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createElementTypeChecker() {
    function validate(props, propName, componentName, location, propFullName) {
      var propValue = props[propName];
      if (!isValidElement(propValue)) {
        var propType = getPropType(propValue);
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createElementTypeTypeChecker() {
    function validate(props, propName, componentName, location, propFullName) {
      var propValue = props[propName];
      if (!ReactIs.isValidElementType(propValue)) {
        var propType = getPropType(propValue);
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement type.'));
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createInstanceTypeChecker(expectedClass) {
    function validate(props, propName, componentName, location, propFullName) {
      if (!(props[propName] instanceof expectedClass)) {
        var expectedClassName = expectedClass.name || ANONYMOUS;
        var actualClassName = getClassName(props[propName]);
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createEnumTypeChecker(expectedValues) {
    if (!Array.isArray(expectedValues)) {
      if (true) {
        if (arguments.length > 1) {
          printWarning(
            'Invalid arguments supplied to oneOf, expected an array, got ' + arguments.length + ' arguments. ' +
            'A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).'
          );
        } else {
          printWarning('Invalid argument supplied to oneOf, expected an array.');
        }
      }
      return emptyFunctionThatReturnsNull;
    }

    function validate(props, propName, componentName, location, propFullName) {
      var propValue = props[propName];
      for (var i = 0; i < expectedValues.length; i++) {
        if (is(propValue, expectedValues[i])) {
          return null;
        }
      }

      var valuesString = JSON.stringify(expectedValues, function replacer(key, value) {
        var type = getPreciseType(value);
        if (type === 'symbol') {
          return String(value);
        }
        return value;
      });
      return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + String(propValue) + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));
    }
    return createChainableTypeChecker(validate);
  }

  function createObjectOfTypeChecker(typeChecker) {
    function validate(props, propName, componentName, location, propFullName) {
      if (typeof typeChecker !== 'function') {
        return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');
      }
      var propValue = props[propName];
      var propType = getPropType(propValue);
      if (propType !== 'object') {
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));
      }
      for (var key in propValue) {
        if (has(propValue, key)) {
          var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
          if (error instanceof Error) {
            return error;
          }
        }
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createUnionTypeChecker(arrayOfTypeCheckers) {
    if (!Array.isArray(arrayOfTypeCheckers)) {
       true ? printWarning('Invalid argument supplied to oneOfType, expected an instance of array.') : 0;
      return emptyFunctionThatReturnsNull;
    }

    for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
      var checker = arrayOfTypeCheckers[i];
      if (typeof checker !== 'function') {
        printWarning(
          'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +
          'received ' + getPostfixForTypeWarning(checker) + ' at index ' + i + '.'
        );
        return emptyFunctionThatReturnsNull;
      }
    }

    function validate(props, propName, componentName, location, propFullName) {
      for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
        var checker = arrayOfTypeCheckers[i];
        if (checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret) == null) {
          return null;
        }
      }

      return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`.'));
    }
    return createChainableTypeChecker(validate);
  }

  function createNodeChecker() {
    function validate(props, propName, componentName, location, propFullName) {
      if (!isNode(props[propName])) {
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createShapeTypeChecker(shapeTypes) {
    function validate(props, propName, componentName, location, propFullName) {
      var propValue = props[propName];
      var propType = getPropType(propValue);
      if (propType !== 'object') {
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));
      }
      for (var key in shapeTypes) {
        var checker = shapeTypes[key];
        if (!checker) {
          continue;
        }
        var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
        if (error) {
          return error;
        }
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createStrictShapeTypeChecker(shapeTypes) {
    function validate(props, propName, componentName, location, propFullName) {
      var propValue = props[propName];
      var propType = getPropType(propValue);
      if (propType !== 'object') {
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));
      }
      // We need to check all keys in case some are required but missing from
      // props.
      var allKeys = assign({}, props[propName], shapeTypes);
      for (var key in allKeys) {
        var checker = shapeTypes[key];
        if (!checker) {
          return new PropTypeError(
            'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' +
            '\nBad object: ' + JSON.stringify(props[propName], null, '  ') +
            '\nValid keys: ' +  JSON.stringify(Object.keys(shapeTypes), null, '  ')
          );
        }
        var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
        if (error) {
          return error;
        }
      }
      return null;
    }

    return createChainableTypeChecker(validate);
  }

  function isNode(propValue) {
    switch (typeof propValue) {
      case 'number':
      case 'string':
      case 'undefined':
        return true;
      case 'boolean':
        return !propValue;
      case 'object':
        if (Array.isArray(propValue)) {
          return propValue.every(isNode);
        }
        if (propValue === null || isValidElement(propValue)) {
          return true;
        }

        var iteratorFn = getIteratorFn(propValue);
        if (iteratorFn) {
          var iterator = iteratorFn.call(propValue);
          var step;
          if (iteratorFn !== propValue.entries) {
            while (!(step = iterator.next()).done) {
              if (!isNode(step.value)) {
                return false;
              }
            }
          } else {
            // Iterator will provide entry [k,v] tuples rather than values.
            while (!(step = iterator.next()).done) {
              var entry = step.value;
              if (entry) {
                if (!isNode(entry[1])) {
                  return false;
                }
              }
            }
          }
        } else {
          return false;
        }

        return true;
      default:
        return false;
    }
  }

  function isSymbol(propType, propValue) {
    // Native Symbol.
    if (propType === 'symbol') {
      return true;
    }

    // falsy value can't be a Symbol
    if (!propValue) {
      return false;
    }

    // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'
    if (propValue['@@toStringTag'] === 'Symbol') {
      return true;
    }

    // Fallback for non-spec compliant Symbols which are polyfilled.
    if (typeof Symbol === 'function' && propValue instanceof Symbol) {
      return true;
    }

    return false;
  }

  // Equivalent of `typeof` but with special handling for array and regexp.
  function getPropType(propValue) {
    var propType = typeof propValue;
    if (Array.isArray(propValue)) {
      return 'array';
    }
    if (propValue instanceof RegExp) {
      // Old webkits (at least until Android 4.0) return 'function' rather than
      // 'object' for typeof a RegExp. We'll normalize this here so that /bla/
      // passes PropTypes.object.
      return 'object';
    }
    if (isSymbol(propType, propValue)) {
      return 'symbol';
    }
    return propType;
  }

  // This handles more types than `getPropType`. Only used for error messages.
  // See `createPrimitiveTypeChecker`.
  function getPreciseType(propValue) {
    if (typeof propValue === 'undefined' || propValue === null) {
      return '' + propValue;
    }
    var propType = getPropType(propValue);
    if (propType === 'object') {
      if (propValue instanceof Date) {
        return 'date';
      } else if (propValue instanceof RegExp) {
        return 'regexp';
      }
    }
    return propType;
  }

  // Returns a string that is postfixed to a warning about an invalid type.
  // For example, "undefined" or "of type array"
  function getPostfixForTypeWarning(value) {
    var type = getPreciseType(value);
    switch (type) {
      case 'array':
      case 'object':
        return 'an ' + type;
      case 'boolean':
      case 'date':
      case 'regexp':
        return 'a ' + type;
      default:
        return type;
    }
  }

  // Returns class name of the object, if any.
  function getClassName(propValue) {
    if (!propValue.constructor || !propValue.constructor.name) {
      return ANONYMOUS;
    }
    return propValue.constructor.name;
  }

  ReactPropTypes.checkPropTypes = checkPropTypes;
  ReactPropTypes.resetWarningCache = checkPropTypes.resetWarningCache;
  ReactPropTypes.PropTypes = ReactPropTypes;

  return ReactPropTypes;
};


/***/ }),

/***/ "../node_modules/prop-types/index.js":
/*!*******************************************!*\
  !*** ../node_modules/prop-types/index.js ***!
  \*******************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

/**
 * Copyright (c) 2013-present, Facebook, Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

if (true) {
  var ReactIs = __webpack_require__(/*! react-is */ "../node_modules/react-is/index.js");

  // By explicitly using `prop-types` you are opting into new development behavior.
  // http://fb.me/prop-types-in-prod
  var throwOnDirectAccess = true;
  module.exports = __webpack_require__(/*! ./factoryWithTypeCheckers */ "../node_modules/prop-types/factoryWithTypeCheckers.js")(ReactIs.isElement, throwOnDirectAccess);
} else {}


/***/ }),

/***/ "../node_modules/prop-types/lib/ReactPropTypesSecret.js":
/*!**************************************************************!*\
  !*** ../node_modules/prop-types/lib/ReactPropTypesSecret.js ***!
  \**************************************************************/
/***/ ((module) => {

"use strict";
/**
 * Copyright (c) 2013-present, Facebook, Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */



var ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';

module.exports = ReactPropTypesSecret;


/***/ }),

/***/ "../node_modules/react-is/cjs/react-is.development.js":
/*!************************************************************!*\
  !*** ../node_modules/react-is/cjs/react-is.development.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";
/** @license React v16.13.1
 * react-is.development.js
 *
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */





if (true) {
  (function() {
'use strict';

// The Symbol used to tag the ReactElement-like types. If there is no native Symbol
// nor polyfill, then a plain number is used for performance.
var hasSymbol = typeof Symbol === 'function' && Symbol.for;
var REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;
var REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;
var REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;
var REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;
var REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;
var REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;
var REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary
// (unstable) APIs that have been removed. Can we remove the symbols?

var REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;
var REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;
var REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;
var REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;
var REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;
var REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;
var REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;
var REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;
var REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;
var REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;
var REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;

function isValidElementType(type) {
  return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
  type === REACT_FRAGMENT_TYPE || type === REACT_CONCURRENT_MODE_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || typeof type === 'object' && type !== null && (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || type.$$typeof === REACT_FUNDAMENTAL_TYPE || type.$$typeof === REACT_RESPONDER_TYPE || type.$$typeof === REACT_SCOPE_TYPE || type.$$typeof === REACT_BLOCK_TYPE);
}

function typeOf(object) {
  if (typeof object === 'object' && object !== null) {
    var $$typeof = object.$$typeof;

    switch ($$typeof) {
      case REACT_ELEMENT_TYPE:
        var type = object.type;

        switch (type) {
          case REACT_ASYNC_MODE_TYPE:
          case REACT_CONCURRENT_MODE_TYPE:
          case REACT_FRAGMENT_TYPE:
          case REACT_PROFILER_TYPE:
          case REACT_STRICT_MODE_TYPE:
          case REACT_SUSPENSE_TYPE:
            return type;

          default:
            var $$typeofType = type && type.$$typeof;

            switch ($$typeofType) {
              case REACT_CONTEXT_TYPE:
              case REACT_FORWARD_REF_TYPE:
              case REACT_LAZY_TYPE:
              case REACT_MEMO_TYPE:
              case REACT_PROVIDER_TYPE:
                return $$typeofType;

              default:
                return $$typeof;
            }

        }

      case REACT_PORTAL_TYPE:
        return $$typeof;
    }
  }

  return undefined;
} // AsyncMode is deprecated along with isAsyncMode

var AsyncMode = REACT_ASYNC_MODE_TYPE;
var ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;
var ContextConsumer = REACT_CONTEXT_TYPE;
var ContextProvider = REACT_PROVIDER_TYPE;
var Element = REACT_ELEMENT_TYPE;
var ForwardRef = REACT_FORWARD_REF_TYPE;
var Fragment = REACT_FRAGMENT_TYPE;
var Lazy = REACT_LAZY_TYPE;
var Memo = REACT_MEMO_TYPE;
var Portal = REACT_PORTAL_TYPE;
var Profiler = REACT_PROFILER_TYPE;
var StrictMode = REACT_STRICT_MODE_TYPE;
var Suspense = REACT_SUSPENSE_TYPE;
var hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated

function isAsyncMode(object) {
  {
    if (!hasWarnedAboutDeprecatedIsAsyncMode) {
      hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint

      console['warn']('The ReactIs.isAsyncMode() alias has been deprecated, ' + 'and will be removed in React 17+. Update your code to use ' + 'ReactIs.isConcurrentMode() instead. It has the exact same API.');
    }
  }

  return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;
}
function isConcurrentMode(object) {
  return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;
}
function isContextConsumer(object) {
  return typeOf(object) === REACT_CONTEXT_TYPE;
}
function isContextProvider(object) {
  return typeOf(object) === REACT_PROVIDER_TYPE;
}
function isElement(object) {
  return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;
}
function isForwardRef(object) {
  return typeOf(object) === REACT_FORWARD_REF_TYPE;
}
function isFragment(object) {
  return typeOf(object) === REACT_FRAGMENT_TYPE;
}
function isLazy(object) {
  return typeOf(object) === REACT_LAZY_TYPE;
}
function isMemo(object) {
  return typeOf(object) === REACT_MEMO_TYPE;
}
function isPortal(object) {
  return typeOf(object) === REACT_PORTAL_TYPE;
}
function isProfiler(object) {
  return typeOf(object) === REACT_PROFILER_TYPE;
}
function isStrictMode(object) {
  return typeOf(object) === REACT_STRICT_MODE_TYPE;
}
function isSuspense(object) {
  return typeOf(object) === REACT_SUSPENSE_TYPE;
}

exports.AsyncMode = AsyncMode;
exports.ConcurrentMode = ConcurrentMode;
exports.ContextConsumer = ContextConsumer;
exports.ContextProvider = ContextProvider;
exports.Element = Element;
exports.ForwardRef = ForwardRef;
exports.Fragment = Fragment;
exports.Lazy = Lazy;
exports.Memo = Memo;
exports.Portal = Portal;
exports.Profiler = Profiler;
exports.StrictMode = StrictMode;
exports.Suspense = Suspense;
exports.isAsyncMode = isAsyncMode;
exports.isConcurrentMode = isConcurrentMode;
exports.isContextConsumer = isContextConsumer;
exports.isContextProvider = isContextProvider;
exports.isElement = isElement;
exports.isForwardRef = isForwardRef;
exports.isFragment = isFragment;
exports.isLazy = isLazy;
exports.isMemo = isMemo;
exports.isPortal = isPortal;
exports.isProfiler = isProfiler;
exports.isStrictMode = isStrictMode;
exports.isSuspense = isSuspense;
exports.isValidElementType = isValidElementType;
exports.typeOf = typeOf;
  })();
}


/***/ }),

/***/ "../node_modules/react-is/index.js":
/*!*****************************************!*\
  !*** ../node_modules/react-is/index.js ***!
  \*****************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


if (false) {} else {
  module.exports = __webpack_require__(/*! ./cjs/react-is.development.js */ "../node_modules/react-is/cjs/react-is.development.js");
}


/***/ }),

/***/ "../node_modules/regenerator-runtime/runtime.js":
/*!******************************************************!*\
  !*** ../node_modules/regenerator-runtime/runtime.js ***!
  \******************************************************/
/***/ ((module) => {

/**
 * Copyright (c) 2014-present, Facebook, Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

var runtime = (function (exports) {
  "use strict";

  var Op = Object.prototype;
  var hasOwn = Op.hasOwnProperty;
  var undefined; // More compressible than void 0.
  var $Symbol = typeof Symbol === "function" ? Symbol : {};
  var iteratorSymbol = $Symbol.iterator || "@@iterator";
  var asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator";
  var toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag";

  function define(obj, key, value) {
    Object.defineProperty(obj, key, {
      value: value,
      enumerable: true,
      configurable: true,
      writable: true
    });
    return obj[key];
  }
  try {
    // IE 8 has a broken Object.defineProperty that only works on DOM objects.
    define({}, "");
  } catch (err) {
    define = function(obj, key, value) {
      return obj[key] = value;
    };
  }

  function wrap(innerFn, outerFn, self, tryLocsList) {
    // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.
    var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;
    var generator = Object.create(protoGenerator.prototype);
    var context = new Context(tryLocsList || []);

    // The ._invoke method unifies the implementations of the .next,
    // .throw, and .return methods.
    generator._invoke = makeInvokeMethod(innerFn, self, context);

    return generator;
  }
  exports.wrap = wrap;

  // Try/catch helper to minimize deoptimizations. Returns a completion
  // record like context.tryEntries[i].completion. This interface could
  // have been (and was previously) designed to take a closure to be
  // invoked without arguments, but in all the cases we care about we
  // already have an existing method we want to call, so there's no need
  // to create a new function object. We can even get away with assuming
  // the method takes exactly one argument, since that happens to be true
  // in every case, so we don't have to touch the arguments object. The
  // only additional allocation required is the completion record, which
  // has a stable shape and so hopefully should be cheap to allocate.
  function tryCatch(fn, obj, arg) {
    try {
      return { type: "normal", arg: fn.call(obj, arg) };
    } catch (err) {
      return { type: "throw", arg: err };
    }
  }

  var GenStateSuspendedStart = "suspendedStart";
  var GenStateSuspendedYield = "suspendedYield";
  var GenStateExecuting = "executing";
  var GenStateCompleted = "completed";

  // Returning this object from the innerFn has the same effect as
  // breaking out of the dispatch switch statement.
  var ContinueSentinel = {};

  // Dummy constructor functions that we use as the .constructor and
  // .constructor.prototype properties for functions that return Generator
  // objects. For full spec compliance, you may wish to configure your
  // minifier not to mangle the names of these two functions.
  function Generator() {}
  function GeneratorFunction() {}
  function GeneratorFunctionPrototype() {}

  // This is a polyfill for %IteratorPrototype% for environments that
  // don't natively support it.
  var IteratorPrototype = {};
  IteratorPrototype[iteratorSymbol] = function () {
    return this;
  };

  var getProto = Object.getPrototypeOf;
  var NativeIteratorPrototype = getProto && getProto(getProto(values([])));
  if (NativeIteratorPrototype &&
      NativeIteratorPrototype !== Op &&
      hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {
    // This environment has a native %IteratorPrototype%; use it instead
    // of the polyfill.
    IteratorPrototype = NativeIteratorPrototype;
  }

  var Gp = GeneratorFunctionPrototype.prototype =
    Generator.prototype = Object.create(IteratorPrototype);
  GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype;
  GeneratorFunctionPrototype.constructor = GeneratorFunction;
  GeneratorFunction.displayName = define(
    GeneratorFunctionPrototype,
    toStringTagSymbol,
    "GeneratorFunction"
  );

  // Helper for defining the .next, .throw, and .return methods of the
  // Iterator interface in terms of a single ._invoke method.
  function defineIteratorMethods(prototype) {
    ["next", "throw", "return"].forEach(function(method) {
      define(prototype, method, function(arg) {
        return this._invoke(method, arg);
      });
    });
  }

  exports.isGeneratorFunction = function(genFun) {
    var ctor = typeof genFun === "function" && genFun.constructor;
    return ctor
      ? ctor === GeneratorFunction ||
        // For the native GeneratorFunction constructor, the best we can
        // do is to check its .name property.
        (ctor.displayName || ctor.name) === "GeneratorFunction"
      : false;
  };

  exports.mark = function(genFun) {
    if (Object.setPrototypeOf) {
      Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);
    } else {
      genFun.__proto__ = GeneratorFunctionPrototype;
      define(genFun, toStringTagSymbol, "GeneratorFunction");
    }
    genFun.prototype = Object.create(Gp);
    return genFun;
  };

  // Within the body of any async function, `await x` is transformed to
  // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test
  // `hasOwn.call(value, "__await")` to determine if the yielded value is
  // meant to be awaited.
  exports.awrap = function(arg) {
    return { __await: arg };
  };

  function AsyncIterator(generator, PromiseImpl) {
    function invoke(method, arg, resolve, reject) {
      var record = tryCatch(generator[method], generator, arg);
      if (record.type === "throw") {
        reject(record.arg);
      } else {
        var result = record.arg;
        var value = result.value;
        if (value &&
            typeof value === "object" &&
            hasOwn.call(value, "__await")) {
          return PromiseImpl.resolve(value.__await).then(function(value) {
            invoke("next", value, resolve, reject);
          }, function(err) {
            invoke("throw", err, resolve, reject);
          });
        }

        return PromiseImpl.resolve(value).then(function(unwrapped) {
          // When a yielded Promise is resolved, its final value becomes
          // the .value of the Promise<{value,done}> result for the
          // current iteration.
          result.value = unwrapped;
          resolve(result);
        }, function(error) {
          // If a rejected Promise was yielded, throw the rejection back
          // into the async generator function so it can be handled there.
          return invoke("throw", error, resolve, reject);
        });
      }
    }

    var previousPromise;

    function enqueue(method, arg) {
      function callInvokeWithMethodAndArg() {
        return new PromiseImpl(function(resolve, reject) {
          invoke(method, arg, resolve, reject);
        });
      }

      return previousPromise =
        // If enqueue has been called before, then we want to wait until
        // all previous Promises have been resolved before calling invoke,
        // so that results are always delivered in the correct order. If
        // enqueue has not been called before, then it is important to
        // call invoke immediately, without waiting on a callback to fire,
        // so that the async generator function has the opportunity to do
        // any necessary setup in a predictable way. This predictability
        // is why the Promise constructor synchronously invokes its
        // executor callback, and why async functions synchronously
        // execute code before the first await. Since we implement simple
        // async functions in terms of async generators, it is especially
        // important to get this right, even though it requires care.
        previousPromise ? previousPromise.then(
          callInvokeWithMethodAndArg,
          // Avoid propagating failures to Promises returned by later
          // invocations of the iterator.
          callInvokeWithMethodAndArg
        ) : callInvokeWithMethodAndArg();
    }

    // Define the unified helper method that is used to implement .next,
    // .throw, and .return (see defineIteratorMethods).
    this._invoke = enqueue;
  }

  defineIteratorMethods(AsyncIterator.prototype);
  AsyncIterator.prototype[asyncIteratorSymbol] = function () {
    return this;
  };
  exports.AsyncIterator = AsyncIterator;

  // Note that simple async functions are implemented on top of
  // AsyncIterator objects; they just return a Promise for the value of
  // the final result produced by the iterator.
  exports.async = function(innerFn, outerFn, self, tryLocsList, PromiseImpl) {
    if (PromiseImpl === void 0) PromiseImpl = Promise;

    var iter = new AsyncIterator(
      wrap(innerFn, outerFn, self, tryLocsList),
      PromiseImpl
    );

    return exports.isGeneratorFunction(outerFn)
      ? iter // If outerFn is a generator, return the full iterator.
      : iter.next().then(function(result) {
          return result.done ? result.value : iter.next();
        });
  };

  function makeInvokeMethod(innerFn, self, context) {
    var state = GenStateSuspendedStart;

    return function invoke(method, arg) {
      if (state === GenStateExecuting) {
        throw new Error("Generator is already running");
      }

      if (state === GenStateCompleted) {
        if (method === "throw") {
          throw arg;
        }

        // Be forgiving, per 25.3.3.3.3 of the spec:
        // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume
        return doneResult();
      }

      context.method = method;
      context.arg = arg;

      while (true) {
        var delegate = context.delegate;
        if (delegate) {
          var delegateResult = maybeInvokeDelegate(delegate, context);
          if (delegateResult) {
            if (delegateResult === ContinueSentinel) continue;
            return delegateResult;
          }
        }

        if (context.method === "next") {
          // Setting context._sent for legacy support of Babel's
          // function.sent implementation.
          context.sent = context._sent = context.arg;

        } else if (context.method === "throw") {
          if (state === GenStateSuspendedStart) {
            state = GenStateCompleted;
            throw context.arg;
          }

          context.dispatchException(context.arg);

        } else if (context.method === "return") {
          context.abrupt("return", context.arg);
        }

        state = GenStateExecuting;

        var record = tryCatch(innerFn, self, context);
        if (record.type === "normal") {
          // If an exception is thrown from innerFn, we leave state ===
          // GenStateExecuting and loop back for another invocation.
          state = context.done
            ? GenStateCompleted
            : GenStateSuspendedYield;

          if (record.arg === ContinueSentinel) {
            continue;
          }

          return {
            value: record.arg,
            done: context.done
          };

        } else if (record.type === "throw") {
          state = GenStateCompleted;
          // Dispatch the exception by looping back around to the
          // context.dispatchException(context.arg) call above.
          context.method = "throw";
          context.arg = record.arg;
        }
      }
    };
  }

  // Call delegate.iterator[context.method](context.arg) and handle the
  // result, either by returning a { value, done } result from the
  // delegate iterator, or by modifying context.method and context.arg,
  // setting context.delegate to null, and returning the ContinueSentinel.
  function maybeInvokeDelegate(delegate, context) {
    var method = delegate.iterator[context.method];
    if (method === undefined) {
      // A .throw or .return when the delegate iterator has no .throw
      // method always terminates the yield* loop.
      context.delegate = null;

      if (context.method === "throw") {
        // Note: ["return"] must be used for ES3 parsing compatibility.
        if (delegate.iterator["return"]) {
          // If the delegate iterator has a return method, give it a
          // chance to clean up.
          context.method = "return";
          context.arg = undefined;
          maybeInvokeDelegate(delegate, context);

          if (context.method === "throw") {
            // If maybeInvokeDelegate(context) changed context.method from
            // "return" to "throw", let that override the TypeError below.
            return ContinueSentinel;
          }
        }

        context.method = "throw";
        context.arg = new TypeError(
          "The iterator does not provide a 'throw' method");
      }

      return ContinueSentinel;
    }

    var record = tryCatch(method, delegate.iterator, context.arg);

    if (record.type === "throw") {
      context.method = "throw";
      context.arg = record.arg;
      context.delegate = null;
      return ContinueSentinel;
    }

    var info = record.arg;

    if (! info) {
      context.method = "throw";
      context.arg = new TypeError("iterator result is not an object");
      context.delegate = null;
      return ContinueSentinel;
    }

    if (info.done) {
      // Assign the result of the finished delegate to the temporary
      // variable specified by delegate.resultName (see delegateYield).
      context[delegate.resultName] = info.value;

      // Resume execution at the desired location (see delegateYield).
      context.next = delegate.nextLoc;

      // If context.method was "throw" but the delegate handled the
      // exception, let the outer generator proceed normally. If
      // context.method was "next", forget context.arg since it has been
      // "consumed" by the delegate iterator. If context.method was
      // "return", allow the original .return call to continue in the
      // outer generator.
      if (context.method !== "return") {
        context.method = "next";
        context.arg = undefined;
      }

    } else {
      // Re-yield the result returned by the delegate method.
      return info;
    }

    // The delegate iterator is finished, so forget it and continue with
    // the outer generator.
    context.delegate = null;
    return ContinueSentinel;
  }

  // Define Generator.prototype.{next,throw,return} in terms of the
  // unified ._invoke helper method.
  defineIteratorMethods(Gp);

  define(Gp, toStringTagSymbol, "Generator");

  // A Generator should always return itself as the iterator object when the
  // @@iterator function is called on it. Some browsers' implementations of the
  // iterator prototype chain incorrectly implement this, causing the Generator
  // object to not be returned from this call. This ensures that doesn't happen.
  // See https://github.com/facebook/regenerator/issues/274 for more details.
  Gp[iteratorSymbol] = function() {
    return this;
  };

  Gp.toString = function() {
    return "[object Generator]";
  };

  function pushTryEntry(locs) {
    var entry = { tryLoc: locs[0] };

    if (1 in locs) {
      entry.catchLoc = locs[1];
    }

    if (2 in locs) {
      entry.finallyLoc = locs[2];
      entry.afterLoc = locs[3];
    }

    this.tryEntries.push(entry);
  }

  function resetTryEntry(entry) {
    var record = entry.completion || {};
    record.type = "normal";
    delete record.arg;
    entry.completion = record;
  }

  function Context(tryLocsList) {
    // The root entry object (effectively a try statement without a catch
    // or a finally block) gives us a place to store values thrown from
    // locations where there is no enclosing try statement.
    this.tryEntries = [{ tryLoc: "root" }];
    tryLocsList.forEach(pushTryEntry, this);
    this.reset(true);
  }

  exports.keys = function(object) {
    var keys = [];
    for (var key in object) {
      keys.push(key);
    }
    keys.reverse();

    // Rather than returning an object with a next method, we keep
    // things simple and return the next function itself.
    return function next() {
      while (keys.length) {
        var key = keys.pop();
        if (key in object) {
          next.value = key;
          next.done = false;
          return next;
        }
      }

      // To avoid creating an additional object, we just hang the .value
      // and .done properties off the next function object itself. This
      // also ensures that the minifier will not anonymize the function.
      next.done = true;
      return next;
    };
  };

  function values(iterable) {
    if (iterable) {
      var iteratorMethod = iterable[iteratorSymbol];
      if (iteratorMethod) {
        return iteratorMethod.call(iterable);
      }

      if (typeof iterable.next === "function") {
        return iterable;
      }

      if (!isNaN(iterable.length)) {
        var i = -1, next = function next() {
          while (++i < iterable.length) {
            if (hasOwn.call(iterable, i)) {
              next.value = iterable[i];
              next.done = false;
              return next;
            }
          }

          next.value = undefined;
          next.done = true;

          return next;
        };

        return next.next = next;
      }
    }

    // Return an iterator with no values.
    return { next: doneResult };
  }
  exports.values = values;

  function doneResult() {
    return { value: undefined, done: true };
  }

  Context.prototype = {
    constructor: Context,

    reset: function(skipTempReset) {
      this.prev = 0;
      this.next = 0;
      // Resetting context._sent for legacy support of Babel's
      // function.sent implementation.
      this.sent = this._sent = undefined;
      this.done = false;
      this.delegate = null;

      this.method = "next";
      this.arg = undefined;

      this.tryEntries.forEach(resetTryEntry);

      if (!skipTempReset) {
        for (var name in this) {
          // Not sure about the optimal order of these conditions:
          if (name.charAt(0) === "t" &&
              hasOwn.call(this, name) &&
              !isNaN(+name.slice(1))) {
            this[name] = undefined;
          }
        }
      }
    },

    stop: function() {
      this.done = true;

      var rootEntry = this.tryEntries[0];
      var rootRecord = rootEntry.completion;
      if (rootRecord.type === "throw") {
        throw rootRecord.arg;
      }

      return this.rval;
    },

    dispatchException: function(exception) {
      if (this.done) {
        throw exception;
      }

      var context = this;
      function handle(loc, caught) {
        record.type = "throw";
        record.arg = exception;
        context.next = loc;

        if (caught) {
          // If the dispatched exception was caught by a catch block,
          // then let that catch block handle the exception normally.
          context.method = "next";
          context.arg = undefined;
        }

        return !! caught;
      }

      for (var i = this.tryEntries.length - 1; i >= 0; --i) {
        var entry = this.tryEntries[i];
        var record = entry.completion;

        if (entry.tryLoc === "root") {
          // Exception thrown outside of any try block that could handle
          // it, so set the completion value of the entire function to
          // throw the exception.
          return handle("end");
        }

        if (entry.tryLoc <= this.prev) {
          var hasCatch = hasOwn.call(entry, "catchLoc");
          var hasFinally = hasOwn.call(entry, "finallyLoc");

          if (hasCatch && hasFinally) {
            if (this.prev < entry.catchLoc) {
              return handle(entry.catchLoc, true);
            } else if (this.prev < entry.finallyLoc) {
              return handle(entry.finallyLoc);
            }

          } else if (hasCatch) {
            if (this.prev < entry.catchLoc) {
              return handle(entry.catchLoc, true);
            }

          } else if (hasFinally) {
            if (this.prev < entry.finallyLoc) {
              return handle(entry.finallyLoc);
            }

          } else {
            throw new Error("try statement without catch or finally");
          }
        }
      }
    },

    abrupt: function(type, arg) {
      for (var i = this.tryEntries.length - 1; i >= 0; --i) {
        var entry = this.tryEntries[i];
        if (entry.tryLoc <= this.prev &&
            hasOwn.call(entry, "finallyLoc") &&
            this.prev < entry.finallyLoc) {
          var finallyEntry = entry;
          break;
        }
      }

      if (finallyEntry &&
          (type === "break" ||
           type === "continue") &&
          finallyEntry.tryLoc <= arg &&
          arg <= finallyEntry.finallyLoc) {
        // Ignore the finally entry if control is not jumping to a
        // location outside the try/catch block.
        finallyEntry = null;
      }

      var record = finallyEntry ? finallyEntry.completion : {};
      record.type = type;
      record.arg = arg;

      if (finallyEntry) {
        this.method = "next";
        this.next = finallyEntry.finallyLoc;
        return ContinueSentinel;
      }

      return this.complete(record);
    },

    complete: function(record, afterLoc) {
      if (record.type === "throw") {
        throw record.arg;
      }

      if (record.type === "break" ||
          record.type === "continue") {
        this.next = record.arg;
      } else if (record.type === "return") {
        this.rval = this.arg = record.arg;
        this.method = "return";
        this.next = "end";
      } else if (record.type === "normal" && afterLoc) {
        this.next = afterLoc;
      }

      return ContinueSentinel;
    },

    finish: function(finallyLoc) {
      for (var i = this.tryEntries.length - 1; i >= 0; --i) {
        var entry = this.tryEntries[i];
        if (entry.finallyLoc === finallyLoc) {
          this.complete(entry.completion, entry.afterLoc);
          resetTryEntry(entry);
          return ContinueSentinel;
        }
      }
    },

    "catch": function(tryLoc) {
      for (var i = this.tryEntries.length - 1; i >= 0; --i) {
        var entry = this.tryEntries[i];
        if (entry.tryLoc === tryLoc) {
          var record = entry.completion;
          if (record.type === "throw") {
            var thrown = record.arg;
            resetTryEntry(entry);
          }
          return thrown;
        }
      }

      // The context.catch method must only be called with a location
      // argument that corresponds to a known catch block.
      throw new Error("illegal catch attempt");
    },

    delegateYield: function(iterable, resultName, nextLoc) {
      this.delegate = {
        iterator: values(iterable),
        resultName: resultName,
        nextLoc: nextLoc
      };

      if (this.method === "next") {
        // Deliberately forget the last sent value so that we don't
        // accidentally pass it on to the delegate.
        this.arg = undefined;
      }

      return ContinueSentinel;
    }
  };

  // Regardless of whether this script is executing as a CommonJS module
  // or not, return the runtime object so that we can declare the variable
  // regeneratorRuntime in the outer scope, which allows this module to be
  // injected easily by `bin/regenerator --include-runtime script.js`.
  return exports;

}(
  // If this script is executing as a CommonJS module, use module.exports
  // as the regeneratorRuntime namespace. Otherwise create a new empty
  // object. Either way, the resulting object will be used to initialize
  // the regeneratorRuntime variable at the top of this file.
   true ? module.exports : 0
));

try {
  regeneratorRuntime = runtime;
} catch (accidentalStrictMode) {
  // This module should not be running in strict mode, so the above
  // assignment should always work unless something is misconfigured. Just
  // in case runtime.js accidentally runs in strict mode, we can escape
  // strict mode using a global Function call. This could conceivably fail
  // if a Content Security Policy forbids using Function, but in that case
  // the proper solution is to fix the accidental strict mode problem. If
  // you've misconfigured your bundler to force strict mode and applied a
  // CSP to forbid Function, and you're not willing to fix either of those
  // problems, please detail your unique predicament in a GitHub issue.
  Function("r", "regeneratorRuntime = r")(runtime);
}


/***/ }),

/***/ "react":
/*!************************!*\
  !*** external "React" ***!
  \************************/
/***/ ((module) => {

"use strict";
module.exports = React;

/***/ }),

/***/ "react-dom":
/*!***************************!*\
  !*** external "ReactDOM" ***!
  \***************************/
/***/ ((module) => {

"use strict";
module.exports = ReactDOM;

/***/ }),

/***/ "@wordpress/i18n":
/*!**************************!*\
  !*** external "wp.i18n" ***!
  \**************************/
/***/ ((module) => {

"use strict";
module.exports = wp.i18n;

/***/ })

/******/ 	});
/************************************************************************/
/******/ 	// The module cache
/******/ 	var __webpack_module_cache__ = {};
/******/ 	
/******/ 	// The require function
/******/ 	function __webpack_require__(moduleId) {
/******/ 		// Check if module is in cache
/******/ 		var cachedModule = __webpack_module_cache__[moduleId];
/******/ 		if (cachedModule !== undefined) {
/******/ 			return cachedModule.exports;
/******/ 		}
/******/ 		// Create a new module (and put it into the cache)
/******/ 		var module = __webpack_module_cache__[moduleId] = {
/******/ 			// no module.id needed
/******/ 			// no module.loaded needed
/******/ 			exports: {}
/******/ 		};
/******/ 	
/******/ 		// Execute the module function
/******/ 		__webpack_modules__[moduleId](module, module.exports, __webpack_require__);
/******/ 	
/******/ 		// Return the exports of the module
/******/ 		return module.exports;
/******/ 	}
/******/ 	
/************************************************************************/
/******/ 	
/******/ 	// startup
/******/ 	// Load entry module and return exports
/******/ 	__webpack_require__("../assets/dev/js/editor/utils/jquery-serialize-object.js");
/******/ 	__webpack_require__("../assets/dev/js/editor/utils/jquery-html5-dnd.js");
/******/ 	// This entry module is referenced by other modules so it can't be inlined
/******/ 	var __webpack_exports__ = __webpack_require__("../assets/dev/js/editor/editor.js");
/******/ 	
/******/ })()
;
//# sourceMappingURL=editor.js.mapassets/js/app-loader.js000064400001233223151327220410011047 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
/******/ (() => { // webpackBootstrap
/******/ 	var __webpack_modules__ = ({

/***/ "../node_modules/@babel/runtime-corejs2/core-js/array/from.js":
/*!********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/array/from.js ***!
  \********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/array/from */ "../node_modules/core-js/library/fn/array/from.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/array/is-array */ "../node_modules/core-js/library/fn/array/is-array.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/create.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/create.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/create */ "../node_modules/core-js/library/fn/object/create.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js":
/*!********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js ***!
  \********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/define-property */ "../node_modules/core-js/library/fn/object/define-property.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/entries.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/entries */ "../node_modules/core-js/library/fn/object/entries.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js":
/*!********************************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js ***!
  \********************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/get-own-property-descriptor */ "../node_modules/core-js/library/fn/object/get-own-property-descriptor.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/get-prototype-of.js":
/*!*********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/get-prototype-of.js ***!
  \*********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/get-prototype-of */ "../node_modules/core-js/library/fn/object/get-prototype-of.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/keys.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/keys */ "../node_modules/core-js/library/fn/object/keys.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js":
/*!*********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js ***!
  \*********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/set-prototype-of */ "../node_modules/core-js/library/fn/object/set-prototype-of.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/values.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/values */ "../node_modules/core-js/library/fn/object/values.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/promise.js":
/*!*****************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/promise.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/promise */ "../node_modules/core-js/library/fn/promise.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js":
/*!***************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js ***!
  \***************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/reflect/construct */ "../node_modules/core-js/library/fn/reflect/construct.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/reflect/get.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/reflect/get.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/reflect/get */ "../node_modules/core-js/library/fn/reflect/get.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js":
/*!****************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/symbol.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/symbol */ "../node_modules/core-js/library/fn/symbol/index.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/symbol/has-instance.js":
/*!*****************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/symbol/has-instance.js ***!
  \*****************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/symbol/has-instance */ "../node_modules/core-js/library/fn/symbol/has-instance.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js":
/*!*************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js ***!
  \*************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/symbol/iterator */ "../node_modules/core-js/library/fn/symbol/iterator.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/weak-map.js":
/*!******************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/weak-map.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/weak-map */ "../node_modules/core-js/library/fn/weak-map.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/arrayLikeToArray.js":
/*!**************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/arrayLikeToArray.js ***!
  \**************************************************************************/
/***/ ((module) => {

function _arrayLikeToArray(arr, len) {
  if (len == null || len > arr.length) len = arr.length;

  for (var i = 0, arr2 = new Array(len); i < len; i++) {
    arr2[i] = arr[i];
  }

  return arr2;
}

module.exports = _arrayLikeToArray;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/arrayWithHoles.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/arrayWithHoles.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Array$isArray = __webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js");

function _arrayWithHoles(arr) {
  if (_Array$isArray(arr)) return arr;
}

module.exports = _arrayWithHoles;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js":
/*!*******************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js ***!
  \*******************************************************************************/
/***/ ((module) => {

function _assertThisInitialized(self) {
  if (self === void 0) {
    throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
  }

  return self;
}

module.exports = _assertThisInitialized;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/asyncToGenerator.js":
/*!**************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/asyncToGenerator.js ***!
  \**************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Promise = __webpack_require__(/*! @babel/runtime-corejs2/core-js/promise */ "../node_modules/@babel/runtime-corejs2/core-js/promise.js");

function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
  try {
    var info = gen[key](arg);
    var value = info.value;
  } catch (error) {
    reject(error);
    return;
  }

  if (info.done) {
    resolve(value);
  } else {
    _Promise.resolve(value).then(_next, _throw);
  }
}

function _asyncToGenerator(fn) {
  return function () {
    var self = this,
        args = arguments;
    return new _Promise(function (resolve, reject) {
      var gen = fn.apply(self, args);

      function _next(value) {
        asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
      }

      function _throw(err) {
        asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
      }

      _next(undefined);
    });
  };
}

module.exports = _asyncToGenerator;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js ***!
  \************************************************************************/
/***/ ((module) => {

function _classCallCheck(instance, Constructor) {
  if (!(instance instanceof Constructor)) {
    throw new TypeError("Cannot call a class as a function");
  }
}

module.exports = _classCallCheck;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/createClass.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

function _defineProperties(target, props) {
  for (var i = 0; i < props.length; i++) {
    var descriptor = props[i];
    descriptor.enumerable = descriptor.enumerable || false;
    descriptor.configurable = true;
    if ("value" in descriptor) descriptor.writable = true;

    _Object$defineProperty(target, descriptor.key, descriptor);
  }
}

function _createClass(Constructor, protoProps, staticProps) {
  if (protoProps) _defineProperties(Constructor.prototype, protoProps);
  if (staticProps) _defineProperties(Constructor, staticProps);
  return Constructor;
}

module.exports = _createClass;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/createSuper.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Reflect$construct = __webpack_require__(/*! @babel/runtime-corejs2/core-js/reflect/construct */ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js");

var getPrototypeOf = __webpack_require__(/*! ./getPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js");

var isNativeReflectConstruct = __webpack_require__(/*! ./isNativeReflectConstruct.js */ "../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js");

var possibleConstructorReturn = __webpack_require__(/*! ./possibleConstructorReturn.js */ "../node_modules/@babel/runtime-corejs2/helpers/possibleConstructorReturn.js");

function _createSuper(Derived) {
  var hasNativeReflectConstruct = isNativeReflectConstruct();
  return function _createSuperInternal() {
    var Super = getPrototypeOf(Derived),
        result;

    if (hasNativeReflectConstruct) {
      var NewTarget = getPrototypeOf(this).constructor;
      result = _Reflect$construct(Super, arguments, NewTarget);
    } else {
      result = Super.apply(this, arguments);
    }

    return possibleConstructorReturn(this, result);
  };
}

module.exports = _createSuper;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

function _defineProperty(obj, key, value) {
  if (key in obj) {
    _Object$defineProperty(obj, key, {
      value: value,
      enumerable: true,
      configurable: true,
      writable: true
    });
  } else {
    obj[key] = value;
  }

  return obj;
}

module.exports = _defineProperty;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/get.js":
/*!*************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/get.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Reflect$get = __webpack_require__(/*! @babel/runtime-corejs2/core-js/reflect/get */ "../node_modules/@babel/runtime-corejs2/core-js/reflect/get.js");

var _Object$getOwnPropertyDescriptor = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-own-property-descriptor */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js");

var superPropBase = __webpack_require__(/*! ./superPropBase.js */ "../node_modules/@babel/runtime-corejs2/helpers/superPropBase.js");

function _get(target, property, receiver) {
  if (typeof Reflect !== "undefined" && _Reflect$get) {
    module.exports = _get = _Reflect$get;
    module.exports.default = module.exports, module.exports.__esModule = true;
  } else {
    module.exports = _get = function _get(target, property, receiver) {
      var base = superPropBase(target, property);
      if (!base) return;

      var desc = _Object$getOwnPropertyDescriptor(base, property);

      if (desc.get) {
        return desc.get.call(receiver);
      }

      return desc.value;
    };

    module.exports.default = module.exports, module.exports.__esModule = true;
  }

  return _get(target, property, receiver || target);
}

module.exports = _get;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$setPrototypeOf = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/set-prototype-of */ "../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js");

var _Object$getPrototypeOf = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-prototype-of */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-prototype-of.js");

function _getPrototypeOf(o) {
  module.exports = _getPrototypeOf = _Object$setPrototypeOf ? _Object$getPrototypeOf : function _getPrototypeOf(o) {
    return o.__proto__ || _Object$getPrototypeOf(o);
  };
  module.exports.default = module.exports, module.exports.__esModule = true;
  return _getPrototypeOf(o);
}

module.exports = _getPrototypeOf;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js":
/*!******************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/inherits.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$create = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/create */ "../node_modules/@babel/runtime-corejs2/core-js/object/create.js");

var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js");

function _inherits(subClass, superClass) {
  if (typeof superClass !== "function" && superClass !== null) {
    throw new TypeError("Super expression must either be null or a function");
  }

  subClass.prototype = _Object$create(superClass && superClass.prototype, {
    constructor: {
      value: subClass,
      writable: true,
      configurable: true
    }
  });
  if (superClass) setPrototypeOf(subClass, superClass);
}

module.exports = _inherits;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js":
/*!*******************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js ***!
  \*******************************************************************************/
/***/ ((module) => {

function _interopRequireDefault(obj) {
  return obj && obj.__esModule ? obj : {
    "default": obj
  };
}

module.exports = _interopRequireDefault;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js":
/*!********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js ***!
  \********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _typeof = __webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js").default;

var _WeakMap = __webpack_require__(/*! @babel/runtime-corejs2/core-js/weak-map */ "../node_modules/@babel/runtime-corejs2/core-js/weak-map.js");

var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _Object$getOwnPropertyDescriptor = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-own-property-descriptor */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js");

function _getRequireWildcardCache(nodeInterop) {
  if (typeof _WeakMap !== "function") return null;
  var cacheBabelInterop = new _WeakMap();
  var cacheNodeInterop = new _WeakMap();
  return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) {
    return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
  })(nodeInterop);
}

function _interopRequireWildcard(obj, nodeInterop) {
  if (!nodeInterop && obj && obj.__esModule) {
    return obj;
  }

  if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") {
    return {
      "default": obj
    };
  }

  var cache = _getRequireWildcardCache(nodeInterop);

  if (cache && cache.has(obj)) {
    return cache.get(obj);
  }

  var newObj = {};
  var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor;

  for (var key in obj) {
    if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
      var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null;

      if (desc && (desc.get || desc.set)) {
        _Object$defineProperty(newObj, key, desc);
      } else {
        newObj[key] = obj[key];
      }
    }
  }

  newObj["default"] = obj;

  if (cache) {
    cache.set(obj, newObj);
  }

  return newObj;
}

module.exports = _interopRequireWildcard;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js":
/*!**********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js ***!
  \**********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Reflect$construct = __webpack_require__(/*! @babel/runtime-corejs2/core-js/reflect/construct */ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js");

function _isNativeReflectConstruct() {
  if (typeof Reflect === "undefined" || !_Reflect$construct) return false;
  if (_Reflect$construct.sham) return false;
  if (typeof Proxy === "function") return true;

  try {
    Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {}));
    return true;
  } catch (e) {
    return false;
  }
}

module.exports = _isNativeReflectConstruct;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/iterableToArrayLimit.js":
/*!******************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/iterableToArrayLimit.js ***!
  \******************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Symbol = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol */ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js");

var _Symbol$iterator = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/iterator */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js");

function _iterableToArrayLimit(arr, i) {
  var _i = arr == null ? null : typeof _Symbol !== "undefined" && arr[_Symbol$iterator] || arr["@@iterator"];

  if (_i == null) return;
  var _arr = [];
  var _n = true;
  var _d = false;

  var _s, _e;

  try {
    for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {
      _arr.push(_s.value);

      if (i && _arr.length === i) break;
    }
  } catch (err) {
    _d = true;
    _e = err;
  } finally {
    try {
      if (!_n && _i["return"] != null) _i["return"]();
    } finally {
      if (_d) throw _e;
    }
  }

  return _arr;
}

module.exports = _iterableToArrayLimit;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/nonIterableRest.js":
/*!*************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/nonIterableRest.js ***!
  \*************************************************************************/
/***/ ((module) => {

function _nonIterableRest() {
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
}

module.exports = _nonIterableRest;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/possibleConstructorReturn.js":
/*!***********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/possibleConstructorReturn.js ***!
  \***********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _typeof = __webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js").default;

var assertThisInitialized = __webpack_require__(/*! ./assertThisInitialized.js */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js");

function _possibleConstructorReturn(self, call) {
  if (call && (_typeof(call) === "object" || typeof call === "function")) {
    return call;
  }

  return assertThisInitialized(self);
}

module.exports = _possibleConstructorReturn;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$setPrototypeOf = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/set-prototype-of */ "../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js");

function _setPrototypeOf(o, p) {
  module.exports = _setPrototypeOf = _Object$setPrototypeOf || function _setPrototypeOf(o, p) {
    o.__proto__ = p;
    return o;
  };

  module.exports.default = module.exports, module.exports.__esModule = true;
  return _setPrototypeOf(o, p);
}

module.exports = _setPrototypeOf;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var arrayWithHoles = __webpack_require__(/*! ./arrayWithHoles.js */ "../node_modules/@babel/runtime-corejs2/helpers/arrayWithHoles.js");

var iterableToArrayLimit = __webpack_require__(/*! ./iterableToArrayLimit.js */ "../node_modules/@babel/runtime-corejs2/helpers/iterableToArrayLimit.js");

var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js");

var nonIterableRest = __webpack_require__(/*! ./nonIterableRest.js */ "../node_modules/@babel/runtime-corejs2/helpers/nonIterableRest.js");

function _slicedToArray(arr, i) {
  return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();
}

module.exports = _slicedToArray;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/superPropBase.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/superPropBase.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var getPrototypeOf = __webpack_require__(/*! ./getPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js");

function _superPropBase(object, property) {
  while (!Object.prototype.hasOwnProperty.call(object, property)) {
    object = getPrototypeOf(object);
    if (object === null) break;
  }

  return object;
}

module.exports = _superPropBase;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js":
/*!****************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/typeof.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Symbol = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol */ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js");

var _Symbol$iterator = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/iterator */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js");

function _typeof(obj) {
  "@babel/helpers - typeof";

  if (typeof _Symbol === "function" && typeof _Symbol$iterator === "symbol") {
    module.exports = _typeof = function _typeof(obj) {
      return typeof obj;
    };

    module.exports.default = module.exports, module.exports.__esModule = true;
  } else {
    module.exports = _typeof = function _typeof(obj) {
      return obj && typeof _Symbol === "function" && obj.constructor === _Symbol && obj !== _Symbol.prototype ? "symbol" : typeof obj;
    };

    module.exports.default = module.exports, module.exports.__esModule = true;
  }

  return _typeof(obj);
}

module.exports = _typeof;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js":
/*!************************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js ***!
  \************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Array$from = __webpack_require__(/*! @babel/runtime-corejs2/core-js/array/from */ "../node_modules/@babel/runtime-corejs2/core-js/array/from.js");

var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/arrayLikeToArray.js");

function _unsupportedIterableToArray(o, minLen) {
  if (!o) return;
  if (typeof o === "string") return arrayLikeToArray(o, minLen);
  var n = Object.prototype.toString.call(o).slice(8, -1);
  if (n === "Object" && o.constructor) n = o.constructor.name;
  if (n === "Map" || n === "Set") return _Array$from(o);
  if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);
}

module.exports = _unsupportedIterableToArray;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime/regenerator/index.js":
/*!***********************************************************!*\
  !*** ../node_modules/@babel/runtime/regenerator/index.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! regenerator-runtime */ "../node_modules/regenerator-runtime/runtime.js");


/***/ }),

/***/ "../assets/dev/js/modules/imports/args-object.js":
/*!*******************************************************!*\
  !*** ../assets/dev/js/modules/imports/args-object.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _instanceType = _interopRequireDefault(__webpack_require__(/*! ./instance-type */ "../assets/dev/js/modules/imports/instance-type.js"));

var ArgsObject = /*#__PURE__*/function (_InstanceType) {
  (0, _inherits2.default)(ArgsObject, _InstanceType);

  var _super = (0, _createSuper2.default)(ArgsObject);

  /**
   * Function constructor().
   *
   * Create ArgsObject.
   *
   * @param {{}} args
   */
  function ArgsObject(args) {
    var _this;

    (0, _classCallCheck2.default)(this, ArgsObject);
    _this = _super.call(this);
    _this.args = args;
    return _this;
  }
  /**
   * Function requireArgument().
   *
   * Validate property in args.
   *
   * @param {string} property
   * @param {{}} args
   *
   * @throws {Error}
   *
   */


  (0, _createClass2.default)(ArgsObject, [{
    key: "requireArgument",
    value: function requireArgument(property) {
      var args = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.args;

      if (!args.hasOwnProperty(property)) {
        throw Error("".concat(property, " is required."));
      }
    }
    /**
     * Function requireArgumentType().
     *
     * Validate property in args using `type === typeof(args.whatever)`.
     *
     * @param {string} property
     * @param {string} type
     * @param {{}} args
     *
     * @throws {Error}
     *
     */

  }, {
    key: "requireArgumentType",
    value: function requireArgumentType(property, type) {
      var args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.args;
      this.requireArgument(property, args);

      if ((0, _typeof2.default)(args[property]) !== type) {
        throw Error("".concat(property, " invalid type: ").concat(type, "."));
      }
    }
    /**
     * Function requireArgumentInstance().
     *
     * Validate property in args using `args.whatever instanceof instance`.
     *
     * @param {string} property
     * @param {instanceof} instance
     * @param {{}} args
     *
     * @throws {Error}
     *
     */

  }, {
    key: "requireArgumentInstance",
    value: function requireArgumentInstance(property, instance) {
      var args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.args;
      this.requireArgument(property, args);

      if (!(args[property] instanceof instance)) {
        throw Error("".concat(property, " invalid instance."));
      }
    }
    /**
     * Function requireArgumentConstructor().
     *
     * Validate property in args using `type === args.whatever.constructor`.
     *
     * @param {string} property
     * @param {*} type
     * @param {{}} args
     *
     * @throws {Error}
     *
     */

  }, {
    key: "requireArgumentConstructor",
    value: function requireArgumentConstructor(property, type) {
      var args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.args;
      this.requireArgument(property, args);

      if (args[property].constructor !== type) {
        throw Error("".concat(property, " invalid constructor type."));
      }
    }
  }], [{
    key: "getInstanceType",
    value: function getInstanceType() {
      return 'ArgsObject';
    }
  }]);
  return ArgsObject;
}(_instanceType.default);

exports.default = ArgsObject;

/***/ }),

/***/ "../assets/dev/js/modules/imports/instance-type.js":
/*!*********************************************************!*\
  !*** ../assets/dev/js/modules/imports/instance-type.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _hasInstance = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/has-instance */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/has-instance.js"));

var _isArray = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js"));

__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var InstanceType = /*#__PURE__*/function () {
  function InstanceType() {
    var _this = this;

    (0, _classCallCheck2.default)(this, InstanceType);
    // Since anonymous classes sometimes do not get validated by babel, do it manually.
    var target = this instanceof InstanceType ? this.constructor : void 0;
    var prototypes = [];

    while (target.__proto__ && target.__proto__.name) {
      prototypes.push(target.__proto__);
      target = target.__proto__;
    }

    prototypes.reverse().forEach(function (proto) {
      return _this instanceof proto;
    });
  }

  (0, _createClass2.default)(InstanceType, null, [{
    key: _hasInstance.default,
    value: function value(target) {
      /**
       * This is function extending being called each time JS uses instanceOf, since babel use it each time it create new class
       * its give's opportunity to mange capabilities of instanceOf operator.
       * saving current class each time will give option later to handle instanceOf manually.
       */
      var result = (0, _get2.default)((0, _getPrototypeOf2.default)(InstanceType), _hasInstance.default, this).call(this, target); // Act normal when validate a class, which does not have instance type.

      if (target && !target.constructor.getInstanceType) {
        return result;
      }

      if (target) {
        if (!target.instanceTypes) {
          target.instanceTypes = [];
        }

        if (!result) {
          if (this.getInstanceType() === target.constructor.getInstanceType()) {
            result = true;
          }
        }

        if (result) {
          var name = this.getInstanceType === InstanceType.getInstanceType ? 'BaseInstanceType' : this.getInstanceType();

          if (-1 === target.instanceTypes.indexOf(name)) {
            target.instanceTypes.push(name);
          }
        }
      }

      if (!result && target) {
        // Check if the given 'target', is instance of known types.
        result = target.instanceTypes && (0, _isArray.default)(target.instanceTypes) && -1 !== target.instanceTypes.indexOf(this.getInstanceType());
      }

      return result;
    }
  }, {
    key: "getInstanceType",
    value: function getInstanceType() {
      elementorModules.ForceMethodImplementation();
    }
  }]);
  return InstanceType;
}();

exports.default = InstanceType;

/***/ }),

/***/ "../core/app/assets/js/loader/commands/close.js":
/*!******************************************************!*\
  !*** ../core/app/assets/js/loader/commands/close.js ***!
  \******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Close = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Close = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Close, _CommandBase);

  var _super = (0, _createSuper2.default)(Close);

  function Close() {
    (0, _classCallCheck2.default)(this, Close);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Close, [{
    key: "apply",
    value: function apply() {
      if (!this.component.close()) {
        return false;
      }

      this.component.iframe.remove();
      this.component.iframe = null;
      return true;
    }
  }]);
  return Close;
}(_commandBase.default);

exports.Close = Close;
var _default = Close;
exports.default = _default;

/***/ }),

/***/ "../core/app/assets/js/loader/commands/index.js":
/*!******************************************************!*\
  !*** ../core/app/assets/js/loader/commands/index.js ***!
  \******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "Close", {
  enumerable: true,
  get: function get() {
    return _close.Close;
  }
});

_Object$defineProperty(exports, "Load", {
  enumerable: true,
  get: function get() {
    return _load.Load;
  }
});

_Object$defineProperty(exports, "Open", {
  enumerable: true,
  get: function get() {
    return _open.Open;
  }
});

var _close = __webpack_require__(/*! ./close */ "../core/app/assets/js/loader/commands/close.js");

var _load = __webpack_require__(/*! ./load */ "../core/app/assets/js/loader/commands/load.js");

var _open = __webpack_require__(/*! ./open */ "../core/app/assets/js/loader/commands/open.js");

/***/ }),

/***/ "../core/app/assets/js/loader/commands/load.js":
/*!*****************************************************!*\
  !*** ../core/app/assets/js/loader/commands/load.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Load = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Load = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Load, _CommandBase);

  var _super = (0, _createSuper2.default)(Load);

  function Load() {
    (0, _classCallCheck2.default)(this, Load);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Load, [{
    key: "apply",
    value: function apply(args) {
      var component = this.component;

      if (!component.iframe) {
        component.iframe = document.createElement('iframe');
        component.iframe.className = 'elementor-app-iframe';
        component.iframe.style.cssText = '' + 'display: none;' + 'width: 100%;' + 'height: 100%;' + 'position: fixed;' + 'top: 0;' + 'left: 0;' + 'z-index: 99999; /* Over WP Admin Bar */' + 'background-color: rgba(0, 0, 0, 0.8);';
        document.body.appendChild(component.iframe);
      }

      if (args.url === component.iframe.src) {
        return;
      }

      component.iframe.src = args.url;
    }
  }]);
  return Load;
}(_commandBase.default);

exports.Load = Load;
var _default = Load;
exports.default = _default;

/***/ }),

/***/ "../core/app/assets/js/loader/commands/open.js":
/*!*****************************************************!*\
  !*** ../core/app/assets/js/loader/commands/open.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Open = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Open = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Open, _CommandBase);

  var _super = (0, _createSuper2.default)(Open);

  function Open() {
    (0, _classCallCheck2.default)(this, Open);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Open, [{
    key: "apply",
    value: function apply(args) {
      $e.route('app', args);
      return true;
    }
  }]);
  return Open;
}(_commandBase.default);

exports.Open = Open;
var _default = Open;
exports.default = _default;

/***/ }),

/***/ "../core/app/assets/js/loader/component.js":
/*!*************************************************!*\
  !*** ../core/app/assets/js/loader/component.js ***!
  \*************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _componentBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-base */ "../core/common/assets/js/api/modules/component-base.js"));

var commands = _interopRequireWildcard(__webpack_require__(/*! ./commands/ */ "../core/app/assets/js/loader/commands/index.js"));

var Component = /*#__PURE__*/function (_ComponentModalBase) {
  (0, _inherits2.default)(Component, _ComponentModalBase);

  var _super = (0, _createSuper2.default)(Component);

  function Component() {
    (0, _classCallCheck2.default)(this, Component);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Component, [{
    key: "getNamespace",
    value: function getNamespace() {
      return 'app';
    }
  }, {
    key: "defaultRoutes",
    value: function defaultRoutes() {
      var _this = this;

      return {
        '': function _(args) {
          args.url = args.url || elementorAppConfig.menu_url;
          $e.run('app/load', args);
          _this.iframe.style.display = '';
          document.body.style.overflow = 'hidden';
        }
      };
    }
  }, {
    key: "defaultCommands",
    value: function defaultCommands() {
      return this.importCommands(commands);
    }
  }, {
    key: "defaultShortcuts",
    value: function defaultShortcuts() {
      return {
        '': {
          keys: 'ctrl+shift+e'
        },
        close: {
          keys: 'esc',
          scopes: [this.getNamespace()]
        }
      };
    }
  }]);
  return Component;
}(_componentBase.default);

exports.default = Component;

/***/ }),

/***/ "../core/common/assets/js/api/modules/command-base.js":
/*!************************************************************!*\
  !*** ../core/common/assets/js/api/modules/command-base.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

__webpack_require__(/*! core-js/modules/es6.string.iterator.js */ "../node_modules/core-js/modules/es6.string.iterator.js");

__webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");

__webpack_require__(/*! core-js/modules/es6.array.iterator.js */ "../node_modules/core-js/modules/es6.array.iterator.js");

__webpack_require__(/*! core-js/modules/web.dom.iterable.js */ "../node_modules/core-js/modules/web.dom.iterable.js");

var _isArray = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js"));

var _promise = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/promise */ "../node_modules/@babel/runtime-corejs2/core-js/promise.js"));

var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js"));

var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/asyncToGenerator */ "../node_modules/@babel/runtime-corejs2/helpers/asyncToGenerator.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _argsObject = _interopRequireDefault(__webpack_require__(/*! elementor-assets-js/modules/imports/args-object */ "../assets/dev/js/modules/imports/args-object.js"));

var CommandBase = /*#__PURE__*/function (_ArgsObject) {
  (0, _inherits2.default)(CommandBase, _ArgsObject);

  var _super = (0, _createSuper2.default)(CommandBase);

  /**
   * Function constructor().
   *
   * Create Commands Base.
   *
   * @param [args={}]
   * @param [commandsAPI={}]
   */
  function CommandBase(args) {
    var _this;

    var commandsAPI = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : $e.commands;
    (0, _classCallCheck2.default)(this, CommandBase);
    _this = _super.call(this, args); // Acknowledge self about which command it run.

    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "component", void 0);
    _this.currentCommand = commandsAPI.getCurrentLast(); // Assign instance of current component.

    _this.component = commandsAPI.getComponent(_this.currentCommand); // Who ever need do something before without `super` the constructor can use `initialize` method.

    _this.initialize(args); // Refresh args, maybe the changed via `initialize`.


    args = _this.args; // Validate args before run.

    _this.validateArgs(args);

    return _this;
  }
  /**
   * Function requireContainer().
   *
   * Validate `arg.container` & `arg.containers`.
   *
   * @param {{}} args
   *
   * @throws {Error}
   */


  (0, _createClass2.default)(CommandBase, [{
    key: "requireContainer",
    value: function requireContainer() {
      var _this2 = this;

      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.args;

      if (!args.container && !args.containers) {
        throw Error('container or containers are required.');
      }

      if (args.container && args.containers) {
        throw Error('container and containers cannot go together please select one of them.');
      }

      var containers = args.containers || [args.container];
      containers.forEach(function (container) {
        _this2.requireArgumentInstance('container', elementorModules.editor.Container, {
          container: container
        });
      });
    }
    /**
     * Function initialize().
     *
     * Initialize command, called after construction.
     *
     * @param [args={}]
     */

  }, {
    key: "initialize",
    value: function initialize() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
    } // eslint-disable-line no-unused-vars

    /**
     * Function validateArgs().
     *
     * Validate command arguments.
     *
     * @param [args={}]
     */

  }, {
    key: "validateArgs",
    value: function validateArgs() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
    } // eslint-disable-line no-unused-vars

    /**
     * Function isDataChanged().
     *
     * Whether the editor needs to set change flag on/off.
     *
     * @returns {boolean}
     */

  }, {
    key: "isDataChanged",
    value: function isDataChanged() {
      return false;
    }
    /**
     * Function apply().
     *
     * Do the actual command.
     *
     * @param [args={}]
     *
     * @returns {*}
     */

  }, {
    key: "apply",
    value: function apply() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      // eslint-disable-line no-unused-vars
      elementorModules.ForceMethodImplementation();
    }
    /**
     * Function run().
     *
     * Run command with history & hooks.
     *
     * @returns {*}
     */

  }, {
    key: "run",
    value: function run() {
      var result; // For UI Hooks.

      this.onBeforeRun(this.args);

      try {
        // For Data hooks.
        this.onBeforeApply(this.args);
        result = this.apply(this.args);
      } catch (e) {
        this.onCatchApply(e); // Catch 'Hook-Break' that comes from hooks base.

        if (e instanceof $e.modules.HookBreak) {
          // Bypass.
          return false;
        }
      }

      return this.runAfter(result);
    }
  }, {
    key: "runAfter",
    value: function runAfter(result) {
      var _this3 = this;

      var onAfter = function onAfter(_result) {
        // Run Data hooks.
        _this3.onAfterApply(_this3.args, _result); // TODO: Create Command-Base for Command-Document and apply it on after.


        if (_this3.isDataChanged()) {
          $e.internal('document/save/set-is-modified', {
            status: true
          });
        } // For UI hooks.


        _this3.onAfterRun(_this3.args, _result);
      },
          asyncOnAfter = /*#__PURE__*/function () {
        var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(_result) {
          var results, promises;
          return _regenerator.default.wrap(function _callee$(_context) {
            while (1) {
              switch (_context.prev = _context.next) {
                case 0:
                  // Run Data hooks.
                  results = _this3.onAfterApply(_this3.args, _result), promises = (0, _isArray.default)(results) ? results.flat().filter(function (filtered) {
                    return filtered instanceof _promise.default;
                  }) : [];

                  if (!promises.length) {
                    _context.next = 4;
                    break;
                  }

                  _context.next = 4;
                  return _promise.default.all(promises);

                case 4:
                  if (_this3.isDataChanged()) {
                    // TODO: Create Command-Base for Command-Document and apply it on after.
                    $e.internal('document/save/set-is-modified', {
                      status: true
                    });
                  } // For UI hooks.


                  _this3.onAfterRun(_this3.args, _result);

                case 6:
                case "end":
                  return _context.stop();
              }
            }
          }, _callee);
        }));

        return function asyncOnAfter(_x) {
          return _ref.apply(this, arguments);
        };
      }(); // TODO: Temp code determine if it's a jQuery deferred object.


      if (result && 'object' === (0, _typeof2.default)(result) && result.promise && result.then && result.fail) {
        result.fail(this.onCatchApply.bind(this));
        result.done(onAfter);
      } else if (result instanceof _promise.default) {
        // Override initial result ( promise ) to await onAfter promises, first!.
        return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
          return _regenerator.default.wrap(function _callee2$(_context2) {
            while (1) {
              switch (_context2.prev = _context2.next) {
                case 0:
                  _context2.next = 2;
                  return result.catch(_this3.onCatchApply.bind(_this3));

                case 2:
                  _context2.next = 4;
                  return result.then(function (_result) {
                    return asyncOnAfter(_result);
                  });

                case 4:
                  return _context2.abrupt("return", result);

                case 5:
                case "end":
                  return _context2.stop();
              }
            }
          }, _callee2);
        }))();
      } else {
        onAfter(result);
      }

      return result;
    }
    /**
     * Run all the catch hooks.
     *
     * @param {Error} e
     */

  }, {
    key: "runCatchHooks",
    value: function runCatchHooks(e) {
      $e.hooks.runDataCatch(this.currentCommand, this.args, e);
      $e.hooks.runUICatch(this.currentCommand, this.args, e);
    }
    /**
     * Function onBeforeRun.
     *
     * Called before run().
     *
     * @param [args={}]
     */

  }, {
    key: "onBeforeRun",
    value: function onBeforeRun() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      $e.hooks.runUIBefore(this.currentCommand, args);
    }
    /**
     * Function onAfterRun.
     *
     * Called after run().
     *
     * @param [args={}]
     * @param [result={*}]
     */

  }, {
    key: "onAfterRun",
    value: function onAfterRun() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      var result = arguments.length > 1 ? arguments[1] : undefined;
      $e.hooks.runUIAfter(this.currentCommand, args, result);
    }
    /**
     * Function onBeforeApply.
     *
     * Called before apply().
     *
     * @param [args={}]
     */

  }, {
    key: "onBeforeApply",
    value: function onBeforeApply() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      $e.hooks.runDataDependency(this.currentCommand, args);
    }
    /**
     * Function onAfterApply.
     *
     * Called after apply().
     *
     * @param [args={}]
     * @param [result={*}]
     */

  }, {
    key: "onAfterApply",
    value: function onAfterApply() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      var result = arguments.length > 1 ? arguments[1] : undefined;
      return $e.hooks.runDataAfter(this.currentCommand, args, result);
    }
    /**
     * Function onCatchApply.
     *
     * Called after apply() failed.
     *
     * @param {Error} e
     */

  }, {
    key: "onCatchApply",
    value: function onCatchApply(e) {
      this.runCatchHooks(e);
      elementorCommon.helpers.consoleError(e);
    }
  }], [{
    key: "getInstanceType",
    value: function getInstanceType() {
      return 'CommandBase';
    }
    /**
     * Get info of command.
     *
     * Use to provide 'extra' information about the command.
     *
     * @returns {Object}
     */

  }, {
    key: "getInfo",
    value: function getInfo() {
      return {};
    }
    /**
     * Current component.
     *
     * @type {Component}
     */

  }]);
  return CommandBase;
}(_argsObject.default);

exports.default = CommandBase;

/***/ }),

/***/ "../core/common/assets/js/api/modules/component-base.js":
/*!**************************************************************!*\
  !*** ../core/common/assets/js/api/modules/component-base.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

__webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var ComponentBase = /*#__PURE__*/function (_elementorModules$Mod) {
  (0, _inherits2.default)(ComponentBase, _elementorModules$Mod);

  var _super = (0, _createSuper2.default)(ComponentBase);

  function ComponentBase() {
    (0, _classCallCheck2.default)(this, ComponentBase);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(ComponentBase, [{
    key: "__construct",
    value: function __construct() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};

      if (args.manager) {
        this.manager = args.manager;
      }

      this.commands = this.defaultCommands();
      this.commandsInternal = this.defaultCommandsInternal();
      this.hooks = this.defaultHooks();
      this.routes = this.defaultRoutes();
      this.tabs = this.defaultTabs();
      this.shortcuts = this.defaultShortcuts();
      this.utils = this.defaultUtils();
      this.data = this.defaultData();
      this.uiStates = this.defaultUiStates();
      this.defaultRoute = '';
      this.currentTab = '';
    }
  }, {
    key: "registerAPI",
    value: function registerAPI() {
      var _this = this;

      (0, _entries.default)(this.getTabs()).forEach(function (tab) {
        return _this.registerTabRoute(tab[0]);
      });
      (0, _entries.default)(this.getRoutes()).forEach(function (_ref) {
        var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
            route = _ref2[0],
            callback = _ref2[1];

        return _this.registerRoute(route, callback);
      });
      (0, _entries.default)(this.getCommands()).forEach(function (_ref3) {
        var _ref4 = (0, _slicedToArray2.default)(_ref3, 2),
            command = _ref4[0],
            callback = _ref4[1];

        return _this.registerCommand(command, callback);
      });
      (0, _entries.default)(this.getCommandsInternal()).forEach(function (_ref5) {
        var _ref6 = (0, _slicedToArray2.default)(_ref5, 2),
            command = _ref6[0],
            callback = _ref6[1];

        return _this.registerCommandInternal(command, callback);
      });
      (0, _values.default)(this.getHooks()).forEach(function (instance) {
        return _this.registerHook(instance);
      });
      (0, _entries.default)(this.getData()).forEach(function (_ref7) {
        var _ref8 = (0, _slicedToArray2.default)(_ref7, 2),
            command = _ref8[0],
            callback = _ref8[1];

        return _this.registerData(command, callback);
      });
      (0, _values.default)(this.getUiStates()).forEach(function (instance) {
        return _this.registerUiState(instance);
      });
    }
    /**
     * @returns {string}
     */

  }, {
    key: "getNamespace",
    value: function getNamespace() {
      elementorModules.ForceMethodImplementation();
    }
  }, {
    key: "getRootContainer",
    value: function getRootContainer() {
      var parts = this.getNamespace().split('/');
      return parts[0];
    }
  }, {
    key: "defaultTabs",
    value: function defaultTabs() {
      return {};
    }
  }, {
    key: "defaultRoutes",
    value: function defaultRoutes() {
      return {};
    }
  }, {
    key: "defaultCommands",
    value: function defaultCommands() {
      return {};
    }
  }, {
    key: "defaultCommandsInternal",
    value: function defaultCommandsInternal() {
      return {};
    }
  }, {
    key: "defaultHooks",
    value: function defaultHooks() {
      return {};
    }
    /**
     * Get the component's default UI states.
     *
     * @return {Object}
     */

  }, {
    key: "defaultUiStates",
    value: function defaultUiStates() {
      return {};
    }
  }, {
    key: "defaultShortcuts",
    value: function defaultShortcuts() {
      return {};
    }
  }, {
    key: "defaultUtils",
    value: function defaultUtils() {
      return {};
    }
  }, {
    key: "defaultData",
    value: function defaultData() {
      return {};
    }
  }, {
    key: "getCommands",
    value: function getCommands() {
      return this.commands;
    }
  }, {
    key: "getCommandsInternal",
    value: function getCommandsInternal() {
      return this.commandsInternal;
    }
  }, {
    key: "getHooks",
    value: function getHooks() {
      return this.hooks;
    }
    /**
     * Retrieve the component's UI states.
     *
     * @return {Object}
     */

  }, {
    key: "getUiStates",
    value: function getUiStates() {
      return this.uiStates;
    }
  }, {
    key: "getRoutes",
    value: function getRoutes() {
      return this.routes;
    }
  }, {
    key: "getTabs",
    value: function getTabs() {
      return this.tabs;
    }
  }, {
    key: "getShortcuts",
    value: function getShortcuts() {
      return this.shortcuts;
    }
  }, {
    key: "getData",
    value: function getData() {
      return this.data;
    }
  }, {
    key: "registerCommand",
    value: function registerCommand(command, callback) {
      $e.commands.register(this, command, callback);
    }
    /**
     * @param {HookBase} instance
     */

  }, {
    key: "registerHook",
    value: function registerHook(instance) {
      return instance.register();
    }
    /**
     * Register a UI state.
     *
     * @param {UiStateBase} instance - UI state instance.
     *
     * @return {void}
     */

  }, {
    key: "registerUiState",
    value: function registerUiState(instance) {
      $e.uiStates.register(instance);
    }
  }, {
    key: "registerCommandInternal",
    value: function registerCommandInternal(command, callback) {
      $e.commandsInternal.register(this, command, callback);
    }
  }, {
    key: "registerRoute",
    value: function registerRoute(route, callback) {
      $e.routes.register(this, route, callback);
    }
  }, {
    key: "registerData",
    value: function registerData(command, callback) {
      $e.data.register(this, command, callback);
    }
  }, {
    key: "unregisterRoute",
    value: function unregisterRoute(route) {
      $e.routes.unregister(this, route);
    }
  }, {
    key: "registerTabRoute",
    value: function registerTabRoute(tab) {
      var _this2 = this;

      this.registerRoute(tab, function (args) {
        return _this2.activateTab(tab, args);
      });
    }
  }, {
    key: "dependency",
    value: function dependency() {
      return true;
    }
  }, {
    key: "open",
    value: function open() {
      return true;
    }
  }, {
    key: "close",
    value: function close() {
      if (!this.isOpen) {
        return false;
      }

      this.isOpen = false;
      this.inactivate();
      $e.routes.clearCurrent(this.getNamespace());
      $e.routes.clearHistory(this.getRootContainer());
      return true;
    }
  }, {
    key: "activate",
    value: function activate() {
      $e.components.activate(this.getNamespace());
    }
  }, {
    key: "inactivate",
    value: function inactivate() {
      $e.components.inactivate(this.getNamespace());
    }
  }, {
    key: "isActive",
    value: function isActive() {
      return $e.components.isActive(this.getNamespace());
    }
  }, {
    key: "onRoute",
    value: function onRoute(route) {
      this.toggleRouteClass(route, true);
      this.toggleHistoryClass();
      this.activate();
      this.trigger('route/open', route);
    }
  }, {
    key: "onCloseRoute",
    value: function onCloseRoute(route) {
      this.toggleRouteClass(route, false);
      this.inactivate();
      this.trigger('route/close', route);
    }
  }, {
    key: "setDefaultRoute",
    value: function setDefaultRoute(route) {
      this.defaultRoute = this.getNamespace() + '/' + route;
    }
  }, {
    key: "getDefaultRoute",
    value: function getDefaultRoute() {
      return this.defaultRoute;
    }
  }, {
    key: "removeTab",
    value: function removeTab(tab) {
      delete this.tabs[tab];
      this.unregisterRoute(tab);
    }
  }, {
    key: "hasTab",
    value: function hasTab(tab) {
      return !!this.tabs[tab];
    }
  }, {
    key: "addTab",
    value: function addTab(tab, args, position) {
      var _this3 = this;

      this.tabs[tab] = args; // It can be 0.

      if ('undefined' !== typeof position) {
        var newTabs = {};
        var ids = (0, _keys.default)(this.tabs); // Remove new tab

        ids.pop(); // Add it to position.

        ids.splice(position, 0, tab);
        ids.forEach(function (id) {
          newTabs[id] = _this3.tabs[id];
        });
        this.tabs = newTabs;
      }

      this.registerTabRoute(tab);
    }
  }, {
    key: "getTabsWrapperSelector",
    value: function getTabsWrapperSelector() {
      return '';
    }
  }, {
    key: "getTabRoute",
    value: function getTabRoute(tab) {
      return this.getNamespace() + '/' + tab;
    }
  }, {
    key: "renderTab",
    value: function renderTab(tab) {} // eslint-disable-line

  }, {
    key: "activateTab",
    value: function activateTab(tab, args) {
      var _this4 = this;

      this.currentTab = tab;
      this.renderTab(tab, args);
      jQuery(this.getTabsWrapperSelector() + ' .elementor-component-tab').off('click').on('click', function (event) {
        $e.route(_this4.getTabRoute(event.currentTarget.dataset.tab), args);
      }).removeClass('elementor-active').filter('[data-tab="' + tab + '"]').addClass('elementor-active');
    }
  }, {
    key: "getActiveTabConfig",
    value: function getActiveTabConfig() {
      return this.tabs[this.currentTab] || {};
    }
  }, {
    key: "getBodyClass",
    value: function getBodyClass(route) {
      return 'e-route-' + route.replace(/\//g, '-');
    }
    /**
     * If command includes uppercase character convert it to lowercase and add `-`.
     * e.g: `CopyAll` is converted to `copy-all`.
     */

  }, {
    key: "normalizeCommandName",
    value: function normalizeCommandName(commandName) {
      return commandName.replace(/[A-Z]/g, function (match, offset) {
        return (offset > 0 ? '-' : '') + match.toLowerCase();
      });
    }
  }, {
    key: "importCommands",
    value: function importCommands(commandsFromImport) {
      var _this5 = this;

      var commands = {}; // Convert `Commands` to `ComponentBase` workable format.

      (0, _entries.default)(commandsFromImport).forEach(function (_ref9) {
        var _ref10 = (0, _slicedToArray2.default)(_ref9, 2),
            className = _ref10[0],
            Class = _ref10[1];

        var command = _this5.normalizeCommandName(className);

        commands[command] = function (args) {
          return new Class(args).run();
        }; // TODO: Temporary code, remove after merge with 'require-commands-base' branch.
        // should not return callback, but Class or Instance without run ( gain performance ).


        $e.commands.classes[_this5.getNamespace() + '/' + command] = Class;
      });
      return commands;
    }
  }, {
    key: "importHooks",
    value: function importHooks(hooksFromImport) {
      var hooks = {};

      for (var key in hooksFromImport) {
        var hook = new hooksFromImport[key]();
        hooks[hook.getId()] = hook;
      }

      return hooks;
    }
    /**
     * Import & initialize the component's UI states.
     * Should be used inside `defaultUiState()`.
     *
     * @param {Object} statesFromImport - UI states from import.
     *
     * @return {Object}
     */

  }, {
    key: "importUiStates",
    value: function importUiStates(statesFromImport) {
      var _this6 = this;

      var uiStates = {};
      (0, _values.default)(statesFromImport).forEach(function (className) {
        var uiState = new className(_this6);
        uiStates[uiState.getId()] = uiState;
      });
      return uiStates;
    }
    /**
     * Set a UI state value.
     * TODO: Should we provide such function? Maybe the developer should implicitly pass the full state ID?
     *
     * @param state - Non-prefixed state ID.
     * @param value - New state value.
     *
     * @return {void}
     */

  }, {
    key: "setUiState",
    value: function setUiState(state, value) {
      $e.uiStates.set("".concat(this.getNamespace(), "/").concat(state), value);
    }
  }, {
    key: "toggleRouteClass",
    value: function toggleRouteClass(route, state) {
      elementorCommon.elements.$body.toggleClass(this.getBodyClass(route), state);
    }
  }, {
    key: "toggleHistoryClass",
    value: function toggleHistoryClass() {
      elementorCommon.elements.$body.toggleClass('e-routes-has-history', !!$e.routes.getHistory(this.getRootContainer()).length);
    }
  }]);
  return ComponentBase;
}(elementorModules.Module);

exports.default = ComponentBase;

/***/ }),

/***/ "../node_modules/core-js/library/fn/array/from.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/fn/array/from.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.string.iterator */ "../node_modules/core-js/library/modules/es6.string.iterator.js");
__webpack_require__(/*! ../../modules/es6.array.from */ "../node_modules/core-js/library/modules/es6.array.from.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Array.from;


/***/ }),

/***/ "../node_modules/core-js/library/fn/array/is-array.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/fn/array/is-array.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.array.is-array */ "../node_modules/core-js/library/modules/es6.array.is-array.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Array.isArray;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/create.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/create.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.create */ "../node_modules/core-js/library/modules/es6.object.create.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function create(P, D) {
  return $Object.create(P, D);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/define-property.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/define-property.js ***!
  \********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.define-property */ "../node_modules/core-js/library/modules/es6.object.define-property.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function defineProperty(it, key, desc) {
  return $Object.defineProperty(it, key, desc);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/entries.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/entries.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es7.object.entries */ "../node_modules/core-js/library/modules/es7.object.entries.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.entries;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/get-own-property-descriptor.js":
/*!********************************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/get-own-property-descriptor.js ***!
  \********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.get-own-property-descriptor */ "../node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function getOwnPropertyDescriptor(it, key) {
  return $Object.getOwnPropertyDescriptor(it, key);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/get-prototype-of.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/get-prototype-of.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.get-prototype-of */ "../node_modules/core-js/library/modules/es6.object.get-prototype-of.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.getPrototypeOf;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/keys.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/keys.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.keys */ "../node_modules/core-js/library/modules/es6.object.keys.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.keys;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/set-prototype-of.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/set-prototype-of.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.set-prototype-of */ "../node_modules/core-js/library/modules/es6.object.set-prototype-of.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.setPrototypeOf;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/values.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/values.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es7.object.values */ "../node_modules/core-js/library/modules/es7.object.values.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.values;


/***/ }),

/***/ "../node_modules/core-js/library/fn/promise.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/library/fn/promise.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../modules/es6.object.to-string */ "../node_modules/core-js/library/modules/es6.object.to-string.js");
__webpack_require__(/*! ../modules/es6.string.iterator */ "../node_modules/core-js/library/modules/es6.string.iterator.js");
__webpack_require__(/*! ../modules/web.dom.iterable */ "../node_modules/core-js/library/modules/web.dom.iterable.js");
__webpack_require__(/*! ../modules/es6.promise */ "../node_modules/core-js/library/modules/es6.promise.js");
__webpack_require__(/*! ../modules/es7.promise.finally */ "../node_modules/core-js/library/modules/es7.promise.finally.js");
__webpack_require__(/*! ../modules/es7.promise.try */ "../node_modules/core-js/library/modules/es7.promise.try.js");
module.exports = __webpack_require__(/*! ../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Promise;


/***/ }),

/***/ "../node_modules/core-js/library/fn/reflect/construct.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/fn/reflect/construct.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.reflect.construct */ "../node_modules/core-js/library/modules/es6.reflect.construct.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Reflect.construct;


/***/ }),

/***/ "../node_modules/core-js/library/fn/reflect/get.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/library/fn/reflect/get.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.reflect.get */ "../node_modules/core-js/library/modules/es6.reflect.get.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Reflect.get;


/***/ }),

/***/ "../node_modules/core-js/library/fn/symbol/has-instance.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/fn/symbol/has-instance.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.function.has-instance */ "../node_modules/core-js/library/modules/es6.function.has-instance.js");
module.exports = __webpack_require__(/*! ../../modules/_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js").f('hasInstance');


/***/ }),

/***/ "../node_modules/core-js/library/fn/symbol/index.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/fn/symbol/index.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.symbol */ "../node_modules/core-js/library/modules/es6.symbol.js");
__webpack_require__(/*! ../../modules/es6.object.to-string */ "../node_modules/core-js/library/modules/es6.object.to-string.js");
__webpack_require__(/*! ../../modules/es7.symbol.async-iterator */ "../node_modules/core-js/library/modules/es7.symbol.async-iterator.js");
__webpack_require__(/*! ../../modules/es7.symbol.observable */ "../node_modules/core-js/library/modules/es7.symbol.observable.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Symbol;


/***/ }),

/***/ "../node_modules/core-js/library/fn/symbol/iterator.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/fn/symbol/iterator.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.string.iterator */ "../node_modules/core-js/library/modules/es6.string.iterator.js");
__webpack_require__(/*! ../../modules/web.dom.iterable */ "../node_modules/core-js/library/modules/web.dom.iterable.js");
module.exports = __webpack_require__(/*! ../../modules/_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js").f('iterator');


/***/ }),

/***/ "../node_modules/core-js/library/fn/weak-map.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/library/fn/weak-map.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../modules/es6.object.to-string */ "../node_modules/core-js/library/modules/es6.object.to-string.js");
__webpack_require__(/*! ../modules/web.dom.iterable */ "../node_modules/core-js/library/modules/web.dom.iterable.js");
__webpack_require__(/*! ../modules/es6.weak-map */ "../node_modules/core-js/library/modules/es6.weak-map.js");
__webpack_require__(/*! ../modules/es7.weak-map.of */ "../node_modules/core-js/library/modules/es7.weak-map.of.js");
__webpack_require__(/*! ../modules/es7.weak-map.from */ "../node_modules/core-js/library/modules/es7.weak-map.from.js");
module.exports = __webpack_require__(/*! ../modules/_core */ "../node_modules/core-js/library/modules/_core.js").WeakMap;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_a-function.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_a-function.js ***!
  \**************************************************************/
/***/ ((module) => {

module.exports = function (it) {
  if (typeof it != 'function') throw TypeError(it + ' is not a function!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_add-to-unscopables.js":
/*!**********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_add-to-unscopables.js ***!
  \**********************************************************************/
/***/ ((module) => {

module.exports = function () { /* empty */ };


/***/ }),

/***/ "../node_modules/core-js/library/modules/_an-instance.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_an-instance.js ***!
  \***************************************************************/
/***/ ((module) => {

module.exports = function (it, Constructor, name, forbiddenField) {
  if (!(it instanceof Constructor) || (forbiddenField !== undefined && forbiddenField in it)) {
    throw TypeError(name + ': incorrect invocation!');
  } return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_an-object.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_an-object.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
module.exports = function (it) {
  if (!isObject(it)) throw TypeError(it + ' is not an object!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-includes.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-includes.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// false -> Array#indexOf
// true  -> Array#includes
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
var toAbsoluteIndex = __webpack_require__(/*! ./_to-absolute-index */ "../node_modules/core-js/library/modules/_to-absolute-index.js");
module.exports = function (IS_INCLUDES) {
  return function ($this, el, fromIndex) {
    var O = toIObject($this);
    var length = toLength(O.length);
    var index = toAbsoluteIndex(fromIndex, length);
    var value;
    // Array#includes uses SameValueZero equality algorithm
    // eslint-disable-next-line no-self-compare
    if (IS_INCLUDES && el != el) while (length > index) {
      value = O[index++];
      // eslint-disable-next-line no-self-compare
      if (value != value) return true;
    // Array#indexOf ignores holes, Array#includes - not
    } else for (;length > index; index++) if (IS_INCLUDES || index in O) {
      if (O[index] === el) return IS_INCLUDES || index || 0;
    } return !IS_INCLUDES && -1;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-methods.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-methods.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 0 -> Array#forEach
// 1 -> Array#map
// 2 -> Array#filter
// 3 -> Array#some
// 4 -> Array#every
// 5 -> Array#find
// 6 -> Array#findIndex
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/library/modules/_iobject.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
var asc = __webpack_require__(/*! ./_array-species-create */ "../node_modules/core-js/library/modules/_array-species-create.js");
module.exports = function (TYPE, $create) {
  var IS_MAP = TYPE == 1;
  var IS_FILTER = TYPE == 2;
  var IS_SOME = TYPE == 3;
  var IS_EVERY = TYPE == 4;
  var IS_FIND_INDEX = TYPE == 6;
  var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
  var create = $create || asc;
  return function ($this, callbackfn, that) {
    var O = toObject($this);
    var self = IObject(O);
    var f = ctx(callbackfn, that, 3);
    var length = toLength(self.length);
    var index = 0;
    var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;
    var val, res;
    for (;length > index; index++) if (NO_HOLES || index in self) {
      val = self[index];
      res = f(val, index, O);
      if (TYPE) {
        if (IS_MAP) result[index] = res;   // map
        else if (res) switch (TYPE) {
          case 3: return true;             // some
          case 5: return val;              // find
          case 6: return index;            // findIndex
          case 2: result.push(val);        // filter
        } else if (IS_EVERY) return false; // every
      }
    }
    return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-species-constructor.js":
/*!*****************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-species-constructor.js ***!
  \*****************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var isArray = __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/library/modules/_is-array.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('species');

module.exports = function (original) {
  var C;
  if (isArray(original)) {
    C = original.constructor;
    // cross-realm fallback
    if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
    if (isObject(C)) {
      C = C[SPECIES];
      if (C === null) C = undefined;
    }
  } return C === undefined ? Array : C;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-species-create.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-species-create.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 9.4.2.3 ArraySpeciesCreate(originalArray, length)
var speciesConstructor = __webpack_require__(/*! ./_array-species-constructor */ "../node_modules/core-js/library/modules/_array-species-constructor.js");

module.exports = function (original, length) {
  return new (speciesConstructor(original))(length);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_bind.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_bind.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var invoke = __webpack_require__(/*! ./_invoke */ "../node_modules/core-js/library/modules/_invoke.js");
var arraySlice = [].slice;
var factories = {};

var construct = function (F, len, args) {
  if (!(len in factories)) {
    for (var n = [], i = 0; i < len; i++) n[i] = 'a[' + i + ']';
    // eslint-disable-next-line no-new-func
    factories[len] = Function('F,a', 'return new F(' + n.join(',') + ')');
  } return factories[len](F, args);
};

module.exports = Function.bind || function bind(that /* , ...args */) {
  var fn = aFunction(this);
  var partArgs = arraySlice.call(arguments, 1);
  var bound = function (/* args... */) {
    var args = partArgs.concat(arraySlice.call(arguments));
    return this instanceof bound ? construct(fn, args.length, args) : invoke(fn, args, that);
  };
  if (isObject(fn.prototype)) bound.prototype = fn.prototype;
  return bound;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_classof.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_classof.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// getting tag from 19.1.3.6 Object.prototype.toString()
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('toStringTag');
// ES3 wrong here
var ARG = cof(function () { return arguments; }()) == 'Arguments';

// fallback for IE11 Script Access Denied error
var tryGet = function (it, key) {
  try {
    return it[key];
  } catch (e) { /* empty */ }
};

module.exports = function (it) {
  var O, T, B;
  return it === undefined ? 'Undefined' : it === null ? 'Null'
    // @@toStringTag case
    : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T
    // builtinTag case
    : ARG ? cof(O)
    // ES3 arguments fallback
    : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_cof.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_cof.js ***!
  \*******************************************************/
/***/ ((module) => {

var toString = {}.toString;

module.exports = function (it) {
  return toString.call(it).slice(8, -1);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_collection-weak.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_collection-weak.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var redefineAll = __webpack_require__(/*! ./_redefine-all */ "../node_modules/core-js/library/modules/_redefine-all.js");
var getWeak = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js").getWeak;
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var anInstance = __webpack_require__(/*! ./_an-instance */ "../node_modules/core-js/library/modules/_an-instance.js");
var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");
var createArrayMethod = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/library/modules/_array-methods.js");
var $has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var validate = __webpack_require__(/*! ./_validate-collection */ "../node_modules/core-js/library/modules/_validate-collection.js");
var arrayFind = createArrayMethod(5);
var arrayFindIndex = createArrayMethod(6);
var id = 0;

// fallback for uncaught frozen keys
var uncaughtFrozenStore = function (that) {
  return that._l || (that._l = new UncaughtFrozenStore());
};
var UncaughtFrozenStore = function () {
  this.a = [];
};
var findUncaughtFrozen = function (store, key) {
  return arrayFind(store.a, function (it) {
    return it[0] === key;
  });
};
UncaughtFrozenStore.prototype = {
  get: function (key) {
    var entry = findUncaughtFrozen(this, key);
    if (entry) return entry[1];
  },
  has: function (key) {
    return !!findUncaughtFrozen(this, key);
  },
  set: function (key, value) {
    var entry = findUncaughtFrozen(this, key);
    if (entry) entry[1] = value;
    else this.a.push([key, value]);
  },
  'delete': function (key) {
    var index = arrayFindIndex(this.a, function (it) {
      return it[0] === key;
    });
    if (~index) this.a.splice(index, 1);
    return !!~index;
  }
};

module.exports = {
  getConstructor: function (wrapper, NAME, IS_MAP, ADDER) {
    var C = wrapper(function (that, iterable) {
      anInstance(that, C, NAME, '_i');
      that._t = NAME;      // collection type
      that._i = id++;      // collection id
      that._l = undefined; // leak store for uncaught frozen objects
      if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);
    });
    redefineAll(C.prototype, {
      // 23.3.3.2 WeakMap.prototype.delete(key)
      // 23.4.3.3 WeakSet.prototype.delete(value)
      'delete': function (key) {
        if (!isObject(key)) return false;
        var data = getWeak(key);
        if (data === true) return uncaughtFrozenStore(validate(this, NAME))['delete'](key);
        return data && $has(data, this._i) && delete data[this._i];
      },
      // 23.3.3.4 WeakMap.prototype.has(key)
      // 23.4.3.4 WeakSet.prototype.has(value)
      has: function has(key) {
        if (!isObject(key)) return false;
        var data = getWeak(key);
        if (data === true) return uncaughtFrozenStore(validate(this, NAME)).has(key);
        return data && $has(data, this._i);
      }
    });
    return C;
  },
  def: function (that, key, value) {
    var data = getWeak(anObject(key), true);
    if (data === true) uncaughtFrozenStore(that).set(key, value);
    else data[that._i] = value;
    return that;
  },
  ufstore: uncaughtFrozenStore
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_collection.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_collection.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var meta = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var redefineAll = __webpack_require__(/*! ./_redefine-all */ "../node_modules/core-js/library/modules/_redefine-all.js");
var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");
var anInstance = __webpack_require__(/*! ./_an-instance */ "../node_modules/core-js/library/modules/_an-instance.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
var each = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/library/modules/_array-methods.js")(0);
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");

module.exports = function (NAME, wrapper, methods, common, IS_MAP, IS_WEAK) {
  var Base = global[NAME];
  var C = Base;
  var ADDER = IS_MAP ? 'set' : 'add';
  var proto = C && C.prototype;
  var O = {};
  if (!DESCRIPTORS || typeof C != 'function' || !(IS_WEAK || proto.forEach && !fails(function () {
    new C().entries().next();
  }))) {
    // create collection constructor
    C = common.getConstructor(wrapper, NAME, IS_MAP, ADDER);
    redefineAll(C.prototype, methods);
    meta.NEED = true;
  } else {
    C = wrapper(function (target, iterable) {
      anInstance(target, C, NAME, '_c');
      target._c = new Base();
      if (iterable != undefined) forOf(iterable, IS_MAP, target[ADDER], target);
    });
    each('add,clear,delete,forEach,get,has,set,keys,values,entries,toJSON'.split(','), function (KEY) {
      var IS_ADDER = KEY == 'add' || KEY == 'set';
      if (KEY in proto && !(IS_WEAK && KEY == 'clear')) hide(C.prototype, KEY, function (a, b) {
        anInstance(this, C, KEY);
        if (!IS_ADDER && IS_WEAK && !isObject(a)) return KEY == 'get' ? undefined : false;
        var result = this._c[KEY](a === 0 ? 0 : a, b);
        return IS_ADDER ? this : result;
      });
    });
    IS_WEAK || dP(C.prototype, 'size', {
      get: function () {
        return this._c.size;
      }
    });
  }

  setToStringTag(C, NAME);

  O[NAME] = C;
  $export($export.G + $export.W + $export.F, O);

  if (!IS_WEAK) common.setStrong(C, NAME, IS_MAP);

  return C;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_core.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_core.js ***!
  \********************************************************/
/***/ ((module) => {

var core = module.exports = { version: '2.6.12' };
if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/library/modules/_create-property.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_create-property.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $defineProperty = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");

module.exports = function (object, index, value) {
  if (index in object) $defineProperty.f(object, index, createDesc(0, value));
  else object[index] = value;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_ctx.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_ctx.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// optional / simple context binding
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
module.exports = function (fn, that, length) {
  aFunction(fn);
  if (that === undefined) return fn;
  switch (length) {
    case 1: return function (a) {
      return fn.call(that, a);
    };
    case 2: return function (a, b) {
      return fn.call(that, a, b);
    };
    case 3: return function (a, b, c) {
      return fn.call(that, a, b, c);
    };
  }
  return function (/* ...args */) {
    return fn.apply(that, arguments);
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_defined.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_defined.js ***!
  \***********************************************************/
/***/ ((module) => {

// 7.2.1 RequireObjectCoercible(argument)
module.exports = function (it) {
  if (it == undefined) throw TypeError("Can't call method on  " + it);
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_descriptors.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_descriptors.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Thank's IE8 for his funny defineProperty
module.exports = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/_dom-create.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_dom-create.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").document;
// typeof document.createElement is 'object' in old IE
var is = isObject(document) && isObject(document.createElement);
module.exports = function (it) {
  return is ? document.createElement(it) : {};
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_enum-bug-keys.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_enum-bug-keys.js ***!
  \*****************************************************************/
/***/ ((module) => {

// IE 8- don't enum bug keys
module.exports = (
  'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
).split(',');


/***/ }),

/***/ "../node_modules/core-js/library/modules/_enum-keys.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_enum-keys.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// all enumerable object keys, includes symbols
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var gOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js");
module.exports = function (it) {
  var result = getKeys(it);
  var getSymbols = gOPS.f;
  if (getSymbols) {
    var symbols = getSymbols(it);
    var isEnum = pIE.f;
    var i = 0;
    var key;
    while (symbols.length > i) if (isEnum.call(it, key = symbols[i++])) result.push(key);
  } return result;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_export.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_export.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var PROTOTYPE = 'prototype';

var $export = function (type, name, source) {
  var IS_FORCED = type & $export.F;
  var IS_GLOBAL = type & $export.G;
  var IS_STATIC = type & $export.S;
  var IS_PROTO = type & $export.P;
  var IS_BIND = type & $export.B;
  var IS_WRAP = type & $export.W;
  var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
  var expProto = exports[PROTOTYPE];
  var target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE];
  var key, own, out;
  if (IS_GLOBAL) source = name;
  for (key in source) {
    // contains in native
    own = !IS_FORCED && target && target[key] !== undefined;
    if (own && has(exports, key)) continue;
    // export native or passed
    out = own ? target[key] : source[key];
    // prevent global pollution for namespaces
    exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key]
    // bind timers to global for call from export context
    : IS_BIND && own ? ctx(out, global)
    // wrap global constructors for prevent change them in library
    : IS_WRAP && target[key] == out ? (function (C) {
      var F = function (a, b, c) {
        if (this instanceof C) {
          switch (arguments.length) {
            case 0: return new C();
            case 1: return new C(a);
            case 2: return new C(a, b);
          } return new C(a, b, c);
        } return C.apply(this, arguments);
      };
      F[PROTOTYPE] = C[PROTOTYPE];
      return F;
    // make static versions for prototype methods
    })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
    // export proto methods to core.%CONSTRUCTOR%.methods.%NAME%
    if (IS_PROTO) {
      (exports.virtual || (exports.virtual = {}))[key] = out;
      // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME%
      if (type & $export.R && expProto && !expProto[key]) hide(expProto, key, out);
    }
  }
};
// type bitmap
$export.F = 1;   // forced
$export.G = 2;   // global
$export.S = 4;   // static
$export.P = 8;   // proto
$export.B = 16;  // bind
$export.W = 32;  // wrap
$export.U = 64;  // safe
$export.R = 128; // real proto method for `library`
module.exports = $export;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_fails.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_fails.js ***!
  \*********************************************************/
/***/ ((module) => {

module.exports = function (exec) {
  try {
    return !!exec();
  } catch (e) {
    return true;
  }
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_for-of.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_for-of.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var call = __webpack_require__(/*! ./_iter-call */ "../node_modules/core-js/library/modules/_iter-call.js");
var isArrayIter = __webpack_require__(/*! ./_is-array-iter */ "../node_modules/core-js/library/modules/_is-array-iter.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
var getIterFn = __webpack_require__(/*! ./core.get-iterator-method */ "../node_modules/core-js/library/modules/core.get-iterator-method.js");
var BREAK = {};
var RETURN = {};
var exports = module.exports = function (iterable, entries, fn, that, ITERATOR) {
  var iterFn = ITERATOR ? function () { return iterable; } : getIterFn(iterable);
  var f = ctx(fn, that, entries ? 2 : 1);
  var index = 0;
  var length, step, iterator, result;
  if (typeof iterFn != 'function') throw TypeError(iterable + ' is not iterable!');
  // fast case for arrays with default iterator
  if (isArrayIter(iterFn)) for (length = toLength(iterable.length); length > index; index++) {
    result = entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]);
    if (result === BREAK || result === RETURN) return result;
  } else for (iterator = iterFn.call(iterable); !(step = iterator.next()).done;) {
    result = call(iterator, f, step.value, entries);
    if (result === BREAK || result === RETURN) return result;
  }
};
exports.BREAK = BREAK;
exports.RETURN = RETURN;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_global.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_global.js ***!
  \**********************************************************/
/***/ ((module) => {

// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
var global = module.exports = typeof window != 'undefined' && window.Math == Math
  ? window : typeof self != 'undefined' && self.Math == Math ? self
  // eslint-disable-next-line no-new-func
  : Function('return this')();
if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/library/modules/_has.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_has.js ***!
  \*******************************************************/
/***/ ((module) => {

var hasOwnProperty = {}.hasOwnProperty;
module.exports = function (it, key) {
  return hasOwnProperty.call(it, key);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_hide.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_hide.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? function (object, key, value) {
  return dP.f(object, key, createDesc(1, value));
} : function (object, key, value) {
  object[key] = value;
  return object;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_html.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_html.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").document;
module.exports = document && document.documentElement;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_ie8-dom-define.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_ie8-dom-define.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") && !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  return Object.defineProperty(__webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/library/modules/_dom-create.js")('div'), 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/_invoke.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_invoke.js ***!
  \**********************************************************/
/***/ ((module) => {

// fast apply, http://jsperf.lnkit.com/fast-apply/5
module.exports = function (fn, args, that) {
  var un = that === undefined;
  switch (args.length) {
    case 0: return un ? fn()
                      : fn.call(that);
    case 1: return un ? fn(args[0])
                      : fn.call(that, args[0]);
    case 2: return un ? fn(args[0], args[1])
                      : fn.call(that, args[0], args[1]);
    case 3: return un ? fn(args[0], args[1], args[2])
                      : fn.call(that, args[0], args[1], args[2]);
    case 4: return un ? fn(args[0], args[1], args[2], args[3])
                      : fn.call(that, args[0], args[1], args[2], args[3]);
  } return fn.apply(that, args);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iobject.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iobject.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// fallback for non-array-like ES3 and non-enumerable old V8 strings
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js");
// eslint-disable-next-line no-prototype-builtins
module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
  return cof(it) == 'String' ? it.split('') : Object(it);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_is-array-iter.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_is-array-iter.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// check on default Array iterator
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var ArrayProto = Array.prototype;

module.exports = function (it) {
  return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_is-array.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_is-array.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.2.2 IsArray(argument)
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js");
module.exports = Array.isArray || function isArray(arg) {
  return cof(arg) == 'Array';
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_is-object.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_is-object.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = function (it) {
  return typeof it === 'object' ? it !== null : typeof it === 'function';
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-call.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-call.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// call something on iterator step with safe closing on error
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
module.exports = function (iterator, fn, value, entries) {
  try {
    return entries ? fn(anObject(value)[0], value[1]) : fn(value);
  // 7.4.6 IteratorClose(iterator, completion)
  } catch (e) {
    var ret = iterator['return'];
    if (ret !== undefined) anObject(ret.call(iterator));
    throw e;
  }
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-create.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-create.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
var descriptor = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var IteratorPrototype = {};

// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
__webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js")(IteratorPrototype, __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator'), function () { return this; });

module.exports = function (Constructor, NAME, next) {
  Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });
  setToStringTag(Constructor, NAME + ' Iterator');
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-define.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-define.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/library/modules/_redefine.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var $iterCreate = __webpack_require__(/*! ./_iter-create */ "../node_modules/core-js/library/modules/_iter-create.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`
var FF_ITERATOR = '@@iterator';
var KEYS = 'keys';
var VALUES = 'values';

var returnThis = function () { return this; };

module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {
  $iterCreate(Constructor, NAME, next);
  var getMethod = function (kind) {
    if (!BUGGY && kind in proto) return proto[kind];
    switch (kind) {
      case KEYS: return function keys() { return new Constructor(this, kind); };
      case VALUES: return function values() { return new Constructor(this, kind); };
    } return function entries() { return new Constructor(this, kind); };
  };
  var TAG = NAME + ' Iterator';
  var DEF_VALUES = DEFAULT == VALUES;
  var VALUES_BUG = false;
  var proto = Base.prototype;
  var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];
  var $default = $native || getMethod(DEFAULT);
  var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;
  var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;
  var methods, key, IteratorPrototype;
  // Fix native
  if ($anyNative) {
    IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));
    if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {
      // Set @@toStringTag to native iterators
      setToStringTag(IteratorPrototype, TAG, true);
      // fix for some old engines
      if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);
    }
  }
  // fix Array#{values, @@iterator}.name in V8 / FF
  if (DEF_VALUES && $native && $native.name !== VALUES) {
    VALUES_BUG = true;
    $default = function values() { return $native.call(this); };
  }
  // Define iterator
  if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {
    hide(proto, ITERATOR, $default);
  }
  // Plug for library
  Iterators[NAME] = $default;
  Iterators[TAG] = returnThis;
  if (DEFAULT) {
    methods = {
      values: DEF_VALUES ? $default : getMethod(VALUES),
      keys: IS_SET ? $default : getMethod(KEYS),
      entries: $entries
    };
    if (FORCED) for (key in methods) {
      if (!(key in proto)) redefine(proto, key, methods[key]);
    } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
  }
  return methods;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-detect.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-detect.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var SAFE_CLOSING = false;

try {
  var riter = [7][ITERATOR]();
  riter['return'] = function () { SAFE_CLOSING = true; };
  // eslint-disable-next-line no-throw-literal
  Array.from(riter, function () { throw 2; });
} catch (e) { /* empty */ }

module.exports = function (exec, skipClosing) {
  if (!skipClosing && !SAFE_CLOSING) return false;
  var safe = false;
  try {
    var arr = [7];
    var iter = arr[ITERATOR]();
    iter.next = function () { return { done: safe = true }; };
    arr[ITERATOR] = function () { return iter; };
    exec(arr);
  } catch (e) { /* empty */ }
  return safe;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-step.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-step.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = function (done, value) {
  return { value: value, done: !!done };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iterators.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iterators.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = {};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_library.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_library.js ***!
  \***********************************************************/
/***/ ((module) => {

module.exports = true;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_meta.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_meta.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var META = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js")('meta');
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var setDesc = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
var id = 0;
var isExtensible = Object.isExtensible || function () {
  return true;
};
var FREEZE = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  return isExtensible(Object.preventExtensions({}));
});
var setMeta = function (it) {
  setDesc(it, META, { value: {
    i: 'O' + ++id, // object ID
    w: {}          // weak collections IDs
  } });
};
var fastKey = function (it, create) {
  // return primitive with prefix
  if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;
  if (!has(it, META)) {
    // can't set metadata to uncaught frozen object
    if (!isExtensible(it)) return 'F';
    // not necessary to add metadata
    if (!create) return 'E';
    // add missing metadata
    setMeta(it);
  // return object ID
  } return it[META].i;
};
var getWeak = function (it, create) {
  if (!has(it, META)) {
    // can't set metadata to uncaught frozen object
    if (!isExtensible(it)) return true;
    // not necessary to add metadata
    if (!create) return false;
    // add missing metadata
    setMeta(it);
  // return hash weak collections IDs
  } return it[META].w;
};
// add metadata on freeze-family methods calling
var onFreeze = function (it) {
  if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it);
  return it;
};
var meta = module.exports = {
  KEY: META,
  NEED: false,
  fastKey: fastKey,
  getWeak: getWeak,
  onFreeze: onFreeze
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_microtask.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_microtask.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var macrotask = __webpack_require__(/*! ./_task */ "../node_modules/core-js/library/modules/_task.js").set;
var Observer = global.MutationObserver || global.WebKitMutationObserver;
var process = global.process;
var Promise = global.Promise;
var isNode = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js")(process) == 'process';

module.exports = function () {
  var head, last, notify;

  var flush = function () {
    var parent, fn;
    if (isNode && (parent = process.domain)) parent.exit();
    while (head) {
      fn = head.fn;
      head = head.next;
      try {
        fn();
      } catch (e) {
        if (head) notify();
        else last = undefined;
        throw e;
      }
    } last = undefined;
    if (parent) parent.enter();
  };

  // Node.js
  if (isNode) {
    notify = function () {
      process.nextTick(flush);
    };
  // browsers with MutationObserver, except iOS Safari - https://github.com/zloirock/core-js/issues/339
  } else if (Observer && !(global.navigator && global.navigator.standalone)) {
    var toggle = true;
    var node = document.createTextNode('');
    new Observer(flush).observe(node, { characterData: true }); // eslint-disable-line no-new
    notify = function () {
      node.data = toggle = !toggle;
    };
  // environments with maybe non-completely correct, but existent Promise
  } else if (Promise && Promise.resolve) {
    // Promise.resolve without an argument throws an error in LG WebOS 2
    var promise = Promise.resolve(undefined);
    notify = function () {
      promise.then(flush);
    };
  // for other environments - macrotask based on:
  // - setImmediate
  // - MessageChannel
  // - window.postMessag
  // - onreadystatechange
  // - setTimeout
  } else {
    notify = function () {
      // strange IE + webpack dev server bug - use .call(global)
      macrotask.call(global, flush);
    };
  }

  return function (fn) {
    var task = { fn: fn, next: undefined };
    if (last) last.next = task;
    if (!head) {
      head = task;
      notify();
    } last = task;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_new-promise-capability.js":
/*!**************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_new-promise-capability.js ***!
  \**************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 25.4.1.5 NewPromiseCapability(C)
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");

function PromiseCapability(C) {
  var resolve, reject;
  this.promise = new C(function ($$resolve, $$reject) {
    if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor');
    resolve = $$resolve;
    reject = $$reject;
  });
  this.resolve = aFunction(resolve);
  this.reject = aFunction(reject);
}

module.exports.f = function (C) {
  return new PromiseCapability(C);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-assign.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-assign.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 19.1.2.1 Object.assign(target, source, ...)
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var gOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/library/modules/_iobject.js");
var $assign = Object.assign;

// should work with symbols and should have deterministic property order (V8 bug)
module.exports = !$assign || __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  var A = {};
  var B = {};
  // eslint-disable-next-line no-undef
  var S = Symbol();
  var K = 'abcdefghijklmnopqrst';
  A[S] = 7;
  K.split('').forEach(function (k) { B[k] = k; });
  return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join('') != K;
}) ? function assign(target, source) { // eslint-disable-line no-unused-vars
  var T = toObject(target);
  var aLen = arguments.length;
  var index = 1;
  var getSymbols = gOPS.f;
  var isEnum = pIE.f;
  while (aLen > index) {
    var S = IObject(arguments[index++]);
    var keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S);
    var length = keys.length;
    var j = 0;
    var key;
    while (length > j) {
      key = keys[j++];
      if (!DESCRIPTORS || isEnum.call(S, key)) T[key] = S[key];
    }
  } return T;
} : $assign;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-create.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-create.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var dPs = __webpack_require__(/*! ./_object-dps */ "../node_modules/core-js/library/modules/_object-dps.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');
var Empty = function () { /* empty */ };
var PROTOTYPE = 'prototype';

// Create object with fake `null` prototype: use iframe Object with cleared prototype
var createDict = function () {
  // Thrash, waste and sodomy: IE GC bug
  var iframe = __webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/library/modules/_dom-create.js")('iframe');
  var i = enumBugKeys.length;
  var lt = '<';
  var gt = '>';
  var iframeDocument;
  iframe.style.display = 'none';
  __webpack_require__(/*! ./_html */ "../node_modules/core-js/library/modules/_html.js").appendChild(iframe);
  iframe.src = 'javascript:'; // eslint-disable-line no-script-url
  // createDict = iframe.contentWindow.Object;
  // html.removeChild(iframe);
  iframeDocument = iframe.contentWindow.document;
  iframeDocument.open();
  iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);
  iframeDocument.close();
  createDict = iframeDocument.F;
  while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];
  return createDict();
};

module.exports = Object.create || function create(O, Properties) {
  var result;
  if (O !== null) {
    Empty[PROTOTYPE] = anObject(O);
    result = new Empty();
    Empty[PROTOTYPE] = null;
    // add "__proto__" for Object.getPrototypeOf polyfill
    result[IE_PROTO] = O;
  } else result = createDict();
  return Properties === undefined ? result : dPs(result, Properties);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-dp.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-dp.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/library/modules/_ie8-dom-define.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
var dP = Object.defineProperty;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? Object.defineProperty : function defineProperty(O, P, Attributes) {
  anObject(O);
  P = toPrimitive(P, true);
  anObject(Attributes);
  if (IE8_DOM_DEFINE) try {
    return dP(O, P, Attributes);
  } catch (e) { /* empty */ }
  if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
  if ('value' in Attributes) O[P] = Attributes.value;
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-dps.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-dps.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");

module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? Object.defineProperties : function defineProperties(O, Properties) {
  anObject(O);
  var keys = getKeys(Properties);
  var length = keys.length;
  var i = 0;
  var P;
  while (length > i) dP.f(O, P = keys[i++], Properties[P]);
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gopd.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gopd.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/library/modules/_ie8-dom-define.js");
var gOPD = Object.getOwnPropertyDescriptor;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? gOPD : function getOwnPropertyDescriptor(O, P) {
  O = toIObject(O);
  P = toPrimitive(P, true);
  if (IE8_DOM_DEFINE) try {
    return gOPD(O, P);
  } catch (e) { /* empty */ }
  if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gopn-ext.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gopn-ext.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var gOPN = __webpack_require__(/*! ./_object-gopn */ "../node_modules/core-js/library/modules/_object-gopn.js").f;
var toString = {}.toString;

var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames
  ? Object.getOwnPropertyNames(window) : [];

var getWindowNames = function (it) {
  try {
    return gOPN(it);
  } catch (e) {
    return windowNames.slice();
  }
};

module.exports.f = function getOwnPropertyNames(it) {
  return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gopn.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gopn.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)
var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/library/modules/_object-keys-internal.js");
var hiddenKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js").concat('length', 'prototype');

exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
  return $keys(O, hiddenKeys);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gops.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gops.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports) => {

exports.f = Object.getOwnPropertySymbols;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gpo.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gpo.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');
var ObjectProto = Object.prototype;

module.exports = Object.getPrototypeOf || function (O) {
  O = toObject(O);
  if (has(O, IE_PROTO)) return O[IE_PROTO];
  if (typeof O.constructor == 'function' && O instanceof O.constructor) {
    return O.constructor.prototype;
  } return O instanceof Object ? ObjectProto : null;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-keys-internal.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-keys-internal.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var arrayIndexOf = __webpack_require__(/*! ./_array-includes */ "../node_modules/core-js/library/modules/_array-includes.js")(false);
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');

module.exports = function (object, names) {
  var O = toIObject(object);
  var i = 0;
  var result = [];
  var key;
  for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);
  // Don't enum bug & hidden keys
  while (names.length > i) if (has(O, key = names[i++])) {
    ~arrayIndexOf(result, key) || result.push(key);
  }
  return result;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-keys.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-keys.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.14 / 15.2.3.14 Object.keys(O)
var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/library/modules/_object-keys-internal.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js");

module.exports = Object.keys || function keys(O) {
  return $keys(O, enumBugKeys);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-pie.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-pie.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports) => {

exports.f = {}.propertyIsEnumerable;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-sap.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-sap.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// most Object methods by ES6 should accept primitives
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
module.exports = function (KEY, exec) {
  var fn = (core.Object || {})[KEY] || Object[KEY];
  var exp = {};
  exp[KEY] = exec(fn);
  $export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-to-array.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-to-array.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var isEnum = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js").f;
module.exports = function (isEntries) {
  return function (it) {
    var O = toIObject(it);
    var keys = getKeys(O);
    var length = keys.length;
    var i = 0;
    var result = [];
    var key;
    while (length > i) {
      key = keys[i++];
      if (!DESCRIPTORS || isEnum.call(O, key)) {
        result.push(isEntries ? [key, O[key]] : O[key]);
      }
    }
    return result;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_perform.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_perform.js ***!
  \***********************************************************/
/***/ ((module) => {

module.exports = function (exec) {
  try {
    return { e: false, v: exec() };
  } catch (e) {
    return { e: true, v: e };
  }
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_promise-resolve.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_promise-resolve.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var newPromiseCapability = __webpack_require__(/*! ./_new-promise-capability */ "../node_modules/core-js/library/modules/_new-promise-capability.js");

module.exports = function (C, x) {
  anObject(C);
  if (isObject(x) && x.constructor === C) return x;
  var promiseCapability = newPromiseCapability.f(C);
  var resolve = promiseCapability.resolve;
  resolve(x);
  return promiseCapability.promise;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_property-desc.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_property-desc.js ***!
  \*****************************************************************/
/***/ ((module) => {

module.exports = function (bitmap, value) {
  return {
    enumerable: !(bitmap & 1),
    configurable: !(bitmap & 2),
    writable: !(bitmap & 4),
    value: value
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_redefine-all.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_redefine-all.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
module.exports = function (target, src, safe) {
  for (var key in src) {
    if (safe && target[key]) target[key] = src[key];
    else hide(target, key, src[key]);
  } return target;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_redefine.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_redefine.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-collection-from.js":
/*!***********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-collection-from.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// https://tc39.github.io/proposal-setmap-offrom/
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");

module.exports = function (COLLECTION) {
  $export($export.S, COLLECTION, { from: function from(source /* , mapFn, thisArg */) {
    var mapFn = arguments[1];
    var mapping, A, n, cb;
    aFunction(this);
    mapping = mapFn !== undefined;
    if (mapping) aFunction(mapFn);
    if (source == undefined) return new this();
    A = [];
    if (mapping) {
      n = 0;
      cb = ctx(mapFn, arguments[2], 2);
      forOf(source, false, function (nextItem) {
        A.push(cb(nextItem, n++));
      });
    } else {
      forOf(source, false, A.push, A);
    }
    return new this(A);
  } });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-collection-of.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-collection-of.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// https://tc39.github.io/proposal-setmap-offrom/
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");

module.exports = function (COLLECTION) {
  $export($export.S, COLLECTION, { of: function of() {
    var length = arguments.length;
    var A = new Array(length);
    while (length--) A[length] = arguments[length];
    return new this(A);
  } });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-proto.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-proto.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Works with __proto__ only. Old v8 can't work with null proto objects.
/* eslint-disable no-proto */
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var check = function (O, proto) {
  anObject(O);
  if (!isObject(proto) && proto !== null) throw TypeError(proto + ": can't set as prototype!");
};
module.exports = {
  set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line
    function (test, buggy, set) {
      try {
        set = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js")(Function.call, __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js").f(Object.prototype, '__proto__').set, 2);
        set(test, []);
        buggy = !(test instanceof Array);
      } catch (e) { buggy = true; }
      return function setPrototypeOf(O, proto) {
        check(O, proto);
        if (buggy) O.__proto__ = proto;
        else set(O, proto);
        return O;
      };
    }({}, false) : undefined),
  check: check
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-species.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-species.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('species');

module.exports = function (KEY) {
  var C = typeof core[KEY] == 'function' ? core[KEY] : global[KEY];
  if (DESCRIPTORS && C && !C[SPECIES]) dP.f(C, SPECIES, {
    configurable: true,
    get: function () { return this; }
  });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-to-string-tag.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-to-string-tag.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var def = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('toStringTag');

module.exports = function (it, tag, stat) {
  if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_shared-key.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_shared-key.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var shared = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js")('keys');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
module.exports = function (key) {
  return shared[key] || (shared[key] = uid(key));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_shared.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_shared.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var SHARED = '__core-js_shared__';
var store = global[SHARED] || (global[SHARED] = {});

(module.exports = function (key, value) {
  return store[key] || (store[key] = value !== undefined ? value : {});
})('versions', []).push({
  version: core.version,
  mode: __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js") ? 'pure' : 'global',
  copyright: '© 2020 Denis Pushkarev (zloirock.ru)'
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/_species-constructor.js":
/*!***********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_species-constructor.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.3.20 SpeciesConstructor(O, defaultConstructor)
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('species');
module.exports = function (O, D) {
  var C = anObject(O).constructor;
  var S;
  return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_string-at.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_string-at.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
// true  -> String#at
// false -> String#codePointAt
module.exports = function (TO_STRING) {
  return function (that, pos) {
    var s = String(defined(that));
    var i = toInteger(pos);
    var l = s.length;
    var a, b;
    if (i < 0 || i >= l) return TO_STRING ? '' : undefined;
    a = s.charCodeAt(i);
    return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
      ? TO_STRING ? s.charAt(i) : a
      : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_task.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_task.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var invoke = __webpack_require__(/*! ./_invoke */ "../node_modules/core-js/library/modules/_invoke.js");
var html = __webpack_require__(/*! ./_html */ "../node_modules/core-js/library/modules/_html.js");
var cel = __webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/library/modules/_dom-create.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var process = global.process;
var setTask = global.setImmediate;
var clearTask = global.clearImmediate;
var MessageChannel = global.MessageChannel;
var Dispatch = global.Dispatch;
var counter = 0;
var queue = {};
var ONREADYSTATECHANGE = 'onreadystatechange';
var defer, channel, port;
var run = function () {
  var id = +this;
  // eslint-disable-next-line no-prototype-builtins
  if (queue.hasOwnProperty(id)) {
    var fn = queue[id];
    delete queue[id];
    fn();
  }
};
var listener = function (event) {
  run.call(event.data);
};
// Node.js 0.9+ & IE10+ has setImmediate, otherwise:
if (!setTask || !clearTask) {
  setTask = function setImmediate(fn) {
    var args = [];
    var i = 1;
    while (arguments.length > i) args.push(arguments[i++]);
    queue[++counter] = function () {
      // eslint-disable-next-line no-new-func
      invoke(typeof fn == 'function' ? fn : Function(fn), args);
    };
    defer(counter);
    return counter;
  };
  clearTask = function clearImmediate(id) {
    delete queue[id];
  };
  // Node.js 0.8-
  if (__webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js")(process) == 'process') {
    defer = function (id) {
      process.nextTick(ctx(run, id, 1));
    };
  // Sphere (JS game engine) Dispatch API
  } else if (Dispatch && Dispatch.now) {
    defer = function (id) {
      Dispatch.now(ctx(run, id, 1));
    };
  // Browsers with MessageChannel, includes WebWorkers
  } else if (MessageChannel) {
    channel = new MessageChannel();
    port = channel.port2;
    channel.port1.onmessage = listener;
    defer = ctx(port.postMessage, port, 1);
  // Browsers with postMessage, skip WebWorkers
  // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'
  } else if (global.addEventListener && typeof postMessage == 'function' && !global.importScripts) {
    defer = function (id) {
      global.postMessage(id + '', '*');
    };
    global.addEventListener('message', listener, false);
  // IE8-
  } else if (ONREADYSTATECHANGE in cel('script')) {
    defer = function (id) {
      html.appendChild(cel('script'))[ONREADYSTATECHANGE] = function () {
        html.removeChild(this);
        run.call(id);
      };
    };
  // Rest old browsers
  } else {
    defer = function (id) {
      setTimeout(ctx(run, id, 1), 0);
    };
  }
}
module.exports = {
  set: setTask,
  clear: clearTask
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-absolute-index.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-absolute-index.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
var max = Math.max;
var min = Math.min;
module.exports = function (index, length) {
  index = toInteger(index);
  return index < 0 ? max(index + length, 0) : min(index, length);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-integer.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-integer.js ***!
  \**************************************************************/
/***/ ((module) => {

// 7.1.4 ToInteger
var ceil = Math.ceil;
var floor = Math.floor;
module.exports = function (it) {
  return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-iobject.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-iobject.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// to indexed object, toObject with fallback for non-array-like ES3 strings
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/library/modules/_iobject.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
module.exports = function (it) {
  return IObject(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-length.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-length.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.15 ToLength
var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
var min = Math.min;
module.exports = function (it) {
  return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-object.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-object.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.13 ToObject(argument)
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
module.exports = function (it) {
  return Object(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-primitive.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-primitive.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.1 ToPrimitive(input [, PreferredType])
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
// instead of the ES6 spec version, we didn't implement @@toPrimitive case
// and the second argument - flag - preferred type is a string
module.exports = function (it, S) {
  if (!isObject(it)) return it;
  var fn, val;
  if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
  if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  throw TypeError("Can't convert object to primitive value");
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_uid.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_uid.js ***!
  \*******************************************************/
/***/ ((module) => {

var id = 0;
var px = Math.random();
module.exports = function (key) {
  return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_user-agent.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_user-agent.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var navigator = global.navigator;

module.exports = navigator && navigator.userAgent || '';


/***/ }),

/***/ "../node_modules/core-js/library/modules/_validate-collection.js":
/*!***********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_validate-collection.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
module.exports = function (it, TYPE) {
  if (!isObject(it) || it._t !== TYPE) throw TypeError('Incompatible receiver, ' + TYPE + ' required!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_wks-define.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_wks-define.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js");
var wksExt = __webpack_require__(/*! ./_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js");
var defineProperty = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
module.exports = function (name) {
  var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {});
  if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_wks-ext.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_wks-ext.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

exports.f = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js");


/***/ }),

/***/ "../node_modules/core-js/library/modules/_wks.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_wks.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var store = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js")('wks');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
var Symbol = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").Symbol;
var USE_SYMBOL = typeof Symbol == 'function';

var $exports = module.exports = function (name) {
  return store[name] || (store[name] =
    USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
};

$exports.store = store;


/***/ }),

/***/ "../node_modules/core-js/library/modules/core.get-iterator-method.js":
/*!***************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/core.get-iterator-method.js ***!
  \***************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/library/modules/_classof.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
module.exports = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js").getIteratorMethod = function (it) {
  if (it != undefined) return it[ITERATOR]
    || it['@@iterator']
    || Iterators[classof(it)];
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.array.from.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.array.from.js ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var call = __webpack_require__(/*! ./_iter-call */ "../node_modules/core-js/library/modules/_iter-call.js");
var isArrayIter = __webpack_require__(/*! ./_is-array-iter */ "../node_modules/core-js/library/modules/_is-array-iter.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
var createProperty = __webpack_require__(/*! ./_create-property */ "../node_modules/core-js/library/modules/_create-property.js");
var getIterFn = __webpack_require__(/*! ./core.get-iterator-method */ "../node_modules/core-js/library/modules/core.get-iterator-method.js");

$export($export.S + $export.F * !__webpack_require__(/*! ./_iter-detect */ "../node_modules/core-js/library/modules/_iter-detect.js")(function (iter) { Array.from(iter); }), 'Array', {
  // 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined)
  from: function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {
    var O = toObject(arrayLike);
    var C = typeof this == 'function' ? this : Array;
    var aLen = arguments.length;
    var mapfn = aLen > 1 ? arguments[1] : undefined;
    var mapping = mapfn !== undefined;
    var index = 0;
    var iterFn = getIterFn(O);
    var length, result, step, iterator;
    if (mapping) mapfn = ctx(mapfn, aLen > 2 ? arguments[2] : undefined, 2);
    // if object isn't iterable or it's array with default iterator - use simple case
    if (iterFn != undefined && !(C == Array && isArrayIter(iterFn))) {
      for (iterator = iterFn.call(O), result = new C(); !(step = iterator.next()).done; index++) {
        createProperty(result, index, mapping ? call(iterator, mapfn, [step.value, index], true) : step.value);
      }
    } else {
      length = toLength(O.length);
      for (result = new C(length); length > index; index++) {
        createProperty(result, index, mapping ? mapfn(O[index], index) : O[index]);
      }
    }
    result.length = index;
    return result;
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.array.is-array.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.array.is-array.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 22.1.2.2 / 15.4.3.2 Array.isArray(arg)
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");

$export($export.S, 'Array', { isArray: __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/library/modules/_is-array.js") });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.array.iterator.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.array.iterator.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var addToUnscopables = __webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/library/modules/_add-to-unscopables.js");
var step = __webpack_require__(/*! ./_iter-step */ "../node_modules/core-js/library/modules/_iter-step.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");

// 22.1.3.4 Array.prototype.entries()
// 22.1.3.13 Array.prototype.keys()
// 22.1.3.29 Array.prototype.values()
// 22.1.3.30 Array.prototype[@@iterator]()
module.exports = __webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/library/modules/_iter-define.js")(Array, 'Array', function (iterated, kind) {
  this._t = toIObject(iterated); // target
  this._i = 0;                   // next index
  this._k = kind;                // kind
// 22.1.5.2.1 %ArrayIteratorPrototype%.next()
}, function () {
  var O = this._t;
  var kind = this._k;
  var index = this._i++;
  if (!O || index >= O.length) {
    this._t = undefined;
    return step(1);
  }
  if (kind == 'keys') return step(0, index);
  if (kind == 'values') return step(0, O[index]);
  return step(0, [index, O[index]]);
}, 'values');

// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
Iterators.Arguments = Iterators.Array;

addToUnscopables('keys');
addToUnscopables('values');
addToUnscopables('entries');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.function.has-instance.js":
/*!****************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.function.has-instance.js ***!
  \****************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");
var HAS_INSTANCE = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('hasInstance');
var FunctionProto = Function.prototype;
// 19.2.3.6 Function.prototype[@@hasInstance](V)
if (!(HAS_INSTANCE in FunctionProto)) __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f(FunctionProto, HAS_INSTANCE, { value: function (O) {
  if (typeof this != 'function' || !isObject(O)) return false;
  if (!isObject(this.prototype)) return O instanceof this;
  // for environment w/o native `@@hasInstance` logic enough `instanceof`, but add this:
  while (O = getPrototypeOf(O)) if (this.prototype === O) return true;
  return false;
} });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.create.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.create.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
$export($export.S, 'Object', { create: __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js") });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.define-property.js":
/*!*****************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.define-property.js ***!
  \*****************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)
$export($export.S + $export.F * !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js"), 'Object', { defineProperty: __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js":
/*!*****************************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js ***!
  \*****************************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var $getOwnPropertyDescriptor = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js").f;

__webpack_require__(/*! ./_object-sap */ "../node_modules/core-js/library/modules/_object-sap.js")('getOwnPropertyDescriptor', function () {
  return function getOwnPropertyDescriptor(it, key) {
    return $getOwnPropertyDescriptor(toIObject(it), key);
  };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.get-prototype-of.js":
/*!******************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.get-prototype-of.js ***!
  \******************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.9 Object.getPrototypeOf(O)
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var $getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");

__webpack_require__(/*! ./_object-sap */ "../node_modules/core-js/library/modules/_object-sap.js")('getPrototypeOf', function () {
  return function getPrototypeOf(it) {
    return $getPrototypeOf(toObject(it));
  };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.keys.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.keys.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.14 Object.keys(O)
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var $keys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");

__webpack_require__(/*! ./_object-sap */ "../node_modules/core-js/library/modules/_object-sap.js")('keys', function () {
  return function keys(it) {
    return $keys(toObject(it));
  };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.set-prototype-of.js":
/*!******************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.set-prototype-of.js ***!
  \******************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.3.19 Object.setPrototypeOf(O, proto)
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
$export($export.S, 'Object', { setPrototypeOf: __webpack_require__(/*! ./_set-proto */ "../node_modules/core-js/library/modules/_set-proto.js").set });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.to-string.js":
/*!***********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.to-string.js ***!
  \***********************************************************************/
/***/ (() => {



/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.promise.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.promise.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/library/modules/_classof.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var anInstance = __webpack_require__(/*! ./_an-instance */ "../node_modules/core-js/library/modules/_an-instance.js");
var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");
var speciesConstructor = __webpack_require__(/*! ./_species-constructor */ "../node_modules/core-js/library/modules/_species-constructor.js");
var task = __webpack_require__(/*! ./_task */ "../node_modules/core-js/library/modules/_task.js").set;
var microtask = __webpack_require__(/*! ./_microtask */ "../node_modules/core-js/library/modules/_microtask.js")();
var newPromiseCapabilityModule = __webpack_require__(/*! ./_new-promise-capability */ "../node_modules/core-js/library/modules/_new-promise-capability.js");
var perform = __webpack_require__(/*! ./_perform */ "../node_modules/core-js/library/modules/_perform.js");
var userAgent = __webpack_require__(/*! ./_user-agent */ "../node_modules/core-js/library/modules/_user-agent.js");
var promiseResolve = __webpack_require__(/*! ./_promise-resolve */ "../node_modules/core-js/library/modules/_promise-resolve.js");
var PROMISE = 'Promise';
var TypeError = global.TypeError;
var process = global.process;
var versions = process && process.versions;
var v8 = versions && versions.v8 || '';
var $Promise = global[PROMISE];
var isNode = classof(process) == 'process';
var empty = function () { /* empty */ };
var Internal, newGenericPromiseCapability, OwnPromiseCapability, Wrapper;
var newPromiseCapability = newGenericPromiseCapability = newPromiseCapabilityModule.f;

var USE_NATIVE = !!function () {
  try {
    // correct subclassing with @@species support
    var promise = $Promise.resolve(1);
    var FakePromise = (promise.constructor = {})[__webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('species')] = function (exec) {
      exec(empty, empty);
    };
    // unhandled rejections tracking support, NodeJS Promise without it fails @@species test
    return (isNode || typeof PromiseRejectionEvent == 'function')
      && promise.then(empty) instanceof FakePromise
      // v8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables
      // https://bugs.chromium.org/p/chromium/issues/detail?id=830565
      // we can't detect it synchronously, so just check versions
      && v8.indexOf('6.6') !== 0
      && userAgent.indexOf('Chrome/66') === -1;
  } catch (e) { /* empty */ }
}();

// helpers
var isThenable = function (it) {
  var then;
  return isObject(it) && typeof (then = it.then) == 'function' ? then : false;
};
var notify = function (promise, isReject) {
  if (promise._n) return;
  promise._n = true;
  var chain = promise._c;
  microtask(function () {
    var value = promise._v;
    var ok = promise._s == 1;
    var i = 0;
    var run = function (reaction) {
      var handler = ok ? reaction.ok : reaction.fail;
      var resolve = reaction.resolve;
      var reject = reaction.reject;
      var domain = reaction.domain;
      var result, then, exited;
      try {
        if (handler) {
          if (!ok) {
            if (promise._h == 2) onHandleUnhandled(promise);
            promise._h = 1;
          }
          if (handler === true) result = value;
          else {
            if (domain) domain.enter();
            result = handler(value); // may throw
            if (domain) {
              domain.exit();
              exited = true;
            }
          }
          if (result === reaction.promise) {
            reject(TypeError('Promise-chain cycle'));
          } else if (then = isThenable(result)) {
            then.call(result, resolve, reject);
          } else resolve(result);
        } else reject(value);
      } catch (e) {
        if (domain && !exited) domain.exit();
        reject(e);
      }
    };
    while (chain.length > i) run(chain[i++]); // variable length - can't use forEach
    promise._c = [];
    promise._n = false;
    if (isReject && !promise._h) onUnhandled(promise);
  });
};
var onUnhandled = function (promise) {
  task.call(global, function () {
    var value = promise._v;
    var unhandled = isUnhandled(promise);
    var result, handler, console;
    if (unhandled) {
      result = perform(function () {
        if (isNode) {
          process.emit('unhandledRejection', value, promise);
        } else if (handler = global.onunhandledrejection) {
          handler({ promise: promise, reason: value });
        } else if ((console = global.console) && console.error) {
          console.error('Unhandled promise rejection', value);
        }
      });
      // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should
      promise._h = isNode || isUnhandled(promise) ? 2 : 1;
    } promise._a = undefined;
    if (unhandled && result.e) throw result.v;
  });
};
var isUnhandled = function (promise) {
  return promise._h !== 1 && (promise._a || promise._c).length === 0;
};
var onHandleUnhandled = function (promise) {
  task.call(global, function () {
    var handler;
    if (isNode) {
      process.emit('rejectionHandled', promise);
    } else if (handler = global.onrejectionhandled) {
      handler({ promise: promise, reason: promise._v });
    }
  });
};
var $reject = function (value) {
  var promise = this;
  if (promise._d) return;
  promise._d = true;
  promise = promise._w || promise; // unwrap
  promise._v = value;
  promise._s = 2;
  if (!promise._a) promise._a = promise._c.slice();
  notify(promise, true);
};
var $resolve = function (value) {
  var promise = this;
  var then;
  if (promise._d) return;
  promise._d = true;
  promise = promise._w || promise; // unwrap
  try {
    if (promise === value) throw TypeError("Promise can't be resolved itself");
    if (then = isThenable(value)) {
      microtask(function () {
        var wrapper = { _w: promise, _d: false }; // wrap
        try {
          then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1));
        } catch (e) {
          $reject.call(wrapper, e);
        }
      });
    } else {
      promise._v = value;
      promise._s = 1;
      notify(promise, false);
    }
  } catch (e) {
    $reject.call({ _w: promise, _d: false }, e); // wrap
  }
};

// constructor polyfill
if (!USE_NATIVE) {
  // 25.4.3.1 Promise(executor)
  $Promise = function Promise(executor) {
    anInstance(this, $Promise, PROMISE, '_h');
    aFunction(executor);
    Internal.call(this);
    try {
      executor(ctx($resolve, this, 1), ctx($reject, this, 1));
    } catch (err) {
      $reject.call(this, err);
    }
  };
  // eslint-disable-next-line no-unused-vars
  Internal = function Promise(executor) {
    this._c = [];             // <- awaiting reactions
    this._a = undefined;      // <- checked in isUnhandled reactions
    this._s = 0;              // <- state
    this._d = false;          // <- done
    this._v = undefined;      // <- value
    this._h = 0;              // <- rejection state, 0 - default, 1 - handled, 2 - unhandled
    this._n = false;          // <- notify
  };
  Internal.prototype = __webpack_require__(/*! ./_redefine-all */ "../node_modules/core-js/library/modules/_redefine-all.js")($Promise.prototype, {
    // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected)
    then: function then(onFulfilled, onRejected) {
      var reaction = newPromiseCapability(speciesConstructor(this, $Promise));
      reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;
      reaction.fail = typeof onRejected == 'function' && onRejected;
      reaction.domain = isNode ? process.domain : undefined;
      this._c.push(reaction);
      if (this._a) this._a.push(reaction);
      if (this._s) notify(this, false);
      return reaction.promise;
    },
    // 25.4.5.1 Promise.prototype.catch(onRejected)
    'catch': function (onRejected) {
      return this.then(undefined, onRejected);
    }
  });
  OwnPromiseCapability = function () {
    var promise = new Internal();
    this.promise = promise;
    this.resolve = ctx($resolve, promise, 1);
    this.reject = ctx($reject, promise, 1);
  };
  newPromiseCapabilityModule.f = newPromiseCapability = function (C) {
    return C === $Promise || C === Wrapper
      ? new OwnPromiseCapability(C)
      : newGenericPromiseCapability(C);
  };
}

$export($export.G + $export.W + $export.F * !USE_NATIVE, { Promise: $Promise });
__webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js")($Promise, PROMISE);
__webpack_require__(/*! ./_set-species */ "../node_modules/core-js/library/modules/_set-species.js")(PROMISE);
Wrapper = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js")[PROMISE];

// statics
$export($export.S + $export.F * !USE_NATIVE, PROMISE, {
  // 25.4.4.5 Promise.reject(r)
  reject: function reject(r) {
    var capability = newPromiseCapability(this);
    var $$reject = capability.reject;
    $$reject(r);
    return capability.promise;
  }
});
$export($export.S + $export.F * (LIBRARY || !USE_NATIVE), PROMISE, {
  // 25.4.4.6 Promise.resolve(x)
  resolve: function resolve(x) {
    return promiseResolve(LIBRARY && this === Wrapper ? $Promise : this, x);
  }
});
$export($export.S + $export.F * !(USE_NATIVE && __webpack_require__(/*! ./_iter-detect */ "../node_modules/core-js/library/modules/_iter-detect.js")(function (iter) {
  $Promise.all(iter)['catch'](empty);
})), PROMISE, {
  // 25.4.4.1 Promise.all(iterable)
  all: function all(iterable) {
    var C = this;
    var capability = newPromiseCapability(C);
    var resolve = capability.resolve;
    var reject = capability.reject;
    var result = perform(function () {
      var values = [];
      var index = 0;
      var remaining = 1;
      forOf(iterable, false, function (promise) {
        var $index = index++;
        var alreadyCalled = false;
        values.push(undefined);
        remaining++;
        C.resolve(promise).then(function (value) {
          if (alreadyCalled) return;
          alreadyCalled = true;
          values[$index] = value;
          --remaining || resolve(values);
        }, reject);
      });
      --remaining || resolve(values);
    });
    if (result.e) reject(result.v);
    return capability.promise;
  },
  // 25.4.4.4 Promise.race(iterable)
  race: function race(iterable) {
    var C = this;
    var capability = newPromiseCapability(C);
    var reject = capability.reject;
    var result = perform(function () {
      forOf(iterable, false, function (promise) {
        C.resolve(promise).then(capability.resolve, reject);
      });
    });
    if (result.e) reject(result.v);
    return capability.promise;
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.reflect.construct.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.reflect.construct.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 26.1.2 Reflect.construct(target, argumentsList [, newTarget])
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
var bind = __webpack_require__(/*! ./_bind */ "../node_modules/core-js/library/modules/_bind.js");
var rConstruct = (__webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").Reflect || {}).construct;

// MS Edge supports only 2 arguments and argumentsList argument is optional
// FF Nightly sets third argument as `new.target`, but does not create `this` from it
var NEW_TARGET_BUG = fails(function () {
  function F() { /* empty */ }
  return !(rConstruct(function () { /* empty */ }, [], F) instanceof F);
});
var ARGS_BUG = !fails(function () {
  rConstruct(function () { /* empty */ });
});

$export($export.S + $export.F * (NEW_TARGET_BUG || ARGS_BUG), 'Reflect', {
  construct: function construct(Target, args /* , newTarget */) {
    aFunction(Target);
    anObject(args);
    var newTarget = arguments.length < 3 ? Target : aFunction(arguments[2]);
    if (ARGS_BUG && !NEW_TARGET_BUG) return rConstruct(Target, args, newTarget);
    if (Target == newTarget) {
      // w/o altered newTarget, optimization for 0-4 arguments
      switch (args.length) {
        case 0: return new Target();
        case 1: return new Target(args[0]);
        case 2: return new Target(args[0], args[1]);
        case 3: return new Target(args[0], args[1], args[2]);
        case 4: return new Target(args[0], args[1], args[2], args[3]);
      }
      // w/o altered newTarget, lot of arguments case
      var $args = [null];
      $args.push.apply($args, args);
      return new (bind.apply(Target, $args))();
    }
    // with altered newTarget, not support built-in constructors
    var proto = newTarget.prototype;
    var instance = create(isObject(proto) ? proto : Object.prototype);
    var result = Function.apply.call(Target, instance, args);
    return isObject(result) ? result : instance;
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.reflect.get.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.reflect.get.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 26.1.6 Reflect.get(target, propertyKey [, receiver])
var gOPD = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js");
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");

function get(target, propertyKey /* , receiver */) {
  var receiver = arguments.length < 3 ? target : arguments[2];
  var desc, proto;
  if (anObject(target) === receiver) return target[propertyKey];
  if (desc = gOPD.f(target, propertyKey)) return has(desc, 'value')
    ? desc.value
    : desc.get !== undefined
      ? desc.get.call(receiver)
      : undefined;
  if (isObject(proto = getPrototypeOf(target))) return get(proto, propertyKey, receiver);
}

$export($export.S, 'Reflect', { get: get });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.string.iterator.js":
/*!**********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.string.iterator.js ***!
  \**********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $at = __webpack_require__(/*! ./_string-at */ "../node_modules/core-js/library/modules/_string-at.js")(true);

// 21.1.3.27 String.prototype[@@iterator]()
__webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/library/modules/_iter-define.js")(String, 'String', function (iterated) {
  this._t = String(iterated); // target
  this._i = 0;                // next index
// 21.1.5.2.1 %StringIteratorPrototype%.next()
}, function () {
  var O = this._t;
  var index = this._i;
  var point;
  if (index >= O.length) return { value: undefined, done: true };
  point = $at(O, index);
  this._i += point.length;
  return { value: point, done: false };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.symbol.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.symbol.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// ECMAScript 6 symbols shim
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/library/modules/_redefine.js");
var META = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js").KEY;
var $fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
var shared = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
var wks = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js");
var wksExt = __webpack_require__(/*! ./_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js");
var wksDefine = __webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js");
var enumKeys = __webpack_require__(/*! ./_enum-keys */ "../node_modules/core-js/library/modules/_enum-keys.js");
var isArray = __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/library/modules/_is-array.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
var _create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
var gOPNExt = __webpack_require__(/*! ./_object-gopn-ext */ "../node_modules/core-js/library/modules/_object-gopn-ext.js");
var $GOPD = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js");
var $GOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
var $DP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var $keys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var gOPD = $GOPD.f;
var dP = $DP.f;
var gOPN = gOPNExt.f;
var $Symbol = global.Symbol;
var $JSON = global.JSON;
var _stringify = $JSON && $JSON.stringify;
var PROTOTYPE = 'prototype';
var HIDDEN = wks('_hidden');
var TO_PRIMITIVE = wks('toPrimitive');
var isEnum = {}.propertyIsEnumerable;
var SymbolRegistry = shared('symbol-registry');
var AllSymbols = shared('symbols');
var OPSymbols = shared('op-symbols');
var ObjectProto = Object[PROTOTYPE];
var USE_NATIVE = typeof $Symbol == 'function' && !!$GOPS.f;
var QObject = global.QObject;
// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173
var setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;

// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687
var setSymbolDesc = DESCRIPTORS && $fails(function () {
  return _create(dP({}, 'a', {
    get: function () { return dP(this, 'a', { value: 7 }).a; }
  })).a != 7;
}) ? function (it, key, D) {
  var protoDesc = gOPD(ObjectProto, key);
  if (protoDesc) delete ObjectProto[key];
  dP(it, key, D);
  if (protoDesc && it !== ObjectProto) dP(ObjectProto, key, protoDesc);
} : dP;

var wrap = function (tag) {
  var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]);
  sym._k = tag;
  return sym;
};

var isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function (it) {
  return typeof it == 'symbol';
} : function (it) {
  return it instanceof $Symbol;
};

var $defineProperty = function defineProperty(it, key, D) {
  if (it === ObjectProto) $defineProperty(OPSymbols, key, D);
  anObject(it);
  key = toPrimitive(key, true);
  anObject(D);
  if (has(AllSymbols, key)) {
    if (!D.enumerable) {
      if (!has(it, HIDDEN)) dP(it, HIDDEN, createDesc(1, {}));
      it[HIDDEN][key] = true;
    } else {
      if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false;
      D = _create(D, { enumerable: createDesc(0, false) });
    } return setSymbolDesc(it, key, D);
  } return dP(it, key, D);
};
var $defineProperties = function defineProperties(it, P) {
  anObject(it);
  var keys = enumKeys(P = toIObject(P));
  var i = 0;
  var l = keys.length;
  var key;
  while (l > i) $defineProperty(it, key = keys[i++], P[key]);
  return it;
};
var $create = function create(it, P) {
  return P === undefined ? _create(it) : $defineProperties(_create(it), P);
};
var $propertyIsEnumerable = function propertyIsEnumerable(key) {
  var E = isEnum.call(this, key = toPrimitive(key, true));
  if (this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return false;
  return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true;
};
var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key) {
  it = toIObject(it);
  key = toPrimitive(key, true);
  if (it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return;
  var D = gOPD(it, key);
  if (D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) D.enumerable = true;
  return D;
};
var $getOwnPropertyNames = function getOwnPropertyNames(it) {
  var names = gOPN(toIObject(it));
  var result = [];
  var i = 0;
  var key;
  while (names.length > i) {
    if (!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META) result.push(key);
  } return result;
};
var $getOwnPropertySymbols = function getOwnPropertySymbols(it) {
  var IS_OP = it === ObjectProto;
  var names = gOPN(IS_OP ? OPSymbols : toIObject(it));
  var result = [];
  var i = 0;
  var key;
  while (names.length > i) {
    if (has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true)) result.push(AllSymbols[key]);
  } return result;
};

// 19.4.1.1 Symbol([description])
if (!USE_NATIVE) {
  $Symbol = function Symbol() {
    if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor!');
    var tag = uid(arguments.length > 0 ? arguments[0] : undefined);
    var $set = function (value) {
      if (this === ObjectProto) $set.call(OPSymbols, value);
      if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;
      setSymbolDesc(this, tag, createDesc(1, value));
    };
    if (DESCRIPTORS && setter) setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set });
    return wrap(tag);
  };
  redefine($Symbol[PROTOTYPE], 'toString', function toString() {
    return this._k;
  });

  $GOPD.f = $getOwnPropertyDescriptor;
  $DP.f = $defineProperty;
  __webpack_require__(/*! ./_object-gopn */ "../node_modules/core-js/library/modules/_object-gopn.js").f = gOPNExt.f = $getOwnPropertyNames;
  __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js").f = $propertyIsEnumerable;
  $GOPS.f = $getOwnPropertySymbols;

  if (DESCRIPTORS && !__webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js")) {
    redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);
  }

  wksExt.f = function (name) {
    return wrap(wks(name));
  };
}

$export($export.G + $export.W + $export.F * !USE_NATIVE, { Symbol: $Symbol });

for (var es6Symbols = (
  // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14
  'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'
).split(','), j = 0; es6Symbols.length > j;)wks(es6Symbols[j++]);

for (var wellKnownSymbols = $keys(wks.store), k = 0; wellKnownSymbols.length > k;) wksDefine(wellKnownSymbols[k++]);

$export($export.S + $export.F * !USE_NATIVE, 'Symbol', {
  // 19.4.2.1 Symbol.for(key)
  'for': function (key) {
    return has(SymbolRegistry, key += '')
      ? SymbolRegistry[key]
      : SymbolRegistry[key] = $Symbol(key);
  },
  // 19.4.2.5 Symbol.keyFor(sym)
  keyFor: function keyFor(sym) {
    if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol!');
    for (var key in SymbolRegistry) if (SymbolRegistry[key] === sym) return key;
  },
  useSetter: function () { setter = true; },
  useSimple: function () { setter = false; }
});

$export($export.S + $export.F * !USE_NATIVE, 'Object', {
  // 19.1.2.2 Object.create(O [, Properties])
  create: $create,
  // 19.1.2.4 Object.defineProperty(O, P, Attributes)
  defineProperty: $defineProperty,
  // 19.1.2.3 Object.defineProperties(O, Properties)
  defineProperties: $defineProperties,
  // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
  getOwnPropertyDescriptor: $getOwnPropertyDescriptor,
  // 19.1.2.7 Object.getOwnPropertyNames(O)
  getOwnPropertyNames: $getOwnPropertyNames,
  // 19.1.2.8 Object.getOwnPropertySymbols(O)
  getOwnPropertySymbols: $getOwnPropertySymbols
});

// Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives
// https://bugs.chromium.org/p/v8/issues/detail?id=3443
var FAILS_ON_PRIMITIVES = $fails(function () { $GOPS.f(1); });

$export($export.S + $export.F * FAILS_ON_PRIMITIVES, 'Object', {
  getOwnPropertySymbols: function getOwnPropertySymbols(it) {
    return $GOPS.f(toObject(it));
  }
});

// 24.3.2 JSON.stringify(value [, replacer [, space]])
$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function () {
  var S = $Symbol();
  // MS Edge converts symbol values to JSON as {}
  // WebKit converts symbol values to JSON as null
  // V8 throws on boxed symbols
  return _stringify([S]) != '[null]' || _stringify({ a: S }) != '{}' || _stringify(Object(S)) != '{}';
})), 'JSON', {
  stringify: function stringify(it) {
    var args = [it];
    var i = 1;
    var replacer, $replacer;
    while (arguments.length > i) args.push(arguments[i++]);
    $replacer = replacer = args[1];
    if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined
    if (!isArray(replacer)) replacer = function (key, value) {
      if (typeof $replacer == 'function') value = $replacer.call(this, key, value);
      if (!isSymbol(value)) return value;
    };
    args[1] = replacer;
    return _stringify.apply($JSON, args);
  }
});

// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint)
$Symbol[PROTOTYPE][TO_PRIMITIVE] || __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js")($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);
// 19.4.3.5 Symbol.prototype[@@toStringTag]
setToStringTag($Symbol, 'Symbol');
// 20.2.1.9 Math[@@toStringTag]
setToStringTag(Math, 'Math', true);
// 24.3.3 JSON[@@toStringTag]
setToStringTag(global.JSON, 'JSON', true);


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.weak-map.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.weak-map.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var each = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/library/modules/_array-methods.js")(0);
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/library/modules/_redefine.js");
var meta = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js");
var assign = __webpack_require__(/*! ./_object-assign */ "../node_modules/core-js/library/modules/_object-assign.js");
var weak = __webpack_require__(/*! ./_collection-weak */ "../node_modules/core-js/library/modules/_collection-weak.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var validate = __webpack_require__(/*! ./_validate-collection */ "../node_modules/core-js/library/modules/_validate-collection.js");
var NATIVE_WEAK_MAP = __webpack_require__(/*! ./_validate-collection */ "../node_modules/core-js/library/modules/_validate-collection.js");
var IS_IE11 = !global.ActiveXObject && 'ActiveXObject' in global;
var WEAK_MAP = 'WeakMap';
var getWeak = meta.getWeak;
var isExtensible = Object.isExtensible;
var uncaughtFrozenStore = weak.ufstore;
var InternalMap;

var wrapper = function (get) {
  return function WeakMap() {
    return get(this, arguments.length > 0 ? arguments[0] : undefined);
  };
};

var methods = {
  // 23.3.3.3 WeakMap.prototype.get(key)
  get: function get(key) {
    if (isObject(key)) {
      var data = getWeak(key);
      if (data === true) return uncaughtFrozenStore(validate(this, WEAK_MAP)).get(key);
      return data ? data[this._i] : undefined;
    }
  },
  // 23.3.3.5 WeakMap.prototype.set(key, value)
  set: function set(key, value) {
    return weak.def(validate(this, WEAK_MAP), key, value);
  }
};

// 23.3 WeakMap Objects
var $WeakMap = module.exports = __webpack_require__(/*! ./_collection */ "../node_modules/core-js/library/modules/_collection.js")(WEAK_MAP, wrapper, methods, weak, true, true);

// IE11 WeakMap frozen keys fix
if (NATIVE_WEAK_MAP && IS_IE11) {
  InternalMap = weak.getConstructor(wrapper, WEAK_MAP);
  assign(InternalMap.prototype, methods);
  meta.NEED = true;
  each(['delete', 'has', 'get', 'set'], function (key) {
    var proto = $WeakMap.prototype;
    var method = proto[key];
    redefine(proto, key, function (a, b) {
      // store frozen objects on internal weakmap shim
      if (isObject(a) && !isExtensible(a)) {
        if (!this._f) this._f = new InternalMap();
        var result = this._f[key](a, b);
        return key == 'set' ? this : result;
      // store all the rest on native weakmap
      } return method.call(this, a, b);
    });
  });
}


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.object.entries.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.object.entries.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://github.com/tc39/proposal-object-values-entries
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var $entries = __webpack_require__(/*! ./_object-to-array */ "../node_modules/core-js/library/modules/_object-to-array.js")(true);

$export($export.S, 'Object', {
  entries: function entries(it) {
    return $entries(it);
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.object.values.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.object.values.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://github.com/tc39/proposal-object-values-entries
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var $values = __webpack_require__(/*! ./_object-to-array */ "../node_modules/core-js/library/modules/_object-to-array.js")(false);

$export($export.S, 'Object', {
  values: function values(it) {
    return $values(it);
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.promise.finally.js":
/*!**********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.promise.finally.js ***!
  \**********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
// https://github.com/tc39/proposal-promise-finally

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var speciesConstructor = __webpack_require__(/*! ./_species-constructor */ "../node_modules/core-js/library/modules/_species-constructor.js");
var promiseResolve = __webpack_require__(/*! ./_promise-resolve */ "../node_modules/core-js/library/modules/_promise-resolve.js");

$export($export.P + $export.R, 'Promise', { 'finally': function (onFinally) {
  var C = speciesConstructor(this, core.Promise || global.Promise);
  var isFunction = typeof onFinally == 'function';
  return this.then(
    isFunction ? function (x) {
      return promiseResolve(C, onFinally()).then(function () { return x; });
    } : onFinally,
    isFunction ? function (e) {
      return promiseResolve(C, onFinally()).then(function () { throw e; });
    } : onFinally
  );
} });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.promise.try.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.promise.try.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// https://github.com/tc39/proposal-promise-try
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var newPromiseCapability = __webpack_require__(/*! ./_new-promise-capability */ "../node_modules/core-js/library/modules/_new-promise-capability.js");
var perform = __webpack_require__(/*! ./_perform */ "../node_modules/core-js/library/modules/_perform.js");

$export($export.S, 'Promise', { 'try': function (callbackfn) {
  var promiseCapability = newPromiseCapability.f(this);
  var result = perform(callbackfn);
  (result.e ? promiseCapability.reject : promiseCapability.resolve)(result.v);
  return promiseCapability.promise;
} });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.symbol.async-iterator.js":
/*!****************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.symbol.async-iterator.js ***!
  \****************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js")('asyncIterator');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.symbol.observable.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.symbol.observable.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js")('observable');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.weak-map.from.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.weak-map.from.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://tc39.github.io/proposal-setmap-offrom/#sec-weakmap.from
__webpack_require__(/*! ./_set-collection-from */ "../node_modules/core-js/library/modules/_set-collection-from.js")('WeakMap');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.weak-map.of.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.weak-map.of.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://tc39.github.io/proposal-setmap-offrom/#sec-weakmap.of
__webpack_require__(/*! ./_set-collection-of */ "../node_modules/core-js/library/modules/_set-collection-of.js")('WeakMap');


/***/ }),

/***/ "../node_modules/core-js/library/modules/web.dom.iterable.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/web.dom.iterable.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ./es6.array.iterator */ "../node_modules/core-js/library/modules/es6.array.iterator.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var TO_STRING_TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('toStringTag');

var DOMIterables = ('CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,' +
  'DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,' +
  'MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,' +
  'SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,' +
  'TextTrackList,TouchList').split(',');

for (var i = 0; i < DOMIterables.length; i++) {
  var NAME = DOMIterables[i];
  var Collection = global[NAME];
  var proto = Collection && Collection.prototype;
  if (proto && !proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);
  Iterators[NAME] = Iterators.Array;
}


/***/ }),

/***/ "../node_modules/core-js/modules/_a-function.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_a-function.js ***!
  \******************************************************/
/***/ ((module) => {

module.exports = function (it) {
  if (typeof it != 'function') throw TypeError(it + ' is not a function!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_add-to-unscopables.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/modules/_add-to-unscopables.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 22.1.3.31 Array.prototype[@@unscopables]
var UNSCOPABLES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('unscopables');
var ArrayProto = Array.prototype;
if (ArrayProto[UNSCOPABLES] == undefined) __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js")(ArrayProto, UNSCOPABLES, {});
module.exports = function (key) {
  ArrayProto[UNSCOPABLES][key] = true;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_advance-string-index.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_advance-string-index.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var at = __webpack_require__(/*! ./_string-at */ "../node_modules/core-js/modules/_string-at.js")(true);

 // `AdvanceStringIndex` abstract operation
// https://tc39.github.io/ecma262/#sec-advancestringindex
module.exports = function (S, index, unicode) {
  return index + (unicode ? at(S, index).length : 1);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_an-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_an-object.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
module.exports = function (it) {
  if (!isObject(it)) throw TypeError(it + ' is not an object!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-includes.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/_array-includes.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// false -> Array#indexOf
// true  -> Array#includes
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/modules/_to-iobject.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var toAbsoluteIndex = __webpack_require__(/*! ./_to-absolute-index */ "../node_modules/core-js/modules/_to-absolute-index.js");
module.exports = function (IS_INCLUDES) {
  return function ($this, el, fromIndex) {
    var O = toIObject($this);
    var length = toLength(O.length);
    var index = toAbsoluteIndex(fromIndex, length);
    var value;
    // Array#includes uses SameValueZero equality algorithm
    // eslint-disable-next-line no-self-compare
    if (IS_INCLUDES && el != el) while (length > index) {
      value = O[index++];
      // eslint-disable-next-line no-self-compare
      if (value != value) return true;
    // Array#indexOf ignores holes, Array#includes - not
    } else for (;length > index; index++) if (IS_INCLUDES || index in O) {
      if (O[index] === el) return IS_INCLUDES || index || 0;
    } return !IS_INCLUDES && -1;
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-methods.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_array-methods.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 0 -> Array#forEach
// 1 -> Array#map
// 2 -> Array#filter
// 3 -> Array#some
// 4 -> Array#every
// 5 -> Array#find
// 6 -> Array#findIndex
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/modules/_ctx.js");
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/modules/_iobject.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/modules/_to-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var asc = __webpack_require__(/*! ./_array-species-create */ "../node_modules/core-js/modules/_array-species-create.js");
module.exports = function (TYPE, $create) {
  var IS_MAP = TYPE == 1;
  var IS_FILTER = TYPE == 2;
  var IS_SOME = TYPE == 3;
  var IS_EVERY = TYPE == 4;
  var IS_FIND_INDEX = TYPE == 6;
  var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
  var create = $create || asc;
  return function ($this, callbackfn, that) {
    var O = toObject($this);
    var self = IObject(O);
    var f = ctx(callbackfn, that, 3);
    var length = toLength(self.length);
    var index = 0;
    var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;
    var val, res;
    for (;length > index; index++) if (NO_HOLES || index in self) {
      val = self[index];
      res = f(val, index, O);
      if (TYPE) {
        if (IS_MAP) result[index] = res;   // map
        else if (res) switch (TYPE) {
          case 3: return true;             // some
          case 5: return val;              // find
          case 6: return index;            // findIndex
          case 2: result.push(val);        // filter
        } else if (IS_EVERY) return false; // every
      }
    }
    return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-species-constructor.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/modules/_array-species-constructor.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var isArray = __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/modules/_is-array.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('species');

module.exports = function (original) {
  var C;
  if (isArray(original)) {
    C = original.constructor;
    // cross-realm fallback
    if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
    if (isObject(C)) {
      C = C[SPECIES];
      if (C === null) C = undefined;
    }
  } return C === undefined ? Array : C;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-species-create.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_array-species-create.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 9.4.2.3 ArraySpeciesCreate(originalArray, length)
var speciesConstructor = __webpack_require__(/*! ./_array-species-constructor */ "../node_modules/core-js/modules/_array-species-constructor.js");

module.exports = function (original, length) {
  return new (speciesConstructor(original))(length);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_classof.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_classof.js ***!
  \***************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// getting tag from 19.1.3.6 Object.prototype.toString()
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('toStringTag');
// ES3 wrong here
var ARG = cof(function () { return arguments; }()) == 'Arguments';

// fallback for IE11 Script Access Denied error
var tryGet = function (it, key) {
  try {
    return it[key];
  } catch (e) { /* empty */ }
};

module.exports = function (it) {
  var O, T, B;
  return it === undefined ? 'Undefined' : it === null ? 'Null'
    // @@toStringTag case
    : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T
    // builtinTag case
    : ARG ? cof(O)
    // ES3 arguments fallback
    : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_cof.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_cof.js ***!
  \***********************************************/
/***/ ((module) => {

var toString = {}.toString;

module.exports = function (it) {
  return toString.call(it).slice(8, -1);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_core.js":
/*!************************************************!*\
  !*** ../node_modules/core-js/modules/_core.js ***!
  \************************************************/
/***/ ((module) => {

var core = module.exports = { version: '2.6.12' };
if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/modules/_ctx.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_ctx.js ***!
  \***********************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// optional / simple context binding
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/modules/_a-function.js");
module.exports = function (fn, that, length) {
  aFunction(fn);
  if (that === undefined) return fn;
  switch (length) {
    case 1: return function (a) {
      return fn.call(that, a);
    };
    case 2: return function (a, b) {
      return fn.call(that, a, b);
    };
    case 3: return function (a, b, c) {
      return fn.call(that, a, b, c);
    };
  }
  return function (/* ...args */) {
    return fn.apply(that, arguments);
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_defined.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_defined.js ***!
  \***************************************************/
/***/ ((module) => {

// 7.2.1 RequireObjectCoercible(argument)
module.exports = function (it) {
  if (it == undefined) throw TypeError("Can't call method on  " + it);
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_descriptors.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_descriptors.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Thank's IE8 for his funny defineProperty
module.exports = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () {
  return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/modules/_dom-create.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_dom-create.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js").document;
// typeof document.createElement is 'object' in old IE
var is = isObject(document) && isObject(document.createElement);
module.exports = function (it) {
  return is ? document.createElement(it) : {};
};


/***/ }),

/***/ "../node_modules/core-js/modules/_enum-bug-keys.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_enum-bug-keys.js ***!
  \*********************************************************/
/***/ ((module) => {

// IE 8- don't enum bug keys
module.exports = (
  'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
).split(',');


/***/ }),

/***/ "../node_modules/core-js/modules/_export.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_export.js ***!
  \**************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/modules/_ctx.js");
var PROTOTYPE = 'prototype';

var $export = function (type, name, source) {
  var IS_FORCED = type & $export.F;
  var IS_GLOBAL = type & $export.G;
  var IS_STATIC = type & $export.S;
  var IS_PROTO = type & $export.P;
  var IS_BIND = type & $export.B;
  var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE];
  var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
  var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {});
  var key, own, out, exp;
  if (IS_GLOBAL) source = name;
  for (key in source) {
    // contains in native
    own = !IS_FORCED && target && target[key] !== undefined;
    // export native or passed
    out = (own ? target : source)[key];
    // bind timers to global for call from export context
    exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
    // extend global
    if (target) redefine(target, key, out, type & $export.U);
    // export
    if (exports[key] != out) hide(exports, key, exp);
    if (IS_PROTO && expProto[key] != out) expProto[key] = out;
  }
};
global.core = core;
// type bitmap
$export.F = 1;   // forced
$export.G = 2;   // global
$export.S = 4;   // static
$export.P = 8;   // proto
$export.B = 16;  // bind
$export.W = 32;  // wrap
$export.U = 64;  // safe
$export.R = 128; // real proto method for `library`
module.exports = $export;


/***/ }),

/***/ "../node_modules/core-js/modules/_fails.js":
/*!*************************************************!*\
  !*** ../node_modules/core-js/modules/_fails.js ***!
  \*************************************************/
/***/ ((module) => {

module.exports = function (exec) {
  try {
    return !!exec();
  } catch (e) {
    return true;
  }
};


/***/ }),

/***/ "../node_modules/core-js/modules/_fix-re-wks.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_fix-re-wks.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

__webpack_require__(/*! ./es6.regexp.exec */ "../node_modules/core-js/modules/es6.regexp.exec.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
var wks = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js");
var regexpExec = __webpack_require__(/*! ./_regexp-exec */ "../node_modules/core-js/modules/_regexp-exec.js");

var SPECIES = wks('species');

var REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {
  // #replace needs built-in support for named groups.
  // #match works fine because it just return the exec results, even if it has
  // a "grops" property.
  var re = /./;
  re.exec = function () {
    var result = [];
    result.groups = { a: '7' };
    return result;
  };
  return ''.replace(re, '$<a>') !== '7';
});

var SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = (function () {
  // Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec
  var re = /(?:)/;
  var originalExec = re.exec;
  re.exec = function () { return originalExec.apply(this, arguments); };
  var result = 'ab'.split(re);
  return result.length === 2 && result[0] === 'a' && result[1] === 'b';
})();

module.exports = function (KEY, length, exec) {
  var SYMBOL = wks(KEY);

  var DELEGATES_TO_SYMBOL = !fails(function () {
    // String methods call symbol-named RegEp methods
    var O = {};
    O[SYMBOL] = function () { return 7; };
    return ''[KEY](O) != 7;
  });

  var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL ? !fails(function () {
    // Symbol-named RegExp methods call .exec
    var execCalled = false;
    var re = /a/;
    re.exec = function () { execCalled = true; return null; };
    if (KEY === 'split') {
      // RegExp[@@split] doesn't call the regex's exec method, but first creates
      // a new one. We need to return the patched regex when creating the new one.
      re.constructor = {};
      re.constructor[SPECIES] = function () { return re; };
    }
    re[SYMBOL]('');
    return !execCalled;
  }) : undefined;

  if (
    !DELEGATES_TO_SYMBOL ||
    !DELEGATES_TO_EXEC ||
    (KEY === 'replace' && !REPLACE_SUPPORTS_NAMED_GROUPS) ||
    (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)
  ) {
    var nativeRegExpMethod = /./[SYMBOL];
    var fns = exec(
      defined,
      SYMBOL,
      ''[KEY],
      function maybeCallNative(nativeMethod, regexp, str, arg2, forceStringMethod) {
        if (regexp.exec === regexpExec) {
          if (DELEGATES_TO_SYMBOL && !forceStringMethod) {
            // The native String method already delegates to @@method (this
            // polyfilled function), leasing to infinite recursion.
            // We avoid it by directly calling the native @@method method.
            return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };
          }
          return { done: true, value: nativeMethod.call(str, regexp, arg2) };
        }
        return { done: false };
      }
    );
    var strfn = fns[0];
    var rxfn = fns[1];

    redefine(String.prototype, KEY, strfn);
    hide(RegExp.prototype, SYMBOL, length == 2
      // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)
      // 21.2.5.11 RegExp.prototype[@@split](string, limit)
      ? function (string, arg) { return rxfn.call(string, this, arg); }
      // 21.2.5.6 RegExp.prototype[@@match](string)
      // 21.2.5.9 RegExp.prototype[@@search](string)
      : function (string) { return rxfn.call(string, this); }
    );
  }
};


/***/ }),

/***/ "../node_modules/core-js/modules/_flags.js":
/*!*************************************************!*\
  !*** ../node_modules/core-js/modules/_flags.js ***!
  \*************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 21.2.5.3 get RegExp.prototype.flags
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
module.exports = function () {
  var that = anObject(this);
  var result = '';
  if (that.global) result += 'g';
  if (that.ignoreCase) result += 'i';
  if (that.multiline) result += 'm';
  if (that.unicode) result += 'u';
  if (that.sticky) result += 'y';
  return result;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_function-to-string.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/modules/_function-to-string.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/modules/_shared.js")('native-function-to-string', Function.toString);


/***/ }),

/***/ "../node_modules/core-js/modules/_global.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_global.js ***!
  \**************************************************/
/***/ ((module) => {

// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
var global = module.exports = typeof window != 'undefined' && window.Math == Math
  ? window : typeof self != 'undefined' && self.Math == Math ? self
  // eslint-disable-next-line no-new-func
  : Function('return this')();
if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/modules/_has.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_has.js ***!
  \***********************************************/
/***/ ((module) => {

var hasOwnProperty = {}.hasOwnProperty;
module.exports = function (it, key) {
  return hasOwnProperty.call(it, key);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_hide.js":
/*!************************************************!*\
  !*** ../node_modules/core-js/modules/_hide.js ***!
  \************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/modules/_property-desc.js");
module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? function (object, key, value) {
  return dP.f(object, key, createDesc(1, value));
} : function (object, key, value) {
  object[key] = value;
  return object;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_html.js":
/*!************************************************!*\
  !*** ../node_modules/core-js/modules/_html.js ***!
  \************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js").document;
module.exports = document && document.documentElement;


/***/ }),

/***/ "../node_modules/core-js/modules/_ie8-dom-define.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/_ie8-dom-define.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") && !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () {
  return Object.defineProperty(__webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/modules/_dom-create.js")('div'), 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/modules/_iobject.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_iobject.js ***!
  \***************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// fallback for non-array-like ES3 and non-enumerable old V8 strings
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
// eslint-disable-next-line no-prototype-builtins
module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
  return cof(it) == 'String' ? it.split('') : Object(it);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_is-array.js":
/*!****************************************************!*\
  !*** ../node_modules/core-js/modules/_is-array.js ***!
  \****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.2.2 IsArray(argument)
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
module.exports = Array.isArray || function isArray(arg) {
  return cof(arg) == 'Array';
};


/***/ }),

/***/ "../node_modules/core-js/modules/_is-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_is-object.js ***!
  \*****************************************************/
/***/ ((module) => {

module.exports = function (it) {
  return typeof it === 'object' ? it !== null : typeof it === 'function';
};


/***/ }),

/***/ "../node_modules/core-js/modules/_is-regexp.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_is-regexp.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.2.8 IsRegExp(argument)
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
var MATCH = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('match');
module.exports = function (it) {
  var isRegExp;
  return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp');
};


/***/ }),

/***/ "../node_modules/core-js/modules/_iter-create.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_iter-create.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/modules/_object-create.js");
var descriptor = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/modules/_property-desc.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/modules/_set-to-string-tag.js");
var IteratorPrototype = {};

// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
__webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js")(IteratorPrototype, __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('iterator'), function () { return this; });

module.exports = function (Constructor, NAME, next) {
  Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });
  setToStringTag(Constructor, NAME + ' Iterator');
};


/***/ }),

/***/ "../node_modules/core-js/modules/_iter-define.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_iter-define.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/modules/_library.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/modules/_iterators.js");
var $iterCreate = __webpack_require__(/*! ./_iter-create */ "../node_modules/core-js/modules/_iter-create.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/modules/_set-to-string-tag.js");
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/modules/_object-gpo.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('iterator');
var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`
var FF_ITERATOR = '@@iterator';
var KEYS = 'keys';
var VALUES = 'values';

var returnThis = function () { return this; };

module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {
  $iterCreate(Constructor, NAME, next);
  var getMethod = function (kind) {
    if (!BUGGY && kind in proto) return proto[kind];
    switch (kind) {
      case KEYS: return function keys() { return new Constructor(this, kind); };
      case VALUES: return function values() { return new Constructor(this, kind); };
    } return function entries() { return new Constructor(this, kind); };
  };
  var TAG = NAME + ' Iterator';
  var DEF_VALUES = DEFAULT == VALUES;
  var VALUES_BUG = false;
  var proto = Base.prototype;
  var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];
  var $default = $native || getMethod(DEFAULT);
  var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;
  var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;
  var methods, key, IteratorPrototype;
  // Fix native
  if ($anyNative) {
    IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));
    if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {
      // Set @@toStringTag to native iterators
      setToStringTag(IteratorPrototype, TAG, true);
      // fix for some old engines
      if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);
    }
  }
  // fix Array#{values, @@iterator}.name in V8 / FF
  if (DEF_VALUES && $native && $native.name !== VALUES) {
    VALUES_BUG = true;
    $default = function values() { return $native.call(this); };
  }
  // Define iterator
  if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {
    hide(proto, ITERATOR, $default);
  }
  // Plug for library
  Iterators[NAME] = $default;
  Iterators[TAG] = returnThis;
  if (DEFAULT) {
    methods = {
      values: DEF_VALUES ? $default : getMethod(VALUES),
      keys: IS_SET ? $default : getMethod(KEYS),
      entries: $entries
    };
    if (FORCED) for (key in methods) {
      if (!(key in proto)) redefine(proto, key, methods[key]);
    } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
  }
  return methods;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_iter-step.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_iter-step.js ***!
  \*****************************************************/
/***/ ((module) => {

module.exports = function (done, value) {
  return { value: value, done: !!done };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_iterators.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_iterators.js ***!
  \*****************************************************/
/***/ ((module) => {

module.exports = {};


/***/ }),

/***/ "../node_modules/core-js/modules/_library.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_library.js ***!
  \***************************************************/
/***/ ((module) => {

module.exports = false;


/***/ }),

/***/ "../node_modules/core-js/modules/_object-create.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_object-create.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var dPs = __webpack_require__(/*! ./_object-dps */ "../node_modules/core-js/modules/_object-dps.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/modules/_enum-bug-keys.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/modules/_shared-key.js")('IE_PROTO');
var Empty = function () { /* empty */ };
var PROTOTYPE = 'prototype';

// Create object with fake `null` prototype: use iframe Object with cleared prototype
var createDict = function () {
  // Thrash, waste and sodomy: IE GC bug
  var iframe = __webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/modules/_dom-create.js")('iframe');
  var i = enumBugKeys.length;
  var lt = '<';
  var gt = '>';
  var iframeDocument;
  iframe.style.display = 'none';
  __webpack_require__(/*! ./_html */ "../node_modules/core-js/modules/_html.js").appendChild(iframe);
  iframe.src = 'javascript:'; // eslint-disable-line no-script-url
  // createDict = iframe.contentWindow.Object;
  // html.removeChild(iframe);
  iframeDocument = iframe.contentWindow.document;
  iframeDocument.open();
  iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);
  iframeDocument.close();
  createDict = iframeDocument.F;
  while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];
  return createDict();
};

module.exports = Object.create || function create(O, Properties) {
  var result;
  if (O !== null) {
    Empty[PROTOTYPE] = anObject(O);
    result = new Empty();
    Empty[PROTOTYPE] = null;
    // add "__proto__" for Object.getPrototypeOf polyfill
    result[IE_PROTO] = O;
  } else result = createDict();
  return Properties === undefined ? result : dPs(result, Properties);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-dp.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_object-dp.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/modules/_ie8-dom-define.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/modules/_to-primitive.js");
var dP = Object.defineProperty;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? Object.defineProperty : function defineProperty(O, P, Attributes) {
  anObject(O);
  P = toPrimitive(P, true);
  anObject(Attributes);
  if (IE8_DOM_DEFINE) try {
    return dP(O, P, Attributes);
  } catch (e) { /* empty */ }
  if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
  if ('value' in Attributes) O[P] = Attributes.value;
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-dps.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_object-dps.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/modules/_object-keys.js");

module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? Object.defineProperties : function defineProperties(O, Properties) {
  anObject(O);
  var keys = getKeys(Properties);
  var length = keys.length;
  var i = 0;
  var P;
  while (length > i) dP.f(O, P = keys[i++], Properties[P]);
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-gpo.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_object-gpo.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/modules/_to-object.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/modules/_shared-key.js")('IE_PROTO');
var ObjectProto = Object.prototype;

module.exports = Object.getPrototypeOf || function (O) {
  O = toObject(O);
  if (has(O, IE_PROTO)) return O[IE_PROTO];
  if (typeof O.constructor == 'function' && O instanceof O.constructor) {
    return O.constructor.prototype;
  } return O instanceof Object ? ObjectProto : null;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-keys-internal.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_object-keys-internal.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/modules/_to-iobject.js");
var arrayIndexOf = __webpack_require__(/*! ./_array-includes */ "../node_modules/core-js/modules/_array-includes.js")(false);
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/modules/_shared-key.js")('IE_PROTO');

module.exports = function (object, names) {
  var O = toIObject(object);
  var i = 0;
  var result = [];
  var key;
  for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);
  // Don't enum bug & hidden keys
  while (names.length > i) if (has(O, key = names[i++])) {
    ~arrayIndexOf(result, key) || result.push(key);
  }
  return result;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-keys.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_object-keys.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.14 / 15.2.3.14 Object.keys(O)
var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/modules/_object-keys-internal.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/modules/_enum-bug-keys.js");

module.exports = Object.keys || function keys(O) {
  return $keys(O, enumBugKeys);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_property-desc.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_property-desc.js ***!
  \*********************************************************/
/***/ ((module) => {

module.exports = function (bitmap, value) {
  return {
    enumerable: !(bitmap & 1),
    configurable: !(bitmap & 2),
    writable: !(bitmap & 4),
    value: value
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_redefine.js":
/*!****************************************************!*\
  !*** ../node_modules/core-js/modules/_redefine.js ***!
  \****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var SRC = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/modules/_uid.js")('src');
var $toString = __webpack_require__(/*! ./_function-to-string */ "../node_modules/core-js/modules/_function-to-string.js");
var TO_STRING = 'toString';
var TPL = ('' + $toString).split(TO_STRING);

__webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js").inspectSource = function (it) {
  return $toString.call(it);
};

(module.exports = function (O, key, val, safe) {
  var isFunction = typeof val == 'function';
  if (isFunction) has(val, 'name') || hide(val, 'name', key);
  if (O[key] === val) return;
  if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));
  if (O === global) {
    O[key] = val;
  } else if (!safe) {
    delete O[key];
    hide(O, key, val);
  } else if (O[key]) {
    O[key] = val;
  } else {
    hide(O, key, val);
  }
// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
})(Function.prototype, TO_STRING, function toString() {
  return typeof this == 'function' && this[SRC] || $toString.call(this);
});


/***/ }),

/***/ "../node_modules/core-js/modules/_regexp-exec-abstract.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_regexp-exec-abstract.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/modules/_classof.js");
var builtinExec = RegExp.prototype.exec;

 // `RegExpExec` abstract operation
// https://tc39.github.io/ecma262/#sec-regexpexec
module.exports = function (R, S) {
  var exec = R.exec;
  if (typeof exec === 'function') {
    var result = exec.call(R, S);
    if (typeof result !== 'object') {
      throw new TypeError('RegExp exec method returned something other than an Object or null');
    }
    return result;
  }
  if (classof(R) !== 'RegExp') {
    throw new TypeError('RegExp#exec called on incompatible receiver');
  }
  return builtinExec.call(R, S);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_regexp-exec.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_regexp-exec.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var regexpFlags = __webpack_require__(/*! ./_flags */ "../node_modules/core-js/modules/_flags.js");

var nativeExec = RegExp.prototype.exec;
// This always refers to the native implementation, because the
// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,
// which loads this file before patching the method.
var nativeReplace = String.prototype.replace;

var patchedExec = nativeExec;

var LAST_INDEX = 'lastIndex';

var UPDATES_LAST_INDEX_WRONG = (function () {
  var re1 = /a/,
      re2 = /b*/g;
  nativeExec.call(re1, 'a');
  nativeExec.call(re2, 'a');
  return re1[LAST_INDEX] !== 0 || re2[LAST_INDEX] !== 0;
})();

// nonparticipating capturing group, copied from es5-shim's String#split patch.
var NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;

var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED;

if (PATCH) {
  patchedExec = function exec(str) {
    var re = this;
    var lastIndex, reCopy, match, i;

    if (NPCG_INCLUDED) {
      reCopy = new RegExp('^' + re.source + '$(?!\\s)', regexpFlags.call(re));
    }
    if (UPDATES_LAST_INDEX_WRONG) lastIndex = re[LAST_INDEX];

    match = nativeExec.call(re, str);

    if (UPDATES_LAST_INDEX_WRONG && match) {
      re[LAST_INDEX] = re.global ? match.index + match[0].length : lastIndex;
    }
    if (NPCG_INCLUDED && match && match.length > 1) {
      // Fix browsers whose `exec` methods don't consistently return `undefined`
      // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/
      // eslint-disable-next-line no-loop-func
      nativeReplace.call(match[0], reCopy, function () {
        for (i = 1; i < arguments.length - 2; i++) {
          if (arguments[i] === undefined) match[i] = undefined;
        }
      });
    }

    return match;
  };
}

module.exports = patchedExec;


/***/ }),

/***/ "../node_modules/core-js/modules/_set-to-string-tag.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/_set-to-string-tag.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var def = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js").f;
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('toStringTag');

module.exports = function (it, tag, stat) {
  if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });
};


/***/ }),

/***/ "../node_modules/core-js/modules/_shared-key.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_shared-key.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var shared = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/modules/_shared.js")('keys');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/modules/_uid.js");
module.exports = function (key) {
  return shared[key] || (shared[key] = uid(key));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_shared.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_shared.js ***!
  \**************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var SHARED = '__core-js_shared__';
var store = global[SHARED] || (global[SHARED] = {});

(module.exports = function (key, value) {
  return store[key] || (store[key] = value !== undefined ? value : {});
})('versions', []).push({
  version: core.version,
  mode: __webpack_require__(/*! ./_library */ "../node_modules/core-js/modules/_library.js") ? 'pure' : 'global',
  copyright: '© 2020 Denis Pushkarev (zloirock.ru)'
});


/***/ }),

/***/ "../node_modules/core-js/modules/_species-constructor.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/modules/_species-constructor.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.3.20 SpeciesConstructor(O, defaultConstructor)
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/modules/_a-function.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('species');
module.exports = function (O, D) {
  var C = anObject(O).constructor;
  var S;
  return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_strict-method.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_strict-method.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js");

module.exports = function (method, arg) {
  return !!method && fails(function () {
    // eslint-disable-next-line no-useless-call
    arg ? method.call(null, function () { /* empty */ }, 1) : method.call(null);
  });
};


/***/ }),

/***/ "../node_modules/core-js/modules/_string-at.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_string-at.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
// true  -> String#at
// false -> String#codePointAt
module.exports = function (TO_STRING) {
  return function (that, pos) {
    var s = String(defined(that));
    var i = toInteger(pos);
    var l = s.length;
    var a, b;
    if (i < 0 || i >= l) return TO_STRING ? '' : undefined;
    a = s.charCodeAt(i);
    return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
      ? TO_STRING ? s.charAt(i) : a
      : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-absolute-index.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/_to-absolute-index.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var max = Math.max;
var min = Math.min;
module.exports = function (index, length) {
  index = toInteger(index);
  return index < 0 ? max(index + length, 0) : min(index, length);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-integer.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_to-integer.js ***!
  \******************************************************/
/***/ ((module) => {

// 7.1.4 ToInteger
var ceil = Math.ceil;
var floor = Math.floor;
module.exports = function (it) {
  return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-iobject.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_to-iobject.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// to indexed object, toObject with fallback for non-array-like ES3 strings
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/modules/_iobject.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
module.exports = function (it) {
  return IObject(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-length.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_to-length.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.15 ToLength
var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var min = Math.min;
module.exports = function (it) {
  return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_to-object.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.13 ToObject(argument)
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
module.exports = function (it) {
  return Object(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-primitive.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/modules/_to-primitive.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.1 ToPrimitive(input [, PreferredType])
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
// instead of the ES6 spec version, we didn't implement @@toPrimitive case
// and the second argument - flag - preferred type is a string
module.exports = function (it, S) {
  if (!isObject(it)) return it;
  var fn, val;
  if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
  if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  throw TypeError("Can't convert object to primitive value");
};


/***/ }),

/***/ "../node_modules/core-js/modules/_uid.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_uid.js ***!
  \***********************************************/
/***/ ((module) => {

var id = 0;
var px = Math.random();
module.exports = function (key) {
  return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_wks.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_wks.js ***!
  \***********************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var store = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/modules/_shared.js")('wks');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/modules/_uid.js");
var Symbol = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js").Symbol;
var USE_SYMBOL = typeof Symbol == 'function';

var $exports = module.exports = function (name) {
  return store[name] || (store[name] =
    USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
};

$exports.store = store;


/***/ }),

/***/ "../node_modules/core-js/modules/es6.array.filter.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.array.filter.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var $filter = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/modules/_array-methods.js")(2);

$export($export.P + $export.F * !__webpack_require__(/*! ./_strict-method */ "../node_modules/core-js/modules/_strict-method.js")([].filter, true), 'Array', {
  // 22.1.3.7 / 15.4.4.20 Array.prototype.filter(callbackfn [, thisArg])
  filter: function filter(callbackfn /* , thisArg */) {
    return $filter(this, callbackfn, arguments[1]);
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.array.iterator.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.array.iterator.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var addToUnscopables = __webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/modules/_add-to-unscopables.js");
var step = __webpack_require__(/*! ./_iter-step */ "../node_modules/core-js/modules/_iter-step.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/modules/_iterators.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/modules/_to-iobject.js");

// 22.1.3.4 Array.prototype.entries()
// 22.1.3.13 Array.prototype.keys()
// 22.1.3.29 Array.prototype.values()
// 22.1.3.30 Array.prototype[@@iterator]()
module.exports = __webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/modules/_iter-define.js")(Array, 'Array', function (iterated, kind) {
  this._t = toIObject(iterated); // target
  this._i = 0;                   // next index
  this._k = kind;                // kind
// 22.1.5.2.1 %ArrayIteratorPrototype%.next()
}, function () {
  var O = this._t;
  var kind = this._k;
  var index = this._i++;
  if (!O || index >= O.length) {
    this._t = undefined;
    return step(1);
  }
  if (kind == 'keys') return step(0, index);
  if (kind == 'values') return step(0, O[index]);
  return step(0, [index, O[index]]);
}, 'values');

// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
Iterators.Arguments = Iterators.Array;

addToUnscopables('keys');
addToUnscopables('values');
addToUnscopables('entries');


/***/ }),

/***/ "../node_modules/core-js/modules/es6.function.name.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.function.name.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js").f;
var FProto = Function.prototype;
var nameRE = /^\s*function ([^ (]*)/;
var NAME = 'name';

// 19.2.4.2 name
NAME in FProto || __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") && dP(FProto, NAME, {
  configurable: true,
  get: function () {
    try {
      return ('' + this).match(nameRE)[1];
    } catch (e) {
      return '';
    }
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.object.to-string.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.object.to-string.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 19.1.3.6 Object.prototype.toString()
var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/modules/_classof.js");
var test = {};
test[__webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('toStringTag')] = 'z';
if (test + '' != '[object z]') {
  __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js")(Object.prototype, 'toString', function toString() {
    return '[object ' + classof(this) + ']';
  }, true);
}


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.exec.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.exec.js ***!
  \**********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var regexpExec = __webpack_require__(/*! ./_regexp-exec */ "../node_modules/core-js/modules/_regexp-exec.js");
__webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js")({
  target: 'RegExp',
  proto: true,
  forced: regexpExec !== /./.exec
}, {
  exec: regexpExec
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.replace.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.replace.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/modules/_to-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var advanceStringIndex = __webpack_require__(/*! ./_advance-string-index */ "../node_modules/core-js/modules/_advance-string-index.js");
var regExpExec = __webpack_require__(/*! ./_regexp-exec-abstract */ "../node_modules/core-js/modules/_regexp-exec-abstract.js");
var max = Math.max;
var min = Math.min;
var floor = Math.floor;
var SUBSTITUTION_SYMBOLS = /\$([$&`']|\d\d?|<[^>]*>)/g;
var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&`']|\d\d?)/g;

var maybeToString = function (it) {
  return it === undefined ? it : String(it);
};

// @@replace logic
__webpack_require__(/*! ./_fix-re-wks */ "../node_modules/core-js/modules/_fix-re-wks.js")('replace', 2, function (defined, REPLACE, $replace, maybeCallNative) {
  return [
    // `String.prototype.replace` method
    // https://tc39.github.io/ecma262/#sec-string.prototype.replace
    function replace(searchValue, replaceValue) {
      var O = defined(this);
      var fn = searchValue == undefined ? undefined : searchValue[REPLACE];
      return fn !== undefined
        ? fn.call(searchValue, O, replaceValue)
        : $replace.call(String(O), searchValue, replaceValue);
    },
    // `RegExp.prototype[@@replace]` method
    // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace
    function (regexp, replaceValue) {
      var res = maybeCallNative($replace, regexp, this, replaceValue);
      if (res.done) return res.value;

      var rx = anObject(regexp);
      var S = String(this);
      var functionalReplace = typeof replaceValue === 'function';
      if (!functionalReplace) replaceValue = String(replaceValue);
      var global = rx.global;
      if (global) {
        var fullUnicode = rx.unicode;
        rx.lastIndex = 0;
      }
      var results = [];
      while (true) {
        var result = regExpExec(rx, S);
        if (result === null) break;
        results.push(result);
        if (!global) break;
        var matchStr = String(result[0]);
        if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
      }
      var accumulatedResult = '';
      var nextSourcePosition = 0;
      for (var i = 0; i < results.length; i++) {
        result = results[i];
        var matched = String(result[0]);
        var position = max(min(toInteger(result.index), S.length), 0);
        var captures = [];
        // NOTE: This is equivalent to
        //   captures = result.slice(1).map(maybeToString)
        // but for some reason `nativeSlice.call(result, 1, result.length)` (called in
        // the slice polyfill when slicing native arrays) "doesn't work" in safari 9 and
        // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.
        for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));
        var namedCaptures = result.groups;
        if (functionalReplace) {
          var replacerArgs = [matched].concat(captures, position, S);
          if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);
          var replacement = String(replaceValue.apply(undefined, replacerArgs));
        } else {
          replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);
        }
        if (position >= nextSourcePosition) {
          accumulatedResult += S.slice(nextSourcePosition, position) + replacement;
          nextSourcePosition = position + matched.length;
        }
      }
      return accumulatedResult + S.slice(nextSourcePosition);
    }
  ];

    // https://tc39.github.io/ecma262/#sec-getsubstitution
  function getSubstitution(matched, str, position, captures, namedCaptures, replacement) {
    var tailPos = position + matched.length;
    var m = captures.length;
    var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;
    if (namedCaptures !== undefined) {
      namedCaptures = toObject(namedCaptures);
      symbols = SUBSTITUTION_SYMBOLS;
    }
    return $replace.call(replacement, symbols, function (match, ch) {
      var capture;
      switch (ch.charAt(0)) {
        case '$': return '$';
        case '&': return matched;
        case '`': return str.slice(0, position);
        case "'": return str.slice(tailPos);
        case '<':
          capture = namedCaptures[ch.slice(1, -1)];
          break;
        default: // \d\d?
          var n = +ch;
          if (n === 0) return match;
          if (n > m) {
            var f = floor(n / 10);
            if (f === 0) return match;
            if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);
            return match;
          }
          capture = captures[n - 1];
      }
      return capture === undefined ? '' : capture;
    });
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.split.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.split.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var isRegExp = __webpack_require__(/*! ./_is-regexp */ "../node_modules/core-js/modules/_is-regexp.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var speciesConstructor = __webpack_require__(/*! ./_species-constructor */ "../node_modules/core-js/modules/_species-constructor.js");
var advanceStringIndex = __webpack_require__(/*! ./_advance-string-index */ "../node_modules/core-js/modules/_advance-string-index.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var callRegExpExec = __webpack_require__(/*! ./_regexp-exec-abstract */ "../node_modules/core-js/modules/_regexp-exec-abstract.js");
var regexpExec = __webpack_require__(/*! ./_regexp-exec */ "../node_modules/core-js/modules/_regexp-exec.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js");
var $min = Math.min;
var $push = [].push;
var $SPLIT = 'split';
var LENGTH = 'length';
var LAST_INDEX = 'lastIndex';
var MAX_UINT32 = 0xffffffff;

// babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError
var SUPPORTS_Y = !fails(function () { RegExp(MAX_UINT32, 'y'); });

// @@split logic
__webpack_require__(/*! ./_fix-re-wks */ "../node_modules/core-js/modules/_fix-re-wks.js")('split', 2, function (defined, SPLIT, $split, maybeCallNative) {
  var internalSplit;
  if (
    'abbc'[$SPLIT](/(b)*/)[1] == 'c' ||
    'test'[$SPLIT](/(?:)/, -1)[LENGTH] != 4 ||
    'ab'[$SPLIT](/(?:ab)*/)[LENGTH] != 2 ||
    '.'[$SPLIT](/(.?)(.?)/)[LENGTH] != 4 ||
    '.'[$SPLIT](/()()/)[LENGTH] > 1 ||
    ''[$SPLIT](/.?/)[LENGTH]
  ) {
    // based on es5-shim implementation, need to rework it
    internalSplit = function (separator, limit) {
      var string = String(this);
      if (separator === undefined && limit === 0) return [];
      // If `separator` is not a regex, use native split
      if (!isRegExp(separator)) return $split.call(string, separator, limit);
      var output = [];
      var flags = (separator.ignoreCase ? 'i' : '') +
                  (separator.multiline ? 'm' : '') +
                  (separator.unicode ? 'u' : '') +
                  (separator.sticky ? 'y' : '');
      var lastLastIndex = 0;
      var splitLimit = limit === undefined ? MAX_UINT32 : limit >>> 0;
      // Make `global` and avoid `lastIndex` issues by working with a copy
      var separatorCopy = new RegExp(separator.source, flags + 'g');
      var match, lastIndex, lastLength;
      while (match = regexpExec.call(separatorCopy, string)) {
        lastIndex = separatorCopy[LAST_INDEX];
        if (lastIndex > lastLastIndex) {
          output.push(string.slice(lastLastIndex, match.index));
          if (match[LENGTH] > 1 && match.index < string[LENGTH]) $push.apply(output, match.slice(1));
          lastLength = match[0][LENGTH];
          lastLastIndex = lastIndex;
          if (output[LENGTH] >= splitLimit) break;
        }
        if (separatorCopy[LAST_INDEX] === match.index) separatorCopy[LAST_INDEX]++; // Avoid an infinite loop
      }
      if (lastLastIndex === string[LENGTH]) {
        if (lastLength || !separatorCopy.test('')) output.push('');
      } else output.push(string.slice(lastLastIndex));
      return output[LENGTH] > splitLimit ? output.slice(0, splitLimit) : output;
    };
  // Chakra, V8
  } else if ('0'[$SPLIT](undefined, 0)[LENGTH]) {
    internalSplit = function (separator, limit) {
      return separator === undefined && limit === 0 ? [] : $split.call(this, separator, limit);
    };
  } else {
    internalSplit = $split;
  }

  return [
    // `String.prototype.split` method
    // https://tc39.github.io/ecma262/#sec-string.prototype.split
    function split(separator, limit) {
      var O = defined(this);
      var splitter = separator == undefined ? undefined : separator[SPLIT];
      return splitter !== undefined
        ? splitter.call(separator, O, limit)
        : internalSplit.call(String(O), separator, limit);
    },
    // `RegExp.prototype[@@split]` method
    // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@split
    //
    // NOTE: This cannot be properly polyfilled in engines that don't support
    // the 'y' flag.
    function (regexp, limit) {
      var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== $split);
      if (res.done) return res.value;

      var rx = anObject(regexp);
      var S = String(this);
      var C = speciesConstructor(rx, RegExp);

      var unicodeMatching = rx.unicode;
      var flags = (rx.ignoreCase ? 'i' : '') +
                  (rx.multiline ? 'm' : '') +
                  (rx.unicode ? 'u' : '') +
                  (SUPPORTS_Y ? 'y' : 'g');

      // ^(? + rx + ) is needed, in combination with some S slicing, to
      // simulate the 'y' flag.
      var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags);
      var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;
      if (lim === 0) return [];
      if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];
      var p = 0;
      var q = 0;
      var A = [];
      while (q < S.length) {
        splitter.lastIndex = SUPPORTS_Y ? q : 0;
        var z = callRegExpExec(splitter, SUPPORTS_Y ? S : S.slice(q));
        var e;
        if (
          z === null ||
          (e = $min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p
        ) {
          q = advanceStringIndex(S, q, unicodeMatching);
        } else {
          A.push(S.slice(p, q));
          if (A.length === lim) return A;
          for (var i = 1; i <= z.length - 1; i++) {
            A.push(z[i]);
            if (A.length === lim) return A;
          }
          q = p = e;
        }
      }
      A.push(S.slice(p));
      return A;
    }
  ];
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.string.iterator.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.string.iterator.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $at = __webpack_require__(/*! ./_string-at */ "../node_modules/core-js/modules/_string-at.js")(true);

// 21.1.3.27 String.prototype[@@iterator]()
__webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/modules/_iter-define.js")(String, 'String', function (iterated) {
  this._t = String(iterated); // target
  this._i = 0;                // next index
// 21.1.5.2.1 %StringIteratorPrototype%.next()
}, function () {
  var O = this._t;
  var index = this._i;
  var point;
  if (index >= O.length) return { value: undefined, done: true };
  point = $at(O, index);
  this._i += point.length;
  return { value: point, done: false };
});


/***/ }),

/***/ "../node_modules/core-js/modules/web.dom.iterable.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/web.dom.iterable.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $iterators = __webpack_require__(/*! ./es6.array.iterator */ "../node_modules/core-js/modules/es6.array.iterator.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/modules/_object-keys.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/modules/_iterators.js");
var wks = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js");
var ITERATOR = wks('iterator');
var TO_STRING_TAG = wks('toStringTag');
var ArrayValues = Iterators.Array;

var DOMIterables = {
  CSSRuleList: true, // TODO: Not spec compliant, should be false.
  CSSStyleDeclaration: false,
  CSSValueList: false,
  ClientRectList: false,
  DOMRectList: false,
  DOMStringList: false,
  DOMTokenList: true,
  DataTransferItemList: false,
  FileList: false,
  HTMLAllCollection: false,
  HTMLCollection: false,
  HTMLFormElement: false,
  HTMLSelectElement: false,
  MediaList: true, // TODO: Not spec compliant, should be false.
  MimeTypeArray: false,
  NamedNodeMap: false,
  NodeList: true,
  PaintRequestList: false,
  Plugin: false,
  PluginArray: false,
  SVGLengthList: false,
  SVGNumberList: false,
  SVGPathSegList: false,
  SVGPointList: false,
  SVGStringList: false,
  SVGTransformList: false,
  SourceBufferList: false,
  StyleSheetList: true, // TODO: Not spec compliant, should be false.
  TextTrackCueList: false,
  TextTrackList: false,
  TouchList: false
};

for (var collections = getKeys(DOMIterables), i = 0; i < collections.length; i++) {
  var NAME = collections[i];
  var explicit = DOMIterables[NAME];
  var Collection = global[NAME];
  var proto = Collection && Collection.prototype;
  var key;
  if (proto) {
    if (!proto[ITERATOR]) hide(proto, ITERATOR, ArrayValues);
    if (!proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);
    Iterators[NAME] = ArrayValues;
    if (explicit) for (key in $iterators) if (!proto[key]) redefine(proto, key, $iterators[key], true);
  }
}


/***/ }),

/***/ "../node_modules/regenerator-runtime/runtime.js":
/*!******************************************************!*\
  !*** ../node_modules/regenerator-runtime/runtime.js ***!
  \******************************************************/
/***/ ((module) => {

/**
 * Copyright (c) 2014-present, Facebook, Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

var runtime = (function (exports) {
  "use strict";

  var Op = Object.prototype;
  var hasOwn = Op.hasOwnProperty;
  var undefined; // More compressible than void 0.
  var $Symbol = typeof Symbol === "function" ? Symbol : {};
  var iteratorSymbol = $Symbol.iterator || "@@iterator";
  var asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator";
  var toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag";

  function define(obj, key, value) {
    Object.defineProperty(obj, key, {
      value: value,
      enumerable: true,
      configurable: true,
      writable: true
    });
    return obj[key];
  }
  try {
    // IE 8 has a broken Object.defineProperty that only works on DOM objects.
    define({}, "");
  } catch (err) {
    define = function(obj, key, value) {
      return obj[key] = value;
    };
  }

  function wrap(innerFn, outerFn, self, tryLocsList) {
    // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.
    var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;
    var generator = Object.create(protoGenerator.prototype);
    var context = new Context(tryLocsList || []);

    // The ._invoke method unifies the implementations of the .next,
    // .throw, and .return methods.
    generator._invoke = makeInvokeMethod(innerFn, self, context);

    return generator;
  }
  exports.wrap = wrap;

  // Try/catch helper to minimize deoptimizations. Returns a completion
  // record like context.tryEntries[i].completion. This interface could
  // have been (and was previously) designed to take a closure to be
  // invoked without arguments, but in all the cases we care about we
  // already have an existing method we want to call, so there's no need
  // to create a new function object. We can even get away with assuming
  // the method takes exactly one argument, since that happens to be true
  // in every case, so we don't have to touch the arguments object. The
  // only additional allocation required is the completion record, which
  // has a stable shape and so hopefully should be cheap to allocate.
  function tryCatch(fn, obj, arg) {
    try {
      return { type: "normal", arg: fn.call(obj, arg) };
    } catch (err) {
      return { type: "throw", arg: err };
    }
  }

  var GenStateSuspendedStart = "suspendedStart";
  var GenStateSuspendedYield = "suspendedYield";
  var GenStateExecuting = "executing";
  var GenStateCompleted = "completed";

  // Returning this object from the innerFn has the same effect as
  // breaking out of the dispatch switch statement.
  var ContinueSentinel = {};

  // Dummy constructor functions that we use as the .constructor and
  // .constructor.prototype properties for functions that return Generator
  // objects. For full spec compliance, you may wish to configure your
  // minifier not to mangle the names of these two functions.
  function Generator() {}
  function GeneratorFunction() {}
  function GeneratorFunctionPrototype() {}

  // This is a polyfill for %IteratorPrototype% for environments that
  // don't natively support it.
  var IteratorPrototype = {};
  IteratorPrototype[iteratorSymbol] = function () {
    return this;
  };

  var getProto = Object.getPrototypeOf;
  var NativeIteratorPrototype = getProto && getProto(getProto(values([])));
  if (NativeIteratorPrototype &&
      NativeIteratorPrototype !== Op &&
      hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {
    // This environment has a native %IteratorPrototype%; use it instead
    // of the polyfill.
    IteratorPrototype = NativeIteratorPrototype;
  }

  var Gp = GeneratorFunctionPrototype.prototype =
    Generator.prototype = Object.create(IteratorPrototype);
  GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype;
  GeneratorFunctionPrototype.constructor = GeneratorFunction;
  GeneratorFunction.displayName = define(
    GeneratorFunctionPrototype,
    toStringTagSymbol,
    "GeneratorFunction"
  );

  // Helper for defining the .next, .throw, and .return methods of the
  // Iterator interface in terms of a single ._invoke method.
  function defineIteratorMethods(prototype) {
    ["next", "throw", "return"].forEach(function(method) {
      define(prototype, method, function(arg) {
        return this._invoke(method, arg);
      });
    });
  }

  exports.isGeneratorFunction = function(genFun) {
    var ctor = typeof genFun === "function" && genFun.constructor;
    return ctor
      ? ctor === GeneratorFunction ||
        // For the native GeneratorFunction constructor, the best we can
        // do is to check its .name property.
        (ctor.displayName || ctor.name) === "GeneratorFunction"
      : false;
  };

  exports.mark = function(genFun) {
    if (Object.setPrototypeOf) {
      Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);
    } else {
      genFun.__proto__ = GeneratorFunctionPrototype;
      define(genFun, toStringTagSymbol, "GeneratorFunction");
    }
    genFun.prototype = Object.create(Gp);
    return genFun;
  };

  // Within the body of any async function, `await x` is transformed to
  // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test
  // `hasOwn.call(value, "__await")` to determine if the yielded value is
  // meant to be awaited.
  exports.awrap = function(arg) {
    return { __await: arg };
  };

  function AsyncIterator(generator, PromiseImpl) {
    function invoke(method, arg, resolve, reject) {
      var record = tryCatch(generator[method], generator, arg);
      if (record.type === "throw") {
        reject(record.arg);
      } else {
        var result = record.arg;
        var value = result.value;
        if (value &&
            typeof value === "object" &&
            hasOwn.call(value, "__await")) {
          return PromiseImpl.resolve(value.__await).then(function(value) {
            invoke("next", value, resolve, reject);
          }, function(err) {
            invoke("throw", err, resolve, reject);
          });
        }

        return PromiseImpl.resolve(value).then(function(unwrapped) {
          // When a yielded Promise is resolved, its final value becomes
          // the .value of the Promise<{value,done}> result for the
          // current iteration.
          result.value = unwrapped;
          resolve(result);
        }, function(error) {
          // If a rejected Promise was yielded, throw the rejection back
          // into the async generator function so it can be handled there.
          return invoke("throw", error, resolve, reject);
        });
      }
    }

    var previousPromise;

    function enqueue(method, arg) {
      function callInvokeWithMethodAndArg() {
        return new PromiseImpl(function(resolve, reject) {
          invoke(method, arg, resolve, reject);
        });
      }

      return previousPromise =
        // If enqueue has been called before, then we want to wait until
        // all previous Promises have been resolved before calling invoke,
        // so that results are always delivered in the correct order. If
        // enqueue has not been called before, then it is important to
        // call invoke immediately, without waiting on a callback to fire,
        // so that the async generator function has the opportunity to do
        // any necessary setup in a predictable way. This predictability
        // is why the Promise constructor synchronously invokes its
        // executor callback, and why async functions synchronously
        // execute code before the first await. Since we implement simple
        // async functions in terms of async generators, it is especially
        // important to get this right, even though it requires care.
        previousPromise ? previousPromise.then(
          callInvokeWithMethodAndArg,
          // Avoid propagating failures to Promises returned by later
          // invocations of the iterator.
          callInvokeWithMethodAndArg
        ) : callInvokeWithMethodAndArg();
    }

    // Define the unified helper method that is used to implement .next,
    // .throw, and .return (see defineIteratorMethods).
    this._invoke = enqueue;
  }

  defineIteratorMethods(AsyncIterator.prototype);
  AsyncIterator.prototype[asyncIteratorSymbol] = function () {
    return this;
  };
  exports.AsyncIterator = AsyncIterator;

  // Note that simple async functions are implemented on top of
  // AsyncIterator objects; they just return a Promise for the value of
  // the final result produced by the iterator.
  exports.async = function(innerFn, outerFn, self, tryLocsList, PromiseImpl) {
    if (PromiseImpl === void 0) PromiseImpl = Promise;

    var iter = new AsyncIterator(
      wrap(innerFn, outerFn, self, tryLocsList),
      PromiseImpl
    );

    return exports.isGeneratorFunction(outerFn)
      ? iter // If outerFn is a generator, return the full iterator.
      : iter.next().then(function(result) {
          return result.done ? result.value : iter.next();
        });
  };

  function makeInvokeMethod(innerFn, self, context) {
    var state = GenStateSuspendedStart;

    return function invoke(method, arg) {
      if (state === GenStateExecuting) {
        throw new Error("Generator is already running");
      }

      if (state === GenStateCompleted) {
        if (method === "throw") {
          throw arg;
        }

        // Be forgiving, per 25.3.3.3.3 of the spec:
        // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume
        return doneResult();
      }

      context.method = method;
      context.arg = arg;

      while (true) {
        var delegate = context.delegate;
        if (delegate) {
          var delegateResult = maybeInvokeDelegate(delegate, context);
          if (delegateResult) {
            if (delegateResult === ContinueSentinel) continue;
            return delegateResult;
          }
        }

        if (context.method === "next") {
          // Setting context._sent for legacy support of Babel's
          // function.sent implementation.
          context.sent = context._sent = context.arg;

        } else if (context.method === "throw") {
          if (state === GenStateSuspendedStart) {
            state = GenStateCompleted;
            throw context.arg;
          }

          context.dispatchException(context.arg);

        } else if (context.method === "return") {
          context.abrupt("return", context.arg);
        }

        state = GenStateExecuting;

        var record = tryCatch(innerFn, self, context);
        if (record.type === "normal") {
          // If an exception is thrown from innerFn, we leave state ===
          // GenStateExecuting and loop back for another invocation.
          state = context.done
            ? GenStateCompleted
            : GenStateSuspendedYield;

          if (record.arg === ContinueSentinel) {
            continue;
          }

          return {
            value: record.arg,
            done: context.done
          };

        } else if (record.type === "throw") {
          state = GenStateCompleted;
          // Dispatch the exception by looping back around to the
          // context.dispatchException(context.arg) call above.
          context.method = "throw";
          context.arg = record.arg;
        }
      }
    };
  }

  // Call delegate.iterator[context.method](context.arg) and handle the
  // result, either by returning a { value, done } result from the
  // delegate iterator, or by modifying context.method and context.arg,
  // setting context.delegate to null, and returning the ContinueSentinel.
  function maybeInvokeDelegate(delegate, context) {
    var method = delegate.iterator[context.method];
    if (method === undefined) {
      // A .throw or .return when the delegate iterator has no .throw
      // method always terminates the yield* loop.
      context.delegate = null;

      if (context.method === "throw") {
        // Note: ["return"] must be used for ES3 parsing compatibility.
        if (delegate.iterator["return"]) {
          // If the delegate iterator has a return method, give it a
          // chance to clean up.
          context.method = "return";
          context.arg = undefined;
          maybeInvokeDelegate(delegate, context);

          if (context.method === "throw") {
            // If maybeInvokeDelegate(context) changed context.method from
            // "return" to "throw", let that override the TypeError below.
            return ContinueSentinel;
          }
        }

        context.method = "throw";
        context.arg = new TypeError(
          "The iterator does not provide a 'throw' method");
      }

      return ContinueSentinel;
    }

    var record = tryCatch(method, delegate.iterator, context.arg);

    if (record.type === "throw") {
      context.method = "throw";
      context.arg = record.arg;
      context.delegate = null;
      return ContinueSentinel;
    }

    var info = record.arg;

    if (! info) {
      context.method = "throw";
      context.arg = new TypeError("iterator result is not an object");
      context.delegate = null;
      return ContinueSentinel;
    }

    if (info.done) {
      // Assign the result of the finished delegate to the temporary
      // variable specified by delegate.resultName (see delegateYield).
      context[delegate.resultName] = info.value;

      // Resume execution at the desired location (see delegateYield).
      context.next = delegate.nextLoc;

      // If context.method was "throw" but the delegate handled the
      // exception, let the outer generator proceed normally. If
      // context.method was "next", forget context.arg since it has been
      // "consumed" by the delegate iterator. If context.method was
      // "return", allow the original .return call to continue in the
      // outer generator.
      if (context.method !== "return") {
        context.method = "next";
        context.arg = undefined;
      }

    } else {
      // Re-yield the result returned by the delegate method.
      return info;
    }

    // The delegate iterator is finished, so forget it and continue with
    // the outer generator.
    context.delegate = null;
    return ContinueSentinel;
  }

  // Define Generator.prototype.{next,throw,return} in terms of the
  // unified ._invoke helper method.
  defineIteratorMethods(Gp);

  define(Gp, toStringTagSymbol, "Generator");

  // A Generator should always return itself as the iterator object when the
  // @@iterator function is called on it. Some browsers' implementations of the
  // iterator prototype chain incorrectly implement this, causing the Generator
  // object to not be returned from this call. This ensures that doesn't happen.
  // See https://github.com/facebook/regenerator/issues/274 for more details.
  Gp[iteratorSymbol] = function() {
    return this;
  };

  Gp.toString = function() {
    return "[object Generator]";
  };

  function pushTryEntry(locs) {
    var entry = { tryLoc: locs[0] };

    if (1 in locs) {
      entry.catchLoc = locs[1];
    }

    if (2 in locs) {
      entry.finallyLoc = locs[2];
      entry.afterLoc = locs[3];
    }

    this.tryEntries.push(entry);
  }

  function resetTryEntry(entry) {
    var record = entry.completion || {};
    record.type = "normal";
    delete record.arg;
    entry.completion = record;
  }

  function Context(tryLocsList) {
    // The root entry object (effectively a try statement without a catch
    // or a finally block) gives us a place to store values thrown from
    // locations where there is no enclosing try statement.
    this.tryEntries = [{ tryLoc: "root" }];
    tryLocsList.forEach(pushTryEntry, this);
    this.reset(true);
  }

  exports.keys = function(object) {
    var keys = [];
    for (var key in object) {
      keys.push(key);
    }
    keys.reverse();

    // Rather than returning an object with a next method, we keep
    // things simple and return the next function itself.
    return function next() {
      while (keys.length) {
        var key = keys.pop();
        if (key in object) {
          next.value = key;
          next.done = false;
          return next;
        }
      }

      // To avoid creating an additional object, we just hang the .value
      // and .done properties off the next function object itself. This
      // also ensures that the minifier will not anonymize the function.
      next.done = true;
      return next;
    };
  };

  function values(iterable) {
    if (iterable) {
      var iteratorMethod = iterable[iteratorSymbol];
      if (iteratorMethod) {
        return iteratorMethod.call(iterable);
      }

      if (typeof iterable.next === "function") {
        return iterable;
      }

      if (!isNaN(iterable.length)) {
        var i = -1, next = function next() {
          while (++i < iterable.length) {
            if (hasOwn.call(iterable, i)) {
              next.value = iterable[i];
              next.done = false;
              return next;
            }
          }

          next.value = undefined;
          next.done = true;

          return next;
        };

        return next.next = next;
      }
    }

    // Return an iterator with no values.
    return { next: doneResult };
  }
  exports.values = values;

  function doneResult() {
    return { value: undefined, done: true };
  }

  Context.prototype = {
    constructor: Context,

    reset: function(skipTempReset) {
      this.prev = 0;
      this.next = 0;
      // Resetting context._sent for legacy support of Babel's
      // function.sent implementation.
      this.sent = this._sent = undefined;
      this.done = false;
      this.delegate = null;

      this.method = "next";
      this.arg = undefined;

      this.tryEntries.forEach(resetTryEntry);

      if (!skipTempReset) {
        for (var name in this) {
          // Not sure about the optimal order of these conditions:
          if (name.charAt(0) === "t" &&
              hasOwn.call(this, name) &&
              !isNaN(+name.slice(1))) {
            this[name] = undefined;
          }
        }
      }
    },

    stop: function() {
      this.done = true;

      var rootEntry = this.tryEntries[0];
      var rootRecord = rootEntry.completion;
      if (rootRecord.type === "throw") {
        throw rootRecord.arg;
      }

      return this.rval;
    },

    dispatchException: function(exception) {
      if (this.done) {
        throw exception;
      }

      var context = this;
      function handle(loc, caught) {
        record.type = "throw";
        record.arg = exception;
        context.next = loc;

        if (caught) {
          // If the dispatched exception was caught by a catch block,
          // then let that catch block handle the exception normally.
          context.method = "next";
          context.arg = undefined;
        }

        return !! caught;
      }

      for (var i = this.tryEntries.length - 1; i >= 0; --i) {
        var entry = this.tryEntries[i];
        var record = entry.completion;

        if (entry.tryLoc === "root") {
          // Exception thrown outside of any try block that could handle
          // it, so set the completion value of the entire function to
          // throw the exception.
          return handle("end");
        }

        if (entry.tryLoc <= this.prev) {
          var hasCatch = hasOwn.call(entry, "catchLoc");
          var hasFinally = hasOwn.call(entry, "finallyLoc");

          if (hasCatch && hasFinally) {
            if (this.prev < entry.catchLoc) {
              return handle(entry.catchLoc, true);
            } else if (this.prev < entry.finallyLoc) {
              return handle(entry.finallyLoc);
            }

          } else if (hasCatch) {
            if (this.prev < entry.catchLoc) {
              return handle(entry.catchLoc, true);
            }

          } else if (hasFinally) {
            if (this.prev < entry.finallyLoc) {
              return handle(entry.finallyLoc);
            }

          } else {
            throw new Error("try statement without catch or finally");
          }
        }
      }
    },

    abrupt: function(type, arg) {
      for (var i = this.tryEntries.length - 1; i >= 0; --i) {
        var entry = this.tryEntries[i];
        if (entry.tryLoc <= this.prev &&
            hasOwn.call(entry, "finallyLoc") &&
            this.prev < entry.finallyLoc) {
          var finallyEntry = entry;
          break;
        }
      }

      if (finallyEntry &&
          (type === "break" ||
           type === "continue") &&
          finallyEntry.tryLoc <= arg &&
          arg <= finallyEntry.finallyLoc) {
        // Ignore the finally entry if control is not jumping to a
        // location outside the try/catch block.
        finallyEntry = null;
      }

      var record = finallyEntry ? finallyEntry.completion : {};
      record.type = type;
      record.arg = arg;

      if (finallyEntry) {
        this.method = "next";
        this.next = finallyEntry.finallyLoc;
        return ContinueSentinel;
      }

      return this.complete(record);
    },

    complete: function(record, afterLoc) {
      if (record.type === "throw") {
        throw record.arg;
      }

      if (record.type === "break" ||
          record.type === "continue") {
        this.next = record.arg;
      } else if (record.type === "return") {
        this.rval = this.arg = record.arg;
        this.method = "return";
        this.next = "end";
      } else if (record.type === "normal" && afterLoc) {
        this.next = afterLoc;
      }

      return ContinueSentinel;
    },

    finish: function(finallyLoc) {
      for (var i = this.tryEntries.length - 1; i >= 0; --i) {
        var entry = this.tryEntries[i];
        if (entry.finallyLoc === finallyLoc) {
          this.complete(entry.completion, entry.afterLoc);
          resetTryEntry(entry);
          return ContinueSentinel;
        }
      }
    },

    "catch": function(tryLoc) {
      for (var i = this.tryEntries.length - 1; i >= 0; --i) {
        var entry = this.tryEntries[i];
        if (entry.tryLoc === tryLoc) {
          var record = entry.completion;
          if (record.type === "throw") {
            var thrown = record.arg;
            resetTryEntry(entry);
          }
          return thrown;
        }
      }

      // The context.catch method must only be called with a location
      // argument that corresponds to a known catch block.
      throw new Error("illegal catch attempt");
    },

    delegateYield: function(iterable, resultName, nextLoc) {
      this.delegate = {
        iterator: values(iterable),
        resultName: resultName,
        nextLoc: nextLoc
      };

      if (this.method === "next") {
        // Deliberately forget the last sent value so that we don't
        // accidentally pass it on to the delegate.
        this.arg = undefined;
      }

      return ContinueSentinel;
    }
  };

  // Regardless of whether this script is executing as a CommonJS module
  // or not, return the runtime object so that we can declare the variable
  // regeneratorRuntime in the outer scope, which allows this module to be
  // injected easily by `bin/regenerator --include-runtime script.js`.
  return exports;

}(
  // If this script is executing as a CommonJS module, use module.exports
  // as the regeneratorRuntime namespace. Otherwise create a new empty
  // object. Either way, the resulting object will be used to initialize
  // the regeneratorRuntime variable at the top of this file.
   true ? module.exports : 0
));

try {
  regeneratorRuntime = runtime;
} catch (accidentalStrictMode) {
  // This module should not be running in strict mode, so the above
  // assignment should always work unless something is misconfigured. Just
  // in case runtime.js accidentally runs in strict mode, we can escape
  // strict mode using a global Function call. This could conceivably fail
  // if a Content Security Policy forbids using Function, but in that case
  // the proper solution is to fix the accidental strict mode problem. If
  // you've misconfigured your bundler to force strict mode and applied a
  // CSP to forbid Function, and you're not willing to fix either of those
  // problems, please detail your unique predicament in a GitHub issue.
  Function("r", "regeneratorRuntime = r")(runtime);
}


/***/ })

/******/ 	});
/************************************************************************/
/******/ 	// The module cache
/******/ 	var __webpack_module_cache__ = {};
/******/ 	
/******/ 	// The require function
/******/ 	function __webpack_require__(moduleId) {
/******/ 		// Check if module is in cache
/******/ 		var cachedModule = __webpack_module_cache__[moduleId];
/******/ 		if (cachedModule !== undefined) {
/******/ 			return cachedModule.exports;
/******/ 		}
/******/ 		// Create a new module (and put it into the cache)
/******/ 		var module = __webpack_module_cache__[moduleId] = {
/******/ 			// no module.id needed
/******/ 			// no module.loaded needed
/******/ 			exports: {}
/******/ 		};
/******/ 	
/******/ 		// Execute the module function
/******/ 		__webpack_modules__[moduleId](module, module.exports, __webpack_require__);
/******/ 	
/******/ 		// Return the exports of the module
/******/ 		return module.exports;
/******/ 	}
/******/ 	
/************************************************************************/
var __webpack_exports__ = {};
// This entry need to be wrapped in an IIFE because it need to be in strict mode.
(() => {
"use strict";
/*!*******************************************!*\
  !*** ../core/app/assets/js/app-loader.js ***!
  \*******************************************/


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _component = _interopRequireDefault(__webpack_require__(/*! ./loader/component */ "../core/app/assets/js/loader/component.js"));

var AppLoader = /*#__PURE__*/function () {
  function AppLoader() {
    (0, _classCallCheck2.default)(this, AppLoader);
    (0, _defineProperty2.default)(this, "selector", 'a.elementor-app-link, .elementor-app-link .ab-item');
    $e.components.register(new _component.default());
    window.addEventListener('DOMContentLoaded', this.onLoad.bind(this));
  }

  (0, _createClass2.default)(AppLoader, [{
    key: "onLoad",
    value: function onLoad() {
      var links = document.querySelectorAll(this.selector);

      if (!links.length) {
        return;
      }

      links.forEach(function (link) {
        link.addEventListener('click', function (event) {
          event.preventDefault();
          $e.run('app/open', {
            url: link.href
          });
        });
        link.addEventListener('mouseenter', function () {
          $e.run('app/load', {
            url: link.href
          });
        });
      });
    }
  }]);
  return AppLoader;
}();

window.elementorAppLoader = new AppLoader();
})();

/******/ })()
;
//# sourceMappingURL=app-loader.js.mapassets/js/lightbox.8c3d45f71a9a1ecd69fc.bundle.js000064400000100172151327220410015155 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(self["webpackChunkelementor"] = self["webpackChunkelementor"] || []).push([["lightbox"],{

/***/ "../assets/dev/js/frontend/utils/lightbox/lightbox.js":
/*!************************************************************!*\
  !*** ../assets/dev/js/frontend/utils/lightbox/lightbox.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");

var _screenfull = _interopRequireDefault(__webpack_require__(/*! ./screenfull */ "../assets/dev/js/frontend/utils/lightbox/screenfull.js"));

module.exports = elementorModules.ViewModule.extend({
  oldAspectRatio: null,
  oldAnimation: null,
  swiper: null,
  player: null,
  getDefaultSettings: function () {
    return {
      classes: {
        aspectRatio: 'elementor-aspect-ratio-%s',
        item: 'elementor-lightbox-item',
        image: 'elementor-lightbox-image',
        videoContainer: 'elementor-video-container',
        videoWrapper: 'elementor-fit-aspect-ratio',
        playButton: 'elementor-custom-embed-play',
        playButtonIcon: 'fa',
        playing: 'elementor-playing',
        hidden: 'elementor-hidden',
        invisible: 'elementor-invisible',
        preventClose: 'elementor-lightbox-prevent-close',
        slideshow: {
          container: 'swiper-container',
          slidesWrapper: 'swiper-wrapper',
          prevButton: 'elementor-swiper-button elementor-swiper-button-prev',
          nextButton: 'elementor-swiper-button elementor-swiper-button-next',
          prevButtonIcon: 'eicon-chevron-left',
          nextButtonIcon: 'eicon-chevron-right',
          slide: 'swiper-slide',
          header: 'elementor-slideshow__header',
          footer: 'elementor-slideshow__footer',
          title: 'elementor-slideshow__title',
          description: 'elementor-slideshow__description',
          counter: 'elementor-slideshow__counter',
          iconExpand: 'eicon-frame-expand',
          iconShrink: 'eicon-frame-minimize',
          iconZoomIn: 'eicon-zoom-in-bold',
          iconZoomOut: 'eicon-zoom-out-bold',
          iconShare: 'eicon-share-arrow',
          shareMenu: 'elementor-slideshow__share-menu',
          shareLinks: 'elementor-slideshow__share-links',
          hideUiVisibility: 'elementor-slideshow--ui-hidden',
          shareMode: 'elementor-slideshow--share-mode',
          fullscreenMode: 'elementor-slideshow--fullscreen-mode',
          zoomMode: 'elementor-slideshow--zoom-mode'
        }
      },
      selectors: {
        image: '.elementor-lightbox-image',
        links: 'a, [data-elementor-lightbox]',
        slideshow: {
          activeSlide: '.swiper-slide-active',
          prevSlide: '.swiper-slide-prev',
          nextSlide: '.swiper-slide-next'
        }
      },
      modalOptions: {
        id: 'elementor-lightbox',
        entranceAnimation: 'zoomIn',
        videoAspectRatio: 169,
        position: {
          enable: false
        }
      }
    };
  },
  getModal: function () {
    if (!module.exports.modal) {
      this.initModal();
    }

    return module.exports.modal;
  },
  initModal: function () {
    const modal = module.exports.modal = elementorFrontend.getDialogsManager().createWidget('lightbox', {
      className: 'elementor-lightbox',
      closeButton: true,
      closeButtonOptions: {
        iconClass: 'eicon-close',
        attributes: {
          tabindex: 0,
          role: 'button',
          'aria-label': elementorFrontend.config.i18n.close + ' (Esc)'
        }
      },
      selectors: {
        preventClose: '.' + this.getSettings('classes.preventClose')
      },
      hide: {
        onClick: true
      }
    });
    modal.on('hide', function () {
      modal.setMessage('');
    });
  },
  showModal: function (options) {
    if (options.url && !options.url.startsWith('http')) {
      return;
    }

    this.elements.$closeButton = this.getModal().getElements('closeButton');
    this.$buttons = this.elements.$closeButton;
    this.focusedButton = null;
    const self = this,
          defaultOptions = self.getDefaultSettings().modalOptions;
    self.id = options.id;
    self.setSettings('modalOptions', jQuery.extend(defaultOptions, options.modalOptions));
    const modal = self.getModal();
    modal.setID(self.getSettings('modalOptions.id'));

    modal.onShow = function () {
      DialogsManager.getWidgetType('lightbox').prototype.onShow.apply(modal, arguments);
      self.setEntranceAnimation();
    };

    modal.onHide = function () {
      DialogsManager.getWidgetType('lightbox').prototype.onHide.apply(modal, arguments);
      modal.getElements('message').removeClass('animated');

      if (_screenfull.default.isFullscreen) {
        self.deactivateFullscreen();
      }

      self.unbindHotKeys();
    };

    switch (options.type) {
      case 'video':
        self.setVideoContent(options);
        break;

      case 'image':
        const slides = [{
          image: options.url,
          index: 0,
          title: options.title,
          description: options.description
        }];
        options.slideshow = {
          slides,
          swiper: {
            loop: false,
            pagination: false
          }
        };

      case 'slideshow':
        self.setSlideshowContent(options.slideshow);
        break;

      default:
        self.setHTMLContent(options.html);
    }

    modal.show();
  },
  createLightbox: function (element) {
    let lightboxData = {};

    if (element.dataset.elementorLightbox) {
      lightboxData = JSON.parse(element.dataset.elementorLightbox);
    }

    if (lightboxData.type && 'slideshow' !== lightboxData.type) {
      this.showModal(lightboxData);
      return;
    }

    if (!element.dataset.elementorLightboxSlideshow) {
      const slideshowID = 'single-img';
      this.showModal({
        type: 'image',
        id: slideshowID,
        url: element.href,
        title: element.dataset.elementorLightboxTitle,
        description: element.dataset.elementorLightboxDescription,
        modalOptions: {
          id: 'elementor-lightbox-slideshow-' + slideshowID
        }
      });
      return;
    }

    const initialSlideURL = element.dataset.elementorLightboxVideo || element.href;
    this.openSlideshow(element.dataset.elementorLightboxSlideshow, initialSlideURL);
  },
  setHTMLContent: function (html) {
    if (window.elementorCommon) {
      elementorCommon.helpers.hardDeprecated('elementorFrontend.utils.lightbox.setHTMLContent', '3.1.4');
    }

    this.getModal().setMessage(html);
  },
  setVideoContent: function (options) {
    const $ = jQuery,
          classes = this.getSettings('classes'),
          $videoContainer = $('<div>', {
      class: `${classes.videoContainer} ${classes.preventClose}`
    }),
          $videoWrapper = $('<div>', {
      class: classes.videoWrapper
    }),
          modal = this.getModal();
    let $videoElement;

    if ('hosted' === options.videoType) {
      const videoParams = $.extend({
        src: options.url,
        autoplay: ''
      }, options.videoParams);
      $videoElement = $('<video>', videoParams);
    } else {
      let apiProvider = elementorFrontend.utils.baseVideoLoader;

      if (-1 !== options.url.indexOf('vimeo.com')) {
        apiProvider = elementorFrontend.utils.vimeo;
      } else if (options.url.match(/^(?:https?:\/\/)?(?:www\.)?(?:m\.)?(?:youtu\.be\/|youtube\.com)/)) {
        apiProvider = elementorFrontend.utils.youtube;
      }

      $videoElement = $('<iframe>', {
        src: apiProvider.getAutoplayURL(options.url),
        allowfullscreen: 1
      });
    }

    $videoContainer.append($videoWrapper);
    $videoWrapper.append($videoElement);
    modal.setMessage($videoContainer);
    this.setVideoAspectRatio();
    const onHideMethod = modal.onHide;

    modal.onHide = function () {
      onHideMethod();
      this.$buttons = jQuery();
      this.focusedButton = null;
      modal.getElements('message').removeClass('elementor-fit-aspect-ratio');
    };
  },
  getShareLinks: function () {
    const {
      i18n
    } = elementorFrontend.config,
          socialNetworks = {
      facebook: i18n.shareOnFacebook,
      twitter: i18n.shareOnTwitter,
      pinterest: i18n.pinIt
    },
          $ = jQuery,
          classes = this.getSettings('classes'),
          selectors = this.getSettings('selectors'),
          $linkList = $('<div>', {
      class: classes.slideshow.shareLinks
    }),
          $activeSlide = this.getSlide('active'),
          $image = $activeSlide.find(selectors.image),
          videoUrl = $activeSlide.data('elementor-slideshow-video');
    let itemUrl;

    if (videoUrl) {
      itemUrl = videoUrl;
    } else {
      itemUrl = $image.attr('src');
    }

    $.each(socialNetworks, (key, networkLabel) => {
      const $link = $('<a>', {
        href: this.createShareLink(key, itemUrl),
        target: '_blank'
      }).text(networkLabel);
      $link.prepend($('<i>', {
        class: 'eicon-' + key
      }));
      $linkList.append($link);
    });

    if (!videoUrl) {
      $linkList.append($('<a>', {
        href: itemUrl,
        download: ''
      }).text(i18n.downloadImage).prepend($('<i>', {
        class: 'eicon-download-bold',
        'aria-label': i18n.download
      })));
    }

    return $linkList;
  },
  createShareLink: function (networkName, itemUrl) {
    const options = {};

    if ('pinterest' === networkName) {
      options.image = encodeURIComponent(itemUrl);
    } else {
      const hash = elementorFrontend.utils.urlActions.createActionHash('lightbox', {
        id: this.id,
        url: itemUrl
      });
      options.url = encodeURIComponent(location.href.replace(/#.*/, '')) + hash;
    }

    return ShareLink.getNetworkLink(networkName, options);
  },
  getSlideshowHeader: function () {
    const {
      i18n
    } = elementorFrontend.config,
          $ = jQuery,
          showCounter = 'yes' === elementorFrontend.getKitSettings('lightbox_enable_counter'),
          showFullscreen = 'yes' === elementorFrontend.getKitSettings('lightbox_enable_fullscreen'),
          showZoom = 'yes' === elementorFrontend.getKitSettings('lightbox_enable_zoom'),
          showShare = 'yes' === elementorFrontend.getKitSettings('lightbox_enable_share'),
          classes = this.getSettings('classes'),
          slideshowClasses = classes.slideshow,
          elements = this.elements;

    if (!(showCounter || showFullscreen || showZoom || showShare)) {
      return;
    }

    elements.$header = $('<header>', {
      class: slideshowClasses.header + ' ' + classes.preventClose
    });

    if (showShare) {
      elements.$iconShare = $('<i>', {
        class: slideshowClasses.iconShare,
        role: 'button',
        'aria-label': i18n.share,
        'aria-expanded': false
      }).append($('<span>'));
      const $shareLinks = $('<div>');
      $shareLinks.on('click', e => {
        e.stopPropagation();
      });
      elements.$shareMenu = $('<div>', {
        class: slideshowClasses.shareMenu
      }).append($shareLinks);
      elements.$iconShare.add(elements.$shareMenu).on('click', this.toggleShareMenu);
      elements.$header.append(elements.$iconShare, elements.$shareMenu);
      this.$buttons = this.$buttons.add(elements.$iconShare);
    }

    if (showZoom) {
      elements.$iconZoom = $('<i>', {
        class: slideshowClasses.iconZoomIn,
        role: 'switch',
        'aria-checked': false,
        'aria-label': i18n.zoom
      });
      elements.$iconZoom.on('click', this.toggleZoomMode);
      elements.$header.append(elements.$iconZoom);
      this.$buttons = this.$buttons.add(elements.$iconZoom);
    }

    if (showFullscreen) {
      elements.$iconExpand = $('<i>', {
        class: slideshowClasses.iconExpand,
        role: 'switch',
        'aria-checked': false,
        'aria-label': i18n.fullscreen
      }).append($('<span>'), $('<span>'));
      elements.$iconExpand.on('click', this.toggleFullscreen);
      elements.$header.append(elements.$iconExpand);
      this.$buttons = this.$buttons.add(elements.$iconExpand);
    }

    if (showCounter) {
      elements.$counter = $('<span>', {
        class: slideshowClasses.counter
      });
      elements.$header.append(elements.$counter);
    }

    return elements.$header;
  },
  toggleFullscreen: function () {
    if (_screenfull.default.isFullscreen) {
      this.deactivateFullscreen();
    } else if (_screenfull.default.isEnabled) {
      this.activateFullscreen();
    }
  },
  toggleZoomMode: function () {
    if (1 !== this.swiper.zoom.scale) {
      this.deactivateZoom();
    } else {
      this.activateZoom();
    }
  },
  toggleShareMenu: function () {
    if (this.shareMode) {
      this.deactivateShareMode();
    } else {
      this.elements.$shareMenu.html(this.getShareLinks());
      this.activateShareMode();
    }
  },
  activateShareMode: function () {
    const classes = this.getSettings('classes');
    this.elements.$container.addClass(classes.slideshow.shareMode);
    this.elements.$iconShare.attr('aria-expanded', true); // Prevent swiper interactions while in share mode

    this.swiper.detachEvents(); // Temporarily replace tabbable buttons with share-menu items

    this.$originalButtons = this.$buttons;
    this.$buttons = this.elements.$iconShare.add(this.elements.$shareMenu.find('a'));
    this.shareMode = true;
  },
  deactivateShareMode: function () {
    const classes = this.getSettings('classes');
    this.elements.$container.removeClass(classes.slideshow.shareMode);
    this.elements.$iconShare.attr('aria-expanded', false);
    this.swiper.attachEvents();
    this.$buttons = this.$originalButtons;
    this.shareMode = false;
  },
  activateFullscreen: function () {
    const classes = this.getSettings('classes');

    _screenfull.default.request(this.elements.$container.parents('.dialog-widget')[0]);

    this.elements.$iconExpand.removeClass(classes.slideshow.iconExpand).addClass(classes.slideshow.iconShrink).attr('aria-checked', 'true');
    this.elements.$container.addClass(classes.slideshow.fullscreenMode);
  },
  deactivateFullscreen: function () {
    const classes = this.getSettings('classes');

    _screenfull.default.exit();

    this.elements.$iconExpand.removeClass(classes.slideshow.iconShrink).addClass(classes.slideshow.iconExpand).attr('aria-checked', 'false');
    this.elements.$container.removeClass(classes.slideshow.fullscreenMode);
  },
  activateZoom: function () {
    const swiper = this.swiper,
          elements = this.elements,
          classes = this.getSettings('classes');
    swiper.zoom.in();
    swiper.allowSlideNext = false;
    swiper.allowSlidePrev = false;
    swiper.allowTouchMove = false;
    elements.$container.addClass(classes.slideshow.zoomMode);
    elements.$iconZoom.removeClass(classes.slideshow.iconZoomIn).addClass(classes.slideshow.iconZoomOut);
  },
  deactivateZoom: function () {
    const swiper = this.swiper,
          elements = this.elements,
          classes = this.getSettings('classes');
    swiper.zoom.out();
    swiper.allowSlideNext = true;
    swiper.allowSlidePrev = true;
    swiper.allowTouchMove = true;
    elements.$container.removeClass(classes.slideshow.zoomMode);
    elements.$iconZoom.removeClass(classes.slideshow.iconZoomOut).addClass(classes.slideshow.iconZoomIn);
  },
  getSlideshowFooter: function () {
    const $ = jQuery,
          classes = this.getSettings('classes'),
          $footer = $('<footer>', {
      class: classes.slideshow.footer + ' ' + classes.preventClose
    }),
          $title = $('<div>', {
      class: classes.slideshow.title
    }),
          $description = $('<div>', {
      class: classes.slideshow.description
    });
    $footer.append($title, $description);
    return $footer;
  },
  setSlideshowContent: function (options) {
    const {
      i18n
    } = elementorFrontend.config,
          $ = jQuery,
          isSingleSlide = 1 === options.slides.length,
          hasTitle = '' !== elementorFrontend.getKitSettings('lightbox_title_src'),
          hasDescription = '' !== elementorFrontend.getKitSettings('lightbox_description_src'),
          showFooter = hasTitle || hasDescription,
          classes = this.getSettings('classes'),
          slideshowClasses = classes.slideshow,
          $container = $('<div>', {
      class: slideshowClasses.container
    }),
          $slidesWrapper = $('<div>', {
      class: slideshowClasses.slidesWrapper
    });
    let $prevButton, $nextButton;
    options.slides.forEach(slide => {
      let slideClass = slideshowClasses.slide + ' ' + classes.item;

      if (slide.video) {
        slideClass += ' ' + classes.video;
      }

      const $slide = $('<div>', {
        class: slideClass
      });

      if (slide.video) {
        $slide.attr('data-elementor-slideshow-video', slide.video);
        const $playIcon = $('<div>', {
          class: classes.playButton
        }).html($('<i>', {
          class: classes.playButtonIcon,
          'aria-label': i18n.playVideo
        }));
        $slide.append($playIcon);
      } else {
        const $zoomContainer = $('<div>', {
          class: 'swiper-zoom-container'
        }),
              $slidePlaceholder = $('<div class="swiper-lazy-preloader"></div>'),
              imageAttributes = {
          'data-src': slide.image,
          class: classes.image + ' ' + classes.preventClose + ' swiper-lazy'
        };

        if (slide.title) {
          imageAttributes['data-title'] = slide.title;
          imageAttributes.alt = slide.title;
        }

        if (slide.description) {
          imageAttributes['data-description'] = slide.description;
          imageAttributes.alt += ' - ' + slide.description;
        }

        const $slideImage = $('<img>', imageAttributes);
        $zoomContainer.append([$slideImage, $slidePlaceholder]);
        $slide.append($zoomContainer);
      }

      $slidesWrapper.append($slide);
    });
    this.elements.$container = $container;
    this.elements.$header = this.getSlideshowHeader();
    $container.prepend(this.elements.$header).append($slidesWrapper);

    if (!isSingleSlide) {
      $prevButton = $('<div>', {
        class: slideshowClasses.prevButton + ' ' + classes.preventClose,
        'aria-label': i18n.previous
      }).html($('<i>', {
        class: slideshowClasses.prevButtonIcon
      }));
      $nextButton = $('<div>', {
        class: slideshowClasses.nextButton + ' ' + classes.preventClose,
        'aria-label': i18n.next
      }).html($('<i>', {
        class: slideshowClasses.nextButtonIcon
      }));
      $container.append($nextButton, $prevButton);
      this.$buttons = this.$buttons.add($nextButton).add($prevButton);
    }

    if (showFooter) {
      this.elements.$footer = this.getSlideshowFooter();
      $container.append(this.elements.$footer);
    }

    this.setSettings('hideUiTimeout', '');
    $container.on('click mousemove keypress', this.showLightboxUi);
    const modal = this.getModal();
    modal.setMessage($container);
    const onShowMethod = modal.onShow;

    modal.onShow = async () => {
      onShowMethod();
      const swiperOptions = {
        pagination: {
          el: '.' + slideshowClasses.counter,
          type: 'fraction'
        },
        on: {
          slideChangeTransitionEnd: this.onSlideChange
        },
        lazy: {
          loadPrevNext: true
        },
        zoom: true,
        spaceBetween: 100,
        grabCursor: true,
        runCallbacksOnInit: false,
        loop: true,
        keyboard: true,
        handleElementorBreakpoints: true
      };

      if (!isSingleSlide) {
        swiperOptions.navigation = {
          prevEl: $prevButton,
          nextEl: $nextButton
        };
      }

      if (options.swiper) {
        $.extend(swiperOptions, options.swiper);
      }

      const Swiper = elementorFrontend.utils.swiper;
      this.swiper = await new Swiper($container, swiperOptions); // Expose the swiper instance in the frontend

      $container.data('swiper', this.swiper);
      this.setVideoAspectRatio();
      this.playSlideVideo();

      if (showFooter) {
        this.updateFooterText();
      }

      this.bindHotKeys();
      this.makeButtonsAccessible();
    };
  },
  makeButtonsAccessible: function () {
    this.$buttons.attr('tabindex', 0).on('keypress', event => {
      const ENTER_KEY = 13,
            SPACE_KEY = 32;

      if (ENTER_KEY === event.which || SPACE_KEY === event.which) {
        jQuery(event.currentTarget).trigger('click');
      }
    });
  },
  showLightboxUi: function () {
    const slideshowClasses = this.getSettings('classes').slideshow;
    this.elements.$container.removeClass(slideshowClasses.hideUiVisibility);
    clearTimeout(this.getSettings('hideUiTimeout'));
    this.setSettings('hideUiTimeout', setTimeout(() => {
      if (!this.shareMode) {
        this.elements.$container.addClass(slideshowClasses.hideUiVisibility);
      }
    }, 3500));
  },
  bindHotKeys: function () {
    this.getModal().getElements('window').on('keydown', this.activeKeyDown);
  },
  unbindHotKeys: function () {
    this.getModal().getElements('window').off('keydown', this.activeKeyDown);
  },
  activeKeyDown: function (event) {
    this.showLightboxUi();
    const TAB_KEY = 9;

    if (event.which === TAB_KEY) {
      const $buttons = this.$buttons;
      let focusedButton,
          isFirst = false,
          isLast = false;
      $buttons.each(index => {
        const item = $buttons[index];

        if (jQuery(item).is(':focus')) {
          focusedButton = item;
          isFirst = 0 === index;
          isLast = $buttons.length - 1 === index;
          return false;
        }
      });

      if (event.shiftKey) {
        if (isFirst) {
          event.preventDefault();
          $buttons.last().trigger('focus');
        }
      } else if (isLast || !focusedButton) {
        event.preventDefault();
        $buttons.first().trigger('focus');
      }
    }
  },
  setVideoAspectRatio: function (aspectRatio) {
    aspectRatio = aspectRatio || this.getSettings('modalOptions.videoAspectRatio');
    const $widgetContent = this.getModal().getElements('widgetContent'),
          oldAspectRatio = this.oldAspectRatio,
          aspectRatioClass = this.getSettings('classes.aspectRatio');
    this.oldAspectRatio = aspectRatio;

    if (oldAspectRatio) {
      $widgetContent.removeClass(aspectRatioClass.replace('%s', oldAspectRatio));
    }

    if (aspectRatio) {
      $widgetContent.addClass(aspectRatioClass.replace('%s', aspectRatio));
    }
  },
  getSlide: function (slideState) {
    return jQuery(this.swiper.slides).filter(this.getSettings('selectors.slideshow.' + slideState + 'Slide'));
  },
  updateFooterText: function () {
    if (!this.elements.$footer) {
      return;
    }

    const classes = this.getSettings('classes'),
          $activeSlide = this.getSlide('active'),
          $image = $activeSlide.find('.elementor-lightbox-image'),
          titleText = $image.data('title'),
          descriptionText = $image.data('description'),
          $title = this.elements.$footer.find('.' + classes.slideshow.title),
          $description = this.elements.$footer.find('.' + classes.slideshow.description);
    $title.text(titleText || '');
    $description.text(descriptionText || '');
  },
  playSlideVideo: function () {
    const $activeSlide = this.getSlide('active'),
          videoURL = $activeSlide.data('elementor-slideshow-video');

    if (!videoURL) {
      return;
    }

    const classes = this.getSettings('classes'),
          $videoContainer = jQuery('<div>', {
      class: classes.videoContainer + ' ' + classes.invisible
    }),
          $videoWrapper = jQuery('<div>', {
      class: classes.videoWrapper
    }),
          $playIcon = $activeSlide.children('.' + classes.playButton);
    let videoType, apiProvider;
    $videoContainer.append($videoWrapper);
    $activeSlide.append($videoContainer);

    if (-1 !== videoURL.indexOf('vimeo.com')) {
      videoType = 'vimeo';
      apiProvider = elementorFrontend.utils.vimeo;
    } else if (videoURL.match(/^(?:https?:\/\/)?(?:www\.)?(?:m\.)?(?:youtu\.be\/|youtube\.com)/)) {
      videoType = 'youtube';
      apiProvider = elementorFrontend.utils.youtube;
    }

    const videoID = apiProvider.getVideoIDFromURL(videoURL);
    apiProvider.onApiReady(apiObject => {
      if ('youtube' === videoType) {
        this.prepareYTVideo(apiObject, videoID, $videoContainer, $videoWrapper, $playIcon);
      } else if ('vimeo' === videoType) {
        this.prepareVimeoVideo(apiObject, videoURL, $videoContainer, $videoWrapper, $playIcon);
      }
    });
    $playIcon.addClass(classes.playing).removeClass(classes.hidden);
  },
  prepareYTVideo: function (YT, videoID, $videoContainer, $videoWrapper, $playIcon) {
    const classes = this.getSettings('classes'),
          $videoPlaceholderElement = jQuery('<div>');
    let startStateCode = YT.PlayerState.PLAYING;
    $videoWrapper.append($videoPlaceholderElement); // Since version 67, Chrome doesn't fire the `PLAYING` state at start time

    if (window.chrome) {
      startStateCode = YT.PlayerState.UNSTARTED;
    }

    $videoContainer.addClass('elementor-loading' + ' ' + classes.invisible);
    this.player = new YT.Player($videoPlaceholderElement[0], {
      videoId: videoID,
      events: {
        onReady: () => {
          $playIcon.addClass(classes.hidden);
          $videoContainer.removeClass(classes.invisible);
          this.player.playVideo();
        },
        onStateChange: event => {
          if (event.data === startStateCode) {
            $videoContainer.removeClass('elementor-loading' + ' ' + classes.invisible);
          }
        }
      },
      playerVars: {
        controls: 0,
        rel: 0
      }
    });
  },
  prepareVimeoVideo: function (Vimeo, videoURL, $videoContainer, $videoWrapper, $playIcon) {
    const classes = this.getSettings('classes'),
          vimeoOptions = {
      url: videoURL,
      autoplay: true,
      transparent: false,
      playsinline: false
    };
    this.player = new Vimeo.Player($videoWrapper, vimeoOptions);
    this.player.ready().then(() => {
      $playIcon.addClass(classes.hidden);
      $videoContainer.removeClass(classes.invisible);
    });
  },
  setEntranceAnimation: function (animation) {
    animation = animation || elementorFrontend.getCurrentDeviceSetting(this.getSettings('modalOptions'), 'entranceAnimation');
    const $widgetMessage = this.getModal().getElements('message');

    if (this.oldAnimation) {
      $widgetMessage.removeClass(this.oldAnimation);
    }

    this.oldAnimation = animation;

    if (animation) {
      $widgetMessage.addClass('animated ' + animation);
    }
  },
  openSlideshow: function (slideshowID, initialSlideURL) {
    const $allSlideshowLinks = jQuery(this.getSettings('selectors.links')).filter((index, element) => {
      const $element = jQuery(element);
      return slideshowID === element.dataset.elementorLightboxSlideshow && !$element.parent('.swiper-slide-duplicate').length && !$element.parents('.slick-cloned').length;
    });
    const slides = [];
    let initialSlideIndex = 0;
    $allSlideshowLinks.each(function () {
      const slideVideo = this.dataset.elementorLightboxVideo;
      let slideIndex = this.dataset.elementorLightboxIndex;

      if (undefined === slideIndex) {
        slideIndex = $allSlideshowLinks.index(this);
      }

      if (initialSlideURL === this.href || slideVideo && initialSlideURL === slideVideo) {
        initialSlideIndex = slideIndex;
      }

      const slideData = {
        image: this.href,
        index: slideIndex,
        title: this.dataset.elementorLightboxTitle,
        description: this.dataset.elementorLightboxDescription
      };

      if (slideVideo) {
        slideData.video = slideVideo;
      }

      slides.push(slideData);
    });
    slides.sort((a, b) => a.index - b.index);
    this.showModal({
      type: 'slideshow',
      id: slideshowID,
      modalOptions: {
        id: 'elementor-lightbox-slideshow-' + slideshowID
      },
      slideshow: {
        slides: slides,
        swiper: {
          initialSlide: +initialSlideIndex
        }
      }
    });
  },
  onSlideChange: function () {
    this.getSlide('prev').add(this.getSlide('next')).add(this.getSlide('active')).find('.' + this.getSettings('classes.videoWrapper')).remove();
    this.playSlideVideo();
    this.updateFooterText();
  }
});

/***/ }),

/***/ "../assets/dev/js/frontend/utils/lightbox/screenfull.js":
/*!**************************************************************!*\
  !*** ../assets/dev/js/frontend/utils/lightbox/screenfull.js ***!
  \**************************************************************/
/***/ ((module) => {

"use strict";


(function () {
  'use strict';

  var document = typeof window !== 'undefined' && typeof window.document !== 'undefined' ? window.document : {};
  var isCommonjs =  true && module.exports;

  var fn = function () {
    var val;
    var fnMap = [['requestFullscreen', 'exitFullscreen', 'fullscreenElement', 'fullscreenEnabled', 'fullscreenchange', 'fullscreenerror'], // New WebKit
    ['webkitRequestFullscreen', 'webkitExitFullscreen', 'webkitFullscreenElement', 'webkitFullscreenEnabled', 'webkitfullscreenchange', 'webkitfullscreenerror'], // Old WebKit
    ['webkitRequestFullScreen', 'webkitCancelFullScreen', 'webkitCurrentFullScreenElement', 'webkitCancelFullScreen', 'webkitfullscreenchange', 'webkitfullscreenerror'], ['mozRequestFullScreen', 'mozCancelFullScreen', 'mozFullScreenElement', 'mozFullScreenEnabled', 'mozfullscreenchange', 'mozfullscreenerror'], ['msRequestFullscreen', 'msExitFullscreen', 'msFullscreenElement', 'msFullscreenEnabled', 'MSFullscreenChange', 'MSFullscreenError']];
    var i = 0;
    var l = fnMap.length;
    var ret = {};

    for (; i < l; i++) {
      val = fnMap[i];

      if (val && val[1] in document) {
        var valLength = val.length;

        for (i = 0; i < valLength; i++) {
          ret[fnMap[0][i]] = val[i];
        }

        return ret;
      }
    }

    return false;
  }();

  var eventNameMap = {
    change: fn.fullscreenchange,
    error: fn.fullscreenerror
  };
  var screenfull = {
    request: function (element) {
      return new Promise(function (resolve, reject) {
        var onFullScreenEntered = function () {
          this.off('change', onFullScreenEntered);
          resolve();
        }.bind(this);

        this.on('change', onFullScreenEntered);
        element = element || document.documentElement;
        Promise.resolve(element[fn.requestFullscreen]()).catch(reject);
      }.bind(this));
    },
    exit: function () {
      return new Promise(function (resolve, reject) {
        if (!this.isFullscreen) {
          resolve();
          return;
        }

        var onFullScreenExit = function () {
          this.off('change', onFullScreenExit);
          resolve();
        }.bind(this);

        this.on('change', onFullScreenExit);
        Promise.resolve(document[fn.exitFullscreen]()).catch(reject);
      }.bind(this));
    },
    toggle: function (element) {
      return this.isFullscreen ? this.exit() : this.request(element);
    },
    onchange: function (callback) {
      this.on('change', callback);
    },
    onerror: function (callback) {
      this.on('error', callback);
    },
    on: function (event, callback) {
      var eventName = eventNameMap[event];

      if (eventName) {
        document.addEventListener(eventName, callback, false);
      }
    },
    off: function (event, callback) {
      var eventName = eventNameMap[event];

      if (eventName) {
        document.removeEventListener(eventName, callback, false);
      }
    },
    raw: fn
  };

  if (!fn) {
    if (isCommonjs) {
      module.exports = {
        isEnabled: false
      };
    } else {
      window.screenfull = {
        isEnabled: false
      };
    }

    return;
  }

  Object.defineProperties(screenfull, {
    isFullscreen: {
      get: function () {
        return Boolean(document[fn.fullscreenElement]);
      }
    },
    element: {
      enumerable: true,
      get: function () {
        return document[fn.fullscreenElement];
      }
    },
    isEnabled: {
      enumerable: true,
      get: function () {
        // Coerce to boolean in case of old WebKit
        return Boolean(document[fn.fullscreenEnabled]);
      }
    }
  });

  if (isCommonjs) {
    module.exports = screenfull;
  } else {
    window.screenfull = screenfull;
  }
})();

/***/ })

}]);
//# sourceMappingURL=lightbox.8c3d45f71a9a1ecd69fc.bundle.js.mapassets/js/wp-audio.de344657de8b792ed9b0.bundle.js000064400000001411151327220410014724 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(self["webpackChunkelementor"] = self["webpackChunkelementor"] || []).push([["wp-audio"],{

/***/ "../assets/dev/js/frontend/handlers/wp-audio.js":
/*!******************************************************!*\
  !*** ../assets/dev/js/frontend/handlers/wp-audio.js ***!
  \******************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

class WpAudio extends elementorModules.frontend.handlers.Base {
  onInit() {
    super.onInit();
    window.wp.mediaelement.initialize();
  }

}

exports.default = WpAudio;

/***/ })

}]);
//# sourceMappingURL=wp-audio.de344657de8b792ed9b0.bundle.js.mapassets/js/app-loader.min.js000064400000246022151327220410011631 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(()=>{var t={75453:(t,e,r)=>{t.exports=r(7421)},59396:(t,e,r)=>{t.exports=r(70157)},38401:(t,e,r)=>{t.exports=r(14710)},67394:(t,e,r)=>{t.exports=r(43153)},38923:(t,e,r)=>{t.exports=r(8531)},23587:(t,e,r)=>{t.exports=r(32622)},82055:(t,e,r)=>{t.exports=r(58535)},83452:(t,e,r)=>{t.exports=r(97220)},28274:(t,e,r)=>{t.exports=r(65135)},35657:(t,e,r)=>{t.exports=r(69591)},73220:(t,e,r)=>{t.exports=r(76483)},75499:(t,e,r)=>{t.exports=r(43094)},78282:(t,e,r)=>{t.exports=r(17641)},41281:(t,e,r)=>{t.exports=r(19103)},29363:(t,e,r)=>{t.exports=r(21114)},50093:(t,e,r)=>{t.exports=r(39871)},93168:(t,e,r)=>{t.exports=r(89999)},72292:t=>{t.exports=function _arrayLikeToArray(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n},t.exports.default=t.exports,t.exports.__esModule=!0},86870:(t,e,r)=>{var n=r(59396);t.exports=function _arrayWithHoles(t){if(n(t))return t},t.exports.default=t.exports,t.exports.__esModule=!0},38852:t=>{t.exports=function _assertThisInitialized(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t},t.exports.default=t.exports,t.exports.__esModule=!0},49117:(t,e,r)=>{var n=r(73220);function asyncGeneratorStep(t,e,r,o,i,a,u){try{var s=t[a](u),c=s.value}catch(t){return void r(t)}s.done?e(c):n.resolve(c).then(o,i)}t.exports=function _asyncToGenerator(t){return function(){var e=this,r=arguments;return new n((function(n,o){var i=t.apply(e,r);function _next(t){asyncGeneratorStep(i,n,o,_next,_throw,"next",t)}function _throw(t){asyncGeneratorStep(i,n,o,_next,_throw,"throw",t)}_next(void 0)}))}},t.exports.default=t.exports,t.exports.__esModule=!0},11959:t=>{t.exports=function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")},t.exports.default=t.exports,t.exports.__esModule=!0},39041:(t,e,r)=>{var n=r(67394);function _defineProperties(t,e){for(var r=0;r<e.length;r++){var o=e[r];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),n(t,o.key,o)}}t.exports=function _createClass(t,e,r){return e&&_defineProperties(t.prototype,e),r&&_defineProperties(t,r),t},t.exports.default=t.exports,t.exports.__esModule=!0},68537:(t,e,r)=>{var n=r(75499),o=r(44263),i=r(898),a=r(59771);t.exports=function _createSuper(t){var e=i();return function _createSuperInternal(){var r,i=o(t);if(e){var u=o(this).constructor;r=n(i,arguments,u)}else r=i.apply(this,arguments);return a(this,r)}},t.exports.default=t.exports,t.exports.__esModule=!0},18042:(t,e,r)=>{var n=r(67394);t.exports=function _defineProperty(t,e,r){return e in t?n(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t},t.exports.default=t.exports,t.exports.__esModule=!0},76700:(t,e,r)=>{var n=r(78282),o=r(23587),i=r(49445);function _get(e,r,a){return"undefined"!=typeof Reflect&&n?(t.exports=_get=n,t.exports.default=t.exports,t.exports.__esModule=!0):(t.exports=_get=function _get(t,e,r){var n=i(t,e);if(n){var a=o(n,e);return a.get?a.get.call(r):a.value}},t.exports.default=t.exports,t.exports.__esModule=!0),_get(e,r,a||e)}t.exports=_get,t.exports.default=t.exports,t.exports.__esModule=!0},44263:(t,e,r)=>{var n=r(28274),o=r(82055);function _getPrototypeOf(e){return t.exports=_getPrototypeOf=n?o:function _getPrototypeOf(t){return t.__proto__||o(t)},t.exports.default=t.exports,t.exports.__esModule=!0,_getPrototypeOf(e)}t.exports=_getPrototypeOf,t.exports.default=t.exports,t.exports.__esModule=!0},77371:(t,e,r)=>{var n=r(38401),o=r(76870);t.exports=function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=n(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&o(t,e)},t.exports.default=t.exports,t.exports.__esModule=!0},67971:t=>{t.exports=function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}},t.exports.default=t.exports,t.exports.__esModule=!0},52369:(t,e,r)=>{var n=r(24596).default,o=r(93168),i=r(67394),a=r(23587);function _getRequireWildcardCache(t){if("function"!=typeof o)return null;var e=new o,r=new o;return(_getRequireWildcardCache=function _getRequireWildcardCache(t){return t?r:e})(t)}t.exports=function _interopRequireWildcard(t,e){if(!e&&t&&t.__esModule)return t;if(null===t||"object"!==n(t)&&"function"!=typeof t)return{default:t};var r=_getRequireWildcardCache(e);if(r&&r.has(t))return r.get(t);var o={},u=i&&a;for(var s in t)if("default"!==s&&Object.prototype.hasOwnProperty.call(t,s)){var c=u?a(t,s):null;c&&(c.get||c.set)?i(o,s,c):o[s]=t[s]}return o.default=t,r&&r.set(t,o),o},t.exports.default=t.exports,t.exports.__esModule=!0},898:(t,e,r)=>{var n=r(75499);t.exports=function _isNativeReflectConstruct(){if("undefined"==typeof Reflect||!n)return!1;if(n.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(n(Boolean,[],(function(){}))),!0}catch(t){return!1}},t.exports.default=t.exports,t.exports.__esModule=!0},79968:(t,e,r)=>{var n=r(41281),o=r(50093);t.exports=function _iterableToArrayLimit(t,e){var r=null==t?null:void 0!==n&&t[o]||t["@@iterator"];if(null!=r){var i,a,u=[],s=!0,c=!1;try{for(r=r.call(t);!(s=(i=r.next()).done)&&(u.push(i.value),!e||u.length!==e);s=!0);}catch(t){c=!0,a=t}finally{try{s||null==r.return||r.return()}finally{if(c)throw a}}return u}},t.exports.default=t.exports,t.exports.__esModule=!0},39198:t=>{t.exports=function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")},t.exports.default=t.exports,t.exports.__esModule=!0},59771:(t,e,r)=>{var n=r(24596).default,o=r(38852);t.exports=function _possibleConstructorReturn(t,e){return!e||"object"!==n(e)&&"function"!=typeof e?o(t):e},t.exports.default=t.exports,t.exports.__esModule=!0},76870:(t,e,r)=>{var n=r(28274);function _setPrototypeOf(e,r){return t.exports=_setPrototypeOf=n||function _setPrototypeOf(t,e){return t.__proto__=e,t},t.exports.default=t.exports,t.exports.__esModule=!0,_setPrototypeOf(e,r)}t.exports=_setPrototypeOf,t.exports.default=t.exports,t.exports.__esModule=!0},47834:(t,e,r)=>{var n=r(86870),o=r(79968),i=r(24594),a=r(39198);t.exports=function _slicedToArray(t,e){return n(t)||o(t,e)||i(t,e)||a()},t.exports.default=t.exports,t.exports.__esModule=!0},49445:(t,e,r)=>{var n=r(44263);t.exports=function _superPropBase(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=n(t)););return t},t.exports.default=t.exports,t.exports.__esModule=!0},24596:(t,e,r)=>{var n=r(41281),o=r(50093);function _typeof(e){return"function"==typeof n&&"symbol"==typeof o?(t.exports=_typeof=function _typeof(t){return typeof t},t.exports.default=t.exports,t.exports.__esModule=!0):(t.exports=_typeof=function _typeof(t){return t&&"function"==typeof n&&t.constructor===n&&t!==n.prototype?"symbol":typeof t},t.exports.default=t.exports,t.exports.__esModule=!0),_typeof(e)}t.exports=_typeof,t.exports.default=t.exports,t.exports.__esModule=!0},24594:(t,e,r)=>{var n=r(75453),o=r(72292);t.exports=function _unsupportedIterableToArray(t,e){if(t){if("string"==typeof t)return o(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?n(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?o(t,e):void 0}},t.exports.default=t.exports,t.exports.__esModule=!0},57135:(t,e,r)=>{t.exports=r(86248)},42618:(t,e,r)=>{"use strict";var n=r(67394),o=r(67971);n(e,"__esModule",{value:!0}),e.default=void 0;var i=o(r(24596)),a=o(r(11959)),u=o(r(39041)),s=o(r(77371)),c=o(r(68537)),f=function(t){(0,s.default)(ArgsObject,t);var e=(0,c.default)(ArgsObject);function ArgsObject(t){var r;return(0,a.default)(this,ArgsObject),(r=e.call(this)).args=t,r}return(0,u.default)(ArgsObject,[{key:"requireArgument",value:function requireArgument(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.args;if(!e.hasOwnProperty(t))throw Error("".concat(t," is required."))}},{key:"requireArgumentType",value:function requireArgumentType(t,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.args;if(this.requireArgument(t,r),(0,i.default)(r[t])!==e)throw Error("".concat(t," invalid type: ").concat(e,"."))}},{key:"requireArgumentInstance",value:function requireArgumentInstance(t,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.args;if(this.requireArgument(t,r),!(r[t]instanceof e))throw Error("".concat(t," invalid instance."))}},{key:"requireArgumentConstructor",value:function requireArgumentConstructor(t,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.args;if(this.requireArgument(t,r),r[t].constructor!==e)throw Error("".concat(t," invalid constructor type."))}}],[{key:"getInstanceType",value:function getInstanceType(){return"ArgsObject"}}]),ArgsObject}(o(r(27597)).default);e.default=f},27597:(t,e,r)=>{"use strict";var n=r(67394),o=r(67971);n(e,"__esModule",{value:!0}),e.default=void 0;var i=o(r(29363)),a=o(r(59396));r(99745);var u=o(r(11959)),s=o(r(39041)),c=o(r(76700)),f=o(r(44263)),l=function(){function InstanceType(){var t=this;(0,u.default)(this,InstanceType);for(var e=this instanceof InstanceType?this.constructor:void 0,r=[];e.__proto__&&e.__proto__.name;)r.push(e.__proto__),e=e.__proto__;r.reverse().forEach((function(e){return t instanceof e}))}return(0,s.default)(InstanceType,null,[{key:i.default,value:function value(t){var e=(0,c.default)((0,f.default)(InstanceType),i.default,this).call(this,t);if(t&&!t.constructor.getInstanceType)return e;if(t&&(t.instanceTypes||(t.instanceTypes=[]),e||this.getInstanceType()===t.constructor.getInstanceType()&&(e=!0),e)){var r=this.getInstanceType===InstanceType.getInstanceType?"BaseInstanceType":this.getInstanceType();-1===t.instanceTypes.indexOf(r)&&t.instanceTypes.push(r)}return!e&&t&&(e=t.instanceTypes&&(0,a.default)(t.instanceTypes)&&-1!==t.instanceTypes.indexOf(this.getInstanceType())),e}},{key:"getInstanceType",value:function getInstanceType(){elementorModules.ForceMethodImplementation()}}]),InstanceType}();e.default=l},45934:(t,e,r)=>{"use strict";var n=r(67394),o=r(67971);n(e,"__esModule",{value:!0}),e.default=e.Close=void 0;var i=o(r(11959)),a=o(r(39041)),u=o(r(77371)),s=o(r(68537)),c=function(t){(0,u.default)(Close,t);var e=(0,s.default)(Close);function Close(){return(0,i.default)(this,Close),e.apply(this,arguments)}return(0,a.default)(Close,[{key:"apply",value:function apply(){return!!this.component.close()&&(this.component.iframe.remove(),this.component.iframe=null,!0)}}]),Close}(o(r(68689)).default);e.Close=c;var f=c;e.default=f},90730:(t,e,r)=>{"use strict";var n=r(67394);n(e,"__esModule",{value:!0}),n(e,"Close",{enumerable:!0,get:function get(){return o.Close}}),n(e,"Load",{enumerable:!0,get:function get(){return i.Load}}),n(e,"Open",{enumerable:!0,get:function get(){return a.Open}});var o=r(45934),i=r(63793),a=r(13301)},63793:(t,e,r)=>{"use strict";var n=r(67394),o=r(67971);n(e,"__esModule",{value:!0}),e.default=e.Load=void 0;var i=o(r(11959)),a=o(r(39041)),u=o(r(77371)),s=o(r(68537)),c=function(t){(0,u.default)(Load,t);var e=(0,s.default)(Load);function Load(){return(0,i.default)(this,Load),e.apply(this,arguments)}return(0,a.default)(Load,[{key:"apply",value:function apply(t){var e=this.component;e.iframe||(e.iframe=document.createElement("iframe"),e.iframe.className="elementor-app-iframe",e.iframe.style.cssText="display: none;width: 100%;height: 100%;position: fixed;top: 0;left: 0;z-index: 99999; /* Over WP Admin Bar */background-color: rgba(0, 0, 0, 0.8);",document.body.appendChild(e.iframe)),t.url!==e.iframe.src&&(e.iframe.src=t.url)}}]),Load}(o(r(68689)).default);e.Load=c;var f=c;e.default=f},13301:(t,e,r)=>{"use strict";var n=r(67394),o=r(67971);n(e,"__esModule",{value:!0}),e.default=e.Open=void 0;var i=o(r(11959)),a=o(r(39041)),u=o(r(77371)),s=o(r(68537)),c=function(t){(0,u.default)(Open,t);var e=(0,s.default)(Open);function Open(){return(0,i.default)(this,Open),e.apply(this,arguments)}return(0,a.default)(Open,[{key:"apply",value:function apply(t){return $e.route("app",t),!0}}]),Open}(o(r(68689)).default);e.Open=c;var f=c;e.default=f},21752:(t,e,r)=>{"use strict";var n=r(67394),o=r(52369),i=r(67971);n(e,"__esModule",{value:!0}),e.default=void 0;var a=i(r(11959)),u=i(r(39041)),s=i(r(77371)),c=i(r(68537)),f=i(r(15591)),l=o(r(90730)),p=function(t){(0,s.default)(Component,t);var e=(0,c.default)(Component);function Component(){return(0,a.default)(this,Component),e.apply(this,arguments)}return(0,u.default)(Component,[{key:"getNamespace",value:function getNamespace(){return"app"}},{key:"defaultRoutes",value:function defaultRoutes(){var t=this;return{"":function _(e){e.url=e.url||elementorAppConfig.menu_url,$e.run("app/load",e),t.iframe.style.display="",document.body.style.overflow="hidden"}}}},{key:"defaultCommands",value:function defaultCommands(){return this.importCommands(l)}},{key:"defaultShortcuts",value:function defaultShortcuts(){return{"":{keys:"ctrl+shift+e"},close:{keys:"esc",scopes:[this.getNamespace()]}}}}]),Component}(f.default);e.default=p},68689:(t,e,r)=>{"use strict";var n=r(67394),o=r(67971);n(e,"__esModule",{value:!0}),e.default=void 0;var i=o(r(57135));r(64434),r(37472),r(76139),r(12897),r(93085);var a=o(r(59396)),u=o(r(73220)),s=o(r(24596)),c=o(r(49117)),f=o(r(11959)),l=o(r(39041)),p=o(r(38852)),v=o(r(77371)),h=o(r(68537)),d=o(r(18042)),y=function(t){(0,v.default)(CommandBase,t);var e=(0,h.default)(CommandBase);function CommandBase(t){var r,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:$e.commands;return(0,f.default)(this,CommandBase),r=e.call(this,t),(0,d.default)((0,p.default)(r),"component",void 0),r.currentCommand=n.getCurrentLast(),r.component=n.getComponent(r.currentCommand),r.initialize(t),t=r.args,r.validateArgs(t),r}return(0,l.default)(CommandBase,[{key:"requireContainer",value:function requireContainer(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.args;if(!e.container&&!e.containers)throw Error("container or containers are required.");if(e.container&&e.containers)throw Error("container and containers cannot go together please select one of them.");var r=e.containers||[e.container];r.forEach((function(e){t.requireArgumentInstance("container",elementorModules.editor.Container,{container:e})}))}},{key:"initialize",value:function initialize(){}},{key:"validateArgs",value:function validateArgs(){}},{key:"isDataChanged",value:function isDataChanged(){return!1}},{key:"apply",value:function apply(){elementorModules.ForceMethodImplementation()}},{key:"run",value:function run(){var t;this.onBeforeRun(this.args);try{this.onBeforeApply(this.args),t=this.apply(this.args)}catch(t){if(this.onCatchApply(t),t instanceof $e.modules.HookBreak)return!1}return this.runAfter(t)}},{key:"runAfter",value:function runAfter(t){var e=this,r=function onAfter(t){e.onAfterApply(e.args,t),e.isDataChanged()&&$e.internal("document/save/set-is-modified",{status:!0}),e.onAfterRun(e.args,t)},n=function(){var t=(0,c.default)(i.default.mark((function _callee(t){var r,n;return i.default.wrap((function _callee$(o){for(;;)switch(o.prev=o.next){case 0:if(r=e.onAfterApply(e.args,t),!(n=(0,a.default)(r)?r.flat().filter((function(t){return t instanceof u.default})):[]).length){o.next=4;break}return o.next=4,u.default.all(n);case 4:e.isDataChanged()&&$e.internal("document/save/set-is-modified",{status:!0}),e.onAfterRun(e.args,t);case 6:case"end":return o.stop()}}),_callee)})));return function asyncOnAfter(e){return t.apply(this,arguments)}}();if(t&&"object"===(0,s.default)(t)&&t.promise&&t.then&&t.fail)t.fail(this.onCatchApply.bind(this)),t.done(r);else{if(t instanceof u.default)return(0,c.default)(i.default.mark((function _callee2(){return i.default.wrap((function _callee2$(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,t.catch(e.onCatchApply.bind(e));case 2:return r.next=4,t.then((function(t){return n(t)}));case 4:return r.abrupt("return",t);case 5:case"end":return r.stop()}}),_callee2)})))();r(t)}return t}},{key:"runCatchHooks",value:function runCatchHooks(t){$e.hooks.runDataCatch(this.currentCommand,this.args,t),$e.hooks.runUICatch(this.currentCommand,this.args,t)}},{key:"onBeforeRun",value:function onBeforeRun(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};$e.hooks.runUIBefore(this.currentCommand,t)}},{key:"onAfterRun",value:function onAfterRun(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=arguments.length>1?arguments[1]:void 0;$e.hooks.runUIAfter(this.currentCommand,t,e)}},{key:"onBeforeApply",value:function onBeforeApply(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};$e.hooks.runDataDependency(this.currentCommand,t)}},{key:"onAfterApply",value:function onAfterApply(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=arguments.length>1?arguments[1]:void 0;return $e.hooks.runDataAfter(this.currentCommand,t,e)}},{key:"onCatchApply",value:function onCatchApply(t){this.runCatchHooks(t),elementorCommon.helpers.consoleError(t)}}],[{key:"getInstanceType",value:function getInstanceType(){return"CommandBase"}},{key:"getInfo",value:function getInfo(){return{}}}]),CommandBase}(o(r(42618)).default);e.default=y},15591:(t,e,r)=>{"use strict";var n=r(67394),o=r(67971);n(e,"__esModule",{value:!0}),e.default=void 0,r(99236),r(64434),r(84208);var i=o(r(38923)),a=o(r(35657)),u=o(r(83452)),s=o(r(47834)),c=o(r(11959)),f=o(r(39041)),l=o(r(77371)),p=o(r(68537)),v=function(t){(0,l.default)(ComponentBase,t);var e=(0,p.default)(ComponentBase);function ComponentBase(){return(0,c.default)(this,ComponentBase),e.apply(this,arguments)}return(0,f.default)(ComponentBase,[{key:"__construct",value:function __construct(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};t.manager&&(this.manager=t.manager),this.commands=this.defaultCommands(),this.commandsInternal=this.defaultCommandsInternal(),this.hooks=this.defaultHooks(),this.routes=this.defaultRoutes(),this.tabs=this.defaultTabs(),this.shortcuts=this.defaultShortcuts(),this.utils=this.defaultUtils(),this.data=this.defaultData(),this.uiStates=this.defaultUiStates(),this.defaultRoute="",this.currentTab=""}},{key:"registerAPI",value:function registerAPI(){var t=this;(0,i.default)(this.getTabs()).forEach((function(e){return t.registerTabRoute(e[0])})),(0,i.default)(this.getRoutes()).forEach((function(e){var r=(0,s.default)(e,2),n=r[0],o=r[1];return t.registerRoute(n,o)})),(0,i.default)(this.getCommands()).forEach((function(e){var r=(0,s.default)(e,2),n=r[0],o=r[1];return t.registerCommand(n,o)})),(0,i.default)(this.getCommandsInternal()).forEach((function(e){var r=(0,s.default)(e,2),n=r[0],o=r[1];return t.registerCommandInternal(n,o)})),(0,a.default)(this.getHooks()).forEach((function(e){return t.registerHook(e)})),(0,i.default)(this.getData()).forEach((function(e){var r=(0,s.default)(e,2),n=r[0],o=r[1];return t.registerData(n,o)})),(0,a.default)(this.getUiStates()).forEach((function(e){return t.registerUiState(e)}))}},{key:"getNamespace",value:function getNamespace(){elementorModules.ForceMethodImplementation()}},{key:"getRootContainer",value:function getRootContainer(){return this.getNamespace().split("/")[0]}},{key:"defaultTabs",value:function defaultTabs(){return{}}},{key:"defaultRoutes",value:function defaultRoutes(){return{}}},{key:"defaultCommands",value:function defaultCommands(){return{}}},{key:"defaultCommandsInternal",value:function defaultCommandsInternal(){return{}}},{key:"defaultHooks",value:function defaultHooks(){return{}}},{key:"defaultUiStates",value:function defaultUiStates(){return{}}},{key:"defaultShortcuts",value:function defaultShortcuts(){return{}}},{key:"defaultUtils",value:function defaultUtils(){return{}}},{key:"defaultData",value:function defaultData(){return{}}},{key:"getCommands",value:function getCommands(){return this.commands}},{key:"getCommandsInternal",value:function getCommandsInternal(){return this.commandsInternal}},{key:"getHooks",value:function getHooks(){return this.hooks}},{key:"getUiStates",value:function getUiStates(){return this.uiStates}},{key:"getRoutes",value:function getRoutes(){return this.routes}},{key:"getTabs",value:function getTabs(){return this.tabs}},{key:"getShortcuts",value:function getShortcuts(){return this.shortcuts}},{key:"getData",value:function getData(){return this.data}},{key:"registerCommand",value:function registerCommand(t,e){$e.commands.register(this,t,e)}},{key:"registerHook",value:function registerHook(t){return t.register()}},{key:"registerUiState",value:function registerUiState(t){$e.uiStates.register(t)}},{key:"registerCommandInternal",value:function registerCommandInternal(t,e){$e.commandsInternal.register(this,t,e)}},{key:"registerRoute",value:function registerRoute(t,e){$e.routes.register(this,t,e)}},{key:"registerData",value:function registerData(t,e){$e.data.register(this,t,e)}},{key:"unregisterRoute",value:function unregisterRoute(t){$e.routes.unregister(this,t)}},{key:"registerTabRoute",value:function registerTabRoute(t){var e=this;this.registerRoute(t,(function(r){return e.activateTab(t,r)}))}},{key:"dependency",value:function dependency(){return!0}},{key:"open",value:function open(){return!0}},{key:"close",value:function close(){return!!this.isOpen&&(this.isOpen=!1,this.inactivate(),$e.routes.clearCurrent(this.getNamespace()),$e.routes.clearHistory(this.getRootContainer()),!0)}},{key:"activate",value:function activate(){$e.components.activate(this.getNamespace())}},{key:"inactivate",value:function inactivate(){$e.components.inactivate(this.getNamespace())}},{key:"isActive",value:function isActive(){return $e.components.isActive(this.getNamespace())}},{key:"onRoute",value:function onRoute(t){this.toggleRouteClass(t,!0),this.toggleHistoryClass(),this.activate(),this.trigger("route/open",t)}},{key:"onCloseRoute",value:function onCloseRoute(t){this.toggleRouteClass(t,!1),this.inactivate(),this.trigger("route/close",t)}},{key:"setDefaultRoute",value:function setDefaultRoute(t){this.defaultRoute=this.getNamespace()+"/"+t}},{key:"getDefaultRoute",value:function getDefaultRoute(){return this.defaultRoute}},{key:"removeTab",value:function removeTab(t){delete this.tabs[t],this.unregisterRoute(t)}},{key:"hasTab",value:function hasTab(t){return!!this.tabs[t]}},{key:"addTab",value:function addTab(t,e,r){var n=this;if(this.tabs[t]=e,void 0!==r){var o={},i=(0,u.default)(this.tabs);i.pop(),i.splice(r,0,t),i.forEach((function(t){o[t]=n.tabs[t]})),this.tabs=o}this.registerTabRoute(t)}},{key:"getTabsWrapperSelector",value:function getTabsWrapperSelector(){return""}},{key:"getTabRoute",value:function getTabRoute(t){return this.getNamespace()+"/"+t}},{key:"renderTab",value:function renderTab(t){}},{key:"activateTab",value:function activateTab(t,e){var r=this;this.currentTab=t,this.renderTab(t,e),jQuery(this.getTabsWrapperSelector()+" .elementor-component-tab").off("click").on("click",(function(t){$e.route(r.getTabRoute(t.currentTarget.dataset.tab),e)})).removeClass("elementor-active").filter('[data-tab="'+t+'"]').addClass("elementor-active")}},{key:"getActiveTabConfig",value:function getActiveTabConfig(){return this.tabs[this.currentTab]||{}}},{key:"getBodyClass",value:function getBodyClass(t){return"e-route-"+t.replace(/\//g,"-")}},{key:"normalizeCommandName",value:function normalizeCommandName(t){return t.replace(/[A-Z]/g,(function(t,e){return(e>0?"-":"")+t.toLowerCase()}))}},{key:"importCommands",value:function importCommands(t){var e=this,r={};return(0,i.default)(t).forEach((function(t){var n=(0,s.default)(t,2),o=n[0],i=n[1],a=e.normalizeCommandName(o);r[a]=function(t){return new i(t).run()},$e.commands.classes[e.getNamespace()+"/"+a]=i})),r}},{key:"importHooks",value:function importHooks(t){var e={};for(var r in t){var n=new t[r];e[n.getId()]=n}return e}},{key:"importUiStates",value:function importUiStates(t){var e=this,r={};return(0,a.default)(t).forEach((function(t){var n=new t(e);r[n.getId()]=n})),r}},{key:"setUiState",value:function setUiState(t,e){$e.uiStates.set("".concat(this.getNamespace(),"/").concat(t),e)}},{key:"toggleRouteClass",value:function toggleRouteClass(t,e){elementorCommon.elements.$body.toggleClass(this.getBodyClass(t),e)}},{key:"toggleHistoryClass",value:function toggleHistoryClass(){elementorCommon.elements.$body.toggleClass("e-routes-has-history",!!$e.routes.getHistory(this.getRootContainer()).length)}}]),ComponentBase}(elementorModules.Module);e.default=v},7421:(t,e,r)=>{r(99572),r(37627),t.exports=r(47208).Array.from},70157:(t,e,r)=>{r(42580),t.exports=r(47208).Array.isArray},14710:(t,e,r)=>{r(30785);var n=r(47208).Object;t.exports=function create(t,e){return n.create(t,e)}},43153:(t,e,r)=>{r(40168);var n=r(47208).Object;t.exports=function defineProperty(t,e,r){return n.defineProperty(t,e,r)}},8531:(t,e,r)=>{r(95260),t.exports=r(47208).Object.entries},32622:(t,e,r)=>{r(18576);var n=r(47208).Object;t.exports=function getOwnPropertyDescriptor(t,e){return n.getOwnPropertyDescriptor(t,e)}},58535:(t,e,r)=>{r(4840),t.exports=r(47208).Object.getPrototypeOf},97220:(t,e,r)=>{r(5453),t.exports=r(47208).Object.keys},65135:(t,e,r)=>{r(13890),t.exports=r(47208).Object.setPrototypeOf},69591:(t,e,r)=>{r(57188),t.exports=r(47208).Object.values},76483:(t,e,r)=>{r(70285),r(99572),r(74114),r(86082),r(81522),r(25757),t.exports=r(47208).Promise},43094:(t,e,r)=>{r(11320),t.exports=r(47208).Reflect.construct},17641:(t,e,r)=>{r(36600),t.exports=r(47208).Reflect.get},21114:(t,e,r)=>{r(78760),t.exports=r(7273).f("hasInstance")},19103:(t,e,r)=>{r(54370),r(70285),r(87573),r(97224),t.exports=r(47208).Symbol},39871:(t,e,r)=>{r(99572),r(74114),t.exports=r(7273).f("iterator")},89999:(t,e,r)=>{r(70285),r(74114),r(23337),r(10143),r(92797),t.exports=r(47208).WeakMap},26610:t=>{t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},29697:t=>{t.exports=function(){}},54677:t=>{t.exports=function(t,e,r,n){if(!(t instanceof e)||void 0!==n&&n in t)throw TypeError(r+": incorrect invocation!");return t}},30498:(t,e,r)=>{var n=r(39632);t.exports=function(t){if(!n(t))throw TypeError(t+" is not an object!");return t}},69191:(t,e,r)=>{var n=r(1504),o=r(37154),i=r(46723);t.exports=function(t){return function(e,r,a){var u,s=n(e),c=o(s.length),f=i(a,c);if(t&&r!=r){for(;c>f;)if((u=s[f++])!=u)return!0}else for(;c>f;f++)if((t||f in s)&&s[f]===r)return t||f||0;return!t&&-1}}},97647:(t,e,r)=>{var n=r(61725),o=r(13115),i=r(60061),a=r(37154),u=r(41904);t.exports=function(t,e){var r=1==t,s=2==t,c=3==t,f=4==t,l=6==t,p=5==t||l,v=e||u;return function(e,u,h){for(var d,y,g=i(e),m=o(g),x=n(u,h,3),b=a(m.length),w=0,k=r?v(e,b):s?v(e,0):void 0;b>w;w++)if((p||w in m)&&(y=x(d=m[w],w,g),t))if(r)k[w]=y;else if(y)switch(t){case 3:return!0;case 5:return d;case 6:return w;case 2:k.push(d)}else if(f)return!1;return l?-1:c||f?f:k}}},88320:(t,e,r)=>{var n=r(39632),o=r(7359),i=r(24300)("species");t.exports=function(t){var e;return o(t)&&("function"!=typeof(e=t.constructor)||e!==Array&&!o(e.prototype)||(e=void 0),n(e)&&null===(e=e[i])&&(e=void 0)),void 0===e?Array:e}},41904:(t,e,r)=>{var n=r(88320);t.exports=function(t,e){return new(n(t))(e)}},45515:(t,e,r)=>{"use strict";var n=r(26610),o=r(39632),i=r(19897),a=[].slice,u={},construct=function(t,e,r){if(!(e in u)){for(var n=[],o=0;o<e;o++)n[o]="a["+o+"]";u[e]=Function("F,a","return new F("+n.join(",")+")")}return u[e](t,r)};t.exports=Function.bind||function bind(t){var e=n(this),r=a.call(arguments,1),bound=function(){var n=r.concat(a.call(arguments));return this instanceof bound?construct(e,n.length,n):i(e,n,t)};return o(e.prototype)&&(bound.prototype=e.prototype),bound}},8312:(t,e,r)=>{var n=r(41352),o=r(24300)("toStringTag"),i="Arguments"==n(function(){return arguments}());t.exports=function(t){var e,r,a;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(r=function(t,e){try{return t[e]}catch(t){}}(e=Object(t),o))?r:i?n(e):"Object"==(a=n(e))&&"function"==typeof e.callee?"Arguments":a}},41352:t=>{var e={}.toString;t.exports=function(t){return e.call(t).slice(8,-1)}},92600:(t,e,r)=>{"use strict";var n=r(13199),o=r(6758).getWeak,i=r(30498),a=r(39632),u=r(54677),s=r(25985),c=r(97647),f=r(20657),l=r(41081),p=c(5),v=c(6),h=0,uncaughtFrozenStore=function(t){return t._l||(t._l=new UncaughtFrozenStore)},UncaughtFrozenStore=function(){this.a=[]},findUncaughtFrozen=function(t,e){return p(t.a,(function(t){return t[0]===e}))};UncaughtFrozenStore.prototype={get:function(t){var e=findUncaughtFrozen(this,t);if(e)return e[1]},has:function(t){return!!findUncaughtFrozen(this,t)},set:function(t,e){var r=findUncaughtFrozen(this,t);r?r[1]=e:this.a.push([t,e])},delete:function(t){var e=v(this.a,(function(e){return e[0]===t}));return~e&&this.a.splice(e,1),!!~e}},t.exports={getConstructor:function(t,e,r,i){var c=t((function(t,n){u(t,c,e,"_i"),t._t=e,t._i=h++,t._l=void 0,null!=n&&s(n,r,t[i],t)}));return n(c.prototype,{delete:function(t){if(!a(t))return!1;var r=o(t);return!0===r?uncaughtFrozenStore(l(this,e)).delete(t):r&&f(r,this._i)&&delete r[this._i]},has:function has(t){if(!a(t))return!1;var r=o(t);return!0===r?uncaughtFrozenStore(l(this,e)).has(t):r&&f(r,this._i)}}),c},def:function(t,e,r){var n=o(i(e),!0);return!0===n?uncaughtFrozenStore(t).set(e,r):n[t._i]=r,t},ufstore:uncaughtFrozenStore}},70770:(t,e,r)=>{"use strict";var n=r(43280),o=r(98310),i=r(6758),a=r(90472),u=r(62292),s=r(13199),c=r(25985),f=r(54677),l=r(39632),p=r(2413),v=r(60510).f,h=r(97647)(0),d=r(75179);t.exports=function(t,e,r,y,g,m){var x=n[t],b=x,w=g?"set":"add",k=b&&b.prototype,O={};return d&&"function"==typeof b&&(m||k.forEach&&!a((function(){(new b).entries().next()})))?(b=e((function(e,r){f(e,b,t,"_c"),e._c=new x,null!=r&&c(r,g,e[w],e)})),h("add,clear,delete,forEach,get,has,set,keys,values,entries,toJSON".split(","),(function(t){var e="add"==t||"set"==t;!(t in k)||m&&"clear"==t||u(b.prototype,t,(function(r,n){if(f(this,b,t),!e&&m&&!l(r))return"get"==t&&void 0;var o=this._c[t](0===r?0:r,n);return e?this:o}))})),m||v(b.prototype,"size",{get:function(){return this._c.size}})):(b=y.getConstructor(e,t,g,w),s(b.prototype,r),i.NEED=!0),p(b,t),O[t]=b,o(o.G+o.W+o.F,O),m||y.setStrong(b,t,g),b}},47208:t=>{var e=t.exports={version:"2.6.12"};"number"==typeof __e&&(__e=e)},87352:(t,e,r)=>{"use strict";var n=r(60510),o=r(48439);t.exports=function(t,e,r){e in t?n.f(t,e,o(0,r)):t[e]=r}},61725:(t,e,r)=>{var n=r(26610);t.exports=function(t,e,r){if(n(t),void 0===e)return t;switch(r){case 1:return function(r){return t.call(e,r)};case 2:return function(r,n){return t.call(e,r,n)};case 3:return function(r,n,o){return t.call(e,r,n,o)}}return function(){return t.apply(e,arguments)}}},18239:t=>{t.exports=function(t){if(null==t)throw TypeError("Can't call method on  "+t);return t}},75179:(t,e,r)=>{t.exports=!r(90472)((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},48765:(t,e,r)=>{var n=r(39632),o=r(43280).document,i=n(o)&&n(o.createElement);t.exports=function(t){return i?o.createElement(t):{}}},31986:t=>{t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},42266:(t,e,r)=>{var n=r(86425),o=r(97739),i=r(67410);t.exports=function(t){var e=n(t),r=o.f;if(r)for(var a,u=r(t),s=i.f,c=0;u.length>c;)s.call(t,a=u[c++])&&e.push(a);return e}},98310:(t,e,r)=>{var n=r(43280),o=r(47208),i=r(61725),a=r(62292),u=r(20657),$export=function(t,e,r){var s,c,f,l=t&$export.F,p=t&$export.G,v=t&$export.S,h=t&$export.P,d=t&$export.B,y=t&$export.W,g=p?o:o[e]||(o[e]={}),m=g.prototype,x=p?n:v?n[e]:(n[e]||{}).prototype;for(s in p&&(r=e),r)(c=!l&&x&&void 0!==x[s])&&u(g,s)||(f=c?x[s]:r[s],g[s]=p&&"function"!=typeof x[s]?r[s]:d&&c?i(f,n):y&&x[s]==f?function(t){var F=function(e,r,n){if(this instanceof t){switch(arguments.length){case 0:return new t;case 1:return new t(e);case 2:return new t(e,r)}return new t(e,r,n)}return t.apply(this,arguments)};return F.prototype=t.prototype,F}(f):h&&"function"==typeof f?i(Function.call,f):f,h&&((g.virtual||(g.virtual={}))[s]=f,t&$export.R&&m&&!m[s]&&a(m,s,f)))};$export.F=1,$export.G=2,$export.S=4,$export.P=8,$export.B=16,$export.W=32,$export.U=64,$export.R=128,t.exports=$export},90472:t=>{t.exports=function(t){try{return!!t()}catch(t){return!0}}},25985:(t,e,r)=>{var n=r(61725),o=r(93086),i=r(11827),a=r(30498),u=r(37154),s=r(26116),c={},f={},l=t.exports=function(t,e,r,l,p){var v,h,d,y,g=p?function(){return t}:s(t),m=n(r,l,e?2:1),x=0;if("function"!=typeof g)throw TypeError(t+" is not iterable!");if(i(g)){for(v=u(t.length);v>x;x++)if((y=e?m(a(h=t[x])[0],h[1]):m(t[x]))===c||y===f)return y}else for(d=g.call(t);!(h=d.next()).done;)if((y=o(d,m,h.value,e))===c||y===f)return y};l.BREAK=c,l.RETURN=f},43280:t=>{var e=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=e)},20657:t=>{var e={}.hasOwnProperty;t.exports=function(t,r){return e.call(t,r)}},62292:(t,e,r)=>{var n=r(60510),o=r(48439);t.exports=r(75179)?function(t,e,r){return n.f(t,e,o(1,r))}:function(t,e,r){return t[e]=r,t}},92477:(t,e,r)=>{var n=r(43280).document;t.exports=n&&n.documentElement},64457:(t,e,r)=>{t.exports=!r(75179)&&!r(90472)((function(){return 7!=Object.defineProperty(r(48765)("div"),"a",{get:function(){return 7}}).a}))},19897:t=>{t.exports=function(t,e,r){var n=void 0===r;switch(e.length){case 0:return n?t():t.call(r);case 1:return n?t(e[0]):t.call(r,e[0]);case 2:return n?t(e[0],e[1]):t.call(r,e[0],e[1]);case 3:return n?t(e[0],e[1],e[2]):t.call(r,e[0],e[1],e[2]);case 4:return n?t(e[0],e[1],e[2],e[3]):t.call(r,e[0],e[1],e[2],e[3])}return t.apply(r,e)}},13115:(t,e,r)=>{var n=r(41352);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==n(t)?t.split(""):Object(t)}},11827:(t,e,r)=>{var n=r(79105),o=r(24300)("iterator"),i=Array.prototype;t.exports=function(t){return void 0!==t&&(n.Array===t||i[o]===t)}},7359:(t,e,r)=>{var n=r(41352);t.exports=Array.isArray||function isArray(t){return"Array"==n(t)}},39632:t=>{t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},93086:(t,e,r)=>{var n=r(30498);t.exports=function(t,e,r,o){try{return o?e(n(r)[0],r[1]):e(r)}catch(e){var i=t.return;throw void 0!==i&&n(i.call(t)),e}}},19802:(t,e,r)=>{"use strict";var n=r(82488),o=r(48439),i=r(2413),a={};r(62292)(a,r(24300)("iterator"),(function(){return this})),t.exports=function(t,e,r){t.prototype=n(a,{next:o(1,r)}),i(t,e+" Iterator")}},6125:(t,e,r)=>{"use strict";var n=r(36794),o=r(98310),i=r(19312),a=r(62292),u=r(79105),s=r(19802),c=r(2413),f=r(999),l=r(24300)("iterator"),p=!([].keys&&"next"in[].keys()),v="keys",h="values",returnThis=function(){return this};t.exports=function(t,e,r,d,y,g,m){s(r,e,d);var x,b,w,getMethod=function(t){if(!p&&t in C)return C[t];switch(t){case v:return function keys(){return new r(this,t)};case h:return function values(){return new r(this,t)}}return function entries(){return new r(this,t)}},k=e+" Iterator",O=y==h,S=!1,C=t.prototype,A=C[l]||C["@@iterator"]||y&&C[y],T=A||getMethod(y),P=y?O?getMethod("entries"):T:void 0,j="Array"==e&&C.entries||A;if(j&&(w=f(j.call(new t)))!==Object.prototype&&w.next&&(c(w,k,!0),n||"function"==typeof w[l]||a(w,l,returnThis)),O&&A&&A.name!==h&&(S=!0,T=function values(){return A.call(this)}),n&&!m||!p&&!S&&C[l]||a(C,l,T),u[e]=T,u[k]=returnThis,y)if(x={values:O?T:getMethod(h),keys:g?T:getMethod(v),entries:P},m)for(b in x)b in C||i(C,b,x[b]);else o(o.P+o.F*(p||S),e,x);return x}},26797:(t,e,r)=>{var n=r(24300)("iterator"),o=!1;try{var i=[7][n]();i.return=function(){o=!0},Array.from(i,(function(){throw 2}))}catch(t){}t.exports=function(t,e){if(!e&&!o)return!1;var r=!1;try{var i=[7],a=i[n]();a.next=function(){return{done:r=!0}},i[n]=function(){return a},t(i)}catch(t){}return r}},9329:t=>{t.exports=function(t,e){return{value:e,done:!!t}}},79105:t=>{t.exports={}},36794:t=>{t.exports=!0},6758:(t,e,r)=>{var n=r(54251)("meta"),o=r(39632),i=r(20657),a=r(60510).f,u=0,s=Object.isExtensible||function(){return!0},c=!r(90472)((function(){return s(Object.preventExtensions({}))})),setMeta=function(t){a(t,n,{value:{i:"O"+ ++u,w:{}}})},f=t.exports={KEY:n,NEED:!1,fastKey:function(t,e){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,n)){if(!s(t))return"F";if(!e)return"E";setMeta(t)}return t[n].i},getWeak:function(t,e){if(!i(t,n)){if(!s(t))return!0;if(!e)return!1;setMeta(t)}return t[n].w},onFreeze:function(t){return c&&f.NEED&&s(t)&&!i(t,n)&&setMeta(t),t}}},4326:(t,e,r)=>{var n=r(43280),o=r(6022).set,i=n.MutationObserver||n.WebKitMutationObserver,a=n.process,u=n.Promise,s="process"==r(41352)(a);t.exports=function(){var t,e,r,flush=function(){var n,o;for(s&&(n=a.domain)&&n.exit();t;){o=t.fn,t=t.next;try{o()}catch(n){throw t?r():e=void 0,n}}e=void 0,n&&n.enter()};if(s)r=function(){a.nextTick(flush)};else if(!i||n.navigator&&n.navigator.standalone)if(u&&u.resolve){var c=u.resolve(void 0);r=function(){c.then(flush)}}else r=function(){o.call(n,flush)};else{var f=!0,l=document.createTextNode("");new i(flush).observe(l,{characterData:!0}),r=function(){l.data=f=!f}}return function(n){var o={fn:n,next:void 0};e&&(e.next=o),t||(t=o,r()),e=o}}},88579:(t,e,r)=>{"use strict";var n=r(26610);function PromiseCapability(t){var e,r;this.promise=new t((function(t,n){if(void 0!==e||void 0!==r)throw TypeError("Bad Promise constructor");e=t,r=n})),this.resolve=n(e),this.reject=n(r)}t.exports.f=function(t){return new PromiseCapability(t)}},77995:(t,e,r)=>{"use strict";var n=r(75179),o=r(86425),i=r(97739),a=r(67410),u=r(60061),s=r(13115),c=Object.assign;t.exports=!c||r(90472)((function(){var t={},e={},r=Symbol(),n="abcdefghijklmnopqrst";return t[r]=7,n.split("").forEach((function(t){e[t]=t})),7!=c({},t)[r]||Object.keys(c({},e)).join("")!=n}))?function assign(t,e){for(var r=u(t),c=arguments.length,f=1,l=i.f,p=a.f;c>f;)for(var v,h=s(arguments[f++]),d=l?o(h).concat(l(h)):o(h),y=d.length,g=0;y>g;)v=d[g++],n&&!p.call(h,v)||(r[v]=h[v]);return r}:c},82488:(t,e,r)=>{var n=r(30498),o=r(36607),i=r(31986),a=r(18478)("IE_PROTO"),Empty=function(){},createDict=function(){var t,e=r(48765)("iframe"),n=i.length;for(e.style.display="none",r(92477).appendChild(e),e.src="javascript:",(t=e.contentWindow.document).open(),t.write("<script>document.F=Object<\/script>"),t.close(),createDict=t.F;n--;)delete createDict.prototype[i[n]];return createDict()};t.exports=Object.create||function create(t,e){var r;return null!==t?(Empty.prototype=n(t),r=new Empty,Empty.prototype=null,r[a]=t):r=createDict(),void 0===e?r:o(r,e)}},60510:(t,e,r)=>{var n=r(30498),o=r(64457),i=r(12737),a=Object.defineProperty;e.f=r(75179)?Object.defineProperty:function defineProperty(t,e,r){if(n(t),e=i(e,!0),n(r),o)try{return a(t,e,r)}catch(t){}if("get"in r||"set"in r)throw TypeError("Accessors not supported!");return"value"in r&&(t[e]=r.value),t}},36607:(t,e,r)=>{var n=r(60510),o=r(30498),i=r(86425);t.exports=r(75179)?Object.defineProperties:function defineProperties(t,e){o(t);for(var r,a=i(e),u=a.length,s=0;u>s;)n.f(t,r=a[s++],e[r]);return t}},83264:(t,e,r)=>{var n=r(67410),o=r(48439),i=r(1504),a=r(12737),u=r(20657),s=r(64457),c=Object.getOwnPropertyDescriptor;e.f=r(75179)?c:function getOwnPropertyDescriptor(t,e){if(t=i(t),e=a(e,!0),s)try{return c(t,e)}catch(t){}if(u(t,e))return o(!n.f.call(t,e),t[e])}},26084:(t,e,r)=>{var n=r(1504),o=r(8772).f,i={}.toString,a="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];t.exports.f=function getOwnPropertyNames(t){return a&&"[object Window]"==i.call(t)?function(t){try{return o(t)}catch(t){return a.slice()}}(t):o(n(t))}},8772:(t,e,r)=>{var n=r(65326),o=r(31986).concat("length","prototype");e.f=Object.getOwnPropertyNames||function getOwnPropertyNames(t){return n(t,o)}},97739:(t,e)=>{e.f=Object.getOwnPropertySymbols},999:(t,e,r)=>{var n=r(20657),o=r(60061),i=r(18478)("IE_PROTO"),a=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=o(t),n(t,i)?t[i]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?a:null}},65326:(t,e,r)=>{var n=r(20657),o=r(1504),i=r(69191)(!1),a=r(18478)("IE_PROTO");t.exports=function(t,e){var r,u=o(t),s=0,c=[];for(r in u)r!=a&&n(u,r)&&c.push(r);for(;e.length>s;)n(u,r=e[s++])&&(~i(c,r)||c.push(r));return c}},86425:(t,e,r)=>{var n=r(65326),o=r(31986);t.exports=Object.keys||function keys(t){return n(t,o)}},67410:(t,e)=>{e.f={}.propertyIsEnumerable},57972:(t,e,r)=>{var n=r(98310),o=r(47208),i=r(90472);t.exports=function(t,e){var r=(o.Object||{})[t]||Object[t],a={};a[t]=e(r),n(n.S+n.F*i((function(){r(1)})),"Object",a)}},9480:(t,e,r)=>{var n=r(75179),o=r(86425),i=r(1504),a=r(67410).f;t.exports=function(t){return function(e){for(var r,u=i(e),s=o(u),c=s.length,f=0,l=[];c>f;)r=s[f++],n&&!a.call(u,r)||l.push(t?[r,u[r]]:u[r]);return l}}},52745:t=>{t.exports=function(t){try{return{e:!1,v:t()}}catch(t){return{e:!0,v:t}}}},88747:(t,e,r)=>{var n=r(30498),o=r(39632),i=r(88579);t.exports=function(t,e){if(n(t),o(e)&&e.constructor===t)return e;var r=i.f(t);return(0,r.resolve)(e),r.promise}},48439:t=>{t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},13199:(t,e,r)=>{var n=r(62292);t.exports=function(t,e,r){for(var o in e)r&&t[o]?t[o]=e[o]:n(t,o,e[o]);return t}},19312:(t,e,r)=>{t.exports=r(62292)},14689:(t,e,r)=>{"use strict";var n=r(98310),o=r(26610),i=r(61725),a=r(25985);t.exports=function(t){n(n.S,t,{from:function from(t){var e,r,n,u,s=arguments[1];return o(this),(e=void 0!==s)&&o(s),null==t?new this:(r=[],e?(n=0,u=i(s,arguments[2],2),a(t,!1,(function(t){r.push(u(t,n++))}))):a(t,!1,r.push,r),new this(r))}})}},7883:(t,e,r)=>{"use strict";var n=r(98310);t.exports=function(t){n(n.S,t,{of:function of(){for(var t=arguments.length,e=new Array(t);t--;)e[t]=arguments[t];return new this(e)}})}},25574:(t,e,r)=>{var n=r(39632),o=r(30498),check=function(t,e){if(o(t),!n(e)&&null!==e)throw TypeError(e+": can't set as prototype!")};t.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(t,e,n){try{(n=r(61725)(Function.call,r(83264).f(Object.prototype,"__proto__").set,2))(t,[]),e=!(t instanceof Array)}catch(t){e=!0}return function setPrototypeOf(t,r){return check(t,r),e?t.__proto__=r:n(t,r),t}}({},!1):void 0),check}},5698:(t,e,r)=>{"use strict";var n=r(43280),o=r(47208),i=r(60510),a=r(75179),u=r(24300)("species");t.exports=function(t){var e="function"==typeof o[t]?o[t]:n[t];a&&e&&!e[u]&&i.f(e,u,{configurable:!0,get:function(){return this}})}},2413:(t,e,r)=>{var n=r(60510).f,o=r(20657),i=r(24300)("toStringTag");t.exports=function(t,e,r){t&&!o(t=r?t:t.prototype,i)&&n(t,i,{configurable:!0,value:e})}},18478:(t,e,r)=>{var n=r(29990)("keys"),o=r(54251);t.exports=function(t){return n[t]||(n[t]=o(t))}},29990:(t,e,r)=>{var n=r(47208),o=r(43280),i="__core-js_shared__",a=o[i]||(o[i]={});(t.exports=function(t,e){return a[t]||(a[t]=void 0!==e?e:{})})("versions",[]).push({version:n.version,mode:r(36794)?"pure":"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})},73732:(t,e,r)=>{var n=r(30498),o=r(26610),i=r(24300)("species");t.exports=function(t,e){var r,a=n(t).constructor;return void 0===a||null==(r=n(a)[i])?e:o(r)}},78502:(t,e,r)=>{var n=r(58290),o=r(18239);t.exports=function(t){return function(e,r){var i,a,u=String(o(e)),s=n(r),c=u.length;return s<0||s>=c?t?"":void 0:(i=u.charCodeAt(s))<55296||i>56319||s+1===c||(a=u.charCodeAt(s+1))<56320||a>57343?t?u.charAt(s):i:t?u.slice(s,s+2):a-56320+(i-55296<<10)+65536}}},6022:(t,e,r)=>{var n,o,i,a=r(61725),u=r(19897),s=r(92477),c=r(48765),f=r(43280),l=f.process,p=f.setImmediate,v=f.clearImmediate,h=f.MessageChannel,d=f.Dispatch,y=0,g={},m="onreadystatechange",run=function(){var t=+this;if(g.hasOwnProperty(t)){var e=g[t];delete g[t],e()}},listener=function(t){run.call(t.data)};p&&v||(p=function setImmediate(t){for(var e=[],r=1;arguments.length>r;)e.push(arguments[r++]);return g[++y]=function(){u("function"==typeof t?t:Function(t),e)},n(y),y},v=function clearImmediate(t){delete g[t]},"process"==r(41352)(l)?n=function(t){l.nextTick(a(run,t,1))}:d&&d.now?n=function(t){d.now(a(run,t,1))}:h?(i=(o=new h).port2,o.port1.onmessage=listener,n=a(i.postMessage,i,1)):f.addEventListener&&"function"==typeof postMessage&&!f.importScripts?(n=function(t){f.postMessage(t+"","*")},f.addEventListener("message",listener,!1)):n=m in c("script")?function(t){s.appendChild(c("script")).onreadystatechange=function(){s.removeChild(this),run.call(t)}}:function(t){setTimeout(a(run,t,1),0)}),t.exports={set:p,clear:v}},46723:(t,e,r)=>{var n=r(58290),o=Math.max,i=Math.min;t.exports=function(t,e){return(t=n(t))<0?o(t+e,0):i(t,e)}},58290:t=>{var e=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:e)(t)}},1504:(t,e,r)=>{var n=r(13115),o=r(18239);t.exports=function(t){return n(o(t))}},37154:(t,e,r)=>{var n=r(58290),o=Math.min;t.exports=function(t){return t>0?o(n(t),9007199254740991):0}},60061:(t,e,r)=>{var n=r(18239);t.exports=function(t){return Object(n(t))}},12737:(t,e,r)=>{var n=r(39632);t.exports=function(t,e){if(!n(t))return t;var r,o;if(e&&"function"==typeof(r=t.toString)&&!n(o=r.call(t)))return o;if("function"==typeof(r=t.valueOf)&&!n(o=r.call(t)))return o;if(!e&&"function"==typeof(r=t.toString)&&!n(o=r.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},54251:t=>{var e=0,r=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++e+r).toString(36))}},35701:(t,e,r)=>{var n=r(43280).navigator;t.exports=n&&n.userAgent||""},41081:(t,e,r)=>{var n=r(39632);t.exports=function(t,e){if(!n(t)||t._t!==e)throw TypeError("Incompatible receiver, "+e+" required!");return t}},31164:(t,e,r)=>{var n=r(43280),o=r(47208),i=r(36794),a=r(7273),u=r(60510).f;t.exports=function(t){var e=o.Symbol||(o.Symbol=i?{}:n.Symbol||{});"_"==t.charAt(0)||t in e||u(e,t,{value:a.f(t)})}},7273:(t,e,r)=>{e.f=r(24300)},24300:(t,e,r)=>{var n=r(29990)("wks"),o=r(54251),i=r(43280).Symbol,a="function"==typeof i;(t.exports=function(t){return n[t]||(n[t]=a&&i[t]||(a?i:o)("Symbol."+t))}).store=n},26116:(t,e,r)=>{var n=r(8312),o=r(24300)("iterator"),i=r(79105);t.exports=r(47208).getIteratorMethod=function(t){if(null!=t)return t[o]||t["@@iterator"]||i[n(t)]}},37627:(t,e,r)=>{"use strict";var n=r(61725),o=r(98310),i=r(60061),a=r(93086),u=r(11827),s=r(37154),c=r(87352),f=r(26116);o(o.S+o.F*!r(26797)((function(t){Array.from(t)})),"Array",{from:function from(t){var e,r,o,l,p=i(t),v="function"==typeof this?this:Array,h=arguments.length,d=h>1?arguments[1]:void 0,y=void 0!==d,g=0,m=f(p);if(y&&(d=n(d,h>2?arguments[2]:void 0,2)),null==m||v==Array&&u(m))for(r=new v(e=s(p.length));e>g;g++)c(r,g,y?d(p[g],g):p[g]);else for(l=m.call(p),r=new v;!(o=l.next()).done;g++)c(r,g,y?a(l,d,[o.value,g],!0):o.value);return r.length=g,r}})},42580:(t,e,r)=>{var n=r(98310);n(n.S,"Array",{isArray:r(7359)})},84411:(t,e,r)=>{"use strict";var n=r(29697),o=r(9329),i=r(79105),a=r(1504);t.exports=r(6125)(Array,"Array",(function(t,e){this._t=a(t),this._i=0,this._k=e}),(function(){var t=this._t,e=this._k,r=this._i++;return!t||r>=t.length?(this._t=void 0,o(1)):o(0,"keys"==e?r:"values"==e?t[r]:[r,t[r]])}),"values"),i.Arguments=i.Array,n("keys"),n("values"),n("entries")},78760:(t,e,r)=>{"use strict";var n=r(39632),o=r(999),i=r(24300)("hasInstance"),a=Function.prototype;i in a||r(60510).f(a,i,{value:function(t){if("function"!=typeof this||!n(t))return!1;if(!n(this.prototype))return t instanceof this;for(;t=o(t);)if(this.prototype===t)return!0;return!1}})},30785:(t,e,r)=>{var n=r(98310);n(n.S,"Object",{create:r(82488)})},40168:(t,e,r)=>{var n=r(98310);n(n.S+n.F*!r(75179),"Object",{defineProperty:r(60510).f})},18576:(t,e,r)=>{var n=r(1504),o=r(83264).f;r(57972)("getOwnPropertyDescriptor",(function(){return function getOwnPropertyDescriptor(t,e){return o(n(t),e)}}))},4840:(t,e,r)=>{var n=r(60061),o=r(999);r(57972)("getPrototypeOf",(function(){return function getPrototypeOf(t){return o(n(t))}}))},5453:(t,e,r)=>{var n=r(60061),o=r(86425);r(57972)("keys",(function(){return function keys(t){return o(n(t))}}))},13890:(t,e,r)=>{var n=r(98310);n(n.S,"Object",{setPrototypeOf:r(25574).set})},70285:()=>{},86082:(t,e,r)=>{"use strict";var n,o,i,a,u=r(36794),s=r(43280),c=r(61725),f=r(8312),l=r(98310),p=r(39632),v=r(26610),h=r(54677),d=r(25985),y=r(73732),g=r(6022).set,m=r(4326)(),x=r(88579),b=r(52745),w=r(35701),k=r(88747),O="Promise",S=s.TypeError,C=s.process,A=C&&C.versions,T=A&&A.v8||"",P=s.Promise,j="process"==f(C),empty=function(){},E=o=x.f,I=!!function(){try{var t=P.resolve(1),e=(t.constructor={})[r(24300)("species")]=function(t){t(empty,empty)};return(j||"function"==typeof PromiseRejectionEvent)&&t.then(empty)instanceof e&&0!==T.indexOf("6.6")&&-1===w.indexOf("Chrome/66")}catch(t){}}(),isThenable=function(t){var e;return!(!p(t)||"function"!=typeof(e=t.then))&&e},notify=function(t,e){if(!t._n){t._n=!0;var r=t._c;m((function(){for(var n=t._v,o=1==t._s,i=0,run=function(e){var r,i,a,u=o?e.ok:e.fail,s=e.resolve,c=e.reject,f=e.domain;try{u?(o||(2==t._h&&onHandleUnhandled(t),t._h=1),!0===u?r=n:(f&&f.enter(),r=u(n),f&&(f.exit(),a=!0)),r===e.promise?c(S("Promise-chain cycle")):(i=isThenable(r))?i.call(r,s,c):s(r)):c(n)}catch(t){f&&!a&&f.exit(),c(t)}};r.length>i;)run(r[i++]);t._c=[],t._n=!1,e&&!t._h&&onUnhandled(t)}))}},onUnhandled=function(t){g.call(s,(function(){var e,r,n,o=t._v,i=isUnhandled(t);if(i&&(e=b((function(){j?C.emit("unhandledRejection",o,t):(r=s.onunhandledrejection)?r({promise:t,reason:o}):(n=s.console)&&n.error&&n.error("Unhandled promise rejection",o)})),t._h=j||isUnhandled(t)?2:1),t._a=void 0,i&&e.e)throw e.v}))},isUnhandled=function(t){return 1!==t._h&&0===(t._a||t._c).length},onHandleUnhandled=function(t){g.call(s,(function(){var e;j?C.emit("rejectionHandled",t):(e=s.onrejectionhandled)&&e({promise:t,reason:t._v})}))},$reject=function(t){var e=this;e._d||(e._d=!0,(e=e._w||e)._v=t,e._s=2,e._a||(e._a=e._c.slice()),notify(e,!0))},$resolve=function(t){var e,r=this;if(!r._d){r._d=!0,r=r._w||r;try{if(r===t)throw S("Promise can't be resolved itself");(e=isThenable(t))?m((function(){var n={_w:r,_d:!1};try{e.call(t,c($resolve,n,1),c($reject,n,1))}catch(t){$reject.call(n,t)}})):(r._v=t,r._s=1,notify(r,!1))}catch(t){$reject.call({_w:r,_d:!1},t)}}};I||(P=function Promise(t){h(this,P,O,"_h"),v(t),n.call(this);try{t(c($resolve,this,1),c($reject,this,1))}catch(t){$reject.call(this,t)}},(n=function Promise(t){this._c=[],this._a=void 0,this._s=0,this._d=!1,this._v=void 0,this._h=0,this._n=!1}).prototype=r(13199)(P.prototype,{then:function then(t,e){var r=E(y(this,P));return r.ok="function"!=typeof t||t,r.fail="function"==typeof e&&e,r.domain=j?C.domain:void 0,this._c.push(r),this._a&&this._a.push(r),this._s&&notify(this,!1),r.promise},catch:function(t){return this.then(void 0,t)}}),i=function(){var t=new n;this.promise=t,this.resolve=c($resolve,t,1),this.reject=c($reject,t,1)},x.f=E=function(t){return t===P||t===a?new i(t):o(t)}),l(l.G+l.W+l.F*!I,{Promise:P}),r(2413)(P,O),r(5698)(O),a=r(47208).Promise,l(l.S+l.F*!I,O,{reject:function reject(t){var e=E(this);return(0,e.reject)(t),e.promise}}),l(l.S+l.F*(u||!I),O,{resolve:function resolve(t){return k(u&&this===a?P:this,t)}}),l(l.S+l.F*!(I&&r(26797)((function(t){P.all(t).catch(empty)}))),O,{all:function all(t){var e=this,r=E(e),n=r.resolve,o=r.reject,i=b((function(){var r=[],i=0,a=1;d(t,!1,(function(t){var u=i++,s=!1;r.push(void 0),a++,e.resolve(t).then((function(t){s||(s=!0,r[u]=t,--a||n(r))}),o)})),--a||n(r)}));return i.e&&o(i.v),r.promise},race:function race(t){var e=this,r=E(e),n=r.reject,o=b((function(){d(t,!1,(function(t){e.resolve(t).then(r.resolve,n)}))}));return o.e&&n(o.v),r.promise}})},11320:(t,e,r)=>{var n=r(98310),o=r(82488),i=r(26610),a=r(30498),u=r(39632),s=r(90472),c=r(45515),f=(r(43280).Reflect||{}).construct,l=s((function(){function F(){}return!(f((function(){}),[],F)instanceof F)})),p=!s((function(){f((function(){}))}));n(n.S+n.F*(l||p),"Reflect",{construct:function construct(t,e){i(t),a(e);var r=arguments.length<3?t:i(arguments[2]);if(p&&!l)return f(t,e,r);if(t==r){switch(e.length){case 0:return new t;case 1:return new t(e[0]);case 2:return new t(e[0],e[1]);case 3:return new t(e[0],e[1],e[2]);case 4:return new t(e[0],e[1],e[2],e[3])}var n=[null];return n.push.apply(n,e),new(c.apply(t,n))}var s=r.prototype,v=o(u(s)?s:Object.prototype),h=Function.apply.call(t,v,e);return u(h)?h:v}})},36600:(t,e,r)=>{var n=r(83264),o=r(999),i=r(20657),a=r(98310),u=r(39632),s=r(30498);a(a.S,"Reflect",{get:function get(t,e){var r,a,c=arguments.length<3?t:arguments[2];return s(t)===c?t[e]:(r=n.f(t,e))?i(r,"value")?r.value:void 0!==r.get?r.get.call(c):void 0:u(a=o(t))?get(a,e,c):void 0}})},99572:(t,e,r)=>{"use strict";var n=r(78502)(!0);r(6125)(String,"String",(function(t){this._t=String(t),this._i=0}),(function(){var t,e=this._t,r=this._i;return r>=e.length?{value:void 0,done:!0}:(t=n(e,r),this._i+=t.length,{value:t,done:!1})}))},54370:(t,e,r)=>{"use strict";var n=r(43280),o=r(20657),i=r(75179),a=r(98310),u=r(19312),s=r(6758).KEY,c=r(90472),f=r(29990),l=r(2413),p=r(54251),v=r(24300),h=r(7273),d=r(31164),y=r(42266),g=r(7359),m=r(30498),x=r(39632),b=r(60061),w=r(1504),k=r(12737),O=r(48439),S=r(82488),C=r(26084),A=r(83264),T=r(97739),P=r(60510),j=r(86425),E=A.f,I=P.f,M=C.f,L=n.Symbol,R=n.JSON,N=R&&R.stringify,D=v("_hidden"),G=v("toPrimitive"),$={}.propertyIsEnumerable,B=f("symbol-registry"),q=f("symbols"),W=f("op-symbols"),H=Object.prototype,U="function"==typeof L&&!!T.f,z=n.QObject,V=!z||!z.prototype||!z.prototype.findChild,J=i&&c((function(){return 7!=S(I({},"a",{get:function(){return I(this,"a",{value:7}).a}})).a}))?function(t,e,r){var n=E(H,e);n&&delete H[e],I(t,e,r),n&&t!==H&&I(H,e,n)}:I,wrap=function(t){var e=q[t]=S(L.prototype);return e._k=t,e},K=U&&"symbol"==typeof L.iterator?function(t){return"symbol"==typeof t}:function(t){return t instanceof L},Y=function defineProperty(t,e,r){return t===H&&Y(W,e,r),m(t),e=k(e,!0),m(r),o(q,e)?(r.enumerable?(o(t,D)&&t[D][e]&&(t[D][e]=!1),r=S(r,{enumerable:O(0,!1)})):(o(t,D)||I(t,D,O(1,{})),t[D][e]=!0),J(t,e,r)):I(t,e,r)},Q=function defineProperties(t,e){m(t);for(var r,n=y(e=w(e)),o=0,i=n.length;i>o;)Y(t,r=n[o++],e[r]);return t},X=function propertyIsEnumerable(t){var e=$.call(this,t=k(t,!0));return!(this===H&&o(q,t)&&!o(W,t))&&(!(e||!o(this,t)||!o(q,t)||o(this,D)&&this[D][t])||e)},Z=function getOwnPropertyDescriptor(t,e){if(t=w(t),e=k(e,!0),t!==H||!o(q,e)||o(W,e)){var r=E(t,e);return!r||!o(q,e)||o(t,D)&&t[D][e]||(r.enumerable=!0),r}},tt=function getOwnPropertyNames(t){for(var e,r=M(w(t)),n=[],i=0;r.length>i;)o(q,e=r[i++])||e==D||e==s||n.push(e);return n},et=function getOwnPropertySymbols(t){for(var e,r=t===H,n=M(r?W:w(t)),i=[],a=0;n.length>a;)!o(q,e=n[a++])||r&&!o(H,e)||i.push(q[e]);return i};U||(u((L=function Symbol(){if(this instanceof L)throw TypeError("Symbol is not a constructor!");var t=p(arguments.length>0?arguments[0]:void 0),$set=function(e){this===H&&$set.call(W,e),o(this,D)&&o(this[D],t)&&(this[D][t]=!1),J(this,t,O(1,e))};return i&&V&&J(H,t,{configurable:!0,set:$set}),wrap(t)}).prototype,"toString",(function toString(){return this._k})),A.f=Z,P.f=Y,r(8772).f=C.f=tt,r(67410).f=X,T.f=et,i&&!r(36794)&&u(H,"propertyIsEnumerable",X,!0),h.f=function(t){return wrap(v(t))}),a(a.G+a.W+a.F*!U,{Symbol:L});for(var rt="hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),nt=0;rt.length>nt;)v(rt[nt++]);for(var ot=j(v.store),it=0;ot.length>it;)d(ot[it++]);a(a.S+a.F*!U,"Symbol",{for:function(t){return o(B,t+="")?B[t]:B[t]=L(t)},keyFor:function keyFor(t){if(!K(t))throw TypeError(t+" is not a symbol!");for(var e in B)if(B[e]===t)return e},useSetter:function(){V=!0},useSimple:function(){V=!1}}),a(a.S+a.F*!U,"Object",{create:function create(t,e){return void 0===e?S(t):Q(S(t),e)},defineProperty:Y,defineProperties:Q,getOwnPropertyDescriptor:Z,getOwnPropertyNames:tt,getOwnPropertySymbols:et});var at=c((function(){T.f(1)}));a(a.S+a.F*at,"Object",{getOwnPropertySymbols:function getOwnPropertySymbols(t){return T.f(b(t))}}),R&&a(a.S+a.F*(!U||c((function(){var t=L();return"[null]"!=N([t])||"{}"!=N({a:t})||"{}"!=N(Object(t))}))),"JSON",{stringify:function stringify(t){for(var e,r,n=[t],o=1;arguments.length>o;)n.push(arguments[o++]);if(r=e=n[1],(x(e)||void 0!==t)&&!K(t))return g(e)||(e=function(t,e){if("function"==typeof r&&(e=r.call(this,t,e)),!K(e))return e}),n[1]=e,N.apply(R,n)}}),L.prototype[G]||r(62292)(L.prototype,G,L.prototype.valueOf),l(L,"Symbol"),l(Math,"Math",!0),l(n.JSON,"JSON",!0)},23337:(t,e,r)=>{"use strict";var n,o=r(43280),i=r(97647)(0),a=r(19312),u=r(6758),s=r(77995),c=r(92600),f=r(39632),l=r(41081),p=r(41081),v=!o.ActiveXObject&&"ActiveXObject"in o,h="WeakMap",d=u.getWeak,y=Object.isExtensible,g=c.ufstore,wrapper=function(t){return function WeakMap(){return t(this,arguments.length>0?arguments[0]:void 0)}},m={get:function get(t){if(f(t)){var e=d(t);return!0===e?g(l(this,h)).get(t):e?e[this._i]:void 0}},set:function set(t,e){return c.def(l(this,h),t,e)}},x=t.exports=r(70770)(h,wrapper,m,c,!0,!0);p&&v&&(s((n=c.getConstructor(wrapper,h)).prototype,m),u.NEED=!0,i(["delete","has","get","set"],(function(t){var e=x.prototype,r=e[t];a(e,t,(function(e,o){if(f(e)&&!y(e)){this._f||(this._f=new n);var i=this._f[t](e,o);return"set"==t?this:i}return r.call(this,e,o)}))})))},95260:(t,e,r)=>{var n=r(98310),o=r(9480)(!0);n(n.S,"Object",{entries:function entries(t){return o(t)}})},57188:(t,e,r)=>{var n=r(98310),o=r(9480)(!1);n(n.S,"Object",{values:function values(t){return o(t)}})},81522:(t,e,r)=>{"use strict";var n=r(98310),o=r(47208),i=r(43280),a=r(73732),u=r(88747);n(n.P+n.R,"Promise",{finally:function(t){var e=a(this,o.Promise||i.Promise),r="function"==typeof t;return this.then(r?function(r){return u(e,t()).then((function(){return r}))}:t,r?function(r){return u(e,t()).then((function(){throw r}))}:t)}})},25757:(t,e,r)=>{"use strict";var n=r(98310),o=r(88579),i=r(52745);n(n.S,"Promise",{try:function(t){var e=o.f(this),r=i(t);return(r.e?e.reject:e.resolve)(r.v),e.promise}})},87573:(t,e,r)=>{r(31164)("asyncIterator")},97224:(t,e,r)=>{r(31164)("observable")},92797:(t,e,r)=>{r(14689)("WeakMap")},10143:(t,e,r)=>{r(7883)("WeakMap")},74114:(t,e,r)=>{r(84411);for(var n=r(43280),o=r(62292),i=r(79105),a=r(24300)("toStringTag"),u="CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList".split(","),s=0;s<u.length;s++){var c=u[s],f=n[c],l=f&&f.prototype;l&&!l[a]&&o(l,a,c),i[c]=i.Array}},22761:t=>{t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},42094:(t,e,r)=>{var n=r(62190)("unscopables"),o=Array.prototype;null==o[n]&&r(74216)(o,n,{}),t.exports=function(t){o[n][t]=!0}},88492:(t,e,r)=>{"use strict";var n=r(12070)(!0);t.exports=function(t,e,r){return e+(r?n(t,e).length:1)}},6365:(t,e,r)=>{var n=r(67334);t.exports=function(t){if(!n(t))throw TypeError(t+" is not an object!");return t}},59021:(t,e,r)=>{var n=r(15703),o=r(26078),i=r(78615);t.exports=function(t){return function(e,r,a){var u,s=n(e),c=o(s.length),f=i(a,c);if(t&&r!=r){for(;c>f;)if((u=s[f++])!=u)return!0}else for(;c>f;f++)if((t||f in s)&&s[f]===r)return t||f||0;return!t&&-1}}},78309:(t,e,r)=>{var n=r(11528),o=r(8467),i=r(26033),a=r(26078),u=r(63531);t.exports=function(t,e){var r=1==t,s=2==t,c=3==t,f=4==t,l=6==t,p=5==t||l,v=e||u;return function(e,u,h){for(var d,y,g=i(e),m=o(g),x=n(u,h,3),b=a(m.length),w=0,k=r?v(e,b):s?v(e,0):void 0;b>w;w++)if((p||w in m)&&(y=x(d=m[w],w,g),t))if(r)k[w]=y;else if(y)switch(t){case 3:return!0;case 5:return d;case 6:return w;case 2:k.push(d)}else if(f)return!1;return l?-1:c||f?f:k}}},81071:(t,e,r)=>{var n=r(67334),o=r(99141),i=r(62190)("species");t.exports=function(t){var e;return o(t)&&("function"!=typeof(e=t.constructor)||e!==Array&&!o(e.prototype)||(e=void 0),n(e)&&null===(e=e[i])&&(e=void 0)),void 0===e?Array:e}},63531:(t,e,r)=>{var n=r(81071);t.exports=function(t,e){return new(n(t))(e)}},20106:(t,e,r)=>{var n=r(26688),o=r(62190)("toStringTag"),i="Arguments"==n(function(){return arguments}());t.exports=function(t){var e,r,a;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(r=function(t,e){try{return t[e]}catch(t){}}(e=Object(t),o))?r:i?n(e):"Object"==(a=n(e))&&"function"==typeof e.callee?"Arguments":a}},26688:t=>{var e={}.toString;t.exports=function(t){return e.call(t).slice(8,-1)}},60066:t=>{var e=t.exports={version:"2.6.12"};"number"==typeof __e&&(__e=e)},11528:(t,e,r)=>{var n=r(22761);t.exports=function(t,e,r){if(n(t),void 0===e)return t;switch(r){case 1:return function(r){return t.call(e,r)};case 2:return function(r,n){return t.call(e,r,n)};case 3:return function(r,n,o){return t.call(e,r,n,o)}}return function(){return t.apply(e,arguments)}}},61622:t=>{t.exports=function(t){if(null==t)throw TypeError("Can't call method on  "+t);return t}},36628:(t,e,r)=>{t.exports=!r(48625)((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},5050:(t,e,r)=>{var n=r(67334),o=r(38113).document,i=n(o)&&n(o.createElement);t.exports=function(t){return i?o.createElement(t):{}}},33603:t=>{t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},65772:(t,e,r)=>{var n=r(38113),o=r(60066),i=r(74216),a=r(17738),u=r(11528),$export=function(t,e,r){var s,c,f,l,p=t&$export.F,v=t&$export.G,h=t&$export.S,d=t&$export.P,y=t&$export.B,g=v?n:h?n[e]||(n[e]={}):(n[e]||{}).prototype,m=v?o:o[e]||(o[e]={}),x=m.prototype||(m.prototype={});for(s in v&&(r=e),r)f=((c=!p&&g&&void 0!==g[s])?g:r)[s],l=y&&c?u(f,n):d&&"function"==typeof f?u(Function.call,f):f,g&&a(g,s,f,t&$export.U),m[s]!=f&&i(m,s,l),d&&x[s]!=f&&(x[s]=f)};n.core=o,$export.F=1,$export.G=2,$export.S=4,$export.P=8,$export.B=16,$export.W=32,$export.U=64,$export.R=128,t.exports=$export},48625:t=>{t.exports=function(t){try{return!!t()}catch(t){return!0}}},48897:(t,e,r)=>{"use strict";r(25846);var n=r(17738),o=r(74216),i=r(48625),a=r(61622),u=r(62190),s=r(43288),c=u("species"),f=!i((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$<a>")})),l=function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var r="ab".split(t);return 2===r.length&&"a"===r[0]&&"b"===r[1]}();t.exports=function(t,e,r){var p=u(t),v=!i((function(){var e={};return e[p]=function(){return 7},7!=""[t](e)})),h=v?!i((function(){var e=!1,r=/a/;return r.exec=function(){return e=!0,null},"split"===t&&(r.constructor={},r.constructor[c]=function(){return r}),r[p](""),!e})):void 0;if(!v||!h||"replace"===t&&!f||"split"===t&&!l){var d=/./[p],y=r(a,p,""[t],(function maybeCallNative(t,e,r,n,o){return e.exec===s?v&&!o?{done:!0,value:d.call(e,r,n)}:{done:!0,value:t.call(r,e,n)}:{done:!1}})),g=y[0],m=y[1];n(String.prototype,t,g),o(RegExp.prototype,p,2==e?function(t,e){return m.call(t,this,e)}:function(t){return m.call(t,this)})}}},74859:(t,e,r)=>{"use strict";var n=r(6365);t.exports=function(){var t=n(this),e="";return t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.unicode&&(e+="u"),t.sticky&&(e+="y"),e}},20646:(t,e,r)=>{t.exports=r(8655)("native-function-to-string",Function.toString)},38113:t=>{var e=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=e)},54040:t=>{var e={}.hasOwnProperty;t.exports=function(t,r){return e.call(t,r)}},74216:(t,e,r)=>{var n=r(98558),o=r(36061);t.exports=r(36628)?function(t,e,r){return n.f(t,e,o(1,r))}:function(t,e,r){return t[e]=r,t}},8954:(t,e,r)=>{var n=r(38113).document;t.exports=n&&n.documentElement},5100:(t,e,r)=>{t.exports=!r(36628)&&!r(48625)((function(){return 7!=Object.defineProperty(r(5050)("div"),"a",{get:function(){return 7}}).a}))},8467:(t,e,r)=>{var n=r(26688);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==n(t)?t.split(""):Object(t)}},99141:(t,e,r)=>{var n=r(26688);t.exports=Array.isArray||function isArray(t){return"Array"==n(t)}},67334:t=>{t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},94587:(t,e,r)=>{var n=r(67334),o=r(26688),i=r(62190)("match");t.exports=function(t){var e;return n(t)&&(void 0!==(e=t[i])?!!e:"RegExp"==o(t))}},46445:(t,e,r)=>{"use strict";var n=r(82897),o=r(36061),i=r(55727),a={};r(74216)(a,r(62190)("iterator"),(function(){return this})),t.exports=function(t,e,r){t.prototype=n(a,{next:o(1,r)}),i(t,e+" Iterator")}},61195:(t,e,r)=>{"use strict";var n=r(81422),o=r(65772),i=r(17738),a=r(74216),u=r(23988),s=r(46445),c=r(55727),f=r(19002),l=r(62190)("iterator"),p=!([].keys&&"next"in[].keys()),v="keys",h="values",returnThis=function(){return this};t.exports=function(t,e,r,d,y,g,m){s(r,e,d);var x,b,w,getMethod=function(t){if(!p&&t in C)return C[t];switch(t){case v:return function keys(){return new r(this,t)};case h:return function values(){return new r(this,t)}}return function entries(){return new r(this,t)}},k=e+" Iterator",O=y==h,S=!1,C=t.prototype,A=C[l]||C["@@iterator"]||y&&C[y],T=A||getMethod(y),P=y?O?getMethod("entries"):T:void 0,j="Array"==e&&C.entries||A;if(j&&(w=f(j.call(new t)))!==Object.prototype&&w.next&&(c(w,k,!0),n||"function"==typeof w[l]||a(w,l,returnThis)),O&&A&&A.name!==h&&(S=!0,T=function values(){return A.call(this)}),n&&!m||!p&&!S&&C[l]||a(C,l,T),u[e]=T,u[k]=returnThis,y)if(x={values:O?T:getMethod(h),keys:g?T:getMethod(v),entries:P},m)for(b in x)b in C||i(C,b,x[b]);else o(o.P+o.F*(p||S),e,x);return x}},35038:t=>{t.exports=function(t,e){return{value:e,done:!!t}}},23988:t=>{t.exports={}},81422:t=>{t.exports=!1},82897:(t,e,r)=>{var n=r(6365),o=r(7331),i=r(33603),a=r(28034)("IE_PROTO"),Empty=function(){},createDict=function(){var t,e=r(5050)("iframe"),n=i.length;for(e.style.display="none",r(8954).appendChild(e),e.src="javascript:",(t=e.contentWindow.document).open(),t.write("<script>document.F=Object<\/script>"),t.close(),createDict=t.F;n--;)delete createDict.prototype[i[n]];return createDict()};t.exports=Object.create||function create(t,e){var r;return null!==t?(Empty.prototype=n(t),r=new Empty,Empty.prototype=null,r[a]=t):r=createDict(),void 0===e?r:o(r,e)}},98558:(t,e,r)=>{var n=r(6365),o=r(5100),i=r(31382),a=Object.defineProperty;e.f=r(36628)?Object.defineProperty:function defineProperty(t,e,r){if(n(t),e=i(e,!0),n(r),o)try{return a(t,e,r)}catch(t){}if("get"in r||"set"in r)throw TypeError("Accessors not supported!");return"value"in r&&(t[e]=r.value),t}},7331:(t,e,r)=>{var n=r(98558),o=r(6365),i=r(42912);t.exports=r(36628)?Object.defineProperties:function defineProperties(t,e){o(t);for(var r,a=i(e),u=a.length,s=0;u>s;)n.f(t,r=a[s++],e[r]);return t}},19002:(t,e,r)=>{var n=r(54040),o=r(26033),i=r(28034)("IE_PROTO"),a=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=o(t),n(t,i)?t[i]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?a:null}},75547:(t,e,r)=>{var n=r(54040),o=r(15703),i=r(59021)(!1),a=r(28034)("IE_PROTO");t.exports=function(t,e){var r,u=o(t),s=0,c=[];for(r in u)r!=a&&n(u,r)&&c.push(r);for(;e.length>s;)n(u,r=e[s++])&&(~i(c,r)||c.push(r));return c}},42912:(t,e,r)=>{var n=r(75547),o=r(33603);t.exports=Object.keys||function keys(t){return n(t,o)}},36061:t=>{t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},17738:(t,e,r)=>{var n=r(38113),o=r(74216),i=r(54040),a=r(25078)("src"),u=r(20646),s="toString",c=(""+u).split(s);r(60066).inspectSource=function(t){return u.call(t)},(t.exports=function(t,e,r,u){var s="function"==typeof r;s&&(i(r,"name")||o(r,"name",e)),t[e]!==r&&(s&&(i(r,a)||o(r,a,t[e]?""+t[e]:c.join(String(e)))),t===n?t[e]=r:u?t[e]?t[e]=r:o(t,e,r):(delete t[e],o(t,e,r)))})(Function.prototype,s,(function toString(){return"function"==typeof this&&this[a]||u.call(this)}))},62404:(t,e,r)=>{"use strict";var n=r(20106),o=RegExp.prototype.exec;t.exports=function(t,e){var r=t.exec;if("function"==typeof r){var i=r.call(t,e);if("object"!=typeof i)throw new TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==n(t))throw new TypeError("RegExp#exec called on incompatible receiver");return o.call(t,e)}},43288:(t,e,r)=>{"use strict";var n,o,i=r(74859),a=RegExp.prototype.exec,u=String.prototype.replace,s=a,c=(n=/a/,o=/b*/g,a.call(n,"a"),a.call(o,"a"),0!==n.lastIndex||0!==o.lastIndex),f=void 0!==/()??/.exec("")[1];(c||f)&&(s=function exec(t){var e,r,n,o,s=this;return f&&(r=new RegExp("^"+s.source+"$(?!\\s)",i.call(s))),c&&(e=s.lastIndex),n=a.call(s,t),c&&n&&(s.lastIndex=s.global?n.index+n[0].length:e),f&&n&&n.length>1&&u.call(n[0],r,(function(){for(o=1;o<arguments.length-2;o++)void 0===arguments[o]&&(n[o]=void 0)})),n}),t.exports=s},55727:(t,e,r)=>{var n=r(98558).f,o=r(54040),i=r(62190)("toStringTag");t.exports=function(t,e,r){t&&!o(t=r?t:t.prototype,i)&&n(t,i,{configurable:!0,value:e})}},28034:(t,e,r)=>{var n=r(8655)("keys"),o=r(25078);t.exports=function(t){return n[t]||(n[t]=o(t))}},8655:(t,e,r)=>{var n=r(60066),o=r(38113),i="__core-js_shared__",a=o[i]||(o[i]={});(t.exports=function(t,e){return a[t]||(a[t]=void 0!==e?e:{})})("versions",[]).push({version:n.version,mode:r(81422)?"pure":"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})},11987:(t,e,r)=>{var n=r(6365),o=r(22761),i=r(62190)("species");t.exports=function(t,e){var r,a=n(t).constructor;return void 0===a||null==(r=n(a)[i])?e:o(r)}},10225:(t,e,r)=>{"use strict";var n=r(48625);t.exports=function(t,e){return!!t&&n((function(){e?t.call(null,(function(){}),1):t.call(null)}))}},12070:(t,e,r)=>{var n=r(3338),o=r(61622);t.exports=function(t){return function(e,r){var i,a,u=String(o(e)),s=n(r),c=u.length;return s<0||s>=c?t?"":void 0:(i=u.charCodeAt(s))<55296||i>56319||s+1===c||(a=u.charCodeAt(s+1))<56320||a>57343?t?u.charAt(s):i:t?u.slice(s,s+2):a-56320+(i-55296<<10)+65536}}},78615:(t,e,r)=>{var n=r(3338),o=Math.max,i=Math.min;t.exports=function(t,e){return(t=n(t))<0?o(t+e,0):i(t,e)}},3338:t=>{var e=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:e)(t)}},15703:(t,e,r)=>{var n=r(8467),o=r(61622);t.exports=function(t){return n(o(t))}},26078:(t,e,r)=>{var n=r(3338),o=Math.min;t.exports=function(t){return t>0?o(n(t),9007199254740991):0}},26033:(t,e,r)=>{var n=r(61622);t.exports=function(t){return Object(n(t))}},31382:(t,e,r)=>{var n=r(67334);t.exports=function(t,e){if(!n(t))return t;var r,o;if(e&&"function"==typeof(r=t.toString)&&!n(o=r.call(t)))return o;if("function"==typeof(r=t.valueOf)&&!n(o=r.call(t)))return o;if(!e&&"function"==typeof(r=t.toString)&&!n(o=r.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},25078:t=>{var e=0,r=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++e+r).toString(36))}},62190:(t,e,r)=>{var n=r(8655)("wks"),o=r(25078),i=r(38113).Symbol,a="function"==typeof i;(t.exports=function(t){return n[t]||(n[t]=a&&i[t]||(a?i:o)("Symbol."+t))}).store=n},64434:(t,e,r)=>{"use strict";var n=r(65772),o=r(78309)(2);n(n.P+n.F*!r(10225)([].filter,!0),"Array",{filter:function filter(t){return o(this,t,arguments[1])}})},12897:(t,e,r)=>{"use strict";var n=r(42094),o=r(35038),i=r(23988),a=r(15703);t.exports=r(61195)(Array,"Array",(function(t,e){this._t=a(t),this._i=0,this._k=e}),(function(){var t=this._t,e=this._k,r=this._i++;return!t||r>=t.length?(this._t=void 0,o(1)):o(0,"keys"==e?r:"values"==e?t[r]:[r,t[r]])}),"values"),i.Arguments=i.Array,n("keys"),n("values"),n("entries")},99745:(t,e,r)=>{var n=r(98558).f,o=Function.prototype,i=/^\s*function ([^ (]*)/,a="name";a in o||r(36628)&&n(o,a,{configurable:!0,get:function(){try{return(""+this).match(i)[1]}catch(t){return""}}})},76139:(t,e,r)=>{"use strict";var n=r(20106),o={};o[r(62190)("toStringTag")]="z",o+""!="[object z]"&&r(17738)(Object.prototype,"toString",(function toString(){return"[object "+n(this)+"]"}),!0)},25846:(t,e,r)=>{"use strict";var n=r(43288);r(65772)({target:"RegExp",proto:!0,forced:n!==/./.exec},{exec:n})},84208:(t,e,r)=>{"use strict";var n=r(6365),o=r(26033),i=r(26078),a=r(3338),u=r(88492),s=r(62404),c=Math.max,f=Math.min,l=Math.floor,p=/\$([$&`']|\d\d?|<[^>]*>)/g,v=/\$([$&`']|\d\d?)/g;r(48897)("replace",2,(function(t,e,r,h){return[function replace(n,o){var i=t(this),a=null==n?void 0:n[e];return void 0!==a?a.call(n,i,o):r.call(String(i),n,o)},function(t,e){var o=h(r,t,this,e);if(o.done)return o.value;var l=n(t),p=String(this),v="function"==typeof e;v||(e=String(e));var d=l.global;if(d){var y=l.unicode;l.lastIndex=0}for(var g=[];;){var m=s(l,p);if(null===m)break;if(g.push(m),!d)break;""===String(m[0])&&(l.lastIndex=u(p,i(l.lastIndex),y))}for(var x,b="",w=0,k=0;k<g.length;k++){m=g[k];for(var O=String(m[0]),S=c(f(a(m.index),p.length),0),C=[],A=1;A<m.length;A++)C.push(void 0===(x=m[A])?x:String(x));var T=m.groups;if(v){var P=[O].concat(C,S,p);void 0!==T&&P.push(T);var j=String(e.apply(void 0,P))}else j=getSubstitution(O,p,S,C,T,e);S>=w&&(b+=p.slice(w,S)+j,w=S+O.length)}return b+p.slice(w)}];function getSubstitution(t,e,n,i,a,u){var s=n+t.length,c=i.length,f=v;return void 0!==a&&(a=o(a),f=p),r.call(u,f,(function(r,o){var u;switch(o.charAt(0)){case"$":return"$";case"&":return t;case"`":return e.slice(0,n);case"'":return e.slice(s);case"<":u=a[o.slice(1,-1)];break;default:var f=+o;if(0===f)return r;if(f>c){var p=l(f/10);return 0===p?r:p<=c?void 0===i[p-1]?o.charAt(1):i[p-1]+o.charAt(1):r}u=i[f-1]}return void 0===u?"":u}))}}))},99236:(t,e,r)=>{"use strict";var n=r(94587),o=r(6365),i=r(11987),a=r(88492),u=r(26078),s=r(62404),c=r(43288),f=r(48625),l=Math.min,p=[].push,v=4294967295,h=!f((function(){RegExp(v,"y")}));r(48897)("split",2,(function(t,e,r,f){var d;return d="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,e){var o=String(this);if(void 0===t&&0===e)return[];if(!n(t))return r.call(o,t,e);for(var i,a,u,s=[],f=(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":""),l=0,h=void 0===e?v:e>>>0,d=new RegExp(t.source,f+"g");(i=c.call(d,o))&&!((a=d.lastIndex)>l&&(s.push(o.slice(l,i.index)),i.length>1&&i.index<o.length&&p.apply(s,i.slice(1)),u=i[0].length,l=a,s.length>=h));)d.lastIndex===i.index&&d.lastIndex++;return l===o.length?!u&&d.test("")||s.push(""):s.push(o.slice(l)),s.length>h?s.slice(0,h):s}:"0".split(void 0,0).length?function(t,e){return void 0===t&&0===e?[]:r.call(this,t,e)}:r,[function split(r,n){var o=t(this),i=null==r?void 0:r[e];return void 0!==i?i.call(r,o,n):d.call(String(o),r,n)},function(t,e){var n=f(d,t,this,e,d!==r);if(n.done)return n.value;var c=o(t),p=String(this),y=i(c,RegExp),g=c.unicode,m=(c.ignoreCase?"i":"")+(c.multiline?"m":"")+(c.unicode?"u":"")+(h?"y":"g"),x=new y(h?c:"^(?:"+c.source+")",m),b=void 0===e?v:e>>>0;if(0===b)return[];if(0===p.length)return null===s(x,p)?[p]:[];for(var w=0,k=0,O=[];k<p.length;){x.lastIndex=h?k:0;var S,C=s(x,h?p:p.slice(k));if(null===C||(S=l(u(x.lastIndex+(h?0:k)),p.length))===w)k=a(p,k,g);else{if(O.push(p.slice(w,k)),O.length===b)return O;for(var A=1;A<=C.length-1;A++)if(O.push(C[A]),O.length===b)return O;k=w=S}}return O.push(p.slice(w)),O}]}))},37472:(t,e,r)=>{"use strict";var n=r(12070)(!0);r(61195)(String,"String",(function(t){this._t=String(t),this._i=0}),(function(){var t,e=this._t,r=this._i;return r>=e.length?{value:void 0,done:!0}:(t=n(e,r),this._i+=t.length,{value:t,done:!1})}))},93085:(t,e,r)=>{for(var n=r(12897),o=r(42912),i=r(17738),a=r(38113),u=r(74216),s=r(23988),c=r(62190),f=c("iterator"),l=c("toStringTag"),p=s.Array,v={CSSRuleList:!0,CSSStyleDeclaration:!1,CSSValueList:!1,ClientRectList:!1,DOMRectList:!1,DOMStringList:!1,DOMTokenList:!0,DataTransferItemList:!1,FileList:!1,HTMLAllCollection:!1,HTMLCollection:!1,HTMLFormElement:!1,HTMLSelectElement:!1,MediaList:!0,MimeTypeArray:!1,NamedNodeMap:!1,NodeList:!0,PaintRequestList:!1,Plugin:!1,PluginArray:!1,SVGLengthList:!1,SVGNumberList:!1,SVGPathSegList:!1,SVGPointList:!1,SVGStringList:!1,SVGTransformList:!1,SourceBufferList:!1,StyleSheetList:!0,TextTrackCueList:!1,TextTrackList:!1,TouchList:!1},h=o(v),d=0;d<h.length;d++){var y,g=h[d],m=v[g],x=a[g],b=x&&x.prototype;if(b&&(b[f]||u(b,f,p),b[l]||u(b,l,g),s[g]=p,m))for(y in n)b[y]||i(b,y,n[y],!0)}},86248:t=>{var e=function(t){"use strict";var e,r=Object.prototype,n=r.hasOwnProperty,o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",u=o.toStringTag||"@@toStringTag";function define(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{define({},"")}catch(t){define=function(t,e,r){return t[e]=r}}function wrap(t,e,r,n){var o=e&&e.prototype instanceof Generator?e:Generator,i=Object.create(o.prototype),a=new Context(n||[]);return i._invoke=function makeInvokeMethod(t,e,r){var n=s;return function invoke(o,i){if(n===f)throw new Error("Generator is already running");if(n===l){if("throw"===o)throw i;return doneResult()}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var u=maybeInvokeDelegate(a,r);if(u){if(u===p)continue;return u}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if(n===s)throw n=l,r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n=f;var v=tryCatch(t,e,r);if("normal"===v.type){if(n=r.done?l:c,v.arg===p)continue;return{value:v.arg,done:r.done}}"throw"===v.type&&(n=l,r.method="throw",r.arg=v.arg)}}}(t,r,a),i}function tryCatch(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}t.wrap=wrap;var s="suspendedStart",c="suspendedYield",f="executing",l="completed",p={};function Generator(){}function GeneratorFunction(){}function GeneratorFunctionPrototype(){}var v={};v[i]=function(){return this};var h=Object.getPrototypeOf,d=h&&h(h(values([])));d&&d!==r&&n.call(d,i)&&(v=d);var y=GeneratorFunctionPrototype.prototype=Generator.prototype=Object.create(v);function defineIteratorMethods(t){["next","throw","return"].forEach((function(e){define(t,e,(function(t){return this._invoke(e,t)}))}))}function AsyncIterator(t,e){function invoke(r,o,i,a){var u=tryCatch(t[r],t,o);if("throw"!==u.type){var s=u.arg,c=s.value;return c&&"object"==typeof c&&n.call(c,"__await")?e.resolve(c.__await).then((function(t){invoke("next",t,i,a)}),(function(t){invoke("throw",t,i,a)})):e.resolve(c).then((function(t){s.value=t,i(s)}),(function(t){return invoke("throw",t,i,a)}))}a(u.arg)}var r;this._invoke=function enqueue(t,n){function callInvokeWithMethodAndArg(){return new e((function(e,r){invoke(t,n,e,r)}))}return r=r?r.then(callInvokeWithMethodAndArg,callInvokeWithMethodAndArg):callInvokeWithMethodAndArg()}}function maybeInvokeDelegate(t,r){var n=t.iterator[r.method];if(n===e){if(r.delegate=null,"throw"===r.method){if(t.iterator.return&&(r.method="return",r.arg=e,maybeInvokeDelegate(t,r),"throw"===r.method))return p;r.method="throw",r.arg=new TypeError("The iterator does not provide a 'throw' method")}return p}var o=tryCatch(n,t.iterator,r.arg);if("throw"===o.type)return r.method="throw",r.arg=o.arg,r.delegate=null,p;var i=o.arg;return i?i.done?(r[t.resultName]=i.value,r.next=t.nextLoc,"return"!==r.method&&(r.method="next",r.arg=e),r.delegate=null,p):i:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,p)}function pushTryEntry(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function resetTryEntry(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function Context(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(pushTryEntry,this),this.reset(!0)}function values(t){if(t){var r=t[i];if(r)return r.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var o=-1,a=function next(){for(;++o<t.length;)if(n.call(t,o))return next.value=t[o],next.done=!1,next;return next.value=e,next.done=!0,next};return a.next=a}}return{next:doneResult}}function doneResult(){return{value:e,done:!0}}return GeneratorFunction.prototype=y.constructor=GeneratorFunctionPrototype,GeneratorFunctionPrototype.constructor=GeneratorFunction,GeneratorFunction.displayName=define(GeneratorFunctionPrototype,u,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===GeneratorFunction||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,GeneratorFunctionPrototype):(t.__proto__=GeneratorFunctionPrototype,define(t,u,"GeneratorFunction")),t.prototype=Object.create(y),t},t.awrap=function(t){return{__await:t}},defineIteratorMethods(AsyncIterator.prototype),AsyncIterator.prototype[a]=function(){return this},t.AsyncIterator=AsyncIterator,t.async=function(e,r,n,o,i){void 0===i&&(i=Promise);var a=new AsyncIterator(wrap(e,r,n,o),i);return t.isGeneratorFunction(r)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},defineIteratorMethods(y),define(y,u,"Generator"),y[i]=function(){return this},y.toString=function(){return"[object Generator]"},t.keys=function(t){var e=[];for(var r in t)e.push(r);return e.reverse(),function next(){for(;e.length;){var r=e.pop();if(r in t)return next.value=r,next.done=!1,next}return next.done=!0,next}},t.values=values,Context.prototype={constructor:Context,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(resetTryEntry),!t)for(var r in this)"t"===r.charAt(0)&&n.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=e)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var r=this;function handle(n,o){return a.type="throw",a.arg=t,r.next=n,o&&(r.method="next",r.arg=e),!!o}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return handle("end");if(i.tryLoc<=this.prev){var u=n.call(i,"catchLoc"),s=n.call(i,"finallyLoc");if(u&&s){if(this.prev<i.catchLoc)return handle(i.catchLoc,!0);if(this.prev<i.finallyLoc)return handle(i.finallyLoc)}else if(u){if(this.prev<i.catchLoc)return handle(i.catchLoc,!0)}else{if(!s)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return handle(i.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,p):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),p},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),resetTryEntry(r),p}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;resetTryEntry(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,r,n){return this.delegate={iterator:values(t),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=e),p}},t}(t.exports);try{regeneratorRuntime=e}catch(t){Function("r","regeneratorRuntime = r")(e)}}},e={};function __webpack_require__(r){var n=e[r];if(void 0!==n)return n.exports;var o=e[r]={exports:{}};return t[r](o,o.exports,__webpack_require__),o.exports}(()=>{"use strict";var t=__webpack_require__(67971),e=t(__webpack_require__(11959)),r=t(__webpack_require__(39041)),n=t(__webpack_require__(18042)),o=t(__webpack_require__(21752)),i=function(){function AppLoader(){(0,e.default)(this,AppLoader),(0,n.default)(this,"selector","a.elementor-app-link, .elementor-app-link .ab-item"),$e.components.register(new o.default),window.addEventListener("DOMContentLoaded",this.onLoad.bind(this))}return(0,r.default)(AppLoader,[{key:"onLoad",value:function onLoad(){var t=document.querySelectorAll(this.selector);t.length&&t.forEach((function(t){t.addEventListener("click",(function(e){e.preventDefault(),$e.run("app/open",{url:t.href})})),t.addEventListener("mouseenter",(function(){$e.run("app/load",{url:t.href})}))}))}}]),AppLoader}();window.elementorAppLoader=new i})()})();assets/js/toggle.5e8aae8d1c1e897e9b4e.bundle.js000064400000016506151327220410014634 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(self["webpackChunkelementor"] = self["webpackChunkelementor"] || []).push([["toggle"],{

/***/ "../assets/dev/js/frontend/handlers/base-tabs.js":
/*!*******************************************************!*\
  !*** ../assets/dev/js/frontend/handlers/base-tabs.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

class baseTabs extends elementorModules.frontend.handlers.Base {
  getDefaultSettings() {
    return {
      selectors: {
        tablist: '[role="tablist"]',
        tabTitle: '.elementor-tab-title',
        tabContent: '.elementor-tab-content'
      },
      classes: {
        active: 'elementor-active'
      },
      showTabFn: 'show',
      hideTabFn: 'hide',
      toggleSelf: true,
      hidePrevious: true,
      autoExpand: true,
      keyDirection: {
        ArrowLeft: elementorFrontendConfig.is_rtl ? 1 : -1,
        ArrowUp: -1,
        ArrowRight: elementorFrontendConfig.is_rtl ? -1 : 1,
        ArrowDown: 1
      }
    };
  }

  getDefaultElements() {
    const selectors = this.getSettings('selectors');
    return {
      $tabTitles: this.findElement(selectors.tabTitle),
      $tabContents: this.findElement(selectors.tabContent)
    };
  }

  activateDefaultTab() {
    const settings = this.getSettings();

    if (!settings.autoExpand || 'editor' === settings.autoExpand && !this.isEdit) {
      return;
    }

    const defaultActiveTab = this.getEditSettings('activeItemIndex') || 1,
          originalToggleMethods = {
      showTabFn: settings.showTabFn,
      hideTabFn: settings.hideTabFn
    }; // Toggle tabs without animation to avoid jumping

    this.setSettings({
      showTabFn: 'show',
      hideTabFn: 'hide'
    });
    this.changeActiveTab(defaultActiveTab); // Return back original toggle effects

    this.setSettings(originalToggleMethods);
  }

  handleKeyboardNavigation(event) {
    const tab = event.currentTarget,
          $tabList = jQuery(tab.closest(this.getSettings('selectors').tablist)),
          $tabs = $tabList.find(this.getSettings('selectors').tabTitle),
          isVertical = 'vertical' === $tabList.attr('aria-orientation');

    switch (event.key) {
      case 'ArrowLeft':
      case 'ArrowRight':
        if (isVertical) {
          return;
        }

        break;

      case 'ArrowUp':
      case 'ArrowDown':
        if (!isVertical) {
          return;
        }

        event.preventDefault();
        break;

      case 'Home':
        event.preventDefault();
        $tabs.first().focus();
        return;

      case 'End':
        event.preventDefault();
        $tabs.last().focus();
        return;

      default:
        return;
    }

    const tabIndex = tab.getAttribute('data-tab') - 1,
          direction = this.getSettings('keyDirection')[event.key],
          nextTab = $tabs[tabIndex + direction];

    if (nextTab) {
      nextTab.focus();
    } else if (-1 === tabIndex + direction) {
      $tabs.last().focus();
    } else {
      $tabs.first().focus();
    }
  }

  deactivateActiveTab(tabIndex) {
    const settings = this.getSettings(),
          activeClass = settings.classes.active,
          activeFilter = tabIndex ? '[data-tab="' + tabIndex + '"]' : '.' + activeClass,
          $activeTitle = this.elements.$tabTitles.filter(activeFilter),
          $activeContent = this.elements.$tabContents.filter(activeFilter);
    $activeTitle.add($activeContent).removeClass(activeClass);
    $activeTitle.attr({
      tabindex: '-1',
      'aria-selected': 'false',
      'aria-expanded': 'false'
    });
    $activeContent[settings.hideTabFn]();
    $activeContent.attr('hidden', 'hidden');
  }

  activateTab(tabIndex) {
    const settings = this.getSettings(),
          activeClass = settings.classes.active,
          $requestedTitle = this.elements.$tabTitles.filter('[data-tab="' + tabIndex + '"]'),
          $requestedContent = this.elements.$tabContents.filter('[data-tab="' + tabIndex + '"]'),
          animationDuration = 'show' === settings.showTabFn ? 0 : 400;
    $requestedTitle.add($requestedContent).addClass(activeClass);
    $requestedTitle.attr({
      tabindex: '0',
      'aria-selected': 'true',
      'aria-expanded': 'true'
    });
    $requestedContent[settings.showTabFn](animationDuration, () => elementorFrontend.elements.$window.trigger('resize'));
    $requestedContent.removeAttr('hidden');
  }

  isActiveTab(tabIndex) {
    return this.elements.$tabTitles.filter('[data-tab="' + tabIndex + '"]').hasClass(this.getSettings('classes.active'));
  }

  bindEvents() {
    this.elements.$tabTitles.on({
      keydown: event => {
        // Support for old markup that includes an `<a>` tag in the tab
        if (jQuery(event.target).is('a') && `Enter` === event.key) {
          event.preventDefault();
        } // We listen to keydowon event for these keys in order to prevent undesired page scrolling


        if (['End', 'Home', 'ArrowUp', 'ArrowDown'].includes(event.key)) {
          this.handleKeyboardNavigation(event);
        }
      },
      keyup: event => {
        switch (event.key) {
          case 'ArrowLeft':
          case 'ArrowRight':
            this.handleKeyboardNavigation(event);
            break;

          case 'Enter':
          case 'Space':
            event.preventDefault();
            this.changeActiveTab(event.currentTarget.getAttribute('data-tab'));
            break;
        }
      },
      click: event => {
        event.preventDefault();
        this.changeActiveTab(event.currentTarget.getAttribute('data-tab'));
      }
    });
  }

  onInit(...args) {
    super.onInit(...args);
    this.activateDefaultTab();
  }

  onEditSettingsChange(propertyName) {
    if ('activeItemIndex' === propertyName) {
      this.activateDefaultTab();
    }
  }

  changeActiveTab(tabIndex) {
    const isActiveTab = this.isActiveTab(tabIndex),
          settings = this.getSettings();

    if ((settings.toggleSelf || !isActiveTab) && settings.hidePrevious) {
      this.deactivateActiveTab();
    }

    if (!settings.hidePrevious && isActiveTab) {
      this.deactivateActiveTab(tabIndex);
    }

    if (!isActiveTab) {
      this.activateTab(tabIndex);
    }
  }

}

exports.default = baseTabs;

/***/ }),

/***/ "../assets/dev/js/frontend/handlers/toggle.js":
/*!****************************************************!*\
  !*** ../assets/dev/js/frontend/handlers/toggle.js ***!
  \****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");

Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

var _baseTabs = _interopRequireDefault(__webpack_require__(/*! ./base-tabs */ "../assets/dev/js/frontend/handlers/base-tabs.js"));

class Toggle extends _baseTabs.default {
  getDefaultSettings() {
    const defaultSettings = super.getDefaultSettings();
    return { ...defaultSettings,
      showTabFn: 'slideDown',
      hideTabFn: 'slideUp',
      hidePrevious: false,
      autoExpand: 'editor'
    };
  }

}

exports.default = Toggle;

/***/ })

}]);
//# sourceMappingURL=toggle.5e8aae8d1c1e897e9b4e.bundle.js.mapassets/js/frontend.js000064400000253366151327220410010653 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(self["webpackChunkelementor"] = self["webpackChunkelementor"] || []).push([["frontend"],{

/***/ "../assets/dev/js/frontend/documents-manager.js":
/*!******************************************************!*\
  !*** ../assets/dev/js/frontend/documents-manager.js ***!
  \******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");

Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

var _document = _interopRequireDefault(__webpack_require__(/*! ./document */ "../assets/dev/js/frontend/document.js"));

class _default extends elementorModules.ViewModule {
  constructor(...args) {
    super(...args);
    this.documents = {};
    this.initDocumentClasses();
    this.attachDocumentsClasses();
  }

  getDefaultSettings() {
    return {
      selectors: {
        document: '.elementor'
      }
    };
  }

  getDefaultElements() {
    const selectors = this.getSettings('selectors');
    return {
      $documents: jQuery(selectors.document)
    };
  }

  initDocumentClasses() {
    this.documentClasses = {
      base: _document.default
    };
    elementorFrontend.hooks.doAction('elementor/frontend/documents-manager/init-classes', this);
  }

  addDocumentClass(documentType, documentClass) {
    this.documentClasses[documentType] = documentClass;
  }

  attachDocumentsClasses() {
    this.elements.$documents.each((index, document) => this.attachDocumentClass(jQuery(document)));
  }

  attachDocumentClass($document) {
    const documentData = $document.data(),
          documentID = documentData.elementorId,
          documentType = documentData.elementorType,
          DocumentClass = this.documentClasses[documentType] || this.documentClasses.base;
    this.documents[documentID] = new DocumentClass({
      $element: $document,
      id: documentID
    });
  }

}

exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/frontend/elements-handlers-manager.js":
/*!**************************************************************!*\
  !*** ../assets/dev/js/frontend/elements-handlers-manager.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");

var _global = _interopRequireDefault(__webpack_require__(/*! ./handlers/global */ "../assets/dev/js/frontend/handlers/global.js"));

var _section = _interopRequireDefault(__webpack_require__(/*! ./handlers/section/section */ "../assets/dev/js/frontend/handlers/section/section.js"));

var _column = _interopRequireDefault(__webpack_require__(/*! ./handlers/column */ "../assets/dev/js/frontend/handlers/column.js"));

module.exports = function ($) {
  const handlersInstances = {};
  this.elementsHandlers = {
    'accordion.default': () => __webpack_require__.e(/*! import() | accordion */ "accordion").then(__webpack_require__.bind(__webpack_require__, /*! ./handlers/accordion */ "../assets/dev/js/frontend/handlers/accordion.js")),
    'alert.default': () => __webpack_require__.e(/*! import() | alert */ "alert").then(__webpack_require__.bind(__webpack_require__, /*! ./handlers/alert */ "../assets/dev/js/frontend/handlers/alert.js")),
    'counter.default': () => __webpack_require__.e(/*! import() | counter */ "counter").then(__webpack_require__.bind(__webpack_require__, /*! ./handlers/counter */ "../assets/dev/js/frontend/handlers/counter.js")),
    'progress.default': () => __webpack_require__.e(/*! import() | progress */ "progress").then(__webpack_require__.bind(__webpack_require__, /*! ./handlers/progress */ "../assets/dev/js/frontend/handlers/progress.js")),
    'tabs.default': () => __webpack_require__.e(/*! import() | tabs */ "tabs").then(__webpack_require__.bind(__webpack_require__, /*! ./handlers/tabs */ "../assets/dev/js/frontend/handlers/tabs.js")),
    'toggle.default': () => __webpack_require__.e(/*! import() | toggle */ "toggle").then(__webpack_require__.bind(__webpack_require__, /*! ./handlers/toggle */ "../assets/dev/js/frontend/handlers/toggle.js")),
    'video.default': () => __webpack_require__.e(/*! import() | video */ "video").then(__webpack_require__.bind(__webpack_require__, /*! ./handlers/video */ "../assets/dev/js/frontend/handlers/video.js")),
    'image-carousel.default': () => __webpack_require__.e(/*! import() | image-carousel */ "image-carousel").then(__webpack_require__.bind(__webpack_require__, /*! ./handlers/image-carousel */ "../assets/dev/js/frontend/handlers/image-carousel.js")),
    'text-editor.default': () => __webpack_require__.e(/*! import() | text-editor */ "text-editor").then(__webpack_require__.bind(__webpack_require__, /*! ./handlers/text-editor */ "../assets/dev/js/frontend/handlers/text-editor.js")),
    'wp-widget-media_audio.default': () => __webpack_require__.e(/*! import() | wp-audio */ "wp-audio").then(__webpack_require__.bind(__webpack_require__, /*! ./handlers/wp-audio */ "../assets/dev/js/frontend/handlers/wp-audio.js"))
  };

  const addGlobalHandlers = () => elementorFrontend.hooks.addAction('frontend/element_ready/global', _global.default);

  const addElementsHandlers = () => {
    this.elementsHandlers.section = _section.default;
    this.elementsHandlers.column = _column.default;
    $.each(this.elementsHandlers, (elementName, Handlers) => {
      const elementData = elementName.split('.');
      elementName = elementData[0];
      const skin = elementData[1] || null;
      this.attachHandler(elementName, Handlers, skin);
    });
  };

  const isClassHandler = Handler => {
    var _Handler$prototype;

    return (_Handler$prototype = Handler.prototype) === null || _Handler$prototype === void 0 ? void 0 : _Handler$prototype.getUniqueHandlerID;
  };

  const addHandlerWithHook = (elementName, Handler, skin = 'default') => {
    skin = skin ? '.' + skin : '';
    elementorFrontend.hooks.addAction(`frontend/element_ready/${elementName}${skin}`, $element => {
      if (isClassHandler(Handler)) {
        this.addHandler(Handler, {
          $element
        }, true);
      } else {
        const handlerValue = Handler();

        if (handlerValue instanceof Promise) {
          handlerValue.then(({
            default: dynamicHandler
          }) => {
            this.addHandler(dynamicHandler, {
              $element
            }, true);
          });
        } else {
          this.addHandler(handlerValue, {
            $element
          }, true);
        }
      }
    });
  };

  this.addHandler = function (HandlerClass, options) {
    const elementID = options.$element.data('model-cid');
    let handlerID; // If element is in edit mode

    if (elementID) {
      handlerID = HandlerClass.prototype.getConstructorID();

      if (!handlersInstances[elementID]) {
        handlersInstances[elementID] = {};
      }

      const oldHandler = handlersInstances[elementID][handlerID];

      if (oldHandler) {
        oldHandler.onDestroy();
      }
    }

    const newHandler = new HandlerClass(options);

    if (elementID) {
      handlersInstances[elementID][handlerID] = newHandler;
    }
  };

  this.attachHandler = (elementName, Handlers, skin) => {
    if (!Array.isArray(Handlers)) {
      Handlers = [Handlers];
    }

    Handlers.forEach(Handler => addHandlerWithHook(elementName, Handler, skin));
  };

  this.getHandler = function (handlerName) {
    if (!handlerName) {
      return;
    }

    const elementHandler = this.elementsHandlers[handlerName];

    if (isClassHandler(elementHandler)) {
      return elementHandler;
    }

    return new Promise(res => {
      elementHandler().then(({
        default: dynamicHandler
      }) => {
        res(dynamicHandler);
      });
    });
  };

  this.getHandlers = function (handlerName) {
    elementorCommon.helpers.softDeprecated('getHandlers', '3.1.0', 'elementorFrontend.elementsHandler.getHandler');

    if (handlerName) {
      return this.getHandler(handlerName);
    }

    return this.elementsHandlers;
  };

  this.runReadyTrigger = function (scope) {
    if (elementorFrontend.config.is_static) {
      return;
    } // Initializing the `$scope` as frontend jQuery instance


    const $scope = jQuery(scope),
          elementType = $scope.attr('data-element_type');

    if (!elementType) {
      return;
    }

    elementorFrontend.hooks.doAction('frontend/element_ready/global', $scope, $);
    elementorFrontend.hooks.doAction(`frontend/element_ready/${elementType}`, $scope, $);

    if ('widget' === elementType) {
      const widgetType = $scope.attr('data-widget_type');
      elementorFrontend.hooks.doAction(`frontend/element_ready/${widgetType}`, $scope, $);
    }
  };

  this.init = () => {
    addGlobalHandlers();
    addElementsHandlers();
  };
};

/***/ }),

/***/ "../assets/dev/js/frontend/frontend.js":
/*!*********************************************!*\
  !*** ../assets/dev/js/frontend/frontend.js ***!
  \*********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");

Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

__webpack_require__(/*! ../public-path */ "../assets/dev/js/public-path.js");

var _documentsManager = _interopRequireDefault(__webpack_require__(/*! ./documents-manager */ "../assets/dev/js/frontend/documents-manager.js"));

var _storage = _interopRequireDefault(__webpack_require__(/*! elementor-common/utils/storage */ "../core/common/assets/js/utils/storage.js"));

var _environment = _interopRequireDefault(__webpack_require__(/*! elementor-common/utils/environment */ "../core/common/assets/js/utils/environment.js"));

var _youtubeLoader = _interopRequireDefault(__webpack_require__(/*! ./utils/video-api/youtube-loader */ "../assets/dev/js/frontend/utils/video-api/youtube-loader.js"));

var _vimeoLoader = _interopRequireDefault(__webpack_require__(/*! ./utils/video-api/vimeo-loader */ "../assets/dev/js/frontend/utils/video-api/vimeo-loader.js"));

var _baseLoader = _interopRequireDefault(__webpack_require__(/*! ./utils/video-api/base-loader */ "../assets/dev/js/frontend/utils/video-api/base-loader.js"));

var _urlActions = _interopRequireDefault(__webpack_require__(/*! ./utils/url-actions */ "../assets/dev/js/frontend/utils/url-actions.js"));

var _swiperBc = _interopRequireDefault(__webpack_require__(/*! ./utils/swiper-bc */ "../assets/dev/js/frontend/utils/swiper-bc.js"));

var _lightboxManager = _interopRequireDefault(__webpack_require__(/*! ./utils/lightbox/lightbox-manager */ "../assets/dev/js/frontend/utils/lightbox/lightbox-manager.js"));

var _assetsLoader = _interopRequireDefault(__webpack_require__(/*! ./utils/assets-loader */ "../assets/dev/js/frontend/utils/assets-loader.js"));

var _breakpoints = _interopRequireDefault(__webpack_require__(/*! elementor-utils/breakpoints */ "../assets/dev/js/utils/breakpoints.js"));

var _frontend = _interopRequireDefault(__webpack_require__(/*! elementor/modules/shapes/assets/js/frontend/frontend */ "../modules/shapes/assets/js/frontend/frontend.js"));

var _utils = __webpack_require__(/*! elementor-frontend/utils/utils */ "../assets/dev/js/frontend/utils/utils.js");

/* global elementorFrontendConfig */
const EventManager = __webpack_require__(/*! elementor-utils/hooks */ "../assets/dev/js/utils/hooks.js"),
      ElementsHandler = __webpack_require__(/*! elementor-frontend/elements-handlers-manager */ "../assets/dev/js/frontend/elements-handlers-manager.js"),
      AnchorsModule = __webpack_require__(/*! elementor-frontend/utils/anchors */ "../assets/dev/js/frontend/utils/anchors.js");

class Frontend extends elementorModules.ViewModule {
  constructor(...args) {
    super(...args);
    this.config = elementorFrontendConfig;
    this.config.legacyMode = {
      get elementWrappers() {
        if (elementorFrontend.isEditMode()) {
          elementorCommon.helpers.hardDeprecated('elementorFrontend.config.legacyMode.elementWrappers', '3.1.0', 'elementorFrontend.config.experimentalFeatures.e_dom_optimization');
        }

        return !elementorFrontend.config.experimentalFeatures.e_dom_optimization;
      }

    };
    this.populateActiveBreakpointsConfig();
  } // TODO: BC since 2.5.0


  get Module() {
    if (this.isEditMode()) {
      parent.elementorCommon.helpers.hardDeprecated('elementorFrontend.Module', '2.5.0', 'elementorModules.frontend.handlers.Base');
    }

    return elementorModules.frontend.handlers.Base;
  }

  getDefaultSettings() {
    return {
      selectors: {
        elementor: '.elementor',
        adminBar: '#wpadminbar'
      }
    };
  }

  getDefaultElements() {
    const defaultElements = {
      window: window,
      $window: jQuery(window),
      $document: jQuery(document),
      $head: jQuery(document.head),
      $body: jQuery(document.body),
      $deviceMode: jQuery('<span>', {
        id: 'elementor-device-mode',
        class: 'elementor-screen-only'
      })
    };
    defaultElements.$body.append(defaultElements.$deviceMode);
    return defaultElements;
  }

  bindEvents() {
    this.elements.$window.on('resize', () => this.setDeviceModeData());
  }
  /**
   * @deprecated 2.4.0 Use just `this.elements` instead
   */


  getElements(elementName) {
    return this.getItems(this.elements, elementName);
  }
  /**
   * @deprecated 2.4.0 This method was never in use
   */


  getPageSettings(settingName) {
    const settingsObject = this.isEditMode() ? elementor.settings.page.model.attributes : this.config.settings.page;
    return this.getItems(settingsObject, settingName);
  }

  getGeneralSettings(settingName) {
    if (this.isEditMode()) {
      parent.elementorCommon.helpers.softDeprecated('getGeneralSettings', '3.0.0', 'getKitSettings and remove the `elementor_` prefix');
    }

    return this.getKitSettings(`elementor_${settingName}`);
  }

  getKitSettings(settingName) {
    // TODO: use Data API.
    return this.getItems(this.config.kit, settingName);
  }

  getCurrentDeviceMode() {
    return getComputedStyle(this.elements.$deviceMode[0], ':after').content.replace(/"/g, '');
  }

  getDeviceSetting(deviceMode, settings, settingKey) {
    // Add specific handling for widescreen since it is larger than desktop.
    if ('widescreen' === deviceMode) {
      return this.getWidescreenSetting(settings, settingKey);
    }

    const devices = elementorFrontend.breakpoints.getActiveBreakpointsList({
      largeToSmall: true,
      withDesktop: true
    });
    let deviceIndex = devices.indexOf(deviceMode);

    while (deviceIndex > 0) {
      const currentDevice = devices[deviceIndex],
            fullSettingKey = settingKey + '_' + currentDevice,
            deviceValue = settings[fullSettingKey]; // Accept 0 as value.

      if (deviceValue || 0 === deviceValue) {
        return deviceValue;
      }

      deviceIndex--;
    }

    return settings[settingKey];
  }

  getWidescreenSetting(settings, settingKey) {
    const deviceMode = 'widescreen',
          widescreenSettingKey = settingKey + '_' + deviceMode;
    let settingToReturn; // If the device mode is 'widescreen', and the setting exists - return it.

    if (settings[widescreenSettingKey]) {
      settingToReturn = settings[widescreenSettingKey];
    } else {
      // Otherwise, return the desktop setting
      settingToReturn = settings[settingKey];
    }

    return settingToReturn;
  }

  getCurrentDeviceSetting(settings, settingKey) {
    return this.getDeviceSetting(elementorFrontend.getCurrentDeviceMode(), settings, settingKey);
  }

  isEditMode() {
    return this.config.environmentMode.edit;
  }

  isWPPreviewMode() {
    return this.config.environmentMode.wpPreview;
  }

  initDialogsManager() {
    let dialogsManager;

    this.getDialogsManager = () => {
      if (!dialogsManager) {
        dialogsManager = new DialogsManager.Instance();
      }

      return dialogsManager;
    };
  }

  initOnReadyComponents() {
    this.utils = {
      youtube: new _youtubeLoader.default(),
      vimeo: new _vimeoLoader.default(),
      baseVideoLoader: new _baseLoader.default(),
      anchors: new AnchorsModule(),

      get lightbox() {
        return _lightboxManager.default.getLightbox();
      },

      urlActions: new _urlActions.default(),
      swiper: _swiperBc.default,
      environment: _environment.default,
      assetsLoader: new _assetsLoader.default(),
      escapeHTML: _utils.escapeHTML
    }; // TODO: BC since 2.4.0

    this.modules = {
      StretchElement: elementorModules.frontend.tools.StretchElement,
      Masonry: elementorModules.utils.Masonry
    };
    this.elementsHandler.init();

    if (this.isEditMode()) {
      elementor.once('document:loaded', () => this.onDocumentLoaded());
    } else {
      this.onDocumentLoaded();
    }
  }

  initOnReadyElements() {
    this.elements.$wpAdminBar = this.elements.$document.find(this.getSettings('selectors.adminBar'));
  }

  addUserAgentClasses() {
    for (const [key, value] of Object.entries(_environment.default)) {
      if (value) {
        this.elements.$body.addClass('e--ua-' + key);
      }
    }
  }

  setDeviceModeData() {
    this.elements.$body.attr('data-elementor-device-mode', this.getCurrentDeviceMode());
  }

  addListenerOnce(listenerID, event, callback, to) {
    if (!to) {
      to = this.elements.$window;
    }

    if (!this.isEditMode()) {
      to.on(event, callback);
      return;
    }

    this.removeListeners(listenerID, event, to);

    if (to instanceof jQuery) {
      const eventNS = event + '.' + listenerID;
      to.on(eventNS, callback);
    } else {
      to.on(event, callback, listenerID);
    }
  }

  removeListeners(listenerID, event, callback, from) {
    if (!from) {
      from = this.elements.$window;
    }

    if (from instanceof jQuery) {
      const eventNS = event + '.' + listenerID;
      from.off(eventNS, callback);
    } else {
      from.off(event, callback, listenerID);
    }
  } // Based on underscore function


  debounce(func, wait) {
    let timeout;
    return function () {
      const context = this,
            args = arguments;

      const later = () => {
        timeout = null;
        func.apply(context, args);
      };

      const callNow = !timeout;
      clearTimeout(timeout);
      timeout = setTimeout(later, wait);

      if (callNow) {
        func.apply(context, args);
      }
    };
  }

  waypoint($element, callback, options) {
    const defaultOptions = {
      offset: '100%',
      triggerOnce: true
    };
    options = jQuery.extend(defaultOptions, options);

    const correctCallback = function () {
      const element = this.element || this,
            result = callback.apply(element, arguments); // If is Waypoint new API and is frontend

      if (options.triggerOnce && this.destroy) {
        this.destroy();
      }

      return result;
    };

    return $element.elementorWaypoint(correctCallback, options);
  }

  muteMigrationTraces() {
    jQuery.migrateMute = true;
    jQuery.migrateTrace = false;
  }
  /**
   * Initialize the modules' widgets handlers.
   */


  initModules() {
    const handlers = {
      shapes: _frontend.default
    };
    elementorFrontend.trigger('elementor/modules/init:before');
    Object.entries(handlers).forEach(([moduleName, ModuleClass]) => {
      this.modulesHandlers[moduleName] = new ModuleClass();
    });
  }

  populateActiveBreakpointsConfig() {
    this.config.responsive.activeBreakpoints = {};
    Object.entries(this.config.responsive.breakpoints).forEach(([breakpointKey, breakpointData]) => {
      if (breakpointData.is_enabled) {
        this.config.responsive.activeBreakpoints[breakpointKey] = breakpointData;
      }
    });
  }

  init() {
    this.hooks = new EventManager();
    this.breakpoints = new _breakpoints.default(this.config.responsive);
    this.storage = new _storage.default();
    this.elementsHandler = new ElementsHandler(jQuery);
    this.modulesHandlers = {};
    this.addUserAgentClasses();
    this.setDeviceModeData();
    this.initDialogsManager();

    if (this.isEditMode()) {
      this.muteMigrationTraces();
    } // Keep this line before `initOnReadyComponents` call


    this.elements.$window.trigger('elementor/frontend/init');
    this.initModules();
    this.initOnReadyElements();
    this.initOnReadyComponents();
  }

  onDocumentLoaded() {
    this.documentsManager = new _documentsManager.default();
    this.trigger('components:init');
    new _lightboxManager.default();
  }

}

exports.default = Frontend;
window.elementorFrontend = new Frontend();

if (!elementorFrontend.isEditMode()) {
  jQuery(() => elementorFrontend.init());
}

/***/ }),

/***/ "../assets/dev/js/frontend/handlers/background-slideshow.js":
/*!******************************************************************!*\
  !*** ../assets/dev/js/frontend/handlers/background-slideshow.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

class BackgroundSlideshow extends elementorModules.frontend.handlers.SwiperBase {
  getDefaultSettings() {
    return {
      classes: {
        swiperContainer: 'elementor-background-slideshow swiper-container',
        swiperWrapper: 'swiper-wrapper',
        swiperSlide: 'elementor-background-slideshow__slide swiper-slide',
        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 elementSettings = this.getElementSettings();
    const swiperOptions = {
      grabCursor: false,
      slidesPerView: 1,
      slidesPerGroup: 1,
      loop: 'yes' === elementSettings.background_slideshow_loop,
      speed: elementSettings.background_slideshow_transition_duration,
      autoplay: {
        delay: elementSettings.background_slideshow_slide_duration,
        stopOnLastSlide: !elementSettings.background_slideshow_loop
      },
      handleElementorBreakpoints: true,
      on: {
        slideChange: () => {
          if (elementSettings.background_slideshow_ken_burns) {
            this.handleKenBurns();
          }
        }
      }
    };

    if ('yes' === elementSettings.background_slideshow_loop) {
      swiperOptions.loopedSlides = this.getSlidesCount();
    }

    switch (elementSettings.background_slideshow_slide_transition) {
      case 'fade':
        swiperOptions.effect = 'fade';
        swiperOptions.fadeEffect = {
          crossFade: true
        };
        break;

      case 'slide_down':
        swiperOptions.autoplay.reverseDirection = true;

      case 'slide_up':
        swiperOptions.direction = 'vertical';
        break;
    }

    return swiperOptions;
  }

  buildSwiperElements() {
    const classes = this.getSettings('classes'),
          elementSettings = this.getElementSettings(),
          direction = 'slide_left' === elementSettings.background_slideshow_slide_transition ? 'ltr' : 'rtl',
          $container = jQuery('<div>', {
      class: classes.swiperContainer,
      dir: direction
    }),
          $wrapper = jQuery('<div>', {
      class: classes.swiperWrapper
    }),
          kenBurnsActive = elementSettings.background_slideshow_ken_burns;
    let slideInnerClass = classes.slideBackground;

    if (kenBurnsActive) {
      slideInnerClass += ' ' + classes.kenBurns;
      const kenBurnsDirection = 'in' === elementSettings.background_slideshow_ken_burns_zoom_direction ? 'kenBurnsIn' : 'kenBurnsOut';
      slideInnerClass += ' ' + classes[kenBurnsDirection];
    }

    this.elements.$slides = jQuery();
    elementSettings.background_slideshow_gallery.forEach(slide => {
      const $slide = jQuery('<div>', {
        class: classes.swiperSlide
      }),
            $slidebg = jQuery('<div>', {
        class: slideInnerClass,
        style: 'background-image: url("' + slide.url + '");'
      });
      $slide.append($slidebg);
      $wrapper.append($slide);
      this.elements.$slides = this.elements.$slides.add($slide);
    });
    $container.append($wrapper);
    this.$element.prepend($container);
    this.elements.$backgroundSlideShowContainer = $container;
  }

  async initSlider() {
    if (1 >= this.getSlidesCount()) {
      return;
    }

    const elementSettings = this.getElementSettings();
    const Swiper = elementorFrontend.utils.swiper;
    this.swiper = await new Swiper(this.elements.$backgroundSlideShowContainer, this.getSwiperOptions()); // Expose the swiper instance in the frontend

    this.elements.$backgroundSlideShowContainer.data('swiper', this.swiper);

    if (elementSettings.background_slideshow_ken_burns) {
      this.handleKenBurns();
    }
  }

  activate() {
    this.buildSwiperElements();
    this.initSlider();
  }

  deactivate() {
    if (this.swiper) {
      this.swiper.destroy();
      this.elements.$backgroundSlideShowContainer.remove();
    }
  }

  run() {
    if ('slideshow' === this.getElementSettings('background_background')) {
      this.activate();
    } else {
      this.deactivate();
    }
  }

  onInit() {
    super.onInit();

    if (this.getElementSettings('background_slideshow_gallery')) {
      this.run();
    }
  }

  onDestroy() {
    super.onDestroy();
    this.deactivate();
  }

  onElementChange(propertyName) {
    if ('background_background' === propertyName) {
      this.run();
    }
  }

}

exports.default = BackgroundSlideshow;

/***/ }),

/***/ "../assets/dev/js/frontend/handlers/column.js":
/*!****************************************************!*\
  !*** ../assets/dev/js/frontend/handlers/column.js ***!
  \****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");

Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

var _backgroundSlideshow = _interopRequireDefault(__webpack_require__(/*! ./background-slideshow */ "../assets/dev/js/frontend/handlers/background-slideshow.js"));

var _default = [_backgroundSlideshow.default];
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/frontend/handlers/global.js":
/*!****************************************************!*\
  !*** ../assets/dev/js/frontend/handlers/global.js ***!
  \****************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

class GlobalHandler extends elementorModules.frontend.handlers.Base {
  getWidgetType() {
    return 'global';
  }

  animate() {
    const $element = this.$element,
          animation = this.getAnimation();

    if ('none' === animation) {
      $element.removeClass('elementor-invisible');
      return;
    }

    const elementSettings = this.getElementSettings(),
          animationDelay = elementSettings._animation_delay || elementSettings.animation_delay || 0;
    $element.removeClass(animation);

    if (this.currentAnimation) {
      $element.removeClass(this.currentAnimation);
    }

    this.currentAnimation = animation;
    setTimeout(() => {
      $element.removeClass('elementor-invisible').addClass('animated ' + animation);
    }, animationDelay);
  }

  getAnimation() {
    return this.getCurrentDeviceSetting('animation') || this.getCurrentDeviceSetting('_animation');
  }

  onInit(...args) {
    super.onInit(...args);

    if (this.getAnimation()) {
      const observer = elementorModules.utils.Scroll.scrollObserver({
        callback: event => {
          if (event.isInViewport) {
            this.animate();
            observer.unobserve(this.$element[0]);
          }
        }
      });
      observer.observe(this.$element[0]);
    }
  }

  onElementChange(propertyName) {
    if (/^_?animation/.test(propertyName)) {
      this.animate();
    }
  }

}

var _default = $scope => {
  elementorFrontend.elementsHandler.addHandler(GlobalHandler, {
    $element: $scope
  });
};

exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/frontend/handlers/section/background-video.js":
/*!**********************************************************************!*\
  !*** ../assets/dev/js/frontend/handlers/section/background-video.js ***!
  \**********************************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

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 selectors = this.getSettings('selectors'),
          elements = {
      $backgroundVideoContainer: this.$element.find(selectors.backgroundVideoContainer)
    };
    elements.$backgroundVideoEmbed = elements.$backgroundVideoContainer.children(selectors.backgroundVideoEmbed);
    elements.$backgroundVideoHosted = elements.$backgroundVideoContainer.children(selectors.backgroundVideoHosted);
    return elements;
  }

  calcVideosSize($video) {
    let aspectRatioSetting = '16:9';

    if ('vimeo' === this.videoType) {
      aspectRatioSetting = $video[0].width + ':' + $video[0].height;
    }

    const containerWidth = this.elements.$backgroundVideoContainer.outerWidth(),
          containerHeight = this.elements.$backgroundVideoContainer.outerHeight(),
          aspectRatioArray = aspectRatioSetting.split(':'),
          aspectRatio = aspectRatioArray[0] / aspectRatioArray[1],
          ratioWidth = containerWidth / aspectRatio,
          ratioHeight = containerHeight * aspectRatio,
          isWidthFixed = containerWidth / containerHeight > aspectRatio;
    return {
      width: isWidthFixed ? containerWidth : ratioHeight,
      height: isWidthFixed ? ratioWidth : containerHeight
    };
  }

  changeVideoSize() {
    if (!('hosted' === this.videoType) && !this.player) {
      return;
    }

    let $video;

    if ('youtube' === this.videoType) {
      $video = jQuery(this.player.getIframe());
    } else if ('vimeo' === this.videoType) {
      $video = jQuery(this.player.element);
    } else if ('hosted' === this.videoType) {
      $video = this.elements.$backgroundVideoHosted;
    }

    if (!$video) {
      return;
    }

    const size = this.calcVideosSize($video);
    $video.width(size.width).height(size.height);
  }

  startVideoLoop(firstTime) {
    // If the section has been removed
    if (!this.player.getIframe().contentWindow) {
      return;
    }

    const elementSettings = this.getElementSettings(),
          startPoint = elementSettings.background_video_start || 0,
          endPoint = elementSettings.background_video_end;

    if (elementSettings.background_play_once && !firstTime) {
      this.player.stopVideo();
      return;
    }

    this.player.seekTo(startPoint);

    if (endPoint) {
      const durationToEnd = endPoint - startPoint + 1;
      setTimeout(() => {
        this.startVideoLoop(false);
      }, durationToEnd * 1000);
    }
  }

  prepareVimeoVideo(Vimeo, videoLink) {
    const elementSettings = this.getElementSettings(),
          videoSize = this.elements.$backgroundVideoContainer.outerWidth(),
          vimeoOptions = {
      url: videoLink,
      width: videoSize.width,
      autoplay: true,
      loop: !elementSettings.background_play_once,
      transparent: false,
      background: true,
      muted: true
    };
    this.player = new Vimeo.Player(this.elements.$backgroundVideoContainer, vimeoOptions); // Handle user-defined start/end times

    this.handleVimeoStartEndTimes(elementSettings);
    this.player.ready().then(() => {
      jQuery(this.player.element).addClass('elementor-background-video-embed');
      this.changeVideoSize();
    });
  }

  handleVimeoStartEndTimes(elementSettings) {
    // If a start time is defined, set the start time
    if (elementSettings.background_video_start) {
      this.player.on('play', data => {
        if (0 === data.seconds) {
          this.player.setCurrentTime(elementSettings.background_video_start);
        }
      });
    }

    this.player.on('timeupdate', data => {
      // If an end time is defined, handle ending the video
      if (elementSettings.background_video_end && elementSettings.background_video_end < data.seconds) {
        if (elementSettings.background_play_once) {
          // Stop at user-defined end time if not loop
          this.player.pause();
        } else {
          // Go to start time if loop
          this.player.setCurrentTime(elementSettings.background_video_start);
        }
      } // If start time is defined but an end time is not, go to user-defined start time at video end.
      // Vimeo JS API has an 'ended' event, but it never fires when infinite loop is defined, so we
      // get the video duration (returns a promise) then use duration-0.5s as end time


      this.player.getDuration().then(duration => {
        if (elementSettings.background_video_start && !elementSettings.background_video_end && data.seconds > duration - 0.5) {
          this.player.setCurrentTime(elementSettings.background_video_start);
        }
      });
    });
  }

  prepareYTVideo(YT, videoID) {
    const $backgroundVideoContainer = this.elements.$backgroundVideoContainer,
          elementSettings = this.getElementSettings();
    let startStateCode = YT.PlayerState.PLAYING; // Since version 67, Chrome doesn't fire the `PLAYING` state at start time

    if (window.chrome) {
      startStateCode = YT.PlayerState.UNSTARTED;
    }

    const playerOptions = {
      videoId: videoID,
      events: {
        onReady: () => {
          this.player.mute();
          this.changeVideoSize();
          this.startVideoLoop(true);
          this.player.playVideo();
        },
        onStateChange: event => {
          switch (event.data) {
            case startStateCode:
              $backgroundVideoContainer.removeClass('elementor-invisible elementor-loading');
              break;

            case YT.PlayerState.ENDED:
              this.player.seekTo(elementSettings.background_video_start || 0);

              if (elementSettings.background_play_once) {
                this.player.destroy();
              }

          }
        }
      },
      playerVars: {
        controls: 0,
        rel: 0,
        playsinline: 1
      }
    }; // To handle CORS issues, when the default host is changed, the origin parameter has to be set.

    if (elementSettings.background_privacy_mode) {
      playerOptions.host = 'https://www.youtube-nocookie.com';
      playerOptions.origin = window.location.hostname;
    }

    $backgroundVideoContainer.addClass('elementor-loading elementor-invisible');
    this.player = new YT.Player(this.elements.$backgroundVideoEmbed[0], playerOptions);
  }

  activate() {
    let videoLink = this.getElementSettings('background_video_link'),
        videoID;
    const playOnce = this.getElementSettings('background_play_once');

    if (-1 !== videoLink.indexOf('vimeo.com')) {
      this.videoType = 'vimeo';
      this.apiProvider = elementorFrontend.utils.vimeo;
    } else if (videoLink.match(/^(?:https?:\/\/)?(?:www\.)?(?:m\.)?(?:youtu\.be\/|youtube\.com)/)) {
      this.videoType = 'youtube';
      this.apiProvider = elementorFrontend.utils.youtube;
    }

    if (this.apiProvider) {
      videoID = this.apiProvider.getVideoIDFromURL(videoLink);
      this.apiProvider.onApiReady(apiObject => {
        if ('youtube' === this.videoType) {
          this.prepareYTVideo(apiObject, videoID);
        }

        if ('vimeo' === this.videoType) {
          this.prepareVimeoVideo(apiObject, videoLink);
        }
      });
    } else {
      this.videoType = 'hosted';
      const startTime = this.getElementSettings('background_video_start'),
            endTime = this.getElementSettings('background_video_end');

      if (startTime || endTime) {
        videoLink += '#t=' + (startTime || 0) + (endTime ? ',' + endTime : '');
      }

      this.elements.$backgroundVideoHosted.attr('src', videoLink).one('canplay', this.changeVideoSize.bind(this));

      if (playOnce) {
        this.elements.$backgroundVideoHosted.on('ended', () => {
          this.elements.$backgroundVideoHosted.hide();
        });
      }
    }

    elementorFrontend.elements.$window.on('resize', this.changeVideoSize);
  }

  deactivate() {
    if ('youtube' === this.videoType && this.player.getIframe() || 'vimeo' === this.videoType) {
      this.player.destroy();
    } else {
      this.elements.$backgroundVideoHosted.removeAttr('src').off('ended');
    }

    elementorFrontend.elements.$window.off('resize', this.changeVideoSize);
  }

  run() {
    const elementSettings = this.getElementSettings();

    if (!elementSettings.background_play_on_mobile && 'mobile' === elementorFrontend.getCurrentDeviceMode()) {
      return;
    }

    if ('video' === elementSettings.background_background && elementSettings.background_video_link) {
      this.activate();
    } else {
      this.deactivate();
    }
  }

  onInit(...args) {
    super.onInit(...args);
    this.changeVideoSize = this.changeVideoSize.bind(this);
    this.run();
  }

  onElementChange(propertyName) {
    if ('background_background' === propertyName) {
      this.run();
    }
  }

}

exports.default = BackgroundVideo;

/***/ }),

/***/ "../assets/dev/js/frontend/handlers/section/handles-position.js":
/*!**********************************************************************!*\
  !*** ../assets/dev/js/frontend/handlers/section/handles-position.js ***!
  \**********************************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

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 $container = jQuery(elementor.config.document.container);
    return this.$element.offset().top - $container.offset().top;
  }

  setHandlesPosition() {
    const document = elementor.documents.getCurrent();

    if (!document || !document.container.isEditable()) {
      return;
    }

    const insideHandleClass = 'elementor-section--handles-inside',
          $handlesElement = this.$element.find('> .elementor-element-overlay > .elementor-editor-section-settings');

    if (elementor.settings.page.model.attributes.scroll_snap) {
      this.$element.addClass(insideHandleClass);
      return;
    }

    const isOverflowHidden = this.isOverflowHidden();

    if (!isOverflowHidden && !this.isFirstSection()) {
      return;
    }

    const offset = isOverflowHidden ? 0 : this.getOffset();

    if (offset < 25) {
      this.$element.addClass(insideHandleClass);

      if (offset < -5) {
        $handlesElement.css('top', -offset);
      } else {
        $handlesElement.css('top', '');
      }
    } else {
      this.$element.removeClass(insideHandleClass);
    }
  }

  onInit() {
    if (!this.isActive()) {
      return;
    }

    this.setHandlesPosition();
    this.$element.on('mouseenter', this.setHandlesPosition.bind(this));
  }

}

exports.default = HandlesPosition;

/***/ }),

/***/ "../assets/dev/js/frontend/handlers/section/section.js":
/*!*************************************************************!*\
  !*** ../assets/dev/js/frontend/handlers/section/section.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");

Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

var _backgroundSlideshow = _interopRequireDefault(__webpack_require__(/*! ../background-slideshow */ "../assets/dev/js/frontend/handlers/background-slideshow.js"));

var _backgroundVideo = _interopRequireDefault(__webpack_require__(/*! ./background-video */ "../assets/dev/js/frontend/handlers/section/background-video.js"));

var _handlesPosition = _interopRequireDefault(__webpack_require__(/*! ./handles-position */ "../assets/dev/js/frontend/handlers/section/handles-position.js"));

var _stretchedSection = _interopRequireDefault(__webpack_require__(/*! ./stretched-section */ "../assets/dev/js/frontend/handlers/section/stretched-section.js"));

var _shapes = _interopRequireDefault(__webpack_require__(/*! ./shapes */ "../assets/dev/js/frontend/handlers/section/shapes.js"));

var _default = [_stretchedSection.default, // Must run before BackgroundSlideshow to init the slideshow only after the stretch.
_backgroundSlideshow.default, _backgroundVideo.default, _handlesPosition.default, _shapes.default];
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/frontend/handlers/section/shapes.js":
/*!************************************************************!*\
  !*** ../assets/dev/js/frontend/handlers/section/shapes.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

class Shapes extends elementorModules.frontend.handlers.Base {
  getDefaultSettings() {
    return {
      selectors: {
        container: '> .elementor-shape-%s'
      },
      svgURL: elementorFrontend.config.urls.assets + 'shapes/'
    };
  }

  getDefaultElements() {
    const elements = {},
          selectors = this.getSettings('selectors');
    elements.$topContainer = this.$element.find(selectors.container.replace('%s', 'top'));
    elements.$bottomContainer = this.$element.find(selectors.container.replace('%s', 'bottom'));
    return elements;
  }

  isActive() {
    return elementorFrontend.isEditMode();
  }

  getSvgURL(shapeType, fileName) {
    let svgURL = this.getSettings('svgURL') + fileName + '.svg';

    if (elementor.config.additional_shapes && shapeType in elementor.config.additional_shapes) {
      svgURL = elementor.config.additional_shapes[shapeType];

      if (-1 < fileName.indexOf('-negative')) {
        svgURL = svgURL.replace('.svg', '-negative.svg');
      }
    }

    return svgURL;
  }

  buildSVG(side) {
    const baseSettingKey = 'shape_divider_' + side,
          shapeType = this.getElementSettings(baseSettingKey),
          $svgContainer = this.elements['$' + side + 'Container'];
    $svgContainer.attr('data-shape', shapeType);

    if (!shapeType) {
      $svgContainer.empty(); // Shape-divider set to 'none'

      return;
    }

    let fileName = shapeType;

    if (this.getElementSettings(baseSettingKey + '_negative')) {
      fileName += '-negative';
    }

    const svgURL = this.getSvgURL(shapeType, fileName);
    jQuery.get(svgURL, data => {
      $svgContainer.empty().append(data.childNodes[0]);
    });
    this.setNegative(side);
  }

  setNegative(side) {
    this.elements['$' + side + 'Container'].attr('data-negative', !!this.getElementSettings('shape_divider_' + side + '_negative'));
  }

  onInit(...args) {
    if (!this.isActive(this.getSettings())) {
      return;
    }

    super.onInit(...args);
    ['top', 'bottom'].forEach(side => {
      if (this.getElementSettings('shape_divider_' + side)) {
        this.buildSVG(side);
      }
    });
  }

  onElementChange(propertyName) {
    const shapeChange = propertyName.match(/^shape_divider_(top|bottom)$/);

    if (shapeChange) {
      this.buildSVG(shapeChange[1]);
      return;
    }

    const negativeChange = propertyName.match(/^shape_divider_(top|bottom)_negative$/);

    if (negativeChange) {
      this.buildSVG(negativeChange[1]);
      this.setNegative(negativeChange[1]);
    }
  }

}

exports.default = Shapes;

/***/ }),

/***/ "../assets/dev/js/frontend/handlers/section/stretched-section.js":
/*!***********************************************************************!*\
  !*** ../assets/dev/js/frontend/handlers/section/stretched-section.js ***!
  \***********************************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

class StretchedSection extends elementorModules.frontend.handlers.Base {
  bindEvents() {
    const handlerID = this.getUniqueHandlerID();
    elementorFrontend.addListenerOnce(handlerID, 'resize', this.stretch);
    elementorFrontend.addListenerOnce(handlerID, 'sticky:stick', this.stretch, this.$element);
    elementorFrontend.addListenerOnce(handlerID, 'sticky:unstick', this.stretch, this.$element);

    if (elementorFrontend.isEditMode()) {
      this.onKitChangeStretchContainerChange = this.onKitChangeStretchContainerChange.bind(this);
      elementor.channels.editor.on('kit:change:stretchContainer', this.onKitChangeStretchContainerChange);
    }
  }

  unbindEvents() {
    elementorFrontend.removeListeners(this.getUniqueHandlerID(), 'resize', this.stretch);

    if (elementorFrontend.isEditMode()) {
      elementor.channels.editor.off('kit:change:stretchContainer', this.onKitChangeStretchContainerChange);
    }
  }

  isActive(settings) {
    return elementorFrontend.isEditMode() || settings.$element.hasClass('elementor-section-stretched');
  }

  initStretch() {
    this.stretch = this.stretch.bind(this);
    this.stretchElement = new elementorModules.frontend.tools.StretchElement({
      element: this.$element,
      selectors: {
        container: this.getStretchContainer()
      }
    });
  }

  getStretchContainer() {
    return elementorFrontend.getKitSettings('stretched_section_container') || window;
  }

  stretch() {
    if (!this.getElementSettings('stretch_section')) {
      return;
    }

    this.stretchElement.stretch();
  }

  onInit(...args) {
    if (!this.isActive(this.getSettings())) {
      return;
    }

    this.initStretch();
    super.onInit(...args);
    this.stretch();
  }

  onElementChange(propertyName) {
    if ('stretch_section' === propertyName) {
      if (this.getElementSettings('stretch_section')) {
        this.stretch();
      } else {
        this.stretchElement.reset();
      }
    }
  }

  onKitChangeStretchContainerChange() {
    this.stretchElement.setSettings('selectors.container', this.getStretchContainer());
    this.stretch();
  }

}

exports.default = StretchedSection;

/***/ }),

/***/ "../assets/dev/js/frontend/utils/anchors.js":
/*!**************************************************!*\
  !*** ../assets/dev/js/frontend/utils/anchors.js ***!
  \**************************************************/
/***/ ((module) => {

"use strict";


module.exports = elementorModules.ViewModule.extend({
  getDefaultSettings: function () {
    return {
      scrollDuration: 500,
      selectors: {
        links: 'a[href*="#"]',
        targets: '.elementor-element, .elementor-menu-anchor',
        scrollable: 'html, body'
      }
    };
  },
  getDefaultElements: function () {
    var $ = jQuery,
        selectors = this.getSettings('selectors');
    return {
      $scrollable: $(selectors.scrollable)
    };
  },
  bindEvents: function () {
    elementorFrontend.elements.$document.on('click', this.getSettings('selectors.links'), this.handleAnchorLinks);
  },
  handleAnchorLinks: function (event) {
    var clickedLink = event.currentTarget,
        isSamePathname = location.pathname === clickedLink.pathname,
        isSameHostname = location.hostname === clickedLink.hostname,
        $anchor;

    if (!isSameHostname || !isSamePathname || clickedLink.hash.length < 2) {
      return;
    }

    try {
      $anchor = jQuery(clickedLink.hash).filter(this.getSettings('selectors.targets'));
    } catch (e) {
      return;
    }

    if (!$anchor.length) {
      return;
    }

    var scrollTop = $anchor.offset().top,
        $wpAdminBar = elementorFrontend.elements.$wpAdminBar,
        $activeStickies = jQuery('.elementor-section.elementor-sticky--active:visible'),
        maxStickyHeight = 0;

    if ($wpAdminBar.length > 0) {
      scrollTop -= $wpAdminBar.height();
    } // Offset height of tallest sticky


    if ($activeStickies.length > 0) {
      maxStickyHeight = Math.max.apply(null, $activeStickies.map(function () {
        return jQuery(this).outerHeight();
      }).get());
      scrollTop -= maxStickyHeight;
    }

    event.preventDefault();
    scrollTop = elementorFrontend.hooks.applyFilters('frontend/handlers/menu_anchor/scroll_top_distance', scrollTop);
    this.elements.$scrollable.animate({
      scrollTop: scrollTop
    }, this.getSettings('scrollDuration'), 'linear');
  },
  onInit: function () {
    elementorModules.ViewModule.prototype.onInit.apply(this, arguments);
    this.bindEvents();
  }
});

/***/ }),

/***/ "../assets/dev/js/frontend/utils/assets-loader.js":
/*!********************************************************!*\
  !*** ../assets/dev/js/frontend/utils/assets-loader.js ***!
  \********************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

class AssetsLoader {
  getScriptElement(src) {
    const scriptElement = document.createElement('script');
    scriptElement.src = src;
    return scriptElement;
  }

  getStyleElement(src) {
    const styleElement = document.createElement('link');
    styleElement.rel = 'stylesheet';
    styleElement.href = src;
    return styleElement;
  }

  load(type, key) {
    const assetData = AssetsLoader.assets[type][key];

    if (!assetData.loader) {
      assetData.loader = new Promise(resolve => {
        const element = 'style' === type ? this.getStyleElement(assetData.src) : this.getScriptElement(assetData.src);

        element.onload = () => resolve(true);

        const parent = 'head' === assetData.parent ? assetData.parent : 'body';
        document[parent].appendChild(element);
      });
    }

    return assetData.loader;
  }

}

exports.default = AssetsLoader;
const fileSuffix = elementorFrontendConfig.environmentMode.isScriptDebug ? '' : '.min';
AssetsLoader.assets = {
  script: {
    dialog: {
      src: `${elementorFrontendConfig.urls.assets}lib/dialog/dialog${fileSuffix}.js?ver=4.8.1`
    },
    'share-link': {
      src: `${elementorFrontendConfig.urls.assets}lib/share-link/share-link${fileSuffix}.js?ver=${elementorFrontendConfig.version}`
    },
    swiper: {
      src: `${elementorFrontendConfig.urls.assets}lib/swiper/swiper${fileSuffix}.js?ver=5.3.6`
    }
  },
  style: {}
};

/***/ }),

/***/ "../assets/dev/js/frontend/utils/lightbox/lightbox-manager.js":
/*!********************************************************************!*\
  !*** ../assets/dev/js/frontend/utils/lightbox/lightbox-manager.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

class LightboxManager extends elementorModules.ViewModule {
  static getLightbox() {
    const lightboxPromise = new Promise(resolveLightbox => {
      __webpack_require__.e(/*! import() | lightbox */ "lightbox").then(__webpack_require__.t.bind(__webpack_require__, /*! elementor-frontend/utils/lightbox/lightbox */ "../assets/dev/js/frontend/utils/lightbox/lightbox.js", 23)).then(({
        default: LightboxModule
      }) => resolveLightbox(new LightboxModule()));
    }),
          dialogPromise = elementorFrontend.utils.assetsLoader.load('script', 'dialog'),
          shareLinkPromise = elementorFrontend.utils.assetsLoader.load('script', 'share-link');
    return Promise.all([lightboxPromise, dialogPromise, shareLinkPromise]).then(() => lightboxPromise);
  }

  getDefaultSettings() {
    return {
      selectors: {
        links: 'a, [data-elementor-lightbox]'
      }
    };
  }

  getDefaultElements() {
    return {
      $links: jQuery(this.getSettings('selectors.links'))
    };
  }

  isLightboxLink(element) {
    // Check for lowercase `a` to make sure it works also for links inside SVGs.
    if ('a' === element.tagName.toLowerCase() && (element.hasAttribute('download') || !/^[^?]+\.(png|jpe?g|gif|svg|webp)(\?.*)?$/i.test(element.href)) && !element.dataset.elementorLightboxVideo) {
      return false;
    }

    const generalOpenInLightbox = elementorFrontend.getKitSettings('global_image_lightbox'),
          currentLinkOpenInLightbox = element.dataset.elementorOpenLightbox;
    return 'yes' === currentLinkOpenInLightbox || generalOpenInLightbox && 'no' !== currentLinkOpenInLightbox;
  }

  async onLinkClick(event) {
    const element = event.currentTarget,
          $target = jQuery(event.target),
          editMode = elementorFrontend.isEditMode(),
          isColorPickingMode = editMode && elementor.$previewContents.find('body').hasClass('elementor-editor__ui-state__color-picker'),
          isClickInsideElementor = !!$target.closest('.elementor-edit-area').length;

    if (!this.isLightboxLink(element)) {
      if (editMode && isClickInsideElementor) {
        event.preventDefault();
      }

      return;
    }

    event.preventDefault();

    if (editMode && !elementor.getPreferences('lightbox_in_editor')) {
      return;
    } // Disable lightbox on color picking mode.


    if (isColorPickingMode) {
      return;
    }

    const lightbox = this.isOptimizedAssetsLoading() ? await LightboxManager.getLightbox() : elementorFrontend.utils.lightbox;
    lightbox.createLightbox(element);
  }

  isOptimizedAssetsLoading() {
    return elementorFrontend.config.experimentalFeatures.e_optimized_assets_loading;
  }

  bindEvents() {
    elementorFrontend.elements.$document.on('click', this.getSettings('selectors.links'), event => this.onLinkClick(event));
  }

  onInit(...args) {
    super.onInit(...args);

    if (!this.isOptimizedAssetsLoading() || elementorFrontend.isEditMode()) {
      return;
    } // Detecting lightbox links on init will reduce the time of waiting to the lightbox to be display on slow connections.


    this.elements.$links.each((index, element) => {
      if (this.isLightboxLink(element)) {
        LightboxManager.getLightbox(); // Breaking the iteration when the library loading has already been triggered.

        return false;
      }
    });
  }

}

exports.default = LightboxManager;

/***/ }),

/***/ "../assets/dev/js/frontend/utils/swiper-bc.js":
/*!****************************************************!*\
  !*** ../assets/dev/js/frontend/utils/swiper-bc.js ***!
  \****************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

class SwiperBC {
  constructor(container, config) {
    this.config = config;

    if (this.config.breakpoints) {
      // The config is passed as a param to allow adjustConfig to be called outside of this wrapper
      this.config = this.adjustConfig(config);
    } // In case of a legacy behaviour the constructor should return a new Swiper instance instead of a Promise.


    if (config.legacy) {
      return this.createSwiperInstance(container, this.config);
    }

    return new Promise(resolve => {
      if (!elementorFrontend.config.experimentalFeatures.e_optimized_assets_loading) {
        return resolve(this.createSwiperInstance(container, this.config));
      }

      elementorFrontend.utils.assetsLoader.load('script', 'swiper').then(() => resolve(this.createSwiperInstance(container, this.config)));
    });
  }

  createSwiperInstance(container, config) {
    // The condition should run only once to prevent an additional overwrite of the SwiperSource.
    if (!SwiperBC.isSwiperLoaded && elementorFrontend.config.experimentalFeatures.e_optimized_assets_loading) {
      SwiperSource = window.Swiper;
      SwiperBC.isSwiperLoaded = true; // Once the SwiperSource has the Swiper lib function, we need to overwrite window.Swiper with the legacySwiper class.

      legacySwiper();
    }

    SwiperSource.prototype.adjustConfig = this.adjustConfig;
    return new SwiperSource(container, config);
  } // Backwards compatibility for Elementor Pro <2.9.0 (old Swiper version - <5.0.0)
  // In Swiper 5.0.0 and up, breakpoints changed from acting as max-width to acting as min-width


  adjustConfig(config) {
    // Only reverse the breakpoints if the handle param has been defined
    if (!config.handleElementorBreakpoints) {
      return config;
    }

    const elementorBreakpoints = elementorFrontend.config.responsive.activeBreakpoints,
          elementorBreakpointValues = elementorFrontend.breakpoints.getBreakpointValues();
    Object.keys(config.breakpoints).forEach(configBPKey => {
      const configBPKeyInt = parseInt(configBPKey);
      let breakpointToUpdate; // The `configBPKeyInt + 1` is a BC Fix for Elementor Pro Carousels from 2.8.0-2.8.3 used with Elementor >= 2.9.0

      if (configBPKeyInt === elementorBreakpoints.mobile.value || configBPKeyInt + 1 === elementorBreakpoints.mobile.value) {
        // This handles the mobile breakpoint. Elementor's default sm breakpoint is never actually used,
        // so the mobile breakpoint (md) needs to be handled separately and set to the 0 breakpoint (xs)
        breakpointToUpdate = 0;
      } else if (elementorBreakpoints.widescreen && (configBPKeyInt === elementorBreakpoints.widescreen.value || configBPKeyInt + 1 === elementorBreakpoints.widescreen.value)) {
        // Widescreen is a min-width breakpoint. Since in Swiper >5.0 the breakpoint system is min-width based,
        // the value we pass to the Swiper instance in this case is the breakpoint from the user, unchanged.
        breakpointToUpdate = configBPKeyInt;
      } else {
        // Find the index of the current config breakpoint in the Elementor Breakpoints array
        const currentBPIndexInElementorBPs = elementorBreakpointValues.findIndex(elementorBP => {
          // BC Fix for Elementor Pro Carousels from 2.8.0-2.8.3 used with Elementor >= 2.9.0
          return configBPKeyInt === elementorBP || configBPKeyInt + 1 === elementorBP;
        }); // For all other Swiper config breakpoints, move them one breakpoint down on the breakpoint list,
        // according to the array of Elementor's global breakpoints

        breakpointToUpdate = elementorBreakpointValues[currentBPIndexInElementorBPs - 1];
      }

      config.breakpoints[breakpointToUpdate] = config.breakpoints[configBPKey]; // Then reset the settings in the original breakpoint key to the default values

      config.breakpoints[configBPKey] = {
        slidesPerView: config.slidesPerView,
        slidesPerGroup: config.slidesPerGroup ? config.slidesPerGroup : 1
      };
    });
    return config;
  }

} // The following code is needed to support Pro version < 3.1.0.


exports.default = SwiperBC;
SwiperBC.isSwiperLoaded = false; // In the legacy behavior, window.Swiper was a class that returns an instance of the Swiper lib function after config adjustments.

function legacySwiper() {
  window.Swiper = class {
    constructor(container, config) {
      config.legacy = true;
      return new SwiperBC(container, config);
    }

  };
}

let SwiperSource = window.Swiper; // In case that the Swiper lib exists (meaning not in optimized mode) we overwrite the window.Swiper with a class that supports legacy behavior.

if (SwiperSource) {
  legacySwiper();
}

/***/ }),

/***/ "../assets/dev/js/frontend/utils/url-actions.js":
/*!******************************************************!*\
  !*** ../assets/dev/js/frontend/utils/url-actions.js ***!
  \******************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

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 settings => {
        const lightbox = await elementorFrontend.utils.lightbox;

        if (settings.id) {
          lightbox.openSlideshow(settings.id, settings.url);
        } else {
          if (settings.html) {
            delete settings.html;
          }

          lightbox.showModal(settings);
        }
      }
    };
  }

  addAction(name, callback) {
    this.actions[name] = callback;
  }

  runAction(url, ...restArgs) {
    url = decodeURIComponent(url);
    const actionMatch = url.match(/action=(.+?)&/),
          settingsMatch = url.match(/settings=(.+)/);

    if (!actionMatch) {
      return;
    }

    const action = this.actions[actionMatch[1]];

    if (!action) {
      return;
    }

    let settings = {};

    if (settingsMatch) {
      settings = JSON.parse(atob(settingsMatch[1]));
    }

    action(settings, ...restArgs);
  }

  runLinkAction(event) {
    event.preventDefault();
    this.runAction(jQuery(event.currentTarget).attr('href'), event);
  }

  runHashAction() {
    if (location.hash) {
      this.runAction(location.hash);
    }
  }

  createActionHash(action, settings) {
    // We need to encode the hash tag (#) here, in order to support share links for a variety of providers
    return encodeURIComponent(`#elementor-action:action=${action}&settings=${btoa(JSON.stringify(settings))}`);
  }

  onInit() {
    super.onInit();
    this.initActions();
    elementorFrontend.on('components:init', this.runHashAction.bind(this));
  }

}

exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/frontend/utils/utils.js":
/*!************************************************!*\
  !*** ../assets/dev/js/frontend/utils/utils.js ***!
  \************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.escapeHTML = void 0;

// Escape HTML special chars to prevent XSS.
const escapeHTML = str => {
  const specialChars = {
    '&': '&amp;',
    '<': '&lt;',
    '>': '&gt;',
    "'": '&#39;',
    '"': '&quot;'
  };
  return str.replace(/[&<>'"]/g, tag => specialChars[tag] || tag);
};

exports.escapeHTML = escapeHTML;

/***/ }),

/***/ "../assets/dev/js/frontend/utils/video-api/base-loader.js":
/*!****************************************************************!*\
  !*** ../assets/dev/js/frontend/utils/video-api/base-loader.js ***!
  \****************************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

class BaseLoader extends elementorModules.ViewModule {
  getDefaultSettings() {
    return {
      isInserted: false,
      selectors: {
        firstScript: 'script:first'
      }
    };
  }

  getDefaultElements() {
    return {
      $firstScript: jQuery(this.getSettings('selectors.firstScript'))
    };
  }

  insertAPI() {
    this.elements.$firstScript.before(jQuery('<script>', {
      src: this.getApiURL()
    }));
    this.setSettings('isInserted', true);
  }

  getVideoIDFromURL(url) {
    const videoIDParts = url.match(this.getURLRegex());
    return videoIDParts && videoIDParts[1];
  }

  onApiReady(callback) {
    if (!this.getSettings('isInserted')) {
      this.insertAPI();
    }

    if (this.isApiLoaded()) {
      callback(this.getApiObject());
    } else {
      // If not ready check again by timeout..
      setTimeout(() => {
        this.onApiReady(callback);
      }, 350);
    }
  }

  getAutoplayURL(videoURL) {
    return videoURL.replace('&autoplay=0', '') + '&autoplay=1';
  }

}

exports.default = BaseLoader;

/***/ }),

/***/ "../assets/dev/js/frontend/utils/video-api/vimeo-loader.js":
/*!*****************************************************************!*\
  !*** ../assets/dev/js/frontend/utils/video-api/vimeo-loader.js ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");

Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

var _baseLoader = _interopRequireDefault(__webpack_require__(/*! ./base-loader */ "../assets/dev/js/frontend/utils/video-api/base-loader.js"));

class VimeoLoader extends _baseLoader.default {
  getApiURL() {
    return 'https://player.vimeo.com/api/player.js';
  }

  getURLRegex() {
    return /^(?:https?:\/\/)?(?:www|player\.)?(?:vimeo\.com\/)?(?:video\/|external\/)?(\d+)([^.?&#"'>]?)/;
  }

  isApiLoaded() {
    return window.Vimeo;
  }

  getApiObject() {
    return Vimeo;
  }

  getAutoplayURL(videoURL) {
    videoURL = super.getAutoplayURL(videoURL); // Vimeo requires the '#t=' param to be last in the URL.

    const timeMatch = videoURL.match(/#t=[^&]*/);
    return videoURL.replace(timeMatch[0], '') + timeMatch;
  }

}

exports.default = VimeoLoader;

/***/ }),

/***/ "../assets/dev/js/frontend/utils/video-api/youtube-loader.js":
/*!*******************************************************************!*\
  !*** ../assets/dev/js/frontend/utils/video-api/youtube-loader.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");

Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

var _baseLoader = _interopRequireDefault(__webpack_require__(/*! ./base-loader */ "../assets/dev/js/frontend/utils/video-api/base-loader.js"));

class YoutubeLoader extends _baseLoader.default {
  getApiURL() {
    return 'https://www.youtube.com/iframe_api';
  }

  getURLRegex() {
    return /^(?:https?:\/\/)?(?:www\.)?(?:m\.)?(?:youtu\.be\/|youtube\.com\/(?:(?:watch)?\?(?:.*&)?vi?=|(?:embed|v|vi|user)\/))([^?&"'>]+)/;
  }

  isApiLoaded() {
    return window.YT && YT.loaded;
  }

  getApiObject() {
    return YT;
  }

}

exports.default = YoutubeLoader;

/***/ }),

/***/ "../assets/dev/js/public-path.js":
/*!***************************************!*\
  !*** ../assets/dev/js/public-path.js ***!
  \***************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


/* eslint-disable camelcase */
__webpack_require__.p = elementorFrontendConfig.urls.assets + 'js/';

/***/ }),

/***/ "../assets/dev/js/utils/breakpoints.js":
/*!*********************************************!*\
  !*** ../assets/dev/js/utils/breakpoints.js ***!
  \*********************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

/**
 * Breakpoints
 *
 * This utility class contains helper functions relating to Elementor's breakpoints system.
 *
 * @since 3.4.0
 */
class Breakpoints extends elementorModules.Module {
  constructor(responsiveConfig) {
    super(); // The passed config is either `elementor.config.responsive` or `elementorFrontend.config.responsive`

    this.responsiveConfig = responsiveConfig;
  }
  /**
   * Get Active Breakpoints List
   *
   * Returns a flat array containing the active breakpoints/devices. By default, it returns the li
   * the list ordered from smallest to largest breakpoint. If `true` is passed as a parameter, it reverses the order.
   *
   * @since 3.4.0
   *
   * @param {Object} args
   */


  getActiveBreakpointsList(args = {}) {
    const defaultArgs = {
      largeToSmall: false,
      withDesktop: false
    };
    args = { ...defaultArgs,
      ...args
    };
    const breakpointKeys = Object.keys(this.responsiveConfig.activeBreakpoints);

    if (args.withDesktop) {
      // If there is an active 'widescreen' breakpoint, insert the artificial 'desktop' device below it.
      const widescreenIndex = breakpointKeys.indexOf('widescreen'),
            indexToInsertDesktopDevice = -1 === widescreenIndex ? breakpointKeys.length : breakpointKeys.length - 1;
      breakpointKeys.splice(indexToInsertDesktopDevice, 0, 'desktop');
    }

    if (args.largeToSmall) {
      breakpointKeys.reverse();
    }

    return breakpointKeys;
  }
  /**
   * Get Active Breakpoint Values
   *
   * Returns a flat array containing the list of active breakpoint values, from smallest to largest.
   *
   * @since 3.4.0
   */


  getBreakpointValues() {
    const {
      activeBreakpoints
    } = this.responsiveConfig,
          breakpointValues = [];
    Object.values(activeBreakpoints).forEach(breakpointConfig => {
      breakpointValues.push(breakpointConfig.value);
    });
    return breakpointValues;
  }
  /**
   * Get Desktop Previous Device Key
   *
   * Returns the key of the device directly under desktop (can be 'tablet', 'tablet_extra', 'laptop').
   *
   * @since 3.4.0
   *
   * @returns {string}
   */


  getDesktopPreviousDeviceKey() {
    let desktopPreviousDevice = '';
    const {
      activeBreakpoints
    } = this.responsiveConfig,
          breakpointKeys = Object.keys(activeBreakpoints),
          numOfDevices = breakpointKeys.length;

    if ('min' === activeBreakpoints[breakpointKeys[numOfDevices - 1]].direction) {
      // If the widescreen breakpoint is active, the device that's previous to desktop is the last one before
      // widescreen.
      desktopPreviousDevice = breakpointKeys[numOfDevices - 2];
    } else {
      // If the widescreen breakpoint isn't active, we just take the last device returned by the config.
      desktopPreviousDevice = breakpointKeys[numOfDevices - 1];
    }

    return desktopPreviousDevice;
  }
  /**
   * Get Device Minimum Breakpoint
   *
   * Returns the minimum point in the device's display range. For each device, the minimum point of its display range
   * is the max point of the device below it + 1px. For example, if the active devices are mobile, tablet,
   * and desktop, and the mobile breakpoint is 767px, the minimum display point for tablet devices is 768px.
   *
   * @since 3.4.0
   *
   * @returns {number|*}
   */


  getDesktopMinPoint() {
    const {
      activeBreakpoints
    } = this.responsiveConfig,
          desktopPreviousDevice = this.getDesktopPreviousDeviceKey();
    return activeBreakpoints[desktopPreviousDevice].value + 1;
  }
  /**
   * Get Device Minimum Breakpoint
   *
   * Returns the minimum point in the device's display range. For each device, the minimum point of its display range
   * is the max point of the device below it + 1px. For example, if the active devices are mobile, tablet,
   * and desktop, and the mobile breakpoint is 767px, the minimum display point for tablet devices is 768px.
   *
   * @since 3.4.0
   *
   * @param device
   * @returns {number|*}
   */


  getDeviceMinBreakpoint(device) {
    if ('desktop' === device) {
      return this.getDesktopMinPoint();
    }

    const {
      activeBreakpoints
    } = this.responsiveConfig,
          breakpointNames = Object.keys(activeBreakpoints);
    let minBreakpoint;

    if (breakpointNames[0] === device) {
      // For the lowest breakpoint, the min point is always 320.
      minBreakpoint = 320;
    } else if ('widescreen' === device) {
      // Widescreen only has a minimum point. In this case, the breakpoint
      // value in the Breakpoints config is itself the device min point.
      if (activeBreakpoints[device]) {
        minBreakpoint = activeBreakpoints[device].value;
      } else {
        // If the widescreen breakpoint does not exist in the active breakpoints config (for example, in the
        // case this method runs as the breakpoint is being added), get the value from the full config.
        minBreakpoint = this.responsiveConfig.breakpoints.widescreen;
      }
    } else {
      const deviceNameIndex = breakpointNames.indexOf(device),
            previousIndex = deviceNameIndex - 1;
      minBreakpoint = activeBreakpoints[breakpointNames[previousIndex]].value + 1;
    }

    return minBreakpoint;
  }
  /**
   * Get Active Match Regex
   *
   * Returns a regular expression containing all active breakpoints prefixed with an underscore.
   *
   * @returns {RegExp}
   */


  getActiveMatchRegex() {
    return new RegExp(this.getActiveBreakpointsList().map(device => '_' + device).join('|') + '$');
  }

}

exports.default = Breakpoints;

/***/ }),

/***/ "../assets/dev/js/utils/hooks.js":
/*!***************************************!*\
  !*** ../assets/dev/js/utils/hooks.js ***!
  \***************************************/
/***/ ((module) => {

"use strict";

/**
 * Handles managing all events for whatever you plug it into. Priorities for hooks are based on lowest to highest in
 * that, lowest priority hooks are fired first.
 */

var EventManager = function () {
  var slice = Array.prototype.slice,
      MethodsAvailable;
  /**
   * Contains the hooks that get registered with this EventManager. The array for storage utilizes a "flat"
   * object literal such that looking up the hook utilizes the native object literal hash.
   */

  var STORAGE = {
    actions: {},
    filters: {}
  };
  /**
   * Removes the specified hook by resetting the value of it.
   *
   * @param type Type of hook, either 'actions' or 'filters'
   * @param hook The hook (namespace.identifier) to remove
   *
   * @private
   */

  function _removeHook(type, hook, callback, context) {
    var handlers, handler, i;

    if (!STORAGE[type][hook]) {
      return;
    }

    if (!callback) {
      STORAGE[type][hook] = [];
    } else {
      handlers = STORAGE[type][hook];

      if (!context) {
        for (i = handlers.length; i--;) {
          if (handlers[i].callback === callback) {
            handlers.splice(i, 1);
          }
        }
      } else {
        for (i = handlers.length; i--;) {
          handler = handlers[i];

          if (handler.callback === callback && handler.context === context) {
            handlers.splice(i, 1);
          }
        }
      }
    }
  }
  /**
   * Use an insert sort for keeping our hooks organized based on priority. This function is ridiculously faster
   * than bubble sort, etc: http://jsperf.com/javascript-sort
   *
   * @param hooks The custom array containing all of the appropriate hooks to perform an insert sort on.
   * @private
   */


  function _hookInsertSort(hooks) {
    var tmpHook, j, prevHook;

    for (var i = 1, len = hooks.length; i < len; i++) {
      tmpHook = hooks[i];
      j = i;

      while ((prevHook = hooks[j - 1]) && prevHook.priority > tmpHook.priority) {
        hooks[j] = hooks[j - 1];
        --j;
      }

      hooks[j] = tmpHook;
    }

    return hooks;
  }
  /**
   * Adds the hook to the appropriate storage container
   *
   * @param type 'actions' or 'filters'
   * @param hook The hook (namespace.identifier) to add to our event manager
   * @param callback The function that will be called when the hook is executed.
   * @param priority The priority of this hook. Must be an integer.
   * @param [context] A value to be used for this
   * @private
   */


  function _addHook(type, hook, callback, priority, context) {
    var hookObject = {
      callback: callback,
      priority: priority,
      context: context
    }; // Utilize 'prop itself' : http://jsperf.com/hasownproperty-vs-in-vs-undefined/19

    var hooks = STORAGE[type][hook];

    if (hooks) {
      // TEMP FIX BUG
      var hasSameCallback = false;
      jQuery.each(hooks, function () {
        if (this.callback === callback) {
          hasSameCallback = true;
          return false;
        }
      });

      if (hasSameCallback) {
        return;
      } // END TEMP FIX BUG


      hooks.push(hookObject);
      hooks = _hookInsertSort(hooks);
    } else {
      hooks = [hookObject];
    }

    STORAGE[type][hook] = hooks;
  }
  /**
   * Runs the specified hook. If it is an action, the value is not modified but if it is a filter, it is.
   *
   * @param type 'actions' or 'filters'
   * @param hook The hook ( namespace.identifier ) to be ran.
   * @param args Arguments to pass to the action/filter. If it's a filter, args is actually a single parameter.
   * @private
   */


  function _runHook(type, hook, args) {
    var handlers = STORAGE[type][hook],
        i,
        len;

    if (!handlers) {
      return 'filters' === type ? args[0] : false;
    }

    len = handlers.length;

    if ('filters' === type) {
      for (i = 0; i < len; i++) {
        args[0] = handlers[i].callback.apply(handlers[i].context, args);
      }
    } else {
      for (i = 0; i < len; i++) {
        handlers[i].callback.apply(handlers[i].context, args);
      }
    }

    return 'filters' === type ? args[0] : true;
  }
  /**
   * Adds an action to the event manager.
   *
   * @param action Must contain namespace.identifier
   * @param callback Must be a valid callback function before this action is added
   * @param [priority=10] Used to control when the function is executed in relation to other callbacks bound to the same hook
   * @param [context] Supply a value to be used for this
   */


  function addAction(action, callback, priority, context) {
    if ('string' === typeof action && 'function' === typeof callback) {
      priority = parseInt(priority || 10, 10);

      _addHook('actions', action, callback, priority, context);
    }

    return MethodsAvailable;
  }
  /**
   * Performs an action if it exists. You can pass as many arguments as you want to this function; the only rule is
   * that the first argument must always be the action.
   */


  function doAction() {
    var args = slice.call(arguments);
    var action = args.shift();

    if ('string' === typeof action) {
      _runHook('actions', action, args);
    }

    return MethodsAvailable;
  }
  /**
   * Removes the specified action if it contains a namespace.identifier & exists.
   *
   * @param action The action to remove
   * @param [callback] Callback function to remove
   */


  function removeAction(action, callback) {
    if ('string' === typeof action) {
      _removeHook('actions', action, callback);
    }

    return MethodsAvailable;
  }
  /**
   * Adds a filter to the event manager.
   *
   * @param filter Must contain namespace.identifier
   * @param callback Must be a valid callback function before this action is added
   * @param [priority=10] Used to control when the function is executed in relation to other callbacks bound to the same hook
   * @param [context] Supply a value to be used for this
   */


  function addFilter(filter, callback, priority, context) {
    if ('string' === typeof filter && 'function' === typeof callback) {
      priority = parseInt(priority || 10, 10);

      _addHook('filters', filter, callback, priority, context);
    }

    return MethodsAvailable;
  }
  /**
   * Performs a filter if it exists. You should only ever pass 1 argument to be filtered. The only rule is that
   * the first argument must always be the filter.
   */


  function applyFilters() {
    var args = slice.call(arguments);
    var filter = args.shift();

    if ('string' === typeof filter) {
      return _runHook('filters', filter, args);
    }

    return MethodsAvailable;
  }
  /**
   * Removes the specified filter if it contains a namespace.identifier & exists.
   *
   * @param filter The action to remove
   * @param [callback] Callback function to remove
   */


  function removeFilter(filter, callback) {
    if ('string' === typeof filter) {
      _removeHook('filters', filter, callback);
    }

    return MethodsAvailable;
  }
  /**
   * Maintain a reference to the object scope so our public methods never get confusing.
   */


  MethodsAvailable = {
    removeFilter: removeFilter,
    applyFilters: applyFilters,
    addFilter: addFilter,
    removeAction: removeAction,
    doAction: doAction,
    addAction: addAction
  }; // return all of the publicly available methods

  return MethodsAvailable;
};

module.exports = EventManager;

/***/ }),

/***/ "../core/common/assets/js/utils/environment.js":
/*!*****************************************************!*\
  !*** ../core/common/assets/js/utils/environment.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

const matchUserAgent = UserAgentStr => {
  return userAgent.indexOf(UserAgentStr) >= 0;
},
      userAgent = navigator.userAgent,
      // Solution influenced by https://stackoverflow.com/questions/9847580/how-to-detect-safari-chrome-ie-firefox-and-opera-browser
// Opera 8.0+
isOpera = !!window.opr && !!opr.addons || !!window.opera || matchUserAgent(' OPR/'),
      // Firefox 1.0+
isFirefox = matchUserAgent('Firefox'),
      // Safari 3.0+ "[object HTMLElementConstructor]"
isSafari = /^((?!chrome|android).)*safari/i.test(userAgent) || /constructor/i.test(window.HTMLElement) || (p => {
  return '[object SafariRemoteNotification]' === p.toString();
})(!window.safari || typeof safari !== 'undefined' && safari.pushNotification),
      // Internet Explorer 6-11
isIE = /Trident|MSIE/.test(userAgent) && (
/*@cc_on!@*/
 false || !!document.documentMode),
      // Edge 20+
isEdge = !isIE && !!window.StyleMedia || matchUserAgent('Edg'),
      // Google Chrome (Not accurate)
isChrome = !!window.chrome && matchUserAgent('Chrome') && !(isEdge || isOpera),
      // Blink engine
isBlink = matchUserAgent('Chrome') && !!window.CSS,
      // Apple Webkit engine
isAppleWebkit = matchUserAgent('AppleWebKit') && !isBlink,
      environment = {
  appleWebkit: isAppleWebkit,
  blink: isBlink,
  chrome: isChrome,
  edge: isEdge,
  firefox: isFirefox,
  ie: isIE,
  mac: matchUserAgent('Macintosh'),
  opera: isOpera,
  safari: isSafari,
  webkit: matchUserAgent('AppleWebKit')
};

var _default = environment;
exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/utils/storage.js":
/*!*************************************************!*\
  !*** ../core/common/assets/js/utils/storage.js ***!
  \*************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

class _default extends elementorModules.Module {
  get(key, options) {
    options = options || {};
    let storage;

    try {
      storage = options.session ? sessionStorage : localStorage;
    } catch (e) {
      return key ? undefined : {};
    }

    let elementorStorage = storage.getItem('elementor');

    if (elementorStorage) {
      elementorStorage = JSON.parse(elementorStorage);
    } else {
      elementorStorage = {};
    }

    if (!elementorStorage.__expiration) {
      elementorStorage.__expiration = {};
    }

    const expiration = elementorStorage.__expiration;
    let expirationToCheck = [];

    if (key) {
      if (expiration[key]) {
        expirationToCheck = [key];
      }
    } else {
      expirationToCheck = Object.keys(expiration);
    }

    let entryExpired = false;
    expirationToCheck.forEach(expirationKey => {
      if (new Date(expiration[expirationKey]) < new Date()) {
        delete elementorStorage[expirationKey];
        delete expiration[expirationKey];
        entryExpired = true;
      }
    });

    if (entryExpired) {
      this.save(elementorStorage, options.session);
    }

    if (key) {
      return elementorStorage[key];
    }

    return elementorStorage;
  }

  set(key, value, options) {
    options = options || {};
    const elementorStorage = this.get(null, options);
    elementorStorage[key] = value;

    if (options.lifetimeInSeconds) {
      const date = new Date();
      date.setTime(date.getTime() + options.lifetimeInSeconds * 1000);
      elementorStorage.__expiration[key] = date.getTime();
    }

    this.save(elementorStorage, options.session);
  }

  save(object, session) {
    let storage;

    try {
      storage = session ? sessionStorage : localStorage;
    } catch (e) {
      return;
    }

    storage.setItem('elementor', JSON.stringify(object));
  }

}

exports.default = _default;

/***/ }),

/***/ "../modules/shapes/assets/js/frontend/frontend.js":
/*!********************************************************!*\
  !*** ../modules/shapes/assets/js/frontend/frontend.js ***!
  \********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

class _default extends elementorModules.Module {
  constructor() {
    super();
    elementorFrontend.elementsHandler.attachHandler('text-path', () => __webpack_require__.e(/*! import() | text-path */ "text-path").then(__webpack_require__.bind(__webpack_require__, /*! ./handlers/text-path */ "../modules/shapes/assets/js/frontend/handlers/text-path.js")));
  }

}

exports.default = _default;

/***/ })

},
/******/ __webpack_require__ => { // webpackRuntimeModules
/******/ "use strict";
/******/ 
/******/ var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
/******/ __webpack_require__.O(0, ["frontend-modules"], () => (__webpack_exec__("../assets/dev/js/frontend/frontend.js")));
/******/ var __webpack_exports__ = __webpack_require__.O();
/******/ }
]);
//# sourceMappingURL=frontend.js.mapassets/js/accordion.5824c4bc9e26d54f2918.bundle.js000064400000016447151327220410015014 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(self["webpackChunkelementor"] = self["webpackChunkelementor"] || []).push([["accordion"],{

/***/ "../assets/dev/js/frontend/handlers/accordion.js":
/*!*******************************************************!*\
  !*** ../assets/dev/js/frontend/handlers/accordion.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");

Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

var _baseTabs = _interopRequireDefault(__webpack_require__(/*! ./base-tabs */ "../assets/dev/js/frontend/handlers/base-tabs.js"));

class Accordion extends _baseTabs.default {
  getDefaultSettings() {
    const defaultSettings = super.getDefaultSettings();
    return { ...defaultSettings,
      showTabFn: 'slideDown',
      hideTabFn: 'slideUp'
    };
  }

}

exports.default = Accordion;

/***/ }),

/***/ "../assets/dev/js/frontend/handlers/base-tabs.js":
/*!*******************************************************!*\
  !*** ../assets/dev/js/frontend/handlers/base-tabs.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

class baseTabs extends elementorModules.frontend.handlers.Base {
  getDefaultSettings() {
    return {
      selectors: {
        tablist: '[role="tablist"]',
        tabTitle: '.elementor-tab-title',
        tabContent: '.elementor-tab-content'
      },
      classes: {
        active: 'elementor-active'
      },
      showTabFn: 'show',
      hideTabFn: 'hide',
      toggleSelf: true,
      hidePrevious: true,
      autoExpand: true,
      keyDirection: {
        ArrowLeft: elementorFrontendConfig.is_rtl ? 1 : -1,
        ArrowUp: -1,
        ArrowRight: elementorFrontendConfig.is_rtl ? -1 : 1,
        ArrowDown: 1
      }
    };
  }

  getDefaultElements() {
    const selectors = this.getSettings('selectors');
    return {
      $tabTitles: this.findElement(selectors.tabTitle),
      $tabContents: this.findElement(selectors.tabContent)
    };
  }

  activateDefaultTab() {
    const settings = this.getSettings();

    if (!settings.autoExpand || 'editor' === settings.autoExpand && !this.isEdit) {
      return;
    }

    const defaultActiveTab = this.getEditSettings('activeItemIndex') || 1,
          originalToggleMethods = {
      showTabFn: settings.showTabFn,
      hideTabFn: settings.hideTabFn
    }; // Toggle tabs without animation to avoid jumping

    this.setSettings({
      showTabFn: 'show',
      hideTabFn: 'hide'
    });
    this.changeActiveTab(defaultActiveTab); // Return back original toggle effects

    this.setSettings(originalToggleMethods);
  }

  handleKeyboardNavigation(event) {
    const tab = event.currentTarget,
          $tabList = jQuery(tab.closest(this.getSettings('selectors').tablist)),
          $tabs = $tabList.find(this.getSettings('selectors').tabTitle),
          isVertical = 'vertical' === $tabList.attr('aria-orientation');

    switch (event.key) {
      case 'ArrowLeft':
      case 'ArrowRight':
        if (isVertical) {
          return;
        }

        break;

      case 'ArrowUp':
      case 'ArrowDown':
        if (!isVertical) {
          return;
        }

        event.preventDefault();
        break;

      case 'Home':
        event.preventDefault();
        $tabs.first().focus();
        return;

      case 'End':
        event.preventDefault();
        $tabs.last().focus();
        return;

      default:
        return;
    }

    const tabIndex = tab.getAttribute('data-tab') - 1,
          direction = this.getSettings('keyDirection')[event.key],
          nextTab = $tabs[tabIndex + direction];

    if (nextTab) {
      nextTab.focus();
    } else if (-1 === tabIndex + direction) {
      $tabs.last().focus();
    } else {
      $tabs.first().focus();
    }
  }

  deactivateActiveTab(tabIndex) {
    const settings = this.getSettings(),
          activeClass = settings.classes.active,
          activeFilter = tabIndex ? '[data-tab="' + tabIndex + '"]' : '.' + activeClass,
          $activeTitle = this.elements.$tabTitles.filter(activeFilter),
          $activeContent = this.elements.$tabContents.filter(activeFilter);
    $activeTitle.add($activeContent).removeClass(activeClass);
    $activeTitle.attr({
      tabindex: '-1',
      'aria-selected': 'false',
      'aria-expanded': 'false'
    });
    $activeContent[settings.hideTabFn]();
    $activeContent.attr('hidden', 'hidden');
  }

  activateTab(tabIndex) {
    const settings = this.getSettings(),
          activeClass = settings.classes.active,
          $requestedTitle = this.elements.$tabTitles.filter('[data-tab="' + tabIndex + '"]'),
          $requestedContent = this.elements.$tabContents.filter('[data-tab="' + tabIndex + '"]'),
          animationDuration = 'show' === settings.showTabFn ? 0 : 400;
    $requestedTitle.add($requestedContent).addClass(activeClass);
    $requestedTitle.attr({
      tabindex: '0',
      'aria-selected': 'true',
      'aria-expanded': 'true'
    });
    $requestedContent[settings.showTabFn](animationDuration, () => elementorFrontend.elements.$window.trigger('resize'));
    $requestedContent.removeAttr('hidden');
  }

  isActiveTab(tabIndex) {
    return this.elements.$tabTitles.filter('[data-tab="' + tabIndex + '"]').hasClass(this.getSettings('classes.active'));
  }

  bindEvents() {
    this.elements.$tabTitles.on({
      keydown: event => {
        // Support for old markup that includes an `<a>` tag in the tab
        if (jQuery(event.target).is('a') && `Enter` === event.key) {
          event.preventDefault();
        } // We listen to keydowon event for these keys in order to prevent undesired page scrolling


        if (['End', 'Home', 'ArrowUp', 'ArrowDown'].includes(event.key)) {
          this.handleKeyboardNavigation(event);
        }
      },
      keyup: event => {
        switch (event.key) {
          case 'ArrowLeft':
          case 'ArrowRight':
            this.handleKeyboardNavigation(event);
            break;

          case 'Enter':
          case 'Space':
            event.preventDefault();
            this.changeActiveTab(event.currentTarget.getAttribute('data-tab'));
            break;
        }
      },
      click: event => {
        event.preventDefault();
        this.changeActiveTab(event.currentTarget.getAttribute('data-tab'));
      }
    });
  }

  onInit(...args) {
    super.onInit(...args);
    this.activateDefaultTab();
  }

  onEditSettingsChange(propertyName) {
    if ('activeItemIndex' === propertyName) {
      this.activateDefaultTab();
    }
  }

  changeActiveTab(tabIndex) {
    const isActiveTab = this.isActiveTab(tabIndex),
          settings = this.getSettings();

    if ((settings.toggleSelf || !isActiveTab) && settings.hidePrevious) {
      this.deactivateActiveTab();
    }

    if (!settings.hidePrevious && isActiveTab) {
      this.deactivateActiveTab(tabIndex);
    }

    if (!isActiveTab) {
      this.activateTab(tabIndex);
    }
  }

}

exports.default = baseTabs;

/***/ })

}]);
//# sourceMappingURL=accordion.5824c4bc9e26d54f2918.bundle.js.mapassets/js/image-carousel.024943eec9daaabea9ff.bundle.js000064400000013313151327220410016361 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(self["webpackChunkelementor"] = self["webpackChunkelementor"] || []).push([["image-carousel"],{

/***/ "../assets/dev/js/frontend/handlers/image-carousel.js":
/*!************************************************************!*\
  !*** ../assets/dev/js/frontend/handlers/image-carousel.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

class ImageCarousel extends elementorModules.frontend.handlers.SwiperBase {
  getDefaultSettings() {
    return {
      selectors: {
        carousel: '.elementor-image-carousel-wrapper',
        slideContent: '.swiper-slide'
      }
    };
  }

  getDefaultElements() {
    const selectors = this.getSettings('selectors');
    const elements = {
      $swiperContainer: this.$element.find(selectors.carousel)
    };
    elements.$slides = elements.$swiperContainer.find(selectors.slideContent);
    return elements;
  }

  getSwiperSettings() {
    const elementSettings = this.getElementSettings(),
          slidesToShow = +elementSettings.slides_to_show || 3,
          isSingleSlide = 1 === slidesToShow,
          elementorBreakpoints = elementorFrontend.config.responsive.activeBreakpoints,
          defaultSlidesToShowMap = {
      mobile: 1,
      tablet: isSingleSlide ? 1 : 2
    };
    const swiperOptions = {
      slidesPerView: slidesToShow,
      loop: 'yes' === elementSettings.infinite,
      speed: elementSettings.speed,
      handleElementorBreakpoints: true
    };
    swiperOptions.breakpoints = {};
    let lastBreakpointSlidesToShowValue = slidesToShow;
    Object.keys(elementorBreakpoints).reverse().forEach(breakpointName => {
      // Tablet has a specific default `slides_to_show`.
      const defaultSlidesToShow = defaultSlidesToShowMap[breakpointName] ? defaultSlidesToShowMap[breakpointName] : lastBreakpointSlidesToShowValue;
      swiperOptions.breakpoints[elementorBreakpoints[breakpointName].value] = {
        slidesPerView: +elementSettings['slides_to_show_' + breakpointName] || defaultSlidesToShow,
        slidesPerGroup: +elementSettings['slides_to_scroll_' + breakpointName] || 1
      };
      lastBreakpointSlidesToShowValue = +elementSettings['slides_to_show_' + breakpointName] || defaultSlidesToShow;
    });

    if ('yes' === elementSettings.autoplay) {
      swiperOptions.autoplay = {
        delay: elementSettings.autoplay_speed,
        disableOnInteraction: 'yes' === elementSettings.pause_on_interaction
      };
    }

    if (isSingleSlide) {
      swiperOptions.effect = elementSettings.effect;

      if ('fade' === elementSettings.effect) {
        swiperOptions.fadeEffect = {
          crossFade: true
        };
      }
    } else {
      swiperOptions.slidesPerGroup = +elementSettings.slides_to_scroll || 1;
    }

    if (elementSettings.image_spacing_custom) {
      swiperOptions.spaceBetween = elementSettings.image_spacing_custom.size;
    }

    const showArrows = 'arrows' === elementSettings.navigation || 'both' === elementSettings.navigation,
          showDots = 'dots' === elementSettings.navigation || 'both' === elementSettings.navigation;

    if (showArrows) {
      swiperOptions.navigation = {
        prevEl: '.elementor-swiper-button-prev',
        nextEl: '.elementor-swiper-button-next'
      };
    }

    if (showDots) {
      swiperOptions.pagination = {
        el: '.swiper-pagination',
        type: 'bullets',
        clickable: true
      };
    }

    return swiperOptions;
  }

  async onInit(...args) {
    super.onInit(...args);
    const elementSettings = this.getElementSettings();

    if (!this.elements.$swiperContainer.length || 2 > this.elements.$slides.length) {
      return;
    }

    const Swiper = elementorFrontend.utils.swiper;
    this.swiper = await new Swiper(this.elements.$swiperContainer, this.getSwiperSettings()); // Expose the swiper instance in the frontend

    this.elements.$swiperContainer.data('swiper', this.swiper);

    if ('yes' === elementSettings.pause_on_hover) {
      this.togglePauseOnHover(true);
    }
  }

  updateSwiperOption(propertyName) {
    const elementSettings = this.getElementSettings(),
          newSettingValue = elementSettings[propertyName],
          params = this.swiper.params; // Handle special cases where the value to update is not the value that the Swiper library accepts.

    switch (propertyName) {
      case 'image_spacing_custom':
        params.spaceBetween = newSettingValue.size || 0;
        break;

      case 'autoplay_speed':
        params.autoplay.delay = newSettingValue;
        break;

      case 'speed':
        params.speed = newSettingValue;
        break;
    }

    this.swiper.update();
  }

  getChangeableProperties() {
    return {
      pause_on_hover: 'pauseOnHover',
      autoplay_speed: 'delay',
      speed: 'speed',
      image_spacing_custom: 'spaceBetween'
    };
  }

  onElementChange(propertyName) {
    const changeableProperties = this.getChangeableProperties();

    if (changeableProperties[propertyName]) {
      // 'pause_on_hover' is implemented by the handler with event listeners, not the Swiper library.
      if ('pause_on_hover' === propertyName) {
        const newSettingValue = this.getElementSettings('pause_on_hover');
        this.togglePauseOnHover('yes' === newSettingValue);
      } else {
        this.updateSwiperOption(propertyName);
      }
    }
  }

  onEditSettingsChange(propertyName) {
    if ('activeItemIndex' === propertyName) {
      this.swiper.slideToLoop(this.getEditSettings('activeItemIndex') - 1);
    }
  }

}

exports.default = ImageCarousel;

/***/ })

}]);
//# sourceMappingURL=image-carousel.024943eec9daaabea9ff.bundle.js.mapassets/js/admin-top-bar.js000064400000624166151327220410011466 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
/******/ (() => { // webpackBootstrap
/******/ 	var __webpack_modules__ = ({

/***/ "../node_modules/@babel/runtime-corejs2/core-js/array/from.js":
/*!********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/array/from.js ***!
  \********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/array/from */ "../node_modules/core-js/library/fn/array/from.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/array/is-array */ "../node_modules/core-js/library/fn/array/is-array.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js":
/*!********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js ***!
  \********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/define-property */ "../node_modules/core-js/library/fn/object/define-property.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js":
/*!********************************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js ***!
  \********************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/get-own-property-descriptor */ "../node_modules/core-js/library/fn/object/get-own-property-descriptor.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js":
/*!****************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/symbol.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/symbol */ "../node_modules/core-js/library/fn/symbol/index.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js":
/*!*************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js ***!
  \*************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/symbol/iterator */ "../node_modules/core-js/library/fn/symbol/iterator.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/weak-map.js":
/*!******************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/weak-map.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/weak-map */ "../node_modules/core-js/library/fn/weak-map.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/arrayLikeToArray.js":
/*!**************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/arrayLikeToArray.js ***!
  \**************************************************************************/
/***/ ((module) => {

function _arrayLikeToArray(arr, len) {
  if (len == null || len > arr.length) len = arr.length;

  for (var i = 0, arr2 = new Array(len); i < len; i++) {
    arr2[i] = arr[i];
  }

  return arr2;
}

module.exports = _arrayLikeToArray;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/arrayWithHoles.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/arrayWithHoles.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Array$isArray = __webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js");

function _arrayWithHoles(arr) {
  if (_Array$isArray(arr)) return arr;
}

module.exports = _arrayWithHoles;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js":
/*!*******************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js ***!
  \*******************************************************************************/
/***/ ((module) => {

function _interopRequireDefault(obj) {
  return obj && obj.__esModule ? obj : {
    "default": obj
  };
}

module.exports = _interopRequireDefault;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js":
/*!********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js ***!
  \********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _typeof = __webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js").default;

var _WeakMap = __webpack_require__(/*! @babel/runtime-corejs2/core-js/weak-map */ "../node_modules/@babel/runtime-corejs2/core-js/weak-map.js");

var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _Object$getOwnPropertyDescriptor = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-own-property-descriptor */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js");

function _getRequireWildcardCache(nodeInterop) {
  if (typeof _WeakMap !== "function") return null;
  var cacheBabelInterop = new _WeakMap();
  var cacheNodeInterop = new _WeakMap();
  return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) {
    return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
  })(nodeInterop);
}

function _interopRequireWildcard(obj, nodeInterop) {
  if (!nodeInterop && obj && obj.__esModule) {
    return obj;
  }

  if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") {
    return {
      "default": obj
    };
  }

  var cache = _getRequireWildcardCache(nodeInterop);

  if (cache && cache.has(obj)) {
    return cache.get(obj);
  }

  var newObj = {};
  var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor;

  for (var key in obj) {
    if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
      var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null;

      if (desc && (desc.get || desc.set)) {
        _Object$defineProperty(newObj, key, desc);
      } else {
        newObj[key] = obj[key];
      }
    }
  }

  newObj["default"] = obj;

  if (cache) {
    cache.set(obj, newObj);
  }

  return newObj;
}

module.exports = _interopRequireWildcard;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/iterableToArrayLimit.js":
/*!******************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/iterableToArrayLimit.js ***!
  \******************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Symbol = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol */ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js");

var _Symbol$iterator = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/iterator */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js");

function _iterableToArrayLimit(arr, i) {
  var _i = arr == null ? null : typeof _Symbol !== "undefined" && arr[_Symbol$iterator] || arr["@@iterator"];

  if (_i == null) return;
  var _arr = [];
  var _n = true;
  var _d = false;

  var _s, _e;

  try {
    for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {
      _arr.push(_s.value);

      if (i && _arr.length === i) break;
    }
  } catch (err) {
    _d = true;
    _e = err;
  } finally {
    try {
      if (!_n && _i["return"] != null) _i["return"]();
    } finally {
      if (_d) throw _e;
    }
  }

  return _arr;
}

module.exports = _iterableToArrayLimit;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/nonIterableRest.js":
/*!*************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/nonIterableRest.js ***!
  \*************************************************************************/
/***/ ((module) => {

function _nonIterableRest() {
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
}

module.exports = _nonIterableRest;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var arrayWithHoles = __webpack_require__(/*! ./arrayWithHoles.js */ "../node_modules/@babel/runtime-corejs2/helpers/arrayWithHoles.js");

var iterableToArrayLimit = __webpack_require__(/*! ./iterableToArrayLimit.js */ "../node_modules/@babel/runtime-corejs2/helpers/iterableToArrayLimit.js");

var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js");

var nonIterableRest = __webpack_require__(/*! ./nonIterableRest.js */ "../node_modules/@babel/runtime-corejs2/helpers/nonIterableRest.js");

function _slicedToArray(arr, i) {
  return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();
}

module.exports = _slicedToArray;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js":
/*!****************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/typeof.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Symbol = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol */ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js");

var _Symbol$iterator = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/iterator */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js");

function _typeof(obj) {
  "@babel/helpers - typeof";

  if (typeof _Symbol === "function" && typeof _Symbol$iterator === "symbol") {
    module.exports = _typeof = function _typeof(obj) {
      return typeof obj;
    };

    module.exports.default = module.exports, module.exports.__esModule = true;
  } else {
    module.exports = _typeof = function _typeof(obj) {
      return obj && typeof _Symbol === "function" && obj.constructor === _Symbol && obj !== _Symbol.prototype ? "symbol" : typeof obj;
    };

    module.exports.default = module.exports, module.exports.__esModule = true;
  }

  return _typeof(obj);
}

module.exports = _typeof;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js":
/*!************************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js ***!
  \************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Array$from = __webpack_require__(/*! @babel/runtime-corejs2/core-js/array/from */ "../node_modules/@babel/runtime-corejs2/core-js/array/from.js");

var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/arrayLikeToArray.js");

function _unsupportedIterableToArray(o, minLen) {
  if (!o) return;
  if (typeof o === "string") return arrayLikeToArray(o, minLen);
  var n = Object.prototype.toString.call(o).slice(8, -1);
  if (n === "Object" && o.constructor) n = o.constructor.name;
  if (n === "Map" || n === "Set") return _Array$from(o);
  if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);
}

module.exports = _unsupportedIterableToArray;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../core/common/assets/js/utils/environment.js":
/*!*****************************************************!*\
  !*** ../core/common/assets/js/utils/environment.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");

__webpack_require__(/*! core-js/modules/es6.regexp.to-string.js */ "../node_modules/core-js/modules/es6.regexp.to-string.js");

var matchUserAgent = function matchUserAgent(UserAgentStr) {
  return userAgent.indexOf(UserAgentStr) >= 0;
},
    userAgent = navigator.userAgent,
    // Solution influenced by https://stackoverflow.com/questions/9847580/how-to-detect-safari-chrome-ie-firefox-and-opera-browser
// Opera 8.0+
isOpera = !!window.opr && !!opr.addons || !!window.opera || matchUserAgent(' OPR/'),
    // Firefox 1.0+
isFirefox = matchUserAgent('Firefox'),
    // Safari 3.0+ "[object HTMLElementConstructor]"
isSafari = /^((?!chrome|android).)*safari/i.test(userAgent) || /constructor/i.test(window.HTMLElement) || function (p) {
  return '[object SafariRemoteNotification]' === p.toString();
}(!window.safari || typeof safari !== 'undefined' && safari.pushNotification),
    // Internet Explorer 6-11
isIE = /Trident|MSIE/.test(userAgent) && (
/*@cc_on!@*/
 false || !!document.documentMode),
    // Edge 20+
isEdge = !isIE && !!window.StyleMedia || matchUserAgent('Edg'),
    // Google Chrome (Not accurate)
isChrome = !!window.chrome && matchUserAgent('Chrome') && !(isEdge || isOpera),
    // Blink engine
isBlink = matchUserAgent('Chrome') && !!window.CSS,
    // Apple Webkit engine
isAppleWebkit = matchUserAgent('AppleWebKit') && !isBlink,
    environment = {
  appleWebkit: isAppleWebkit,
  blink: isBlink,
  chrome: isChrome,
  edge: isEdge,
  firefox: isFirefox,
  ie: isIE,
  mac: matchUserAgent('Macintosh'),
  opera: isOpera,
  safari: isSafari,
  webkit: matchUserAgent('AppleWebKit')
};

var _default = environment;
exports.default = _default;

/***/ }),

/***/ "../modules/admin-top-bar/assets/js/admin-top-bar.js":
/*!***********************************************************!*\
  !*** ../modules/admin-top-bar/assets/js/admin-top-bar.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = AdminTopBar;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _barButton = _interopRequireDefault(__webpack_require__(/*! ./components/bar-button/bar-button */ "../modules/admin-top-bar/assets/js/components/bar-button/bar-button.js"));

var _barHeading = _interopRequireDefault(__webpack_require__(/*! ./components/bar-heading/bar-heading */ "../modules/admin-top-bar/assets/js/components/bar-heading/bar-heading.js"));

var _connectionButton = _interopRequireDefault(__webpack_require__(/*! ./components/connection-button/connection-button */ "../modules/admin-top-bar/assets/js/components/connection-button/connection-button.js"));

var _usePageTitle = __webpack_require__(/*! ./hooks/use-page-title/use-page-title */ "../modules/admin-top-bar/assets/js/hooks/use-page-title/use-page-title.js");

var _environment = _interopRequireDefault(__webpack_require__(/*! elementor-common/utils/environment */ "../core/common/assets/js/utils/environment.js"));

function AdminTopBar(props) {
  var actionButtonsRef = (0, _react.useRef)(); // Handle Top Bar visibility on initiation: Indicate that the admin top bar is visible and the page content needs to push down below the admin top bar for visibility.

  (0, _react.useEffect)(function () {
    var adminTopBarElement = document.querySelector('#e-admin-top-bar-root');
    adminTopBarElement.classList.add('e-admin-top-bar--active');
  }, []); // Handle the page title visibility in admin top bar.

  var pageTitleText = (0, _usePageTitle.usePageTitle)(); // Handle the action buttons visibility in admin top bar on initiation.

  (0, _react.useEffect)(function () {
    var actionButtonElements = document.querySelectorAll('.page-title-action');
    actionButtonElements.forEach(function (actionButtonElement) {
      actionButtonsRef.current.appendChild(actionButtonElement);
    });
  }, []);

  var finderAction = function finderAction() {
    $e.route('finder');
  };

  var controlSign = _environment.default.mac ? '⌘' : '^';
  var finderTooltipText = __('Search or do anything in Elementor', 'elementor') + " ".concat(controlSign, "+E");
  return /*#__PURE__*/_react.default.createElement("div", {
    className: "e-admin-top-bar"
  }, /*#__PURE__*/_react.default.createElement("div", {
    className: "e-admin-top-bar__main-area"
  }, /*#__PURE__*/_react.default.createElement(_barHeading.default, null, pageTitleText), /*#__PURE__*/_react.default.createElement("div", {
    className: "e-admin-top-bar__main-area-buttons",
    ref: actionButtonsRef
  })), /*#__PURE__*/_react.default.createElement("div", {
    className: "e-admin-top-bar__secondary-area"
  }, /*#__PURE__*/_react.default.createElement("div", {
    className: "e-admin-top-bar__secondary-area-buttons"
  }, window.elementorAdminTopBarConfig.is_administrator ? /*#__PURE__*/_react.default.createElement(_barButton.default, {
    onClick: finderAction,
    dataInfo: finderTooltipText,
    icon: "eicon-search-bold"
  }, __('Finder', 'elementor')) : '', window.elementorCloudAdmin ? window.elementorCloudAdmin() : ''), /*#__PURE__*/_react.default.createElement(_connectionButton.default, null)));
}

/***/ }),

/***/ "../modules/admin-top-bar/assets/js/components/bar-button/bar-button.js":
/*!******************************************************************************!*\
  !*** ../modules/admin-top-bar/assets/js/components/bar-button/bar-button.js ***!
  \******************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = BarButton;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

function BarButton(props) {
  (0, _react.useEffect)(function () {
    if (props.dataInfo) {
      jQuery('.e-admin-top-bar__bar-button[data-info]').tipsy({
        title: function title() {
          return this.getAttribute('data-info');
        },
        gravity: function gravity() {
          return 'n';
        },
        delayIn: 400,
        offset: 1
      });
    }
  }, []);
  return /*#__PURE__*/_react.default.createElement("a", {
    className: "e-admin-top-bar__bar-button",
    ref: props.buttonRef,
    onClick: props.onClick,
    "data-info": props.dataInfo,
    href: props.href,
    target: props.target
  }, /*#__PURE__*/_react.default.createElement("i", {
    className: "e-admin-top-bar__bar-button-icon ".concat(props.icon)
  }), /*#__PURE__*/_react.default.createElement("h1", {
    className: "e-admin-top-bar__bar-button-title"
  }, props.children));
}

BarButton.propTypes = {
  children: PropTypes.any,
  dataInfo: PropTypes.string,
  icon: PropTypes.any,
  onClick: PropTypes.func,
  buttonRef: PropTypes.object,
  href: PropTypes.string,
  target: PropTypes.string
};

/***/ }),

/***/ "../modules/admin-top-bar/assets/js/components/bar-heading/bar-heading.js":
/*!********************************************************************************!*\
  !*** ../modules/admin-top-bar/assets/js/components/bar-heading/bar-heading.js ***!
  \********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = BarHeading;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

function BarHeading(props) {
  return /*#__PURE__*/_react.default.createElement("div", {
    className: "e-admin-top-bar__heading"
  }, /*#__PURE__*/_react.default.createElement("div", {
    className: "e-admin-top-bar__heading-logo"
  }, /*#__PURE__*/_react.default.createElement("i", {
    className: "eicon-elementor",
    "aria-hidden": "true"
  })), /*#__PURE__*/_react.default.createElement("h1", {
    className: "e-admin-top-bar__heading-title"
  }, props.children));
}

BarHeading.propTypes = {
  children: PropTypes.any
};

/***/ }),

/***/ "../modules/admin-top-bar/assets/js/components/connection-button/connection-button.js":
/*!********************************************************************************************!*\
  !*** ../modules/admin-top-bar/assets/js/components/connection-button/connection-button.js ***!
  \********************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ConnectionButton;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _barButton = _interopRequireDefault(__webpack_require__(/*! ../bar-button/bar-button */ "../modules/admin-top-bar/assets/js/components/bar-button/bar-button.js"));

function ConnectionButton() {
  var buttonRef = (0, _react.useRef)();
  var isUserConnected = elementorAdminTopBarConfig.is_user_connected;
  (0, _react.useEffect)(function () {
    if (!buttonRef.current || isUserConnected) {
      return;
    }

    jQuery(buttonRef.current).elementorConnect({
      UTM: function UTM() {
        return '&utm_source=admin-top-bar&utm_medium=wp-dash&utm_campaign=admin-top-bar&source=generic';
      }
    });
  }, []);

  var tooltipText = __('Connect your account to get access to Elementor\'s Template Library & more.', 'elementor'),
      connectUrl = elementorAdminTopBarConfig.connect_url,
      buttonText = __('Connect Account', 'elementor'),
      targetUrl = '_self';

  if (isUserConnected) {
    tooltipText = '';
    connectUrl = 'https://go.elementor.com/wp-dash-admin-bar-account/';
    buttonText = __('My Elementor', 'elementor');
    targetUrl = '_blank';
  }

  return /*#__PURE__*/_react.default.createElement(_barButton.default, {
    icon: "eicon-user-circle-o",
    buttonRef: buttonRef,
    dataInfo: tooltipText,
    href: connectUrl,
    target: targetUrl
  }, buttonText);
}

/***/ }),

/***/ "../modules/admin-top-bar/assets/js/hooks/use-page-title/use-page-title.js":
/*!*********************************************************************************!*\
  !*** ../modules/admin-top-bar/assets/js/hooks/use-page-title/use-page-title.js ***!
  \*********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.usePageTitle = void 0;

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _react = __webpack_require__(/*! react */ "react");

var usePageTitle = function usePageTitle() {
  var _useState = (0, _react.useState)('Elementor'),
      _useState2 = (0, _slicedToArray2.default)(_useState, 2),
      pageTitle = _useState2[0],
      setPageTitle = _useState2[1];

  (0, _react.useEffect)(function () {
    var pageTitleElement = document.querySelector('.wp-heading-inline');

    if (!pageTitleElement) {
      return;
    }

    setPageTitle(pageTitleElement.innerText);
  }, []);
  return pageTitle;
};

exports.usePageTitle = usePageTitle;

/***/ }),

/***/ "../node_modules/core-js/library/fn/array/from.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/fn/array/from.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.string.iterator */ "../node_modules/core-js/library/modules/es6.string.iterator.js");
__webpack_require__(/*! ../../modules/es6.array.from */ "../node_modules/core-js/library/modules/es6.array.from.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Array.from;


/***/ }),

/***/ "../node_modules/core-js/library/fn/array/is-array.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/fn/array/is-array.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.array.is-array */ "../node_modules/core-js/library/modules/es6.array.is-array.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Array.isArray;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/define-property.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/define-property.js ***!
  \********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.define-property */ "../node_modules/core-js/library/modules/es6.object.define-property.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function defineProperty(it, key, desc) {
  return $Object.defineProperty(it, key, desc);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/get-own-property-descriptor.js":
/*!********************************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/get-own-property-descriptor.js ***!
  \********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.get-own-property-descriptor */ "../node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function getOwnPropertyDescriptor(it, key) {
  return $Object.getOwnPropertyDescriptor(it, key);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/symbol/index.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/fn/symbol/index.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.symbol */ "../node_modules/core-js/library/modules/es6.symbol.js");
__webpack_require__(/*! ../../modules/es6.object.to-string */ "../node_modules/core-js/library/modules/es6.object.to-string.js");
__webpack_require__(/*! ../../modules/es7.symbol.async-iterator */ "../node_modules/core-js/library/modules/es7.symbol.async-iterator.js");
__webpack_require__(/*! ../../modules/es7.symbol.observable */ "../node_modules/core-js/library/modules/es7.symbol.observable.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Symbol;


/***/ }),

/***/ "../node_modules/core-js/library/fn/symbol/iterator.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/fn/symbol/iterator.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.string.iterator */ "../node_modules/core-js/library/modules/es6.string.iterator.js");
__webpack_require__(/*! ../../modules/web.dom.iterable */ "../node_modules/core-js/library/modules/web.dom.iterable.js");
module.exports = __webpack_require__(/*! ../../modules/_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js").f('iterator');


/***/ }),

/***/ "../node_modules/core-js/library/fn/weak-map.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/library/fn/weak-map.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../modules/es6.object.to-string */ "../node_modules/core-js/library/modules/es6.object.to-string.js");
__webpack_require__(/*! ../modules/web.dom.iterable */ "../node_modules/core-js/library/modules/web.dom.iterable.js");
__webpack_require__(/*! ../modules/es6.weak-map */ "../node_modules/core-js/library/modules/es6.weak-map.js");
__webpack_require__(/*! ../modules/es7.weak-map.of */ "../node_modules/core-js/library/modules/es7.weak-map.of.js");
__webpack_require__(/*! ../modules/es7.weak-map.from */ "../node_modules/core-js/library/modules/es7.weak-map.from.js");
module.exports = __webpack_require__(/*! ../modules/_core */ "../node_modules/core-js/library/modules/_core.js").WeakMap;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_a-function.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_a-function.js ***!
  \**************************************************************/
/***/ ((module) => {

module.exports = function (it) {
  if (typeof it != 'function') throw TypeError(it + ' is not a function!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_add-to-unscopables.js":
/*!**********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_add-to-unscopables.js ***!
  \**********************************************************************/
/***/ ((module) => {

module.exports = function () { /* empty */ };


/***/ }),

/***/ "../node_modules/core-js/library/modules/_an-instance.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_an-instance.js ***!
  \***************************************************************/
/***/ ((module) => {

module.exports = function (it, Constructor, name, forbiddenField) {
  if (!(it instanceof Constructor) || (forbiddenField !== undefined && forbiddenField in it)) {
    throw TypeError(name + ': incorrect invocation!');
  } return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_an-object.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_an-object.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
module.exports = function (it) {
  if (!isObject(it)) throw TypeError(it + ' is not an object!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-includes.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-includes.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// false -> Array#indexOf
// true  -> Array#includes
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
var toAbsoluteIndex = __webpack_require__(/*! ./_to-absolute-index */ "../node_modules/core-js/library/modules/_to-absolute-index.js");
module.exports = function (IS_INCLUDES) {
  return function ($this, el, fromIndex) {
    var O = toIObject($this);
    var length = toLength(O.length);
    var index = toAbsoluteIndex(fromIndex, length);
    var value;
    // Array#includes uses SameValueZero equality algorithm
    // eslint-disable-next-line no-self-compare
    if (IS_INCLUDES && el != el) while (length > index) {
      value = O[index++];
      // eslint-disable-next-line no-self-compare
      if (value != value) return true;
    // Array#indexOf ignores holes, Array#includes - not
    } else for (;length > index; index++) if (IS_INCLUDES || index in O) {
      if (O[index] === el) return IS_INCLUDES || index || 0;
    } return !IS_INCLUDES && -1;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-methods.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-methods.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 0 -> Array#forEach
// 1 -> Array#map
// 2 -> Array#filter
// 3 -> Array#some
// 4 -> Array#every
// 5 -> Array#find
// 6 -> Array#findIndex
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/library/modules/_iobject.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
var asc = __webpack_require__(/*! ./_array-species-create */ "../node_modules/core-js/library/modules/_array-species-create.js");
module.exports = function (TYPE, $create) {
  var IS_MAP = TYPE == 1;
  var IS_FILTER = TYPE == 2;
  var IS_SOME = TYPE == 3;
  var IS_EVERY = TYPE == 4;
  var IS_FIND_INDEX = TYPE == 6;
  var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
  var create = $create || asc;
  return function ($this, callbackfn, that) {
    var O = toObject($this);
    var self = IObject(O);
    var f = ctx(callbackfn, that, 3);
    var length = toLength(self.length);
    var index = 0;
    var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;
    var val, res;
    for (;length > index; index++) if (NO_HOLES || index in self) {
      val = self[index];
      res = f(val, index, O);
      if (TYPE) {
        if (IS_MAP) result[index] = res;   // map
        else if (res) switch (TYPE) {
          case 3: return true;             // some
          case 5: return val;              // find
          case 6: return index;            // findIndex
          case 2: result.push(val);        // filter
        } else if (IS_EVERY) return false; // every
      }
    }
    return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-species-constructor.js":
/*!*****************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-species-constructor.js ***!
  \*****************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var isArray = __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/library/modules/_is-array.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('species');

module.exports = function (original) {
  var C;
  if (isArray(original)) {
    C = original.constructor;
    // cross-realm fallback
    if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
    if (isObject(C)) {
      C = C[SPECIES];
      if (C === null) C = undefined;
    }
  } return C === undefined ? Array : C;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-species-create.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-species-create.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 9.4.2.3 ArraySpeciesCreate(originalArray, length)
var speciesConstructor = __webpack_require__(/*! ./_array-species-constructor */ "../node_modules/core-js/library/modules/_array-species-constructor.js");

module.exports = function (original, length) {
  return new (speciesConstructor(original))(length);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_classof.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_classof.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// getting tag from 19.1.3.6 Object.prototype.toString()
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('toStringTag');
// ES3 wrong here
var ARG = cof(function () { return arguments; }()) == 'Arguments';

// fallback for IE11 Script Access Denied error
var tryGet = function (it, key) {
  try {
    return it[key];
  } catch (e) { /* empty */ }
};

module.exports = function (it) {
  var O, T, B;
  return it === undefined ? 'Undefined' : it === null ? 'Null'
    // @@toStringTag case
    : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T
    // builtinTag case
    : ARG ? cof(O)
    // ES3 arguments fallback
    : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_cof.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_cof.js ***!
  \*******************************************************/
/***/ ((module) => {

var toString = {}.toString;

module.exports = function (it) {
  return toString.call(it).slice(8, -1);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_collection-weak.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_collection-weak.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var redefineAll = __webpack_require__(/*! ./_redefine-all */ "../node_modules/core-js/library/modules/_redefine-all.js");
var getWeak = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js").getWeak;
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var anInstance = __webpack_require__(/*! ./_an-instance */ "../node_modules/core-js/library/modules/_an-instance.js");
var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");
var createArrayMethod = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/library/modules/_array-methods.js");
var $has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var validate = __webpack_require__(/*! ./_validate-collection */ "../node_modules/core-js/library/modules/_validate-collection.js");
var arrayFind = createArrayMethod(5);
var arrayFindIndex = createArrayMethod(6);
var id = 0;

// fallback for uncaught frozen keys
var uncaughtFrozenStore = function (that) {
  return that._l || (that._l = new UncaughtFrozenStore());
};
var UncaughtFrozenStore = function () {
  this.a = [];
};
var findUncaughtFrozen = function (store, key) {
  return arrayFind(store.a, function (it) {
    return it[0] === key;
  });
};
UncaughtFrozenStore.prototype = {
  get: function (key) {
    var entry = findUncaughtFrozen(this, key);
    if (entry) return entry[1];
  },
  has: function (key) {
    return !!findUncaughtFrozen(this, key);
  },
  set: function (key, value) {
    var entry = findUncaughtFrozen(this, key);
    if (entry) entry[1] = value;
    else this.a.push([key, value]);
  },
  'delete': function (key) {
    var index = arrayFindIndex(this.a, function (it) {
      return it[0] === key;
    });
    if (~index) this.a.splice(index, 1);
    return !!~index;
  }
};

module.exports = {
  getConstructor: function (wrapper, NAME, IS_MAP, ADDER) {
    var C = wrapper(function (that, iterable) {
      anInstance(that, C, NAME, '_i');
      that._t = NAME;      // collection type
      that._i = id++;      // collection id
      that._l = undefined; // leak store for uncaught frozen objects
      if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);
    });
    redefineAll(C.prototype, {
      // 23.3.3.2 WeakMap.prototype.delete(key)
      // 23.4.3.3 WeakSet.prototype.delete(value)
      'delete': function (key) {
        if (!isObject(key)) return false;
        var data = getWeak(key);
        if (data === true) return uncaughtFrozenStore(validate(this, NAME))['delete'](key);
        return data && $has(data, this._i) && delete data[this._i];
      },
      // 23.3.3.4 WeakMap.prototype.has(key)
      // 23.4.3.4 WeakSet.prototype.has(value)
      has: function has(key) {
        if (!isObject(key)) return false;
        var data = getWeak(key);
        if (data === true) return uncaughtFrozenStore(validate(this, NAME)).has(key);
        return data && $has(data, this._i);
      }
    });
    return C;
  },
  def: function (that, key, value) {
    var data = getWeak(anObject(key), true);
    if (data === true) uncaughtFrozenStore(that).set(key, value);
    else data[that._i] = value;
    return that;
  },
  ufstore: uncaughtFrozenStore
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_collection.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_collection.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var meta = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var redefineAll = __webpack_require__(/*! ./_redefine-all */ "../node_modules/core-js/library/modules/_redefine-all.js");
var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");
var anInstance = __webpack_require__(/*! ./_an-instance */ "../node_modules/core-js/library/modules/_an-instance.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
var each = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/library/modules/_array-methods.js")(0);
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");

module.exports = function (NAME, wrapper, methods, common, IS_MAP, IS_WEAK) {
  var Base = global[NAME];
  var C = Base;
  var ADDER = IS_MAP ? 'set' : 'add';
  var proto = C && C.prototype;
  var O = {};
  if (!DESCRIPTORS || typeof C != 'function' || !(IS_WEAK || proto.forEach && !fails(function () {
    new C().entries().next();
  }))) {
    // create collection constructor
    C = common.getConstructor(wrapper, NAME, IS_MAP, ADDER);
    redefineAll(C.prototype, methods);
    meta.NEED = true;
  } else {
    C = wrapper(function (target, iterable) {
      anInstance(target, C, NAME, '_c');
      target._c = new Base();
      if (iterable != undefined) forOf(iterable, IS_MAP, target[ADDER], target);
    });
    each('add,clear,delete,forEach,get,has,set,keys,values,entries,toJSON'.split(','), function (KEY) {
      var IS_ADDER = KEY == 'add' || KEY == 'set';
      if (KEY in proto && !(IS_WEAK && KEY == 'clear')) hide(C.prototype, KEY, function (a, b) {
        anInstance(this, C, KEY);
        if (!IS_ADDER && IS_WEAK && !isObject(a)) return KEY == 'get' ? undefined : false;
        var result = this._c[KEY](a === 0 ? 0 : a, b);
        return IS_ADDER ? this : result;
      });
    });
    IS_WEAK || dP(C.prototype, 'size', {
      get: function () {
        return this._c.size;
      }
    });
  }

  setToStringTag(C, NAME);

  O[NAME] = C;
  $export($export.G + $export.W + $export.F, O);

  if (!IS_WEAK) common.setStrong(C, NAME, IS_MAP);

  return C;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_core.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_core.js ***!
  \********************************************************/
/***/ ((module) => {

var core = module.exports = { version: '2.6.12' };
if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/library/modules/_create-property.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_create-property.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $defineProperty = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");

module.exports = function (object, index, value) {
  if (index in object) $defineProperty.f(object, index, createDesc(0, value));
  else object[index] = value;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_ctx.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_ctx.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// optional / simple context binding
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
module.exports = function (fn, that, length) {
  aFunction(fn);
  if (that === undefined) return fn;
  switch (length) {
    case 1: return function (a) {
      return fn.call(that, a);
    };
    case 2: return function (a, b) {
      return fn.call(that, a, b);
    };
    case 3: return function (a, b, c) {
      return fn.call(that, a, b, c);
    };
  }
  return function (/* ...args */) {
    return fn.apply(that, arguments);
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_defined.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_defined.js ***!
  \***********************************************************/
/***/ ((module) => {

// 7.2.1 RequireObjectCoercible(argument)
module.exports = function (it) {
  if (it == undefined) throw TypeError("Can't call method on  " + it);
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_descriptors.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_descriptors.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Thank's IE8 for his funny defineProperty
module.exports = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/_dom-create.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_dom-create.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").document;
// typeof document.createElement is 'object' in old IE
var is = isObject(document) && isObject(document.createElement);
module.exports = function (it) {
  return is ? document.createElement(it) : {};
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_enum-bug-keys.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_enum-bug-keys.js ***!
  \*****************************************************************/
/***/ ((module) => {

// IE 8- don't enum bug keys
module.exports = (
  'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
).split(',');


/***/ }),

/***/ "../node_modules/core-js/library/modules/_enum-keys.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_enum-keys.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// all enumerable object keys, includes symbols
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var gOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js");
module.exports = function (it) {
  var result = getKeys(it);
  var getSymbols = gOPS.f;
  if (getSymbols) {
    var symbols = getSymbols(it);
    var isEnum = pIE.f;
    var i = 0;
    var key;
    while (symbols.length > i) if (isEnum.call(it, key = symbols[i++])) result.push(key);
  } return result;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_export.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_export.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var PROTOTYPE = 'prototype';

var $export = function (type, name, source) {
  var IS_FORCED = type & $export.F;
  var IS_GLOBAL = type & $export.G;
  var IS_STATIC = type & $export.S;
  var IS_PROTO = type & $export.P;
  var IS_BIND = type & $export.B;
  var IS_WRAP = type & $export.W;
  var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
  var expProto = exports[PROTOTYPE];
  var target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE];
  var key, own, out;
  if (IS_GLOBAL) source = name;
  for (key in source) {
    // contains in native
    own = !IS_FORCED && target && target[key] !== undefined;
    if (own && has(exports, key)) continue;
    // export native or passed
    out = own ? target[key] : source[key];
    // prevent global pollution for namespaces
    exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key]
    // bind timers to global for call from export context
    : IS_BIND && own ? ctx(out, global)
    // wrap global constructors for prevent change them in library
    : IS_WRAP && target[key] == out ? (function (C) {
      var F = function (a, b, c) {
        if (this instanceof C) {
          switch (arguments.length) {
            case 0: return new C();
            case 1: return new C(a);
            case 2: return new C(a, b);
          } return new C(a, b, c);
        } return C.apply(this, arguments);
      };
      F[PROTOTYPE] = C[PROTOTYPE];
      return F;
    // make static versions for prototype methods
    })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
    // export proto methods to core.%CONSTRUCTOR%.methods.%NAME%
    if (IS_PROTO) {
      (exports.virtual || (exports.virtual = {}))[key] = out;
      // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME%
      if (type & $export.R && expProto && !expProto[key]) hide(expProto, key, out);
    }
  }
};
// type bitmap
$export.F = 1;   // forced
$export.G = 2;   // global
$export.S = 4;   // static
$export.P = 8;   // proto
$export.B = 16;  // bind
$export.W = 32;  // wrap
$export.U = 64;  // safe
$export.R = 128; // real proto method for `library`
module.exports = $export;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_fails.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_fails.js ***!
  \*********************************************************/
/***/ ((module) => {

module.exports = function (exec) {
  try {
    return !!exec();
  } catch (e) {
    return true;
  }
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_for-of.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_for-of.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var call = __webpack_require__(/*! ./_iter-call */ "../node_modules/core-js/library/modules/_iter-call.js");
var isArrayIter = __webpack_require__(/*! ./_is-array-iter */ "../node_modules/core-js/library/modules/_is-array-iter.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
var getIterFn = __webpack_require__(/*! ./core.get-iterator-method */ "../node_modules/core-js/library/modules/core.get-iterator-method.js");
var BREAK = {};
var RETURN = {};
var exports = module.exports = function (iterable, entries, fn, that, ITERATOR) {
  var iterFn = ITERATOR ? function () { return iterable; } : getIterFn(iterable);
  var f = ctx(fn, that, entries ? 2 : 1);
  var index = 0;
  var length, step, iterator, result;
  if (typeof iterFn != 'function') throw TypeError(iterable + ' is not iterable!');
  // fast case for arrays with default iterator
  if (isArrayIter(iterFn)) for (length = toLength(iterable.length); length > index; index++) {
    result = entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]);
    if (result === BREAK || result === RETURN) return result;
  } else for (iterator = iterFn.call(iterable); !(step = iterator.next()).done;) {
    result = call(iterator, f, step.value, entries);
    if (result === BREAK || result === RETURN) return result;
  }
};
exports.BREAK = BREAK;
exports.RETURN = RETURN;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_global.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_global.js ***!
  \**********************************************************/
/***/ ((module) => {

// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
var global = module.exports = typeof window != 'undefined' && window.Math == Math
  ? window : typeof self != 'undefined' && self.Math == Math ? self
  // eslint-disable-next-line no-new-func
  : Function('return this')();
if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/library/modules/_has.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_has.js ***!
  \*******************************************************/
/***/ ((module) => {

var hasOwnProperty = {}.hasOwnProperty;
module.exports = function (it, key) {
  return hasOwnProperty.call(it, key);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_hide.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_hide.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? function (object, key, value) {
  return dP.f(object, key, createDesc(1, value));
} : function (object, key, value) {
  object[key] = value;
  return object;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_html.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_html.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").document;
module.exports = document && document.documentElement;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_ie8-dom-define.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_ie8-dom-define.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") && !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  return Object.defineProperty(__webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/library/modules/_dom-create.js")('div'), 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iobject.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iobject.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// fallback for non-array-like ES3 and non-enumerable old V8 strings
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js");
// eslint-disable-next-line no-prototype-builtins
module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
  return cof(it) == 'String' ? it.split('') : Object(it);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_is-array-iter.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_is-array-iter.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// check on default Array iterator
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var ArrayProto = Array.prototype;

module.exports = function (it) {
  return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_is-array.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_is-array.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.2.2 IsArray(argument)
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js");
module.exports = Array.isArray || function isArray(arg) {
  return cof(arg) == 'Array';
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_is-object.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_is-object.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = function (it) {
  return typeof it === 'object' ? it !== null : typeof it === 'function';
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-call.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-call.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// call something on iterator step with safe closing on error
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
module.exports = function (iterator, fn, value, entries) {
  try {
    return entries ? fn(anObject(value)[0], value[1]) : fn(value);
  // 7.4.6 IteratorClose(iterator, completion)
  } catch (e) {
    var ret = iterator['return'];
    if (ret !== undefined) anObject(ret.call(iterator));
    throw e;
  }
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-create.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-create.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
var descriptor = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var IteratorPrototype = {};

// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
__webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js")(IteratorPrototype, __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator'), function () { return this; });

module.exports = function (Constructor, NAME, next) {
  Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });
  setToStringTag(Constructor, NAME + ' Iterator');
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-define.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-define.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/library/modules/_redefine.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var $iterCreate = __webpack_require__(/*! ./_iter-create */ "../node_modules/core-js/library/modules/_iter-create.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`
var FF_ITERATOR = '@@iterator';
var KEYS = 'keys';
var VALUES = 'values';

var returnThis = function () { return this; };

module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {
  $iterCreate(Constructor, NAME, next);
  var getMethod = function (kind) {
    if (!BUGGY && kind in proto) return proto[kind];
    switch (kind) {
      case KEYS: return function keys() { return new Constructor(this, kind); };
      case VALUES: return function values() { return new Constructor(this, kind); };
    } return function entries() { return new Constructor(this, kind); };
  };
  var TAG = NAME + ' Iterator';
  var DEF_VALUES = DEFAULT == VALUES;
  var VALUES_BUG = false;
  var proto = Base.prototype;
  var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];
  var $default = $native || getMethod(DEFAULT);
  var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;
  var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;
  var methods, key, IteratorPrototype;
  // Fix native
  if ($anyNative) {
    IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));
    if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {
      // Set @@toStringTag to native iterators
      setToStringTag(IteratorPrototype, TAG, true);
      // fix for some old engines
      if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);
    }
  }
  // fix Array#{values, @@iterator}.name in V8 / FF
  if (DEF_VALUES && $native && $native.name !== VALUES) {
    VALUES_BUG = true;
    $default = function values() { return $native.call(this); };
  }
  // Define iterator
  if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {
    hide(proto, ITERATOR, $default);
  }
  // Plug for library
  Iterators[NAME] = $default;
  Iterators[TAG] = returnThis;
  if (DEFAULT) {
    methods = {
      values: DEF_VALUES ? $default : getMethod(VALUES),
      keys: IS_SET ? $default : getMethod(KEYS),
      entries: $entries
    };
    if (FORCED) for (key in methods) {
      if (!(key in proto)) redefine(proto, key, methods[key]);
    } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
  }
  return methods;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-detect.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-detect.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var SAFE_CLOSING = false;

try {
  var riter = [7][ITERATOR]();
  riter['return'] = function () { SAFE_CLOSING = true; };
  // eslint-disable-next-line no-throw-literal
  Array.from(riter, function () { throw 2; });
} catch (e) { /* empty */ }

module.exports = function (exec, skipClosing) {
  if (!skipClosing && !SAFE_CLOSING) return false;
  var safe = false;
  try {
    var arr = [7];
    var iter = arr[ITERATOR]();
    iter.next = function () { return { done: safe = true }; };
    arr[ITERATOR] = function () { return iter; };
    exec(arr);
  } catch (e) { /* empty */ }
  return safe;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-step.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-step.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = function (done, value) {
  return { value: value, done: !!done };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iterators.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iterators.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = {};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_library.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_library.js ***!
  \***********************************************************/
/***/ ((module) => {

module.exports = true;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_meta.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_meta.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var META = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js")('meta');
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var setDesc = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
var id = 0;
var isExtensible = Object.isExtensible || function () {
  return true;
};
var FREEZE = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  return isExtensible(Object.preventExtensions({}));
});
var setMeta = function (it) {
  setDesc(it, META, { value: {
    i: 'O' + ++id, // object ID
    w: {}          // weak collections IDs
  } });
};
var fastKey = function (it, create) {
  // return primitive with prefix
  if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;
  if (!has(it, META)) {
    // can't set metadata to uncaught frozen object
    if (!isExtensible(it)) return 'F';
    // not necessary to add metadata
    if (!create) return 'E';
    // add missing metadata
    setMeta(it);
  // return object ID
  } return it[META].i;
};
var getWeak = function (it, create) {
  if (!has(it, META)) {
    // can't set metadata to uncaught frozen object
    if (!isExtensible(it)) return true;
    // not necessary to add metadata
    if (!create) return false;
    // add missing metadata
    setMeta(it);
  // return hash weak collections IDs
  } return it[META].w;
};
// add metadata on freeze-family methods calling
var onFreeze = function (it) {
  if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it);
  return it;
};
var meta = module.exports = {
  KEY: META,
  NEED: false,
  fastKey: fastKey,
  getWeak: getWeak,
  onFreeze: onFreeze
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-assign.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-assign.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 19.1.2.1 Object.assign(target, source, ...)
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var gOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/library/modules/_iobject.js");
var $assign = Object.assign;

// should work with symbols and should have deterministic property order (V8 bug)
module.exports = !$assign || __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  var A = {};
  var B = {};
  // eslint-disable-next-line no-undef
  var S = Symbol();
  var K = 'abcdefghijklmnopqrst';
  A[S] = 7;
  K.split('').forEach(function (k) { B[k] = k; });
  return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join('') != K;
}) ? function assign(target, source) { // eslint-disable-line no-unused-vars
  var T = toObject(target);
  var aLen = arguments.length;
  var index = 1;
  var getSymbols = gOPS.f;
  var isEnum = pIE.f;
  while (aLen > index) {
    var S = IObject(arguments[index++]);
    var keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S);
    var length = keys.length;
    var j = 0;
    var key;
    while (length > j) {
      key = keys[j++];
      if (!DESCRIPTORS || isEnum.call(S, key)) T[key] = S[key];
    }
  } return T;
} : $assign;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-create.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-create.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var dPs = __webpack_require__(/*! ./_object-dps */ "../node_modules/core-js/library/modules/_object-dps.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');
var Empty = function () { /* empty */ };
var PROTOTYPE = 'prototype';

// Create object with fake `null` prototype: use iframe Object with cleared prototype
var createDict = function () {
  // Thrash, waste and sodomy: IE GC bug
  var iframe = __webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/library/modules/_dom-create.js")('iframe');
  var i = enumBugKeys.length;
  var lt = '<';
  var gt = '>';
  var iframeDocument;
  iframe.style.display = 'none';
  __webpack_require__(/*! ./_html */ "../node_modules/core-js/library/modules/_html.js").appendChild(iframe);
  iframe.src = 'javascript:'; // eslint-disable-line no-script-url
  // createDict = iframe.contentWindow.Object;
  // html.removeChild(iframe);
  iframeDocument = iframe.contentWindow.document;
  iframeDocument.open();
  iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);
  iframeDocument.close();
  createDict = iframeDocument.F;
  while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];
  return createDict();
};

module.exports = Object.create || function create(O, Properties) {
  var result;
  if (O !== null) {
    Empty[PROTOTYPE] = anObject(O);
    result = new Empty();
    Empty[PROTOTYPE] = null;
    // add "__proto__" for Object.getPrototypeOf polyfill
    result[IE_PROTO] = O;
  } else result = createDict();
  return Properties === undefined ? result : dPs(result, Properties);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-dp.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-dp.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/library/modules/_ie8-dom-define.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
var dP = Object.defineProperty;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? Object.defineProperty : function defineProperty(O, P, Attributes) {
  anObject(O);
  P = toPrimitive(P, true);
  anObject(Attributes);
  if (IE8_DOM_DEFINE) try {
    return dP(O, P, Attributes);
  } catch (e) { /* empty */ }
  if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
  if ('value' in Attributes) O[P] = Attributes.value;
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-dps.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-dps.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");

module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? Object.defineProperties : function defineProperties(O, Properties) {
  anObject(O);
  var keys = getKeys(Properties);
  var length = keys.length;
  var i = 0;
  var P;
  while (length > i) dP.f(O, P = keys[i++], Properties[P]);
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gopd.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gopd.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/library/modules/_ie8-dom-define.js");
var gOPD = Object.getOwnPropertyDescriptor;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? gOPD : function getOwnPropertyDescriptor(O, P) {
  O = toIObject(O);
  P = toPrimitive(P, true);
  if (IE8_DOM_DEFINE) try {
    return gOPD(O, P);
  } catch (e) { /* empty */ }
  if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gopn-ext.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gopn-ext.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var gOPN = __webpack_require__(/*! ./_object-gopn */ "../node_modules/core-js/library/modules/_object-gopn.js").f;
var toString = {}.toString;

var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames
  ? Object.getOwnPropertyNames(window) : [];

var getWindowNames = function (it) {
  try {
    return gOPN(it);
  } catch (e) {
    return windowNames.slice();
  }
};

module.exports.f = function getOwnPropertyNames(it) {
  return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gopn.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gopn.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)
var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/library/modules/_object-keys-internal.js");
var hiddenKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js").concat('length', 'prototype');

exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
  return $keys(O, hiddenKeys);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gops.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gops.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports) => {

exports.f = Object.getOwnPropertySymbols;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gpo.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gpo.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');
var ObjectProto = Object.prototype;

module.exports = Object.getPrototypeOf || function (O) {
  O = toObject(O);
  if (has(O, IE_PROTO)) return O[IE_PROTO];
  if (typeof O.constructor == 'function' && O instanceof O.constructor) {
    return O.constructor.prototype;
  } return O instanceof Object ? ObjectProto : null;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-keys-internal.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-keys-internal.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var arrayIndexOf = __webpack_require__(/*! ./_array-includes */ "../node_modules/core-js/library/modules/_array-includes.js")(false);
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');

module.exports = function (object, names) {
  var O = toIObject(object);
  var i = 0;
  var result = [];
  var key;
  for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);
  // Don't enum bug & hidden keys
  while (names.length > i) if (has(O, key = names[i++])) {
    ~arrayIndexOf(result, key) || result.push(key);
  }
  return result;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-keys.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-keys.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.14 / 15.2.3.14 Object.keys(O)
var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/library/modules/_object-keys-internal.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js");

module.exports = Object.keys || function keys(O) {
  return $keys(O, enumBugKeys);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-pie.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-pie.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports) => {

exports.f = {}.propertyIsEnumerable;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-sap.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-sap.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// most Object methods by ES6 should accept primitives
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
module.exports = function (KEY, exec) {
  var fn = (core.Object || {})[KEY] || Object[KEY];
  var exp = {};
  exp[KEY] = exec(fn);
  $export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_property-desc.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_property-desc.js ***!
  \*****************************************************************/
/***/ ((module) => {

module.exports = function (bitmap, value) {
  return {
    enumerable: !(bitmap & 1),
    configurable: !(bitmap & 2),
    writable: !(bitmap & 4),
    value: value
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_redefine-all.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_redefine-all.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
module.exports = function (target, src, safe) {
  for (var key in src) {
    if (safe && target[key]) target[key] = src[key];
    else hide(target, key, src[key]);
  } return target;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_redefine.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_redefine.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-collection-from.js":
/*!***********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-collection-from.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// https://tc39.github.io/proposal-setmap-offrom/
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");

module.exports = function (COLLECTION) {
  $export($export.S, COLLECTION, { from: function from(source /* , mapFn, thisArg */) {
    var mapFn = arguments[1];
    var mapping, A, n, cb;
    aFunction(this);
    mapping = mapFn !== undefined;
    if (mapping) aFunction(mapFn);
    if (source == undefined) return new this();
    A = [];
    if (mapping) {
      n = 0;
      cb = ctx(mapFn, arguments[2], 2);
      forOf(source, false, function (nextItem) {
        A.push(cb(nextItem, n++));
      });
    } else {
      forOf(source, false, A.push, A);
    }
    return new this(A);
  } });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-collection-of.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-collection-of.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// https://tc39.github.io/proposal-setmap-offrom/
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");

module.exports = function (COLLECTION) {
  $export($export.S, COLLECTION, { of: function of() {
    var length = arguments.length;
    var A = new Array(length);
    while (length--) A[length] = arguments[length];
    return new this(A);
  } });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-to-string-tag.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-to-string-tag.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var def = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('toStringTag');

module.exports = function (it, tag, stat) {
  if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_shared-key.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_shared-key.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var shared = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js")('keys');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
module.exports = function (key) {
  return shared[key] || (shared[key] = uid(key));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_shared.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_shared.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var SHARED = '__core-js_shared__';
var store = global[SHARED] || (global[SHARED] = {});

(module.exports = function (key, value) {
  return store[key] || (store[key] = value !== undefined ? value : {});
})('versions', []).push({
  version: core.version,
  mode: __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js") ? 'pure' : 'global',
  copyright: '© 2020 Denis Pushkarev (zloirock.ru)'
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/_string-at.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_string-at.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
// true  -> String#at
// false -> String#codePointAt
module.exports = function (TO_STRING) {
  return function (that, pos) {
    var s = String(defined(that));
    var i = toInteger(pos);
    var l = s.length;
    var a, b;
    if (i < 0 || i >= l) return TO_STRING ? '' : undefined;
    a = s.charCodeAt(i);
    return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
      ? TO_STRING ? s.charAt(i) : a
      : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-absolute-index.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-absolute-index.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
var max = Math.max;
var min = Math.min;
module.exports = function (index, length) {
  index = toInteger(index);
  return index < 0 ? max(index + length, 0) : min(index, length);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-integer.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-integer.js ***!
  \**************************************************************/
/***/ ((module) => {

// 7.1.4 ToInteger
var ceil = Math.ceil;
var floor = Math.floor;
module.exports = function (it) {
  return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-iobject.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-iobject.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// to indexed object, toObject with fallback for non-array-like ES3 strings
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/library/modules/_iobject.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
module.exports = function (it) {
  return IObject(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-length.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-length.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.15 ToLength
var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
var min = Math.min;
module.exports = function (it) {
  return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-object.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-object.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.13 ToObject(argument)
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
module.exports = function (it) {
  return Object(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-primitive.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-primitive.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.1 ToPrimitive(input [, PreferredType])
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
// instead of the ES6 spec version, we didn't implement @@toPrimitive case
// and the second argument - flag - preferred type is a string
module.exports = function (it, S) {
  if (!isObject(it)) return it;
  var fn, val;
  if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
  if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  throw TypeError("Can't convert object to primitive value");
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_uid.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_uid.js ***!
  \*******************************************************/
/***/ ((module) => {

var id = 0;
var px = Math.random();
module.exports = function (key) {
  return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_validate-collection.js":
/*!***********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_validate-collection.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
module.exports = function (it, TYPE) {
  if (!isObject(it) || it._t !== TYPE) throw TypeError('Incompatible receiver, ' + TYPE + ' required!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_wks-define.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_wks-define.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js");
var wksExt = __webpack_require__(/*! ./_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js");
var defineProperty = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
module.exports = function (name) {
  var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {});
  if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_wks-ext.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_wks-ext.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

exports.f = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js");


/***/ }),

/***/ "../node_modules/core-js/library/modules/_wks.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_wks.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var store = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js")('wks');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
var Symbol = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").Symbol;
var USE_SYMBOL = typeof Symbol == 'function';

var $exports = module.exports = function (name) {
  return store[name] || (store[name] =
    USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
};

$exports.store = store;


/***/ }),

/***/ "../node_modules/core-js/library/modules/core.get-iterator-method.js":
/*!***************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/core.get-iterator-method.js ***!
  \***************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/library/modules/_classof.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
module.exports = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js").getIteratorMethod = function (it) {
  if (it != undefined) return it[ITERATOR]
    || it['@@iterator']
    || Iterators[classof(it)];
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.array.from.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.array.from.js ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var call = __webpack_require__(/*! ./_iter-call */ "../node_modules/core-js/library/modules/_iter-call.js");
var isArrayIter = __webpack_require__(/*! ./_is-array-iter */ "../node_modules/core-js/library/modules/_is-array-iter.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
var createProperty = __webpack_require__(/*! ./_create-property */ "../node_modules/core-js/library/modules/_create-property.js");
var getIterFn = __webpack_require__(/*! ./core.get-iterator-method */ "../node_modules/core-js/library/modules/core.get-iterator-method.js");

$export($export.S + $export.F * !__webpack_require__(/*! ./_iter-detect */ "../node_modules/core-js/library/modules/_iter-detect.js")(function (iter) { Array.from(iter); }), 'Array', {
  // 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined)
  from: function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {
    var O = toObject(arrayLike);
    var C = typeof this == 'function' ? this : Array;
    var aLen = arguments.length;
    var mapfn = aLen > 1 ? arguments[1] : undefined;
    var mapping = mapfn !== undefined;
    var index = 0;
    var iterFn = getIterFn(O);
    var length, result, step, iterator;
    if (mapping) mapfn = ctx(mapfn, aLen > 2 ? arguments[2] : undefined, 2);
    // if object isn't iterable or it's array with default iterator - use simple case
    if (iterFn != undefined && !(C == Array && isArrayIter(iterFn))) {
      for (iterator = iterFn.call(O), result = new C(); !(step = iterator.next()).done; index++) {
        createProperty(result, index, mapping ? call(iterator, mapfn, [step.value, index], true) : step.value);
      }
    } else {
      length = toLength(O.length);
      for (result = new C(length); length > index; index++) {
        createProperty(result, index, mapping ? mapfn(O[index], index) : O[index]);
      }
    }
    result.length = index;
    return result;
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.array.is-array.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.array.is-array.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 22.1.2.2 / 15.4.3.2 Array.isArray(arg)
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");

$export($export.S, 'Array', { isArray: __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/library/modules/_is-array.js") });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.array.iterator.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.array.iterator.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var addToUnscopables = __webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/library/modules/_add-to-unscopables.js");
var step = __webpack_require__(/*! ./_iter-step */ "../node_modules/core-js/library/modules/_iter-step.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");

// 22.1.3.4 Array.prototype.entries()
// 22.1.3.13 Array.prototype.keys()
// 22.1.3.29 Array.prototype.values()
// 22.1.3.30 Array.prototype[@@iterator]()
module.exports = __webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/library/modules/_iter-define.js")(Array, 'Array', function (iterated, kind) {
  this._t = toIObject(iterated); // target
  this._i = 0;                   // next index
  this._k = kind;                // kind
// 22.1.5.2.1 %ArrayIteratorPrototype%.next()
}, function () {
  var O = this._t;
  var kind = this._k;
  var index = this._i++;
  if (!O || index >= O.length) {
    this._t = undefined;
    return step(1);
  }
  if (kind == 'keys') return step(0, index);
  if (kind == 'values') return step(0, O[index]);
  return step(0, [index, O[index]]);
}, 'values');

// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
Iterators.Arguments = Iterators.Array;

addToUnscopables('keys');
addToUnscopables('values');
addToUnscopables('entries');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.define-property.js":
/*!*****************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.define-property.js ***!
  \*****************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)
$export($export.S + $export.F * !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js"), 'Object', { defineProperty: __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js":
/*!*****************************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js ***!
  \*****************************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var $getOwnPropertyDescriptor = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js").f;

__webpack_require__(/*! ./_object-sap */ "../node_modules/core-js/library/modules/_object-sap.js")('getOwnPropertyDescriptor', function () {
  return function getOwnPropertyDescriptor(it, key) {
    return $getOwnPropertyDescriptor(toIObject(it), key);
  };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.to-string.js":
/*!***********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.to-string.js ***!
  \***********************************************************************/
/***/ (() => {



/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.string.iterator.js":
/*!**********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.string.iterator.js ***!
  \**********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $at = __webpack_require__(/*! ./_string-at */ "../node_modules/core-js/library/modules/_string-at.js")(true);

// 21.1.3.27 String.prototype[@@iterator]()
__webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/library/modules/_iter-define.js")(String, 'String', function (iterated) {
  this._t = String(iterated); // target
  this._i = 0;                // next index
// 21.1.5.2.1 %StringIteratorPrototype%.next()
}, function () {
  var O = this._t;
  var index = this._i;
  var point;
  if (index >= O.length) return { value: undefined, done: true };
  point = $at(O, index);
  this._i += point.length;
  return { value: point, done: false };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.symbol.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.symbol.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// ECMAScript 6 symbols shim
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/library/modules/_redefine.js");
var META = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js").KEY;
var $fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
var shared = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
var wks = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js");
var wksExt = __webpack_require__(/*! ./_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js");
var wksDefine = __webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js");
var enumKeys = __webpack_require__(/*! ./_enum-keys */ "../node_modules/core-js/library/modules/_enum-keys.js");
var isArray = __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/library/modules/_is-array.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
var _create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
var gOPNExt = __webpack_require__(/*! ./_object-gopn-ext */ "../node_modules/core-js/library/modules/_object-gopn-ext.js");
var $GOPD = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js");
var $GOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
var $DP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var $keys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var gOPD = $GOPD.f;
var dP = $DP.f;
var gOPN = gOPNExt.f;
var $Symbol = global.Symbol;
var $JSON = global.JSON;
var _stringify = $JSON && $JSON.stringify;
var PROTOTYPE = 'prototype';
var HIDDEN = wks('_hidden');
var TO_PRIMITIVE = wks('toPrimitive');
var isEnum = {}.propertyIsEnumerable;
var SymbolRegistry = shared('symbol-registry');
var AllSymbols = shared('symbols');
var OPSymbols = shared('op-symbols');
var ObjectProto = Object[PROTOTYPE];
var USE_NATIVE = typeof $Symbol == 'function' && !!$GOPS.f;
var QObject = global.QObject;
// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173
var setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;

// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687
var setSymbolDesc = DESCRIPTORS && $fails(function () {
  return _create(dP({}, 'a', {
    get: function () { return dP(this, 'a', { value: 7 }).a; }
  })).a != 7;
}) ? function (it, key, D) {
  var protoDesc = gOPD(ObjectProto, key);
  if (protoDesc) delete ObjectProto[key];
  dP(it, key, D);
  if (protoDesc && it !== ObjectProto) dP(ObjectProto, key, protoDesc);
} : dP;

var wrap = function (tag) {
  var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]);
  sym._k = tag;
  return sym;
};

var isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function (it) {
  return typeof it == 'symbol';
} : function (it) {
  return it instanceof $Symbol;
};

var $defineProperty = function defineProperty(it, key, D) {
  if (it === ObjectProto) $defineProperty(OPSymbols, key, D);
  anObject(it);
  key = toPrimitive(key, true);
  anObject(D);
  if (has(AllSymbols, key)) {
    if (!D.enumerable) {
      if (!has(it, HIDDEN)) dP(it, HIDDEN, createDesc(1, {}));
      it[HIDDEN][key] = true;
    } else {
      if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false;
      D = _create(D, { enumerable: createDesc(0, false) });
    } return setSymbolDesc(it, key, D);
  } return dP(it, key, D);
};
var $defineProperties = function defineProperties(it, P) {
  anObject(it);
  var keys = enumKeys(P = toIObject(P));
  var i = 0;
  var l = keys.length;
  var key;
  while (l > i) $defineProperty(it, key = keys[i++], P[key]);
  return it;
};
var $create = function create(it, P) {
  return P === undefined ? _create(it) : $defineProperties(_create(it), P);
};
var $propertyIsEnumerable = function propertyIsEnumerable(key) {
  var E = isEnum.call(this, key = toPrimitive(key, true));
  if (this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return false;
  return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true;
};
var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key) {
  it = toIObject(it);
  key = toPrimitive(key, true);
  if (it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return;
  var D = gOPD(it, key);
  if (D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) D.enumerable = true;
  return D;
};
var $getOwnPropertyNames = function getOwnPropertyNames(it) {
  var names = gOPN(toIObject(it));
  var result = [];
  var i = 0;
  var key;
  while (names.length > i) {
    if (!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META) result.push(key);
  } return result;
};
var $getOwnPropertySymbols = function getOwnPropertySymbols(it) {
  var IS_OP = it === ObjectProto;
  var names = gOPN(IS_OP ? OPSymbols : toIObject(it));
  var result = [];
  var i = 0;
  var key;
  while (names.length > i) {
    if (has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true)) result.push(AllSymbols[key]);
  } return result;
};

// 19.4.1.1 Symbol([description])
if (!USE_NATIVE) {
  $Symbol = function Symbol() {
    if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor!');
    var tag = uid(arguments.length > 0 ? arguments[0] : undefined);
    var $set = function (value) {
      if (this === ObjectProto) $set.call(OPSymbols, value);
      if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;
      setSymbolDesc(this, tag, createDesc(1, value));
    };
    if (DESCRIPTORS && setter) setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set });
    return wrap(tag);
  };
  redefine($Symbol[PROTOTYPE], 'toString', function toString() {
    return this._k;
  });

  $GOPD.f = $getOwnPropertyDescriptor;
  $DP.f = $defineProperty;
  __webpack_require__(/*! ./_object-gopn */ "../node_modules/core-js/library/modules/_object-gopn.js").f = gOPNExt.f = $getOwnPropertyNames;
  __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js").f = $propertyIsEnumerable;
  $GOPS.f = $getOwnPropertySymbols;

  if (DESCRIPTORS && !__webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js")) {
    redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);
  }

  wksExt.f = function (name) {
    return wrap(wks(name));
  };
}

$export($export.G + $export.W + $export.F * !USE_NATIVE, { Symbol: $Symbol });

for (var es6Symbols = (
  // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14
  'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'
).split(','), j = 0; es6Symbols.length > j;)wks(es6Symbols[j++]);

for (var wellKnownSymbols = $keys(wks.store), k = 0; wellKnownSymbols.length > k;) wksDefine(wellKnownSymbols[k++]);

$export($export.S + $export.F * !USE_NATIVE, 'Symbol', {
  // 19.4.2.1 Symbol.for(key)
  'for': function (key) {
    return has(SymbolRegistry, key += '')
      ? SymbolRegistry[key]
      : SymbolRegistry[key] = $Symbol(key);
  },
  // 19.4.2.5 Symbol.keyFor(sym)
  keyFor: function keyFor(sym) {
    if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol!');
    for (var key in SymbolRegistry) if (SymbolRegistry[key] === sym) return key;
  },
  useSetter: function () { setter = true; },
  useSimple: function () { setter = false; }
});

$export($export.S + $export.F * !USE_NATIVE, 'Object', {
  // 19.1.2.2 Object.create(O [, Properties])
  create: $create,
  // 19.1.2.4 Object.defineProperty(O, P, Attributes)
  defineProperty: $defineProperty,
  // 19.1.2.3 Object.defineProperties(O, Properties)
  defineProperties: $defineProperties,
  // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
  getOwnPropertyDescriptor: $getOwnPropertyDescriptor,
  // 19.1.2.7 Object.getOwnPropertyNames(O)
  getOwnPropertyNames: $getOwnPropertyNames,
  // 19.1.2.8 Object.getOwnPropertySymbols(O)
  getOwnPropertySymbols: $getOwnPropertySymbols
});

// Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives
// https://bugs.chromium.org/p/v8/issues/detail?id=3443
var FAILS_ON_PRIMITIVES = $fails(function () { $GOPS.f(1); });

$export($export.S + $export.F * FAILS_ON_PRIMITIVES, 'Object', {
  getOwnPropertySymbols: function getOwnPropertySymbols(it) {
    return $GOPS.f(toObject(it));
  }
});

// 24.3.2 JSON.stringify(value [, replacer [, space]])
$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function () {
  var S = $Symbol();
  // MS Edge converts symbol values to JSON as {}
  // WebKit converts symbol values to JSON as null
  // V8 throws on boxed symbols
  return _stringify([S]) != '[null]' || _stringify({ a: S }) != '{}' || _stringify(Object(S)) != '{}';
})), 'JSON', {
  stringify: function stringify(it) {
    var args = [it];
    var i = 1;
    var replacer, $replacer;
    while (arguments.length > i) args.push(arguments[i++]);
    $replacer = replacer = args[1];
    if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined
    if (!isArray(replacer)) replacer = function (key, value) {
      if (typeof $replacer == 'function') value = $replacer.call(this, key, value);
      if (!isSymbol(value)) return value;
    };
    args[1] = replacer;
    return _stringify.apply($JSON, args);
  }
});

// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint)
$Symbol[PROTOTYPE][TO_PRIMITIVE] || __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js")($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);
// 19.4.3.5 Symbol.prototype[@@toStringTag]
setToStringTag($Symbol, 'Symbol');
// 20.2.1.9 Math[@@toStringTag]
setToStringTag(Math, 'Math', true);
// 24.3.3 JSON[@@toStringTag]
setToStringTag(global.JSON, 'JSON', true);


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.weak-map.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.weak-map.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var each = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/library/modules/_array-methods.js")(0);
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/library/modules/_redefine.js");
var meta = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js");
var assign = __webpack_require__(/*! ./_object-assign */ "../node_modules/core-js/library/modules/_object-assign.js");
var weak = __webpack_require__(/*! ./_collection-weak */ "../node_modules/core-js/library/modules/_collection-weak.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var validate = __webpack_require__(/*! ./_validate-collection */ "../node_modules/core-js/library/modules/_validate-collection.js");
var NATIVE_WEAK_MAP = __webpack_require__(/*! ./_validate-collection */ "../node_modules/core-js/library/modules/_validate-collection.js");
var IS_IE11 = !global.ActiveXObject && 'ActiveXObject' in global;
var WEAK_MAP = 'WeakMap';
var getWeak = meta.getWeak;
var isExtensible = Object.isExtensible;
var uncaughtFrozenStore = weak.ufstore;
var InternalMap;

var wrapper = function (get) {
  return function WeakMap() {
    return get(this, arguments.length > 0 ? arguments[0] : undefined);
  };
};

var methods = {
  // 23.3.3.3 WeakMap.prototype.get(key)
  get: function get(key) {
    if (isObject(key)) {
      var data = getWeak(key);
      if (data === true) return uncaughtFrozenStore(validate(this, WEAK_MAP)).get(key);
      return data ? data[this._i] : undefined;
    }
  },
  // 23.3.3.5 WeakMap.prototype.set(key, value)
  set: function set(key, value) {
    return weak.def(validate(this, WEAK_MAP), key, value);
  }
};

// 23.3 WeakMap Objects
var $WeakMap = module.exports = __webpack_require__(/*! ./_collection */ "../node_modules/core-js/library/modules/_collection.js")(WEAK_MAP, wrapper, methods, weak, true, true);

// IE11 WeakMap frozen keys fix
if (NATIVE_WEAK_MAP && IS_IE11) {
  InternalMap = weak.getConstructor(wrapper, WEAK_MAP);
  assign(InternalMap.prototype, methods);
  meta.NEED = true;
  each(['delete', 'has', 'get', 'set'], function (key) {
    var proto = $WeakMap.prototype;
    var method = proto[key];
    redefine(proto, key, function (a, b) {
      // store frozen objects on internal weakmap shim
      if (isObject(a) && !isExtensible(a)) {
        if (!this._f) this._f = new InternalMap();
        var result = this._f[key](a, b);
        return key == 'set' ? this : result;
      // store all the rest on native weakmap
      } return method.call(this, a, b);
    });
  });
}


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.symbol.async-iterator.js":
/*!****************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.symbol.async-iterator.js ***!
  \****************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js")('asyncIterator');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.symbol.observable.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.symbol.observable.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js")('observable');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.weak-map.from.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.weak-map.from.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://tc39.github.io/proposal-setmap-offrom/#sec-weakmap.from
__webpack_require__(/*! ./_set-collection-from */ "../node_modules/core-js/library/modules/_set-collection-from.js")('WeakMap');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.weak-map.of.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.weak-map.of.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://tc39.github.io/proposal-setmap-offrom/#sec-weakmap.of
__webpack_require__(/*! ./_set-collection-of */ "../node_modules/core-js/library/modules/_set-collection-of.js")('WeakMap');


/***/ }),

/***/ "../node_modules/core-js/library/modules/web.dom.iterable.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/web.dom.iterable.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ./es6.array.iterator */ "../node_modules/core-js/library/modules/es6.array.iterator.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var TO_STRING_TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('toStringTag');

var DOMIterables = ('CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,' +
  'DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,' +
  'MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,' +
  'SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,' +
  'TextTrackList,TouchList').split(',');

for (var i = 0; i < DOMIterables.length; i++) {
  var NAME = DOMIterables[i];
  var Collection = global[NAME];
  var proto = Collection && Collection.prototype;
  if (proto && !proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);
  Iterators[NAME] = Iterators.Array;
}


/***/ }),

/***/ "../node_modules/core-js/modules/_a-function.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_a-function.js ***!
  \******************************************************/
/***/ ((module) => {

module.exports = function (it) {
  if (typeof it != 'function') throw TypeError(it + ' is not a function!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_an-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_an-object.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
module.exports = function (it) {
  if (!isObject(it)) throw TypeError(it + ' is not an object!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-methods.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_array-methods.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 0 -> Array#forEach
// 1 -> Array#map
// 2 -> Array#filter
// 3 -> Array#some
// 4 -> Array#every
// 5 -> Array#find
// 6 -> Array#findIndex
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/modules/_ctx.js");
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/modules/_iobject.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/modules/_to-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var asc = __webpack_require__(/*! ./_array-species-create */ "../node_modules/core-js/modules/_array-species-create.js");
module.exports = function (TYPE, $create) {
  var IS_MAP = TYPE == 1;
  var IS_FILTER = TYPE == 2;
  var IS_SOME = TYPE == 3;
  var IS_EVERY = TYPE == 4;
  var IS_FIND_INDEX = TYPE == 6;
  var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
  var create = $create || asc;
  return function ($this, callbackfn, that) {
    var O = toObject($this);
    var self = IObject(O);
    var f = ctx(callbackfn, that, 3);
    var length = toLength(self.length);
    var index = 0;
    var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;
    var val, res;
    for (;length > index; index++) if (NO_HOLES || index in self) {
      val = self[index];
      res = f(val, index, O);
      if (TYPE) {
        if (IS_MAP) result[index] = res;   // map
        else if (res) switch (TYPE) {
          case 3: return true;             // some
          case 5: return val;              // find
          case 6: return index;            // findIndex
          case 2: result.push(val);        // filter
        } else if (IS_EVERY) return false; // every
      }
    }
    return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-species-constructor.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/modules/_array-species-constructor.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var isArray = __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/modules/_is-array.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('species');

module.exports = function (original) {
  var C;
  if (isArray(original)) {
    C = original.constructor;
    // cross-realm fallback
    if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
    if (isObject(C)) {
      C = C[SPECIES];
      if (C === null) C = undefined;
    }
  } return C === undefined ? Array : C;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-species-create.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_array-species-create.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 9.4.2.3 ArraySpeciesCreate(originalArray, length)
var speciesConstructor = __webpack_require__(/*! ./_array-species-constructor */ "../node_modules/core-js/modules/_array-species-constructor.js");

module.exports = function (original, length) {
  return new (speciesConstructor(original))(length);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_classof.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_classof.js ***!
  \***************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// getting tag from 19.1.3.6 Object.prototype.toString()
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('toStringTag');
// ES3 wrong here
var ARG = cof(function () { return arguments; }()) == 'Arguments';

// fallback for IE11 Script Access Denied error
var tryGet = function (it, key) {
  try {
    return it[key];
  } catch (e) { /* empty */ }
};

module.exports = function (it) {
  var O, T, B;
  return it === undefined ? 'Undefined' : it === null ? 'Null'
    // @@toStringTag case
    : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T
    // builtinTag case
    : ARG ? cof(O)
    // ES3 arguments fallback
    : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_cof.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_cof.js ***!
  \***********************************************/
/***/ ((module) => {

var toString = {}.toString;

module.exports = function (it) {
  return toString.call(it).slice(8, -1);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_core.js":
/*!************************************************!*\
  !*** ../node_modules/core-js/modules/_core.js ***!
  \************************************************/
/***/ ((module) => {

var core = module.exports = { version: '2.6.12' };
if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/modules/_ctx.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_ctx.js ***!
  \***********************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// optional / simple context binding
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/modules/_a-function.js");
module.exports = function (fn, that, length) {
  aFunction(fn);
  if (that === undefined) return fn;
  switch (length) {
    case 1: return function (a) {
      return fn.call(that, a);
    };
    case 2: return function (a, b) {
      return fn.call(that, a, b);
    };
    case 3: return function (a, b, c) {
      return fn.call(that, a, b, c);
    };
  }
  return function (/* ...args */) {
    return fn.apply(that, arguments);
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_defined.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_defined.js ***!
  \***************************************************/
/***/ ((module) => {

// 7.2.1 RequireObjectCoercible(argument)
module.exports = function (it) {
  if (it == undefined) throw TypeError("Can't call method on  " + it);
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_descriptors.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_descriptors.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Thank's IE8 for his funny defineProperty
module.exports = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () {
  return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/modules/_dom-create.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_dom-create.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js").document;
// typeof document.createElement is 'object' in old IE
var is = isObject(document) && isObject(document.createElement);
module.exports = function (it) {
  return is ? document.createElement(it) : {};
};


/***/ }),

/***/ "../node_modules/core-js/modules/_export.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_export.js ***!
  \**************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/modules/_ctx.js");
var PROTOTYPE = 'prototype';

var $export = function (type, name, source) {
  var IS_FORCED = type & $export.F;
  var IS_GLOBAL = type & $export.G;
  var IS_STATIC = type & $export.S;
  var IS_PROTO = type & $export.P;
  var IS_BIND = type & $export.B;
  var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE];
  var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
  var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {});
  var key, own, out, exp;
  if (IS_GLOBAL) source = name;
  for (key in source) {
    // contains in native
    own = !IS_FORCED && target && target[key] !== undefined;
    // export native or passed
    out = (own ? target : source)[key];
    // bind timers to global for call from export context
    exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
    // extend global
    if (target) redefine(target, key, out, type & $export.U);
    // export
    if (exports[key] != out) hide(exports, key, exp);
    if (IS_PROTO && expProto[key] != out) expProto[key] = out;
  }
};
global.core = core;
// type bitmap
$export.F = 1;   // forced
$export.G = 2;   // global
$export.S = 4;   // static
$export.P = 8;   // proto
$export.B = 16;  // bind
$export.W = 32;  // wrap
$export.U = 64;  // safe
$export.R = 128; // real proto method for `library`
module.exports = $export;


/***/ }),

/***/ "../node_modules/core-js/modules/_fails.js":
/*!*************************************************!*\
  !*** ../node_modules/core-js/modules/_fails.js ***!
  \*************************************************/
/***/ ((module) => {

module.exports = function (exec) {
  try {
    return !!exec();
  } catch (e) {
    return true;
  }
};


/***/ }),

/***/ "../node_modules/core-js/modules/_flags.js":
/*!*************************************************!*\
  !*** ../node_modules/core-js/modules/_flags.js ***!
  \*************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 21.2.5.3 get RegExp.prototype.flags
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
module.exports = function () {
  var that = anObject(this);
  var result = '';
  if (that.global) result += 'g';
  if (that.ignoreCase) result += 'i';
  if (that.multiline) result += 'm';
  if (that.unicode) result += 'u';
  if (that.sticky) result += 'y';
  return result;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_function-to-string.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/modules/_function-to-string.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/modules/_shared.js")('native-function-to-string', Function.toString);


/***/ }),

/***/ "../node_modules/core-js/modules/_global.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_global.js ***!
  \**************************************************/
/***/ ((module) => {

// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
var global = module.exports = typeof window != 'undefined' && window.Math == Math
  ? window : typeof self != 'undefined' && self.Math == Math ? self
  // eslint-disable-next-line no-new-func
  : Function('return this')();
if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/modules/_has.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_has.js ***!
  \***********************************************/
/***/ ((module) => {

var hasOwnProperty = {}.hasOwnProperty;
module.exports = function (it, key) {
  return hasOwnProperty.call(it, key);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_hide.js":
/*!************************************************!*\
  !*** ../node_modules/core-js/modules/_hide.js ***!
  \************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/modules/_property-desc.js");
module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? function (object, key, value) {
  return dP.f(object, key, createDesc(1, value));
} : function (object, key, value) {
  object[key] = value;
  return object;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_ie8-dom-define.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/_ie8-dom-define.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") && !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () {
  return Object.defineProperty(__webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/modules/_dom-create.js")('div'), 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/modules/_iobject.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_iobject.js ***!
  \***************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// fallback for non-array-like ES3 and non-enumerable old V8 strings
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
// eslint-disable-next-line no-prototype-builtins
module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
  return cof(it) == 'String' ? it.split('') : Object(it);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_is-array.js":
/*!****************************************************!*\
  !*** ../node_modules/core-js/modules/_is-array.js ***!
  \****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.2.2 IsArray(argument)
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
module.exports = Array.isArray || function isArray(arg) {
  return cof(arg) == 'Array';
};


/***/ }),

/***/ "../node_modules/core-js/modules/_is-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_is-object.js ***!
  \*****************************************************/
/***/ ((module) => {

module.exports = function (it) {
  return typeof it === 'object' ? it !== null : typeof it === 'function';
};


/***/ }),

/***/ "../node_modules/core-js/modules/_library.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_library.js ***!
  \***************************************************/
/***/ ((module) => {

module.exports = false;


/***/ }),

/***/ "../node_modules/core-js/modules/_object-dp.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_object-dp.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/modules/_ie8-dom-define.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/modules/_to-primitive.js");
var dP = Object.defineProperty;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? Object.defineProperty : function defineProperty(O, P, Attributes) {
  anObject(O);
  P = toPrimitive(P, true);
  anObject(Attributes);
  if (IE8_DOM_DEFINE) try {
    return dP(O, P, Attributes);
  } catch (e) { /* empty */ }
  if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
  if ('value' in Attributes) O[P] = Attributes.value;
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_property-desc.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_property-desc.js ***!
  \*********************************************************/
/***/ ((module) => {

module.exports = function (bitmap, value) {
  return {
    enumerable: !(bitmap & 1),
    configurable: !(bitmap & 2),
    writable: !(bitmap & 4),
    value: value
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_redefine.js":
/*!****************************************************!*\
  !*** ../node_modules/core-js/modules/_redefine.js ***!
  \****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var SRC = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/modules/_uid.js")('src');
var $toString = __webpack_require__(/*! ./_function-to-string */ "../node_modules/core-js/modules/_function-to-string.js");
var TO_STRING = 'toString';
var TPL = ('' + $toString).split(TO_STRING);

__webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js").inspectSource = function (it) {
  return $toString.call(it);
};

(module.exports = function (O, key, val, safe) {
  var isFunction = typeof val == 'function';
  if (isFunction) has(val, 'name') || hide(val, 'name', key);
  if (O[key] === val) return;
  if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));
  if (O === global) {
    O[key] = val;
  } else if (!safe) {
    delete O[key];
    hide(O, key, val);
  } else if (O[key]) {
    O[key] = val;
  } else {
    hide(O, key, val);
  }
// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
})(Function.prototype, TO_STRING, function toString() {
  return typeof this == 'function' && this[SRC] || $toString.call(this);
});


/***/ }),

/***/ "../node_modules/core-js/modules/_shared.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_shared.js ***!
  \**************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var SHARED = '__core-js_shared__';
var store = global[SHARED] || (global[SHARED] = {});

(module.exports = function (key, value) {
  return store[key] || (store[key] = value !== undefined ? value : {});
})('versions', []).push({
  version: core.version,
  mode: __webpack_require__(/*! ./_library */ "../node_modules/core-js/modules/_library.js") ? 'pure' : 'global',
  copyright: '© 2020 Denis Pushkarev (zloirock.ru)'
});


/***/ }),

/***/ "../node_modules/core-js/modules/_strict-method.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_strict-method.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js");

module.exports = function (method, arg) {
  return !!method && fails(function () {
    // eslint-disable-next-line no-useless-call
    arg ? method.call(null, function () { /* empty */ }, 1) : method.call(null);
  });
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-integer.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_to-integer.js ***!
  \******************************************************/
/***/ ((module) => {

// 7.1.4 ToInteger
var ceil = Math.ceil;
var floor = Math.floor;
module.exports = function (it) {
  return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-length.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_to-length.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.15 ToLength
var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var min = Math.min;
module.exports = function (it) {
  return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_to-object.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.13 ToObject(argument)
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
module.exports = function (it) {
  return Object(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-primitive.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/modules/_to-primitive.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.1 ToPrimitive(input [, PreferredType])
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
// instead of the ES6 spec version, we didn't implement @@toPrimitive case
// and the second argument - flag - preferred type is a string
module.exports = function (it, S) {
  if (!isObject(it)) return it;
  var fn, val;
  if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
  if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  throw TypeError("Can't convert object to primitive value");
};


/***/ }),

/***/ "../node_modules/core-js/modules/_uid.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_uid.js ***!
  \***********************************************/
/***/ ((module) => {

var id = 0;
var px = Math.random();
module.exports = function (key) {
  return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_wks.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_wks.js ***!
  \***********************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var store = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/modules/_shared.js")('wks');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/modules/_uid.js");
var Symbol = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js").Symbol;
var USE_SYMBOL = typeof Symbol == 'function';

var $exports = module.exports = function (name) {
  return store[name] || (store[name] =
    USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
};

$exports.store = store;


/***/ }),

/***/ "../node_modules/core-js/modules/es6.array.map.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.array.map.js ***!
  \********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var $map = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/modules/_array-methods.js")(1);

$export($export.P + $export.F * !__webpack_require__(/*! ./_strict-method */ "../node_modules/core-js/modules/_strict-method.js")([].map, true), 'Array', {
  // 22.1.3.15 / 15.4.4.19 Array.prototype.map(callbackfn [, thisArg])
  map: function map(callbackfn /* , thisArg */) {
    return $map(this, callbackfn, arguments[1]);
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.object.to-string.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.object.to-string.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 19.1.3.6 Object.prototype.toString()
var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/modules/_classof.js");
var test = {};
test[__webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('toStringTag')] = 'z';
if (test + '' != '[object z]') {
  __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js")(Object.prototype, 'toString', function toString() {
    return '[object ' + classof(this) + ']';
  }, true);
}


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.flags.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.flags.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 21.2.5.3 get RegExp.prototype.flags()
if (__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") && /./g.flags != 'g') __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js").f(RegExp.prototype, 'flags', {
  configurable: true,
  get: __webpack_require__(/*! ./_flags */ "../node_modules/core-js/modules/_flags.js")
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.to-string.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.to-string.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

__webpack_require__(/*! ./es6.regexp.flags */ "../node_modules/core-js/modules/es6.regexp.flags.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var $flags = __webpack_require__(/*! ./_flags */ "../node_modules/core-js/modules/_flags.js");
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js");
var TO_STRING = 'toString';
var $toString = /./[TO_STRING];

var define = function (fn) {
  __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js")(RegExp.prototype, TO_STRING, fn, true);
};

// 21.2.5.14 RegExp.prototype.toString()
if (__webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () { return $toString.call({ source: 'a', flags: 'b' }) != '/a/b'; })) {
  define(function toString() {
    var R = anObject(this);
    return '/'.concat(R.source, '/',
      'flags' in R ? R.flags : !DESCRIPTORS && R instanceof RegExp ? $flags.call(R) : undefined);
  });
// FF44- RegExp#toString has a wrong name
} else if ($toString.name != TO_STRING) {
  define(function toString() {
    return $toString.call(this);
  });
}


/***/ }),

/***/ "../node_modules/object-assign/index.js":
/*!**********************************************!*\
  !*** ../node_modules/object-assign/index.js ***!
  \**********************************************/
/***/ ((module) => {

"use strict";
/*
object-assign
(c) Sindre Sorhus
@license MIT
*/


/* eslint-disable no-unused-vars */
var getOwnPropertySymbols = Object.getOwnPropertySymbols;
var hasOwnProperty = Object.prototype.hasOwnProperty;
var propIsEnumerable = Object.prototype.propertyIsEnumerable;

function toObject(val) {
	if (val === null || val === undefined) {
		throw new TypeError('Object.assign cannot be called with null or undefined');
	}

	return Object(val);
}

function shouldUseNative() {
	try {
		if (!Object.assign) {
			return false;
		}

		// Detect buggy property enumeration order in older V8 versions.

		// https://bugs.chromium.org/p/v8/issues/detail?id=4118
		var test1 = new String('abc');  // eslint-disable-line no-new-wrappers
		test1[5] = 'de';
		if (Object.getOwnPropertyNames(test1)[0] === '5') {
			return false;
		}

		// https://bugs.chromium.org/p/v8/issues/detail?id=3056
		var test2 = {};
		for (var i = 0; i < 10; i++) {
			test2['_' + String.fromCharCode(i)] = i;
		}
		var order2 = Object.getOwnPropertyNames(test2).map(function (n) {
			return test2[n];
		});
		if (order2.join('') !== '0123456789') {
			return false;
		}

		// https://bugs.chromium.org/p/v8/issues/detail?id=3056
		var test3 = {};
		'abcdefghijklmnopqrst'.split('').forEach(function (letter) {
			test3[letter] = letter;
		});
		if (Object.keys(Object.assign({}, test3)).join('') !==
				'abcdefghijklmnopqrst') {
			return false;
		}

		return true;
	} catch (err) {
		// We don't expect any of the above to throw, but better to be safe.
		return false;
	}
}

module.exports = shouldUseNative() ? Object.assign : function (target, source) {
	var from;
	var to = toObject(target);
	var symbols;

	for (var s = 1; s < arguments.length; s++) {
		from = Object(arguments[s]);

		for (var key in from) {
			if (hasOwnProperty.call(from, key)) {
				to[key] = from[key];
			}
		}

		if (getOwnPropertySymbols) {
			symbols = getOwnPropertySymbols(from);
			for (var i = 0; i < symbols.length; i++) {
				if (propIsEnumerable.call(from, symbols[i])) {
					to[symbols[i]] = from[symbols[i]];
				}
			}
		}
	}

	return to;
};


/***/ }),

/***/ "../node_modules/prop-types/checkPropTypes.js":
/*!****************************************************!*\
  !*** ../node_modules/prop-types/checkPropTypes.js ***!
  \****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/**
 * Copyright (c) 2013-present, Facebook, Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */



var printWarning = function() {};

if (true) {
  var ReactPropTypesSecret = __webpack_require__(/*! ./lib/ReactPropTypesSecret */ "../node_modules/prop-types/lib/ReactPropTypesSecret.js");
  var loggedTypeFailures = {};
  var has = Function.call.bind(Object.prototype.hasOwnProperty);

  printWarning = function(text) {
    var message = 'Warning: ' + text;
    if (typeof console !== 'undefined') {
      console.error(message);
    }
    try {
      // --- Welcome to debugging React ---
      // This error was thrown as a convenience so that you can use this stack
      // to find the callsite that caused this warning to fire.
      throw new Error(message);
    } catch (x) {}
  };
}

/**
 * Assert that the values match with the type specs.
 * Error messages are memorized and will only be shown once.
 *
 * @param {object} typeSpecs Map of name to a ReactPropType
 * @param {object} values Runtime values that need to be type-checked
 * @param {string} location e.g. "prop", "context", "child context"
 * @param {string} componentName Name of the component for error messages.
 * @param {?Function} getStack Returns the component stack.
 * @private
 */
function checkPropTypes(typeSpecs, values, location, componentName, getStack) {
  if (true) {
    for (var typeSpecName in typeSpecs) {
      if (has(typeSpecs, typeSpecName)) {
        var error;
        // Prop type validation may throw. In case they do, we don't want to
        // fail the render phase where it didn't fail before. So we log it.
        // After these have been cleaned up, we'll let them throw.
        try {
          // This is intentionally an invariant that gets caught. It's the same
          // behavior as without this statement except with a better message.
          if (typeof typeSpecs[typeSpecName] !== 'function') {
            var err = Error(
              (componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' +
              'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.'
            );
            err.name = 'Invariant Violation';
            throw err;
          }
          error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);
        } catch (ex) {
          error = ex;
        }
        if (error && !(error instanceof Error)) {
          printWarning(
            (componentName || 'React class') + ': type specification of ' +
            location + ' `' + typeSpecName + '` is invalid; the type checker ' +
            'function must return `null` or an `Error` but returned a ' + typeof error + '. ' +
            'You may have forgotten to pass an argument to the type checker ' +
            'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' +
            'shape all require an argument).'
          );
        }
        if (error instanceof Error && !(error.message in loggedTypeFailures)) {
          // Only monitor this failure once because there tends to be a lot of the
          // same error.
          loggedTypeFailures[error.message] = true;

          var stack = getStack ? getStack() : '';

          printWarning(
            'Failed ' + location + ' type: ' + error.message + (stack != null ? stack : '')
          );
        }
      }
    }
  }
}

/**
 * Resets warning cache when testing.
 *
 * @private
 */
checkPropTypes.resetWarningCache = function() {
  if (true) {
    loggedTypeFailures = {};
  }
}

module.exports = checkPropTypes;


/***/ }),

/***/ "../node_modules/prop-types/factoryWithTypeCheckers.js":
/*!*************************************************************!*\
  !*** ../node_modules/prop-types/factoryWithTypeCheckers.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/**
 * Copyright (c) 2013-present, Facebook, Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */



var ReactIs = __webpack_require__(/*! react-is */ "../node_modules/react-is/index.js");
var assign = __webpack_require__(/*! object-assign */ "../node_modules/object-assign/index.js");

var ReactPropTypesSecret = __webpack_require__(/*! ./lib/ReactPropTypesSecret */ "../node_modules/prop-types/lib/ReactPropTypesSecret.js");
var checkPropTypes = __webpack_require__(/*! ./checkPropTypes */ "../node_modules/prop-types/checkPropTypes.js");

var has = Function.call.bind(Object.prototype.hasOwnProperty);
var printWarning = function() {};

if (true) {
  printWarning = function(text) {
    var message = 'Warning: ' + text;
    if (typeof console !== 'undefined') {
      console.error(message);
    }
    try {
      // --- Welcome to debugging React ---
      // This error was thrown as a convenience so that you can use this stack
      // to find the callsite that caused this warning to fire.
      throw new Error(message);
    } catch (x) {}
  };
}

function emptyFunctionThatReturnsNull() {
  return null;
}

module.exports = function(isValidElement, throwOnDirectAccess) {
  /* global Symbol */
  var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;
  var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.

  /**
   * Returns the iterator method function contained on the iterable object.
   *
   * Be sure to invoke the function with the iterable as context:
   *
   *     var iteratorFn = getIteratorFn(myIterable);
   *     if (iteratorFn) {
   *       var iterator = iteratorFn.call(myIterable);
   *       ...
   *     }
   *
   * @param {?object} maybeIterable
   * @return {?function}
   */
  function getIteratorFn(maybeIterable) {
    var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);
    if (typeof iteratorFn === 'function') {
      return iteratorFn;
    }
  }

  /**
   * Collection of methods that allow declaration and validation of props that are
   * supplied to React components. Example usage:
   *
   *   var Props = require('ReactPropTypes');
   *   var MyArticle = React.createClass({
   *     propTypes: {
   *       // An optional string prop named "description".
   *       description: Props.string,
   *
   *       // A required enum prop named "category".
   *       category: Props.oneOf(['News','Photos']).isRequired,
   *
   *       // A prop named "dialog" that requires an instance of Dialog.
   *       dialog: Props.instanceOf(Dialog).isRequired
   *     },
   *     render: function() { ... }
   *   });
   *
   * A more formal specification of how these methods are used:
   *
   *   type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)
   *   decl := ReactPropTypes.{type}(.isRequired)?
   *
   * Each and every declaration produces a function with the same signature. This
   * allows the creation of custom validation functions. For example:
   *
   *  var MyLink = React.createClass({
   *    propTypes: {
   *      // An optional string or URI prop named "href".
   *      href: function(props, propName, componentName) {
   *        var propValue = props[propName];
   *        if (propValue != null && typeof propValue !== 'string' &&
   *            !(propValue instanceof URI)) {
   *          return new Error(
   *            'Expected a string or an URI for ' + propName + ' in ' +
   *            componentName
   *          );
   *        }
   *      }
   *    },
   *    render: function() {...}
   *  });
   *
   * @internal
   */

  var ANONYMOUS = '<<anonymous>>';

  // Important!
  // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.
  var ReactPropTypes = {
    array: createPrimitiveTypeChecker('array'),
    bool: createPrimitiveTypeChecker('boolean'),
    func: createPrimitiveTypeChecker('function'),
    number: createPrimitiveTypeChecker('number'),
    object: createPrimitiveTypeChecker('object'),
    string: createPrimitiveTypeChecker('string'),
    symbol: createPrimitiveTypeChecker('symbol'),

    any: createAnyTypeChecker(),
    arrayOf: createArrayOfTypeChecker,
    element: createElementTypeChecker(),
    elementType: createElementTypeTypeChecker(),
    instanceOf: createInstanceTypeChecker,
    node: createNodeChecker(),
    objectOf: createObjectOfTypeChecker,
    oneOf: createEnumTypeChecker,
    oneOfType: createUnionTypeChecker,
    shape: createShapeTypeChecker,
    exact: createStrictShapeTypeChecker,
  };

  /**
   * inlined Object.is polyfill to avoid requiring consumers ship their own
   * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is
   */
  /*eslint-disable no-self-compare*/
  function is(x, y) {
    // SameValue algorithm
    if (x === y) {
      // Steps 1-5, 7-10
      // Steps 6.b-6.e: +0 != -0
      return x !== 0 || 1 / x === 1 / y;
    } else {
      // Step 6.a: NaN == NaN
      return x !== x && y !== y;
    }
  }
  /*eslint-enable no-self-compare*/

  /**
   * We use an Error-like object for backward compatibility as people may call
   * PropTypes directly and inspect their output. However, we don't use real
   * Errors anymore. We don't inspect their stack anyway, and creating them
   * is prohibitively expensive if they are created too often, such as what
   * happens in oneOfType() for any type before the one that matched.
   */
  function PropTypeError(message) {
    this.message = message;
    this.stack = '';
  }
  // Make `instanceof Error` still work for returned errors.
  PropTypeError.prototype = Error.prototype;

  function createChainableTypeChecker(validate) {
    if (true) {
      var manualPropTypeCallCache = {};
      var manualPropTypeWarningCount = 0;
    }
    function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {
      componentName = componentName || ANONYMOUS;
      propFullName = propFullName || propName;

      if (secret !== ReactPropTypesSecret) {
        if (throwOnDirectAccess) {
          // New behavior only for users of `prop-types` package
          var err = new Error(
            'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +
            'Use `PropTypes.checkPropTypes()` to call them. ' +
            'Read more at http://fb.me/use-check-prop-types'
          );
          err.name = 'Invariant Violation';
          throw err;
        } else if ( true && typeof console !== 'undefined') {
          // Old behavior for people using React.PropTypes
          var cacheKey = componentName + ':' + propName;
          if (
            !manualPropTypeCallCache[cacheKey] &&
            // Avoid spamming the console because they are often not actionable except for lib authors
            manualPropTypeWarningCount < 3
          ) {
            printWarning(
              'You are manually calling a React.PropTypes validation ' +
              'function for the `' + propFullName + '` prop on `' + componentName  + '`. This is deprecated ' +
              'and will throw in the standalone `prop-types` package. ' +
              'You may be seeing this warning due to a third-party PropTypes ' +
              'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.'
            );
            manualPropTypeCallCache[cacheKey] = true;
            manualPropTypeWarningCount++;
          }
        }
      }
      if (props[propName] == null) {
        if (isRequired) {
          if (props[propName] === null) {
            return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));
          }
          return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));
        }
        return null;
      } else {
        return validate(props, propName, componentName, location, propFullName);
      }
    }

    var chainedCheckType = checkType.bind(null, false);
    chainedCheckType.isRequired = checkType.bind(null, true);

    return chainedCheckType;
  }

  function createPrimitiveTypeChecker(expectedType) {
    function validate(props, propName, componentName, location, propFullName, secret) {
      var propValue = props[propName];
      var propType = getPropType(propValue);
      if (propType !== expectedType) {
        // `propValue` being instance of, say, date/regexp, pass the 'object'
        // check, but we can offer a more precise error message here rather than
        // 'of type `object`'.
        var preciseType = getPreciseType(propValue);

        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'));
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createAnyTypeChecker() {
    return createChainableTypeChecker(emptyFunctionThatReturnsNull);
  }

  function createArrayOfTypeChecker(typeChecker) {
    function validate(props, propName, componentName, location, propFullName) {
      if (typeof typeChecker !== 'function') {
        return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');
      }
      var propValue = props[propName];
      if (!Array.isArray(propValue)) {
        var propType = getPropType(propValue);
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));
      }
      for (var i = 0; i < propValue.length; i++) {
        var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);
        if (error instanceof Error) {
          return error;
        }
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createElementTypeChecker() {
    function validate(props, propName, componentName, location, propFullName) {
      var propValue = props[propName];
      if (!isValidElement(propValue)) {
        var propType = getPropType(propValue);
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createElementTypeTypeChecker() {
    function validate(props, propName, componentName, location, propFullName) {
      var propValue = props[propName];
      if (!ReactIs.isValidElementType(propValue)) {
        var propType = getPropType(propValue);
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement type.'));
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createInstanceTypeChecker(expectedClass) {
    function validate(props, propName, componentName, location, propFullName) {
      if (!(props[propName] instanceof expectedClass)) {
        var expectedClassName = expectedClass.name || ANONYMOUS;
        var actualClassName = getClassName(props[propName]);
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createEnumTypeChecker(expectedValues) {
    if (!Array.isArray(expectedValues)) {
      if (true) {
        if (arguments.length > 1) {
          printWarning(
            'Invalid arguments supplied to oneOf, expected an array, got ' + arguments.length + ' arguments. ' +
            'A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).'
          );
        } else {
          printWarning('Invalid argument supplied to oneOf, expected an array.');
        }
      }
      return emptyFunctionThatReturnsNull;
    }

    function validate(props, propName, componentName, location, propFullName) {
      var propValue = props[propName];
      for (var i = 0; i < expectedValues.length; i++) {
        if (is(propValue, expectedValues[i])) {
          return null;
        }
      }

      var valuesString = JSON.stringify(expectedValues, function replacer(key, value) {
        var type = getPreciseType(value);
        if (type === 'symbol') {
          return String(value);
        }
        return value;
      });
      return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + String(propValue) + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));
    }
    return createChainableTypeChecker(validate);
  }

  function createObjectOfTypeChecker(typeChecker) {
    function validate(props, propName, componentName, location, propFullName) {
      if (typeof typeChecker !== 'function') {
        return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');
      }
      var propValue = props[propName];
      var propType = getPropType(propValue);
      if (propType !== 'object') {
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));
      }
      for (var key in propValue) {
        if (has(propValue, key)) {
          var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
          if (error instanceof Error) {
            return error;
          }
        }
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createUnionTypeChecker(arrayOfTypeCheckers) {
    if (!Array.isArray(arrayOfTypeCheckers)) {
       true ? printWarning('Invalid argument supplied to oneOfType, expected an instance of array.') : 0;
      return emptyFunctionThatReturnsNull;
    }

    for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
      var checker = arrayOfTypeCheckers[i];
      if (typeof checker !== 'function') {
        printWarning(
          'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +
          'received ' + getPostfixForTypeWarning(checker) + ' at index ' + i + '.'
        );
        return emptyFunctionThatReturnsNull;
      }
    }

    function validate(props, propName, componentName, location, propFullName) {
      for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
        var checker = arrayOfTypeCheckers[i];
        if (checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret) == null) {
          return null;
        }
      }

      return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`.'));
    }
    return createChainableTypeChecker(validate);
  }

  function createNodeChecker() {
    function validate(props, propName, componentName, location, propFullName) {
      if (!isNode(props[propName])) {
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createShapeTypeChecker(shapeTypes) {
    function validate(props, propName, componentName, location, propFullName) {
      var propValue = props[propName];
      var propType = getPropType(propValue);
      if (propType !== 'object') {
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));
      }
      for (var key in shapeTypes) {
        var checker = shapeTypes[key];
        if (!checker) {
          continue;
        }
        var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
        if (error) {
          return error;
        }
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createStrictShapeTypeChecker(shapeTypes) {
    function validate(props, propName, componentName, location, propFullName) {
      var propValue = props[propName];
      var propType = getPropType(propValue);
      if (propType !== 'object') {
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));
      }
      // We need to check all keys in case some are required but missing from
      // props.
      var allKeys = assign({}, props[propName], shapeTypes);
      for (var key in allKeys) {
        var checker = shapeTypes[key];
        if (!checker) {
          return new PropTypeError(
            'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' +
            '\nBad object: ' + JSON.stringify(props[propName], null, '  ') +
            '\nValid keys: ' +  JSON.stringify(Object.keys(shapeTypes), null, '  ')
          );
        }
        var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
        if (error) {
          return error;
        }
      }
      return null;
    }

    return createChainableTypeChecker(validate);
  }

  function isNode(propValue) {
    switch (typeof propValue) {
      case 'number':
      case 'string':
      case 'undefined':
        return true;
      case 'boolean':
        return !propValue;
      case 'object':
        if (Array.isArray(propValue)) {
          return propValue.every(isNode);
        }
        if (propValue === null || isValidElement(propValue)) {
          return true;
        }

        var iteratorFn = getIteratorFn(propValue);
        if (iteratorFn) {
          var iterator = iteratorFn.call(propValue);
          var step;
          if (iteratorFn !== propValue.entries) {
            while (!(step = iterator.next()).done) {
              if (!isNode(step.value)) {
                return false;
              }
            }
          } else {
            // Iterator will provide entry [k,v] tuples rather than values.
            while (!(step = iterator.next()).done) {
              var entry = step.value;
              if (entry) {
                if (!isNode(entry[1])) {
                  return false;
                }
              }
            }
          }
        } else {
          return false;
        }

        return true;
      default:
        return false;
    }
  }

  function isSymbol(propType, propValue) {
    // Native Symbol.
    if (propType === 'symbol') {
      return true;
    }

    // falsy value can't be a Symbol
    if (!propValue) {
      return false;
    }

    // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'
    if (propValue['@@toStringTag'] === 'Symbol') {
      return true;
    }

    // Fallback for non-spec compliant Symbols which are polyfilled.
    if (typeof Symbol === 'function' && propValue instanceof Symbol) {
      return true;
    }

    return false;
  }

  // Equivalent of `typeof` but with special handling for array and regexp.
  function getPropType(propValue) {
    var propType = typeof propValue;
    if (Array.isArray(propValue)) {
      return 'array';
    }
    if (propValue instanceof RegExp) {
      // Old webkits (at least until Android 4.0) return 'function' rather than
      // 'object' for typeof a RegExp. We'll normalize this here so that /bla/
      // passes PropTypes.object.
      return 'object';
    }
    if (isSymbol(propType, propValue)) {
      return 'symbol';
    }
    return propType;
  }

  // This handles more types than `getPropType`. Only used for error messages.
  // See `createPrimitiveTypeChecker`.
  function getPreciseType(propValue) {
    if (typeof propValue === 'undefined' || propValue === null) {
      return '' + propValue;
    }
    var propType = getPropType(propValue);
    if (propType === 'object') {
      if (propValue instanceof Date) {
        return 'date';
      } else if (propValue instanceof RegExp) {
        return 'regexp';
      }
    }
    return propType;
  }

  // Returns a string that is postfixed to a warning about an invalid type.
  // For example, "undefined" or "of type array"
  function getPostfixForTypeWarning(value) {
    var type = getPreciseType(value);
    switch (type) {
      case 'array':
      case 'object':
        return 'an ' + type;
      case 'boolean':
      case 'date':
      case 'regexp':
        return 'a ' + type;
      default:
        return type;
    }
  }

  // Returns class name of the object, if any.
  function getClassName(propValue) {
    if (!propValue.constructor || !propValue.constructor.name) {
      return ANONYMOUS;
    }
    return propValue.constructor.name;
  }

  ReactPropTypes.checkPropTypes = checkPropTypes;
  ReactPropTypes.resetWarningCache = checkPropTypes.resetWarningCache;
  ReactPropTypes.PropTypes = ReactPropTypes;

  return ReactPropTypes;
};


/***/ }),

/***/ "../node_modules/prop-types/index.js":
/*!*******************************************!*\
  !*** ../node_modules/prop-types/index.js ***!
  \*******************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

/**
 * Copyright (c) 2013-present, Facebook, Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

if (true) {
  var ReactIs = __webpack_require__(/*! react-is */ "../node_modules/react-is/index.js");

  // By explicitly using `prop-types` you are opting into new development behavior.
  // http://fb.me/prop-types-in-prod
  var throwOnDirectAccess = true;
  module.exports = __webpack_require__(/*! ./factoryWithTypeCheckers */ "../node_modules/prop-types/factoryWithTypeCheckers.js")(ReactIs.isElement, throwOnDirectAccess);
} else {}


/***/ }),

/***/ "../node_modules/prop-types/lib/ReactPropTypesSecret.js":
/*!**************************************************************!*\
  !*** ../node_modules/prop-types/lib/ReactPropTypesSecret.js ***!
  \**************************************************************/
/***/ ((module) => {

"use strict";
/**
 * Copyright (c) 2013-present, Facebook, Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */



var ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';

module.exports = ReactPropTypesSecret;


/***/ }),

/***/ "../node_modules/react-is/cjs/react-is.development.js":
/*!************************************************************!*\
  !*** ../node_modules/react-is/cjs/react-is.development.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";
/** @license React v16.13.1
 * react-is.development.js
 *
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */





if (true) {
  (function() {
'use strict';

// The Symbol used to tag the ReactElement-like types. If there is no native Symbol
// nor polyfill, then a plain number is used for performance.
var hasSymbol = typeof Symbol === 'function' && Symbol.for;
var REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;
var REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;
var REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;
var REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;
var REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;
var REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;
var REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary
// (unstable) APIs that have been removed. Can we remove the symbols?

var REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;
var REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;
var REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;
var REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;
var REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;
var REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;
var REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;
var REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;
var REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;
var REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;
var REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;

function isValidElementType(type) {
  return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
  type === REACT_FRAGMENT_TYPE || type === REACT_CONCURRENT_MODE_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || typeof type === 'object' && type !== null && (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || type.$$typeof === REACT_FUNDAMENTAL_TYPE || type.$$typeof === REACT_RESPONDER_TYPE || type.$$typeof === REACT_SCOPE_TYPE || type.$$typeof === REACT_BLOCK_TYPE);
}

function typeOf(object) {
  if (typeof object === 'object' && object !== null) {
    var $$typeof = object.$$typeof;

    switch ($$typeof) {
      case REACT_ELEMENT_TYPE:
        var type = object.type;

        switch (type) {
          case REACT_ASYNC_MODE_TYPE:
          case REACT_CONCURRENT_MODE_TYPE:
          case REACT_FRAGMENT_TYPE:
          case REACT_PROFILER_TYPE:
          case REACT_STRICT_MODE_TYPE:
          case REACT_SUSPENSE_TYPE:
            return type;

          default:
            var $$typeofType = type && type.$$typeof;

            switch ($$typeofType) {
              case REACT_CONTEXT_TYPE:
              case REACT_FORWARD_REF_TYPE:
              case REACT_LAZY_TYPE:
              case REACT_MEMO_TYPE:
              case REACT_PROVIDER_TYPE:
                return $$typeofType;

              default:
                return $$typeof;
            }

        }

      case REACT_PORTAL_TYPE:
        return $$typeof;
    }
  }

  return undefined;
} // AsyncMode is deprecated along with isAsyncMode

var AsyncMode = REACT_ASYNC_MODE_TYPE;
var ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;
var ContextConsumer = REACT_CONTEXT_TYPE;
var ContextProvider = REACT_PROVIDER_TYPE;
var Element = REACT_ELEMENT_TYPE;
var ForwardRef = REACT_FORWARD_REF_TYPE;
var Fragment = REACT_FRAGMENT_TYPE;
var Lazy = REACT_LAZY_TYPE;
var Memo = REACT_MEMO_TYPE;
var Portal = REACT_PORTAL_TYPE;
var Profiler = REACT_PROFILER_TYPE;
var StrictMode = REACT_STRICT_MODE_TYPE;
var Suspense = REACT_SUSPENSE_TYPE;
var hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated

function isAsyncMode(object) {
  {
    if (!hasWarnedAboutDeprecatedIsAsyncMode) {
      hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint

      console['warn']('The ReactIs.isAsyncMode() alias has been deprecated, ' + 'and will be removed in React 17+. Update your code to use ' + 'ReactIs.isConcurrentMode() instead. It has the exact same API.');
    }
  }

  return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;
}
function isConcurrentMode(object) {
  return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;
}
function isContextConsumer(object) {
  return typeOf(object) === REACT_CONTEXT_TYPE;
}
function isContextProvider(object) {
  return typeOf(object) === REACT_PROVIDER_TYPE;
}
function isElement(object) {
  return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;
}
function isForwardRef(object) {
  return typeOf(object) === REACT_FORWARD_REF_TYPE;
}
function isFragment(object) {
  return typeOf(object) === REACT_FRAGMENT_TYPE;
}
function isLazy(object) {
  return typeOf(object) === REACT_LAZY_TYPE;
}
function isMemo(object) {
  return typeOf(object) === REACT_MEMO_TYPE;
}
function isPortal(object) {
  return typeOf(object) === REACT_PORTAL_TYPE;
}
function isProfiler(object) {
  return typeOf(object) === REACT_PROFILER_TYPE;
}
function isStrictMode(object) {
  return typeOf(object) === REACT_STRICT_MODE_TYPE;
}
function isSuspense(object) {
  return typeOf(object) === REACT_SUSPENSE_TYPE;
}

exports.AsyncMode = AsyncMode;
exports.ConcurrentMode = ConcurrentMode;
exports.ContextConsumer = ContextConsumer;
exports.ContextProvider = ContextProvider;
exports.Element = Element;
exports.ForwardRef = ForwardRef;
exports.Fragment = Fragment;
exports.Lazy = Lazy;
exports.Memo = Memo;
exports.Portal = Portal;
exports.Profiler = Profiler;
exports.StrictMode = StrictMode;
exports.Suspense = Suspense;
exports.isAsyncMode = isAsyncMode;
exports.isConcurrentMode = isConcurrentMode;
exports.isContextConsumer = isContextConsumer;
exports.isContextProvider = isContextProvider;
exports.isElement = isElement;
exports.isForwardRef = isForwardRef;
exports.isFragment = isFragment;
exports.isLazy = isLazy;
exports.isMemo = isMemo;
exports.isPortal = isPortal;
exports.isProfiler = isProfiler;
exports.isStrictMode = isStrictMode;
exports.isSuspense = isSuspense;
exports.isValidElementType = isValidElementType;
exports.typeOf = typeOf;
  })();
}


/***/ }),

/***/ "../node_modules/react-is/index.js":
/*!*****************************************!*\
  !*** ../node_modules/react-is/index.js ***!
  \*****************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


if (false) {} else {
  module.exports = __webpack_require__(/*! ./cjs/react-is.development.js */ "../node_modules/react-is/cjs/react-is.development.js");
}


/***/ }),

/***/ "react":
/*!************************!*\
  !*** external "React" ***!
  \************************/
/***/ ((module) => {

"use strict";
module.exports = React;

/***/ }),

/***/ "react-dom":
/*!***************************!*\
  !*** external "ReactDOM" ***!
  \***************************/
/***/ ((module) => {

"use strict";
module.exports = ReactDOM;

/***/ }),

/***/ "@wordpress/i18n":
/*!**************************!*\
  !*** external "wp.i18n" ***!
  \**************************/
/***/ ((module) => {

"use strict";
module.exports = wp.i18n;

/***/ })

/******/ 	});
/************************************************************************/
/******/ 	// The module cache
/******/ 	var __webpack_module_cache__ = {};
/******/ 	
/******/ 	// The require function
/******/ 	function __webpack_require__(moduleId) {
/******/ 		// Check if module is in cache
/******/ 		var cachedModule = __webpack_module_cache__[moduleId];
/******/ 		if (cachedModule !== undefined) {
/******/ 			return cachedModule.exports;
/******/ 		}
/******/ 		// Create a new module (and put it into the cache)
/******/ 		var module = __webpack_module_cache__[moduleId] = {
/******/ 			// no module.id needed
/******/ 			// no module.loaded needed
/******/ 			exports: {}
/******/ 		};
/******/ 	
/******/ 		// Execute the module function
/******/ 		__webpack_modules__[moduleId](module, module.exports, __webpack_require__);
/******/ 	
/******/ 		// Return the exports of the module
/******/ 		return module.exports;
/******/ 	}
/******/ 	
/************************************************************************/
var __webpack_exports__ = {};
// This entry need to be wrapped in an IIFE because it need to be in strict mode.
(() => {
"use strict";
/*!***************************************************!*\
  !*** ../modules/admin-top-bar/assets/js/admin.js ***!
  \***************************************************/
/* provided dependency */ var ReactDOM = __webpack_require__(/*! react-dom */ "react-dom");


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

var _adminTopBar = _interopRequireDefault(__webpack_require__(/*! ./admin-top-bar */ "../modules/admin-top-bar/assets/js/admin-top-bar.js"));

var AppWrapper = elementorCommon.config.isDebug ? _react.default.StrictMode : _react.default.Fragment;
var adminTopBarElement = document.getElementById('e-admin-top-bar-root');
var elementorMenuItemIds = ['toplevel_page_elementor', 'menu-posts-elementor_library'];
var menuItemSelector = elementorMenuItemIds.map(function (itemId) {
  return "#".concat(itemId, " .wp-menu-open");
}).join(', ');
var isElementorPage = !!document.querySelector(menuItemSelector);

if (isElementorPage) {
  ReactDOM.render( /*#__PURE__*/_react.default.createElement(AppWrapper, null, /*#__PURE__*/_react.default.createElement(_adminTopBar.default, null)), adminTopBarElement);
}
})();

/******/ })()
;
//# sourceMappingURL=admin-top-bar.js.mapassets/js/admin-feedback.js000064400000073075151327220410011643 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
/******/ (() => { // webpackBootstrap
/******/ 	var __webpack_modules__ = ({

/***/ "../node_modules/core-js/modules/_a-function.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_a-function.js ***!
  \******************************************************/
/***/ ((module) => {

module.exports = function (it) {
  if (typeof it != 'function') throw TypeError(it + ' is not a function!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_add-to-unscopables.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/modules/_add-to-unscopables.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 22.1.3.31 Array.prototype[@@unscopables]
var UNSCOPABLES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('unscopables');
var ArrayProto = Array.prototype;
if (ArrayProto[UNSCOPABLES] == undefined) __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js")(ArrayProto, UNSCOPABLES, {});
module.exports = function (key) {
  ArrayProto[UNSCOPABLES][key] = true;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_an-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_an-object.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
module.exports = function (it) {
  if (!isObject(it)) throw TypeError(it + ' is not an object!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-methods.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_array-methods.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 0 -> Array#forEach
// 1 -> Array#map
// 2 -> Array#filter
// 3 -> Array#some
// 4 -> Array#every
// 5 -> Array#find
// 6 -> Array#findIndex
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/modules/_ctx.js");
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/modules/_iobject.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/modules/_to-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var asc = __webpack_require__(/*! ./_array-species-create */ "../node_modules/core-js/modules/_array-species-create.js");
module.exports = function (TYPE, $create) {
  var IS_MAP = TYPE == 1;
  var IS_FILTER = TYPE == 2;
  var IS_SOME = TYPE == 3;
  var IS_EVERY = TYPE == 4;
  var IS_FIND_INDEX = TYPE == 6;
  var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
  var create = $create || asc;
  return function ($this, callbackfn, that) {
    var O = toObject($this);
    var self = IObject(O);
    var f = ctx(callbackfn, that, 3);
    var length = toLength(self.length);
    var index = 0;
    var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;
    var val, res;
    for (;length > index; index++) if (NO_HOLES || index in self) {
      val = self[index];
      res = f(val, index, O);
      if (TYPE) {
        if (IS_MAP) result[index] = res;   // map
        else if (res) switch (TYPE) {
          case 3: return true;             // some
          case 5: return val;              // find
          case 6: return index;            // findIndex
          case 2: result.push(val);        // filter
        } else if (IS_EVERY) return false; // every
      }
    }
    return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-species-constructor.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/modules/_array-species-constructor.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var isArray = __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/modules/_is-array.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('species');

module.exports = function (original) {
  var C;
  if (isArray(original)) {
    C = original.constructor;
    // cross-realm fallback
    if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
    if (isObject(C)) {
      C = C[SPECIES];
      if (C === null) C = undefined;
    }
  } return C === undefined ? Array : C;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-species-create.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_array-species-create.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 9.4.2.3 ArraySpeciesCreate(originalArray, length)
var speciesConstructor = __webpack_require__(/*! ./_array-species-constructor */ "../node_modules/core-js/modules/_array-species-constructor.js");

module.exports = function (original, length) {
  return new (speciesConstructor(original))(length);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_cof.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_cof.js ***!
  \***********************************************/
/***/ ((module) => {

var toString = {}.toString;

module.exports = function (it) {
  return toString.call(it).slice(8, -1);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_core.js":
/*!************************************************!*\
  !*** ../node_modules/core-js/modules/_core.js ***!
  \************************************************/
/***/ ((module) => {

var core = module.exports = { version: '2.6.12' };
if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/modules/_ctx.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_ctx.js ***!
  \***********************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// optional / simple context binding
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/modules/_a-function.js");
module.exports = function (fn, that, length) {
  aFunction(fn);
  if (that === undefined) return fn;
  switch (length) {
    case 1: return function (a) {
      return fn.call(that, a);
    };
    case 2: return function (a, b) {
      return fn.call(that, a, b);
    };
    case 3: return function (a, b, c) {
      return fn.call(that, a, b, c);
    };
  }
  return function (/* ...args */) {
    return fn.apply(that, arguments);
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_defined.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_defined.js ***!
  \***************************************************/
/***/ ((module) => {

// 7.2.1 RequireObjectCoercible(argument)
module.exports = function (it) {
  if (it == undefined) throw TypeError("Can't call method on  " + it);
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_descriptors.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_descriptors.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Thank's IE8 for his funny defineProperty
module.exports = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () {
  return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/modules/_dom-create.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_dom-create.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js").document;
// typeof document.createElement is 'object' in old IE
var is = isObject(document) && isObject(document.createElement);
module.exports = function (it) {
  return is ? document.createElement(it) : {};
};


/***/ }),

/***/ "../node_modules/core-js/modules/_export.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_export.js ***!
  \**************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/modules/_ctx.js");
var PROTOTYPE = 'prototype';

var $export = function (type, name, source) {
  var IS_FORCED = type & $export.F;
  var IS_GLOBAL = type & $export.G;
  var IS_STATIC = type & $export.S;
  var IS_PROTO = type & $export.P;
  var IS_BIND = type & $export.B;
  var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE];
  var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
  var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {});
  var key, own, out, exp;
  if (IS_GLOBAL) source = name;
  for (key in source) {
    // contains in native
    own = !IS_FORCED && target && target[key] !== undefined;
    // export native or passed
    out = (own ? target : source)[key];
    // bind timers to global for call from export context
    exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
    // extend global
    if (target) redefine(target, key, out, type & $export.U);
    // export
    if (exports[key] != out) hide(exports, key, exp);
    if (IS_PROTO && expProto[key] != out) expProto[key] = out;
  }
};
global.core = core;
// type bitmap
$export.F = 1;   // forced
$export.G = 2;   // global
$export.S = 4;   // static
$export.P = 8;   // proto
$export.B = 16;  // bind
$export.W = 32;  // wrap
$export.U = 64;  // safe
$export.R = 128; // real proto method for `library`
module.exports = $export;


/***/ }),

/***/ "../node_modules/core-js/modules/_fails.js":
/*!*************************************************!*\
  !*** ../node_modules/core-js/modules/_fails.js ***!
  \*************************************************/
/***/ ((module) => {

module.exports = function (exec) {
  try {
    return !!exec();
  } catch (e) {
    return true;
  }
};


/***/ }),

/***/ "../node_modules/core-js/modules/_function-to-string.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/modules/_function-to-string.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/modules/_shared.js")('native-function-to-string', Function.toString);


/***/ }),

/***/ "../node_modules/core-js/modules/_global.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_global.js ***!
  \**************************************************/
/***/ ((module) => {

// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
var global = module.exports = typeof window != 'undefined' && window.Math == Math
  ? window : typeof self != 'undefined' && self.Math == Math ? self
  // eslint-disable-next-line no-new-func
  : Function('return this')();
if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/modules/_has.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_has.js ***!
  \***********************************************/
/***/ ((module) => {

var hasOwnProperty = {}.hasOwnProperty;
module.exports = function (it, key) {
  return hasOwnProperty.call(it, key);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_hide.js":
/*!************************************************!*\
  !*** ../node_modules/core-js/modules/_hide.js ***!
  \************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/modules/_property-desc.js");
module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? function (object, key, value) {
  return dP.f(object, key, createDesc(1, value));
} : function (object, key, value) {
  object[key] = value;
  return object;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_ie8-dom-define.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/_ie8-dom-define.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") && !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () {
  return Object.defineProperty(__webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/modules/_dom-create.js")('div'), 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/modules/_iobject.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_iobject.js ***!
  \***************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// fallback for non-array-like ES3 and non-enumerable old V8 strings
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
// eslint-disable-next-line no-prototype-builtins
module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
  return cof(it) == 'String' ? it.split('') : Object(it);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_is-array.js":
/*!****************************************************!*\
  !*** ../node_modules/core-js/modules/_is-array.js ***!
  \****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.2.2 IsArray(argument)
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
module.exports = Array.isArray || function isArray(arg) {
  return cof(arg) == 'Array';
};


/***/ }),

/***/ "../node_modules/core-js/modules/_is-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_is-object.js ***!
  \*****************************************************/
/***/ ((module) => {

module.exports = function (it) {
  return typeof it === 'object' ? it !== null : typeof it === 'function';
};


/***/ }),

/***/ "../node_modules/core-js/modules/_library.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_library.js ***!
  \***************************************************/
/***/ ((module) => {

module.exports = false;


/***/ }),

/***/ "../node_modules/core-js/modules/_object-dp.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_object-dp.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/modules/_ie8-dom-define.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/modules/_to-primitive.js");
var dP = Object.defineProperty;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? Object.defineProperty : function defineProperty(O, P, Attributes) {
  anObject(O);
  P = toPrimitive(P, true);
  anObject(Attributes);
  if (IE8_DOM_DEFINE) try {
    return dP(O, P, Attributes);
  } catch (e) { /* empty */ }
  if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
  if ('value' in Attributes) O[P] = Attributes.value;
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_property-desc.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_property-desc.js ***!
  \*********************************************************/
/***/ ((module) => {

module.exports = function (bitmap, value) {
  return {
    enumerable: !(bitmap & 1),
    configurable: !(bitmap & 2),
    writable: !(bitmap & 4),
    value: value
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_redefine.js":
/*!****************************************************!*\
  !*** ../node_modules/core-js/modules/_redefine.js ***!
  \****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var SRC = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/modules/_uid.js")('src');
var $toString = __webpack_require__(/*! ./_function-to-string */ "../node_modules/core-js/modules/_function-to-string.js");
var TO_STRING = 'toString';
var TPL = ('' + $toString).split(TO_STRING);

__webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js").inspectSource = function (it) {
  return $toString.call(it);
};

(module.exports = function (O, key, val, safe) {
  var isFunction = typeof val == 'function';
  if (isFunction) has(val, 'name') || hide(val, 'name', key);
  if (O[key] === val) return;
  if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));
  if (O === global) {
    O[key] = val;
  } else if (!safe) {
    delete O[key];
    hide(O, key, val);
  } else if (O[key]) {
    O[key] = val;
  } else {
    hide(O, key, val);
  }
// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
})(Function.prototype, TO_STRING, function toString() {
  return typeof this == 'function' && this[SRC] || $toString.call(this);
});


/***/ }),

/***/ "../node_modules/core-js/modules/_shared.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_shared.js ***!
  \**************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var SHARED = '__core-js_shared__';
var store = global[SHARED] || (global[SHARED] = {});

(module.exports = function (key, value) {
  return store[key] || (store[key] = value !== undefined ? value : {});
})('versions', []).push({
  version: core.version,
  mode: __webpack_require__(/*! ./_library */ "../node_modules/core-js/modules/_library.js") ? 'pure' : 'global',
  copyright: '© 2020 Denis Pushkarev (zloirock.ru)'
});


/***/ }),

/***/ "../node_modules/core-js/modules/_to-integer.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_to-integer.js ***!
  \******************************************************/
/***/ ((module) => {

// 7.1.4 ToInteger
var ceil = Math.ceil;
var floor = Math.floor;
module.exports = function (it) {
  return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-length.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_to-length.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.15 ToLength
var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var min = Math.min;
module.exports = function (it) {
  return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_to-object.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.13 ToObject(argument)
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
module.exports = function (it) {
  return Object(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-primitive.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/modules/_to-primitive.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.1 ToPrimitive(input [, PreferredType])
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
// instead of the ES6 spec version, we didn't implement @@toPrimitive case
// and the second argument - flag - preferred type is a string
module.exports = function (it, S) {
  if (!isObject(it)) return it;
  var fn, val;
  if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
  if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  throw TypeError("Can't convert object to primitive value");
};


/***/ }),

/***/ "../node_modules/core-js/modules/_uid.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_uid.js ***!
  \***********************************************/
/***/ ((module) => {

var id = 0;
var px = Math.random();
module.exports = function (key) {
  return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_wks.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_wks.js ***!
  \***********************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var store = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/modules/_shared.js")('wks');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/modules/_uid.js");
var Symbol = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js").Symbol;
var USE_SYMBOL = typeof Symbol == 'function';

var $exports = module.exports = function (name) {
  return store[name] || (store[name] =
    USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
};

$exports.store = store;


/***/ }),

/***/ "../node_modules/core-js/modules/es6.array.find.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.array.find.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 22.1.3.8 Array.prototype.find(predicate, thisArg = undefined)
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var $find = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/modules/_array-methods.js")(5);
var KEY = 'find';
var forced = true;
// Shouldn't skip holes
if (KEY in []) Array(1)[KEY](function () { forced = false; });
$export($export.P + $export.F * forced, 'Array', {
  find: function find(callbackfn /* , that = undefined */) {
    return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
  }
});
__webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/modules/_add-to-unscopables.js")(KEY);


/***/ }),

/***/ "@wordpress/i18n":
/*!**************************!*\
  !*** external "wp.i18n" ***!
  \**************************/
/***/ ((module) => {

"use strict";
module.exports = wp.i18n;

/***/ })

/******/ 	});
/************************************************************************/
/******/ 	// The module cache
/******/ 	var __webpack_module_cache__ = {};
/******/ 	
/******/ 	// The require function
/******/ 	function __webpack_require__(moduleId) {
/******/ 		// Check if module is in cache
/******/ 		var cachedModule = __webpack_module_cache__[moduleId];
/******/ 		if (cachedModule !== undefined) {
/******/ 			return cachedModule.exports;
/******/ 		}
/******/ 		// Create a new module (and put it into the cache)
/******/ 		var module = __webpack_module_cache__[moduleId] = {
/******/ 			// no module.id needed
/******/ 			// no module.loaded needed
/******/ 			exports: {}
/******/ 		};
/******/ 	
/******/ 		// Execute the module function
/******/ 		__webpack_modules__[moduleId](module, module.exports, __webpack_require__);
/******/ 	
/******/ 		// Return the exports of the module
/******/ 		return module.exports;
/******/ 	}
/******/ 	
/************************************************************************/
var __webpack_exports__ = {};
// This entry need to be wrapped in an IIFE because it need to be in strict mode.
(() => {
"use strict";
/*!************************************************!*\
  !*** ../assets/dev/js/admin/admin-feedback.js ***!
  \************************************************/
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

/* global jQuery */
(function ($) {
  'use strict';

  var ElementorAdminDialogApp = {
    cacheElements: function cacheElements() {
      this.cache = {
        $deactivateLink: $('#the-list').find('[data-slug="elementor"] span.deactivate a'),
        $dialogHeader: $('#elementor-deactivate-feedback-dialog-header'),
        $dialogForm: $('#elementor-deactivate-feedback-dialog-form')
      };
    },
    bindEvents: function bindEvents() {
      var self = this;
      self.cache.$deactivateLink.on('click', function (event) {
        event.preventDefault();
        self.getModal().show();
      });
    },
    deactivate: function deactivate() {
      location.href = this.cache.$deactivateLink.attr('href');
    },
    initModal: function initModal() {
      var self = this,
          modal;

      self.getModal = function () {
        if (!modal) {
          modal = elementorCommon.dialogsManager.createWidget('lightbox', {
            id: 'elementor-deactivate-feedback-modal',
            headerMessage: self.cache.$dialogHeader,
            message: self.cache.$dialogForm,
            hide: {
              onButtonClick: false
            },
            position: {
              my: 'center',
              at: 'center'
            },
            onReady: function onReady() {
              DialogsManager.getWidgetType('lightbox').prototype.onReady.apply(this, arguments);
              this.addButton({
                name: 'submit',
                text: __('Submit & Deactivate', 'elementor'),
                callback: self.sendFeedback.bind(self)
              });

              if (!elementorAdmin.config.feedback.is_tracker_opted_in) {
                this.addButton({
                  name: 'skip',
                  text: __('Skip & Deactivate', 'elementor'),
                  callback: function callback() {
                    self.deactivate();
                  }
                });
              }
            },
            onShow: function onShow() {
              var $dialogModal = $('#elementor-deactivate-feedback-modal'),
                  radioSelector = '.elementor-deactivate-feedback-dialog-input';
              $dialogModal.find(radioSelector).on('change', function () {
                $dialogModal.attr('data-feedback-selected', $(this).val());
              });
              $dialogModal.find(radioSelector + ':checked').trigger('change');
            }
          });
        }

        return modal;
      };
    },
    sendFeedback: function sendFeedback() {
      var self = this,
          formData = self.cache.$dialogForm.serialize();
      self.getModal().getElements('submit').text('').addClass('elementor-loading');
      $.post(ajaxurl, formData, this.deactivate.bind(this));
    },
    init: function init() {
      this.initModal();
      this.cacheElements();
      this.bindEvents();
    }
  };
  $(function () {
    ElementorAdminDialogApp.init();
  });
})(jQuery);
})();

/******/ })()
;
//# sourceMappingURL=admin-feedback.js.mapassets/js/text-path.15daa9710b97d5cf86b9.bundle.min.js000064400000005334151327220410015702 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(self.webpackChunkelementor=self.webpackChunkelementor||[]).push([[48],{6468:(t,e,s)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var n=s(6028);class TextPathHandler extends elementorModules.frontend.handlers.Base{getDefaultSettings(){return{selectors:{pathContainer:".e-text-path",svg:".e-text-path > svg"}}}getDefaultElements(){const{selectors:t}=this.getSettings(),e=this.$element[0];return{widgetWrapper:e,pathContainer:e.querySelector(t.pathContainer),svg:e.querySelector(t.svg),textPath:e.querySelector(t.textPath)}}onInit(){this.elements=this.getDefaultElements(),this.pathId=`e-path-${this.elements.widgetWrapper.dataset.id}`,this.textPathId=`e-text-path-${this.elements.widgetWrapper.dataset.id}`,this.elements.svg&&this.initTextPath()}setOffset(t){this.elements.textPath&&(this.isRTL()&&(t=100-parseInt(t)),this.elements.textPath.setAttribute("startOffset",t+"%"))}onElementChange(t){const{start_point:e,text:s}=this.getElementSettings();switch(t){case"start_point":this.setOffset(e.size);break;case"text":this.setText(s);break;case"text_path_direction":this.setOffset(e.size),this.setText(s)}}attachIdToPath(){(this.elements.svg.querySelector("[data-path-anchor]")||this.elements.svg.querySelector("path")).id=this.pathId}initTextPath(){const{start_point:t}=this.getElementSettings(),e=this.elements.pathContainer.dataset.text;this.attachIdToPath(),this.elements.svg.innerHTML+=`\n\t\t\t<text>\n\t\t\t\t<textPath id="${this.textPathId}" href="#${this.pathId}"></textPath>\n\t\t\t</text>\n\t\t`,this.elements.textPath=this.elements.svg.querySelector(`#${this.textPathId}`),this.setOffset(t.size),this.setText(e)}setText(t){var e;const{url:s,is_external:i,nofollow:a}=null===(e=this.getElementSettings())||void 0===e?void 0:e.link,h=i?"_blank":"",r=a?"nofollow":"";s&&(t=`<a href="${(0,n.escapeHTML)(s)}" rel="${r}" target="${h}">${(0,n.escapeHTML)(t)}</a>`),this.elements.textPath.innerHTML=t;const l=this.elements.svg.querySelector(`#${this.textPathId}-clone`);if(l&&l.remove(),this.shouldReverseText()){const e=this.elements.textPath.cloneNode();e.id+="-clone",e.classList.add("elementor-hidden"),e.textContent=t,this.elements.textPath.parentNode.appendChild(e),this.reverseToRTL()}}isRTL(){const{text_path_direction:t}=this.getElementSettings();let e=elementorFrontend.config.is_rtl;return t&&(e="rtl"===t),e}shouldReverseText(){return this.isRTL()&&-1===navigator.userAgent.indexOf("Firefox")}reverseToRTL(){let t=this.elements.textPath;t=t.querySelector("a")||t;t.textContent=t.textContent.replace(/([\u0591-\u07FF\u200F\u202B\u202E\uFB1D-\uFDFD\uFE70-\uFEFC\s$&+,:;=?@#|'<>.^*()%!-]+)/gi,(t=>t.split("").reverse().join(""))),t.setAttribute("aria-hidden",!0)}}e.default=TextPathHandler}}]);assets/js/beta-tester.min.js000064400000063051151327220410012023 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(()=>{var t={38401:(t,e,r)=>{t.exports=r(14710)},67394:(t,e,r)=>{t.exports=r(43153)},82055:(t,e,r)=>{t.exports=r(58535)},28274:(t,e,r)=>{t.exports=r(65135)},75499:(t,e,r)=>{t.exports=r(43094)},41281:(t,e,r)=>{t.exports=r(19103)},50093:(t,e,r)=>{t.exports=r(39871)},38852:t=>{t.exports=function _assertThisInitialized(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t},t.exports.default=t.exports,t.exports.__esModule=!0},11959:t=>{t.exports=function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")},t.exports.default=t.exports,t.exports.__esModule=!0},39041:(t,e,r)=>{var n=r(67394);function _defineProperties(t,e){for(var r=0;r<e.length;r++){var o=e[r];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),n(t,o.key,o)}}t.exports=function _createClass(t,e,r){return e&&_defineProperties(t.prototype,e),r&&_defineProperties(t,r),t},t.exports.default=t.exports,t.exports.__esModule=!0},68537:(t,e,r)=>{var n=r(75499),o=r(44263),i=r(898),u=r(59771);t.exports=function _createSuper(t){var e=i();return function _createSuperInternal(){var r,i=o(t);if(e){var s=o(this).constructor;r=n(i,arguments,s)}else r=i.apply(this,arguments);return u(this,r)}},t.exports.default=t.exports,t.exports.__esModule=!0},44263:(t,e,r)=>{var n=r(28274),o=r(82055);function _getPrototypeOf(e){return t.exports=_getPrototypeOf=n?o:function _getPrototypeOf(t){return t.__proto__||o(t)},t.exports.default=t.exports,t.exports.__esModule=!0,_getPrototypeOf(e)}t.exports=_getPrototypeOf,t.exports.default=t.exports,t.exports.__esModule=!0},77371:(t,e,r)=>{var n=r(38401),o=r(76870);t.exports=function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=n(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&o(t,e)},t.exports.default=t.exports,t.exports.__esModule=!0},67971:t=>{t.exports=function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}},t.exports.default=t.exports,t.exports.__esModule=!0},898:(t,e,r)=>{var n=r(75499);t.exports=function _isNativeReflectConstruct(){if("undefined"==typeof Reflect||!n)return!1;if(n.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(n(Boolean,[],(function(){}))),!0}catch(t){return!1}},t.exports.default=t.exports,t.exports.__esModule=!0},59771:(t,e,r)=>{var n=r(24596).default,o=r(38852);t.exports=function _possibleConstructorReturn(t,e){return!e||"object"!==n(e)&&"function"!=typeof e?o(t):e},t.exports.default=t.exports,t.exports.__esModule=!0},76870:(t,e,r)=>{var n=r(28274);function _setPrototypeOf(e,r){return t.exports=_setPrototypeOf=n||function _setPrototypeOf(t,e){return t.__proto__=e,t},t.exports.default=t.exports,t.exports.__esModule=!0,_setPrototypeOf(e,r)}t.exports=_setPrototypeOf,t.exports.default=t.exports,t.exports.__esModule=!0},24596:(t,e,r)=>{var n=r(41281),o=r(50093);function _typeof(e){return"function"==typeof n&&"symbol"==typeof o?(t.exports=_typeof=function _typeof(t){return typeof t},t.exports.default=t.exports,t.exports.__esModule=!0):(t.exports=_typeof=function _typeof(t){return t&&"function"==typeof n&&t.constructor===n&&t!==n.prototype?"symbol":typeof t},t.exports.default=t.exports,t.exports.__esModule=!0),_typeof(e)}t.exports=_typeof,t.exports.default=t.exports,t.exports.__esModule=!0},97267:(t,e,r)=>{"use strict";var n=r(18194).__,o=r(67394),i=r(67971);o(e,"__esModule",{value:!0}),e.default=void 0;var u=i(r(11959)),s=i(r(39041)),a=i(r(77371)),c=i(r(68537)),f=i(r(5721)),l=function(t){(0,a.default)(BetaTesterLayout,t);var e=(0,c.default)(BetaTesterLayout);function BetaTesterLayout(){return(0,u.default)(this,BetaTesterLayout),e.apply(this,arguments)}return(0,s.default)(BetaTesterLayout,[{key:"ui",value:function ui(){return{closeModal:".elementor-templates-modal__header__close",dontShowAgain:".elementor-beta-tester-do-not-show-again"}}},{key:"events",value:function events(){return{"click @ui.closeModal":this.onCloseModalClick,"click @ui.dontShowAgain":this.onDontShowAgainClick}}},{key:"getModalOptions",value:function getModalOptions(){return{id:"elementor-beta-tester-modal",hide:{onBackgroundClick:!1}}}},{key:"getLogoOptions",value:function getLogoOptions(){return{title:n("Sign Up","elementor")}}},{key:"initialize",value:function initialize(){elementorModules.common.views.modal.Layout.prototype.initialize.apply(this,arguments),this.showLogo(),this.showContentView();var t=n("Don't Show Again","elementor");this.modalHeader.currentView.ui.closeModal.after(jQuery("<div>",{class:"elementor-beta-tester-do-not-show-again"}).text(t))}},{key:"showContentView",value:function showContentView(){this.modalContent.show(new f.default)}},{key:"onDontShowAgainClick",value:function onDontShowAgainClick(){this.hideModal(),this.onCloseModalClick()}},{key:"onCloseModalClick",value:function onCloseModalClick(){elementorCommon.ajax.addRequest("introduction_viewed",{data:{introductionKey:elementorAdmin.config.beta_tester.beta_tester_signup}})}}]),BetaTesterLayout}(elementorModules.common.views.modal.Layout);e.default=l},5721:(t,e,r)=>{"use strict";var n=r(67394),o=r(67971);n(e,"__esModule",{value:!0}),e.default=void 0;var i=o(r(11959)),u=o(r(39041)),s=o(r(77371)),a=o(r(68537)),c=function(t){(0,s.default)(BetaTesterView,t);var e=(0,a.default)(BetaTesterView);function BetaTesterView(){var t;return(0,i.default)(this,BetaTesterView),(t=e.call(this)).id="elementor-beta-tester-dialog-content",t.template="#tmpl-elementor-beta-tester",t}return(0,u.default)(BetaTesterView,[{key:"ui",value:function ui(){return{betaForm:"#elementor-beta-tester-form",betaEmail:"#elementor-beta-tester-form__email",betaButton:"#elementor-beta-tester-form__submit"}}},{key:"events",value:function events(){return{"submit @ui.betaForm":"onBetaFormSubmit"}}},{key:"onBetaFormSubmit",value:function onBetaFormSubmit(t){t.preventDefault();var e=this.ui.betaEmail.val();this.ui.betaButton.addClass("elementor-button-state"),elementorCommon.ajax.addRequest("beta_tester_signup",{data:{betaTesterEmail:e}}),elementorBetaTester.layout.hideModal()}},{key:"onRender",value:function onRender(){}}]),BetaTesterView}(Marionette.ItemView);e.default=c},14710:(t,e,r)=>{r(30785);var n=r(47208).Object;t.exports=function create(t,e){return n.create(t,e)}},43153:(t,e,r)=>{r(40168);var n=r(47208).Object;t.exports=function defineProperty(t,e,r){return n.defineProperty(t,e,r)}},58535:(t,e,r)=>{r(4840),t.exports=r(47208).Object.getPrototypeOf},65135:(t,e,r)=>{r(13890),t.exports=r(47208).Object.setPrototypeOf},43094:(t,e,r)=>{r(11320),t.exports=r(47208).Reflect.construct},19103:(t,e,r)=>{r(54370),r(70285),r(87573),r(97224),t.exports=r(47208).Symbol},39871:(t,e,r)=>{r(99572),r(74114),t.exports=r(7273).f("iterator")},26610:t=>{t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},29697:t=>{t.exports=function(){}},30498:(t,e,r)=>{var n=r(39632);t.exports=function(t){if(!n(t))throw TypeError(t+" is not an object!");return t}},69191:(t,e,r)=>{var n=r(1504),o=r(37154),i=r(46723);t.exports=function(t){return function(e,r,u){var s,a=n(e),c=o(a.length),f=i(u,c);if(t&&r!=r){for(;c>f;)if((s=a[f++])!=s)return!0}else for(;c>f;f++)if((t||f in a)&&a[f]===r)return t||f||0;return!t&&-1}}},45515:(t,e,r)=>{"use strict";var n=r(26610),o=r(39632),i=r(19897),u=[].slice,s={},construct=function(t,e,r){if(!(e in s)){for(var n=[],o=0;o<e;o++)n[o]="a["+o+"]";s[e]=Function("F,a","return new F("+n.join(",")+")")}return s[e](t,r)};t.exports=Function.bind||function bind(t){var e=n(this),r=u.call(arguments,1),bound=function(){var n=r.concat(u.call(arguments));return this instanceof bound?construct(e,n.length,n):i(e,n,t)};return o(e.prototype)&&(bound.prototype=e.prototype),bound}},41352:t=>{var e={}.toString;t.exports=function(t){return e.call(t).slice(8,-1)}},47208:t=>{var e=t.exports={version:"2.6.12"};"number"==typeof __e&&(__e=e)},61725:(t,e,r)=>{var n=r(26610);t.exports=function(t,e,r){if(n(t),void 0===e)return t;switch(r){case 1:return function(r){return t.call(e,r)};case 2:return function(r,n){return t.call(e,r,n)};case 3:return function(r,n,o){return t.call(e,r,n,o)}}return function(){return t.apply(e,arguments)}}},18239:t=>{t.exports=function(t){if(null==t)throw TypeError("Can't call method on  "+t);return t}},75179:(t,e,r)=>{t.exports=!r(90472)((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},48765:(t,e,r)=>{var n=r(39632),o=r(43280).document,i=n(o)&&n(o.createElement);t.exports=function(t){return i?o.createElement(t):{}}},31986:t=>{t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},42266:(t,e,r)=>{var n=r(86425),o=r(97739),i=r(67410);t.exports=function(t){var e=n(t),r=o.f;if(r)for(var u,s=r(t),a=i.f,c=0;s.length>c;)a.call(t,u=s[c++])&&e.push(u);return e}},98310:(t,e,r)=>{var n=r(43280),o=r(47208),i=r(61725),u=r(62292),s=r(20657),$export=function(t,e,r){var a,c,f,l=t&$export.F,p=t&$export.G,y=t&$export.S,v=t&$export.P,d=t&$export.B,h=t&$export.W,_=p?o:o[e]||(o[e]={}),b=_.prototype,m=p?n:y?n[e]:(n[e]||{}).prototype;for(a in p&&(r=e),r)(c=!l&&m&&void 0!==m[a])&&s(_,a)||(f=c?m[a]:r[a],_[a]=p&&"function"!=typeof m[a]?r[a]:d&&c?i(f,n):h&&m[a]==f?function(t){var F=function(e,r,n){if(this instanceof t){switch(arguments.length){case 0:return new t;case 1:return new t(e);case 2:return new t(e,r)}return new t(e,r,n)}return t.apply(this,arguments)};return F.prototype=t.prototype,F}(f):v&&"function"==typeof f?i(Function.call,f):f,v&&((_.virtual||(_.virtual={}))[a]=f,t&$export.R&&b&&!b[a]&&u(b,a,f)))};$export.F=1,$export.G=2,$export.S=4,$export.P=8,$export.B=16,$export.W=32,$export.U=64,$export.R=128,t.exports=$export},90472:t=>{t.exports=function(t){try{return!!t()}catch(t){return!0}}},43280:t=>{var e=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=e)},20657:t=>{var e={}.hasOwnProperty;t.exports=function(t,r){return e.call(t,r)}},62292:(t,e,r)=>{var n=r(60510),o=r(48439);t.exports=r(75179)?function(t,e,r){return n.f(t,e,o(1,r))}:function(t,e,r){return t[e]=r,t}},92477:(t,e,r)=>{var n=r(43280).document;t.exports=n&&n.documentElement},64457:(t,e,r)=>{t.exports=!r(75179)&&!r(90472)((function(){return 7!=Object.defineProperty(r(48765)("div"),"a",{get:function(){return 7}}).a}))},19897:t=>{t.exports=function(t,e,r){var n=void 0===r;switch(e.length){case 0:return n?t():t.call(r);case 1:return n?t(e[0]):t.call(r,e[0]);case 2:return n?t(e[0],e[1]):t.call(r,e[0],e[1]);case 3:return n?t(e[0],e[1],e[2]):t.call(r,e[0],e[1],e[2]);case 4:return n?t(e[0],e[1],e[2],e[3]):t.call(r,e[0],e[1],e[2],e[3])}return t.apply(r,e)}},13115:(t,e,r)=>{var n=r(41352);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==n(t)?t.split(""):Object(t)}},7359:(t,e,r)=>{var n=r(41352);t.exports=Array.isArray||function isArray(t){return"Array"==n(t)}},39632:t=>{t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},19802:(t,e,r)=>{"use strict";var n=r(82488),o=r(48439),i=r(2413),u={};r(62292)(u,r(24300)("iterator"),(function(){return this})),t.exports=function(t,e,r){t.prototype=n(u,{next:o(1,r)}),i(t,e+" Iterator")}},6125:(t,e,r)=>{"use strict";var n=r(36794),o=r(98310),i=r(19312),u=r(62292),s=r(79105),a=r(19802),c=r(2413),f=r(999),l=r(24300)("iterator"),p=!([].keys&&"next"in[].keys()),y="keys",v="values",returnThis=function(){return this};t.exports=function(t,e,r,d,h,_,b){a(r,e,d);var m,x,g,getMethod=function(t){if(!p&&t in P)return P[t];switch(t){case y:return function keys(){return new r(this,t)};case v:return function values(){return new r(this,t)}}return function entries(){return new r(this,t)}},w=e+" Iterator",O=h==v,S=!1,P=t.prototype,M=P[l]||P["@@iterator"]||h&&P[h],k=M||getMethod(h),T=h?O?getMethod("entries"):k:void 0,j="Array"==e&&P.entries||M;if(j&&(g=f(j.call(new t)))!==Object.prototype&&g.next&&(c(g,w,!0),n||"function"==typeof g[l]||u(g,l,returnThis)),O&&M&&M.name!==v&&(S=!0,k=function values(){return M.call(this)}),n&&!b||!p&&!S&&P[l]||u(P,l,k),s[e]=k,s[w]=returnThis,h)if(m={values:O?k:getMethod(v),keys:_?k:getMethod(y),entries:T},b)for(x in m)x in P||i(P,x,m[x]);else o(o.P+o.F*(p||S),e,m);return m}},9329:t=>{t.exports=function(t,e){return{value:e,done:!!t}}},79105:t=>{t.exports={}},36794:t=>{t.exports=!0},6758:(t,e,r)=>{var n=r(54251)("meta"),o=r(39632),i=r(20657),u=r(60510).f,s=0,a=Object.isExtensible||function(){return!0},c=!r(90472)((function(){return a(Object.preventExtensions({}))})),setMeta=function(t){u(t,n,{value:{i:"O"+ ++s,w:{}}})},f=t.exports={KEY:n,NEED:!1,fastKey:function(t,e){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,n)){if(!a(t))return"F";if(!e)return"E";setMeta(t)}return t[n].i},getWeak:function(t,e){if(!i(t,n)){if(!a(t))return!0;if(!e)return!1;setMeta(t)}return t[n].w},onFreeze:function(t){return c&&f.NEED&&a(t)&&!i(t,n)&&setMeta(t),t}}},82488:(t,e,r)=>{var n=r(30498),o=r(36607),i=r(31986),u=r(18478)("IE_PROTO"),Empty=function(){},createDict=function(){var t,e=r(48765)("iframe"),n=i.length;for(e.style.display="none",r(92477).appendChild(e),e.src="javascript:",(t=e.contentWindow.document).open(),t.write("<script>document.F=Object<\/script>"),t.close(),createDict=t.F;n--;)delete createDict.prototype[i[n]];return createDict()};t.exports=Object.create||function create(t,e){var r;return null!==t?(Empty.prototype=n(t),r=new Empty,Empty.prototype=null,r[u]=t):r=createDict(),void 0===e?r:o(r,e)}},60510:(t,e,r)=>{var n=r(30498),o=r(64457),i=r(12737),u=Object.defineProperty;e.f=r(75179)?Object.defineProperty:function defineProperty(t,e,r){if(n(t),e=i(e,!0),n(r),o)try{return u(t,e,r)}catch(t){}if("get"in r||"set"in r)throw TypeError("Accessors not supported!");return"value"in r&&(t[e]=r.value),t}},36607:(t,e,r)=>{var n=r(60510),o=r(30498),i=r(86425);t.exports=r(75179)?Object.defineProperties:function defineProperties(t,e){o(t);for(var r,u=i(e),s=u.length,a=0;s>a;)n.f(t,r=u[a++],e[r]);return t}},83264:(t,e,r)=>{var n=r(67410),o=r(48439),i=r(1504),u=r(12737),s=r(20657),a=r(64457),c=Object.getOwnPropertyDescriptor;e.f=r(75179)?c:function getOwnPropertyDescriptor(t,e){if(t=i(t),e=u(e,!0),a)try{return c(t,e)}catch(t){}if(s(t,e))return o(!n.f.call(t,e),t[e])}},26084:(t,e,r)=>{var n=r(1504),o=r(8772).f,i={}.toString,u="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];t.exports.f=function getOwnPropertyNames(t){return u&&"[object Window]"==i.call(t)?function(t){try{return o(t)}catch(t){return u.slice()}}(t):o(n(t))}},8772:(t,e,r)=>{var n=r(65326),o=r(31986).concat("length","prototype");e.f=Object.getOwnPropertyNames||function getOwnPropertyNames(t){return n(t,o)}},97739:(t,e)=>{e.f=Object.getOwnPropertySymbols},999:(t,e,r)=>{var n=r(20657),o=r(60061),i=r(18478)("IE_PROTO"),u=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=o(t),n(t,i)?t[i]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},65326:(t,e,r)=>{var n=r(20657),o=r(1504),i=r(69191)(!1),u=r(18478)("IE_PROTO");t.exports=function(t,e){var r,s=o(t),a=0,c=[];for(r in s)r!=u&&n(s,r)&&c.push(r);for(;e.length>a;)n(s,r=e[a++])&&(~i(c,r)||c.push(r));return c}},86425:(t,e,r)=>{var n=r(65326),o=r(31986);t.exports=Object.keys||function keys(t){return n(t,o)}},67410:(t,e)=>{e.f={}.propertyIsEnumerable},57972:(t,e,r)=>{var n=r(98310),o=r(47208),i=r(90472);t.exports=function(t,e){var r=(o.Object||{})[t]||Object[t],u={};u[t]=e(r),n(n.S+n.F*i((function(){r(1)})),"Object",u)}},48439:t=>{t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},19312:(t,e,r)=>{t.exports=r(62292)},25574:(t,e,r)=>{var n=r(39632),o=r(30498),check=function(t,e){if(o(t),!n(e)&&null!==e)throw TypeError(e+": can't set as prototype!")};t.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(t,e,n){try{(n=r(61725)(Function.call,r(83264).f(Object.prototype,"__proto__").set,2))(t,[]),e=!(t instanceof Array)}catch(t){e=!0}return function setPrototypeOf(t,r){return check(t,r),e?t.__proto__=r:n(t,r),t}}({},!1):void 0),check}},2413:(t,e,r)=>{var n=r(60510).f,o=r(20657),i=r(24300)("toStringTag");t.exports=function(t,e,r){t&&!o(t=r?t:t.prototype,i)&&n(t,i,{configurable:!0,value:e})}},18478:(t,e,r)=>{var n=r(29990)("keys"),o=r(54251);t.exports=function(t){return n[t]||(n[t]=o(t))}},29990:(t,e,r)=>{var n=r(47208),o=r(43280),i="__core-js_shared__",u=o[i]||(o[i]={});(t.exports=function(t,e){return u[t]||(u[t]=void 0!==e?e:{})})("versions",[]).push({version:n.version,mode:r(36794)?"pure":"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})},78502:(t,e,r)=>{var n=r(58290),o=r(18239);t.exports=function(t){return function(e,r){var i,u,s=String(o(e)),a=n(r),c=s.length;return a<0||a>=c?t?"":void 0:(i=s.charCodeAt(a))<55296||i>56319||a+1===c||(u=s.charCodeAt(a+1))<56320||u>57343?t?s.charAt(a):i:t?s.slice(a,a+2):u-56320+(i-55296<<10)+65536}}},46723:(t,e,r)=>{var n=r(58290),o=Math.max,i=Math.min;t.exports=function(t,e){return(t=n(t))<0?o(t+e,0):i(t,e)}},58290:t=>{var e=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:e)(t)}},1504:(t,e,r)=>{var n=r(13115),o=r(18239);t.exports=function(t){return n(o(t))}},37154:(t,e,r)=>{var n=r(58290),o=Math.min;t.exports=function(t){return t>0?o(n(t),9007199254740991):0}},60061:(t,e,r)=>{var n=r(18239);t.exports=function(t){return Object(n(t))}},12737:(t,e,r)=>{var n=r(39632);t.exports=function(t,e){if(!n(t))return t;var r,o;if(e&&"function"==typeof(r=t.toString)&&!n(o=r.call(t)))return o;if("function"==typeof(r=t.valueOf)&&!n(o=r.call(t)))return o;if(!e&&"function"==typeof(r=t.toString)&&!n(o=r.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},54251:t=>{var e=0,r=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++e+r).toString(36))}},31164:(t,e,r)=>{var n=r(43280),o=r(47208),i=r(36794),u=r(7273),s=r(60510).f;t.exports=function(t){var e=o.Symbol||(o.Symbol=i?{}:n.Symbol||{});"_"==t.charAt(0)||t in e||s(e,t,{value:u.f(t)})}},7273:(t,e,r)=>{e.f=r(24300)},24300:(t,e,r)=>{var n=r(29990)("wks"),o=r(54251),i=r(43280).Symbol,u="function"==typeof i;(t.exports=function(t){return n[t]||(n[t]=u&&i[t]||(u?i:o)("Symbol."+t))}).store=n},84411:(t,e,r)=>{"use strict";var n=r(29697),o=r(9329),i=r(79105),u=r(1504);t.exports=r(6125)(Array,"Array",(function(t,e){this._t=u(t),this._i=0,this._k=e}),(function(){var t=this._t,e=this._k,r=this._i++;return!t||r>=t.length?(this._t=void 0,o(1)):o(0,"keys"==e?r:"values"==e?t[r]:[r,t[r]])}),"values"),i.Arguments=i.Array,n("keys"),n("values"),n("entries")},30785:(t,e,r)=>{var n=r(98310);n(n.S,"Object",{create:r(82488)})},40168:(t,e,r)=>{var n=r(98310);n(n.S+n.F*!r(75179),"Object",{defineProperty:r(60510).f})},4840:(t,e,r)=>{var n=r(60061),o=r(999);r(57972)("getPrototypeOf",(function(){return function getPrototypeOf(t){return o(n(t))}}))},13890:(t,e,r)=>{var n=r(98310);n(n.S,"Object",{setPrototypeOf:r(25574).set})},70285:()=>{},11320:(t,e,r)=>{var n=r(98310),o=r(82488),i=r(26610),u=r(30498),s=r(39632),a=r(90472),c=r(45515),f=(r(43280).Reflect||{}).construct,l=a((function(){function F(){}return!(f((function(){}),[],F)instanceof F)})),p=!a((function(){f((function(){}))}));n(n.S+n.F*(l||p),"Reflect",{construct:function construct(t,e){i(t),u(e);var r=arguments.length<3?t:i(arguments[2]);if(p&&!l)return f(t,e,r);if(t==r){switch(e.length){case 0:return new t;case 1:return new t(e[0]);case 2:return new t(e[0],e[1]);case 3:return new t(e[0],e[1],e[2]);case 4:return new t(e[0],e[1],e[2],e[3])}var n=[null];return n.push.apply(n,e),new(c.apply(t,n))}var a=r.prototype,y=o(s(a)?a:Object.prototype),v=Function.apply.call(t,y,e);return s(v)?v:y}})},99572:(t,e,r)=>{"use strict";var n=r(78502)(!0);r(6125)(String,"String",(function(t){this._t=String(t),this._i=0}),(function(){var t,e=this._t,r=this._i;return r>=e.length?{value:void 0,done:!0}:(t=n(e,r),this._i+=t.length,{value:t,done:!1})}))},54370:(t,e,r)=>{"use strict";var n=r(43280),o=r(20657),i=r(75179),u=r(98310),s=r(19312),a=r(6758).KEY,c=r(90472),f=r(29990),l=r(2413),p=r(54251),y=r(24300),v=r(7273),d=r(31164),h=r(42266),_=r(7359),b=r(30498),m=r(39632),x=r(60061),g=r(1504),w=r(12737),O=r(48439),S=r(82488),P=r(26084),M=r(83264),k=r(97739),T=r(60510),j=r(86425),L=M.f,E=T.f,C=P.f,B=n.Symbol,A=n.JSON,D=A&&A.stringify,R=y("_hidden"),I=y("toPrimitive"),N={}.propertyIsEnumerable,V=f("symbol-registry"),q=f("symbols"),G=f("op-symbols"),K=Object.prototype,z="function"==typeof B&&!!k.f,W=n.QObject,H=!W||!W.prototype||!W.prototype.findChild,J=i&&c((function(){return 7!=S(E({},"a",{get:function(){return E(this,"a",{value:7}).a}})).a}))?function(t,e,r){var n=L(K,e);n&&delete K[e],E(t,e,r),n&&t!==K&&E(K,e,n)}:E,wrap=function(t){var e=q[t]=S(B.prototype);return e._k=t,e},Q=z&&"symbol"==typeof B.iterator?function(t){return"symbol"==typeof t}:function(t){return t instanceof B},U=function defineProperty(t,e,r){return t===K&&U(G,e,r),b(t),e=w(e,!0),b(r),o(q,e)?(r.enumerable?(o(t,R)&&t[R][e]&&(t[R][e]=!1),r=S(r,{enumerable:O(0,!1)})):(o(t,R)||E(t,R,O(1,{})),t[R][e]=!0),J(t,e,r)):E(t,e,r)},Y=function defineProperties(t,e){b(t);for(var r,n=h(e=g(e)),o=0,i=n.length;i>o;)U(t,r=n[o++],e[r]);return t},$=function propertyIsEnumerable(t){var e=N.call(this,t=w(t,!0));return!(this===K&&o(q,t)&&!o(G,t))&&(!(e||!o(this,t)||!o(q,t)||o(this,R)&&this[R][t])||e)},X=function getOwnPropertyDescriptor(t,e){if(t=g(t),e=w(e,!0),t!==K||!o(q,e)||o(G,e)){var r=L(t,e);return!r||!o(q,e)||o(t,R)&&t[R][e]||(r.enumerable=!0),r}},Z=function getOwnPropertyNames(t){for(var e,r=C(g(t)),n=[],i=0;r.length>i;)o(q,e=r[i++])||e==R||e==a||n.push(e);return n},tt=function getOwnPropertySymbols(t){for(var e,r=t===K,n=C(r?G:g(t)),i=[],u=0;n.length>u;)!o(q,e=n[u++])||r&&!o(K,e)||i.push(q[e]);return i};z||(s((B=function Symbol(){if(this instanceof B)throw TypeError("Symbol is not a constructor!");var t=p(arguments.length>0?arguments[0]:void 0),$set=function(e){this===K&&$set.call(G,e),o(this,R)&&o(this[R],t)&&(this[R][t]=!1),J(this,t,O(1,e))};return i&&H&&J(K,t,{configurable:!0,set:$set}),wrap(t)}).prototype,"toString",(function toString(){return this._k})),M.f=X,T.f=U,r(8772).f=P.f=Z,r(67410).f=$,k.f=tt,i&&!r(36794)&&s(K,"propertyIsEnumerable",$,!0),v.f=function(t){return wrap(y(t))}),u(u.G+u.W+u.F*!z,{Symbol:B});for(var et="hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),rt=0;et.length>rt;)y(et[rt++]);for(var nt=j(y.store),ot=0;nt.length>ot;)d(nt[ot++]);u(u.S+u.F*!z,"Symbol",{for:function(t){return o(V,t+="")?V[t]:V[t]=B(t)},keyFor:function keyFor(t){if(!Q(t))throw TypeError(t+" is not a symbol!");for(var e in V)if(V[e]===t)return e},useSetter:function(){H=!0},useSimple:function(){H=!1}}),u(u.S+u.F*!z,"Object",{create:function create(t,e){return void 0===e?S(t):Y(S(t),e)},defineProperty:U,defineProperties:Y,getOwnPropertyDescriptor:X,getOwnPropertyNames:Z,getOwnPropertySymbols:tt});var it=c((function(){k.f(1)}));u(u.S+u.F*it,"Object",{getOwnPropertySymbols:function getOwnPropertySymbols(t){return k.f(x(t))}}),A&&u(u.S+u.F*(!z||c((function(){var t=B();return"[null]"!=D([t])||"{}"!=D({a:t})||"{}"!=D(Object(t))}))),"JSON",{stringify:function stringify(t){for(var e,r,n=[t],o=1;arguments.length>o;)n.push(arguments[o++]);if(r=e=n[1],(m(e)||void 0!==t)&&!Q(t))return _(e)||(e=function(t,e){if("function"==typeof r&&(e=r.call(this,t,e)),!Q(e))return e}),n[1]=e,D.apply(A,n)}}),B.prototype[I]||r(62292)(B.prototype,I,B.prototype.valueOf),l(B,"Symbol"),l(Math,"Math",!0),l(n.JSON,"JSON",!0)},87573:(t,e,r)=>{r(31164)("asyncIterator")},97224:(t,e,r)=>{r(31164)("observable")},74114:(t,e,r)=>{r(84411);for(var n=r(43280),o=r(62292),i=r(79105),u=r(24300)("toStringTag"),s="CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList".split(","),a=0;a<s.length;a++){var c=s[a],f=n[c],l=f&&f.prototype;l&&!l[u]&&o(l,u,c),i[c]=i.Array}},18194:t=>{"use strict";t.exports=wp.i18n}},e={};function __webpack_require__(r){var n=e[r];if(void 0!==n)return n.exports;var o=e[r]={exports:{}};return t[r](o,o.exports,__webpack_require__),o.exports}(()=>{"use strict";var t=__webpack_require__(67971),e=t(__webpack_require__(11959)),r=t(__webpack_require__(39041)),n=t(__webpack_require__(77371)),o=t(__webpack_require__(68537)),i=t(__webpack_require__(97267)),u=function(t){(0,n.default)(BetaTesterModule,t);var u=(0,o.default)(BetaTesterModule);function BetaTesterModule(){return(0,e.default)(this,BetaTesterModule),u.apply(this,arguments)}return(0,r.default)(BetaTesterModule,[{key:"onInit",value:function onInit(){elementorModules.ViewModule.prototype.onInit.apply(this,arguments),this.showLayout(!1)}},{key:"showLayout",value:function showLayout(){var t=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];(t||elementorAdmin.config.beta_tester.option_enabled&&!elementorAdmin.config.beta_tester.signup_dismissed&&"#tab-fontawesome4_migration"!==location.hash)&&(this.layout=new i.default,this.layout.showModal())}},{key:"getDefaultSettings",value:function getDefaultSettings(){return{selectors:{betaTesterFirstToKnow:"#beta-tester-first-to-know"}}}},{key:"getDefaultElements",value:function getDefaultElements(){var t={},e=this.getSettings("selectors");return t.$betaTesterFirstToKnow=jQuery(e.betaTesterFirstToKnow),t}},{key:"bindEvents",value:function bindEvents(){this.elements.$betaTesterFirstToKnow.on("click",this.showLayout.bind(this))}}]),BetaTesterModule}(elementorModules.ViewModule);jQuery((function(){window.elementorBetaTester=new u}))})()})();assets/js/admin.min.js000064400000173200151327220410010672 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(()=>{var e={75453:(e,t,n)=>{e.exports=n(7421)},59396:(e,t,n)=>{e.exports=n(70157)},38401:(e,t,n)=>{e.exports=n(14710)},67394:(e,t,n)=>{e.exports=n(43153)},38923:(e,t,n)=>{e.exports=n(8531)},23587:(e,t,n)=>{e.exports=n(32622)},82055:(e,t,n)=>{e.exports=n(58535)},28274:(e,t,n)=>{e.exports=n(65135)},75499:(e,t,n)=>{e.exports=n(43094)},78282:(e,t,n)=>{e.exports=n(17641)},41281:(e,t,n)=>{e.exports=n(19103)},50093:(e,t,n)=>{e.exports=n(39871)},72292:e=>{e.exports=function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r},e.exports.default=e.exports,e.exports.__esModule=!0},86870:(e,t,n)=>{var r=n(59396);e.exports=function _arrayWithHoles(e){if(r(e))return e},e.exports.default=e.exports,e.exports.__esModule=!0},38852:e=>{e.exports=function _assertThisInitialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e},e.exports.default=e.exports,e.exports.__esModule=!0},11959:e=>{e.exports=function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},e.exports.default=e.exports,e.exports.__esModule=!0},39041:(e,t,n)=>{var r=n(67394);function _defineProperties(e,t){for(var n=0;n<t.length;n++){var o=t[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),r(e,o.key,o)}}e.exports=function _createClass(e,t,n){return t&&_defineProperties(e.prototype,t),n&&_defineProperties(e,n),e},e.exports.default=e.exports,e.exports.__esModule=!0},68537:(e,t,n)=>{var r=n(75499),o=n(44263),i=n(898),a=n(59771);e.exports=function _createSuper(e){var t=i();return function _createSuperInternal(){var n,i=o(e);if(t){var s=o(this).constructor;n=r(i,arguments,s)}else n=i.apply(this,arguments);return a(this,n)}},e.exports.default=e.exports,e.exports.__esModule=!0},76700:(e,t,n)=>{var r=n(78282),o=n(23587),i=n(49445);function _get(t,n,a){return"undefined"!=typeof Reflect&&r?(e.exports=_get=r,e.exports.default=e.exports,e.exports.__esModule=!0):(e.exports=_get=function _get(e,t,n){var r=i(e,t);if(r){var a=o(r,t);return a.get?a.get.call(n):a.value}},e.exports.default=e.exports,e.exports.__esModule=!0),_get(t,n,a||t)}e.exports=_get,e.exports.default=e.exports,e.exports.__esModule=!0},44263:(e,t,n)=>{var r=n(28274),o=n(82055);function _getPrototypeOf(t){return e.exports=_getPrototypeOf=r?o:function _getPrototypeOf(e){return e.__proto__||o(e)},e.exports.default=e.exports,e.exports.__esModule=!0,_getPrototypeOf(t)}e.exports=_getPrototypeOf,e.exports.default=e.exports,e.exports.__esModule=!0},77371:(e,t,n)=>{var r=n(38401),o=n(76870);e.exports=function _inherits(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=r(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&o(e,t)},e.exports.default=e.exports,e.exports.__esModule=!0},67971:e=>{e.exports=function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}},e.exports.default=e.exports,e.exports.__esModule=!0},898:(e,t,n)=>{var r=n(75499);e.exports=function _isNativeReflectConstruct(){if("undefined"==typeof Reflect||!r)return!1;if(r.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(r(Boolean,[],(function(){}))),!0}catch(e){return!1}},e.exports.default=e.exports,e.exports.__esModule=!0},79968:(e,t,n)=>{var r=n(41281),o=n(50093);e.exports=function _iterableToArrayLimit(e,t){var n=null==e?null:void 0!==r&&e[o]||e["@@iterator"];if(null!=n){var i,a,s=[],l=!0,u=!1;try{for(n=n.call(e);!(l=(i=n.next()).done)&&(s.push(i.value),!t||s.length!==t);l=!0);}catch(e){u=!0,a=e}finally{try{l||null==n.return||n.return()}finally{if(u)throw a}}return s}},e.exports.default=e.exports,e.exports.__esModule=!0},39198:e=>{e.exports=function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")},e.exports.default=e.exports,e.exports.__esModule=!0},59771:(e,t,n)=>{var r=n(24596).default,o=n(38852);e.exports=function _possibleConstructorReturn(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?o(e):t},e.exports.default=e.exports,e.exports.__esModule=!0},76870:(e,t,n)=>{var r=n(28274);function _setPrototypeOf(t,n){return e.exports=_setPrototypeOf=r||function _setPrototypeOf(e,t){return e.__proto__=t,e},e.exports.default=e.exports,e.exports.__esModule=!0,_setPrototypeOf(t,n)}e.exports=_setPrototypeOf,e.exports.default=e.exports,e.exports.__esModule=!0},47834:(e,t,n)=>{var r=n(86870),o=n(79968),i=n(24594),a=n(39198);e.exports=function _slicedToArray(e,t){return r(e)||o(e,t)||i(e,t)||a()},e.exports.default=e.exports,e.exports.__esModule=!0},49445:(e,t,n)=>{var r=n(44263);e.exports=function _superPropBase(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=r(e)););return e},e.exports.default=e.exports,e.exports.__esModule=!0},24596:(e,t,n)=>{var r=n(41281),o=n(50093);function _typeof(t){return"function"==typeof r&&"symbol"==typeof o?(e.exports=_typeof=function _typeof(e){return typeof e},e.exports.default=e.exports,e.exports.__esModule=!0):(e.exports=_typeof=function _typeof(e){return e&&"function"==typeof r&&e.constructor===r&&e!==r.prototype?"symbol":typeof e},e.exports.default=e.exports,e.exports.__esModule=!0),_typeof(t)}e.exports=_typeof,e.exports.default=e.exports,e.exports.__esModule=!0},24594:(e,t,n)=>{var r=n(75453),o=n(72292);e.exports=function _unsupportedIterableToArray(e,t){if(e){if("string"==typeof e)return o(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?r(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?o(e,t):void 0}},e.exports.default=e.exports,e.exports.__esModule=!0},78525:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=void 0,n(3777),n(38081);var i=o(n(11959)),a=o(n(39041)),s=o(n(76700)),l=o(n(44263)),u=o(n(77371)),c=o(n(68537)),f=function(e){(0,u.default)(AdminMenuHandler,e);var t=(0,c.default)(AdminMenuHandler);function AdminMenuHandler(){return(0,i.default)(this,AdminMenuHandler),t.apply(this,arguments)}return(0,a.default)(AdminMenuHandler,[{key:"getDefaultElements",value:function getDefaultElements(){var e=this.getSettings();return{$adminPageMenuLink:jQuery('a[href="'.concat(e.path,'"]'))}}},{key:"highlightSubMenuItem",value:function highlightSubMenuItem(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=e||this.elements.$adminPageMenuLink;t.addClass("current"),t.parent().addClass("current")}},{key:"highlightTopLevelMenuItem",value:function highlightTopLevelMenuItem(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n="wp-has-current-submenu wp-menu-open current";e.parent().addClass(n).removeClass("wp-not-current-submenu"),t&&t.removeClass(n)}},{key:"onInit",value:function onInit(){(0,s.default)((0,l.default)(AdminMenuHandler.prototype),"onInit",this).call(this);var e=this.getSettings();window.location.href.includes(e.path)&&this.highlightSubMenuItem()}}]),AdminMenuHandler}(elementorModules.ViewModule);t.default=f},15511:(e,t,n)=>{"use strict";n(71954),n(64434),e.exports=elementorModules.ViewModule.extend({getDefaultSettings:function getDefaultSettings(){return{selectors:{modeSelect:".elementor_maintenance_mode_mode select",maintenanceModeTable:"#tab-maintenance_mode table",maintenanceModeDescriptions:".elementor-maintenance-mode-description",excludeModeSelect:".elementor_maintenance_mode_exclude_mode select",excludeRolesArea:".elementor_maintenance_mode_exclude_roles",templateSelect:".elementor_maintenance_mode_template_id select",editTemplateButton:".elementor-edit-template",maintenanceModeError:".elementor-maintenance-mode-error"},classes:{isEnabled:"elementor-maintenance-mode-is-enabled"}}},getDefaultElements:function getDefaultElements(){var e={},t=this.getSettings("selectors");return e.$modeSelect=jQuery(t.modeSelect),e.$maintenanceModeTable=e.$modeSelect.parents(t.maintenanceModeTable),e.$excludeModeSelect=e.$maintenanceModeTable.find(t.excludeModeSelect),e.$excludeRolesArea=e.$maintenanceModeTable.find(t.excludeRolesArea),e.$templateSelect=e.$maintenanceModeTable.find(t.templateSelect),e.$editTemplateButton=e.$maintenanceModeTable.find(t.editTemplateButton),e.$maintenanceModeDescriptions=e.$maintenanceModeTable.find(t.maintenanceModeDescriptions),e.$maintenanceModeError=e.$maintenanceModeTable.find(t.maintenanceModeError),e},handleModeSelectChange:function handleModeSelectChange(){var e=this.getSettings(),t=this.elements;t.$maintenanceModeTable.toggleClass(e.classes.isEnabled,!!t.$modeSelect.val()),t.$maintenanceModeDescriptions.hide(),t.$maintenanceModeDescriptions.filter('[data-value="'+t.$modeSelect.val()+'"]').show()},handleExcludeModeSelectChange:function handleExcludeModeSelectChange(){var e=this.elements;e.$excludeRolesArea.toggle("custom"===e.$excludeModeSelect.val())},handleTemplateSelectChange:function handleTemplateSelectChange(){var e=this.elements,t=e.$templateSelect.val();if(!t)return e.$editTemplateButton.hide(),void e.$maintenanceModeError.show();var n=elementorAdmin.config.home_url+"?p="+t+"&elementor";e.$editTemplateButton.prop("href",n).show(),e.$maintenanceModeError.hide()},bindEvents:function bindEvents(){var e=this.elements;e.$modeSelect.on("change",this.handleModeSelectChange.bind(this)),e.$excludeModeSelect.on("change",this.handleExcludeModeSelectChange.bind(this)),e.$templateSelect.on("change",this.handleTemplateSelectChange.bind(this))},onAdminInit:function onAdminInit(){this.handleModeSelectChange(),this.handleExcludeModeSelectChange(),this.handleTemplateSelectChange()},onInit:function onInit(){elementorModules.ViewModule.prototype.onInit.apply(this,arguments),elementorCommon.elements.$window.on("elementor/admin/init",this.onAdminInit)}})},73308:(e,t,n)=>{"use strict";n(67394)(t,"__esModule",{value:!0}),t.default=void 0,n(76139),n(44321);var r=function matchUserAgent(e){return o.indexOf(e)>=0},o=navigator.userAgent,i=!!window.opr&&!!opr.addons||!!window.opera||r(" OPR/"),a=r("Firefox"),s=/^((?!chrome|android).)*safari/i.test(o)||/constructor/i.test(window.HTMLElement)||"[object SafariRemoteNotification]"===(!window.safari||"undefined"!=typeof safari&&safari.pushNotification).toString(),l=/Trident|MSIE/.test(o)&&!!document.documentMode,u=!l&&!!window.StyleMedia||r("Edg"),c=!!window.chrome&&r("Chrome")&&!(u||i),f=r("Chrome")&&!!window.CSS,p={appleWebkit:r("AppleWebKit")&&!f,blink:f,chrome:c,edge:u,firefox:a,ie:l,mac:r("Macintosh"),opera:i,safari:s,webkit:r("AppleWebKit")};t.default=p},72104:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=void 0;var i=o(n(11959)),a=o(n(39041)),s=o(n(76700)),l=o(n(44263)),u=o(n(77371)),c=o(n(68537)),f=function(e){(0,u.default)(ExperimentsModule,e);var t=(0,c.default)(ExperimentsModule);function ExperimentsModule(){return(0,i.default)(this,ExperimentsModule),t.apply(this,arguments)}return(0,a.default)(ExperimentsModule,[{key:"getDefaultSettings",value:function getDefaultSettings(){return{selectors:{experimentIndicators:".e-experiment__title__indicator"}}}},{key:"getDefaultElements",value:function getDefaultElements(){return{$experimentIndicators:jQuery(this.getSettings("selectors.experimentIndicators"))}}},{key:"addTipsy",value:function addTipsy(e){e.tipsy({gravity:"s",offset:8,title:function title(){return this.getAttribute("data-tooltip")}})}},{key:"addIndicatorsTooltips",value:function addIndicatorsTooltips(){var e=this;this.elements.$experimentIndicators.each((function(t,n){return e.addTipsy(jQuery(n))}))}},{key:"onInit",value:function onInit(){var e=this;(0,s.default)((0,l.default)(ExperimentsModule.prototype),"onInit",this).call(this),this.elements.$experimentIndicators.length&&import("".concat(elementorCommon.config.urls.assets,"lib/tipsy/tipsy.min.js?ver=1.0.0")).then((function(){return e.addIndicatorsTooltips()}))}}]),ExperimentsModule}(elementorModules.ViewModule);t.default=f},70602:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=void 0,n(3777),n(38081);var i=o(n(11959)),a=o(n(39041)),s=o(n(76700)),l=o(n(44263)),u=o(n(77371)),c=o(n(68537)),f=function(e){(0,u.default)(LandingPagesHandler,e);var t=(0,c.default)(LandingPagesHandler);function LandingPagesHandler(){return(0,i.default)(this,LandingPagesHandler),t.apply(this,arguments)}return(0,a.default)(LandingPagesHandler,[{key:"getDefaultSettings",value:function getDefaultSettings(){var e="e-landing-page",t={landingPagesTablePage:'a[href="edit.php?post_type='+e+'"]',landingPagesAddNewPage:'a[href="edit.php?post_type=elementor_library&page='+e+'"]'};return{selectors:{addButton:".page-title-action:first",pagesMenuItemAndLink:"#menu-pages, #menu-pages > a",landingPagesMenuItem:"".concat(t.landingPagesTablePage,", ").concat(t.landingPagesAddNewPage),templatesMenuItem:".menu-icon-elementor_library"}}}},{key:"getDefaultElements",value:function getDefaultElements(){var e=this.getSettings("selectors"),t=(0,s.default)((0,l.default)(LandingPagesHandler.prototype),"getDefaultElements",this).call(this);return t.$landingPagesMenuItem=jQuery(e.landingPagesMenuItem),t.$templatesMenuItem=jQuery(e.templatesMenuItem),t.$pagesMenuItemAndLink=jQuery(e.pagesMenuItemAndLink),t}},{key:"onInit",value:function onInit(){(0,s.default)((0,l.default)(LandingPagesHandler.prototype),"onInit",this).call(this);var e=this.getSettings(),t=!!window.location.href.includes(e.paths.landingPagesTablePage),n=!!window.location.href.includes(e.paths.landingPagesTrashPage),r=!!window.location.href.includes(e.paths.landingPagesAddNewPage);(t||n||r||e.isLandingPageAdminEdit)&&(this.highlightTopLevelMenuItem(this.elements.$templatesMenuItem,this.elements.$pagesMenuItemAndLink),this.highlightSubMenuItem(this.elements.$landingPagesMenuItem),jQuery(e.selectors.addButton).attr("href",elementorAdminConfig.urls.addNewLandingPageUrl))}}]),LandingPagesHandler}(o(n(78525)).default);t.default=f},71466:(e,t,n)=>{"use strict";var r=n(67394),o=n(67971);r(t,"__esModule",{value:!0}),t.default=void 0;var i=o(n(11959)),a=o(n(39041)),s=o(n(77371)),l=o(n(68537)),u=o(n(70602)),c=function(e){(0,s.default)(_default,e);var t=(0,l.default)(_default);function _default(){var e;return(0,i.default)(this,_default),e=t.call(this),elementorCommon.elements.$window.on("elementor/admin/init",(function(){e.runHandler()})),e}return(0,a.default)(_default,[{key:"runHandler",value:function runHandler(){var e,t,n="e-landing-page",r={landingPagesTablePage:"edit.php?post_type="+n,landingPagesAddNewPage:"edit.php?post_type=elementor_library&page="+n,landingPagesTrashPage:"edit.php?post_status=trash&post_type="+n},o={path:null!==(e=elementorAdmin.config.landingPages)&&void 0!==e&&e.landingPagesHasPages?r.landingPagesTablePage:r.landingPagesAddNewPage,isLandingPageAdminEdit:null===(t=elementorAdmin.config.landingPages)||void 0===t?void 0:t.isLandingPageAdminEdit,paths:r};new u.default(o)}}]),_default}(elementorModules.Module);t.default=c},7421:(e,t,n)=>{n(99572),n(37627),e.exports=n(47208).Array.from},70157:(e,t,n)=>{n(42580),e.exports=n(47208).Array.isArray},14710:(e,t,n)=>{n(30785);var r=n(47208).Object;e.exports=function create(e,t){return r.create(e,t)}},43153:(e,t,n)=>{n(40168);var r=n(47208).Object;e.exports=function defineProperty(e,t,n){return r.defineProperty(e,t,n)}},8531:(e,t,n)=>{n(95260),e.exports=n(47208).Object.entries},32622:(e,t,n)=>{n(18576);var r=n(47208).Object;e.exports=function getOwnPropertyDescriptor(e,t){return r.getOwnPropertyDescriptor(e,t)}},58535:(e,t,n)=>{n(4840),e.exports=n(47208).Object.getPrototypeOf},65135:(e,t,n)=>{n(13890),e.exports=n(47208).Object.setPrototypeOf},43094:(e,t,n)=>{n(11320),e.exports=n(47208).Reflect.construct},17641:(e,t,n)=>{n(36600),e.exports=n(47208).Reflect.get},19103:(e,t,n)=>{n(54370),n(70285),n(87573),n(97224),e.exports=n(47208).Symbol},39871:(e,t,n)=>{n(99572),n(74114),e.exports=n(7273).f("iterator")},26610:e=>{e.exports=function(e){if("function"!=typeof e)throw TypeError(e+" is not a function!");return e}},29697:e=>{e.exports=function(){}},30498:(e,t,n)=>{var r=n(39632);e.exports=function(e){if(!r(e))throw TypeError(e+" is not an object!");return e}},69191:(e,t,n)=>{var r=n(1504),o=n(37154),i=n(46723);e.exports=function(e){return function(t,n,a){var s,l=r(t),u=o(l.length),c=i(a,u);if(e&&n!=n){for(;u>c;)if((s=l[c++])!=s)return!0}else for(;u>c;c++)if((e||c in l)&&l[c]===n)return e||c||0;return!e&&-1}}},45515:(e,t,n)=>{"use strict";var r=n(26610),o=n(39632),i=n(19897),a=[].slice,s={},construct=function(e,t,n){if(!(t in s)){for(var r=[],o=0;o<t;o++)r[o]="a["+o+"]";s[t]=Function("F,a","return new F("+r.join(",")+")")}return s[t](e,n)};e.exports=Function.bind||function bind(e){var t=r(this),n=a.call(arguments,1),bound=function(){var r=n.concat(a.call(arguments));return this instanceof bound?construct(t,r.length,r):i(t,r,e)};return o(t.prototype)&&(bound.prototype=t.prototype),bound}},8312:(e,t,n)=>{var r=n(41352),o=n(24300)("toStringTag"),i="Arguments"==r(function(){return arguments}());e.exports=function(e){var t,n,a;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(n=function(e,t){try{return e[t]}catch(e){}}(t=Object(e),o))?n:i?r(t):"Object"==(a=r(t))&&"function"==typeof t.callee?"Arguments":a}},41352:e=>{var t={}.toString;e.exports=function(e){return t.call(e).slice(8,-1)}},47208:e=>{var t=e.exports={version:"2.6.12"};"number"==typeof __e&&(__e=t)},87352:(e,t,n)=>{"use strict";var r=n(60510),o=n(48439);e.exports=function(e,t,n){t in e?r.f(e,t,o(0,n)):e[t]=n}},61725:(e,t,n)=>{var r=n(26610);e.exports=function(e,t,n){if(r(e),void 0===t)return e;switch(n){case 1:return function(n){return e.call(t,n)};case 2:return function(n,r){return e.call(t,n,r)};case 3:return function(n,r,o){return e.call(t,n,r,o)}}return function(){return e.apply(t,arguments)}}},18239:e=>{e.exports=function(e){if(null==e)throw TypeError("Can't call method on  "+e);return e}},75179:(e,t,n)=>{e.exports=!n(90472)((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},48765:(e,t,n)=>{var r=n(39632),o=n(43280).document,i=r(o)&&r(o.createElement);e.exports=function(e){return i?o.createElement(e):{}}},31986:e=>{e.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},42266:(e,t,n)=>{var r=n(86425),o=n(97739),i=n(67410);e.exports=function(e){var t=r(e),n=o.f;if(n)for(var a,s=n(e),l=i.f,u=0;s.length>u;)l.call(e,a=s[u++])&&t.push(a);return t}},98310:(e,t,n)=>{var r=n(43280),o=n(47208),i=n(61725),a=n(62292),s=n(20657),$export=function(e,t,n){var l,u,c,f=e&$export.F,p=e&$export.G,d=e&$export.S,g=e&$export.P,m=e&$export.B,v=e&$export.W,h=p?o:o[t]||(o[t]={}),y=h.prototype,x=p?r:d?r[t]:(r[t]||{}).prototype;for(l in p&&(n=t),n)(u=!f&&x&&void 0!==x[l])&&s(h,l)||(c=u?x[l]:n[l],h[l]=p&&"function"!=typeof x[l]?n[l]:m&&u?i(c,r):v&&x[l]==c?function(e){var F=function(t,n,r){if(this instanceof e){switch(arguments.length){case 0:return new e;case 1:return new e(t);case 2:return new e(t,n)}return new e(t,n,r)}return e.apply(this,arguments)};return F.prototype=e.prototype,F}(c):g&&"function"==typeof c?i(Function.call,c):c,g&&((h.virtual||(h.virtual={}))[l]=c,e&$export.R&&y&&!y[l]&&a(y,l,c)))};$export.F=1,$export.G=2,$export.S=4,$export.P=8,$export.B=16,$export.W=32,$export.U=64,$export.R=128,e.exports=$export},90472:e=>{e.exports=function(e){try{return!!e()}catch(e){return!0}}},43280:e=>{var t=e.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=t)},20657:e=>{var t={}.hasOwnProperty;e.exports=function(e,n){return t.call(e,n)}},62292:(e,t,n)=>{var r=n(60510),o=n(48439);e.exports=n(75179)?function(e,t,n){return r.f(e,t,o(1,n))}:function(e,t,n){return e[t]=n,e}},92477:(e,t,n)=>{var r=n(43280).document;e.exports=r&&r.documentElement},64457:(e,t,n)=>{e.exports=!n(75179)&&!n(90472)((function(){return 7!=Object.defineProperty(n(48765)("div"),"a",{get:function(){return 7}}).a}))},19897:e=>{e.exports=function(e,t,n){var r=void 0===n;switch(t.length){case 0:return r?e():e.call(n);case 1:return r?e(t[0]):e.call(n,t[0]);case 2:return r?e(t[0],t[1]):e.call(n,t[0],t[1]);case 3:return r?e(t[0],t[1],t[2]):e.call(n,t[0],t[1],t[2]);case 4:return r?e(t[0],t[1],t[2],t[3]):e.call(n,t[0],t[1],t[2],t[3])}return e.apply(n,t)}},13115:(e,t,n)=>{var r=n(41352);e.exports=Object("z").propertyIsEnumerable(0)?Object:function(e){return"String"==r(e)?e.split(""):Object(e)}},11827:(e,t,n)=>{var r=n(79105),o=n(24300)("iterator"),i=Array.prototype;e.exports=function(e){return void 0!==e&&(r.Array===e||i[o]===e)}},7359:(e,t,n)=>{var r=n(41352);e.exports=Array.isArray||function isArray(e){return"Array"==r(e)}},39632:e=>{e.exports=function(e){return"object"==typeof e?null!==e:"function"==typeof e}},93086:(e,t,n)=>{var r=n(30498);e.exports=function(e,t,n,o){try{return o?t(r(n)[0],n[1]):t(n)}catch(t){var i=e.return;throw void 0!==i&&r(i.call(e)),t}}},19802:(e,t,n)=>{"use strict";var r=n(82488),o=n(48439),i=n(2413),a={};n(62292)(a,n(24300)("iterator"),(function(){return this})),e.exports=function(e,t,n){e.prototype=r(a,{next:o(1,n)}),i(e,t+" Iterator")}},6125:(e,t,n)=>{"use strict";var r=n(36794),o=n(98310),i=n(19312),a=n(62292),s=n(79105),l=n(19802),u=n(2413),c=n(999),f=n(24300)("iterator"),p=!([].keys&&"next"in[].keys()),d="keys",g="values",returnThis=function(){return this};e.exports=function(e,t,n,m,v,h,y){l(n,t,m);var x,_,b,getMethod=function(e){if(!p&&e in P)return P[e];switch(e){case d:return function keys(){return new n(this,e)};case g:return function values(){return new n(this,e)}}return function entries(){return new n(this,e)}},w=t+" Iterator",S=v==g,M=!1,P=e.prototype,C=P[f]||P["@@iterator"]||v&&P[v],O=C||getMethod(v),T=v?S?getMethod("entries"):O:void 0,E="Array"==t&&P.entries||C;if(E&&(b=c(E.call(new e)))!==Object.prototype&&b.next&&(u(b,w,!0),r||"function"==typeof b[f]||a(b,f,returnThis)),S&&C&&C.name!==g&&(M=!0,O=function values(){return C.call(this)}),r&&!y||!p&&!M&&P[f]||a(P,f,O),s[t]=O,s[w]=returnThis,v)if(x={values:S?O:getMethod(g),keys:h?O:getMethod(d),entries:T},y)for(_ in x)_ in P||i(P,_,x[_]);else o(o.P+o.F*(p||M),t,x);return x}},26797:(e,t,n)=>{var r=n(24300)("iterator"),o=!1;try{var i=[7][r]();i.return=function(){o=!0},Array.from(i,(function(){throw 2}))}catch(e){}e.exports=function(e,t){if(!t&&!o)return!1;var n=!1;try{var i=[7],a=i[r]();a.next=function(){return{done:n=!0}},i[r]=function(){return a},e(i)}catch(e){}return n}},9329:e=>{e.exports=function(e,t){return{value:t,done:!!e}}},79105:e=>{e.exports={}},36794:e=>{e.exports=!0},6758:(e,t,n)=>{var r=n(54251)("meta"),o=n(39632),i=n(20657),a=n(60510).f,s=0,l=Object.isExtensible||function(){return!0},u=!n(90472)((function(){return l(Object.preventExtensions({}))})),setMeta=function(e){a(e,r,{value:{i:"O"+ ++s,w:{}}})},c=e.exports={KEY:r,NEED:!1,fastKey:function(e,t){if(!o(e))return"symbol"==typeof e?e:("string"==typeof e?"S":"P")+e;if(!i(e,r)){if(!l(e))return"F";if(!t)return"E";setMeta(e)}return e[r].i},getWeak:function(e,t){if(!i(e,r)){if(!l(e))return!0;if(!t)return!1;setMeta(e)}return e[r].w},onFreeze:function(e){return u&&c.NEED&&l(e)&&!i(e,r)&&setMeta(e),e}}},82488:(e,t,n)=>{var r=n(30498),o=n(36607),i=n(31986),a=n(18478)("IE_PROTO"),Empty=function(){},createDict=function(){var e,t=n(48765)("iframe"),r=i.length;for(t.style.display="none",n(92477).appendChild(t),t.src="javascript:",(e=t.contentWindow.document).open(),e.write("<script>document.F=Object<\/script>"),e.close(),createDict=e.F;r--;)delete createDict.prototype[i[r]];return createDict()};e.exports=Object.create||function create(e,t){var n;return null!==e?(Empty.prototype=r(e),n=new Empty,Empty.prototype=null,n[a]=e):n=createDict(),void 0===t?n:o(n,t)}},60510:(e,t,n)=>{var r=n(30498),o=n(64457),i=n(12737),a=Object.defineProperty;t.f=n(75179)?Object.defineProperty:function defineProperty(e,t,n){if(r(e),t=i(t,!0),r(n),o)try{return a(e,t,n)}catch(e){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(e[t]=n.value),e}},36607:(e,t,n)=>{var r=n(60510),o=n(30498),i=n(86425);e.exports=n(75179)?Object.defineProperties:function defineProperties(e,t){o(e);for(var n,a=i(t),s=a.length,l=0;s>l;)r.f(e,n=a[l++],t[n]);return e}},83264:(e,t,n)=>{var r=n(67410),o=n(48439),i=n(1504),a=n(12737),s=n(20657),l=n(64457),u=Object.getOwnPropertyDescriptor;t.f=n(75179)?u:function getOwnPropertyDescriptor(e,t){if(e=i(e),t=a(t,!0),l)try{return u(e,t)}catch(e){}if(s(e,t))return o(!r.f.call(e,t),e[t])}},26084:(e,t,n)=>{var r=n(1504),o=n(8772).f,i={}.toString,a="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];e.exports.f=function getOwnPropertyNames(e){return a&&"[object Window]"==i.call(e)?function(e){try{return o(e)}catch(e){return a.slice()}}(e):o(r(e))}},8772:(e,t,n)=>{var r=n(65326),o=n(31986).concat("length","prototype");t.f=Object.getOwnPropertyNames||function getOwnPropertyNames(e){return r(e,o)}},97739:(e,t)=>{t.f=Object.getOwnPropertySymbols},999:(e,t,n)=>{var r=n(20657),o=n(60061),i=n(18478)("IE_PROTO"),a=Object.prototype;e.exports=Object.getPrototypeOf||function(e){return e=o(e),r(e,i)?e[i]:"function"==typeof e.constructor&&e instanceof e.constructor?e.constructor.prototype:e instanceof Object?a:null}},65326:(e,t,n)=>{var r=n(20657),o=n(1504),i=n(69191)(!1),a=n(18478)("IE_PROTO");e.exports=function(e,t){var n,s=o(e),l=0,u=[];for(n in s)n!=a&&r(s,n)&&u.push(n);for(;t.length>l;)r(s,n=t[l++])&&(~i(u,n)||u.push(n));return u}},86425:(e,t,n)=>{var r=n(65326),o=n(31986);e.exports=Object.keys||function keys(e){return r(e,o)}},67410:(e,t)=>{t.f={}.propertyIsEnumerable},57972:(e,t,n)=>{var r=n(98310),o=n(47208),i=n(90472);e.exports=function(e,t){var n=(o.Object||{})[e]||Object[e],a={};a[e]=t(n),r(r.S+r.F*i((function(){n(1)})),"Object",a)}},9480:(e,t,n)=>{var r=n(75179),o=n(86425),i=n(1504),a=n(67410).f;e.exports=function(e){return function(t){for(var n,s=i(t),l=o(s),u=l.length,c=0,f=[];u>c;)n=l[c++],r&&!a.call(s,n)||f.push(e?[n,s[n]]:s[n]);return f}}},48439:e=>{e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},19312:(e,t,n)=>{e.exports=n(62292)},25574:(e,t,n)=>{var r=n(39632),o=n(30498),check=function(e,t){if(o(e),!r(t)&&null!==t)throw TypeError(t+": can't set as prototype!")};e.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(e,t,r){try{(r=n(61725)(Function.call,n(83264).f(Object.prototype,"__proto__").set,2))(e,[]),t=!(e instanceof Array)}catch(e){t=!0}return function setPrototypeOf(e,n){return check(e,n),t?e.__proto__=n:r(e,n),e}}({},!1):void 0),check}},2413:(e,t,n)=>{var r=n(60510).f,o=n(20657),i=n(24300)("toStringTag");e.exports=function(e,t,n){e&&!o(e=n?e:e.prototype,i)&&r(e,i,{configurable:!0,value:t})}},18478:(e,t,n)=>{var r=n(29990)("keys"),o=n(54251);e.exports=function(e){return r[e]||(r[e]=o(e))}},29990:(e,t,n)=>{var r=n(47208),o=n(43280),i="__core-js_shared__",a=o[i]||(o[i]={});(e.exports=function(e,t){return a[e]||(a[e]=void 0!==t?t:{})})("versions",[]).push({version:r.version,mode:n(36794)?"pure":"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})},78502:(e,t,n)=>{var r=n(58290),o=n(18239);e.exports=function(e){return function(t,n){var i,a,s=String(o(t)),l=r(n),u=s.length;return l<0||l>=u?e?"":void 0:(i=s.charCodeAt(l))<55296||i>56319||l+1===u||(a=s.charCodeAt(l+1))<56320||a>57343?e?s.charAt(l):i:e?s.slice(l,l+2):a-56320+(i-55296<<10)+65536}}},46723:(e,t,n)=>{var r=n(58290),o=Math.max,i=Math.min;e.exports=function(e,t){return(e=r(e))<0?o(e+t,0):i(e,t)}},58290:e=>{var t=Math.ceil,n=Math.floor;e.exports=function(e){return isNaN(e=+e)?0:(e>0?n:t)(e)}},1504:(e,t,n)=>{var r=n(13115),o=n(18239);e.exports=function(e){return r(o(e))}},37154:(e,t,n)=>{var r=n(58290),o=Math.min;e.exports=function(e){return e>0?o(r(e),9007199254740991):0}},60061:(e,t,n)=>{var r=n(18239);e.exports=function(e){return Object(r(e))}},12737:(e,t,n)=>{var r=n(39632);e.exports=function(e,t){if(!r(e))return e;var n,o;if(t&&"function"==typeof(n=e.toString)&&!r(o=n.call(e)))return o;if("function"==typeof(n=e.valueOf)&&!r(o=n.call(e)))return o;if(!t&&"function"==typeof(n=e.toString)&&!r(o=n.call(e)))return o;throw TypeError("Can't convert object to primitive value")}},54251:e=>{var t=0,n=Math.random();e.exports=function(e){return"Symbol(".concat(void 0===e?"":e,")_",(++t+n).toString(36))}},31164:(e,t,n)=>{var r=n(43280),o=n(47208),i=n(36794),a=n(7273),s=n(60510).f;e.exports=function(e){var t=o.Symbol||(o.Symbol=i?{}:r.Symbol||{});"_"==e.charAt(0)||e in t||s(t,e,{value:a.f(e)})}},7273:(e,t,n)=>{t.f=n(24300)},24300:(e,t,n)=>{var r=n(29990)("wks"),o=n(54251),i=n(43280).Symbol,a="function"==typeof i;(e.exports=function(e){return r[e]||(r[e]=a&&i[e]||(a?i:o)("Symbol."+e))}).store=r},26116:(e,t,n)=>{var r=n(8312),o=n(24300)("iterator"),i=n(79105);e.exports=n(47208).getIteratorMethod=function(e){if(null!=e)return e[o]||e["@@iterator"]||i[r(e)]}},37627:(e,t,n)=>{"use strict";var r=n(61725),o=n(98310),i=n(60061),a=n(93086),s=n(11827),l=n(37154),u=n(87352),c=n(26116);o(o.S+o.F*!n(26797)((function(e){Array.from(e)})),"Array",{from:function from(e){var t,n,o,f,p=i(e),d="function"==typeof this?this:Array,g=arguments.length,m=g>1?arguments[1]:void 0,v=void 0!==m,h=0,y=c(p);if(v&&(m=r(m,g>2?arguments[2]:void 0,2)),null==y||d==Array&&s(y))for(n=new d(t=l(p.length));t>h;h++)u(n,h,v?m(p[h],h):p[h]);else for(f=y.call(p),n=new d;!(o=f.next()).done;h++)u(n,h,v?a(f,m,[o.value,h],!0):o.value);return n.length=h,n}})},42580:(e,t,n)=>{var r=n(98310);r(r.S,"Array",{isArray:n(7359)})},84411:(e,t,n)=>{"use strict";var r=n(29697),o=n(9329),i=n(79105),a=n(1504);e.exports=n(6125)(Array,"Array",(function(e,t){this._t=a(e),this._i=0,this._k=t}),(function(){var e=this._t,t=this._k,n=this._i++;return!e||n>=e.length?(this._t=void 0,o(1)):o(0,"keys"==t?n:"values"==t?e[n]:[n,e[n]])}),"values"),i.Arguments=i.Array,r("keys"),r("values"),r("entries")},30785:(e,t,n)=>{var r=n(98310);r(r.S,"Object",{create:n(82488)})},40168:(e,t,n)=>{var r=n(98310);r(r.S+r.F*!n(75179),"Object",{defineProperty:n(60510).f})},18576:(e,t,n)=>{var r=n(1504),o=n(83264).f;n(57972)("getOwnPropertyDescriptor",(function(){return function getOwnPropertyDescriptor(e,t){return o(r(e),t)}}))},4840:(e,t,n)=>{var r=n(60061),o=n(999);n(57972)("getPrototypeOf",(function(){return function getPrototypeOf(e){return o(r(e))}}))},13890:(e,t,n)=>{var r=n(98310);r(r.S,"Object",{setPrototypeOf:n(25574).set})},70285:()=>{},11320:(e,t,n)=>{var r=n(98310),o=n(82488),i=n(26610),a=n(30498),s=n(39632),l=n(90472),u=n(45515),c=(n(43280).Reflect||{}).construct,f=l((function(){function F(){}return!(c((function(){}),[],F)instanceof F)})),p=!l((function(){c((function(){}))}));r(r.S+r.F*(f||p),"Reflect",{construct:function construct(e,t){i(e),a(t);var n=arguments.length<3?e:i(arguments[2]);if(p&&!f)return c(e,t,n);if(e==n){switch(t.length){case 0:return new e;case 1:return new e(t[0]);case 2:return new e(t[0],t[1]);case 3:return new e(t[0],t[1],t[2]);case 4:return new e(t[0],t[1],t[2],t[3])}var r=[null];return r.push.apply(r,t),new(u.apply(e,r))}var l=n.prototype,d=o(s(l)?l:Object.prototype),g=Function.apply.call(e,d,t);return s(g)?g:d}})},36600:(e,t,n)=>{var r=n(83264),o=n(999),i=n(20657),a=n(98310),s=n(39632),l=n(30498);a(a.S,"Reflect",{get:function get(e,t){var n,a,u=arguments.length<3?e:arguments[2];return l(e)===u?e[t]:(n=r.f(e,t))?i(n,"value")?n.value:void 0!==n.get?n.get.call(u):void 0:s(a=o(e))?get(a,t,u):void 0}})},99572:(e,t,n)=>{"use strict";var r=n(78502)(!0);n(6125)(String,"String",(function(e){this._t=String(e),this._i=0}),(function(){var e,t=this._t,n=this._i;return n>=t.length?{value:void 0,done:!0}:(e=r(t,n),this._i+=e.length,{value:e,done:!1})}))},54370:(e,t,n)=>{"use strict";var r=n(43280),o=n(20657),i=n(75179),a=n(98310),s=n(19312),l=n(6758).KEY,u=n(90472),c=n(29990),f=n(2413),p=n(54251),d=n(24300),g=n(7273),m=n(31164),v=n(42266),h=n(7359),y=n(30498),x=n(39632),_=n(60061),b=n(1504),w=n(12737),S=n(48439),M=n(82488),P=n(26084),C=n(83264),O=n(97739),T=n(60510),E=n(86425),A=C.f,k=T.f,I=P.f,j=r.Symbol,$=r.JSON,L=$&&$.stringify,D=d("_hidden"),R=d("toPrimitive"),N={}.propertyIsEnumerable,H=c("symbol-registry"),B=c("symbols"),q=c("op-symbols"),W=Object.prototype,G="function"==typeof j&&!!O.f,U=r.QObject,V=!U||!U.prototype||!U.prototype.findChild,Q=i&&u((function(){return 7!=M(k({},"a",{get:function(){return k(this,"a",{value:7}).a}})).a}))?function(e,t,n){var r=A(W,t);r&&delete W[t],k(e,t,n),r&&e!==W&&k(W,t,r)}:k,wrap=function(e){var t=B[e]=M(j.prototype);return t._k=e,t},z=G&&"symbol"==typeof j.iterator?function(e){return"symbol"==typeof e}:function(e){return e instanceof j},J=function defineProperty(e,t,n){return e===W&&J(q,t,n),y(e),t=w(t,!0),y(n),o(B,t)?(n.enumerable?(o(e,D)&&e[D][t]&&(e[D][t]=!1),n=M(n,{enumerable:S(0,!1)})):(o(e,D)||k(e,D,S(1,{})),e[D][t]=!0),Q(e,t,n)):k(e,t,n)},K=function defineProperties(e,t){y(e);for(var n,r=v(t=b(t)),o=0,i=r.length;i>o;)J(e,n=r[o++],t[n]);return e},Y=function propertyIsEnumerable(e){var t=N.call(this,e=w(e,!0));return!(this===W&&o(B,e)&&!o(q,e))&&(!(t||!o(this,e)||!o(B,e)||o(this,D)&&this[D][e])||t)},X=function getOwnPropertyDescriptor(e,t){if(e=b(e),t=w(t,!0),e!==W||!o(B,t)||o(q,t)){var n=A(e,t);return!n||!o(B,t)||o(e,D)&&e[D][t]||(n.enumerable=!0),n}},Z=function getOwnPropertyNames(e){for(var t,n=I(b(e)),r=[],i=0;n.length>i;)o(B,t=n[i++])||t==D||t==l||r.push(t);return r},ee=function getOwnPropertySymbols(e){for(var t,n=e===W,r=I(n?q:b(e)),i=[],a=0;r.length>a;)!o(B,t=r[a++])||n&&!o(W,t)||i.push(B[t]);return i};G||(s((j=function Symbol(){if(this instanceof j)throw TypeError("Symbol is not a constructor!");var e=p(arguments.length>0?arguments[0]:void 0),$set=function(t){this===W&&$set.call(q,t),o(this,D)&&o(this[D],e)&&(this[D][e]=!1),Q(this,e,S(1,t))};return i&&V&&Q(W,e,{configurable:!0,set:$set}),wrap(e)}).prototype,"toString",(function toString(){return this._k})),C.f=X,T.f=J,n(8772).f=P.f=Z,n(67410).f=Y,O.f=ee,i&&!n(36794)&&s(W,"propertyIsEnumerable",Y,!0),g.f=function(e){return wrap(d(e))}),a(a.G+a.W+a.F*!G,{Symbol:j});for(var te="hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),ne=0;te.length>ne;)d(te[ne++]);for(var re=E(d.store),oe=0;re.length>oe;)m(re[oe++]);a(a.S+a.F*!G,"Symbol",{for:function(e){return o(H,e+="")?H[e]:H[e]=j(e)},keyFor:function keyFor(e){if(!z(e))throw TypeError(e+" is not a symbol!");for(var t in H)if(H[t]===e)return t},useSetter:function(){V=!0},useSimple:function(){V=!1}}),a(a.S+a.F*!G,"Object",{create:function create(e,t){return void 0===t?M(e):K(M(e),t)},defineProperty:J,defineProperties:K,getOwnPropertyDescriptor:X,getOwnPropertyNames:Z,getOwnPropertySymbols:ee});var ie=u((function(){O.f(1)}));a(a.S+a.F*ie,"Object",{getOwnPropertySymbols:function getOwnPropertySymbols(e){return O.f(_(e))}}),$&&a(a.S+a.F*(!G||u((function(){var e=j();return"[null]"!=L([e])||"{}"!=L({a:e})||"{}"!=L(Object(e))}))),"JSON",{stringify:function stringify(e){for(var t,n,r=[e],o=1;arguments.length>o;)r.push(arguments[o++]);if(n=t=r[1],(x(t)||void 0!==e)&&!z(e))return h(t)||(t=function(e,t){if("function"==typeof n&&(t=n.call(this,e,t)),!z(t))return t}),r[1]=t,L.apply($,r)}}),j.prototype[R]||n(62292)(j.prototype,R,j.prototype.valueOf),f(j,"Symbol"),f(Math,"Math",!0),f(r.JSON,"JSON",!0)},95260:(e,t,n)=>{var r=n(98310),o=n(9480)(!0);r(r.S,"Object",{entries:function entries(e){return o(e)}})},87573:(e,t,n)=>{n(31164)("asyncIterator")},97224:(e,t,n)=>{n(31164)("observable")},74114:(e,t,n)=>{n(84411);for(var r=n(43280),o=n(62292),i=n(79105),a=n(24300)("toStringTag"),s="CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList".split(","),l=0;l<s.length;l++){var u=s[l],c=r[u],f=c&&c.prototype;f&&!f[a]&&o(f,a,u),i[u]=i.Array}},22761:e=>{e.exports=function(e){if("function"!=typeof e)throw TypeError(e+" is not a function!");return e}},42094:(e,t,n)=>{var r=n(62190)("unscopables"),o=Array.prototype;null==o[r]&&n(74216)(o,r,{}),e.exports=function(e){o[r][e]=!0}},88492:(e,t,n)=>{"use strict";var r=n(12070)(!0);e.exports=function(e,t,n){return t+(n?r(e,t).length:1)}},6365:(e,t,n)=>{var r=n(67334);e.exports=function(e){if(!r(e))throw TypeError(e+" is not an object!");return e}},59021:(e,t,n)=>{var r=n(15703),o=n(26078),i=n(78615);e.exports=function(e){return function(t,n,a){var s,l=r(t),u=o(l.length),c=i(a,u);if(e&&n!=n){for(;u>c;)if((s=l[c++])!=s)return!0}else for(;u>c;c++)if((e||c in l)&&l[c]===n)return e||c||0;return!e&&-1}}},78309:(e,t,n)=>{var r=n(11528),o=n(8467),i=n(26033),a=n(26078),s=n(63531);e.exports=function(e,t){var n=1==e,l=2==e,u=3==e,c=4==e,f=6==e,p=5==e||f,d=t||s;return function(t,s,g){for(var m,v,h=i(t),y=o(h),x=r(s,g,3),_=a(y.length),b=0,w=n?d(t,_):l?d(t,0):void 0;_>b;b++)if((p||b in y)&&(v=x(m=y[b],b,h),e))if(n)w[b]=v;else if(v)switch(e){case 3:return!0;case 5:return m;case 6:return b;case 2:w.push(m)}else if(c)return!1;return f?-1:u||c?c:w}}},81071:(e,t,n)=>{var r=n(67334),o=n(99141),i=n(62190)("species");e.exports=function(e){var t;return o(e)&&("function"!=typeof(t=e.constructor)||t!==Array&&!o(t.prototype)||(t=void 0),r(t)&&null===(t=t[i])&&(t=void 0)),void 0===t?Array:t}},63531:(e,t,n)=>{var r=n(81071);e.exports=function(e,t){return new(r(e))(t)}},20106:(e,t,n)=>{var r=n(26688),o=n(62190)("toStringTag"),i="Arguments"==r(function(){return arguments}());e.exports=function(e){var t,n,a;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(n=function(e,t){try{return e[t]}catch(e){}}(t=Object(e),o))?n:i?r(t):"Object"==(a=r(t))&&"function"==typeof t.callee?"Arguments":a}},26688:e=>{var t={}.toString;e.exports=function(e){return t.call(e).slice(8,-1)}},60066:e=>{var t=e.exports={version:"2.6.12"};"number"==typeof __e&&(__e=t)},11528:(e,t,n)=>{var r=n(22761);e.exports=function(e,t,n){if(r(e),void 0===t)return e;switch(n){case 1:return function(n){return e.call(t,n)};case 2:return function(n,r){return e.call(t,n,r)};case 3:return function(n,r,o){return e.call(t,n,r,o)}}return function(){return e.apply(t,arguments)}}},61622:e=>{e.exports=function(e){if(null==e)throw TypeError("Can't call method on  "+e);return e}},36628:(e,t,n)=>{e.exports=!n(48625)((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},5050:(e,t,n)=>{var r=n(67334),o=n(38113).document,i=r(o)&&r(o.createElement);e.exports=function(e){return i?o.createElement(e):{}}},65772:(e,t,n)=>{var r=n(38113),o=n(60066),i=n(74216),a=n(17738),s=n(11528),$export=function(e,t,n){var l,u,c,f,p=e&$export.F,d=e&$export.G,g=e&$export.S,m=e&$export.P,v=e&$export.B,h=d?r:g?r[t]||(r[t]={}):(r[t]||{}).prototype,y=d?o:o[t]||(o[t]={}),x=y.prototype||(y.prototype={});for(l in d&&(n=t),n)c=((u=!p&&h&&void 0!==h[l])?h:n)[l],f=v&&u?s(c,r):m&&"function"==typeof c?s(Function.call,c):c,h&&a(h,l,c,e&$export.U),y[l]!=c&&i(y,l,f),m&&x[l]!=c&&(x[l]=c)};r.core=o,$export.F=1,$export.G=2,$export.S=4,$export.P=8,$export.B=16,$export.W=32,$export.U=64,$export.R=128,e.exports=$export},86570:(e,t,n)=>{var r=n(62190)("match");e.exports=function(e){var t=/./;try{"/./"[e](t)}catch(n){try{return t[r]=!1,!"/./"[e](t)}catch(e){}}return!0}},48625:e=>{e.exports=function(e){try{return!!e()}catch(e){return!0}}},48897:(e,t,n)=>{"use strict";n(25846);var r=n(17738),o=n(74216),i=n(48625),a=n(61622),s=n(62190),l=n(43288),u=s("species"),c=!i((function(){var e=/./;return e.exec=function(){var e=[];return e.groups={a:"7"},e},"7"!=="".replace(e,"$<a>")})),f=function(){var e=/(?:)/,t=e.exec;e.exec=function(){return t.apply(this,arguments)};var n="ab".split(e);return 2===n.length&&"a"===n[0]&&"b"===n[1]}();e.exports=function(e,t,n){var p=s(e),d=!i((function(){var t={};return t[p]=function(){return 7},7!=""[e](t)})),g=d?!i((function(){var t=!1,n=/a/;return n.exec=function(){return t=!0,null},"split"===e&&(n.constructor={},n.constructor[u]=function(){return n}),n[p](""),!t})):void 0;if(!d||!g||"replace"===e&&!c||"split"===e&&!f){var m=/./[p],v=n(a,p,""[e],(function maybeCallNative(e,t,n,r,o){return t.exec===l?d&&!o?{done:!0,value:m.call(t,n,r)}:{done:!0,value:e.call(n,t,r)}:{done:!1}})),h=v[0],y=v[1];r(String.prototype,e,h),o(RegExp.prototype,p,2==t?function(e,t){return y.call(e,this,t)}:function(e){return y.call(e,this)})}}},74859:(e,t,n)=>{"use strict";var r=n(6365);e.exports=function(){var e=r(this),t="";return e.global&&(t+="g"),e.ignoreCase&&(t+="i"),e.multiline&&(t+="m"),e.unicode&&(t+="u"),e.sticky&&(t+="y"),t}},20646:(e,t,n)=>{e.exports=n(8655)("native-function-to-string",Function.toString)},38113:e=>{var t=e.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=t)},54040:e=>{var t={}.hasOwnProperty;e.exports=function(e,n){return t.call(e,n)}},74216:(e,t,n)=>{var r=n(98558),o=n(36061);e.exports=n(36628)?function(e,t,n){return r.f(e,t,o(1,n))}:function(e,t,n){return e[t]=n,e}},8954:(e,t,n)=>{var r=n(38113).document;e.exports=r&&r.documentElement},5100:(e,t,n)=>{e.exports=!n(36628)&&!n(48625)((function(){return 7!=Object.defineProperty(n(5050)("div"),"a",{get:function(){return 7}}).a}))},8467:(e,t,n)=>{var r=n(26688);e.exports=Object("z").propertyIsEnumerable(0)?Object:function(e){return"String"==r(e)?e.split(""):Object(e)}},99141:(e,t,n)=>{var r=n(26688);e.exports=Array.isArray||function isArray(e){return"Array"==r(e)}},67334:e=>{e.exports=function(e){return"object"==typeof e?null!==e:"function"==typeof e}},94587:(e,t,n)=>{var r=n(67334),o=n(26688),i=n(62190)("match");e.exports=function(e){var t;return r(e)&&(void 0!==(t=e[i])?!!t:"RegExp"==o(e))}},81422:e=>{e.exports=!1},98558:(e,t,n)=>{var r=n(6365),o=n(5100),i=n(31382),a=Object.defineProperty;t.f=n(36628)?Object.defineProperty:function defineProperty(e,t,n){if(r(e),t=i(t,!0),r(n),o)try{return a(e,t,n)}catch(e){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(e[t]=n.value),e}},36061:e=>{e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},17738:(e,t,n)=>{var r=n(38113),o=n(74216),i=n(54040),a=n(25078)("src"),s=n(20646),l="toString",u=(""+s).split(l);n(60066).inspectSource=function(e){return s.call(e)},(e.exports=function(e,t,n,s){var l="function"==typeof n;l&&(i(n,"name")||o(n,"name",t)),e[t]!==n&&(l&&(i(n,a)||o(n,a,e[t]?""+e[t]:u.join(String(t)))),e===r?e[t]=n:s?e[t]?e[t]=n:o(e,t,n):(delete e[t],o(e,t,n)))})(Function.prototype,l,(function toString(){return"function"==typeof this&&this[a]||s.call(this)}))},62404:(e,t,n)=>{"use strict";var r=n(20106),o=RegExp.prototype.exec;e.exports=function(e,t){var n=e.exec;if("function"==typeof n){var i=n.call(e,t);if("object"!=typeof i)throw new TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==r(e))throw new TypeError("RegExp#exec called on incompatible receiver");return o.call(e,t)}},43288:(e,t,n)=>{"use strict";var r,o,i=n(74859),a=RegExp.prototype.exec,s=String.prototype.replace,l=a,u=(r=/a/,o=/b*/g,a.call(r,"a"),a.call(o,"a"),0!==r.lastIndex||0!==o.lastIndex),c=void 0!==/()??/.exec("")[1];(u||c)&&(l=function exec(e){var t,n,r,o,l=this;return c&&(n=new RegExp("^"+l.source+"$(?!\\s)",i.call(l))),u&&(t=l.lastIndex),r=a.call(l,e),u&&r&&(l.lastIndex=l.global?r.index+r[0].length:t),c&&r&&r.length>1&&s.call(r[0],n,(function(){for(o=1;o<arguments.length-2;o++)void 0===arguments[o]&&(r[o]=void 0)})),r}),e.exports=l},80339:e=>{e.exports=Object.is||function is(e,t){return e===t?0!==e||1/e==1/t:e!=e&&t!=t}},8655:(e,t,n)=>{var r=n(60066),o=n(38113),i="__core-js_shared__",a=o[i]||(o[i]={});(e.exports=function(e,t){return a[e]||(a[e]=void 0!==t?t:{})})("versions",[]).push({version:r.version,mode:n(81422)?"pure":"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})},11987:(e,t,n)=>{var r=n(6365),o=n(22761),i=n(62190)("species");e.exports=function(e,t){var n,a=r(e).constructor;return void 0===a||null==(n=r(a)[i])?t:o(n)}},10225:(e,t,n)=>{"use strict";var r=n(48625);e.exports=function(e,t){return!!e&&r((function(){t?e.call(null,(function(){}),1):e.call(null)}))}},12070:(e,t,n)=>{var r=n(3338),o=n(61622);e.exports=function(e){return function(t,n){var i,a,s=String(o(t)),l=r(n),u=s.length;return l<0||l>=u?e?"":void 0:(i=s.charCodeAt(l))<55296||i>56319||l+1===u||(a=s.charCodeAt(l+1))<56320||a>57343?e?s.charAt(l):i:e?s.slice(l,l+2):a-56320+(i-55296<<10)+65536}}},465:(e,t,n)=>{var r=n(94587),o=n(61622);e.exports=function(e,t,n){if(r(t))throw TypeError("String#"+n+" doesn't accept regex!");return String(o(e))}},78615:(e,t,n)=>{var r=n(3338),o=Math.max,i=Math.min;e.exports=function(e,t){return(e=r(e))<0?o(e+t,0):i(e,t)}},3338:e=>{var t=Math.ceil,n=Math.floor;e.exports=function(e){return isNaN(e=+e)?0:(e>0?n:t)(e)}},15703:(e,t,n)=>{var r=n(8467),o=n(61622);e.exports=function(e){return r(o(e))}},26078:(e,t,n)=>{var r=n(3338),o=Math.min;e.exports=function(e){return e>0?o(r(e),9007199254740991):0}},26033:(e,t,n)=>{var r=n(61622);e.exports=function(e){return Object(r(e))}},31382:(e,t,n)=>{var r=n(67334);e.exports=function(e,t){if(!r(e))return e;var n,o;if(t&&"function"==typeof(n=e.toString)&&!r(o=n.call(e)))return o;if("function"==typeof(n=e.valueOf)&&!r(o=n.call(e)))return o;if(!t&&"function"==typeof(n=e.toString)&&!r(o=n.call(e)))return o;throw TypeError("Can't convert object to primitive value")}},25078:e=>{var t=0,n=Math.random();e.exports=function(e){return"Symbol(".concat(void 0===e?"":e,")_",(++t+n).toString(36))}},62190:(e,t,n)=>{var r=n(8655)("wks"),o=n(25078),i=n(38113).Symbol,a="function"==typeof i;(e.exports=function(e){return r[e]||(r[e]=a&&i[e]||(a?i:o)("Symbol."+e))}).store=r},64434:(e,t,n)=>{"use strict";var r=n(65772),o=n(78309)(2);r(r.P+r.F*!n(10225)([].filter,!0),"Array",{filter:function filter(e){return o(this,e,arguments[1])}})},71954:(e,t,n)=>{"use strict";var r=n(65772),o=n(78309)(5),i="find",a=!0;i in[]&&Array(1).find((function(){a=!1})),r(r.P+r.F*a,"Array",{find:function find(e){return o(this,e,arguments.length>1?arguments[1]:void 0)}}),n(42094)(i)},67209:(e,t,n)=>{"use strict";var r=n(65772),o=n(8954),i=n(26688),a=n(78615),s=n(26078),l=[].slice;r(r.P+r.F*n(48625)((function(){o&&l.call(o)})),"Array",{slice:function slice(e,t){var n=s(this.length),r=i(this);if(t=void 0===t?n:t,"Array"==r)return l.call(this,e,t);for(var o=a(e,n),u=a(t,n),c=s(u-o),f=new Array(c),p=0;p<c;p++)f[p]="String"==r?this.charAt(o+p):this[o+p];return f}})},76139:(e,t,n)=>{"use strict";var r=n(20106),o={};o[n(62190)("toStringTag")]="z",o+""!="[object z]"&&n(17738)(Object.prototype,"toString",(function toString(){return"[object "+r(this)+"]"}),!0)},25846:(e,t,n)=>{"use strict";var r=n(43288);n(65772)({target:"RegExp",proto:!0,forced:r!==/./.exec},{exec:r})},40751:(e,t,n)=>{n(36628)&&"g"!=/./g.flags&&n(98558).f(RegExp.prototype,"flags",{configurable:!0,get:n(74859)})},84208:(e,t,n)=>{"use strict";var r=n(6365),o=n(26033),i=n(26078),a=n(3338),s=n(88492),l=n(62404),u=Math.max,c=Math.min,f=Math.floor,p=/\$([$&`']|\d\d?|<[^>]*>)/g,d=/\$([$&`']|\d\d?)/g;n(48897)("replace",2,(function(e,t,n,g){return[function replace(r,o){var i=e(this),a=null==r?void 0:r[t];return void 0!==a?a.call(r,i,o):n.call(String(i),r,o)},function(e,t){var o=g(n,e,this,t);if(o.done)return o.value;var f=r(e),p=String(this),d="function"==typeof t;d||(t=String(t));var m=f.global;if(m){var v=f.unicode;f.lastIndex=0}for(var h=[];;){var y=l(f,p);if(null===y)break;if(h.push(y),!m)break;""===String(y[0])&&(f.lastIndex=s(p,i(f.lastIndex),v))}for(var x,_="",b=0,w=0;w<h.length;w++){y=h[w];for(var S=String(y[0]),M=u(c(a(y.index),p.length),0),P=[],C=1;C<y.length;C++)P.push(void 0===(x=y[C])?x:String(x));var O=y.groups;if(d){var T=[S].concat(P,M,p);void 0!==O&&T.push(O);var E=String(t.apply(void 0,T))}else E=getSubstitution(S,p,M,P,O,t);M>=b&&(_+=p.slice(b,M)+E,b=M+S.length)}return _+p.slice(b)}];function getSubstitution(e,t,r,i,a,s){var l=r+e.length,u=i.length,c=d;return void 0!==a&&(a=o(a),c=p),n.call(s,c,(function(n,o){var s;switch(o.charAt(0)){case"$":return"$";case"&":return e;case"`":return t.slice(0,r);case"'":return t.slice(l);case"<":s=a[o.slice(1,-1)];break;default:var c=+o;if(0===c)return n;if(c>u){var p=f(c/10);return 0===p?n:p<=u?void 0===i[p-1]?o.charAt(1):i[p-1]+o.charAt(1):n}s=i[c-1]}return void 0===s?"":s}))}}))},42679:(e,t,n)=>{"use strict";var r=n(6365),o=n(80339),i=n(62404);n(48897)("search",1,(function(e,t,n,a){return[function search(n){var r=e(this),o=null==n?void 0:n[t];return void 0!==o?o.call(n,r):new RegExp(n)[t](String(r))},function(e){var t=a(n,e,this);if(t.done)return t.value;var s=r(e),l=String(this),u=s.lastIndex;o(u,0)||(s.lastIndex=0);var c=i(s,l);return o(s.lastIndex,u)||(s.lastIndex=u),null===c?-1:c.index}]}))},99236:(e,t,n)=>{"use strict";var r=n(94587),o=n(6365),i=n(11987),a=n(88492),s=n(26078),l=n(62404),u=n(43288),c=n(48625),f=Math.min,p=[].push,d=4294967295,g=!c((function(){RegExp(d,"y")}));n(48897)("split",2,(function(e,t,n,c){var m;return m="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(e,t){var o=String(this);if(void 0===e&&0===t)return[];if(!r(e))return n.call(o,e,t);for(var i,a,s,l=[],c=(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.unicode?"u":"")+(e.sticky?"y":""),f=0,g=void 0===t?d:t>>>0,m=new RegExp(e.source,c+"g");(i=u.call(m,o))&&!((a=m.lastIndex)>f&&(l.push(o.slice(f,i.index)),i.length>1&&i.index<o.length&&p.apply(l,i.slice(1)),s=i[0].length,f=a,l.length>=g));)m.lastIndex===i.index&&m.lastIndex++;return f===o.length?!s&&m.test("")||l.push(""):l.push(o.slice(f)),l.length>g?l.slice(0,g):l}:"0".split(void 0,0).length?function(e,t){return void 0===e&&0===t?[]:n.call(this,e,t)}:n,[function split(n,r){var o=e(this),i=null==n?void 0:n[t];return void 0!==i?i.call(n,o,r):m.call(String(o),n,r)},function(e,t){var r=c(m,e,this,t,m!==n);if(r.done)return r.value;var u=o(e),p=String(this),v=i(u,RegExp),h=u.unicode,y=(u.ignoreCase?"i":"")+(u.multiline?"m":"")+(u.unicode?"u":"")+(g?"y":"g"),x=new v(g?u:"^(?:"+u.source+")",y),_=void 0===t?d:t>>>0;if(0===_)return[];if(0===p.length)return null===l(x,p)?[p]:[];for(var b=0,w=0,S=[];w<p.length;){x.lastIndex=g?w:0;var M,P=l(x,g?p:p.slice(w));if(null===P||(M=f(s(x.lastIndex+(g?0:w)),p.length))===b)w=a(p,w,h);else{if(S.push(p.slice(b,w)),S.length===_)return S;for(var C=1;C<=P.length-1;C++)if(S.push(P[C]),S.length===_)return S;w=b=M}}return S.push(p.slice(b)),S}]}))},44321:(e,t,n)=>{"use strict";n(40751);var r=n(6365),o=n(74859),i=n(36628),a="toString",s=/./.toString,define=function(e){n(17738)(RegExp.prototype,a,e,!0)};n(48625)((function(){return"/a/b"!=s.call({source:"a",flags:"b"})}))?define((function toString(){var e=r(this);return"/".concat(e.source,"/","flags"in e?e.flags:!i&&e instanceof RegExp?o.call(e):void 0)})):s.name!=a&&define((function toString(){return s.call(this)}))},3777:(e,t,n)=>{"use strict";var r=n(65772),o=n(465),i="includes";r(r.P+r.F*n(86570)(i),"String",{includes:function includes(e){return!!~o(this,e,i).indexOf(e,arguments.length>1?arguments[1]:void 0)}})},38081:(e,t,n)=>{"use strict";var r=n(65772),o=n(59021)(!0);r(r.P,"Array",{includes:function includes(e){return o(this,e,arguments.length>1?arguments[1]:void 0)}}),n(42094)("includes")},18194:e=>{"use strict";e.exports=wp.i18n}},t={};function __webpack_require__(n){var r=t[n];if(void 0!==r)return r.exports;var o=t[n]={exports:{}};return e[n](o,o.exports,__webpack_require__),o.exports}(()=>{"use strict";var e=__webpack_require__(18194).__,t=__webpack_require__(67971),n=t(__webpack_require__(47834)),r=t(__webpack_require__(38923));__webpack_require__(71954),__webpack_require__(64434),__webpack_require__(99236),__webpack_require__(42679),__webpack_require__(84208),__webpack_require__(67209);var o,i,a=t(__webpack_require__(71466)),s=t(__webpack_require__(72104)),l=t(__webpack_require__(73308));o=jQuery,i=elementorModules.ViewModule.extend({maintenanceMode:null,config:elementorAdminConfig,getDefaultElements:function getDefaultElements(){var e={$switchMode:o("#elementor-switch-mode"),$goToEditLink:o("#elementor-go-to-edit-page-link"),$switchModeInput:o("#elementor-switch-mode-input"),$switchModeButton:o("#elementor-switch-mode-button"),$elementorLoader:o(".elementor-loader"),$builderEditor:o("#elementor-editor"),$importButton:o("#elementor-import-template-trigger"),$importArea:o("#elementor-import-template-area"),$settingsForm:o("#elementor-settings-form"),$settingsTabsWrapper:o("#elementor-settings-tabs-wrapper"),$menuGetHelpLink:o('a[href="admin.php?page=go_knowledge_base_site"]'),$reMigrateGlobalsButton:o(".elementor-re-migrate-globals-button")};return e.$settingsFormPages=e.$settingsForm.find(".elementor-settings-form-page"),e.$activeSettingsPage=e.$settingsFormPages.filter(".elementor-active"),e.$settingsTabs=e.$settingsTabsWrapper.children(),e.$activeSettingsTab=e.$settingsTabs.filter(".nav-tab-active"),e},toggleStatus:function toggleStatus(){var e=this.isElementorMode();elementorCommon.elements.$body.toggleClass("elementor-editor-active",e).toggleClass("elementor-editor-inactive",!e)},bindEvents:function bindEvents(){var t=this;t.elements.$switchModeButton.on("click",(function(n){if(n.preventDefault(),t.isElementorMode())elementorCommon.dialogsManager.createWidget("confirm",{message:e("Please note that you are switching to WordPress default editor. Your current layout, design and content might break.","elementor"),headerMessage:e("Back to WordPress Editor","elementor"),strings:{confirm:e("Continue","elementor"),cancel:e("Cancel","elementor")},defaultOption:"confirm",onConfirm:function onConfirm(){t.elements.$switchModeInput.val(""),t.toggleStatus()}}).show();else{t.elements.$switchModeInput.val(!0);var r=o("#title");r.val()||r.val("Elementor #"+o("#post_ID").val()),wp.autosave&&wp.autosave.server.triggerSave(),t.animateLoader(),o(document).on("heartbeat-tick.autosave",(function(){elementorCommon.elements.$window.off("beforeunload.edit-post"),location.href=t.elements.$goToEditLink.attr("href")})),t.toggleStatus()}})),t.elements.$goToEditLink.on("click",(function(){t.animateLoader()})),o(".e-notice--dismissible").on("click",".e-notice__dismiss, .e-notice-dismiss",(function(e){e.preventDefault();var t=o(this).closest(".e-notice--dismissible");o.post(ajaxurl,{action:"elementor_set_admin_notice_viewed",notice_id:t.data("notice_id")}),t.fadeTo(100,0,(function(){t.slideUp(100,(function(){t.remove()}))}))})),o("#elementor-clear-cache-button").on("click",(function(e){e.preventDefault();var t=o(this);t.removeClass("success").addClass("loading"),o.post(ajaxurl,{action:"elementor_clear_cache",_nonce:t.data("nonce")}).done((function(){t.removeClass("loading").addClass("success")}))})),o("#elementor-library-sync-button").on("click",(function(e){e.preventDefault();var t=o(this);t.removeClass("success").addClass("loading"),o.post(ajaxurl,{action:"elementor_reset_library",_nonce:t.data("nonce")}).done((function(){t.removeClass("loading").addClass("success")}))})),o("#elementor-recreate-kit-button").on("click",(function(e){e.preventDefault();var t=o(this);t.removeClass("success error").addClass("loading").next(".e-recreate-kit-error-message").remove(),o.post(ajaxurl,{action:"elementor_recreate_kit",_nonce:t.data("nonce")}).done((function(){t.removeClass("loading").addClass("success")})).fail((function(e){var n,r=e.responseJSON;t.removeClass("loading").addClass("error"),null!==(n=r.data)&&void 0!==n&&n.message&&t.after('<div class="e-recreate-kit-error-message">'.concat(r.data.message,"</div>"))}))})),o("#elementor-replace-url-button").on("click",(function(e){e.preventDefault();var t=o(this),n=t.parents("tr"),r=n.find('[name="from"]'),i=n.find('[name="to"]');t.removeClass("success").addClass("loading"),o.post(ajaxurl,{action:"elementor_replace_url",from:r.val(),to:i.val(),_nonce:t.data("nonce")}).done((function(e){t.removeClass("loading"),e.success&&t.addClass("success"),elementorCommon.dialogsManager.createWidget("alert",{message:e.data}).show()}))})),o("#elementor_upgrade_fa_button").on("click",(function(t){t.preventDefault();var n=o(this);n.addClass("loading"),elementorCommon.dialogsManager.createWidget("confirm",{id:"confirm_fa_migration_admin_modal",message:e("I understand that by upgrading to Font Awesome 5,","elementor")+"<br>"+e("I acknowledge that some changes may affect my website and that this action cannot be undone.","elementor"),headerMessage:e("Font Awesome 5 Migration","elementor"),strings:{confirm:e("Continue","elementor"),cancel:e("Cancel","elementor")},defaultOption:"confirm",onConfirm:function onConfirm(){n.removeClass("error").addClass("loading"),o.post(ajaxurl,n.data()).done((function(e){n.removeClass("loading").addClass("success"),o("#elementor_upgrade_fa_button").parent().append(e.data.message);var t=(location.search.split("redirect_to=")[1]||"").split("&")[0];t?location.href=decodeURIComponent(t):history.go(-1)})).fail((function(){n.removeClass("loading").addClass("error")}))},onCancel:function onCancel(){n.removeClass("loading").addClass("error")}}).show()})),t.elements.$settingsTabs.on({click:function click(e){e.preventDefault(),e.currentTarget.focus()},focus:function focus(){var e=location.href.replace(/#.*/,"");history.pushState({},"",e+this.hash),t.goToSettingsTabFromHash()}}),o("select.elementor-rollback-select").on("change",(function(){var e=o(this),t=e.next(".elementor-rollback-button"),n=t.data("placeholder-text"),r=t.data("placeholder-url");t.html(n.replace("{VERSION}",e.val())),t.attr("href",r.replace("VERSION",e.val()))})).trigger("change"),o(".elementor-rollback-button").on("click",(function(t){t.preventDefault();var n=o(this);elementorCommon.dialogsManager.createWidget("confirm",{headerMessage:e("Rollback to Previous Version","elementor"),message:e("Are you sure you want to reinstall previous version?","elementor"),strings:{confirm:e("Continue","elementor"),cancel:e("Cancel","elementor")},onConfirm:function onConfirm(){n.addClass("loading"),location.href=n.attr("href")}}).show()})),t.elements.$reMigrateGlobalsButton.on("click",(function(t){t.preventDefault();var n=o(t.currentTarget);elementorCommon.dialogsManager.createWidget("confirm",{headerMessage:e("Migrate to v3.0","elementor"),message:e("Please note that this process will revert all changes made to Global Colors and Fonts since upgrading to v3.x.","elementor"),strings:{confirm:e("Continue","elementor"),cancel:e("Cancel","elementor")},onConfirm:function onConfirm(){n.removeClass("success").addClass("loading"),elementorCommon.ajax.addRequest("re_migrate_globals",{success:function success(){return n.removeClass("loading").addClass("success")}})}}).show()})),o(".elementor_css_print_method select").on("change",(function(){var e=o(".elementor-css-print-method-description");e.hide(),e.filter('[data-value="'+o(this).val()+'"]').show()})).trigger("change")},onInit:function onInit(){elementorModules.ViewModule.prototype.onInit.apply(this,arguments),this.initTemplatesImport(),this.initMaintenanceMode(),this.goToSettingsTabFromHash(),this.openGetHelpInNewTab(),this.addUserAgentClasses(),this.roleManager.init(),elementorCommon.config.experimentalFeatures["landing-pages"]&&new a.default,new s.default},addUserAgentClasses:function addUserAgentClasses(){var e=document.querySelector("body");(0,r.default)(l.default).forEach((function(t){var r=(0,n.default)(t,2),o=r[0];r[1]&&e.classList.add("e--ua-"+o)}))},openGetHelpInNewTab:function openGetHelpInNewTab(){this.elements.$menuGetHelpLink.attr("target","_blank")},initTemplatesImport:function initTemplatesImport(){if(elementorCommon.elements.$body.hasClass("post-type-elementor_library")){var e=this,t=e.elements.$importButton,n=e.elements.$importArea;e.elements.$formAnchor=o(".wp-header-end"),o("#wpbody-content").find(".page-title-action").last().after(t),e.elements.$formAnchor.after(n),t.on("click",(function(){o("#elementor-import-template-area").toggle()}))}},initMaintenanceMode:function initMaintenanceMode(){var e=__webpack_require__(15511);this.maintenanceMode=new e},isElementorMode:function isElementorMode(){return!!this.elements.$switchModeInput.val()},animateLoader:function animateLoader(){this.elements.$goToEditLink.addClass("elementor-animate")},goToSettingsTabFromHash:function goToSettingsTabFromHash(){var e=location.hash.slice(1);e&&this.goToSettingsTab(e)},goToSettingsTab:function goToSettingsTab(e){var t=this.elements.$settingsFormPages;if(t.length){var n=t.filter("#"+e);this.elements.$activeSettingsPage.removeClass("elementor-active"),this.elements.$activeSettingsTab.removeClass("nav-tab-active");var r=this.elements.$settingsTabs.filter("#elementor-settings-"+e);n.addClass("elementor-active"),r.addClass("nav-tab-active"),this.elements.$settingsForm.attr("action","options.php#"+e),this.elements.$activeSettingsPage=n,this.elements.$activeSettingsTab=r}},translate:function translate(e,t){return elementorCommon.translate(e,null,t,this.config.i18n)},roleManager:{selectors:{body:"elementor-role-manager",row:".elementor-role-row",label:".elementor-role-label",excludedIndicator:".elementor-role-excluded-indicator",excludedField:'input[name="elementor_exclude_user_roles[]"]',controlsContainer:".elementor-role-controls",toggleHandle:".elementor-role-toggle",arrowUp:"dashicons-arrow-up",arrowDown:"dashicons-arrow-down"},toggle:function toggle(e){var t=this,n=e.closest(t.selectors.row),r=n.find(t.selectors.toggleHandle).find(".dashicons"),o=n.find(t.selectors.controlsContainer);o.toggleClass("hidden"),o.hasClass("hidden")?r.removeClass(t.selectors.arrowUp).addClass(t.selectors.arrowDown):r.removeClass(t.selectors.arrowDown).addClass(t.selectors.arrowUp),t.updateLabel(n)},updateLabel:function updateLabel(e){var t=this,n=e.find(t.selectors.excludedIndicator),r=e.find(t.selectors.excludedField).is(":checked");r?n.html(n.data("excluded-label")):n.html(""),t.setAdvancedState(e,r)},setAdvancedState:function setAdvancedState(e,t){e.find('input[type="checkbox"]').not(this.selectors.excludedField).each((function(e,n){o(n).prop("disabled",t)}))},bind:function bind(){var e=this;o(document).on("click",e.selectors.label+","+e.selectors.toggleHandle,(function(t){t.stopPropagation(),t.preventDefault(),e.toggle(o(this))})).on("change",e.selectors.excludedField,(function(){e.updateLabel(o(this).closest(e.selectors.row))}))},init:function init(){var e=this;o('body[class*="'+e.selectors.body+'"]').length&&(e.bind(),o(e.selectors.row).each((function(t,n){e.updateLabel(o(n))})))}}}),o((function(){window.elementorAdmin=new i,elementorCommon.elements.$window.trigger("elementor/admin/init")}))})()})();assets/js/frontend-modules.min.js000064400000033262151327220410013072 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(self.webpackChunkelementor=self.webpackChunkelementor||[]).push([[354],{7914:e=>{e.exports=function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}},e.exports.default=e.exports,e.exports.__esModule=!0},8135:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;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=>{t[n]=e.attributes[n]}))}else t=this.$element.data("elementor-settings")||{};return this.getItems(t,e)}runElementsHandlers(){this.elements.$elements.each(((e,t)=>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",(()=>{elementor.settings.page.model.on("change",this.onSettingsChange.bind(this))})):this.runElementsHandlers()}onSettingsChange(){}}t.default=_default},2821:(e,t,n)=>{"use strict";var s=n(7914);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=s(n(3090));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:()=>{this.swiper.autoplay.stop()},mouseleave:()=>{this.swiper.autoplay.start()}}):this.elements.$swiperContainer.off("mouseenter mouseleave")}handleKenBurns(){const e=this.getSettings();this.$activeImageBg&&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},3090:e=>{"use strict";e.exports=elementorModules.ViewModule.extend({$element:null,editorListeners:null,onElementChange:null,onEditSettingsChange:null,onPageSettingsChange:null,isEdit:null,__construct:function(e){this.isActive(e)&&(this.$element=e.$element,this.isEdit=this.$element.hasClass("elementor-element-edit-mode"),this.isEdit&&this.addEditorListeners())},isActive:function(){return!0},findElement:function(e){var t=this.$element;return t.find(e).filter((function(){return jQuery(this).closest(".elementor-element").is(t)}))},getUniqueHandlerID:function(e,t){return e||(e=this.getModelCID()),t||(t=this.$element),e+t.attr("data-element_type")+this.getConstructorID()},initEditorListeners:function(){var e=this;if(e.editorListeners=[{event:"element:destroy",to:elementor.channels.data,callback:function(t){t.cid===e.getModelCID()&&e.onDestroy()}}],e.onElementChange){const t=e.getWidgetType()||e.getElementType();let n="change";"global"!==t&&(n+=":"+t),e.editorListeners.push({event:n,to:elementor.channels.editor,callback:function(t,n){e.getUniqueHandlerID(n.model.cid,n.$el)===e.getUniqueHandlerID()&&e.onElementChange(t.model.get("name"),t,n)}})}e.onEditSettingsChange&&e.editorListeners.push({event:"change:editSettings",to:elementor.channels.editor,callback:function(t,n){n.model.cid===e.getModelCID()&&e.onEditSettingsChange(Object.keys(t.changed)[0])}}),["page"].forEach((function(t){var n="on"+t[0].toUpperCase()+t.slice(1)+"SettingsChange";e[n]&&e.editorListeners.push({event:"change",to:elementor.settings[t].model,callback:function(t){e[n](t.changed)}})}))},getEditorListeners:function(){return this.editorListeners||this.initEditorListeners(),this.editorListeners},addEditorListeners:function(){var e=this.getUniqueHandlerID();this.getEditorListeners().forEach((function(t){elementorFrontend.addListenerOnce(e,t.event,t.callback,t.to)}))},removeEditorListeners:function(){var e=this.getUniqueHandlerID();this.getEditorListeners().forEach((function(t){elementorFrontend.removeListeners(e,t.event,null,t.to)}))},getElementType:function(){return this.$element.data("element_type")},getWidgetType:function(){const e=this.$element.data("widget_type");if(e)return e.split(".")[0]},getID:function(){return this.$element.data("id")},getModelCID:function(){return this.$element.data("model-cid")},getElementSettings:function(e){let t={};const n=this.getModelCID();if(this.isEdit&&n){const e=elementorFrontend.config.elements.data[n],s=e.attributes;let i=s.widgetType||s.elType;s.isInner&&(i="inner-"+i);let r=elementorFrontend.config.elements.keys[i];r||(r=elementorFrontend.config.elements.keys[i]=[],jQuery.each(e.controls,((e,t)=>{t.frontend_available&&r.push(e)}))),jQuery.each(e.getActiveControls(),(function(e){if(-1!==r.indexOf(e)){let n=s[e];n.toJSON&&(n=n.toJSON()),t[e]=n}}))}else t=this.$element.data("settings")||{};return this.getItems(t,e)},getEditSettings:function(e){var t={};return this.isEdit&&(t=elementorFrontend.config.elements.editSettings[this.getModelCID()].attributes),this.getItems(t,e)},getCurrentDeviceSetting:function(e){return elementorFrontend.getCurrentDeviceSetting(this.getElementSettings(),e)},onInit:function(){this.isActive(this.getSettings())&&elementorModules.ViewModule.prototype.onInit.apply(this,arguments)},onDestroy:function(){this.isEdit&&this.removeEditorListeners(),this.unbindEvents&&this.unbindEvents()}})},6412:(e,t,n)=>{"use strict";var s=n(7914),i=s(n(5955)),r=s(n(8135)),o=s(n(5658)),l=s(n(3090)),c=s(n(2821));i.default.frontend={Document:r.default,tools:{StretchElement:o.default},handlers:{Base:l.default,SwiperBase:c.default}}},5658:e=>{"use strict";e.exports=elementorModules.ViewModule.extend({getDefaultSettings:function(){return{element:null,direction:elementorFrontend.config.is_rtl?"right":"left",selectors:{container:window}}},getDefaultElements:function(){return{$element:jQuery(this.getSettings("element"))}},stretch:function(){var e,t=this.getSettings("selectors.container");try{e=jQuery(t)}catch(e){}e&&e.length||(e=jQuery(this.getDefaultSettings().selectors.container)),this.reset();var n=this.elements.$element,s=e.innerWidth(),i=n.offset().left,r="fixed"===n.css("position"),o=r?0:i;if(window!==e[0]){var l=e.offset().left;r&&(o=l),i>l&&(o=i-l)}r||(elementorFrontend.config.is_rtl&&(o=s-(n.outerWidth()+o)),o=-o);var c={};c.width=s+"px",c[this.getSettings("direction")]=o+"px",n.css(c)},reset:function(){var e={width:""};e[this.getSettings("direction")]="",this.elements.$element.css(e)}})},2618:(e,t,n)=>{"use strict";var s=n(7914);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=s(n(7597));class ArgsObject extends i.default{static getInstanceType(){return"ArgsObject"}constructor(e){super(),this.args=e}requireArgument(e,t=this.args){if(!t.hasOwnProperty(e))throw Error(`${e} is required.`)}requireArgumentType(e,t,n=this.args){if(this.requireArgument(e,n),typeof n[e]!==t)throw Error(`${e} invalid type: ${t}.`)}requireArgumentInstance(e,t,n=this.args){if(this.requireArgument(e,n),!(n[e]instanceof t))throw Error(`${e} invalid instance.`)}requireArgumentConstructor(e,t,n=this.args){if(this.requireArgument(e,n),n[e].constructor!==t)throw Error(`${e} invalid constructor type.`)}}t.default=ArgsObject},869:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.ForceMethodImplementation=void 0;class ForceMethodImplementation extends Error{constructor(e={}){super(`${e.isStatic?"static ":""}${e.fullName}() should be implemented, please provide '${e.functionName||e.fullName}' functionality.`),Error.captureStackTrace(this,ForceMethodImplementation)}}t.ForceMethodImplementation=ForceMethodImplementation;t.default=()=>{const e=Error().stack.split("\n")[2].trim(),t=e.startsWith("at new")?"constructor":e.split(" ")[1],n={};if(n.functionName=t,n.fullName=t,n.functionName.includes(".")){const e=n.functionName.split(".");n.className=e[0],n.functionName=e[1]}else n.isStatic=!0;throw new ForceMethodImplementation(n)}},7597:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class InstanceType{static[Symbol.hasInstance](e){let t=super[Symbol.hasInstance](e);if(e&&!e.constructor.getInstanceType)return t;if(e&&(e.instanceTypes||(e.instanceTypes=[]),t||this.getInstanceType()===e.constructor.getInstanceType()&&(t=!0),t)){const t=this.getInstanceType===InstanceType.getInstanceType?"BaseInstanceType":this.getInstanceType();-1===e.instanceTypes.indexOf(t)&&e.instanceTypes.push(t)}return!t&&e&&(t=e.instanceTypes&&Array.isArray(e.instanceTypes)&&-1!==e.instanceTypes.indexOf(this.getInstanceType())),t}constructor(){let e=new.target;const t=[];for(;e.__proto__&&e.__proto__.name;)t.push(e.__proto__),e=e.__proto__;t.reverse().forEach((e=>this instanceof e))}static getInstanceType(){elementorModules.ForceMethodImplementation()}}t.default=InstanceType},1192:e=>{"use strict";const Module=function(){const e=jQuery,t=arguments,n=this,s={};let i;const ensureClosureMethods=function(){e.each(n,(function(e){const t=n[e];"function"==typeof t&&(n[e]=function(){return t.apply(n,arguments)})}))},initSettings=function(){i=n.getDefaultSettings();const s=t[0];s&&e.extend(!0,i,s)},init=function(){n.__construct.apply(n,t),ensureClosureMethods(),initSettings(),n.trigger("init")};this.getItems=function(e,t){if(t){const n=t.split("."),s=n.splice(0,1);if(!n.length)return e[s];if(!e[s])return;return this.getItems(e[s],n.join("."))}return e},this.getSettings=function(e){return this.getItems(i,e)},this.setSettings=function(t,s,r){if(r||(r=i),"object"==typeof t)return e.extend(r,t),n;const o=t.split("."),l=o.splice(0,1);return o.length?(r[l]||(r[l]={}),n.setSettings(o.join("."),s,r[l])):(r[l]=s,n)},this.getErrorMessage=function(e,t){let n;switch(e){case"forceMethodImplementation":n=`The method '${t}' must to be implemented in the inheritor child.`;break;default: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){s[e]||(s[e]=[]),s[e].push(i)})),n},this.off=function(e,t){if(!s[e])return n;if(!t)return delete s[e],n;const i=s[e].indexOf(t);return-1!==i&&(delete s[e][i],s[e]=s[e].filter((e=>e))),n},this.trigger=function(t){const i="on"+t[0].toUpperCase()+t.slice(1),r=Array.prototype.slice.call(arguments,1);n[i]&&n[i].apply(n,r);const o=s[t];return o?(e.each(o,(function(e,t){t.apply(n,r)})),n):n},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},6516:(e,t,n)=>{"use strict";var s=n(7914)(n(2640));e.exports=s.default.extend({getDefaultSettings:function(){return{container:null,items:null,columnsCount:3,verticalSpaceBetween:30}},getDefaultElements:function(){return{$container:jQuery(this.getSettings("container")),$items:jQuery(this.getSettings("items"))}},run:function(){var e=[],t=this.elements.$container.position().top,n=this.getSettings(),s=n.columnsCount;t+=parseInt(this.elements.$container.css("margin-top"),10),this.elements.$items.each((function(i){var r=Math.floor(i/s),o=jQuery(this),l=o[0].getBoundingClientRect().height+n.verticalSpaceBetween;if(r){var c=o.position(),a=i%s,u=c.top-t-e[a];u-=parseInt(o.css("margin-top"),10),u*=-1,o.css("margin-top",u+"px"),e[a]+=l}else e.push(l)}))}})},400:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=class Scroll{static scrollObserver(e){let t=0;const n={root:e.root||null,rootMargin:e.offset||"0px",threshold:((e=0)=>{const t=[];if(e>0&&e<=100){const n=100/e;for(let e=0;e<=100;e+=n)t.push(e/100)}else t.push(0);return t})(e.sensitivity)};return new IntersectionObserver((function handleIntersect(n,s){const i=n[0].boundingClientRect.y,r=n[0].isIntersecting,o=i<t?"down":"up",l=Math.abs(parseFloat((100*n[0].intersectionRatio).toFixed(2)));e.callback({sensitivity:e.sensitivity,isInViewport:r,scrollPercentage:l,intersectionScrollDirection:o}),t=i}),n)}static getElementViewportPercentage(e,t={}){const n=e[0].getBoundingClientRect(),s=t.start||0,i=t.end||0,r=window.innerHeight*s/100,o=window.innerHeight*i/100,l=n.top-window.innerHeight,c=0-l+r,a=n.top+r+e.height()-l+o,u=Math.max(0,Math.min(c/a,1));return parseFloat((100*u).toFixed(2))}static getPageScrollPercentage(e={},t){const n=e.start||0,s=e.end||0,i=t||document.documentElement.scrollHeight-document.documentElement.clientHeight,r=i*n/100,o=i+r+i*s/100;return(document.documentElement.scrollTop+document.body.scrollTop+r)/o*100}}},2640:(e,t,n)=>{"use strict";var s=n(7914)(n(1192));e.exports=s.default.extend({elements:null,getDefaultElements:function(){return{}},bindEvents:function(){},onInit:function(){this.initElements(),this.bindEvents()},initElements:function(){this.elements=this.getDefaultElements()}})},5955:(e,t,n)=>{"use strict";var s=n(7914);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var i=s(n(1192)),r=s(n(2640)),o=s(n(2618)),l=s(n(6516)),c=s(n(400)),a=s(n(869)),u=window.elementorModules={Module:i.default,ViewModule:r.default,ArgsObject:o.default,ForceMethodImplementation:a.default,utils:{Masonry:l.default,Scroll:c.default}};t.default=u}},e=>{"use strict";var t;t=6412,e(e.s=t)}]);assets/js/video.505da250f982d8f15187.bundle.min.js000064400000006374151327220410014654 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(self.webpackChunkelementor=self.webpackChunkelementor||[]).push([[791],{5363:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class Video extends elementorModules.frontend.handlers.Base{getDefaultSettings(){return{selectors:{imageOverlay:".elementor-custom-embed-image-overlay",video:".elementor-video",videoIframe:".elementor-video-iframe"}}}getDefaultElements(){const e=this.getSettings("selectors");return{$imageOverlay:this.$element.find(e.imageOverlay),$video:this.$element.find(e.video),$videoIframe:this.$element.find(e.videoIframe)}}handleVideo(){this.getElementSettings("lightbox")||("youtube"===this.getElementSettings("video_type")?this.apiProvider.onApiReady((e=>{this.elements.$imageOverlay.remove(),this.prepareYTVideo(e,!0)})):(this.elements.$imageOverlay.remove(),this.playVideo()))}playVideo(){if(this.elements.$video.length)return void(this.youtubePlayer?this.youtubePlayer.playVideo():this.elements.$video[0].play());const e=this.elements.$videoIframe,t=e.data("lazy-load");t&&e.attr("src",t),e[0].src=this.apiProvider.getAutoplayURL(e[0].src)}async animateVideo(){(await elementorFrontend.utils.lightbox).setEntranceAnimation(this.getCurrentDeviceSetting("lightbox_content_animation"))}async handleAspectRatio(){(await elementorFrontend.utils.lightbox).setVideoAspectRatio(this.getElementSettings("aspect_ratio"))}async hideLightbox(){(await elementorFrontend.utils.lightbox).getModal().hide()}prepareYTVideo(e,t){const i=this.getElementSettings(),o={videoId:this.videoID,events:{onReady:()=>{i.mute&&this.youtubePlayer.mute(),(i.autoplay||t)&&this.youtubePlayer.playVideo()},onStateChange:t=>{t.data===e.PlayerState.ENDED&&i.loop&&this.youtubePlayer.seekTo(i.start||0)}},playerVars:{controls:i.controls?1:0,rel:i.rel?1:0,playsinline:i.play_on_mobile?1:0,modestbranding:i.modestbranding?1:0,autoplay:i.autoplay?1:0,start:i.start,end:i.end}};i.yt_privacy&&(o.host="https://www.youtube-nocookie.com",o.origin=window.location.hostname),this.youtubePlayer=new e.Player(this.elements.$video[0],o)}bindEvents(){this.elements.$imageOverlay.on("click",this.handleVideo.bind(this))}onInit(){super.onInit();const e=this.getElementSettings();if(elementorFrontend.utils[e.video_type]?this.apiProvider=elementorFrontend.utils[e.video_type]:this.apiProvider=elementorFrontend.utils.baseVideoLoader,"youtube"===e.video_type&&(this.videoID=this.apiProvider.getVideoIDFromURL(e.youtube_url),this.videoID&&(!e.show_image_overlay||!e.image_overlay.url)))return e.lazy_load?(this.intersectionObserver=elementorModules.utils.Scroll.scrollObserver({callback:e=>{e.isInViewport&&(this.intersectionObserver.unobserve(this.elements.$video.parent()[0]),this.apiProvider.onApiReady((e=>this.prepareYTVideo(e))))}}),void this.intersectionObserver.observe(this.elements.$video.parent()[0])):void(elementorFrontend.config.experimentalFeatures.e_optimized_assets_loading?this.apiProvider.onApiReady((e=>this.prepareYTVideo(e))):setTimeout((()=>{this.apiProvider.onApiReady((e=>this.prepareYTVideo(e)))}),0))}onElementChange(e){if(0===e.indexOf("lightbox_content_animation"))return void this.animateVideo();const t=this.getElementSettings("lightbox");"lightbox"!==e||t?"aspect_ratio"===e&&t&&this.handleAspectRatio():this.hideLightbox()}}t.default=Video}}]);assets/js/editor-document.js000064400003560571151327220410012140 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
/******/ (() => { // webpackBootstrap
/******/ 	var __webpack_modules__ = ({

/***/ "../node_modules/@babel/runtime-corejs2/core-js/array/from.js":
/*!********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/array/from.js ***!
  \********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/array/from */ "../node_modules/core-js/library/fn/array/from.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/array/is-array */ "../node_modules/core-js/library/fn/array/is-array.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/map.js":
/*!*************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/map.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/map */ "../node_modules/core-js/library/fn/map.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/assign.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/assign.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/assign */ "../node_modules/core-js/library/fn/object/assign.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/create.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/create.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/create */ "../node_modules/core-js/library/fn/object/create.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/define-properties.js":
/*!**********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/define-properties.js ***!
  \**********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/define-properties */ "../node_modules/core-js/library/fn/object/define-properties.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js":
/*!********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js ***!
  \********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/define-property */ "../node_modules/core-js/library/fn/object/define-property.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/entries.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/entries */ "../node_modules/core-js/library/fn/object/entries.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js":
/*!********************************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js ***!
  \********************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/get-own-property-descriptor */ "../node_modules/core-js/library/fn/object/get-own-property-descriptor.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptors.js":
/*!*********************************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptors.js ***!
  \*********************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/get-own-property-descriptors */ "../node_modules/core-js/library/fn/object/get-own-property-descriptors.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-symbols.js":
/*!*****************************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-symbols.js ***!
  \*****************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/get-own-property-symbols */ "../node_modules/core-js/library/fn/object/get-own-property-symbols.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/get-prototype-of.js":
/*!*********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/get-prototype-of.js ***!
  \*********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/get-prototype-of */ "../node_modules/core-js/library/fn/object/get-prototype-of.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/keys.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/keys */ "../node_modules/core-js/library/fn/object/keys.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js":
/*!*********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js ***!
  \*********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/set-prototype-of */ "../node_modules/core-js/library/fn/object/set-prototype-of.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/values.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/values */ "../node_modules/core-js/library/fn/object/values.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/parse-int.js":
/*!*******************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/parse-int.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/parse-int */ "../node_modules/core-js/library/fn/parse-int.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/promise.js":
/*!*****************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/promise.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/promise */ "../node_modules/core-js/library/fn/promise.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js":
/*!***************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js ***!
  \***************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/reflect/construct */ "../node_modules/core-js/library/fn/reflect/construct.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/reflect/get.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/reflect/get.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/reflect/get */ "../node_modules/core-js/library/fn/reflect/get.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js":
/*!****************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/symbol.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/symbol */ "../node_modules/core-js/library/fn/symbol/index.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/symbol/has-instance.js":
/*!*****************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/symbol/has-instance.js ***!
  \*****************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/symbol/has-instance */ "../node_modules/core-js/library/fn/symbol/has-instance.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js":
/*!*************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js ***!
  \*************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/symbol/iterator */ "../node_modules/core-js/library/fn/symbol/iterator.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/weak-map.js":
/*!******************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/weak-map.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/weak-map */ "../node_modules/core-js/library/fn/weak-map.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/arrayLikeToArray.js":
/*!**************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/arrayLikeToArray.js ***!
  \**************************************************************************/
/***/ ((module) => {

function _arrayLikeToArray(arr, len) {
  if (len == null || len > arr.length) len = arr.length;

  for (var i = 0, arr2 = new Array(len); i < len; i++) {
    arr2[i] = arr[i];
  }

  return arr2;
}

module.exports = _arrayLikeToArray;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/arrayWithHoles.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/arrayWithHoles.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Array$isArray = __webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js");

function _arrayWithHoles(arr) {
  if (_Array$isArray(arr)) return arr;
}

module.exports = _arrayWithHoles;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js":
/*!*******************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js ***!
  \*******************************************************************************/
/***/ ((module) => {

function _assertThisInitialized(self) {
  if (self === void 0) {
    throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
  }

  return self;
}

module.exports = _assertThisInitialized;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/asyncToGenerator.js":
/*!**************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/asyncToGenerator.js ***!
  \**************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Promise = __webpack_require__(/*! @babel/runtime-corejs2/core-js/promise */ "../node_modules/@babel/runtime-corejs2/core-js/promise.js");

function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
  try {
    var info = gen[key](arg);
    var value = info.value;
  } catch (error) {
    reject(error);
    return;
  }

  if (info.done) {
    resolve(value);
  } else {
    _Promise.resolve(value).then(_next, _throw);
  }
}

function _asyncToGenerator(fn) {
  return function () {
    var self = this,
        args = arguments;
    return new _Promise(function (resolve, reject) {
      var gen = fn.apply(self, args);

      function _next(value) {
        asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
      }

      function _throw(err) {
        asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
      }

      _next(undefined);
    });
  };
}

module.exports = _asyncToGenerator;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js ***!
  \************************************************************************/
/***/ ((module) => {

function _classCallCheck(instance, Constructor) {
  if (!(instance instanceof Constructor)) {
    throw new TypeError("Cannot call a class as a function");
  }
}

module.exports = _classCallCheck;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/construct.js":
/*!*******************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/construct.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Reflect$construct = __webpack_require__(/*! @babel/runtime-corejs2/core-js/reflect/construct */ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js");

var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js");

var isNativeReflectConstruct = __webpack_require__(/*! ./isNativeReflectConstruct.js */ "../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js");

function _construct(Parent, args, Class) {
  if (isNativeReflectConstruct()) {
    module.exports = _construct = _Reflect$construct;
    module.exports.default = module.exports, module.exports.__esModule = true;
  } else {
    module.exports = _construct = function _construct(Parent, args, Class) {
      var a = [null];
      a.push.apply(a, args);
      var Constructor = Function.bind.apply(Parent, a);
      var instance = new Constructor();
      if (Class) setPrototypeOf(instance, Class.prototype);
      return instance;
    };

    module.exports.default = module.exports, module.exports.__esModule = true;
  }

  return _construct.apply(null, arguments);
}

module.exports = _construct;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/createClass.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

function _defineProperties(target, props) {
  for (var i = 0; i < props.length; i++) {
    var descriptor = props[i];
    descriptor.enumerable = descriptor.enumerable || false;
    descriptor.configurable = true;
    if ("value" in descriptor) descriptor.writable = true;

    _Object$defineProperty(target, descriptor.key, descriptor);
  }
}

function _createClass(Constructor, protoProps, staticProps) {
  if (protoProps) _defineProperties(Constructor.prototype, protoProps);
  if (staticProps) _defineProperties(Constructor, staticProps);
  return Constructor;
}

module.exports = _createClass;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/createSuper.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Reflect$construct = __webpack_require__(/*! @babel/runtime-corejs2/core-js/reflect/construct */ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js");

var getPrototypeOf = __webpack_require__(/*! ./getPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js");

var isNativeReflectConstruct = __webpack_require__(/*! ./isNativeReflectConstruct.js */ "../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js");

var possibleConstructorReturn = __webpack_require__(/*! ./possibleConstructorReturn.js */ "../node_modules/@babel/runtime-corejs2/helpers/possibleConstructorReturn.js");

function _createSuper(Derived) {
  var hasNativeReflectConstruct = isNativeReflectConstruct();
  return function _createSuperInternal() {
    var Super = getPrototypeOf(Derived),
        result;

    if (hasNativeReflectConstruct) {
      var NewTarget = getPrototypeOf(this).constructor;
      result = _Reflect$construct(Super, arguments, NewTarget);
    } else {
      result = Super.apply(this, arguments);
    }

    return possibleConstructorReturn(this, result);
  };
}

module.exports = _createSuper;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

function _defineProperty(obj, key, value) {
  if (key in obj) {
    _Object$defineProperty(obj, key, {
      value: value,
      enumerable: true,
      configurable: true,
      writable: true
    });
  } else {
    obj[key] = value;
  }

  return obj;
}

module.exports = _defineProperty;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/get.js":
/*!*************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/get.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Reflect$get = __webpack_require__(/*! @babel/runtime-corejs2/core-js/reflect/get */ "../node_modules/@babel/runtime-corejs2/core-js/reflect/get.js");

var _Object$getOwnPropertyDescriptor = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-own-property-descriptor */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js");

var superPropBase = __webpack_require__(/*! ./superPropBase.js */ "../node_modules/@babel/runtime-corejs2/helpers/superPropBase.js");

function _get(target, property, receiver) {
  if (typeof Reflect !== "undefined" && _Reflect$get) {
    module.exports = _get = _Reflect$get;
    module.exports.default = module.exports, module.exports.__esModule = true;
  } else {
    module.exports = _get = function _get(target, property, receiver) {
      var base = superPropBase(target, property);
      if (!base) return;

      var desc = _Object$getOwnPropertyDescriptor(base, property);

      if (desc.get) {
        return desc.get.call(receiver);
      }

      return desc.value;
    };

    module.exports.default = module.exports, module.exports.__esModule = true;
  }

  return _get(target, property, receiver || target);
}

module.exports = _get;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$setPrototypeOf = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/set-prototype-of */ "../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js");

var _Object$getPrototypeOf = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-prototype-of */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-prototype-of.js");

function _getPrototypeOf(o) {
  module.exports = _getPrototypeOf = _Object$setPrototypeOf ? _Object$getPrototypeOf : function _getPrototypeOf(o) {
    return o.__proto__ || _Object$getPrototypeOf(o);
  };
  module.exports.default = module.exports, module.exports.__esModule = true;
  return _getPrototypeOf(o);
}

module.exports = _getPrototypeOf;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js":
/*!******************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/inherits.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$create = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/create */ "../node_modules/@babel/runtime-corejs2/core-js/object/create.js");

var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js");

function _inherits(subClass, superClass) {
  if (typeof superClass !== "function" && superClass !== null) {
    throw new TypeError("Super expression must either be null or a function");
  }

  subClass.prototype = _Object$create(superClass && superClass.prototype, {
    constructor: {
      value: subClass,
      writable: true,
      configurable: true
    }
  });
  if (superClass) setPrototypeOf(subClass, superClass);
}

module.exports = _inherits;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js":
/*!*******************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js ***!
  \*******************************************************************************/
/***/ ((module) => {

function _interopRequireDefault(obj) {
  return obj && obj.__esModule ? obj : {
    "default": obj
  };
}

module.exports = _interopRequireDefault;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js":
/*!********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js ***!
  \********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _typeof = __webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js").default;

var _WeakMap = __webpack_require__(/*! @babel/runtime-corejs2/core-js/weak-map */ "../node_modules/@babel/runtime-corejs2/core-js/weak-map.js");

var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _Object$getOwnPropertyDescriptor = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-own-property-descriptor */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js");

function _getRequireWildcardCache(nodeInterop) {
  if (typeof _WeakMap !== "function") return null;
  var cacheBabelInterop = new _WeakMap();
  var cacheNodeInterop = new _WeakMap();
  return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) {
    return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
  })(nodeInterop);
}

function _interopRequireWildcard(obj, nodeInterop) {
  if (!nodeInterop && obj && obj.__esModule) {
    return obj;
  }

  if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") {
    return {
      "default": obj
    };
  }

  var cache = _getRequireWildcardCache(nodeInterop);

  if (cache && cache.has(obj)) {
    return cache.get(obj);
  }

  var newObj = {};
  var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor;

  for (var key in obj) {
    if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
      var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null;

      if (desc && (desc.get || desc.set)) {
        _Object$defineProperty(newObj, key, desc);
      } else {
        newObj[key] = obj[key];
      }
    }
  }

  newObj["default"] = obj;

  if (cache) {
    cache.set(obj, newObj);
  }

  return newObj;
}

module.exports = _interopRequireWildcard;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/isNativeFunction.js":
/*!**************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/isNativeFunction.js ***!
  \**************************************************************************/
/***/ ((module) => {

function _isNativeFunction(fn) {
  return Function.toString.call(fn).indexOf("[native code]") !== -1;
}

module.exports = _isNativeFunction;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js":
/*!**********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js ***!
  \**********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Reflect$construct = __webpack_require__(/*! @babel/runtime-corejs2/core-js/reflect/construct */ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js");

function _isNativeReflectConstruct() {
  if (typeof Reflect === "undefined" || !_Reflect$construct) return false;
  if (_Reflect$construct.sham) return false;
  if (typeof Proxy === "function") return true;

  try {
    Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {}));
    return true;
  } catch (e) {
    return false;
  }
}

module.exports = _isNativeReflectConstruct;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/iterableToArrayLimit.js":
/*!******************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/iterableToArrayLimit.js ***!
  \******************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Symbol = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol */ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js");

var _Symbol$iterator = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/iterator */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js");

function _iterableToArrayLimit(arr, i) {
  var _i = arr == null ? null : typeof _Symbol !== "undefined" && arr[_Symbol$iterator] || arr["@@iterator"];

  if (_i == null) return;
  var _arr = [];
  var _n = true;
  var _d = false;

  var _s, _e;

  try {
    for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {
      _arr.push(_s.value);

      if (i && _arr.length === i) break;
    }
  } catch (err) {
    _d = true;
    _e = err;
  } finally {
    try {
      if (!_n && _i["return"] != null) _i["return"]();
    } finally {
      if (_d) throw _e;
    }
  }

  return _arr;
}

module.exports = _iterableToArrayLimit;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/nonIterableRest.js":
/*!*************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/nonIterableRest.js ***!
  \*************************************************************************/
/***/ ((module) => {

function _nonIterableRest() {
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
}

module.exports = _nonIterableRest;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$keys = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js");

var _Object$getOwnPropertySymbols = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-own-property-symbols */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-symbols.js");

var _Object$getOwnPropertyDescriptor = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-own-property-descriptor */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js");

var _Object$getOwnPropertyDescriptors = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-own-property-descriptors */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptors.js");

var _Object$defineProperties = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-properties */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-properties.js");

var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var defineProperty = __webpack_require__(/*! ./defineProperty.js */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js");

function ownKeys(object, enumerableOnly) {
  var keys = _Object$keys(object);

  if (_Object$getOwnPropertySymbols) {
    var symbols = _Object$getOwnPropertySymbols(object);

    if (enumerableOnly) {
      symbols = symbols.filter(function (sym) {
        return _Object$getOwnPropertyDescriptor(object, sym).enumerable;
      });
    }

    keys.push.apply(keys, symbols);
  }

  return keys;
}

function _objectSpread2(target) {
  for (var i = 1; i < arguments.length; i++) {
    var source = arguments[i] != null ? arguments[i] : {};

    if (i % 2) {
      ownKeys(Object(source), true).forEach(function (key) {
        defineProperty(target, key, source[key]);
      });
    } else if (_Object$getOwnPropertyDescriptors) {
      _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source));
    } else {
      ownKeys(Object(source)).forEach(function (key) {
        _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key));
      });
    }
  }

  return target;
}

module.exports = _objectSpread2;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/possibleConstructorReturn.js":
/*!***********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/possibleConstructorReturn.js ***!
  \***********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _typeof = __webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js").default;

var assertThisInitialized = __webpack_require__(/*! ./assertThisInitialized.js */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js");

function _possibleConstructorReturn(self, call) {
  if (call && (_typeof(call) === "object" || typeof call === "function")) {
    return call;
  }

  return assertThisInitialized(self);
}

module.exports = _possibleConstructorReturn;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$setPrototypeOf = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/set-prototype-of */ "../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js");

function _setPrototypeOf(o, p) {
  module.exports = _setPrototypeOf = _Object$setPrototypeOf || function _setPrototypeOf(o, p) {
    o.__proto__ = p;
    return o;
  };

  module.exports.default = module.exports, module.exports.__esModule = true;
  return _setPrototypeOf(o, p);
}

module.exports = _setPrototypeOf;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var arrayWithHoles = __webpack_require__(/*! ./arrayWithHoles.js */ "../node_modules/@babel/runtime-corejs2/helpers/arrayWithHoles.js");

var iterableToArrayLimit = __webpack_require__(/*! ./iterableToArrayLimit.js */ "../node_modules/@babel/runtime-corejs2/helpers/iterableToArrayLimit.js");

var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js");

var nonIterableRest = __webpack_require__(/*! ./nonIterableRest.js */ "../node_modules/@babel/runtime-corejs2/helpers/nonIterableRest.js");

function _slicedToArray(arr, i) {
  return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();
}

module.exports = _slicedToArray;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/superPropBase.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/superPropBase.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var getPrototypeOf = __webpack_require__(/*! ./getPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js");

function _superPropBase(object, property) {
  while (!Object.prototype.hasOwnProperty.call(object, property)) {
    object = getPrototypeOf(object);
    if (object === null) break;
  }

  return object;
}

module.exports = _superPropBase;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js":
/*!****************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/typeof.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Symbol = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol */ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js");

var _Symbol$iterator = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/iterator */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js");

function _typeof(obj) {
  "@babel/helpers - typeof";

  if (typeof _Symbol === "function" && typeof _Symbol$iterator === "symbol") {
    module.exports = _typeof = function _typeof(obj) {
      return typeof obj;
    };

    module.exports.default = module.exports, module.exports.__esModule = true;
  } else {
    module.exports = _typeof = function _typeof(obj) {
      return obj && typeof _Symbol === "function" && obj.constructor === _Symbol && obj !== _Symbol.prototype ? "symbol" : typeof obj;
    };

    module.exports.default = module.exports, module.exports.__esModule = true;
  }

  return _typeof(obj);
}

module.exports = _typeof;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js":
/*!************************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js ***!
  \************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Array$from = __webpack_require__(/*! @babel/runtime-corejs2/core-js/array/from */ "../node_modules/@babel/runtime-corejs2/core-js/array/from.js");

var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/arrayLikeToArray.js");

function _unsupportedIterableToArray(o, minLen) {
  if (!o) return;
  if (typeof o === "string") return arrayLikeToArray(o, minLen);
  var n = Object.prototype.toString.call(o).slice(8, -1);
  if (n === "Object" && o.constructor) n = o.constructor.name;
  if (n === "Map" || n === "Set") return _Array$from(o);
  if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);
}

module.exports = _unsupportedIterableToArray;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/wrapNativeSuper.js":
/*!*************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/wrapNativeSuper.js ***!
  \*************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Map = __webpack_require__(/*! @babel/runtime-corejs2/core-js/map */ "../node_modules/@babel/runtime-corejs2/core-js/map.js");

var _Object$create = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/create */ "../node_modules/@babel/runtime-corejs2/core-js/object/create.js");

var getPrototypeOf = __webpack_require__(/*! ./getPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js");

var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js");

var isNativeFunction = __webpack_require__(/*! ./isNativeFunction.js */ "../node_modules/@babel/runtime-corejs2/helpers/isNativeFunction.js");

var construct = __webpack_require__(/*! ./construct.js */ "../node_modules/@babel/runtime-corejs2/helpers/construct.js");

function _wrapNativeSuper(Class) {
  var _cache = typeof _Map === "function" ? new _Map() : undefined;

  module.exports = _wrapNativeSuper = function _wrapNativeSuper(Class) {
    if (Class === null || !isNativeFunction(Class)) return Class;

    if (typeof Class !== "function") {
      throw new TypeError("Super expression must either be null or a function");
    }

    if (typeof _cache !== "undefined") {
      if (_cache.has(Class)) return _cache.get(Class);

      _cache.set(Class, Wrapper);
    }

    function Wrapper() {
      return construct(Class, arguments, getPrototypeOf(this).constructor);
    }

    Wrapper.prototype = _Object$create(Class.prototype, {
      constructor: {
        value: Wrapper,
        enumerable: false,
        writable: true,
        configurable: true
      }
    });
    return setPrototypeOf(Wrapper, Class);
  };

  module.exports.default = module.exports, module.exports.__esModule = true;
  return _wrapNativeSuper(Class);
}

module.exports = _wrapNativeSuper;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime/regenerator/index.js":
/*!***********************************************************!*\
  !*** ../node_modules/@babel/runtime/regenerator/index.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! regenerator-runtime */ "../node_modules/regenerator-runtime/runtime.js");


/***/ }),

/***/ "../assets/dev/js/editor/components/validator/base.js":
/*!************************************************************!*\
  !*** ../assets/dev/js/editor/components/validator/base.js ***!
  \************************************************************/
/***/ ((module) => {

"use strict";


module.exports = elementorModules.Module.extend({
  errors: [],
  __construct: function __construct(settings) {
    var customValidationMethod = settings.customValidationMethod;

    if (customValidationMethod) {
      this.validationMethod = customValidationMethod;
    }
  },
  getDefaultSettings: function getDefaultSettings() {
    return {
      validationTerms: {}
    };
  },
  isValid: function isValid() {
    var validationErrors = this.validationMethod.apply(this, arguments);

    if (validationErrors.length) {
      this.errors = validationErrors;
      return false;
    }

    return true;
  },
  validationMethod: function validationMethod(newValue) {
    var validationTerms = this.getSettings('validationTerms'),
        errors = [];

    if (validationTerms.required) {
      if (!('' + newValue).length) {
        errors.push('Required value is empty');
      }
    }

    return errors;
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/data/globals/base/create-base.js":
/*!****************************************************************!*\
  !*** ../assets/dev/js/editor/data/globals/base/create-base.js ***!
  \****************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var CreateBase = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(CreateBase, _CommandBase);

  var _super = (0, _createSuper2.default)(CreateBase);

  function CreateBase() {
    (0, _classCallCheck2.default)(this, CreateBase);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(CreateBase, [{
    key: "validateArgs",
    value: function validateArgs() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      this.requireContainer(args);
      this.requireArgumentType('setting', 'string', args);
      this.requireArgumentType('title', 'string', args);
    }
  }]);
  return CreateBase;
}(_commandBase.default);

exports.default = CreateBase;

/***/ }),

/***/ "../assets/dev/js/editor/data/globals/colors/commands/create.js":
/*!**********************************************************************!*\
  !*** ../assets/dev/js/editor/data/globals/colors/commands/create.js ***!
  \**********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.Create = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _createBase = _interopRequireDefault(__webpack_require__(/*! elementor-editor/data/globals/base/create-base */ "../assets/dev/js/editor/data/globals/base/create-base.js"));

var Create = /*#__PURE__*/function (_CreateBase) {
  (0, _inherits2.default)(Create, _CreateBase);

  var _super = (0, _createSuper2.default)(Create);

  function Create() {
    (0, _classCallCheck2.default)(this, Create);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Create, [{
    key: "apply",
    value: function apply() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      var container = args.container,
          setting = args.setting,
          title = args.title,
          controls = container.controls;
      var result = false;

      if (!controls[setting]) {
        throw new Error("Invalid setting: control '".concat(setting, "', not found."));
      } // `args.id` used by tests.


      var id = args.id || elementorCommon.helpers.getUniqueId();
      result = $e.data.create("globals/colors?id=".concat(id), {
        title: title,
        value: container.settings.get(setting)
      });
      return result;
    }
  }]);
  return Create;
}(_createBase.default);

exports.Create = Create;

/***/ }),

/***/ "../assets/dev/js/editor/data/globals/colors/commands/index.js":
/*!*********************************************************************!*\
  !*** ../assets/dev/js/editor/data/globals/colors/commands/index.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "Create", {
  enumerable: true,
  get: function get() {
    return _create.Create;
  }
});

var _create = __webpack_require__(/*! ./create */ "../assets/dev/js/editor/data/globals/colors/commands/create.js");

/***/ }),

/***/ "../assets/dev/js/editor/data/globals/colors/component.js":
/*!****************************************************************!*\
  !*** ../assets/dev/js/editor/data/globals/colors/component.js ***!
  \****************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _componentBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-base */ "../core/common/assets/js/api/modules/component-base.js"));

var commands = _interopRequireWildcard(__webpack_require__(/*! ./commands/ */ "../assets/dev/js/editor/data/globals/colors/commands/index.js"));

var Component = /*#__PURE__*/function (_ComponentBase) {
  (0, _inherits2.default)(Component, _ComponentBase);

  var _super = (0, _createSuper2.default)(Component);

  function Component() {
    (0, _classCallCheck2.default)(this, Component);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Component, [{
    key: "getNamespace",
    value: function getNamespace() {
      return 'globals/colors';
    }
  }, {
    key: "defaultCommands",
    value: function defaultCommands() {
      return this.importCommands(commands);
    }
  }]);
  return Component;
}(_componentBase.default);

exports.default = Component;

/***/ }),

/***/ "../assets/dev/js/editor/data/globals/commands/data/colors.js":
/*!********************************************************************!*\
  !*** ../assets/dev/js/editor/data/globals/commands/data/colors.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Colors = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandData = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-data */ "../core/common/assets/js/api/modules/command-data.js"));

var Colors = /*#__PURE__*/function (_CommandData) {
  (0, _inherits2.default)(Colors, _CommandData);

  var _super = (0, _createSuper2.default)(Colors);

  function Colors() {
    (0, _classCallCheck2.default)(this, Colors);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Colors, null, [{
    key: "getEndpointFormat",
    value: function getEndpointFormat() {
      return 'globals/colors/{id}';
    }
  }]);
  return Colors;
}(_commandData.default);

exports.Colors = Colors;
var _default = Colors;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/data/globals/commands/data/index.js":
/*!*******************************************************************!*\
  !*** ../assets/dev/js/editor/data/globals/commands/data/index.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "Colors", {
  enumerable: true,
  get: function get() {
    return _colors.Colors;
  }
});

_Object$defineProperty(exports, "Typography", {
  enumerable: true,
  get: function get() {
    return _typography.Typography;
  }
});

exports.Index = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandData = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-data */ "../core/common/assets/js/api/modules/command-data.js"));

var _colors = __webpack_require__(/*! ./colors */ "../assets/dev/js/editor/data/globals/commands/data/colors.js");

var _typography = __webpack_require__(/*! ./typography */ "../assets/dev/js/editor/data/globals/commands/data/typography.js");

// Alphabetical order
// TODO: Remove - Move to into base, Possible to handle using ComponentData.
var Index = /*#__PURE__*/function (_CommandData) {
  (0, _inherits2.default)(Index, _CommandData);

  var _super = (0, _createSuper2.default)(Index);

  function Index() {
    (0, _classCallCheck2.default)(this, Index);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Index, null, [{
    key: "getEndpointFormat",
    value: function getEndpointFormat() {
      // Format 'globals/index' to 'globals'.
      return 'globals';
    }
  }]);
  return Index;
}(_commandData.default);

exports.Index = Index;

/***/ }),

/***/ "../assets/dev/js/editor/data/globals/commands/data/typography.js":
/*!************************************************************************!*\
  !*** ../assets/dev/js/editor/data/globals/commands/data/typography.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Typography = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandData = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-data */ "../core/common/assets/js/api/modules/command-data.js"));

var Typography = /*#__PURE__*/function (_CommandData) {
  (0, _inherits2.default)(Typography, _CommandData);

  var _super = (0, _createSuper2.default)(Typography);

  function Typography() {
    (0, _classCallCheck2.default)(this, Typography);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Typography, null, [{
    key: "getEndpointFormat",
    value: function getEndpointFormat() {
      return 'globals/typography/{id}';
    }
  }]);
  return Typography;
}(_commandData.default);

exports.Typography = Typography;
var _default = Typography;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/data/globals/component.js":
/*!*********************************************************!*\
  !*** ../assets/dev/js/editor/data/globals/component.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _componentBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-base */ "../core/common/assets/js/api/modules/component-base.js"));

var _component = _interopRequireDefault(__webpack_require__(/*! ./typography/component */ "../assets/dev/js/editor/data/globals/typography/component.js"));

var _component2 = _interopRequireDefault(__webpack_require__(/*! ./colors/component */ "../assets/dev/js/editor/data/globals/colors/component.js"));

var commandsData = _interopRequireWildcard(__webpack_require__(/*! ./commands/data/ */ "../assets/dev/js/editor/data/globals/commands/data/index.js"));

var Component = /*#__PURE__*/function (_ComponentBase) {
  (0, _inherits2.default)(Component, _ComponentBase);

  var _super = (0, _createSuper2.default)(Component);

  function Component() {
    (0, _classCallCheck2.default)(this, Component);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Component, [{
    key: "__construct",
    value: function __construct() {
      var _this = this;

      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      (0, _get2.default)((0, _getPrototypeOf2.default)(Component.prototype), "__construct", this).call(this, args);
      elementorCommon.elements.$window.on('elementor:loaded', function () {
        return _this.refreshGlobalData();
      });
    }
  }, {
    key: "getNamespace",
    value: function getNamespace() {
      return 'globals';
    }
  }, {
    key: "registerAPI",
    value: function registerAPI() {
      $e.components.register(new _component.default({
        manager: this
      }));
      $e.components.register(new _component2.default({
        manager: this
      }));
      (0, _get2.default)((0, _getPrototypeOf2.default)(Component.prototype), "registerAPI", this).call(this);
    }
  }, {
    key: "defaultData",
    value: function defaultData() {
      return this.importCommands(commandsData);
    }
  }, {
    key: "refreshGlobalData",
    value: function refreshGlobalData() {
      $e.data.deleteCache($e.components.get('globals'), 'globals/index');
    }
  }]);
  return Component;
}(_componentBase.default);

exports.default = Component;

/***/ }),

/***/ "../assets/dev/js/editor/data/globals/typography/commands/create.js":
/*!**************************************************************************!*\
  !*** ../assets/dev/js/editor/data/globals/typography/commands/create.js ***!
  \**************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.Create = void 0;

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

__webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _createBase = _interopRequireDefault(__webpack_require__(/*! elementor-editor/data/globals/base/create-base */ "../assets/dev/js/editor/data/globals/base/create-base.js"));

var Create = /*#__PURE__*/function (_CreateBase) {
  (0, _inherits2.default)(Create, _CreateBase);

  var _super = (0, _createSuper2.default)(Create);

  function Create() {
    (0, _classCallCheck2.default)(this, Create);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Create, [{
    key: "apply",
    value: function apply() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      var container = args.container,
          setting = args.setting,
          title = args.title,
          controls = container.controls,
          availableControls = {};
      var result = false,
          groupPrefix = '';

      if (controls[setting] && controls[setting].groupPrefix) {
        groupPrefix = controls[setting].groupPrefix;
      } else {
        throw new Error("Invalid setting: control '".concat(setting, "', not found."));
      }

      if (groupPrefix) {
        (0, _entries.default)(controls).forEach(function (_ref) {
          var _ref2 = (0, _slicedToArray2.default)(_ref, 1),
              key = _ref2[0];

          if (key.includes(groupPrefix)) {
            // Get values but remove defaults.
            var value = container.settings.get(key),
                defaultValue = container.controls[key].default;

            if (!_.isEqual(value, defaultValue)) {
              availableControls[key.replace(groupPrefix, elementor.config.kit_config.typography_prefix)] = container.settings.get(key);
            }
          }
        });
      }

      if ((0, _values.default)(availableControls).length) {
        var id = elementorCommon.helpers.getUniqueId();
        result = $e.data.create("globals/typography?id=".concat(id), {
          title: title,
          value: availableControls
        });
      }

      return result;
    }
  }]);
  return Create;
}(_createBase.default);

exports.Create = Create;

/***/ }),

/***/ "../assets/dev/js/editor/data/globals/typography/commands/index.js":
/*!*************************************************************************!*\
  !*** ../assets/dev/js/editor/data/globals/typography/commands/index.js ***!
  \*************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "Create", {
  enumerable: true,
  get: function get() {
    return _create.Create;
  }
});

var _create = __webpack_require__(/*! ./create */ "../assets/dev/js/editor/data/globals/typography/commands/create.js");

/***/ }),

/***/ "../assets/dev/js/editor/data/globals/typography/component.js":
/*!********************************************************************!*\
  !*** ../assets/dev/js/editor/data/globals/typography/component.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _componentBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-base */ "../core/common/assets/js/api/modules/component-base.js"));

var commands = _interopRequireWildcard(__webpack_require__(/*! ./commands/ */ "../assets/dev/js/editor/data/globals/typography/commands/index.js"));

var Component = /*#__PURE__*/function (_ComponentBase) {
  (0, _inherits2.default)(Component, _ComponentBase);

  var _super = (0, _createSuper2.default)(Component);

  function Component() {
    (0, _classCallCheck2.default)(this, Component);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Component, [{
    key: "__construct",
    value: function __construct() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      (0, _get2.default)((0, _getPrototypeOf2.default)(Component.prototype), "__construct", this).call(this, args);
    }
  }, {
    key: "getNamespace",
    value: function getNamespace() {
      return 'globals/typography';
    }
  }, {
    key: "defaultCommands",
    value: function defaultCommands() {
      return this.importCommands(commands);
    }
  }]);
  return Component;
}(_componentBase.default);

exports.default = Component;

/***/ }),

/***/ "../assets/dev/js/editor/document/backwards-compatibility.js":
/*!*******************************************************************!*\
  !*** ../assets/dev/js/editor/document/backwards-compatibility.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var BackwardsCompatibility = /*#__PURE__*/function () {
  function BackwardsCompatibility() {
    (0, _classCallCheck2.default)(this, BackwardsCompatibility);
    elementorCommon.elements.$window.on('elementor:init', this.deprecatedEvents);
    elementor.channels.data.on('template:before:insert', this.startInsertTemplate).on('template:after:insert', this.endItem);
  }

  (0, _createClass2.default)(BackwardsCompatibility, [{
    key: "deprecatedEvents",
    value: function deprecatedEvents() {
      var elementorDataEvents = elementor.channels.data._events,
          deprecatedEvents = ['drag:before:update', 'drag:after:update', 'element:before:add', 'element:after:add', 'element:before:remove', 'element:after:remove', 'element:before:paste:style', 'element:after:paste:style', 'element:before:reset:style', 'element:after:reset:style', 'section:before:drop', 'section:after:drop'];
      deprecatedEvents.forEach(function (event) {
        if (elementorDataEvents[event] && elementorDataEvents[event].length) {
          elementorCommon.helpers.softDeprecated("event: ".concat(event), '2.8.0', '$e.hooks');
        }
      });
    }
  }, {
    key: "startInsertTemplate",
    value: function startInsertTemplate(model) {
      elementorCommon.helpers.softDeprecated('event: template:before:insert', '2.8.0', "$e.run( 'document/import' )");
      elementor.documents.getCurrent().history.startItem({
        type: 'add',
        title: __('Template', 'elementor'),
        subTitle: model.get('title'),
        elementType: 'template'
      });
    }
  }, {
    key: "endItem",
    value: function endItem() {
      elementor.documents.getCurrent().history.endItem();
    }
  }]);
  return BackwardsCompatibility;
}();

exports.default = BackwardsCompatibility;

/***/ }),

/***/ "../assets/dev/js/editor/document/commands/base/command-disable-enable.js":
/*!********************************************************************************!*\
  !*** ../assets/dev/js/editor/document/commands/base/command-disable-enable.js ***!
  \********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandHistory = _interopRequireDefault(__webpack_require__(/*! ./command-history */ "../assets/dev/js/editor/document/commands/base/command-history.js"));

var _settings = _interopRequireDefault(__webpack_require__(/*! elementor-document/elements/commands/settings */ "../assets/dev/js/editor/document/elements/commands/settings.js"));

var CommandDisableEnable = /*#__PURE__*/function (_CommandHistory) {
  (0, _inherits2.default)(CommandDisableEnable, _CommandHistory);

  var _super = (0, _createSuper2.default)(CommandDisableEnable);

  function CommandDisableEnable() {
    (0, _classCallCheck2.default)(this, CommandDisableEnable);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(CommandDisableEnable, [{
    key: "initialize",
    value: function initialize(args) {
      (0, _get2.default)((0, _getPrototypeOf2.default)(CommandDisableEnable.prototype), "initialize", this).call(this, args);
      /**
       * Which command is running.
       *
       * @type {string}
       */

      this.type = this.currentCommand === this.constructor.getEnableCommand() ? 'enable' : 'disable';
    }
  }, {
    key: "getTitle",
    value: function getTitle() {
      elementorModules.ForceMethodImplementation();
    }
  }, {
    key: "validateArgs",
    value: function validateArgs(args) {
      this.requireContainer(args);
      this.requireArgumentConstructor('settings', Object, args);
    }
  }, {
    key: "getHistory",
    value: function getHistory(args) {
      var settings = args.settings,
          _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers,
          changes = {};
      containers.forEach(function (container) {
        var id = container.id;

        if (!changes[id]) {
          changes[id] = {};
        }

        changes[id] = settings;
      });

      var subTitle = this.getTitle() + ' ' + _settings.default.getSubTitle(args),
          type = this.type;

      return {
        containers: containers,
        subTitle: subTitle,
        data: {
          changes: changes,
          command: this.currentCommand
        },
        type: type,
        restore: this.constructor.restore
      };
    }
  }, {
    key: "isDataChanged",
    value: function isDataChanged() {
      return true;
    }
  }], [{
    key: "getEnableCommand",
    value:
    /**
     * @returns {string}
     */
    function getEnableCommand() {
      elementorModules.ForceMethodImplementation();
    }
    /**
     * @returns {string}
     */

  }, {
    key: "getDisableCommand",
    value: function getDisableCommand() {
      elementorModules.ForceMethodImplementation();
    }
  }, {
    key: "restore",
    value: function restore(historyItem, isRedo) {
      var data = historyItem.get('data'),
          CommandClass = $e.commands.getCommandClass(data.command); // Upon `disable` command toggle `isRedo`.

      if (CommandClass.getDisableCommand() === data.command) {
        isRedo = !isRedo;
      }

      historyItem.get('containers').forEach(function (container) {
        var settings = data.changes[container.id],
            toggle = isRedo ? CommandClass.getEnableCommand() : CommandClass.getDisableCommand();
        $e.run(toggle, {
          container: container,
          settings: settings
        });
        container.panel.refresh();
      });
    }
  }]);
  return CommandDisableEnable;
}(_commandHistory.default);

exports.default = CommandDisableEnable;

/***/ }),

/***/ "../assets/dev/js/editor/document/commands/base/command-history-debounce.js":
/*!**********************************************************************************!*\
  !*** ../assets/dev/js/editor/document/commands/base/command-history-debounce.js ***!
  \**********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.getDefaultDebounceDelay = exports.DEFAULT_DEBOUNCE_DELAY = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var _commandHistory = _interopRequireDefault(__webpack_require__(/*! ./command-history */ "../assets/dev/js/editor/document/commands/base/command-history.js"));

var DEFAULT_DEBOUNCE_DELAY = 800;
/**
 * Function getDefaultDebounceDelay().
 *
 * Returns default debounce delay time, if exists in config override.
 *
 * @returns {number}
 */

exports.DEFAULT_DEBOUNCE_DELAY = DEFAULT_DEBOUNCE_DELAY;

var getDefaultDebounceDelay = function getDefaultDebounceDelay() {
  var result = DEFAULT_DEBOUNCE_DELAY;

  if (elementor.config.document && undefined !== elementor.config.document.debounceDelay) {
    result = elementor.config.document.debounceDelay;
  }

  return result;
};

exports.getDefaultDebounceDelay = getDefaultDebounceDelay;

var CommandHistoryDebounce = /*#__PURE__*/function (_CommandHistory) {
  (0, _inherits2.default)(CommandHistoryDebounce, _CommandHistory);

  var _super = (0, _createSuper2.default)(CommandHistoryDebounce);

  function CommandHistoryDebounce() {
    (0, _classCallCheck2.default)(this, CommandHistoryDebounce);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(CommandHistoryDebounce, [{
    key: "initialize",
    value: function initialize(args) {
      var _args$options = args.options,
          options = _args$options === void 0 ? {} : _args$options;
      (0, _get2.default)((0, _getPrototypeOf2.default)(CommandHistoryDebounce.prototype), "initialize", this).call(this, args);

      if (!this.constructor.debounce) {
        this.constructor.debounce = _.debounce(function (fn) {
          return fn();
        }, getDefaultDebounceDelay());
      } // If its head command, and not called within another command.


      if (1 === $e.commands.currentTrace.length || options.debounce) {
        this.isDebounceRequired = true;
      }
    }
  }, {
    key: "onBeforeRun",
    value: function onBeforeRun(args) {
      _commandBase.default.prototype.onBeforeRun.call(this, args);

      if (this.history && this.isHistoryActive()) {
        $e.internal('document/history/add-transaction', this.history);
      }
    }
  }, {
    key: "onAfterRun",
    value: function onAfterRun(args, result) {
      _commandBase.default.prototype.onAfterRun.call(this, args, result);

      if (this.isHistoryActive()) {
        if (this.isDebounceRequired) {
          this.constructor.debounce(function () {
            return $e.internal('document/history/end-transaction');
          });
        } else {
          $e.internal('document/history/end-transaction');
        }
      }
    }
  }, {
    key: "onCatchApply",
    value: function onCatchApply(e) {
      _commandBase.default.prototype.onCatchApply.call(this, e); // Rollback history on failure.


      if (e instanceof $e.modules.HookBreak && this.history) {
        if (this.isDebounceRequired) {
          // `clear-transaction` is under debounce, because it should `clear-transaction` after `end-transaction`.
          this.constructor.debounce(function () {
            return $e.internal('document/history/clear-transaction');
          });
        } else {
          $e.internal('document/history/clear-transaction');
        }
      }
    }
  }], [{
    key: "getInstanceType",
    value:
    /**
     * Function debounce().
     *
     * Will debounce every function you pass in, at the same debounce flow.
     *
     * @param {(function())}
     */
    function getInstanceType() {
      return 'CommandHistoryDebounce';
    }
  }]);
  return CommandHistoryDebounce;
}(_commandHistory.default);

exports.default = CommandHistoryDebounce;
(0, _defineProperty2.default)(CommandHistoryDebounce, "debounce", undefined);

/***/ }),

/***/ "../assets/dev/js/editor/document/commands/base/command-history.js":
/*!*************************************************************************!*\
  !*** ../assets/dev/js/editor/document/commands/base/command-history.js ***!
  \*************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var CommandHistory = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(CommandHistory, _CommandBase);

  var _super = (0, _createSuper2.default)(CommandHistory);

  function CommandHistory(args) {
    var _this;

    (0, _classCallCheck2.default)(this, CommandHistory);
    _this = _super.call(this, args);
    /**
     * Get History from child command.
     *
     * @type {{}|boolean}
     */

    _this.history = _this.getHistory(args);
    /**
     * @type {number|boolean}
     */

    _this.historyId = false;
    return _this;
  }
  /**
   * Function getHistory().
   *
   * Get history object from child, do nothing if it false.
   *
   * @param [args={}]
   *
   * @returns {({}|boolean)}
   */


  (0, _createClass2.default)(CommandHistory, [{
    key: "getHistory",
    value: function getHistory() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      // eslint-disable-line no-unused-vars
      elementorModules.ForceMethodImplementation();
    }
    /**
     * Function isHistoryActive().
     *
     * Return `elementor.documents.getCurrent().history.getActive()`.
     *
     * @returns {boolean}
     */

  }, {
    key: "isHistoryActive",
    value: function isHistoryActive() {
      return elementor.documents.getCurrent().history.getActive();
    }
  }, {
    key: "onBeforeRun",
    value: function onBeforeRun(args) {
      (0, _get2.default)((0, _getPrototypeOf2.default)(CommandHistory.prototype), "onBeforeRun", this).call(this, args);

      if (this.history && this.isHistoryActive()) {
        this.historyId = $e.internal('document/history/start-log', this.history);
      }
    }
  }, {
    key: "onAfterRun",
    value: function onAfterRun(args, result) {
      (0, _get2.default)((0, _getPrototypeOf2.default)(CommandHistory.prototype), "onAfterRun", this).call(this, args, result);

      if (this.history && this.isHistoryActive()) {
        $e.internal('document/history/end-log', {
          id: this.historyId
        });
      }
    }
  }, {
    key: "onCatchApply",
    value: function onCatchApply(e) {
      (0, _get2.default)((0, _getPrototypeOf2.default)(CommandHistory.prototype), "onCatchApply", this).call(this, e); // Rollback history on failure.

      if (e instanceof $e.modules.HookBreak && this.historyId) {
        $e.internal('document/history/delete-log', {
          id: this.historyId
        });
      }
    }
  }], [{
    key: "getInstanceType",
    value: function getInstanceType() {
      return 'CommandHistory';
    }
  }]);
  return CommandHistory;
}(_commandBase.default);

exports.default = CommandHistory;

/***/ }),

/***/ "../assets/dev/js/editor/document/component.js":
/*!*****************************************************!*\
  !*** ../assets/dev/js/editor/document/component.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _componentBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-base */ "../core/common/assets/js/api/modules/component-base.js"));

var _backwardsCompatibility = _interopRequireDefault(__webpack_require__(/*! ./backwards-compatibility.js */ "../assets/dev/js/editor/document/backwards-compatibility.js"));

var _commandHistory = _interopRequireDefault(__webpack_require__(/*! ./commands/base/command-history */ "../assets/dev/js/editor/document/commands/base/command-history.js"));

var _commandHistoryDebounce = _interopRequireDefault(__webpack_require__(/*! ./commands/base/command-history-debounce */ "../assets/dev/js/editor/document/commands/base/command-history-debounce.js"));

var components = _interopRequireWildcard(__webpack_require__(/*! ./ */ "../assets/dev/js/editor/document/index.js"));

var hooks = _interopRequireWildcard(__webpack_require__(/*! ./hooks/ */ "../assets/dev/js/editor/document/hooks/index.js"));

var Component = /*#__PURE__*/function (_ComponentBase) {
  (0, _inherits2.default)(Component, _ComponentBase);

  var _super = (0, _createSuper2.default)(Component);

  function Component() {
    (0, _classCallCheck2.default)(this, Component);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Component, [{
    key: "getNamespace",
    value: function getNamespace() {
      return 'document';
    }
  }, {
    key: "registerAPI",
    value: function registerAPI() {
      new _backwardsCompatibility.default();
      (0, _values.default)(components).forEach(function (ComponentClass) {
        return $e.components.register(new ComponentClass());
      });
      (0, _get2.default)((0, _getPrototypeOf2.default)(Component.prototype), "registerAPI", this).call(this);
    }
  }, {
    key: "defaultCommands",
    value: function defaultCommands() {
      return {//example: ( args ) => ( new Commands.Example( args ).run() ),
      };
    }
  }, {
    key: "defaultHooks",
    value: function defaultHooks() {
      return this.importHooks(hooks);
    }
  }, {
    key: "defaultUtils",
    value: function defaultUtils() {
      var _this = this;

      return {
        findViewRecursive: function findViewRecursive(parent, key, value) {
          var multiple = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;
          var found = [];

          for (var x in parent._views) {
            var view = parent._views[x];

            if (value === view.model.get(key)) {
              found.push(view);

              if (!multiple) {
                return found;
              }
            }

            if (view.children) {
              var views = _this.utils.findViewRecursive(view.children, key, value, multiple);

              if (views.length) {
                found = found.concat(views);

                if (!multiple) {
                  return found;
                }
              }
            }
          }

          return found;
        },
        findViewById: function findViewById(id) {
          var elements = _this.utils.findViewRecursive(elementor.getPreviewView().children, 'id', id, false);

          return elements ? elements[0] : false;
        },
        findContainerById: function findContainerById(id) {
          var result = _this.utils.findViewById(id);

          if (result) {
            result = result.getContainer();
          }

          return result;
        }
      };
    }
  }], [{
    key: "getModules",
    value: function getModules() {
      var modules = {
        get CommandHistoryBase() {
          elementorCommon.helpers.hardDeprecated('$e.modules.document.CommandHistoryBase', '3.0.0', '$e.modules.document.CommandHistory');
          return this.CommandHistory;
        },

        get CommandHistoryDebounceBase() {
          elementorCommon.helpers.hardDeprecated('$e.modules.document.CommandHistoryDebounceBase', '3.0.0', '$e.modules.document.CommandHistoryDebounce');
          return this.CommandHistoryDebounce;
        },

        CommandHistory: _commandHistory.default,
        CommandHistoryDebounce: _commandHistoryDebounce.default
      };
      return modules;
    }
  }]);
  return Component;
}(_componentBase.default);

exports.default = Component;

/***/ }),

/***/ "../assets/dev/js/editor/document/dynamic/commands/base/disable-enable.js":
/*!********************************************************************************!*\
  !*** ../assets/dev/js/editor/document/dynamic/commands/base/disable-enable.js ***!
  \********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandDisableEnable = _interopRequireDefault(__webpack_require__(/*! elementor-document/commands/base/command-disable-enable */ "../assets/dev/js/editor/document/commands/base/command-disable-enable.js"));

var DisableEnable = /*#__PURE__*/function (_CommandDisableEnable) {
  (0, _inherits2.default)(DisableEnable, _CommandDisableEnable);

  var _super = (0, _createSuper2.default)(DisableEnable);

  function DisableEnable() {
    (0, _classCallCheck2.default)(this, DisableEnable);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(DisableEnable, [{
    key: "getTitle",
    value: function getTitle() {
      return __('Dynamic');
    }
  }], [{
    key: "getEnableCommand",
    value: function getEnableCommand() {
      return 'document/dynamic/enable';
    }
  }, {
    key: "getDisableCommand",
    value: function getDisableCommand() {
      return 'document/dynamic/disable';
    }
  }]);
  return DisableEnable;
}(_commandDisableEnable.default);

exports.default = DisableEnable;

/***/ }),

/***/ "../assets/dev/js/editor/document/dynamic/commands/disable.js":
/*!********************************************************************!*\
  !*** ../assets/dev/js/editor/document/dynamic/commands/disable.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Disable = void 0;

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _disableEnable = _interopRequireDefault(__webpack_require__(/*! ./base/disable-enable */ "../assets/dev/js/editor/document/dynamic/commands/base/disable-enable.js"));

var Disable = /*#__PURE__*/function (_DisableEnable) {
  (0, _inherits2.default)(Disable, _DisableEnable);

  var _super = (0, _createSuper2.default)(Disable);

  function Disable() {
    (0, _classCallCheck2.default)(this, Disable);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Disable, [{
    key: "apply",
    value: function apply(args) {
      var settings = args.settings,
          _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers;
      containers.forEach(function (container) {
        container = container.lookup();
        (0, _keys.default)(settings).forEach(function (setting) {
          container.dynamic.unset(setting);
        });
        $e.internal('document/elements/set-settings', {
          container: container,
          settings: {
            __dynamic__: container.dynamic.toJSON()
          }
        });
      });
    }
  }]);
  return Disable;
}(_disableEnable.default);

exports.Disable = Disable;
var _default = Disable;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/dynamic/commands/enable.js":
/*!*******************************************************************!*\
  !*** ../assets/dev/js/editor/document/dynamic/commands/enable.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Enable = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _disableEnable = _interopRequireDefault(__webpack_require__(/*! ./base/disable-enable */ "../assets/dev/js/editor/document/dynamic/commands/base/disable-enable.js"));

var Enable = /*#__PURE__*/function (_DisableEnable) {
  (0, _inherits2.default)(Enable, _DisableEnable);

  var _super = (0, _createSuper2.default)(Enable);

  function Enable() {
    (0, _classCallCheck2.default)(this, Enable);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Enable, [{
    key: "apply",
    value: function apply(args) {
      var settings = args.settings,
          _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers;
      containers.forEach(function (container) {
        container = container.lookup();
        container.dynamic.set(settings);
        $e.internal('document/elements/set-settings', {
          container: container,
          settings: {
            __dynamic__: container.dynamic.toJSON()
          }
        });
      });
    }
  }]);
  return Enable;
}(_disableEnable.default);

exports.Enable = Enable;
var _default = Enable;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/dynamic/commands/index.js":
/*!******************************************************************!*\
  !*** ../assets/dev/js/editor/document/dynamic/commands/index.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "Disable", {
  enumerable: true,
  get: function get() {
    return _disable.Disable;
  }
});

_Object$defineProperty(exports, "Enable", {
  enumerable: true,
  get: function get() {
    return _enable.Enable;
  }
});

_Object$defineProperty(exports, "Settings", {
  enumerable: true,
  get: function get() {
    return _settings.Settings;
  }
});

var _disable = __webpack_require__(/*! ./disable */ "../assets/dev/js/editor/document/dynamic/commands/disable.js");

var _enable = __webpack_require__(/*! ./enable */ "../assets/dev/js/editor/document/dynamic/commands/enable.js");

var _settings = __webpack_require__(/*! ./settings */ "../assets/dev/js/editor/document/dynamic/commands/settings.js");

/***/ }),

/***/ "../assets/dev/js/editor/document/dynamic/commands/settings.js":
/*!*********************************************************************!*\
  !*** ../assets/dev/js/editor/document/dynamic/commands/settings.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Settings = void 0;

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandHistoryDebounce = _interopRequireDefault(__webpack_require__(/*! elementor-document/commands/base/command-history-debounce */ "../assets/dev/js/editor/document/commands/base/command-history-debounce.js"));

var _settings = _interopRequireDefault(__webpack_require__(/*! elementor-document/elements/commands/settings */ "../assets/dev/js/editor/document/elements/commands/settings.js"));

/**
 * The difference between 'document/elements/settings` and `document/dynamic/settings` is:
 * that `document/elements/settings` apply settings to `container.settings` and `document/dynamic/settings` affect
 * `container.settings.__dynamic__`, also clearing the dynamic if `args.settings` is empty.
 */
var Settings = /*#__PURE__*/function (_CommandHistoryDeboun) {
  (0, _inherits2.default)(Settings, _CommandHistoryDeboun);

  var _super = (0, _createSuper2.default)(Settings);

  function Settings() {
    (0, _classCallCheck2.default)(this, Settings);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Settings, [{
    key: "validateArgs",
    value: function validateArgs(args) {
      this.requireContainer(args);
      this.requireArgumentConstructor('settings', Object, args);
    }
  }, {
    key: "getHistory",
    value: function getHistory(args) {
      var settings = args.settings,
          _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers,
          changes = {};
      containers.forEach(function (container) {
        var id = container.id;

        if (!changes[id]) {
          changes[id] = {};
        }

        changes[id] = {
          old: container.dynamic.toJSON(),
          new: settings
        };
      });

      var subTitle = _settings.default.getSubTitle(args);

      return {
        containers: containers,
        subTitle: subTitle,
        data: {
          changes: changes
        },
        type: 'change',
        restore: this.constructor.restore
      };
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var settings = args.settings,
          _args$containers2 = args.containers,
          containers = _args$containers2 === void 0 ? [args.container] : _args$containers2;
      containers.forEach(function (container) {
        container = container.lookup();

        if (!(0, _keys.default)(settings).length) {
          container.dynamic.clear();
        } else {
          container.dynamic.set(settings);
        }

        $e.internal('document/elements/set-settings', {
          container: container,
          settings: {
            __dynamic__: container.dynamic.toJSON()
          }
        });
      });
    }
  }], [{
    key: "restore",
    value: function restore(historyItem, isRedo) {
      var data = historyItem.get('data');
      historyItem.get('containers').forEach(function (container) {
        var changes = data.changes[container.id];
        $e.run('document/dynamic/settings', {
          container: container,
          settings: isRedo ? changes.new : changes.old
        });
        container.panel.refresh();
      });
    }
  }]);
  return Settings;
}(_commandHistoryDebounce.default);

exports.Settings = Settings;
var _default = Settings;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/dynamic/component.js":
/*!*************************************************************!*\
  !*** ../assets/dev/js/editor/document/dynamic/component.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _componentBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-base */ "../core/common/assets/js/api/modules/component-base.js"));

var commands = _interopRequireWildcard(__webpack_require__(/*! ./commands/ */ "../assets/dev/js/editor/document/dynamic/commands/index.js"));

var Component = /*#__PURE__*/function (_ComponentBase) {
  (0, _inherits2.default)(Component, _ComponentBase);

  var _super = (0, _createSuper2.default)(Component);

  function Component() {
    (0, _classCallCheck2.default)(this, Component);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Component, [{
    key: "getNamespace",
    value: function getNamespace() {
      return 'document/dynamic';
    }
  }, {
    key: "defaultCommands",
    value: function defaultCommands() {
      return this.importCommands(commands);
    }
  }]);
  return Component;
}(_componentBase.default);

exports.default = Component;

/***/ }),

/***/ "../assets/dev/js/editor/document/elements/commands-internal/index.js":
/*!****************************************************************************!*\
  !*** ../assets/dev/js/editor/document/elements/commands-internal/index.js ***!
  \****************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "SetSettings", {
  enumerable: true,
  get: function get() {
    return _setSettings.SetSettings;
  }
});

var _setSettings = __webpack_require__(/*! ./set-settings */ "../assets/dev/js/editor/document/elements/commands-internal/set-settings.js");

/***/ }),

/***/ "../assets/dev/js/editor/document/elements/commands-internal/set-settings.js":
/*!***********************************************************************************!*\
  !*** ../assets/dev/js/editor/document/elements/commands-internal/set-settings.js ***!
  \***********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.SetSettings = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandInternalBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-internal-base */ "../core/common/assets/js/api/modules/command-internal-base.js"));

var SetSettings = /*#__PURE__*/function (_CommandInternal) {
  (0, _inherits2.default)(SetSettings, _CommandInternal);

  var _super = (0, _createSuper2.default)(SetSettings);

  function SetSettings() {
    (0, _classCallCheck2.default)(this, SetSettings);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(SetSettings, [{
    key: "validateArgs",
    value: function validateArgs() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      this.requireContainer(args);
      this.requireArgumentType('settings', 'object', args);

      if ('undefined' !== typeof args.render && 'undefined' !== typeof args.renderUI) {
        throw new Error('Args: `render` and `renderUI` cannot be applied together.');
      }
    }
  }, {
    key: "apply",
    value: function apply() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      var _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers,
          settings = args.settings,
          _args$options = args.options,
          options = _args$options === void 0 ? {} : _args$options,
          external = options.external,
          _options$render = options.render,
          render = _options$render === void 0 ? true : _options$render,
          _options$renderUI = options.renderUI,
          renderUI = _options$renderUI === void 0 ? false : _options$renderUI;
      containers.forEach(function (container) {
        if (external) {
          container.settings.setExternalChange(settings);
        } else {
          container.settings.set(settings);
        }

        if (renderUI) {
          container.renderUI();
        } else if (render) {
          container.render();
        }
      });
    }
  }]);
  return SetSettings;
}(_commandInternalBase.default);

exports.SetSettings = SetSettings;
var _default = SetSettings;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/elements/commands/copy-all.js":
/*!**********************************************************************!*\
  !*** ../assets/dev/js/editor/document/elements/commands/copy-all.js ***!
  \**********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.CopyAll = void 0;

var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var CopyAll = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(CopyAll, _CommandBase);

  var _super = (0, _createSuper2.default)(CopyAll);

  function CopyAll() {
    (0, _classCallCheck2.default)(this, CopyAll);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(CopyAll, [{
    key: "apply",
    value: function apply() {
      $e.run('document/elements/copy', {
        containers: (0, _values.default)(elementor.getPreviewView().children._views).map(function (view) {
          return view.getContainer();
        })
      });
    }
  }]);
  return CopyAll;
}(_commandBase.default);

exports.CopyAll = CopyAll;
var _default = CopyAll;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/elements/commands/copy.js":
/*!******************************************************************!*\
  !*** ../assets/dev/js/editor/document/elements/commands/copy.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Copy = void 0;

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Copy = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Copy, _CommandBase);

  var _super = (0, _createSuper2.default)(Copy);

  function Copy() {
    (0, _classCallCheck2.default)(this, Copy);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Copy, [{
    key: "validateArgs",
    value: function validateArgs(args) {
      this.requireContainer(args);
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var _args$storageKey = args.storageKey,
          storageKey = _args$storageKey === void 0 ? 'clipboard' : _args$storageKey,
          _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers;
      elementorCommon.storage.set(storageKey, containers.map(function (container) {
        return container.model.toJSON({
          copyHtmlCache: true
        });
      }));
    }
  }]);
  return Copy;
}(_commandBase.default);

exports.Copy = Copy;
var _default = Copy;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/elements/commands/create.js":
/*!********************************************************************!*\
  !*** ../assets/dev/js/editor/document/elements/commands/create.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Create = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandHistory = _interopRequireDefault(__webpack_require__(/*! elementor-document/commands/base/command-history */ "../assets/dev/js/editor/document/commands/base/command-history.js"));

var Create = /*#__PURE__*/function (_CommandHistory) {
  (0, _inherits2.default)(Create, _CommandHistory);

  var _super = (0, _createSuper2.default)(Create);

  function Create() {
    (0, _classCallCheck2.default)(this, Create);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Create, [{
    key: "validateArgs",
    value: function validateArgs(args) {
      this.requireContainer(args); // Avoid Backbone model & etc.

      this.requireArgumentConstructor('model', Object, args);
    }
  }, {
    key: "getHistory",
    value: function getHistory(args) {
      var model = args.model,
          _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers;
      return {
        containers: containers,
        model: model,
        type: 'add',
        title: elementor.helpers.getModelLabel(model)
      };
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var _this = this;

      var model = args.model,
          _args$options = args.options,
          options = _args$options === void 0 ? {} : _args$options,
          _args$containers2 = args.containers,
          containers = _args$containers2 === void 0 ? [args.container] : _args$containers2;
      var result = []; // BC: Deprecated since 2.8.0 - use `$e.hooks`.

      if (!options.trigger) {
        options.trigger = {
          beforeAdd: 'element:before:add',
          afterAdd: 'element:after:add'
        };
      }

      containers.forEach(function (container) {
        container = container.lookup();
        var createdContainer = container.view.addElement(model, options).getContainer();
        result.push(createdContainer);
        /**
         * Acknowledge history of each created item, because we cannot pass the elements when they do not exist
         * in getHistory().
         */

        if (_this.isHistoryActive()) {
          $e.internal('document/history/log-sub-item', {
            container: container,
            type: 'sub-add',
            restore: _this.constructor.restore,
            options: options,
            data: {
              containerToRestore: createdContainer,
              modelToRestore: createdContainer.model.toJSON()
            }
          });
        }
      });

      if (1 === result.length) {
        result = result[0];
      }

      return result;
    }
  }, {
    key: "isDataChanged",
    value: function isDataChanged() {
      return true;
    }
  }], [{
    key: "restore",
    value: function restore(historyItem, isRedo) {
      var data = historyItem.get('data'),
          container = historyItem.get('container'),
          options = historyItem.get('options') || {}; // No clone when restoring. e.g: duplicate will generate unique ids while restoring.

      if (options.clone) {
        options.clone = false;
      }

      if (isRedo) {
        $e.run('document/elements/create', {
          container: container,
          model: data.modelToRestore,
          options: options
        });
      } else {
        $e.run('document/elements/delete', {
          container: data.containerToRestore
        });
      }
    }
  }]);
  return Create;
}(_commandHistory.default);

exports.Create = Create;
var _default = Create;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/elements/commands/delete.js":
/*!********************************************************************!*\
  !*** ../assets/dev/js/editor/document/elements/commands/delete.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Delete = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandHistory = _interopRequireDefault(__webpack_require__(/*! elementor-document/commands/base/command-history */ "../assets/dev/js/editor/document/commands/base/command-history.js"));

var Delete = /*#__PURE__*/function (_CommandHistory) {
  (0, _inherits2.default)(Delete, _CommandHistory);

  var _super = (0, _createSuper2.default)(Delete);

  function Delete() {
    (0, _classCallCheck2.default)(this, Delete);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Delete, [{
    key: "validateArgs",
    value: function validateArgs(args) {
      this.requireContainer(args);
    }
  }, {
    key: "getHistory",
    value: function getHistory(args) {
      var _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers;
      return {
        containers: containers,
        type: 'remove'
      };
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var _this = this;

      var _args$containers2 = args.containers,
          containers = _args$containers2 === void 0 ? [args.container] : _args$containers2;
      containers.forEach(function (container) {
        container = container.lookup();

        if (_this.isHistoryActive()) {
          $e.internal('document/history/log-sub-item', {
            container: container,
            type: 'sub-remove',
            restore: _this.constructor.restore,
            data: {
              model: container.model.toJSON(),
              parent: container.parent,
              at: container.view._index
            }
          });
        } // BC: Deprecated since 2.8.0 - use `$e.hooks`.


        elementor.channels.data.trigger('element:before:remove', container.model);
        container.model.destroy(); // BC: Deprecated since 2.8.0 - use `$e.hooks`.

        elementor.channels.data.trigger('element:after:remove', container.model);
        container.panel.refresh();
      });

      if (1 === containers.length) {
        return containers[0];
      }

      return containers;
    }
  }, {
    key: "isDataChanged",
    value: function isDataChanged() {
      return true;
    }
  }], [{
    key: "restore",
    value: function restore(historyItem, isRedo) {
      var container = historyItem.get('container'),
          data = historyItem.get('data');

      if (isRedo) {
        $e.run('document/elements/delete', {
          container: container
        });
      } else {
        $e.run('document/elements/create', {
          container: data.parent,
          model: data.model,
          options: {
            at: data.at
          }
        });
      }
    }
  }]);
  return Delete;
}(_commandHistory.default);

exports.Delete = Delete;
var _default = Delete;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/elements/commands/duplicate.js":
/*!***********************************************************************!*\
  !*** ../assets/dev/js/editor/document/elements/commands/duplicate.js ***!
  \***********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Duplicate = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandHistory = _interopRequireDefault(__webpack_require__(/*! elementor-document/commands/base/command-history */ "../assets/dev/js/editor/document/commands/base/command-history.js"));

var Duplicate = /*#__PURE__*/function (_CommandHistory) {
  (0, _inherits2.default)(Duplicate, _CommandHistory);

  var _super = (0, _createSuper2.default)(Duplicate);

  function Duplicate() {
    (0, _classCallCheck2.default)(this, Duplicate);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Duplicate, [{
    key: "validateArgs",
    value: function validateArgs(args) {
      this.requireContainer(args);
    }
  }, {
    key: "getHistory",
    value: function getHistory(args) {
      var _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers;
      return {
        containers: containers,
        type: 'duplicate'
      };
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var _args$containers2 = args.containers,
          containers = _args$containers2 === void 0 ? [args.container] : _args$containers2,
          result = [];
      containers.forEach(function (container) {
        var parent = container.parent,
            at = container.view._index + 1;
        result.push($e.run('document/elements/create', {
          container: parent,
          model: container.model.toJSON(),
          options: {
            at: at,
            clone: true
          }
        }));
      });

      if (1 === result.length) {
        return result[0];
      }

      return result;
    }
  }]);
  return Duplicate;
}(_commandHistory.default);

exports.Duplicate = Duplicate;
var _default = Duplicate;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/elements/commands/empty.js":
/*!*******************************************************************!*\
  !*** ../assets/dev/js/editor/document/elements/commands/empty.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Empty = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandHistory = _interopRequireDefault(__webpack_require__(/*! elementor-document/commands/base/command-history */ "../assets/dev/js/editor/document/commands/base/command-history.js"));

var Empty = /*#__PURE__*/function (_CommandHistory) {
  (0, _inherits2.default)(Empty, _CommandHistory);

  var _super = (0, _createSuper2.default)(Empty);

  function Empty() {
    (0, _classCallCheck2.default)(this, Empty);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Empty, [{
    key: "getHistory",
    value: function getHistory(args) {
      if (args.force) {
        return {
          type: 'remove',
          title: __('All Content', 'elementor'),
          data: elementor.elements ? elementor.elements.toJSON() : null,
          restore: this.constructor.restore
        };
      }

      return false;
    }
  }, {
    key: "apply",
    value: function apply(args) {
      if (args.force && elementor.elements) {
        elementor.elements.reset();
        elementor.getPreviewContainer().panel.closeEditor();
        return;
      }

      elementor.getClearPageDialog().show();
    }
  }, {
    key: "isDataChanged",
    value: function isDataChanged() {
      if (this.args.force) {
        return true;
      }
    }
  }], [{
    key: "restore",
    value: function restore(historyItem, isRedo) {
      if (isRedo) {
        $e.run('document/elements/empty', {
          force: true
        });
      } else {
        var data = historyItem.get('data');

        if (data) {
          elementor.getPreviewView().addChildModel(data);
        }

        $e.internal('document/save/set-is-modified', {
          status: true
        });
      }
    }
  }]);
  return Empty;
}(_commandHistory.default);

exports.Empty = Empty;
var _default = Empty;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/elements/commands/import.js":
/*!********************************************************************!*\
  !*** ../assets/dev/js/editor/document/elements/commands/import.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Import = void 0;

var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));

var _assign = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/assign */ "../node_modules/@babel/runtime-corejs2/core-js/object/assign.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandHistory = _interopRequireDefault(__webpack_require__(/*! elementor-document/commands/base/command-history */ "../assets/dev/js/editor/document/commands/base/command-history.js"));

var Import = /*#__PURE__*/function (_CommandHistory) {
  (0, _inherits2.default)(Import, _CommandHistory);

  var _super = (0, _createSuper2.default)(Import);

  function Import() {
    (0, _classCallCheck2.default)(this, Import);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Import, [{
    key: "validateArgs",
    value: function validateArgs(args) {
      this.requireArgumentInstance('model', Backbone.Model, args);
      this.requireArgumentConstructor('data', Object, args);
    }
  }, {
    key: "getHistory",
    value: function getHistory(args) {
      var model = args.model;
      return {
        type: 'add',
        title: __('Template', 'elementor'),
        subTitle: model.get('title')
      };
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var data = args.data,
          _args$options = args.options,
          options = _args$options === void 0 ? args.options || {} : _args$options,
          previewContainer = elementor.getPreviewContainer(),
          result = [];
      var at = isNaN(options.at) ? previewContainer.view.collection.length : options.at; // Each `data.content`.

      (0, _values.default)(data.content).forEach(function (model) {
        result.push($e.run('document/elements/create', {
          container: elementor.getPreviewContainer(),
          model: model,
          options: (0, _assign.default)(options, {
            at: at
          })
        }));
        at++;
      });

      if (options.withPageSettings) {
        $e.run('document/elements/settings', {
          container: elementor.settings.page.getEditedView().getContainer(),
          settings: data.page_settings,
          options: {
            external: true
          }
        });
      }

      return result;
    }
  }]);
  return Import;
}(_commandHistory.default);

exports.Import = Import;
var _default = Import;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/elements/commands/index.js":
/*!*******************************************************************!*\
  !*** ../assets/dev/js/editor/document/elements/commands/index.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "Copy", {
  enumerable: true,
  get: function get() {
    return _copy.Copy;
  }
});

_Object$defineProperty(exports, "CopyAll", {
  enumerable: true,
  get: function get() {
    return _copyAll.CopyAll;
  }
});

_Object$defineProperty(exports, "Create", {
  enumerable: true,
  get: function get() {
    return _create.Create;
  }
});

_Object$defineProperty(exports, "Delete", {
  enumerable: true,
  get: function get() {
    return _delete.Delete;
  }
});

_Object$defineProperty(exports, "Duplicate", {
  enumerable: true,
  get: function get() {
    return _duplicate.Duplicate;
  }
});

_Object$defineProperty(exports, "Empty", {
  enumerable: true,
  get: function get() {
    return _empty.Empty;
  }
});

_Object$defineProperty(exports, "Import", {
  enumerable: true,
  get: function get() {
    return _import.Import;
  }
});

_Object$defineProperty(exports, "Paste", {
  enumerable: true,
  get: function get() {
    return _paste.Paste;
  }
});

_Object$defineProperty(exports, "Move", {
  enumerable: true,
  get: function get() {
    return _move.Move;
  }
});

_Object$defineProperty(exports, "PasteStyle", {
  enumerable: true,
  get: function get() {
    return _pasteStyle.PasteStyle;
  }
});

_Object$defineProperty(exports, "ResetSettings", {
  enumerable: true,
  get: function get() {
    return _resetSettings.ResetSettings;
  }
});

_Object$defineProperty(exports, "ResetStyle", {
  enumerable: true,
  get: function get() {
    return _resetStyle.ResetStyle;
  }
});

_Object$defineProperty(exports, "Settings", {
  enumerable: true,
  get: function get() {
    return _settings.Settings;
  }
});

var _copy = __webpack_require__(/*! ./copy */ "../assets/dev/js/editor/document/elements/commands/copy.js");

var _copyAll = __webpack_require__(/*! ./copy-all */ "../assets/dev/js/editor/document/elements/commands/copy-all.js");

var _create = __webpack_require__(/*! ./create */ "../assets/dev/js/editor/document/elements/commands/create.js");

var _delete = __webpack_require__(/*! ./delete */ "../assets/dev/js/editor/document/elements/commands/delete.js");

var _duplicate = __webpack_require__(/*! ./duplicate */ "../assets/dev/js/editor/document/elements/commands/duplicate.js");

var _empty = __webpack_require__(/*! ./empty */ "../assets/dev/js/editor/document/elements/commands/empty.js");

var _import = __webpack_require__(/*! ./import */ "../assets/dev/js/editor/document/elements/commands/import.js");

var _paste = __webpack_require__(/*! ./paste */ "../assets/dev/js/editor/document/elements/commands/paste.js");

var _move = __webpack_require__(/*! ./move */ "../assets/dev/js/editor/document/elements/commands/move.js");

var _pasteStyle = __webpack_require__(/*! ./paste-style */ "../assets/dev/js/editor/document/elements/commands/paste-style.js");

var _resetSettings = __webpack_require__(/*! ./reset-settings */ "../assets/dev/js/editor/document/elements/commands/reset-settings.js");

var _resetStyle = __webpack_require__(/*! ./reset-style */ "../assets/dev/js/editor/document/elements/commands/reset-style.js");

var _settings = __webpack_require__(/*! ./settings */ "../assets/dev/js/editor/document/elements/commands/settings.js");

/***/ }),

/***/ "../assets/dev/js/editor/document/elements/commands/move.js":
/*!******************************************************************!*\
  !*** ../assets/dev/js/editor/document/elements/commands/move.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Move = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandHistory = _interopRequireDefault(__webpack_require__(/*! elementor-document/commands/base/command-history */ "../assets/dev/js/editor/document/commands/base/command-history.js"));

var Move = /*#__PURE__*/function (_CommandHistory) {
  (0, _inherits2.default)(Move, _CommandHistory);

  var _super = (0, _createSuper2.default)(Move);

  function Move() {
    (0, _classCallCheck2.default)(this, Move);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Move, [{
    key: "validateArgs",
    value: function validateArgs(args) {
      this.requireContainer(args);
      this.requireArgumentInstance('target', elementorModules.editor.Container, args);
    }
  }, {
    key: "getHistory",
    value: function getHistory(args) {
      var _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers;
      return {
        containers: containers,
        type: 'move'
      };
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var target = args.target,
          _args$options = args.options,
          options = _args$options === void 0 ? {} : _args$options,
          _args$containers2 = args.containers,
          containers = _args$containers2 === void 0 ? [args.container] : _args$containers2,
          reCreate = [];
      containers.forEach(function (container) {
        reCreate.push(container.model.toJSON());
        $e.run('document/elements/delete', {
          container: container
        });
      });
      var count = 0;
      reCreate.forEach(function (model) {
        // If multiple fix position.
        if (options.hasOwnProperty('at') && reCreate.length > 1) {
          if (0 !== count) {
            options.at += count;
          }
        } // BC: Deprecated since 2.8.0 - use `$e.hooks`.


        options.trigger = {
          beforeAdd: 'drag:before:update',
          afterAdd: 'drag:after:update'
        };
        $e.run('document/elements/create', {
          container: target,
          model: model,
          options: options
        });
        count++;
      });
    }
  }]);
  return Move;
}(_commandHistory.default);

exports.Move = Move;
var _default = Move;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/elements/commands/paste-style.js":
/*!*************************************************************************!*\
  !*** ../assets/dev/js/editor/document/elements/commands/paste-style.js ***!
  \*************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.PasteStyle = void 0;

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandHistory = _interopRequireDefault(__webpack_require__(/*! elementor-document/commands/base/command-history */ "../assets/dev/js/editor/document/commands/base/command-history.js"));

var PasteStyle = /*#__PURE__*/function (_CommandHistory) {
  (0, _inherits2.default)(PasteStyle, _CommandHistory);

  var _super = (0, _createSuper2.default)(PasteStyle);

  function PasteStyle() {
    (0, _classCallCheck2.default)(this, PasteStyle);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(PasteStyle, [{
    key: "validateArgs",
    value: function validateArgs(args) {
      this.requireContainer(args); // Validate if storage have data.

      var _args$storageKey = args.storageKey,
          storageKey = _args$storageKey === void 0 ? 'clipboard' : _args$storageKey,
          storageData = elementorCommon.storage.get(storageKey);
      this.requireArgumentType('storageData', 'object', {
        storageData: storageData
      });
    }
  }, {
    key: "validateControls",
    value: function validateControls(source, target) {
      var result = true; // Cannot use `_.isEmpty()` does not pass paste style test.

      if (null === source || null === target || undefined === source || undefined === target || 'object' === (0, _typeof2.default)(source) ^ 'object' === (0, _typeof2.default)(target)) {
        result = false;
      }

      return result;
    }
  }, {
    key: "getHistory",
    value: function getHistory(args) {
      var _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers;
      return {
        containers: containers,
        type: 'paste_style'
      };
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var _this = this;

      var _args$containers2 = args.containers,
          containers = _args$containers2 === void 0 ? [args.container] : _args$containers2,
          _args$storageKey2 = args.storageKey,
          storageKey = _args$storageKey2 === void 0 ? 'clipboard' : _args$storageKey2,
          storageData = elementorCommon.storage.get(storageKey);
      containers.forEach(function (targetContainer) {
        var targetSettings = targetContainer.settings,
            targetSettingsAttributes = targetSettings.attributes,
            targetControls = targetSettings.controls,
            diffSettings = {},
            addExtraControls = function addExtraControls(sourceSettings, extraType) {
          if (sourceSettings[extraType]) {
            (0, _entries.default)(sourceSettings[extraType]).forEach(function (_ref) {
              var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
                  controlName = _ref2[0],
                  value = _ref2[1];

              var control = targetControls[controlName];

              if (targetContainer.view.isStyleTransferControl(control)) {
                diffSettings[extraType] = diffSettings[extraType] || {};
                diffSettings[extraType][controlName] = value;
              }
            });
          }
        };

        storageData.forEach(function (sourceModel) {
          var sourceSettings = sourceModel.settings;
          addExtraControls(sourceSettings, '__globals__');
          addExtraControls(sourceSettings, '__dynamic__');
          (0, _entries.default)(targetControls).forEach(function (_ref3) {
            var _ref4 = (0, _slicedToArray2.default)(_ref3, 2),
                controlName = _ref4[0],
                control = _ref4[1];

            if (!targetContainer.view.isStyleTransferControl(control)) {
              return;
            }

            var controlSourceValue = sourceSettings[controlName],
                controlTargetValue = targetSettingsAttributes[controlName];

            if (!_this.validateControls(controlSourceValue, controlTargetValue)) {
              return;
            }

            if ('object' === (0, _typeof2.default)(controlSourceValue)) {
              var isEqual = (0, _keys.default)(controlSourceValue).some(function (propertyKey) {
                if (controlSourceValue[propertyKey] !== controlTargetValue[propertyKey]) {
                  return false;
                }
              });

              if (isEqual) {
                return;
              }
            }

            if (controlSourceValue === controlTargetValue || !elementor.getControlView(control.type).onPasteStyle(control, controlSourceValue)) {
              return;
            }

            diffSettings[controlName] = controlSourceValue;
          });

          _this.pasteStyle(targetContainer, diffSettings);
        });
      });
    }
    /**
     * @param {Container} targetContainer
     * @param {{}} settings
     */

  }, {
    key: "pasteStyle",
    value: function pasteStyle(targetContainer, settings) {
      // BC: Deprecated since 2.8.0 - use `$e.hooks`.
      elementor.channels.data.trigger('element:before:paste:style', targetContainer.model);
      var globals = settings.__globals__;

      if (globals) {
        delete settings.__globals__;
      }

      $e.run('document/elements/settings', {
        container: targetContainer,
        settings: settings,
        options: {
          external: true,
          render: false
        }
      });

      if (globals) {
        $e.run('document/globals/settings', {
          container: targetContainer,
          settings: globals,
          options: {
            external: true,
            render: false
          }
        });
        targetContainer.panel.refresh();
      } // BC: Deprecated since 2.8.0 - use `$e.hooks`.


      elementor.channels.data.trigger('element:after:paste:style', targetContainer.model);
      targetContainer.render();
    }
  }]);
  return PasteStyle;
}(_commandHistory.default);

exports.PasteStyle = PasteStyle;
var _default = PasteStyle;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/elements/commands/paste.js":
/*!*******************************************************************!*\
  !*** ../assets/dev/js/editor/document/elements/commands/paste.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Paste = void 0;

var _assign = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/assign */ "../node_modules/@babel/runtime-corejs2/core-js/object/assign.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandHistory = _interopRequireDefault(__webpack_require__(/*! elementor-document/commands/base/command-history */ "../assets/dev/js/editor/document/commands/base/command-history.js"));

var Paste = /*#__PURE__*/function (_CommandHistory) {
  (0, _inherits2.default)(Paste, _CommandHistory);

  var _super = (0, _createSuper2.default)(Paste);

  function Paste() {
    (0, _classCallCheck2.default)(this, Paste);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Paste, [{
    key: "validateArgs",
    value: function validateArgs(args) {
      this.requireContainer(args); // Validate if storage have data.

      var _args$storageKey = args.storageKey,
          storageKey = _args$storageKey === void 0 ? 'clipboard' : _args$storageKey,
          storageData = elementorCommon.storage.get(storageKey);
      this.requireArgumentType('storageData', 'object', {
        storageData: storageData
      });
    }
  }, {
    key: "getHistory",
    value: function getHistory() {
      return {
        type: 'paste',
        title: __('Elements', 'elementor')
      };
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var _this = this;

      var at = args.at,
          _args$rebuild = args.rebuild,
          rebuild = _args$rebuild === void 0 ? false : _args$rebuild,
          _args$storageKey2 = args.storageKey,
          storageKey = _args$storageKey2 === void 0 ? 'clipboard' : _args$storageKey2,
          _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers,
          _args$options = args.options,
          options = _args$options === void 0 ? {} : _args$options,
          storageData = elementorCommon.storage.get(storageKey),
          result = []; // Paste on "Add Section" area.

      if (rebuild) {
        // Paste at each target.
        containers.forEach(function (targetContainer) {
          var index = 'undefined' === typeof at ? targetContainer.view.collection.length : at;
          storageData.forEach(function (model) {
            switch (model.elType) {
              case 'section':
                {
                  // If is inner create section for `inner-section`.
                  if (model.isInner) {
                    var section = $e.run('document/elements/create', {
                      container: targetContainer,
                      model: {
                        elType: 'section'
                      },
                      columns: 1,
                      options: {
                        at: index,
                        edit: false
                      }
                    }); // `targetContainer` = first column at `section`.

                    targetContainer = section.view.children.findByIndex(0).getContainer();
                  } // Will be not affected by hook since it always have `model.elements`.


                  result.push(_this.pasteTo([targetContainer], [model], {
                    at: index,
                    edit: false
                  }));
                  index++;
                }
                break;

              case 'column':
                {
                  // Next code changed from original since `_checkIsEmpty()` was removed.
                  var _section = $e.run('document/elements/create', {
                    container: targetContainer,
                    model: {
                      elType: 'section'
                    },
                    columns: 0,
                    // section with no columns.
                    options: {
                      at: index,
                      edit: false
                    }
                  });

                  result.push(_this.pasteTo([_section], [model]));
                }
                break;

              default:
                // In case it widget:
                var target; // If you trying to paste widget on section, then paste should be at the first column.

                if ('section' === targetContainer.model.get('elType')) {
                  target = [targetContainer.view.children.findByIndex(0).getContainer()];
                } else {
                  // Else, create section with one column for element.
                  var _section2 = $e.run('document/elements/create', {
                    container: targetContainer,
                    model: {
                      elType: 'section'
                    },
                    columns: 1,
                    options: {
                      at: index
                    }
                  }); // Create the element in the column that just was created.


                  target = [_section2.view.children.first().getContainer()];
                }

                result.push(_this.pasteTo(target, [model]));
            }
          });
        });
      } else {
        if (undefined !== at) {
          options.at = at;
        }

        result.push(this.pasteTo(containers, storageData, options));
      }

      if (1 === result.length) {
        return result[0];
      }

      return result;
    }
  }, {
    key: "pasteTo",
    value: function pasteTo(targetContainers, models) {
      var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
      options = (0, _assign.default)({
        at: null,
        clone: true
      }, options);
      var result = [];
      models.forEach(function (model) {
        result.push($e.run('document/elements/create', {
          containers: targetContainers,
          model: model,
          options: options
        })); // On paste sections, increase the `at` for every section.

        if (null !== options.at) {
          options.at++;
        }
      });

      if (1 === result.length) {
        return result[0];
      }

      return result;
    }
  }]);
  return Paste;
}(_commandHistory.default);

exports.Paste = Paste;
var _default = Paste;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/elements/commands/reset-settings.js":
/*!****************************************************************************!*\
  !*** ../assets/dev/js/editor/document/elements/commands/reset-settings.js ***!
  \****************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.ResetSettings = void 0;

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandHistory = _interopRequireDefault(__webpack_require__(/*! ../../commands/base/command-history */ "../assets/dev/js/editor/document/commands/base/command-history.js"));

var ResetSettings = /*#__PURE__*/function (_CommandHistory) {
  (0, _inherits2.default)(ResetSettings, _CommandHistory);

  var _super = (0, _createSuper2.default)(ResetSettings);

  function ResetSettings() {
    (0, _classCallCheck2.default)(this, ResetSettings);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(ResetSettings, [{
    key: "validateArgs",
    value: function validateArgs(args) {
      this.requireContainer(args);
    }
  }, {
    key: "getHistory",
    value: function getHistory(args) {
      var _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers;
      return {
        containers: containers,
        type: 'reset_settings'
      };
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var _args$containers2 = args.containers,
          containers = _args$containers2 === void 0 ? [args.container] : _args$containers2,
          _args$settings = args.settings,
          settings = _args$settings === void 0 ? [] : _args$settings;
      containers.forEach(function (container) {
        var controls = (0, _entries.default)(container.settings.controls),
            defaultValues = {};
        controls.forEach(function (_ref) {
          var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
              controlName = _ref2[0],
              control = _ref2[1];

          // If settings were specific, restore only them.
          if (settings && settings.length) {
            if (!settings.find(function (key) {
              return key === controlName;
            })) {
              return;
            }
          }

          defaultValues[controlName] = control.default;
        });
        $e.run('document/elements/settings', {
          container: container,
          settings: defaultValues
        });
        container.render();
      });
    }
  }]);
  return ResetSettings;
}(_commandHistory.default);

exports.ResetSettings = ResetSettings;
var _default = ResetSettings;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/elements/commands/reset-style.js":
/*!*************************************************************************!*\
  !*** ../assets/dev/js/editor/document/elements/commands/reset-style.js ***!
  \*************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.ResetStyle = void 0;

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandHistory = _interopRequireDefault(__webpack_require__(/*! elementor-document/commands/base/command-history */ "../assets/dev/js/editor/document/commands/base/command-history.js"));

var ResetStyle = /*#__PURE__*/function (_CommandHistory) {
  (0, _inherits2.default)(ResetStyle, _CommandHistory);

  var _super = (0, _createSuper2.default)(ResetStyle);

  function ResetStyle() {
    (0, _classCallCheck2.default)(this, ResetStyle);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(ResetStyle, [{
    key: "validateArgs",
    value: function validateArgs(args) {
      this.requireContainer(args);
    }
  }, {
    key: "getHistory",
    value: function getHistory(args) {
      var _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers;
      return {
        containers: containers,
        type: 'reset_style'
      };
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var _args$containers2 = args.containers,
          containers = _args$containers2 === void 0 ? [args.container] : _args$containers2;
      containers.forEach(function (container) {
        var controls = container.settings.controls,
            settingsKeys = [];
        container.view.allowRender = false;
        (0, _entries.default)(controls).forEach(function (_ref) {
          var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
              controlName = _ref2[0],
              control = _ref2[1];

          if (!container.view.isStyleTransferControl(control)) {
            return;
          }

          settingsKeys.push(controlName);
        }); // BC: Deprecated since 2.8.0 - use `$e.hooks`.

        elementor.channels.data.trigger('element:before:reset:style', container.model);
        $e.run('document/elements/reset-settings', {
          container: container,
          settings: settingsKeys,
          options: {
            external: true
          }
        }); // BC: Deprecated since 2.8.0 - use `$e.hooks`.

        elementor.channels.data.trigger('element:after:reset:style', container.model);
        container.view.allowRender = true;
        container.render();
      });
    }
  }]);
  return ResetStyle;
}(_commandHistory.default);

exports.ResetStyle = ResetStyle;
var _default = ResetStyle;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/elements/commands/settings.js":
/*!**********************************************************************!*\
  !*** ../assets/dev/js/editor/document/elements/commands/settings.js ***!
  \**********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Settings = void 0;

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandHistoryDebounce = _interopRequireDefault(__webpack_require__(/*! elementor-document/commands/base/command-history-debounce */ "../assets/dev/js/editor/document/commands/base/command-history-debounce.js"));

var Settings = /*#__PURE__*/function (_CommandHistoryDeboun) {
  (0, _inherits2.default)(Settings, _CommandHistoryDeboun);

  var _super = (0, _createSuper2.default)(Settings);

  function Settings() {
    (0, _classCallCheck2.default)(this, Settings);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Settings, [{
    key: "addToHistory",
    value:
    /**
     * Function addToHistory().
     *
     * @param {Container} container
     * @param {{}} newSettings
     * @param {{}} oldSettings
     */
    function addToHistory(container, newSettings, oldSettings) {
      var changes = (0, _defineProperty2.default)({}, container.id, {
        old: oldSettings,
        new: newSettings
      }),
          historyItem = {
        containers: [container],
        data: {
          changes: changes
        },
        type: 'change',
        restore: Settings.restore
      };
      $e.internal('document/history/add-transaction', historyItem);
    }
  }, {
    key: "validateArgs",
    value: function validateArgs(args) {
      this.requireContainer(args);
      this.requireArgumentConstructor('settings', Object, args);
    }
  }, {
    key: "getHistory",
    value: function getHistory(args) {
      var _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers,
          subTitle = this.constructor.getSubTitle(args);
      return {
        containers: containers,
        subTitle: subTitle,
        type: 'change'
      };
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var _this = this;

      var _args$containers2 = args.containers,
          containers = _args$containers2 === void 0 ? [args.container] : _args$containers2,
          _args$settings = args.settings,
          settings = _args$settings === void 0 ? {} : _args$settings,
          _args$isMultiSettings = args.isMultiSettings,
          isMultiSettings = _args$isMultiSettings === void 0 ? false : _args$isMultiSettings,
          _args$options = args.options,
          options = _args$options === void 0 ? {} : _args$options;
      containers.forEach(function (container) {
        container = container.lookup();
        /**
         * Settings support multi settings for each container, eg use:
         * settings: { '{ container-id }': { someSettingKey: someSettingValue } } etc.
         */

        var newSettings = isMultiSettings ? settings[container.id] : settings,
            oldSettings = container.settings.toJSON(); // Clear old oldValues.

        container.oldValues = {}; // Set oldValues, For each setting is about to change save setting value.

        (0, _keys.default)(newSettings).forEach(function (key) {
          container.oldValues[key] = oldSettings[key];
        }); // If history active, add history transaction with old and new settings.

        if (_this.isHistoryActive()) {
          _this.addToHistory(container, newSettings, container.oldValues);
        }

        $e.internal('document/elements/set-settings', {
          container: container,
          options: options,
          settings: newSettings
        });
      });
    }
  }, {
    key: "isDataChanged",
    value: function isDataChanged() {
      return true;
    }
  }], [{
    key: "getSubTitle",
    value:
    /**
     * Function getSubTitle().
     *
     * Get sub title by container.
     *
     * @param {{}} args
     *
     * @returns {string}
     */
    function getSubTitle(args) {
      var _args$containers3 = args.containers,
          containers = _args$containers3 === void 0 ? [args.container] : _args$containers3,
          _args$settings2 = args.settings,
          settings = _args$settings2 === void 0 ? {} : _args$settings2,
          isMultiSettings = args.isMultiSettings,
          settingsKeys = (0, _keys.default)(settings),
          controls = containers[0].controls,
          firstSettingKey = settingsKeys[0];
      var result = '';

      if (!isMultiSettings && 1 === settingsKeys.length && controls && controls[firstSettingKey]) {
        result = controls[firstSettingKey].label;
      }

      return result;
    }
    /**
     * Function restore().
     *
     * Redo/Restore.
     *
     * @param {{}} historyItem
     * @param {boolean} isRedo
     */

  }, {
    key: "restore",
    value: function restore(historyItem, isRedo) {
      var data = historyItem.get('data');
      historyItem.get('containers').forEach(function (
      /* Container */
      container) {
        var changes = data.changes[container.id];
        $e.run('document/elements/settings', {
          container: container,
          settings: isRedo ? changes.new : changes.old,
          options: {
            external: true
          }
        });
      });
    }
  }]);
  return Settings;
}(_commandHistoryDebounce.default);

exports.Settings = Settings;
var _default = Settings;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/elements/component.js":
/*!**************************************************************!*\
  !*** ../assets/dev/js/editor/document/elements/component.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _componentBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-base */ "../core/common/assets/js/api/modules/component-base.js"));

var commands = _interopRequireWildcard(__webpack_require__(/*! ./commands/ */ "../assets/dev/js/editor/document/elements/commands/index.js"));

var commandsInternal = _interopRequireWildcard(__webpack_require__(/*! ./commands-internal/ */ "../assets/dev/js/editor/document/elements/commands-internal/index.js"));

var Component = /*#__PURE__*/function (_ComponentBase) {
  (0, _inherits2.default)(Component, _ComponentBase);

  var _super = (0, _createSuper2.default)(Component);

  function Component() {
    (0, _classCallCheck2.default)(this, Component);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Component, [{
    key: "getNamespace",
    value: function getNamespace() {
      return 'document/elements';
    }
  }, {
    key: "defaultCommands",
    value: function defaultCommands() {
      return this.importCommands(commands);
    }
  }, {
    key: "defaultCommandsInternal",
    value: function defaultCommandsInternal() {
      return this.importCommands(commandsInternal);
    }
  }, {
    key: "defaultUtils",
    value: function defaultUtils() {
      var _this = this;

      return {
        isValidChild: function isValidChild(childModel, parentModel) {
          var parentElType = parentModel.get('elType'),
              draggedElType = childModel.get('elType'),
              parentIsInner = parentModel.get('isInner'),
              draggedIsInner = childModel.get('isInner'); // Block's inner-section at inner-section column.

          if (draggedIsInner && 'section' === draggedElType && parentIsInner && 'column' === parentElType) {
            return false;
          }

          if (draggedElType === parentElType) {
            return false;
          }

          if ('section' === draggedElType && !draggedIsInner && 'column' === parentElType) {
            return false;
          }

          var childTypes = elementor.helpers.getElementChildType(parentElType);
          return childTypes && -1 !== childTypes.indexOf(childModel.get('elType'));
        },
        isValidGrandChild: function isValidGrandChild(childModel, targetContainer) {
          var result;
          var childElType = childModel.get('elType');

          switch (targetContainer.model.get('elType')) {
            case 'document':
              result = true;
              break;

            case 'section':
              result = 'widget' === childElType;
              break;

            default:
              result = false;
          }

          return result;
        },
        isSameElement: function isSameElement(sourceModel, targetContainer) {
          var targetElType = targetContainer.model.get('elType'),
              sourceElType = sourceModel.get('elType');

          if (targetElType !== sourceElType) {
            return false;
          }

          if ('column' === targetElType && 'column' === sourceElType) {
            return true;
          }

          return targetContainer.model.get('isInner') === sourceModel.get('isInner');
        },
        getPasteOptions: function getPasteOptions(sourceModel, targetContainer) {
          var result = {};
          result.isValidChild = _this.utils.isValidChild(sourceModel, targetContainer.model);
          result.isSameElement = _this.utils.isSameElement(sourceModel, targetContainer);
          result.isValidGrandChild = _this.utils.isValidGrandChild(sourceModel, targetContainer);
          return result;
        },
        isPasteEnabled: function isPasteEnabled(targetContainer) {
          var storage = elementorCommon.storage.get('clipboard'); // No storage? no paste.

          if (!storage || !storage[0]) {
            return false;
          }

          if (!(storage[0] instanceof Backbone.Model)) {
            storage[0] = new Backbone.Model(storage[0]);
          }

          var pasteOptions = _this.utils.getPasteOptions(storage[0], targetContainer);

          return (0, _values.default)(pasteOptions).some(function (opt) {
            return !!opt;
          });
        }
      };
    }
  }]);
  return Component;
}(_componentBase.default);

exports.default = Component;

/***/ }),

/***/ "../assets/dev/js/editor/document/globals/commands/base/disable-enable.js":
/*!********************************************************************************!*\
  !*** ../assets/dev/js/editor/document/globals/commands/base/disable-enable.js ***!
  \********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandDisableEnable = _interopRequireDefault(__webpack_require__(/*! elementor-document/commands/base/command-disable-enable */ "../assets/dev/js/editor/document/commands/base/command-disable-enable.js"));

var DisableEnable = /*#__PURE__*/function (_CommandDisableEnable) {
  (0, _inherits2.default)(DisableEnable, _CommandDisableEnable);

  var _super = (0, _createSuper2.default)(DisableEnable);

  function DisableEnable() {
    (0, _classCallCheck2.default)(this, DisableEnable);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(DisableEnable, [{
    key: "getTitle",
    value: function getTitle() {
      return __('Global');
    }
  }], [{
    key: "getName",
    value: function getName() {
      return 'Global';
    }
  }, {
    key: "getEnableCommand",
    value: function getEnableCommand() {
      return 'document/globals/enable';
    }
  }, {
    key: "getDisableCommand",
    value: function getDisableCommand() {
      return 'document/globals/disable';
    }
  }]);
  return DisableEnable;
}(_commandDisableEnable.default);

exports.default = DisableEnable;

/***/ }),

/***/ "../assets/dev/js/editor/document/globals/commands/disable.js":
/*!********************************************************************!*\
  !*** ../assets/dev/js/editor/document/globals/commands/disable.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Disable = void 0;

var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _promise = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/promise */ "../node_modules/@babel/runtime-corejs2/core-js/promise.js"));

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

__webpack_require__(/*! core-js/modules/es6.string.iterator.js */ "../node_modules/core-js/modules/es6.string.iterator.js");

__webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");

__webpack_require__(/*! core-js/modules/es6.array.iterator.js */ "../node_modules/core-js/modules/es6.array.iterator.js");

__webpack_require__(/*! core-js/modules/web.dom.iterable.js */ "../node_modules/core-js/modules/web.dom.iterable.js");

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/asyncToGenerator */ "../node_modules/@babel/runtime-corejs2/helpers/asyncToGenerator.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _disableEnable = _interopRequireDefault(__webpack_require__(/*! ./base/disable-enable */ "../assets/dev/js/editor/document/globals/commands/base/disable-enable.js"));

// TODO: Disable is the only command that extends DisableEnable which is async.
var Disable = /*#__PURE__*/function (_DisableEnable) {
  (0, _inherits2.default)(Disable, _DisableEnable);

  var _super = (0, _createSuper2.default)(Disable);

  function Disable() {
    (0, _classCallCheck2.default)(this, Disable);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Disable, [{
    key: "apply",
    value: function () {
      var _apply = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(args) {
        var settings, _args$containers, containers, _args$options, options, all;

        return _regenerator.default.wrap(function _callee3$(_context3) {
          while (1) {
            switch (_context3.prev = _context3.next) {
              case 0:
                settings = args.settings, _args$containers = args.containers, containers = _args$containers === void 0 ? [args.container] : _args$containers, _args$options = args.options, options = _args$options === void 0 ? {} : _args$options;
                all = containers.map( /*#__PURE__*/function () {
                  var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(
                  /* Container */
                  container) {
                    var promises;
                    return _regenerator.default.wrap(function _callee2$(_context2) {
                      while (1) {
                        switch (_context2.prev = _context2.next) {
                          case 0:
                            container = container.lookup();
                            promises = []; // TODO rename `options.restore` => `options.unlink`.

                            if (!options.restore) {
                              _context2.next = 6;
                              break;
                            }

                            promises = (0, _entries.default)(container.globals.attributes).map( /*#__PURE__*/function () {
                              var _ref3 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(_ref2) {
                                var _ref4, globalKey, globalValue;

                                return _regenerator.default.wrap(function _callee$(_context) {
                                  while (1) {
                                    switch (_context.prev = _context.next) {
                                      case 0:
                                        _ref4 = (0, _slicedToArray2.default)(_ref2, 2), globalKey = _ref4[0], globalValue = _ref4[1];

                                        if (globalValue) {
                                          _context.next = 3;
                                          break;
                                        }

                                        return _context.abrupt("return");

                                      case 3:
                                        return _context.abrupt("return", $e.run('document/globals/unlink', {
                                          container: container,
                                          options: {
                                            external: true
                                          },
                                          globalValue: globalValue,
                                          setting: globalKey
                                        }));

                                      case 4:
                                      case "end":
                                        return _context.stop();
                                    }
                                  }
                                }, _callee);
                              }));

                              return function (_x3) {
                                return _ref3.apply(this, arguments);
                              };
                            }());
                            _context2.next = 6;
                            return _promise.default.all(promises);

                          case 6:
                            // Clear globals.
                            (0, _keys.default)(settings).forEach(function (setting) {
                              return container.globals.set(setting, '');
                            });
                            $e.internal('document/elements/set-settings', {
                              container: container,
                              settings: {
                                __globals__: container.globals.toJSON()
                              },
                              options: {
                                renderUI: true
                              }
                            });

                          case 8:
                          case "end":
                            return _context2.stop();
                        }
                      }
                    }, _callee2);
                  }));

                  return function (_x2) {
                    return _ref.apply(this, arguments);
                  };
                }());
                _context3.next = 4;
                return _promise.default.all(all);

              case 4:
              case "end":
                return _context3.stop();
            }
          }
        }, _callee3);
      }));

      function apply(_x) {
        return _apply.apply(this, arguments);
      }

      return apply;
    }()
  }]);
  return Disable;
}(_disableEnable.default);

exports.Disable = Disable;
var _default = Disable;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/globals/commands/enable.js":
/*!*******************************************************************!*\
  !*** ../assets/dev/js/editor/document/globals/commands/enable.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Enable = void 0;

__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _disableEnable = _interopRequireDefault(__webpack_require__(/*! ./base/disable-enable */ "../assets/dev/js/editor/document/globals/commands/base/disable-enable.js"));

// Run when a global control value is chosen while the active value is custom.
var Enable = /*#__PURE__*/function (_DisableEnable) {
  (0, _inherits2.default)(Enable, _DisableEnable);

  var _super = (0, _createSuper2.default)(Enable);

  function Enable() {
    (0, _classCallCheck2.default)(this, Enable);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Enable, [{
    key: "apply",
    value: function apply(args) {
      var settings = args.settings,
          _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers;
      containers.forEach(function (container) {
        container = container.lookup();
        container.globals.set(settings);
        $e.internal('document/elements/set-settings', {
          container: container,
          settings: {
            __globals__: container.globals.toJSON()
          },
          options: {
            renderUI: true
          }
        }); // Clear custom local settings.

        (0, _values.default)(container.getGroupRelatedControls(settings)).forEach(function (control) {
          container.settings.set(control.name, control.default);
        });
      });
    }
  }]);
  return Enable;
}(_disableEnable.default);

exports.Enable = Enable;
var _default = Enable;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/globals/commands/index.js":
/*!******************************************************************!*\
  !*** ../assets/dev/js/editor/document/globals/commands/index.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "Disable", {
  enumerable: true,
  get: function get() {
    return _disable.Disable;
  }
});

_Object$defineProperty(exports, "Enable", {
  enumerable: true,
  get: function get() {
    return _enable.Enable;
  }
});

_Object$defineProperty(exports, "Settings", {
  enumerable: true,
  get: function get() {
    return _settings.Settings;
  }
});

_Object$defineProperty(exports, "Unlink", {
  enumerable: true,
  get: function get() {
    return _unlink.Unlink;
  }
});

var _disable = __webpack_require__(/*! ./disable */ "../assets/dev/js/editor/document/globals/commands/disable.js");

var _enable = __webpack_require__(/*! ./enable */ "../assets/dev/js/editor/document/globals/commands/enable.js");

var _settings = __webpack_require__(/*! ./settings */ "../assets/dev/js/editor/document/globals/commands/settings.js");

var _unlink = __webpack_require__(/*! ./unlink */ "../assets/dev/js/editor/document/globals/commands/unlink.js");

/***/ }),

/***/ "../assets/dev/js/editor/document/globals/commands/settings.js":
/*!*********************************************************************!*\
  !*** ../assets/dev/js/editor/document/globals/commands/settings.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Settings = void 0;

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandHistoryDebounce = _interopRequireDefault(__webpack_require__(/*! elementor-document/commands/base/command-history-debounce */ "../assets/dev/js/editor/document/commands/base/command-history-debounce.js"));

var _settings = _interopRequireDefault(__webpack_require__(/*! elementor-document/elements/commands/settings */ "../assets/dev/js/editor/document/elements/commands/settings.js"));

var Settings = /*#__PURE__*/function (_CommandHistoryDeboun) {
  (0, _inherits2.default)(Settings, _CommandHistoryDeboun);

  var _super = (0, _createSuper2.default)(Settings);

  function Settings() {
    (0, _classCallCheck2.default)(this, Settings);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Settings, [{
    key: "validateArgs",
    value: function validateArgs(args) {
      this.requireContainer(args);
      this.requireArgumentConstructor('settings', Object, args);
    }
  }, {
    key: "getHistory",
    value: function getHistory(args) {
      var settings = args.settings,
          _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers,
          changes = {};
      containers.forEach(function (container) {
        var id = container.id;

        if (!changes[id]) {
          changes[id] = {};
        }

        changes[id] = {
          old: container.globals.toJSON(),
          new: settings
        };
      });

      var subTitle = _settings.default.getSubTitle(args);

      return {
        containers: containers,
        subTitle: subTitle,
        data: {
          changes: changes
        },
        type: 'change',
        restore: this.constructor.restore
      };
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var settings = args.settings,
          _args$containers2 = args.containers,
          containers = _args$containers2 === void 0 ? [args.container] : _args$containers2,
          _args$options = args.options,
          options = _args$options === void 0 ? {} : _args$options;
      containers.forEach(function (container) {
        container = container.lookup();

        if (!(0, _keys.default)(settings).length) {
          container.globals.clear();
        } else {
          container.globals.set(settings);
        }

        $e.internal('document/elements/set-settings', {
          container: container,
          options: options,
          settings: {
            __globals__: container.globals.toJSON()
          }
        });
      });
    }
  }, {
    key: "isDataChanged",
    value: function isDataChanged() {
      return true;
    }
  }], [{
    key: "restore",
    value: function restore(historyItem, isRedo) {
      var data = historyItem.get('data');
      historyItem.get('containers').forEach(function (container) {
        var changes = data.changes[container.id];
        $e.run('document/globals/settings', {
          container: container,
          settings: isRedo ? changes.new : changes.old
        });
        container.panel.refresh();
      });
    }
  }]);
  return Settings;
}(_commandHistoryDebounce.default);

exports.Settings = Settings;
var _default = Settings;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/globals/commands/unlink.js":
/*!*******************************************************************!*\
  !*** ../assets/dev/js/editor/document/globals/commands/unlink.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Unlink = void 0;

var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));

var _promise = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/promise */ "../node_modules/@babel/runtime-corejs2/core-js/promise.js"));

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

__webpack_require__(/*! core-js/modules/es6.string.iterator.js */ "../node_modules/core-js/modules/es6.string.iterator.js");

__webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");

__webpack_require__(/*! core-js/modules/es6.array.iterator.js */ "../node_modules/core-js/modules/es6.array.iterator.js");

__webpack_require__(/*! core-js/modules/web.dom.iterable.js */ "../node_modules/core-js/modules/web.dom.iterable.js");

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

__webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/asyncToGenerator */ "../node_modules/@babel/runtime-corejs2/helpers/asyncToGenerator.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

// TODO: Add dev-tools CSS to see if widget have globals.
var Unlink = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Unlink, _CommandBase);

  var _super = (0, _createSuper2.default)(Unlink);

  function Unlink() {
    (0, _classCallCheck2.default)(this, Unlink);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Unlink, [{
    key: "validateArgs",
    value: function validateArgs() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      this.requireContainer(args);
      this.requireArgumentType('setting', 'string', args);
      this.requireArgumentType('globalValue', 'string', args); // TODO: validate global value is command format.
    }
  }, {
    key: "apply",
    value: function () {
      var _apply = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(args) {
        var _args$containers, containers, setting, globalValue, _args$options, options, localSettings;

        return _regenerator.default.wrap(function _callee2$(_context2) {
          while (1) {
            switch (_context2.prev = _context2.next) {
              case 0:
                _args$containers = args.containers, containers = _args$containers === void 0 ? [args.container] : _args$containers, setting = args.setting, globalValue = args.globalValue, _args$options = args.options, options = _args$options === void 0 ? {} : _args$options, localSettings = {};
                _context2.next = 3;
                return _promise.default.all(containers.map( /*#__PURE__*/function () {
                  var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(
                  /* Container */
                  container) {
                    var result, _container$controls$s, value, groupPrefix;

                    return _regenerator.default.wrap(function _callee$(_context) {
                      while (1) {
                        switch (_context.prev = _context.next) {
                          case 0:
                            _context.next = 2;
                            return $e.data.get(globalValue);

                          case 2:
                            result = _context.sent;

                            if (result) {
                              // Prepare global value to mapping.
                              value = result.data.value, groupPrefix = (_container$controls$s = container.controls[setting]) === null || _container$controls$s === void 0 ? void 0 : _container$controls$s.groupPrefix;

                              if (groupPrefix) {
                                (0, _entries.default)(value).forEach(function (_ref2) {
                                  var _ref3 = (0, _slicedToArray2.default)(_ref2, 2),
                                      dataKey = _ref3[0],
                                      dataValue = _ref3[1];

                                  dataKey = dataKey.replace(elementor.config.kit_config.typography_prefix, groupPrefix);
                                  localSettings[dataKey] = dataValue;
                                });
                              } else {
                                localSettings[setting] = value;
                              }
                            }

                            return _context.abrupt("return", _promise.default.resolve());

                          case 5:
                          case "end":
                            return _context.stop();
                        }
                      }
                    }, _callee);
                  }));

                  return function (_x2) {
                    return _ref.apply(this, arguments);
                  };
                }()));

              case 3:
                // Restore globals settings as custom local settings.
                if ((0, _keys.default)(localSettings).length) {
                  $e.run('document/elements/settings', {
                    containers: containers,
                    options: options,
                    settings: localSettings
                  });
                }

              case 4:
              case "end":
                return _context2.stop();
            }
          }
        }, _callee2);
      }));

      function apply(_x) {
        return _apply.apply(this, arguments);
      }

      return apply;
    }()
  }, {
    key: "isDataChanged",
    value: function isDataChanged() {
      return true;
    }
  }]);
  return Unlink;
}(_commandBase.default);

exports.Unlink = Unlink;
var _default = Unlink;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/globals/component.js":
/*!*************************************************************!*\
  !*** ../assets/dev/js/editor/document/globals/component.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _componentBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-base */ "../core/common/assets/js/api/modules/component-base.js"));

var commands = _interopRequireWildcard(__webpack_require__(/*! ./commands/ */ "../assets/dev/js/editor/document/globals/commands/index.js"));

var Component = /*#__PURE__*/function (_ComponentBase) {
  (0, _inherits2.default)(Component, _ComponentBase);

  var _super = (0, _createSuper2.default)(Component);

  function Component() {
    (0, _classCallCheck2.default)(this, Component);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Component, [{
    key: "getNamespace",
    value: function getNamespace() {
      return 'document/globals';
    }
  }, {
    key: "defaultCommands",
    value: function defaultCommands() {
      return this.importCommands(commands);
    }
  }]);
  return Component;
}(_componentBase.default);

exports.default = Component;

/***/ }),

/***/ "../assets/dev/js/editor/document/history/commands/base/base.js":
/*!**********************************************************************!*\
  !*** ../assets/dev/js/editor/document/history/commands/base/base.js ***!
  \**********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandInternalBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-internal-base */ "../core/common/assets/js/api/modules/command-internal-base.js"));

var Base = /*#__PURE__*/function (_CommandInternalBase) {
  (0, _inherits2.default)(Base, _CommandInternalBase);

  var _super = (0, _createSuper2.default)(Base);

  function Base() {
    (0, _classCallCheck2.default)(this, Base);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Base, [{
    key: "initialize",
    value: function initialize(args) {
      (0, _get2.default)((0, _getPrototypeOf2.default)(Base.prototype), "initialize", this).call(this, args);
      /**
       * @type {HistoryManager}
       */

      this.history = elementor.documents.getCurrent().history;
    }
  }]);
  return Base;
}(_commandInternalBase.default);

exports.default = Base;

/***/ }),

/***/ "../assets/dev/js/editor/document/history/commands/do.js":
/*!***************************************************************!*\
  !*** ../assets/dev/js/editor/document/history/commands/do.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Do = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Do = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Do, _CommandBase);

  var _super = (0, _createSuper2.default)(Do);

  function Do() {
    (0, _classCallCheck2.default)(this, Do);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Do, [{
    key: "apply",
    value: function apply(args) {
      var index = args.index;
      return elementor.documents.getCurrent().history.doItem(index);
    }
  }]);
  return Do;
}(_commandBase.default);

exports.Do = Do;
var _default = Do;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/history/commands/index.js":
/*!******************************************************************!*\
  !*** ../assets/dev/js/editor/document/history/commands/index.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "Do", {
  enumerable: true,
  get: function get() {
    return _do.Do;
  }
});

_Object$defineProperty(exports, "Redo", {
  enumerable: true,
  get: function get() {
    return _redo.Redo;
  }
});

_Object$defineProperty(exports, "Undo", {
  enumerable: true,
  get: function get() {
    return _undo.Undo;
  }
});

_Object$defineProperty(exports, "UndoAll", {
  enumerable: true,
  get: function get() {
    return _undoAll.UndoAll;
  }
});

var _do = __webpack_require__(/*! ./do */ "../assets/dev/js/editor/document/history/commands/do.js");

var _redo = __webpack_require__(/*! ./redo */ "../assets/dev/js/editor/document/history/commands/redo.js");

var _undo = __webpack_require__(/*! ./undo */ "../assets/dev/js/editor/document/history/commands/undo.js");

var _undoAll = __webpack_require__(/*! ./undo-all */ "../assets/dev/js/editor/document/history/commands/undo-all.js");

/***/ }),

/***/ "../assets/dev/js/editor/document/history/commands/internal/add-transaction.js":
/*!*************************************************************************************!*\
  !*** ../assets/dev/js/editor/document/history/commands/internal/add-transaction.js ***!
  \*************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.AddTransaction = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _base = _interopRequireDefault(__webpack_require__(/*! ../base/base */ "../assets/dev/js/editor/document/history/commands/base/base.js"));

var AddTransaction = /*#__PURE__*/function (_Base) {
  (0, _inherits2.default)(AddTransaction, _Base);

  var _super = (0, _createSuper2.default)(AddTransaction);

  function AddTransaction() {
    (0, _classCallCheck2.default)(this, AddTransaction);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(AddTransaction, [{
    key: "initialize",
    value: function initialize(args) {
      (0, _get2.default)((0, _getPrototypeOf2.default)(AddTransaction.prototype), "initialize", this).call(this, args);
      /**
       * Debounce always send 'add-transaction' with title & subTitle, when the transaction
       * already started, there is no need to save those args they are useless.
       */

      if (this.component.isTransactionStarted()) {
        delete args.title;
        delete args.subTitle;
      }
    }
  }, {
    key: "validateArgs",
    value: function validateArgs(args) {
      this.requireContainer();
      this.requireArgumentType('type', 'string', args);
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var currentId = this.history.getCurrentId();

      if (currentId) {
        // If log already started chain his historyId.
        args.id = currentId;
      }

      args = this.component.normalizeLogTitle(args);
      this.component.transactions.push(args);
    }
  }]);
  return AddTransaction;
}(_base.default);

exports.AddTransaction = AddTransaction;
var _default = AddTransaction;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/history/commands/internal/clear-transaction.js":
/*!***************************************************************************************!*\
  !*** ../assets/dev/js/editor/document/history/commands/internal/clear-transaction.js ***!
  \***************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.ClearTransaction = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _base = _interopRequireDefault(__webpack_require__(/*! ../base/base */ "../assets/dev/js/editor/document/history/commands/base/base.js"));

var ClearTransaction = /*#__PURE__*/function (_Base) {
  (0, _inherits2.default)(ClearTransaction, _Base);

  var _super = (0, _createSuper2.default)(ClearTransaction);

  function ClearTransaction() {
    (0, _classCallCheck2.default)(this, ClearTransaction);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(ClearTransaction, [{
    key: "apply",
    value: function apply() {
      this.component.transactions = [];
    }
  }]);
  return ClearTransaction;
}(_base.default);

exports.ClearTransaction = ClearTransaction;
var _default = ClearTransaction;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/history/commands/internal/delete-log.js":
/*!********************************************************************************!*\
  !*** ../assets/dev/js/editor/document/history/commands/internal/delete-log.js ***!
  \********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.DeleteLog = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _base = _interopRequireDefault(__webpack_require__(/*! ../base/base */ "../assets/dev/js/editor/document/history/commands/base/base.js"));

var DeleteLog = /*#__PURE__*/function (_Base) {
  (0, _inherits2.default)(DeleteLog, _Base);

  var _super = (0, _createSuper2.default)(DeleteLog);

  function DeleteLog() {
    (0, _classCallCheck2.default)(this, DeleteLog);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(DeleteLog, [{
    key: "apply",
    value: function apply(args) {
      if (args.id) {
        this.history.deleteItem(args.id);
      }
    }
  }]);
  return DeleteLog;
}(_base.default);

exports.DeleteLog = DeleteLog;
var _default = DeleteLog;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/history/commands/internal/end-log.js":
/*!*****************************************************************************!*\
  !*** ../assets/dev/js/editor/document/history/commands/internal/end-log.js ***!
  \*****************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.EndLog = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _base = _interopRequireDefault(__webpack_require__(/*! ../base/base */ "../assets/dev/js/editor/document/history/commands/base/base.js"));

var EndLog = /*#__PURE__*/function (_Base) {
  (0, _inherits2.default)(EndLog, _Base);

  var _super = (0, _createSuper2.default)(EndLog);

  function EndLog() {
    (0, _classCallCheck2.default)(this, EndLog);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(EndLog, [{
    key: "apply",
    value: function apply(args) {
      if (args.id) {
        this.history.endItem(args.id);
      }
    }
  }]);
  return EndLog;
}(_base.default);

exports.EndLog = EndLog;
var _default = EndLog;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/history/commands/internal/end-transaction.js":
/*!*************************************************************************************!*\
  !*** ../assets/dev/js/editor/document/history/commands/internal/end-transaction.js ***!
  \*************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.EndTransaction = void 0;

var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _base = _interopRequireDefault(__webpack_require__(/*! ../base/base */ "../assets/dev/js/editor/document/history/commands/base/base.js"));

var EndTransaction = /*#__PURE__*/function (_Base) {
  (0, _inherits2.default)(EndTransaction, _Base);

  var _super = (0, _createSuper2.default)(EndTransaction);

  function EndTransaction() {
    (0, _classCallCheck2.default)(this, EndTransaction);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(EndTransaction, [{
    key: "apply",
    value: function apply() {
      if (!this.component.isTransactionStarted()) {
        return;
      }

      var firstItem = this.component.transactions[0],
          type = firstItem.type,
          transactions = this.component.mergeTransactions(this.component.transactions);
      var _firstItem$title = firstItem.title,
          title = _firstItem$title === void 0 ? '' : _firstItem$title,
          _firstItem$subTitle = firstItem.subTitle,
          subTitle = _firstItem$subTitle === void 0 ? '' : _firstItem$subTitle; // 'elements' title for multiple containers.

      if (transactions.length > 1) {
        title = __('Elements', 'elementor');
        subTitle = '';
      }

      var history = {
        title: title,
        subTitle: subTitle,
        type: type
      }; // If firstItem have id already it means that log already started for that transaction.

      if (firstItem.id) {
        history.id = firstItem.id;
      }

      var historyId = $e.internal('document/history/start-log', history);
      (0, _values.default)(transactions).forEach(function (item) {
        var itemArgs = item; // If log already started chain his historyId.

        if (firstItem.id) {
          itemArgs.id = firstItem.id;
        }

        $e.internal('document/history/log-sub-item', itemArgs);
      });
      $e.internal('document/history/end-log', {
        id: historyId
      }); // Clear transactions before leave.

      $e.internal('document/history/clear-transaction');
    }
  }]);
  return EndTransaction;
}(_base.default);

exports.EndTransaction = EndTransaction;
var _default = EndTransaction;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/history/commands/internal/index.js":
/*!***************************************************************************!*\
  !*** ../assets/dev/js/editor/document/history/commands/internal/index.js ***!
  \***************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "AddTransaction", {
  enumerable: true,
  get: function get() {
    return _addTransaction.AddTransaction;
  }
});

_Object$defineProperty(exports, "ClearTransaction", {
  enumerable: true,
  get: function get() {
    return _clearTransaction.ClearTransaction;
  }
});

_Object$defineProperty(exports, "DeleteLog", {
  enumerable: true,
  get: function get() {
    return _deleteLog.DeleteLog;
  }
});

_Object$defineProperty(exports, "EndLog", {
  enumerable: true,
  get: function get() {
    return _endLog.EndLog;
  }
});

_Object$defineProperty(exports, "EndTransaction", {
  enumerable: true,
  get: function get() {
    return _endTransaction.EndTransaction;
  }
});

_Object$defineProperty(exports, "LogSubItem", {
  enumerable: true,
  get: function get() {
    return _logSubItem.LogSubItem;
  }
});

_Object$defineProperty(exports, "StartLog", {
  enumerable: true,
  get: function get() {
    return _startLog.StartLog;
  }
});

var _addTransaction = __webpack_require__(/*! ./add-transaction */ "../assets/dev/js/editor/document/history/commands/internal/add-transaction.js");

var _clearTransaction = __webpack_require__(/*! ./clear-transaction */ "../assets/dev/js/editor/document/history/commands/internal/clear-transaction.js");

var _deleteLog = __webpack_require__(/*! ./delete-log */ "../assets/dev/js/editor/document/history/commands/internal/delete-log.js");

var _endLog = __webpack_require__(/*! ./end-log */ "../assets/dev/js/editor/document/history/commands/internal/end-log.js");

var _endTransaction = __webpack_require__(/*! ./end-transaction */ "../assets/dev/js/editor/document/history/commands/internal/end-transaction.js");

var _logSubItem = __webpack_require__(/*! ./log-sub-item */ "../assets/dev/js/editor/document/history/commands/internal/log-sub-item.js");

var _startLog = __webpack_require__(/*! ./start-log */ "../assets/dev/js/editor/document/history/commands/internal/start-log.js");

/***/ }),

/***/ "../assets/dev/js/editor/document/history/commands/internal/log-sub-item.js":
/*!**********************************************************************************!*\
  !*** ../assets/dev/js/editor/document/history/commands/internal/log-sub-item.js ***!
  \**********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.LogSubItem = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _base = _interopRequireDefault(__webpack_require__(/*! ../base/base */ "../assets/dev/js/editor/document/history/commands/base/base.js"));

var LogSubItem = /*#__PURE__*/function (_Base) {
  (0, _inherits2.default)(LogSubItem, _Base);

  var _super = (0, _createSuper2.default)(LogSubItem);

  function LogSubItem() {
    (0, _classCallCheck2.default)(this, LogSubItem);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(LogSubItem, [{
    key: "apply",
    value: function apply(args) {
      if (!this.history.getActive()) {
        return;
      }

      var id = args.id || this.history.getCurrentId();
      args = this.component.normalizeLogTitle(args);
      var items = this.history.getItems(),
          item = items.findWhere({
        id: id
      });

      if (!item) {
        throw new Error('History item not found.');
      }
      /**
       * Sometimes `args.id` passed to `LogSubItem`, to add sub item for specific id.
       * this `id` should not be passed as sub-item.
       */


      if (args.id) {
        delete args.id;
      }

      item.get('items').unshift(args);
    }
  }]);
  return LogSubItem;
}(_base.default);

exports.LogSubItem = LogSubItem;
var _default = LogSubItem;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/history/commands/internal/start-log.js":
/*!*******************************************************************************!*\
  !*** ../assets/dev/js/editor/document/history/commands/internal/start-log.js ***!
  \*******************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.StartLog = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _base = _interopRequireDefault(__webpack_require__(/*! ../base/base */ "../assets/dev/js/editor/document/history/commands/base/base.js"));

var StartLog = /*#__PURE__*/function (_Base) {
  (0, _inherits2.default)(StartLog, _Base);

  var _super = (0, _createSuper2.default)(StartLog);

  function StartLog() {
    (0, _classCallCheck2.default)(this, StartLog);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(StartLog, [{
    key: "initialize",
    value: function initialize(args) {
      (0, _get2.default)((0, _getPrototypeOf2.default)(StartLog.prototype), "initialize", this).call(this, args);

      if (this.history.isItemStarted() || args.id) {
        this.isSubItem = true;
        return;
      }

      this.args = this.component.normalizeLogTitle(args);
    }
  }, {
    key: "validateArgs",
    value: function validateArgs(args) {
      if (!this.isSubItem) {
        this.requireArgumentType('type', 'string', args);
        this.requireArgumentType('title', 'string', args);
      }
    }
  }, {
    key: "apply",
    value: function apply(args) {
      if (this.isSubItem) {
        $e.internal('document/history/log-sub-item', args);
        return null;
      }

      return this.history.startItem(args);
    }
  }]);
  return StartLog;
}(_base.default);

exports.StartLog = StartLog;
var _default = StartLog;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/history/commands/redo.js":
/*!*****************************************************************!*\
  !*** ../assets/dev/js/editor/document/history/commands/redo.js ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Redo = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Redo = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Redo, _CommandBase);

  var _super = (0, _createSuper2.default)(Redo);

  function Redo() {
    (0, _classCallCheck2.default)(this, Redo);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Redo, [{
    key: "apply",
    value: function apply() {
      elementor.documents.getCurrent().history.navigate(true);
    }
  }]);
  return Redo;
}(_commandBase.default);

exports.Redo = Redo;
var _default = Redo;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/history/commands/undo-all.js":
/*!*********************************************************************!*\
  !*** ../assets/dev/js/editor/document/history/commands/undo-all.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.UndoAll = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var UndoAll = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(UndoAll, _CommandBase);

  var _super = (0, _createSuper2.default)(UndoAll);

  function UndoAll() {
    (0, _classCallCheck2.default)(this, UndoAll);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(UndoAll, [{
    key: "apply",
    value: function apply(args) {
      var document = args.document;
      document.history.doItem(document.history.getItems().length - 1);
    }
  }]);
  return UndoAll;
}(_commandBase.default);

exports.UndoAll = UndoAll;
var _default = UndoAll;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/history/commands/undo.js":
/*!*****************************************************************!*\
  !*** ../assets/dev/js/editor/document/history/commands/undo.js ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Undo = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Undo = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Undo, _CommandBase);

  var _super = (0, _createSuper2.default)(Undo);

  function Undo() {
    (0, _classCallCheck2.default)(this, Undo);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Undo, [{
    key: "apply",
    value: function apply() {
      elementor.documents.getCurrent().history.navigate();
    }
  }]);
  return Undo;
}(_commandBase.default);

exports.Undo = Undo;
var _default = Undo;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/history/component.js":
/*!*************************************************************!*\
  !*** ../assets/dev/js/editor/document/history/component.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _componentBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-base */ "../core/common/assets/js/api/modules/component-base.js"));

var commands = _interopRequireWildcard(__webpack_require__(/*! ./commands/ */ "../assets/dev/js/editor/document/history/commands/index.js"));

var commandsInternal = _interopRequireWildcard(__webpack_require__(/*! ./commands/internal/ */ "../assets/dev/js/editor/document/history/commands/internal/index.js"));

var Component = /*#__PURE__*/function (_ComponentBase) {
  (0, _inherits2.default)(Component, _ComponentBase);

  var _super = (0, _createSuper2.default)(Component);

  function Component() {
    (0, _classCallCheck2.default)(this, Component);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Component, [{
    key: "__construct",
    value: function __construct(args) {
      (0, _get2.default)((0, _getPrototypeOf2.default)(Component.prototype), "__construct", this).call(this, args);
      /**
       * Transactions holder.
       *
       * @type {Array}
       */

      this.transactions = [];
    }
  }, {
    key: "getNamespace",
    value: function getNamespace() {
      return 'document/history';
    }
  }, {
    key: "defaultCommands",
    value: function defaultCommands() {
      return this.importCommands(commands);
    }
  }, {
    key: "defaultCommandsInternal",
    value: function defaultCommandsInternal() {
      return this.importCommands(commandsInternal);
    }
  }, {
    key: "normalizeLogTitle",
    value: function normalizeLogTitle(args) {
      var _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers;

      if (!args.title && containers[0]) {
        if (1 === containers.length) {
          args.title = containers[0].label;
        } else {
          args.title = __('Elements', 'elementor');
        }
      }

      return args;
    }
  }, {
    key: "mergeTransactions",
    value: function mergeTransactions(transactions) {
      var result = {};
      transactions.forEach(function (itemArgs) {
        // If no containers at the current transaction.
        if (!itemArgs.container && !itemArgs.containers) {
          return;
        }

        var _itemArgs$containers = itemArgs.containers,
            containers = _itemArgs$containers === void 0 ? [itemArgs.container] : _itemArgs$containers;

        if (containers) {
          containers.forEach(function (container) {
            if (!itemArgs.data) {
              return;
            } // Replace new changes by current itemArgs.


            if (result[container.id]) {
              result[container.id].data.changes[container.id].new = itemArgs.data.changes[container.id].new;
              return;
            }

            result[container.id] = itemArgs;
          });
        }
      });
      return result;
    }
  }, {
    key: "isTransactionStarted",
    value: function isTransactionStarted() {
      return Boolean(this.transactions.length);
    }
  }]);
  return Component;
}(_componentBase.default);

exports.default = Component;

/***/ }),

/***/ "../assets/dev/js/editor/document/hooks/data/document/elements/base/reset-layout-base.js":
/*!***********************************************************************************************!*\
  !*** ../assets/dev/js/editor/document/hooks/data/document/elements/base/reset-layout-base.js ***!
  \***********************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _isArray = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _after = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/hooks/data/after */ "../core/common/assets/js/api/modules/hooks/data/after.js"));

var ResetLayoutBase = /*#__PURE__*/function (_After) {
  (0, _inherits2.default)(ResetLayoutBase, _After);

  var _super = (0, _createSuper2.default)(ResetLayoutBase);

  function ResetLayoutBase() {
    (0, _classCallCheck2.default)(this, ResetLayoutBase);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(ResetLayoutBase, [{
    key: "getConditions",
    value: function getConditions() {
      // On `document/elements/move` do not fire the hook!.
      return !$e.commands.isCurrentFirstTrace('document/elements/move');
    }
    /**
     * @inheritDoc
     *
     * @param {{}} args
     * @param {Container||Container[]} containers
     *
     * @returns {boolean}
     */

  }, {
    key: "apply",
    value: function apply(args, containers) {
      if (!(0, _isArray.default)(containers)) {
        containers = [containers];
      }

      containers.forEach(function (
      /**Container*/
      container) {
        return container.parent.view.resetLayout(false);
      });
    }
  }]);
  return ResetLayoutBase;
}(_after.default);

exports.default = ResetLayoutBase;

/***/ }),

/***/ "../assets/dev/js/editor/document/hooks/data/document/elements/create/create-section-columns-reset-layout.js":
/*!*******************************************************************************************************************!*\
  !*** ../assets/dev/js/editor/document/hooks/data/document/elements/create/create-section-columns-reset-layout.js ***!
  \*******************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.CreateSectionColumnsResetLayout = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _resetLayoutBase = _interopRequireDefault(__webpack_require__(/*! ../base/reset-layout-base */ "../assets/dev/js/editor/document/hooks/data/document/elements/base/reset-layout-base.js"));

var CreateSectionColumnsResetLayout = /*#__PURE__*/function (_ResetLayoutBase) {
  (0, _inherits2.default)(CreateSectionColumnsResetLayout, _ResetLayoutBase);

  var _super = (0, _createSuper2.default)(CreateSectionColumnsResetLayout);

  function CreateSectionColumnsResetLayout() {
    (0, _classCallCheck2.default)(this, CreateSectionColumnsResetLayout);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(CreateSectionColumnsResetLayout, [{
    key: "getCommand",
    value: function getCommand() {
      return 'document/elements/create';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'section-columns-reset-layout--document/elements/create';
    }
  }, {
    key: "getContainerType",
    value: function getContainerType() {
      return 'section';
    }
  }]);
  return CreateSectionColumnsResetLayout;
}(_resetLayoutBase.default);

exports.CreateSectionColumnsResetLayout = CreateSectionColumnsResetLayout;
var _default = CreateSectionColumnsResetLayout;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/hooks/data/document/elements/create/index.js":
/*!*************************************************************************************!*\
  !*** ../assets/dev/js/editor/document/hooks/data/document/elements/create/index.js ***!
  \*************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "CreateSectionColumnsResetLayout", {
  enumerable: true,
  get: function get() {
    return _createSectionColumnsResetLayout.CreateSectionColumnsResetLayout;
  }
});

_Object$defineProperty(exports, "InnerSectionColumns", {
  enumerable: true,
  get: function get() {
    return _innerSectionColumns.InnerSectionColumns;
  }
});

_Object$defineProperty(exports, "IsValidChild", {
  enumerable: true,
  get: function get() {
    return _isValidChild.IsValidChild;
  }
});

_Object$defineProperty(exports, "SectionColumns", {
  enumerable: true,
  get: function get() {
    return _sectionColumns.SectionColumns;
  }
});

_Object$defineProperty(exports, "SectionColumnsLimit", {
  enumerable: true,
  get: function get() {
    return _sectionColumnsLimit.SectionColumnsLimit;
  }
});

var _createSectionColumnsResetLayout = __webpack_require__(/*! ./create-section-columns-reset-layout */ "../assets/dev/js/editor/document/hooks/data/document/elements/create/create-section-columns-reset-layout.js");

var _innerSectionColumns = __webpack_require__(/*! ./inner-section-columns */ "../assets/dev/js/editor/document/hooks/data/document/elements/create/inner-section-columns.js");

var _isValidChild = __webpack_require__(/*! ./is-valid-child */ "../assets/dev/js/editor/document/hooks/data/document/elements/create/is-valid-child.js");

var _sectionColumns = __webpack_require__(/*! ./section-columns */ "../assets/dev/js/editor/document/hooks/data/document/elements/create/section-columns.js");

var _sectionColumnsLimit = __webpack_require__(/*! ./section-columns-limit */ "../assets/dev/js/editor/document/hooks/data/document/elements/create/section-columns-limit.js");

/***/ }),

/***/ "../assets/dev/js/editor/document/hooks/data/document/elements/create/inner-section-columns.js":
/*!*****************************************************************************************************!*\
  !*** ../assets/dev/js/editor/document/hooks/data/document/elements/create/inner-section-columns.js ***!
  \*****************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.InnerSectionColumns = void 0;

var _isArray = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _after = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/hooks/data/after */ "../core/common/assets/js/api/modules/hooks/data/after.js"));

var _helper = _interopRequireDefault(__webpack_require__(/*! ../helper */ "../assets/dev/js/editor/document/hooks/data/document/elements/helper.js"));

var _section = __webpack_require__(/*! elementor-elements/views/section */ "../assets/dev/js/editor/elements/views/section.js");

var InnerSectionColumns = /*#__PURE__*/function (_After) {
  (0, _inherits2.default)(InnerSectionColumns, _After);

  var _super = (0, _createSuper2.default)(InnerSectionColumns);

  function InnerSectionColumns() {
    (0, _classCallCheck2.default)(this, InnerSectionColumns);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(InnerSectionColumns, [{
    key: "getCommand",
    value: function getCommand() {
      return 'document/elements/create';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'create-inner-section-columns';
    }
  }, {
    key: "getContainerType",
    value: function getContainerType() {
      return 'column';
    }
  }, {
    key: "getConditions",
    value: function getConditions(args) {
      return args.model.isInner && !args.model.elements;
    }
    /**
     * @inheritDoc
     *
     * @param {{}} args
     * @param {Container||Container[]} containers
     *
     * @returns {boolean}
     */

  }, {
    key: "apply",
    value: function apply(args, containers) {
      var _args$structure = args.structure,
          structure = _args$structure === void 0 ? '20' : _args$structure,
          _args$options = args.options,
          options = _args$options === void 0 ? {} : _args$options;

      if (!(0, _isArray.default)(containers)) {
        containers = [containers];
      }

      _helper.default.createSectionColumns(containers, _section.DEFAULT_INNER_SECTION_COLUMNS, options, structure);
    }
  }]);
  return InnerSectionColumns;
}(_after.default);

exports.InnerSectionColumns = InnerSectionColumns;
var _default = InnerSectionColumns;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/hooks/data/document/elements/create/is-valid-child.js":
/*!**********************************************************************************************!*\
  !*** ../assets/dev/js/editor/document/hooks/data/document/elements/create/is-valid-child.js ***!
  \**********************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.IsValidChild = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _dependency = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/hooks/data/dependency */ "../core/common/assets/js/api/modules/hooks/data/dependency.js"));

var IsValidChild = /*#__PURE__*/function (_Dependency) {
  (0, _inherits2.default)(IsValidChild, _Dependency);

  var _super = (0, _createSuper2.default)(IsValidChild);

  function IsValidChild() {
    (0, _classCallCheck2.default)(this, IsValidChild);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(IsValidChild, [{
    key: "getCommand",
    value: function getCommand() {
      return 'document/elements/create';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'is-valid-child';
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers,
          _args$model = args.model,
          model = _args$model === void 0 ? {} : _args$model,
          modelToCreate = new Backbone.Model(model);
      return containers.some(function (
      /* Container */
      container) {
        return $e.components.get('document/elements').utils.isValidChild(modelToCreate, container.model);
      });
    }
  }]);
  return IsValidChild;
}(_dependency.default);

exports.IsValidChild = IsValidChild;
var _default = IsValidChild;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/hooks/data/document/elements/create/section-columns-limit.js":
/*!*****************************************************************************************************!*\
  !*** ../assets/dev/js/editor/document/hooks/data/document/elements/create/section-columns-limit.js ***!
  \*****************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.SectionColumnsLimit = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _dependency = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/hooks/data/dependency */ "../core/common/assets/js/api/modules/hooks/data/dependency.js"));

var SectionColumnsLimit = /*#__PURE__*/function (_Dependency) {
  (0, _inherits2.default)(SectionColumnsLimit, _Dependency);

  var _super = (0, _createSuper2.default)(SectionColumnsLimit);

  function SectionColumnsLimit() {
    (0, _classCallCheck2.default)(this, SectionColumnsLimit);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(SectionColumnsLimit, [{
    key: "getCommand",
    value: function getCommand() {
      return 'document/elements/create';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'section-columns-limit';
    }
  }, {
    key: "getContainerType",
    value: function getContainerType() {
      return 'section';
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers; // If one of the targets have maximum columns reached break the command.

      return !containers.some(function (
      /**Container*/
      container) {
        return container.view.isCollectionFilled();
      });
    }
  }]);
  return SectionColumnsLimit;
}(_dependency.default);

exports.SectionColumnsLimit = SectionColumnsLimit;
var _default = SectionColumnsLimit;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/hooks/data/document/elements/create/section-columns.js":
/*!***********************************************************************************************!*\
  !*** ../assets/dev/js/editor/document/hooks/data/document/elements/create/section-columns.js ***!
  \***********************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.SectionColumns = void 0;

var _isArray = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _after = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/hooks/data/after */ "../core/common/assets/js/api/modules/hooks/data/after.js"));

var _helper = _interopRequireDefault(__webpack_require__(/*! ../helper */ "../assets/dev/js/editor/document/hooks/data/document/elements/helper.js"));

var _section = __webpack_require__(/*! elementor-elements/views/section */ "../assets/dev/js/editor/elements/views/section.js");

var SectionColumns = /*#__PURE__*/function (_After) {
  (0, _inherits2.default)(SectionColumns, _After);

  var _super = (0, _createSuper2.default)(SectionColumns);

  function SectionColumns() {
    (0, _classCallCheck2.default)(this, SectionColumns);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(SectionColumns, [{
    key: "getCommand",
    value: function getCommand() {
      return 'document/elements/create';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'create-section-columns';
    }
  }, {
    key: "getContainerType",
    value: function getContainerType() {
      return 'document';
    }
  }, {
    key: "getConditions",
    value: function getConditions(args) {
      return !args.model.elements;
    }
    /**
     * @inheritDoc
     *
     * @param {{}} args
     * @param {Container||Container[]} containers
     *
     * @returns {boolean}
     */

  }, {
    key: "apply",
    value: function apply(args, containers) {
      var _args$structure = args.structure,
          structure = _args$structure === void 0 ? false : _args$structure,
          _args$options = args.options,
          options = _args$options === void 0 ? {} : _args$options;

      if (!(0, _isArray.default)(containers)) {
        containers = [containers];
      }

      var _args$columns = args.columns,
          columns = _args$columns === void 0 ? 1 : _args$columns;

      if (args.model.isInner && 1 === columns) {
        columns = _section.DEFAULT_INNER_SECTION_COLUMNS;
      }

      _helper.default.createSectionColumns(containers, columns, options, structure);
    }
  }]);
  return SectionColumns;
}(_after.default);

exports.SectionColumns = SectionColumns;
var _default = SectionColumns;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/hooks/data/document/elements/delete/create-column-for-empty-section.js":
/*!***************************************************************************************************************!*\
  !*** ../assets/dev/js/editor/document/hooks/data/document/elements/delete/create-column-for-empty-section.js ***!
  \***************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.CreateColumnForEmptySection = void 0;

var _isArray = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _after = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/hooks/data/after */ "../core/common/assets/js/api/modules/hooks/data/after.js"));

var CreateColumnForEmptySection = /*#__PURE__*/function (_After) {
  (0, _inherits2.default)(CreateColumnForEmptySection, _After);

  var _super = (0, _createSuper2.default)(CreateColumnForEmptySection);

  function CreateColumnForEmptySection() {
    (0, _classCallCheck2.default)(this, CreateColumnForEmptySection);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(CreateColumnForEmptySection, [{
    key: "getCommand",
    value: function getCommand() {
      return 'document/elements/delete';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'create-column-for-empty-section--document/elements/delete';
    }
  }, {
    key: "getContainerType",
    value: function getContainerType() {
      return 'column';
    }
  }, {
    key: "getConditions",
    value: function getConditions() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      var _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers; // Validate also that its a section, this is hook should not work with new flex container.

      return containers.some(function (container) {
        return 'section' === container.parent.type && 0 === container.parent.children.length;
      });
    }
    /**
     * @inheritDoc
     *
     * @param {{}} args
     * @param {Container||Container[]} containers
     *
     * @returns {boolean}
     */

  }, {
    key: "apply",
    value: function apply(args, containers) {
      if (!(0, _isArray.default)(containers)) {
        containers = [containers];
      }

      containers.forEach(function (
      /**Container*/
      container) {
        var parent = container.parent; // If deleted the last column, should recreate it.

        if (0 === parent.children.length) {
          $e.run('document/elements/create', {
            container: parent,
            model: {
              elType: 'column'
            }
          });
        }
      });
    }
  }]);
  return CreateColumnForEmptySection;
}(_after.default);

exports.CreateColumnForEmptySection = CreateColumnForEmptySection;
var _default = CreateColumnForEmptySection;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/hooks/data/document/elements/delete/delete-column-columns-reset-layout.js":
/*!******************************************************************************************************************!*\
  !*** ../assets/dev/js/editor/document/hooks/data/document/elements/delete/delete-column-columns-reset-layout.js ***!
  \******************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.DeleteColumnColumnsResetLayout = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _resetLayoutBase = _interopRequireDefault(__webpack_require__(/*! ../base/reset-layout-base */ "../assets/dev/js/editor/document/hooks/data/document/elements/base/reset-layout-base.js"));

var DeleteColumnColumnsResetLayout = /*#__PURE__*/function (_ResetLayoutBase) {
  (0, _inherits2.default)(DeleteColumnColumnsResetLayout, _ResetLayoutBase);

  var _super = (0, _createSuper2.default)(DeleteColumnColumnsResetLayout);

  function DeleteColumnColumnsResetLayout() {
    (0, _classCallCheck2.default)(this, DeleteColumnColumnsResetLayout);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(DeleteColumnColumnsResetLayout, [{
    key: "getCommand",
    value: function getCommand() {
      return 'document/elements/delete';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'section-columns-reset-layout--document/elements/delete';
    }
  }, {
    key: "getContainerType",
    value: function getContainerType() {
      return 'column';
    }
  }]);
  return DeleteColumnColumnsResetLayout;
}(_resetLayoutBase.default);

exports.DeleteColumnColumnsResetLayout = DeleteColumnColumnsResetLayout;
var _default = DeleteColumnColumnsResetLayout;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/hooks/data/document/elements/delete/index.js":
/*!*************************************************************************************!*\
  !*** ../assets/dev/js/editor/document/hooks/data/document/elements/delete/index.js ***!
  \*************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "CreateColumnForEmptySection", {
  enumerable: true,
  get: function get() {
    return _createColumnForEmptySection.CreateColumnForEmptySection;
  }
});

_Object$defineProperty(exports, "DeleteColumnColumnsResetLayout", {
  enumerable: true,
  get: function get() {
    return _deleteColumnColumnsResetLayout.DeleteColumnColumnsResetLayout;
  }
});

var _createColumnForEmptySection = __webpack_require__(/*! ./create-column-for-empty-section */ "../assets/dev/js/editor/document/hooks/data/document/elements/delete/create-column-for-empty-section.js");

var _deleteColumnColumnsResetLayout = __webpack_require__(/*! ./delete-column-columns-reset-layout */ "../assets/dev/js/editor/document/hooks/data/document/elements/delete/delete-column-columns-reset-layout.js");

/***/ }),

/***/ "../assets/dev/js/editor/document/hooks/data/document/elements/helper.js":
/*!*******************************************************************************!*\
  !*** ../assets/dev/js/editor/document/hooks/data/document/elements/helper.js ***!
  \*******************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _commands = __webpack_require__(/*! elementor-document/elements/commands */ "../assets/dev/js/editor/document/elements/commands/index.js");

var Helper = /*#__PURE__*/function () {
  function Helper() {
    (0, _classCallCheck2.default)(this, Helper);
  }

  (0, _createClass2.default)(Helper, null, [{
    key: "createSectionColumns",
    value: function createSectionColumns(containers, columns, options) {
      var structure = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
      containers.forEach(function (
      /**Container*/
      container) {
        for (var loopIndex = 0; loopIndex < columns; loopIndex++) {
          var model = {
            id: elementorCommon.helpers.getUniqueId(),
            elType: 'column',
            settings: {},
            elements: []
          };
          /**
           * TODO: Try improve performance of using 'document/elements/create` instead of manual create.
           */

          container.view.addChildModel(model);
          /**
           * Manual history & not using of `$e.run('document/elements/create')`
           * For performance reasons.
           */

          $e.internal('document/history/log-sub-item', {
            container: container,
            type: 'sub-add',
            restore: _commands.Create.restore,
            options: options,
            data: {
              containerToRestore: container,
              modelToRestore: model
            }
          });
        }
      });

      if (structure) {
        containers.forEach(function (
        /* Container */
        container) {
          container.view.setStructure(structure, false);
        });
      } else if (columns) {
        containers.forEach(function (
        /* Container */
        container) {
          return container.view.resetLayout();
        }); // Focus on last container.

        containers[containers.length - 1].model.trigger('request:edit');
      }
    }
  }]);
  return Helper;
}();

exports.default = Helper;

/***/ }),

/***/ "../assets/dev/js/editor/document/hooks/data/document/elements/move/index.js":
/*!***********************************************************************************!*\
  !*** ../assets/dev/js/editor/document/hooks/data/document/elements/move/index.js ***!
  \***********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "SectionColumnsSetStructure", {
  enumerable: true,
  get: function get() {
    return _sectionColumnsSetStructure.SectionColumnsSetStructure;
  }
});

var _sectionColumnsSetStructure = __webpack_require__(/*! ./section-columns-set-structure */ "../assets/dev/js/editor/document/hooks/data/document/elements/move/section-columns-set-structure.js");

/***/ }),

/***/ "../assets/dev/js/editor/document/hooks/data/document/elements/move/section-columns-set-structure.js":
/*!***********************************************************************************************************!*\
  !*** ../assets/dev/js/editor/document/hooks/data/document/elements/move/section-columns-set-structure.js ***!
  \***********************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.SectionColumnsSetStructure = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _after = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/hooks/data/after */ "../core/common/assets/js/api/modules/hooks/data/after.js"));

var SectionColumnsSetStructure = /*#__PURE__*/function (_After) {
  (0, _inherits2.default)(SectionColumnsSetStructure, _After);

  var _super = (0, _createSuper2.default)(SectionColumnsSetStructure);

  function SectionColumnsSetStructure() {
    (0, _classCallCheck2.default)(this, SectionColumnsSetStructure);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(SectionColumnsSetStructure, [{
    key: "getCommand",
    value: function getCommand() {
      return 'document/elements/move';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'section-columns-set-structure';
    }
  }, {
    key: "getContainerType",
    value: function getContainerType() {
      return 'column';
    }
  }, {
    key: "getConditions",
    value: function getConditions(args) {
      var _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers,
          target = args.target; // Fire the hook only when target is not equals to moved container parent.

      return containers.some(function (
      /* Container */
      container) {
        return container.parent !== target;
      });
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var _args$containers2 = args.containers,
          containers = _args$containers2 === void 0 ? [args.container] : _args$containers2,
          target = args.target;
      containers.forEach(function (
      /* Container */
      container) {
        return container.parent.view.resetLayout();
      });
      target.view.resetLayout();
      return true;
    }
  }]);
  return SectionColumnsSetStructure;
}(_after.default);

exports.SectionColumnsSetStructure = SectionColumnsSetStructure;
var _default = SectionColumnsSetStructure;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/hooks/data/document/elements/paste/index.js":
/*!************************************************************************************!*\
  !*** ../assets/dev/js/editor/document/hooks/data/document/elements/paste/index.js ***!
  \************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "IsPasteEnabled", {
  enumerable: true,
  get: function get() {
    return _isPasteEnabled.IsPasteEnabled;
  }
});

var _isPasteEnabled = __webpack_require__(/*! ./is-paste-enabled */ "../assets/dev/js/editor/document/hooks/data/document/elements/paste/is-paste-enabled.js");

/***/ }),

/***/ "../assets/dev/js/editor/document/hooks/data/document/elements/paste/is-paste-enabled.js":
/*!***********************************************************************************************!*\
  !*** ../assets/dev/js/editor/document/hooks/data/document/elements/paste/is-paste-enabled.js ***!
  \***********************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.IsPasteEnabled = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _dependency = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/hooks/data/dependency */ "../core/common/assets/js/api/modules/hooks/data/dependency.js"));

var IsPasteEnabled = /*#__PURE__*/function (_Dependency) {
  (0, _inherits2.default)(IsPasteEnabled, _Dependency);

  var _super = (0, _createSuper2.default)(IsPasteEnabled);

  function IsPasteEnabled() {
    (0, _classCallCheck2.default)(this, IsPasteEnabled);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(IsPasteEnabled, [{
    key: "getCommand",
    value: function getCommand() {
      return 'document/elements/paste';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'is-paste-enabled';
    }
  }, {
    key: "getConditions",
    value: function getConditions(args) {
      return !args.rebuild;
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers;
      return containers.some(function (container) {
        return $e.components.get('document/elements').utils.isPasteEnabled(container);
      });
    }
  }]);
  return IsPasteEnabled;
}(_dependency.default);

exports.IsPasteEnabled = IsPasteEnabled;
var _default = IsPasteEnabled;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/hooks/data/document/elements/settings/handle-dynamic.js":
/*!************************************************************************************************!*\
  !*** ../assets/dev/js/editor/document/hooks/data/document/elements/settings/handle-dynamic.js ***!
  \************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.HandleDynamic = void 0;

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _after = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/hooks/data/after */ "../core/common/assets/js/api/modules/hooks/data/after.js"));

var HandleDynamic = /*#__PURE__*/function (_After) {
  (0, _inherits2.default)(HandleDynamic, _After);

  var _super = (0, _createSuper2.default)(HandleDynamic);

  function HandleDynamic() {
    (0, _classCallCheck2.default)(this, HandleDynamic);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(HandleDynamic, [{
    key: "getCommand",
    value: function getCommand() {
      return 'document/elements/settings';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'handle-dynamic';
    }
  }, {
    key: "getContainerType",
    value: function getContainerType() {
      return 'dynamic';
    }
  }, {
    key: "getConditions",
    value: function getConditions(args) {
      var _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers;
      return containers.some(function (
      /**Container*/
      container) {
        return 'dynamic' === container.type;
      });
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var _args$containers2 = args.containers,
          containers = _args$containers2 === void 0 ? [args.container] : _args$containers2;
      containers.forEach(function (
      /**Container*/
      container) {
        if ('dynamic' === container.type) {
          var tagText = elementor.dynamicTags.tagContainerToTagText(container),
              commandArgs = {
            container: container.parent,
            settings: (0, _defineProperty2.default)({}, container.view.options.controlName, tagText)
          };
          $e.run('document/dynamic/settings', commandArgs);
        }
      });
      return true;
    }
  }]);
  return HandleDynamic;
}(_after.default);

exports.HandleDynamic = HandleDynamic;
var _default = HandleDynamic;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/hooks/data/document/elements/settings/index.js":
/*!***************************************************************************************!*\
  !*** ../assets/dev/js/editor/document/hooks/data/document/elements/settings/index.js ***!
  \***************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "HandleDynamic", {
  enumerable: true,
  get: function get() {
    return _handleDynamic.HandleDynamic;
  }
});

_Object$defineProperty(exports, "ResizeColumn", {
  enumerable: true,
  get: function get() {
    return _resizeColumn.ResizeColumn;
  }
});

_Object$defineProperty(exports, "ResizeColumnLimit", {
  enumerable: true,
  get: function get() {
    return _resizeColumnLimit.ResizeColumnLimit;
  }
});

_Object$defineProperty(exports, "SetStructure", {
  enumerable: true,
  get: function get() {
    return _setStructure.SetStructure;
  }
});

var _handleDynamic = __webpack_require__(/*! ./handle-dynamic */ "../assets/dev/js/editor/document/hooks/data/document/elements/settings/handle-dynamic.js");

var _resizeColumn = __webpack_require__(/*! ./resize-column */ "../assets/dev/js/editor/document/hooks/data/document/elements/settings/resize-column.js");

var _resizeColumnLimit = __webpack_require__(/*! ./resize-column-limit */ "../assets/dev/js/editor/document/hooks/data/document/elements/settings/resize-column-limit.js");

var _setStructure = __webpack_require__(/*! ./set-structure */ "../assets/dev/js/editor/document/hooks/data/document/elements/settings/set-structure.js");

/***/ }),

/***/ "../assets/dev/js/editor/document/hooks/data/document/elements/settings/resize-column-limit.js":
/*!*****************************************************************************************************!*\
  !*** ../assets/dev/js/editor/document/hooks/data/document/elements/settings/resize-column-limit.js ***!
  \*****************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.ResizeColumnLimit = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _dependency = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/hooks/data/dependency */ "../core/common/assets/js/api/modules/hooks/data/dependency.js"));

var _section = __webpack_require__(/*! elementor-elements/views/section */ "../assets/dev/js/editor/elements/views/section.js");

var ResizeColumnLimit = /*#__PURE__*/function (_Dependency) {
  (0, _inherits2.default)(ResizeColumnLimit, _Dependency);

  var _super = (0, _createSuper2.default)(ResizeColumnLimit);

  function ResizeColumnLimit() {
    (0, _classCallCheck2.default)(this, ResizeColumnLimit);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(ResizeColumnLimit, [{
    key: "getCommand",
    value: function getCommand() {
      return 'document/elements/settings';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'resize-column-limit';
    }
  }, {
    key: "getContainerType",
    value: function getContainerType() {
      return 'column';
    }
  }, {
    key: "getConditions",
    value: function getConditions(args) {
      return args.settings._inline_size;
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers;
      return containers.some(function (
      /**Container*/
      container) {
        var parentView = container.parent.view,
            columnView = container.view,
            currentSize = container.settings.get('_inline_size') || container.settings.get('_column_size'),
            newSize = args.settings._inline_size,
            nextChildView = parentView.getNextColumn(columnView) || parentView.getPreviousColumn(columnView);

        if (!nextChildView) {
          if ($e.devTools) {
            $e.devTools.log.error('There is not any next column');
          }

          return false;
        }

        var $nextElement = nextChildView.$el,
            nextElementCurrentSize = +nextChildView.model.getSetting('_inline_size') || parentView.getColumnPercentSize($nextElement, $nextElement[0].getBoundingClientRect().width),
            nextElementNewSize = +(currentSize + nextElementCurrentSize - newSize).toFixed(3);

        if (nextElementNewSize < _section.DEFAULT_INNER_SECTION_COLUMNS) {
          if ($e.devTools) {
            $e.devTools.log.error('New column width is too large');
          }

          return false;
        }

        if (newSize < _section.DEFAULT_INNER_SECTION_COLUMNS) {
          if ($e.devTools) {
            $e.devTools.log.error('New column width is too small');
          }

          return false;
        }

        return true;
      });
    }
  }]);
  return ResizeColumnLimit;
}(_dependency.default);

exports.ResizeColumnLimit = ResizeColumnLimit;
var _default = ResizeColumnLimit;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/hooks/data/document/elements/settings/resize-column.js":
/*!***********************************************************************************************!*\
  !*** ../assets/dev/js/editor/document/hooks/data/document/elements/settings/resize-column.js ***!
  \***********************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.ResizeColumn = void 0;

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _after = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/hooks/data/after */ "../core/common/assets/js/api/modules/hooks/data/after.js"));

var ResizeColumn = /*#__PURE__*/function (_After) {
  (0, _inherits2.default)(ResizeColumn, _After);

  var _super = (0, _createSuper2.default)(ResizeColumn);

  function ResizeColumn() {
    (0, _classCallCheck2.default)(this, ResizeColumn);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(ResizeColumn, [{
    key: "getCommand",
    value: function getCommand() {
      return 'document/elements/settings';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'resize-column';
    }
  }, {
    key: "getContainerType",
    value: function getContainerType() {
      return 'column';
    }
  }, {
    key: "getConditions",
    value: function getConditions(args) {
      return args.settings._inline_size;
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var _this = this;

      var _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers;
      containers.forEach(function (
      /**Container*/
      container) {
        _this.resizeColumn(container, args.settings._inline_size);
      });
      return true;
    }
  }, {
    key: "resizeColumn",
    value: function resizeColumn(container, newSize) {
      var nextContainer = container.parent.view.getNeighborContainer(container);

      if (!nextContainer) {
        return false;
      }

      var parentView = container.parent.view,
          currentColumnView = container.view;
      var currentSize = null;

      if (undefined === container.oldValues || null === container.oldValues._inline_size) {
        // Mean, that it was not set before ( first time ).
        currentSize = container.settings.get('_column_size');
      } else {
        var totalWidth = parentView.$el.find(' > .elementor-container')[0].getBoundingClientRect().width;
        currentSize = +(container.oldValues._inline_size || currentColumnView.el.getBoundingClientRect().width / totalWidth * 100);
      }

      var nextChildView = nextContainer.view,
          $nextElement = nextChildView.$el,
          nextElementCurrentSize = +nextChildView.model.getSetting('_inline_size') || container.parent.view.getColumnPercentSize($nextElement, $nextElement[0].getBoundingClientRect().width),
          nextElementNewSize = +(currentSize + nextElementCurrentSize - newSize).toFixed(3);
      /**
       * TODO: Hook prevented ( next command will not call recursive hook ), but we didnt tell the hook to be prevented
       * consider: '$e.hooks.preventRecursive()'.
       */

      $e.run('document/elements/settings', {
        containers: [nextContainer],
        settings: {
          _inline_size: nextElementNewSize
        },
        options: {
          callbacks: {
            'resize-column-limit': false
          },
          history: {
            title: elementor.config.elements.column.controls._inline_size.label
          },
          external: true,
          debounce: true
        }
      });
      return true;
    }
  }]);
  return ResizeColumn;
}(_after.default);

exports.ResizeColumn = ResizeColumn;
var _default = ResizeColumn;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/hooks/data/document/elements/settings/set-structure.js":
/*!***********************************************************************************************!*\
  !*** ../assets/dev/js/editor/document/hooks/data/document/elements/settings/set-structure.js ***!
  \***********************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.SetStructure = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _after = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/hooks/data/after */ "../core/common/assets/js/api/modules/hooks/data/after.js"));

var SetStructure = /*#__PURE__*/function (_After) {
  (0, _inherits2.default)(SetStructure, _After);

  var _super = (0, _createSuper2.default)(SetStructure);

  function SetStructure() {
    (0, _classCallCheck2.default)(this, SetStructure);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(SetStructure, [{
    key: "getCommand",
    value: function getCommand() {
      return 'document/elements/settings';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'set-structure';
    }
  }, {
    key: "getContainerType",
    value: function getContainerType() {
      return 'section';
    }
  }, {
    key: "getConditions",
    value: function getConditions(args) {
      return !!args.settings.structure;
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers;
      containers.forEach(function (
      /**Container*/
      container) {
        container.view.adjustColumns();
      });
      return true;
    }
  }]);
  return SetStructure;
}(_after.default);

exports.SetStructure = SetStructure;
var _default = SetStructure;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/hooks/data/index.js":
/*!************************************************************!*\
  !*** ../assets/dev/js/editor/document/hooks/data/index.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _Object$keys = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

var _create = __webpack_require__(/*! ./document/elements/create/ */ "../assets/dev/js/editor/document/hooks/data/document/elements/create/index.js");

_Object$keys(_create).forEach(function (key) {
  if (key === "default" || key === "__esModule") return;
  if (key in exports && exports[key] === _create[key]) return;

  _Object$defineProperty(exports, key, {
    enumerable: true,
    get: function get() {
      return _create[key];
    }
  });
});

var _delete = __webpack_require__(/*! ./document/elements/delete/ */ "../assets/dev/js/editor/document/hooks/data/document/elements/delete/index.js");

_Object$keys(_delete).forEach(function (key) {
  if (key === "default" || key === "__esModule") return;
  if (key in exports && exports[key] === _delete[key]) return;

  _Object$defineProperty(exports, key, {
    enumerable: true,
    get: function get() {
      return _delete[key];
    }
  });
});

var _move = __webpack_require__(/*! ./document/elements/move/ */ "../assets/dev/js/editor/document/hooks/data/document/elements/move/index.js");

_Object$keys(_move).forEach(function (key) {
  if (key === "default" || key === "__esModule") return;
  if (key in exports && exports[key] === _move[key]) return;

  _Object$defineProperty(exports, key, {
    enumerable: true,
    get: function get() {
      return _move[key];
    }
  });
});

var _paste = __webpack_require__(/*! ./document/elements/paste/ */ "../assets/dev/js/editor/document/hooks/data/document/elements/paste/index.js");

_Object$keys(_paste).forEach(function (key) {
  if (key === "default" || key === "__esModule") return;
  if (key in exports && exports[key] === _paste[key]) return;

  _Object$defineProperty(exports, key, {
    enumerable: true,
    get: function get() {
      return _paste[key];
    }
  });
});

var _settings = __webpack_require__(/*! ./document/elements/settings/ */ "../assets/dev/js/editor/document/hooks/data/document/elements/settings/index.js");

_Object$keys(_settings).forEach(function (key) {
  if (key === "default" || key === "__esModule") return;
  if (key in exports && exports[key] === _settings[key]) return;

  _Object$defineProperty(exports, key, {
    enumerable: true,
    get: function get() {
      return _settings[key];
    }
  });
});

/***/ }),

/***/ "../assets/dev/js/editor/document/hooks/index.js":
/*!*******************************************************!*\
  !*** ../assets/dev/js/editor/document/hooks/index.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _Object$keys = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

var _data = __webpack_require__(/*! ./data/ */ "../assets/dev/js/editor/document/hooks/data/index.js");

_Object$keys(_data).forEach(function (key) {
  if (key === "default" || key === "__esModule") return;
  if (key in exports && exports[key] === _data[key]) return;

  _Object$defineProperty(exports, key, {
    enumerable: true,
    get: function get() {
      return _data[key];
    }
  });
});

var _ui = __webpack_require__(/*! ./ui/ */ "../assets/dev/js/editor/document/hooks/ui/index.js");

_Object$keys(_ui).forEach(function (key) {
  if (key === "default" || key === "__esModule") return;
  if (key in exports && exports[key] === _ui[key]) return;

  _Object$defineProperty(exports, key, {
    enumerable: true,
    get: function get() {
      return _ui[key];
    }
  });
});

/***/ }),

/***/ "../assets/dev/js/editor/document/hooks/ui/create/column-is-populated.js":
/*!*******************************************************************************!*\
  !*** ../assets/dev/js/editor/document/hooks/ui/create/column-is-populated.js ***!
  \*******************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.ColumnIsPopulated = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _after = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/hooks/ui/after */ "../core/common/assets/js/api/modules/hooks/ui/after.js"));

var ColumnIsPopulated = /*#__PURE__*/function (_After) {
  (0, _inherits2.default)(ColumnIsPopulated, _After);

  var _super = (0, _createSuper2.default)(ColumnIsPopulated);

  function ColumnIsPopulated() {
    (0, _classCallCheck2.default)(this, ColumnIsPopulated);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(ColumnIsPopulated, [{
    key: "getCommand",
    value: function getCommand() {
      return 'document/elements/create';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'column-is-populated';
    }
  }, {
    key: "getConditions",
    value: function getConditions(args) {
      var _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers; // If the created element, was created at column.

      return containers.some(function (
      /**Container*/
      container) {
        return 'column' === container.model.get('elType');
      });
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var _args$containers2 = args.containers,
          containers = _args$containers2 === void 0 ? [args.container] : _args$containers2;
      containers.forEach(function (
      /* Container */
      container) {
        if ('column' === container.model.get('elType')) {
          container.view.changeChildContainerClasses();
        }
      });
    }
  }]);
  return ColumnIsPopulated;
}(_after.default);

exports.ColumnIsPopulated = ColumnIsPopulated;
var _default = ColumnIsPopulated;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/hooks/ui/create/index.js":
/*!*****************************************************************!*\
  !*** ../assets/dev/js/editor/document/hooks/ui/create/index.js ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "ColumnIsPopulated", {
  enumerable: true,
  get: function get() {
    return _columnIsPopulated.ColumnIsPopulated;
  }
});

_Object$defineProperty(exports, "CreateSectionIsFull", {
  enumerable: true,
  get: function get() {
    return _sectionIsFull.CreateSectionIsFull;
  }
});

var _columnIsPopulated = __webpack_require__(/*! ../create/column-is-populated.js */ "../assets/dev/js/editor/document/hooks/ui/create/column-is-populated.js");

var _sectionIsFull = __webpack_require__(/*! ./section-is-full */ "../assets/dev/js/editor/document/hooks/ui/create/section-is-full.js");

/***/ }),

/***/ "../assets/dev/js/editor/document/hooks/ui/create/section-is-full.js":
/*!***************************************************************************!*\
  !*** ../assets/dev/js/editor/document/hooks/ui/create/section-is-full.js ***!
  \***************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.CreateSectionIsFull = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _after = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/hooks/ui/after */ "../core/common/assets/js/api/modules/hooks/ui/after.js"));

var CreateSectionIsFull = /*#__PURE__*/function (_After) {
  (0, _inherits2.default)(CreateSectionIsFull, _After);

  var _super = (0, _createSuper2.default)(CreateSectionIsFull);

  function CreateSectionIsFull() {
    (0, _classCallCheck2.default)(this, CreateSectionIsFull);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(CreateSectionIsFull, [{
    key: "getCommand",
    value: function getCommand() {
      return 'document/elements/create';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'create-section-is-full';
    }
  }, {
    key: "getConditions",
    value: function getConditions(args) {
      var _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers;
      return containers.some(function (
      /* Container */
      container) {
        return 'section' === container.model.get('elType');
      });
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var _args$containers2 = args.containers,
          containers = _args$containers2 === void 0 ? [args.container] : _args$containers2;
      containers.forEach(function (
      /* Container */
      container) {
        if ('section' === container.model.get('elType')) {
          container.view.toggleSectionIsFull();
        }
      });
    }
  }]);
  return CreateSectionIsFull;
}(_after.default);

exports.CreateSectionIsFull = CreateSectionIsFull;
var _default = CreateSectionIsFull;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/hooks/ui/delete/column-is-empty.js":
/*!***************************************************************************!*\
  !*** ../assets/dev/js/editor/document/hooks/ui/delete/column-is-empty.js ***!
  \***************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.ColumnIsEmpty = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _after = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/hooks/ui/after */ "../core/common/assets/js/api/modules/hooks/ui/after.js"));

var ColumnIsEmpty = /*#__PURE__*/function (_After) {
  (0, _inherits2.default)(ColumnIsEmpty, _After);

  var _super = (0, _createSuper2.default)(ColumnIsEmpty);

  function ColumnIsEmpty() {
    (0, _classCallCheck2.default)(this, ColumnIsEmpty);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(ColumnIsEmpty, [{
    key: "getCommand",
    value: function getCommand() {
      return 'document/elements/delete';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'column-is-empty';
    }
  }, {
    key: "getConditions",
    value: function getConditions(args) {
      var _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers; // If the deleted element, was deleted from column.

      return containers.some(function (
      /**Container*/
      container) {
        return 'column' === container.parent.model.get('elType');
      });
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var _args$containers2 = args.containers,
          containers = _args$containers2 === void 0 ? [args.container] : _args$containers2;
      containers.forEach(function (
      /* Container */
      container) {
        if ('column' === container.parent.model.get('elType')) {
          container.parent.view.changeChildContainerClasses();
        }
      });
    }
  }]);
  return ColumnIsEmpty;
}(_after.default);

exports.ColumnIsEmpty = ColumnIsEmpty;
var _default = ColumnIsEmpty;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/hooks/ui/delete/index.js":
/*!*****************************************************************!*\
  !*** ../assets/dev/js/editor/document/hooks/ui/delete/index.js ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "ColumnIsEmpty", {
  enumerable: true,
  get: function get() {
    return _columnIsEmpty.ColumnIsEmpty;
  }
});

_Object$defineProperty(exports, "DeleteSectionIsFull", {
  enumerable: true,
  get: function get() {
    return _sectionIsFull.DeleteSectionIsFull;
  }
});

var _columnIsEmpty = __webpack_require__(/*! ./column-is-empty */ "../assets/dev/js/editor/document/hooks/ui/delete/column-is-empty.js");

var _sectionIsFull = __webpack_require__(/*! ./section-is-full */ "../assets/dev/js/editor/document/hooks/ui/delete/section-is-full.js");

/***/ }),

/***/ "../assets/dev/js/editor/document/hooks/ui/delete/section-is-full.js":
/*!***************************************************************************!*\
  !*** ../assets/dev/js/editor/document/hooks/ui/delete/section-is-full.js ***!
  \***************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.DeleteSectionIsFull = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _after = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/hooks/ui/after */ "../core/common/assets/js/api/modules/hooks/ui/after.js"));

var DeleteSectionIsFull = /*#__PURE__*/function (_After) {
  (0, _inherits2.default)(DeleteSectionIsFull, _After);

  var _super = (0, _createSuper2.default)(DeleteSectionIsFull);

  function DeleteSectionIsFull() {
    (0, _classCallCheck2.default)(this, DeleteSectionIsFull);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(DeleteSectionIsFull, [{
    key: "getCommand",
    value: function getCommand() {
      return 'document/elements/delete';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'delete-section-is-full';
    }
  }, {
    key: "getConditions",
    value: function getConditions(args) {
      var _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers;
      return containers.some(function (
      /* Container */
      container) {
        return 'column' === container.model.get('elType');
      });
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var _args$containers2 = args.containers,
          containers = _args$containers2 === void 0 ? [args.container] : _args$containers2;
      containers.forEach(function (
      /* Container */
      container) {
        if ('column' === container.model.get('elType')) {
          container.parent.view.toggleSectionIsFull();
        }
      });
    }
  }]);
  return DeleteSectionIsFull;
}(_after.default);

exports.DeleteSectionIsFull = DeleteSectionIsFull;
var _default = DeleteSectionIsFull;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/hooks/ui/index.js":
/*!**********************************************************!*\
  !*** ../assets/dev/js/editor/document/hooks/ui/index.js ***!
  \**********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _Object$keys = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

var _create = __webpack_require__(/*! ./create/ */ "../assets/dev/js/editor/document/hooks/ui/create/index.js");

_Object$keys(_create).forEach(function (key) {
  if (key === "default" || key === "__esModule") return;
  if (key in exports && exports[key] === _create[key]) return;

  _Object$defineProperty(exports, key, {
    enumerable: true,
    get: function get() {
      return _create[key];
    }
  });
});

var _delete = __webpack_require__(/*! ./delete/ */ "../assets/dev/js/editor/document/hooks/ui/delete/index.js");

_Object$keys(_delete).forEach(function (key) {
  if (key === "default" || key === "__esModule") return;
  if (key in exports && exports[key] === _delete[key]) return;

  _Object$defineProperty(exports, key, {
    enumerable: true,
    get: function get() {
      return _delete[key];
    }
  });
});

var _settings = __webpack_require__(/*! ./settings/ */ "../assets/dev/js/editor/document/hooks/ui/settings/index.js");

_Object$keys(_settings).forEach(function (key) {
  if (key === "default" || key === "__esModule") return;
  if (key in exports && exports[key] === _settings[key]) return;

  _Object$defineProperty(exports, key, {
    enumerable: true,
    get: function get() {
      return _settings[key];
    }
  });
});

/***/ }),

/***/ "../assets/dev/js/editor/document/hooks/ui/settings/change-post-title.js":
/*!*******************************************************************************!*\
  !*** ../assets/dev/js/editor/document/hooks/ui/settings/change-post-title.js ***!
  \*******************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.ChangePostTitle = void 0;

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _after = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/hooks/ui/after */ "../core/common/assets/js/api/modules/hooks/ui/after.js"));

var ChangePostTitle = /*#__PURE__*/function (_After) {
  (0, _inherits2.default)(ChangePostTitle, _After);

  var _super = (0, _createSuper2.default)(ChangePostTitle);

  function ChangePostTitle() {
    (0, _classCallCheck2.default)(this, ChangePostTitle);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(ChangePostTitle, [{
    key: "getCommand",
    value: function getCommand() {
      return 'document/elements/settings';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'change-post-title';
    }
  }, {
    key: "getContainerType",
    value: function getContainerType() {
      return 'document';
    }
  }, {
    key: "getConditions",
    value: function getConditions(args) {
      return undefined !== args.settings.post_title;
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var $title = elementorFrontend.elements.$document.find(elementor.config.page_title_selector);
      $title.text(args.settings.post_title);
    }
  }]);
  return ChangePostTitle;
}(_after.default);

exports.ChangePostTitle = ChangePostTitle;
var _default = ChangePostTitle;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/hooks/ui/settings/column-change-size.js":
/*!********************************************************************************!*\
  !*** ../assets/dev/js/editor/document/hooks/ui/settings/column-change-size.js ***!
  \********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.ColumnChangeSize = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _after = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/hooks/ui/after */ "../core/common/assets/js/api/modules/hooks/ui/after.js"));

var ColumnChangeSize = /*#__PURE__*/function (_After) {
  (0, _inherits2.default)(ColumnChangeSize, _After);

  var _super = (0, _createSuper2.default)(ColumnChangeSize);

  function ColumnChangeSize() {
    (0, _classCallCheck2.default)(this, ColumnChangeSize);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(ColumnChangeSize, [{
    key: "getCommand",
    value: function getCommand() {
      return 'document/elements/settings';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'column-change-size';
    }
  }, {
    key: "getConditions",
    value: function getConditions(args) {
      return undefined !== args.settings._inline_size || undefined !== args.settings._column_size;
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers;
      containers.forEach(function (
      /* Container */
      container) {
        container.view.changeSizeUI();
      });
    }
  }]);
  return ColumnChangeSize;
}(_after.default);

exports.ColumnChangeSize = ColumnChangeSize;
var _default = ColumnChangeSize;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/hooks/ui/settings/draggable.js":
/*!***********************************************************************!*\
  !*** ../assets/dev/js/editor/document/hooks/ui/settings/draggable.js ***!
  \***********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Draggable = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _after = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/hooks/ui/after */ "../core/common/assets/js/api/modules/hooks/ui/after.js"));

var Draggable = /*#__PURE__*/function (_After) {
  (0, _inherits2.default)(Draggable, _After);

  var _super = (0, _createSuper2.default)(Draggable);

  function Draggable() {
    (0, _classCallCheck2.default)(this, Draggable);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Draggable, [{
    key: "getCommand",
    value: function getCommand() {
      return 'document/elements/settings';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'draggable';
    }
  }, {
    key: "getConditions",
    value: function getConditions(args) {
      return undefined !== args.settings._position;
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers;
      containers.forEach(function (
      /* Container */
      container) {
        if (container.view.options.draggable) {
          container.view.options.draggable.toggle();
        }
      });
    }
  }]);
  return Draggable;
}(_after.default);

exports.Draggable = Draggable;
var _default = Draggable;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/hooks/ui/settings/index.js":
/*!*******************************************************************!*\
  !*** ../assets/dev/js/editor/document/hooks/ui/settings/index.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "ChangePostTitle", {
  enumerable: true,
  get: function get() {
    return _changePostTitle.ChangePostTitle;
  }
});

_Object$defineProperty(exports, "ColumnChangeSize", {
  enumerable: true,
  get: function get() {
    return _columnChangeSize.ColumnChangeSize;
  }
});

_Object$defineProperty(exports, "Draggable", {
  enumerable: true,
  get: function get() {
    return _draggable.Draggable;
  }
});

_Object$defineProperty(exports, "Resizeable", {
  enumerable: true,
  get: function get() {
    return _resizeable.Resizeable;
  }
});

_Object$defineProperty(exports, "ReloadPreview", {
  enumerable: true,
  get: function get() {
    return _reloadPreview.ReloadPreview;
  }
});

var _changePostTitle = __webpack_require__(/*! ./change-post-title */ "../assets/dev/js/editor/document/hooks/ui/settings/change-post-title.js");

var _columnChangeSize = __webpack_require__(/*! ./column-change-size */ "../assets/dev/js/editor/document/hooks/ui/settings/column-change-size.js");

var _draggable = __webpack_require__(/*! ./draggable */ "../assets/dev/js/editor/document/hooks/ui/settings/draggable.js");

var _resizeable = __webpack_require__(/*! ./resizeable */ "../assets/dev/js/editor/document/hooks/ui/settings/resizeable.js");

var _reloadPreview = __webpack_require__(/*! ./reload-preview */ "../assets/dev/js/editor/document/hooks/ui/settings/reload-preview.js");

/***/ }),

/***/ "../assets/dev/js/editor/document/hooks/ui/settings/reload-preview.js":
/*!****************************************************************************!*\
  !*** ../assets/dev/js/editor/document/hooks/ui/settings/reload-preview.js ***!
  \****************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.ReloadPreview = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _after = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/hooks/ui/after */ "../core/common/assets/js/api/modules/hooks/ui/after.js"));

var ReloadPreview = /*#__PURE__*/function (_After) {
  (0, _inherits2.default)(ReloadPreview, _After);

  var _super = (0, _createSuper2.default)(ReloadPreview);

  function ReloadPreview() {
    (0, _classCallCheck2.default)(this, ReloadPreview);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(ReloadPreview, [{
    key: "getCommand",
    value: function getCommand() {
      return 'document/elements/settings';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'save-layout';
    }
  }, {
    key: "getContainerType",
    value: function getContainerType() {
      return 'document';
    }
  }, {
    key: "getConditions",
    value: function getConditions(args) {
      return !!args.settings.template;
    }
  }, {
    key: "apply",
    value: function apply() {
      return $e.run('document/save/auto', {
        force: true
      }).then(function () {
        elementor.reloadPreview(); // TODO: Fix the route change.

        elementor.once('preview:loaded', function () {
          $e.route('panel/page-settings/settings');
        });
      });
    }
  }]);
  return ReloadPreview;
}(_after.default);

exports.ReloadPreview = ReloadPreview;

/***/ }),

/***/ "../assets/dev/js/editor/document/hooks/ui/settings/resizeable.js":
/*!************************************************************************!*\
  !*** ../assets/dev/js/editor/document/hooks/ui/settings/resizeable.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Resizeable = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _after = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/hooks/ui/after */ "../core/common/assets/js/api/modules/hooks/ui/after.js"));

var Resizeable = /*#__PURE__*/function (_After) {
  (0, _inherits2.default)(Resizeable, _After);

  var _super = (0, _createSuper2.default)(Resizeable);

  function Resizeable() {
    (0, _classCallCheck2.default)(this, Resizeable);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Resizeable, [{
    key: "getCommand",
    value: function getCommand() {
      return 'document/elements/settings';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'resizeable';
    }
  }, {
    key: "getConditions",
    value: function getConditions(args) {
      return undefined !== args.settings._position || undefined !== args.settings._element_width;
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers;
      containers.forEach(function (
      /* Container */
      container) {
        if (container.view.options.resizeable) {
          container.view.options.resizeable.toggle();
        }
      });
    }
  }]);
  return Resizeable;
}(_after.default);

exports.Resizeable = Resizeable;
var _default = Resizeable;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/index.js":
/*!*************************************************!*\
  !*** ../assets/dev/js/editor/document/index.js ***!
  \*************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "DynamicComponent", {
  enumerable: true,
  get: function get() {
    return _component.default;
  }
});

_Object$defineProperty(exports, "ElementsComponent", {
  enumerable: true,
  get: function get() {
    return _component2.default;
  }
});

_Object$defineProperty(exports, "GlobalsComponent", {
  enumerable: true,
  get: function get() {
    return _component3.default;
  }
});

_Object$defineProperty(exports, "HistoryComponent", {
  enumerable: true,
  get: function get() {
    return _component4.default;
  }
});

_Object$defineProperty(exports, "RepeaterComponent", {
  enumerable: true,
  get: function get() {
    return _component5.default;
  }
});

_Object$defineProperty(exports, "SaveComponent", {
  enumerable: true,
  get: function get() {
    return _component6.default;
  }
});

_Object$defineProperty(exports, "UIComponent", {
  enumerable: true,
  get: function get() {
    return _component7.default;
  }
});

var _component = _interopRequireDefault(__webpack_require__(/*! ../document/dynamic/component */ "../assets/dev/js/editor/document/dynamic/component.js"));

var _component2 = _interopRequireDefault(__webpack_require__(/*! ../document/elements/component */ "../assets/dev/js/editor/document/elements/component.js"));

var _component3 = _interopRequireDefault(__webpack_require__(/*! ../document/globals/component */ "../assets/dev/js/editor/document/globals/component.js"));

var _component4 = _interopRequireDefault(__webpack_require__(/*! ../document/history/component */ "../assets/dev/js/editor/document/history/component.js"));

var _component5 = _interopRequireDefault(__webpack_require__(/*! ../document/repeater/component */ "../assets/dev/js/editor/document/repeater/component.js"));

var _component6 = _interopRequireDefault(__webpack_require__(/*! ../document/save/component */ "../assets/dev/js/editor/document/save/component.js"));

var _component7 = _interopRequireDefault(__webpack_require__(/*! ../document/ui/component */ "../assets/dev/js/editor/document/ui/component.js"));

/***/ }),

/***/ "../assets/dev/js/editor/document/repeater/commands/duplicate.js":
/*!***********************************************************************!*\
  !*** ../assets/dev/js/editor/document/repeater/commands/duplicate.js ***!
  \***********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Duplicate = void 0;

var _assign = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/assign */ "../node_modules/@babel/runtime-corejs2/core-js/object/assign.js"));

__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandHistory = _interopRequireDefault(__webpack_require__(/*! elementor-document/commands/base/command-history */ "../assets/dev/js/editor/document/commands/base/command-history.js"));

var Duplicate = /*#__PURE__*/function (_CommandHistory) {
  (0, _inherits2.default)(Duplicate, _CommandHistory);

  var _super = (0, _createSuper2.default)(Duplicate);

  function Duplicate() {
    (0, _classCallCheck2.default)(this, Duplicate);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Duplicate, [{
    key: "validateArgs",
    value: function validateArgs(args) {
      this.requireContainer(args);
      this.requireArgumentType('name', 'string', args);
      this.requireArgumentType('index', 'number', args);
    }
  }, {
    key: "getHistory",
    value: function getHistory(args) {
      var _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers;
      return {
        containers: containers,
        type: 'duplicate',
        subTitle: __('Item', 'elementor')
      };
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var index = args.index,
          name = args.name,
          _args$options = args.options,
          options = _args$options === void 0 ? {} : _args$options,
          _args$containers2 = args.containers,
          containers = _args$containers2 === void 0 ? [args.container] : _args$containers2,
          result = [];
      containers.forEach(function (container) {
        var settingsModel = container.settings,
            collection = settingsModel.get(name),
            model = collection.at(index).toJSON(); // Let the insert handle it, do not use the duplicated id.

        if (model._id) {
          delete model._id;
        }

        result.push($e.run('document/repeater/insert', {
          container: container,
          name: name,
          model: model,
          options: (0, _assign.default)({
            at: index + 1
          }, options)
        }));
      });

      if (1 === result.length) {
        return result[0];
      }

      return result;
    }
  }]);
  return Duplicate;
}(_commandHistory.default);

exports.Duplicate = Duplicate;
var _default = Duplicate;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/repeater/commands/index.js":
/*!*******************************************************************!*\
  !*** ../assets/dev/js/editor/document/repeater/commands/index.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "Duplicate", {
  enumerable: true,
  get: function get() {
    return _duplicate.Duplicate;
  }
});

_Object$defineProperty(exports, "Insert", {
  enumerable: true,
  get: function get() {
    return _insert.Insert;
  }
});

_Object$defineProperty(exports, "Move", {
  enumerable: true,
  get: function get() {
    return _move.Move;
  }
});

_Object$defineProperty(exports, "Remove", {
  enumerable: true,
  get: function get() {
    return _remove.Remove;
  }
});

var _duplicate = __webpack_require__(/*! ./duplicate */ "../assets/dev/js/editor/document/repeater/commands/duplicate.js");

var _insert = __webpack_require__(/*! ./insert */ "../assets/dev/js/editor/document/repeater/commands/insert.js");

var _move = __webpack_require__(/*! ./move */ "../assets/dev/js/editor/document/repeater/commands/move.js");

var _remove = __webpack_require__(/*! ./remove */ "../assets/dev/js/editor/document/repeater/commands/remove.js");

/***/ }),

/***/ "../assets/dev/js/editor/document/repeater/commands/insert.js":
/*!********************************************************************!*\
  !*** ../assets/dev/js/editor/document/repeater/commands/insert.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Insert = void 0;

__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandHistory = _interopRequireDefault(__webpack_require__(/*! elementor-document/commands/base/command-history */ "../assets/dev/js/editor/document/commands/base/command-history.js"));

var Insert = /*#__PURE__*/function (_CommandHistory) {
  (0, _inherits2.default)(Insert, _CommandHistory);

  var _super = (0, _createSuper2.default)(Insert);

  function Insert() {
    (0, _classCallCheck2.default)(this, Insert);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Insert, [{
    key: "initialize",
    value: function initialize(args) {
      (0, _get2.default)((0, _getPrototypeOf2.default)(Insert.prototype), "initialize", this).call(this, args);

      if (!args.model._id) {
        args.model._id = elementorCommon.helpers.getUniqueId();
      }
    }
  }, {
    key: "validateArgs",
    value: function validateArgs(args) {
      this.requireContainer(args);
      this.requireArgumentType('model', 'object', args);
      this.requireArgumentConstructor('name', String, args);
    }
  }, {
    key: "getHistory",
    value: function getHistory(args) {
      var model = args.model,
          name = args.name,
          _args$options = args.options,
          options = _args$options === void 0 ? {
        at: null
      } : _args$options,
          _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers;
      return {
        containers: containers,
        type: 'add',
        subTitle: __('Item', 'elementor'),
        data: {
          model: model,
          name: name,
          index: options.at
        },
        restore: this.constructor.restore
      };
    }
  }, {
    key: "isDataChanged",
    value: function isDataChanged() {
      return true;
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var model = args.model,
          name = args.name,
          _args$options2 = args.options,
          options = _args$options2 === void 0 ? {
        at: null
      } : _args$options2,
          _args$containers2 = args.containers,
          containers = _args$containers2 === void 0 ? [args.container] : _args$containers2,
          result = [];
      containers.forEach(function (container) {
        container = container.lookup();
        var collection = container.settings.get(name);
        options.at = null === options.at ? collection.length : options.at; // On `collection.push` the renderer needs a container, the container needs a settingsModel.

        var rowSettingsModel = collection._prepareModel(model),
            repeaterContainer = container.addRepeaterItem(name, rowSettingsModel, options.at);

        result.push(collection.push(rowSettingsModel, options)); // Trigger render on widget but with the settings of the control.

        repeaterContainer.render();
      });

      if (1 === result.length) {
        return result[0];
      }

      return result;
    }
  }], [{
    key: "restore",
    value: function restore(historyItem, isRedo) {
      var containers = historyItem.get('containers'),
          data = historyItem.get('data');

      if (isRedo) {
        $e.run('document/repeater/insert', {
          containers: containers,
          model: data.model,
          name: data.name,
          options: {
            at: data.index
          }
        });
      } else {
        $e.run('document/repeater/remove', {
          containers: containers,
          name: data.name,
          index: data.index
        });
      }
    }
  }]);
  return Insert;
}(_commandHistory.default);

exports.Insert = Insert;
var _default = Insert;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/repeater/commands/move.js":
/*!******************************************************************!*\
  !*** ../assets/dev/js/editor/document/repeater/commands/move.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Move = void 0;

__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandHistory = _interopRequireDefault(__webpack_require__(/*! elementor-document/commands/base/command-history */ "../assets/dev/js/editor/document/commands/base/command-history.js"));

var Move = /*#__PURE__*/function (_CommandHistory) {
  (0, _inherits2.default)(Move, _CommandHistory);

  var _super = (0, _createSuper2.default)(Move);

  function Move() {
    (0, _classCallCheck2.default)(this, Move);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Move, [{
    key: "validateArgs",
    value: function validateArgs(args) {
      this.requireContainer(args);
      this.requireArgumentType('name', 'string', args);
      this.requireArgumentType('sourceIndex', 'number', args);
      this.requireArgumentType('targetIndex', 'number', args);
    }
  }, {
    key: "getHistory",
    value: function getHistory(args) {
      var _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers;
      return {
        containers: containers,
        type: 'move',
        subTitle: __('Item', 'elementor')
      };
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var sourceIndex = args.sourceIndex,
          targetIndex = args.targetIndex,
          name = args.name,
          _args$containers2 = args.containers,
          containers = _args$containers2 === void 0 ? [args.container] : _args$containers2,
          result = [];
      containers.forEach(function (container) {
        var collection = container.settings.get(name),
            model = elementorCommon.helpers.cloneObject(collection.at(sourceIndex));
        $e.run('document/repeater/remove', {
          container: container,
          name: name,
          index: sourceIndex
        });
        result.push($e.run('document/repeater/insert', {
          container: container,
          name: name,
          model: model,
          options: {
            at: targetIndex
          }
        }));
      });

      if (1 === result.length) {
        return result[0];
      }

      return result;
    }
  }]);
  return Move;
}(_commandHistory.default);

exports.Move = Move;
var _default = Move;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/repeater/commands/remove.js":
/*!********************************************************************!*\
  !*** ../assets/dev/js/editor/document/repeater/commands/remove.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Remove = void 0;

__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandHistory = _interopRequireDefault(__webpack_require__(/*! elementor-document/commands/base/command-history */ "../assets/dev/js/editor/document/commands/base/command-history.js"));

var Remove = /*#__PURE__*/function (_CommandHistory) {
  (0, _inherits2.default)(Remove, _CommandHistory);

  var _super = (0, _createSuper2.default)(Remove);

  function Remove() {
    (0, _classCallCheck2.default)(this, Remove);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Remove, [{
    key: "validateArgs",
    value: function validateArgs(args) {
      this.requireContainer(args);
      this.requireArgumentType('name', 'string', args);
      this.requireArgument('index', args); // sometimes null.
    }
  }, {
    key: "getHistory",
    value: function getHistory(args) {
      var _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers;
      return {
        containers: containers,
        type: 'remove',
        subTitle: __('Item', 'elementor')
      };
    }
  }, {
    key: "isDataChanged",
    value: function isDataChanged() {
      return true;
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var _this = this;

      var name = args.name,
          _args$containers2 = args.containers,
          containers = _args$containers2 === void 0 ? [args.container] : _args$containers2,
          index = null === args.index ? -1 : args.index,
          result = [];
      containers.forEach(function (container) {
        container = container.lookup();
        var collection = container.settings.get(name),
            model = collection.at(index),
            repeaterContainer = container.repeaters[name];

        if (_this.isHistoryActive()) {
          $e.internal('document/history/log-sub-item', {
            container: container,
            data: {
              name: name,
              model: model,
              index: index
            },
            restore: _this.constructor.restore
          });
        } // Remove from container and add to result.


        result.push(repeaterContainer.children.splice(index, 1));
        collection.remove(model); // Trigger render on widget but with the settings of the control.

        repeaterContainer.render();
      });

      if (1 === result.length) {
        return result[0];
      }

      return result;
    }
  }], [{
    key: "restore",
    value: function restore(historyItem, isRedo) {
      var data = historyItem.get('data'),
          container = historyItem.get('container');

      if (isRedo) {
        $e.run('document/repeater/remove', {
          container: container,
          name: data.name,
          index: data.index
        });
      } else {
        $e.run('document/repeater/insert', {
          container: container,
          model: data.model,
          name: data.name,
          options: {
            at: data.index
          }
        });
      }
    }
  }]);
  return Remove;
}(_commandHistory.default);

exports.Remove = Remove;
var _default = Remove;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/repeater/component.js":
/*!**************************************************************!*\
  !*** ../assets/dev/js/editor/document/repeater/component.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _componentBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-base */ "../core/common/assets/js/api/modules/component-base.js"));

var commands = _interopRequireWildcard(__webpack_require__(/*! ./commands/ */ "../assets/dev/js/editor/document/repeater/commands/index.js"));

var Component = /*#__PURE__*/function (_ComponentBase) {
  (0, _inherits2.default)(Component, _ComponentBase);

  var _super = (0, _createSuper2.default)(Component);

  function Component() {
    (0, _classCallCheck2.default)(this, Component);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Component, [{
    key: "getNamespace",
    value: function getNamespace() {
      return 'document/repeater';
    }
  }, {
    key: "defaultCommands",
    value: function defaultCommands() {
      return this.importCommands(commands);
    }
  }]);
  return Component;
}(_componentBase.default);

exports.default = Component;

/***/ }),

/***/ "../assets/dev/js/editor/document/save/backwards-compatibility.js":
/*!************************************************************************!*\
  !*** ../assets/dev/js/editor/document/save/backwards-compatibility.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty2 = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty2(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _defineProperty = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _componentBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-base */ "../core/common/assets/js/api/modules/component-base.js"));

var BackwardsCompatibility = /*#__PURE__*/function (_ComponentBase) {
  (0, _inherits2.default)(BackwardsCompatibility, _ComponentBase);

  var _super = (0, _createSuper2.default)(BackwardsCompatibility);

  function BackwardsCompatibility() {
    (0, _classCallCheck2.default)(this, BackwardsCompatibility);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(BackwardsCompatibility, [{
    key: "__construct",
    value: function __construct() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      (0, _get2.default)((0, _getPrototypeOf2.default)(BackwardsCompatibility.prototype), "__construct", this).call(this, args);
      (0, _defineProperty.default)(this, 'autoSaveTimer', {
        get: function get() {
          elementorCommon.helpers.softDeprecated('elementor.saver.autoSaveTimer', '2.9.0', "$e.components.get( 'editor/documents' ).autoSaveTimers");
          return $e.components.get('editor/documents').autoSaveTimers;
        },
        set: function set(value) {
          elementorCommon.helpers.softDeprecated('elementor.saver.autoSaveTimer', '2.9.0', "$e.components.get( 'editor/documents' ).autoSaveTimers[ documentId ]");
          var documentId = elementor.documents.getCurrent();
          $e.components.get('editor/documents').autoSaveTimers[documentId] = value;
        }
      });
      var onOrig = this.on;

      this.on = function (eventName, callback, context) {
        elementorCommon.helpers.softDeprecated('elementor.saver.on', '2.9.0', '$e.hooks');
        onOrig(eventName, callback, context);
      };

      elementor.on('document:loaded', function () {
        if (elementor.channels.editor._events && elementor.channels.editor._events.saved) {
          elementorCommon.helpers.softDeprecated("elementor.channels.editor.on( 'saved', ... )", '2.9.0', '$e.hooks');
        }
      });
    }
  }, {
    key: "defaultSave",
    value: function defaultSave() {
      elementorCommon.helpers.softDeprecated('defaultSave', '2.9.0', "$e.run( 'document/save/default' )");
      return $e.run('document/save/default');
    }
  }, {
    key: "discard",
    value: function discard() {
      elementorCommon.helpers.softDeprecated('discard', '2.9.0', "$e.run( 'document/save/discard' )");
      return $e.run('document/save/discard');
    }
  }, {
    key: "doAutoSave",
    value: function doAutoSave() {
      elementorCommon.helpers.softDeprecated('doAutoSave', '2.9.0', "$e.run( 'document/save/auto' )");
      return $e.run('document/save/auto');
    }
  }, {
    key: "publish",
    value: function publish(options) {
      elementorCommon.helpers.softDeprecated('publish', '2.9.0', "$e.run( 'document/save/publish' )");
      return $e.run('document/save/auto', {
        options: options
      });
    }
  }, {
    key: "saveAutoSave",
    value: function saveAutoSave(options) {
      elementorCommon.helpers.softDeprecated('saveAutoSave', '2.9.0', "$e.run( 'document/save/auto', { force: true } )");
      options.force = true;
      return $e.run('document/save/auto', options);
    }
  }, {
    key: "saveDraft",
    value: function saveDraft() {
      elementorCommon.helpers.softDeprecated('saveDraft', '2.9.0', "$e.run( 'document/save/draft' )");
      return $e.run('document/save/draft');
    }
  }, {
    key: "savePending",
    value: function savePending() {
      elementorCommon.helpers.softDeprecated('savePending', '2.9.0', "$e.run( 'document/save/pending' )");
      return $e.run('document/save/pending');
    }
  }, {
    key: "update",
    value: function update(options) {
      elementorCommon.helpers.softDeprecated('update', '2.9.0', "$e.run( 'document/save/update' )");
      return $e.run('document/save/update', options);
    }
  }, {
    key: "startTimer",
    value: function startTimer() {
      elementorCommon.helpers.softDeprecated('startTimer', '2.9.0', "$e.components.get( 'document/save' ).startAutoSave");
      throw Error('Deprecated');
    }
  }, {
    key: "saveEditor",
    value: function saveEditor(options) {
      elementorCommon.helpers.softDeprecated('saveEditor', '2.9.0', "$e.internal( 'document/save/save' )");
      $e.internal('document/save/save', options);
    }
  }, {
    key: "setFlagEditorChange",
    value: function setFlagEditorChange(status) {
      elementorCommon.helpers.softDeprecated('setFlagEditorChange', '2.9.0', "$e.internal( 'document/save/set-is-modified' )");
      $e.internal('document/save/set-is-modified', {
        status: status
      });
    }
  }]);
  return BackwardsCompatibility;
}(_componentBase.default);

exports.default = BackwardsCompatibility;

/***/ }),

/***/ "../assets/dev/js/editor/document/save/commands/auto.js":
/*!**************************************************************!*\
  !*** ../assets/dev/js/editor/document/save/commands/auto.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Auto = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _base = _interopRequireDefault(__webpack_require__(/*! ./base/base */ "../assets/dev/js/editor/document/save/commands/base/base.js"));

var Auto = /*#__PURE__*/function (_Base) {
  (0, _inherits2.default)(Auto, _Base);

  var _super = (0, _createSuper2.default)(Auto);

  function Auto() {
    (0, _classCallCheck2.default)(this, Auto);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Auto, [{
    key: "apply",
    value: function apply(args) {
      var _args$force = args.force,
          force = _args$force === void 0 ? false : _args$force,
          _args$document = args.document,
          document = _args$document === void 0 ? this.document : _args$document;

      if (!force && !document.container.isEditable()) {
        return jQuery.Deferred().reject('Document is not editable');
      }

      if (!document.editor.isChanged) {
        return jQuery.Deferred().resolve('Document is not changed');
      }

      args.status = 'autosave';
      args.document = document;
      return $e.internal('document/save/save', args);
    }
  }]);
  return Auto;
}(_base.default);

exports.Auto = Auto;
var _default = Auto;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/save/commands/base/base.js":
/*!*******************************************************************!*\
  !*** ../assets/dev/js/editor/document/save/commands/base/base.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Base = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Base, _CommandBase);

  var _super = (0, _createSuper2.default)(Base);

  function Base() {
    (0, _classCallCheck2.default)(this, Base);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Base, [{
    key: "initialize",
    value: function initialize(args) {
      (0, _get2.default)((0, _getPrototypeOf2.default)(Base.prototype), "initialize", this).call(this, args);
      var _args$document = args.document,
          document = _args$document === void 0 ? elementor.documents.getCurrent() : _args$document;
      this.document = document;
    }
  }]);
  return Base;
}(_commandBase.default);

exports.default = Base;

/***/ }),

/***/ "../assets/dev/js/editor/document/save/commands/default.js":
/*!*****************************************************************!*\
  !*** ../assets/dev/js/editor/document/save/commands/default.js ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _base = _interopRequireDefault(__webpack_require__(/*! ./base/base */ "../assets/dev/js/editor/document/save/commands/base/base.js"));

var Default = /*#__PURE__*/function (_Base) {
  (0, _inherits2.default)(Default, _Base);

  var _super = (0, _createSuper2.default)(Default);

  function Default() {
    (0, _classCallCheck2.default)(this, Default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Default, [{
    key: "apply",
    value: function apply() {
      var document = this.document,
          postStatus = document.container.settings.get('post_status');
      var deferred;

      switch (postStatus) {
        case 'publish':
        case 'future':
        case 'private':
          deferred = $e.run('document/save/update', {
            document: document
          });
          break;

        case 'draft':
          if (document.config.user.can_publish) {
            deferred = $e.run('document/save/publish', {
              document: document
            });
          } else {
            deferred = $e.run('document/save/pending', {
              document: document
            });
          }

          break;

        case 'pending': // User cannot change post status

        case undefined:
          // TODO: as a contributor it's undefined instead of 'pending'.
          if (document.config.user.can_publish) {
            deferred = $e.run('document/save/publish', {
              document: document
            });
          } else {
            deferred = $e.run('document/save/update', {
              document: document
            });
          }

      }

      return deferred;
    }
  }]);
  return Default;
}(_base.default);

exports.Default = Default;
var _default = Default;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/save/commands/discard.js":
/*!*****************************************************************!*\
  !*** ../assets/dev/js/editor/document/save/commands/discard.js ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Discard = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _base = _interopRequireDefault(__webpack_require__(/*! ./base/base */ "../assets/dev/js/editor/document/save/commands/base/base.js"));

var Discard = /*#__PURE__*/function (_Base) {
  (0, _inherits2.default)(Discard, _Base);

  var _super = (0, _createSuper2.default)(Discard);

  function Discard() {
    (0, _classCallCheck2.default)(this, Discard);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Discard, [{
    key: "apply",
    value: function apply(args) {
      var _args$document = args.document,
          document = _args$document === void 0 ? elementor.documents.getCurrent() : _args$document; // Start server request before undo, because the undo can take time.

      var deferred = elementorCommon.ajax.addRequest('discard_changes');
      $e.run('document/history/undo-all', {
        document: document
      }); // Discard autosave revision if exist.

      return deferred;
    }
  }]);
  return Discard;
}(_base.default);

exports.Discard = Discard;
var _default = Discard;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/save/commands/draft.js":
/*!***************************************************************!*\
  !*** ../assets/dev/js/editor/document/save/commands/draft.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Draft = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _base = _interopRequireDefault(__webpack_require__(/*! ./base/base */ "../assets/dev/js/editor/document/save/commands/base/base.js"));

var Draft = /*#__PURE__*/function (_Base) {
  (0, _inherits2.default)(Draft, _Base);

  var _super = (0, _createSuper2.default)(Draft);

  function Draft() {
    (0, _classCallCheck2.default)(this, Draft);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Draft, [{
    key: "apply",
    value: function apply() {
      var document = this.document,
          postStatus = document.container.settings.get('post_status'); // If no changes - don't save but allow un-publish.

      if (!document.editor.isChanged && 'draft' !== postStatus) {
        return jQuery.Deferred().reject('Document is not editable');
      }

      var deferred;

      switch (postStatus) {
        case 'publish':
        case 'private':
          deferred = $e.run('document/save/auto', {
            document: document
          });
          break;

        default:
          // Update and create a revision
          deferred = $e.run('document/save/update', {
            document: document
          });
      }

      return deferred;
    }
  }]);
  return Draft;
}(_base.default);

exports.Draft = Draft;
var _default = Draft;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/save/commands/index.js":
/*!***************************************************************!*\
  !*** ../assets/dev/js/editor/document/save/commands/index.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "Auto", {
  enumerable: true,
  get: function get() {
    return _auto.Auto;
  }
});

_Object$defineProperty(exports, "Default", {
  enumerable: true,
  get: function get() {
    return _default.Default;
  }
});

_Object$defineProperty(exports, "Discard", {
  enumerable: true,
  get: function get() {
    return _discard.Discard;
  }
});

_Object$defineProperty(exports, "Draft", {
  enumerable: true,
  get: function get() {
    return _draft.Draft;
  }
});

_Object$defineProperty(exports, "Pending", {
  enumerable: true,
  get: function get() {
    return _pending.Pending;
  }
});

_Object$defineProperty(exports, "Publish", {
  enumerable: true,
  get: function get() {
    return _publish.Publish;
  }
});

_Object$defineProperty(exports, "Update", {
  enumerable: true,
  get: function get() {
    return _update.Update;
  }
});

var _auto = __webpack_require__(/*! ./auto */ "../assets/dev/js/editor/document/save/commands/auto.js");

var _default = __webpack_require__(/*! ./default */ "../assets/dev/js/editor/document/save/commands/default.js");

var _discard = __webpack_require__(/*! ./discard */ "../assets/dev/js/editor/document/save/commands/discard.js");

var _draft = __webpack_require__(/*! ./draft */ "../assets/dev/js/editor/document/save/commands/draft.js");

var _pending = __webpack_require__(/*! ./pending */ "../assets/dev/js/editor/document/save/commands/pending.js");

var _publish = __webpack_require__(/*! ./publish */ "../assets/dev/js/editor/document/save/commands/publish.js");

var _update = __webpack_require__(/*! ./update */ "../assets/dev/js/editor/document/save/commands/update.js");

/***/ }),

/***/ "../assets/dev/js/editor/document/save/commands/internal/index.js":
/*!************************************************************************!*\
  !*** ../assets/dev/js/editor/document/save/commands/internal/index.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "Save", {
  enumerable: true,
  get: function get() {
    return _save.Save;
  }
});

_Object$defineProperty(exports, "SetIsModified", {
  enumerable: true,
  get: function get() {
    return _setIsModified.SetIsModified;
  }
});

var _save = __webpack_require__(/*! ./save.js */ "../assets/dev/js/editor/document/save/commands/internal/save.js");

var _setIsModified = __webpack_require__(/*! ./set-is-modified */ "../assets/dev/js/editor/document/save/commands/internal/set-is-modified.js");

/***/ }),

/***/ "../assets/dev/js/editor/document/save/commands/internal/save.js":
/*!***********************************************************************!*\
  !*** ../assets/dev/js/editor/document/save/commands/internal/save.js ***!
  \***********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Save = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandInternalBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-internal-base */ "../core/common/assets/js/api/modules/command-internal-base.js"));

var Save = /*#__PURE__*/function (_CommandInternalBase) {
  (0, _inherits2.default)(Save, _CommandInternalBase);

  var _super = (0, _createSuper2.default)(Save);

  function Save() {
    (0, _classCallCheck2.default)(this, Save);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Save, [{
    key: "apply",
    value: function apply(args) {
      var _this = this;

      var _args$status = args.status,
          status = _args$status === void 0 ? 'draft' : _args$status,
          _args$force = args.force,
          force = _args$force === void 0 ? false : _args$force,
          _args$onSuccess = args.onSuccess,
          onSuccess = _args$onSuccess === void 0 ? null : _args$onSuccess,
          _args$document = args.document,
          document = _args$document === void 0 ? elementor.documents.getCurrent() : _args$document;

      if (!force && document.editor.isSaving) {
        return jQuery.Deferred().reject('Document already in save progress');
      }

      var container = document.container,
          settings = container.settings.toJSON({
        remove: ['default']
      }),
          oldStatus = container.settings.get('post_status'); // TODO: Remove - Backwards compatibility.

      elementor.saver.trigger('before:save', args).trigger('before:save:' + status, args);
      document.editor.isSaving = true;
      document.editor.isChangedDuringSave = false;
      settings.post_status = status;
      var elements = [];

      if (elementor.config.document.panel.has_elements) {
        elements = container.model.get('elements').toJSON({
          remove: ['default', 'editSettings', 'defaultEditSettings']
        });
      }

      var successArgs = {
        status: status,
        oldStatus: oldStatus,
        elements: elements,
        document: document,
        currentHistoryId: document.history.currentItem.get('id')
      };
      var deferred = elementorCommon.ajax.addRequest('save_builder', {
        data: {
          status: status,
          elements: elements,
          settings: settings
        },
        error: function error(data) {
          return _this.onSaveError(data, status, document);
        }
      }).then(function (data) {
        return _this.onSaveSuccess(data, successArgs, onSuccess);
      }); // TODO: Remove - Backwards compatibility

      elementor.saver.trigger('save', args);
      return deferred;
    }
  }, {
    key: "onSaveSuccess",
    value: function onSaveSuccess(data, args) {
      var callback = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
      var status = args.status,
          oldStatus = args.oldStatus,
          elements = args.elements,
          document = args.document,
          currentHistoryId = args.currentHistoryId;
      this.onAfterAjax(document);
      document.editor.lastSaveHistoryId = currentHistoryId; // Remove document cache.

      elementor.documents.invalidateCache(document.id);
      var statusChanged = status !== oldStatus,
          result = {
        data: data,
        statusChanged: statusChanged
      }; // Document is switched during the save, do nothing.

      if (document !== elementor.documents.getCurrent()) {
        return result;
      }

      if (!document.editor.isChangedDuringSave) {
        document.editor.isSaved = true;
      } // TODO: Move to hook.


      if ('autosave' !== status) {
        if (statusChanged) {
          $e.run('document/elements/settings', {
            container: elementor.settings.page.getEditedView().getContainer(),
            settings: {
              post_status: status
            },
            options: {
              external: true
            }
          });
        } // Notice: Must be after update page.model.post_status to the new status.


        if (!document.editor.isChangedDuringSave) {
          $e.internal('document/save/set-is-modified', {
            status: false
          });
        }
      }

      if (data.config) {
        // TODO: Move to es6.
        jQuery.extend(true, document.config, data.config.document);
      }

      if (document.config.elements) {
        document.config.elements = elements;
      } // TODO: Remove - Backwards compatibility


      elementor.channels.editor.trigger('saved', data); // TODO: Remove - Backwards compatibility

      elementor.saver.trigger('after:save', data).trigger('after:save:' + status, data); // TODO: Remove - Backwards compatibility

      if (statusChanged) {
        elementor.saver.trigger('page:status:change', status, oldStatus);
      }

      if (_.isFunction(callback)) {
        callback.call(this, result);
      }

      return result;
    }
  }, {
    key: "onSaveError",
    value: function onSaveError(data, status, document) {
      this.onAfterAjax(document); // TODO: Remove - Backwards compatibility

      elementor.saver.trigger('after:saveError', data).trigger('after:saveError:' + status, data);
      var message;

      if (_.isString(data)) {
        message = data;
      } else if (data.statusText) {
        message = elementor.createAjaxErrorMessage(data);

        if (0 === data.readyState) {
          message += ' ' + __('Saving has been disabled until you’re reconnected.', 'elementor');
        }
      } else if (data[0] && data[0].code) {
        message = __('Server Error', 'elementor') + ' ' + data[0].code;
      }

      elementor.notifications.showToast({
        message: message
      });
    }
  }, {
    key: "onAfterAjax",
    value: function onAfterAjax(document) {
      document.editor.isSaving = false;
    }
  }]);
  return Save;
}(_commandInternalBase.default);

exports.Save = Save;
var _default = Save;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/save/commands/internal/set-is-modified.js":
/*!**********************************************************************************!*\
  !*** ../assets/dev/js/editor/document/save/commands/internal/set-is-modified.js ***!
  \**********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.SetIsModified = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandInternalBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-internal-base */ "../core/common/assets/js/api/modules/command-internal-base.js"));

var SetIsModified = /*#__PURE__*/function (_CommandInternalBase) {
  (0, _inherits2.default)(SetIsModified, _CommandInternalBase);

  var _super = (0, _createSuper2.default)(SetIsModified);

  function SetIsModified() {
    (0, _classCallCheck2.default)(this, SetIsModified);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(SetIsModified, [{
    key: "validateArgs",
    value: function validateArgs(args) {
      this.requireArgumentType('status', 'boolean', args);
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var status = args.status,
          _args$document = args.document,
          document = _args$document === void 0 ? elementor.documents.getCurrent() : _args$document; // Save document for hooks.

      args.document = document;
      document.editor.isChanged = status;

      if (status && document.editor.isSaving) {
        document.editor.isChangedDuringSave = true;
      }

      if (status) {
        document.editor.isSaved = false;
      } // TODO: BC.


      elementor.channels.editor.reply('status', status).trigger('status:change', status);

      if (document.editor.isChanged) {
        this.component.startAutoSave(document);
      }
    }
  }]);
  return SetIsModified;
}(_commandInternalBase.default);

exports.SetIsModified = SetIsModified;
var _default = SetIsModified;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/save/commands/pending.js":
/*!*****************************************************************!*\
  !*** ../assets/dev/js/editor/document/save/commands/pending.js ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.Pending = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _base = _interopRequireDefault(__webpack_require__(/*! ./base/base */ "../assets/dev/js/editor/document/save/commands/base/base.js"));

var Pending = /*#__PURE__*/function (_Base) {
  (0, _inherits2.default)(Pending, _Base);

  var _super = (0, _createSuper2.default)(Pending);

  function Pending() {
    (0, _classCallCheck2.default)(this, Pending);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Pending, [{
    key: "apply",
    value: function apply(args) {
      var _args$status = args.status,
          status = _args$status === void 0 ? 'pending' : _args$status,
          _args$document = args.document,
          document = _args$document === void 0 ? this.document : _args$document;
      return $e.internal('document/save/save', {
        status: status,
        document: document
      });
    }
  }]);
  return Pending;
}(_base.default);

exports.Pending = Pending;

/***/ }),

/***/ "../assets/dev/js/editor/document/save/commands/publish.js":
/*!*****************************************************************!*\
  !*** ../assets/dev/js/editor/document/save/commands/publish.js ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.Publish = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _base = _interopRequireDefault(__webpack_require__(/*! ./base/base */ "../assets/dev/js/editor/document/save/commands/base/base.js"));

var Publish = /*#__PURE__*/function (_Base) {
  (0, _inherits2.default)(Publish, _Base);

  var _super = (0, _createSuper2.default)(Publish);

  function Publish() {
    (0, _classCallCheck2.default)(this, Publish);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Publish, [{
    key: "apply",
    value: function apply(args) {
      var _args$status = args.status,
          status = _args$status === void 0 ? 'publish' : _args$status,
          _args$document = args.document,
          document = _args$document === void 0 ? this.document : _args$document;
      return $e.internal('document/save/save', {
        status: status,
        document: document
      });
    }
  }]);
  return Publish;
}(_base.default);

exports.Publish = Publish;

/***/ }),

/***/ "../assets/dev/js/editor/document/save/commands/update.js":
/*!****************************************************************!*\
  !*** ../assets/dev/js/editor/document/save/commands/update.js ***!
  \****************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.Update = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _base = _interopRequireDefault(__webpack_require__(/*! ./base/base */ "../assets/dev/js/editor/document/save/commands/base/base.js"));

var Update = /*#__PURE__*/function (_Base) {
  (0, _inherits2.default)(Update, _Base);

  var _super = (0, _createSuper2.default)(Update);

  function Update() {
    (0, _classCallCheck2.default)(this, Update);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Update, [{
    key: "apply",
    value: function apply(args) {
      var _args$document = args.document,
          document = _args$document === void 0 ? this.document : _args$document,
          _args$status = args.status,
          status = _args$status === void 0 ? document.container.settings.get('post_status') : _args$status;
      return $e.internal('document/save/save', {
        status: status,
        document: document
      });
    }
  }]);
  return Update;
}(_base.default);

exports.Update = Update;

/***/ }),

/***/ "../assets/dev/js/editor/document/save/component.js":
/*!**********************************************************!*\
  !*** ../assets/dev/js/editor/document/save/component.js ***!
  \**********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _backwardsCompatibility = _interopRequireDefault(__webpack_require__(/*! ./backwards-compatibility */ "../assets/dev/js/editor/document/save/backwards-compatibility.js"));

var commands = _interopRequireWildcard(__webpack_require__(/*! ./commands/ */ "../assets/dev/js/editor/document/save/commands/index.js"));

var commandsInternal = _interopRequireWildcard(__webpack_require__(/*! ./commands/internal */ "../assets/dev/js/editor/document/save/commands/internal/index.js"));

var hooks = _interopRequireWildcard(__webpack_require__(/*! ./hooks/ */ "../assets/dev/js/editor/document/save/hooks/index.js"));

var Component = /*#__PURE__*/function (_BackwardsCompatibili) {
  (0, _inherits2.default)(Component, _BackwardsCompatibili);

  var _super = (0, _createSuper2.default)(Component);

  function Component() {
    var _this;

    (0, _classCallCheck2.default)(this, Component);

    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }

    _this = _super.call.apply(_super, [this].concat(args));
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "footerSaver", void 0);
    return _this;
  }

  (0, _createClass2.default)(Component, [{
    key: "__construct",
    value: function __construct() {
      var _this2 = this;

      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      (0, _get2.default)((0, _getPrototypeOf2.default)(Component.prototype), "__construct", this).call(this, args);
      /**
       * Auto save timer handlers.
       *
       * @type {Object}
       */

      this.autoSaveTimers = {};
      /**
       * Auto save interval.
       *
       * @type {number}
       */

      this.autoSaveInterval = elementor.config.autosave_interval * 1000;
      elementorCommon.elements.$window.on('beforeunload', function () {
        if (_this2.isEditorChanged()) {
          // Returns a message to confirm dialog.
          return __('Please note: All unsaved changes will be lost.', 'elementor');
        }
      });
    }
  }, {
    key: "getNamespace",
    value: function getNamespace() {
      return 'document/save';
    }
    /**
     * TODO: test
     * @param {Document} document
     */

  }, {
    key: "startAutoSave",
    value: function startAutoSave(document) {
      var _this3 = this;

      this.stopAutoSave(document);
      this.autoSaveTimers[document.id] = setTimeout(function () {
        $e.run('document/save/auto', {
          document: document
        });
        delete _this3.autoSaveTimers[document.id];
      }, this.autoSaveInterval);
    }
    /**
     * TODO: test
     * @param {Document} document
     */

  }, {
    key: "stopAutoSave",
    value: function stopAutoSave(document) {
      if (this.autoSaveTimers[document.id]) {
        clearTimeout(this.autoSaveTimers[document.id]);
        delete this.autoSaveTimers[document.id];
      }
    }
  }, {
    key: "defaultCommands",
    value: function defaultCommands() {
      return this.importCommands(commands);
    }
  }, {
    key: "defaultCommandsInternal",
    value: function defaultCommandsInternal() {
      return this.importCommands(commandsInternal);
    }
  }, {
    key: "defaultHooks",
    value: function defaultHooks() {
      return this.importHooks(hooks);
    }
  }, {
    key: "isEditorChanged",
    value: function isEditorChanged() {
      return true === elementor.channels.editor.request('status');
    }
  }]);
  return Component;
}(_backwardsCompatibility.default);

exports.default = Component;

/***/ }),

/***/ "../assets/dev/js/editor/document/save/hooks/index.js":
/*!************************************************************!*\
  !*** ../assets/dev/js/editor/document/save/hooks/index.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _Object$keys = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

var _ui = __webpack_require__(/*! ./ui/ */ "../assets/dev/js/editor/document/save/hooks/ui/index.js");

_Object$keys(_ui).forEach(function (key) {
  if (key === "default" || key === "__esModule") return;
  if (key in exports && exports[key] === _ui[key]) return;

  _Object$defineProperty(exports, key, {
    enumerable: true,
    get: function get() {
      return _ui[key];
    }
  });
});

/***/ }),

/***/ "../assets/dev/js/editor/document/save/hooks/ui/index.js":
/*!***************************************************************!*\
  !*** ../assets/dev/js/editor/document/save/hooks/ui/index.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _Object$keys = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

var _save = __webpack_require__(/*! ./save/ */ "../assets/dev/js/editor/document/save/hooks/ui/save/index.js");

_Object$keys(_save).forEach(function (key) {
  if (key === "default" || key === "__esModule") return;
  if (key in exports && exports[key] === _save[key]) return;

  _Object$defineProperty(exports, key, {
    enumerable: true,
    get: function get() {
      return _save[key];
    }
  });
});

var _setIsModified = __webpack_require__(/*! ./set-is-modified/ */ "../assets/dev/js/editor/document/save/hooks/ui/set-is-modified/index.js");

_Object$keys(_setIsModified).forEach(function (key) {
  if (key === "default" || key === "__esModule") return;
  if (key in exports && exports[key] === _setIsModified[key]) return;

  _Object$defineProperty(exports, key, {
    enumerable: true,
    get: function get() {
      return _setIsModified[key];
    }
  });
});

var _settings = __webpack_require__(/*! ./settings */ "../assets/dev/js/editor/document/save/hooks/ui/settings/index.js");

_Object$keys(_settings).forEach(function (key) {
  if (key === "default" || key === "__esModule") return;
  if (key in exports && exports[key] === _settings[key]) return;

  _Object$defineProperty(exports, key, {
    enumerable: true,
    get: function get() {
      return _settings[key];
    }
  });
});

/***/ }),

/***/ "../assets/dev/js/editor/document/save/hooks/ui/save/after.js":
/*!********************************************************************!*\
  !*** ../assets/dev/js/editor/document/save/hooks/ui/save/after.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.FooterSaverAfterSave = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _after = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/hooks/ui/after */ "../core/common/assets/js/api/modules/hooks/ui/after.js"));

var FooterSaverAfterSave = /*#__PURE__*/function (_HookUIAfter) {
  (0, _inherits2.default)(FooterSaverAfterSave, _HookUIAfter);

  var _super = (0, _createSuper2.default)(FooterSaverAfterSave);

  function FooterSaverAfterSave() {
    (0, _classCallCheck2.default)(this, FooterSaverAfterSave);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(FooterSaverAfterSave, [{
    key: "getCommand",
    value: function getCommand() {
      return 'document/save/save';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'footer-saver-after-save';
    }
  }, {
    key: "apply",
    value: function apply(args, result) {
      var status = args.status,
          data = result.data,
          _$e$components$get = $e.components.get('document/save'),
          footerSaver = _$e$components$get.footerSaver;

      NProgress.done();
      footerSaver.ui.buttonPublish.removeClass('elementor-button-state');
      footerSaver.ui.lastEditedWrapper.removeClass('elementor-state-active');
      footerSaver.refreshWpPreview();
      footerSaver.setLastEdited(data.config.document.last_edited);

      if (result.statusChanged && 'publish' === status && elementor.config.document.urls.have_a_look) {
        this.onPageStatusChange();
      }
    }
  }, {
    key: "onPageStatusChange",
    value: function onPageStatusChange() {
      var buttons = [];
      buttons.push({
        name: 'view_page',
        text: __('Have a look', 'elementor'),
        callback: function callback() {
          open(elementor.config.document.urls.have_a_look);
        }
      });
      elementor.notifications.showToast({
        message: elementor.config.document.panel.messages.publish_notification,
        buttons: buttons
      });
    }
  }]);
  return FooterSaverAfterSave;
}(_after.default);

exports.FooterSaverAfterSave = FooterSaverAfterSave;
var _default = FooterSaverAfterSave;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/save/hooks/ui/save/before.js":
/*!*********************************************************************!*\
  !*** ../assets/dev/js/editor/document/save/hooks/ui/save/before.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.FooterSaverBeforeSave = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _before = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/hooks/ui/before */ "../core/common/assets/js/api/modules/hooks/ui/before.js"));

var FooterSaverBeforeSave = /*#__PURE__*/function (_HookUIBefore) {
  (0, _inherits2.default)(FooterSaverBeforeSave, _HookUIBefore);

  var _super = (0, _createSuper2.default)(FooterSaverBeforeSave);

  function FooterSaverBeforeSave() {
    (0, _classCallCheck2.default)(this, FooterSaverBeforeSave);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(FooterSaverBeforeSave, [{
    key: "getCommand",
    value: function getCommand() {
      return 'document/save/save';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'footer-saver-before-save';
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var status = args.status,
          _$e$components$get = $e.components.get('document/save'),
          footerSaver = _$e$components$get.footerSaver;

      NProgress.start();

      if ('autosave' === status) {
        footerSaver.ui.lastEditedWrapper.addClass('elementor-state-active');
      } else {
        footerSaver.ui.buttonPublish.addClass('elementor-button-state');
      }
    }
  }]);
  return FooterSaverBeforeSave;
}(_before.default);

exports.FooterSaverBeforeSave = FooterSaverBeforeSave;
var _default = FooterSaverBeforeSave;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/save/hooks/ui/save/catch.js":
/*!********************************************************************!*\
  !*** ../assets/dev/js/editor/document/save/hooks/ui/save/catch.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.FooterSaverCatchSave = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _catch = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/hooks/ui/catch */ "../core/common/assets/js/api/modules/hooks/ui/catch.js"));

var FooterSaverCatchSave = /*#__PURE__*/function (_HookUICatch) {
  (0, _inherits2.default)(FooterSaverCatchSave, _HookUICatch);

  var _super = (0, _createSuper2.default)(FooterSaverCatchSave);

  function FooterSaverCatchSave() {
    (0, _classCallCheck2.default)(this, FooterSaverCatchSave);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(FooterSaverCatchSave, [{
    key: "getCommand",
    value: function getCommand() {
      return 'document/save/save';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'footer-saver-catch-save';
    }
  }, {
    key: "apply",
    value: function apply() {
      NProgress.done();
      $e.components.get('document/save').footerSaver.ui.buttonPublish.removeClass('elementor-button-state');
    }
  }]);
  return FooterSaverCatchSave;
}(_catch.default);

exports.FooterSaverCatchSave = FooterSaverCatchSave;
var _default = FooterSaverCatchSave;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/save/hooks/ui/save/index.js":
/*!********************************************************************!*\
  !*** ../assets/dev/js/editor/document/save/hooks/ui/save/index.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "FooterSaverAfterSave", {
  enumerable: true,
  get: function get() {
    return _after.FooterSaverAfterSave;
  }
});

_Object$defineProperty(exports, "FooterSaverBeforeSave", {
  enumerable: true,
  get: function get() {
    return _before.FooterSaverBeforeSave;
  }
});

_Object$defineProperty(exports, "FooterSaverCatchSave", {
  enumerable: true,
  get: function get() {
    return _catch.FooterSaverCatchSave;
  }
});

var _after = __webpack_require__(/*! ./after */ "../assets/dev/js/editor/document/save/hooks/ui/save/after.js");

var _before = __webpack_require__(/*! ./before */ "../assets/dev/js/editor/document/save/hooks/ui/save/before.js");

var _catch = __webpack_require__(/*! ./catch */ "../assets/dev/js/editor/document/save/hooks/ui/save/catch.js");

/***/ }),

/***/ "../assets/dev/js/editor/document/save/hooks/ui/set-is-modified/after.js":
/*!*******************************************************************************!*\
  !*** ../assets/dev/js/editor/document/save/hooks/ui/set-is-modified/after.js ***!
  \*******************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.FooterSaverActiveSaveButtons = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _after = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/hooks/ui/after */ "../core/common/assets/js/api/modules/hooks/ui/after.js"));

var FooterSaverActiveSaveButtons = /*#__PURE__*/function (_HookUIAfter) {
  (0, _inherits2.default)(FooterSaverActiveSaveButtons, _HookUIAfter);

  var _super = (0, _createSuper2.default)(FooterSaverActiveSaveButtons);

  function FooterSaverActiveSaveButtons() {
    (0, _classCallCheck2.default)(this, FooterSaverActiveSaveButtons);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(FooterSaverActiveSaveButtons, [{
    key: "getCommand",
    value: function getCommand() {
      return 'document/save/set-is-modified';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'footer-saver-activate-save-buttons';
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var status = args.status,
          document = args.document;
      $e.components.get('document/save').footerSaver.activateSaveButtons(document, status);
    }
  }]);
  return FooterSaverActiveSaveButtons;
}(_after.default);

exports.FooterSaverActiveSaveButtons = FooterSaverActiveSaveButtons;
var _default = FooterSaverActiveSaveButtons;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/save/hooks/ui/set-is-modified/index.js":
/*!*******************************************************************************!*\
  !*** ../assets/dev/js/editor/document/save/hooks/ui/set-is-modified/index.js ***!
  \*******************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "FooterSaverActiveSaveButtons", {
  enumerable: true,
  get: function get() {
    return _after.FooterSaverActiveSaveButtons;
  }
});

var _after = __webpack_require__(/*! ./after */ "../assets/dev/js/editor/document/save/hooks/ui/set-is-modified/after.js");

/***/ }),

/***/ "../assets/dev/js/editor/document/save/hooks/ui/settings/index.js":
/*!************************************************************************!*\
  !*** ../assets/dev/js/editor/document/save/hooks/ui/settings/index.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.FooterSeverRefreshMenu = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _after = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/hooks/ui/after */ "../core/common/assets/js/api/modules/hooks/ui/after.js"));

var FooterSeverRefreshMenu = /*#__PURE__*/function (_HookUIAfter) {
  (0, _inherits2.default)(FooterSeverRefreshMenu, _HookUIAfter);

  var _super = (0, _createSuper2.default)(FooterSeverRefreshMenu);

  function FooterSeverRefreshMenu() {
    (0, _classCallCheck2.default)(this, FooterSeverRefreshMenu);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(FooterSeverRefreshMenu, [{
    key: "getCommand",
    value: function getCommand() {
      return 'document/elements/settings';
    }
  }, {
    key: "getId",
    value: function getId() {
      return 'footer-saver-refresh-menu';
    }
  }, {
    key: "getContainerType",
    value: function getContainerType() {
      return 'document';
    }
  }, {
    key: "getConditions",
    value: function getConditions(args) {
      return args.settings && 'undefined' !== typeof args.settings.post_status;
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var _$e$components$get = $e.components.get('document/save'),
          footerSaver = _$e$components$get.footerSaver;

      footerSaver.setMenuItems(args.container.document);
      footerSaver.refreshWpPreview();
    }
  }]);
  return FooterSeverRefreshMenu;
}(_after.default);

exports.FooterSeverRefreshMenu = FooterSeverRefreshMenu;
var _default = FooterSeverRefreshMenu;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/ui/commands/copy.js":
/*!************************************************************!*\
  !*** ../assets/dev/js/editor/document/ui/commands/copy.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Copy = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Copy = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Copy, _CommandBase);

  var _super = (0, _createSuper2.default)(Copy);

  function Copy() {
    (0, _classCallCheck2.default)(this, Copy);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Copy, [{
    key: "apply",
    value: function apply() {
      var selectedElement = elementor.getCurrentElement();

      if (selectedElement) {
        return $e.run('document/elements/copy', {
          container: selectedElement.getContainer()
        });
      }

      return false;
    }
  }]);
  return Copy;
}(_commandBase.default);

exports.Copy = Copy;
var _default = Copy;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/ui/commands/delete.js":
/*!**************************************************************!*\
  !*** ../assets/dev/js/editor/document/ui/commands/delete.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Delete = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Delete = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Delete, _CommandBase);

  var _super = (0, _createSuper2.default)(Delete);

  function Delete() {
    (0, _classCallCheck2.default)(this, Delete);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Delete, [{
    key: "apply",
    value: function apply() {
      var selectedElement = elementor.getCurrentElement();

      if (selectedElement) {
        return $e.run('document/elements/delete', {
          container: selectedElement.getContainer()
        });
      }

      return false;
    }
  }]);
  return Delete;
}(_commandBase.default);

exports.Delete = Delete;
var _default = Delete;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/ui/commands/duplicate.js":
/*!*****************************************************************!*\
  !*** ../assets/dev/js/editor/document/ui/commands/duplicate.js ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Duplicate = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Duplicate = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Duplicate, _CommandBase);

  var _super = (0, _createSuper2.default)(Duplicate);

  function Duplicate() {
    (0, _classCallCheck2.default)(this, Duplicate);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Duplicate, [{
    key: "apply",
    value: function apply() {
      var selectedElement = elementor.getCurrentElement();

      if (selectedElement) {
        return $e.run('document/elements/duplicate', {
          container: selectedElement.getContainer()
        });
      }

      return false;
    }
  }]);
  return Duplicate;
}(_commandBase.default);

exports.Duplicate = Duplicate;
var _default = Duplicate;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/ui/commands/index.js":
/*!*************************************************************!*\
  !*** ../assets/dev/js/editor/document/ui/commands/index.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "Copy", {
  enumerable: true,
  get: function get() {
    return _copy.Copy;
  }
});

_Object$defineProperty(exports, "Delete", {
  enumerable: true,
  get: function get() {
    return _delete.Delete;
  }
});

_Object$defineProperty(exports, "Duplicate", {
  enumerable: true,
  get: function get() {
    return _duplicate.Duplicate;
  }
});

_Object$defineProperty(exports, "Paste", {
  enumerable: true,
  get: function get() {
    return _paste.Paste;
  }
});

_Object$defineProperty(exports, "PasteStyle", {
  enumerable: true,
  get: function get() {
    return _pasteStyle.PasteStyle;
  }
});

var _copy = __webpack_require__(/*! ./copy */ "../assets/dev/js/editor/document/ui/commands/copy.js");

var _delete = __webpack_require__(/*! ./delete */ "../assets/dev/js/editor/document/ui/commands/delete.js");

var _duplicate = __webpack_require__(/*! ./duplicate */ "../assets/dev/js/editor/document/ui/commands/duplicate.js");

var _paste = __webpack_require__(/*! ./paste */ "../assets/dev/js/editor/document/ui/commands/paste.js");

var _pasteStyle = __webpack_require__(/*! ./paste-style */ "../assets/dev/js/editor/document/ui/commands/paste-style.js");

/***/ }),

/***/ "../assets/dev/js/editor/document/ui/commands/paste-style.js":
/*!*******************************************************************!*\
  !*** ../assets/dev/js/editor/document/ui/commands/paste-style.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.PasteStyle = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var PasteStyle = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(PasteStyle, _CommandBase);

  var _super = (0, _createSuper2.default)(PasteStyle);

  function PasteStyle() {
    (0, _classCallCheck2.default)(this, PasteStyle);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(PasteStyle, [{
    key: "apply",
    value: function apply() {
      var selectedElement = elementor.getCurrentElement();

      if (selectedElement) {
        return $e.run('document/elements/paste-style', {
          container: selectedElement.getContainer()
        });
      }

      return false;
    }
  }]);
  return PasteStyle;
}(_commandBase.default);

exports.PasteStyle = PasteStyle;
var _default = PasteStyle;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/ui/commands/paste.js":
/*!*************************************************************!*\
  !*** ../assets/dev/js/editor/document/ui/commands/paste.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Paste = void 0;

var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

__webpack_require__(/*! core-js/modules/es6.array.find-index.js */ "../node_modules/core-js/modules/es6.array.find-index.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Paste = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Paste, _CommandBase);

  var _super = (0, _createSuper2.default)(Paste);

  function Paste() {
    (0, _classCallCheck2.default)(this, Paste);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Paste, [{
    key: "initialize",
    value: function initialize(args) {
      var _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers;
      (0, _get2.default)((0, _getPrototypeOf2.default)(Paste.prototype), "initialize", this).call(this, args);
      this.storage = elementorCommon.storage.get('clipboard') || [];
      this.storage = this.storage.map(function (model) {
        return new Backbone.Model(model);
      });

      if (!containers[0]) {
        this.target = elementor.getCurrentElement();
        this.target = this.target ? [this.target.getContainer()] : null;
      } else {
        this.target = containers;
      }
    }
  }, {
    key: "apply",
    value: function apply(args) {
      var _this = this;

      if (!this.target || 0 === this.storage.length) {
        return false;
      }

      var result = [];
      this.target.forEach(function (
      /* Container */
      container) {
        var _args$options = args.options,
            options = _args$options === void 0 ? {} : _args$options,
            pasteOptions = $e.components.get('document/elements').utils.getPasteOptions(_this.storage[0], container);

        if (!pasteOptions.isValidChild) {
          if (pasteOptions.isSameElement) {
            options.at = container.parent.model.get('elements').findIndex(container.model) + 1; // For same element always paste on his parent.

            container = container.parent;
          } else if (pasteOptions.isValidGrandChild) {
            options.rebuild = true;
          }
        }

        if ((0, _values.default)(pasteOptions).some(function (opt) {
          return !!opt;
        })) {
          var commandArgs = {
            container: container
          };

          if (undefined !== options.rebuild) {
            commandArgs.rebuild = options.rebuild;
          }

          if (undefined !== options.at) {
            commandArgs.at = options.at;
          }

          result.push($e.run('document/elements/paste', commandArgs));
        }
      });

      if (0 === result.length) {
        return false;
      } else if (1 === result.length) {
        return result[0];
      }

      return result;
    }
  }]);
  return Paste;
}(_commandBase.default);

exports.Paste = Paste;
var _default = Paste;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/document/ui/component.js":
/*!********************************************************!*\
  !*** ../assets/dev/js/editor/document/ui/component.js ***!
  \********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _componentBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-base */ "../core/common/assets/js/api/modules/component-base.js"));

var commands = _interopRequireWildcard(__webpack_require__(/*! ./commands/ */ "../assets/dev/js/editor/document/ui/commands/index.js"));

var Component = /*#__PURE__*/function (_ComponentBase) {
  (0, _inherits2.default)(Component, _ComponentBase);

  var _super = (0, _createSuper2.default)(Component);

  function Component() {
    (0, _classCallCheck2.default)(this, Component);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Component, [{
    key: "getNamespace",
    value: function getNamespace() {
      return 'document/ui';
    }
  }, {
    key: "defaultCommands",
    value: function defaultCommands() {
      return this.importCommands(commands);
    }
  }, {
    key: "defaultShortcuts",
    value: function defaultShortcuts() {
      return {
        copy: {
          keys: 'ctrl+c',
          exclude: ['input']
        },
        delete: {
          keys: 'del',
          exclude: ['input']
        },
        duplicate: {
          keys: 'ctrl+d'
        },
        paste: {
          keys: 'ctrl+v',
          exclude: ['input']
        },
        'paste-style': {
          keys: 'ctrl+shift+v',
          exclude: ['input']
        }
      };
    }
  }]);
  return Component;
}(_componentBase.default);

exports.default = Component;

/***/ }),

/***/ "../assets/dev/js/editor/elements/views/base.js":
/*!******************************************************!*\
  !*** ../assets/dev/js/editor/elements/views/base.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var sprintf = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["sprintf"];
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js"));

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var _parseInt2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/parse-int */ "../node_modules/@babel/runtime-corejs2/core-js/parse-int.js"));

var _isArray = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js"));

var _environment = _interopRequireDefault(__webpack_require__(/*! elementor-common/utils/environment */ "../core/common/assets/js/utils/environment.js"));

var ControlsCSSParser = __webpack_require__(/*! elementor-editor-utils/controls-css-parser */ "../assets/dev/js/editor/utils/controls-css-parser.js"),
    Validator = __webpack_require__(/*! elementor-validator/base */ "../assets/dev/js/editor/components/validator/base.js"),
    BaseContainer = __webpack_require__(/*! elementor-views/base-container */ "../assets/dev/js/editor/views/base-container.js"),
    BaseElementView;

BaseElementView = BaseContainer.extend({
  tagName: 'div',
  controlsCSSParser: null,
  allowRender: true,
  toggleEditTools: false,
  renderAttributes: {},
  className: function className() {
    var classes = 'elementor-element elementor-element-edit-mode ' + this.getElementUniqueID();

    if (this.toggleEditTools) {
      classes += ' elementor-element--toggle-edit-tools';
    }

    return classes;
  },
  attributes: function attributes() {
    return {
      'data-id': this.getID(),
      'data-element_type': this.model.get('elType')
    };
  },
  ui: function ui() {
    return {
      tools: '> .elementor-element-overlay > .elementor-editor-element-settings',
      editButton: '> .elementor-element-overlay .elementor-editor-element-edit',
      duplicateButton: '> .elementor-element-overlay .elementor-editor-element-duplicate',
      addButton: '> .elementor-element-overlay .elementor-editor-element-add',
      removeButton: '> .elementor-element-overlay .elementor-editor-element-remove'
    };
  },
  behaviors: function behaviors() {
    var elementType = this.options.model.get('elType');
    var groups = elementor.hooks.applyFilters("elements/".concat(elementType, "/contextMenuGroups"), this.getContextMenuGroups(), this);
    var behaviors = {
      contextMenu: {
        behaviorClass: __webpack_require__(/*! elementor-behaviors/context-menu */ "../assets/dev/js/editor/elements/views/behaviors/context-menu.js"),
        groups: groups
      }
    };
    return elementor.hooks.applyFilters('elements/base/behaviors', behaviors, this);
  },
  getBehavior: function getBehavior(name) {
    return this._behaviors[(0, _keys.default)(this.behaviors()).indexOf(name)];
  },
  events: function events() {
    return {
      mousedown: 'onMouseDown',
      'click @ui.editButton': 'onEditButtonClick',
      'click @ui.duplicateButton': 'onDuplicateButtonClick',
      'click @ui.addButton': 'onAddButtonClick',
      'click @ui.removeButton': 'onRemoveButtonClick'
    };
  },
  getElementType: function getElementType() {
    return this.model.get('elType');
  },
  getIDInt: function getIDInt() {
    return (0, _parseInt2.default)(this.getID(), 16);
  },
  getChildType: function getChildType() {
    return elementor.helpers.getElementChildType(this.getElementType());
  },
  getChildView: function getChildView(model) {
    var ChildView;
    var elType = model.get('elType');

    if ('section' === elType) {
      ChildView = __webpack_require__(/*! elementor-elements/views/section */ "../assets/dev/js/editor/elements/views/section.js");
    } else if ('column' === elType) {
      ChildView = __webpack_require__(/*! elementor-elements/views/column */ "../assets/dev/js/editor/elements/views/column.js");
    } else {
      ChildView = elementor.modules.elements.views.Widget;
    }

    return elementor.hooks.applyFilters('element/view', ChildView, model, this);
  },
  getTemplateType: function getTemplateType() {
    return 'js';
  },
  getEditModel: function getEditModel() {
    return this.model;
  },
  getContainer: function getContainer() {
    if (!this.container) {
      var settingsModel = this.model.get('settings');
      this.container = new elementorModules.editor.Container({
        type: this.model.get('elType'),
        id: this.model.id,
        model: this.model,
        settings: settingsModel,
        view: this,
        parent: this._parent ? this._parent.getContainer() : {},
        children: [],
        label: elementor.helpers.getModelLabel(this.model),
        controls: settingsModel.options.controls
      });
    }

    return this.container;
  },
  getContextMenuGroups: function getContextMenuGroups() {
    var _this = this;

    var controlSign = _environment.default.mac ? '⌘' : '^';
    return [{
      name: 'general',
      actions: [{
        name: 'edit',
        icon: 'eicon-edit',

        /* translators: %s: Element name. */
        title: sprintf(__('Edit %s', 'elementor'), this.options.model.getTitle()),
        callback: function callback() {
          return $e.run('panel/editor/open', {
            model: _this.options.model,
            // Todo: remove on merge router
            view: _this,
            // Todo: remove on merge router
            container: _this.getContainer()
          });
        }
      }, {
        name: 'duplicate',
        icon: 'eicon-clone',
        title: __('Duplicate', 'elementor'),
        shortcut: controlSign + '+D',
        callback: function callback() {
          return $e.run('document/elements/duplicate', {
            container: _this.getContainer()
          });
        }
      }]
    }, {
      name: 'clipboard',
      actions: [{
        name: 'copy',
        title: __('Copy', 'elementor'),
        shortcut: controlSign + '+C',
        callback: function callback() {
          return $e.run('document/elements/copy', {
            container: _this.getContainer()
          });
        }
      }, {
        name: 'paste',
        title: __('Paste', 'elementor'),
        shortcut: controlSign + '+V',
        isEnabled: function isEnabled() {
          return $e.components.get('document/elements').utils.isPasteEnabled(_this.getContainer());
        },
        callback: function callback() {
          return $e.run('document/ui/paste', {
            container: _this.getContainer()
          });
        }
      }, {
        name: 'pasteStyle',
        title: __('Paste Style', 'elementor'),
        shortcut: controlSign + '+⇧+V',
        isEnabled: function isEnabled() {
          return !!elementorCommon.storage.get('clipboard');
        },
        callback: function callback() {
          return $e.run('document/elements/paste-style', {
            container: _this.getContainer()
          });
        }
      }, {
        name: 'resetStyle',
        title: __('Reset Style', 'elementor'),
        callback: function callback() {
          return $e.run('document/elements/reset-style', {
            container: _this.getContainer()
          });
        }
      }]
    }, {
      name: 'delete',
      actions: [{
        name: 'delete',
        icon: 'eicon-trash',
        title: __('Delete', 'elementor'),
        shortcut: '⌦',
        callback: function callback() {
          return $e.run('document/elements/delete', {
            container: _this.getContainer()
          });
        }
      }]
    }];
  },
  getEditButtons: function getEditButtons() {
    return {};
  },
  initialize: function initialize() {
    var _this2 = this;

    BaseContainer.prototype.initialize.apply(this, arguments);
    var editModel = this.getEditModel();

    if (this.collection && this.onCollectionChanged) {
      elementorCommon.helpers.softDeprecated('onCollectionChanged', '2.8.0', '$e.hooks');
      this.listenTo(this.collection, 'add remove reset', this.onCollectionChanged, this);
    }

    if (this.onSettingsChanged) {
      elementorCommon.helpers.softDeprecated('onSettingsChanged', '2.8.0', '$e.hooks');
      this.listenTo(editModel.get('settings'), 'change', this.onSettingsChanged);
    }

    this.listenTo(editModel.get('editSettings'), 'change', this.onEditSettingsChanged).listenTo(this.model, 'request:edit', this.onEditRequest).listenTo(this.model, 'request:toggleVisibility', this.toggleVisibility);
    this.initControlsCSSParser();

    _.defer(function () {
      // Init container. Defer - in order to init the container after the element is fully initialized, and properties like `_parent` are available.
      _this2.getContainer();
    });
  },
  getHandlesOverlay: function getHandlesOverlay() {
    var $handlesOverlay = jQuery('<div>', {
      class: 'elementor-element-overlay'
    }),
        $overlayList = jQuery('<ul>', {
      class: "elementor-editor-element-settings elementor-editor-".concat(this.getElementType(), "-settings")
    });
    jQuery.each(this.getEditButtons(), function (toolName, tool) {
      var $item = jQuery('<li>', {
        class: "elementor-editor-element-setting elementor-editor-element-".concat(toolName),
        title: tool.title
      }),
          $icon = jQuery('<i>', {
        class: "eicon-".concat(tool.icon),
        'aria-hidden': true
      }),
          $a11y = jQuery('<span>', {
        class: 'elementor-screen-only'
      });
      $a11y.text(tool.title);
      $item.append($icon, $a11y);
      $overlayList.append($item);
    });
    $handlesOverlay.append($overlayList);
    return $handlesOverlay;
  },
  attachElContent: function attachElContent(html) {
    this.$el.empty().append(this.getHandlesOverlay(), html);
  },
  startTransport: function startTransport() {
    elementorCommon.helpers.softDeprecated('element.startTransport', '2.8.0', "$e.run( 'document/elements/copy' )");
    $e.run('document/elements/copy', {
      container: this.getContainer()
    });
  },
  copy: function copy() {
    elementorCommon.helpers.softDeprecated('element.copy', '2.8.0', "$e.run( 'document/elements/copy' )");
    $e.run('document/elements/copy', {
      container: this.getContainer()
    });
  },
  cut: function cut() {
    elementorCommon.helpers.softDeprecated('element.cut', '2.8.0');
  },
  paste: function paste() {
    elementorCommon.helpers.softDeprecated('element.paste', '2.8.0', "$e.run( 'document/elements/paste' )");
    $e.run('document/elements/paste', {
      container: this.getContainer(),
      at: this._parent.collection.indexOf(this.model)
    });
  },
  duplicate: function duplicate() {
    elementorCommon.helpers.softDeprecated('element.duplicate', '2.8.0', "$e.run( 'document/elements/duplicate' )");
    $e.run('document/elements/duplicate', {
      container: this.getContainer()
    });
  },
  pasteStyle: function pasteStyle() {
    elementorCommon.helpers.softDeprecated('element.pasteStyle', '2.8.0', "$e.run( 'document/elements/paste-style' )");
    $e.run('document/elements/paste-style', {
      container: this.getContainer()
    });
  },
  resetStyle: function resetStyle() {
    elementorCommon.helpers.softDeprecated('element.resetStyle', '2.8.0', "$e.run( 'document/elements/reset-style' )");
    $e.run('document/elements/reset-style', {
      container: this.getContainer()
    });
  },
  isStyleTransferControl: function isStyleTransferControl(control) {
    if (undefined !== control.style_transfer) {
      return control.style_transfer;
    }

    return 'content' !== control.tab || control.selectors || control.prefix_class;
  },
  toggleVisibility: function toggleVisibility() {
    this.model.set('hidden', !this.model.get('hidden'));
    this.toggleVisibilityClass();
  },
  toggleVisibilityClass: function toggleVisibilityClass() {
    this.$el.toggleClass('elementor-edit-hidden', !!this.model.get('hidden'));
  },
  addElementFromPanel: function addElementFromPanel(options) {
    options = options || {};
    var elementView = elementor.channels.panelElements.request('element:selected'),
        model = {
      elType: elementView.model.get('elType')
    };

    if (elementor.helpers.maybeDisableWidget()) {
      return;
    }

    if ('widget' === model.elType) {
      model.widgetType = elementView.model.get('widgetType');
    } else if ('section' === model.elType) {
      model.isInner = true;
    } else {
      return;
    }

    var customData = elementView.model.get('custom');

    if (customData) {
      jQuery.extend(model, customData);
    }

    return $e.run('document/elements/create', {
      container: this.getContainer(),
      model: model,
      options: options
    });
  },
  // TODO: Unused function.
  addControlValidator: function addControlValidator(controlName, validationCallback) {
    validationCallback = validationCallback.bind(this);
    var validator = new Validator({
      customValidationMethod: validationCallback
    }),
        validators = this.getEditModel().get('settings').validators;

    if (!validators[controlName]) {
      validators[controlName] = [];
    }

    validators[controlName].push(validator);
  },
  addRenderAttribute: function addRenderAttribute(element, key, value, overwrite) {
    var self = this;

    if ('object' === (0, _typeof2.default)(element)) {
      jQuery.each(element, function (elementKey, elementValue) {
        self.addRenderAttribute(elementKey, elementValue, null, overwrite);
      });
      return self;
    }

    if ('object' === (0, _typeof2.default)(key)) {
      jQuery.each(key, function (attributeKey, attributeValue) {
        self.addRenderAttribute(element, attributeKey, attributeValue, overwrite);
      });
      return self;
    }

    if (!self.renderAttributes[element]) {
      self.renderAttributes[element] = {};
    }

    if (!self.renderAttributes[element][key]) {
      self.renderAttributes[element][key] = [];
    }

    if (!(0, _isArray.default)(value)) {
      value = [value];
    }

    if (overwrite) {
      self.renderAttributes[element][key] = value;
    } else {
      self.renderAttributes[element][key] = self.renderAttributes[element][key].concat(value);
    }
  },
  getRenderAttributeString: function getRenderAttributeString(element) {
    if (!this.renderAttributes[element]) {
      return '';
    }

    var renderAttributes = this.renderAttributes[element],
        attributes = [];
    jQuery.each(renderAttributes, function (attributeKey, attributeValue) {
      attributes.push(attributeKey + '="' + _.escape(attributeValue.join(' ')) + '"');
    });
    return attributes.join(' ');
  },
  isInner: function isInner() {
    return !!this.model.get('isInner');
  },
  initControlsCSSParser: function initControlsCSSParser() {
    this.controlsCSSParser = new ControlsCSSParser({
      id: this.model.get('id'),
      context: this,
      settingsModel: this.getEditModel().get('settings'),
      dynamicParsing: this.getDynamicParsingSettings()
    });
  },
  enqueueFonts: function enqueueFonts() {
    var editModel = this.getEditModel(),
        settings = editModel.get('settings'); // Enqueue Icon Fonts

    jQuery.each(settings.getIconsControls(), function (index, control) {
      var iconType = editModel.getSetting(control.name);

      if (!iconType || !iconType.library) {
        return;
      }

      elementor.helpers.enqueueIconFonts(iconType.library);
    });
  },
  renderStyles: function renderStyles(settings) {
    if (!settings) {
      settings = this.getEditModel().get('settings');
    }

    this.controlsCSSParser.stylesheet.empty();
    this.controlsCSSParser.addStyleRules(settings.getStyleControls(), settings.attributes, this.getEditModel().get('settings').controls, [/{{ID}}/g, /{{WRAPPER}}/g], [this.getID(), '.elementor-' + elementor.config.document.id + ' .elementor-element.' + this.getElementUniqueID()]);
    this.controlsCSSParser.addStyleToDocument();
  },
  renderCustomClasses: function renderCustomClasses() {
    var self = this;
    var settings = self.getEditModel().get('settings'),
        classControls = settings.getClassControls(); // Remove all previous classes

    _.each(classControls, function (control) {
      var previousClassValue = settings.previous(control.name);

      if (control.classes_dictionary) {
        if (undefined !== control.classes_dictionary[previousClassValue]) {
          previousClassValue = control.classes_dictionary[previousClassValue];
        }
      }

      self.$el.removeClass(control.prefix_class + previousClassValue);
    }); // Add new classes


    _.each(classControls, function (control) {
      var value = settings.attributes[control.name];
      var classValue = value;

      if (control.classes_dictionary) {
        if (undefined !== control.classes_dictionary[value]) {
          classValue = control.classes_dictionary[value];
        }
      }

      var isVisible = elementor.helpers.isActiveControl(control, settings.attributes);

      if (isVisible && (classValue || 0 === classValue)) {
        self.$el.addClass(control.prefix_class + classValue);
      }
    });

    self.$el.addClass(_.result(self, 'className'));
    self.toggleVisibilityClass();
  },
  renderCustomElementID: function renderCustomElementID() {
    var customElementID = this.getEditModel().get('settings').get('_element_id');
    this.$el.attr('id', customElementID);
  },
  renderUI: function renderUI() {
    this.renderStyles();
    this.renderCustomClasses();
    this.renderCustomElementID();
    this.enqueueFonts();
  },
  runReadyTrigger: function runReadyTrigger() {
    var self = this;

    _.defer(function () {
      elementorFrontend.elementsHandler.runReadyTrigger(self.el);

      if (!elementorFrontend.isEditMode()) {
        return;
      } // In edit mode - handle an external elements that loaded by another elements like shortcode etc.


      self.$el.find('.elementor-element.elementor-' + self.model.get('elType') + ':not(.elementor-element-edit-mode)').each(function () {
        elementorFrontend.elementsHandler.runReadyTrigger(this);
      });
    });
  },
  getID: function getID() {
    return this.model.get('id');
  },
  getElementUniqueID: function getElementUniqueID() {
    return 'elementor-element-' + this.getID();
  },
  renderHTML: function renderHTML() {
    var templateType = this.getTemplateType(),
        editModel = this.getEditModel();

    if ('js' === templateType) {
      this.getEditModel().setHtmlCache();
      this.render();
      editModel.renderOnLeave = true;
    } else {
      editModel.renderRemoteServer();
    }
  },
  renderOnChange: function renderOnChange(settings) {
    if (!this.allowRender) {
      return;
    } // Make sure is correct model


    if (settings instanceof elementorModules.editor.elements.models.BaseSettings) {
      var hasChanged = settings.hasChanged();
      var isContentChanged = !hasChanged,
          isRenderRequired = !hasChanged;

      _.each(settings.changedAttributes(), function (settingValue, settingKey) {
        var control = settings.getControl(settingKey);

        if ('_column_size' === settingKey) {
          isRenderRequired = true;
          return;
        }

        if (!control) {
          isRenderRequired = true;
          isContentChanged = true;
          return;
        }

        if ('none' !== control.render_type) {
          isRenderRequired = true;
        }

        if (-1 !== ['none', 'ui'].indexOf(control.render_type)) {
          return;
        }

        if ('template' === control.render_type || !settings.isStyleControl(settingKey) && !settings.isClassControl(settingKey) && '_element_id' !== settingKey) {
          isContentChanged = true;
        }
      });

      if (!isRenderRequired) {
        return;
      }

      if (!isContentChanged) {
        this.renderUI();
        return;
      }
    } // Re-render the template


    this.renderHTML();
  },
  getDynamicParsingSettings: function getDynamicParsingSettings() {
    var self = this;
    return {
      onServerRequestStart: function onServerRequestStart() {
        self.$el.addClass('elementor-loading');
      },
      onServerRequestEnd: function onServerRequestEnd() {
        self.render();
        self.$el.removeClass('elementor-loading');
      }
    };
  },
  serializeData: function serializeData() {
    var data = BaseContainer.prototype.serializeData.apply(this, arguments);
    data.settings = this.getEditModel().get('settings').parseDynamicSettings(data.settings, this.getDynamicParsingSettings());
    return data;
  },
  save: function save() {
    $e.route('library/save-template', {
      model: this.model
    });
  },
  onBeforeRender: function onBeforeRender() {
    this.renderAttributes = {};
  },
  onRender: function onRender() {
    this.renderUI();
    this.runReadyTrigger();

    if (this.toggleEditTools) {
      var editButton = this.ui.editButton; // Since this.ui.tools does not exist while testing.

      if (this.ui.tools) {
        this.ui.tools.hoverIntent(function () {
          editButton.addClass('elementor-active');
        }, function () {
          editButton.removeClass('elementor-active');
        }, {
          timeout: 500
        });
      }
    }
  },
  onEditSettingsChanged: function onEditSettingsChanged(changedModel) {
    elementor.channels.editor.trigger('change:editSettings', changedModel, this);
  },
  onEditButtonClick: function onEditButtonClick() {
    this.model.trigger('request:edit');
  },
  onEditRequest: function onEditRequest() {
    var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};

    if (!this.container.isEditable()) {
      return;
    }

    var model = this.getEditModel(),
        panel = elementor.getPanelView();

    if ($e.routes.isPartOf('panel/editor') && panel.getCurrentPageView().model === model) {
      return;
    }

    if (options.scrollIntoView) {
      elementor.helpers.scrollToView(this.$el, 200);
    }

    $e.run('panel/editor/open', {
      model: model,
      view: this
    });
  },
  onDuplicateButtonClick: function onDuplicateButtonClick(event) {
    event.stopPropagation();
    $e.run('document/elements/duplicate', {
      container: this.getContainer()
    });
  },
  onRemoveButtonClick: function onRemoveButtonClick(event) {
    event.stopPropagation();
    $e.run('document/elements/delete', {
      container: this.getContainer()
    });
  },

  /* jQuery ui sortable preventing any `mousedown` event above any element, and as a result is preventing the `blur`
   * event on the currently active element. Therefor, we need to blur the active element manually.
   */
  onMouseDown: function onMouseDown(event) {
    if (jQuery(event.target).closest('.elementor-inline-editing').length) {
      return;
    }

    elementorFrontend.elements.window.document.activeElement.blur();
  },
  onDestroy: function onDestroy() {
    this.controlsCSSParser.removeStyleFromDocument();
    this.getEditModel().get('settings').validators = {};
    elementor.channels.data.trigger('element:destroy', this.model);
  }
});
module.exports = BaseElementView;

/***/ }),

/***/ "../assets/dev/js/editor/elements/views/behaviors/column-resizable.js":
/*!****************************************************************************!*\
  !*** ../assets/dev/js/editor/elements/views/behaviors/column-resizable.js ***!
  \****************************************************************************/
/***/ ((module) => {

"use strict";


var ResizableBehavior;
ResizableBehavior = Marionette.Behavior.extend({
  defaults: {
    handles: elementorCommon.config.isRTL ? 'w' : 'e'
  },
  events: {
    resizestart: 'onResizeStart',
    resizestop: 'onResizeStop',
    resize: 'onResize'
  },
  initialize: function initialize() {
    Marionette.Behavior.prototype.initialize.apply(this, arguments);
    this.listenTo(elementor.channels.dataEditMode, 'switch', this.onEditModeSwitched);
  },
  active: function active() {
    if (!elementor.userCan('design')) {
      return;
    }

    this.deactivate();

    var options = _.clone(this.options);

    delete options.behaviorClass;

    var $childViewContainer = this.getChildViewContainer(),
        defaultResizableOptions = {},
        resizableOptions = _.extend(defaultResizableOptions, options);

    $childViewContainer.resizable(resizableOptions);
  },
  deactivate: function deactivate() {
    if (this.getChildViewContainer().resizable('instance')) {
      this.getChildViewContainer().resizable('destroy');
    }
  },
  onEditModeSwitched: function onEditModeSwitched(activeMode) {
    if ('edit' === activeMode) {
      this.active();
    } else {
      this.deactivate();
    }
  },
  onRender: function onRender() {
    var self = this;

    _.defer(function () {
      self.onEditModeSwitched(elementor.channels.dataEditMode.request('activeMode'));
    });
  },
  onDestroy: function onDestroy() {
    this.deactivate();
  },
  onResizeStart: function onResizeStart(event) {
    event.stopPropagation();
    this.view.$el.data('originalWidth', this.view.el.getBoundingClientRect().width);
    this.view.triggerMethod('request:resize:start', event);
  },
  onResizeStop: function onResizeStop(event) {
    event.stopPropagation();
    this.view.triggerMethod('request:resize:stop');
  },
  onResize: function onResize(event, ui) {
    event.stopPropagation();
    this.view.triggerMethod('request:resize', ui, event);
  },
  getChildViewContainer: function getChildViewContainer() {
    return this.$el;
  }
});
module.exports = ResizableBehavior;

/***/ }),

/***/ "../assets/dev/js/editor/elements/views/behaviors/context-menu.js":
/*!************************************************************************!*\
  !*** ../assets/dev/js/editor/elements/views/behaviors/context-menu.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _base = _interopRequireDefault(__webpack_require__(/*! elementor-views/add-section/base */ "../assets/dev/js/editor/views/add-section/base.js"));

var ContextMenu = __webpack_require__(/*! elementor-editor-utils/context-menu */ "../assets/dev/js/editor/utils/context-menu.js");

module.exports = Marionette.Behavior.extend({
  defaults: {
    groups: [],
    eventTargets: ['el']
  },
  events: function events() {
    var events = {};
    this.getOption('eventTargets').forEach(function (eventTarget) {
      var eventName = 'contextmenu';

      if ('el' !== eventTarget) {
        eventName += ' ' + eventTarget;
      }

      events[eventName] = 'onContextMenu';
    });
    return events;
  },
  initialize: function initialize() {
    this.listenTo(this.view.options.model, 'request:contextmenu', this.onRequestContextMenu);
  },
  initContextMenu: function initContextMenu() {
    var _this = this;

    var contextMenuGroups = this.getOption('groups'),
        deleteGroup = _.findWhere(contextMenuGroups, {
      name: 'delete'
    }),
        afterGroupIndex = contextMenuGroups.indexOf(deleteGroup);

    if (-1 === afterGroupIndex) {
      afterGroupIndex = contextMenuGroups.length;
    }

    contextMenuGroups.splice(afterGroupIndex, 0, {
      name: 'tools',
      actions: [{
        name: 'navigator',
        title: __('Navigator', 'elementor'),
        callback: function callback() {
          return $e.route('navigator', {
            reOpen: true,
            model: _this.view.model
          });
        }
      }]
    });
    this.contextMenu = new ContextMenu({
      groups: contextMenuGroups
    });
    this.contextMenu.getModal().on('hide', this.onContextMenuHide);
  },
  getContextMenu: function getContextMenu() {
    if (!this.contextMenu) {
      this.initContextMenu();
    }

    return this.contextMenu;
  },
  onContextMenu: function onContextMenu(event) {
    if ($e.shortcuts.isControlEvent(event)) {
      return;
    }

    var isAddSectionView = this.view instanceof _base.default;

    if (!isAddSectionView && (!this.view.container || !this.view.container.isDesignable())) {
      return;
    }

    event.preventDefault();
    event.stopPropagation();
    this.getContextMenu().show(event);
    elementor.channels.editor.reply('contextMenu:targetView', this.view);
  },
  onRequestContextMenu: function onRequestContextMenu(event) {
    var modal = this.getContextMenu().getModal(),
        iframe = modal.getSettings('iframe'),
        toolsGroup = _.findWhere(this.contextMenu.getSettings('groups'), {
      name: 'tools'
    });

    toolsGroup.isVisible = false;
    modal.setSettings('iframe', null);
    this.onContextMenu(event);
    toolsGroup.isVisible = true;
    modal.setSettings('iframe', iframe);
  },
  onContextMenuHide: function onContextMenuHide() {
    elementor.channels.editor.reply('contextMenu:targetView', null);
  },
  onDestroy: function onDestroy() {
    if (this.contextMenu) {
      this.contextMenu.destroy();
    }
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/elements/views/behaviors/sortable.js":
/*!********************************************************************!*\
  !*** ../assets/dev/js/editor/elements/views/behaviors/sortable.js ***!
  \********************************************************************/
/***/ ((module) => {

"use strict";


var SortableBehavior;
SortableBehavior = Marionette.Behavior.extend({
  defaults: {
    elChildType: 'widget'
  },
  events: {
    sortstart: 'onSortStart',
    sortreceive: 'onSortReceive',
    sortupdate: 'onSortUpdate',
    sortover: 'onSortOver',
    sortout: 'onSortOut'
  },
  initialize: function initialize() {
    this.listenTo(elementor.channels.dataEditMode, 'switch', this.onEditModeSwitched).listenTo(this.view.options.model, 'request:sort:start', this.startSort).listenTo(this.view.options.model, 'request:sort:update', this.updateSort).listenTo(this.view.options.model, 'request:sort:receive', this.receiveSort);
  },
  onEditModeSwitched: function onEditModeSwitched(activeMode) {
    if ('edit' === activeMode) {
      this.activate();
    } else {
      this.deactivate();
    }
  },
  onRender: function onRender() {
    var self = this;

    _.defer(function () {
      self.onEditModeSwitched(elementor.channels.dataEditMode.request('activeMode'));
    });
  },
  onDestroy: function onDestroy() {
    this.deactivate();
  },
  activate: function activate() {
    if (!elementor.userCan('design')) {
      return;
    }

    if (this.getChildViewContainer().sortable('instance')) {
      return;
    }

    var $childViewContainer = this.getChildViewContainer(),
        defaultSortableOptions = {
      placeholder: 'elementor-sortable-placeholder elementor-' + this.getOption('elChildType') + '-placeholder',
      cursorAt: {
        top: 20,
        left: 25
      },
      helper: this._getSortableHelper.bind(this),
      cancel: 'input, textarea, button, select, option, .elementor-inline-editing, .elementor-tab-title',
      // Fix: Sortable - Unable to drag and drop sections with huge height.
      start: function start() {
        $childViewContainer.sortable('refreshPositions');
      }
    },
        sortableOptions = _.extend(defaultSortableOptions, this.view.getSortableOptions());

    $childViewContainer.sortable(sortableOptions);
  },
  _getSortableHelper: function _getSortableHelper(event, $item) {
    var model = this.view.collection.get({
      cid: $item.data('model-cid')
    });
    return '<div style="height: 84px; width: 125px;" class="elementor-sortable-helper elementor-sortable-helper-' + model.get('elType') + '"><div class="icon"><i class="' + model.getIcon() + '"></i></div><div class="elementor-element-title-wrapper"><div class="title">' + model.getTitle() + '</div></div></div>';
  },
  getChildViewContainer: function getChildViewContainer() {
    return this.view.getChildViewContainer(this.view);
  },
  // This method is used to fix widgets index detection when dragging or sorting using the preview interface,
  // The natural widget index in the column is wrong, since there is a `.elementor-background-overlay` element
  // at the beginning of the column
  getSortedElementNewIndex: function getSortedElementNewIndex($element) {
    var draggedModel = elementor.channels.data.request('dragging:model'),
        draggedElType = draggedModel.get('elType');
    var newIndex = $element.index();

    if ('widget' === draggedElType && elementorCommon.config.experimentalFeatures['e_dom_optimization']) {
      newIndex--;
    }

    return newIndex;
  },
  deactivate: function deactivate() {
    var childViewContainer = this.getChildViewContainer();

    if (childViewContainer.sortable('instance')) {
      childViewContainer.sortable('destroy');
    }
  },
  startSort: function startSort(event, ui) {
    event.stopPropagation();
    var container = elementor.getContainer(ui.item.attr('data-id'));
    elementor.channels.data.reply('dragging:model', container.model).reply('dragging:view', container.view).reply('dragging:parent:view', this.view).trigger('drag:start', container.model).trigger(container.model.get('elType') + ':drag:start');
  },
  // On sorting element
  updateSort: function updateSort(ui, newIndex) {
    if (undefined === newIndex) {
      newIndex = ui.item.index();
    }

    $e.run('document/elements/move', {
      container: elementor.channels.data.request('dragging:view').getContainer(),
      target: this.view.getContainer(),
      options: {
        at: newIndex
      }
    });
  },
  // On receiving element from another container
  receiveSort: function receiveSort(event, ui, newIndex) {
    event.stopPropagation();

    if (this.view.isCollectionFilled()) {
      jQuery(ui.sender).sortable('cancel');
      return;
    }

    var model = elementor.channels.data.request('dragging:model'),
        draggedElType = model.get('elType'),
        draggedIsInnerSection = 'section' === draggedElType && model.get('isInner'),
        targetIsInnerColumn = 'column' === this.view.getElementType() && this.view.isInner();

    if (draggedIsInnerSection && targetIsInnerColumn) {
      jQuery(ui.sender).sortable('cancel');
      return;
    }

    if (undefined === newIndex) {
      newIndex = ui.item.index();
    }

    $e.run('document/elements/move', {
      container: elementor.channels.data.request('dragging:view').getContainer(),
      target: this.view.getContainer(),
      options: {
        at: newIndex
      }
    });
  },
  onSortStart: function onSortStart(event, ui) {
    if ('column' === this.options.elChildType) {
      var uiData = ui.item.data('sortableItem'),
          uiItems = uiData.items,
          itemHeight = 0;
      uiItems.forEach(function (item) {
        if (item.item[0] === ui.item[0]) {
          itemHeight = item.height;
          return false;
        }
      });
      ui.placeholder.height(itemHeight);
    }

    this.startSort(event, ui);
  },
  onSortOver: function onSortOver(event) {
    event.stopPropagation();
    var model = elementor.channels.data.request('dragging:model');
    jQuery(event.target).addClass('elementor-draggable-over').attr({
      'data-dragged-element': model.get('elType'),
      'data-dragged-is-inner': model.get('isInner')
    });
    this.$el.addClass('elementor-dragging-on-child');
  },
  onSortOut: function onSortOut(event) {
    event.stopPropagation();
    jQuery(event.target).removeClass('elementor-draggable-over').removeAttr('data-dragged-element data-dragged-is-inner');
    this.$el.removeClass('elementor-dragging-on-child');
  },
  onSortReceive: function onSortReceive(event, ui) {
    this.receiveSort(event, ui, this.getSortedElementNewIndex(ui.item));
  },
  onSortUpdate: function onSortUpdate(event, ui) {
    event.stopPropagation();

    if (this.getChildViewContainer()[0] !== ui.item.parent()[0]) {
      return;
    }

    this.updateSort(ui, this.getSortedElementNewIndex(ui.item));
  },
  onAddChild: function onAddChild(view) {
    view.$el.attr('data-model-cid', view.model.cid);
  }
});
module.exports = SortableBehavior;

/***/ }),

/***/ "../assets/dev/js/editor/elements/views/column-empty.js":
/*!**************************************************************!*\
  !*** ../assets/dev/js/editor/elements/views/column-empty.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


module.exports = Marionette.ItemView.extend({
  template: '#tmpl-elementor-empty-preview',
  className: 'elementor-empty-view',
  events: {
    click: 'onClickAdd'
  },
  behaviors: function behaviors() {
    return {
      contextMenu: {
        behaviorClass: __webpack_require__(/*! elementor-behaviors/context-menu */ "../assets/dev/js/editor/elements/views/behaviors/context-menu.js"),
        groups: this.getContextMenuGroups()
      }
    };
  },
  getContextMenuGroups: function getContextMenuGroups() {
    var _this = this;

    return [{
      name: 'general',
      actions: [{
        name: 'paste',
        title: __('Paste', 'elementor'),
        isEnabled: function isEnabled() {
          return $e.components.get('document/elements').utils.isPasteEnabled(_this._parent.getContainer());
        },
        callback: function callback() {
          return $e.run('document/ui/paste', {
            container: _this._parent.getContainer()
          });
        }
      }]
    }];
  },
  onClickAdd: function onClickAdd() {
    $e.route('panel/elements/categories');
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/elements/views/column.js":
/*!********************************************************!*\
  !*** ../assets/dev/js/editor/elements/views/column.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var sprintf = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["sprintf"];
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _section = __webpack_require__(/*! elementor-elements/views/section */ "../assets/dev/js/editor/elements/views/section.js");

var BaseElementView = __webpack_require__(/*! elementor-elements/views/base */ "../assets/dev/js/editor/elements/views/base.js"),
    ColumnEmptyView = __webpack_require__(/*! elementor-elements/views/column-empty */ "../assets/dev/js/editor/elements/views/column-empty.js"),
    ColumnView;

ColumnView = BaseElementView.extend({
  template: Marionette.TemplateCache.get('#tmpl-elementor-column-content'),
  emptyView: ColumnEmptyView,
  childViewContainer: elementorCommon.config.experimentalFeatures['e_dom_optimization'] ? '> .elementor-widget-wrap' : '> .elementor-column-wrap > .elementor-widget-wrap',
  toggleEditTools: true,
  behaviors: function behaviors() {
    var behaviors = BaseElementView.prototype.behaviors.apply(this, arguments);

    _.extend(behaviors, {
      Sortable: {
        behaviorClass: __webpack_require__(/*! elementor-behaviors/sortable */ "../assets/dev/js/editor/elements/views/behaviors/sortable.js"),
        elChildType: 'widget'
      },
      Resizable: {
        behaviorClass: __webpack_require__(/*! elementor-behaviors/column-resizable */ "../assets/dev/js/editor/elements/views/behaviors/column-resizable.js")
      }
    });

    return elementor.hooks.applyFilters('elements/column/behaviors', behaviors, this);
  },
  className: function className() {
    var classes = BaseElementView.prototype.className.apply(this, arguments),
        type = this.isInner() ? 'inner' : 'top';
    return classes + ' elementor-column elementor-' + type + '-column';
  },
  tagName: function tagName() {
    return this.model.getSetting('html_tag') || 'div';
  },
  ui: function ui() {
    var ui = BaseElementView.prototype.ui.apply(this, arguments);
    ui.columnInner = elementorCommon.config.experimentalFeatures['e_dom_optimization'] ? '> .elementor-widget-wrap' : '> .elementor-column-wrap';
    ui.percentsTooltip = '> .elementor-element-overlay .elementor-column-percents-tooltip';
    return ui;
  },
  getEditButtons: function getEditButtons() {
    var elementData = elementor.getElementData(this.model),
        editTools = {};
    editTools.edit = {
      /* translators: %s: Element name. */
      title: sprintf(__('Edit %s', 'elementor'), elementData.title),
      icon: 'column'
    };

    if (elementor.getPreferences('edit_buttons')) {
      editTools.duplicate = {
        /* translators: %s: Element name. */
        title: sprintf(__('Duplicate %s', 'elementor'), elementData.title),
        icon: 'clone'
      };
      editTools.add = {
        /* translators: %s: Element name. */
        title: sprintf(__('Add %s', 'elementor'), elementData.title),
        icon: 'plus'
      };
      editTools.remove = {
        /* translators: %s: Element name. */
        title: sprintf(__('Delete %s', 'elementor'), elementData.title),
        icon: 'close'
      };
    }

    return editTools;
  },
  initialize: function initialize() {
    BaseElementView.prototype.initialize.apply(this, arguments);
    this.model.get('editSettings').set('defaultEditRoute', 'layout');
  },
  attachElContent: function attachElContent() {
    BaseElementView.prototype.attachElContent.apply(this, arguments);
    var $tooltip = jQuery('<div>', {
      class: 'elementor-column-percents-tooltip'
    });
    this.$el.children('.elementor-element-overlay').append($tooltip);
  },
  getContextMenuGroups: function getContextMenuGroups() {
    var self = this,
        groups = BaseElementView.prototype.getContextMenuGroups.apply(this, arguments),
        generalGroupIndex = groups.indexOf(_.findWhere(groups, {
      name: 'general'
    }));
    groups.splice(generalGroupIndex + 1, 0, {
      name: 'addNew',
      actions: [{
        name: 'addNew',
        icon: 'eicon-plus',
        title: __('Add New Column', 'elementor'),
        callback: this.addNewColumn.bind(this),
        isEnabled: function isEnabled() {
          return self.model.collection.length < _section.DEFAULT_MAX_COLUMNS;
        }
      }]
    });
    return groups;
  },
  isDroppingAllowed: function isDroppingAllowed() {
    // Don't allow dragging items to document which is not editable.
    if (!this.getContainer().isEditable()) {
      return false;
    }

    var elementView = elementor.channels.panelElements.request('element:selected');

    if (!elementView) {
      return false;
    }

    var elType = elementView.model.get('elType');

    if ('section' === elType) {
      return !this.isInner();
    }

    return 'widget' === elType;
  },
  getPercentsForDisplay: function getPercentsForDisplay() {
    var inlineSize = +this.model.getSetting('_inline_size') || this.getPercentSize();
    return inlineSize.toFixed(1) + '%';
  },
  changeSizeUI: function changeSizeUI() {
    var self = this,
        columnSize = self.model.getSetting('_column_size');
    self.$el.attr('data-col', columnSize);

    _.defer(function () {
      // Wait for the column size to be applied
      if (self.ui.percentsTooltip) {
        self.ui.percentsTooltip.text(self.getPercentsForDisplay());
      }
    });
  },
  getPercentSize: function getPercentSize(size) {
    if (!size) {
      size = this.el.getBoundingClientRect().width;
    }

    return +(size / this.$el.parent().width() * 100).toFixed(3);
  },
  getSortableOptions: function getSortableOptions() {
    return {
      connectWith: '.elementor-widget-wrap',
      items: '> .elementor-element'
    };
  },
  changeChildContainerClasses: function changeChildContainerClasses() {
    var emptyClass = 'elementor-element-empty',
        populatedClass = 'elementor-element-populated';

    if (this.ui.columnInner) {
      if (this.collection.isEmpty()) {
        this.ui.columnInner.removeClass(populatedClass).addClass(emptyClass);
      } else {
        this.ui.columnInner.removeClass(emptyClass).addClass(populatedClass);
      }
    }
  },
  addNewColumn: function addNewColumn() {
    $e.run('document/elements/create', {
      model: {
        elType: 'column'
      },
      container: this.getContainer().parent,
      options: {
        at: this.$el.index() + 1
      }
    });
  },
  onRender: function onRender() {
    var _this = this;

    var isDomOptimizationActive = elementorCommon.config.experimentalFeatures['e_dom_optimization'];
    var itemsClasses = '';

    if (isDomOptimizationActive) {
      itemsClasses = ' > .elementor-widget-wrap > .elementor-element, >.elementor-widget-wrap > .elementor-empty-view > .elementor-first-add';
    } else {
      itemsClasses = ' > .elementor-column-wrap > .elementor-widget-wrap > .elementor-element, >.elementor-column-wrap > .elementor-widget-wrap > .elementor-empty-view > .elementor-first-add';
    }

    BaseElementView.prototype.onRender.apply(this, arguments);
    this.changeChildContainerClasses();
    this.changeSizeUI();
    this.$el.html5Droppable({
      items: itemsClasses,
      axis: ['vertical'],
      groups: ['elementor-element'],
      isDroppingAllowed: this.isDroppingAllowed.bind(this),
      currentElementClass: 'elementor-html5dnd-current-element',
      placeholderClass: 'elementor-sortable-placeholder elementor-widget-placeholder',
      hasDraggingOnChildClass: 'elementor-dragging-on-child',
      onDropping: function onDropping(side, event) {
        event.stopPropagation(); // Triggering drag end manually, since it won't fired above iframe

        elementor.getPreviewView().onPanelElementDragEnd();
        var newIndex = jQuery(event.currentTarget).index(); // Since 3.0.0, the `.elementor-background-overlay` element sit at the same level as widgets

        if ('bottom' === side && !isDomOptimizationActive) {
          newIndex++;
        } else if ('top' === side && isDomOptimizationActive) {
          newIndex--;
        }

        _this.addElementFromPanel({
          at: newIndex
        });
      }
    });
  },
  onAddButtonClick: function onAddButtonClick(event) {
    event.stopPropagation();
    this.addNewColumn();
  }
});
module.exports = ColumnView;

/***/ }),

/***/ "../assets/dev/js/editor/elements/views/section.js":
/*!*********************************************************!*\
  !*** ../assets/dev/js/editor/elements/views/section.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var sprintf = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["sprintf"];
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

var _inline = _interopRequireDefault(__webpack_require__(/*! ../../views/add-section/inline */ "../assets/dev/js/editor/views/add-section/inline.js"));

var BaseElementView = __webpack_require__(/*! elementor-elements/views/base */ "../assets/dev/js/editor/elements/views/base.js");

var DEFAULT_INNER_SECTION_COLUMNS = 2,
    DEFAULT_MIN_COLUMN_SIZE = 2,
    DEFAULT_MAX_COLUMNS = 10;
var SectionView = BaseElementView.extend({
  childViewContainer: function childViewContainer() {
    var containerSelector = '> .elementor-container';

    if (!elementorCommon.config.experimentalFeatures['e_dom_optimization']) {
      containerSelector += ' > .elementor-row';
    }

    return containerSelector;
  },
  template: Marionette.TemplateCache.get('#tmpl-elementor-section-content'),
  addSectionView: null,
  _checkIsFull: function _checkIsFull() {
    this.toggleSectionIsFull();
    elementorCommon.helpers.softDeprecated('_checkIsFull', '2.9.0', 'toggleSectionIsFull()');
  },
  toggleSectionIsFull: function toggleSectionIsFull() {
    this.$el.toggleClass('elementor-section-filled', this.isCollectionFilled());
  },
  addChildModel: function addChildModel(model) {
    /// TODO: maybe should be part of $e.hooks.
    var isModelInstance = model instanceof Backbone.Model,
        isInner = this.isInner();

    if (isModelInstance) {
      // TODO: change to command.
      model.set('isInner', isInner);
    } else {
      model.isInner = isInner;
    }

    return BaseElementView.prototype.addChildModel.apply(this, arguments);
  },
  className: function className() {
    var classes = BaseElementView.prototype.className.apply(this, arguments),
        type = this.isInner() ? 'inner' : 'top';
    return classes + ' elementor-section elementor-' + type + '-section';
  },
  tagName: function tagName() {
    return this.model.getSetting('html_tag') || 'section';
  },
  behaviors: function behaviors() {
    var behaviors = BaseElementView.prototype.behaviors.apply(this, arguments);

    _.extend(behaviors, {
      Sortable: {
        behaviorClass: __webpack_require__(/*! elementor-behaviors/sortable */ "../assets/dev/js/editor/elements/views/behaviors/sortable.js"),
        elChildType: 'column'
      }
    });

    return elementor.hooks.applyFilters('elements/section/behaviors', behaviors, this);
  },
  initialize: function initialize() {
    BaseElementView.prototype.initialize.apply(this, arguments);
    this.model.get('editSettings').set('defaultEditRoute', 'layout');
  },
  getEditButtons: function getEditButtons() {
    var elementData = elementor.getElementData(this.model),
        editTools = {};

    if (!this.isInner()) {
      editTools.add = {
        /* translators: %s: Element name. */
        title: sprintf(__('Add %s', 'elementor'), elementData.title),
        icon: 'plus'
      };
    }

    editTools.edit = {
      /* translators: %s: Element name. */
      title: sprintf(__('Edit %s', 'elementor'), elementData.title),
      icon: 'handle'
    };

    if (elementor.getPreferences('edit_buttons')) {
      editTools.duplicate = {
        /* translators: %s: Element name. */
        title: sprintf(__('Duplicate %s', 'elementor'), elementData.title),
        icon: 'clone'
      };
    }

    editTools.remove = {
      /* translators: %s: Element name. */
      title: sprintf(__('Delete %s', 'elementor'), elementData.title),
      icon: 'close'
    };
    return editTools;
  },
  getContextMenuGroups: function getContextMenuGroups() {
    var groups = BaseElementView.prototype.getContextMenuGroups.apply(this, arguments),
        transferGroupIndex = groups.indexOf(_.findWhere(groups, {
      name: 'clipboard'
    }));
    groups.splice(transferGroupIndex + 1, 0, {
      name: 'save',
      actions: [{
        name: 'save',
        title: __('Save as Template', 'elementor'),
        callback: this.save.bind(this)
      }]
    });
    return groups;
  },
  getSortableOptions: function getSortableOptions() {
    var sectionConnectClass = this.isInner() ? '.elementor-inner-section' : '.elementor-top-section';
    return {
      connectWith: sectionConnectClass + this.childViewContainer(),
      handle: '> .elementor-element-overlay .elementor-editor-element-edit',
      items: '> .elementor-column',
      forcePlaceholderSize: true,
      tolerance: 'pointer'
    };
  },
  getColumnPercentSize: function getColumnPercentSize(element, size) {
    return +(size / element.parent().width() * 100).toFixed(3);
  },
  getDefaultStructure: function getDefaultStructure() {
    return this.collection.length + '0';
  },
  getStructure: function getStructure() {
    return this.model.getSetting('structure');
  },
  getColumnAt: function getColumnAt(index) {
    var model = this.collection.at(index);
    return model ? this.children.findByModelCid(model.cid) : null;
  },
  getNextColumn: function getNextColumn(columnView) {
    return this.getColumnAt(this.collection.indexOf(columnView.model) + 1);
  },
  getPreviousColumn: function getPreviousColumn(columnView) {
    return this.getColumnAt(this.collection.indexOf(columnView.model) - 1);
  },
  getNeighborContainer: function getNeighborContainer(container) {
    var parentView = container.parent.view,
        nextView = parentView.getNextColumn(container.view) || parentView.getPreviousColumn(container.view);

    if (!nextView) {
      return false;
    }

    return nextView.getContainer();
  },
  setStructure: function setStructure(structure) {
    var shouldAdjustColumns = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
    var parsedStructure = elementor.presetsFactory.getParsedStructure(structure);

    if (+parsedStructure.columnsCount !== this.collection.length) {
      throw new TypeError('The provided structure doesn\'t match the columns count.');
    }

    $e.run('document/elements/settings', {
      container: this.getContainer(),
      settings: {
        structure: structure
      },
      options: {
        external: true
      }
    });

    if (shouldAdjustColumns) {
      this.adjustColumns();
    }
  },
  adjustColumns: function adjustColumns() {
    var preset = elementor.presetsFactory.getPresetByStructure(this.getStructure());
    this.children.each(function (columnView, index) {
      var container = columnView.getContainer();
      $e.run('document/elements/settings', {
        container: container,
        settings: {
          _column_size: preset.preset[index],
          _inline_size: null
        }
      });
    });
  },
  resetLayout: function resetLayout() {
    var shouldAdjustColumns = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
    this.setStructure(this.getDefaultStructure(), shouldAdjustColumns);
  },
  resetColumnsCustomSize: function resetColumnsCustomSize() {
    this.children.each(function (columnView) {
      $e.run('document/elements/settings', {
        container: columnView.getContainer(),
        settings: {
          _inline_size: null
        },
        options: {
          external: true
        }
      });
    });
  },
  isCollectionFilled: function isCollectionFilled() {
    return DEFAULT_MAX_COLUMNS <= this.collection.length;
  },
  showChildrenPercentsTooltip: function showChildrenPercentsTooltip(columnView, nextColumnView) {
    columnView.ui.percentsTooltip.show();
    columnView.ui.percentsTooltip.attr('data-side', elementorCommon.config.isRTL ? 'right' : 'left');
    nextColumnView.ui.percentsTooltip.show();
    nextColumnView.ui.percentsTooltip.attr('data-side', elementorCommon.config.isRTL ? 'left' : 'right');
  },
  hideChildrenPercentsTooltip: function hideChildrenPercentsTooltip(columnView, nextColumnView) {
    columnView.ui.percentsTooltip.hide();
    nextColumnView.ui.percentsTooltip.hide();
  },
  destroyAddSectionView: function destroyAddSectionView() {
    if (this.addSectionView && !this.addSectionView.isDestroyed) {
      this.addSectionView.destroy();
    }
  },
  onRender: function onRender() {
    BaseElementView.prototype.onRender.apply(this, arguments);
    this.toggleSectionIsFull();
  },
  onAddButtonClick: function onAddButtonClick() {
    if (this.addSectionView && !this.addSectionView.isDestroyed) {
      this.addSectionView.fadeToDeath();
      return;
    }

    var addSectionView = new _inline.default({
      at: this.model.collection.indexOf(this.model)
    });
    addSectionView.render();
    this.$el.before(addSectionView.$el);
    addSectionView.$el.hide(); // Delaying the slide down for slow-render browsers (such as FF)

    setTimeout(function () {
      addSectionView.$el.slideDown(null, function () {
        // Remove inline style, for preview mode.
        jQuery(this).css('display', '');
      });
    });
    this.addSectionView = addSectionView;
  },
  onChildviewRequestResizeStart: function onChildviewRequestResizeStart(columnView) {
    var nextColumnView = this.getNextColumn(columnView);

    if (!nextColumnView) {
      return;
    }

    this.showChildrenPercentsTooltip(columnView, nextColumnView);
    var $iframes = columnView.$el.find('iframe').add(nextColumnView.$el.find('iframe'));
    elementor.helpers.disableElementEvents($iframes);
  },
  onChildviewRequestResizeStop: function onChildviewRequestResizeStop(columnView) {
    var nextColumnView = this.getNextColumn(columnView);

    if (!nextColumnView) {
      return;
    }

    this.hideChildrenPercentsTooltip(columnView, nextColumnView);
    var $iframes = columnView.$el.find('iframe').add(nextColumnView.$el.find('iframe'));
    elementor.helpers.enableElementEvents($iframes);
  },
  onChildviewRequestResize: function onChildviewRequestResize(columnView, ui) {
    ui.element.css({
      width: '',
      left: 'initial' // Fix for RTL resizing

    });
    $e.run('document/elements/settings', {
      container: columnView.getContainer(),
      settings: {
        _inline_size: this.getColumnPercentSize(ui.element, ui.size.width)
      }
    });
  },
  onDestroy: function onDestroy() {
    BaseElementView.prototype.onDestroy.apply(this, arguments);
    this.destroyAddSectionView();
  }
});
module.exports = SectionView;
module.exports.DEFAULT_INNER_SECTION_COLUMNS = DEFAULT_INNER_SECTION_COLUMNS;
module.exports.DEFAULT_MIN_COLUMN_SIZE = DEFAULT_MIN_COLUMN_SIZE;
module.exports.DEFAULT_MAX_COLUMNS = DEFAULT_MAX_COLUMNS;

/***/ }),

/***/ "../assets/dev/js/editor/utils/context-menu.js":
/*!*****************************************************!*\
  !*** ../assets/dev/js/editor/utils/context-menu.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

module.exports = elementorModules.Module.extend({
  getDefaultSettings: function getDefaultSettings() {
    return {
      actions: {},
      classes: {
        list: 'elementor-context-menu-list',
        group: 'elementor-context-menu-list__group',
        groupPrefix: 'elementor-context-menu-list__group-',
        item: 'elementor-context-menu-list__item',
        itemTypePrefix: 'elementor-context-menu-list__item-',
        itemTitle: 'elementor-context-menu-list__item__title',
        itemShortcut: 'elementor-context-menu-list__item__shortcut',
        iconShortcut: 'elementor-context-menu-list__item__icon',
        itemDisabled: 'elementor-context-menu-list__item--disabled',
        divider: 'elementor-context-menu-list__divider',
        hidden: 'elementor-hidden'
      }
    };
  },
  buildActionItem: function buildActionItem(action) {
    var self = this,
        classes = self.getSettings('classes'),
        $item = jQuery('<div>', {
      class: classes.item + ' ' + classes.itemTypePrefix + action.name
    }),
        $itemTitle = jQuery('<div>', {
      class: classes.itemTitle
    }).text(action.title),
        $itemIcon = jQuery('<div>', {
      class: classes.iconShortcut
    });

    if (action.icon) {
      $itemIcon.html(jQuery('<i>', {
        class: action.icon
      }));
    }

    $item.append($itemIcon, $itemTitle);

    if (action.shortcut) {
      var $itemShortcut = jQuery('<div>', {
        class: classes.itemShortcut
      }).html(action.shortcut);
      $item.append($itemShortcut);
    }

    if (action.callback) {
      $item.on('click', function () {
        self.runAction(action);
      });
    }

    action.$item = $item;
    return $item;
  },
  buildActionsList: function buildActionsList() {
    var self = this,
        classes = self.getSettings('classes'),
        groups = self.getSettings('groups'),
        $list = jQuery('<div>', {
      class: classes.list
    });
    groups.forEach(function (group) {
      var $group = jQuery('<div>', {
        class: classes.group + ' ' + classes.groupPrefix + group.name
      });
      group.actions.forEach(function (action) {
        $group.append(self.buildActionItem(action));
      });
      $list.append($group);
      group.$item = $group;
    });
    return $list;
  },
  toggleGroupVisibility: function toggleGroupVisibility(group, state) {
    group.$item.toggleClass(this.getSettings('classes.hidden'), !state);
  },
  toggleActionVisibility: function toggleActionVisibility(action, state) {
    action.$item.toggleClass(this.getSettings('classes.hidden'), !state);
  },
  toggleActionUsability: function toggleActionUsability(action, state) {
    action.$item.toggleClass(this.getSettings('classes.itemDisabled'), !state);
  },
  isActionEnabled: function isActionEnabled(action) {
    if (!action.callback && !action.groups) {
      return false;
    }

    return action.isEnabled ? action.isEnabled() : true;
  },
  runAction: function runAction(action) {
    if (!this.isActionEnabled(action)) {
      return;
    }

    action.callback();
    this.getModal().hide();
  },
  initModal: function initModal() {
    var modal;

    this.getModal = function () {
      if (!modal) {
        modal = elementorCommon.dialogsManager.createWidget('simple', {
          className: 'elementor-context-menu',
          message: this.buildActionsList(),
          iframe: elementor.$preview,
          effects: {
            hide: 'hide',
            show: 'show'
          },
          hide: {
            onOutsideContextMenu: true
          },
          position: {
            my: (elementorCommon.config.isRTL ? 'right' : 'left') + ' top',
            collision: 'fit'
          }
        });
      }

      return modal;
    };
  },
  show: function show(event) {
    var self = this,
        modal = self.getModal();
    modal.setSettings('position', {
      of: event
    });
    self.getSettings('groups').forEach(function (group) {
      var isGroupVisible = false !== group.isVisible;
      self.toggleGroupVisibility(group, isGroupVisible);

      if (isGroupVisible) {
        group.actions.forEach(function (action) {
          var isActionVisible = false !== action.isVisible;
          self.toggleActionVisibility(action, isActionVisible);

          if (isActionVisible) {
            self.toggleActionUsability(action, self.isActionEnabled(action));
          }
        });
      }
    });
    modal.show();
  },
  destroy: function destroy() {
    this.getModal().destroy();
  },
  onInit: function onInit() {
    this.initModal();
  }
});

/***/ }),

/***/ "../assets/dev/js/editor/utils/controls-css-parser.js":
/*!************************************************************!*\
  !*** ../assets/dev/js/editor/utils/controls-css-parser.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

__webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");

__webpack_require__(/*! core-js/modules/es6.regexp.match.js */ "../node_modules/core-js/modules/es6.regexp.match.js");

__webpack_require__(/*! core-js/modules/es6.regexp.constructor.js */ "../node_modules/core-js/modules/es6.regexp.constructor.js");

var Stylesheet = __webpack_require__(/*! elementor-editor-utils/stylesheet */ "../assets/dev/js/editor/utils/stylesheet.js"),
    ControlsCSSParser;

ControlsCSSParser = elementorModules.ViewModule.extend({
  stylesheet: null,
  getDefaultSettings: function getDefaultSettings() {
    return {
      id: 0,
      context: null,
      settingsModel: null,
      dynamicParsing: {}
    };
  },
  getDefaultElements: function getDefaultElements() {
    var id = "elementor-style-".concat(this.getSettings('id'));
    var $stylesheet = elementor.$previewContents.find("#".concat(id));

    if (!$stylesheet.length) {
      $stylesheet = jQuery('<style>', {
        id: id
      });
    }

    return {
      $stylesheetElement: $stylesheet
    };
  },
  initStylesheet: function initStylesheet() {
    var _this = this;

    var breakpoints = elementorFrontend.config.responsive.activeBreakpoints;
    this.stylesheet = new Stylesheet();
    (0, _entries.default)(breakpoints).forEach(function (_ref) {
      var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
          breakpointName = _ref2[0],
          breakpointConfig = _ref2[1];

      _this.stylesheet.addDevice(breakpointName, breakpointConfig.value);
    });
  },
  addStyleRules: function addStyleRules(styleControls, values, controls, placeholders, replacements) {
    var _this2 = this;

    // If the current element contains dynamic values, parse these values
    var dynamicParsedValues = this.getSettings('settingsModel').parseDynamicSettings(values, this.getSettings('dynamicParsing'), styleControls);

    _.each(styleControls, function (control) {
      var _control$dynamic, _values$__dynamic__;

      if (control.styleFields && control.styleFields.length) {
        _this2.addRepeaterControlsStyleRules(values[control.name], control.styleFields, control.fields, placeholders, replacements);
      } // If a dynamic tag includes controls with CSS implementations, Take their CSS and apply it.


      if ((_control$dynamic = control.dynamic) !== null && _control$dynamic !== void 0 && _control$dynamic.active && (_values$__dynamic__ = values.__dynamic__) !== null && _values$__dynamic__ !== void 0 && _values$__dynamic__[control.name]) {
        _this2.addDynamicControlStyleRules(values.__dynamic__[control.name], control);
      }

      if (!control.selectors) {
        return;
      }

      var context = _this2.getSettings('context');

      var globalKeys;

      if (context) {
        globalKeys = context.model.get('settings').get('__globals__');
      }

      _this2.addControlStyleRules(control, dynamicParsedValues, controls, placeholders, replacements, globalKeys);
    });
  },
  addControlStyleRules: function addControlStyleRules(control, values, controls, placeholders, replacements, globalKeys) {
    var _this3 = this;

    var globalKey;

    if (globalKeys) {
      var controlGlobalKey = control.name;

      if (control.groupType) {
        controlGlobalKey = control.groupPrefix + control.groupType;
      }

      globalKey = globalKeys[controlGlobalKey];
    }

    var value;

    if (!globalKey) {
      value = this.getStyleControlValue(control, values);

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

    _.each(control.selectors, function (cssProperty, selector) {
      var outputCssProperty;

      if (globalKey) {
        var selectorGlobalValue = _this3.getSelectorGlobalValue(control, globalKey);

        if (selectorGlobalValue) {
          if ('font' === control.type) {
            $e.data.get(globalKey).then(function (response) {
              elementor.helpers.enqueueFont(response.data.value.typography_font_family);
            });
          } // This regex handles a case where a control's selector property value includes more than one CSS selector.
          // Example: 'selector' => 'background: {{VALUE}}; background-color: {{VALUE}};'.


          outputCssProperty = cssProperty.replace(/(:)[^;]+(;?)/g, '$1' + selectorGlobalValue + '$2');
        }
      } else {
        try {
          outputCssProperty = cssProperty.replace(/{{(?:([^.}]+)\.)?([^}| ]*)(?: *\|\| *(?:([^.}]+)\.)?([^}| ]*) *)*}}/g, function (originalPhrase, controlName, placeholder, fallbackControlName, fallbackValue) {
            var externalControlMissing = controlName && !controls[controlName];
            var parsedValue = '';

            if (!externalControlMissing) {
              parsedValue = _this3.parsePropertyPlaceholder(control, value, controls, values, placeholder, controlName);
            }

            if (!parsedValue && 0 !== parsedValue) {
              if (fallbackValue) {
                parsedValue = fallbackValue;
                var stringValueMatches = parsedValue.match(/^(['"])(.*)\1$/);

                if (stringValueMatches) {
                  parsedValue = stringValueMatches[2];
                } else if (!isFinite(parsedValue)) {
                  if (fallbackControlName && !controls[fallbackControlName]) {
                    return '';
                  }

                  parsedValue = _this3.parsePropertyPlaceholder(control, value, controls, values, fallbackValue, fallbackControlName);
                }
              }

              if (!parsedValue && 0 !== parsedValue) {
                if (externalControlMissing) {
                  return '';
                }

                throw '';
              }
            }

            if ('font' === control.type) {
              elementor.helpers.enqueueFont(parsedValue);
            }

            return parsedValue;
          });
        } catch (e) {
          return;
        }
      }

      if (_.isEmpty(outputCssProperty)) {
        return;
      }

      var devicePattern = /^(?:\([^)]+\)){1,2}/,
          deviceRules = selector.match(devicePattern),
          query = {};

      if (deviceRules) {
        deviceRules = deviceRules[0];
        selector = selector.replace(devicePattern, '');
        var pureDevicePattern = /\(([^)]+)\)/g,
            pureDeviceRules = [],
            matches;
        matches = pureDevicePattern.exec(deviceRules);

        while (matches) {
          pureDeviceRules.push(matches[1]);
          matches = pureDevicePattern.exec(deviceRules);
        }

        _.each(pureDeviceRules, function (deviceRule) {
          if ('desktop' === deviceRule) {
            return;
          }

          var device = deviceRule.replace(/\+$/, ''),
              endPoint = device === deviceRule ? 'max' : 'min';
          query[endPoint] = device;
        });
      }

      _.each(placeholders, function (placeholder, index) {
        // Check if it's a RegExp
        var regexp = placeholder.source ? placeholder.source : placeholder,
            placeholderPattern = new RegExp(regexp, 'g');
        selector = selector.replace(placeholderPattern, replacements[index]);
      });

      if (!(0, _keys.default)(query).length && control.responsive) {
        query = _.pick(elementorCommon.helpers.cloneObject(control.responsive), ['min', 'max']);

        if ('desktop' === query.max) {
          delete query.max;
        }
      }

      _this3.stylesheet.addRules(selector, outputCssProperty, query);
    });
  },
  parsePropertyPlaceholder: function parsePropertyPlaceholder(control, value, controls, values, placeholder, parserControlName) {
    if (parserControlName) {
      control = _.findWhere(controls, {
        name: parserControlName
      });
      value = this.getStyleControlValue(control, values);
    }

    return elementor.getControlView(control.type).getStyleValue(placeholder, value, control);
  },
  getStyleControlValue: function getStyleControlValue(control, values) {
    var _this$getSettings, _this$getSettings$con, _values$__globals__, _control$global;

    var container = (_this$getSettings = this.getSettings()) === null || _this$getSettings === void 0 ? void 0 : (_this$getSettings$con = _this$getSettings.context) === null || _this$getSettings$con === void 0 ? void 0 : _this$getSettings$con.container,
        isGlobalApplied = container === null || container === void 0 ? void 0 : container.isGlobalApplied(control.name),
        globalKey = ((_values$__globals__ = values.__globals__) === null || _values$__globals__ === void 0 ? void 0 : _values$__globals__[control.name]) || ((_control$global = control.global) === null || _control$global === void 0 ? void 0 : _control$global.default); // Set a global value only if it's is applied.

    if (isGlobalApplied && globalKey) {
      // When the control itself has no global value, but it refers to another control global value
      return this.getSelectorGlobalValue(control, globalKey);
    }

    var value = values[control.name];

    if (control.selectors_dictionary) {
      value = control.selectors_dictionary[value] || value;
    }

    if (!_.isNumber(value) && _.isEmpty(value)) {
      return;
    }

    return value;
  },
  getSelectorGlobalValue: function getSelectorGlobalValue(control, globalKey) {
    var globalArgs = $e.data.commandExtractArgs(globalKey),
        data = $e.data.getCache($e.components.get('globals'), globalArgs.command, globalArgs.args.query);

    if (!(data !== null && data !== void 0 && data.value)) {
      return;
    }

    var id = data.id;
    var value; // it's a global settings with additional controls in group.

    if (control.groupType) {
      // A regex containing all of the active breakpoints' prefixes ('_mobile', '_tablet' etc.).
      var responsivePrefixRegex = elementor.breakpoints.getActiveMatchRegex();
      var propertyName = control.name.replace(control.groupPrefix, '').replace(responsivePrefixRegex, '');

      if (!data.value[elementor.config.kit_config.typography_prefix + propertyName]) {
        return;
      }

      propertyName = propertyName.replace('_', '-');
      value = "var( --e-global-".concat(control.groupType, "-").concat(id, "-").concat(propertyName, " )");

      if (elementor.config.ui.defaultGenericFonts && control.groupPrefix + 'font_family' === control.name) {
        value += ", ".concat(elementor.config.ui.defaultGenericFonts);
      }
    } else {
      value = "var( --e-global-".concat(control.type, "-").concat(id, " )");
    }

    return value;
  },
  addRepeaterControlsStyleRules: function addRepeaterControlsStyleRules(repeaterValues, repeaterControlsItems, controls, placeholders, replacements) {
    var _this4 = this;

    repeaterControlsItems.forEach(function (item, index) {
      var itemModel = repeaterValues.models[index];

      _this4.addStyleRules(item, itemModel.attributes, controls, placeholders.concat(['{{CURRENT_ITEM}}']), replacements.concat(['.elementor-repeater-item-' + itemModel.get('_id')]));
    });
  },
  addDynamicControlStyleRules: function addDynamicControlStyleRules(value, control) {
    var self = this;
    elementor.dynamicTags.parseTagsText(value, control.dynamic, function (id, name, settings) {
      var tag = elementor.dynamicTags.createTag(id, name, settings);

      if (!tag) {
        return;
      }

      var tagSettingsModel = tag.model,
          styleControls = tagSettingsModel.getStyleControls();

      if (!styleControls.length) {
        return;
      }

      self.addStyleRules(tagSettingsModel.getStyleControls(), tagSettingsModel.attributes, tagSettingsModel.controls, ['{{WRAPPER}}'], ['#elementor-tag-' + id]);
    });
  },
  addStyleToDocument: function addStyleToDocument(position) {
    var $head = elementor.$previewContents.find('head');
    var insertMethod = 'append',
        $insertBy = $head;

    if (position) {
      var $targetElement = $head.children(position.of);

      if ($targetElement.length) {
        insertMethod = position.at;
        $insertBy = $targetElement;
      }
    }

    $insertBy[insertMethod](this.elements.$stylesheetElement);
    var extraCSS = elementor.hooks.applyFilters('editor/style/styleText', '', this.getSettings('context'));
    this.elements.$stylesheetElement.text(this.stylesheet + extraCSS);
  },
  removeStyleFromDocument: function removeStyleFromDocument() {
    this.elements.$stylesheetElement.remove();
  },
  onInit: function onInit() {
    elementorModules.ViewModule.prototype.onInit.apply(this, arguments);
    this.initStylesheet();
  }
});
module.exports = ControlsCSSParser;

/***/ }),

/***/ "../assets/dev/js/editor/utils/stylesheet.js":
/*!***************************************************!*\
  !*** ../assets/dev/js/editor/utils/stylesheet.js ***!
  \***************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

__webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");

__webpack_require__(/*! core-js/modules/es6.regexp.match.js */ "../node_modules/core-js/modules/es6.regexp.match.js");

__webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");

__webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");

__webpack_require__(/*! core-js/modules/es6.regexp.to-string.js */ "../node_modules/core-js/modules/es6.regexp.to-string.js");

(function ($) {
  var Stylesheet = function Stylesheet() {
    var self = this,
        rules = {},
        rawCSS = {},
        devices = {};

    var queryToHash = function queryToHash(query) {
      var hash = [];
      $.each(query, function (endPoint) {
        hash.push(endPoint + '_' + this);
      });
      return hash.join('-');
    };

    var hashToQuery = function hashToQuery(hash) {
      var query = {};
      hash = hash.split('-').filter(String);
      hash.forEach(function (singleQuery) {
        // split {max}/{min}_{device name} to separate strings
        var queryParts = singleQuery.split(/_(.+)/),
            endPoint = queryParts[0],
            deviceName = queryParts[1];
        query[endPoint] = 'max' === endPoint ? devices[deviceName] : elementorFrontend.breakpoints.getDeviceMinBreakpoint(deviceName);
      });
      return query;
    };

    var addQueryHash = function addQueryHash(queryHash) {
      rules[queryHash] = {};
      var hashes = (0, _keys.default)(rules);

      if (hashes.length < 2) {
        return;
      } // Sort the devices from narrowest to widest


      hashes.sort(function (a, b) {
        if ('all' === a) {
          return -1;
        }

        if ('all' === b) {
          return 1;
        }

        var aQuery = hashToQuery(a),
            bQuery = hashToQuery(b);
        return bQuery.max - aQuery.max;
      });
      var sortedRules = {};
      hashes.forEach(function (deviceName) {
        sortedRules[deviceName] = rules[deviceName];
      });
      rules = sortedRules;
    };

    var getQueryHashStyleFormat = function getQueryHashStyleFormat(queryHash) {
      var query = hashToQuery(queryHash),
          styleFormat = [];
      $.each(query, function (endPoint) {
        styleFormat.push('(' + endPoint + '-width:' + this + 'px)');
      });
      return '@media' + styleFormat.join(' and ');
    };

    this.addDevice = function (newDeviceName, deviceValue) {
      devices[newDeviceName] = deviceValue;
      var deviceNames = (0, _keys.default)(devices);

      if (deviceNames.length < 2) {
        return self;
      } // Sort the devices from narrowest to widest


      deviceNames.sort(function (a, b) {
        return devices[a] - devices[b];
      });
      var sortedDevices = {};
      deviceNames.forEach(function (deviceName) {
        sortedDevices[deviceName] = devices[deviceName];
      });
      devices = sortedDevices;
      return self;
    };

    this.addRawCSS = function (key, css) {
      rawCSS[key] = css;
    };

    this.addRules = function (selector, styleRules, query) {
      var queryHash = 'all';

      if (!_.isEmpty(query)) {
        queryHash = queryToHash(query);
      }

      if (!rules[queryHash]) {
        addQueryHash(queryHash);
      }

      if (!styleRules) {
        var parsedRules = selector.match(/[^{]+\{[^}]+}/g);
        $.each(parsedRules, function () {
          var parsedRule = this.match(/([^{]+)\{([^}]+)}/);

          if (parsedRule) {
            self.addRules(parsedRule[1].trim(), parsedRule[2].trim(), query);
          }
        });
        return;
      }

      if (!rules[queryHash][selector]) {
        rules[queryHash][selector] = {};
      }

      if ('string' === typeof styleRules) {
        styleRules = styleRules.split(';').filter(String);
        var orderedRules = {};

        try {
          $.each(styleRules, function () {
            var property = this.split(/:(.*)?/);
            orderedRules[property[0].trim()] = property[1].trim().replace(';', '');
          });
        } catch (error) {
          // At least one of the properties is incorrect
          return;
        }

        styleRules = orderedRules;
      }

      $.extend(rules[queryHash][selector], styleRules);
      return self;
    };

    this.getRules = function () {
      return rules;
    };

    this.empty = function () {
      rules = {};
      rawCSS = {};
    };

    this.toString = function () {
      var styleText = '';
      $.each(rules, function (queryHash) {
        var deviceText = Stylesheet.parseRules(this);

        if ('all' !== queryHash) {
          deviceText = getQueryHashStyleFormat(queryHash) + '{' + deviceText + '}';
        }

        styleText += deviceText;
      });
      $.each(rawCSS, function () {
        styleText += this;
      });
      return styleText;
    };
  };

  Stylesheet.parseRules = function (rules) {
    var parsedRules = '';
    $.each(rules, function (selector) {
      var selectorContent = Stylesheet.parseProperties(this);

      if (selectorContent) {
        parsedRules += selector + '{' + selectorContent + '}';
      }
    });
    return parsedRules;
  };

  Stylesheet.parseProperties = function (properties) {
    var parsedProperties = '';
    $.each(properties, function (propertyKey) {
      if (this) {
        parsedProperties += propertyKey + ':' + this + ';';
      }
    });
    return parsedProperties;
  };

  module.exports = Stylesheet;
})(jQuery);

/***/ }),

/***/ "../assets/dev/js/editor/views/add-section/base.js":
/*!*********************************************************!*\
  !*** ../assets/dev/js/editor/views/add-section/base.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _assign = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/assign */ "../node_modules/@babel/runtime-corejs2/core-js/object/assign.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var AddSectionBase = /*#__PURE__*/function (_Marionette$ItemView) {
  (0, _inherits2.default)(AddSectionBase, _Marionette$ItemView);

  var _super = (0, _createSuper2.default)(AddSectionBase);

  function AddSectionBase() {
    (0, _classCallCheck2.default)(this, AddSectionBase);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(AddSectionBase, [{
    key: "template",
    value: function template() {
      return Marionette.TemplateCache.get('#tmpl-elementor-add-section');
    }
  }, {
    key: "attributes",
    value: function attributes() {
      return {
        'data-view': 'choose-action'
      };
    }
  }, {
    key: "ui",
    value: function ui() {
      return {
        addNewSection: '.elementor-add-new-section',
        closeButton: '.elementor-add-section-close',
        addSectionButton: '.elementor-add-section-button',
        addTemplateButton: '.elementor-add-template-button',
        selectPreset: '.elementor-select-preset',
        presets: '.elementor-preset'
      };
    }
  }, {
    key: "events",
    value: function events() {
      return {
        'click @ui.addSectionButton': 'onAddSectionButtonClick',
        'click @ui.addTemplateButton': 'onAddTemplateButtonClick',
        'click @ui.closeButton': 'onCloseButtonClick',
        'click @ui.presets': 'onPresetSelected'
      };
    }
  }, {
    key: "behaviors",
    value: function behaviors() {
      return {
        contextMenu: {
          behaviorClass: __webpack_require__(/*! elementor-behaviors/context-menu */ "../assets/dev/js/editor/elements/views/behaviors/context-menu.js"),
          groups: this.getContextMenuGroups()
        }
      };
    }
  }, {
    key: "className",
    value: function className() {
      return 'elementor-add-section elementor-visible-desktop';
    }
  }, {
    key: "setView",
    value: function setView(view) {
      this.$el.attr('data-view', view);
    }
  }, {
    key: "showSelectPresets",
    value: function showSelectPresets() {
      this.setView('select-preset');
    }
  }, {
    key: "closeSelectPresets",
    value: function closeSelectPresets() {
      this.setView('choose-action');
    }
  }, {
    key: "getTemplatesModalOptions",
    value: function getTemplatesModalOptions() {
      return {
        importOptions: {
          at: this.getOption('at')
        }
      };
    }
  }, {
    key: "getContextMenuGroups",
    value: function getContextMenuGroups() {
      var _this = this;

      var hasContent = function hasContent() {
        return elementor.elements.length > 0;
      };

      return [{
        name: 'paste',
        actions: [{
          name: 'paste',
          title: __('Paste', 'elementor'),
          isEnabled: function isEnabled() {
            return $e.components.get('document/elements').utils.isPasteEnabled(elementor.getPreviewContainer());
          },
          callback: function callback() {
            return $e.run('document/ui/paste', {
              container: elementor.getPreviewContainer(),
              options: {
                at: _this.getOption('at'),
                rebuild: true
              },
              onAfter: function onAfter() {
                return _this.onAfterPaste();
              }
            });
          }
        }]
      }, {
        name: 'content',
        actions: [{
          name: 'copy_all_content',
          title: __('Copy All Content', 'elementor'),
          isEnabled: hasContent,
          callback: function callback() {
            return $e.run('document/elements/copy-all');
          }
        }, {
          name: 'delete_all_content',
          title: __('Delete All Content', 'elementor'),
          isEnabled: hasContent,
          callback: function callback() {
            return $e.run('document/elements/empty');
          }
        }]
      }];
    }
  }, {
    key: "onAddSectionButtonClick",
    value: function onAddSectionButtonClick() {
      this.showSelectPresets();
    }
  }, {
    key: "onAddTemplateButtonClick",
    value: function onAddTemplateButtonClick() {
      $e.run('library/open', this.getTemplatesModalOptions());
    }
  }, {
    key: "onRender",
    value: function onRender() {
      this.$el.html5Droppable({
        axis: ['vertical'],
        groups: ['elementor-element'],
        placeholder: false,
        currentElementClass: 'elementor-html5dnd-current-element',
        hasDraggingOnChildClass: 'elementor-dragging-on-child',
        onDropping: this.onDropping.bind(this)
      });
    }
  }, {
    key: "onPresetSelected",
    value: function onPresetSelected(event) {
      this.closeSelectPresets();
      var selectedStructure = event.currentTarget.dataset.structure,
          parsedStructure = elementor.presetsFactory.getParsedStructure(selectedStructure);
      $e.run('document/elements/create', {
        model: {
          elType: 'section'
        },
        container: elementor.getPreviewContainer(),
        columns: parsedStructure.columnsCount,
        structure: selectedStructure,
        options: (0, _assign.default)({}, this.options)
      });
    }
  }, {
    key: "onDropping",
    value: function onDropping() {
      if (elementor.helpers.maybeDisableWidget()) {
        return;
      }

      var selectedElement = elementor.channels.panelElements.request('element:selected'),
          historyId = $e.internal('document/history/start-log', {
        type: 'add',
        title: elementor.helpers.getModelLabel(selectedElement.model)
      }),
          eSection = $e.run('document/elements/create', {
        model: {
          elType: 'section'
        },
        container: elementor.getPreviewContainer(),
        columns: 1,
        options: {
          at: this.getOption('at'),
          // BC: Deprecated since 2.8.0 - use `$e.hooks`.
          trigger: {
            beforeAdd: 'section:before:drop',
            afterAdd: 'section:after:drop'
          }
        }
      }); // Create the element in column.

      eSection.view.children.findByIndex(0).addElementFromPanel();
      $e.internal('document/history/end-log', {
        id: historyId
      });
    }
  }, {
    key: "onAfterPaste",
    value: function onAfterPaste() {}
  }]);
  return AddSectionBase;
}(Marionette.ItemView);

var _default = AddSectionBase;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/views/add-section/inline.js":
/*!***********************************************************!*\
  !*** ../assets/dev/js/editor/views/add-section/inline.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _base = _interopRequireDefault(__webpack_require__(/*! ./base */ "../assets/dev/js/editor/views/add-section/base.js"));

var AddSectionView = /*#__PURE__*/function (_BaseAddSectionView) {
  (0, _inherits2.default)(AddSectionView, _BaseAddSectionView);

  var _super = (0, _createSuper2.default)(AddSectionView);

  function AddSectionView() {
    (0, _classCallCheck2.default)(this, AddSectionView);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(AddSectionView, [{
    key: "className",
    value: function className() {
      return (0, _get2.default)((0, _getPrototypeOf2.default)(AddSectionView.prototype), "className", this).call(this) + ' elementor-add-section-inline';
    }
  }, {
    key: "fadeToDeath",
    value: function fadeToDeath() {
      var self = this;
      self.$el.slideUp(function () {
        self.destroy();
      });
    }
  }, {
    key: "onAfterPaste",
    value: function onAfterPaste() {
      (0, _get2.default)((0, _getPrototypeOf2.default)(AddSectionView.prototype), "onAfterPaste", this).call(this);
      this.destroy();
    }
  }, {
    key: "onCloseButtonClick",
    value: function onCloseButtonClick() {
      this.fadeToDeath();
    }
  }, {
    key: "onPresetSelected",
    value: function onPresetSelected(event) {
      (0, _get2.default)((0, _getPrototypeOf2.default)(AddSectionView.prototype), "onPresetSelected", this).call(this, event);
      this.destroy();
    }
  }, {
    key: "onAddTemplateButtonClick",
    value: function onAddTemplateButtonClick() {
      (0, _get2.default)((0, _getPrototypeOf2.default)(AddSectionView.prototype), "onAddTemplateButtonClick", this).call(this);
      this.destroy();
    }
  }, {
    key: "onDropping",
    value: function onDropping() {
      (0, _get2.default)((0, _getPrototypeOf2.default)(AddSectionView.prototype), "onDropping", this).call(this);
      this.destroy();
    }
  }]);
  return AddSectionView;
}(_base.default);

var _default = AddSectionView;
exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/editor/views/base-container.js":
/*!*******************************************************!*\
  !*** ../assets/dev/js/editor/views/base-container.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

module.exports = Marionette.CompositeView.extend({
  templateHelpers: function templateHelpers() {
    return {
      view: this
    };
  },
  getBehavior: function getBehavior(name) {
    return this._behaviors[(0, _keys.default)(this.behaviors()).indexOf(name)];
  },
  initialize: function initialize() {
    this.collection = this.model.get('elements');
  },
  addChildModel: function addChildModel(model, options) {
    return this.collection.add(model, options, true);
  },
  addElement: function addElement(data, options) {
    if (this.isCollectionFilled()) {
      return;
    }

    options = jQuery.extend({
      trigger: false,
      edit: true,
      onBeforeAdd: null,
      onAfterAdd: null
    }, options);
    var childTypes = this.getChildType();
    var newItem, elType;

    if (data instanceof Backbone.Model) {
      newItem = data;
      elType = newItem.get('elType');
    } else {
      newItem = {
        id: elementorCommon.helpers.getUniqueId(),
        elType: childTypes[0],
        settings: {},
        elements: []
      };

      if (data) {
        jQuery.extend(newItem, data);
      }

      elType = newItem.elType;
    }

    if (-1 === childTypes.indexOf(elType)) {
      return this.children.last().addElement(newItem, options);
    }

    if (options.clone) {
      newItem = this.cloneItem(newItem);
    }

    if (options.trigger) {
      elementor.channels.data.trigger(options.trigger.beforeAdd, newItem);
    }

    if (options.onBeforeAdd) {
      options.onBeforeAdd();
    }

    var newModel = this.addChildModel(newItem, {
      at: options.at
    }),
        newView = this.children.findByModel(newModel);

    if (options.onAfterAdd) {
      options.onAfterAdd(newModel, newView);
    }

    if (options.trigger) {
      elementor.channels.data.trigger(options.trigger.afterAdd, newItem);
    }

    if (options.edit && elementor.documents.getCurrent().history.getActive()) {
      // Ensure container is created. TODO: Open editor via UI hook after `document/elements/create`.
      newView.getContainer();
      newModel.trigger('request:edit');
    }

    return newView;
  },
  addChildElement: function addChildElement(data, options) {
    elementorCommon.helpers.softDeprecated('addChildElement', '2.8.0', "$e.run( 'document/elements/create' )");

    if (Object !== data.constructor) {
      data = jQuery.extend({}, data);
    }

    $e.run('document/elements/create', {
      container: this.getContainer(),
      model: data,
      options: options
    });
  },
  cloneItem: function cloneItem(item) {
    var self = this;

    if (item instanceof Backbone.Model) {
      return item.clone();
    }

    item.id = elementorCommon.helpers.getUniqueId();
    item.settings._element_id = '';
    item.elements.forEach(function (childItem, index) {
      item.elements[index] = self.cloneItem(childItem);
    });
    return item;
  },
  lookup: function lookup() {
    var element = this;

    if (element.isDisconnected()) {
      element = $e.components.get('document').utils.findViewById(element.model.id);
    }

    return element;
  },
  isDisconnected: function isDisconnected() {
    return this.isDestroyed || !this.el.isConnected;
  },
  isCollectionFilled: function isCollectionFilled() {
    return false;
  }
});

/***/ }),

/***/ "../assets/dev/js/modules/imports/args-object.js":
/*!*******************************************************!*\
  !*** ../assets/dev/js/modules/imports/args-object.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _instanceType = _interopRequireDefault(__webpack_require__(/*! ./instance-type */ "../assets/dev/js/modules/imports/instance-type.js"));

var ArgsObject = /*#__PURE__*/function (_InstanceType) {
  (0, _inherits2.default)(ArgsObject, _InstanceType);

  var _super = (0, _createSuper2.default)(ArgsObject);

  /**
   * Function constructor().
   *
   * Create ArgsObject.
   *
   * @param {{}} args
   */
  function ArgsObject(args) {
    var _this;

    (0, _classCallCheck2.default)(this, ArgsObject);
    _this = _super.call(this);
    _this.args = args;
    return _this;
  }
  /**
   * Function requireArgument().
   *
   * Validate property in args.
   *
   * @param {string} property
   * @param {{}} args
   *
   * @throws {Error}
   *
   */


  (0, _createClass2.default)(ArgsObject, [{
    key: "requireArgument",
    value: function requireArgument(property) {
      var args = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.args;

      if (!args.hasOwnProperty(property)) {
        throw Error("".concat(property, " is required."));
      }
    }
    /**
     * Function requireArgumentType().
     *
     * Validate property in args using `type === typeof(args.whatever)`.
     *
     * @param {string} property
     * @param {string} type
     * @param {{}} args
     *
     * @throws {Error}
     *
     */

  }, {
    key: "requireArgumentType",
    value: function requireArgumentType(property, type) {
      var args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.args;
      this.requireArgument(property, args);

      if ((0, _typeof2.default)(args[property]) !== type) {
        throw Error("".concat(property, " invalid type: ").concat(type, "."));
      }
    }
    /**
     * Function requireArgumentInstance().
     *
     * Validate property in args using `args.whatever instanceof instance`.
     *
     * @param {string} property
     * @param {instanceof} instance
     * @param {{}} args
     *
     * @throws {Error}
     *
     */

  }, {
    key: "requireArgumentInstance",
    value: function requireArgumentInstance(property, instance) {
      var args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.args;
      this.requireArgument(property, args);

      if (!(args[property] instanceof instance)) {
        throw Error("".concat(property, " invalid instance."));
      }
    }
    /**
     * Function requireArgumentConstructor().
     *
     * Validate property in args using `type === args.whatever.constructor`.
     *
     * @param {string} property
     * @param {*} type
     * @param {{}} args
     *
     * @throws {Error}
     *
     */

  }, {
    key: "requireArgumentConstructor",
    value: function requireArgumentConstructor(property, type) {
      var args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.args;
      this.requireArgument(property, args);

      if (args[property].constructor !== type) {
        throw Error("".concat(property, " invalid constructor type."));
      }
    }
  }], [{
    key: "getInstanceType",
    value: function getInstanceType() {
      return 'ArgsObject';
    }
  }]);
  return ArgsObject;
}(_instanceType.default);

exports.default = ArgsObject;

/***/ }),

/***/ "../assets/dev/js/modules/imports/instance-type.js":
/*!*********************************************************!*\
  !*** ../assets/dev/js/modules/imports/instance-type.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _hasInstance = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/has-instance */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/has-instance.js"));

var _isArray = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js"));

__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var InstanceType = /*#__PURE__*/function () {
  function InstanceType() {
    var _this = this;

    (0, _classCallCheck2.default)(this, InstanceType);
    // Since anonymous classes sometimes do not get validated by babel, do it manually.
    var target = this instanceof InstanceType ? this.constructor : void 0;
    var prototypes = [];

    while (target.__proto__ && target.__proto__.name) {
      prototypes.push(target.__proto__);
      target = target.__proto__;
    }

    prototypes.reverse().forEach(function (proto) {
      return _this instanceof proto;
    });
  }

  (0, _createClass2.default)(InstanceType, null, [{
    key: _hasInstance.default,
    value: function value(target) {
      /**
       * This is function extending being called each time JS uses instanceOf, since babel use it each time it create new class
       * its give's opportunity to mange capabilities of instanceOf operator.
       * saving current class each time will give option later to handle instanceOf manually.
       */
      var result = (0, _get2.default)((0, _getPrototypeOf2.default)(InstanceType), _hasInstance.default, this).call(this, target); // Act normal when validate a class, which does not have instance type.

      if (target && !target.constructor.getInstanceType) {
        return result;
      }

      if (target) {
        if (!target.instanceTypes) {
          target.instanceTypes = [];
        }

        if (!result) {
          if (this.getInstanceType() === target.constructor.getInstanceType()) {
            result = true;
          }
        }

        if (result) {
          var name = this.getInstanceType === InstanceType.getInstanceType ? 'BaseInstanceType' : this.getInstanceType();

          if (-1 === target.instanceTypes.indexOf(name)) {
            target.instanceTypes.push(name);
          }
        }
      }

      if (!result && target) {
        // Check if the given 'target', is instance of known types.
        result = target.instanceTypes && (0, _isArray.default)(target.instanceTypes) && -1 !== target.instanceTypes.indexOf(this.getInstanceType());
      }

      return result;
    }
  }, {
    key: "getInstanceType",
    value: function getInstanceType() {
      elementorModules.ForceMethodImplementation();
    }
  }]);
  return InstanceType;
}();

exports.default = InstanceType;

/***/ }),

/***/ "../core/common/assets/js/api/modules/command-base.js":
/*!************************************************************!*\
  !*** ../core/common/assets/js/api/modules/command-base.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

__webpack_require__(/*! core-js/modules/es6.string.iterator.js */ "../node_modules/core-js/modules/es6.string.iterator.js");

__webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");

__webpack_require__(/*! core-js/modules/es6.array.iterator.js */ "../node_modules/core-js/modules/es6.array.iterator.js");

__webpack_require__(/*! core-js/modules/web.dom.iterable.js */ "../node_modules/core-js/modules/web.dom.iterable.js");

var _isArray = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js"));

var _promise = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/promise */ "../node_modules/@babel/runtime-corejs2/core-js/promise.js"));

var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js"));

var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/asyncToGenerator */ "../node_modules/@babel/runtime-corejs2/helpers/asyncToGenerator.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _argsObject = _interopRequireDefault(__webpack_require__(/*! elementor-assets-js/modules/imports/args-object */ "../assets/dev/js/modules/imports/args-object.js"));

var CommandBase = /*#__PURE__*/function (_ArgsObject) {
  (0, _inherits2.default)(CommandBase, _ArgsObject);

  var _super = (0, _createSuper2.default)(CommandBase);

  /**
   * Function constructor().
   *
   * Create Commands Base.
   *
   * @param [args={}]
   * @param [commandsAPI={}]
   */
  function CommandBase(args) {
    var _this;

    var commandsAPI = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : $e.commands;
    (0, _classCallCheck2.default)(this, CommandBase);
    _this = _super.call(this, args); // Acknowledge self about which command it run.

    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "component", void 0);
    _this.currentCommand = commandsAPI.getCurrentLast(); // Assign instance of current component.

    _this.component = commandsAPI.getComponent(_this.currentCommand); // Who ever need do something before without `super` the constructor can use `initialize` method.

    _this.initialize(args); // Refresh args, maybe the changed via `initialize`.


    args = _this.args; // Validate args before run.

    _this.validateArgs(args);

    return _this;
  }
  /**
   * Function requireContainer().
   *
   * Validate `arg.container` & `arg.containers`.
   *
   * @param {{}} args
   *
   * @throws {Error}
   */


  (0, _createClass2.default)(CommandBase, [{
    key: "requireContainer",
    value: function requireContainer() {
      var _this2 = this;

      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.args;

      if (!args.container && !args.containers) {
        throw Error('container or containers are required.');
      }

      if (args.container && args.containers) {
        throw Error('container and containers cannot go together please select one of them.');
      }

      var containers = args.containers || [args.container];
      containers.forEach(function (container) {
        _this2.requireArgumentInstance('container', elementorModules.editor.Container, {
          container: container
        });
      });
    }
    /**
     * Function initialize().
     *
     * Initialize command, called after construction.
     *
     * @param [args={}]
     */

  }, {
    key: "initialize",
    value: function initialize() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
    } // eslint-disable-line no-unused-vars

    /**
     * Function validateArgs().
     *
     * Validate command arguments.
     *
     * @param [args={}]
     */

  }, {
    key: "validateArgs",
    value: function validateArgs() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
    } // eslint-disable-line no-unused-vars

    /**
     * Function isDataChanged().
     *
     * Whether the editor needs to set change flag on/off.
     *
     * @returns {boolean}
     */

  }, {
    key: "isDataChanged",
    value: function isDataChanged() {
      return false;
    }
    /**
     * Function apply().
     *
     * Do the actual command.
     *
     * @param [args={}]
     *
     * @returns {*}
     */

  }, {
    key: "apply",
    value: function apply() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      // eslint-disable-line no-unused-vars
      elementorModules.ForceMethodImplementation();
    }
    /**
     * Function run().
     *
     * Run command with history & hooks.
     *
     * @returns {*}
     */

  }, {
    key: "run",
    value: function run() {
      var result; // For UI Hooks.

      this.onBeforeRun(this.args);

      try {
        // For Data hooks.
        this.onBeforeApply(this.args);
        result = this.apply(this.args);
      } catch (e) {
        this.onCatchApply(e); // Catch 'Hook-Break' that comes from hooks base.

        if (e instanceof $e.modules.HookBreak) {
          // Bypass.
          return false;
        }
      }

      return this.runAfter(result);
    }
  }, {
    key: "runAfter",
    value: function runAfter(result) {
      var _this3 = this;

      var onAfter = function onAfter(_result) {
        // Run Data hooks.
        _this3.onAfterApply(_this3.args, _result); // TODO: Create Command-Base for Command-Document and apply it on after.


        if (_this3.isDataChanged()) {
          $e.internal('document/save/set-is-modified', {
            status: true
          });
        } // For UI hooks.


        _this3.onAfterRun(_this3.args, _result);
      },
          asyncOnAfter = /*#__PURE__*/function () {
        var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(_result) {
          var results, promises;
          return _regenerator.default.wrap(function _callee$(_context) {
            while (1) {
              switch (_context.prev = _context.next) {
                case 0:
                  // Run Data hooks.
                  results = _this3.onAfterApply(_this3.args, _result), promises = (0, _isArray.default)(results) ? results.flat().filter(function (filtered) {
                    return filtered instanceof _promise.default;
                  }) : [];

                  if (!promises.length) {
                    _context.next = 4;
                    break;
                  }

                  _context.next = 4;
                  return _promise.default.all(promises);

                case 4:
                  if (_this3.isDataChanged()) {
                    // TODO: Create Command-Base for Command-Document and apply it on after.
                    $e.internal('document/save/set-is-modified', {
                      status: true
                    });
                  } // For UI hooks.


                  _this3.onAfterRun(_this3.args, _result);

                case 6:
                case "end":
                  return _context.stop();
              }
            }
          }, _callee);
        }));

        return function asyncOnAfter(_x) {
          return _ref.apply(this, arguments);
        };
      }(); // TODO: Temp code determine if it's a jQuery deferred object.


      if (result && 'object' === (0, _typeof2.default)(result) && result.promise && result.then && result.fail) {
        result.fail(this.onCatchApply.bind(this));
        result.done(onAfter);
      } else if (result instanceof _promise.default) {
        // Override initial result ( promise ) to await onAfter promises, first!.
        return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
          return _regenerator.default.wrap(function _callee2$(_context2) {
            while (1) {
              switch (_context2.prev = _context2.next) {
                case 0:
                  _context2.next = 2;
                  return result.catch(_this3.onCatchApply.bind(_this3));

                case 2:
                  _context2.next = 4;
                  return result.then(function (_result) {
                    return asyncOnAfter(_result);
                  });

                case 4:
                  return _context2.abrupt("return", result);

                case 5:
                case "end":
                  return _context2.stop();
              }
            }
          }, _callee2);
        }))();
      } else {
        onAfter(result);
      }

      return result;
    }
    /**
     * Run all the catch hooks.
     *
     * @param {Error} e
     */

  }, {
    key: "runCatchHooks",
    value: function runCatchHooks(e) {
      $e.hooks.runDataCatch(this.currentCommand, this.args, e);
      $e.hooks.runUICatch(this.currentCommand, this.args, e);
    }
    /**
     * Function onBeforeRun.
     *
     * Called before run().
     *
     * @param [args={}]
     */

  }, {
    key: "onBeforeRun",
    value: function onBeforeRun() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      $e.hooks.runUIBefore(this.currentCommand, args);
    }
    /**
     * Function onAfterRun.
     *
     * Called after run().
     *
     * @param [args={}]
     * @param [result={*}]
     */

  }, {
    key: "onAfterRun",
    value: function onAfterRun() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      var result = arguments.length > 1 ? arguments[1] : undefined;
      $e.hooks.runUIAfter(this.currentCommand, args, result);
    }
    /**
     * Function onBeforeApply.
     *
     * Called before apply().
     *
     * @param [args={}]
     */

  }, {
    key: "onBeforeApply",
    value: function onBeforeApply() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      $e.hooks.runDataDependency(this.currentCommand, args);
    }
    /**
     * Function onAfterApply.
     *
     * Called after apply().
     *
     * @param [args={}]
     * @param [result={*}]
     */

  }, {
    key: "onAfterApply",
    value: function onAfterApply() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      var result = arguments.length > 1 ? arguments[1] : undefined;
      return $e.hooks.runDataAfter(this.currentCommand, args, result);
    }
    /**
     * Function onCatchApply.
     *
     * Called after apply() failed.
     *
     * @param {Error} e
     */

  }, {
    key: "onCatchApply",
    value: function onCatchApply(e) {
      this.runCatchHooks(e);
      elementorCommon.helpers.consoleError(e);
    }
  }], [{
    key: "getInstanceType",
    value: function getInstanceType() {
      return 'CommandBase';
    }
    /**
     * Get info of command.
     *
     * Use to provide 'extra' information about the command.
     *
     * @returns {Object}
     */

  }, {
    key: "getInfo",
    value: function getInfo() {
      return {};
    }
    /**
     * Current component.
     *
     * @type {Component}
     */

  }]);
  return CommandBase;
}(_argsObject.default);

exports.default = CommandBase;

/***/ }),

/***/ "../core/common/assets/js/api/modules/command-data.js":
/*!************************************************************!*\
  !*** ../core/common/assets/js/api/modules/command-data.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

var _assign = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/assign */ "../node_modules/@babel/runtime-corejs2/core-js/object/assign.js"));

var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! ./command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var errors = _interopRequireWildcard(__webpack_require__(/*! ./errors */ "../core/common/assets/js/api/modules/errors/index.js"));

var CommandData = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(CommandData, _CommandBase);

  var _super = (0, _createSuper2.default)(CommandData);

  function CommandData(args) {
    var _this$args$options;

    var _this;

    var commandsAPI = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : $e.data;
    (0, _classCallCheck2.default)(this, CommandData);
    _this = _super.call(this, args, commandsAPI);
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "data", void 0);
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "type", void 0);

    if ((_this$args$options = _this.args.options) !== null && _this$args$options !== void 0 && _this$args$options.type) {
      _this.type = _this.args.options.type;
    }

    return _this;
  }
  /**
   * Function getEndpointFormat().
   *
   * @returns {(null|string)}
   */


  (0, _createClass2.default)(CommandData, [{
    key: "getApplyMethods",
    value:
    /**
     * @param {DataTypes} type
     *
     * @returns {boolean|{before: (function(*=): {}), after: (function({}, *=): {})}}
     */
    function getApplyMethods() {
      var type = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.type;
      var before, after;

      switch (type) {
        case 'create':
          before = this.applyBeforeCreate;
          after = this.applyAfterCreate;
          break;

        case 'delete':
          before = this.applyBeforeDelete;
          after = this.applyAfterDelete;
          break;

        case 'get':
          before = this.applyBeforeGet;
          after = this.applyAfterGet;
          break;

        case 'update':
          before = this.applyBeforeUpdate;
          after = this.applyAfterUpdate;
          break;

        case 'options':
          before = this.applyBeforeOptions;
          after = this.applyAfterOptions;
          break;

        default:
          return false;
      }

      return {
        before: before,
        after: after
      };
    }
    /**
     * Function getRequestData().
     *
     * @returns {RequestData}
     */

  }, {
    key: "getRequestData",
    value: function getRequestData() {
      return {
        type: this.type,
        args: this.args,
        timestamp: new Date().getTime(),
        component: this.component,
        command: this.currentCommand,
        endpoint: $e.data.commandToEndpoint(this.currentCommand, elementorCommon.helpers.cloneObject(this.args), this.constructor.getEndpointFormat())
      };
    }
  }, {
    key: "apply",
    value: function apply() {
      var _this2 = this;

      var applyMethods = this.getApplyMethods(); // Run 'before' method.

      this.args = applyMethods.before(this.args);
      var requestData = this.getRequestData();
      return $e.data.fetch(requestData).then(function (data) {
        _this2.data = data; // Run 'after' method.

        _this2.data = applyMethods.after(data, _this2.args);
        _this2.data = {
          data: _this2.data
        }; // Append requestData.

        _this2.data = (0, _assign.default)({
          __requestData__: requestData
        }, _this2.data);
        return _this2.data;
      });
    }
    /**
     * @param [args={}]
     * @returns {{}} filtered args
     */

  }, {
    key: "applyBeforeCreate",
    value: function applyBeforeCreate() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      return args;
    }
    /**
     * @param {{}} data
     * @param [args={}]
     * @returns {{}} filtered result
     */

  }, {
    key: "applyAfterCreate",
    value: function applyAfterCreate(data) {
      var args = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
      // eslint-disable-line no-unused-vars
      return data;
    }
    /**
     * @param [args={}]
     * @returns {{}} filtered args
     */

  }, {
    key: "applyBeforeDelete",
    value: function applyBeforeDelete() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      return args;
    }
    /**
     * @param {{}} data
     * @param [args={}]
     * @returns {{}} filtered result
     */

  }, {
    key: "applyAfterDelete",
    value: function applyAfterDelete(data) {
      var args = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
      // eslint-disable-line no-unused-vars
      return data;
    }
    /**
     * @param [args={}]
     * @returns {{}} filtered args
     */

  }, {
    key: "applyBeforeGet",
    value: function applyBeforeGet() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      return args;
    }
    /**
     * @param {{}} data
     * @param [args={}]
     * @returns {{}} filtered result
     */

  }, {
    key: "applyAfterGet",
    value: function applyAfterGet(data) {
      var args = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
      // eslint-disable-line no-unused-vars
      return data;
    }
    /**
     * @param [args={}]
     * @returns {{}} filtered args
     */

  }, {
    key: "applyBeforeUpdate",
    value: function applyBeforeUpdate() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      return args;
    }
    /**
     * @param {{}} data
     * @param [args={}]
     * @returns {{}} filtered result
     */

  }, {
    key: "applyAfterUpdate",
    value: function applyAfterUpdate(data) {
      var args = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
      // eslint-disable-line no-unused-vars
      return data;
    }
    /**
     * @param [args={}]
     * @returns {{}} filtered args
     */

  }, {
    key: "applyBeforeOptions",
    value: function applyBeforeOptions() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      return args;
    }
    /**
     * @param {{}} data
     * @param [args={}]
     * @returns {{}} filtered result
     */

  }, {
    key: "applyAfterOptions",
    value: function applyAfterOptions(data) {
      var args = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
      // eslint-disable-line no-unused-vars
      return data;
    }
    /**
     * Called after apply() failed.
     *
     * @param e
     */

  }, {
    key: "onCatchApply",
    value: function onCatchApply(e) {
      var _e, _e$data;

      // TODO: If the errors that returns from the server is consistent remove the '?' from 'e'
      var status = ((_e = e) === null || _e === void 0 ? void 0 : (_e$data = _e.data) === null || _e$data === void 0 ? void 0 : _e$data.status) || 0;
      var dataError = (0, _values.default)(errors).find(function (error) {
        return error.getStatus() === status;
      });

      if (!dataError) {
        dataError = errors.DefaultError;
      }

      e = dataError.create(e.message, e.code, e.data || []);
      this.runCatchHooks(e);
      e.notify();
    }
  }], [{
    key: "getInstanceType",
    value:
    /**
     * Data returned from remote.
     *
     * @type {*}
     */

    /**
     * Fetch type.
     *
     * @type {DataTypes}
     */
    function getInstanceType() {
      return 'CommandData';
    }
  }, {
    key: "getEndpointFormat",
    value: function getEndpointFormat() {
      return null;
    }
  }]);
  return CommandData;
}(_commandBase.default);

exports.default = CommandData;

/***/ }),

/***/ "../core/common/assets/js/api/modules/command-internal-base.js":
/*!*********************************************************************!*\
  !*** ../core/common/assets/js/api/modules/command-internal-base.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! ./command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var CommandInternalBase = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(CommandInternalBase, _CommandBase);

  var _super = (0, _createSuper2.default)(CommandInternalBase);

  function CommandInternalBase(args) {
    var commandsAPI = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : $e.commandsInternal;
    (0, _classCallCheck2.default)(this, CommandInternalBase);
    return _super.call(this, args, commandsAPI);
  }

  (0, _createClass2.default)(CommandInternalBase, null, [{
    key: "getInstanceType",
    value: function getInstanceType() {
      return 'CommandInternalBase';
    }
  }]);
  return CommandInternalBase;
}(_commandBase.default);

exports.default = CommandInternalBase;

/***/ }),

/***/ "../core/common/assets/js/api/modules/component-base.js":
/*!**************************************************************!*\
  !*** ../core/common/assets/js/api/modules/component-base.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

__webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var ComponentBase = /*#__PURE__*/function (_elementorModules$Mod) {
  (0, _inherits2.default)(ComponentBase, _elementorModules$Mod);

  var _super = (0, _createSuper2.default)(ComponentBase);

  function ComponentBase() {
    (0, _classCallCheck2.default)(this, ComponentBase);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(ComponentBase, [{
    key: "__construct",
    value: function __construct() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};

      if (args.manager) {
        this.manager = args.manager;
      }

      this.commands = this.defaultCommands();
      this.commandsInternal = this.defaultCommandsInternal();
      this.hooks = this.defaultHooks();
      this.routes = this.defaultRoutes();
      this.tabs = this.defaultTabs();
      this.shortcuts = this.defaultShortcuts();
      this.utils = this.defaultUtils();
      this.data = this.defaultData();
      this.uiStates = this.defaultUiStates();
      this.defaultRoute = '';
      this.currentTab = '';
    }
  }, {
    key: "registerAPI",
    value: function registerAPI() {
      var _this = this;

      (0, _entries.default)(this.getTabs()).forEach(function (tab) {
        return _this.registerTabRoute(tab[0]);
      });
      (0, _entries.default)(this.getRoutes()).forEach(function (_ref) {
        var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
            route = _ref2[0],
            callback = _ref2[1];

        return _this.registerRoute(route, callback);
      });
      (0, _entries.default)(this.getCommands()).forEach(function (_ref3) {
        var _ref4 = (0, _slicedToArray2.default)(_ref3, 2),
            command = _ref4[0],
            callback = _ref4[1];

        return _this.registerCommand(command, callback);
      });
      (0, _entries.default)(this.getCommandsInternal()).forEach(function (_ref5) {
        var _ref6 = (0, _slicedToArray2.default)(_ref5, 2),
            command = _ref6[0],
            callback = _ref6[1];

        return _this.registerCommandInternal(command, callback);
      });
      (0, _values.default)(this.getHooks()).forEach(function (instance) {
        return _this.registerHook(instance);
      });
      (0, _entries.default)(this.getData()).forEach(function (_ref7) {
        var _ref8 = (0, _slicedToArray2.default)(_ref7, 2),
            command = _ref8[0],
            callback = _ref8[1];

        return _this.registerData(command, callback);
      });
      (0, _values.default)(this.getUiStates()).forEach(function (instance) {
        return _this.registerUiState(instance);
      });
    }
    /**
     * @returns {string}
     */

  }, {
    key: "getNamespace",
    value: function getNamespace() {
      elementorModules.ForceMethodImplementation();
    }
  }, {
    key: "getRootContainer",
    value: function getRootContainer() {
      var parts = this.getNamespace().split('/');
      return parts[0];
    }
  }, {
    key: "defaultTabs",
    value: function defaultTabs() {
      return {};
    }
  }, {
    key: "defaultRoutes",
    value: function defaultRoutes() {
      return {};
    }
  }, {
    key: "defaultCommands",
    value: function defaultCommands() {
      return {};
    }
  }, {
    key: "defaultCommandsInternal",
    value: function defaultCommandsInternal() {
      return {};
    }
  }, {
    key: "defaultHooks",
    value: function defaultHooks() {
      return {};
    }
    /**
     * Get the component's default UI states.
     *
     * @return {Object}
     */

  }, {
    key: "defaultUiStates",
    value: function defaultUiStates() {
      return {};
    }
  }, {
    key: "defaultShortcuts",
    value: function defaultShortcuts() {
      return {};
    }
  }, {
    key: "defaultUtils",
    value: function defaultUtils() {
      return {};
    }
  }, {
    key: "defaultData",
    value: function defaultData() {
      return {};
    }
  }, {
    key: "getCommands",
    value: function getCommands() {
      return this.commands;
    }
  }, {
    key: "getCommandsInternal",
    value: function getCommandsInternal() {
      return this.commandsInternal;
    }
  }, {
    key: "getHooks",
    value: function getHooks() {
      return this.hooks;
    }
    /**
     * Retrieve the component's UI states.
     *
     * @return {Object}
     */

  }, {
    key: "getUiStates",
    value: function getUiStates() {
      return this.uiStates;
    }
  }, {
    key: "getRoutes",
    value: function getRoutes() {
      return this.routes;
    }
  }, {
    key: "getTabs",
    value: function getTabs() {
      return this.tabs;
    }
  }, {
    key: "getShortcuts",
    value: function getShortcuts() {
      return this.shortcuts;
    }
  }, {
    key: "getData",
    value: function getData() {
      return this.data;
    }
  }, {
    key: "registerCommand",
    value: function registerCommand(command, callback) {
      $e.commands.register(this, command, callback);
    }
    /**
     * @param {HookBase} instance
     */

  }, {
    key: "registerHook",
    value: function registerHook(instance) {
      return instance.register();
    }
    /**
     * Register a UI state.
     *
     * @param {UiStateBase} instance - UI state instance.
     *
     * @return {void}
     */

  }, {
    key: "registerUiState",
    value: function registerUiState(instance) {
      $e.uiStates.register(instance);
    }
  }, {
    key: "registerCommandInternal",
    value: function registerCommandInternal(command, callback) {
      $e.commandsInternal.register(this, command, callback);
    }
  }, {
    key: "registerRoute",
    value: function registerRoute(route, callback) {
      $e.routes.register(this, route, callback);
    }
  }, {
    key: "registerData",
    value: function registerData(command, callback) {
      $e.data.register(this, command, callback);
    }
  }, {
    key: "unregisterRoute",
    value: function unregisterRoute(route) {
      $e.routes.unregister(this, route);
    }
  }, {
    key: "registerTabRoute",
    value: function registerTabRoute(tab) {
      var _this2 = this;

      this.registerRoute(tab, function (args) {
        return _this2.activateTab(tab, args);
      });
    }
  }, {
    key: "dependency",
    value: function dependency() {
      return true;
    }
  }, {
    key: "open",
    value: function open() {
      return true;
    }
  }, {
    key: "close",
    value: function close() {
      if (!this.isOpen) {
        return false;
      }

      this.isOpen = false;
      this.inactivate();
      $e.routes.clearCurrent(this.getNamespace());
      $e.routes.clearHistory(this.getRootContainer());
      return true;
    }
  }, {
    key: "activate",
    value: function activate() {
      $e.components.activate(this.getNamespace());
    }
  }, {
    key: "inactivate",
    value: function inactivate() {
      $e.components.inactivate(this.getNamespace());
    }
  }, {
    key: "isActive",
    value: function isActive() {
      return $e.components.isActive(this.getNamespace());
    }
  }, {
    key: "onRoute",
    value: function onRoute(route) {
      this.toggleRouteClass(route, true);
      this.toggleHistoryClass();
      this.activate();
      this.trigger('route/open', route);
    }
  }, {
    key: "onCloseRoute",
    value: function onCloseRoute(route) {
      this.toggleRouteClass(route, false);
      this.inactivate();
      this.trigger('route/close', route);
    }
  }, {
    key: "setDefaultRoute",
    value: function setDefaultRoute(route) {
      this.defaultRoute = this.getNamespace() + '/' + route;
    }
  }, {
    key: "getDefaultRoute",
    value: function getDefaultRoute() {
      return this.defaultRoute;
    }
  }, {
    key: "removeTab",
    value: function removeTab(tab) {
      delete this.tabs[tab];
      this.unregisterRoute(tab);
    }
  }, {
    key: "hasTab",
    value: function hasTab(tab) {
      return !!this.tabs[tab];
    }
  }, {
    key: "addTab",
    value: function addTab(tab, args, position) {
      var _this3 = this;

      this.tabs[tab] = args; // It can be 0.

      if ('undefined' !== typeof position) {
        var newTabs = {};
        var ids = (0, _keys.default)(this.tabs); // Remove new tab

        ids.pop(); // Add it to position.

        ids.splice(position, 0, tab);
        ids.forEach(function (id) {
          newTabs[id] = _this3.tabs[id];
        });
        this.tabs = newTabs;
      }

      this.registerTabRoute(tab);
    }
  }, {
    key: "getTabsWrapperSelector",
    value: function getTabsWrapperSelector() {
      return '';
    }
  }, {
    key: "getTabRoute",
    value: function getTabRoute(tab) {
      return this.getNamespace() + '/' + tab;
    }
  }, {
    key: "renderTab",
    value: function renderTab(tab) {} // eslint-disable-line

  }, {
    key: "activateTab",
    value: function activateTab(tab, args) {
      var _this4 = this;

      this.currentTab = tab;
      this.renderTab(tab, args);
      jQuery(this.getTabsWrapperSelector() + ' .elementor-component-tab').off('click').on('click', function (event) {
        $e.route(_this4.getTabRoute(event.currentTarget.dataset.tab), args);
      }).removeClass('elementor-active').filter('[data-tab="' + tab + '"]').addClass('elementor-active');
    }
  }, {
    key: "getActiveTabConfig",
    value: function getActiveTabConfig() {
      return this.tabs[this.currentTab] || {};
    }
  }, {
    key: "getBodyClass",
    value: function getBodyClass(route) {
      return 'e-route-' + route.replace(/\//g, '-');
    }
    /**
     * If command includes uppercase character convert it to lowercase and add `-`.
     * e.g: `CopyAll` is converted to `copy-all`.
     */

  }, {
    key: "normalizeCommandName",
    value: function normalizeCommandName(commandName) {
      return commandName.replace(/[A-Z]/g, function (match, offset) {
        return (offset > 0 ? '-' : '') + match.toLowerCase();
      });
    }
  }, {
    key: "importCommands",
    value: function importCommands(commandsFromImport) {
      var _this5 = this;

      var commands = {}; // Convert `Commands` to `ComponentBase` workable format.

      (0, _entries.default)(commandsFromImport).forEach(function (_ref9) {
        var _ref10 = (0, _slicedToArray2.default)(_ref9, 2),
            className = _ref10[0],
            Class = _ref10[1];

        var command = _this5.normalizeCommandName(className);

        commands[command] = function (args) {
          return new Class(args).run();
        }; // TODO: Temporary code, remove after merge with 'require-commands-base' branch.
        // should not return callback, but Class or Instance without run ( gain performance ).


        $e.commands.classes[_this5.getNamespace() + '/' + command] = Class;
      });
      return commands;
    }
  }, {
    key: "importHooks",
    value: function importHooks(hooksFromImport) {
      var hooks = {};

      for (var key in hooksFromImport) {
        var hook = new hooksFromImport[key]();
        hooks[hook.getId()] = hook;
      }

      return hooks;
    }
    /**
     * Import & initialize the component's UI states.
     * Should be used inside `defaultUiState()`.
     *
     * @param {Object} statesFromImport - UI states from import.
     *
     * @return {Object}
     */

  }, {
    key: "importUiStates",
    value: function importUiStates(statesFromImport) {
      var _this6 = this;

      var uiStates = {};
      (0, _values.default)(statesFromImport).forEach(function (className) {
        var uiState = new className(_this6);
        uiStates[uiState.getId()] = uiState;
      });
      return uiStates;
    }
    /**
     * Set a UI state value.
     * TODO: Should we provide such function? Maybe the developer should implicitly pass the full state ID?
     *
     * @param state - Non-prefixed state ID.
     * @param value - New state value.
     *
     * @return {void}
     */

  }, {
    key: "setUiState",
    value: function setUiState(state, value) {
      $e.uiStates.set("".concat(this.getNamespace(), "/").concat(state), value);
    }
  }, {
    key: "toggleRouteClass",
    value: function toggleRouteClass(route, state) {
      elementorCommon.elements.$body.toggleClass(this.getBodyClass(route), state);
    }
  }, {
    key: "toggleHistoryClass",
    value: function toggleHistoryClass() {
      elementorCommon.elements.$body.toggleClass('e-routes-has-history', !!$e.routes.getHistory(this.getRootContainer()).length);
    }
  }]);
  return ComponentBase;
}(elementorModules.Module);

exports.default = ComponentBase;

/***/ }),

/***/ "../core/common/assets/js/api/modules/errors/base-error.js":
/*!*****************************************************************!*\
  !*** ../core/common/assets/js/api/modules/errors/base-error.js ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _wrapNativeSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/wrapNativeSuper */ "../node_modules/@babel/runtime-corejs2/helpers/wrapNativeSuper.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var BaseError = /*#__PURE__*/function (_Error) {
  (0, _inherits2.default)(BaseError, _Error);

  var _super = (0, _createSuper2.default)(BaseError);

  /**
   * Error constructor.
   *
   * @param code
   * @param message
   * @param data
   */
  function BaseError() {
    var _this;

    var message = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
    var code = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
    var data = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
    (0, _classCallCheck2.default)(this, BaseError);
    _this = _super.call(this, message);
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "code", '');
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "data", []);
    _this.code = code;
    _this.data = data;
    return _this;
  }
  /**
   * Notify a message when the error occurs.
   */


  (0, _createClass2.default)(BaseError, [{
    key: "notify",
    value: function notify() {
      elementorCommon.helpers.consoleError((0, _objectSpread2.default)({
        message: this.message
      }, this));
    }
  }], [{
    key: "create",
    value:
    /**
     * The server error code.
     *
     * @type {string}
     */

    /**
     * Additional data about the current error.
     *
     * @type {*[]}
     */

    /**
     * Static helper function to create the error.
     *
     * @param message
     * @param code
     * @param data
     * @returns {BaseError}
     */
    function create(message) {
      var code = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
      var data = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
      return new this(message, code, data);
    }
    /**
     * Returns the status code of the error.
     */

  }, {
    key: "getStatus",
    value: function getStatus() {
      elementorModules.ForceMethodImplementation();
    }
  }]);
  return BaseError;
}( /*#__PURE__*/(0, _wrapNativeSuper2.default)(Error));

exports.default = BaseError;

/***/ }),

/***/ "../core/common/assets/js/api/modules/errors/default-error.js":
/*!********************************************************************!*\
  !*** ../core/common/assets/js/api/modules/errors/default-error.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.DefaultError = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _baseError = _interopRequireDefault(__webpack_require__(/*! ./base-error */ "../core/common/assets/js/api/modules/errors/base-error.js"));

var DefaultError = /*#__PURE__*/function (_BaseError) {
  (0, _inherits2.default)(DefaultError, _BaseError);

  var _super = (0, _createSuper2.default)(DefaultError);

  function DefaultError() {
    (0, _classCallCheck2.default)(this, DefaultError);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(DefaultError, null, [{
    key: "getStatus",
    value: function getStatus() {
      return 0;
    }
  }]);
  return DefaultError;
}(_baseError.default);

exports.DefaultError = DefaultError;
var _default = DefaultError;
exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/api/modules/errors/index.js":
/*!************************************************************!*\
  !*** ../core/common/assets/js/api/modules/errors/index.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "NotFoundError", {
  enumerable: true,
  get: function get() {
    return _notFoundError.NotFoundError;
  }
});

_Object$defineProperty(exports, "DefaultError", {
  enumerable: true,
  get: function get() {
    return _defaultError.DefaultError;
  }
});

var _notFoundError = __webpack_require__(/*! ./not-found-error */ "../core/common/assets/js/api/modules/errors/not-found-error.js");

var _defaultError = __webpack_require__(/*! ./default-error */ "../core/common/assets/js/api/modules/errors/default-error.js");

/***/ }),

/***/ "../core/common/assets/js/api/modules/errors/not-found-error.js":
/*!**********************************************************************!*\
  !*** ../core/common/assets/js/api/modules/errors/not-found-error.js ***!
  \**********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.NotFoundError = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _baseError = _interopRequireDefault(__webpack_require__(/*! ./base-error */ "../core/common/assets/js/api/modules/errors/base-error.js"));

var NotFoundError = /*#__PURE__*/function (_BaseError) {
  (0, _inherits2.default)(NotFoundError, _BaseError);

  var _super = (0, _createSuper2.default)(NotFoundError);

  function NotFoundError() {
    (0, _classCallCheck2.default)(this, NotFoundError);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(NotFoundError, [{
    key: "notify",
    value: function notify() {
      elementorCommon.helpers.consoleWarn(this.message);
    }
  }], [{
    key: "getStatus",
    value: function getStatus() {
      return 404;
    }
  }]);
  return NotFoundError;
}(_baseError.default);

exports.NotFoundError = NotFoundError;
var _default = NotFoundError;
exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/api/modules/hook-base.js":
/*!*********************************************************!*\
  !*** ../core/common/assets/js/api/modules/hook-base.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var HookBase = /*#__PURE__*/function () {
  /**
   * Callback type, eg ( hook, event ).
   *
   * @type {string}
   */

  /**
   * Full command address, that will hook the callback.
   *
   * @type (string)
   */

  /**
   * Unique id of the callback.
   *
   * @type {string}
   */

  /**
   * Function constructor().
   *
   * Create callback base.
   */
  function HookBase() {
    (0, _classCallCheck2.default)(this, HookBase);
    (0, _defineProperty2.default)(this, "type", void 0);
    (0, _defineProperty2.default)(this, "command", void 0);
    (0, _defineProperty2.default)(this, "id", void 0);
    this.initialize();
    this.type = this.getType();
    this.command = this.getCommand();
    this.id = this.getId();
  }
  /**
   * Function initialize().
   *
   * Called after creation of the base, used for initialize extras.
   * Without expending constructor.
   */


  (0, _createClass2.default)(HookBase, [{
    key: "initialize",
    value: function initialize() {}
    /**
     * Function register().
     *
     * Used to register the callback.
     *
     * @throws {Error}
     */

  }, {
    key: "register",
    value: function register() {
      elementorModules.ForceMethodImplementation();
    }
    /**
     * Function getType().
     *
     * Get type eg: ( hook, event, etc ... ).
     *
     * @returns {string}
     *
     * @throws {Error}
     */

  }, {
    key: "getType",
    value: function getType() {
      elementorModules.ForceMethodImplementation();
    }
    /**
     * Function getCommand().
     *
     * Returns the full command path for callback binding.
     *
     * Supports array of strings ( commands ).
     *
     * @returns {string}
     *
     * @throws {Error}
     */

  }, {
    key: "getCommand",
    value: function getCommand() {
      elementorModules.ForceMethodImplementation();
    }
    /**
     * Function getId().
     *
     * Returns command id for the hook (should be unique).
     *
     * @returns {string}
     *
     * @throws {Error}
     */

  }, {
    key: "getId",
    value: function getId() {
      elementorModules.ForceMethodImplementation();
    }
    /**
     * Function getContainerType().
     *
     * Bind eContainer type to callback.
     *
     * Used to gain performance.
     *
     * @return {string} type
     */

  }, {
    key: "getContainerType",
    value: function getContainerType() {}
    /**
     * Function getConditions().
     *
     * Condition for running the callback, if true, call to apply().
     *
     * @param [args={}]
     * @param [result=*]
     *
     * @returns {boolean}
     */

  }, {
    key: "getConditions",
    value: function getConditions() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      var result = arguments.length > 1 ? arguments[1] : undefined;
      // eslint-disable-line no-unused-vars
      return true;
    }
    /**
     * Function apply().
     *
     * Apply the callback, ( The actual affect of the callback ).
     *
     * @param [args={}]
     *
     * @returns {*}
     */

  }, {
    key: "apply",
    value: function apply(args) {
      // eslint-disable-line no-unused-vars
      elementorModules.ForceMethodImplementation();
    }
    /**
     * Function run().
     *
     * Run the callback.
     *
     * @param {*} args
     *
     * @returns {*}
     */

  }, {
    key: "run",
    value: function run() {
      var _ref = arguments.length <= 0 ? undefined : arguments[0],
          _ref$options = _ref.options,
          options = _ref$options === void 0 ? {} : _ref$options; // Disable callback if requested by args.options.


      if (options.callbacks && false === options.callbacks[this.id]) {
        return true;
      }

      if (this.getConditions.apply(this, arguments)) {
        if ($e.devTools) {
          $e.devTools.log.callbacks().active(this.type, this.command, this.id);
        }

        return this.apply.apply(this, arguments);
      }

      return true;
    }
  }]);
  return HookBase;
}();

exports.default = HookBase;

/***/ }),

/***/ "../core/common/assets/js/api/modules/hooks/data/after.js":
/*!****************************************************************!*\
  !*** ../core/common/assets/js/api/modules/hooks/data/after.js ***!
  \****************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.After = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _base = _interopRequireDefault(__webpack_require__(/*! ./base */ "../core/common/assets/js/api/modules/hooks/data/base.js"));

var After = /*#__PURE__*/function (_Base) {
  (0, _inherits2.default)(After, _Base);

  var _super = (0, _createSuper2.default)(After);

  function After() {
    (0, _classCallCheck2.default)(this, After);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(After, [{
    key: "register",
    value: function register() {
      $e.hooks.registerDataAfter(this);
    }
  }]);
  return After;
}(_base.default);

exports.After = After;
var _default = After;
exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/api/modules/hooks/data/base.js":
/*!***************************************************************!*\
  !*** ../core/common/assets/js/api/modules/hooks/data/base.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Base = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _hookBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/hook-base */ "../core/common/assets/js/api/modules/hook-base.js"));

var Base = /*#__PURE__*/function (_HookBase) {
  (0, _inherits2.default)(Base, _HookBase);

  var _super = (0, _createSuper2.default)(Base);

  function Base() {
    (0, _classCallCheck2.default)(this, Base);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Base, [{
    key: "getType",
    value: function getType() {
      return 'data';
    }
  }]);
  return Base;
}(_hookBase.default);

exports.Base = Base;
var _default = Base;
exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/api/modules/hooks/data/dependency.js":
/*!*********************************************************************!*\
  !*** ../core/common/assets/js/api/modules/hooks/data/dependency.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Dependency = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _base = _interopRequireDefault(__webpack_require__(/*! ./base */ "../core/common/assets/js/api/modules/hooks/data/base.js"));

var Dependency = /*#__PURE__*/function (_Base) {
  (0, _inherits2.default)(Dependency, _Base);

  var _super = (0, _createSuper2.default)(Dependency);

  function Dependency() {
    (0, _classCallCheck2.default)(this, Dependency);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Dependency, [{
    key: "register",
    value: function register() {
      $e.hooks.registerDataDependency(this);
    }
  }]);
  return Dependency;
}(_base.default);

exports.Dependency = Dependency;
var _default = Dependency;
exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/api/modules/hooks/ui/after.js":
/*!**************************************************************!*\
  !*** ../core/common/assets/js/api/modules/hooks/ui/after.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.After = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _base = _interopRequireDefault(__webpack_require__(/*! ./base */ "../core/common/assets/js/api/modules/hooks/ui/base.js"));

var After = /*#__PURE__*/function (_Base) {
  (0, _inherits2.default)(After, _Base);

  var _super = (0, _createSuper2.default)(After);

  function After() {
    (0, _classCallCheck2.default)(this, After);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(After, [{
    key: "register",
    value: function register() {
      $e.hooks.registerUIAfter(this);
    }
  }]);
  return After;
}(_base.default);

exports.After = After;
var _default = After;
exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/api/modules/hooks/ui/base.js":
/*!*************************************************************!*\
  !*** ../core/common/assets/js/api/modules/hooks/ui/base.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Base = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _hookBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/hook-base */ "../core/common/assets/js/api/modules/hook-base.js"));

var Base = /*#__PURE__*/function (_HookBase) {
  (0, _inherits2.default)(Base, _HookBase);

  var _super = (0, _createSuper2.default)(Base);

  function Base() {
    (0, _classCallCheck2.default)(this, Base);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Base, [{
    key: "getType",
    value: function getType() {
      return 'ui';
    }
  }]);
  return Base;
}(_hookBase.default);

exports.Base = Base;
var _default = Base;
exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/api/modules/hooks/ui/before.js":
/*!***************************************************************!*\
  !*** ../core/common/assets/js/api/modules/hooks/ui/before.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Before = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _base = _interopRequireDefault(__webpack_require__(/*! ./base */ "../core/common/assets/js/api/modules/hooks/ui/base.js"));

var Before = /*#__PURE__*/function (_Base) {
  (0, _inherits2.default)(Before, _Base);

  var _super = (0, _createSuper2.default)(Before);

  function Before() {
    (0, _classCallCheck2.default)(this, Before);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Before, [{
    key: "register",
    value: function register() {
      $e.hooks.registerUIBefore(this);
    }
  }]);
  return Before;
}(_base.default);

exports.Before = Before;
var _default = Before;
exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/api/modules/hooks/ui/catch.js":
/*!**************************************************************!*\
  !*** ../core/common/assets/js/api/modules/hooks/ui/catch.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Catch = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _base = _interopRequireDefault(__webpack_require__(/*! ./base */ "../core/common/assets/js/api/modules/hooks/ui/base.js"));

var Catch = /*#__PURE__*/function (_Base) {
  (0, _inherits2.default)(Catch, _Base);

  var _super = (0, _createSuper2.default)(Catch);

  function Catch() {
    (0, _classCallCheck2.default)(this, Catch);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Catch, [{
    key: "register",
    value: function register() {
      $e.hooks.registerUICatch(this);
    }
  }]);
  return Catch;
}(_base.default);

exports.Catch = Catch;
var _default = Catch;
exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/utils/environment.js":
/*!*****************************************************!*\
  !*** ../core/common/assets/js/utils/environment.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");

__webpack_require__(/*! core-js/modules/es6.regexp.to-string.js */ "../node_modules/core-js/modules/es6.regexp.to-string.js");

var matchUserAgent = function matchUserAgent(UserAgentStr) {
  return userAgent.indexOf(UserAgentStr) >= 0;
},
    userAgent = navigator.userAgent,
    // Solution influenced by https://stackoverflow.com/questions/9847580/how-to-detect-safari-chrome-ie-firefox-and-opera-browser
// Opera 8.0+
isOpera = !!window.opr && !!opr.addons || !!window.opera || matchUserAgent(' OPR/'),
    // Firefox 1.0+
isFirefox = matchUserAgent('Firefox'),
    // Safari 3.0+ "[object HTMLElementConstructor]"
isSafari = /^((?!chrome|android).)*safari/i.test(userAgent) || /constructor/i.test(window.HTMLElement) || function (p) {
  return '[object SafariRemoteNotification]' === p.toString();
}(!window.safari || typeof safari !== 'undefined' && safari.pushNotification),
    // Internet Explorer 6-11
isIE = /Trident|MSIE/.test(userAgent) && (
/*@cc_on!@*/
 false || !!document.documentMode),
    // Edge 20+
isEdge = !isIE && !!window.StyleMedia || matchUserAgent('Edg'),
    // Google Chrome (Not accurate)
isChrome = !!window.chrome && matchUserAgent('Chrome') && !(isEdge || isOpera),
    // Blink engine
isBlink = matchUserAgent('Chrome') && !!window.CSS,
    // Apple Webkit engine
isAppleWebkit = matchUserAgent('AppleWebKit') && !isBlink,
    environment = {
  appleWebkit: isAppleWebkit,
  blink: isBlink,
  chrome: isChrome,
  edge: isEdge,
  firefox: isFirefox,
  ie: isIE,
  mac: matchUserAgent('Macintosh'),
  opera: isOpera,
  safari: isSafari,
  webkit: matchUserAgent('AppleWebKit')
};

var _default = environment;
exports.default = _default;

/***/ }),

/***/ "../node_modules/core-js/library/fn/array/from.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/fn/array/from.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.string.iterator */ "../node_modules/core-js/library/modules/es6.string.iterator.js");
__webpack_require__(/*! ../../modules/es6.array.from */ "../node_modules/core-js/library/modules/es6.array.from.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Array.from;


/***/ }),

/***/ "../node_modules/core-js/library/fn/array/is-array.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/fn/array/is-array.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.array.is-array */ "../node_modules/core-js/library/modules/es6.array.is-array.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Array.isArray;


/***/ }),

/***/ "../node_modules/core-js/library/fn/map.js":
/*!*************************************************!*\
  !*** ../node_modules/core-js/library/fn/map.js ***!
  \*************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../modules/es6.object.to-string */ "../node_modules/core-js/library/modules/es6.object.to-string.js");
__webpack_require__(/*! ../modules/es6.string.iterator */ "../node_modules/core-js/library/modules/es6.string.iterator.js");
__webpack_require__(/*! ../modules/web.dom.iterable */ "../node_modules/core-js/library/modules/web.dom.iterable.js");
__webpack_require__(/*! ../modules/es6.map */ "../node_modules/core-js/library/modules/es6.map.js");
__webpack_require__(/*! ../modules/es7.map.to-json */ "../node_modules/core-js/library/modules/es7.map.to-json.js");
__webpack_require__(/*! ../modules/es7.map.of */ "../node_modules/core-js/library/modules/es7.map.of.js");
__webpack_require__(/*! ../modules/es7.map.from */ "../node_modules/core-js/library/modules/es7.map.from.js");
module.exports = __webpack_require__(/*! ../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Map;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/assign.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/assign.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.assign */ "../node_modules/core-js/library/modules/es6.object.assign.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.assign;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/create.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/create.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.create */ "../node_modules/core-js/library/modules/es6.object.create.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function create(P, D) {
  return $Object.create(P, D);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/define-properties.js":
/*!**********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/define-properties.js ***!
  \**********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.define-properties */ "../node_modules/core-js/library/modules/es6.object.define-properties.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function defineProperties(T, D) {
  return $Object.defineProperties(T, D);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/define-property.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/define-property.js ***!
  \********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.define-property */ "../node_modules/core-js/library/modules/es6.object.define-property.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function defineProperty(it, key, desc) {
  return $Object.defineProperty(it, key, desc);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/entries.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/entries.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es7.object.entries */ "../node_modules/core-js/library/modules/es7.object.entries.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.entries;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/get-own-property-descriptor.js":
/*!********************************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/get-own-property-descriptor.js ***!
  \********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.get-own-property-descriptor */ "../node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function getOwnPropertyDescriptor(it, key) {
  return $Object.getOwnPropertyDescriptor(it, key);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/get-own-property-descriptors.js":
/*!*********************************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/get-own-property-descriptors.js ***!
  \*********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es7.object.get-own-property-descriptors */ "../node_modules/core-js/library/modules/es7.object.get-own-property-descriptors.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.getOwnPropertyDescriptors;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/get-own-property-symbols.js":
/*!*****************************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/get-own-property-symbols.js ***!
  \*****************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.symbol */ "../node_modules/core-js/library/modules/es6.symbol.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.getOwnPropertySymbols;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/get-prototype-of.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/get-prototype-of.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.get-prototype-of */ "../node_modules/core-js/library/modules/es6.object.get-prototype-of.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.getPrototypeOf;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/keys.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/keys.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.keys */ "../node_modules/core-js/library/modules/es6.object.keys.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.keys;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/set-prototype-of.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/set-prototype-of.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.set-prototype-of */ "../node_modules/core-js/library/modules/es6.object.set-prototype-of.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.setPrototypeOf;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/values.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/values.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es7.object.values */ "../node_modules/core-js/library/modules/es7.object.values.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.values;


/***/ }),

/***/ "../node_modules/core-js/library/fn/parse-int.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/fn/parse-int.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../modules/es6.parse-int */ "../node_modules/core-js/library/modules/es6.parse-int.js");
module.exports = __webpack_require__(/*! ../modules/_core */ "../node_modules/core-js/library/modules/_core.js").parseInt;


/***/ }),

/***/ "../node_modules/core-js/library/fn/promise.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/library/fn/promise.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../modules/es6.object.to-string */ "../node_modules/core-js/library/modules/es6.object.to-string.js");
__webpack_require__(/*! ../modules/es6.string.iterator */ "../node_modules/core-js/library/modules/es6.string.iterator.js");
__webpack_require__(/*! ../modules/web.dom.iterable */ "../node_modules/core-js/library/modules/web.dom.iterable.js");
__webpack_require__(/*! ../modules/es6.promise */ "../node_modules/core-js/library/modules/es6.promise.js");
__webpack_require__(/*! ../modules/es7.promise.finally */ "../node_modules/core-js/library/modules/es7.promise.finally.js");
__webpack_require__(/*! ../modules/es7.promise.try */ "../node_modules/core-js/library/modules/es7.promise.try.js");
module.exports = __webpack_require__(/*! ../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Promise;


/***/ }),

/***/ "../node_modules/core-js/library/fn/reflect/construct.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/fn/reflect/construct.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.reflect.construct */ "../node_modules/core-js/library/modules/es6.reflect.construct.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Reflect.construct;


/***/ }),

/***/ "../node_modules/core-js/library/fn/reflect/get.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/library/fn/reflect/get.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.reflect.get */ "../node_modules/core-js/library/modules/es6.reflect.get.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Reflect.get;


/***/ }),

/***/ "../node_modules/core-js/library/fn/symbol/has-instance.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/fn/symbol/has-instance.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.function.has-instance */ "../node_modules/core-js/library/modules/es6.function.has-instance.js");
module.exports = __webpack_require__(/*! ../../modules/_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js").f('hasInstance');


/***/ }),

/***/ "../node_modules/core-js/library/fn/symbol/index.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/fn/symbol/index.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.symbol */ "../node_modules/core-js/library/modules/es6.symbol.js");
__webpack_require__(/*! ../../modules/es6.object.to-string */ "../node_modules/core-js/library/modules/es6.object.to-string.js");
__webpack_require__(/*! ../../modules/es7.symbol.async-iterator */ "../node_modules/core-js/library/modules/es7.symbol.async-iterator.js");
__webpack_require__(/*! ../../modules/es7.symbol.observable */ "../node_modules/core-js/library/modules/es7.symbol.observable.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Symbol;


/***/ }),

/***/ "../node_modules/core-js/library/fn/symbol/iterator.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/fn/symbol/iterator.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.string.iterator */ "../node_modules/core-js/library/modules/es6.string.iterator.js");
__webpack_require__(/*! ../../modules/web.dom.iterable */ "../node_modules/core-js/library/modules/web.dom.iterable.js");
module.exports = __webpack_require__(/*! ../../modules/_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js").f('iterator');


/***/ }),

/***/ "../node_modules/core-js/library/fn/weak-map.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/library/fn/weak-map.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../modules/es6.object.to-string */ "../node_modules/core-js/library/modules/es6.object.to-string.js");
__webpack_require__(/*! ../modules/web.dom.iterable */ "../node_modules/core-js/library/modules/web.dom.iterable.js");
__webpack_require__(/*! ../modules/es6.weak-map */ "../node_modules/core-js/library/modules/es6.weak-map.js");
__webpack_require__(/*! ../modules/es7.weak-map.of */ "../node_modules/core-js/library/modules/es7.weak-map.of.js");
__webpack_require__(/*! ../modules/es7.weak-map.from */ "../node_modules/core-js/library/modules/es7.weak-map.from.js");
module.exports = __webpack_require__(/*! ../modules/_core */ "../node_modules/core-js/library/modules/_core.js").WeakMap;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_a-function.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_a-function.js ***!
  \**************************************************************/
/***/ ((module) => {

module.exports = function (it) {
  if (typeof it != 'function') throw TypeError(it + ' is not a function!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_add-to-unscopables.js":
/*!**********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_add-to-unscopables.js ***!
  \**********************************************************************/
/***/ ((module) => {

module.exports = function () { /* empty */ };


/***/ }),

/***/ "../node_modules/core-js/library/modules/_an-instance.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_an-instance.js ***!
  \***************************************************************/
/***/ ((module) => {

module.exports = function (it, Constructor, name, forbiddenField) {
  if (!(it instanceof Constructor) || (forbiddenField !== undefined && forbiddenField in it)) {
    throw TypeError(name + ': incorrect invocation!');
  } return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_an-object.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_an-object.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
module.exports = function (it) {
  if (!isObject(it)) throw TypeError(it + ' is not an object!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-from-iterable.js":
/*!***********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-from-iterable.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");

module.exports = function (iter, ITERATOR) {
  var result = [];
  forOf(iter, false, result.push, result, ITERATOR);
  return result;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-includes.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-includes.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// false -> Array#indexOf
// true  -> Array#includes
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
var toAbsoluteIndex = __webpack_require__(/*! ./_to-absolute-index */ "../node_modules/core-js/library/modules/_to-absolute-index.js");
module.exports = function (IS_INCLUDES) {
  return function ($this, el, fromIndex) {
    var O = toIObject($this);
    var length = toLength(O.length);
    var index = toAbsoluteIndex(fromIndex, length);
    var value;
    // Array#includes uses SameValueZero equality algorithm
    // eslint-disable-next-line no-self-compare
    if (IS_INCLUDES && el != el) while (length > index) {
      value = O[index++];
      // eslint-disable-next-line no-self-compare
      if (value != value) return true;
    // Array#indexOf ignores holes, Array#includes - not
    } else for (;length > index; index++) if (IS_INCLUDES || index in O) {
      if (O[index] === el) return IS_INCLUDES || index || 0;
    } return !IS_INCLUDES && -1;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-methods.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-methods.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 0 -> Array#forEach
// 1 -> Array#map
// 2 -> Array#filter
// 3 -> Array#some
// 4 -> Array#every
// 5 -> Array#find
// 6 -> Array#findIndex
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/library/modules/_iobject.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
var asc = __webpack_require__(/*! ./_array-species-create */ "../node_modules/core-js/library/modules/_array-species-create.js");
module.exports = function (TYPE, $create) {
  var IS_MAP = TYPE == 1;
  var IS_FILTER = TYPE == 2;
  var IS_SOME = TYPE == 3;
  var IS_EVERY = TYPE == 4;
  var IS_FIND_INDEX = TYPE == 6;
  var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
  var create = $create || asc;
  return function ($this, callbackfn, that) {
    var O = toObject($this);
    var self = IObject(O);
    var f = ctx(callbackfn, that, 3);
    var length = toLength(self.length);
    var index = 0;
    var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;
    var val, res;
    for (;length > index; index++) if (NO_HOLES || index in self) {
      val = self[index];
      res = f(val, index, O);
      if (TYPE) {
        if (IS_MAP) result[index] = res;   // map
        else if (res) switch (TYPE) {
          case 3: return true;             // some
          case 5: return val;              // find
          case 6: return index;            // findIndex
          case 2: result.push(val);        // filter
        } else if (IS_EVERY) return false; // every
      }
    }
    return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-species-constructor.js":
/*!*****************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-species-constructor.js ***!
  \*****************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var isArray = __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/library/modules/_is-array.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('species');

module.exports = function (original) {
  var C;
  if (isArray(original)) {
    C = original.constructor;
    // cross-realm fallback
    if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
    if (isObject(C)) {
      C = C[SPECIES];
      if (C === null) C = undefined;
    }
  } return C === undefined ? Array : C;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-species-create.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-species-create.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 9.4.2.3 ArraySpeciesCreate(originalArray, length)
var speciesConstructor = __webpack_require__(/*! ./_array-species-constructor */ "../node_modules/core-js/library/modules/_array-species-constructor.js");

module.exports = function (original, length) {
  return new (speciesConstructor(original))(length);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_bind.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_bind.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var invoke = __webpack_require__(/*! ./_invoke */ "../node_modules/core-js/library/modules/_invoke.js");
var arraySlice = [].slice;
var factories = {};

var construct = function (F, len, args) {
  if (!(len in factories)) {
    for (var n = [], i = 0; i < len; i++) n[i] = 'a[' + i + ']';
    // eslint-disable-next-line no-new-func
    factories[len] = Function('F,a', 'return new F(' + n.join(',') + ')');
  } return factories[len](F, args);
};

module.exports = Function.bind || function bind(that /* , ...args */) {
  var fn = aFunction(this);
  var partArgs = arraySlice.call(arguments, 1);
  var bound = function (/* args... */) {
    var args = partArgs.concat(arraySlice.call(arguments));
    return this instanceof bound ? construct(fn, args.length, args) : invoke(fn, args, that);
  };
  if (isObject(fn.prototype)) bound.prototype = fn.prototype;
  return bound;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_classof.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_classof.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// getting tag from 19.1.3.6 Object.prototype.toString()
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('toStringTag');
// ES3 wrong here
var ARG = cof(function () { return arguments; }()) == 'Arguments';

// fallback for IE11 Script Access Denied error
var tryGet = function (it, key) {
  try {
    return it[key];
  } catch (e) { /* empty */ }
};

module.exports = function (it) {
  var O, T, B;
  return it === undefined ? 'Undefined' : it === null ? 'Null'
    // @@toStringTag case
    : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T
    // builtinTag case
    : ARG ? cof(O)
    // ES3 arguments fallback
    : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_cof.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_cof.js ***!
  \*******************************************************/
/***/ ((module) => {

var toString = {}.toString;

module.exports = function (it) {
  return toString.call(it).slice(8, -1);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_collection-strong.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_collection-strong.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
var create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
var redefineAll = __webpack_require__(/*! ./_redefine-all */ "../node_modules/core-js/library/modules/_redefine-all.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var anInstance = __webpack_require__(/*! ./_an-instance */ "../node_modules/core-js/library/modules/_an-instance.js");
var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");
var $iterDefine = __webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/library/modules/_iter-define.js");
var step = __webpack_require__(/*! ./_iter-step */ "../node_modules/core-js/library/modules/_iter-step.js");
var setSpecies = __webpack_require__(/*! ./_set-species */ "../node_modules/core-js/library/modules/_set-species.js");
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var fastKey = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js").fastKey;
var validate = __webpack_require__(/*! ./_validate-collection */ "../node_modules/core-js/library/modules/_validate-collection.js");
var SIZE = DESCRIPTORS ? '_s' : 'size';

var getEntry = function (that, key) {
  // fast case
  var index = fastKey(key);
  var entry;
  if (index !== 'F') return that._i[index];
  // frozen object case
  for (entry = that._f; entry; entry = entry.n) {
    if (entry.k == key) return entry;
  }
};

module.exports = {
  getConstructor: function (wrapper, NAME, IS_MAP, ADDER) {
    var C = wrapper(function (that, iterable) {
      anInstance(that, C, NAME, '_i');
      that._t = NAME;         // collection type
      that._i = create(null); // index
      that._f = undefined;    // first entry
      that._l = undefined;    // last entry
      that[SIZE] = 0;         // size
      if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);
    });
    redefineAll(C.prototype, {
      // 23.1.3.1 Map.prototype.clear()
      // 23.2.3.2 Set.prototype.clear()
      clear: function clear() {
        for (var that = validate(this, NAME), data = that._i, entry = that._f; entry; entry = entry.n) {
          entry.r = true;
          if (entry.p) entry.p = entry.p.n = undefined;
          delete data[entry.i];
        }
        that._f = that._l = undefined;
        that[SIZE] = 0;
      },
      // 23.1.3.3 Map.prototype.delete(key)
      // 23.2.3.4 Set.prototype.delete(value)
      'delete': function (key) {
        var that = validate(this, NAME);
        var entry = getEntry(that, key);
        if (entry) {
          var next = entry.n;
          var prev = entry.p;
          delete that._i[entry.i];
          entry.r = true;
          if (prev) prev.n = next;
          if (next) next.p = prev;
          if (that._f == entry) that._f = next;
          if (that._l == entry) that._l = prev;
          that[SIZE]--;
        } return !!entry;
      },
      // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined)
      // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined)
      forEach: function forEach(callbackfn /* , that = undefined */) {
        validate(this, NAME);
        var f = ctx(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3);
        var entry;
        while (entry = entry ? entry.n : this._f) {
          f(entry.v, entry.k, this);
          // revert to the last existing entry
          while (entry && entry.r) entry = entry.p;
        }
      },
      // 23.1.3.7 Map.prototype.has(key)
      // 23.2.3.7 Set.prototype.has(value)
      has: function has(key) {
        return !!getEntry(validate(this, NAME), key);
      }
    });
    if (DESCRIPTORS) dP(C.prototype, 'size', {
      get: function () {
        return validate(this, NAME)[SIZE];
      }
    });
    return C;
  },
  def: function (that, key, value) {
    var entry = getEntry(that, key);
    var prev, index;
    // change existing entry
    if (entry) {
      entry.v = value;
    // create new entry
    } else {
      that._l = entry = {
        i: index = fastKey(key, true), // <- index
        k: key,                        // <- key
        v: value,                      // <- value
        p: prev = that._l,             // <- previous entry
        n: undefined,                  // <- next entry
        r: false                       // <- removed
      };
      if (!that._f) that._f = entry;
      if (prev) prev.n = entry;
      that[SIZE]++;
      // add to index
      if (index !== 'F') that._i[index] = entry;
    } return that;
  },
  getEntry: getEntry,
  setStrong: function (C, NAME, IS_MAP) {
    // add .keys, .values, .entries, [@@iterator]
    // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11
    $iterDefine(C, NAME, function (iterated, kind) {
      this._t = validate(iterated, NAME); // target
      this._k = kind;                     // kind
      this._l = undefined;                // previous
    }, function () {
      var that = this;
      var kind = that._k;
      var entry = that._l;
      // revert to the last existing entry
      while (entry && entry.r) entry = entry.p;
      // get next entry
      if (!that._t || !(that._l = entry = entry ? entry.n : that._t._f)) {
        // or finish the iteration
        that._t = undefined;
        return step(1);
      }
      // return step by kind
      if (kind == 'keys') return step(0, entry.k);
      if (kind == 'values') return step(0, entry.v);
      return step(0, [entry.k, entry.v]);
    }, IS_MAP ? 'entries' : 'values', !IS_MAP, true);

    // add [@@species], 23.1.2.2, 23.2.2.2
    setSpecies(NAME);
  }
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_collection-to-json.js":
/*!**********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_collection-to-json.js ***!
  \**********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// https://github.com/DavidBruant/Map-Set.prototype.toJSON
var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/library/modules/_classof.js");
var from = __webpack_require__(/*! ./_array-from-iterable */ "../node_modules/core-js/library/modules/_array-from-iterable.js");
module.exports = function (NAME) {
  return function toJSON() {
    if (classof(this) != NAME) throw TypeError(NAME + "#toJSON isn't generic");
    return from(this);
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_collection-weak.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_collection-weak.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var redefineAll = __webpack_require__(/*! ./_redefine-all */ "../node_modules/core-js/library/modules/_redefine-all.js");
var getWeak = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js").getWeak;
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var anInstance = __webpack_require__(/*! ./_an-instance */ "../node_modules/core-js/library/modules/_an-instance.js");
var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");
var createArrayMethod = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/library/modules/_array-methods.js");
var $has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var validate = __webpack_require__(/*! ./_validate-collection */ "../node_modules/core-js/library/modules/_validate-collection.js");
var arrayFind = createArrayMethod(5);
var arrayFindIndex = createArrayMethod(6);
var id = 0;

// fallback for uncaught frozen keys
var uncaughtFrozenStore = function (that) {
  return that._l || (that._l = new UncaughtFrozenStore());
};
var UncaughtFrozenStore = function () {
  this.a = [];
};
var findUncaughtFrozen = function (store, key) {
  return arrayFind(store.a, function (it) {
    return it[0] === key;
  });
};
UncaughtFrozenStore.prototype = {
  get: function (key) {
    var entry = findUncaughtFrozen(this, key);
    if (entry) return entry[1];
  },
  has: function (key) {
    return !!findUncaughtFrozen(this, key);
  },
  set: function (key, value) {
    var entry = findUncaughtFrozen(this, key);
    if (entry) entry[1] = value;
    else this.a.push([key, value]);
  },
  'delete': function (key) {
    var index = arrayFindIndex(this.a, function (it) {
      return it[0] === key;
    });
    if (~index) this.a.splice(index, 1);
    return !!~index;
  }
};

module.exports = {
  getConstructor: function (wrapper, NAME, IS_MAP, ADDER) {
    var C = wrapper(function (that, iterable) {
      anInstance(that, C, NAME, '_i');
      that._t = NAME;      // collection type
      that._i = id++;      // collection id
      that._l = undefined; // leak store for uncaught frozen objects
      if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);
    });
    redefineAll(C.prototype, {
      // 23.3.3.2 WeakMap.prototype.delete(key)
      // 23.4.3.3 WeakSet.prototype.delete(value)
      'delete': function (key) {
        if (!isObject(key)) return false;
        var data = getWeak(key);
        if (data === true) return uncaughtFrozenStore(validate(this, NAME))['delete'](key);
        return data && $has(data, this._i) && delete data[this._i];
      },
      // 23.3.3.4 WeakMap.prototype.has(key)
      // 23.4.3.4 WeakSet.prototype.has(value)
      has: function has(key) {
        if (!isObject(key)) return false;
        var data = getWeak(key);
        if (data === true) return uncaughtFrozenStore(validate(this, NAME)).has(key);
        return data && $has(data, this._i);
      }
    });
    return C;
  },
  def: function (that, key, value) {
    var data = getWeak(anObject(key), true);
    if (data === true) uncaughtFrozenStore(that).set(key, value);
    else data[that._i] = value;
    return that;
  },
  ufstore: uncaughtFrozenStore
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_collection.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_collection.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var meta = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var redefineAll = __webpack_require__(/*! ./_redefine-all */ "../node_modules/core-js/library/modules/_redefine-all.js");
var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");
var anInstance = __webpack_require__(/*! ./_an-instance */ "../node_modules/core-js/library/modules/_an-instance.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
var each = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/library/modules/_array-methods.js")(0);
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");

module.exports = function (NAME, wrapper, methods, common, IS_MAP, IS_WEAK) {
  var Base = global[NAME];
  var C = Base;
  var ADDER = IS_MAP ? 'set' : 'add';
  var proto = C && C.prototype;
  var O = {};
  if (!DESCRIPTORS || typeof C != 'function' || !(IS_WEAK || proto.forEach && !fails(function () {
    new C().entries().next();
  }))) {
    // create collection constructor
    C = common.getConstructor(wrapper, NAME, IS_MAP, ADDER);
    redefineAll(C.prototype, methods);
    meta.NEED = true;
  } else {
    C = wrapper(function (target, iterable) {
      anInstance(target, C, NAME, '_c');
      target._c = new Base();
      if (iterable != undefined) forOf(iterable, IS_MAP, target[ADDER], target);
    });
    each('add,clear,delete,forEach,get,has,set,keys,values,entries,toJSON'.split(','), function (KEY) {
      var IS_ADDER = KEY == 'add' || KEY == 'set';
      if (KEY in proto && !(IS_WEAK && KEY == 'clear')) hide(C.prototype, KEY, function (a, b) {
        anInstance(this, C, KEY);
        if (!IS_ADDER && IS_WEAK && !isObject(a)) return KEY == 'get' ? undefined : false;
        var result = this._c[KEY](a === 0 ? 0 : a, b);
        return IS_ADDER ? this : result;
      });
    });
    IS_WEAK || dP(C.prototype, 'size', {
      get: function () {
        return this._c.size;
      }
    });
  }

  setToStringTag(C, NAME);

  O[NAME] = C;
  $export($export.G + $export.W + $export.F, O);

  if (!IS_WEAK) common.setStrong(C, NAME, IS_MAP);

  return C;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_core.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_core.js ***!
  \********************************************************/
/***/ ((module) => {

var core = module.exports = { version: '2.6.12' };
if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/library/modules/_create-property.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_create-property.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $defineProperty = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");

module.exports = function (object, index, value) {
  if (index in object) $defineProperty.f(object, index, createDesc(0, value));
  else object[index] = value;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_ctx.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_ctx.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// optional / simple context binding
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
module.exports = function (fn, that, length) {
  aFunction(fn);
  if (that === undefined) return fn;
  switch (length) {
    case 1: return function (a) {
      return fn.call(that, a);
    };
    case 2: return function (a, b) {
      return fn.call(that, a, b);
    };
    case 3: return function (a, b, c) {
      return fn.call(that, a, b, c);
    };
  }
  return function (/* ...args */) {
    return fn.apply(that, arguments);
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_defined.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_defined.js ***!
  \***********************************************************/
/***/ ((module) => {

// 7.2.1 RequireObjectCoercible(argument)
module.exports = function (it) {
  if (it == undefined) throw TypeError("Can't call method on  " + it);
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_descriptors.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_descriptors.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Thank's IE8 for his funny defineProperty
module.exports = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/_dom-create.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_dom-create.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").document;
// typeof document.createElement is 'object' in old IE
var is = isObject(document) && isObject(document.createElement);
module.exports = function (it) {
  return is ? document.createElement(it) : {};
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_enum-bug-keys.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_enum-bug-keys.js ***!
  \*****************************************************************/
/***/ ((module) => {

// IE 8- don't enum bug keys
module.exports = (
  'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
).split(',');


/***/ }),

/***/ "../node_modules/core-js/library/modules/_enum-keys.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_enum-keys.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// all enumerable object keys, includes symbols
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var gOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js");
module.exports = function (it) {
  var result = getKeys(it);
  var getSymbols = gOPS.f;
  if (getSymbols) {
    var symbols = getSymbols(it);
    var isEnum = pIE.f;
    var i = 0;
    var key;
    while (symbols.length > i) if (isEnum.call(it, key = symbols[i++])) result.push(key);
  } return result;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_export.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_export.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var PROTOTYPE = 'prototype';

var $export = function (type, name, source) {
  var IS_FORCED = type & $export.F;
  var IS_GLOBAL = type & $export.G;
  var IS_STATIC = type & $export.S;
  var IS_PROTO = type & $export.P;
  var IS_BIND = type & $export.B;
  var IS_WRAP = type & $export.W;
  var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
  var expProto = exports[PROTOTYPE];
  var target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE];
  var key, own, out;
  if (IS_GLOBAL) source = name;
  for (key in source) {
    // contains in native
    own = !IS_FORCED && target && target[key] !== undefined;
    if (own && has(exports, key)) continue;
    // export native or passed
    out = own ? target[key] : source[key];
    // prevent global pollution for namespaces
    exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key]
    // bind timers to global for call from export context
    : IS_BIND && own ? ctx(out, global)
    // wrap global constructors for prevent change them in library
    : IS_WRAP && target[key] == out ? (function (C) {
      var F = function (a, b, c) {
        if (this instanceof C) {
          switch (arguments.length) {
            case 0: return new C();
            case 1: return new C(a);
            case 2: return new C(a, b);
          } return new C(a, b, c);
        } return C.apply(this, arguments);
      };
      F[PROTOTYPE] = C[PROTOTYPE];
      return F;
    // make static versions for prototype methods
    })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
    // export proto methods to core.%CONSTRUCTOR%.methods.%NAME%
    if (IS_PROTO) {
      (exports.virtual || (exports.virtual = {}))[key] = out;
      // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME%
      if (type & $export.R && expProto && !expProto[key]) hide(expProto, key, out);
    }
  }
};
// type bitmap
$export.F = 1;   // forced
$export.G = 2;   // global
$export.S = 4;   // static
$export.P = 8;   // proto
$export.B = 16;  // bind
$export.W = 32;  // wrap
$export.U = 64;  // safe
$export.R = 128; // real proto method for `library`
module.exports = $export;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_fails.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_fails.js ***!
  \*********************************************************/
/***/ ((module) => {

module.exports = function (exec) {
  try {
    return !!exec();
  } catch (e) {
    return true;
  }
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_for-of.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_for-of.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var call = __webpack_require__(/*! ./_iter-call */ "../node_modules/core-js/library/modules/_iter-call.js");
var isArrayIter = __webpack_require__(/*! ./_is-array-iter */ "../node_modules/core-js/library/modules/_is-array-iter.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
var getIterFn = __webpack_require__(/*! ./core.get-iterator-method */ "../node_modules/core-js/library/modules/core.get-iterator-method.js");
var BREAK = {};
var RETURN = {};
var exports = module.exports = function (iterable, entries, fn, that, ITERATOR) {
  var iterFn = ITERATOR ? function () { return iterable; } : getIterFn(iterable);
  var f = ctx(fn, that, entries ? 2 : 1);
  var index = 0;
  var length, step, iterator, result;
  if (typeof iterFn != 'function') throw TypeError(iterable + ' is not iterable!');
  // fast case for arrays with default iterator
  if (isArrayIter(iterFn)) for (length = toLength(iterable.length); length > index; index++) {
    result = entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]);
    if (result === BREAK || result === RETURN) return result;
  } else for (iterator = iterFn.call(iterable); !(step = iterator.next()).done;) {
    result = call(iterator, f, step.value, entries);
    if (result === BREAK || result === RETURN) return result;
  }
};
exports.BREAK = BREAK;
exports.RETURN = RETURN;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_global.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_global.js ***!
  \**********************************************************/
/***/ ((module) => {

// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
var global = module.exports = typeof window != 'undefined' && window.Math == Math
  ? window : typeof self != 'undefined' && self.Math == Math ? self
  // eslint-disable-next-line no-new-func
  : Function('return this')();
if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/library/modules/_has.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_has.js ***!
  \*******************************************************/
/***/ ((module) => {

var hasOwnProperty = {}.hasOwnProperty;
module.exports = function (it, key) {
  return hasOwnProperty.call(it, key);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_hide.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_hide.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? function (object, key, value) {
  return dP.f(object, key, createDesc(1, value));
} : function (object, key, value) {
  object[key] = value;
  return object;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_html.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_html.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").document;
module.exports = document && document.documentElement;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_ie8-dom-define.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_ie8-dom-define.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") && !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  return Object.defineProperty(__webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/library/modules/_dom-create.js")('div'), 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/_invoke.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_invoke.js ***!
  \**********************************************************/
/***/ ((module) => {

// fast apply, http://jsperf.lnkit.com/fast-apply/5
module.exports = function (fn, args, that) {
  var un = that === undefined;
  switch (args.length) {
    case 0: return un ? fn()
                      : fn.call(that);
    case 1: return un ? fn(args[0])
                      : fn.call(that, args[0]);
    case 2: return un ? fn(args[0], args[1])
                      : fn.call(that, args[0], args[1]);
    case 3: return un ? fn(args[0], args[1], args[2])
                      : fn.call(that, args[0], args[1], args[2]);
    case 4: return un ? fn(args[0], args[1], args[2], args[3])
                      : fn.call(that, args[0], args[1], args[2], args[3]);
  } return fn.apply(that, args);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iobject.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iobject.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// fallback for non-array-like ES3 and non-enumerable old V8 strings
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js");
// eslint-disable-next-line no-prototype-builtins
module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
  return cof(it) == 'String' ? it.split('') : Object(it);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_is-array-iter.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_is-array-iter.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// check on default Array iterator
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var ArrayProto = Array.prototype;

module.exports = function (it) {
  return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_is-array.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_is-array.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.2.2 IsArray(argument)
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js");
module.exports = Array.isArray || function isArray(arg) {
  return cof(arg) == 'Array';
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_is-object.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_is-object.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = function (it) {
  return typeof it === 'object' ? it !== null : typeof it === 'function';
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-call.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-call.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// call something on iterator step with safe closing on error
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
module.exports = function (iterator, fn, value, entries) {
  try {
    return entries ? fn(anObject(value)[0], value[1]) : fn(value);
  // 7.4.6 IteratorClose(iterator, completion)
  } catch (e) {
    var ret = iterator['return'];
    if (ret !== undefined) anObject(ret.call(iterator));
    throw e;
  }
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-create.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-create.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
var descriptor = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var IteratorPrototype = {};

// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
__webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js")(IteratorPrototype, __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator'), function () { return this; });

module.exports = function (Constructor, NAME, next) {
  Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });
  setToStringTag(Constructor, NAME + ' Iterator');
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-define.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-define.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/library/modules/_redefine.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var $iterCreate = __webpack_require__(/*! ./_iter-create */ "../node_modules/core-js/library/modules/_iter-create.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`
var FF_ITERATOR = '@@iterator';
var KEYS = 'keys';
var VALUES = 'values';

var returnThis = function () { return this; };

module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {
  $iterCreate(Constructor, NAME, next);
  var getMethod = function (kind) {
    if (!BUGGY && kind in proto) return proto[kind];
    switch (kind) {
      case KEYS: return function keys() { return new Constructor(this, kind); };
      case VALUES: return function values() { return new Constructor(this, kind); };
    } return function entries() { return new Constructor(this, kind); };
  };
  var TAG = NAME + ' Iterator';
  var DEF_VALUES = DEFAULT == VALUES;
  var VALUES_BUG = false;
  var proto = Base.prototype;
  var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];
  var $default = $native || getMethod(DEFAULT);
  var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;
  var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;
  var methods, key, IteratorPrototype;
  // Fix native
  if ($anyNative) {
    IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));
    if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {
      // Set @@toStringTag to native iterators
      setToStringTag(IteratorPrototype, TAG, true);
      // fix for some old engines
      if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);
    }
  }
  // fix Array#{values, @@iterator}.name in V8 / FF
  if (DEF_VALUES && $native && $native.name !== VALUES) {
    VALUES_BUG = true;
    $default = function values() { return $native.call(this); };
  }
  // Define iterator
  if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {
    hide(proto, ITERATOR, $default);
  }
  // Plug for library
  Iterators[NAME] = $default;
  Iterators[TAG] = returnThis;
  if (DEFAULT) {
    methods = {
      values: DEF_VALUES ? $default : getMethod(VALUES),
      keys: IS_SET ? $default : getMethod(KEYS),
      entries: $entries
    };
    if (FORCED) for (key in methods) {
      if (!(key in proto)) redefine(proto, key, methods[key]);
    } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
  }
  return methods;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-detect.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-detect.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var SAFE_CLOSING = false;

try {
  var riter = [7][ITERATOR]();
  riter['return'] = function () { SAFE_CLOSING = true; };
  // eslint-disable-next-line no-throw-literal
  Array.from(riter, function () { throw 2; });
} catch (e) { /* empty */ }

module.exports = function (exec, skipClosing) {
  if (!skipClosing && !SAFE_CLOSING) return false;
  var safe = false;
  try {
    var arr = [7];
    var iter = arr[ITERATOR]();
    iter.next = function () { return { done: safe = true }; };
    arr[ITERATOR] = function () { return iter; };
    exec(arr);
  } catch (e) { /* empty */ }
  return safe;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-step.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-step.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = function (done, value) {
  return { value: value, done: !!done };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iterators.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iterators.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = {};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_library.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_library.js ***!
  \***********************************************************/
/***/ ((module) => {

module.exports = true;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_meta.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_meta.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var META = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js")('meta');
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var setDesc = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
var id = 0;
var isExtensible = Object.isExtensible || function () {
  return true;
};
var FREEZE = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  return isExtensible(Object.preventExtensions({}));
});
var setMeta = function (it) {
  setDesc(it, META, { value: {
    i: 'O' + ++id, // object ID
    w: {}          // weak collections IDs
  } });
};
var fastKey = function (it, create) {
  // return primitive with prefix
  if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;
  if (!has(it, META)) {
    // can't set metadata to uncaught frozen object
    if (!isExtensible(it)) return 'F';
    // not necessary to add metadata
    if (!create) return 'E';
    // add missing metadata
    setMeta(it);
  // return object ID
  } return it[META].i;
};
var getWeak = function (it, create) {
  if (!has(it, META)) {
    // can't set metadata to uncaught frozen object
    if (!isExtensible(it)) return true;
    // not necessary to add metadata
    if (!create) return false;
    // add missing metadata
    setMeta(it);
  // return hash weak collections IDs
  } return it[META].w;
};
// add metadata on freeze-family methods calling
var onFreeze = function (it) {
  if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it);
  return it;
};
var meta = module.exports = {
  KEY: META,
  NEED: false,
  fastKey: fastKey,
  getWeak: getWeak,
  onFreeze: onFreeze
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_microtask.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_microtask.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var macrotask = __webpack_require__(/*! ./_task */ "../node_modules/core-js/library/modules/_task.js").set;
var Observer = global.MutationObserver || global.WebKitMutationObserver;
var process = global.process;
var Promise = global.Promise;
var isNode = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js")(process) == 'process';

module.exports = function () {
  var head, last, notify;

  var flush = function () {
    var parent, fn;
    if (isNode && (parent = process.domain)) parent.exit();
    while (head) {
      fn = head.fn;
      head = head.next;
      try {
        fn();
      } catch (e) {
        if (head) notify();
        else last = undefined;
        throw e;
      }
    } last = undefined;
    if (parent) parent.enter();
  };

  // Node.js
  if (isNode) {
    notify = function () {
      process.nextTick(flush);
    };
  // browsers with MutationObserver, except iOS Safari - https://github.com/zloirock/core-js/issues/339
  } else if (Observer && !(global.navigator && global.navigator.standalone)) {
    var toggle = true;
    var node = document.createTextNode('');
    new Observer(flush).observe(node, { characterData: true }); // eslint-disable-line no-new
    notify = function () {
      node.data = toggle = !toggle;
    };
  // environments with maybe non-completely correct, but existent Promise
  } else if (Promise && Promise.resolve) {
    // Promise.resolve without an argument throws an error in LG WebOS 2
    var promise = Promise.resolve(undefined);
    notify = function () {
      promise.then(flush);
    };
  // for other environments - macrotask based on:
  // - setImmediate
  // - MessageChannel
  // - window.postMessag
  // - onreadystatechange
  // - setTimeout
  } else {
    notify = function () {
      // strange IE + webpack dev server bug - use .call(global)
      macrotask.call(global, flush);
    };
  }

  return function (fn) {
    var task = { fn: fn, next: undefined };
    if (last) last.next = task;
    if (!head) {
      head = task;
      notify();
    } last = task;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_new-promise-capability.js":
/*!**************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_new-promise-capability.js ***!
  \**************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 25.4.1.5 NewPromiseCapability(C)
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");

function PromiseCapability(C) {
  var resolve, reject;
  this.promise = new C(function ($$resolve, $$reject) {
    if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor');
    resolve = $$resolve;
    reject = $$reject;
  });
  this.resolve = aFunction(resolve);
  this.reject = aFunction(reject);
}

module.exports.f = function (C) {
  return new PromiseCapability(C);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-assign.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-assign.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 19.1.2.1 Object.assign(target, source, ...)
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var gOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/library/modules/_iobject.js");
var $assign = Object.assign;

// should work with symbols and should have deterministic property order (V8 bug)
module.exports = !$assign || __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  var A = {};
  var B = {};
  // eslint-disable-next-line no-undef
  var S = Symbol();
  var K = 'abcdefghijklmnopqrst';
  A[S] = 7;
  K.split('').forEach(function (k) { B[k] = k; });
  return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join('') != K;
}) ? function assign(target, source) { // eslint-disable-line no-unused-vars
  var T = toObject(target);
  var aLen = arguments.length;
  var index = 1;
  var getSymbols = gOPS.f;
  var isEnum = pIE.f;
  while (aLen > index) {
    var S = IObject(arguments[index++]);
    var keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S);
    var length = keys.length;
    var j = 0;
    var key;
    while (length > j) {
      key = keys[j++];
      if (!DESCRIPTORS || isEnum.call(S, key)) T[key] = S[key];
    }
  } return T;
} : $assign;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-create.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-create.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var dPs = __webpack_require__(/*! ./_object-dps */ "../node_modules/core-js/library/modules/_object-dps.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');
var Empty = function () { /* empty */ };
var PROTOTYPE = 'prototype';

// Create object with fake `null` prototype: use iframe Object with cleared prototype
var createDict = function () {
  // Thrash, waste and sodomy: IE GC bug
  var iframe = __webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/library/modules/_dom-create.js")('iframe');
  var i = enumBugKeys.length;
  var lt = '<';
  var gt = '>';
  var iframeDocument;
  iframe.style.display = 'none';
  __webpack_require__(/*! ./_html */ "../node_modules/core-js/library/modules/_html.js").appendChild(iframe);
  iframe.src = 'javascript:'; // eslint-disable-line no-script-url
  // createDict = iframe.contentWindow.Object;
  // html.removeChild(iframe);
  iframeDocument = iframe.contentWindow.document;
  iframeDocument.open();
  iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);
  iframeDocument.close();
  createDict = iframeDocument.F;
  while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];
  return createDict();
};

module.exports = Object.create || function create(O, Properties) {
  var result;
  if (O !== null) {
    Empty[PROTOTYPE] = anObject(O);
    result = new Empty();
    Empty[PROTOTYPE] = null;
    // add "__proto__" for Object.getPrototypeOf polyfill
    result[IE_PROTO] = O;
  } else result = createDict();
  return Properties === undefined ? result : dPs(result, Properties);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-dp.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-dp.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/library/modules/_ie8-dom-define.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
var dP = Object.defineProperty;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? Object.defineProperty : function defineProperty(O, P, Attributes) {
  anObject(O);
  P = toPrimitive(P, true);
  anObject(Attributes);
  if (IE8_DOM_DEFINE) try {
    return dP(O, P, Attributes);
  } catch (e) { /* empty */ }
  if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
  if ('value' in Attributes) O[P] = Attributes.value;
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-dps.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-dps.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");

module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? Object.defineProperties : function defineProperties(O, Properties) {
  anObject(O);
  var keys = getKeys(Properties);
  var length = keys.length;
  var i = 0;
  var P;
  while (length > i) dP.f(O, P = keys[i++], Properties[P]);
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gopd.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gopd.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/library/modules/_ie8-dom-define.js");
var gOPD = Object.getOwnPropertyDescriptor;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? gOPD : function getOwnPropertyDescriptor(O, P) {
  O = toIObject(O);
  P = toPrimitive(P, true);
  if (IE8_DOM_DEFINE) try {
    return gOPD(O, P);
  } catch (e) { /* empty */ }
  if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gopn-ext.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gopn-ext.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var gOPN = __webpack_require__(/*! ./_object-gopn */ "../node_modules/core-js/library/modules/_object-gopn.js").f;
var toString = {}.toString;

var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames
  ? Object.getOwnPropertyNames(window) : [];

var getWindowNames = function (it) {
  try {
    return gOPN(it);
  } catch (e) {
    return windowNames.slice();
  }
};

module.exports.f = function getOwnPropertyNames(it) {
  return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gopn.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gopn.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)
var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/library/modules/_object-keys-internal.js");
var hiddenKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js").concat('length', 'prototype');

exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
  return $keys(O, hiddenKeys);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gops.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gops.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports) => {

exports.f = Object.getOwnPropertySymbols;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gpo.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gpo.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');
var ObjectProto = Object.prototype;

module.exports = Object.getPrototypeOf || function (O) {
  O = toObject(O);
  if (has(O, IE_PROTO)) return O[IE_PROTO];
  if (typeof O.constructor == 'function' && O instanceof O.constructor) {
    return O.constructor.prototype;
  } return O instanceof Object ? ObjectProto : null;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-keys-internal.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-keys-internal.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var arrayIndexOf = __webpack_require__(/*! ./_array-includes */ "../node_modules/core-js/library/modules/_array-includes.js")(false);
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');

module.exports = function (object, names) {
  var O = toIObject(object);
  var i = 0;
  var result = [];
  var key;
  for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);
  // Don't enum bug & hidden keys
  while (names.length > i) if (has(O, key = names[i++])) {
    ~arrayIndexOf(result, key) || result.push(key);
  }
  return result;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-keys.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-keys.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.14 / 15.2.3.14 Object.keys(O)
var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/library/modules/_object-keys-internal.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js");

module.exports = Object.keys || function keys(O) {
  return $keys(O, enumBugKeys);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-pie.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-pie.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports) => {

exports.f = {}.propertyIsEnumerable;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-sap.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-sap.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// most Object methods by ES6 should accept primitives
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
module.exports = function (KEY, exec) {
  var fn = (core.Object || {})[KEY] || Object[KEY];
  var exp = {};
  exp[KEY] = exec(fn);
  $export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-to-array.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-to-array.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var isEnum = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js").f;
module.exports = function (isEntries) {
  return function (it) {
    var O = toIObject(it);
    var keys = getKeys(O);
    var length = keys.length;
    var i = 0;
    var result = [];
    var key;
    while (length > i) {
      key = keys[i++];
      if (!DESCRIPTORS || isEnum.call(O, key)) {
        result.push(isEntries ? [key, O[key]] : O[key]);
      }
    }
    return result;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_own-keys.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_own-keys.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// all object keys, includes non-enumerable and symbols
var gOPN = __webpack_require__(/*! ./_object-gopn */ "../node_modules/core-js/library/modules/_object-gopn.js");
var gOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var Reflect = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").Reflect;
module.exports = Reflect && Reflect.ownKeys || function ownKeys(it) {
  var keys = gOPN.f(anObject(it));
  var getSymbols = gOPS.f;
  return getSymbols ? keys.concat(getSymbols(it)) : keys;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_parse-int.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_parse-int.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var $parseInt = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").parseInt;
var $trim = __webpack_require__(/*! ./_string-trim */ "../node_modules/core-js/library/modules/_string-trim.js").trim;
var ws = __webpack_require__(/*! ./_string-ws */ "../node_modules/core-js/library/modules/_string-ws.js");
var hex = /^[-+]?0[xX]/;

module.exports = $parseInt(ws + '08') !== 8 || $parseInt(ws + '0x16') !== 22 ? function parseInt(str, radix) {
  var string = $trim(String(str), 3);
  return $parseInt(string, (radix >>> 0) || (hex.test(string) ? 16 : 10));
} : $parseInt;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_perform.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_perform.js ***!
  \***********************************************************/
/***/ ((module) => {

module.exports = function (exec) {
  try {
    return { e: false, v: exec() };
  } catch (e) {
    return { e: true, v: e };
  }
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_promise-resolve.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_promise-resolve.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var newPromiseCapability = __webpack_require__(/*! ./_new-promise-capability */ "../node_modules/core-js/library/modules/_new-promise-capability.js");

module.exports = function (C, x) {
  anObject(C);
  if (isObject(x) && x.constructor === C) return x;
  var promiseCapability = newPromiseCapability.f(C);
  var resolve = promiseCapability.resolve;
  resolve(x);
  return promiseCapability.promise;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_property-desc.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_property-desc.js ***!
  \*****************************************************************/
/***/ ((module) => {

module.exports = function (bitmap, value) {
  return {
    enumerable: !(bitmap & 1),
    configurable: !(bitmap & 2),
    writable: !(bitmap & 4),
    value: value
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_redefine-all.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_redefine-all.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
module.exports = function (target, src, safe) {
  for (var key in src) {
    if (safe && target[key]) target[key] = src[key];
    else hide(target, key, src[key]);
  } return target;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_redefine.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_redefine.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-collection-from.js":
/*!***********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-collection-from.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// https://tc39.github.io/proposal-setmap-offrom/
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");

module.exports = function (COLLECTION) {
  $export($export.S, COLLECTION, { from: function from(source /* , mapFn, thisArg */) {
    var mapFn = arguments[1];
    var mapping, A, n, cb;
    aFunction(this);
    mapping = mapFn !== undefined;
    if (mapping) aFunction(mapFn);
    if (source == undefined) return new this();
    A = [];
    if (mapping) {
      n = 0;
      cb = ctx(mapFn, arguments[2], 2);
      forOf(source, false, function (nextItem) {
        A.push(cb(nextItem, n++));
      });
    } else {
      forOf(source, false, A.push, A);
    }
    return new this(A);
  } });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-collection-of.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-collection-of.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// https://tc39.github.io/proposal-setmap-offrom/
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");

module.exports = function (COLLECTION) {
  $export($export.S, COLLECTION, { of: function of() {
    var length = arguments.length;
    var A = new Array(length);
    while (length--) A[length] = arguments[length];
    return new this(A);
  } });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-proto.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-proto.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Works with __proto__ only. Old v8 can't work with null proto objects.
/* eslint-disable no-proto */
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var check = function (O, proto) {
  anObject(O);
  if (!isObject(proto) && proto !== null) throw TypeError(proto + ": can't set as prototype!");
};
module.exports = {
  set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line
    function (test, buggy, set) {
      try {
        set = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js")(Function.call, __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js").f(Object.prototype, '__proto__').set, 2);
        set(test, []);
        buggy = !(test instanceof Array);
      } catch (e) { buggy = true; }
      return function setPrototypeOf(O, proto) {
        check(O, proto);
        if (buggy) O.__proto__ = proto;
        else set(O, proto);
        return O;
      };
    }({}, false) : undefined),
  check: check
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-species.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-species.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('species');

module.exports = function (KEY) {
  var C = typeof core[KEY] == 'function' ? core[KEY] : global[KEY];
  if (DESCRIPTORS && C && !C[SPECIES]) dP.f(C, SPECIES, {
    configurable: true,
    get: function () { return this; }
  });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-to-string-tag.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-to-string-tag.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var def = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('toStringTag');

module.exports = function (it, tag, stat) {
  if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_shared-key.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_shared-key.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var shared = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js")('keys');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
module.exports = function (key) {
  return shared[key] || (shared[key] = uid(key));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_shared.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_shared.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var SHARED = '__core-js_shared__';
var store = global[SHARED] || (global[SHARED] = {});

(module.exports = function (key, value) {
  return store[key] || (store[key] = value !== undefined ? value : {});
})('versions', []).push({
  version: core.version,
  mode: __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js") ? 'pure' : 'global',
  copyright: '© 2020 Denis Pushkarev (zloirock.ru)'
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/_species-constructor.js":
/*!***********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_species-constructor.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.3.20 SpeciesConstructor(O, defaultConstructor)
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('species');
module.exports = function (O, D) {
  var C = anObject(O).constructor;
  var S;
  return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_string-at.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_string-at.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
// true  -> String#at
// false -> String#codePointAt
module.exports = function (TO_STRING) {
  return function (that, pos) {
    var s = String(defined(that));
    var i = toInteger(pos);
    var l = s.length;
    var a, b;
    if (i < 0 || i >= l) return TO_STRING ? '' : undefined;
    a = s.charCodeAt(i);
    return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
      ? TO_STRING ? s.charAt(i) : a
      : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_string-trim.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_string-trim.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
var spaces = __webpack_require__(/*! ./_string-ws */ "../node_modules/core-js/library/modules/_string-ws.js");
var space = '[' + spaces + ']';
var non = '\u200b\u0085';
var ltrim = RegExp('^' + space + space + '*');
var rtrim = RegExp(space + space + '*$');

var exporter = function (KEY, exec, ALIAS) {
  var exp = {};
  var FORCE = fails(function () {
    return !!spaces[KEY]() || non[KEY]() != non;
  });
  var fn = exp[KEY] = FORCE ? exec(trim) : spaces[KEY];
  if (ALIAS) exp[ALIAS] = fn;
  $export($export.P + $export.F * FORCE, 'String', exp);
};

// 1 -> String#trimLeft
// 2 -> String#trimRight
// 3 -> String#trim
var trim = exporter.trim = function (string, TYPE) {
  string = String(defined(string));
  if (TYPE & 1) string = string.replace(ltrim, '');
  if (TYPE & 2) string = string.replace(rtrim, '');
  return string;
};

module.exports = exporter;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_string-ws.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_string-ws.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = '\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003' +
  '\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF';


/***/ }),

/***/ "../node_modules/core-js/library/modules/_task.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_task.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var invoke = __webpack_require__(/*! ./_invoke */ "../node_modules/core-js/library/modules/_invoke.js");
var html = __webpack_require__(/*! ./_html */ "../node_modules/core-js/library/modules/_html.js");
var cel = __webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/library/modules/_dom-create.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var process = global.process;
var setTask = global.setImmediate;
var clearTask = global.clearImmediate;
var MessageChannel = global.MessageChannel;
var Dispatch = global.Dispatch;
var counter = 0;
var queue = {};
var ONREADYSTATECHANGE = 'onreadystatechange';
var defer, channel, port;
var run = function () {
  var id = +this;
  // eslint-disable-next-line no-prototype-builtins
  if (queue.hasOwnProperty(id)) {
    var fn = queue[id];
    delete queue[id];
    fn();
  }
};
var listener = function (event) {
  run.call(event.data);
};
// Node.js 0.9+ & IE10+ has setImmediate, otherwise:
if (!setTask || !clearTask) {
  setTask = function setImmediate(fn) {
    var args = [];
    var i = 1;
    while (arguments.length > i) args.push(arguments[i++]);
    queue[++counter] = function () {
      // eslint-disable-next-line no-new-func
      invoke(typeof fn == 'function' ? fn : Function(fn), args);
    };
    defer(counter);
    return counter;
  };
  clearTask = function clearImmediate(id) {
    delete queue[id];
  };
  // Node.js 0.8-
  if (__webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js")(process) == 'process') {
    defer = function (id) {
      process.nextTick(ctx(run, id, 1));
    };
  // Sphere (JS game engine) Dispatch API
  } else if (Dispatch && Dispatch.now) {
    defer = function (id) {
      Dispatch.now(ctx(run, id, 1));
    };
  // Browsers with MessageChannel, includes WebWorkers
  } else if (MessageChannel) {
    channel = new MessageChannel();
    port = channel.port2;
    channel.port1.onmessage = listener;
    defer = ctx(port.postMessage, port, 1);
  // Browsers with postMessage, skip WebWorkers
  // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'
  } else if (global.addEventListener && typeof postMessage == 'function' && !global.importScripts) {
    defer = function (id) {
      global.postMessage(id + '', '*');
    };
    global.addEventListener('message', listener, false);
  // IE8-
  } else if (ONREADYSTATECHANGE in cel('script')) {
    defer = function (id) {
      html.appendChild(cel('script'))[ONREADYSTATECHANGE] = function () {
        html.removeChild(this);
        run.call(id);
      };
    };
  // Rest old browsers
  } else {
    defer = function (id) {
      setTimeout(ctx(run, id, 1), 0);
    };
  }
}
module.exports = {
  set: setTask,
  clear: clearTask
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-absolute-index.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-absolute-index.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
var max = Math.max;
var min = Math.min;
module.exports = function (index, length) {
  index = toInteger(index);
  return index < 0 ? max(index + length, 0) : min(index, length);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-integer.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-integer.js ***!
  \**************************************************************/
/***/ ((module) => {

// 7.1.4 ToInteger
var ceil = Math.ceil;
var floor = Math.floor;
module.exports = function (it) {
  return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-iobject.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-iobject.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// to indexed object, toObject with fallback for non-array-like ES3 strings
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/library/modules/_iobject.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
module.exports = function (it) {
  return IObject(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-length.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-length.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.15 ToLength
var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
var min = Math.min;
module.exports = function (it) {
  return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-object.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-object.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.13 ToObject(argument)
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
module.exports = function (it) {
  return Object(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-primitive.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-primitive.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.1 ToPrimitive(input [, PreferredType])
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
// instead of the ES6 spec version, we didn't implement @@toPrimitive case
// and the second argument - flag - preferred type is a string
module.exports = function (it, S) {
  if (!isObject(it)) return it;
  var fn, val;
  if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
  if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  throw TypeError("Can't convert object to primitive value");
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_uid.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_uid.js ***!
  \*******************************************************/
/***/ ((module) => {

var id = 0;
var px = Math.random();
module.exports = function (key) {
  return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_user-agent.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_user-agent.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var navigator = global.navigator;

module.exports = navigator && navigator.userAgent || '';


/***/ }),

/***/ "../node_modules/core-js/library/modules/_validate-collection.js":
/*!***********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_validate-collection.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
module.exports = function (it, TYPE) {
  if (!isObject(it) || it._t !== TYPE) throw TypeError('Incompatible receiver, ' + TYPE + ' required!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_wks-define.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_wks-define.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js");
var wksExt = __webpack_require__(/*! ./_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js");
var defineProperty = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
module.exports = function (name) {
  var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {});
  if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_wks-ext.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_wks-ext.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

exports.f = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js");


/***/ }),

/***/ "../node_modules/core-js/library/modules/_wks.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_wks.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var store = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js")('wks');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
var Symbol = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").Symbol;
var USE_SYMBOL = typeof Symbol == 'function';

var $exports = module.exports = function (name) {
  return store[name] || (store[name] =
    USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
};

$exports.store = store;


/***/ }),

/***/ "../node_modules/core-js/library/modules/core.get-iterator-method.js":
/*!***************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/core.get-iterator-method.js ***!
  \***************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/library/modules/_classof.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
module.exports = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js").getIteratorMethod = function (it) {
  if (it != undefined) return it[ITERATOR]
    || it['@@iterator']
    || Iterators[classof(it)];
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.array.from.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.array.from.js ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var call = __webpack_require__(/*! ./_iter-call */ "../node_modules/core-js/library/modules/_iter-call.js");
var isArrayIter = __webpack_require__(/*! ./_is-array-iter */ "../node_modules/core-js/library/modules/_is-array-iter.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
var createProperty = __webpack_require__(/*! ./_create-property */ "../node_modules/core-js/library/modules/_create-property.js");
var getIterFn = __webpack_require__(/*! ./core.get-iterator-method */ "../node_modules/core-js/library/modules/core.get-iterator-method.js");

$export($export.S + $export.F * !__webpack_require__(/*! ./_iter-detect */ "../node_modules/core-js/library/modules/_iter-detect.js")(function (iter) { Array.from(iter); }), 'Array', {
  // 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined)
  from: function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {
    var O = toObject(arrayLike);
    var C = typeof this == 'function' ? this : Array;
    var aLen = arguments.length;
    var mapfn = aLen > 1 ? arguments[1] : undefined;
    var mapping = mapfn !== undefined;
    var index = 0;
    var iterFn = getIterFn(O);
    var length, result, step, iterator;
    if (mapping) mapfn = ctx(mapfn, aLen > 2 ? arguments[2] : undefined, 2);
    // if object isn't iterable or it's array with default iterator - use simple case
    if (iterFn != undefined && !(C == Array && isArrayIter(iterFn))) {
      for (iterator = iterFn.call(O), result = new C(); !(step = iterator.next()).done; index++) {
        createProperty(result, index, mapping ? call(iterator, mapfn, [step.value, index], true) : step.value);
      }
    } else {
      length = toLength(O.length);
      for (result = new C(length); length > index; index++) {
        createProperty(result, index, mapping ? mapfn(O[index], index) : O[index]);
      }
    }
    result.length = index;
    return result;
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.array.is-array.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.array.is-array.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 22.1.2.2 / 15.4.3.2 Array.isArray(arg)
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");

$export($export.S, 'Array', { isArray: __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/library/modules/_is-array.js") });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.array.iterator.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.array.iterator.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var addToUnscopables = __webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/library/modules/_add-to-unscopables.js");
var step = __webpack_require__(/*! ./_iter-step */ "../node_modules/core-js/library/modules/_iter-step.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");

// 22.1.3.4 Array.prototype.entries()
// 22.1.3.13 Array.prototype.keys()
// 22.1.3.29 Array.prototype.values()
// 22.1.3.30 Array.prototype[@@iterator]()
module.exports = __webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/library/modules/_iter-define.js")(Array, 'Array', function (iterated, kind) {
  this._t = toIObject(iterated); // target
  this._i = 0;                   // next index
  this._k = kind;                // kind
// 22.1.5.2.1 %ArrayIteratorPrototype%.next()
}, function () {
  var O = this._t;
  var kind = this._k;
  var index = this._i++;
  if (!O || index >= O.length) {
    this._t = undefined;
    return step(1);
  }
  if (kind == 'keys') return step(0, index);
  if (kind == 'values') return step(0, O[index]);
  return step(0, [index, O[index]]);
}, 'values');

// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
Iterators.Arguments = Iterators.Array;

addToUnscopables('keys');
addToUnscopables('values');
addToUnscopables('entries');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.function.has-instance.js":
/*!****************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.function.has-instance.js ***!
  \****************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");
var HAS_INSTANCE = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('hasInstance');
var FunctionProto = Function.prototype;
// 19.2.3.6 Function.prototype[@@hasInstance](V)
if (!(HAS_INSTANCE in FunctionProto)) __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f(FunctionProto, HAS_INSTANCE, { value: function (O) {
  if (typeof this != 'function' || !isObject(O)) return false;
  if (!isObject(this.prototype)) return O instanceof this;
  // for environment w/o native `@@hasInstance` logic enough `instanceof`, but add this:
  while (O = getPrototypeOf(O)) if (this.prototype === O) return true;
  return false;
} });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.map.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.map.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var strong = __webpack_require__(/*! ./_collection-strong */ "../node_modules/core-js/library/modules/_collection-strong.js");
var validate = __webpack_require__(/*! ./_validate-collection */ "../node_modules/core-js/library/modules/_validate-collection.js");
var MAP = 'Map';

// 23.1 Map Objects
module.exports = __webpack_require__(/*! ./_collection */ "../node_modules/core-js/library/modules/_collection.js")(MAP, function (get) {
  return function Map() { return get(this, arguments.length > 0 ? arguments[0] : undefined); };
}, {
  // 23.1.3.6 Map.prototype.get(key)
  get: function get(key) {
    var entry = strong.getEntry(validate(this, MAP), key);
    return entry && entry.v;
  },
  // 23.1.3.9 Map.prototype.set(key, value)
  set: function set(key, value) {
    return strong.def(validate(this, MAP), key === 0 ? 0 : key, value);
  }
}, strong, true);


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.assign.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.assign.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.3.1 Object.assign(target, source)
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");

$export($export.S + $export.F, 'Object', { assign: __webpack_require__(/*! ./_object-assign */ "../node_modules/core-js/library/modules/_object-assign.js") });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.create.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.create.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
$export($export.S, 'Object', { create: __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js") });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.define-properties.js":
/*!*******************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.define-properties.js ***!
  \*******************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
// 19.1.2.3 / 15.2.3.7 Object.defineProperties(O, Properties)
$export($export.S + $export.F * !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js"), 'Object', { defineProperties: __webpack_require__(/*! ./_object-dps */ "../node_modules/core-js/library/modules/_object-dps.js") });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.define-property.js":
/*!*****************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.define-property.js ***!
  \*****************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)
$export($export.S + $export.F * !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js"), 'Object', { defineProperty: __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js":
/*!*****************************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js ***!
  \*****************************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var $getOwnPropertyDescriptor = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js").f;

__webpack_require__(/*! ./_object-sap */ "../node_modules/core-js/library/modules/_object-sap.js")('getOwnPropertyDescriptor', function () {
  return function getOwnPropertyDescriptor(it, key) {
    return $getOwnPropertyDescriptor(toIObject(it), key);
  };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.get-prototype-of.js":
/*!******************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.get-prototype-of.js ***!
  \******************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.9 Object.getPrototypeOf(O)
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var $getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");

__webpack_require__(/*! ./_object-sap */ "../node_modules/core-js/library/modules/_object-sap.js")('getPrototypeOf', function () {
  return function getPrototypeOf(it) {
    return $getPrototypeOf(toObject(it));
  };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.keys.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.keys.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.14 Object.keys(O)
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var $keys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");

__webpack_require__(/*! ./_object-sap */ "../node_modules/core-js/library/modules/_object-sap.js")('keys', function () {
  return function keys(it) {
    return $keys(toObject(it));
  };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.set-prototype-of.js":
/*!******************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.set-prototype-of.js ***!
  \******************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.3.19 Object.setPrototypeOf(O, proto)
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
$export($export.S, 'Object', { setPrototypeOf: __webpack_require__(/*! ./_set-proto */ "../node_modules/core-js/library/modules/_set-proto.js").set });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.to-string.js":
/*!***********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.to-string.js ***!
  \***********************************************************************/
/***/ (() => {



/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.parse-int.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.parse-int.js ***!
  \****************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var $parseInt = __webpack_require__(/*! ./_parse-int */ "../node_modules/core-js/library/modules/_parse-int.js");
// 18.2.5 parseInt(string, radix)
$export($export.G + $export.F * (parseInt != $parseInt), { parseInt: $parseInt });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.promise.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.promise.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/library/modules/_classof.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var anInstance = __webpack_require__(/*! ./_an-instance */ "../node_modules/core-js/library/modules/_an-instance.js");
var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");
var speciesConstructor = __webpack_require__(/*! ./_species-constructor */ "../node_modules/core-js/library/modules/_species-constructor.js");
var task = __webpack_require__(/*! ./_task */ "../node_modules/core-js/library/modules/_task.js").set;
var microtask = __webpack_require__(/*! ./_microtask */ "../node_modules/core-js/library/modules/_microtask.js")();
var newPromiseCapabilityModule = __webpack_require__(/*! ./_new-promise-capability */ "../node_modules/core-js/library/modules/_new-promise-capability.js");
var perform = __webpack_require__(/*! ./_perform */ "../node_modules/core-js/library/modules/_perform.js");
var userAgent = __webpack_require__(/*! ./_user-agent */ "../node_modules/core-js/library/modules/_user-agent.js");
var promiseResolve = __webpack_require__(/*! ./_promise-resolve */ "../node_modules/core-js/library/modules/_promise-resolve.js");
var PROMISE = 'Promise';
var TypeError = global.TypeError;
var process = global.process;
var versions = process && process.versions;
var v8 = versions && versions.v8 || '';
var $Promise = global[PROMISE];
var isNode = classof(process) == 'process';
var empty = function () { /* empty */ };
var Internal, newGenericPromiseCapability, OwnPromiseCapability, Wrapper;
var newPromiseCapability = newGenericPromiseCapability = newPromiseCapabilityModule.f;

var USE_NATIVE = !!function () {
  try {
    // correct subclassing with @@species support
    var promise = $Promise.resolve(1);
    var FakePromise = (promise.constructor = {})[__webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('species')] = function (exec) {
      exec(empty, empty);
    };
    // unhandled rejections tracking support, NodeJS Promise without it fails @@species test
    return (isNode || typeof PromiseRejectionEvent == 'function')
      && promise.then(empty) instanceof FakePromise
      // v8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables
      // https://bugs.chromium.org/p/chromium/issues/detail?id=830565
      // we can't detect it synchronously, so just check versions
      && v8.indexOf('6.6') !== 0
      && userAgent.indexOf('Chrome/66') === -1;
  } catch (e) { /* empty */ }
}();

// helpers
var isThenable = function (it) {
  var then;
  return isObject(it) && typeof (then = it.then) == 'function' ? then : false;
};
var notify = function (promise, isReject) {
  if (promise._n) return;
  promise._n = true;
  var chain = promise._c;
  microtask(function () {
    var value = promise._v;
    var ok = promise._s == 1;
    var i = 0;
    var run = function (reaction) {
      var handler = ok ? reaction.ok : reaction.fail;
      var resolve = reaction.resolve;
      var reject = reaction.reject;
      var domain = reaction.domain;
      var result, then, exited;
      try {
        if (handler) {
          if (!ok) {
            if (promise._h == 2) onHandleUnhandled(promise);
            promise._h = 1;
          }
          if (handler === true) result = value;
          else {
            if (domain) domain.enter();
            result = handler(value); // may throw
            if (domain) {
              domain.exit();
              exited = true;
            }
          }
          if (result === reaction.promise) {
            reject(TypeError('Promise-chain cycle'));
          } else if (then = isThenable(result)) {
            then.call(result, resolve, reject);
          } else resolve(result);
        } else reject(value);
      } catch (e) {
        if (domain && !exited) domain.exit();
        reject(e);
      }
    };
    while (chain.length > i) run(chain[i++]); // variable length - can't use forEach
    promise._c = [];
    promise._n = false;
    if (isReject && !promise._h) onUnhandled(promise);
  });
};
var onUnhandled = function (promise) {
  task.call(global, function () {
    var value = promise._v;
    var unhandled = isUnhandled(promise);
    var result, handler, console;
    if (unhandled) {
      result = perform(function () {
        if (isNode) {
          process.emit('unhandledRejection', value, promise);
        } else if (handler = global.onunhandledrejection) {
          handler({ promise: promise, reason: value });
        } else if ((console = global.console) && console.error) {
          console.error('Unhandled promise rejection', value);
        }
      });
      // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should
      promise._h = isNode || isUnhandled(promise) ? 2 : 1;
    } promise._a = undefined;
    if (unhandled && result.e) throw result.v;
  });
};
var isUnhandled = function (promise) {
  return promise._h !== 1 && (promise._a || promise._c).length === 0;
};
var onHandleUnhandled = function (promise) {
  task.call(global, function () {
    var handler;
    if (isNode) {
      process.emit('rejectionHandled', promise);
    } else if (handler = global.onrejectionhandled) {
      handler({ promise: promise, reason: promise._v });
    }
  });
};
var $reject = function (value) {
  var promise = this;
  if (promise._d) return;
  promise._d = true;
  promise = promise._w || promise; // unwrap
  promise._v = value;
  promise._s = 2;
  if (!promise._a) promise._a = promise._c.slice();
  notify(promise, true);
};
var $resolve = function (value) {
  var promise = this;
  var then;
  if (promise._d) return;
  promise._d = true;
  promise = promise._w || promise; // unwrap
  try {
    if (promise === value) throw TypeError("Promise can't be resolved itself");
    if (then = isThenable(value)) {
      microtask(function () {
        var wrapper = { _w: promise, _d: false }; // wrap
        try {
          then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1));
        } catch (e) {
          $reject.call(wrapper, e);
        }
      });
    } else {
      promise._v = value;
      promise._s = 1;
      notify(promise, false);
    }
  } catch (e) {
    $reject.call({ _w: promise, _d: false }, e); // wrap
  }
};

// constructor polyfill
if (!USE_NATIVE) {
  // 25.4.3.1 Promise(executor)
  $Promise = function Promise(executor) {
    anInstance(this, $Promise, PROMISE, '_h');
    aFunction(executor);
    Internal.call(this);
    try {
      executor(ctx($resolve, this, 1), ctx($reject, this, 1));
    } catch (err) {
      $reject.call(this, err);
    }
  };
  // eslint-disable-next-line no-unused-vars
  Internal = function Promise(executor) {
    this._c = [];             // <- awaiting reactions
    this._a = undefined;      // <- checked in isUnhandled reactions
    this._s = 0;              // <- state
    this._d = false;          // <- done
    this._v = undefined;      // <- value
    this._h = 0;              // <- rejection state, 0 - default, 1 - handled, 2 - unhandled
    this._n = false;          // <- notify
  };
  Internal.prototype = __webpack_require__(/*! ./_redefine-all */ "../node_modules/core-js/library/modules/_redefine-all.js")($Promise.prototype, {
    // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected)
    then: function then(onFulfilled, onRejected) {
      var reaction = newPromiseCapability(speciesConstructor(this, $Promise));
      reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;
      reaction.fail = typeof onRejected == 'function' && onRejected;
      reaction.domain = isNode ? process.domain : undefined;
      this._c.push(reaction);
      if (this._a) this._a.push(reaction);
      if (this._s) notify(this, false);
      return reaction.promise;
    },
    // 25.4.5.1 Promise.prototype.catch(onRejected)
    'catch': function (onRejected) {
      return this.then(undefined, onRejected);
    }
  });
  OwnPromiseCapability = function () {
    var promise = new Internal();
    this.promise = promise;
    this.resolve = ctx($resolve, promise, 1);
    this.reject = ctx($reject, promise, 1);
  };
  newPromiseCapabilityModule.f = newPromiseCapability = function (C) {
    return C === $Promise || C === Wrapper
      ? new OwnPromiseCapability(C)
      : newGenericPromiseCapability(C);
  };
}

$export($export.G + $export.W + $export.F * !USE_NATIVE, { Promise: $Promise });
__webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js")($Promise, PROMISE);
__webpack_require__(/*! ./_set-species */ "../node_modules/core-js/library/modules/_set-species.js")(PROMISE);
Wrapper = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js")[PROMISE];

// statics
$export($export.S + $export.F * !USE_NATIVE, PROMISE, {
  // 25.4.4.5 Promise.reject(r)
  reject: function reject(r) {
    var capability = newPromiseCapability(this);
    var $$reject = capability.reject;
    $$reject(r);
    return capability.promise;
  }
});
$export($export.S + $export.F * (LIBRARY || !USE_NATIVE), PROMISE, {
  // 25.4.4.6 Promise.resolve(x)
  resolve: function resolve(x) {
    return promiseResolve(LIBRARY && this === Wrapper ? $Promise : this, x);
  }
});
$export($export.S + $export.F * !(USE_NATIVE && __webpack_require__(/*! ./_iter-detect */ "../node_modules/core-js/library/modules/_iter-detect.js")(function (iter) {
  $Promise.all(iter)['catch'](empty);
})), PROMISE, {
  // 25.4.4.1 Promise.all(iterable)
  all: function all(iterable) {
    var C = this;
    var capability = newPromiseCapability(C);
    var resolve = capability.resolve;
    var reject = capability.reject;
    var result = perform(function () {
      var values = [];
      var index = 0;
      var remaining = 1;
      forOf(iterable, false, function (promise) {
        var $index = index++;
        var alreadyCalled = false;
        values.push(undefined);
        remaining++;
        C.resolve(promise).then(function (value) {
          if (alreadyCalled) return;
          alreadyCalled = true;
          values[$index] = value;
          --remaining || resolve(values);
        }, reject);
      });
      --remaining || resolve(values);
    });
    if (result.e) reject(result.v);
    return capability.promise;
  },
  // 25.4.4.4 Promise.race(iterable)
  race: function race(iterable) {
    var C = this;
    var capability = newPromiseCapability(C);
    var reject = capability.reject;
    var result = perform(function () {
      forOf(iterable, false, function (promise) {
        C.resolve(promise).then(capability.resolve, reject);
      });
    });
    if (result.e) reject(result.v);
    return capability.promise;
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.reflect.construct.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.reflect.construct.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 26.1.2 Reflect.construct(target, argumentsList [, newTarget])
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
var bind = __webpack_require__(/*! ./_bind */ "../node_modules/core-js/library/modules/_bind.js");
var rConstruct = (__webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").Reflect || {}).construct;

// MS Edge supports only 2 arguments and argumentsList argument is optional
// FF Nightly sets third argument as `new.target`, but does not create `this` from it
var NEW_TARGET_BUG = fails(function () {
  function F() { /* empty */ }
  return !(rConstruct(function () { /* empty */ }, [], F) instanceof F);
});
var ARGS_BUG = !fails(function () {
  rConstruct(function () { /* empty */ });
});

$export($export.S + $export.F * (NEW_TARGET_BUG || ARGS_BUG), 'Reflect', {
  construct: function construct(Target, args /* , newTarget */) {
    aFunction(Target);
    anObject(args);
    var newTarget = arguments.length < 3 ? Target : aFunction(arguments[2]);
    if (ARGS_BUG && !NEW_TARGET_BUG) return rConstruct(Target, args, newTarget);
    if (Target == newTarget) {
      // w/o altered newTarget, optimization for 0-4 arguments
      switch (args.length) {
        case 0: return new Target();
        case 1: return new Target(args[0]);
        case 2: return new Target(args[0], args[1]);
        case 3: return new Target(args[0], args[1], args[2]);
        case 4: return new Target(args[0], args[1], args[2], args[3]);
      }
      // w/o altered newTarget, lot of arguments case
      var $args = [null];
      $args.push.apply($args, args);
      return new (bind.apply(Target, $args))();
    }
    // with altered newTarget, not support built-in constructors
    var proto = newTarget.prototype;
    var instance = create(isObject(proto) ? proto : Object.prototype);
    var result = Function.apply.call(Target, instance, args);
    return isObject(result) ? result : instance;
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.reflect.get.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.reflect.get.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 26.1.6 Reflect.get(target, propertyKey [, receiver])
var gOPD = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js");
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");

function get(target, propertyKey /* , receiver */) {
  var receiver = arguments.length < 3 ? target : arguments[2];
  var desc, proto;
  if (anObject(target) === receiver) return target[propertyKey];
  if (desc = gOPD.f(target, propertyKey)) return has(desc, 'value')
    ? desc.value
    : desc.get !== undefined
      ? desc.get.call(receiver)
      : undefined;
  if (isObject(proto = getPrototypeOf(target))) return get(proto, propertyKey, receiver);
}

$export($export.S, 'Reflect', { get: get });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.string.iterator.js":
/*!**********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.string.iterator.js ***!
  \**********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $at = __webpack_require__(/*! ./_string-at */ "../node_modules/core-js/library/modules/_string-at.js")(true);

// 21.1.3.27 String.prototype[@@iterator]()
__webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/library/modules/_iter-define.js")(String, 'String', function (iterated) {
  this._t = String(iterated); // target
  this._i = 0;                // next index
// 21.1.5.2.1 %StringIteratorPrototype%.next()
}, function () {
  var O = this._t;
  var index = this._i;
  var point;
  if (index >= O.length) return { value: undefined, done: true };
  point = $at(O, index);
  this._i += point.length;
  return { value: point, done: false };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.symbol.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.symbol.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// ECMAScript 6 symbols shim
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/library/modules/_redefine.js");
var META = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js").KEY;
var $fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
var shared = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
var wks = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js");
var wksExt = __webpack_require__(/*! ./_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js");
var wksDefine = __webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js");
var enumKeys = __webpack_require__(/*! ./_enum-keys */ "../node_modules/core-js/library/modules/_enum-keys.js");
var isArray = __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/library/modules/_is-array.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
var _create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
var gOPNExt = __webpack_require__(/*! ./_object-gopn-ext */ "../node_modules/core-js/library/modules/_object-gopn-ext.js");
var $GOPD = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js");
var $GOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
var $DP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var $keys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var gOPD = $GOPD.f;
var dP = $DP.f;
var gOPN = gOPNExt.f;
var $Symbol = global.Symbol;
var $JSON = global.JSON;
var _stringify = $JSON && $JSON.stringify;
var PROTOTYPE = 'prototype';
var HIDDEN = wks('_hidden');
var TO_PRIMITIVE = wks('toPrimitive');
var isEnum = {}.propertyIsEnumerable;
var SymbolRegistry = shared('symbol-registry');
var AllSymbols = shared('symbols');
var OPSymbols = shared('op-symbols');
var ObjectProto = Object[PROTOTYPE];
var USE_NATIVE = typeof $Symbol == 'function' && !!$GOPS.f;
var QObject = global.QObject;
// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173
var setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;

// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687
var setSymbolDesc = DESCRIPTORS && $fails(function () {
  return _create(dP({}, 'a', {
    get: function () { return dP(this, 'a', { value: 7 }).a; }
  })).a != 7;
}) ? function (it, key, D) {
  var protoDesc = gOPD(ObjectProto, key);
  if (protoDesc) delete ObjectProto[key];
  dP(it, key, D);
  if (protoDesc && it !== ObjectProto) dP(ObjectProto, key, protoDesc);
} : dP;

var wrap = function (tag) {
  var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]);
  sym._k = tag;
  return sym;
};

var isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function (it) {
  return typeof it == 'symbol';
} : function (it) {
  return it instanceof $Symbol;
};

var $defineProperty = function defineProperty(it, key, D) {
  if (it === ObjectProto) $defineProperty(OPSymbols, key, D);
  anObject(it);
  key = toPrimitive(key, true);
  anObject(D);
  if (has(AllSymbols, key)) {
    if (!D.enumerable) {
      if (!has(it, HIDDEN)) dP(it, HIDDEN, createDesc(1, {}));
      it[HIDDEN][key] = true;
    } else {
      if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false;
      D = _create(D, { enumerable: createDesc(0, false) });
    } return setSymbolDesc(it, key, D);
  } return dP(it, key, D);
};
var $defineProperties = function defineProperties(it, P) {
  anObject(it);
  var keys = enumKeys(P = toIObject(P));
  var i = 0;
  var l = keys.length;
  var key;
  while (l > i) $defineProperty(it, key = keys[i++], P[key]);
  return it;
};
var $create = function create(it, P) {
  return P === undefined ? _create(it) : $defineProperties(_create(it), P);
};
var $propertyIsEnumerable = function propertyIsEnumerable(key) {
  var E = isEnum.call(this, key = toPrimitive(key, true));
  if (this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return false;
  return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true;
};
var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key) {
  it = toIObject(it);
  key = toPrimitive(key, true);
  if (it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return;
  var D = gOPD(it, key);
  if (D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) D.enumerable = true;
  return D;
};
var $getOwnPropertyNames = function getOwnPropertyNames(it) {
  var names = gOPN(toIObject(it));
  var result = [];
  var i = 0;
  var key;
  while (names.length > i) {
    if (!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META) result.push(key);
  } return result;
};
var $getOwnPropertySymbols = function getOwnPropertySymbols(it) {
  var IS_OP = it === ObjectProto;
  var names = gOPN(IS_OP ? OPSymbols : toIObject(it));
  var result = [];
  var i = 0;
  var key;
  while (names.length > i) {
    if (has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true)) result.push(AllSymbols[key]);
  } return result;
};

// 19.4.1.1 Symbol([description])
if (!USE_NATIVE) {
  $Symbol = function Symbol() {
    if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor!');
    var tag = uid(arguments.length > 0 ? arguments[0] : undefined);
    var $set = function (value) {
      if (this === ObjectProto) $set.call(OPSymbols, value);
      if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;
      setSymbolDesc(this, tag, createDesc(1, value));
    };
    if (DESCRIPTORS && setter) setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set });
    return wrap(tag);
  };
  redefine($Symbol[PROTOTYPE], 'toString', function toString() {
    return this._k;
  });

  $GOPD.f = $getOwnPropertyDescriptor;
  $DP.f = $defineProperty;
  __webpack_require__(/*! ./_object-gopn */ "../node_modules/core-js/library/modules/_object-gopn.js").f = gOPNExt.f = $getOwnPropertyNames;
  __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js").f = $propertyIsEnumerable;
  $GOPS.f = $getOwnPropertySymbols;

  if (DESCRIPTORS && !__webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js")) {
    redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);
  }

  wksExt.f = function (name) {
    return wrap(wks(name));
  };
}

$export($export.G + $export.W + $export.F * !USE_NATIVE, { Symbol: $Symbol });

for (var es6Symbols = (
  // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14
  'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'
).split(','), j = 0; es6Symbols.length > j;)wks(es6Symbols[j++]);

for (var wellKnownSymbols = $keys(wks.store), k = 0; wellKnownSymbols.length > k;) wksDefine(wellKnownSymbols[k++]);

$export($export.S + $export.F * !USE_NATIVE, 'Symbol', {
  // 19.4.2.1 Symbol.for(key)
  'for': function (key) {
    return has(SymbolRegistry, key += '')
      ? SymbolRegistry[key]
      : SymbolRegistry[key] = $Symbol(key);
  },
  // 19.4.2.5 Symbol.keyFor(sym)
  keyFor: function keyFor(sym) {
    if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol!');
    for (var key in SymbolRegistry) if (SymbolRegistry[key] === sym) return key;
  },
  useSetter: function () { setter = true; },
  useSimple: function () { setter = false; }
});

$export($export.S + $export.F * !USE_NATIVE, 'Object', {
  // 19.1.2.2 Object.create(O [, Properties])
  create: $create,
  // 19.1.2.4 Object.defineProperty(O, P, Attributes)
  defineProperty: $defineProperty,
  // 19.1.2.3 Object.defineProperties(O, Properties)
  defineProperties: $defineProperties,
  // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
  getOwnPropertyDescriptor: $getOwnPropertyDescriptor,
  // 19.1.2.7 Object.getOwnPropertyNames(O)
  getOwnPropertyNames: $getOwnPropertyNames,
  // 19.1.2.8 Object.getOwnPropertySymbols(O)
  getOwnPropertySymbols: $getOwnPropertySymbols
});

// Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives
// https://bugs.chromium.org/p/v8/issues/detail?id=3443
var FAILS_ON_PRIMITIVES = $fails(function () { $GOPS.f(1); });

$export($export.S + $export.F * FAILS_ON_PRIMITIVES, 'Object', {
  getOwnPropertySymbols: function getOwnPropertySymbols(it) {
    return $GOPS.f(toObject(it));
  }
});

// 24.3.2 JSON.stringify(value [, replacer [, space]])
$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function () {
  var S = $Symbol();
  // MS Edge converts symbol values to JSON as {}
  // WebKit converts symbol values to JSON as null
  // V8 throws on boxed symbols
  return _stringify([S]) != '[null]' || _stringify({ a: S }) != '{}' || _stringify(Object(S)) != '{}';
})), 'JSON', {
  stringify: function stringify(it) {
    var args = [it];
    var i = 1;
    var replacer, $replacer;
    while (arguments.length > i) args.push(arguments[i++]);
    $replacer = replacer = args[1];
    if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined
    if (!isArray(replacer)) replacer = function (key, value) {
      if (typeof $replacer == 'function') value = $replacer.call(this, key, value);
      if (!isSymbol(value)) return value;
    };
    args[1] = replacer;
    return _stringify.apply($JSON, args);
  }
});

// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint)
$Symbol[PROTOTYPE][TO_PRIMITIVE] || __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js")($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);
// 19.4.3.5 Symbol.prototype[@@toStringTag]
setToStringTag($Symbol, 'Symbol');
// 20.2.1.9 Math[@@toStringTag]
setToStringTag(Math, 'Math', true);
// 24.3.3 JSON[@@toStringTag]
setToStringTag(global.JSON, 'JSON', true);


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.weak-map.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.weak-map.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var each = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/library/modules/_array-methods.js")(0);
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/library/modules/_redefine.js");
var meta = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js");
var assign = __webpack_require__(/*! ./_object-assign */ "../node_modules/core-js/library/modules/_object-assign.js");
var weak = __webpack_require__(/*! ./_collection-weak */ "../node_modules/core-js/library/modules/_collection-weak.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var validate = __webpack_require__(/*! ./_validate-collection */ "../node_modules/core-js/library/modules/_validate-collection.js");
var NATIVE_WEAK_MAP = __webpack_require__(/*! ./_validate-collection */ "../node_modules/core-js/library/modules/_validate-collection.js");
var IS_IE11 = !global.ActiveXObject && 'ActiveXObject' in global;
var WEAK_MAP = 'WeakMap';
var getWeak = meta.getWeak;
var isExtensible = Object.isExtensible;
var uncaughtFrozenStore = weak.ufstore;
var InternalMap;

var wrapper = function (get) {
  return function WeakMap() {
    return get(this, arguments.length > 0 ? arguments[0] : undefined);
  };
};

var methods = {
  // 23.3.3.3 WeakMap.prototype.get(key)
  get: function get(key) {
    if (isObject(key)) {
      var data = getWeak(key);
      if (data === true) return uncaughtFrozenStore(validate(this, WEAK_MAP)).get(key);
      return data ? data[this._i] : undefined;
    }
  },
  // 23.3.3.5 WeakMap.prototype.set(key, value)
  set: function set(key, value) {
    return weak.def(validate(this, WEAK_MAP), key, value);
  }
};

// 23.3 WeakMap Objects
var $WeakMap = module.exports = __webpack_require__(/*! ./_collection */ "../node_modules/core-js/library/modules/_collection.js")(WEAK_MAP, wrapper, methods, weak, true, true);

// IE11 WeakMap frozen keys fix
if (NATIVE_WEAK_MAP && IS_IE11) {
  InternalMap = weak.getConstructor(wrapper, WEAK_MAP);
  assign(InternalMap.prototype, methods);
  meta.NEED = true;
  each(['delete', 'has', 'get', 'set'], function (key) {
    var proto = $WeakMap.prototype;
    var method = proto[key];
    redefine(proto, key, function (a, b) {
      // store frozen objects on internal weakmap shim
      if (isObject(a) && !isExtensible(a)) {
        if (!this._f) this._f = new InternalMap();
        var result = this._f[key](a, b);
        return key == 'set' ? this : result;
      // store all the rest on native weakmap
      } return method.call(this, a, b);
    });
  });
}


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.map.from.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.map.from.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://tc39.github.io/proposal-setmap-offrom/#sec-map.from
__webpack_require__(/*! ./_set-collection-from */ "../node_modules/core-js/library/modules/_set-collection-from.js")('Map');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.map.of.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.map.of.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://tc39.github.io/proposal-setmap-offrom/#sec-map.of
__webpack_require__(/*! ./_set-collection-of */ "../node_modules/core-js/library/modules/_set-collection-of.js")('Map');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.map.to-json.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.map.to-json.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://github.com/DavidBruant/Map-Set.prototype.toJSON
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");

$export($export.P + $export.R, 'Map', { toJSON: __webpack_require__(/*! ./_collection-to-json */ "../node_modules/core-js/library/modules/_collection-to-json.js")('Map') });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.object.entries.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.object.entries.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://github.com/tc39/proposal-object-values-entries
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var $entries = __webpack_require__(/*! ./_object-to-array */ "../node_modules/core-js/library/modules/_object-to-array.js")(true);

$export($export.S, 'Object', {
  entries: function entries(it) {
    return $entries(it);
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.object.get-own-property-descriptors.js":
/*!******************************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.object.get-own-property-descriptors.js ***!
  \******************************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://github.com/tc39/proposal-object-getownpropertydescriptors
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var ownKeys = __webpack_require__(/*! ./_own-keys */ "../node_modules/core-js/library/modules/_own-keys.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var gOPD = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js");
var createProperty = __webpack_require__(/*! ./_create-property */ "../node_modules/core-js/library/modules/_create-property.js");

$export($export.S, 'Object', {
  getOwnPropertyDescriptors: function getOwnPropertyDescriptors(object) {
    var O = toIObject(object);
    var getDesc = gOPD.f;
    var keys = ownKeys(O);
    var result = {};
    var i = 0;
    var key, desc;
    while (keys.length > i) {
      desc = getDesc(O, key = keys[i++]);
      if (desc !== undefined) createProperty(result, key, desc);
    }
    return result;
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.object.values.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.object.values.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://github.com/tc39/proposal-object-values-entries
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var $values = __webpack_require__(/*! ./_object-to-array */ "../node_modules/core-js/library/modules/_object-to-array.js")(false);

$export($export.S, 'Object', {
  values: function values(it) {
    return $values(it);
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.promise.finally.js":
/*!**********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.promise.finally.js ***!
  \**********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
// https://github.com/tc39/proposal-promise-finally

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var speciesConstructor = __webpack_require__(/*! ./_species-constructor */ "../node_modules/core-js/library/modules/_species-constructor.js");
var promiseResolve = __webpack_require__(/*! ./_promise-resolve */ "../node_modules/core-js/library/modules/_promise-resolve.js");

$export($export.P + $export.R, 'Promise', { 'finally': function (onFinally) {
  var C = speciesConstructor(this, core.Promise || global.Promise);
  var isFunction = typeof onFinally == 'function';
  return this.then(
    isFunction ? function (x) {
      return promiseResolve(C, onFinally()).then(function () { return x; });
    } : onFinally,
    isFunction ? function (e) {
      return promiseResolve(C, onFinally()).then(function () { throw e; });
    } : onFinally
  );
} });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.promise.try.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.promise.try.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// https://github.com/tc39/proposal-promise-try
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var newPromiseCapability = __webpack_require__(/*! ./_new-promise-capability */ "../node_modules/core-js/library/modules/_new-promise-capability.js");
var perform = __webpack_require__(/*! ./_perform */ "../node_modules/core-js/library/modules/_perform.js");

$export($export.S, 'Promise', { 'try': function (callbackfn) {
  var promiseCapability = newPromiseCapability.f(this);
  var result = perform(callbackfn);
  (result.e ? promiseCapability.reject : promiseCapability.resolve)(result.v);
  return promiseCapability.promise;
} });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.symbol.async-iterator.js":
/*!****************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.symbol.async-iterator.js ***!
  \****************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js")('asyncIterator');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.symbol.observable.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.symbol.observable.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js")('observable');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.weak-map.from.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.weak-map.from.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://tc39.github.io/proposal-setmap-offrom/#sec-weakmap.from
__webpack_require__(/*! ./_set-collection-from */ "../node_modules/core-js/library/modules/_set-collection-from.js")('WeakMap');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.weak-map.of.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.weak-map.of.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://tc39.github.io/proposal-setmap-offrom/#sec-weakmap.of
__webpack_require__(/*! ./_set-collection-of */ "../node_modules/core-js/library/modules/_set-collection-of.js")('WeakMap');


/***/ }),

/***/ "../node_modules/core-js/library/modules/web.dom.iterable.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/web.dom.iterable.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ./es6.array.iterator */ "../node_modules/core-js/library/modules/es6.array.iterator.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var TO_STRING_TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('toStringTag');

var DOMIterables = ('CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,' +
  'DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,' +
  'MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,' +
  'SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,' +
  'TextTrackList,TouchList').split(',');

for (var i = 0; i < DOMIterables.length; i++) {
  var NAME = DOMIterables[i];
  var Collection = global[NAME];
  var proto = Collection && Collection.prototype;
  if (proto && !proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);
  Iterators[NAME] = Iterators.Array;
}


/***/ }),

/***/ "../node_modules/core-js/modules/_a-function.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_a-function.js ***!
  \******************************************************/
/***/ ((module) => {

module.exports = function (it) {
  if (typeof it != 'function') throw TypeError(it + ' is not a function!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_add-to-unscopables.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/modules/_add-to-unscopables.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 22.1.3.31 Array.prototype[@@unscopables]
var UNSCOPABLES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('unscopables');
var ArrayProto = Array.prototype;
if (ArrayProto[UNSCOPABLES] == undefined) __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js")(ArrayProto, UNSCOPABLES, {});
module.exports = function (key) {
  ArrayProto[UNSCOPABLES][key] = true;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_advance-string-index.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_advance-string-index.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var at = __webpack_require__(/*! ./_string-at */ "../node_modules/core-js/modules/_string-at.js")(true);

 // `AdvanceStringIndex` abstract operation
// https://tc39.github.io/ecma262/#sec-advancestringindex
module.exports = function (S, index, unicode) {
  return index + (unicode ? at(S, index).length : 1);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_an-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_an-object.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
module.exports = function (it) {
  if (!isObject(it)) throw TypeError(it + ' is not an object!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-includes.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/_array-includes.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// false -> Array#indexOf
// true  -> Array#includes
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/modules/_to-iobject.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var toAbsoluteIndex = __webpack_require__(/*! ./_to-absolute-index */ "../node_modules/core-js/modules/_to-absolute-index.js");
module.exports = function (IS_INCLUDES) {
  return function ($this, el, fromIndex) {
    var O = toIObject($this);
    var length = toLength(O.length);
    var index = toAbsoluteIndex(fromIndex, length);
    var value;
    // Array#includes uses SameValueZero equality algorithm
    // eslint-disable-next-line no-self-compare
    if (IS_INCLUDES && el != el) while (length > index) {
      value = O[index++];
      // eslint-disable-next-line no-self-compare
      if (value != value) return true;
    // Array#indexOf ignores holes, Array#includes - not
    } else for (;length > index; index++) if (IS_INCLUDES || index in O) {
      if (O[index] === el) return IS_INCLUDES || index || 0;
    } return !IS_INCLUDES && -1;
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-methods.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_array-methods.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 0 -> Array#forEach
// 1 -> Array#map
// 2 -> Array#filter
// 3 -> Array#some
// 4 -> Array#every
// 5 -> Array#find
// 6 -> Array#findIndex
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/modules/_ctx.js");
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/modules/_iobject.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/modules/_to-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var asc = __webpack_require__(/*! ./_array-species-create */ "../node_modules/core-js/modules/_array-species-create.js");
module.exports = function (TYPE, $create) {
  var IS_MAP = TYPE == 1;
  var IS_FILTER = TYPE == 2;
  var IS_SOME = TYPE == 3;
  var IS_EVERY = TYPE == 4;
  var IS_FIND_INDEX = TYPE == 6;
  var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
  var create = $create || asc;
  return function ($this, callbackfn, that) {
    var O = toObject($this);
    var self = IObject(O);
    var f = ctx(callbackfn, that, 3);
    var length = toLength(self.length);
    var index = 0;
    var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;
    var val, res;
    for (;length > index; index++) if (NO_HOLES || index in self) {
      val = self[index];
      res = f(val, index, O);
      if (TYPE) {
        if (IS_MAP) result[index] = res;   // map
        else if (res) switch (TYPE) {
          case 3: return true;             // some
          case 5: return val;              // find
          case 6: return index;            // findIndex
          case 2: result.push(val);        // filter
        } else if (IS_EVERY) return false; // every
      }
    }
    return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-species-constructor.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/modules/_array-species-constructor.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var isArray = __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/modules/_is-array.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('species');

module.exports = function (original) {
  var C;
  if (isArray(original)) {
    C = original.constructor;
    // cross-realm fallback
    if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
    if (isObject(C)) {
      C = C[SPECIES];
      if (C === null) C = undefined;
    }
  } return C === undefined ? Array : C;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-species-create.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_array-species-create.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 9.4.2.3 ArraySpeciesCreate(originalArray, length)
var speciesConstructor = __webpack_require__(/*! ./_array-species-constructor */ "../node_modules/core-js/modules/_array-species-constructor.js");

module.exports = function (original, length) {
  return new (speciesConstructor(original))(length);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_classof.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_classof.js ***!
  \***************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// getting tag from 19.1.3.6 Object.prototype.toString()
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('toStringTag');
// ES3 wrong here
var ARG = cof(function () { return arguments; }()) == 'Arguments';

// fallback for IE11 Script Access Denied error
var tryGet = function (it, key) {
  try {
    return it[key];
  } catch (e) { /* empty */ }
};

module.exports = function (it) {
  var O, T, B;
  return it === undefined ? 'Undefined' : it === null ? 'Null'
    // @@toStringTag case
    : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T
    // builtinTag case
    : ARG ? cof(O)
    // ES3 arguments fallback
    : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_cof.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_cof.js ***!
  \***********************************************/
/***/ ((module) => {

var toString = {}.toString;

module.exports = function (it) {
  return toString.call(it).slice(8, -1);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_core.js":
/*!************************************************!*\
  !*** ../node_modules/core-js/modules/_core.js ***!
  \************************************************/
/***/ ((module) => {

var core = module.exports = { version: '2.6.12' };
if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/modules/_ctx.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_ctx.js ***!
  \***********************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// optional / simple context binding
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/modules/_a-function.js");
module.exports = function (fn, that, length) {
  aFunction(fn);
  if (that === undefined) return fn;
  switch (length) {
    case 1: return function (a) {
      return fn.call(that, a);
    };
    case 2: return function (a, b) {
      return fn.call(that, a, b);
    };
    case 3: return function (a, b, c) {
      return fn.call(that, a, b, c);
    };
  }
  return function (/* ...args */) {
    return fn.apply(that, arguments);
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_defined.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_defined.js ***!
  \***************************************************/
/***/ ((module) => {

// 7.2.1 RequireObjectCoercible(argument)
module.exports = function (it) {
  if (it == undefined) throw TypeError("Can't call method on  " + it);
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_descriptors.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_descriptors.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Thank's IE8 for his funny defineProperty
module.exports = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () {
  return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/modules/_dom-create.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_dom-create.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js").document;
// typeof document.createElement is 'object' in old IE
var is = isObject(document) && isObject(document.createElement);
module.exports = function (it) {
  return is ? document.createElement(it) : {};
};


/***/ }),

/***/ "../node_modules/core-js/modules/_enum-bug-keys.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_enum-bug-keys.js ***!
  \*********************************************************/
/***/ ((module) => {

// IE 8- don't enum bug keys
module.exports = (
  'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
).split(',');


/***/ }),

/***/ "../node_modules/core-js/modules/_export.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_export.js ***!
  \**************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/modules/_ctx.js");
var PROTOTYPE = 'prototype';

var $export = function (type, name, source) {
  var IS_FORCED = type & $export.F;
  var IS_GLOBAL = type & $export.G;
  var IS_STATIC = type & $export.S;
  var IS_PROTO = type & $export.P;
  var IS_BIND = type & $export.B;
  var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE];
  var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
  var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {});
  var key, own, out, exp;
  if (IS_GLOBAL) source = name;
  for (key in source) {
    // contains in native
    own = !IS_FORCED && target && target[key] !== undefined;
    // export native or passed
    out = (own ? target : source)[key];
    // bind timers to global for call from export context
    exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
    // extend global
    if (target) redefine(target, key, out, type & $export.U);
    // export
    if (exports[key] != out) hide(exports, key, exp);
    if (IS_PROTO && expProto[key] != out) expProto[key] = out;
  }
};
global.core = core;
// type bitmap
$export.F = 1;   // forced
$export.G = 2;   // global
$export.S = 4;   // static
$export.P = 8;   // proto
$export.B = 16;  // bind
$export.W = 32;  // wrap
$export.U = 64;  // safe
$export.R = 128; // real proto method for `library`
module.exports = $export;


/***/ }),

/***/ "../node_modules/core-js/modules/_fails-is-regexp.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/_fails-is-regexp.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var MATCH = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('match');
module.exports = function (KEY) {
  var re = /./;
  try {
    '/./'[KEY](re);
  } catch (e) {
    try {
      re[MATCH] = false;
      return !'/./'[KEY](re);
    } catch (f) { /* empty */ }
  } return true;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_fails.js":
/*!*************************************************!*\
  !*** ../node_modules/core-js/modules/_fails.js ***!
  \*************************************************/
/***/ ((module) => {

module.exports = function (exec) {
  try {
    return !!exec();
  } catch (e) {
    return true;
  }
};


/***/ }),

/***/ "../node_modules/core-js/modules/_fix-re-wks.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_fix-re-wks.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

__webpack_require__(/*! ./es6.regexp.exec */ "../node_modules/core-js/modules/es6.regexp.exec.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
var wks = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js");
var regexpExec = __webpack_require__(/*! ./_regexp-exec */ "../node_modules/core-js/modules/_regexp-exec.js");

var SPECIES = wks('species');

var REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {
  // #replace needs built-in support for named groups.
  // #match works fine because it just return the exec results, even if it has
  // a "grops" property.
  var re = /./;
  re.exec = function () {
    var result = [];
    result.groups = { a: '7' };
    return result;
  };
  return ''.replace(re, '$<a>') !== '7';
});

var SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = (function () {
  // Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec
  var re = /(?:)/;
  var originalExec = re.exec;
  re.exec = function () { return originalExec.apply(this, arguments); };
  var result = 'ab'.split(re);
  return result.length === 2 && result[0] === 'a' && result[1] === 'b';
})();

module.exports = function (KEY, length, exec) {
  var SYMBOL = wks(KEY);

  var DELEGATES_TO_SYMBOL = !fails(function () {
    // String methods call symbol-named RegEp methods
    var O = {};
    O[SYMBOL] = function () { return 7; };
    return ''[KEY](O) != 7;
  });

  var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL ? !fails(function () {
    // Symbol-named RegExp methods call .exec
    var execCalled = false;
    var re = /a/;
    re.exec = function () { execCalled = true; return null; };
    if (KEY === 'split') {
      // RegExp[@@split] doesn't call the regex's exec method, but first creates
      // a new one. We need to return the patched regex when creating the new one.
      re.constructor = {};
      re.constructor[SPECIES] = function () { return re; };
    }
    re[SYMBOL]('');
    return !execCalled;
  }) : undefined;

  if (
    !DELEGATES_TO_SYMBOL ||
    !DELEGATES_TO_EXEC ||
    (KEY === 'replace' && !REPLACE_SUPPORTS_NAMED_GROUPS) ||
    (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)
  ) {
    var nativeRegExpMethod = /./[SYMBOL];
    var fns = exec(
      defined,
      SYMBOL,
      ''[KEY],
      function maybeCallNative(nativeMethod, regexp, str, arg2, forceStringMethod) {
        if (regexp.exec === regexpExec) {
          if (DELEGATES_TO_SYMBOL && !forceStringMethod) {
            // The native String method already delegates to @@method (this
            // polyfilled function), leasing to infinite recursion.
            // We avoid it by directly calling the native @@method method.
            return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };
          }
          return { done: true, value: nativeMethod.call(str, regexp, arg2) };
        }
        return { done: false };
      }
    );
    var strfn = fns[0];
    var rxfn = fns[1];

    redefine(String.prototype, KEY, strfn);
    hide(RegExp.prototype, SYMBOL, length == 2
      // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)
      // 21.2.5.11 RegExp.prototype[@@split](string, limit)
      ? function (string, arg) { return rxfn.call(string, this, arg); }
      // 21.2.5.6 RegExp.prototype[@@match](string)
      // 21.2.5.9 RegExp.prototype[@@search](string)
      : function (string) { return rxfn.call(string, this); }
    );
  }
};


/***/ }),

/***/ "../node_modules/core-js/modules/_flags.js":
/*!*************************************************!*\
  !*** ../node_modules/core-js/modules/_flags.js ***!
  \*************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 21.2.5.3 get RegExp.prototype.flags
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
module.exports = function () {
  var that = anObject(this);
  var result = '';
  if (that.global) result += 'g';
  if (that.ignoreCase) result += 'i';
  if (that.multiline) result += 'm';
  if (that.unicode) result += 'u';
  if (that.sticky) result += 'y';
  return result;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_function-to-string.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/modules/_function-to-string.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/modules/_shared.js")('native-function-to-string', Function.toString);


/***/ }),

/***/ "../node_modules/core-js/modules/_global.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_global.js ***!
  \**************************************************/
/***/ ((module) => {

// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
var global = module.exports = typeof window != 'undefined' && window.Math == Math
  ? window : typeof self != 'undefined' && self.Math == Math ? self
  // eslint-disable-next-line no-new-func
  : Function('return this')();
if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/modules/_has.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_has.js ***!
  \***********************************************/
/***/ ((module) => {

var hasOwnProperty = {}.hasOwnProperty;
module.exports = function (it, key) {
  return hasOwnProperty.call(it, key);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_hide.js":
/*!************************************************!*\
  !*** ../node_modules/core-js/modules/_hide.js ***!
  \************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/modules/_property-desc.js");
module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? function (object, key, value) {
  return dP.f(object, key, createDesc(1, value));
} : function (object, key, value) {
  object[key] = value;
  return object;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_html.js":
/*!************************************************!*\
  !*** ../node_modules/core-js/modules/_html.js ***!
  \************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js").document;
module.exports = document && document.documentElement;


/***/ }),

/***/ "../node_modules/core-js/modules/_ie8-dom-define.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/_ie8-dom-define.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") && !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () {
  return Object.defineProperty(__webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/modules/_dom-create.js")('div'), 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/modules/_inherit-if-required.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/modules/_inherit-if-required.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var setPrototypeOf = __webpack_require__(/*! ./_set-proto */ "../node_modules/core-js/modules/_set-proto.js").set;
module.exports = function (that, target, C) {
  var S = target.constructor;
  var P;
  if (S !== C && typeof S == 'function' && (P = S.prototype) !== C.prototype && isObject(P) && setPrototypeOf) {
    setPrototypeOf(that, P);
  } return that;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_iobject.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_iobject.js ***!
  \***************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// fallback for non-array-like ES3 and non-enumerable old V8 strings
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
// eslint-disable-next-line no-prototype-builtins
module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
  return cof(it) == 'String' ? it.split('') : Object(it);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_is-array.js":
/*!****************************************************!*\
  !*** ../node_modules/core-js/modules/_is-array.js ***!
  \****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.2.2 IsArray(argument)
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
module.exports = Array.isArray || function isArray(arg) {
  return cof(arg) == 'Array';
};


/***/ }),

/***/ "../node_modules/core-js/modules/_is-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_is-object.js ***!
  \*****************************************************/
/***/ ((module) => {

module.exports = function (it) {
  return typeof it === 'object' ? it !== null : typeof it === 'function';
};


/***/ }),

/***/ "../node_modules/core-js/modules/_is-regexp.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_is-regexp.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.2.8 IsRegExp(argument)
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
var MATCH = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('match');
module.exports = function (it) {
  var isRegExp;
  return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp');
};


/***/ }),

/***/ "../node_modules/core-js/modules/_iter-create.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_iter-create.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/modules/_object-create.js");
var descriptor = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/modules/_property-desc.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/modules/_set-to-string-tag.js");
var IteratorPrototype = {};

// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
__webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js")(IteratorPrototype, __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('iterator'), function () { return this; });

module.exports = function (Constructor, NAME, next) {
  Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });
  setToStringTag(Constructor, NAME + ' Iterator');
};


/***/ }),

/***/ "../node_modules/core-js/modules/_iter-define.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_iter-define.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/modules/_library.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/modules/_iterators.js");
var $iterCreate = __webpack_require__(/*! ./_iter-create */ "../node_modules/core-js/modules/_iter-create.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/modules/_set-to-string-tag.js");
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/modules/_object-gpo.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('iterator');
var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`
var FF_ITERATOR = '@@iterator';
var KEYS = 'keys';
var VALUES = 'values';

var returnThis = function () { return this; };

module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {
  $iterCreate(Constructor, NAME, next);
  var getMethod = function (kind) {
    if (!BUGGY && kind in proto) return proto[kind];
    switch (kind) {
      case KEYS: return function keys() { return new Constructor(this, kind); };
      case VALUES: return function values() { return new Constructor(this, kind); };
    } return function entries() { return new Constructor(this, kind); };
  };
  var TAG = NAME + ' Iterator';
  var DEF_VALUES = DEFAULT == VALUES;
  var VALUES_BUG = false;
  var proto = Base.prototype;
  var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];
  var $default = $native || getMethod(DEFAULT);
  var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;
  var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;
  var methods, key, IteratorPrototype;
  // Fix native
  if ($anyNative) {
    IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));
    if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {
      // Set @@toStringTag to native iterators
      setToStringTag(IteratorPrototype, TAG, true);
      // fix for some old engines
      if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);
    }
  }
  // fix Array#{values, @@iterator}.name in V8 / FF
  if (DEF_VALUES && $native && $native.name !== VALUES) {
    VALUES_BUG = true;
    $default = function values() { return $native.call(this); };
  }
  // Define iterator
  if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {
    hide(proto, ITERATOR, $default);
  }
  // Plug for library
  Iterators[NAME] = $default;
  Iterators[TAG] = returnThis;
  if (DEFAULT) {
    methods = {
      values: DEF_VALUES ? $default : getMethod(VALUES),
      keys: IS_SET ? $default : getMethod(KEYS),
      entries: $entries
    };
    if (FORCED) for (key in methods) {
      if (!(key in proto)) redefine(proto, key, methods[key]);
    } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
  }
  return methods;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_iter-step.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_iter-step.js ***!
  \*****************************************************/
/***/ ((module) => {

module.exports = function (done, value) {
  return { value: value, done: !!done };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_iterators.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_iterators.js ***!
  \*****************************************************/
/***/ ((module) => {

module.exports = {};


/***/ }),

/***/ "../node_modules/core-js/modules/_library.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_library.js ***!
  \***************************************************/
/***/ ((module) => {

module.exports = false;


/***/ }),

/***/ "../node_modules/core-js/modules/_object-create.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_object-create.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var dPs = __webpack_require__(/*! ./_object-dps */ "../node_modules/core-js/modules/_object-dps.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/modules/_enum-bug-keys.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/modules/_shared-key.js")('IE_PROTO');
var Empty = function () { /* empty */ };
var PROTOTYPE = 'prototype';

// Create object with fake `null` prototype: use iframe Object with cleared prototype
var createDict = function () {
  // Thrash, waste and sodomy: IE GC bug
  var iframe = __webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/modules/_dom-create.js")('iframe');
  var i = enumBugKeys.length;
  var lt = '<';
  var gt = '>';
  var iframeDocument;
  iframe.style.display = 'none';
  __webpack_require__(/*! ./_html */ "../node_modules/core-js/modules/_html.js").appendChild(iframe);
  iframe.src = 'javascript:'; // eslint-disable-line no-script-url
  // createDict = iframe.contentWindow.Object;
  // html.removeChild(iframe);
  iframeDocument = iframe.contentWindow.document;
  iframeDocument.open();
  iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);
  iframeDocument.close();
  createDict = iframeDocument.F;
  while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];
  return createDict();
};

module.exports = Object.create || function create(O, Properties) {
  var result;
  if (O !== null) {
    Empty[PROTOTYPE] = anObject(O);
    result = new Empty();
    Empty[PROTOTYPE] = null;
    // add "__proto__" for Object.getPrototypeOf polyfill
    result[IE_PROTO] = O;
  } else result = createDict();
  return Properties === undefined ? result : dPs(result, Properties);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-dp.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_object-dp.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/modules/_ie8-dom-define.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/modules/_to-primitive.js");
var dP = Object.defineProperty;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? Object.defineProperty : function defineProperty(O, P, Attributes) {
  anObject(O);
  P = toPrimitive(P, true);
  anObject(Attributes);
  if (IE8_DOM_DEFINE) try {
    return dP(O, P, Attributes);
  } catch (e) { /* empty */ }
  if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
  if ('value' in Attributes) O[P] = Attributes.value;
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-dps.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_object-dps.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/modules/_object-keys.js");

module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? Object.defineProperties : function defineProperties(O, Properties) {
  anObject(O);
  var keys = getKeys(Properties);
  var length = keys.length;
  var i = 0;
  var P;
  while (length > i) dP.f(O, P = keys[i++], Properties[P]);
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-gopd.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_object-gopd.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/modules/_object-pie.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/modules/_property-desc.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/modules/_to-iobject.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/modules/_to-primitive.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/modules/_ie8-dom-define.js");
var gOPD = Object.getOwnPropertyDescriptor;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? gOPD : function getOwnPropertyDescriptor(O, P) {
  O = toIObject(O);
  P = toPrimitive(P, true);
  if (IE8_DOM_DEFINE) try {
    return gOPD(O, P);
  } catch (e) { /* empty */ }
  if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-gopn.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_object-gopn.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)
var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/modules/_object-keys-internal.js");
var hiddenKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/modules/_enum-bug-keys.js").concat('length', 'prototype');

exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
  return $keys(O, hiddenKeys);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-gpo.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_object-gpo.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/modules/_to-object.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/modules/_shared-key.js")('IE_PROTO');
var ObjectProto = Object.prototype;

module.exports = Object.getPrototypeOf || function (O) {
  O = toObject(O);
  if (has(O, IE_PROTO)) return O[IE_PROTO];
  if (typeof O.constructor == 'function' && O instanceof O.constructor) {
    return O.constructor.prototype;
  } return O instanceof Object ? ObjectProto : null;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-keys-internal.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_object-keys-internal.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/modules/_to-iobject.js");
var arrayIndexOf = __webpack_require__(/*! ./_array-includes */ "../node_modules/core-js/modules/_array-includes.js")(false);
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/modules/_shared-key.js")('IE_PROTO');

module.exports = function (object, names) {
  var O = toIObject(object);
  var i = 0;
  var result = [];
  var key;
  for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);
  // Don't enum bug & hidden keys
  while (names.length > i) if (has(O, key = names[i++])) {
    ~arrayIndexOf(result, key) || result.push(key);
  }
  return result;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-keys.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_object-keys.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.14 / 15.2.3.14 Object.keys(O)
var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/modules/_object-keys-internal.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/modules/_enum-bug-keys.js");

module.exports = Object.keys || function keys(O) {
  return $keys(O, enumBugKeys);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-pie.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_object-pie.js ***!
  \******************************************************/
/***/ ((__unused_webpack_module, exports) => {

exports.f = {}.propertyIsEnumerable;


/***/ }),

/***/ "../node_modules/core-js/modules/_property-desc.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_property-desc.js ***!
  \*********************************************************/
/***/ ((module) => {

module.exports = function (bitmap, value) {
  return {
    enumerable: !(bitmap & 1),
    configurable: !(bitmap & 2),
    writable: !(bitmap & 4),
    value: value
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_redefine.js":
/*!****************************************************!*\
  !*** ../node_modules/core-js/modules/_redefine.js ***!
  \****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var SRC = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/modules/_uid.js")('src');
var $toString = __webpack_require__(/*! ./_function-to-string */ "../node_modules/core-js/modules/_function-to-string.js");
var TO_STRING = 'toString';
var TPL = ('' + $toString).split(TO_STRING);

__webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js").inspectSource = function (it) {
  return $toString.call(it);
};

(module.exports = function (O, key, val, safe) {
  var isFunction = typeof val == 'function';
  if (isFunction) has(val, 'name') || hide(val, 'name', key);
  if (O[key] === val) return;
  if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));
  if (O === global) {
    O[key] = val;
  } else if (!safe) {
    delete O[key];
    hide(O, key, val);
  } else if (O[key]) {
    O[key] = val;
  } else {
    hide(O, key, val);
  }
// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
})(Function.prototype, TO_STRING, function toString() {
  return typeof this == 'function' && this[SRC] || $toString.call(this);
});


/***/ }),

/***/ "../node_modules/core-js/modules/_regexp-exec-abstract.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_regexp-exec-abstract.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/modules/_classof.js");
var builtinExec = RegExp.prototype.exec;

 // `RegExpExec` abstract operation
// https://tc39.github.io/ecma262/#sec-regexpexec
module.exports = function (R, S) {
  var exec = R.exec;
  if (typeof exec === 'function') {
    var result = exec.call(R, S);
    if (typeof result !== 'object') {
      throw new TypeError('RegExp exec method returned something other than an Object or null');
    }
    return result;
  }
  if (classof(R) !== 'RegExp') {
    throw new TypeError('RegExp#exec called on incompatible receiver');
  }
  return builtinExec.call(R, S);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_regexp-exec.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_regexp-exec.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var regexpFlags = __webpack_require__(/*! ./_flags */ "../node_modules/core-js/modules/_flags.js");

var nativeExec = RegExp.prototype.exec;
// This always refers to the native implementation, because the
// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,
// which loads this file before patching the method.
var nativeReplace = String.prototype.replace;

var patchedExec = nativeExec;

var LAST_INDEX = 'lastIndex';

var UPDATES_LAST_INDEX_WRONG = (function () {
  var re1 = /a/,
      re2 = /b*/g;
  nativeExec.call(re1, 'a');
  nativeExec.call(re2, 'a');
  return re1[LAST_INDEX] !== 0 || re2[LAST_INDEX] !== 0;
})();

// nonparticipating capturing group, copied from es5-shim's String#split patch.
var NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;

var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED;

if (PATCH) {
  patchedExec = function exec(str) {
    var re = this;
    var lastIndex, reCopy, match, i;

    if (NPCG_INCLUDED) {
      reCopy = new RegExp('^' + re.source + '$(?!\\s)', regexpFlags.call(re));
    }
    if (UPDATES_LAST_INDEX_WRONG) lastIndex = re[LAST_INDEX];

    match = nativeExec.call(re, str);

    if (UPDATES_LAST_INDEX_WRONG && match) {
      re[LAST_INDEX] = re.global ? match.index + match[0].length : lastIndex;
    }
    if (NPCG_INCLUDED && match && match.length > 1) {
      // Fix browsers whose `exec` methods don't consistently return `undefined`
      // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/
      // eslint-disable-next-line no-loop-func
      nativeReplace.call(match[0], reCopy, function () {
        for (i = 1; i < arguments.length - 2; i++) {
          if (arguments[i] === undefined) match[i] = undefined;
        }
      });
    }

    return match;
  };
}

module.exports = patchedExec;


/***/ }),

/***/ "../node_modules/core-js/modules/_set-proto.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_set-proto.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Works with __proto__ only. Old v8 can't work with null proto objects.
/* eslint-disable no-proto */
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var check = function (O, proto) {
  anObject(O);
  if (!isObject(proto) && proto !== null) throw TypeError(proto + ": can't set as prototype!");
};
module.exports = {
  set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line
    function (test, buggy, set) {
      try {
        set = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/modules/_ctx.js")(Function.call, __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/modules/_object-gopd.js").f(Object.prototype, '__proto__').set, 2);
        set(test, []);
        buggy = !(test instanceof Array);
      } catch (e) { buggy = true; }
      return function setPrototypeOf(O, proto) {
        check(O, proto);
        if (buggy) O.__proto__ = proto;
        else set(O, proto);
        return O;
      };
    }({}, false) : undefined),
  check: check
};


/***/ }),

/***/ "../node_modules/core-js/modules/_set-species.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_set-species.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js");
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('species');

module.exports = function (KEY) {
  var C = global[KEY];
  if (DESCRIPTORS && C && !C[SPECIES]) dP.f(C, SPECIES, {
    configurable: true,
    get: function () { return this; }
  });
};


/***/ }),

/***/ "../node_modules/core-js/modules/_set-to-string-tag.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/_set-to-string-tag.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var def = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js").f;
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('toStringTag');

module.exports = function (it, tag, stat) {
  if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });
};


/***/ }),

/***/ "../node_modules/core-js/modules/_shared-key.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_shared-key.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var shared = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/modules/_shared.js")('keys');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/modules/_uid.js");
module.exports = function (key) {
  return shared[key] || (shared[key] = uid(key));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_shared.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_shared.js ***!
  \**************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var SHARED = '__core-js_shared__';
var store = global[SHARED] || (global[SHARED] = {});

(module.exports = function (key, value) {
  return store[key] || (store[key] = value !== undefined ? value : {});
})('versions', []).push({
  version: core.version,
  mode: __webpack_require__(/*! ./_library */ "../node_modules/core-js/modules/_library.js") ? 'pure' : 'global',
  copyright: '© 2020 Denis Pushkarev (zloirock.ru)'
});


/***/ }),

/***/ "../node_modules/core-js/modules/_species-constructor.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/modules/_species-constructor.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.3.20 SpeciesConstructor(O, defaultConstructor)
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/modules/_a-function.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('species');
module.exports = function (O, D) {
  var C = anObject(O).constructor;
  var S;
  return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_strict-method.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_strict-method.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js");

module.exports = function (method, arg) {
  return !!method && fails(function () {
    // eslint-disable-next-line no-useless-call
    arg ? method.call(null, function () { /* empty */ }, 1) : method.call(null);
  });
};


/***/ }),

/***/ "../node_modules/core-js/modules/_string-at.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_string-at.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
// true  -> String#at
// false -> String#codePointAt
module.exports = function (TO_STRING) {
  return function (that, pos) {
    var s = String(defined(that));
    var i = toInteger(pos);
    var l = s.length;
    var a, b;
    if (i < 0 || i >= l) return TO_STRING ? '' : undefined;
    a = s.charCodeAt(i);
    return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
      ? TO_STRING ? s.charAt(i) : a
      : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_string-context.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/_string-context.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// helper for String#{startsWith, endsWith, includes}
var isRegExp = __webpack_require__(/*! ./_is-regexp */ "../node_modules/core-js/modules/_is-regexp.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");

module.exports = function (that, searchString, NAME) {
  if (isRegExp(searchString)) throw TypeError('String#' + NAME + " doesn't accept regex!");
  return String(defined(that));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-absolute-index.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/_to-absolute-index.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var max = Math.max;
var min = Math.min;
module.exports = function (index, length) {
  index = toInteger(index);
  return index < 0 ? max(index + length, 0) : min(index, length);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-integer.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_to-integer.js ***!
  \******************************************************/
/***/ ((module) => {

// 7.1.4 ToInteger
var ceil = Math.ceil;
var floor = Math.floor;
module.exports = function (it) {
  return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-iobject.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_to-iobject.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// to indexed object, toObject with fallback for non-array-like ES3 strings
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/modules/_iobject.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
module.exports = function (it) {
  return IObject(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-length.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_to-length.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.15 ToLength
var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var min = Math.min;
module.exports = function (it) {
  return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_to-object.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.13 ToObject(argument)
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
module.exports = function (it) {
  return Object(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-primitive.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/modules/_to-primitive.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.1 ToPrimitive(input [, PreferredType])
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
// instead of the ES6 spec version, we didn't implement @@toPrimitive case
// and the second argument - flag - preferred type is a string
module.exports = function (it, S) {
  if (!isObject(it)) return it;
  var fn, val;
  if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
  if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  throw TypeError("Can't convert object to primitive value");
};


/***/ }),

/***/ "../node_modules/core-js/modules/_uid.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_uid.js ***!
  \***********************************************/
/***/ ((module) => {

var id = 0;
var px = Math.random();
module.exports = function (key) {
  return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_wks.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_wks.js ***!
  \***********************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var store = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/modules/_shared.js")('wks');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/modules/_uid.js");
var Symbol = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js").Symbol;
var USE_SYMBOL = typeof Symbol == 'function';

var $exports = module.exports = function (name) {
  return store[name] || (store[name] =
    USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
};

$exports.store = store;


/***/ }),

/***/ "../node_modules/core-js/modules/es6.array.filter.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.array.filter.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var $filter = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/modules/_array-methods.js")(2);

$export($export.P + $export.F * !__webpack_require__(/*! ./_strict-method */ "../node_modules/core-js/modules/_strict-method.js")([].filter, true), 'Array', {
  // 22.1.3.7 / 15.4.4.20 Array.prototype.filter(callbackfn [, thisArg])
  filter: function filter(callbackfn /* , thisArg */) {
    return $filter(this, callbackfn, arguments[1]);
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.array.find-index.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.array.find-index.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 22.1.3.9 Array.prototype.findIndex(predicate, thisArg = undefined)
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var $find = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/modules/_array-methods.js")(6);
var KEY = 'findIndex';
var forced = true;
// Shouldn't skip holes
if (KEY in []) Array(1)[KEY](function () { forced = false; });
$export($export.P + $export.F * forced, 'Array', {
  findIndex: function findIndex(callbackfn /* , that = undefined */) {
    return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
  }
});
__webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/modules/_add-to-unscopables.js")(KEY);


/***/ }),

/***/ "../node_modules/core-js/modules/es6.array.find.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.array.find.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 22.1.3.8 Array.prototype.find(predicate, thisArg = undefined)
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var $find = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/modules/_array-methods.js")(5);
var KEY = 'find';
var forced = true;
// Shouldn't skip holes
if (KEY in []) Array(1)[KEY](function () { forced = false; });
$export($export.P + $export.F * forced, 'Array', {
  find: function find(callbackfn /* , that = undefined */) {
    return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
  }
});
__webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/modules/_add-to-unscopables.js")(KEY);


/***/ }),

/***/ "../node_modules/core-js/modules/es6.array.iterator.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.array.iterator.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var addToUnscopables = __webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/modules/_add-to-unscopables.js");
var step = __webpack_require__(/*! ./_iter-step */ "../node_modules/core-js/modules/_iter-step.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/modules/_iterators.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/modules/_to-iobject.js");

// 22.1.3.4 Array.prototype.entries()
// 22.1.3.13 Array.prototype.keys()
// 22.1.3.29 Array.prototype.values()
// 22.1.3.30 Array.prototype[@@iterator]()
module.exports = __webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/modules/_iter-define.js")(Array, 'Array', function (iterated, kind) {
  this._t = toIObject(iterated); // target
  this._i = 0;                   // next index
  this._k = kind;                // kind
// 22.1.5.2.1 %ArrayIteratorPrototype%.next()
}, function () {
  var O = this._t;
  var kind = this._k;
  var index = this._i++;
  if (!O || index >= O.length) {
    this._t = undefined;
    return step(1);
  }
  if (kind == 'keys') return step(0, index);
  if (kind == 'values') return step(0, O[index]);
  return step(0, [index, O[index]]);
}, 'values');

// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
Iterators.Arguments = Iterators.Array;

addToUnscopables('keys');
addToUnscopables('values');
addToUnscopables('entries');


/***/ }),

/***/ "../node_modules/core-js/modules/es6.array.map.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.array.map.js ***!
  \********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var $map = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/modules/_array-methods.js")(1);

$export($export.P + $export.F * !__webpack_require__(/*! ./_strict-method */ "../node_modules/core-js/modules/_strict-method.js")([].map, true), 'Array', {
  // 22.1.3.15 / 15.4.4.19 Array.prototype.map(callbackfn [, thisArg])
  map: function map(callbackfn /* , thisArg */) {
    return $map(this, callbackfn, arguments[1]);
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.function.name.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.function.name.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js").f;
var FProto = Function.prototype;
var nameRE = /^\s*function ([^ (]*)/;
var NAME = 'name';

// 19.2.4.2 name
NAME in FProto || __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") && dP(FProto, NAME, {
  configurable: true,
  get: function () {
    try {
      return ('' + this).match(nameRE)[1];
    } catch (e) {
      return '';
    }
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.object.to-string.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.object.to-string.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 19.1.3.6 Object.prototype.toString()
var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/modules/_classof.js");
var test = {};
test[__webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('toStringTag')] = 'z';
if (test + '' != '[object z]') {
  __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js")(Object.prototype, 'toString', function toString() {
    return '[object ' + classof(this) + ']';
  }, true);
}


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.constructor.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.constructor.js ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var inheritIfRequired = __webpack_require__(/*! ./_inherit-if-required */ "../node_modules/core-js/modules/_inherit-if-required.js");
var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js").f;
var gOPN = __webpack_require__(/*! ./_object-gopn */ "../node_modules/core-js/modules/_object-gopn.js").f;
var isRegExp = __webpack_require__(/*! ./_is-regexp */ "../node_modules/core-js/modules/_is-regexp.js");
var $flags = __webpack_require__(/*! ./_flags */ "../node_modules/core-js/modules/_flags.js");
var $RegExp = global.RegExp;
var Base = $RegExp;
var proto = $RegExp.prototype;
var re1 = /a/g;
var re2 = /a/g;
// "new" creates a new object, old webkit buggy here
var CORRECT_NEW = new $RegExp(re1) !== re1;

if (__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") && (!CORRECT_NEW || __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () {
  re2[__webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('match')] = false;
  // RegExp constructor can alter flags and IsRegExp works correct with @@match
  return $RegExp(re1) != re1 || $RegExp(re2) == re2 || $RegExp(re1, 'i') != '/a/i';
}))) {
  $RegExp = function RegExp(p, f) {
    var tiRE = this instanceof $RegExp;
    var piRE = isRegExp(p);
    var fiU = f === undefined;
    return !tiRE && piRE && p.constructor === $RegExp && fiU ? p
      : inheritIfRequired(CORRECT_NEW
        ? new Base(piRE && !fiU ? p.source : p, f)
        : Base((piRE = p instanceof $RegExp) ? p.source : p, piRE && fiU ? $flags.call(p) : f)
      , tiRE ? this : proto, $RegExp);
  };
  var proxy = function (key) {
    key in $RegExp || dP($RegExp, key, {
      configurable: true,
      get: function () { return Base[key]; },
      set: function (it) { Base[key] = it; }
    });
  };
  for (var keys = gOPN(Base), i = 0; keys.length > i;) proxy(keys[i++]);
  proto.constructor = $RegExp;
  $RegExp.prototype = proto;
  __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js")(global, 'RegExp', $RegExp);
}

__webpack_require__(/*! ./_set-species */ "../node_modules/core-js/modules/_set-species.js")('RegExp');


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.exec.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.exec.js ***!
  \**********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var regexpExec = __webpack_require__(/*! ./_regexp-exec */ "../node_modules/core-js/modules/_regexp-exec.js");
__webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js")({
  target: 'RegExp',
  proto: true,
  forced: regexpExec !== /./.exec
}, {
  exec: regexpExec
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.flags.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.flags.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 21.2.5.3 get RegExp.prototype.flags()
if (__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") && /./g.flags != 'g') __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js").f(RegExp.prototype, 'flags', {
  configurable: true,
  get: __webpack_require__(/*! ./_flags */ "../node_modules/core-js/modules/_flags.js")
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.match.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.match.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var advanceStringIndex = __webpack_require__(/*! ./_advance-string-index */ "../node_modules/core-js/modules/_advance-string-index.js");
var regExpExec = __webpack_require__(/*! ./_regexp-exec-abstract */ "../node_modules/core-js/modules/_regexp-exec-abstract.js");

// @@match logic
__webpack_require__(/*! ./_fix-re-wks */ "../node_modules/core-js/modules/_fix-re-wks.js")('match', 1, function (defined, MATCH, $match, maybeCallNative) {
  return [
    // `String.prototype.match` method
    // https://tc39.github.io/ecma262/#sec-string.prototype.match
    function match(regexp) {
      var O = defined(this);
      var fn = regexp == undefined ? undefined : regexp[MATCH];
      return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));
    },
    // `RegExp.prototype[@@match]` method
    // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match
    function (regexp) {
      var res = maybeCallNative($match, regexp, this);
      if (res.done) return res.value;
      var rx = anObject(regexp);
      var S = String(this);
      if (!rx.global) return regExpExec(rx, S);
      var fullUnicode = rx.unicode;
      rx.lastIndex = 0;
      var A = [];
      var n = 0;
      var result;
      while ((result = regExpExec(rx, S)) !== null) {
        var matchStr = String(result[0]);
        A[n] = matchStr;
        if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
        n++;
      }
      return n === 0 ? null : A;
    }
  ];
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.replace.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.replace.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/modules/_to-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var advanceStringIndex = __webpack_require__(/*! ./_advance-string-index */ "../node_modules/core-js/modules/_advance-string-index.js");
var regExpExec = __webpack_require__(/*! ./_regexp-exec-abstract */ "../node_modules/core-js/modules/_regexp-exec-abstract.js");
var max = Math.max;
var min = Math.min;
var floor = Math.floor;
var SUBSTITUTION_SYMBOLS = /\$([$&`']|\d\d?|<[^>]*>)/g;
var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&`']|\d\d?)/g;

var maybeToString = function (it) {
  return it === undefined ? it : String(it);
};

// @@replace logic
__webpack_require__(/*! ./_fix-re-wks */ "../node_modules/core-js/modules/_fix-re-wks.js")('replace', 2, function (defined, REPLACE, $replace, maybeCallNative) {
  return [
    // `String.prototype.replace` method
    // https://tc39.github.io/ecma262/#sec-string.prototype.replace
    function replace(searchValue, replaceValue) {
      var O = defined(this);
      var fn = searchValue == undefined ? undefined : searchValue[REPLACE];
      return fn !== undefined
        ? fn.call(searchValue, O, replaceValue)
        : $replace.call(String(O), searchValue, replaceValue);
    },
    // `RegExp.prototype[@@replace]` method
    // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace
    function (regexp, replaceValue) {
      var res = maybeCallNative($replace, regexp, this, replaceValue);
      if (res.done) return res.value;

      var rx = anObject(regexp);
      var S = String(this);
      var functionalReplace = typeof replaceValue === 'function';
      if (!functionalReplace) replaceValue = String(replaceValue);
      var global = rx.global;
      if (global) {
        var fullUnicode = rx.unicode;
        rx.lastIndex = 0;
      }
      var results = [];
      while (true) {
        var result = regExpExec(rx, S);
        if (result === null) break;
        results.push(result);
        if (!global) break;
        var matchStr = String(result[0]);
        if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
      }
      var accumulatedResult = '';
      var nextSourcePosition = 0;
      for (var i = 0; i < results.length; i++) {
        result = results[i];
        var matched = String(result[0]);
        var position = max(min(toInteger(result.index), S.length), 0);
        var captures = [];
        // NOTE: This is equivalent to
        //   captures = result.slice(1).map(maybeToString)
        // but for some reason `nativeSlice.call(result, 1, result.length)` (called in
        // the slice polyfill when slicing native arrays) "doesn't work" in safari 9 and
        // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.
        for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));
        var namedCaptures = result.groups;
        if (functionalReplace) {
          var replacerArgs = [matched].concat(captures, position, S);
          if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);
          var replacement = String(replaceValue.apply(undefined, replacerArgs));
        } else {
          replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);
        }
        if (position >= nextSourcePosition) {
          accumulatedResult += S.slice(nextSourcePosition, position) + replacement;
          nextSourcePosition = position + matched.length;
        }
      }
      return accumulatedResult + S.slice(nextSourcePosition);
    }
  ];

    // https://tc39.github.io/ecma262/#sec-getsubstitution
  function getSubstitution(matched, str, position, captures, namedCaptures, replacement) {
    var tailPos = position + matched.length;
    var m = captures.length;
    var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;
    if (namedCaptures !== undefined) {
      namedCaptures = toObject(namedCaptures);
      symbols = SUBSTITUTION_SYMBOLS;
    }
    return $replace.call(replacement, symbols, function (match, ch) {
      var capture;
      switch (ch.charAt(0)) {
        case '$': return '$';
        case '&': return matched;
        case '`': return str.slice(0, position);
        case "'": return str.slice(tailPos);
        case '<':
          capture = namedCaptures[ch.slice(1, -1)];
          break;
        default: // \d\d?
          var n = +ch;
          if (n === 0) return match;
          if (n > m) {
            var f = floor(n / 10);
            if (f === 0) return match;
            if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);
            return match;
          }
          capture = captures[n - 1];
      }
      return capture === undefined ? '' : capture;
    });
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.split.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.split.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var isRegExp = __webpack_require__(/*! ./_is-regexp */ "../node_modules/core-js/modules/_is-regexp.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var speciesConstructor = __webpack_require__(/*! ./_species-constructor */ "../node_modules/core-js/modules/_species-constructor.js");
var advanceStringIndex = __webpack_require__(/*! ./_advance-string-index */ "../node_modules/core-js/modules/_advance-string-index.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var callRegExpExec = __webpack_require__(/*! ./_regexp-exec-abstract */ "../node_modules/core-js/modules/_regexp-exec-abstract.js");
var regexpExec = __webpack_require__(/*! ./_regexp-exec */ "../node_modules/core-js/modules/_regexp-exec.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js");
var $min = Math.min;
var $push = [].push;
var $SPLIT = 'split';
var LENGTH = 'length';
var LAST_INDEX = 'lastIndex';
var MAX_UINT32 = 0xffffffff;

// babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError
var SUPPORTS_Y = !fails(function () { RegExp(MAX_UINT32, 'y'); });

// @@split logic
__webpack_require__(/*! ./_fix-re-wks */ "../node_modules/core-js/modules/_fix-re-wks.js")('split', 2, function (defined, SPLIT, $split, maybeCallNative) {
  var internalSplit;
  if (
    'abbc'[$SPLIT](/(b)*/)[1] == 'c' ||
    'test'[$SPLIT](/(?:)/, -1)[LENGTH] != 4 ||
    'ab'[$SPLIT](/(?:ab)*/)[LENGTH] != 2 ||
    '.'[$SPLIT](/(.?)(.?)/)[LENGTH] != 4 ||
    '.'[$SPLIT](/()()/)[LENGTH] > 1 ||
    ''[$SPLIT](/.?/)[LENGTH]
  ) {
    // based on es5-shim implementation, need to rework it
    internalSplit = function (separator, limit) {
      var string = String(this);
      if (separator === undefined && limit === 0) return [];
      // If `separator` is not a regex, use native split
      if (!isRegExp(separator)) return $split.call(string, separator, limit);
      var output = [];
      var flags = (separator.ignoreCase ? 'i' : '') +
                  (separator.multiline ? 'm' : '') +
                  (separator.unicode ? 'u' : '') +
                  (separator.sticky ? 'y' : '');
      var lastLastIndex = 0;
      var splitLimit = limit === undefined ? MAX_UINT32 : limit >>> 0;
      // Make `global` and avoid `lastIndex` issues by working with a copy
      var separatorCopy = new RegExp(separator.source, flags + 'g');
      var match, lastIndex, lastLength;
      while (match = regexpExec.call(separatorCopy, string)) {
        lastIndex = separatorCopy[LAST_INDEX];
        if (lastIndex > lastLastIndex) {
          output.push(string.slice(lastLastIndex, match.index));
          if (match[LENGTH] > 1 && match.index < string[LENGTH]) $push.apply(output, match.slice(1));
          lastLength = match[0][LENGTH];
          lastLastIndex = lastIndex;
          if (output[LENGTH] >= splitLimit) break;
        }
        if (separatorCopy[LAST_INDEX] === match.index) separatorCopy[LAST_INDEX]++; // Avoid an infinite loop
      }
      if (lastLastIndex === string[LENGTH]) {
        if (lastLength || !separatorCopy.test('')) output.push('');
      } else output.push(string.slice(lastLastIndex));
      return output[LENGTH] > splitLimit ? output.slice(0, splitLimit) : output;
    };
  // Chakra, V8
  } else if ('0'[$SPLIT](undefined, 0)[LENGTH]) {
    internalSplit = function (separator, limit) {
      return separator === undefined && limit === 0 ? [] : $split.call(this, separator, limit);
    };
  } else {
    internalSplit = $split;
  }

  return [
    // `String.prototype.split` method
    // https://tc39.github.io/ecma262/#sec-string.prototype.split
    function split(separator, limit) {
      var O = defined(this);
      var splitter = separator == undefined ? undefined : separator[SPLIT];
      return splitter !== undefined
        ? splitter.call(separator, O, limit)
        : internalSplit.call(String(O), separator, limit);
    },
    // `RegExp.prototype[@@split]` method
    // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@split
    //
    // NOTE: This cannot be properly polyfilled in engines that don't support
    // the 'y' flag.
    function (regexp, limit) {
      var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== $split);
      if (res.done) return res.value;

      var rx = anObject(regexp);
      var S = String(this);
      var C = speciesConstructor(rx, RegExp);

      var unicodeMatching = rx.unicode;
      var flags = (rx.ignoreCase ? 'i' : '') +
                  (rx.multiline ? 'm' : '') +
                  (rx.unicode ? 'u' : '') +
                  (SUPPORTS_Y ? 'y' : 'g');

      // ^(? + rx + ) is needed, in combination with some S slicing, to
      // simulate the 'y' flag.
      var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags);
      var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;
      if (lim === 0) return [];
      if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];
      var p = 0;
      var q = 0;
      var A = [];
      while (q < S.length) {
        splitter.lastIndex = SUPPORTS_Y ? q : 0;
        var z = callRegExpExec(splitter, SUPPORTS_Y ? S : S.slice(q));
        var e;
        if (
          z === null ||
          (e = $min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p
        ) {
          q = advanceStringIndex(S, q, unicodeMatching);
        } else {
          A.push(S.slice(p, q));
          if (A.length === lim) return A;
          for (var i = 1; i <= z.length - 1; i++) {
            A.push(z[i]);
            if (A.length === lim) return A;
          }
          q = p = e;
        }
      }
      A.push(S.slice(p));
      return A;
    }
  ];
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.to-string.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.to-string.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

__webpack_require__(/*! ./es6.regexp.flags */ "../node_modules/core-js/modules/es6.regexp.flags.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var $flags = __webpack_require__(/*! ./_flags */ "../node_modules/core-js/modules/_flags.js");
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js");
var TO_STRING = 'toString';
var $toString = /./[TO_STRING];

var define = function (fn) {
  __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js")(RegExp.prototype, TO_STRING, fn, true);
};

// 21.2.5.14 RegExp.prototype.toString()
if (__webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () { return $toString.call({ source: 'a', flags: 'b' }) != '/a/b'; })) {
  define(function toString() {
    var R = anObject(this);
    return '/'.concat(R.source, '/',
      'flags' in R ? R.flags : !DESCRIPTORS && R instanceof RegExp ? $flags.call(R) : undefined);
  });
// FF44- RegExp#toString has a wrong name
} else if ($toString.name != TO_STRING) {
  define(function toString() {
    return $toString.call(this);
  });
}


/***/ }),

/***/ "../node_modules/core-js/modules/es6.string.includes.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.string.includes.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
// 21.1.3.7 String.prototype.includes(searchString, position = 0)

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var context = __webpack_require__(/*! ./_string-context */ "../node_modules/core-js/modules/_string-context.js");
var INCLUDES = 'includes';

$export($export.P + $export.F * __webpack_require__(/*! ./_fails-is-regexp */ "../node_modules/core-js/modules/_fails-is-regexp.js")(INCLUDES), 'String', {
  includes: function includes(searchString /* , position = 0 */) {
    return !!~context(this, searchString, INCLUDES)
      .indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined);
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.string.iterator.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.string.iterator.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $at = __webpack_require__(/*! ./_string-at */ "../node_modules/core-js/modules/_string-at.js")(true);

// 21.1.3.27 String.prototype[@@iterator]()
__webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/modules/_iter-define.js")(String, 'String', function (iterated) {
  this._t = String(iterated); // target
  this._i = 0;                // next index
// 21.1.5.2.1 %StringIteratorPrototype%.next()
}, function () {
  var O = this._t;
  var index = this._i;
  var point;
  if (index >= O.length) return { value: undefined, done: true };
  point = $at(O, index);
  this._i += point.length;
  return { value: point, done: false };
});


/***/ }),

/***/ "../node_modules/core-js/modules/es7.array.includes.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/es7.array.includes.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// https://github.com/tc39/Array.prototype.includes
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var $includes = __webpack_require__(/*! ./_array-includes */ "../node_modules/core-js/modules/_array-includes.js")(true);

$export($export.P, 'Array', {
  includes: function includes(el /* , fromIndex = 0 */) {
    return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);
  }
});

__webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/modules/_add-to-unscopables.js")('includes');


/***/ }),

/***/ "../node_modules/core-js/modules/web.dom.iterable.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/web.dom.iterable.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $iterators = __webpack_require__(/*! ./es6.array.iterator */ "../node_modules/core-js/modules/es6.array.iterator.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/modules/_object-keys.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/modules/_iterators.js");
var wks = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js");
var ITERATOR = wks('iterator');
var TO_STRING_TAG = wks('toStringTag');
var ArrayValues = Iterators.Array;

var DOMIterables = {
  CSSRuleList: true, // TODO: Not spec compliant, should be false.
  CSSStyleDeclaration: false,
  CSSValueList: false,
  ClientRectList: false,
  DOMRectList: false,
  DOMStringList: false,
  DOMTokenList: true,
  DataTransferItemList: false,
  FileList: false,
  HTMLAllCollection: false,
  HTMLCollection: false,
  HTMLFormElement: false,
  HTMLSelectElement: false,
  MediaList: true, // TODO: Not spec compliant, should be false.
  MimeTypeArray: false,
  NamedNodeMap: false,
  NodeList: true,
  PaintRequestList: false,
  Plugin: false,
  PluginArray: false,
  SVGLengthList: false,
  SVGNumberList: false,
  SVGPathSegList: false,
  SVGPointList: false,
  SVGStringList: false,
  SVGTransformList: false,
  SourceBufferList: false,
  StyleSheetList: true, // TODO: Not spec compliant, should be false.
  TextTrackCueList: false,
  TextTrackList: false,
  TouchList: false
};

for (var collections = getKeys(DOMIterables), i = 0; i < collections.length; i++) {
  var NAME = collections[i];
  var explicit = DOMIterables[NAME];
  var Collection = global[NAME];
  var proto = Collection && Collection.prototype;
  var key;
  if (proto) {
    if (!proto[ITERATOR]) hide(proto, ITERATOR, ArrayValues);
    if (!proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);
    Iterators[NAME] = ArrayValues;
    if (explicit) for (key in $iterators) if (!proto[key]) redefine(proto, key, $iterators[key], true);
  }
}


/***/ }),

/***/ "../node_modules/regenerator-runtime/runtime.js":
/*!******************************************************!*\
  !*** ../node_modules/regenerator-runtime/runtime.js ***!
  \******************************************************/
/***/ ((module) => {

/**
 * Copyright (c) 2014-present, Facebook, Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

var runtime = (function (exports) {
  "use strict";

  var Op = Object.prototype;
  var hasOwn = Op.hasOwnProperty;
  var undefined; // More compressible than void 0.
  var $Symbol = typeof Symbol === "function" ? Symbol : {};
  var iteratorSymbol = $Symbol.iterator || "@@iterator";
  var asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator";
  var toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag";

  function define(obj, key, value) {
    Object.defineProperty(obj, key, {
      value: value,
      enumerable: true,
      configurable: true,
      writable: true
    });
    return obj[key];
  }
  try {
    // IE 8 has a broken Object.defineProperty that only works on DOM objects.
    define({}, "");
  } catch (err) {
    define = function(obj, key, value) {
      return obj[key] = value;
    };
  }

  function wrap(innerFn, outerFn, self, tryLocsList) {
    // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.
    var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;
    var generator = Object.create(protoGenerator.prototype);
    var context = new Context(tryLocsList || []);

    // The ._invoke method unifies the implementations of the .next,
    // .throw, and .return methods.
    generator._invoke = makeInvokeMethod(innerFn, self, context);

    return generator;
  }
  exports.wrap = wrap;

  // Try/catch helper to minimize deoptimizations. Returns a completion
  // record like context.tryEntries[i].completion. This interface could
  // have been (and was previously) designed to take a closure to be
  // invoked without arguments, but in all the cases we care about we
  // already have an existing method we want to call, so there's no need
  // to create a new function object. We can even get away with assuming
  // the method takes exactly one argument, since that happens to be true
  // in every case, so we don't have to touch the arguments object. The
  // only additional allocation required is the completion record, which
  // has a stable shape and so hopefully should be cheap to allocate.
  function tryCatch(fn, obj, arg) {
    try {
      return { type: "normal", arg: fn.call(obj, arg) };
    } catch (err) {
      return { type: "throw", arg: err };
    }
  }

  var GenStateSuspendedStart = "suspendedStart";
  var GenStateSuspendedYield = "suspendedYield";
  var GenStateExecuting = "executing";
  var GenStateCompleted = "completed";

  // Returning this object from the innerFn has the same effect as
  // breaking out of the dispatch switch statement.
  var ContinueSentinel = {};

  // Dummy constructor functions that we use as the .constructor and
  // .constructor.prototype properties for functions that return Generator
  // objects. For full spec compliance, you may wish to configure your
  // minifier not to mangle the names of these two functions.
  function Generator() {}
  function GeneratorFunction() {}
  function GeneratorFunctionPrototype() {}

  // This is a polyfill for %IteratorPrototype% for environments that
  // don't natively support it.
  var IteratorPrototype = {};
  IteratorPrototype[iteratorSymbol] = function () {
    return this;
  };

  var getProto = Object.getPrototypeOf;
  var NativeIteratorPrototype = getProto && getProto(getProto(values([])));
  if (NativeIteratorPrototype &&
      NativeIteratorPrototype !== Op &&
      hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {
    // This environment has a native %IteratorPrototype%; use it instead
    // of the polyfill.
    IteratorPrototype = NativeIteratorPrototype;
  }

  var Gp = GeneratorFunctionPrototype.prototype =
    Generator.prototype = Object.create(IteratorPrototype);
  GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype;
  GeneratorFunctionPrototype.constructor = GeneratorFunction;
  GeneratorFunction.displayName = define(
    GeneratorFunctionPrototype,
    toStringTagSymbol,
    "GeneratorFunction"
  );

  // Helper for defining the .next, .throw, and .return methods of the
  // Iterator interface in terms of a single ._invoke method.
  function defineIteratorMethods(prototype) {
    ["next", "throw", "return"].forEach(function(method) {
      define(prototype, method, function(arg) {
        return this._invoke(method, arg);
      });
    });
  }

  exports.isGeneratorFunction = function(genFun) {
    var ctor = typeof genFun === "function" && genFun.constructor;
    return ctor
      ? ctor === GeneratorFunction ||
        // For the native GeneratorFunction constructor, the best we can
        // do is to check its .name property.
        (ctor.displayName || ctor.name) === "GeneratorFunction"
      : false;
  };

  exports.mark = function(genFun) {
    if (Object.setPrototypeOf) {
      Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);
    } else {
      genFun.__proto__ = GeneratorFunctionPrototype;
      define(genFun, toStringTagSymbol, "GeneratorFunction");
    }
    genFun.prototype = Object.create(Gp);
    return genFun;
  };

  // Within the body of any async function, `await x` is transformed to
  // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test
  // `hasOwn.call(value, "__await")` to determine if the yielded value is
  // meant to be awaited.
  exports.awrap = function(arg) {
    return { __await: arg };
  };

  function AsyncIterator(generator, PromiseImpl) {
    function invoke(method, arg, resolve, reject) {
      var record = tryCatch(generator[method], generator, arg);
      if (record.type === "throw") {
        reject(record.arg);
      } else {
        var result = record.arg;
        var value = result.value;
        if (value &&
            typeof value === "object" &&
            hasOwn.call(value, "__await")) {
          return PromiseImpl.resolve(value.__await).then(function(value) {
            invoke("next", value, resolve, reject);
          }, function(err) {
            invoke("throw", err, resolve, reject);
          });
        }

        return PromiseImpl.resolve(value).then(function(unwrapped) {
          // When a yielded Promise is resolved, its final value becomes
          // the .value of the Promise<{value,done}> result for the
          // current iteration.
          result.value = unwrapped;
          resolve(result);
        }, function(error) {
          // If a rejected Promise was yielded, throw the rejection back
          // into the async generator function so it can be handled there.
          return invoke("throw", error, resolve, reject);
        });
      }
    }

    var previousPromise;

    function enqueue(method, arg) {
      function callInvokeWithMethodAndArg() {
        return new PromiseImpl(function(resolve, reject) {
          invoke(method, arg, resolve, reject);
        });
      }

      return previousPromise =
        // If enqueue has been called before, then we want to wait until
        // all previous Promises have been resolved before calling invoke,
        // so that results are always delivered in the correct order. If
        // enqueue has not been called before, then it is important to
        // call invoke immediately, without waiting on a callback to fire,
        // so that the async generator function has the opportunity to do
        // any necessary setup in a predictable way. This predictability
        // is why the Promise constructor synchronously invokes its
        // executor callback, and why async functions synchronously
        // execute code before the first await. Since we implement simple
        // async functions in terms of async generators, it is especially
        // important to get this right, even though it requires care.
        previousPromise ? previousPromise.then(
          callInvokeWithMethodAndArg,
          // Avoid propagating failures to Promises returned by later
          // invocations of the iterator.
          callInvokeWithMethodAndArg
        ) : callInvokeWithMethodAndArg();
    }

    // Define the unified helper method that is used to implement .next,
    // .throw, and .return (see defineIteratorMethods).
    this._invoke = enqueue;
  }

  defineIteratorMethods(AsyncIterator.prototype);
  AsyncIterator.prototype[asyncIteratorSymbol] = function () {
    return this;
  };
  exports.AsyncIterator = AsyncIterator;

  // Note that simple async functions are implemented on top of
  // AsyncIterator objects; they just return a Promise for the value of
  // the final result produced by the iterator.
  exports.async = function(innerFn, outerFn, self, tryLocsList, PromiseImpl) {
    if (PromiseImpl === void 0) PromiseImpl = Promise;

    var iter = new AsyncIterator(
      wrap(innerFn, outerFn, self, tryLocsList),
      PromiseImpl
    );

    return exports.isGeneratorFunction(outerFn)
      ? iter // If outerFn is a generator, return the full iterator.
      : iter.next().then(function(result) {
          return result.done ? result.value : iter.next();
        });
  };

  function makeInvokeMethod(innerFn, self, context) {
    var state = GenStateSuspendedStart;

    return function invoke(method, arg) {
      if (state === GenStateExecuting) {
        throw new Error("Generator is already running");
      }

      if (state === GenStateCompleted) {
        if (method === "throw") {
          throw arg;
        }

        // Be forgiving, per 25.3.3.3.3 of the spec:
        // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume
        return doneResult();
      }

      context.method = method;
      context.arg = arg;

      while (true) {
        var delegate = context.delegate;
        if (delegate) {
          var delegateResult = maybeInvokeDelegate(delegate, context);
          if (delegateResult) {
            if (delegateResult === ContinueSentinel) continue;
            return delegateResult;
          }
        }

        if (context.method === "next") {
          // Setting context._sent for legacy support of Babel's
          // function.sent implementation.
          context.sent = context._sent = context.arg;

        } else if (context.method === "throw") {
          if (state === GenStateSuspendedStart) {
            state = GenStateCompleted;
            throw context.arg;
          }

          context.dispatchException(context.arg);

        } else if (context.method === "return") {
          context.abrupt("return", context.arg);
        }

        state = GenStateExecuting;

        var record = tryCatch(innerFn, self, context);
        if (record.type === "normal") {
          // If an exception is thrown from innerFn, we leave state ===
          // GenStateExecuting and loop back for another invocation.
          state = context.done
            ? GenStateCompleted
            : GenStateSuspendedYield;

          if (record.arg === ContinueSentinel) {
            continue;
          }

          return {
            value: record.arg,
            done: context.done
          };

        } else if (record.type === "throw") {
          state = GenStateCompleted;
          // Dispatch the exception by looping back around to the
          // context.dispatchException(context.arg) call above.
          context.method = "throw";
          context.arg = record.arg;
        }
      }
    };
  }

  // Call delegate.iterator[context.method](context.arg) and handle the
  // result, either by returning a { value, done } result from the
  // delegate iterator, or by modifying context.method and context.arg,
  // setting context.delegate to null, and returning the ContinueSentinel.
  function maybeInvokeDelegate(delegate, context) {
    var method = delegate.iterator[context.method];
    if (method === undefined) {
      // A .throw or .return when the delegate iterator has no .throw
      // method always terminates the yield* loop.
      context.delegate = null;

      if (context.method === "throw") {
        // Note: ["return"] must be used for ES3 parsing compatibility.
        if (delegate.iterator["return"]) {
          // If the delegate iterator has a return method, give it a
          // chance to clean up.
          context.method = "return";
          context.arg = undefined;
          maybeInvokeDelegate(delegate, context);

          if (context.method === "throw") {
            // If maybeInvokeDelegate(context) changed context.method from
            // "return" to "throw", let that override the TypeError below.
            return ContinueSentinel;
          }
        }

        context.method = "throw";
        context.arg = new TypeError(
          "The iterator does not provide a 'throw' method");
      }

      return ContinueSentinel;
    }

    var record = tryCatch(method, delegate.iterator, context.arg);

    if (record.type === "throw") {
      context.method = "throw";
      context.arg = record.arg;
      context.delegate = null;
      return ContinueSentinel;
    }

    var info = record.arg;

    if (! info) {
      context.method = "throw";
      context.arg = new TypeError("iterator result is not an object");
      context.delegate = null;
      return ContinueSentinel;
    }

    if (info.done) {
      // Assign the result of the finished delegate to the temporary
      // variable specified by delegate.resultName (see delegateYield).
      context[delegate.resultName] = info.value;

      // Resume execution at the desired location (see delegateYield).
      context.next = delegate.nextLoc;

      // If context.method was "throw" but the delegate handled the
      // exception, let the outer generator proceed normally. If
      // context.method was "next", forget context.arg since it has been
      // "consumed" by the delegate iterator. If context.method was
      // "return", allow the original .return call to continue in the
      // outer generator.
      if (context.method !== "return") {
        context.method = "next";
        context.arg = undefined;
      }

    } else {
      // Re-yield the result returned by the delegate method.
      return info;
    }

    // The delegate iterator is finished, so forget it and continue with
    // the outer generator.
    context.delegate = null;
    return ContinueSentinel;
  }

  // Define Generator.prototype.{next,throw,return} in terms of the
  // unified ._invoke helper method.
  defineIteratorMethods(Gp);

  define(Gp, toStringTagSymbol, "Generator");

  // A Generator should always return itself as the iterator object when the
  // @@iterator function is called on it. Some browsers' implementations of the
  // iterator prototype chain incorrectly implement this, causing the Generator
  // object to not be returned from this call. This ensures that doesn't happen.
  // See https://github.com/facebook/regenerator/issues/274 for more details.
  Gp[iteratorSymbol] = function() {
    return this;
  };

  Gp.toString = function() {
    return "[object Generator]";
  };

  function pushTryEntry(locs) {
    var entry = { tryLoc: locs[0] };

    if (1 in locs) {
      entry.catchLoc = locs[1];
    }

    if (2 in locs) {
      entry.finallyLoc = locs[2];
      entry.afterLoc = locs[3];
    }

    this.tryEntries.push(entry);
  }

  function resetTryEntry(entry) {
    var record = entry.completion || {};
    record.type = "normal";
    delete record.arg;
    entry.completion = record;
  }

  function Context(tryLocsList) {
    // The root entry object (effectively a try statement without a catch
    // or a finally block) gives us a place to store values thrown from
    // locations where there is no enclosing try statement.
    this.tryEntries = [{ tryLoc: "root" }];
    tryLocsList.forEach(pushTryEntry, this);
    this.reset(true);
  }

  exports.keys = function(object) {
    var keys = [];
    for (var key in object) {
      keys.push(key);
    }
    keys.reverse();

    // Rather than returning an object with a next method, we keep
    // things simple and return the next function itself.
    return function next() {
      while (keys.length) {
        var key = keys.pop();
        if (key in object) {
          next.value = key;
          next.done = false;
          return next;
        }
      }

      // To avoid creating an additional object, we just hang the .value
      // and .done properties off the next function object itself. This
      // also ensures that the minifier will not anonymize the function.
      next.done = true;
      return next;
    };
  };

  function values(iterable) {
    if (iterable) {
      var iteratorMethod = iterable[iteratorSymbol];
      if (iteratorMethod) {
        return iteratorMethod.call(iterable);
      }

      if (typeof iterable.next === "function") {
        return iterable;
      }

      if (!isNaN(iterable.length)) {
        var i = -1, next = function next() {
          while (++i < iterable.length) {
            if (hasOwn.call(iterable, i)) {
              next.value = iterable[i];
              next.done = false;
              return next;
            }
          }

          next.value = undefined;
          next.done = true;

          return next;
        };

        return next.next = next;
      }
    }

    // Return an iterator with no values.
    return { next: doneResult };
  }
  exports.values = values;

  function doneResult() {
    return { value: undefined, done: true };
  }

  Context.prototype = {
    constructor: Context,

    reset: function(skipTempReset) {
      this.prev = 0;
      this.next = 0;
      // Resetting context._sent for legacy support of Babel's
      // function.sent implementation.
      this.sent = this._sent = undefined;
      this.done = false;
      this.delegate = null;

      this.method = "next";
      this.arg = undefined;

      this.tryEntries.forEach(resetTryEntry);

      if (!skipTempReset) {
        for (var name in this) {
          // Not sure about the optimal order of these conditions:
          if (name.charAt(0) === "t" &&
              hasOwn.call(this, name) &&
              !isNaN(+name.slice(1))) {
            this[name] = undefined;
          }
        }
      }
    },

    stop: function() {
      this.done = true;

      var rootEntry = this.tryEntries[0];
      var rootRecord = rootEntry.completion;
      if (rootRecord.type === "throw") {
        throw rootRecord.arg;
      }

      return this.rval;
    },

    dispatchException: function(exception) {
      if (this.done) {
        throw exception;
      }

      var context = this;
      function handle(loc, caught) {
        record.type = "throw";
        record.arg = exception;
        context.next = loc;

        if (caught) {
          // If the dispatched exception was caught by a catch block,
          // then let that catch block handle the exception normally.
          context.method = "next";
          context.arg = undefined;
        }

        return !! caught;
      }

      for (var i = this.tryEntries.length - 1; i >= 0; --i) {
        var entry = this.tryEntries[i];
        var record = entry.completion;

        if (entry.tryLoc === "root") {
          // Exception thrown outside of any try block that could handle
          // it, so set the completion value of the entire function to
          // throw the exception.
          return handle("end");
        }

        if (entry.tryLoc <= this.prev) {
          var hasCatch = hasOwn.call(entry, "catchLoc");
          var hasFinally = hasOwn.call(entry, "finallyLoc");

          if (hasCatch && hasFinally) {
            if (this.prev < entry.catchLoc) {
              return handle(entry.catchLoc, true);
            } else if (this.prev < entry.finallyLoc) {
              return handle(entry.finallyLoc);
            }

          } else if (hasCatch) {
            if (this.prev < entry.catchLoc) {
              return handle(entry.catchLoc, true);
            }

          } else if (hasFinally) {
            if (this.prev < entry.finallyLoc) {
              return handle(entry.finallyLoc);
            }

          } else {
            throw new Error("try statement without catch or finally");
          }
        }
      }
    },

    abrupt: function(type, arg) {
      for (var i = this.tryEntries.length - 1; i >= 0; --i) {
        var entry = this.tryEntries[i];
        if (entry.tryLoc <= this.prev &&
            hasOwn.call(entry, "finallyLoc") &&
            this.prev < entry.finallyLoc) {
          var finallyEntry = entry;
          break;
        }
      }

      if (finallyEntry &&
          (type === "break" ||
           type === "continue") &&
          finallyEntry.tryLoc <= arg &&
          arg <= finallyEntry.finallyLoc) {
        // Ignore the finally entry if control is not jumping to a
        // location outside the try/catch block.
        finallyEntry = null;
      }

      var record = finallyEntry ? finallyEntry.completion : {};
      record.type = type;
      record.arg = arg;

      if (finallyEntry) {
        this.method = "next";
        this.next = finallyEntry.finallyLoc;
        return ContinueSentinel;
      }

      return this.complete(record);
    },

    complete: function(record, afterLoc) {
      if (record.type === "throw") {
        throw record.arg;
      }

      if (record.type === "break" ||
          record.type === "continue") {
        this.next = record.arg;
      } else if (record.type === "return") {
        this.rval = this.arg = record.arg;
        this.method = "return";
        this.next = "end";
      } else if (record.type === "normal" && afterLoc) {
        this.next = afterLoc;
      }

      return ContinueSentinel;
    },

    finish: function(finallyLoc) {
      for (var i = this.tryEntries.length - 1; i >= 0; --i) {
        var entry = this.tryEntries[i];
        if (entry.finallyLoc === finallyLoc) {
          this.complete(entry.completion, entry.afterLoc);
          resetTryEntry(entry);
          return ContinueSentinel;
        }
      }
    },

    "catch": function(tryLoc) {
      for (var i = this.tryEntries.length - 1; i >= 0; --i) {
        var entry = this.tryEntries[i];
        if (entry.tryLoc === tryLoc) {
          var record = entry.completion;
          if (record.type === "throw") {
            var thrown = record.arg;
            resetTryEntry(entry);
          }
          return thrown;
        }
      }

      // The context.catch method must only be called with a location
      // argument that corresponds to a known catch block.
      throw new Error("illegal catch attempt");
    },

    delegateYield: function(iterable, resultName, nextLoc) {
      this.delegate = {
        iterator: values(iterable),
        resultName: resultName,
        nextLoc: nextLoc
      };

      if (this.method === "next") {
        // Deliberately forget the last sent value so that we don't
        // accidentally pass it on to the delegate.
        this.arg = undefined;
      }

      return ContinueSentinel;
    }
  };

  // Regardless of whether this script is executing as a CommonJS module
  // or not, return the runtime object so that we can declare the variable
  // regeneratorRuntime in the outer scope, which allows this module to be
  // injected easily by `bin/regenerator --include-runtime script.js`.
  return exports;

}(
  // If this script is executing as a CommonJS module, use module.exports
  // as the regeneratorRuntime namespace. Otherwise create a new empty
  // object. Either way, the resulting object will be used to initialize
  // the regeneratorRuntime variable at the top of this file.
   true ? module.exports : 0
));

try {
  regeneratorRuntime = runtime;
} catch (accidentalStrictMode) {
  // This module should not be running in strict mode, so the above
  // assignment should always work unless something is misconfigured. Just
  // in case runtime.js accidentally runs in strict mode, we can escape
  // strict mode using a global Function call. This could conceivably fail
  // if a Content Security Policy forbids using Function, but in that case
  // the proper solution is to fix the accidental strict mode problem. If
  // you've misconfigured your bundler to force strict mode and applied a
  // CSP to forbid Function, and you're not willing to fix either of those
  // problems, please detail your unique predicament in a GitHub issue.
  Function("r", "regeneratorRuntime = r")(runtime);
}


/***/ }),

/***/ "@wordpress/i18n":
/*!**************************!*\
  !*** external "wp.i18n" ***!
  \**************************/
/***/ ((module) => {

"use strict";
module.exports = wp.i18n;

/***/ })

/******/ 	});
/************************************************************************/
/******/ 	// The module cache
/******/ 	var __webpack_module_cache__ = {};
/******/ 	
/******/ 	// The require function
/******/ 	function __webpack_require__(moduleId) {
/******/ 		// Check if module is in cache
/******/ 		var cachedModule = __webpack_module_cache__[moduleId];
/******/ 		if (cachedModule !== undefined) {
/******/ 			return cachedModule.exports;
/******/ 		}
/******/ 		// Create a new module (and put it into the cache)
/******/ 		var module = __webpack_module_cache__[moduleId] = {
/******/ 			// no module.id needed
/******/ 			// no module.loaded needed
/******/ 			exports: {}
/******/ 		};
/******/ 	
/******/ 		// Execute the module function
/******/ 		__webpack_modules__[moduleId](module, module.exports, __webpack_require__);
/******/ 	
/******/ 		// Return the exports of the module
/******/ 		return module.exports;
/******/ 	}
/******/ 	
/************************************************************************/
var __webpack_exports__ = {};
// This entry need to be wrapped in an IIFE because it need to be in strict mode.
(() => {
"use strict";
/*!**************************************************!*\
  !*** ../assets/dev/js/editor/editor-document.js ***!
  \**************************************************/


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _component = _interopRequireDefault(__webpack_require__(/*! ./document/component */ "../assets/dev/js/editor/document/component.js"));

var _component2 = _interopRequireDefault(__webpack_require__(/*! ./data/globals/component */ "../assets/dev/js/editor/data/globals/component.js"));

elementorCommon.elements.$window.on('elementor:init-components', function () {
  // TODO: Move to elementor:init-data-components
  $e.components.register(new _component2.default());
  $e.components.register(new _component.default()); // TODO: Remove, BC Since 2.9.0.

  elementor.saver = $e.components.get('document/save');
});
$e.modules.document = _component.default.getModules();
})();

/******/ })()
;
//# sourceMappingURL=editor-document.js.mapassets/js/alert.f04b9d16129bc8aa4cdc.bundle.js000064400000002163151327220410014425 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(self["webpackChunkelementor"] = self["webpackChunkelementor"] || []).push([["alert"],{

/***/ "../assets/dev/js/frontend/handlers/alert.js":
/*!***************************************************!*\
  !*** ../assets/dev/js/frontend/handlers/alert.js ***!
  \***************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

class Alert extends elementorModules.frontend.handlers.Base {
  getDefaultSettings() {
    return {
      selectors: {
        dismissButton: '.elementor-alert-dismiss'
      }
    };
  }

  getDefaultElements() {
    const selectors = this.getSettings('selectors');
    return {
      $dismissButton: this.$element.find(selectors.dismissButton)
    };
  }

  bindEvents() {
    this.elements.$dismissButton.on('click', this.onDismissButtonClick.bind(this));
  }

  onDismissButtonClick() {
    this.$element.fadeOut();
  }

}

exports.default = Alert;

/***/ })

}]);
//# sourceMappingURL=alert.f04b9d16129bc8aa4cdc.bundle.js.mapassets/js/preloaded-modules.min.js000064400000077022151327220410013214 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(self.webpackChunkelementor=self.webpackChunkelementor||[]).push([[882,723,209,745,120,192,520,181,791,268,357],{8470:(e,t,s)=>{"use strict";var i=s(7914);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=i(s(9728));class Accordion extends n.default{getDefaultSettings(){return{...super.getDefaultSettings(),showTabFn:"slideDown",hideTabFn:"slideUp"}}}t.default=Accordion},9269:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class Alert extends elementorModules.frontend.handlers.Base{getDefaultSettings(){return{selectors:{dismissButton:".elementor-alert-dismiss"}}}getDefaultElements(){const e=this.getSettings("selectors");return{$dismissButton:this.$element.find(e.dismissButton)}}bindEvents(){this.elements.$dismissButton.on("click",this.onDismissButtonClick.bind(this))}onDismissButtonClick(){this.$element.fadeOut()}}t.default=Alert},9728:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class baseTabs extends elementorModules.frontend.handlers.Base{getDefaultSettings(){return{selectors:{tablist:'[role="tablist"]',tabTitle:".elementor-tab-title",tabContent:".elementor-tab-content"},classes:{active:"elementor-active"},showTabFn:"show",hideTabFn:"hide",toggleSelf:!0,hidePrevious:!0,autoExpand:!0,keyDirection:{ArrowLeft:elementorFrontendConfig.is_rtl?1:-1,ArrowUp:-1,ArrowRight:elementorFrontendConfig.is_rtl?-1:1,ArrowDown:1}}}getDefaultElements(){const e=this.getSettings("selectors");return{$tabTitles:this.findElement(e.tabTitle),$tabContents:this.findElement(e.tabContent)}}activateDefaultTab(){const e=this.getSettings();if(!e.autoExpand||"editor"===e.autoExpand&&!this.isEdit)return;const t=this.getEditSettings("activeItemIndex")||1,s={showTabFn:e.showTabFn,hideTabFn:e.hideTabFn};this.setSettings({showTabFn:"show",hideTabFn:"hide"}),this.changeActiveTab(t),this.setSettings(s)}handleKeyboardNavigation(e){const t=e.currentTarget,s=jQuery(t.closest(this.getSettings("selectors").tablist)),i=s.find(this.getSettings("selectors").tabTitle),n="vertical"===s.attr("aria-orientation");switch(e.key){case"ArrowLeft":case"ArrowRight":if(n)return;break;case"ArrowUp":case"ArrowDown":if(!n)return;e.preventDefault();break;case"Home":return e.preventDefault(),void i.first().focus();case"End":return e.preventDefault(),void i.last().focus();default:return}const o=t.getAttribute("data-tab")-1,a=this.getSettings("keyDirection")[e.key],r=i[o+a];r?r.focus():-1===o+a?i.last().focus():i.first().focus()}deactivateActiveTab(e){const t=this.getSettings(),s=t.classes.active,i=e?'[data-tab="'+e+'"]':"."+s,n=this.elements.$tabTitles.filter(i),o=this.elements.$tabContents.filter(i);n.add(o).removeClass(s),n.attr({tabindex:"-1","aria-selected":"false","aria-expanded":"false"}),o[t.hideTabFn](),o.attr("hidden","hidden")}activateTab(e){const t=this.getSettings(),s=t.classes.active,i=this.elements.$tabTitles.filter('[data-tab="'+e+'"]'),n=this.elements.$tabContents.filter('[data-tab="'+e+'"]'),o="show"===t.showTabFn?0:400;i.add(n).addClass(s),i.attr({tabindex:"0","aria-selected":"true","aria-expanded":"true"}),n[t.showTabFn](o,(()=>elementorFrontend.elements.$window.trigger("resize"))),n.removeAttr("hidden")}isActiveTab(e){return this.elements.$tabTitles.filter('[data-tab="'+e+'"]').hasClass(this.getSettings("classes.active"))}bindEvents(){this.elements.$tabTitles.on({keydown:e=>{jQuery(e.target).is("a")&&"Enter"===e.key&&e.preventDefault(),["End","Home","ArrowUp","ArrowDown"].includes(e.key)&&this.handleKeyboardNavigation(e)},keyup:e=>{switch(e.key){case"ArrowLeft":case"ArrowRight":this.handleKeyboardNavigation(e);break;case"Enter":case"Space":e.preventDefault(),this.changeActiveTab(e.currentTarget.getAttribute("data-tab"))}},click:e=>{e.preventDefault(),this.changeActiveTab(e.currentTarget.getAttribute("data-tab"))}})}onInit(...e){super.onInit(...e),this.activateDefaultTab()}onEditSettingsChange(e){"activeItemIndex"===e&&this.activateDefaultTab()}changeActiveTab(e){const t=this.isActiveTab(e),s=this.getSettings();!s.toggleSelf&&t||!s.hidePrevious||this.deactivateActiveTab(),!s.hidePrevious&&t&&this.deactivateActiveTab(e),t||this.activateTab(e)}}t.default=baseTabs},7884:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class Counter extends elementorModules.frontend.handlers.Base{getDefaultSettings(){return{selectors:{counterNumber:".elementor-counter-number"}}}getDefaultElements(){const e=this.getSettings("selectors");return{$counterNumber:this.$element.find(e.counterNumber)}}onInit(){super.onInit(),this.intersectionObserver=elementorModules.utils.Scroll.scrollObserver({callback:e=>{if(e.isInViewport){this.intersectionObserver.unobserve(this.elements.$counterNumber[0]);const e=this.elements.$counterNumber.data(),t=e.toValue.toString().match(/\.(.*)/);t&&(e.rounding=t[1].length),this.elements.$counterNumber.numerator(e)}}}),this.intersectionObserver.observe(this.elements.$counterNumber[0])}}t.default=Counter},5914:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class ImageCarousel extends elementorModules.frontend.handlers.SwiperBase{getDefaultSettings(){return{selectors:{carousel:".elementor-image-carousel-wrapper",slideContent:".swiper-slide"}}}getDefaultElements(){const e=this.getSettings("selectors"),t={$swiperContainer:this.$element.find(e.carousel)};return t.$slides=t.$swiperContainer.find(e.slideContent),t}getSwiperSettings(){const e=this.getElementSettings(),t=+e.slides_to_show||3,s=1===t,i=elementorFrontend.config.responsive.activeBreakpoints,n={mobile:1,tablet:s?1:2},o={slidesPerView:t,loop:"yes"===e.infinite,speed:e.speed,handleElementorBreakpoints:!0,breakpoints:{}};let a=t;Object.keys(i).reverse().forEach((t=>{const s=n[t]?n[t]:a;o.breakpoints[i[t].value]={slidesPerView:+e["slides_to_show_"+t]||s,slidesPerGroup:+e["slides_to_scroll_"+t]||1},a=+e["slides_to_show_"+t]||s})),"yes"===e.autoplay&&(o.autoplay={delay:e.autoplay_speed,disableOnInteraction:"yes"===e.pause_on_interaction}),s?(o.effect=e.effect,"fade"===e.effect&&(o.fadeEffect={crossFade:!0})):o.slidesPerGroup=+e.slides_to_scroll||1,e.image_spacing_custom&&(o.spaceBetween=e.image_spacing_custom.size);const r="arrows"===e.navigation||"both"===e.navigation,l="dots"===e.navigation||"both"===e.navigation;return r&&(o.navigation={prevEl:".elementor-swiper-button-prev",nextEl:".elementor-swiper-button-next"}),l&&(o.pagination={el:".swiper-pagination",type:"bullets",clickable:!0}),o}async onInit(...e){super.onInit(...e);const t=this.getElementSettings();if(!this.elements.$swiperContainer.length||2>this.elements.$slides.length)return;const s=elementorFrontend.utils.swiper;this.swiper=await new s(this.elements.$swiperContainer,this.getSwiperSettings()),this.elements.$swiperContainer.data("swiper",this.swiper),"yes"===t.pause_on_hover&&this.togglePauseOnHover(!0)}updateSwiperOption(e){const t=this.getElementSettings()[e],s=this.swiper.params;switch(e){case"image_spacing_custom":s.spaceBetween=t.size||0;break;case"autoplay_speed":s.autoplay.delay=t;break;case"speed":s.speed=t}this.swiper.update()}getChangeableProperties(){return{pause_on_hover:"pauseOnHover",autoplay_speed:"delay",speed:"speed",image_spacing_custom:"spaceBetween"}}onElementChange(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&&this.swiper.slideToLoop(this.getEditSettings("activeItemIndex")-1)}}t.default=ImageCarousel},1351:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class Progress extends elementorModules.frontend.handlers.Base{getDefaultSettings(){return{selectors:{progressNumber:".elementor-progress-bar"}}}getDefaultElements(){const e=this.getSettings("selectors");return{$progressNumber:this.$element.find(e.progressNumber)}}onInit(){super.onInit(),elementorFrontend.waypoint(this.elements.$progressNumber,(()=>{const e=this.elements.$progressNumber;e.css("width",e.data("max")+"%")}))}}t.default=Progress},9459:(e,t,s)=>{"use strict";var i=s(7914);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=i(s(9728));class Tabs extends n.default{getDefaultSettings(){return{...super.getDefaultSettings(),toggleSelf:!1}}}t.default=Tabs},1327:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class TextEditor extends elementorModules.frontend.handlers.Base{getDefaultSettings(){return{selectors:{paragraph:"p:first"},classes:{dropCap:"elementor-drop-cap",dropCapLetter:"elementor-drop-cap-letter"}}}getDefaultElements(){const e=this.getSettings("selectors"),t=this.getSettings("classes"),s=jQuery("<span>",{class:t.dropCap}),i=jQuery("<span>",{class:t.dropCapLetter});return s.append(i),{$paragraph:this.$element.find(e.paragraph),$dropCap:s,$dropCapLetter:i}}wrapDropCap(){if(!this.getElementSettings("drop_cap"))return void(this.dropCapLetter&&(this.elements.$dropCap.remove(),this.elements.$paragraph.prepend(this.dropCapLetter),this.dropCapLetter=""));const e=this.elements.$paragraph;if(!e.length)return;const t=e.html().replace(/&nbsp;/g," "),s=t.match(/^ *([^ ] ?)/);if(!s)return;const i=s[1],n=i.trim();if("<"===n)return;this.dropCapLetter=i,this.elements.$dropCapLetter.text(n);const o=t.slice(i.length).replace(/^ */,(e=>new Array(e.length+1).join("&nbsp;")));e.html(o).prepend(this.elements.$dropCap)}onInit(...e){super.onInit(...e),this.wrapDropCap()}onElementChange(e){"drop_cap"===e&&this.wrapDropCap()}}t.default=TextEditor},2:(e,t,s)=>{"use strict";var i=s(7914);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=i(s(9728));class Toggle extends n.default{getDefaultSettings(){return{...super.getDefaultSettings(),showTabFn:"slideDown",hideTabFn:"slideUp",hidePrevious:!1,autoExpand:"editor"}}}t.default=Toggle},5363:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class Video extends elementorModules.frontend.handlers.Base{getDefaultSettings(){return{selectors:{imageOverlay:".elementor-custom-embed-image-overlay",video:".elementor-video",videoIframe:".elementor-video-iframe"}}}getDefaultElements(){const e=this.getSettings("selectors");return{$imageOverlay:this.$element.find(e.imageOverlay),$video:this.$element.find(e.video),$videoIframe:this.$element.find(e.videoIframe)}}handleVideo(){this.getElementSettings("lightbox")||("youtube"===this.getElementSettings("video_type")?this.apiProvider.onApiReady((e=>{this.elements.$imageOverlay.remove(),this.prepareYTVideo(e,!0)})):(this.elements.$imageOverlay.remove(),this.playVideo()))}playVideo(){if(this.elements.$video.length)return void(this.youtubePlayer?this.youtubePlayer.playVideo():this.elements.$video[0].play());const e=this.elements.$videoIframe,t=e.data("lazy-load");t&&e.attr("src",t),e[0].src=this.apiProvider.getAutoplayURL(e[0].src)}async animateVideo(){(await elementorFrontend.utils.lightbox).setEntranceAnimation(this.getCurrentDeviceSetting("lightbox_content_animation"))}async handleAspectRatio(){(await elementorFrontend.utils.lightbox).setVideoAspectRatio(this.getElementSettings("aspect_ratio"))}async hideLightbox(){(await elementorFrontend.utils.lightbox).getModal().hide()}prepareYTVideo(e,t){const s=this.getElementSettings(),i={videoId:this.videoID,events:{onReady:()=>{s.mute&&this.youtubePlayer.mute(),(s.autoplay||t)&&this.youtubePlayer.playVideo()},onStateChange:t=>{t.data===e.PlayerState.ENDED&&s.loop&&this.youtubePlayer.seekTo(s.start||0)}},playerVars:{controls:s.controls?1:0,rel:s.rel?1:0,playsinline:s.play_on_mobile?1:0,modestbranding:s.modestbranding?1:0,autoplay:s.autoplay?1:0,start:s.start,end:s.end}};s.yt_privacy&&(i.host="https://www.youtube-nocookie.com",i.origin=window.location.hostname),this.youtubePlayer=new e.Player(this.elements.$video[0],i)}bindEvents(){this.elements.$imageOverlay.on("click",this.handleVideo.bind(this))}onInit(){super.onInit();const e=this.getElementSettings();if(elementorFrontend.utils[e.video_type]?this.apiProvider=elementorFrontend.utils[e.video_type]:this.apiProvider=elementorFrontend.utils.baseVideoLoader,"youtube"===e.video_type&&(this.videoID=this.apiProvider.getVideoIDFromURL(e.youtube_url),this.videoID&&(!e.show_image_overlay||!e.image_overlay.url)))return e.lazy_load?(this.intersectionObserver=elementorModules.utils.Scroll.scrollObserver({callback:e=>{e.isInViewport&&(this.intersectionObserver.unobserve(this.elements.$video.parent()[0]),this.apiProvider.onApiReady((e=>this.prepareYTVideo(e))))}}),void this.intersectionObserver.observe(this.elements.$video.parent()[0])):void(elementorFrontend.config.experimentalFeatures.e_optimized_assets_loading?this.apiProvider.onApiReady((e=>this.prepareYTVideo(e))):setTimeout((()=>{this.apiProvider.onApiReady((e=>this.prepareYTVideo(e)))}),0))}onElementChange(e){if(0===e.indexOf("lightbox_content_animation"))return void this.animateVideo();const t=this.getElementSettings("lightbox");"lightbox"!==e||t?"aspect_ratio"===e&&t&&this.handleAspectRatio():this.hideLightbox()}}t.default=Video},1210:(e,t,s)=>{"use strict";var i=s(7914),n=i(s(8470)),o=i(s(9269)),a=i(s(7884)),r=i(s(1351)),l=i(s(9459)),d=i(s(2)),c=i(s(5363)),h=i(s(5914)),u=i(s(1327)),p=i(s(3896));elementorFrontend.elements.$window.on("elementor/frontend/init",(()=>{elementorFrontend.elementsHandler.elementsHandlers={"accordion.default":n.default,"alert.default":o.default,"counter.default":a.default,"progress.default":r.default,"tabs.default":l.default,"toggle.default":d.default,"video.default":c.default,"image-carousel.default":h.default,"text-editor.default":u.default},elementorFrontend.on("components:init",(()=>{delete elementorFrontend.utils.lightbox,elementorFrontend.utils.lightbox=new p.default}))}))},3896:(e,t,s)=>{"use strict";var i=s(7914)(s(3251));e.exports=elementorModules.ViewModule.extend({oldAspectRatio:null,oldAnimation:null,swiper:null,player:null,getDefaultSettings:function(){return{classes:{aspectRatio:"elementor-aspect-ratio-%s",item:"elementor-lightbox-item",image:"elementor-lightbox-image",videoContainer:"elementor-video-container",videoWrapper:"elementor-fit-aspect-ratio",playButton:"elementor-custom-embed-play",playButtonIcon:"fa",playing:"elementor-playing",hidden:"elementor-hidden",invisible:"elementor-invisible",preventClose:"elementor-lightbox-prevent-close",slideshow:{container:"swiper-container",slidesWrapper:"swiper-wrapper",prevButton:"elementor-swiper-button elementor-swiper-button-prev",nextButton:"elementor-swiper-button elementor-swiper-button-next",prevButtonIcon:"eicon-chevron-left",nextButtonIcon:"eicon-chevron-right",slide:"swiper-slide",header:"elementor-slideshow__header",footer:"elementor-slideshow__footer",title:"elementor-slideshow__title",description:"elementor-slideshow__description",counter:"elementor-slideshow__counter",iconExpand:"eicon-frame-expand",iconShrink:"eicon-frame-minimize",iconZoomIn:"eicon-zoom-in-bold",iconZoomOut:"eicon-zoom-out-bold",iconShare:"eicon-share-arrow",shareMenu:"elementor-slideshow__share-menu",shareLinks:"elementor-slideshow__share-links",hideUiVisibility:"elementor-slideshow--ui-hidden",shareMode:"elementor-slideshow--share-mode",fullscreenMode:"elementor-slideshow--fullscreen-mode",zoomMode:"elementor-slideshow--zoom-mode"}},selectors:{image:".elementor-lightbox-image",links:"a, [data-elementor-lightbox]",slideshow:{activeSlide:".swiper-slide-active",prevSlide:".swiper-slide-prev",nextSlide:".swiper-slide-next"}},modalOptions:{id:"elementor-lightbox",entranceAnimation:"zoomIn",videoAspectRatio:169,position:{enable:!1}}}},getModal:function(){return e.exports.modal||this.initModal(),e.exports.modal},initModal:function(){const t=e.exports.modal=elementorFrontend.getDialogsManager().createWidget("lightbox",{className:"elementor-lightbox",closeButton:!0,closeButtonOptions:{iconClass:"eicon-close",attributes:{tabindex:0,role:"button","aria-label":elementorFrontend.config.i18n.close+" (Esc)"}},selectors:{preventClose:"."+this.getSettings("classes.preventClose")},hide:{onClick:!0}});t.on("hide",(function(){t.setMessage("")}))},showModal:function(e){if(e.url&&!e.url.startsWith("http"))return;this.elements.$closeButton=this.getModal().getElements("closeButton"),this.$buttons=this.elements.$closeButton,this.focusedButton=null;const t=this,s=t.getDefaultSettings().modalOptions;t.id=e.id,t.setSettings("modalOptions",jQuery.extend(s,e.modalOptions));const n=t.getModal();switch(n.setID(t.getSettings("modalOptions.id")),n.onShow=function(){DialogsManager.getWidgetType("lightbox").prototype.onShow.apply(n,arguments),t.setEntranceAnimation()},n.onHide=function(){DialogsManager.getWidgetType("lightbox").prototype.onHide.apply(n,arguments),n.getElements("message").removeClass("animated"),i.default.isFullscreen&&t.deactivateFullscreen(),t.unbindHotKeys()},e.type){case"video":t.setVideoContent(e);break;case"image":const s=[{image:e.url,index:0,title:e.title,description:e.description}];e.slideshow={slides:s,swiper:{loop:!1,pagination:!1}};case"slideshow":t.setSlideshowContent(e.slideshow);break;default:t.setHTMLContent(e.html)}n.show()},createLightbox:function(e){let t={};if(e.dataset.elementorLightbox&&(t=JSON.parse(e.dataset.elementorLightbox)),t.type&&"slideshow"!==t.type)return void this.showModal(t);if(!e.dataset.elementorLightboxSlideshow){const t="single-img";return void this.showModal({type:"image",id:t,url:e.href,title:e.dataset.elementorLightboxTitle,description:e.dataset.elementorLightboxDescription,modalOptions:{id:"elementor-lightbox-slideshow-"+t}})}const s=e.dataset.elementorLightboxVideo||e.href;this.openSlideshow(e.dataset.elementorLightboxSlideshow,s)},setHTMLContent:function(e){window.elementorCommon&&elementorCommon.helpers.hardDeprecated("elementorFrontend.utils.lightbox.setHTMLContent","3.1.4"),this.getModal().setMessage(e)},setVideoContent:function(e){const t=jQuery,s=this.getSettings("classes"),i=t("<div>",{class:`${s.videoContainer} ${s.preventClose}`}),n=t("<div>",{class:s.videoWrapper}),o=this.getModal();let a;if("hosted"===e.videoType){const s=t.extend({src:e.url,autoplay:""},e.videoParams);a=t("<video>",s)}else{let s=elementorFrontend.utils.baseVideoLoader;-1!==e.url.indexOf("vimeo.com")?s=elementorFrontend.utils.vimeo:e.url.match(/^(?:https?:\/\/)?(?:www\.)?(?:m\.)?(?:youtu\.be\/|youtube\.com)/)&&(s=elementorFrontend.utils.youtube),a=t("<iframe>",{src:s.getAutoplayURL(e.url),allowfullscreen:1})}i.append(n),n.append(a),o.setMessage(i),this.setVideoAspectRatio();const r=o.onHide;o.onHide=function(){r(),this.$buttons=jQuery(),this.focusedButton=null,o.getElements("message").removeClass("elementor-fit-aspect-ratio")}},getShareLinks:function(){const{i18n:e}=elementorFrontend.config,t={facebook:e.shareOnFacebook,twitter:e.shareOnTwitter,pinterest:e.pinIt},s=jQuery,i=this.getSettings("classes"),n=this.getSettings("selectors"),o=s("<div>",{class:i.slideshow.shareLinks}),a=this.getSlide("active"),r=a.find(n.image),l=a.data("elementor-slideshow-video");let d;return d=l||r.attr("src"),s.each(t,((e,t)=>{const i=s("<a>",{href:this.createShareLink(e,d),target:"_blank"}).text(t);i.prepend(s("<i>",{class:"eicon-"+e})),o.append(i)})),l||o.append(s("<a>",{href:d,download:""}).text(e.downloadImage).prepend(s("<i>",{class:"eicon-download-bold","aria-label":e.download}))),o},createShareLink:function(e,t){const s={};if("pinterest"===e)s.image=encodeURIComponent(t);else{const e=elementorFrontend.utils.urlActions.createActionHash("lightbox",{id:this.id,url:t});s.url=encodeURIComponent(location.href.replace(/#.*/,""))+e}return ShareLink.getNetworkLink(e,s)},getSlideshowHeader:function(){const{i18n:e}=elementorFrontend.config,t=jQuery,s="yes"===elementorFrontend.getKitSettings("lightbox_enable_counter"),i="yes"===elementorFrontend.getKitSettings("lightbox_enable_fullscreen"),n="yes"===elementorFrontend.getKitSettings("lightbox_enable_zoom"),o="yes"===elementorFrontend.getKitSettings("lightbox_enable_share"),a=this.getSettings("classes"),r=a.slideshow,l=this.elements;if(s||i||n||o){if(l.$header=t("<header>",{class:r.header+" "+a.preventClose}),o){l.$iconShare=t("<i>",{class:r.iconShare,role:"button","aria-label":e.share,"aria-expanded":!1}).append(t("<span>"));const s=t("<div>");s.on("click",(e=>{e.stopPropagation()})),l.$shareMenu=t("<div>",{class:r.shareMenu}).append(s),l.$iconShare.add(l.$shareMenu).on("click",this.toggleShareMenu),l.$header.append(l.$iconShare,l.$shareMenu),this.$buttons=this.$buttons.add(l.$iconShare)}return n&&(l.$iconZoom=t("<i>",{class:r.iconZoomIn,role:"switch","aria-checked":!1,"aria-label":e.zoom}),l.$iconZoom.on("click",this.toggleZoomMode),l.$header.append(l.$iconZoom),this.$buttons=this.$buttons.add(l.$iconZoom)),i&&(l.$iconExpand=t("<i>",{class:r.iconExpand,role:"switch","aria-checked":!1,"aria-label":e.fullscreen}).append(t("<span>"),t("<span>")),l.$iconExpand.on("click",this.toggleFullscreen),l.$header.append(l.$iconExpand),this.$buttons=this.$buttons.add(l.$iconExpand)),s&&(l.$counter=t("<span>",{class:r.counter}),l.$header.append(l.$counter)),l.$header}},toggleFullscreen:function(){i.default.isFullscreen?this.deactivateFullscreen():i.default.isEnabled&&this.activateFullscreen()},toggleZoomMode:function(){1!==this.swiper.zoom.scale?this.deactivateZoom():this.activateZoom()},toggleShareMenu:function(){this.shareMode?this.deactivateShareMode():(this.elements.$shareMenu.html(this.getShareLinks()),this.activateShareMode())},activateShareMode:function(){const e=this.getSettings("classes");this.elements.$container.addClass(e.slideshow.shareMode),this.elements.$iconShare.attr("aria-expanded",!0),this.swiper.detachEvents(),this.$originalButtons=this.$buttons,this.$buttons=this.elements.$iconShare.add(this.elements.$shareMenu.find("a")),this.shareMode=!0},deactivateShareMode:function(){const e=this.getSettings("classes");this.elements.$container.removeClass(e.slideshow.shareMode),this.elements.$iconShare.attr("aria-expanded",!1),this.swiper.attachEvents(),this.$buttons=this.$originalButtons,this.shareMode=!1},activateFullscreen:function(){const e=this.getSettings("classes");i.default.request(this.elements.$container.parents(".dialog-widget")[0]),this.elements.$iconExpand.removeClass(e.slideshow.iconExpand).addClass(e.slideshow.iconShrink).attr("aria-checked","true"),this.elements.$container.addClass(e.slideshow.fullscreenMode)},deactivateFullscreen:function(){const e=this.getSettings("classes");i.default.exit(),this.elements.$iconExpand.removeClass(e.slideshow.iconShrink).addClass(e.slideshow.iconExpand).attr("aria-checked","false"),this.elements.$container.removeClass(e.slideshow.fullscreenMode)},activateZoom:function(){const e=this.swiper,t=this.elements,s=this.getSettings("classes");e.zoom.in(),e.allowSlideNext=!1,e.allowSlidePrev=!1,e.allowTouchMove=!1,t.$container.addClass(s.slideshow.zoomMode),t.$iconZoom.removeClass(s.slideshow.iconZoomIn).addClass(s.slideshow.iconZoomOut)},deactivateZoom:function(){const e=this.swiper,t=this.elements,s=this.getSettings("classes");e.zoom.out(),e.allowSlideNext=!0,e.allowSlidePrev=!0,e.allowTouchMove=!0,t.$container.removeClass(s.slideshow.zoomMode),t.$iconZoom.removeClass(s.slideshow.iconZoomOut).addClass(s.slideshow.iconZoomIn)},getSlideshowFooter:function(){const e=jQuery,t=this.getSettings("classes"),s=e("<footer>",{class:t.slideshow.footer+" "+t.preventClose}),i=e("<div>",{class:t.slideshow.title}),n=e("<div>",{class:t.slideshow.description});return s.append(i,n),s},setSlideshowContent:function(e){const{i18n:t}=elementorFrontend.config,s=jQuery,i=1===e.slides.length,n=""!==elementorFrontend.getKitSettings("lightbox_title_src"),o=""!==elementorFrontend.getKitSettings("lightbox_description_src"),a=n||o,r=this.getSettings("classes"),l=r.slideshow,d=s("<div>",{class:l.container}),c=s("<div>",{class:l.slidesWrapper});let h,u;e.slides.forEach((e=>{let i=l.slide+" "+r.item;e.video&&(i+=" "+r.video);const n=s("<div>",{class:i});if(e.video){n.attr("data-elementor-slideshow-video",e.video);const i=s("<div>",{class:r.playButton}).html(s("<i>",{class:r.playButtonIcon,"aria-label":t.playVideo}));n.append(i)}else{const t=s("<div>",{class:"swiper-zoom-container"}),i=s('<div class="swiper-lazy-preloader"></div>'),o={"data-src":e.image,class:r.image+" "+r.preventClose+" swiper-lazy"};e.title&&(o["data-title"]=e.title,o.alt=e.title),e.description&&(o["data-description"]=e.description,o.alt+=" - "+e.description);const a=s("<img>",o);t.append([a,i]),n.append(t)}c.append(n)})),this.elements.$container=d,this.elements.$header=this.getSlideshowHeader(),d.prepend(this.elements.$header).append(c),i||(h=s("<div>",{class:l.prevButton+" "+r.preventClose,"aria-label":t.previous}).html(s("<i>",{class:l.prevButtonIcon})),u=s("<div>",{class:l.nextButton+" "+r.preventClose,"aria-label":t.next}).html(s("<i>",{class:l.nextButtonIcon})),d.append(u,h),this.$buttons=this.$buttons.add(u).add(h)),a&&(this.elements.$footer=this.getSlideshowFooter(),d.append(this.elements.$footer)),this.setSettings("hideUiTimeout",""),d.on("click mousemove keypress",this.showLightboxUi);const p=this.getModal();p.setMessage(d);const m=p.onShow;p.onShow=async()=>{m();const t={pagination:{el:"."+l.counter,type:"fraction"},on:{slideChangeTransitionEnd:this.onSlideChange},lazy:{loadPrevNext:!0},zoom:!0,spaceBetween:100,grabCursor:!0,runCallbacksOnInit:!1,loop:!0,keyboard:!0,handleElementorBreakpoints:!0};i||(t.navigation={prevEl:h,nextEl:u}),e.swiper&&s.extend(t,e.swiper);const n=elementorFrontend.utils.swiper;this.swiper=await new n(d,t),d.data("swiper",this.swiper),this.setVideoAspectRatio(),this.playSlideVideo(),a&&this.updateFooterText(),this.bindHotKeys(),this.makeButtonsAccessible()}},makeButtonsAccessible:function(){this.$buttons.attr("tabindex",0).on("keypress",(e=>{13!==e.which&&32!==e.which||jQuery(e.currentTarget).trigger("click")}))},showLightboxUi:function(){const e=this.getSettings("classes").slideshow;this.elements.$container.removeClass(e.hideUiVisibility),clearTimeout(this.getSettings("hideUiTimeout")),this.setSettings("hideUiTimeout",setTimeout((()=>{this.shareMode||this.elements.$container.addClass(e.hideUiVisibility)}),3500))},bindHotKeys:function(){this.getModal().getElements("window").on("keydown",this.activeKeyDown)},unbindHotKeys:function(){this.getModal().getElements("window").off("keydown",this.activeKeyDown)},activeKeyDown:function(e){this.showLightboxUi();if(9===e.which){const t=this.$buttons;let s,i=!1,n=!1;t.each((e=>{const o=t[e];if(jQuery(o).is(":focus"))return s=o,i=0===e,n=t.length-1===e,!1})),e.shiftKey?i&&(e.preventDefault(),t.last().trigger("focus")):!n&&s||(e.preventDefault(),t.first().trigger("focus"))}},setVideoAspectRatio:function(e){e=e||this.getSettings("modalOptions.videoAspectRatio");const t=this.getModal().getElements("widgetContent"),s=this.oldAspectRatio,i=this.getSettings("classes.aspectRatio");this.oldAspectRatio=e,s&&t.removeClass(i.replace("%s",s)),e&&t.addClass(i.replace("%s",e))},getSlide:function(e){return jQuery(this.swiper.slides).filter(this.getSettings("selectors.slideshow."+e+"Slide"))},updateFooterText:function(){if(!this.elements.$footer)return;const e=this.getSettings("classes"),t=this.getSlide("active").find(".elementor-lightbox-image"),s=t.data("title"),i=t.data("description"),n=this.elements.$footer.find("."+e.slideshow.title),o=this.elements.$footer.find("."+e.slideshow.description);n.text(s||""),o.text(i||"")},playSlideVideo:function(){const e=this.getSlide("active"),t=e.data("elementor-slideshow-video");if(!t)return;const s=this.getSettings("classes"),i=jQuery("<div>",{class:s.videoContainer+" "+s.invisible}),n=jQuery("<div>",{class:s.videoWrapper}),o=e.children("."+s.playButton);let a,r;i.append(n),e.append(i),-1!==t.indexOf("vimeo.com")?(a="vimeo",r=elementorFrontend.utils.vimeo):t.match(/^(?:https?:\/\/)?(?:www\.)?(?:m\.)?(?:youtu\.be\/|youtube\.com)/)&&(a="youtube",r=elementorFrontend.utils.youtube);const l=r.getVideoIDFromURL(t);r.onApiReady((e=>{"youtube"===a?this.prepareYTVideo(e,l,i,n,o):"vimeo"===a&&this.prepareVimeoVideo(e,t,i,n,o)})),o.addClass(s.playing).removeClass(s.hidden)},prepareYTVideo:function(e,t,s,i,n){const o=this.getSettings("classes"),a=jQuery("<div>");let r=e.PlayerState.PLAYING;i.append(a),window.chrome&&(r=e.PlayerState.UNSTARTED),s.addClass("elementor-loading "+o.invisible),this.player=new e.Player(a[0],{videoId:t,events:{onReady:()=>{n.addClass(o.hidden),s.removeClass(o.invisible),this.player.playVideo()},onStateChange:e=>{e.data===r&&s.removeClass("elementor-loading "+o.invisible)}},playerVars:{controls:0,rel:0}})},prepareVimeoVideo:function(e,t,s,i,n){const o=this.getSettings("classes"),a={url:t,autoplay:!0,transparent:!1,playsinline:!1};this.player=new e.Player(i,a),this.player.ready().then((()=>{n.addClass(o.hidden),s.removeClass(o.invisible)}))},setEntranceAnimation:function(e){e=e||elementorFrontend.getCurrentDeviceSetting(this.getSettings("modalOptions"),"entranceAnimation");const t=this.getModal().getElements("message");this.oldAnimation&&t.removeClass(this.oldAnimation),this.oldAnimation=e,e&&t.addClass("animated "+e)},openSlideshow:function(e,t){const s=jQuery(this.getSettings("selectors.links")).filter(((t,s)=>{const i=jQuery(s);return e===s.dataset.elementorLightboxSlideshow&&!i.parent(".swiper-slide-duplicate").length&&!i.parents(".slick-cloned").length})),i=[];let n=0;s.each((function(){const e=this.dataset.elementorLightboxVideo;let o=this.dataset.elementorLightboxIndex;void 0===o&&(o=s.index(this)),(t===this.href||e&&t===e)&&(n=o);const a={image:this.href,index:o,title:this.dataset.elementorLightboxTitle,description:this.dataset.elementorLightboxDescription};e&&(a.video=e),i.push(a)})),i.sort(((e,t)=>e.index-t.index)),this.showModal({type:"slideshow",id:e,modalOptions:{id:"elementor-lightbox-slideshow-"+e},slideshow:{slides:i,swiper:{initialSlide:+n}}})},onSlideChange:function(){this.getSlide("prev").add(this.getSlide("next")).add(this.getSlide("active")).find("."+this.getSettings("classes.videoWrapper")).remove(),this.playSlideVideo(),this.updateFooterText()}})},3251:e=>{"use strict";var t,s,i,n,o;t="undefined"!=typeof window&&void 0!==window.document?window.document:{},s=e.exports,i=function(){for(var e,s=[["requestFullscreen","exitFullscreen","fullscreenElement","fullscreenEnabled","fullscreenchange","fullscreenerror"],["webkitRequestFullscreen","webkitExitFullscreen","webkitFullscreenElement","webkitFullscreenEnabled","webkitfullscreenchange","webkitfullscreenerror"],["webkitRequestFullScreen","webkitCancelFullScreen","webkitCurrentFullScreenElement","webkitCancelFullScreen","webkitfullscreenchange","webkitfullscreenerror"],["mozRequestFullScreen","mozCancelFullScreen","mozFullScreenElement","mozFullScreenEnabled","mozfullscreenchange","mozfullscreenerror"],["msRequestFullscreen","msExitFullscreen","msFullscreenElement","msFullscreenEnabled","MSFullscreenChange","MSFullscreenError"]],i=0,n=s.length,o={};i<n;i++)if((e=s[i])&&e[1]in t){var a=e.length;for(i=0;i<a;i++)o[s[0][i]]=e[i];return o}return!1}(),n={change:i.fullscreenchange,error:i.fullscreenerror},o={request:function(e){return new Promise(function(s,n){var o=function(){this.off("change",o),s()}.bind(this);this.on("change",o),e=e||t.documentElement,Promise.resolve(e[i.requestFullscreen]()).catch(n)}.bind(this))},exit:function(){return new Promise(function(e,s){if(this.isFullscreen){var n=function(){this.off("change",n),e()}.bind(this);this.on("change",n),Promise.resolve(t[i.exitFullscreen]()).catch(s)}else e()}.bind(this))},toggle:function(e){return this.isFullscreen?this.exit():this.request(e)},onchange:function(e){this.on("change",e)},onerror:function(e){this.on("error",e)},on:function(e,s){var i=n[e];i&&t.addEventListener(i,s,!1)},off:function(e,s){var i=n[e];i&&t.removeEventListener(i,s,!1)},raw:i},i?(Object.defineProperties(o,{isFullscreen:{get:function(){return Boolean(t[i.fullscreenElement])}},element:{enumerable:!0,get:function(){return t[i.fullscreenElement]}},isEnabled:{enumerable:!0,get:function(){return Boolean(t[i.fullscreenEnabled])}}}),s?e.exports=o:window.screenfull=o):s?e.exports={isEnabled:!1}:window.screenfull={isEnabled:!1}}},e=>{"use strict";e.O(0,[819,354],(()=>{return t=1210,e(e.s=t);var t}));e.O()}]);assets/js/new-template.js000064400000011063151327220410011420 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
/******/ (() => { // webpackBootstrap
/******/ 	"use strict";
/******/ 	var __webpack_modules__ = ({

/***/ "../assets/dev/js/admin/new-template/layout.js":
/*!*****************************************************!*\
  !*** ../assets/dev/js/admin/new-template/layout.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var NewTemplateView = __webpack_require__(/*! elementor-admin/new-template/view */ "../assets/dev/js/admin/new-template/view.js");

module.exports = elementorModules.common.views.modal.Layout.extend({
  getModalOptions: function getModalOptions() {
    return {
      id: 'elementor-new-template-modal'
    };
  },
  getLogoOptions: function getLogoOptions() {
    return {
      title: __('New Template', 'elementor')
    };
  },
  initialize: function initialize() {
    elementorModules.common.views.modal.Layout.prototype.initialize.apply(this, arguments);
    this.showLogo();
    this.showContentView();
  },
  showContentView: function showContentView() {
    this.modalContent.show(new NewTemplateView());
  }
});

/***/ }),

/***/ "../assets/dev/js/admin/new-template/view.js":
/*!***************************************************!*\
  !*** ../assets/dev/js/admin/new-template/view.js ***!
  \***************************************************/
/***/ ((module) => {



module.exports = Marionette.ItemView.extend({
  id: 'elementor-new-template-dialog-content',
  template: '#tmpl-elementor-new-template',
  ui: {},
  events: {},
  onRender: function onRender() {}
});

/***/ }),

/***/ "@wordpress/i18n":
/*!**************************!*\
  !*** external "wp.i18n" ***!
  \**************************/
/***/ ((module) => {

module.exports = wp.i18n;

/***/ })

/******/ 	});
/************************************************************************/
/******/ 	// The module cache
/******/ 	var __webpack_module_cache__ = {};
/******/ 	
/******/ 	// The require function
/******/ 	function __webpack_require__(moduleId) {
/******/ 		// Check if module is in cache
/******/ 		var cachedModule = __webpack_module_cache__[moduleId];
/******/ 		if (cachedModule !== undefined) {
/******/ 			return cachedModule.exports;
/******/ 		}
/******/ 		// Create a new module (and put it into the cache)
/******/ 		var module = __webpack_module_cache__[moduleId] = {
/******/ 			// no module.id needed
/******/ 			// no module.loaded needed
/******/ 			exports: {}
/******/ 		};
/******/ 	
/******/ 		// Execute the module function
/******/ 		__webpack_modules__[moduleId](module, module.exports, __webpack_require__);
/******/ 	
/******/ 		// Return the exports of the module
/******/ 		return module.exports;
/******/ 	}
/******/ 	
/************************************************************************/
var __webpack_exports__ = {};
// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.
(() => {
/*!***********************************************************!*\
  !*** ../assets/dev/js/admin/new-template/new-template.js ***!
  \***********************************************************/


var NewTemplateLayout = __webpack_require__(/*! elementor-admin/new-template/layout */ "../assets/dev/js/admin/new-template/layout.js");

var NewTemplateModule = elementorModules.ViewModule.extend({
  getDefaultSettings: function getDefaultSettings() {
    return {
      selectors: {
        addButton: '.page-title-action:first, #elementor-template-library-add-new'
      }
    };
  },
  getDefaultElements: function getDefaultElements() {
    var selectors = this.getSettings('selectors');
    return {
      $addButton: jQuery(selectors.addButton)
    };
  },
  bindEvents: function bindEvents() {
    this.elements.$addButton.on('click', this.onAddButtonClick);
    elementorCommon.elements.$window.on('hashchange', this.showModalByHash.bind(this));
  },
  showModalByHash: function showModalByHash() {
    if ('#add_new' === location.hash) {
      this.layout.showModal();
      location.hash = '';
    }
  },
  onInit: function onInit() {
    elementorModules.ViewModule.prototype.onInit.apply(this, arguments);
    this.layout = new NewTemplateLayout();
    this.showModalByHash();
  },
  onAddButtonClick: function onAddButtonClick(event) {
    event.preventDefault();
    this.layout.showModal();
  }
});
jQuery(function () {
  window.elementorNewTemplate = new NewTemplateModule();
});
})();

/******/ })()
;
//# sourceMappingURL=new-template.js.mapassets/js/text-editor.a8434931ecdcd5ff7589.bundle.js000064400000005434151327220410015463 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(self["webpackChunkelementor"] = self["webpackChunkelementor"] || []).push([["text-editor"],{

/***/ "../assets/dev/js/frontend/handlers/text-editor.js":
/*!*********************************************************!*\
  !*** ../assets/dev/js/frontend/handlers/text-editor.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

class TextEditor extends elementorModules.frontend.handlers.Base {
  getDefaultSettings() {
    return {
      selectors: {
        paragraph: 'p:first'
      },
      classes: {
        dropCap: 'elementor-drop-cap',
        dropCapLetter: 'elementor-drop-cap-letter'
      }
    };
  }

  getDefaultElements() {
    const selectors = this.getSettings('selectors'),
          classes = this.getSettings('classes'),
          $dropCap = jQuery('<span>', {
      class: classes.dropCap
    }),
          $dropCapLetter = jQuery('<span>', {
      class: classes.dropCapLetter
    });
    $dropCap.append($dropCapLetter);
    return {
      $paragraph: this.$element.find(selectors.paragraph),
      $dropCap: $dropCap,
      $dropCapLetter: $dropCapLetter
    };
  }

  wrapDropCap() {
    const isDropCapEnabled = this.getElementSettings('drop_cap');

    if (!isDropCapEnabled) {
      // If there is an old drop cap inside the paragraph
      if (this.dropCapLetter) {
        this.elements.$dropCap.remove();
        this.elements.$paragraph.prepend(this.dropCapLetter);
        this.dropCapLetter = '';
      }

      return;
    }

    const $paragraph = this.elements.$paragraph;

    if (!$paragraph.length) {
      return;
    }

    const paragraphContent = $paragraph.html().replace(/&nbsp;/g, ' '),
          firstLetterMatch = paragraphContent.match(/^ *([^ ] ?)/);

    if (!firstLetterMatch) {
      return;
    }

    const firstLetter = firstLetterMatch[1],
          trimmedFirstLetter = firstLetter.trim(); // Don't apply drop cap when the content starting with an HTML tag

    if ('<' === trimmedFirstLetter) {
      return;
    }

    this.dropCapLetter = firstLetter;
    this.elements.$dropCapLetter.text(trimmedFirstLetter);
    const restoredParagraphContent = paragraphContent.slice(firstLetter.length).replace(/^ */, match => {
      return new Array(match.length + 1).join('&nbsp;');
    });
    $paragraph.html(restoredParagraphContent).prepend(this.elements.$dropCap);
  }

  onInit(...args) {
    super.onInit(...args);
    this.wrapDropCap();
  }

  onElementChange(propertyName) {
    if ('drop_cap' === propertyName) {
      this.wrapDropCap();
    }
  }

}

exports.default = TextEditor;

/***/ })

}]);
//# sourceMappingURL=text-editor.a8434931ecdcd5ff7589.bundle.js.mapassets/js/frontend-modules.js000064400000104027151327220410012306 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(self["webpackChunkelementor"] = self["webpackChunkelementor"] || []).push([["frontend-modules"],{

/***/ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime/helpers/interopRequireDefault.js ***!
  \***********************************************************************/
/***/ ((module) => {

function _interopRequireDefault(obj) {
  return obj && obj.__esModule ? obj : {
    "default": obj
  };
}

module.exports = _interopRequireDefault;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../assets/dev/js/frontend/document.js":
/*!*********************************************!*\
  !*** ../assets/dev/js/frontend/document.js ***!
  \*********************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

class _default extends elementorModules.ViewModule {
  getDefaultSettings() {
    return {
      selectors: {
        elements: '.elementor-element',
        nestedDocumentElements: '.elementor .elementor-element'
      },
      classes: {
        editMode: 'elementor-edit-mode'
      }
    };
  }

  getDefaultElements() {
    const selectors = this.getSettings('selectors');
    return {
      $elements: this.$element.find(selectors.elements).not(this.$element.find(selectors.nestedDocumentElements))
    };
  }

  getDocumentSettings(setting) {
    let elementSettings;

    if (this.isEdit) {
      elementSettings = {};
      const settings = elementor.settings.page.model;
      jQuery.each(settings.getActiveControls(), controlKey => {
        elementSettings[controlKey] = settings.attributes[controlKey];
      });
    } else {
      elementSettings = this.$element.data('elementor-settings') || {};
    }

    return this.getItems(elementSettings, setting);
  }

  runElementsHandlers() {
    this.elements.$elements.each((index, element) => elementorFrontend.elementsHandler.runReadyTrigger(element));
  }

  onInit() {
    this.$element = this.getSettings('$element');
    super.onInit();
    this.isEdit = this.$element.hasClass(this.getSettings('classes.editMode'));

    if (this.isEdit) {
      elementor.on('document:loaded', () => {
        elementor.settings.page.model.on('change', this.onSettingsChange.bind(this));
      });
    } else {
      this.runElementsHandlers();
    }
  }

  onSettingsChange() {}

}

exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/frontend/handlers/base-swiper.js":
/*!*********************************************************!*\
  !*** ../assets/dev/js/frontend/handlers/base-swiper.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");

Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

var _base = _interopRequireDefault(__webpack_require__(/*! ./base */ "../assets/dev/js/frontend/handlers/base.js"));

class SwiperHandlerBase extends _base.default {
  getInitialSlide() {
    const editSettings = this.getEditSettings();
    return editSettings.activeItemIndex ? editSettings.activeItemIndex - 1 : 0;
  }

  getSlidesCount() {
    return this.elements.$slides.length;
  } // This method live-handles the 'Pause On Hover' control's value being changed in the Editor Panel


  togglePauseOnHover(toggleOn) {
    if (toggleOn) {
      this.elements.$swiperContainer.on({
        mouseenter: () => {
          this.swiper.autoplay.stop();
        },
        mouseleave: () => {
          this.swiper.autoplay.start();
        }
      });
    } else {
      this.elements.$swiperContainer.off('mouseenter mouseleave');
    }
  }

  handleKenBurns() {
    const settings = this.getSettings();

    if (this.$activeImageBg) {
      this.$activeImageBg.removeClass(settings.classes.kenBurnsActive);
    }

    this.activeItemIndex = this.swiper ? this.swiper.activeIndex : this.getInitialSlide();

    if (this.swiper) {
      this.$activeImageBg = jQuery(this.swiper.slides[this.activeItemIndex]).children('.' + settings.classes.slideBackground);
    } else {
      this.$activeImageBg = jQuery(this.elements.$slides[0]).children('.' + settings.classes.slideBackground);
    }

    this.$activeImageBg.addClass(settings.classes.kenBurnsActive);
  }

}

exports.default = SwiperHandlerBase;

/***/ }),

/***/ "../assets/dev/js/frontend/handlers/base.js":
/*!**************************************************!*\
  !*** ../assets/dev/js/frontend/handlers/base.js ***!
  \**************************************************/
/***/ ((module) => {

"use strict";


module.exports = elementorModules.ViewModule.extend({
  $element: null,
  editorListeners: null,
  onElementChange: null,
  onEditSettingsChange: null,
  onPageSettingsChange: null,
  isEdit: null,
  __construct: function (settings) {
    if (!this.isActive(settings)) {
      return;
    }

    this.$element = settings.$element;
    this.isEdit = this.$element.hasClass('elementor-element-edit-mode');

    if (this.isEdit) {
      this.addEditorListeners();
    }
  },
  isActive: function () {
    return true;
  },
  findElement: function (selector) {
    var $mainElement = this.$element;
    return $mainElement.find(selector).filter(function () {
      return jQuery(this).closest('.elementor-element').is($mainElement);
    });
  },
  getUniqueHandlerID: function (cid, $element) {
    if (!cid) {
      cid = this.getModelCID();
    }

    if (!$element) {
      $element = this.$element;
    }

    return cid + $element.attr('data-element_type') + this.getConstructorID();
  },
  initEditorListeners: function () {
    var self = this;
    self.editorListeners = [{
      event: 'element:destroy',
      to: elementor.channels.data,
      callback: function (removedModel) {
        if (removedModel.cid !== self.getModelCID()) {
          return;
        }

        self.onDestroy();
      }
    }];

    if (self.onElementChange) {
      const elementType = self.getWidgetType() || self.getElementType();
      let eventName = 'change';

      if ('global' !== elementType) {
        eventName += ':' + elementType;
      }

      self.editorListeners.push({
        event: eventName,
        to: elementor.channels.editor,
        callback: function (controlView, elementView) {
          var elementViewHandlerID = self.getUniqueHandlerID(elementView.model.cid, elementView.$el);

          if (elementViewHandlerID !== self.getUniqueHandlerID()) {
            return;
          }

          self.onElementChange(controlView.model.get('name'), controlView, elementView);
        }
      });
    }

    if (self.onEditSettingsChange) {
      self.editorListeners.push({
        event: 'change:editSettings',
        to: elementor.channels.editor,
        callback: function (changedModel, view) {
          if (view.model.cid !== self.getModelCID()) {
            return;
          }

          self.onEditSettingsChange(Object.keys(changedModel.changed)[0]);
        }
      });
    }

    ['page'].forEach(function (settingsType) {
      var listenerMethodName = 'on' + settingsType[0].toUpperCase() + settingsType.slice(1) + 'SettingsChange';

      if (self[listenerMethodName]) {
        self.editorListeners.push({
          event: 'change',
          to: elementor.settings[settingsType].model,
          callback: function (model) {
            self[listenerMethodName](model.changed);
          }
        });
      }
    });
  },
  getEditorListeners: function () {
    if (!this.editorListeners) {
      this.initEditorListeners();
    }

    return this.editorListeners;
  },
  addEditorListeners: function () {
    var uniqueHandlerID = this.getUniqueHandlerID();
    this.getEditorListeners().forEach(function (listener) {
      elementorFrontend.addListenerOnce(uniqueHandlerID, listener.event, listener.callback, listener.to);
    });
  },
  removeEditorListeners: function () {
    var uniqueHandlerID = this.getUniqueHandlerID();
    this.getEditorListeners().forEach(function (listener) {
      elementorFrontend.removeListeners(uniqueHandlerID, listener.event, null, listener.to);
    });
  },
  getElementType: function () {
    return this.$element.data('element_type');
  },
  getWidgetType: function () {
    const widgetType = this.$element.data('widget_type');

    if (!widgetType) {
      return;
    }

    return widgetType.split('.')[0];
  },
  getID: function () {
    return this.$element.data('id');
  },
  getModelCID: function () {
    return this.$element.data('model-cid');
  },
  getElementSettings: function (setting) {
    let elementSettings = {};
    const modelCID = this.getModelCID();

    if (this.isEdit && modelCID) {
      const settings = elementorFrontend.config.elements.data[modelCID],
            attributes = settings.attributes;
      let type = attributes.widgetType || attributes.elType;

      if (attributes.isInner) {
        type = 'inner-' + type;
      }

      let settingsKeys = elementorFrontend.config.elements.keys[type];

      if (!settingsKeys) {
        settingsKeys = elementorFrontend.config.elements.keys[type] = [];
        jQuery.each(settings.controls, (name, control) => {
          if (control.frontend_available) {
            settingsKeys.push(name);
          }
        });
      }

      jQuery.each(settings.getActiveControls(), function (controlKey) {
        if (-1 !== settingsKeys.indexOf(controlKey)) {
          let value = attributes[controlKey];

          if (value.toJSON) {
            value = value.toJSON();
          }

          elementSettings[controlKey] = value;
        }
      });
    } else {
      elementSettings = this.$element.data('settings') || {};
    }

    return this.getItems(elementSettings, setting);
  },
  getEditSettings: function (setting) {
    var attributes = {};

    if (this.isEdit) {
      attributes = elementorFrontend.config.elements.editSettings[this.getModelCID()].attributes;
    }

    return this.getItems(attributes, setting);
  },
  getCurrentDeviceSetting: function (settingKey) {
    return elementorFrontend.getCurrentDeviceSetting(this.getElementSettings(), settingKey);
  },
  onInit: function () {
    if (this.isActive(this.getSettings())) {
      elementorModules.ViewModule.prototype.onInit.apply(this, arguments);
    }
  },
  onDestroy: function () {
    if (this.isEdit) {
      this.removeEditorListeners();
    }

    if (this.unbindEvents) {
      this.unbindEvents();
    }
  }
});

/***/ }),

/***/ "../assets/dev/js/frontend/modules.js":
/*!********************************************!*\
  !*** ../assets/dev/js/frontend/modules.js ***!
  \********************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");

var _modules = _interopRequireDefault(__webpack_require__(/*! ../modules/modules */ "../assets/dev/js/modules/modules.js"));

var _document = _interopRequireDefault(__webpack_require__(/*! ./document */ "../assets/dev/js/frontend/document.js"));

var _stretchElement = _interopRequireDefault(__webpack_require__(/*! ./tools/stretch-element */ "../assets/dev/js/frontend/tools/stretch-element.js"));

var _base = _interopRequireDefault(__webpack_require__(/*! ./handlers/base */ "../assets/dev/js/frontend/handlers/base.js"));

var _baseSwiper = _interopRequireDefault(__webpack_require__(/*! ./handlers/base-swiper */ "../assets/dev/js/frontend/handlers/base-swiper.js"));

_modules.default.frontend = {
  Document: _document.default,
  tools: {
    StretchElement: _stretchElement.default
  },
  handlers: {
    Base: _base.default,
    SwiperBase: _baseSwiper.default
  }
};

/***/ }),

/***/ "../assets/dev/js/frontend/tools/stretch-element.js":
/*!**********************************************************!*\
  !*** ../assets/dev/js/frontend/tools/stretch-element.js ***!
  \**********************************************************/
/***/ ((module) => {

"use strict";


module.exports = elementorModules.ViewModule.extend({
  getDefaultSettings: function () {
    return {
      element: null,
      direction: elementorFrontend.config.is_rtl ? 'right' : 'left',
      selectors: {
        container: window
      }
    };
  },
  getDefaultElements: function () {
    return {
      $element: jQuery(this.getSettings('element'))
    };
  },
  stretch: function () {
    var containerSelector = this.getSettings('selectors.container'),
        $container;

    try {
      $container = jQuery(containerSelector);
    } catch (e) {}

    if (!$container || !$container.length) {
      $container = jQuery(this.getDefaultSettings().selectors.container);
    }

    this.reset();
    var $element = this.elements.$element,
        containerWidth = $container.innerWidth(),
        elementOffset = $element.offset().left,
        isFixed = 'fixed' === $element.css('position'),
        correctOffset = isFixed ? 0 : elementOffset;

    if (window !== $container[0]) {
      var containerOffset = $container.offset().left;

      if (isFixed) {
        correctOffset = containerOffset;
      }

      if (elementOffset > containerOffset) {
        correctOffset = elementOffset - containerOffset;
      }
    }

    if (!isFixed) {
      if (elementorFrontend.config.is_rtl) {
        correctOffset = containerWidth - ($element.outerWidth() + correctOffset);
      }

      correctOffset = -correctOffset;
    }

    var css = {};
    css.width = containerWidth + 'px';
    css[this.getSettings('direction')] = correctOffset + 'px';
    $element.css(css);
  },
  reset: function () {
    var css = {};
    css.width = '';
    css[this.getSettings('direction')] = '';
    this.elements.$element.css(css);
  }
});

/***/ }),

/***/ "../assets/dev/js/modules/imports/args-object.js":
/*!*******************************************************!*\
  !*** ../assets/dev/js/modules/imports/args-object.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");

Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

var _instanceType = _interopRequireDefault(__webpack_require__(/*! ./instance-type */ "../assets/dev/js/modules/imports/instance-type.js"));

class ArgsObject extends _instanceType.default {
  static getInstanceType() {
    return 'ArgsObject';
  }
  /**
   * Function constructor().
   *
   * Create ArgsObject.
   *
   * @param {{}} args
   */


  constructor(args) {
    super();
    this.args = args;
  }
  /**
   * Function requireArgument().
   *
   * Validate property in args.
   *
   * @param {string} property
   * @param {{}} args
   *
   * @throws {Error}
   *
   */


  requireArgument(property, args = this.args) {
    if (!args.hasOwnProperty(property)) {
      throw Error(`${property} is required.`);
    }
  }
  /**
   * Function requireArgumentType().
   *
   * Validate property in args using `type === typeof(args.whatever)`.
   *
   * @param {string} property
   * @param {string} type
   * @param {{}} args
   *
   * @throws {Error}
   *
   */


  requireArgumentType(property, type, args = this.args) {
    this.requireArgument(property, args);

    if (typeof args[property] !== type) {
      throw Error(`${property} invalid type: ${type}.`);
    }
  }
  /**
   * Function requireArgumentInstance().
   *
   * Validate property in args using `args.whatever instanceof instance`.
   *
   * @param {string} property
   * @param {instanceof} instance
   * @param {{}} args
   *
   * @throws {Error}
   *
   */


  requireArgumentInstance(property, instance, args = this.args) {
    this.requireArgument(property, args);

    if (!(args[property] instanceof instance)) {
      throw Error(`${property} invalid instance.`);
    }
  }
  /**
   * Function requireArgumentConstructor().
   *
   * Validate property in args using `type === args.whatever.constructor`.
   *
   * @param {string} property
   * @param {*} type
   * @param {{}} args
   *
   * @throws {Error}
   *
   */


  requireArgumentConstructor(property, type, args = this.args) {
    this.requireArgument(property, args);

    if (args[property].constructor !== type) {
      throw Error(`${property} invalid constructor type.`);
    }
  }

}

exports.default = ArgsObject;

/***/ }),

/***/ "../assets/dev/js/modules/imports/force-method-implementation.js":
/*!***********************************************************************!*\
  !*** ../assets/dev/js/modules/imports/force-method-implementation.js ***!
  \***********************************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = exports.ForceMethodImplementation = void 0;

// TODO: Wrong location used as `elementorModules.ForceMethodImplementation(); should be` `elementorUtils.forceMethodImplementation()`;
class ForceMethodImplementation extends Error {
  constructor(info = {}) {
    super(`${info.isStatic ? 'static ' : ''}${info.fullName}() should be implemented, please provide '${info.functionName || info.fullName}' functionality.`);
    Error.captureStackTrace(this, ForceMethodImplementation);
  }

}

exports.ForceMethodImplementation = ForceMethodImplementation;

var _default = () => {
  const stack = Error().stack,
        caller = stack.split('\n')[2].trim(),
        callerName = caller.startsWith('at new') ? 'constructor' : caller.split(' ')[1],
        info = {};
  info.functionName = callerName;
  info.fullName = callerName;

  if (info.functionName.includes('.')) {
    const parts = info.functionName.split('.');
    info.className = parts[0];
    info.functionName = parts[1];
  } else {
    info.isStatic = true;
  }

  throw new ForceMethodImplementation(info);
};

exports.default = _default;

/***/ }),

/***/ "../assets/dev/js/modules/imports/instance-type.js":
/*!*********************************************************!*\
  !*** ../assets/dev/js/modules/imports/instance-type.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

class InstanceType {
  static [Symbol.hasInstance](target) {
    /**
     * This is function extending being called each time JS uses instanceOf, since babel use it each time it create new class
     * its give's opportunity to mange capabilities of instanceOf operator.
     * saving current class each time will give option later to handle instanceOf manually.
     */
    let result = super[Symbol.hasInstance](target); // Act normal when validate a class, which does not have instance type.

    if (target && !target.constructor.getInstanceType) {
      return result;
    }

    if (target) {
      if (!target.instanceTypes) {
        target.instanceTypes = [];
      }

      if (!result) {
        if (this.getInstanceType() === target.constructor.getInstanceType()) {
          result = true;
        }
      }

      if (result) {
        const name = this.getInstanceType === InstanceType.getInstanceType ? 'BaseInstanceType' : this.getInstanceType();

        if (-1 === target.instanceTypes.indexOf(name)) {
          target.instanceTypes.push(name);
        }
      }
    }

    if (!result && target) {
      // Check if the given 'target', is instance of known types.
      result = target.instanceTypes && Array.isArray(target.instanceTypes) && -1 !== target.instanceTypes.indexOf(this.getInstanceType());
    }

    return result;
  }

  constructor() {
    // Since anonymous classes sometimes do not get validated by babel, do it manually.
    let target = new.target;
    const prototypes = [];

    while (target.__proto__ && target.__proto__.name) {
      prototypes.push(target.__proto__);
      target = target.__proto__;
    }

    prototypes.reverse().forEach(proto => this instanceof proto);
  }

  static getInstanceType() {
    elementorModules.ForceMethodImplementation();
  }

}

exports.default = InstanceType;

/***/ }),

/***/ "../assets/dev/js/modules/imports/module.js":
/*!**************************************************!*\
  !*** ../assets/dev/js/modules/imports/module.js ***!
  \**************************************************/
/***/ ((module) => {

"use strict";


const Module = function () {
  const $ = jQuery,
        instanceParams = arguments,
        self = this,
        events = {};
  let settings;

  const ensureClosureMethods = function () {
    $.each(self, function (methodName) {
      const oldMethod = self[methodName];

      if ('function' !== typeof oldMethod) {
        return;
      }

      self[methodName] = function () {
        return oldMethod.apply(self, arguments);
      };
    });
  };

  const initSettings = function () {
    settings = self.getDefaultSettings();
    const instanceSettings = instanceParams[0];

    if (instanceSettings) {
      $.extend(true, settings, instanceSettings);
    }
  };

  const init = function () {
    self.__construct.apply(self, instanceParams);

    ensureClosureMethods();
    initSettings();
    self.trigger('init');
  };

  this.getItems = function (items, itemKey) {
    if (itemKey) {
      const keyStack = itemKey.split('.'),
            currentKey = keyStack.splice(0, 1);

      if (!keyStack.length) {
        return items[currentKey];
      }

      if (!items[currentKey]) {
        return;
      }

      return this.getItems(items[currentKey], keyStack.join('.'));
    }

    return items;
  };

  this.getSettings = function (setting) {
    return this.getItems(settings, setting);
  };

  this.setSettings = function (settingKey, value, settingsContainer) {
    if (!settingsContainer) {
      settingsContainer = settings;
    }

    if ('object' === typeof settingKey) {
      $.extend(settingsContainer, settingKey);
      return self;
    }

    const keyStack = settingKey.split('.'),
          currentKey = keyStack.splice(0, 1);

    if (!keyStack.length) {
      settingsContainer[currentKey] = value;
      return self;
    }

    if (!settingsContainer[currentKey]) {
      settingsContainer[currentKey] = {};
    }

    return self.setSettings(keyStack.join('.'), value, settingsContainer[currentKey]);
  };

  this.getErrorMessage = function (type, functionName) {
    let message;

    switch (type) {
      case 'forceMethodImplementation':
        message = `The method '${functionName}' must to be implemented in the inheritor child.`;
        break;

      default:
        message = 'An error occurs';
    }

    return message;
  }; // TODO: This function should be deleted ?.


  this.forceMethodImplementation = function (functionName) {
    throw new Error(this.getErrorMessage('forceMethodImplementation', functionName));
  };

  this.on = function (eventName, callback) {
    if ('object' === typeof eventName) {
      $.each(eventName, function (singleEventName) {
        self.on(singleEventName, this);
      });
      return self;
    }

    const eventNames = eventName.split(' ');
    eventNames.forEach(function (singleEventName) {
      if (!events[singleEventName]) {
        events[singleEventName] = [];
      }

      events[singleEventName].push(callback);
    });
    return self;
  };

  this.off = function (eventName, callback) {
    if (!events[eventName]) {
      return self;
    }

    if (!callback) {
      delete events[eventName];
      return self;
    }

    const callbackIndex = events[eventName].indexOf(callback);

    if (-1 !== callbackIndex) {
      delete events[eventName][callbackIndex]; // Reset array index (for next off on same event).

      events[eventName] = events[eventName].filter(val => val);
    }

    return self;
  };

  this.trigger = function (eventName) {
    const methodName = 'on' + eventName[0].toUpperCase() + eventName.slice(1),
          params = Array.prototype.slice.call(arguments, 1);

    if (self[methodName]) {
      self[methodName].apply(self, params);
    }

    const callbacks = events[eventName];

    if (!callbacks) {
      return self;
    }

    $.each(callbacks, function (index, callback) {
      callback.apply(self, params);
    });
    return self;
  };

  init();
};

Module.prototype.__construct = function () {};

Module.prototype.getDefaultSettings = function () {
  return {};
};

Module.prototype.getConstructorID = function () {
  return this.constructor.name;
};

Module.extend = function (properties) {
  const $ = jQuery,
        parent = this;

  const child = function () {
    return parent.apply(this, arguments);
  };

  $.extend(child, parent);
  child.prototype = Object.create($.extend({}, parent.prototype, properties));
  child.prototype.constructor = child;
  child.__super__ = parent.prototype;
  return child;
};

module.exports = Module;

/***/ }),

/***/ "../assets/dev/js/modules/imports/utils/masonry.js":
/*!*********************************************************!*\
  !*** ../assets/dev/js/modules/imports/utils/masonry.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");

var _viewModule = _interopRequireDefault(__webpack_require__(/*! ../view-module */ "../assets/dev/js/modules/imports/view-module.js"));

module.exports = _viewModule.default.extend({
  getDefaultSettings: function () {
    return {
      container: null,
      items: null,
      columnsCount: 3,
      verticalSpaceBetween: 30
    };
  },
  getDefaultElements: function () {
    return {
      $container: jQuery(this.getSettings('container')),
      $items: jQuery(this.getSettings('items'))
    };
  },
  run: function () {
    var heights = [],
        distanceFromTop = this.elements.$container.position().top,
        settings = this.getSettings(),
        columnsCount = settings.columnsCount;
    distanceFromTop += parseInt(this.elements.$container.css('margin-top'), 10);
    this.elements.$items.each(function (index) {
      var row = Math.floor(index / columnsCount),
          $item = jQuery(this),
          itemHeight = $item[0].getBoundingClientRect().height + settings.verticalSpaceBetween;

      if (row) {
        var itemPosition = $item.position(),
            indexAtRow = index % columnsCount,
            pullHeight = itemPosition.top - distanceFromTop - heights[indexAtRow];
        pullHeight -= parseInt($item.css('margin-top'), 10);
        pullHeight *= -1;
        $item.css('margin-top', pullHeight + 'px');
        heights[indexAtRow] += itemHeight;
      } else {
        heights.push(itemHeight);
      }
    });
  }
});

/***/ }),

/***/ "../assets/dev/js/modules/imports/utils/scroll.js":
/*!********************************************************!*\
  !*** ../assets/dev/js/modules/imports/utils/scroll.js ***!
  \********************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

// Moved from elementor pro: 'assets/dev/js/frontend/utils'
class Scroll {
  /**
   * @param {object} obj
   * @param {number} obj.sensitivity - Value between 0-100 - Will determine the intersection trigger points on the element
   * @param {function} obj.callback - Will be triggered on each intersection point between the element and the viewport top/bottom
   * @param {string} obj.offset - Offset between the element intersection points and the viewport, written like in CSS: '-50% 0 -25%'
   * @param {HTMLElement} obj.root - The element that the events will be relative to, if 'null' will be relative to the viewport
   */
  static scrollObserver(obj) {
    let lastScrollY = 0; // Generating threshholds points along the animation height
    // More threshholds points = more trigger points of the callback

    const buildThreshholds = (sensitivityPercentage = 0) => {
      const threshholds = [];

      if (sensitivityPercentage > 0 && sensitivityPercentage <= 100) {
        const increment = 100 / sensitivityPercentage;

        for (let i = 0; i <= 100; i += increment) {
          threshholds.push(i / 100);
        }
      } else {
        threshholds.push(0);
      }

      return threshholds;
    };

    const options = {
      root: obj.root || null,
      rootMargin: obj.offset || '0px',
      threshold: buildThreshholds(obj.sensitivity)
    };

    function handleIntersect(entries, observer) {
      const currentScrollY = entries[0].boundingClientRect.y,
            isInViewport = entries[0].isIntersecting,
            intersectionScrollDirection = currentScrollY < lastScrollY ? 'down' : 'up',
            scrollPercentage = Math.abs(parseFloat((entries[0].intersectionRatio * 100).toFixed(2)));
      obj.callback({
        sensitivity: obj.sensitivity,
        isInViewport,
        scrollPercentage,
        intersectionScrollDirection
      });
      lastScrollY = currentScrollY;
    }

    return new IntersectionObserver(handleIntersect, options);
  }
  /**
   * @param {jQuery Element} $element
   * @param {object} offsetObj
   * @param {number} offsetObj.start - Offset start value in percentages
   * @param {number} offsetObj.end - Offset end value in percentages
   */


  static getElementViewportPercentage($element, offsetObj = {}) {
    const elementOffset = $element[0].getBoundingClientRect(),
          offsetStart = offsetObj.start || 0,
          offsetEnd = offsetObj.end || 0,
          windowStartOffset = window.innerHeight * offsetStart / 100,
          windowEndOffset = window.innerHeight * offsetEnd / 100,
          y1 = elementOffset.top - window.innerHeight,
          y2 = elementOffset.top + windowStartOffset + $element.height(),
          startPosition = 0 - y1 + windowStartOffset,
          endPosition = y2 - y1 + windowEndOffset,
          percent = Math.max(0, Math.min(startPosition / endPosition, 1));
    return parseFloat((percent * 100).toFixed(2));
  }
  /**
   * @param {object} offsetObj
   * @param {number} offsetObj.start - Offset start value in percentages
   * @param {number} offsetObj.end - Offset end value in percentages
   * @param {number} limitPageHeight - Will limit the page height calculation
   */


  static getPageScrollPercentage(offsetObj = {}, limitPageHeight) {
    const offsetStart = offsetObj.start || 0,
          offsetEnd = offsetObj.end || 0,
          initialPageHeight = limitPageHeight || document.documentElement.scrollHeight - document.documentElement.clientHeight,
          heightOffset = initialPageHeight * offsetStart / 100,
          pageRange = initialPageHeight + heightOffset + initialPageHeight * offsetEnd / 100,
          scrollPos = document.documentElement.scrollTop + document.body.scrollTop + heightOffset;
    return scrollPos / pageRange * 100;
  }

}

exports.default = Scroll;

/***/ }),

/***/ "../assets/dev/js/modules/imports/view-module.js":
/*!*******************************************************!*\
  !*** ../assets/dev/js/modules/imports/view-module.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");

var _module = _interopRequireDefault(__webpack_require__(/*! ./module */ "../assets/dev/js/modules/imports/module.js"));

module.exports = _module.default.extend({
  elements: null,
  getDefaultElements: function () {
    return {};
  },
  bindEvents: function () {},
  onInit: function () {
    this.initElements();
    this.bindEvents();
  },
  initElements: function () {
    this.elements = this.getDefaultElements();
  }
});

/***/ }),

/***/ "../assets/dev/js/modules/modules.js":
/*!*******************************************!*\
  !*** ../assets/dev/js/modules/modules.js ***!
  \*******************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");

Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

var _module = _interopRequireDefault(__webpack_require__(/*! ./imports/module */ "../assets/dev/js/modules/imports/module.js"));

var _viewModule = _interopRequireDefault(__webpack_require__(/*! ./imports/view-module */ "../assets/dev/js/modules/imports/view-module.js"));

var _argsObject = _interopRequireDefault(__webpack_require__(/*! ./imports/args-object */ "../assets/dev/js/modules/imports/args-object.js"));

var _masonry = _interopRequireDefault(__webpack_require__(/*! ./imports/utils/masonry */ "../assets/dev/js/modules/imports/utils/masonry.js"));

var _scroll = _interopRequireDefault(__webpack_require__(/*! ./imports/utils/scroll */ "../assets/dev/js/modules/imports/utils/scroll.js"));

var _forceMethodImplementation = _interopRequireDefault(__webpack_require__(/*! ./imports/force-method-implementation */ "../assets/dev/js/modules/imports/force-method-implementation.js"));

var _default = window.elementorModules = {
  Module: _module.default,
  ViewModule: _viewModule.default,
  ArgsObject: _argsObject.default,
  ForceMethodImplementation: _forceMethodImplementation.default,
  utils: {
    Masonry: _masonry.default,
    Scroll: _scroll.default
  }
};

exports.default = _default;

/***/ })

},
/******/ __webpack_require__ => { // webpackRuntimeModules
/******/ "use strict";
/******/ 
/******/ var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
/******/ var __webpack_exports__ = (__webpack_exec__("../assets/dev/js/frontend/modules.js"));
/******/ }
]);
//# sourceMappingURL=frontend-modules.js.mapassets/js/counter.1bf6011c2ab9506880c2.bundle.min.js000064400000001617151327220410015253 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(self.webpackChunkelementor=self.webpackChunkelementor||[]).push([[120],{7884:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class Counter extends elementorModules.frontend.handlers.Base{getDefaultSettings(){return{selectors:{counterNumber:".elementor-counter-number"}}}getDefaultElements(){const e=this.getSettings("selectors");return{$counterNumber:this.$element.find(e.counterNumber)}}onInit(){super.onInit(),this.intersectionObserver=elementorModules.utils.Scroll.scrollObserver({callback:e=>{if(e.isInViewport){this.intersectionObserver.unobserve(this.elements.$counterNumber[0]);const e=this.elements.$counterNumber.data(),t=e.toValue.toString().match(/\.(.*)/);t&&(e.rounding=t[1].length),this.elements.$counterNumber.numerator(e)}}}),this.intersectionObserver.observe(this.elements.$counterNumber[0])}}t.default=Counter}}]);assets/js/app-packages.min.js000064400000576665151327220410012164 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(()=>{var t={26359:()=>{},89905:()=>{},45362:()=>{},54189:()=>{},22269:()=>{},96351:()=>{},16165:()=>{},8167:()=>{},40604:()=>{},38055:()=>{},632:()=>{},42749:()=>{},40675:()=>{},6235:()=>{},99694:()=>{},38150:()=>{},70808:()=>{},39355:()=>{},56453:()=>{},60037:()=>{},68275:()=>{},3272:()=>{},45813:()=>{},18713:()=>{},80322:()=>{},82254:()=>{},1431:()=>{},53591:()=>{},89784:()=>{},20186:()=>{},90358:()=>{},64392:()=>{},3714:()=>{},35453:()=>{},59964:()=>{},48e3:()=>{},67067:()=>{},85028:()=>{},75453:(t,r,a)=>{t.exports=a(7421)},59396:(t,r,a)=>{t.exports=a(70157)},32009:(t,r,a)=>{t.exports=a(89710)},15149:(t,r,a)=>{t.exports=a(66458)},38401:(t,r,a)=>{t.exports=a(14710)},92937:(t,r,a)=>{t.exports=a(23022)},67394:(t,r,a)=>{t.exports=a(43153)},38923:(t,r,a)=>{t.exports=a(8531)},23587:(t,r,a)=>{t.exports=a(32622)},63774:(t,r,a)=>{t.exports=a(27410)},95315:(t,r,a)=>{t.exports=a(19035)},82055:(t,r,a)=>{t.exports=a(58535)},83452:(t,r,a)=>{t.exports=a(97220)},28274:(t,r,a)=>{t.exports=a(65135)},14176:(t,r,a)=>{t.exports=a(34345)},75499:(t,r,a)=>{t.exports=a(43094)},78282:(t,r,a)=>{t.exports=a(17641)},41281:(t,r,a)=>{t.exports=a(19103)},50093:(t,r,a)=>{t.exports=a(39871)},93168:(t,r,a)=>{t.exports=a(89999)},72292:t=>{t.exports=function _arrayLikeToArray(t,r){(null==r||r>t.length)&&(r=t.length);for(var a=0,o=new Array(r);a<r;a++)o[a]=t[a];return o},t.exports.default=t.exports,t.exports.__esModule=!0},86870:(t,r,a)=>{var o=a(59396);t.exports=function _arrayWithHoles(t){if(o(t))return t},t.exports.default=t.exports,t.exports.__esModule=!0},35693:(t,r,a)=>{var o=a(59396),l=a(72292);t.exports=function _arrayWithoutHoles(t){if(o(t))return l(t)},t.exports.default=t.exports,t.exports.__esModule=!0},38852:t=>{t.exports=function _assertThisInitialized(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t},t.exports.default=t.exports,t.exports.__esModule=!0},11959:t=>{t.exports=function _classCallCheck(t,r){if(!(t instanceof r))throw new TypeError("Cannot call a class as a function")},t.exports.default=t.exports,t.exports.__esModule=!0},39041:(t,r,a)=>{var o=a(67394);function _defineProperties(t,r){for(var a=0;a<r.length;a++){var l=r[a];l.enumerable=l.enumerable||!1,l.configurable=!0,"value"in l&&(l.writable=!0),o(t,l.key,l)}}t.exports=function _createClass(t,r,a){return r&&_defineProperties(t.prototype,r),a&&_defineProperties(t,a),t},t.exports.default=t.exports,t.exports.__esModule=!0},74758:(t,r,a)=>{var o=a(41281),l=a(50093),i=a(59396),u=a(24594);t.exports=function _createForOfIteratorHelper(t,r){var a=void 0!==o&&t[l]||t["@@iterator"];if(!a){if(i(t)||(a=u(t))||r&&t&&"number"==typeof t.length){a&&(t=a);var c=0,d=function F(){};return{s:d,n:function n(){return c>=t.length?{done:!0}:{done:!1,value:t[c++]}},e:function e(t){throw t},f:d}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var p,m=!0,v=!1;return{s:function s(){a=a.call(t)},n:function n(){var t=a.next();return m=t.done,t},e:function e(t){v=!0,p=t},f:function f(){try{m||null==a.return||a.return()}finally{if(v)throw p}}}},t.exports.default=t.exports,t.exports.__esModule=!0},68537:(t,r,a)=>{var o=a(75499),l=a(44263),i=a(898),u=a(59771);t.exports=function _createSuper(t){var r=i();return function _createSuperInternal(){var a,i=l(t);if(r){var c=l(this).constructor;a=o(i,arguments,c)}else a=i.apply(this,arguments);return u(this,a)}},t.exports.default=t.exports,t.exports.__esModule=!0},18042:(t,r,a)=>{var o=a(67394);t.exports=function _defineProperty(t,r,a){return r in t?o(t,r,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[r]=a,t},t.exports.default=t.exports,t.exports.__esModule=!0},37959:(t,r,a)=>{var o=a(15149);function _extends(){return t.exports=_extends=o||function(t){for(var r=1;r<arguments.length;r++){var a=arguments[r];for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(t[o]=a[o])}return t},t.exports.default=t.exports,t.exports.__esModule=!0,_extends.apply(this,arguments)}t.exports=_extends,t.exports.default=t.exports,t.exports.__esModule=!0},76700:(t,r,a)=>{var o=a(78282),l=a(23587),i=a(49445);function _get(r,a,u){return"undefined"!=typeof Reflect&&o?(t.exports=_get=o,t.exports.default=t.exports,t.exports.__esModule=!0):(t.exports=_get=function _get(t,r,a){var o=i(t,r);if(o){var u=l(o,r);return u.get?u.get.call(a):u.value}},t.exports.default=t.exports,t.exports.__esModule=!0),_get(r,a,u||r)}t.exports=_get,t.exports.default=t.exports,t.exports.__esModule=!0},44263:(t,r,a)=>{var o=a(28274),l=a(82055);function _getPrototypeOf(r){return t.exports=_getPrototypeOf=o?l:function _getPrototypeOf(t){return t.__proto__||l(t)},t.exports.default=t.exports,t.exports.__esModule=!0,_getPrototypeOf(r)}t.exports=_getPrototypeOf,t.exports.default=t.exports,t.exports.__esModule=!0},77371:(t,r,a)=>{var o=a(38401),l=a(76870);t.exports=function _inherits(t,r){if("function"!=typeof r&&null!==r)throw new TypeError("Super expression must either be null or a function");t.prototype=o(r&&r.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),r&&l(t,r)},t.exports.default=t.exports,t.exports.__esModule=!0},67971:t=>{t.exports=function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}},t.exports.default=t.exports,t.exports.__esModule=!0},52369:(t,r,a)=>{var o=a(24596).default,l=a(93168),i=a(67394),u=a(23587);function _getRequireWildcardCache(t){if("function"!=typeof l)return null;var r=new l,a=new l;return(_getRequireWildcardCache=function _getRequireWildcardCache(t){return t?a:r})(t)}t.exports=function _interopRequireWildcard(t,r){if(!r&&t&&t.__esModule)return t;if(null===t||"object"!==o(t)&&"function"!=typeof t)return{default:t};var a=_getRequireWildcardCache(r);if(a&&a.has(t))return a.get(t);var l={},c=i&&u;for(var d in t)if("default"!==d&&Object.prototype.hasOwnProperty.call(t,d)){var p=c?u(t,d):null;p&&(p.get||p.set)?i(l,d,p):l[d]=t[d]}return l.default=t,a&&a.set(t,l),l},t.exports.default=t.exports,t.exports.__esModule=!0},898:(t,r,a)=>{var o=a(75499);t.exports=function _isNativeReflectConstruct(){if("undefined"==typeof Reflect||!o)return!1;if(o.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(o(Boolean,[],(function(){}))),!0}catch(t){return!1}},t.exports.default=t.exports,t.exports.__esModule=!0},95915:(t,r,a)=>{var o=a(41281),l=a(50093),i=a(75453);t.exports=function _iterableToArray(t){if(void 0!==o&&null!=t[l]||null!=t["@@iterator"])return i(t)},t.exports.default=t.exports,t.exports.__esModule=!0},79968:(t,r,a)=>{var o=a(41281),l=a(50093);t.exports=function _iterableToArrayLimit(t,r){var a=null==t?null:void 0!==o&&t[l]||t["@@iterator"];if(null!=a){var i,u,c=[],d=!0,p=!1;try{for(a=a.call(t);!(d=(i=a.next()).done)&&(c.push(i.value),!r||c.length!==r);d=!0);}catch(t){p=!0,u=t}finally{try{d||null==a.return||a.return()}finally{if(p)throw u}}return c}},t.exports.default=t.exports,t.exports.__esModule=!0},39198:t=>{t.exports=function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")},t.exports.default=t.exports,t.exports.__esModule=!0},84360:t=>{t.exports=function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")},t.exports.default=t.exports,t.exports.__esModule=!0},84899:(t,r,a)=>{var o=a(83452),l=a(95315),i=a(23587),u=a(63774),c=a(92937),d=a(67394),p=a(18042);function ownKeys(t,r){var a=o(t);if(l){var u=l(t);r&&(u=u.filter((function(r){return i(t,r).enumerable}))),a.push.apply(a,u)}return a}t.exports=function _objectSpread2(t){for(var r=1;r<arguments.length;r++){var a=null!=arguments[r]?arguments[r]:{};r%2?ownKeys(Object(a),!0).forEach((function(r){p(t,r,a[r])})):u?c(t,u(a)):ownKeys(Object(a)).forEach((function(r){d(t,r,i(a,r))}))}return t},t.exports.default=t.exports,t.exports.__esModule=!0},59771:(t,r,a)=>{var o=a(24596).default,l=a(38852);t.exports=function _possibleConstructorReturn(t,r){return!r||"object"!==o(r)&&"function"!=typeof r?l(t):r},t.exports.default=t.exports,t.exports.__esModule=!0},76870:(t,r,a)=>{var o=a(28274);function _setPrototypeOf(r,a){return t.exports=_setPrototypeOf=o||function _setPrototypeOf(t,r){return t.__proto__=r,t},t.exports.default=t.exports,t.exports.__esModule=!0,_setPrototypeOf(r,a)}t.exports=_setPrototypeOf,t.exports.default=t.exports,t.exports.__esModule=!0},47834:(t,r,a)=>{var o=a(86870),l=a(79968),i=a(24594),u=a(39198);t.exports=function _slicedToArray(t,r){return o(t)||l(t,r)||i(t,r)||u()},t.exports.default=t.exports,t.exports.__esModule=!0},49445:(t,r,a)=>{var o=a(44263);t.exports=function _superPropBase(t,r){for(;!Object.prototype.hasOwnProperty.call(t,r)&&null!==(t=o(t)););return t},t.exports.default=t.exports,t.exports.__esModule=!0},74846:(t,r,a)=>{var o=a(35693),l=a(95915),i=a(24594),u=a(84360);t.exports=function _toConsumableArray(t){return o(t)||l(t)||i(t)||u()},t.exports.default=t.exports,t.exports.__esModule=!0},24596:(t,r,a)=>{var o=a(41281),l=a(50093);function _typeof(r){return"function"==typeof o&&"symbol"==typeof l?(t.exports=_typeof=function _typeof(t){return typeof t},t.exports.default=t.exports,t.exports.__esModule=!0):(t.exports=_typeof=function _typeof(t){return t&&"function"==typeof o&&t.constructor===o&&t!==o.prototype?"symbol":typeof t},t.exports.default=t.exports,t.exports.__esModule=!0),_typeof(r)}t.exports=_typeof,t.exports.default=t.exports,t.exports.__esModule=!0},24594:(t,r,a)=>{var o=a(75453),l=a(72292);t.exports=function _unsupportedIterableToArray(t,r){if(t){if("string"==typeof t)return l(t,r);var a=Object.prototype.toString.call(t).slice(8,-1);return"Object"===a&&t.constructor&&(a=t.constructor.name),"Map"===a||"Set"===a?o(t):"Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?l(t,r):void 0}},t.exports.default=t.exports,t.exports.__esModule=!0},50927:(t,r,a)=>{"use strict";a.r(r),a.d(r,{Link:()=>J,Location:()=>A,LocationProvider:()=>B,Match:()=>re,Redirect:()=>te,Router:()=>U,ServerLocation:()=>W,createHistory:()=>S,createMemorySource:()=>M,globalHistory:()=>O,isRedirect:()=>Z,matchPath:()=>v,navigate:()=>I,redirectTo:()=>X,useLocation:()=>ne,useMatch:()=>le,useNavigate:()=>ae,useParams:()=>oe});var o=a(63804),l=a.n(o),i=(a(23615),a(3996)),u=a.n(i),c=a(68189),d=a.n(c);function componentWillMount(){var t=this.constructor.getDerivedStateFromProps(this.props,this.state);null!=t&&this.setState(t)}function componentWillReceiveProps(t){this.setState(function updater(r){var a=this.constructor.getDerivedStateFromProps(t,r);return null!=a?a:null}.bind(this))}function componentWillUpdate(t,r){try{var a=this.props,o=this.state;this.props=t,this.state=r,this.__reactInternalSnapshotFlag=!0,this.__reactInternalSnapshot=this.getSnapshotBeforeUpdate(a,o)}finally{this.props=a,this.state=o}}componentWillMount.__suppressDeprecationWarning=!0,componentWillReceiveProps.__suppressDeprecationWarning=!0,componentWillUpdate.__suppressDeprecationWarning=!0;var p=function startsWith(t,r){return t.substr(0,r.length)===r},m=function pick(t,r){for(var a=void 0,o=void 0,l=r.split("?")[0],i=C(l),c=""===i[0],d=b(t),p=0,m=d.length;p<m;p++){var v=!1,h=d[p].route;if(h.default)o={route:h,params:{},uri:r};else{for(var g=C(h.path),_={},E=Math.max(i.length,g.length),w=0;w<E;w++){var N=g[w],P=i[w];if(x(N)){_[N.slice(1)||"*"]=i.slice(w).map(decodeURIComponent).join("/");break}if(void 0===P){v=!0;break}var S=y.exec(N);if(S&&!c){-1===T.indexOf(S[1])||u()(!1);var M=decodeURIComponent(P);_[S[1]]=M}else if(N!==P){v=!0;break}}if(!v){a={route:h,params:_,uri:"/"+i.slice(0,w).join("/")};break}}}return a||o||null},v=function match(t,r){return m([{path:t}],r)},h=function resolve(t,r){if(p(t,"/"))return t;var a=t.split("?"),o=a[0],l=a[1],i=r.split("?")[0],u=C(o),c=C(i);if(""===u[0])return w(i,l);if(!p(u[0],".")){var d=c.concat(u).join("/");return w(("/"===i?"":"/")+d,l)}for(var m=c.concat(u),v=[],h=0,g=m.length;h<g;h++){var y=m[h];".."===y?v.pop():"."!==y&&v.push(y)}return w("/"+v.join("/"),l)},g=function insertParams(t,r){var a=t.split("?"),o=a[0],l=a[1],i=void 0===l?"":l,u="/"+C(o).map((function(t){var a=y.exec(t);return a?r[a[1]]:t})).join("/"),c=r.location,d=(c=void 0===c?{}:c).search,p=(void 0===d?"":d).split("?")[1]||"";return u=w(u,i,p)},y=/^:(.+)/,_=function isDynamic(t){return y.test(t)},x=function isSplat(t){return t&&"*"===t[0]},E=function rankRoute(t,r){return{route:t,score:t.default?0:C(t.path).reduce((function(t,r){return t+=4,!function isRootSegment(t){return""===t}(r)?_(r)?t+=2:x(r)?t-=5:t+=3:t+=1,t}),0),index:r}},b=function rankRoutes(t){return t.map(E).sort((function(t,r){return t.score<r.score?1:t.score>r.score?-1:t.index-r.index}))},C=function segmentize(t){return t.replace(/(^\/+|\/+$)/g,"").split("/")},w=function addQuery(t){for(var r=arguments.length,a=Array(r>1?r-1:0),o=1;o<r;o++)a[o-1]=arguments[o];return t+((a=a.filter((function(t){return t&&t.length>0})))&&a.length>0?"?"+a.join("&"):"")},T=["uri","path"],N=Object.assign||function(t){for(var r=1;r<arguments.length;r++){var a=arguments[r];for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(t[o]=a[o])}return t},P=function getLocation(t){var r=t.location,a=r.search,o=r.hash,l=r.href,i=r.origin,u=r.protocol,c=r.host,d=r.hostname,p=r.port,m=t.location.pathname;!m&&l&&R&&(m=new URL(l).pathname);return{pathname:encodeURI(decodeURI(m)),search:a,hash:o,href:l,origin:i,protocol:u,host:c,hostname:d,port:p,state:t.history.state,key:t.history.state&&t.history.state.key||"initial"}},S=function createHistory(t,r){var a=[],o=P(t),l=!1,i=function resolveTransition(){};return{get location(){return o},get transitioning(){return l},_onTransitionComplete:function _onTransitionComplete(){l=!1,i()},listen:function listen(r){a.push(r);var l=function popstateListener(){o=P(t),r({location:o,action:"POP"})};return t.addEventListener("popstate",l),function(){t.removeEventListener("popstate",l),a=a.filter((function(t){return t!==r}))}},navigate:function navigate(r){var u=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},c=u.state,d=u.replace,p=void 0!==d&&d;if("number"==typeof r)t.history.go(r);else{c=N({},c,{key:Date.now()+""});try{l||p?t.history.replaceState(c,null,r):t.history.pushState(c,null,r)}catch(a){t.location[p?"replace":"assign"](r)}}o=P(t),l=!0;var m=new Promise((function(t){return i=t}));return a.forEach((function(t){return t({location:o,action:"PUSH"})})),m}}},M=function createMemorySource(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/",r=t.indexOf("?"),a={pathname:r>-1?t.substr(0,r):t,search:r>-1?t.substr(r):""},o=0,l=[a],i=[null];return{get location(){return l[o]},addEventListener:function addEventListener(t,r){},removeEventListener:function removeEventListener(t,r){},history:{get entries(){return l},get index(){return o},get state(){return i[o]},pushState:function pushState(t,r,a){var u=a.split("?"),c=u[0],d=u[1],p=void 0===d?"":d;o++,l.push({pathname:c,search:p.length?"?"+p:p}),i.push(t)},replaceState:function replaceState(t,r,a){var u=a.split("?"),c=u[0],d=u[1],p=void 0===d?"":d;l[o]={pathname:c,search:p},i[o]=t},go:function go(t){var r=o+t;r<0||r>i.length-1||(o=r)}}}},R=!("undefined"==typeof window||!window.document||!window.document.createElement),O=S(function getSource(){return R?window:M()}()),I=O.navigate,j=Object.assign||function(t){for(var r=1;r<arguments.length;r++){var a=arguments[r];for(var o in a)Object.prototype.hasOwnProperty.call(a,o)&&(t[o]=a[o])}return t};function _objectWithoutProperties(t,r){var a={};for(var o in t)r.indexOf(o)>=0||Object.prototype.hasOwnProperty.call(t,o)&&(a[o]=t[o]);return a}function _classCallCheck(t,r){if(!(t instanceof r))throw new TypeError("Cannot call a class as a function")}function _possibleConstructorReturn(t,r){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!r||"object"!=typeof r&&"function"!=typeof r?t:r}function _inherits(t,r){if("function"!=typeof r&&null!==r)throw new TypeError("Super expression must either be null or a function, not "+typeof r);t.prototype=Object.create(r&&r.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),r&&(Object.setPrototypeOf?Object.setPrototypeOf(t,r):t.__proto__=r)}var D=function createNamedContext(t,r){var a=d()(r);return a.displayName=t,a},L=D("Location"),A=function Location(t){var r=t.children;return l().createElement(L.Consumer,null,(function(t){return t?r(t):l().createElement(B,null,r)}))},B=function(t){function LocationProvider(){var r,a;_classCallCheck(this,LocationProvider);for(var o=arguments.length,l=Array(o),i=0;i<o;i++)l[i]=arguments[i];return r=a=_possibleConstructorReturn(this,t.call.apply(t,[this].concat(l))),a.state={context:a.getContext(),refs:{unlisten:null}},_possibleConstructorReturn(a,r)}return _inherits(LocationProvider,t),LocationProvider.prototype.getContext=function getContext(){var t=this.props.history;return{navigate:t.navigate,location:t.location}},LocationProvider.prototype.componentDidCatch=function componentDidCatch(t,r){if(!Z(t))throw t;(0,this.props.history.navigate)(t.uri,{replace:!0})},LocationProvider.prototype.componentDidUpdate=function componentDidUpdate(t,r){r.context.location!==this.state.context.location&&this.props.history._onTransitionComplete()},LocationProvider.prototype.componentDidMount=function componentDidMount(){var t=this,r=this.state.refs,a=this.props.history;a._onTransitionComplete(),r.unlisten=a.listen((function(){Promise.resolve().then((function(){requestAnimationFrame((function(){t.unmounted||t.setState((function(){return{context:t.getContext()}}))}))}))}))},LocationProvider.prototype.componentWillUnmount=function componentWillUnmount(){var t=this.state.refs;this.unmounted=!0,t.unlisten()},LocationProvider.prototype.render=function render(){var t=this.state.context,r=this.props.children;return l().createElement(L.Provider,{value:t},"function"==typeof r?r(t):r||null)},LocationProvider}(l().Component);B.defaultProps={history:O};var W=function ServerLocation(t){var r=t.url,a=t.children,o=r.indexOf("?"),i=void 0,u="";return o>-1?(i=r.substring(0,o),u=r.substring(o)):i=r,l().createElement(L.Provider,{value:{location:{pathname:i,search:u,hash:""},navigate:function navigate(){throw new Error("You can't call navigate on the server.")}}},a)},q=D("Base",{baseuri:"/",basepath:"/"}),U=function Router(t){return l().createElement(q.Consumer,null,(function(r){return l().createElement(A,null,(function(a){return l().createElement(H,j({},r,a,t))}))}))},H=function(t){function RouterImpl(){return _classCallCheck(this,RouterImpl),_possibleConstructorReturn(this,t.apply(this,arguments))}return _inherits(RouterImpl,t),RouterImpl.prototype.render=function render(){var t=this.props,r=t.location,a=t.navigate,o=t.basepath,i=t.primary,u=t.children,c=(t.baseuri,t.component),d=void 0===c?"div":c,p=_objectWithoutProperties(t,["location","navigate","basepath","primary","children","baseuri","component"]),v=l().Children.toArray(u).reduce((function(t,r){var a=se(o)(r);return t.concat(a)}),[]),g=r.pathname,y=m(v,g);if(y){var _=y.params,x=y.uri,E=y.route,b=y.route.value;o=E.default?o:E.path.replace(/\*$/,"");var C=j({},_,{uri:x,location:r,navigate:function navigate(t,r){return a(h(t,x),r)}}),w=l().cloneElement(b,C,b.props.children?l().createElement(U,{location:r,primary:i},b.props.children):void 0),T=i?K:d,N=i?j({uri:x,location:r,component:d},p):p;return l().createElement(q.Provider,{value:{baseuri:x,basepath:o}},l().createElement(T,N,w))}return null},RouterImpl}(l().PureComponent);H.defaultProps={primary:!0};var z=D("Focus"),K=function FocusHandler(t){var r=t.uri,a=t.location,o=t.component,i=_objectWithoutProperties(t,["uri","location","component"]);return l().createElement(z.Consumer,null,(function(t){return l().createElement(Y,j({},i,{component:o,requestFocus:t,uri:r,location:a}))}))},V=!0,G=0,Y=function(t){function FocusHandlerImpl(){var r,a;_classCallCheck(this,FocusHandlerImpl);for(var o=arguments.length,l=Array(o),i=0;i<o;i++)l[i]=arguments[i];return r=a=_possibleConstructorReturn(this,t.call.apply(t,[this].concat(l))),a.state={},a.requestFocus=function(t){!a.state.shouldFocus&&t&&t.focus()},_possibleConstructorReturn(a,r)}return _inherits(FocusHandlerImpl,t),FocusHandlerImpl.getDerivedStateFromProps=function getDerivedStateFromProps(t,r){if(null==r.uri)return j({shouldFocus:!0},t);var a=t.uri!==r.uri,o=r.location.pathname!==t.location.pathname&&t.location.pathname===t.uri;return j({shouldFocus:a||o},t)},FocusHandlerImpl.prototype.componentDidMount=function componentDidMount(){G++,this.focus()},FocusHandlerImpl.prototype.componentWillUnmount=function componentWillUnmount(){0===--G&&(V=!0)},FocusHandlerImpl.prototype.componentDidUpdate=function componentDidUpdate(t,r){t.location!==this.props.location&&this.state.shouldFocus&&this.focus()},FocusHandlerImpl.prototype.focus=function focus(){var t=this.props.requestFocus;t?t(this.node):V?V=!1:this.node&&(this.node.contains(document.activeElement)||this.node.focus())},FocusHandlerImpl.prototype.render=function render(){var t=this,r=this.props,a=(r.children,r.style),o=(r.requestFocus,r.component),i=void 0===o?"div":o,u=(r.uri,r.location,_objectWithoutProperties(r,["children","style","requestFocus","component","uri","location"]));return l().createElement(i,j({style:j({outline:"none"},a),tabIndex:"-1",ref:function ref(r){return t.node=r}},u),l().createElement(z.Provider,{value:this.requestFocus},this.props.children))},FocusHandlerImpl}(l().Component);!function polyfill(t){var r=t.prototype;if(!r||!r.isReactComponent)throw new Error("Can only polyfill class components");if("function"!=typeof t.getDerivedStateFromProps&&"function"!=typeof r.getSnapshotBeforeUpdate)return t;var a=null,o=null,l=null;if("function"==typeof r.componentWillMount?a="componentWillMount":"function"==typeof r.UNSAFE_componentWillMount&&(a="UNSAFE_componentWillMount"),"function"==typeof r.componentWillReceiveProps?o="componentWillReceiveProps":"function"==typeof r.UNSAFE_componentWillReceiveProps&&(o="UNSAFE_componentWillReceiveProps"),"function"==typeof r.componentWillUpdate?l="componentWillUpdate":"function"==typeof r.UNSAFE_componentWillUpdate&&(l="UNSAFE_componentWillUpdate"),null!==a||null!==o||null!==l){var i=t.displayName||t.name,u="function"==typeof t.getDerivedStateFromProps?"getDerivedStateFromProps()":"getSnapshotBeforeUpdate()";throw Error("Unsafe legacy lifecycles will not be called for components using new component APIs.\n\n"+i+" uses "+u+" but also contains the following legacy lifecycles:"+(null!==a?"\n  "+a:"")+(null!==o?"\n  "+o:"")+(null!==l?"\n  "+l:"")+"\n\nThe above lifecycles should be removed. Learn more about this warning here:\nhttps://fb.me/react-async-component-lifecycle-hooks")}if("function"==typeof t.getDerivedStateFromProps&&(r.componentWillMount=componentWillMount,r.componentWillReceiveProps=componentWillReceiveProps),"function"==typeof r.getSnapshotBeforeUpdate){if("function"!=typeof r.componentDidUpdate)throw new Error("Cannot polyfill getSnapshotBeforeUpdate() for components that do not define componentDidUpdate() on the prototype");r.componentWillUpdate=componentWillUpdate;var c=r.componentDidUpdate;r.componentDidUpdate=function componentDidUpdatePolyfill(t,r,a){var o=this.__reactInternalSnapshotFlag?this.__reactInternalSnapshot:a;c.call(this,t,r,o)}}return t}(Y);var $=function k(){},Q=l().forwardRef;void 0===Q&&(Q=function forwardRef(t){return t});var J=Q((function(t,r){var a=t.innerRef,o=_objectWithoutProperties(t,["innerRef"]);return l().createElement(q.Consumer,null,(function(t){t.basepath;var i=t.baseuri;return l().createElement(A,null,(function(t){var u=t.location,c=t.navigate,d=o.to,m=o.state,v=o.replace,g=o.getProps,y=void 0===g?$:g,_=_objectWithoutProperties(o,["to","state","replace","getProps"]),x=h(d,i),E=encodeURI(x),b=u.pathname===E,C=p(u.pathname,E);return l().createElement("a",j({ref:r||a,"aria-current":b?"page":void 0},_,y({isCurrent:b,isPartiallyCurrent:C,href:x,location:u}),{href:x,onClick:function onClick(t){if(_.onClick&&_.onClick(t),ue(t)){t.preventDefault();var r=v;if("boolean"!=typeof v&&b){var a=j({},u.state),o=(a.key,_objectWithoutProperties(a,["key"]));r=function shallowCompare(t,r){var a=Object.keys(t);return a.length===Object.keys(r).length&&a.every((function(a){return r.hasOwnProperty(a)&&t[a]===r[a]}))}(j({},m),o)}c(x,{state:m,replace:r})}}}))}))}))}));function RedirectRequest(t){this.uri=t}J.displayName="Link";var Z=function isRedirect(t){return t instanceof RedirectRequest},X=function redirectTo(t){throw new RedirectRequest(t)},ee=function(t){function RedirectImpl(){return _classCallCheck(this,RedirectImpl),_possibleConstructorReturn(this,t.apply(this,arguments))}return _inherits(RedirectImpl,t),RedirectImpl.prototype.componentDidMount=function componentDidMount(){var t=this.props,r=t.navigate,a=t.to,o=(t.from,t.replace),l=void 0===o||o,i=t.state,u=(t.noThrow,t.baseuri),c=_objectWithoutProperties(t,["navigate","to","from","replace","state","noThrow","baseuri"]);Promise.resolve().then((function(){var t=h(a,u);r(g(t,c),{replace:l,state:i})}))},RedirectImpl.prototype.render=function render(){var t=this.props,r=(t.navigate,t.to),a=(t.from,t.replace,t.state,t.noThrow),o=t.baseuri,l=_objectWithoutProperties(t,["navigate","to","from","replace","state","noThrow","baseuri"]),i=h(r,o);return a||X(g(i,l)),null},RedirectImpl}(l().Component),te=function Redirect(t){return l().createElement(q.Consumer,null,(function(r){var a=r.baseuri;return l().createElement(A,null,(function(r){return l().createElement(ee,j({},r,{baseuri:a},t))}))}))},re=function Match(t){var r=t.path,a=t.children;return l().createElement(q.Consumer,null,(function(t){var o=t.baseuri;return l().createElement(A,null,(function(t){var l=t.navigate,i=t.location,u=h(r,o),c=v(u,i.pathname);return a({navigate:l,location:i,match:c?j({},c.params,{uri:c.uri,path:r}):null})}))}))},ne=function useLocation(){var t=(0,o.useContext)(L);if(!t)throw new Error("useLocation hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router");return t.location},ae=function useNavigate(){var t=(0,o.useContext)(L);if(!t)throw new Error("useNavigate hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router");return t.navigate},oe=function useParams(){var t=(0,o.useContext)(q);if(!t)throw new Error("useParams hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router");var r=ne(),a=v(t.basepath,r.pathname);return a?a.params:null},le=function useMatch(t){if(!t)throw new Error("useMatch(path: string) requires an argument of a string to match against");var r=(0,o.useContext)(q);if(!r)throw new Error("useMatch hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router");var a=ne(),l=h(t,r.baseuri),i=v(l,a.pathname);return i?j({},i.params,{uri:i.uri,path:t}):null},ie=function stripSlashes(t){return t.replace(/(^\/+|\/+$)/g,"")},se=function createRoute(t){return function(r){if(!r)return null;if(r.type===l().Fragment&&r.props.children)return l().Children.map(r.props.children,createRoute(t));if(r.props.path||r.props.default||r.type===te||u()(!1),r.type!==te||r.props.from&&r.props.to||u()(!1),r.type!==te||function validateRedirect(t,r){var a=function filter(t){return _(t)};return C(t).filter(a).sort().join("/")===C(r).filter(a).sort().join("/")}(r.props.from,r.props.to)||u()(!1),r.props.default)return{value:r,default:!0};var a=r.type===te?r.props.from:r.props.path,o="/"===a?t:ie(t)+"/"+ie(a);return{value:r,default:r.props.default,path:r.props.children?ie(o)+"/*":o}}},ue=function shouldNavigate(t){return!t.defaultPrevented&&0===t.button&&!(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey)}},45357:(t,r,a)=>{"use strict";a(67394)(r,"__esModule",{value:!0}),r.default=function useAction(){return{backToDashboard:function backToDashboard(){window.top===window?window.top.location=elementorAppConfig.return_url.includes(elementorAppConfig.login_url)?elementorAppConfig.admin_url:elementorAppConfig.return_url:window.top.$e.run("app/close")}}},a(3777),a(38081)},51432:(t,r,a)=>{"use strict";var o=a(67394),l=a(67971);o(r,"__esModule",{value:!0}),r.default=function useAjax(){var t=(0,c.useState)(null),r=(0,u.default)(t,2),a=r[0],o=r[1],l="initial",d={status:l,isComplete:!1,response:null},p=(0,c.useState)(d),m=(0,u.default)(p,2),v=m[0],h=m[1],g={reset:function reset(){return h(l)}};return(0,c.useEffect)((function(){if(a){var t=new FormData;if(a.data){for(var r in a.data)t.append(r,a.data[r]);a.data.nonce||t.append("nonce",elementorCommon.config.ajax.nonce)}var o=(0,i.default)((0,i.default)({type:"post",url:elementorCommon.config.ajax.url,headers:{},cache:!1,contentType:!1,processData:!1},a),{},{data:t,success:function success(t){var r=t.success?"success":"error";h((function(a){return(0,i.default)((0,i.default)({},a),{},{status:r,response:null==t?void 0:t.data})}))},error:function error(){h((function(t){return(0,i.default)((0,i.default)({},t),{},{status:"error"})}))},complete:function complete(){h((function(t){return(0,i.default)((0,i.default)({},t),{},{isComplete:!0})}))}});jQuery.ajax(o)}}),[a]),{ajax:a,setAjax:o,ajaxState:v,ajaxActions:g}};var i=l(a(84899)),u=l(a(47834)),c=a(63804)},4801:(t,r,a)=>{"use strict";var o=a(18194).__;a(67394)(r,"__esModule",{value:!0}),r.default=function usePageTitle(t){var r=t.title,a=t.prefix;(0,l.useEffect)((function(){a||(a=o("Elementor","elementor")),document.title="".concat(a," | ").concat(r)}),[r,a])};var l=a(63804)},32161:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=Content;var u=i(a(63804));function Content(t){return u.default.createElement("main",{className:"eps-app__content ".concat(t.className)},t.children)}Content.propTypes={children:o.any,className:o.string},Content.defaultProps={className:""}},63679:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=Footer;var u=i(a(63804));function Footer(t){return u.default.createElement("footer",{className:"eps-app__footer"},t.children)}Footer.propTypes={children:o.object}},59175:(t,r,a)=>{"use strict";var o=a(67394),l=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var i=l(a(15149)),u=l(a(11959)),c=l(a(39041)),d=l(a(76700)),p=l(a(44263)),m=l(a(77371)),v=l(a(68537)),h=l(a(18042)),g=l(a(72745)),y=function(t){(0,m.default)(Button,t);var r=(0,v.default)(Button);function Button(){return(0,u.default)(this,Button),r.apply(this,arguments)}return(0,c.default)(Button,[{key:"getCssId",value:function getCssId(){return"eps-app-header-btn-"+(0,d.default)((0,p.default)(Button.prototype),"getCssId",this).call(this)}},{key:"getClassName",value:function getClassName(){return this.props.includeHeaderBtnClass?"eps-app__header-btn "+(0,d.default)((0,p.default)(Button.prototype),"getClassName",this).call(this):(0,d.default)((0,p.default)(Button.prototype),"getClassName",this).call(this)}}]),Button}(g.default);r.default=y,(0,h.default)(y,"defaultProps",(0,i.default)({},g.default.defaultProps,{hideText:!0,includeHeaderBtnClass:!0}))},50888:(t,r,a)=>{"use strict";var o=a(18194).__,l=a(23615),i=a(67394),u=a(67971);i(r,"__esModule",{value:!0}),r.default=HeaderButtons;var c=u(a(63804)),d=u(a(37959));a(90286);var p=u(a(45357)),m=u(a(59175));function HeaderButtons(t){var r=(0,p.default)(),a="";if(t.buttons.length){var l=t.buttons.map((function(t){return c.default.createElement(m.default,(0,d.default)({key:t.id},t))}));a=c.default.createElement(c.default.Fragment,null,l)}return c.default.createElement("div",{className:"eps-app__header-buttons"},c.default.createElement(m.default,{text:o("Close","elementor"),icon:"eicon-close",className:"eps-app__close-button",onClick:r.backToDashboard}),a)}HeaderButtons.propTypes={buttons:l.arrayOf(l.object)},HeaderButtons.defaultProps={buttons:[]}},3511:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=Header;var u=i(a(63804)),c=i(a(37959)),d=i(a(57390)),p=i(a(50888)),m=i(a(4801));function Header(t){(0,m.default)({title:t.title});var r="span",a={};return t.titleRedirectRoute&&(r="a",a={href:"#".concat(t.titleRedirectRoute),target:"_self"}),u.default.createElement(d.default,{container:!0,alignItems:"center",justify:"space-between",className:"eps-app__header"},u.default.createElement(r,(0,c.default)({className:"eps-app__logo-title-wrapper"},a),u.default.createElement("i",{className:"eps-app__logo eicon-elementor"}),u.default.createElement("h1",{className:"eps-app__title"},t.title)),u.default.createElement(p.default,{buttons:t.buttons}))}Header.propTypes={title:o.string,titleRedirectRoute:o.string,buttons:o.arrayOf(o.object)},Header.defaultProps={buttons:[]}},94295:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=Page;var u=i(a(63804)),c=i(a(3511)),d=i(a(8296)),p=i(a(32161)),m=i(a(63679));function Page(t){return u.default.createElement("div",{className:"eps-app__lightbox ".concat(t.className)},u.default.createElement("div",{className:"eps-app"},u.default.createElement(c.default,{title:t.title,buttons:t.headerButtons,titleRedirectRoute:t.titleRedirectRoute}),u.default.createElement("div",{className:"eps-app__main"},function AppSidebar(){if(t.sidebar)return u.default.createElement(d.default,null,t.sidebar)}(),u.default.createElement(p.default,null,t.content)),function AppFooter(){if(t.footer)return u.default.createElement(m.default,null,t.footer)}()))}Page.propTypes={title:o.string,titleRedirectRoute:o.string,className:o.string,headerButtons:o.arrayOf(o.object),sidebar:o.object,content:o.object.isRequired,footer:o.object},Page.defaultProps={className:""}},8296:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=Sidebar;var u=i(a(63804));function Sidebar(t){return u.default.createElement("div",{className:"eps-app__sidebar"},t.children)}Sidebar.propTypes={children:o.object}},78120:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=CollapseContent;var u=i(a(63804));function CollapseContent(t){return u.default.createElement("div",{className:"e-app-collapse-content"},t.children)}CollapseContent.propTypes={className:o.string,children:o.any},CollapseContent.defaultProps={className:""}},61664:(t,r,a)=>{"use strict";var o=a(67394),l=a(67971);o(r,"__esModule",{value:!0}),r.CollapseContext=void 0;var i=l(a(63804)).default.createContext();r.CollapseContext=i},7462:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971),u=a(52369);l(r,"__esModule",{value:!0}),r.default=CollapseToggle;var c=u(a(63804)),d=i(a(18042)),p=a(47224),m=a(61664);function CollapseToggle(t){var r=(0,c.useContext)(m.CollapseContext),a={"--e-app-collapse-toggle-icon-spacing":(0,p.pxToRem)(t.iconSpacing)},o="e-app-collapse-toggle",l=[o,(0,d.default)({},o+"--active",t.active)],i={style:a,className:(0,p.arrayToClassName)(l)};return t.active&&(i.onClick=function(){return r.toggle()}),c.default.createElement("div",i,t.children,t.active&&t.showIcon&&c.default.createElement("i",{className:"eicon-caret-down e-app-collapse-toggle__icon"}))}CollapseToggle.propTypes={className:o.string,iconSpacing:o.number,showIcon:o.bool,active:o.bool,children:o.any},CollapseToggle.defaultProps={className:"",iconSpacing:20,showIcon:!0,active:!0}},48017:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971),u=a(52369);l(r,"__esModule",{value:!0}),r.default=Collapse;var c=u(a(63804)),d=i(a(18042)),p=i(a(47834)),m=a(47224),v=a(61664),h=i(a(7462)),g=i(a(78120));function Collapse(t){var r=(0,c.useState)(t.isOpened),a=(0,p.default)(r,2),o=a[0],l=a[1],i="e-app-collapse",u=[i,t.className,(0,d.default)({},"e-app-collapse--opened",o)];return(0,c.useEffect)((function(){t.isOpened!==o&&l(t.isOpened)}),[t.isOpened]),(0,c.useEffect)((function(){t.onChange&&t.onChange(o)}),[o]),c.default.createElement(v.CollapseContext.Provider,{value:{toggle:function toggle(){return l((function(t){return!t}))}}},c.default.createElement("div",{className:(0,m.arrayToClassName)(u)},t.children))}a(26359),Collapse.propTypes={className:o.string,isOpened:o.bool,onChange:o.func,children:o.oneOfType([o.node,o.arrayOf(o.node)])},Collapse.defaultProps={className:"",isOpened:!1},Collapse.Toggle=h.default,Collapse.Content=g.default},5199:(t,r,a)=>{"use strict";var o=a(23615),l=a(18194).__,i=a(67394),u=a(67971);i(r,"__esModule",{value:!0}),r.default=DashboardButton;var c=u(a(63804)),d=u(a(37959)),p=u(a(72745)),m=u(a(45357)),v=a(47224);function DashboardButton(t){var r=(0,m.default)(),a=["e-app-dashboard-button",t.className];return c.default.createElement(p.default,(0,d.default)({},t,{className:(0,v.arrayToClassName)(a),text:t.text,onClick:r.backToDashboard}))}DashboardButton.propTypes={className:o.string,text:o.string},DashboardButton.defaultProps={className:"",variant:"contained",color:"primary",text:l("Back to dashboard","elementor")}},98063:(t,r,a)=>{"use strict";var o=a(23615),l=a(18194).__,i=a(67394),u=a(67971);i(r,"__esModule",{value:!0}),r.default=GoProButton;var c=u(a(63804)),d=u(a(37959)),p=u(a(72745)),m=a(47224);function GoProButton(t){var r=["e-app-go-pro-button",t.className];return c.default.createElement(p.default,(0,d.default)({},t,{className:(0,m.arrayToClassName)(r),text:t.text}))}GoProButton.propTypes={className:o.string,text:o.string},GoProButton.defaultProps={className:"",variant:"contained",size:"sm",color:"cta",target:"_blank",rel:"noopener noreferrer",text:l("Go Pro","elementor")}},90329:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(52369),u=a(67971);l(r,"__esModule",{value:!0}),r.default=Tooltip;var c=u(a(47834)),d=i(a(63804)),p=a(47224);function Tooltip(t){var r=["e-app-tooltip",t.className],a=(0,d.useRef)(null),o=(0,d.useRef)(!1),l=t.hasOwnProperty("show"),i=(0,d.useState)(!1),u=(0,c.default)(i,2),m=u[0],v=u[1],h=(0,d.useState)(!1),g=(0,c.default)(h,2),y=g[0],_=g[1],x={trigger:l?"manual":"hover",gravity:{top:"s",right:"w",down:"n",left:"e"}[t.direction],offset:t.offset,title:function title(){return t.title}},E=function setTipsy(){var t=jQuery(a.current);if(t.tipsy(x),l){var r=y?"show":"hide";t.tipsy(r)}};return(0,d.useEffect)((function(){return t.disabled||(o.current=!1,import("".concat(elementorCommon.config.urls.assets,"lib/tipsy/tipsy.min.js?ver=1.0.0")).then((function(){o.current||(m?E():v(!0))}))),function(){t.disabled||(o.current=!0,jQuery(".tipsy:last").remove())}}),[t.disabled]),(0,d.useEffect)((function(){m&&E()}),[m,y]),(0,d.useEffect)((function(){t.disabled||t.show===y||_(t.show)}),[t.show]),d.default.createElement(t.tag,{className:(0,p.arrayToClassName)(r),ref:a},t.children)}Tooltip.propTypes={className:o.string,offset:o.number,show:o.bool,direction:o.oneOf(["top","right","left","down"]),tag:o.string.isRequired,title:o.string.isRequired,disabled:o.bool,children:o.any},Tooltip.defaultProps={className:"",offset:10,direction:"top",disabled:!1}},54609:(t,r,a)=>{"use strict";var o=a(23615),l=a(18194).__,i=a(67394),u=a(67971),c=a(52369);i(r,"__esModule",{value:!0}),r.default=UploadFile;var d=c(a(63804));a(90286);var p=u(a(72745)),m=a(47224);function UploadFile(t){var r=(0,d.useRef)(null),a=["e-app-upload-file",t.className];return d.default.createElement("div",{className:(0,m.arrayToClassName)(a)},d.default.createElement("input",{ref:r,type:"file",accept:t.filetypes.map((function(t){return"."+t})).join(", "),className:"e-app-upload-file__input",onChange:function onChange(a){var o=a.target.files[0];o&&(0,m.isOneOf)(o.type,t.filetypes)?t.onFileSelect(o,a):(r.current.value="",t.onError())}}),d.default.createElement(p.default,{className:"e-app-upload-file__button",text:t.text,variant:"contained",color:"primary",size:"lg",hideText:t.isLoading,icon:t.isLoading?"eicon-loading eicon-animation-spin":"",onClick:function onClick(){t.isLoading||r.current.click()}}))}a(89905),UploadFile.propTypes={className:o.string,text:o.string,onFileSelect:o.func,isLoading:o.bool,filetypes:o.array.isRequired,onError:o.func},UploadFile.defaultProps={className:"",text:l("Select File","elementor"),onError:function onError(){}}},20857:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=DropZone;var u=i(a(63804)),c=i(a(37959)),d=a(47224),p=i(a(54609)),m=i(a(94789)),v=i(a(69722)),h=i(a(80957)),g=i(a(36357));function DropZone(t){var r=["e-app-drop-zone",t.className],a={onDrop:function onDrop(r){if(!t.isLoading){var a=r.dataTransfer.files[0];a&&(0,d.isOneOf)(a.type,t.filetypes)?t.onFileSelect(a,r):t.onError()}}};return u.default.createElement("section",{className:(0,d.arrayToClassName)(r)},u.default.createElement(m.default,(0,c.default)({},a,{isLoading:t.isLoading}),t.icon&&u.default.createElement(v.default,{className:"e-app-drop-zone__icon ".concat(t.icon)}),t.heading&&u.default.createElement(h.default,{variant:"display-3"},t.heading),t.text&&u.default.createElement(g.default,{variant:"xl",className:"e-app-drop-zone__text"},t.text),t.secondaryText&&u.default.createElement(g.default,{variant:"xl",className:"e-app-drop-zone__secondary-text"},t.secondaryText),t.showButton&&u.default.createElement(p.default,{isLoading:t.isLoading,onFileSelect:t.onFileSelect,onError:t.onError,text:t.buttonText,filetypes:t.filetypes})))}a(45362),DropZone.propTypes={className:o.string,children:o.any,onFileSelect:o.func.isRequired,heading:o.string,text:o.string,secondaryText:o.string,buttonText:o.string,icon:o.string,showButton:o.bool,showIcon:o.bool,isLoading:o.bool,filetypes:o.array.isRequired,onError:o.func},DropZone.defaultProps={className:"",icon:"eicon-library-upload",showButton:!0,showIcon:!0,onError:function onError(){}}},31735:(t,r,a)=>{"use strict";var o=a(18194).__,l=a(23615),i=a(67394),u=a(67971);i(r,"__esModule",{value:!0}),r.default=void 0;var c=u(a(63804)),d=u(a(11959)),p=u(a(39041)),m=u(a(77371)),v=u(a(68537)),h=u(a(18042)),g=u(a(76639)),y=function(t){(0,m.default)(ErrorBoundary,t);var r=(0,v.default)(ErrorBoundary);function ErrorBoundary(t){var a;return(0,d.default)(this,ErrorBoundary),(a=r.call(this,t)).state={hasError:null},a}return(0,p.default)(ErrorBoundary,[{key:"goBack",value:function goBack(){window.top!==window.self&&window.top.$e.run("app/close"),window.location=elementorAppConfig.return_url}},{key:"render",value:function render(){return this.state.hasError?c.default.createElement(g.default,{title:this.props.title,text:this.props.text,approveButtonUrl:this.props.learnMoreUrl,approveButtonColor:"link",approveButtonTarget:"_blank",approveButtonText:o("Learn More","elementor"),dismissButtonText:o("Go Back","elementor"),dismissButtonOnClick:this.goBack}):this.props.children}}],[{key:"getDerivedStateFromError",value:function getDerivedStateFromError(){return{hasError:!0}}}]),ErrorBoundary}(c.default.Component);r.default=y,(0,h.default)(y,"propTypes",{children:l.any,title:l.string,text:l.string,learnMoreUrl:l.string}),(0,h.default)(y,"defaultProps",{title:o("App could not be loaded","elementor"),text:o("We’re sorry, but something went wrong. Click on ‘Learn more’ and follow each of the steps to quickly solve it.","elementor"),learnMoreUrl:"https://go.elementor.com/app-general-load-issue/"})},93965:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=WizardFooter;var u=i(a(63804)),c=i(a(37959)),d=a(47224),p=i(a(57390));function WizardFooter(t){var r="e-app-wizard-footer",a=[r,t.className];return t.separator&&a.push(r+"__separator"),u.default.createElement(p.default,(0,c.default)({container:!0},t,{className:(0,d.arrayToClassName)(a)}),t.children)}a(54189),WizardFooter.propTypes={className:o.string,justify:o.any,separator:o.any,children:o.oneOfType([o.string,o.object,o.arrayOf(o.object)]).isRequired},WizardFooter.defaultProps={className:""}},44281:(t,r,a)=>{"use strict";var o=a(67394),l=a(52369),i=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var u=i(a(40633)),c=i(a(7465)),d=i(a(72745)),p=i(a(17493)),m=i(a(67170)),v=i(a(14169)),h=i(a(57641)),g=i(a(11243)),y=i(a(18041)),_=i(a(23283)),x=i(a(48017)),E=i(a(47385)),b=i(a(76639)),C=i(a(94789)),w=i(a(20857)),T=i(a(31735)),N=i(a(80957)),P=i(a(57390)),S=i(a(69722)),M=i(a(53733)),R=i(a(8739)),O=i(a(94160)),I=l(a(89854)),j=i(a(7008)),D=i(a(63104)),L=i(a(94295)),A=i(a(34902)),B=i(a(62193)),W=i(a(69502)),q=i(a(36357)),U=i(a(54609)),H=i(a(69038)),z={AddNewButton:u.default,Box:c.default,Button:d.default,Card:p.default,CardBody:m.default,CardFooter:v.default,CardHeader:g.default,CardImage:h.default,CardOverlay:y.default,Checkbox:_.default,Collapse:x.default,CssGrid:E.default,Dialog:b.default,DragDrop:C.default,DropZone:w.default,ErrorBoundary:T.default,Heading:N.default,Grid:P.default,Icon:S.default,List:M.default,Menu:R.default,MenuItem:O.default,Modal:I.Modal,ModalProvider:I.default,NotFound:j.default,Notice:D.default,Page:L.default,Popover:A.default,Select:B.default,Select2:W.default,Text:q.default,UploadFile:U.default,InlineLink:H.default};r.default=z},7008:(t,r,a)=>{"use strict";var o=a(18194).__,l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=function NotFound(){var t={title:o("Not Found","elementor"),className:"eps-app__not-found",content:u.default.createElement("h1",null," ",o("Not Found","elementor")," "),sidebar:u.default.createElement(u.default.Fragment,null)};return u.default.createElement(c.default,t)};var u=i(a(63804)),c=i(a(94295))},54868:(t,r,a)=>{"use strict";var o=a(63804),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=void 0,a(90286);var u=i(a(11959)),c=i(a(39041)),d=i(a(18042)),p=new(function(){function Router(){(0,u.default)(this,Router),(0,d.default)(this,"routes",[]),(0,d.default)(this,"history",null)}return(0,c.default)(Router,[{key:"addRoute",value:function addRoute(t){this.routes.push(t)}},{key:"getRoutes",value:function getRoutes(){return this.routes.map((function(t){var r=t.props||{};return r.path=r.key=t.path,o.createElement(t.component,r)}))}}]),Router}());window.elementorAppPackages={router:p};var m=p;r.default=m},7465:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=Box;var u=i(a(63804)),c=a(47224);function Box(t){var r="eps-box",a=[r,t.className],o={};return t.hasOwnProperty("padding")&&(o["--eps-box-padding"]=(0,c.pxToRem)(t.padding),a.push("eps-box--padding")),u.default.createElement("div",{style:o,className:(0,c.arrayToClassName)(a)},t.children)}a(22269),Box.propTypes={className:o.string,padding:o.string,children:o.oneOfType([o.string,o.object,o.arrayOf(o.object)]).isRequired},Box.defaultProps={className:""}},23283:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=Checkbox;var u=i(a(63804)),c=i(a(37959)),d=a(47224);function Checkbox(t){var r="eps-checkbox",a=[r,t.className];return t.rounded&&a.push("eps-checkbox--rounded"),u.default.createElement("input",(0,c.default)({},t,{type:"checkbox",disabled:t.disabled,className:(0,d.arrayToClassName)(a)}))}a(96351),Checkbox.propTypes={className:o.string,disabled:o.bool,rounded:o.bool},Checkbox.defaultProps={className:"",disabled:!1}},47385:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=CssGrid;var u=i(a(63804)),c=a(47224);function CssGrid(t){var r={"--eps-grid-columns":t.columns,"--eps-grid-spacing":(0,c.pxToRem)(t.spacing),"--eps-grid-col-min-width":(0,c.pxToRem)(t.colMinWidth),"--eps-grid-col-max-width":(0,c.pxToRem)(t.colMaxWidth)};return u.default.createElement("div",{style:r,className:"eps-css-grid ".concat(t.className)},t.children)}a(16165),CssGrid.propTypes={className:o.string,children:o.any.isRequired,columns:o.number,spacing:o.number,colMinWidth:o.number,colMaxWidth:o.number},CssGrid.defaultProps={spacing:24,className:""}},94789:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971),u=a(52369);l(r,"__esModule",{value:!0}),r.default=DragDrop;var c=u(a(63804)),d=i(a(37959)),p=i(a(47834)),m=a(47224);function DragDrop(t){var r=(0,c.useState)(!1),a=(0,p.default)(r,2),o=a[0],l=a[1],i=function onDragDropActions(t){t.preventDefault(),t.stopPropagation()},u={onDrop:function onDrop(r){i(r),l(!1),t.onDrop&&t.onDrop(r)},onDragOver:function onDragOver(r){i(r),l(!0),t.onDragOver&&t.onDragOver(r)},onDragLeave:function onDragLeave(r){i(r),l(!1),t.onDragLeave&&t.onDragLeave(r)}};return c.default.createElement("div",(0,d.default)({},u,{className:function getClassName(){var r="e-app-drag-drop",a=[r,t.className];return o&&!t.isLoading&&a.push(r+"--drag-over"),(0,m.arrayToClassName)(a)}()}),t.children)}a(8167),DragDrop.propTypes={className:o.string,children:o.any,onDrop:o.func,onDragLeave:o.func,onDragOver:o.func,isLoading:o.bool},DragDrop.defaultProps={className:""}},80957:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=Heading;var u=i(a(63804)),c=a(47224);function Heading(t){var r=[t.className];t.variant&&r.push("eps-"+t.variant);var a=function Element(){return u.default.createElement(t.tag,{className:(0,c.arrayToClassName)(r)},t.children)};return u.default.createElement(a,null)}Heading.propTypes={className:o.string,children:o.oneOfType([o.string,o.object,o.arrayOf(o.object)]).isRequired,tag:o.oneOf(["h1","h2","h3","h4","h5","h6"]),variant:o.oneOf(["display-1","display-2","display-3","display-4","h1","h2","h3","h4","h5","h6"]).isRequired},Heading.defaultProps={className:"",tag:"h1"}},69722:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=Icon;var u=i(a(63804));function Icon(t){return u.default.createElement("i",{className:"eps-icon ".concat(t.className)})}Icon.propTypes={className:o.string.isRequired},Icon.defaultProps={className:""}},62193:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=Select;var u=i(a(63804));function Select(t){return u.default.createElement("select",{multiple:t.multiple,className:t.className,value:t.value,onChange:t.onChange,ref:t.elRef},t.options.map((function(t){return t.children?u.default.createElement("optgroup",{label:t.label,key:t.label},t.children.map((function(t){return u.default.createElement("option",{key:t.value,value:t.value},t.label)}))):u.default.createElement("option",{key:t.value,value:t.value},t.label)})))}a(90286),Select.propTypes={className:o.string,value:o.string,onChange:o.func,options:o.array,elRef:o.object,multiple:o.bool},Select.defaultProps={className:"",options:[]}},53854:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=TextField;var u=i(a(63804)),c=i(a(37959)),d=i(a(84899)),p=i(a(18042)),m=a(47224);function TextField(t){var r="eps-text-field",a=[r,t.className,(0,p.default)({},"eps-text-field--outlined","outlined"===t.variant)],o=(0,d.default)((0,d.default)({},t),{},{className:(0,m.arrayToClassName)(a)});return o.multiline?(delete o.multiline,u.default.createElement("textarea",o)):u.default.createElement("input",(0,c.default)({},o,{type:"text"}))}a(40604),TextField.propTypes={className:o.string,multiline:o.bool,variant:o.oneOf(["standard","outlined"]),children:o.string},TextField.defaultProps={className:"",variant:"standard"}},36357:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=Text;var u=i(a(63804)),c=a(47224);function Text(t){var r=[t.className],a=t.variant&&"md"!==t.variant?"-"+t.variant:"";r.push("eps-text"+a);var o=function Element(){return u.default.createElement(t.tag,{className:(0,c.arrayToClassName)(r)},t.children)};return u.default.createElement(o,null)}Text.propTypes={className:o.string,variant:o.oneOf(["xl","lg","md","sm","xs","xxs"]),tag:o.string,children:o.any.isRequired},Text.defaultProps={className:"",tag:"p"}},67170:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=CardBody;var u=i(a(63804)),c=a(47224);function CardBody(t){var r="eps-card__body",a=[r,t.className],o={};return t.hasOwnProperty("padding")&&(o["--eps-card-body-padding"]=(0,c.pxToRem)(t.padding),a.push("eps-card__body--padding")),u.default.createElement("main",{className:(0,c.arrayToClassName)(a),style:o},t.children)}a(38055),CardBody.propTypes={className:o.string,padding:o.string,passive:o.bool,active:o.bool,children:o.any.isRequired},CardBody.defaultProps={className:""}},18401:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=CardDivider;var u=i(a(63804)),c=a(47224);function CardDivider(t){var r=["eps-card__divider",t.className];return u.default.createElement("hr",{className:(0,c.arrayToClassName)(r)})}a(38055),CardDivider.propTypes={className:o.string},CardDivider.defaultProps={className:""}},14169:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=CardFooter;var u=i(a(63804)),c=a(47224);function CardFooter(t){var r="eps-card__footer",a=[r,t.className],o={};return t.hasOwnProperty("padding")&&(o["--eps-card-footer-padding"]=(0,c.pxToRem)(t.padding),a.push(r+"--padding")),u.default.createElement("footer",{className:(0,c.arrayToClassName)(a),style:o},t.children)}a(38055),CardFooter.propTypes={className:o.string,padding:o.string,passive:o.bool,active:o.bool,children:o.object.isRequired},CardFooter.defaultProps={className:""}},11243:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=CardHeader;var u=i(a(63804)),c=a(47224);function CardHeader(t){var r="eps-card__header",a=[r,t.className],o={};return t.hasOwnProperty("padding")&&(o["--eps-card-header-padding"]=(0,c.pxToRem)(t.padding),a.push(r+"--padding")),u.default.createElement("header",{className:(0,c.arrayToClassName)(a),style:o},t.children)}a(38055),CardHeader.propTypes={className:o.string,padding:o.string,passive:o.bool,active:o.bool,children:o.any.isRequired},CardHeader.defaultProps={className:""}},10563:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=CardHeadline;var u=i(a(63804)),c=a(47224);function CardHeadline(t){var r=["eps-card__headline",t.className];return u.default.createElement("h4",{className:(0,c.arrayToClassName)(r)},t.children)}a(38055),CardHeadline.propTypes={className:o.string,children:o.any.isRequired},CardHeadline.defaultProps={className:""}},57641:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=CardImage;var u=i(a(63804));function CardImage(t){var r=u.default.createElement("img",{src:t.src,alt:t.alt,className:"eps-card__image",loading:"lazy"});return u.default.createElement("figure",{className:"eps-card__figure ".concat(t.className)},r,t.children)}a(38055),CardImage.propTypes={className:o.string,src:o.string.isRequired,alt:o.string.isRequired,children:o.any},CardImage.defaultProps={className:""}},18041:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=CardOverlay;var u=i(a(63804));function CardOverlay(t){return u.default.createElement("div",{className:"eps-card__image-overlay ".concat(t.className)},t.children)}a(38055),CardOverlay.propTypes={className:o.string,children:o.object.isRequired},CardOverlay.defaultProps={className:""}},17493:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=void 0;var u=i(a(63804)),c=i(a(11243)),d=i(a(67170)),p=i(a(57641)),m=i(a(18041)),v=i(a(14169)),h=i(a(10563)),g=i(a(18401));a(38055);var y=u.default.forwardRef((function(t,r){return u.default.createElement("article",{className:"eps-card ".concat(t.className),ref:r},t.children)}));y.propTypes={type:o.string,className:o.string,children:o.any},y.defaultProps={className:""},y.displayName="Card",y.Header=c.default,y.Body=d.default,y.Image=p.default,y.Overlay=m.default,y.Footer=v.default,y.Headline=h.default,y.Divider=g.default;var _=y;r.default=_},63783:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=DialogActions;var u=i(a(63804));function DialogActions(t){return u.default.createElement("div",{className:"eps-dialog__buttons"},t.children)}DialogActions.propTypes={children:o.any}},98246:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=DialogButton;var u=i(a(63804)),c=i(a(84899)),d=i(a(37959)),p=i(a(72745));function DialogButton(t){return u.default.createElement(p.default,(0,d.default)({},t,{className:"eps-dialog__button ".concat(t.className)}))}DialogButton.propTypes=(0,c.default)((0,c.default)({},p.default.propTypes),{},{tabIndex:o.string,type:o.string}),DialogButton.defaultProps=(0,c.default)((0,c.default)({},p.default.defaultProps),{},{tabIndex:"0",type:"button"})},51533:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=DialogContent;var u=i(a(63804));function DialogContent(t){return u.default.createElement("div",{className:"eps-dialog__content"},t.children)}DialogContent.propTypes={children:o.any}},50530:(t,r,a)=>{"use strict";var o=a(67394),l=a(67971);o(r,"__esModule",{value:!0}),r.default=DialogText;var i=l(a(63804)),u=l(a(84899)),c=l(a(37959)),d=l(a(36357));function DialogText(t){return i.default.createElement(d.default,(0,c.default)({variant:"xs"},t,{className:"eps-dialog__text ".concat(t.className)}))}DialogText.propTypes=(0,u.default)({},d.default.propTypes),DialogText.defaultProps=(0,u.default)((0,u.default)({},d.default.defaultProps),{},{tag:"p",variant:"sm"})},30242:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=DialogTitle;var u=i(a(63804)),c=i(a(84899)),d=i(a(37959)),p=i(a(80957));function DialogTitle(t){return u.default.createElement(p.default,(0,d.default)({},t,{className:"eps-dialog__title ".concat(t.className)}))}DialogTitle.propTypes=(0,c.default)((0,c.default)({},p.default.propTypes),{},{className:o.string}),DialogTitle.defaultProps=(0,c.default)((0,c.default)({},p.default.propTypes),{},{variant:"h3",tag:"h3",className:""})},41252:(t,r,a)=>{"use strict";var o=a(18194).__,l=a(23615),i=a(67394),u=a(67971);i(r,"__esModule",{value:!0}),r.default=DialogWrapper;var c=u(a(63804)),d=u(a(72745));function DialogWrapper(t){var r="div";return t.onSubmit&&(r="form"),c.default.createElement("section",{className:"eps-modal__overlay"},c.default.createElement(r,{className:"eps-modal eps-dialog",onSubmit:t.onSubmit},t.onClose&&c.default.createElement(d.default,{onClick:t.onClose,text:o("Close","elementor"),hideText:!0,icon:"eicon-close",className:"eps-dialog__close-button"}),t.children))}DialogWrapper.propTypes={onClose:l.func,onSubmit:l.func,children:l.any}},76639:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=Dialog;var u=i(a(63804)),c=i(a(41252)),d=i(a(51533)),p=i(a(30242)),m=i(a(50530)),v=i(a(63783)),h=i(a(98246));function Dialog(t){return u.default.createElement(c.default,{onSubmit:t.onSubmit,onClose:t.onClose},u.default.createElement(d.default,null,t.title&&u.default.createElement(p.default,null,t.title),t.text&&u.default.createElement(m.default,null,t.text),t.children),u.default.createElement(v.default,null,u.default.createElement(h.default,{key:"dismiss",text:t.dismissButtonText,onClick:t.dismissButtonOnClick,url:t.dismissButtonUrl,target:t.dismissButtonTarget,tabIndex:"2"}),u.default.createElement(h.default,{key:"approve",text:t.approveButtonText,onClick:t.approveButtonOnClick,url:t.approveButtonUrl,target:t.approveButtonTarget,color:t.approveButtonColor,elRef:t.approveButtonRef,tabIndex:"1"})))}a(632),Dialog.propTypes={title:o.any,text:o.any,children:o.any,onSubmit:o.func,onClose:o.func,dismissButtonText:o.string.isRequired,dismissButtonOnClick:o.func,dismissButtonUrl:o.string,dismissButtonTarget:o.string,approveButtonText:o.string.isRequired,approveButtonOnClick:o.func,approveButtonUrl:o.string,approveButtonColor:o.string,approveButtonTarget:o.string,approveButtonRef:o.object},Dialog.defaultProps={},Dialog.Wrapper=c.default,Dialog.Content=d.default,Dialog.Title=p.default,Dialog.Text=m.default,Dialog.Actions=v.default,Dialog.Button=h.default},57390:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=Grid;var u=i(a(63804));a(64828),a(84208);var c=i(a(74846)),d=a(47224);function Grid(t){var r=["eps-grid",t.className].concat((0,c.default)(function getPropsClasses(t,r){var a=[];for(var o in t)if(r[o]){var l=isValidPropValue(r[o])?r[o]:"";a.push("eps-grid"+renderPropValueBrackets(t[o],l))}return a}({direction:"--direction{{ -VALUE }}",justify:"--justify{{ -VALUE }}",alignContent:"--align-content{{ -VALUE }}",alignItems:"--align-items{{ -VALUE }}",container:"-container",item:"-item",noWrap:"-container--no-wrap",wrapReverse:"-container--wrap-reverse",zeroMinWidth:"-item--zero-min-width",spacing:"-container--spacing",xs:"-item-xs{{ -VALUE }}",sm:"-item-sm{{ -VALUE }}",md:"-item-md{{ -VALUE }}",lg:"-item-lg{{ -VALUE }}",xl:"-item-xl{{ -VALUE }}",xxl:"-item-xxl{{ -VALUE }}"},t)));return u.default.createElement("div",{style:function getStyle(){return isValidPropValue(t.spacing)?{"--grid-spacing-gutter":(0,d.pxToRem)(t.spacing)}:{}}(),className:(0,d.arrayToClassName)(r)},t.children)}function renderPropValueBrackets(t,r){var a=t.match(/{{.*?}}/);if(a){var o=r?a[0].replace(/[{ }]/g,"").replace(/value/i,r):"";t=t.replace(a[0],o)}return t}function isValidPropValue(t){return t&&"boolean"!=typeof t}a(42749),Grid.propTypes={className:o.string,direction:o.oneOf(["row","column","row-reverse","column-reverse"]),justify:o.oneOf(["start","center","end","space-between","space-evenly","space-around","stretch"]),alignContent:o.oneOf(["start","center","end","space-between","stretch"]),alignItems:o.oneOf(["start","center","end","baseline","stretch"]),container:o.bool,item:o.bool,noWrap:o.bool,wrapReverse:o.bool,zeroMinWidth:o.bool,spacing:o.number,xs:o.oneOfType([o.number,o.bool]),sm:o.oneOfType([o.number,o.bool]),md:o.oneOfType([o.number,o.bool]),lg:o.oneOfType([o.number,o.bool]),xl:o.oneOfType([o.number,o.bool]),xxl:o.oneOfType([o.number,o.bool]),children:o.any.isRequired},Grid.defaultProps={className:""}},94160:(t,r,a)=>{"use strict";var o=a(67394),l=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var i=l(a(11959)),u=l(a(39041)),c=l(a(76700)),d=l(a(44263)),p=l(a(77371)),m=l(a(68537));a(40675);var v=function(t){(0,p.default)(SideMenuItem,t);var r=(0,m.default)(SideMenuItem);function SideMenuItem(){return(0,i.default)(this,SideMenuItem),r.apply(this,arguments)}return(0,u.default)(SideMenuItem,[{key:"getCssId",value:function getCssId(){return"eps-menu-item-"+(0,c.default)((0,d.default)(SideMenuItem.prototype),"getCssId",this).call(this)}},{key:"getClassName",value:function getClassName(){return"eps-menu-item "+(0,c.default)((0,d.default)(SideMenuItem.prototype),"getClassName",this).call(this)}}]),SideMenuItem}(l(a(72745)).default);r.default=v},8739:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=Menu;var u=i(a(63804)),c=i(a(37959));a(90286),a(64828),a(6235);var d=i(a(72745)),p=i(a(20485)),m=a(50927);function Menu(t){var r=function ActionButton(r){return t.actionButton?t.actionButton(r):""};return t.promotion?u.default.createElement("nav",{className:"eps-menu"},t.children,u.default.createElement("ul",null,t.menuItems.map((function(t){return u.default.createElement("li",{key:t.type,className:"eps-menu-item"},u.default.createElement(d.default,(0,c.default)({text:t.title,className:"eps-menu-item__link"},t)),u.default.createElement(r,t))})))):u.default.createElement(m.LocationProvider,{history:p.default.appHistory},u.default.createElement("nav",{className:"eps-menu"},t.children,u.default.createElement("ul",null,t.menuItems.map((function(t){return u.default.createElement(m.Match,{key:t.type,path:t.url},(function(a){var o=a.match;return u.default.createElement("li",{key:t.type,className:"eps-menu-item".concat(o?" eps-menu-item--active":"")},u.default.createElement(d.default,(0,c.default)({text:t.title,className:"eps-menu-item__link"},t)),u.default.createElement(r,t))}))})))))}Menu.propTypes={menuItems:o.arrayOf(o.object),children:o.any,actionButton:o.func,promotion:o.bool}},6852:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=ModalSection;var u=i(a(63804)),c=a(47224);function ModalSection(t){return u.default.createElement("section",{className:(0,c.arrayToClassName)(["eps-modal__section",t.className])},t.children)}ModalSection.propTypes={className:o.string,children:o.any},ModalSection.defaultProps={className:""}},29658:(t,r,a)=>{"use strict";var o=a(23615),l=a(18194).__,i=a(67394),u=a(67971);i(r,"__esModule",{value:!0}),r.default=ModalTip;var c=u(a(63804)),d=a(47224),p=u(a(80957)),m=u(a(36357));function ModalTip(t){return c.default.createElement("div",{className:(0,d.arrayToClassName)(["eps-modal__tip",t.className])},c.default.createElement(p.default,{variant:"h3",tag:"h3"},t.title),t.description&&c.default.createElement(m.default,{variant:"xs"},t.description))}ModalTip.propTypes={className:o.string,title:o.string,description:o.string},ModalTip.defaultProps={className:"",title:l("Tip","elementor")}},89854:(t,r,a)=>{"use strict";var o=a(23615),l=a(18194).__,i=a(67394),u=a(67971),c=a(52369);i(r,"__esModule",{value:!0}),r.default=ModalProvider,r.Modal=void 0;var d=c(a(63804)),p=u(a(37959)),m=u(a(84899)),v=u(a(47834)),h=a(47224),g=u(a(72745)),y=u(a(57390)),_=u(a(69722)),x=u(a(36357)),E=u(a(6852)),b=u(a(29658));function ModalProvider(t){var r=(0,d.useState)(t.show),a=(0,v.default)(r,2),o=a[0],l=a[1],i=function showModal(){l(!0),t.setShow&&t.setShow(!0)},u=(0,m.default)((0,m.default)({},t),{},{show:o,hideModal:function hideModal(){l(!1),t.setShow&&t.setShow(!1)},showModal:i});return(0,d.useEffect)((function(){l(t.show)}),[t.show]),d.default.createElement(d.default.Fragment,null,t.toggleButtonProps&&d.default.createElement(g.default,(0,p.default)({},t.toggleButtonProps,{onClick:i})),d.default.createElement(C,u,t.children))}a(99694),ModalProvider.propTypes={children:o.node.isRequired,toggleButtonProps:o.object,title:o.string,icon:o.string,show:o.bool,setShow:o.func},ModalProvider.defaultProps={show:!1},ModalProvider.Section=E.default,ModalProvider.Tip=b.default;var C=function Modal(t){var r=(0,d.useRef)(null),a=(0,d.useRef)(null),o=function closeModal(o){var l=r.current,i=a.current,u=i&&i.contains(o.target);l&&l.contains(o.target)&&!u||t.hideModal()};return(0,d.useEffect)((function(){return t.show&&document.addEventListener("mousedown",o,!1),function(){return document.removeEventListener("mousedown",o,!1)}}),[t.show]),t.show?d.default.createElement("div",{className:"eps-modal__overlay",onClick:o},d.default.createElement("div",{className:(0,h.arrayToClassName)(["eps-modal",t.className]),ref:r},d.default.createElement(y.default,{container:!0,className:"eps-modal__header",justify:"space-between",alignItems:"center"},d.default.createElement(y.default,{item:!0},d.default.createElement(_.default,{className:"eps-modal__icon ".concat(t.icon)}),d.default.createElement(x.default,{className:"title",tag:"span"},t.title)),d.default.createElement(y.default,{item:!0},d.default.createElement("div",{className:"eps-modal__close-wrapper",ref:a},d.default.createElement(g.default,{text:l("Close","elementor"),hideText:!0,icon:"eicon-close",onClick:t.closeModal})))),d.default.createElement("div",{className:"eps-modal__body"},t.children))):null};r.Modal=C,C.propTypes={className:o.string,children:o.any.isRequired,title:o.string.isRequired,icon:o.string,show:o.bool,setShow:o.func,hideModal:o.func,showModal:o.func,closeModal:o.func},C.defaultProps={className:""}},40633:(t,r,a)=>{"use strict";var o=a(23615),l=a(18194).__,i=a(67394),u=a(67971);i(r,"__esModule",{value:!0}),r.default=void 0;var c=u(a(84899)),d=u(a(11959)),p=u(a(39041)),m=u(a(77371)),v=u(a(68537)),h=u(a(18042)),g=u(a(72745));a(38150);var y=function(t){(0,m.default)(AddNewButton,t);var r=(0,v.default)(AddNewButton);function AddNewButton(){return(0,d.default)(this,AddNewButton),r.apply(this,arguments)}return(0,p.default)(AddNewButton,[{key:"getClassName",value:function getClassName(){var t=this.props.className;return this.props.size&&(t+=" eps-add-new-button--"+this.props.size),t}}]),AddNewButton}(g.default);r.default=y,(0,h.default)(y,"propTypes",(0,c.default)((0,c.default)({},g.default.propTypes),{},{text:o.string,size:o.string})),(0,h.default)(y,"defaultProps",(0,c.default)((0,c.default)({},g.default.defaultProps),{},{className:"eps-add-new-button",text:l("Add New","elementor-pro"),icon:"eicon-plus"}))},72745:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=void 0;var u=i(a(63804));a(64434);var c=i(a(37959)),d=i(a(11959)),p=i(a(39041)),m=i(a(77371)),v=i(a(68537)),h=i(a(18042)),g=a(50927),y=i(a(20485)),_=i(a(69722)),x=function(t){(0,m.default)(Button,t);var r=(0,v.default)(Button);function Button(){return(0,d.default)(this,Button),r.apply(this,arguments)}return(0,p.default)(Button,[{key:"getCssId",value:function getCssId(){return this.props.id}},{key:"getClassName",value:function getClassName(){var t="eps-button";return[t,this.props.className].concat(this.getStylePropsClasses(t)).filter((function(t){return""!==t})).join(" ")}},{key:"getStylePropsClasses",value:function getStylePropsClasses(t){var r=this,a=[];return["color","size","variant"].forEach((function(o){var l=r.props[o];l&&a.push(t+"--"+l)})),a}},{key:"getIcon",value:function getIcon(){if(this.props.icon){var t=this.props.tooltip||this.props.text,r=u.default.createElement(_.default,{className:this.props.icon,"aria-hidden":"true",title:t}),a="";return this.props.hideText&&(a=u.default.createElement("span",{className:"sr-only"},t)),u.default.createElement(u.default.Fragment,null,r,a)}return""}},{key:"getText",value:function getText(){return this.props.hideText?"":u.default.createElement("span",null,this.props.text)}},{key:"render",value:function render(){var t={},r=this.getCssId(),a=this.getClassName();r&&(t.id=r),a&&(t.className=a),this.props.onClick&&(t.onClick=this.props.onClick),this.props.rel&&(t.rel=this.props.rel),this.props.elRef&&(t.ref=this.props.elRef);var o=u.default.createElement(u.default.Fragment,null,this.getIcon(),this.getText());return this.props.url?0===this.props.url.indexOf("http")?u.default.createElement("a",(0,c.default)({href:this.props.url,target:this.props.target},t),o):(t.getProps=function(r){return r.isCurrent&&(t.className+=" active"),{className:t.className}},u.default.createElement(g.LocationProvider,{history:y.default.appHistory},u.default.createElement(g.Link,(0,c.default)({to:this.props.url},t),o))):u.default.createElement("div",t,o)}}]),Button}(u.default.Component);r.default=x,(0,h.default)(x,"propTypes",{text:o.string.isRequired,hideText:o.bool,icon:o.string,tooltip:o.string,id:o.string,className:o.string,url:o.string,onClick:o.func,variant:o.oneOf(["contained","underlined","outlined",""]),color:o.oneOf(["primary","secondary","cta","link","disabled"]),size:o.oneOf(["sm","md","lg"]),target:o.string,rel:o.string,elRef:o.object}),(0,h.default)(x,"defaultProps",{id:"",className:"",variant:"",target:"_parent"})},69038:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=InlineLink;var u=i(a(63804));a(3777),a(38081);var c=a(50927),d=i(a(20485)),p=a(47224);function InlineLink(t){var r="eps-inline-link",a=[r,"".concat(r,"--color-").concat(t.color),"none"!==t.underline?"".concat(r,"--underline-").concat(t.underline):"",t.italic?"".concat(r,"--italic"):"",t.className],o=(0,p.arrayToClassName)(a);return t.url?t.url.includes("http")?function getExternalLink(){return u.default.createElement("a",{href:t.url,target:t.target,rel:t.rel,className:o},t.children)}():function getRouterLink(){return u.default.createElement(c.LocationProvider,{history:d.default.appHistory},u.default.createElement(c.Link,{to:t.url,className:o},t.children))}():function getActionLink(){return u.default.createElement("button",{className:o,onClick:t.onClick},t.children)}()}a(70808),InlineLink.propTypes={className:o.string,children:o.string,url:o.string,target:o.string,rel:o.string,text:o.string,color:o.oneOf(["primary","secondary","cta","link","disabled"]),underline:o.oneOf(["none","hover","always"]),italic:o.bool},InlineLink.defaultProps={className:"",color:"link",underline:"always",target:"_blank",rel:"noopener noreferrer"}},47271:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=ListItem;var u=i(a(63804)),c=a(47224);function ListItem(t){var r,a="eps-list__item",o=[a,t.className];return t.hasOwnProperty("padding")&&(r={"--eps-list-item-padding":(0,c.pxToRem)(t.padding)},o.push("eps-list__item--padding")),u.default.createElement("li",{style:r,className:(0,c.arrayToClassName)(o)},t.children)}ListItem.propTypes={className:o.string,padding:o.string,children:o.any.isRequired},ListItem.defaultProps={className:""}},53733:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=List;var u=i(a(63804)),c=a(47224),d=i(a(47271));function List(t){var r,a="eps-list",o=[a,t.className];return t.hasOwnProperty("padding")&&(r={"--eps-list-padding":(0,c.pxToRem)(t.padding)},o.push("eps-list--padding")),t.separated&&o.push("eps-list--separated"),u.default.createElement("ul",{style:r,className:(0,c.arrayToClassName)(o)},t.children)}a(39355),List.propTypes={className:o.string,divided:o.any,separated:o.any,padding:o.string,children:o.oneOfType([o.object,o.arrayOf(o.object)]).isRequired},List.defaultProps={className:""},List.Item=d.default},63104:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=Notice;var u=i(a(63804)),c=a(47224),d=i(a(36357));function Notice(t){var r="eps-notice",a=[r,t.className];return t.color&&a.push("eps-notice--"+t.color),u.default.createElement("div",{className:(0,c.arrayToClassName)(a)},u.default.createElement(d.default,{variant:"xs",className:"eps-notice__text"},t.label&&u.default.createElement("strong",null,t.label+": ")," ",t.children))}a(56453),Notice.propTypes={className:o.string,color:o.string,label:o.string,children:o.oneOfType([o.string,o.object,o.arrayOf(o.object)]).isRequired},Notice.defaultProps={className:""}},34902:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=Popover;var u=i(a(63804));function Popover(t){return u.default.createElement(u.default.Fragment,null,u.default.createElement("div",{className:"eps-popover__background",onClick:t.closeFunction}),u.default.createElement("ul",{className:"eps-popover ".concat(t.className),onClick:t.closeFunction},t.children))}a(60037),Popover.propTypes={children:o.any.isRequired,className:o.string,closeFunction:o.func},Popover.defaultProps={className:""}},69502:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=Select2;var u=i(a(63804)),c=i(a(84899)),d=i(a(62193));a(68275);function Select2(t){var r=u.default.useRef(null);return u.default.useEffect((function(){var a=jQuery(r.current).select2((0,c.default)((0,c.default)({},function getDefaultSettings(){return{allowClear:!0,placeholder:"",dir:elementorCommon.config.isRTL?"rtl":"ltr"}}()),t.settings)).on("select2:select select2:unselect",t.onChange);return t.onReady&&t.onReady(a),function(){a.select2("destroy").off("select2:select select2:unselect")}}),[t.settings,t.options]),u.default.useEffect((function(){jQuery(r.current).val(t.value).trigger("change")}),[t.value]),u.default.createElement(d.default,{multiple:t.multiple,value:t.value,onChange:t.onChange,elRef:r,options:t.options})}Select2.propTypes={value:o.string,onChange:o.func,onReady:o.func,options:o.array,settings:o.object,multiple:o.bool},Select2.defaultProps={settings:{},options:[],dependencies:[]}},47224:(t,r,a)=>{"use strict";var o=a(67394),l=a(67971);o(r,"__esModule",{value:!0}),r.isOneOf=r.rgbToHex=r.stringToRemValues=r.arrayToClassName=r.pxToRem=void 0;var i=l(a(38923)),u=l(a(24596));a(76139),a(44321),a(90286),a(99236),a(64434),a(3777),a(38081);var c=function pxToRem(t){if(t)return"string"!=typeof t&&(t=t.toString()),t.split(" ").map((function(t){return"".concat(.0625*t,"rem")})).join(" ")};r.pxToRem=c;r.arrayToClassName=function arrayToClassName(t,r){return t.filter((function(t){return"object"===(0,u.default)(t)?(0,i.default)(t)[0][1]:t})).map((function(t){var a="object"===(0,u.default)(t)?(0,i.default)(t)[0][0]:t;return r?r(a):a})).join(" ")};r.stringToRemValues=function stringToRemValues(t){return t.split(" ").map((function(t){return c(t)})).join(" ")};r.rgbToHex=function rgbToHex(t,r,a){return"#"+[t,r,a].map((function(t){var r=t.toString(16);return 1===r.length?"0"+r:r})).join("")};r.isOneOf=function isOneOf(t,r){return r.some((function(r){return t.includes(r)}))}},6432:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971),u=a(52369);l(r,"__esModule",{value:!0}),r.default=ContextProvider,r.Context=void 0;var c=u(a(63804)),d=i(a(47834)),p=a(89967),m=c.default.createContext();function ContextProvider(t){var r=(0,c.useReducer)(p.reducer,{includes:[],downloadUrl:"",fileResponse:null,file:null,overrideConditions:[],referrer:null,kitInfo:{title:null,description:null}}),a=(0,d.default)(r,2),o=a[0],l=a[1];return c.default.createElement(m.Provider,{value:{data:o,dispatch:l}},t.children)}r.Context=m,ContextProvider.propTypes={children:o.object.isRequired}},89967:(t,r,a)=>{"use strict";var o=a(67394),l=a(67971);o(r,"__esModule",{value:!0}),r.reducer=void 0,a(3777),a(38081),a(64434);var i=l(a(18042)),u=l(a(74846)),c=l(a(84899)),d=l(a(11959)),p=l(a(39041)),m=function(){function ReducerActions(){(0,d.default)(this,ReducerActions)}return(0,p.default)(ReducerActions,null,[{key:"updateArray",value:function updateArray(t,r,a,o){return"add"===o?t[r].includes(a)?t:(0,c.default)((0,c.default)({},t),{},(0,i.default)({},r,[].concat((0,u.default)(t[r]),[a]))):"remove"===o?(0,c.default)((0,c.default)({},t),{},(0,i.default)({},r,t[r].filter((function(t){return t!==a})))):t}}]),ReducerActions}();r.reducer=function reducer(t,r){switch(r.type){case"SET_DOWNLOAD_URL":return(0,c.default)((0,c.default)({},t),{},{downloadUrl:r.payload});case"ADD_INCLUDE":return m.updateArray(t,"includes",r.payload,"add");case"REMOVE_INCLUDE":return m.updateArray(t,"includes",r.payload,"remove");case"SET_FILE_RESPONSE":return(0,c.default)((0,c.default)({},t),{},{fileResponse:r.payload});case"SET_FILE":return(0,c.default)((0,c.default)({},t),{},{file:r.payload});case"ADD_OVERRIDE_CONDITION":return m.updateArray(t,"overrideConditions",r.payload,"add");case"REMOVE_OVERRIDE_CONDITION":return m.updateArray(t,"overrideConditions",r.payload,"remove");case"SET_KIT_TITLE":return(0,c.default)((0,c.default)({},t),{},{kitInfo:(0,c.default)((0,c.default)({},t.kitInfo),{},{title:r.payload})});case"SET_KIT_DESCRIPTION":return(0,c.default)((0,c.default)({},t),{},{kitInfo:(0,c.default)((0,c.default)({},t.kitInfo),{},{description:r.payload})});case"SET_REFERRER":return(0,c.default)((0,c.default)({},t),{},{referrer:r.payload});case"SET_INCLUDES":return(0,c.default)((0,c.default)({},t),{},{includes:r.payload});default:return t}}},51122:(t,r,a)=>{"use strict";var o=a(67394),l=a(67971);o(r,"__esModule",{value:!0}),r.default=function Export(){return i.default.createElement(u.default,null,i.default.createElement(c.LocationProvider,{history:d.default.appHistory},i.default.createElement(c.Router,null,i.default.createElement(m.default,{path:"complete"}),i.default.createElement(v.default,{path:"process"}),i.default.createElement(p.default,{default:!0}))))};var i=l(a(63804)),u=l(a(6432)),c=a(50927),d=l(a(20485)),p=l(a(42772)),m=l(a(27714)),v=l(a(15452))},72327:(t,r,a)=>{"use strict";var o=a(67394),l=a(67971);o(r,"__esModule",{value:!0}),r.default=function Import(){return i.default.createElement(u.default,null,i.default.createElement(c.LocationProvider,{history:d.default.appHistory},i.default.createElement(c.Router,null,i.default.createElement(g.default,{path:"complete"}),i.default.createElement(h.default,{path:"process"}),i.default.createElement(v.default,{path:"resolver"}),i.default.createElement(m.default,{path:"content"}),i.default.createElement(p.default,{default:!0}))))};var i=l(a(63804)),u=l(a(6432)),c=a(50927),d=l(a(20485)),p=l(a(2200)),m=l(a(91156)),v=l(a(74285)),h=l(a(61722)),g=l(a(98302))},75302:(t,r,a)=>{"use strict";var o=a(67394),l=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var i=l(a(74758)),u=l(a(11959)),c=l(a(18042)),d=l(a(20485)),p=l(a(72327)),m=l(a(51122));r.default=function ImportExport(){(0,u.default)(this,ImportExport),(0,c.default)(this,"routes",[{path:"/import/*",component:p.default},{path:"/export/*",component:m.default}]);var t,r=(0,i.default)(this.routes);try{for(r.s();!(t=r.n()).done;){var a=t.value;d.default.addRoute(a)}}catch(t){r.e(t)}finally{r.f()}}},97932:(t,r,a)=>{"use strict";var o=a(67394),l=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var i=l(a(64895)),u=l(a(75302)),c={Layout:i.default,Module:u.default};r.default=c},27714:(t,r,a)=>{"use strict";var o=a(18194).__,l=a(67394),i=a(67971),u=a(52369);l(r,"__esModule",{value:!0}),r.default=function ExportComplete(){var t,r=(0,c.useContext)(d.Context),a=(0,c.useRef)(null),l=function downloadFile(){if(!a.current){var t=document.createElement("a");t.href="data:text/plain;base64,"+r.data.fileResponse.file,t.download="elementor-kit.zip",a.current=t}a.current.click()};return(0,c.useEffect)((function(){r.data.downloadUrl&&l()}),[r.data.downloadUrl]),c.default.createElement(p.default,{type:"export",footer:function getFooter(){return c.default.createElement(g.default,{separator:!0,justify:"end"},c.default.createElement(y.default,null))}()},c.default.createElement(m.default,{image:elementorAppConfig.assets_url+"images/go-pro.svg",heading:o("Your export is ready!","elementor"),description:o("Now you can import this kit and use it on other sites.","elementor"),notice:c.default.createElement(c.default.Fragment,null,o("Download not working?","elementor")," ",function getDownloadLink(){return c.default.createElement(h.default,{onClick:l,italic:!0},o("Click Here","elementor"))}()," ",o("to download","elementor"))},c.default.createElement(v.default,{data:null===(t=r.data.fileResponse)||void 0===t?void 0:t.manifest})))};var c=u(a(63804)),d=a(6432),p=i(a(64895)),m=i(a(1422)),v=i(a(54497)),h=i(a(69038)),g=i(a(93965)),y=i(a(5199));a(3272)},30344:(t,r,a)=>{"use strict";var o=a(18194).__,l=a(23615),i=a(67394),u=a(67971),c=a(52369);i(r,"__esModule",{value:!0}),r.default=ExportButton;var d=c(a(63804));a(3777),a(38081);var p=u(a(47834)),m=a(50927),v=a(6432),h=u(a(72745));function ExportButton(){var t=(0,d.useContext)(v.Context),r=(0,m.useNavigate)(),a=(0,d.useState)(!1),l=(0,p.default)(a,2),i=l[0],u=l[1],c=function getDownloadUrl(){var r=elementorAppConfig["import-export"].exportURL,a={elementor_export_kit:{include:t.data.includes,kitInfo:t.data.kitInfo}};return r+"&"+jQuery.param(a)};return(0,d.useEffect)((function(){u(!!t.data.includes.length)}),[t.data.includes]),(0,d.useEffect)((function(){t.data.downloadUrl&&r("/export/process")}),[t.data.downloadUrl]),d.default.createElement(h.default,{variant:"contained",text:o("Export","elementor"),color:i?"primary":"disabled",onClick:function onClick(){i&&t.dispatch({type:"SET_DOWNLOAD_URL",payload:c()})}})}ExportButton.propTypes={setIsDownloading:l.func}},37869:(t,r,a)=>{"use strict";var o=a(18194).__,l=a(67394),i=a(67971),u=a(52369);l(r,"__esModule",{value:!0}),r.default=function KitDescription(){var t=(0,c.useContext)(d.Context);return c.default.createElement(p.default,{variant:"outlined",placeholder:o("Say something about the style and content of these files...","elementor"),multiline:!0,rows:5,onChange:function onChange(r){t.dispatch({type:"SET_KIT_DESCRIPTION",payload:r.target.value})}})};var c=u(a(63804)),d=a(6432),p=i(a(53854))},74525:(t,r,a)=>{"use strict";var o=a(18194).__,l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=function KitInfoModal(t){return u.default.createElement(d.default,(0,c.default)({},t,{className:"e-app-export-kit-info-modal",title:o("Template Kit Information","elementor")}),u.default.createElement(d.default.Section,null,u.default.createElement(p.default,{className:"e-app-export-kit-info-modal__heading",variant:"h2",tag:"h3"},o("What is kit information?","elementor")),u.default.createElement(m.default,null,o("These are the details you’ll use to quickly find and apply this kit in the future, even as your collection grows.","elementor"))))};var u=i(a(63804)),c=i(a(37959)),d=i(a(89854)),p=i(a(80957)),m=i(a(36357))},73935:(t,r,a)=>{"use strict";var o=a(18194).__,l=a(67394),i=a(67971),u=a(52369);l(r,"__esModule",{value:!0}),r.default=function KitName(){var t=(0,c.useContext)(d.Context);return c.default.createElement(p.default,{variant:"outlined",placeholder:o("Elementor Kit","elementor"),onChange:function onChange(r){t.dispatch({type:"SET_KIT_TITLE",payload:r.target.value})}})};var c=u(a(63804)),d=a(6432),p=i(a(53854))},42772:(t,r,a)=>{"use strict";var o=a(18194).__,l=a(67394),i=a(52369),u=a(67971);l(r,"__esModule",{value:!0}),r.default=function ExportKit(){var t=(0,d.useState)(!1),r=(0,c.default)(t,2),a=r[0],l=r[1],i=o("Kit Information","elementor");return d.default.createElement(p.default,{type:"export",footer:function getFooter(){return d.default.createElement(T.default,{separator:!0,justify:"end"},d.default.createElement(v.default,null))}()},d.default.createElement("section",{className:"e-app-export-kit"},d.default.createElement(m.default,{heading:o("Export a Template Kit","elementor"),description:[o("Choose which Elementor components - templates, content and site settings - to include in your kit file.","elementor"),d.default.createElement(d.default.Fragment,{key:"description-secondary-line"},o("By default, all of your components will be exported.","elementor")," ",function getLearnMoreLink(){return d.default.createElement(C.default,{url:"https://go.elementor.com/app-what-are-kits",italic:!0},o("Learn More","elementor"))}())]}),d.default.createElement(h.default,null),d.default.createElement(g.default,{className:"e-app-export-kit-information"},d.default.createElement(g.default.Header,null,d.default.createElement(g.default.Headline,null,i,d.default.createElement(w.default,{className:"e-app-export-kit-info-modal__icon",icon:"eicon-info-circle",color:"secondary",hideText:!0,text:i,onClick:function onClick(t){t.stopPropagation(),l((function(t){return!t}))}}))),d.default.createElement(g.default.Body,null,d.default.createElement(E.default,{container:!0,spacing:20},d.default.createElement(E.default,{item:!0,md:4},d.default.createElement(E.default,{container:!0,direction:"column"},d.default.createElement(E.default,{className:"e-app-export-kit-information__field-header",container:!0,alignItems:"center"},d.default.createElement(b.default,{className:"e-app-export-kit-information__label",variant:"h6",tag:"h4"},o("Kit Name","elementor"))),d.default.createElement(E.default,{item:!0},d.default.createElement(y.default,null)))),d.default.createElement(E.default,{item:!0,md:4},d.default.createElement(E.default,{className:"e-app-export-kit-information__field-header",container:!0,alignItems:"center"},d.default.createElement(b.default,{className:"e-app-export-kit-information__label",variant:"h6",tag:"h4"},o("Kit Description","elementor"))),d.default.createElement(E.default,{item:!0},d.default.createElement(_.default,null)))))),d.default.createElement(x.default,{show:a,setShow:l})))};var c=u(a(47834)),d=i(a(63804)),p=u(a(64895)),m=u(a(73331)),v=u(a(30344)),h=u(a(57654)),g=u(a(88755)),y=u(a(73935)),_=u(a(37869)),x=u(a(74525)),E=u(a(57390)),b=u(a(80957)),C=u(a(69038)),w=u(a(72745)),T=u(a(93965));a(45813)},15452:(t,r,a)=>{"use strict";var o=a(67394),l=a(67971),i=a(52369);o(r,"__esModule",{value:!0}),r.default=function ExportProcess(){var t=(0,v.default)(),r=t.ajaxState,a=t.setAjax,o=(0,u.useContext)(m.Context),l=(0,c.useNavigate)();return(0,u.useEffect)((function(){o.data.fileResponse&&l("export/complete")}),[o.data.fileResponse]),u.default.createElement(d.default,{type:"export"},u.default.createElement(p.default,{status:r.status,onLoad:function onLoad(){o.data.downloadUrl&&a({url:o.data.downloadUrl,headers:{"Content-Type":"application/json"}})},onSuccess:function onSuccess(){return o.dispatch({type:"SET_FILE_RESPONSE",payload:r.response})},onDialogApprove:function onDialogApprove(){return window.open("https://elementor.com/help/export-kit?utm_source=import-export&utm_medium=wp-dash&utm_campaign=learn","_blank")},onDialogDismiss:function onDialogDismiss(){o.dispatch({type:"SET_DOWNLOAD_URL",payload:""}),l("export")}}))};var u=i(a(63804)),c=a(50927),d=l(a(64895)),p=l(a(60724)),m=a(6432),v=l(a(51432))},98302:(t,r,a)=>{"use strict";var o=a(18194).__,l=a(67394),i=a(67971),u=a(52369);l(r,"__esModule",{value:!0}),r.default=function ImportComplete(){var t=(0,c.useContext)(p.Context),r=function getTemplates(t,r){var a={};for(var o in null==r||null===(l=r.templates)||void 0===l?void 0:l.succeed){var l;a[o]=t[o]}return a},a=function getContent(t,r){var a={};for(var o in null==r?void 0:r.content)for(var l in a[o]={},null===(i=r.content[o])||void 0===i?void 0:i.succeed){var i;a[o][l]=t[o][l]}return a},l=function getWPContent(t,r){var a={};for(var o in null==r?void 0:r["wp-content"]){var l,i=null===(l=r["wp-content"][o])||void 0===l?void 0:l.succeed;a[o]=i?(0,d.default)(i):[]}return a};return c.default.createElement(m.default,{type:"import",footer:function getFooter(){return c.default.createElement(_.default,{separator:!0,justify:"end"},c.default.createElement(y.default,null))}()},c.default.createElement(v.default,{image:elementorAppConfig.assets_url+"images/go-pro.svg",heading:o("Your kit is now live on your site!","elementor"),notice:c.default.createElement(c.default.Fragment,null,c.default.createElement(g.default,{url:"https://go.elementor.com/app-what-are-kits",italic:!0},o("Click Here","elementor"))," ",o("to learn more about building your site with Elementor Kits","elementor"))},c.default.createElement(h.default,{data:function getKitData(){if(!t.data.fileResponse)return{};var o=t.data.fileResponse.stage1.manifest,i=t.data.fileResponse.stage2;return{templates:r(o.templates,i),content:a(o.content,i),"wp-content":l(o["wp-content"],i),"site-settings":t.data.includes.includes("settings")?o["site-settings"]:{}}}()})))};var c=u(a(63804));a(3777),a(38081);var d=i(a(83452)),p=a(6432),m=i(a(64895)),v=i(a(1422)),h=i(a(54497)),g=i(a(69038)),y=i(a(5199)),_=i(a(93965))},5304:(t,r,a)=>{"use strict";var o=a(18194).__,l=a(23615),i=a(67394),u=a(67971),c=a(52369);i(r,"__esModule",{value:!0}),r.default=ImportButton;var d=c(a(63804));a(3777),a(38081);var p=u(a(47834)),m=a(50927),v=a(6432),h=u(a(72745));function ImportButton(){var t=(0,d.useContext)(v.Context),r=(0,m.useNavigate)(),a=(0,d.useState)(!1),l=(0,p.default)(a,2),i=l[0],u=l[1];return(0,d.useEffect)((function(){u(!!t.data.includes.length)}),[t.data.includes]),d.default.createElement(h.default,{variant:"contained",text:o("Next","elementor"),color:i?"primary":"disabled",onClick:function onClick(){i&&(t.data.includes.includes("templates")&&t.data.fileResponse.stage1.conflicts?r("import/resolver"):r("import/process"))}})}ImportButton.propTypes={setIsDownloading:l.func}},91156:(t,r,a)=>{"use strict";var o=a(18194).__,l=a(67394),i=a(67971),u=a(52369);l(r,"__esModule",{value:!0}),r.default=function ImportContent(){var t,r,a=(0,c.useContext)(p.Context),l=(0,d.useNavigate)();return(0,c.useEffect)((function(){a.data.file||l("import")}),[a.data.file]),c.default.createElement(m.default,{type:"import",footer:function getFooter(){return c.default.createElement(_.default,{separator:!0,justify:"end"},c.default.createElement(y.default,{text:o("Previous","elementor"),variant:"contained",onClick:function onClick(){return a.dispatch({type:"SET_FILE",payload:null})}}),c.default.createElement(x.default,null))}()},c.default.createElement("section",{className:"e-app-export-kit"},c.default.createElement(v.default,{heading:o("Import a Template Kit","elementor"),description:[o("Choose which Elementor components - templates, content and site settings - to include in your kit.","elementor"),c.default.createElement(c.default.Fragment,{key:"description-secondary-line"},o("By default, all of your components will be imported.","elementor")," ",function getLearnMoreLink(){return c.default.createElement(g.default,{url:"https://go.elementor.com/app-what-are-kits",italic:!0},o("Learn More","elementor"))}())]}),c.default.createElement(h.default,{manifest:null===(t=a.data.fileResponse)||void 0===t||null===(r=t.stage1)||void 0===r?void 0:r.manifest})))};var c=u(a(63804)),d=a(50927),p=a(6432),m=i(a(64895)),v=i(a(73331)),h=i(a(57654)),g=i(a(69038)),y=i(a(72745)),_=i(a(93965)),x=i(a(5304))},2200:(t,r,a)=>{"use strict";var o=a(18194).__,l=a(67394),i=a(67971),u=a(52369);l(r,"__esModule",{value:!0}),r.default=function ImportKit(){var t=(0,C.default)(),r=t.ajaxState,a=t.setAjax,l=t.ajaxActions,i=(0,c.useState)(!1),u=(0,p.default)(i,2),w=u[0],T=u[1],N=(0,c.useState)(!1),P=(0,p.default)(N,2),S=P[0],M=P[1],R=(0,c.useContext)(v.Context),O=(0,m.useNavigate)(),I=location.hash.match("referrer=([^&]+)");return(0,c.useEffect)((function(){R.data.file&&a({data:{e_import_file:R.data.file,action:"elementor_import_kit",data:(0,d.default)({stage:1})}})}),[R.data.file]),(0,c.useEffect)((function(){"success"===r.status?R.dispatch({type:"SET_FILE_RESPONSE",payload:{stage1:r.response}}):"error"===r.status&&T(!0)}),[r.status]),(0,c.useEffect)((function(){R.data.fileResponse&&R.data.file&&O("/import/content")}),[R.data.fileResponse]),(0,c.useEffect)((function(){R.dispatch({type:"SET_INCLUDES",payload:[]})}),[]),c.default.createElement(h.default,{type:"import"},c.default.createElement("section",{className:"e-app-import"},"kit-library"===(null==I?void 0:I[1])&&c.default.createElement(b.default,{className:"e-app-import__back-to-library",icon:"eicon-chevron-left",text:o("Back to Kit Library","elementor"),onClick:function onClick(){return O("/kit-library")}}),c.default.createElement(g.default,{heading:o("Import a Template Kit","elementor"),description:[o("Upload a file with templates, site settings, content, etc., and apply them to your site automatically.","elementor"),function getLearnMoreLink(){return c.default.createElement(_.default,{url:"https://go.elementor.com/app-what-are-kits",key:"learn-more-link",italic:!0},o("Learn More","elementor"))}()]}),c.default.createElement(x.default,{label:o("Important","elementor"),color:"warning",className:"e-app-import__notice"},o("We recommend that you backup your site before importing a kit file.","elementor")),c.default.createElement(E.default,{className:"e-app-import__drop-zone",heading:o("Upload Files to Your Library","elementor"),text:o("Drag & drop the .zip file with your Kit","elementor"),secondaryText:o("Or","elementor"),filetypes:["zip"],onFileSelect:function onFileSelect(t){M(!0),R.dispatch({type:"SET_FILE",payload:t})},onError:function onError(){return T(!0)},isLoading:S}),w&&c.default.createElement(y.default,{onApprove:function onApprove(){return window.open("https://elementor.com/help/import-kit?utm_source=import-export&utm_medium=wp-dash&utm_campaign=learn","_blank")},onDismiss:function resetImportProcess(){R.dispatch({type:"SET_FILE",payload:null}),T(!1),M(!1),l.reset()}})))};var c=u(a(63804)),d=i(a(32009));a(64828);var p=i(a(47834)),m=a(50927),v=a(6432),h=i(a(64895)),g=i(a(73331)),y=i(a(62858)),_=i(a(69038)),x=i(a(63104)),E=i(a(20857)),b=i(a(72745)),C=i(a(51432));a(18713)},61722:(t,r,a)=>{"use strict";var o=a(67394),l=a(67971),i=a(52369);o(r,"__esModule",{value:!0}),r.default=function ImportProcess(){var t,r=(0,g.default)(),a=r.ajaxState,o=r.setAjax,l=(0,u.useContext)(h.Context),i=(0,p.useNavigate)(),y=new URLSearchParams(window.location.search),_=Object.fromEntries(y.entries()),x=(null==_?void 0:_.file_url)||(null===(t=location.hash.match("file_url=([^&]+)"))||void 0===t?void 0:t[1]);return(0,u.useEffect)((function(){"success"===a.status&&(l.data.fileResponse.hasOwnProperty("stage2")?i("/import/complete"):i("/import/content"))}),[l.data.fileResponse]),u.default.createElement(m.default,{type:"import"},u.default.createElement(v.default,{status:a.status,onLoad:function onLoad(){var t={data:{action:"elementor_import_kit"}};if(x||l.data.fileResponse){if(x&&!l.data.file){var r=decodeURIComponent(x);l.dispatch({type:"SET_FILE",payload:r}),t.data.e_import_file=r,t.data.data=(0,d.default)({stage:1});var a=location.hash.match("referrer=([^&]+)");a&&l.dispatch({type:"SET_REFERRER",payload:a[1]})}else t.data.data={stage:2,session:l.data.fileResponse.stage1.session,include:l.data.includes,overrideConditions:l.data.overrideConditions},l.data.referrer&&(t.data.data.referrer=l.data.referrer),t.data.data=(0,d.default)(t.data.data);o(t)}},onSuccess:function onSuccess(){var t;if(null!==(t=l.data.fileResponse)&&void 0!==t&&t.stage1){var r=l.data.fileResponse,o=(0,c.default)((0,c.default)({},r),{},{stage2:a.response});l.dispatch({type:"SET_FILE_RESPONSE",payload:o})}else l.dispatch({type:"SET_FILE_RESPONSE",payload:{stage1:a.response}})},onDialogApprove:function onDialogApprove(){},onDialogDismiss:function onDialogDismiss(){l.dispatch({type:"SET_FILE",payload:null}),i("/import")}}))};var u=i(a(63804)),c=l(a(84899)),d=l(a(32009));a(42679),a(76139),a(12897),a(93085),a(64828),a(3777),a(38081);var p=a(50927),m=l(a(64895)),v=l(a(60724)),h=a(6432),g=l(a(51432))},60753:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971),u=a(52369);l(r,"__esModule",{value:!0}),r.default=ConflictCheckbox;var c=u(a(63804));a(3777),a(38081);var d=a(6432),p=i(a(23283));function ConflictCheckbox(t){var r=(0,c.useContext)(d.Context);return(0,c.useEffect)((function(){r.data.overrideConditions.length||r.dispatch({type:"ADD_OVERRIDE_CONDITION",payload:t.id})}),[]),c.default.createElement(p.default,{checked:function isSelected(){return r.data.overrideConditions.includes(t.id)}(),onChange:function updateOverrideCondition(a){var o=a.target.checked?"ADD_OVERRIDE_CONDITION":"REMOVE_OVERRIDE_CONDITION";r.dispatch({type:o,payload:t.id})},className:t.className})}ConflictCheckbox.propTypes={className:o.string,id:o.number.isRequired},ConflictCheckbox.defaultProps={className:""}},95626:(t,r,a)=>{"use strict";var o=a(18194).__,l=a(23615),i=a(67394),u=a(67971),c=a(52369);i(r,"__esModule",{value:!0}),r.default=Conflict;var d=c(a(63804));a(3777),a(38081);var p=a(6432),m=u(a(60753)),v=u(a(80957)),h=u(a(36357)),g=u(a(57390)),y=u(a(72745));function Conflict(t){var r,a,l=(0,d.useContext)(p.Context),i=null===(r=l.data.fileResponse)||void 0===r||null===(a=r.stage1)||void 0===a?void 0:a.manifest,u=function isImportedAssetSelected(t){return l.data.overrideConditions.includes(t)},c=function getAssetClassName(t){var r=["e-app-import-resolver-conflicts__asset"];return t&&r.push("active"),r.join(" ")};return d.default.createElement(g.default,{container:!0,noWrap:!0},d.default.createElement(m.default,{id:t.importedId,type:"main-type",className:"e-app-import-resolver-conflicts__checkbox"}),d.default.createElement(g.default,{item:!0},d.default.createElement(v.default,{variant:"h5",tag:"h4",className:"e-app-import-resolver-conflicts__title"},function getConflictTitle(t){var r,a=i.templates[t].doc_type,o=null===(r=elementorAppConfig["import-export"].summaryTitles.templates)||void 0===r?void 0:r[a];return(null==o?void 0:o.single)||a}(t.importedId)),d.default.createElement(g.default,{item:!0},d.default.createElement(h.default,{variant:"sm",tag:"span",className:function getImportedAssetClasses(t){return c(u(t))}(t.importedId)},o("Imported"),": ",i.templates[t.importedId].title),d.default.createElement(h.default,{style:!0,variant:"sm",tag:"span",className:function getExistingAssetClasses(t){return c(!u(t))}(t.importedId)},o("Existing"),": ",t.conflictData.template_title," ",function getEditTemplateButton(t){return d.default.createElement(y.default,{className:"e-app-import-resolver-conflicts__edit-template",url:t,target:"_blank",icon:"eicon-editor-external-link",text:o("Edit Template","elementor"),hideText:!0})}(t.conflictData.edit_url)))))}Conflict.propTypes={importedId:l.number,conflictData:l.object}},74285:(t,r,a)=>{"use strict";var o=a(18194).__,l=a(67394),i=a(52369),u=a(67971);l(r,"__esModule",{value:!0}),r.default=function ImportResolver(){var t,r,a=(0,m.useContext)(h.Context),l=(0,v.useNavigate)(),i=(null===(t=a.data)||void 0===t||null===(r=t.fileResponse)||void 0===r?void 0:r.stage1.conflicts)||{};return m.default.createElement(g.default,{type:"import",footer:function getFooter(){return m.default.createElement(N.default,{separator:!0,justify:"end"},m.default.createElement(C.default,{text:o("Previous","elementor"),variant:"contained",onClick:function onClick(){return l("import/content")}}),m.default.createElement(C.default,{text:o("Next","elementor"),variant:"contained",color:"primary",onClick:function onClick(){return l("import/process")}}))}()},m.default.createElement("section",{className:"e-app-import-resolver"},m.default.createElement(y.default,{heading:o("Import a Template Kit","elementor"),description:[o("We noticed that items in your kit overlap with what's already live on your site.","elementor"),m.default.createElement(m.default.Fragment,{key:"description-secondary-line"},o("Items that you leave checked here will override your current design and settings.","elementor")," ",function getLearnMoreLink(){return m.default.createElement(b.default,{url:"https://go.elementor.com/app-what-are-kits",italic:!0},o("Learn More","elementor"))}())]}),function isHomePageOverride(){if(a.data.includes.includes("content")){var t,r,o,l=(null===(t=a.data)||void 0===t||null===(r=t.fileResponse)||void 0===r||null===(o=r.stage1.manifest.content)||void 0===o?void 0:o.page)||{};return(0,d.default)(l).find((function(t){return t[1].show_on_front}))}return!1}()&&m.default.createElement(E.default,{className:"e-app-import-resolver__notice",label:o("Note","elementor"),color:"warning"},o("Your site's homepage will be determined by the kit. You can change this later.","elementor")),m.default.createElement(x.default,{isOpened:!0},m.default.createElement(x.default.Header,{toggle:!1},m.default.createElement(x.default.Headline,null,o("Select the items you want to keep and apply:","elementor"))),m.default.createElement(x.default.Body,{padding:"20"},m.default.createElement(w.default,{className:"e-app-import-resolver-conflicts__container"},m.default.createElement(T.default,{separated:!0,className:"e-app-import-resolver-conflicts"},(0,d.default)(i).map((function(t,r){var a=(0,c.default)(t,2),o=a[0],l=a[1];return m.default.createElement(T.default.Item,{padding:"20",key:r,className:"e-app-import-resolver-conflicts__item"},m.default.createElement(_.default,{importedId:(0,p.default)(o),conflictData:l[0]}))}))))))))};var c=u(a(47834)),d=u(a(38923)),p=u(a(14176));a(3777),a(38081),a(71954),a(90286);var m=i(a(63804)),v=a(50927),h=a(6432),g=u(a(64895)),y=u(a(73331)),_=u(a(95626)),x=u(a(88755)),E=u(a(63104)),b=u(a(69038)),C=u(a(72745)),w=u(a(7465)),T=u(a(53733)),N=u(a(93965));a(80322)},76322:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=ContentLayout;var u=i(a(63804));function ContentLayout(t){return u.default.createElement("div",{className:"e-app-import-export-content-layout"},u.default.createElement("div",{className:"e-app-import-export-content-layout__container"},t.children))}a(82254),ContentLayout.propTypes={children:o.any.isRequired}},60724:(t,r,a)=>{"use strict";var o=a(18194).__,l=a(23615),i=a(67394),u=a(67971),c=a(52369);i(r,"__esModule",{value:!0}),r.default=FileProcess;var d=c(a(63804)),p=a(47224),m=u(a(62858)),v=u(a(1422));function FileProcess(t){return(0,d.useEffect)((function(){t.onLoad()}),[]),(0,d.useEffect)((function(){"success"===t.status&&t.onSuccess()}),[t.status]),d.default.createElement(v.default,{className:(0,p.arrayToClassName)(["e-app-import-export-file-process",t.className]),icon:"eicon-loading eicon-animation-spin",heading:o("Setting up your kit...","elementor"),description:d.default.createElement(d.default.Fragment,null,o("This usually takes a few moments.","elementor"),d.default.createElement("br",null),o("Don't close this window until the process is finished.","elementor"))},"error"===t.status&&d.default.createElement(m.default,{onApprove:t.onDialogApprove,onDismiss:t.onDialogDismiss}))}FileProcess.propTypes={className:l.string,status:l.oneOf(["initial","success","error"]),onLoad:l.func.isRequired,onSuccess:l.func.isRequired,onDialogApprove:l.func.isRequired,onDialogDismiss:l.func.isRequired},FileProcess.defaultProps={className:""}},62858:(t,r,a)=>{"use strict";var o=a(18194).__,l=a(23615),i=a(67394),u=a(67971);i(r,"__esModule",{value:!0}),r.default=ImportFailedDialog;var c=u(a(63804)),d=u(a(76639));function ImportFailedDialog(t){return c.default.createElement(d.default,{title:o("Something went wrong","elementor"),text:o("Nothing to worry about, just try again. If the problem continues, head over to the Help Center.","elementor"),approveButtonColor:"link",approveButtonText:o("Learn More","elementor"),approveButtonOnClick:t.onApprove,dismissButtonText:o("Dismiss","elementor"),dismissButtonOnClick:t.onDismiss,onClose:t.onDismiss})}ImportFailedDialog.propTypes={onApprove:l.func.isRequired,onDismiss:l.func.isRequired}},23776:(t,r,a)=>{"use strict";var o=a(18194).__,l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=function ExportInfoModal(t){return u.default.createElement(p.default,(0,c.default)({},t,{title:o("Export a Template Kit","elementor")}),u.default.createElement(p.default.Section,null,u.default.createElement(p.default.Heading,null,o("What’s a Template Kit?","elementor")),u.default.createElement(p.default.Text,null,o("A kit is a zip file containing anything from an entire site to individual components.","elementor"))),u.default.createElement(p.default.Section,null,u.default.createElement(p.default.Heading,null,o("How does exporting work?","elementor")),u.default.createElement(p.default.Text,null,u.default.createElement(u.default.Fragment,null,o("Select what to include from your site. We’ll use that to create a zip file.","elementor"),u.default.createElement("br",null),o("That’s it!","elementor")," ",u.default.createElement(d.default,{url:"http://go.elementor.com/app-export-kit"},o("Learn More","elementor"))))),u.default.createElement(p.default.Section,null,u.default.createElement(p.default.Tip,{title:o("Tip!","elementor"),description:o("Once your download is complete, import your kit to another site and get it up and running quickly.","elementor")})))};var u=i(a(63804)),c=i(a(37959)),d=i(a(69038)),p=i(a(45933))},96079:(t,r,a)=>{"use strict";var o=a(18194).__,l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=function ImportInfoModal(t){return u.default.createElement(p.default,(0,c.default)({},t,{title:o("Import a Template Kit","elementor")}),u.default.createElement(p.default.Section,null,u.default.createElement(p.default.Heading,null,o("What’s a Template Kit?","elementor")),u.default.createElement(p.default.Text,null,o("A kit is a zip file containing anything from an entire site to individual components.","elementor"))),u.default.createElement(p.default.Section,null,u.default.createElement(p.default.Heading,null,o("How does importing work?","elementor")),u.default.createElement(p.default.Text,null,u.default.createElement(u.default.Fragment,null,o("After you select what's included from your imported kit, you’ll be able to choose which current site settings should stay and which the import should override. ","elementor"),u.default.createElement("br",null),u.default.createElement(d.default,{url:"http://go.elementor.com/app-import-kit"},o("Learn More","elementor"))))))};var u=i(a(63804)),c=i(a(37959)),d=i(a(69038)),p=i(a(45933))},92236:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=InfoModalHeading;var u=i(a(63804)),c=a(47224),d=i(a(80957));function InfoModalHeading(t){return u.default.createElement(d.default,{variant:"h3",tag:"h2",className:(0,c.arrayToClassName)(["e-app-import-export-info-modal__heading",t.className])},t.children)}InfoModalHeading.propTypes={className:o.string,children:o.oneOfType([o.string,o.object,o.arrayOf(o.object)]).isRequired},InfoModalHeading.defaultProps={className:""}},71107:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=InfoModalSection;var u=i(a(63804)),c=a(47224),d=i(a(89854));function InfoModalSection(t){return u.default.createElement(d.default.Section,{className:(0,c.arrayToClassName)(["e-app-import-export-info-modal__section",t.className])},t.children)}InfoModalSection.propTypes={className:o.string,children:o.any},InfoModalSection.defaultProps={className:""}},67215:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=InfoModalText;var u=i(a(63804)),c=a(47224),d=i(a(36357));function InfoModalText(t){return u.default.createElement(d.default,{variant:"sm",className:(0,c.arrayToClassName)(["e-app-import-export-info-modal__text",t.className])},t.children)}InfoModalText.propTypes={className:o.string,children:o.any.isRequired},InfoModalText.defaultProps={className:""}},26822:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=InfoModalTip;var u=i(a(63804)),c=i(a(37959)),d=a(47224),p=i(a(89854));function InfoModalTip(t){return u.default.createElement(p.default.Tip,(0,c.default)({},t,{className:(0,d.arrayToClassName)(["e-app-import-export-info-modal__tip",t.className])}))}InfoModalTip.propTypes={className:o.string},InfoModalTip.defaultProps={className:""}},45933:(t,r,a)=>{"use strict";var o=a(18194).__,l=a(23615),i=a(67394),u=a(67971);i(r,"__esModule",{value:!0}),r.default=InfoModal,r.infoButtonProps=void 0;var c=u(a(63804)),d=u(a(37959)),p=u(a(89854)),m=u(a(71107)),v=u(a(92236)),h=u(a(67215)),g=u(a(26822));a(1431);var y={id:"info-modal",className:"e-app-export-kit-information__info-icon",icon:"eicon-info-circle",text:o("Kit Info","elementor"),color:"secondary",hideText:!0};function InfoModal(t){var r={className:"e-app-import-export-info-modal",setShow:t.setShow};return t.hasOwnProperty("show")?r.show=t.show:r.toggleButtonProps=y,c.default.createElement(p.default,(0,d.default)({},r,{title:t.title}),t.children)}r.infoButtonProps=y,InfoModal.propTypes={show:l.bool,setShow:l.func,title:l.string,children:l.any.isRequired},InfoModal.Section=m.default,InfoModal.Heading=v.default,InfoModal.Text=h.default,InfoModal.Tip=g.default},14963:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971),u=a(52369);l(r,"__esModule",{value:!0}),r.default=KitContentCheckbox;var c=u(a(63804));a(3777),a(38081);var d=a(6432),p=i(a(23283));function KitContentCheckbox(t){var r=(0,c.useContext)(d.Context),a=function isSelected(){return r.data.includes.includes(t.type)},o=function setIncludes(a){var o=a.target.checked?"ADD_INCLUDE":"REMOVE_INCLUDE";r.dispatch({type:o,payload:t.type})};return(0,c.useEffect)((function(){r.data.includes.length||r.dispatch({type:"ADD_INCLUDE",payload:t.type})}),[]),(0,c.useMemo)((function(){return c.default.createElement(p.default,{checked:a(),onChange:o,className:t.className})}),[r.data.includes])}KitContentCheckbox.propTypes={className:o.string,type:o.string.isRequired},KitContentCheckbox.defaultProps={className:""}},6581:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=TemplatesFeatures;var u=i(a(63804)),c=i(a(90329));function TemplatesFeatures(t){var r,a=null===(r=t.features.locked)||void 0===r?void 0:r.length;return u.default.createElement(u.default.Fragment,null,function getOpenFeatures(){var r;return null===(r=t.features.open)||void 0===r?void 0:r.join(", ")}(),function getLockedFeatures(){if(a)return u.default.createElement(c.default,{tag:"span",offset:19,show:t.showTooltip,title:t.features.tooltip,disabled:!t.isLocked,className:t.isLocked?"e-app-export-templates-features__locked":""},", "+t.features.locked.join(", "))}())}a(53591),TemplatesFeatures.propTypes={features:o.object,isLocked:o.bool,showTooltip:o.bool},TemplatesFeatures.defaultProps={showTooltip:!1}},5214:(t,r,a)=>{"use strict";var o=a(18194).__;a(67394)(r,"__esModule",{value:!0}),r.default=void 0;var l=[{type:"templates",data:{title:o("Templates","elementor"),features:{open:[o("Saved Templates","elementor")],locked:[o("Headers","elementor"),o("Footers","elementor"),o("Archives","elementor"),o("Single Posts","elementor"),o("Single Pages","elementor"),o("Search Results","elementor"),o("404 Error Page","elementor"),o("Popups","elementor"),o("Global widgets","elementor")],tooltip:o("To import or export these components, you’ll need Elementor Pro.","elementor")}}},{type:"content",data:{title:o("Content","elementor"),features:{open:[o("Elementor Pages","elementor"),o("Landing Pages","elementor"),o("Elementor Posts","elementor"),o("WP Pages","elementor"),o("WP Posts","elementor"),o("Custom Post Type","elementor")]}}},{type:"settings",data:{title:o("Site Settings","elementor"),features:{open:[o("Global Colors","elementor"),o("Global Fonts","elementor"),o("Theme Style settings","elementor"),o("Layout Settings","elementor"),o("Lightbox Settings","elementor"),o("Background Settings","elementor")]}}}];r.default=l},57654:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971),u=a(52369);l(r,"__esModule",{value:!0}),r.default=KitContent;var c=u(a(63804));a(90286);var d=i(a(18042)),p=i(a(84899)),m=i(a(47834)),v=i(a(6581)),h=i(a(14963)),g=i(a(98063)),y=i(a(7465)),_=i(a(53733)),x=i(a(80957)),E=i(a(36357)),b=i(a(57390)),C=i(a(5214));function KitContent(t){var r=elementorAppConfig.hasPro,a=(0,c.useState)({}),o=(0,m.default)(a,2),l=o[0],i=o[1],u=function setContainerHoverState(t,r){i((function(a){return(0,p.default)((0,p.default)({},a),{},(0,d.default)({},t,r))}))};return c.default.createElement(y.default,null,c.default.createElement(_.default,{separated:!0,className:"e-app-export-kit-content"},C.default.map((function(a,o){var i,d=(null===(i=a.data.features)||void 0===i?void 0:i.locked)&&!r;if(t.manifest){var p="settings"===a.type?"site-settings":a.type;if(!t.manifest[p])return}return c.default.createElement(_.default.Item,{padding:"20",key:a.type,className:"e-app-export-kit-content__item"},c.default.createElement("div",{onMouseEnter:function onMouseEnter(){return d&&u(o,!0)},onMouseLeave:function onMouseLeave(){return d&&u(o,!1)}},c.default.createElement(b.default,{container:!0,noWrap:!0},c.default.createElement(h.default,{type:a.type,className:"e-app-export-kit-content__checkbox"}),c.default.createElement(b.default,{item:!0},c.default.createElement(x.default,{variant:"h4",tag:"h3",className:"e-app-export-kit-content__title"},a.data.title),c.default.createElement(b.default,{item:!0},c.default.createElement(E.default,{variant:"sm",tag:"span",className:"e-app-export-kit-content__description"},a.data.description||function getTemplateFeatures(t,a){if(t)return c.default.createElement(v.default,{features:t,isLocked:!r,showTooltip:l[a]})}(a.data.features,o)),d&&function getGoProButton(){return c.default.createElement(g.default,{className:"e-app-export-kit-content__go-pro-button",url:"https://go.elementor.com/go-pro-import-export"})}())))))}))))}a(89784),KitContent.propTypes={className:o.string,manifest:o.object},KitContent.defaultProps={className:""}},54497:(t,r,a)=>{"use strict";var o=a(18194).__,l=a(23615),i=a(67394),u=a(67971);i(r,"__esModule",{value:!0}),r.default=KitData;var c=u(a(63804)),d=u(a(84899)),p=u(a(38923)),m=u(a(83452));a(90286),a(64434);var v=u(a(80957)),h=u(a(36357)),g=u(a(53733));function KitData(t){var r=t.data,a=function getSummaryTitle(t,r,a){var o=elementorAppConfig["import-export"].summaryTitles[t][r];return null!=o&&o.single?a?a+" "+(a>1?o.plural:o.single):"":o},l=[{title:o("Templates:","elementor"),data:function getTemplates(){var t={};for(var o in null==r?void 0:r.templates){var l=r.templates[o].doc_type;t[l]||(t[l]=0),t[l]++}return(0,p.default)(t).map((function(t){return a("templates",t[0],t[1])}))}()},{title:o("Site Settings:","elementor"),data:function getSiteSettings(){var t=(null==r?void 0:r["site-settings"])||{};return(0,p.default)(t).map((function(t){return a("site-settings",t[1])}))}()},{title:o("Content:","elementor"),data:function getContent(){var t=(null==r?void 0:r.content)||{},o=(null==r?void 0:r["wp-content"])||{},l=(0,d.default)({},t);for(var i in l)l[i]=(0,m.default)(l[i]).concat(o[i]||[]);return l=(0,d.default)((0,d.default)({},o),l),(0,p.default)(l).map((function(t){return a("content",t[0],t[1].length)}))}()}];return c.default.createElement(c.default.Fragment,null,c.default.createElement(v.default,{variant:"h6",tag:"h3",className:"e-app-export-complete__kit-content-title"},o("This Template Kit includes:","elementor")),c.default.createElement(g.default,{className:"e-app-export-complete-kit-data-list"},l.map((function(t,r){if(t.data.length)return c.default.createElement(g.default.Item,{key:r,className:"e-app-export-complete-kit-data-list__item"},c.default.createElement(h.default,{tag:"strong",variant:"sm"},c.default.createElement("strong",null,t.title))," ",c.default.createElement(h.default,{tag:"span",variant:"sm"},t.data.filter((function(t){return t})).join(" | ")))}))))}a(20186),KitData.propTypes={data:l.object}},64895:(t,r,a)=>{"use strict";var o=a(18194).__,l=a(23615),i=a(67394),u=a(67971),c=a(52369);i(r,"__esModule",{value:!0}),r.default=Layout;var d=c(a(63804));a(64828);var p=u(a(74846)),m=u(a(84899)),v=u(a(47834)),h=u(a(94295)),g=u(a(76322)),y=a(45933),_=u(a(96079)),x=u(a(23776));function Layout(t){var r=(0,d.useState)(!1),a=(0,v.default)(r,2),l=a[0],i=a[1],u=location.hash.match("referrer=([^&]+)"),c={title:"import"===t.type?o("Import","elementor"):o("Export","elementor"),headerButtons:[function getInfoButtonProps(){return(0,m.default)((0,m.default)({},y.infoButtonProps),{},{onClick:function onClick(){i(!0)}})}()].concat((0,p.default)(t.headerButtons)),content:function getContent(){var r={show:l,setShow:i};return d.default.createElement(g.default,null,t.children,"import"===t.type?d.default.createElement(_.default,r):d.default.createElement(x.default,r))}(),footer:t.footer},E="#tab-import-export-kit";return u||-1!==elementorAppConfig.return_url.indexOf(E)||(elementorAppConfig.return_url+=E),d.default.createElement(h.default,c)}Layout.propTypes={type:l.oneOf(["import","export"]),headerButtons:l.arrayOf(l.object),children:l.object.isRequired,footer:l.object},Layout.defaultProps={headerButtons:[]}},73331:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=PageHeader;var u=i(a(63804)),c=i(a(59396)),d=a(47224),p=i(a(57390)),m=i(a(80957)),v=i(a(36357));function PageHeader(t){var r=["e-app-import-export-page-header",t.className];return u.default.createElement("div",{className:(0,d.arrayToClassName)(r)},u.default.createElement(p.default,{container:!0},u.default.createElement(p.default,{item:!0,className:"e-app-import-export-page-header__content-wrapper"},t.heading&&u.default.createElement(m.default,{variant:"display-3",className:"e-app-import-export-page-header__heading"},t.heading),t.description&&u.default.createElement(v.default,{className:"e-app-import-export-page-header__description"},function handleMultiLine(t){if((0,c.default)(t)){var r=[];return t.forEach((function(t,a){a&&r.push(u.default.createElement("br",{key:a})),r.push(t)})),r}return t}(t.description)))))}a(90358),PageHeader.propTypes={className:o.string,heading:o.string,description:o.oneOfType([o.string,o.array,o.object])},PageHeader.defaultProps={className:""}},36355:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=PanelBody;var u=i(a(63804)),c=a(47224),d=i(a(17493)),p=i(a(48017));function PanelBody(t){return u.default.createElement(p.default.Content,null,u.default.createElement(d.default.Body,{padding:t.padding,className:(0,c.arrayToClassName)(["e-app-import-export-panel__body",t.className])},t.children))}PanelBody.propTypes={className:o.string,padding:o.string,children:o.any.isRequired},PanelBody.defaultProps={className:"",padding:"0"}},97436:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=PanelHeader;var u=i(a(63804)),c=a(47224),d=i(a(17493)),p=i(a(48017));function PanelHeader(t){return u.default.createElement(p.default.Toggle,{active:t.toggle,showIcon:t.showIcon},u.default.createElement(d.default.Header,{padding:"20",className:(0,c.arrayToClassName)(["e-app-import-export-panel__header",t.className])},t.children))}PanelHeader.propTypes={className:o.string,padding:o.string,toggle:o.bool,showIcon:o.bool,children:o.any.isRequired},PanelHeader.defaultProps={className:"",padding:"20",toggle:!0,showIcon:!0}},54009:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=PanelHeadline;var u=i(a(63804)),c=a(47224),d=i(a(17493));function PanelHeadline(t){return u.default.createElement(d.default.Headline,{className:(0,c.arrayToClassName)(["e-app-import-export-panel__headline",t.className])},t.children)}PanelHeadline.propTypes={className:o.string,children:o.any.isRequired},PanelHeadline.defaultProps={className:""}},88755:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=Panel;var u=i(a(63804)),c=a(47224),d=i(a(17493)),p=i(a(48017)),m=i(a(97436)),v=i(a(54009)),h=i(a(36355));function Panel(t){return u.default.createElement(p.default,{isOpened:t.isOpened},u.default.createElement(d.default,{className:(0,c.arrayToClassName)(["e-app-import-export-panel",t.className])},t.children))}a(64392),Panel.propTypes={className:o.string,isOpened:o.bool,children:o.any.isRequired},Panel.defaultProps={className:"",isOpened:!1},Panel.Header=m.default,Panel.Headline=v.default,Panel.Body=h.default},1422:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=WizardStep;var u=i(a(63804)),c=a(47224),d=i(a(57390)),p=i(a(69722)),m=i(a(80957)),v=i(a(36357));function WizardStep(t){var r=["e-app-import-export-wizard-step",t.className];return u.default.createElement(d.default,{className:(0,c.arrayToClassName)(r),justify:"center",container:!0},u.default.createElement(d.default,{item:!0},(t.image||t.icon)&&u.default.createElement(d.default,{className:"e-app-import-export-wizard-step__media-container",justify:"center",alignItems:"end",container:!0},t.image&&u.default.createElement("img",{className:"e-app-import-export-wizard-step__image",src:t.image}),t.icon&&u.default.createElement(p.default,{className:"e-app-import-export-wizard-step__icon ".concat(t.icon)})),t.heading&&u.default.createElement(m.default,{variant:"display-3",className:"e-app-import-export-wizard-step__heading"},t.heading),t.description&&u.default.createElement(v.default,{variant:"xl",className:"e-app-import-export-wizard-step__description"},t.description),t.children&&u.default.createElement(d.default,{item:!0,className:"e-app-import-export-wizard-step__content"},t.children),t.notice&&u.default.createElement(v.default,{variant:"xs",className:"e-app-import-export-wizard-step__notice"},t.notice)))}a(3714),WizardStep.propTypes={className:o.string,image:o.string,icon:o.string,heading:o.string,description:o.oneOfType([o.string,o.object]),notice:o.oneOfType([o.string,o.object]),children:o.any},WizardStep.defaultProps={className:""}},24662:(t,r,a)=>{"use strict";var o=a(18194).__,l=a(23615),i=a(67394),u=a(67971);i(r,"__esModule",{value:!0}),r.default=r.TemplateTypesConsumer=r.Context=void 0;var c=u(a(63804)),d=u(a(11959)),p=u(a(39041)),m=u(a(77371)),v=u(a(68537)),h=u(a(18042));a(85028);var g=c.default.createContext();r.Context=g;var y=function(t){(0,m.default)(TemplateTypesContext,t);var r=(0,v.default)(TemplateTypesContext);function TemplateTypesContext(t){var a;return(0,d.default)(this,TemplateTypesContext),(a=r.call(this,t)).state={templateTypes:[],loading:!0,error:!1},a}return(0,p.default)(TemplateTypesContext,[{key:"componentDidMount",value:function componentDidMount(){var t=this;this.getTemplateTypes().then((function(r){t.setState({templateTypes:r,loading:!1})})).fail((function(r){t.setState({error:r.statusText?r.statusText:r,loading:!1})}))}},{key:"getTemplateTypes",value:function getTemplateTypes(){return elementorCommon.ajax.load({action:"app_site_editor_template_types"})}},{key:"render",value:function render(){return this.state.error?c.default.createElement("div",{className:"e-loading-wrapper"},c.default.createElement("h3",null,o("Error:","elementor")," ",this.state.error)):this.state.loading?c.default.createElement("div",{className:"elementor-loading"},c.default.createElement("div",{className:"elementor-loader-wrapper"},c.default.createElement("div",{className:"elementor-loader"},c.default.createElement("div",{className:"elementor-loader-boxes"},c.default.createElement("div",{className:"elementor-loader-box"}),c.default.createElement("div",{className:"elementor-loader-box"}),c.default.createElement("div",{className:"elementor-loader-box"}),c.default.createElement("div",{className:"elementor-loader-box"}))),c.default.createElement("div",{className:"elementor-loading-title"},o("Loading","elementor")))):c.default.createElement(g.Provider,{value:this.state},this.props.children)}}]),TemplateTypesContext}(c.default.Component);(0,h.default)(y,"propTypes",{children:l.object.isRequired});var _=g.Consumer;r.TemplateTypesConsumer=_;var x=y;r.default=x},72893:(t,r,a)=>{"use strict";var o=a(18194).__,l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=void 0;var u=i(a(11959)),c=i(a(39041)),d=i(a(20485)),p=i(a(84181)),m=i(a(85473)),v=function(){function SiteEditor(){(0,u.default)(this,SiteEditor),this.saveTemplateTypesToCache(),d.default.addRoute({path:"/site-editor/promotion",component:p.default}),d.default.addRoute({path:"/site-editor/*",component:m.default})}return(0,c.default)(SiteEditor,[{key:"saveTemplateTypesToCache",value:function saveTemplateTypesToCache(){var t=this.getTypes();elementorCommon.ajax.addRequestCache({unique_id:"app_site_editor_template_types"},t)}},{key:"getTypes",value:function getTypes(){return[{type:"header",icon:"eicon-header",title:o("Header","elementor"),urls:{thumbnail:elementorAppConfig.assets_url+"/images/app/site-editor/header.svg"},tooltip_data:{title:o("What is a Header Template?","elementor"),content:o("The header template allows you to easily design and edit custom WordPress headers so you are no longer constrained by your theme’s header design limitations.","elementor"),tip:o("You can create multiple headers, and assign each to different areas of your site.","elementor"),docs:"https://go.elementor.com/app-theme-builder-header",video_url:"https://www.youtube.com/embed/HHy5RK6W-6I"}},{type:"footer",icon:"eicon-footer",title:o("Footer","elementor"),urls:{thumbnail:elementorAppConfig.assets_url+"/images/app/site-editor/footer.svg"},tooltip_data:{title:o("What is a Footer Template?","elementor"),content:o("The footer template allows you to easily design and edit custom WordPress footers without the limits of your theme’s footer design constraints","elementor"),tip:o("You can create multiple footers, and assign each to different areas of your site.","elementor"),docs:"https://go.elementor.com/app-theme-builder-footer",video_url:"https://www.youtube.com/embed/xa8DoR4tQrY"}},{type:"single-page",icon:"eicon-single-page",title:o("Single Page","elementor"),urls:{thumbnail:elementorAppConfig.assets_url+"/images/app/site-editor/single-page.svg"},tooltip_data:{title:o("What is a Single Page Template?","elementor"),content:o("A single page template allows you to easily create the layout and style of pages, ensuring design consistency across all the pages of your site.","elementor"),tip:o("You can create multiple single page templates, and assign each to different areas of your site.","elementor"),docs:"https://go.elementor.com/app-theme-builder-page",video_url:"https://www.youtube.com/embed/_y5eZ60lVoY"}},{type:"single-post",icon:"eicon-single-post",title:o("Single Post","elementor"),urls:{thumbnail:elementorAppConfig.assets_url+"/images/app/site-editor/single-post.svg"},tooltip_data:{title:o("What is a Single Post Template?","elementor"),content:o("A single post template allows you to easily design the layout and style of posts, ensuring a design consistency throughout all your blog posts, for example.","elementor"),tip:o("You can create multiple single post templates, and assign each to a different category.","elementor"),docs:"https://go.elementor.com/app-theme-builder-post",video_url:"https://www.youtube.com/embed/8Fk-Edu7DL0"}},{type:"archive",icon:"eicon-archive",title:o("Archive","elementor"),urls:{thumbnail:elementorAppConfig.assets_url+"/images/app/site-editor/archive.svg"},tooltip_data:{title:o("What is an Archive Template?","elementor"),content:o("An archive template allows you to easily design the layout and style of archive pages - those pages that show a list of posts (e.g. a blog’s list of recent posts), which may be filtered by terms such as authors, categories, tags, search results, etc.","elementor"),tip:o("If you’d like a different style for a specific category, it’s easy to create a separate archive template whose condition is to only display when users are viewing that category’s list of posts.","elementor"),docs:"https://go.elementor.com/app-theme-builder-archive",video_url:"https://www.youtube.com/embed/wxElpEh9bfA"}},{type:"search-results",icon:"eicon-search-results",title:o("Search Results","elementor"),urls:{thumbnail:elementorAppConfig.assets_url+"/images/app/site-editor/search-results.svg"},tooltip_data:{title:o("What is a Search Results Template?","elementor"),content:o("You can easily control the layout and design of the Search Results page with the Search Results template, which is simply a special archive template just for displaying search results.","elementor"),tip:o("You can customize the message if there are no results for the search term.","elementor"),docs:"https://go.elementor.com/app-theme-builder-search-results",video_url:"https://www.youtube.com/embed/KKkIU_L5sDo"}},{type:"product",icon:"eicon-single-product",title:o("Product","elementor"),urls:{thumbnail:elementorAppConfig.assets_url+"/images/app/site-editor/product.svg"},tooltip_data:{title:o("What is a Single Product Template?","elementor"),content:o("A single product template allows you to easily design the layout and style of WooCommerce single product pages, and apply that template to various conditions that you assign.","elementor"),tip:o("You can create multiple single product templates, and assign each to different types of products, enabling a custom design for each group of similar products.","elementor"),docs:"https://go.elementor.com/app-theme-builder-product",video_url:"https://www.youtube.com/embed/PjhoB1RWkBM"}},{type:"products",icon:"eicon-products",title:o("Products Archive","elementor"),urls:{thumbnail:elementorAppConfig.assets_url+"/images/app/site-editor/products.svg"},tooltip_data:{title:o("What is a Products Archive Template?","elementor"),content:o("A products archive template allows you to easily design the layout and style of your WooCommerce shop page or other product archive pages - those pages that show a list of products, which may be filtered by terms such as categories, tags, etc.","elementor"),tip:o("You can create multiple archive product templates, and assign each to different categories of products. This gives you the freedom to customize the appearance for each type of product being shown.","elementor"),docs:"https://go.elementor.com/app-theme-builder-products-archive",video_url:"https://www.youtube.com/embed/cQLeirgkguA"}},{type:"error-404",icon:"eicon-error-404",title:o("Error 404","elementor"),urls:{thumbnail:elementorAppConfig.assets_url+"/images/app/site-editor/error-404.svg"},tooltip_data:{title:o("What is a 404 Page Template?","elementor"),content:o("A 404 page template allows you to easily design the layout and style of the page that is displayed when a visitor arrives at a page that does not exist.","elementor"),tip:o("Keep your site's visitors happy when they get lost by displaying your recent posts, a search bar, or any information that might help the user find what they were looking for.","elementor"),docs:"https://go.elementor.com/app-theme-builder-404",video_url:"https://www.youtube.com/embed/ACCNp9tBMQg"}}]}}]),SiteEditor}();r.default=v},2079:(t,r,a)=>{"use strict";var o=a(23615),l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=SitePart;var u=i(a(63804)),c=i(a(17493)),d=i(a(11243)),p=i(a(67170)),m=i(a(57641)),v=i(a(80957));function SitePart(t){return u.default.createElement(c.default,{className:"e-site-part"},u.default.createElement(d.default,null,u.default.createElement(v.default,{tag:"h1",variant:"text-sm",className:"eps-card__headline"},t.title),t.actionButton),u.default.createElement(p.default,null,u.default.createElement(m.default,{alt:t.title,src:t.thumbnail},t.children)))}a(35453),SitePart.propTypes={thumbnail:o.string.isRequired,title:o.string.isRequired,children:o.object,showIndicator:o.bool,actionButton:o.object}},73030:(t,r,a)=>{"use strict";var o=a(18194).__,l=a(23615),i=a(67394),u=a(67971);i(r,"__esModule",{value:!0}),r.default=AllPartsButton;var c=u(a(63804));a(64828);var d=u(a(94160)),p=a(50927);function AllPartsButton(t){return c.default.createElement(p.Match,{path:"/site-editor/templates"},(function(r){var a=r.match,l="eps-menu-item__link".concat(a||t.promotion?" eps-menu-item--active":"");return c.default.createElement(d.default,{text:o("All Parts","elementor"),className:l,icon:"eicon-filter",url:t.url})}))}AllPartsButton.propTypes={url:l.string,promotion:l.bool}},75278:(t,r,a)=>{"use strict";var o=a(18194).__,l=a(23615),i=a(67394),u=a(67971);i(r,"__esModule",{value:!0}),r.default=Menu;var c=u(a(63804)),d=u(a(8739)),p=a(24662),m=u(a(72745)),v=u(a(40633));function Menu(t){var r=c.default.useContext(p.Context).templateTypes;return c.default.createElement(d.default,{menuItems:r,actionButton:function actionButton(r){var a="eps-menu-item__action-button";if(t.promotion)return c.default.createElement(m.default,{text:o("Go Pro","elementor"),hideText:!0,icon:"eicon-lock",className:a});return c.default.createElement("span",{className:a},c.default.createElement(v.default,{hideText:!0,size:"sm",onClick:function onClick(){return function goToCreate(){location.href=r.urls.create}()}}))},promotion:t.promotion},t.allPartsButton,c.default.createElement("div",{className:"eps-menu__title"},o("Site Parts","elementor")))}a(59964),Menu.propTypes={allPartsButton:l.element.isRequired,promotion:l.bool}},41874:(t,r,a)=>{"use strict";var o=a(18194).__,l=a(23615),i=a(67394),u=a(67971);i(r,"__esModule",{value:!0}),r.default=SiteParts;var c=u(a(63804)),d=u(a(37959));a(90286);var p=u(a(72745)),m=u(a(47385)),v=u(a(89854)),h=u(a(2079)),g=a(24662),y=function InfoButton(t){var r={text:o("Info","elementor"),hideText:!0,icon:"eicon-info-circle e-site-part__info-toggle"};return c.default.createElement(v.default,{toggleButtonProps:r,title:t.title},c.default.createElement(m.default,{columns:2,spacing:60},c.default.createElement("section",null,c.default.createElement("h3",null,t.type),c.default.createElement("p",null,t.content,c.default.createElement("br",null),c.default.createElement(p.default,{text:o("Learn More","elementor"),color:"link",target:"_blank",url:t.docs})),c.default.createElement("div",{className:"eps-modal__tip"},c.default.createElement("h3",null,o("Tip","elementor")),c.default.createElement("p",null,t.tip))),c.default.createElement("section",null,c.default.createElement("h3",null,o("Watch Video","elementor")),c.default.createElement("div",{className:"video-wrapper"},c.default.createElement("iframe",{id:"ytplayer",src:t.video_url,frameBorder:"0"})))))};function SiteParts(t){var r=c.default.useContext(g.Context).templateTypes;return c.default.createElement(m.default,{className:"e-site-editor__site-parts",colMinWidth:200,spacing:25},r.map((function(r){return c.default.createElement(h.default,(0,d.default)({className:"e-site-editor__site-part",actionButton:c.default.createElement(y,(0,d.default)({type:r.title},r.tooltip_data)),thumbnail:r.urls.thumbnail,key:r.type},r),c.default.createElement(t.hoverElement,r))})))}y.propTypes={content:l.string.isRequired,docs:l.string.isRequired,tip:l.string.isRequired,title:l.string.isRequired,type:l.string.isRequired,video_url:l.string.isRequired},SiteParts.propTypes={hoverElement:l.func.isRequired}},60649:(t,r,a)=>{"use strict";var o=a(67394),l=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var i=l(a(73030)),u=l(a(80259)),c=l(a(72893)),d=l(a(85473)),p=l(a(41874)),m=l(a(2079)),v=a(24662),h={AllPartsButton:i.default,Layout:u.default,Module:c.default,NotFound:d.default,SitePart:m.default,SiteParts:p.default,TemplateTypesContext:v.Context};r.default=h},85473:(t,r,a)=>{"use strict";var o=a(18194).__,l=a(67394),i=a(67971);l(r,"__esModule",{value:!0}),r.default=function NotFound(){var t=u.default.useMemo((function(){var t;return(null===(t=elementorAppConfig.menu_url.split("#"))||void 0===t?void 0:t[1])||"/site-editor"}),[]);return u.default.createElement(c.default,{title:o("Theme Builder could not be loaded","elementor"),text:o("We’re sorry, but something went wrong. Click on ‘Learn more’ and follow each of the steps to quickly solve it.","elementor"),approveButtonUrl:"https://go.elementor.com/app-theme-builder-load-issue",approveButtonColor:"link",approveButtonTarget:"_blank",approveButtonText:o("Learn More","elementor"),dismissButtonText:o("Go Back","elementor"),dismissButtonUrl:t})};var u=i(a(63804));a(99236);var c=i(a(76639))},84181:(t,r,a)=>{"use strict";var o=a(18194).__,l=a(23615),i=a(67394),u=a(67971);i(r,"__esModule",{value:!0}),r.default=function Promotion(){var t="https://go.elementor.com/go-pro-theme-builder",r=function PromotionHoverElement(r){var a="".concat(t,"?type=").concat(r.type);return c.default.createElement(m.default,{className:"e-site-editor__promotion-overlay"},c.default.createElement("a",{className:"e-site-editor__promotion-overlay__link",target:"_blank",rel:"noopener noreferrer",href:a},c.default.createElement("i",{className:"e-site-editor__promotion-overlay__icon eicon-lock"}),c.default.createElement(p.default,{size:"sm",color:"cta",variant:"contained",text:o("Go Pro","elementor")})))};return r.propTypes={className:l.string,type:l.string.isRequired},c.default.createElement(g.default,{allPartsButton:c.default.createElement(d.default,{promotion:!0}),promotion:!0},c.default.createElement("section",{className:"e-site-editor__promotion"},c.default.createElement(v.default,{container:!0,className:"page-header"},c.default.createElement(v.default,{item:!0,sm:7,justify:"end"},c.default.createElement(h.default,{variant:"h1"},o("Create Full Site","elementor")),c.default.createElement(_.default,null,o("Theme Builder is the industry leading all-in-one solution that lets you customize every part of your WordPress theme visually: Header, Footer, Single, Archive & WooCommerce","elementor"))),c.default.createElement(v.default,{item:!0,container:!0,justify:"end",alignItems:"start",sm:5},c.default.createElement(p.default,{size:"sm",color:"cta",variant:"contained",url:t,text:o("Go Pro","elementor")}))),c.default.createElement("hr",{className:"eps-separator"}),c.default.createElement(y.default,{hoverElement:r})))};var c=u(a(63804)),d=u(a(73030)),p=u(a(72745)),m=u(a(18041)),v=u(a(57390)),h=u(a(80957)),g=u(a(80259)),y=u(a(41874)),_=u(a(36357));a(48e3)},80259:(t,r,a)=>{"use strict";var o=a(18194).__,l=a(23615),i=a(67394),u=a(67971);i(r,"__esModule",{value:!0}),r.default=Layout;var c=u(a(63804)),d=u(a(94295)),p=u(a(75278)),m=u(a(24662));function Layout(t){var r={title:o("Theme Builder","elementor"),titleRedirectRoute:"/site-editor",headerButtons:t.headerButtons,sidebar:c.default.createElement(p.default,{allPartsButton:t.allPartsButton,promotion:t.promotion}),content:t.children};return c.default.createElement(m.default,null,c.default.createElement(d.default,r))}a(67067),Layout.propTypes={headerButtons:l.arrayOf(l.object),allPartsButton:l.element.isRequired,children:l.object.isRequired,promotion:l.bool},Layout.defaultProps={headerButtons:[]}},7421:(t,r,a)=>{a(99572),a(37627),t.exports=a(47208).Array.from},70157:(t,r,a)=>{a(42580),t.exports=a(47208).Array.isArray},89710:(t,r,a)=>{var o=a(47208),l=o.JSON||(o.JSON={stringify:JSON.stringify});t.exports=function stringify(t){return l.stringify.apply(l,arguments)}},66458:(t,r,a)=>{a(99954),t.exports=a(47208).Object.assign},14710:(t,r,a)=>{a(30785);var o=a(47208).Object;t.exports=function create(t,r){return o.create(t,r)}},23022:(t,r,a)=>{a(23078);var o=a(47208).Object;t.exports=function defineProperties(t,r){return o.defineProperties(t,r)}},43153:(t,r,a)=>{a(40168);var o=a(47208).Object;t.exports=function defineProperty(t,r,a){return o.defineProperty(t,r,a)}},8531:(t,r,a)=>{a(95260),t.exports=a(47208).Object.entries},32622:(t,r,a)=>{a(18576);var o=a(47208).Object;t.exports=function getOwnPropertyDescriptor(t,r){return o.getOwnPropertyDescriptor(t,r)}},27410:(t,r,a)=>{a(67685),t.exports=a(47208).Object.getOwnPropertyDescriptors},19035:(t,r,a)=>{a(54370),t.exports=a(47208).Object.getOwnPropertySymbols},58535:(t,r,a)=>{a(4840),t.exports=a(47208).Object.getPrototypeOf},97220:(t,r,a)=>{a(5453),t.exports=a(47208).Object.keys},65135:(t,r,a)=>{a(13890),t.exports=a(47208).Object.setPrototypeOf},34345:(t,r,a)=>{a(24399),t.exports=a(47208).parseInt},43094:(t,r,a)=>{a(11320),t.exports=a(47208).Reflect.construct},17641:(t,r,a)=>{a(36600),t.exports=a(47208).Reflect.get},19103:(t,r,a)=>{a(54370),a(70285),a(87573),a(97224),t.exports=a(47208).Symbol},39871:(t,r,a)=>{a(99572),a(74114),t.exports=a(7273).f("iterator")},89999:(t,r,a)=>{a(70285),a(74114),a(23337),a(10143),a(92797),t.exports=a(47208).WeakMap},26610:t=>{t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},29697:t=>{t.exports=function(){}},54677:t=>{t.exports=function(t,r,a,o){if(!(t instanceof r)||void 0!==o&&o in t)throw TypeError(a+": incorrect invocation!");return t}},30498:(t,r,a)=>{var o=a(39632);t.exports=function(t){if(!o(t))throw TypeError(t+" is not an object!");return t}},69191:(t,r,a)=>{var o=a(1504),l=a(37154),i=a(46723);t.exports=function(t){return function(r,a,u){var c,d=o(r),p=l(d.length),m=i(u,p);if(t&&a!=a){for(;p>m;)if((c=d[m++])!=c)return!0}else for(;p>m;m++)if((t||m in d)&&d[m]===a)return t||m||0;return!t&&-1}}},97647:(t,r,a)=>{var o=a(61725),l=a(13115),i=a(60061),u=a(37154),c=a(41904);t.exports=function(t,r){var a=1==t,d=2==t,p=3==t,m=4==t,v=6==t,h=5==t||v,g=r||c;return function(r,c,y){for(var _,x,E=i(r),b=l(E),C=o(c,y,3),w=u(b.length),T=0,N=a?g(r,w):d?g(r,0):void 0;w>T;T++)if((h||T in b)&&(x=C(_=b[T],T,E),t))if(a)N[T]=x;else if(x)switch(t){case 3:return!0;case 5:return _;case 6:return T;case 2:N.push(_)}else if(m)return!1;return v?-1:p||m?m:N}}},88320:(t,r,a)=>{var o=a(39632),l=a(7359),i=a(24300)("species");t.exports=function(t){var r;return l(t)&&("function"!=typeof(r=t.constructor)||r!==Array&&!l(r.prototype)||(r=void 0),o(r)&&null===(r=r[i])&&(r=void 0)),void 0===r?Array:r}},41904:(t,r,a)=>{var o=a(88320);t.exports=function(t,r){return new(o(t))(r)}},45515:(t,r,a)=>{"use strict";var o=a(26610),l=a(39632),i=a(19897),u=[].slice,c={},construct=function(t,r,a){if(!(r in c)){for(var o=[],l=0;l<r;l++)o[l]="a["+l+"]";c[r]=Function("F,a","return new F("+o.join(",")+")")}return c[r](t,a)};t.exports=Function.bind||function bind(t){var r=o(this),a=u.call(arguments,1),bound=function(){var o=a.concat(u.call(arguments));return this instanceof bound?construct(r,o.length,o):i(r,o,t)};return l(r.prototype)&&(bound.prototype=r.prototype),bound}},8312:(t,r,a)=>{var o=a(41352),l=a(24300)("toStringTag"),i="Arguments"==o(function(){return arguments}());t.exports=function(t){var r,a,u;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(a=function(t,r){try{return t[r]}catch(t){}}(r=Object(t),l))?a:i?o(r):"Object"==(u=o(r))&&"function"==typeof r.callee?"Arguments":u}},41352:t=>{var r={}.toString;t.exports=function(t){return r.call(t).slice(8,-1)}},92600:(t,r,a)=>{"use strict";var o=a(13199),l=a(6758).getWeak,i=a(30498),u=a(39632),c=a(54677),d=a(25985),p=a(97647),m=a(20657),v=a(41081),h=p(5),g=p(6),y=0,uncaughtFrozenStore=function(t){return t._l||(t._l=new UncaughtFrozenStore)},UncaughtFrozenStore=function(){this.a=[]},findUncaughtFrozen=function(t,r){return h(t.a,(function(t){return t[0]===r}))};UncaughtFrozenStore.prototype={get:function(t){var r=findUncaughtFrozen(this,t);if(r)return r[1]},has:function(t){return!!findUncaughtFrozen(this,t)},set:function(t,r){var a=findUncaughtFrozen(this,t);a?a[1]=r:this.a.push([t,r])},delete:function(t){var r=g(this.a,(function(r){return r[0]===t}));return~r&&this.a.splice(r,1),!!~r}},t.exports={getConstructor:function(t,r,a,i){var p=t((function(t,o){c(t,p,r,"_i"),t._t=r,t._i=y++,t._l=void 0,null!=o&&d(o,a,t[i],t)}));return o(p.prototype,{delete:function(t){if(!u(t))return!1;var a=l(t);return!0===a?uncaughtFrozenStore(v(this,r)).delete(t):a&&m(a,this._i)&&delete a[this._i]},has:function has(t){if(!u(t))return!1;var a=l(t);return!0===a?uncaughtFrozenStore(v(this,r)).has(t):a&&m(a,this._i)}}),p},def:function(t,r,a){var o=l(i(r),!0);return!0===o?uncaughtFrozenStore(t).set(r,a):o[t._i]=a,t},ufstore:uncaughtFrozenStore}},70770:(t,r,a)=>{"use strict";var o=a(43280),l=a(98310),i=a(6758),u=a(90472),c=a(62292),d=a(13199),p=a(25985),m=a(54677),v=a(39632),h=a(2413),g=a(60510).f,y=a(97647)(0),_=a(75179);t.exports=function(t,r,a,x,E,b){var C=o[t],w=C,T=E?"set":"add",N=w&&w.prototype,P={};return _&&"function"==typeof w&&(b||N.forEach&&!u((function(){(new w).entries().next()})))?(w=r((function(r,a){m(r,w,t,"_c"),r._c=new C,null!=a&&p(a,E,r[T],r)})),y("add,clear,delete,forEach,get,has,set,keys,values,entries,toJSON".split(","),(function(t){var r="add"==t||"set"==t;!(t in N)||b&&"clear"==t||c(w.prototype,t,(function(a,o){if(m(this,w,t),!r&&b&&!v(a))return"get"==t&&void 0;var l=this._c[t](0===a?0:a,o);return r?this:l}))})),b||g(w.prototype,"size",{get:function(){return this._c.size}})):(w=x.getConstructor(r,t,E,T),d(w.prototype,a),i.NEED=!0),h(w,t),P[t]=w,l(l.G+l.W+l.F,P),b||x.setStrong(w,t,E),w}},47208:t=>{var r=t.exports={version:"2.6.12"};"number"==typeof __e&&(__e=r)},87352:(t,r,a)=>{"use strict";var o=a(60510),l=a(48439);t.exports=function(t,r,a){r in t?o.f(t,r,l(0,a)):t[r]=a}},61725:(t,r,a)=>{var o=a(26610);t.exports=function(t,r,a){if(o(t),void 0===r)return t;switch(a){case 1:return function(a){return t.call(r,a)};case 2:return function(a,o){return t.call(r,a,o)};case 3:return function(a,o,l){return t.call(r,a,o,l)}}return function(){return t.apply(r,arguments)}}},18239:t=>{t.exports=function(t){if(null==t)throw TypeError("Can't call method on  "+t);return t}},75179:(t,r,a)=>{t.exports=!a(90472)((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},48765:(t,r,a)=>{var o=a(39632),l=a(43280).document,i=o(l)&&o(l.createElement);t.exports=function(t){return i?l.createElement(t):{}}},31986:t=>{t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},42266:(t,r,a)=>{var o=a(86425),l=a(97739),i=a(67410);t.exports=function(t){var r=o(t),a=l.f;if(a)for(var u,c=a(t),d=i.f,p=0;c.length>p;)d.call(t,u=c[p++])&&r.push(u);return r}},98310:(t,r,a)=>{var o=a(43280),l=a(47208),i=a(61725),u=a(62292),c=a(20657),$export=function(t,r,a){var d,p,m,v=t&$export.F,h=t&$export.G,g=t&$export.S,y=t&$export.P,_=t&$export.B,x=t&$export.W,E=h?l:l[r]||(l[r]={}),b=E.prototype,C=h?o:g?o[r]:(o[r]||{}).prototype;for(d in h&&(a=r),a)(p=!v&&C&&void 0!==C[d])&&c(E,d)||(m=p?C[d]:a[d],E[d]=h&&"function"!=typeof C[d]?a[d]:_&&p?i(m,o):x&&C[d]==m?function(t){var F=function(r,a,o){if(this instanceof t){switch(arguments.length){case 0:return new t;case 1:return new t(r);case 2:return new t(r,a)}return new t(r,a,o)}return t.apply(this,arguments)};return F.prototype=t.prototype,F}(m):y&&"function"==typeof m?i(Function.call,m):m,y&&((E.virtual||(E.virtual={}))[d]=m,t&$export.R&&b&&!b[d]&&u(b,d,m)))};$export.F=1,$export.G=2,$export.S=4,$export.P=8,$export.B=16,$export.W=32,$export.U=64,$export.R=128,t.exports=$export},90472:t=>{t.exports=function(t){try{return!!t()}catch(t){return!0}}},25985:(t,r,a)=>{var o=a(61725),l=a(93086),i=a(11827),u=a(30498),c=a(37154),d=a(26116),p={},m={},v=t.exports=function(t,r,a,v,h){var g,y,_,x,E=h?function(){return t}:d(t),b=o(a,v,r?2:1),C=0;if("function"!=typeof E)throw TypeError(t+" is not iterable!");if(i(E)){for(g=c(t.length);g>C;C++)if((x=r?b(u(y=t[C])[0],y[1]):b(t[C]))===p||x===m)return x}else for(_=E.call(t);!(y=_.next()).done;)if((x=l(_,b,y.value,r))===p||x===m)return x};v.BREAK=p,v.RETURN=m},43280:t=>{var r=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=r)},20657:t=>{var r={}.hasOwnProperty;t.exports=function(t,a){return r.call(t,a)}},62292:(t,r,a)=>{var o=a(60510),l=a(48439);t.exports=a(75179)?function(t,r,a){return o.f(t,r,l(1,a))}:function(t,r,a){return t[r]=a,t}},92477:(t,r,a)=>{var o=a(43280).document;t.exports=o&&o.documentElement},64457:(t,r,a)=>{t.exports=!a(75179)&&!a(90472)((function(){return 7!=Object.defineProperty(a(48765)("div"),"a",{get:function(){return 7}}).a}))},19897:t=>{t.exports=function(t,r,a){var o=void 0===a;switch(r.length){case 0:return o?t():t.call(a);case 1:return o?t(r[0]):t.call(a,r[0]);case 2:return o?t(r[0],r[1]):t.call(a,r[0],r[1]);case 3:return o?t(r[0],r[1],r[2]):t.call(a,r[0],r[1],r[2]);case 4:return o?t(r[0],r[1],r[2],r[3]):t.call(a,r[0],r[1],r[2],r[3])}return t.apply(a,r)}},13115:(t,r,a)=>{var o=a(41352);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==o(t)?t.split(""):Object(t)}},11827:(t,r,a)=>{var o=a(79105),l=a(24300)("iterator"),i=Array.prototype;t.exports=function(t){return void 0!==t&&(o.Array===t||i[l]===t)}},7359:(t,r,a)=>{var o=a(41352);t.exports=Array.isArray||function isArray(t){return"Array"==o(t)}},39632:t=>{t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},93086:(t,r,a)=>{var o=a(30498);t.exports=function(t,r,a,l){try{return l?r(o(a)[0],a[1]):r(a)}catch(r){var i=t.return;throw void 0!==i&&o(i.call(t)),r}}},19802:(t,r,a)=>{"use strict";var o=a(82488),l=a(48439),i=a(2413),u={};a(62292)(u,a(24300)("iterator"),(function(){return this})),t.exports=function(t,r,a){t.prototype=o(u,{next:l(1,a)}),i(t,r+" Iterator")}},6125:(t,r,a)=>{"use strict";var o=a(36794),l=a(98310),i=a(19312),u=a(62292),c=a(79105),d=a(19802),p=a(2413),m=a(999),v=a(24300)("iterator"),h=!([].keys&&"next"in[].keys()),g="keys",y="values",returnThis=function(){return this};t.exports=function(t,r,a,_,x,E,b){d(a,r,_);var C,w,T,getMethod=function(t){if(!h&&t in M)return M[t];switch(t){case g:return function keys(){return new a(this,t)};case y:return function values(){return new a(this,t)}}return function entries(){return new a(this,t)}},N=r+" Iterator",P=x==y,S=!1,M=t.prototype,R=M[v]||M["@@iterator"]||x&&M[x],O=R||getMethod(x),I=x?P?getMethod("entries"):O:void 0,j="Array"==r&&M.entries||R;if(j&&(T=m(j.call(new t)))!==Object.prototype&&T.next&&(p(T,N,!0),o||"function"==typeof T[v]||u(T,v,returnThis)),P&&R&&R.name!==y&&(S=!0,O=function values(){return R.call(this)}),o&&!b||!h&&!S&&M[v]||u(M,v,O),c[r]=O,c[N]=returnThis,x)if(C={values:P?O:getMethod(y),keys:E?O:getMethod(g),entries:I},b)for(w in C)w in M||i(M,w,C[w]);else l(l.P+l.F*(h||S),r,C);return C}},26797:(t,r,a)=>{var o=a(24300)("iterator"),l=!1;try{var i=[7][o]();i.return=function(){l=!0},Array.from(i,(function(){throw 2}))}catch(t){}t.exports=function(t,r){if(!r&&!l)return!1;var a=!1;try{var i=[7],u=i[o]();u.next=function(){return{done:a=!0}},i[o]=function(){return u},t(i)}catch(t){}return a}},9329:t=>{t.exports=function(t,r){return{value:r,done:!!t}}},79105:t=>{t.exports={}},36794:t=>{t.exports=!0},6758:(t,r,a)=>{var o=a(54251)("meta"),l=a(39632),i=a(20657),u=a(60510).f,c=0,d=Object.isExtensible||function(){return!0},p=!a(90472)((function(){return d(Object.preventExtensions({}))})),setMeta=function(t){u(t,o,{value:{i:"O"+ ++c,w:{}}})},m=t.exports={KEY:o,NEED:!1,fastKey:function(t,r){if(!l(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,o)){if(!d(t))return"F";if(!r)return"E";setMeta(t)}return t[o].i},getWeak:function(t,r){if(!i(t,o)){if(!d(t))return!0;if(!r)return!1;setMeta(t)}return t[o].w},onFreeze:function(t){return p&&m.NEED&&d(t)&&!i(t,o)&&setMeta(t),t}}},77995:(t,r,a)=>{"use strict";var o=a(75179),l=a(86425),i=a(97739),u=a(67410),c=a(60061),d=a(13115),p=Object.assign;t.exports=!p||a(90472)((function(){var t={},r={},a=Symbol(),o="abcdefghijklmnopqrst";return t[a]=7,o.split("").forEach((function(t){r[t]=t})),7!=p({},t)[a]||Object.keys(p({},r)).join("")!=o}))?function assign(t,r){for(var a=c(t),p=arguments.length,m=1,v=i.f,h=u.f;p>m;)for(var g,y=d(arguments[m++]),_=v?l(y).concat(v(y)):l(y),x=_.length,E=0;x>E;)g=_[E++],o&&!h.call(y,g)||(a[g]=y[g]);return a}:p},82488:(t,r,a)=>{var o=a(30498),l=a(36607),i=a(31986),u=a(18478)("IE_PROTO"),Empty=function(){},createDict=function(){var t,r=a(48765)("iframe"),o=i.length;for(r.style.display="none",a(92477).appendChild(r),r.src="javascript:",(t=r.contentWindow.document).open(),t.write("<script>document.F=Object<\/script>"),t.close(),createDict=t.F;o--;)delete createDict.prototype[i[o]];return createDict()};t.exports=Object.create||function create(t,r){var a;return null!==t?(Empty.prototype=o(t),a=new Empty,Empty.prototype=null,a[u]=t):a=createDict(),void 0===r?a:l(a,r)}},60510:(t,r,a)=>{var o=a(30498),l=a(64457),i=a(12737),u=Object.defineProperty;r.f=a(75179)?Object.defineProperty:function defineProperty(t,r,a){if(o(t),r=i(r,!0),o(a),l)try{return u(t,r,a)}catch(t){}if("get"in a||"set"in a)throw TypeError("Accessors not supported!");return"value"in a&&(t[r]=a.value),t}},36607:(t,r,a)=>{var o=a(60510),l=a(30498),i=a(86425);t.exports=a(75179)?Object.defineProperties:function defineProperties(t,r){l(t);for(var a,u=i(r),c=u.length,d=0;c>d;)o.f(t,a=u[d++],r[a]);return t}},83264:(t,r,a)=>{var o=a(67410),l=a(48439),i=a(1504),u=a(12737),c=a(20657),d=a(64457),p=Object.getOwnPropertyDescriptor;r.f=a(75179)?p:function getOwnPropertyDescriptor(t,r){if(t=i(t),r=u(r,!0),d)try{return p(t,r)}catch(t){}if(c(t,r))return l(!o.f.call(t,r),t[r])}},26084:(t,r,a)=>{var o=a(1504),l=a(8772).f,i={}.toString,u="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];t.exports.f=function getOwnPropertyNames(t){return u&&"[object Window]"==i.call(t)?function(t){try{return l(t)}catch(t){return u.slice()}}(t):l(o(t))}},8772:(t,r,a)=>{var o=a(65326),l=a(31986).concat("length","prototype");r.f=Object.getOwnPropertyNames||function getOwnPropertyNames(t){return o(t,l)}},97739:(t,r)=>{r.f=Object.getOwnPropertySymbols},999:(t,r,a)=>{var o=a(20657),l=a(60061),i=a(18478)("IE_PROTO"),u=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=l(t),o(t,i)?t[i]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},65326:(t,r,a)=>{var o=a(20657),l=a(1504),i=a(69191)(!1),u=a(18478)("IE_PROTO");t.exports=function(t,r){var a,c=l(t),d=0,p=[];for(a in c)a!=u&&o(c,a)&&p.push(a);for(;r.length>d;)o(c,a=r[d++])&&(~i(p,a)||p.push(a));return p}},86425:(t,r,a)=>{var o=a(65326),l=a(31986);t.exports=Object.keys||function keys(t){return o(t,l)}},67410:(t,r)=>{r.f={}.propertyIsEnumerable},57972:(t,r,a)=>{var o=a(98310),l=a(47208),i=a(90472);t.exports=function(t,r){var a=(l.Object||{})[t]||Object[t],u={};u[t]=r(a),o(o.S+o.F*i((function(){a(1)})),"Object",u)}},9480:(t,r,a)=>{var o=a(75179),l=a(86425),i=a(1504),u=a(67410).f;t.exports=function(t){return function(r){for(var a,c=i(r),d=l(c),p=d.length,m=0,v=[];p>m;)a=d[m++],o&&!u.call(c,a)||v.push(t?[a,c[a]]:c[a]);return v}}},64344:(t,r,a)=>{var o=a(8772),l=a(97739),i=a(30498),u=a(43280).Reflect;t.exports=u&&u.ownKeys||function ownKeys(t){var r=o.f(i(t)),a=l.f;return a?r.concat(a(t)):r}},60162:(t,r,a)=>{var o=a(43280).parseInt,l=a(71963).trim,i=a(18458),u=/^[-+]?0[xX]/;t.exports=8!==o(i+"08")||22!==o(i+"0x16")?function parseInt(t,r){var a=l(String(t),3);return o(a,r>>>0||(u.test(a)?16:10))}:o},48439:t=>{t.exports=function(t,r){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:r}}},13199:(t,r,a)=>{var o=a(62292);t.exports=function(t,r,a){for(var l in r)a&&t[l]?t[l]=r[l]:o(t,l,r[l]);return t}},19312:(t,r,a)=>{t.exports=a(62292)},14689:(t,r,a)=>{"use strict";var o=a(98310),l=a(26610),i=a(61725),u=a(25985);t.exports=function(t){o(o.S,t,{from:function from(t){var r,a,o,c,d=arguments[1];return l(this),(r=void 0!==d)&&l(d),null==t?new this:(a=[],r?(o=0,c=i(d,arguments[2],2),u(t,!1,(function(t){a.push(c(t,o++))}))):u(t,!1,a.push,a),new this(a))}})}},7883:(t,r,a)=>{"use strict";var o=a(98310);t.exports=function(t){o(o.S,t,{of:function of(){for(var t=arguments.length,r=new Array(t);t--;)r[t]=arguments[t];return new this(r)}})}},25574:(t,r,a)=>{var o=a(39632),l=a(30498),check=function(t,r){if(l(t),!o(r)&&null!==r)throw TypeError(r+": can't set as prototype!")};t.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(t,r,o){try{(o=a(61725)(Function.call,a(83264).f(Object.prototype,"__proto__").set,2))(t,[]),r=!(t instanceof Array)}catch(t){r=!0}return function setPrototypeOf(t,a){return check(t,a),r?t.__proto__=a:o(t,a),t}}({},!1):void 0),check}},2413:(t,r,a)=>{var o=a(60510).f,l=a(20657),i=a(24300)("toStringTag");t.exports=function(t,r,a){t&&!l(t=a?t:t.prototype,i)&&o(t,i,{configurable:!0,value:r})}},18478:(t,r,a)=>{var o=a(29990)("keys"),l=a(54251);t.exports=function(t){return o[t]||(o[t]=l(t))}},29990:(t,r,a)=>{var o=a(47208),l=a(43280),i="__core-js_shared__",u=l[i]||(l[i]={});(t.exports=function(t,r){return u[t]||(u[t]=void 0!==r?r:{})})("versions",[]).push({version:o.version,mode:a(36794)?"pure":"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})},78502:(t,r,a)=>{var o=a(58290),l=a(18239);t.exports=function(t){return function(r,a){var i,u,c=String(l(r)),d=o(a),p=c.length;return d<0||d>=p?t?"":void 0:(i=c.charCodeAt(d))<55296||i>56319||d+1===p||(u=c.charCodeAt(d+1))<56320||u>57343?t?c.charAt(d):i:t?c.slice(d,d+2):u-56320+(i-55296<<10)+65536}}},71963:(t,r,a)=>{var o=a(98310),l=a(18239),i=a(90472),u=a(18458),c="["+u+"]",d=RegExp("^"+c+c+"*"),p=RegExp(c+c+"*$"),exporter=function(t,r,a){var l={},c=i((function(){return!!u[t]()||"​…"!="​…"[t]()})),d=l[t]=c?r(m):u[t];a&&(l[a]=d),o(o.P+o.F*c,"String",l)},m=exporter.trim=function(t,r){return t=String(l(t)),1&r&&(t=t.replace(d,"")),2&r&&(t=t.replace(p,"")),t};t.exports=exporter},18458:t=>{t.exports="\t\n\v\f\r   ᠎              \u2028\u2029\ufeff"},46723:(t,r,a)=>{var o=a(58290),l=Math.max,i=Math.min;t.exports=function(t,r){return(t=o(t))<0?l(t+r,0):i(t,r)}},58290:t=>{var r=Math.ceil,a=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?a:r)(t)}},1504:(t,r,a)=>{var o=a(13115),l=a(18239);t.exports=function(t){return o(l(t))}},37154:(t,r,a)=>{var o=a(58290),l=Math.min;t.exports=function(t){return t>0?l(o(t),9007199254740991):0}},60061:(t,r,a)=>{var o=a(18239);t.exports=function(t){return Object(o(t))}},12737:(t,r,a)=>{var o=a(39632);t.exports=function(t,r){if(!o(t))return t;var a,l;if(r&&"function"==typeof(a=t.toString)&&!o(l=a.call(t)))return l;if("function"==typeof(a=t.valueOf)&&!o(l=a.call(t)))return l;if(!r&&"function"==typeof(a=t.toString)&&!o(l=a.call(t)))return l;throw TypeError("Can't convert object to primitive value")}},54251:t=>{var r=0,a=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++r+a).toString(36))}},41081:(t,r,a)=>{var o=a(39632);t.exports=function(t,r){if(!o(t)||t._t!==r)throw TypeError("Incompatible receiver, "+r+" required!");return t}},31164:(t,r,a)=>{var o=a(43280),l=a(47208),i=a(36794),u=a(7273),c=a(60510).f;t.exports=function(t){var r=l.Symbol||(l.Symbol=i?{}:o.Symbol||{});"_"==t.charAt(0)||t in r||c(r,t,{value:u.f(t)})}},7273:(t,r,a)=>{r.f=a(24300)},24300:(t,r,a)=>{var o=a(29990)("wks"),l=a(54251),i=a(43280).Symbol,u="function"==typeof i;(t.exports=function(t){return o[t]||(o[t]=u&&i[t]||(u?i:l)("Symbol."+t))}).store=o},26116:(t,r,a)=>{var o=a(8312),l=a(24300)("iterator"),i=a(79105);t.exports=a(47208).getIteratorMethod=function(t){if(null!=t)return t[l]||t["@@iterator"]||i[o(t)]}},37627:(t,r,a)=>{"use strict";var o=a(61725),l=a(98310),i=a(60061),u=a(93086),c=a(11827),d=a(37154),p=a(87352),m=a(26116);l(l.S+l.F*!a(26797)((function(t){Array.from(t)})),"Array",{from:function from(t){var r,a,l,v,h=i(t),g="function"==typeof this?this:Array,y=arguments.length,_=y>1?arguments[1]:void 0,x=void 0!==_,E=0,b=m(h);if(x&&(_=o(_,y>2?arguments[2]:void 0,2)),null==b||g==Array&&c(b))for(a=new g(r=d(h.length));r>E;E++)p(a,E,x?_(h[E],E):h[E]);else for(v=b.call(h),a=new g;!(l=v.next()).done;E++)p(a,E,x?u(v,_,[l.value,E],!0):l.value);return a.length=E,a}})},42580:(t,r,a)=>{var o=a(98310);o(o.S,"Array",{isArray:a(7359)})},84411:(t,r,a)=>{"use strict";var o=a(29697),l=a(9329),i=a(79105),u=a(1504);t.exports=a(6125)(Array,"Array",(function(t,r){this._t=u(t),this._i=0,this._k=r}),(function(){var t=this._t,r=this._k,a=this._i++;return!t||a>=t.length?(this._t=void 0,l(1)):l(0,"keys"==r?a:"values"==r?t[a]:[a,t[a]])}),"values"),i.Arguments=i.Array,o("keys"),o("values"),o("entries")},99954:(t,r,a)=>{var o=a(98310);o(o.S+o.F,"Object",{assign:a(77995)})},30785:(t,r,a)=>{var o=a(98310);o(o.S,"Object",{create:a(82488)})},23078:(t,r,a)=>{var o=a(98310);o(o.S+o.F*!a(75179),"Object",{defineProperties:a(36607)})},40168:(t,r,a)=>{var o=a(98310);o(o.S+o.F*!a(75179),"Object",{defineProperty:a(60510).f})},18576:(t,r,a)=>{var o=a(1504),l=a(83264).f;a(57972)("getOwnPropertyDescriptor",(function(){return function getOwnPropertyDescriptor(t,r){return l(o(t),r)}}))},4840:(t,r,a)=>{var o=a(60061),l=a(999);a(57972)("getPrototypeOf",(function(){return function getPrototypeOf(t){return l(o(t))}}))},5453:(t,r,a)=>{var o=a(60061),l=a(86425);a(57972)("keys",(function(){return function keys(t){return l(o(t))}}))},13890:(t,r,a)=>{var o=a(98310);o(o.S,"Object",{setPrototypeOf:a(25574).set})},70285:()=>{},24399:(t,r,a)=>{var o=a(98310),l=a(60162);o(o.G+o.F*(parseInt!=l),{parseInt:l})},11320:(t,r,a)=>{var o=a(98310),l=a(82488),i=a(26610),u=a(30498),c=a(39632),d=a(90472),p=a(45515),m=(a(43280).Reflect||{}).construct,v=d((function(){function F(){}return!(m((function(){}),[],F)instanceof F)})),h=!d((function(){m((function(){}))}));o(o.S+o.F*(v||h),"Reflect",{construct:function construct(t,r){i(t),u(r);var a=arguments.length<3?t:i(arguments[2]);if(h&&!v)return m(t,r,a);if(t==a){switch(r.length){case 0:return new t;case 1:return new t(r[0]);case 2:return new t(r[0],r[1]);case 3:return new t(r[0],r[1],r[2]);case 4:return new t(r[0],r[1],r[2],r[3])}var o=[null];return o.push.apply(o,r),new(p.apply(t,o))}var d=a.prototype,g=l(c(d)?d:Object.prototype),y=Function.apply.call(t,g,r);return c(y)?y:g}})},36600:(t,r,a)=>{var o=a(83264),l=a(999),i=a(20657),u=a(98310),c=a(39632),d=a(30498);u(u.S,"Reflect",{get:function get(t,r){var a,u,p=arguments.length<3?t:arguments[2];return d(t)===p?t[r]:(a=o.f(t,r))?i(a,"value")?a.value:void 0!==a.get?a.get.call(p):void 0:c(u=l(t))?get(u,r,p):void 0}})},99572:(t,r,a)=>{"use strict";var o=a(78502)(!0);a(6125)(String,"String",(function(t){this._t=String(t),this._i=0}),(function(){var t,r=this._t,a=this._i;return a>=r.length?{value:void 0,done:!0}:(t=o(r,a),this._i+=t.length,{value:t,done:!1})}))},54370:(t,r,a)=>{"use strict";var o=a(43280),l=a(20657),i=a(75179),u=a(98310),c=a(19312),d=a(6758).KEY,p=a(90472),m=a(29990),v=a(2413),h=a(54251),g=a(24300),y=a(7273),_=a(31164),x=a(42266),E=a(7359),b=a(30498),C=a(39632),w=a(60061),T=a(1504),N=a(12737),P=a(48439),S=a(82488),M=a(26084),R=a(83264),O=a(97739),I=a(60510),j=a(86425),D=R.f,L=I.f,A=M.f,B=o.Symbol,W=o.JSON,q=W&&W.stringify,U=g("_hidden"),H=g("toPrimitive"),z={}.propertyIsEnumerable,K=m("symbol-registry"),V=m("symbols"),G=m("op-symbols"),Y=Object.prototype,$="function"==typeof B&&!!O.f,Q=o.QObject,J=!Q||!Q.prototype||!Q.prototype.findChild,Z=i&&p((function(){return 7!=S(L({},"a",{get:function(){return L(this,"a",{value:7}).a}})).a}))?function(t,r,a){var o=D(Y,r);o&&delete Y[r],L(t,r,a),o&&t!==Y&&L(Y,r,o)}:L,wrap=function(t){var r=V[t]=S(B.prototype);return r._k=t,r},X=$&&"symbol"==typeof B.iterator?function(t){return"symbol"==typeof t}:function(t){return t instanceof B},ee=function defineProperty(t,r,a){return t===Y&&ee(G,r,a),b(t),r=N(r,!0),b(a),l(V,r)?(a.enumerable?(l(t,U)&&t[U][r]&&(t[U][r]=!1),a=S(a,{enumerable:P(0,!1)})):(l(t,U)||L(t,U,P(1,{})),t[U][r]=!0),Z(t,r,a)):L(t,r,a)},te=function defineProperties(t,r){b(t);for(var a,o=x(r=T(r)),l=0,i=o.length;i>l;)ee(t,a=o[l++],r[a]);return t},re=function propertyIsEnumerable(t){var r=z.call(this,t=N(t,!0));return!(this===Y&&l(V,t)&&!l(G,t))&&(!(r||!l(this,t)||!l(V,t)||l(this,U)&&this[U][t])||r)},ne=function getOwnPropertyDescriptor(t,r){if(t=T(t),r=N(r,!0),t!==Y||!l(V,r)||l(G,r)){var a=D(t,r);return!a||!l(V,r)||l(t,U)&&t[U][r]||(a.enumerable=!0),a}},ae=function getOwnPropertyNames(t){for(var r,a=A(T(t)),o=[],i=0;a.length>i;)l(V,r=a[i++])||r==U||r==d||o.push(r);return o},oe=function getOwnPropertySymbols(t){for(var r,a=t===Y,o=A(a?G:T(t)),i=[],u=0;o.length>u;)!l(V,r=o[u++])||a&&!l(Y,r)||i.push(V[r]);return i};$||(c((B=function Symbol(){if(this instanceof B)throw TypeError("Symbol is not a constructor!");var t=h(arguments.length>0?arguments[0]:void 0),$set=function(r){this===Y&&$set.call(G,r),l(this,U)&&l(this[U],t)&&(this[U][t]=!1),Z(this,t,P(1,r))};return i&&J&&Z(Y,t,{configurable:!0,set:$set}),wrap(t)}).prototype,"toString",(function toString(){return this._k})),R.f=ne,I.f=ee,a(8772).f=M.f=ae,a(67410).f=re,O.f=oe,i&&!a(36794)&&c(Y,"propertyIsEnumerable",re,!0),y.f=function(t){return wrap(g(t))}),u(u.G+u.W+u.F*!$,{Symbol:B});for(var le="hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),ie=0;le.length>ie;)g(le[ie++]);for(var se=j(g.store),ue=0;se.length>ue;)_(se[ue++]);u(u.S+u.F*!$,"Symbol",{for:function(t){return l(K,t+="")?K[t]:K[t]=B(t)},keyFor:function keyFor(t){if(!X(t))throw TypeError(t+" is not a symbol!");for(var r in K)if(K[r]===t)return r},useSetter:function(){J=!0},useSimple:function(){J=!1}}),u(u.S+u.F*!$,"Object",{create:function create(t,r){return void 0===r?S(t):te(S(t),r)},defineProperty:ee,defineProperties:te,getOwnPropertyDescriptor:ne,getOwnPropertyNames:ae,getOwnPropertySymbols:oe});var ce=p((function(){O.f(1)}));u(u.S+u.F*ce,"Object",{getOwnPropertySymbols:function getOwnPropertySymbols(t){return O.f(w(t))}}),W&&u(u.S+u.F*(!$||p((function(){var t=B();return"[null]"!=q([t])||"{}"!=q({a:t})||"{}"!=q(Object(t))}))),"JSON",{stringify:function stringify(t){for(var r,a,o=[t],l=1;arguments.length>l;)o.push(arguments[l++]);if(a=r=o[1],(C(r)||void 0!==t)&&!X(t))return E(r)||(r=function(t,r){if("function"==typeof a&&(r=a.call(this,t,r)),!X(r))return r}),o[1]=r,q.apply(W,o)}}),B.prototype[H]||a(62292)(B.prototype,H,B.prototype.valueOf),v(B,"Symbol"),v(Math,"Math",!0),v(o.JSON,"JSON",!0)},23337:(t,r,a)=>{"use strict";var o,l=a(43280),i=a(97647)(0),u=a(19312),c=a(6758),d=a(77995),p=a(92600),m=a(39632),v=a(41081),h=a(41081),g=!l.ActiveXObject&&"ActiveXObject"in l,y="WeakMap",_=c.getWeak,x=Object.isExtensible,E=p.ufstore,wrapper=function(t){return function WeakMap(){return t(this,arguments.length>0?arguments[0]:void 0)}},b={get:function get(t){if(m(t)){var r=_(t);return!0===r?E(v(this,y)).get(t):r?r[this._i]:void 0}},set:function set(t,r){return p.def(v(this,y),t,r)}},C=t.exports=a(70770)(y,wrapper,b,p,!0,!0);h&&g&&(d((o=p.getConstructor(wrapper,y)).prototype,b),c.NEED=!0,i(["delete","has","get","set"],(function(t){var r=C.prototype,a=r[t];u(r,t,(function(r,l){if(m(r)&&!x(r)){this._f||(this._f=new o);var i=this._f[t](r,l);return"set"==t?this:i}return a.call(this,r,l)}))})))},95260:(t,r,a)=>{var o=a(98310),l=a(9480)(!0);o(o.S,"Object",{entries:function entries(t){return l(t)}})},67685:(t,r,a)=>{var o=a(98310),l=a(64344),i=a(1504),u=a(83264),c=a(87352);o(o.S,"Object",{getOwnPropertyDescriptors:function getOwnPropertyDescriptors(t){for(var r,a,o=i(t),d=u.f,p=l(o),m={},v=0;p.length>v;)void 0!==(a=d(o,r=p[v++]))&&c(m,r,a);return m}})},87573:(t,r,a)=>{a(31164)("asyncIterator")},97224:(t,r,a)=>{a(31164)("observable")},92797:(t,r,a)=>{a(14689)("WeakMap")},10143:(t,r,a)=>{a(7883)("WeakMap")},74114:(t,r,a)=>{a(84411);for(var o=a(43280),l=a(62292),i=a(79105),u=a(24300)("toStringTag"),c="CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList".split(","),d=0;d<c.length;d++){var p=c[d],m=o[p],v=m&&m.prototype;v&&!v[u]&&l(v,u,p),i[p]=i.Array}},22761:t=>{t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},42094:(t,r,a)=>{var o=a(62190)("unscopables"),l=Array.prototype;null==l[o]&&a(74216)(l,o,{}),t.exports=function(t){l[o][t]=!0}},88492:(t,r,a)=>{"use strict";var o=a(12070)(!0);t.exports=function(t,r,a){return r+(a?o(t,r).length:1)}},6365:(t,r,a)=>{var o=a(67334);t.exports=function(t){if(!o(t))throw TypeError(t+" is not an object!");return t}},59021:(t,r,a)=>{var o=a(15703),l=a(26078),i=a(78615);t.exports=function(t){return function(r,a,u){var c,d=o(r),p=l(d.length),m=i(u,p);if(t&&a!=a){for(;p>m;)if((c=d[m++])!=c)return!0}else for(;p>m;m++)if((t||m in d)&&d[m]===a)return t||m||0;return!t&&-1}}},78309:(t,r,a)=>{var o=a(11528),l=a(8467),i=a(26033),u=a(26078),c=a(63531);t.exports=function(t,r){var a=1==t,d=2==t,p=3==t,m=4==t,v=6==t,h=5==t||v,g=r||c;return function(r,c,y){for(var _,x,E=i(r),b=l(E),C=o(c,y,3),w=u(b.length),T=0,N=a?g(r,w):d?g(r,0):void 0;w>T;T++)if((h||T in b)&&(x=C(_=b[T],T,E),t))if(a)N[T]=x;else if(x)switch(t){case 3:return!0;case 5:return _;case 6:return T;case 2:N.push(_)}else if(m)return!1;return v?-1:p||m?m:N}}},81071:(t,r,a)=>{var o=a(67334),l=a(99141),i=a(62190)("species");t.exports=function(t){var r;return l(t)&&("function"!=typeof(r=t.constructor)||r!==Array&&!l(r.prototype)||(r=void 0),o(r)&&null===(r=r[i])&&(r=void 0)),void 0===r?Array:r}},63531:(t,r,a)=>{var o=a(81071);t.exports=function(t,r){return new(o(t))(r)}},20106:(t,r,a)=>{var o=a(26688),l=a(62190)("toStringTag"),i="Arguments"==o(function(){return arguments}());t.exports=function(t){var r,a,u;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(a=function(t,r){try{return t[r]}catch(t){}}(r=Object(t),l))?a:i?o(r):"Object"==(u=o(r))&&"function"==typeof r.callee?"Arguments":u}},26688:t=>{var r={}.toString;t.exports=function(t){return r.call(t).slice(8,-1)}},60066:t=>{var r=t.exports={version:"2.6.12"};"number"==typeof __e&&(__e=r)},11528:(t,r,a)=>{var o=a(22761);t.exports=function(t,r,a){if(o(t),void 0===r)return t;switch(a){case 1:return function(a){return t.call(r,a)};case 2:return function(a,o){return t.call(r,a,o)};case 3:return function(a,o,l){return t.call(r,a,o,l)}}return function(){return t.apply(r,arguments)}}},61622:t=>{t.exports=function(t){if(null==t)throw TypeError("Can't call method on  "+t);return t}},36628:(t,r,a)=>{t.exports=!a(48625)((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},5050:(t,r,a)=>{var o=a(67334),l=a(38113).document,i=o(l)&&o(l.createElement);t.exports=function(t){return i?l.createElement(t):{}}},33603:t=>{t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},65772:(t,r,a)=>{var o=a(38113),l=a(60066),i=a(74216),u=a(17738),c=a(11528),$export=function(t,r,a){var d,p,m,v,h=t&$export.F,g=t&$export.G,y=t&$export.S,_=t&$export.P,x=t&$export.B,E=g?o:y?o[r]||(o[r]={}):(o[r]||{}).prototype,b=g?l:l[r]||(l[r]={}),C=b.prototype||(b.prototype={});for(d in g&&(a=r),a)m=((p=!h&&E&&void 0!==E[d])?E:a)[d],v=x&&p?c(m,o):_&&"function"==typeof m?c(Function.call,m):m,E&&u(E,d,m,t&$export.U),b[d]!=m&&i(b,d,v),_&&C[d]!=m&&(C[d]=m)};o.core=l,$export.F=1,$export.G=2,$export.S=4,$export.P=8,$export.B=16,$export.W=32,$export.U=64,$export.R=128,t.exports=$export},86570:(t,r,a)=>{var o=a(62190)("match");t.exports=function(t){var r=/./;try{"/./"[t](r)}catch(a){try{return r[o]=!1,!"/./"[t](r)}catch(t){}}return!0}},48625:t=>{t.exports=function(t){try{return!!t()}catch(t){return!0}}},48897:(t,r,a)=>{"use strict";a(25846);var o=a(17738),l=a(74216),i=a(48625),u=a(61622),c=a(62190),d=a(43288),p=c("species"),m=!i((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$<a>")})),v=function(){var t=/(?:)/,r=t.exec;t.exec=function(){return r.apply(this,arguments)};var a="ab".split(t);return 2===a.length&&"a"===a[0]&&"b"===a[1]}();t.exports=function(t,r,a){var h=c(t),g=!i((function(){var r={};return r[h]=function(){return 7},7!=""[t](r)})),y=g?!i((function(){var r=!1,a=/a/;return a.exec=function(){return r=!0,null},"split"===t&&(a.constructor={},a.constructor[p]=function(){return a}),a[h](""),!r})):void 0;if(!g||!y||"replace"===t&&!m||"split"===t&&!v){var _=/./[h],x=a(u,h,""[t],(function maybeCallNative(t,r,a,o,l){return r.exec===d?g&&!l?{done:!0,value:_.call(r,a,o)}:{done:!0,value:t.call(a,r,o)}:{done:!1}})),E=x[0],b=x[1];o(String.prototype,t,E),l(RegExp.prototype,h,2==r?function(t,r){return b.call(t,this,r)}:function(t){return b.call(t,this)})}}},74859:(t,r,a)=>{"use strict";var o=a(6365);t.exports=function(){var t=o(this),r="";return t.global&&(r+="g"),t.ignoreCase&&(r+="i"),t.multiline&&(r+="m"),t.unicode&&(r+="u"),t.sticky&&(r+="y"),r}},20646:(t,r,a)=>{t.exports=a(8655)("native-function-to-string",Function.toString)},38113:t=>{var r=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=r)},54040:t=>{var r={}.hasOwnProperty;t.exports=function(t,a){return r.call(t,a)}},74216:(t,r,a)=>{var o=a(98558),l=a(36061);t.exports=a(36628)?function(t,r,a){return o.f(t,r,l(1,a))}:function(t,r,a){return t[r]=a,t}},8954:(t,r,a)=>{var o=a(38113).document;t.exports=o&&o.documentElement},5100:(t,r,a)=>{t.exports=!a(36628)&&!a(48625)((function(){return 7!=Object.defineProperty(a(5050)("div"),"a",{get:function(){return 7}}).a}))},8467:(t,r,a)=>{var o=a(26688);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==o(t)?t.split(""):Object(t)}},99141:(t,r,a)=>{var o=a(26688);t.exports=Array.isArray||function isArray(t){return"Array"==o(t)}},67334:t=>{t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},94587:(t,r,a)=>{var o=a(67334),l=a(26688),i=a(62190)("match");t.exports=function(t){var r;return o(t)&&(void 0!==(r=t[i])?!!r:"RegExp"==l(t))}},46445:(t,r,a)=>{"use strict";var o=a(82897),l=a(36061),i=a(55727),u={};a(74216)(u,a(62190)("iterator"),(function(){return this})),t.exports=function(t,r,a){t.prototype=o(u,{next:l(1,a)}),i(t,r+" Iterator")}},61195:(t,r,a)=>{"use strict";var o=a(81422),l=a(65772),i=a(17738),u=a(74216),c=a(23988),d=a(46445),p=a(55727),m=a(19002),v=a(62190)("iterator"),h=!([].keys&&"next"in[].keys()),g="keys",y="values",returnThis=function(){return this};t.exports=function(t,r,a,_,x,E,b){d(a,r,_);var C,w,T,getMethod=function(t){if(!h&&t in M)return M[t];switch(t){case g:return function keys(){return new a(this,t)};case y:return function values(){return new a(this,t)}}return function entries(){return new a(this,t)}},N=r+" Iterator",P=x==y,S=!1,M=t.prototype,R=M[v]||M["@@iterator"]||x&&M[x],O=R||getMethod(x),I=x?P?getMethod("entries"):O:void 0,j="Array"==r&&M.entries||R;if(j&&(T=m(j.call(new t)))!==Object.prototype&&T.next&&(p(T,N,!0),o||"function"==typeof T[v]||u(T,v,returnThis)),P&&R&&R.name!==y&&(S=!0,O=function values(){return R.call(this)}),o&&!b||!h&&!S&&M[v]||u(M,v,O),c[r]=O,c[N]=returnThis,x)if(C={values:P?O:getMethod(y),keys:E?O:getMethod(g),entries:I},b)for(w in C)w in M||i(M,w,C[w]);else l(l.P+l.F*(h||S),r,C);return C}},35038:t=>{t.exports=function(t,r){return{value:r,done:!!t}}},23988:t=>{t.exports={}},81422:t=>{t.exports=!1},82897:(t,r,a)=>{var o=a(6365),l=a(7331),i=a(33603),u=a(28034)("IE_PROTO"),Empty=function(){},createDict=function(){var t,r=a(5050)("iframe"),o=i.length;for(r.style.display="none",a(8954).appendChild(r),r.src="javascript:",(t=r.contentWindow.document).open(),t.write("<script>document.F=Object<\/script>"),t.close(),createDict=t.F;o--;)delete createDict.prototype[i[o]];return createDict()};t.exports=Object.create||function create(t,r){var a;return null!==t?(Empty.prototype=o(t),a=new Empty,Empty.prototype=null,a[u]=t):a=createDict(),void 0===r?a:l(a,r)}},98558:(t,r,a)=>{var o=a(6365),l=a(5100),i=a(31382),u=Object.defineProperty;r.f=a(36628)?Object.defineProperty:function defineProperty(t,r,a){if(o(t),r=i(r,!0),o(a),l)try{return u(t,r,a)}catch(t){}if("get"in a||"set"in a)throw TypeError("Accessors not supported!");return"value"in a&&(t[r]=a.value),t}},7331:(t,r,a)=>{var o=a(98558),l=a(6365),i=a(42912);t.exports=a(36628)?Object.defineProperties:function defineProperties(t,r){l(t);for(var a,u=i(r),c=u.length,d=0;c>d;)o.f(t,a=u[d++],r[a]);return t}},19002:(t,r,a)=>{var o=a(54040),l=a(26033),i=a(28034)("IE_PROTO"),u=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=l(t),o(t,i)?t[i]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},75547:(t,r,a)=>{var o=a(54040),l=a(15703),i=a(59021)(!1),u=a(28034)("IE_PROTO");t.exports=function(t,r){var a,c=l(t),d=0,p=[];for(a in c)a!=u&&o(c,a)&&p.push(a);for(;r.length>d;)o(c,a=r[d++])&&(~i(p,a)||p.push(a));return p}},42912:(t,r,a)=>{var o=a(75547),l=a(33603);t.exports=Object.keys||function keys(t){return o(t,l)}},36061:t=>{t.exports=function(t,r){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:r}}},17738:(t,r,a)=>{var o=a(38113),l=a(74216),i=a(54040),u=a(25078)("src"),c=a(20646),d="toString",p=(""+c).split(d);a(60066).inspectSource=function(t){return c.call(t)},(t.exports=function(t,r,a,c){var d="function"==typeof a;d&&(i(a,"name")||l(a,"name",r)),t[r]!==a&&(d&&(i(a,u)||l(a,u,t[r]?""+t[r]:p.join(String(r)))),t===o?t[r]=a:c?t[r]?t[r]=a:l(t,r,a):(delete t[r],l(t,r,a)))})(Function.prototype,d,(function toString(){return"function"==typeof this&&this[u]||c.call(this)}))},62404:(t,r,a)=>{"use strict";var o=a(20106),l=RegExp.prototype.exec;t.exports=function(t,r){var a=t.exec;if("function"==typeof a){var i=a.call(t,r);if("object"!=typeof i)throw new TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==o(t))throw new TypeError("RegExp#exec called on incompatible receiver");return l.call(t,r)}},43288:(t,r,a)=>{"use strict";var o,l,i=a(74859),u=RegExp.prototype.exec,c=String.prototype.replace,d=u,p=(o=/a/,l=/b*/g,u.call(o,"a"),u.call(l,"a"),0!==o.lastIndex||0!==l.lastIndex),m=void 0!==/()??/.exec("")[1];(p||m)&&(d=function exec(t){var r,a,o,l,d=this;return m&&(a=new RegExp("^"+d.source+"$(?!\\s)",i.call(d))),p&&(r=d.lastIndex),o=u.call(d,t),p&&o&&(d.lastIndex=d.global?o.index+o[0].length:r),m&&o&&o.length>1&&c.call(o[0],a,(function(){for(l=1;l<arguments.length-2;l++)void 0===arguments[l]&&(o[l]=void 0)})),o}),t.exports=d},80339:t=>{t.exports=Object.is||function is(t,r){return t===r?0!==t||1/t==1/r:t!=t&&r!=r}},55727:(t,r,a)=>{var o=a(98558).f,l=a(54040),i=a(62190)("toStringTag");t.exports=function(t,r,a){t&&!l(t=a?t:t.prototype,i)&&o(t,i,{configurable:!0,value:r})}},28034:(t,r,a)=>{var o=a(8655)("keys"),l=a(25078);t.exports=function(t){return o[t]||(o[t]=l(t))}},8655:(t,r,a)=>{var o=a(60066),l=a(38113),i="__core-js_shared__",u=l[i]||(l[i]={});(t.exports=function(t,r){return u[t]||(u[t]=void 0!==r?r:{})})("versions",[]).push({version:o.version,mode:a(81422)?"pure":"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})},11987:(t,r,a)=>{var o=a(6365),l=a(22761),i=a(62190)("species");t.exports=function(t,r){var a,u=o(t).constructor;return void 0===u||null==(a=o(u)[i])?r:l(a)}},10225:(t,r,a)=>{"use strict";var o=a(48625);t.exports=function(t,r){return!!t&&o((function(){r?t.call(null,(function(){}),1):t.call(null)}))}},12070:(t,r,a)=>{var o=a(3338),l=a(61622);t.exports=function(t){return function(r,a){var i,u,c=String(l(r)),d=o(a),p=c.length;return d<0||d>=p?t?"":void 0:(i=c.charCodeAt(d))<55296||i>56319||d+1===p||(u=c.charCodeAt(d+1))<56320||u>57343?t?c.charAt(d):i:t?c.slice(d,d+2):u-56320+(i-55296<<10)+65536}}},465:(t,r,a)=>{var o=a(94587),l=a(61622);t.exports=function(t,r,a){if(o(r))throw TypeError("String#"+a+" doesn't accept regex!");return String(l(t))}},78615:(t,r,a)=>{var o=a(3338),l=Math.max,i=Math.min;t.exports=function(t,r){return(t=o(t))<0?l(t+r,0):i(t,r)}},3338:t=>{var r=Math.ceil,a=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?a:r)(t)}},15703:(t,r,a)=>{var o=a(8467),l=a(61622);t.exports=function(t){return o(l(t))}},26078:(t,r,a)=>{var o=a(3338),l=Math.min;t.exports=function(t){return t>0?l(o(t),9007199254740991):0}},26033:(t,r,a)=>{var o=a(61622);t.exports=function(t){return Object(o(t))}},31382:(t,r,a)=>{var o=a(67334);t.exports=function(t,r){if(!o(t))return t;var a,l;if(r&&"function"==typeof(a=t.toString)&&!o(l=a.call(t)))return l;if("function"==typeof(a=t.valueOf)&&!o(l=a.call(t)))return l;if(!r&&"function"==typeof(a=t.toString)&&!o(l=a.call(t)))return l;throw TypeError("Can't convert object to primitive value")}},25078:t=>{var r=0,a=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++r+a).toString(36))}},62190:(t,r,a)=>{var o=a(8655)("wks"),l=a(25078),i=a(38113).Symbol,u="function"==typeof i;(t.exports=function(t){return o[t]||(o[t]=u&&i[t]||(u?i:l)("Symbol."+t))}).store=o},64434:(t,r,a)=>{"use strict";var o=a(65772),l=a(78309)(2);o(o.P+o.F*!a(10225)([].filter,!0),"Array",{filter:function filter(t){return l(this,t,arguments[1])}})},71954:(t,r,a)=>{"use strict";var o=a(65772),l=a(78309)(5),i="find",u=!0;i in[]&&Array(1).find((function(){u=!1})),o(o.P+o.F*u,"Array",{find:function find(t){return l(this,t,arguments.length>1?arguments[1]:void 0)}}),a(42094)(i)},12897:(t,r,a)=>{"use strict";var o=a(42094),l=a(35038),i=a(23988),u=a(15703);t.exports=a(61195)(Array,"Array",(function(t,r){this._t=u(t),this._i=0,this._k=r}),(function(){var t=this._t,r=this._k,a=this._i++;return!t||a>=t.length?(this._t=void 0,l(1)):l(0,"keys"==r?a:"values"==r?t[a]:[a,t[a]])}),"values"),i.Arguments=i.Array,o("keys"),o("values"),o("entries")},90286:(t,r,a)=>{"use strict";var o=a(65772),l=a(78309)(1);o(o.P+o.F*!a(10225)([].map,!0),"Array",{map:function map(t){return l(this,t,arguments[1])}})},76139:(t,r,a)=>{"use strict";var o=a(20106),l={};l[a(62190)("toStringTag")]="z",l+""!="[object z]"&&a(17738)(Object.prototype,"toString",(function toString(){return"[object "+o(this)+"]"}),!0)},25846:(t,r,a)=>{"use strict";var o=a(43288);a(65772)({target:"RegExp",proto:!0,forced:o!==/./.exec},{exec:o})},40751:(t,r,a)=>{a(36628)&&"g"!=/./g.flags&&a(98558).f(RegExp.prototype,"flags",{configurable:!0,get:a(74859)})},64828:(t,r,a)=>{"use strict";var o=a(6365),l=a(26078),i=a(88492),u=a(62404);a(48897)("match",1,(function(t,r,a,c){return[function match(a){var o=t(this),l=null==a?void 0:a[r];return void 0!==l?l.call(a,o):new RegExp(a)[r](String(o))},function(t){var r=c(a,t,this);if(r.done)return r.value;var d=o(t),p=String(this);if(!d.global)return u(d,p);var m=d.unicode;d.lastIndex=0;for(var v,h=[],g=0;null!==(v=u(d,p));){var y=String(v[0]);h[g]=y,""===y&&(d.lastIndex=i(p,l(d.lastIndex),m)),g++}return 0===g?null:h}]}))},84208:(t,r,a)=>{"use strict";var o=a(6365),l=a(26033),i=a(26078),u=a(3338),c=a(88492),d=a(62404),p=Math.max,m=Math.min,v=Math.floor,h=/\$([$&`']|\d\d?|<[^>]*>)/g,g=/\$([$&`']|\d\d?)/g;a(48897)("replace",2,(function(t,r,a,y){return[function replace(o,l){var i=t(this),u=null==o?void 0:o[r];return void 0!==u?u.call(o,i,l):a.call(String(i),o,l)},function(t,r){var l=y(a,t,this,r);if(l.done)return l.value;var v=o(t),h=String(this),g="function"==typeof r;g||(r=String(r));var _=v.global;if(_){var x=v.unicode;v.lastIndex=0}for(var E=[];;){var b=d(v,h);if(null===b)break;if(E.push(b),!_)break;""===String(b[0])&&(v.lastIndex=c(h,i(v.lastIndex),x))}for(var C,w="",T=0,N=0;N<E.length;N++){b=E[N];for(var P=String(b[0]),S=p(m(u(b.index),h.length),0),M=[],R=1;R<b.length;R++)M.push(void 0===(C=b[R])?C:String(C));var O=b.groups;if(g){var I=[P].concat(M,S,h);void 0!==O&&I.push(O);var j=String(r.apply(void 0,I))}else j=getSubstitution(P,h,S,M,O,r);S>=T&&(w+=h.slice(T,S)+j,T=S+P.length)}return w+h.slice(T)}];function getSubstitution(t,r,o,i,u,c){var d=o+t.length,p=i.length,m=g;return void 0!==u&&(u=l(u),m=h),a.call(c,m,(function(a,l){var c;switch(l.charAt(0)){case"$":return"$";case"&":return t;case"`":return r.slice(0,o);case"'":return r.slice(d);case"<":c=u[l.slice(1,-1)];break;default:var m=+l;if(0===m)return a;if(m>p){var h=v(m/10);return 0===h?a:h<=p?void 0===i[h-1]?l.charAt(1):i[h-1]+l.charAt(1):a}c=i[m-1]}return void 0===c?"":c}))}}))},42679:(t,r,a)=>{"use strict";var o=a(6365),l=a(80339),i=a(62404);a(48897)("search",1,(function(t,r,a,u){return[function search(a){var o=t(this),l=null==a?void 0:a[r];return void 0!==l?l.call(a,o):new RegExp(a)[r](String(o))},function(t){var r=u(a,t,this);if(r.done)return r.value;var c=o(t),d=String(this),p=c.lastIndex;l(p,0)||(c.lastIndex=0);var m=i(c,d);return l(c.lastIndex,p)||(c.lastIndex=p),null===m?-1:m.index}]}))},99236:(t,r,a)=>{"use strict";var o=a(94587),l=a(6365),i=a(11987),u=a(88492),c=a(26078),d=a(62404),p=a(43288),m=a(48625),v=Math.min,h=[].push,g=4294967295,y=!m((function(){RegExp(g,"y")}));a(48897)("split",2,(function(t,r,a,m){var _;return _="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,r){var l=String(this);if(void 0===t&&0===r)return[];if(!o(t))return a.call(l,t,r);for(var i,u,c,d=[],m=(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":""),v=0,y=void 0===r?g:r>>>0,_=new RegExp(t.source,m+"g");(i=p.call(_,l))&&!((u=_.lastIndex)>v&&(d.push(l.slice(v,i.index)),i.length>1&&i.index<l.length&&h.apply(d,i.slice(1)),c=i[0].length,v=u,d.length>=y));)_.lastIndex===i.index&&_.lastIndex++;return v===l.length?!c&&_.test("")||d.push(""):d.push(l.slice(v)),d.length>y?d.slice(0,y):d}:"0".split(void 0,0).length?function(t,r){return void 0===t&&0===r?[]:a.call(this,t,r)}:a,[function split(a,o){var l=t(this),i=null==a?void 0:a[r];return void 0!==i?i.call(a,l,o):_.call(String(l),a,o)},function(t,r){var o=m(_,t,this,r,_!==a);if(o.done)return o.value;var p=l(t),h=String(this),x=i(p,RegExp),E=p.unicode,b=(p.ignoreCase?"i":"")+(p.multiline?"m":"")+(p.unicode?"u":"")+(y?"y":"g"),C=new x(y?p:"^(?:"+p.source+")",b),w=void 0===r?g:r>>>0;if(0===w)return[];if(0===h.length)return null===d(C,h)?[h]:[];for(var T=0,N=0,P=[];N<h.length;){C.lastIndex=y?N:0;var S,M=d(C,y?h:h.slice(N));if(null===M||(S=v(c(C.lastIndex+(y?0:N)),h.length))===T)N=u(h,N,E);else{if(P.push(h.slice(T,N)),P.length===w)return P;for(var R=1;R<=M.length-1;R++)if(P.push(M[R]),P.length===w)return P;N=T=S}}return P.push(h.slice(T)),P}]}))},44321:(t,r,a)=>{"use strict";a(40751);var o=a(6365),l=a(74859),i=a(36628),u="toString",c=/./.toString,define=function(t){a(17738)(RegExp.prototype,u,t,!0)};a(48625)((function(){return"/a/b"!=c.call({source:"a",flags:"b"})}))?define((function toString(){var t=o(this);return"/".concat(t.source,"/","flags"in t?t.flags:!i&&t instanceof RegExp?l.call(t):void 0)})):c.name!=u&&define((function toString(){return c.call(this)}))},3777:(t,r,a)=>{"use strict";var o=a(65772),l=a(465),i="includes";o(o.P+o.F*a(86570)(i),"String",{includes:function includes(t){return!!~l(this,t,i).indexOf(t,arguments.length>1?arguments[1]:void 0)}})},38081:(t,r,a)=>{"use strict";var o=a(65772),l=a(59021)(!0);o(o.P,"Array",{includes:function includes(t){return l(this,t,arguments.length>1?arguments[1]:void 0)}}),a(42094)("includes")},93085:(t,r,a)=>{for(var o=a(12897),l=a(42912),i=a(17738),u=a(38113),c=a(74216),d=a(23988),p=a(62190),m=p("iterator"),v=p("toStringTag"),h=d.Array,g={CSSRuleList:!0,CSSStyleDeclaration:!1,CSSValueList:!1,ClientRectList:!1,DOMRectList:!1,DOMStringList:!1,DOMTokenList:!0,DataTransferItemList:!1,FileList:!1,HTMLAllCollection:!1,HTMLCollection:!1,HTMLFormElement:!1,HTMLSelectElement:!1,MediaList:!0,MimeTypeArray:!1,NamedNodeMap:!1,NodeList:!0,PaintRequestList:!1,Plugin:!1,PluginArray:!1,SVGLengthList:!1,SVGNumberList:!1,SVGPathSegList:!1,SVGPointList:!1,SVGStringList:!1,SVGTransformList:!1,SourceBufferList:!1,StyleSheetList:!0,TextTrackCueList:!1,TextTrackList:!1,TouchList:!1},y=l(g),_=0;_<y.length;_++){var x,E=y[_],b=g[E],C=u[E],w=C&&C.prototype;if(w&&(w[m]||c(w,m,h),w[v]||c(w,v,E),d[E]=h,b))for(x in o)w[x]||i(w,x,o[x],!0)}},24457:(t,r,a)=>{"use strict";r.__esModule=!0;var o=a(63804),l=(_interopRequireDefault(o),_interopRequireDefault(a(23615))),i=_interopRequireDefault(a(51230));_interopRequireDefault(a(91895));function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}}function _classCallCheck(t,r){if(!(t instanceof r))throw new TypeError("Cannot call a class as a function")}function _possibleConstructorReturn(t,r){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!r||"object"!=typeof r&&"function"!=typeof r?t:r}function _inherits(t,r){if("function"!=typeof r&&null!==r)throw new TypeError("Super expression must either be null or a function, not "+typeof r);t.prototype=Object.create(r&&r.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),r&&(Object.setPrototypeOf?Object.setPrototypeOf(t,r):t.__proto__=r)}var u=1073741823;function createEventEmitter(t){var r=[];return{on:function on(t){r.push(t)},off:function off(t){r=r.filter((function(r){return r!==t}))},get:function get(){return t},set:function set(a,o){t=a,r.forEach((function(r){return r(t,o)}))}}}r.default=function createReactContext(t,r){var a,c,d="__create-react-context-"+(0,i.default)()+"__",p=function(t){function Provider(){var r,a;_classCallCheck(this,Provider);for(var o=arguments.length,l=Array(o),i=0;i<o;i++)l[i]=arguments[i];return r=a=_possibleConstructorReturn(this,t.call.apply(t,[this].concat(l))),a.emitter=createEventEmitter(a.props.value),_possibleConstructorReturn(a,r)}return _inherits(Provider,t),Provider.prototype.getChildContext=function getChildContext(){var t;return(t={})[d]=this.emitter,t},Provider.prototype.componentWillReceiveProps=function componentWillReceiveProps(t){if(this.props.value!==t.value){var a=this.props.value,o=t.value,l=void 0;!function objectIs(t,r){return t===r?0!==t||1/t==1/r:t!=t&&r!=r}(a,o)?(l="function"==typeof r?r(a,o):u,0!==(l|=0)&&this.emitter.set(t.value,l)):l=0}},Provider.prototype.render=function render(){return this.props.children},Provider}(o.Component);p.childContextTypes=((a={})[d]=l.default.object.isRequired,a);var m=function(r){function Consumer(){var t,a;_classCallCheck(this,Consumer);for(var o=arguments.length,l=Array(o),i=0;i<o;i++)l[i]=arguments[i];return t=a=_possibleConstructorReturn(this,r.call.apply(r,[this].concat(l))),a.state={value:a.getValue()},a.onUpdate=function(t,r){0!=((0|a.observedBits)&r)&&a.setState({value:a.getValue()})},_possibleConstructorReturn(a,t)}return _inherits(Consumer,r),Consumer.prototype.componentWillReceiveProps=function componentWillReceiveProps(t){var r=t.observedBits;this.observedBits=null==r?u:r},Consumer.prototype.componentDidMount=function componentDidMount(){this.context[d]&&this.context[d].on(this.onUpdate);var t=this.props.observedBits;this.observedBits=null==t?u:t},Consumer.prototype.componentWillUnmount=function componentWillUnmount(){this.context[d]&&this.context[d].off(this.onUpdate)},Consumer.prototype.getValue=function getValue(){return this.context[d]?this.context[d].get():t},Consumer.prototype.render=function render(){return function onlyChild(t){return Array.isArray(t)?t[0]:t}(this.props.children)(this.state.value)},Consumer}(o.Component);return m.contextTypes=((c={})[d]=l.default.object,c),{Provider:p,Consumer:m}},t.exports=r.default},68189:(t,r,a)=>{"use strict";r.__esModule=!0;var o=_interopRequireDefault(a(63804)),l=_interopRequireDefault(a(24457));function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}}r.default=o.default.createContext||l.default,t.exports=r.default},51230:(t,r,a)=>{"use strict";var o="__global_unique_id__";t.exports=function(){return a.g[o]=(a.g[o]||0)+1}},3996:t=>{"use strict";t.exports=function(t,r,a,o,l,i,u,c){if(!t){var d;if(void 0===r)d=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var p=[a,o,l,i,u,c],m=0;(d=new Error(r.replace(/%s/g,(function(){return p[m++]})))).name="Invariant Violation"}throw d.framesToPop=1,d}}},58772:(t,r,a)=>{"use strict";var o=a(90331);function emptyFunction(){}function emptyFunctionWithReset(){}emptyFunctionWithReset.resetWarningCache=emptyFunction,t.exports=function(){function shim(t,r,a,l,i,u){if(u!==o){var c=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw c.name="Invariant Violation",c}}function getShim(){return shim}shim.isRequired=shim;var t={array:shim,bool:shim,func:shim,number:shim,object:shim,string:shim,symbol:shim,any:shim,arrayOf:getShim,element:shim,elementType:shim,instanceOf:getShim,node:shim,objectOf:getShim,oneOf:getShim,oneOfType:getShim,shape:getShim,exact:getShim,checkPropTypes:emptyFunctionWithReset,resetWarningCache:emptyFunction};return t.PropTypes=t,t}},23615:(t,r,a)=>{t.exports=a(58772)()},90331:t=>{"use strict";t.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},91895:t=>{"use strict";var warning=function(){};t.exports=warning},63804:t=>{"use strict";t.exports=React},20485:t=>{"use strict";t.exports=elementorAppPackages.router},18194:t=>{"use strict";t.exports=wp.i18n}},r={};function __webpack_require__(a){var o=r[a];if(void 0!==o)return o.exports;var l=r[a]={exports:{}};return t[a](l,l.exports,__webpack_require__),l.exports}__webpack_require__.n=t=>{var r=t&&t.__esModule?()=>t.default:()=>t;return __webpack_require__.d(r,{a:r}),r},__webpack_require__.d=(t,r)=>{for(var a in r)__webpack_require__.o(r,a)&&!__webpack_require__.o(t,a)&&Object.defineProperty(t,a,{enumerable:!0,get:r[a]})},__webpack_require__.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),__webpack_require__.o=(t,r)=>Object.prototype.hasOwnProperty.call(t,r),__webpack_require__.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},(()=>{"use strict";var t=__webpack_require__(67971),r=t(__webpack_require__(54868)),a=t(__webpack_require__(44281)),o=t(__webpack_require__(60649)),l=t(__webpack_require__(97932));window.elementorAppPackages={appUi:a.default,router:r.default,siteEditor:o.default,importExport:l.default}})()})();assets/js/common.js000064400002407624151327220410010324 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
/******/ (() => { // webpackBootstrap
/******/ 	var __webpack_modules__ = ({

/***/ "../node_modules/@babel/runtime-corejs2/core-js/array/from.js":
/*!********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/array/from.js ***!
  \********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/array/from */ "../node_modules/core-js/library/fn/array/from.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/array/is-array */ "../node_modules/core-js/library/fn/array/is-array.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/json/stringify.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/json/stringify.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/json/stringify */ "../node_modules/core-js/library/fn/json/stringify.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/map.js":
/*!*************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/map.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/map */ "../node_modules/core-js/library/fn/map.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/assign.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/assign.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/assign */ "../node_modules/core-js/library/fn/object/assign.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/create.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/create.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/create */ "../node_modules/core-js/library/fn/object/create.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/define-properties.js":
/*!**********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/define-properties.js ***!
  \**********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/define-properties */ "../node_modules/core-js/library/fn/object/define-properties.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js":
/*!********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js ***!
  \********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/define-property */ "../node_modules/core-js/library/fn/object/define-property.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/entries.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/entries */ "../node_modules/core-js/library/fn/object/entries.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js":
/*!********************************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js ***!
  \********************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/get-own-property-descriptor */ "../node_modules/core-js/library/fn/object/get-own-property-descriptor.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptors.js":
/*!*********************************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptors.js ***!
  \*********************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/get-own-property-descriptors */ "../node_modules/core-js/library/fn/object/get-own-property-descriptors.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-symbols.js":
/*!*****************************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-symbols.js ***!
  \*****************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/get-own-property-symbols */ "../node_modules/core-js/library/fn/object/get-own-property-symbols.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/get-prototype-of.js":
/*!*********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/get-prototype-of.js ***!
  \*********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/get-prototype-of */ "../node_modules/core-js/library/fn/object/get-prototype-of.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/keys.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/keys */ "../node_modules/core-js/library/fn/object/keys.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js":
/*!*********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js ***!
  \*********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/set-prototype-of */ "../node_modules/core-js/library/fn/object/set-prototype-of.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/values.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/values */ "../node_modules/core-js/library/fn/object/values.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/promise.js":
/*!*****************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/promise.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/promise */ "../node_modules/core-js/library/fn/promise.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js":
/*!***************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js ***!
  \***************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/reflect/construct */ "../node_modules/core-js/library/fn/reflect/construct.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/reflect/get.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/reflect/get.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/reflect/get */ "../node_modules/core-js/library/fn/reflect/get.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js":
/*!****************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/symbol.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/symbol */ "../node_modules/core-js/library/fn/symbol/index.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/symbol/has-instance.js":
/*!*****************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/symbol/has-instance.js ***!
  \*****************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/symbol/has-instance */ "../node_modules/core-js/library/fn/symbol/has-instance.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js":
/*!*************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js ***!
  \*************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/symbol/iterator */ "../node_modules/core-js/library/fn/symbol/iterator.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/weak-map.js":
/*!******************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/weak-map.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/weak-map */ "../node_modules/core-js/library/fn/weak-map.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/arrayLikeToArray.js":
/*!**************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/arrayLikeToArray.js ***!
  \**************************************************************************/
/***/ ((module) => {

function _arrayLikeToArray(arr, len) {
  if (len == null || len > arr.length) len = arr.length;

  for (var i = 0, arr2 = new Array(len); i < len; i++) {
    arr2[i] = arr[i];
  }

  return arr2;
}

module.exports = _arrayLikeToArray;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/arrayWithHoles.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/arrayWithHoles.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Array$isArray = __webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js");

function _arrayWithHoles(arr) {
  if (_Array$isArray(arr)) return arr;
}

module.exports = _arrayWithHoles;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js":
/*!*******************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js ***!
  \*******************************************************************************/
/***/ ((module) => {

function _assertThisInitialized(self) {
  if (self === void 0) {
    throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
  }

  return self;
}

module.exports = _assertThisInitialized;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/asyncToGenerator.js":
/*!**************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/asyncToGenerator.js ***!
  \**************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Promise = __webpack_require__(/*! @babel/runtime-corejs2/core-js/promise */ "../node_modules/@babel/runtime-corejs2/core-js/promise.js");

function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
  try {
    var info = gen[key](arg);
    var value = info.value;
  } catch (error) {
    reject(error);
    return;
  }

  if (info.done) {
    resolve(value);
  } else {
    _Promise.resolve(value).then(_next, _throw);
  }
}

function _asyncToGenerator(fn) {
  return function () {
    var self = this,
        args = arguments;
    return new _Promise(function (resolve, reject) {
      var gen = fn.apply(self, args);

      function _next(value) {
        asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
      }

      function _throw(err) {
        asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
      }

      _next(undefined);
    });
  };
}

module.exports = _asyncToGenerator;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js ***!
  \************************************************************************/
/***/ ((module) => {

function _classCallCheck(instance, Constructor) {
  if (!(instance instanceof Constructor)) {
    throw new TypeError("Cannot call a class as a function");
  }
}

module.exports = _classCallCheck;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/construct.js":
/*!*******************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/construct.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Reflect$construct = __webpack_require__(/*! @babel/runtime-corejs2/core-js/reflect/construct */ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js");

var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js");

var isNativeReflectConstruct = __webpack_require__(/*! ./isNativeReflectConstruct.js */ "../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js");

function _construct(Parent, args, Class) {
  if (isNativeReflectConstruct()) {
    module.exports = _construct = _Reflect$construct;
    module.exports.default = module.exports, module.exports.__esModule = true;
  } else {
    module.exports = _construct = function _construct(Parent, args, Class) {
      var a = [null];
      a.push.apply(a, args);
      var Constructor = Function.bind.apply(Parent, a);
      var instance = new Constructor();
      if (Class) setPrototypeOf(instance, Class.prototype);
      return instance;
    };

    module.exports.default = module.exports, module.exports.__esModule = true;
  }

  return _construct.apply(null, arguments);
}

module.exports = _construct;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/createClass.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

function _defineProperties(target, props) {
  for (var i = 0; i < props.length; i++) {
    var descriptor = props[i];
    descriptor.enumerable = descriptor.enumerable || false;
    descriptor.configurable = true;
    if ("value" in descriptor) descriptor.writable = true;

    _Object$defineProperty(target, descriptor.key, descriptor);
  }
}

function _createClass(Constructor, protoProps, staticProps) {
  if (protoProps) _defineProperties(Constructor.prototype, protoProps);
  if (staticProps) _defineProperties(Constructor, staticProps);
  return Constructor;
}

module.exports = _createClass;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/createForOfIteratorHelper.js":
/*!***********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/createForOfIteratorHelper.js ***!
  \***********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Symbol = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol */ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js");

var _Symbol$iterator = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/iterator */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js");

var _Array$isArray = __webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js");

var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js");

function _createForOfIteratorHelper(o, allowArrayLike) {
  var it = typeof _Symbol !== "undefined" && o[_Symbol$iterator] || o["@@iterator"];

  if (!it) {
    if (_Array$isArray(o) || (it = unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") {
      if (it) o = it;
      var i = 0;

      var F = function F() {};

      return {
        s: F,
        n: function n() {
          if (i >= o.length) return {
            done: true
          };
          return {
            done: false,
            value: o[i++]
          };
        },
        e: function e(_e) {
          throw _e;
        },
        f: F
      };
    }

    throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
  }

  var normalCompletion = true,
      didErr = false,
      err;
  return {
    s: function s() {
      it = it.call(o);
    },
    n: function n() {
      var step = it.next();
      normalCompletion = step.done;
      return step;
    },
    e: function e(_e2) {
      didErr = true;
      err = _e2;
    },
    f: function f() {
      try {
        if (!normalCompletion && it["return"] != null) it["return"]();
      } finally {
        if (didErr) throw err;
      }
    }
  };
}

module.exports = _createForOfIteratorHelper;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/createSuper.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Reflect$construct = __webpack_require__(/*! @babel/runtime-corejs2/core-js/reflect/construct */ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js");

var getPrototypeOf = __webpack_require__(/*! ./getPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js");

var isNativeReflectConstruct = __webpack_require__(/*! ./isNativeReflectConstruct.js */ "../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js");

var possibleConstructorReturn = __webpack_require__(/*! ./possibleConstructorReturn.js */ "../node_modules/@babel/runtime-corejs2/helpers/possibleConstructorReturn.js");

function _createSuper(Derived) {
  var hasNativeReflectConstruct = isNativeReflectConstruct();
  return function _createSuperInternal() {
    var Super = getPrototypeOf(Derived),
        result;

    if (hasNativeReflectConstruct) {
      var NewTarget = getPrototypeOf(this).constructor;
      result = _Reflect$construct(Super, arguments, NewTarget);
    } else {
      result = Super.apply(this, arguments);
    }

    return possibleConstructorReturn(this, result);
  };
}

module.exports = _createSuper;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

function _defineProperty(obj, key, value) {
  if (key in obj) {
    _Object$defineProperty(obj, key, {
      value: value,
      enumerable: true,
      configurable: true,
      writable: true
    });
  } else {
    obj[key] = value;
  }

  return obj;
}

module.exports = _defineProperty;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/get.js":
/*!*************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/get.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Reflect$get = __webpack_require__(/*! @babel/runtime-corejs2/core-js/reflect/get */ "../node_modules/@babel/runtime-corejs2/core-js/reflect/get.js");

var _Object$getOwnPropertyDescriptor = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-own-property-descriptor */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js");

var superPropBase = __webpack_require__(/*! ./superPropBase.js */ "../node_modules/@babel/runtime-corejs2/helpers/superPropBase.js");

function _get(target, property, receiver) {
  if (typeof Reflect !== "undefined" && _Reflect$get) {
    module.exports = _get = _Reflect$get;
    module.exports.default = module.exports, module.exports.__esModule = true;
  } else {
    module.exports = _get = function _get(target, property, receiver) {
      var base = superPropBase(target, property);
      if (!base) return;

      var desc = _Object$getOwnPropertyDescriptor(base, property);

      if (desc.get) {
        return desc.get.call(receiver);
      }

      return desc.value;
    };

    module.exports.default = module.exports, module.exports.__esModule = true;
  }

  return _get(target, property, receiver || target);
}

module.exports = _get;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$setPrototypeOf = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/set-prototype-of */ "../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js");

var _Object$getPrototypeOf = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-prototype-of */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-prototype-of.js");

function _getPrototypeOf(o) {
  module.exports = _getPrototypeOf = _Object$setPrototypeOf ? _Object$getPrototypeOf : function _getPrototypeOf(o) {
    return o.__proto__ || _Object$getPrototypeOf(o);
  };
  module.exports.default = module.exports, module.exports.__esModule = true;
  return _getPrototypeOf(o);
}

module.exports = _getPrototypeOf;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js":
/*!******************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/inherits.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$create = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/create */ "../node_modules/@babel/runtime-corejs2/core-js/object/create.js");

var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js");

function _inherits(subClass, superClass) {
  if (typeof superClass !== "function" && superClass !== null) {
    throw new TypeError("Super expression must either be null or a function");
  }

  subClass.prototype = _Object$create(superClass && superClass.prototype, {
    constructor: {
      value: subClass,
      writable: true,
      configurable: true
    }
  });
  if (superClass) setPrototypeOf(subClass, superClass);
}

module.exports = _inherits;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js":
/*!*******************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js ***!
  \*******************************************************************************/
/***/ ((module) => {

function _interopRequireDefault(obj) {
  return obj && obj.__esModule ? obj : {
    "default": obj
  };
}

module.exports = _interopRequireDefault;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js":
/*!********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js ***!
  \********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _typeof = __webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js").default;

var _WeakMap = __webpack_require__(/*! @babel/runtime-corejs2/core-js/weak-map */ "../node_modules/@babel/runtime-corejs2/core-js/weak-map.js");

var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _Object$getOwnPropertyDescriptor = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-own-property-descriptor */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js");

function _getRequireWildcardCache(nodeInterop) {
  if (typeof _WeakMap !== "function") return null;
  var cacheBabelInterop = new _WeakMap();
  var cacheNodeInterop = new _WeakMap();
  return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) {
    return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
  })(nodeInterop);
}

function _interopRequireWildcard(obj, nodeInterop) {
  if (!nodeInterop && obj && obj.__esModule) {
    return obj;
  }

  if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") {
    return {
      "default": obj
    };
  }

  var cache = _getRequireWildcardCache(nodeInterop);

  if (cache && cache.has(obj)) {
    return cache.get(obj);
  }

  var newObj = {};
  var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor;

  for (var key in obj) {
    if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
      var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null;

      if (desc && (desc.get || desc.set)) {
        _Object$defineProperty(newObj, key, desc);
      } else {
        newObj[key] = obj[key];
      }
    }
  }

  newObj["default"] = obj;

  if (cache) {
    cache.set(obj, newObj);
  }

  return newObj;
}

module.exports = _interopRequireWildcard;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/isNativeFunction.js":
/*!**************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/isNativeFunction.js ***!
  \**************************************************************************/
/***/ ((module) => {

function _isNativeFunction(fn) {
  return Function.toString.call(fn).indexOf("[native code]") !== -1;
}

module.exports = _isNativeFunction;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js":
/*!**********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js ***!
  \**********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Reflect$construct = __webpack_require__(/*! @babel/runtime-corejs2/core-js/reflect/construct */ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js");

function _isNativeReflectConstruct() {
  if (typeof Reflect === "undefined" || !_Reflect$construct) return false;
  if (_Reflect$construct.sham) return false;
  if (typeof Proxy === "function") return true;

  try {
    Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {}));
    return true;
  } catch (e) {
    return false;
  }
}

module.exports = _isNativeReflectConstruct;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/iterableToArrayLimit.js":
/*!******************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/iterableToArrayLimit.js ***!
  \******************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Symbol = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol */ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js");

var _Symbol$iterator = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/iterator */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js");

function _iterableToArrayLimit(arr, i) {
  var _i = arr == null ? null : typeof _Symbol !== "undefined" && arr[_Symbol$iterator] || arr["@@iterator"];

  if (_i == null) return;
  var _arr = [];
  var _n = true;
  var _d = false;

  var _s, _e;

  try {
    for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {
      _arr.push(_s.value);

      if (i && _arr.length === i) break;
    }
  } catch (err) {
    _d = true;
    _e = err;
  } finally {
    try {
      if (!_n && _i["return"] != null) _i["return"]();
    } finally {
      if (_d) throw _e;
    }
  }

  return _arr;
}

module.exports = _iterableToArrayLimit;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/nonIterableRest.js":
/*!*************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/nonIterableRest.js ***!
  \*************************************************************************/
/***/ ((module) => {

function _nonIterableRest() {
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
}

module.exports = _nonIterableRest;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$keys = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js");

var _Object$getOwnPropertySymbols = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-own-property-symbols */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-symbols.js");

var _Object$getOwnPropertyDescriptor = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-own-property-descriptor */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js");

var _Object$getOwnPropertyDescriptors = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-own-property-descriptors */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptors.js");

var _Object$defineProperties = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-properties */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-properties.js");

var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var defineProperty = __webpack_require__(/*! ./defineProperty.js */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js");

function ownKeys(object, enumerableOnly) {
  var keys = _Object$keys(object);

  if (_Object$getOwnPropertySymbols) {
    var symbols = _Object$getOwnPropertySymbols(object);

    if (enumerableOnly) {
      symbols = symbols.filter(function (sym) {
        return _Object$getOwnPropertyDescriptor(object, sym).enumerable;
      });
    }

    keys.push.apply(keys, symbols);
  }

  return keys;
}

function _objectSpread2(target) {
  for (var i = 1; i < arguments.length; i++) {
    var source = arguments[i] != null ? arguments[i] : {};

    if (i % 2) {
      ownKeys(Object(source), true).forEach(function (key) {
        defineProperty(target, key, source[key]);
      });
    } else if (_Object$getOwnPropertyDescriptors) {
      _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source));
    } else {
      ownKeys(Object(source)).forEach(function (key) {
        _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key));
      });
    }
  }

  return target;
}

module.exports = _objectSpread2;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/possibleConstructorReturn.js":
/*!***********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/possibleConstructorReturn.js ***!
  \***********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _typeof = __webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js").default;

var assertThisInitialized = __webpack_require__(/*! ./assertThisInitialized.js */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js");

function _possibleConstructorReturn(self, call) {
  if (call && (_typeof(call) === "object" || typeof call === "function")) {
    return call;
  }

  return assertThisInitialized(self);
}

module.exports = _possibleConstructorReturn;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$setPrototypeOf = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/set-prototype-of */ "../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js");

function _setPrototypeOf(o, p) {
  module.exports = _setPrototypeOf = _Object$setPrototypeOf || function _setPrototypeOf(o, p) {
    o.__proto__ = p;
    return o;
  };

  module.exports.default = module.exports, module.exports.__esModule = true;
  return _setPrototypeOf(o, p);
}

module.exports = _setPrototypeOf;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var arrayWithHoles = __webpack_require__(/*! ./arrayWithHoles.js */ "../node_modules/@babel/runtime-corejs2/helpers/arrayWithHoles.js");

var iterableToArrayLimit = __webpack_require__(/*! ./iterableToArrayLimit.js */ "../node_modules/@babel/runtime-corejs2/helpers/iterableToArrayLimit.js");

var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js");

var nonIterableRest = __webpack_require__(/*! ./nonIterableRest.js */ "../node_modules/@babel/runtime-corejs2/helpers/nonIterableRest.js");

function _slicedToArray(arr, i) {
  return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();
}

module.exports = _slicedToArray;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/superPropBase.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/superPropBase.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var getPrototypeOf = __webpack_require__(/*! ./getPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js");

function _superPropBase(object, property) {
  while (!Object.prototype.hasOwnProperty.call(object, property)) {
    object = getPrototypeOf(object);
    if (object === null) break;
  }

  return object;
}

module.exports = _superPropBase;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js":
/*!****************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/typeof.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Symbol = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol */ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js");

var _Symbol$iterator = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/iterator */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js");

function _typeof(obj) {
  "@babel/helpers - typeof";

  if (typeof _Symbol === "function" && typeof _Symbol$iterator === "symbol") {
    module.exports = _typeof = function _typeof(obj) {
      return typeof obj;
    };

    module.exports.default = module.exports, module.exports.__esModule = true;
  } else {
    module.exports = _typeof = function _typeof(obj) {
      return obj && typeof _Symbol === "function" && obj.constructor === _Symbol && obj !== _Symbol.prototype ? "symbol" : typeof obj;
    };

    module.exports.default = module.exports, module.exports.__esModule = true;
  }

  return _typeof(obj);
}

module.exports = _typeof;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js":
/*!************************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js ***!
  \************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Array$from = __webpack_require__(/*! @babel/runtime-corejs2/core-js/array/from */ "../node_modules/@babel/runtime-corejs2/core-js/array/from.js");

var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/arrayLikeToArray.js");

function _unsupportedIterableToArray(o, minLen) {
  if (!o) return;
  if (typeof o === "string") return arrayLikeToArray(o, minLen);
  var n = Object.prototype.toString.call(o).slice(8, -1);
  if (n === "Object" && o.constructor) n = o.constructor.name;
  if (n === "Map" || n === "Set") return _Array$from(o);
  if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);
}

module.exports = _unsupportedIterableToArray;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/wrapNativeSuper.js":
/*!*************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/wrapNativeSuper.js ***!
  \*************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Map = __webpack_require__(/*! @babel/runtime-corejs2/core-js/map */ "../node_modules/@babel/runtime-corejs2/core-js/map.js");

var _Object$create = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/create */ "../node_modules/@babel/runtime-corejs2/core-js/object/create.js");

var getPrototypeOf = __webpack_require__(/*! ./getPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js");

var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js");

var isNativeFunction = __webpack_require__(/*! ./isNativeFunction.js */ "../node_modules/@babel/runtime-corejs2/helpers/isNativeFunction.js");

var construct = __webpack_require__(/*! ./construct.js */ "../node_modules/@babel/runtime-corejs2/helpers/construct.js");

function _wrapNativeSuper(Class) {
  var _cache = typeof _Map === "function" ? new _Map() : undefined;

  module.exports = _wrapNativeSuper = function _wrapNativeSuper(Class) {
    if (Class === null || !isNativeFunction(Class)) return Class;

    if (typeof Class !== "function") {
      throw new TypeError("Super expression must either be null or a function");
    }

    if (typeof _cache !== "undefined") {
      if (_cache.has(Class)) return _cache.get(Class);

      _cache.set(Class, Wrapper);
    }

    function Wrapper() {
      return construct(Class, arguments, getPrototypeOf(this).constructor);
    }

    Wrapper.prototype = _Object$create(Class.prototype, {
      constructor: {
        value: Wrapper,
        enumerable: false,
        writable: true,
        configurable: true
      }
    });
    return setPrototypeOf(Wrapper, Class);
  };

  module.exports.default = module.exports, module.exports.__esModule = true;
  return _wrapNativeSuper(Class);
}

module.exports = _wrapNativeSuper;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime/regenerator/index.js":
/*!***********************************************************!*\
  !*** ../node_modules/@babel/runtime/regenerator/index.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! regenerator-runtime */ "../node_modules/regenerator-runtime/runtime.js");


/***/ }),

/***/ "../assets/dev/js/modules/imports/args-object.js":
/*!*******************************************************!*\
  !*** ../assets/dev/js/modules/imports/args-object.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _instanceType = _interopRequireDefault(__webpack_require__(/*! ./instance-type */ "../assets/dev/js/modules/imports/instance-type.js"));

var ArgsObject = /*#__PURE__*/function (_InstanceType) {
  (0, _inherits2.default)(ArgsObject, _InstanceType);

  var _super = (0, _createSuper2.default)(ArgsObject);

  /**
   * Function constructor().
   *
   * Create ArgsObject.
   *
   * @param {{}} args
   */
  function ArgsObject(args) {
    var _this;

    (0, _classCallCheck2.default)(this, ArgsObject);
    _this = _super.call(this);
    _this.args = args;
    return _this;
  }
  /**
   * Function requireArgument().
   *
   * Validate property in args.
   *
   * @param {string} property
   * @param {{}} args
   *
   * @throws {Error}
   *
   */


  (0, _createClass2.default)(ArgsObject, [{
    key: "requireArgument",
    value: function requireArgument(property) {
      var args = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.args;

      if (!args.hasOwnProperty(property)) {
        throw Error("".concat(property, " is required."));
      }
    }
    /**
     * Function requireArgumentType().
     *
     * Validate property in args using `type === typeof(args.whatever)`.
     *
     * @param {string} property
     * @param {string} type
     * @param {{}} args
     *
     * @throws {Error}
     *
     */

  }, {
    key: "requireArgumentType",
    value: function requireArgumentType(property, type) {
      var args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.args;
      this.requireArgument(property, args);

      if ((0, _typeof2.default)(args[property]) !== type) {
        throw Error("".concat(property, " invalid type: ").concat(type, "."));
      }
    }
    /**
     * Function requireArgumentInstance().
     *
     * Validate property in args using `args.whatever instanceof instance`.
     *
     * @param {string} property
     * @param {instanceof} instance
     * @param {{}} args
     *
     * @throws {Error}
     *
     */

  }, {
    key: "requireArgumentInstance",
    value: function requireArgumentInstance(property, instance) {
      var args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.args;
      this.requireArgument(property, args);

      if (!(args[property] instanceof instance)) {
        throw Error("".concat(property, " invalid instance."));
      }
    }
    /**
     * Function requireArgumentConstructor().
     *
     * Validate property in args using `type === args.whatever.constructor`.
     *
     * @param {string} property
     * @param {*} type
     * @param {{}} args
     *
     * @throws {Error}
     *
     */

  }, {
    key: "requireArgumentConstructor",
    value: function requireArgumentConstructor(property, type) {
      var args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : this.args;
      this.requireArgument(property, args);

      if (args[property].constructor !== type) {
        throw Error("".concat(property, " invalid constructor type."));
      }
    }
  }], [{
    key: "getInstanceType",
    value: function getInstanceType() {
      return 'ArgsObject';
    }
  }]);
  return ArgsObject;
}(_instanceType.default);

exports.default = ArgsObject;

/***/ }),

/***/ "../assets/dev/js/modules/imports/instance-type.js":
/*!*********************************************************!*\
  !*** ../assets/dev/js/modules/imports/instance-type.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _hasInstance = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/has-instance */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/has-instance.js"));

var _isArray = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js"));

__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var InstanceType = /*#__PURE__*/function () {
  function InstanceType() {
    var _this = this;

    (0, _classCallCheck2.default)(this, InstanceType);
    // Since anonymous classes sometimes do not get validated by babel, do it manually.
    var target = this instanceof InstanceType ? this.constructor : void 0;
    var prototypes = [];

    while (target.__proto__ && target.__proto__.name) {
      prototypes.push(target.__proto__);
      target = target.__proto__;
    }

    prototypes.reverse().forEach(function (proto) {
      return _this instanceof proto;
    });
  }

  (0, _createClass2.default)(InstanceType, null, [{
    key: _hasInstance.default,
    value: function value(target) {
      /**
       * This is function extending being called each time JS uses instanceOf, since babel use it each time it create new class
       * its give's opportunity to mange capabilities of instanceOf operator.
       * saving current class each time will give option later to handle instanceOf manually.
       */
      var result = (0, _get2.default)((0, _getPrototypeOf2.default)(InstanceType), _hasInstance.default, this).call(this, target); // Act normal when validate a class, which does not have instance type.

      if (target && !target.constructor.getInstanceType) {
        return result;
      }

      if (target) {
        if (!target.instanceTypes) {
          target.instanceTypes = [];
        }

        if (!result) {
          if (this.getInstanceType() === target.constructor.getInstanceType()) {
            result = true;
          }
        }

        if (result) {
          var name = this.getInstanceType === InstanceType.getInstanceType ? 'BaseInstanceType' : this.getInstanceType();

          if (-1 === target.instanceTypes.indexOf(name)) {
            target.instanceTypes.push(name);
          }
        }
      }

      if (!result && target) {
        // Check if the given 'target', is instance of known types.
        result = target.instanceTypes && (0, _isArray.default)(target.instanceTypes) && -1 !== target.instanceTypes.indexOf(this.getInstanceType());
      }

      return result;
    }
  }, {
    key: "getInstanceType",
    value: function getInstanceType() {
      elementorModules.ForceMethodImplementation();
    }
  }]);
  return InstanceType;
}();

exports.default = InstanceType;

/***/ }),

/***/ "../core/common/assets/js/api/core/backwards-compatibility.js":
/*!********************************************************************!*\
  !*** ../core/common/assets/js/api/core/backwards-compatibility.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _componentBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-base */ "../core/common/assets/js/api/modules/component-base.js"));

var BackwardsCompatibility = /*#__PURE__*/function () {
  function BackwardsCompatibility() {
    (0, _classCallCheck2.default)(this, BackwardsCompatibility);
  }

  (0, _createClass2.default)(BackwardsCompatibility, [{
    key: "ensureTab",
    value: function ensureTab(namespace, tabSlug) {
      var page = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';
      var component = $e.components.get(namespace);

      if (!component) {
        var Component = /*#__PURE__*/function (_ComponentBase) {
          (0, _inherits2.default)(Component, _ComponentBase);

          var _super = (0, _createSuper2.default)(Component);

          function Component() {
            (0, _classCallCheck2.default)(this, Component);
            return _super.apply(this, arguments);
          }

          (0, _createClass2.default)(Component, [{
            key: "getNamespace",
            value: function getNamespace() {
              return namespace;
            }
          }, {
            key: "renderTab",
            value: function renderTab(tab) {
              elementor.getPanelView().setPage(page).activateTab(tab);
            }
          }]);
          return Component;
        }(_componentBase.default);

        component = $e.components.register(new Component());
      }

      if (!component.hasTab(tabSlug) && elementor.config.tabs[tabSlug]) {
        component.addTab(tabSlug, {
          title: elementor.config.tabs[tabSlug]
        });
      }
    }
  }]);
  return BackwardsCompatibility;
}();

exports.default = BackwardsCompatibility;

/***/ }),

/***/ "../core/common/assets/js/api/core/backwards-compatibility/commands.js":
/*!*****************************************************************************!*\
  !*** ../core/common/assets/js/api/core/backwards-compatibility/commands.js ***!
  \*****************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var CommandsBackwardsCompatibility = /*#__PURE__*/function (_elementorModules$Mod) {
  (0, _inherits2.default)(CommandsBackwardsCompatibility, _elementorModules$Mod);

  var _super = (0, _createSuper2.default)(CommandsBackwardsCompatibility);

  function CommandsBackwardsCompatibility() {
    var _this;

    (0, _classCallCheck2.default)(this, CommandsBackwardsCompatibility);

    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }

    _this = _super.call.apply(_super, [this].concat(args));
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "on", function (eventName, callback) {
      if ('run' === eventName) {
        var componentName = _this.getConstructorID(); // Regex takes the first letter and convert it to lower case.


        componentName = componentName.replace(/^./, function (val) {
          return val.toLowerCase();
        });
        elementorCommon.helpers.softDeprecated("$e.".concat(componentName, ".on( 'run', ... )"), '3.0.0', "$e.".concat(componentName, ".on( 'run:before', ... )"));

        _this.onOrig('run:before', callback);

        return;
      }

      _this.onOrig(eventName, callback);
    });
    return _this;
  }

  (0, _createClass2.default)(CommandsBackwardsCompatibility, [{
    key: "__construct",
    value: function __construct() {
      this.onOrig = this.on;
    }
  }]);
  return CommandsBackwardsCompatibility;
}(elementorModules.Module);

exports.default = CommandsBackwardsCompatibility;

/***/ }),

/***/ "../core/common/assets/js/api/core/commands-internal.js":
/*!**************************************************************!*\
  !*** ../core/common/assets/js/api/core/commands-internal.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commands = _interopRequireDefault(__webpack_require__(/*! ./commands.js */ "../core/common/assets/js/api/core/commands.js"));

var CommandsInternal = /*#__PURE__*/function (_Commands) {
  (0, _inherits2.default)(CommandsInternal, _Commands);

  var _super = (0, _createSuper2.default)(CommandsInternal);

  function CommandsInternal() {
    (0, _classCallCheck2.default)(this, CommandsInternal);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(CommandsInternal, [{
    key: "error",
    value: function error(message) {
      throw Error('Commands internal: ' + message);
    }
  }]);
  return CommandsInternal;
}(_commands.default);

exports.default = CommandsInternal;

/***/ }),

/***/ "../core/common/assets/js/api/core/commands.js":
/*!*****************************************************!*\
  !*** ../core/common/assets/js/api/core/commands.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");

__webpack_require__(/*! core-js/modules/es6.array.iterator.js */ "../node_modules/core-js/modules/es6.array.iterator.js");

__webpack_require__(/*! core-js/modules/web.dom.iterable.js */ "../node_modules/core-js/modules/web.dom.iterable.js");

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commands = _interopRequireDefault(__webpack_require__(/*! ./backwards-compatibility/commands */ "../core/common/assets/js/api/core/backwards-compatibility/commands.js"));

var Commands = /*#__PURE__*/function (_CommandsBackwardsCom) {
  (0, _inherits2.default)(Commands, _CommandsBackwardsCom);

  var _super = (0, _createSuper2.default)(Commands);

  /**
   * Function constructor().
   *
   * Create `$e.commands` API.
   *
   * @param {{}} args
   */
  function Commands() {
    var _this;

    (0, _classCallCheck2.default)(this, Commands);

    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }

    _this = _super.call.apply(_super, [this].concat(args));
    _this.current = {};
    _this.currentArgs = {};
    _this.currentTrace = [];
    _this.commands = {};
    _this.components = {};
    _this.classes = {};
    return _this;
  }
  /**
   * @param id
   * @returns {CommandBase}
   */


  (0, _createClass2.default)(Commands, [{
    key: "getCommandClass",
    value: function getCommandClass(id) {
      return this.classes[id];
    }
    /**
     * Function getAll().
     *
     * Receive all loaded commands.
     *
     * @returns {string[]}
     */

  }, {
    key: "getAll",
    value: function getAll() {
      return (0, _keys.default)(this.commands).sort();
    }
    /**
     * Function register().
     *
     * Register new command.
     *
     * @param {ComponentBase|string} component
     * @param {string} command
     * @param {function()} callback
     *
     * @returns {Commands}
     */

  }, {
    key: "register",
    value: function register(component, command, callback) {
      var _this2 = this;

      var namespace;

      if ('string' === typeof component) {
        namespace = component;
        component = $e.components.get(namespace);

        if (!component) {
          this.error("'".concat(namespace, "' component is not exist."));
        }
      } else {
        namespace = component.getNamespace();
      }

      var fullCommand = namespace + (command ? '/' + command : '');

      if (this.commands[fullCommand]) {
        this.error("`".concat(fullCommand, "` is already registered."));
      }

      this.commands[fullCommand] = callback;
      this.components[fullCommand] = namespace;
      var shortcuts = component.getShortcuts(),
          shortcut = shortcuts[command];

      if (shortcut) {
        shortcut.command = fullCommand;

        shortcut.callback = function (event) {
          return _this2.runShortcut(fullCommand, event);
        };

        $e.shortcuts.register(shortcut.keys, shortcut);
      }

      return this;
    }
  }, {
    key: "unregister",
    value: function unregister(component, command) {
      var namespace;

      if ('string' === typeof component) {
        namespace = component;
        component = $e.components.get(namespace);

        if (!component) {
          this.error("'".concat(namespace, "' component is not exist."));
        }
      } else {
        namespace = component.getNamespace();
      }

      var fullCommand = namespace + (command ? '/' + command : '');

      if (!this.commands[fullCommand]) {
        this.error("`".concat(fullCommand, "` not exist."));
      }

      delete this.commands[fullCommand];
      delete this.components[fullCommand];
      var shortcuts = component.getShortcuts(),
          shortcut = shortcuts[command];

      if (shortcut) {
        $e.shortcuts.unregister(shortcut.keys, shortcut);
      }

      return this;
    }
    /**
     * Function getComponent().
     *
     * Receive Component of the command.
     *
     * @param {string} command
     *
     * @returns {Component}
     */

  }, {
    key: "getComponent",
    value: function getComponent(command) {
      var namespace = this.components[command];
      return $e.components.get(namespace);
    }
    /**
     * Function is().
     *
     * Checks if current running command is the same parameter command.
     *
     * @param {string} command
     *
     * @returns {boolean}
     */

  }, {
    key: "is",
    value: function is(command) {
      var component = this.getComponent(command);

      if (!component) {
        return false;
      }

      return command === this.current[component.getRootContainer()];
    }
    /**
     * Function isCurrentFirstTrace().
     *
     * Checks if parameter command is the first command in trace that currently running.
     *
     * @param {string} command
     *
     * @returns {boolean}
     */

  }, {
    key: "isCurrentFirstTrace",
    value: function isCurrentFirstTrace(command) {
      return command === this.getCurrentFirstTrace();
    }
    /**
     * Function getCurrent().
     *
     * Receive currently running components and its commands.
     *
     * @param {string} container
     *
     * @returns {{}|boolean|*}
     */

  }, {
    key: "getCurrent",
    value: function getCurrent() {
      var container = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';

      if (container) {
        if (!this.current[container]) {
          return false;
        }

        return this.current[container];
      }

      return this.current;
    }
    /**
     * Function getCurrentArgs().
     *
     * Receive currently running command args.
     *
     * @param {string} container
     *
     * @returns {{}|boolean|*}
     */

  }, {
    key: "getCurrentArgs",
    value: function getCurrentArgs() {
      var container = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';

      if (container) {
        if (!this.currentArgs[container]) {
          return false;
        }

        return this.currentArgs[container];
      }

      return this.currentArgs;
    }
    /**
     * Function getCurrentFirst().
     *
     * Receive first command that currently running.
     *
     * @returns {string}
     */

  }, {
    key: "getCurrentFirst",
    value: function getCurrentFirst() {
      return (0, _values.default)(this.current)[0];
    }
    /**
     * Function getCurrentLast().
     *
     * Receive last command that currently running.
     *
     * @returns {string}
     */

  }, {
    key: "getCurrentLast",
    value: function getCurrentLast() {
      var current = (0, _values.default)(this.current);
      return current[current.length - 1];
    }
    /**
     * Function getCurrentFirstTrace().
     *
     * Receive first command in trace that currently running
     *
     * @returns {string}
     */

  }, {
    key: "getCurrentFirstTrace",
    value: function getCurrentFirstTrace() {
      return this.currentTrace[0];
    }
    /**
     * Function beforeRun().
     *
     * @param {string} command
     * @param {} args
     *
     * @returns {boolean} dependency result
     */

  }, {
    key: "beforeRun",
    value: function beforeRun(command) {
      var args = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};

      if (!this.commands[command]) {
        this.error("`".concat(command, "` not found."));
      }

      this.currentTrace.push(command);
      return this.getComponent(command).dependency(command, args);
    }
    /**
     * Function run().
     *
     * Runs a command.
     *
     * @param {string} command
     * @param {{}} args
     *
     * @returns {boolean|*} results
     */

  }, {
    key: "run",
    value: function run(command) {
      var args = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};

      if (!this.beforeRun(command, args)) {
        return false;
      }

      var component = this.getComponent(command),
          container = component.getRootContainer();
      this.current[container] = command;
      this.currentArgs[container] = args;
      this.trigger('run:before', component, command, args);

      if (args.onBefore) {
        args.onBefore.apply(component, [args]);
      }

      var results = this.commands[command].apply(component, [args]); // TODO: Consider add results to `$e.devTools`.

      if (args.onAfter) {
        args.onAfter.apply(component, [args, results]);
      }

      this.trigger('run:after', component, command, args, results);
      this.afterRun(command);

      if (false === args.returnValue) {
        return true;
      }

      return results;
    }
    /**
     * Function runShortcut().
     *
     * Run shortcut.
     *
     * It's separated in order to allow override.
     *
     * @param {string} command
     * @param {*} event
     *
     * @returns {boolean|*}
     */

  }, {
    key: "runShortcut",
    value: function runShortcut(command, event) {
      return this.run(command, event);
    }
    /**
     * Function afterRun().
     *
     * Method fired after the command runs.
     *
     * @param {string} command
     */

  }, {
    key: "afterRun",
    value: function afterRun(command) {
      var component = this.getComponent(command),
          container = component.getRootContainer();
      this.currentTrace.pop();
      delete this.current[container];
      delete this.currentArgs[container];
    }
    /**
     * Function error().
     *
     * Throws error.
     *
     * @throw {Error}
     *
     * @param {string} message
     */

  }, {
    key: "error",
    value: function error(message) {
      throw Error("Commands: ".concat(message));
    }
  }]);
  return Commands;
}(_commands.default);

exports.default = Commands;

/***/ }),

/***/ "../core/common/assets/js/api/core/components.js":
/*!*******************************************************!*\
  !*** ../core/common/assets/js/api/core/components.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _default = /*#__PURE__*/function (_elementorModules$Mod) {
  (0, _inherits2.default)(_default, _elementorModules$Mod);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    var _this;

    (0, _classCallCheck2.default)(this, _default);

    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }

    _this = _super.call.apply(_super, [this].concat(args));
    _this.components = {};
    _this.activeComponents = {};
    return _this;
  }

  (0, _createClass2.default)(_default, [{
    key: "getAll",
    value: function getAll() {
      return (0, _keys.default)(this.components).sort();
    }
  }, {
    key: "register",
    value: function register(component) {
      if (this.components[component.getNamespace()]) {
        return;
      }

      component.registerAPI();
      this.components[component.getNamespace()] = component;
      return component;
    }
    /**
     * @returns {Component}
     */

  }, {
    key: "get",
    value: function get(id) {
      return this.components[id];
    }
  }, {
    key: "getActive",
    value: function getActive() {
      return this.activeComponents;
    }
  }, {
    key: "activate",
    value: function activate(namespace) {
      // Add as last.
      this.inactivate(namespace);
      this.activeComponents[namespace] = true;
    }
  }, {
    key: "inactivate",
    value: function inactivate(namespace) {
      delete this.activeComponents[namespace];
    }
  }, {
    key: "isActive",
    value: function isActive(namespace) {
      return !!this.activeComponents[namespace];
    }
  }]);
  return _default;
}(elementorModules.Module);

exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/api/core/data.js":
/*!*************************************************!*\
  !*** ../core/common/assets/js/api/core/data.js ***!
  \*************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.ALLMETHODS = exports.DELETABLE = exports.EDITABLE = exports.CREATABLE = exports.READABLE = void 0;

var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

__webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");

__webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

__webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");

__webpack_require__(/*! core-js/modules/es6.regexp.to-string.js */ "../node_modules/core-js/modules/es6.regexp.to-string.js");

__webpack_require__(/*! core-js/modules/es6.regexp.constructor.js */ "../node_modules/core-js/modules/es6.regexp.constructor.js");

var _assign = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/assign */ "../node_modules/@babel/runtime-corejs2/core-js/object/assign.js"));

var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _stringify = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/json/stringify */ "../node_modules/@babel/runtime-corejs2/core-js/json/stringify.js"));

var _promise = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/promise */ "../node_modules/@babel/runtime-corejs2/core-js/promise.js"));

var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/asyncToGenerator */ "../node_modules/@babel/runtime-corejs2/helpers/asyncToGenerator.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _argsObject = _interopRequireDefault(__webpack_require__(/*! elementor-assets-js/modules/imports/args-object */ "../assets/dev/js/modules/imports/args-object.js"));

var _commands = _interopRequireDefault(__webpack_require__(/*! ./commands.js */ "../core/common/assets/js/api/core/commands.js"));

var _cache = _interopRequireDefault(__webpack_require__(/*! ./data/cache */ "../core/common/assets/js/api/core/data/cache.js"));

/**
 * @typedef {('create'|'delete'|'get'|'update'|'options')} DataTypes
 */

/**
 * @typedef {{}} RequestData
 * @property {ComponentBase} component
 * @property {string} command
 * @property {string} endpoint
 * @property {DataTypes} [type]
 * @property {{}} [args]
 * @property {number} [timestamp]
 * @property {('hit'|'miss')} [cache]
 */

/**
 * @typedef {object} ExtractedCommand
 * @property {string} command
 * @property {object} args
 */
// TODO: Return it from the server. Original at WP_REST_Server.
var READABLE = ['GET'],
    CREATABLE = ['POST'],
    EDITABLE = ['POST', 'PUT', 'PATCH'],
    DELETABLE = ['DELETE'],
    ALLMETHODS = ['GET', 'POST', 'PUT', 'PATCH', 'DELETE'];
exports.ALLMETHODS = ALLMETHODS;
exports.DELETABLE = DELETABLE;
exports.EDITABLE = EDITABLE;
exports.CREATABLE = CREATABLE;
exports.READABLE = READABLE;

var Data = /*#__PURE__*/function (_Commands) {
  (0, _inherits2.default)(Data, _Commands);

  var _super = (0, _createSuper2.default)(Data);

  function Data() {
    var _this;

    var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
    (0, _classCallCheck2.default)(this, Data);
    _this = _super.call(this, args);
    _this.args = (0, _assign.default)(args, {
      namespace: 'elementor',
      version: '1'
    });
    _this.cache = new _cache.default((0, _assertThisInitialized2.default)(_this));
    _this.validatedRequests = {};
    _this.commandFormats = {};
    _this.baseEndpointAddress = '';
    var _this$args = _this.args,
        namespace = _this$args.namespace,
        version = _this$args.version;
    _this.baseEndpointAddress = "".concat(elementorCommon.config.urls.rest).concat(namespace, "/v").concat(version, "/");
    return _this;
  }
  /**
   * Function getHTTPMethod().
   *
   * Returns HTTP Method by type.
   *
   * @param {DataTypes} type
   *
   * @returns {string|boolean}
   */


  (0, _createClass2.default)(Data, [{
    key: "getHTTPMethod",
    value: function getHTTPMethod(type) {
      switch (type) {
        case 'create':
          return 'POST';

        case 'delete':
          return 'DELETE';

        case 'get':
          return 'GET';

        case 'update':
          return 'PUT';

        case 'options':
          return 'OPTIONS';
      }

      return false;
    }
    /**
     * Function getAllowedMethods().
     *
     * Returns allowed HTTP methods by type.
     *
     * @param {DataTypes} type
     *
     * @returns {[string]|boolean}
     */

  }, {
    key: "getAllowedMethods",
    value: function getAllowedMethods(type) {
      switch (type) {
        case 'create':
          return CREATABLE;

        case 'delete':
          return DELETABLE;

        case 'get':
          return READABLE;

        case 'update':
          return EDITABLE;

        case 'options':
          return ['OPTIONS'];
      }

      return false;
    }
    /**
     * Function commandToEndpoint().
     *
     * Convert command to endpoint.
     *
     * For example `component/command/{arg}` => `controller/endpoint/8`.
     *
     * TODO: Find a better solution.
     *
     * @param {string} command
     * @param {{}} args
     * @param {string|null} [format]
     *
     * @returns {string} endpoint
     */

  }, {
    key: "commandToEndpoint",
    value: function commandToEndpoint(command, args) {
      var format = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
      var endpoint = command;
      var argsQueryLength = args !== null && args !== void 0 && args.query ? (0, _values.default)(args.query).length : 0;

      if (argsQueryLength && format && format.includes('/{')) {
        // Means command includes magic query arguments ( controller/endpoint/{whatever} ).
        var magicParams = format.split('/').filter(function (str) {
          return '{' === str.charAt(0);
        });
        magicParams.forEach(function (param) {
          // Remove the '{', '}'.
          param = param.replace('{', '');
          param = param.replace('}', '');
          var formatted = (0, _entries.default)(args.query).find(function (_ref) {
            var _ref2 = (0, _slicedToArray2.default)(_ref, 1),
                key = _ref2[0];

            return key === param;
          });

          if (!formatted) {
            return;
          }

          var key = formatted[0],
              value = formatted[1].toString(); // Replace magic params with values.

          format = format.replace(new RegExp('{' + param + '}', 'g'), value);
          delete args.query[key];
        });
      }

      if (format) {
        endpoint = format;
      } // If requested magic param does not exist in args, need to remove it to have fixed endpoint.
      // eg: 'documents/{documentId}/elements/{elementId}' and args { documentId: 4123 }.
      // result: 'documents/4123/elements'


      if (format && endpoint.includes('/{')) {
        endpoint = endpoint.substring(0, endpoint.indexOf('/{'));
      }

      if (args.query && (0, _values.default)(args.query).length) {
        // Sorting since the endpoint later will be used as key to store the cache.
        var queryEntries = (0, _entries.default)(args.query).sort(function (_ref3, _ref4) {
          var _ref5 = (0, _slicedToArray2.default)(_ref3, 1),
              aKey = _ref5[0];

          var _ref6 = (0, _slicedToArray2.default)(_ref4, 1),
              bKey = _ref6[0];

          return aKey - bKey;
        } // Sort by param name.
        ); // `args.query` will become a part of GET params.

        if (queryEntries.length) {
          endpoint += '?';
          queryEntries.forEach(function (_ref7) {
            var _ref8 = (0, _slicedToArray2.default)(_ref7, 2),
                name = _ref8[0],
                value = _ref8[1];

            // Replace the character '/' with the encoded version,
            // mostly because when saving this endpoint value to the cache it splits the url base on the '/' character.
            value = "".concat(value).replace(/\//g, '%2F');
            endpoint += name + '=' + value + '&';
          });
        } // If last character is '&' remove it.


        endpoint = endpoint.replace(/&$/, '');
      }

      return endpoint;
    }
    /**
     * Function commandExtractArgs().
     *
     * If the command have query convert it to args.
     *
     * @param {string} command
     * @param {object} args
     *
     * @returns {ExtractedCommand} command
     */

  }, {
    key: "commandExtractArgs",
    value: function commandExtractArgs(command) {
      var _command;

      var args = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};

      if ((_command = command) !== null && _command !== void 0 && _command.includes('?')) {
        if (!args.query) {
          args.query = {};
        }

        var commandParts = command.split('?'),
            pureCommand = commandParts[0],
            queryString = commandParts[1],
            query = new URLSearchParams(queryString);
        (0, _assign.default)(args.query, Object.fromEntries(query));
        command = pureCommand;
      }

      return {
        command: command,
        args: args
      };
    }
    /**
     * Function validateRequestData().
     *
     * Validate request data requirements.
     *
     * @param {RequestData} requestData
     * @param {boolean} [requireArgsData]
     */

  }, {
    key: "validateRequestData",
    value: function validateRequestData(requestData) {
      var requireArgsData = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;

      // Do not validate if its already valid.
      if (requestData.timestamp && this.validatedRequests[requestData.timestamp]) {
        return;
      }

      var argsObject = new _argsObject.default(requestData);
      argsObject.requireArgument('component');
      argsObject.requireArgumentType('command', 'string');
      argsObject.requireArgumentType('endpoint', 'string');

      if (requireArgsData) {
        argsObject.requireArgumentType('data', 'object', requestData.args);
      } // Ensure timestamp.


      if (!requestData.timestamp) {
        requestData.timestamp = new Date().getTime();
      }

      this.validatedRequests[requestData.timestamp] = true;
    }
    /**
     * Function prepareHeaders().
     *
     * Prepare the headers for each request.
     *
     * @param {RequestData} requestData
     *
     * @returns {{}} params
     */

  }, {
    key: "prepareHeaders",
    value: function prepareHeaders(requestData) {
      var _requestData$args, _requestData$args$opt;

      /* global wpApiSettings */
      var type = requestData.type,
          nonce = wpApiSettings.nonce,
          params = {
        signal: (_requestData$args = requestData.args) === null || _requestData$args === void 0 ? void 0 : (_requestData$args$opt = _requestData$args.options) === null || _requestData$args$opt === void 0 ? void 0 : _requestData$args$opt.signal,
        credentials: 'include' // cookies is required for wp reset.

      },
          headers = {
        'X-WP-Nonce': nonce
      };
      /**
       * Translate:
       * 'create, delete, get, update' to HTTP Methods:
       * 'GET, POST, PUT, PATCH, DELETE'
       */

      var allowedMethods = this.getAllowedMethods(type),
          method = this.getHTTPMethod(type);

      if ('GET' === method) {
        (0, _assign.default)(params, {
          headers: headers
        });
      } else if (allowedMethods) {
        var _requestData$args2;

        if (['POST', 'PUT'].includes(method) && !((_requestData$args2 = requestData.args) !== null && _requestData$args2 !== void 0 && _requestData$args2.data)) {
          throw Error('Invalid requestData.args.data');
        }

        (0, _assign.default)(headers, {
          'Content-Type': 'application/json'
        });
        (0, _assign.default)(params, {
          method: method,
          headers: headers,
          body: (0, _stringify.default)(requestData.args.data)
        });
      } else {
        throw Error("Invalid type: '".concat(type, "'"));
      }

      return params;
    }
    /**
     * Function prepareEndpoint().
     *
     * This method response for building a final endpoint,
     * the main problem is with plain permalink mode + command with query params that creates a weird url,
     * the current method should fix it.
     *
     * @param {string} endpoint
     *
     * @returns {string} endpoint
     */

  }, {
    key: "prepareEndpoint",
    value: function prepareEndpoint(endpoint) {
      var splitUrl = endpoint.split('?'),
          path = splitUrl.shift();
      var url = this.baseEndpointAddress + path;

      if (splitUrl.length) {
        var separator = url.includes('?') ? '&' : '?';
        url += separator + splitUrl.pop();
      }

      return url;
    }
    /**
     * Function fetch().
     *
     * @param {RequestData} requestData
     * @param {function(input: RequestInfo, init?) : Promise<Response> } [fetchAPI]
     *
     * @returns {Promise<Response>}
     */

  }, {
    key: "fetch",
    value: function fetch(requestData) {
      var _requestData$args$opt2,
          _this2 = this;

      var fetchAPI = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : window.fetch;
      requestData.cache = 'miss';
      var params = this.prepareHeaders(requestData),
          refresh = (_requestData$args$opt2 = requestData.args.options) === null || _requestData$args$opt2 === void 0 ? void 0 : _requestData$args$opt2.refresh,
          getCache = 'get' === requestData.type && !refresh,
          saveCache = ['create', 'get'].includes(requestData.type) && !refresh;

      if (getCache) {
        var cachePromise = this.cache.getAsync(requestData);

        if (cachePromise) {
          return cachePromise;
        }
      }

      return new _promise.default( /*#__PURE__*/function () {
        var _ref9 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(resolve, reject) {
          var endpoint, request, response;
          return _regenerator.default.wrap(function _callee2$(_context2) {
            while (1) {
              switch (_context2.prev = _context2.next) {
                case 0:
                  _context2.prev = 0;
                  endpoint = _this2.prepareEndpoint(requestData.endpoint);
                  request = fetchAPI(endpoint, params);
                  _context2.next = 5;
                  return request.then( /*#__PURE__*/function () {
                    var _ref10 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(_response) {
                      return _regenerator.default.wrap(function _callee$(_context) {
                        while (1) {
                          switch (_context.prev = _context.next) {
                            case 0:
                              if (_response.ok) {
                                _context.next = 6;
                                break;
                              }

                              if (!_response.headers.get('content-type').includes('application/json')) {
                                _context.next = 5;
                                break;
                              }

                              _context.next = 4;
                              return _response.json();

                            case 4:
                              _response = _context.sent;

                            case 5:
                              throw _response;

                            case 6:
                              return _context.abrupt("return", _response.json());

                            case 7:
                            case "end":
                              return _context.stop();
                          }
                        }
                      }, _callee);
                    }));

                    return function (_x3) {
                      return _ref10.apply(this, arguments);
                    };
                  }());

                case 5:
                  response = _context2.sent;

                  // At this point, it got the resolved response from remote.
                  // So load cache, and resolve it.
                  if (saveCache) {
                    _this2.cache.set(requestData, response);
                  }

                  resolve(response);
                  _context2.next = 13;
                  break;

                case 10:
                  _context2.prev = 10;
                  _context2.t0 = _context2["catch"](0);
                  reject(_context2.t0);

                case 13:
                case "end":
                  return _context2.stop();
              }
            }
          }, _callee2, null, [[0, 10]]);
        }));

        return function (_x, _x2) {
          return _ref9.apply(this, arguments);
        };
      }());
    }
    /**
     * Function getCache().
     *
     * @param {ComponentBase} component
     * @param {string} command
     * @param {{}} query
     *
     * @returns {{}}
     */

  }, {
    key: "getCache",
    value: function getCache(component, command) {
      var query = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
      var args = {
        query: query
      };
      return this.cache.get({
        endpoint: this.commandToEndpoint(command, args, this.commandFormats[command]),
        component: component,
        command: command,
        args: args
      });
    }
    /**
     * Function setCache().
     *
     * @param {ComponentBase} component
     * @param {string} command
     * @param {{}} query
     * @param {*} data
     */

  }, {
    key: "setCache",
    value: function setCache(component, command, query, data) {
      var args = {
        query: query
      };
      this.cache.set({
        endpoint: this.commandToEndpoint(command, args, this.commandFormats[command]),
        component: component,
        command: command,
        args: args
      }, data);
    }
    /**
     * Function updateCache().
     *
     * The difference between 'setCache' and 'updateCache' is update will only modify exist values.
     * and 'setCache' will create or update.
     *
     * @param {ComponentBase} component
     * @param {string} command
     * @param {{}} query
     * @param {*} data
     */

  }, {
    key: "updateCache",
    value: function updateCache(component, command, query, data) {
      var args = {
        query: query,
        data: data
      };
      this.cache.update({
        endpoint: this.commandToEndpoint(command, args, this.commandFormats[command]),
        component: component,
        command: command,
        args: args
      });
    }
    /**
     * Function deleteCache().
     *
     * @param {ComponentBase} component
     * @param {string} command
     * @param {{}} query
     */

  }, {
    key: "deleteCache",
    value: function deleteCache(component, command) {
      var query = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
      var args = {
        query: query
      };
      this.cache.delete({
        endpoint: this.commandToEndpoint(command, args, this.commandFormats[command]),
        component: component,
        command: command,
        args: args
      });
    }
    /**
     * Function registerFormat().
     *
     * Register's format for each command.
     *
     * @param {string} command
     * @param {string} format
     */

  }, {
    key: "registerFormat",
    value: function registerFormat(command, format) {
      this.commandFormats[command] = format;
    }
    /**
     * Function create().
     *
     * Run a command, that will be translated as endpoint for creating new data.
     *
     * @param {string} command
     * @param {*} data
     * @param {{}} query
     * @param {{}} options
     *
     * @returns {*} result
     */

  }, {
    key: "create",
    value: function create(command, data) {
      var query = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
      var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
      return this.run('create', command, {
        query: query,
        options: options,
        data: data
      });
    }
    /**
     * Function delete().
     *
     * Run a command, that will be translated as endpoint for deleting data.
     *
     * @param {string} command
     * @param {{}} query
     * @param {{}} options
     *
     * @returns {*} result
     */

  }, {
    key: "delete",
    value: function _delete(command) {
      var query = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
      var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
      return this.run('delete', command, {
        query: query,
        options: options
      });
    }
    /**
     * Function get().
     *
     * Run a command, that will be translated as endpoint for getting data.
     *
     * @param {string} command
     * @param {{}} query
     * @param {{}} options
     *
     * @returns {*} result
     */

  }, {
    key: "get",
    value: function get(command) {
      var query = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
      var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
      return this.run('get', command, {
        query: query,
        options: options
      });
    }
    /**
     * Function update().
     *
     * Run a command, that will be translated as endpoint for updating data.
     *
     * @param {string} command
     * @param {*} data
     * @param {{}} query
     * @param {{}} options
     *
     * @returns {*} result
     */

  }, {
    key: "update",
    value: function update(command, data) {
      var query = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
      var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
      return this.run('update', command, {
        query: query,
        options: options,
        data: data
      });
    }
    /**
     * Function options().
     *
     * Run a command, that will be translated as endpoint for requesting options/information about specific endpoint.
     *
     * @param {string} command
     * @param {{}} query
     * @param {{}} options
     *
     * @returns {*} result
     */

  }, {
    key: "options",
    value: function options(command, query) {
      var _options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};

      return this.run('options', command, {
        query: query,
        options: _options
      });
    }
  }, {
    key: "register",
    value: function register(component, command, callback) {
      (0, _get2.default)((0, _getPrototypeOf2.default)(Data.prototype), "register", this).call(this, component, command, callback);
      var fullCommandName = component.getNamespace() + '/' + command,
          commandInstance = $e.commands.getCommandClass(fullCommandName),
          format = commandInstance !== null && commandInstance !== void 0 && commandInstance.getEndpointFormat ? commandInstance.getEndpointFormat() : false;

      if (format) {
        $e.data.registerFormat(fullCommandName, format);
      }

      return this;
    }
    /**
     * @override
     *
     * TODO: Add JSDOC typedef for args ( query and options ).
     *
     * @param {DataTypes} type
     * @param {string} command
     * @param {{}} args
     */

  }, {
    key: "run",
    value: function run(type, command, args) {
      args.options.type = type;

      var _this$commandExtractA = this.commandExtractArgs(command, args);

      command = _this$commandExtractA.command;
      args = _this$commandExtractA.args;
      return (0, _get2.default)((0, _getPrototypeOf2.default)(Data.prototype), "run", this).call(this, command, args);
    }
  }, {
    key: "error",
    value: function error(message) {
      throw Error('Data commands: ' + message);
    }
  }]);
  return Data;
}(_commands.default);

exports.default = Data;

/***/ }),

/***/ "../core/common/assets/js/api/core/data/cache.js":
/*!*******************************************************!*\
  !*** ../core/common/assets/js/api/core/data/cache.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");

__webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));

var _promise = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/promise */ "../node_modules/@babel/runtime-corejs2/core-js/promise.js"));

var _assign = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/assign */ "../node_modules/@babel/runtime-corejs2/core-js/object/assign.js"));

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/asyncToGenerator */ "../node_modules/@babel/runtime-corejs2/helpers/asyncToGenerator.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _localStorage = _interopRequireDefault(__webpack_require__(/*! ./storages/local-storage */ "../core/common/assets/js/api/core/data/storages/local-storage.js"));

/**
 * TODO: Search common logic, create functions to reduce code size.
 */
var Cache = /*#__PURE__*/function () {
  /**
   * Function constructor().
   *
   * Create cache.
   *
   * @param {Data} manager
   */
  function Cache(manager) {
    (0, _classCallCheck2.default)(this, Cache);
    this.manager = manager;
    this.storage = new _localStorage.default();
  }
  /**
   * Function getAsync().
   *
   * Receive from cache. the difference between getAsync() and get() is that receive return it as promise...
   * to fake fetch mechanism.
   *
   * @param {RequestData} requestData
   *
   * @return {(Promise|boolean)}
   */


  (0, _createClass2.default)(Cache, [{
    key: "getAsync",
    value: function getAsync(requestData) {
      var data = this.get(requestData);

      if (null !== data) {
        // If data comes from cache, add 'cache = hit' to requestData.
        requestData.cache = 'hit';
        return new _promise.default( /*#__PURE__*/function () {
          var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(resolve) {
            return _regenerator.default.wrap(function _callee$(_context) {
              while (1) {
                switch (_context.prev = _context.next) {
                  case 0:
                    resolve(data);

                  case 1:
                  case "end":
                    return _context.stop();
                }
              }
            }, _callee);
          }));

          return function (_x) {
            return _ref.apply(this, arguments);
          };
        }());
      } // TODO: Check if possible, always return promise and reject it.


      return false;
    }
    /**
     * Function set().
     *
     * set data to cache.
     *
     * The difference between set() and update() is that set, will modify the data anyway...
     * when update() will only modify exist objects/values.
     *
     * @param {RequestData} requestData
     * @param {*} data
     */

  }, {
    key: "set",
    value: function set(requestData, data) {
      $e.data.validateRequestData(requestData);
      var componentName = requestData.component.getNamespace(),
          pureEndpoint = requestData.endpoint.replace(componentName + '/', ''),
          pureEndpointParts = pureEndpoint.split('/');
      var newData = {}; // Example of working with reaming endpoint part(s) can be found at 'cache.spec.js' test: 'load(): deep'.
      // Analyze reaming endpoint.

      if (pureEndpointParts.length && pureEndpoint !== componentName) {
        // Using reaming endpoint parts, to build new data object.
        var result = pureEndpointParts.reduce(function (accumulator, pureEndpointPart) {
          accumulator[pureEndpointPart] = {};
          return accumulator[pureEndpointPart];
        }, newData); // 'result' is equal to 'newData' with a deeper pointer, build based on 'pureEndpointParts' ( will effect newData ).

        (0, _assign.default)(result, data);
      } else {
        newData = data;
      }

      var oldData = this.storage.getItem(componentName); // When have old data, merge it recursively with newData using jQuery.extend().

      if (oldData !== null) {
        newData = jQuery.extend(true, oldData, newData);
      }

      this.storage.setItem(componentName, newData);
    }
    /**
     * Function get().
     *
     * Get from exist storage.
     *
     * @param {RequestData} requestData
     *
     * @return {{}}
     */

  }, {
    key: "get",
    value: function get(requestData) {
      $e.data.validateRequestData(requestData);
      var componentName = requestData.component.getNamespace(),
          componentData = this.storage.getItem(componentName);

      if (componentData !== null) {
        if (componentName === requestData.endpoint) {
          return componentData;
        } // Example of working with reaming endpoint part(s) can be found at 'cache.spec.js' test: 'get(): complex'.
        // Analyze reaming endpoint (Using reduce over endpoint parts, build the right index).


        var pureEndpoint = requestData.endpoint.replace(requestData.component.getNamespace() + '/', ''),
            pureEndpointParts = pureEndpoint.split('/'),
            result = pureEndpointParts.reduce(function (accumulator, endpointPart) {
          if (accumulator && accumulator[endpointPart]) {
            return accumulator[endpointPart];
          }
        }, componentData); // Since $e.data.cache.receive will reject only if null is the result.

        return result || null;
      }

      return null;
    }
    /**
     * Function update().
     *
     * Update only already exist storage, runs over all storage
     *
     * @param {RequestData} requestData
     *
     * @return {boolean} is updated
     */

  }, {
    key: "update",
    value: function update(requestData) {
      $e.data.validateRequestData(requestData, true);
      var endpoint = requestData.endpoint;
      var response = {}; // Simulate response from cache.

      (0, _entries.default)(this.storage.getAll()).forEach(function (_ref2) {
        var _ref3 = (0, _slicedToArray2.default)(_ref2, 2),
            endpointKey = _ref3[0],

        /*string*/
        endpointValue = _ref3[1];

        if (endpointValue && endpoint.includes(endpointKey)) {
          // Assuming it is a specific endpoint.
          var oldData = endpointValue,
              pureEndpoint = requestData.endpoint.replace(requestData.component.getNamespace() + '/', ''),
              pureEndpointParts = pureEndpoint.split('/'),
              isComponentUpdate = 1 === pureEndpointParts.length && endpointKey === requestData.endpoint && endpointKey === requestData.component.getNamespace(); // Component update or specific update?

          if (isComponentUpdate) {
            response = jQuery.extend(true, oldData, requestData.args.data);
          } else {
            var oldSpecificData = pureEndpointParts.reduce(function (accumulator, pureEndpointPart) {
              return accumulator[pureEndpointPart];
            }, oldData);
            response = jQuery.extend(true, oldSpecificData, requestData.args.data);
          }
        }
      }); // If response not found.

      if (0 === (0, _values.default)(response).length) {
        return false;
      } // Update cache.


      this.set(requestData, response);
      return true;
    }
    /**
     * Function delete().
     *
     * Delete endpoint from storage.
     *
     * @param {RequestData} requestData
     *
     * @return {boolean} is deleted
     */

  }, {
    key: "delete",
    value: function _delete(requestData) {
      $e.data.validateRequestData(requestData);
      var result = false;
      var componentName = requestData.component.getNamespace();

      if (componentName !== requestData.endpoint) {
        var oldData = this.storage.getItem(componentName),
            newData = {};

        if (null === oldData) {
          return false;
        }

        var pureEndpoint = requestData.endpoint.replace(componentName + '/', ''),
            pureEndpointParts = pureEndpoint.split('/'),
            lastEndpointPart = pureEndpointParts[pureEndpointParts.length - 1];
        pureEndpointParts.reduce(function (accumulator, pureEndpointPart) {
          if (pureEndpointPart === lastEndpointPart) {
            // Null, means delete.
            accumulator[pureEndpointPart] = null;
          } else {
            accumulator[pureEndpointPart] = {};
          }

          return accumulator[pureEndpointPart];
        }, newData);

        if ((0, _keys.default)(oldData).length) {
          var deleteKeys = function deleteKeys(target, nullsObject) {
            if (nullsObject) {
              (0, _keys.default)(nullsObject).forEach(function (key) {
                if (nullsObject[key] && 'object' === (0, _typeof2.default)(nullsObject[key])) {
                  deleteKeys(target[key], nullsObject[key]);
                } else if (null === nullsObject[key]) {
                  delete target[key];
                  result = true;
                }
              });
            } else {
              // Means need to clear all the object.
              (0, _keys.default)(target).forEach(function (key) {
                return delete target[key];
              });
            }

            return target;
          };

          this.storage.setItem(componentName, deleteKeys(oldData, newData));
        }
      } else {
        for (var key in this.storage.getAll()) {
          if (key === requestData.endpoint) {
            this.storage.removeItem(requestData.endpoint);
            result = true;
            break;
          }
        }
      }

      return result;
    }
  }]);
  return Cache;
}();

exports.default = Cache;

/***/ }),

/***/ "../core/common/assets/js/api/core/data/storages/base-prefix-storage.js":
/*!******************************************************************************!*\
  !*** ../core/common/assets/js/api/core/data/storages/base-prefix-storage.js ***!
  \******************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es6.string.starts-with.js */ "../node_modules/core-js/modules/es6.string.starts-with.js");

__webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _baseStorage = _interopRequireDefault(__webpack_require__(/*! elementor-api/core/data/storages/base-storage */ "../core/common/assets/js/api/core/data/storages/base-storage.js"));

var BasePrefixStorage = /*#__PURE__*/function (_BaseStorage) {
  (0, _inherits2.default)(BasePrefixStorage, _BaseStorage);

  var _super = (0, _createSuper2.default)(BasePrefixStorage);

  function BasePrefixStorage() {
    (0, _classCallCheck2.default)(this, BasePrefixStorage);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(BasePrefixStorage, [{
    key: "clear",
    value: function clear() {
      var _this = this;

      (0, _keys.default)(this.getAll()).forEach(function (key) {
        return _this.removeItem(key);
      });
    }
  }, {
    key: "getItem",
    value: function getItem(key) {
      return (0, _get2.default)((0, _getPrototypeOf2.default)(BasePrefixStorage.prototype), "getItem", this).call(this, BasePrefixStorage.DEFAULT_KEY_PREFIX + key);
    }
  }, {
    key: "removeItem",
    value: function removeItem(key) {
      return (0, _get2.default)((0, _getPrototypeOf2.default)(BasePrefixStorage.prototype), "removeItem", this).call(this, BasePrefixStorage.DEFAULT_KEY_PREFIX + key);
    }
  }, {
    key: "setItem",
    value: function setItem(key, value) {
      return (0, _get2.default)((0, _getPrototypeOf2.default)(BasePrefixStorage.prototype), "setItem", this).call(this, BasePrefixStorage.DEFAULT_KEY_PREFIX + key, value);
    }
  }, {
    key: "getAll",
    value: function getAll() {
      var _this2 = this;

      var DEFAULT_KEY_PREFIX = BasePrefixStorage.DEFAULT_KEY_PREFIX,
          keys = (0, _keys.default)(this.provider),
          result = {};
      keys.forEach(function (key) {
        if (key.startsWith(DEFAULT_KEY_PREFIX)) {
          key = key.replace(DEFAULT_KEY_PREFIX, '');
          result[key] = _this2.getItem(key);
        }
      });
      return result;
    }
  }]);
  return BasePrefixStorage;
}(_baseStorage.default);

exports.default = BasePrefixStorage;
(0, _defineProperty2.default)(BasePrefixStorage, "DEFAULT_KEY_PREFIX", 'e_');

/***/ }),

/***/ "../core/common/assets/js/api/core/data/storages/base-storage.js":
/*!***********************************************************************!*\
  !*** ../core/common/assets/js/api/core/data/storages/base-storage.js ***!
  \***********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _stringify = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/json/stringify */ "../node_modules/@babel/runtime-corejs2/core-js/json/stringify.js"));

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

/**
 * TODO: Merge all storage's to one.
 * Using this technique give's the ability to use JSDOC from 'window.storage'.
 *
 * @implements {Storage}
 */
var BaseStorage = /*#__PURE__*/function () {
  /**
   * Create storage wrapper.
   *
   * @param {Storage} provider
   */
  function BaseStorage(provider) {
    (0, _classCallCheck2.default)(this, BaseStorage);

    if (BaseStorage === (this instanceof BaseStorage ? this.constructor : void 0)) {
      throw new TypeError('Cannot construct BaseStorage instances directly');
    }

    this.provider = provider;
  }

  (0, _createClass2.default)(BaseStorage, [{
    key: "clear",
    value: function clear() {
      return this.provider.clear();
    }
  }, {
    key: "getItem",
    value: function getItem(key) {
      var result = this.provider.getItem(key);

      if (null !== result) {
        return JSON.parse(result);
      }

      return result;
    }
  }, {
    key: "key",
    value: function key(index) {
      return this.provider.key(index);
    }
  }, {
    key: "removeItem",
    value: function removeItem(key) {
      return this.provider.removeItem(key);
    }
  }, {
    key: "setItem",
    value: function setItem(key, value) {
      return this.provider.setItem(key, (0, _stringify.default)(value));
    }
  }, {
    key: "getAll",
    value: function getAll() {
      var _this = this;

      var keys = (0, _keys.default)(this.provider),
          result = {};
      keys.forEach(function (key) {
        result[key] = _this.getItem(key);
      });
      return result;
    }
  }]);
  return BaseStorage;
}();

exports.default = BaseStorage;

/***/ }),

/***/ "../core/common/assets/js/api/core/data/storages/local-storage.js":
/*!************************************************************************!*\
  !*** ../core/common/assets/js/api/core/data/storages/local-storage.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _basePrefixStorage = _interopRequireDefault(__webpack_require__(/*! ./base-prefix-storage */ "../core/common/assets/js/api/core/data/storages/base-prefix-storage.js"));

var LocalStorage = /*#__PURE__*/function (_BasePrefixStorage) {
  (0, _inherits2.default)(LocalStorage, _BasePrefixStorage);

  var _super = (0, _createSuper2.default)(LocalStorage);

  function LocalStorage() {
    (0, _classCallCheck2.default)(this, LocalStorage);
    return _super.call(this, localStorage);
  }

  (0, _createClass2.default)(LocalStorage, [{
    key: "debug",
    value: function debug() {
      var entries = this.getAll(),
          ordered = {};
      (0, _keys.default)(entries).sort().forEach(function (key) {
        var value = entries[key];
        ordered[key] = value;
      });
      return ordered;
    }
  }]);
  return LocalStorage;
}(_basePrefixStorage.default);

exports.default = LocalStorage;

/***/ }),

/***/ "../core/common/assets/js/api/core/hooks.js":
/*!**************************************************!*\
  !*** ../core/common/assets/js/api/core/hooks.js ***!
  \**************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _data = _interopRequireDefault(__webpack_require__(/*! ./hooks/data.js */ "../core/common/assets/js/api/core/hooks/data.js"));

var _ui = _interopRequireDefault(__webpack_require__(/*! ./hooks/ui.js */ "../core/common/assets/js/api/core/hooks/ui.js"));

var Hooks = /*#__PURE__*/function () {
  function Hooks() {
    (0, _classCallCheck2.default)(this, Hooks);
    (0, _defineProperty2.default)(this, "data", new _data.default());
    (0, _defineProperty2.default)(this, "ui", new _ui.default());
  }

  (0, _createClass2.default)(Hooks, [{
    key: "activate",
    value:
    /**
     * Function activate().
     *
     * Activate all hooks.
     */
    function activate() {
      this.getTypes().forEach(function (hooksType) {
        hooksType.activate();
      });
    }
    /**
     * Function deactivate().
     *
     * Deactivate all hooks.
     */

  }, {
    key: "deactivate",
    value: function deactivate() {
      this.getTypes().forEach(function (hooksType) {
        hooksType.deactivate();
      });
    }
  }, {
    key: "getAll",
    value: function getAll() {
      var flat = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
      var result = {};
      this.getTypes().forEach(function (hooksType) {
        result[hooksType.getType()] = hooksType.getAll(flat);
      });
      return result;
    }
  }, {
    key: "getTypes",
    value: function getTypes() {
      return [this.data, this.ui];
    }
  }, {
    key: "getType",
    value: function getType(type) {
      return this.getTypes().find(function (hooks) {
        return type === hooks.getType();
      });
    }
    /**
     * Function register().
     *
     * Register hook.
     *
     * @param {string} type
     * @param {string} event
     * @param {HookBase} instance
     *
     * @returns {{}} Created callback
     */

  }, {
    key: "register",
    value: function register(type, event, instance) {
      return this.getType(type).register(event, instance);
    }
    /**
     * Function run().
     *
     * Run's a hook.
     *
     * @param {string} type
     * @param {string} event
     * @param {string} command
     * @param {{}} args
     * @param {*} result
     *
     * @returns {boolean}
     */

  }, {
    key: "run",
    value: function run(type, event, command, args) {
      var result = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : undefined;
      return this.getType(type).run(event, command, args, result);
    }
    /**
     * Function registerDataAfter().
     *
     * Register data hook that's run after the command.
     *
     * @param {HookBase} instance
     *
     * @returns {{}}
     */

  }, {
    key: "registerDataAfter",
    value: function registerDataAfter(instance) {
      return this.register('data', 'after', instance);
    }
    /**
     * Function registerDataCatch().
     *
     * Register data hook that's run when the command fails.
     *
     * @param {HookBase} instance
     *
     * @returns {{}}
     */

  }, {
    key: "registerDataCatch",
    value: function registerDataCatch(instance) {
      return this.register('data', 'catch', instance);
    }
    /**
     * Function registerDataDependency().
     *
     * Register data hook that's run before the command as dependency.
     *
     * @param {HookBase} instance
     *
     * @returns {{}}
     */

  }, {
    key: "registerDataDependency",
    value: function registerDataDependency(instance) {
      return this.register('data', 'dependency', instance);
    }
    /**
     * Function registerUIAfter().
     *
     * Register UI hook that's run after the commands run.
     *
     * @param {HookBase} instance
     *
     * @returns {{}}
     */

  }, {
    key: "registerUIAfter",
    value: function registerUIAfter(instance) {
      return this.register('ui', 'after', instance);
    }
    /**
     * Function registerUICatch().
     *
     * Register UI hook that's run when the command fails.
     *
     * @param {HookBase} instance
     *
     * @returns {{}}
     */

  }, {
    key: "registerUICatch",
    value: function registerUICatch(instance) {
      return this.register('ui', 'catch', instance);
    }
    /**
     * Function registerUIBefore().
     *
     * Register UI hook that's run before the command.
     *
     * @param {HookBase} instance
     *
     * @returns {{}}
     */

  }, {
    key: "registerUIBefore",
    value: function registerUIBefore(instance) {
      return this.register('ui', 'before', instance);
    }
    /**
     * Function runDataAfter().
     *
     * Run data hook that's run after the command.
     *
     * @param {string} command
     * @param {{}} args
     * @param {*} result
     *
     * @returns {boolean}
     */

  }, {
    key: "runDataAfter",
    value: function runDataAfter(command, args, result) {
      return this.run('data', 'after', command, args, result);
    }
    /**
     * Function runDataCatch().
     *
     * Run data hook that's run when the command fails.
     *
     * @param {string} command
     * @param {{}} args
     * @param {*} error
     *
     * @returns {boolean}
     */

  }, {
    key: "runDataCatch",
    value: function runDataCatch(command, args, error) {
      return this.run('data', 'catch', command, args, error);
    }
    /**
     * Function runDataDependency().
     *
     * Run data hook that's run before the command as dependency.
     *
     * @param {string} command
     * @param {{}} args
     *
     * @returns {boolean}
     */

  }, {
    key: "runDataDependency",
    value: function runDataDependency(command, args) {
      return this.run('data', 'dependency', command, args);
    }
    /**
     * Function runUIAfter().
     *
     * Run UI hook that's run after the commands run.
     *
     * @param {string} command
     * @param {{}} args
     * @param {*} result
     *
     * @returns {boolean}
     */

  }, {
    key: "runUIAfter",
    value: function runUIAfter(command, args, result) {
      return this.run('ui', 'after', command, args, result);
    }
    /**
     * Function runUICatch().
     *
     * Run UI hook that's run when the command fails.
     *
     * @param {string} command
     * @param {{}} args
     * @param {*} e
     *
     * @returns {boolean}
     */

  }, {
    key: "runUICatch",
    value: function runUICatch(command, args, e) {
      return this.run('ui', 'catch', command, args, e);
    }
    /**
     * Function runUIBefore().
     *
     * Run UI hook that's run before the command.
     *
     * @param {string} command
     * @param {{}} args
     *
     * @returns {boolean}
     */

  }, {
    key: "runUIBefore",
    value: function runUIBefore(command, args) {
      return this.run('ui', 'before', command, args);
    }
  }]);
  return Hooks;
}();

exports.default = Hooks;

/***/ }),

/***/ "../core/common/assets/js/api/core/hooks/base.js":
/*!*******************************************************!*\
  !*** ../core/common/assets/js/api/core/hooks/base.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var HooksBase = /*#__PURE__*/function (_elementorModules$Mod) {
  (0, _inherits2.default)(HooksBase, _elementorModules$Mod);

  var _super = (0, _createSuper2.default)(HooksBase);

  /**
   * Function constructor().
   *
   * Create hooks base.
   *
   * @param {{}} args
   */
  function HooksBase() {
    var _this;

    (0, _classCallCheck2.default)(this, HooksBase);

    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }

    _this = _super.call.apply(_super, [this].concat(args));
    /**
     * Current command.
     *
     * @type {string}
     */

    _this.current = '';
    /**
     * Array of ids which in use.
     *
     * @type {Array}
     */

    _this.usedIds = [];
    /**
     * Object of callbacks that was bound by container type.
     *
     * @type {{}}
     */

    _this.callbacks = {
      after: {},
      catch: {}
    };
    /**
     * Object of depth.
     *
     * @type {{}}
     */

    _this.depth = {
      after: {},
      catch: {}
    };
    _this.callbacksFlatList = {};
    return _this;
  }

  (0, _createClass2.default)(HooksBase, [{
    key: "activate",
    value: function activate() {
      (0, _values.default)(this.getAll(true)).forEach(function (callback) {
        callback.activate();
      });
    }
  }, {
    key: "deactivate",
    value: function deactivate() {
      (0, _values.default)(this.getAll(true)).forEach(function (callback) {
        callback.deactivate();
      });
    }
    /**
     * Function getType().
     *
     * Returns type eg: ( event, hook, etc ... ).
     *
     * @returns {string} type
     */

  }, {
    key: "getType",
    value: function getType() {
      elementorModules.forceMethodImplementation();
    }
  }, {
    key: "get",
    value: function get(id) {
      return this.callbacksFlatList[id];
    }
    /**
     * Function getAll().
     *
     * Return all possible callbacks.
     *
     * @param {boolean} flat
     *
     * @returns {{}}
     */

  }, {
    key: "getAll",
    value: function getAll() {
      var _this2 = this;

      var flat = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;

      if (flat) {
        return this.callbacksFlatList;
      }

      var result = {};
      (0, _keys.default)(this.callbacks).forEach(function (event) {
        if (!result[event]) {
          result[event] = [];
        }

        (0, _keys.default)(_this2.callbacks[event]).forEach(function (command) {
          result[event].push({
            command: command,
            callbacks: _this2.callbacks[event][command]
          });
        });
      });
      return result;
    }
    /**
     * Function getCurrent();
     *
     * Return current command.
     *
     * @returns {string}
     */

  }, {
    key: "getCurrent",
    value: function getCurrent() {
      return this.current;
    }
    /**
     * Function getUsedIds().
     *
     * Returns the current used ids.
     *
     * @returns {Array}
     */

  }, {
    key: "getUsedIds",
    value: function getUsedIds() {
      return this.usedIds;
    }
    /**
     * Function getCallbacks().
     *
     * Get available callbacks for specific event and command.
     *
     * @param {string} event
     * @param {string} command
     *
     * @returns {(array|boolean)} callbacks
     */

  }, {
    key: "getCallbacks",
    value: function getCallbacks(event, command, args) {
      var _args$containers = args.containers,
          containers = _args$containers === void 0 ? [args.container] : _args$containers,
          containerType = containers[0] ? containers[0].type : false;
      var callbacks = [];

      if (this.callbacks[event] && this.callbacks[event][command]) {
        if (containerType && this.callbacks[event][command][containerType]) {
          callbacks = callbacks.concat(this.callbacks[event][command][containerType]);
        }

        if (this.callbacks[event][command].all) {
          callbacks = callbacks.concat(this.callbacks[event][command].all);
        }
      }

      if (callbacks.length) {
        return callbacks;
      }

      return false;
    }
    /**
     * function checkEvent().
     *
     * Validate if the event is available.
     *
     * @param {string} event
     */

  }, {
    key: "checkEvent",
    value: function checkEvent(event) {
      if (-1 === (0, _keys.default)(this.callbacks).indexOf(event)) {
        throw Error("".concat(this.getType(), ": '").concat(event, "' is not available."));
      }
    }
    /**
     * Function checkInstance().
     *
     * Validate given instance.
     *
     * @param {HookBase} instance
     */

  }, {
    key: "checkInstance",
    value: function checkInstance(instance) {
      if (instance.getType() !== this.getType()) {
        throw new Error("invalid instance, please use: 'elementor-api/modules/hook-base.js'. ");
      }
    }
    /**
     * Function checkId().
     *
     * Validate if the id is not used before.
     *
     * @param {string} id
     */

  }, {
    key: "checkId",
    value: function checkId(id) {
      if (-1 !== this.usedIds.indexOf(id)) {
        throw Error("id: '".concat(id, "' is already in use."));
      }
    }
    /**
     * Function shouldRun().
     *
     * Determine if the event should run.
     *
     * @param {array} callbacks
     *
     * @return {boolean}
     *
     * @throw {Error}
     */

  }, {
    key: "shouldRun",
    value: function shouldRun(callbacks) {
      return !!callbacks && callbacks.length;
    }
    /**
     * Function register().
     *
     * Register the callback instance.
     *
     * @param {string} event
     * @param {HookBase} instance
     *
     * @returns {{}} Created callback
     */

  }, {
    key: "register",
    value: function register(event, instance) {
      var command = instance.getCommand(),
          id = instance.getId(),
          containerType = instance.getContainerType();
      this.checkEvent(event);
      this.checkInstance(instance);
      this.checkId(id);
      return this.registerCallback(id, event, command, instance, containerType);
    }
    /**
     * Function registerCallback().
     *
     * Register callback.
     *
     * @param {string} id
     * @param {string} event
     * @param {string} command
     * @param {HookBase} instance
     * @param {string} containerType
     *
     * TODO: Consider replace with typedef.
     * @returns {{callback: *, id: *, isActive: boolean}}
     */

  }, {
    key: "registerCallback",
    value: function registerCallback(id, event, command, instance, containerType) {
      if (!this.callbacks[event][command]) {
        this.callbacks[event][command] = [];
      } // Save used id(s).


      this.usedIds.push(id);

      if (!this.callbacks[event][command]) {
        this.callbacks[event][command] = {};
      } // TODO: Create HookCallback class/type.


      var callback = {
        id: id,
        callback: instance.run.bind(instance),
        isActive: true,
        activate: function activate() {
          this.isActive = true;
        },
        deactivate: function deactivate() {
          this.isActive = false;
        }
      };

      if (containerType) {
        if (!this.callbacks[event][command][containerType]) {
          this.callbacks[event][command][containerType] = [];
        }

        this.callbacks[event][command][containerType].push(callback);
      } else {
        if (!this.callbacks[event][command].all) {
          this.callbacks[event][command].all = [];
        }

        this.callbacks[event][command].all.push(callback);
      }

      this.callbacksFlatList[callback.id] = callback;
      return callback;
    }
    /**
     * Function run().
     *
     * Run the callbacks.
     *
     * @param {string} event
     * @param {string} command
     * @param {{}} args
     * @param {*} result
     *
     * @returns {*}
     */

  }, {
    key: "run",
    value: function run(event, command, args) {
      var result = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : undefined;
      var callbacks = this.getCallbacks(event, command, args);

      if (this.shouldRun(callbacks)) {
        this.current = command;
        this.onRun(command, args, event);
        return this.runCallbacks(event, command, callbacks, args, result);
      }

      return false;
    }
    /**
     * Function runCallbacks().
     *
     * Run's the given callbacks.
     *
     * @param {string} event
     * @param {string} command
     * @param {array} callbacks
     * @param {{}} args
     * @param {[]} result
     */

  }, {
    key: "runCallbacks",
    value: function runCallbacks(event, command, callbacks, args, result) {
      var callbacksResult = [];

      for (var i in callbacks) {
        var callback = callbacks[i];

        if (!callback.isActive) {
          continue;
        } // If not exist, set zero.


        if (undefined === this.depth[event][callback.id]) {
          this.depth[event][callback.id] = 0;
        }

        this.depth[event][callback.id]++; // Prevent recursive hooks.

        if (1 === this.depth[event][callback.id]) {
          this.onCallback(command, args, event, callback.id);

          try {
            var callbackResult = this.runCallback(event, callback, args, result);

            if (!callbackResult) {
              throw Error("Callback failed, event: '".concat(event, "'"));
            }

            callbacksResult.push(callbackResult);
          } catch (e) {
            // If its 'Hook-Break' then parent `try {}` will handle it.
            if (e instanceof $e.modules.HookBreak) {
              throw e;
            }

            elementorCommon.helpers.consoleError(e);
          }
        }

        this.depth[event][callback.id]--;
      }

      return callbacksResult;
    }
    /**
     * Function runCallback().
     *
     * Run's the given callback.
     *
     * @param {string} event
     * @param {{}} callback
     * @param {{}} args
     * @param {*} result
     *
     * @returns {*}
     *
     * @throw {Error}
     */

  }, {
    key: "runCallback",
    value: function runCallback(event, callback, args, result) {
      // eslint-disable-line no-unused-vars
      elementorModules.forceMethodImplementation();
    }
    /**
     * Function onRun().
     *
     * Called before run a set of callbacks.
     *
     * @param {string} command
     * @param {{}} args
     * @param {string} event
     *
     * @throw {Error}
     */

  }, {
    key: "onRun",
    value: function onRun(command, args, event) {
      // eslint-disable-line no-unused-vars
      elementorModules.forceMethodImplementation();
    }
    /**
     * Function onCallback().
     *
     * Called before a single callback.
     *
     * @param {string} command
     * @param {{}} args
     * @param {string} event
     * @param {string} id
     *
     * @throw {Error}
     */

  }, {
    key: "onCallback",
    value: function onCallback(command, args, event, id) {
      // eslint-disable-line no-unused-vars
      elementorModules.forceMethodImplementation();
    }
  }]);
  return HooksBase;
}(elementorModules.Module);

exports.default = HooksBase;

/***/ }),

/***/ "../core/common/assets/js/api/core/hooks/data.js":
/*!*******************************************************!*\
  !*** ../core/common/assets/js/api/core/hooks/data.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _base = _interopRequireDefault(__webpack_require__(/*! ./base.js */ "../core/common/assets/js/api/core/hooks/base.js"));

var Data = /*#__PURE__*/function (_HooksBase) {
  (0, _inherits2.default)(Data, _HooksBase);

  var _super = (0, _createSuper2.default)(Data);

  function Data() {
    var _this;

    (0, _classCallCheck2.default)(this, Data);

    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }

    _this = _super.call.apply(_super, [this].concat(args));
    _this.callbacks.dependency = {};
    _this.depth.dependency = {};
    return _this;
  }

  (0, _createClass2.default)(Data, [{
    key: "getType",
    value: function getType() {
      return 'data';
    }
  }, {
    key: "runCallback",
    value: function runCallback(event, callback, args, result) {
      switch (event) {
        case 'dependency':
          {
            // If callback returns false and its dependency, then 'Hook-Break'.
            if (!callback.callback(args)) {
              this.depth[event][callback.id]--; // Throw custom break to be catch by the base for 'Safe' exit.

              throw new $e.modules.HookBreak();
            }

            return true;
          }

        case 'catch':
        case 'after':
          {
            /**
             * When handling HOOK which is data after (not breakable),
             * even the result of the callback is negative, it is required to return positive,
             * since result of runCallback determine if the callback succeeded.
             */
            return callback.callback(args, result) || 'after' === event;
          }
      }

      return false;
    }
  }, {
    key: "shouldRun",
    value: function shouldRun(callbacks) {
      return (0, _get2.default)((0, _getPrototypeOf2.default)(Data.prototype), "shouldRun", this).call(this, callbacks) && elementor.documents.getCurrent().history.getActive();
    }
  }, {
    key: "onRun",
    value: function onRun(command, args, event) {
      if (!$e.devTools) {
        return;
      }

      $e.devTools.log.callbacks().run(this.getType(), command, args, event);
    }
  }, {
    key: "onCallback",
    value: function onCallback(command, args, event, id) {
      if (!$e.devTools) {
        return;
      }

      $e.devTools.log.callbacks().callback(this.getType(), command, args, event, id);
    }
  }]);
  return Data;
}(_base.default);

exports.default = Data;

/***/ }),

/***/ "../core/common/assets/js/api/core/hooks/ui.js":
/*!*****************************************************!*\
  !*** ../core/common/assets/js/api/core/hooks/ui.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _base = _interopRequireDefault(__webpack_require__(/*! ./base */ "../core/common/assets/js/api/core/hooks/base.js"));

var Ui = /*#__PURE__*/function (_HooksBase) {
  (0, _inherits2.default)(Ui, _HooksBase);

  var _super = (0, _createSuper2.default)(Ui);

  function Ui() {
    var _this;

    (0, _classCallCheck2.default)(this, Ui);

    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }

    _this = _super.call.apply(_super, [this].concat(args));
    _this.callbacks.before = {};
    _this.depth.before = {};
    return _this;
  }

  (0, _createClass2.default)(Ui, [{
    key: "getType",
    value: function getType() {
      return 'ui';
    }
  }, {
    key: "runCallback",
    value: function runCallback(event, callback, args, result) {
      switch (event) {
        case 'before':
          callback.callback(args);
          break;

        case 'catch':
        case 'after':
          callback.callback(args, result);
          break;

        default:
          return false;
      }

      return true;
    }
  }, {
    key: "onRun",
    value: function onRun(command, args, event) {
      if (!$e.devTools) {
        return;
      }

      $e.devTools.log.callbacks().run(this.getType(), command, args, event);
    }
  }, {
    key: "onCallback",
    value: function onCallback(command, args, event, id) {
      if (!$e.devTools) {
        return;
      }

      $e.devTools.log.callbacks().callback(this.getType(), command, args, event, id);
    }
  }]);
  return Ui;
}(_base.default);

exports.default = Ui;

/***/ }),

/***/ "../core/common/assets/js/api/core/routes.js":
/*!***************************************************!*\
  !*** ../core/common/assets/js/api/core/routes.js ***!
  \***************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commands = _interopRequireDefault(__webpack_require__(/*! ./commands */ "../core/common/assets/js/api/core/commands.js"));

var Routes = /*#__PURE__*/function (_Commands) {
  (0, _inherits2.default)(Routes, _Commands);

  var _super = (0, _createSuper2.default)(Routes);

  function Routes() {
    var _this;

    (0, _classCallCheck2.default)(this, Routes);

    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }

    _this = _super.call.apply(_super, [this].concat(args));
    _this.savedStates = {};
    _this.historyPerComponent = {};
    return _this;
  }

  (0, _createClass2.default)(Routes, [{
    key: "refreshContainer",
    value: function refreshContainer(container) {
      var currentRoute = this.getCurrent(container),
          currentArgs = this.getCurrentArgs(container);
      this.clearCurrent(container);
      this.to(currentRoute, currentArgs);
    }
  }, {
    key: "getHistory",
    value: function getHistory() {
      var namespaceRoot = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';

      if (namespaceRoot) {
        return this.historyPerComponent[namespaceRoot] || [];
      }

      return this.historyPerComponent;
    }
  }, {
    key: "clearHistory",
    value: function clearHistory(namespaceRoot) {
      delete this.historyPerComponent[namespaceRoot];
    }
  }, {
    key: "clearCurrent",
    value: function clearCurrent(container) {
      var route = this.current[container];

      if (!route) {
        return;
      }

      delete this.current[container];
      delete this.currentArgs[container];
      this.getComponent(route).onCloseRoute(route);
    }
  }, {
    key: "clear",
    value: function clear() {
      var _this2 = this;

      (0, _keys.default)(this.current).forEach(function (container) {
        return _this2.clearCurrent(container);
      });
    }
  }, {
    key: "saveState",
    value: function saveState(container) {
      this.savedStates[container] = {
        route: this.current[container],
        args: this.currentArgs[container]
      };
      return this;
    }
  }, {
    key: "restoreState",
    value: function restoreState(container) {
      if (!this.savedStates[container]) {
        return false;
      }

      this.to(this.savedStates[container].route, this.savedStates[container].args);
      return true;
    }
  }, {
    key: "beforeRun",
    value: function beforeRun(route, args) {
      if (!(0, _get2.default)((0, _getPrototypeOf2.default)(Routes.prototype), "beforeRun", this).call(this, route, args)) {
        return false;
      }

      if (this.is(route, args) && !args.refresh) {
        return false;
      }

      var component = this.getComponent(route),
          container = component.getRootContainer(),
          oldRoute = this.current[container];

      if (oldRoute) {
        this.getComponent(oldRoute).onCloseRoute(oldRoute);
      }

      if (!component.isOpen || args.reOpen) {
        component.isOpen = component.open(args);
      }

      return component.isOpen;
    }
  }, {
    key: "to",
    value: function to(route, args) {
      this.run(route, args);
      var namespaceRoot = this.getComponent(route).getRootContainer();

      if (!this.historyPerComponent[namespaceRoot]) {
        this.historyPerComponent[namespaceRoot] = [];
      }

      this.historyPerComponent[namespaceRoot].push({
        route: route,
        args: args
      });
    }
  }, {
    key: "back",
    value: function back(namespaceRoot) {
      var history = this.getHistory(namespaceRoot); // Remove current;

      history.pop();
      var last = history.pop();

      if (!last) {
        return;
      }

      this.to(last.route, last.args);
    } // Don't use the event object.

  }, {
    key: "runShortcut",
    value: function runShortcut(command) {
      this.to(command);
    } // Don't clear current route.

  }, {
    key: "afterRun",
    value: function afterRun(route, args) {
      this.getComponent(route).onRoute(route, args);
    }
  }, {
    key: "is",
    value: function is(route) {
      var args = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};

      if (!(0, _get2.default)((0, _getPrototypeOf2.default)(Routes.prototype), "is", this).call(this, route)) {
        return false;
      }

      var container = this.getComponent(route).getRootContainer();
      return _.isEqual(args, this.currentArgs[container]);
    }
  }, {
    key: "isPartOf",
    value: function isPartOf(route) {
      /**
       * Check against current command hierarchically.
       * For example `is( 'panel' )` will be true for `panel/elements`
       * `is( 'panel/editor' )` will be true for `panel/editor/style`
       */
      var parts = route.split('/'),
          container = parts[0],
          toCheck = [],
          currentParts = this.current[container] ? this.current[container].split('/') : [];
      var match = false;
      currentParts.forEach(function (part) {
        toCheck.push(part);

        if (toCheck.join('/') === route) {
          match = true;
        }
      });
      return match;
    }
  }, {
    key: "error",
    value: function error(message) {
      throw Error('Routes: ' + message);
    }
  }]);
  return Routes;
}(_commands.default);

exports.default = Routes;

/***/ }),

/***/ "../core/common/assets/js/api/core/shortcuts.js":
/*!******************************************************!*\
  !*** ../core/common/assets/js/api/core/shortcuts.js ***!
  \******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

__webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");

__webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _environment = _interopRequireDefault(__webpack_require__(/*! elementor-common/utils/environment */ "../core/common/assets/js/utils/environment.js"));

var Shortcuts = /*#__PURE__*/function () {
  function Shortcuts($window) {
    (0, _classCallCheck2.default)(this, Shortcuts);
    this.specialKeys = {
      13: 'enter',
      27: 'esc',
      38: 'up',
      40: 'down',
      46: 'del',
      191: '?'
    };
    this.component = '';
    this.handlers = {};
    this.bindListener($window);
  }

  (0, _createClass2.default)(Shortcuts, [{
    key: "bindListener",
    value: function bindListener($window) {
      var _this = this;

      $window.on('keydown', function (event) {
        return _this.handle(event);
      });
    }
  }, {
    key: "getAll",
    value: function getAll() {
      var shortcuts = {};
      jQuery.each(this.handlers, function (key, handler) {
        jQuery.each(handler, function (index, config) {
          shortcuts[config.command] = key;
        });
      });
      return shortcuts;
    }
    /**
     * @param shortcuts
     * @param {{callback: (function(): boolean), scopes: [void]}} args
     * @param {callback} args.callback Required
     * @param {string} args.component Optional
     * @param {callback} args.dependency Optional
     * @param {array} args.exclude Optional
     * @param {bool} args.allowAltKey Optional
     */

  }, {
    key: "register",
    value: function register(shortcuts, args) {
      var _this2 = this;

      shortcuts.replace(' ', '').split(',').forEach(function (shortcut) {
        if (!_this2.handlers[shortcut]) {
          _this2.handlers[shortcut] = [];
        }

        _this2.handlers[shortcut].push(args);
      });
    }
  }, {
    key: "unregister",
    value: function unregister(shortcuts, args) {
      var _this3 = this;

      shortcuts.replace(' ', '').split(',').forEach(function (shortcut) {
        _this3.handlers[shortcut].forEach(function (index, handler) {
          if (args === handler) {
            delete _this3.handlers[shortcut][index];
          }
        });
      });
    }
  }, {
    key: "handle",
    value: function handle(event) {
      var handlers = this.getHandlersByPriority(event);

      if (!handlers) {
        return;
      }

      var filteredHandlers = handlers.filter(function (handler) {
        if (handler.exclude && -1 !== handler.exclude.indexOf('input')) {
          var $target = jQuery(event.target);

          if ($target.is(':input, .elementor-input') || $target.closest('[contenteditable="true"]').length) {
            return false;
          }
        }

        if (handler.dependency && !handler.dependency(event)) {
          return false;
        } // Fix for some keyboard sources that consider alt key as ctrl key


        if (!handler.allowAltKey && event.altKey) {
          return false;
        }

        return true;
      });

      if (!filteredHandlers.length) {
        return;
      }

      if (1 < filteredHandlers.length && elementorCommon.config.isDebug) {
        elementorCommon.helpers.consoleWarn('Multiple handlers for shortcut.', filteredHandlers, event);
      }

      event.preventDefault();
      filteredHandlers[0].callback(event);
    }
  }, {
    key: "isControlEvent",
    value: function isControlEvent(event) {
      return event[_environment.default.mac ? 'metaKey' : 'ctrlKey'];
    }
  }, {
    key: "getEventShortcut",
    value: function getEventShortcut(event) {
      var shortcut = [];

      if (event.altKey) {
        shortcut.push('alt');
      }

      if (this.isControlEvent(event)) {
        shortcut.push('ctrl');
      }

      if (event.shiftKey) {
        shortcut.push('shift');
      }

      if (this.specialKeys[event.which]) {
        shortcut.push(this.specialKeys[event.which]);
      } else {
        shortcut.push(String.fromCharCode(event.which).toLowerCase());
      }

      return shortcut.join('+');
    }
  }, {
    key: "isActiveScope",
    value: function isActiveScope(scopes) {
      var activeComponents = (0, _keys.default)($e.components.activeComponents),
          activeComponent = activeComponents[activeComponents.length - 1],
          component = $e.components.get(activeComponent);

      if (!component) {
        return false;
      }

      var namespace = component.getNamespace(),
          namespaceRoot = component.getRootContainer();
      var filteredByNamespace = scopes.some(function (scope) {
        return namespace === scope;
      });

      if (filteredByNamespace) {
        return true;
      } // Else filter by namespaceRoot.


      return scopes.some(function (scope) {
        return namespaceRoot === scope;
      });
    }
  }, {
    key: "getHandlersByPriority",
    value: function getHandlersByPriority(event) {
      var _this4 = this;

      var handlers = this.handlers[this.getEventShortcut(event)];

      if (!handlers) {
        return false;
      } // TODO: Prioritize current scope before roo scope.


      var inCurrentScope = handlers.filter(function (handler) {
        return handler.scopes && _this4.isActiveScope(handler.scopes);
      });

      if (inCurrentScope.length) {
        return inCurrentScope;
      }

      var noScope = handlers.filter(function (handler) {
        return !handler.scopes;
      });

      if (noScope.length) {
        return noScope;
      }
    }
  }]);
  return Shortcuts;
}();

exports.default = Shortcuts;

/***/ }),

/***/ "../core/common/assets/js/api/core/ui-states.js":
/*!******************************************************!*\
  !*** ../core/common/assets/js/api/core/ui-states.js ***!
  \******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var UiStates = /*#__PURE__*/function () {
  /**
   * Initialize the State Manager.
   *
   * @return {void}
   */
  function UiStates() {
    (0, _classCallCheck2.default)(this, UiStates);
    this.states = {};
  }
  /**
   * Register a new state.
   *
   * @param {UiStateBase} instance - State instance.
   *
   * @return {void}
   */


  (0, _createClass2.default)(UiStates, [{
    key: "register",
    value: function register(instance) {
      var stateId = instance.getPrefixedId();

      if (this.states[stateId]) {
        throw "State '".concat(stateId, "' already exists.");
      }

      this.states[stateId] = instance;
    }
    /**
     * Get all existing states with their options:
     *
     * {
     *     'state-id': [
     *         'option-1',
     *         'option-2',
     *         'option-3',
     *     ],
     * }
     *
     * @return {Object}
     */

  }, {
    key: "getAll",
    value: function getAll() {
      var states = {};
      (0, _entries.default)(this.states).forEach(function (_ref) {
        var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
            id = _ref2[0],
            instance = _ref2[1];

        var options = instance.getOptions();
        states[id] = (0, _keys.default)(options);
      });
      return states;
    }
    /**
     * Get the state value, or return all of them if no `state` is set.
     *
     * @param {string} state - State ID.
     *
     * @return {UiStateBase}
     */

  }, {
    key: "get",
    value: function get(state) {
      if (state) {
        return this.states[state];
      }

      return this.states;
    }
    /**
     * Set the current state value and trigger its callbacks & events.
     * This function triggers a `e-ui-state:${ stateID }` event to the scope, with `oldValue` & `newValue`
     * under `e.detail`.
     * Additionally, it adds a `e-ui-state--${ stateID }__${ value }` class to the scope element.
     *
     * @param {string} state - State ID.
     * @param {string} value - New state value.
     *
     * @return {void}
     */

  }, {
    key: "set",
    value: function set(state, value) {
      // Invalid state or option.
      if (!this.get(state)) {
        throw "State '".concat(state, "' doesn't exist.");
      }

      var oldValue = this.getCurrent(state),
          classPrefix = "e-ui-state--".concat(state.replaceAll('/', '-')),
          oldStateClass = "".concat(classPrefix, "__").concat(oldValue),
          newStateClass = "".concat(classPrefix, "__").concat(value),
          scopes = this.get(state).getScopes(); // Set the current state to the new value.

      this.get(state).set(value);
      scopes.forEach(function (scope) {
        scope.classList.remove(oldStateClass); // Set the new class only if there is a value (i.e. it's not a state removal action).

        if (value) {
          scope.classList.add(newStateClass);
        } // Dispatch a custom state-change event to the scope.


        var event = new CustomEvent("e-ui-state:".concat(state), {
          detail: {
            oldValue: oldValue,
            newValue: value
          }
        });
        scope.dispatchEvent(event);
      });
    }
    /**
     * Remove a state.
     *
     * @param {string} state - State ID.
     *
     * @return {void}
     */

  }, {
    key: "remove",
    value: function remove(state) {
      this.set(state, '');
    }
    /**
     * Get the current state value.
     *
     * @param {string} state - State ID.
     *
     * @return {string}
     */

  }, {
    key: "getCurrent",
    value: function getCurrent(state) {
      var _this$get;

      return (_this$get = this.get(state)) === null || _this$get === void 0 ? void 0 : _this$get.getCurrent();
    }
  }]);
  return UiStates;
}();

exports.default = UiStates;

/***/ }),

/***/ "../core/common/assets/js/api/extras/hash-commands.js":
/*!************************************************************!*\
  !*** ../core/common/assets/js/api/extras/hash-commands.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));

var _promise = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/promise */ "../node_modules/@babel/runtime-corejs2/core-js/promise.js"));

__webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");

var _createForOfIteratorHelper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createForOfIteratorHelper */ "../node_modules/@babel/runtime-corejs2/helpers/createForOfIteratorHelper.js"));

var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/asyncToGenerator */ "../node_modules/@babel/runtime-corejs2/helpers/asyncToGenerator.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

/**
 * @typedef HashCommand
 * @property {string} method,
 * @property {string} command
 */
var HashCommands = /*#__PURE__*/function () {
  /**
   * Cannot be static since it uses callback(s) that are available only after '$e' is initialized.
   */

  /**
   * List of current loaded hash commands.
   *
   * @type {Array.<HashCommand>}
   */
  function HashCommands() {
    (0, _classCallCheck2.default)(this, HashCommands);
    (0, _defineProperty2.default)(this, "dispatchersList", {
      'e:run': {
        runner: $e.run,
        isSafe: function isSafe(command) {
          var _$e$commands$getComma;

          return (_$e$commands$getComma = $e.commands.getCommandClass(command)) === null || _$e$commands$getComma === void 0 ? void 0 : _$e$commands$getComma.getInfo().isSafe;
        }
      },
      'e:route': {
        runner: $e.route,
        isSafe: function isSafe() {
          return true;
        }
      }
    });
    (0, _defineProperty2.default)(this, "commands", []);
    this.commands = this.get();
  }
  /**
   * Function get().
   *
   * Get API requests that comes from hash ( eg #e:run ).
   *
   * @param {string} hash
   *
   * @returns {Array.<HashCommand>}
   */


  (0, _createClass2.default)(HashCommands, [{
    key: "get",
    value: function get() {
      var _this = this;

      var hash = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : location.hash;
      var result = [];

      if (hash) {
        // Remove first '#' and split each '&'.
        var hashList = hash.substr(1).split('&');
        hashList.forEach(function (hashItem) {
          var hashParts = hashItem.split(':');

          if (3 !== hashParts.length) {
            return;
          }

          var method = hashParts[0] + ':' + hashParts[1],
              dispatcher = _this.dispatchersList[method];

          if (dispatcher) {
            var command = hashParts[2];
            result.push({
              method: method,
              command: command
            });
          }
        });
      }

      return result;
    }
    /**
     * Function run().
     *
     * Run API requests that comes from hash ( eg #e:run ).
     *
     * @param {Array.<HashCommand>} [commands=this.commands]
     */

  }, {
    key: "run",
    value: function () {
      var _run = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
        var commands,
            _iterator,
            _step,
            hashCommand,
            dispatcher,
            _iterator2,
            _step2,
            _hashCommand,
            _args = arguments;

        return _regenerator.default.wrap(function _callee$(_context) {
          while (1) {
            switch (_context.prev = _context.next) {
              case 0:
                commands = _args.length > 0 && _args[0] !== undefined ? _args[0] : this.commands;
                // To allow validate the run first.
                _iterator = (0, _createForOfIteratorHelper2.default)(commands);
                _context.prev = 2;

                _iterator.s();

              case 4:
                if ((_step = _iterator.n()).done) {
                  _context.next = 13;
                  break;
                }

                hashCommand = _step.value;
                dispatcher = this.dispatchersList[hashCommand.method];

                if (dispatcher) {
                  _context.next = 9;
                  break;
                }

                return _context.abrupt("return", _promise.default.reject(new Error("No dispatcher found for the command: `".concat(hashCommand.command, "`."))));

              case 9:
                if (dispatcher.isSafe(hashCommand.command)) {
                  _context.next = 11;
                  break;
                }

                return _context.abrupt("return", _promise.default.reject(new Error("Attempting to run unsafe or non exist command: `".concat(hashCommand.command, "`."))));

              case 11:
                _context.next = 4;
                break;

              case 13:
                _context.next = 18;
                break;

              case 15:
                _context.prev = 15;
                _context.t0 = _context["catch"](2);

                _iterator.e(_context.t0);

              case 18:
                _context.prev = 18;

                _iterator.f();

                return _context.finish(18);

              case 21:
                // This logic will run the promises by sequence (will wait for dispatcher to finish, before run again).
                _iterator2 = (0, _createForOfIteratorHelper2.default)(commands);
                _context.prev = 22;

                _iterator2.s();

              case 24:
                if ((_step2 = _iterator2.n()).done) {
                  _context.next = 30;
                  break;
                }

                _hashCommand = _step2.value;
                _context.next = 28;
                return this.dispatchersList[_hashCommand.method].runner(_hashCommand.command);

              case 28:
                _context.next = 24;
                break;

              case 30:
                _context.next = 35;
                break;

              case 32:
                _context.prev = 32;
                _context.t1 = _context["catch"](22);

                _iterator2.e(_context.t1);

              case 35:
                _context.prev = 35;

                _iterator2.f();

                return _context.finish(35);

              case 38:
              case "end":
                return _context.stop();
            }
          }
        }, _callee, this, [[2, 15, 18, 21], [22, 32, 35, 38]]);
      }));

      function run() {
        return _run.apply(this, arguments);
      }

      return run;
    }()
    /**
     * Function runOnce().
     *
     * Do same as `run` but clear `this.commands` before leaving.
     */

  }, {
    key: "runOnce",
    value: function runOnce() {
      var _this2 = this;

      this.run(this.commands).then(function () {
        _this2.commands = [];
      });
    }
  }]);
  return HashCommands;
}();

exports.default = HashCommands;

/***/ }),

/***/ "../core/common/assets/js/api/index.js":
/*!*********************************************!*\
  !*** ../core/common/assets/js/api/index.js ***!
  \*********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _backwardsCompatibility = _interopRequireDefault(__webpack_require__(/*! ./core/backwards-compatibility */ "../core/common/assets/js/api/core/backwards-compatibility.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! ./modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var _commandInternalBase = _interopRequireDefault(__webpack_require__(/*! ./modules/command-internal-base */ "../core/common/assets/js/api/modules/command-internal-base.js"));

var _commandData = _interopRequireDefault(__webpack_require__(/*! ./modules/command-data */ "../core/common/assets/js/api/modules/command-data.js"));

var _commands = _interopRequireDefault(__webpack_require__(/*! ./core/commands */ "../core/common/assets/js/api/core/commands.js"));

var _commandsInternal = _interopRequireDefault(__webpack_require__(/*! ./core/commands-internal */ "../core/common/assets/js/api/core/commands-internal.js"));

var _componentBase = _interopRequireDefault(__webpack_require__(/*! ./modules/component-base */ "../core/common/assets/js/api/modules/component-base.js"));

var _componentModalBase = _interopRequireDefault(__webpack_require__(/*! ./modules/component-modal-base */ "../core/common/assets/js/api/modules/component-modal-base.js"));

var _components = _interopRequireDefault(__webpack_require__(/*! ./core/components */ "../core/common/assets/js/api/core/components.js"));

var _data = _interopRequireDefault(__webpack_require__(/*! ./core/data.js */ "../core/common/assets/js/api/core/data.js"));

var _hashCommands = _interopRequireDefault(__webpack_require__(/*! ./extras/hash-commands */ "../core/common/assets/js/api/extras/hash-commands.js"));

var _hookBreak = _interopRequireDefault(__webpack_require__(/*! ./modules/hook-break */ "../core/common/assets/js/api/modules/hook-break.js"));

var _hooks = _interopRequireDefault(__webpack_require__(/*! ./core/hooks */ "../core/common/assets/js/api/core/hooks.js"));

var _routes = _interopRequireDefault(__webpack_require__(/*! ./core/routes */ "../core/common/assets/js/api/core/routes.js"));

var _shortcuts = _interopRequireDefault(__webpack_require__(/*! ./core/shortcuts */ "../core/common/assets/js/api/core/shortcuts.js"));

var _uiStates = _interopRequireDefault(__webpack_require__(/*! ./core/ui-states */ "../core/common/assets/js/api/core/ui-states.js"));

var hookData = _interopRequireWildcard(__webpack_require__(/*! ./modules/hooks/data/ */ "../core/common/assets/js/api/modules/hooks/data/index.js"));

var hookUI = _interopRequireWildcard(__webpack_require__(/*! ./modules/hooks/ui */ "../core/common/assets/js/api/modules/hooks/ui/index.js"));

/* Alphabetical order */
var API = /*#__PURE__*/function () {
  /**
   * Function constructor().
   *
   * Create's 'elementor' api.
   */
  function API() {
    (0, _classCallCheck2.default)(this, API);
    window.$e = this;
    this.components = new _components.default();
    this.commands = new _commands.default();
    this.commandsInternal = new _commandsInternal.default();
    this.hooks = new _hooks.default();
    this.routes = new _routes.default();
    this.shortcuts = new _shortcuts.default(jQuery(window));
    this.data = new _data.default();
    this.uiStates = new _uiStates.default();
    this.modules = {
      CommandBase: _commandBase.default,
      CommandInternalBase: _commandInternalBase.default,
      CommandData: _commandData.default,
      ComponentBase: _componentBase.default,
      ComponentModalBase: _componentModalBase.default,
      HookBreak: _hookBreak.default,
      hookData: hookData,
      hookUI: hookUI
    };
    this.extras = {
      hashCommands: new _hashCommands.default()
    }; // Backwards compatibility should be last, in order to handle others.

    this.bc = new _backwardsCompatibility.default();
  }
  /**
   * Function run().
   *
   * Alias of `$e.commands.run()`.
   *
   * @param {string} command
   * @param [args={}]
   *
   * @returns {*}
   */


  (0, _createClass2.default)(API, [{
    key: "run",
    value: function run(command) {
      var args = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
      return $e.commands.run(command, args);
    }
    /**
     * Function internal().
     *
     * Alias of `$e.commandsInternal.run()`.
     *
     * @param {string} command
     * @param [args={}]
     *
     * @returns {boolean}
     */

  }, {
    key: "internal",
    value: function internal(command) {
      var args = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
      return $e.commandsInternal.run(command, args);
    }
    /**
     * Function route().
     *
     * Alias of `$e.routes.to()`.
     *
     * @param {string} route
     * @param [args={}]
     */

  }, {
    key: "route",
    value: function route(_route) {
      var args = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
      return $e.routes.to(_route, args);
    } // TODO: shortcut();

  }]);
  return API;
}();

exports.default = API;

/***/ }),

/***/ "../core/common/assets/js/api/modules/command-base.js":
/*!************************************************************!*\
  !*** ../core/common/assets/js/api/modules/command-base.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _regenerator = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/regenerator */ "../node_modules/@babel/runtime/regenerator/index.js"));

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

__webpack_require__(/*! core-js/modules/es6.string.iterator.js */ "../node_modules/core-js/modules/es6.string.iterator.js");

__webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");

__webpack_require__(/*! core-js/modules/es6.array.iterator.js */ "../node_modules/core-js/modules/es6.array.iterator.js");

__webpack_require__(/*! core-js/modules/web.dom.iterable.js */ "../node_modules/core-js/modules/web.dom.iterable.js");

var _isArray = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js"));

var _promise = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/promise */ "../node_modules/@babel/runtime-corejs2/core-js/promise.js"));

var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js"));

var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/asyncToGenerator */ "../node_modules/@babel/runtime-corejs2/helpers/asyncToGenerator.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _argsObject = _interopRequireDefault(__webpack_require__(/*! elementor-assets-js/modules/imports/args-object */ "../assets/dev/js/modules/imports/args-object.js"));

var CommandBase = /*#__PURE__*/function (_ArgsObject) {
  (0, _inherits2.default)(CommandBase, _ArgsObject);

  var _super = (0, _createSuper2.default)(CommandBase);

  /**
   * Function constructor().
   *
   * Create Commands Base.
   *
   * @param [args={}]
   * @param [commandsAPI={}]
   */
  function CommandBase(args) {
    var _this;

    var commandsAPI = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : $e.commands;
    (0, _classCallCheck2.default)(this, CommandBase);
    _this = _super.call(this, args); // Acknowledge self about which command it run.

    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "component", void 0);
    _this.currentCommand = commandsAPI.getCurrentLast(); // Assign instance of current component.

    _this.component = commandsAPI.getComponent(_this.currentCommand); // Who ever need do something before without `super` the constructor can use `initialize` method.

    _this.initialize(args); // Refresh args, maybe the changed via `initialize`.


    args = _this.args; // Validate args before run.

    _this.validateArgs(args);

    return _this;
  }
  /**
   * Function requireContainer().
   *
   * Validate `arg.container` & `arg.containers`.
   *
   * @param {{}} args
   *
   * @throws {Error}
   */


  (0, _createClass2.default)(CommandBase, [{
    key: "requireContainer",
    value: function requireContainer() {
      var _this2 = this;

      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.args;

      if (!args.container && !args.containers) {
        throw Error('container or containers are required.');
      }

      if (args.container && args.containers) {
        throw Error('container and containers cannot go together please select one of them.');
      }

      var containers = args.containers || [args.container];
      containers.forEach(function (container) {
        _this2.requireArgumentInstance('container', elementorModules.editor.Container, {
          container: container
        });
      });
    }
    /**
     * Function initialize().
     *
     * Initialize command, called after construction.
     *
     * @param [args={}]
     */

  }, {
    key: "initialize",
    value: function initialize() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
    } // eslint-disable-line no-unused-vars

    /**
     * Function validateArgs().
     *
     * Validate command arguments.
     *
     * @param [args={}]
     */

  }, {
    key: "validateArgs",
    value: function validateArgs() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
    } // eslint-disable-line no-unused-vars

    /**
     * Function isDataChanged().
     *
     * Whether the editor needs to set change flag on/off.
     *
     * @returns {boolean}
     */

  }, {
    key: "isDataChanged",
    value: function isDataChanged() {
      return false;
    }
    /**
     * Function apply().
     *
     * Do the actual command.
     *
     * @param [args={}]
     *
     * @returns {*}
     */

  }, {
    key: "apply",
    value: function apply() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      // eslint-disable-line no-unused-vars
      elementorModules.ForceMethodImplementation();
    }
    /**
     * Function run().
     *
     * Run command with history & hooks.
     *
     * @returns {*}
     */

  }, {
    key: "run",
    value: function run() {
      var result; // For UI Hooks.

      this.onBeforeRun(this.args);

      try {
        // For Data hooks.
        this.onBeforeApply(this.args);
        result = this.apply(this.args);
      } catch (e) {
        this.onCatchApply(e); // Catch 'Hook-Break' that comes from hooks base.

        if (e instanceof $e.modules.HookBreak) {
          // Bypass.
          return false;
        }
      }

      return this.runAfter(result);
    }
  }, {
    key: "runAfter",
    value: function runAfter(result) {
      var _this3 = this;

      var onAfter = function onAfter(_result) {
        // Run Data hooks.
        _this3.onAfterApply(_this3.args, _result); // TODO: Create Command-Base for Command-Document and apply it on after.


        if (_this3.isDataChanged()) {
          $e.internal('document/save/set-is-modified', {
            status: true
          });
        } // For UI hooks.


        _this3.onAfterRun(_this3.args, _result);
      },
          asyncOnAfter = /*#__PURE__*/function () {
        var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(_result) {
          var results, promises;
          return _regenerator.default.wrap(function _callee$(_context) {
            while (1) {
              switch (_context.prev = _context.next) {
                case 0:
                  // Run Data hooks.
                  results = _this3.onAfterApply(_this3.args, _result), promises = (0, _isArray.default)(results) ? results.flat().filter(function (filtered) {
                    return filtered instanceof _promise.default;
                  }) : [];

                  if (!promises.length) {
                    _context.next = 4;
                    break;
                  }

                  _context.next = 4;
                  return _promise.default.all(promises);

                case 4:
                  if (_this3.isDataChanged()) {
                    // TODO: Create Command-Base for Command-Document and apply it on after.
                    $e.internal('document/save/set-is-modified', {
                      status: true
                    });
                  } // For UI hooks.


                  _this3.onAfterRun(_this3.args, _result);

                case 6:
                case "end":
                  return _context.stop();
              }
            }
          }, _callee);
        }));

        return function asyncOnAfter(_x) {
          return _ref.apply(this, arguments);
        };
      }(); // TODO: Temp code determine if it's a jQuery deferred object.


      if (result && 'object' === (0, _typeof2.default)(result) && result.promise && result.then && result.fail) {
        result.fail(this.onCatchApply.bind(this));
        result.done(onAfter);
      } else if (result instanceof _promise.default) {
        // Override initial result ( promise ) to await onAfter promises, first!.
        return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
          return _regenerator.default.wrap(function _callee2$(_context2) {
            while (1) {
              switch (_context2.prev = _context2.next) {
                case 0:
                  _context2.next = 2;
                  return result.catch(_this3.onCatchApply.bind(_this3));

                case 2:
                  _context2.next = 4;
                  return result.then(function (_result) {
                    return asyncOnAfter(_result);
                  });

                case 4:
                  return _context2.abrupt("return", result);

                case 5:
                case "end":
                  return _context2.stop();
              }
            }
          }, _callee2);
        }))();
      } else {
        onAfter(result);
      }

      return result;
    }
    /**
     * Run all the catch hooks.
     *
     * @param {Error} e
     */

  }, {
    key: "runCatchHooks",
    value: function runCatchHooks(e) {
      $e.hooks.runDataCatch(this.currentCommand, this.args, e);
      $e.hooks.runUICatch(this.currentCommand, this.args, e);
    }
    /**
     * Function onBeforeRun.
     *
     * Called before run().
     *
     * @param [args={}]
     */

  }, {
    key: "onBeforeRun",
    value: function onBeforeRun() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      $e.hooks.runUIBefore(this.currentCommand, args);
    }
    /**
     * Function onAfterRun.
     *
     * Called after run().
     *
     * @param [args={}]
     * @param [result={*}]
     */

  }, {
    key: "onAfterRun",
    value: function onAfterRun() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      var result = arguments.length > 1 ? arguments[1] : undefined;
      $e.hooks.runUIAfter(this.currentCommand, args, result);
    }
    /**
     * Function onBeforeApply.
     *
     * Called before apply().
     *
     * @param [args={}]
     */

  }, {
    key: "onBeforeApply",
    value: function onBeforeApply() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      $e.hooks.runDataDependency(this.currentCommand, args);
    }
    /**
     * Function onAfterApply.
     *
     * Called after apply().
     *
     * @param [args={}]
     * @param [result={*}]
     */

  }, {
    key: "onAfterApply",
    value: function onAfterApply() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      var result = arguments.length > 1 ? arguments[1] : undefined;
      return $e.hooks.runDataAfter(this.currentCommand, args, result);
    }
    /**
     * Function onCatchApply.
     *
     * Called after apply() failed.
     *
     * @param {Error} e
     */

  }, {
    key: "onCatchApply",
    value: function onCatchApply(e) {
      this.runCatchHooks(e);
      elementorCommon.helpers.consoleError(e);
    }
  }], [{
    key: "getInstanceType",
    value: function getInstanceType() {
      return 'CommandBase';
    }
    /**
     * Get info of command.
     *
     * Use to provide 'extra' information about the command.
     *
     * @returns {Object}
     */

  }, {
    key: "getInfo",
    value: function getInfo() {
      return {};
    }
    /**
     * Current component.
     *
     * @type {Component}
     */

  }]);
  return CommandBase;
}(_argsObject.default);

exports.default = CommandBase;

/***/ }),

/***/ "../core/common/assets/js/api/modules/command-data.js":
/*!************************************************************!*\
  !*** ../core/common/assets/js/api/modules/command-data.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

var _assign = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/assign */ "../node_modules/@babel/runtime-corejs2/core-js/object/assign.js"));

var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! ./command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var errors = _interopRequireWildcard(__webpack_require__(/*! ./errors */ "../core/common/assets/js/api/modules/errors/index.js"));

var CommandData = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(CommandData, _CommandBase);

  var _super = (0, _createSuper2.default)(CommandData);

  function CommandData(args) {
    var _this$args$options;

    var _this;

    var commandsAPI = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : $e.data;
    (0, _classCallCheck2.default)(this, CommandData);
    _this = _super.call(this, args, commandsAPI);
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "data", void 0);
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "type", void 0);

    if ((_this$args$options = _this.args.options) !== null && _this$args$options !== void 0 && _this$args$options.type) {
      _this.type = _this.args.options.type;
    }

    return _this;
  }
  /**
   * Function getEndpointFormat().
   *
   * @returns {(null|string)}
   */


  (0, _createClass2.default)(CommandData, [{
    key: "getApplyMethods",
    value:
    /**
     * @param {DataTypes} type
     *
     * @returns {boolean|{before: (function(*=): {}), after: (function({}, *=): {})}}
     */
    function getApplyMethods() {
      var type = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.type;
      var before, after;

      switch (type) {
        case 'create':
          before = this.applyBeforeCreate;
          after = this.applyAfterCreate;
          break;

        case 'delete':
          before = this.applyBeforeDelete;
          after = this.applyAfterDelete;
          break;

        case 'get':
          before = this.applyBeforeGet;
          after = this.applyAfterGet;
          break;

        case 'update':
          before = this.applyBeforeUpdate;
          after = this.applyAfterUpdate;
          break;

        case 'options':
          before = this.applyBeforeOptions;
          after = this.applyAfterOptions;
          break;

        default:
          return false;
      }

      return {
        before: before,
        after: after
      };
    }
    /**
     * Function getRequestData().
     *
     * @returns {RequestData}
     */

  }, {
    key: "getRequestData",
    value: function getRequestData() {
      return {
        type: this.type,
        args: this.args,
        timestamp: new Date().getTime(),
        component: this.component,
        command: this.currentCommand,
        endpoint: $e.data.commandToEndpoint(this.currentCommand, elementorCommon.helpers.cloneObject(this.args), this.constructor.getEndpointFormat())
      };
    }
  }, {
    key: "apply",
    value: function apply() {
      var _this2 = this;

      var applyMethods = this.getApplyMethods(); // Run 'before' method.

      this.args = applyMethods.before(this.args);
      var requestData = this.getRequestData();
      return $e.data.fetch(requestData).then(function (data) {
        _this2.data = data; // Run 'after' method.

        _this2.data = applyMethods.after(data, _this2.args);
        _this2.data = {
          data: _this2.data
        }; // Append requestData.

        _this2.data = (0, _assign.default)({
          __requestData__: requestData
        }, _this2.data);
        return _this2.data;
      });
    }
    /**
     * @param [args={}]
     * @returns {{}} filtered args
     */

  }, {
    key: "applyBeforeCreate",
    value: function applyBeforeCreate() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      return args;
    }
    /**
     * @param {{}} data
     * @param [args={}]
     * @returns {{}} filtered result
     */

  }, {
    key: "applyAfterCreate",
    value: function applyAfterCreate(data) {
      var args = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
      // eslint-disable-line no-unused-vars
      return data;
    }
    /**
     * @param [args={}]
     * @returns {{}} filtered args
     */

  }, {
    key: "applyBeforeDelete",
    value: function applyBeforeDelete() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      return args;
    }
    /**
     * @param {{}} data
     * @param [args={}]
     * @returns {{}} filtered result
     */

  }, {
    key: "applyAfterDelete",
    value: function applyAfterDelete(data) {
      var args = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
      // eslint-disable-line no-unused-vars
      return data;
    }
    /**
     * @param [args={}]
     * @returns {{}} filtered args
     */

  }, {
    key: "applyBeforeGet",
    value: function applyBeforeGet() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      return args;
    }
    /**
     * @param {{}} data
     * @param [args={}]
     * @returns {{}} filtered result
     */

  }, {
    key: "applyAfterGet",
    value: function applyAfterGet(data) {
      var args = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
      // eslint-disable-line no-unused-vars
      return data;
    }
    /**
     * @param [args={}]
     * @returns {{}} filtered args
     */

  }, {
    key: "applyBeforeUpdate",
    value: function applyBeforeUpdate() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      return args;
    }
    /**
     * @param {{}} data
     * @param [args={}]
     * @returns {{}} filtered result
     */

  }, {
    key: "applyAfterUpdate",
    value: function applyAfterUpdate(data) {
      var args = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
      // eslint-disable-line no-unused-vars
      return data;
    }
    /**
     * @param [args={}]
     * @returns {{}} filtered args
     */

  }, {
    key: "applyBeforeOptions",
    value: function applyBeforeOptions() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      return args;
    }
    /**
     * @param {{}} data
     * @param [args={}]
     * @returns {{}} filtered result
     */

  }, {
    key: "applyAfterOptions",
    value: function applyAfterOptions(data) {
      var args = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
      // eslint-disable-line no-unused-vars
      return data;
    }
    /**
     * Called after apply() failed.
     *
     * @param e
     */

  }, {
    key: "onCatchApply",
    value: function onCatchApply(e) {
      var _e, _e$data;

      // TODO: If the errors that returns from the server is consistent remove the '?' from 'e'
      var status = ((_e = e) === null || _e === void 0 ? void 0 : (_e$data = _e.data) === null || _e$data === void 0 ? void 0 : _e$data.status) || 0;
      var dataError = (0, _values.default)(errors).find(function (error) {
        return error.getStatus() === status;
      });

      if (!dataError) {
        dataError = errors.DefaultError;
      }

      e = dataError.create(e.message, e.code, e.data || []);
      this.runCatchHooks(e);
      e.notify();
    }
  }], [{
    key: "getInstanceType",
    value:
    /**
     * Data returned from remote.
     *
     * @type {*}
     */

    /**
     * Fetch type.
     *
     * @type {DataTypes}
     */
    function getInstanceType() {
      return 'CommandData';
    }
  }, {
    key: "getEndpointFormat",
    value: function getEndpointFormat() {
      return null;
    }
  }]);
  return CommandData;
}(_commandBase.default);

exports.default = CommandData;

/***/ }),

/***/ "../core/common/assets/js/api/modules/command-internal-base.js":
/*!*********************************************************************!*\
  !*** ../core/common/assets/js/api/modules/command-internal-base.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! ./command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var CommandInternalBase = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(CommandInternalBase, _CommandBase);

  var _super = (0, _createSuper2.default)(CommandInternalBase);

  function CommandInternalBase(args) {
    var commandsAPI = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : $e.commandsInternal;
    (0, _classCallCheck2.default)(this, CommandInternalBase);
    return _super.call(this, args, commandsAPI);
  }

  (0, _createClass2.default)(CommandInternalBase, null, [{
    key: "getInstanceType",
    value: function getInstanceType() {
      return 'CommandInternalBase';
    }
  }]);
  return CommandInternalBase;
}(_commandBase.default);

exports.default = CommandInternalBase;

/***/ }),

/***/ "../core/common/assets/js/api/modules/commands/close.js":
/*!**************************************************************!*\
  !*** ../core/common/assets/js/api/modules/commands/close.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Close = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Close = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Close, _CommandBase);

  var _super = (0, _createSuper2.default)(Close);

  function Close() {
    (0, _classCallCheck2.default)(this, Close);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Close, [{
    key: "apply",
    value: function apply() {
      this.component.close();
    }
  }]);
  return Close;
}(_commandBase.default);

exports.Close = Close;
var _default = Close;
exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/api/modules/commands/index.js":
/*!**************************************************************!*\
  !*** ../core/common/assets/js/api/modules/commands/index.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "Close", {
  enumerable: true,
  get: function get() {
    return _close.Close;
  }
});

_Object$defineProperty(exports, "Open", {
  enumerable: true,
  get: function get() {
    return _open.Open;
  }
});

_Object$defineProperty(exports, "Toggle", {
  enumerable: true,
  get: function get() {
    return _toggle.Toggle;
  }
});

var _close = __webpack_require__(/*! ./close */ "../core/common/assets/js/api/modules/commands/close.js");

var _open = __webpack_require__(/*! ./open */ "../core/common/assets/js/api/modules/commands/open.js");

var _toggle = __webpack_require__(/*! ./toggle */ "../core/common/assets/js/api/modules/commands/toggle.js");

/***/ }),

/***/ "../core/common/assets/js/api/modules/commands/open.js":
/*!*************************************************************!*\
  !*** ../core/common/assets/js/api/modules/commands/open.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Open = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Open = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Open, _CommandBase);

  var _super = (0, _createSuper2.default)(Open);

  function Open() {
    (0, _classCallCheck2.default)(this, Open);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Open, [{
    key: "apply",
    value: function apply() {
      $e.route(this.component.getNamespace());
    }
  }]);
  return Open;
}(_commandBase.default);

exports.Open = Open;
var _default = Open;
exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/api/modules/commands/toggle.js":
/*!***************************************************************!*\
  !*** ../core/common/assets/js/api/modules/commands/toggle.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Toggle = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var Toggle = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(Toggle, _CommandBase);

  var _super = (0, _createSuper2.default)(Toggle);

  function Toggle() {
    (0, _classCallCheck2.default)(this, Toggle);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Toggle, [{
    key: "apply",
    value: function apply() {
      if (this.component.isOpen) {
        this.component.close();
      } else {
        $e.route(this.component.getNamespace());
      }
    }
  }]);
  return Toggle;
}(_commandBase.default);

exports.Toggle = Toggle;
var _default = Toggle;
exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/api/modules/component-base.js":
/*!**************************************************************!*\
  !*** ../core/common/assets/js/api/modules/component-base.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

__webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var ComponentBase = /*#__PURE__*/function (_elementorModules$Mod) {
  (0, _inherits2.default)(ComponentBase, _elementorModules$Mod);

  var _super = (0, _createSuper2.default)(ComponentBase);

  function ComponentBase() {
    (0, _classCallCheck2.default)(this, ComponentBase);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(ComponentBase, [{
    key: "__construct",
    value: function __construct() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};

      if (args.manager) {
        this.manager = args.manager;
      }

      this.commands = this.defaultCommands();
      this.commandsInternal = this.defaultCommandsInternal();
      this.hooks = this.defaultHooks();
      this.routes = this.defaultRoutes();
      this.tabs = this.defaultTabs();
      this.shortcuts = this.defaultShortcuts();
      this.utils = this.defaultUtils();
      this.data = this.defaultData();
      this.uiStates = this.defaultUiStates();
      this.defaultRoute = '';
      this.currentTab = '';
    }
  }, {
    key: "registerAPI",
    value: function registerAPI() {
      var _this = this;

      (0, _entries.default)(this.getTabs()).forEach(function (tab) {
        return _this.registerTabRoute(tab[0]);
      });
      (0, _entries.default)(this.getRoutes()).forEach(function (_ref) {
        var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
            route = _ref2[0],
            callback = _ref2[1];

        return _this.registerRoute(route, callback);
      });
      (0, _entries.default)(this.getCommands()).forEach(function (_ref3) {
        var _ref4 = (0, _slicedToArray2.default)(_ref3, 2),
            command = _ref4[0],
            callback = _ref4[1];

        return _this.registerCommand(command, callback);
      });
      (0, _entries.default)(this.getCommandsInternal()).forEach(function (_ref5) {
        var _ref6 = (0, _slicedToArray2.default)(_ref5, 2),
            command = _ref6[0],
            callback = _ref6[1];

        return _this.registerCommandInternal(command, callback);
      });
      (0, _values.default)(this.getHooks()).forEach(function (instance) {
        return _this.registerHook(instance);
      });
      (0, _entries.default)(this.getData()).forEach(function (_ref7) {
        var _ref8 = (0, _slicedToArray2.default)(_ref7, 2),
            command = _ref8[0],
            callback = _ref8[1];

        return _this.registerData(command, callback);
      });
      (0, _values.default)(this.getUiStates()).forEach(function (instance) {
        return _this.registerUiState(instance);
      });
    }
    /**
     * @returns {string}
     */

  }, {
    key: "getNamespace",
    value: function getNamespace() {
      elementorModules.ForceMethodImplementation();
    }
  }, {
    key: "getRootContainer",
    value: function getRootContainer() {
      var parts = this.getNamespace().split('/');
      return parts[0];
    }
  }, {
    key: "defaultTabs",
    value: function defaultTabs() {
      return {};
    }
  }, {
    key: "defaultRoutes",
    value: function defaultRoutes() {
      return {};
    }
  }, {
    key: "defaultCommands",
    value: function defaultCommands() {
      return {};
    }
  }, {
    key: "defaultCommandsInternal",
    value: function defaultCommandsInternal() {
      return {};
    }
  }, {
    key: "defaultHooks",
    value: function defaultHooks() {
      return {};
    }
    /**
     * Get the component's default UI states.
     *
     * @return {Object}
     */

  }, {
    key: "defaultUiStates",
    value: function defaultUiStates() {
      return {};
    }
  }, {
    key: "defaultShortcuts",
    value: function defaultShortcuts() {
      return {};
    }
  }, {
    key: "defaultUtils",
    value: function defaultUtils() {
      return {};
    }
  }, {
    key: "defaultData",
    value: function defaultData() {
      return {};
    }
  }, {
    key: "getCommands",
    value: function getCommands() {
      return this.commands;
    }
  }, {
    key: "getCommandsInternal",
    value: function getCommandsInternal() {
      return this.commandsInternal;
    }
  }, {
    key: "getHooks",
    value: function getHooks() {
      return this.hooks;
    }
    /**
     * Retrieve the component's UI states.
     *
     * @return {Object}
     */

  }, {
    key: "getUiStates",
    value: function getUiStates() {
      return this.uiStates;
    }
  }, {
    key: "getRoutes",
    value: function getRoutes() {
      return this.routes;
    }
  }, {
    key: "getTabs",
    value: function getTabs() {
      return this.tabs;
    }
  }, {
    key: "getShortcuts",
    value: function getShortcuts() {
      return this.shortcuts;
    }
  }, {
    key: "getData",
    value: function getData() {
      return this.data;
    }
  }, {
    key: "registerCommand",
    value: function registerCommand(command, callback) {
      $e.commands.register(this, command, callback);
    }
    /**
     * @param {HookBase} instance
     */

  }, {
    key: "registerHook",
    value: function registerHook(instance) {
      return instance.register();
    }
    /**
     * Register a UI state.
     *
     * @param {UiStateBase} instance - UI state instance.
     *
     * @return {void}
     */

  }, {
    key: "registerUiState",
    value: function registerUiState(instance) {
      $e.uiStates.register(instance);
    }
  }, {
    key: "registerCommandInternal",
    value: function registerCommandInternal(command, callback) {
      $e.commandsInternal.register(this, command, callback);
    }
  }, {
    key: "registerRoute",
    value: function registerRoute(route, callback) {
      $e.routes.register(this, route, callback);
    }
  }, {
    key: "registerData",
    value: function registerData(command, callback) {
      $e.data.register(this, command, callback);
    }
  }, {
    key: "unregisterRoute",
    value: function unregisterRoute(route) {
      $e.routes.unregister(this, route);
    }
  }, {
    key: "registerTabRoute",
    value: function registerTabRoute(tab) {
      var _this2 = this;

      this.registerRoute(tab, function (args) {
        return _this2.activateTab(tab, args);
      });
    }
  }, {
    key: "dependency",
    value: function dependency() {
      return true;
    }
  }, {
    key: "open",
    value: function open() {
      return true;
    }
  }, {
    key: "close",
    value: function close() {
      if (!this.isOpen) {
        return false;
      }

      this.isOpen = false;
      this.inactivate();
      $e.routes.clearCurrent(this.getNamespace());
      $e.routes.clearHistory(this.getRootContainer());
      return true;
    }
  }, {
    key: "activate",
    value: function activate() {
      $e.components.activate(this.getNamespace());
    }
  }, {
    key: "inactivate",
    value: function inactivate() {
      $e.components.inactivate(this.getNamespace());
    }
  }, {
    key: "isActive",
    value: function isActive() {
      return $e.components.isActive(this.getNamespace());
    }
  }, {
    key: "onRoute",
    value: function onRoute(route) {
      this.toggleRouteClass(route, true);
      this.toggleHistoryClass();
      this.activate();
      this.trigger('route/open', route);
    }
  }, {
    key: "onCloseRoute",
    value: function onCloseRoute(route) {
      this.toggleRouteClass(route, false);
      this.inactivate();
      this.trigger('route/close', route);
    }
  }, {
    key: "setDefaultRoute",
    value: function setDefaultRoute(route) {
      this.defaultRoute = this.getNamespace() + '/' + route;
    }
  }, {
    key: "getDefaultRoute",
    value: function getDefaultRoute() {
      return this.defaultRoute;
    }
  }, {
    key: "removeTab",
    value: function removeTab(tab) {
      delete this.tabs[tab];
      this.unregisterRoute(tab);
    }
  }, {
    key: "hasTab",
    value: function hasTab(tab) {
      return !!this.tabs[tab];
    }
  }, {
    key: "addTab",
    value: function addTab(tab, args, position) {
      var _this3 = this;

      this.tabs[tab] = args; // It can be 0.

      if ('undefined' !== typeof position) {
        var newTabs = {};
        var ids = (0, _keys.default)(this.tabs); // Remove new tab

        ids.pop(); // Add it to position.

        ids.splice(position, 0, tab);
        ids.forEach(function (id) {
          newTabs[id] = _this3.tabs[id];
        });
        this.tabs = newTabs;
      }

      this.registerTabRoute(tab);
    }
  }, {
    key: "getTabsWrapperSelector",
    value: function getTabsWrapperSelector() {
      return '';
    }
  }, {
    key: "getTabRoute",
    value: function getTabRoute(tab) {
      return this.getNamespace() + '/' + tab;
    }
  }, {
    key: "renderTab",
    value: function renderTab(tab) {} // eslint-disable-line

  }, {
    key: "activateTab",
    value: function activateTab(tab, args) {
      var _this4 = this;

      this.currentTab = tab;
      this.renderTab(tab, args);
      jQuery(this.getTabsWrapperSelector() + ' .elementor-component-tab').off('click').on('click', function (event) {
        $e.route(_this4.getTabRoute(event.currentTarget.dataset.tab), args);
      }).removeClass('elementor-active').filter('[data-tab="' + tab + '"]').addClass('elementor-active');
    }
  }, {
    key: "getActiveTabConfig",
    value: function getActiveTabConfig() {
      return this.tabs[this.currentTab] || {};
    }
  }, {
    key: "getBodyClass",
    value: function getBodyClass(route) {
      return 'e-route-' + route.replace(/\//g, '-');
    }
    /**
     * If command includes uppercase character convert it to lowercase and add `-`.
     * e.g: `CopyAll` is converted to `copy-all`.
     */

  }, {
    key: "normalizeCommandName",
    value: function normalizeCommandName(commandName) {
      return commandName.replace(/[A-Z]/g, function (match, offset) {
        return (offset > 0 ? '-' : '') + match.toLowerCase();
      });
    }
  }, {
    key: "importCommands",
    value: function importCommands(commandsFromImport) {
      var _this5 = this;

      var commands = {}; // Convert `Commands` to `ComponentBase` workable format.

      (0, _entries.default)(commandsFromImport).forEach(function (_ref9) {
        var _ref10 = (0, _slicedToArray2.default)(_ref9, 2),
            className = _ref10[0],
            Class = _ref10[1];

        var command = _this5.normalizeCommandName(className);

        commands[command] = function (args) {
          return new Class(args).run();
        }; // TODO: Temporary code, remove after merge with 'require-commands-base' branch.
        // should not return callback, but Class or Instance without run ( gain performance ).


        $e.commands.classes[_this5.getNamespace() + '/' + command] = Class;
      });
      return commands;
    }
  }, {
    key: "importHooks",
    value: function importHooks(hooksFromImport) {
      var hooks = {};

      for (var key in hooksFromImport) {
        var hook = new hooksFromImport[key]();
        hooks[hook.getId()] = hook;
      }

      return hooks;
    }
    /**
     * Import & initialize the component's UI states.
     * Should be used inside `defaultUiState()`.
     *
     * @param {Object} statesFromImport - UI states from import.
     *
     * @return {Object}
     */

  }, {
    key: "importUiStates",
    value: function importUiStates(statesFromImport) {
      var _this6 = this;

      var uiStates = {};
      (0, _values.default)(statesFromImport).forEach(function (className) {
        var uiState = new className(_this6);
        uiStates[uiState.getId()] = uiState;
      });
      return uiStates;
    }
    /**
     * Set a UI state value.
     * TODO: Should we provide such function? Maybe the developer should implicitly pass the full state ID?
     *
     * @param state - Non-prefixed state ID.
     * @param value - New state value.
     *
     * @return {void}
     */

  }, {
    key: "setUiState",
    value: function setUiState(state, value) {
      $e.uiStates.set("".concat(this.getNamespace(), "/").concat(state), value);
    }
  }, {
    key: "toggleRouteClass",
    value: function toggleRouteClass(route, state) {
      elementorCommon.elements.$body.toggleClass(this.getBodyClass(route), state);
    }
  }, {
    key: "toggleHistoryClass",
    value: function toggleHistoryClass() {
      elementorCommon.elements.$body.toggleClass('e-routes-has-history', !!$e.routes.getHistory(this.getRootContainer()).length);
    }
  }]);
  return ComponentBase;
}(elementorModules.Module);

exports.default = ComponentBase;

/***/ }),

/***/ "../core/common/assets/js/api/modules/component-modal-base.js":
/*!********************************************************************!*\
  !*** ../core/common/assets/js/api/modules/component-modal-base.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _componentBase = _interopRequireDefault(__webpack_require__(/*! ./component-base */ "../core/common/assets/js/api/modules/component-base.js"));

var commands = _interopRequireWildcard(__webpack_require__(/*! ./commands/ */ "../core/common/assets/js/api/modules/commands/index.js"));

var ComponentModalBase = /*#__PURE__*/function (_ComponentBase) {
  (0, _inherits2.default)(ComponentModalBase, _ComponentBase);

  var _super = (0, _createSuper2.default)(ComponentModalBase);

  function ComponentModalBase() {
    (0, _classCallCheck2.default)(this, ComponentModalBase);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(ComponentModalBase, [{
    key: "registerAPI",
    value: function registerAPI() {
      var _this = this;

      (0, _get2.default)((0, _getPrototypeOf2.default)(ComponentModalBase.prototype), "registerAPI", this).call(this);
      $e.shortcuts.register('esc', {
        scopes: [this.getNamespace()],
        callback: function callback() {
          return _this.close();
        }
      });
    }
  }, {
    key: "defaultCommands",
    value: function defaultCommands() {
      return this.importCommands(commands);
    }
  }, {
    key: "defaultRoutes",
    value: function defaultRoutes() {
      return {
        '': function _() {
          /* Nothing to do, it's already rendered. */
        }
      };
    }
  }, {
    key: "open",
    value: function open() {
      var _this2 = this;

      if (!this.layout) {
        var layout = this.getModalLayout();
        this.layout = new layout({
          component: this
        });
        this.layout.getModal().on('hide', function () {
          return _this2.close();
        });
      }

      this.layout.showModal();
      return true;
    }
  }, {
    key: "close",
    value: function close() {
      if (!(0, _get2.default)((0, _getPrototypeOf2.default)(ComponentModalBase.prototype), "close", this).call(this)) {
        return false;
      }

      this.layout.getModal().hide();
      return true;
    }
  }, {
    key: "getModalLayout",
    value: function getModalLayout() {
      elementorModules.ForceMethodImplementation();
    }
  }]);
  return ComponentModalBase;
}(_componentBase.default);

exports.default = ComponentModalBase;

/***/ }),

/***/ "../core/common/assets/js/api/modules/errors/base-error.js":
/*!*****************************************************************!*\
  !*** ../core/common/assets/js/api/modules/errors/base-error.js ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _wrapNativeSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/wrapNativeSuper */ "../node_modules/@babel/runtime-corejs2/helpers/wrapNativeSuper.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var BaseError = /*#__PURE__*/function (_Error) {
  (0, _inherits2.default)(BaseError, _Error);

  var _super = (0, _createSuper2.default)(BaseError);

  /**
   * Error constructor.
   *
   * @param code
   * @param message
   * @param data
   */
  function BaseError() {
    var _this;

    var message = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
    var code = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
    var data = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
    (0, _classCallCheck2.default)(this, BaseError);
    _this = _super.call(this, message);
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "code", '');
    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "data", []);
    _this.code = code;
    _this.data = data;
    return _this;
  }
  /**
   * Notify a message when the error occurs.
   */


  (0, _createClass2.default)(BaseError, [{
    key: "notify",
    value: function notify() {
      elementorCommon.helpers.consoleError((0, _objectSpread2.default)({
        message: this.message
      }, this));
    }
  }], [{
    key: "create",
    value:
    /**
     * The server error code.
     *
     * @type {string}
     */

    /**
     * Additional data about the current error.
     *
     * @type {*[]}
     */

    /**
     * Static helper function to create the error.
     *
     * @param message
     * @param code
     * @param data
     * @returns {BaseError}
     */
    function create(message) {
      var code = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
      var data = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
      return new this(message, code, data);
    }
    /**
     * Returns the status code of the error.
     */

  }, {
    key: "getStatus",
    value: function getStatus() {
      elementorModules.ForceMethodImplementation();
    }
  }]);
  return BaseError;
}( /*#__PURE__*/(0, _wrapNativeSuper2.default)(Error));

exports.default = BaseError;

/***/ }),

/***/ "../core/common/assets/js/api/modules/errors/default-error.js":
/*!********************************************************************!*\
  !*** ../core/common/assets/js/api/modules/errors/default-error.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.DefaultError = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _baseError = _interopRequireDefault(__webpack_require__(/*! ./base-error */ "../core/common/assets/js/api/modules/errors/base-error.js"));

var DefaultError = /*#__PURE__*/function (_BaseError) {
  (0, _inherits2.default)(DefaultError, _BaseError);

  var _super = (0, _createSuper2.default)(DefaultError);

  function DefaultError() {
    (0, _classCallCheck2.default)(this, DefaultError);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(DefaultError, null, [{
    key: "getStatus",
    value: function getStatus() {
      return 0;
    }
  }]);
  return DefaultError;
}(_baseError.default);

exports.DefaultError = DefaultError;
var _default = DefaultError;
exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/api/modules/errors/index.js":
/*!************************************************************!*\
  !*** ../core/common/assets/js/api/modules/errors/index.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "NotFoundError", {
  enumerable: true,
  get: function get() {
    return _notFoundError.NotFoundError;
  }
});

_Object$defineProperty(exports, "DefaultError", {
  enumerable: true,
  get: function get() {
    return _defaultError.DefaultError;
  }
});

var _notFoundError = __webpack_require__(/*! ./not-found-error */ "../core/common/assets/js/api/modules/errors/not-found-error.js");

var _defaultError = __webpack_require__(/*! ./default-error */ "../core/common/assets/js/api/modules/errors/default-error.js");

/***/ }),

/***/ "../core/common/assets/js/api/modules/errors/not-found-error.js":
/*!**********************************************************************!*\
  !*** ../core/common/assets/js/api/modules/errors/not-found-error.js ***!
  \**********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.NotFoundError = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _baseError = _interopRequireDefault(__webpack_require__(/*! ./base-error */ "../core/common/assets/js/api/modules/errors/base-error.js"));

var NotFoundError = /*#__PURE__*/function (_BaseError) {
  (0, _inherits2.default)(NotFoundError, _BaseError);

  var _super = (0, _createSuper2.default)(NotFoundError);

  function NotFoundError() {
    (0, _classCallCheck2.default)(this, NotFoundError);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(NotFoundError, [{
    key: "notify",
    value: function notify() {
      elementorCommon.helpers.consoleWarn(this.message);
    }
  }], [{
    key: "getStatus",
    value: function getStatus() {
      return 404;
    }
  }]);
  return NotFoundError;
}(_baseError.default);

exports.NotFoundError = NotFoundError;
var _default = NotFoundError;
exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/api/modules/hook-base.js":
/*!*********************************************************!*\
  !*** ../core/common/assets/js/api/modules/hook-base.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var HookBase = /*#__PURE__*/function () {
  /**
   * Callback type, eg ( hook, event ).
   *
   * @type {string}
   */

  /**
   * Full command address, that will hook the callback.
   *
   * @type (string)
   */

  /**
   * Unique id of the callback.
   *
   * @type {string}
   */

  /**
   * Function constructor().
   *
   * Create callback base.
   */
  function HookBase() {
    (0, _classCallCheck2.default)(this, HookBase);
    (0, _defineProperty2.default)(this, "type", void 0);
    (0, _defineProperty2.default)(this, "command", void 0);
    (0, _defineProperty2.default)(this, "id", void 0);
    this.initialize();
    this.type = this.getType();
    this.command = this.getCommand();
    this.id = this.getId();
  }
  /**
   * Function initialize().
   *
   * Called after creation of the base, used for initialize extras.
   * Without expending constructor.
   */


  (0, _createClass2.default)(HookBase, [{
    key: "initialize",
    value: function initialize() {}
    /**
     * Function register().
     *
     * Used to register the callback.
     *
     * @throws {Error}
     */

  }, {
    key: "register",
    value: function register() {
      elementorModules.ForceMethodImplementation();
    }
    /**
     * Function getType().
     *
     * Get type eg: ( hook, event, etc ... ).
     *
     * @returns {string}
     *
     * @throws {Error}
     */

  }, {
    key: "getType",
    value: function getType() {
      elementorModules.ForceMethodImplementation();
    }
    /**
     * Function getCommand().
     *
     * Returns the full command path for callback binding.
     *
     * Supports array of strings ( commands ).
     *
     * @returns {string}
     *
     * @throws {Error}
     */

  }, {
    key: "getCommand",
    value: function getCommand() {
      elementorModules.ForceMethodImplementation();
    }
    /**
     * Function getId().
     *
     * Returns command id for the hook (should be unique).
     *
     * @returns {string}
     *
     * @throws {Error}
     */

  }, {
    key: "getId",
    value: function getId() {
      elementorModules.ForceMethodImplementation();
    }
    /**
     * Function getContainerType().
     *
     * Bind eContainer type to callback.
     *
     * Used to gain performance.
     *
     * @return {string} type
     */

  }, {
    key: "getContainerType",
    value: function getContainerType() {}
    /**
     * Function getConditions().
     *
     * Condition for running the callback, if true, call to apply().
     *
     * @param [args={}]
     * @param [result=*]
     *
     * @returns {boolean}
     */

  }, {
    key: "getConditions",
    value: function getConditions() {
      var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
      var result = arguments.length > 1 ? arguments[1] : undefined;
      // eslint-disable-line no-unused-vars
      return true;
    }
    /**
     * Function apply().
     *
     * Apply the callback, ( The actual affect of the callback ).
     *
     * @param [args={}]
     *
     * @returns {*}
     */

  }, {
    key: "apply",
    value: function apply(args) {
      // eslint-disable-line no-unused-vars
      elementorModules.ForceMethodImplementation();
    }
    /**
     * Function run().
     *
     * Run the callback.
     *
     * @param {*} args
     *
     * @returns {*}
     */

  }, {
    key: "run",
    value: function run() {
      var _ref = arguments.length <= 0 ? undefined : arguments[0],
          _ref$options = _ref.options,
          options = _ref$options === void 0 ? {} : _ref$options; // Disable callback if requested by args.options.


      if (options.callbacks && false === options.callbacks[this.id]) {
        return true;
      }

      if (this.getConditions.apply(this, arguments)) {
        if ($e.devTools) {
          $e.devTools.log.callbacks().active(this.type, this.command, this.id);
        }

        return this.apply.apply(this, arguments);
      }

      return true;
    }
  }]);
  return HookBase;
}();

exports.default = HookBase;

/***/ }),

/***/ "../core/common/assets/js/api/modules/hook-break.js":
/*!**********************************************************!*\
  !*** ../core/common/assets/js/api/modules/hook-break.js ***!
  \**********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _wrapNativeSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/wrapNativeSuper */ "../node_modules/@babel/runtime-corejs2/helpers/wrapNativeSuper.js"));

var HookBreak = /*#__PURE__*/function (_Error) {
  (0, _inherits2.default)(HookBreak, _Error);

  var _super = (0, _createSuper2.default)(HookBreak);

  function HookBreak() {
    (0, _classCallCheck2.default)(this, HookBreak);
    return _super.call(this, 'HookBreak');
  }

  return HookBreak;
}( /*#__PURE__*/(0, _wrapNativeSuper2.default)(Error));

exports.default = HookBreak;

/***/ }),

/***/ "../core/common/assets/js/api/modules/hooks/data/after.js":
/*!****************************************************************!*\
  !*** ../core/common/assets/js/api/modules/hooks/data/after.js ***!
  \****************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.After = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _base = _interopRequireDefault(__webpack_require__(/*! ./base */ "../core/common/assets/js/api/modules/hooks/data/base.js"));

var After = /*#__PURE__*/function (_Base) {
  (0, _inherits2.default)(After, _Base);

  var _super = (0, _createSuper2.default)(After);

  function After() {
    (0, _classCallCheck2.default)(this, After);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(After, [{
    key: "register",
    value: function register() {
      $e.hooks.registerDataAfter(this);
    }
  }]);
  return After;
}(_base.default);

exports.After = After;
var _default = After;
exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/api/modules/hooks/data/base.js":
/*!***************************************************************!*\
  !*** ../core/common/assets/js/api/modules/hooks/data/base.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Base = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _hookBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/hook-base */ "../core/common/assets/js/api/modules/hook-base.js"));

var Base = /*#__PURE__*/function (_HookBase) {
  (0, _inherits2.default)(Base, _HookBase);

  var _super = (0, _createSuper2.default)(Base);

  function Base() {
    (0, _classCallCheck2.default)(this, Base);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Base, [{
    key: "getType",
    value: function getType() {
      return 'data';
    }
  }]);
  return Base;
}(_hookBase.default);

exports.Base = Base;
var _default = Base;
exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/api/modules/hooks/data/catch.js":
/*!****************************************************************!*\
  !*** ../core/common/assets/js/api/modules/hooks/data/catch.js ***!
  \****************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Catch = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _base = _interopRequireDefault(__webpack_require__(/*! ./base */ "../core/common/assets/js/api/modules/hooks/data/base.js"));

var Catch = /*#__PURE__*/function (_Base) {
  (0, _inherits2.default)(Catch, _Base);

  var _super = (0, _createSuper2.default)(Catch);

  function Catch() {
    (0, _classCallCheck2.default)(this, Catch);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Catch, [{
    key: "register",
    value: function register() {
      $e.hooks.registerDataCatch(this);
    }
  }]);
  return Catch;
}(_base.default);

exports.Catch = Catch;
var _default = Catch;
exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/api/modules/hooks/data/dependency.js":
/*!*********************************************************************!*\
  !*** ../core/common/assets/js/api/modules/hooks/data/dependency.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Dependency = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _base = _interopRequireDefault(__webpack_require__(/*! ./base */ "../core/common/assets/js/api/modules/hooks/data/base.js"));

var Dependency = /*#__PURE__*/function (_Base) {
  (0, _inherits2.default)(Dependency, _Base);

  var _super = (0, _createSuper2.default)(Dependency);

  function Dependency() {
    (0, _classCallCheck2.default)(this, Dependency);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Dependency, [{
    key: "register",
    value: function register() {
      $e.hooks.registerDataDependency(this);
    }
  }]);
  return Dependency;
}(_base.default);

exports.Dependency = Dependency;
var _default = Dependency;
exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/api/modules/hooks/data/index.js":
/*!****************************************************************!*\
  !*** ../core/common/assets/js/api/modules/hooks/data/index.js ***!
  \****************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "After", {
  enumerable: true,
  get: function get() {
    return _after.After;
  }
});

_Object$defineProperty(exports, "Base", {
  enumerable: true,
  get: function get() {
    return _base.Base;
  }
});

_Object$defineProperty(exports, "Catch", {
  enumerable: true,
  get: function get() {
    return _catch.Catch;
  }
});

_Object$defineProperty(exports, "Dependency", {
  enumerable: true,
  get: function get() {
    return _dependency.Dependency;
  }
});

var _after = __webpack_require__(/*! ./after */ "../core/common/assets/js/api/modules/hooks/data/after.js");

var _base = __webpack_require__(/*! ./base */ "../core/common/assets/js/api/modules/hooks/data/base.js");

var _catch = __webpack_require__(/*! ./catch */ "../core/common/assets/js/api/modules/hooks/data/catch.js");

var _dependency = __webpack_require__(/*! ./dependency */ "../core/common/assets/js/api/modules/hooks/data/dependency.js");

/***/ }),

/***/ "../core/common/assets/js/api/modules/hooks/ui/after.js":
/*!**************************************************************!*\
  !*** ../core/common/assets/js/api/modules/hooks/ui/after.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.After = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _base = _interopRequireDefault(__webpack_require__(/*! ./base */ "../core/common/assets/js/api/modules/hooks/ui/base.js"));

var After = /*#__PURE__*/function (_Base) {
  (0, _inherits2.default)(After, _Base);

  var _super = (0, _createSuper2.default)(After);

  function After() {
    (0, _classCallCheck2.default)(this, After);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(After, [{
    key: "register",
    value: function register() {
      $e.hooks.registerUIAfter(this);
    }
  }]);
  return After;
}(_base.default);

exports.After = After;
var _default = After;
exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/api/modules/hooks/ui/base.js":
/*!*************************************************************!*\
  !*** ../core/common/assets/js/api/modules/hooks/ui/base.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Base = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _hookBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/hook-base */ "../core/common/assets/js/api/modules/hook-base.js"));

var Base = /*#__PURE__*/function (_HookBase) {
  (0, _inherits2.default)(Base, _HookBase);

  var _super = (0, _createSuper2.default)(Base);

  function Base() {
    (0, _classCallCheck2.default)(this, Base);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Base, [{
    key: "getType",
    value: function getType() {
      return 'ui';
    }
  }]);
  return Base;
}(_hookBase.default);

exports.Base = Base;
var _default = Base;
exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/api/modules/hooks/ui/before.js":
/*!***************************************************************!*\
  !*** ../core/common/assets/js/api/modules/hooks/ui/before.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Before = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _base = _interopRequireDefault(__webpack_require__(/*! ./base */ "../core/common/assets/js/api/modules/hooks/ui/base.js"));

var Before = /*#__PURE__*/function (_Base) {
  (0, _inherits2.default)(Before, _Base);

  var _super = (0, _createSuper2.default)(Before);

  function Before() {
    (0, _classCallCheck2.default)(this, Before);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Before, [{
    key: "register",
    value: function register() {
      $e.hooks.registerUIBefore(this);
    }
  }]);
  return Before;
}(_base.default);

exports.Before = Before;
var _default = Before;
exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/api/modules/hooks/ui/catch.js":
/*!**************************************************************!*\
  !*** ../core/common/assets/js/api/modules/hooks/ui/catch.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.Catch = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _base = _interopRequireDefault(__webpack_require__(/*! ./base */ "../core/common/assets/js/api/modules/hooks/ui/base.js"));

var Catch = /*#__PURE__*/function (_Base) {
  (0, _inherits2.default)(Catch, _Base);

  var _super = (0, _createSuper2.default)(Catch);

  function Catch() {
    (0, _classCallCheck2.default)(this, Catch);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Catch, [{
    key: "register",
    value: function register() {
      $e.hooks.registerUICatch(this);
    }
  }]);
  return Catch;
}(_base.default);

exports.Catch = Catch;
var _default = Catch;
exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/api/modules/hooks/ui/index.js":
/*!**************************************************************!*\
  !*** ../core/common/assets/js/api/modules/hooks/ui/index.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "After", {
  enumerable: true,
  get: function get() {
    return _after.After;
  }
});

_Object$defineProperty(exports, "Base", {
  enumerable: true,
  get: function get() {
    return _base.Base;
  }
});

_Object$defineProperty(exports, "Before", {
  enumerable: true,
  get: function get() {
    return _before.Before;
  }
});

_Object$defineProperty(exports, "Catch", {
  enumerable: true,
  get: function get() {
    return _catch.Catch;
  }
});

var _after = __webpack_require__(/*! ./after */ "../core/common/assets/js/api/modules/hooks/ui/after.js");

var _base = __webpack_require__(/*! ./base */ "../core/common/assets/js/api/modules/hooks/ui/base.js");

var _before = __webpack_require__(/*! ./before */ "../core/common/assets/js/api/modules/hooks/ui/before.js");

var _catch = __webpack_require__(/*! ./catch */ "../core/common/assets/js/api/modules/hooks/ui/catch.js");

/***/ }),

/***/ "../core/common/assets/js/utils/debug.js":
/*!***********************************************!*\
  !*** ../core/common/assets/js/utils/debug.js ***!
  \***********************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


__webpack_require__(/*! core-js/modules/es6.function.name.js */ "../node_modules/core-js/modules/es6.function.name.js");

__webpack_require__(/*! core-js/modules/es6.regexp.match.js */ "../node_modules/core-js/modules/es6.regexp.match.js");

// Moved from assets/dev/js/editor/utils
var Debug = function Debug() {
  var self = this,
      errorStack = [],
      settings = {},
      elements = {};

  var initSettings = function initSettings() {
    settings = {
      debounceDelay: 500,
      urlsToWatch: ['elementor/assets']
    };
  };

  var initElements = function initElements() {
    elements.$window = jQuery(window);
  };

  var onError = function onError(event) {
    var _event$originalEvent;

    var error = (_event$originalEvent = event.originalEvent) === null || _event$originalEvent === void 0 ? void 0 : _event$originalEvent.error;

    if (!error) {
      return;
    }

    var isInWatchList = false,
        urlsToWatch = settings.urlsToWatch;
    jQuery.each(urlsToWatch, function () {
      if (-1 !== error.stack.indexOf(this)) {
        isInWatchList = true;
        return false;
      }
    });

    if (!isInWatchList) {
      return;
    }

    self.addError({
      type: error.name,
      message: error.message,
      url: originalEvent.filename,
      line: originalEvent.lineno,
      column: originalEvent.colno
    });
  };

  var bindEvents = function bindEvents() {
    elements.$window.on('error', onError);
  };

  var init = function init() {
    initSettings();
    initElements();
    bindEvents();
    self.sendErrors = _.debounce(self.sendErrors, settings.debounceDelay);
  };

  this.addURLToWatch = function (url) {
    settings.urlsToWatch.push(url);
  };

  this.addCustomError = function (error, category, tag) {
    var errorInfo = {
      type: error.name,
      message: error.message,
      url: error.fileName || error.sourceURL,
      line: error.lineNumber || error.line,
      column: error.columnNumber || error.column,
      customFields: {
        category: category || 'general',
        tag: tag
      }
    };

    if (!errorInfo.url) {
      var stackInfo = error.stack.match(/\n {4}at (.*?(?=:(\d+):(\d+)))/);

      if (stackInfo) {
        errorInfo.url = stackInfo[1];
        errorInfo.line = stackInfo[2];
        errorInfo.column = stackInfo[3];
      }
    }

    this.addError(errorInfo);
  };

  this.addError = function (errorParams) {
    var defaultParams = {
      type: 'Error',
      timestamp: Math.floor(new Date().getTime() / 1000),
      message: null,
      url: null,
      line: null,
      column: null,
      customFields: {}
    };
    errorStack.push(jQuery.extend(true, defaultParams, errorParams));
    self.sendErrors();
  };

  this.sendErrors = function () {
    // Avoid recursions on errors in ajax
    elements.$window.off('error', onError);
    jQuery.ajax({
      url: elementorCommon.config.ajax.url,
      method: 'POST',
      data: {
        action: 'elementor_js_log',
        _nonce: elementorCommon.ajax.getSettings('nonce'),
        data: errorStack
      },
      success: function success() {
        errorStack = []; // Restore error handler

        elements.$window.on('error', onError);
      }
    });
  };

  init();
};

module.exports = Debug;

/***/ }),

/***/ "../core/common/assets/js/utils/environment.js":
/*!*****************************************************!*\
  !*** ../core/common/assets/js/utils/environment.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");

__webpack_require__(/*! core-js/modules/es6.regexp.to-string.js */ "../node_modules/core-js/modules/es6.regexp.to-string.js");

var matchUserAgent = function matchUserAgent(UserAgentStr) {
  return userAgent.indexOf(UserAgentStr) >= 0;
},
    userAgent = navigator.userAgent,
    // Solution influenced by https://stackoverflow.com/questions/9847580/how-to-detect-safari-chrome-ie-firefox-and-opera-browser
// Opera 8.0+
isOpera = !!window.opr && !!opr.addons || !!window.opera || matchUserAgent(' OPR/'),
    // Firefox 1.0+
isFirefox = matchUserAgent('Firefox'),
    // Safari 3.0+ "[object HTMLElementConstructor]"
isSafari = /^((?!chrome|android).)*safari/i.test(userAgent) || /constructor/i.test(window.HTMLElement) || function (p) {
  return '[object SafariRemoteNotification]' === p.toString();
}(!window.safari || typeof safari !== 'undefined' && safari.pushNotification),
    // Internet Explorer 6-11
isIE = /Trident|MSIE/.test(userAgent) && (
/*@cc_on!@*/
 false || !!document.documentMode),
    // Edge 20+
isEdge = !isIE && !!window.StyleMedia || matchUserAgent('Edg'),
    // Google Chrome (Not accurate)
isChrome = !!window.chrome && matchUserAgent('Chrome') && !(isEdge || isOpera),
    // Blink engine
isBlink = matchUserAgent('Chrome') && !!window.CSS,
    // Apple Webkit engine
isAppleWebkit = matchUserAgent('AppleWebKit') && !isBlink,
    environment = {
  appleWebkit: isAppleWebkit,
  blink: isBlink,
  chrome: isChrome,
  edge: isEdge,
  firefox: isFirefox,
  ie: isIE,
  mac: matchUserAgent('Macintosh'),
  opera: isOpera,
  safari: isSafari,
  webkit: matchUserAgent('AppleWebKit')
};

var _default = environment;
exports.default = _default;

/***/ }),

/***/ "../core/common/assets/js/utils/helpers.js":
/*!*************************************************!*\
  !*** ../core/common/assets/js/utils/helpers.js ***!
  \*************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");

__webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");

__webpack_require__(/*! core-js/modules/es6.regexp.to-string.js */ "../node_modules/core-js/modules/es6.regexp.to-string.js");

var _stringify = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/json/stringify */ "../node_modules/@babel/runtime-corejs2/core-js/json/stringify.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var Helpers = /*#__PURE__*/function () {
  function Helpers() {
    (0, _classCallCheck2.default)(this, Helpers);
  }

  (0, _createClass2.default)(Helpers, [{
    key: "softDeprecated",
    value: function softDeprecated(name, version, replacement) {
      if (elementorCommon.config.isDebug) {
        this.deprecatedMessage('soft', name, version, replacement);
      }
    }
  }, {
    key: "hardDeprecated",
    value: function hardDeprecated(name, version, replacement) {
      this.deprecatedMessage('hard', name, version, replacement);
    }
  }, {
    key: "deprecatedMessage",
    value: function deprecatedMessage(type, name, version, replacement) {
      var message = "`".concat(name, "` is ").concat(type, " deprecated since ").concat(version);

      if (replacement) {
        message += " - Use `".concat(replacement, "` instead");
      }

      this.consoleWarn(message);
    }
  }, {
    key: "consoleWarn",
    value: function consoleWarn() {
      var _console;

      var style = "font-size: 12px; background-image: url(\"".concat(elementorCommon.config.urls.assets, "images/logo-icon.png\"); background-repeat: no-repeat; background-size: contain;");

      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
        args[_key] = arguments[_key];
      }

      args.unshift('%c  %c', style, '');

      (_console = console).warn.apply(_console, args); // eslint-disable-line no-console

    }
  }, {
    key: "consoleError",
    value: function consoleError(message) {
      // TODO: function is part of $e.
      // Show an error if devTools is available.
      if ($e.devTools) {
        $e.devTools.log.error(message);
      } // If not a 'Hook-Break' then show error.


      if (!(message instanceof $e.modules.HookBreak)) {
        // eslint-disable-next-line no-console
        console.error(message);
      }
    }
  }, {
    key: "deprecatedMethod",
    value: function deprecatedMethod(methodName, version, replacement) {
      this.deprecatedMessage('hard', methodName, version, replacement); // This itself is deprecated.

      this.softDeprecated('elementorCommon.helpers.deprecatedMethod', '2.8.0', 'elementorCommon.helpers.softDeprecated || elementorCommon.helpers.hardDeprecated');
    }
  }, {
    key: "cloneObject",
    value: function cloneObject(object) {
      return JSON.parse((0, _stringify.default)(object));
    }
  }, {
    key: "upperCaseWords",
    value: function upperCaseWords(string) {
      return (string + '').replace(/^(.)|\s+(.)/g, function ($1) {
        return $1.toUpperCase();
      });
    }
  }, {
    key: "getUniqueId",
    value: function getUniqueId() {
      return Math.random().toString(16).substr(2, 7);
    }
  }]);
  return Helpers;
}();

exports.default = Helpers;

/***/ }),

/***/ "../core/common/assets/js/utils/storage.js":
/*!*************************************************!*\
  !*** ../core/common/assets/js/utils/storage.js ***!
  \*************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var _stringify = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/json/stringify */ "../node_modules/@babel/runtime-corejs2/core-js/json/stringify.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _default = /*#__PURE__*/function (_elementorModules$Mod) {
  (0, _inherits2.default)(_default, _elementorModules$Mod);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "get",
    value: function get(key, options) {
      options = options || {};
      var storage;

      try {
        storage = options.session ? sessionStorage : localStorage;
      } catch (e) {
        return key ? undefined : {};
      }

      var elementorStorage = storage.getItem('elementor');

      if (elementorStorage) {
        elementorStorage = JSON.parse(elementorStorage);
      } else {
        elementorStorage = {};
      }

      if (!elementorStorage.__expiration) {
        elementorStorage.__expiration = {};
      }

      var expiration = elementorStorage.__expiration;
      var expirationToCheck = [];

      if (key) {
        if (expiration[key]) {
          expirationToCheck = [key];
        }
      } else {
        expirationToCheck = (0, _keys.default)(expiration);
      }

      var entryExpired = false;
      expirationToCheck.forEach(function (expirationKey) {
        if (new Date(expiration[expirationKey]) < new Date()) {
          delete elementorStorage[expirationKey];
          delete expiration[expirationKey];
          entryExpired = true;
        }
      });

      if (entryExpired) {
        this.save(elementorStorage, options.session);
      }

      if (key) {
        return elementorStorage[key];
      }

      return elementorStorage;
    }
  }, {
    key: "set",
    value: function set(key, value, options) {
      options = options || {};
      var elementorStorage = this.get(null, options);
      elementorStorage[key] = value;

      if (options.lifetimeInSeconds) {
        var date = new Date();
        date.setTime(date.getTime() + options.lifetimeInSeconds * 1000);
        elementorStorage.__expiration[key] = date.getTime();
      }

      this.save(elementorStorage, options.session);
    }
  }, {
    key: "save",
    value: function save(object, session) {
      var storage;

      try {
        storage = session ? sessionStorage : localStorage;
      } catch (e) {
        return;
      }

      storage.setItem('elementor', (0, _stringify.default)(object));
    }
  }]);
  return _default;
}(elementorModules.Module);

exports.default = _default;

/***/ }),

/***/ "../core/common/modules/ajax/assets/js/ajax.js":
/*!*****************************************************!*\
  !*** ../core/common/modules/ajax/assets/js/ajax.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _stringify = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/json/stringify */ "../node_modules/@babel/runtime-corejs2/core-js/json/stringify.js"));

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _assertThisInitialized2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/assertThisInitialized */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _default = /*#__PURE__*/function (_elementorModules$Mod) {
  (0, _inherits2.default)(_default, _elementorModules$Mod);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    var _this;

    (0, _classCallCheck2.default)(this, _default);

    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }

    _this = _super.call.apply(_super, [this].concat(args));
    _this.requests = {};
    _this.cache = {};

    _this.initRequestConstants();

    _this.debounceSendBatch = _.debounce(_this.sendBatch.bind((0, _assertThisInitialized2.default)(_this)), 500);
    return _this;
  }

  (0, _createClass2.default)(_default, [{
    key: "getDefaultSettings",
    value: function getDefaultSettings() {
      return {
        ajaxParams: {
          type: 'POST',
          url: elementorCommon.config.ajax.url,
          data: {},
          dataType: 'json'
        },
        actionPrefix: 'elementor_'
      };
    }
  }, {
    key: "initRequestConstants",
    value: function initRequestConstants() {
      this.requestConstants = {
        _nonce: this.getSettings('nonce')
      };
    }
  }, {
    key: "addRequestConstant",
    value: function addRequestConstant(key, value) {
      this.requestConstants[key] = value;
    }
  }, {
    key: "getCacheKey",
    value: function getCacheKey(request) {
      return (0, _stringify.default)({
        unique_id: request.unique_id,
        data: request.data
      });
    }
  }, {
    key: "loadObjects",
    value: function loadObjects(options) {
      var _this2 = this;

      var dataCollection = {};
      var deferredArray = [];

      if (options.before) {
        options.before();
      }

      options.ids.forEach(function (objectId) {
        deferredArray.push(_this2.load({
          action: options.action,
          unique_id: options.data.unique_id + objectId,
          data: jQuery.extend({
            id: objectId
          }, options.data)
        }).done(function (data) {
          return dataCollection = jQuery.extend(dataCollection, data);
        }));
      });
      jQuery.when.apply(jQuery, deferredArray).done(function () {
        return options.success(dataCollection);
      });
    }
  }, {
    key: "load",
    value: function load(request, immediately) {
      var _this3 = this;

      if (!request.unique_id) {
        request.unique_id = request.action;
      }

      if (request.before) {
        request.before();
      }

      var deferred;
      var cacheKey = this.getCacheKey(request);

      if (_.has(this.cache, cacheKey)) {
        deferred = jQuery.Deferred().done(request.success).resolve(this.cache[cacheKey]);
      } else {
        deferred = this.addRequest(request.action, {
          data: request.data,
          unique_id: request.unique_id,
          success: function success(data) {
            return _this3.cache[cacheKey] = data;
          }
        }, immediately).done(request.success);
      }

      return deferred;
    }
  }, {
    key: "addRequest",
    value: function addRequest(action, options, immediately) {
      options = options || {};

      if (!options.unique_id) {
        options.unique_id = action;
      }

      options.deferred = jQuery.Deferred().done(options.success).fail(options.error).always(options.complete);
      var request = {
        action: action,
        options: options
      };

      if (immediately) {
        var requests = {};
        requests[options.unique_id] = request;
        options.deferred.jqXhr = this.sendBatch(requests);
      } else {
        this.requests[options.unique_id] = request;
        this.debounceSendBatch();
      }

      return options.deferred;
    }
  }, {
    key: "sendBatch",
    value: function sendBatch(requests) {
      var actions = {};

      if (!requests) {
        requests = this.requests; // Empty for next batch.

        this.requests = {};
      }

      (0, _entries.default)(requests).forEach(function (_ref) {
        var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
            id = _ref2[0],
            request = _ref2[1];

        return actions[id] = {
          action: request.action,
          data: request.options.data
        };
      });
      return this.send('ajax', {
        data: {
          actions: (0, _stringify.default)(actions)
        },
        success: function success(data) {
          (0, _entries.default)(data.responses).forEach(function (_ref3) {
            var _ref4 = (0, _slicedToArray2.default)(_ref3, 2),
                id = _ref4[0],
                response = _ref4[1];

            var options = requests[id].options;

            if (options) {
              if (response.success) {
                options.deferred.resolve(response.data);
              } else if (!response.success) {
                options.deferred.reject(response.data);
              }
            }
          });
        },
        error: function error(data) {
          return (0, _values.default)(requests).forEach(function (args) {
            if (args.options) {
              args.options.deferred.reject(data);
            }
          });
        }
      });
    }
  }, {
    key: "prepareSend",
    value: function prepareSend(action, options) {
      var _this4 = this;

      var settings = this.getSettings(),
          ajaxParams = elementorCommon.helpers.cloneObject(settings.ajaxParams);
      options = options || {};
      action = settings.actionPrefix + action;
      jQuery.extend(ajaxParams, options);
      var requestConstants = elementorCommon.helpers.cloneObject(this.requestConstants);
      requestConstants.action = action;
      var isFormData = ajaxParams.data instanceof FormData;
      (0, _entries.default)(requestConstants).forEach(function (_ref5) {
        var _ref6 = (0, _slicedToArray2.default)(_ref5, 2),
            key = _ref6[0],
            value = _ref6[1];

        if (isFormData) {
          ajaxParams.data.append(key, value);
        } else {
          ajaxParams.data[key] = value;
        }
      });
      var successCallback = ajaxParams.success,
          errorCallback = ajaxParams.error;

      if (successCallback || errorCallback) {
        ajaxParams.success = function (response) {
          if (response.success && successCallback) {
            successCallback(response.data);
          }

          if (!response.success && errorCallback) {
            errorCallback(response.data);
          }
        };

        if (errorCallback) {
          ajaxParams.error = function (data) {
            return errorCallback(data);
          };
        } else {
          ajaxParams.error = function (xmlHttpRequest) {
            if (xmlHttpRequest.readyState || 'abort' !== xmlHttpRequest.statusText) {
              _this4.trigger('request:unhandledError', xmlHttpRequest);
            }
          };
        }
      }

      return ajaxParams;
    }
  }, {
    key: "send",
    value: function send(action, options) {
      return jQuery.ajax(this.prepareSend(action, options));
    }
  }, {
    key: "addRequestCache",
    value: function addRequestCache(request, data) {
      var cacheKey = this.getCacheKey(request);
      this.cache[cacheKey] = data;
    }
  }, {
    key: "invalidateCache",
    value: function invalidateCache(request) {
      var cacheKey = this.getCacheKey(request);
      delete this.cache[cacheKey];
    }
  }]);
  return _default;
}(elementorModules.Module);

exports.default = _default;

/***/ }),

/***/ "../core/common/modules/connect/assets/js/connect.js":
/*!***********************************************************!*\
  !*** ../core/common/modules/connect/assets/js/connect.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

__webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _default = /*#__PURE__*/function (_elementorModules$Vie) {
  (0, _inherits2.default)(_default, _elementorModules$Vie);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "addPopupPlugin",
    value: function addPopupPlugin() {
      var counter = 0;

      jQuery.fn.elementorConnect = function (options) {
        var settings = jQuery.extend({
          // These are the defaults.
          success: function success() {
            return location.reload();
          },
          error: function error() {
            elementor.notifications.showToast({
              message: __('Unable to connect', 'elementor')
            });
          },
          UTM: function UTM() {
            var prevLibraryRoute = $e.routes.getHistory('library').reverse()[0].route,
                tabName = prevLibraryRoute.split('/')[2];
            return "&utm_source=editor-panel&utm_medium=wp-dash&utm_campaign=insert_".concat(tabName);
          }
        }, options);
        this.each(function () {
          counter++;
          var $this = jQuery(this),
              callbackId = 'cb' + counter;
          $this.attr({
            target: '_blank',
            rel: 'opener',
            href: $this.attr('href') + '&mode=popup&callback_id=' + callbackId + settings.UTM()
          });
          elementorCommon.elements.$window.on('elementor/connect/success/' + callbackId, settings.success).on('elementor/connect/error/' + callbackId, settings.error);
        });
        return this;
      };
    }
  }, {
    key: "getDefaultSettings",
    value: function getDefaultSettings() {
      return {
        selectors: {
          connectButton: '#elementor-template-library-connect__button'
        }
      };
    }
  }, {
    key: "getDefaultElements",
    value: function getDefaultElements() {
      return {
        $connectButton: jQuery(this.getSettings('selectors.connectButton'))
      };
    }
  }, {
    key: "applyPopup",
    value: function applyPopup() {
      this.elements.$connectButton.elementorConnect();
    }
  }, {
    key: "onInit",
    value: function onInit() {
      (0, _get2.default)((0, _getPrototypeOf2.default)(_default.prototype), "onInit", this).call(this);
      this.addPopupPlugin();
      this.applyPopup();
    }
  }]);
  return _default;
}(elementorModules.ViewModule);

exports.default = _default;

/***/ }),

/***/ "../core/common/modules/finder/assets/js/commands/index.js":
/*!*****************************************************************!*\
  !*** ../core/common/modules/finder/assets/js/commands/index.js ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "NavigateDown", {
  enumerable: true,
  get: function get() {
    return _navigateDown.NavigateDown;
  }
});

_Object$defineProperty(exports, "NavigateSelect", {
  enumerable: true,
  get: function get() {
    return _navigateSelect.NavigateSelect;
  }
});

_Object$defineProperty(exports, "NavigateUp", {
  enumerable: true,
  get: function get() {
    return _navigateUp.NavigateUp;
  }
});

var _navigateDown = __webpack_require__(/*! ./navigate-down */ "../core/common/modules/finder/assets/js/commands/navigate-down.js");

var _navigateSelect = __webpack_require__(/*! ./navigate-select */ "../core/common/modules/finder/assets/js/commands/navigate-select.js");

var _navigateUp = __webpack_require__(/*! ./navigate-up */ "../core/common/modules/finder/assets/js/commands/navigate-up.js");

/***/ }),

/***/ "../core/common/modules/finder/assets/js/commands/navigate-down.js":
/*!*************************************************************************!*\
  !*** ../core/common/modules/finder/assets/js/commands/navigate-down.js ***!
  \*************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.NavigateDown = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var NavigateDown = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(NavigateDown, _CommandBase);

  var _super = (0, _createSuper2.default)(NavigateDown);

  function NavigateDown() {
    (0, _classCallCheck2.default)(this, NavigateDown);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(NavigateDown, [{
    key: "apply",
    value: function apply() {
      this.component.getItemsView().activateNextItem();
    }
  }]);
  return NavigateDown;
}(_commandBase.default);

exports.NavigateDown = NavigateDown;
var _default = NavigateDown;
exports.default = _default;

/***/ }),

/***/ "../core/common/modules/finder/assets/js/commands/navigate-select.js":
/*!***************************************************************************!*\
  !*** ../core/common/modules/finder/assets/js/commands/navigate-select.js ***!
  \***************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.NavigateSelect = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var NavigateSelect = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(NavigateSelect, _CommandBase);

  var _super = (0, _createSuper2.default)(NavigateSelect);

  function NavigateSelect() {
    (0, _classCallCheck2.default)(this, NavigateSelect);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(NavigateSelect, [{
    key: "apply",
    value: function apply(args) {
      this.component.getItemsView().goToActiveItem(args);
    }
  }]);
  return NavigateSelect;
}(_commandBase.default);

exports.NavigateSelect = NavigateSelect;
var _default = NavigateSelect;
exports.default = _default;

/***/ }),

/***/ "../core/common/modules/finder/assets/js/commands/navigate-up.js":
/*!***********************************************************************!*\
  !*** ../core/common/modules/finder/assets/js/commands/navigate-up.js ***!
  \***********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = exports.NavigateUp = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _commandBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/command-base */ "../core/common/assets/js/api/modules/command-base.js"));

var NavigateUp = /*#__PURE__*/function (_CommandBase) {
  (0, _inherits2.default)(NavigateUp, _CommandBase);

  var _super = (0, _createSuper2.default)(NavigateUp);

  function NavigateUp() {
    (0, _classCallCheck2.default)(this, NavigateUp);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(NavigateUp, [{
    key: "apply",
    value: function apply() {
      this.component.getItemsView().activateNextItem(true);
    }
  }]);
  return NavigateUp;
}(_commandBase.default);

exports.NavigateUp = NavigateUp;
var _default = NavigateUp;
exports.default = _default;

/***/ }),

/***/ "../core/common/modules/finder/assets/js/component.js":
/*!************************************************************!*\
  !*** ../core/common/modules/finder/assets/js/component.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _componentModalBase = _interopRequireDefault(__webpack_require__(/*! elementor-api/modules/component-modal-base */ "../core/common/assets/js/api/modules/component-modal-base.js"));

var _layout = _interopRequireDefault(__webpack_require__(/*! ./modal/views/layout */ "../core/common/modules/finder/assets/js/modal/views/layout.js"));

var commands = _interopRequireWildcard(__webpack_require__(/*! ./commands/ */ "../core/common/modules/finder/assets/js/commands/index.js"));

var Component = /*#__PURE__*/function (_ComponentModalBase) {
  (0, _inherits2.default)(Component, _ComponentModalBase);

  var _super = (0, _createSuper2.default)(Component);

  function Component() {
    (0, _classCallCheck2.default)(this, Component);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Component, [{
    key: "getNamespace",
    value: function getNamespace() {
      return 'finder';
    }
  }, {
    key: "defaultShortcuts",
    value: function defaultShortcuts() {
      var _this = this;

      return {
        '': {
          keys: 'ctrl+e'
        },
        'navigate-down': {
          keys: 'down',
          scopes: [this.getNamespace()],
          dependency: function dependency() {
            return _this.getItemsView();
          }
        },
        'navigate-up': {
          keys: 'up',
          scopes: [this.getNamespace()],
          dependency: function dependency() {
            return _this.getItemsView();
          }
        },
        'navigate-select': {
          keys: 'enter',
          scopes: [this.getNamespace()],
          dependency: function dependency() {
            return _this.getItemsView().$activeItem;
          }
        }
      };
    }
  }, {
    key: "defaultCommands",
    value: function defaultCommands() {
      var modalCommands = (0, _get2.default)((0, _getPrototypeOf2.default)(Component.prototype), "defaultCommands", this).call(this);
      return (0, _objectSpread2.default)((0, _objectSpread2.default)({
        'navigate/down': function navigateDown() {
          elementorCommon.helpers.softDeprecated("$e.run( 'finder/navigate/down' )", '3.0.0', "$e.run( 'finder/navigate-down' )");
          $e.run('finder/navigate-down');
        },
        'navigate/up': function navigateUp() {
          elementorCommon.helpers.softDeprecated("$e.run( 'finder/navigate/up' )", '3.0.0', "$e.run( 'finder/navigate-up' )");
          $e.run('finder/navigate-up');
        },
        'navigate/select': function navigateSelect(event) {
          elementorCommon.helpers.softDeprecated("$e.run( 'finder/navigate/select', event )", '3.0.0', "$e.run( 'finder/navigate-select', event )"); // TODO: Fix $e.shortcuts use args. ( args.event ).

          $e.run('finder/navigate-select', event);
        }
      }, modalCommands), this.importCommands(commands));
    }
  }, {
    key: "getModalLayout",
    value: function getModalLayout() {
      return _layout.default;
    }
  }, {
    key: "getItemsView",
    value: function getItemsView() {
      return this.layout.modalContent.currentView.content.currentView;
    }
  }]);
  return Component;
}(_componentModalBase.default);

exports.default = Component;

/***/ }),

/***/ "../core/common/modules/finder/assets/js/finder.js":
/*!*********************************************************!*\
  !*** ../core/common/modules/finder/assets/js/finder.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _component = _interopRequireDefault(__webpack_require__(/*! ./component */ "../core/common/modules/finder/assets/js/component.js"));

var _default = /*#__PURE__*/function (_elementorModules$Mod) {
  (0, _inherits2.default)(_default, _elementorModules$Mod);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "onInit",
    value: function onInit() {
      // TODO: Temp fix, do not load finder in theme-builder.
      // Better to pass into '$e' constructor the app owner. ( admin, editor, preview, iframe ).
      if (window.top !== window) {
        return;
      }

      this.channel = Backbone.Radio.channel('ELEMENTOR:finder');
      $e.components.register(new _component.default({
        manager: this
      }));
    }
  }]);
  return _default;
}(elementorModules.Module);

exports.default = _default;

/***/ }),

/***/ "../core/common/modules/finder/assets/js/modal/model/item.js":
/*!*******************************************************************!*\
  !*** ../core/common/modules/finder/assets/js/modal/model/item.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _default = /*#__PURE__*/function (_Backbone$Model) {
  (0, _inherits2.default)(_default, _Backbone$Model);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "defaults",
    value: function defaults() {
      return {
        description: '',
        icon: 'settings',
        url: '',
        keywords: [],
        actions: []
      };
    }
  }]);
  return _default;
}(Backbone.Model);

exports.default = _default;

/***/ }),

/***/ "../core/common/modules/finder/assets/js/modal/views/categories.js":
/*!*************************************************************************!*\
  !*** ../core/common/modules/finder/assets/js/modal/views/categories.js ***!
  \*************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _category = _interopRequireDefault(__webpack_require__(/*! ./category */ "../core/common/modules/finder/assets/js/modal/views/category.js"));

var _dynamicCategory = _interopRequireDefault(__webpack_require__(/*! ./dynamic-category */ "../core/common/modules/finder/assets/js/modal/views/dynamic-category.js"));

var _default = /*#__PURE__*/function (_Marionette$Composite) {
  (0, _inherits2.default)(_default, _Marionette$Composite);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "id",
    value: function id() {
      return 'elementor-finder__results-container';
    }
  }, {
    key: "ui",
    value: function ui() {
      this.selectors = {
        noResults: '#elementor-finder__no-results',
        categoryItem: '.elementor-finder__results__item'
      };
      return this.selectors;
    }
  }, {
    key: "events",
    value: function events() {
      return {
        'mouseenter @ui.categoryItem': 'onCategoryItemMouseEnter'
      };
    }
  }, {
    key: "getTemplate",
    value: function getTemplate() {
      return '#tmpl-elementor-finder-results-container';
    }
  }, {
    key: "getChildView",
    value: function getChildView(childModel) {
      return childModel.get('dynamic') ? _dynamicCategory.default : _category.default;
    }
  }, {
    key: "initialize",
    value: function initialize() {
      this.$activeItem = null;
      this.childViewContainer = '#elementor-finder__results';
      this.collection = new Backbone.Collection((0, _values.default)(elementorCommon.finder.getSettings('data')));
    }
  }, {
    key: "activateItem",
    value: function activateItem($item) {
      if (this.$activeItem) {
        this.$activeItem.removeClass('elementor-active');
      }

      $item.addClass('elementor-active');
      this.$activeItem = $item;
    }
  }, {
    key: "activateNextItem",
    value: function activateNextItem(reverse) {
      var $allItems = jQuery(this.selectors.categoryItem);
      var nextItemIndex = 0;

      if (this.$activeItem) {
        nextItemIndex = $allItems.index(this.$activeItem) + (reverse ? -1 : 1);

        if (nextItemIndex >= $allItems.length) {
          nextItemIndex = 0;
        } else if (nextItemIndex < 0) {
          nextItemIndex = $allItems.length - 1;
        }
      }

      var $nextItem = $allItems.eq(nextItemIndex);
      this.activateItem($nextItem);
      $nextItem[0].scrollIntoView({
        block: 'nearest'
      });
    }
  }, {
    key: "goToActiveItem",
    value: function goToActiveItem(event) {
      var $a = this.$activeItem.children('a'),
          isControlClicked = $e.shortcuts.isControlEvent(event);

      if (isControlClicked) {
        $a.attr('target', '_blank');
      }

      $a[0].click();

      if (isControlClicked) {
        $a.removeAttr('target');
      }
    }
  }, {
    key: "onCategoryItemMouseEnter",
    value: function onCategoryItemMouseEnter(event) {
      this.activateItem(jQuery(event.currentTarget));
    }
  }, {
    key: "onChildviewToggleVisibility",
    value: function onChildviewToggleVisibility() {
      var allCategoriesAreEmpty = this.children.every(function (child) {
        return !child.isVisible;
      });
      this.ui.noResults.toggle(allCategoriesAreEmpty);
    }
  }]);
  return _default;
}(Marionette.CompositeView);

exports.default = _default;

/***/ }),

/***/ "../core/common/modules/finder/assets/js/modal/views/category.js":
/*!***********************************************************************!*\
  !*** ../core/common/modules/finder/assets/js/modal/views/category.js ***!
  \***********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _values = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/values */ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _item = _interopRequireDefault(__webpack_require__(/*! ./item */ "../core/common/modules/finder/assets/js/modal/views/item.js"));

var _item2 = _interopRequireDefault(__webpack_require__(/*! ../model/item */ "../core/common/modules/finder/assets/js/modal/model/item.js"));

var _default = /*#__PURE__*/function (_Marionette$Composite) {
  (0, _inherits2.default)(_default, _Marionette$Composite);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "className",
    value: function className() {
      return 'elementor-finder__results__category';
    }
  }, {
    key: "getTemplate",
    value: function getTemplate() {
      return '#tmpl-elementor-finder__results__category';
    }
  }, {
    key: "getChildView",
    value: function getChildView() {
      return _item.default;
    }
  }, {
    key: "initialize",
    value: function initialize() {
      this.childViewContainer = '.elementor-finder__results__category__items';
      this.isVisible = true;
      var items = this.model.get('items');

      if (items) {
        items = (0, _values.default)(items);
      }

      this.collection = new Backbone.Collection(items, {
        model: _item2.default
      });
    }
  }, {
    key: "filter",
    value: function filter(childModel) {
      var textFilter = this.getTextFilter();

      if (childModel.get('title').toLowerCase().indexOf(textFilter) >= 0) {
        return true;
      }

      return childModel.get('keywords').some(function (keyword) {
        return keyword.indexOf(textFilter) >= 0;
      });
    }
  }, {
    key: "getTextFilter",
    value: function getTextFilter() {
      return elementorCommon.finder.channel.request('filter:text').trim().toLowerCase();
    }
  }, {
    key: "toggleElement",
    value: function toggleElement() {
      var isCurrentlyVisible = !!this.children.length;

      if (isCurrentlyVisible !== this.isVisible) {
        this.isVisible = isCurrentlyVisible;
        this.$el.toggle(isCurrentlyVisible);
        this.triggerMethod('toggle:visibility');
      }
    }
  }, {
    key: "onRender",
    value: function onRender() {
      this.listenTo(elementorCommon.finder.channel, 'filter:change', this.onFilterChange.bind(this));
    }
  }, {
    key: "onFilterChange",
    value: function onFilterChange() {
      this._renderChildren();
    }
  }, {
    key: "onRenderCollection",
    value: function onRenderCollection() {
      this.toggleElement();
    }
  }]);
  return _default;
}(Marionette.CompositeView);

exports.default = _default;

/***/ }),

/***/ "../core/common/modules/finder/assets/js/modal/views/content.js":
/*!**********************************************************************!*\
  !*** ../core/common/modules/finder/assets/js/modal/views/content.js ***!
  \**********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _categories = _interopRequireDefault(__webpack_require__(/*! ./categories */ "../core/common/modules/finder/assets/js/modal/views/categories.js"));

var _default = /*#__PURE__*/function (_Marionette$LayoutVie) {
  (0, _inherits2.default)(_default, _Marionette$LayoutVie);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "id",
    value: function id() {
      return 'elementor-finder';
    }
  }, {
    key: "getTemplate",
    value: function getTemplate() {
      return '#tmpl-elementor-finder';
    }
  }, {
    key: "ui",
    value: function ui() {
      return {
        searchInput: '#elementor-finder__search__input'
      };
    }
  }, {
    key: "events",
    value: function events() {
      return {
        'input @ui.searchInput': 'onSearchInputInput'
      };
    }
  }, {
    key: "regions",
    value: function regions() {
      return {
        content: '#elementor-finder__content'
      };
    }
  }, {
    key: "showCategoriesView",
    value: function showCategoriesView() {
      this.content.show(new _categories.default());
    }
  }, {
    key: "onSearchInputInput",
    value: function onSearchInputInput() {
      var value = this.ui.searchInput.val();

      if (value) {
        elementorCommon.finder.channel.reply('filter:text', value).trigger('filter:change');

        if (!(this.content.currentView instanceof _categories.default)) {
          this.showCategoriesView();
        }
      }

      this.content.currentView.$el.toggle(!!value);
    }
  }]);
  return _default;
}(Marionette.LayoutView);

exports.default = _default;

/***/ }),

/***/ "../core/common/modules/finder/assets/js/modal/views/dynamic-category.js":
/*!*******************************************************************************!*\
  !*** ../core/common/modules/finder/assets/js/modal/views/dynamic-category.js ***!
  \*******************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _category = _interopRequireDefault(__webpack_require__(/*! ./category */ "../core/common/modules/finder/assets/js/modal/views/category.js"));

var _default = /*#__PURE__*/function (_Category) {
  (0, _inherits2.default)(_default, _Category);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "className",
    value: function className() {
      return (0, _get2.default)((0, _getPrototypeOf2.default)(_default.prototype), "className", this).call(this) + ' elementor-finder__results__category--dynamic';
    }
  }, {
    key: "ui",
    value: function ui() {
      return {
        title: '.elementor-finder__results__category__title'
      };
    }
  }, {
    key: "fetchData",
    value: function fetchData() {
      var _this = this;

      this.ui.loadingIcon.show();
      elementorCommon.ajax.addRequest('finder_get_category_items', {
        data: {
          category: this.model.get('name'),
          filter: this.getTextFilter()
        },
        success: function success(data) {
          if (_this.isDestroyed) {
            return;
          }

          _this.collection.set(data);

          _this.toggleElement();

          _this.ui.loadingIcon.hide();
        }
      });
    }
  }, {
    key: "filter",
    value: function filter() {
      return true;
    }
  }, {
    key: "onFilterChange",
    value: function onFilterChange() {
      this.fetchData();
    }
  }, {
    key: "onRender",
    value: function onRender() {
      (0, _get2.default)((0, _getPrototypeOf2.default)(_default.prototype), "onRender", this).call(this);
      this.ui.loadingIcon = jQuery('<i>', {
        class: 'eicon-loading eicon-animation-spin'
      });
      this.ui.title.after(this.ui.loadingIcon);
      this.fetchData();
    }
  }]);
  return _default;
}(_category.default);

exports.default = _default;

/***/ }),

/***/ "../core/common/modules/finder/assets/js/modal/views/item.js":
/*!*******************************************************************!*\
  !*** ../core/common/modules/finder/assets/js/modal/views/item.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _default = /*#__PURE__*/function (_Marionette$ItemView) {
  (0, _inherits2.default)(_default, _Marionette$ItemView);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "className",
    value: function className() {
      return 'elementor-finder__results__item';
    }
  }, {
    key: "getTemplate",
    value: function getTemplate() {
      return '#tmpl-elementor-finder__results__item';
    }
  }]);
  return _default;
}(Marionette.ItemView);

exports.default = _default;

/***/ }),

/***/ "../core/common/modules/finder/assets/js/modal/views/layout.js":
/*!*********************************************************************!*\
  !*** ../core/common/modules/finder/assets/js/modal/views/layout.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get4 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _content = _interopRequireDefault(__webpack_require__(/*! ./content */ "../core/common/modules/finder/assets/js/modal/views/content.js"));

var _default = /*#__PURE__*/function (_elementorModules$com) {
  (0, _inherits2.default)(_default, _elementorModules$com);

  var _super = (0, _createSuper2.default)(_default);

  function _default() {
    (0, _classCallCheck2.default)(this, _default);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(_default, [{
    key: "getModalOptions",
    value: function getModalOptions() {
      return {
        id: 'elementor-finder__modal',
        draggable: true,
        effects: {
          show: 'show',
          hide: 'hide'
        },
        position: {
          enable: false
        }
      };
    }
  }, {
    key: "getLogoOptions",
    value: function getLogoOptions() {
      return {
        title: __('Finder', 'elementor')
      };
    }
  }, {
    key: "initialize",
    value: function initialize() {
      var _get2;

      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
        args[_key] = arguments[_key];
      }

      (_get2 = (0, _get4.default)((0, _getPrototypeOf2.default)(_default.prototype), "initialize", this)).call.apply(_get2, [this].concat(args));

      this.showLogo();
      this.showContentView();
    }
  }, {
    key: "showContentView",
    value: function showContentView() {
      this.modalContent.show(new _content.default());
    }
  }, {
    key: "showModal",
    value: function showModal() {
      var _get3;

      for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
        args[_key2] = arguments[_key2];
      }

      (_get3 = (0, _get4.default)((0, _getPrototypeOf2.default)(_default.prototype), "showModal", this)).call.apply(_get3, [this].concat(args));

      this.modalContent.currentView.ui.searchInput.focus();
    }
  }]);
  return _default;
}(elementorModules.common.views.modal.Layout);

exports.default = _default;

/***/ }),

/***/ "../node_modules/core-js/library/fn/array/from.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/fn/array/from.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.string.iterator */ "../node_modules/core-js/library/modules/es6.string.iterator.js");
__webpack_require__(/*! ../../modules/es6.array.from */ "../node_modules/core-js/library/modules/es6.array.from.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Array.from;


/***/ }),

/***/ "../node_modules/core-js/library/fn/array/is-array.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/fn/array/is-array.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.array.is-array */ "../node_modules/core-js/library/modules/es6.array.is-array.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Array.isArray;


/***/ }),

/***/ "../node_modules/core-js/library/fn/json/stringify.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/fn/json/stringify.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var core = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js");
var $JSON = core.JSON || (core.JSON = { stringify: JSON.stringify });
module.exports = function stringify(it) { // eslint-disable-line no-unused-vars
  return $JSON.stringify.apply($JSON, arguments);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/map.js":
/*!*************************************************!*\
  !*** ../node_modules/core-js/library/fn/map.js ***!
  \*************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../modules/es6.object.to-string */ "../node_modules/core-js/library/modules/es6.object.to-string.js");
__webpack_require__(/*! ../modules/es6.string.iterator */ "../node_modules/core-js/library/modules/es6.string.iterator.js");
__webpack_require__(/*! ../modules/web.dom.iterable */ "../node_modules/core-js/library/modules/web.dom.iterable.js");
__webpack_require__(/*! ../modules/es6.map */ "../node_modules/core-js/library/modules/es6.map.js");
__webpack_require__(/*! ../modules/es7.map.to-json */ "../node_modules/core-js/library/modules/es7.map.to-json.js");
__webpack_require__(/*! ../modules/es7.map.of */ "../node_modules/core-js/library/modules/es7.map.of.js");
__webpack_require__(/*! ../modules/es7.map.from */ "../node_modules/core-js/library/modules/es7.map.from.js");
module.exports = __webpack_require__(/*! ../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Map;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/assign.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/assign.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.assign */ "../node_modules/core-js/library/modules/es6.object.assign.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.assign;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/create.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/create.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.create */ "../node_modules/core-js/library/modules/es6.object.create.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function create(P, D) {
  return $Object.create(P, D);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/define-properties.js":
/*!**********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/define-properties.js ***!
  \**********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.define-properties */ "../node_modules/core-js/library/modules/es6.object.define-properties.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function defineProperties(T, D) {
  return $Object.defineProperties(T, D);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/define-property.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/define-property.js ***!
  \********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.define-property */ "../node_modules/core-js/library/modules/es6.object.define-property.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function defineProperty(it, key, desc) {
  return $Object.defineProperty(it, key, desc);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/entries.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/entries.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es7.object.entries */ "../node_modules/core-js/library/modules/es7.object.entries.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.entries;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/get-own-property-descriptor.js":
/*!********************************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/get-own-property-descriptor.js ***!
  \********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.get-own-property-descriptor */ "../node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function getOwnPropertyDescriptor(it, key) {
  return $Object.getOwnPropertyDescriptor(it, key);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/get-own-property-descriptors.js":
/*!*********************************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/get-own-property-descriptors.js ***!
  \*********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es7.object.get-own-property-descriptors */ "../node_modules/core-js/library/modules/es7.object.get-own-property-descriptors.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.getOwnPropertyDescriptors;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/get-own-property-symbols.js":
/*!*****************************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/get-own-property-symbols.js ***!
  \*****************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.symbol */ "../node_modules/core-js/library/modules/es6.symbol.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.getOwnPropertySymbols;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/get-prototype-of.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/get-prototype-of.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.get-prototype-of */ "../node_modules/core-js/library/modules/es6.object.get-prototype-of.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.getPrototypeOf;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/keys.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/keys.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.keys */ "../node_modules/core-js/library/modules/es6.object.keys.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.keys;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/set-prototype-of.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/set-prototype-of.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.set-prototype-of */ "../node_modules/core-js/library/modules/es6.object.set-prototype-of.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.setPrototypeOf;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/values.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/values.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es7.object.values */ "../node_modules/core-js/library/modules/es7.object.values.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.values;


/***/ }),

/***/ "../node_modules/core-js/library/fn/promise.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/library/fn/promise.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../modules/es6.object.to-string */ "../node_modules/core-js/library/modules/es6.object.to-string.js");
__webpack_require__(/*! ../modules/es6.string.iterator */ "../node_modules/core-js/library/modules/es6.string.iterator.js");
__webpack_require__(/*! ../modules/web.dom.iterable */ "../node_modules/core-js/library/modules/web.dom.iterable.js");
__webpack_require__(/*! ../modules/es6.promise */ "../node_modules/core-js/library/modules/es6.promise.js");
__webpack_require__(/*! ../modules/es7.promise.finally */ "../node_modules/core-js/library/modules/es7.promise.finally.js");
__webpack_require__(/*! ../modules/es7.promise.try */ "../node_modules/core-js/library/modules/es7.promise.try.js");
module.exports = __webpack_require__(/*! ../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Promise;


/***/ }),

/***/ "../node_modules/core-js/library/fn/reflect/construct.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/fn/reflect/construct.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.reflect.construct */ "../node_modules/core-js/library/modules/es6.reflect.construct.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Reflect.construct;


/***/ }),

/***/ "../node_modules/core-js/library/fn/reflect/get.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/library/fn/reflect/get.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.reflect.get */ "../node_modules/core-js/library/modules/es6.reflect.get.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Reflect.get;


/***/ }),

/***/ "../node_modules/core-js/library/fn/symbol/has-instance.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/fn/symbol/has-instance.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.function.has-instance */ "../node_modules/core-js/library/modules/es6.function.has-instance.js");
module.exports = __webpack_require__(/*! ../../modules/_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js").f('hasInstance');


/***/ }),

/***/ "../node_modules/core-js/library/fn/symbol/index.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/fn/symbol/index.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.symbol */ "../node_modules/core-js/library/modules/es6.symbol.js");
__webpack_require__(/*! ../../modules/es6.object.to-string */ "../node_modules/core-js/library/modules/es6.object.to-string.js");
__webpack_require__(/*! ../../modules/es7.symbol.async-iterator */ "../node_modules/core-js/library/modules/es7.symbol.async-iterator.js");
__webpack_require__(/*! ../../modules/es7.symbol.observable */ "../node_modules/core-js/library/modules/es7.symbol.observable.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Symbol;


/***/ }),

/***/ "../node_modules/core-js/library/fn/symbol/iterator.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/fn/symbol/iterator.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.string.iterator */ "../node_modules/core-js/library/modules/es6.string.iterator.js");
__webpack_require__(/*! ../../modules/web.dom.iterable */ "../node_modules/core-js/library/modules/web.dom.iterable.js");
module.exports = __webpack_require__(/*! ../../modules/_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js").f('iterator');


/***/ }),

/***/ "../node_modules/core-js/library/fn/weak-map.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/library/fn/weak-map.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../modules/es6.object.to-string */ "../node_modules/core-js/library/modules/es6.object.to-string.js");
__webpack_require__(/*! ../modules/web.dom.iterable */ "../node_modules/core-js/library/modules/web.dom.iterable.js");
__webpack_require__(/*! ../modules/es6.weak-map */ "../node_modules/core-js/library/modules/es6.weak-map.js");
__webpack_require__(/*! ../modules/es7.weak-map.of */ "../node_modules/core-js/library/modules/es7.weak-map.of.js");
__webpack_require__(/*! ../modules/es7.weak-map.from */ "../node_modules/core-js/library/modules/es7.weak-map.from.js");
module.exports = __webpack_require__(/*! ../modules/_core */ "../node_modules/core-js/library/modules/_core.js").WeakMap;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_a-function.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_a-function.js ***!
  \**************************************************************/
/***/ ((module) => {

module.exports = function (it) {
  if (typeof it != 'function') throw TypeError(it + ' is not a function!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_add-to-unscopables.js":
/*!**********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_add-to-unscopables.js ***!
  \**********************************************************************/
/***/ ((module) => {

module.exports = function () { /* empty */ };


/***/ }),

/***/ "../node_modules/core-js/library/modules/_an-instance.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_an-instance.js ***!
  \***************************************************************/
/***/ ((module) => {

module.exports = function (it, Constructor, name, forbiddenField) {
  if (!(it instanceof Constructor) || (forbiddenField !== undefined && forbiddenField in it)) {
    throw TypeError(name + ': incorrect invocation!');
  } return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_an-object.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_an-object.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
module.exports = function (it) {
  if (!isObject(it)) throw TypeError(it + ' is not an object!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-from-iterable.js":
/*!***********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-from-iterable.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");

module.exports = function (iter, ITERATOR) {
  var result = [];
  forOf(iter, false, result.push, result, ITERATOR);
  return result;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-includes.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-includes.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// false -> Array#indexOf
// true  -> Array#includes
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
var toAbsoluteIndex = __webpack_require__(/*! ./_to-absolute-index */ "../node_modules/core-js/library/modules/_to-absolute-index.js");
module.exports = function (IS_INCLUDES) {
  return function ($this, el, fromIndex) {
    var O = toIObject($this);
    var length = toLength(O.length);
    var index = toAbsoluteIndex(fromIndex, length);
    var value;
    // Array#includes uses SameValueZero equality algorithm
    // eslint-disable-next-line no-self-compare
    if (IS_INCLUDES && el != el) while (length > index) {
      value = O[index++];
      // eslint-disable-next-line no-self-compare
      if (value != value) return true;
    // Array#indexOf ignores holes, Array#includes - not
    } else for (;length > index; index++) if (IS_INCLUDES || index in O) {
      if (O[index] === el) return IS_INCLUDES || index || 0;
    } return !IS_INCLUDES && -1;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-methods.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-methods.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 0 -> Array#forEach
// 1 -> Array#map
// 2 -> Array#filter
// 3 -> Array#some
// 4 -> Array#every
// 5 -> Array#find
// 6 -> Array#findIndex
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/library/modules/_iobject.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
var asc = __webpack_require__(/*! ./_array-species-create */ "../node_modules/core-js/library/modules/_array-species-create.js");
module.exports = function (TYPE, $create) {
  var IS_MAP = TYPE == 1;
  var IS_FILTER = TYPE == 2;
  var IS_SOME = TYPE == 3;
  var IS_EVERY = TYPE == 4;
  var IS_FIND_INDEX = TYPE == 6;
  var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
  var create = $create || asc;
  return function ($this, callbackfn, that) {
    var O = toObject($this);
    var self = IObject(O);
    var f = ctx(callbackfn, that, 3);
    var length = toLength(self.length);
    var index = 0;
    var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;
    var val, res;
    for (;length > index; index++) if (NO_HOLES || index in self) {
      val = self[index];
      res = f(val, index, O);
      if (TYPE) {
        if (IS_MAP) result[index] = res;   // map
        else if (res) switch (TYPE) {
          case 3: return true;             // some
          case 5: return val;              // find
          case 6: return index;            // findIndex
          case 2: result.push(val);        // filter
        } else if (IS_EVERY) return false; // every
      }
    }
    return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-species-constructor.js":
/*!*****************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-species-constructor.js ***!
  \*****************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var isArray = __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/library/modules/_is-array.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('species');

module.exports = function (original) {
  var C;
  if (isArray(original)) {
    C = original.constructor;
    // cross-realm fallback
    if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
    if (isObject(C)) {
      C = C[SPECIES];
      if (C === null) C = undefined;
    }
  } return C === undefined ? Array : C;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-species-create.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-species-create.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 9.4.2.3 ArraySpeciesCreate(originalArray, length)
var speciesConstructor = __webpack_require__(/*! ./_array-species-constructor */ "../node_modules/core-js/library/modules/_array-species-constructor.js");

module.exports = function (original, length) {
  return new (speciesConstructor(original))(length);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_bind.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_bind.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var invoke = __webpack_require__(/*! ./_invoke */ "../node_modules/core-js/library/modules/_invoke.js");
var arraySlice = [].slice;
var factories = {};

var construct = function (F, len, args) {
  if (!(len in factories)) {
    for (var n = [], i = 0; i < len; i++) n[i] = 'a[' + i + ']';
    // eslint-disable-next-line no-new-func
    factories[len] = Function('F,a', 'return new F(' + n.join(',') + ')');
  } return factories[len](F, args);
};

module.exports = Function.bind || function bind(that /* , ...args */) {
  var fn = aFunction(this);
  var partArgs = arraySlice.call(arguments, 1);
  var bound = function (/* args... */) {
    var args = partArgs.concat(arraySlice.call(arguments));
    return this instanceof bound ? construct(fn, args.length, args) : invoke(fn, args, that);
  };
  if (isObject(fn.prototype)) bound.prototype = fn.prototype;
  return bound;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_classof.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_classof.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// getting tag from 19.1.3.6 Object.prototype.toString()
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('toStringTag');
// ES3 wrong here
var ARG = cof(function () { return arguments; }()) == 'Arguments';

// fallback for IE11 Script Access Denied error
var tryGet = function (it, key) {
  try {
    return it[key];
  } catch (e) { /* empty */ }
};

module.exports = function (it) {
  var O, T, B;
  return it === undefined ? 'Undefined' : it === null ? 'Null'
    // @@toStringTag case
    : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T
    // builtinTag case
    : ARG ? cof(O)
    // ES3 arguments fallback
    : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_cof.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_cof.js ***!
  \*******************************************************/
/***/ ((module) => {

var toString = {}.toString;

module.exports = function (it) {
  return toString.call(it).slice(8, -1);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_collection-strong.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_collection-strong.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
var create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
var redefineAll = __webpack_require__(/*! ./_redefine-all */ "../node_modules/core-js/library/modules/_redefine-all.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var anInstance = __webpack_require__(/*! ./_an-instance */ "../node_modules/core-js/library/modules/_an-instance.js");
var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");
var $iterDefine = __webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/library/modules/_iter-define.js");
var step = __webpack_require__(/*! ./_iter-step */ "../node_modules/core-js/library/modules/_iter-step.js");
var setSpecies = __webpack_require__(/*! ./_set-species */ "../node_modules/core-js/library/modules/_set-species.js");
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var fastKey = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js").fastKey;
var validate = __webpack_require__(/*! ./_validate-collection */ "../node_modules/core-js/library/modules/_validate-collection.js");
var SIZE = DESCRIPTORS ? '_s' : 'size';

var getEntry = function (that, key) {
  // fast case
  var index = fastKey(key);
  var entry;
  if (index !== 'F') return that._i[index];
  // frozen object case
  for (entry = that._f; entry; entry = entry.n) {
    if (entry.k == key) return entry;
  }
};

module.exports = {
  getConstructor: function (wrapper, NAME, IS_MAP, ADDER) {
    var C = wrapper(function (that, iterable) {
      anInstance(that, C, NAME, '_i');
      that._t = NAME;         // collection type
      that._i = create(null); // index
      that._f = undefined;    // first entry
      that._l = undefined;    // last entry
      that[SIZE] = 0;         // size
      if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);
    });
    redefineAll(C.prototype, {
      // 23.1.3.1 Map.prototype.clear()
      // 23.2.3.2 Set.prototype.clear()
      clear: function clear() {
        for (var that = validate(this, NAME), data = that._i, entry = that._f; entry; entry = entry.n) {
          entry.r = true;
          if (entry.p) entry.p = entry.p.n = undefined;
          delete data[entry.i];
        }
        that._f = that._l = undefined;
        that[SIZE] = 0;
      },
      // 23.1.3.3 Map.prototype.delete(key)
      // 23.2.3.4 Set.prototype.delete(value)
      'delete': function (key) {
        var that = validate(this, NAME);
        var entry = getEntry(that, key);
        if (entry) {
          var next = entry.n;
          var prev = entry.p;
          delete that._i[entry.i];
          entry.r = true;
          if (prev) prev.n = next;
          if (next) next.p = prev;
          if (that._f == entry) that._f = next;
          if (that._l == entry) that._l = prev;
          that[SIZE]--;
        } return !!entry;
      },
      // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined)
      // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined)
      forEach: function forEach(callbackfn /* , that = undefined */) {
        validate(this, NAME);
        var f = ctx(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3);
        var entry;
        while (entry = entry ? entry.n : this._f) {
          f(entry.v, entry.k, this);
          // revert to the last existing entry
          while (entry && entry.r) entry = entry.p;
        }
      },
      // 23.1.3.7 Map.prototype.has(key)
      // 23.2.3.7 Set.prototype.has(value)
      has: function has(key) {
        return !!getEntry(validate(this, NAME), key);
      }
    });
    if (DESCRIPTORS) dP(C.prototype, 'size', {
      get: function () {
        return validate(this, NAME)[SIZE];
      }
    });
    return C;
  },
  def: function (that, key, value) {
    var entry = getEntry(that, key);
    var prev, index;
    // change existing entry
    if (entry) {
      entry.v = value;
    // create new entry
    } else {
      that._l = entry = {
        i: index = fastKey(key, true), // <- index
        k: key,                        // <- key
        v: value,                      // <- value
        p: prev = that._l,             // <- previous entry
        n: undefined,                  // <- next entry
        r: false                       // <- removed
      };
      if (!that._f) that._f = entry;
      if (prev) prev.n = entry;
      that[SIZE]++;
      // add to index
      if (index !== 'F') that._i[index] = entry;
    } return that;
  },
  getEntry: getEntry,
  setStrong: function (C, NAME, IS_MAP) {
    // add .keys, .values, .entries, [@@iterator]
    // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11
    $iterDefine(C, NAME, function (iterated, kind) {
      this._t = validate(iterated, NAME); // target
      this._k = kind;                     // kind
      this._l = undefined;                // previous
    }, function () {
      var that = this;
      var kind = that._k;
      var entry = that._l;
      // revert to the last existing entry
      while (entry && entry.r) entry = entry.p;
      // get next entry
      if (!that._t || !(that._l = entry = entry ? entry.n : that._t._f)) {
        // or finish the iteration
        that._t = undefined;
        return step(1);
      }
      // return step by kind
      if (kind == 'keys') return step(0, entry.k);
      if (kind == 'values') return step(0, entry.v);
      return step(0, [entry.k, entry.v]);
    }, IS_MAP ? 'entries' : 'values', !IS_MAP, true);

    // add [@@species], 23.1.2.2, 23.2.2.2
    setSpecies(NAME);
  }
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_collection-to-json.js":
/*!**********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_collection-to-json.js ***!
  \**********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// https://github.com/DavidBruant/Map-Set.prototype.toJSON
var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/library/modules/_classof.js");
var from = __webpack_require__(/*! ./_array-from-iterable */ "../node_modules/core-js/library/modules/_array-from-iterable.js");
module.exports = function (NAME) {
  return function toJSON() {
    if (classof(this) != NAME) throw TypeError(NAME + "#toJSON isn't generic");
    return from(this);
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_collection-weak.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_collection-weak.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var redefineAll = __webpack_require__(/*! ./_redefine-all */ "../node_modules/core-js/library/modules/_redefine-all.js");
var getWeak = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js").getWeak;
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var anInstance = __webpack_require__(/*! ./_an-instance */ "../node_modules/core-js/library/modules/_an-instance.js");
var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");
var createArrayMethod = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/library/modules/_array-methods.js");
var $has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var validate = __webpack_require__(/*! ./_validate-collection */ "../node_modules/core-js/library/modules/_validate-collection.js");
var arrayFind = createArrayMethod(5);
var arrayFindIndex = createArrayMethod(6);
var id = 0;

// fallback for uncaught frozen keys
var uncaughtFrozenStore = function (that) {
  return that._l || (that._l = new UncaughtFrozenStore());
};
var UncaughtFrozenStore = function () {
  this.a = [];
};
var findUncaughtFrozen = function (store, key) {
  return arrayFind(store.a, function (it) {
    return it[0] === key;
  });
};
UncaughtFrozenStore.prototype = {
  get: function (key) {
    var entry = findUncaughtFrozen(this, key);
    if (entry) return entry[1];
  },
  has: function (key) {
    return !!findUncaughtFrozen(this, key);
  },
  set: function (key, value) {
    var entry = findUncaughtFrozen(this, key);
    if (entry) entry[1] = value;
    else this.a.push([key, value]);
  },
  'delete': function (key) {
    var index = arrayFindIndex(this.a, function (it) {
      return it[0] === key;
    });
    if (~index) this.a.splice(index, 1);
    return !!~index;
  }
};

module.exports = {
  getConstructor: function (wrapper, NAME, IS_MAP, ADDER) {
    var C = wrapper(function (that, iterable) {
      anInstance(that, C, NAME, '_i');
      that._t = NAME;      // collection type
      that._i = id++;      // collection id
      that._l = undefined; // leak store for uncaught frozen objects
      if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);
    });
    redefineAll(C.prototype, {
      // 23.3.3.2 WeakMap.prototype.delete(key)
      // 23.4.3.3 WeakSet.prototype.delete(value)
      'delete': function (key) {
        if (!isObject(key)) return false;
        var data = getWeak(key);
        if (data === true) return uncaughtFrozenStore(validate(this, NAME))['delete'](key);
        return data && $has(data, this._i) && delete data[this._i];
      },
      // 23.3.3.4 WeakMap.prototype.has(key)
      // 23.4.3.4 WeakSet.prototype.has(value)
      has: function has(key) {
        if (!isObject(key)) return false;
        var data = getWeak(key);
        if (data === true) return uncaughtFrozenStore(validate(this, NAME)).has(key);
        return data && $has(data, this._i);
      }
    });
    return C;
  },
  def: function (that, key, value) {
    var data = getWeak(anObject(key), true);
    if (data === true) uncaughtFrozenStore(that).set(key, value);
    else data[that._i] = value;
    return that;
  },
  ufstore: uncaughtFrozenStore
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_collection.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_collection.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var meta = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var redefineAll = __webpack_require__(/*! ./_redefine-all */ "../node_modules/core-js/library/modules/_redefine-all.js");
var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");
var anInstance = __webpack_require__(/*! ./_an-instance */ "../node_modules/core-js/library/modules/_an-instance.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
var each = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/library/modules/_array-methods.js")(0);
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");

module.exports = function (NAME, wrapper, methods, common, IS_MAP, IS_WEAK) {
  var Base = global[NAME];
  var C = Base;
  var ADDER = IS_MAP ? 'set' : 'add';
  var proto = C && C.prototype;
  var O = {};
  if (!DESCRIPTORS || typeof C != 'function' || !(IS_WEAK || proto.forEach && !fails(function () {
    new C().entries().next();
  }))) {
    // create collection constructor
    C = common.getConstructor(wrapper, NAME, IS_MAP, ADDER);
    redefineAll(C.prototype, methods);
    meta.NEED = true;
  } else {
    C = wrapper(function (target, iterable) {
      anInstance(target, C, NAME, '_c');
      target._c = new Base();
      if (iterable != undefined) forOf(iterable, IS_MAP, target[ADDER], target);
    });
    each('add,clear,delete,forEach,get,has,set,keys,values,entries,toJSON'.split(','), function (KEY) {
      var IS_ADDER = KEY == 'add' || KEY == 'set';
      if (KEY in proto && !(IS_WEAK && KEY == 'clear')) hide(C.prototype, KEY, function (a, b) {
        anInstance(this, C, KEY);
        if (!IS_ADDER && IS_WEAK && !isObject(a)) return KEY == 'get' ? undefined : false;
        var result = this._c[KEY](a === 0 ? 0 : a, b);
        return IS_ADDER ? this : result;
      });
    });
    IS_WEAK || dP(C.prototype, 'size', {
      get: function () {
        return this._c.size;
      }
    });
  }

  setToStringTag(C, NAME);

  O[NAME] = C;
  $export($export.G + $export.W + $export.F, O);

  if (!IS_WEAK) common.setStrong(C, NAME, IS_MAP);

  return C;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_core.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_core.js ***!
  \********************************************************/
/***/ ((module) => {

var core = module.exports = { version: '2.6.12' };
if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/library/modules/_create-property.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_create-property.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $defineProperty = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");

module.exports = function (object, index, value) {
  if (index in object) $defineProperty.f(object, index, createDesc(0, value));
  else object[index] = value;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_ctx.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_ctx.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// optional / simple context binding
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
module.exports = function (fn, that, length) {
  aFunction(fn);
  if (that === undefined) return fn;
  switch (length) {
    case 1: return function (a) {
      return fn.call(that, a);
    };
    case 2: return function (a, b) {
      return fn.call(that, a, b);
    };
    case 3: return function (a, b, c) {
      return fn.call(that, a, b, c);
    };
  }
  return function (/* ...args */) {
    return fn.apply(that, arguments);
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_defined.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_defined.js ***!
  \***********************************************************/
/***/ ((module) => {

// 7.2.1 RequireObjectCoercible(argument)
module.exports = function (it) {
  if (it == undefined) throw TypeError("Can't call method on  " + it);
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_descriptors.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_descriptors.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Thank's IE8 for his funny defineProperty
module.exports = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/_dom-create.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_dom-create.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").document;
// typeof document.createElement is 'object' in old IE
var is = isObject(document) && isObject(document.createElement);
module.exports = function (it) {
  return is ? document.createElement(it) : {};
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_enum-bug-keys.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_enum-bug-keys.js ***!
  \*****************************************************************/
/***/ ((module) => {

// IE 8- don't enum bug keys
module.exports = (
  'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
).split(',');


/***/ }),

/***/ "../node_modules/core-js/library/modules/_enum-keys.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_enum-keys.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// all enumerable object keys, includes symbols
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var gOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js");
module.exports = function (it) {
  var result = getKeys(it);
  var getSymbols = gOPS.f;
  if (getSymbols) {
    var symbols = getSymbols(it);
    var isEnum = pIE.f;
    var i = 0;
    var key;
    while (symbols.length > i) if (isEnum.call(it, key = symbols[i++])) result.push(key);
  } return result;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_export.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_export.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var PROTOTYPE = 'prototype';

var $export = function (type, name, source) {
  var IS_FORCED = type & $export.F;
  var IS_GLOBAL = type & $export.G;
  var IS_STATIC = type & $export.S;
  var IS_PROTO = type & $export.P;
  var IS_BIND = type & $export.B;
  var IS_WRAP = type & $export.W;
  var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
  var expProto = exports[PROTOTYPE];
  var target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE];
  var key, own, out;
  if (IS_GLOBAL) source = name;
  for (key in source) {
    // contains in native
    own = !IS_FORCED && target && target[key] !== undefined;
    if (own && has(exports, key)) continue;
    // export native or passed
    out = own ? target[key] : source[key];
    // prevent global pollution for namespaces
    exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key]
    // bind timers to global for call from export context
    : IS_BIND && own ? ctx(out, global)
    // wrap global constructors for prevent change them in library
    : IS_WRAP && target[key] == out ? (function (C) {
      var F = function (a, b, c) {
        if (this instanceof C) {
          switch (arguments.length) {
            case 0: return new C();
            case 1: return new C(a);
            case 2: return new C(a, b);
          } return new C(a, b, c);
        } return C.apply(this, arguments);
      };
      F[PROTOTYPE] = C[PROTOTYPE];
      return F;
    // make static versions for prototype methods
    })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
    // export proto methods to core.%CONSTRUCTOR%.methods.%NAME%
    if (IS_PROTO) {
      (exports.virtual || (exports.virtual = {}))[key] = out;
      // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME%
      if (type & $export.R && expProto && !expProto[key]) hide(expProto, key, out);
    }
  }
};
// type bitmap
$export.F = 1;   // forced
$export.G = 2;   // global
$export.S = 4;   // static
$export.P = 8;   // proto
$export.B = 16;  // bind
$export.W = 32;  // wrap
$export.U = 64;  // safe
$export.R = 128; // real proto method for `library`
module.exports = $export;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_fails.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_fails.js ***!
  \*********************************************************/
/***/ ((module) => {

module.exports = function (exec) {
  try {
    return !!exec();
  } catch (e) {
    return true;
  }
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_for-of.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_for-of.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var call = __webpack_require__(/*! ./_iter-call */ "../node_modules/core-js/library/modules/_iter-call.js");
var isArrayIter = __webpack_require__(/*! ./_is-array-iter */ "../node_modules/core-js/library/modules/_is-array-iter.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
var getIterFn = __webpack_require__(/*! ./core.get-iterator-method */ "../node_modules/core-js/library/modules/core.get-iterator-method.js");
var BREAK = {};
var RETURN = {};
var exports = module.exports = function (iterable, entries, fn, that, ITERATOR) {
  var iterFn = ITERATOR ? function () { return iterable; } : getIterFn(iterable);
  var f = ctx(fn, that, entries ? 2 : 1);
  var index = 0;
  var length, step, iterator, result;
  if (typeof iterFn != 'function') throw TypeError(iterable + ' is not iterable!');
  // fast case for arrays with default iterator
  if (isArrayIter(iterFn)) for (length = toLength(iterable.length); length > index; index++) {
    result = entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]);
    if (result === BREAK || result === RETURN) return result;
  } else for (iterator = iterFn.call(iterable); !(step = iterator.next()).done;) {
    result = call(iterator, f, step.value, entries);
    if (result === BREAK || result === RETURN) return result;
  }
};
exports.BREAK = BREAK;
exports.RETURN = RETURN;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_global.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_global.js ***!
  \**********************************************************/
/***/ ((module) => {

// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
var global = module.exports = typeof window != 'undefined' && window.Math == Math
  ? window : typeof self != 'undefined' && self.Math == Math ? self
  // eslint-disable-next-line no-new-func
  : Function('return this')();
if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/library/modules/_has.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_has.js ***!
  \*******************************************************/
/***/ ((module) => {

var hasOwnProperty = {}.hasOwnProperty;
module.exports = function (it, key) {
  return hasOwnProperty.call(it, key);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_hide.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_hide.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? function (object, key, value) {
  return dP.f(object, key, createDesc(1, value));
} : function (object, key, value) {
  object[key] = value;
  return object;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_html.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_html.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").document;
module.exports = document && document.documentElement;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_ie8-dom-define.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_ie8-dom-define.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") && !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  return Object.defineProperty(__webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/library/modules/_dom-create.js")('div'), 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/_invoke.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_invoke.js ***!
  \**********************************************************/
/***/ ((module) => {

// fast apply, http://jsperf.lnkit.com/fast-apply/5
module.exports = function (fn, args, that) {
  var un = that === undefined;
  switch (args.length) {
    case 0: return un ? fn()
                      : fn.call(that);
    case 1: return un ? fn(args[0])
                      : fn.call(that, args[0]);
    case 2: return un ? fn(args[0], args[1])
                      : fn.call(that, args[0], args[1]);
    case 3: return un ? fn(args[0], args[1], args[2])
                      : fn.call(that, args[0], args[1], args[2]);
    case 4: return un ? fn(args[0], args[1], args[2], args[3])
                      : fn.call(that, args[0], args[1], args[2], args[3]);
  } return fn.apply(that, args);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iobject.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iobject.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// fallback for non-array-like ES3 and non-enumerable old V8 strings
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js");
// eslint-disable-next-line no-prototype-builtins
module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
  return cof(it) == 'String' ? it.split('') : Object(it);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_is-array-iter.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_is-array-iter.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// check on default Array iterator
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var ArrayProto = Array.prototype;

module.exports = function (it) {
  return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_is-array.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_is-array.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.2.2 IsArray(argument)
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js");
module.exports = Array.isArray || function isArray(arg) {
  return cof(arg) == 'Array';
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_is-object.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_is-object.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = function (it) {
  return typeof it === 'object' ? it !== null : typeof it === 'function';
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-call.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-call.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// call something on iterator step with safe closing on error
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
module.exports = function (iterator, fn, value, entries) {
  try {
    return entries ? fn(anObject(value)[0], value[1]) : fn(value);
  // 7.4.6 IteratorClose(iterator, completion)
  } catch (e) {
    var ret = iterator['return'];
    if (ret !== undefined) anObject(ret.call(iterator));
    throw e;
  }
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-create.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-create.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
var descriptor = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var IteratorPrototype = {};

// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
__webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js")(IteratorPrototype, __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator'), function () { return this; });

module.exports = function (Constructor, NAME, next) {
  Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });
  setToStringTag(Constructor, NAME + ' Iterator');
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-define.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-define.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/library/modules/_redefine.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var $iterCreate = __webpack_require__(/*! ./_iter-create */ "../node_modules/core-js/library/modules/_iter-create.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`
var FF_ITERATOR = '@@iterator';
var KEYS = 'keys';
var VALUES = 'values';

var returnThis = function () { return this; };

module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {
  $iterCreate(Constructor, NAME, next);
  var getMethod = function (kind) {
    if (!BUGGY && kind in proto) return proto[kind];
    switch (kind) {
      case KEYS: return function keys() { return new Constructor(this, kind); };
      case VALUES: return function values() { return new Constructor(this, kind); };
    } return function entries() { return new Constructor(this, kind); };
  };
  var TAG = NAME + ' Iterator';
  var DEF_VALUES = DEFAULT == VALUES;
  var VALUES_BUG = false;
  var proto = Base.prototype;
  var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];
  var $default = $native || getMethod(DEFAULT);
  var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;
  var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;
  var methods, key, IteratorPrototype;
  // Fix native
  if ($anyNative) {
    IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));
    if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {
      // Set @@toStringTag to native iterators
      setToStringTag(IteratorPrototype, TAG, true);
      // fix for some old engines
      if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);
    }
  }
  // fix Array#{values, @@iterator}.name in V8 / FF
  if (DEF_VALUES && $native && $native.name !== VALUES) {
    VALUES_BUG = true;
    $default = function values() { return $native.call(this); };
  }
  // Define iterator
  if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {
    hide(proto, ITERATOR, $default);
  }
  // Plug for library
  Iterators[NAME] = $default;
  Iterators[TAG] = returnThis;
  if (DEFAULT) {
    methods = {
      values: DEF_VALUES ? $default : getMethod(VALUES),
      keys: IS_SET ? $default : getMethod(KEYS),
      entries: $entries
    };
    if (FORCED) for (key in methods) {
      if (!(key in proto)) redefine(proto, key, methods[key]);
    } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
  }
  return methods;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-detect.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-detect.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var SAFE_CLOSING = false;

try {
  var riter = [7][ITERATOR]();
  riter['return'] = function () { SAFE_CLOSING = true; };
  // eslint-disable-next-line no-throw-literal
  Array.from(riter, function () { throw 2; });
} catch (e) { /* empty */ }

module.exports = function (exec, skipClosing) {
  if (!skipClosing && !SAFE_CLOSING) return false;
  var safe = false;
  try {
    var arr = [7];
    var iter = arr[ITERATOR]();
    iter.next = function () { return { done: safe = true }; };
    arr[ITERATOR] = function () { return iter; };
    exec(arr);
  } catch (e) { /* empty */ }
  return safe;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-step.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-step.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = function (done, value) {
  return { value: value, done: !!done };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iterators.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iterators.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = {};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_library.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_library.js ***!
  \***********************************************************/
/***/ ((module) => {

module.exports = true;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_meta.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_meta.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var META = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js")('meta');
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var setDesc = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
var id = 0;
var isExtensible = Object.isExtensible || function () {
  return true;
};
var FREEZE = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  return isExtensible(Object.preventExtensions({}));
});
var setMeta = function (it) {
  setDesc(it, META, { value: {
    i: 'O' + ++id, // object ID
    w: {}          // weak collections IDs
  } });
};
var fastKey = function (it, create) {
  // return primitive with prefix
  if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;
  if (!has(it, META)) {
    // can't set metadata to uncaught frozen object
    if (!isExtensible(it)) return 'F';
    // not necessary to add metadata
    if (!create) return 'E';
    // add missing metadata
    setMeta(it);
  // return object ID
  } return it[META].i;
};
var getWeak = function (it, create) {
  if (!has(it, META)) {
    // can't set metadata to uncaught frozen object
    if (!isExtensible(it)) return true;
    // not necessary to add metadata
    if (!create) return false;
    // add missing metadata
    setMeta(it);
  // return hash weak collections IDs
  } return it[META].w;
};
// add metadata on freeze-family methods calling
var onFreeze = function (it) {
  if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it);
  return it;
};
var meta = module.exports = {
  KEY: META,
  NEED: false,
  fastKey: fastKey,
  getWeak: getWeak,
  onFreeze: onFreeze
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_microtask.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_microtask.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var macrotask = __webpack_require__(/*! ./_task */ "../node_modules/core-js/library/modules/_task.js").set;
var Observer = global.MutationObserver || global.WebKitMutationObserver;
var process = global.process;
var Promise = global.Promise;
var isNode = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js")(process) == 'process';

module.exports = function () {
  var head, last, notify;

  var flush = function () {
    var parent, fn;
    if (isNode && (parent = process.domain)) parent.exit();
    while (head) {
      fn = head.fn;
      head = head.next;
      try {
        fn();
      } catch (e) {
        if (head) notify();
        else last = undefined;
        throw e;
      }
    } last = undefined;
    if (parent) parent.enter();
  };

  // Node.js
  if (isNode) {
    notify = function () {
      process.nextTick(flush);
    };
  // browsers with MutationObserver, except iOS Safari - https://github.com/zloirock/core-js/issues/339
  } else if (Observer && !(global.navigator && global.navigator.standalone)) {
    var toggle = true;
    var node = document.createTextNode('');
    new Observer(flush).observe(node, { characterData: true }); // eslint-disable-line no-new
    notify = function () {
      node.data = toggle = !toggle;
    };
  // environments with maybe non-completely correct, but existent Promise
  } else if (Promise && Promise.resolve) {
    // Promise.resolve without an argument throws an error in LG WebOS 2
    var promise = Promise.resolve(undefined);
    notify = function () {
      promise.then(flush);
    };
  // for other environments - macrotask based on:
  // - setImmediate
  // - MessageChannel
  // - window.postMessag
  // - onreadystatechange
  // - setTimeout
  } else {
    notify = function () {
      // strange IE + webpack dev server bug - use .call(global)
      macrotask.call(global, flush);
    };
  }

  return function (fn) {
    var task = { fn: fn, next: undefined };
    if (last) last.next = task;
    if (!head) {
      head = task;
      notify();
    } last = task;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_new-promise-capability.js":
/*!**************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_new-promise-capability.js ***!
  \**************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 25.4.1.5 NewPromiseCapability(C)
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");

function PromiseCapability(C) {
  var resolve, reject;
  this.promise = new C(function ($$resolve, $$reject) {
    if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor');
    resolve = $$resolve;
    reject = $$reject;
  });
  this.resolve = aFunction(resolve);
  this.reject = aFunction(reject);
}

module.exports.f = function (C) {
  return new PromiseCapability(C);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-assign.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-assign.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 19.1.2.1 Object.assign(target, source, ...)
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var gOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/library/modules/_iobject.js");
var $assign = Object.assign;

// should work with symbols and should have deterministic property order (V8 bug)
module.exports = !$assign || __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  var A = {};
  var B = {};
  // eslint-disable-next-line no-undef
  var S = Symbol();
  var K = 'abcdefghijklmnopqrst';
  A[S] = 7;
  K.split('').forEach(function (k) { B[k] = k; });
  return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join('') != K;
}) ? function assign(target, source) { // eslint-disable-line no-unused-vars
  var T = toObject(target);
  var aLen = arguments.length;
  var index = 1;
  var getSymbols = gOPS.f;
  var isEnum = pIE.f;
  while (aLen > index) {
    var S = IObject(arguments[index++]);
    var keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S);
    var length = keys.length;
    var j = 0;
    var key;
    while (length > j) {
      key = keys[j++];
      if (!DESCRIPTORS || isEnum.call(S, key)) T[key] = S[key];
    }
  } return T;
} : $assign;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-create.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-create.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var dPs = __webpack_require__(/*! ./_object-dps */ "../node_modules/core-js/library/modules/_object-dps.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');
var Empty = function () { /* empty */ };
var PROTOTYPE = 'prototype';

// Create object with fake `null` prototype: use iframe Object with cleared prototype
var createDict = function () {
  // Thrash, waste and sodomy: IE GC bug
  var iframe = __webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/library/modules/_dom-create.js")('iframe');
  var i = enumBugKeys.length;
  var lt = '<';
  var gt = '>';
  var iframeDocument;
  iframe.style.display = 'none';
  __webpack_require__(/*! ./_html */ "../node_modules/core-js/library/modules/_html.js").appendChild(iframe);
  iframe.src = 'javascript:'; // eslint-disable-line no-script-url
  // createDict = iframe.contentWindow.Object;
  // html.removeChild(iframe);
  iframeDocument = iframe.contentWindow.document;
  iframeDocument.open();
  iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);
  iframeDocument.close();
  createDict = iframeDocument.F;
  while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];
  return createDict();
};

module.exports = Object.create || function create(O, Properties) {
  var result;
  if (O !== null) {
    Empty[PROTOTYPE] = anObject(O);
    result = new Empty();
    Empty[PROTOTYPE] = null;
    // add "__proto__" for Object.getPrototypeOf polyfill
    result[IE_PROTO] = O;
  } else result = createDict();
  return Properties === undefined ? result : dPs(result, Properties);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-dp.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-dp.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/library/modules/_ie8-dom-define.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
var dP = Object.defineProperty;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? Object.defineProperty : function defineProperty(O, P, Attributes) {
  anObject(O);
  P = toPrimitive(P, true);
  anObject(Attributes);
  if (IE8_DOM_DEFINE) try {
    return dP(O, P, Attributes);
  } catch (e) { /* empty */ }
  if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
  if ('value' in Attributes) O[P] = Attributes.value;
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-dps.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-dps.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");

module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? Object.defineProperties : function defineProperties(O, Properties) {
  anObject(O);
  var keys = getKeys(Properties);
  var length = keys.length;
  var i = 0;
  var P;
  while (length > i) dP.f(O, P = keys[i++], Properties[P]);
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gopd.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gopd.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/library/modules/_ie8-dom-define.js");
var gOPD = Object.getOwnPropertyDescriptor;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? gOPD : function getOwnPropertyDescriptor(O, P) {
  O = toIObject(O);
  P = toPrimitive(P, true);
  if (IE8_DOM_DEFINE) try {
    return gOPD(O, P);
  } catch (e) { /* empty */ }
  if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gopn-ext.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gopn-ext.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var gOPN = __webpack_require__(/*! ./_object-gopn */ "../node_modules/core-js/library/modules/_object-gopn.js").f;
var toString = {}.toString;

var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames
  ? Object.getOwnPropertyNames(window) : [];

var getWindowNames = function (it) {
  try {
    return gOPN(it);
  } catch (e) {
    return windowNames.slice();
  }
};

module.exports.f = function getOwnPropertyNames(it) {
  return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gopn.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gopn.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)
var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/library/modules/_object-keys-internal.js");
var hiddenKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js").concat('length', 'prototype');

exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
  return $keys(O, hiddenKeys);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gops.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gops.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports) => {

exports.f = Object.getOwnPropertySymbols;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gpo.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gpo.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');
var ObjectProto = Object.prototype;

module.exports = Object.getPrototypeOf || function (O) {
  O = toObject(O);
  if (has(O, IE_PROTO)) return O[IE_PROTO];
  if (typeof O.constructor == 'function' && O instanceof O.constructor) {
    return O.constructor.prototype;
  } return O instanceof Object ? ObjectProto : null;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-keys-internal.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-keys-internal.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var arrayIndexOf = __webpack_require__(/*! ./_array-includes */ "../node_modules/core-js/library/modules/_array-includes.js")(false);
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');

module.exports = function (object, names) {
  var O = toIObject(object);
  var i = 0;
  var result = [];
  var key;
  for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);
  // Don't enum bug & hidden keys
  while (names.length > i) if (has(O, key = names[i++])) {
    ~arrayIndexOf(result, key) || result.push(key);
  }
  return result;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-keys.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-keys.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.14 / 15.2.3.14 Object.keys(O)
var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/library/modules/_object-keys-internal.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js");

module.exports = Object.keys || function keys(O) {
  return $keys(O, enumBugKeys);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-pie.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-pie.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports) => {

exports.f = {}.propertyIsEnumerable;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-sap.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-sap.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// most Object methods by ES6 should accept primitives
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
module.exports = function (KEY, exec) {
  var fn = (core.Object || {})[KEY] || Object[KEY];
  var exp = {};
  exp[KEY] = exec(fn);
  $export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-to-array.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-to-array.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var isEnum = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js").f;
module.exports = function (isEntries) {
  return function (it) {
    var O = toIObject(it);
    var keys = getKeys(O);
    var length = keys.length;
    var i = 0;
    var result = [];
    var key;
    while (length > i) {
      key = keys[i++];
      if (!DESCRIPTORS || isEnum.call(O, key)) {
        result.push(isEntries ? [key, O[key]] : O[key]);
      }
    }
    return result;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_own-keys.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_own-keys.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// all object keys, includes non-enumerable and symbols
var gOPN = __webpack_require__(/*! ./_object-gopn */ "../node_modules/core-js/library/modules/_object-gopn.js");
var gOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var Reflect = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").Reflect;
module.exports = Reflect && Reflect.ownKeys || function ownKeys(it) {
  var keys = gOPN.f(anObject(it));
  var getSymbols = gOPS.f;
  return getSymbols ? keys.concat(getSymbols(it)) : keys;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_perform.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_perform.js ***!
  \***********************************************************/
/***/ ((module) => {

module.exports = function (exec) {
  try {
    return { e: false, v: exec() };
  } catch (e) {
    return { e: true, v: e };
  }
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_promise-resolve.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_promise-resolve.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var newPromiseCapability = __webpack_require__(/*! ./_new-promise-capability */ "../node_modules/core-js/library/modules/_new-promise-capability.js");

module.exports = function (C, x) {
  anObject(C);
  if (isObject(x) && x.constructor === C) return x;
  var promiseCapability = newPromiseCapability.f(C);
  var resolve = promiseCapability.resolve;
  resolve(x);
  return promiseCapability.promise;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_property-desc.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_property-desc.js ***!
  \*****************************************************************/
/***/ ((module) => {

module.exports = function (bitmap, value) {
  return {
    enumerable: !(bitmap & 1),
    configurable: !(bitmap & 2),
    writable: !(bitmap & 4),
    value: value
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_redefine-all.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_redefine-all.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
module.exports = function (target, src, safe) {
  for (var key in src) {
    if (safe && target[key]) target[key] = src[key];
    else hide(target, key, src[key]);
  } return target;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_redefine.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_redefine.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-collection-from.js":
/*!***********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-collection-from.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// https://tc39.github.io/proposal-setmap-offrom/
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");

module.exports = function (COLLECTION) {
  $export($export.S, COLLECTION, { from: function from(source /* , mapFn, thisArg */) {
    var mapFn = arguments[1];
    var mapping, A, n, cb;
    aFunction(this);
    mapping = mapFn !== undefined;
    if (mapping) aFunction(mapFn);
    if (source == undefined) return new this();
    A = [];
    if (mapping) {
      n = 0;
      cb = ctx(mapFn, arguments[2], 2);
      forOf(source, false, function (nextItem) {
        A.push(cb(nextItem, n++));
      });
    } else {
      forOf(source, false, A.push, A);
    }
    return new this(A);
  } });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-collection-of.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-collection-of.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// https://tc39.github.io/proposal-setmap-offrom/
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");

module.exports = function (COLLECTION) {
  $export($export.S, COLLECTION, { of: function of() {
    var length = arguments.length;
    var A = new Array(length);
    while (length--) A[length] = arguments[length];
    return new this(A);
  } });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-proto.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-proto.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Works with __proto__ only. Old v8 can't work with null proto objects.
/* eslint-disable no-proto */
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var check = function (O, proto) {
  anObject(O);
  if (!isObject(proto) && proto !== null) throw TypeError(proto + ": can't set as prototype!");
};
module.exports = {
  set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line
    function (test, buggy, set) {
      try {
        set = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js")(Function.call, __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js").f(Object.prototype, '__proto__').set, 2);
        set(test, []);
        buggy = !(test instanceof Array);
      } catch (e) { buggy = true; }
      return function setPrototypeOf(O, proto) {
        check(O, proto);
        if (buggy) O.__proto__ = proto;
        else set(O, proto);
        return O;
      };
    }({}, false) : undefined),
  check: check
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-species.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-species.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('species');

module.exports = function (KEY) {
  var C = typeof core[KEY] == 'function' ? core[KEY] : global[KEY];
  if (DESCRIPTORS && C && !C[SPECIES]) dP.f(C, SPECIES, {
    configurable: true,
    get: function () { return this; }
  });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-to-string-tag.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-to-string-tag.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var def = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('toStringTag');

module.exports = function (it, tag, stat) {
  if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_shared-key.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_shared-key.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var shared = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js")('keys');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
module.exports = function (key) {
  return shared[key] || (shared[key] = uid(key));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_shared.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_shared.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var SHARED = '__core-js_shared__';
var store = global[SHARED] || (global[SHARED] = {});

(module.exports = function (key, value) {
  return store[key] || (store[key] = value !== undefined ? value : {});
})('versions', []).push({
  version: core.version,
  mode: __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js") ? 'pure' : 'global',
  copyright: '© 2020 Denis Pushkarev (zloirock.ru)'
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/_species-constructor.js":
/*!***********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_species-constructor.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.3.20 SpeciesConstructor(O, defaultConstructor)
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('species');
module.exports = function (O, D) {
  var C = anObject(O).constructor;
  var S;
  return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_string-at.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_string-at.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
// true  -> String#at
// false -> String#codePointAt
module.exports = function (TO_STRING) {
  return function (that, pos) {
    var s = String(defined(that));
    var i = toInteger(pos);
    var l = s.length;
    var a, b;
    if (i < 0 || i >= l) return TO_STRING ? '' : undefined;
    a = s.charCodeAt(i);
    return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
      ? TO_STRING ? s.charAt(i) : a
      : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_task.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_task.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var invoke = __webpack_require__(/*! ./_invoke */ "../node_modules/core-js/library/modules/_invoke.js");
var html = __webpack_require__(/*! ./_html */ "../node_modules/core-js/library/modules/_html.js");
var cel = __webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/library/modules/_dom-create.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var process = global.process;
var setTask = global.setImmediate;
var clearTask = global.clearImmediate;
var MessageChannel = global.MessageChannel;
var Dispatch = global.Dispatch;
var counter = 0;
var queue = {};
var ONREADYSTATECHANGE = 'onreadystatechange';
var defer, channel, port;
var run = function () {
  var id = +this;
  // eslint-disable-next-line no-prototype-builtins
  if (queue.hasOwnProperty(id)) {
    var fn = queue[id];
    delete queue[id];
    fn();
  }
};
var listener = function (event) {
  run.call(event.data);
};
// Node.js 0.9+ & IE10+ has setImmediate, otherwise:
if (!setTask || !clearTask) {
  setTask = function setImmediate(fn) {
    var args = [];
    var i = 1;
    while (arguments.length > i) args.push(arguments[i++]);
    queue[++counter] = function () {
      // eslint-disable-next-line no-new-func
      invoke(typeof fn == 'function' ? fn : Function(fn), args);
    };
    defer(counter);
    return counter;
  };
  clearTask = function clearImmediate(id) {
    delete queue[id];
  };
  // Node.js 0.8-
  if (__webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js")(process) == 'process') {
    defer = function (id) {
      process.nextTick(ctx(run, id, 1));
    };
  // Sphere (JS game engine) Dispatch API
  } else if (Dispatch && Dispatch.now) {
    defer = function (id) {
      Dispatch.now(ctx(run, id, 1));
    };
  // Browsers with MessageChannel, includes WebWorkers
  } else if (MessageChannel) {
    channel = new MessageChannel();
    port = channel.port2;
    channel.port1.onmessage = listener;
    defer = ctx(port.postMessage, port, 1);
  // Browsers with postMessage, skip WebWorkers
  // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'
  } else if (global.addEventListener && typeof postMessage == 'function' && !global.importScripts) {
    defer = function (id) {
      global.postMessage(id + '', '*');
    };
    global.addEventListener('message', listener, false);
  // IE8-
  } else if (ONREADYSTATECHANGE in cel('script')) {
    defer = function (id) {
      html.appendChild(cel('script'))[ONREADYSTATECHANGE] = function () {
        html.removeChild(this);
        run.call(id);
      };
    };
  // Rest old browsers
  } else {
    defer = function (id) {
      setTimeout(ctx(run, id, 1), 0);
    };
  }
}
module.exports = {
  set: setTask,
  clear: clearTask
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-absolute-index.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-absolute-index.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
var max = Math.max;
var min = Math.min;
module.exports = function (index, length) {
  index = toInteger(index);
  return index < 0 ? max(index + length, 0) : min(index, length);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-integer.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-integer.js ***!
  \**************************************************************/
/***/ ((module) => {

// 7.1.4 ToInteger
var ceil = Math.ceil;
var floor = Math.floor;
module.exports = function (it) {
  return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-iobject.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-iobject.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// to indexed object, toObject with fallback for non-array-like ES3 strings
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/library/modules/_iobject.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
module.exports = function (it) {
  return IObject(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-length.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-length.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.15 ToLength
var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
var min = Math.min;
module.exports = function (it) {
  return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-object.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-object.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.13 ToObject(argument)
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
module.exports = function (it) {
  return Object(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-primitive.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-primitive.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.1 ToPrimitive(input [, PreferredType])
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
// instead of the ES6 spec version, we didn't implement @@toPrimitive case
// and the second argument - flag - preferred type is a string
module.exports = function (it, S) {
  if (!isObject(it)) return it;
  var fn, val;
  if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
  if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  throw TypeError("Can't convert object to primitive value");
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_uid.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_uid.js ***!
  \*******************************************************/
/***/ ((module) => {

var id = 0;
var px = Math.random();
module.exports = function (key) {
  return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_user-agent.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_user-agent.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var navigator = global.navigator;

module.exports = navigator && navigator.userAgent || '';


/***/ }),

/***/ "../node_modules/core-js/library/modules/_validate-collection.js":
/*!***********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_validate-collection.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
module.exports = function (it, TYPE) {
  if (!isObject(it) || it._t !== TYPE) throw TypeError('Incompatible receiver, ' + TYPE + ' required!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_wks-define.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_wks-define.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js");
var wksExt = __webpack_require__(/*! ./_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js");
var defineProperty = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
module.exports = function (name) {
  var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {});
  if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_wks-ext.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_wks-ext.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

exports.f = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js");


/***/ }),

/***/ "../node_modules/core-js/library/modules/_wks.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_wks.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var store = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js")('wks');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
var Symbol = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").Symbol;
var USE_SYMBOL = typeof Symbol == 'function';

var $exports = module.exports = function (name) {
  return store[name] || (store[name] =
    USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
};

$exports.store = store;


/***/ }),

/***/ "../node_modules/core-js/library/modules/core.get-iterator-method.js":
/*!***************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/core.get-iterator-method.js ***!
  \***************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/library/modules/_classof.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
module.exports = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js").getIteratorMethod = function (it) {
  if (it != undefined) return it[ITERATOR]
    || it['@@iterator']
    || Iterators[classof(it)];
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.array.from.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.array.from.js ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var call = __webpack_require__(/*! ./_iter-call */ "../node_modules/core-js/library/modules/_iter-call.js");
var isArrayIter = __webpack_require__(/*! ./_is-array-iter */ "../node_modules/core-js/library/modules/_is-array-iter.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
var createProperty = __webpack_require__(/*! ./_create-property */ "../node_modules/core-js/library/modules/_create-property.js");
var getIterFn = __webpack_require__(/*! ./core.get-iterator-method */ "../node_modules/core-js/library/modules/core.get-iterator-method.js");

$export($export.S + $export.F * !__webpack_require__(/*! ./_iter-detect */ "../node_modules/core-js/library/modules/_iter-detect.js")(function (iter) { Array.from(iter); }), 'Array', {
  // 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined)
  from: function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {
    var O = toObject(arrayLike);
    var C = typeof this == 'function' ? this : Array;
    var aLen = arguments.length;
    var mapfn = aLen > 1 ? arguments[1] : undefined;
    var mapping = mapfn !== undefined;
    var index = 0;
    var iterFn = getIterFn(O);
    var length, result, step, iterator;
    if (mapping) mapfn = ctx(mapfn, aLen > 2 ? arguments[2] : undefined, 2);
    // if object isn't iterable or it's array with default iterator - use simple case
    if (iterFn != undefined && !(C == Array && isArrayIter(iterFn))) {
      for (iterator = iterFn.call(O), result = new C(); !(step = iterator.next()).done; index++) {
        createProperty(result, index, mapping ? call(iterator, mapfn, [step.value, index], true) : step.value);
      }
    } else {
      length = toLength(O.length);
      for (result = new C(length); length > index; index++) {
        createProperty(result, index, mapping ? mapfn(O[index], index) : O[index]);
      }
    }
    result.length = index;
    return result;
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.array.is-array.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.array.is-array.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 22.1.2.2 / 15.4.3.2 Array.isArray(arg)
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");

$export($export.S, 'Array', { isArray: __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/library/modules/_is-array.js") });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.array.iterator.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.array.iterator.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var addToUnscopables = __webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/library/modules/_add-to-unscopables.js");
var step = __webpack_require__(/*! ./_iter-step */ "../node_modules/core-js/library/modules/_iter-step.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");

// 22.1.3.4 Array.prototype.entries()
// 22.1.3.13 Array.prototype.keys()
// 22.1.3.29 Array.prototype.values()
// 22.1.3.30 Array.prototype[@@iterator]()
module.exports = __webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/library/modules/_iter-define.js")(Array, 'Array', function (iterated, kind) {
  this._t = toIObject(iterated); // target
  this._i = 0;                   // next index
  this._k = kind;                // kind
// 22.1.5.2.1 %ArrayIteratorPrototype%.next()
}, function () {
  var O = this._t;
  var kind = this._k;
  var index = this._i++;
  if (!O || index >= O.length) {
    this._t = undefined;
    return step(1);
  }
  if (kind == 'keys') return step(0, index);
  if (kind == 'values') return step(0, O[index]);
  return step(0, [index, O[index]]);
}, 'values');

// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
Iterators.Arguments = Iterators.Array;

addToUnscopables('keys');
addToUnscopables('values');
addToUnscopables('entries');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.function.has-instance.js":
/*!****************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.function.has-instance.js ***!
  \****************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");
var HAS_INSTANCE = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('hasInstance');
var FunctionProto = Function.prototype;
// 19.2.3.6 Function.prototype[@@hasInstance](V)
if (!(HAS_INSTANCE in FunctionProto)) __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f(FunctionProto, HAS_INSTANCE, { value: function (O) {
  if (typeof this != 'function' || !isObject(O)) return false;
  if (!isObject(this.prototype)) return O instanceof this;
  // for environment w/o native `@@hasInstance` logic enough `instanceof`, but add this:
  while (O = getPrototypeOf(O)) if (this.prototype === O) return true;
  return false;
} });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.map.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.map.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var strong = __webpack_require__(/*! ./_collection-strong */ "../node_modules/core-js/library/modules/_collection-strong.js");
var validate = __webpack_require__(/*! ./_validate-collection */ "../node_modules/core-js/library/modules/_validate-collection.js");
var MAP = 'Map';

// 23.1 Map Objects
module.exports = __webpack_require__(/*! ./_collection */ "../node_modules/core-js/library/modules/_collection.js")(MAP, function (get) {
  return function Map() { return get(this, arguments.length > 0 ? arguments[0] : undefined); };
}, {
  // 23.1.3.6 Map.prototype.get(key)
  get: function get(key) {
    var entry = strong.getEntry(validate(this, MAP), key);
    return entry && entry.v;
  },
  // 23.1.3.9 Map.prototype.set(key, value)
  set: function set(key, value) {
    return strong.def(validate(this, MAP), key === 0 ? 0 : key, value);
  }
}, strong, true);


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.assign.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.assign.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.3.1 Object.assign(target, source)
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");

$export($export.S + $export.F, 'Object', { assign: __webpack_require__(/*! ./_object-assign */ "../node_modules/core-js/library/modules/_object-assign.js") });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.create.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.create.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
$export($export.S, 'Object', { create: __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js") });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.define-properties.js":
/*!*******************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.define-properties.js ***!
  \*******************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
// 19.1.2.3 / 15.2.3.7 Object.defineProperties(O, Properties)
$export($export.S + $export.F * !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js"), 'Object', { defineProperties: __webpack_require__(/*! ./_object-dps */ "../node_modules/core-js/library/modules/_object-dps.js") });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.define-property.js":
/*!*****************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.define-property.js ***!
  \*****************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)
$export($export.S + $export.F * !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js"), 'Object', { defineProperty: __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js":
/*!*****************************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js ***!
  \*****************************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var $getOwnPropertyDescriptor = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js").f;

__webpack_require__(/*! ./_object-sap */ "../node_modules/core-js/library/modules/_object-sap.js")('getOwnPropertyDescriptor', function () {
  return function getOwnPropertyDescriptor(it, key) {
    return $getOwnPropertyDescriptor(toIObject(it), key);
  };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.get-prototype-of.js":
/*!******************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.get-prototype-of.js ***!
  \******************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.9 Object.getPrototypeOf(O)
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var $getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");

__webpack_require__(/*! ./_object-sap */ "../node_modules/core-js/library/modules/_object-sap.js")('getPrototypeOf', function () {
  return function getPrototypeOf(it) {
    return $getPrototypeOf(toObject(it));
  };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.keys.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.keys.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.14 Object.keys(O)
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var $keys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");

__webpack_require__(/*! ./_object-sap */ "../node_modules/core-js/library/modules/_object-sap.js")('keys', function () {
  return function keys(it) {
    return $keys(toObject(it));
  };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.set-prototype-of.js":
/*!******************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.set-prototype-of.js ***!
  \******************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.3.19 Object.setPrototypeOf(O, proto)
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
$export($export.S, 'Object', { setPrototypeOf: __webpack_require__(/*! ./_set-proto */ "../node_modules/core-js/library/modules/_set-proto.js").set });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.to-string.js":
/*!***********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.to-string.js ***!
  \***********************************************************************/
/***/ (() => {



/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.promise.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.promise.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/library/modules/_classof.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var anInstance = __webpack_require__(/*! ./_an-instance */ "../node_modules/core-js/library/modules/_an-instance.js");
var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");
var speciesConstructor = __webpack_require__(/*! ./_species-constructor */ "../node_modules/core-js/library/modules/_species-constructor.js");
var task = __webpack_require__(/*! ./_task */ "../node_modules/core-js/library/modules/_task.js").set;
var microtask = __webpack_require__(/*! ./_microtask */ "../node_modules/core-js/library/modules/_microtask.js")();
var newPromiseCapabilityModule = __webpack_require__(/*! ./_new-promise-capability */ "../node_modules/core-js/library/modules/_new-promise-capability.js");
var perform = __webpack_require__(/*! ./_perform */ "../node_modules/core-js/library/modules/_perform.js");
var userAgent = __webpack_require__(/*! ./_user-agent */ "../node_modules/core-js/library/modules/_user-agent.js");
var promiseResolve = __webpack_require__(/*! ./_promise-resolve */ "../node_modules/core-js/library/modules/_promise-resolve.js");
var PROMISE = 'Promise';
var TypeError = global.TypeError;
var process = global.process;
var versions = process && process.versions;
var v8 = versions && versions.v8 || '';
var $Promise = global[PROMISE];
var isNode = classof(process) == 'process';
var empty = function () { /* empty */ };
var Internal, newGenericPromiseCapability, OwnPromiseCapability, Wrapper;
var newPromiseCapability = newGenericPromiseCapability = newPromiseCapabilityModule.f;

var USE_NATIVE = !!function () {
  try {
    // correct subclassing with @@species support
    var promise = $Promise.resolve(1);
    var FakePromise = (promise.constructor = {})[__webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('species')] = function (exec) {
      exec(empty, empty);
    };
    // unhandled rejections tracking support, NodeJS Promise without it fails @@species test
    return (isNode || typeof PromiseRejectionEvent == 'function')
      && promise.then(empty) instanceof FakePromise
      // v8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables
      // https://bugs.chromium.org/p/chromium/issues/detail?id=830565
      // we can't detect it synchronously, so just check versions
      && v8.indexOf('6.6') !== 0
      && userAgent.indexOf('Chrome/66') === -1;
  } catch (e) { /* empty */ }
}();

// helpers
var isThenable = function (it) {
  var then;
  return isObject(it) && typeof (then = it.then) == 'function' ? then : false;
};
var notify = function (promise, isReject) {
  if (promise._n) return;
  promise._n = true;
  var chain = promise._c;
  microtask(function () {
    var value = promise._v;
    var ok = promise._s == 1;
    var i = 0;
    var run = function (reaction) {
      var handler = ok ? reaction.ok : reaction.fail;
      var resolve = reaction.resolve;
      var reject = reaction.reject;
      var domain = reaction.domain;
      var result, then, exited;
      try {
        if (handler) {
          if (!ok) {
            if (promise._h == 2) onHandleUnhandled(promise);
            promise._h = 1;
          }
          if (handler === true) result = value;
          else {
            if (domain) domain.enter();
            result = handler(value); // may throw
            if (domain) {
              domain.exit();
              exited = true;
            }
          }
          if (result === reaction.promise) {
            reject(TypeError('Promise-chain cycle'));
          } else if (then = isThenable(result)) {
            then.call(result, resolve, reject);
          } else resolve(result);
        } else reject(value);
      } catch (e) {
        if (domain && !exited) domain.exit();
        reject(e);
      }
    };
    while (chain.length > i) run(chain[i++]); // variable length - can't use forEach
    promise._c = [];
    promise._n = false;
    if (isReject && !promise._h) onUnhandled(promise);
  });
};
var onUnhandled = function (promise) {
  task.call(global, function () {
    var value = promise._v;
    var unhandled = isUnhandled(promise);
    var result, handler, console;
    if (unhandled) {
      result = perform(function () {
        if (isNode) {
          process.emit('unhandledRejection', value, promise);
        } else if (handler = global.onunhandledrejection) {
          handler({ promise: promise, reason: value });
        } else if ((console = global.console) && console.error) {
          console.error('Unhandled promise rejection', value);
        }
      });
      // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should
      promise._h = isNode || isUnhandled(promise) ? 2 : 1;
    } promise._a = undefined;
    if (unhandled && result.e) throw result.v;
  });
};
var isUnhandled = function (promise) {
  return promise._h !== 1 && (promise._a || promise._c).length === 0;
};
var onHandleUnhandled = function (promise) {
  task.call(global, function () {
    var handler;
    if (isNode) {
      process.emit('rejectionHandled', promise);
    } else if (handler = global.onrejectionhandled) {
      handler({ promise: promise, reason: promise._v });
    }
  });
};
var $reject = function (value) {
  var promise = this;
  if (promise._d) return;
  promise._d = true;
  promise = promise._w || promise; // unwrap
  promise._v = value;
  promise._s = 2;
  if (!promise._a) promise._a = promise._c.slice();
  notify(promise, true);
};
var $resolve = function (value) {
  var promise = this;
  var then;
  if (promise._d) return;
  promise._d = true;
  promise = promise._w || promise; // unwrap
  try {
    if (promise === value) throw TypeError("Promise can't be resolved itself");
    if (then = isThenable(value)) {
      microtask(function () {
        var wrapper = { _w: promise, _d: false }; // wrap
        try {
          then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1));
        } catch (e) {
          $reject.call(wrapper, e);
        }
      });
    } else {
      promise._v = value;
      promise._s = 1;
      notify(promise, false);
    }
  } catch (e) {
    $reject.call({ _w: promise, _d: false }, e); // wrap
  }
};

// constructor polyfill
if (!USE_NATIVE) {
  // 25.4.3.1 Promise(executor)
  $Promise = function Promise(executor) {
    anInstance(this, $Promise, PROMISE, '_h');
    aFunction(executor);
    Internal.call(this);
    try {
      executor(ctx($resolve, this, 1), ctx($reject, this, 1));
    } catch (err) {
      $reject.call(this, err);
    }
  };
  // eslint-disable-next-line no-unused-vars
  Internal = function Promise(executor) {
    this._c = [];             // <- awaiting reactions
    this._a = undefined;      // <- checked in isUnhandled reactions
    this._s = 0;              // <- state
    this._d = false;          // <- done
    this._v = undefined;      // <- value
    this._h = 0;              // <- rejection state, 0 - default, 1 - handled, 2 - unhandled
    this._n = false;          // <- notify
  };
  Internal.prototype = __webpack_require__(/*! ./_redefine-all */ "../node_modules/core-js/library/modules/_redefine-all.js")($Promise.prototype, {
    // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected)
    then: function then(onFulfilled, onRejected) {
      var reaction = newPromiseCapability(speciesConstructor(this, $Promise));
      reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;
      reaction.fail = typeof onRejected == 'function' && onRejected;
      reaction.domain = isNode ? process.domain : undefined;
      this._c.push(reaction);
      if (this._a) this._a.push(reaction);
      if (this._s) notify(this, false);
      return reaction.promise;
    },
    // 25.4.5.1 Promise.prototype.catch(onRejected)
    'catch': function (onRejected) {
      return this.then(undefined, onRejected);
    }
  });
  OwnPromiseCapability = function () {
    var promise = new Internal();
    this.promise = promise;
    this.resolve = ctx($resolve, promise, 1);
    this.reject = ctx($reject, promise, 1);
  };
  newPromiseCapabilityModule.f = newPromiseCapability = function (C) {
    return C === $Promise || C === Wrapper
      ? new OwnPromiseCapability(C)
      : newGenericPromiseCapability(C);
  };
}

$export($export.G + $export.W + $export.F * !USE_NATIVE, { Promise: $Promise });
__webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js")($Promise, PROMISE);
__webpack_require__(/*! ./_set-species */ "../node_modules/core-js/library/modules/_set-species.js")(PROMISE);
Wrapper = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js")[PROMISE];

// statics
$export($export.S + $export.F * !USE_NATIVE, PROMISE, {
  // 25.4.4.5 Promise.reject(r)
  reject: function reject(r) {
    var capability = newPromiseCapability(this);
    var $$reject = capability.reject;
    $$reject(r);
    return capability.promise;
  }
});
$export($export.S + $export.F * (LIBRARY || !USE_NATIVE), PROMISE, {
  // 25.4.4.6 Promise.resolve(x)
  resolve: function resolve(x) {
    return promiseResolve(LIBRARY && this === Wrapper ? $Promise : this, x);
  }
});
$export($export.S + $export.F * !(USE_NATIVE && __webpack_require__(/*! ./_iter-detect */ "../node_modules/core-js/library/modules/_iter-detect.js")(function (iter) {
  $Promise.all(iter)['catch'](empty);
})), PROMISE, {
  // 25.4.4.1 Promise.all(iterable)
  all: function all(iterable) {
    var C = this;
    var capability = newPromiseCapability(C);
    var resolve = capability.resolve;
    var reject = capability.reject;
    var result = perform(function () {
      var values = [];
      var index = 0;
      var remaining = 1;
      forOf(iterable, false, function (promise) {
        var $index = index++;
        var alreadyCalled = false;
        values.push(undefined);
        remaining++;
        C.resolve(promise).then(function (value) {
          if (alreadyCalled) return;
          alreadyCalled = true;
          values[$index] = value;
          --remaining || resolve(values);
        }, reject);
      });
      --remaining || resolve(values);
    });
    if (result.e) reject(result.v);
    return capability.promise;
  },
  // 25.4.4.4 Promise.race(iterable)
  race: function race(iterable) {
    var C = this;
    var capability = newPromiseCapability(C);
    var reject = capability.reject;
    var result = perform(function () {
      forOf(iterable, false, function (promise) {
        C.resolve(promise).then(capability.resolve, reject);
      });
    });
    if (result.e) reject(result.v);
    return capability.promise;
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.reflect.construct.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.reflect.construct.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 26.1.2 Reflect.construct(target, argumentsList [, newTarget])
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
var bind = __webpack_require__(/*! ./_bind */ "../node_modules/core-js/library/modules/_bind.js");
var rConstruct = (__webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").Reflect || {}).construct;

// MS Edge supports only 2 arguments and argumentsList argument is optional
// FF Nightly sets third argument as `new.target`, but does not create `this` from it
var NEW_TARGET_BUG = fails(function () {
  function F() { /* empty */ }
  return !(rConstruct(function () { /* empty */ }, [], F) instanceof F);
});
var ARGS_BUG = !fails(function () {
  rConstruct(function () { /* empty */ });
});

$export($export.S + $export.F * (NEW_TARGET_BUG || ARGS_BUG), 'Reflect', {
  construct: function construct(Target, args /* , newTarget */) {
    aFunction(Target);
    anObject(args);
    var newTarget = arguments.length < 3 ? Target : aFunction(arguments[2]);
    if (ARGS_BUG && !NEW_TARGET_BUG) return rConstruct(Target, args, newTarget);
    if (Target == newTarget) {
      // w/o altered newTarget, optimization for 0-4 arguments
      switch (args.length) {
        case 0: return new Target();
        case 1: return new Target(args[0]);
        case 2: return new Target(args[0], args[1]);
        case 3: return new Target(args[0], args[1], args[2]);
        case 4: return new Target(args[0], args[1], args[2], args[3]);
      }
      // w/o altered newTarget, lot of arguments case
      var $args = [null];
      $args.push.apply($args, args);
      return new (bind.apply(Target, $args))();
    }
    // with altered newTarget, not support built-in constructors
    var proto = newTarget.prototype;
    var instance = create(isObject(proto) ? proto : Object.prototype);
    var result = Function.apply.call(Target, instance, args);
    return isObject(result) ? result : instance;
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.reflect.get.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.reflect.get.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 26.1.6 Reflect.get(target, propertyKey [, receiver])
var gOPD = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js");
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");

function get(target, propertyKey /* , receiver */) {
  var receiver = arguments.length < 3 ? target : arguments[2];
  var desc, proto;
  if (anObject(target) === receiver) return target[propertyKey];
  if (desc = gOPD.f(target, propertyKey)) return has(desc, 'value')
    ? desc.value
    : desc.get !== undefined
      ? desc.get.call(receiver)
      : undefined;
  if (isObject(proto = getPrototypeOf(target))) return get(proto, propertyKey, receiver);
}

$export($export.S, 'Reflect', { get: get });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.string.iterator.js":
/*!**********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.string.iterator.js ***!
  \**********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $at = __webpack_require__(/*! ./_string-at */ "../node_modules/core-js/library/modules/_string-at.js")(true);

// 21.1.3.27 String.prototype[@@iterator]()
__webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/library/modules/_iter-define.js")(String, 'String', function (iterated) {
  this._t = String(iterated); // target
  this._i = 0;                // next index
// 21.1.5.2.1 %StringIteratorPrototype%.next()
}, function () {
  var O = this._t;
  var index = this._i;
  var point;
  if (index >= O.length) return { value: undefined, done: true };
  point = $at(O, index);
  this._i += point.length;
  return { value: point, done: false };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.symbol.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.symbol.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// ECMAScript 6 symbols shim
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/library/modules/_redefine.js");
var META = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js").KEY;
var $fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
var shared = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
var wks = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js");
var wksExt = __webpack_require__(/*! ./_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js");
var wksDefine = __webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js");
var enumKeys = __webpack_require__(/*! ./_enum-keys */ "../node_modules/core-js/library/modules/_enum-keys.js");
var isArray = __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/library/modules/_is-array.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
var _create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
var gOPNExt = __webpack_require__(/*! ./_object-gopn-ext */ "../node_modules/core-js/library/modules/_object-gopn-ext.js");
var $GOPD = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js");
var $GOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
var $DP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var $keys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var gOPD = $GOPD.f;
var dP = $DP.f;
var gOPN = gOPNExt.f;
var $Symbol = global.Symbol;
var $JSON = global.JSON;
var _stringify = $JSON && $JSON.stringify;
var PROTOTYPE = 'prototype';
var HIDDEN = wks('_hidden');
var TO_PRIMITIVE = wks('toPrimitive');
var isEnum = {}.propertyIsEnumerable;
var SymbolRegistry = shared('symbol-registry');
var AllSymbols = shared('symbols');
var OPSymbols = shared('op-symbols');
var ObjectProto = Object[PROTOTYPE];
var USE_NATIVE = typeof $Symbol == 'function' && !!$GOPS.f;
var QObject = global.QObject;
// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173
var setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;

// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687
var setSymbolDesc = DESCRIPTORS && $fails(function () {
  return _create(dP({}, 'a', {
    get: function () { return dP(this, 'a', { value: 7 }).a; }
  })).a != 7;
}) ? function (it, key, D) {
  var protoDesc = gOPD(ObjectProto, key);
  if (protoDesc) delete ObjectProto[key];
  dP(it, key, D);
  if (protoDesc && it !== ObjectProto) dP(ObjectProto, key, protoDesc);
} : dP;

var wrap = function (tag) {
  var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]);
  sym._k = tag;
  return sym;
};

var isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function (it) {
  return typeof it == 'symbol';
} : function (it) {
  return it instanceof $Symbol;
};

var $defineProperty = function defineProperty(it, key, D) {
  if (it === ObjectProto) $defineProperty(OPSymbols, key, D);
  anObject(it);
  key = toPrimitive(key, true);
  anObject(D);
  if (has(AllSymbols, key)) {
    if (!D.enumerable) {
      if (!has(it, HIDDEN)) dP(it, HIDDEN, createDesc(1, {}));
      it[HIDDEN][key] = true;
    } else {
      if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false;
      D = _create(D, { enumerable: createDesc(0, false) });
    } return setSymbolDesc(it, key, D);
  } return dP(it, key, D);
};
var $defineProperties = function defineProperties(it, P) {
  anObject(it);
  var keys = enumKeys(P = toIObject(P));
  var i = 0;
  var l = keys.length;
  var key;
  while (l > i) $defineProperty(it, key = keys[i++], P[key]);
  return it;
};
var $create = function create(it, P) {
  return P === undefined ? _create(it) : $defineProperties(_create(it), P);
};
var $propertyIsEnumerable = function propertyIsEnumerable(key) {
  var E = isEnum.call(this, key = toPrimitive(key, true));
  if (this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return false;
  return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true;
};
var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key) {
  it = toIObject(it);
  key = toPrimitive(key, true);
  if (it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return;
  var D = gOPD(it, key);
  if (D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) D.enumerable = true;
  return D;
};
var $getOwnPropertyNames = function getOwnPropertyNames(it) {
  var names = gOPN(toIObject(it));
  var result = [];
  var i = 0;
  var key;
  while (names.length > i) {
    if (!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META) result.push(key);
  } return result;
};
var $getOwnPropertySymbols = function getOwnPropertySymbols(it) {
  var IS_OP = it === ObjectProto;
  var names = gOPN(IS_OP ? OPSymbols : toIObject(it));
  var result = [];
  var i = 0;
  var key;
  while (names.length > i) {
    if (has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true)) result.push(AllSymbols[key]);
  } return result;
};

// 19.4.1.1 Symbol([description])
if (!USE_NATIVE) {
  $Symbol = function Symbol() {
    if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor!');
    var tag = uid(arguments.length > 0 ? arguments[0] : undefined);
    var $set = function (value) {
      if (this === ObjectProto) $set.call(OPSymbols, value);
      if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;
      setSymbolDesc(this, tag, createDesc(1, value));
    };
    if (DESCRIPTORS && setter) setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set });
    return wrap(tag);
  };
  redefine($Symbol[PROTOTYPE], 'toString', function toString() {
    return this._k;
  });

  $GOPD.f = $getOwnPropertyDescriptor;
  $DP.f = $defineProperty;
  __webpack_require__(/*! ./_object-gopn */ "../node_modules/core-js/library/modules/_object-gopn.js").f = gOPNExt.f = $getOwnPropertyNames;
  __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js").f = $propertyIsEnumerable;
  $GOPS.f = $getOwnPropertySymbols;

  if (DESCRIPTORS && !__webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js")) {
    redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);
  }

  wksExt.f = function (name) {
    return wrap(wks(name));
  };
}

$export($export.G + $export.W + $export.F * !USE_NATIVE, { Symbol: $Symbol });

for (var es6Symbols = (
  // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14
  'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'
).split(','), j = 0; es6Symbols.length > j;)wks(es6Symbols[j++]);

for (var wellKnownSymbols = $keys(wks.store), k = 0; wellKnownSymbols.length > k;) wksDefine(wellKnownSymbols[k++]);

$export($export.S + $export.F * !USE_NATIVE, 'Symbol', {
  // 19.4.2.1 Symbol.for(key)
  'for': function (key) {
    return has(SymbolRegistry, key += '')
      ? SymbolRegistry[key]
      : SymbolRegistry[key] = $Symbol(key);
  },
  // 19.4.2.5 Symbol.keyFor(sym)
  keyFor: function keyFor(sym) {
    if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol!');
    for (var key in SymbolRegistry) if (SymbolRegistry[key] === sym) return key;
  },
  useSetter: function () { setter = true; },
  useSimple: function () { setter = false; }
});

$export($export.S + $export.F * !USE_NATIVE, 'Object', {
  // 19.1.2.2 Object.create(O [, Properties])
  create: $create,
  // 19.1.2.4 Object.defineProperty(O, P, Attributes)
  defineProperty: $defineProperty,
  // 19.1.2.3 Object.defineProperties(O, Properties)
  defineProperties: $defineProperties,
  // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
  getOwnPropertyDescriptor: $getOwnPropertyDescriptor,
  // 19.1.2.7 Object.getOwnPropertyNames(O)
  getOwnPropertyNames: $getOwnPropertyNames,
  // 19.1.2.8 Object.getOwnPropertySymbols(O)
  getOwnPropertySymbols: $getOwnPropertySymbols
});

// Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives
// https://bugs.chromium.org/p/v8/issues/detail?id=3443
var FAILS_ON_PRIMITIVES = $fails(function () { $GOPS.f(1); });

$export($export.S + $export.F * FAILS_ON_PRIMITIVES, 'Object', {
  getOwnPropertySymbols: function getOwnPropertySymbols(it) {
    return $GOPS.f(toObject(it));
  }
});

// 24.3.2 JSON.stringify(value [, replacer [, space]])
$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function () {
  var S = $Symbol();
  // MS Edge converts symbol values to JSON as {}
  // WebKit converts symbol values to JSON as null
  // V8 throws on boxed symbols
  return _stringify([S]) != '[null]' || _stringify({ a: S }) != '{}' || _stringify(Object(S)) != '{}';
})), 'JSON', {
  stringify: function stringify(it) {
    var args = [it];
    var i = 1;
    var replacer, $replacer;
    while (arguments.length > i) args.push(arguments[i++]);
    $replacer = replacer = args[1];
    if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined
    if (!isArray(replacer)) replacer = function (key, value) {
      if (typeof $replacer == 'function') value = $replacer.call(this, key, value);
      if (!isSymbol(value)) return value;
    };
    args[1] = replacer;
    return _stringify.apply($JSON, args);
  }
});

// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint)
$Symbol[PROTOTYPE][TO_PRIMITIVE] || __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js")($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);
// 19.4.3.5 Symbol.prototype[@@toStringTag]
setToStringTag($Symbol, 'Symbol');
// 20.2.1.9 Math[@@toStringTag]
setToStringTag(Math, 'Math', true);
// 24.3.3 JSON[@@toStringTag]
setToStringTag(global.JSON, 'JSON', true);


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.weak-map.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.weak-map.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var each = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/library/modules/_array-methods.js")(0);
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/library/modules/_redefine.js");
var meta = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js");
var assign = __webpack_require__(/*! ./_object-assign */ "../node_modules/core-js/library/modules/_object-assign.js");
var weak = __webpack_require__(/*! ./_collection-weak */ "../node_modules/core-js/library/modules/_collection-weak.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var validate = __webpack_require__(/*! ./_validate-collection */ "../node_modules/core-js/library/modules/_validate-collection.js");
var NATIVE_WEAK_MAP = __webpack_require__(/*! ./_validate-collection */ "../node_modules/core-js/library/modules/_validate-collection.js");
var IS_IE11 = !global.ActiveXObject && 'ActiveXObject' in global;
var WEAK_MAP = 'WeakMap';
var getWeak = meta.getWeak;
var isExtensible = Object.isExtensible;
var uncaughtFrozenStore = weak.ufstore;
var InternalMap;

var wrapper = function (get) {
  return function WeakMap() {
    return get(this, arguments.length > 0 ? arguments[0] : undefined);
  };
};

var methods = {
  // 23.3.3.3 WeakMap.prototype.get(key)
  get: function get(key) {
    if (isObject(key)) {
      var data = getWeak(key);
      if (data === true) return uncaughtFrozenStore(validate(this, WEAK_MAP)).get(key);
      return data ? data[this._i] : undefined;
    }
  },
  // 23.3.3.5 WeakMap.prototype.set(key, value)
  set: function set(key, value) {
    return weak.def(validate(this, WEAK_MAP), key, value);
  }
};

// 23.3 WeakMap Objects
var $WeakMap = module.exports = __webpack_require__(/*! ./_collection */ "../node_modules/core-js/library/modules/_collection.js")(WEAK_MAP, wrapper, methods, weak, true, true);

// IE11 WeakMap frozen keys fix
if (NATIVE_WEAK_MAP && IS_IE11) {
  InternalMap = weak.getConstructor(wrapper, WEAK_MAP);
  assign(InternalMap.prototype, methods);
  meta.NEED = true;
  each(['delete', 'has', 'get', 'set'], function (key) {
    var proto = $WeakMap.prototype;
    var method = proto[key];
    redefine(proto, key, function (a, b) {
      // store frozen objects on internal weakmap shim
      if (isObject(a) && !isExtensible(a)) {
        if (!this._f) this._f = new InternalMap();
        var result = this._f[key](a, b);
        return key == 'set' ? this : result;
      // store all the rest on native weakmap
      } return method.call(this, a, b);
    });
  });
}


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.map.from.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.map.from.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://tc39.github.io/proposal-setmap-offrom/#sec-map.from
__webpack_require__(/*! ./_set-collection-from */ "../node_modules/core-js/library/modules/_set-collection-from.js")('Map');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.map.of.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.map.of.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://tc39.github.io/proposal-setmap-offrom/#sec-map.of
__webpack_require__(/*! ./_set-collection-of */ "../node_modules/core-js/library/modules/_set-collection-of.js")('Map');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.map.to-json.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.map.to-json.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://github.com/DavidBruant/Map-Set.prototype.toJSON
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");

$export($export.P + $export.R, 'Map', { toJSON: __webpack_require__(/*! ./_collection-to-json */ "../node_modules/core-js/library/modules/_collection-to-json.js")('Map') });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.object.entries.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.object.entries.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://github.com/tc39/proposal-object-values-entries
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var $entries = __webpack_require__(/*! ./_object-to-array */ "../node_modules/core-js/library/modules/_object-to-array.js")(true);

$export($export.S, 'Object', {
  entries: function entries(it) {
    return $entries(it);
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.object.get-own-property-descriptors.js":
/*!******************************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.object.get-own-property-descriptors.js ***!
  \******************************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://github.com/tc39/proposal-object-getownpropertydescriptors
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var ownKeys = __webpack_require__(/*! ./_own-keys */ "../node_modules/core-js/library/modules/_own-keys.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var gOPD = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js");
var createProperty = __webpack_require__(/*! ./_create-property */ "../node_modules/core-js/library/modules/_create-property.js");

$export($export.S, 'Object', {
  getOwnPropertyDescriptors: function getOwnPropertyDescriptors(object) {
    var O = toIObject(object);
    var getDesc = gOPD.f;
    var keys = ownKeys(O);
    var result = {};
    var i = 0;
    var key, desc;
    while (keys.length > i) {
      desc = getDesc(O, key = keys[i++]);
      if (desc !== undefined) createProperty(result, key, desc);
    }
    return result;
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.object.values.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.object.values.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://github.com/tc39/proposal-object-values-entries
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var $values = __webpack_require__(/*! ./_object-to-array */ "../node_modules/core-js/library/modules/_object-to-array.js")(false);

$export($export.S, 'Object', {
  values: function values(it) {
    return $values(it);
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.promise.finally.js":
/*!**********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.promise.finally.js ***!
  \**********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
// https://github.com/tc39/proposal-promise-finally

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var speciesConstructor = __webpack_require__(/*! ./_species-constructor */ "../node_modules/core-js/library/modules/_species-constructor.js");
var promiseResolve = __webpack_require__(/*! ./_promise-resolve */ "../node_modules/core-js/library/modules/_promise-resolve.js");

$export($export.P + $export.R, 'Promise', { 'finally': function (onFinally) {
  var C = speciesConstructor(this, core.Promise || global.Promise);
  var isFunction = typeof onFinally == 'function';
  return this.then(
    isFunction ? function (x) {
      return promiseResolve(C, onFinally()).then(function () { return x; });
    } : onFinally,
    isFunction ? function (e) {
      return promiseResolve(C, onFinally()).then(function () { throw e; });
    } : onFinally
  );
} });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.promise.try.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.promise.try.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// https://github.com/tc39/proposal-promise-try
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var newPromiseCapability = __webpack_require__(/*! ./_new-promise-capability */ "../node_modules/core-js/library/modules/_new-promise-capability.js");
var perform = __webpack_require__(/*! ./_perform */ "../node_modules/core-js/library/modules/_perform.js");

$export($export.S, 'Promise', { 'try': function (callbackfn) {
  var promiseCapability = newPromiseCapability.f(this);
  var result = perform(callbackfn);
  (result.e ? promiseCapability.reject : promiseCapability.resolve)(result.v);
  return promiseCapability.promise;
} });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.symbol.async-iterator.js":
/*!****************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.symbol.async-iterator.js ***!
  \****************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js")('asyncIterator');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.symbol.observable.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.symbol.observable.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js")('observable');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.weak-map.from.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.weak-map.from.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://tc39.github.io/proposal-setmap-offrom/#sec-weakmap.from
__webpack_require__(/*! ./_set-collection-from */ "../node_modules/core-js/library/modules/_set-collection-from.js")('WeakMap');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.weak-map.of.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.weak-map.of.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://tc39.github.io/proposal-setmap-offrom/#sec-weakmap.of
__webpack_require__(/*! ./_set-collection-of */ "../node_modules/core-js/library/modules/_set-collection-of.js")('WeakMap');


/***/ }),

/***/ "../node_modules/core-js/library/modules/web.dom.iterable.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/web.dom.iterable.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ./es6.array.iterator */ "../node_modules/core-js/library/modules/es6.array.iterator.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var TO_STRING_TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('toStringTag');

var DOMIterables = ('CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,' +
  'DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,' +
  'MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,' +
  'SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,' +
  'TextTrackList,TouchList').split(',');

for (var i = 0; i < DOMIterables.length; i++) {
  var NAME = DOMIterables[i];
  var Collection = global[NAME];
  var proto = Collection && Collection.prototype;
  if (proto && !proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);
  Iterators[NAME] = Iterators.Array;
}


/***/ }),

/***/ "../node_modules/core-js/modules/_a-function.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_a-function.js ***!
  \******************************************************/
/***/ ((module) => {

module.exports = function (it) {
  if (typeof it != 'function') throw TypeError(it + ' is not a function!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_add-to-unscopables.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/modules/_add-to-unscopables.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 22.1.3.31 Array.prototype[@@unscopables]
var UNSCOPABLES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('unscopables');
var ArrayProto = Array.prototype;
if (ArrayProto[UNSCOPABLES] == undefined) __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js")(ArrayProto, UNSCOPABLES, {});
module.exports = function (key) {
  ArrayProto[UNSCOPABLES][key] = true;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_advance-string-index.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_advance-string-index.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var at = __webpack_require__(/*! ./_string-at */ "../node_modules/core-js/modules/_string-at.js")(true);

 // `AdvanceStringIndex` abstract operation
// https://tc39.github.io/ecma262/#sec-advancestringindex
module.exports = function (S, index, unicode) {
  return index + (unicode ? at(S, index).length : 1);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_an-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_an-object.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
module.exports = function (it) {
  if (!isObject(it)) throw TypeError(it + ' is not an object!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-includes.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/_array-includes.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// false -> Array#indexOf
// true  -> Array#includes
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/modules/_to-iobject.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var toAbsoluteIndex = __webpack_require__(/*! ./_to-absolute-index */ "../node_modules/core-js/modules/_to-absolute-index.js");
module.exports = function (IS_INCLUDES) {
  return function ($this, el, fromIndex) {
    var O = toIObject($this);
    var length = toLength(O.length);
    var index = toAbsoluteIndex(fromIndex, length);
    var value;
    // Array#includes uses SameValueZero equality algorithm
    // eslint-disable-next-line no-self-compare
    if (IS_INCLUDES && el != el) while (length > index) {
      value = O[index++];
      // eslint-disable-next-line no-self-compare
      if (value != value) return true;
    // Array#indexOf ignores holes, Array#includes - not
    } else for (;length > index; index++) if (IS_INCLUDES || index in O) {
      if (O[index] === el) return IS_INCLUDES || index || 0;
    } return !IS_INCLUDES && -1;
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-methods.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_array-methods.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 0 -> Array#forEach
// 1 -> Array#map
// 2 -> Array#filter
// 3 -> Array#some
// 4 -> Array#every
// 5 -> Array#find
// 6 -> Array#findIndex
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/modules/_ctx.js");
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/modules/_iobject.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/modules/_to-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var asc = __webpack_require__(/*! ./_array-species-create */ "../node_modules/core-js/modules/_array-species-create.js");
module.exports = function (TYPE, $create) {
  var IS_MAP = TYPE == 1;
  var IS_FILTER = TYPE == 2;
  var IS_SOME = TYPE == 3;
  var IS_EVERY = TYPE == 4;
  var IS_FIND_INDEX = TYPE == 6;
  var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
  var create = $create || asc;
  return function ($this, callbackfn, that) {
    var O = toObject($this);
    var self = IObject(O);
    var f = ctx(callbackfn, that, 3);
    var length = toLength(self.length);
    var index = 0;
    var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;
    var val, res;
    for (;length > index; index++) if (NO_HOLES || index in self) {
      val = self[index];
      res = f(val, index, O);
      if (TYPE) {
        if (IS_MAP) result[index] = res;   // map
        else if (res) switch (TYPE) {
          case 3: return true;             // some
          case 5: return val;              // find
          case 6: return index;            // findIndex
          case 2: result.push(val);        // filter
        } else if (IS_EVERY) return false; // every
      }
    }
    return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-species-constructor.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/modules/_array-species-constructor.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var isArray = __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/modules/_is-array.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('species');

module.exports = function (original) {
  var C;
  if (isArray(original)) {
    C = original.constructor;
    // cross-realm fallback
    if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
    if (isObject(C)) {
      C = C[SPECIES];
      if (C === null) C = undefined;
    }
  } return C === undefined ? Array : C;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-species-create.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_array-species-create.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 9.4.2.3 ArraySpeciesCreate(originalArray, length)
var speciesConstructor = __webpack_require__(/*! ./_array-species-constructor */ "../node_modules/core-js/modules/_array-species-constructor.js");

module.exports = function (original, length) {
  return new (speciesConstructor(original))(length);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_classof.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_classof.js ***!
  \***************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// getting tag from 19.1.3.6 Object.prototype.toString()
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('toStringTag');
// ES3 wrong here
var ARG = cof(function () { return arguments; }()) == 'Arguments';

// fallback for IE11 Script Access Denied error
var tryGet = function (it, key) {
  try {
    return it[key];
  } catch (e) { /* empty */ }
};

module.exports = function (it) {
  var O, T, B;
  return it === undefined ? 'Undefined' : it === null ? 'Null'
    // @@toStringTag case
    : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T
    // builtinTag case
    : ARG ? cof(O)
    // ES3 arguments fallback
    : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_cof.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_cof.js ***!
  \***********************************************/
/***/ ((module) => {

var toString = {}.toString;

module.exports = function (it) {
  return toString.call(it).slice(8, -1);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_core.js":
/*!************************************************!*\
  !*** ../node_modules/core-js/modules/_core.js ***!
  \************************************************/
/***/ ((module) => {

var core = module.exports = { version: '2.6.12' };
if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/modules/_ctx.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_ctx.js ***!
  \***********************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// optional / simple context binding
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/modules/_a-function.js");
module.exports = function (fn, that, length) {
  aFunction(fn);
  if (that === undefined) return fn;
  switch (length) {
    case 1: return function (a) {
      return fn.call(that, a);
    };
    case 2: return function (a, b) {
      return fn.call(that, a, b);
    };
    case 3: return function (a, b, c) {
      return fn.call(that, a, b, c);
    };
  }
  return function (/* ...args */) {
    return fn.apply(that, arguments);
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_defined.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_defined.js ***!
  \***************************************************/
/***/ ((module) => {

// 7.2.1 RequireObjectCoercible(argument)
module.exports = function (it) {
  if (it == undefined) throw TypeError("Can't call method on  " + it);
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_descriptors.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_descriptors.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Thank's IE8 for his funny defineProperty
module.exports = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () {
  return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/modules/_dom-create.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_dom-create.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js").document;
// typeof document.createElement is 'object' in old IE
var is = isObject(document) && isObject(document.createElement);
module.exports = function (it) {
  return is ? document.createElement(it) : {};
};


/***/ }),

/***/ "../node_modules/core-js/modules/_enum-bug-keys.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_enum-bug-keys.js ***!
  \*********************************************************/
/***/ ((module) => {

// IE 8- don't enum bug keys
module.exports = (
  'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
).split(',');


/***/ }),

/***/ "../node_modules/core-js/modules/_export.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_export.js ***!
  \**************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/modules/_ctx.js");
var PROTOTYPE = 'prototype';

var $export = function (type, name, source) {
  var IS_FORCED = type & $export.F;
  var IS_GLOBAL = type & $export.G;
  var IS_STATIC = type & $export.S;
  var IS_PROTO = type & $export.P;
  var IS_BIND = type & $export.B;
  var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE];
  var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
  var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {});
  var key, own, out, exp;
  if (IS_GLOBAL) source = name;
  for (key in source) {
    // contains in native
    own = !IS_FORCED && target && target[key] !== undefined;
    // export native or passed
    out = (own ? target : source)[key];
    // bind timers to global for call from export context
    exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
    // extend global
    if (target) redefine(target, key, out, type & $export.U);
    // export
    if (exports[key] != out) hide(exports, key, exp);
    if (IS_PROTO && expProto[key] != out) expProto[key] = out;
  }
};
global.core = core;
// type bitmap
$export.F = 1;   // forced
$export.G = 2;   // global
$export.S = 4;   // static
$export.P = 8;   // proto
$export.B = 16;  // bind
$export.W = 32;  // wrap
$export.U = 64;  // safe
$export.R = 128; // real proto method for `library`
module.exports = $export;


/***/ }),

/***/ "../node_modules/core-js/modules/_fails-is-regexp.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/_fails-is-regexp.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var MATCH = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('match');
module.exports = function (KEY) {
  var re = /./;
  try {
    '/./'[KEY](re);
  } catch (e) {
    try {
      re[MATCH] = false;
      return !'/./'[KEY](re);
    } catch (f) { /* empty */ }
  } return true;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_fails.js":
/*!*************************************************!*\
  !*** ../node_modules/core-js/modules/_fails.js ***!
  \*************************************************/
/***/ ((module) => {

module.exports = function (exec) {
  try {
    return !!exec();
  } catch (e) {
    return true;
  }
};


/***/ }),

/***/ "../node_modules/core-js/modules/_fix-re-wks.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_fix-re-wks.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

__webpack_require__(/*! ./es6.regexp.exec */ "../node_modules/core-js/modules/es6.regexp.exec.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
var wks = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js");
var regexpExec = __webpack_require__(/*! ./_regexp-exec */ "../node_modules/core-js/modules/_regexp-exec.js");

var SPECIES = wks('species');

var REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {
  // #replace needs built-in support for named groups.
  // #match works fine because it just return the exec results, even if it has
  // a "grops" property.
  var re = /./;
  re.exec = function () {
    var result = [];
    result.groups = { a: '7' };
    return result;
  };
  return ''.replace(re, '$<a>') !== '7';
});

var SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = (function () {
  // Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec
  var re = /(?:)/;
  var originalExec = re.exec;
  re.exec = function () { return originalExec.apply(this, arguments); };
  var result = 'ab'.split(re);
  return result.length === 2 && result[0] === 'a' && result[1] === 'b';
})();

module.exports = function (KEY, length, exec) {
  var SYMBOL = wks(KEY);

  var DELEGATES_TO_SYMBOL = !fails(function () {
    // String methods call symbol-named RegEp methods
    var O = {};
    O[SYMBOL] = function () { return 7; };
    return ''[KEY](O) != 7;
  });

  var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL ? !fails(function () {
    // Symbol-named RegExp methods call .exec
    var execCalled = false;
    var re = /a/;
    re.exec = function () { execCalled = true; return null; };
    if (KEY === 'split') {
      // RegExp[@@split] doesn't call the regex's exec method, but first creates
      // a new one. We need to return the patched regex when creating the new one.
      re.constructor = {};
      re.constructor[SPECIES] = function () { return re; };
    }
    re[SYMBOL]('');
    return !execCalled;
  }) : undefined;

  if (
    !DELEGATES_TO_SYMBOL ||
    !DELEGATES_TO_EXEC ||
    (KEY === 'replace' && !REPLACE_SUPPORTS_NAMED_GROUPS) ||
    (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)
  ) {
    var nativeRegExpMethod = /./[SYMBOL];
    var fns = exec(
      defined,
      SYMBOL,
      ''[KEY],
      function maybeCallNative(nativeMethod, regexp, str, arg2, forceStringMethod) {
        if (regexp.exec === regexpExec) {
          if (DELEGATES_TO_SYMBOL && !forceStringMethod) {
            // The native String method already delegates to @@method (this
            // polyfilled function), leasing to infinite recursion.
            // We avoid it by directly calling the native @@method method.
            return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };
          }
          return { done: true, value: nativeMethod.call(str, regexp, arg2) };
        }
        return { done: false };
      }
    );
    var strfn = fns[0];
    var rxfn = fns[1];

    redefine(String.prototype, KEY, strfn);
    hide(RegExp.prototype, SYMBOL, length == 2
      // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)
      // 21.2.5.11 RegExp.prototype[@@split](string, limit)
      ? function (string, arg) { return rxfn.call(string, this, arg); }
      // 21.2.5.6 RegExp.prototype[@@match](string)
      // 21.2.5.9 RegExp.prototype[@@search](string)
      : function (string) { return rxfn.call(string, this); }
    );
  }
};


/***/ }),

/***/ "../node_modules/core-js/modules/_flags.js":
/*!*************************************************!*\
  !*** ../node_modules/core-js/modules/_flags.js ***!
  \*************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 21.2.5.3 get RegExp.prototype.flags
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
module.exports = function () {
  var that = anObject(this);
  var result = '';
  if (that.global) result += 'g';
  if (that.ignoreCase) result += 'i';
  if (that.multiline) result += 'm';
  if (that.unicode) result += 'u';
  if (that.sticky) result += 'y';
  return result;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_function-to-string.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/modules/_function-to-string.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/modules/_shared.js")('native-function-to-string', Function.toString);


/***/ }),

/***/ "../node_modules/core-js/modules/_global.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_global.js ***!
  \**************************************************/
/***/ ((module) => {

// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
var global = module.exports = typeof window != 'undefined' && window.Math == Math
  ? window : typeof self != 'undefined' && self.Math == Math ? self
  // eslint-disable-next-line no-new-func
  : Function('return this')();
if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/modules/_has.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_has.js ***!
  \***********************************************/
/***/ ((module) => {

var hasOwnProperty = {}.hasOwnProperty;
module.exports = function (it, key) {
  return hasOwnProperty.call(it, key);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_hide.js":
/*!************************************************!*\
  !*** ../node_modules/core-js/modules/_hide.js ***!
  \************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/modules/_property-desc.js");
module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? function (object, key, value) {
  return dP.f(object, key, createDesc(1, value));
} : function (object, key, value) {
  object[key] = value;
  return object;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_html.js":
/*!************************************************!*\
  !*** ../node_modules/core-js/modules/_html.js ***!
  \************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js").document;
module.exports = document && document.documentElement;


/***/ }),

/***/ "../node_modules/core-js/modules/_ie8-dom-define.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/_ie8-dom-define.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") && !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () {
  return Object.defineProperty(__webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/modules/_dom-create.js")('div'), 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/modules/_inherit-if-required.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/modules/_inherit-if-required.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var setPrototypeOf = __webpack_require__(/*! ./_set-proto */ "../node_modules/core-js/modules/_set-proto.js").set;
module.exports = function (that, target, C) {
  var S = target.constructor;
  var P;
  if (S !== C && typeof S == 'function' && (P = S.prototype) !== C.prototype && isObject(P) && setPrototypeOf) {
    setPrototypeOf(that, P);
  } return that;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_iobject.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_iobject.js ***!
  \***************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// fallback for non-array-like ES3 and non-enumerable old V8 strings
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
// eslint-disable-next-line no-prototype-builtins
module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
  return cof(it) == 'String' ? it.split('') : Object(it);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_is-array.js":
/*!****************************************************!*\
  !*** ../node_modules/core-js/modules/_is-array.js ***!
  \****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.2.2 IsArray(argument)
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
module.exports = Array.isArray || function isArray(arg) {
  return cof(arg) == 'Array';
};


/***/ }),

/***/ "../node_modules/core-js/modules/_is-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_is-object.js ***!
  \*****************************************************/
/***/ ((module) => {

module.exports = function (it) {
  return typeof it === 'object' ? it !== null : typeof it === 'function';
};


/***/ }),

/***/ "../node_modules/core-js/modules/_is-regexp.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_is-regexp.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.2.8 IsRegExp(argument)
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
var MATCH = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('match');
module.exports = function (it) {
  var isRegExp;
  return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp');
};


/***/ }),

/***/ "../node_modules/core-js/modules/_iter-create.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_iter-create.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/modules/_object-create.js");
var descriptor = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/modules/_property-desc.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/modules/_set-to-string-tag.js");
var IteratorPrototype = {};

// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
__webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js")(IteratorPrototype, __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('iterator'), function () { return this; });

module.exports = function (Constructor, NAME, next) {
  Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });
  setToStringTag(Constructor, NAME + ' Iterator');
};


/***/ }),

/***/ "../node_modules/core-js/modules/_iter-define.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_iter-define.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/modules/_library.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/modules/_iterators.js");
var $iterCreate = __webpack_require__(/*! ./_iter-create */ "../node_modules/core-js/modules/_iter-create.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/modules/_set-to-string-tag.js");
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/modules/_object-gpo.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('iterator');
var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`
var FF_ITERATOR = '@@iterator';
var KEYS = 'keys';
var VALUES = 'values';

var returnThis = function () { return this; };

module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {
  $iterCreate(Constructor, NAME, next);
  var getMethod = function (kind) {
    if (!BUGGY && kind in proto) return proto[kind];
    switch (kind) {
      case KEYS: return function keys() { return new Constructor(this, kind); };
      case VALUES: return function values() { return new Constructor(this, kind); };
    } return function entries() { return new Constructor(this, kind); };
  };
  var TAG = NAME + ' Iterator';
  var DEF_VALUES = DEFAULT == VALUES;
  var VALUES_BUG = false;
  var proto = Base.prototype;
  var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];
  var $default = $native || getMethod(DEFAULT);
  var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;
  var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;
  var methods, key, IteratorPrototype;
  // Fix native
  if ($anyNative) {
    IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));
    if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {
      // Set @@toStringTag to native iterators
      setToStringTag(IteratorPrototype, TAG, true);
      // fix for some old engines
      if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);
    }
  }
  // fix Array#{values, @@iterator}.name in V8 / FF
  if (DEF_VALUES && $native && $native.name !== VALUES) {
    VALUES_BUG = true;
    $default = function values() { return $native.call(this); };
  }
  // Define iterator
  if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {
    hide(proto, ITERATOR, $default);
  }
  // Plug for library
  Iterators[NAME] = $default;
  Iterators[TAG] = returnThis;
  if (DEFAULT) {
    methods = {
      values: DEF_VALUES ? $default : getMethod(VALUES),
      keys: IS_SET ? $default : getMethod(KEYS),
      entries: $entries
    };
    if (FORCED) for (key in methods) {
      if (!(key in proto)) redefine(proto, key, methods[key]);
    } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
  }
  return methods;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_iter-step.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_iter-step.js ***!
  \*****************************************************/
/***/ ((module) => {

module.exports = function (done, value) {
  return { value: value, done: !!done };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_iterators.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_iterators.js ***!
  \*****************************************************/
/***/ ((module) => {

module.exports = {};


/***/ }),

/***/ "../node_modules/core-js/modules/_library.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_library.js ***!
  \***************************************************/
/***/ ((module) => {

module.exports = false;


/***/ }),

/***/ "../node_modules/core-js/modules/_object-create.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_object-create.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var dPs = __webpack_require__(/*! ./_object-dps */ "../node_modules/core-js/modules/_object-dps.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/modules/_enum-bug-keys.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/modules/_shared-key.js")('IE_PROTO');
var Empty = function () { /* empty */ };
var PROTOTYPE = 'prototype';

// Create object with fake `null` prototype: use iframe Object with cleared prototype
var createDict = function () {
  // Thrash, waste and sodomy: IE GC bug
  var iframe = __webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/modules/_dom-create.js")('iframe');
  var i = enumBugKeys.length;
  var lt = '<';
  var gt = '>';
  var iframeDocument;
  iframe.style.display = 'none';
  __webpack_require__(/*! ./_html */ "../node_modules/core-js/modules/_html.js").appendChild(iframe);
  iframe.src = 'javascript:'; // eslint-disable-line no-script-url
  // createDict = iframe.contentWindow.Object;
  // html.removeChild(iframe);
  iframeDocument = iframe.contentWindow.document;
  iframeDocument.open();
  iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);
  iframeDocument.close();
  createDict = iframeDocument.F;
  while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];
  return createDict();
};

module.exports = Object.create || function create(O, Properties) {
  var result;
  if (O !== null) {
    Empty[PROTOTYPE] = anObject(O);
    result = new Empty();
    Empty[PROTOTYPE] = null;
    // add "__proto__" for Object.getPrototypeOf polyfill
    result[IE_PROTO] = O;
  } else result = createDict();
  return Properties === undefined ? result : dPs(result, Properties);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-dp.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_object-dp.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/modules/_ie8-dom-define.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/modules/_to-primitive.js");
var dP = Object.defineProperty;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? Object.defineProperty : function defineProperty(O, P, Attributes) {
  anObject(O);
  P = toPrimitive(P, true);
  anObject(Attributes);
  if (IE8_DOM_DEFINE) try {
    return dP(O, P, Attributes);
  } catch (e) { /* empty */ }
  if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
  if ('value' in Attributes) O[P] = Attributes.value;
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-dps.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_object-dps.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/modules/_object-keys.js");

module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? Object.defineProperties : function defineProperties(O, Properties) {
  anObject(O);
  var keys = getKeys(Properties);
  var length = keys.length;
  var i = 0;
  var P;
  while (length > i) dP.f(O, P = keys[i++], Properties[P]);
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-gopd.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_object-gopd.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/modules/_object-pie.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/modules/_property-desc.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/modules/_to-iobject.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/modules/_to-primitive.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/modules/_ie8-dom-define.js");
var gOPD = Object.getOwnPropertyDescriptor;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? gOPD : function getOwnPropertyDescriptor(O, P) {
  O = toIObject(O);
  P = toPrimitive(P, true);
  if (IE8_DOM_DEFINE) try {
    return gOPD(O, P);
  } catch (e) { /* empty */ }
  if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-gopn.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_object-gopn.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)
var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/modules/_object-keys-internal.js");
var hiddenKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/modules/_enum-bug-keys.js").concat('length', 'prototype');

exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
  return $keys(O, hiddenKeys);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-gpo.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_object-gpo.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/modules/_to-object.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/modules/_shared-key.js")('IE_PROTO');
var ObjectProto = Object.prototype;

module.exports = Object.getPrototypeOf || function (O) {
  O = toObject(O);
  if (has(O, IE_PROTO)) return O[IE_PROTO];
  if (typeof O.constructor == 'function' && O instanceof O.constructor) {
    return O.constructor.prototype;
  } return O instanceof Object ? ObjectProto : null;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-keys-internal.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_object-keys-internal.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/modules/_to-iobject.js");
var arrayIndexOf = __webpack_require__(/*! ./_array-includes */ "../node_modules/core-js/modules/_array-includes.js")(false);
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/modules/_shared-key.js")('IE_PROTO');

module.exports = function (object, names) {
  var O = toIObject(object);
  var i = 0;
  var result = [];
  var key;
  for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);
  // Don't enum bug & hidden keys
  while (names.length > i) if (has(O, key = names[i++])) {
    ~arrayIndexOf(result, key) || result.push(key);
  }
  return result;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-keys.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_object-keys.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.14 / 15.2.3.14 Object.keys(O)
var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/modules/_object-keys-internal.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/modules/_enum-bug-keys.js");

module.exports = Object.keys || function keys(O) {
  return $keys(O, enumBugKeys);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-pie.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_object-pie.js ***!
  \******************************************************/
/***/ ((__unused_webpack_module, exports) => {

exports.f = {}.propertyIsEnumerable;


/***/ }),

/***/ "../node_modules/core-js/modules/_property-desc.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_property-desc.js ***!
  \*********************************************************/
/***/ ((module) => {

module.exports = function (bitmap, value) {
  return {
    enumerable: !(bitmap & 1),
    configurable: !(bitmap & 2),
    writable: !(bitmap & 4),
    value: value
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_redefine.js":
/*!****************************************************!*\
  !*** ../node_modules/core-js/modules/_redefine.js ***!
  \****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var SRC = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/modules/_uid.js")('src');
var $toString = __webpack_require__(/*! ./_function-to-string */ "../node_modules/core-js/modules/_function-to-string.js");
var TO_STRING = 'toString';
var TPL = ('' + $toString).split(TO_STRING);

__webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js").inspectSource = function (it) {
  return $toString.call(it);
};

(module.exports = function (O, key, val, safe) {
  var isFunction = typeof val == 'function';
  if (isFunction) has(val, 'name') || hide(val, 'name', key);
  if (O[key] === val) return;
  if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));
  if (O === global) {
    O[key] = val;
  } else if (!safe) {
    delete O[key];
    hide(O, key, val);
  } else if (O[key]) {
    O[key] = val;
  } else {
    hide(O, key, val);
  }
// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
})(Function.prototype, TO_STRING, function toString() {
  return typeof this == 'function' && this[SRC] || $toString.call(this);
});


/***/ }),

/***/ "../node_modules/core-js/modules/_regexp-exec-abstract.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_regexp-exec-abstract.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/modules/_classof.js");
var builtinExec = RegExp.prototype.exec;

 // `RegExpExec` abstract operation
// https://tc39.github.io/ecma262/#sec-regexpexec
module.exports = function (R, S) {
  var exec = R.exec;
  if (typeof exec === 'function') {
    var result = exec.call(R, S);
    if (typeof result !== 'object') {
      throw new TypeError('RegExp exec method returned something other than an Object or null');
    }
    return result;
  }
  if (classof(R) !== 'RegExp') {
    throw new TypeError('RegExp#exec called on incompatible receiver');
  }
  return builtinExec.call(R, S);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_regexp-exec.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_regexp-exec.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var regexpFlags = __webpack_require__(/*! ./_flags */ "../node_modules/core-js/modules/_flags.js");

var nativeExec = RegExp.prototype.exec;
// This always refers to the native implementation, because the
// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,
// which loads this file before patching the method.
var nativeReplace = String.prototype.replace;

var patchedExec = nativeExec;

var LAST_INDEX = 'lastIndex';

var UPDATES_LAST_INDEX_WRONG = (function () {
  var re1 = /a/,
      re2 = /b*/g;
  nativeExec.call(re1, 'a');
  nativeExec.call(re2, 'a');
  return re1[LAST_INDEX] !== 0 || re2[LAST_INDEX] !== 0;
})();

// nonparticipating capturing group, copied from es5-shim's String#split patch.
var NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;

var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED;

if (PATCH) {
  patchedExec = function exec(str) {
    var re = this;
    var lastIndex, reCopy, match, i;

    if (NPCG_INCLUDED) {
      reCopy = new RegExp('^' + re.source + '$(?!\\s)', regexpFlags.call(re));
    }
    if (UPDATES_LAST_INDEX_WRONG) lastIndex = re[LAST_INDEX];

    match = nativeExec.call(re, str);

    if (UPDATES_LAST_INDEX_WRONG && match) {
      re[LAST_INDEX] = re.global ? match.index + match[0].length : lastIndex;
    }
    if (NPCG_INCLUDED && match && match.length > 1) {
      // Fix browsers whose `exec` methods don't consistently return `undefined`
      // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/
      // eslint-disable-next-line no-loop-func
      nativeReplace.call(match[0], reCopy, function () {
        for (i = 1; i < arguments.length - 2; i++) {
          if (arguments[i] === undefined) match[i] = undefined;
        }
      });
    }

    return match;
  };
}

module.exports = patchedExec;


/***/ }),

/***/ "../node_modules/core-js/modules/_set-proto.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_set-proto.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Works with __proto__ only. Old v8 can't work with null proto objects.
/* eslint-disable no-proto */
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var check = function (O, proto) {
  anObject(O);
  if (!isObject(proto) && proto !== null) throw TypeError(proto + ": can't set as prototype!");
};
module.exports = {
  set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line
    function (test, buggy, set) {
      try {
        set = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/modules/_ctx.js")(Function.call, __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/modules/_object-gopd.js").f(Object.prototype, '__proto__').set, 2);
        set(test, []);
        buggy = !(test instanceof Array);
      } catch (e) { buggy = true; }
      return function setPrototypeOf(O, proto) {
        check(O, proto);
        if (buggy) O.__proto__ = proto;
        else set(O, proto);
        return O;
      };
    }({}, false) : undefined),
  check: check
};


/***/ }),

/***/ "../node_modules/core-js/modules/_set-species.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_set-species.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js");
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('species');

module.exports = function (KEY) {
  var C = global[KEY];
  if (DESCRIPTORS && C && !C[SPECIES]) dP.f(C, SPECIES, {
    configurable: true,
    get: function () { return this; }
  });
};


/***/ }),

/***/ "../node_modules/core-js/modules/_set-to-string-tag.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/_set-to-string-tag.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var def = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js").f;
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('toStringTag');

module.exports = function (it, tag, stat) {
  if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });
};


/***/ }),

/***/ "../node_modules/core-js/modules/_shared-key.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_shared-key.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var shared = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/modules/_shared.js")('keys');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/modules/_uid.js");
module.exports = function (key) {
  return shared[key] || (shared[key] = uid(key));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_shared.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_shared.js ***!
  \**************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var SHARED = '__core-js_shared__';
var store = global[SHARED] || (global[SHARED] = {});

(module.exports = function (key, value) {
  return store[key] || (store[key] = value !== undefined ? value : {});
})('versions', []).push({
  version: core.version,
  mode: __webpack_require__(/*! ./_library */ "../node_modules/core-js/modules/_library.js") ? 'pure' : 'global',
  copyright: '© 2020 Denis Pushkarev (zloirock.ru)'
});


/***/ }),

/***/ "../node_modules/core-js/modules/_species-constructor.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/modules/_species-constructor.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.3.20 SpeciesConstructor(O, defaultConstructor)
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/modules/_a-function.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('species');
module.exports = function (O, D) {
  var C = anObject(O).constructor;
  var S;
  return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_strict-method.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_strict-method.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js");

module.exports = function (method, arg) {
  return !!method && fails(function () {
    // eslint-disable-next-line no-useless-call
    arg ? method.call(null, function () { /* empty */ }, 1) : method.call(null);
  });
};


/***/ }),

/***/ "../node_modules/core-js/modules/_string-at.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_string-at.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
// true  -> String#at
// false -> String#codePointAt
module.exports = function (TO_STRING) {
  return function (that, pos) {
    var s = String(defined(that));
    var i = toInteger(pos);
    var l = s.length;
    var a, b;
    if (i < 0 || i >= l) return TO_STRING ? '' : undefined;
    a = s.charCodeAt(i);
    return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
      ? TO_STRING ? s.charAt(i) : a
      : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_string-context.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/_string-context.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// helper for String#{startsWith, endsWith, includes}
var isRegExp = __webpack_require__(/*! ./_is-regexp */ "../node_modules/core-js/modules/_is-regexp.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");

module.exports = function (that, searchString, NAME) {
  if (isRegExp(searchString)) throw TypeError('String#' + NAME + " doesn't accept regex!");
  return String(defined(that));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-absolute-index.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/_to-absolute-index.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var max = Math.max;
var min = Math.min;
module.exports = function (index, length) {
  index = toInteger(index);
  return index < 0 ? max(index + length, 0) : min(index, length);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-integer.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_to-integer.js ***!
  \******************************************************/
/***/ ((module) => {

// 7.1.4 ToInteger
var ceil = Math.ceil;
var floor = Math.floor;
module.exports = function (it) {
  return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-iobject.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_to-iobject.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// to indexed object, toObject with fallback for non-array-like ES3 strings
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/modules/_iobject.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
module.exports = function (it) {
  return IObject(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-length.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_to-length.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.15 ToLength
var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var min = Math.min;
module.exports = function (it) {
  return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_to-object.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.13 ToObject(argument)
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
module.exports = function (it) {
  return Object(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-primitive.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/modules/_to-primitive.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.1 ToPrimitive(input [, PreferredType])
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
// instead of the ES6 spec version, we didn't implement @@toPrimitive case
// and the second argument - flag - preferred type is a string
module.exports = function (it, S) {
  if (!isObject(it)) return it;
  var fn, val;
  if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
  if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  throw TypeError("Can't convert object to primitive value");
};


/***/ }),

/***/ "../node_modules/core-js/modules/_uid.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_uid.js ***!
  \***********************************************/
/***/ ((module) => {

var id = 0;
var px = Math.random();
module.exports = function (key) {
  return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_wks.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_wks.js ***!
  \***********************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var store = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/modules/_shared.js")('wks');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/modules/_uid.js");
var Symbol = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js").Symbol;
var USE_SYMBOL = typeof Symbol == 'function';

var $exports = module.exports = function (name) {
  return store[name] || (store[name] =
    USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
};

$exports.store = store;


/***/ }),

/***/ "../node_modules/core-js/modules/es6.array.filter.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.array.filter.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var $filter = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/modules/_array-methods.js")(2);

$export($export.P + $export.F * !__webpack_require__(/*! ./_strict-method */ "../node_modules/core-js/modules/_strict-method.js")([].filter, true), 'Array', {
  // 22.1.3.7 / 15.4.4.20 Array.prototype.filter(callbackfn [, thisArg])
  filter: function filter(callbackfn /* , thisArg */) {
    return $filter(this, callbackfn, arguments[1]);
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.array.find.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.array.find.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 22.1.3.8 Array.prototype.find(predicate, thisArg = undefined)
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var $find = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/modules/_array-methods.js")(5);
var KEY = 'find';
var forced = true;
// Shouldn't skip holes
if (KEY in []) Array(1)[KEY](function () { forced = false; });
$export($export.P + $export.F * forced, 'Array', {
  find: function find(callbackfn /* , that = undefined */) {
    return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
  }
});
__webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/modules/_add-to-unscopables.js")(KEY);


/***/ }),

/***/ "../node_modules/core-js/modules/es6.array.iterator.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.array.iterator.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var addToUnscopables = __webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/modules/_add-to-unscopables.js");
var step = __webpack_require__(/*! ./_iter-step */ "../node_modules/core-js/modules/_iter-step.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/modules/_iterators.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/modules/_to-iobject.js");

// 22.1.3.4 Array.prototype.entries()
// 22.1.3.13 Array.prototype.keys()
// 22.1.3.29 Array.prototype.values()
// 22.1.3.30 Array.prototype[@@iterator]()
module.exports = __webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/modules/_iter-define.js")(Array, 'Array', function (iterated, kind) {
  this._t = toIObject(iterated); // target
  this._i = 0;                   // next index
  this._k = kind;                // kind
// 22.1.5.2.1 %ArrayIteratorPrototype%.next()
}, function () {
  var O = this._t;
  var kind = this._k;
  var index = this._i++;
  if (!O || index >= O.length) {
    this._t = undefined;
    return step(1);
  }
  if (kind == 'keys') return step(0, index);
  if (kind == 'values') return step(0, O[index]);
  return step(0, [index, O[index]]);
}, 'values');

// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
Iterators.Arguments = Iterators.Array;

addToUnscopables('keys');
addToUnscopables('values');
addToUnscopables('entries');


/***/ }),

/***/ "../node_modules/core-js/modules/es6.function.name.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.function.name.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js").f;
var FProto = Function.prototype;
var nameRE = /^\s*function ([^ (]*)/;
var NAME = 'name';

// 19.2.4.2 name
NAME in FProto || __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") && dP(FProto, NAME, {
  configurable: true,
  get: function () {
    try {
      return ('' + this).match(nameRE)[1];
    } catch (e) {
      return '';
    }
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.object.to-string.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.object.to-string.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 19.1.3.6 Object.prototype.toString()
var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/modules/_classof.js");
var test = {};
test[__webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('toStringTag')] = 'z';
if (test + '' != '[object z]') {
  __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js")(Object.prototype, 'toString', function toString() {
    return '[object ' + classof(this) + ']';
  }, true);
}


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.constructor.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.constructor.js ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var inheritIfRequired = __webpack_require__(/*! ./_inherit-if-required */ "../node_modules/core-js/modules/_inherit-if-required.js");
var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js").f;
var gOPN = __webpack_require__(/*! ./_object-gopn */ "../node_modules/core-js/modules/_object-gopn.js").f;
var isRegExp = __webpack_require__(/*! ./_is-regexp */ "../node_modules/core-js/modules/_is-regexp.js");
var $flags = __webpack_require__(/*! ./_flags */ "../node_modules/core-js/modules/_flags.js");
var $RegExp = global.RegExp;
var Base = $RegExp;
var proto = $RegExp.prototype;
var re1 = /a/g;
var re2 = /a/g;
// "new" creates a new object, old webkit buggy here
var CORRECT_NEW = new $RegExp(re1) !== re1;

if (__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") && (!CORRECT_NEW || __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () {
  re2[__webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('match')] = false;
  // RegExp constructor can alter flags and IsRegExp works correct with @@match
  return $RegExp(re1) != re1 || $RegExp(re2) == re2 || $RegExp(re1, 'i') != '/a/i';
}))) {
  $RegExp = function RegExp(p, f) {
    var tiRE = this instanceof $RegExp;
    var piRE = isRegExp(p);
    var fiU = f === undefined;
    return !tiRE && piRE && p.constructor === $RegExp && fiU ? p
      : inheritIfRequired(CORRECT_NEW
        ? new Base(piRE && !fiU ? p.source : p, f)
        : Base((piRE = p instanceof $RegExp) ? p.source : p, piRE && fiU ? $flags.call(p) : f)
      , tiRE ? this : proto, $RegExp);
  };
  var proxy = function (key) {
    key in $RegExp || dP($RegExp, key, {
      configurable: true,
      get: function () { return Base[key]; },
      set: function (it) { Base[key] = it; }
    });
  };
  for (var keys = gOPN(Base), i = 0; keys.length > i;) proxy(keys[i++]);
  proto.constructor = $RegExp;
  $RegExp.prototype = proto;
  __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js")(global, 'RegExp', $RegExp);
}

__webpack_require__(/*! ./_set-species */ "../node_modules/core-js/modules/_set-species.js")('RegExp');


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.exec.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.exec.js ***!
  \**********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var regexpExec = __webpack_require__(/*! ./_regexp-exec */ "../node_modules/core-js/modules/_regexp-exec.js");
__webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js")({
  target: 'RegExp',
  proto: true,
  forced: regexpExec !== /./.exec
}, {
  exec: regexpExec
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.flags.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.flags.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 21.2.5.3 get RegExp.prototype.flags()
if (__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") && /./g.flags != 'g') __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js").f(RegExp.prototype, 'flags', {
  configurable: true,
  get: __webpack_require__(/*! ./_flags */ "../node_modules/core-js/modules/_flags.js")
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.match.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.match.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var advanceStringIndex = __webpack_require__(/*! ./_advance-string-index */ "../node_modules/core-js/modules/_advance-string-index.js");
var regExpExec = __webpack_require__(/*! ./_regexp-exec-abstract */ "../node_modules/core-js/modules/_regexp-exec-abstract.js");

// @@match logic
__webpack_require__(/*! ./_fix-re-wks */ "../node_modules/core-js/modules/_fix-re-wks.js")('match', 1, function (defined, MATCH, $match, maybeCallNative) {
  return [
    // `String.prototype.match` method
    // https://tc39.github.io/ecma262/#sec-string.prototype.match
    function match(regexp) {
      var O = defined(this);
      var fn = regexp == undefined ? undefined : regexp[MATCH];
      return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));
    },
    // `RegExp.prototype[@@match]` method
    // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match
    function (regexp) {
      var res = maybeCallNative($match, regexp, this);
      if (res.done) return res.value;
      var rx = anObject(regexp);
      var S = String(this);
      if (!rx.global) return regExpExec(rx, S);
      var fullUnicode = rx.unicode;
      rx.lastIndex = 0;
      var A = [];
      var n = 0;
      var result;
      while ((result = regExpExec(rx, S)) !== null) {
        var matchStr = String(result[0]);
        A[n] = matchStr;
        if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
        n++;
      }
      return n === 0 ? null : A;
    }
  ];
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.replace.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.replace.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/modules/_to-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var advanceStringIndex = __webpack_require__(/*! ./_advance-string-index */ "../node_modules/core-js/modules/_advance-string-index.js");
var regExpExec = __webpack_require__(/*! ./_regexp-exec-abstract */ "../node_modules/core-js/modules/_regexp-exec-abstract.js");
var max = Math.max;
var min = Math.min;
var floor = Math.floor;
var SUBSTITUTION_SYMBOLS = /\$([$&`']|\d\d?|<[^>]*>)/g;
var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&`']|\d\d?)/g;

var maybeToString = function (it) {
  return it === undefined ? it : String(it);
};

// @@replace logic
__webpack_require__(/*! ./_fix-re-wks */ "../node_modules/core-js/modules/_fix-re-wks.js")('replace', 2, function (defined, REPLACE, $replace, maybeCallNative) {
  return [
    // `String.prototype.replace` method
    // https://tc39.github.io/ecma262/#sec-string.prototype.replace
    function replace(searchValue, replaceValue) {
      var O = defined(this);
      var fn = searchValue == undefined ? undefined : searchValue[REPLACE];
      return fn !== undefined
        ? fn.call(searchValue, O, replaceValue)
        : $replace.call(String(O), searchValue, replaceValue);
    },
    // `RegExp.prototype[@@replace]` method
    // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace
    function (regexp, replaceValue) {
      var res = maybeCallNative($replace, regexp, this, replaceValue);
      if (res.done) return res.value;

      var rx = anObject(regexp);
      var S = String(this);
      var functionalReplace = typeof replaceValue === 'function';
      if (!functionalReplace) replaceValue = String(replaceValue);
      var global = rx.global;
      if (global) {
        var fullUnicode = rx.unicode;
        rx.lastIndex = 0;
      }
      var results = [];
      while (true) {
        var result = regExpExec(rx, S);
        if (result === null) break;
        results.push(result);
        if (!global) break;
        var matchStr = String(result[0]);
        if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
      }
      var accumulatedResult = '';
      var nextSourcePosition = 0;
      for (var i = 0; i < results.length; i++) {
        result = results[i];
        var matched = String(result[0]);
        var position = max(min(toInteger(result.index), S.length), 0);
        var captures = [];
        // NOTE: This is equivalent to
        //   captures = result.slice(1).map(maybeToString)
        // but for some reason `nativeSlice.call(result, 1, result.length)` (called in
        // the slice polyfill when slicing native arrays) "doesn't work" in safari 9 and
        // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.
        for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));
        var namedCaptures = result.groups;
        if (functionalReplace) {
          var replacerArgs = [matched].concat(captures, position, S);
          if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);
          var replacement = String(replaceValue.apply(undefined, replacerArgs));
        } else {
          replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);
        }
        if (position >= nextSourcePosition) {
          accumulatedResult += S.slice(nextSourcePosition, position) + replacement;
          nextSourcePosition = position + matched.length;
        }
      }
      return accumulatedResult + S.slice(nextSourcePosition);
    }
  ];

    // https://tc39.github.io/ecma262/#sec-getsubstitution
  function getSubstitution(matched, str, position, captures, namedCaptures, replacement) {
    var tailPos = position + matched.length;
    var m = captures.length;
    var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;
    if (namedCaptures !== undefined) {
      namedCaptures = toObject(namedCaptures);
      symbols = SUBSTITUTION_SYMBOLS;
    }
    return $replace.call(replacement, symbols, function (match, ch) {
      var capture;
      switch (ch.charAt(0)) {
        case '$': return '$';
        case '&': return matched;
        case '`': return str.slice(0, position);
        case "'": return str.slice(tailPos);
        case '<':
          capture = namedCaptures[ch.slice(1, -1)];
          break;
        default: // \d\d?
          var n = +ch;
          if (n === 0) return match;
          if (n > m) {
            var f = floor(n / 10);
            if (f === 0) return match;
            if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);
            return match;
          }
          capture = captures[n - 1];
      }
      return capture === undefined ? '' : capture;
    });
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.split.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.split.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var isRegExp = __webpack_require__(/*! ./_is-regexp */ "../node_modules/core-js/modules/_is-regexp.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var speciesConstructor = __webpack_require__(/*! ./_species-constructor */ "../node_modules/core-js/modules/_species-constructor.js");
var advanceStringIndex = __webpack_require__(/*! ./_advance-string-index */ "../node_modules/core-js/modules/_advance-string-index.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var callRegExpExec = __webpack_require__(/*! ./_regexp-exec-abstract */ "../node_modules/core-js/modules/_regexp-exec-abstract.js");
var regexpExec = __webpack_require__(/*! ./_regexp-exec */ "../node_modules/core-js/modules/_regexp-exec.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js");
var $min = Math.min;
var $push = [].push;
var $SPLIT = 'split';
var LENGTH = 'length';
var LAST_INDEX = 'lastIndex';
var MAX_UINT32 = 0xffffffff;

// babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError
var SUPPORTS_Y = !fails(function () { RegExp(MAX_UINT32, 'y'); });

// @@split logic
__webpack_require__(/*! ./_fix-re-wks */ "../node_modules/core-js/modules/_fix-re-wks.js")('split', 2, function (defined, SPLIT, $split, maybeCallNative) {
  var internalSplit;
  if (
    'abbc'[$SPLIT](/(b)*/)[1] == 'c' ||
    'test'[$SPLIT](/(?:)/, -1)[LENGTH] != 4 ||
    'ab'[$SPLIT](/(?:ab)*/)[LENGTH] != 2 ||
    '.'[$SPLIT](/(.?)(.?)/)[LENGTH] != 4 ||
    '.'[$SPLIT](/()()/)[LENGTH] > 1 ||
    ''[$SPLIT](/.?/)[LENGTH]
  ) {
    // based on es5-shim implementation, need to rework it
    internalSplit = function (separator, limit) {
      var string = String(this);
      if (separator === undefined && limit === 0) return [];
      // If `separator` is not a regex, use native split
      if (!isRegExp(separator)) return $split.call(string, separator, limit);
      var output = [];
      var flags = (separator.ignoreCase ? 'i' : '') +
                  (separator.multiline ? 'm' : '') +
                  (separator.unicode ? 'u' : '') +
                  (separator.sticky ? 'y' : '');
      var lastLastIndex = 0;
      var splitLimit = limit === undefined ? MAX_UINT32 : limit >>> 0;
      // Make `global` and avoid `lastIndex` issues by working with a copy
      var separatorCopy = new RegExp(separator.source, flags + 'g');
      var match, lastIndex, lastLength;
      while (match = regexpExec.call(separatorCopy, string)) {
        lastIndex = separatorCopy[LAST_INDEX];
        if (lastIndex > lastLastIndex) {
          output.push(string.slice(lastLastIndex, match.index));
          if (match[LENGTH] > 1 && match.index < string[LENGTH]) $push.apply(output, match.slice(1));
          lastLength = match[0][LENGTH];
          lastLastIndex = lastIndex;
          if (output[LENGTH] >= splitLimit) break;
        }
        if (separatorCopy[LAST_INDEX] === match.index) separatorCopy[LAST_INDEX]++; // Avoid an infinite loop
      }
      if (lastLastIndex === string[LENGTH]) {
        if (lastLength || !separatorCopy.test('')) output.push('');
      } else output.push(string.slice(lastLastIndex));
      return output[LENGTH] > splitLimit ? output.slice(0, splitLimit) : output;
    };
  // Chakra, V8
  } else if ('0'[$SPLIT](undefined, 0)[LENGTH]) {
    internalSplit = function (separator, limit) {
      return separator === undefined && limit === 0 ? [] : $split.call(this, separator, limit);
    };
  } else {
    internalSplit = $split;
  }

  return [
    // `String.prototype.split` method
    // https://tc39.github.io/ecma262/#sec-string.prototype.split
    function split(separator, limit) {
      var O = defined(this);
      var splitter = separator == undefined ? undefined : separator[SPLIT];
      return splitter !== undefined
        ? splitter.call(separator, O, limit)
        : internalSplit.call(String(O), separator, limit);
    },
    // `RegExp.prototype[@@split]` method
    // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@split
    //
    // NOTE: This cannot be properly polyfilled in engines that don't support
    // the 'y' flag.
    function (regexp, limit) {
      var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== $split);
      if (res.done) return res.value;

      var rx = anObject(regexp);
      var S = String(this);
      var C = speciesConstructor(rx, RegExp);

      var unicodeMatching = rx.unicode;
      var flags = (rx.ignoreCase ? 'i' : '') +
                  (rx.multiline ? 'm' : '') +
                  (rx.unicode ? 'u' : '') +
                  (SUPPORTS_Y ? 'y' : 'g');

      // ^(? + rx + ) is needed, in combination with some S slicing, to
      // simulate the 'y' flag.
      var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags);
      var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;
      if (lim === 0) return [];
      if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];
      var p = 0;
      var q = 0;
      var A = [];
      while (q < S.length) {
        splitter.lastIndex = SUPPORTS_Y ? q : 0;
        var z = callRegExpExec(splitter, SUPPORTS_Y ? S : S.slice(q));
        var e;
        if (
          z === null ||
          (e = $min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p
        ) {
          q = advanceStringIndex(S, q, unicodeMatching);
        } else {
          A.push(S.slice(p, q));
          if (A.length === lim) return A;
          for (var i = 1; i <= z.length - 1; i++) {
            A.push(z[i]);
            if (A.length === lim) return A;
          }
          q = p = e;
        }
      }
      A.push(S.slice(p));
      return A;
    }
  ];
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.to-string.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.to-string.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

__webpack_require__(/*! ./es6.regexp.flags */ "../node_modules/core-js/modules/es6.regexp.flags.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var $flags = __webpack_require__(/*! ./_flags */ "../node_modules/core-js/modules/_flags.js");
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js");
var TO_STRING = 'toString';
var $toString = /./[TO_STRING];

var define = function (fn) {
  __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js")(RegExp.prototype, TO_STRING, fn, true);
};

// 21.2.5.14 RegExp.prototype.toString()
if (__webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () { return $toString.call({ source: 'a', flags: 'b' }) != '/a/b'; })) {
  define(function toString() {
    var R = anObject(this);
    return '/'.concat(R.source, '/',
      'flags' in R ? R.flags : !DESCRIPTORS && R instanceof RegExp ? $flags.call(R) : undefined);
  });
// FF44- RegExp#toString has a wrong name
} else if ($toString.name != TO_STRING) {
  define(function toString() {
    return $toString.call(this);
  });
}


/***/ }),

/***/ "../node_modules/core-js/modules/es6.string.includes.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.string.includes.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
// 21.1.3.7 String.prototype.includes(searchString, position = 0)

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var context = __webpack_require__(/*! ./_string-context */ "../node_modules/core-js/modules/_string-context.js");
var INCLUDES = 'includes';

$export($export.P + $export.F * __webpack_require__(/*! ./_fails-is-regexp */ "../node_modules/core-js/modules/_fails-is-regexp.js")(INCLUDES), 'String', {
  includes: function includes(searchString /* , position = 0 */) {
    return !!~context(this, searchString, INCLUDES)
      .indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined);
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.string.iterator.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.string.iterator.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $at = __webpack_require__(/*! ./_string-at */ "../node_modules/core-js/modules/_string-at.js")(true);

// 21.1.3.27 String.prototype[@@iterator]()
__webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/modules/_iter-define.js")(String, 'String', function (iterated) {
  this._t = String(iterated); // target
  this._i = 0;                // next index
// 21.1.5.2.1 %StringIteratorPrototype%.next()
}, function () {
  var O = this._t;
  var index = this._i;
  var point;
  if (index >= O.length) return { value: undefined, done: true };
  point = $at(O, index);
  this._i += point.length;
  return { value: point, done: false };
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.string.starts-with.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.string.starts-with.js ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
// 21.1.3.18 String.prototype.startsWith(searchString [, position ])

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var context = __webpack_require__(/*! ./_string-context */ "../node_modules/core-js/modules/_string-context.js");
var STARTS_WITH = 'startsWith';
var $startsWith = ''[STARTS_WITH];

$export($export.P + $export.F * __webpack_require__(/*! ./_fails-is-regexp */ "../node_modules/core-js/modules/_fails-is-regexp.js")(STARTS_WITH), 'String', {
  startsWith: function startsWith(searchString /* , position = 0 */) {
    var that = context(this, searchString, STARTS_WITH);
    var index = toLength(Math.min(arguments.length > 1 ? arguments[1] : undefined, that.length));
    var search = String(searchString);
    return $startsWith
      ? $startsWith.call(that, search, index)
      : that.slice(index, index + search.length) === search;
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es7.array.includes.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/es7.array.includes.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// https://github.com/tc39/Array.prototype.includes
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var $includes = __webpack_require__(/*! ./_array-includes */ "../node_modules/core-js/modules/_array-includes.js")(true);

$export($export.P, 'Array', {
  includes: function includes(el /* , fromIndex = 0 */) {
    return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);
  }
});

__webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/modules/_add-to-unscopables.js")('includes');


/***/ }),

/***/ "../node_modules/core-js/modules/web.dom.iterable.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/web.dom.iterable.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $iterators = __webpack_require__(/*! ./es6.array.iterator */ "../node_modules/core-js/modules/es6.array.iterator.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/modules/_object-keys.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/modules/_iterators.js");
var wks = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js");
var ITERATOR = wks('iterator');
var TO_STRING_TAG = wks('toStringTag');
var ArrayValues = Iterators.Array;

var DOMIterables = {
  CSSRuleList: true, // TODO: Not spec compliant, should be false.
  CSSStyleDeclaration: false,
  CSSValueList: false,
  ClientRectList: false,
  DOMRectList: false,
  DOMStringList: false,
  DOMTokenList: true,
  DataTransferItemList: false,
  FileList: false,
  HTMLAllCollection: false,
  HTMLCollection: false,
  HTMLFormElement: false,
  HTMLSelectElement: false,
  MediaList: true, // TODO: Not spec compliant, should be false.
  MimeTypeArray: false,
  NamedNodeMap: false,
  NodeList: true,
  PaintRequestList: false,
  Plugin: false,
  PluginArray: false,
  SVGLengthList: false,
  SVGNumberList: false,
  SVGPathSegList: false,
  SVGPointList: false,
  SVGStringList: false,
  SVGTransformList: false,
  SourceBufferList: false,
  StyleSheetList: true, // TODO: Not spec compliant, should be false.
  TextTrackCueList: false,
  TextTrackList: false,
  TouchList: false
};

for (var collections = getKeys(DOMIterables), i = 0; i < collections.length; i++) {
  var NAME = collections[i];
  var explicit = DOMIterables[NAME];
  var Collection = global[NAME];
  var proto = Collection && Collection.prototype;
  var key;
  if (proto) {
    if (!proto[ITERATOR]) hide(proto, ITERATOR, ArrayValues);
    if (!proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);
    Iterators[NAME] = ArrayValues;
    if (explicit) for (key in $iterators) if (!proto[key]) redefine(proto, key, $iterators[key], true);
  }
}


/***/ }),

/***/ "../node_modules/regenerator-runtime/runtime.js":
/*!******************************************************!*\
  !*** ../node_modules/regenerator-runtime/runtime.js ***!
  \******************************************************/
/***/ ((module) => {

/**
 * Copyright (c) 2014-present, Facebook, Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

var runtime = (function (exports) {
  "use strict";

  var Op = Object.prototype;
  var hasOwn = Op.hasOwnProperty;
  var undefined; // More compressible than void 0.
  var $Symbol = typeof Symbol === "function" ? Symbol : {};
  var iteratorSymbol = $Symbol.iterator || "@@iterator";
  var asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator";
  var toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag";

  function define(obj, key, value) {
    Object.defineProperty(obj, key, {
      value: value,
      enumerable: true,
      configurable: true,
      writable: true
    });
    return obj[key];
  }
  try {
    // IE 8 has a broken Object.defineProperty that only works on DOM objects.
    define({}, "");
  } catch (err) {
    define = function(obj, key, value) {
      return obj[key] = value;
    };
  }

  function wrap(innerFn, outerFn, self, tryLocsList) {
    // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.
    var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;
    var generator = Object.create(protoGenerator.prototype);
    var context = new Context(tryLocsList || []);

    // The ._invoke method unifies the implementations of the .next,
    // .throw, and .return methods.
    generator._invoke = makeInvokeMethod(innerFn, self, context);

    return generator;
  }
  exports.wrap = wrap;

  // Try/catch helper to minimize deoptimizations. Returns a completion
  // record like context.tryEntries[i].completion. This interface could
  // have been (and was previously) designed to take a closure to be
  // invoked without arguments, but in all the cases we care about we
  // already have an existing method we want to call, so there's no need
  // to create a new function object. We can even get away with assuming
  // the method takes exactly one argument, since that happens to be true
  // in every case, so we don't have to touch the arguments object. The
  // only additional allocation required is the completion record, which
  // has a stable shape and so hopefully should be cheap to allocate.
  function tryCatch(fn, obj, arg) {
    try {
      return { type: "normal", arg: fn.call(obj, arg) };
    } catch (err) {
      return { type: "throw", arg: err };
    }
  }

  var GenStateSuspendedStart = "suspendedStart";
  var GenStateSuspendedYield = "suspendedYield";
  var GenStateExecuting = "executing";
  var GenStateCompleted = "completed";

  // Returning this object from the innerFn has the same effect as
  // breaking out of the dispatch switch statement.
  var ContinueSentinel = {};

  // Dummy constructor functions that we use as the .constructor and
  // .constructor.prototype properties for functions that return Generator
  // objects. For full spec compliance, you may wish to configure your
  // minifier not to mangle the names of these two functions.
  function Generator() {}
  function GeneratorFunction() {}
  function GeneratorFunctionPrototype() {}

  // This is a polyfill for %IteratorPrototype% for environments that
  // don't natively support it.
  var IteratorPrototype = {};
  IteratorPrototype[iteratorSymbol] = function () {
    return this;
  };

  var getProto = Object.getPrototypeOf;
  var NativeIteratorPrototype = getProto && getProto(getProto(values([])));
  if (NativeIteratorPrototype &&
      NativeIteratorPrototype !== Op &&
      hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {
    // This environment has a native %IteratorPrototype%; use it instead
    // of the polyfill.
    IteratorPrototype = NativeIteratorPrototype;
  }

  var Gp = GeneratorFunctionPrototype.prototype =
    Generator.prototype = Object.create(IteratorPrototype);
  GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype;
  GeneratorFunctionPrototype.constructor = GeneratorFunction;
  GeneratorFunction.displayName = define(
    GeneratorFunctionPrototype,
    toStringTagSymbol,
    "GeneratorFunction"
  );

  // Helper for defining the .next, .throw, and .return methods of the
  // Iterator interface in terms of a single ._invoke method.
  function defineIteratorMethods(prototype) {
    ["next", "throw", "return"].forEach(function(method) {
      define(prototype, method, function(arg) {
        return this._invoke(method, arg);
      });
    });
  }

  exports.isGeneratorFunction = function(genFun) {
    var ctor = typeof genFun === "function" && genFun.constructor;
    return ctor
      ? ctor === GeneratorFunction ||
        // For the native GeneratorFunction constructor, the best we can
        // do is to check its .name property.
        (ctor.displayName || ctor.name) === "GeneratorFunction"
      : false;
  };

  exports.mark = function(genFun) {
    if (Object.setPrototypeOf) {
      Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);
    } else {
      genFun.__proto__ = GeneratorFunctionPrototype;
      define(genFun, toStringTagSymbol, "GeneratorFunction");
    }
    genFun.prototype = Object.create(Gp);
    return genFun;
  };

  // Within the body of any async function, `await x` is transformed to
  // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test
  // `hasOwn.call(value, "__await")` to determine if the yielded value is
  // meant to be awaited.
  exports.awrap = function(arg) {
    return { __await: arg };
  };

  function AsyncIterator(generator, PromiseImpl) {
    function invoke(method, arg, resolve, reject) {
      var record = tryCatch(generator[method], generator, arg);
      if (record.type === "throw") {
        reject(record.arg);
      } else {
        var result = record.arg;
        var value = result.value;
        if (value &&
            typeof value === "object" &&
            hasOwn.call(value, "__await")) {
          return PromiseImpl.resolve(value.__await).then(function(value) {
            invoke("next", value, resolve, reject);
          }, function(err) {
            invoke("throw", err, resolve, reject);
          });
        }

        return PromiseImpl.resolve(value).then(function(unwrapped) {
          // When a yielded Promise is resolved, its final value becomes
          // the .value of the Promise<{value,done}> result for the
          // current iteration.
          result.value = unwrapped;
          resolve(result);
        }, function(error) {
          // If a rejected Promise was yielded, throw the rejection back
          // into the async generator function so it can be handled there.
          return invoke("throw", error, resolve, reject);
        });
      }
    }

    var previousPromise;

    function enqueue(method, arg) {
      function callInvokeWithMethodAndArg() {
        return new PromiseImpl(function(resolve, reject) {
          invoke(method, arg, resolve, reject);
        });
      }

      return previousPromise =
        // If enqueue has been called before, then we want to wait until
        // all previous Promises have been resolved before calling invoke,
        // so that results are always delivered in the correct order. If
        // enqueue has not been called before, then it is important to
        // call invoke immediately, without waiting on a callback to fire,
        // so that the async generator function has the opportunity to do
        // any necessary setup in a predictable way. This predictability
        // is why the Promise constructor synchronously invokes its
        // executor callback, and why async functions synchronously
        // execute code before the first await. Since we implement simple
        // async functions in terms of async generators, it is especially
        // important to get this right, even though it requires care.
        previousPromise ? previousPromise.then(
          callInvokeWithMethodAndArg,
          // Avoid propagating failures to Promises returned by later
          // invocations of the iterator.
          callInvokeWithMethodAndArg
        ) : callInvokeWithMethodAndArg();
    }

    // Define the unified helper method that is used to implement .next,
    // .throw, and .return (see defineIteratorMethods).
    this._invoke = enqueue;
  }

  defineIteratorMethods(AsyncIterator.prototype);
  AsyncIterator.prototype[asyncIteratorSymbol] = function () {
    return this;
  };
  exports.AsyncIterator = AsyncIterator;

  // Note that simple async functions are implemented on top of
  // AsyncIterator objects; they just return a Promise for the value of
  // the final result produced by the iterator.
  exports.async = function(innerFn, outerFn, self, tryLocsList, PromiseImpl) {
    if (PromiseImpl === void 0) PromiseImpl = Promise;

    var iter = new AsyncIterator(
      wrap(innerFn, outerFn, self, tryLocsList),
      PromiseImpl
    );

    return exports.isGeneratorFunction(outerFn)
      ? iter // If outerFn is a generator, return the full iterator.
      : iter.next().then(function(result) {
          return result.done ? result.value : iter.next();
        });
  };

  function makeInvokeMethod(innerFn, self, context) {
    var state = GenStateSuspendedStart;

    return function invoke(method, arg) {
      if (state === GenStateExecuting) {
        throw new Error("Generator is already running");
      }

      if (state === GenStateCompleted) {
        if (method === "throw") {
          throw arg;
        }

        // Be forgiving, per 25.3.3.3.3 of the spec:
        // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume
        return doneResult();
      }

      context.method = method;
      context.arg = arg;

      while (true) {
        var delegate = context.delegate;
        if (delegate) {
          var delegateResult = maybeInvokeDelegate(delegate, context);
          if (delegateResult) {
            if (delegateResult === ContinueSentinel) continue;
            return delegateResult;
          }
        }

        if (context.method === "next") {
          // Setting context._sent for legacy support of Babel's
          // function.sent implementation.
          context.sent = context._sent = context.arg;

        } else if (context.method === "throw") {
          if (state === GenStateSuspendedStart) {
            state = GenStateCompleted;
            throw context.arg;
          }

          context.dispatchException(context.arg);

        } else if (context.method === "return") {
          context.abrupt("return", context.arg);
        }

        state = GenStateExecuting;

        var record = tryCatch(innerFn, self, context);
        if (record.type === "normal") {
          // If an exception is thrown from innerFn, we leave state ===
          // GenStateExecuting and loop back for another invocation.
          state = context.done
            ? GenStateCompleted
            : GenStateSuspendedYield;

          if (record.arg === ContinueSentinel) {
            continue;
          }

          return {
            value: record.arg,
            done: context.done
          };

        } else if (record.type === "throw") {
          state = GenStateCompleted;
          // Dispatch the exception by looping back around to the
          // context.dispatchException(context.arg) call above.
          context.method = "throw";
          context.arg = record.arg;
        }
      }
    };
  }

  // Call delegate.iterator[context.method](context.arg) and handle the
  // result, either by returning a { value, done } result from the
  // delegate iterator, or by modifying context.method and context.arg,
  // setting context.delegate to null, and returning the ContinueSentinel.
  function maybeInvokeDelegate(delegate, context) {
    var method = delegate.iterator[context.method];
    if (method === undefined) {
      // A .throw or .return when the delegate iterator has no .throw
      // method always terminates the yield* loop.
      context.delegate = null;

      if (context.method === "throw") {
        // Note: ["return"] must be used for ES3 parsing compatibility.
        if (delegate.iterator["return"]) {
          // If the delegate iterator has a return method, give it a
          // chance to clean up.
          context.method = "return";
          context.arg = undefined;
          maybeInvokeDelegate(delegate, context);

          if (context.method === "throw") {
            // If maybeInvokeDelegate(context) changed context.method from
            // "return" to "throw", let that override the TypeError below.
            return ContinueSentinel;
          }
        }

        context.method = "throw";
        context.arg = new TypeError(
          "The iterator does not provide a 'throw' method");
      }

      return ContinueSentinel;
    }

    var record = tryCatch(method, delegate.iterator, context.arg);

    if (record.type === "throw") {
      context.method = "throw";
      context.arg = record.arg;
      context.delegate = null;
      return ContinueSentinel;
    }

    var info = record.arg;

    if (! info) {
      context.method = "throw";
      context.arg = new TypeError("iterator result is not an object");
      context.delegate = null;
      return ContinueSentinel;
    }

    if (info.done) {
      // Assign the result of the finished delegate to the temporary
      // variable specified by delegate.resultName (see delegateYield).
      context[delegate.resultName] = info.value;

      // Resume execution at the desired location (see delegateYield).
      context.next = delegate.nextLoc;

      // If context.method was "throw" but the delegate handled the
      // exception, let the outer generator proceed normally. If
      // context.method was "next", forget context.arg since it has been
      // "consumed" by the delegate iterator. If context.method was
      // "return", allow the original .return call to continue in the
      // outer generator.
      if (context.method !== "return") {
        context.method = "next";
        context.arg = undefined;
      }

    } else {
      // Re-yield the result returned by the delegate method.
      return info;
    }

    // The delegate iterator is finished, so forget it and continue with
    // the outer generator.
    context.delegate = null;
    return ContinueSentinel;
  }

  // Define Generator.prototype.{next,throw,return} in terms of the
  // unified ._invoke helper method.
  defineIteratorMethods(Gp);

  define(Gp, toStringTagSymbol, "Generator");

  // A Generator should always return itself as the iterator object when the
  // @@iterator function is called on it. Some browsers' implementations of the
  // iterator prototype chain incorrectly implement this, causing the Generator
  // object to not be returned from this call. This ensures that doesn't happen.
  // See https://github.com/facebook/regenerator/issues/274 for more details.
  Gp[iteratorSymbol] = function() {
    return this;
  };

  Gp.toString = function() {
    return "[object Generator]";
  };

  function pushTryEntry(locs) {
    var entry = { tryLoc: locs[0] };

    if (1 in locs) {
      entry.catchLoc = locs[1];
    }

    if (2 in locs) {
      entry.finallyLoc = locs[2];
      entry.afterLoc = locs[3];
    }

    this.tryEntries.push(entry);
  }

  function resetTryEntry(entry) {
    var record = entry.completion || {};
    record.type = "normal";
    delete record.arg;
    entry.completion = record;
  }

  function Context(tryLocsList) {
    // The root entry object (effectively a try statement without a catch
    // or a finally block) gives us a place to store values thrown from
    // locations where there is no enclosing try statement.
    this.tryEntries = [{ tryLoc: "root" }];
    tryLocsList.forEach(pushTryEntry, this);
    this.reset(true);
  }

  exports.keys = function(object) {
    var keys = [];
    for (var key in object) {
      keys.push(key);
    }
    keys.reverse();

    // Rather than returning an object with a next method, we keep
    // things simple and return the next function itself.
    return function next() {
      while (keys.length) {
        var key = keys.pop();
        if (key in object) {
          next.value = key;
          next.done = false;
          return next;
        }
      }

      // To avoid creating an additional object, we just hang the .value
      // and .done properties off the next function object itself. This
      // also ensures that the minifier will not anonymize the function.
      next.done = true;
      return next;
    };
  };

  function values(iterable) {
    if (iterable) {
      var iteratorMethod = iterable[iteratorSymbol];
      if (iteratorMethod) {
        return iteratorMethod.call(iterable);
      }

      if (typeof iterable.next === "function") {
        return iterable;
      }

      if (!isNaN(iterable.length)) {
        var i = -1, next = function next() {
          while (++i < iterable.length) {
            if (hasOwn.call(iterable, i)) {
              next.value = iterable[i];
              next.done = false;
              return next;
            }
          }

          next.value = undefined;
          next.done = true;

          return next;
        };

        return next.next = next;
      }
    }

    // Return an iterator with no values.
    return { next: doneResult };
  }
  exports.values = values;

  function doneResult() {
    return { value: undefined, done: true };
  }

  Context.prototype = {
    constructor: Context,

    reset: function(skipTempReset) {
      this.prev = 0;
      this.next = 0;
      // Resetting context._sent for legacy support of Babel's
      // function.sent implementation.
      this.sent = this._sent = undefined;
      this.done = false;
      this.delegate = null;

      this.method = "next";
      this.arg = undefined;

      this.tryEntries.forEach(resetTryEntry);

      if (!skipTempReset) {
        for (var name in this) {
          // Not sure about the optimal order of these conditions:
          if (name.charAt(0) === "t" &&
              hasOwn.call(this, name) &&
              !isNaN(+name.slice(1))) {
            this[name] = undefined;
          }
        }
      }
    },

    stop: function() {
      this.done = true;

      var rootEntry = this.tryEntries[0];
      var rootRecord = rootEntry.completion;
      if (rootRecord.type === "throw") {
        throw rootRecord.arg;
      }

      return this.rval;
    },

    dispatchException: function(exception) {
      if (this.done) {
        throw exception;
      }

      var context = this;
      function handle(loc, caught) {
        record.type = "throw";
        record.arg = exception;
        context.next = loc;

        if (caught) {
          // If the dispatched exception was caught by a catch block,
          // then let that catch block handle the exception normally.
          context.method = "next";
          context.arg = undefined;
        }

        return !! caught;
      }

      for (var i = this.tryEntries.length - 1; i >= 0; --i) {
        var entry = this.tryEntries[i];
        var record = entry.completion;

        if (entry.tryLoc === "root") {
          // Exception thrown outside of any try block that could handle
          // it, so set the completion value of the entire function to
          // throw the exception.
          return handle("end");
        }

        if (entry.tryLoc <= this.prev) {
          var hasCatch = hasOwn.call(entry, "catchLoc");
          var hasFinally = hasOwn.call(entry, "finallyLoc");

          if (hasCatch && hasFinally) {
            if (this.prev < entry.catchLoc) {
              return handle(entry.catchLoc, true);
            } else if (this.prev < entry.finallyLoc) {
              return handle(entry.finallyLoc);
            }

          } else if (hasCatch) {
            if (this.prev < entry.catchLoc) {
              return handle(entry.catchLoc, true);
            }

          } else if (hasFinally) {
            if (this.prev < entry.finallyLoc) {
              return handle(entry.finallyLoc);
            }

          } else {
            throw new Error("try statement without catch or finally");
          }
        }
      }
    },

    abrupt: function(type, arg) {
      for (var i = this.tryEntries.length - 1; i >= 0; --i) {
        var entry = this.tryEntries[i];
        if (entry.tryLoc <= this.prev &&
            hasOwn.call(entry, "finallyLoc") &&
            this.prev < entry.finallyLoc) {
          var finallyEntry = entry;
          break;
        }
      }

      if (finallyEntry &&
          (type === "break" ||
           type === "continue") &&
          finallyEntry.tryLoc <= arg &&
          arg <= finallyEntry.finallyLoc) {
        // Ignore the finally entry if control is not jumping to a
        // location outside the try/catch block.
        finallyEntry = null;
      }

      var record = finallyEntry ? finallyEntry.completion : {};
      record.type = type;
      record.arg = arg;

      if (finallyEntry) {
        this.method = "next";
        this.next = finallyEntry.finallyLoc;
        return ContinueSentinel;
      }

      return this.complete(record);
    },

    complete: function(record, afterLoc) {
      if (record.type === "throw") {
        throw record.arg;
      }

      if (record.type === "break" ||
          record.type === "continue") {
        this.next = record.arg;
      } else if (record.type === "return") {
        this.rval = this.arg = record.arg;
        this.method = "return";
        this.next = "end";
      } else if (record.type === "normal" && afterLoc) {
        this.next = afterLoc;
      }

      return ContinueSentinel;
    },

    finish: function(finallyLoc) {
      for (var i = this.tryEntries.length - 1; i >= 0; --i) {
        var entry = this.tryEntries[i];
        if (entry.finallyLoc === finallyLoc) {
          this.complete(entry.completion, entry.afterLoc);
          resetTryEntry(entry);
          return ContinueSentinel;
        }
      }
    },

    "catch": function(tryLoc) {
      for (var i = this.tryEntries.length - 1; i >= 0; --i) {
        var entry = this.tryEntries[i];
        if (entry.tryLoc === tryLoc) {
          var record = entry.completion;
          if (record.type === "throw") {
            var thrown = record.arg;
            resetTryEntry(entry);
          }
          return thrown;
        }
      }

      // The context.catch method must only be called with a location
      // argument that corresponds to a known catch block.
      throw new Error("illegal catch attempt");
    },

    delegateYield: function(iterable, resultName, nextLoc) {
      this.delegate = {
        iterator: values(iterable),
        resultName: resultName,
        nextLoc: nextLoc
      };

      if (this.method === "next") {
        // Deliberately forget the last sent value so that we don't
        // accidentally pass it on to the delegate.
        this.arg = undefined;
      }

      return ContinueSentinel;
    }
  };

  // Regardless of whether this script is executing as a CommonJS module
  // or not, return the runtime object so that we can declare the variable
  // regeneratorRuntime in the outer scope, which allows this module to be
  // injected easily by `bin/regenerator --include-runtime script.js`.
  return exports;

}(
  // If this script is executing as a CommonJS module, use module.exports
  // as the regeneratorRuntime namespace. Otherwise create a new empty
  // object. Either way, the resulting object will be used to initialize
  // the regeneratorRuntime variable at the top of this file.
   true ? module.exports : 0
));

try {
  regeneratorRuntime = runtime;
} catch (accidentalStrictMode) {
  // This module should not be running in strict mode, so the above
  // assignment should always work unless something is misconfigured. Just
  // in case runtime.js accidentally runs in strict mode, we can escape
  // strict mode using a global Function call. This could conceivably fail
  // if a Content Security Policy forbids using Function, but in that case
  // the proper solution is to fix the accidental strict mode problem. If
  // you've misconfigured your bundler to force strict mode and applied a
  // CSP to forbid Function, and you're not willing to fix either of those
  // problems, please detail your unique predicament in a GitHub issue.
  Function("r", "regeneratorRuntime = r")(runtime);
}


/***/ }),

/***/ "@wordpress/i18n":
/*!**************************!*\
  !*** external "wp.i18n" ***!
  \**************************/
/***/ ((module) => {

"use strict";
module.exports = wp.i18n;

/***/ })

/******/ 	});
/************************************************************************/
/******/ 	// The module cache
/******/ 	var __webpack_module_cache__ = {};
/******/ 	
/******/ 	// The require function
/******/ 	function __webpack_require__(moduleId) {
/******/ 		// Check if module is in cache
/******/ 		var cachedModule = __webpack_module_cache__[moduleId];
/******/ 		if (cachedModule !== undefined) {
/******/ 			return cachedModule.exports;
/******/ 		}
/******/ 		// Create a new module (and put it into the cache)
/******/ 		var module = __webpack_module_cache__[moduleId] = {
/******/ 			// no module.id needed
/******/ 			// no module.loaded needed
/******/ 			exports: {}
/******/ 		};
/******/ 	
/******/ 		// Execute the module function
/******/ 		__webpack_modules__[moduleId](module, module.exports, __webpack_require__);
/******/ 	
/******/ 		// Return the exports of the module
/******/ 		return module.exports;
/******/ 	}
/******/ 	
/************************************************************************/
var __webpack_exports__ = {};
// This entry need to be wrapped in an IIFE because it need to be in strict mode.
(() => {
"use strict";
/*!******************************************!*\
  !*** ../core/common/assets/js/common.js ***!
  \******************************************/


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

__webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _helpers = _interopRequireDefault(__webpack_require__(/*! ./utils/helpers */ "../core/common/assets/js/utils/helpers.js"));

var _storage = _interopRequireDefault(__webpack_require__(/*! ./utils/storage */ "../core/common/assets/js/utils/storage.js"));

var _debug = _interopRequireDefault(__webpack_require__(/*! ./utils/debug */ "../core/common/assets/js/utils/debug.js"));

var _ajax = _interopRequireDefault(__webpack_require__(/*! elementor-common-modules/ajax/assets/js/ajax */ "../core/common/modules/ajax/assets/js/ajax.js"));

var _finder = _interopRequireDefault(__webpack_require__(/*! elementor-common-modules/finder/assets/js/finder */ "../core/common/modules/finder/assets/js/finder.js"));

var _connect = _interopRequireDefault(__webpack_require__(/*! elementor-common-modules/connect/assets/js/connect */ "../core/common/modules/connect/assets/js/connect.js"));

var _api = _interopRequireDefault(__webpack_require__(/*! ./api/ */ "../core/common/assets/js/api/index.js"));

var ElementorCommonApp = /*#__PURE__*/function (_elementorModules$Vie) {
  (0, _inherits2.default)(ElementorCommonApp, _elementorModules$Vie);

  var _super = (0, _createSuper2.default)(ElementorCommonApp);

  function ElementorCommonApp() {
    (0, _classCallCheck2.default)(this, ElementorCommonApp);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(ElementorCommonApp, [{
    key: "setMarionetteTemplateCompiler",
    value: function setMarionetteTemplateCompiler() {
      Marionette.TemplateCache.prototype.compileTemplate = function (rawTemplate, options) {
        options = {
          evaluate: /<#([\s\S]+?)#>/g,
          interpolate: /{{{([\s\S]+?)}}}/g,
          escape: /{{([^}]+?)}}(?!})/g
        };
        return _.template(rawTemplate, options);
      };
    }
  }, {
    key: "getDefaultElements",
    value: function getDefaultElements() {
      return {
        $window: jQuery(window),
        $document: jQuery(document),
        $body: jQuery(document.body)
      };
    }
  }, {
    key: "initComponents",
    value: function initComponents() {
      this.debug = new _debug.default();
      this.helpers = new _helpers.default();
      this.storage = new _storage.default();
      this.dialogsManager = new DialogsManager.Instance();
      this.api = new _api.default();
      this.initModules();
    }
  }, {
    key: "initModules",
    value: function initModules() {
      var _this = this;

      var activeModules = this.config.activeModules;
      var modules = {
        ajax: _ajax.default,
        finder: _finder.default,
        connect: _connect.default
      };
      activeModules.forEach(function (name) {
        if (modules[name]) {
          _this[name] = new modules[name](_this.config[name]);
        }
      });
    }
  }, {
    key: "compileArrayTemplateArgs",
    value: function compileArrayTemplateArgs(template, templateArgs) {
      return template.replace(/%(?:(\d+)\$)?s/g, function (match, number) {
        if (!number) {
          number = 1;
        }

        number--;
        return undefined !== templateArgs[number] ? templateArgs[number] : match;
      });
    }
  }, {
    key: "compileObjectTemplateArgs",
    value: function compileObjectTemplateArgs(template, templateArgs) {
      return template.replace(/{{(?:([ \w]+))}}/g, function (match, name) {
        return templateArgs[name] ? templateArgs[name] : match;
      });
    }
  }, {
    key: "compileTemplate",
    value: function compileTemplate(template, templateArgs) {
      return jQuery.isPlainObject(templateArgs) ? this.compileObjectTemplateArgs(template, templateArgs) : this.compileArrayTemplateArgs(template, templateArgs);
    }
  }, {
    key: "translate",
    value: function translate(stringKey, context, templateArgs, i18nStack) {
      if (context) {
        i18nStack = this.config[context].i18n;
      }

      if (!i18nStack) {
        i18nStack = this.config.i18n;
      }

      var string = i18nStack[stringKey];

      if (undefined === string) {
        string = stringKey;
      }

      if (templateArgs) {
        string = this.compileTemplate(string, templateArgs);
      }

      return string;
    }
  }, {
    key: "onInit",
    value: function onInit() {
      (0, _get2.default)((0, _getPrototypeOf2.default)(ElementorCommonApp.prototype), "onInit", this).call(this);
      this.config = elementorCommonConfig;
      this.setMarionetteTemplateCompiler();
    }
  }]);
  return ElementorCommonApp;
}(elementorModules.ViewModule);

window.elementorCommon = new ElementorCommonApp();
elementorCommon.initComponents();
})();

/******/ })()
;
//# sourceMappingURL=common.js.mapassets/js/editor.min.js000064400002207674151327220410011107 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(()=>{var t={75453:(t,o,i)=>{t.exports=i(7421)},59396:(t,o,i)=>{t.exports=i(70157)},61888:(t,o,i)=>{t.exports=i(73684)},32009:(t,o,i)=>{t.exports=i(89710)},15149:(t,o,i)=>{t.exports=i(66458)},38401:(t,o,i)=>{t.exports=i(14710)},92937:(t,o,i)=>{t.exports=i(23022)},67394:(t,o,i)=>{t.exports=i(43153)},38923:(t,o,i)=>{t.exports=i(8531)},23587:(t,o,i)=>{t.exports=i(32622)},63774:(t,o,i)=>{t.exports=i(27410)},95315:(t,o,i)=>{t.exports=i(19035)},82055:(t,o,i)=>{t.exports=i(58535)},83452:(t,o,i)=>{t.exports=i(97220)},28274:(t,o,i)=>{t.exports=i(65135)},35657:(t,o,i)=>{t.exports=i(69591)},14176:(t,o,i)=>{t.exports=i(34345)},73220:(t,o,i)=>{t.exports=i(76483)},75499:(t,o,i)=>{t.exports=i(43094)},78282:(t,o,i)=>{t.exports=i(17641)},41281:(t,o,i)=>{t.exports=i(19103)},29363:(t,o,i)=>{t.exports=i(21114)},50093:(t,o,i)=>{t.exports=i(39871)},93168:(t,o,i)=>{t.exports=i(89999)},72292:t=>{t.exports=function _arrayLikeToArray(t,o){(null==o||o>t.length)&&(o=t.length);for(var i=0,r=new Array(o);i<o;i++)r[i]=t[i];return r},t.exports.default=t.exports,t.exports.__esModule=!0},86870:(t,o,i)=>{var r=i(59396);t.exports=function _arrayWithHoles(t){if(r(t))return t},t.exports.default=t.exports,t.exports.__esModule=!0},35693:(t,o,i)=>{var r=i(59396),a=i(72292);t.exports=function _arrayWithoutHoles(t){if(r(t))return a(t)},t.exports.default=t.exports,t.exports.__esModule=!0},38852:t=>{t.exports=function _assertThisInitialized(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t},t.exports.default=t.exports,t.exports.__esModule=!0},49117:(t,o,i)=>{var r=i(73220);function asyncGeneratorStep(t,o,i,a,l,u,c){try{var d=t[u](c),m=d.value}catch(t){return void i(t)}d.done?o(m):r.resolve(m).then(a,l)}t.exports=function _asyncToGenerator(t){return function(){var o=this,i=arguments;return new r((function(r,a){var l=t.apply(o,i);function _next(t){asyncGeneratorStep(l,r,a,_next,_throw,"next",t)}function _throw(t){asyncGeneratorStep(l,r,a,_next,_throw,"throw",t)}_next(void 0)}))}},t.exports.default=t.exports,t.exports.__esModule=!0},11959:t=>{t.exports=function _classCallCheck(t,o){if(!(t instanceof o))throw new TypeError("Cannot call a class as a function")},t.exports.default=t.exports,t.exports.__esModule=!0},39041:(t,o,i)=>{var r=i(67394);function _defineProperties(t,o){for(var i=0;i<o.length;i++){var a=o[i];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),r(t,a.key,a)}}t.exports=function _createClass(t,o,i){return o&&_defineProperties(t.prototype,o),i&&_defineProperties(t,i),t},t.exports.default=t.exports,t.exports.__esModule=!0},74758:(t,o,i)=>{var r=i(41281),a=i(50093),l=i(59396),u=i(24594);t.exports=function _createForOfIteratorHelper(t,o){var i=void 0!==r&&t[a]||t["@@iterator"];if(!i){if(l(t)||(i=u(t))||o&&t&&"number"==typeof t.length){i&&(t=i);var c=0,d=function F(){};return{s:d,n:function n(){return c>=t.length?{done:!0}:{done:!1,value:t[c++]}},e:function e(t){throw t},f:d}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var m,p=!0,h=!1;return{s:function s(){i=i.call(t)},n:function n(){var t=i.next();return p=t.done,t},e:function e(t){h=!0,m=t},f:function f(){try{p||null==i.return||i.return()}finally{if(h)throw m}}}},t.exports.default=t.exports,t.exports.__esModule=!0},68537:(t,o,i)=>{var r=i(75499),a=i(44263),l=i(898),u=i(59771);t.exports=function _createSuper(t){var o=l();return function _createSuperInternal(){var i,l=a(t);if(o){var c=a(this).constructor;i=r(l,arguments,c)}else i=l.apply(this,arguments);return u(this,i)}},t.exports.default=t.exports,t.exports.__esModule=!0},18042:(t,o,i)=>{var r=i(67394);t.exports=function _defineProperty(t,o,i){return o in t?r(t,o,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[o]=i,t},t.exports.default=t.exports,t.exports.__esModule=!0},37959:(t,o,i)=>{var r=i(15149);function _extends(){return t.exports=_extends=r||function(t){for(var o=1;o<arguments.length;o++){var i=arguments[o];for(var r in i)Object.prototype.hasOwnProperty.call(i,r)&&(t[r]=i[r])}return t},t.exports.default=t.exports,t.exports.__esModule=!0,_extends.apply(this,arguments)}t.exports=_extends,t.exports.default=t.exports,t.exports.__esModule=!0},76700:(t,o,i)=>{var r=i(78282),a=i(23587),l=i(49445);function _get(o,i,u){return"undefined"!=typeof Reflect&&r?(t.exports=_get=r,t.exports.default=t.exports,t.exports.__esModule=!0):(t.exports=_get=function _get(t,o,i){var r=l(t,o);if(r){var u=a(r,o);return u.get?u.get.call(i):u.value}},t.exports.default=t.exports,t.exports.__esModule=!0),_get(o,i,u||o)}t.exports=_get,t.exports.default=t.exports,t.exports.__esModule=!0},44263:(t,o,i)=>{var r=i(28274),a=i(82055);function _getPrototypeOf(o){return t.exports=_getPrototypeOf=r?a:function _getPrototypeOf(t){return t.__proto__||a(t)},t.exports.default=t.exports,t.exports.__esModule=!0,_getPrototypeOf(o)}t.exports=_getPrototypeOf,t.exports.default=t.exports,t.exports.__esModule=!0},77371:(t,o,i)=>{var r=i(38401),a=i(76870);t.exports=function _inherits(t,o){if("function"!=typeof o&&null!==o)throw new TypeError("Super expression must either be null or a function");t.prototype=r(o&&o.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),o&&a(t,o)},t.exports.default=t.exports,t.exports.__esModule=!0},67971:t=>{t.exports=function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}},t.exports.default=t.exports,t.exports.__esModule=!0},52369:(t,o,i)=>{var r=i(24596).default,a=i(93168),l=i(67394),u=i(23587);function _getRequireWildcardCache(t){if("function"!=typeof a)return null;var o=new a,i=new a;return(_getRequireWildcardCache=function _getRequireWildcardCache(t){return t?i:o})(t)}t.exports=function _interopRequireWildcard(t,o){if(!o&&t&&t.__esModule)return t;if(null===t||"object"!==r(t)&&"function"!=typeof t)return{default:t};var i=_getRequireWildcardCache(o);if(i&&i.has(t))return i.get(t);var a={},c=l&&u;for(var d in t)if("default"!==d&&Object.prototype.hasOwnProperty.call(t,d)){var m=c?u(t,d):null;m&&(m.get||m.set)?l(a,d,m):a[d]=t[d]}return a.default=t,i&&i.set(t,a),a},t.exports.default=t.exports,t.exports.__esModule=!0},898:(t,o,i)=>{var r=i(75499);t.exports=function _isNativeReflectConstruct(){if("undefined"==typeof Reflect||!r)return!1;if(r.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(r(Boolean,[],(function(){}))),!0}catch(t){return!1}},t.exports.default=t.exports,t.exports.__esModule=!0},95915:(t,o,i)=>{var r=i(41281),a=i(50093),l=i(75453);t.exports=function _iterableToArray(t){if(void 0!==r&&null!=t[a]||null!=t["@@iterator"])return l(t)},t.exports.default=t.exports,t.exports.__esModule=!0},79968:(t,o,i)=>{var r=i(41281),a=i(50093);t.exports=function _iterableToArrayLimit(t,o){var i=null==t?null:void 0!==r&&t[a]||t["@@iterator"];if(null!=i){var l,u,c=[],d=!0,m=!1;try{for(i=i.call(t);!(d=(l=i.next()).done)&&(c.push(l.value),!o||c.length!==o);d=!0);}catch(t){m=!0,u=t}finally{try{d||null==i.return||i.return()}finally{if(m)throw u}}return c}},t.exports.default=t.exports,t.exports.__esModule=!0},39198:t=>{t.exports=function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")},t.exports.default=t.exports,t.exports.__esModule=!0},84360:t=>{t.exports=function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")},t.exports.default=t.exports,t.exports.__esModule=!0},84899:(t,o,i)=>{var r=i(83452),a=i(95315),l=i(23587),u=i(63774),c=i(92937),d=i(67394),m=i(18042);function ownKeys(t,o){var i=r(t);if(a){var u=a(t);o&&(u=u.filter((function(o){return l(t,o).enumerable}))),i.push.apply(i,u)}return i}t.exports=function _objectSpread2(t){for(var o=1;o<arguments.length;o++){var i=null!=arguments[o]?arguments[o]:{};o%2?ownKeys(Object(i),!0).forEach((function(o){m(t,o,i[o])})):u?c(t,u(i)):ownKeys(Object(i)).forEach((function(o){d(t,o,l(i,o))}))}return t},t.exports.default=t.exports,t.exports.__esModule=!0},59771:(t,o,i)=>{var r=i(24596).default,a=i(38852);t.exports=function _possibleConstructorReturn(t,o){return!o||"object"!==r(o)&&"function"!=typeof o?a(t):o},t.exports.default=t.exports,t.exports.__esModule=!0},76870:(t,o,i)=>{var r=i(28274);function _setPrototypeOf(o,i){return t.exports=_setPrototypeOf=r||function _setPrototypeOf(t,o){return t.__proto__=o,t},t.exports.default=t.exports,t.exports.__esModule=!0,_setPrototypeOf(o,i)}t.exports=_setPrototypeOf,t.exports.default=t.exports,t.exports.__esModule=!0},47834:(t,o,i)=>{var r=i(86870),a=i(79968),l=i(24594),u=i(39198);t.exports=function _slicedToArray(t,o){return r(t)||a(t,o)||l(t,o)||u()},t.exports.default=t.exports,t.exports.__esModule=!0},49445:(t,o,i)=>{var r=i(44263);t.exports=function _superPropBase(t,o){for(;!Object.prototype.hasOwnProperty.call(t,o)&&null!==(t=r(t)););return t},t.exports.default=t.exports,t.exports.__esModule=!0},74846:(t,o,i)=>{var r=i(35693),a=i(95915),l=i(24594),u=i(84360);t.exports=function _toConsumableArray(t){return r(t)||a(t)||l(t)||u()},t.exports.default=t.exports,t.exports.__esModule=!0},24596:(t,o,i)=>{var r=i(41281),a=i(50093);function _typeof(o){return"function"==typeof r&&"symbol"==typeof a?(t.exports=_typeof=function _typeof(t){return typeof t},t.exports.default=t.exports,t.exports.__esModule=!0):(t.exports=_typeof=function _typeof(t){return t&&"function"==typeof r&&t.constructor===r&&t!==r.prototype?"symbol":typeof t},t.exports.default=t.exports,t.exports.__esModule=!0),_typeof(o)}t.exports=_typeof,t.exports.default=t.exports,t.exports.__esModule=!0},24594:(t,o,i)=>{var r=i(75453),a=i(72292);t.exports=function _unsupportedIterableToArray(t,o){if(t){if("string"==typeof t)return a(t,o);var i=Object.prototype.toString.call(t).slice(8,-1);return"Object"===i&&t.constructor&&(i=t.constructor.name),"Map"===i||"Set"===i?r(t):"Arguments"===i||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i)?a(t,o):void 0}},t.exports.default=t.exports,t.exports.__esModule=!0},57135:(t,o,i)=>{t.exports=i(86248)},53600:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67394),l=i(67971);a(o,"__esModule",{value:!0}),o.default=o.Close=void 0;var u=l(i(57135)),c=l(i(49117)),d=l(i(11959)),m=l(i(39041)),p=l(i(77371)),h=l(i(68537)),g=function(t){(0,p.default)(Close,t);var o,i=(0,h.default)(Close);function Close(){return(0,d.default)(this,Close),i.apply(this,arguments)}return(0,m.default)(Close,[{key:"validateArgs",value:function validateArgs(t){this.requireArgument("id",t)}},{key:"apply",value:(o=(0,c.default)(u.default.mark((function _callee(t){var o,i,r,a,l;return u.default.wrap((function _callee$(u){for(;;)switch(u.prev=u.next){case 0:if(o=t.id,i=t.mode,r=t.onClose,"closed"!==(a=elementor.documents.get(o)).editor.status){u.next=3;break}return u.abrupt("return",jQuery.Deferred().resolve());case 3:if(i||!a.editor.isChanged&&!a.isDraft()){u.next=7;break}return l=jQuery.Deferred(),this.getConfirmDialog(l).show(),u.abrupt("return",l.promise());case 7:u.t0=i,u.next="autosave"===u.t0?10:"save"===u.t0?13:"discard"===u.t0?16:19;break;case 10:return u.next=12,$e.run("document/save/auto");case 12:return u.abrupt("break",19);case 13:return u.next=15,$e.run("document/save/update");case 15:return u.abrupt("break",19);case 16:return u.next=18,$e.run("document/save/discard",{document:a});case 18:return u.abrupt("break",19);case 19:if($e.internal("editor/documents/unload",{document:a}),!r){u.next=23;break}return u.next=23,r(a);case 23:return u.abrupt("return",jQuery.Deferred().resolve());case 24:case"end":return u.stop()}}),_callee,this)}))),function apply(t){return o.apply(this,arguments)})},{key:"getConfirmDialog",value:function getConfirmDialog(t){var o=this;return this.confirmDialog||(this.confirmDialog=elementorCommon.dialogsManager.createWidget("confirm",{id:"elementor-document-save-on-close",headerMessage:r("Save Changes","elementor"),message:r("Would you like to save the changes you've made?","elementor"),position:{my:"center center",at:"center center"},strings:{confirm:r("Save","elementor"),cancel:r("Discard","elementor")},onHide:function onHide(){_.defer((function(){o.args.mode||t.reject("Close document has been canceled.")}))},onConfirm:function onConfirm(){o.args.mode="save",$e.run("editor/documents/close",o.args).then((function(){t.resolve()}))},onCancel:function onCancel(){o.args.mode="discard",$e.run("editor/documents/close",o.args).then((function(){t.resolve()}))}})),this.confirmDialog}}]),Close}(l(i(68689)).default);o.Close=g;var v=g;o.default=v},64714:(t,o,i)=>{"use strict";var r=i(67394);r(o,"__esModule",{value:!0}),r(o,"Close",{enumerable:!0,get:function get(){return a.Close}}),r(o,"Open",{enumerable:!0,get:function get(){return l.Open}}),r(o,"Preview",{enumerable:!0,get:function get(){return u.Preview}}),r(o,"Switch",{enumerable:!0,get:function get(){return c.Switch}});var a=i(53600),l=i(62148),u=i(67802),c=i(55636)},56358:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.AttachPreview=void 0,i(71954);var l=a(i(73220)),u=a(i(11959)),c=a(i(39041)),d=a(i(77371)),m=a(i(68537)),p=function(t){(0,d.default)(AttachPreview,t);var o=(0,m.default)(AttachPreview);function AttachPreview(){return(0,u.default)(this,AttachPreview),o.apply(this,arguments)}return(0,c.default)(AttachPreview,[{key:"apply",value:function apply(){var t=this,o=elementor.documents.getCurrent();return $e.data.get("globals/index").then((function(){return elementor.trigger("globals:loaded"),t.attachDocumentToPreview(o)})).then((function(){return elementor.toggleDocumentCssFiles(o,!1),elementor.onEditModeSwitched(),elementor.checkPageStatus(),elementor.trigger("document:loaded",o),$e.internal("panel/open-default",{refresh:!0})}))}},{key:"attachDocumentToPreview",value:function attachDocumentToPreview(t){return new l.default((function(o,i){return t?t.config.elements?(t.$element=elementor.$previewContents.find(".elementor-"+t.id),t.$element.length?(t.$element.addClass("elementor-edit-area elementor-edit-mode"),t.id!==elementor.config.initial_document.id&&elementor.$previewElementorEl.addClass("elementor-embedded-editor"),elementor.initElements(),elementor.initPreviewView(t),t.container.view=elementor.getPreviewView(),t.container.model.attributes.elements=elementor.elements,elementor.helpers.scrollToView(t.$element),t.$element.addClass("elementor-edit-area-active").removeClass("elementor-editor-preview"),void o()):(elementor.onPreviewElNotFound(),i())):o():i()}))}}]),AttachPreview}(a(i(23714)).default);o.AttachPreview=p;var h=p;o.default=h},11753:(t,o,i)=>{"use strict";var r=i(67394);r(o,"__esModule",{value:!0}),r(o,"AttachPreview",{enumerable:!0,get:function get(){return a.AttachPreview}}),r(o,"Load",{enumerable:!0,get:function get(){return l.Load}}),r(o,"Unload",{enumerable:!0,get:function get(){return u.Unload}});var a=i(56358),l=i(22384),u=i(17740)},22384:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.Load=void 0;var l=a(i(73220)),u=a(i(11959)),c=a(i(39041)),d=a(i(77371)),m=a(i(68537)),p=a(i(23714)),h=a(i(66429)),g=a(i(38984)),v=function(t){(0,d.default)(Load,t);var o=(0,m.default)(Load);function Load(){return(0,u.default)(this,Load),o.apply(this,arguments)}return(0,c.default)(Load,[{key:"validateArgs",value:function validateArgs(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.requireArgument("config",t)}},{key:"apply",value:function apply(t){var o=t.config;elementorCommon.config.experimentalFeatures.additional_custom_breakpoints&&(o.settings.controls=elementor.generateResponsiveControls(o.settings.controls)),elementor.config.document=o,elementor.setAjax(),elementor.addWidgetsCache(o.widgets),elementor.templates.init();var i=new h.default(o);elementor.documents.add(i),elementor.documents.setCurrent(i),elementor.settings.page=new elementor.settings.modules.page(o.settings),i.container=elementor.settings.page.getEditedView().getContainer(),i.container.document=i,elementor.heartbeat=new g.default(i);var r=elementor.config.document.version&&elementor.helpers.compareVersions(elementor.config.document.version,"2.5.0","<");return!elementor.config.user.introduction.flexbox&&r&&elementor.showFlexBoxAttentionDialog(),elementor.loaded?$e.data.get("globals/index").then((function(){return $e.internal("editor/documents/attach-preview")})):l.default.resolve(i)}}]),Load}(p.default);o.Load=v;var y=v;o.default=y},17740:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.Unload=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=a(i(23714)),p=a(i(66429)),h=function(t){(0,c.default)(Unload,t);var o=(0,d.default)(Unload);function Unload(){return(0,l.default)(this,Unload),o.apply(this,arguments)}return(0,u.default)(Unload,[{key:"validateArgs",value:function validateArgs(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.requireArgumentConstructor("document",p.default,t)}},{key:"apply",value:function apply(t){var o=t.document;o.id===elementor.config.document.id&&(elementor.elements=[],elementor.saver.stopAutoSave(o),elementor.channels.dataEditMode.trigger("switch","preview"),o.$element&&o.$element.removeClass("elementor-edit-area-active elementor-edit-mode").addClass("elementor-editor-preview"),elementorCommon.elements.$body.removeClass("elementor-editor-".concat(o.config.type)),elementor.settings.page.destroy(),elementor.heartbeat.destroy(),o.editor.status="closed",elementor.config.document={},elementor.documents.unsetCurrent(),elementor.trigger("document:unloaded",o))}}]),Unload}(m.default);o.Unload=h;var g=h;o.default=g},62148:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.Open=void 0,i(71954);var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(Open,t);var o=(0,d.default)(Open);function Open(){return(0,l.default)(this,Open),o.apply(this,arguments)}return(0,u.default)(Open,[{key:"validateArgs",value:function validateArgs(t){this.requireArgument("id",t)}},{key:"apply",value:function apply(t){var o=t.id,i=elementor.documents.getCurrent();return i&&o===i.id?jQuery.Deferred().resolve():(elementor.loaded&&elementor.$previewContents.find(".elementor-".concat(o)).addClass("loading"),elementor.documents.request(o).then((function(t){return elementorCommon.elements.$body.addClass("elementor-editor-".concat(t.type)),$e.internal("editor/documents/load",{config:t})})).always((function(){elementor.loaded&&elementor.$previewContents.find(".elementor-".concat(o)).removeClass("loading")})))}}]),Open}(a(i(68689)).default);o.Open=m;var p=m;o.default=p},67802:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.Preview=void 0;var l=a(i(57135)),u=a(i(49117)),c=a(i(11959)),d=a(i(39041)),m=a(i(77371)),p=a(i(68537)),h=function(t){(0,m.default)(Preview,t);var o,i=(0,p.default)(Preview);function Preview(){return(0,c.default)(this,Preview),i.apply(this,arguments)}return(0,d.default)(Preview,[{key:"validateArgs",value:function validateArgs(t){this.requireArgument("id",t)}},{key:"apply",value:(o=(0,u.default)(l.default.mark((function _callee(t){var o,i,r,a;return l.default.wrap((function _callee$(l){for(;;)switch(l.prev=l.next){case 0:if(o=t.id,i=$e.components.get("document/save"),r=i.footerSaver,!(a=elementor.documents.get(o)).editor.isChanged){l.next=4;break}return l.next=4,$e.run("document/save/auto",{force:!0});case 4:r.previewWindow=open(a.config.urls.wp_preview,"wp-preview-".concat(a.id));case 5:case"end":return l.stop()}}),_callee)}))),function apply(t){return o.apply(this,arguments)})}]),Preview}(a(i(68689)).default);o.Preview=h;var g=h;o.default=g},55636:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.Switch=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(Switch,t);var o=(0,d.default)(Switch);function Switch(){return(0,l.default)(this,Switch),o.apply(this,arguments)}return(0,u.default)(Switch,[{key:"validateArgs",value:function validateArgs(t){this.requireArgument("id",t)}},{key:"apply",value:function apply(t){var o=t.id,i=t.mode,r=t.onClose;return $e.run("editor/documents/close",{id:elementor.documents.getCurrentId(),mode:i,onClose:r}).then((function(){return $e.run("editor/documents/open",{id:o})}))}}]),Switch}(a(i(68689)).default);o.Switch=m;var p=m;o.default=p},48246:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67394),l=i(52369),u=i(67971);a(o,"__esModule",{value:!0}),o.default=void 0;var c=u(i(14176)),d=u(i(11959)),m=u(i(39041)),p=u(i(76700)),h=u(i(44263)),g=u(i(77371)),v=u(i(68537)),y=u(i(15591)),C=u(i(66429)),b=l(i(64714)),w=l(i(11753)),k=function(t){(0,g.default)(Component,t);var o=(0,v.default)(Component);function Component(){return(0,d.default)(this,Component),o.apply(this,arguments)}return(0,m.default)(Component,[{key:"__construct",value:function __construct(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,p.default)((0,h.default)(Component.prototype),"__construct",this).call(this,t),this.documents={},this.currentDocument=null,this.saveInitialDocumentToCache()}},{key:"getNamespace",value:function getNamespace(){return"editor/documents"}},{key:"defaultCommands",value:function defaultCommands(){return this.importCommands(b)}},{key:"defaultCommandsInternal",value:function defaultCommandsInternal(){return this.importCommands(w)}},{key:"add",value:function add(t){var o=t.id;return this.documents[o]=t,t}},{key:"addDocumentByConfig",value:function addDocumentByConfig(t){return this.add(new C.default(t))}},{key:"get",value:function get(t){return void 0!==this.documents[t]&&this.documents[t]}},{key:"getCurrent",value:function getCurrent(){return this.currentDocument}},{key:"getCurrentId",value:function getCurrentId(){return this.currentDocument.id}},{key:"setCurrent",value:function setCurrent(t){if(void 0===this.documents[t.id])throw Error("The document with id: '".concat(t.id,"' does not exist/loaded"));this.currentDocument&&(this.currentDocument.editor.status="closed"),this.currentDocument=this.documents[t.id],this.currentDocument.editor.status="open",elementorCommon.ajax.addRequestConstant("editor_post_id",t.id)}},{key:"isCurrent",value:function isCurrent(t){return(0,c.default)(t)===this.currentDocument.id}},{key:"unsetCurrent",value:function unsetCurrent(){this.currentDocument=null,elementorCommon.ajax.addRequestConstant("editor_post_id",null)}},{key:"request",value:function request(t){return elementorCommon.ajax.load(this.getRequestArgs(t),!0)}},{key:"invalidateCache",value:function invalidateCache(t){elementorCommon.ajax.invalidateCache(this.getRequestArgs(t))}},{key:"getRequestArgs",value:function getRequestArgs(t){return t=(0,c.default)(t),{action:"get_document_config",unique_id:"document-".concat(t),data:{id:t},success:function success(t){return t},error:function error(t){var o;_.isString(t)?o=t:t.statusText?(o=elementor.createAjaxErrorMessage(t),0===t.readyState&&(o+=" "+r("Cannot load editor","elementor"))):t[0]&&t[0].code&&(o=r("Server Error","elementor")+" "+t[0].code),alert(o)}}}},{key:"saveInitialDocumentToCache",value:function saveInitialDocumentToCache(){var t=elementor.config.initial_document;elementorCommon.ajax.addRequestCache(this.getRequestArgs(t.id),t)}}]),Component}(y.default);o.default=k},85422:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67971),l=a(i(18042)),u=a(i(83452));i(71954),i(99745);var c=i(12406);t.exports=Marionette.Behavior.extend({tagView:null,listenerAttached:!1,initialize:function initialize(){this.listenerAttached||(this.listenTo(this.view.options.container.settings,"change:external:__dynamic__",this.onAfterExternalChange),this.listenerAttached=!0)},renderTools:function renderTools(){var t=this;if(!(this.getOption("dynamicSettings").default||elementor.helpers.hasPro()&&!this.getOption("tags").length)){var o=jQuery(Marionette.Renderer.render("#tmpl-elementor-control-dynamic-switcher"));o.on("click",(function(o){return t.onDynamicSwitcherClick(o)})),this.$el.find(".elementor-control-dynamic-switcher-wrapper").append(o),this.ui.dynamicSwitcher=o,"color"===this.view.model.get("type")&&(this.view.colorPicker?this.moveDynamicSwitcherToColorPicker():setTimeout((function(){return t.moveDynamicSwitcherToColorPicker()}))),this.ui.dynamicSwitcher.tipsy({title:function title(){return this.getAttribute("data-tooltip")},gravity:"s"})}},moveDynamicSwitcherToColorPicker:function moveDynamicSwitcherToColorPicker(){var t=this.view.colorPicker.$pickerToolsContainer;this.ui.dynamicSwitcher.removeClass("elementor-control-unit-1").addClass("e-control-tool");var o=t.find(".elementor-control-element-color-picker");o.length?this.ui.dynamicSwitcher.insertBefore(o):t.append(this.ui.dynamicSwitcher)},toggleDynamicClass:function toggleDynamicClass(){this.$el.toggleClass("elementor-control-dynamic-value",this.isDynamicMode())},isDynamicMode:function isDynamicMode(){var t=this.view.container.settings.get("__dynamic__");return!(!t||!t[this.view.model.get("name")])},createTagsList:function createTagsList(){var t=_.groupBy(this.getOption("tags"),"group"),o=elementor.dynamicTags.getConfig("groups"),i=this.ui.tagsList=jQuery("<div>",{class:"elementor-tags-list"}),r=jQuery("<div>",{class:"elementor-tags-list__inner"});if(i.append(r),jQuery.each(o,(function(o){var i=t[o];if(i){var a=jQuery("<div>",{class:"elementor-tags-list__group-title"}).text(this.title);r.append(a),i.forEach((function(t){var o=jQuery("<div>",{class:"elementor-tags-list__item"});o.text(t.title).attr("data-tag-name",t.name),r.append(o)}))}})),!elementor.helpers.hasPro()&&(0,u.default)(t).length){var a=Marionette.Renderer.render("#tmpl-elementor-dynamic-tags-promo");r.append(a)}r.on("click",".elementor-tags-list__item",this.onTagsListItemClick.bind(this)),elementorCommon.elements.$body.append(i)},getTagsList:function getTagsList(){return this.ui.tagsList||this.createTagsList(),this.ui.tagsList},toggleTagsList:function toggleTagsList(){var t=this.getTagsList();if(t.is(":visible"))t.hide();else{var o=elementorCommon.config.isRTL?"left":"right";t.show().position({my:"".concat(o," top"),at:"".concat(o," bottom+5"),of:this.ui.dynamicSwitcher})}},setTagView:function setTagView(t,o,i){this.tagView&&this.tagView.destroy();var r=this.tagView=new c({id:t,name:o,settings:i,controlName:this.view.model.get("name"),dynamicSettings:this.getOption("dynamicSettings")}),a=this.view.options.container,l=a.controls[r.options.controlName].label;r.options.container=new elementorModules.editor.Container({type:"dynamic",id:t,model:r.model,settings:r.model,view:r,parent:a,label:a.label+" "+l,controls:r.model.options.controls,renderer:a}),r.render(),this.$el.find(".elementor-control-tag-area").after(r.el),this.listenTo(r,"remove",this.onTagViewRemove.bind(this))},setDefaultTagView:function setDefaultTagView(){var t=elementor.dynamicTags.tagTextToTagData(this.getDynamicValue());this.setTagView(t.id,t.name,t.settings)},tagViewToTagText:function tagViewToTagText(){var t=this.tagView;return elementor.dynamicTags.tagDataToTagText(t.getOption("id"),t.getOption("name"),t.model)},getDynamicValue:function getDynamicValue(){return this.view.container.dynamic.get(this.view.model.get("name"))},destroyTagView:function destroyTagView(){this.tagView&&(this.tagView.destroy(),this.tagView=null)},showPromotion:function showPromotion(){var t=r("Create more personalized and dynamic sites by populating data from various sources with dozens of dynamic tags to choose from.","elementor");elementor.promotion.showDialog({headerMessage:r("Dynamic Content","elementor"),message:t,top:"-10",element:this.ui.dynamicSwitcher,actionURL:elementor.config.dynamicPromotionURL})},onRender:function onRender(){this.$el.addClass("elementor-control-dynamic"),this.renderTools(),this.toggleDynamicClass(),this.isDynamicMode()&&this.setDefaultTagView()},onDynamicSwitcherClick:function onDynamicSwitcherClick(t){t.stopPropagation(),this.getOption("tags").length?this.toggleTagsList():this.showPromotion()},onTagsListItemClick:function onTagsListItemClick(t){var o=jQuery(t.currentTarget);this.setTagView(elementorCommon.helpers.getUniqueId(),o.data("tagName"),{}),this.view.getGlobalKey()&&this.view.triggerMethod("unset:global:value"),this.isDynamicMode()?$e.run("document/dynamic/settings",{container:this.view.options.container,settings:(0,l.default)({},this.view.model.get("name"),this.tagViewToTagText())}):$e.run("document/dynamic/enable",{container:this.view.options.container,settings:(0,l.default)({},this.view.model.get("name"),this.tagViewToTagText())}),this.toggleDynamicClass(),this.toggleTagsList(),this.tagView.getTagConfig().settings_required&&this.tagView.showSettingsPopup()},onTagViewRemove:function onTagViewRemove(){$e.run("document/dynamic/disable",{container:this.view.options.container,settings:(0,l.default)({},this.view.model.get("name"),this.tagViewToTagText())}),this.toggleDynamicClass()},onAfterExternalChange:function onAfterExternalChange(){this.destroyTagView(),this.isDynamicMode()&&this.setDefaultTagView(),this.toggleDynamicClass()},onDestroy:function onDestroy(){this.destroyTagView(),this.ui.tagsList&&this.ui.tagsList.remove()}})},41972:(t,o,i)=>{"use strict";var r=i(67971);i(84208),i(99745),i(64828);var a=r(i(32009)),l=r(i(83452));t.exports=elementorModules.Module.extend({CACHE_KEY_NOT_FOUND_ERROR:"Cache key not found",tags:{Base:i(52927)},cache:{},cacheRequests:{},cacheCallbacks:[],addCacheRequest:function addCacheRequest(t){this.cacheRequests[this.createCacheKey(t)]=!0},createCacheKey:function createCacheKey(t){return btoa(t.getOption("name"))+"-"+btoa(encodeURIComponent((0,a.default)(t.model)))},loadTagDataFromCache:function loadTagDataFromCache(t){var o=this.createCacheKey(t);if(void 0!==this.cache[o])return this.cache[o];this.cacheRequests[o]||this.addCacheRequest(t)},loadCacheRequests:function loadCacheRequests(){var t=this.cache,o=this.cacheRequests,i=this.cacheCallbacks;this.cacheRequests={},this.cacheCallbacks=[],elementorCommon.ajax.addRequest("render_tags",{data:{post_id:elementor.config.document.id,tags:(0,l.default)(o)},success:function success(o){jQuery.extend(t,o),i.forEach((function(t){t()}))}})},refreshCacheFromServer:function refreshCacheFromServer(t){this.cacheCallbacks.push(t),this.loadCacheRequests()},getConfig:function getConfig(t){return this.getItems(elementor.config.dynamicTags,t)},parseTagsText:function parseTagsText(t,o,i){var r=this;return"object"===o.returnType?r.parseTagText(t,o,i):t.replace(/\[elementor-tag[^\]]+]/g,(function(t){return r.parseTagText(t,o,i)}))},parseTagText:function parseTagText(t,o,i){var r=this.tagTextToTagData(t);return r?i(r.id,r.name,r.settings):"object"===o.returnType?{}:""},tagTextToTagData:function tagTextToTagData(t){var o=t.match(/id="(.*?(?="))"/),i=t.match(/name="(.*?(?="))"/),r=t.match(/settings="(.*?(?="]))/);return!!(o&&i&&r)&&{id:o[1],name:i[1],settings:JSON.parse(decodeURIComponent(r[1]))}},createTag:function createTag(t,o,i){var r=this.getConfig("tags."+o);if(r)return new(this.tags[o]||this.tags.Base)({id:t,name:o,model:new elementorModules.editor.elements.models.BaseSettings(i,{controls:r.controls})})},getTagDataContent:function getTagDataContent(t,o,i){var r=this.createTag(t,o,i);if(r)return r.getContent()},tagDataToTagText:function tagDataToTagText(t,o,i){return'[elementor-tag id="'+t+'" name="'+o+'" settings="'+(i=encodeURIComponent((0,a.default)(i&&i.toJSON({remove:["default"]})||{})))+'"]'},tagContainerToTagText:function tagContainerToTagText(t){return elementor.dynamicTags.tagDataToTagText(t.view.getOption("id"),t.view.getOption("name"),t.view.model)},cleanCache:function cleanCache(){this.cache={}},onInit:function onInit(){this.loadCacheRequests=_.debounce(this.loadCacheRequests,300)}})},8061:t=>{"use strict";t.exports=Marionette.ItemView.extend({className:"elementor-tag-controls-stack-empty",template:"#tmpl-elementor-tag-controls-stack-empty"})},52099:(t,o,i)=>{"use strict";var r=i(8061);t.exports=elementorModules.editor.views.ControlsStack.extend({activeTab:"content",template:_.noop,emptyView:r,isEmpty:function isEmpty(){return this.collection.length<2},childViewOptions:function childViewOptions(){return{container:this.options.container}},getNamespaceArray:function getNamespaceArray(){var t=elementor.getPanelView().getCurrentPageView(),o=t.getNamespaceArray();return o.push(t.activeSection),o.push(this.getOption("controlName")),o.push(this.getOption("name")),o},onRenderTemplate:function onRenderTemplate(){this.activateFirstSection()}})},12406:(t,o,i)=>{"use strict";var r=i(67971);i(99745);var a=r(i(35657)),l=i(52099);t.exports=Marionette.ItemView.extend({className:"elementor-dynamic-cover elementor-input-style",tagControlsStack:null,templateHelpers:function templateHelpers(){var t={};return this.model&&(t.controls=this.model.options.controls),t},ui:{remove:".elementor-dynamic-cover__remove"},events:function events(){var events={"click @ui.remove":"onRemoveClick"};return this.hasSettings()&&(events.click="onClick"),events},getTemplate:function getTemplate(){var t=this.getTagConfig(),o=Marionette.TemplateCache.get("#tmpl-elementor-control-dynamic-cover"),i=Marionette.Renderer.render(o,{hasSettings:this.hasSettings(),isRemovable:!this.getOption("dynamicSettings").default,title:t.title,content:t.panel_template});return Marionette.TemplateCache.prototype.compileTemplate(i.trim())},getTagConfig:function getTagConfig(){return elementor.dynamicTags.getConfig("tags."+this.getOption("name"))},initSettingsPopup:function initSettingsPopup(){var t={className:"elementor-tag-settings-popup",position:{my:"left top+5",at:"left bottom",of:this.$el,autoRefresh:!0},hide:{ignore:".select2-container"}},o=elementorCommon.dialogsManager.createWidget("buttons",t);this.getSettingsPopup=function(){return o}},hasSettings:function hasSettings(){return!!(0,a.default)(this.getTagConfig().controls).length},showSettingsPopup:function showSettingsPopup(){this.tagControlsStack||this.initTagControlsStack();var t=this.getSettingsPopup();t.isVisible()||t.show()},initTagControlsStack:function initTagControlsStack(){this.tagControlsStack=new l({model:this.model,controls:this.model.controls,name:this.options.name,controlName:this.options.controlName,container:this.options.container,el:this.getSettingsPopup().getElements("message")[0]}),this.tagControlsStack.render()},initModel:function initModel(){this.model=new elementorModules.editor.elements.models.BaseSettings(this.getOption("settings"),{controls:this.getTagConfig().controls})},initialize:function initialize(){this.initModel(),this.hasSettings()&&(this.initSettingsPopup(),this.listenTo(this.model,"change",this.render))},onClick:function onClick(){this.showSettingsPopup()},onRemoveClick:function onRemoveClick(t){t.stopPropagation(),this.destroy(),this.trigger("remove")},onDestroy:function onDestroy(){this.hasSettings()&&this.getSettingsPopup().destroy(),this.tagControlsStack&&this.tagControlsStack.destroy()}})},52927:t=>{"use strict";t.exports=Marionette.ItemView.extend({hasTemplate:!0,tagName:"span",className:function className(){return"elementor-tag"},getTemplate:function getTemplate(){return!!this.hasTemplate&&Marionette.TemplateCache.get("#tmpl-elementor-tag-"+this.getOption("name")+"-content")},initialize:function initialize(){try{this.getTemplate()}catch(t){this.hasTemplate=!1}},getConfig:function getConfig(t){var o=elementor.dynamicTags.getConfig("tags."+this.getOption("name"));return t?o[t]:o},getContent:function getContent(){var t,o=this.getConfig("content_type");if(!this.hasTemplate&&void 0===(t=elementor.dynamicTags.loadTagDataFromCache(this)))throw new Error(elementor.dynamicTags.CACHE_KEY_NOT_FOUND_ERROR);if("ui"===o){if(this.render(),this.hasTemplate)return this.el.outerHTML;this.getConfig("wrapped_tag")&&(t=jQuery(t).html()),this.$el.html(t)}return t},onRender:function onRender(){this.el.id="elementor-tag-"+this.getOption("id")}})},43940:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=a(i(18427)),p=a(i(26886)),h=function(t){(0,c.default)(Component,t);var o=(0,d.default)(Component);function Component(){return(0,l.default)(this,Component),o.apply(this,arguments)}return(0,u.default)(Component,[{key:"getNamespace",value:function getNamespace(){return"shortcuts"}},{key:"defaultShortcuts",value:function defaultShortcuts(){return{"":{keys:"ctrl+?, shift+?",exclude:["input"]}}}},{key:"getModalLayout",value:function getModalLayout(){return p.default}}]),Component}(m.default);o.default=h},10136:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=a(i(43940)),p=function(t){(0,c.default)(_default,t);var o=(0,d.default)(_default);function _default(){return(0,l.default)(this,_default),o.apply(this,arguments)}return(0,u.default)(_default,[{key:"onInit",value:function onInit(){$e.components.register(new m.default({manager:this}))}}]),_default}(elementorModules.Module);o.default=p},27734:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=a(i(73308)),p=function(t){(0,c.default)(_default,t);var o=(0,d.default)(_default);function _default(){return(0,l.default)(this,_default),o.apply(this,arguments)}return(0,u.default)(_default,[{key:"id",value:function id(){return"elementor-hotkeys"}},{key:"templateHelpers",value:function templateHelpers(){return{environment:m.default}}},{key:"getTemplate",value:function getTemplate(){return"#tmpl-elementor-hotkeys"}}]),_default}(Marionette.LayoutView);o.default=p},26886:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67394),l=i(67971);a(o,"__esModule",{value:!0}),o.default=void 0;var u=l(i(11959)),c=l(i(39041)),d=l(i(76700)),m=l(i(44263)),p=l(i(77371)),h=l(i(68537)),g=l(i(27734)),v=function(t){(0,p.default)(_default,t);var o=(0,h.default)(_default);function _default(){return(0,u.default)(this,_default),o.apply(this,arguments)}return(0,c.default)(_default,[{key:"getModalOptions",value:function getModalOptions(){return{id:"elementor-hotkeys__modal"}}},{key:"getLogoOptions",value:function getLogoOptions(){return{title:r("Keyboard Shortcuts","elementor")}}},{key:"initialize",value:function initialize(){for(var t,o=arguments.length,i=new Array(o),r=0;r<o;r++)i[r]=arguments[r];(t=(0,d.default)((0,m.default)(_default.prototype),"initialize",this)).call.apply(t,[this].concat(i)),this.showLogo(),this.showContentView()}},{key:"showContentView",value:function showContentView(){this.modalContent.show(new g.default)}}]),_default}(elementorModules.common.views.modal.Layout);o.default=v},4982:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var l=a(i(38923)),u=a(i(83452));i(99745),i(99236),i(84208);var c=a(i(24596)),d=a(i(11959)),m=a(i(39041)),p=a(i(18042)),h=function(){function _default(){var t=this;(0,d.default)(this,_default),(0,p.default)(this,"loaded",{}),(0,p.default)(this,"notifyCallback",null),(0,p.default)(this,"fetchIcons",(function(o){fetch(o.fetchJson,{mode:"cors"}).then((function(t){return t.json()})).then((function(i){return o.icons=i.icons,t.normalizeIconList(o)}))})),(0,p.default)(this,"runCallback",(function(o){return"function"!=typeof t.notifyCallback?o:t.notifyCallback(o)})),(0,p.default)(this,"initIconType",(function(o,i){t.notifyCallback=i;var r=elementor.iconManager.store;if(t.loaded[o.name])return o.icons=r.getIcons(o),t.runCallback(o);if(o.enqueue&&o.enqueue.forEach((function(t){elementor.helpers.enqueueEditorStylesheet(t)})),o.url&&elementor.helpers.enqueueEditorStylesheet(o.url),r.isValid(o)){var a=r.get(r.getKey(o));return t.normalizeIconList(a)}return o.icons&&o.icons.length?t.normalizeIconList(o):o.fetchJson?t.fetchIcons(o):void 0}))}return(0,m.default)(_default,[{key:"normalizeIconList",value:function normalizeIconList(t){var o,i={};jQuery.each(t.icons,(function(r,a){o=a,"object"===(0,c.default)(o)&&(o=(0,l.default)(o)[0][0]),o&&(i[o]={prefix:t.prefix,selector:t.prefix+o.trim(":"),name:elementorCommon.helpers.upperCaseWords(o).trim(":").split("-").join(" "),filter:o.trim(":"),displayPrefix:t.displayPrefix||t.prefix.replace("-","")})})),(0,u.default)(i).length&&(t.icons=i,this.loaded[t.name]=!0,elementor.iconManager.store.save(t),this.runCallback(t))}}]),_default}();o.default=h},26801:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0,i(99745);var l=a(i(11959)),u=a(i(39041)),c=function(){function Store(){(0,l.default)(this,Store)}return(0,u.default)(Store,[{key:"save",value:function save(t){elementorCommon.storage.set(Store.getKey(t),t)}},{key:"getIcons",value:function getIcons(t){var o=this.get(Store.getKey(t));return!(!o||!o.icons)&&o.icons}},{key:"get",value:function get(t){return elementorCommon.storage.get(t)}},{key:"isValid",value:function isValid(t){var o=this.get(Store.getKey(t));return!!o&&(o.ver===t.ver&&(o.icons&&o.icons.length))}}],[{key:"getKey",value:function getKey(t){var o=t.name?t.name:t;return"elementor_".concat(o,"_icons")}}]),Store}();o.default=c},60443:(t,o,i)=>{"use strict";var r=i(67394),a=i(52369),l=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0,i(67209);var u=l(i(11959)),c=l(i(39041)),d=l(i(38852)),m=l(i(77371)),p=l(i(68537)),h=l(i(18042)),g=l(i(23615)),v=a(i(63804)),y=function(t){(0,m.default)(LazyIconList,t);var o=(0,p.default)(LazyIconList);function LazyIconList(){var t;(0,u.default)(this,LazyIconList);for(var i=arguments.length,r=new Array(i),a=0;a<i;a++)r[a]=arguments[a];return t=o.call.apply(o,[this].concat(r)),(0,h.default)((0,d.default)(t),"state",{itemSize:{width:0,height:0},wrapperSize:{width:0,height:0},firstRowInView:0}),(0,h.default)((0,d.default)(t),"selectors",{item:".elementor-icons-manager__tab__item",wrapper:"elementor-icons-manager__tab__wrapper"}),(0,h.default)((0,d.default)(t),"attachScrollListener",(function(){var o=document.getElementById(t.selectors.wrapper);o&&o.addEventListener("scroll",t.handleScroll)})),(0,h.default)((0,d.default)(t),"maybeMeasureItem",(function(){if(!t.state.itemSize.width){var o=document.getElementById(t.selectors.wrapper),i=document.querySelector(t.selectors.item);if(i){var r={itemSize:{width:i.offsetWidth+20,height:i.offsetHeight+20},wrapperSize:{width:o.offsetWidth,height:o.clientHeight}};return t.setState(r,(function(){t.maybeScrollToSelected()}))}}})),(0,h.default)((0,d.default)(t),"maybeScrollToSelected",(function(){if(t.hasSelected()){var o=t.props.selectedIndex,i=t.state,r=i.wrapperSize,a=i.itemSize,l=Math.floor(r.width/a.width),u=(Math.ceil(o/l)-1)*a.height;setTimeout((function(){t.props.parentRef.current.scrollTo({top:u,left:0,behavior:"auto"})}),0)}})),(0,h.default)((0,d.default)(t),"handleScroll",(function(){t.clearDebounceScrollCallback(),t._debounce=setTimeout((function(){var o=document.getElementById(t.selectors.wrapper),i=t.state.itemSize;t.setState({firstRowInView:Math.floor(o.scrollTop/i.height)})}),10)})),(0,h.default)((0,d.default)(t),"render",(function(){var o=t.state,i=o.itemSize,r=o.wrapperSize,a=t.state.firstRowInView;if(!i.width)return t.renderFirstElementForMeasurement();var l=t.props.items,u=Math.floor(r.width/i.width),c=Math.ceil(l.length/u),d=Math.ceil(r.height/i.height)+4;d>c&&(d=c),a>c-d&&(a=c-d);var m=c-a-d,p=a*u,h=(a+d)*u-1,g=l.slice(p,h+1),y={height:"".concat(a*i.height,"px")},C={height:"".concat(m*i.height,"px")};return v.default.createElement(v.Fragment,null,v.default.createElement("div",{className:"elementor-icons-manager__tab__content__offset",style:y}),v.default.createElement("div",{id:"elementor-icons-manager__tab__content"},g),v.default.createElement("div",{className:"elementor-icons-manager__tab__content__tail",style:C}))})),t}return(0,c.default)(LazyIconList,[{key:"componentDidMount",value:function componentDidMount(){this.attachScrollListener(),this.maybeMeasureItem()}},{key:"componentWillUnmount",value:function componentWillUnmount(){this.clearDebounceScrollCallback();var t=document.getElementById(this.selectors.wrapper);t&&t.removeEventListener("scroll",this.handleScroll)}},{key:"clearDebounceScrollCallback",value:function clearDebounceScrollCallback(){clearTimeout(this._debounce)}},{key:"renderFirstElementForMeasurement",value:function renderFirstElementForMeasurement(){return v.default.createElement("div",{id:"elementor-icons-manager__tab__content"},this.props.items[0])}},{key:"hasSelected",value:function hasSelected(){return-1!==this.props.selectedIndex}}]),LazyIconList}(v.Component),C=y;o.default=C,y.propTypes={items:g.default.array,selectedIndex:g.default.number,parentRef:g.default.any}},8731:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67394),l=i(67971),u=i(52369);a(o,"__esModule",{value:!0}),o.renderIconManager=o.default=void 0;var c=u(i(63804));i(99745),i(64434),i(90286);var d=l(i(37959)),m=l(i(84899)),p=l(i(11959)),h=l(i(39041)),g=l(i(38852)),v=l(i(77371)),y=l(i(68537)),C=l(i(18042)),b=l(i(23615)),w=i(27196),k=l(i(71656)),S=l(i(51829)),x=function(t){(0,v.default)(IconsManager,t);var o=(0,y.default)(IconsManager);function IconsManager(){var t;(0,p.default)(this,IconsManager);for(var i=arguments.length,r=new Array(i),a=0;a<i;a++)r[a]=arguments[a];return t=o.call.apply(o,[this].concat(r)),(0,C.default)((0,g.default)(t),"scrollViewRef",(0,c.createRef)()),(0,C.default)((0,g.default)(t),"state",{activeTab:t.props.activeTab,selected:{library:"",value:""},iconTabs:elementor.config.icons.libraries,loaded:t.props.loaded,filter:""}),(0,C.default)((0,g.default)(t),"cache",{}),(0,C.default)((0,g.default)(t),"loadAllTabs",(function(){var o=t.state.loaded;t.props.icons.forEach((function(i){o[i.name]||-1<["all","recommended"].indexOf(i.name)||elementor.iconManager.library.initIconType((0,m.default)({},i),(function(r){t.cache[r.name]=r,o[i.name]=!0}))})),o.all=!0,o.recommended=!0,t.setState({loaded:o})})),(0,C.default)((0,g.default)(t),"getActiveTab",(function(){var o=t.state.activeTab,i=t.state.loaded,r=t.props.icons;if(o||t.props.activeTab&&(o=t.props.activeTab),"GoPro"===o)return o;if(!i[o])return!1;var a=(0,m.default)({},r.filter((function(t){return t.name===o}))[0]);return i[o]?(0,m.default)({},a):"all"!==a.name||i.all?(elementor.iconManager.library.initIconType((0,m.default)({},a),(function(o){t.cache[o.name]=o,t.updateLoaded(o.name)})),!1):t.loadAllTabs()})),(0,C.default)((0,g.default)(t),"getIconTabsLinks",(function(){var o=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return t.props.icons.map((function(i){if(o^t.isNativeTab(i))return"";var r=i.name===t.state.activeTab,a="elementor-icons-manager__tab-link";return r&&(a+=" elementor-active"),c.default.createElement("div",{className:a,key:i.name,onClick:function onClick(){r||t.setState({activeTab:i.name})}},c.default.createElement("i",{className:i.labelIcon}),i.label)}))})),(0,C.default)((0,g.default)(t),"getActiveTabIcons",(function(o){if(o.name)return t.getActiveTabIcons(o.name);if(t.cache[o])return t.cache[o].icons;if("recommended"===o)return t.state.iconTabs[0].icons;if("all"===o)return t.getAllIcons();if(!t.state.loaded[o]){var i=t.props.icons.filter((function(t){return o===t.name}));return elementor.iconManager.library.initIconType((0,m.default)({},i[0]),(function(o){t.cache[o.name]=o,t.updateLoaded(o.name)}))}return elementor.iconManager.store.getIcons(o)})),(0,C.default)((0,g.default)(t),"getAllIcons",(function(){if(t.cache.all)return t.cache.all.icons;var o={};return t.props.icons.forEach((function(i){"all"!==i.name&&"recommended"!==i.name&&(o[i.name]=t.getActiveTabIcons(i.name))})),t.cache.all={icons:o},o})),(0,C.default)((0,g.default)(t),"handleSearch",(function(o){var i=o.target.value;if(i&&""!==i){if(i=i.toLocaleLowerCase(),t.state.filter===i)return}else i="";t.setState({filter:i})})),(0,C.default)((0,g.default)(t),"setSelected",(function(o){elementor.iconManager.setSettings("selectedIcon",o),t.setState({selected:o})})),(0,C.default)((0,g.default)(t),"getSelected",(function(){var o=t.state.selected;return""===o.value&&t.props.selected&&t.props.selected.value&&(o={value:t.props.selected.value,library:t.props.selected.library}),o})),(0,C.default)((0,g.default)(t),"render",(function(){var o=t.getActiveTab(),i=o.name?o.name:o,r=t.props.showSearch,a=void 0===r||r,l=t.state.filter,u=t.getSelected();if("GoPro"!==o){if(!i||!t.state.loaded[i])return"Loading";o&&(o.icons=t.getActiveTabIcons(o))}return c.default.createElement(c.Fragment,null,c.default.createElement("div",{id:"elementor-icons-manager__sidebar",className:"elementor-templates-modal__sidebar"},c.default.createElement("div",{id:"elementor-icons-manager__tab-links"},t.getIconTabsLinks(),t.getUploadCustomButton(),t.getIconTabsLinks(!1))),c.default.createElement("div",{id:"elementor-icons-manager__main",className:"elementor-templates-modal__content"},"GoPro"===i?c.default.createElement(S.default,null):c.default.createElement(c.Fragment,null,a?t.getSearchHTML():"",c.default.createElement("div",{id:"elementor-icons-manager__tab__wrapper",ref:t.scrollViewRef},c.default.createElement("div",{id:"elementor-icons-manager__tab__title"},o.label),c.default.createElement("div",{id:"elementor-icons-manager__tab__content_wrapper"},c.default.createElement("input",{type:"hidden",name:"icon_value",id:"icon_value",value:u.value}),c.default.createElement("input",{type:"hidden",name:"icon_type",id:"icon_type",value:u.library}),t.state.loaded[o.name]?c.default.createElement(k.default,(0,d.default)({setSelected:t.setSelected,selected:u,filter:l,key:o.name,parentRef:t.scrollViewRef},o)):"Loading")))))})),t}return(0,h.default)(IconsManager,[{key:"updateLoaded",value:function updateLoaded(t){var o=this.state.loaded;o[t]=!0,this.setState({loaded:o})}},{key:"isNativeTab",value:function isNativeTab(t){return("all"===t.name||"recommended"===t.name||"fa-"===t.name.substr(0,3))&&t.native}},{key:"getUploadCustomButton",value:function getUploadCustomButton(){var t=this,o=function onClick(){"GoPro"!==t.state.activeTab&&t.setState({activeTab:"GoPro"})};return this.props.customIconsURL&&(o=function onClick(){window.open(t.props.customIconsURL,"_blank")}),c.default.createElement("div",{id:"elementor-icons-manager__upload"},c.default.createElement("div",{id:"elementor-icons-manager__upload__title"},r("My Libraries","elementor")),c.default.createElement("button",{id:"elementor-icons-manager__upload__button",className:"elementor-button elementor-button-default",onClick:o},r("Upload","elementor")))}},{key:"getSearchHTML",value:function getSearchHTML(){return c.default.createElement("div",{id:"elementor-icons-manager__search"},c.default.createElement("input",{placeholder:"Filter by name...",onInput:this.handleSearch}),c.default.createElement("i",{className:"eicon-search"}))}}]),IconsManager}(c.Component),T=x;o.default=T;o.renderIconManager=function renderIconManager(t){var o=document.querySelector("#elementor-icons-manager-modal .dialog-content");return(0,w.render)(c.default.createElement(x,(0,d.default)({},t,{containerElement:o})),o)},x.propTypes={activeTab:b.default.any,customIconsURL:b.default.string,icons:b.default.any,loaded:b.default.any,modalView:b.default.any,recommended:b.default.oneOfType([b.default.bool,b.default.object]),selected:b.default.any,showSearch:b.default.bool}},48478:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971),l=i(52369);r(o,"__esModule",{value:!0}),o.default=void 0;var u=l(i(63804));i(64434),i(99745);var c=a(i(11959)),d=a(i(38852)),m=a(i(77371)),p=a(i(68537)),h=a(i(18042)),g=a(i(23615)),v=function(t){(0,m.default)(Icon,t);var o=(0,p.default)(Icon);function Icon(){var t;(0,c.default)(this,Icon);for(var i=arguments.length,r=new Array(i),a=0;a<i;a++)r[a]=arguments[a];return t=o.call.apply(o,[this].concat(r)),(0,h.default)((0,d.default)(t),"setSelected",(function(){t.props.setSelectedHandler({value:t.props.data.displayPrefix+" "+t.props.data.selector,library:t.props.library})})),(0,h.default)((0,d.default)(t),"render",(function(){return u.default.createElement("div",{className:t.props.containerClass,key:t.props.keyID,onClick:t.setSelected,filter:t.props.data.filter},u.default.createElement("div",{className:"elementor-icons-manager__tab__item__content"},u.default.createElement("i",{className:"elementor-icons-manager__tab__item__icon "+t.props.className}),u.default.createElement("div",{className:"elementor-icons-manager__tab__item__name",title:t.props.data.name},t.props.data.name)))})),t}return Icon}(u.Component);o.default=v,v.propTypes={className:g.default.string,containerClass:g.default.string,data:g.default.object,keyID:g.default.string,library:g.default.string,selector:g.default.string,setSelectedHandler:g.default.func}},51829:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67394),l=i(67971),u=i(52369);a(o,"__esModule",{value:!0}),o.default=void 0;var c=u(i(63804)),d=l(i(11959)),m=l(i(38852)),p=l(i(77371)),h=l(i(68537)),g=l(i(18042)),v=function(t){(0,p.default)(IconsGoPro,t);var o=(0,h.default)(IconsGoPro);function IconsGoPro(){var t;(0,d.default)(this,IconsGoPro);for(var i=arguments.length,a=new Array(i),l=0;l<i;l++)a[l]=arguments[l];return t=o.call.apply(o,[this].concat(a)),(0,g.default)((0,m.default)(t),"render",(function(){return c.default.createElement("div",{id:"elementor-icons-manager__promotion"},c.default.createElement("i",{id:"elementor-icons-manager__promotion__icon",className:"eicon-nerd"}),c.default.createElement("div",{id:"elementor-icons-manager__promotion__text"},r("Become a Pro user to upload unlimited font icon folders to your website.","elementor")),c.default.createElement("a",{href:elementor.config.icons.goProURL,id:"elementor-icons-manager__promotion__link",className:"elementor-button elementor-button-default elementor-button-go-pro",target:"_blank",rel:"noopener noreferrer"},r("Go Pro","elementor")))})),t}return IconsGoPro}(c.Component);o.default=v},71656:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971),l=i(52369);r(o,"__esModule",{value:!0}),o.default=void 0;var u=l(i(63804));i(64434),i(99745),i(76139),i(12897),i(93085),i(3777),i(38081),i(90286);var c=a(i(38923)),d=a(i(35657)),m=a(i(47834)),p=a(i(74758)),h=a(i(74846)),g=a(i(11959)),v=a(i(39041)),y=a(i(38852)),C=a(i(77371)),b=a(i(68537)),w=a(i(18042)),k=a(i(23615)),S=a(i(60443)),x=a(i(48478)),T=function(t){(0,C.default)(Tab,t);var o=(0,b.default)(Tab);function Tab(){var t;(0,g.default)(this,Tab);for(var i=arguments.length,r=new Array(i),a=0;a<i;a++)r[a]=arguments[a];return t=o.call.apply(o,[this].concat(r)),(0,w.default)((0,y.default)(t),"componentDidMount",(function(){t.props.selected&&t.props.selected.value&&setTimeout((function(){var t=document.querySelector(".elementor-selected");t&&t.scrollIntoView(!1)}),0)})),(0,w.default)((0,y.default)(t),"handleFullIconList",(function(){var o=[];return(0,c.default)(t.props.icons).forEach((function(i){"recommended"!==i[0]&&(o=[].concat((0,h.default)(o),(0,h.default)(t.getIconsOfType(i[0],i[1]))))})),o.sort((function(t,o){return t.filter===o.filter?0:+(t.filter>o.filter)||-1}))})),(0,w.default)((0,y.default)(t),"getLibrary",(function(t){return elementor.config.icons.libraries.filter((function(o){return t===o.name}))})),(0,w.default)((0,y.default)(t),"handleRecommendedList",(function(){var o=[];return(0,c.default)(t.props.icons).forEach((function(i){var r=t.getLibrary(i[0])[0].icons,a={};i[1].forEach((function(t){r[t]&&(a[t]=r[t])})),o=[].concat((0,h.default)(o),(0,h.default)(t.getIconsOfType(i[0],a)))})),o})),(0,w.default)((0,y.default)(t),"getIconsComponentList",(function(){var o=[],i=t.props,r=i.name,a=i.icons,l=i.filter;switch(r){case"all":o=t.handleFullIconList();break;case"recommended":o=t.handleRecommendedList();break;default:o=t.getIconsOfType(r,a)}return l&&(o=(0,d.default)(o).filter((function(t){return t.props.data.name.toLowerCase().indexOf(l)>-1}))),o})),(0,w.default)((0,y.default)(t),"render",(function(){var o,i=t.getIconsComponentList(),r=-1,a=(0,p.default)(i.entries());try{for(a.s();!(o=a.n()).done;){var l=(0,m.default)(o.value,2),c=l[0];if(l[1].props.containerClass.includes("elementor-selected")){r=c;break}}}catch(t){a.e(t)}finally{a.f()}return u.default.createElement(S.default,{selectedIndex:r,items:i,parentRef:t.props.parentRef})})),t}return(0,v.default)(Tab,[{key:"getIconsOfType",value:function getIconsOfType(t,o){var i=this,r=this.props,a=r.selected,l=r.filter;return(0,c.default)(o).map((function(o){var r=o[1],c=o[0],d=r.displayPrefix+" "+r.selector,m="elementor-icons-manager__tab__item";a.value===d&&(m+=" elementor-selected");var p=m+t+"-"+c+l;return u.default.createElement(x.default,{key:p,library:t,keyID:c,containerClass:m,className:d,setSelectedHandler:i.props.setSelected,data:r})}))}}]),Tab}(u.Component);T.propTypes={data:k.default.any,filter:k.default.any,icons:k.default.object,name:k.default.string,selected:k.default.object,setSelected:k.default.func,parentRef:k.default.any};var M=T;o.default=M},56903:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67394),l=i(67971);a(o,"__esModule",{value:!0}),o.default=void 0;var u=l(i(83452));i(99745),i(64434),i(84208);var c=l(i(11959)),d=l(i(39041)),m=l(i(77371)),p=l(i(68537)),h=l(i(41864)),g=i(8731),v=l(i(4982)),y=l(i(26801)),C=i(27196),b=function(t){(0,m.default)(_default,t);var o=(0,p.default)(_default);function _default(){return(0,c.default)(this,_default),o.apply(this,arguments)}return(0,d.default)(_default,[{key:"onInit",value:function onInit(){this.library=new v.default,this.store=new y.default,elementor.helpers.fetchFa4ToFa5Mapping(),this.cache={}}},{key:"getLayout",value:function getLayout(){var t=this;if(!this.layout){this.layout=new h.default;var o=this.layout.getModal();o.addButton({name:"insert_icon",text:r("Insert","elementor"),classes:"elementor-button elementor-button-success",callback:function callback(){t.updateControlValue(),t.unMountIconManager()}}),o.on("show",this.onPickerShow.bind(this)).on("hide",this.unMountIconManager)}return this.layout}},{key:"getDefaultSettings",value:function getDefaultSettings(){return{selectedIcon:{}}}},{key:"unMountIconManager",value:function unMountIconManager(){var t=document.querySelector("#elementor-icons-manager-modal .dialog-content");(0,C.unmountComponentAtNode)(t)}},{key:"loadIconLibraries",value:function loadIconLibraries(){this.cache.loaded||(elementor.config.icons.libraries.forEach((function(t){"all"!==t.name&&elementor.iconManager.library.initIconType(t)})),this.cache.loaded=!0)}},{key:"onPickerShow",value:function onPickerShow(){var t=this.getSettings("controlView"),o={GoPro:!0},i={recommended:t.model.get("recommended")||!1},r=t.getControlValue(),a=elementor.config.icons.libraries;if(r.library&&r.value||(r={value:"",library:""}),i.selected=r,this.setSettings("selectedIcon",r),i.recommended){var l=!1;a.forEach((function(t,o){"recommended"===t.name&&(l=!0,a[o].icons=i.recommended)})),l||a.unshift({name:"recommended",label:"Recommended",icons:i.recommended,labelIcon:"eicon-star-o",native:!0})}else a=a.filter((function(t){return"recommended"!==t.name}));a.forEach((function(t,i){-1===["all","recommended"].indexOf(t.name)&&elementor.iconManager.library.initIconType(t,(function(t){a[i]=t})),o[t.name]=!0})),i.loaded=o,i.icons=a;var c=r.library||a[0].name;if("svg"===r.library&&(c=a[0].name),(0,u.default)(a).some((function(t){return t===c}))||(c=a[0].name),i.recommended&&""!==r.library&&""!==r.value&&i.recommended.hasOwnProperty(r.library)){var d=a.filter((function(t){return r.library===t.name})),m=r.value.replace(d[0].displayPrefix+" "+d[0].prefix,"");i.recommended[r.library].some((function(t){return-1<t.indexOf(m)}))&&(c=a[0].name)}return i.customIconsURL=elementor.config.customIconsURL,i.activeTab=c,(0,g.renderIconManager)(i)}},{key:"updateControlValue",value:function updateControlValue(){var t=this.getSettings();t.controlView.setValue(t.selectedIcon),t.controlView.applySavedValue()}},{key:"show",value:function show(t){this.setSettings("controlView",t.view),this.getLayout().showModal(t)}}]),_default}(elementorModules.Module);o.default=b},41864:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67394),l=i(67971);a(o,"__esModule",{value:!0}),o.default=void 0;var u=l(i(11959)),c=l(i(39041)),d=l(i(76700)),m=l(i(44263)),p=l(i(77371)),h=l(i(68537)),g=function(t){(0,p.default)(_default,t);var o=(0,h.default)(_default);function _default(){return(0,u.default)(this,_default),o.apply(this,arguments)}return(0,c.default)(_default,[{key:"getModalOptions",value:function getModalOptions(){return{id:"elementor-icons-manager-modal"}}},{key:"getLogoOptions",value:function getLogoOptions(){return{title:r("Icon Library","elementor")}}},{key:"initialize",value:function initialize(){for(var t,o=arguments.length,i=new Array(o),r=0;r<o;r++)i[r]=arguments[r];(t=(0,d.default)((0,m.default)(_default.prototype),"initialize",this)).call.apply(t,[this].concat(i)),this.showLogo()}}]),_default}(l(i(56525)).default);o.default=g},66915:(t,o,i)=>{"use strict";var r=i(99292);t.exports=elementorModules.ViewModule.extend({model:null,hasChange:!1,changeCallbacks:{},addChangeCallback:function addChangeCallback(t,o){this.changeCallbacks[t]=o},bindEvents:function bindEvents(){elementor.on("document:loaded",this.onElementorDocumentLoaded),this.model.on("change",this.onModelChange)},unbindEvents:function unbindEvents(){elementor.off("document:loaded",this.onElementorDocumentLoaded)},addPanelPage:function addPanelPage(){var t=this.getSettings("name");elementor.getPanelView().addPage(t+"_settings",{view:elementor.settings.panelPages[t]||elementor.settings.panelPages.base,title:this.getSettings("panelPage.title"),options:{editedView:this.getEditedView(),model:this.model,controls:this.model.controls,name:t}})},getContainerId:function getContainerId(){return this.getSettings("name")+"_settings"},getEditedView:function getEditedView(){var t=this.getContainerId(),o=new Backbone.Model({id:t,elType:t,settings:this.model}),i=new elementorModules.editor.Container({type:t,id:o.id,model:o,settings:o.get("settings"),view:!1,label:this.getSettings("panelPage").title,controls:this.model.controls,document:this.getDocument(),renderer:!1});return{getContainer:function getContainer(){return i},getEditModel:function getEditModel(){return o},model:o}},getDocument:function getDocument(){return!1},updateStylesheet:function updateStylesheet(t){var o=this.getControlsCSS();t||o.stylesheet.empty(),this.model.handleRepeaterData(this.model.attributes),o.addStyleRules(this.model.getStyleControls(),this.model.attributes,this.model.controls,[/{{WRAPPER}}/g],[this.getSettings("cssWrapperSelector")]),o.addStyleToDocument({at:"before",of:"#elementor-style-e-global-style"})},initModel:function initModel(){this.model=new elementorModules.editor.elements.models.BaseSettings(this.getSettings("settings"),{controls:this.getSettings("controls")})},getStyleId:function getStyleId(){return this.getSettings("name")},initControlsCSSParser:function initControlsCSSParser(){var t;this.destroyControlsCSS=function(){t.removeStyleFromDocument()},this.getControlsCSS=function(){return t||(t=new r({id:this.getStyleId(),settingsModel:this.model,context:this.getEditedView()})),t}},getDataToSave:function getDataToSave(t){return t},save:function save(t){var o=this;if(o.hasChange){var i=this.model.toJSON({remove:["default"]}),r=this.getDataToSave({data:i});elementorCommonConfig.isTesting||NProgress.start(),elementorCommon.ajax.addRequest("save_"+this.getSettings("name")+"_settings",{data:r,success:function success(){elementorCommonConfig.isTesting||NProgress.done(),o.setSettings("settings",i),o.hasChange=!1,t&&t.apply(o,arguments)},error:function error(){alert("An error occurred")}})}},onInit:function onInit(){this.initModel(),this.initControlsCSSParser(),this.addPanelMenuItem(),this.debounceSave=_.debounce(this.save,3e3),elementorModules.ViewModule.prototype.onInit.apply(this,arguments)},addPanelMenuItem:function addPanelMenuItem(){var t=this.getSettings("panelPage.menu");if(t){var o="panel/"+this.getSettings("name")+"-settings",i={icon:t.icon,title:this.getSettings("panelPage.title"),type:"page",pageName:this.getSettings("name")+"_settings",callback:function callback(){return $e.route("".concat(o,"/settings"))}};$e.bc.ensureTab(o,"settings",i.pageName),elementor.modules.layouts.panel.pages.menu.Menu.addItem(i,"settings",t.beforeItem)}},onModelChange:function onModelChange(t){var o=this;o.hasChange=!0,this.getControlsCSS().stylesheet.empty(),_.each(t.changed,(function(t,i){o.changeCallbacks[i]&&o.changeCallbacks[i].call(o,t)})),o.updateStylesheet(!0),o.debounceSave()},onElementorDocumentLoaded:function onElementorDocumentLoaded(){this.updateStylesheet(),this.addPanelPage()},destroy:function destroy(){this.unbindEvents(),this.model.destroy()}})},12767:t=>{"use strict";t.exports=elementorModules.editor.views.ControlsStack.extend({id:function id(){return"elementor-panel-"+this.getOption("name")+"-settings"},getTemplate:function getTemplate(){return"#tmpl-elementor-panel-"+this.getOption("name")+"-settings"},childViewContainer:function childViewContainer(){return"#elementor-panel-"+this.getOption("name")+"-settings-controls"},childViewOptions:function childViewOptions(){return{container:this.getOption("editedView").getContainer()}}})},36551:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(_default,t);var o=(0,d.default)(_default);function _default(){var t;(0,l.default)(this,_default);for(var i=arguments.length,r=new Array(i),a=0;a<i;a++)r[a]=arguments[a];return(t=o.call.apply(o,[this].concat(r))).changeCallbacks={ui_theme:t.onUIThemeChanged,panel_width:t.onPanelWidthChanged,edit_buttons:t.onEditButtonsChanged,show_hidden_elements:t.onShowHiddenElementsChange},t}return(0,u.default)(_default,[{key:"getDefaultSettings",value:function getDefaultSettings(){return{darkModeLinkID:"elementor-editor-dark-mode-css"}}},{key:"createDarkModeStylesheetLink",value:function createDarkModeStylesheetLink(){var t=this.getSettings("darkModeLinkID"),o=jQuery("#"+t);o.length||(o=jQuery("<link>",{id:t,rel:"stylesheet",href:elementor.config.ui.darkModeStylesheetURL})),this.$link=o}},{key:"getDarkModeStylesheetLink",value:function getDarkModeStylesheetLink(){return this.$link||this.createDarkModeStylesheetLink(),this.$link}},{key:"onUIThemeChanged",value:function onUIThemeChanged(t){var o=this.getDarkModeStylesheetLink();"light"!==t?o.attr("media","auto"===t?"(prefers-color-scheme: dark)":"").appendTo(elementorCommon.elements.$body):o.remove()}},{key:"onPanelWidthChanged",value:function onPanelWidthChanged(t){elementor.panel.saveSize({width:t.size+t.unit}),elementor.panel.setSize()}},{key:"onEditButtonsChanged",value:function onEditButtonsChanged(){setTimeout((function(){return elementor.getPreviewView()._renderChildren()}),300)}},{key:"onShowHiddenElementsChange",value:function onShowHiddenElementsChange(){elementorFrontend.elements.$body.toggleClass("e-preview--show-hidden-elements")}}]),_default}(a(i(66915)).default);o.default=m},34991:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67394),l=i(67971);a(o,"__esModule",{value:!0}),o.default=void 0;var u=l(i(11959)),c=l(i(39041)),d=l(i(77371)),m=l(i(68537)),p=function(t){(0,d.default)(Component,t);var o=(0,m.default)(Component);function Component(){return(0,u.default)(this,Component),o.apply(this,arguments)}return(0,c.default)(Component,[{key:"getNamespace",value:function getNamespace(){return"panel/page-settings"}},{key:"defaultTabs",value:function defaultTabs(){return{settings:{title:r("Settings","elementor")},style:{title:r("Style","elementor")},advanced:{title:r("Advanced","elementor")}}}},{key:"renderTab",value:function renderTab(t){elementor.getPanelView().setPage("page_settings").activateTab(t)}},{key:"getTabsWrapperSelector",value:function getTabsWrapperSelector(){return".elementor-panel-navigation"}}]),Component}(l(i(15591)).default);o.default=p},40427:(t,o,i)=>{"use strict";var r=i(67971)(i(34991)),a=i(66915);t.exports=a.extend({getStyleId:function getStyleId(){return this.getSettings("name")+"-"+elementor.documents.getCurrent().id},onInit:function onInit(){a.prototype.onInit.apply(this),$e.components.register(new r.default({manager:this}))},save:function save(){},getDataToSave:function getDataToSave(t){return t.id=elementor.config.document.id,t},getEditedView:function getEditedView(){var t=this;if(this.editedView)return this.editedView;var o=this.getContainerId(),i=new Backbone.Model({id:o,elType:o,settings:this.model,elements:elementor.elements}),r=new elementorModules.editor.Container({type:o,id:i.id,model:i,settings:i.get("settings"),label:elementor.config.document.panel.title,controls:this.model.controls,children:elementor.elements,renderer:{view:{lookup:function lookup(){return r},renderOnChange:function renderOnChange(){return t.updateStylesheet()},renderUI:function renderUI(){return t.updateStylesheet()}}}});return this.editedView={getContainer:function getContainer(){return r},getEditModel:function getEditModel(){return i},model:i},this.editedView},getContainerId:function getContainerId(){return"document"}})},50235:(t,o,i)=>{"use strict";var r=i(67971)(i(36551));t.exports=elementorModules.Module.extend({modules:{base:i(66915),page:i(40427),editorPreferences:r.default},panelPages:{base:i(12767)},onInit:function onInit(){this.initSettings()},initSettings:function initSettings(){var t=this;_.each(elementor.config.settings,(function(o,i){var r=t.modules[i]||t.modules.base;t[i]=new r(o)}))}})},56284:t=>{"use strict";var o;o=Marionette.Behavior.extend({ui:{insertButton:".elementor-template-library-template-insert"},events:{"click @ui.insertButton":"onInsertButtonClick"},onInsertButtonClick:function onInsertButtonClick(){var t={model:this.view.model};"remote"!==t.model.get("source")||elementor.config.library_connect.is_connected?$e.run("library/insert-template",t):$e.route("library/connect",t)}}),t.exports=o},24599:(t,o,i)=>{"use strict";var r,a=i(384);r=Backbone.Collection.extend({model:a}),t.exports=r},57466:(t,o,i)=>{"use strict";var r=i(67394);r(o,"__esModule",{value:!0}),r(o,"InsertTemplate",{enumerable:!0,get:function get(){return a.InsertTemplate}}),r(o,"Open",{enumerable:!0,get:function get(){return l.Open}});var a=i(36702),l=i(83022)},36702:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.InsertTemplate=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(InsertTemplate,t);var o=(0,d.default)(InsertTemplate);function InsertTemplate(){return(0,l.default)(this,InsertTemplate),o.apply(this,arguments)}return(0,u.default)(InsertTemplate,[{key:"apply",value:function apply(t){return this.component.insertTemplate(t)}}]),InsertTemplate}(a(i(68689)).default);o.InsertTemplate=m;var p=m;o.default=p},83022:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.Open=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(Open,t);var o=(0,d.default)(Open);function Open(){return(0,l.default)(this,Open),o.apply(this,arguments)}return(0,u.default)(Open,[{key:"apply",value:function apply(t){return this.component.show(t)}}]),Open}(a(i(68689)).default);o.Open=m;var p=m;o.default=p},61830:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67394),l=i(52369),u=i(67971);a(o,"__esModule",{value:!0}),o.default=void 0,i(64434);var c=u(i(84899)),d=u(i(11959)),m=u(i(39041)),p=u(i(76700)),h=u(i(44263)),g=u(i(77371)),v=u(i(68537)),y=u(i(18427)),C=l(i(57466)),b=i(7329),w=function(t){(0,g.default)(Component,t);var o=(0,v.default)(Component);function Component(){return(0,d.default)(this,Component),o.apply(this,arguments)}return(0,m.default)(Component,[{key:"__construct",value:function __construct(t){(0,p.default)((0,h.default)(Component.prototype),"__construct",this).call(this,t),elementor.on("document:loaded",this.onDocumentLoaded.bind(this))}},{key:"getNamespace",value:function getNamespace(){return"library"}},{key:"defaultTabs",value:function defaultTabs(){return{"templates/blocks":{title:r("Blocks","elementor"),getFilter:function getFilter(){return{source:"remote",type:"block",subtype:elementor.config.document.remoteLibrary.category}}},"templates/pages":{title:r("Pages","elementor"),filter:{source:"remote",type:"page"}},"templates/my-templates":{title:r("My Templates","elementor"),filter:{source:"local"}}}}},{key:"defaultRoutes",value:function defaultRoutes(){var t=this;return{import:function _import(){t.manager.layout.showImportView()},"save-template":function saveTemplate(o){t.manager.layout.showSaveTemplateView(o.model)},preview:function preview(o){t.manager.layout.showPreviewView(o.model)},connect:function connect(o){o.texts={title:r("Connect to Template Library","elementor"),message:r("Access this template and our entire library by creating a free personal account","elementor"),button:r("Get Started","elementor")},t.manager.layout.showConnectView(o)}}}},{key:"defaultCommands",value:function defaultCommands(){var t=(0,p.default)((0,h.default)(Component.prototype),"defaultCommands",this).call(this);return(0,c.default)((0,c.default)({},t),this.importCommands(C))}},{key:"defaultShortcuts",value:function defaultShortcuts(){return{open:{keys:"ctrl+shift+l"}}}},{key:"onDocumentLoaded",value:function onDocumentLoaded(t){this.setDefaultRoute(t.config.remoteLibrary.default_route),this.maybeOpenLibrary()}},{key:"renderTab",value:function renderTab(t){var o=this.tabs[t],i=o.getFilter?o.getFilter():o.filter;this.manager.setScreen(i)}},{key:"activateTab",value:function activateTab(t){$e.routes.saveState("library"),(0,p.default)((0,h.default)(Component.prototype),"activateTab",this).call(this,t)}},{key:"open",value:function open(){return(0,p.default)((0,h.default)(Component.prototype),"open",this).call(this),this.manager.layout||(this.manager.layout=this.layout),this.manager.layout.setHeaderDefaultParts(),!0}},{key:"close",value:function close(){return!!(0,p.default)((0,h.default)(Component.prototype),"close",this).call(this)&&(this.manager.modalConfig={},!0)}},{key:"show",value:function show(t){this.manager.modalConfig=t,!t.toDefault&&$e.routes.restoreState("library")||$e.route(this.getDefaultRoute())}},{key:"insertTemplate",value:function insertTemplate(t){var o=this,i=elementor.config.document.remoteLibrary.autoImportSettings,r=t.model,a=t.withPageSettings,l=void 0===a?null:a;(i&&(l=!0),null===l&&r.get("hasPageSettings"))?this.getImportSettingsDialog().showImportDialog(r):(this.manager.layout.showLoadingView(),this.manager.requestTemplateContent(r.get("source"),r.get("template_id"),{data:{with_page_settings:l},success:function success(t){var i=jQuery.extend({},o.manager.modalConfig.importOptions);i.withPageSettings=l,o.manager.layout.hideLoadingView(),o.manager.layout.hideModal(),$e.run("document/elements/import",{model:r,data:t,options:i})},error:function error(t){o.manager.showErrorDialog(t)},complete:function complete(){o.manager.layout.hideLoadingView()}}))}},{key:"getImportSettingsDialog",value:function getImportSettingsDialog(){var t={dialog:null,showImportDialog:function showImportDialog(o){var i=t.getDialog();i.onConfirm=function(){$e.run("library/insert-template",{model:o,withPageSettings:!0})},i.onCancel=function(){$e.run("library/insert-template",{model:o,withPageSettings:!1})},i.show()},initDialog:function initDialog(){t.dialog=elementorCommon.dialogsManager.createWidget("confirm",{id:"elementor-insert-template-settings-dialog",headerMessage:r("Import Document Settings","elementor"),message:r("Do you want to also import the document settings of the template?","elementor")+"<br>"+r("Attention: Importing may override previous settings.","elementor"),strings:{confirm:r("Yes","elementor"),cancel:r("No","elementor")}})},getDialog:function getDialog(){return t.dialog||t.initDialog(),t.dialog}};return t}},{key:"getTabsWrapperSelector",value:function getTabsWrapperSelector(){return"#elementor-template-library-header-menu"}},{key:"getModalLayout",value:function getModalLayout(){return b}},{key:"maybeOpenLibrary",value:function maybeOpenLibrary(){"#library"===location.hash&&($e.run("library/open"),location.hash="")}}]),Component}(y.default);o.default=w},79005:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(18194).sprintf,l=i(67971);i(64434);var u,c=l(i(32009)),d=l(i(24596)),m=l(i(18042)),p=l(i(61830)),h=i(24599);u=function TemplateLibraryManager(){this.modalConfig={};var t,o,i,l=this,u={},g={},v={};this.init=function(){!function registerDefaultTemplateTypes(){var t={saveDialog:{description:r("Your designs will be available for export and reuse on any page or website","elementor")},ajaxParams:{success:function success(t){$e.route("library/templates/my-templates",{onBefore:function onBefore(){i&&(i.findWhere({template_id:t.template_id})||i.add(t))}})},error:function error(t){l.showErrorDialog(t)}}},o=(0,m.default)({page:r("Page","elementor"),section:r("Section","elementor")},elementor.config.document.type,elementor.config.document.panel.title);jQuery.each(o,(function(o,i){var u=jQuery.extend(!0,{},t,{saveDialog:{title:a(r("Save Your %s to Library","elementor"),i)}});l.registerTemplateType(o,u)}))}(),function registerDefaultFilterTerms(){v={text:{callback:function callback(t){return t=t.toLowerCase(),this.get("title").toLowerCase().indexOf(t)>=0||_.any(this.get("tags"),(function(o){return o.toLowerCase().indexOf(t)>=0}))}},type:{},subtype:{},favorite:{}}}(),this.component=$e.components.register(new p.default({manager:this})),elementor.addBackgroundClickListener("libraryToggleMore",{element:".elementor-template-library-template-more"})},this.getTemplateTypes=function(t){return t?u[t]:u},this.registerTemplateType=function(t,o){u[t]=o},this.deleteTemplate=function(t,o){var r=l.getDeleteDialog();r.onConfirm=function(){o.onConfirm&&o.onConfirm(),elementorCommon.ajax.addRequest("delete_template",{data:{source:t.get("source"),template_id:t.get("template_id")},success:function success(r){i.remove(t,{silent:!0}),o.onSuccess&&o.onSuccess(r)}})},r.show()},this.importTemplate=function(t){var o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};elementorCommon.helpers.softDeprecated("importTemplate","2.8.0","$e.run( 'library/insert-template' )"),o.model=t,$e.run("library/insert-template",o)},this.saveTemplate=function(t,o){var i=u[t];_.extend(o,{source:"local",type:t}),i.prepareSavedData&&(o=i.prepareSavedData(o)),o.content=(0,c.default)(o.content);var r={data:o};i.ajaxParams&&_.extend(r,i.ajaxParams),elementorCommon.ajax.addRequest("save_template",r)},this.requestTemplateContent=function(t,o,i){var r={unique_id:o,data:{source:t,edit_mode:!0,display:!0,template_id:o}};return i&&jQuery.extend(!0,r,i),elementorCommon.ajax.addRequest("get_template_data",r)},this.markAsFavorite=function(t,o){var i={data:{source:t.get("source"),template_id:t.get("template_id"),favorite:o}};return elementorCommon.ajax.addRequest("mark_template_as_favorite",i)},this.getDeleteDialog=function(){return t||(t=elementorCommon.dialogsManager.createWidget("confirm",{id:"elementor-template-library-delete-dialog",headerMessage:r("Delete Template","elementor"),message:r("Are you sure you want to delete this template?","elementor"),strings:{confirm:r("Delete","elementor")}})),t},this.getErrorDialog=function(){return o||(o=elementorCommon.dialogsManager.createWidget("alert",{id:"elementor-template-library-error-dialog",headerMessage:r("An error occurred","elementor")})),o},this.getTemplatesCollection=function(){return i},this.getConfig=function(t){return t?g[t]?g[t]:{}:g},this.requestLibraryData=function(t){if(!i||t.forceUpdate){t.onBeforeUpdate&&t.onBeforeUpdate();var o={data:{},success:function success(o){i=new h(o.templates),o.config&&(g=o.config),t.onUpdate&&t.onUpdate()}};t.forceSync&&(o.data.sync=!0),elementorCommon.ajax.addRequest("get_library_data",o)}else t.onUpdate&&t.onUpdate()},this.getFilter=function(t){return elementor.channels.templates.request("filter:"+t)},this.setFilter=function(t,o,i){elementor.channels.templates.reply("filter:"+t,o),i||elementor.channels.templates.trigger("filter:change")},this.getFilterTerms=function(t){return t?v[t]:v},this.setScreen=function(t){elementor.channels.templates.stopReplying(),l.setFilter("source",t.source,!0),l.setFilter("type",t.type,!0),l.setFilter("subtype",t.subtype,!0),l.showTemplates()},this.loadTemplates=function(t){l.requestLibraryData({onBeforeUpdate:l.layout.showLoadingView.bind(l.layout),onUpdate:function onUpdate(){l.layout.hideLoadingView(),t&&t()}})},this.showTemplates=function(){l.layout.setHeaderDefaultParts(),l.loadTemplates((function(){var t=l.filterTemplates();l.layout.showTemplatesView(new h(t))}))},this.filterTemplates=function(){var t=l.getFilter("source");return i.filter((function(o){if(t!==o.get("source"))return!1;var i=u[o.get("type")];return!i||!1!==i.showInLibrary}))},this.showErrorDialog=function(t){if("object"===(0,d.default)(t)){var o="";_.each(t,(function(t){null!=t&&t.message&&(o+="<div>"+t.message+".</div>")})),t=o}else t&&(t+=".");t=t?r("The following error(s) occurred while processing the request:","elementor")+'<div id="elementor-template-library-error-info">'+t+"</div>":r("Please try again.","elementor"),l.getErrorDialog().setMessage(t).show()}},t.exports=new u},384:t=>{"use strict";t.exports=Backbone.Model.extend({defaults:{template_id:0,title:"",source:"",type:"",subtype:"",author:"",thumbnail:"",url:"",export_link:"",tags:[]}})},7329:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67971)(i(83452));i(71954);var l=i(40055),u=i(82830),c=i(17555),d=i(220),m=i(15307),p=i(89482),h=i(46831),g=i(35333),v=i(58489);t.exports=elementorModules.common.views.modal.Layout.extend({getModalOptions:function getModalOptions(){return{id:"elementor-template-library-modal"}},getLogoOptions:function getLogoOptions(){return{title:r("Library","elementor"),click:function click(){$e.run("library/open",{toDefault:!0})}}},getTemplateActionButton:function getTemplateActionButton(t){var o=elementor.config.library_connect.subscription_plans,i="#tmpl-elementor-template-library-"+(elementor.config.library_connect.base_access_level!==t.accessLevel?"upgrade-plan-button":"insert-button");i=elementor.hooks.applyFilters("elementor/editor/template-library/template/action-button",i,t);var r=Marionette.TemplateCache.get(i),l=o[(0,a.default)(o).sort().find((function(o){return o>=t.accessLevel}))];return Marionette.Renderer.render(r,{promotionText:"Go ".concat(l.label),promotionLink:l.promotion_url})},setHeaderDefaultParts:function setHeaderDefaultParts(){var t=this.getHeaderView();t.tools.show(new l),t.menuArea.show(new u),this.showLogo()},showTemplatesView:function showTemplatesView(t){this.modalContent.show(new m({collection:t}))},showImportView:function showImportView(){var t=this.getHeaderView();t.menuArea.reset(),this.modalContent.show(new h),t.logoArea.show(new d)},showConnectView:function showConnectView(t){this.getHeaderView().menuArea.reset(),this.modalContent.show(new g(t))},showSaveTemplateView:function showSaveTemplateView(t){this.getHeaderView().menuArea.reset(),this.modalContent.show(new p({model:t}))},showPreviewView:function showPreviewView(t){this.modalContent.show(new v({url:t.get("url")}));var o=this.getHeaderView();o.menuArea.reset(),o.tools.show(new c({model:t})),o.logoArea.show(new d)}})},35333:(t,o,i)=>{"use strict";var r=i(18194).__;t.exports=Marionette.ItemView.extend({template:"#tmpl-elementor-template-library-connect",id:"elementor-template-library-connect",ui:{connect:"#elementor-template-library-connect__button",thumbnails:"#elementor-template-library-connect-thumbnails"},templateHelpers:function templateHelpers(){return this.getOption("texts")},onRender:function onRender(){var t=this;this.ui.connect.elementorConnect({UTM:function UTM(){return"&utm_source=editor-panel&utm_medium=wp-dash&utm_campaign=insert-".concat(t.model.get("type"))},success:function success(){elementor.config.library_connect.is_connected=!0,t.getOption("model")?$e.run("library/insert-template",{model:t.getOption("model")}):($e.run("library/close"),elementor.notifications.showToast({message:r("Connected successfully","elementor")}))},error:function error(){elementor.config.library_connect.is_connected=!1}})}})},40055:t=>{"use strict";t.exports=Marionette.ItemView.extend({template:"#tmpl-elementor-template-library-header-actions",id:"elementor-template-library-header-actions",ui:{import:"#elementor-template-library-header-import i",sync:"#elementor-template-library-header-sync i",save:"#elementor-template-library-header-save i"},events:{"click @ui.import":"onImportClick","click @ui.sync":"onSyncClick","click @ui.save":"onSaveClick"},onImportClick:function onImportClick(){$e.route("library/import")},onSyncClick:function onSyncClick(){var t=this;t.ui.sync.addClass("eicon-animation-spin"),elementor.templates.requestLibraryData({onUpdate:function onUpdate(){t.ui.sync.removeClass("eicon-animation-spin"),$e.routes.refreshContainer("library")},forceUpdate:!0,forceSync:!0})},onSaveClick:function onSaveClick(){$e.route("library/save-template")}})},220:t=>{"use strict";t.exports=Marionette.ItemView.extend({template:"#tmpl-elementor-template-library-header-back",id:"elementor-template-library-header-preview-back",events:{click:"onClick"},onClick:function onClick(){$e.routes.restoreState("library")}})},82830:t=>{"use strict";t.exports=Marionette.ItemView.extend({template:"#tmpl-elementor-template-library-header-menu",id:"elementor-template-library-header-menu",templateHelpers:function templateHelpers(){return{tabs:$e.components.get("library").getTabs()}}})},17555:(t,o,i)=>{"use strict";var r=i(56284);t.exports=Marionette.ItemView.extend({template:"#tmpl-elementor-template-library-header-preview",id:"elementor-template-library-header-preview",behaviors:{insertTemplate:{behaviorClass:r}}})},46831:(t,o,i)=>{"use strict";var r;i(99745),i(84208),r=Marionette.ItemView.extend({template:"#tmpl-elementor-template-library-import",id:"elementor-template-library-import",ui:{uploadForm:"#elementor-template-library-import-form",fileInput:"#elementor-template-library-import-form-input"},events:{"change @ui.fileInput":"onFileInputChange"},droppedFiles:null,submitForm:function submitForm(){var t,o=this;this.droppedFiles?(t=this.droppedFiles[0],this.droppedFiles=null):(t=this.ui.fileInput[0].files[0],this.ui.uploadForm[0].reset());var i=new FileReader;i.onload=function(i){return o.importTemplate(t.name,i.target.result.replace(/^[^,]+,/,""))},i.readAsDataURL(t)},importTemplate:function importTemplate(t,o){var i=elementor.templates.layout,r={data:{fileName:t,fileData:o},success:function success(t){elementor.templates.getTemplatesCollection().add(t),$e.route("library/templates/my-templates")},error:function error(t){elementor.templates.showErrorDialog(t),i.showImportView()},complete:function complete(){i.hideLoadingView()}};elementorCommon.ajax.addRequest("import_template",r),i.showLoadingView()},onRender:function onRender(){this.ui.uploadForm.on({"drag dragstart dragend dragover dragenter dragleave drop":this.onFormActions.bind(this),dragenter:this.onFormDragEnter.bind(this),"dragleave drop":this.onFormDragLeave.bind(this),drop:this.onFormDrop.bind(this)})},onFormActions:function onFormActions(t){t.preventDefault(),t.stopPropagation()},onFormDragEnter:function onFormDragEnter(){this.ui.uploadForm.addClass("elementor-drag-over")},onFormDragLeave:function onFormDragLeave(t){jQuery(t.relatedTarget).closest(this.ui.uploadForm).length||this.ui.uploadForm.removeClass("elementor-drag-over")},onFormDrop:function onFormDrop(t){this.droppedFiles=t.originalEvent.dataTransfer.files,this.submitForm()},onFileInputChange:function onFileInputChange(){this.submitForm()}}),t.exports=r},58489:t=>{"use strict";var o;o=Marionette.ItemView.extend({template:"#tmpl-elementor-template-library-preview",id:"elementor-template-library-preview",ui:{iframe:"> iframe"},onRender:function onRender(){this.ui.iframe.attr("src",this.getOption("url"))}}),t.exports=o},89482:t=>{"use strict";var o;o=Marionette.ItemView.extend({id:"elementor-template-library-save-template",template:"#tmpl-elementor-template-library-save-template",ui:{form:"#elementor-template-library-save-template-form",submitButton:"#elementor-template-library-save-template-submit"},events:{"submit @ui.form":"onFormSubmit"},getSaveType:function getSaveType(){return this.model?this.model.get("elType"):elementor.config.document.library&&elementor.config.document.library.save_as_same_type?elementor.config.document.type:"page"},templateHelpers:function templateHelpers(){var t=this.getSaveType();return elementor.templates.getTemplateTypes(t).saveDialog},onFormSubmit:function onFormSubmit(t){t.preventDefault();var o=this.ui.form.elementorSerializeObject(),i=this.getSaveType(),r={remove:["default"]};o.content=this.model?[this.model.toJSON(r)]:elementor.elements.toJSON(r),this.ui.submitButton.addClass("elementor-button-state"),elementor.templates.saveTemplate(i,o)}}),t.exports=o},75403:(t,o,i)=>{"use strict";var r,a=i(18194).__;r=Marionette.ItemView.extend({id:"elementor-template-library-templates-empty",template:"#tmpl-elementor-template-library-templates-empty",ui:{title:".elementor-template-library-blank-title",message:".elementor-template-library-blank-message"},modesStrings:{empty:{title:a("Haven’t Saved Templates Yet?","elementor"),message:a("This is where your templates should be. Design it. Save it. Reuse it.","elementor")},noResults:{title:a("No Results Found","elementor"),message:a("Please make sure your search is spelled correctly or try a different words.","elementor")},noFavorites:{title:a("No Favorite Templates","elementor"),message:a("You can mark any pre-designed template as a favorite.","elementor")}},getCurrentMode:function getCurrentMode(){return elementor.templates.getFilter("text")?"noResults":elementor.templates.getFilter("favorite")?"noFavorites":"empty"},onRender:function onRender(){var t=this.modesStrings[this.getCurrentMode()];this.ui.title.html(t.title),this.ui.message.html(t.message)}}),t.exports=r},15307:(t,o,i)=>{"use strict";var r,a=i(18194).__,l=i(67971)(i(91795)),u=i(70078),c=i(79032);r=Marionette.CompositeView.extend({template:"#tmpl-elementor-template-library-templates",id:"elementor-template-library-templates",childViewContainer:"#elementor-template-library-templates-container",reorderOnSort:!0,emptyView:function emptyView(){return new(i(75403))},ui:{textFilter:"#elementor-template-library-filter-text",selectFilter:".elementor-template-library-filter-select",myFavoritesFilter:"#elementor-template-library-filter-my-favorites",orderInputs:".elementor-template-library-order-input",orderLabels:"label.elementor-template-library-order-label"},events:{"input @ui.textFilter":"onTextFilterInput","change @ui.selectFilter":"onSelectFilterChange","change @ui.myFavoritesFilter":"onMyFavoritesFilterChange","mousedown @ui.orderLabels":"onOrderLabelsClick"},comparators:{title:function title(t){return t.get("title").toLowerCase()},popularityIndex:function popularityIndex(t){var popularityIndex=t.get("popularityIndex");return popularityIndex||(popularityIndex=t.get("date")),-popularityIndex},trendIndex:function trendIndex(t){var trendIndex=t.get("trendIndex");return trendIndex||(trendIndex=t.get("date")),-trendIndex}},getChildView:function getChildView(t){return"remote"===t.get("source")?c:u},initialize:function initialize(){this.listenTo(elementor.channels.templates,"filter:change",this._renderChildren)},filter:function filter(t){var o=elementor.templates.getFilterTerms(),i=!0;return jQuery.each(o,(function(o){var r=elementor.templates.getFilter(o);if(r){if(this.callback){var a=this.callback.call(t,r);return a||(i=!1),a}var l=r===t.get(o);return l||(i=!1),l}})),i},order:function order(t,o){var i=this.comparators[t]||t;o&&(i=this.reverseOrder(i)),this.collection.comparator=i,this.collection.sort()},reverseOrder:function reverseOrder(t){if("function"!=typeof t){var o=t;t=function comparator(t){return t.get(o)}}return function(o,i){var r=t(o),a=t(i);return void 0===r?-1:void 0===a||r<a?1:r>a?-1:0}},addSourceData:function addSourceData(){var t=this.children.isEmpty();this.$el.attr("data-template-source",t?"empty":elementor.templates.getFilter("source"))},setFiltersUI:function setFiltersUI(){if(!this.select2Instance){var t=this.$(this.ui.selectFilter),o={placeholder:a("Category","elementor"),allowClear:!0,width:150,dropdownParent:this.$el};this.select2Instance=new l.default({$element:t,options:o})}},setMasonrySkin:function setMasonrySkin(){var t=new elementorModules.utils.Masonry({container:this.$childViewContainer,items:this.$childViewContainer.children()});this.$childViewContainer.imagesLoaded(t.run.bind(t))},toggleFilterClass:function toggleFilterClass(){this.$el.toggleClass("elementor-templates-filter-active",!(!elementor.templates.getFilter("text")&&!elementor.templates.getFilter("favorite")))},isPageOrLandingPageTemplates:function isPageOrLandingPageTemplates(){var t=elementor.templates.getFilter("type");return"page"===t||"lp"===t},onRender:function onRender(){"remote"===elementor.templates.getFilter("source")&&"page"!==elementor.templates.getFilter("type")&&this.setFiltersUI()},onRenderCollection:function onRenderCollection(){this.addSourceData(),this.toggleFilterClass(),"remote"!==elementor.templates.getFilter("source")||this.isPageOrLandingPageTemplates()||this.setMasonrySkin()},onBeforeRenderEmpty:function onBeforeRenderEmpty(){this.addSourceData()},onTextFilterInput:function onTextFilterInput(){elementor.templates.setFilter("text",this.ui.textFilter.val())},onSelectFilterChange:function onSelectFilterChange(t){var o=jQuery(t.currentTarget),i=o.data("elementor-filter");elementor.templates.setFilter(i,o.val())},onMyFavoritesFilterChange:function onMyFavoritesFilterChange(){elementor.templates.setFilter("favorite",this.ui.myFavoritesFilter[0].checked)},onOrderLabelsClick:function onOrderLabelsClick(t){var o,i=jQuery(t.currentTarget.control);i[0].checked||(o="asc"!==i.data("default-ordering-direction")),i.toggleClass("elementor-template-library-order-reverse",o),this.order(i.val(),i.hasClass("elementor-template-library-order-reverse"))}}),t.exports=r},93746:(t,o,i)=>{"use strict";var r,a=i(56284);r=Marionette.ItemView.extend({className:function className(){var t="elementor-template-library-template",o=this.model.get("source");return t+=" elementor-template-library-template-"+o,"remote"===o&&(t+=" elementor-template-library-template-"+this.model.get("type")),elementor.config.library_connect.base_access_level!==this.model.get("accessLevel")&&(t+=" elementor-template-library-pro-template"),t},attributes:function attributes(){var t=elementor.config.library_connect.subscription_plans[this.model.get("accessLevel")];return t?{style:'--elementor-template-library-subscription-plan-label: "'.concat(t.label,'";--elementor-template-library-subscription-plan-color: ').concat(t.color,";")}:{}},ui:function ui(){return{previewButton:".elementor-template-library-template-preview"}},events:function events(){return{"click @ui.previewButton":"onPreviewButtonClick"}},behaviors:{insertTemplate:{behaviorClass:a}}}),t.exports=r},70078:(t,o,i)=>{"use strict";var r,a=i(93746);r=a.extend({template:"#tmpl-elementor-template-library-template-local",ui:function ui(){return _.extend(a.prototype.ui.apply(this,arguments),{deleteButton:".elementor-template-library-template-delete",morePopup:".elementor-template-library-template-more",toggleMore:".elementor-template-library-template-more-toggle",toggleMoreIcon:".elementor-template-library-template-more-toggle i"})},events:function events(){return _.extend(a.prototype.events.apply(this,arguments),{"click @ui.deleteButton":"onDeleteButtonClick","click @ui.toggleMore":"onToggleMoreClick"})},onDeleteButtonClick:function onDeleteButtonClick(){var t=this.ui.toggleMoreIcon;elementor.templates.deleteTemplate(this.model,{onConfirm:function onConfirm(){t.removeClass("eicon-ellipsis-h").addClass("eicon-loading eicon-animation-spin")},onSuccess:function onSuccess(){elementor.templates.showTemplates()}})},onToggleMoreClick:function onToggleMoreClick(){this.ui.morePopup.show()},onPreviewButtonClick:function onPreviewButtonClick(){open(this.model.get("url"),"_blank")}}),t.exports=r},79032:(t,o,i)=>{"use strict";var r,a=i(93746);r=a.extend({template:"#tmpl-elementor-template-library-template-remote",ui:function ui(){return jQuery.extend(a.prototype.ui.apply(this,arguments),{favoriteCheckbox:".elementor-template-library-template-favorite-input"})},events:function events(){return jQuery.extend(a.prototype.events.apply(this,arguments),{"change @ui.favoriteCheckbox":"onFavoriteCheckboxChange"})},onPreviewButtonClick:function onPreviewButtonClick(){$e.route("library/preview",{model:this.model})},onFavoriteCheckboxChange:function onFavoriteCheckboxChange(){var t=this.ui.favoriteCheckbox[0].checked;this.model.set("favorite",t),elementor.templates.markAsFavorite(this.model,t),!t&&elementor.templates.getFilter("favorite")&&elementor.channels.templates.trigger("filter:change")}}),t.exports=r},96731:t=>{"use strict";t.exports=elementorModules.Module.extend({errors:[],__construct:function __construct(t){var o=t.customValidationMethod;o&&(this.validationMethod=o)},getDefaultSettings:function getDefaultSettings(){return{validationTerms:{}}},isValid:function isValid(){var t=this.validationMethod.apply(this,arguments);return!t.length||(this.errors=t,!1)},validationMethod:function validationMethod(t){var o=[];return this.getSettings("validationTerms").required&&((""+t).length||o.push("Required value is empty")),o}})},33273:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var l=a(i(83452));i(90286),i(84208);var u=a(i(11959)),c=a(i(39041)),d=a(i(77371)),m=a(i(68537)),p=i(12161),h=function(t){(0,d.default)(BreakpointValidator,t);var o=(0,m.default)(BreakpointValidator);function BreakpointValidator(){return(0,u.default)(this,BreakpointValidator),o.apply(this,arguments)}return(0,c.default)(BreakpointValidator,[{key:"getDefaultSettings",value:function getDefaultSettings(){return{validationTerms:{max:5120}}}},{key:"getPanelActiveBreakpoints",value:function getPanelActiveBreakpoints(){var t=elementor.documents.currentDocument.config.settings.settings.active_breakpoints.map((function(t){return t.replace("viewport_","")})),o={};return t.forEach((function(t){o[t]=elementorFrontend.config.responsive.breakpoints[t]})),o}},{key:"initBreakpointProperties",value:function initBreakpointProperties(){var t,o,i=this.getSettings("validationTerms"),r=this.getPanelActiveBreakpoints(),a=(0,l.default)(r);this.breakpointIndex=a.indexOf(i.breakpointName),this.topBreakpoint=null===(t=r[a[this.breakpointIndex+1]])||void 0===t?void 0:t.value,this.bottomBreakpoint=null===(o=r[a[this.breakpointIndex-1]])||void 0===o?void 0:o.value}},{key:"validationMethod",value:function validationMethod(t){var o=this.getSettings("validationTerms"),i=p.prototype.validationMethod.call(this,t);return(_.isFinite(t)||""===t)&&(this.validateMinMaxForBreakpoint(t,o)||i.push("Value is not between the breakpoints above or under the edited breakpoint")),i}},{key:"validateMinMaxForBreakpoint",value:function validateMinMaxForBreakpoint(t,o){var i=elementorFrontend.config.responsive.breakpoints[o.breakpointName].default_value,r=!0;return this.initBreakpointProperties(),"mobile"===o.breakpointName&&320===this.bottomBreakpoint&&(this.bottomBreakpoint-=1),this.bottomBreakpoint&&(""!==t&&t<=this.bottomBreakpoint&&(r=!1),""===t&&i<=this.bottomBreakpoint&&(r=!1)),this.topBreakpoint&&(""!==t&&t>=this.topBreakpoint&&(r=!1),""===t&&i>=this.topBreakpoint&&(r=!1)),r}}]),BreakpointValidator}(p);o.default=h},12161:(t,o,i)=>{"use strict";var r=i(96731);t.exports=r.extend({validationMethod:function validationMethod(t){var o=this.getSettings("validationTerms"),i=[];return _.isFinite(t)&&(void 0!==o.min&&t<o.min&&i.push("Value is less than minimum"),void 0!==o.max&&t>o.max&&i.push("Value is greater than maximum")),i}})},53005:(t,o,i)=>{"use strict";var r=i(67971),a=r(i(15149)),l=r(i(83452)),u=r(i(38923)),c=r(i(47834)),d=r(i(74758)),m=r(i(18042));i(64434),i(3777),i(38081),i(67209),i(71954);var p,h=r(i(33273)),g=i(15584),v=i(85422),y=i(96731),C=i(12161);p=g.extend({validatorTypes:{Base:y,Number:C,Breakpoint:h.default},ui:function ui(){var ui=g.prototype.ui.apply(this,arguments);return _.extend(ui,{input:'input[data-setting][type!="checkbox"][type!="radio"]',checkbox:'input[data-setting][type="checkbox"]',radio:'input[data-setting][type="radio"]',select:"select[data-setting]",textarea:"textarea[data-setting]",responsiveSwitchers:".elementor-responsive-switcher",contentEditable:'[contenteditable="true"]'}),ui},templateHelpers:function templateHelpers(){var t=g.prototype.templateHelpers.apply(this,arguments);return t.data.controlValue=this.getControlValue(),t},events:function events(){return{"input @ui.input":"onBaseInputTextChange","change @ui.checkbox":"onBaseInputChange","change @ui.radio":"onBaseInputChange","input @ui.textarea":"onBaseInputTextChange","change @ui.select":"onBaseInputChange","input @ui.contentEditable":"onBaseInputTextChange","click @ui.responsiveSwitchers":"onResponsiveSwitchersClick"}},behaviors:function behaviors(){var behaviors=g.prototype.behaviors.apply(this,arguments),t=this.options.model.get("dynamic");if(t&&t.active){var o=_.filter(elementor.dynamicTags.getConfig("tags"),(function(o){return o.editable&&_.intersection(o.categories,t.categories).length}));(o.length||elementor.config.user.is_administrator)&&(behaviors.tags={behaviorClass:v,tags:o,dynamicSettings:t})}return behaviors},initialize:function initialize(){g.prototype.initialize.apply(this,arguments),this.registerValidators(),this.model.get("responsive")&&this.setPlaceholderFromParent();var t=this.container?this.container.settings:this.elementSettingsModel;this.listenTo(t,"change:external:"+this.model.get("name"),this.onAfterExternalChange)},getControlValue:function getControlValue(){return this.container.settings.get(this.model.get("name"))},getGlobalKey:function getGlobalKey(){return this.container.globals.get(this.model.get("name"))},getGlobalValue:function getGlobalValue(){return this.globalValue},getGlobalDefault:function getGlobalDefault(){var t=this.model.get("global");if(null!=t&&t.default){if(!elementor.config.globals.defaults_enabled[this.getGlobalMeta().controlType])return"";var o=$e.data.commandExtractArgs(t.default),i=o.command,r=o.args,a=$e.data.getCache($e.components.get("globals"),i,r.query);return null==a?void 0:a.value}return""},getCurrentValue:function getCurrentValue(){if(this.getGlobalKey()&&!this.globalValue)return"";if(this.globalValue)return this.globalValue;var t=this.getControlValue();return t||this.getGlobalDefault()},isGlobalActive:function isGlobalActive(){var t;return null===(t=this.options.model.get("global"))||void 0===t?void 0:t.active},setValue:function setValue(t){this.setSettingsModel(t)},setSettingsModel:function setSettingsModel(t){var o=this.model.get("name");$e.run("document/elements/settings",{container:this.options.container,settings:(0,m.default)({},o,t)}),this.triggerMethod("settings:change")},applySavedValue:function applySavedValue(){this.setInputValue('[data-setting="'+this.model.get("name")+'"]',this.getControlValue())},getEditSettings:function getEditSettings(t){var o=this.getOption("elementEditSettings").toJSON();return t?o[t]:o},setEditSetting:function setEditSetting(t,o){(this.getOption("elementEditSettings")||this.getOption("container").settings).set(t,o)},getControlPlaceholder:function getControlPlaceholder(){var t=this.model.get("placeholder");return this.model.get("responsive")&&(t=t||this.container.placeholders[this.model.get("name")]),t},getResponsiveParentView:function getResponsiveParentView(){var t=this.model.get("parent");try{return t&&this.container.panel.getControlView(t)}catch(t){}},getResponsiveChildrenViews:function getResponsiveChildrenViews(){var t=this.model.get("inheritors"),o=[];try{var i,r=(0,d.default)(t);try{for(r.s();!(i=r.n()).done;){var a=i.value;o.push(this.container.panel.getControlView(a))}}catch(t){r.e(t)}finally{r.f()}}catch(t){}return o},setPlaceholderFromParent:function setPlaceholderFromParent(){var t=this.getResponsiveParentView();t&&(this.container.placeholders[this.model.get("name")]=t.preparePlaceholderForChildren())},preparePlaceholderForChildren:function preparePlaceholderForChildren(){var t,o=this.getCleanControlValue(),i=null===(t=this.getResponsiveParentView())||void 0===t?void 0:t.preparePlaceholderForChildren();return o instanceof Object?(0,a.default)({},i,o):o||i},propagatePlaceholder:function propagatePlaceholder(){var t,o=this.getResponsiveChildrenViews(),i=(0,d.default)(o);try{for(i.s();!(t=i.n()).done;){t.value.renderWithChildren()}}catch(t){i.e(t)}finally{i.f()}},renderWithChildren:function renderWithChildren(){this.render(),this.propagatePlaceholder()},getCleanControlValue:function getCleanControlValue(){var t=this.getControlValue();return t&&t!==this.model.get("default")?t:void 0},onAfterChange:function onAfterChange(t){(0,l.default)(t.changed).includes(this.model.get("name"))&&this.propagatePlaceholder(),g.prototype.onAfterChange.apply(this,arguments)},getInputValue:function getInputValue(t){var o=this.$(t);if(o.is('[contenteditable="true"]'))return o.html();var i=o.val(),r=o.attr("type");return-1!==["radio","checkbox"].indexOf(r)?o.prop("checked")?i:"":"number"===r&&_.isFinite(i)?+i:("SELECT"===t.tagName&&o.prop("multiple")&&null===i&&(i=[]),i)},setInputValue:function setInputValue(t,o){var i=this.$(t),r=i.attr("type");"checkbox"===r?i.prop("checked",!!o):"radio"===r?i.filter('[value="'+o+'"]').prop("checked",!0):i.val(o)},addValidator:function addValidator(t){this.validators.push(t)},registerValidators:function registerValidators(){var t=this;this.validators=[];var o={};this.model.get("required")&&(o.required=!0),jQuery.isEmptyObject(o)||this.addValidator(new this.validatorTypes.Base({validationTerms:o}));var i=this.model.get("validators");i&&(0,u.default)(i).forEach((function(o){var i=(0,c.default)(o,2),r=i[0],a=i[1];t.addValidator(new t.validatorTypes[r]({validationTerms:a}))}))},onBeforeRender:function onBeforeRender(){this.setPlaceholderFromParent()},onRender:function onRender(){g.prototype.onRender.apply(this,arguments),this.model.get("responsive")&&this.renderResponsiveSwitchers(),this.applySavedValue(),this.triggerMethod("ready"),this.toggleControlVisibility(),this.addTooltip()},onBaseInputTextChange:function onBaseInputTextChange(t){this.onBaseInputChange(t)},onBaseInputChange:function onBaseInputChange(t){clearTimeout(this.correctionTimeout);var o=t.currentTarget,i=this.getInputValue(o),r=this.validators.slice(0),a=this.container.settings.validators[this.model.get("name")];if(a&&(r=r.concat(a)),r){var l=this.getControlValue(o.dataset.setting);if(!r.every((function(t){return t.isValid(i,l)})))return void(this.correctionTimeout=setTimeout(this.setInputValue.bind(this,o,l),1200))}this.updateElementModel(i,o),this.triggerMethod("input:change",t)},onResponsiveSwitchersClick:function onResponsiveSwitchersClick(t){var o=jQuery(t.currentTarget),i=o.data("device"),r=this.ui.responsiveSwitchersWrapper,a=o.index();r.toggleClass("elementor-responsive-switchers-open"),r[0].style.setProperty("--selected-option",a),this.triggerMethod("responsive:switcher:click",i),elementor.changeDeviceMode(i)},renderResponsiveSwitchers:function renderResponsiveSwitchers(){var t=Marionette.Renderer.render("#tmpl-elementor-control-responsive-switchers",this.model.attributes);this.ui.controlTitle.after(t),this.ui.responsiveSwitchersWrapper=this.$el.find(".elementor-control-responsive-switchers")},onAfterExternalChange:function onAfterExternalChange(){this.hideTooltip(),this.applySavedValue()},addTooltip:function addTooltip(){this.ui.tooltipTargets=this.$el.find(".tooltip-target"),this.ui.tooltipTargets.length&&this.ui.tooltipTargets.tipsy({gravity:function gravity(){var gravity=jQuery(this).data("tooltip-pos");return void 0!==gravity?gravity:"s"},title:function title(){return this.getAttribute("data-tooltip")}})},hideTooltip:function hideTooltip(){this.ui.tooltipTargets.length&&this.ui.tooltipTargets.tipsy("hide")},updateElementModel:function updateElementModel(t){this.setValue(t)}},{getStyleValue:function getStyleValue(t,o,i){return"DEFAULT"===t?i.default:o},onPasteStyle:function onPasteStyle(){return!0}}),t.exports=p},87474:(t,o,i)=>{"use strict";var r,a=i(67971),l=a(i(24596)),u=a(i(47834)),c=a(i(38923)),d=a(i(83452));i(64434),r=i(53005).extend({applySavedValue:function applySavedValue(){var t=this.getControlValue(),o=this.$("[data-setting]"),i=this;_.each(t,(function(t,r){var a=o.filter((function(){return r===this.dataset.setting}));i.setInputValue(a,t)}))},getControlValue:function getControlValue(t){var o=this.container.settings.get(this.model.get("name"));if(!jQuery.isPlainObject(o))return{};if(t){var i=o[t];return void 0===i&&(i=""),i}return elementorCommon.helpers.cloneObject(o)},getCleanControlValue:function getCleanControlValue(t){var o=this,i=Object.fromEntries((0,c.default)(this.getControlValue()).filter((function(t){var i=(0,u.default)(t,2),r=i[0],a=i[1];return a&&o.model.get("default")[r]!==a})));return t?null==i?void 0:i[t]:(0,d.default)(i).length?i:void 0},setValue:function setValue(t,o){var i=this.getControlValue();"object"===(0,l.default)(t)?_.each(t,(function(t,o){i[o]=t})):i[t]=o,this.setSettingsModel(i)},updateElementModel:function updateElementModel(t,o){var i=o.dataset.setting;this.setValue(i,t)}},{getStyleValue:function getStyleValue(t,o){return _.isObject(o)?o[t.toLowerCase()]:""}}),t.exports=r},26804:(t,o,i)=>{"use strict";var r=i(67971);i(64434);var a,l=r(i(15149)),u=i(87474);a=u.extend({ui:function ui(){return(0,l.default)(u.prototype.ui.apply(this,arguments),{units:".elementor-units-choices>input"})},events:function events(){return(0,l.default)(u.prototype.events.apply(this,arguments),{"change @ui.units":"onUnitChange"})},updatePlaceholder:function updatePlaceholder(){var t,o=null===(t=this.getControlPlaceholder())||void 0===t?void 0:t.unit;this.ui.units.removeClass("e-units-placeholder"),o&&this.ui.units.filter('[value="'.concat(o,'"]')).addClass("e-units-placeholder")},onRender:function onRender(){u.prototype.onRender.apply(this,arguments),this.updatePlaceholder()},onUnitChange:function onUnitChange(){this.updatePlaceholder()},getCurrentRange:function getCurrentRange(){return this.getUnitRange(this.getControlValue("unit"))},getUnitRange:function getUnitRange(t){var o=this.model.get("range");return!(!o||!o[t])&&o[t]}}),t.exports=a},15584:(t,o,i)=>{"use strict";var r,a=i(67971),l=a(i(83452)),u=a(i(67394));r=Marionette.CompositeView.extend({ui:function ui(){return{controlTitle:".elementor-control-title"}},behaviors:function behaviors(){return elementor.hooks.applyFilters("controls/base/behaviors",{},this)},getBehavior:function getBehavior(t){return this._behaviors[(0,l.default)(this.behaviors()).indexOf(t)]},className:function className(){var t="elementor-control elementor-control-"+this.model.get("name")+" elementor-control-type-"+this.model.get("type"),o=this.model.get("classes"),i=this.model.get("responsive");(_.isEmpty(o)||(t+=" "+o),_.isEmpty(i))||(t+=" elementor-control-responsive-"+(i.max||i.min));return t},templateHelpers:function templateHelpers(){var t={_cid:this.model.cid};return{view:this,data:_.extend({},this.model.toJSON(),t)}},getTemplate:function getTemplate(){return Marionette.TemplateCache.get("#tmpl-elementor-control-"+this.model.get("type")+"-content")},initialize:function initialize(t){var o=this.model.get("label");(0,u.default)(this,"container",{get:function get(){if(!t.container){var i=t.elementSettingsModel,r=$e.components.get("document").utils.findViewById(i.id);r&&r.getContainer?t.container=r.getContainer():(i.id||(i.id="bc-"+elementorCommon.helpers.getUniqueId()),t.container=new elementorModules.editor.Container({type:"bc-container",id:i.id,model:i,settings:i,label:o,view:!1,renderer:!1,controls:i.options.controls}))}return t.container}}),(0,u.default)(this,"elementSettingsModel",{get:function get(){return elementorCommon.helpers.softDeprecated("elementSettingsModel","2.8.0","container.settings"),t.container?t.container.settings:t.elementSettingsModel}});var i=this.model.get("type"),r=jQuery.extend(!0,{},elementor.config.controls[i],this.model.attributes);this.model.set(r);var a=this.container?this.container.settings:this.elementSettingsModel;this.listenTo(a,"change",this.onAfterChange)},onAfterChange:function onAfterChange(){this.toggleControlVisibility()},toggleControlVisibility:function toggleControlVisibility(){var t=this.container?this.container.settings:this.elementSettingsModel,o=elementor.helpers.isActiveControl(this.model,t.attributes);this.$el.toggleClass("elementor-hidden-control",!o),elementor.getPanelView().updateScrollbar()},onRender:function onRender(){var t=this.model.get("label_block")?"block":"inline",o=this.model.get("show_label"),i="elementor-label-"+t;i+=" elementor-control-separator-"+this.model.get("separator"),o||(i+=" elementor-control-hidden-label"),this.$el.addClass(i),this.toggleControlVisibility()}}),t.exports=r},23594:(t,o,i)=>{"use strict";var r=i(67971);i(71954),i(64434);var a,l=r(i(65863)),u=i(87474);a=u.extend({ui:function ui(){var ui=u.prototype.ui.apply(this,arguments);return ui.sliders=".elementor-slider",ui.colorPickerPlaceholder=".elementor-color-picker-placeholder",ui},initSliders:function initSliders(){var t=this,o=this.getControlValue();this.ui.sliders.each((function(i,r){var a=jQuery(r).next(".elementor-slider-input").find("input"),l=noUiSlider.create(r,{start:[o[r.dataset.input]],step:1,range:{min:+a.attr("min"),max:+a.attr("max")},format:{to:function to(t){return+t.toFixed(1)},from:function from(t){return+t}}});l.on("slide",(function(o){var i=l.target.dataset.input;a.val(o[0]),t.setValue(i,o[0])}))}))},initColors:function initColors(){var t=this;this.colorPicker=new l.default({picker:{el:this.ui.colorPickerPlaceholder[0],default:this.getControlValue("color")},onChange:function onChange(){t.setValue("color",t.colorPicker.getColor())},onClear:function onClear(){t.setValue("color","")}})},onInputChange:function onInputChange(t){var o=t.currentTarget.dataset.setting;this.ui.sliders.filter('[data-input="'+o+'"]')[0].noUiSlider.set(this.getControlValue(o))},onReady:function onReady(){this.initSliders(),this.initColors()},onBeforeDestroy:function onBeforeDestroy(){this.colorPicker.destroy()}}),t.exports=a},73309:(t,o,i)=>{"use strict";var r=i(15584);t.exports=r.extend({ui:function ui(){var ui=r.prototype.ui.apply(this,arguments);return ui.button="button",ui},events:{"click @ui.button":"onButtonClick"},onButtonClick:function onButtonClick(){var t=this.model.get("event");elementor.channels.editor.trigger(t,this)}})},11292:(t,o,i)=>{"use strict";i(64434);var r,a=i(53005);r=a.extend({ui:function ui(){var ui=a.prototype.ui.apply(this,arguments);return ui.inputs='[type="radio"]',ui},events:function events(){return _.extend(a.prototype.events.apply(this,arguments),{"mousedown label":"onMouseDownLabel","click @ui.inputs":"onClickInput","change @ui.inputs":"onBaseInputChange"})},updatePlaceholder:function updatePlaceholder(){var t=this.getControlPlaceholder();!this.getControlValue()&&t?this.ui.inputs.filter('[value="'.concat(this.getControlPlaceholder(),'"]')).addClass("e-choose-placeholder"):this.ui.inputs.removeClass("e-choose-placeholder")},onReady:function onReady(){this.updatePlaceholder()},applySavedValue:function applySavedValue(){var t=this.getControlValue();t?this.ui.inputs.filter('[value="'+t+'"]').prop("checked",!0):this.ui.inputs.filter(":checked").prop("checked",!1)},onMouseDownLabel:function onMouseDownLabel(t){var o=this.$(t.currentTarget),i=this.$("#"+o.attr("for"));i.data("checked",i.prop("checked"))},onClickInput:function onClickInput(t){if(this.model.get("toggle")){var o=this.$(t.currentTarget);o.data("checked")&&o.prop("checked",!1).trigger("change")}},onBaseInputChange:function onBaseInputChange(t){a.prototype.onBaseInputChange.apply(this,arguments),this.updatePlaceholder()}},{onPasteStyle:function onPasteStyle(t,o){return""===o||void 0!==t.options[o]}}),t.exports=r},16543:(t,o,i)=>{"use strict";var r,a=i(53005);r=a.extend({ui:function ui(){var ui=a.prototype.ui.apply(this,arguments);return ui.editor=".elementor-code-editor",ui},onReady:function onReady(){var t=this;if("undefined"!=typeof ace){var o=ace.require("ace/ext/language_tools"),i=elementor.settings.editorPreferences.model.get("ui_theme"),r=matchMedia("(prefers-color-scheme: dark)").matches;if(t.editor=ace.edit(this.ui.editor[0]),jQuery(t.editor.container).addClass("elementor-input-style elementor-code-editor elementor-control-tag-area"),t.editor.setOptions({mode:"ace/mode/"+t.model.attributes.language,minLines:10,maxLines:1/0,showGutter:!0,useWorker:!0,enableBasicAutocompletion:!0,enableLiveAutocompletion:!0}),("dark"===i||"auto"===i&&r)&&t.editor.setTheme("ace/theme/merbivore_soft"),t.editor.getSession().setUseWrapMode(!0),elementor.panel.$el.on("resize.aceEditor",t.onResize.bind(this)),"css"===t.model.attributes.language){o.addCompleter({getCompletions:function getCompletions(t,o,i,r,a){var l=[],u=o.getTokenAt(i.row,i.column);0<r.length&&"selector".match(r)&&"constant"===u.type&&(l=[{name:"selector",value:"selector",score:1,meta:"Elementor"}]),a(null,l)}})}if(t.editor.setValue(t.getControlValue(),-1),t.editor.on("change",(function(){t.setValue(t.editor.getValue())})),"html"===t.model.attributes.language){var a=t.editor.getSession();a.on("changeAnnotation",(function(){for(var t=a.getAnnotations()||[],o=t.length,i=t.length;i--;)/doctype first\. Expected/.test(t[i].text)&&t.splice(i,1);o>t.length&&a.setAnnotations(t)}))}}},onResize:function onResize(){this.editor.resize()},onDestroy:function onDestroy(){elementor.panel.$el.off("resize.aceEditor")}}),t.exports=r},12031:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67394),l=i(67971);a(o,"__esModule",{value:!0}),o.default=void 0;var u=l(i(57135)),c=l(i(35657));i(76139),i(12897),i(93085),i(44321);var d=l(i(49117)),m=l(i(74846)),p=l(i(11959)),h=l(i(39041)),g=l(i(76700)),v=l(i(44263)),y=l(i(77371)),C=l(i(68537)),b=l(i(53005)),w=l(i(65863)),k=function(t){(0,y.default)(_default,t);var o,i=(0,C.default)(_default);function _default(){return(0,p.default)(this,_default),i.apply(this,arguments)}return(0,h.default)(_default,[{key:"ui",value:function ui(){var ui=(0,g.default)((0,v.default)(_default.prototype),"ui",this).call(this);return ui.pickerContainer=".elementor-color-picker-placeholder",ui}},{key:"applySavedValue",value:function applySavedValue(){var t=this.getCurrentValue();if(this.colorPicker)if(t){var o,i=this.colorPicker.picker._parseLocalColor(t);(o=this.colorPicker.picker).setHSVA.apply(o,(0,m.default)(i.values).concat([!1]))}else this.colorPicker.picker._clearColor(!0);else this.initPicker();this.$el.toggleClass("e-control-color--no-value",!t)}},{key:"initPicker",value:function initPicker(){var t,o=this,i={picker:{el:this.ui.pickerContainer[0],default:this.getCurrentValue(),components:{opacity:this.model.get("alpha")},defaultRepresentation:"HEX"},addButton:null===(t=this.model.get("global"))||void 0===t?void 0:t.active,onChange:function onChange(){return o.onPickerChange()},onClear:function onClear(){return o.onPickerClear()},onAddButtonClick:function onAddButtonClick(){return o.onAddGlobalButtonClick()}};this.colorPicker=new w.default(i),this.$pickerButton=jQuery(this.colorPicker.picker.getRoot().button),this.addTipsyToPickerButton(),this.addEyedropper(),this.$pickerButton.on("click",(function(){return o.onPickerButtonClick()})),jQuery(this.colorPicker.picker.getRoot().root).addClass("elementor-control-unit-1 elementor-control-tag-area")}},{key:"addTipsyToPickerButton",value:function addTipsyToPickerButton(){var t=this;this.$pickerButton.tipsy({title:function title(){var o=t.getCurrentValue();return t.getGlobalKey()&&!o&&(o="".concat(r("Invalid Global Color","elementor"))),o||""},offset:4,gravity:function gravity(){return"s"}})}},{key:"addEyedropper",value:function addEyedropper(){var t=this;if(elementorCommon.config.experimentalFeatures["elements-color-picker"]){var o=jQuery(Marionette.Renderer.render("#tmpl-elementor-control-element-color-picker")),i=this.colorPicker.$pickerToolsContainer,a=this.getOption("container"),l=null;"kit"===a.document.config.type&&(l=a.document),o.tipsy({title:function title(){return r("Color Sampler","elementor")},gravity:"s"}),o.on("click",(function(){$e.run("elements-color-picker/start",{container:a,kit:l,control:t.model.get("name"),trigger:o[0]})})),i.append(o)}}},{key:"getGlobalMeta",value:function getGlobalMeta(){return{commandName:this.getGlobalCommand(),key:this.model.get("name"),controlType:"colors",route:"panel/global/global-colors"}}},{key:"getNameAlreadyExistsMessage",value:function getNameAlreadyExistsMessage(){return'<i class="eicon-info-circle"></i> '+r("Please note that the same exact color already exists in your Global Colors list. Are you sure you want to create it?","elementor")}},{key:"getConfirmTextMessage",value:function getConfirmTextMessage(){return r("Are you sure you want to create a new Global Color?","elementor")}},{key:"getAddGlobalConfirmMessage",value:function getAddGlobalConfirmMessage(t){for(var o,i=r("New Global Color","elementor"),a=this.getCurrentValue(),l=jQuery("<div>",{class:"e-global__confirm-message"}),u=jQuery("<div>",{class:"e-global__confirm-message-text"}),d=jQuery("<div>",{class:"e-global__confirm-input-wrapper"}),m=this.createColorPreviewBox(a),p=jQuery("<input>",{type:"text",name:"global-name",placeholder:i}).val(i),h=0,g=(0,c.default)(t);h<g.length;h++){var v=g[h];if(a===v.value){o=this.getNameAlreadyExistsMessage();break}if(i===v.title){o=this.getConfirmTextMessage();break}o=r("Are you sure you want to create a new Global Color?","elementor")}return u.html(o),d.append(m,p),l.append(u,d),l}},{key:"getGlobalCommand",value:function getGlobalCommand(){return"globals/colors"}},{key:"createGlobalItemMarkup",value:function createGlobalItemMarkup(t){var o=jQuery("<div>",{class:"e-global__preview-item e-global__color","data-global-id":t.id}),i=this.createColorPreviewBox(t.value),r=jQuery("<span>",{class:"e-global__color-title"}).html(t.title),a=jQuery("<span>",{class:"e-global__color-hex"}).html(t.value);return o.append(i,r,a),o}},{key:"createColorPreviewBox",value:function createColorPreviewBox(t){var o=jQuery("<div>",{class:"e-global__color-preview-container"}),i=jQuery("<div>",{class:"e-global__color-preview-color",style:"background-color: "+t}),r=jQuery("<div>",{class:"e-global__color-preview-transparent-bg"});return o.append(r,i),o}},{key:"getGlobalsList",value:(o=(0,d.default)(u.default.mark((function _callee(){var t;return u.default.wrap((function _callee$(o){for(;;)switch(o.prev=o.next){case 0:return o.next=2,$e.data.get(this.getGlobalCommand());case 2:return t=o.sent,o.abrupt("return",t.data);case 4:case"end":return o.stop()}}),_callee,this)}))),function getGlobalsList(){return o.apply(this,arguments)})},{key:"buildGlobalsList",value:function buildGlobalsList(t,o){var i=this;(0,c.default)(t).forEach((function(t){if(t.value){var r=i.createGlobalItemMarkup(t);o.append(r)}}))}},{key:"onPickerChange",value:function onPickerChange(){this.setValue(this.colorPicker.picker.getColor().toHEXA().toString()),this.isCustom||(this.triggerMethod("value:type:change"),this.colorPicker.toggleClearButtonState(!0),this.$el.hasClass("e-control-color--no-value")&&this.$el.removeClass("e-control-color--no-value"),this.isCustom=!0)}},{key:"onPickerClear",value:function onPickerClear(){this.isCustom=!1,this.setValue(""),this.triggerMethod("value:type:change"),this.applySavedValue(),this.colorPicker.toggleClearButtonState(!1)}},{key:"onPickerButtonClick",value:function onPickerButtonClick(){this.getGlobalKey()?this.triggerMethod("unset:global:value"):this.isGlobalActive()&&!this.getControlValue()&&this.getGlobalDefault()&&this.triggerMethod("unlink:global:default"),this.colorPicker.toggleClearButtonState(!!this.getCurrentValue())}},{key:"onAddGlobalButtonClick",value:function onAddGlobalButtonClick(){var t=this;this.getGlobalsList().then((function(o){t.globalsList=o,t.triggerMethod("add:global:to:list",t.getAddGlobalConfirmMessage(o))}))}},{key:"onBeforeDestroy",value:function onBeforeDestroy(){this.colorPicker&&this.colorPicker.destroy()}}]),_default}(b.default);o.default=k},91238:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(_default,t);var o=(0,d.default)(_default);function _default(){return(0,l.default)(this,_default),o.apply(this,arguments)}return(0,u.default)(_default,[{key:"onReady",value:function onReady(){var t=_.extend({enableTime:!0,minuteIncrement:1},this.model.get("picker_options"));this.ui.input.flatpickr(t)}},{key:"onBeforeDestroy",value:function onBeforeDestroy(){this.ui.input.flatpickr().destroy()}}]),_default}(i(53005));o.default=m},53261:(t,o,i)=>{"use strict";i(5251),i(64434);var r,a=i(26804);r=a.extend({ui:function ui(){var ui=a.prototype.ui.apply(this,arguments);return ui.controls=".elementor-control-dimension > input:enabled",ui.link="button.elementor-link-dimensions",ui},events:function events(){return _.extend(a.prototype.events.apply(this,arguments),{"click @ui.link":"onLinkDimensionsClicked"})},defaultDimensionValue:0,initialize:function initialize(){a.prototype.initialize.apply(this,arguments),this.model.set("allowed_dimensions",this.filterDimensions(this.model.get("allowed_dimensions")))},getPossibleDimensions:function getPossibleDimensions(){return["top","right","bottom","left"]},filterDimensions:function filterDimensions(t){t=t||"all";var o=this.getPossibleDimensions();return"all"===t?o:(_.isArray(t)||("horizontal"===t?t=["right","left"]:"vertical"===t&&(t=["top","bottom"])),t)},onReady:function onReady(){var t=this,o=t.getControlValue();t.isLinkedDimensions()||(t.ui.link.addClass("unlinked"),t.ui.controls.each((function(i,r){var a=o[r.dataset.setting];_.isEmpty(a)&&(a=t.defaultDimensionValue),t.$(r).val(a)}))),t.fillEmptyDimensions()},updateDimensionsValue:function updateDimensionsValue(){var t={},o=this.getPossibleDimensions(),i=this.ui.controls,r=this.defaultDimensionValue;o.forEach((function(o){var a=i.filter('[data-setting="'+o+'"]');t[o]=a.length?a.val():r})),this.setValue(t)},fillEmptyDimensions:function fillEmptyDimensions(){var t=this.getPossibleDimensions(),o=this.model.get("allowed_dimensions"),i=this.ui.controls,r=this.defaultDimensionValue;this.isLinkedDimensions()||t.forEach((function(t){var a=i.filter('[data-setting="'+t+'"]');-1!==_.indexOf(o,t)&&a.length&&_.isEmpty(a.val())&&a.val(r)}))},updateDimensions:function updateDimensions(){this.fillEmptyDimensions(),this.updateDimensionsValue()},resetDimensions:function resetDimensions(){this.ui.controls.val(""),this.updateDimensionsValue()},onInputChange:function onInputChange(t){var o=t.target.dataset.setting;if("unit"===o&&this.resetDimensions(),_.contains(this.getPossibleDimensions(),o)){if(this.isLinkedDimensions()){var i=this.$(t.target);this.ui.controls.val(i.val())}this.updateDimensions()}},onLinkDimensionsClicked:function onLinkDimensionsClicked(t){t.preventDefault(),t.stopPropagation(),this.ui.link.toggleClass("unlinked"),this.setValue("isLinked",!this.ui.link.hasClass("unlinked")),this.isLinkedDimensions()&&this.ui.controls.val(this.ui.controls.eq(0).val()),this.updateDimensions()},isLinkedDimensions:function isLinkedDimensions(){return this.getControlValue("isLinked")}}),t.exports=r},35634:(t,o,i)=>{"use strict";i(71954),i(76139),i(44321);var r=i(76772);t.exports=r.extend({$previewContainer:null,getSelect2Options:function getSelect2Options(){return{dir:elementorCommon.config.isRTL?"rtl":"ltr",templateSelection:this.fontPreviewTemplate,templateResult:this.fontPreviewTemplate}},onReady:function onReady(){var t=this;this.ui.select.select2(this.getSelect2Options()),this.ui.select.on("select2:open",(function(){t.$previewContainer=jQuery('.select2-results__options[role="tree"]:visible'),setTimeout((function(){t.enqueueFontsInView()}),100),jQuery("input.select2-search__field:visible").on("keyup",(function(){t.typeStopDetection.action.apply(t)})),t.$previewContainer.on("scroll",(function(){t.scrollStopDetection.onScroll.apply(t)}))}))},typeStopDetection:{idle:350,timeOut:null,action:function action(){var t=this,o=this.typeStopDetection;clearTimeout(o.timeOut),o.timeOut=setTimeout((function(){t.enqueueFontsInView()}),o.idle)}},scrollStopDetection:{idle:350,timeOut:null,onScroll:function onScroll(){var t=this,o=this.scrollStopDetection;clearTimeout(o.timeOut),o.timeOut=setTimeout((function(){t.enqueueFontsInView()}),o.idle)}},enqueueFontsInView:function enqueueFontsInView(){var t=this.$previewContainer.offset().top,o=t+this.$previewContainer.innerHeight(),i=[];this.$previewContainer.children().find("li:visible").each((function(r,a){var l=jQuery(a),u=l.offset();u&&u.top>t&&u.top<o&&i.push(l)})),i.forEach((function(t){var o=jQuery(t).find("span").html();elementor.helpers.enqueueFont(o,"editor")}))},fontPreviewTemplate:function fontPreviewTemplate(t){return t.id?jQuery("<span>",{text:t.text,css:{"font-family":t.element.value.toString()}}):t.text},templateHelpers:function templateHelpers(){var t=r.prototype.templateHelpers.apply(this,arguments),o=this.model.get("options");return t.getFontsByGroups=function(t){var i={};return _.each(o,(function(o,r){(_.isArray(t)&&_.contains(t,o)||o===t)&&(i[r]=r)})),i},t}})},13607:(t,o,i)=>{"use strict";var r,a=i(18194).sprintf,l=i(18194).__,u=i(67971)(i(40548)),c=i(53005);r=c.extend({ui:function ui(){var ui=c.prototype.ui.apply(this,arguments);return ui.addImages=".elementor-control-gallery-add",ui.clearGallery=".elementor-control-gallery-clear",ui.galleryThumbnails=".elementor-control-gallery-thumbnails",ui.status=".elementor-control-gallery-status-title",ui},events:function events(){return _.extend(c.prototype.events.apply(this,arguments),{"click @ui.addImages":"onAddImagesClick","click @ui.clearGallery":"onClearGalleryClick","click @ui.galleryThumbnails":"onGalleryThumbnailsClick"})},onReady:function onReady(){this.initRemoveDialog()},applySavedValue:function applySavedValue(){var t=this.getControlValue().length,o=!!t;this.$el.toggleClass("elementor-gallery-has-images",o).toggleClass("elementor-gallery-empty",!o);var i=this.ui.galleryThumbnails;i.empty(),this.ui.status.text(o?a(l("%s Images Selected","elementor"),t):l("No Images Selected","elementor")),o&&this.getControlValue().forEach((function(t){var o=jQuery("<div>",{class:"elementor-control-gallery-thumbnail"});o.css("background-image","url("+t.url+")"),i.append(o)}))},hasImages:function hasImages(){return!!this.getControlValue().length},openFrame:function openFrame(t){this.initFrame(t),this.frame.open(),u.default.isUploadEnabled("svg")&&u.default.setUploadTypeCaller(this.frame)},initFrame:function initFrame(t){var o={frame:"post",multiple:!0,state:{create:"gallery",add:"gallery-library",edit:"gallery-edit"}[t],button:{text:l("Insert Media","elementor")}};this.hasImages()&&(o.selection=this.fetchSelection()),this.frame=wp.media(o),this.addSvgMimeType(),this.frame.on({update:this.select,"menu:render:default":this.menuRender,"content:render:browse":this.gallerySettings},this)},addSvgMimeType:function addSvgMimeType(){if(u.default.isUploadEnabled("svg")){var t=_wpPluploadSettings.defaults.filters.mime_types[0].extensions;this.frame.on("ready",(function(){_wpPluploadSettings.defaults.filters.mime_types[0].extensions=t+",svg"})),this.frame.on("close",(function(){_wpPluploadSettings.defaults.filters.mime_types[0].extensions=t}))}},menuRender:function menuRender(t){t.unset("insert"),t.unset("featured-image")},gallerySettings:function gallerySettings(t){t.sidebar.on("ready",(function(){t.sidebar.unset("gallery")}))},fetchSelection:function fetchSelection(){var t=wp.media.query({orderby:"post__in",order:"ASC",type:"image",perPage:-1,post__in:_.pluck(this.getControlValue(),"id")});return new wp.media.model.Selection(t.models,{props:t.props.toJSON(),multiple:!0})},select:function select(t){var o=[];t.each((function(t){o.push({id:t.get("id"),url:t.get("url")})})),this.setValue(o),this.applySavedValue()},onBeforeDestroy:function onBeforeDestroy(){this.frame&&this.frame.off(),this.$el.remove()},resetGallery:function resetGallery(){this.setValue([]),this.applySavedValue()},initRemoveDialog:function initRemoveDialog(){var t;this.getRemoveDialog=function(){return t||(t=elementorCommon.dialogsManager.createWidget("confirm",{message:l("Are you sure you want to reset this gallery?","elementor"),headerMessage:l("Reset Gallery","elementor"),strings:{confirm:l("Delete","elementor"),cancel:l("Cancel","elementor")},defaultOption:"confirm",onConfirm:this.resetGallery.bind(this)})),t}},onAddImagesClick:function onAddImagesClick(){this.openFrame(this.hasImages()?"add":"create")},onClearGalleryClick:function onClearGalleryClick(){this.getRemoveDialog().show()},onGalleryThumbnailsClick:function onGalleryThumbnailsClick(){this.openFrame("edit")}}),t.exports=r},14553:(t,o,i)=>{"use strict";var r=i(67971)(i(53005));t.exports=r.default.extend({},{onPasteStyle:function onPasteStyle(){return!1}})},30750:(t,o,i)=>{"use strict";var r,a=i(76772);r=a.extend({initialize:function initialize(){a.prototype.initialize.apply(this,arguments),this.filterIcons()},filterIcons:function filterIcons(){var t=this.model.get("options"),o=this.model.get("include"),i=this.model.get("exclude");if(o){var r={};return _.each(o,(function(o){r[o]=t[o]})),void this.model.set("options",r)}i&&_.each(i,(function(o){delete t[o]}))},iconsList:function iconsList(t){return t.id?jQuery('<span><i class="'+t.id+'"></i> '+t.text+"</span>"):t.text},getSelect2Options:function getSelect2Options(){return{allowClear:!0,templateResult:this.iconsList.bind(this),templateSelection:this.iconsList.bind(this)}}}),t.exports=r},20911:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67971);i(64434);var l=a(i(11959)),u=a(i(39041)),c=a(i(76700)),d=a(i(44263)),m=a(i(77371)),p=a(i(68537)),h=a(i(40548)),g=i(87474),v=function(t){(0,m.default)(ControlIconsView,t);var o=(0,p.default)(ControlIconsView);function ControlIconsView(){var t;(0,l.default)(this,ControlIconsView);for(var i=arguments.length,r=new Array(i),a=0;a<i;a++)r[a]=arguments[a];return(t=o.call.apply(o,[this].concat(r))).cache={loaded:!1,dialog:!1,enableClicked:!1,fa4Mapping:!1,migratedFlag:{}},t.dataKeys={migratedKey:"__fa4_migrated",fa4MigrationFlag:"fa4compatibility"},t}return(0,u.default)(ControlIconsView,[{key:"enqueueIconFonts",value:function enqueueIconFonts(t){var o=elementor.helpers.getIconLibrarySettings(t);!1!==o&&this.isMigrationAllowed()&&(o.enqueue&&o.enqueue.forEach((function(t){elementor.helpers.enqueueEditorStylesheet(t),elementor.helpers.enqueuePreviewStylesheet(t)})),o.url&&(elementor.helpers.enqueueEditorStylesheet(o.url),elementor.helpers.enqueuePreviewStylesheet(o.url)))}},{key:"ui",value:function ui(){var ui=(0,c.default)((0,d.default)(ControlIconsView.prototype),"ui",this).call(this),t=this.model.get("skin");return ui.controlMedia=".elementor-control-media",ui.svgUploader="media"===t?".elementor-control-svg-uploader":".elementor-control-icons--inline__svg",ui.iconPickers="media"===t?".elementor-control-icon-picker, .elementor-control-media__preview, .elementor-control-media-upload-button":".elementor-control-icons--inline__icon",ui.deleteButton="media"===t?".elementor-control-media__remove":".elementor-control-icons--inline__none",ui.previewPlaceholder=".elementor-control-media__preview",ui.previewContainer=".elementor-control-preview-area",ui.inlineIconContainer=".elementor-control-inline-icon",ui.inlineDisplayedIcon=".elementor-control-icons--inline__displayed-icon",ui.radioInputs='[type="radio"]',ui}},{key:"events",value:function events(){return jQuery.extend(g.prototype.events.apply(this,arguments),{"click @ui.iconPickers":"openPicker","click @ui.svgUploader":"openFrame","click @ui.radioInputs":"onClickInput","click @ui.deleteButton":"deleteIcon"})}},{key:"getControlValue",value:function getControlValue(){var t=(0,c.default)((0,d.default)(ControlIconsView.prototype),"getControlValue",this).call(this),o=this.model,i=this.getValueToMigrate();if(!this.isMigrationAllowed())return i;if(!i)return t;var r=this.elementSettingsModel.get(this.dataKeys.migratedKey),a=o.get("name");return this.cache.migratedFlag[a]?this.cache.migratedFlag[a]:r&&r[a]?t:this.migrateFa4toFa5(i)}},{key:"migrateFa4toFa5",value:function migrateFa4toFa5(t){var o=elementor.helpers.mapFa4ToFa5(t);return this.cache.migratedFlag[this.model.get("name")]=o,this.enqueueIconFonts(o.library),o}},{key:"setControlAsMigrated",value:function setControlAsMigrated(t){var o=this.elementSettingsModel.get(this.dataKeys.migratedKey)||{};o[t]=!0,this.elementSettingsModel.set(this.dataKeys.migratedKey,o,{silent:!0})}},{key:"isMigrationAllowed",value:function isMigrationAllowed(){return!elementor.config.icons_update_needed}},{key:"getValueToMigrate",value:function getValueToMigrate(){var t=this.model.get(this.dataKeys.fa4MigrationFlag);if(!t)return!1;var o=this.container.settings.get(t);return o||!1}},{key:"onReady",value:function onReady(){var t=this;this.isMigrationAllowed()||("media"===this.model.get("skin")?this.ui.previewContainer[0]:this.ui.inlineIconContainer[0]).addEventListener("click",(function(t){t.preventDefault(),t.stopPropagation();return elementor.helpers.getSimpleDialog("elementor-enable-fa5-dialog",r("Elementor's New Icon Library","elementor"),r('Elementor v2.6 includes an upgrade from Font Awesome 4 to 5. In order to continue using icons, be sure to click "Update".',"elementor")+' <a href="https://go.elementor.com/fontawesome-migration/" target="_blank">'+r("Learn More","elementor")+"</a>",r("Update","elementor"),(function onConfirm(){window.location.href=elementor.config.tools_page_link+"&redirect_to="+encodeURIComponent(document.location.href)+"#tab-fontawesome4_migration"})).show(),!1}),!0);var o=this.model.get("name");this.cache.migratedFlag[o]&&(this.setControlAsMigrated(o),setTimeout((function(){t.setValue(t.cache.migratedFlag[o])}),10))}},{key:"onRender",value:function onRender(){(0,c.default)((0,d.default)(ControlIconsView.prototype),"onRender",this).call(this),this.isMigrationAllowed()&&elementor.iconManager.loadIconLibraries()}},{key:"initFrame",value:function initFrame(){var t=this;wp.media.view.settings.post.id=elementor.config.document.id,this.frame=wp.media({button:{text:r("Insert Media","elementor")},library:{type:["image/svg+xml"]},states:[new wp.media.controller.Library({title:r("Insert Media","elementor"),library:wp.media.query({type:["image/svg+xml"]}),multiple:!1,date:!1})]});this.frame.on("insert select",(function handleSelect(){return t.selectSvg()})),this.setUploadMimeType(this.frame,"svg")}},{key:"setUploadMimeType",value:function setUploadMimeType(t,o){var i=_wpPluploadSettings.defaults.filters.mime_types[0].extensions;t.on("ready",(function(){_wpPluploadSettings.defaults.filters.mime_types[0].extensions=o})),this.frame.on("close",(function(){_wpPluploadSettings.defaults.filters.mime_types[0].extensions=i}))}},{key:"selectSvg",value:function selectSvg(){this.trigger("before:select");var t=this.frame.state().get("selection").first().toJSON();t.url&&(this.setValue({value:{url:t.url,id:t.id},library:"svg"}),this.applySavedValue()),this.trigger("after:select")}},{key:"openFrame",value:function openFrame(){var t=this;if(!h.default.isUploadEnabled("svg"))return h.default.getUnfilteredFilesNotEnabledDialog((function(){return t.openFrame()})).show(),!1;this.frame||this.initFrame(),this.frame.open(),h.default.setUploadTypeCaller(this.frame);var o=this.getControlValue("id");o&&this.frame.state().get("selection").add(wp.media.attachment(o))}},{key:"openPicker",value:function openPicker(){elementor.iconManager.show({view:this})}},{key:"applySavedValue",value:function applySavedValue(){var t=this,o=this.getControlValue(),i=this.model.get("skin"),r="inline"===i?this.ui.inlineDisplayedIcon:this.ui.previewPlaceholder,a=this.model.get("default"),l=o.value,u=o.library;if(this.isMigrationAllowed()||l||!this.getValueToMigrate()||(l=this.getControlValue(),u=""),"media"===i?this.ui.controlMedia.toggleClass("elementor-media-empty",!l):this.markChecked(u),!l)return"inline"===i?void this.setDefaultIconLibraryLabel(a,r):void this.ui.previewPlaceholder.html("");if("svg"===u&&"inline"!==i)return elementor.helpers.fetchInlineSvg(l.url,(function(o){t.ui.previewPlaceholder.html(o)}));if("media"===i||"svg"!==u){var c='<i class="'+l+'"></i>';r.html(c)}this.enqueueIconFonts(u)}},{key:"setDefaultIconLibraryLabel",value:function setDefaultIconLibraryLabel(t,o){""!==t.value&&"svg"!==t.library?o.html('<i class="'+t.value+'"></i>'):o.html('<i class="eicon-circle"></i>')}},{key:"markChecked",value:function markChecked(t){if(this.ui.radioInputs.filter(":checked").prop("checked",!1),!t)return this.ui.radioInputs.filter('[value="none"]').prop("checked",!0);"svg"!==t&&(t="icon"),this.ui.radioInputs.filter('[value="'+t+'"]').prop("checked",!0)}},{key:"onClickInput",value:function onClickInput(){this.markChecked(this.getControlValue().library)}},{key:"deleteIcon",value:function deleteIcon(t){t.stopPropagation(),this.setValue({value:"",library:""}),this.applySavedValue()}},{key:"onBeforeDestroy",value:function onBeforeDestroy(){this.$el.remove()}}]),ControlIconsView}(g);t.exports=v},53736:(t,o,i)=>{"use strict";var r;r=i(87474).extend({ui:function ui(){return{inputWidth:'input[data-setting="width"]',inputHeight:'input[data-setting="height"]',btnApply:"button.elementor-image-dimensions-apply-button"}},events:function events(){return{"click @ui.btnApply":"onApplyClicked","keyup @ui.inputWidth":"onDimensionKeyUp","keyup @ui.inputHeight":"onDimensionKeyUp"}},onDimensionKeyUp:function onDimensionKeyUp(t){13===t.keyCode&&this.onApplyClicked(t)},onApplyClicked:function onApplyClicked(t){t.preventDefault(),this.setValue({width:this.ui.inputWidth.val(),height:this.ui.inputHeight.val()})}}),t.exports=r},79196:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67971);i(38081),i(99236),i(71954);var l,u=a(i(40548)),c=i(87474);l=c.extend({ui:function ui(){var ui=c.prototype.ui.apply(this,arguments);return ui.controlMedia=".elementor-control-media",ui.mediaImage=".elementor-control-media__preview",ui.mediaVideo=".elementor-control-media-video",ui.frameOpeners=".elementor-control-preview-area",ui.removeButton=".elementor-control-media__remove",ui.fileName=".elementor-control-media__file__content__info__name",ui},events:function events(){return _.extend(c.prototype.events.apply(this,arguments),{"click @ui.frameOpeners":"openFrame","click @ui.removeButton":"deleteImage"})},getMediaType:function getMediaType(){return this.mediaType||this.model.get("media_type")||this.model.get("media_types")[0]},getLibraryType:function getLibraryType(t){return t||(t=this.getMediaType()),"svg"===t?"image/svg+xml":t},applySavedValue:function applySavedValue(){var t,o=this.getControlValue("url"),i=o||(null===(t=this.getControlPlaceholder())||void 0===t?void 0:t.url),r=this.getMediaType();if(["image","svg"].includes(r))this.ui.mediaImage.css("background-image",i?"url("+i+")":""),!o&&i&&this.ui.mediaImage.css("opacity",.5);else if("video"===r)this.ui.mediaVideo.attr("src",i);else{var a=i?i.split("/").pop():"";this.ui.fileName.text(a)}this.ui.controlMedia.toggleClass("elementor-media-empty",!o)},openFrame:function openFrame(t){var o,i,r=this,a=(null==t||null===(o=t.target)||void 0===o||null===(i=o.dataset)||void 0===i?void 0:i.mediaType)||this.getMediaType();if(this.mediaType=a,a){if(!u.default.isUploadEnabled(a))return u.default.getUnfilteredFilesNotEnabledDialog((function(){return r.openFrame(t)})).show(),!1;this.frame&&this.getLibraryType(a)===this.currentLibraryType||this.initFrame(),this.frame.open(),u.default.setUploadTypeCaller(this.frame);var l=this.getControlValue("id");l&&this.frame.state().get("selection").add(wp.media.attachment(l))}},deleteImage:function deleteImage(t){t.stopPropagation(),this.setValue({url:"",id:""}),this.applySavedValue()},initFrame:function initFrame(){var t=this.getMediaType();this.currentLibraryType=this.getLibraryType(t),wp.media.view.settings.post.id=elementor.config.document.id,this.frame=wp.media({frame:"post",type:"image",multiple:!1,states:[new wp.media.controller.Library({title:r("Insert Media","elementor"),library:wp.media.query({type:this.currentLibraryType}),multiple:!1,date:!1})]}),this.frame.on("ready open",this.onFrameReady.bind(this)),this.frame.on("insert select",this.select.bind(this)),elementor.config.filesUpload.unfilteredFiles&&this.setUploadMimeType(this.frame,t)},onFrameReady:function onFrameReady(){var t=this.frame.$el;t.find(["#menu-item-insert","#menu-item-gallery","#menu-item-playlist","#menu-item-video-playlist",".embed-link-settings"].join(",")).remove(),t.css("--button-text","'".concat(r("Insert Media","elementor"),"'")),t.addClass("e-wp-media-elements-removed"),"url"===this.getControlValue("source")?(t.find("#menu-item-embed").trigger("click"),t.addClass("hide-router"),this.frame.views.get(".media-frame-content")[0].url.model.set({url:this.getControlValue("url"),alt:this.getControlValue("alt")})):t.find("#menu-item-library").trigger("click")},setUploadMimeType:function setUploadMimeType(t,o){var i=_wpPluploadSettings.defaults.filters.mime_types[0].extensions;t.on("ready",(function(){_wpPluploadSettings.defaults.filters.mime_types[0].extensions="application/json"===o?"json":i+",svg"})),this.frame.on("close",(function(){_wpPluploadSettings.defaults.filters.mime_types[0].extensions=i}))},select:function select(){this.trigger("before:select");var t,o=this.frame.state();"embed"===o.get("id")?t={url:o.props.get("url"),id:"",alt:o.props.get("alt"),source:"url"}:(t=this.frame.state().get("selection").first().toJSON()).source="library",t.url&&(this.setValue({url:t.url,id:t.id,alt:t.alt,source:t.source}),this.model.get("responsive")?this.renderWithChildren():this.applySavedValue()),this.trigger("after:select")},onBeforeDestroy:function onBeforeDestroy(){this.$el.remove()}}),t.exports=l},19598:(t,o,i)=>{"use strict";var r,a=i(53005);r=a.extend({registerValidators:function registerValidators(){a.prototype.registerValidators.apply(this,arguments);var t={},o=this.model;["min","max"].forEach((function(i){var r=o.get(i);_.isFinite(r)&&(t[i]=r)})),jQuery.isEmptyObject(t)||this.addValidator(new this.validatorTypes.Number({validationTerms:t}))}}),t.exports=r},98890:(t,o,i)=>{"use strict";var r,a=i(18194).__,l=i(87474);r=l.extend({ui:function ui(){var ui=l.prototype.ui.apply(this,arguments);return ui.reverseOrderLabel=".elementor-control-order-label",ui},changeLabelTitle:function changeLabelTitle(){var t=this.getControlValue("reverse_order");this.ui.reverseOrderLabel.attr("title",a(t?"Ascending order":"Descending order","elementor"))},onRender:function onRender(){l.prototype.onRender.apply(this,arguments),this.changeLabelTitle()},onInputChange:function onInputChange(){this.changeLabelTitle()}}),t.exports=r},7699:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67394),l=i(67971);a(o,"__esModule",{value:!0}),o.default=void 0;var u=l(i(57135));i(65942),i(84208),i(3777),i(38081);var c=l(i(38923)),d=l(i(35657)),m=l(i(49117)),p=l(i(47834)),h=l(i(11959)),g=l(i(39041)),v=l(i(77371)),y=l(i(68537)),C=i(11292),b=function(t){(0,v.default)(ControlPopoverStarterView,t);var o,i=(0,y.default)(ControlPopoverStarterView);function ControlPopoverStarterView(){return(0,h.default)(this,ControlPopoverStarterView),i.apply(this,arguments)}return(0,g.default)(ControlPopoverStarterView,[{key:"ui",value:function ui(){var ui=C.prototype.ui.apply(this,arguments);return ui.popoverToggle=".elementor-control-popover-toggle-toggle",ui.resetInput=".elementor-control-popover-toggle-reset",ui}},{key:"events",value:function events(){return _.extend(C.prototype.events.apply(this,arguments),{"click @ui.popoverToggle":"onPopoverToggleClick","click @ui.resetInput":"onResetInputClick"})}},{key:"onResetInputClick",value:function onResetInputClick(){var t=this.model.get("global");null!=t&&t.active&&this.triggerMethod("value:type:change")}},{key:"onInputChange",value:function onInputChange(t){t.currentTarget===this.ui.popoverToggle[0]&&(this.getGlobalKey()?this.triggerMethod("unset:global:value"):this.isGlobalActive()&&this.triggerMethod("value:type:change"))}},{key:"onPopoverToggleClick",value:function onPopoverToggleClick(){this.isGlobalActive()&&!this.getControlValue()&&!this.getGlobalKey()&&this.getGlobalDefault()&&this.triggerMethod("unlink:global:default"),this.$el.next(".elementor-controls-popover").toggle()}},{key:"getGlobalCommand",value:function getGlobalCommand(){return"globals/typography"}},{key:"buildPreviewItemCSS",value:function buildPreviewItemCSS(t){var o={};return(0,c.default)(t).forEach((function(t){var i=(0,p.default)(t,2),r=i[0],a=i[1];a&&""!==a.size&&(r.startsWith("typography_")&&(r=r.replace("typography_","")),"font_family"===r&&elementor.helpers.enqueueFont(a,"editor"),"font_size"===r?(a.size>40&&(a.size=40),o.fontSize=a.size+a.unit):(r.includes("_")&&(r=r.replace(/([_][a-z])/g,(function(t){return t.toUpperCase().replace("_","")}))),o[r]=a))})),o}},{key:"createGlobalItemMarkup",value:function createGlobalItemMarkup(t){var o=jQuery("<div>",{class:"e-global__preview-item e-global__typography","data-global-id":t.id});return o.html(t.title).css(this.buildPreviewItemCSS(t.value)),o}},{key:"getGlobalMeta",value:function getGlobalMeta(){return{commandName:this.getGlobalCommand(),key:this.model.get("name"),title:r("New Typography Setting","elementor"),controlType:"typography",route:"panel/global/global-typography"}}},{key:"getAddGlobalConfirmMessage",value:function getAddGlobalConfirmMessage(){var t=this.getGlobalMeta(),o=jQuery("<div>",{class:"e-global__confirm-message"}),i=jQuery("<div>").html(r("Are you sure you want to create a new Global Font setting?","elementor")),a=jQuery("<div>",{class:"e-global__confirm-input-wrapper"}),l=jQuery("<input>",{type:"text",name:"global-name",placeholder:t.title}).val(t.title);return a.append(l),o.append(i,a),o}},{key:"getGlobalsList",value:(o=(0,m.default)(u.default.mark((function _callee(){var t;return u.default.wrap((function _callee$(o){for(;;)switch(o.prev=o.next){case 0:return o.next=2,$e.data.get(this.getGlobalCommand());case 2:return t=o.sent,o.abrupt("return",t.data);case 4:case"end":return o.stop()}}),_callee,this)}))),function getGlobalsList(){return o.apply(this,arguments)})},{key:"buildGlobalsList",value:function buildGlobalsList(t,o){var i=this;(0,d.default)(t).forEach((function(t){if(t){var r=i.createGlobalItemMarkup(t);o.append(r)}}))}},{key:"onAddGlobalButtonClick",value:function onAddGlobalButtonClick(){this.triggerMethod("add:global:to:list",this.getAddGlobalConfirmMessage())}}]),ControlPopoverStarterView}(C);o.default=b,b.onPasteStyle=function(t,o){return!o||o===t.return_value}},98550:(t,o,i)=>{"use strict";var r=i(18194).sprintf,a=i(18194).__,l=i(67971);i(76139),i(12897),i(93085);var u=l(i(99533));t.exports=Marionette.CompositeView.extend({template:Marionette.TemplateCache.get("#tmpl-elementor-repeater-row"),className:"elementor-repeater-fields",ui:{duplicateButton:".elementor-repeater-tool-duplicate",editButton:".elementor-repeater-tool-edit",removeButton:".elementor-repeater-tool-remove",itemTitle:".elementor-repeater-row-item-title"},behaviors:{HandleInnerTabs:{behaviorClass:i(10367)}},triggers:{"click @ui.removeButton":"click:remove","click @ui.duplicateButton":"click:duplicate","click @ui.itemTitle":"click:edit"},modelEvents:{change:"onModelChange"},templateHelpers:function templateHelpers(){return{itemIndex:this.getOption("itemIndex"),itemActions:this.getOption("itemActions")}},childViewContainer:".elementor-repeater-row-controls",getChildView:function getChildView(t){var o=t.get("type");return elementor.getControlView(o)},childViewOptions:function childViewOptions(){return{container:this.options.container}},updateIndex:function updateIndex(t){this.itemIndex=t},setTitle:function setTitle(){var t=this.getOption("titleField"),o="";t&&(o=Marionette.TemplateCache.prototype.compileTemplate(t)(this.model.parseDynamicSettings())),o||(o=r(a("Item #%s","elementor"),this.getOption("itemIndex"))),this.ui.itemTitle.html(o)},toggleSort:function toggleSort(t){this.$el.toggleClass("elementor-repeater-row--disable-sort",!t)},initialize:function initialize(t){this.itemIndex=0,this.collection=new Backbone.Collection(_.values(elementor.mergeControlsSettings(t.controlFields)))},onRender:function onRender(){this.setTitle(),u.default.handlePopovers(this)},onModelChange:function onModelChange(){this.getOption("titleField")&&this.setTitle()},onChildviewResponsiveSwitcherClick:function onChildviewResponsiveSwitcherClick(t,o){"desktop"===o&&elementor.getPanelView().getCurrentPageView().$el.toggleClass("elementor-responsive-switchers-open")}})},1142:(t,o,i)=>{"use strict";i(71954),i(64434),i(99745);var r,a=i(53005),l=i(98550);r=a.extend({ui:{btnAddRow:".elementor-repeater-add",fieldContainer:".elementor-repeater-fields-wrapper"},events:function events(){return{"click @ui.btnAddRow":"onButtonAddRowClick","sortstart @ui.fieldContainer":"onSortStart","sortupdate @ui.fieldContainer":"onSortUpdate","sortstop @ui.fieldContainer":"onSortStop"}},childView:l,childViewContainer:".elementor-repeater-fields-wrapper",templateHelpers:function templateHelpers(){return{itemActions:this.model.get("item_actions"),data:_.extend({},this.model.toJSON(),{controlValue:[]})}},childViewOptions:function childViewOptions(t,o){return{container:this.getOption("container").repeaters[this.model.get("name")].children[o],controlFields:this.model.get("fields"),titleField:this.model.get("title_field"),itemActions:this.model.get("item_actions")}},createItemModel:function createItemModel(t,o,i){return o.controls=i.model.get("fields"),new elementorModules.editor.elements.models.BaseSettings(t,o)},fillCollection:function fillCollection(){var t=this.container?this.container.settings:this.elementSettingsModel,o=this.model.get("name");this.collection=t.get(o),this.collection instanceof Backbone.Collection||(this.collection=new Backbone.Collection(this.collection,{model:_.partial(this.createItemModel,_,_,this)}),t.set(o,this.collection,{silent:!0}))},initialize:function initialize(){a.prototype.initialize.apply(this,arguments),this.fillCollection(),this.listenTo(this.collection,"reset",this.resetContainer.bind(this)),this.listenTo(this.collection,"add",this.updateContainer.bind(this))},editRow:function editRow(t){if(this.currentEditableChild){var o=this.currentEditableChild.getChildViewContainer(this.currentEditableChild);o.removeClass("editable"),o.find(".elementor-wp-editor").each((function(){tinymce.get(this.id).fire("hide")}))}this.currentEditableChild!==t?(t.getChildViewContainer(t).addClass("editable"),this.currentEditableChild=t,this.updateActiveRow()):delete this.currentEditableChild},toggleMinRowsClass:function toggleMinRowsClass(){this.model.get("prevent_empty")&&this.$el.toggleClass("elementor-repeater-has-minimum-rows",1>=this.collection.length)},updateActiveRow:function updateActiveRow(){var t=1;this.currentEditableChild&&(t=this.currentEditableChild.itemIndex),this.setEditSetting("activeItemIndex",t)},updateChildIndexes:function updateChildIndexes(){var t=this.collection;this.children.each((function(o){o.updateIndex(t.indexOf(o.model)+1),o.setTitle()}))},onRender:function onRender(){a.prototype.onRender.apply(this,arguments),this.model.get("item_actions").sort&&this.ui.fieldContainer.sortable({axis:"y",handle:".elementor-repeater-row-tools",items:" > :not(.elementor-repeater-row--disable-sort)"}),this.toggleMinRowsClass()},onSortStart:function onSortStart(t,o){o.item.data("oldIndex",o.item.index())},onSortStop:function onSortStop(t,o){var i=this;if(-1!==o.item.index()){var r=i.children.findByIndex(o.item.index()),a=r.children._views;jQuery.each(a,(function(){if("wysiwyg"===this.model.get("type"))return r.render(),delete i.currentEditableChild,!1}))}},onSortUpdate:function onSortUpdate(t,o){var i=o.item.data("oldIndex"),r=o.item.index();$e.run("document/repeater/move",{container:this.options.container,name:this.model.get("name"),sourceIndex:i,targetIndex:r})},onAddChild:function onAddChild(){this.updateChildIndexes(),this.updateActiveRow()},updateContainer:function updateContainer(t){this.options.container.repeaters[this.model.get("name")].children.filter((function(o){return o.id===t.get("_id")})).length||(elementorCommon.helpers.softDeprecated("Don't add models directly to the repeater.","3.0.0","$e.run( 'document/repeater/insert' )"),this.options.container.addRepeaterItem(this.model.get("name"),t,t.collection.indexOf(t)))},resetContainer:function resetContainer(){elementorCommon.helpers.softDeprecated("Don't reset repeater collection directly.","3.0.0","$e.run( 'document/repeater/remove' )"),this.options.container.repeaters[this.model.get("name")].children=[]},getDefaults:function getDefaults(){var t={};return _.each(this.model.get("fields"),(function(o){t[o.name]=o.default})),t},onButtonAddRowClick:function onButtonAddRowClick(){var t=$e.run("document/repeater/insert",{container:this.options.container,name:this.model.get("name"),model:this.getDefaults()}),o=this.children.findByModel(t);this.editRow(o),this.toggleMinRowsClass()},onChildviewClickRemove:function onChildviewClickRemove(t){t===this.currentEditableChild&&delete this.currentEditableChild,$e.run("document/repeater/remove",{container:this.options.container,name:this.model.get("name"),index:t._index}),this.updateActiveRow(),this.updateChildIndexes(),this.toggleMinRowsClass()},onChildviewClickDuplicate:function onChildviewClickDuplicate(t){$e.run("document/repeater/duplicate",{container:this.options.container,name:this.model.get("name"),index:t._index}),this.toggleMinRowsClass()},onChildviewClickEdit:function onChildviewClickEdit(t){this.editRow(t)},onAfterExternalChange:function onAfterExternalChange(){this.fillCollection(),a.prototype.onAfterExternalChange.apply(this,arguments)}}),t.exports=r},37199:(t,o,i)=>{"use strict";var r,a=i(15584);r=a.extend({ui:function ui(){var ui=a.prototype.ui.apply(this,arguments);return ui.heading=".elementor-panel-heading",ui},triggers:{click:"control:section:clicked"}}),t.exports=r},88402:(t,o,i)=>{"use strict";i(71954);var r,a=i(53005);r=a.extend({updatePlaceholder:function updatePlaceholder(){var t=this.ui.select,o=t.find("option:selected");""!==o.val()||o.hasClass("e-option-placeholder")||(o=t.find(".e-option-placeholder")).prop("selected",!0),o.hasClass("e-option-placeholder")?t.addClass("e-select-placeholder"):t.removeClass("e-select-placeholder")},onReady:function onReady(){var t=this.getControlPlaceholder();t&&jQuery("<option>").val("").text(this.model.get("options")[t]).addClass("e-option-placeholder").prependTo(this.ui.select),this.updatePlaceholder()},onInputChange:function onInputChange(){this.updatePlaceholder()}},{onPasteStyle:function onPasteStyle(t,o){return t.groups?t.groups.some((function(t){return r.onPasteStyle(t,o)})):void 0!==t.options[o]}}),t.exports=r},76772:(t,o,i)=>{"use strict";var r=i(67971);i(71954),i(3777),i(38081);var a,l=r(i(91795)),u=i(53005);a=u.extend({getSelect2Placeholder:function getSelect2Placeholder(){return this.ui.select.find('[value="'.concat(this.getControlPlaceholder(),'"]')).text()||this.ui.select.children('option:first[value=""]').text()},getSelect2DefaultOptions:function getSelect2DefaultOptions(){var t={allowClear:!0,placeholder:this.getSelect2Placeholder(),dir:elementorCommon.config.isRTL?"rtl":"ltr"},o=this.model.get("lockedOptions");return o&&(t.templateSelection=function(t,i){return o.includes(t.id)&&jQuery(i).addClass("e-non-deletable").find(".select2-selection__choice__remove").remove(),t.text}),t},getSelect2Options:function getSelect2Options(){return jQuery.extend(this.getSelect2DefaultOptions(),this.model.get("select2options"))},updatePlaceholder:function updatePlaceholder(){this.getControlPlaceholder()&&this.select2Instance.elements.$container.find(".select2-selection__placeholder").addClass("e-select2-placeholder")},applySavedValue:function applySavedValue(){u.prototype.applySavedValue.apply(this,arguments);var t=this.ui.select.data("select2");t?this.ui.select.trigger("change"):(this.select2Instance=new l.default({$element:this.ui.select,options:this.getSelect2Options()}),this.updatePlaceholder(),this.handleLockedOptions())},handleLockedOptions:function handleLockedOptions(){var t=this.model.get("lockedOptions");t&&this.ui.select.on("select2:unselecting",(function(o){t.includes(o.params.args.data.id)&&o.preventDefault()}))},onReady:function onReady(){elementorCommon.helpers.softDeprecated("onReady","3.0.0")},onBaseInputChange:function onBaseInputChange(){u.prototype.onBaseInputChange.apply(this,arguments),this.updatePlaceholder()},onBeforeDestroy:function onBeforeDestroy(){this.select2Instance.destroy(),this.$el.remove()}}),t.exports=a},17881:(t,o,i)=>{"use strict";var r,a=i(67971),l=a(i(35657)),u=a(i(83452)),c=i(26804);r=c.extend({ui:function ui(){var ui=c.prototype.ui.apply(this,arguments);return ui.slider=".elementor-slider",ui},templateHelpers:function templateHelpers(){var templateHelpers=c.prototype.templateHelpers.apply(this,arguments);return templateHelpers.isMultiple=this.isMultiple(),templateHelpers},isMultiple:function isMultiple(){var t=this.getControlValue("sizes");return!jQuery.isEmptyObject(t)},initSlider:function initSlider(){if(this.ui.slider[0]){this.destroySlider();var t,o=this.isMultiple(),i=elementorCommon.helpers.cloneObject(this.getCurrentRange()),r=i.step,a=this.getSize();o?a=(0,l.default)(a):(a=[a],this.ui.input.attr(i)),delete i.step;var u=this;o&&(t=[],a.forEach((function(){return t.push({to:function to(t){return t+u.getControlValue("unit")}})}))),noUiSlider.create(this.ui.slider[0],{start:a,range:i,step:r,tooltips:t,connect:o,format:{to:function to(t){return Math.round(1e3*t)/1e3},from:function from(t){return+t}}}).on("slide",this.onSlideChange.bind(this))}},applySavedValue:function applySavedValue(){c.prototype.applySavedValue.apply(this,arguments),this.ui.slider[0]&&this.ui.slider[0].noUiSlider&&this.ui.slider[0].noUiSlider.set(this.getSize())},getSize:function getSize(){var t,o,i=this.isMultiple()?"sizes":"size";return this.getControlValue(i)||(null===(t=this.getControlPlaceholder())||void 0===t?void 0:t[i])||(null===(o=this.model.get("default"))||void 0===o?void 0:o[i])},resetSize:function resetSize(){this.isMultiple()?this.setValue("sizes",{}):this.setValue("size",""),this.initSlider()},destroySlider:function destroySlider(){this.ui.slider[0]&&this.ui.slider[0].noUiSlider&&this.ui.slider[0].noUiSlider.destroy()},onReady:function onReady(){this.isMultiple()&&this.$el.addClass("elementor-control-type-slider--multiple elementor-control-type-slider--handles-"+this.model.get("handles")),this.initSlider()},onSlideChange:function onSlideChange(t,o){if(this.isMultiple()){var i=elementorCommon.helpers.cloneObject(this.getSize());i[(0,u.default)(i)[o]]=t[o],this.setValue("sizes",i)}else this.setValue("size",t[0]),this.ui.input.val(t[0])},onInputChange:function onInputChange(t){var o=t.currentTarget.dataset.setting;"size"===o?this.ui.slider[0].noUiSlider.set(this.getSize()):"unit"===o&&this.resetSize()},onBeforeDestroy:function onBeforeDestroy(){this.destroySlider(),this.$el.remove()}}),t.exports=r},14958:(t,o,i)=>{"use strict";var r,a=i(53005);r=a.extend({ui:function ui(){var ui=a.prototype.ui.apply(this,arguments);return ui.resetStructure=".elementor-control-structure-reset",ui},events:function events(){return _.extend(a.prototype.events.apply(this,arguments),{"click @ui.resetStructure":"onResetStructureClick"})},templateHelpers:function templateHelpers(){var t=a.prototype.templateHelpers.apply(this,arguments);return t.getMorePresets=this.getMorePresets.bind(this),t},getCurrentEditedSection:function getCurrentEditedSection(){return elementor.getPanelView().getCurrentPageView().getOption("editedElementView")},getMorePresets:function getMorePresets(){var t=elementor.presetsFactory.getParsedStructure(this.getControlValue());return elementor.presetsFactory.getPresets(t.columnsCount)},onResetStructureClick:function onResetStructureClick(){this.getCurrentEditedSection().resetColumnsCustomSize()}}),t.exports=r},4073:(t,o,i)=>{"use strict";var r=i(53005);t.exports=r.extend({setInputValue:function setInputValue(t,o){this.$(t).prop("checked",this.model.get("return_value")===o)}},{onPasteStyle:function onPasteStyle(t,o){return!o||o===t.return_value}})},83067:(t,o,i)=>{"use strict";var r;r=i(15584).extend({triggers:{click:{event:"control:tab:clicked",stopPropagation:!1}}}),t.exports=r},57330:(t,o,i)=>{"use strict";var r=i(67971),a=r(i(11959)),l=r(i(39041)),u=r(i(76700)),c=r(i(44263)),d=r(i(77371)),m=r(i(68537)),p=function(t){(0,d.default)(URL,t);var o=(0,m.default)(URL);function URL(){return(0,a.default)(this,URL),o.apply(this,arguments)}return(0,l.default)(URL,[{key:"ui",value:function ui(){var ui=(0,u.default)((0,c.default)(URL.prototype),"ui",this).call(this);return ui.mainInput=".elementor-input",ui.moreOptionsToggle=".elementor-control-url-more",ui.moreOptions=".elementor-control-url-more-options",ui}},{key:"events",value:function events(){var events=(0,u.default)((0,c.default)(URL.prototype),"events",this).call(this);return events["click @ui.moreOptionsToggle"]="onMoreOptionsToggleClick",events}},{key:"autoComplete",value:function autoComplete(){var t,o,i=this,r=this.ui.mainInput,a=elementorCommon.config.isRTL?"right":"left";r.autocomplete({source:function source(a,l){if(i.options.model.attributes.autocomplete)if(t!==a.term){if(/^https?:/.test(a.term)||-1!==a.term.indexOf("."))return l();r.prev().show(),jQuery.post(window.ajaxurl,{editor:"elementor",action:"wp-link-ajax",page:1,search:a.term,_ajax_linking_nonce:jQuery("#_ajax_linking_nonce").val()},(function(t){o=t,l(t)}),"json").always((function(){return r.prev().hide()})),t=a.term}else l(o)},focus:function focus(t){t.preventDefault()},select:function select(t,o){return r.val(o.item.permalink),i.setValue("url",o.item.permalink),!1},open:function open(t){jQuery(t.target).data("uiAutocomplete").menu.activeMenu.addClass("elementor-autocomplete-menu")},minLength:2,position:{my:a+" top+2",at:a+" bottom"}}),r.autocomplete("instance")._renderItem=function(t,o){var i=window.wpLinkL10n?window.wpLinkL10n.noTitle:"",r=o.title?o.title:i;return jQuery('<li role="option" id="mce-wp-autocomplete-'+o.ID+'">').append("<span>"+r+'</span>&nbsp;<span class="elementor-autocomplete-item-info">'+o.info+"</span>").appendTo(t)}}},{key:"onReady",value:function onReady(){this.autoComplete()}},{key:"onMoreOptionsToggleClick",value:function onMoreOptionsToggleClick(){this.ui.moreOptions.slideToggle()}},{key:"onBeforeDestroy",value:function onBeforeDestroy(){this.ui.mainInput.data("autocomplete")&&this.ui.mainInput.autocomplete("destroy"),this.$el.remove()}}]),URL}(i(87474));t.exports=p},30437:(t,o,i)=>{"use strict";var r,a=i(53005);r=a.extend({ui:function ui(){var ui=a.prototype.ui.apply(this,arguments);return ui.form="form",ui.loading=".wp-widget-form-loading",ui},events:function events(){return{"keyup @ui.form :input":"onFormChanged","change @ui.form :input":"onFormChanged"}},onFormChanged:function onFormChanged(){var t="widget-"+this.model.get("id_base"),o=this.ui.form.elementorSerializeObject()[t].REPLACE_TO_ID;this.setValue(o)},onReady:function onReady(){var t=this;elementorCommon.ajax.addRequest("editor_get_wp_widget_form",{data:{id:t.model.cid,widget_type:t.model.get("widget"),data:t.container.settings.toJSON()},success:function success(o){if(t.ui.form.html(o),wp.textWidgets){t.ui.form.addClass("open");var i=new jQuery.Event("widget-added");wp.textWidgets.handleWidgetAdded(i,t.ui.form),wp.mediaWidgets.handleWidgetAdded(i,t.ui.form),wp.customHtmlWidgets&&wp.customHtmlWidgets.handleWidgetAdded(i,t.ui.form)}var r=t.model.get("widget");elementor.hooks.doAction("panel/widgets/".concat(r,"/controls/wp_widget/loaded"),t)}})}}),t.exports=r},58326:(t,o,i)=>{"use strict";i(99236),i(84208),i(71954);var r,a=i(53005);r=a.extend({editor:null,ui:function ui(){var ui=a.prototype.ui.apply(this,arguments);return jQuery.extend(ui,{inputWrapper:".elementor-control-input-wrapper"}),ui},events:function events(){return _.extend(a.prototype.events.apply(this,arguments),{"keyup textarea.elementor-wp-editor":"onBaseInputChange"})},buttons:{addToBasic:{underline:"italic"},addToAdvanced:{},moveToAdvanced:{blockquote:"removeformat",alignleft:"blockquote",aligncenter:"alignleft",alignright:"aligncenter"},moveToBasic:{},removeFromBasic:["unlink","wp_more"],removeFromAdvanced:[]},initialize:function initialize(){a.prototype.initialize.apply(this,arguments);var t=this;if(t.editorID="elementorwpeditor"+t.cid,_.defer((function(){t.isDestroyed||(quicktags({buttons:"strong,em,del,link,img,close",id:t.editorID}),elementor.config.rich_editing_enabled&&switchEditors.go(t.editorID,"tmce"),delete QTags.instances[0])})),elementor.config.rich_editing_enabled){var o={id:t.editorID,selector:"#"+t.editorID,setup:function setup(o){t.editor=o}};tinyMCEPreInit.mceInit[t.editorID]=_.extend(_.clone(tinyMCEPreInit.mceInit.elementorwpeditor),o),elementor.config.tinymceHasCustomConfig||t.rearrangeButtons()}else t.$el.addClass("elementor-rich-editing-disabled")},applySavedValue:function applySavedValue(){if(this.editor){var t=this.getControlValue();this.editor.setContent(t),jQuery("#"+this.editorID).val(t)}},saveEditor:function saveEditor(){this.setValue(this.editor.getContent())},moveButtons:function moveButtons(t,o,i){i||(i=o,o=null),_.each(t,(function(t,r){var a=i.indexOf(t);if(o){var l=o.indexOf(r);if(-1===l)throw new ReferenceError("Trying to move non-existing button `"+r+"`");o.splice(l,1)}if(-1===a)throw new ReferenceError("Trying to move button after non-existing button `"+t+"`");i.splice(a+1,0,r)}))},rearrangeButtons:function rearrangeButtons(){var t=tinyMCEPreInit.mceInit[this.editorID],o=t.toolbar1.split(","),i=t.toolbar2.split(",");o=_.difference(o,this.buttons.removeFromBasic),i=_.difference(i,this.buttons.removeFromAdvanced),this.moveButtons(this.buttons.moveToBasic,i,o),this.moveButtons(this.buttons.moveToAdvanced,o,i),this.moveButtons(this.buttons.addToBasic,o),this.moveButtons(this.buttons.addToAdvanced,i),t.toolbar1=o.join(","),t.toolbar2=i.join(",")},onReady:function onReady(){var t=this,o=jQuery(elementor.config.wp_editor.replace(/elementorwpeditor/g,this.editorID).replace("%%EDITORCONTENT%%",this.getControlValue()));o.find(".wp-editor-tabs").addClass("elementor-control-dynamic-switcher-wrapper"),this.ui.inputWrapper.html(o),setTimeout((function(){!t.isDestroyed&&t.editor&&t.editor.on("keyup change undo redo",t.saveEditor.bind(t))}),100)},onBeforeDestroy:function onBeforeDestroy(){delete QTags.instances[this.editorID],elementor.config.rich_editing_enabled&&(tinymce.EditorManager.execCommand("mceRemoveEditor",!0,this.editorID),delete tinyMCEPreInit.mceInit[this.editorID],delete tinyMCEPreInit.qtInit[this.editorID])}}),t.exports=r},66429:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var l=a(i(39041)),u=a(i(11959)),c=a(i(18042)),d=a(i(48673)),m=a(i(11666)),p=function Editor(){(0,u.default)(this,Editor),(0,c.default)(this,"status","closed"),(0,c.default)(this,"isSaving",!1),(0,c.default)(this,"isChanged",!1),(0,c.default)(this,"isChangedDuringSave",!1),(0,c.default)(this,"isSaved",!0),(0,c.default)(this,"lastSaveHistoryId",0)},h=function(){function Document(t){(0,u.default)(this,Document),(0,c.default)(this,"id",null),(0,c.default)(this,"history",null),(0,c.default)(this,"revisions",null),(0,c.default)(this,"container",null),(0,c.default)(this,"editor",new p),this.config=t,this.id=t.id,this.history=new d.default(this),this.revisions=new m.default(this)}return(0,l.default)(Document,[{key:"isDraft",value:function isDraft(){return this.config.revisions.current_id!==this.config.id}}]),Document}();o.default=h},72465:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var l=a(i(11959)),u=a(i(39041)),c=function(){function BackwardsCompatibility(){(0,l.default)(this,BackwardsCompatibility)}return(0,u.default)(BackwardsCompatibility,null,[{key:"findViewRecursive",value:function findViewRecursive(t,o,i){var r=!(arguments.length>3&&void 0!==arguments[3])||arguments[3];return elementorCommon.helpers.softDeprecated("findViewRecursive","2.9.0","$e.components.get( 'document' ).utils.findViewRecursive( parent, key, value, multiple )"),$e.components.get("document").utils.findViewRecursive(t,o,i,r)}},{key:"findViewById",value:function findViewById(t){return elementorCommon.helpers.softDeprecated("findViewById","2.9.0","$e.components.get( 'document' ).utils.findViewById( id )"),$e.components.get("document").utils.findViewById(t)}},{key:"findContainerById",value:function findContainerById(t){return elementorCommon.helpers.softDeprecated("findContainerById","2.9.0","$e.components.get( 'document' ).utils.findContainerById( id )"),$e.components.get("document").utils.findContainerById(t)}},{key:"isValidChild",value:function isValidChild(t,o){return elementorCommon.helpers.softDeprecated("isValidChild","3.4.0","$e.components.get( 'document/elements' ).utils.isValidChild( childModel, parentModel )"),$e.components.get("document/elements").utils.isValidChild(t,o)}},{key:"isValidGrandChild",value:function isValidGrandChild(t,o){return elementorCommon.helpers.softDeprecated("isValidGrandChild","3.4.0","$e.components.get( 'document/elements' ).utils.isValidGrandChild( childModel, targetContainer )"),$e.components.get("document/elements").utils.isValidGrandChild(t,o)}},{key:"isSameElement",value:function isSameElement(t,o){return elementorCommon.helpers.softDeprecated("isSameElement","3.4.0","$e.components.get( 'document/elements' ).utils.isSameElement( sourceModel, targetContainer )"),$e.components.get("document/elements").utils.isSameElement(t,o)}},{key:"getPasteOptions",value:function getPasteOptions(t,o){return elementorCommon.helpers.softDeprecated("getPasteOptions","3.4.0","$e.components.get( 'document/elements' ).utils.getPasteOptions( sourceModel, targetContainer )"),$e.components.get("document/elements").utils.getPasteOptions(t,o)}},{key:"isPasteEnabled",value:function isPasteEnabled(t){return elementorCommon.helpers.softDeprecated("isPasteEnabled","3.4.0","$e.components.get( 'document/elements' ).utils.isPasteEnabled( targetContainer )"),$e.components.get("document/elements").utils.isPasteEnabled(t)}}]),BackwardsCompatibility}();o.default=c},95573:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.Do=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(Do,t);var o=(0,d.default)(Do);function Do(){return(0,l.default)(this,Do),o.apply(this,arguments)}return(0,u.default)(Do,[{key:"apply",value:function apply(t){var o=t.index;return elementor.documents.getCurrent().history.doItem(o)}}]),Do}(a(i(68689)).default);o.Do=m;var p=m;o.default=p},58410:(t,o,i)=>{"use strict";var r=i(67394);r(o,"__esModule",{value:!0}),r(o,"Do",{enumerable:!0,get:function get(){return a.Do}}),r(o,"Redo",{enumerable:!0,get:function get(){return l.Redo}}),r(o,"Undo",{enumerable:!0,get:function get(){return u.Undo}}),r(o,"UndoAll",{enumerable:!0,get:function get(){return c.UndoAll}});var a=i(95573),l=i(91976),u=i(85156),c=i(34245)},91976:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.Redo=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(Redo,t);var o=(0,d.default)(Redo);function Redo(){return(0,l.default)(this,Redo),o.apply(this,arguments)}return(0,u.default)(Redo,[{key:"apply",value:function apply(){elementor.documents.getCurrent().history.navigate(!0)}}]),Redo}(a(i(68689)).default);o.Redo=m;var p=m;o.default=p},34245:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.UndoAll=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(UndoAll,t);var o=(0,d.default)(UndoAll);function UndoAll(){return(0,l.default)(this,UndoAll),o.apply(this,arguments)}return(0,u.default)(UndoAll,[{key:"apply",value:function apply(t){var o=t.document;o.history.doItem(o.history.getItems().length-1)}}]),UndoAll}(a(i(68689)).default);o.UndoAll=m;var p=m;o.default=p},85156:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.Undo=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(Undo,t);var o=(0,d.default)(Undo);function Undo(){return(0,l.default)(this,Undo),o.apply(this,arguments)}return(0,u.default)(Undo,[{key:"apply",value:function apply(){elementor.documents.getCurrent().history.navigate()}}]),Undo}(a(i(68689)).default);o.Undo=m;var p=m;o.default=p},27401:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67971);i(71954);var l=a(i(11959)),u=a(i(39041)),c=a(i(38852)),d=a(i(77371)),m=a(i(68537)),p=a(i(18042));t.exports=function(t){(0,d.default)(FooterSaver,t);var o=(0,m.default)(FooterSaver);function FooterSaver(){var t;(0,l.default)(this,FooterSaver);for(var i=arguments.length,r=new Array(i),a=0;a<i;a++)r[a]=arguments[a];return t=o.call.apply(o,[this].concat(r)),(0,p.default)((0,c.default)(t),"previewWindow",null),t}return(0,u.default)(FooterSaver,[{key:"ui",value:function ui(){return{buttonPreview:"#elementor-panel-footer-saver-preview",buttonPublish:"#elementor-panel-saver-button-publish",buttonSaveOptions:"#elementor-panel-saver-button-save-options",buttonPublishLabel:"#elementor-panel-saver-button-publish-label",menuSaveDraft:"#elementor-panel-footer-sub-menu-item-save-draft",lastEditedWrapper:".elementor-last-edited-wrapper"}}},{key:"events",value:function events(){return{"click @ui.buttonPreview":"onClickButtonPreview","click @ui.buttonPublish":"onClickButtonPublish","click @ui.menuSaveDraft":"onClickMenuSaveDraft"}}},{key:"initialize",value:function initialize(t){var o=this;this.document=t.document||elementor.documents.getCurrent(),elementor.on("document:loaded",(function(t){o.setMenuItems(t),o.setLastEdited(t.config.last_edited)})),$e.components.get("document/save").footerSaver=this}},{key:"activateSaveButtons",value:function activateSaveButtons(t,o){var i=o||"draft"===t.container.settings.get("post_status");this.ui.buttonPublish.add(this.ui.menuSaveDraft).toggleClass("elementor-disabled",!i),this.ui.buttonSaveOptions.toggleClass("elementor-disabled",!i)}},{key:"onRender",value:function onRender(){this.addTooltip()}},{key:"setLastEdited",value:function setLastEdited(t){this.ui.lastEditedWrapper.removeClass("elementor-button-state").find(".elementor-last-edited").html(t)}},{key:"onClickButtonPreview",value:function onClickButtonPreview(){$e.run("editor/documents/preview",{id:elementor.documents.getCurrent().id})}},{key:"onClickButtonPublish",value:function onClickButtonPublish(){this.ui.buttonPublish.hasClass("elementor-disabled")||$e.run("document/save/default")}},{key:"onClickMenuSaveDraft",value:function onClickMenuSaveDraft(){$e.run("document/save/draft")}},{key:"setMenuItems",value:function setMenuItems(t){var o=t.container.settings.get("post_status"),i={publish:r("Publish","elementor"),update:r("Update","elementor"),submit:r("Submit","elementor")},a="publish";switch(o){case"publish":case"private":a="update",t.config.revisions.current_id!==t.id&&this.activateSaveButtons(t,!0);break;case"draft":t.config.user.can_publish||(a="submit"),this.activateSaveButtons(t,!0);break;case"pending":case void 0:t.config.user.can_publish||(a="update")}this.ui.buttonPublishLabel.html(i[a])}},{key:"addTooltip",value:function addTooltip(){this.$el.find(".tooltip-target").each((function(t,o){var i=jQuery(o);i.tipsy({gravity:"s",offset:i.data("tooltip-offset"),title:function title(){return this.getAttribute("data-tooltip")}})}))}},{key:"refreshWpPreview",value:function refreshWpPreview(){if(this.previewWindow)try{this.previewWindow.location.href=elementor.config.document.urls.wp_preview}catch(t){}}}]),FooterSaver}(Marionette.Behavior)},41351:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67394),l=i(67971);a(o,"__esModule",{value:!0}),o.default=void 0;var u=l(i(59396)),c=l(i(83452)),d=l(i(38923)),m=l(i(67394));i(84208),i(99745),i(71954);var p=l(i(47834)),h=l(i(24596)),g=l(i(84899)),v=l(i(11959)),y=l(i(39041)),C=l(i(38852)),b=l(i(77371)),w=l(i(68537)),k=l(i(18042)),S=l(i(12031)),x=l(i(91238)),T=l(i(48246)),M=l(i(73308)),P=l(i(18414)),E=l(i(10136)),I=l(i(56903)),R=l(i(88507)),D=l(i(85099)),V=l(i(45767)),A=l(i(34693)),B=l(i(87726)),$=l(i(72800)),O=l(i(7699)),L=l(i(64376)),j=l(i(7537)),N=l(i(69994)),z=l(i(52101)),G=l(i(74375)),U=function(t){(0,b.default)(EditorBase,t);var o=(0,w.default)(EditorBase);function EditorBase(){var t;(0,v.default)(this,EditorBase);for(var r=arguments.length,a=new Array(r),l=0;l<r;l++)a[l]=arguments[l];return t=o.call.apply(o,[this].concat(a)),(0,k.default)((0,C.default)(t),"widgetsCache",{}),(0,k.default)((0,C.default)(t),"config",{}),(0,k.default)((0,C.default)(t),"loaded",!1),(0,k.default)((0,C.default)(t),"previewLoadedOnce",!1),(0,k.default)((0,C.default)(t),"activeBreakpointsUpdated",!1),(0,k.default)((0,C.default)(t),"helpers",i(13692)),(0,k.default)((0,C.default)(t),"imagesManager",i(9599)),(0,k.default)((0,C.default)(t),"schemes",i(54604)),(0,k.default)((0,C.default)(t),"presetsFactory",i(9548)),(0,k.default)((0,C.default)(t),"templates",i(79005)),(0,k.default)((0,C.default)(t),"ajax",elementorCommon.ajax),(0,k.default)((0,C.default)(t),"conditions",i(97196)),(0,k.default)((0,C.default)(t),"history",i(18414)),(0,k.default)((0,C.default)(t),"channels",{editor:Backbone.Radio.channel("ELEMENTOR:editor"),data:Backbone.Radio.channel("ELEMENTOR:data"),panelElements:Backbone.Radio.channel("ELEMENTOR:panelElements"),dataEditMode:Backbone.Radio.channel("ELEMENTOR:editmode"),deviceMode:Backbone.Radio.channel("ELEMENTOR:deviceMode"),templates:Backbone.Radio.channel("ELEMENTOR:templates"),responsivePreview:Backbone.Radio.channel("ELEMENTOR:responsivePreview")}),(0,k.default)((0,C.default)(t),"backgroundClickListeners",{popover:{element:".elementor-controls-popover",ignore:".elementor-control-popover-toggle-toggle, .elementor-control-popover-toggle-toggle-label, .select2-container, .pcr-app"},globalControlsSelect:{element:".e-global__popover",ignore:".e-global__popover-toggle"},tagsList:{element:".elementor-tags-list",ignore:".elementor-control-dynamic-switcher"},panelFooterSubMenus:{element:".elementor-panel-footer-tool.elementor-toggle-state",ignore:".elementor-panel-footer-tool.elementor-toggle-state, #elementor-panel-saver-button-publish-label",callback:function callback(t){t.removeClass("elementor-open")}},panelResponsiveSwitchers:{element:".elementor-control-responsive-switchers",callback:function callback(t){t.removeClass("elementor-responsive-switchers-open")}},promotion:{ignore:".elementor-responsive-panel",callback:function callback(){var t=elementor.promotion.dialog;t&&t.hide()}}}),(0,k.default)((0,C.default)(t),"modules",{get Module(){return elementorCommon.helpers.hardDeprecated("elementor.modules.Module","2.3.0","elementorModules.Module"),elementorModules.Module},components:{templateLibrary:{views:{get BaseModalLayout(){return elementorCommon.helpers.hardDeprecated("elementor.modules.components.templateLibrary.views.BaseModalLayout","2.4.0","elementorModules.common.views.modal.Layout"),elementorModules.common.views.modal.Layout}}},saver:{behaviors:{FooterSaver:i(27401)}}},saver:{get footerBehavior(){return elementorCommon.helpers.softDeprecated("elementor.modules.saver.footerBehavior.","2.9.0","elementor.modules.components.saver.behaviors.FooterSaver"),elementor.modules.components.saver.behaviors.FooterSaver}},controls:{Animation:i(76772),Base:i(15584),BaseData:i(53005),BaseMultiple:i(87474),Box_shadow:i(23594),Button:i(73309),Choose:i(11292),Code:i(16543),Color:S.default,Date_time:x.default,Dimensions:i(53261),Exit_animation:i(76772),Font:i(35634),Gallery:i(13607),Hidden:i(14553),Hover_animation:i(76772),Icon:i(30750),Icons:i(20911),Image_dimensions:i(53736),Media:i(79196),Number:i(19598),Order:i(98890),Popover_toggle:O.default,Repeater:i(1142),RepeaterRow:i(98550),Section:i(37199),Select:i(88402),Select2:i(76772),Slider:i(17881),Structure:i(14958),Switcher:i(4073),Tab:i(83067),Text_shadow:i(23594),Url:i(57330),Wp_widget:i(30437),Wysiwyg:i(58326)},elements:{models:{get BaseSettings(){return elementorCommon.helpers.hardDeprecated("elementor.modules.elements.models.BaseSettings","2.4.0","elementorModules.editor.elements.models.BaseSettings"),elementorModules.editor.elements.models.BaseSettings},Element:i(39841)},views:{Widget:i(97445)}},layouts:{panel:{pages:{elements:{views:{Global:i(56345),Elements:i(79349)}},menu:{Menu:R.default}}}},views:{get ControlsStack(){return elementorCommon.helpers.hardDeprecated("elementor.modules.views.ControlsStack","2.4.0","elementorModules.editor.views.ControlsStack"),elementorModules.editor.views.ControlsStack}}}),t}return(0,y.default)(EditorBase,[{key:"debug",get:function get(){return elementorCommon.helpers.softDeprecated("elementor.debug","3.0.0","elementorCommon.debug"),elementorCommon.debug}},{key:"userCan",value:function userCan(t){return-1===this.config.user.restrictions.indexOf(t)}},{key:"addControlView",value:function addControlView(t,o){this.modules.controls[elementorCommon.helpers.upperCaseWords(t)]=o}},{key:"checkEnvCompatibility",value:function checkEnvCompatibility(){return M.default.firefox||M.default.webkit}},{key:"getElementData",value:function getElementData(t){var o=t.get("elType");if("widget"===o){var i=t.get("widgetType");return!!this.widgetsCache[i]&&(this.widgetsCache[i].commonMerged||(jQuery.extend(this.widgetsCache[i].controls,this.widgetsCache.common.controls),this.widgetsCache[i].commonMerged=!0),this.widgetsCache[i])}if(!this.config.elements[o])return!1;var a=elementorCommon.helpers.cloneObject(this.config.elements[o]);return"section"===o&&t.get("isInner")&&(a.title=r("Inner Section","elementor")),a}},{key:"getElementControls",value:function getElementControls(t){var o=this.getElementData(t);if(!o)return!1;var i=t.get("isInner"),r={};return _.each(o.controls,(function(t,o){i&&t.hide_in_inner||!i&&t.hide_in_top||(r[o]=t)})),r}},{key:"mergeControlsSettings",value:function mergeControlsSettings(t){var o=this;return _.each(t,(function(i,r){t[r]=jQuery.extend(!0,{},o.config.controls[i.type],i)})),t}},{key:"getControlView",value:function getControlView(t){var o=elementorCommon.helpers.upperCaseWords(t),i=this.modules.controls[o];if(!i){var r=this.config.controls[t],a=r&&-1!==r.features.indexOf("ui");i=this.modules.controls[a?"Base":"BaseData"]}return i}},{key:"getPanelView",value:function getPanelView(){return this.panel.currentView}},{key:"getPreviewView",value:function getPreviewView(){return this.previewView}},{key:"getPreviewContainer",value:function getPreviewContainer(){return this.getPreviewView().getContainer()}},{key:"getContainer",value:function getContainer(t){return"document"===t?this.getPreviewContainer():$e.components.get("document").utils.findContainerById(t)}},{key:"initComponents",value:function initComponents(){var t=i(99469),o=i(41972),r=i(50235),a=i(45921);this.hooks=new t,this.settings=new r,this.dynamicTags=new o,this.initDialogsManager(),this.notifications=new a,this.kitManager=new V.default,this.hotkeysScreen=new E.default,this.iconManager=new I.default,this.noticeBar=new B.default,this.history=new P.default,this.promotion=new D.default,this.devTools=new j.default,this.documents=$e.components.register(new T.default),elementorCommon.config.experimentalFeatures["landing-pages"]&&(this.modules.landingLibraryPageModule=new N.default),elementorCommon.config.experimentalFeatures["elements-color-picker"]&&(this.modules.elementsColorPicker=new z.default),elementorCommon.elements.$window.trigger("elementor:init-components")}},{key:"initDialogsManager",value:function initDialogsManager(){this.dialogsManager=elementorCommon.dialogsManager}},{key:"initElements",value:function initElements(){var t=i(73963),o=this.config.document.elements;this.elements&&this.elements.length&&this.config.document.id===this.config.initial_document.id&&(o=this.elements.toJSON()),this.elements=new t(o),this.elementsModel=new Backbone.Model({elements:this.elements})}},{key:"initPreview",value:function initPreview(){var t=jQuery;this.$previewWrapper=t("#elementor-preview"),this.$previewResponsiveWrapper=t("#elementor-preview-responsive-wrapper"),this.$preview||(this.$preview=t("<iframe>",{id:"elementor-preview-iframe",src:this.config.initial_document.urls.preview,allowfullscreen:1}),this.$previewResponsiveWrapper.append(this.$preview)),this.$preview.on("load",this.onPreviewLoaded.bind(this))}},{key:"initPreviewView",value:function initPreviewView(t){elementor.trigger("document:before:preview",t);var o=new $.default({el:t.$element[0],model:elementor.elementsModel});o.$el.empty(),o.isRendered=!0,o._renderChildren(),o.triggerMethod("render"),this.previewView=o}},{key:"initFrontend",value:function initFrontend(){var t=this.$preview[0].contentWindow;window.elementorFrontend=t.elementorFrontend,t.elementor=this,t.elementorCommon=elementorCommon,elementorFrontend.init(),this.trigger("frontend:init")}},{key:"initClearPageDialog",value:function initClearPageDialog(){var t;this.getClearPageDialog=function(){return t||(t=elementorCommon.dialogsManager.createWidget("confirm",{id:"elementor-clear-page-dialog",headerMessage:r("Delete All Content","elementor"),message:r("Attention: We are going to DELETE ALL CONTENT from this page. Are you sure you want to do that?","elementor"),position:{my:"center center",at:"center center"},strings:{confirm:r("Delete","elementor"),cancel:r("Cancel","elementor")},onConfirm:function onConfirm(){return $e.run("document/elements/empty",{force:!0})}}))}}},{key:"getCurrentElement",value:function getCurrentElement(){if(!(-1!==["BODY","IFRAME"].indexOf(document.activeElement.tagName)&&"BODY"===elementorFrontend.elements.window.document.activeElement.tagName)&&!elementorCommonConfig.isTesting)return!1;var t=elementor.channels.editor.request("contextMenu:targetView");if(!t){var o=elementor.getPanelView();$e.routes.isPartOf("panel/editor")&&(t=o.getCurrentPageView().getOption("editedElementView"))}return t||(t=elementor.getPreviewView()),t}},{key:"initPanel",value:function initPanel(){this.addRegions({panel:i(83536)}),this.trigger("panel:init")}},{key:"initResponsiveBar",value:function initResponsiveBar(){this.addRegions({responsiveBar:{el:"#elementor-responsive-bar",regionClass:L.default}}),this.trigger("responsiveBar:init")}},{key:"initNavigator",value:function initNavigator(){this.addRegions({navigator:{el:"#elementor-navigator",regionClass:A.default}}),this.trigger("navigator:init")}},{key:"setAjax",value:function setAjax(){elementorCommon.ajax.addRequestConstant("editor_post_id",this.config.document.id),elementorCommon.ajax.addRequestConstant("initial_document_id",this.config.initial_document.id),elementorCommon.ajax.on("request:unhandledError",(function(t){elementor.notifications.showToast({message:elementor.createAjaxErrorMessage(t)})}))}},{key:"createAjaxErrorMessage",value:function createAjaxErrorMessage(t){var o;return 4===t.readyState?(o=r("Server Error","elementor"),200!==t.status&&(o+=" ("+t.status+" "+t.statusText+")")):o=0===t.readyState?r("Connection Lost","elementor"):r("Unknown Error","elementor"),o+"."}},{key:"activatePreviewResizable",value:function activatePreviewResizable(){var t=this.$previewResponsiveWrapper;t.resizable("instance")||t.resizable({handles:"e, s, w",stop:function stop(){t.css({width:"",height:"",left:"",right:"",top:"",bottom:""})},resize:function resize(o,i){t.css({right:"0",left:"0",top:"0",bottom:"0"});var r=t[0].style;r.setProperty("--e-editor-preview-width",i.size.width+"px"),r.setProperty("--e-editor-preview-height",i.size.height+"px")}})}},{key:"destroyPreviewResizable",value:function destroyPreviewResizable(){this.$previewResponsiveWrapper.resizable("instance")&&this.$previewResponsiveWrapper.resizable("destroy")}},{key:"broadcastPreviewResize",value:function broadcastPreviewResize(){this.channels.responsivePreview.reply("size",{width:this.$preview.innerWidth(),height:this.$preview.innerHeight()}).trigger("resize")}},{key:"getCurrentDeviceConstrains",value:function getCurrentDeviceConstrains(){var t=elementor.channels.deviceMode.request("currentMode"),o=elementorFrontend.config.responsive.activeBreakpoints[t],i="widescreen"===t?9999:o.value,r=this.breakpoints.getDeviceMinBreakpoint(t);return r>o.value&&(r=o.value),{maxWidth:i,minWidth:r}}},{key:"getBreakpointResizeOptions",value:function getBreakpointResizeOptions(t){var o=elementor.$previewWrapper.height()-80,i={mobile:{minHeight:480,height:736,width:360,maxHeight:896},mobile_extra:{minHeight:320,height:736,maxHeight:896},tablet:{minHeight:768,height:o,maxHeight:1024},tablet_extra:{minHeight:768,height:o,maxHeight:1024},laptop:{minHeight:768,height:o,maxHeight:1024},widescreen:{minHeight:768,height:o,maxHeight:1200}},r=this.getCurrentDeviceConstrains();return i[t]&&(r=(0,g.default)((0,g.default)({},r),i[t])),r}},{key:"updatePreviewResizeOptions",value:function updatePreviewResizeOptions(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],o=this.$previewResponsiveWrapper,i=elementor.channels.deviceMode.request("currentMode");if("desktop"===i){this.destroyPreviewResizable();var r=o[0].style;r.setProperty("--e-editor-preview-width",""),r.setProperty("--e-editor-preview-height","")}else{var a;this.activatePreviewResizable();var l=this.getBreakpointResizeOptions(i),u=null!==(a=l.width)&&void 0!==a?a:l.minWidth;if(t){var c=elementor.channels.responsivePreview.request("size");c.width>l.maxWidth?u=l.maxWidth:c.width>=l.minWidth&&(u=c.width)}o.resizable("option",(0,g.default)({},l));var d=o[0].style;d.setProperty("--e-editor-preview-width",u+"px"),d.setProperty("--e-editor-preview-height",l.height+"px")}}},{key:"preventClicksInsideEditor",value:function preventClicksInsideEditor(){this.$previewContents.on("submit",(function(t){return t.preventDefault()})),this.$previewContents.on("click",(function(t){var o,i=jQuery(t.target),r=!!i.closest(".elementor-edit-area, .pen-menu").length,a=this.contains(i[0]);i.closest("a:not(.elementor-clickable)").length&&t.preventDefault(),r&&elementor.getPreviewContainer().isEditable()||!a||!r&&null!==(o=elementor.documents.getCurrent())&&void 0!==o&&o.$element&&$e.internal("panel/open-default")}))}},{key:"addBackgroundClickArea",value:function addBackgroundClickArea(t){t.addEventListener("click",this.onBackgroundClick.bind(this),!0)}},{key:"addBackgroundClickListener",value:function addBackgroundClickListener(t,o){this.backgroundClickListeners[t]=o}},{key:"removeBackgroundClickListener",value:function removeBackgroundClickListener(t){delete this.backgroundClickListeners[t]}},{key:"showFatalErrorDialog",value:function showFatalErrorDialog(t){var o={id:"elementor-fatal-error-dialog",headerMessage:"",message:"",position:{my:"center center",at:"center center"},strings:{confirm:r("Learn More","elementor"),cancel:r("Go Back","elementor")},onConfirm:null,onCancel:function onCancel(){return parent.history.go(-1)},hide:{onBackgroundClick:!1,onButtonClick:!1}};t=jQuery.extend(!0,o,t),elementorCommon.dialogsManager.createWidget("confirm",t).show()}},{key:"showFlexBoxAttentionDialog",value:function showFlexBoxAttentionDialog(){var t=this,o=new elementorModules.editor.utils.Introduction({introductionKey:"flexbox",dialogType:"confirm",dialogOptions:{id:"elementor-flexbox-attention-dialog",headerMessage:r("Note: Flexbox Changes","elementor"),message:r("Elementor 2.5 introduces key changes to the layout using CSS Flexbox. Your existing pages might have been affected, please review your page before publishing.","elementor"),position:{my:"center center",at:"center center"},strings:{confirm:r("Learn More","elementor"),cancel:r("Got It","elementor")},hide:{onButtonClick:!1},onCancel:function onCancel(){o.setViewed(),o.getDialog().hide()},onConfirm:function onConfirm(){return open(t.config.help_flexbox_bc_url,"_blank")}}});o.show()}},{key:"checkPageStatus",value:function checkPageStatus(){elementor.documents.getCurrent().isDraft()&&this.notifications.showToast({message:r("This is just a draft. Play around and when you're done - click update.","elementor"),buttons:[{name:"view_revisions",text:r("View All Revisions","elementor"),callback:function callback(){return $e.route("panel/history/revisions")}}]})}},{key:"enterDeviceMode",value:function enterDeviceMode(){var t=this;elementorCommon.elements.$body.addClass("e-is-device-mode"),this.activatePreviewResizable(),this.resizeListenerThrottled=!1,this.broadcastPreviewResize(),elementorFrontend.elements.$window.on("resize.deviceModeDesktop",(function(){t.resizeListenerThrottled||(t.resizeListenerThrottled=!0,t.broadcastPreviewResize(),setTimeout((function(){t.resizeListenerThrottled=!1,t.broadcastPreviewResize()}),300))}))}},{key:"exitDeviceMode",value:function exitDeviceMode(){elementorCommon.elements.$body.removeClass("e-is-device-mode"),this.destroyPreviewResizable(),elementorCommon.elements.$window.off("resize.deviceModeDesktop"),this.channels.deviceMode.trigger("close")}},{key:"isDeviceModeActive",value:function isDeviceModeActive(){return elementorCommon.elements.$body.hasClass("e-is-device-mode")}},{key:"updatePreviewSize",value:function updatePreviewSize(t){var o=this.$previewResponsiveWrapper[0].style;o.setProperty("--e-editor-preview-width",t.width+"px"),o.setProperty("--e-editor-preview-height",t.height+"px")}},{key:"enterPreviewMode",value:function enterPreviewMode(t){var o=elementorFrontend.elements.$body;t&&(o=o.add(elementorCommon.elements.$body)),o.removeClass("elementor-editor-active").addClass("elementor-editor-preview");var i=this.documents.getCurrent().$element;i&&i.removeClass("elementor-edit-area-active")}},{key:"exitPreviewMode",value:function exitPreviewMode(){elementorFrontend.elements.$body.add(elementorCommon.elements.$body).removeClass("elementor-editor-preview").addClass("elementor-editor-active"),elementor.config.document.panel.has_elements&&this.documents.getCurrent().$element.addClass("elementor-edit-area-active")}},{key:"changeEditMode",value:function changeEditMode(t){var o=elementor.channels.dataEditMode,i=o.request("activeMode");o.reply("activeMode",t),t!==i&&o.trigger("switch",t)}},{key:"reloadPreview",value:function reloadPreview(){jQuery("#elementor-preview-loading").show(),this.$preview[0].contentWindow.location.reload(!0)}},{key:"changeDeviceMode",value:function changeDeviceMode(t){var o=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=this.channels.deviceMode.request("currentMode");i!==t&&(elementorCommon.elements.$body.removeClass("elementor-device-"+i).addClass("elementor-device-"+t),this.channels.deviceMode.reply("previousMode",i).reply("currentMode",t).trigger("change"),this.isDeviceModeActive()&&o?"desktop"===t&&this.exitDeviceMode():"desktop"!==t&&this.enterDeviceMode())}},{key:"translate",value:function translate(t,o,i){return i||(i=this.config.i18n),elementorCommon.translate(t,null,o,i)}},{key:"logSite",value:function logSite(){var t="",o="";if(M.default.firefox){t+="%c"+[" ;;;;;;;;;;;;;;; ",";;;  ;;       ;;;",";;;  ;;;;;;;;;;;;",";;;  ;;;;;;;;;;;;",";;;  ;;       ;;;",";;;  ;;;;;;;;;;;;",";;;  ;;;;;;;;;;;;",";;;  ;;       ;;;"," ;;;;;;;;;;;;;;; "].join("\n")+"\n",o="color: #C42961"}else t+="%c00",o='font-size: 22px; background-image: url("'+elementorCommon.config.urls.assets+'images/logo-icon.png"); color: transparent; background-repeat: no-repeat';setTimeout(console.log.bind(console,t,o)),t="%cLove using Elementor? Join our growing community of Elementor developers: %chttps://github.com/elementor/elementor",setTimeout(console.log.bind(console,t,"color: #9B0A46",""))}},{key:"requestWidgetsConfig",value:function requestWidgetsConfig(){var t=this,o={};jQuery.each(this.widgetsCache,(function(t,i){i.controls&&(o[t]=!0)})),elementorCommon.ajax.addRequest("get_widgets_config",{data:{exclude:o},success:function success(o){t.addWidgetsCache(o),t.loaded?(t.kitManager.renderGlobalsDefaultCSS(),$e.internal("panel/state-ready")):t.once("panel:init",(function(){$e.internal("panel/state-ready")}))}})}},{key:"getPreferences",value:function getPreferences(t){var o=elementor.settings.editorPreferences.model.attributes;return t?o[t]:o}},{key:"getConfig",value:function getConfig(){return ElementorConfig}},{key:"onStart",value:function onStart(){var t=this;this.config=this.getConfig(),Backbone.Radio.DEBUG=!1,Backbone.Radio.tuneIn("ELEMENTOR"),this.populateActiveBreakpointsConfig(),this.breakpoints=new G.default(this.config.responsive),elementorCommon.config.experimentalFeatures.additional_custom_breakpoints&&this.generateResponsiveControlsForElements(),this.initComponents(),this.checkEnvCompatibility()||this.onEnvNotCompatible(),this.initPreview(),this.requestWidgetsConfig(),this.channels.dataEditMode.reply("activeMode","edit"),this.listenTo(this.channels.dataEditMode,"switch",this.onEditModeSwitched),this.listenTo(elementor.channels.deviceMode,"change",this.updatePreviewResizeOptions),this.initClearPageDialog(),this.addBackgroundClickArea(document),this.addDeprecatedConfigProperties(),elementorCommon.elements.$window.trigger("elementor:loaded"),$e.run("editor/documents/open",{id:this.config.initial_document.id}).then((function(){elementorCommon.elements.$window.trigger("elementor:init"),t.initNavigator()})),this.logSite()}},{key:"onPreviewLoaded",value:function onPreviewLoaded(){if(this.$preview[0].contentWindow.elementorFrontend)if(elementor.config.kit_id){this.$previewContents=this.$preview.contents(),this.initFrontend(),this.schemes.init(),this.preventClicksInsideEditor(),this.addBackgroundClickArea(elementorFrontend.elements.window.document),this.previewLoadedOnce||this.onFirstPreviewLoaded(),this.$previewContents.children().addClass("elementor-html");var t=elementorFrontend.elements.$body;t.addClass("elementor-editor-active"),elementor.userCan("design")||t.addClass("elementor-editor-content-only"),this.changeDeviceMode("desktop"),_.defer((function(){elementorFrontend.elements.window.jQuery.holdReady(!1)})),$e.shortcuts.bindListener(elementorFrontend.elements.$window),this.trigger("preview:loaded",!this.loaded),$e.internal("editor/documents/attach-preview").then((function(){return jQuery("#elementor-loading, #elementor-preview-loading").fadeOut(600)})),this.loaded=!0}else this.kitNotExistsError();else this.onPreviewLoadingError()}},{key:"onFirstPreviewLoaded",value:function onFirstPreviewLoaded(){this.initPanel(),this.initResponsiveBar(),this.previewLoadedOnce=!0}},{key:"onEditModeSwitched",value:function onEditModeSwitched(){var t=this.channels.dataEditMode.request("activeMode");"edit"===t?this.exitPreviewMode():this.enterPreviewMode("preview"===t)}},{key:"onEnvNotCompatible",value:function onEnvNotCompatible(){var t=this;this.showFatalErrorDialog({headerMessage:r("Your browser isn't compatible","elementor"),message:r("Your browser isn't compatible with all of Elementor's editing features. We recommend you switch to another browser like Chrome or Firefox.","elementor"),strings:{confirm:r("Proceed Anyway","elementor")},hide:{onButtonClick:!0},onConfirm:function onConfirm(){return t.hide()}})}},{key:"kitNotExistsError",value:function kitNotExistsError(){this.showFatalErrorDialog({className:"elementor-preview-loading-error",headerMessage:r("Your site doesn't have a default kit","elementor"),message:r("Seems like your kit was deleted, please create new one or try restore it from trash.","elementor"),strings:{confirm:r("Recreate Kit","elementor"),cancel:r("Go Back","elementor")},onConfirm:function onConfirm(){return open(elementor.config.admin_tools_url,"_blank")}})}},{key:"onPreviewLoadingError",value:function onPreviewLoadingError(){var t=this,o=this.config.document.urls.preview+"&preview-debug",i='<div id="elementor-preview-debug-link-text"><a href="'+o+'" target="_blank">'+r("Click here for preview debug","elementor")+"</a></div>",a=elementor.config.preview.debug_data,l={className:"elementor-preview-loading-error",headerMessage:a.header,message:a.message+i,onConfirm:function onConfirm(){return open(a.doc_url,"_blank")}};a.error?this.showFatalErrorDialog(l):jQuery.get(o,(function(){t.showFatalErrorDialog(l)})).fail((function(o){t.showFatalErrorDialog({className:"elementor-preview-loading-error",headerMessage:a.header,message:o.statusText+" "+o.status+" "+i,onConfirm:function onConfirm(){var t=500<=o.status?elementor.config.preview.help_preview_http_error_500_url:elementor.config.preview.help_preview_http_error_url;open(t,"_blank")}})}))}},{key:"onPreviewElNotFound",value:function onPreviewElNotFound(){var t=this.$preview[0].contentWindow.elementorPreviewErrorArgs;t||(t={headerMessage:r("Sorry, the content area was not found in your page.","elementor"),message:r("You must call 'the_content' function in the current template, in order for Elementor to work on this page.","elementor"),confirmURL:elementor.config.help_the_content_url}),t.onConfirm=function(){return open(t.confirmURL,"_blank")},this.showFatalErrorDialog(t)}},{key:"onBackgroundClick",value:function onBackgroundClick(t){jQuery.each(this.backgroundClickListeners,(function(o,i){var r=jQuery(t.target);if(r[0].control&&(r=r.add(r[0].control)),!i.ignore||!r.closest(i.ignore).length){var a=r.closest(i.element),l=jQuery(i.element).not(a);i.callback?i.callback(l):l.hide()}}))}},{key:"compileTemplate",value:function compileTemplate(t,o){return Marionette.TemplateCache.prototype.compileTemplate(t)(o)}},{key:"addWidgetsCache",value:function addWidgetsCache(t){var o=this;jQuery.each(t,(function(t,i){elementorCommon.config.experimentalFeatures.additional_custom_breakpoints&&(i.controls=o.generateResponsiveControls(i.controls)),o.widgetsCache[t]=jQuery.extend(!0,{},o.widgetsCache[t],i)}))}},{key:"generateResponsiveControls",value:function generateResponsiveControls(t){var o=this,i=this.config.responsive.activeBreakpoints,r=this.breakpoints.getActiveBreakpointsList({largeToSmall:!0,withDesktop:!0}),a={},l=r[r.indexOf("desktop")+1];return r.unshift(r.splice(r.indexOf("desktop"),1)[0]),jQuery.each(t,(function(t,c){var d,m;if("object"===(0,h.default)(c.fields)&&(c.fields=o.generateResponsiveControls(c.fields)),c.is_responsive){var p,v=null===(d=c.popover)||void 0===d?void 0:d.end;if(v)null===(p=c.popover)||void 0===p||delete p.end;c.default&&(c.desktop_default=c.default);var y=o.config.controls[c.type].default_value,C=!0;y&&(c.default=y,C=!1),r.forEach((function(o,d){var p,y=elementorCommon.helpers.cloneObject(c);if(y.device_args&&(y.device_args[o]&&(y=(0,g.default)((0,g.default)({},y),y.device_args[o])),delete y.device_args),y.prefix_class&&-1!==y.prefix_class.indexOf("%s")){var b="desktop"===o?"":"-"+o;y.prefix_class=y.prefix_class.replace("%s",b)}(0,u.default)(y.responsive)&&(y.responsive={});var w="max";if(y.parent=null,"desktop"!==o&&(w=i[o].direction,y.parent=o===l?t:m),y.responsive[w]=o,y.min_affected_device&&(y.min_affected_device[o]&&(y.responsive.min=y.min_affected_device[o]),delete y.min_affected_device),y[o+"_default"]?"object"===(0,h.default)(y[o+"_default"])?y.default=(0,g.default)((0,g.default)({},y.default),y[o+"_default"]):y.default=y[o+"_default"]:C&&(y.default=""),0!==d&&null!==(p=y.popover)&&void 0!==p&&p.start&&delete y.popover.start,d===r.length-1&&v&&(y.popover={end:!0}),r.forEach((function(t){delete y[t+"_default"]})),delete y.is_responsive,m="desktop"===o?t:t+"_"+o,y.parent){var k=a[y.parent];k.inheritors||(k.inheritors=[]),k.inheritors.push(m)}y.name=m,a[m]=y}))}else a[t]=c})),a}},{key:"generateResponsiveControlsForElements",value:function generateResponsiveControlsForElements(){var t=this;(0,c.default)(this.config.elements).forEach((function(o){t.config.elements[o].controls=t.generateResponsiveControls(t.config.elements[o].controls)}))}},{key:"populateActiveBreakpointsConfig",value:function populateActiveBreakpointsConfig(){var t=this;this.config.responsive.activeBreakpoints={},(0,d.default)(this.config.responsive.breakpoints).forEach((function(o){var i=(0,p.default)(o,2),r=i[0],a=i[1];a.is_enabled&&(t.config.responsive.activeBreakpoints[r]=a)}))}},{key:"addDeprecatedConfigProperties",value:function addDeprecatedConfigProperties(){var t=this,o={data:{replacement:"elements",value:function value(){return elementor.config.document.elements}},current_user_can_publish:{replacement:"user.can_publish",value:function value(){return elementor.config.document.user.can_publish}},locked_user:{replacement:"",value:function value(){return elementor.config.document.user.locked}},revisions_enabled:{replacement:"revisions.enabled",value:function value(){return elementor.config.document.revisions.enabled}},current_revision_id:{replacement:"revisions.current_id",value:function value(){return elementor.config.document.revisions.current_id}}};jQuery.each(o,(function(o,i){(0,m.default)(t.config,o,{get:function get(){var t=i.replacement?"elementor.config.document."+i.replacement:"";return elementorCommon.helpers.softDeprecated("elementor.config."+o,"2.9.0",t),i.value()},set:function set(){throw elementorCommon.helpers.softDeprecated("elementor.config."+o,"2.9.0","elementor.config.document."+i.replacement),Error("Deprecated")}})})),(0,m.default)(this.config.settings,"page",{get:function get(){return elementorCommon.helpers.softDeprecated("elementor.config.settings.page","2.9.0","elementor.config.document.settings"),elementor.config.document.settings}}),(0,m.default)(this.config,"widgets",{get:function get(){return elementorCommon.helpers.softDeprecated("elementor.config.widgets","2.9.0","elementor.widgetsCache"),elementor.widgetsCache}}),(0,m.default)(this,"$previewElementorEl",{get:function get(){return elementorCommon.helpers.softDeprecated("elementor.$previewElementorEl","2.9.4","elementor.documents.getCurrent().$element"),elementor.documents.getCurrent().$element}})}},{key:"toggleDocumentCssFiles",value:function toggleDocumentCssFiles(t,o){var i=["#elementor-post-".concat(t.config.id,"-css"),"#elementor-preview-".concat(t.config.revisions.current_id)],r=o?"text/css":"elementor/disabled-css";this.$previewContents.find(i.join(",")).attr({type:r})}}]),EditorBase}(Marionette.Application);o.default=U},13021:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.Editor=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(76700)),d=a(i(44263)),m=a(i(77371)),p=a(i(68537)),h=function(t){(0,m.default)(Editor,t);var o=(0,p.default)(Editor);function Editor(){return(0,l.default)(this,Editor),o.apply(this,arguments)}return(0,u.default)(Editor,[{key:"onStart",value:function onStart(t){NProgress.start(),NProgress.inc(.2),(0,c.default)((0,d.default)(Editor.prototype),"onStart",this).call(this,t)}},{key:"onPreviewLoaded",value:function onPreviewLoaded(){NProgress.done(),(0,c.default)((0,d.default)(Editor.prototype),"onPreviewLoaded",this).call(this)}}]),Editor}(a(i(41351)).default);o.Editor=h,window.elementor=new h,elementor.start()},73963:(t,o,i)=>{"use strict";var r=i(39841),a=Backbone.Collection.extend({add:function add(t,o,i){if(!(o&&o.silent||i))throw"Call Error: Adding model to element collection is allowed only by the dedicated addChildModel() method.";return Backbone.Collection.prototype.add.call(this,t,o)},model:function model(t,o){var i=Backbone.Model;return t.elType&&(i=elementor.hooks.applyFilters("element/model",r,t)),new i(t,o)},clone:function clone(){var t=Backbone.Collection.prototype.clone.apply(this,arguments),o=new a;return t.forEach((function(t){o.add(t.clone(),null,!0)})),o}});a.prototype.sync=a.prototype.fetch=a.prototype.save=_.noop,t.exports=a},98459:t=>{"use strict";t.exports=elementorModules.editor.elements.models.BaseSettings.extend({defaults:{_column_size:100}})},39841:(t,o,i)=>{"use strict";var r=i(67971);i(99236);var a,l=r(i(24596)),u=i(98459);(a=Backbone.Model.extend({defaults:{id:"",elType:"",isInner:!1,settings:{},defaultEditSettings:{defaultEditRoute:"content"}},remoteRender:!1,_htmlCache:null,_jqueryXhr:null,renderOnLeave:!1,initialize:function initialize(t){var o=this.get("elType"),r=this.get("elements");if(void 0!==r){var a=i(73963);this.set("elements",new a(r))}"widget"===o&&(this.remoteRender=!0,this.setHtmlCache(t.htmlCache||"")),delete t.htmlCache,this.renderRemoteServer=_.throttle(this.renderRemoteServer,1e3),this.initSettings(),this.initEditSettings(),this.on({destroy:this.onDestroy,"editor:close":this.onCloseEditor})},initSettings:function initSettings(){var t=this.get("elType"),o=this.get("settings"),i={column:u}[t]||elementorModules.editor.elements.models.BaseSettings;jQuery.isEmptyObject(o)&&(o=elementorCommon.helpers.cloneObject(o)),"widget"===t&&(o.widgetType=this.get("widgetType")),o.elType=t,o.isInner=this.get("isInner"),o=new i(o,{controls:elementor.getElementControls(this)}),this.set("settings",o),elementorFrontend.config.elements.data[this.cid]=o},initEditSettings:function initEditSettings(){var t=new Backbone.Model(this.get("defaultEditSettings"));this.set("editSettings",t),elementorFrontend.config.elements.editSettings[this.cid]=t},setSetting:function setSetting(t,o){var i=this.get("settings");if("object"!==(0,l.default)(t)){var r=t.split("."),a=3===r.length;t=r[0],a&&(i=i.get(t).models[r[1]],t=r[2])}i.setExternalChange(t,o)},getSetting:function getSetting(t){var o=t.split("."),i=3===o.length,r=this.get("settings");t=o[0];var a=r.get(t);return void 0===a?"":(i&&(a=a.models[o[1]].get(o[2])),a)},setHtmlCache:function setHtmlCache(t){this._htmlCache=t},getHtmlCache:function getHtmlCache(){return this._htmlCache},getDefaultTitle:function getDefaultTitle(){return elementor.getElementData(this).title},getTitle:function getTitle(){var t=this.getSetting("_title");return t||(t=this.getDefaultTitle()),t},getIcon:function getIcon(){return elementor.getElementData(this).icon},createRemoteRenderRequest:function createRemoteRenderRequest(){var t=this.toJSON();return elementorCommon.ajax.addRequest("render_widget",{unique_id:this.cid,data:{data:t},success:this.onRemoteGetHtml.bind(this)},!0).jqXhr},renderRemoteServer:function renderRemoteServer(){this.remoteRender&&(this.renderOnLeave=!1,this.trigger("before:remote:render"),this.isRemoteRequestActive()&&this._jqueryXhr.abort(),this._jqueryXhr=this.createRemoteRenderRequest())},isRemoteRequestActive:function isRemoteRequestActive(){return this._jqueryXhr&&4!==this._jqueryXhr.readyState},onRemoteGetHtml:function onRemoteGetHtml(t){this.setHtmlCache(t.render),this.trigger("remote:render")},clone:function clone(){var t=new this.constructor(elementorCommon.helpers.cloneObject(this.attributes));t.set("id",elementorCommon.helpers.getUniqueId()),t.setHtmlCache(this.getHtmlCache());var o=this.get("elements");return _.isEmpty(o)||t.set("elements",o.clone()),t},toJSON:function toJSON(t){t=t||{};var o=Backbone.Model.prototype.toJSON.call(this);return _.each(o,(function(i,r){i&&i.toJSON&&(o[r]=i.toJSON(t))})),t.copyHtmlCache?o.htmlCache=this.getHtmlCache():delete o.htmlCache,t.remove&&t.remove.forEach((function(t){return delete o[t]})),o},onCloseEditor:function onCloseEditor(){this.renderOnLeave&&this.renderRemoteServer()},onDestroy:function onDestroy(){var t=this.get("settings"),o=this.get("elements");void 0!==o&&_.each(_.clone(o.models),(function(t){t.destroy()})),t.destroy()}})).prototype.sync=a.prototype.fetch=a.prototype.save=_.noop,t.exports=a},83866:(t,o,i)=>{"use strict";var r=i(18194).sprintf,a=i(18194).__,l=i(67971);i(99745),i(71954);var u,c=l(i(24596)),d=l(i(83452)),m=l(i(14176)),p=l(i(59396)),h=l(i(73308)),g=i(99292),v=i(96731),y=i(47071);u=y.extend({tagName:"div",controlsCSSParser:null,allowRender:!0,toggleEditTools:!1,renderAttributes:{},className:function className(){var t="elementor-element elementor-element-edit-mode "+this.getElementUniqueID();return this.toggleEditTools&&(t+=" elementor-element--toggle-edit-tools"),t},attributes:function attributes(){return{"data-id":this.getID(),"data-element_type":this.model.get("elType")}},ui:function ui(){return{tools:"> .elementor-element-overlay > .elementor-editor-element-settings",editButton:"> .elementor-element-overlay .elementor-editor-element-edit",duplicateButton:"> .elementor-element-overlay .elementor-editor-element-duplicate",addButton:"> .elementor-element-overlay .elementor-editor-element-add",removeButton:"> .elementor-element-overlay .elementor-editor-element-remove"}},behaviors:function behaviors(){var t=this.options.model.get("elType"),o=elementor.hooks.applyFilters("elements/".concat(t,"/contextMenuGroups"),this.getContextMenuGroups(),this),behaviors={contextMenu:{behaviorClass:i(81152),groups:o}};return elementor.hooks.applyFilters("elements/base/behaviors",behaviors,this)},getBehavior:function getBehavior(t){return this._behaviors[(0,d.default)(this.behaviors()).indexOf(t)]},events:function events(){return{mousedown:"onMouseDown","click @ui.editButton":"onEditButtonClick","click @ui.duplicateButton":"onDuplicateButtonClick","click @ui.addButton":"onAddButtonClick","click @ui.removeButton":"onRemoveButtonClick"}},getElementType:function getElementType(){return this.model.get("elType")},getIDInt:function getIDInt(){return(0,m.default)(this.getID(),16)},getChildType:function getChildType(){return elementor.helpers.getElementChildType(this.getElementType())},getChildView:function getChildView(t){var o,r=t.get("elType");return o="section"===r?i(39872):"column"===r?i(99722):elementor.modules.elements.views.Widget,elementor.hooks.applyFilters("element/view",o,t,this)},getTemplateType:function getTemplateType(){return"js"},getEditModel:function getEditModel(){return this.model},getContainer:function getContainer(){if(!this.container){var t=this.model.get("settings");this.container=new elementorModules.editor.Container({type:this.model.get("elType"),id:this.model.id,model:this.model,settings:t,view:this,parent:this._parent?this._parent.getContainer():{},children:[],label:elementor.helpers.getModelLabel(this.model),controls:t.options.controls})}return this.container},getContextMenuGroups:function getContextMenuGroups(){var t=this,o=h.default.mac?"⌘":"^";return[{name:"general",actions:[{name:"edit",icon:"eicon-edit",title:r(a("Edit %s","elementor"),this.options.model.getTitle()),callback:function callback(){return $e.run("panel/editor/open",{model:t.options.model,view:t,container:t.getContainer()})}},{name:"duplicate",icon:"eicon-clone",title:a("Duplicate","elementor"),shortcut:o+"+D",callback:function callback(){return $e.run("document/elements/duplicate",{container:t.getContainer()})}}]},{name:"clipboard",actions:[{name:"copy",title:a("Copy","elementor"),shortcut:o+"+C",callback:function callback(){return $e.run("document/elements/copy",{container:t.getContainer()})}},{name:"paste",title:a("Paste","elementor"),shortcut:o+"+V",isEnabled:function isEnabled(){return $e.components.get("document/elements").utils.isPasteEnabled(t.getContainer())},callback:function callback(){return $e.run("document/ui/paste",{container:t.getContainer()})}},{name:"pasteStyle",title:a("Paste Style","elementor"),shortcut:o+"+⇧+V",isEnabled:function isEnabled(){return!!elementorCommon.storage.get("clipboard")},callback:function callback(){return $e.run("document/elements/paste-style",{container:t.getContainer()})}},{name:"resetStyle",title:a("Reset Style","elementor"),callback:function callback(){return $e.run("document/elements/reset-style",{container:t.getContainer()})}}]},{name:"delete",actions:[{name:"delete",icon:"eicon-trash",title:a("Delete","elementor"),shortcut:"⌦",callback:function callback(){return $e.run("document/elements/delete",{container:t.getContainer()})}}]}]},getEditButtons:function getEditButtons(){return{}},initialize:function initialize(){var t=this;y.prototype.initialize.apply(this,arguments);var o=this.getEditModel();this.collection&&this.onCollectionChanged&&(elementorCommon.helpers.softDeprecated("onCollectionChanged","2.8.0","$e.hooks"),this.listenTo(this.collection,"add remove reset",this.onCollectionChanged,this)),this.onSettingsChanged&&(elementorCommon.helpers.softDeprecated("onSettingsChanged","2.8.0","$e.hooks"),this.listenTo(o.get("settings"),"change",this.onSettingsChanged)),this.listenTo(o.get("editSettings"),"change",this.onEditSettingsChanged).listenTo(this.model,"request:edit",this.onEditRequest).listenTo(this.model,"request:toggleVisibility",this.toggleVisibility),this.initControlsCSSParser(),_.defer((function(){t.getContainer()}))},getHandlesOverlay:function getHandlesOverlay(){var t=jQuery("<div>",{class:"elementor-element-overlay"}),o=jQuery("<ul>",{class:"elementor-editor-element-settings elementor-editor-".concat(this.getElementType(),"-settings")});return jQuery.each(this.getEditButtons(),(function(t,i){var r=jQuery("<li>",{class:"elementor-editor-element-setting elementor-editor-element-".concat(t),title:i.title}),a=jQuery("<i>",{class:"eicon-".concat(i.icon),"aria-hidden":!0}),l=jQuery("<span>",{class:"elementor-screen-only"});l.text(i.title),r.append(a,l),o.append(r)})),t.append(o),t},attachElContent:function attachElContent(t){this.$el.empty().append(this.getHandlesOverlay(),t)},startTransport:function startTransport(){elementorCommon.helpers.softDeprecated("element.startTransport","2.8.0","$e.run( 'document/elements/copy' )"),$e.run("document/elements/copy",{container:this.getContainer()})},copy:function copy(){elementorCommon.helpers.softDeprecated("element.copy","2.8.0","$e.run( 'document/elements/copy' )"),$e.run("document/elements/copy",{container:this.getContainer()})},cut:function cut(){elementorCommon.helpers.softDeprecated("element.cut","2.8.0")},paste:function paste(){elementorCommon.helpers.softDeprecated("element.paste","2.8.0","$e.run( 'document/elements/paste' )"),$e.run("document/elements/paste",{container:this.getContainer(),at:this._parent.collection.indexOf(this.model)})},duplicate:function duplicate(){elementorCommon.helpers.softDeprecated("element.duplicate","2.8.0","$e.run( 'document/elements/duplicate' )"),$e.run("document/elements/duplicate",{container:this.getContainer()})},pasteStyle:function pasteStyle(){elementorCommon.helpers.softDeprecated("element.pasteStyle","2.8.0","$e.run( 'document/elements/paste-style' )"),$e.run("document/elements/paste-style",{container:this.getContainer()})},resetStyle:function resetStyle(){elementorCommon.helpers.softDeprecated("element.resetStyle","2.8.0","$e.run( 'document/elements/reset-style' )"),$e.run("document/elements/reset-style",{container:this.getContainer()})},isStyleTransferControl:function isStyleTransferControl(t){return void 0!==t.style_transfer?t.style_transfer:"content"!==t.tab||t.selectors||t.prefix_class},toggleVisibility:function toggleVisibility(){this.model.set("hidden",!this.model.get("hidden")),this.toggleVisibilityClass()},toggleVisibilityClass:function toggleVisibilityClass(){this.$el.toggleClass("elementor-edit-hidden",!!this.model.get("hidden"))},addElementFromPanel:function addElementFromPanel(t){t=t||{};var o=elementor.channels.panelElements.request("element:selected"),i={elType:o.model.get("elType")};if(!elementor.helpers.maybeDisableWidget()){if("widget"===i.elType)i.widgetType=o.model.get("widgetType");else{if("section"!==i.elType)return;i.isInner=!0}var r=o.model.get("custom");return r&&jQuery.extend(i,r),$e.run("document/elements/create",{container:this.getContainer(),model:i,options:t})}},addControlValidator:function addControlValidator(t,o){o=o.bind(this);var i=new v({customValidationMethod:o}),r=this.getEditModel().get("settings").validators;r[t]||(r[t]=[]),r[t].push(i)},addRenderAttribute:function addRenderAttribute(t,o,i,r){var a=this;return"object"===(0,c.default)(t)?(jQuery.each(t,(function(t,o){a.addRenderAttribute(t,o,null,r)})),a):"object"===(0,c.default)(o)?(jQuery.each(o,(function(o,i){a.addRenderAttribute(t,o,i,r)})),a):(a.renderAttributes[t]||(a.renderAttributes[t]={}),a.renderAttributes[t][o]||(a.renderAttributes[t][o]=[]),(0,p.default)(i)||(i=[i]),void(a.renderAttributes[t][o]=r?i:a.renderAttributes[t][o].concat(i)))},getRenderAttributeString:function getRenderAttributeString(t){if(!this.renderAttributes[t])return"";var o=this.renderAttributes[t],i=[];return jQuery.each(o,(function(t,o){i.push(t+'="'+_.escape(o.join(" "))+'"')})),i.join(" ")},isInner:function isInner(){return!!this.model.get("isInner")},initControlsCSSParser:function initControlsCSSParser(){this.controlsCSSParser=new g({id:this.model.get("id"),context:this,settingsModel:this.getEditModel().get("settings"),dynamicParsing:this.getDynamicParsingSettings()})},enqueueFonts:function enqueueFonts(){var t=this.getEditModel(),o=t.get("settings");jQuery.each(o.getIconsControls(),(function(o,i){var r=t.getSetting(i.name);r&&r.library&&elementor.helpers.enqueueIconFonts(r.library)}))},renderStyles:function renderStyles(t){t||(t=this.getEditModel().get("settings")),this.controlsCSSParser.stylesheet.empty(),this.controlsCSSParser.addStyleRules(t.getStyleControls(),t.attributes,this.getEditModel().get("settings").controls,[/{{ID}}/g,/{{WRAPPER}}/g],[this.getID(),".elementor-"+elementor.config.document.id+" .elementor-element."+this.getElementUniqueID()]),this.controlsCSSParser.addStyleToDocument()},renderCustomClasses:function renderCustomClasses(){var t=this,o=t.getEditModel().get("settings"),i=o.getClassControls();_.each(i,(function(i){var r=o.previous(i.name);i.classes_dictionary&&void 0!==i.classes_dictionary[r]&&(r=i.classes_dictionary[r]),t.$el.removeClass(i.prefix_class+r)})),_.each(i,(function(i){var r=o.attributes[i.name],a=r;i.classes_dictionary&&void 0!==i.classes_dictionary[r]&&(a=i.classes_dictionary[r]),elementor.helpers.isActiveControl(i,o.attributes)&&(a||0===a)&&t.$el.addClass(i.prefix_class+a)})),t.$el.addClass(_.result(t,"className")),t.toggleVisibilityClass()},renderCustomElementID:function renderCustomElementID(){var t=this.getEditModel().get("settings").get("_element_id");this.$el.attr("id",t)},renderUI:function renderUI(){this.renderStyles(),this.renderCustomClasses(),this.renderCustomElementID(),this.enqueueFonts()},runReadyTrigger:function runReadyTrigger(){var t=this;_.defer((function(){elementorFrontend.elementsHandler.runReadyTrigger(t.el),elementorFrontend.isEditMode()&&t.$el.find(".elementor-element.elementor-"+t.model.get("elType")+":not(.elementor-element-edit-mode)").each((function(){elementorFrontend.elementsHandler.runReadyTrigger(this)}))}))},getID:function getID(){return this.model.get("id")},getElementUniqueID:function getElementUniqueID(){return"elementor-element-"+this.getID()},renderHTML:function renderHTML(){var t=this.getTemplateType(),o=this.getEditModel();"js"===t?(this.getEditModel().setHtmlCache(),this.render(),o.renderOnLeave=!0):o.renderRemoteServer()},renderOnChange:function renderOnChange(t){if(this.allowRender){if(t instanceof elementorModules.editor.elements.models.BaseSettings){var o=t.hasChanged(),i=!o,r=!o;if(_.each(t.changedAttributes(),(function(o,a){var l=t.getControl(a);if("_column_size"!==a){if(!l)return r=!0,void(i=!0);"none"!==l.render_type&&(r=!0),-1===["none","ui"].indexOf(l.render_type)&&("template"!==l.render_type&&(t.isStyleControl(a)||t.isClassControl(a)||"_element_id"===a)||(i=!0))}else r=!0})),!r)return;if(!i)return void this.renderUI()}this.renderHTML()}},getDynamicParsingSettings:function getDynamicParsingSettings(){var t=this;return{onServerRequestStart:function onServerRequestStart(){t.$el.addClass("elementor-loading")},onServerRequestEnd:function onServerRequestEnd(){t.render(),t.$el.removeClass("elementor-loading")}}},serializeData:function serializeData(){var t=y.prototype.serializeData.apply(this,arguments);return t.settings=this.getEditModel().get("settings").parseDynamicSettings(t.settings,this.getDynamicParsingSettings()),t},save:function save(){$e.route("library/save-template",{model:this.model})},onBeforeRender:function onBeforeRender(){this.renderAttributes={}},onRender:function onRender(){if(this.renderUI(),this.runReadyTrigger(),this.toggleEditTools){var t=this.ui.editButton;this.ui.tools&&this.ui.tools.hoverIntent((function(){t.addClass("elementor-active")}),(function(){t.removeClass("elementor-active")}),{timeout:500})}},onEditSettingsChanged:function onEditSettingsChanged(t){elementor.channels.editor.trigger("change:editSettings",t,this)},onEditButtonClick:function onEditButtonClick(){this.model.trigger("request:edit")},onEditRequest:function onEditRequest(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(this.container.isEditable()){var o=this.getEditModel(),i=elementor.getPanelView();$e.routes.isPartOf("panel/editor")&&i.getCurrentPageView().model===o||(t.scrollIntoView&&elementor.helpers.scrollToView(this.$el,200),$e.run("panel/editor/open",{model:o,view:this}))}},onDuplicateButtonClick:function onDuplicateButtonClick(t){t.stopPropagation(),$e.run("document/elements/duplicate",{container:this.getContainer()})},onRemoveButtonClick:function onRemoveButtonClick(t){t.stopPropagation(),$e.run("document/elements/delete",{container:this.getContainer()})},onMouseDown:function onMouseDown(t){jQuery(t.target).closest(".elementor-inline-editing").length||elementorFrontend.elements.window.document.activeElement.blur()},onDestroy:function onDestroy(){this.controlsCSSParser.removeStyleFromDocument(),this.getEditModel().get("settings").validators={},elementor.channels.data.trigger("element:destroy",this.model)}}),t.exports=u},63960:t=>{"use strict";var o;o=Marionette.Behavior.extend({defaults:{handles:elementorCommon.config.isRTL?"w":"e"},events:{resizestart:"onResizeStart",resizestop:"onResizeStop",resize:"onResize"},initialize:function initialize(){Marionette.Behavior.prototype.initialize.apply(this,arguments),this.listenTo(elementor.channels.dataEditMode,"switch",this.onEditModeSwitched)},active:function active(){if(elementor.userCan("design")){this.deactivate();var t=_.clone(this.options);delete t.behaviorClass;var o=this.getChildViewContainer(),i=_.extend({},t);o.resizable(i)}},deactivate:function deactivate(){this.getChildViewContainer().resizable("instance")&&this.getChildViewContainer().resizable("destroy")},onEditModeSwitched:function onEditModeSwitched(t){"edit"===t?this.active():this.deactivate()},onRender:function onRender(){var t=this;_.defer((function(){t.onEditModeSwitched(elementor.channels.dataEditMode.request("activeMode"))}))},onDestroy:function onDestroy(){this.deactivate()},onResizeStart:function onResizeStart(t){t.stopPropagation(),this.view.$el.data("originalWidth",this.view.el.getBoundingClientRect().width),this.view.triggerMethod("request:resize:start",t)},onResizeStop:function onResizeStop(t){t.stopPropagation(),this.view.triggerMethod("request:resize:stop")},onResize:function onResize(t,o){t.stopPropagation(),this.view.triggerMethod("request:resize",o,t)},getChildViewContainer:function getChildViewContainer(){return this.$el}}),t.exports=o},81152:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67971)(i(59113)),l=i(6430);t.exports=Marionette.Behavior.extend({defaults:{groups:[],eventTargets:["el"]},events:function events(){var events={};return this.getOption("eventTargets").forEach((function(t){var o="contextmenu";"el"!==t&&(o+=" "+t),events[o]="onContextMenu"})),events},initialize:function initialize(){this.listenTo(this.view.options.model,"request:contextmenu",this.onRequestContextMenu)},initContextMenu:function initContextMenu(){var t=this,o=this.getOption("groups"),i=_.findWhere(o,{name:"delete"}),a=o.indexOf(i);-1===a&&(a=o.length),o.splice(a,0,{name:"tools",actions:[{name:"navigator",title:r("Navigator","elementor"),callback:function callback(){return $e.route("navigator",{reOpen:!0,model:t.view.model})}}]}),this.contextMenu=new l({groups:o}),this.contextMenu.getModal().on("hide",this.onContextMenuHide)},getContextMenu:function getContextMenu(){return this.contextMenu||this.initContextMenu(),this.contextMenu},onContextMenu:function onContextMenu(t){$e.shortcuts.isControlEvent(t)||(this.view instanceof a.default||this.view.container&&this.view.container.isDesignable())&&(t.preventDefault(),t.stopPropagation(),this.getContextMenu().show(t),elementor.channels.editor.reply("contextMenu:targetView",this.view))},onRequestContextMenu:function onRequestContextMenu(t){var o=this.getContextMenu().getModal(),i=o.getSettings("iframe"),r=_.findWhere(this.contextMenu.getSettings("groups"),{name:"tools"});r.isVisible=!1,o.setSettings("iframe",null),this.onContextMenu(t),r.isVisible=!0,o.setSettings("iframe",i)},onContextMenuHide:function onContextMenuHide(){elementor.channels.editor.reply("contextMenu:targetView",null)},onDestroy:function onDestroy(){this.contextMenu&&this.contextMenu.destroy()}})},35343:(t,o,i)=>{"use strict";var r,a=i(18194).__,l=i(67971)(i(18042));i(99236),r=Marionette.Behavior.extend({editing:!1,$currentEditingArea:null,ui:function ui(){return{inlineEditingArea:"."+this.getOption("inlineEditingClass")}},events:function events(){return{"click @ui.inlineEditingArea":"onInlineEditingClick","input @ui.inlineEditingArea":"onInlineEditingUpdate"}},initialize:function initialize(){this.onInlineEditingBlur=this.onInlineEditingBlur.bind(this)},getEditingSettingKey:function getEditingSettingKey(){return this.$currentEditingArea.data().elementorSettingKey},startEditing:function startEditing(t){if(!this.editing&&this.view.container.isEditable()&&!this.view.model.isRemoteRequestActive()){var o=t.data().elementorSettingKey,i=o,r=o.split("."),l=3===r.length,u=this.view.getEditModel().get("settings");l&&(u=u.get(r[0]).models[r[1]],i=r[2]);var c=u.get("__dynamic__");if(!(c&&c[i])){this.$currentEditingArea=t;var d=this.$currentEditingArea.data().elementorInlineEditingToolbar,m="advanced"===d?"advanced":"basic",p=this.view.getEditModel(),h=elementor.config.inlineEditing,g=p.getSetting(this.getEditingSettingKey());"advanced"===m&&(g=wp.editor.autop(g)),this.$currentEditingArea.html(g);var v=elementorFrontend.elements.window.ElementorInlineEditor;this.editing=!0,this.view.allowRender=!1,this.view.model.setHtmlCache(""),this.editor=new v({linksInNewWindow:!0,stay:!1,editor:this.$currentEditingArea[0],mode:m,list:"none"===d?[]:h.toolbar[d||"basic"],cleanAttrs:["id","class","name"],placeholder:a("Type Here","elementor")+"...",toolbarIconsPrefix:"eicon-editor-",toolbarIconsDictionary:{externalLink:{className:"eicon-editor-external-link"},list:{className:"eicon-editor-list-ul"},insertOrderedList:{className:"eicon-editor-list-ol"},insertUnorderedList:{className:"eicon-editor-list-ul"},createlink:{className:"eicon-editor-link"},unlink:{className:"eicon-editor-unlink"},blockquote:{className:"eicon-editor-quote"},p:{className:"eicon-editor-paragraph"},pre:{className:"eicon-editor-code"}}}),jQuery(this.editor._menu).children().on("mousedown",(function(t){t.preventDefault()})),this.$currentEditingArea.on("blur",this.onInlineEditingBlur),elementorCommon.elements.$body.on("mousedown",this.onInlineEditingBlur)}}},stopEditing:function stopEditing(){this.editing=!1,this.$currentEditingArea.off("blur",this.onInlineEditingBlur),elementorCommon.elements.$body.off("mousedown",this.onInlineEditingBlur),this.editor.destroy(),this.view.allowRender=!0,"advanced"===this.$currentEditingArea.data().elementorInlineEditingToolbar&&this.view.getEditModel().renderRemoteServer()},onInlineEditingClick:function onInlineEditingClick(t){var o=this,i=jQuery(t.currentTarget);setTimeout((function(){o.startEditing(i)}),30)},onInlineEditingBlur:function onInlineEditingBlur(t){var o=this;"mousedown"!==t.type?setTimeout((function(){var t=elementorFrontend.elements.window.getSelection();jQuery(t.focusNode).closest(".pen-input-wrapper").length||o.stopEditing()}),20):this.stopEditing()},onInlineEditingUpdate:function onInlineEditingUpdate(){var t=this.getEditingSettingKey(),o=this.view.getContainer(),i=t.split(".");3===i.length&&(o=o.children[i[1]],t=i[2]),$e.run("document/elements/settings",{container:o,settings:(0,l.default)({},t,this.editor.getContent()),options:{external:!0}})}}),t.exports=r},10367:(t,o,i)=>{"use strict";var r;i(64434),i(71954),r=Marionette.Behavior.extend({onRenderCollection:function onRenderCollection(){this.handleInnerTabs(this.view)},handleInnerTabs:function handleInnerTabs(t){var o=t.children.filter((function(t){return"tabs"===t.model.get("type")}));_.each(o,(function(o){o.$el.find(".elementor-control-content").remove();var i=o.model.get("name"),r=t.children.filter((function(t){return"tab"===t.model.get("type")&&t.model.get("tabs_wrapper")===i}));_.each(r,(function(i,r){o._addChildView(i);var a=i.model.get("name"),l=t.children.filter((function(t){return a===t.model.get("inner_tab")}));0===r?i.$el.addClass("elementor-tab-active"):_.each(l,(function(t){t.$el.addClass("elementor-tab-close")}))}))}))},onChildviewControlTabClicked:function onChildviewControlTabClicked(t){var o="elementor-tab-close",i="elementor-tab-active",r=t.model.get("name"),a=this.view.children.filter((function(o){return"tab"!==o.model.get("type")&&t.model.get("tabs_wrapper")===o.model.get("tabs_wrapper")})),l=this.view.children.filter((function(o){return"tab"===o.model.get("type")&&t.model.get("tabs_wrapper")===o.model.get("tabs_wrapper")}));_.each(l,(function(t){t.$el.removeClass(i)})),t.$el.addClass(i),_.each(a,(function(t){t.model.get("inner_tab")===r?t.$el.removeClass(o):t.$el.addClass(o)})),elementor.getPanelView().updateScrollbar()}}),t.exports=r},92243:t=>{"use strict";var o;o=Marionette.Behavior.extend({defaults:{elChildType:"widget"},events:{sortstart:"onSortStart",sortreceive:"onSortReceive",sortupdate:"onSortUpdate",sortover:"onSortOver",sortout:"onSortOut"},initialize:function initialize(){this.listenTo(elementor.channels.dataEditMode,"switch",this.onEditModeSwitched).listenTo(this.view.options.model,"request:sort:start",this.startSort).listenTo(this.view.options.model,"request:sort:update",this.updateSort).listenTo(this.view.options.model,"request:sort:receive",this.receiveSort)},onEditModeSwitched:function onEditModeSwitched(t){"edit"===t?this.activate():this.deactivate()},onRender:function onRender(){var t=this;_.defer((function(){t.onEditModeSwitched(elementor.channels.dataEditMode.request("activeMode"))}))},onDestroy:function onDestroy(){this.deactivate()},activate:function activate(){if(elementor.userCan("design")&&!this.getChildViewContainer().sortable("instance")){var t=this.getChildViewContainer(),o={placeholder:"elementor-sortable-placeholder elementor-"+this.getOption("elChildType")+"-placeholder",cursorAt:{top:20,left:25},helper:this._getSortableHelper.bind(this),cancel:"input, textarea, button, select, option, .elementor-inline-editing, .elementor-tab-title",start:function start(){t.sortable("refreshPositions")}},i=_.extend(o,this.view.getSortableOptions());t.sortable(i)}},_getSortableHelper:function _getSortableHelper(t,o){var i=this.view.collection.get({cid:o.data("model-cid")});return'<div style="height: 84px; width: 125px;" class="elementor-sortable-helper elementor-sortable-helper-'+i.get("elType")+'"><div class="icon"><i class="'+i.getIcon()+'"></i></div><div class="elementor-element-title-wrapper"><div class="title">'+i.getTitle()+"</div></div></div>"},getChildViewContainer:function getChildViewContainer(){return this.view.getChildViewContainer(this.view)},getSortedElementNewIndex:function getSortedElementNewIndex(t){var o=elementor.channels.data.request("dragging:model").get("elType"),i=t.index();return"widget"===o&&elementorCommon.config.experimentalFeatures.e_dom_optimization&&i--,i},deactivate:function deactivate(){var t=this.getChildViewContainer();t.sortable("instance")&&t.sortable("destroy")},startSort:function startSort(t,o){t.stopPropagation();var i=elementor.getContainer(o.item.attr("data-id"));elementor.channels.data.reply("dragging:model",i.model).reply("dragging:view",i.view).reply("dragging:parent:view",this.view).trigger("drag:start",i.model).trigger(i.model.get("elType")+":drag:start")},updateSort:function updateSort(t,o){void 0===o&&(o=t.item.index()),$e.run("document/elements/move",{container:elementor.channels.data.request("dragging:view").getContainer(),target:this.view.getContainer(),options:{at:o}})},receiveSort:function receiveSort(t,o,i){if(t.stopPropagation(),this.view.isCollectionFilled())jQuery(o.sender).sortable("cancel");else{var r=elementor.channels.data.request("dragging:model"),a="section"===r.get("elType")&&r.get("isInner"),l="column"===this.view.getElementType()&&this.view.isInner();a&&l?jQuery(o.sender).sortable("cancel"):(void 0===i&&(i=o.item.index()),$e.run("document/elements/move",{container:elementor.channels.data.request("dragging:view").getContainer(),target:this.view.getContainer(),options:{at:i}}))}},onSortStart:function onSortStart(t,o){if("column"===this.options.elChildType){var i=o.item.data("sortableItem").items,r=0;i.forEach((function(t){if(t.item[0]===o.item[0])return r=t.height,!1})),o.placeholder.height(r)}this.startSort(t,o)},onSortOver:function onSortOver(t){t.stopPropagation();var o=elementor.channels.data.request("dragging:model");jQuery(t.target).addClass("elementor-draggable-over").attr({"data-dragged-element":o.get("elType"),"data-dragged-is-inner":o.get("isInner")}),this.$el.addClass("elementor-dragging-on-child")},onSortOut:function onSortOut(t){t.stopPropagation(),jQuery(t.target).removeClass("elementor-draggable-over").removeAttr("data-dragged-element data-dragged-is-inner"),this.$el.removeClass("elementor-dragging-on-child")},onSortReceive:function onSortReceive(t,o){this.receiveSort(t,o,this.getSortedElementNewIndex(o.item))},onSortUpdate:function onSortUpdate(t,o){t.stopPropagation(),this.getChildViewContainer()[0]===o.item.parent()[0]&&this.updateSort(o,this.getSortedElementNewIndex(o.item))},onAddChild:function onAddChild(t){t.$el.attr("data-model-cid",t.model.cid)}}),t.exports=o},46341:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(76700)),d=a(i(44263)),m=a(i(77371)),p=a(i(68537)),h=function(t){(0,m.default)(_default,t);var o=(0,p.default)(_default);function _default(){return(0,l.default)(this,_default),o.apply(this,arguments)}return(0,u.default)(_default,[{key:"events",value:function events(){return{dragstart:"onDragStart",dragstop:"onDragStop"}}},{key:"initialize",value:function initialize(){(0,c.default)((0,d.default)(_default.prototype),"initialize",this).call(this),this.listenTo(elementor.channels.dataEditMode,"switch",this.toggle),this.view.options.draggable=this}},{key:"activate",value:function activate(){this.$el.draggable({addClasses:!1})}},{key:"deactivate",value:function deactivate(){this.$el.draggable("instance")&&this.$el.draggable("destroy")}},{key:"toggle",value:function toggle(){var t=this.view.getEditModel().getSetting("_position");this.deactivate(),t&&this.view.getContainer().isDesignable()&&this.activate()}},{key:"onRender",value:function onRender(){var t=this;_.defer((function(){return t.toggle()}))}},{key:"onDestroy",value:function onDestroy(){this.deactivate()}},{key:"onDragStart",value:function onDragStart(t){t.stopPropagation(),this.view.model.trigger("request:edit")}},{key:"onDragStop",value:function onDragStop(t,o){var i=this;t.stopPropagation();var r=elementorFrontend.getCurrentDeviceMode(),a="desktop"===r?"":"_"+r,l=this.view.getEditModel(),u=l.getSetting("_offset_orientation_h"),c=l.getSetting("_offset_orientation_v"),d={},m=elementorFrontend.config.is_rtl,p=this.$el.offsetParent().width(),h=this.$el.outerWidth(!0),g=o.position.left,v=m?p-g-h:g,y=o.position.top,C="_offset_x",b="_offset_y";"end"===u&&(v=p-v-h,C="_offset_x_end");var w=l.getSetting(C+a).unit;v=elementor.helpers.elementSizeToUnit(this.$el,v,w);var k=this.$el.offsetParent().height(),S=this.$el.outerHeight(!0);"end"===c&&(y=k-y-S,b="_offset_y_end");var x=l.getSetting(b+a).unit;y=elementor.helpers.elementSizeToUnit(this.$el,y,x),d[C+a]={size:v,unit:w},d[b+a]={size:y,unit:x},$e.run("document/elements/settings",{container:this.view.container,settings:d,options:{external:!0}}),setTimeout((function(){i.$el.css({top:"",left:"",right:"",bottom:"",width:"",height:""})}),250)}}]),_default}(Marionette.Behavior);o.default=h},74985:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(76700)),d=a(i(44263)),m=a(i(77371)),p=a(i(68537)),h=function(t){(0,m.default)(_default,t);var o=(0,p.default)(_default);function _default(){return(0,l.default)(this,_default),o.apply(this,arguments)}return(0,u.default)(_default,[{key:"events",value:function events(){return{resizestart:"onResizeStart",resizestop:"onResizeStop",resize:"onResize"}}},{key:"initialize",value:function initialize(){(0,c.default)((0,d.default)(_default.prototype),"initialize",this).call(this),this.listenTo(elementor.channels.dataEditMode,"switch",this.toggle),this.view.options.resizeable=this}},{key:"activate",value:function activate(){this.$el.resizable({handles:"e, w"})}},{key:"deactivate",value:function deactivate(){this.$el.resizable("instance")&&this.$el.resizable("destroy")}},{key:"toggle",value:function toggle(){var t=this.view.getEditModel(),o=t.getSetting("_position"),i="initial"===t.getSetting("_element_width");this.deactivate(),(o||i)&&this.view.container.isDesignable()&&this.activate()}},{key:"onRender",value:function onRender(){var t=this;_.defer((function(){return t.toggle()}))}},{key:"onDestroy",value:function onDestroy(){this.deactivate()}},{key:"onResizeStart",value:function onResizeStart(t){t.stopPropagation(),this.view.model.trigger("request:edit")}},{key:"onResizeStop",value:function onResizeStop(t,o){t.stopPropagation();var i=elementorFrontend.getCurrentDeviceMode(),r="desktop"===i?"":"_"+i,a=this.view.getEditModel().getSetting("_element_custom_width"+r).unit,l=elementor.helpers.elementSizeToUnit(this.$el,o.size.width,a),u={};u["_element_width"+r]="initial",u["_element_custom_width"+r]={unit:a,size:l},$e.run("document/elements/settings",{container:this.view.container,settings:u,options:{external:!0}}),this.$el.css({width:"",height:"",left:""})}},{key:"onResize",value:function onResize(t){t.stopPropagation()}}]),_default}(Marionette.Behavior);o.default=h},20708:(t,o,i)=>{"use strict";var r=i(18194).__;t.exports=Marionette.ItemView.extend({template:"#tmpl-elementor-empty-preview",className:"elementor-empty-view",events:{click:"onClickAdd"},behaviors:function behaviors(){return{contextMenu:{behaviorClass:i(81152),groups:this.getContextMenuGroups()}}},getContextMenuGroups:function getContextMenuGroups(){var t=this;return[{name:"general",actions:[{name:"paste",title:r("Paste","elementor"),isEnabled:function isEnabled(){return $e.components.get("document/elements").utils.isPasteEnabled(t._parent.getContainer())},callback:function callback(){return $e.run("document/ui/paste",{container:t._parent.getContainer()})}}]}]},onClickAdd:function onClickAdd(){$e.route("panel/elements/categories")}})},99722:(t,o,i)=>{"use strict";var r,a=i(18194).sprintf,l=i(18194).__,u=i(39872),c=i(83866),d=i(20708);r=c.extend({template:Marionette.TemplateCache.get("#tmpl-elementor-column-content"),emptyView:d,childViewContainer:elementorCommon.config.experimentalFeatures.e_dom_optimization?"> .elementor-widget-wrap":"> .elementor-column-wrap > .elementor-widget-wrap",toggleEditTools:!0,behaviors:function behaviors(){var behaviors=c.prototype.behaviors.apply(this,arguments);return _.extend(behaviors,{Sortable:{behaviorClass:i(92243),elChildType:"widget"},Resizable:{behaviorClass:i(63960)}}),elementor.hooks.applyFilters("elements/column/behaviors",behaviors,this)},className:function className(){var t=c.prototype.className.apply(this,arguments),o=this.isInner()?"inner":"top";return t+" elementor-column elementor-"+o+"-column"},tagName:function tagName(){return this.model.getSetting("html_tag")||"div"},ui:function ui(){var ui=c.prototype.ui.apply(this,arguments);return ui.columnInner=elementorCommon.config.experimentalFeatures.e_dom_optimization?"> .elementor-widget-wrap":"> .elementor-column-wrap",ui.percentsTooltip="> .elementor-element-overlay .elementor-column-percents-tooltip",ui},getEditButtons:function getEditButtons(){var t=elementor.getElementData(this.model),o={};return o.edit={title:a(l("Edit %s","elementor"),t.title),icon:"column"},elementor.getPreferences("edit_buttons")&&(o.duplicate={title:a(l("Duplicate %s","elementor"),t.title),icon:"clone"},o.add={title:a(l("Add %s","elementor"),t.title),icon:"plus"},o.remove={title:a(l("Delete %s","elementor"),t.title),icon:"close"}),o},initialize:function initialize(){c.prototype.initialize.apply(this,arguments),this.model.get("editSettings").set("defaultEditRoute","layout")},attachElContent:function attachElContent(){c.prototype.attachElContent.apply(this,arguments);var t=jQuery("<div>",{class:"elementor-column-percents-tooltip"});this.$el.children(".elementor-element-overlay").append(t)},getContextMenuGroups:function getContextMenuGroups(){var t=this,o=c.prototype.getContextMenuGroups.apply(this,arguments),i=o.indexOf(_.findWhere(o,{name:"general"}));return o.splice(i+1,0,{name:"addNew",actions:[{name:"addNew",icon:"eicon-plus",title:l("Add New Column","elementor"),callback:this.addNewColumn.bind(this),isEnabled:function isEnabled(){return t.model.collection.length<u.DEFAULT_MAX_COLUMNS}}]}),o},isDroppingAllowed:function isDroppingAllowed(){if(!this.getContainer().isEditable())return!1;var t=elementor.channels.panelElements.request("element:selected");if(!t)return!1;var o=t.model.get("elType");return"section"===o?!this.isInner():"widget"===o},getPercentsForDisplay:function getPercentsForDisplay(){return(+this.model.getSetting("_inline_size")||this.getPercentSize()).toFixed(1)+"%"},changeSizeUI:function changeSizeUI(){var t=this,o=t.model.getSetting("_column_size");t.$el.attr("data-col",o),_.defer((function(){t.ui.percentsTooltip&&t.ui.percentsTooltip.text(t.getPercentsForDisplay())}))},getPercentSize:function getPercentSize(t){return t||(t=this.el.getBoundingClientRect().width),+(t/this.$el.parent().width()*100).toFixed(3)},getSortableOptions:function getSortableOptions(){return{connectWith:".elementor-widget-wrap",items:"> .elementor-element"}},changeChildContainerClasses:function changeChildContainerClasses(){var t="elementor-element-empty",o="elementor-element-populated";this.ui.columnInner&&(this.collection.isEmpty()?this.ui.columnInner.removeClass(o).addClass(t):this.ui.columnInner.removeClass(t).addClass(o))},addNewColumn:function addNewColumn(){$e.run("document/elements/create",{model:{elType:"column"},container:this.getContainer().parent,options:{at:this.$el.index()+1}})},onRender:function onRender(){var t=this,o=elementorCommon.config.experimentalFeatures.e_dom_optimization,i="";i=o?" > .elementor-widget-wrap > .elementor-element, >.elementor-widget-wrap > .elementor-empty-view > .elementor-first-add":" > .elementor-column-wrap > .elementor-widget-wrap > .elementor-element, >.elementor-column-wrap > .elementor-widget-wrap > .elementor-empty-view > .elementor-first-add",c.prototype.onRender.apply(this,arguments),this.changeChildContainerClasses(),this.changeSizeUI(),this.$el.html5Droppable({items:i,axis:["vertical"],groups:["elementor-element"],isDroppingAllowed:this.isDroppingAllowed.bind(this),currentElementClass:"elementor-html5dnd-current-element",placeholderClass:"elementor-sortable-placeholder elementor-widget-placeholder",hasDraggingOnChildClass:"elementor-dragging-on-child",onDropping:function onDropping(i,r){r.stopPropagation(),elementor.getPreviewView().onPanelElementDragEnd();var a=jQuery(r.currentTarget).index();"bottom"!==i||o?"top"===i&&o&&a--:a++,t.addElementFromPanel({at:a})}})},onAddButtonClick:function onAddButtonClick(t){t.stopPropagation(),this.addNewColumn()}}),t.exports=r},39872:(t,o,i)=>{"use strict";var r=i(18194).sprintf,a=i(18194).__,l=i(67971);i(71954);var u=l(i(57846)),c=i(83866),d=c.extend({childViewContainer:function childViewContainer(){var t="> .elementor-container";return elementorCommon.config.experimentalFeatures.e_dom_optimization||(t+=" > .elementor-row"),t},template:Marionette.TemplateCache.get("#tmpl-elementor-section-content"),addSectionView:null,_checkIsFull:function _checkIsFull(){this.toggleSectionIsFull(),elementorCommon.helpers.softDeprecated("_checkIsFull","2.9.0","toggleSectionIsFull()")},toggleSectionIsFull:function toggleSectionIsFull(){this.$el.toggleClass("elementor-section-filled",this.isCollectionFilled())},addChildModel:function addChildModel(t){var o=t instanceof Backbone.Model,i=this.isInner();return o?t.set("isInner",i):t.isInner=i,c.prototype.addChildModel.apply(this,arguments)},className:function className(){var t=c.prototype.className.apply(this,arguments),o=this.isInner()?"inner":"top";return t+" elementor-section elementor-"+o+"-section"},tagName:function tagName(){return this.model.getSetting("html_tag")||"section"},behaviors:function behaviors(){var behaviors=c.prototype.behaviors.apply(this,arguments);return _.extend(behaviors,{Sortable:{behaviorClass:i(92243),elChildType:"column"}}),elementor.hooks.applyFilters("elements/section/behaviors",behaviors,this)},initialize:function initialize(){c.prototype.initialize.apply(this,arguments),this.model.get("editSettings").set("defaultEditRoute","layout")},getEditButtons:function getEditButtons(){var t=elementor.getElementData(this.model),o={};return this.isInner()||(o.add={title:r(a("Add %s","elementor"),t.title),icon:"plus"}),o.edit={title:r(a("Edit %s","elementor"),t.title),icon:"handle"},elementor.getPreferences("edit_buttons")&&(o.duplicate={title:r(a("Duplicate %s","elementor"),t.title),icon:"clone"}),o.remove={title:r(a("Delete %s","elementor"),t.title),icon:"close"},o},getContextMenuGroups:function getContextMenuGroups(){var t=c.prototype.getContextMenuGroups.apply(this,arguments),o=t.indexOf(_.findWhere(t,{name:"clipboard"}));return t.splice(o+1,0,{name:"save",actions:[{name:"save",title:a("Save as Template","elementor"),callback:this.save.bind(this)}]}),t},getSortableOptions:function getSortableOptions(){return{connectWith:(this.isInner()?".elementor-inner-section":".elementor-top-section")+this.childViewContainer(),handle:"> .elementor-element-overlay .elementor-editor-element-edit",items:"> .elementor-column",forcePlaceholderSize:!0,tolerance:"pointer"}},getColumnPercentSize:function getColumnPercentSize(t,o){return+(o/t.parent().width()*100).toFixed(3)},getDefaultStructure:function getDefaultStructure(){return this.collection.length+"0"},getStructure:function getStructure(){return this.model.getSetting("structure")},getColumnAt:function getColumnAt(t){var o=this.collection.at(t);return o?this.children.findByModelCid(o.cid):null},getNextColumn:function getNextColumn(t){return this.getColumnAt(this.collection.indexOf(t.model)+1)},getPreviousColumn:function getPreviousColumn(t){return this.getColumnAt(this.collection.indexOf(t.model)-1)},getNeighborContainer:function getNeighborContainer(t){var o=t.parent.view,i=o.getNextColumn(t.view)||o.getPreviousColumn(t.view);return!!i&&i.getContainer()},setStructure:function setStructure(t){var o=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=elementor.presetsFactory.getParsedStructure(t);if(+i.columnsCount!==this.collection.length)throw new TypeError("The provided structure doesn't match the columns count.");$e.run("document/elements/settings",{container:this.getContainer(),settings:{structure:t},options:{external:!0}}),o&&this.adjustColumns()},adjustColumns:function adjustColumns(){var t=elementor.presetsFactory.getPresetByStructure(this.getStructure());this.children.each((function(o,i){var r=o.getContainer();$e.run("document/elements/settings",{container:r,settings:{_column_size:t.preset[i],_inline_size:null}})}))},resetLayout:function resetLayout(){var t=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.setStructure(this.getDefaultStructure(),t)},resetColumnsCustomSize:function resetColumnsCustomSize(){this.children.each((function(t){$e.run("document/elements/settings",{container:t.getContainer(),settings:{_inline_size:null},options:{external:!0}})}))},isCollectionFilled:function isCollectionFilled(){return 10<=this.collection.length},showChildrenPercentsTooltip:function showChildrenPercentsTooltip(t,o){t.ui.percentsTooltip.show(),t.ui.percentsTooltip.attr("data-side",elementorCommon.config.isRTL?"right":"left"),o.ui.percentsTooltip.show(),o.ui.percentsTooltip.attr("data-side",elementorCommon.config.isRTL?"left":"right")},hideChildrenPercentsTooltip:function hideChildrenPercentsTooltip(t,o){t.ui.percentsTooltip.hide(),o.ui.percentsTooltip.hide()},destroyAddSectionView:function destroyAddSectionView(){this.addSectionView&&!this.addSectionView.isDestroyed&&this.addSectionView.destroy()},onRender:function onRender(){c.prototype.onRender.apply(this,arguments),this.toggleSectionIsFull()},onAddButtonClick:function onAddButtonClick(){if(!this.addSectionView||this.addSectionView.isDestroyed){var t=new u.default({at:this.model.collection.indexOf(this.model)});t.render(),this.$el.before(t.$el),t.$el.hide(),setTimeout((function(){t.$el.slideDown(null,(function(){jQuery(this).css("display","")}))})),this.addSectionView=t}else this.addSectionView.fadeToDeath()},onChildviewRequestResizeStart:function onChildviewRequestResizeStart(t){var o=this.getNextColumn(t);if(o){this.showChildrenPercentsTooltip(t,o);var i=t.$el.find("iframe").add(o.$el.find("iframe"));elementor.helpers.disableElementEvents(i)}},onChildviewRequestResizeStop:function onChildviewRequestResizeStop(t){var o=this.getNextColumn(t);if(o){this.hideChildrenPercentsTooltip(t,o);var i=t.$el.find("iframe").add(o.$el.find("iframe"));elementor.helpers.enableElementEvents(i)}},onChildviewRequestResize:function onChildviewRequestResize(t,o){o.element.css({width:"",left:"initial"}),$e.run("document/elements/settings",{container:t.getContainer(),settings:{_inline_size:this.getColumnPercentSize(o.element,o.size.width)}})},onDestroy:function onDestroy(){c.prototype.onDestroy.apply(this,arguments),this.destroyAddSectionView()}});t.exports=d,t.exports.DEFAULT_INNER_SECTION_COLUMNS=2,t.exports.DEFAULT_MIN_COLUMN_SIZE=2,t.exports.DEFAULT_MAX_COLUMNS=10},97445:(t,o,i)=>{"use strict";var r=i(18194).sprintf,a=i(18194).__,l=i(67971);i(71954);var u,c=l(i(46341)),d=l(i(74985)),m=i(83866);u=m.extend({_templateType:null,toggleEditTools:!0,getTemplate:function getTemplate(){var t=this.getEditModel();return"remote"!==this.getTemplateType()?Marionette.TemplateCache.get("#tmpl-elementor-"+t.get("widgetType")+"-content"):_.template("")},className:function className(){var t=m.prototype.className.apply(this,arguments);return t+" elementor-widget "+elementor.getElementData(this.getEditModel()).html_wrapper_class},events:function events(){var events=m.prototype.events.apply(this,arguments);return events.click="onClickEdit",events},behaviors:function behaviors(){var behaviors=m.prototype.behaviors.apply(this,arguments);return _.extend(behaviors,{InlineEditing:{behaviorClass:i(35343),inlineEditingClass:"elementor-inline-editing"},Draggable:{behaviorClass:c.default},Resizable:{behaviorClass:d.default}}),elementor.hooks.applyFilters("elements/widget/behaviors",behaviors,this)},getEditButtons:function getEditButtons(){var t=elementor.getElementData(this.model),o={};return o.edit={title:r(a("Edit %s","elementor"),t.title),icon:"edit"},elementor.getPreferences("edit_buttons")&&(o.duplicate={title:r(a("Duplicate %s","elementor"),t.title),icon:"clone"},o.remove={title:r(a("Delete %s","elementor"),t.title),icon:"close"}),o},initialize:function initialize(){var t=this;m.prototype.initialize.apply(this,arguments);var o=this.getEditModel();o.on({"before:remote:render":this.onModelBeforeRemoteRender.bind(this),"remote:render":this.onModelRemoteRender.bind(this),"settings:loaded":function settingsLoaded(){return setTimeout(t.render.bind(t))}}),"remote"!==this.getTemplateType()||this.getEditModel().getHtmlCache()||o.renderRemoteServer();var i=this.onRender;this.render=_.throttle(this.render,300),this.onRender=function(){_.defer(i.bind(this))}},getContextMenuGroups:function getContextMenuGroups(){var t=this,o=m.prototype.getContextMenuGroups.apply(this,arguments),i=o.indexOf(_.findWhere(o,{name:"clipboard"}));return o.splice(i+1,0,{name:"save",actions:[{name:"save",title:a("Save as a Global","elementor"),shortcut:jQuery("<i>",{class:"eicon-pro-icon"}),isEnabled:function isEnabled(){return"global"!==t.options.model.get("widgetType")}}]}),o},render:function render(){if(this.model.isRemoteRequestActive())return this.handleEmptyWidget(),void this.$el.addClass("elementor-element");elementorCommonConfig.isTesting&&this.isDestroyed||Marionette.CompositeView.prototype.render.apply(this,arguments)},handleEmptyWidget:function handleEmptyWidget(){this.$el.addClass("elementor-widget-empty").append('<i class="elementor-widget-empty-icon '+this.getEditModel().getIcon()+'"></i>')},getTemplateType:function getTemplateType(){if(null===this._templateType){var t=this.getEditModel(),o=jQuery("#tmpl-elementor-"+t.get("widgetType")+"-content");this._templateType=o.length?"js":"remote"}return this._templateType},getHTMLContent:function getHTMLContent(t){return this.getEditModel().getHtmlCache()||t},attachElContent:function attachElContent(t){var o=this;return _.defer((function(){elementorFrontend.elements.window.jQuery(o.el).empty().append(o.getHandlesOverlay(),o.getHTMLContent(t)),o.bindUIElements()})),this},addInlineEditingAttributes:function addInlineEditingAttributes(t,o){this.addRenderAttribute(t,{class:"elementor-inline-editing","data-elementor-setting-key":t}),o&&this.addRenderAttribute(t,{"data-elementor-inline-editing-toolbar":o})},getRepeaterSettingKey:function getRepeaterSettingKey(t,o,i){return[o,i,t].join(".")},onModelBeforeRemoteRender:function onModelBeforeRemoteRender(){this.$el.addClass("elementor-loading")},onBeforeDestroy:function onBeforeDestroy(){elementor.$previewContents.find("#elementor-style-"+this.model.get("id")).remove()},onModelRemoteRender:function onModelRemoteRender(){this.isDestroyed||(this.$el.removeClass("elementor-loading"),this.getContainer().document.id===elementor.documents.getCurrent().id&&this.render())},onRender:function onRender(){var t=this;m.prototype.onRender.apply(t,arguments);var o=t.getEditModel(),i=o.getSetting("_skin")||"default";t.$el.attr("data-widget_type",o.get("widgetType")+"."+i).removeClass("elementor-widget-empty").children(".elementor-widget-empty-icon").remove(),t.$el.imagesLoaded().always((function(){setTimeout((function(){t.$el.children(".elementor-widget-container").outerHeight()||t.handleEmptyWidget()}),200)}))},onClickEdit:function onClickEdit(){this.container.isEditable()&&this.model.trigger("request:edit")}}),t.exports=u},89283:(t,o,i)=>{"use strict";var r=i(67971)(i(83452));t.exports=Marionette.Region.extend({storage:null,storageSizeKeys:null,constructor:function constructor(){Marionette.Region.prototype.constructor.apply(this,arguments);var t=elementorCommon.storage.get(this.getStorageKey());this.storage=t||this.getDefaultStorage(),this.storageSizeKeys=(0,r.default)(this.storage.size)},saveStorage:function saveStorage(t,o){this.storage[t]=o,elementorCommon.storage.set(this.getStorageKey(),this.storage)},saveSize:function saveSize(t){t||(t=elementor.helpers.getElementInlineStyle(this.$el,this.storageSizeKeys)),this.saveStorage("size",t)}})},93593:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.Close=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(Close,t);var o=(0,d.default)(Close);function Close(){return(0,l.default)(this,Close),o.apply(this,arguments)}return(0,u.default)(Close,[{key:"apply",value:function apply(){return this.component.close()}}]),Close}(a(i(68689)).default);o.Close=m;var p=m;o.default=p},54495:(t,o,i)=>{"use strict";var r=i(67394);r(o,"__esModule",{value:!0}),r(o,"Close",{enumerable:!0,get:function get(){return a.Close}}),r(o,"Open",{enumerable:!0,get:function get(){return l.Open}}),r(o,"Toggle",{enumerable:!0,get:function get(){return u.Toggle}});var a=i(93593),l=i(15900),u=i(98532)},15900:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.Open=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(Open,t);var o=(0,d.default)(Open);function Open(){return(0,l.default)(this,Open),o.apply(this,arguments)}return(0,u.default)(Open,[{key:"apply",value:function apply(){$e.route(this.component.getNamespace())}}]),Open}(a(i(68689)).default);o.Open=m;var p=m;o.default=p},98532:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.Toggle=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(Toggle,t);var o=(0,d.default)(Toggle);function Toggle(){return(0,l.default)(this,Toggle),o.apply(this,arguments)}return(0,u.default)(Toggle,[{key:"apply",value:function apply(){this.component.isOpen?$e.run("navigator/close"):$e.run("navigator/open")}}]),Toggle}(a(i(68689)).default);o.Toggle=m;var p=m;o.default=p},33524:(t,o,i)=>{"use strict";var r=i(67394),a=i(52369),l=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var u=l(i(11959)),c=l(i(39041)),d=l(i(76700)),m=l(i(44263)),p=l(i(77371)),h=l(i(68537)),g=l(i(15591)),v=a(i(54495)),y=function(t){(0,p.default)(Component,t);var o=(0,h.default)(Component);function Component(){return(0,u.default)(this,Component),o.apply(this,arguments)}return(0,c.default)(Component,[{key:"getNamespace",value:function getNamespace(){return"navigator"}},{key:"defaultRoutes",value:function defaultRoutes(){return{"":function _(){}}}},{key:"defaultCommands",value:function defaultCommands(){return this.importCommands(v)}},{key:"defaultShortcuts",value:function defaultShortcuts(){return{toggle:{keys:"ctrl+i",dependency:function dependency(){return elementor.getPreviewContainer().isEditable()}}}}},{key:"open",value:function open(t){var o=t.model,i=void 0!==o&&o;return this.manager.open(i),!0}},{key:"close",value:function close(t){return!!(0,d.default)((0,m.default)(Component.prototype),"close",this).call(this)&&(this.manager.close(t),!0)}}]),Component}(g.default);o.default=y},36087:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(_default,t);var o=(0,d.default)(_default);function _default(){return(0,l.default)(this,_default),o.apply(this,arguments)}return(0,u.default)(_default,[{key:"getTemplate",value:function getTemplate(){return"#tmpl-elementor-navigator__elements--empty"}},{key:"className",value:function className(){return"elementor-empty-view"}},{key:"onRendr",value:function onRendr(){this.$el.css("padding-"+(elementorCommon.config.isRTL?"right":"left"),this.getOption("indent"))}}]),_default}(Marionette.ItemView);o.default=m},60891:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0,i(64434),i(3777),i(38081);var l=a(i(35657)),u=a(i(83452)),c=a(i(11959)),d=a(i(39041)),m=a(i(77371)),p=a(i(68537)),h=a(i(36087)),g=a(i(14391)),v=function(t){(0,m.default)(_default,t);var o=(0,p.default)(_default);function _default(){return(0,c.default)(this,_default),o.apply(this,arguments)}return(0,d.default)(_default,[{key:"getTemplate",value:function getTemplate(){return"#tmpl-elementor-navigator__elements"}},{key:"ui",value:function ui(){return{item:"> .elementor-navigator__item",title:"> .elementor-navigator__item .elementor-navigator__element__title__text",toggle:"> .elementor-navigator__item > .elementor-navigator__element__toggle",toggleList:"> .elementor-navigator__item > .elementor-navigator__element__list-toggle",indicators:"> .elementor-navigator__item > .elementor-navigator__element__indicators",indicator:"> .elementor-navigator__item > .elementor-navigator__element__indicators > .elementor-navigator__element__indicator",elements:"> .elementor-navigator__elements"}}},{key:"events",value:function events(){return{contextmenu:"onContextMenu","click @ui.item":"onItemClick","click @ui.toggle":"onToggleClick","click @ui.toggleList":"onToggleListClick","click @ui.indicator":"onIndicatorClick","dblclick @ui.title":"onTitleDoubleClick","keydown @ui.title":"onTitleKeyDown","paste @ui.title":"onTitlePaste","sortstart @ui.elements":"onSortStart","sortover @ui.elements":"onSortOver","sortout @ui.elements":"onSortOut","sortstop @ui.elements":"onSortStop","sortupdate @ui.elements":"onSortUpdate","sortreceive @ui.elements":"onSortReceive"}}},{key:"getEmptyView",value:function getEmptyView(){return this.isRoot()?g.default:this.hasChildren()?h.default:null}},{key:"childViewOptions",value:function childViewOptions(){return{indent:this.getIndent()+10}}},{key:"className",value:function className(){var t=this.model.get("elType"),o="elementor-navigator__element";return t&&(o+=" elementor-navigator__element-"+t),this.hasChildren()&&(o+=" elementor-navigator__element--has-children"),o}},{key:"attributes",value:function attributes(){return{"data-id":this.model.id,"data-model-cid":this.model.cid}}},{key:"templateHelpers",value:function templateHelpers(){var t={};return this.isRoot()||(t.title=this.model.getTitle(),t.icon="section"===this.model.get("elType")?"":this.model.getIcon()),t}},{key:"initialize",value:function initialize(){this.collection=this.model.get("elements"),this.childViewContainer=".elementor-navigator__elements",this.listenTo(this.model,"request:edit",this.onEditRequest).listenTo(this.model,"change",this.onModelChange).listenTo(this.model.get("settings"),"change",this.onModelSettingsChange)}},{key:"getIndent",value:function getIndent(){return this.getOption("indent")||0}},{key:"isRoot",value:function isRoot(){return!this.model.get("elType")}},{key:"hasChildren",value:function hasChildren(){return"widget"!==this.model.get("elType")}},{key:"toggleList",value:function toggleList(t,o){if(this.hasChildren()&&!this.isRoot()&&this.ui.item.hasClass("elementor-active")!==t){this.ui.item.toggleClass("elementor-active",t);var i="slideToggle";void 0!==t&&(i="slide"+(t?"Down":"Up")),this.ui.elements[i](300,o)}}},{key:"toggleHiddenClass",value:function toggleHiddenClass(){this.$el.toggleClass("elementor-navigator__element--hidden",!!this.model.get("hidden"))}},{key:"recursiveChildInvoke",value:function recursiveChildInvoke(t){for(var o=arguments,i=this,r=arguments.length,a=new Array(r>1?r-1:0),l=1;l<r;l++)a[l-1]=arguments[l];this[t].apply(this,a),this.children.each((function(t){t instanceof i.constructor&&t.recursiveChildInvoke.apply(t,o)}))}},{key:"recursiveParentInvoke",value:function recursiveParentInvoke(t){for(var o=arguments.length,i=new Array(o>1?o-1:0),r=1;r<o;r++)i[r-1]=arguments[r];this._parent instanceof this.constructor&&(this._parent[t].apply(this._parent,i),this._parent.recursiveParentInvoke.apply(this._parent,arguments))}},{key:"recursiveChildAgreement",value:function recursiveChildAgreement(t){for(var o=arguments.length,i=new Array(o>1?o-1:0),r=1;r<o;r++)i[r-1]=arguments[r];if(!this[t].apply(this,i))return!1;for(var a=!0,u=0,c=(0,l.default)(this.children._views);u<c.length;u++){var d=c[u];if(d instanceof this.constructor&&!d.recursiveChildAgreement.apply(d,arguments)){a=!1;break}}return a}},{key:"activateMouseInteraction",value:function activateMouseInteraction(){this.$el.on({mouseenter:this.onMouseEnter.bind(this),mouseleave:this.onMouseLeave.bind(this)})}},{key:"deactivateMouseInteraction",value:function deactivateMouseInteraction(){this.$el.off("mouseenter mouseleave")}},{key:"dragShouldBeIgnored",value:function dragShouldBeIgnored(t){return!$e.components.get("document/elements").utils.isValidChild(t,this.model)}},{key:"addEditingClass",value:function addEditingClass(){this.ui.item.addClass("elementor-editing")}},{key:"removeEditingClass",value:function removeEditingClass(){this.ui.item.removeClass("elementor-editing")}},{key:"enterTitleEditing",value:function enterTitleEditing(){this.ui.title.attr("contenteditable",!0).focus(),document.execCommand("selectAll"),elementor.addBackgroundClickListener("navigator",{ignore:this.ui.title,callback:this.exitTitleEditing.bind(this)})}},{key:"exitTitleEditing",value:function exitTitleEditing(){this.ui.title.attr("contenteditable",!1);var t=this.model.get("settings"),o=t.get("_title"),i=this.ui.title.text().trim();o||t.unset("_title",{silent:!0}),t.set("_title",i),$e.internal("document/save/set-is-modified",{status:!0}),elementor.removeBackgroundClickListener("navigator")}},{key:"activateSortable",value:function activateSortable(){elementor.userCan("design")&&this.ui.elements.sortable({items:"> .elementor-navigator__element",placeholder:"ui-sortable-placeholder",axis:"y",forcePlaceholderSize:!0,connectWith:".elementor-navigator__element-"+this.model.get("elType")+" > .elementor-navigator__elements",cancel:'[contenteditable="true"]'})}},{key:"renderIndicators",value:function renderIndicators(){var t=this,o=this.model.get("settings").attributes;this.ui.indicators.empty(),jQuery.each(elementor.navigator.indicators,(function(i,r){if(r.settingKeys.some((function(t){return o[t]}))){var a=jQuery("<div>",{class:"elementor-navigator__element__indicator",title:r.title}).attr("data-section",r.section).html('<i class="eicon-'.concat(r.icon,'"></i>'));t.ui.indicators.append(a),a.tipsy({delayIn:300,gravity:"s"})}}))}},{key:"onRender",value:function onRender(){this.activateSortable(),this.isRoot()||(this.ui.item.css("padding-"+(elementorCommon.config.isRTL?"right":"left"),this.getIndent()),this.toggleHiddenClass(),this.renderIndicators())}},{key:"onModelChange",value:function onModelChange(){void 0!==this.model.changed.hidden&&this.toggleHiddenClass()}},{key:"onModelSettingsChange",value:function onModelSettingsChange(t){var o=this;void 0!==t.changed._title&&this.ui.title.text(this.model.getTitle()),jQuery.each(elementor.navigator.indicators,(function(i,r){if((0,u.default)(t.changed).filter((function(t){return r.settingKeys.includes(t)})).length)return o.renderIndicators(),!1}))}},{key:"onItemClick",value:function onItemClick(){this.model.trigger("request:edit",{scrollIntoView:!0})}},{key:"onToggleClick",value:function onToggleClick(t){t.stopPropagation(),this.model.trigger("request:toggleVisibility")}},{key:"onTitleDoubleClick",value:function onTitleDoubleClick(){this.enterTitleEditing()}},{key:"onTitleKeyDown",value:function onTitleKeyDown(t){13===t.which&&(t.preventDefault(),this.exitTitleEditing())}},{key:"onTitlePaste",value:function onTitlePaste(t){t.preventDefault(),document.execCommand("insertHTML",!1,t.originalEvent.clipboardData.getData("text/plain"))}},{key:"onToggleListClick",value:function onToggleListClick(t){t.stopPropagation(),this.toggleList()}},{key:"onSortStart",value:function onSortStart(t,o){this.model.trigger("request:sort:start",t,o),jQuery(o.item).children(".elementor-navigator__item").trigger("click"),elementor.navigator.getLayout().activateElementsMouseInteraction()}},{key:"onSortStop",value:function onSortStop(){elementor.navigator.getLayout().deactivateElementsMouseInteraction()}},{key:"onSortOver",value:function onSortOver(t){t.stopPropagation(),this.$el.addClass("elementor-dragging-on-child")}},{key:"onSortOut",value:function onSortOut(t){t.stopPropagation(),this.$el.removeClass("elementor-dragging-on-child")}},{key:"onSortUpdate",value:function onSortUpdate(t,o){t.stopPropagation(),this.ui.elements.is(o.item.parent())&&this.model.trigger("request:sort:update",o)}},{key:"onSortReceive",value:function onSortReceive(t,o){this.model.trigger("request:sort:receive",t,o)}},{key:"onMouseEnter",value:function onMouseEnter(t){var o=this;t.stopPropagation(),this.recursiveChildAgreement("dragShouldBeIgnored",elementor.channels.data.request("dragging:model"))||(this.autoExpandTimeout=setTimeout((function(){o.toggleList(!0,(function(){o.ui.elements.sortable("refreshPositions")}))}),500))}},{key:"onMouseLeave",value:function onMouseLeave(t){t.stopPropagation(),clearTimeout(this.autoExpandTimeout)}},{key:"onContextMenu",value:function onContextMenu(t){this.model.trigger("request:contextmenu",t)}},{key:"onEditRequest",value:function onEditRequest(){this.recursiveParentInvoke("toggleList",!0),elementor.navigator.getLayout().elements.currentView.recursiveChildInvoke("removeEditingClass"),this.addEditingClass(),elementor.helpers.scrollToView(this.$el,400,elementor.navigator.getLayout().elements.$el)}},{key:"onIndicatorClick",value:function onIndicatorClick(t){var o=t.currentTarget.dataset.section;setTimeout((function(){var t=elementor.getPanelView().currentPageView,i=t.getControlModel(o).get("tab");t.activateSection(o),t.activateTab(i),t.render()}))}}]),_default}(Marionette.CompositeView);o.default=v},47673:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=a(i(60891)),p=function(t){(0,c.default)(_default,t);var o=(0,d.default)(_default);function _default(){return(0,l.default)(this,_default),o.apply(this,arguments)}return(0,u.default)(_default,[{key:"getTemplate",value:function getTemplate(){return"#tmpl-elementor-navigator"}},{key:"id",value:function id(){return"elementor-navigator__inner"}},{key:"ui",value:function ui(){return{toggleAll:"#elementor-navigator__toggle-all",close:"#elementor-navigator__close"}}},{key:"events",value:function events(){return{"click @ui.toggleAll":"toggleAll","click @ui.close":"onCloseClick"}}},{key:"regions",value:function regions(){return{elements:"#elementor-navigator__elements"}}},{key:"toggleAll",value:function toggleAll(){var t="expand"===this.ui.toggleAll.data("elementor-action"),o=["eicon-collapse","eicon-expand"];this.ui.toggleAll.data("elementor-action",t?"collapse":"expand").removeClass(o[+t]).addClass(o[+!t]),this.elements.currentView.recursiveChildInvoke("toggleList",t)}},{key:"activateElementsMouseInteraction",value:function activateElementsMouseInteraction(){this.elements.currentView.recursiveChildInvoke("activateMouseInteraction")}},{key:"deactivateElementsMouseInteraction",value:function deactivateElementsMouseInteraction(){this.elements.currentView.recursiveChildInvoke("deactivateMouseInteraction")}},{key:"onShow",value:function onShow(){this.elements.show(new m.default({model:elementor.elementsModel}))}},{key:"onCloseClick",value:function onCloseClick(){$e.components.get("navigator").close()}}]),_default}(Marionette.LayoutView);o.default=p},34693:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67394),l=i(67971);a(o,"__esModule",{value:!0}),o.default=void 0,i(38081);var u=l(i(11959)),c=l(i(39041)),d=l(i(38852)),m=l(i(77371)),p=l(i(68537)),h=l(i(33524)),g=l(i(47673)),v=function(t){(0,m.default)(_default,t);var o=(0,p.default)(_default);function _default(t){var i;return(0,u.default)(this,_default),(i=o.call(this,t)).component=$e.components.register(new h.default({manager:(0,d.default)(i)})),i.isDocked=!1,i.setSize(),i.indicators={customPosition:{title:r("Custom Positioning","elementor"),icon:"cursor-move",settingKeys:["_position","_element_width"],section:"_section_position"}},i.ensurePosition=i.ensurePosition.bind((0,d.default)(i)),i.listenTo(elementor.channels.dataEditMode,"switch",i.onEditModeSwitched),elementor.on("document:loaded",i.onDocumentLoaded.bind((0,d.default)(i))),elementor.on("document:unloaded",i.onDocumentUnloaded.bind((0,d.default)(i))),i}return(0,c.default)(_default,[{key:"getStorageKey",value:function getStorageKey(){return"navigator"}},{key:"getDefaultStorage",value:function getDefaultStorage(){return{visible:!1,size:{width:"",height:"",top:"",bottom:"",right:"",left:""}}}},{key:"getLayout",value:function getLayout(){return this.currentView}},{key:"getDraggableOptions",value:function getDraggableOptions(){return{iframeFix:!0,handle:"#elementor-navigator__header",drag:this.onDrag.bind(this),stop:this.onDragStop.bind(this)}}},{key:"getResizableOptions",value:function getResizableOptions(){var t=this;return{handles:"all",containment:"document",minWidth:150,maxWidth:500,minHeight:240,start:function start(){elementor.$previewWrapper.addClass("ui-resizable-resizing")},stop:function stop(){elementor.$previewWrapper.removeClass("ui-resizable-resizing"),t.isDocked?(t.storage.size.width=elementor.helpers.getElementInlineStyle(t.$el,["width"]).width,elementorCommon.storage.set("navigator",t.storage)):t.saveSize()},resize:function resize(o,i){t.setSize(i.size.width+"px")}}}},{key:"initLayout",value:function initLayout(){this.show(new g.default),this.$el.draggable(this.getDraggableOptions()),this.$el.resizable(this.getResizableOptions())}},{key:"open",value:function open(t){this.$el.show(),this.setSize(),this.storage.docked&&this.dock(),t&&t.trigger("request:edit"),this.saveStorage("visible",!0),this.ensurePosition(),elementorCommon.elements.$window.on("resize",this.ensurePosition)}},{key:"close",value:function close(t){this.$el.hide(),this.isDocked&&this.undock(!0),t||this.saveStorage("visible",!1),this.$el.resizable("instance")&&this.$el.resizable("destroy"),elementorCommon.elements.$window.off("resize",this.ensurePosition)}},{key:"isOpen",value:function isOpen(){return this.$el.is(":visible")}},{key:"dock",value:function dock(){elementorCommon.elements.$body.addClass("elementor-navigator-docked"),this.setSize();var t=this.getResizableOptions();this.$el.css({height:"",top:"",bottom:"",left:"",right:""}),this.$el.resizable("instance")&&this.$el.resizable("destroy"),t.handles=elementorCommon.config.isRTL?"e":"w",this.$el.resizable(t),this.isDocked=!0,this.saveStorage("docked",!0)}},{key:"undock",value:function undock(t){elementorCommon.elements.$body.removeClass("elementor-navigator-docked"),this.setSize(),elementor.$previewWrapper.css(elementorCommon.config.isRTL?"left":"right",""),this.$el.resizable("instance")&&(this.$el.resizable("destroy"),this.$el.resizable(this.getResizableOptions())),this.isDocked=!1,t||this.saveStorage("docked",!1)}},{key:"setSize",value:function setSize(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;this.storage.size.width=t||(this.storage.size.width||elementorCommon.elements.$body.css("--e-editor-navigator-width")),elementorCommon.elements.$body.css("--e-editor-navigator-width",this.storage.size.width),this.$el.css("width","")}},{key:"ensurePosition",value:function ensurePosition(){if(!this.isDocked){var t=this.$el.offset();t.left>innerWidth&&this.$el.css({left:"",right:""}),t.top>innerHeight&&this.$el.css({top:"",bottom:""})}}},{key:"onDrag",value:function onDrag(t,o){if(this.isDocked)if(o.position.left===o.originalPosition.left){if(o.position.top!==o.originalPosition.top)return!1}else this.undock();else{0>o.position.top&&(o.position.top=0);var i=0>o.position.left,r=o.position.left+this.el.offsetWidth>innerWidth;elementorCommon.config.isRTL?r&&(o.position.left=innerWidth-this.el.offsetWidth):i&&(o.position.left=0),elementorCommon.elements.$body.toggleClass("elementor-navigator--dock-hint",elementorCommon.config.isRTL?i:r)}}},{key:"onDragStop",value:function onDragStop(t,o){if(!this.isDocked){this.saveSize();var i=o.position.left+this.el.offsetWidth;(0>o.position.left||i>innerWidth)&&this.dock(),elementorCommon.elements.$body.removeClass("elementor-navigator--dock-hint")}}},{key:"onEditModeSwitched",value:function onEditModeSwitched(t){["edit","picker"].includes(t)&&this.storage.visible?this.open():this.close(!0)}},{key:"onDocumentLoaded",value:function onDocumentLoaded(t){t.config.panel.has_elements&&(this.initLayout(),this.storage.visible&&$e.route("navigator"))}},{key:"onDocumentUnloaded",value:function onDocumentUnloaded(){this.component.isOpen&&this.component.close(!0)}}]),_default}(i(89283));o.default=v},14391:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(_default,t);var o=(0,d.default)(_default);function _default(){return(0,l.default)(this,_default),o.apply(this,arguments)}return(0,u.default)(_default,[{key:"getTemplate",value:function getTemplate(){return"#tmpl-elementor-navigator__root--empty"}},{key:"className",value:function className(){return"elementor-nerd-box"}}]),_default}(Marionette.ItemView);o.default=m},56676:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.ChangeDeviceMode=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(ChangeDeviceMode,t);var o=(0,d.default)(ChangeDeviceMode);function ChangeDeviceMode(){return(0,l.default)(this,ChangeDeviceMode),o.apply(this,arguments)}return(0,u.default)(ChangeDeviceMode,[{key:"apply",value:function apply(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},o=elementor.breakpoints.getActiveBreakpointsList({largeToSmall:!0,withDesktop:!0}),i=t.device;if(!i){var r=elementor.channels.deviceMode.request("currentMode"),a=o.indexOf(r);++a>=o.length&&(a=0),i=o[a]}elementor.changeDeviceMode(i)}}]),ChangeDeviceMode}(a(i(68689)).default);o.ChangeDeviceMode=m;var p=m;o.default=p},37427:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.Close=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(Close,t);var o=(0,d.default)(Close);function Close(){return(0,l.default)(this,Close),o.apply(this,arguments)}return(0,u.default)(Close,[{key:"apply",value:function apply(){elementor.changeEditMode("preview")}}]),Close}(a(i(68689)).default);o.Close=m;var p=m;o.default=p},95042:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.Exit=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(Exit,t);var o=(0,d.default)(Exit);function Exit(){return(0,l.default)(this,Exit),o.apply(this,arguments)}return(0,u.default)(Exit,[{key:"apply",value:function apply(){$e.route("panel/menu")}}]),Exit}(a(i(68689)).default);o.Exit=m;var p=m;o.default=p},1546:(t,o,i)=>{"use strict";var r=i(67394);r(o,"__esModule",{value:!0}),r(o,"ChangeDeviceMode",{enumerable:!0,get:function get(){return a.ChangeDeviceMode}}),r(o,"Close",{enumerable:!0,get:function get(){return l.Close}}),r(o,"Exit",{enumerable:!0,get:function get(){return u.Exit}}),r(o,"Open",{enumerable:!0,get:function get(){return c.Open}}),r(o,"Publish",{enumerable:!0,get:function get(){return d.Publish}}),r(o,"Save",{enumerable:!0,get:function get(){return m.Save}}),r(o,"Toggle",{enumerable:!0,get:function get(){return p.Toggle}});var a=i(56676),l=i(37427),u=i(95042),c=i(31778),d=i(20491),m=i(51691),p=i(94002)},58391:(t,o,i)=>{"use strict";var r=i(67394);r(o,"__esModule",{value:!0}),r(o,"OpenDefault",{enumerable:!0,get:function get(){return a.OpenDefault}}),r(o,"StateLoading",{enumerable:!0,get:function get(){return l.StateLoading}}),r(o,"StateReady",{enumerable:!0,get:function get(){return u.StateReady}});var a=i(71951),l=i(76073),u=i(91563)},71951:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.OpenDefault=void 0;var l=a(i(73220)),u=a(i(11959)),c=a(i(39041)),d=a(i(77371)),m=a(i(68537)),p=function(t){(0,d.default)(OpenDefault,t);var o=(0,m.default)(OpenDefault);function OpenDefault(){return(0,u.default)(this,OpenDefault),o.apply(this,arguments)}return(0,c.default)(OpenDefault,[{key:"apply",value:function apply(){return $e.route(elementor.documents.getCurrent().config.panel.default_route),l.default.resolve()}}]),OpenDefault}(a(i(23714)).default);o.OpenDefault=p;var h=p;o.default=h},76073:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.StateLoading=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(StateLoading,t);var o=(0,d.default)(StateLoading);function StateLoading(){return(0,l.default)(this,StateLoading),o.apply(this,arguments)}return(0,u.default)(StateLoading,[{key:"apply",value:function apply(){elementorCommon.elements.$body.addClass("elementor-panel-loading")}}]),StateLoading}(a(i(23714)).default);o.StateLoading=m;var p=m;o.default=p},91563:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.StateReady=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(StateReady,t);var o=(0,d.default)(StateReady);function StateReady(){return(0,l.default)(this,StateReady),o.apply(this,arguments)}return(0,u.default)(StateReady,[{key:"apply",value:function apply(){elementorCommon.elements.$body.removeClass("elementor-panel-loading"),this.component.stateReadyOnce||(this.component.stateReadyOnce=!0,$e.extras.hashCommands.runOnce())}}]),StateReady}(a(i(23714)).default);o.StateReady=m;var p=m;o.default=p},31778:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.Open=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(Open,t);var o=(0,d.default)(Open);function Open(){return(0,l.default)(this,Open),o.apply(this,arguments)}return(0,u.default)(Open,[{key:"apply",value:function apply(){elementor.changeEditMode("edit")}}]),Open}(a(i(68689)).default);o.Open=m;var p=m;o.default=p},20491:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.Publish=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(Publish,t);var o=(0,d.default)(Publish);function Publish(){return(0,l.default)(this,Publish),o.apply(this,arguments)}return(0,u.default)(Publish,[{key:"apply",value:function apply(){$e.run("document/save/publish")}}]),Publish}(a(i(68689)).default);o.Publish=m;var p=m;o.default=p},51691:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.Save=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(Save,t);var o=(0,d.default)(Save);function Save(){return(0,l.default)(this,Save),o.apply(this,arguments)}return(0,u.default)(Save,[{key:"apply",value:function apply(){$e.run("document/save/draft")}}]),Save}(a(i(68689)).default);o.Save=m;var p=m;o.default=p},94002:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.Toggle=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(Toggle,t);var o=(0,d.default)(Toggle);function Toggle(){return(0,l.default)(this,Toggle),o.apply(this,arguments)}return(0,u.default)(Toggle,[{key:"apply",value:function apply(){elementor.getPanelView().modeSwitcher.currentView.toggleMode()}}]),Toggle}(a(i(68689)).default);o.Toggle=m;var p=m;o.default=p},43033:(t,o,i)=>{"use strict";var r=i(67394),a=i(52369),l=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var u=l(i(11959)),c=l(i(39041)),d=l(i(38852)),m=l(i(77371)),p=l(i(68537)),h=l(i(18042)),g=l(i(15591)),v=a(i(1546)),y=a(i(58391)),C=function(t){(0,m.default)(Component,t);var o=(0,p.default)(Component);function Component(){var t;(0,u.default)(this,Component);for(var i=arguments.length,r=new Array(i),a=0;a<i;a++)r[a]=arguments[a];return t=o.call.apply(o,[this].concat(r)),(0,h.default)((0,d.default)(t),"stateReadyOnce",!1),t}return(0,c.default)(Component,[{key:"getNamespace",value:function getNamespace(){return"panel"}},{key:"defaultRoutes",value:function defaultRoutes(){var t=this;return{menu:function menu(){return t.manager.setPage("menu")},"global-colors":function globalColors(){return t.manager.setPage("colorScheme")},"global-fonts":function globalFonts(){return t.manager.setPage("typographyScheme")},"editor-preferences":function editorPreferences(){return t.manager.setPage("editorPreferences_settings").activateTab("settings")}}}},{key:"defaultCommandsInternal",value:function defaultCommandsInternal(){return this.importCommands(y)}},{key:"defaultCommands",value:function defaultCommands(){return this.importCommands(v)}},{key:"defaultShortcuts",value:function defaultShortcuts(){return{toggle:{keys:"ctrl+p"},save:{keys:"ctrl+s"},exit:{keys:"esc",dependency:function dependency(){return!jQuery(".dialog-widget:visible").length},scopes:["panel","preview"]},"change-device-mode":{keys:"ctrl+shift+m"}}}}]),Component}(g.default);o.default=C},75483:(t,o,i)=>{"use strict";var r,a=i(18194).__;r=Marionette.ItemView.extend({template:"#tmpl-elementor-mode-switcher-content",id:"elementor-mode-switcher-inner",ui:{previewButton:"#elementor-mode-switcher-preview-input",previewLabel:"#elementor-mode-switcher-preview",previewLabelA11y:"#elementor-mode-switcher-preview .elementor-screen-only"},events:{"change @ui.previewButton":"onPreviewButtonChange"},initialize:function initialize(){this.listenTo(elementor.channels.dataEditMode,"switch",this.onEditModeChanged)},getCurrentMode:function getCurrentMode(){return this.ui.previewButton.is(":checked")?"preview":"edit"},setMode:function setMode(t){this.ui.previewButton.prop("checked","preview"===t).trigger("change")},toggleMode:function toggleMode(){this.setMode(this.ui.previewButton.prop("checked")?"edit":"preview")},onRender:function onRender(){this.onEditModeChanged()},onPreviewButtonChange:function onPreviewButtonChange(){var t=this.getCurrentMode();if("edit"===t)$e.run("panel/open");else{if("preview"!==t)throw Error("Invalid mode: '".concat(t,"'"));$e.run("panel/close")}},onEditModeChanged:function onEditModeChanged(t){var o=a("preview"===t?"Back to Editor":"Preview","elementor");this.ui.previewLabel.attr("title",o),this.ui.previewLabelA11y.text(o)}}),t.exports=r},77776:(t,o,i)=>{"use strict";i(99745),i(64434),i(71954),t.exports=Marionette.ItemView.extend({template:"#tmpl-elementor-panel-footer-content",tagName:"nav",id:"elementor-panel-footer-tools",possibleRotateModes:["portrait","landscape"],ui:{menuButtons:".elementor-panel-footer-tool",settings:"#elementor-panel-footer-settings",deviceModeIcon:"#elementor-panel-footer-responsive > i",saveTemplate:"#elementor-panel-footer-sub-menu-item-save-template",history:"#elementor-panel-footer-history",navigator:"#elementor-panel-footer-navigator"},events:{"click @ui.menuButtons":"onMenuButtonsClick","click @ui.settings":"onSettingsClick","click @ui.deviceModeIcon":"onDeviceModeIconClick","click @ui.saveTemplate":"onSaveTemplateClick","click @ui.history":"onHistoryClick","click @ui.navigator":"onNavigatorClick"},behaviors:function behaviors(){var behaviors={saver:{behaviorClass:elementor.modules.components.saver.behaviors.FooterSaver}};return elementor.hooks.applyFilters("panel/footer/behaviors",behaviors,this)},initialize:function initialize(){this.listenTo(elementor.channels.deviceMode,"change",this.onDeviceModeChange)},addSubMenuItem:function addSubMenuItem(t,o){var i=jQuery("<div>",{id:"elementor-panel-footer-sub-menu-item-"+o.name,class:"elementor-panel-footer-sub-menu-item"}),r=jQuery("<i>",{class:"elementor-icon "+o.icon,"aria-hidden":!0}),a=jQuery("<div>",{class:"elementor-title"}).text(o.title);if(i.append(r,a),o.description){var l=jQuery("<div>",{class:"elementor-description"}).text(o.description);i.append(l)}o.callback&&i.on("click",o.callback);var u=this.ui.menuButtons.filter("#elementor-panel-footer-"+t);if(o.before){var c=u.find("#elementor-panel-footer-sub-menu-item-"+o.before);if(c.length)return i.insertBefore(c)}var d=u.find(".elementor-panel-footer-sub-menu");return i.appendTo(d)},removeSubMenuItem:function removeSubMenuItem(t,o){return jQuery("#elementor-panel-footer-sub-menu-item-"+o.name).remove()},showSettingsPage:function showSettingsPage(){$e.route("panel/page-settings/settings")},onMenuButtonsClick:function onMenuButtonsClick(t){var o=jQuery(t.currentTarget);if(o.hasClass("elementor-toggle-state")&&!jQuery(t.target).closest(".elementor-panel-footer-sub-menu-item").length){var i=o.hasClass("elementor-open");this.ui.menuButtons.not(".elementor-leave-open").removeClass("elementor-open"),i||o.addClass("elementor-open")}},onSettingsClick:function onSettingsClick(){$e.route("panel/page-settings/settings")},onDeviceModeIconClick:function onDeviceModeIconClick(){if(elementor.isDeviceModeActive())elementor.changeDeviceMode("desktop"),elementor.exitDeviceMode();else{var t="default"===elementor.getPreferences("default_device_view")?"desktop":elementor.getPreferences("default_device_view");elementor.changeDeviceMode(t),"desktop"===t&&elementor.enterDeviceMode()}},onSaveTemplateClick:function onSaveTemplateClick(){$e.route("library/save-template")},onHistoryClick:function onHistoryClick(){$e.route("panel/history/actions")},onNavigatorClick:function onNavigatorClick(){$e.run("navigator/toggle")}})},79913:t=>{"use strict";var o;o=Marionette.ItemView.extend({template:"#tmpl-elementor-panel-header",id:"elementor-panel-header",ui:{menuButton:"#elementor-panel-header-menu-button",menuIcon:"#elementor-panel-header-menu-button i",title:"#elementor-panel-header-title",addButton:"#elementor-panel-header-add-button"},events:{"click @ui.addButton":"onClickAdd","click @ui.menuButton":"onClickMenu"},behaviors:function behaviors(){return elementor.hooks.applyFilters("panel/header/behaviors",{},this)},setTitle:function setTitle(t){this.ui.title.html(t)},onClickAdd:function onClickAdd(){$e.route("panel/elements/categories")},onClickMenu:function onClickMenu(){$e.routes.is("panel/menu")?$e.route("panel/elements/categories"):$e.route("panel/menu")}}),t.exports=o},31302:(t,o,i)=>{"use strict";var r,a=i(67971),l=a(i(83452)),u=a(i(43033)),c=a(i(93731)),d=a(i(44729)),m=i(75483);r=Marionette.LayoutView.extend({template:"#tmpl-elementor-panel",id:"elementor-panel-inner",regions:{content:"#elementor-panel-content-wrapper",header:"#elementor-panel-header-wrapper",footer:"#elementor-panel-footer",modeSwitcher:"#elementor-mode-switcher"},pages:{},childEvents:{"click:add":function clickAdd(){$e.route("panel/elements/categories")},"editor:destroy":function editorDestroy(){$e.route("panel/elements/categories",{autoFocusSearch:!1})}},currentPageName:null,currentPageView:null,perfectScrollbar:null,initialize:function initialize(){$e.components.register(new u.default({manager:this})),$e.internal("panel/state-loading"),$e.components.register(new c.default({manager:this})),$e.components.register(new d.default({manager:this})),this.initPages()},buildPages:function buildPages(){var t={elements:{view:i(20526),title:'<img src="'+elementorCommon.config.urls.assets+'images/logo-panel.svg">'},editor:{view:i(27108)},menu:{view:elementor.modules.layouts.panel.pages.menu.Menu,title:'<img src="'+elementorCommon.config.urls.assets+'images/logo-panel.svg">'},colorScheme:{view:i(74942)},typographyScheme:{view:i(81605)}},o=(0,l.default)(elementor.schemes.getSchemes()),r=_.difference(o,elementor.schemes.getEnabledSchemesTypes());return _.each(r,(function(o){var r=elementor.schemes.getScheme(o);t[o+"Scheme"].view=i(44539).extend({disabledTitle:r.disabled_title})})),t},initPages:function initPages(){var t;this.getPages=function(o){return t||(t=this.buildPages()),o?t[o]:t},this.addPage=function(o,i){t||(t=this.buildPages()),t[o]=i}},getHeaderView:function getHeaderView(){return this.getChildView("header")},getFooterView:function getFooterView(){return this.getChildView("footer")},getCurrentPageName:function getCurrentPageName(){return this.currentPageName},getCurrentPageView:function getCurrentPageView(){return this.currentPageView},setPage:function setPage(t,o,i){var r=this.getPages();"elements"!==t||elementor.userCan("design")||r.page_settings&&(t="page_settings");var a=r[t];if(!a)throw new ReferenceError("Elementor panel doesn't have page named '"+t+"'");a.options&&(i=_.extend(a.options,i));var l=a.view;return a.getView&&(l=a.getView()),this.currentPageName=t,this.currentPageView=new l(i),this.showChildView("content",this.currentPageView),this.getHeaderView().setTitle(o||a.title),this.trigger("set:page",this.currentPageView).trigger("set:page:"+t,this.currentPageView),elementor.promotion.dialog&&elementor.promotion.dialog.hide(),this.currentPageView},onBeforeShow:function onBeforeShow(){var t=i(77776),o=i(79913);this.showChildView("modeSwitcher",new m),this.showChildView("header",new o),this.showChildView("footer",new t),this.updateScrollbar=_.throttle(this.updateScrollbar,100),this.getRegion("content").on("before:show",this.onEditorBeforeShow.bind(this)).on("empty",this.onEditorEmpty.bind(this)).on("show",this.updateScrollbar.bind(this))},onEditorBeforeShow:function onEditorBeforeShow(){_.defer(this.updateScrollbar.bind(this))},onEditorEmpty:function onEditorEmpty(){this.updateScrollbar()},updateScrollbar:function updateScrollbar(){if(!this.perfectScrollbar)return this.perfectScrollbar=new PerfectScrollbar(this.content.el,{suppressScrollX:!0}),void(this.perfectScrollbar.isRtl=!1);this.perfectScrollbar.update()}}),t.exports=r},27108:t=>{"use strict";var o,i=elementorModules.editor.views.ControlsStack;o=i.extend({template:Marionette.TemplateCache.get("#tmpl-editor-content"),id:"elementor-panel-page-editor",childViewContainer:"#elementor-controls",childViewOptions:function childViewOptions(){return{element:this.getOption("editedElementView"),container:this.getOption("editedElementView").getContainer(),elementSettingsModel:this.model.get("settings"),elementEditSettings:this.model.get("editSettings")}},getNamespaceArray:function getNamespaceArray(){var t=elementorModules.editor.views.ControlsStack.prototype.getNamespaceArray(),o=this.getOption("editedElementView").getEditModel(),i=o.get("elType");return t.push(i),"widget"===i&&t.push(o.get("widgetType")),t},initialize:function initialize(){i.prototype.initialize.apply(this,arguments);var t=this.model.get("editSettings");if(t){var o=t.get("panel");o&&(this.activeTab=o.activeTab,this.activeSection=o.activeSection)}},activateSection:function activateSection(){return i.prototype.activateSection.apply(this,arguments),this.model.get("editSettings").set("panel",{activeTab:this.activeTab,activeSection:this.activeSection}),this},openActiveSection:function openActiveSection(){i.prototype.openActiveSection.apply(this,arguments),elementor.channels.editor.trigger("section:activated",this.activeSection,this)},isVisibleSectionControl:function isVisibleSectionControl(t){return i.prototype.isVisibleSectionControl.apply(this,arguments)&&elementor.helpers.isActiveControl(t,this.model.get("settings").attributes)},scrollToEditedElement:function scrollToEditedElement(){elementor.helpers.scrollToView(this.getOption("editedElementView").$el)},onDestroy:function onDestroy(){var t=this.getOption("editedElementView");t&&t.$el.removeClass("elementor-element-editable"),this.model.trigger("editor:close"),this.triggerMethod("editor:destroy")},onRender:function onRender(){var t=this.getOption("editedElementView");t&&t.$el.addClass("elementor-element-editable")},onDeviceModeChange:function onDeviceModeChange(){i.prototype.onDeviceModeChange.apply(this,arguments),this.scrollToEditedElement()},onChildviewSettingsChange:function onChildviewSettingsChange(t){var o=this.getOption("editedElementView"),i=o.model.get("elType");"widget"===i&&(i=o.model.get("widgetType")),elementor.channels.editor.trigger("change",t,o).trigger("change:"+i,t,o).trigger("change:"+i+":"+t.model.get("name"),t,o)}}),t.exports=o},23489:(t,o,i)=>{"use strict";var r=i(67394);r(o,"__esModule",{value:!0}),r(o,"Open",{enumerable:!0,get:function get(){return a.Open}});var a=i(90160)},90160:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.Open=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(Open,t);var o=(0,d.default)(Open);function Open(){return(0,l.default)(this,Open),o.apply(this,arguments)}return(0,u.default)(Open,[{key:"apply",value:function apply(t){this.component.setDefaultTab(t)?$e.route(this.component.getDefaultRoute(),t):(elementorCommon.helpers.softDeprecated("model.trigger( 'request:edit' )","2.9.0","editSettings.defaultEditRoute"),t.model.trigger("request:edit"));var o=t.model.get("elType"),i=t.model.get("widgetType");elementor.hooks.doAction("panel/open_editor/".concat(o),this.component.manager,t.model,t.view),elementor.hooks.doAction("panel/open_editor/".concat(o,"/").concat(i),this.component.manager,t.model,t.view)}}]),Open}(a(i(68689)).default);o.Open=m;var p=m;o.default=p},44729:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(18194).sprintf,l=i(67394),u=i(52369),c=i(67971);l(o,"__esModule",{value:!0}),o.default=void 0;var d=c(i(83452)),m=c(i(11959)),p=c(i(39041)),h=c(i(76700)),g=c(i(44263)),v=c(i(77371)),y=c(i(68537)),C=c(i(15591)),b=u(i(23489)),w=function(t){(0,v.default)(Component,t);var o=(0,y.default)(Component);function Component(){return(0,m.default)(this,Component),o.apply(this,arguments)}return(0,p.default)(Component,[{key:"__construct",value:function __construct(t){(0,h.default)((0,g.default)(Component.prototype),"__construct",this).call(this,t),this.activeTabs={}}},{key:"getNamespace",value:function getNamespace(){return"panel/editor"}},{key:"defaultTabs",value:function defaultTabs(){return{content:{title:r("Content","elementor")},style:{title:r("Style","elementor")},advanced:{title:r("Advanced","elementor")},layout:{title:r("Layout","elementor")}}}},{key:"defaultCommands",value:function defaultCommands(){return this.importCommands(b)}},{key:"getTabsWrapperSelector",value:function getTabsWrapperSelector(){return".elementor-panel-navigation"}},{key:"renderTab",value:function renderTab(t,o){var i=o.model,l=o.view,u=a(r("Edit %s","elementor"),elementor.getElementData(i).title);elementor.getPanelView().setPage("editor",u,{tab:t,model:i,controls:elementor.getElementControls(i),editedElementView:l})}},{key:"activateTab",value:function activateTab(t,o){this.activeTabs[o.model.id]=t,(0,h.default)((0,g.default)(Component.prototype),"activateTab",this).call(this,t,o)}},{key:"setDefaultTab",value:function setDefaultTab(t){var o,i=t.model.get("editSettings");if(this.activeTabs[t.model.id]?o=this.activeTabs[t.model.id]:i&&i.get("defaultEditRoute")&&(o=i.get("defaultEditRoute")),o){var r=elementor.getElementData(t.model).tabs_controls;return r[o]||(o=(0,d.default)(r)[0]),this.setDefaultRoute(o),!0}return!1}}]),Component}(C.default);o.default=w},19138:(t,o,i)=>{"use strict";var r,a=i(46617);r=Backbone.Collection.extend({model:a}),t.exports=r},21511:(t,o,i)=>{"use strict";var r,a=i(46617);r=Backbone.Collection.extend({model:a}),t.exports=r},93731:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67394),l=i(67971);a(o,"__esModule",{value:!0}),o.default=void 0;var u=l(i(11959)),c=l(i(39041)),d=l(i(77371)),m=l(i(68537)),p=function(t){(0,d.default)(Component,t);var o=(0,m.default)(Component);function Component(){return(0,u.default)(this,Component),o.apply(this,arguments)}return(0,c.default)(Component,[{key:"getNamespace",value:function getNamespace(){return"panel/elements"}},{key:"defaultTabs",value:function defaultTabs(){return{categories:{title:r("Elements","elementor")},global:{title:r("Global","elementor")}}}},{key:"getTabsWrapperSelector",value:function getTabsWrapperSelector(){return"#elementor-panel-elements-navigation"}},{key:"renderTab",value:function renderTab(t){this.manager.setPage("elements").showView(t)}}]),Component}(l(i(15591)).default);o.default=p},20526:(t,o,i)=>{"use strict";var r=i(18194).__;i(42679),i(99745);var a,l=i(19138),u=i(21511),c=i(9951),d=elementor.modules.layouts.panel.pages.elements.views.Elements,m=i(77106),p=i(56345);a=Marionette.LayoutView.extend({template:"#tmpl-elementor-panel-elements",id:"elementor-panel-page-elements",options:{autoFocusSearch:!0},regions:{elements:"#elementor-panel-elements-wrapper",search:"#elementor-panel-elements-search-area"},regionViews:{},elementsCollection:null,categoriesCollection:null,initialize:function initialize(){this.listenTo(elementor.channels.panelElements,"element:selected",this.destroy),this.initElementsCollection(),this.initCategoriesCollection(),this.initRegionViews()},initRegionViews:function initRegionViews(){var t={elements:{region:this.elements,view:d,options:{collection:this.elementsCollection}},categories:{region:this.elements,view:c,options:{collection:this.categoriesCollection}},search:{region:this.search,view:m},global:{region:this.elements,view:p}};this.regionViews=elementor.hooks.applyFilters("panel/elements/regionViews",t)},initElementsCollection:function initElementsCollection(){var t=new u,o=elementor.config.elements.section;t.add({title:r("Inner Section","elementor"),elType:"section",categories:["basic"],keywords:["row","columns","nested"],icon:o.icon}),_.each(elementor.widgetsCache,(function(o){elementor.config.document.panel.widgets_settings[o.widget_type]&&(o=_.extend(o,elementor.config.document.panel.widgets_settings[o.widget_type])),o.show_in_panel&&t.add({title:o.title,elType:o.elType,categories:o.categories,keywords:o.keywords,icon:o.icon,widgetType:o.widget_type,custom:o.custom,editable:o.editable})})),jQuery.each(elementor.config.promotionWidgets,(function(o,i){t.add({name:i.name,title:i.title,icon:i.icon,categories:JSON.parse(i.categories),editable:!1})})),this.elementsCollection=t},initCategoriesCollection:function initCategoriesCollection(){var t={};this.elementsCollection.each((function(o){_.each(o.get("categories"),(function(i){t[i]||(t[i]=[]),t[i].push(o)}))}));var o=new l;_.each(elementor.config.document.panel.elements_categories,(function(i,r){t[r]&&(void 0===i.active&&(i.active=!0),void 0===i.icon&&(i.icon="font"),o.add({name:r,title:i.title,icon:i.icon,defaultActive:i.active,items:t[r]}))})),this.categoriesCollection=o},showView:function showView(t){var o=this.regionViews[t],i=o.options||{};o.region.show(new o.view(i))},clearSearchInput:function clearSearchInput(){this.getChildView("search").clearInput()},changeFilter:function changeFilter(t){elementor.channels.panelElements.reply("filter:value",t).trigger("filter:change")},clearFilters:function clearFilters(){this.changeFilter(null),this.clearSearchInput()},focusSearch:function focusSearch(){elementor.userCan("design")&&this.search&&this.search.currentView&&this.search.currentView.ui.input.focus()},onChildviewChildrenRender:function onChildviewChildrenRender(){elementor.getPanelView().updateScrollbar()},onChildviewSearchChangeInput:function onChildviewSearchChangeInput(t){this.changeFilter(t.ui.input.val(),"search")},onDestroy:function onDestroy(){elementor.channels.panelElements.reply("filter:value",null)},onShow:function onShow(){this.showView("search"),this.options.autoFocusSearch&&setTimeout(this.focusSearch.bind(this))}}),t.exports=a},46617:t=>{"use strict";var o;o=Backbone.Model.extend({defaults:{title:"",categories:[],keywords:[],icon:"",elType:"widget",widgetType:""}}),t.exports=o},9951:(t,o,i)=>{"use strict";var r,a=i(97088);r=Marionette.CompositeView.extend({template:"#tmpl-elementor-panel-categories",childView:a,childViewContainer:"#elementor-panel-categories",id:"elementor-panel-elements-categories",initialize:function initialize(){this.listenTo(elementor.channels.panelElements,"filter:change",this.onPanelElementsFilterChange)},onPanelElementsFilterChange:function onPanelElementsFilterChange(){elementor.channels.panelElements.request("filter:value")&&elementor.getPanelView().getCurrentPageView().showView("elements")}}),t.exports=r},97088:(t,o,i)=>{"use strict";var r,a=i(21511);r=Marionette.CompositeView.extend({template:"#tmpl-elementor-panel-elements-category",className:"elementor-panel-category",ui:{title:".elementor-panel-category-title",items:".elementor-panel-category-items"},events:{"click @ui.title":"onTitleClick"},id:function id(){return"elementor-panel-category-"+this.model.get("name")},childView:i(25232),childViewContainer:".elementor-panel-category-items",initialize:function initialize(){this.collection=new a(this.model.get("items"))},onRender:function onRender(){var t=elementor.channels.panelElements.request("category:"+this.model.get("name")+":active");void 0===t&&(t=this.model.get("defaultActive")),t?this.$el.addClass("elementor-active"):this.ui.items.css("display","none")},onTitleClick:function onTitleClick(){var t=this.ui.items,o="elementor-active",i=this.$el.hasClass(o),r=i?"slideUp":"slideDown";elementor.channels.panelElements.reply("category:"+this.model.get("name")+":active",!i),this.$el.toggleClass(o,!i),t[r](300,(function(){elementor.getPanelView().updateScrollbar()}))}}),t.exports=r},25232:(t,o,i)=>{"use strict";var r=i(18194).sprintf,a=i(18194).__;i(84208),t.exports=Marionette.ItemView.extend({template:"#tmpl-elementor-element-library-element",className:function className(){var className="elementor-element-wrapper";return this.isEditable()||(className+=" elementor-element--promotion"),className},events:function events(){var events={};return this.isEditable()||(events.mousedown="onMouseDown"),events},ui:{element:".elementor-element"},isEditable:function isEditable(){return!1!==this.model.get("editable")},onRender:function onRender(){var t=this;elementor.userCan("design")&&this.isEditable()&&this.ui.element.html5Draggable({onDragStart:function onDragStart(){elementor.channels.panelElements.reply("element:selected",t).trigger("element:drag:start")},onDragEnd:function onDragEnd(){elementor.channels.panelElements.trigger("element:drag:end")},groups:["elementor-element"]})},onMouseDown:function onMouseDown(){var t=this.model.get("title");elementor.promotion.showDialog({headerMessage:r(a("%s Widget","elementor"),t),message:r(a("Use %s widget and dozens more pro features to extend your toolbox and build sites faster and better.","elementor"),t),top:"-7",element:this.el,actionURL:elementor.config.elementPromotionURL.replace("%s",this.model.get("name"))})}})},79349:(t,o,i)=>{"use strict";var r;r=Marionette.CollectionView.extend({childView:i(25232),id:"elementor-panel-elements",className:"elementor-responsive-panel",initialize:function initialize(){this.listenTo(elementor.channels.panelElements,"filter:change",this.onFilterChanged)},filter:function filter(t){var o=elementor.channels.panelElements.request("filter:value");if(!o)return!0;if(-1!==t.get("title").toLowerCase().indexOf(o.toLowerCase()))return!0;var i=elementor.channels.panelElements.request("filter:localized")||"";return _.any(t.get("keywords"),(function(t){var r=-1!==(t=t.toLowerCase()).indexOf(o.toLowerCase()),a=i&&-1!==t.indexOf(i.toLowerCase());return r||a}))},onFilterChanged:function onFilterChanged(){elementor.channels.panelElements.request("filter:value")||this.onFilterEmpty(),this._renderChildren(),this.triggerMethod("children:render")},onFilterEmpty:function onFilterEmpty(){$e.routes.refreshContainer("panel")}}),t.exports=r},56345:(t,o,i)=>{"use strict";i(42679),t.exports=Marionette.ItemView.extend({template:"#tmpl-elementor-panel-global",id:"elementor-panel-global",initialize:function initialize(){elementor.getPanelView().getCurrentPageView().search.reset()}})},77106:t=>{"use strict";var o;o=Marionette.ItemView.extend({template:"#tmpl-elementor-panel-element-search",localizedValue:"",id:"elementor-panel-elements-search-wrapper",ui:{input:"input"},events:{"keyup @ui.input":"onInputChanged","input @ui.input":"onInputChanged"},clearInput:function clearInput(){this.ui.input.val("")},onInputChanged:function onInputChanged(t){if(27===t.keyCode&&this.clearInput(),t.shiftKey||t.ctrlKey||t.altKey)this.triggerMethod("search:change:input");else{(!t.target.value||t.target.value.length<this.localizedValue.length)&&(this.localizedValue="");var o=t.keyCode>=65&&t.keyCode<=90,i=32===t.keyCode;(o||i)&&(this.localizedValue+=String.fromCharCode(t.keyCode)),elementor.channels.panelElements.reply("filter:localized",this.localizedValue),this.triggerMethod("search:change:input")}}}),t.exports=o},86723:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0,i(99745);var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=a(i(27414)),p=function(t){(0,c.default)(MenuPageView,t);var o=(0,d.default)(MenuPageView);function MenuPageView(){return(0,l.default)(this,MenuPageView),o.apply(this,arguments)}return(0,u.default)(MenuPageView,[{key:"id",value:function id(){return"elementor-panel-page-menu"}},{key:"getTemplate",value:function getTemplate(){return"#tmpl-elementor-panel-menu"}},{key:"getChildView",value:function getChildView(){return m.default}},{key:"childViewContainer",value:function childViewContainer(){return"#elementor-panel-page-menu-content"}},{key:"filter",value:function filter(t){return t.get("items").length}}]),MenuPageView}(Marionette.CompositeView);o.default=p,p.addItem=function(t,o,i,r){var a=t.findWhere({name:i});if(a){var l,u=a.get("items"),c=_.findWhere(u,{name:o.name});c&&u.splice(u.indexOf(c),1),r&&(l=_.findWhere(u,{name:r})),l?u.splice(u.indexOf(l),0,o):u.push(o)}}},88507:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67394),l=i(67971);a(o,"__esModule",{value:!0}),o.default=void 0;var u=l(i(11959)),c=l(i(39041)),d=l(i(77371)),m=l(i(68537)),p=l(i(86723)),h=function(t){(0,d.default)(PanelMenu,t);var o=(0,m.default)(PanelMenu);function PanelMenu(){return(0,u.default)(this,PanelMenu),o.apply(this,arguments)}return(0,c.default)(PanelMenu,[{key:"initialize",value:function initialize(){this.collection=PanelMenu.getGroups()}},{key:"getArrowClass",value:function getArrowClass(){return"eicon-chevron-"+(elementorCommon.config.isRTL?"right":"left")}},{key:"onRender",value:function onRender(){elementor.getPanelView().getHeaderView().ui.menuIcon.removeClass("eicon-menu-bar").addClass(this.getArrowClass())}},{key:"onDestroy",value:function onDestroy(){elementor.getPanelView().getHeaderView().ui.menuIcon.removeClass(this.getArrowClass()).addClass("eicon-menu-bar")}}]),PanelMenu}(p.default);o.default=h,h.groups=null,h.initGroups=function(){h.groups=new Backbone.Collection([]),h.groups.add({name:"more",title:r("More","elementor"),items:[]}),h.groups.add({name:"navigate_from_page",title:r("Navigate From Page","elementor"),items:[{name:"view-page",icon:"eicon-preview-thin",title:r("View Page","elementor"),type:"link",link:elementor.config.document.urls.permalink},{name:"exit-to-dashboard",icon:"eicon-wordpress-light",title:r("Exit To Dashboard","elementor"),type:"link",link:elementor.config.document.urls.exit_to_dashboard}]}),elementor.config.user.is_administrator&&h.addAdminMenu()},h.addAdminMenu=function(){h.groups.add({name:"style",title:r("Settings","elementor"),items:[{name:"editor-preferences",icon:"eicon-user-preferences",title:r("User Preferences","elementor"),type:"page",callback:function callback(){return $e.route("panel/editor-preferences")}}]},{at:0}),h.addItem({name:"finder",icon:"eicon-search",title:r("Finder","elementor"),callback:function callback(){return $e.route("finder")}},"navigate_from_page","view-page")},h.getGroups=function(){return h.groups||h.initGroups(),h.groups},h.addItem=function(t,o,i){p.default.addItem(h.getGroups(),t,o,i)}},27414:(t,o,i)=>{"use strict";var r=i(3325);t.exports=Marionette.CompositeView.extend({template:"#tmpl-elementor-panel-menu-group",className:"elementor-panel-menu-group",childView:r,childViewContainer:".elementor-panel-menu-items",initialize:function initialize(){this.collection=new Backbone.Collection(this.model.get("items"))},onChildviewClick:function onChildviewClick(t){var o=t.model.get("callback");_.isFunction(o)&&o.call(t)}})},3325:t=>{"use strict";t.exports=Marionette.ItemView.extend({template:"#tmpl-elementor-panel-menu-item",className:function className(){return"elementor-panel-menu-item elementor-panel-menu-item-"+this.model.get("name")},triggers:{click:{event:"click",preventDefault:!1}}})},27454:(t,o,i)=>{"use strict";var r,a={color:i(85981),typography:i(64533)};r=Marionette.CompositeView.extend({id:function id(){return"elementor-panel-scheme-"+this.getType()},className:function className(){return"elementor-panel-scheme elementor-panel-scheme-"+this.getUIType()},childViewContainer:".elementor-panel-scheme-items",getTemplate:function getTemplate(){return Marionette.TemplateCache.get("#tmpl-elementor-panel-schemes-"+this.getType())},getChildView:function getChildView(){return a[this.getUIType()]},getUIType:function getUIType(){return this.getType()},ui:function ui(){return{saveButton:".elementor-panel-scheme-save .elementor-button",discardButton:".elementor-panel-scheme-discard .elementor-button",resetButton:".elementor-panel-scheme-reset .elementor-button"}},events:function events(){return{"click @ui.saveButton":"saveScheme","click @ui.discardButton":"discardScheme","click @ui.resetButton":"setDefaultScheme"}},initialize:function initialize(){this.model=new Backbone.Model,this.resetScheme()},getType:function getType(){},getScheme:function getScheme(){return elementor.schemes.getScheme(this.getType())},changeChildrenUIValues:function changeChildrenUIValues(t){var o=this;_.each(t,(function(t,i){var r=o.collection.findWhere({key:i});o.children.findByModelCid(r.cid).changeUIValue(t)}))},discardScheme:function discardScheme(){elementor.schemes.resetSchemes(this.getType()),this.onSchemeChange(),this.ui.saveButton.prop("disabled",!0),this._renderChildren()},setSchemeValue:function setSchemeValue(t,o){elementor.schemes.setSchemeValue(this.getType(),t,o),this.onSchemeChange()},saveScheme:function saveScheme(){NProgress.start(),elementor.schemes.saveScheme(this.getType()).done(NProgress.done),this.ui.saveButton.prop("disabled",!0),this.resetScheme(),this._renderChildren()},setDefaultScheme:function setDefaultScheme(){var t=elementor.config.default_schemes[this.getType()].items;this.changeChildrenUIValues(t)},resetItems:function resetItems(){this.model.set("items",this.getScheme().items)},resetCollection:function resetCollection(){var t=this,o=t.model.get("items");t.collection=new Backbone.Collection,_.each(o,(function(o,i){o.type=t.getType(),o.key=i,t.collection.add(o)}))},resetScheme:function resetScheme(){this.resetItems(),this.resetCollection()},onSchemeChange:function onSchemeChange(){elementor.schemes.printSchemesStyle()},onChildviewValueChange:function onChildviewValueChange(t,o){this.ui.saveButton.removeProp("disabled"),this.setSchemeValue(t.model.get("key"),o)}}),t.exports=r},74942:(t,o,i)=>{"use strict";var r,a=i(27454);r=a.extend({ui:function ui(){var ui=a.prototype.ui.apply(this,arguments);return ui.systemSchemes=".elementor-panel-scheme-color-system-scheme",ui},events:function events(){var events=a.prototype.events.apply(this,arguments);return events["click @ui.systemSchemes"]="onSystemSchemeClick",events},getType:function getType(){return"color"},onSystemSchemeClick:function onSystemSchemeClick(t){var o=jQuery(t.currentTarget).data("schemeName"),i=elementor.config.system_schemes[this.getType()][o].items;this.changeChildrenUIValues(i)}}),t.exports=r},44539:t=>{"use strict";var o;o=Marionette.ItemView.extend({template:"#tmpl-elementor-panel-schemes-disabled",id:"elementor-panel-schemes-disabled",className:"elementor-nerd-box",disabledTitle:"",templateHelpers:function templateHelpers(){return{disabledTitle:this.disabledTitle}}}),t.exports=o},63918:t=>{"use strict";var o;o=Marionette.ItemView.extend({getTemplate:function getTemplate(){return Marionette.TemplateCache.get("#tmpl-elementor-panel-scheme-"+this.getUIType()+"-item")},className:function className(){return"elementor-panel-scheme-item"}}),t.exports=o},85981:(t,o,i)=>{"use strict";var r=i(67971)(i(65863)),a=i(63918);t.exports=a.extend({getUIType:function getUIType(){return"color"},ui:{pickerPlaceholder:".elementor-panel-scheme-color-picker-placeholder"},changeUIValue:function changeUIValue(t){this.colorPicker.picker.setColor(t)},onRender:function onRender(){var t=this;this.colorPicker=new r.default({picker:{el:this.ui.pickerPlaceholder[0],default:this.model.get("value")},onChange:function onChange(){t.triggerMethod("value:change",t.colorPicker.getColor())},onClear:function onClear(){t.triggerMethod("value:change","")}})},onBeforeDestroy:function onBeforeDestroy(){this.colorPicker.destroy()}})},64533:(t,o,i)=>{"use strict";var r,a=i(63918);r=a.extend({getUIType:function getUIType(){return"typography"},className:function className(){var t=a.prototype.className.apply(this,arguments);return t+" elementor-panel-box"},ui:{heading:".elementor-panel-heading",allFields:".elementor-panel-scheme-typography-item-field",inputFields:"input.elementor-panel-scheme-typography-item-field",selectFields:"select.elementor-panel-scheme-typography-item-field",selectFamilyFields:'select.elementor-panel-scheme-typography-item-field[name="font_family"]'},events:{"input @ui.inputFields":"onFieldChange","change @ui.selectFields":"onFieldChange","click @ui.heading":"toggleVisibility"},onRender:function onRender(){var t=this;this.ui.inputFields.add(this.ui.selectFields).each((function(){var o=jQuery(this),i=o.attr("name"),r=t.model.get("value")[i];o.val(r)})),this.ui.selectFamilyFields.select2({dir:elementorCommon.config.isRTL?"rtl":"ltr"})},toggleVisibility:function toggleVisibility(){this.$el.toggleClass("elementor-open")},changeUIValue:function changeUIValue(t){this.ui.allFields.each((function(){var o=jQuery(this),i=o.attr("name"),r=t[i];o.val(r).trigger("change")}))},onFieldChange:function onFieldChange(){var t=elementor.schemes.getSchemeValue("typography",this.model.get("key")).value;this.triggerMethod("value:change",t)}}),t.exports=r},81605:(t,o,i)=>{"use strict";var r;r=i(27454).extend({getType:function getType(){return"typography"}}),t.exports=r},83536:(t,o,i)=>{"use strict";var r=i(89283);t.exports=r.extend({el:"#elementor-panel",getStorageKey:function getStorageKey(){return"panel"},getDefaultStorage:function getDefaultStorage(){return{size:{width:""}}},constructor:function constructor(){r.prototype.constructor.apply(this,arguments);var t=i(31302);this.show(new t),this.resizable(),this.setSize(),this.listenTo(elementor.channels.dataEditMode,"switch",this.onEditModeSwitched)},setSize:function setSize(){var t=this.storage.size.width;elementorCommon.elements.$body.css("--e-editor-panel-width",t)},resizable:function resizable(){var t=this;t.$el.resizable({handles:elementorCommon.config.isRTL?"w":"e",minWidth:200,maxWidth:680,start:function start(){elementor.$previewWrapper.addClass("ui-resizable-resizing")},stop:function stop(o,i){elementor.$previewWrapper.removeClass("ui-resizable-resizing"),elementor.getPanelView().updateScrollbar(),t.saveSize({width:i.size.width+"px"})},resize:function resize(o,i){elementorCommon.elements.$body.css("--e-editor-panel-width",i.size.width+"px"),t.$el.css({width:"",left:""})}})},onEditModeSwitched:function onEditModeSwitched(t){"edit"===t&&this.setSize()}})},64376:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=a(i(46458)),p=function(t){(0,c.default)(_default,t);var o=(0,d.default)(_default);function _default(){return(0,l.default)(this,_default),o.apply(this,arguments)}return(0,u.default)(_default,[{key:"initialize",value:function initialize(){var t=this;this.show(new m.default),elementor.panel.$el.on({resizestart:function resizestart(){return t.onPanelResizeStart()},resizestop:function resizestop(){return t.onPanelResizeStop()}})}},{key:"onPanelResizeStart",value:function onPanelResizeStart(){this.$el.addClass("ui-resizable-resizing")}},{key:"onPanelResizeStop",value:function onPanelResizeStop(){this.$el.removeClass("ui-resizable-resizing")}}]),_default}(Marionette.Region);o.default=p},46458:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67394),l=i(67971);a(o,"__esModule",{value:!0}),o.default=void 0,i(64434);var u=l(i(14176)),c=l(i(11959)),d=l(i(39041)),m=l(i(77371)),p=l(i(68537)),h=function(t){(0,m.default)(View,t);var o=(0,p.default)(View);function View(){return(0,c.default)(this,View),o.apply(this,arguments)}return(0,d.default)(View,[{key:"getTemplate",value:function getTemplate(){return"#tmpl-elementor-templates-responsive-bar"}},{key:"id",value:function id(){return"e-responsive-bar"}},{key:"ui",value:function ui(){var t="#"+this.id();return{switcherInput:".e-responsive-bar-switcher__option input",switcherLabel:".e-responsive-bar-switcher__option",switcher:t+"-switcher",sizeInputWidth:t+"__input-width",sizeInputHeight:t+"__input-height",scaleValue:t+"-scale__value",scalePlusButton:t+"-scale__plus",scaleMinusButton:t+"-scale__minus",scaleResetButton:t+"-scale__reset",closeButton:t+"__close-button",breakpointSettingsButton:t+"__settings-button"}}},{key:"events",value:function events(){return{"change @ui.switcherInput":"onBreakpointSelected","input @ui.sizeInputWidth":"onSizeInputChange","input @ui.sizeInputHeight":"onSizeInputChange","click @ui.scalePlusButton":"onScalePlusButtonClick","click @ui.scaleMinusButton":"onScaleMinusButtonClick","click @ui.scaleResetButton":"onScaleResetButtonClick","click @ui.closeButton":"onCloseButtonClick","click @ui.breakpointSettingsButton":"onBreakpointSettingsOpen"}}},{key:"initialize",value:function initialize(){this.listenTo(elementor.channels.deviceMode,"change",this.onDeviceModeChange),this.listenTo(elementor.channels.responsivePreview,"resize",this.onPreviewResize),this.listenTo(elementor.channels.deviceMode,"close",this.resetScale)}},{key:"addTipsyToIconButtons",value:function addTipsyToIconButtons(){this.ui.switcherLabel.add(this.ui.closeButton).add(this.ui.breakpointSettingsButton).tipsy({html:!0,gravity:"n",title:function title(){return jQuery(this).data("tooltip")}})}},{key:"restoreLastValidPreviewSize",value:function restoreLastValidPreviewSize(){var t=elementor.channels.responsivePreview.request("size");this.ui.sizeInputWidth.val(t.width).tipsy({html:!0,trigger:"manual",gravity:"n",title:function title(){return r("The value inserted isn't in the breakpoint boundaries","elementor")}});var o=this.ui.sizeInputWidth.data("tipsy");o.show(),setTimeout((function(){return o.hide()}),3e3)}},{key:"autoScale",value:function autoScale(){var t=40*this.scalePercentage/100,o=elementor.$previewWrapper.width()-t,i=(0,u.default)(elementor.$preview.css("--e-editor-preview-width"));if(i*this.scalePercentage/100>o){var r=o/i*100;this.setScalePercentage(r)}else this.setScalePercentage();this.scalePreview()}},{key:"scalePreview",value:function scalePreview(){var t=this.scalePercentage/100;elementor.$previewWrapper.css("--e-preview-scale",t)}},{key:"resetScale",value:function resetScale(){this.setScalePercentage(),this.scalePreview()}},{key:"setScalePercentage",value:function setScalePercentage(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:100;this.scalePercentage=t,this.ui.scaleValue.text((0,u.default)(this.scalePercentage))}},{key:"onRender",value:function onRender(){this.addTipsyToIconButtons(),this.setScalePercentage()}},{key:"onDeviceModeChange",value:function onDeviceModeChange(){var t=elementor.channels.deviceMode.request("currentMode"),o=this.ui.switcherInput.filter("[value="+t+"]");this.ui.switcherLabel.attr("aria-selected",!1),o.closest("label").attr("aria-selected",!0),o.prop("checked")||o.prop("checked",!0)}},{key:"onBreakpointSelected",value:function onBreakpointSelected(t){var o=t.target.value;elementor.changeDeviceMode(o,!1),this.autoScale()}},{key:"onBreakpointSettingsOpen",value:function onBreakpointSettingsOpen(){elementorCommon.elements.$body.hasClass("elementor-editor-preview")&&elementor.exitPreviewMode(),"panel/global/menu"===elementor.documents.currentDocument.config.panel.default_route?$e.run("panel/global/close"):$e.run("editor/documents/switch",{id:elementor.config.kit_id,mode:"autosave"}).then((function(){return $e.route("panel/global/settings-layout")})).then((function(){return jQuery(".elementor-control-section_breakpoints").trigger("click")}))}},{key:"onPreviewResize",value:function onPreviewResize(){if(!this.updatingPreviewSize){var t=elementor.channels.responsivePreview.request("size");this.ui.sizeInputWidth.val(Math.round(t.width)),this.ui.sizeInputHeight.val(Math.round(t.height))}}},{key:"onCloseButtonClick",value:function onCloseButtonClick(){elementor.changeDeviceMode("desktop"),elementor.exitDeviceMode()}},{key:"onSizeInputChange",value:function onSizeInputChange(){var t=this;clearTimeout(this.restorePreviewSizeTimeout);var o={width:this.ui.sizeInputWidth.val(),height:this.ui.sizeInputHeight.val()},i=elementor.getCurrentDeviceConstrains();o.width<i.minWidth||o.width>i.maxWidth?this.restorePreviewSizeTimeout=setTimeout((function(){return t.restoreLastValidPreviewSize()}),1500):(this.updatingPreviewSize=!0,setTimeout((function(){return t.updatingPreviewSize=!1}),300),elementor.updatePreviewSize(o),this.autoScale())}},{key:"onScalePlusButtonClick",value:function onScalePlusButtonClick(){var t=0==this.scalePercentage%10?this.scalePercentage+10:10*Math.ceil(this.scalePercentage/10);t>200||(this.setScalePercentage(t),this.scalePreview())}},{key:"onScaleMinusButtonClick",value:function onScaleMinusButtonClick(){var t=0==this.scalePercentage%10?this.scalePercentage-10:10*Math.floor(this.scalePercentage/10);t<50||(this.setScalePercentage(t),this.scalePreview())}},{key:"onScaleResetButtonClick",value:function onScaleResetButtonClick(){this.resetScale()}}]),View}(Marionette.ItemView);o.default=h},65863:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67394),l=i(67971);a(o,"__esModule",{value:!0}),o.default=void 0,i(76139),i(44321);var u=l(i(11959)),c=l(i(39041)),d=l(i(77371)),m=l(i(68537)),p=function(t){(0,d.default)(ColorPicker,t);var o=(0,m.default)(ColorPicker);function ColorPicker(){var t;(0,u.default)(this,ColorPicker);for(var i=arguments.length,r=new Array(i),a=0;a<i;a++)r[a]=arguments[a];return(t=o.call.apply(o,[this].concat(r))).createPicker(),t}return(0,c.default)(ColorPicker,[{key:"getDefaultSettings",value:function getDefaultSettings(){return{picker:{theme:"monolith",position:"bottom-"+(elementorCommon.config.isRTL?"end":"start"),components:{opacity:!0,hue:!0,interaction:{input:!0}}},classes:{active:"elementor-active",pickerHeader:"elementor-color-picker__header",pickerToolsContainer:"e-color-picker__tools",pickerTool:"e-control-tool",clearButton:"e-color-picker__clear",plusIcon:"eicon-plus"}}}},{key:"createPicker",value:function createPicker(){var t=this,o=this.getSettings("picker");o.default=o.default||null,this.picker=new Pickr(o),this.picker.setColor(o.default||"#020101"),this.color=this.processColor(),this.picker.on("change",(function(){return t.onPickerChange()})).on("clear",(function(){return t.onPickerClear()})).on("show",(function(){return t.onPickerShow()})),this.$pickerAppContainer=jQuery(this.picker.getRoot().app),this.createPickerHeader()}},{key:"addTipsyToClearButton",value:function addTipsyToClearButton(){this.$clearButton.tipsy({title:function title(){return r("Clear","elementor")},gravity:function gravity(){return"s"}})}},{key:"processColor",value:function processColor(){var t=this.picker.getColor();return(1===t.a?t.toHEXA():t.toRGBA()).toString()}},{key:"getColor",value:function getColor(){return this.color}},{key:"createPickerHeader",value:function createPickerHeader(){var t=this.getSettings().classes,o=jQuery("<div>",{class:t.pickerHeader}).text(r("Color Picker","elementor")),i=jQuery("<div>",{class:t.pickerToolsContainer}),a=this.getSettings("addButton");this.$pickerToolsContainer=i,a&&this.createAddButton(),this.createClearButton(),i.append(this.$clearButton,this.$addButton),o.append(i),this.$pickerAppContainer.prepend(o)}},{key:"createAddButton",value:function createAddButton(){var t=this,o=this.getSettings().classes;this.$addButton=jQuery("<button>",{class:o.pickerTool}).html(jQuery("<i>",{class:o.plusIcon})),this.$addButton.on("click",(function(){return t.onAddButtonClick()})),this.$addButton.tipsy({title:function title(){return r("Create New Global Color","elementor")},gravity:function gravity(){return"s"}})}},{key:"createClearButton",value:function createClearButton(){var t=this,o=this.getSettings().classes;this.$clearButton=jQuery("<div>",{class:o.clearButton+" "+o.pickerTool}).html('<i class="eicon-undo"></i>'),this.$clearButton.on("click",(function(){return t.picker._clearColor()})),this.addTipsyToClearButton()}},{key:"destroy",value:function destroy(){this.picker.destroyAndRemove()}},{key:"fixTipsyForFF",value:function fixTipsyForFF(t){t.data("tipsy").hide()}},{key:"introductionViewed",value:function introductionViewed(){return ColorPicker.droppingIntroductionViewed||elementor.config.user.introduction.colorPickerDropping}},{key:"toggleClearButtonState",value:function toggleClearButtonState(t){this.$clearButton.toggleClass("e-control-tool-disabled",!t)}},{key:"onPickerChange",value:function onPickerChange(){this.picker.applyColor();var t=this.processColor();if(t!==this.color){this.color=t;var o=this.getSettings("onChange");o&&o()}}},{key:"onPickerClear",value:function onPickerClear(){this.color="";var t=this.getSettings("onClear");t&&t()}},{key:"onPickerShow",value:function onPickerShow(){var t=this,o=this.picker.getRoot().interaction.result;setTimeout((function(){o.select(),t.picker._recalc=!0}),100)}},{key:"onAddButtonClick",value:function onAddButtonClick(){this.picker.hide();var t=this.getSettings("onAddButtonClick");t&&t(),this.fixTipsyForFF(this.$addButton)}}]),ColorPicker}(elementorModules.Module);o.default=p},97196:(t,o,i)=>{"use strict";var r,a=i(67971)(i(24596));i(64828),i(99745),r=function Conditions(){var t=this;this.compare=function(t,o,i){switch(i){case"==":return t==o;case"!=":return t!=o;case"!==":return t!==o;case"in":return-1!==o.indexOf(t);case"!in":return-1===o.indexOf(t);case"contains":return-1!==t.indexOf(o);case"!contains":return-1===t.indexOf(o);case"<":return t<o;case"<=":return t<=o;case">":return t>o;case">=":return t>=o;default:return t===o}},this.check=function(o,i){var r="or"===o.relation,l=!r;return jQuery.each(o.terms,(function(){var o,u=this;if(u.terms)o=t.check(u,i);else{var c,d,m=u.name.match(/([\w-]+)(?:\[([\w-]+)])?/),p=m[1],h=m[2],g=(null===(c=elementor.getCurrentElement())||void 0===c||null===(d=c.container)||void 0===d?void 0:d.placeholders[p])||i[p];i.__dynamic__&&i.__dynamic__[p]&&(g=i.__dynamic__[p]),"object"===(0,a.default)(g)&&h&&(g=g[h]),o=void 0!==g&&t.compare(g,u.value,u.operator)}return r?(o&&(l=!0),!o):o?void 0:l=!1})),l}},t.exports=new r},6430:(t,o,i)=>{"use strict";i(99745),t.exports=elementorModules.Module.extend({getDefaultSettings:function getDefaultSettings(){return{actions:{},classes:{list:"elementor-context-menu-list",group:"elementor-context-menu-list__group",groupPrefix:"elementor-context-menu-list__group-",item:"elementor-context-menu-list__item",itemTypePrefix:"elementor-context-menu-list__item-",itemTitle:"elementor-context-menu-list__item__title",itemShortcut:"elementor-context-menu-list__item__shortcut",iconShortcut:"elementor-context-menu-list__item__icon",itemDisabled:"elementor-context-menu-list__item--disabled",divider:"elementor-context-menu-list__divider",hidden:"elementor-hidden"}}},buildActionItem:function buildActionItem(t){var o=this,i=o.getSettings("classes"),r=jQuery("<div>",{class:i.item+" "+i.itemTypePrefix+t.name}),a=jQuery("<div>",{class:i.itemTitle}).text(t.title),l=jQuery("<div>",{class:i.iconShortcut});if(t.icon&&l.html(jQuery("<i>",{class:t.icon})),r.append(l,a),t.shortcut){var u=jQuery("<div>",{class:i.itemShortcut}).html(t.shortcut);r.append(u)}return t.callback&&r.on("click",(function(){o.runAction(t)})),t.$item=r,r},buildActionsList:function buildActionsList(){var t=this,o=t.getSettings("classes"),i=t.getSettings("groups"),r=jQuery("<div>",{class:o.list});return i.forEach((function(i){var a=jQuery("<div>",{class:o.group+" "+o.groupPrefix+i.name});i.actions.forEach((function(o){a.append(t.buildActionItem(o))})),r.append(a),i.$item=a})),r},toggleGroupVisibility:function toggleGroupVisibility(t,o){t.$item.toggleClass(this.getSettings("classes.hidden"),!o)},toggleActionVisibility:function toggleActionVisibility(t,o){t.$item.toggleClass(this.getSettings("classes.hidden"),!o)},toggleActionUsability:function toggleActionUsability(t,o){t.$item.toggleClass(this.getSettings("classes.itemDisabled"),!o)},isActionEnabled:function isActionEnabled(t){return!(!t.callback&&!t.groups)&&(!t.isEnabled||t.isEnabled())},runAction:function runAction(t){this.isActionEnabled(t)&&(t.callback(),this.getModal().hide())},initModal:function initModal(){var t;this.getModal=function(){return t||(t=elementorCommon.dialogsManager.createWidget("simple",{className:"elementor-context-menu",message:this.buildActionsList(),iframe:elementor.$preview,effects:{hide:"hide",show:"show"},hide:{onOutsideContextMenu:!0},position:{my:(elementorCommon.config.isRTL?"right":"left")+" top",collision:"fit"}})),t}},show:function show(t){var o=this,i=o.getModal();i.setSettings("position",{of:t}),o.getSettings("groups").forEach((function(t){var i=!1!==t.isVisible;o.toggleGroupVisibility(t,i),i&&t.actions.forEach((function(t){var i=!1!==t.isVisible;o.toggleActionVisibility(t,i),i&&o.toggleActionUsability(t,o.isActionEnabled(t))}))})),i.show()},destroy:function destroy(){this.getModal().destroy()},onInit:function onInit(){this.initModal()}})},99292:(t,o,i)=>{"use strict";var r=i(67971),a=r(i(47834)),l=r(i(38923)),u=r(i(83452));i(71954),i(99745),i(84208),i(64828),i(55506);var c,d=i(34533);c=elementorModules.ViewModule.extend({stylesheet:null,getDefaultSettings:function getDefaultSettings(){return{id:0,context:null,settingsModel:null,dynamicParsing:{}}},getDefaultElements:function getDefaultElements(){var t="elementor-style-".concat(this.getSettings("id")),o=elementor.$previewContents.find("#".concat(t));return o.length||(o=jQuery("<style>",{id:t})),{$stylesheetElement:o}},initStylesheet:function initStylesheet(){var t=this,o=elementorFrontend.config.responsive.activeBreakpoints;this.stylesheet=new d,(0,l.default)(o).forEach((function(o){var i=(0,a.default)(o,2),r=i[0],l=i[1];t.stylesheet.addDevice(r,l.value)}))},addStyleRules:function addStyleRules(t,o,i,r,a){var l=this,u=this.getSettings("settingsModel").parseDynamicSettings(o,this.getSettings("dynamicParsing"),t);_.each(t,(function(t){var c,d;if(t.styleFields&&t.styleFields.length&&l.addRepeaterControlsStyleRules(o[t.name],t.styleFields,t.fields,r,a),null!==(c=t.dynamic)&&void 0!==c&&c.active&&null!==(d=o.__dynamic__)&&void 0!==d&&d[t.name]&&l.addDynamicControlStyleRules(o.__dynamic__[t.name],t),t.selectors){var m,p=l.getSettings("context");p&&(m=p.model.get("settings").get("__globals__")),l.addControlStyleRules(t,u,i,r,a,m)}}))},addControlStyleRules:function addControlStyleRules(t,o,i,r,a,l){var c,d,m=this;if(l){var p=t.name;t.groupType&&(p=t.groupPrefix+t.groupType),c=l[p]}(c||void 0!==(d=this.getStyleControlValue(t,o)))&&_.each(t.selectors,(function(l,p){var h;if(c){var g=m.getSelectorGlobalValue(t,c);g&&("font"===t.type&&$e.data.get(c).then((function(t){elementor.helpers.enqueueFont(t.data.value.typography_font_family)})),h=l.replace(/(:)[^;]+(;?)/g,"$1"+g+"$2"))}else try{h=l.replace(/{{(?:([^.}]+)\.)?([^}| ]*)(?: *\|\| *(?:([^.}]+)\.)?([^}| ]*) *)*}}/g,(function(r,a,l,u,c){var p=a&&!i[a],h="";if(p||(h=m.parsePropertyPlaceholder(t,d,i,o,l,a)),!h&&0!==h){if(c){var g=(h=c).match(/^(['"])(.*)\1$/);if(g)h=g[2];else if(!isFinite(h)){if(u&&!i[u])return"";h=m.parsePropertyPlaceholder(t,d,i,o,c,u)}}if(!h&&0!==h){if(p)return"";throw""}}return"font"===t.type&&elementor.helpers.enqueueFont(h),h}))}catch(t){return}if(!_.isEmpty(h)){var v=/^(?:\([^)]+\)){1,2}/,y=p.match(v),C={};if(y){y=y[0],p=p.replace(v,"");var b,w=/\(([^)]+)\)/g,k=[];for(b=w.exec(y);b;)k.push(b[1]),b=w.exec(y);_.each(k,(function(t){if("desktop"!==t){var o=t.replace(/\+$/,"");C[o===t?"max":"min"]=o}}))}_.each(r,(function(t,o){var i=t.source?t.source:t,r=new RegExp(i,"g");p=p.replace(r,a[o])})),!(0,u.default)(C).length&&t.responsive&&"desktop"===(C=_.pick(elementorCommon.helpers.cloneObject(t.responsive),["min","max"])).max&&delete C.max,m.stylesheet.addRules(p,h,C)}}))},parsePropertyPlaceholder:function parsePropertyPlaceholder(t,o,i,r,a,l){return l&&(t=_.findWhere(i,{name:l}),o=this.getStyleControlValue(t,r)),elementor.getControlView(t.type).getStyleValue(a,o,t)},getStyleControlValue:function getStyleControlValue(t,o){var i,r,a,l,u=null===(i=this.getSettings())||void 0===i||null===(r=i.context)||void 0===r?void 0:r.container,c=null==u?void 0:u.isGlobalApplied(t.name),d=(null===(a=o.__globals__)||void 0===a?void 0:a[t.name])||(null===(l=t.global)||void 0===l?void 0:l.default);if(c&&d)return this.getSelectorGlobalValue(t,d);var m=o[t.name];return t.selectors_dictionary&&(m=t.selectors_dictionary[m]||m),_.isNumber(m)||!_.isEmpty(m)?m:void 0},getSelectorGlobalValue:function getSelectorGlobalValue(t,o){var i=$e.data.commandExtractArgs(o),r=$e.data.getCache($e.components.get("globals"),i.command,i.args.query);if(null!=r&&r.value){var a,l=r.id;if(t.groupType){var u=elementor.breakpoints.getActiveMatchRegex(),c=t.name.replace(t.groupPrefix,"").replace(u,"");if(!r.value[elementor.config.kit_config.typography_prefix+c])return;c=c.replace("_","-"),a="var( --e-global-".concat(t.groupType,"-").concat(l,"-").concat(c," )"),elementor.config.ui.defaultGenericFonts&&t.groupPrefix+"font_family"===t.name&&(a+=", ".concat(elementor.config.ui.defaultGenericFonts))}else a="var( --e-global-".concat(t.type,"-").concat(l," )");return a}},addRepeaterControlsStyleRules:function addRepeaterControlsStyleRules(t,o,i,r,a){var l=this;o.forEach((function(o,u){var c=t.models[u];l.addStyleRules(o,c.attributes,i,r.concat(["{{CURRENT_ITEM}}"]),a.concat([".elementor-repeater-item-"+c.get("_id")]))}))},addDynamicControlStyleRules:function addDynamicControlStyleRules(t,o){var i=this;elementor.dynamicTags.parseTagsText(t,o.dynamic,(function(t,o,r){var a=elementor.dynamicTags.createTag(t,o,r);if(a){var l=a.model;l.getStyleControls().length&&i.addStyleRules(l.getStyleControls(),l.attributes,l.controls,["{{WRAPPER}}"],["#elementor-tag-"+t])}}))},addStyleToDocument:function addStyleToDocument(t){var o=elementor.$previewContents.find("head"),i="append",r=o;if(t){var a=o.children(t.of);a.length&&(i=t.at,r=a)}r[i](this.elements.$stylesheetElement);var l=elementor.hooks.applyFilters("editor/style/styleText","",this.getSettings("context"));this.elements.$stylesheetElement.text(this.stylesheet+l)},removeStyleFromDocument:function removeStyleFromDocument(){this.elements.$stylesheetElement.remove()},onInit:function onInit(){elementorModules.ViewModule.prototype.onInit.apply(this,arguments),this.initStylesheet()}}),t.exports=c},40548:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67394),l=i(67971);a(o,"__esModule",{value:!0}),o.default=void 0,i(38081);var u=l(i(11959)),c=l(i(39041)),d=function(){function FilesUploadHandler(){(0,u.default)(this,FilesUploadHandler)}return(0,c.default)(FilesUploadHandler,null,[{key:"isUploadEnabled",value:function isUploadEnabled(t){return!["svg","application/json"].includes(t)||elementor.config.filesUpload.unfilteredFiles}},{key:"setUploadTypeCaller",value:function setUploadTypeCaller(t){t.uploader.uploader.param("uploadTypeCaller","elementor-wp-media-upload")}},{key:"getUnfilteredFilesNotEnabledDialog",value:function getUnfilteredFilesNotEnabledDialog(t){return elementor.helpers.getSimpleDialog("e-enable-unfiltered-files-dialog",r("Enable Unfiltered File Uploads","elementor"),r("Before you enable unfiltered files upload, note that this kind of files include a security risk. Elementor does run a process to remove possible malicious code, but there is still risk involved when using such files.","elementor"),r("Enable","elementor"),(function onConfirm(){elementorCommon.ajax.addRequest("enable_unfiltered_files_upload",{},!0),elementor.config.filesUpload.unfilteredFiles=!0,t()}))}}]),FilesUploadHandler}();o.default=d},38984:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(18194).sprintf,l=i(67394),u=i(67971);l(o,"__esModule",{value:!0}),o.default=void 0;var c=u(i(11959)),d=u(i(39041)),m=u(i(18042)),p=function(){function Heartbeat(t){var o=this;(0,c.default)(this,Heartbeat),(0,m.default)(this,"modal",null),(0,m.default)(this,"document",null),(0,m.default)(this,"getModal",(function(){return o.modal||(o.modal=o.initModal()),o.modal})),this.document=t,this.onSend=this.onSend.bind(this),this.onTick=this.onTick.bind(this),this.onRefreshNonce=this.onRefreshNonce.bind(this),this.bindEvents(),wp.heartbeat.connectNow()}return(0,d.default)(Heartbeat,[{key:"initModal",value:function initModal(){var t=elementorCommon.dialogsManager.createWidget("lightbox",{headerMessage:r("Take Over","elementor")});return t.addButton({name:"go_back",text:r("Go Back","elementor"),callback:function callback(){parent.history.go(-1)}}),t.addButton({name:"take_over",text:r("Take Over","elementor"),callback:function callback(){wp.heartbeat.enqueue("elementor_force_post_lock",!0),wp.heartbeat.connectNow()}}),t}},{key:"showLockMessage",value:function showLockMessage(t){this.getModal().setMessage(a(r("%s has taken over and is currently editing. Do you want to take over this page editing?","elementor"),t)).show()}},{key:"onSend",value:function onSend(t,o){o.elementor_post_lock={post_ID:this.document.id}}},{key:"onTick",value:function onTick(t,o){o.locked_user?(this.document.editor.isChanged&&$e.run("document/save/auto",{document:this.document}),this.showLockMessage(o.locked_user)):this.getModal().hide(),elementorCommon.ajax.addRequestConstant("_nonce",o.elementorNonce)}},{key:"onRefreshNonce",value:function onRefreshNonce(t,o){var i=o["elementor-refresh-nonces"];i&&(i.heartbeatNonce&&elementorCommon.ajax.addRequestConstant("_nonce",i.elementorNonce),i.heartbeatNonce&&(window.heartbeatSettings.nonce=i.heartbeatNonce))}},{key:"bindEvents",value:function bindEvents(){jQuery(document).on({"heartbeat-send":this.onSend,"heartbeat-tick":this.onTick,"heartbeat-tick.wp-refresh-nonces":this.onRefreshNonce})}},{key:"destroy",value:function destroy(){jQuery(document).off({"heartbeat-send":this.onSend,"heartbeat-tick":this.onTick,"heartbeat-tick.wp-refresh-nonces":this.onRefreshNonce})}}]),Heartbeat}();o.default=p},13692:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67971),l=a(i(47834)),u=a(i(83452)),c=a(i(38923)),d=a(i(59396));i(71954),i(64434),i(99745),i(84208),i(99236),i(55506),i(64828),i(90286),i(36349),i(38081);var m=a(i(65863)),p=a(i(72465)),h=["article","aside","div","footer","h1","h2","h3","h4","h5","h6","header","main","nav","p","section","span"];t.exports={document:p.default,_enqueuedFonts:{editor:[],preview:[]},_enqueuedIconFonts:[],_inlineSvg:[],elementsHierarchy:{document:{section:{column:{widget:null,section:null}}}},enqueueCSS:function enqueueCSS(t,o){var i='link[href="'+t+'"]',r='<link href="'+t+'" rel="stylesheet" type="text/css">';o&&(o.find(i).length||o.find("link").last().after(r))},enqueuePreviewStylesheet:function enqueuePreviewStylesheet(t){this.enqueueCSS(t,elementor.$previewContents)},enqueueEditorStylesheet:function enqueueEditorStylesheet(t){this.enqueueCSS(t,elementorCommon.elements.$document)},enqueueStylesheet:function enqueueStylesheet(t){elementorCommon.helpers.hardDeprecated("elementor.helpers.enqueueStylesheet()","2.6.0","elementor.helpers.enqueuePreviewStylesheet()"),this.enqueuePreviewStylesheet(t)},fetchInlineSvg:function fetchInlineSvg(t){var o=arguments.length>1&&void 0!==arguments[1]&&arguments[1];fetch(t).then((function(t){return t.ok?t.text():""})).then((function(t){o&&o(t)}))},getInlineSvg:function getInlineSvg(t,o){if(t.id){if(this._inlineSvg.hasOwnProperty(t.id))return this._inlineSvg[t.id];var i=this;this.fetchInlineSvg(t.url,(function(r){r&&(i._inlineSvg[t.id]=r,o&&o.render(),elementor.channels.editor.trigger("svg:insertion",r,t.id))}))}},enqueueIconFonts:function enqueueIconFonts(t){var o=this;if(-1===this._enqueuedIconFonts.indexOf(t)&&!elementor.config.icons_update_needed){var i=this.getIconLibrarySettings(t);i&&(i.enqueue&&i.enqueue.forEach((function(t){o.enqueuePreviewStylesheet(t),o.enqueueEditorStylesheet(t)})),i.url&&(this.enqueuePreviewStylesheet(i.url),this.enqueueEditorStylesheet(i.url)),this._enqueuedIconFonts.push(t),elementor.channels.editor.trigger("fontIcon:insertion",t,i))}},getIconLibrarySettings:function getIconLibrarySettings(t){var o=elementor.config.icons.libraries.filter((function(o){return t===o.name}));return!(!o[0]||!o[0].name)&&o[0]},renderIcon:function renderIcon(t,o){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"i",a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"value";if(!o||!o.library)return"object"===a?{rendered:!1}:void 0;var l=o.library,u=o.value;if("svg"===l)return"panel"===a?'<img src="'+u.url+'">':{rendered:!0,value:this.getInlineSvg(u,t)};var c=this.getIconLibrarySettings(l);if(c&&!c.hasOwnProperty("isCustom")){if(this.enqueueIconFonts(l),"panel"===a)return"<"+r+' class="'+u+'"></'+r+">";var d=r+this.getUniqueID();t.addRenderAttribute(d,i),t.addRenderAttribute(d,"class",u);var m="<"+r+" "+t.getRenderAttributeString(d)+"></"+r+">";return"object"===a?{rendered:!0,value:m}:m}return elementor.channels.editor.trigger("Icon:insertion",l,u,i,r,t),"object"===a?{rendered:!1}:void 0},isIconMigrated:function isIconMigrated(t,o){return t.__fa4_migrated&&t.__fa4_migrated[o]},fetchFa4ToFa5Mapping:function fetchFa4ToFa5Mapping(){var t="fa4Tofa5Mapping",o=elementorCommon.storage.get(t);return o||jQuery.getJSON(elementor.config.fa4_to_fa5_mapping_url,(function(i){o=i,elementorCommon.storage.set(t,i)})),o},mapFa4ToFa5:function mapFa4ToFa5(t){var o=this.fetchFa4ToFa5Mapping();return o[t]?o[t]:{value:"fas"+t.replace("fa "," "),library:"fa-solid"}},enqueueFont:function enqueueFont(t){var o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"preview";if($e.devTools&&$e.devTools.log.info("enqueueFont font: '".concat(t,"', target: '").concat(o,"'")),-1===this._enqueuedFonts[o].indexOf(t)){var i,r=elementor.config.controls.font.options[t],a={ru_RU:"cyrillic",uk:"cyrillic",bg_BG:"cyrillic",vi:"vietnamese",el:"greek",he_IL:"hebrew"};switch(r){case"googlefonts":i="https://fonts.googleapis.com/css?family="+t+":100,100italic,200,200italic,300,300italic,400,400italic,500,500italic,600,600italic,700,700italic,800,800italic,900,900italic",a[elementor.config.locale]&&(i+="&subset="+a[elementor.config.locale]);break;case"earlyaccess":var l=t.replace(/\s+/g,"").toLowerCase();i="https://fonts.googleapis.com/earlyaccess/"+l+".css"}_.isEmpty(i)||("editor"===o?this.enqueueCSS(i,elementorCommon.elements.$document):this.enqueueCSS(i,elementor.$previewContents)),this._enqueuedFonts[o].push(t),elementor.channels.editor.trigger("font:insertion",r,t)}},resetEnqueuedFontsCache:function resetEnqueuedFontsCache(){this._enqueuedFonts={editor:[],preview:[]},this._enqueuedIconFonts=[]},getElementChildType:function getElementChildType(t,o){var i=this;if(o||(o=this.elementsHierarchy),void 0!==o[t])return jQuery.isPlainObject(o[t])?(0,u.default)(o[t]):null;var r=null;return jQuery.each(o,(function(o,a){if(jQuery.isPlainObject(a)){var l=i.getElementChildType(t,a);return l?(r=l,!1):void 0}})),r},getUniqueID:function getUniqueID(){return elementorCommon.helpers.softDeprecated("elementor.helpers.getUniqueID()","3.0.0","elementorCommon.helpers.getUniqueId()"),elementorCommon.helpers.getUniqueId()},getSocialNetworkNameFromIcon:function getSocialNetworkNameFromIcon(t,o){var i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,a=arguments.length>4&&void 0!==arguments[4]&&arguments[4],l="",u="";return o&&!r?(l=o.replace("fa fa-",""),u='<i class="'+o+'"></i>'):t.value&&"svg"!==t.library?(l=(l=t.value.split(" ")[1])?l.replace("fa-",""):"",u=this.renderIcon(null,t,{},"i","panel")):u=this.renderIcon(null,t,{},"i","panel"),""!==l&&i&&(l=(l=l.split("-").join(" ")).replace(/\b\w/g,(function(t){return t.toUpperCase()}))),l=elementor.hooks.applyFilters("elementor/social_icons/network_name",l,t,o,i,a),a&&(l=u+" "+l),l},getSimpleDialog:function getSimpleDialog(t,o,i,a,l){return elementorCommon.dialogsManager.createWidget("confirm",{id:t,headerMessage:o,message:i,position:{my:"center center",at:"center center"},strings:{confirm:a,cancel:r("Cancel","elementor")},onConfirm:l})},maybeDisableWidget:function maybeDisableWidget(){if(!elementor.config.icons_update_needed)return!1;var t=elementor.channels.panelElements.request("element:selected").model.get("widgetType"),o=elementor.widgetsCache[t];if(o&&function hasControlOfType(t,o){var i=!1;return jQuery.each(t,(function(t,r){return o===r.type?(i=!0,!1):(!r.is_repeater||!(i=hasControlOfType(r.fields,o)))&&void 0})),i}(o.controls,"icons")){return elementor.helpers.getSimpleDialog("elementor-enable-fa5-dialog",r("Elementor's New Icon Library","elementor"),r('Elementor v2.6 includes an upgrade from Font Awesome 4 to 5. In order to continue using icons, be sure to click "Update".',"elementor")+' <a href="https://go.elementor.com/fontawesome-migration/" target="_blank">'+r("Learn More","elementor")+"</a>",r("Update","elementor"),(function onConfirm(){window.location.href=elementor.config.tools_page_link+"&redirect_to="+encodeURIComponent(document.location.href)+"#tab-fontawesome4_migration"})).show(),!0}return!1},stringReplaceAll:function stringReplaceAll(t,o){var i=new RegExp((0,u.default)(o).join("|"),"gi");return t.replace(i,(function(t){return o[t]}))},isActiveControl:function isActiveControl(t,o){var i,r,a=t.condition||(null===(i=t.get)||void 0===i?void 0:i.call(t,"condition")),u=t.conditions||(null===(r=t.get)||void 0===r?void 0:r.call(t,"conditions"));if(a){var m=[];(0,c.default)(a).forEach((function(t){var i,r=(0,l.default)(t,2),a=r[0],u=r[1],c=a.match(/([\w-]+(?:\[[\w-]+])?)?(!?)$/i),p=c[1],h=!!c[2],g=o[p];(0,d.default)(u)&&u.length?i=h?"!in":"in":(0,d.default)(g)&&g.length?i=h?"!contains":"contains":h&&(i="!=="),m.push({name:p,operator:i,value:u})})),u={relation:"and",terms:u?m.concat(u):m}}return!(u&&!elementor.conditions.check(u,o))},cloneObject:function cloneObject(t){return elementorCommon.helpers.hardDeprecated("elementor.helpers.cloneObject","2.3.0","elementorCommon.helpers.cloneObject"),elementorCommon.helpers.cloneObject(t)},disableElementEvents:function disableElementEvents(t){t.each((function(){var t=this.style.pointerEvents;"none"!==t&&jQuery(this).data("backup-pointer-events",t).css("pointer-events","none")}))},enableElementEvents:function enableElementEvents(t){t.each((function(){var t=jQuery(this),o=t.data("backup-pointer-events");void 0!==o&&t.removeData("backup-pointer-events").css("pointer-events",o)}))},wpColorPicker:function wpColorPicker(t){return elementorCommon.helpers.deprecatedMethod("elementor.helpers.wpColorPicker()","2.8.0","new ColorPicker()"),new m.default({picker:{el:t}})},isInViewport:function isInViewport(t,o){var i=t.getBoundingClientRect();return o=o||document.documentElement,i.top>=0&&i.left>=0&&i.bottom<=(window.innerHeight||o.clientHeight)&&i.right<=(window.innerWidth||o.clientWidth)},scrollToView:function scrollToView(t,o,i){void 0===o&&(o=500);var r=i,a=elementorFrontend.elements.$window;i||(i=a,r=elementor.$previewContents.find("html, body")),setTimeout((function(){if(t[0].isConnected){var o=i.height(),l=i.scrollTop(),u=i===a?t.offset().top:t[0].offsetTop,c=u-l;if(!(c>0&&c<o)){var d=u-o/2;r.stop(!0).animate({scrollTop:d},1e3)}}}),o)},getElementInlineStyle:function getElementInlineStyle(t,o){var i={},r=t[0].style;return o.forEach((function(t){i[t]=void 0!==r[t]?r[t]:""})),i},cssWithBackup:function cssWithBackup(t,o,i){var r=this.getElementInlineStyle(t,(0,u.default)(i));t.data("css-backup-"+o,r).css(i)},recoverCSSBackup:function recoverCSSBackup(t,o){var i="css-backup-"+o;t.css(t.data(i)),t.removeData(i)},elementSizeToUnit:function elementSizeToUnit(t,o,i){var r=elementorFrontend.elements.window;switch(i){case"%":o/=t.offsetParent().width()/100;break;case"vw":o/=r.innerWidth/100;break;case"vh":o/=r.innerHeight/100}return Math.round(1e3*o)/1e3},compareVersions:function compareVersions(t,o,i){var r=function prepareVersion(t){return(t+="").replace(/[^\d.]+/,".-1.")};if((t=r(t))===(o=r(o)))return!i||/^={2,3}$/.test(i);for(var a=t.split(".").map(Number),l=o.split(".").map(Number),u=Math.max(a.length,l.length),c=0;c<u;c++){var d=a[c]||0,m=l[c]||0;if(d!==m)return elementor.conditions.compare(d,m,i)}},getModelLabel:function getModelLabel(t){var o;return t instanceof Backbone.Model||(t=new Backbone.Model(t)),t.get("labelSuffix")?o=t.get("title")+" "+t.get("labelSuffix"):"global"===t.get("widgetType")&&t.getTitle&&(o=t.getTitle()),o||(o=elementor.getElementData(t).title),o},hasPro:function hasPro(){return!!window.elementorPro},validateHTMLTag:function validateHTMLTag(t){return h.includes(t.toLowerCase())?t:"div"}}},9599:(t,o,i)=>{"use strict";var r,a=i(67971)(i(83452));r=function ImagesManager(){var t=this,o={},i=[],r=function getNormalizedSize(t){var o,i=t.size;if("custom"===i){var r=t.dimension;if(!r.width&&!r.height)return"full";o="custom_"+r.width+"x"+r.height}else o=i;return o},l={};t.updateOnReceiveImage=function(){var t=elementor.getPanelView().getCurrentPageView().getOption("editedElementView");t.$el.addClass("elementor-loading"),l[t.cid]=t,elementor.channels.editor.once("imagesManager:detailsReceived",(function(){_.isEmpty(l)||_(l).each((function(t){t.render(),t.$el.removeClass("elementor-loading")})),l={}}))},t.getImageUrl=function(o){t.registerItem(o);var i=t.getItem(o);if(!i){if("custom"===o.size)return void($e.routes.isPartOf("panel/editor")&&o.model&&t.updateOnReceiveImage());i=o.url}return i},t.getItem=function(t){var i=r(t),a=t.id;return!!i&&(!(!o[a]||!o[a][i])&&o[a][i])},t.registerItem=function(o){""!==o.id&&(t.getItem(o)||(i.push(o),t.debounceGetRemoteItems()))},t.getRemoteItems=function(){var t,l,u=[];if(0!==(0,a.default)(i).length){for(l in i){t=i[l];var c=r(t),d=t.id,m=!o[d]||0===(0,a.default)(o[d]).length;u.push({id:d,size:c,is_first_time:m})}elementorCommon.ajax.send("get_images_details",{data:{items:u},success:function success(t){var r,a;for(r in t)for(a in o[r]||(o[r]={}),t[r])o[r][a]=t[r][a];i=[],elementor.channels.editor.trigger("imagesManager:detailsReceived",t)}})}},t.debounceGetRemoteItems=_.debounce(t.getRemoteItems,300)},t.exports=new r},85116:(t,o,i)=>{"use strict";var r=i(67971);i(64828),i(67209);var a,l,u,c=r(i(32009));a=jQuery,l=function hasFullDataTransferSupport(t){try{return t.originalEvent.dataTransfer.setData("test","test"),t.originalEvent.dataTransfer.clearData("test"),!0}catch(t){return!1}},u={html5Draggable:function Draggable(t){var o=this,i={},r={},u={element:"",groups:null,onDragStart:null,onDragEnd:null},d=function onDragEnd(t){"function"==typeof i.onDragEnd&&i.onDragEnd.call(r.$element,t,o)},m=function onDragStart(t){var a={groups:i.groups||[]};l(t)&&t.originalEvent.dataTransfer.setData((0,c.default)(a),!0),"function"==typeof i.onDragStart&&i.onDragStart.call(r.$element,t,o)};this.destroy=function(){r.$element.off("dragstart",m),r.$element.removeAttr("draggable")},function init(){!function initSettings(){a.extend(!0,i,u,t)}(),function initElementsCache(){r.$element=a(i.element)}(),function buildElements(){r.$element.attr("draggable",!0)}(),function attachEvents(){r.$element.on("dragstart",m).on("dragend",d)}()}()},html5Droppable:function Droppable(t){var o,i,r=this,u={},c={},d={element:"",items:">",horizontalSensitivity:"10%",axis:["vertical","horizontal"],placeholder:!0,currentElementClass:"html5dnd-current-element",placeholderClass:"html5dnd-placeholder",hasDraggingOnChildClass:"html5dnd-has-dragging-on-child",groups:null,isDroppingAllowed:null,onDragEnter:null,onDragging:null,onDropping:null,onDragLeave:null},m=function hasVerticalDetection(){return-1!==u.axis.indexOf("vertical")},p=function checkHorizontal(t,o){var i;return!!function hasHorizontalDetection(){return-1!==u.axis.indexOf("horizontal")}()&&(m()?!!(i=u.horizontalSensitivity.match(/\d+/))&&(i=i[0],/%$/.test(u.horizontalSensitivity)&&(i=o/i),t>o-i?"right":t<i&&"left"):t>o/2?"right":"left")},h=function setSide(t){var r=a(o),l=r.outerHeight()-c.$placeholder.outerHeight(),u=r.outerWidth();if(t=t.originalEvent,!(i=p(t.offsetX,u)))if(m()){var d=o.getBoundingClientRect();i=t.clientY>d.top+l/2?"bottom":"top"}else i=null},g=function insertPlaceholder(){if(u.placeholder){var t="top"===i?"prependTo":"appendTo";c.$placeholder[t](o)}},v=function isDroppingAllowed(t){var a,c,d;return!(u.groups&&l(t)&&(a=t.originalEvent.dataTransfer.types,d=!1,(a=Array.prototype.slice.apply(a)).forEach((function(t){try{if(!(c=JSON.parse(t)).groups.slice)return;u.groups.forEach((function(t){if(-1!==c.groups.indexOf(t))return d=!0,!1}))}catch(t){}})),!d)||"function"==typeof u.isDroppingAllowed&&!u.isDroppingAllowed.call(o,i,t,r))},y=function onDragEnter(t){t.stopPropagation(),o||(o=this,c.$element.parents().each((function(){var t=a(this).data("html5Droppable");t&&t.doDragLeave()})),h(t),v(t)&&(g(),c.$element.addClass(u.hasDraggingOnChildClass),a(o).addClass(u.currentElementClass),"function"==typeof u.onDragEnter&&u.onDragEnter.call(o,i,t,r)))},C=function onDragOver(t){t.stopPropagation(),o||y.call(this,t);var a=i;h(t),v(t)&&(t.preventDefault(),a!==i&&g(),"function"==typeof u.onDragging&&u.onDragging.call(this,i,t,r))},b=function onDragLeave(t){var i=this.getBoundingClientRect();("dragleave"!==t.type||t.clientX<i.left||t.clientX>=i.right||t.clientY<i.top||t.clientY>=i.bottom)&&(a(o).removeClass(u.currentElementClass),r.doDragLeave())},w=function onDrop(t){h(t),v(t)&&(t.preventDefault(),"function"==typeof u.onDropping&&u.onDropping.call(this,i,t,r))};this.doDragLeave=function(){u.placeholder&&c.$placeholder.remove(),c.$element.removeClass(u.hasDraggingOnChildClass),"function"==typeof u.onDragLeave&&u.onDragLeave.call(o,event,r),o=i=null},this.destroy=function(){c.$element.off("dragenter",u.items,y).off("dragover",u.items,C).off("drop",u.items,w).off("dragleave drop",u.items,b)},function init(){!function initSettings(){a.extend(u,d,t)}(),function initElementsCache(){c.$element=a(u.element),c.$placeholder=a("<div>",{class:u.placeholderClass})}(),function attachEvents(){c.$element.on("dragenter",u.items,y).on("dragover",u.items,C).on("drop",u.items,w).on("dragleave drop",u.items,b)}()}()}},a.each(u,(function(t,o){a.fn[t]=function(i){return i=i||{},this.each((function(){var r=a.data(this,t);r instanceof o?"destroy"===i&&(r.destroy(),a.removeData(this,t)):(i.element=this,a.data(this,t,new o(i)))})),this}}))},30122:(t,o,i)=>{"use strict";var r;i(84208),i(64828),i(99745),(r=jQuery).fn.elementorSerializeObject=function(){var t=this.serializeArray(),o={},i=function parseObject(t,o,i){var r=/^[^\[\]]+\[]/.test(o),a=/^[^\[\]]+\[[^\[\]]+]/.test(o),l=o.replace(/\[.*/,"");if(r)t[l]||(t[l]=[]);else{if(!a)return void(t.push?t.push(i):t[l]=i);t[l]||(t[l]={})}var u=o.match(/\[[^\[\]]*]/g);return u[0]=u[0].replace(/\[|]/g,""),parseObject(t[l],u.join(""),i)};return r.each(t,(function(){i(o,this.name,this.value)})),o}},87726:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(_default,t);var o=(0,d.default)(_default);function _default(){return(0,l.default)(this,_default),o.apply(this,arguments)}return(0,u.default)(_default,[{key:"getDefaultSettings",value:function getDefaultSettings(){return{selectors:{notice:"#elementor-notice-bar",close:"#elementor-notice-bar__close"}}}},{key:"getDefaultElements",value:function getDefaultElements(){var t=this.getSettings();return{$notice:jQuery(t.selectors.notice),$close:jQuery(t.selectors.close)}}},{key:"bindEvents",value:function bindEvents(){this.elements.$close.on("click",this.onCloseClick.bind(this))}},{key:"onCloseClick",value:function onCloseClick(){this.elements.$notice.slideUp(),elementorCommon.ajax.addRequest("notice_bar_dismiss")}}]),_default}(elementorModules.ViewModule);o.default=m},45921:(t,o,i)=>{"use strict";var r=i(67971)(i(14176));t.exports=elementorModules.Module.extend({initToast:function initToast(){var t=elementorCommon.dialogsManager.createWidget("buttons",{id:"elementor-toast",position:{my:"center bottom",at:"center bottom-10",of:"#elementor-panel-content-wrapper",autoRefresh:!0},hide:{onClick:!0,auto:!0,autoDelay:1e4},effects:{show:function show(){var o=t.getElements("widget");o.show(),t.refreshPosition();var i=(0,r.default)(o.css("top"),10);o.hide().css("top",i+100),o.animate({opacity:"show",height:"show",paddingBottom:"show",paddingTop:"show",top:i},{easing:"linear",duration:300})},hide:function hide(){var o=t.getElements("widget"),i=(0,r.default)(o.css("top"),10);o.animate({opacity:"hide",height:"hide",paddingBottom:"hide",paddingTop:"hide",top:i+100},{easing:"linear",duration:300})}},button:{tag:"div"}});this.getToast=function(){return t}},showToast:function showToast(t){var o=this.getToast();o.setMessage(t.message),o.getElements("buttonsWrapper").empty(),t.buttons?t.buttons.forEach((function(t){o.addButton(t)})):o.getElements("buttonsWrapper").remove(),t.classes&&o.getElements("widget").addClass(t.classes),o.show()},onInit:function onInit(){this.initToast()}})},9548:(t,o,i)=>{"use strict";var r;i(67209),r={getPresetsDictionary:function getPresetsDictionary(){return{11:100/9,12:12.5,14:100/7,16:100/6,33:100/3,66:2/3*100,83:5/6*100}},getAbsolutePresetValues:function getAbsolutePresetValues(t){var o=elementorCommon.helpers.cloneObject(t),i=this.getPresetsDictionary();return _.each(o,(function(t,r){i[t]&&(o[r]=i[t])})),o},getPresets:function getPresets(t,o){var i=elementorCommon.helpers.cloneObject(elementor.config.elements.section.presets);return t&&(i=i[t]),o&&(i=i[o]),i},getPresetByStructure:function getPresetByStructure(t){var o=this.getParsedStructure(t);return this.getPresets(o.columnsCount,o.presetIndex)},getParsedStructure:function getParsedStructure(t){return{columnsCount:(t+="").slice(0,-1),presetIndex:t.substr(-1)}},getPresetSVG:function getPresetSVG(t,o,i,r){o=o||100,i=i||50,r=r||2;var a=this.getAbsolutePresetValues(t),l=this._generatePresetSVGPath(a,o,i,r);return this._createSVGPreset(l,o,i)},_createSVGPreset:function _createSVGPreset(t,o,i){var r=document.createElementNS("http://www.w3.org/2000/svg","svg");r.setAttributeNS("http://www.w3.org/2000/xmlns/","xmlns:xlink","http://www.w3.org/1999/xlink"),r.setAttribute("viewBox","0 0 "+o+" "+i);var a=document.createElementNS("http://www.w3.org/2000/svg","path");return a.setAttribute("d",t),r.appendChild(a),r},_generatePresetSVGPath:function _generatePresetSVGPath(t,o,i,r){for(var a=o-r*(t.length-1),l=0,u="",c=0;c<t.length;c++){c&&(u+=" ");var d=t[c]/100*a;u+="M"+ +(l+=d).toFixed(4)+",0",u+="V"+i,u+="H"+ +(l-d).toFixed(4),u+="V0Z",l+=r}return u}},t.exports=r},85099:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67394),l=i(67971);a(o,"__esModule",{value:!0}),o.default=void 0;var u=l(i(11959)),c=l(i(39041)),d=l(i(77371)),m=l(i(68537)),p=function(t){(0,d.default)(_default,t);var o=(0,m.default)(_default);function _default(){var t;return(0,u.default)(this,_default),(t=o.call(this)).initDialog(),t}return(0,c.default)(_default,[{key:"initDialog",value:function initDialog(){var t=this;this.dialog=elementor.dialogsManager.createWidget("buttons",{id:"elementor-element--promotion__dialog",effects:{show:"show",hide:"hide"},hide:{onOutsideClick:!1},position:{my:(elementorCommon.config.isRTL?"right":"left")+"+5 top"}}),this.dialog.addButton({name:"action",text:r("See it in Action","elementor"),callback:function callback(){open(t.actionURL,"_blank")}}),this.dialog.getElements("action").addClass("elementor-button elementor-button-success");var o=jQuery("<div>",{id:"elementor-element--promotion__dialog__title"}),i=jQuery("<i>",{class:"eicon-pro-icon"}),a=jQuery("<i>",{class:"eicon-close"});a.on("click",(function(){return t.dialog.hide()})),this.dialog.getElements("header").append(o,i,a),this.$promotionTitle=o}},{key:"showDialog",value:function showDialog(t){return this.dialog||this.initDialog(),this.actionURL=t.actionURL,this.$promotionTitle.text(t.headerMessage),this.dialog.setMessage(t.message).setSettings("position",{of:t.element,at:(elementorCommon.config.isRTL?"left":"right")+" top"+t.top}),this.dialog.show()}}]),_default}(elementorModules.Module);o.default=p},54604:(t,o,i)=>{"use strict";var r=i(67971),a=r(i(32009)),l=r(i(83452));i(71954),i(64434),i(67209);var u,c=i(34533),d=i(99292);u=function Schemes(){var t=this,o=new c,i={},r=".elementor-widget-",u={},m=function fetchWidgetControlsStyles(i){var a=t.getWidgetSchemeControls(i);_.each(a,(function(l){!function fetchControlStyles(i,a,l){d.addControlStyleRules(o,i,a,(function(o){return t.getSchemeValue(o.scheme.type,o.scheme.value,o.scheme.key).value}),["{{WRAPPER}}"],[r+l])}(l,a,i.widget_type)}))};this.init=function(){return function initElements(){var t="elementor-style-scheme";u.$style=elementor.$previewContents.find("#".concat(t)),u.$style.length||(u.$style=jQuery("<style>",{id:t})),u.$previewHead=elementor.$previewContents.find("head")}(),function buildUI(){u.$previewHead.append(u.$style)}(),function initSchemes(){i=elementorCommon.helpers.cloneObject(elementor.config.schemes.items)}(),t},this.getWidgetSchemeControls=function(t){return _.filter(t.controls,(function(t){return _.isObject(t.scheme)}))},this.getSchemes=function(){return i},this.getEnabledSchemesTypes=function(){return elementor.config.schemes.enabled_schemes},this.getScheme=function(t){return i[t]},this.getSchemeValue=function(o,i,r){if(this.getEnabledSchemesTypes().indexOf(o)<0)return!1;var a=t.getScheme(o).items[i];if(r&&_.isObject(a)){var l=elementorCommon.helpers.cloneObject(a);return l.value=a.value[r],l}return a},this.printSchemesStyle=function(){o.empty(),function fetchAllWidgetsSchemesStyle(){_.each(elementor.widgetsCache,(function(t){m(t)}))}(),u.$style.text(o)},this.resetSchemes=function(t){i[t]=elementorCommon.helpers.cloneObject(elementor.config.schemes.items[t])},this.saveScheme=function(t){elementor.config.schemes.items[t].items=elementorCommon.helpers.cloneObject(i[t].items);var o={};return _.each(i[t].items,(function(t,i){o[i]=t.value})),elementorCommon.ajax.addRequest("apply_scheme",{data:{scheme_name:t,data:(0,a.default)(o)}})},this.setSchemeValue=function(t,o,r){i[t].items[o].value=r},this.addSchemeItem=function(t,o,r){var a=i[t],u=(0,l.default)(a.items),c=void 0!==r,d=c?r:+u.slice(-1)[0]||0;if(c)for(var m=u.length+1;m>r;m--)a.items[m]=a.items[m-1];a.items[d+1]=o},this.removeSchemeItem=function(t,o){for(var r=i[t].items;;){var a=r[++o+1];if(!a){delete r[o];break}r[o]=a}}},t.exports=new u},91795:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0,i(71954);var l=a(i(11959)),u=a(i(39041)),c=a(i(76700)),d=a(i(44263)),m=a(i(77371)),p=a(i(68537)),h=function(t){(0,m.default)(Select2,t);var o=(0,p.default)(Select2);function Select2(){return(0,l.default)(this,Select2),o.apply(this,arguments)}return(0,u.default)(Select2,[{key:"getDefaultSettings",value:function getDefaultSettings(){return{selectors:{plusButton:".select2-selection__e-plus-button",select2InlineSearch:".select2-selection__rendered .select2-search--inline"},classes:{plusButton:"select2-selection__e-plus-button",select2Choice:"select2-selection__choice"}}}},{key:"isAllSelected",value:function isAllSelected(){var t=this,isAllSelected=!1;return this.select2.dataAdapter.query({},(function(o){var i=o.results.length;t.elements.$element.select2("data").length===i&&(isAllSelected=!0)})),isAllSelected}},{key:"addPlusButton",value:function addPlusButton(){var t=this.getSettings("classes"),o=t.plusButton,i=[t.select2Choice,o].join(" ");this.elements.$plusButton=jQuery("<li>",{class:i}).text("+"),this.elements.$plusButton.insertBefore(this.elements.$inlineSearch)}},{key:"togglePlusButton",value:function togglePlusButton(){this.isAllSelected()?this.elements.$plusButton&&this.elements.$plusButton.remove():this.addPlusButton()}},{key:"addSelect2Events",value:function addSelect2Events(){var t=this;this.select2.on("select",(function(){return t.onSelectionChange()})),this.select2.on("unselect",(function(){return t.onSelectionChange()}))}},{key:"onSelectionChange",value:function onSelectionChange(){this.togglePlusButton()}},{key:"extendBaseFunctionality",value:function extendBaseFunctionality(){var t=this.select2.options.options;t.multiple&&!t.ajax&&(this.togglePlusButton(),this.addSelect2Events())}},{key:"initSelect2Elements",value:function initSelect2Elements(){var t=this.getSettings("selectors.select2InlineSearch");this.elements.$element=this.select2.$element,this.elements.$container=this.select2.$container,this.elements.$inlineSearch=this.elements.$container.find(t)}},{key:"destroy",value:function destroy(){this.elements.$element.select2("destroy")}},{key:"onInit",value:function onInit(){for(var t,o=arguments.length,i=new Array(o),r=0;r<o;r++)i[r]=arguments[r];(t=(0,c.default)((0,d.default)(Select2.prototype),"onInit",this)).call.apply(t,[this].concat(i));var a=this.getSettings(),l=a.$element,u=a.options;this.select2=l.select2(u).data("select2"),this.initSelect2Elements(),this.extendBaseFunctionality()}}]),Select2}(elementorModules.ViewModule);o.default=h},34533:(t,o,i)=>{"use strict";var r,a,l=i(67971)(i(83452));i(64434),i(99236),i(64828),i(84208),i(76139),i(44321),r=jQuery,(a=function Stylesheet(){var t=this,o={},i={},a={},u=function hashToQuery(t){var o={};return(t=t.split("-").filter(String)).forEach((function(t){var i=t.split(/_(.+)/),r=i[0],l=i[1];o[r]="max"===r?a[l]:elementorFrontend.breakpoints.getDeviceMinBreakpoint(l)})),o};this.addDevice=function(o,i){a[o]=i;var r=(0,l.default)(a);if(r.length<2)return t;r.sort((function(t,o){return a[t]-a[o]}));var u={};return r.forEach((function(t){u[t]=a[t]})),a=u,t},this.addRawCSS=function(t,o){i[t]=o},this.addRules=function(i,a,c){var d="all";if(_.isEmpty(c)||(d=function queryToHash(t){var o=[];return r.each(t,(function(t){o.push(t+"_"+this)})),o.join("-")}(c)),o[d]||function addQueryHash(t){o[t]={};var i=(0,l.default)(o);if(!(i.length<2)){i.sort((function(t,o){if("all"===t)return-1;if("all"===o)return 1;var i=u(t);return u(o).max-i.max}));var r={};i.forEach((function(t){r[t]=o[t]})),o=r}}(d),a){if(o[d][i]||(o[d][i]={}),"string"==typeof a){a=a.split(";").filter(String);var m={};try{r.each(a,(function(){var t=this.split(/:(.*)?/);m[t[0].trim()]=t[1].trim().replace(";","")}))}catch(t){return}a=m}return r.extend(o[d][i],a),t}var p=i.match(/[^{]+\{[^}]+}/g);r.each(p,(function(){var o=this.match(/([^{]+)\{([^}]+)}/);o&&t.addRules(o[1].trim(),o[2].trim(),c)}))},this.getRules=function(){return o},this.empty=function(){o={},i={}},this.toString=function(){var t="";return r.each(o,(function(o){var i=Stylesheet.parseRules(this);"all"!==o&&(i=function getQueryHashStyleFormat(t){var o=u(t),i=[];return r.each(o,(function(t){i.push("("+t+"-width:"+this+"px)")})),"@media"+i.join(" and ")}(o)+"{"+i+"}"),t+=i})),r.each(i,(function(){t+=this})),t}}).parseRules=function(t){var o="";return r.each(t,(function(t){var i=a.parseProperties(this);i&&(o+=t+"{"+i+"}")})),o},a.parseProperties=function(t){var o="";return r.each(t,(function(t){this&&(o+=t+":"+this+";")})),o},t.exports=a},59113:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67394),l=i(67971);a(o,"__esModule",{value:!0}),o.default=void 0;var u=l(i(15149)),c=l(i(11959)),d=l(i(39041)),m=l(i(77371)),p=l(i(68537)),h=function(t){(0,m.default)(AddSectionBase,t);var o=(0,p.default)(AddSectionBase);function AddSectionBase(){return(0,c.default)(this,AddSectionBase),o.apply(this,arguments)}return(0,d.default)(AddSectionBase,[{key:"template",value:function template(){return Marionette.TemplateCache.get("#tmpl-elementor-add-section")}},{key:"attributes",value:function attributes(){return{"data-view":"choose-action"}}},{key:"ui",value:function ui(){return{addNewSection:".elementor-add-new-section",closeButton:".elementor-add-section-close",addSectionButton:".elementor-add-section-button",addTemplateButton:".elementor-add-template-button",selectPreset:".elementor-select-preset",presets:".elementor-preset"}}},{key:"events",value:function events(){return{"click @ui.addSectionButton":"onAddSectionButtonClick","click @ui.addTemplateButton":"onAddTemplateButtonClick","click @ui.closeButton":"onCloseButtonClick","click @ui.presets":"onPresetSelected"}}},{key:"behaviors",value:function behaviors(){return{contextMenu:{behaviorClass:i(81152),groups:this.getContextMenuGroups()}}}},{key:"className",value:function className(){return"elementor-add-section elementor-visible-desktop"}},{key:"setView",value:function setView(t){this.$el.attr("data-view",t)}},{key:"showSelectPresets",value:function showSelectPresets(){this.setView("select-preset")}},{key:"closeSelectPresets",value:function closeSelectPresets(){this.setView("choose-action")}},{key:"getTemplatesModalOptions",value:function getTemplatesModalOptions(){return{importOptions:{at:this.getOption("at")}}}},{key:"getContextMenuGroups",value:function getContextMenuGroups(){var t=this,o=function hasContent(){return elementor.elements.length>0};return[{name:"paste",actions:[{name:"paste",title:r("Paste","elementor"),isEnabled:function isEnabled(){return $e.components.get("document/elements").utils.isPasteEnabled(elementor.getPreviewContainer())},callback:function callback(){return $e.run("document/ui/paste",{container:elementor.getPreviewContainer(),options:{at:t.getOption("at"),rebuild:!0},onAfter:function onAfter(){return t.onAfterPaste()}})}}]},{name:"content",actions:[{name:"copy_all_content",title:r("Copy All Content","elementor"),isEnabled:o,callback:function callback(){return $e.run("document/elements/copy-all")}},{name:"delete_all_content",title:r("Delete All Content","elementor"),isEnabled:o,callback:function callback(){return $e.run("document/elements/empty")}}]}]}},{key:"onAddSectionButtonClick",value:function onAddSectionButtonClick(){this.showSelectPresets()}},{key:"onAddTemplateButtonClick",value:function onAddTemplateButtonClick(){$e.run("library/open",this.getTemplatesModalOptions())}},{key:"onRender",value:function onRender(){this.$el.html5Droppable({axis:["vertical"],groups:["elementor-element"],placeholder:!1,currentElementClass:"elementor-html5dnd-current-element",hasDraggingOnChildClass:"elementor-dragging-on-child",onDropping:this.onDropping.bind(this)})}},{key:"onPresetSelected",value:function onPresetSelected(t){this.closeSelectPresets();var o=t.currentTarget.dataset.structure,i=elementor.presetsFactory.getParsedStructure(o);$e.run("document/elements/create",{model:{elType:"section"},container:elementor.getPreviewContainer(),columns:i.columnsCount,structure:o,options:(0,u.default)({},this.options)})}},{key:"onDropping",value:function onDropping(){if(!elementor.helpers.maybeDisableWidget()){var t=elementor.channels.panelElements.request("element:selected"),o=$e.internal("document/history/start-log",{type:"add",title:elementor.helpers.getModelLabel(t.model)});$e.run("document/elements/create",{model:{elType:"section"},container:elementor.getPreviewContainer(),columns:1,options:{at:this.getOption("at"),trigger:{beforeAdd:"section:before:drop",afterAdd:"section:after:drop"}}}).view.children.findByIndex(0).addElementFromPanel(),$e.internal("document/history/end-log",{id:o})}}},{key:"onAfterPaste",value:function onAfterPaste(){}}]),AddSectionBase}(Marionette.ItemView);o.default=h},4312:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(AddSectionView,t);var o=(0,d.default)(AddSectionView);function AddSectionView(){return(0,l.default)(this,AddSectionView),o.apply(this,arguments)}return(0,u.default)(AddSectionView,[{key:"id",get:function get(){return"elementor-add-new-section"}},{key:"onCloseButtonClick",value:function onCloseButtonClick(){this.closeSelectPresets()}}]),AddSectionView}(a(i(59113)).default);o.default=m},57846:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(76700)),d=a(i(44263)),m=a(i(77371)),p=a(i(68537)),h=function(t){(0,m.default)(AddSectionView,t);var o=(0,p.default)(AddSectionView);function AddSectionView(){return(0,l.default)(this,AddSectionView),o.apply(this,arguments)}return(0,u.default)(AddSectionView,[{key:"className",value:function className(){return(0,c.default)((0,d.default)(AddSectionView.prototype),"className",this).call(this)+" elementor-add-section-inline"}},{key:"fadeToDeath",value:function fadeToDeath(){var t=this;t.$el.slideUp((function(){t.destroy()}))}},{key:"onAfterPaste",value:function onAfterPaste(){(0,c.default)((0,d.default)(AddSectionView.prototype),"onAfterPaste",this).call(this),this.destroy()}},{key:"onCloseButtonClick",value:function onCloseButtonClick(){this.fadeToDeath()}},{key:"onPresetSelected",value:function onPresetSelected(t){(0,c.default)((0,d.default)(AddSectionView.prototype),"onPresetSelected",this).call(this,t),this.destroy()}},{key:"onAddTemplateButtonClick",value:function onAddTemplateButtonClick(){(0,c.default)((0,d.default)(AddSectionView.prototype),"onAddTemplateButtonClick",this).call(this),this.destroy()}},{key:"onDropping",value:function onDropping(){(0,c.default)((0,d.default)(AddSectionView.prototype),"onDropping",this).call(this),this.destroy()}}]),AddSectionView}(a(i(59113)).default);o.default=h},47071:(t,o,i)=>{"use strict";var r=i(67971)(i(83452));t.exports=Marionette.CompositeView.extend({templateHelpers:function templateHelpers(){return{view:this}},getBehavior:function getBehavior(t){return this._behaviors[(0,r.default)(this.behaviors()).indexOf(t)]},initialize:function initialize(){this.collection=this.model.get("elements")},addChildModel:function addChildModel(t,o){return this.collection.add(t,o,!0)},addElement:function addElement(t,o){if(!this.isCollectionFilled()){o=jQuery.extend({trigger:!1,edit:!0,onBeforeAdd:null,onAfterAdd:null},o);var i,r,a=this.getChildType();if(t instanceof Backbone.Model?r=(i=t).get("elType"):(i={id:elementorCommon.helpers.getUniqueId(),elType:a[0],settings:{},elements:[]},t&&jQuery.extend(i,t),r=i.elType),-1===a.indexOf(r))return this.children.last().addElement(i,o);o.clone&&(i=this.cloneItem(i)),o.trigger&&elementor.channels.data.trigger(o.trigger.beforeAdd,i),o.onBeforeAdd&&o.onBeforeAdd();var l=this.addChildModel(i,{at:o.at}),u=this.children.findByModel(l);return o.onAfterAdd&&o.onAfterAdd(l,u),o.trigger&&elementor.channels.data.trigger(o.trigger.afterAdd,i),o.edit&&elementor.documents.getCurrent().history.getActive()&&(u.getContainer(),l.trigger("request:edit")),u}},addChildElement:function addChildElement(t,o){elementorCommon.helpers.softDeprecated("addChildElement","2.8.0","$e.run( 'document/elements/create' )"),Object!==t.constructor&&(t=jQuery.extend({},t)),$e.run("document/elements/create",{container:this.getContainer(),model:t,options:o})},cloneItem:function cloneItem(t){var o=this;return t instanceof Backbone.Model?t.clone():(t.id=elementorCommon.helpers.getUniqueId(),t.settings._element_id="",t.elements.forEach((function(i,r){t.elements[r]=o.cloneItem(i)})),t)},lookup:function lookup(){var t=this;return t.isDisconnected()&&(t=$e.components.get("document").utils.findViewById(t.model.id)),t},isDisconnected:function isDisconnected(){return this.isDestroyed||!this.el.isConnected},isCollectionFilled:function isCollectionFilled(){return!1}})},38648:(t,o,i)=>{"use strict";i(71954);var r,a=i(39872),l=i(47071);r=l.extend({childView:a,behaviors:function behaviors(){var behaviors={Sortable:{behaviorClass:i(92243),elChildType:"section"}};return elementor.hooks.applyFilters("elements/base-section-container/behaviors",behaviors,this)},getSortableOptions:function getSortableOptions(){return{handle:"> .elementor-element-overlay .elementor-editor-element-edit",items:"> .elementor-section"}},getChildType:function getChildType(){return["section"]},initialize:function initialize(){l.prototype.initialize.apply(this,arguments),this.listenTo(elementor.channels.panelElements,"element:drag:start",this.onPanelElementDragStart).listenTo(elementor.channels.panelElements,"element:drag:end",this.onPanelElementDragEnd)},onPanelElementDragStart:function onPanelElementDragStart(){this.$el.find(".elementor-background-video-embed").hide(),elementor.helpers.disableElementEvents(this.$el.find("iframe"))},onPanelElementDragEnd:function onPanelElementDragEnd(){this.$el.find(".elementor-background-video-embed").show(),elementor.helpers.enableElementEvents(this.$el.find("iframe"))}}),t.exports=r},59010:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67394),l=i(67971);a(o,"__esModule",{value:!0}),o.default=void 0,i(71954);var u=l(i(18042)),c=l(i(11959)),d=l(i(39041)),m=function(){function ControlsPopover(t){(0,c.default)(this,ControlsPopover),this.child=t,this.$popover=jQuery("<div>",{class:"elementor-controls-popover"}),t.$el.before(this.$popover),this.$popover.append(t.$el),this.popoverToggleView=t._parent.children.findByIndex(t._index-1),"typography"===this.child.model.attributes.groupType&&this.createPopoverHeader()}return(0,d.default)(ControlsPopover,[{key:"addChild",value:function addChild(t){this.$popover.append(t.$el)}},{key:"createPopoverHeader",value:function createPopoverHeader(){var t=this,o=this.$popover.prev().find(".elementor-control-popover-toggle-reset-label");this.$popoverHeader=jQuery("<div>",{class:"e-group-control-header"}).html("<span>"+r("Typography","elementor")+"</span>"),this.$headerControlsWrapper=jQuery("<div>",{class:"e-control-tools"}),o.addClass("e-control-tool").on("click",(function(){return t.onResetButtonClick()})),this.$headerControlsWrapper.append(o),this.$popoverHeader.append(this.$headerControlsWrapper);var i=this.popoverToggleView.model.get("global");null!=i&&i.active&&this.createAddButton(),this.$popover.prepend(this.$popoverHeader).addClass("e-controls-popover--typography")}},{key:"onResetButtonClick",value:function onResetButtonClick(){this.$popover.hide();var t=this.child.model.get("groupPrefix")+"typography",o={container:this.child.options.container,settings:(0,u.default)({},t,"")};this.child.options.container.globals.get(t)?$e.run("document/globals/disable",o):$e.run("document/elements/settings",o)}},{key:"onAddButtonClick",value:function onAddButtonClick(){this.popoverToggleView.onAddGlobalButtonClick()}},{key:"createAddButton",value:function createAddButton(){var t=this;this.$addButton=jQuery("<button>",{class:"e-control-tool"}).html(jQuery("<i>",{class:"eicon-plus"})),this.$headerControlsWrapper.append(this.$addButton),this.$addButton.on("click",(function(){return t.onAddButtonClick()})),this.$addButton.tipsy({title:function title(){return r("Create New Global Font","elementor")},gravity:function gravity(){return"s"}})}},{key:"destroy",value:function destroy(){this.$popover.remove()}}]),ControlsPopover}();o.default=m},99533:(t,o,i)=>{"use strict";var r=i(67971);i(76139),i(12897),i(93085),i(64434);var a,l=r(i(59010));a=Marionette.CompositeView.extend({classes:{popover:"elementor-controls-popover"},activeTab:null,activeSection:null,className:function className(){return"elementor-controls-stack"},templateHelpers:function templateHelpers(){return{elementData:elementor.getElementData(this.model)}},childViewOptions:function childViewOptions(){return{elementSettingsModel:this.model}},ui:function ui(){return{tabs:".elementor-panel-navigation-tab",reloadButton:".elementor-update-preview-button"}},events:function events(){return{"click @ui.reloadButton":"onReloadButtonClick"}},modelEvents:{destroy:"onModelDestroy"},behaviors:{HandleInnerTabs:{behaviorClass:i(10367)}},initialize:function initialize(t){this.initCollection(),t.tab&&(this.activeTab=t.tab,this.activateFirstSection()),this.listenTo(elementor.channels.deviceMode,"change",this.onDeviceModeChange)},initCollection:function initCollection(){this.collection=new Backbone.Collection(_.values(elementor.mergeControlsSettings(this.getOption("controls"))))},filter:function filter(t){if(t.get("tab")!==this.activeTab)return!1;if("section"===t.get("type"))return!0;var o=t.get("section");return!o||o===this.activeSection},getControlViewByModel:function getControlViewByModel(t){return this.children.findByModelCid(t.cid)},getControlViewByName:function getControlViewByName(t){return this.getControlViewByModel(this.getControlModel(t))},getControlModel:function getControlModel(t){return this.collection.findWhere({name:t})},isVisibleSectionControl:function isVisibleSectionControl(t){return this.activeTab===t.get("tab")},activateTab:function activateTab(t){return this.activeTab=t,this.activateFirstSection(),this._renderChildren(),this},activateSection:function activateSection(t){return this.activeSection=t,this},activateFirstSection:function activateFirstSection(){var t,o=this,i=o.collection.filter((function(t){return"section"===t.get("type")&&o.isVisibleSectionControl(t)}));if(i[0]?t=i[0].get("name"):(o.activeSection=null,t=null),!i.filter((function(t){return o.activeSection===t.get("name")}))[0])return o.activateSection(t),this},getChildView:function getChildView(t){var o=t.get("type");return elementor.getControlView(o)},getNamespaceArray:function getNamespaceArray(){return[elementor.getPanelView().getCurrentPageName()]},openActiveSection:function openActiveSection(){var t=this.activeSection,o=this.children.filter((function(o){return t===o.model.get("name")}));if(o[0]){o[0].$el.addClass("elementor-open");var i=this.getNamespaceArray();i.push(t,"activated"),elementor.channels.editor.trigger(i.join(":"),this)}},onRenderCollection:function onRenderCollection(){this.openActiveSection(),a.handlePopovers(this)},onModelDestroy:function onModelDestroy(){this.destroy()},onReloadButtonClick:function onReloadButtonClick(){elementor.reloadPreview()},onDeviceModeChange:function onDeviceModeChange(){"desktop"===elementor.channels.deviceMode.request("currentMode")&&this.$el.removeClass("elementor-responsive-switchers-open")},onChildviewControlSectionClicked:function onChildviewControlSectionClicked(t){var o=t.$el.hasClass("elementor-open");this.activateSection(o?null:t.model.get("name")),this._renderChildren()},onChildviewResponsiveSwitcherClick:function onChildviewResponsiveSwitcherClick(t,o){"desktop"===o&&this.$el.toggleClass("elementor-responsive-switchers-open")}},{handlePopovers:function handlePopovers(t){var o;t.popovers=[],this.removePopovers(t),t.children.each((function(i){o&&o.addChild(i);var r=i.model.get("popover");r&&(r.start&&(o=new l.default(i),t.popovers.push(o)),r.end&&(o=null))}))},removePopovers:function removePopovers(t){t.popovers.forEach((function(t){return t.destroy()}))}}),t.exports=a},72800:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67971)(i(4312)),l=i(38648),u=l.extend({initialize:function initialize(){this.$childViewContainer=jQuery("<div>",{class:"elementor-section-wrap"}),l.prototype.initialize.apply(this,arguments)},getChildViewContainer:function getChildViewContainer(){return this.$childViewContainer},behaviors:function behaviors(){var t=l.prototype.behaviors.apply(this,arguments),behaviors={contextMenu:{behaviorClass:i(81152),groups:this.getContextMenuGroups()}};return jQuery.extend(t,behaviors)},getContainer:function getContainer(){return elementor.settings.page.getEditedView().getContainer()},getContextMenuGroups:function getContextMenuGroups(){var t=this,o=function hasContent(){return elementor.elements.length>0};return[{name:"paste",actions:[{name:"paste",title:r("Paste","elementor"),isEnabled:function isEnabled(){return $e.components.get("document/elements").utils.isPasteEnabled(t.getContainer())},callback:function callback(o){return $e.run("document/ui/paste",{container:t.getContainer(),options:{at:o,rebuild:!0}})}}]},{name:"content",actions:[{name:"copy_all_content",title:r("Copy All Content","elementor"),isEnabled:o,callback:function callback(){return $e.run("document/elements/copy-all")}},{name:"delete_all_content",title:r("Delete All Content","elementor"),isEnabled:o,callback:function callback(){return $e.run("document/elements/empty")}}]}]},onRender:function onRender(){var t;if(elementorCommon.config.experimentalFeatures.e_dom_optimization)t=this.$el;else{var o=jQuery("<div>",{class:"elementor-inner"});this.$el.html(o),t=o}if(t.html(this.$childViewContainer),elementor.userCan("design")){var i=new a.default;i.render(),t.append(i.$el)}}});t.exports=u},42618:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var l=a(i(24596)),u=a(i(11959)),c=a(i(39041)),d=a(i(77371)),m=a(i(68537)),p=function(t){(0,d.default)(ArgsObject,t);var o=(0,m.default)(ArgsObject);function ArgsObject(t){var i;return(0,u.default)(this,ArgsObject),(i=o.call(this)).args=t,i}return(0,c.default)(ArgsObject,[{key:"requireArgument",value:function requireArgument(t){var o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.args;if(!o.hasOwnProperty(t))throw Error("".concat(t," is required."))}},{key:"requireArgumentType",value:function requireArgumentType(t,o){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.args;if(this.requireArgument(t,i),(0,l.default)(i[t])!==o)throw Error("".concat(t," invalid type: ").concat(o,"."))}},{key:"requireArgumentInstance",value:function requireArgumentInstance(t,o){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.args;if(this.requireArgument(t,i),!(i[t]instanceof o))throw Error("".concat(t," invalid instance."))}},{key:"requireArgumentConstructor",value:function requireArgumentConstructor(t,o){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.args;if(this.requireArgument(t,i),i[t].constructor!==o)throw Error("".concat(t," invalid constructor type."))}}],[{key:"getInstanceType",value:function getInstanceType(){return"ArgsObject"}}]),ArgsObject}(a(i(27597)).default);o.default=p},27597:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var l=a(i(29363)),u=a(i(59396));i(99745);var c=a(i(11959)),d=a(i(39041)),m=a(i(76700)),p=a(i(44263)),h=function(){function InstanceType(){var t=this;(0,c.default)(this,InstanceType);for(var o=this instanceof InstanceType?this.constructor:void 0,i=[];o.__proto__&&o.__proto__.name;)i.push(o.__proto__),o=o.__proto__;i.reverse().forEach((function(o){return t instanceof o}))}return(0,d.default)(InstanceType,null,[{key:l.default,value:function value(t){var o=(0,m.default)((0,p.default)(InstanceType),l.default,this).call(this,t);if(t&&!t.constructor.getInstanceType)return o;if(t&&(t.instanceTypes||(t.instanceTypes=[]),o||this.getInstanceType()===t.constructor.getInstanceType()&&(o=!0),o)){var i=this.getInstanceType===InstanceType.getInstanceType?"BaseInstanceType":this.getInstanceType();-1===t.instanceTypes.indexOf(i)&&t.instanceTypes.push(i)}return!o&&t&&(o=t.instanceTypes&&(0,u.default)(t.instanceTypes)&&-1!==t.instanceTypes.indexOf(this.getInstanceType())),o}},{key:"getInstanceType",value:function getInstanceType(){elementorModules.ForceMethodImplementation()}}]),InstanceType}();o.default=h},74375:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0,i(55506),i(90286);var l=a(i(83452)),u=a(i(35657)),c=a(i(84899)),d=a(i(11959)),m=a(i(39041)),p=a(i(77371)),h=a(i(68537)),g=function(t){(0,p.default)(Breakpoints,t);var o=(0,h.default)(Breakpoints);function Breakpoints(t){var i;return(0,d.default)(this,Breakpoints),(i=o.call(this)).responsiveConfig=t,i}return(0,m.default)(Breakpoints,[{key:"getActiveBreakpointsList",value:function getActiveBreakpointsList(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},o={largeToSmall:!1,withDesktop:!1};t=(0,c.default)((0,c.default)({},o),t);var i=(0,l.default)(this.responsiveConfig.activeBreakpoints);if(t.withDesktop){var r=i.indexOf("widescreen"),a=-1===r?i.length:i.length-1;i.splice(a,0,"desktop")}return t.largeToSmall&&i.reverse(),i}},{key:"getBreakpointValues",value:function getBreakpointValues(){var t=this.responsiveConfig.activeBreakpoints,o=[];return(0,u.default)(t).forEach((function(t){o.push(t.value)})),o}},{key:"getDesktopPreviousDeviceKey",value:function getDesktopPreviousDeviceKey(){var t=this.responsiveConfig.activeBreakpoints,o=(0,l.default)(t),i=o.length;return"min"===t[o[i-1]].direction?o[i-2]:o[i-1]}},{key:"getDesktopMinPoint",value:function getDesktopMinPoint(){return this.responsiveConfig.activeBreakpoints[this.getDesktopPreviousDeviceKey()].value+1}},{key:"getDeviceMinBreakpoint",value:function getDeviceMinBreakpoint(t){if("desktop"===t)return this.getDesktopMinPoint();var o,i=this.responsiveConfig.activeBreakpoints,r=(0,l.default)(i);if(r[0]===t)o=320;else if("widescreen"===t)o=i[t]?i[t].value:this.responsiveConfig.breakpoints.widescreen;else{var a=r.indexOf(t);o=i[r[a-1]].value+1}return o}},{key:"getActiveMatchRegex",value:function getActiveMatchRegex(){return new RegExp(this.getActiveBreakpointsList().map((function(t){return"_"+t})).join("|")+"$")}}]),Breakpoints}(elementorModules.Module);o.default=g},99469:(t,o,i)=>{"use strict";var r=i(67971)(i(14176));i(67209);t.exports=function EventManager(){var t,o=Array.prototype.slice,i={actions:{},filters:{}};function _removeHook(t,o,r,a){var l,u,c;if(i[t][o])if(r)if(l=i[t][o],a)for(c=l.length;c--;)(u=l[c]).callback===r&&u.context===a&&l.splice(c,1);else for(c=l.length;c--;)l[c].callback===r&&l.splice(c,1);else i[t][o]=[]}function _addHook(t,o,r,a,l){var u={callback:r,priority:a,context:l},c=i[t][o];if(c){var d=!1;if(jQuery.each(c,(function(){if(this.callback===r)return d=!0,!1})),d)return;c.push(u),c=function _hookInsertSort(t){for(var o,i,r,a=1,l=t.length;a<l;a++){for(o=t[a],i=a;(r=t[i-1])&&r.priority>o.priority;)t[i]=t[i-1],--i;t[i]=o}return t}(c)}else c=[u];i[t][o]=c}function _runHook(t,o,r){var a,l,u=i[t][o];if(!u)return"filters"===t&&r[0];if(l=u.length,"filters"===t)for(a=0;a<l;a++)r[0]=u[a].callback.apply(u[a].context,r);else for(a=0;a<l;a++)u[a].callback.apply(u[a].context,r);return"filters"!==t||r[0]}return t={removeFilter:function removeFilter(o,i){return"string"==typeof o&&_removeHook("filters",o,i),t},applyFilters:function applyFilters(){var i=o.call(arguments),r=i.shift();return"string"==typeof r?_runHook("filters",r,i):t},addFilter:function addFilter(o,i,a,l){return"string"==typeof o&&"function"==typeof i&&_addHook("filters",o,i,a=(0,r.default)(a||10,10),l),t},removeAction:function removeAction(o,i){return"string"==typeof o&&_removeHook("actions",o,i),t},doAction:function doAction(){var i=o.call(arguments),r=i.shift();return"string"==typeof r&&_runHook("actions",r,i),t},addAction:function addAction(o,i,a,l){return"string"==typeof o&&"function"==typeof i&&_addHook("actions",o,i,a=(0,r.default)(a||10,10),l),t}}}},47224:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.isOneOf=o.rgbToHex=o.stringToRemValues=o.arrayToClassName=o.pxToRem=void 0;var l=a(i(38923)),u=a(i(24596));i(76139),i(44321),i(90286),i(99236),i(64434),i(3777),i(38081);var c=function pxToRem(t){if(t)return"string"!=typeof t&&(t=t.toString()),t.split(" ").map((function(t){return"".concat(.0625*t,"rem")})).join(" ")};o.pxToRem=c;o.arrayToClassName=function arrayToClassName(t,o){return t.filter((function(t){return"object"===(0,u.default)(t)?(0,l.default)(t)[0][1]:t})).map((function(t){var i="object"===(0,u.default)(t)?(0,l.default)(t)[0][0]:t;return o?o(i):i})).join(" ")};o.stringToRemValues=function stringToRemValues(t){return t.split(" ").map((function(t){return c(t)})).join(" ")};o.rgbToHex=function rgbToHex(t,o,i){return"#"+[t,o,i].map((function(t){var o=t.toString(16);return 1===o.length?"0"+o:o})).join("")};o.isOneOf=function isOneOf(t,o){return o.some((function(o){return t.includes(o)}))}},68689:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var l=a(i(57135));i(64434),i(37472),i(76139),i(12897),i(93085);var u=a(i(59396)),c=a(i(73220)),d=a(i(24596)),m=a(i(49117)),p=a(i(11959)),h=a(i(39041)),g=a(i(38852)),v=a(i(77371)),y=a(i(68537)),C=a(i(18042)),b=function(t){(0,v.default)(CommandBase,t);var o=(0,y.default)(CommandBase);function CommandBase(t){var i,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:$e.commands;return(0,p.default)(this,CommandBase),i=o.call(this,t),(0,C.default)((0,g.default)(i),"component",void 0),i.currentCommand=r.getCurrentLast(),i.component=r.getComponent(i.currentCommand),i.initialize(t),t=i.args,i.validateArgs(t),i}return(0,h.default)(CommandBase,[{key:"requireContainer",value:function requireContainer(){var t=this,o=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.args;if(!o.container&&!o.containers)throw Error("container or containers are required.");if(o.container&&o.containers)throw Error("container and containers cannot go together please select one of them.");var i=o.containers||[o.container];i.forEach((function(o){t.requireArgumentInstance("container",elementorModules.editor.Container,{container:o})}))}},{key:"initialize",value:function initialize(){}},{key:"validateArgs",value:function validateArgs(){}},{key:"isDataChanged",value:function isDataChanged(){return!1}},{key:"apply",value:function apply(){elementorModules.ForceMethodImplementation()}},{key:"run",value:function run(){var t;this.onBeforeRun(this.args);try{this.onBeforeApply(this.args),t=this.apply(this.args)}catch(t){if(this.onCatchApply(t),t instanceof $e.modules.HookBreak)return!1}return this.runAfter(t)}},{key:"runAfter",value:function runAfter(t){var o=this,i=function onAfter(t){o.onAfterApply(o.args,t),o.isDataChanged()&&$e.internal("document/save/set-is-modified",{status:!0}),o.onAfterRun(o.args,t)},r=function(){var t=(0,m.default)(l.default.mark((function _callee(t){var i,r;return l.default.wrap((function _callee$(a){for(;;)switch(a.prev=a.next){case 0:if(i=o.onAfterApply(o.args,t),!(r=(0,u.default)(i)?i.flat().filter((function(t){return t instanceof c.default})):[]).length){a.next=4;break}return a.next=4,c.default.all(r);case 4:o.isDataChanged()&&$e.internal("document/save/set-is-modified",{status:!0}),o.onAfterRun(o.args,t);case 6:case"end":return a.stop()}}),_callee)})));return function asyncOnAfter(o){return t.apply(this,arguments)}}();if(t&&"object"===(0,d.default)(t)&&t.promise&&t.then&&t.fail)t.fail(this.onCatchApply.bind(this)),t.done(i);else{if(t instanceof c.default)return(0,m.default)(l.default.mark((function _callee2(){return l.default.wrap((function _callee2$(i){for(;;)switch(i.prev=i.next){case 0:return i.next=2,t.catch(o.onCatchApply.bind(o));case 2:return i.next=4,t.then((function(t){return r(t)}));case 4:return i.abrupt("return",t);case 5:case"end":return i.stop()}}),_callee2)})))();i(t)}return t}},{key:"runCatchHooks",value:function runCatchHooks(t){$e.hooks.runDataCatch(this.currentCommand,this.args,t),$e.hooks.runUICatch(this.currentCommand,this.args,t)}},{key:"onBeforeRun",value:function onBeforeRun(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};$e.hooks.runUIBefore(this.currentCommand,t)}},{key:"onAfterRun",value:function onAfterRun(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},o=arguments.length>1?arguments[1]:void 0;$e.hooks.runUIAfter(this.currentCommand,t,o)}},{key:"onBeforeApply",value:function onBeforeApply(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};$e.hooks.runDataDependency(this.currentCommand,t)}},{key:"onAfterApply",value:function onAfterApply(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},o=arguments.length>1?arguments[1]:void 0;return $e.hooks.runDataAfter(this.currentCommand,t,o)}},{key:"onCatchApply",value:function onCatchApply(t){this.runCatchHooks(t),elementorCommon.helpers.consoleError(t)}}],[{key:"getInstanceType",value:function getInstanceType(){return"CommandBase"}},{key:"getInfo",value:function getInfo(){return{}}}]),CommandBase}(a(i(42618)).default);o.default=b},23714:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(CommandInternalBase,t);var o=(0,d.default)(CommandInternalBase);function CommandInternalBase(t){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:$e.commandsInternal;return(0,l.default)(this,CommandInternalBase),o.call(this,t,i)}return(0,u.default)(CommandInternalBase,null,[{key:"getInstanceType",value:function getInstanceType(){return"CommandInternalBase"}}]),CommandInternalBase}(a(i(68689)).default);o.default=m},9899:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.Close=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(Close,t);var o=(0,d.default)(Close);function Close(){return(0,l.default)(this,Close),o.apply(this,arguments)}return(0,u.default)(Close,[{key:"apply",value:function apply(){this.component.close()}}]),Close}(a(i(68689)).default);o.Close=m;var p=m;o.default=p},11469:(t,o,i)=>{"use strict";var r=i(67394);r(o,"__esModule",{value:!0}),r(o,"Close",{enumerable:!0,get:function get(){return a.Close}}),r(o,"Open",{enumerable:!0,get:function get(){return l.Open}}),r(o,"Toggle",{enumerable:!0,get:function get(){return u.Toggle}});var a=i(9899),l=i(35898),u=i(37894)},35898:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.Open=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(Open,t);var o=(0,d.default)(Open);function Open(){return(0,l.default)(this,Open),o.apply(this,arguments)}return(0,u.default)(Open,[{key:"apply",value:function apply(){$e.route(this.component.getNamespace())}}]),Open}(a(i(68689)).default);o.Open=m;var p=m;o.default=p},37894:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.Toggle=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(Toggle,t);var o=(0,d.default)(Toggle);function Toggle(){return(0,l.default)(this,Toggle),o.apply(this,arguments)}return(0,u.default)(Toggle,[{key:"apply",value:function apply(){this.component.isOpen?this.component.close():$e.route(this.component.getNamespace())}}]),Toggle}(a(i(68689)).default);o.Toggle=m;var p=m;o.default=p},15591:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0,i(99236),i(64434),i(84208);var l=a(i(38923)),u=a(i(35657)),c=a(i(83452)),d=a(i(47834)),m=a(i(11959)),p=a(i(39041)),h=a(i(77371)),g=a(i(68537)),v=function(t){(0,h.default)(ComponentBase,t);var o=(0,g.default)(ComponentBase);function ComponentBase(){return(0,m.default)(this,ComponentBase),o.apply(this,arguments)}return(0,p.default)(ComponentBase,[{key:"__construct",value:function __construct(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};t.manager&&(this.manager=t.manager),this.commands=this.defaultCommands(),this.commandsInternal=this.defaultCommandsInternal(),this.hooks=this.defaultHooks(),this.routes=this.defaultRoutes(),this.tabs=this.defaultTabs(),this.shortcuts=this.defaultShortcuts(),this.utils=this.defaultUtils(),this.data=this.defaultData(),this.uiStates=this.defaultUiStates(),this.defaultRoute="",this.currentTab=""}},{key:"registerAPI",value:function registerAPI(){var t=this;(0,l.default)(this.getTabs()).forEach((function(o){return t.registerTabRoute(o[0])})),(0,l.default)(this.getRoutes()).forEach((function(o){var i=(0,d.default)(o,2),r=i[0],a=i[1];return t.registerRoute(r,a)})),(0,l.default)(this.getCommands()).forEach((function(o){var i=(0,d.default)(o,2),r=i[0],a=i[1];return t.registerCommand(r,a)})),(0,l.default)(this.getCommandsInternal()).forEach((function(o){var i=(0,d.default)(o,2),r=i[0],a=i[1];return t.registerCommandInternal(r,a)})),(0,u.default)(this.getHooks()).forEach((function(o){return t.registerHook(o)})),(0,l.default)(this.getData()).forEach((function(o){var i=(0,d.default)(o,2),r=i[0],a=i[1];return t.registerData(r,a)})),(0,u.default)(this.getUiStates()).forEach((function(o){return t.registerUiState(o)}))}},{key:"getNamespace",value:function getNamespace(){elementorModules.ForceMethodImplementation()}},{key:"getRootContainer",value:function getRootContainer(){return this.getNamespace().split("/")[0]}},{key:"defaultTabs",value:function defaultTabs(){return{}}},{key:"defaultRoutes",value:function defaultRoutes(){return{}}},{key:"defaultCommands",value:function defaultCommands(){return{}}},{key:"defaultCommandsInternal",value:function defaultCommandsInternal(){return{}}},{key:"defaultHooks",value:function defaultHooks(){return{}}},{key:"defaultUiStates",value:function defaultUiStates(){return{}}},{key:"defaultShortcuts",value:function defaultShortcuts(){return{}}},{key:"defaultUtils",value:function defaultUtils(){return{}}},{key:"defaultData",value:function defaultData(){return{}}},{key:"getCommands",value:function getCommands(){return this.commands}},{key:"getCommandsInternal",value:function getCommandsInternal(){return this.commandsInternal}},{key:"getHooks",value:function getHooks(){return this.hooks}},{key:"getUiStates",value:function getUiStates(){return this.uiStates}},{key:"getRoutes",value:function getRoutes(){return this.routes}},{key:"getTabs",value:function getTabs(){return this.tabs}},{key:"getShortcuts",value:function getShortcuts(){return this.shortcuts}},{key:"getData",value:function getData(){return this.data}},{key:"registerCommand",value:function registerCommand(t,o){$e.commands.register(this,t,o)}},{key:"registerHook",value:function registerHook(t){return t.register()}},{key:"registerUiState",value:function registerUiState(t){$e.uiStates.register(t)}},{key:"registerCommandInternal",value:function registerCommandInternal(t,o){$e.commandsInternal.register(this,t,o)}},{key:"registerRoute",value:function registerRoute(t,o){$e.routes.register(this,t,o)}},{key:"registerData",value:function registerData(t,o){$e.data.register(this,t,o)}},{key:"unregisterRoute",value:function unregisterRoute(t){$e.routes.unregister(this,t)}},{key:"registerTabRoute",value:function registerTabRoute(t){var o=this;this.registerRoute(t,(function(i){return o.activateTab(t,i)}))}},{key:"dependency",value:function dependency(){return!0}},{key:"open",value:function open(){return!0}},{key:"close",value:function close(){return!!this.isOpen&&(this.isOpen=!1,this.inactivate(),$e.routes.clearCurrent(this.getNamespace()),$e.routes.clearHistory(this.getRootContainer()),!0)}},{key:"activate",value:function activate(){$e.components.activate(this.getNamespace())}},{key:"inactivate",value:function inactivate(){$e.components.inactivate(this.getNamespace())}},{key:"isActive",value:function isActive(){return $e.components.isActive(this.getNamespace())}},{key:"onRoute",value:function onRoute(t){this.toggleRouteClass(t,!0),this.toggleHistoryClass(),this.activate(),this.trigger("route/open",t)}},{key:"onCloseRoute",value:function onCloseRoute(t){this.toggleRouteClass(t,!1),this.inactivate(),this.trigger("route/close",t)}},{key:"setDefaultRoute",value:function setDefaultRoute(t){this.defaultRoute=this.getNamespace()+"/"+t}},{key:"getDefaultRoute",value:function getDefaultRoute(){return this.defaultRoute}},{key:"removeTab",value:function removeTab(t){delete this.tabs[t],this.unregisterRoute(t)}},{key:"hasTab",value:function hasTab(t){return!!this.tabs[t]}},{key:"addTab",value:function addTab(t,o,i){var r=this;if(this.tabs[t]=o,void 0!==i){var a={},l=(0,c.default)(this.tabs);l.pop(),l.splice(i,0,t),l.forEach((function(t){a[t]=r.tabs[t]})),this.tabs=a}this.registerTabRoute(t)}},{key:"getTabsWrapperSelector",value:function getTabsWrapperSelector(){return""}},{key:"getTabRoute",value:function getTabRoute(t){return this.getNamespace()+"/"+t}},{key:"renderTab",value:function renderTab(t){}},{key:"activateTab",value:function activateTab(t,o){var i=this;this.currentTab=t,this.renderTab(t,o),jQuery(this.getTabsWrapperSelector()+" .elementor-component-tab").off("click").on("click",(function(t){$e.route(i.getTabRoute(t.currentTarget.dataset.tab),o)})).removeClass("elementor-active").filter('[data-tab="'+t+'"]').addClass("elementor-active")}},{key:"getActiveTabConfig",value:function getActiveTabConfig(){return this.tabs[this.currentTab]||{}}},{key:"getBodyClass",value:function getBodyClass(t){return"e-route-"+t.replace(/\//g,"-")}},{key:"normalizeCommandName",value:function normalizeCommandName(t){return t.replace(/[A-Z]/g,(function(t,o){return(o>0?"-":"")+t.toLowerCase()}))}},{key:"importCommands",value:function importCommands(t){var o=this,i={};return(0,l.default)(t).forEach((function(t){var r=(0,d.default)(t,2),a=r[0],l=r[1],u=o.normalizeCommandName(a);i[u]=function(t){return new l(t).run()},$e.commands.classes[o.getNamespace()+"/"+u]=l})),i}},{key:"importHooks",value:function importHooks(t){var o={};for(var i in t){var r=new t[i];o[r.getId()]=r}return o}},{key:"importUiStates",value:function importUiStates(t){var o=this,i={};return(0,u.default)(t).forEach((function(t){var r=new t(o);i[r.getId()]=r})),i}},{key:"setUiState",value:function setUiState(t,o){$e.uiStates.set("".concat(this.getNamespace(),"/").concat(t),o)}},{key:"toggleRouteClass",value:function toggleRouteClass(t,o){elementorCommon.elements.$body.toggleClass(this.getBodyClass(t),o)}},{key:"toggleHistoryClass",value:function toggleHistoryClass(){elementorCommon.elements.$body.toggleClass("e-routes-has-history",!!$e.routes.getHistory(this.getRootContainer()).length)}}]),ComponentBase}(elementorModules.Module);o.default=v},18427:(t,o,i)=>{"use strict";var r=i(67394),a=i(52369),l=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var u=l(i(11959)),c=l(i(39041)),d=l(i(76700)),m=l(i(44263)),p=l(i(77371)),h=l(i(68537)),g=l(i(15591)),v=a(i(11469)),y=function(t){(0,p.default)(ComponentModalBase,t);var o=(0,h.default)(ComponentModalBase);function ComponentModalBase(){return(0,u.default)(this,ComponentModalBase),o.apply(this,arguments)}return(0,c.default)(ComponentModalBase,[{key:"registerAPI",value:function registerAPI(){var t=this;(0,d.default)((0,m.default)(ComponentModalBase.prototype),"registerAPI",this).call(this),$e.shortcuts.register("esc",{scopes:[this.getNamespace()],callback:function callback(){return t.close()}})}},{key:"defaultCommands",value:function defaultCommands(){return this.importCommands(v)}},{key:"defaultRoutes",value:function defaultRoutes(){return{"":function _(){}}}},{key:"open",value:function open(){var t=this;if(!this.layout){var o=this.getModalLayout();this.layout=new o({component:this}),this.layout.getModal().on("hide",(function(){return t.close()}))}return this.layout.showModal(),!0}},{key:"close",value:function close(){return!!(0,d.default)((0,m.default)(ComponentModalBase.prototype),"close",this).call(this)&&(this.layout.getModal().hide(),!0)}},{key:"getModalLayout",value:function getModalLayout(){elementorModules.ForceMethodImplementation()}}]),ComponentModalBase}(g.default);o.default=y},2857:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(18042)),d=function(){function HookBase(){(0,l.default)(this,HookBase),(0,c.default)(this,"type",void 0),(0,c.default)(this,"command",void 0),(0,c.default)(this,"id",void 0),this.initialize(),this.type=this.getType(),this.command=this.getCommand(),this.id=this.getId()}return(0,u.default)(HookBase,[{key:"initialize",value:function initialize(){}},{key:"register",value:function register(){elementorModules.ForceMethodImplementation()}},{key:"getType",value:function getType(){elementorModules.ForceMethodImplementation()}},{key:"getCommand",value:function getCommand(){elementorModules.ForceMethodImplementation()}},{key:"getId",value:function getId(){elementorModules.ForceMethodImplementation()}},{key:"getContainerType",value:function getContainerType(){}},{key:"getConditions",value:function getConditions(){return!0}},{key:"apply",value:function apply(t){elementorModules.ForceMethodImplementation()}},{key:"run",value:function run(){var t=arguments.length<=0?void 0:arguments[0],o=t.options,i=void 0===o?{}:o;return!(!i.callbacks||!1!==i.callbacks[this.id])||(!this.getConditions.apply(this,arguments)||($e.devTools&&$e.devTools.log.callbacks().active(this.type,this.command,this.id),this.apply.apply(this,arguments)))}}]),HookBase}();o.default=d},91706:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.After=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(After,t);var o=(0,d.default)(After);function After(){return(0,l.default)(this,After),o.apply(this,arguments)}return(0,u.default)(After,[{key:"register",value:function register(){$e.hooks.registerDataAfter(this)}}]),After}(a(i(85895)).default);o.After=m;var p=m;o.default=p},85895:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.Base=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(Base,t);var o=(0,d.default)(Base);function Base(){return(0,l.default)(this,Base),o.apply(this,arguments)}return(0,u.default)(Base,[{key:"getType",value:function getType(){return"data"}}]),Base}(a(i(2857)).default);o.Base=m;var p=m;o.default=p},73308:(t,o,i)=>{"use strict";i(67394)(o,"__esModule",{value:!0}),o.default=void 0,i(76139),i(44321);var r=function matchUserAgent(t){return a.indexOf(t)>=0},a=navigator.userAgent,l=!!window.opr&&!!opr.addons||!!window.opera||r(" OPR/"),u=r("Firefox"),c=/^((?!chrome|android).)*safari/i.test(a)||/constructor/i.test(window.HTMLElement)||"[object SafariRemoteNotification]"===(!window.safari||"undefined"!=typeof safari&&safari.pushNotification).toString(),d=/Trident|MSIE/.test(a)&&!!document.documentMode,m=!d&&!!window.StyleMedia||r("Edg"),p=!!window.chrome&&r("Chrome")&&!(m||l),h=r("Chrome")&&!!window.CSS,g={appleWebkit:r("AppleWebKit")&&!h,blink:h,chrome:p,edge:m,firefox:u,ie:d,mac:r("Macintosh"),opera:l,safari:c,webkit:r("AppleWebKit")};o.default=g},99107:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(_default,t);var o=(0,d.default)(_default);function _default(){return(0,l.default)(this,_default),o.apply(this,arguments)}return(0,u.default)(_default,[{key:"className",value:function className(){return"elementor-templates-modal__header"}},{key:"getTemplate",value:function getTemplate(){return"#tmpl-elementor-templates-modal__header"}},{key:"regions",value:function regions(){return{logoArea:".elementor-templates-modal__header__logo-area",tools:"#elementor-template-library-header-tools",menuArea:".elementor-templates-modal__header__menu-area"}}},{key:"ui",value:function ui(){return{closeModal:".elementor-templates-modal__header__close"}}},{key:"events",value:function events(){return{"click @ui.closeModal":"onCloseModalClick"}}},{key:"templateHelpers",value:function templateHelpers(){return{closeType:this.getOption("closeType")}}},{key:"onCloseModalClick",value:function onCloseModalClick(){this._parent._parent._parent.hideModal()}}]),_default}(Marionette.LayoutView);o.default=m},56525:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=a(i(99107)),p=a(i(31352)),h=a(i(20311)),g=function(t){(0,c.default)(_default,t);var o=(0,d.default)(_default);function _default(){return(0,l.default)(this,_default),o.apply(this,arguments)}return(0,u.default)(_default,[{key:"el",value:function el(){return this.getModal().getElements("widget")}},{key:"regions",value:function regions(){return{modalHeader:".dialog-header",modalContent:".dialog-lightbox-content",modalLoading:".dialog-lightbox-loading"}}},{key:"initialize",value:function initialize(){this.modalHeader.show(new m.default(this.getHeaderOptions()))}},{key:"getModal",value:function getModal(){return this.modal||this.initModal(),this.modal}},{key:"initModal",value:function initModal(){var t={className:"elementor-templates-modal",closeButton:!1,draggable:!1,hide:{onOutsideClick:!1,onEscKeyPress:!1}};jQuery.extend(!0,t,this.getModalOptions()),this.modal=elementorCommon.dialogsManager.createWidget("lightbox",t),this.modal.getElements("message").append(this.modal.addElement("content"),this.modal.addElement("loading")),t.draggable&&this.draggableModal()}},{key:"showModal",value:function showModal(){this.getModal().show()}},{key:"hideModal",value:function hideModal(){this.getModal().hide()}},{key:"draggableModal",value:function draggableModal(){var t=this.getModal().getElements("widgetContent");t.draggable({containment:"parent",stop:function stop(){t.height("")}}),t.css("position","absolute")}},{key:"getModalOptions",value:function getModalOptions(){return{}}},{key:"getLogoOptions",value:function getLogoOptions(){return{}}},{key:"getHeaderOptions",value:function getHeaderOptions(){return{closeType:"normal"}}},{key:"getHeaderView",value:function getHeaderView(){return this.modalHeader.currentView}},{key:"showLoadingView",value:function showLoadingView(){this.modalLoading.show(new h.default),this.modalLoading.$el.show(),this.modalContent.$el.hide()}},{key:"hideLoadingView",value:function hideLoadingView(){this.modalContent.$el.show(),this.modalLoading.$el.hide()}},{key:"showLogo",value:function showLogo(){this.getHeaderView().logoArea.show(new p.default(this.getLogoOptions()))}}]),_default}(Marionette.LayoutView);o.default=g},20311:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(_default,t);var o=(0,d.default)(_default);function _default(){return(0,l.default)(this,_default),o.apply(this,arguments)}return(0,u.default)(_default,[{key:"id",value:function id(){return"elementor-template-library-loading"}},{key:"getTemplate",value:function getTemplate(){return"#tmpl-elementor-template-library-loading"}}]),_default}(Marionette.ItemView);o.default=m},31352:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(_default,t);var o=(0,d.default)(_default);function _default(){return(0,l.default)(this,_default),o.apply(this,arguments)}return(0,u.default)(_default,[{key:"getTemplate",value:function getTemplate(){return"#tmpl-elementor-templates-modal__header__logo"}},{key:"className",value:function className(){return"elementor-templates-modal__header__logo"}},{key:"events",value:function events(){return{click:"onClick"}}},{key:"templateHelpers",value:function templateHelpers(){return{title:this.getOption("title")}}},{key:"onClick",value:function onClick(){var t=this.getOption("click");t&&t()}}]),_default}(Marionette.ItemView);o.default=m},81341:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67394),l=i(67971);a(o,"__esModule",{value:!0}),o.default=o.Back=void 0;var u=l(i(11959)),c=l(i(39041)),d=l(i(38852)),m=l(i(77371)),p=l(i(68537)),h=l(i(18042)),g=function(t){(0,m.default)(Back,t);var o=(0,p.default)(Back);function Back(){var t;(0,u.default)(this,Back);for(var i=arguments.length,r=new Array(i),a=0;a<i;a++)r[a]=arguments[a];return t=o.call.apply(o,[this].concat(r)),(0,h.default)((0,d.default)(t),"confirmDialog",null),t}return(0,c.default)(Back,[{key:"apply",value:function apply(){if(1!==$e.routes.getHistory("panel").length)return $e.routes.back("panel");this.getCloseConfirmDialog(event).show()}},{key:"getCloseConfirmDialog",value:function getCloseConfirmDialog(t){if(!this.confirmDialog){var o={id:"elementor-kit-warn-on-close",headerMessage:r("Exit","elementor"),message:r("Would you like to exit?","elementor"),position:{my:"center center",at:"center center"},strings:{confirm:r("Exit","elementor"),cancel:r("Cancel","elementor")},onConfirm:function onConfirm(){$e.run("panel/global/close")}};this.confirmDialog=elementorCommon.dialogsManager.createWidget("confirm",o)}return this.confirmDialog.setSettings("hide",{onEscKeyPress:!t}),this.confirmDialog}}]),Back}(l(i(68689)).default);o.Back=g;var v=g;o.default=v},26914:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.Close=void 0,i(6632),i(76139),i(2235);var l=a(i(14176)),u=a(i(11959)),c=a(i(39041)),d=a(i(77371)),m=a(i(68537)),p=function(t){(0,d.default)(Close,t);var o=(0,m.default)(Close);function Close(){return(0,u.default)(this,Close),o.apply(this,arguments)}return(0,c.default)(Close,[{key:"apply",value:function apply(t){var o=this,i=t.mode;return elementor.config.initial_document.id===(0,l.default)(elementor.config.kit_id)?$e.run("panel/global/exit"):($e.internal("panel/state-loading"),$e.run("editor/documents/switch",{mode:i,id:elementor.config.initial_document.id,onClose:function onClose(t){t.isDraft()&&(elementor.toggleDocumentCssFiles(t,!0),elementor.settings.page.destroyControlsCSS()),$e.components.get("panel/global").close(),$e.routes.clearHistory(o.component.getRootContainer()),elementor.documents.invalidateCache(elementor.config.kit_id)}}).finally((function(){return $e.internal("panel/state-ready")})))}}]),Close}(a(i(68689)).default);o.Close=p;var h=p;o.default=h},85184:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.Exit=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(Exit,t);var o=(0,d.default)(Exit);function Exit(){return(0,l.default)(this,Exit),o.apply(this,arguments)}return(0,u.default)(Exit,[{key:"apply",value:function apply(){return $e.run("editor/documents/close",{id:elementor.config.kit_id,onClose:function onClose(t){location=t.config.urls.exit_to_dashboard}})}}]),Exit}(a(i(68689)).default);o.Exit=m;var p=m;o.default=p},46293:(t,o,i)=>{"use strict";var r=i(67394);r(o,"__esModule",{value:!0}),r(o,"Back",{enumerable:!0,get:function get(){return a.Back}}),r(o,"Close",{enumerable:!0,get:function get(){return l.Close}}),r(o,"Exit",{enumerable:!0,get:function get(){return u.Exit}}),r(o,"Open",{enumerable:!0,get:function get(){return c.Open}});var a=i(81341),l=i(26914),u=i(85184),c=i(67676)},67676:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.Open=void 0,i(6632),i(76139),i(2235);var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(Open,t);var o=(0,d.default)(Open);function Open(){return(0,l.default)(this,Open),o.apply(this,arguments)}return(0,u.default)(Open,[{key:"apply",value:function apply(){var t=elementor.documents.get(elementor.config.kit_id);return t&&"open"===t.editor.status?jQuery.Deferred().resolve():($e.routes.clearHistory(this.component.getRootContainer()),this.component.toggleHistoryClass(),$e.internal("panel/state-loading"),$e.run("editor/documents/switch",{id:elementor.config.kit_id,mode:"autosave"}).finally((function(){return $e.internal("panel/state-ready")})))}}],[{key:"getInfo",value:function getInfo(){return{isSafe:!0}}}]),Open}(a(i(68689)).default);o.Open=m;var p=m;o.default=p},92553:(t,o,i)=>{"use strict";var r=i(67394),a=i(52369),l=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var u=l(i(11959)),c=l(i(39041)),d=l(i(38852)),m=l(i(76700)),p=l(i(44263)),h=l(i(77371)),g=l(i(68537)),v=l(i(18042)),y=a(i(2642)),C=a(i(46293)),b=l(i(21893)),w=function(t){(0,h.default)(_default,t);var o=(0,g.default)(_default);function _default(){var t;(0,u.default)(this,_default);for(var i=arguments.length,r=new Array(i),a=0;a<i;a++)r[a]=arguments[a];return t=o.call.apply(o,[this].concat(r)),(0,v.default)((0,d.default)(t),"pages",{}),t}return(0,c.default)(_default,[{key:"__construct",value:function __construct(t){(0,m.default)((0,p.default)(_default.prototype),"__construct",this).call(this,t),elementor.on("panel:init",(function(){t.manager.addPanelPages(),t.manager.addPanelMenuItem()})),elementor.hooks.addFilter("panel/header/behaviors",t.manager.addHeaderBehavior),elementor.addControlView("global-style-repeater",b.default)}},{key:"getNamespace",value:function getNamespace(){return"panel/global"}},{key:"defaultRoutes",value:function defaultRoutes(){return{menu:function menu(){elementor.getPanelView().setPage("kit_menu")}}}},{key:"defaultCommands",value:function defaultCommands(){return this.importCommands(C)}},{key:"defaultShortcuts",value:function defaultShortcuts(){return{open:{keys:"ctrl+k",dependency:function dependency(){return"kit"!==elementor.documents.getCurrent().config.type}},back:{keys:"esc",scopes:["panel"],dependency:function dependency(){return elementor.documents.isCurrent(elementor.config.kit_id)&&!jQuery(".dialog-widget:visible").length}}}}},{key:"defaultHooks",value:function defaultHooks(){return this.importHooks(y)}},{key:"renderTab",value:function renderTab(t){elementor.getPanelView().setPage("kit_settings").content.currentView.activateTab(t)}}]),_default}($e.modules.ComponentBase);o.default=w},93172:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67394),l=i(67971);a(o,"__esModule",{value:!0}),o.default=void 0;var u=l(i(73220)),c=l(i(35657));i(71954),i(64434);var d=l(i(18042)),m=l(i(11959)),p=l(i(39041)),h=l(i(77371)),g=l(i(68537)),v=function(t){(0,h.default)(GlobalControlSelect,t);var o=(0,g.default)(GlobalControlSelect);function GlobalControlSelect(){return(0,m.default)(this,GlobalControlSelect),o.apply(this,arguments)}return(0,p.default)(GlobalControlSelect,[{key:"getClassNames",value:function getClassNames(){return{previewItemsContainer:"e-global__preview-items-container",previewItem:"e-global__preview-item",selectedPreviewItem:"e-global__preview-item--selected",manageButton:"e-global__manage-button",popover:"e-global__popover",popoverToggle:"e-global__popover-toggle",popoverToggleActive:"e-global__popover-toggle--active",controlGlobal:"e-control-global",globalPopoverContainer:"e-global__popover-container",globalPopoverTitle:"e-global__popover-title",globalPopoverTitleText:"e-global__popover-title-text",globalPopoverInfo:"e-global__popover-info",globalPopoverInfoTooltip:"e-global__popover-info-tooltip",confirmAddNewGlobal:"e-global__confirm-add",confirmMessageText:".e-global__confirm-message-text"}}},{key:"registerUiElements",value:function registerUiElements(){var t=this.popover.getElements("widget");this.ui.manageGlobalsButton=t.find(".".concat(this.getClassNames().manageButton))}},{key:"registerPreviewElements",value:function registerPreviewElements(){var t=this.popover.getElements("widget"),o=this.getClassNames();this.ui.globalPreviewItems=t.find(".".concat(o.previewItem))}},{key:"registerEvents",value:function registerEvents(){var t=this;this.ui.globalPopoverToggle.on("click",(function(o){return t.toggleGlobalPopover(o)})),this.ui.manageGlobalsButton.on("click",(function(){var o=t.view.getGlobalMeta().route,i={route:$e.routes.getHistory("panel").reverse()[0].route,container:t.view.options.container};$e.run("panel/global/open",i).then((function(){return $e.route(o)})),t.popover.hide()}))}},{key:"addPreviewItemsClickListener",value:function addPreviewItemsClickListener(){var t=this;this.ui.$globalPreviewItemsContainer.on("click",".".concat(this.getClassNames().previewItem),(function(o){return t.applySavedGlobalValue(o.currentTarget.dataset.globalId)}))}},{key:"fetchGlobalValue",value:function fetchGlobalValue(){var t=this;return $e.data.get(this.view.getGlobalKey()).then((function(o){return t.view.globalValue=o.data.value,t.onValueTypeChange(),elementor.kitManager.renderGlobalVariables(),t.view.applySavedValue(),o.data})).catch((function(o){var i;if(404!==(null==o||null===(i=o.data)||void 0===i?void 0:i.status))return u.default.reject(o);t.disableGlobalValue(!1)}))}},{key:"setCurrentActivePreviewItem",value:function setCurrentActivePreviewItem(){var t=this.getClassNames().selectedPreviewItem,o=elementor.config.globals.defaults_enabled[this.view.getGlobalMeta().controlType];this.activePreviewItem&&this.resetActivePreviewItem();var i,r=this.view.getGlobalKey();r||this.view.getControlValue()||!o||(r=null===(i=this.view.model.get("global"))||void 0===i?void 0:i.default);if(r){var a=$e.data.commandExtractArgs(r).args.query.id,l=this.ui.globalPreviewItems.filter('[data-global-id="'.concat(a,'"]'));l&&(this.activePreviewItem=l,this.activePreviewItem.addClass(t))}else this.activePreviewItem=null}},{key:"resetActivePreviewItem",value:function resetActivePreviewItem(){this.activePreviewItem&&this.activePreviewItem.removeClass(this.getClassNames().selectedPreviewItem),this.activePreviewItem=null}},{key:"applySavedGlobalValue",value:function applySavedGlobalValue(t){this.setGlobalValue(t),this.fetchGlobalValue(),this.popover.hide()}},{key:"onValueTypeChange",value:function onValueTypeChange(){this.updateCurrentGlobalName()}},{key:"updateCurrentGlobalName",value:function updateCurrentGlobalName(t){var o=this,i=this.getClassNames(),a="";if(t)a=t;else{t=this.view.getControlValue();var l,u=this.view.getGlobalKey();if(!u&&!t&&elementor.config.globals.defaults_enabled[this.view.getGlobalMeta().controlType])u=null===(l=this.view.model.get("global"))||void 0===l?void 0:l.default;if(u)return $e.data.get(u).then((function(t){var i="";i=t.data.title?t.data.title:r("Default","elementor"),o.updateCurrentGlobalName(i)})),void this.ui.globalPopoverToggle.addClass(i.popoverToggleActive);a=r(t?"Custom":"Default","elementor"),this.ui.globalPopoverToggle.removeClass(i.popoverToggleActive)}this.globalName=a}},{key:"onRender",value:function onRender(){var t=this;this.printGlobalToggleButton(),this.initGlobalPopover(),this.view.getGlobalKey()?setTimeout((function(){return t.fetchGlobalValue()}),50):this.onValueTypeChange(),this.$el.addClass(this.getClassNames().controlGlobal)}},{key:"toggleGlobalPopover",value:function toggleGlobalPopover(){var t=this;this.popover.isVisible()?this.popover.hide():(this.ui.$globalPreviewItemsContainer&&this.ui.$globalPreviewItemsContainer.remove(),this.view.getGlobalsList().then((function(o){t.addGlobalsListToPopover(o),t.registerPreviewElements(),t.addPreviewItemsClickListener(),t.popover.show(),t.setCurrentActivePreviewItem()})))}},{key:"buildGlobalPopover",value:function buildGlobalPopover(){var t=this,o=this.getClassNames(),i=jQuery("<div>",{class:o.globalPopoverContainer}),r=jQuery("<div>",{class:o.globalPopoverTitle}).html('<div class="'+o.globalPopoverInfo+'"><i class="eicon-info-circle"></i></div><span class="'+o.globalPopoverTitleText+'">'+this.getOption("popoverTitle")+"</span>"),a=jQuery("<div>",{class:o.manageButton}).html('<i class="eicon-cog"></i>');return r.append(a),i.append(r),this.manageButtonTooltipText=this.getOption("manageButtonText"),a.tipsy({title:function title(){return t.manageButtonTooltipText},offset:3,gravity:function gravity(){return"s"}}),i}},{key:"printGlobalToggleButton",value:function printGlobalToggleButton(){var t=this,o=jQuery("<div>",{class:this.getClassNames().popoverToggle+" elementor-control-unit-1"}),i=jQuery("<i>",{class:"eicon-globe"}),r=jQuery("<span>",{class:"elementor-control-spinner"}).html('<i class="eicon-spinner eicon-animation-spin"></i></span>');o.append(i),this.$el.find(".elementor-control-input-wrapper").prepend(o),this.ui.globalPopoverToggle=o,this.ui.globalPopoverToggleIcon=i,this.ui.$globalsLoadingSpinner=r,this.ui.globalPopoverToggleIcon.tipsy({title:function title(){return t.globalName},offset:7,gravity:function gravity(){return"s"}}),o.before(r),this.ui.$globalsLoadingSpinner.hide()}},{key:"initGlobalPopover",value:function initGlobalPopover(){this.popover=elementorCommon.dialogsManager.createWidget("simple",{className:this.getClassNames().popover,message:this.buildGlobalPopover(),effects:{show:"show",hide:"hide"},hide:{onOutsideClick:!1},position:{my:"right top",at:"right bottom+5",of:this.ui.globalPopoverToggle,collision:"fit flip",autoRefresh:!0}}),this.registerUiElementsAndEvents(),this.createGlobalInfoTooltip()}},{key:"addGlobalsListToPopover",value:function addGlobalsListToPopover(t){var o=jQuery("<div>",{class:"e-global__preview-items-container"});this.view.buildGlobalsList(t,o),this.popover.getElements("widget").find(".".concat(this.getClassNames().globalPopoverTitle)).after(o),this.ui.$globalPreviewItemsContainer=o}},{key:"registerUiElementsAndEvents",value:function registerUiElementsAndEvents(){this.registerUiElements(),this.registerEvents()}},{key:"onAddGlobalToList",value:function onAddGlobalToList(t){var o=this,i=this.getClassNames();this.confirmNewGlobalModal=elementorCommon.dialogsManager.createWidget("confirm",{className:i.confirmAddNewGlobal,headerMessage:this.getOption("newGlobalConfirmTitle"),message:t,strings:{confirm:r("Create","elementor"),cancel:r("Cancel","elementor")},hide:{onBackgroundClick:!1},onConfirm:function onConfirm(){return o.onConfirmNewGlobal()},onShow:function onShow(){var t=o.confirmNewGlobalModal.getElements("widget");o.ui.globalNameInput=t.find("input").focus(),o.ui.confirmMessageText=t.find(i.confirmMessageText),o.ui.globalNameInput.on("input",(function(){return o.onAddGlobalConfirmInputChange()}))}}),this.confirmNewGlobalModal.show()}},{key:"onAddGlobalConfirmInputChange",value:function onAddGlobalConfirmInputChange(){if(this.view.globalsList){for(var t,o=0,i=(0,c.default)(this.view.globalsList);o<i.length;o++){var r=i[o];if(this.ui.globalNameInput.val()===r.title){t=this.view.getNameAlreadyExistsMessage();break}t=this.view.getConfirmTextMessage()}this.ui.confirmMessageText.html(t)}}},{key:"onConfirmNewGlobal",value:function onConfirmNewGlobal(){var t=this.view.getGlobalMeta();t.title=this.ui.globalNameInput.val(),this.createNewGlobal(t)}},{key:"createNewGlobal",value:function createNewGlobal(t){var o=this;this.ui.$globalsLoadingSpinner.show(),$e.run(t.commandName+"/create",{container:this.view.container,setting:t.key,title:t.title}).then((function(t){o.applySavedGlobalValue(t.data.id),o.ui.$globalsLoadingSpinner.hide()}))}},{key:"setGlobalValue",value:function setGlobalValue(t){var o="",i={};o=this.view.getGlobalKey()?"document/globals/settings":"document/globals/enable",i[this.view.model.get("name")]=this.view.getGlobalCommand()+"?id="+t,$e.run(o,{container:this.view.options.container,settings:i})}},{key:"onUnsetGlobalValue",value:function onUnsetGlobalValue(){this.disableGlobalValue()}},{key:"onUnlinkGlobalDefault",value:function onUnlinkGlobalDefault(){var t=this,o=this.view.getGlobalMeta();$e.run("document/globals/unlink",{container:this.view.container,globalValue:this.view.model.get("global").default,setting:o.key,options:{external:!0}}).then((function(){t.onValueTypeChange(),t.view.globalValue=null,t.resetActivePreviewItem()}))}},{key:"createGlobalInfoTooltip",value:function createGlobalInfoTooltip(){var t=this,o=this.getClassNames(),i=this.popover.getElements("widget").find(".".concat(o.globalPopoverInfo));this.globalInfoTooltip=elementorCommon.dialogsManager.createWidget("simple",{className:o.globalPopoverInfoTooltip,message:this.getOption("tooltipText"),effects:{show:"show",hide:"hide"},position:{my:"left bottom",at:"left top+9",of:this.popover.getElements("widget"),autoRefresh:!0}}),i.on({mouseenter:function mouseenter(){return t.globalInfoTooltip.show()},mouseleave:function mouseleave(){return t.globalInfoTooltip.hide()}})}},{key:"disableGlobalValue",value:function disableGlobalValue(){var t=this,o=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],i=this.view.getGlobalMeta();return $e.run("document/globals/disable",{container:this.view.container,settings:(0,d.default)({},i.key,""),options:{restore:o}}).then((function(){t.onValueTypeChange(),t.view.globalValue=null,t.resetActivePreviewItem()}))}}]),GlobalControlSelect}(Marionette.Behavior);o.default=v},50819:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.BaseGlobalsUpdate=void 0;var l=a(i(15149)),u=a(i(11959)),c=a(i(39041)),d=a(i(77371)),m=a(i(68537)),p=function(t){(0,d.default)(BaseGlobalsUpdate,t);var o=(0,m.default)(BaseGlobalsUpdate);function BaseGlobalsUpdate(){return(0,u.default)(this,BaseGlobalsUpdate),o.apply(this,arguments)}return(0,c.default)(BaseGlobalsUpdate,[{key:"getContainerType",value:function getContainerType(){return"document"}},{key:"getConditions",value:function getConditions(){return $e.routes.isPartOf("panel/global")}},{key:"getRepeaterName",value:function getRepeaterName(){elementorModules.ForceMethodImplementation()}},{key:"applyModel",value:function applyModel(t,o,i){elementorModules.ForceMethodImplementation()}},{key:"apply",value:function apply(t,o){var i=this,r=t.containers,a=void 0===r?[t.container]:r,u=(0,l.default)({},o.data),c=u.id,d=u.value;delete u.id,delete u.value,u._id=c,this.applyModel(u,d),a.forEach((function(t){$e.run("document/repeater/insert",{container:t,model:u,name:i.getRepeaterName()})}))}}]),BaseGlobalsUpdate}($e.modules.hookData.After);o.BaseGlobalsUpdate=p;var h=p;o.default=h},46390:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.KitGlobalsUpdateColors=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(KitGlobalsUpdateColors,t);var o=(0,d.default)(KitGlobalsUpdateColors);function KitGlobalsUpdateColors(){return(0,l.default)(this,KitGlobalsUpdateColors),o.apply(this,arguments)}return(0,u.default)(KitGlobalsUpdateColors,[{key:"getCommand",value:function getCommand(){return"globals/colors/create"}},{key:"getId",value:function getId(){return"globals-update-colors-/globals/colors/create"}},{key:"getRepeaterName",value:function getRepeaterName(){return"custom_colors"}},{key:"applyModel",value:function applyModel(t,o){t.color=o}}]),KitGlobalsUpdateColors}(a(i(50819)).default);o.KitGlobalsUpdateColors=m;var p=m;o.default=p},74266:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.KitGlobalsUpdateTypography=void 0;var l=a(i(15149)),u=a(i(11959)),c=a(i(39041)),d=a(i(77371)),m=a(i(68537)),p=function(t){(0,d.default)(KitGlobalsUpdateTypography,t);var o=(0,m.default)(KitGlobalsUpdateTypography);function KitGlobalsUpdateTypography(){return(0,u.default)(this,KitGlobalsUpdateTypography),o.apply(this,arguments)}return(0,c.default)(KitGlobalsUpdateTypography,[{key:"getCommand",value:function getCommand(){return"globals/typography/create"}},{key:"getId",value:function getId(){return"globals-update-typography-/globals/typography/create"}},{key:"getRepeaterName",value:function getRepeaterName(){return"custom_typography"}},{key:"applyModel",value:function applyModel(t,o){(0,l.default)(t,o)}}]),KitGlobalsUpdateTypography}(a(i(50819)).default);o.KitGlobalsUpdateTypography=p;var h=p;o.default=h},2642:(t,o,i)=>{"use strict";var r=i(67394);r(o,"__esModule",{value:!0}),r(o,"KitGlobalsUpdateColors",{enumerable:!0,get:function get(){return a.KitGlobalsUpdateColors}}),r(o,"KitGlobalsUpdateTypography",{enumerable:!0,get:function get(){return l.KitGlobalsUpdateTypography}}),r(o,"KitDeleteGlobalsCache",{enumerable:!0,get:function get(){return u.KitDeleteGlobalsCache}}),r(o,"KitAfterSave",{enumerable:!0,get:function get(){return c.KitAfterSave}}),r(o,"KitUpdateBreakpointsPreview",{enumerable:!0,get:function get(){return d.KitUpdateBreakpointsPreview}}),r(o,"KitUpdateLightboxPreview",{enumerable:!0,get:function get(){return m.KitUpdateLightboxPreview}}),r(o,"KitUpdateStretchContainer",{enumerable:!0,get:function get(){return p.KitUpdateStretchContainer}}),r(o,"KitSaveRouteHistory",{enumerable:!0,get:function get(){return h.KitSaveRouteHistory}}),r(o,"KitRemoveEditorActiveCSSDocumentsOpen",{enumerable:!0,get:function get(){return g.KitRemoveEditorActiveCSSDocumentsOpen}}),r(o,"KitRemoveEditorActiveCSSPanelOpen",{enumerable:!0,get:function get(){return v.KitRemoveEditorActiveCSSPanelOpen}}),r(o,"KitBackToRouteHistory",{enumerable:!0,get:function get(){return y.KitBackToRouteHistory}}),r(o,"KitRemovePreviewDeletedVariables",{enumerable:!0,get:function get(){return C.KitRemovePreviewDeletedVariables}}),r(o,"KitAddMenuItems",{enumerable:!0,get:function get(){return b.KitAddMenuItems}});var a=i(46390),l=i(74266),u=i(43474),c=i(41616),d=i(3877),m=i(66834),p=i(32692),h=i(12514),g=i(97949),v=i(4348),y=i(80633),C=i(24974),b=i(62740)},3877:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.KitUpdateBreakpointsPreview=void 0,i(65942),i(84208);var l=a(i(38923)),u=a(i(47834)),c=a(i(11959)),d=a(i(39041)),m=a(i(77371)),p=a(i(68537)),h=function(t){(0,m.default)(KitUpdateBreakpointsPreview,t);var o=(0,p.default)(KitUpdateBreakpointsPreview);function KitUpdateBreakpointsPreview(){return(0,c.default)(this,KitUpdateBreakpointsPreview),o.apply(this,arguments)}return(0,d.default)(KitUpdateBreakpointsPreview,[{key:"getCommand",value:function getCommand(){return"document/elements/settings"}},{key:"getId",value:function getId(){return"kit-update-breakpoints-preview"}},{key:"getContainerType",value:function getContainerType(){return"document"}},{key:"getConditions",value:function getConditions(){return"kit"===elementor.documents.getCurrent().config.type}},{key:"apply",value:function apply(t){var o=t.settings;if(o.active_breakpoints)return elementor.documents.currentDocument.config.settings.settings.active_breakpoints=o.active_breakpoints,void(elementor.activeBreakpointsUpdated=!0);(0,l.default)(o).forEach((function(t){var o=(0,u.default)(t,2),i=o[0],r=o[1];if(i.startsWith("viewport_")){var a=i.replace("viewport_","");r||(r=elementorFrontend.config.responsive.breakpoints[a].default_value),elementorFrontend.config.responsive.breakpoints[a].value=r}})),elementor.updatePreviewResizeOptions(!0)}}]),KitUpdateBreakpointsPreview}($e.modules.hookUI.After);o.KitUpdateBreakpointsPreview=h},66834:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.KitUpdateLightboxPreview=void 0;var l=a(i(38923)),u=a(i(47834)),c=a(i(11959)),d=a(i(39041)),m=a(i(77371)),p=a(i(68537)),h=function(t){(0,m.default)(KitUpdateLightboxPreview,t);var o=(0,p.default)(KitUpdateLightboxPreview);function KitUpdateLightboxPreview(){return(0,c.default)(this,KitUpdateLightboxPreview),o.apply(this,arguments)}return(0,d.default)(KitUpdateLightboxPreview,[{key:"getCommand",value:function getCommand(){return"document/elements/settings"}},{key:"getId",value:function getId(){return"kit-update-lightbox-preview"}},{key:"getContainerType",value:function getContainerType(){return"document"}},{key:"getConditions",value:function getConditions(){return"kit"===elementor.documents.getCurrent().config.type}},{key:"apply",value:function apply(t){var o=t.settings;(0,l.default)(o).forEach((function(t){var o=(0,u.default)(t,2),i=o[0],r=o[1];-1!==i.indexOf("lightbox")&&(elementorFrontend.config.kit[i]=r)}))}}]),KitUpdateLightboxPreview}($e.modules.hookUI.After);o.KitUpdateLightboxPreview=h;var g=h;o.default=g},32692:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.KitUpdateStretchContainer=void 0;var l=a(i(38923)),u=a(i(47834)),c=a(i(11959)),d=a(i(39041)),m=a(i(77371)),p=a(i(68537)),h=function(t){(0,m.default)(KitUpdateStretchContainer,t);var o=(0,p.default)(KitUpdateStretchContainer);function KitUpdateStretchContainer(){return(0,c.default)(this,KitUpdateStretchContainer),o.apply(this,arguments)}return(0,d.default)(KitUpdateStretchContainer,[{key:"getCommand",value:function getCommand(){return"document/elements/settings"}},{key:"getId",value:function getId(){return"kit-update-stretch-container"}},{key:"getContainerType",value:function getContainerType(){return"document"}},{key:"getConditions",value:function getConditions(){return"kit"===elementor.documents.getCurrent().config.type}},{key:"apply",value:function apply(t){var o=t.settings;(0,l.default)(o).forEach((function(t){var o=(0,u.default)(t,2),i=o[0],r=o[1];"stretched_section_container"===i&&(elementorFrontend.config.kit[i]=r,elementor.channels.editor.trigger("kit:change:stretchContainer"))}))}}]),KitUpdateStretchContainer}($e.modules.hookUI.After);o.KitUpdateStretchContainer=h;var g=h;o.default=g},24974:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.KitRemovePreviewDeletedVariables=void 0;var l=a(i(35657)),u=a(i(83452));i(3777),i(38081),i(99745),i(64434);var c=a(i(11959)),d=a(i(39041)),m=a(i(38852)),p=a(i(77371)),h=a(i(68537)),g=a(i(18042)),v=function(t){(0,p.default)(KitRemovePreviewDeletedVariables,t);var o=(0,h.default)(KitRemovePreviewDeletedVariables);function KitRemovePreviewDeletedVariables(){var t;(0,c.default)(this,KitRemovePreviewDeletedVariables);for(var i=arguments.length,r=new Array(i),a=0;a<i;a++)r[a]=arguments[a];return t=o.call.apply(o,[this].concat(r)),(0,g.default)((0,m.default)(t),"controls",["custom_colors","custom_typography"]),t}return(0,d.default)(KitRemovePreviewDeletedVariables,[{key:"getCommand",value:function getCommand(){return"document/repeater/remove"}},{key:"getId",value:function getId(){return"kit-remove-preview-deleted-variables"}},{key:"getContainerType",value:function getContainerType(){return"document"}},{key:"getConditions",value:function getConditions(t){return this.controls.includes(t.name)&&"kit"===elementor.documents.getCurrent().config.type}},{key:"apply",value:function apply(t){var o=this;this.component=$e.components.get("panel/global"),this.component.tempStyle=this.component.tempStyle||{};var i=t.containers,r=void 0===i?[t.container]:i,a="elementor-style-page-".concat(elementor.config.kit_id);r.forEach((function(i){var r=i.repeaters[t.name].children[t.index];(0,l.default)(elementor.$previewContents[0].styleSheets).filter((function(t){return a!==t.ownerNode.id&&t.ownerNode.innerHTML.includes(r.id)})).forEach((function(t){o.component.tempStyle[r.id]=o.extractVariables(t.cssRules,r.id)}))}))}},{key:"extractVariables",value:function extractVariables(t,o){var i={};return(0,l.default)(t).forEach((function(t){if(t.style){i[t.selectorText]={};for(var r=0;r<t.style.length;r++){var a=t.style[r],l=t.style[a];l.includes(o)&&(i[t.selectorText][a]=l)}(0,u.default)(i[t.selectorText]).forEach((function(o){t.style[o]=""}))}})),i}}]),KitRemovePreviewDeletedVariables}($e.modules.hookUI.Before);o.KitRemovePreviewDeletedVariables=v},41616:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67394),l=i(67971);a(o,"__esModule",{value:!0}),o.default=o.KitAfterSave=void 0;var u=l(i(11959)),c=l(i(39041)),d=l(i(77371)),m=l(i(68537)),p=function(t){(0,d.default)(KitAfterSave,t);var o=(0,m.default)(KitAfterSave);function KitAfterSave(){return(0,u.default)(this,KitAfterSave),o.apply(this,arguments)}return(0,c.default)(KitAfterSave,[{key:"getCommand",value:function getCommand(){return"document/save/save"}},{key:"getConditions",value:function getConditions(t){var o=t.status,i=t.document,r=void 0===i?elementor.documents.getCurrent():i;return"publish"===o&&"kit"===r.config.type}},{key:"getId",value:function getId(){return"kit-footer-saver-after-save"}},{key:"apply",value:function apply(t){("publish"===t.status&&elementor.notifications.showToast({message:r("Your changes have been updated.","elementor"),buttons:[{name:"back_to_editor",text:r("Back to Editor","elementor"),callback:function callback(){$e.run("panel/global/close")}}]}),elementor.activeBreakpointsUpdated)&&elementorCommon.dialogsManager.createWidget("alert",{id:"elementor-save-kit-refersh-page",headerMessage:r("Reload Elementor Editor","elementor"),message:r("You have made modifications to the list of Active Breakpoints. For these changes to take effect, you need to reload Elementor Editor.","elementor"),position:{my:"center center",at:"center center"},strings:{confirm:r("Reload Now","elementor")},onConfirm:function onConfirm(){return location.reload()}}).show()}}]),KitAfterSave}(l(i(91706)).default);o.KitAfterSave=p;var h=p;o.default=h},43474:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.KitDeleteGlobalsCache=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(KitDeleteGlobalsCache,t);var o=(0,d.default)(KitDeleteGlobalsCache);function KitDeleteGlobalsCache(){return(0,l.default)(this,KitDeleteGlobalsCache),o.apply(this,arguments)}return(0,u.default)(KitDeleteGlobalsCache,[{key:"getCommand",value:function getCommand(){return"document/save/save"}},{key:"getConditions",value:function getConditions(t){var o=t.status,i=t.document,r=void 0===i?elementor.documents.getCurrent():i;return"publish"===o&&"kit"===r.config.type}},{key:"getId",value:function getId(){return"document/save/save::update-globals-cache"}},{key:"apply",value:function apply(){$e.components.get("globals").refreshGlobalData()}}]),KitDeleteGlobalsCache}(a(i(91706)).default);o.KitDeleteGlobalsCache=m;var p=m;o.default=p},62740:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.KitAddMenuItems=void 0;var l=a(i(83452)),u=a(i(38923)),c=a(i(47834)),d=a(i(11959)),m=a(i(39041)),p=a(i(77371)),h=a(i(68537)),g=function(t){(0,p.default)(KitAddMenuItems,t);var o=(0,h.default)(KitAddMenuItems);function KitAddMenuItems(){return(0,d.default)(this,KitAddMenuItems),o.apply(this,arguments)}return(0,m.default)(KitAddMenuItems,[{key:"getCommand",value:function getCommand(){return"editor/documents/attach-preview"}},{key:"getId",value:function getId(){return"kit-add-menu-item"}},{key:"getConditions",value:function getConditions(){return"kit"===elementor.documents.getCurrent().config.type&&!(0,l.default)($e.components.get("panel/global").getTabs()).length}},{key:"apply",value:function apply(){var t=elementor.documents.getCurrent();(0,u.default)(t.config.tabs).forEach((function(t){var o=(0,c.default)(t,2),i=o[0],r=o[1];$e.components.get("panel/global").addTab(i,r)}))}}]),KitAddMenuItems}($e.modules.hookUI.Before);o.KitAddMenuItems=g;var v=g;o.default=v},97949:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.KitRemoveEditorActiveCSSDocumentsOpen=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(KitRemoveEditorActiveCSSDocumentsOpen,t);var o=(0,d.default)(KitRemoveEditorActiveCSSDocumentsOpen);function KitRemoveEditorActiveCSSDocumentsOpen(){return(0,l.default)(this,KitRemoveEditorActiveCSSDocumentsOpen),o.apply(this,arguments)}return(0,u.default)(KitRemoveEditorActiveCSSDocumentsOpen,[{key:"getCommand",value:function getCommand(){return"editor/documents/open"}},{key:"getId",value:function getId(){return"kit-remove-editor-active-css--editor/documents/open"}},{key:"getConditions",value:function getConditions(){return"kit"===elementor.documents.getCurrent().config.type}},{key:"apply",value:function apply(){setTimeout((function(){elementorFrontend.elements.$body.removeClass("elementor-editor-active")}))}}]),KitRemoveEditorActiveCSSDocumentsOpen}($e.modules.hookUI.After);o.KitRemoveEditorActiveCSSDocumentsOpen=m;var p=m;o.default=p},6451:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(BaseOpenClose,t);var o=(0,d.default)(BaseOpenClose);function BaseOpenClose(){return(0,l.default)(this,BaseOpenClose),o.apply(this,arguments)}return(0,u.default)(BaseOpenClose,[{key:"initialize",value:function initialize(){var t=this;elementor.on("preview:loaded",(function(){t.component=$e.components.get("panel/global")}))}}]),BaseOpenClose}($e.modules.hookUI.After);o.default=m},80633:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.KitBackToRouteHistory=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(KitBackToRouteHistory,t);var o=(0,d.default)(KitBackToRouteHistory);function KitBackToRouteHistory(){return(0,l.default)(this,KitBackToRouteHistory),o.apply(this,arguments)}return(0,u.default)(KitBackToRouteHistory,[{key:"getCommand",value:function getCommand(){return"panel/global/close"}},{key:"getId",value:function getId(){return"back-to-route-history-/panel/global/close"}},{key:"getConditions",value:function getConditions(){return this.component.routeHistory}},{key:"apply",value:function apply(){var t=this.component.routeHistory;delete this.component.routeHistory,t.container&&$e.data.get("globals/index").then((function(){t.container=t.container.lookup(),t.container.model.trigger("request:edit",{scrollIntoView:!0}),$e.route(t.route,{model:t.container.model,view:t.container.view})}))}}]),KitBackToRouteHistory}(a(i(6451)).default);o.KitBackToRouteHistory=m;var p=m;o.default=p},12514:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.KitSaveRouteHistory=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(KitSaveRouteHistory,t);var o=(0,d.default)(KitSaveRouteHistory);function KitSaveRouteHistory(){return(0,l.default)(this,KitSaveRouteHistory),o.apply(this,arguments)}return(0,u.default)(KitSaveRouteHistory,[{key:"getCommand",value:function getCommand(){return"panel/global/open"}},{key:"getId",value:function getId(){return"save-route-history--/panel/global/open"}},{key:"getConditions",value:function getConditions(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return t.route}},{key:"apply",value:function apply(t){this.component.routeHistory=t}}]),KitSaveRouteHistory}(a(i(6451)).default);o.KitSaveRouteHistory=m;var p=m;o.default=p},4348:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.KitRemoveEditorActiveCSSPanelOpen=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(KitRemoveEditorActiveCSSPanelOpen,t);var o=(0,d.default)(KitRemoveEditorActiveCSSPanelOpen);function KitRemoveEditorActiveCSSPanelOpen(){return(0,l.default)(this,KitRemoveEditorActiveCSSPanelOpen),o.apply(this,arguments)}return(0,u.default)(KitRemoveEditorActiveCSSPanelOpen,[{key:"getCommand",value:function getCommand(){return"panel/open"}},{key:"getId",value:function getId(){return"kit-remove-editor-active-css--/panel/open"}},{key:"getConditions",value:function getConditions(){return"kit"===elementor.documents.getCurrent().config.type}},{key:"apply",value:function apply(){setTimeout((function(){elementorFrontend.elements.$body.removeClass("elementor-editor-active")}))}}]),KitRemoveEditorActiveCSSPanelOpen}($e.modules.hookUI.After);o.KitRemoveEditorActiveCSSPanelOpen=m;var p=m;o.default=p},45767:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67394),l=i(67971);a(o,"__esModule",{value:!0}),o.default=void 0,i(99745);var u=l(i(35657)),c=l(i(84899)),d=l(i(11959)),m=l(i(39041)),p=l(i(38852)),h=l(i(76700)),g=l(i(44263)),v=l(i(77371)),y=l(i(68537)),C=l(i(18042)),b=l(i(92553)),w=l(i(39732)),k=l(i(72322)),S=l(i(52998)),x=l(i(93172)),T=l(i(99292)),M=function(t){(0,v.default)(Manager,t);var o=(0,y.default)(Manager);function Manager(){var t;(0,d.default)(this,Manager);for(var i=arguments.length,r=new Array(i),a=0;a<i;a++)r[a]=arguments[a];return t=o.call.apply(o,[this].concat(r)),(0,C.default)((0,p.default)(t),"loadingTriggers",{preview:!1,globals:!1}),(0,C.default)((0,p.default)(t),"variablesCSS",null),t}return(0,m.default)(Manager,[{key:"initialize",value:function initialize(){var t=this;elementor.on("preview:loaded",(function(){t.loadingTriggers.preview=!0,t.renderGlobalsDefaultCSS()})),elementor.on("document:loaded",(function(){t.renderGlobalVariables()})),elementor.once("globals:loaded",(function(){t.loadingTriggers.globals=!0,t.renderGlobalsDefaultCSS()})),elementor.hooks.addFilter("controls/base/behaviors",this.addGlobalsBehavior),elementor.config.user.can_edit_kit&&$e.components.register(new b.default({manager:this}))}},{key:"addPanelPages",value:function addPanelPages(){elementor.getPanelView().addPage("kit_settings",{view:w.default,title:r("Site Settings","elementor")}),elementor.getPanelView().addPage("kit_menu",{view:k.default,title:r("Site Settings","elementor")})}},{key:"addPanelMenuItem",value:function addPanelMenuItem(){var t=elementor.modules.layouts.panel.pages.menu.Menu;t.addItem({name:"global-settings",icon:"eicon-global-settings",title:r("Site Settings","elementor"),type:"page",callback:function callback(){$e.run("panel/global/open",{route:$e.routes.getHistory("panel").reverse()[0].route})}},"style","editor-preferences"),t.addItem({name:"site-editor",icon:"eicon-theme-builder",title:r("Theme Builder","elementor"),type:"page",callback:function callback(){return $e.run("app/open")}},"style","editor-preferences")}},{key:"addHeaderBehavior",value:function addHeaderBehavior(t){return t.kit={behaviorClass:S.default},t}},{key:"addGlobalsBehavior",value:function addGlobalsBehavior(t,o){if(o.isGlobalActive){var i=o.isGlobalActive();return"color"===o.options.model.get("type")&&i&&(t.globals={behaviorClass:x.default,popoverTitle:r("Global Colors","elementor"),manageButtonText:r("Manage Global Colors","elementor"),tooltipText:r("Global Colors help you work smarter. Save a color, and use it anywhere throughout your site. Access and edit your global colors by clicking the Manage button.","elementor"),newGlobalConfirmTitle:r("Create New Global Color","elementor")}),"popover_toggle"===o.options.model.get("type")&&"typography"===o.options.model.get("groupType")&&i&&(t.globals={behaviorClass:x.default,popoverTitle:r("Global Fonts","elementor"),manageButtonText:r("Manage Global Fonts","elementor"),tooltipText:r("Global Fonts help you work smarter. Save a Typography, and use it anywhere throughout your site. Access and edit your Global Fonts by clicking the Manage button.","elementor"),newGlobalConfirmTitle:r("Create New Global Font","elementor")}),t}}},{key:"renderGlobalVariables",value:function renderGlobalVariables(){var t=this;this.variablesCSS||(this.variablesCSS=new T.default({id:"e-kit-variables",settingsModel:new elementorModules.editor.elements.models.BaseSettings({},{})})),"kit"!==elementor.documents.getCurrent().config.type?$e.data.get("globals/index").then((function(o){var i=o.data;i.colors&&(0,u.default)(i.colors).forEach((function(o){var i=elementor.config.kit_config.design_system_controls.colors,r={_id:o.id,color:o.value};t.variablesCSS.addStyleRules(i,r,i,["{{WRAPPER}}"],["body"])})),i.typography&&(0,u.default)(i.typography).forEach((function(o){var i=elementor.config.kit_config.design_system_controls.typography,r=(0,c.default)({_id:o.id},o.value);o.value.typography_font_family&&elementor.helpers.enqueueFont(o.value.typography_font_family),t.variablesCSS.addStyleRules(i,r,i,["{{WRAPPER}}"],["body"])})),t.variablesCSS.addStyleToDocument()})):this.variablesCSS.removeStyleFromDocument()}},{key:"renderGlobalsDefaultCSS",value:function renderGlobalsDefaultCSS(){if(this.loadingTriggers.preview&&this.loadingTriggers.globals){var t=new T.default({id:"e-global-style"}),o=elementor.config.globals.defaults_enabled.colors,i=elementor.config.globals.defaults_enabled.typography;(o||i)&&((0,u.default)(elementor.widgetsCache).forEach((function(r){if(r.controls){var a=[],l={};(0,u.default)(r.controls).forEach((function(t){var u,c,d="color"===t.type,m="typography"===t.groupType;if(!(d&&!o||m&&!i)){var p=t;t.groupType&&(p=r.controls[t.groupPrefix+t.groupType]),null!==(u=t.global)&&void 0!==u&&u.default&&(l[t.name]=p.global.default),null!==(c=p.global)&&void 0!==c&&c.default&&a.push(t)}})),a.forEach((function(o){t.addControlStyleRules(o,r.controls,r.controls,["{{WRAPPER}}"],[".elementor-widget-"+r.widget_type],l)}))}})),t.addStyleToDocument())}}},{key:"onInit",value:function onInit(){var t=this;(0,h.default)((0,g.default)(Manager.prototype),"onInit",this).call(this),elementorCommon.elements.$window.on("elementor:loaded",(function(){elementor.config.initial_document.panel.support_kit&&t.initialize()}))}}]),Manager}(elementorModules.editor.utils.Module);o.default=M},65085:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(_default,t);var o=(0,d.default)(_default);function _default(){return(0,l.default)(this,_default),o.apply(this,arguments)}return(0,u.default)(_default,[{key:"id",value:function id(){return"elementor-kit-panel-content"}},{key:"getTemplate",value:function getTemplate(){return"#tmpl-elementor-kit-panel-content"}},{key:"childViewContainer",value:function childViewContainer(){return"#elementor-kit-panel-content-controls"}},{key:"childViewOptions",value:function childViewOptions(){var t=this.getOption("container");return{elementSettingsModel:t.settings,container:t}}}]),_default}(elementorModules.editor.views.ControlsStack);o.default=m},52998:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67394),l=i(67971);a(o,"__esModule",{value:!0}),o.default=void 0;var u=l(i(11959)),c=l(i(39041)),d=l(i(77371)),m=l(i(68537)),p=i(24743),h=function(t){(0,d.default)(_default,t);var o=(0,m.default)(_default);function _default(){return(0,u.default)(this,_default),o.apply(this,arguments)}return(0,c.default)(_default,[{key:"ui",value:function ui(){return{buttonClose:"#elementor-panel-header-kit-close",buttonBack:"#elementor-panel-header-kit-back"}}},{key:"events",value:function events(){return{"click @ui.buttonClose":"onClickClose","click @ui.buttonBack":"onClickBack"}}},{key:"onBeforeShow",value:function onBeforeShow(){this.$el.prepend(elementor.compileTemplate(p.buttonBack,{Back:r("Back","elementor")})),this.$el.append(elementor.compileTemplate(p.buttonClose,{Close:r("Close","elementor")}))}},{key:"onClickClose",value:function onClickClose(){$e.run("panel/global/close")}},{key:"onClickBack",value:function onClickBack(){$e.run("panel/global/back")}}]),_default}(Marionette.Behavior);o.default=h},24743:(t,o,i)=>{"use strict";i(67394)(o,"__esModule",{value:!0}),o.buttonClose=o.buttonBack=void 0;var r="eicon-chevron-"+(elementorCommon.config.isRTL?"right":"left"),a='\n<div id="elementor-panel-header-kit-back" class="elementor-header-button">\n\t<i class="elementor-icon '.concat(r,' tooltip-target" aria-hidden="true" data-tooltip="{{ Back }}"></i>\n\t<span class="elementor-screen-only">{{ Back }}</span>\n</div>\n');o.buttonBack=a;o.buttonClose='\n<div id="elementor-panel-header-kit-close" class="elementor-header-button">\n\t<i class="elementor-icon eicon-close tooltip-target" aria-hidden="true" data-tooltip="{{ Close }}"></i>\n\t<span class="elementor-screen-only">{{ Close }}</span>\n</div>\n'},72322:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67394),l=i(67971);a(o,"__esModule",{value:!0}),o.default=void 0;var u=l(i(38923));i(64434),i(90286);var c=l(i(47834)),d=l(i(11959)),m=l(i(39041)),p=l(i(77371)),h=l(i(68537)),g=function(t){(0,p.default)(PanelMenu,t);var o=(0,h.default)(PanelMenu);function PanelMenu(){return(0,d.default)(this,PanelMenu),o.apply(this,arguments)}return(0,m.default)(PanelMenu,[{key:"initialize",value:function initialize(){this.collection=PanelMenu.getGroups()}}]),PanelMenu}(l(i(86723)).default);o.default=g,g.groups=null,g.createGroupItems=function(t){var o=$e.components.get("panel/global").getTabs();return(0,u.default)(o).filter((function(o){var i=(0,c.default)(o,2),r=(i[0],i[1]);return t===r.group})).map((function(t){var o=(0,c.default)(t,2),i=o[0],r=o[1];return{name:i,icon:r.icon,title:r.title,callback:function callback(){return $e.route("panel/global/"+i)}}}))},g.initGroups=function(){var t=g.createGroupItems("settings"),o={name:"settings-additional-settings",icon:"eicon-tools",title:r("Additional Settings","elementor"),type:"link",link:elementor.config.admin_settings_url,newTab:!0};t.push(o),g.groups=new Backbone.Collection([{name:"design_system",title:r("Design System","elementor"),items:g.createGroupItems("global")},{name:"theme_style",title:r("Theme Style","elementor"),items:g.createGroupItems("theme-style")},{name:"settings",title:r("Settings","elementor"),items:t}])},g.getGroups=function(){return g.groups||g.initGroups(),g.groups}},39732:(t,o,i)=>{"use strict";var r=i(67971)(i(65085));t.exports=Marionette.LayoutView.extend({id:"elementor-kit-panel",template:"#tmpl-elementor-kit-panel",regions:{content:"#elementor-kit__panel-content__wrapper"},onBeforeShow:function onBeforeShow(){var t=elementor.documents.getCurrent().container,o={container:t,model:t.model,controls:t.settings.controls,name:"kit"};this.showChildView("content",new r.default(o))}})},51047:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(18194).sprintf,l=i(67394),u=i(67971);l(o,"__esModule",{value:!0}),o.default=void 0,i(71954);var c=u(i(11959)),d=u(i(39041)),m=u(i(77371)),p=u(i(68537)),h=function(t){(0,m.default)(_default,t);var o=(0,p.default)(_default);function _default(){return(0,c.default)(this,_default),o.apply(this,arguments)}return(0,d.default)(_default,[{key:"getTemplate",value:function getTemplate(){return"#tmpl-elementor-global-style-repeater-row"}},{key:"events",value:function events(){return{"click @ui.removeButton":"onRemoveButtonClick"}}},{key:"updateColorValue",value:function updateColorValue(){this.$colorValue.text(this.model.get("color"))}},{key:"getDisabledRemoveButtons",value:function getDisabledRemoveButtons(){return this.ui.disabledRemoveButtons||(this.ui.disabledRemoveButtons=this.$el.find(".elementor-repeater-tool-remove--disabled")),this.ui.disabledRemoveButtons}},{key:"getRemoveButton",value:function getRemoveButton(){return this.ui.removeButton.add(this.getDisabledRemoveButtons())}},{key:"triggers",value:function triggers(){return{}}},{key:"onChildviewRender",value:function onChildviewRender(t){var o="color"===t.model.get("type"),i="popover_toggle"===t.model.get("type"),l="",u="";if(o&&(this.$colorValue=jQuery("<div>",{class:"e-global-colors__color-value elementor-control-unit-3"}),t.$el.find(".elementor-control-input-wrapper").prepend(this.getRemoveButton(),this.$colorValue),l="color",u=r("Color","elementor"),this.updateColorValue()),i&&(t.$el.find(".elementor-control-input-wrapper").append(this.getRemoveButton()),l="font",u=r("Font","elementor")),o||i){var c=this.getDisabledRemoveButtons();this.ui.removeButton.data("e-global-type",l),this.ui.removeButton.tipsy({title:function title(){return a(r("Delete Global %s","elementor"),u)},gravity:function gravity(){return"s"}}),c.tipsy({title:function title(){return a(r("System %s can't be deleted","elementor"),u)},gravity:function gravity(){return"s"}})}}},{key:"onModelChange",value:function onModelChange(t){void 0!==t.changed.color&&this.updateColorValue()}},{key:"onRemoveButtonClick",value:function onRemoveButtonClick(){var t=this,o=this.ui.removeButton.data("e-global-type"),i=r("font"===o?"Font":"Color","elementor"),l=r("font"===o?"font":"color","elementor"),u=a(r("You're about to delete a Global %s. Note that if it's being used anywhere on your site, it will inherit a default %s.","elementor"),i,l);this.confirmDeleteModal=elementorCommon.dialogsManager.createWidget("confirm",{className:"e-global__confirm-delete",headerMessage:a(r("Delete Global %s","elementor"),i),message:'<i class="eicon-info-circle"></i> '+u,strings:{confirm:r("Delete","elementor"),cancel:r("Cancel","elementor")},hide:{onBackgroundClick:!1},onConfirm:function onConfirm(){t.trigger("click:remove")}}),this.confirmDeleteModal.show()}}]),_default}(u(i(98550)).default);o.default=h},21893:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67394),l=i(67971);a(o,"__esModule",{value:!0}),o.default=void 0;var u=l(i(11959)),c=l(i(39041)),d=l(i(76700)),m=l(i(44263)),p=l(i(77371)),h=l(i(68537)),g=l(i(1142)),v=l(i(51047)),y=function(t){(0,p.default)(_default,t);var o=(0,h.default)(_default);function _default(){var t;(0,u.default)(this,_default);for(var i=arguments.length,r=new Array(i),a=0;a<i;a++)r[a]=arguments[a];return(t=o.call.apply(o,[this].concat(r))).childView=v.default,t}return(0,c.default)(_default,[{key:"templateHelpers",value:function templateHelpers(){var templateHelpers=(0,d.default)((0,m.default)(_default.prototype),"templateHelpers",this).call(this);return templateHelpers.addButtonText="custom_colors"===this.model.get("name")?r("Add Color","elementor"):r("Add Style","elementor"),templateHelpers}},{key:"getDefaults",value:function getDefaults(){var t=(0,d.default)((0,m.default)(_default.prototype),"getDefaults",this).call(this);return t.title="".concat(r("New Item","elementor")," #").concat(this.children.length+1),t}}]),_default}(g.default);o.default=y},7537:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var l=a(i(38923)),u=a(i(74846)),c=a(i(47834)),d=a(i(11959)),m=a(i(39041)),p=a(i(77371)),h=a(i(68537)),g=function(t){(0,p.default)(_default,t);var o=(0,h.default)(_default);function _default(){return(0,d.default)(this,_default),o.apply(this,arguments)}return(0,m.default)(_default,[{key:"onElementorLoaded",value:function onElementorLoaded(){this.notifyDeprecated()}},{key:"notifyDeprecated",value:function notifyDeprecated(){var t=elementor.config.dev_tools.deprecation.soft_notices;(0,l.default)(t).forEach((function(t){var o,i=(0,c.default)(t,2),r=i[0],a=i[1];(o=elementorCommon.helpers).softDeprecated.apply(o,[r].concat((0,u.default)(a)))}))}}]),_default}(elementorModules.editor.utils.Module);o.default=g},29089:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67394),l=i(67971);a(o,"__esModule",{value:!0}),o.Apply=void 0;var u=l(i(18042)),c=l(i(11959)),d=l(i(39041)),m=l(i(77371)),p=l(i(68537)),h=function(t){(0,m.default)(Apply,t);var o=(0,p.default)(Apply);function Apply(){return(0,c.default)(this,Apply),o.apply(this,arguments)}return(0,d.default)(Apply,[{key:"validateArgs",value:function validateArgs(t){this.requireArgumentType("value","string")}},{key:"apply",value:function apply(t){var o=t.value,i=t.trigger;if(this.setColor(o),i){var a=i.swatch.dataset.text;i.swatch.dataset.text=r("Selected!","elementor"),setTimeout((function(){i.swatch.dataset.text=a}),1e3),i.palette.addEventListener("mouseleave",(function handler(t){t.currentTarget.removeEventListener("mouseleave",handler),$e.run("elements-color-picker/end")}))}else $e.run("elements-color-picker/end")}},{key:"setColor",value:function setColor(t){$e.run("document/elements/settings",{container:this.component.currentPicker.container,settings:(0,u.default)({},this.component.currentPicker.control,t),options:{external:!0}}),this.component.currentPicker.initialColor=t}}]),Apply}(l(i(68689)).default);o.Apply=h},98745:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.End=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=a(i(68689)),p=i(1919),h=function(t){(0,c.default)(End,t);var o=(0,d.default)(End);function End(){return(0,l.default)(this,End),o.apply(this,arguments)}return(0,u.default)(End,[{key:"apply",value:function apply(){var t;this.component.inactivate(),elementor.$previewContents[0].querySelector("body").classList.remove("elementor-editor__ui-state__color-picker"),elementor.$previewContents[0].querySelectorAll(".e-element-color-picker").forEach((function(t){jQuery(t).tipsy("hide"),t.remove()}));var o=elementor.$previewContents[0].querySelectorAll(".elementor-element");(0,p.removeNamespaceHandler)(o,"click.color-picker"),(0,p.removeNamespaceHandler)(elementor.$previewWrapper[0],"mouseleave.color-picker"),null===(t=this.component.currentPicker.trigger)||void 0===t||t.classList.remove("e-control-tool-disabled"),this.component.resetPicker(),elementor.changeEditMode("edit")}}]),End}(m.default);o.End=h},36814:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.EnterPreview=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(EnterPreview,t);var o=(0,d.default)(EnterPreview);function EnterPreview(){return(0,l.default)(this,EnterPreview),o.apply(this,arguments)}return(0,u.default)(EnterPreview,[{key:"apply",value:function apply(t){this.component.renderUI(t.value)}}]),EnterPreview}(a(i(68689)).default);o.EnterPreview=m},15937:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.ExitPreview=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(ExitPreview,t);var o=(0,d.default)(ExitPreview);function ExitPreview(){return(0,l.default)(this,ExitPreview),o.apply(this,arguments)}return(0,u.default)(ExitPreview,[{key:"apply",value:function apply(t){var o=this.component.currentPicker.initialColor;null!==o&&this.component.renderUI(o)}}]),ExitPreview}(a(i(68689)).default);o.ExitPreview=m},14406:(t,o,i)=>{"use strict";var r=i(67394);r(o,"__esModule",{value:!0}),r(o,"Apply",{enumerable:!0,get:function get(){return a.Apply}}),r(o,"End",{enumerable:!0,get:function get(){return l.End}}),r(o,"EnterPreview",{enumerable:!0,get:function get(){return u.EnterPreview}}),r(o,"ExitPreview",{enumerable:!0,get:function get(){return c.ExitPreview}}),r(o,"ShowSwatches",{enumerable:!0,get:function get(){return d.ShowSwatches}}),r(o,"Start",{enumerable:!0,get:function get(){return m.Start}});var a=i(29089),l=i(98745),u=i(36814),c=i(15937),d=i(46327),m=i(75493)},46327:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67394),l=i(67971);a(o,"__esModule",{value:!0}),o.ShowSwatches=void 0;var u=l(i(83452)),c=l(i(35657)),d=l(i(38923)),m=l(i(14176));i(90286),i(3777),i(38081),i(64828),i(84208);var p=l(i(47834)),h=l(i(11959)),g=l(i(39041)),v=l(i(77371)),y=l(i(68537)),C=l(i(68689)),b=i(47224),w=function(t){(0,v.default)(ShowSwatches,t);var o=(0,y.default)(ShowSwatches);function ShowSwatches(t){var i;return(0,h.default)(this,ShowSwatches),(i=o.call(this,t)).colors={},i.classes={picker:"e-element-color-picker",tooltip:"e-element-color-picker__tooltip",swatch:"e-element-color-picker__swatch",hidden:"e-picker-hidden"},i.selectors={picker:".".concat(i.classes.picker),tooltip:".".concat(i.classes.tooltip)},i.container=null,i.backgroundImages=[],i}return(0,g.default)(ShowSwatches,[{key:"validateArgs",value:function validateArgs(t){this.requireArgument("event",t)}},{key:"apply",value:function apply(t){var o=this,i=t.event,r=i.currentTarget.dataset.id,a=i.currentTarget.getBoundingClientRect(),l=Math.round(i.clientX-a.left)+"px",u=Math.round(i.clientY-a.top)+"px";this.container=elementor.getContainer(r);var c=elementor.$previewContents[0].querySelector(this.selectors.picker);c&&(this.removeTooltip(c),c.remove()),i.stopPropagation(),setTimeout((function(){"img"===i.target.tagName.toLowerCase()?o.extractColorsFromImage(i.target):(o.extractColorsFromSettings(),o.extractColorsFromRepeaters(),o.extractColorsFromImages()),o.initSwatch(l,u)}),100)}},{key:"extractColorsFromSettings",value:function extractColorsFromSettings(){var t=this,o=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.container;(0,u.default)(o.settings.attributes).map((function(i){var r;if(!t.reachedColorsLimit()&&i in o.controls){var a="color"===(null===(r=o.controls[i])||void 0===r?void 0:r.type),l=i.includes("background_image");if((a||l)&&function isActive(){return elementor.helpers.isActiveControl(o.controls[i],o.settings.attributes)}())if(l)t.addTempBackgroundImage(o.getSetting(i));else{var u=o.getSetting(i),d=o.globals.get(i);if(d){var m=d.match(/id=(.+)/i);if(m){var p="--e-global-color-".concat(m[1]);u=getComputedStyle(o.view.$el[0]).getPropertyValue(p)}}u&&!(0,c.default)(t.colors).includes(u)&&(t.colors["".concat(o.id," - ").concat(i)]=u)}}}))}},{key:"extractColorsFromRepeaters",value:function extractColorsFromRepeaters(){var t=this;(0,c.default)(this.container.repeaters).forEach((function(o){o.children.forEach((function(o){t.extractColorsFromSettings(o)}))}))}},{key:"addTempBackgroundImage",value:function addTempBackgroundImage(t){var o=t.url;if(o){var i=document.createElement("img");i.src=o,this.backgroundImages.push(i)}}},{key:"extractColorsFromImage",value:function extractColorsFromImage(t){var o,i=this,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",a=new ColorThief;try{o=a.getPalette(t)}catch(t){return}o.forEach((function(t,o){var a=(0,b.rgbToHex)(t[0],t[1],t[2]);i.reachedColorsLimit()||(0,c.default)(i.colors).includes(a)||(i.colors["palette-".concat(r,"-").concat(o)]=a)}))}},{key:"extractColorsFromImages",value:function extractColorsFromImages(){var t=this;this.backgroundImages.forEach((function(o,i){t.extractColorsFromImage(o,i)})),this.backgroundImages=[]}},{key:"addColorSwatches",value:function addColorSwatches(t){var o=this;(0,d.default)(this.colors).map((function(i){var r=(0,p.default)(i,2),a=(r[0],r[1]),l=document.createElement("div");l.classList.add(o.classes.swatch),l.style="--color: ".concat(a),l.dataset.text=a.replace("#",""),l.addEventListener("mouseenter",(function(){$e.run("elements-color-picker/enter-preview",{value:a})})),l.addEventListener("mouseleave",(function(){$e.run("elements-color-picker/exit-preview")})),l.addEventListener("click",(function(o){$e.run("elements-color-picker/apply",{value:a,trigger:{palette:t,swatch:o.target}}),o.stopPropagation()})),t.append(l)}))}},{key:"addTooltip",value:function addTooltip(t){jQuery(t).tipsy({gravity:"s",className:this.classes.tooltip,trigger:"manual",title:function title(){return r("Select a color from any image, or from an element whose color you've manually defined.","elementor")}}).tipsy("show");var o=document.querySelector(this.selectors.tooltip);elementor.$previewWrapper[0].appendChild(o),o.style.pointerEvents="none"}},{key:"removeTooltip",value:function removeTooltip(t){jQuery(t).tipsy("hide")}},{key:"initSwatch",value:function initSwatch(){var t=this,o=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,r=(0,d.default)(this.colors).length,a=document.createElement("div");a.dataset.count=r,a.classList.add(this.classes.picker,this.classes.hidden),a.style="\n\t\t\t--count: ".concat(r,";\n\t\t\t--left: ").concat(o,";\n\t\t\t--top: ").concat(i,";\n\t\t"),this.container.view.$el[0].append(a);var l=elementorModules.utils.Scroll.scrollObserver({callback:function callback(o){l.unobserve(a),o.isInViewport||(a.style.setProperty("--left","unset"),a.style.setProperty("--right","0")),a.classList.remove(t.classes.hidden)},root:this.container.view.$el[0],offset:"0px -".concat((0,m.default)(a.getBoundingClientRect().width),"px 0px")});l.observe(a),0===r?this.addTooltip(a):this.addColorSwatches(a),this.container.view.$el[0].addEventListener("mouseleave",(function(){t.removeTooltip(a),setTimeout((function(){a.remove()}),300)}),{once:!0})}},{key:"reachedColorsLimit",value:function reachedColorsLimit(){return 5<=(0,u.default)(this.colors).length}}]),ShowSwatches}(C.default);o.ShowSwatches=w},75493:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.Start=void 0;var l=a(i(84899)),u=a(i(11959)),c=a(i(39041)),d=a(i(77371)),m=a(i(68537)),p=a(i(68689)),h=i(1919),g=function(t){(0,d.default)(Start,t);var o=(0,m.default)(Start);function Start(){return(0,u.default)(this,Start),o.apply(this,arguments)}return(0,c.default)(Start,[{key:"apply",value:function apply(t){this.component.activate(),elementor.changeEditMode("picker"),elementor.$previewContents[0].querySelector("body").classList.add("elementor-editor__ui-state__color-picker","elementor-edit-area-active"),this.component.currentPicker=(0,l.default)((0,l.default)({},t),{},{initialColor:t.container.getSetting(t.control)}),this.component.currentPicker.trigger.classList.add("e-control-tool-disabled");var o=elementor.$previewContents[0].querySelectorAll(".elementor-element");(0,h.addNamespaceHandler)(o,"click.color-picker",(function(t){t.preventDefault(),$e.run("elements-color-picker/show-swatches",{event:t})})),(0,h.addNamespaceHandler)(elementor.$previewWrapper[0],"mouseleave.color-picker",(function(){$e.run("elements-color-picker/end")}))}}]),Start}(p.default);o.Start=g},29673:(t,o,i)=>{"use strict";var r=i(67394),a=i(52369),l=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var u=l(i(11959)),c=l(i(39041)),d=l(i(38852)),m=l(i(77371)),p=l(i(68537)),h=l(i(18042)),g=l(i(15591)),v=a(i(14406)),y=function(t){(0,m.default)(Component,t);var o=(0,p.default)(Component);function Component(){var t;(0,u.default)(this,Component);for(var i=arguments.length,r=new Array(i),a=0;a<i;a++)r[a]=arguments[a];return t=o.call.apply(o,[this].concat(r)),(0,h.default)((0,d.default)(t),"currentPicker",t.getDefaultPicker()),t}return(0,c.default)(Component,[{key:"getDefaultPicker",value:function getDefaultPicker(){return{kit:null,container:null,control:null,trigger:null,initialColor:null}}},{key:"resetPicker",value:function resetPicker(){this.currentPicker=this.getDefaultPicker()}},{key:"renderUI",value:function renderUI(t){var o=this.currentPicker,i=o.container,r=o.control,a=o.kit;i.settings.set(r,t);var l=i.view;if(null!=l&&l.renderUI&&l.renderUI(),a){var u=a.config.id,c="--e-global-color-".concat(i.id);elementor.$previewContents[0].querySelector(".elementor-kit-".concat(u)).style.setProperty(c,t)}}},{key:"getNamespace",value:function getNamespace(){return"elements-color-picker"}},{key:"defaultCommands",value:function defaultCommands(){return this.importCommands(v)}},{key:"defaultShortcuts",value:function defaultShortcuts(){return{end:{keys:"esc",scopes:[this.getNamespace()]}}}}]),Component}(g.default);o.default=y},52101:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(76700)),d=a(i(44263)),m=a(i(77371)),p=a(i(68537)),h=a(i(29673)),g=function(t){(0,m.default)(ElementsColorPicker,t);var o=(0,p.default)(ElementsColorPicker);function ElementsColorPicker(){return(0,l.default)(this,ElementsColorPicker),o.apply(this,arguments)}return(0,u.default)(ElementsColorPicker,[{key:"onInit",value:function onInit(){(0,c.default)((0,d.default)(ElementsColorPicker.prototype),"onInit",this).call(this),$e.components.register(new h.default)}}]),ElementsColorPicker}(elementorModules.ViewModule);o.default=g},1919:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.removeNamespaceHandler=o.addNamespaceHandler=void 0;var l=a(i(61888));i(99236);var u=a(i(47834));o.addNamespaceHandler=function addNamespaceHandler(t,o,i){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},a=o.split("."),c=(0,u.default)(a,1),d=c[0];(0,l.default)(Object(t))||(t=[t]),t.forEach((function(t){t.nsEvents||(t.nsEvents={}),t.addEventListener(d,i,r),t.nsEvents[o]=i}))};o.removeNamespaceHandler=function removeNamespaceHandler(t,o){var i=o.split("."),r=(0,u.default)(i,1)[0];(0,l.default)(Object(t))||(t=[t]),t.forEach((function(t){var i,a;t.removeEventListener(r,null===(i=t.nsEvents)||void 0===i?void 0:i[o]),null===(a=t.nsEvents)||void 0===a||delete a[o]}))}},28868:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67394),l=i(67971);a(o,"__esModule",{value:!0}),o.default=void 0;var u=l(i(11959)),c=l(i(39041)),d=l(i(77371)),m=l(i(68537)),p=function(t){(0,d.default)(Component,t);var o=(0,m.default)(Component);function Component(){return(0,u.default)(this,Component),o.apply(this,arguments)}return(0,c.default)(Component,[{key:"getNamespace",value:function getNamespace(){return"panel/history"}},{key:"defaultTabs",value:function defaultTabs(){return{actions:{title:r("Actions","elementor")},revisions:{title:r("Revisions","elementor")}}}},{key:"defaultShortcuts",value:function defaultShortcuts(){return{actions:{keys:"ctrl+shift+h"}}}},{key:"renderTab",value:function renderTab(t){elementor.getPanelView().setPage("historyPage").showView(t)}},{key:"activate",value:function activate(){$e.components.activate(this.getTabRoute(this.currentTab))}},{key:"getTabsWrapperSelector",value:function getTabsWrapperSelector(){return"#elementor-panel-elements-navigation"}}]),Component}(l(i(15591)).default);o.default=p},84755:(t,o,i)=>{"use strict";var r=i(67394),a=i(52369),l=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var u=l(i(11959)),c=l(i(39041)),d=l(i(77371)),m=l(i(68537)),p=l(i(15591)),h=a(i(58410)),g=function(t){(0,d.default)(Component,t);var o=(0,m.default)(Component);function Component(){return(0,u.default)(this,Component),o.apply(this,arguments)}return(0,c.default)(Component,[{key:"getNamespace",value:function getNamespace(){return"panel/history/actions"}},{key:"defaultCommands",value:function defaultCommands(){return this.importCommands(h)}},{key:"defaultShortcuts",value:function defaultShortcuts(){return{undo:{keys:"ctrl+z",exclude:["input"],scopes:["panel","navigator"]},redo:{keys:"ctrl+shift+z, ctrl+y",exclude:["input"],scopes:["panel","navigator"]}}}}]),Component}(p.default);o.default=g},16310:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(_default,t);var o=(0,d.default)(_default);function _default(){return(0,l.default)(this,_default),o.apply(this,arguments)}return(0,u.default)(_default,[{key:"getTemplate",value:function getTemplate(){return"#tmpl-elementor-panel-history-no-items"}},{key:"id",value:function id(){return"elementor-panel-history-no-items"}},{key:"onDestroy",value:function onDestroy(){this._parent.$el.removeClass("elementor-empty")}}]),_default}(Marionette.ItemView);o.default=m},8471:t=>{"use strict";t.exports=Backbone.Model.extend({defaults:{id:0,type:"",status:"not_applied",title:"",subTitle:"",action:"",history:{}},initialize:function initialize(){this.set("items",new Backbone.Collection)}})},35733:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(_default,t);var o=(0,d.default)(_default);function _default(){return(0,l.default)(this,_default),o.apply(this,arguments)}return(0,u.default)(_default,[{key:"getTemplate",value:function getTemplate(){return"#tmpl-elementor-panel-history-item"}},{key:"className",value:function className(){return"elementor-history-item elementor-history-item-"+this.model.get("status")}},{key:"triggers",value:function triggers(){return{click:"click"}}}]),_default}(Marionette.ItemView);o.default=m},48673:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67394),l=i(67971);a(o,"__esModule",{value:!0}),o.default=void 0;var u=l(i(59396));i(71954);var c=l(i(11959)),d=l(i(39041)),m=l(i(18042)),p=l(i(8471)),h=function(){function HistoryManager(t){(0,c.default)(this,HistoryManager),(0,m.default)(this,"currentItemID",null),(0,m.default)(this,"items",new Backbone.Collection([],{model:p.default})),(0,m.default)(this,"active",!0),(0,m.default)(this,"translations",{add:r("Added","elementor"),change:r("Edited","elementor"),disable:r("Disabled","elementor"),duplicate:r("Duplicate","elementor"),enable:r("Enabled","elementor"),move:r("Moved","elementor"),paste:r("Pasted","elementor"),paste_style:r("Style Pasted","elementor"),remove:r("Removed","elementor"),reset_style:r("Style Reset","elementor"),reset_settings:r("Settings Reset","elementor")}),this.document=t,this.currentItem=new Backbone.Model({id:0})}return(0,d.default)(HistoryManager,[{key:"getActionLabel",value:function getActionLabel(t){return this.translations[t.type]?this.translations[t.type]:t.type}},{key:"navigate",value:function navigate(t){var o=this.items.find((function(t){return"not_applied"===t.get("status")})),i=this.items.indexOf(o),r=t?i-1:i+1;!t&&!o||r<0||r>=this.items.length||this.doItem(r)}},{key:"setActive",value:function setActive(t){this.active=t}},{key:"getActive",value:function getActive(t){return this.active}},{key:"getItems",value:function getItems(){return this.items}},{key:"startItem",value:function startItem(t){return this.currentItemID=this.addItem(t),this.currentItemID}},{key:"endItem",value:function endItem(t){this.currentItemID===t&&(this.currentItemID=null)}},{key:"deleteItem",value:function deleteItem(t){var o=this.items.findWhere({id:t});this.items.remove(o),this.currentItemID=null}},{key:"isItemStarted",value:function isItemStarted(){return null!==this.currentItemID}},{key:"getCurrentId",value:function getCurrentId(){return this.currentItemID}},{key:"addItem",value:function addItem(t){if(this.getActive()){for(this.items.length||this.items.add({status:"not_applied",title:r("Editing Started","elementor"),subTitle:"",action:"",editing_started:!0});this.items.length&&"applied"===this.items.first().get("status");)this.items.shift();var o=this.currentItemID?this.currentItemID:(new Date).getTime(),i=this.items.findWhere({id:o});return i||(i=new p.default({id:o,title:t.title,subTitle:t.subTitle,action:this.getActionLabel(t),type:t.type}),this.startItemTitle="",this.startItemAction=""),i.get("items").add(t,{at:0}),this.items.add(i,{at:0}),this.updateCurrentItem(i),o}}},{key:"doItem",value:function doItem(t){this.setActive(!1);var o=this.items.at(t);"not_applied"===o.get("status")?this.undoItem(t):this.redoItem(t),this.setActive(!0);var i,r=elementor.getPanelView().getCurrentPageView().getOption("editedElementView");if($e.routes.isPartOf("panel/editor")&&r)r.isDestroyed?$e.route("panel/history/actions"):i=r;else if(o instanceof Backbone.Model&&o.get("items").length){var a=o.get("items").first();if(a.get("restore")){var l="sub-add"===a.get("type")?a.get("data").containerToRestore:a.get("container")||a.get("containers");(0,u.default)(l)&&(l=l[0]),l&&(i=l.lookup().view)}}$e.internal("document/save/set-is-modified",{status:o.get("id")!==this.document.editor.lastSaveHistoryId}),this.updateCurrentItem(o),i&&!elementor.helpers.isInViewport(i.$el[0],elementor.$previewContents.find("html")[0])&&elementor.helpers.scrollToView(i.$el)}},{key:"undoItem",value:function undoItem(t){for(var o=0;o<t;o++){var i=this.items.at(o);"not_applied"===i.get("status")&&(i.get("items").each((function(t){var o=t.get("restore");o&&o(t)})),i.set("status","applied"))}}},{key:"redoItem",value:function redoItem(t){for(var o=this.items.length-1;o>=t;o--){var i=this.items.at(o);if("applied"===i.get("status")){var r=_.toArray(i.get("items").models).reverse();_(r).each((function(t){var o=t.get("restore");o&&o(t,!0)})),i.set("status","not_applied")}}}},{key:"updateCurrentItem",value:function updateCurrentItem(t){this.currentItem=t,this.updatePanelPageCurrentItem()}},{key:"updatePanelPageCurrentItem",value:function updatePanelPageCurrentItem(){$e.routes.is("panel/history/actions")&&elementor.getPanelView().getCurrentPageView().getCurrentTab().updateCurrentItem()}}]),HistoryManager}();o.default=h},97789:(t,o,i)=>{"use strict";var r=i(67971);i(71954),i(78703);var a=r(i(35733)),l=r(i(16310));t.exports=Marionette.CompositeView.extend({id:"elementor-panel-history",template:"#tmpl-elementor-panel-history-tab",childView:a.default,childViewContainer:"#elementor-history-list",emptyView:l.default,currentItem:null,updateCurrentItem:function updateCurrentItem(){var t=this;this.children.length<=1||_.defer((function(){var o=t.collection.find((function(t){return"not_applied"===t.get("status")})),i=t.children.findByModel(o);if(i){var r="elementor-history-item-current";t.currentItem&&t.currentItem.removeClass(r),t.currentItem=i.$el,t.currentItem.addClass(r)}}))},onRender:function onRender(){this.updateCurrentItem()},onRenderEmpty:function onRenderEmpty(){this.$el.addClass("elementor-empty")},onChildviewClick:function onChildviewClick(t,o){if(t.$el!==this.currentItem){var i=o.model.collection.findIndex(o.model);$e.run("panel/history/actions/do",{index:i})}}})},18414:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67394),l=i(67971);a(o,"__esModule",{value:!0}),o.default=void 0;var u=l(i(11959)),c=l(i(39041)),d=l(i(28868)),m=l(i(84755)),p=l(i(29153)),h=l(i(17228)),g=function(){function Manager(){(0,u.default)(this,Manager),elementorCommon.elements.$window.on("elementor:loaded",this.init)}return(0,c.default)(Manager,[{key:"init",value:function init(){$e.components.register(new d.default),$e.components.register(new m.default),$e.components.register(new p.default),elementor.on("panel:init",(function(){elementor.getPanelView().addPage("historyPage",{view:h.default,title:r("History","elementor")})}))}},{key:"history",get:function get(){return elementorCommon.helpers.softDeprecated("elementor.history.history","2.9.0","elementor.documents.getCurrent().history"),elementor.documents.getCurrent().history}},{key:"revisions",get:function get(){return elementorCommon.helpers.softDeprecated("elementor.history.revisions","2.9.0","elementor.documents.getCurrent().revisions"),elementor.documents.getCurrent().revisions}}]),Manager}();o.default=g},17228:(t,o,i)=>{"use strict";var r=i(67971),a=r(i(16779)),l=r(i(58234)),u=r(i(98855)),c=i(97789);t.exports=Marionette.LayoutView.extend({template:"#tmpl-elementor-panel-history-page",regions:{content:"#elementor-panel-history-content"},ui:{tabs:".elementor-panel-navigation-tab"},regionViews:{},currentTab:null,document:null,initialize:function initialize(t){this.document=t.document||elementor.documents.getCurrent(),this.initRegionViews()},initRegionViews:function initRegionViews(){var t=this,o=this.document.history.getItems();this.regionViews={actions:{view:function view(){return c},options:{collection:o,history:this.document.history}},revisions:{view:function view(){var o=t.document.revisions.getItems();return o?1===o.length&&"current"===o.models[0].get("type")?u.default:l.default:a.default},options:{document:this.document}}}},getCurrentTab:function getCurrentTab(){return this.currentTab},showView:function showView(t){var o=this.regionViews[t],i=o.options||{},r=o.view();this.currentTab&&this.currentTab.constructor===r||(this.currentTab=new r(i),this.content.show(this.currentTab))}})},29138:(t,o,i)=>{"use strict";var r=i(95297);t.exports=Backbone.Collection.extend({model:r,comparator:function comparator(t){return-t.get("timestamp")}})},39667:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.Down=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(Down,t);var o=(0,d.default)(Down);function Down(){return(0,l.default)(this,Down),o.apply(this,arguments)}return(0,u.default)(Down,[{key:"apply",value:function apply(){this.component.navigate()}}]),Down}(a(i(68689)).default);o.Down=m;var p=m;o.default=p},17302:(t,o,i)=>{"use strict";var r=i(67394);r(o,"__esModule",{value:!0}),r(o,"Down",{enumerable:!0,get:function get(){return a.Down}}),r(o,"Up",{enumerable:!0,get:function get(){return l.Up}});var a=i(39667),l=i(75625)},75625:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.Up=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(Up,t);var o=(0,d.default)(Up);function Up(){return(0,l.default)(this,Up),o.apply(this,arguments)}return(0,u.default)(Up,[{key:"apply",value:function apply(){this.component.navigate(!0)}}]),Up}(a(i(68689)).default);o.Up=m;var p=m;o.default=p},29153:(t,o,i)=>{"use strict";var r=i(67394),a=i(52369),l=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var u=l(i(11959)),c=l(i(39041)),d=l(i(77371)),m=l(i(68537)),p=l(i(15591)),h=a(i(17302)),g=a(i(94367)),v=function(t){(0,d.default)(Component,t);var o=(0,m.default)(Component);function Component(){return(0,u.default)(this,Component),o.apply(this,arguments)}return(0,c.default)(Component,[{key:"getNamespace",value:function getNamespace(){return"panel/history/revisions"}},{key:"defaultCommands",value:function defaultCommands(){return this.importCommands(h)}},{key:"defaultHooks",value:function defaultHooks(){return this.importHooks(g)}},{key:"defaultShortcuts",value:function defaultShortcuts(){return{up:{keys:"up",scopes:[this.getNamespace()]},down:{keys:"down",scopes:[this.getNamespace()]}}}},{key:"navigate",value:function navigate(t){elementor.documents.getCurrent().revisions.getItems().length>1&&elementor.getPanelView().getCurrentPageView().currentTab.navigate(t)}}]),Component}(p.default);o.default=v},36235:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.RevisionsAfterSave=void 0,i(64434);var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(RevisionsAfterSave,t);var o=(0,d.default)(RevisionsAfterSave);function RevisionsAfterSave(){return(0,l.default)(this,RevisionsAfterSave),o.apply(this,arguments)}return(0,u.default)(RevisionsAfterSave,[{key:"getCommand",value:function getCommand(){return"document/save/save"}},{key:"getId",value:function getId(){return"revisions-after-save"}},{key:"apply",value:function apply(t,o){var i=o.data,r=elementor.documents.getCurrent().revisions;i.latest_revisions&&r.addRevisions(i.latest_revisions),r.requestRevisions((function(){if(i.revisions_ids){var t=r.revisions.filter((function(t){return-1!==i.revisions_ids.indexOf(t.get("id"))}));r.revisions.reset(t)}}))}}]),RevisionsAfterSave}(a(i(91706)).default);o.RevisionsAfterSave=m;var p=m;o.default=p},94367:(t,o,i)=>{"use strict";var r=i(67394);r(o,"__esModule",{value:!0}),r(o,"RevisionsAfterSave",{enumerable:!0,get:function get(){return a.RevisionsAfterSave}});var a=i(36235)},11666:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(18042)),d=i(29138),m=function(){function RevisionsManager(t){(0,l.default)(this,RevisionsManager),(0,c.default)(this,"document",void 0),(0,c.default)(this,"revisions",void 0),this.document=t}return(0,u.default)(RevisionsManager,[{key:"getItems",value:function getItems(){return this.revisions}},{key:"requestRevisions",value:function requestRevisions(t){var o=this;this.revisions?t(this.revisions):elementorCommon.ajax.addRequest("get_revisions",{success:function success(i){o.revisions=new d(i),o.revisions.on("update",o.onRevisionsUpdate.bind(o)),t(o.revisions)}})}},{key:"setEditorData",value:function setEditorData(t){elementor.getPreviewView().collection.reset(t)}},{key:"getRevisionDataAsync",value:function getRevisionDataAsync(t,o){return _.extend(o,{data:{id:t}}),elementorCommon.ajax.addRequest("get_revision_data",o)}},{key:"addRevisions",value:function addRevisions(t){var o=this;this.requestRevisions((function(){t.forEach((function(t){var i=o.revisions.findWhere({id:t.id});i&&o.revisions.remove(i,{silent:!0}),o.revisions.add(t,{silent:!0})})),o.revisions.trigger("update")}))}},{key:"deleteRevision",value:function deleteRevision(t,o){var i={data:{id:t.get("id")},success:function success(){o.success&&o.success(),t.destroy()}};o.error&&(i.error=o.error),elementorCommon.ajax.addRequest("delete_revision",i)}},{key:"onRevisionsUpdate",value:function onRevisionsUpdate(){$e.routes.is("panel/history/revisions")&&$e.routes.refreshContainer("panel")}}]),RevisionsManager}();o.default=m},95297:t=>{"use strict";var o;(o=Backbone.Model.extend()).prototype.sync=function(){return null},t.exports=o},98855:t=>{"use strict";t.exports=Marionette.ItemView.extend({template:"#tmpl-elementor-panel-revisions-no-revisions",id:"elementor-panel-revisions-no-revisions",className:"elementor-nerd-box"})},16779:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(_default,t);var o=(0,d.default)(_default);function _default(){return(0,l.default)(this,_default),o.apply(this,arguments)}return(0,u.default)(_default,[{key:"getTemplate",value:function getTemplate(){return"#tmpl-elementor-panel-revisions-loading"}},{key:"id",value:function id(){return"elementor-panel-revisions-loading"}},{key:"onRender",value:function onRender(){this.options.document.revisions.requestRevisions((function(){setTimeout((function(){return $e.routes.refreshContainer("panel")}))}))}}]),_default}(Marionette.ItemView);o.default=m},58234:(t,o,i)=>{"use strict";t.exports=Marionette.CompositeView.extend({id:"elementor-panel-revisions",template:"#tmpl-elementor-panel-revisions",childView:i(92561),childViewContainer:"#elementor-revisions-list",ui:{discard:".elementor-panel-scheme-discard .elementor-button",apply:".elementor-panel-scheme-save .elementor-button"},events:{"click @ui.discard":"onDiscardClick","click @ui.apply":"onApplyClick"},isRevisionApplied:!1,currentPreviewId:null,currentPreviewItem:null,document:null,initialize:function initialize(t){this.document=t.document,this.collection=this.document.revisions.getItems(),this.listenTo(elementor.channels.editor,"saved",this.onEditorSaved),this.currentPreviewId=elementor.config.document.revisions.current_id},getRevisionViewData:function getRevisionViewData(t){var o=this;this.document.revisions.getRevisionDataAsync(t.model.get("id"),{success:function success(i){o.document.config.panel.has_elements&&o.document.revisions.setEditorData(i.elements),elementor.settings.page.model.set(i.settings),o.setRevisionsButtonsActive(!0),t.$el.removeClass("elementor-revision-item-loading"),o.enterReviewMode()},error:function error(i){t.$el.removeClass("elementor-revision-item-loading"),o.currentPreviewItem=null,o.currentPreviewId=null,alert(i)}})},setRevisionsButtonsActive:function setRevisionsButtonsActive(t){this.isDestroyed||this.ui.apply.add(this.ui.discard).prop("disabled",!t)},deleteRevision:function deleteRevision(t){var o=this;t.$el.addClass("elementor-revision-item-loading"),this.document.revisions.deleteRevision(t.model,{success:function success(){t.model.get("id")===o.currentPreviewId&&o.onDiscardClick(),o.currentPreviewId=null},error:function error(){t.$el.removeClass("elementor-revision-item-loading"),alert("An error occurred")}})},enterReviewMode:function enterReviewMode(){elementor.changeEditMode("review")},exitReviewMode:function exitReviewMode(){elementor.changeEditMode("edit")},navigate:function navigate(t){if(this.currentPreviewId&&this.currentPreviewItem&&!(this.children.length<=1)){var o=this.collection.indexOf(this.currentPreviewItem.model),i=t?o-1:o+1;i<0&&(i=this.collection.length-1),i>=this.collection.length&&(i=0),this.children.findByIndex(i).ui.detailsArea.trigger("click")}},onEditorSaved:function onEditorSaved(){this.exitReviewMode(),this.setRevisionsButtonsActive(!1),this.currentPreviewId=elementor.config.document.revisions.current_id},onApplyClick:function onApplyClick(){$e.internal("document/save/set-is-modified",{status:!0}),$e.run("document/save/auto",{force:!0}),this.isRevisionApplied=!0,this.currentPreviewId=null,this.document.history.getItems().reset()},onDiscardClick:function onDiscardClick(){this.document.config.panel.has_elements&&this.document.revisions.setEditorData(elementor.config.document.elements),$e.internal("document/save/set-is-modified",{status:this.isRevisionApplied}),this.isRevisionApplied=!1,this.setRevisionsButtonsActive(!1),this.currentPreviewId=null,this.exitReviewMode(),this.currentPreviewItem&&this.currentPreviewItem.$el.removeClass("elementor-revision-current-preview")},onDestroy:function onDestroy(){this.currentPreviewId&&this.currentPreviewId!==elementor.config.document.revisions.current_id&&this.onDiscardClick()},onRenderCollection:function onRenderCollection(){if(this.currentPreviewId){var t=this.collection.findWhere({id:this.currentPreviewId});t&&(this.currentPreviewItem=this.children.findByModelCid(t.cid),this.currentPreviewItem.$el.addClass("elementor-revision-current-preview"))}},onChildviewDetailsAreaClick:function onChildviewDetailsAreaClick(t){var o=this,i=t.model.get("id");i!==this.currentPreviewId&&(this.currentPreviewItem&&this.currentPreviewItem.$el.removeClass("elementor-revision-current-preview elementor-revision-item-loading"),t.$el.addClass("elementor-revision-current-preview elementor-revision-item-loading"),(null===this.currentPreviewId||elementor.config.document.revisions.current_id===this.currentPreviewId)&&elementor.saver.isEditorChanged()?$e.internal("document/save/save",{status:"autosave",onSuccess:function onSuccess(){o.getRevisionViewData(t)}}):this.getRevisionViewData(t),this.currentPreviewItem=t,this.currentPreviewId=i)}})},92561:t=>{"use strict";t.exports=Marionette.ItemView.extend({template:"#tmpl-elementor-panel-revisions-revision-item",className:"elementor-revision-item",ui:{detailsArea:".elementor-revision-item__details"},triggers:{"click @ui.detailsArea":"detailsArea:click"}})},35102:(t,o,i)=>{"use strict";var r=i(67394),a=i(52369),l=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var u=l(i(11959)),c=l(i(39041)),d=l(i(77371)),m=l(i(68537)),p=a(i(70737)),h=function(t){(0,d.default)(LandingPageComponent,t);var o=(0,m.default)(LandingPageComponent);function LandingPageComponent(){return(0,u.default)(this,LandingPageComponent),o.apply(this,arguments)}return(0,c.default)(LandingPageComponent,[{key:"getNamespace",value:function getNamespace(){return"document/landing-page"}},{key:"defaultHooks",value:function defaultHooks(){return this.importHooks(p)}}]),LandingPageComponent}($e.modules.ComponentBase);o.default=h},70737:(t,o,i)=>{"use strict";var r=i(67394);r(o,"__esModule",{value:!0}),r(o,"LandingPageAddLibraryTab",{enumerable:!0,get:function get(){return a.LandingPageAddLibraryTab}}),r(o,"LandingPageRemoveLibraryTab",{enumerable:!0,get:function get(){return l.LandingPageRemoveLibraryTab}});var a=i(78392),l=i(57254)},57254:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=o.LandingPageRemoveLibraryTab=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=function(t){(0,c.default)(LandingPageRemoveLibraryTab,t);var o=(0,d.default)(LandingPageRemoveLibraryTab);function LandingPageRemoveLibraryTab(){return(0,l.default)(this,LandingPageRemoveLibraryTab),o.apply(this,arguments)}return(0,u.default)(LandingPageRemoveLibraryTab,[{key:"getCommand",value:function getCommand(){return"editor/documents/unload"}},{key:"getId",value:function getId(){return"elementor-landing-pages-remove-library-tab"}},{key:"getConditions",value:function getConditions(t){return"landing-page"===t.document.config.type}},{key:"apply",value:function apply(){$e.components.get("library").removeTab("templates/landing-pages"),$e.components.get("library").addTab("templates/pages")}}]),LandingPageRemoveLibraryTab}($e.modules.hookUI.After);o.LandingPageRemoveLibraryTab=m;var p=m;o.default=p},78392:(t,o,i)=>{"use strict";var r=i(18194).__,a=i(67394),l=i(67971);a(o,"__esModule",{value:!0}),o.default=o.LandingPageAddLibraryTab=void 0;var u=l(i(11959)),c=l(i(39041)),d=l(i(77371)),m=l(i(68537)),p=function(t){(0,d.default)(LandingPageAddLibraryTab,t);var o=(0,m.default)(LandingPageAddLibraryTab);function LandingPageAddLibraryTab(){return(0,u.default)(this,LandingPageAddLibraryTab),o.apply(this,arguments)}return(0,c.default)(LandingPageAddLibraryTab,[{key:"getCommand",value:function getCommand(){return"editor/documents/open"}},{key:"getId",value:function getId(){return"elementor-landing-pages-add-library-tab"}},{key:"getConditions",value:function getConditions(t){return"landing-page"===elementor.documents.get(t.id).config.type}},{key:"apply",value:function apply(){$e.components.get("library").addTab("templates/landing-pages",{title:r("Landing Pages","elementor"),filter:{source:"remote",type:"lp"}},2),$e.components.get("library").removeTab("templates/pages")}}]),LandingPageAddLibraryTab}($e.modules.hookUI.After);o.LandingPageAddLibraryTab=p;var h=p;o.default=h},69994:(t,o,i)=>{"use strict";var r=i(67394),a=i(67971);r(o,"__esModule",{value:!0}),o.default=void 0;var l=a(i(11959)),u=a(i(39041)),c=a(i(77371)),d=a(i(68537)),m=a(i(35102)),p=function(t){(0,c.default)(LandingPageLibraryModule,t);var o=(0,d.default)(LandingPageLibraryModule);function LandingPageLibraryModule(){return(0,l.default)(this,LandingPageLibraryModule),o.apply(this,arguments)}return(0,u.default)(LandingPageLibraryModule,[{key:"onElementorLoaded",value:function onElementorLoaded(){this.component=$e.components.register(new m.default({manager:this}))}}]),LandingPageLibraryModule}(elementorModules.editor.utils.Module);o.default=p},7421:(t,o,i)=>{i(99572),i(37627),t.exports=i(47208).Array.from},70157:(t,o,i)=>{i(42580),t.exports=i(47208).Array.isArray},73684:(t,o,i)=>{i(74114),i(99572),t.exports=i(48598)},89710:(t,o,i)=>{var r=i(47208),a=r.JSON||(r.JSON={stringify:JSON.stringify});t.exports=function stringify(t){return a.stringify.apply(a,arguments)}},66458:(t,o,i)=>{i(99954),t.exports=i(47208).Object.assign},14710:(t,o,i)=>{i(30785);var r=i(47208).Object;t.exports=function create(t,o){return r.create(t,o)}},23022:(t,o,i)=>{i(23078);var r=i(47208).Object;t.exports=function defineProperties(t,o){return r.defineProperties(t,o)}},43153:(t,o,i)=>{i(40168);var r=i(47208).Object;t.exports=function defineProperty(t,o,i){return r.defineProperty(t,o,i)}},8531:(t,o,i)=>{i(95260),t.exports=i(47208).Object.entries},32622:(t,o,i)=>{i(18576);var r=i(47208).Object;t.exports=function getOwnPropertyDescriptor(t,o){return r.getOwnPropertyDescriptor(t,o)}},27410:(t,o,i)=>{i(67685),t.exports=i(47208).Object.getOwnPropertyDescriptors},19035:(t,o,i)=>{i(54370),t.exports=i(47208).Object.getOwnPropertySymbols},58535:(t,o,i)=>{i(4840),t.exports=i(47208).Object.getPrototypeOf},97220:(t,o,i)=>{i(5453),t.exports=i(47208).Object.keys},65135:(t,o,i)=>{i(13890),t.exports=i(47208).Object.setPrototypeOf},69591:(t,o,i)=>{i(57188),t.exports=i(47208).Object.values},34345:(t,o,i)=>{i(24399),t.exports=i(47208).parseInt},76483:(t,o,i)=>{i(70285),i(99572),i(74114),i(86082),i(81522),i(25757),t.exports=i(47208).Promise},43094:(t,o,i)=>{i(11320),t.exports=i(47208).Reflect.construct},17641:(t,o,i)=>{i(36600),t.exports=i(47208).Reflect.get},21114:(t,o,i)=>{i(78760),t.exports=i(7273).f("hasInstance")},19103:(t,o,i)=>{i(54370),i(70285),i(87573),i(97224),t.exports=i(47208).Symbol},39871:(t,o,i)=>{i(99572),i(74114),t.exports=i(7273).f("iterator")},89999:(t,o,i)=>{i(70285),i(74114),i(23337),i(10143),i(92797),t.exports=i(47208).WeakMap},26610:t=>{t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},29697:t=>{t.exports=function(){}},54677:t=>{t.exports=function(t,o,i,r){if(!(t instanceof o)||void 0!==r&&r in t)throw TypeError(i+": incorrect invocation!");return t}},30498:(t,o,i)=>{var r=i(39632);t.exports=function(t){if(!r(t))throw TypeError(t+" is not an object!");return t}},69191:(t,o,i)=>{var r=i(1504),a=i(37154),l=i(46723);t.exports=function(t){return function(o,i,u){var c,d=r(o),m=a(d.length),p=l(u,m);if(t&&i!=i){for(;m>p;)if((c=d[p++])!=c)return!0}else for(;m>p;p++)if((t||p in d)&&d[p]===i)return t||p||0;return!t&&-1}}},97647:(t,o,i)=>{var r=i(61725),a=i(13115),l=i(60061),u=i(37154),c=i(41904);t.exports=function(t,o){var i=1==t,d=2==t,m=3==t,p=4==t,h=6==t,g=5==t||h,v=o||c;return function(o,c,y){for(var C,b,w=l(o),k=a(w),S=r(c,y,3),x=u(k.length),T=0,M=i?v(o,x):d?v(o,0):void 0;x>T;T++)if((g||T in k)&&(b=S(C=k[T],T,w),t))if(i)M[T]=b;else if(b)switch(t){case 3:return!0;case 5:return C;case 6:return T;case 2:M.push(C)}else if(p)return!1;return h?-1:m||p?p:M}}},88320:(t,o,i)=>{var r=i(39632),a=i(7359),l=i(24300)("species");t.exports=function(t){var o;return a(t)&&("function"!=typeof(o=t.constructor)||o!==Array&&!a(o.prototype)||(o=void 0),r(o)&&null===(o=o[l])&&(o=void 0)),void 0===o?Array:o}},41904:(t,o,i)=>{var r=i(88320);t.exports=function(t,o){return new(r(t))(o)}},45515:(t,o,i)=>{"use strict";var r=i(26610),a=i(39632),l=i(19897),u=[].slice,c={},construct=function(t,o,i){if(!(o in c)){for(var r=[],a=0;a<o;a++)r[a]="a["+a+"]";c[o]=Function("F,a","return new F("+r.join(",")+")")}return c[o](t,i)};t.exports=Function.bind||function bind(t){var o=r(this),i=u.call(arguments,1),bound=function(){var r=i.concat(u.call(arguments));return this instanceof bound?construct(o,r.length,r):l(o,r,t)};return a(o.prototype)&&(bound.prototype=o.prototype),bound}},8312:(t,o,i)=>{var r=i(41352),a=i(24300)("toStringTag"),l="Arguments"==r(function(){return arguments}());t.exports=function(t){var o,i,u;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(i=function(t,o){try{return t[o]}catch(t){}}(o=Object(t),a))?i:l?r(o):"Object"==(u=r(o))&&"function"==typeof o.callee?"Arguments":u}},41352:t=>{var o={}.toString;t.exports=function(t){return o.call(t).slice(8,-1)}},92600:(t,o,i)=>{"use strict";var r=i(13199),a=i(6758).getWeak,l=i(30498),u=i(39632),c=i(54677),d=i(25985),m=i(97647),p=i(20657),h=i(41081),g=m(5),v=m(6),y=0,uncaughtFrozenStore=function(t){return t._l||(t._l=new UncaughtFrozenStore)},UncaughtFrozenStore=function(){this.a=[]},findUncaughtFrozen=function(t,o){return g(t.a,(function(t){return t[0]===o}))};UncaughtFrozenStore.prototype={get:function(t){var o=findUncaughtFrozen(this,t);if(o)return o[1]},has:function(t){return!!findUncaughtFrozen(this,t)},set:function(t,o){var i=findUncaughtFrozen(this,t);i?i[1]=o:this.a.push([t,o])},delete:function(t){var o=v(this.a,(function(o){return o[0]===t}));return~o&&this.a.splice(o,1),!!~o}},t.exports={getConstructor:function(t,o,i,l){var m=t((function(t,r){c(t,m,o,"_i"),t._t=o,t._i=y++,t._l=void 0,null!=r&&d(r,i,t[l],t)}));return r(m.prototype,{delete:function(t){if(!u(t))return!1;var i=a(t);return!0===i?uncaughtFrozenStore(h(this,o)).delete(t):i&&p(i,this._i)&&delete i[this._i]},has:function has(t){if(!u(t))return!1;var i=a(t);return!0===i?uncaughtFrozenStore(h(this,o)).has(t):i&&p(i,this._i)}}),m},def:function(t,o,i){var r=a(l(o),!0);return!0===r?uncaughtFrozenStore(t).set(o,i):r[t._i]=i,t},ufstore:uncaughtFrozenStore}},70770:(t,o,i)=>{"use strict";var r=i(43280),a=i(98310),l=i(6758),u=i(90472),c=i(62292),d=i(13199),m=i(25985),p=i(54677),h=i(39632),g=i(2413),v=i(60510).f,y=i(97647)(0),C=i(75179);t.exports=function(t,o,i,b,w,k){var S=r[t],x=S,T=w?"set":"add",M=x&&x.prototype,P={};return C&&"function"==typeof x&&(k||M.forEach&&!u((function(){(new x).entries().next()})))?(x=o((function(o,i){p(o,x,t,"_c"),o._c=new S,null!=i&&m(i,w,o[T],o)})),y("add,clear,delete,forEach,get,has,set,keys,values,entries,toJSON".split(","),(function(t){var o="add"==t||"set"==t;!(t in M)||k&&"clear"==t||c(x.prototype,t,(function(i,r){if(p(this,x,t),!o&&k&&!h(i))return"get"==t&&void 0;var a=this._c[t](0===i?0:i,r);return o?this:a}))})),k||v(x.prototype,"size",{get:function(){return this._c.size}})):(x=b.getConstructor(o,t,w,T),d(x.prototype,i),l.NEED=!0),g(x,t),P[t]=x,a(a.G+a.W+a.F,P),k||b.setStrong(x,t,w),x}},47208:t=>{var o=t.exports={version:"2.6.12"};"number"==typeof __e&&(__e=o)},87352:(t,o,i)=>{"use strict";var r=i(60510),a=i(48439);t.exports=function(t,o,i){o in t?r.f(t,o,a(0,i)):t[o]=i}},61725:(t,o,i)=>{var r=i(26610);t.exports=function(t,o,i){if(r(t),void 0===o)return t;switch(i){case 1:return function(i){return t.call(o,i)};case 2:return function(i,r){return t.call(o,i,r)};case 3:return function(i,r,a){return t.call(o,i,r,a)}}return function(){return t.apply(o,arguments)}}},18239:t=>{t.exports=function(t){if(null==t)throw TypeError("Can't call method on  "+t);return t}},75179:(t,o,i)=>{t.exports=!i(90472)((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},48765:(t,o,i)=>{var r=i(39632),a=i(43280).document,l=r(a)&&r(a.createElement);t.exports=function(t){return l?a.createElement(t):{}}},31986:t=>{t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},42266:(t,o,i)=>{var r=i(86425),a=i(97739),l=i(67410);t.exports=function(t){var o=r(t),i=a.f;if(i)for(var u,c=i(t),d=l.f,m=0;c.length>m;)d.call(t,u=c[m++])&&o.push(u);return o}},98310:(t,o,i)=>{var r=i(43280),a=i(47208),l=i(61725),u=i(62292),c=i(20657),$export=function(t,o,i){var d,m,p,h=t&$export.F,g=t&$export.G,v=t&$export.S,y=t&$export.P,C=t&$export.B,b=t&$export.W,w=g?a:a[o]||(a[o]={}),k=w.prototype,S=g?r:v?r[o]:(r[o]||{}).prototype;for(d in g&&(i=o),i)(m=!h&&S&&void 0!==S[d])&&c(w,d)||(p=m?S[d]:i[d],w[d]=g&&"function"!=typeof S[d]?i[d]:C&&m?l(p,r):b&&S[d]==p?function(t){var F=function(o,i,r){if(this instanceof t){switch(arguments.length){case 0:return new t;case 1:return new t(o);case 2:return new t(o,i)}return new t(o,i,r)}return t.apply(this,arguments)};return F.prototype=t.prototype,F}(p):y&&"function"==typeof p?l(Function.call,p):p,y&&((w.virtual||(w.virtual={}))[d]=p,t&$export.R&&k&&!k[d]&&u(k,d,p)))};$export.F=1,$export.G=2,$export.S=4,$export.P=8,$export.B=16,$export.W=32,$export.U=64,$export.R=128,t.exports=$export},90472:t=>{t.exports=function(t){try{return!!t()}catch(t){return!0}}},25985:(t,o,i)=>{var r=i(61725),a=i(93086),l=i(11827),u=i(30498),c=i(37154),d=i(26116),m={},p={},h=t.exports=function(t,o,i,h,g){var v,y,C,b,w=g?function(){return t}:d(t),k=r(i,h,o?2:1),S=0;if("function"!=typeof w)throw TypeError(t+" is not iterable!");if(l(w)){for(v=c(t.length);v>S;S++)if((b=o?k(u(y=t[S])[0],y[1]):k(t[S]))===m||b===p)return b}else for(C=w.call(t);!(y=C.next()).done;)if((b=a(C,k,y.value,o))===m||b===p)return b};h.BREAK=m,h.RETURN=p},43280:t=>{var o=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=o)},20657:t=>{var o={}.hasOwnProperty;t.exports=function(t,i){return o.call(t,i)}},62292:(t,o,i)=>{var r=i(60510),a=i(48439);t.exports=i(75179)?function(t,o,i){return r.f(t,o,a(1,i))}:function(t,o,i){return t[o]=i,t}},92477:(t,o,i)=>{var r=i(43280).document;t.exports=r&&r.documentElement},64457:(t,o,i)=>{t.exports=!i(75179)&&!i(90472)((function(){return 7!=Object.defineProperty(i(48765)("div"),"a",{get:function(){return 7}}).a}))},19897:t=>{t.exports=function(t,o,i){var r=void 0===i;switch(o.length){case 0:return r?t():t.call(i);case 1:return r?t(o[0]):t.call(i,o[0]);case 2:return r?t(o[0],o[1]):t.call(i,o[0],o[1]);case 3:return r?t(o[0],o[1],o[2]):t.call(i,o[0],o[1],o[2]);case 4:return r?t(o[0],o[1],o[2],o[3]):t.call(i,o[0],o[1],o[2],o[3])}return t.apply(i,o)}},13115:(t,o,i)=>{var r=i(41352);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==r(t)?t.split(""):Object(t)}},11827:(t,o,i)=>{var r=i(79105),a=i(24300)("iterator"),l=Array.prototype;t.exports=function(t){return void 0!==t&&(r.Array===t||l[a]===t)}},7359:(t,o,i)=>{var r=i(41352);t.exports=Array.isArray||function isArray(t){return"Array"==r(t)}},39632:t=>{t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},93086:(t,o,i)=>{var r=i(30498);t.exports=function(t,o,i,a){try{return a?o(r(i)[0],i[1]):o(i)}catch(o){var l=t.return;throw void 0!==l&&r(l.call(t)),o}}},19802:(t,o,i)=>{"use strict";var r=i(82488),a=i(48439),l=i(2413),u={};i(62292)(u,i(24300)("iterator"),(function(){return this})),t.exports=function(t,o,i){t.prototype=r(u,{next:a(1,i)}),l(t,o+" Iterator")}},6125:(t,o,i)=>{"use strict";var r=i(36794),a=i(98310),l=i(19312),u=i(62292),c=i(79105),d=i(19802),m=i(2413),p=i(999),h=i(24300)("iterator"),g=!([].keys&&"next"in[].keys()),v="keys",y="values",returnThis=function(){return this};t.exports=function(t,o,i,C,b,w,k){d(i,o,C);var S,x,T,getMethod=function(t){if(!g&&t in I)return I[t];switch(t){case v:return function keys(){return new i(this,t)};case y:return function values(){return new i(this,t)}}return function entries(){return new i(this,t)}},M=o+" Iterator",P=b==y,E=!1,I=t.prototype,R=I[h]||I["@@iterator"]||b&&I[b],D=R||getMethod(b),V=b?P?getMethod("entries"):D:void 0,A="Array"==o&&I.entries||R;if(A&&(T=p(A.call(new t)))!==Object.prototype&&T.next&&(m(T,M,!0),r||"function"==typeof T[h]||u(T,h,returnThis)),P&&R&&R.name!==y&&(E=!0,D=function values(){return R.call(this)}),r&&!k||!g&&!E&&I[h]||u(I,h,D),c[o]=D,c[M]=returnThis,b)if(S={values:P?D:getMethod(y),keys:w?D:getMethod(v),entries:V},k)for(x in S)x in I||l(I,x,S[x]);else a(a.P+a.F*(g||E),o,S);return S}},26797:(t,o,i)=>{var r=i(24300)("iterator"),a=!1;try{var l=[7][r]();l.return=function(){a=!0},Array.from(l,(function(){throw 2}))}catch(t){}t.exports=function(t,o){if(!o&&!a)return!1;var i=!1;try{var l=[7],u=l[r]();u.next=function(){return{done:i=!0}},l[r]=function(){return u},t(l)}catch(t){}return i}},9329:t=>{t.exports=function(t,o){return{value:o,done:!!t}}},79105:t=>{t.exports={}},36794:t=>{t.exports=!0},6758:(t,o,i)=>{var r=i(54251)("meta"),a=i(39632),l=i(20657),u=i(60510).f,c=0,d=Object.isExtensible||function(){return!0},m=!i(90472)((function(){return d(Object.preventExtensions({}))})),setMeta=function(t){u(t,r,{value:{i:"O"+ ++c,w:{}}})},p=t.exports={KEY:r,NEED:!1,fastKey:function(t,o){if(!a(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!l(t,r)){if(!d(t))return"F";if(!o)return"E";setMeta(t)}return t[r].i},getWeak:function(t,o){if(!l(t,r)){if(!d(t))return!0;if(!o)return!1;setMeta(t)}return t[r].w},onFreeze:function(t){return m&&p.NEED&&d(t)&&!l(t,r)&&setMeta(t),t}}},4326:(t,o,i)=>{var r=i(43280),a=i(6022).set,l=r.MutationObserver||r.WebKitMutationObserver,u=r.process,c=r.Promise,d="process"==i(41352)(u);t.exports=function(){var t,o,i,flush=function(){var r,a;for(d&&(r=u.domain)&&r.exit();t;){a=t.fn,t=t.next;try{a()}catch(r){throw t?i():o=void 0,r}}o=void 0,r&&r.enter()};if(d)i=function(){u.nextTick(flush)};else if(!l||r.navigator&&r.navigator.standalone)if(c&&c.resolve){var m=c.resolve(void 0);i=function(){m.then(flush)}}else i=function(){a.call(r,flush)};else{var p=!0,h=document.createTextNode("");new l(flush).observe(h,{characterData:!0}),i=function(){h.data=p=!p}}return function(r){var a={fn:r,next:void 0};o&&(o.next=a),t||(t=a,i()),o=a}}},88579:(t,o,i)=>{"use strict";var r=i(26610);function PromiseCapability(t){var o,i;this.promise=new t((function(t,r){if(void 0!==o||void 0!==i)throw TypeError("Bad Promise constructor");o=t,i=r})),this.resolve=r(o),this.reject=r(i)}t.exports.f=function(t){return new PromiseCapability(t)}},77995:(t,o,i)=>{"use strict";var r=i(75179),a=i(86425),l=i(97739),u=i(67410),c=i(60061),d=i(13115),m=Object.assign;t.exports=!m||i(90472)((function(){var t={},o={},i=Symbol(),r="abcdefghijklmnopqrst";return t[i]=7,r.split("").forEach((function(t){o[t]=t})),7!=m({},t)[i]||Object.keys(m({},o)).join("")!=r}))?function assign(t,o){for(var i=c(t),m=arguments.length,p=1,h=l.f,g=u.f;m>p;)for(var v,y=d(arguments[p++]),C=h?a(y).concat(h(y)):a(y),b=C.length,w=0;b>w;)v=C[w++],r&&!g.call(y,v)||(i[v]=y[v]);return i}:m},82488:(t,o,i)=>{var r=i(30498),a=i(36607),l=i(31986),u=i(18478)("IE_PROTO"),Empty=function(){},createDict=function(){var t,o=i(48765)("iframe"),r=l.length;for(o.style.display="none",i(92477).appendChild(o),o.src="javascript:",(t=o.contentWindow.document).open(),t.write("<script>document.F=Object<\/script>"),t.close(),createDict=t.F;r--;)delete createDict.prototype[l[r]];return createDict()};t.exports=Object.create||function create(t,o){var i;return null!==t?(Empty.prototype=r(t),i=new Empty,Empty.prototype=null,i[u]=t):i=createDict(),void 0===o?i:a(i,o)}},60510:(t,o,i)=>{var r=i(30498),a=i(64457),l=i(12737),u=Object.defineProperty;o.f=i(75179)?Object.defineProperty:function defineProperty(t,o,i){if(r(t),o=l(o,!0),r(i),a)try{return u(t,o,i)}catch(t){}if("get"in i||"set"in i)throw TypeError("Accessors not supported!");return"value"in i&&(t[o]=i.value),t}},36607:(t,o,i)=>{var r=i(60510),a=i(30498),l=i(86425);t.exports=i(75179)?Object.defineProperties:function defineProperties(t,o){a(t);for(var i,u=l(o),c=u.length,d=0;c>d;)r.f(t,i=u[d++],o[i]);return t}},83264:(t,o,i)=>{var r=i(67410),a=i(48439),l=i(1504),u=i(12737),c=i(20657),d=i(64457),m=Object.getOwnPropertyDescriptor;o.f=i(75179)?m:function getOwnPropertyDescriptor(t,o){if(t=l(t),o=u(o,!0),d)try{return m(t,o)}catch(t){}if(c(t,o))return a(!r.f.call(t,o),t[o])}},26084:(t,o,i)=>{var r=i(1504),a=i(8772).f,l={}.toString,u="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];t.exports.f=function getOwnPropertyNames(t){return u&&"[object Window]"==l.call(t)?function(t){try{return a(t)}catch(t){return u.slice()}}(t):a(r(t))}},8772:(t,o,i)=>{var r=i(65326),a=i(31986).concat("length","prototype");o.f=Object.getOwnPropertyNames||function getOwnPropertyNames(t){return r(t,a)}},97739:(t,o)=>{o.f=Object.getOwnPropertySymbols},999:(t,o,i)=>{var r=i(20657),a=i(60061),l=i(18478)("IE_PROTO"),u=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=a(t),r(t,l)?t[l]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},65326:(t,o,i)=>{var r=i(20657),a=i(1504),l=i(69191)(!1),u=i(18478)("IE_PROTO");t.exports=function(t,o){var i,c=a(t),d=0,m=[];for(i in c)i!=u&&r(c,i)&&m.push(i);for(;o.length>d;)r(c,i=o[d++])&&(~l(m,i)||m.push(i));return m}},86425:(t,o,i)=>{var r=i(65326),a=i(31986);t.exports=Object.keys||function keys(t){return r(t,a)}},67410:(t,o)=>{o.f={}.propertyIsEnumerable},57972:(t,o,i)=>{var r=i(98310),a=i(47208),l=i(90472);t.exports=function(t,o){var i=(a.Object||{})[t]||Object[t],u={};u[t]=o(i),r(r.S+r.F*l((function(){i(1)})),"Object",u)}},9480:(t,o,i)=>{var r=i(75179),a=i(86425),l=i(1504),u=i(67410).f;t.exports=function(t){return function(o){for(var i,c=l(o),d=a(c),m=d.length,p=0,h=[];m>p;)i=d[p++],r&&!u.call(c,i)||h.push(t?[i,c[i]]:c[i]);return h}}},64344:(t,o,i)=>{var r=i(8772),a=i(97739),l=i(30498),u=i(43280).Reflect;t.exports=u&&u.ownKeys||function ownKeys(t){var o=r.f(l(t)),i=a.f;return i?o.concat(i(t)):o}},60162:(t,o,i)=>{var r=i(43280).parseInt,a=i(71963).trim,l=i(18458),u=/^[-+]?0[xX]/;t.exports=8!==r(l+"08")||22!==r(l+"0x16")?function parseInt(t,o){var i=a(String(t),3);return r(i,o>>>0||(u.test(i)?16:10))}:r},52745:t=>{t.exports=function(t){try{return{e:!1,v:t()}}catch(t){return{e:!0,v:t}}}},88747:(t,o,i)=>{var r=i(30498),a=i(39632),l=i(88579);t.exports=function(t,o){if(r(t),a(o)&&o.constructor===t)return o;var i=l.f(t);return(0,i.resolve)(o),i.promise}},48439:t=>{t.exports=function(t,o){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:o}}},13199:(t,o,i)=>{var r=i(62292);t.exports=function(t,o,i){for(var a in o)i&&t[a]?t[a]=o[a]:r(t,a,o[a]);return t}},19312:(t,o,i)=>{t.exports=i(62292)},14689:(t,o,i)=>{"use strict";var r=i(98310),a=i(26610),l=i(61725),u=i(25985);t.exports=function(t){r(r.S,t,{from:function from(t){var o,i,r,c,d=arguments[1];return a(this),(o=void 0!==d)&&a(d),null==t?new this:(i=[],o?(r=0,c=l(d,arguments[2],2),u(t,!1,(function(t){i.push(c(t,r++))}))):u(t,!1,i.push,i),new this(i))}})}},7883:(t,o,i)=>{"use strict";var r=i(98310);t.exports=function(t){r(r.S,t,{of:function of(){for(var t=arguments.length,o=new Array(t);t--;)o[t]=arguments[t];return new this(o)}})}},25574:(t,o,i)=>{var r=i(39632),a=i(30498),check=function(t,o){if(a(t),!r(o)&&null!==o)throw TypeError(o+": can't set as prototype!")};t.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(t,o,r){try{(r=i(61725)(Function.call,i(83264).f(Object.prototype,"__proto__").set,2))(t,[]),o=!(t instanceof Array)}catch(t){o=!0}return function setPrototypeOf(t,i){return check(t,i),o?t.__proto__=i:r(t,i),t}}({},!1):void 0),check}},5698:(t,o,i)=>{"use strict";var r=i(43280),a=i(47208),l=i(60510),u=i(75179),c=i(24300)("species");t.exports=function(t){var o="function"==typeof a[t]?a[t]:r[t];u&&o&&!o[c]&&l.f(o,c,{configurable:!0,get:function(){return this}})}},2413:(t,o,i)=>{var r=i(60510).f,a=i(20657),l=i(24300)("toStringTag");t.exports=function(t,o,i){t&&!a(t=i?t:t.prototype,l)&&r(t,l,{configurable:!0,value:o})}},18478:(t,o,i)=>{var r=i(29990)("keys"),a=i(54251);t.exports=function(t){return r[t]||(r[t]=a(t))}},29990:(t,o,i)=>{var r=i(47208),a=i(43280),l="__core-js_shared__",u=a[l]||(a[l]={});(t.exports=function(t,o){return u[t]||(u[t]=void 0!==o?o:{})})("versions",[]).push({version:r.version,mode:i(36794)?"pure":"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})},73732:(t,o,i)=>{var r=i(30498),a=i(26610),l=i(24300)("species");t.exports=function(t,o){var i,u=r(t).constructor;return void 0===u||null==(i=r(u)[l])?o:a(i)}},78502:(t,o,i)=>{var r=i(58290),a=i(18239);t.exports=function(t){return function(o,i){var l,u,c=String(a(o)),d=r(i),m=c.length;return d<0||d>=m?t?"":void 0:(l=c.charCodeAt(d))<55296||l>56319||d+1===m||(u=c.charCodeAt(d+1))<56320||u>57343?t?c.charAt(d):l:t?c.slice(d,d+2):u-56320+(l-55296<<10)+65536}}},71963:(t,o,i)=>{var r=i(98310),a=i(18239),l=i(90472),u=i(18458),c="["+u+"]",d=RegExp("^"+c+c+"*"),m=RegExp(c+c+"*$"),exporter=function(t,o,i){var a={},c=l((function(){return!!u[t]()||"​…"!="​…"[t]()})),d=a[t]=c?o(p):u[t];i&&(a[i]=d),r(r.P+r.F*c,"String",a)},p=exporter.trim=function(t,o){return t=String(a(t)),1&o&&(t=t.replace(d,"")),2&o&&(t=t.replace(m,"")),t};t.exports=exporter},18458:t=>{t.exports="\t\n\v\f\r   ᠎              \u2028\u2029\ufeff"},6022:(t,o,i)=>{var r,a,l,u=i(61725),c=i(19897),d=i(92477),m=i(48765),p=i(43280),h=p.process,g=p.setImmediate,v=p.clearImmediate,y=p.MessageChannel,C=p.Dispatch,b=0,w={},k="onreadystatechange",run=function(){var t=+this;if(w.hasOwnProperty(t)){var o=w[t];delete w[t],o()}},listener=function(t){run.call(t.data)};g&&v||(g=function setImmediate(t){for(var o=[],i=1;arguments.length>i;)o.push(arguments[i++]);return w[++b]=function(){c("function"==typeof t?t:Function(t),o)},r(b),b},v=function clearImmediate(t){delete w[t]},"process"==i(41352)(h)?r=function(t){h.nextTick(u(run,t,1))}:C&&C.now?r=function(t){C.now(u(run,t,1))}:y?(l=(a=new y).port2,a.port1.onmessage=listener,r=u(l.postMessage,l,1)):p.addEventListener&&"function"==typeof postMessage&&!p.importScripts?(r=function(t){p.postMessage(t+"","*")},p.addEventListener("message",listener,!1)):r=k in m("script")?function(t){d.appendChild(m("script")).onreadystatechange=function(){d.removeChild(this),run.call(t)}}:function(t){setTimeout(u(run,t,1),0)}),t.exports={set:g,clear:v}},46723:(t,o,i)=>{var r=i(58290),a=Math.max,l=Math.min;t.exports=function(t,o){return(t=r(t))<0?a(t+o,0):l(t,o)}},58290:t=>{var o=Math.ceil,i=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?i:o)(t)}},1504:(t,o,i)=>{var r=i(13115),a=i(18239);t.exports=function(t){return r(a(t))}},37154:(t,o,i)=>{var r=i(58290),a=Math.min;t.exports=function(t){return t>0?a(r(t),9007199254740991):0}},60061:(t,o,i)=>{var r=i(18239);t.exports=function(t){return Object(r(t))}},12737:(t,o,i)=>{var r=i(39632);t.exports=function(t,o){if(!r(t))return t;var i,a;if(o&&"function"==typeof(i=t.toString)&&!r(a=i.call(t)))return a;if("function"==typeof(i=t.valueOf)&&!r(a=i.call(t)))return a;if(!o&&"function"==typeof(i=t.toString)&&!r(a=i.call(t)))return a;throw TypeError("Can't convert object to primitive value")}},54251:t=>{var o=0,i=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++o+i).toString(36))}},35701:(t,o,i)=>{var r=i(43280).navigator;t.exports=r&&r.userAgent||""},41081:(t,o,i)=>{var r=i(39632);t.exports=function(t,o){if(!r(t)||t._t!==o)throw TypeError("Incompatible receiver, "+o+" required!");return t}},31164:(t,o,i)=>{var r=i(43280),a=i(47208),l=i(36794),u=i(7273),c=i(60510).f;t.exports=function(t){var o=a.Symbol||(a.Symbol=l?{}:r.Symbol||{});"_"==t.charAt(0)||t in o||c(o,t,{value:u.f(t)})}},7273:(t,o,i)=>{o.f=i(24300)},24300:(t,o,i)=>{var r=i(29990)("wks"),a=i(54251),l=i(43280).Symbol,u="function"==typeof l;(t.exports=function(t){return r[t]||(r[t]=u&&l[t]||(u?l:a)("Symbol."+t))}).store=r},26116:(t,o,i)=>{var r=i(8312),a=i(24300)("iterator"),l=i(79105);t.exports=i(47208).getIteratorMethod=function(t){if(null!=t)return t[a]||t["@@iterator"]||l[r(t)]}},48598:(t,o,i)=>{var r=i(8312),a=i(24300)("iterator"),l=i(79105);t.exports=i(47208).isIterable=function(t){var o=Object(t);return void 0!==o[a]||"@@iterator"in o||l.hasOwnProperty(r(o))}},37627:(t,o,i)=>{"use strict";var r=i(61725),a=i(98310),l=i(60061),u=i(93086),c=i(11827),d=i(37154),m=i(87352),p=i(26116);a(a.S+a.F*!i(26797)((function(t){Array.from(t)})),"Array",{from:function from(t){var o,i,a,h,g=l(t),v="function"==typeof this?this:Array,y=arguments.length,C=y>1?arguments[1]:void 0,b=void 0!==C,w=0,k=p(g);if(b&&(C=r(C,y>2?arguments[2]:void 0,2)),null==k||v==Array&&c(k))for(i=new v(o=d(g.length));o>w;w++)m(i,w,b?C(g[w],w):g[w]);else for(h=k.call(g),i=new v;!(a=h.next()).done;w++)m(i,w,b?u(h,C,[a.value,w],!0):a.value);return i.length=w,i}})},42580:(t,o,i)=>{var r=i(98310);r(r.S,"Array",{isArray:i(7359)})},84411:(t,o,i)=>{"use strict";var r=i(29697),a=i(9329),l=i(79105),u=i(1504);t.exports=i(6125)(Array,"Array",(function(t,o){this._t=u(t),this._i=0,this._k=o}),(function(){var t=this._t,o=this._k,i=this._i++;return!t||i>=t.length?(this._t=void 0,a(1)):a(0,"keys"==o?i:"values"==o?t[i]:[i,t[i]])}),"values"),l.Arguments=l.Array,r("keys"),r("values"),r("entries")},78760:(t,o,i)=>{"use strict";var r=i(39632),a=i(999),l=i(24300)("hasInstance"),u=Function.prototype;l in u||i(60510).f(u,l,{value:function(t){if("function"!=typeof this||!r(t))return!1;if(!r(this.prototype))return t instanceof this;for(;t=a(t);)if(this.prototype===t)return!0;return!1}})},99954:(t,o,i)=>{var r=i(98310);r(r.S+r.F,"Object",{assign:i(77995)})},30785:(t,o,i)=>{var r=i(98310);r(r.S,"Object",{create:i(82488)})},23078:(t,o,i)=>{var r=i(98310);r(r.S+r.F*!i(75179),"Object",{defineProperties:i(36607)})},40168:(t,o,i)=>{var r=i(98310);r(r.S+r.F*!i(75179),"Object",{defineProperty:i(60510).f})},18576:(t,o,i)=>{var r=i(1504),a=i(83264).f;i(57972)("getOwnPropertyDescriptor",(function(){return function getOwnPropertyDescriptor(t,o){return a(r(t),o)}}))},4840:(t,o,i)=>{var r=i(60061),a=i(999);i(57972)("getPrototypeOf",(function(){return function getPrototypeOf(t){return a(r(t))}}))},5453:(t,o,i)=>{var r=i(60061),a=i(86425);i(57972)("keys",(function(){return function keys(t){return a(r(t))}}))},13890:(t,o,i)=>{var r=i(98310);r(r.S,"Object",{setPrototypeOf:i(25574).set})},70285:()=>{},24399:(t,o,i)=>{var r=i(98310),a=i(60162);r(r.G+r.F*(parseInt!=a),{parseInt:a})},86082:(t,o,i)=>{"use strict";var r,a,l,u,c=i(36794),d=i(43280),m=i(61725),p=i(8312),h=i(98310),g=i(39632),v=i(26610),y=i(54677),C=i(25985),b=i(73732),w=i(6022).set,k=i(4326)(),S=i(88579),x=i(52745),T=i(35701),M=i(88747),P="Promise",E=d.TypeError,I=d.process,R=I&&I.versions,D=R&&R.v8||"",V=d.Promise,A="process"==p(I),empty=function(){},B=a=S.f,$=!!function(){try{var t=V.resolve(1),o=(t.constructor={})[i(24300)("species")]=function(t){t(empty,empty)};return(A||"function"==typeof PromiseRejectionEvent)&&t.then(empty)instanceof o&&0!==D.indexOf("6.6")&&-1===T.indexOf("Chrome/66")}catch(t){}}(),isThenable=function(t){var o;return!(!g(t)||"function"!=typeof(o=t.then))&&o},notify=function(t,o){if(!t._n){t._n=!0;var i=t._c;k((function(){for(var r=t._v,a=1==t._s,l=0,run=function(o){var i,l,u,c=a?o.ok:o.fail,d=o.resolve,m=o.reject,p=o.domain;try{c?(a||(2==t._h&&onHandleUnhandled(t),t._h=1),!0===c?i=r:(p&&p.enter(),i=c(r),p&&(p.exit(),u=!0)),i===o.promise?m(E("Promise-chain cycle")):(l=isThenable(i))?l.call(i,d,m):d(i)):m(r)}catch(t){p&&!u&&p.exit(),m(t)}};i.length>l;)run(i[l++]);t._c=[],t._n=!1,o&&!t._h&&onUnhandled(t)}))}},onUnhandled=function(t){w.call(d,(function(){var o,i,r,a=t._v,l=isUnhandled(t);if(l&&(o=x((function(){A?I.emit("unhandledRejection",a,t):(i=d.onunhandledrejection)?i({promise:t,reason:a}):(r=d.console)&&r.error&&r.error("Unhandled promise rejection",a)})),t._h=A||isUnhandled(t)?2:1),t._a=void 0,l&&o.e)throw o.v}))},isUnhandled=function(t){return 1!==t._h&&0===(t._a||t._c).length},onHandleUnhandled=function(t){w.call(d,(function(){var o;A?I.emit("rejectionHandled",t):(o=d.onrejectionhandled)&&o({promise:t,reason:t._v})}))},$reject=function(t){var o=this;o._d||(o._d=!0,(o=o._w||o)._v=t,o._s=2,o._a||(o._a=o._c.slice()),notify(o,!0))},$resolve=function(t){var o,i=this;if(!i._d){i._d=!0,i=i._w||i;try{if(i===t)throw E("Promise can't be resolved itself");(o=isThenable(t))?k((function(){var r={_w:i,_d:!1};try{o.call(t,m($resolve,r,1),m($reject,r,1))}catch(t){$reject.call(r,t)}})):(i._v=t,i._s=1,notify(i,!1))}catch(t){$reject.call({_w:i,_d:!1},t)}}};$||(V=function Promise(t){y(this,V,P,"_h"),v(t),r.call(this);try{t(m($resolve,this,1),m($reject,this,1))}catch(t){$reject.call(this,t)}},(r=function Promise(t){this._c=[],this._a=void 0,this._s=0,this._d=!1,this._v=void 0,this._h=0,this._n=!1}).prototype=i(13199)(V.prototype,{then:function then(t,o){var i=B(b(this,V));return i.ok="function"!=typeof t||t,i.fail="function"==typeof o&&o,i.domain=A?I.domain:void 0,this._c.push(i),this._a&&this._a.push(i),this._s&&notify(this,!1),i.promise},catch:function(t){return this.then(void 0,t)}}),l=function(){var t=new r;this.promise=t,this.resolve=m($resolve,t,1),this.reject=m($reject,t,1)},S.f=B=function(t){return t===V||t===u?new l(t):a(t)}),h(h.G+h.W+h.F*!$,{Promise:V}),i(2413)(V,P),i(5698)(P),u=i(47208).Promise,h(h.S+h.F*!$,P,{reject:function reject(t){var o=B(this);return(0,o.reject)(t),o.promise}}),h(h.S+h.F*(c||!$),P,{resolve:function resolve(t){return M(c&&this===u?V:this,t)}}),h(h.S+h.F*!($&&i(26797)((function(t){V.all(t).catch(empty)}))),P,{all:function all(t){var o=this,i=B(o),r=i.resolve,a=i.reject,l=x((function(){var i=[],l=0,u=1;C(t,!1,(function(t){var c=l++,d=!1;i.push(void 0),u++,o.resolve(t).then((function(t){d||(d=!0,i[c]=t,--u||r(i))}),a)})),--u||r(i)}));return l.e&&a(l.v),i.promise},race:function race(t){var o=this,i=B(o),r=i.reject,a=x((function(){C(t,!1,(function(t){o.resolve(t).then(i.resolve,r)}))}));return a.e&&r(a.v),i.promise}})},11320:(t,o,i)=>{var r=i(98310),a=i(82488),l=i(26610),u=i(30498),c=i(39632),d=i(90472),m=i(45515),p=(i(43280).Reflect||{}).construct,h=d((function(){function F(){}return!(p((function(){}),[],F)instanceof F)})),g=!d((function(){p((function(){}))}));r(r.S+r.F*(h||g),"Reflect",{construct:function construct(t,o){l(t),u(o);var i=arguments.length<3?t:l(arguments[2]);if(g&&!h)return p(t,o,i);if(t==i){switch(o.length){case 0:return new t;case 1:return new t(o[0]);case 2:return new t(o[0],o[1]);case 3:return new t(o[0],o[1],o[2]);case 4:return new t(o[0],o[1],o[2],o[3])}var r=[null];return r.push.apply(r,o),new(m.apply(t,r))}var d=i.prototype,v=a(c(d)?d:Object.prototype),y=Function.apply.call(t,v,o);return c(y)?y:v}})},36600:(t,o,i)=>{var r=i(83264),a=i(999),l=i(20657),u=i(98310),c=i(39632),d=i(30498);u(u.S,"Reflect",{get:function get(t,o){var i,u,m=arguments.length<3?t:arguments[2];return d(t)===m?t[o]:(i=r.f(t,o))?l(i,"value")?i.value:void 0!==i.get?i.get.call(m):void 0:c(u=a(t))?get(u,o,m):void 0}})},99572:(t,o,i)=>{"use strict";var r=i(78502)(!0);i(6125)(String,"String",(function(t){this._t=String(t),this._i=0}),(function(){var t,o=this._t,i=this._i;return i>=o.length?{value:void 0,done:!0}:(t=r(o,i),this._i+=t.length,{value:t,done:!1})}))},54370:(t,o,i)=>{"use strict";var r=i(43280),a=i(20657),l=i(75179),u=i(98310),c=i(19312),d=i(6758).KEY,m=i(90472),p=i(29990),h=i(2413),g=i(54251),v=i(24300),y=i(7273),C=i(31164),b=i(42266),w=i(7359),k=i(30498),S=i(39632),x=i(60061),T=i(1504),M=i(12737),P=i(48439),E=i(82488),I=i(26084),R=i(83264),D=i(97739),V=i(60510),A=i(86425),B=R.f,$=V.f,O=I.f,L=r.Symbol,j=r.JSON,N=j&&j.stringify,z=v("_hidden"),G=v("toPrimitive"),U={}.propertyIsEnumerable,H=p("symbol-registry"),q=p("symbols"),W=p("op-symbols"),K=Object.prototype,Q="function"==typeof L&&!!D.f,J=r.QObject,Y=!J||!J.prototype||!J.prototype.findChild,X=l&&m((function(){return 7!=E($({},"a",{get:function(){return $(this,"a",{value:7}).a}})).a}))?function(t,o,i){var r=B(K,o);r&&delete K[o],$(t,o,i),r&&t!==K&&$(K,o,r)}:$,wrap=function(t){var o=q[t]=E(L.prototype);return o._k=t,o},Z=Q&&"symbol"==typeof L.iterator?function(t){return"symbol"==typeof t}:function(t){return t instanceof L},ee=function defineProperty(t,o,i){return t===K&&ee(W,o,i),k(t),o=M(o,!0),k(i),a(q,o)?(i.enumerable?(a(t,z)&&t[z][o]&&(t[z][o]=!1),i=E(i,{enumerable:P(0,!1)})):(a(t,z)||$(t,z,P(1,{})),t[z][o]=!0),X(t,o,i)):$(t,o,i)},te=function defineProperties(t,o){k(t);for(var i,r=b(o=T(o)),a=0,l=r.length;l>a;)ee(t,i=r[a++],o[i]);return t},ne=function propertyIsEnumerable(t){var o=U.call(this,t=M(t,!0));return!(this===K&&a(q,t)&&!a(W,t))&&(!(o||!a(this,t)||!a(q,t)||a(this,z)&&this[z][t])||o)},oe=function getOwnPropertyDescriptor(t,o){if(t=T(t),o=M(o,!0),t!==K||!a(q,o)||a(W,o)){var i=B(t,o);return!i||!a(q,o)||a(t,z)&&t[z][o]||(i.enumerable=!0),i}},ie=function getOwnPropertyNames(t){for(var o,i=O(T(t)),r=[],l=0;i.length>l;)a(q,o=i[l++])||o==z||o==d||r.push(o);return r},re=function getOwnPropertySymbols(t){for(var o,i=t===K,r=O(i?W:T(t)),l=[],u=0;r.length>u;)!a(q,o=r[u++])||i&&!a(K,o)||l.push(q[o]);return l};Q||(c((L=function Symbol(){if(this instanceof L)throw TypeError("Symbol is not a constructor!");var t=g(arguments.length>0?arguments[0]:void 0),$set=function(o){this===K&&$set.call(W,o),a(this,z)&&a(this[z],t)&&(this[z][t]=!1),X(this,t,P(1,o))};return l&&Y&&X(K,t,{configurable:!0,set:$set}),wrap(t)}).prototype,"toString",(function toString(){return this._k})),R.f=oe,V.f=ee,i(8772).f=I.f=ie,i(67410).f=ne,D.f=re,l&&!i(36794)&&c(K,"propertyIsEnumerable",ne,!0),y.f=function(t){return wrap(v(t))}),u(u.G+u.W+u.F*!Q,{Symbol:L});for(var ae="hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),le=0;ae.length>le;)v(ae[le++]);for(var se=A(v.store),ue=0;se.length>ue;)C(se[ue++]);u(u.S+u.F*!Q,"Symbol",{for:function(t){return a(H,t+="")?H[t]:H[t]=L(t)},keyFor:function keyFor(t){if(!Z(t))throw TypeError(t+" is not a symbol!");for(var o in H)if(H[o]===t)return o},useSetter:function(){Y=!0},useSimple:function(){Y=!1}}),u(u.S+u.F*!Q,"Object",{create:function create(t,o){return void 0===o?E(t):te(E(t),o)},defineProperty:ee,defineProperties:te,getOwnPropertyDescriptor:oe,getOwnPropertyNames:ie,getOwnPropertySymbols:re});var ce=m((function(){D.f(1)}));u(u.S+u.F*ce,"Object",{getOwnPropertySymbols:function getOwnPropertySymbols(t){return D.f(x(t))}}),j&&u(u.S+u.F*(!Q||m((function(){var t=L();return"[null]"!=N([t])||"{}"!=N({a:t})||"{}"!=N(Object(t))}))),"JSON",{stringify:function stringify(t){for(var o,i,r=[t],a=1;arguments.length>a;)r.push(arguments[a++]);if(i=o=r[1],(S(o)||void 0!==t)&&!Z(t))return w(o)||(o=function(t,o){if("function"==typeof i&&(o=i.call(this,t,o)),!Z(o))return o}),r[1]=o,N.apply(j,r)}}),L.prototype[G]||i(62292)(L.prototype,G,L.prototype.valueOf),h(L,"Symbol"),h(Math,"Math",!0),h(r.JSON,"JSON",!0)},23337:(t,o,i)=>{"use strict";var r,a=i(43280),l=i(97647)(0),u=i(19312),c=i(6758),d=i(77995),m=i(92600),p=i(39632),h=i(41081),g=i(41081),v=!a.ActiveXObject&&"ActiveXObject"in a,y="WeakMap",C=c.getWeak,b=Object.isExtensible,w=m.ufstore,wrapper=function(t){return function WeakMap(){return t(this,arguments.length>0?arguments[0]:void 0)}},k={get:function get(t){if(p(t)){var o=C(t);return!0===o?w(h(this,y)).get(t):o?o[this._i]:void 0}},set:function set(t,o){return m.def(h(this,y),t,o)}},S=t.exports=i(70770)(y,wrapper,k,m,!0,!0);g&&v&&(d((r=m.getConstructor(wrapper,y)).prototype,k),c.NEED=!0,l(["delete","has","get","set"],(function(t){var o=S.prototype,i=o[t];u(o,t,(function(o,a){if(p(o)&&!b(o)){this._f||(this._f=new r);var l=this._f[t](o,a);return"set"==t?this:l}return i.call(this,o,a)}))})))},95260:(t,o,i)=>{var r=i(98310),a=i(9480)(!0);r(r.S,"Object",{entries:function entries(t){return a(t)}})},67685:(t,o,i)=>{var r=i(98310),a=i(64344),l=i(1504),u=i(83264),c=i(87352);r(r.S,"Object",{getOwnPropertyDescriptors:function getOwnPropertyDescriptors(t){for(var o,i,r=l(t),d=u.f,m=a(r),p={},h=0;m.length>h;)void 0!==(i=d(r,o=m[h++]))&&c(p,o,i);return p}})},57188:(t,o,i)=>{var r=i(98310),a=i(9480)(!1);r(r.S,"Object",{values:function values(t){return a(t)}})},81522:(t,o,i)=>{"use strict";var r=i(98310),a=i(47208),l=i(43280),u=i(73732),c=i(88747);r(r.P+r.R,"Promise",{finally:function(t){var o=u(this,a.Promise||l.Promise),i="function"==typeof t;return this.then(i?function(i){return c(o,t()).then((function(){return i}))}:t,i?function(i){return c(o,t()).then((function(){throw i}))}:t)}})},25757:(t,o,i)=>{"use strict";var r=i(98310),a=i(88579),l=i(52745);r(r.S,"Promise",{try:function(t){var o=a.f(this),i=l(t);return(i.e?o.reject:o.resolve)(i.v),o.promise}})},87573:(t,o,i)=>{i(31164)("asyncIterator")},97224:(t,o,i)=>{i(31164)("observable")},92797:(t,o,i)=>{i(14689)("WeakMap")},10143:(t,o,i)=>{i(7883)("WeakMap")},74114:(t,o,i)=>{i(84411);for(var r=i(43280),a=i(62292),l=i(79105),u=i(24300)("toStringTag"),c="CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList".split(","),d=0;d<c.length;d++){var m=c[d],p=r[m],h=p&&p.prototype;h&&!h[u]&&a(h,u,m),l[m]=l.Array}},22761:t=>{t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},42094:(t,o,i)=>{var r=i(62190)("unscopables"),a=Array.prototype;null==a[r]&&i(74216)(a,r,{}),t.exports=function(t){a[r][t]=!0}},88492:(t,o,i)=>{"use strict";var r=i(12070)(!0);t.exports=function(t,o,i){return o+(i?r(t,o).length:1)}},35824:t=>{t.exports=function(t,o,i,r){if(!(t instanceof o)||void 0!==r&&r in t)throw TypeError(i+": incorrect invocation!");return t}},6365:(t,o,i)=>{var r=i(67334);t.exports=function(t){if(!r(t))throw TypeError(t+" is not an object!");return t}},59021:(t,o,i)=>{var r=i(15703),a=i(26078),l=i(78615);t.exports=function(t){return function(o,i,u){var c,d=r(o),m=a(d.length),p=l(u,m);if(t&&i!=i){for(;m>p;)if((c=d[p++])!=c)return!0}else for(;m>p;p++)if((t||p in d)&&d[p]===i)return t||p||0;return!t&&-1}}},78309:(t,o,i)=>{var r=i(11528),a=i(8467),l=i(26033),u=i(26078),c=i(63531);t.exports=function(t,o){var i=1==t,d=2==t,m=3==t,p=4==t,h=6==t,g=5==t||h,v=o||c;return function(o,c,y){for(var C,b,w=l(o),k=a(w),S=r(c,y,3),x=u(k.length),T=0,M=i?v(o,x):d?v(o,0):void 0;x>T;T++)if((g||T in k)&&(b=S(C=k[T],T,w),t))if(i)M[T]=b;else if(b)switch(t){case 3:return!0;case 5:return C;case 6:return T;case 2:M.push(C)}else if(p)return!1;return h?-1:m||p?p:M}}},81071:(t,o,i)=>{var r=i(67334),a=i(99141),l=i(62190)("species");t.exports=function(t){var o;return a(t)&&("function"!=typeof(o=t.constructor)||o!==Array&&!a(o.prototype)||(o=void 0),r(o)&&null===(o=o[l])&&(o=void 0)),void 0===o?Array:o}},63531:(t,o,i)=>{var r=i(81071);t.exports=function(t,o){return new(r(t))(o)}},20106:(t,o,i)=>{var r=i(26688),a=i(62190)("toStringTag"),l="Arguments"==r(function(){return arguments}());t.exports=function(t){var o,i,u;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(i=function(t,o){try{return t[o]}catch(t){}}(o=Object(t),a))?i:l?r(o):"Object"==(u=r(o))&&"function"==typeof o.callee?"Arguments":u}},26688:t=>{var o={}.toString;t.exports=function(t){return o.call(t).slice(8,-1)}},60066:t=>{var o=t.exports={version:"2.6.12"};"number"==typeof __e&&(__e=o)},11528:(t,o,i)=>{var r=i(22761);t.exports=function(t,o,i){if(r(t),void 0===o)return t;switch(i){case 1:return function(i){return t.call(o,i)};case 2:return function(i,r){return t.call(o,i,r)};case 3:return function(i,r,a){return t.call(o,i,r,a)}}return function(){return t.apply(o,arguments)}}},61622:t=>{t.exports=function(t){if(null==t)throw TypeError("Can't call method on  "+t);return t}},36628:(t,o,i)=>{t.exports=!i(48625)((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},5050:(t,o,i)=>{var r=i(67334),a=i(38113).document,l=r(a)&&r(a.createElement);t.exports=function(t){return l?a.createElement(t):{}}},33603:t=>{t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},65772:(t,o,i)=>{var r=i(38113),a=i(60066),l=i(74216),u=i(17738),c=i(11528),$export=function(t,o,i){var d,m,p,h,g=t&$export.F,v=t&$export.G,y=t&$export.S,C=t&$export.P,b=t&$export.B,w=v?r:y?r[o]||(r[o]={}):(r[o]||{}).prototype,k=v?a:a[o]||(a[o]={}),S=k.prototype||(k.prototype={});for(d in v&&(i=o),i)p=((m=!g&&w&&void 0!==w[d])?w:i)[d],h=b&&m?c(p,r):C&&"function"==typeof p?c(Function.call,p):p,w&&u(w,d,p,t&$export.U),k[d]!=p&&l(k,d,h),C&&S[d]!=p&&(S[d]=p)};r.core=a,$export.F=1,$export.G=2,$export.S=4,$export.P=8,$export.B=16,$export.W=32,$export.U=64,$export.R=128,t.exports=$export},86570:(t,o,i)=>{var r=i(62190)("match");t.exports=function(t){var o=/./;try{"/./"[t](o)}catch(i){try{return o[r]=!1,!"/./"[t](o)}catch(t){}}return!0}},48625:t=>{t.exports=function(t){try{return!!t()}catch(t){return!0}}},48897:(t,o,i)=>{"use strict";i(25846);var r=i(17738),a=i(74216),l=i(48625),u=i(61622),c=i(62190),d=i(43288),m=c("species"),p=!l((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$<a>")})),h=function(){var t=/(?:)/,o=t.exec;t.exec=function(){return o.apply(this,arguments)};var i="ab".split(t);return 2===i.length&&"a"===i[0]&&"b"===i[1]}();t.exports=function(t,o,i){var g=c(t),v=!l((function(){var o={};return o[g]=function(){return 7},7!=""[t](o)})),y=v?!l((function(){var o=!1,i=/a/;return i.exec=function(){return o=!0,null},"split"===t&&(i.constructor={},i.constructor[m]=function(){return i}),i[g](""),!o})):void 0;if(!v||!y||"replace"===t&&!p||"split"===t&&!h){var C=/./[g],b=i(u,g,""[t],(function maybeCallNative(t,o,i,r,a){return o.exec===d?v&&!a?{done:!0,value:C.call(o,i,r)}:{done:!0,value:t.call(i,o,r)}:{done:!1}})),w=b[0],k=b[1];r(String.prototype,t,w),a(RegExp.prototype,g,2==o?function(t,o){return k.call(t,this,o)}:function(t){return k.call(t,this)})}}},74859:(t,o,i)=>{"use strict";var r=i(6365);t.exports=function(){var t=r(this),o="";return t.global&&(o+="g"),t.ignoreCase&&(o+="i"),t.multiline&&(o+="m"),t.unicode&&(o+="u"),t.sticky&&(o+="y"),o}},91891:(t,o,i)=>{var r=i(11528),a=i(33221),l=i(28908),u=i(6365),c=i(26078),d=i(7107),m={},p={},h=t.exports=function(t,o,i,h,g){var v,y,C,b,w=g?function(){return t}:d(t),k=r(i,h,o?2:1),S=0;if("function"!=typeof w)throw TypeError(t+" is not iterable!");if(l(w)){for(v=c(t.length);v>S;S++)if((b=o?k(u(y=t[S])[0],y[1]):k(t[S]))===m||b===p)return b}else for(C=w.call(t);!(y=C.next()).done;)if((b=a(C,k,y.value,o))===m||b===p)return b};h.BREAK=m,h.RETURN=p},20646:(t,o,i)=>{t.exports=i(8655)("native-function-to-string",Function.toString)},38113:t=>{var o=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=o)},54040:t=>{var o={}.hasOwnProperty;t.exports=function(t,i){return o.call(t,i)}},74216:(t,o,i)=>{var r=i(98558),a=i(36061);t.exports=i(36628)?function(t,o,i){return r.f(t,o,a(1,i))}:function(t,o,i){return t[o]=i,t}},8954:(t,o,i)=>{var r=i(38113).document;t.exports=r&&r.documentElement},5100:(t,o,i)=>{t.exports=!i(36628)&&!i(48625)((function(){return 7!=Object.defineProperty(i(5050)("div"),"a",{get:function(){return 7}}).a}))},18938:(t,o,i)=>{var r=i(67334),a=i(86095).set;t.exports=function(t,o,i){var l,u=o.constructor;return u!==i&&"function"==typeof u&&(l=u.prototype)!==i.prototype&&r(l)&&a&&a(t,l),t}},97757:t=>{t.exports=function(t,o,i){var r=void 0===i;switch(o.length){case 0:return r?t():t.call(i);case 1:return r?t(o[0]):t.call(i,o[0]);case 2:return r?t(o[0],o[1]):t.call(i,o[0],o[1]);case 3:return r?t(o[0],o[1],o[2]):t.call(i,o[0],o[1],o[2]);case 4:return r?t(o[0],o[1],o[2],o[3]):t.call(i,o[0],o[1],o[2],o[3])}return t.apply(i,o)}},8467:(t,o,i)=>{var r=i(26688);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==r(t)?t.split(""):Object(t)}},28908:(t,o,i)=>{var r=i(23988),a=i(62190)("iterator"),l=Array.prototype;t.exports=function(t){return void 0!==t&&(r.Array===t||l[a]===t)}},99141:(t,o,i)=>{var r=i(26688);t.exports=Array.isArray||function isArray(t){return"Array"==r(t)}},67334:t=>{t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},94587:(t,o,i)=>{var r=i(67334),a=i(26688),l=i(62190)("match");t.exports=function(t){var o;return r(t)&&(void 0!==(o=t[l])?!!o:"RegExp"==a(t))}},33221:(t,o,i)=>{var r=i(6365);t.exports=function(t,o,i,a){try{return a?o(r(i)[0],i[1]):o(i)}catch(o){var l=t.return;throw void 0!==l&&r(l.call(t)),o}}},46445:(t,o,i)=>{"use strict";var r=i(82897),a=i(36061),l=i(55727),u={};i(74216)(u,i(62190)("iterator"),(function(){return this})),t.exports=function(t,o,i){t.prototype=r(u,{next:a(1,i)}),l(t,o+" Iterator")}},61195:(t,o,i)=>{"use strict";var r=i(81422),a=i(65772),l=i(17738),u=i(74216),c=i(23988),d=i(46445),m=i(55727),p=i(19002),h=i(62190)("iterator"),g=!([].keys&&"next"in[].keys()),v="keys",y="values",returnThis=function(){return this};t.exports=function(t,o,i,C,b,w,k){d(i,o,C);var S,x,T,getMethod=function(t){if(!g&&t in I)return I[t];switch(t){case v:return function keys(){return new i(this,t)};case y:return function values(){return new i(this,t)}}return function entries(){return new i(this,t)}},M=o+" Iterator",P=b==y,E=!1,I=t.prototype,R=I[h]||I["@@iterator"]||b&&I[b],D=R||getMethod(b),V=b?P?getMethod("entries"):D:void 0,A="Array"==o&&I.entries||R;if(A&&(T=p(A.call(new t)))!==Object.prototype&&T.next&&(m(T,M,!0),r||"function"==typeof T[h]||u(T,h,returnThis)),P&&R&&R.name!==y&&(E=!0,D=function values(){return R.call(this)}),r&&!k||!g&&!E&&I[h]||u(I,h,D),c[o]=D,c[M]=returnThis,b)if(S={values:P?D:getMethod(y),keys:w?D:getMethod(v),entries:V},k)for(x in S)x in I||l(I,x,S[x]);else a(a.P+a.F*(g||E),o,S);return S}},73143:(t,o,i)=>{var r=i(62190)("iterator"),a=!1;try{var l=[7][r]();l.return=function(){a=!0},Array.from(l,(function(){throw 2}))}catch(t){}t.exports=function(t,o){if(!o&&!a)return!1;var i=!1;try{var l=[7],u=l[r]();u.next=function(){return{done:i=!0}},l[r]=function(){return u},t(l)}catch(t){}return i}},35038:t=>{t.exports=function(t,o){return{value:o,done:!!t}}},23988:t=>{t.exports={}},81422:t=>{t.exports=!1},63492:(t,o,i)=>{var r=i(38113),a=i(59124).set,l=r.MutationObserver||r.WebKitMutationObserver,u=r.process,c=r.Promise,d="process"==i(26688)(u);t.exports=function(){var t,o,i,flush=function(){var r,a;for(d&&(r=u.domain)&&r.exit();t;){a=t.fn,t=t.next;try{a()}catch(r){throw t?i():o=void 0,r}}o=void 0,r&&r.enter()};if(d)i=function(){u.nextTick(flush)};else if(!l||r.navigator&&r.navigator.standalone)if(c&&c.resolve){var m=c.resolve(void 0);i=function(){m.then(flush)}}else i=function(){a.call(r,flush)};else{var p=!0,h=document.createTextNode("");new l(flush).observe(h,{characterData:!0}),i=function(){h.data=p=!p}}return function(r){var a={fn:r,next:void 0};o&&(o.next=a),t||(t=a,i()),o=a}}},58577:(t,o,i)=>{"use strict";var r=i(22761);function PromiseCapability(t){var o,i;this.promise=new t((function(t,r){if(void 0!==o||void 0!==i)throw TypeError("Bad Promise constructor");o=t,i=r})),this.resolve=r(o),this.reject=r(i)}t.exports.f=function(t){return new PromiseCapability(t)}},82897:(t,o,i)=>{var r=i(6365),a=i(7331),l=i(33603),u=i(28034)("IE_PROTO"),Empty=function(){},createDict=function(){var t,o=i(5050)("iframe"),r=l.length;for(o.style.display="none",i(8954).appendChild(o),o.src="javascript:",(t=o.contentWindow.document).open(),t.write("<script>document.F=Object<\/script>"),t.close(),createDict=t.F;r--;)delete createDict.prototype[l[r]];return createDict()};t.exports=Object.create||function create(t,o){var i;return null!==t?(Empty.prototype=r(t),i=new Empty,Empty.prototype=null,i[u]=t):i=createDict(),void 0===o?i:a(i,o)}},98558:(t,o,i)=>{var r=i(6365),a=i(5100),l=i(31382),u=Object.defineProperty;o.f=i(36628)?Object.defineProperty:function defineProperty(t,o,i){if(r(t),o=l(o,!0),r(i),a)try{return u(t,o,i)}catch(t){}if("get"in i||"set"in i)throw TypeError("Accessors not supported!");return"value"in i&&(t[o]=i.value),t}},7331:(t,o,i)=>{var r=i(98558),a=i(6365),l=i(42912);t.exports=i(36628)?Object.defineProperties:function defineProperties(t,o){a(t);for(var i,u=l(o),c=u.length,d=0;c>d;)r.f(t,i=u[d++],o[i]);return t}},94662:(t,o,i)=>{var r=i(65873),a=i(36061),l=i(15703),u=i(31382),c=i(54040),d=i(5100),m=Object.getOwnPropertyDescriptor;o.f=i(36628)?m:function getOwnPropertyDescriptor(t,o){if(t=l(t),o=u(o,!0),d)try{return m(t,o)}catch(t){}if(c(t,o))return a(!r.f.call(t,o),t[o])}},76604:(t,o,i)=>{var r=i(75547),a=i(33603).concat("length","prototype");o.f=Object.getOwnPropertyNames||function getOwnPropertyNames(t){return r(t,a)}},19002:(t,o,i)=>{var r=i(54040),a=i(26033),l=i(28034)("IE_PROTO"),u=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=a(t),r(t,l)?t[l]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},75547:(t,o,i)=>{var r=i(54040),a=i(15703),l=i(59021)(!1),u=i(28034)("IE_PROTO");t.exports=function(t,o){var i,c=a(t),d=0,m=[];for(i in c)i!=u&&r(c,i)&&m.push(i);for(;o.length>d;)r(c,i=o[d++])&&(~l(m,i)||m.push(i));return m}},42912:(t,o,i)=>{var r=i(75547),a=i(33603);t.exports=Object.keys||function keys(t){return r(t,a)}},65873:(t,o)=>{o.f={}.propertyIsEnumerable},99739:t=>{t.exports=function(t){try{return{e:!1,v:t()}}catch(t){return{e:!0,v:t}}}},2070:(t,o,i)=>{var r=i(6365),a=i(67334),l=i(58577);t.exports=function(t,o){if(r(t),a(o)&&o.constructor===t)return o;var i=l.f(t);return(0,i.resolve)(o),i.promise}},36061:t=>{t.exports=function(t,o){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:o}}},72243:(t,o,i)=>{var r=i(17738);t.exports=function(t,o,i){for(var a in o)r(t,a,o[a],i);return t}},17738:(t,o,i)=>{var r=i(38113),a=i(74216),l=i(54040),u=i(25078)("src"),c=i(20646),d="toString",m=(""+c).split(d);i(60066).inspectSource=function(t){return c.call(t)},(t.exports=function(t,o,i,c){var d="function"==typeof i;d&&(l(i,"name")||a(i,"name",o)),t[o]!==i&&(d&&(l(i,u)||a(i,u,t[o]?""+t[o]:m.join(String(o)))),t===r?t[o]=i:c?t[o]?t[o]=i:a(t,o,i):(delete t[o],a(t,o,i)))})(Function.prototype,d,(function toString(){return"function"==typeof this&&this[u]||c.call(this)}))},62404:(t,o,i)=>{"use strict";var r=i(20106),a=RegExp.prototype.exec;t.exports=function(t,o){var i=t.exec;if("function"==typeof i){var l=i.call(t,o);if("object"!=typeof l)throw new TypeError("RegExp exec method returned something other than an Object or null");return l}if("RegExp"!==r(t))throw new TypeError("RegExp#exec called on incompatible receiver");return a.call(t,o)}},43288:(t,o,i)=>{"use strict";var r,a,l=i(74859),u=RegExp.prototype.exec,c=String.prototype.replace,d=u,m=(r=/a/,a=/b*/g,u.call(r,"a"),u.call(a,"a"),0!==r.lastIndex||0!==a.lastIndex),p=void 0!==/()??/.exec("")[1];(m||p)&&(d=function exec(t){var o,i,r,a,d=this;return p&&(i=new RegExp("^"+d.source+"$(?!\\s)",l.call(d))),m&&(o=d.lastIndex),r=u.call(d,t),m&&r&&(d.lastIndex=d.global?r.index+r[0].length:o),p&&r&&r.length>1&&c.call(r[0],i,(function(){for(a=1;a<arguments.length-2;a++)void 0===arguments[a]&&(r[a]=void 0)})),r}),t.exports=d},80339:t=>{t.exports=Object.is||function is(t,o){return t===o?0!==t||1/t==1/o:t!=t&&o!=o}},86095:(t,o,i)=>{var r=i(67334),a=i(6365),check=function(t,o){if(a(t),!r(o)&&null!==o)throw TypeError(o+": can't set as prototype!")};t.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(t,o,r){try{(r=i(11528)(Function.call,i(94662).f(Object.prototype,"__proto__").set,2))(t,[]),o=!(t instanceof Array)}catch(t){o=!0}return function setPrototypeOf(t,i){return check(t,i),o?t.__proto__=i:r(t,i),t}}({},!1):void 0),check}},49766:(t,o,i)=>{"use strict";var r=i(38113),a=i(98558),l=i(36628),u=i(62190)("species");t.exports=function(t){var o=r[t];l&&o&&!o[u]&&a.f(o,u,{configurable:!0,get:function(){return this}})}},55727:(t,o,i)=>{var r=i(98558).f,a=i(54040),l=i(62190)("toStringTag");t.exports=function(t,o,i){t&&!a(t=i?t:t.prototype,l)&&r(t,l,{configurable:!0,value:o})}},28034:(t,o,i)=>{var r=i(8655)("keys"),a=i(25078);t.exports=function(t){return r[t]||(r[t]=a(t))}},8655:(t,o,i)=>{var r=i(60066),a=i(38113),l="__core-js_shared__",u=a[l]||(a[l]={});(t.exports=function(t,o){return u[t]||(u[t]=void 0!==o?o:{})})("versions",[]).push({version:r.version,mode:i(81422)?"pure":"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})},11987:(t,o,i)=>{var r=i(6365),a=i(22761),l=i(62190)("species");t.exports=function(t,o){var i,u=r(t).constructor;return void 0===u||null==(i=r(u)[l])?o:a(i)}},10225:(t,o,i)=>{"use strict";var r=i(48625);t.exports=function(t,o){return!!t&&r((function(){o?t.call(null,(function(){}),1):t.call(null)}))}},12070:(t,o,i)=>{var r=i(3338),a=i(61622);t.exports=function(t){return function(o,i){var l,u,c=String(a(o)),d=r(i),m=c.length;return d<0||d>=m?t?"":void 0:(l=c.charCodeAt(d))<55296||l>56319||d+1===m||(u=c.charCodeAt(d+1))<56320||u>57343?t?c.charAt(d):l:t?c.slice(d,d+2):u-56320+(l-55296<<10)+65536}}},465:(t,o,i)=>{var r=i(94587),a=i(61622);t.exports=function(t,o,i){if(r(o))throw TypeError("String#"+i+" doesn't accept regex!");return String(a(t))}},65776:(t,o,i)=>{var r=i(65772),a=i(48625),l=i(61622),u=/"/g,createHTML=function(t,o,i,r){var a=String(l(t)),c="<"+o;return""!==i&&(c+=" "+i+'="'+String(r).replace(u,"&quot;")+'"'),c+">"+a+"</"+o+">"};t.exports=function(t,o){var i={};i[t]=o(createHTML),r(r.P+r.F*a((function(){var o=""[t]('"');return o!==o.toLowerCase()||o.split('"').length>3})),"String",i)}},8487:(t,o,i)=>{var r=i(65772),a=i(61622),l=i(48625),u=i(38021),c="["+u+"]",d=RegExp("^"+c+c+"*"),m=RegExp(c+c+"*$"),exporter=function(t,o,i){var a={},c=l((function(){return!!u[t]()||"​…"!="​…"[t]()})),d=a[t]=c?o(p):u[t];i&&(a[i]=d),r(r.P+r.F*c,"String",a)},p=exporter.trim=function(t,o){return t=String(a(t)),1&o&&(t=t.replace(d,"")),2&o&&(t=t.replace(m,"")),t};t.exports=exporter},38021:t=>{t.exports="\t\n\v\f\r   ᠎              \u2028\u2029\ufeff"},59124:(t,o,i)=>{var r,a,l,u=i(11528),c=i(97757),d=i(8954),m=i(5050),p=i(38113),h=p.process,g=p.setImmediate,v=p.clearImmediate,y=p.MessageChannel,C=p.Dispatch,b=0,w={},k="onreadystatechange",run=function(){var t=+this;if(w.hasOwnProperty(t)){var o=w[t];delete w[t],o()}},listener=function(t){run.call(t.data)};g&&v||(g=function setImmediate(t){for(var o=[],i=1;arguments.length>i;)o.push(arguments[i++]);return w[++b]=function(){c("function"==typeof t?t:Function(t),o)},r(b),b},v=function clearImmediate(t){delete w[t]},"process"==i(26688)(h)?r=function(t){h.nextTick(u(run,t,1))}:C&&C.now?r=function(t){C.now(u(run,t,1))}:y?(l=(a=new y).port2,a.port1.onmessage=listener,r=u(l.postMessage,l,1)):p.addEventListener&&"function"==typeof postMessage&&!p.importScripts?(r=function(t){p.postMessage(t+"","*")},p.addEventListener("message",listener,!1)):r=k in m("script")?function(t){d.appendChild(m("script")).onreadystatechange=function(){d.removeChild(this),run.call(t)}}:function(t){setTimeout(u(run,t,1),0)}),t.exports={set:g,clear:v}},78615:(t,o,i)=>{var r=i(3338),a=Math.max,l=Math.min;t.exports=function(t,o){return(t=r(t))<0?a(t+o,0):l(t,o)}},3338:t=>{var o=Math.ceil,i=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?i:o)(t)}},15703:(t,o,i)=>{var r=i(8467),a=i(61622);t.exports=function(t){return r(a(t))}},26078:(t,o,i)=>{var r=i(3338),a=Math.min;t.exports=function(t){return t>0?a(r(t),9007199254740991):0}},26033:(t,o,i)=>{var r=i(61622);t.exports=function(t){return Object(r(t))}},31382:(t,o,i)=>{var r=i(67334);t.exports=function(t,o){if(!r(t))return t;var i,a;if(o&&"function"==typeof(i=t.toString)&&!r(a=i.call(t)))return a;if("function"==typeof(i=t.valueOf)&&!r(a=i.call(t)))return a;if(!o&&"function"==typeof(i=t.toString)&&!r(a=i.call(t)))return a;throw TypeError("Can't convert object to primitive value")}},25078:t=>{var o=0,i=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++o+i).toString(36))}},45822:(t,o,i)=>{var r=i(38113).navigator;t.exports=r&&r.userAgent||""},62190:(t,o,i)=>{var r=i(8655)("wks"),a=i(25078),l=i(38113).Symbol,u="function"==typeof l;(t.exports=function(t){return r[t]||(r[t]=u&&l[t]||(u?l:a)("Symbol."+t))}).store=r},7107:(t,o,i)=>{var r=i(20106),a=i(62190)("iterator"),l=i(23988);t.exports=i(60066).getIteratorMethod=function(t){if(null!=t)return t[a]||t["@@iterator"]||l[r(t)]}},64434:(t,o,i)=>{"use strict";var r=i(65772),a=i(78309)(2);r(r.P+r.F*!i(10225)([].filter,!0),"Array",{filter:function filter(t){return a(this,t,arguments[1])}})},78703:(t,o,i)=>{"use strict";var r=i(65772),a=i(78309)(6),l="findIndex",u=!0;l in[]&&Array(1)[l]((function(){u=!1})),r(r.P+r.F*u,"Array",{findIndex:function findIndex(t){return a(this,t,arguments.length>1?arguments[1]:void 0)}}),i(42094)(l)},71954:(t,o,i)=>{"use strict";var r=i(65772),a=i(78309)(5),l="find",u=!0;l in[]&&Array(1).find((function(){u=!1})),r(r.P+r.F*u,"Array",{find:function find(t){return a(this,t,arguments.length>1?arguments[1]:void 0)}}),i(42094)(l)},12897:(t,o,i)=>{"use strict";var r=i(42094),a=i(35038),l=i(23988),u=i(15703);t.exports=i(61195)(Array,"Array",(function(t,o){this._t=u(t),this._i=0,this._k=o}),(function(){var t=this._t,o=this._k,i=this._i++;return!t||i>=t.length?(this._t=void 0,a(1)):a(0,"keys"==o?i:"values"==o?t[i]:[i,t[i]])}),"values"),l.Arguments=l.Array,r("keys"),r("values"),r("entries")},90286:(t,o,i)=>{"use strict";var r=i(65772),a=i(78309)(1);r(r.P+r.F*!i(10225)([].map,!0),"Array",{map:function map(t){return a(this,t,arguments[1])}})},67209:(t,o,i)=>{"use strict";var r=i(65772),a=i(8954),l=i(26688),u=i(78615),c=i(26078),d=[].slice;r(r.P+r.F*i(48625)((function(){a&&d.call(a)})),"Array",{slice:function slice(t,o){var i=c(this.length),r=l(this);if(o=void 0===o?i:o,"Array"==r)return d.call(this,t,o);for(var a=u(t,i),m=u(o,i),p=c(m-a),h=new Array(p),g=0;g<p;g++)h[g]="String"==r?this.charAt(a+g):this[a+g];return h}})},99745:(t,o,i)=>{var r=i(98558).f,a=Function.prototype,l=/^\s*function ([^ (]*)/,u="name";u in a||i(36628)&&r(a,u,{configurable:!0,get:function(){try{return(""+this).match(l)[1]}catch(t){return""}}})},36349:(t,o,i)=>{"use strict";var r=i(38113),a=i(54040),l=i(26688),u=i(18938),c=i(31382),d=i(48625),m=i(76604).f,p=i(94662).f,h=i(98558).f,g=i(8487).trim,v="Number",y=r.Number,C=y,b=y.prototype,w=l(i(82897)(b))==v,k="trim"in String.prototype,toNumber=function(t){var o=c(t,!1);if("string"==typeof o&&o.length>2){var i,r,a,l=(o=k?o.trim():g(o,3)).charCodeAt(0);if(43===l||45===l){if(88===(i=o.charCodeAt(2))||120===i)return NaN}else if(48===l){switch(o.charCodeAt(1)){case 66:case 98:r=2,a=49;break;case 79:case 111:r=8,a=55;break;default:return+o}for(var u,d=o.slice(2),m=0,p=d.length;m<p;m++)if((u=d.charCodeAt(m))<48||u>a)return NaN;return parseInt(d,r)}}return+o};if(!y(" 0o1")||!y("0b1")||y("+0x1")){y=function Number(t){var o=arguments.length<1?0:t,i=this;return i instanceof y&&(w?d((function(){b.valueOf.call(i)})):l(i)!=v)?u(new C(toNumber(o)),i,y):toNumber(o)};for(var S,x=i(36628)?m(C):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger".split(","),T=0;x.length>T;T++)a(C,S=x[T])&&!a(y,S)&&h(y,S,p(C,S));y.prototype=b,b.constructor=y,i(17738)(r,v,y)}},76139:(t,o,i)=>{"use strict";var r=i(20106),a={};a[i(62190)("toStringTag")]="z",a+""!="[object z]"&&i(17738)(Object.prototype,"toString",(function toString(){return"[object "+r(this)+"]"}),!0)},2235:(t,o,i)=>{"use strict";var r,a,l,u,c=i(81422),d=i(38113),m=i(11528),p=i(20106),h=i(65772),g=i(67334),v=i(22761),y=i(35824),C=i(91891),b=i(11987),w=i(59124).set,k=i(63492)(),S=i(58577),x=i(99739),T=i(45822),M=i(2070),P="Promise",E=d.TypeError,I=d.process,R=I&&I.versions,D=R&&R.v8||"",V=d.Promise,A="process"==p(I),empty=function(){},B=a=S.f,$=!!function(){try{var t=V.resolve(1),o=(t.constructor={})[i(62190)("species")]=function(t){t(empty,empty)};return(A||"function"==typeof PromiseRejectionEvent)&&t.then(empty)instanceof o&&0!==D.indexOf("6.6")&&-1===T.indexOf("Chrome/66")}catch(t){}}(),isThenable=function(t){var o;return!(!g(t)||"function"!=typeof(o=t.then))&&o},notify=function(t,o){if(!t._n){t._n=!0;var i=t._c;k((function(){for(var r=t._v,a=1==t._s,l=0,run=function(o){var i,l,u,c=a?o.ok:o.fail,d=o.resolve,m=o.reject,p=o.domain;try{c?(a||(2==t._h&&onHandleUnhandled(t),t._h=1),!0===c?i=r:(p&&p.enter(),i=c(r),p&&(p.exit(),u=!0)),i===o.promise?m(E("Promise-chain cycle")):(l=isThenable(i))?l.call(i,d,m):d(i)):m(r)}catch(t){p&&!u&&p.exit(),m(t)}};i.length>l;)run(i[l++]);t._c=[],t._n=!1,o&&!t._h&&onUnhandled(t)}))}},onUnhandled=function(t){w.call(d,(function(){var o,i,r,a=t._v,l=isUnhandled(t);if(l&&(o=x((function(){A?I.emit("unhandledRejection",a,t):(i=d.onunhandledrejection)?i({promise:t,reason:a}):(r=d.console)&&r.error&&r.error("Unhandled promise rejection",a)})),t._h=A||isUnhandled(t)?2:1),t._a=void 0,l&&o.e)throw o.v}))},isUnhandled=function(t){return 1!==t._h&&0===(t._a||t._c).length},onHandleUnhandled=function(t){w.call(d,(function(){var o;A?I.emit("rejectionHandled",t):(o=d.onrejectionhandled)&&o({promise:t,reason:t._v})}))},$reject=function(t){var o=this;o._d||(o._d=!0,(o=o._w||o)._v=t,o._s=2,o._a||(o._a=o._c.slice()),notify(o,!0))},$resolve=function(t){var o,i=this;if(!i._d){i._d=!0,i=i._w||i;try{if(i===t)throw E("Promise can't be resolved itself");(o=isThenable(t))?k((function(){var r={_w:i,_d:!1};try{o.call(t,m($resolve,r,1),m($reject,r,1))}catch(t){$reject.call(r,t)}})):(i._v=t,i._s=1,notify(i,!1))}catch(t){$reject.call({_w:i,_d:!1},t)}}};$||(V=function Promise(t){y(this,V,P,"_h"),v(t),r.call(this);try{t(m($resolve,this,1),m($reject,this,1))}catch(t){$reject.call(this,t)}},(r=function Promise(t){this._c=[],this._a=void 0,this._s=0,this._d=!1,this._v=void 0,this._h=0,this._n=!1}).prototype=i(72243)(V.prototype,{then:function then(t,o){var i=B(b(this,V));return i.ok="function"!=typeof t||t,i.fail="function"==typeof o&&o,i.domain=A?I.domain:void 0,this._c.push(i),this._a&&this._a.push(i),this._s&&notify(this,!1),i.promise},catch:function(t){return this.then(void 0,t)}}),l=function(){var t=new r;this.promise=t,this.resolve=m($resolve,t,1),this.reject=m($reject,t,1)},S.f=B=function(t){return t===V||t===u?new l(t):a(t)}),h(h.G+h.W+h.F*!$,{Promise:V}),i(55727)(V,P),i(49766)(P),u=i(60066).Promise,h(h.S+h.F*!$,P,{reject:function reject(t){var o=B(this);return(0,o.reject)(t),o.promise}}),h(h.S+h.F*(c||!$),P,{resolve:function resolve(t){return M(c&&this===u?V:this,t)}}),h(h.S+h.F*!($&&i(73143)((function(t){V.all(t).catch(empty)}))),P,{all:function all(t){var o=this,i=B(o),r=i.resolve,a=i.reject,l=x((function(){var i=[],l=0,u=1;C(t,!1,(function(t){var c=l++,d=!1;i.push(void 0),u++,o.resolve(t).then((function(t){d||(d=!0,i[c]=t,--u||r(i))}),a)})),--u||r(i)}));return l.e&&a(l.v),i.promise},race:function race(t){var o=this,i=B(o),r=i.reject,a=x((function(){C(t,!1,(function(t){o.resolve(t).then(i.resolve,r)}))}));return a.e&&r(a.v),i.promise}})},55506:(t,o,i)=>{var r=i(38113),a=i(18938),l=i(98558).f,u=i(76604).f,c=i(94587),d=i(74859),m=r.RegExp,p=m,h=m.prototype,g=/a/g,v=/a/g,y=new m(g)!==g;if(i(36628)&&(!y||i(48625)((function(){return v[i(62190)("match")]=!1,m(g)!=g||m(v)==v||"/a/i"!=m(g,"i")})))){m=function RegExp(t,o){var i=this instanceof m,r=c(t),l=void 0===o;return!i&&r&&t.constructor===m&&l?t:a(y?new p(r&&!l?t.source:t,o):p((r=t instanceof m)?t.source:t,r&&l?d.call(t):o),i?this:h,m)};for(var proxy=function(t){t in m||l(m,t,{configurable:!0,get:function(){return p[t]},set:function(o){p[t]=o}})},C=u(p),b=0;C.length>b;)proxy(C[b++]);h.constructor=m,m.prototype=h,i(17738)(r,"RegExp",m)}i(49766)("RegExp")},25846:(t,o,i)=>{"use strict";var r=i(43288);i(65772)({target:"RegExp",proto:!0,forced:r!==/./.exec},{exec:r})},40751:(t,o,i)=>{i(36628)&&"g"!=/./g.flags&&i(98558).f(RegExp.prototype,"flags",{configurable:!0,get:i(74859)})},64828:(t,o,i)=>{"use strict";var r=i(6365),a=i(26078),l=i(88492),u=i(62404);i(48897)("match",1,(function(t,o,i,c){return[function match(i){var r=t(this),a=null==i?void 0:i[o];return void 0!==a?a.call(i,r):new RegExp(i)[o](String(r))},function(t){var o=c(i,t,this);if(o.done)return o.value;var d=r(t),m=String(this);if(!d.global)return u(d,m);var p=d.unicode;d.lastIndex=0;for(var h,g=[],v=0;null!==(h=u(d,m));){var y=String(h[0]);g[v]=y,""===y&&(d.lastIndex=l(m,a(d.lastIndex),p)),v++}return 0===v?null:g}]}))},84208:(t,o,i)=>{"use strict";var r=i(6365),a=i(26033),l=i(26078),u=i(3338),c=i(88492),d=i(62404),m=Math.max,p=Math.min,h=Math.floor,g=/\$([$&`']|\d\d?|<[^>]*>)/g,v=/\$([$&`']|\d\d?)/g;i(48897)("replace",2,(function(t,o,i,y){return[function replace(r,a){var l=t(this),u=null==r?void 0:r[o];return void 0!==u?u.call(r,l,a):i.call(String(l),r,a)},function(t,o){var a=y(i,t,this,o);if(a.done)return a.value;var h=r(t),g=String(this),v="function"==typeof o;v||(o=String(o));var C=h.global;if(C){var b=h.unicode;h.lastIndex=0}for(var w=[];;){var k=d(h,g);if(null===k)break;if(w.push(k),!C)break;""===String(k[0])&&(h.lastIndex=c(g,l(h.lastIndex),b))}for(var S,x="",T=0,M=0;M<w.length;M++){k=w[M];for(var P=String(k[0]),E=m(p(u(k.index),g.length),0),I=[],R=1;R<k.length;R++)I.push(void 0===(S=k[R])?S:String(S));var D=k.groups;if(v){var V=[P].concat(I,E,g);void 0!==D&&V.push(D);var A=String(o.apply(void 0,V))}else A=getSubstitution(P,g,E,I,D,o);E>=T&&(x+=g.slice(T,E)+A,T=E+P.length)}return x+g.slice(T)}];function getSubstitution(t,o,r,l,u,c){var d=r+t.length,m=l.length,p=v;return void 0!==u&&(u=a(u),p=g),i.call(c,p,(function(i,a){var c;switch(a.charAt(0)){case"$":return"$";case"&":return t;case"`":return o.slice(0,r);case"'":return o.slice(d);case"<":c=u[a.slice(1,-1)];break;default:var p=+a;if(0===p)return i;if(p>m){var g=h(p/10);return 0===g?i:g<=m?void 0===l[g-1]?a.charAt(1):l[g-1]+a.charAt(1):i}c=l[p-1]}return void 0===c?"":c}))}}))},42679:(t,o,i)=>{"use strict";var r=i(6365),a=i(80339),l=i(62404);i(48897)("search",1,(function(t,o,i,u){return[function search(i){var r=t(this),a=null==i?void 0:i[o];return void 0!==a?a.call(i,r):new RegExp(i)[o](String(r))},function(t){var o=u(i,t,this);if(o.done)return o.value;var c=r(t),d=String(this),m=c.lastIndex;a(m,0)||(c.lastIndex=0);var p=l(c,d);return a(c.lastIndex,m)||(c.lastIndex=m),null===p?-1:p.index}]}))},99236:(t,o,i)=>{"use strict";var r=i(94587),a=i(6365),l=i(11987),u=i(88492),c=i(26078),d=i(62404),m=i(43288),p=i(48625),h=Math.min,g=[].push,v=4294967295,y=!p((function(){RegExp(v,"y")}));i(48897)("split",2,(function(t,o,i,p){var C;return C="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,o){var a=String(this);if(void 0===t&&0===o)return[];if(!r(t))return i.call(a,t,o);for(var l,u,c,d=[],p=(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":""),h=0,y=void 0===o?v:o>>>0,C=new RegExp(t.source,p+"g");(l=m.call(C,a))&&!((u=C.lastIndex)>h&&(d.push(a.slice(h,l.index)),l.length>1&&l.index<a.length&&g.apply(d,l.slice(1)),c=l[0].length,h=u,d.length>=y));)C.lastIndex===l.index&&C.lastIndex++;return h===a.length?!c&&C.test("")||d.push(""):d.push(a.slice(h)),d.length>y?d.slice(0,y):d}:"0".split(void 0,0).length?function(t,o){return void 0===t&&0===o?[]:i.call(this,t,o)}:i,[function split(i,r){var a=t(this),l=null==i?void 0:i[o];return void 0!==l?l.call(i,a,r):C.call(String(a),i,r)},function(t,o){var r=p(C,t,this,o,C!==i);if(r.done)return r.value;var m=a(t),g=String(this),b=l(m,RegExp),w=m.unicode,k=(m.ignoreCase?"i":"")+(m.multiline?"m":"")+(m.unicode?"u":"")+(y?"y":"g"),S=new b(y?m:"^(?:"+m.source+")",k),x=void 0===o?v:o>>>0;if(0===x)return[];if(0===g.length)return null===d(S,g)?[g]:[];for(var T=0,M=0,P=[];M<g.length;){S.lastIndex=y?M:0;var E,I=d(S,y?g:g.slice(M));if(null===I||(E=h(c(S.lastIndex+(y?0:M)),g.length))===T)M=u(g,M,w);else{if(P.push(g.slice(T,M)),P.length===x)return P;for(var R=1;R<=I.length-1;R++)if(P.push(I[R]),P.length===x)return P;M=T=E}}return P.push(g.slice(T)),P}]}))},44321:(t,o,i)=>{"use strict";i(40751);var r=i(6365),a=i(74859),l=i(36628),u="toString",c=/./.toString,define=function(t){i(17738)(RegExp.prototype,u,t,!0)};i(48625)((function(){return"/a/b"!=c.call({source:"a",flags:"b"})}))?define((function toString(){var t=r(this);return"/".concat(t.source,"/","flags"in t?t.flags:!l&&t instanceof RegExp?a.call(t):void 0)})):c.name!=u&&define((function toString(){return c.call(this)}))},3777:(t,o,i)=>{"use strict";var r=i(65772),a=i(465),l="includes";r(r.P+r.F*i(86570)(l),"String",{includes:function includes(t){return!!~a(this,t,l).indexOf(t,arguments.length>1?arguments[1]:void 0)}})},37472:(t,o,i)=>{"use strict";var r=i(12070)(!0);i(61195)(String,"String",(function(t){this._t=String(t),this._i=0}),(function(){var t,o=this._t,i=this._i;return i>=o.length?{value:void 0,done:!0}:(t=r(o,i),this._i+=t.length,{value:t,done:!1})}))},5251:(t,o,i)=>{"use strict";i(65776)("link",(function(t){return function link(o){return t(this,"a","href",o)}}))},65942:(t,o,i)=>{"use strict";var r=i(65772),a=i(26078),l=i(465),u="startsWith",c="".startsWith;r(r.P+r.F*i(86570)(u),"String",{startsWith:function startsWith(t){var o=l(this,t,u),i=a(Math.min(arguments.length>1?arguments[1]:void 0,o.length)),r=String(t);return c?c.call(o,r,i):o.slice(i,i+r.length)===r}})},38081:(t,o,i)=>{"use strict";var r=i(65772),a=i(59021)(!0);r(r.P,"Array",{includes:function includes(t){return a(this,t,arguments.length>1?arguments[1]:void 0)}}),i(42094)("includes")},6632:(t,o,i)=>{"use strict";var r=i(65772),a=i(60066),l=i(38113),u=i(11987),c=i(2070);r(r.P+r.R,"Promise",{finally:function(t){var o=u(this,a.Promise||l.Promise),i="function"==typeof t;return this.then(i?function(i){return c(o,t()).then((function(){return i}))}:t,i?function(i){return c(o,t()).then((function(){throw i}))}:t)}})},93085:(t,o,i)=>{for(var r=i(12897),a=i(42912),l=i(17738),u=i(38113),c=i(74216),d=i(23988),m=i(62190),p=m("iterator"),h=m("toStringTag"),g=d.Array,v={CSSRuleList:!0,CSSStyleDeclaration:!1,CSSValueList:!1,ClientRectList:!1,DOMRectList:!1,DOMStringList:!1,DOMTokenList:!0,DataTransferItemList:!1,FileList:!1,HTMLAllCollection:!1,HTMLCollection:!1,HTMLFormElement:!1,HTMLSelectElement:!1,MediaList:!0,MimeTypeArray:!1,NamedNodeMap:!1,NodeList:!0,PaintRequestList:!1,Plugin:!1,PluginArray:!1,SVGLengthList:!1,SVGNumberList:!1,SVGPathSegList:!1,SVGPointList:!1,SVGStringList:!1,SVGTransformList:!1,SourceBufferList:!1,StyleSheetList:!0,TextTrackCueList:!1,TextTrackList:!1,TouchList:!1},y=a(v),C=0;C<y.length;C++){var b,w=y[C],k=v[w],S=u[w],x=S&&S.prototype;if(x&&(x[p]||c(x,p,g),x[h]||c(x,h,w),d[w]=g,k))for(b in r)x[b]||l(x,b,r[b],!0)}},58772:(t,o,i)=>{"use strict";var r=i(90331);function emptyFunction(){}function emptyFunctionWithReset(){}emptyFunctionWithReset.resetWarningCache=emptyFunction,t.exports=function(){function shim(t,o,i,a,l,u){if(u!==r){var c=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw c.name="Invariant Violation",c}}function getShim(){return shim}shim.isRequired=shim;var t={array:shim,bool:shim,func:shim,number:shim,object:shim,string:shim,symbol:shim,any:shim,arrayOf:getShim,element:shim,elementType:shim,instanceOf:getShim,node:shim,objectOf:getShim,oneOf:getShim,oneOfType:getShim,shape:getShim,exact:getShim,checkPropTypes:emptyFunctionWithReset,resetWarningCache:emptyFunction};return t.PropTypes=t,t}},23615:(t,o,i)=>{t.exports=i(58772)()},90331:t=>{"use strict";t.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},86248:t=>{var o=function(t){"use strict";var o,i=Object.prototype,r=i.hasOwnProperty,a="function"==typeof Symbol?Symbol:{},l=a.iterator||"@@iterator",u=a.asyncIterator||"@@asyncIterator",c=a.toStringTag||"@@toStringTag";function define(t,o,i){return Object.defineProperty(t,o,{value:i,enumerable:!0,configurable:!0,writable:!0}),t[o]}try{define({},"")}catch(t){define=function(t,o,i){return t[o]=i}}function wrap(t,o,i,r){var a=o&&o.prototype instanceof Generator?o:Generator,l=Object.create(a.prototype),u=new Context(r||[]);return l._invoke=function makeInvokeMethod(t,o,i){var r=d;return function invoke(a,l){if(r===p)throw new Error("Generator is already running");if(r===h){if("throw"===a)throw l;return doneResult()}for(i.method=a,i.arg=l;;){var u=i.delegate;if(u){var c=maybeInvokeDelegate(u,i);if(c){if(c===g)continue;return c}}if("next"===i.method)i.sent=i._sent=i.arg;else if("throw"===i.method){if(r===d)throw r=h,i.arg;i.dispatchException(i.arg)}else"return"===i.method&&i.abrupt("return",i.arg);r=p;var v=tryCatch(t,o,i);if("normal"===v.type){if(r=i.done?h:m,v.arg===g)continue;return{value:v.arg,done:i.done}}"throw"===v.type&&(r=h,i.method="throw",i.arg=v.arg)}}}(t,i,u),l}function tryCatch(t,o,i){try{return{type:"normal",arg:t.call(o,i)}}catch(t){return{type:"throw",arg:t}}}t.wrap=wrap;var d="suspendedStart",m="suspendedYield",p="executing",h="completed",g={};function Generator(){}function GeneratorFunction(){}function GeneratorFunctionPrototype(){}var v={};v[l]=function(){return this};var y=Object.getPrototypeOf,C=y&&y(y(values([])));C&&C!==i&&r.call(C,l)&&(v=C);var b=GeneratorFunctionPrototype.prototype=Generator.prototype=Object.create(v);function defineIteratorMethods(t){["next","throw","return"].forEach((function(o){define(t,o,(function(t){return this._invoke(o,t)}))}))}function AsyncIterator(t,o){function invoke(i,a,l,u){var c=tryCatch(t[i],t,a);if("throw"!==c.type){var d=c.arg,m=d.value;return m&&"object"==typeof m&&r.call(m,"__await")?o.resolve(m.__await).then((function(t){invoke("next",t,l,u)}),(function(t){invoke("throw",t,l,u)})):o.resolve(m).then((function(t){d.value=t,l(d)}),(function(t){return invoke("throw",t,l,u)}))}u(c.arg)}var i;this._invoke=function enqueue(t,r){function callInvokeWithMethodAndArg(){return new o((function(o,i){invoke(t,r,o,i)}))}return i=i?i.then(callInvokeWithMethodAndArg,callInvokeWithMethodAndArg):callInvokeWithMethodAndArg()}}function maybeInvokeDelegate(t,i){var r=t.iterator[i.method];if(r===o){if(i.delegate=null,"throw"===i.method){if(t.iterator.return&&(i.method="return",i.arg=o,maybeInvokeDelegate(t,i),"throw"===i.method))return g;i.method="throw",i.arg=new TypeError("The iterator does not provide a 'throw' method")}return g}var a=tryCatch(r,t.iterator,i.arg);if("throw"===a.type)return i.method="throw",i.arg=a.arg,i.delegate=null,g;var l=a.arg;return l?l.done?(i[t.resultName]=l.value,i.next=t.nextLoc,"return"!==i.method&&(i.method="next",i.arg=o),i.delegate=null,g):l:(i.method="throw",i.arg=new TypeError("iterator result is not an object"),i.delegate=null,g)}function pushTryEntry(t){var o={tryLoc:t[0]};1 in t&&(o.catchLoc=t[1]),2 in t&&(o.finallyLoc=t[2],o.afterLoc=t[3]),this.tryEntries.push(o)}function resetTryEntry(t){var o=t.completion||{};o.type="normal",delete o.arg,t.completion=o}function Context(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(pushTryEntry,this),this.reset(!0)}function values(t){if(t){var i=t[l];if(i)return i.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var a=-1,u=function next(){for(;++a<t.length;)if(r.call(t,a))return next.value=t[a],next.done=!1,next;return next.value=o,next.done=!0,next};return u.next=u}}return{next:doneResult}}function doneResult(){return{value:o,done:!0}}return GeneratorFunction.prototype=b.constructor=GeneratorFunctionPrototype,GeneratorFunctionPrototype.constructor=GeneratorFunction,GeneratorFunction.displayName=define(GeneratorFunctionPrototype,c,"GeneratorFunction"),t.isGeneratorFunction=function(t){var o="function"==typeof t&&t.constructor;return!!o&&(o===GeneratorFunction||"GeneratorFunction"===(o.displayName||o.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,GeneratorFunctionPrototype):(t.__proto__=GeneratorFunctionPrototype,define(t,c,"GeneratorFunction")),t.prototype=Object.create(b),t},t.awrap=function(t){return{__await:t}},defineIteratorMethods(AsyncIterator.prototype),AsyncIterator.prototype[u]=function(){return this},t.AsyncIterator=AsyncIterator,t.async=function(o,i,r,a,l){void 0===l&&(l=Promise);var u=new AsyncIterator(wrap(o,i,r,a),l);return t.isGeneratorFunction(i)?u:u.next().then((function(t){return t.done?t.value:u.next()}))},defineIteratorMethods(b),define(b,c,"Generator"),b[l]=function(){return this},b.toString=function(){return"[object Generator]"},t.keys=function(t){var o=[];for(var i in t)o.push(i);return o.reverse(),function next(){for(;o.length;){var i=o.pop();if(i in t)return next.value=i,next.done=!1,next}return next.done=!0,next}},t.values=values,Context.prototype={constructor:Context,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=o,this.done=!1,this.delegate=null,this.method="next",this.arg=o,this.tryEntries.forEach(resetTryEntry),!t)for(var i in this)"t"===i.charAt(0)&&r.call(this,i)&&!isNaN(+i.slice(1))&&(this[i]=o)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var i=this;function handle(r,a){return u.type="throw",u.arg=t,i.next=r,a&&(i.method="next",i.arg=o),!!a}for(var a=this.tryEntries.length-1;a>=0;--a){var l=this.tryEntries[a],u=l.completion;if("root"===l.tryLoc)return handle("end");if(l.tryLoc<=this.prev){var c=r.call(l,"catchLoc"),d=r.call(l,"finallyLoc");if(c&&d){if(this.prev<l.catchLoc)return handle(l.catchLoc,!0);if(this.prev<l.finallyLoc)return handle(l.finallyLoc)}else if(c){if(this.prev<l.catchLoc)return handle(l.catchLoc,!0)}else{if(!d)throw new Error("try statement without catch or finally");if(this.prev<l.finallyLoc)return handle(l.finallyLoc)}}}},abrupt:function(t,o){for(var i=this.tryEntries.length-1;i>=0;--i){var a=this.tryEntries[i];if(a.tryLoc<=this.prev&&r.call(a,"finallyLoc")&&this.prev<a.finallyLoc){var l=a;break}}l&&("break"===t||"continue"===t)&&l.tryLoc<=o&&o<=l.finallyLoc&&(l=null);var u=l?l.completion:{};return u.type=t,u.arg=o,l?(this.method="next",this.next=l.finallyLoc,g):this.complete(u)},complete:function(t,o){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&o&&(this.next=o),g},finish:function(t){for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o];if(i.finallyLoc===t)return this.complete(i.completion,i.afterLoc),resetTryEntry(i),g}},catch:function(t){for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o];if(i.tryLoc===t){var r=i.completion;if("throw"===r.type){var a=r.arg;resetTryEntry(i)}return a}}throw new Error("illegal catch attempt")},delegateYield:function(t,i,r){return this.delegate={iterator:values(t),resultName:i,nextLoc:r},"next"===this.method&&(this.arg=o),g}},t}(t.exports);try{regeneratorRuntime=o}catch(t){Function("r","regeneratorRuntime = r")(o)}},63804:t=>{"use strict";t.exports=React},27196:t=>{"use strict";t.exports=ReactDOM},18194:t=>{"use strict";t.exports=wp.i18n}},o={};function __webpack_require__(i){var r=o[i];if(void 0!==r)return r.exports;var a=o[i]={exports:{}};return t[i](a,a.exports,__webpack_require__),a.exports}__webpack_require__(30122),__webpack_require__(85116);__webpack_require__(13021)})();assets/js/admin-top-bar.min.js000064400000116666151327220410012251 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(()=>{var t={75453:(t,e,r)=>{t.exports=r(7421)},59396:(t,e,r)=>{t.exports=r(70157)},67394:(t,e,r)=>{t.exports=r(43153)},23587:(t,e,r)=>{t.exports=r(32622)},41281:(t,e,r)=>{t.exports=r(19103)},50093:(t,e,r)=>{t.exports=r(39871)},93168:(t,e,r)=>{t.exports=r(89999)},72292:t=>{t.exports=function _arrayLikeToArray(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n},t.exports.default=t.exports,t.exports.__esModule=!0},86870:(t,e,r)=>{var n=r(59396);t.exports=function _arrayWithHoles(t){if(n(t))return t},t.exports.default=t.exports,t.exports.__esModule=!0},67971:t=>{t.exports=function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}},t.exports.default=t.exports,t.exports.__esModule=!0},52369:(t,e,r)=>{var n=r(24596).default,o=r(93168),i=r(67394),u=r(23587);function _getRequireWildcardCache(t){if("function"!=typeof o)return null;var e=new o,r=new o;return(_getRequireWildcardCache=function _getRequireWildcardCache(t){return t?r:e})(t)}t.exports=function _interopRequireWildcard(t,e){if(!e&&t&&t.__esModule)return t;if(null===t||"object"!==n(t)&&"function"!=typeof t)return{default:t};var r=_getRequireWildcardCache(e);if(r&&r.has(t))return r.get(t);var o={},a=i&&u;for(var c in t)if("default"!==c&&Object.prototype.hasOwnProperty.call(t,c)){var s=a?u(t,c):null;s&&(s.get||s.set)?i(o,c,s):o[c]=t[c]}return o.default=t,r&&r.set(t,o),o},t.exports.default=t.exports,t.exports.__esModule=!0},79968:(t,e,r)=>{var n=r(41281),o=r(50093);t.exports=function _iterableToArrayLimit(t,e){var r=null==t?null:void 0!==n&&t[o]||t["@@iterator"];if(null!=r){var i,u,a=[],c=!0,s=!1;try{for(r=r.call(t);!(c=(i=r.next()).done)&&(a.push(i.value),!e||a.length!==e);c=!0);}catch(t){s=!0,u=t}finally{try{c||null==r.return||r.return()}finally{if(s)throw u}}return a}},t.exports.default=t.exports,t.exports.__esModule=!0},39198:t=>{t.exports=function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")},t.exports.default=t.exports,t.exports.__esModule=!0},47834:(t,e,r)=>{var n=r(86870),o=r(79968),i=r(24594),u=r(39198);t.exports=function _slicedToArray(t,e){return n(t)||o(t,e)||i(t,e)||u()},t.exports.default=t.exports,t.exports.__esModule=!0},24596:(t,e,r)=>{var n=r(41281),o=r(50093);function _typeof(e){return"function"==typeof n&&"symbol"==typeof o?(t.exports=_typeof=function _typeof(t){return typeof t},t.exports.default=t.exports,t.exports.__esModule=!0):(t.exports=_typeof=function _typeof(t){return t&&"function"==typeof n&&t.constructor===n&&t!==n.prototype?"symbol":typeof t},t.exports.default=t.exports,t.exports.__esModule=!0),_typeof(e)}t.exports=_typeof,t.exports.default=t.exports,t.exports.__esModule=!0},24594:(t,e,r)=>{var n=r(75453),o=r(72292);t.exports=function _unsupportedIterableToArray(t,e){if(t){if("string"==typeof t)return o(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?n(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?o(t,e):void 0}},t.exports.default=t.exports,t.exports.__esModule=!0},73308:(t,e,r)=>{"use strict";r(67394)(e,"__esModule",{value:!0}),e.default=void 0,r(76139),r(44321);var n=function matchUserAgent(t){return o.indexOf(t)>=0},o=navigator.userAgent,i=!!window.opr&&!!opr.addons||!!window.opera||n(" OPR/"),u=n("Firefox"),a=/^((?!chrome|android).)*safari/i.test(o)||/constructor/i.test(window.HTMLElement)||"[object SafariRemoteNotification]"===(!window.safari||"undefined"!=typeof safari&&safari.pushNotification).toString(),c=/Trident|MSIE/.test(o)&&!!document.documentMode,s=!c&&!!window.StyleMedia||n("Edg"),f=!!window.chrome&&n("Chrome")&&!(s||i),l=n("Chrome")&&!!window.CSS,p={appleWebkit:n("AppleWebKit")&&!l,blink:l,chrome:f,edge:s,firefox:u,ie:c,mac:n("Macintosh"),opera:i,safari:a,webkit:n("AppleWebKit")};e.default=p},23680:(t,e,r)=>{"use strict";var n=r(18194).__,o=r(67394),i=r(67971),u=r(52369);o(e,"__esModule",{value:!0}),e.default=function AdminTopBar(t){var e=(0,a.useRef)();(0,a.useEffect)((function(){document.querySelector("#e-admin-top-bar-root").classList.add("e-admin-top-bar--active")}),[]);var r=(0,l.usePageTitle)();(0,a.useEffect)((function(){document.querySelectorAll(".page-title-action").forEach((function(t){e.current.appendChild(t)}))}),[]);var o=p.default.mac?"⌘":"^",i=n("Search or do anything in Elementor","elementor")+" ".concat(o,"+E");return a.default.createElement("div",{className:"e-admin-top-bar"},a.default.createElement("div",{className:"e-admin-top-bar__main-area"},a.default.createElement(s.default,null,r),a.default.createElement("div",{className:"e-admin-top-bar__main-area-buttons",ref:e})),a.default.createElement("div",{className:"e-admin-top-bar__secondary-area"},a.default.createElement("div",{className:"e-admin-top-bar__secondary-area-buttons"},window.elementorAdminTopBarConfig.is_administrator?a.default.createElement(c.default,{onClick:function finderAction(){$e.route("finder")},dataInfo:i,icon:"eicon-search-bold"},n("Finder","elementor")):"",window.elementorCloudAdmin?window.elementorCloudAdmin():""),a.default.createElement(f.default,null)))};var a=u(r(63804)),c=i(r(50818)),s=i(r(76668)),f=i(r(79943)),l=r(30174),p=i(r(73308))},50818:(t,e,r)=>{"use strict";var n=r(23615),o=r(67394),i=r(52369);o(e,"__esModule",{value:!0}),e.default=BarButton;var u=i(r(63804));function BarButton(t){return(0,u.useEffect)((function(){t.dataInfo&&jQuery(".e-admin-top-bar__bar-button[data-info]").tipsy({title:function title(){return this.getAttribute("data-info")},gravity:function gravity(){return"n"},delayIn:400,offset:1})}),[]),u.default.createElement("a",{className:"e-admin-top-bar__bar-button",ref:t.buttonRef,onClick:t.onClick,"data-info":t.dataInfo,href:t.href,target:t.target},u.default.createElement("i",{className:"e-admin-top-bar__bar-button-icon ".concat(t.icon)}),u.default.createElement("h1",{className:"e-admin-top-bar__bar-button-title"},t.children))}BarButton.propTypes={children:n.any,dataInfo:n.string,icon:n.any,onClick:n.func,buttonRef:n.object,href:n.string,target:n.string}},76668:(t,e,r)=>{"use strict";var n=r(23615),o=r(67394),i=r(67971);o(e,"__esModule",{value:!0}),e.default=BarHeading;var u=i(r(63804));function BarHeading(t){return u.default.createElement("div",{className:"e-admin-top-bar__heading"},u.default.createElement("div",{className:"e-admin-top-bar__heading-logo"},u.default.createElement("i",{className:"eicon-elementor","aria-hidden":"true"})),u.default.createElement("h1",{className:"e-admin-top-bar__heading-title"},t.children))}BarHeading.propTypes={children:n.any}},79943:(t,e,r)=>{"use strict";var n=r(18194).__,o=r(67394),i=r(67971),u=r(52369);o(e,"__esModule",{value:!0}),e.default=function ConnectionButton(){var t=(0,a.useRef)(),e=elementorAdminTopBarConfig.is_user_connected;(0,a.useEffect)((function(){t.current&&!e&&jQuery(t.current).elementorConnect({UTM:function UTM(){return"&utm_source=admin-top-bar&utm_medium=wp-dash&utm_campaign=admin-top-bar&source=generic"}})}),[]);var r=n("Connect your account to get access to Elementor's Template Library & more.","elementor"),o=elementorAdminTopBarConfig.connect_url,i=n("Connect Account","elementor"),u="_self";e&&(r="",o="https://go.elementor.com/wp-dash-admin-bar-account/",i=n("My Elementor","elementor"),u="_blank");return a.default.createElement(c.default,{icon:"eicon-user-circle-o",buttonRef:t,dataInfo:r,href:o,target:u},i)};var a=u(r(63804)),c=i(r(50818))},30174:(t,e,r)=>{"use strict";var n=r(67394),o=r(67971);n(e,"__esModule",{value:!0}),e.usePageTitle=void 0;var i=o(r(47834)),u=r(63804);e.usePageTitle=function usePageTitle(){var t=(0,u.useState)("Elementor"),e=(0,i.default)(t,2),r=e[0],n=e[1];return(0,u.useEffect)((function(){var t=document.querySelector(".wp-heading-inline");t&&n(t.innerText)}),[]),r}},7421:(t,e,r)=>{r(99572),r(37627),t.exports=r(47208).Array.from},70157:(t,e,r)=>{r(42580),t.exports=r(47208).Array.isArray},43153:(t,e,r)=>{r(40168);var n=r(47208).Object;t.exports=function defineProperty(t,e,r){return n.defineProperty(t,e,r)}},32622:(t,e,r)=>{r(18576);var n=r(47208).Object;t.exports=function getOwnPropertyDescriptor(t,e){return n.getOwnPropertyDescriptor(t,e)}},19103:(t,e,r)=>{r(54370),r(70285),r(87573),r(97224),t.exports=r(47208).Symbol},39871:(t,e,r)=>{r(99572),r(74114),t.exports=r(7273).f("iterator")},89999:(t,e,r)=>{r(70285),r(74114),r(23337),r(10143),r(92797),t.exports=r(47208).WeakMap},26610:t=>{t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},29697:t=>{t.exports=function(){}},54677:t=>{t.exports=function(t,e,r,n){if(!(t instanceof e)||void 0!==n&&n in t)throw TypeError(r+": incorrect invocation!");return t}},30498:(t,e,r)=>{var n=r(39632);t.exports=function(t){if(!n(t))throw TypeError(t+" is not an object!");return t}},69191:(t,e,r)=>{var n=r(1504),o=r(37154),i=r(46723);t.exports=function(t){return function(e,r,u){var a,c=n(e),s=o(c.length),f=i(u,s);if(t&&r!=r){for(;s>f;)if((a=c[f++])!=a)return!0}else for(;s>f;f++)if((t||f in c)&&c[f]===r)return t||f||0;return!t&&-1}}},97647:(t,e,r)=>{var n=r(61725),o=r(13115),i=r(60061),u=r(37154),a=r(41904);t.exports=function(t,e){var r=1==t,c=2==t,s=3==t,f=4==t,l=6==t,p=5==t||l,d=e||a;return function(e,a,y){for(var v,h,m=i(e),g=o(m),_=n(a,y,3),b=u(g.length),x=0,w=r?d(e,b):c?d(e,0):void 0;b>x;x++)if((p||x in g)&&(h=_(v=g[x],x,m),t))if(r)w[x]=h;else if(h)switch(t){case 3:return!0;case 5:return v;case 6:return x;case 2:w.push(v)}else if(f)return!1;return l?-1:s||f?f:w}}},88320:(t,e,r)=>{var n=r(39632),o=r(7359),i=r(24300)("species");t.exports=function(t){var e;return o(t)&&("function"!=typeof(e=t.constructor)||e!==Array&&!o(e.prototype)||(e=void 0),n(e)&&null===(e=e[i])&&(e=void 0)),void 0===e?Array:e}},41904:(t,e,r)=>{var n=r(88320);t.exports=function(t,e){return new(n(t))(e)}},8312:(t,e,r)=>{var n=r(41352),o=r(24300)("toStringTag"),i="Arguments"==n(function(){return arguments}());t.exports=function(t){var e,r,u;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(r=function(t,e){try{return t[e]}catch(t){}}(e=Object(t),o))?r:i?n(e):"Object"==(u=n(e))&&"function"==typeof e.callee?"Arguments":u}},41352:t=>{var e={}.toString;t.exports=function(t){return e.call(t).slice(8,-1)}},92600:(t,e,r)=>{"use strict";var n=r(13199),o=r(6758).getWeak,i=r(30498),u=r(39632),a=r(54677),c=r(25985),s=r(97647),f=r(20657),l=r(41081),p=s(5),d=s(6),y=0,uncaughtFrozenStore=function(t){return t._l||(t._l=new UncaughtFrozenStore)},UncaughtFrozenStore=function(){this.a=[]},findUncaughtFrozen=function(t,e){return p(t.a,(function(t){return t[0]===e}))};UncaughtFrozenStore.prototype={get:function(t){var e=findUncaughtFrozen(this,t);if(e)return e[1]},has:function(t){return!!findUncaughtFrozen(this,t)},set:function(t,e){var r=findUncaughtFrozen(this,t);r?r[1]=e:this.a.push([t,e])},delete:function(t){var e=d(this.a,(function(e){return e[0]===t}));return~e&&this.a.splice(e,1),!!~e}},t.exports={getConstructor:function(t,e,r,i){var s=t((function(t,n){a(t,s,e,"_i"),t._t=e,t._i=y++,t._l=void 0,null!=n&&c(n,r,t[i],t)}));return n(s.prototype,{delete:function(t){if(!u(t))return!1;var r=o(t);return!0===r?uncaughtFrozenStore(l(this,e)).delete(t):r&&f(r,this._i)&&delete r[this._i]},has:function has(t){if(!u(t))return!1;var r=o(t);return!0===r?uncaughtFrozenStore(l(this,e)).has(t):r&&f(r,this._i)}}),s},def:function(t,e,r){var n=o(i(e),!0);return!0===n?uncaughtFrozenStore(t).set(e,r):n[t._i]=r,t},ufstore:uncaughtFrozenStore}},70770:(t,e,r)=>{"use strict";var n=r(43280),o=r(98310),i=r(6758),u=r(90472),a=r(62292),c=r(13199),s=r(25985),f=r(54677),l=r(39632),p=r(2413),d=r(60510).f,y=r(97647)(0),v=r(75179);t.exports=function(t,e,r,h,m,g){var _=n[t],b=_,x=m?"set":"add",w=b&&b.prototype,S={};return v&&"function"==typeof b&&(g||w.forEach&&!u((function(){(new b).entries().next()})))?(b=e((function(e,r){f(e,b,t,"_c"),e._c=new _,null!=r&&s(r,m,e[x],e)})),y("add,clear,delete,forEach,get,has,set,keys,values,entries,toJSON".split(","),(function(t){var e="add"==t||"set"==t;!(t in w)||g&&"clear"==t||a(b.prototype,t,(function(r,n){if(f(this,b,t),!e&&g&&!l(r))return"get"==t&&void 0;var o=this._c[t](0===r?0:r,n);return e?this:o}))})),g||d(b.prototype,"size",{get:function(){return this._c.size}})):(b=h.getConstructor(e,t,m,x),c(b.prototype,r),i.NEED=!0),p(b,t),S[t]=b,o(o.G+o.W+o.F,S),g||h.setStrong(b,t,m),b}},47208:t=>{var e=t.exports={version:"2.6.12"};"number"==typeof __e&&(__e=e)},87352:(t,e,r)=>{"use strict";var n=r(60510),o=r(48439);t.exports=function(t,e,r){e in t?n.f(t,e,o(0,r)):t[e]=r}},61725:(t,e,r)=>{var n=r(26610);t.exports=function(t,e,r){if(n(t),void 0===e)return t;switch(r){case 1:return function(r){return t.call(e,r)};case 2:return function(r,n){return t.call(e,r,n)};case 3:return function(r,n,o){return t.call(e,r,n,o)}}return function(){return t.apply(e,arguments)}}},18239:t=>{t.exports=function(t){if(null==t)throw TypeError("Can't call method on  "+t);return t}},75179:(t,e,r)=>{t.exports=!r(90472)((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},48765:(t,e,r)=>{var n=r(39632),o=r(43280).document,i=n(o)&&n(o.createElement);t.exports=function(t){return i?o.createElement(t):{}}},31986:t=>{t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},42266:(t,e,r)=>{var n=r(86425),o=r(97739),i=r(67410);t.exports=function(t){var e=n(t),r=o.f;if(r)for(var u,a=r(t),c=i.f,s=0;a.length>s;)c.call(t,u=a[s++])&&e.push(u);return e}},98310:(t,e,r)=>{var n=r(43280),o=r(47208),i=r(61725),u=r(62292),a=r(20657),$export=function(t,e,r){var c,s,f,l=t&$export.F,p=t&$export.G,d=t&$export.S,y=t&$export.P,v=t&$export.B,h=t&$export.W,m=p?o:o[e]||(o[e]={}),g=m.prototype,_=p?n:d?n[e]:(n[e]||{}).prototype;for(c in p&&(r=e),r)(s=!l&&_&&void 0!==_[c])&&a(m,c)||(f=s?_[c]:r[c],m[c]=p&&"function"!=typeof _[c]?r[c]:v&&s?i(f,n):h&&_[c]==f?function(t){var F=function(e,r,n){if(this instanceof t){switch(arguments.length){case 0:return new t;case 1:return new t(e);case 2:return new t(e,r)}return new t(e,r,n)}return t.apply(this,arguments)};return F.prototype=t.prototype,F}(f):y&&"function"==typeof f?i(Function.call,f):f,y&&((m.virtual||(m.virtual={}))[c]=f,t&$export.R&&g&&!g[c]&&u(g,c,f)))};$export.F=1,$export.G=2,$export.S=4,$export.P=8,$export.B=16,$export.W=32,$export.U=64,$export.R=128,t.exports=$export},90472:t=>{t.exports=function(t){try{return!!t()}catch(t){return!0}}},25985:(t,e,r)=>{var n=r(61725),o=r(93086),i=r(11827),u=r(30498),a=r(37154),c=r(26116),s={},f={},l=t.exports=function(t,e,r,l,p){var d,y,v,h,m=p?function(){return t}:c(t),g=n(r,l,e?2:1),_=0;if("function"!=typeof m)throw TypeError(t+" is not iterable!");if(i(m)){for(d=a(t.length);d>_;_++)if((h=e?g(u(y=t[_])[0],y[1]):g(t[_]))===s||h===f)return h}else for(v=m.call(t);!(y=v.next()).done;)if((h=o(v,g,y.value,e))===s||h===f)return h};l.BREAK=s,l.RETURN=f},43280:t=>{var e=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=e)},20657:t=>{var e={}.hasOwnProperty;t.exports=function(t,r){return e.call(t,r)}},62292:(t,e,r)=>{var n=r(60510),o=r(48439);t.exports=r(75179)?function(t,e,r){return n.f(t,e,o(1,r))}:function(t,e,r){return t[e]=r,t}},92477:(t,e,r)=>{var n=r(43280).document;t.exports=n&&n.documentElement},64457:(t,e,r)=>{t.exports=!r(75179)&&!r(90472)((function(){return 7!=Object.defineProperty(r(48765)("div"),"a",{get:function(){return 7}}).a}))},13115:(t,e,r)=>{var n=r(41352);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==n(t)?t.split(""):Object(t)}},11827:(t,e,r)=>{var n=r(79105),o=r(24300)("iterator"),i=Array.prototype;t.exports=function(t){return void 0!==t&&(n.Array===t||i[o]===t)}},7359:(t,e,r)=>{var n=r(41352);t.exports=Array.isArray||function isArray(t){return"Array"==n(t)}},39632:t=>{t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},93086:(t,e,r)=>{var n=r(30498);t.exports=function(t,e,r,o){try{return o?e(n(r)[0],r[1]):e(r)}catch(e){var i=t.return;throw void 0!==i&&n(i.call(t)),e}}},19802:(t,e,r)=>{"use strict";var n=r(82488),o=r(48439),i=r(2413),u={};r(62292)(u,r(24300)("iterator"),(function(){return this})),t.exports=function(t,e,r){t.prototype=n(u,{next:o(1,r)}),i(t,e+" Iterator")}},6125:(t,e,r)=>{"use strict";var n=r(36794),o=r(98310),i=r(19312),u=r(62292),a=r(79105),c=r(19802),s=r(2413),f=r(999),l=r(24300)("iterator"),p=!([].keys&&"next"in[].keys()),d="keys",y="values",returnThis=function(){return this};t.exports=function(t,e,r,v,h,m,g){c(r,e,v);var _,b,x,getMethod=function(t){if(!p&&t in E)return E[t];switch(t){case d:return function keys(){return new r(this,t)};case y:return function values(){return new r(this,t)}}return function entries(){return new r(this,t)}},w=e+" Iterator",S=h==y,O=!1,E=t.prototype,j=E[l]||E["@@iterator"]||h&&E[h],P=j||getMethod(h),A=h?S?getMethod("entries"):P:void 0,T="Array"==e&&E.entries||j;if(T&&(x=f(T.call(new t)))!==Object.prototype&&x.next&&(s(x,w,!0),n||"function"==typeof x[l]||u(x,l,returnThis)),S&&j&&j.name!==y&&(O=!0,P=function values(){return j.call(this)}),n&&!g||!p&&!O&&E[l]||u(E,l,P),a[e]=P,a[w]=returnThis,h)if(_={values:S?P:getMethod(y),keys:m?P:getMethod(d),entries:A},g)for(b in _)b in E||i(E,b,_[b]);else o(o.P+o.F*(p||O),e,_);return _}},26797:(t,e,r)=>{var n=r(24300)("iterator"),o=!1;try{var i=[7][n]();i.return=function(){o=!0},Array.from(i,(function(){throw 2}))}catch(t){}t.exports=function(t,e){if(!e&&!o)return!1;var r=!1;try{var i=[7],u=i[n]();u.next=function(){return{done:r=!0}},i[n]=function(){return u},t(i)}catch(t){}return r}},9329:t=>{t.exports=function(t,e){return{value:e,done:!!t}}},79105:t=>{t.exports={}},36794:t=>{t.exports=!0},6758:(t,e,r)=>{var n=r(54251)("meta"),o=r(39632),i=r(20657),u=r(60510).f,a=0,c=Object.isExtensible||function(){return!0},s=!r(90472)((function(){return c(Object.preventExtensions({}))})),setMeta=function(t){u(t,n,{value:{i:"O"+ ++a,w:{}}})},f=t.exports={KEY:n,NEED:!1,fastKey:function(t,e){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,n)){if(!c(t))return"F";if(!e)return"E";setMeta(t)}return t[n].i},getWeak:function(t,e){if(!i(t,n)){if(!c(t))return!0;if(!e)return!1;setMeta(t)}return t[n].w},onFreeze:function(t){return s&&f.NEED&&c(t)&&!i(t,n)&&setMeta(t),t}}},77995:(t,e,r)=>{"use strict";var n=r(75179),o=r(86425),i=r(97739),u=r(67410),a=r(60061),c=r(13115),s=Object.assign;t.exports=!s||r(90472)((function(){var t={},e={},r=Symbol(),n="abcdefghijklmnopqrst";return t[r]=7,n.split("").forEach((function(t){e[t]=t})),7!=s({},t)[r]||Object.keys(s({},e)).join("")!=n}))?function assign(t,e){for(var r=a(t),s=arguments.length,f=1,l=i.f,p=u.f;s>f;)for(var d,y=c(arguments[f++]),v=l?o(y).concat(l(y)):o(y),h=v.length,m=0;h>m;)d=v[m++],n&&!p.call(y,d)||(r[d]=y[d]);return r}:s},82488:(t,e,r)=>{var n=r(30498),o=r(36607),i=r(31986),u=r(18478)("IE_PROTO"),Empty=function(){},createDict=function(){var t,e=r(48765)("iframe"),n=i.length;for(e.style.display="none",r(92477).appendChild(e),e.src="javascript:",(t=e.contentWindow.document).open(),t.write("<script>document.F=Object<\/script>"),t.close(),createDict=t.F;n--;)delete createDict.prototype[i[n]];return createDict()};t.exports=Object.create||function create(t,e){var r;return null!==t?(Empty.prototype=n(t),r=new Empty,Empty.prototype=null,r[u]=t):r=createDict(),void 0===e?r:o(r,e)}},60510:(t,e,r)=>{var n=r(30498),o=r(64457),i=r(12737),u=Object.defineProperty;e.f=r(75179)?Object.defineProperty:function defineProperty(t,e,r){if(n(t),e=i(e,!0),n(r),o)try{return u(t,e,r)}catch(t){}if("get"in r||"set"in r)throw TypeError("Accessors not supported!");return"value"in r&&(t[e]=r.value),t}},36607:(t,e,r)=>{var n=r(60510),o=r(30498),i=r(86425);t.exports=r(75179)?Object.defineProperties:function defineProperties(t,e){o(t);for(var r,u=i(e),a=u.length,c=0;a>c;)n.f(t,r=u[c++],e[r]);return t}},83264:(t,e,r)=>{var n=r(67410),o=r(48439),i=r(1504),u=r(12737),a=r(20657),c=r(64457),s=Object.getOwnPropertyDescriptor;e.f=r(75179)?s:function getOwnPropertyDescriptor(t,e){if(t=i(t),e=u(e,!0),c)try{return s(t,e)}catch(t){}if(a(t,e))return o(!n.f.call(t,e),t[e])}},26084:(t,e,r)=>{var n=r(1504),o=r(8772).f,i={}.toString,u="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];t.exports.f=function getOwnPropertyNames(t){return u&&"[object Window]"==i.call(t)?function(t){try{return o(t)}catch(t){return u.slice()}}(t):o(n(t))}},8772:(t,e,r)=>{var n=r(65326),o=r(31986).concat("length","prototype");e.f=Object.getOwnPropertyNames||function getOwnPropertyNames(t){return n(t,o)}},97739:(t,e)=>{e.f=Object.getOwnPropertySymbols},999:(t,e,r)=>{var n=r(20657),o=r(60061),i=r(18478)("IE_PROTO"),u=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=o(t),n(t,i)?t[i]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?u:null}},65326:(t,e,r)=>{var n=r(20657),o=r(1504),i=r(69191)(!1),u=r(18478)("IE_PROTO");t.exports=function(t,e){var r,a=o(t),c=0,s=[];for(r in a)r!=u&&n(a,r)&&s.push(r);for(;e.length>c;)n(a,r=e[c++])&&(~i(s,r)||s.push(r));return s}},86425:(t,e,r)=>{var n=r(65326),o=r(31986);t.exports=Object.keys||function keys(t){return n(t,o)}},67410:(t,e)=>{e.f={}.propertyIsEnumerable},57972:(t,e,r)=>{var n=r(98310),o=r(47208),i=r(90472);t.exports=function(t,e){var r=(o.Object||{})[t]||Object[t],u={};u[t]=e(r),n(n.S+n.F*i((function(){r(1)})),"Object",u)}},48439:t=>{t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},13199:(t,e,r)=>{var n=r(62292);t.exports=function(t,e,r){for(var o in e)r&&t[o]?t[o]=e[o]:n(t,o,e[o]);return t}},19312:(t,e,r)=>{t.exports=r(62292)},14689:(t,e,r)=>{"use strict";var n=r(98310),o=r(26610),i=r(61725),u=r(25985);t.exports=function(t){n(n.S,t,{from:function from(t){var e,r,n,a,c=arguments[1];return o(this),(e=void 0!==c)&&o(c),null==t?new this:(r=[],e?(n=0,a=i(c,arguments[2],2),u(t,!1,(function(t){r.push(a(t,n++))}))):u(t,!1,r.push,r),new this(r))}})}},7883:(t,e,r)=>{"use strict";var n=r(98310);t.exports=function(t){n(n.S,t,{of:function of(){for(var t=arguments.length,e=new Array(t);t--;)e[t]=arguments[t];return new this(e)}})}},2413:(t,e,r)=>{var n=r(60510).f,o=r(20657),i=r(24300)("toStringTag");t.exports=function(t,e,r){t&&!o(t=r?t:t.prototype,i)&&n(t,i,{configurable:!0,value:e})}},18478:(t,e,r)=>{var n=r(29990)("keys"),o=r(54251);t.exports=function(t){return n[t]||(n[t]=o(t))}},29990:(t,e,r)=>{var n=r(47208),o=r(43280),i="__core-js_shared__",u=o[i]||(o[i]={});(t.exports=function(t,e){return u[t]||(u[t]=void 0!==e?e:{})})("versions",[]).push({version:n.version,mode:r(36794)?"pure":"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})},78502:(t,e,r)=>{var n=r(58290),o=r(18239);t.exports=function(t){return function(e,r){var i,u,a=String(o(e)),c=n(r),s=a.length;return c<0||c>=s?t?"":void 0:(i=a.charCodeAt(c))<55296||i>56319||c+1===s||(u=a.charCodeAt(c+1))<56320||u>57343?t?a.charAt(c):i:t?a.slice(c,c+2):u-56320+(i-55296<<10)+65536}}},46723:(t,e,r)=>{var n=r(58290),o=Math.max,i=Math.min;t.exports=function(t,e){return(t=n(t))<0?o(t+e,0):i(t,e)}},58290:t=>{var e=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:e)(t)}},1504:(t,e,r)=>{var n=r(13115),o=r(18239);t.exports=function(t){return n(o(t))}},37154:(t,e,r)=>{var n=r(58290),o=Math.min;t.exports=function(t){return t>0?o(n(t),9007199254740991):0}},60061:(t,e,r)=>{var n=r(18239);t.exports=function(t){return Object(n(t))}},12737:(t,e,r)=>{var n=r(39632);t.exports=function(t,e){if(!n(t))return t;var r,o;if(e&&"function"==typeof(r=t.toString)&&!n(o=r.call(t)))return o;if("function"==typeof(r=t.valueOf)&&!n(o=r.call(t)))return o;if(!e&&"function"==typeof(r=t.toString)&&!n(o=r.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},54251:t=>{var e=0,r=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++e+r).toString(36))}},41081:(t,e,r)=>{var n=r(39632);t.exports=function(t,e){if(!n(t)||t._t!==e)throw TypeError("Incompatible receiver, "+e+" required!");return t}},31164:(t,e,r)=>{var n=r(43280),o=r(47208),i=r(36794),u=r(7273),a=r(60510).f;t.exports=function(t){var e=o.Symbol||(o.Symbol=i?{}:n.Symbol||{});"_"==t.charAt(0)||t in e||a(e,t,{value:u.f(t)})}},7273:(t,e,r)=>{e.f=r(24300)},24300:(t,e,r)=>{var n=r(29990)("wks"),o=r(54251),i=r(43280).Symbol,u="function"==typeof i;(t.exports=function(t){return n[t]||(n[t]=u&&i[t]||(u?i:o)("Symbol."+t))}).store=n},26116:(t,e,r)=>{var n=r(8312),o=r(24300)("iterator"),i=r(79105);t.exports=r(47208).getIteratorMethod=function(t){if(null!=t)return t[o]||t["@@iterator"]||i[n(t)]}},37627:(t,e,r)=>{"use strict";var n=r(61725),o=r(98310),i=r(60061),u=r(93086),a=r(11827),c=r(37154),s=r(87352),f=r(26116);o(o.S+o.F*!r(26797)((function(t){Array.from(t)})),"Array",{from:function from(t){var e,r,o,l,p=i(t),d="function"==typeof this?this:Array,y=arguments.length,v=y>1?arguments[1]:void 0,h=void 0!==v,m=0,g=f(p);if(h&&(v=n(v,y>2?arguments[2]:void 0,2)),null==g||d==Array&&a(g))for(r=new d(e=c(p.length));e>m;m++)s(r,m,h?v(p[m],m):p[m]);else for(l=g.call(p),r=new d;!(o=l.next()).done;m++)s(r,m,h?u(l,v,[o.value,m],!0):o.value);return r.length=m,r}})},42580:(t,e,r)=>{var n=r(98310);n(n.S,"Array",{isArray:r(7359)})},84411:(t,e,r)=>{"use strict";var n=r(29697),o=r(9329),i=r(79105),u=r(1504);t.exports=r(6125)(Array,"Array",(function(t,e){this._t=u(t),this._i=0,this._k=e}),(function(){var t=this._t,e=this._k,r=this._i++;return!t||r>=t.length?(this._t=void 0,o(1)):o(0,"keys"==e?r:"values"==e?t[r]:[r,t[r]])}),"values"),i.Arguments=i.Array,n("keys"),n("values"),n("entries")},40168:(t,e,r)=>{var n=r(98310);n(n.S+n.F*!r(75179),"Object",{defineProperty:r(60510).f})},18576:(t,e,r)=>{var n=r(1504),o=r(83264).f;r(57972)("getOwnPropertyDescriptor",(function(){return function getOwnPropertyDescriptor(t,e){return o(n(t),e)}}))},70285:()=>{},99572:(t,e,r)=>{"use strict";var n=r(78502)(!0);r(6125)(String,"String",(function(t){this._t=String(t),this._i=0}),(function(){var t,e=this._t,r=this._i;return r>=e.length?{value:void 0,done:!0}:(t=n(e,r),this._i+=t.length,{value:t,done:!1})}))},54370:(t,e,r)=>{"use strict";var n=r(43280),o=r(20657),i=r(75179),u=r(98310),a=r(19312),c=r(6758).KEY,s=r(90472),f=r(29990),l=r(2413),p=r(54251),d=r(24300),y=r(7273),v=r(31164),h=r(42266),m=r(7359),g=r(30498),_=r(39632),b=r(60061),x=r(1504),w=r(12737),S=r(48439),O=r(82488),E=r(26084),j=r(83264),P=r(97739),A=r(60510),T=r(86425),M=j.f,k=A.f,C=E.f,N=n.Symbol,R=n.JSON,L=R&&R.stringify,I=d("_hidden"),W=d("toPrimitive"),D={}.propertyIsEnumerable,B=f("symbol-registry"),q=f("symbols"),G=f("op-symbols"),U=Object.prototype,H="function"==typeof N&&!!P.f,z=n.QObject,V=!z||!z.prototype||!z.prototype.findChild,K=i&&s((function(){return 7!=O(k({},"a",{get:function(){return k(this,"a",{value:7}).a}})).a}))?function(t,e,r){var n=M(U,e);n&&delete U[e],k(t,e,r),n&&t!==U&&k(U,e,n)}:k,wrap=function(t){var e=q[t]=O(N.prototype);return e._k=t,e},J=H&&"symbol"==typeof N.iterator?function(t){return"symbol"==typeof t}:function(t){return t instanceof N},Q=function defineProperty(t,e,r){return t===U&&Q(G,e,r),g(t),e=w(e,!0),g(r),o(q,e)?(r.enumerable?(o(t,I)&&t[I][e]&&(t[I][e]=!1),r=O(r,{enumerable:S(0,!1)})):(o(t,I)||k(t,I,S(1,{})),t[I][e]=!0),K(t,e,r)):k(t,e,r)},Y=function defineProperties(t,e){g(t);for(var r,n=h(e=x(e)),o=0,i=n.length;i>o;)Q(t,r=n[o++],e[r]);return t},X=function propertyIsEnumerable(t){var e=D.call(this,t=w(t,!0));return!(this===U&&o(q,t)&&!o(G,t))&&(!(e||!o(this,t)||!o(q,t)||o(this,I)&&this[I][t])||e)},$=function getOwnPropertyDescriptor(t,e){if(t=x(t),e=w(e,!0),t!==U||!o(q,e)||o(G,e)){var r=M(t,e);return!r||!o(q,e)||o(t,I)&&t[I][e]||(r.enumerable=!0),r}},Z=function getOwnPropertyNames(t){for(var e,r=C(x(t)),n=[],i=0;r.length>i;)o(q,e=r[i++])||e==I||e==c||n.push(e);return n},tt=function getOwnPropertySymbols(t){for(var e,r=t===U,n=C(r?G:x(t)),i=[],u=0;n.length>u;)!o(q,e=n[u++])||r&&!o(U,e)||i.push(q[e]);return i};H||(a((N=function Symbol(){if(this instanceof N)throw TypeError("Symbol is not a constructor!");var t=p(arguments.length>0?arguments[0]:void 0),$set=function(e){this===U&&$set.call(G,e),o(this,I)&&o(this[I],t)&&(this[I][t]=!1),K(this,t,S(1,e))};return i&&V&&K(U,t,{configurable:!0,set:$set}),wrap(t)}).prototype,"toString",(function toString(){return this._k})),j.f=$,A.f=Q,r(8772).f=E.f=Z,r(67410).f=X,P.f=tt,i&&!r(36794)&&a(U,"propertyIsEnumerable",X,!0),y.f=function(t){return wrap(d(t))}),u(u.G+u.W+u.F*!H,{Symbol:N});for(var et="hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),rt=0;et.length>rt;)d(et[rt++]);for(var nt=T(d.store),ot=0;nt.length>ot;)v(nt[ot++]);u(u.S+u.F*!H,"Symbol",{for:function(t){return o(B,t+="")?B[t]:B[t]=N(t)},keyFor:function keyFor(t){if(!J(t))throw TypeError(t+" is not a symbol!");for(var e in B)if(B[e]===t)return e},useSetter:function(){V=!0},useSimple:function(){V=!1}}),u(u.S+u.F*!H,"Object",{create:function create(t,e){return void 0===e?O(t):Y(O(t),e)},defineProperty:Q,defineProperties:Y,getOwnPropertyDescriptor:$,getOwnPropertyNames:Z,getOwnPropertySymbols:tt});var it=s((function(){P.f(1)}));u(u.S+u.F*it,"Object",{getOwnPropertySymbols:function getOwnPropertySymbols(t){return P.f(b(t))}}),R&&u(u.S+u.F*(!H||s((function(){var t=N();return"[null]"!=L([t])||"{}"!=L({a:t})||"{}"!=L(Object(t))}))),"JSON",{stringify:function stringify(t){for(var e,r,n=[t],o=1;arguments.length>o;)n.push(arguments[o++]);if(r=e=n[1],(_(e)||void 0!==t)&&!J(t))return m(e)||(e=function(t,e){if("function"==typeof r&&(e=r.call(this,t,e)),!J(e))return e}),n[1]=e,L.apply(R,n)}}),N.prototype[W]||r(62292)(N.prototype,W,N.prototype.valueOf),l(N,"Symbol"),l(Math,"Math",!0),l(n.JSON,"JSON",!0)},23337:(t,e,r)=>{"use strict";var n,o=r(43280),i=r(97647)(0),u=r(19312),a=r(6758),c=r(77995),s=r(92600),f=r(39632),l=r(41081),p=r(41081),d=!o.ActiveXObject&&"ActiveXObject"in o,y="WeakMap",v=a.getWeak,h=Object.isExtensible,m=s.ufstore,wrapper=function(t){return function WeakMap(){return t(this,arguments.length>0?arguments[0]:void 0)}},g={get:function get(t){if(f(t)){var e=v(t);return!0===e?m(l(this,y)).get(t):e?e[this._i]:void 0}},set:function set(t,e){return s.def(l(this,y),t,e)}},_=t.exports=r(70770)(y,wrapper,g,s,!0,!0);p&&d&&(c((n=s.getConstructor(wrapper,y)).prototype,g),a.NEED=!0,i(["delete","has","get","set"],(function(t){var e=_.prototype,r=e[t];u(e,t,(function(e,o){if(f(e)&&!h(e)){this._f||(this._f=new n);var i=this._f[t](e,o);return"set"==t?this:i}return r.call(this,e,o)}))})))},87573:(t,e,r)=>{r(31164)("asyncIterator")},97224:(t,e,r)=>{r(31164)("observable")},92797:(t,e,r)=>{r(14689)("WeakMap")},10143:(t,e,r)=>{r(7883)("WeakMap")},74114:(t,e,r)=>{r(84411);for(var n=r(43280),o=r(62292),i=r(79105),u=r(24300)("toStringTag"),a="CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList".split(","),c=0;c<a.length;c++){var s=a[c],f=n[s],l=f&&f.prototype;l&&!l[u]&&o(l,u,s),i[s]=i.Array}},22761:t=>{t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},6365:(t,e,r)=>{var n=r(67334);t.exports=function(t){if(!n(t))throw TypeError(t+" is not an object!");return t}},78309:(t,e,r)=>{var n=r(11528),o=r(8467),i=r(26033),u=r(26078),a=r(63531);t.exports=function(t,e){var r=1==t,c=2==t,s=3==t,f=4==t,l=6==t,p=5==t||l,d=e||a;return function(e,a,y){for(var v,h,m=i(e),g=o(m),_=n(a,y,3),b=u(g.length),x=0,w=r?d(e,b):c?d(e,0):void 0;b>x;x++)if((p||x in g)&&(h=_(v=g[x],x,m),t))if(r)w[x]=h;else if(h)switch(t){case 3:return!0;case 5:return v;case 6:return x;case 2:w.push(v)}else if(f)return!1;return l?-1:s||f?f:w}}},81071:(t,e,r)=>{var n=r(67334),o=r(99141),i=r(62190)("species");t.exports=function(t){var e;return o(t)&&("function"!=typeof(e=t.constructor)||e!==Array&&!o(e.prototype)||(e=void 0),n(e)&&null===(e=e[i])&&(e=void 0)),void 0===e?Array:e}},63531:(t,e,r)=>{var n=r(81071);t.exports=function(t,e){return new(n(t))(e)}},20106:(t,e,r)=>{var n=r(26688),o=r(62190)("toStringTag"),i="Arguments"==n(function(){return arguments}());t.exports=function(t){var e,r,u;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(r=function(t,e){try{return t[e]}catch(t){}}(e=Object(t),o))?r:i?n(e):"Object"==(u=n(e))&&"function"==typeof e.callee?"Arguments":u}},26688:t=>{var e={}.toString;t.exports=function(t){return e.call(t).slice(8,-1)}},60066:t=>{var e=t.exports={version:"2.6.12"};"number"==typeof __e&&(__e=e)},11528:(t,e,r)=>{var n=r(22761);t.exports=function(t,e,r){if(n(t),void 0===e)return t;switch(r){case 1:return function(r){return t.call(e,r)};case 2:return function(r,n){return t.call(e,r,n)};case 3:return function(r,n,o){return t.call(e,r,n,o)}}return function(){return t.apply(e,arguments)}}},61622:t=>{t.exports=function(t){if(null==t)throw TypeError("Can't call method on  "+t);return t}},36628:(t,e,r)=>{t.exports=!r(48625)((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},5050:(t,e,r)=>{var n=r(67334),o=r(38113).document,i=n(o)&&n(o.createElement);t.exports=function(t){return i?o.createElement(t):{}}},65772:(t,e,r)=>{var n=r(38113),o=r(60066),i=r(74216),u=r(17738),a=r(11528),$export=function(t,e,r){var c,s,f,l,p=t&$export.F,d=t&$export.G,y=t&$export.S,v=t&$export.P,h=t&$export.B,m=d?n:y?n[e]||(n[e]={}):(n[e]||{}).prototype,g=d?o:o[e]||(o[e]={}),_=g.prototype||(g.prototype={});for(c in d&&(r=e),r)f=((s=!p&&m&&void 0!==m[c])?m:r)[c],l=h&&s?a(f,n):v&&"function"==typeof f?a(Function.call,f):f,m&&u(m,c,f,t&$export.U),g[c]!=f&&i(g,c,l),v&&_[c]!=f&&(_[c]=f)};n.core=o,$export.F=1,$export.G=2,$export.S=4,$export.P=8,$export.B=16,$export.W=32,$export.U=64,$export.R=128,t.exports=$export},48625:t=>{t.exports=function(t){try{return!!t()}catch(t){return!0}}},74859:(t,e,r)=>{"use strict";var n=r(6365);t.exports=function(){var t=n(this),e="";return t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.unicode&&(e+="u"),t.sticky&&(e+="y"),e}},20646:(t,e,r)=>{t.exports=r(8655)("native-function-to-string",Function.toString)},38113:t=>{var e=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=e)},54040:t=>{var e={}.hasOwnProperty;t.exports=function(t,r){return e.call(t,r)}},74216:(t,e,r)=>{var n=r(98558),o=r(36061);t.exports=r(36628)?function(t,e,r){return n.f(t,e,o(1,r))}:function(t,e,r){return t[e]=r,t}},5100:(t,e,r)=>{t.exports=!r(36628)&&!r(48625)((function(){return 7!=Object.defineProperty(r(5050)("div"),"a",{get:function(){return 7}}).a}))},8467:(t,e,r)=>{var n=r(26688);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==n(t)?t.split(""):Object(t)}},99141:(t,e,r)=>{var n=r(26688);t.exports=Array.isArray||function isArray(t){return"Array"==n(t)}},67334:t=>{t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},81422:t=>{t.exports=!1},98558:(t,e,r)=>{var n=r(6365),o=r(5100),i=r(31382),u=Object.defineProperty;e.f=r(36628)?Object.defineProperty:function defineProperty(t,e,r){if(n(t),e=i(e,!0),n(r),o)try{return u(t,e,r)}catch(t){}if("get"in r||"set"in r)throw TypeError("Accessors not supported!");return"value"in r&&(t[e]=r.value),t}},36061:t=>{t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},17738:(t,e,r)=>{var n=r(38113),o=r(74216),i=r(54040),u=r(25078)("src"),a=r(20646),c="toString",s=(""+a).split(c);r(60066).inspectSource=function(t){return a.call(t)},(t.exports=function(t,e,r,a){var c="function"==typeof r;c&&(i(r,"name")||o(r,"name",e)),t[e]!==r&&(c&&(i(r,u)||o(r,u,t[e]?""+t[e]:s.join(String(e)))),t===n?t[e]=r:a?t[e]?t[e]=r:o(t,e,r):(delete t[e],o(t,e,r)))})(Function.prototype,c,(function toString(){return"function"==typeof this&&this[u]||a.call(this)}))},8655:(t,e,r)=>{var n=r(60066),o=r(38113),i="__core-js_shared__",u=o[i]||(o[i]={});(t.exports=function(t,e){return u[t]||(u[t]=void 0!==e?e:{})})("versions",[]).push({version:n.version,mode:r(81422)?"pure":"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})},10225:(t,e,r)=>{"use strict";var n=r(48625);t.exports=function(t,e){return!!t&&n((function(){e?t.call(null,(function(){}),1):t.call(null)}))}},3338:t=>{var e=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:e)(t)}},26078:(t,e,r)=>{var n=r(3338),o=Math.min;t.exports=function(t){return t>0?o(n(t),9007199254740991):0}},26033:(t,e,r)=>{var n=r(61622);t.exports=function(t){return Object(n(t))}},31382:(t,e,r)=>{var n=r(67334);t.exports=function(t,e){if(!n(t))return t;var r,o;if(e&&"function"==typeof(r=t.toString)&&!n(o=r.call(t)))return o;if("function"==typeof(r=t.valueOf)&&!n(o=r.call(t)))return o;if(!e&&"function"==typeof(r=t.toString)&&!n(o=r.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},25078:t=>{var e=0,r=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++e+r).toString(36))}},62190:(t,e,r)=>{var n=r(8655)("wks"),o=r(25078),i=r(38113).Symbol,u="function"==typeof i;(t.exports=function(t){return n[t]||(n[t]=u&&i[t]||(u?i:o)("Symbol."+t))}).store=n},90286:(t,e,r)=>{"use strict";var n=r(65772),o=r(78309)(1);n(n.P+n.F*!r(10225)([].map,!0),"Array",{map:function map(t){return o(this,t,arguments[1])}})},76139:(t,e,r)=>{"use strict";var n=r(20106),o={};o[r(62190)("toStringTag")]="z",o+""!="[object z]"&&r(17738)(Object.prototype,"toString",(function toString(){return"[object "+n(this)+"]"}),!0)},40751:(t,e,r)=>{r(36628)&&"g"!=/./g.flags&&r(98558).f(RegExp.prototype,"flags",{configurable:!0,get:r(74859)})},44321:(t,e,r)=>{"use strict";r(40751);var n=r(6365),o=r(74859),i=r(36628),u="toString",a=/./.toString,define=function(t){r(17738)(RegExp.prototype,u,t,!0)};r(48625)((function(){return"/a/b"!=a.call({source:"a",flags:"b"})}))?define((function toString(){var t=n(this);return"/".concat(t.source,"/","flags"in t?t.flags:!i&&t instanceof RegExp?o.call(t):void 0)})):a.name!=u&&define((function toString(){return a.call(this)}))},58772:(t,e,r)=>{"use strict";var n=r(90331);function emptyFunction(){}function emptyFunctionWithReset(){}emptyFunctionWithReset.resetWarningCache=emptyFunction,t.exports=function(){function shim(t,e,r,o,i,u){if(u!==n){var a=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw a.name="Invariant Violation",a}}function getShim(){return shim}shim.isRequired=shim;var t={array:shim,bool:shim,func:shim,number:shim,object:shim,string:shim,symbol:shim,any:shim,arrayOf:getShim,element:shim,elementType:shim,instanceOf:getShim,node:shim,objectOf:getShim,oneOf:getShim,oneOfType:getShim,shape:getShim,exact:getShim,checkPropTypes:emptyFunctionWithReset,resetWarningCache:emptyFunction};return t.PropTypes=t,t}},23615:(t,e,r)=>{t.exports=r(58772)()},90331:t=>{"use strict";t.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},63804:t=>{"use strict";t.exports=React},27196:t=>{"use strict";t.exports=ReactDOM},18194:t=>{"use strict";t.exports=wp.i18n}},e={};function __webpack_require__(r){var n=e[r];if(void 0!==n)return n.exports;var o=e[r]={exports:{}};return t[r](o,o.exports,__webpack_require__),o.exports}(()=>{"use strict";var t=__webpack_require__(27196),e=__webpack_require__(67971),r=e(__webpack_require__(63804));__webpack_require__(90286);var n=e(__webpack_require__(23680)),o=elementorCommon.config.isDebug?r.default.StrictMode:r.default.Fragment,i=document.getElementById("e-admin-top-bar-root"),u=["toplevel_page_elementor","menu-posts-elementor_library"].map((function(t){return"#".concat(t," .wp-menu-open")})).join(", ");!!document.querySelector(u)&&t.render(r.default.createElement(o,null,r.default.createElement(n.default,null)),i)})()})();assets/js/counter.b452600865ffc51a6ea0.bundle.js000064400000003140151327220410014550 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(self["webpackChunkelementor"] = self["webpackChunkelementor"] || []).push([["counter"],{

/***/ "../assets/dev/js/frontend/handlers/counter.js":
/*!*****************************************************!*\
  !*** ../assets/dev/js/frontend/handlers/counter.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

class Counter extends elementorModules.frontend.handlers.Base {
  getDefaultSettings() {
    return {
      selectors: {
        counterNumber: '.elementor-counter-number'
      }
    };
  }

  getDefaultElements() {
    const selectors = this.getSettings('selectors');
    return {
      $counterNumber: this.$element.find(selectors.counterNumber)
    };
  }

  onInit() {
    super.onInit();
    this.intersectionObserver = elementorModules.utils.Scroll.scrollObserver({
      callback: event => {
        if (event.isInViewport) {
          this.intersectionObserver.unobserve(this.elements.$counterNumber[0]);
          const data = this.elements.$counterNumber.data(),
                decimalDigits = data.toValue.toString().match(/\.(.*)/);

          if (decimalDigits) {
            data.rounding = decimalDigits[1].length;
          }

          this.elements.$counterNumber.numerator(data);
        }
      }
    });
    this.intersectionObserver.observe(this.elements.$counterNumber[0]);
  }

}

exports.default = Counter;

/***/ })

}]);
//# sourceMappingURL=counter.b452600865ffc51a6ea0.bundle.js.mapassets/js/video.509fb0e07b97e0f603d7.bundle.js000064400000014752151327220410014225 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(self["webpackChunkelementor"] = self["webpackChunkelementor"] || []).push([["video"],{

/***/ "../assets/dev/js/frontend/handlers/video.js":
/*!***************************************************!*\
  !*** ../assets/dev/js/frontend/handlers/video.js ***!
  \***************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.default = void 0;

class Video extends elementorModules.frontend.handlers.Base {
  getDefaultSettings() {
    return {
      selectors: {
        imageOverlay: '.elementor-custom-embed-image-overlay',
        video: '.elementor-video',
        videoIframe: '.elementor-video-iframe'
      }
    };
  }

  getDefaultElements() {
    const selectors = this.getSettings('selectors');
    return {
      $imageOverlay: this.$element.find(selectors.imageOverlay),
      $video: this.$element.find(selectors.video),
      $videoIframe: this.$element.find(selectors.videoIframe)
    };
  }

  handleVideo() {
    if (this.getElementSettings('lightbox')) {
      return;
    }

    if ('youtube' === this.getElementSettings('video_type')) {
      this.apiProvider.onApiReady(apiObject => {
        this.elements.$imageOverlay.remove();
        this.prepareYTVideo(apiObject, true);
      });
    } else {
      this.elements.$imageOverlay.remove();
      this.playVideo();
    }
  }

  playVideo() {
    if (this.elements.$video.length) {
      // this.youtubePlayer exists only for YouTube videos, and its play function is different.
      if (this.youtubePlayer) {
        this.youtubePlayer.playVideo();
      } else {
        this.elements.$video[0].play();
      }

      return;
    }

    const $videoIframe = this.elements.$videoIframe,
          lazyLoad = $videoIframe.data('lazy-load');

    if (lazyLoad) {
      $videoIframe.attr('src', lazyLoad);
    }

    $videoIframe[0].src = this.apiProvider.getAutoplayURL($videoIframe[0].src);
  }

  async animateVideo() {
    const lightbox = await elementorFrontend.utils.lightbox;
    lightbox.setEntranceAnimation(this.getCurrentDeviceSetting('lightbox_content_animation'));
  }

  async handleAspectRatio() {
    const lightbox = await elementorFrontend.utils.lightbox;
    lightbox.setVideoAspectRatio(this.getElementSettings('aspect_ratio'));
  }

  async hideLightbox() {
    const lightbox = await elementorFrontend.utils.lightbox;
    lightbox.getModal().hide();
  }

  prepareYTVideo(YT, onOverlayClick) {
    const elementSettings = this.getElementSettings(),
          playerOptions = {
      videoId: this.videoID,
      events: {
        onReady: () => {
          if (elementSettings.mute) {
            this.youtubePlayer.mute();
          }

          if (elementSettings.autoplay || onOverlayClick) {
            this.youtubePlayer.playVideo();
          }
        },
        onStateChange: event => {
          if (event.data === YT.PlayerState.ENDED && elementSettings.loop) {
            this.youtubePlayer.seekTo(elementSettings.start || 0);
          }
        }
      },
      playerVars: {
        controls: elementSettings.controls ? 1 : 0,
        rel: elementSettings.rel ? 1 : 0,
        playsinline: elementSettings.play_on_mobile ? 1 : 0,
        modestbranding: elementSettings.modestbranding ? 1 : 0,
        autoplay: elementSettings.autoplay ? 1 : 0,
        start: elementSettings.start,
        end: elementSettings.end
      }
    }; // To handle CORS issues, when the default host is changed, the origin parameter has to be set.

    if (elementSettings.yt_privacy) {
      playerOptions.host = 'https://www.youtube-nocookie.com';
      playerOptions.origin = window.location.hostname;
    }

    this.youtubePlayer = new YT.Player(this.elements.$video[0], playerOptions);
  }

  bindEvents() {
    this.elements.$imageOverlay.on('click', this.handleVideo.bind(this));
  }

  onInit() {
    super.onInit();
    const elementSettings = this.getElementSettings();

    if (elementorFrontend.utils[elementSettings.video_type]) {
      this.apiProvider = elementorFrontend.utils[elementSettings.video_type];
    } else {
      this.apiProvider = elementorFrontend.utils.baseVideoLoader;
    }

    if ('youtube' !== elementSettings.video_type) {
      // Currently the only API integration in the Video widget is for the YT API
      return;
    }

    this.videoID = this.apiProvider.getVideoIDFromURL(elementSettings.youtube_url); // If there is an image overlay, the YouTube video prep method will be triggered on click

    if (!this.videoID) {
      return;
    } // If the user is using an image overlay, loading the API happens on overlay click instead of on init.


    if (elementSettings.show_image_overlay && elementSettings.image_overlay.url) {
      return;
    }

    if (elementSettings.lazy_load) {
      this.intersectionObserver = elementorModules.utils.Scroll.scrollObserver({
        callback: event => {
          if (event.isInViewport) {
            this.intersectionObserver.unobserve(this.elements.$video.parent()[0]);
            this.apiProvider.onApiReady(apiObject => this.prepareYTVideo(apiObject));
          }
        }
      }); // We observe the parent, since the video container has a height of 0.

      this.intersectionObserver.observe(this.elements.$video.parent()[0]);
      return;
    } // When Optimized asset loading is set to off, the video type is set to 'Youtube', and 'Privacy Mode' is set
    // to 'On', there might be a conflict with other videos that are loaded WITHOUT privacy mode, such as a
    // video bBackground in a section. In these cases, to avoid the conflict, a timeout is added to postpone the
    // initialization of the Youtube API object.


    if (!elementorFrontend.config.experimentalFeatures['e_optimized_assets_loading']) {
      setTimeout(() => {
        this.apiProvider.onApiReady(apiObject => this.prepareYTVideo(apiObject));
      }, 0);
    } else {
      this.apiProvider.onApiReady(apiObject => this.prepareYTVideo(apiObject));
    }
  }

  onElementChange(propertyName) {
    if (0 === propertyName.indexOf('lightbox_content_animation')) {
      this.animateVideo();
      return;
    }

    const isLightBoxEnabled = this.getElementSettings('lightbox');

    if ('lightbox' === propertyName && !isLightBoxEnabled) {
      this.hideLightbox();
      return;
    }

    if ('aspect_ratio' === propertyName && isLightBoxEnabled) {
      this.handleAspectRatio();
    }
  }

}

exports.default = Video;

/***/ })

}]);
//# sourceMappingURL=video.509fb0e07b97e0f603d7.bundle.js.mapassets/js/text-editor.9efe2dca043f0f618897.bundle.min.js000064400000002513151327220410016233 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(self.webpackChunkelementor=self.webpackChunkelementor||[]).push([[357],{1327:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class TextEditor extends elementorModules.frontend.handlers.Base{getDefaultSettings(){return{selectors:{paragraph:"p:first"},classes:{dropCap:"elementor-drop-cap",dropCapLetter:"elementor-drop-cap-letter"}}}getDefaultElements(){const e=this.getSettings("selectors"),t=this.getSettings("classes"),r=jQuery("<span>",{class:t.dropCap}),p=jQuery("<span>",{class:t.dropCapLetter});return r.append(p),{$paragraph:this.$element.find(e.paragraph),$dropCap:r,$dropCapLetter:p}}wrapDropCap(){if(!this.getElementSettings("drop_cap"))return void(this.dropCapLetter&&(this.elements.$dropCap.remove(),this.elements.$paragraph.prepend(this.dropCapLetter),this.dropCapLetter=""));const e=this.elements.$paragraph;if(!e.length)return;const t=e.html().replace(/&nbsp;/g," "),r=t.match(/^ *([^ ] ?)/);if(!r)return;const p=r[1],s=p.trim();if("<"===s)return;this.dropCapLetter=p,this.elements.$dropCapLetter.text(s);const a=t.slice(p.length).replace(/^ */,(e=>new Array(e.length+1).join("&nbsp;")));e.html(a).prepend(this.elements.$dropCap)}onInit(...e){super.onInit(...e),this.wrapDropCap()}onElementChange(e){"drop_cap"===e&&this.wrapDropCap()}}t.default=TextEditor}}]);assets/js/common.min.js000064400000524237151327220410011104 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(()=>{var t={75453:(t,r,a)=>{t.exports=a(7421)},59396:(t,r,a)=>{t.exports=a(70157)},32009:(t,r,a)=>{t.exports=a(89710)},15091:(t,r,a)=>{t.exports=a(373)},15149:(t,r,a)=>{t.exports=a(66458)},38401:(t,r,a)=>{t.exports=a(14710)},92937:(t,r,a)=>{t.exports=a(23022)},67394:(t,r,a)=>{t.exports=a(43153)},38923:(t,r,a)=>{t.exports=a(8531)},23587:(t,r,a)=>{t.exports=a(32622)},63774:(t,r,a)=>{t.exports=a(27410)},95315:(t,r,a)=>{t.exports=a(19035)},82055:(t,r,a)=>{t.exports=a(58535)},83452:(t,r,a)=>{t.exports=a(97220)},28274:(t,r,a)=>{t.exports=a(65135)},35657:(t,r,a)=>{t.exports=a(69591)},73220:(t,r,a)=>{t.exports=a(76483)},75499:(t,r,a)=>{t.exports=a(43094)},78282:(t,r,a)=>{t.exports=a(17641)},41281:(t,r,a)=>{t.exports=a(19103)},29363:(t,r,a)=>{t.exports=a(21114)},50093:(t,r,a)=>{t.exports=a(39871)},93168:(t,r,a)=>{t.exports=a(89999)},72292:t=>{t.exports=function _arrayLikeToArray(t,r){(null==r||r>t.length)&&(r=t.length);for(var a=0,o=new Array(r);a<r;a++)o[a]=t[a];return o},t.exports.default=t.exports,t.exports.__esModule=!0},86870:(t,r,a)=>{var o=a(59396);t.exports=function _arrayWithHoles(t){if(o(t))return t},t.exports.default=t.exports,t.exports.__esModule=!0},38852:t=>{t.exports=function _assertThisInitialized(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t},t.exports.default=t.exports,t.exports.__esModule=!0},49117:(t,r,a)=>{var o=a(73220);function asyncGeneratorStep(t,r,a,i,u,l,c){try{var d=t[l](c),p=d.value}catch(t){return void a(t)}d.done?r(p):o.resolve(p).then(i,u)}t.exports=function _asyncToGenerator(t){return function(){var r=this,a=arguments;return new o((function(o,i){var u=t.apply(r,a);function _next(t){asyncGeneratorStep(u,o,i,_next,_throw,"next",t)}function _throw(t){asyncGeneratorStep(u,o,i,_next,_throw,"throw",t)}_next(void 0)}))}},t.exports.default=t.exports,t.exports.__esModule=!0},11959:t=>{t.exports=function _classCallCheck(t,r){if(!(t instanceof r))throw new TypeError("Cannot call a class as a function")},t.exports.default=t.exports,t.exports.__esModule=!0},60846:(t,r,a)=>{var o=a(75499),i=a(76870),u=a(898);function _construct(r,a,l){return u()?(t.exports=_construct=o,t.exports.default=t.exports,t.exports.__esModule=!0):(t.exports=_construct=function _construct(t,r,a){var o=[null];o.push.apply(o,r);var u=new(Function.bind.apply(t,o));return a&&i(u,a.prototype),u},t.exports.default=t.exports,t.exports.__esModule=!0),_construct.apply(null,arguments)}t.exports=_construct,t.exports.default=t.exports,t.exports.__esModule=!0},39041:(t,r,a)=>{var o=a(67394);function _defineProperties(t,r){for(var a=0;a<r.length;a++){var i=r[a];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),o(t,i.key,i)}}t.exports=function _createClass(t,r,a){return r&&_defineProperties(t.prototype,r),a&&_defineProperties(t,a),t},t.exports.default=t.exports,t.exports.__esModule=!0},74758:(t,r,a)=>{var o=a(41281),i=a(50093),u=a(59396),l=a(24594);t.exports=function _createForOfIteratorHelper(t,r){var a=void 0!==o&&t[i]||t["@@iterator"];if(!a){if(u(t)||(a=l(t))||r&&t&&"number"==typeof t.length){a&&(t=a);var c=0,d=function F(){};return{s:d,n:function n(){return c>=t.length?{done:!0}:{done:!1,value:t[c++]}},e:function e(t){throw t},f:d}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var p,v=!0,h=!1;return{s:function s(){a=a.call(t)},n:function n(){var t=a.next();return v=t.done,t},e:function e(t){h=!0,p=t},f:function f(){try{v||null==a.return||a.return()}finally{if(h)throw p}}}},t.exports.default=t.exports,t.exports.__esModule=!0},68537:(t,r,a)=>{var o=a(75499),i=a(44263),u=a(898),l=a(59771);t.exports=function _createSuper(t){var r=u();return function _createSuperInternal(){var a,u=i(t);if(r){var c=i(this).constructor;a=o(u,arguments,c)}else a=u.apply(this,arguments);return l(this,a)}},t.exports.default=t.exports,t.exports.__esModule=!0},18042:(t,r,a)=>{var o=a(67394);t.exports=function _defineProperty(t,r,a){return r in t?o(t,r,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[r]=a,t},t.exports.default=t.exports,t.exports.__esModule=!0},76700:(t,r,a)=>{var o=a(78282),i=a(23587),u=a(49445);function _get(r,a,l){return"undefined"!=typeof Reflect&&o?(t.exports=_get=o,t.exports.default=t.exports,t.exports.__esModule=!0):(t.exports=_get=function _get(t,r,a){var o=u(t,r);if(o){var l=i(o,r);return l.get?l.get.call(a):l.value}},t.exports.default=t.exports,t.exports.__esModule=!0),_get(r,a,l||r)}t.exports=_get,t.exports.default=t.exports,t.exports.__esModule=!0},44263:(t,r,a)=>{var o=a(28274),i=a(82055);function _getPrototypeOf(r){return t.exports=_getPrototypeOf=o?i:function _getPrototypeOf(t){return t.__proto__||i(t)},t.exports.default=t.exports,t.exports.__esModule=!0,_getPrototypeOf(r)}t.exports=_getPrototypeOf,t.exports.default=t.exports,t.exports.__esModule=!0},77371:(t,r,a)=>{var o=a(38401),i=a(76870);t.exports=function _inherits(t,r){if("function"!=typeof r&&null!==r)throw new TypeError("Super expression must either be null or a function");t.prototype=o(r&&r.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),r&&i(t,r)},t.exports.default=t.exports,t.exports.__esModule=!0},67971:t=>{t.exports=function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}},t.exports.default=t.exports,t.exports.__esModule=!0},52369:(t,r,a)=>{var o=a(24596).default,i=a(93168),u=a(67394),l=a(23587);function _getRequireWildcardCache(t){if("function"!=typeof i)return null;var r=new i,a=new i;return(_getRequireWildcardCache=function _getRequireWildcardCache(t){return t?a:r})(t)}t.exports=function _interopRequireWildcard(t,r){if(!r&&t&&t.__esModule)return t;if(null===t||"object"!==o(t)&&"function"!=typeof t)return{default:t};var a=_getRequireWildcardCache(r);if(a&&a.has(t))return a.get(t);var i={},c=u&&l;for(var d in t)if("default"!==d&&Object.prototype.hasOwnProperty.call(t,d)){var p=c?l(t,d):null;p&&(p.get||p.set)?u(i,d,p):i[d]=t[d]}return i.default=t,a&&a.set(t,i),i},t.exports.default=t.exports,t.exports.__esModule=!0},60653:t=>{t.exports=function _isNativeFunction(t){return-1!==Function.toString.call(t).indexOf("[native code]")},t.exports.default=t.exports,t.exports.__esModule=!0},898:(t,r,a)=>{var o=a(75499);t.exports=function _isNativeReflectConstruct(){if("undefined"==typeof Reflect||!o)return!1;if(o.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(o(Boolean,[],(function(){}))),!0}catch(t){return!1}},t.exports.default=t.exports,t.exports.__esModule=!0},79968:(t,r,a)=>{var o=a(41281),i=a(50093);t.exports=function _iterableToArrayLimit(t,r){var a=null==t?null:void 0!==o&&t[i]||t["@@iterator"];if(null!=a){var u,l,c=[],d=!0,p=!1;try{for(a=a.call(t);!(d=(u=a.next()).done)&&(c.push(u.value),!r||c.length!==r);d=!0);}catch(t){p=!0,l=t}finally{try{d||null==a.return||a.return()}finally{if(p)throw l}}return c}},t.exports.default=t.exports,t.exports.__esModule=!0},39198:t=>{t.exports=function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")},t.exports.default=t.exports,t.exports.__esModule=!0},84899:(t,r,a)=>{var o=a(83452),i=a(95315),u=a(23587),l=a(63774),c=a(92937),d=a(67394),p=a(18042);function ownKeys(t,r){var a=o(t);if(i){var l=i(t);r&&(l=l.filter((function(r){return u(t,r).enumerable}))),a.push.apply(a,l)}return a}t.exports=function _objectSpread2(t){for(var r=1;r<arguments.length;r++){var a=null!=arguments[r]?arguments[r]:{};r%2?ownKeys(Object(a),!0).forEach((function(r){p(t,r,a[r])})):l?c(t,l(a)):ownKeys(Object(a)).forEach((function(r){d(t,r,u(a,r))}))}return t},t.exports.default=t.exports,t.exports.__esModule=!0},59771:(t,r,a)=>{var o=a(24596).default,i=a(38852);t.exports=function _possibleConstructorReturn(t,r){return!r||"object"!==o(r)&&"function"!=typeof r?i(t):r},t.exports.default=t.exports,t.exports.__esModule=!0},76870:(t,r,a)=>{var o=a(28274);function _setPrototypeOf(r,a){return t.exports=_setPrototypeOf=o||function _setPrototypeOf(t,r){return t.__proto__=r,t},t.exports.default=t.exports,t.exports.__esModule=!0,_setPrototypeOf(r,a)}t.exports=_setPrototypeOf,t.exports.default=t.exports,t.exports.__esModule=!0},47834:(t,r,a)=>{var o=a(86870),i=a(79968),u=a(24594),l=a(39198);t.exports=function _slicedToArray(t,r){return o(t)||i(t,r)||u(t,r)||l()},t.exports.default=t.exports,t.exports.__esModule=!0},49445:(t,r,a)=>{var o=a(44263);t.exports=function _superPropBase(t,r){for(;!Object.prototype.hasOwnProperty.call(t,r)&&null!==(t=o(t)););return t},t.exports.default=t.exports,t.exports.__esModule=!0},24596:(t,r,a)=>{var o=a(41281),i=a(50093);function _typeof(r){return"function"==typeof o&&"symbol"==typeof i?(t.exports=_typeof=function _typeof(t){return typeof t},t.exports.default=t.exports,t.exports.__esModule=!0):(t.exports=_typeof=function _typeof(t){return t&&"function"==typeof o&&t.constructor===o&&t!==o.prototype?"symbol":typeof t},t.exports.default=t.exports,t.exports.__esModule=!0),_typeof(r)}t.exports=_typeof,t.exports.default=t.exports,t.exports.__esModule=!0},24594:(t,r,a)=>{var o=a(75453),i=a(72292);t.exports=function _unsupportedIterableToArray(t,r){if(t){if("string"==typeof t)return i(t,r);var a=Object.prototype.toString.call(t).slice(8,-1);return"Object"===a&&t.constructor&&(a=t.constructor.name),"Map"===a||"Set"===a?o(t):"Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?i(t,r):void 0}},t.exports.default=t.exports,t.exports.__esModule=!0},73629:(t,r,a)=>{var o=a(15091),i=a(38401),u=a(44263),l=a(76870),c=a(60653),d=a(60846);function _wrapNativeSuper(r){var a="function"==typeof o?new o:void 0;return t.exports=_wrapNativeSuper=function _wrapNativeSuper(t){if(null===t||!c(t))return t;if("function"!=typeof t)throw new TypeError("Super expression must either be null or a function");if(void 0!==a){if(a.has(t))return a.get(t);a.set(t,Wrapper)}function Wrapper(){return d(t,arguments,u(this).constructor)}return Wrapper.prototype=i(t.prototype,{constructor:{value:Wrapper,enumerable:!1,writable:!0,configurable:!0}}),l(Wrapper,t)},t.exports.default=t.exports,t.exports.__esModule=!0,_wrapNativeSuper(r)}t.exports=_wrapNativeSuper,t.exports.default=t.exports,t.exports.__esModule=!0},57135:(t,r,a)=>{t.exports=a(86248)},42618:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var u=i(a(24596)),l=i(a(11959)),c=i(a(39041)),d=i(a(77371)),p=i(a(68537)),v=function(t){(0,d.default)(ArgsObject,t);var r=(0,p.default)(ArgsObject);function ArgsObject(t){var a;return(0,l.default)(this,ArgsObject),(a=r.call(this)).args=t,a}return(0,c.default)(ArgsObject,[{key:"requireArgument",value:function requireArgument(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.args;if(!r.hasOwnProperty(t))throw Error("".concat(t," is required."))}},{key:"requireArgumentType",value:function requireArgumentType(t,r){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.args;if(this.requireArgument(t,a),(0,u.default)(a[t])!==r)throw Error("".concat(t," invalid type: ").concat(r,"."))}},{key:"requireArgumentInstance",value:function requireArgumentInstance(t,r){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.args;if(this.requireArgument(t,a),!(a[t]instanceof r))throw Error("".concat(t," invalid instance."))}},{key:"requireArgumentConstructor",value:function requireArgumentConstructor(t,r){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.args;if(this.requireArgument(t,a),a[t].constructor!==r)throw Error("".concat(t," invalid constructor type."))}}],[{key:"getInstanceType",value:function getInstanceType(){return"ArgsObject"}}]),ArgsObject}(i(a(27597)).default);r.default=v},27597:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var u=i(a(29363)),l=i(a(59396));a(99745);var c=i(a(11959)),d=i(a(39041)),p=i(a(76700)),v=i(a(44263)),h=function(){function InstanceType(){var t=this;(0,c.default)(this,InstanceType);for(var r=this instanceof InstanceType?this.constructor:void 0,a=[];r.__proto__&&r.__proto__.name;)a.push(r.__proto__),r=r.__proto__;a.reverse().forEach((function(r){return t instanceof r}))}return(0,d.default)(InstanceType,null,[{key:u.default,value:function value(t){var r=(0,p.default)((0,v.default)(InstanceType),u.default,this).call(this,t);if(t&&!t.constructor.getInstanceType)return r;if(t&&(t.instanceTypes||(t.instanceTypes=[]),r||this.getInstanceType()===t.constructor.getInstanceType()&&(r=!0),r)){var a=this.getInstanceType===InstanceType.getInstanceType?"BaseInstanceType":this.getInstanceType();-1===t.instanceTypes.indexOf(a)&&t.instanceTypes.push(a)}return!r&&t&&(r=t.instanceTypes&&(0,l.default)(t.instanceTypes)&&-1!==t.instanceTypes.indexOf(this.getInstanceType())),r}},{key:"getInstanceType",value:function getInstanceType(){elementorModules.ForceMethodImplementation()}}]),InstanceType}();r.default=h},10514:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var u=i(a(77371)),l=i(a(68537)),c=i(a(11959)),d=i(a(39041)),p=i(a(15591)),v=function(){function BackwardsCompatibility(){(0,c.default)(this,BackwardsCompatibility)}return(0,d.default)(BackwardsCompatibility,[{key:"ensureTab",value:function ensureTab(t,r){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",o=$e.components.get(t);if(!o){var i=function(r){(0,u.default)(Component,r);var o=(0,l.default)(Component);function Component(){return(0,c.default)(this,Component),o.apply(this,arguments)}return(0,d.default)(Component,[{key:"getNamespace",value:function getNamespace(){return t}},{key:"renderTab",value:function renderTab(t){elementor.getPanelView().setPage(a).activateTab(t)}}]),Component}(p.default);o=$e.components.register(new i)}!o.hasTab(r)&&elementor.config.tabs[r]&&o.addTab(r,{title:elementor.config.tabs[r]})}}]),BackwardsCompatibility}();r.default=v},23551:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0,a(84208);var u=i(a(11959)),l=i(a(39041)),c=i(a(38852)),d=i(a(77371)),p=i(a(68537)),v=i(a(18042)),h=function(t){(0,d.default)(CommandsBackwardsCompatibility,t);var r=(0,p.default)(CommandsBackwardsCompatibility);function CommandsBackwardsCompatibility(){var t;(0,u.default)(this,CommandsBackwardsCompatibility);for(var a=arguments.length,o=new Array(a),i=0;i<a;i++)o[i]=arguments[i];return t=r.call.apply(r,[this].concat(o)),(0,v.default)((0,c.default)(t),"on",(function(r,a){if("run"===r){var o=t.getConstructorID();return o=o.replace(/^./,(function(t){return t.toLowerCase()})),elementorCommon.helpers.softDeprecated("$e.".concat(o,".on( 'run', ... )"),"3.0.0","$e.".concat(o,".on( 'run:before', ... )")),void t.onOrig("run:before",a)}t.onOrig(r,a)})),t}return(0,l.default)(CommandsBackwardsCompatibility,[{key:"__construct",value:function __construct(){this.onOrig=this.on}}]),CommandsBackwardsCompatibility}(elementorModules.Module);r.default=h},24080:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var u=i(a(11959)),l=i(a(39041)),c=i(a(77371)),d=i(a(68537)),p=function(t){(0,c.default)(CommandsInternal,t);var r=(0,d.default)(CommandsInternal);function CommandsInternal(){return(0,u.default)(this,CommandsInternal),r.apply(this,arguments)}return(0,l.default)(CommandsInternal,[{key:"error",value:function error(t){throw Error("Commands internal: "+t)}}]),CommandsInternal}(i(a(40103)).default);r.default=p},40103:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0,a(76139),a(12897),a(93085);var u=i(a(83452)),l=i(a(35657)),c=i(a(11959)),d=i(a(39041)),p=i(a(77371)),v=i(a(68537)),h=function(t){(0,p.default)(Commands,t);var r=(0,v.default)(Commands);function Commands(){var t;(0,c.default)(this,Commands);for(var a=arguments.length,o=new Array(a),i=0;i<a;i++)o[i]=arguments[i];return(t=r.call.apply(r,[this].concat(o))).current={},t.currentArgs={},t.currentTrace=[],t.commands={},t.components={},t.classes={},t}return(0,d.default)(Commands,[{key:"getCommandClass",value:function getCommandClass(t){return this.classes[t]}},{key:"getAll",value:function getAll(){return(0,u.default)(this.commands).sort()}},{key:"register",value:function register(t,r,a){var o,i=this;"string"==typeof t?(o=t,(t=$e.components.get(o))||this.error("'".concat(o,"' component is not exist."))):o=t.getNamespace();var u=o+(r?"/"+r:"");this.commands[u]&&this.error("`".concat(u,"` is already registered.")),this.commands[u]=a,this.components[u]=o;var l=t.getShortcuts()[r];return l&&(l.command=u,l.callback=function(t){return i.runShortcut(u,t)},$e.shortcuts.register(l.keys,l)),this}},{key:"unregister",value:function unregister(t,r){var a;"string"==typeof t?(a=t,(t=$e.components.get(a))||this.error("'".concat(a,"' component is not exist."))):a=t.getNamespace();var o=a+(r?"/"+r:"");this.commands[o]||this.error("`".concat(o,"` not exist.")),delete this.commands[o],delete this.components[o];var i=t.getShortcuts()[r];return i&&$e.shortcuts.unregister(i.keys,i),this}},{key:"getComponent",value:function getComponent(t){var r=this.components[t];return $e.components.get(r)}},{key:"is",value:function is(t){var r=this.getComponent(t);return!!r&&t===this.current[r.getRootContainer()]}},{key:"isCurrentFirstTrace",value:function isCurrentFirstTrace(t){return t===this.getCurrentFirstTrace()}},{key:"getCurrent",value:function getCurrent(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return t?!!this.current[t]&&this.current[t]:this.current}},{key:"getCurrentArgs",value:function getCurrentArgs(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return t?!!this.currentArgs[t]&&this.currentArgs[t]:this.currentArgs}},{key:"getCurrentFirst",value:function getCurrentFirst(){return(0,l.default)(this.current)[0]}},{key:"getCurrentLast",value:function getCurrentLast(){var t=(0,l.default)(this.current);return t[t.length-1]}},{key:"getCurrentFirstTrace",value:function getCurrentFirstTrace(){return this.currentTrace[0]}},{key:"beforeRun",value:function beforeRun(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.commands[t]||this.error("`".concat(t,"` not found.")),this.currentTrace.push(t),this.getComponent(t).dependency(t,r)}},{key:"run",value:function run(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!this.beforeRun(t,r))return!1;var a=this.getComponent(t),o=a.getRootContainer();this.current[o]=t,this.currentArgs[o]=r,this.trigger("run:before",a,t,r),r.onBefore&&r.onBefore.apply(a,[r]);var i=this.commands[t].apply(a,[r]);return r.onAfter&&r.onAfter.apply(a,[r,i]),this.trigger("run:after",a,t,r,i),this.afterRun(t),!1===r.returnValue||i}},{key:"runShortcut",value:function runShortcut(t,r){return this.run(t,r)}},{key:"afterRun",value:function afterRun(t){var r=this.getComponent(t).getRootContainer();this.currentTrace.pop(),delete this.current[r],delete this.currentArgs[r]}},{key:"error",value:function error(t){throw Error("Commands: ".concat(t))}}]),Commands}(i(a(23551)).default);r.default=h},66280:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var u=i(a(83452)),l=i(a(11959)),c=i(a(39041)),d=i(a(77371)),p=i(a(68537)),v=function(t){(0,d.default)(_default,t);var r=(0,p.default)(_default);function _default(){var t;(0,l.default)(this,_default);for(var a=arguments.length,o=new Array(a),i=0;i<a;i++)o[i]=arguments[i];return(t=r.call.apply(r,[this].concat(o))).components={},t.activeComponents={},t}return(0,c.default)(_default,[{key:"getAll",value:function getAll(){return(0,u.default)(this.components).sort()}},{key:"register",value:function register(t){if(!this.components[t.getNamespace()])return t.registerAPI(),this.components[t.getNamespace()]=t,t}},{key:"get",value:function get(t){return this.components[t]}},{key:"getActive",value:function getActive(){return this.activeComponents}},{key:"activate",value:function activate(t){this.inactivate(t),this.activeComponents[t]=!0}},{key:"inactivate",value:function inactivate(t){delete this.activeComponents[t]}},{key:"isActive",value:function isActive(t){return!!this.activeComponents[t]}}]),_default}(elementorModules.Module);r.default=v},80009:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=r.ALLMETHODS=r.DELETABLE=r.EDITABLE=r.CREATABLE=r.READABLE=void 0;var u=i(a(57135));a(3777),a(38081),a(64434),a(99236),a(84208),a(71954),a(76139),a(44321),a(55506);var l=i(a(15149)),c=i(a(35657)),d=i(a(38923)),p=i(a(32009)),v=i(a(73220)),h=i(a(49117)),g=i(a(47834)),y=i(a(11959)),m=i(a(39041)),k=i(a(38852)),x=i(a(76700)),b=i(a(44263)),C=i(a(77371)),w=i(a(68537)),S=i(a(42618)),E=i(a(40103)),T=i(a(49078)),A=["GET"],I=["POST"],M=["POST","PUT","PATCH"],O=["DELETE"];r.ALLMETHODS=["GET","POST","PUT","PATCH","DELETE"],r.DELETABLE=O,r.EDITABLE=M,r.CREATABLE=I,r.READABLE=A;var P=function(t){(0,C.default)(Data,t);var r=(0,w.default)(Data);function Data(){var t,a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,y.default)(this,Data),(t=r.call(this,a)).args=(0,l.default)(a,{namespace:"elementor",version:"1"}),t.cache=new T.default((0,k.default)(t)),t.validatedRequests={},t.commandFormats={},t.baseEndpointAddress="";var o=t.args,i=o.namespace,u=o.version;return t.baseEndpointAddress="".concat(elementorCommon.config.urls.rest).concat(i,"/v").concat(u,"/"),t}return(0,m.default)(Data,[{key:"getHTTPMethod",value:function getHTTPMethod(t){switch(t){case"create":return"POST";case"delete":return"DELETE";case"get":return"GET";case"update":return"PUT";case"options":return"OPTIONS"}return!1}},{key:"getAllowedMethods",value:function getAllowedMethods(t){switch(t){case"create":return I;case"delete":return O;case"get":return A;case"update":return M;case"options":return["OPTIONS"]}return!1}},{key:"commandToEndpoint",value:function commandToEndpoint(t,r){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,o=t,i=null!=r&&r.query?(0,c.default)(r.query).length:0;if(i&&a&&a.includes("/{")){var u=a.split("/").filter((function(t){return"{"===t.charAt(0)}));u.forEach((function(t){t=(t=t.replace("{","")).replace("}","");var o=(0,d.default)(r.query).find((function(r){return(0,g.default)(r,1)[0]===t}));if(o){var i=o[0],u=o[1].toString();a=a.replace(new RegExp("{"+t+"}","g"),u),delete r.query[i]}}))}if(a&&(o=a),a&&o.includes("/{")&&(o=o.substring(0,o.indexOf("/{"))),r.query&&(0,c.default)(r.query).length){var l=(0,d.default)(r.query).sort((function(t,r){return(0,g.default)(t,1)[0]-(0,g.default)(r,1)[0]}));l.length&&(o+="?",l.forEach((function(t){var r=(0,g.default)(t,2),a=r[0],i=r[1];i="".concat(i).replace(/\//g,"%2F"),o+=a+"="+i+"&"}))),o=o.replace(/&$/,"")}return o}},{key:"commandExtractArgs",value:function commandExtractArgs(t){var r,a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(null!==(r=t)&&void 0!==r&&r.includes("?")){a.query||(a.query={});var o=t.split("?"),i=o[0],u=o[1],c=new URLSearchParams(u);(0,l.default)(a.query,Object.fromEntries(c)),t=i}return{command:t,args:a}}},{key:"validateRequestData",value:function validateRequestData(t){var r=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(!t.timestamp||!this.validatedRequests[t.timestamp]){var a=new S.default(t);a.requireArgument("component"),a.requireArgumentType("command","string"),a.requireArgumentType("endpoint","string"),r&&a.requireArgumentType("data","object",t.args),t.timestamp||(t.timestamp=(new Date).getTime()),this.validatedRequests[t.timestamp]=!0}}},{key:"prepareHeaders",value:function prepareHeaders(t){var r,a,o=t.type,i=wpApiSettings.nonce,u={signal:null===(r=t.args)||void 0===r||null===(a=r.options)||void 0===a?void 0:a.signal,credentials:"include"},c={"X-WP-Nonce":i},d=this.getAllowedMethods(o),v=this.getHTTPMethod(o);if("GET"===v)(0,l.default)(u,{headers:c});else{if(!d)throw Error("Invalid type: '".concat(o,"'"));var h;if(["POST","PUT"].includes(v)&&(null===(h=t.args)||void 0===h||!h.data))throw Error("Invalid requestData.args.data");(0,l.default)(c,{"Content-Type":"application/json"}),(0,l.default)(u,{method:v,headers:c,body:(0,p.default)(t.args.data)})}return u}},{key:"prepareEndpoint",value:function prepareEndpoint(t){var r=t.split("?"),a=r.shift(),o=this.baseEndpointAddress+a;if(r.length){var i=o.includes("?")?"&":"?";o+=i+r.pop()}return o}},{key:"fetch",value:function fetch(t){var r,a=this,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:window.fetch;t.cache="miss";var i=this.prepareHeaders(t),l=null===(r=t.args.options)||void 0===r?void 0:r.refresh,c="get"===t.type&&!l,d=["create","get"].includes(t.type)&&!l;if(c){var p=this.cache.getAsync(t);if(p)return p}return new v.default(function(){var r=(0,h.default)(u.default.mark((function _callee2(r,l){var c,p,v;return u.default.wrap((function _callee2$(g){for(;;)switch(g.prev=g.next){case 0:return g.prev=0,c=a.prepareEndpoint(t.endpoint),p=o(c,i),g.next=5,p.then(function(){var t=(0,h.default)(u.default.mark((function _callee(t){return u.default.wrap((function _callee$(r){for(;;)switch(r.prev=r.next){case 0:if(t.ok){r.next=6;break}if(!t.headers.get("content-type").includes("application/json")){r.next=5;break}return r.next=4,t.json();case 4:t=r.sent;case 5:throw t;case 6:return r.abrupt("return",t.json());case 7:case"end":return r.stop()}}),_callee)})));return function(r){return t.apply(this,arguments)}}());case 5:v=g.sent,d&&a.cache.set(t,v),r(v),g.next=13;break;case 10:g.prev=10,g.t0=g.catch(0),l(g.t0);case 13:case"end":return g.stop()}}),_callee2,null,[[0,10]])})));return function(t,a){return r.apply(this,arguments)}}())}},{key:"getCache",value:function getCache(t,r){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o={query:a};return this.cache.get({endpoint:this.commandToEndpoint(r,o,this.commandFormats[r]),component:t,command:r,args:o})}},{key:"setCache",value:function setCache(t,r,a,o){var i={query:a};this.cache.set({endpoint:this.commandToEndpoint(r,i,this.commandFormats[r]),component:t,command:r,args:i},o)}},{key:"updateCache",value:function updateCache(t,r,a,o){var i={query:a,data:o};this.cache.update({endpoint:this.commandToEndpoint(r,i,this.commandFormats[r]),component:t,command:r,args:i})}},{key:"deleteCache",value:function deleteCache(t,r){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o={query:a};this.cache.delete({endpoint:this.commandToEndpoint(r,o,this.commandFormats[r]),component:t,command:r,args:o})}},{key:"registerFormat",value:function registerFormat(t,r){this.commandFormats[t]=r}},{key:"create",value:function create(t,r){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return this.run("create",t,{query:a,options:o,data:r})}},{key:"delete",value:function _delete(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.run("delete",t,{query:r,options:a})}},{key:"get",value:function get(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.run("get",t,{query:r,options:a})}},{key:"update",value:function update(t,r){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return this.run("update",t,{query:a,options:o,data:r})}},{key:"options",value:function options(t,r){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.run("options",t,{query:r,options:a})}},{key:"register",value:function register(t,r,a){(0,x.default)((0,b.default)(Data.prototype),"register",this).call(this,t,r,a);var o=t.getNamespace()+"/"+r,i=$e.commands.getCommandClass(o),u=!(null==i||!i.getEndpointFormat)&&i.getEndpointFormat();return u&&$e.data.registerFormat(o,u),this}},{key:"run",value:function run(t,r,a){a.options.type=t;var o=this.commandExtractArgs(r,a);return r=o.command,a=o.args,(0,x.default)((0,b.default)(Data.prototype),"run",this).call(this,r,a)}},{key:"error",value:function error(t){throw Error("Data commands: "+t)}}]),Data}(E.default);r.default=P},49078:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0,a(84208),a(99236),a(3777),a(38081);var u=i(a(57135)),l=i(a(73220)),c=i(a(15149)),d=i(a(38923)),p=i(a(35657)),v=i(a(83452)),h=i(a(24596)),g=i(a(47834)),y=i(a(49117)),m=i(a(11959)),k=i(a(39041)),x=i(a(79993)),b=function(){function Cache(t){(0,m.default)(this,Cache),this.manager=t,this.storage=new x.default}return(0,k.default)(Cache,[{key:"getAsync",value:function getAsync(t){var r=this.get(t);return null!==r&&(t.cache="hit",new l.default(function(){var t=(0,y.default)(u.default.mark((function _callee(t){return u.default.wrap((function _callee$(a){for(;;)switch(a.prev=a.next){case 0:t(r);case 1:case"end":return a.stop()}}),_callee)})));return function(r){return t.apply(this,arguments)}}()))}},{key:"set",value:function set(t,r){$e.data.validateRequestData(t);var a=t.component.getNamespace(),o=t.endpoint.replace(a+"/",""),i=o.split("/"),u={};if(i.length&&o!==a){var l=i.reduce((function(t,r){return t[r]={},t[r]}),u);(0,c.default)(l,r)}else u=r;var d=this.storage.getItem(a);null!==d&&(u=jQuery.extend(!0,d,u)),this.storage.setItem(a,u)}},{key:"get",value:function get(t){$e.data.validateRequestData(t);var r=t.component.getNamespace(),a=this.storage.getItem(r);return null!==a?r===t.endpoint?a:t.endpoint.replace(t.component.getNamespace()+"/","").split("/").reduce((function(t,r){if(t&&t[r])return t[r]}),a)||null:null}},{key:"update",value:function update(t){$e.data.validateRequestData(t,!0);var r=t.endpoint,a={};return(0,d.default)(this.storage.getAll()).forEach((function(o){var i=(0,g.default)(o,2),u=i[0],l=i[1];if(l&&r.includes(u)){var c=l,d=t.endpoint.replace(t.component.getNamespace()+"/","").split("/");if(1===d.length&&u===t.endpoint&&u===t.component.getNamespace())a=jQuery.extend(!0,c,t.args.data);else{var p=d.reduce((function(t,r){return t[r]}),c);a=jQuery.extend(!0,p,t.args.data)}}})),0!==(0,p.default)(a).length&&(this.set(t,a),!0)}},{key:"delete",value:function _delete(t){$e.data.validateRequestData(t);var r=!1,a=t.component.getNamespace();if(a!==t.endpoint){var o=this.storage.getItem(a),i={};if(null===o)return!1;var u=t.endpoint.replace(a+"/","").split("/"),l=u[u.length-1];if(u.reduce((function(t,r){return t[r]=r===l?null:{},t[r]}),i),(0,v.default)(o).length){this.storage.setItem(a,function deleteKeys(t,a){return a?(0,v.default)(a).forEach((function(o){a[o]&&"object"===(0,h.default)(a[o])?deleteKeys(t[o],a[o]):null===a[o]&&(delete t[o],r=!0)})):(0,v.default)(t).forEach((function(r){return delete t[r]})),t}(o,i))}}else for(var c in this.storage.getAll())if(c===t.endpoint){this.storage.removeItem(t.endpoint),r=!0;break}return r}}]),Cache}();r.default=b},67289:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0,a(65942),a(84208);var u=i(a(83452)),l=i(a(11959)),c=i(a(39041)),d=i(a(76700)),p=i(a(44263)),v=i(a(77371)),h=i(a(68537)),g=i(a(18042)),y=function(t){(0,v.default)(BasePrefixStorage,t);var r=(0,h.default)(BasePrefixStorage);function BasePrefixStorage(){return(0,l.default)(this,BasePrefixStorage),r.apply(this,arguments)}return(0,c.default)(BasePrefixStorage,[{key:"clear",value:function clear(){var t=this;(0,u.default)(this.getAll()).forEach((function(r){return t.removeItem(r)}))}},{key:"getItem",value:function getItem(t){return(0,d.default)((0,p.default)(BasePrefixStorage.prototype),"getItem",this).call(this,BasePrefixStorage.DEFAULT_KEY_PREFIX+t)}},{key:"removeItem",value:function removeItem(t){return(0,d.default)((0,p.default)(BasePrefixStorage.prototype),"removeItem",this).call(this,BasePrefixStorage.DEFAULT_KEY_PREFIX+t)}},{key:"setItem",value:function setItem(t,r){return(0,d.default)((0,p.default)(BasePrefixStorage.prototype),"setItem",this).call(this,BasePrefixStorage.DEFAULT_KEY_PREFIX+t,r)}},{key:"getAll",value:function getAll(){var t=this,r=BasePrefixStorage.DEFAULT_KEY_PREFIX,a=(0,u.default)(this.provider),o={};return a.forEach((function(a){a.startsWith(r)&&(a=a.replace(r,""),o[a]=t.getItem(a))})),o}}]),BasePrefixStorage}(i(a(98061)).default);r.default=y,(0,g.default)(y,"DEFAULT_KEY_PREFIX","e_")},98061:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var u=i(a(32009)),l=i(a(83452)),c=i(a(11959)),d=i(a(39041)),p=function(){function BaseStorage(t){if((0,c.default)(this,BaseStorage),BaseStorage===(this instanceof BaseStorage?this.constructor:void 0))throw new TypeError("Cannot construct BaseStorage instances directly");this.provider=t}return(0,d.default)(BaseStorage,[{key:"clear",value:function clear(){return this.provider.clear()}},{key:"getItem",value:function getItem(t){var r=this.provider.getItem(t);return null!==r?JSON.parse(r):r}},{key:"key",value:function key(t){return this.provider.key(t)}},{key:"removeItem",value:function removeItem(t){return this.provider.removeItem(t)}},{key:"setItem",value:function setItem(t,r){return this.provider.setItem(t,(0,u.default)(r))}},{key:"getAll",value:function getAll(){var t=this,r=(0,l.default)(this.provider),a={};return r.forEach((function(r){a[r]=t.getItem(r)})),a}}]),BaseStorage}();r.default=p},79993:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var u=i(a(83452)),l=i(a(11959)),c=i(a(39041)),d=i(a(77371)),p=i(a(68537)),v=function(t){(0,d.default)(LocalStorage,t);var r=(0,p.default)(LocalStorage);function LocalStorage(){return(0,l.default)(this,LocalStorage),r.call(this,localStorage)}return(0,c.default)(LocalStorage,[{key:"debug",value:function debug(){var t=this.getAll(),r={};return(0,u.default)(t).sort().forEach((function(a){var o=t[a];r[a]=o})),r}}]),LocalStorage}(i(a(67289)).default);r.default=v},66456:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0,a(71954);var u=i(a(11959)),l=i(a(39041)),c=i(a(18042)),d=i(a(80909)),p=i(a(63990)),v=function(){function Hooks(){(0,u.default)(this,Hooks),(0,c.default)(this,"data",new d.default),(0,c.default)(this,"ui",new p.default)}return(0,l.default)(Hooks,[{key:"activate",value:function activate(){this.getTypes().forEach((function(t){t.activate()}))}},{key:"deactivate",value:function deactivate(){this.getTypes().forEach((function(t){t.deactivate()}))}},{key:"getAll",value:function getAll(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],r={};return this.getTypes().forEach((function(a){r[a.getType()]=a.getAll(t)})),r}},{key:"getTypes",value:function getTypes(){return[this.data,this.ui]}},{key:"getType",value:function getType(t){return this.getTypes().find((function(r){return t===r.getType()}))}},{key:"register",value:function register(t,r,a){return this.getType(t).register(r,a)}},{key:"run",value:function run(t,r,a,o){var i=arguments.length>4&&void 0!==arguments[4]?arguments[4]:void 0;return this.getType(t).run(r,a,o,i)}},{key:"registerDataAfter",value:function registerDataAfter(t){return this.register("data","after",t)}},{key:"registerDataCatch",value:function registerDataCatch(t){return this.register("data","catch",t)}},{key:"registerDataDependency",value:function registerDataDependency(t){return this.register("data","dependency",t)}},{key:"registerUIAfter",value:function registerUIAfter(t){return this.register("ui","after",t)}},{key:"registerUICatch",value:function registerUICatch(t){return this.register("ui","catch",t)}},{key:"registerUIBefore",value:function registerUIBefore(t){return this.register("ui","before",t)}},{key:"runDataAfter",value:function runDataAfter(t,r,a){return this.run("data","after",t,r,a)}},{key:"runDataCatch",value:function runDataCatch(t,r,a){return this.run("data","catch",t,r,a)}},{key:"runDataDependency",value:function runDataDependency(t,r){return this.run("data","dependency",t,r)}},{key:"runUIAfter",value:function runUIAfter(t,r,a){return this.run("ui","after",t,r,a)}},{key:"runUICatch",value:function runUICatch(t,r,a){return this.run("ui","catch",t,r,a)}},{key:"runUIBefore",value:function runUIBefore(t,r){return this.run("ui","before",t,r)}}]),Hooks}();r.default=v},66108:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var u=i(a(35657)),l=i(a(83452)),c=i(a(11959)),d=i(a(39041)),p=i(a(77371)),v=i(a(68537)),h=function(t){(0,p.default)(HooksBase,t);var r=(0,v.default)(HooksBase);function HooksBase(){var t;(0,c.default)(this,HooksBase);for(var a=arguments.length,o=new Array(a),i=0;i<a;i++)o[i]=arguments[i];return(t=r.call.apply(r,[this].concat(o))).current="",t.usedIds=[],t.callbacks={after:{},catch:{}},t.depth={after:{},catch:{}},t.callbacksFlatList={},t}return(0,d.default)(HooksBase,[{key:"activate",value:function activate(){(0,u.default)(this.getAll(!0)).forEach((function(t){t.activate()}))}},{key:"deactivate",value:function deactivate(){(0,u.default)(this.getAll(!0)).forEach((function(t){t.deactivate()}))}},{key:"getType",value:function getType(){elementorModules.forceMethodImplementation()}},{key:"get",value:function get(t){return this.callbacksFlatList[t]}},{key:"getAll",value:function getAll(){var t=this,r=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(r)return this.callbacksFlatList;var a={};return(0,l.default)(this.callbacks).forEach((function(r){a[r]||(a[r]=[]),(0,l.default)(t.callbacks[r]).forEach((function(o){a[r].push({command:o,callbacks:t.callbacks[r][o]})}))})),a}},{key:"getCurrent",value:function getCurrent(){return this.current}},{key:"getUsedIds",value:function getUsedIds(){return this.usedIds}},{key:"getCallbacks",value:function getCallbacks(t,r,a){var o=a.containers,i=void 0===o?[a.container]:o,u=!!i[0]&&i[0].type,l=[];return this.callbacks[t]&&this.callbacks[t][r]&&(u&&this.callbacks[t][r][u]&&(l=l.concat(this.callbacks[t][r][u])),this.callbacks[t][r].all&&(l=l.concat(this.callbacks[t][r].all))),!!l.length&&l}},{key:"checkEvent",value:function checkEvent(t){if(-1===(0,l.default)(this.callbacks).indexOf(t))throw Error("".concat(this.getType(),": '").concat(t,"' is not available."))}},{key:"checkInstance",value:function checkInstance(t){if(t.getType()!==this.getType())throw new Error("invalid instance, please use: 'elementor-api/modules/hook-base.js'. ")}},{key:"checkId",value:function checkId(t){if(-1!==this.usedIds.indexOf(t))throw Error("id: '".concat(t,"' is already in use."))}},{key:"shouldRun",value:function shouldRun(t){return!!t&&t.length}},{key:"register",value:function register(t,r){var a=r.getCommand(),o=r.getId(),i=r.getContainerType();return this.checkEvent(t),this.checkInstance(r),this.checkId(o),this.registerCallback(o,t,a,r,i)}},{key:"registerCallback",value:function registerCallback(t,r,a,o,i){this.callbacks[r][a]||(this.callbacks[r][a]=[]),this.usedIds.push(t),this.callbacks[r][a]||(this.callbacks[r][a]={});var u={id:t,callback:o.run.bind(o),isActive:!0,activate:function activate(){this.isActive=!0},deactivate:function deactivate(){this.isActive=!1}};return i?(this.callbacks[r][a][i]||(this.callbacks[r][a][i]=[]),this.callbacks[r][a][i].push(u)):(this.callbacks[r][a].all||(this.callbacks[r][a].all=[]),this.callbacks[r][a].all.push(u)),this.callbacksFlatList[u.id]=u,u}},{key:"run",value:function run(t,r,a){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:void 0,i=this.getCallbacks(t,r,a);return!!this.shouldRun(i)&&(this.current=r,this.onRun(r,a,t),this.runCallbacks(t,r,i,a,o))}},{key:"runCallbacks",value:function runCallbacks(t,r,a,o,i){var u=[];for(var l in a){var c=a[l];if(c.isActive){if(void 0===this.depth[t][c.id]&&(this.depth[t][c.id]=0),this.depth[t][c.id]++,1===this.depth[t][c.id]){this.onCallback(r,o,t,c.id);try{var d=this.runCallback(t,c,o,i);if(!d)throw Error("Callback failed, event: '".concat(t,"'"));u.push(d)}catch(t){if(t instanceof $e.modules.HookBreak)throw t;elementorCommon.helpers.consoleError(t)}}this.depth[t][c.id]--}}return u}},{key:"runCallback",value:function runCallback(t,r,a,o){elementorModules.forceMethodImplementation()}},{key:"onRun",value:function onRun(t,r,a){elementorModules.forceMethodImplementation()}},{key:"onCallback",value:function onCallback(t,r,a,o){elementorModules.forceMethodImplementation()}}]),HooksBase}(elementorModules.Module);r.default=h},80909:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var u=i(a(11959)),l=i(a(39041)),c=i(a(76700)),d=i(a(44263)),p=i(a(77371)),v=i(a(68537)),h=function(t){(0,p.default)(Data,t);var r=(0,v.default)(Data);function Data(){var t;(0,u.default)(this,Data);for(var a=arguments.length,o=new Array(a),i=0;i<a;i++)o[i]=arguments[i];return(t=r.call.apply(r,[this].concat(o))).callbacks.dependency={},t.depth.dependency={},t}return(0,l.default)(Data,[{key:"getType",value:function getType(){return"data"}},{key:"runCallback",value:function runCallback(t,r,a,o){switch(t){case"dependency":if(!r.callback(a))throw this.depth[t][r.id]--,new $e.modules.HookBreak;return!0;case"catch":case"after":return r.callback(a,o)||"after"===t}return!1}},{key:"shouldRun",value:function shouldRun(t){return(0,c.default)((0,d.default)(Data.prototype),"shouldRun",this).call(this,t)&&elementor.documents.getCurrent().history.getActive()}},{key:"onRun",value:function onRun(t,r,a){$e.devTools&&$e.devTools.log.callbacks().run(this.getType(),t,r,a)}},{key:"onCallback",value:function onCallback(t,r,a,o){$e.devTools&&$e.devTools.log.callbacks().callback(this.getType(),t,r,a,o)}}]),Data}(i(a(66108)).default);r.default=h},63990:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var u=i(a(11959)),l=i(a(39041)),c=i(a(77371)),d=i(a(68537)),p=function(t){(0,c.default)(Ui,t);var r=(0,d.default)(Ui);function Ui(){var t;(0,u.default)(this,Ui);for(var a=arguments.length,o=new Array(a),i=0;i<a;i++)o[i]=arguments[i];return(t=r.call.apply(r,[this].concat(o))).callbacks.before={},t.depth.before={},t}return(0,l.default)(Ui,[{key:"getType",value:function getType(){return"ui"}},{key:"runCallback",value:function runCallback(t,r,a,o){switch(t){case"before":r.callback(a);break;case"catch":case"after":r.callback(a,o);break;default:return!1}return!0}},{key:"onRun",value:function onRun(t,r,a){$e.devTools&&$e.devTools.log.callbacks().run(this.getType(),t,r,a)}},{key:"onCallback",value:function onCallback(t,r,a,o){$e.devTools&&$e.devTools.log.callbacks().callback(this.getType(),t,r,a,o)}}]),Ui}(i(a(66108)).default);r.default=p},2898:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0,a(99236);var u=i(a(83452)),l=i(a(11959)),c=i(a(39041)),d=i(a(76700)),p=i(a(44263)),v=i(a(77371)),h=i(a(68537)),g=function(t){(0,v.default)(Routes,t);var r=(0,h.default)(Routes);function Routes(){var t;(0,l.default)(this,Routes);for(var a=arguments.length,o=new Array(a),i=0;i<a;i++)o[i]=arguments[i];return(t=r.call.apply(r,[this].concat(o))).savedStates={},t.historyPerComponent={},t}return(0,c.default)(Routes,[{key:"refreshContainer",value:function refreshContainer(t){var r=this.getCurrent(t),a=this.getCurrentArgs(t);this.clearCurrent(t),this.to(r,a)}},{key:"getHistory",value:function getHistory(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return t?this.historyPerComponent[t]||[]:this.historyPerComponent}},{key:"clearHistory",value:function clearHistory(t){delete this.historyPerComponent[t]}},{key:"clearCurrent",value:function clearCurrent(t){var r=this.current[t];r&&(delete this.current[t],delete this.currentArgs[t],this.getComponent(r).onCloseRoute(r))}},{key:"clear",value:function clear(){var t=this;(0,u.default)(this.current).forEach((function(r){return t.clearCurrent(r)}))}},{key:"saveState",value:function saveState(t){return this.savedStates[t]={route:this.current[t],args:this.currentArgs[t]},this}},{key:"restoreState",value:function restoreState(t){return!!this.savedStates[t]&&(this.to(this.savedStates[t].route,this.savedStates[t].args),!0)}},{key:"beforeRun",value:function beforeRun(t,r){if(!(0,d.default)((0,p.default)(Routes.prototype),"beforeRun",this).call(this,t,r))return!1;if(this.is(t,r)&&!r.refresh)return!1;var a=this.getComponent(t),o=a.getRootContainer(),i=this.current[o];return i&&this.getComponent(i).onCloseRoute(i),a.isOpen&&!r.reOpen||(a.isOpen=a.open(r)),a.isOpen}},{key:"to",value:function to(t,r){this.run(t,r);var a=this.getComponent(t).getRootContainer();this.historyPerComponent[a]||(this.historyPerComponent[a]=[]),this.historyPerComponent[a].push({route:t,args:r})}},{key:"back",value:function back(t){var r=this.getHistory(t);r.pop();var a=r.pop();a&&this.to(a.route,a.args)}},{key:"runShortcut",value:function runShortcut(t){this.to(t)}},{key:"afterRun",value:function afterRun(t,r){this.getComponent(t).onRoute(t,r)}},{key:"is",value:function is(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!(0,d.default)((0,p.default)(Routes.prototype),"is",this).call(this,t))return!1;var a=this.getComponent(t).getRootContainer();return _.isEqual(r,this.currentArgs[a])}},{key:"isPartOf",value:function isPartOf(t){var r=t.split("/")[0],a=[],o=this.current[r]?this.current[r].split("/"):[],i=!1;return o.forEach((function(r){a.push(r),a.join("/")===t&&(i=!0)})),i}},{key:"error",value:function error(t){throw Error("Routes: "+t)}}]),Routes}(i(a(40103)).default);r.default=g},44081:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var u=i(a(83452));a(99236),a(84208),a(64434);var l=i(a(11959)),c=i(a(39041)),d=i(a(73308)),p=function(){function Shortcuts(t){(0,l.default)(this,Shortcuts),this.specialKeys={13:"enter",27:"esc",38:"up",40:"down",46:"del",191:"?"},this.component="",this.handlers={},this.bindListener(t)}return(0,c.default)(Shortcuts,[{key:"bindListener",value:function bindListener(t){var r=this;t.on("keydown",(function(t){return r.handle(t)}))}},{key:"getAll",value:function getAll(){var t={};return jQuery.each(this.handlers,(function(r,a){jQuery.each(a,(function(a,o){t[o.command]=r}))})),t}},{key:"register",value:function register(t,r){var a=this;t.replace(" ","").split(",").forEach((function(t){a.handlers[t]||(a.handlers[t]=[]),a.handlers[t].push(r)}))}},{key:"unregister",value:function unregister(t,r){var a=this;t.replace(" ","").split(",").forEach((function(t){a.handlers[t].forEach((function(o,i){r===i&&delete a.handlers[t][o]}))}))}},{key:"handle",value:function handle(t){var r=this.getHandlersByPriority(t);if(r){var a=r.filter((function(r){if(r.exclude&&-1!==r.exclude.indexOf("input")){var a=jQuery(t.target);if(a.is(":input, .elementor-input")||a.closest('[contenteditable="true"]').length)return!1}return!(r.dependency&&!r.dependency(t))&&!(!r.allowAltKey&&t.altKey)}));a.length&&(1<a.length&&elementorCommon.config.isDebug&&elementorCommon.helpers.consoleWarn("Multiple handlers for shortcut.",a,t),t.preventDefault(),a[0].callback(t))}}},{key:"isControlEvent",value:function isControlEvent(t){return t[d.default.mac?"metaKey":"ctrlKey"]}},{key:"getEventShortcut",value:function getEventShortcut(t){var r=[];return t.altKey&&r.push("alt"),this.isControlEvent(t)&&r.push("ctrl"),t.shiftKey&&r.push("shift"),this.specialKeys[t.which]?r.push(this.specialKeys[t.which]):r.push(String.fromCharCode(t.which).toLowerCase()),r.join("+")}},{key:"isActiveScope",value:function isActiveScope(t){var r=(0,u.default)($e.components.activeComponents),a=r[r.length-1],o=$e.components.get(a);if(!o)return!1;var i=o.getNamespace(),l=o.getRootContainer();return!!t.some((function(t){return i===t}))||t.some((function(t){return l===t}))}},{key:"getHandlersByPriority",value:function getHandlersByPriority(t){var r=this,a=this.handlers[this.getEventShortcut(t)];if(!a)return!1;var o=a.filter((function(t){return t.scopes&&r.isActiveScope(t.scopes)}));if(o.length)return o;var i=a.filter((function(t){return!t.scopes}));return i.length?i:void 0}}]),Shortcuts}();r.default=p},71157:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var u=i(a(38923)),l=i(a(83452)),c=i(a(47834)),d=i(a(11959)),p=i(a(39041)),v=function(){function UiStates(){(0,d.default)(this,UiStates),this.states={}}return(0,p.default)(UiStates,[{key:"register",value:function register(t){var r=t.getPrefixedId();if(this.states[r])throw"State '".concat(r,"' already exists.");this.states[r]=t}},{key:"getAll",value:function getAll(){var t={};return(0,u.default)(this.states).forEach((function(r){var a=(0,c.default)(r,2),o=a[0],i=a[1].getOptions();t[o]=(0,l.default)(i)})),t}},{key:"get",value:function get(t){return t?this.states[t]:this.states}},{key:"set",value:function set(t,r){if(!this.get(t))throw"State '".concat(t,"' doesn't exist.");var a=this.getCurrent(t),o="e-ui-state--".concat(t.replaceAll("/","-")),i="".concat(o,"__").concat(a),u="".concat(o,"__").concat(r),l=this.get(t).getScopes();this.get(t).set(r),l.forEach((function(o){o.classList.remove(i),r&&o.classList.add(u);var l=new CustomEvent("e-ui-state:".concat(t),{detail:{oldValue:a,newValue:r}});o.dispatchEvent(l)}))}},{key:"remove",value:function remove(t){this.set(t,"")}},{key:"getCurrent",value:function getCurrent(t){var r;return null===(r=this.get(t))||void 0===r?void 0:r.getCurrent()}}]),UiStates}();r.default=v},30756:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var u=i(a(57135)),l=i(a(73220));a(99236);var c=i(a(74758)),d=i(a(49117)),p=i(a(11959)),v=i(a(39041)),h=i(a(18042)),g=function(){function HashCommands(){(0,p.default)(this,HashCommands),(0,h.default)(this,"dispatchersList",{"e:run":{runner:$e.run,isSafe:function isSafe(t){var r;return null===(r=$e.commands.getCommandClass(t))||void 0===r?void 0:r.getInfo().isSafe}},"e:route":{runner:$e.route,isSafe:function isSafe(){return!0}}}),(0,h.default)(this,"commands",[]),this.commands=this.get()}var t;return(0,v.default)(HashCommands,[{key:"get",value:function get(){var t=this,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:location.hash,a=[];if(r){var o=r.substr(1).split("&");o.forEach((function(r){var o=r.split(":");if(3===o.length){var i=o[0]+":"+o[1];if(t.dispatchersList[i]){var u=o[2];a.push({method:i,command:u})}}}))}return a}},{key:"run",value:(t=(0,d.default)(u.default.mark((function _callee(){var t,r,a,o,i,d,p,v,h=arguments;return u.default.wrap((function _callee$(u){for(;;)switch(u.prev=u.next){case 0:t=h.length>0&&void 0!==h[0]?h[0]:this.commands,r=(0,c.default)(t),u.prev=2,r.s();case 4:if((a=r.n()).done){u.next=13;break}if(o=a.value,i=this.dispatchersList[o.method]){u.next=9;break}return u.abrupt("return",l.default.reject(new Error("No dispatcher found for the command: `".concat(o.command,"`."))));case 9:if(i.isSafe(o.command)){u.next=11;break}return u.abrupt("return",l.default.reject(new Error("Attempting to run unsafe or non exist command: `".concat(o.command,"`."))));case 11:u.next=4;break;case 13:u.next=18;break;case 15:u.prev=15,u.t0=u.catch(2),r.e(u.t0);case 18:return u.prev=18,r.f(),u.finish(18);case 21:d=(0,c.default)(t),u.prev=22,d.s();case 24:if((p=d.n()).done){u.next=30;break}return v=p.value,u.next=28,this.dispatchersList[v.method].runner(v.command);case 28:u.next=24;break;case 30:u.next=35;break;case 32:u.prev=32,u.t1=u.catch(22),d.e(u.t1);case 35:return u.prev=35,d.f(),u.finish(35);case 38:case"end":return u.stop()}}),_callee,this,[[2,15,18,21],[22,32,35,38]])}))),function run(){return t.apply(this,arguments)})},{key:"runOnce",value:function runOnce(){var t=this;this.run(this.commands).then((function(){t.commands=[]}))}}]),HashCommands}();r.default=g},14737:(t,r,a)=>{"use strict";var o=a(67394),i=a(52369),u=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var l=u(a(11959)),c=u(a(39041)),d=u(a(10514)),p=u(a(68689)),v=u(a(23714)),h=u(a(79314)),g=u(a(40103)),y=u(a(24080)),m=u(a(15591)),k=u(a(18427)),x=u(a(66280)),b=u(a(80009)),C=u(a(30756)),w=u(a(7918)),S=u(a(66456)),E=u(a(2898)),T=u(a(44081)),A=u(a(71157)),I=i(a(90321)),M=i(a(749)),O=function(){function API(){(0,l.default)(this,API),window.$e=this,this.components=new x.default,this.commands=new g.default,this.commandsInternal=new y.default,this.hooks=new S.default,this.routes=new E.default,this.shortcuts=new T.default(jQuery(window)),this.data=new b.default,this.uiStates=new A.default,this.modules={CommandBase:p.default,CommandInternalBase:v.default,CommandData:h.default,ComponentBase:m.default,ComponentModalBase:k.default,HookBreak:w.default,hookData:I,hookUI:M},this.extras={hashCommands:new C.default},this.bc=new d.default}return(0,c.default)(API,[{key:"run",value:function run(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return $e.commands.run(t,r)}},{key:"internal",value:function internal(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return $e.commandsInternal.run(t,r)}},{key:"route",value:function route(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return $e.routes.to(t,r)}}]),API}();r.default=O},68689:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var u=i(a(57135));a(64434),a(37472),a(76139),a(12897),a(93085);var l=i(a(59396)),c=i(a(73220)),d=i(a(24596)),p=i(a(49117)),v=i(a(11959)),h=i(a(39041)),g=i(a(38852)),y=i(a(77371)),m=i(a(68537)),k=i(a(18042)),x=function(t){(0,y.default)(CommandBase,t);var r=(0,m.default)(CommandBase);function CommandBase(t){var a,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:$e.commands;return(0,v.default)(this,CommandBase),a=r.call(this,t),(0,k.default)((0,g.default)(a),"component",void 0),a.currentCommand=o.getCurrentLast(),a.component=o.getComponent(a.currentCommand),a.initialize(t),t=a.args,a.validateArgs(t),a}return(0,h.default)(CommandBase,[{key:"requireContainer",value:function requireContainer(){var t=this,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.args;if(!r.container&&!r.containers)throw Error("container or containers are required.");if(r.container&&r.containers)throw Error("container and containers cannot go together please select one of them.");var a=r.containers||[r.container];a.forEach((function(r){t.requireArgumentInstance("container",elementorModules.editor.Container,{container:r})}))}},{key:"initialize",value:function initialize(){}},{key:"validateArgs",value:function validateArgs(){}},{key:"isDataChanged",value:function isDataChanged(){return!1}},{key:"apply",value:function apply(){elementorModules.ForceMethodImplementation()}},{key:"run",value:function run(){var t;this.onBeforeRun(this.args);try{this.onBeforeApply(this.args),t=this.apply(this.args)}catch(t){if(this.onCatchApply(t),t instanceof $e.modules.HookBreak)return!1}return this.runAfter(t)}},{key:"runAfter",value:function runAfter(t){var r=this,a=function onAfter(t){r.onAfterApply(r.args,t),r.isDataChanged()&&$e.internal("document/save/set-is-modified",{status:!0}),r.onAfterRun(r.args,t)},o=function(){var t=(0,p.default)(u.default.mark((function _callee(t){var a,o;return u.default.wrap((function _callee$(i){for(;;)switch(i.prev=i.next){case 0:if(a=r.onAfterApply(r.args,t),!(o=(0,l.default)(a)?a.flat().filter((function(t){return t instanceof c.default})):[]).length){i.next=4;break}return i.next=4,c.default.all(o);case 4:r.isDataChanged()&&$e.internal("document/save/set-is-modified",{status:!0}),r.onAfterRun(r.args,t);case 6:case"end":return i.stop()}}),_callee)})));return function asyncOnAfter(r){return t.apply(this,arguments)}}();if(t&&"object"===(0,d.default)(t)&&t.promise&&t.then&&t.fail)t.fail(this.onCatchApply.bind(this)),t.done(a);else{if(t instanceof c.default)return(0,p.default)(u.default.mark((function _callee2(){return u.default.wrap((function _callee2$(a){for(;;)switch(a.prev=a.next){case 0:return a.next=2,t.catch(r.onCatchApply.bind(r));case 2:return a.next=4,t.then((function(t){return o(t)}));case 4:return a.abrupt("return",t);case 5:case"end":return a.stop()}}),_callee2)})))();a(t)}return t}},{key:"runCatchHooks",value:function runCatchHooks(t){$e.hooks.runDataCatch(this.currentCommand,this.args,t),$e.hooks.runUICatch(this.currentCommand,this.args,t)}},{key:"onBeforeRun",value:function onBeforeRun(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};$e.hooks.runUIBefore(this.currentCommand,t)}},{key:"onAfterRun",value:function onAfterRun(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=arguments.length>1?arguments[1]:void 0;$e.hooks.runUIAfter(this.currentCommand,t,r)}},{key:"onBeforeApply",value:function onBeforeApply(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};$e.hooks.runDataDependency(this.currentCommand,t)}},{key:"onAfterApply",value:function onAfterApply(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=arguments.length>1?arguments[1]:void 0;return $e.hooks.runDataAfter(this.currentCommand,t,r)}},{key:"onCatchApply",value:function onCatchApply(t){this.runCatchHooks(t),elementorCommon.helpers.consoleError(t)}}],[{key:"getInstanceType",value:function getInstanceType(){return"CommandBase"}},{key:"getInfo",value:function getInfo(){return{}}}]),CommandBase}(i(a(42618)).default);r.default=x},79314:(t,r,a)=>{"use strict";var o=a(67394),i=a(52369),u=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0,a(71954);var l=u(a(15149)),c=u(a(35657)),d=u(a(11959)),p=u(a(39041)),v=u(a(38852)),h=u(a(77371)),g=u(a(68537)),y=u(a(18042)),m=u(a(68689)),k=i(a(43861)),x=function(t){(0,h.default)(CommandData,t);var r=(0,g.default)(CommandData);function CommandData(t){var a,o,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:$e.data;return(0,d.default)(this,CommandData),o=r.call(this,t,i),(0,y.default)((0,v.default)(o),"data",void 0),(0,y.default)((0,v.default)(o),"type",void 0),null!==(a=o.args.options)&&void 0!==a&&a.type&&(o.type=o.args.options.type),o}return(0,p.default)(CommandData,[{key:"getApplyMethods",value:function getApplyMethods(){var t,r,a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.type;switch(a){case"create":t=this.applyBeforeCreate,r=this.applyAfterCreate;break;case"delete":t=this.applyBeforeDelete,r=this.applyAfterDelete;break;case"get":t=this.applyBeforeGet,r=this.applyAfterGet;break;case"update":t=this.applyBeforeUpdate,r=this.applyAfterUpdate;break;case"options":t=this.applyBeforeOptions,r=this.applyAfterOptions;break;default:return!1}return{before:t,after:r}}},{key:"getRequestData",value:function getRequestData(){return{type:this.type,args:this.args,timestamp:(new Date).getTime(),component:this.component,command:this.currentCommand,endpoint:$e.data.commandToEndpoint(this.currentCommand,elementorCommon.helpers.cloneObject(this.args),this.constructor.getEndpointFormat())}}},{key:"apply",value:function apply(){var t=this,r=this.getApplyMethods();this.args=r.before(this.args);var a=this.getRequestData();return $e.data.fetch(a).then((function(o){return t.data=o,t.data=r.after(o,t.args),t.data={data:t.data},t.data=(0,l.default)({__requestData__:a},t.data),t.data}))}},{key:"applyBeforeCreate",value:function applyBeforeCreate(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return t}},{key:"applyAfterCreate",value:function applyAfterCreate(t){return t}},{key:"applyBeforeDelete",value:function applyBeforeDelete(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return t}},{key:"applyAfterDelete",value:function applyAfterDelete(t){return t}},{key:"applyBeforeGet",value:function applyBeforeGet(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return t}},{key:"applyAfterGet",value:function applyAfterGet(t){return t}},{key:"applyBeforeUpdate",value:function applyBeforeUpdate(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return t}},{key:"applyAfterUpdate",value:function applyAfterUpdate(t){return t}},{key:"applyBeforeOptions",value:function applyBeforeOptions(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return t}},{key:"applyAfterOptions",value:function applyAfterOptions(t){return t}},{key:"onCatchApply",value:function onCatchApply(t){var r,a,o=(null===(r=t)||void 0===r||null===(a=r.data)||void 0===a?void 0:a.status)||0,i=(0,c.default)(k).find((function(t){return t.getStatus()===o}));i||(i=k.DefaultError),t=i.create(t.message,t.code,t.data||[]),this.runCatchHooks(t),t.notify()}}],[{key:"getInstanceType",value:function getInstanceType(){return"CommandData"}},{key:"getEndpointFormat",value:function getEndpointFormat(){return null}}]),CommandData}(m.default);r.default=x},23714:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var u=i(a(11959)),l=i(a(39041)),c=i(a(77371)),d=i(a(68537)),p=function(t){(0,c.default)(CommandInternalBase,t);var r=(0,d.default)(CommandInternalBase);function CommandInternalBase(t){var a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:$e.commandsInternal;return(0,u.default)(this,CommandInternalBase),r.call(this,t,a)}return(0,l.default)(CommandInternalBase,null,[{key:"getInstanceType",value:function getInstanceType(){return"CommandInternalBase"}}]),CommandInternalBase}(i(a(68689)).default);r.default=p},9899:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=r.Close=void 0;var u=i(a(11959)),l=i(a(39041)),c=i(a(77371)),d=i(a(68537)),p=function(t){(0,c.default)(Close,t);var r=(0,d.default)(Close);function Close(){return(0,u.default)(this,Close),r.apply(this,arguments)}return(0,l.default)(Close,[{key:"apply",value:function apply(){this.component.close()}}]),Close}(i(a(68689)).default);r.Close=p;var v=p;r.default=v},11469:(t,r,a)=>{"use strict";var o=a(67394);o(r,"__esModule",{value:!0}),o(r,"Close",{enumerable:!0,get:function get(){return i.Close}}),o(r,"Open",{enumerable:!0,get:function get(){return u.Open}}),o(r,"Toggle",{enumerable:!0,get:function get(){return l.Toggle}});var i=a(9899),u=a(35898),l=a(37894)},35898:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=r.Open=void 0;var u=i(a(11959)),l=i(a(39041)),c=i(a(77371)),d=i(a(68537)),p=function(t){(0,c.default)(Open,t);var r=(0,d.default)(Open);function Open(){return(0,u.default)(this,Open),r.apply(this,arguments)}return(0,l.default)(Open,[{key:"apply",value:function apply(){$e.route(this.component.getNamespace())}}]),Open}(i(a(68689)).default);r.Open=p;var v=p;r.default=v},37894:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=r.Toggle=void 0;var u=i(a(11959)),l=i(a(39041)),c=i(a(77371)),d=i(a(68537)),p=function(t){(0,c.default)(Toggle,t);var r=(0,d.default)(Toggle);function Toggle(){return(0,u.default)(this,Toggle),r.apply(this,arguments)}return(0,l.default)(Toggle,[{key:"apply",value:function apply(){this.component.isOpen?this.component.close():$e.route(this.component.getNamespace())}}]),Toggle}(i(a(68689)).default);r.Toggle=p;var v=p;r.default=v},15591:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0,a(99236),a(64434),a(84208);var u=i(a(38923)),l=i(a(35657)),c=i(a(83452)),d=i(a(47834)),p=i(a(11959)),v=i(a(39041)),h=i(a(77371)),g=i(a(68537)),y=function(t){(0,h.default)(ComponentBase,t);var r=(0,g.default)(ComponentBase);function ComponentBase(){return(0,p.default)(this,ComponentBase),r.apply(this,arguments)}return(0,v.default)(ComponentBase,[{key:"__construct",value:function __construct(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};t.manager&&(this.manager=t.manager),this.commands=this.defaultCommands(),this.commandsInternal=this.defaultCommandsInternal(),this.hooks=this.defaultHooks(),this.routes=this.defaultRoutes(),this.tabs=this.defaultTabs(),this.shortcuts=this.defaultShortcuts(),this.utils=this.defaultUtils(),this.data=this.defaultData(),this.uiStates=this.defaultUiStates(),this.defaultRoute="",this.currentTab=""}},{key:"registerAPI",value:function registerAPI(){var t=this;(0,u.default)(this.getTabs()).forEach((function(r){return t.registerTabRoute(r[0])})),(0,u.default)(this.getRoutes()).forEach((function(r){var a=(0,d.default)(r,2),o=a[0],i=a[1];return t.registerRoute(o,i)})),(0,u.default)(this.getCommands()).forEach((function(r){var a=(0,d.default)(r,2),o=a[0],i=a[1];return t.registerCommand(o,i)})),(0,u.default)(this.getCommandsInternal()).forEach((function(r){var a=(0,d.default)(r,2),o=a[0],i=a[1];return t.registerCommandInternal(o,i)})),(0,l.default)(this.getHooks()).forEach((function(r){return t.registerHook(r)})),(0,u.default)(this.getData()).forEach((function(r){var a=(0,d.default)(r,2),o=a[0],i=a[1];return t.registerData(o,i)})),(0,l.default)(this.getUiStates()).forEach((function(r){return t.registerUiState(r)}))}},{key:"getNamespace",value:function getNamespace(){elementorModules.ForceMethodImplementation()}},{key:"getRootContainer",value:function getRootContainer(){return this.getNamespace().split("/")[0]}},{key:"defaultTabs",value:function defaultTabs(){return{}}},{key:"defaultRoutes",value:function defaultRoutes(){return{}}},{key:"defaultCommands",value:function defaultCommands(){return{}}},{key:"defaultCommandsInternal",value:function defaultCommandsInternal(){return{}}},{key:"defaultHooks",value:function defaultHooks(){return{}}},{key:"defaultUiStates",value:function defaultUiStates(){return{}}},{key:"defaultShortcuts",value:function defaultShortcuts(){return{}}},{key:"defaultUtils",value:function defaultUtils(){return{}}},{key:"defaultData",value:function defaultData(){return{}}},{key:"getCommands",value:function getCommands(){return this.commands}},{key:"getCommandsInternal",value:function getCommandsInternal(){return this.commandsInternal}},{key:"getHooks",value:function getHooks(){return this.hooks}},{key:"getUiStates",value:function getUiStates(){return this.uiStates}},{key:"getRoutes",value:function getRoutes(){return this.routes}},{key:"getTabs",value:function getTabs(){return this.tabs}},{key:"getShortcuts",value:function getShortcuts(){return this.shortcuts}},{key:"getData",value:function getData(){return this.data}},{key:"registerCommand",value:function registerCommand(t,r){$e.commands.register(this,t,r)}},{key:"registerHook",value:function registerHook(t){return t.register()}},{key:"registerUiState",value:function registerUiState(t){$e.uiStates.register(t)}},{key:"registerCommandInternal",value:function registerCommandInternal(t,r){$e.commandsInternal.register(this,t,r)}},{key:"registerRoute",value:function registerRoute(t,r){$e.routes.register(this,t,r)}},{key:"registerData",value:function registerData(t,r){$e.data.register(this,t,r)}},{key:"unregisterRoute",value:function unregisterRoute(t){$e.routes.unregister(this,t)}},{key:"registerTabRoute",value:function registerTabRoute(t){var r=this;this.registerRoute(t,(function(a){return r.activateTab(t,a)}))}},{key:"dependency",value:function dependency(){return!0}},{key:"open",value:function open(){return!0}},{key:"close",value:function close(){return!!this.isOpen&&(this.isOpen=!1,this.inactivate(),$e.routes.clearCurrent(this.getNamespace()),$e.routes.clearHistory(this.getRootContainer()),!0)}},{key:"activate",value:function activate(){$e.components.activate(this.getNamespace())}},{key:"inactivate",value:function inactivate(){$e.components.inactivate(this.getNamespace())}},{key:"isActive",value:function isActive(){return $e.components.isActive(this.getNamespace())}},{key:"onRoute",value:function onRoute(t){this.toggleRouteClass(t,!0),this.toggleHistoryClass(),this.activate(),this.trigger("route/open",t)}},{key:"onCloseRoute",value:function onCloseRoute(t){this.toggleRouteClass(t,!1),this.inactivate(),this.trigger("route/close",t)}},{key:"setDefaultRoute",value:function setDefaultRoute(t){this.defaultRoute=this.getNamespace()+"/"+t}},{key:"getDefaultRoute",value:function getDefaultRoute(){return this.defaultRoute}},{key:"removeTab",value:function removeTab(t){delete this.tabs[t],this.unregisterRoute(t)}},{key:"hasTab",value:function hasTab(t){return!!this.tabs[t]}},{key:"addTab",value:function addTab(t,r,a){var o=this;if(this.tabs[t]=r,void 0!==a){var i={},u=(0,c.default)(this.tabs);u.pop(),u.splice(a,0,t),u.forEach((function(t){i[t]=o.tabs[t]})),this.tabs=i}this.registerTabRoute(t)}},{key:"getTabsWrapperSelector",value:function getTabsWrapperSelector(){return""}},{key:"getTabRoute",value:function getTabRoute(t){return this.getNamespace()+"/"+t}},{key:"renderTab",value:function renderTab(t){}},{key:"activateTab",value:function activateTab(t,r){var a=this;this.currentTab=t,this.renderTab(t,r),jQuery(this.getTabsWrapperSelector()+" .elementor-component-tab").off("click").on("click",(function(t){$e.route(a.getTabRoute(t.currentTarget.dataset.tab),r)})).removeClass("elementor-active").filter('[data-tab="'+t+'"]').addClass("elementor-active")}},{key:"getActiveTabConfig",value:function getActiveTabConfig(){return this.tabs[this.currentTab]||{}}},{key:"getBodyClass",value:function getBodyClass(t){return"e-route-"+t.replace(/\//g,"-")}},{key:"normalizeCommandName",value:function normalizeCommandName(t){return t.replace(/[A-Z]/g,(function(t,r){return(r>0?"-":"")+t.toLowerCase()}))}},{key:"importCommands",value:function importCommands(t){var r=this,a={};return(0,u.default)(t).forEach((function(t){var o=(0,d.default)(t,2),i=o[0],u=o[1],l=r.normalizeCommandName(i);a[l]=function(t){return new u(t).run()},$e.commands.classes[r.getNamespace()+"/"+l]=u})),a}},{key:"importHooks",value:function importHooks(t){var r={};for(var a in t){var o=new t[a];r[o.getId()]=o}return r}},{key:"importUiStates",value:function importUiStates(t){var r=this,a={};return(0,l.default)(t).forEach((function(t){var o=new t(r);a[o.getId()]=o})),a}},{key:"setUiState",value:function setUiState(t,r){$e.uiStates.set("".concat(this.getNamespace(),"/").concat(t),r)}},{key:"toggleRouteClass",value:function toggleRouteClass(t,r){elementorCommon.elements.$body.toggleClass(this.getBodyClass(t),r)}},{key:"toggleHistoryClass",value:function toggleHistoryClass(){elementorCommon.elements.$body.toggleClass("e-routes-has-history",!!$e.routes.getHistory(this.getRootContainer()).length)}}]),ComponentBase}(elementorModules.Module);r.default=y},18427:(t,r,a)=>{"use strict";var o=a(67394),i=a(52369),u=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var l=u(a(11959)),c=u(a(39041)),d=u(a(76700)),p=u(a(44263)),v=u(a(77371)),h=u(a(68537)),g=u(a(15591)),y=i(a(11469)),m=function(t){(0,v.default)(ComponentModalBase,t);var r=(0,h.default)(ComponentModalBase);function ComponentModalBase(){return(0,l.default)(this,ComponentModalBase),r.apply(this,arguments)}return(0,c.default)(ComponentModalBase,[{key:"registerAPI",value:function registerAPI(){var t=this;(0,d.default)((0,p.default)(ComponentModalBase.prototype),"registerAPI",this).call(this),$e.shortcuts.register("esc",{scopes:[this.getNamespace()],callback:function callback(){return t.close()}})}},{key:"defaultCommands",value:function defaultCommands(){return this.importCommands(y)}},{key:"defaultRoutes",value:function defaultRoutes(){return{"":function _(){}}}},{key:"open",value:function open(){var t=this;if(!this.layout){var r=this.getModalLayout();this.layout=new r({component:this}),this.layout.getModal().on("hide",(function(){return t.close()}))}return this.layout.showModal(),!0}},{key:"close",value:function close(){return!!(0,d.default)((0,p.default)(ComponentModalBase.prototype),"close",this).call(this)&&(this.layout.getModal().hide(),!0)}},{key:"getModalLayout",value:function getModalLayout(){elementorModules.ForceMethodImplementation()}}]),ComponentModalBase}(g.default);r.default=m},7793:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var u=i(a(84899)),l=i(a(11959)),c=i(a(39041)),d=i(a(38852)),p=i(a(77371)),v=i(a(68537)),h=i(a(73629)),g=i(a(18042)),y=function(t){(0,p.default)(BaseError,t);var r=(0,v.default)(BaseError);function BaseError(){var t,a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[];return(0,l.default)(this,BaseError),t=r.call(this,a),(0,g.default)((0,d.default)(t),"code",""),(0,g.default)((0,d.default)(t),"data",[]),t.code=o,t.data=i,t}return(0,c.default)(BaseError,[{key:"notify",value:function notify(){elementorCommon.helpers.consoleError((0,u.default)({message:this.message},this))}}],[{key:"create",value:function create(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[];return new this(t,r,a)}},{key:"getStatus",value:function getStatus(){elementorModules.ForceMethodImplementation()}}]),BaseError}((0,h.default)(Error));r.default=y},96461:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=r.DefaultError=void 0;var u=i(a(11959)),l=i(a(39041)),c=i(a(77371)),d=i(a(68537)),p=function(t){(0,c.default)(DefaultError,t);var r=(0,d.default)(DefaultError);function DefaultError(){return(0,u.default)(this,DefaultError),r.apply(this,arguments)}return(0,l.default)(DefaultError,null,[{key:"getStatus",value:function getStatus(){return 0}}]),DefaultError}(i(a(7793)).default);r.DefaultError=p;var v=p;r.default=v},43861:(t,r,a)=>{"use strict";var o=a(67394);o(r,"__esModule",{value:!0}),o(r,"NotFoundError",{enumerable:!0,get:function get(){return i.NotFoundError}}),o(r,"DefaultError",{enumerable:!0,get:function get(){return u.DefaultError}});var i=a(37990),u=a(96461)},37990:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=r.NotFoundError=void 0;var u=i(a(11959)),l=i(a(39041)),c=i(a(77371)),d=i(a(68537)),p=function(t){(0,c.default)(NotFoundError,t);var r=(0,d.default)(NotFoundError);function NotFoundError(){return(0,u.default)(this,NotFoundError),r.apply(this,arguments)}return(0,l.default)(NotFoundError,[{key:"notify",value:function notify(){elementorCommon.helpers.consoleWarn(this.message)}}],[{key:"getStatus",value:function getStatus(){return 404}}]),NotFoundError}(i(a(7793)).default);r.NotFoundError=p;var v=p;r.default=v},2857:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var u=i(a(11959)),l=i(a(39041)),c=i(a(18042)),d=function(){function HookBase(){(0,u.default)(this,HookBase),(0,c.default)(this,"type",void 0),(0,c.default)(this,"command",void 0),(0,c.default)(this,"id",void 0),this.initialize(),this.type=this.getType(),this.command=this.getCommand(),this.id=this.getId()}return(0,l.default)(HookBase,[{key:"initialize",value:function initialize(){}},{key:"register",value:function register(){elementorModules.ForceMethodImplementation()}},{key:"getType",value:function getType(){elementorModules.ForceMethodImplementation()}},{key:"getCommand",value:function getCommand(){elementorModules.ForceMethodImplementation()}},{key:"getId",value:function getId(){elementorModules.ForceMethodImplementation()}},{key:"getContainerType",value:function getContainerType(){}},{key:"getConditions",value:function getConditions(){return!0}},{key:"apply",value:function apply(t){elementorModules.ForceMethodImplementation()}},{key:"run",value:function run(){var t=arguments.length<=0?void 0:arguments[0],r=t.options,a=void 0===r?{}:r;return!(!a.callbacks||!1!==a.callbacks[this.id])||(!this.getConditions.apply(this,arguments)||($e.devTools&&$e.devTools.log.callbacks().active(this.type,this.command,this.id),this.apply.apply(this,arguments)))}}]),HookBase}();r.default=d},7918:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var u=i(a(11959)),l=i(a(77371)),c=i(a(68537)),d=function(t){(0,l.default)(HookBreak,t);var r=(0,c.default)(HookBreak);function HookBreak(){return(0,u.default)(this,HookBreak),r.call(this,"HookBreak")}return HookBreak}((0,i(a(73629)).default)(Error));r.default=d},91706:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=r.After=void 0;var u=i(a(11959)),l=i(a(39041)),c=i(a(77371)),d=i(a(68537)),p=function(t){(0,c.default)(After,t);var r=(0,d.default)(After);function After(){return(0,u.default)(this,After),r.apply(this,arguments)}return(0,l.default)(After,[{key:"register",value:function register(){$e.hooks.registerDataAfter(this)}}]),After}(i(a(85895)).default);r.After=p;var v=p;r.default=v},85895:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=r.Base=void 0;var u=i(a(11959)),l=i(a(39041)),c=i(a(77371)),d=i(a(68537)),p=function(t){(0,c.default)(Base,t);var r=(0,d.default)(Base);function Base(){return(0,u.default)(this,Base),r.apply(this,arguments)}return(0,l.default)(Base,[{key:"getType",value:function getType(){return"data"}}]),Base}(i(a(2857)).default);r.Base=p;var v=p;r.default=v},3999:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=r.Catch=void 0;var u=i(a(11959)),l=i(a(39041)),c=i(a(77371)),d=i(a(68537)),p=function(t){(0,c.default)(Catch,t);var r=(0,d.default)(Catch);function Catch(){return(0,u.default)(this,Catch),r.apply(this,arguments)}return(0,l.default)(Catch,[{key:"register",value:function register(){$e.hooks.registerDataCatch(this)}}]),Catch}(i(a(85895)).default);r.Catch=p;var v=p;r.default=v},52642:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=r.Dependency=void 0;var u=i(a(11959)),l=i(a(39041)),c=i(a(77371)),d=i(a(68537)),p=function(t){(0,c.default)(Dependency,t);var r=(0,d.default)(Dependency);function Dependency(){return(0,u.default)(this,Dependency),r.apply(this,arguments)}return(0,l.default)(Dependency,[{key:"register",value:function register(){$e.hooks.registerDataDependency(this)}}]),Dependency}(i(a(85895)).default);r.Dependency=p;var v=p;r.default=v},90321:(t,r,a)=>{"use strict";var o=a(67394);o(r,"__esModule",{value:!0}),o(r,"After",{enumerable:!0,get:function get(){return i.After}}),o(r,"Base",{enumerable:!0,get:function get(){return u.Base}}),o(r,"Catch",{enumerable:!0,get:function get(){return l.Catch}}),o(r,"Dependency",{enumerable:!0,get:function get(){return c.Dependency}});var i=a(91706),u=a(85895),l=a(3999),c=a(52642)},57061:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=r.After=void 0;var u=i(a(11959)),l=i(a(39041)),c=i(a(77371)),d=i(a(68537)),p=function(t){(0,c.default)(After,t);var r=(0,d.default)(After);function After(){return(0,u.default)(this,After),r.apply(this,arguments)}return(0,l.default)(After,[{key:"register",value:function register(){$e.hooks.registerUIAfter(this)}}]),After}(i(a(22803)).default);r.After=p;var v=p;r.default=v},22803:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=r.Base=void 0;var u=i(a(11959)),l=i(a(39041)),c=i(a(77371)),d=i(a(68537)),p=function(t){(0,c.default)(Base,t);var r=(0,d.default)(Base);function Base(){return(0,u.default)(this,Base),r.apply(this,arguments)}return(0,l.default)(Base,[{key:"getType",value:function getType(){return"ui"}}]),Base}(i(a(2857)).default);r.Base=p;var v=p;r.default=v},26556:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=r.Before=void 0;var u=i(a(11959)),l=i(a(39041)),c=i(a(77371)),d=i(a(68537)),p=function(t){(0,c.default)(Before,t);var r=(0,d.default)(Before);function Before(){return(0,u.default)(this,Before),r.apply(this,arguments)}return(0,l.default)(Before,[{key:"register",value:function register(){$e.hooks.registerUIBefore(this)}}]),Before}(i(a(22803)).default);r.Before=p;var v=p;r.default=v},8295:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=r.Catch=void 0;var u=i(a(11959)),l=i(a(39041)),c=i(a(77371)),d=i(a(68537)),p=function(t){(0,c.default)(Catch,t);var r=(0,d.default)(Catch);function Catch(){return(0,u.default)(this,Catch),r.apply(this,arguments)}return(0,l.default)(Catch,[{key:"register",value:function register(){$e.hooks.registerUICatch(this)}}]),Catch}(i(a(22803)).default);r.Catch=p;var v=p;r.default=v},749:(t,r,a)=>{"use strict";var o=a(67394);o(r,"__esModule",{value:!0}),o(r,"After",{enumerable:!0,get:function get(){return i.After}}),o(r,"Base",{enumerable:!0,get:function get(){return u.Base}}),o(r,"Before",{enumerable:!0,get:function get(){return l.Before}}),o(r,"Catch",{enumerable:!0,get:function get(){return c.Catch}});var i=a(57061),u=a(22803),l=a(26556),c=a(8295)},52253:(t,r,a)=>{"use strict";a(99745),a(64828);t.exports=function Debug(){var t=this,r=[],a={},o={},i=function onError(r){var o,i=null===(o=r.originalEvent)||void 0===o?void 0:o.error;if(i){var u=!1,l=a.urlsToWatch;jQuery.each(l,(function(){if(-1!==i.stack.indexOf(this))return u=!0,!1})),u&&t.addError({type:i.name,message:i.message,url:originalEvent.filename,line:originalEvent.lineno,column:originalEvent.colno})}};this.addURLToWatch=function(t){a.urlsToWatch.push(t)},this.addCustomError=function(t,r,a){var o={type:t.name,message:t.message,url:t.fileName||t.sourceURL,line:t.lineNumber||t.line,column:t.columnNumber||t.column,customFields:{category:r||"general",tag:a}};if(!o.url){var i=t.stack.match(/\n {4}at (.*?(?=:(\d+):(\d+)))/);i&&(o.url=i[1],o.line=i[2],o.column=i[3])}this.addError(o)},this.addError=function(a){var o={type:"Error",timestamp:Math.floor((new Date).getTime()/1e3),message:null,url:null,line:null,column:null,customFields:{}};r.push(jQuery.extend(!0,o,a)),t.sendErrors()},this.sendErrors=function(){o.$window.off("error",i),jQuery.ajax({url:elementorCommon.config.ajax.url,method:"POST",data:{action:"elementor_js_log",_nonce:elementorCommon.ajax.getSettings("nonce"),data:r},success:function success(){r=[],o.$window.on("error",i)}})},function init(){!function initSettings(){a={debounceDelay:500,urlsToWatch:["elementor/assets"]}}(),function initElements(){o.$window=jQuery(window)}(),function bindEvents(){o.$window.on("error",i)}(),t.sendErrors=_.debounce(t.sendErrors,a.debounceDelay)}()}},73308:(t,r,a)=>{"use strict";a(67394)(r,"__esModule",{value:!0}),r.default=void 0,a(76139),a(44321);var o=function matchUserAgent(t){return i.indexOf(t)>=0},i=navigator.userAgent,u=!!window.opr&&!!opr.addons||!!window.opera||o(" OPR/"),l=o("Firefox"),c=/^((?!chrome|android).)*safari/i.test(i)||/constructor/i.test(window.HTMLElement)||"[object SafariRemoteNotification]"===(!window.safari||"undefined"!=typeof safari&&safari.pushNotification).toString(),d=/Trident|MSIE/.test(i)&&!!document.documentMode,p=!d&&!!window.StyleMedia||o("Edg"),v=!!window.chrome&&o("Chrome")&&!(p||u),h=o("Chrome")&&!!window.CSS,g={appleWebkit:o("AppleWebKit")&&!h,blink:h,chrome:v,edge:p,firefox:l,ie:d,mac:o("Macintosh"),opera:u,safari:c,webkit:o("AppleWebKit")};r.default=g},90287:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0,a(84208),a(76139),a(44321);var u=i(a(32009)),l=i(a(11959)),c=i(a(39041)),d=function(){function Helpers(){(0,l.default)(this,Helpers)}return(0,c.default)(Helpers,[{key:"softDeprecated",value:function softDeprecated(t,r,a){elementorCommon.config.isDebug&&this.deprecatedMessage("soft",t,r,a)}},{key:"hardDeprecated",value:function hardDeprecated(t,r,a){this.deprecatedMessage("hard",t,r,a)}},{key:"deprecatedMessage",value:function deprecatedMessage(t,r,a,o){var i="`".concat(r,"` is ").concat(t," deprecated since ").concat(a);o&&(i+=" - Use `".concat(o,"` instead")),this.consoleWarn(i)}},{key:"consoleWarn",value:function consoleWarn(){for(var t,r='font-size: 12px; background-image: url("'.concat(elementorCommon.config.urls.assets,'images/logo-icon.png"); background-repeat: no-repeat; background-size: contain;'),a=arguments.length,o=new Array(a),i=0;i<a;i++)o[i]=arguments[i];o.unshift("%c  %c",r,""),(t=console).warn.apply(t,o)}},{key:"consoleError",value:function consoleError(t){$e.devTools&&$e.devTools.log.error(t),t instanceof $e.modules.HookBreak||console.error(t)}},{key:"deprecatedMethod",value:function deprecatedMethod(t,r,a){this.deprecatedMessage("hard",t,r,a),this.softDeprecated("elementorCommon.helpers.deprecatedMethod","2.8.0","elementorCommon.helpers.softDeprecated || elementorCommon.helpers.hardDeprecated")}},{key:"cloneObject",value:function cloneObject(t){return JSON.parse((0,u.default)(t))}},{key:"upperCaseWords",value:function upperCaseWords(t){return(t+"").replace(/^(.)|\s+(.)/g,(function(t){return t.toUpperCase()}))}},{key:"getUniqueId",value:function getUniqueId(){return Math.random().toString(16).substr(2,7)}}]),Helpers}();r.default=d},35107:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var u=i(a(83452)),l=i(a(32009)),c=i(a(11959)),d=i(a(39041)),p=i(a(77371)),v=i(a(68537)),h=function(t){(0,p.default)(_default,t);var r=(0,v.default)(_default);function _default(){return(0,c.default)(this,_default),r.apply(this,arguments)}return(0,d.default)(_default,[{key:"get",value:function get(t,r){var a;r=r||{};try{a=r.session?sessionStorage:localStorage}catch(r){return t?void 0:{}}var o=a.getItem("elementor");(o=o?JSON.parse(o):{}).__expiration||(o.__expiration={});var i=o.__expiration,l=[];t?i[t]&&(l=[t]):l=(0,u.default)(i);var c=!1;return l.forEach((function(t){new Date(i[t])<new Date&&(delete o[t],delete i[t],c=!0)})),c&&this.save(o,r.session),t?o[t]:o}},{key:"set",value:function set(t,r,a){a=a||{};var o=this.get(null,a);if(o[t]=r,a.lifetimeInSeconds){var i=new Date;i.setTime(i.getTime()+1e3*a.lifetimeInSeconds),o.__expiration[t]=i.getTime()}this.save(o,a.session)}},{key:"save",value:function save(t,r){var a;try{a=r?sessionStorage:localStorage}catch(t){return}a.setItem("elementor",(0,l.default)(t))}}]),_default}(elementorModules.Module);r.default=h},22998:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var u=i(a(32009)),l=i(a(38923)),c=i(a(35657)),d=i(a(47834)),p=i(a(11959)),v=i(a(39041)),h=i(a(38852)),g=i(a(77371)),y=i(a(68537)),m=function(t){(0,g.default)(_default,t);var r=(0,y.default)(_default);function _default(){var t;(0,p.default)(this,_default);for(var a=arguments.length,o=new Array(a),i=0;i<a;i++)o[i]=arguments[i];return(t=r.call.apply(r,[this].concat(o))).requests={},t.cache={},t.initRequestConstants(),t.debounceSendBatch=_.debounce(t.sendBatch.bind((0,h.default)(t)),500),t}return(0,v.default)(_default,[{key:"getDefaultSettings",value:function getDefaultSettings(){return{ajaxParams:{type:"POST",url:elementorCommon.config.ajax.url,data:{},dataType:"json"},actionPrefix:"elementor_"}}},{key:"initRequestConstants",value:function initRequestConstants(){this.requestConstants={_nonce:this.getSettings("nonce")}}},{key:"addRequestConstant",value:function addRequestConstant(t,r){this.requestConstants[t]=r}},{key:"getCacheKey",value:function getCacheKey(t){return(0,u.default)({unique_id:t.unique_id,data:t.data})}},{key:"loadObjects",value:function loadObjects(t){var r=this,a={},o=[];t.before&&t.before(),t.ids.forEach((function(i){o.push(r.load({action:t.action,unique_id:t.data.unique_id+i,data:jQuery.extend({id:i},t.data)}).done((function(t){return a=jQuery.extend(a,t)})))})),jQuery.when.apply(jQuery,o).done((function(){return t.success(a)}))}},{key:"load",value:function load(t,r){var a=this;t.unique_id||(t.unique_id=t.action),t.before&&t.before();var o=this.getCacheKey(t);return _.has(this.cache,o)?jQuery.Deferred().done(t.success).resolve(this.cache[o]):this.addRequest(t.action,{data:t.data,unique_id:t.unique_id,success:function success(t){return a.cache[o]=t}},r).done(t.success)}},{key:"addRequest",value:function addRequest(t,r,a){(r=r||{}).unique_id||(r.unique_id=t),r.deferred=jQuery.Deferred().done(r.success).fail(r.error).always(r.complete);var o={action:t,options:r};if(a){var i={};i[r.unique_id]=o,r.deferred.jqXhr=this.sendBatch(i)}else this.requests[r.unique_id]=o,this.debounceSendBatch();return r.deferred}},{key:"sendBatch",value:function sendBatch(t){var r={};return t||(t=this.requests,this.requests={}),(0,l.default)(t).forEach((function(t){var a=(0,d.default)(t,2),o=a[0],i=a[1];return r[o]={action:i.action,data:i.options.data}})),this.send("ajax",{data:{actions:(0,u.default)(r)},success:function success(r){(0,l.default)(r.responses).forEach((function(r){var a=(0,d.default)(r,2),o=a[0],i=a[1],u=t[o].options;u&&(i.success?u.deferred.resolve(i.data):i.success||u.deferred.reject(i.data))}))},error:function error(r){return(0,c.default)(t).forEach((function(t){t.options&&t.options.deferred.reject(r)}))}})}},{key:"prepareSend",value:function prepareSend(t,r){var a=this,o=this.getSettings(),i=elementorCommon.helpers.cloneObject(o.ajaxParams);r=r||{},t=o.actionPrefix+t,jQuery.extend(i,r);var u=elementorCommon.helpers.cloneObject(this.requestConstants);u.action=t;var c=i.data instanceof FormData;(0,l.default)(u).forEach((function(t){var r=(0,d.default)(t,2),a=r[0],o=r[1];c?i.data.append(a,o):i.data[a]=o}));var p=i.success,v=i.error;return(p||v)&&(i.success=function(t){t.success&&p&&p(t.data),!t.success&&v&&v(t.data)},i.error=v?function(t){return v(t)}:function(t){(t.readyState||"abort"!==t.statusText)&&a.trigger("request:unhandledError",t)}),i}},{key:"send",value:function send(t,r){return jQuery.ajax(this.prepareSend(t,r))}},{key:"addRequestCache",value:function addRequestCache(t,r){var a=this.getCacheKey(t);this.cache[a]=r}},{key:"invalidateCache",value:function invalidateCache(t){var r=this.getCacheKey(t);delete this.cache[r]}}]),_default}(elementorModules.Module);r.default=m},57100:(t,r,a)=>{"use strict";var o=a(18194).__,i=a(67394),u=a(67971);i(r,"__esModule",{value:!0}),r.default=void 0,a(99236);var l=u(a(11959)),c=u(a(39041)),d=u(a(76700)),p=u(a(44263)),v=u(a(77371)),h=u(a(68537)),g=function(t){(0,v.default)(_default,t);var r=(0,h.default)(_default);function _default(){return(0,l.default)(this,_default),r.apply(this,arguments)}return(0,c.default)(_default,[{key:"addPopupPlugin",value:function addPopupPlugin(){var t=0;jQuery.fn.elementorConnect=function(r){var a=jQuery.extend({success:function success(){return location.reload()},error:function error(){elementor.notifications.showToast({message:o("Unable to connect","elementor")})},UTM:function UTM(){var t=$e.routes.getHistory("library").reverse()[0].route.split("/")[2];return"&utm_source=editor-panel&utm_medium=wp-dash&utm_campaign=insert_".concat(t)}},r);return this.each((function(){t++;var r=jQuery(this),o="cb"+t;r.attr({target:"_blank",rel:"opener",href:r.attr("href")+"&mode=popup&callback_id="+o+a.UTM()}),elementorCommon.elements.$window.on("elementor/connect/success/"+o,a.success).on("elementor/connect/error/"+o,a.error)})),this}}},{key:"getDefaultSettings",value:function getDefaultSettings(){return{selectors:{connectButton:"#elementor-template-library-connect__button"}}}},{key:"getDefaultElements",value:function getDefaultElements(){return{$connectButton:jQuery(this.getSettings("selectors.connectButton"))}}},{key:"applyPopup",value:function applyPopup(){this.elements.$connectButton.elementorConnect()}},{key:"onInit",value:function onInit(){(0,d.default)((0,p.default)(_default.prototype),"onInit",this).call(this),this.addPopupPlugin(),this.applyPopup()}}]),_default}(elementorModules.ViewModule);r.default=g},27948:(t,r,a)=>{"use strict";var o=a(67394);o(r,"__esModule",{value:!0}),o(r,"NavigateDown",{enumerable:!0,get:function get(){return i.NavigateDown}}),o(r,"NavigateSelect",{enumerable:!0,get:function get(){return u.NavigateSelect}}),o(r,"NavigateUp",{enumerable:!0,get:function get(){return l.NavigateUp}});var i=a(85925),u=a(98291),l=a(71117)},85925:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=r.NavigateDown=void 0;var u=i(a(11959)),l=i(a(39041)),c=i(a(77371)),d=i(a(68537)),p=function(t){(0,c.default)(NavigateDown,t);var r=(0,d.default)(NavigateDown);function NavigateDown(){return(0,u.default)(this,NavigateDown),r.apply(this,arguments)}return(0,l.default)(NavigateDown,[{key:"apply",value:function apply(){this.component.getItemsView().activateNextItem()}}]),NavigateDown}(i(a(68689)).default);r.NavigateDown=p;var v=p;r.default=v},98291:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=r.NavigateSelect=void 0;var u=i(a(11959)),l=i(a(39041)),c=i(a(77371)),d=i(a(68537)),p=function(t){(0,c.default)(NavigateSelect,t);var r=(0,d.default)(NavigateSelect);function NavigateSelect(){return(0,u.default)(this,NavigateSelect),r.apply(this,arguments)}return(0,l.default)(NavigateSelect,[{key:"apply",value:function apply(t){this.component.getItemsView().goToActiveItem(t)}}]),NavigateSelect}(i(a(68689)).default);r.NavigateSelect=p;var v=p;r.default=v},71117:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=r.NavigateUp=void 0;var u=i(a(11959)),l=i(a(39041)),c=i(a(77371)),d=i(a(68537)),p=function(t){(0,c.default)(NavigateUp,t);var r=(0,d.default)(NavigateUp);function NavigateUp(){return(0,u.default)(this,NavigateUp),r.apply(this,arguments)}return(0,l.default)(NavigateUp,[{key:"apply",value:function apply(){this.component.getItemsView().activateNextItem(!0)}}]),NavigateUp}(i(a(68689)).default);r.NavigateUp=p;var v=p;r.default=v},47729:(t,r,a)=>{"use strict";var o=a(67394),i=a(52369),u=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var l=u(a(84899)),c=u(a(11959)),d=u(a(39041)),p=u(a(76700)),v=u(a(44263)),h=u(a(77371)),g=u(a(68537)),y=u(a(18427)),m=u(a(2365)),k=i(a(27948)),x=function(t){(0,h.default)(Component,t);var r=(0,g.default)(Component);function Component(){return(0,c.default)(this,Component),r.apply(this,arguments)}return(0,d.default)(Component,[{key:"getNamespace",value:function getNamespace(){return"finder"}},{key:"defaultShortcuts",value:function defaultShortcuts(){var t=this;return{"":{keys:"ctrl+e"},"navigate-down":{keys:"down",scopes:[this.getNamespace()],dependency:function dependency(){return t.getItemsView()}},"navigate-up":{keys:"up",scopes:[this.getNamespace()],dependency:function dependency(){return t.getItemsView()}},"navigate-select":{keys:"enter",scopes:[this.getNamespace()],dependency:function dependency(){return t.getItemsView().$activeItem}}}}},{key:"defaultCommands",value:function defaultCommands(){var t=(0,p.default)((0,v.default)(Component.prototype),"defaultCommands",this).call(this);return(0,l.default)((0,l.default)({"navigate/down":function navigateDown(){elementorCommon.helpers.softDeprecated("$e.run( 'finder/navigate/down' )","3.0.0","$e.run( 'finder/navigate-down' )"),$e.run("finder/navigate-down")},"navigate/up":function navigateUp(){elementorCommon.helpers.softDeprecated("$e.run( 'finder/navigate/up' )","3.0.0","$e.run( 'finder/navigate-up' )"),$e.run("finder/navigate-up")},"navigate/select":function navigateSelect(t){elementorCommon.helpers.softDeprecated("$e.run( 'finder/navigate/select', event )","3.0.0","$e.run( 'finder/navigate-select', event )"),$e.run("finder/navigate-select",t)}},t),this.importCommands(k))}},{key:"getModalLayout",value:function getModalLayout(){return m.default}},{key:"getItemsView",value:function getItemsView(){return this.layout.modalContent.currentView.content.currentView}}]),Component}(y.default);r.default=x},36614:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var u=i(a(11959)),l=i(a(39041)),c=i(a(77371)),d=i(a(68537)),p=i(a(47729)),v=function(t){(0,c.default)(_default,t);var r=(0,d.default)(_default);function _default(){return(0,u.default)(this,_default),r.apply(this,arguments)}return(0,l.default)(_default,[{key:"onInit",value:function onInit(){window.top===window&&(this.channel=Backbone.Radio.channel("ELEMENTOR:finder"),$e.components.register(new p.default({manager:this})))}}]),_default}(elementorModules.Module);r.default=v},56745:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var u=i(a(11959)),l=i(a(39041)),c=i(a(77371)),d=i(a(68537)),p=function(t){(0,c.default)(_default,t);var r=(0,d.default)(_default);function _default(){return(0,u.default)(this,_default),r.apply(this,arguments)}return(0,l.default)(_default,[{key:"defaults",value:function defaults(){return{description:"",icon:"settings",url:"",keywords:[],actions:[]}}}]),_default}(Backbone.Model);r.default=p},44027:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var u=i(a(35657)),l=i(a(11959)),c=i(a(39041)),d=i(a(77371)),p=i(a(68537)),v=i(a(71362)),h=i(a(98304)),g=function(t){(0,d.default)(_default,t);var r=(0,p.default)(_default);function _default(){return(0,l.default)(this,_default),r.apply(this,arguments)}return(0,c.default)(_default,[{key:"id",value:function id(){return"elementor-finder__results-container"}},{key:"ui",value:function ui(){return this.selectors={noResults:"#elementor-finder__no-results",categoryItem:".elementor-finder__results__item"},this.selectors}},{key:"events",value:function events(){return{"mouseenter @ui.categoryItem":"onCategoryItemMouseEnter"}}},{key:"getTemplate",value:function getTemplate(){return"#tmpl-elementor-finder-results-container"}},{key:"getChildView",value:function getChildView(t){return t.get("dynamic")?h.default:v.default}},{key:"initialize",value:function initialize(){this.$activeItem=null,this.childViewContainer="#elementor-finder__results",this.collection=new Backbone.Collection((0,u.default)(elementorCommon.finder.getSettings("data")))}},{key:"activateItem",value:function activateItem(t){this.$activeItem&&this.$activeItem.removeClass("elementor-active"),t.addClass("elementor-active"),this.$activeItem=t}},{key:"activateNextItem",value:function activateNextItem(t){var r=jQuery(this.selectors.categoryItem),a=0;this.$activeItem&&((a=r.index(this.$activeItem)+(t?-1:1))>=r.length?a=0:a<0&&(a=r.length-1));var o=r.eq(a);this.activateItem(o),o[0].scrollIntoView({block:"nearest"})}},{key:"goToActiveItem",value:function goToActiveItem(t){var r=this.$activeItem.children("a"),a=$e.shortcuts.isControlEvent(t);a&&r.attr("target","_blank"),r[0].click(),a&&r.removeAttr("target")}},{key:"onCategoryItemMouseEnter",value:function onCategoryItemMouseEnter(t){this.activateItem(jQuery(t.currentTarget))}},{key:"onChildviewToggleVisibility",value:function onChildviewToggleVisibility(){var t=this.children.every((function(t){return!t.isVisible}));this.ui.noResults.toggle(t)}}]),_default}(Marionette.CompositeView);r.default=g},71362:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var u=i(a(35657)),l=i(a(11959)),c=i(a(39041)),d=i(a(77371)),p=i(a(68537)),v=i(a(13448)),h=i(a(56745)),g=function(t){(0,d.default)(_default,t);var r=(0,p.default)(_default);function _default(){return(0,l.default)(this,_default),r.apply(this,arguments)}return(0,c.default)(_default,[{key:"className",value:function className(){return"elementor-finder__results__category"}},{key:"getTemplate",value:function getTemplate(){return"#tmpl-elementor-finder__results__category"}},{key:"getChildView",value:function getChildView(){return v.default}},{key:"initialize",value:function initialize(){this.childViewContainer=".elementor-finder__results__category__items",this.isVisible=!0;var t=this.model.get("items");t&&(t=(0,u.default)(t)),this.collection=new Backbone.Collection(t,{model:h.default})}},{key:"filter",value:function filter(t){var r=this.getTextFilter();return t.get("title").toLowerCase().indexOf(r)>=0||t.get("keywords").some((function(t){return t.indexOf(r)>=0}))}},{key:"getTextFilter",value:function getTextFilter(){return elementorCommon.finder.channel.request("filter:text").trim().toLowerCase()}},{key:"toggleElement",value:function toggleElement(){var t=!!this.children.length;t!==this.isVisible&&(this.isVisible=t,this.$el.toggle(t),this.triggerMethod("toggle:visibility"))}},{key:"onRender",value:function onRender(){this.listenTo(elementorCommon.finder.channel,"filter:change",this.onFilterChange.bind(this))}},{key:"onFilterChange",value:function onFilterChange(){this._renderChildren()}},{key:"onRenderCollection",value:function onRenderCollection(){this.toggleElement()}}]),_default}(Marionette.CompositeView);r.default=g},27308:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var u=i(a(11959)),l=i(a(39041)),c=i(a(77371)),d=i(a(68537)),p=i(a(44027)),v=function(t){(0,c.default)(_default,t);var r=(0,d.default)(_default);function _default(){return(0,u.default)(this,_default),r.apply(this,arguments)}return(0,l.default)(_default,[{key:"id",value:function id(){return"elementor-finder"}},{key:"getTemplate",value:function getTemplate(){return"#tmpl-elementor-finder"}},{key:"ui",value:function ui(){return{searchInput:"#elementor-finder__search__input"}}},{key:"events",value:function events(){return{"input @ui.searchInput":"onSearchInputInput"}}},{key:"regions",value:function regions(){return{content:"#elementor-finder__content"}}},{key:"showCategoriesView",value:function showCategoriesView(){this.content.show(new p.default)}},{key:"onSearchInputInput",value:function onSearchInputInput(){var t=this.ui.searchInput.val();t&&(elementorCommon.finder.channel.reply("filter:text",t).trigger("filter:change"),this.content.currentView instanceof p.default||this.showCategoriesView()),this.content.currentView.$el.toggle(!!t)}}]),_default}(Marionette.LayoutView);r.default=v},98304:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var u=i(a(11959)),l=i(a(39041)),c=i(a(76700)),d=i(a(44263)),p=i(a(77371)),v=i(a(68537)),h=function(t){(0,p.default)(_default,t);var r=(0,v.default)(_default);function _default(){return(0,u.default)(this,_default),r.apply(this,arguments)}return(0,l.default)(_default,[{key:"className",value:function className(){return(0,c.default)((0,d.default)(_default.prototype),"className",this).call(this)+" elementor-finder__results__category--dynamic"}},{key:"ui",value:function ui(){return{title:".elementor-finder__results__category__title"}}},{key:"fetchData",value:function fetchData(){var t=this;this.ui.loadingIcon.show(),elementorCommon.ajax.addRequest("finder_get_category_items",{data:{category:this.model.get("name"),filter:this.getTextFilter()},success:function success(r){t.isDestroyed||(t.collection.set(r),t.toggleElement(),t.ui.loadingIcon.hide())}})}},{key:"filter",value:function filter(){return!0}},{key:"onFilterChange",value:function onFilterChange(){this.fetchData()}},{key:"onRender",value:function onRender(){(0,c.default)((0,d.default)(_default.prototype),"onRender",this).call(this),this.ui.loadingIcon=jQuery("<i>",{class:"eicon-loading eicon-animation-spin"}),this.ui.title.after(this.ui.loadingIcon),this.fetchData()}}]),_default}(i(a(71362)).default);r.default=h},13448:(t,r,a)=>{"use strict";var o=a(67394),i=a(67971);o(r,"__esModule",{value:!0}),r.default=void 0;var u=i(a(11959)),l=i(a(39041)),c=i(a(77371)),d=i(a(68537)),p=function(t){(0,c.default)(_default,t);var r=(0,d.default)(_default);function _default(){return(0,u.default)(this,_default),r.apply(this,arguments)}return(0,l.default)(_default,[{key:"className",value:function className(){return"elementor-finder__results__item"}},{key:"getTemplate",value:function getTemplate(){return"#tmpl-elementor-finder__results__item"}}]),_default}(Marionette.ItemView);r.default=p},2365:(t,r,a)=>{"use strict";var o=a(18194).__,i=a(67394),u=a(67971);i(r,"__esModule",{value:!0}),r.default=void 0;var l=u(a(11959)),c=u(a(39041)),d=u(a(76700)),p=u(a(44263)),v=u(a(77371)),h=u(a(68537)),g=u(a(27308)),y=function(t){(0,v.default)(_default,t);var r=(0,h.default)(_default);function _default(){return(0,l.default)(this,_default),r.apply(this,arguments)}return(0,c.default)(_default,[{key:"getModalOptions",value:function getModalOptions(){return{id:"elementor-finder__modal",draggable:!0,effects:{show:"show",hide:"hide"},position:{enable:!1}}}},{key:"getLogoOptions",value:function getLogoOptions(){return{title:o("Finder","elementor")}}},{key:"initialize",value:function initialize(){for(var t,r=arguments.length,a=new Array(r),o=0;o<r;o++)a[o]=arguments[o];(t=(0,d.default)((0,p.default)(_default.prototype),"initialize",this)).call.apply(t,[this].concat(a)),this.showLogo(),this.showContentView()}},{key:"showContentView",value:function showContentView(){this.modalContent.show(new g.default)}},{key:"showModal",value:function showModal(){for(var t,r=arguments.length,a=new Array(r),o=0;o<r;o++)a[o]=arguments[o];(t=(0,d.default)((0,p.default)(_default.prototype),"showModal",this)).call.apply(t,[this].concat(a)),this.modalContent.currentView.ui.searchInput.focus()}}]),_default}(elementorModules.common.views.modal.Layout);r.default=y},7421:(t,r,a)=>{a(99572),a(37627),t.exports=a(47208).Array.from},70157:(t,r,a)=>{a(42580),t.exports=a(47208).Array.isArray},89710:(t,r,a)=>{var o=a(47208),i=o.JSON||(o.JSON={stringify:JSON.stringify});t.exports=function stringify(t){return i.stringify.apply(i,arguments)}},373:(t,r,a)=>{a(70285),a(99572),a(74114),a(17710),a(43849),a(61340),a(28933),t.exports=a(47208).Map},66458:(t,r,a)=>{a(99954),t.exports=a(47208).Object.assign},14710:(t,r,a)=>{a(30785);var o=a(47208).Object;t.exports=function create(t,r){return o.create(t,r)}},23022:(t,r,a)=>{a(23078);var o=a(47208).Object;t.exports=function defineProperties(t,r){return o.defineProperties(t,r)}},43153:(t,r,a)=>{a(40168);var o=a(47208).Object;t.exports=function defineProperty(t,r,a){return o.defineProperty(t,r,a)}},8531:(t,r,a)=>{a(95260),t.exports=a(47208).Object.entries},32622:(t,r,a)=>{a(18576);var o=a(47208).Object;t.exports=function getOwnPropertyDescriptor(t,r){return o.getOwnPropertyDescriptor(t,r)}},27410:(t,r,a)=>{a(67685),t.exports=a(47208).Object.getOwnPropertyDescriptors},19035:(t,r,a)=>{a(54370),t.exports=a(47208).Object.getOwnPropertySymbols},58535:(t,r,a)=>{a(4840),t.exports=a(47208).Object.getPrototypeOf},97220:(t,r,a)=>{a(5453),t.exports=a(47208).Object.keys},65135:(t,r,a)=>{a(13890),t.exports=a(47208).Object.setPrototypeOf},69591:(t,r,a)=>{a(57188),t.exports=a(47208).Object.values},76483:(t,r,a)=>{a(70285),a(99572),a(74114),a(86082),a(81522),a(25757),t.exports=a(47208).Promise},43094:(t,r,a)=>{a(11320),t.exports=a(47208).Reflect.construct},17641:(t,r,a)=>{a(36600),t.exports=a(47208).Reflect.get},21114:(t,r,a)=>{a(78760),t.exports=a(7273).f("hasInstance")},19103:(t,r,a)=>{a(54370),a(70285),a(87573),a(97224),t.exports=a(47208).Symbol},39871:(t,r,a)=>{a(99572),a(74114),t.exports=a(7273).f("iterator")},89999:(t,r,a)=>{a(70285),a(74114),a(23337),a(10143),a(92797),t.exports=a(47208).WeakMap},26610:t=>{t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},29697:t=>{t.exports=function(){}},54677:t=>{t.exports=function(t,r,a,o){if(!(t instanceof r)||void 0!==o&&o in t)throw TypeError(a+": incorrect invocation!");return t}},30498:(t,r,a)=>{var o=a(39632);t.exports=function(t){if(!o(t))throw TypeError(t+" is not an object!");return t}},42411:(t,r,a)=>{var o=a(25985);t.exports=function(t,r){var a=[];return o(t,!1,a.push,a,r),a}},69191:(t,r,a)=>{var o=a(1504),i=a(37154),u=a(46723);t.exports=function(t){return function(r,a,l){var c,d=o(r),p=i(d.length),v=u(l,p);if(t&&a!=a){for(;p>v;)if((c=d[v++])!=c)return!0}else for(;p>v;v++)if((t||v in d)&&d[v]===a)return t||v||0;return!t&&-1}}},97647:(t,r,a)=>{var o=a(61725),i=a(13115),u=a(60061),l=a(37154),c=a(41904);t.exports=function(t,r){var a=1==t,d=2==t,p=3==t,v=4==t,h=6==t,g=5==t||h,y=r||c;return function(r,c,m){for(var k,x,b=u(r),C=i(b),w=o(c,m,3),S=l(C.length),E=0,T=a?y(r,S):d?y(r,0):void 0;S>E;E++)if((g||E in C)&&(x=w(k=C[E],E,b),t))if(a)T[E]=x;else if(x)switch(t){case 3:return!0;case 5:return k;case 6:return E;case 2:T.push(k)}else if(v)return!1;return h?-1:p||v?v:T}}},88320:(t,r,a)=>{var o=a(39632),i=a(7359),u=a(24300)("species");t.exports=function(t){var r;return i(t)&&("function"!=typeof(r=t.constructor)||r!==Array&&!i(r.prototype)||(r=void 0),o(r)&&null===(r=r[u])&&(r=void 0)),void 0===r?Array:r}},41904:(t,r,a)=>{var o=a(88320);t.exports=function(t,r){return new(o(t))(r)}},45515:(t,r,a)=>{"use strict";var o=a(26610),i=a(39632),u=a(19897),l=[].slice,c={},construct=function(t,r,a){if(!(r in c)){for(var o=[],i=0;i<r;i++)o[i]="a["+i+"]";c[r]=Function("F,a","return new F("+o.join(",")+")")}return c[r](t,a)};t.exports=Function.bind||function bind(t){var r=o(this),a=l.call(arguments,1),bound=function(){var o=a.concat(l.call(arguments));return this instanceof bound?construct(r,o.length,o):u(r,o,t)};return i(r.prototype)&&(bound.prototype=r.prototype),bound}},8312:(t,r,a)=>{var o=a(41352),i=a(24300)("toStringTag"),u="Arguments"==o(function(){return arguments}());t.exports=function(t){var r,a,l;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(a=function(t,r){try{return t[r]}catch(t){}}(r=Object(t),i))?a:u?o(r):"Object"==(l=o(r))&&"function"==typeof r.callee?"Arguments":l}},41352:t=>{var r={}.toString;t.exports=function(t){return r.call(t).slice(8,-1)}},29071:(t,r,a)=>{"use strict";var o=a(60510).f,i=a(82488),u=a(13199),l=a(61725),c=a(54677),d=a(25985),p=a(6125),v=a(9329),h=a(5698),g=a(75179),y=a(6758).fastKey,m=a(41081),k=g?"_s":"size",getEntry=function(t,r){var a,o=y(r);if("F"!==o)return t._i[o];for(a=t._f;a;a=a.n)if(a.k==r)return a};t.exports={getConstructor:function(t,r,a,p){var v=t((function(t,o){c(t,v,r,"_i"),t._t=r,t._i=i(null),t._f=void 0,t._l=void 0,t[k]=0,null!=o&&d(o,a,t[p],t)}));return u(v.prototype,{clear:function clear(){for(var t=m(this,r),a=t._i,o=t._f;o;o=o.n)o.r=!0,o.p&&(o.p=o.p.n=void 0),delete a[o.i];t._f=t._l=void 0,t[k]=0},delete:function(t){var a=m(this,r),o=getEntry(a,t);if(o){var i=o.n,u=o.p;delete a._i[o.i],o.r=!0,u&&(u.n=i),i&&(i.p=u),a._f==o&&(a._f=i),a._l==o&&(a._l=u),a[k]--}return!!o},forEach:function forEach(t){m(this,r);for(var a,o=l(t,arguments.length>1?arguments[1]:void 0,3);a=a?a.n:this._f;)for(o(a.v,a.k,this);a&&a.r;)a=a.p},has:function has(t){return!!getEntry(m(this,r),t)}}),g&&o(v.prototype,"size",{get:function(){return m(this,r)[k]}}),v},def:function(t,r,a){var o,i,u=getEntry(t,r);return u?u.v=a:(t._l=u={i:i=y(r,!0),k:r,v:a,p:o=t._l,n:void 0,r:!1},t._f||(t._f=u),o&&(o.n=u),t[k]++,"F"!==i&&(t._i[i]=u)),t},getEntry,setStrong:function(t,r,a){p(t,r,(function(t,a){this._t=m(t,r),this._k=a,this._l=void 0}),(function(){for(var t=this,r=t._k,a=t._l;a&&a.r;)a=a.p;return t._t&&(t._l=a=a?a.n:t._t._f)?v(0,"keys"==r?a.k:"values"==r?a.v:[a.k,a.v]):(t._t=void 0,v(1))}),a?"entries":"values",!a,!0),h(r)}}},89518:(t,r,a)=>{var o=a(8312),i=a(42411);t.exports=function(t){return function toJSON(){if(o(this)!=t)throw TypeError(t+"#toJSON isn't generic");return i(this)}}},92600:(t,r,a)=>{"use strict";var o=a(13199),i=a(6758).getWeak,u=a(30498),l=a(39632),c=a(54677),d=a(25985),p=a(97647),v=a(20657),h=a(41081),g=p(5),y=p(6),m=0,uncaughtFrozenStore=function(t){return t._l||(t._l=new UncaughtFrozenStore)},UncaughtFrozenStore=function(){this.a=[]},findUncaughtFrozen=function(t,r){return g(t.a,(function(t){return t[0]===r}))};UncaughtFrozenStore.prototype={get:function(t){var r=findUncaughtFrozen(this,t);if(r)return r[1]},has:function(t){return!!findUncaughtFrozen(this,t)},set:function(t,r){var a=findUncaughtFrozen(this,t);a?a[1]=r:this.a.push([t,r])},delete:function(t){var r=y(this.a,(function(r){return r[0]===t}));return~r&&this.a.splice(r,1),!!~r}},t.exports={getConstructor:function(t,r,a,u){var p=t((function(t,o){c(t,p,r,"_i"),t._t=r,t._i=m++,t._l=void 0,null!=o&&d(o,a,t[u],t)}));return o(p.prototype,{delete:function(t){if(!l(t))return!1;var a=i(t);return!0===a?uncaughtFrozenStore(h(this,r)).delete(t):a&&v(a,this._i)&&delete a[this._i]},has:function has(t){if(!l(t))return!1;var a=i(t);return!0===a?uncaughtFrozenStore(h(this,r)).has(t):a&&v(a,this._i)}}),p},def:function(t,r,a){var o=i(u(r),!0);return!0===o?uncaughtFrozenStore(t).set(r,a):o[t._i]=a,t},ufstore:uncaughtFrozenStore}},70770:(t,r,a)=>{"use strict";var o=a(43280),i=a(98310),u=a(6758),l=a(90472),c=a(62292),d=a(13199),p=a(25985),v=a(54677),h=a(39632),g=a(2413),y=a(60510).f,m=a(97647)(0),k=a(75179);t.exports=function(t,r,a,x,b,C){var w=o[t],S=w,E=b?"set":"add",T=S&&S.prototype,A={};return k&&"function"==typeof S&&(C||T.forEach&&!l((function(){(new S).entries().next()})))?(S=r((function(r,a){v(r,S,t,"_c"),r._c=new w,null!=a&&p(a,b,r[E],r)})),m("add,clear,delete,forEach,get,has,set,keys,values,entries,toJSON".split(","),(function(t){var r="add"==t||"set"==t;!(t in T)||C&&"clear"==t||c(S.prototype,t,(function(a,o){if(v(this,S,t),!r&&C&&!h(a))return"get"==t&&void 0;var i=this._c[t](0===a?0:a,o);return r?this:i}))})),C||y(S.prototype,"size",{get:function(){return this._c.size}})):(S=x.getConstructor(r,t,b,E),d(S.prototype,a),u.NEED=!0),g(S,t),A[t]=S,i(i.G+i.W+i.F,A),C||x.setStrong(S,t,b),S}},47208:t=>{var r=t.exports={version:"2.6.12"};"number"==typeof __e&&(__e=r)},87352:(t,r,a)=>{"use strict";var o=a(60510),i=a(48439);t.exports=function(t,r,a){r in t?o.f(t,r,i(0,a)):t[r]=a}},61725:(t,r,a)=>{var o=a(26610);t.exports=function(t,r,a){if(o(t),void 0===r)return t;switch(a){case 1:return function(a){return t.call(r,a)};case 2:return function(a,o){return t.call(r,a,o)};case 3:return function(a,o,i){return t.call(r,a,o,i)}}return function(){return t.apply(r,arguments)}}},18239:t=>{t.exports=function(t){if(null==t)throw TypeError("Can't call method on  "+t);return t}},75179:(t,r,a)=>{t.exports=!a(90472)((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},48765:(t,r,a)=>{var o=a(39632),i=a(43280).document,u=o(i)&&o(i.createElement);t.exports=function(t){return u?i.createElement(t):{}}},31986:t=>{t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},42266:(t,r,a)=>{var o=a(86425),i=a(97739),u=a(67410);t.exports=function(t){var r=o(t),a=i.f;if(a)for(var l,c=a(t),d=u.f,p=0;c.length>p;)d.call(t,l=c[p++])&&r.push(l);return r}},98310:(t,r,a)=>{var o=a(43280),i=a(47208),u=a(61725),l=a(62292),c=a(20657),$export=function(t,r,a){var d,p,v,h=t&$export.F,g=t&$export.G,y=t&$export.S,m=t&$export.P,k=t&$export.B,x=t&$export.W,b=g?i:i[r]||(i[r]={}),C=b.prototype,w=g?o:y?o[r]:(o[r]||{}).prototype;for(d in g&&(a=r),a)(p=!h&&w&&void 0!==w[d])&&c(b,d)||(v=p?w[d]:a[d],b[d]=g&&"function"!=typeof w[d]?a[d]:k&&p?u(v,o):x&&w[d]==v?function(t){var F=function(r,a,o){if(this instanceof t){switch(arguments.length){case 0:return new t;case 1:return new t(r);case 2:return new t(r,a)}return new t(r,a,o)}return t.apply(this,arguments)};return F.prototype=t.prototype,F}(v):m&&"function"==typeof v?u(Function.call,v):v,m&&((b.virtual||(b.virtual={}))[d]=v,t&$export.R&&C&&!C[d]&&l(C,d,v)))};$export.F=1,$export.G=2,$export.S=4,$export.P=8,$export.B=16,$export.W=32,$export.U=64,$export.R=128,t.exports=$export},90472:t=>{t.exports=function(t){try{return!!t()}catch(t){return!0}}},25985:(t,r,a)=>{var o=a(61725),i=a(93086),u=a(11827),l=a(30498),c=a(37154),d=a(26116),p={},v={},h=t.exports=function(t,r,a,h,g){var y,m,k,x,b=g?function(){return t}:d(t),C=o(a,h,r?2:1),w=0;if("function"!=typeof b)throw TypeError(t+" is not iterable!");if(u(b)){for(y=c(t.length);y>w;w++)if((x=r?C(l(m=t[w])[0],m[1]):C(t[w]))===p||x===v)return x}else for(k=b.call(t);!(m=k.next()).done;)if((x=i(k,C,m.value,r))===p||x===v)return x};h.BREAK=p,h.RETURN=v},43280:t=>{var r=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=r)},20657:t=>{var r={}.hasOwnProperty;t.exports=function(t,a){return r.call(t,a)}},62292:(t,r,a)=>{var o=a(60510),i=a(48439);t.exports=a(75179)?function(t,r,a){return o.f(t,r,i(1,a))}:function(t,r,a){return t[r]=a,t}},92477:(t,r,a)=>{var o=a(43280).document;t.exports=o&&o.documentElement},64457:(t,r,a)=>{t.exports=!a(75179)&&!a(90472)((function(){return 7!=Object.defineProperty(a(48765)("div"),"a",{get:function(){return 7}}).a}))},19897:t=>{t.exports=function(t,r,a){var o=void 0===a;switch(r.length){case 0:return o?t():t.call(a);case 1:return o?t(r[0]):t.call(a,r[0]);case 2:return o?t(r[0],r[1]):t.call(a,r[0],r[1]);case 3:return o?t(r[0],r[1],r[2]):t.call(a,r[0],r[1],r[2]);case 4:return o?t(r[0],r[1],r[2],r[3]):t.call(a,r[0],r[1],r[2],r[3])}return t.apply(a,r)}},13115:(t,r,a)=>{var o=a(41352);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==o(t)?t.split(""):Object(t)}},11827:(t,r,a)=>{var o=a(79105),i=a(24300)("iterator"),u=Array.prototype;t.exports=function(t){return void 0!==t&&(o.Array===t||u[i]===t)}},7359:(t,r,a)=>{var o=a(41352);t.exports=Array.isArray||function isArray(t){return"Array"==o(t)}},39632:t=>{t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},93086:(t,r,a)=>{var o=a(30498);t.exports=function(t,r,a,i){try{return i?r(o(a)[0],a[1]):r(a)}catch(r){var u=t.return;throw void 0!==u&&o(u.call(t)),r}}},19802:(t,r,a)=>{"use strict";var o=a(82488),i=a(48439),u=a(2413),l={};a(62292)(l,a(24300)("iterator"),(function(){return this})),t.exports=function(t,r,a){t.prototype=o(l,{next:i(1,a)}),u(t,r+" Iterator")}},6125:(t,r,a)=>{"use strict";var o=a(36794),i=a(98310),u=a(19312),l=a(62292),c=a(79105),d=a(19802),p=a(2413),v=a(999),h=a(24300)("iterator"),g=!([].keys&&"next"in[].keys()),y="keys",m="values",returnThis=function(){return this};t.exports=function(t,r,a,k,x,b,C){d(a,r,k);var w,S,E,getMethod=function(t){if(!g&&t in M)return M[t];switch(t){case y:return function keys(){return new a(this,t)};case m:return function values(){return new a(this,t)}}return function entries(){return new a(this,t)}},T=r+" Iterator",A=x==m,I=!1,M=t.prototype,O=M[h]||M["@@iterator"]||x&&M[x],P=O||getMethod(x),j=x?A?getMethod("entries"):P:void 0,D="Array"==r&&M.entries||O;if(D&&(E=v(D.call(new t)))!==Object.prototype&&E.next&&(p(E,T,!0),o||"function"==typeof E[h]||l(E,h,returnThis)),A&&O&&O.name!==m&&(I=!0,P=function values(){return O.call(this)}),o&&!C||!g&&!I&&M[h]||l(M,h,P),c[r]=P,c[T]=returnThis,x)if(w={values:A?P:getMethod(m),keys:b?P:getMethod(y),entries:j},C)for(S in w)S in M||u(M,S,w[S]);else i(i.P+i.F*(g||I),r,w);return w}},26797:(t,r,a)=>{var o=a(24300)("iterator"),i=!1;try{var u=[7][o]();u.return=function(){i=!0},Array.from(u,(function(){throw 2}))}catch(t){}t.exports=function(t,r){if(!r&&!i)return!1;var a=!1;try{var u=[7],l=u[o]();l.next=function(){return{done:a=!0}},u[o]=function(){return l},t(u)}catch(t){}return a}},9329:t=>{t.exports=function(t,r){return{value:r,done:!!t}}},79105:t=>{t.exports={}},36794:t=>{t.exports=!0},6758:(t,r,a)=>{var o=a(54251)("meta"),i=a(39632),u=a(20657),l=a(60510).f,c=0,d=Object.isExtensible||function(){return!0},p=!a(90472)((function(){return d(Object.preventExtensions({}))})),setMeta=function(t){l(t,o,{value:{i:"O"+ ++c,w:{}}})},v=t.exports={KEY:o,NEED:!1,fastKey:function(t,r){if(!i(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!u(t,o)){if(!d(t))return"F";if(!r)return"E";setMeta(t)}return t[o].i},getWeak:function(t,r){if(!u(t,o)){if(!d(t))return!0;if(!r)return!1;setMeta(t)}return t[o].w},onFreeze:function(t){return p&&v.NEED&&d(t)&&!u(t,o)&&setMeta(t),t}}},4326:(t,r,a)=>{var o=a(43280),i=a(6022).set,u=o.MutationObserver||o.WebKitMutationObserver,l=o.process,c=o.Promise,d="process"==a(41352)(l);t.exports=function(){var t,r,a,flush=function(){var o,i;for(d&&(o=l.domain)&&o.exit();t;){i=t.fn,t=t.next;try{i()}catch(o){throw t?a():r=void 0,o}}r=void 0,o&&o.enter()};if(d)a=function(){l.nextTick(flush)};else if(!u||o.navigator&&o.navigator.standalone)if(c&&c.resolve){var p=c.resolve(void 0);a=function(){p.then(flush)}}else a=function(){i.call(o,flush)};else{var v=!0,h=document.createTextNode("");new u(flush).observe(h,{characterData:!0}),a=function(){h.data=v=!v}}return function(o){var i={fn:o,next:void 0};r&&(r.next=i),t||(t=i,a()),r=i}}},88579:(t,r,a)=>{"use strict";var o=a(26610);function PromiseCapability(t){var r,a;this.promise=new t((function(t,o){if(void 0!==r||void 0!==a)throw TypeError("Bad Promise constructor");r=t,a=o})),this.resolve=o(r),this.reject=o(a)}t.exports.f=function(t){return new PromiseCapability(t)}},77995:(t,r,a)=>{"use strict";var o=a(75179),i=a(86425),u=a(97739),l=a(67410),c=a(60061),d=a(13115),p=Object.assign;t.exports=!p||a(90472)((function(){var t={},r={},a=Symbol(),o="abcdefghijklmnopqrst";return t[a]=7,o.split("").forEach((function(t){r[t]=t})),7!=p({},t)[a]||Object.keys(p({},r)).join("")!=o}))?function assign(t,r){for(var a=c(t),p=arguments.length,v=1,h=u.f,g=l.f;p>v;)for(var y,m=d(arguments[v++]),k=h?i(m).concat(h(m)):i(m),x=k.length,b=0;x>b;)y=k[b++],o&&!g.call(m,y)||(a[y]=m[y]);return a}:p},82488:(t,r,a)=>{var o=a(30498),i=a(36607),u=a(31986),l=a(18478)("IE_PROTO"),Empty=function(){},createDict=function(){var t,r=a(48765)("iframe"),o=u.length;for(r.style.display="none",a(92477).appendChild(r),r.src="javascript:",(t=r.contentWindow.document).open(),t.write("<script>document.F=Object<\/script>"),t.close(),createDict=t.F;o--;)delete createDict.prototype[u[o]];return createDict()};t.exports=Object.create||function create(t,r){var a;return null!==t?(Empty.prototype=o(t),a=new Empty,Empty.prototype=null,a[l]=t):a=createDict(),void 0===r?a:i(a,r)}},60510:(t,r,a)=>{var o=a(30498),i=a(64457),u=a(12737),l=Object.defineProperty;r.f=a(75179)?Object.defineProperty:function defineProperty(t,r,a){if(o(t),r=u(r,!0),o(a),i)try{return l(t,r,a)}catch(t){}if("get"in a||"set"in a)throw TypeError("Accessors not supported!");return"value"in a&&(t[r]=a.value),t}},36607:(t,r,a)=>{var o=a(60510),i=a(30498),u=a(86425);t.exports=a(75179)?Object.defineProperties:function defineProperties(t,r){i(t);for(var a,l=u(r),c=l.length,d=0;c>d;)o.f(t,a=l[d++],r[a]);return t}},83264:(t,r,a)=>{var o=a(67410),i=a(48439),u=a(1504),l=a(12737),c=a(20657),d=a(64457),p=Object.getOwnPropertyDescriptor;r.f=a(75179)?p:function getOwnPropertyDescriptor(t,r){if(t=u(t),r=l(r,!0),d)try{return p(t,r)}catch(t){}if(c(t,r))return i(!o.f.call(t,r),t[r])}},26084:(t,r,a)=>{var o=a(1504),i=a(8772).f,u={}.toString,l="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];t.exports.f=function getOwnPropertyNames(t){return l&&"[object Window]"==u.call(t)?function(t){try{return i(t)}catch(t){return l.slice()}}(t):i(o(t))}},8772:(t,r,a)=>{var o=a(65326),i=a(31986).concat("length","prototype");r.f=Object.getOwnPropertyNames||function getOwnPropertyNames(t){return o(t,i)}},97739:(t,r)=>{r.f=Object.getOwnPropertySymbols},999:(t,r,a)=>{var o=a(20657),i=a(60061),u=a(18478)("IE_PROTO"),l=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=i(t),o(t,u)?t[u]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?l:null}},65326:(t,r,a)=>{var o=a(20657),i=a(1504),u=a(69191)(!1),l=a(18478)("IE_PROTO");t.exports=function(t,r){var a,c=i(t),d=0,p=[];for(a in c)a!=l&&o(c,a)&&p.push(a);for(;r.length>d;)o(c,a=r[d++])&&(~u(p,a)||p.push(a));return p}},86425:(t,r,a)=>{var o=a(65326),i=a(31986);t.exports=Object.keys||function keys(t){return o(t,i)}},67410:(t,r)=>{r.f={}.propertyIsEnumerable},57972:(t,r,a)=>{var o=a(98310),i=a(47208),u=a(90472);t.exports=function(t,r){var a=(i.Object||{})[t]||Object[t],l={};l[t]=r(a),o(o.S+o.F*u((function(){a(1)})),"Object",l)}},9480:(t,r,a)=>{var o=a(75179),i=a(86425),u=a(1504),l=a(67410).f;t.exports=function(t){return function(r){for(var a,c=u(r),d=i(c),p=d.length,v=0,h=[];p>v;)a=d[v++],o&&!l.call(c,a)||h.push(t?[a,c[a]]:c[a]);return h}}},64344:(t,r,a)=>{var o=a(8772),i=a(97739),u=a(30498),l=a(43280).Reflect;t.exports=l&&l.ownKeys||function ownKeys(t){var r=o.f(u(t)),a=i.f;return a?r.concat(a(t)):r}},52745:t=>{t.exports=function(t){try{return{e:!1,v:t()}}catch(t){return{e:!0,v:t}}}},88747:(t,r,a)=>{var o=a(30498),i=a(39632),u=a(88579);t.exports=function(t,r){if(o(t),i(r)&&r.constructor===t)return r;var a=u.f(t);return(0,a.resolve)(r),a.promise}},48439:t=>{t.exports=function(t,r){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:r}}},13199:(t,r,a)=>{var o=a(62292);t.exports=function(t,r,a){for(var i in r)a&&t[i]?t[i]=r[i]:o(t,i,r[i]);return t}},19312:(t,r,a)=>{t.exports=a(62292)},14689:(t,r,a)=>{"use strict";var o=a(98310),i=a(26610),u=a(61725),l=a(25985);t.exports=function(t){o(o.S,t,{from:function from(t){var r,a,o,c,d=arguments[1];return i(this),(r=void 0!==d)&&i(d),null==t?new this:(a=[],r?(o=0,c=u(d,arguments[2],2),l(t,!1,(function(t){a.push(c(t,o++))}))):l(t,!1,a.push,a),new this(a))}})}},7883:(t,r,a)=>{"use strict";var o=a(98310);t.exports=function(t){o(o.S,t,{of:function of(){for(var t=arguments.length,r=new Array(t);t--;)r[t]=arguments[t];return new this(r)}})}},25574:(t,r,a)=>{var o=a(39632),i=a(30498),check=function(t,r){if(i(t),!o(r)&&null!==r)throw TypeError(r+": can't set as prototype!")};t.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(t,r,o){try{(o=a(61725)(Function.call,a(83264).f(Object.prototype,"__proto__").set,2))(t,[]),r=!(t instanceof Array)}catch(t){r=!0}return function setPrototypeOf(t,a){return check(t,a),r?t.__proto__=a:o(t,a),t}}({},!1):void 0),check}},5698:(t,r,a)=>{"use strict";var o=a(43280),i=a(47208),u=a(60510),l=a(75179),c=a(24300)("species");t.exports=function(t){var r="function"==typeof i[t]?i[t]:o[t];l&&r&&!r[c]&&u.f(r,c,{configurable:!0,get:function(){return this}})}},2413:(t,r,a)=>{var o=a(60510).f,i=a(20657),u=a(24300)("toStringTag");t.exports=function(t,r,a){t&&!i(t=a?t:t.prototype,u)&&o(t,u,{configurable:!0,value:r})}},18478:(t,r,a)=>{var o=a(29990)("keys"),i=a(54251);t.exports=function(t){return o[t]||(o[t]=i(t))}},29990:(t,r,a)=>{var o=a(47208),i=a(43280),u="__core-js_shared__",l=i[u]||(i[u]={});(t.exports=function(t,r){return l[t]||(l[t]=void 0!==r?r:{})})("versions",[]).push({version:o.version,mode:a(36794)?"pure":"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})},73732:(t,r,a)=>{var o=a(30498),i=a(26610),u=a(24300)("species");t.exports=function(t,r){var a,l=o(t).constructor;return void 0===l||null==(a=o(l)[u])?r:i(a)}},78502:(t,r,a)=>{var o=a(58290),i=a(18239);t.exports=function(t){return function(r,a){var u,l,c=String(i(r)),d=o(a),p=c.length;return d<0||d>=p?t?"":void 0:(u=c.charCodeAt(d))<55296||u>56319||d+1===p||(l=c.charCodeAt(d+1))<56320||l>57343?t?c.charAt(d):u:t?c.slice(d,d+2):l-56320+(u-55296<<10)+65536}}},6022:(t,r,a)=>{var o,i,u,l=a(61725),c=a(19897),d=a(92477),p=a(48765),v=a(43280),h=v.process,g=v.setImmediate,y=v.clearImmediate,m=v.MessageChannel,k=v.Dispatch,x=0,b={},C="onreadystatechange",run=function(){var t=+this;if(b.hasOwnProperty(t)){var r=b[t];delete b[t],r()}},listener=function(t){run.call(t.data)};g&&y||(g=function setImmediate(t){for(var r=[],a=1;arguments.length>a;)r.push(arguments[a++]);return b[++x]=function(){c("function"==typeof t?t:Function(t),r)},o(x),x},y=function clearImmediate(t){delete b[t]},"process"==a(41352)(h)?o=function(t){h.nextTick(l(run,t,1))}:k&&k.now?o=function(t){k.now(l(run,t,1))}:m?(u=(i=new m).port2,i.port1.onmessage=listener,o=l(u.postMessage,u,1)):v.addEventListener&&"function"==typeof postMessage&&!v.importScripts?(o=function(t){v.postMessage(t+"","*")},v.addEventListener("message",listener,!1)):o=C in p("script")?function(t){d.appendChild(p("script")).onreadystatechange=function(){d.removeChild(this),run.call(t)}}:function(t){setTimeout(l(run,t,1),0)}),t.exports={set:g,clear:y}},46723:(t,r,a)=>{var o=a(58290),i=Math.max,u=Math.min;t.exports=function(t,r){return(t=o(t))<0?i(t+r,0):u(t,r)}},58290:t=>{var r=Math.ceil,a=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?a:r)(t)}},1504:(t,r,a)=>{var o=a(13115),i=a(18239);t.exports=function(t){return o(i(t))}},37154:(t,r,a)=>{var o=a(58290),i=Math.min;t.exports=function(t){return t>0?i(o(t),9007199254740991):0}},60061:(t,r,a)=>{var o=a(18239);t.exports=function(t){return Object(o(t))}},12737:(t,r,a)=>{var o=a(39632);t.exports=function(t,r){if(!o(t))return t;var a,i;if(r&&"function"==typeof(a=t.toString)&&!o(i=a.call(t)))return i;if("function"==typeof(a=t.valueOf)&&!o(i=a.call(t)))return i;if(!r&&"function"==typeof(a=t.toString)&&!o(i=a.call(t)))return i;throw TypeError("Can't convert object to primitive value")}},54251:t=>{var r=0,a=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++r+a).toString(36))}},35701:(t,r,a)=>{var o=a(43280).navigator;t.exports=o&&o.userAgent||""},41081:(t,r,a)=>{var o=a(39632);t.exports=function(t,r){if(!o(t)||t._t!==r)throw TypeError("Incompatible receiver, "+r+" required!");return t}},31164:(t,r,a)=>{var o=a(43280),i=a(47208),u=a(36794),l=a(7273),c=a(60510).f;t.exports=function(t){var r=i.Symbol||(i.Symbol=u?{}:o.Symbol||{});"_"==t.charAt(0)||t in r||c(r,t,{value:l.f(t)})}},7273:(t,r,a)=>{r.f=a(24300)},24300:(t,r,a)=>{var o=a(29990)("wks"),i=a(54251),u=a(43280).Symbol,l="function"==typeof u;(t.exports=function(t){return o[t]||(o[t]=l&&u[t]||(l?u:i)("Symbol."+t))}).store=o},26116:(t,r,a)=>{var o=a(8312),i=a(24300)("iterator"),u=a(79105);t.exports=a(47208).getIteratorMethod=function(t){if(null!=t)return t[i]||t["@@iterator"]||u[o(t)]}},37627:(t,r,a)=>{"use strict";var o=a(61725),i=a(98310),u=a(60061),l=a(93086),c=a(11827),d=a(37154),p=a(87352),v=a(26116);i(i.S+i.F*!a(26797)((function(t){Array.from(t)})),"Array",{from:function from(t){var r,a,i,h,g=u(t),y="function"==typeof this?this:Array,m=arguments.length,k=m>1?arguments[1]:void 0,x=void 0!==k,b=0,C=v(g);if(x&&(k=o(k,m>2?arguments[2]:void 0,2)),null==C||y==Array&&c(C))for(a=new y(r=d(g.length));r>b;b++)p(a,b,x?k(g[b],b):g[b]);else for(h=C.call(g),a=new y;!(i=h.next()).done;b++)p(a,b,x?l(h,k,[i.value,b],!0):i.value);return a.length=b,a}})},42580:(t,r,a)=>{var o=a(98310);o(o.S,"Array",{isArray:a(7359)})},84411:(t,r,a)=>{"use strict";var o=a(29697),i=a(9329),u=a(79105),l=a(1504);t.exports=a(6125)(Array,"Array",(function(t,r){this._t=l(t),this._i=0,this._k=r}),(function(){var t=this._t,r=this._k,a=this._i++;return!t||a>=t.length?(this._t=void 0,i(1)):i(0,"keys"==r?a:"values"==r?t[a]:[a,t[a]])}),"values"),u.Arguments=u.Array,o("keys"),o("values"),o("entries")},78760:(t,r,a)=>{"use strict";var o=a(39632),i=a(999),u=a(24300)("hasInstance"),l=Function.prototype;u in l||a(60510).f(l,u,{value:function(t){if("function"!=typeof this||!o(t))return!1;if(!o(this.prototype))return t instanceof this;for(;t=i(t);)if(this.prototype===t)return!0;return!1}})},17710:(t,r,a)=>{"use strict";var o=a(29071),i=a(41081),u="Map";t.exports=a(70770)(u,(function(t){return function Map(){return t(this,arguments.length>0?arguments[0]:void 0)}}),{get:function get(t){var r=o.getEntry(i(this,u),t);return r&&r.v},set:function set(t,r){return o.def(i(this,u),0===t?0:t,r)}},o,!0)},99954:(t,r,a)=>{var o=a(98310);o(o.S+o.F,"Object",{assign:a(77995)})},30785:(t,r,a)=>{var o=a(98310);o(o.S,"Object",{create:a(82488)})},23078:(t,r,a)=>{var o=a(98310);o(o.S+o.F*!a(75179),"Object",{defineProperties:a(36607)})},40168:(t,r,a)=>{var o=a(98310);o(o.S+o.F*!a(75179),"Object",{defineProperty:a(60510).f})},18576:(t,r,a)=>{var o=a(1504),i=a(83264).f;a(57972)("getOwnPropertyDescriptor",(function(){return function getOwnPropertyDescriptor(t,r){return i(o(t),r)}}))},4840:(t,r,a)=>{var o=a(60061),i=a(999);a(57972)("getPrototypeOf",(function(){return function getPrototypeOf(t){return i(o(t))}}))},5453:(t,r,a)=>{var o=a(60061),i=a(86425);a(57972)("keys",(function(){return function keys(t){return i(o(t))}}))},13890:(t,r,a)=>{var o=a(98310);o(o.S,"Object",{setPrototypeOf:a(25574).set})},70285:()=>{},86082:(t,r,a)=>{"use strict";var o,i,u,l,c=a(36794),d=a(43280),p=a(61725),v=a(8312),h=a(98310),g=a(39632),y=a(26610),m=a(54677),k=a(25985),x=a(73732),b=a(6022).set,C=a(4326)(),w=a(88579),S=a(52745),E=a(35701),T=a(88747),A="Promise",I=d.TypeError,M=d.process,O=M&&M.versions,P=O&&O.v8||"",j=d.Promise,D="process"==v(M),empty=function(){},R=i=w.f,B=!!function(){try{var t=j.resolve(1),r=(t.constructor={})[a(24300)("species")]=function(t){t(empty,empty)};return(D||"function"==typeof PromiseRejectionEvent)&&t.then(empty)instanceof r&&0!==P.indexOf("6.6")&&-1===E.indexOf("Chrome/66")}catch(t){}}(),isThenable=function(t){var r;return!(!g(t)||"function"!=typeof(r=t.then))&&r},notify=function(t,r){if(!t._n){t._n=!0;var a=t._c;C((function(){for(var o=t._v,i=1==t._s,u=0,run=function(r){var a,u,l,c=i?r.ok:r.fail,d=r.resolve,p=r.reject,v=r.domain;try{c?(i||(2==t._h&&onHandleUnhandled(t),t._h=1),!0===c?a=o:(v&&v.enter(),a=c(o),v&&(v.exit(),l=!0)),a===r.promise?p(I("Promise-chain cycle")):(u=isThenable(a))?u.call(a,d,p):d(a)):p(o)}catch(t){v&&!l&&v.exit(),p(t)}};a.length>u;)run(a[u++]);t._c=[],t._n=!1,r&&!t._h&&onUnhandled(t)}))}},onUnhandled=function(t){b.call(d,(function(){var r,a,o,i=t._v,u=isUnhandled(t);if(u&&(r=S((function(){D?M.emit("unhandledRejection",i,t):(a=d.onunhandledrejection)?a({promise:t,reason:i}):(o=d.console)&&o.error&&o.error("Unhandled promise rejection",i)})),t._h=D||isUnhandled(t)?2:1),t._a=void 0,u&&r.e)throw r.v}))},isUnhandled=function(t){return 1!==t._h&&0===(t._a||t._c).length},onHandleUnhandled=function(t){b.call(d,(function(){var r;D?M.emit("rejectionHandled",t):(r=d.onrejectionhandled)&&r({promise:t,reason:t._v})}))},$reject=function(t){var r=this;r._d||(r._d=!0,(r=r._w||r)._v=t,r._s=2,r._a||(r._a=r._c.slice()),notify(r,!0))},$resolve=function(t){var r,a=this;if(!a._d){a._d=!0,a=a._w||a;try{if(a===t)throw I("Promise can't be resolved itself");(r=isThenable(t))?C((function(){var o={_w:a,_d:!1};try{r.call(t,p($resolve,o,1),p($reject,o,1))}catch(t){$reject.call(o,t)}})):(a._v=t,a._s=1,notify(a,!1))}catch(t){$reject.call({_w:a,_d:!1},t)}}};B||(j=function Promise(t){m(this,j,A,"_h"),y(t),o.call(this);try{t(p($resolve,this,1),p($reject,this,1))}catch(t){$reject.call(this,t)}},(o=function Promise(t){this._c=[],this._a=void 0,this._s=0,this._d=!1,this._v=void 0,this._h=0,this._n=!1}).prototype=a(13199)(j.prototype,{then:function then(t,r){var a=R(x(this,j));return a.ok="function"!=typeof t||t,a.fail="function"==typeof r&&r,a.domain=D?M.domain:void 0,this._c.push(a),this._a&&this._a.push(a),this._s&&notify(this,!1),a.promise},catch:function(t){return this.then(void 0,t)}}),u=function(){var t=new o;this.promise=t,this.resolve=p($resolve,t,1),this.reject=p($reject,t,1)},w.f=R=function(t){return t===j||t===l?new u(t):i(t)}),h(h.G+h.W+h.F*!B,{Promise:j}),a(2413)(j,A),a(5698)(A),l=a(47208).Promise,h(h.S+h.F*!B,A,{reject:function reject(t){var r=R(this);return(0,r.reject)(t),r.promise}}),h(h.S+h.F*(c||!B),A,{resolve:function resolve(t){return T(c&&this===l?j:this,t)}}),h(h.S+h.F*!(B&&a(26797)((function(t){j.all(t).catch(empty)}))),A,{all:function all(t){var r=this,a=R(r),o=a.resolve,i=a.reject,u=S((function(){var a=[],u=0,l=1;k(t,!1,(function(t){var c=u++,d=!1;a.push(void 0),l++,r.resolve(t).then((function(t){d||(d=!0,a[c]=t,--l||o(a))}),i)})),--l||o(a)}));return u.e&&i(u.v),a.promise},race:function race(t){var r=this,a=R(r),o=a.reject,i=S((function(){k(t,!1,(function(t){r.resolve(t).then(a.resolve,o)}))}));return i.e&&o(i.v),a.promise}})},11320:(t,r,a)=>{var o=a(98310),i=a(82488),u=a(26610),l=a(30498),c=a(39632),d=a(90472),p=a(45515),v=(a(43280).Reflect||{}).construct,h=d((function(){function F(){}return!(v((function(){}),[],F)instanceof F)})),g=!d((function(){v((function(){}))}));o(o.S+o.F*(h||g),"Reflect",{construct:function construct(t,r){u(t),l(r);var a=arguments.length<3?t:u(arguments[2]);if(g&&!h)return v(t,r,a);if(t==a){switch(r.length){case 0:return new t;case 1:return new t(r[0]);case 2:return new t(r[0],r[1]);case 3:return new t(r[0],r[1],r[2]);case 4:return new t(r[0],r[1],r[2],r[3])}var o=[null];return o.push.apply(o,r),new(p.apply(t,o))}var d=a.prototype,y=i(c(d)?d:Object.prototype),m=Function.apply.call(t,y,r);return c(m)?m:y}})},36600:(t,r,a)=>{var o=a(83264),i=a(999),u=a(20657),l=a(98310),c=a(39632),d=a(30498);l(l.S,"Reflect",{get:function get(t,r){var a,l,p=arguments.length<3?t:arguments[2];return d(t)===p?t[r]:(a=o.f(t,r))?u(a,"value")?a.value:void 0!==a.get?a.get.call(p):void 0:c(l=i(t))?get(l,r,p):void 0}})},99572:(t,r,a)=>{"use strict";var o=a(78502)(!0);a(6125)(String,"String",(function(t){this._t=String(t),this._i=0}),(function(){var t,r=this._t,a=this._i;return a>=r.length?{value:void 0,done:!0}:(t=o(r,a),this._i+=t.length,{value:t,done:!1})}))},54370:(t,r,a)=>{"use strict";var o=a(43280),i=a(20657),u=a(75179),l=a(98310),c=a(19312),d=a(6758).KEY,p=a(90472),v=a(29990),h=a(2413),g=a(54251),y=a(24300),m=a(7273),k=a(31164),x=a(42266),b=a(7359),C=a(30498),w=a(39632),S=a(60061),E=a(1504),T=a(12737),A=a(48439),I=a(82488),M=a(26084),O=a(83264),P=a(97739),j=a(60510),D=a(86425),R=O.f,B=j.f,N=M.f,L=o.Symbol,$=o.JSON,q=$&&$.stringify,U=y("_hidden"),H=y("toPrimitive"),G={}.propertyIsEnumerable,V=v("symbol-registry"),W=v("symbols"),K=v("op-symbols"),Q=Object.prototype,z="function"==typeof L&&!!P.f,J=o.QObject,X=!J||!J.prototype||!J.prototype.findChild,Y=u&&p((function(){return 7!=I(B({},"a",{get:function(){return B(this,"a",{value:7}).a}})).a}))?function(t,r,a){var o=R(Q,r);o&&delete Q[r],B(t,r,a),o&&t!==Q&&B(Q,r,o)}:B,wrap=function(t){var r=W[t]=I(L.prototype);return r._k=t,r},Z=z&&"symbol"==typeof L.iterator?function(t){return"symbol"==typeof t}:function(t){return t instanceof L},ee=function defineProperty(t,r,a){return t===Q&&ee(K,r,a),C(t),r=T(r,!0),C(a),i(W,r)?(a.enumerable?(i(t,U)&&t[U][r]&&(t[U][r]=!1),a=I(a,{enumerable:A(0,!1)})):(i(t,U)||B(t,U,A(1,{})),t[U][r]=!0),Y(t,r,a)):B(t,r,a)},te=function defineProperties(t,r){C(t);for(var a,o=x(r=E(r)),i=0,u=o.length;u>i;)ee(t,a=o[i++],r[a]);return t},re=function propertyIsEnumerable(t){var r=G.call(this,t=T(t,!0));return!(this===Q&&i(W,t)&&!i(K,t))&&(!(r||!i(this,t)||!i(W,t)||i(this,U)&&this[U][t])||r)},ne=function getOwnPropertyDescriptor(t,r){if(t=E(t),r=T(r,!0),t!==Q||!i(W,r)||i(K,r)){var a=R(t,r);return!a||!i(W,r)||i(t,U)&&t[U][r]||(a.enumerable=!0),a}},ae=function getOwnPropertyNames(t){for(var r,a=N(E(t)),o=[],u=0;a.length>u;)i(W,r=a[u++])||r==U||r==d||o.push(r);return o},oe=function getOwnPropertySymbols(t){for(var r,a=t===Q,o=N(a?K:E(t)),u=[],l=0;o.length>l;)!i(W,r=o[l++])||a&&!i(Q,r)||u.push(W[r]);return u};z||(c((L=function Symbol(){if(this instanceof L)throw TypeError("Symbol is not a constructor!");var t=g(arguments.length>0?arguments[0]:void 0),$set=function(r){this===Q&&$set.call(K,r),i(this,U)&&i(this[U],t)&&(this[U][t]=!1),Y(this,t,A(1,r))};return u&&X&&Y(Q,t,{configurable:!0,set:$set}),wrap(t)}).prototype,"toString",(function toString(){return this._k})),O.f=ne,j.f=ee,a(8772).f=M.f=ae,a(67410).f=re,P.f=oe,u&&!a(36794)&&c(Q,"propertyIsEnumerable",re,!0),m.f=function(t){return wrap(y(t))}),l(l.G+l.W+l.F*!z,{Symbol:L});for(var ie="hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),ue=0;ie.length>ue;)y(ie[ue++]);for(var se=D(y.store),le=0;se.length>le;)k(se[le++]);l(l.S+l.F*!z,"Symbol",{for:function(t){return i(V,t+="")?V[t]:V[t]=L(t)},keyFor:function keyFor(t){if(!Z(t))throw TypeError(t+" is not a symbol!");for(var r in V)if(V[r]===t)return r},useSetter:function(){X=!0},useSimple:function(){X=!1}}),l(l.S+l.F*!z,"Object",{create:function create(t,r){return void 0===r?I(t):te(I(t),r)},defineProperty:ee,defineProperties:te,getOwnPropertyDescriptor:ne,getOwnPropertyNames:ae,getOwnPropertySymbols:oe});var ce=p((function(){P.f(1)}));l(l.S+l.F*ce,"Object",{getOwnPropertySymbols:function getOwnPropertySymbols(t){return P.f(S(t))}}),$&&l(l.S+l.F*(!z||p((function(){var t=L();return"[null]"!=q([t])||"{}"!=q({a:t})||"{}"!=q(Object(t))}))),"JSON",{stringify:function stringify(t){for(var r,a,o=[t],i=1;arguments.length>i;)o.push(arguments[i++]);if(a=r=o[1],(w(r)||void 0!==t)&&!Z(t))return b(r)||(r=function(t,r){if("function"==typeof a&&(r=a.call(this,t,r)),!Z(r))return r}),o[1]=r,q.apply($,o)}}),L.prototype[H]||a(62292)(L.prototype,H,L.prototype.valueOf),h(L,"Symbol"),h(Math,"Math",!0),h(o.JSON,"JSON",!0)},23337:(t,r,a)=>{"use strict";var o,i=a(43280),u=a(97647)(0),l=a(19312),c=a(6758),d=a(77995),p=a(92600),v=a(39632),h=a(41081),g=a(41081),y=!i.ActiveXObject&&"ActiveXObject"in i,m="WeakMap",k=c.getWeak,x=Object.isExtensible,b=p.ufstore,wrapper=function(t){return function WeakMap(){return t(this,arguments.length>0?arguments[0]:void 0)}},C={get:function get(t){if(v(t)){var r=k(t);return!0===r?b(h(this,m)).get(t):r?r[this._i]:void 0}},set:function set(t,r){return p.def(h(this,m),t,r)}},w=t.exports=a(70770)(m,wrapper,C,p,!0,!0);g&&y&&(d((o=p.getConstructor(wrapper,m)).prototype,C),c.NEED=!0,u(["delete","has","get","set"],(function(t){var r=w.prototype,a=r[t];l(r,t,(function(r,i){if(v(r)&&!x(r)){this._f||(this._f=new o);var u=this._f[t](r,i);return"set"==t?this:u}return a.call(this,r,i)}))})))},28933:(t,r,a)=>{a(14689)("Map")},61340:(t,r,a)=>{a(7883)("Map")},43849:(t,r,a)=>{var o=a(98310);o(o.P+o.R,"Map",{toJSON:a(89518)("Map")})},95260:(t,r,a)=>{var o=a(98310),i=a(9480)(!0);o(o.S,"Object",{entries:function entries(t){return i(t)}})},67685:(t,r,a)=>{var o=a(98310),i=a(64344),u=a(1504),l=a(83264),c=a(87352);o(o.S,"Object",{getOwnPropertyDescriptors:function getOwnPropertyDescriptors(t){for(var r,a,o=u(t),d=l.f,p=i(o),v={},h=0;p.length>h;)void 0!==(a=d(o,r=p[h++]))&&c(v,r,a);return v}})},57188:(t,r,a)=>{var o=a(98310),i=a(9480)(!1);o(o.S,"Object",{values:function values(t){return i(t)}})},81522:(t,r,a)=>{"use strict";var o=a(98310),i=a(47208),u=a(43280),l=a(73732),c=a(88747);o(o.P+o.R,"Promise",{finally:function(t){var r=l(this,i.Promise||u.Promise),a="function"==typeof t;return this.then(a?function(a){return c(r,t()).then((function(){return a}))}:t,a?function(a){return c(r,t()).then((function(){throw a}))}:t)}})},25757:(t,r,a)=>{"use strict";var o=a(98310),i=a(88579),u=a(52745);o(o.S,"Promise",{try:function(t){var r=i.f(this),a=u(t);return(a.e?r.reject:r.resolve)(a.v),r.promise}})},87573:(t,r,a)=>{a(31164)("asyncIterator")},97224:(t,r,a)=>{a(31164)("observable")},92797:(t,r,a)=>{a(14689)("WeakMap")},10143:(t,r,a)=>{a(7883)("WeakMap")},74114:(t,r,a)=>{a(84411);for(var o=a(43280),i=a(62292),u=a(79105),l=a(24300)("toStringTag"),c="CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList".split(","),d=0;d<c.length;d++){var p=c[d],v=o[p],h=v&&v.prototype;h&&!h[l]&&i(h,l,p),u[p]=u.Array}},22761:t=>{t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},42094:(t,r,a)=>{var o=a(62190)("unscopables"),i=Array.prototype;null==i[o]&&a(74216)(i,o,{}),t.exports=function(t){i[o][t]=!0}},88492:(t,r,a)=>{"use strict";var o=a(12070)(!0);t.exports=function(t,r,a){return r+(a?o(t,r).length:1)}},6365:(t,r,a)=>{var o=a(67334);t.exports=function(t){if(!o(t))throw TypeError(t+" is not an object!");return t}},59021:(t,r,a)=>{var o=a(15703),i=a(26078),u=a(78615);t.exports=function(t){return function(r,a,l){var c,d=o(r),p=i(d.length),v=u(l,p);if(t&&a!=a){for(;p>v;)if((c=d[v++])!=c)return!0}else for(;p>v;v++)if((t||v in d)&&d[v]===a)return t||v||0;return!t&&-1}}},78309:(t,r,a)=>{var o=a(11528),i=a(8467),u=a(26033),l=a(26078),c=a(63531);t.exports=function(t,r){var a=1==t,d=2==t,p=3==t,v=4==t,h=6==t,g=5==t||h,y=r||c;return function(r,c,m){for(var k,x,b=u(r),C=i(b),w=o(c,m,3),S=l(C.length),E=0,T=a?y(r,S):d?y(r,0):void 0;S>E;E++)if((g||E in C)&&(x=w(k=C[E],E,b),t))if(a)T[E]=x;else if(x)switch(t){case 3:return!0;case 5:return k;case 6:return E;case 2:T.push(k)}else if(v)return!1;return h?-1:p||v?v:T}}},81071:(t,r,a)=>{var o=a(67334),i=a(99141),u=a(62190)("species");t.exports=function(t){var r;return i(t)&&("function"!=typeof(r=t.constructor)||r!==Array&&!i(r.prototype)||(r=void 0),o(r)&&null===(r=r[u])&&(r=void 0)),void 0===r?Array:r}},63531:(t,r,a)=>{var o=a(81071);t.exports=function(t,r){return new(o(t))(r)}},20106:(t,r,a)=>{var o=a(26688),i=a(62190)("toStringTag"),u="Arguments"==o(function(){return arguments}());t.exports=function(t){var r,a,l;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(a=function(t,r){try{return t[r]}catch(t){}}(r=Object(t),i))?a:u?o(r):"Object"==(l=o(r))&&"function"==typeof r.callee?"Arguments":l}},26688:t=>{var r={}.toString;t.exports=function(t){return r.call(t).slice(8,-1)}},60066:t=>{var r=t.exports={version:"2.6.12"};"number"==typeof __e&&(__e=r)},11528:(t,r,a)=>{var o=a(22761);t.exports=function(t,r,a){if(o(t),void 0===r)return t;switch(a){case 1:return function(a){return t.call(r,a)};case 2:return function(a,o){return t.call(r,a,o)};case 3:return function(a,o,i){return t.call(r,a,o,i)}}return function(){return t.apply(r,arguments)}}},61622:t=>{t.exports=function(t){if(null==t)throw TypeError("Can't call method on  "+t);return t}},36628:(t,r,a)=>{t.exports=!a(48625)((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},5050:(t,r,a)=>{var o=a(67334),i=a(38113).document,u=o(i)&&o(i.createElement);t.exports=function(t){return u?i.createElement(t):{}}},33603:t=>{t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},65772:(t,r,a)=>{var o=a(38113),i=a(60066),u=a(74216),l=a(17738),c=a(11528),$export=function(t,r,a){var d,p,v,h,g=t&$export.F,y=t&$export.G,m=t&$export.S,k=t&$export.P,x=t&$export.B,b=y?o:m?o[r]||(o[r]={}):(o[r]||{}).prototype,C=y?i:i[r]||(i[r]={}),w=C.prototype||(C.prototype={});for(d in y&&(a=r),a)v=((p=!g&&b&&void 0!==b[d])?b:a)[d],h=x&&p?c(v,o):k&&"function"==typeof v?c(Function.call,v):v,b&&l(b,d,v,t&$export.U),C[d]!=v&&u(C,d,h),k&&w[d]!=v&&(w[d]=v)};o.core=i,$export.F=1,$export.G=2,$export.S=4,$export.P=8,$export.B=16,$export.W=32,$export.U=64,$export.R=128,t.exports=$export},86570:(t,r,a)=>{var o=a(62190)("match");t.exports=function(t){var r=/./;try{"/./"[t](r)}catch(a){try{return r[o]=!1,!"/./"[t](r)}catch(t){}}return!0}},48625:t=>{t.exports=function(t){try{return!!t()}catch(t){return!0}}},48897:(t,r,a)=>{"use strict";a(25846);var o=a(17738),i=a(74216),u=a(48625),l=a(61622),c=a(62190),d=a(43288),p=c("species"),v=!u((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$<a>")})),h=function(){var t=/(?:)/,r=t.exec;t.exec=function(){return r.apply(this,arguments)};var a="ab".split(t);return 2===a.length&&"a"===a[0]&&"b"===a[1]}();t.exports=function(t,r,a){var g=c(t),y=!u((function(){var r={};return r[g]=function(){return 7},7!=""[t](r)})),m=y?!u((function(){var r=!1,a=/a/;return a.exec=function(){return r=!0,null},"split"===t&&(a.constructor={},a.constructor[p]=function(){return a}),a[g](""),!r})):void 0;if(!y||!m||"replace"===t&&!v||"split"===t&&!h){var k=/./[g],x=a(l,g,""[t],(function maybeCallNative(t,r,a,o,i){return r.exec===d?y&&!i?{done:!0,value:k.call(r,a,o)}:{done:!0,value:t.call(a,r,o)}:{done:!1}})),b=x[0],C=x[1];o(String.prototype,t,b),i(RegExp.prototype,g,2==r?function(t,r){return C.call(t,this,r)}:function(t){return C.call(t,this)})}}},74859:(t,r,a)=>{"use strict";var o=a(6365);t.exports=function(){var t=o(this),r="";return t.global&&(r+="g"),t.ignoreCase&&(r+="i"),t.multiline&&(r+="m"),t.unicode&&(r+="u"),t.sticky&&(r+="y"),r}},20646:(t,r,a)=>{t.exports=a(8655)("native-function-to-string",Function.toString)},38113:t=>{var r=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=r)},54040:t=>{var r={}.hasOwnProperty;t.exports=function(t,a){return r.call(t,a)}},74216:(t,r,a)=>{var o=a(98558),i=a(36061);t.exports=a(36628)?function(t,r,a){return o.f(t,r,i(1,a))}:function(t,r,a){return t[r]=a,t}},8954:(t,r,a)=>{var o=a(38113).document;t.exports=o&&o.documentElement},5100:(t,r,a)=>{t.exports=!a(36628)&&!a(48625)((function(){return 7!=Object.defineProperty(a(5050)("div"),"a",{get:function(){return 7}}).a}))},18938:(t,r,a)=>{var o=a(67334),i=a(86095).set;t.exports=function(t,r,a){var u,l=r.constructor;return l!==a&&"function"==typeof l&&(u=l.prototype)!==a.prototype&&o(u)&&i&&i(t,u),t}},8467:(t,r,a)=>{var o=a(26688);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==o(t)?t.split(""):Object(t)}},99141:(t,r,a)=>{var o=a(26688);t.exports=Array.isArray||function isArray(t){return"Array"==o(t)}},67334:t=>{t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},94587:(t,r,a)=>{var o=a(67334),i=a(26688),u=a(62190)("match");t.exports=function(t){var r;return o(t)&&(void 0!==(r=t[u])?!!r:"RegExp"==i(t))}},46445:(t,r,a)=>{"use strict";var o=a(82897),i=a(36061),u=a(55727),l={};a(74216)(l,a(62190)("iterator"),(function(){return this})),t.exports=function(t,r,a){t.prototype=o(l,{next:i(1,a)}),u(t,r+" Iterator")}},61195:(t,r,a)=>{"use strict";var o=a(81422),i=a(65772),u=a(17738),l=a(74216),c=a(23988),d=a(46445),p=a(55727),v=a(19002),h=a(62190)("iterator"),g=!([].keys&&"next"in[].keys()),y="keys",m="values",returnThis=function(){return this};t.exports=function(t,r,a,k,x,b,C){d(a,r,k);var w,S,E,getMethod=function(t){if(!g&&t in M)return M[t];switch(t){case y:return function keys(){return new a(this,t)};case m:return function values(){return new a(this,t)}}return function entries(){return new a(this,t)}},T=r+" Iterator",A=x==m,I=!1,M=t.prototype,O=M[h]||M["@@iterator"]||x&&M[x],P=O||getMethod(x),j=x?A?getMethod("entries"):P:void 0,D="Array"==r&&M.entries||O;if(D&&(E=v(D.call(new t)))!==Object.prototype&&E.next&&(p(E,T,!0),o||"function"==typeof E[h]||l(E,h,returnThis)),A&&O&&O.name!==m&&(I=!0,P=function values(){return O.call(this)}),o&&!C||!g&&!I&&M[h]||l(M,h,P),c[r]=P,c[T]=returnThis,x)if(w={values:A?P:getMethod(m),keys:b?P:getMethod(y),entries:j},C)for(S in w)S in M||u(M,S,w[S]);else i(i.P+i.F*(g||I),r,w);return w}},35038:t=>{t.exports=function(t,r){return{value:r,done:!!t}}},23988:t=>{t.exports={}},81422:t=>{t.exports=!1},82897:(t,r,a)=>{var o=a(6365),i=a(7331),u=a(33603),l=a(28034)("IE_PROTO"),Empty=function(){},createDict=function(){var t,r=a(5050)("iframe"),o=u.length;for(r.style.display="none",a(8954).appendChild(r),r.src="javascript:",(t=r.contentWindow.document).open(),t.write("<script>document.F=Object<\/script>"),t.close(),createDict=t.F;o--;)delete createDict.prototype[u[o]];return createDict()};t.exports=Object.create||function create(t,r){var a;return null!==t?(Empty.prototype=o(t),a=new Empty,Empty.prototype=null,a[l]=t):a=createDict(),void 0===r?a:i(a,r)}},98558:(t,r,a)=>{var o=a(6365),i=a(5100),u=a(31382),l=Object.defineProperty;r.f=a(36628)?Object.defineProperty:function defineProperty(t,r,a){if(o(t),r=u(r,!0),o(a),i)try{return l(t,r,a)}catch(t){}if("get"in a||"set"in a)throw TypeError("Accessors not supported!");return"value"in a&&(t[r]=a.value),t}},7331:(t,r,a)=>{var o=a(98558),i=a(6365),u=a(42912);t.exports=a(36628)?Object.defineProperties:function defineProperties(t,r){i(t);for(var a,l=u(r),c=l.length,d=0;c>d;)o.f(t,a=l[d++],r[a]);return t}},94662:(t,r,a)=>{var o=a(65873),i=a(36061),u=a(15703),l=a(31382),c=a(54040),d=a(5100),p=Object.getOwnPropertyDescriptor;r.f=a(36628)?p:function getOwnPropertyDescriptor(t,r){if(t=u(t),r=l(r,!0),d)try{return p(t,r)}catch(t){}if(c(t,r))return i(!o.f.call(t,r),t[r])}},76604:(t,r,a)=>{var o=a(75547),i=a(33603).concat("length","prototype");r.f=Object.getOwnPropertyNames||function getOwnPropertyNames(t){return o(t,i)}},19002:(t,r,a)=>{var o=a(54040),i=a(26033),u=a(28034)("IE_PROTO"),l=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=i(t),o(t,u)?t[u]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?l:null}},75547:(t,r,a)=>{var o=a(54040),i=a(15703),u=a(59021)(!1),l=a(28034)("IE_PROTO");t.exports=function(t,r){var a,c=i(t),d=0,p=[];for(a in c)a!=l&&o(c,a)&&p.push(a);for(;r.length>d;)o(c,a=r[d++])&&(~u(p,a)||p.push(a));return p}},42912:(t,r,a)=>{var o=a(75547),i=a(33603);t.exports=Object.keys||function keys(t){return o(t,i)}},65873:(t,r)=>{r.f={}.propertyIsEnumerable},36061:t=>{t.exports=function(t,r){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:r}}},17738:(t,r,a)=>{var o=a(38113),i=a(74216),u=a(54040),l=a(25078)("src"),c=a(20646),d="toString",p=(""+c).split(d);a(60066).inspectSource=function(t){return c.call(t)},(t.exports=function(t,r,a,c){var d="function"==typeof a;d&&(u(a,"name")||i(a,"name",r)),t[r]!==a&&(d&&(u(a,l)||i(a,l,t[r]?""+t[r]:p.join(String(r)))),t===o?t[r]=a:c?t[r]?t[r]=a:i(t,r,a):(delete t[r],i(t,r,a)))})(Function.prototype,d,(function toString(){return"function"==typeof this&&this[l]||c.call(this)}))},62404:(t,r,a)=>{"use strict";var o=a(20106),i=RegExp.prototype.exec;t.exports=function(t,r){var a=t.exec;if("function"==typeof a){var u=a.call(t,r);if("object"!=typeof u)throw new TypeError("RegExp exec method returned something other than an Object or null");return u}if("RegExp"!==o(t))throw new TypeError("RegExp#exec called on incompatible receiver");return i.call(t,r)}},43288:(t,r,a)=>{"use strict";var o,i,u=a(74859),l=RegExp.prototype.exec,c=String.prototype.replace,d=l,p=(o=/a/,i=/b*/g,l.call(o,"a"),l.call(i,"a"),0!==o.lastIndex||0!==i.lastIndex),v=void 0!==/()??/.exec("")[1];(p||v)&&(d=function exec(t){var r,a,o,i,d=this;return v&&(a=new RegExp("^"+d.source+"$(?!\\s)",u.call(d))),p&&(r=d.lastIndex),o=l.call(d,t),p&&o&&(d.lastIndex=d.global?o.index+o[0].length:r),v&&o&&o.length>1&&c.call(o[0],a,(function(){for(i=1;i<arguments.length-2;i++)void 0===arguments[i]&&(o[i]=void 0)})),o}),t.exports=d},86095:(t,r,a)=>{var o=a(67334),i=a(6365),check=function(t,r){if(i(t),!o(r)&&null!==r)throw TypeError(r+": can't set as prototype!")};t.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(t,r,o){try{(o=a(11528)(Function.call,a(94662).f(Object.prototype,"__proto__").set,2))(t,[]),r=!(t instanceof Array)}catch(t){r=!0}return function setPrototypeOf(t,a){return check(t,a),r?t.__proto__=a:o(t,a),t}}({},!1):void 0),check}},49766:(t,r,a)=>{"use strict";var o=a(38113),i=a(98558),u=a(36628),l=a(62190)("species");t.exports=function(t){var r=o[t];u&&r&&!r[l]&&i.f(r,l,{configurable:!0,get:function(){return this}})}},55727:(t,r,a)=>{var o=a(98558).f,i=a(54040),u=a(62190)("toStringTag");t.exports=function(t,r,a){t&&!i(t=a?t:t.prototype,u)&&o(t,u,{configurable:!0,value:r})}},28034:(t,r,a)=>{var o=a(8655)("keys"),i=a(25078);t.exports=function(t){return o[t]||(o[t]=i(t))}},8655:(t,r,a)=>{var o=a(60066),i=a(38113),u="__core-js_shared__",l=i[u]||(i[u]={});(t.exports=function(t,r){return l[t]||(l[t]=void 0!==r?r:{})})("versions",[]).push({version:o.version,mode:a(81422)?"pure":"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})},11987:(t,r,a)=>{var o=a(6365),i=a(22761),u=a(62190)("species");t.exports=function(t,r){var a,l=o(t).constructor;return void 0===l||null==(a=o(l)[u])?r:i(a)}},10225:(t,r,a)=>{"use strict";var o=a(48625);t.exports=function(t,r){return!!t&&o((function(){r?t.call(null,(function(){}),1):t.call(null)}))}},12070:(t,r,a)=>{var o=a(3338),i=a(61622);t.exports=function(t){return function(r,a){var u,l,c=String(i(r)),d=o(a),p=c.length;return d<0||d>=p?t?"":void 0:(u=c.charCodeAt(d))<55296||u>56319||d+1===p||(l=c.charCodeAt(d+1))<56320||l>57343?t?c.charAt(d):u:t?c.slice(d,d+2):l-56320+(u-55296<<10)+65536}}},465:(t,r,a)=>{var o=a(94587),i=a(61622);t.exports=function(t,r,a){if(o(r))throw TypeError("String#"+a+" doesn't accept regex!");return String(i(t))}},78615:(t,r,a)=>{var o=a(3338),i=Math.max,u=Math.min;t.exports=function(t,r){return(t=o(t))<0?i(t+r,0):u(t,r)}},3338:t=>{var r=Math.ceil,a=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?a:r)(t)}},15703:(t,r,a)=>{var o=a(8467),i=a(61622);t.exports=function(t){return o(i(t))}},26078:(t,r,a)=>{var o=a(3338),i=Math.min;t.exports=function(t){return t>0?i(o(t),9007199254740991):0}},26033:(t,r,a)=>{var o=a(61622);t.exports=function(t){return Object(o(t))}},31382:(t,r,a)=>{var o=a(67334);t.exports=function(t,r){if(!o(t))return t;var a,i;if(r&&"function"==typeof(a=t.toString)&&!o(i=a.call(t)))return i;if("function"==typeof(a=t.valueOf)&&!o(i=a.call(t)))return i;if(!r&&"function"==typeof(a=t.toString)&&!o(i=a.call(t)))return i;throw TypeError("Can't convert object to primitive value")}},25078:t=>{var r=0,a=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++r+a).toString(36))}},62190:(t,r,a)=>{var o=a(8655)("wks"),i=a(25078),u=a(38113).Symbol,l="function"==typeof u;(t.exports=function(t){return o[t]||(o[t]=l&&u[t]||(l?u:i)("Symbol."+t))}).store=o},64434:(t,r,a)=>{"use strict";var o=a(65772),i=a(78309)(2);o(o.P+o.F*!a(10225)([].filter,!0),"Array",{filter:function filter(t){return i(this,t,arguments[1])}})},71954:(t,r,a)=>{"use strict";var o=a(65772),i=a(78309)(5),u="find",l=!0;u in[]&&Array(1).find((function(){l=!1})),o(o.P+o.F*l,"Array",{find:function find(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}}),a(42094)(u)},12897:(t,r,a)=>{"use strict";var o=a(42094),i=a(35038),u=a(23988),l=a(15703);t.exports=a(61195)(Array,"Array",(function(t,r){this._t=l(t),this._i=0,this._k=r}),(function(){var t=this._t,r=this._k,a=this._i++;return!t||a>=t.length?(this._t=void 0,i(1)):i(0,"keys"==r?a:"values"==r?t[a]:[a,t[a]])}),"values"),u.Arguments=u.Array,o("keys"),o("values"),o("entries")},99745:(t,r,a)=>{var o=a(98558).f,i=Function.prototype,u=/^\s*function ([^ (]*)/,l="name";l in i||a(36628)&&o(i,l,{configurable:!0,get:function(){try{return(""+this).match(u)[1]}catch(t){return""}}})},76139:(t,r,a)=>{"use strict";var o=a(20106),i={};i[a(62190)("toStringTag")]="z",i+""!="[object z]"&&a(17738)(Object.prototype,"toString",(function toString(){return"[object "+o(this)+"]"}),!0)},55506:(t,r,a)=>{var o=a(38113),i=a(18938),u=a(98558).f,l=a(76604).f,c=a(94587),d=a(74859),p=o.RegExp,v=p,h=p.prototype,g=/a/g,y=/a/g,m=new p(g)!==g;if(a(36628)&&(!m||a(48625)((function(){return y[a(62190)("match")]=!1,p(g)!=g||p(y)==y||"/a/i"!=p(g,"i")})))){p=function RegExp(t,r){var a=this instanceof p,o=c(t),u=void 0===r;return!a&&o&&t.constructor===p&&u?t:i(m?new v(o&&!u?t.source:t,r):v((o=t instanceof p)?t.source:t,o&&u?d.call(t):r),a?this:h,p)};for(var proxy=function(t){t in p||u(p,t,{configurable:!0,get:function(){return v[t]},set:function(r){v[t]=r}})},k=l(v),x=0;k.length>x;)proxy(k[x++]);h.constructor=p,p.prototype=h,a(17738)(o,"RegExp",p)}a(49766)("RegExp")},25846:(t,r,a)=>{"use strict";var o=a(43288);a(65772)({target:"RegExp",proto:!0,forced:o!==/./.exec},{exec:o})},40751:(t,r,a)=>{a(36628)&&"g"!=/./g.flags&&a(98558).f(RegExp.prototype,"flags",{configurable:!0,get:a(74859)})},64828:(t,r,a)=>{"use strict";var o=a(6365),i=a(26078),u=a(88492),l=a(62404);a(48897)("match",1,(function(t,r,a,c){return[function match(a){var o=t(this),i=null==a?void 0:a[r];return void 0!==i?i.call(a,o):new RegExp(a)[r](String(o))},function(t){var r=c(a,t,this);if(r.done)return r.value;var d=o(t),p=String(this);if(!d.global)return l(d,p);var v=d.unicode;d.lastIndex=0;for(var h,g=[],y=0;null!==(h=l(d,p));){var m=String(h[0]);g[y]=m,""===m&&(d.lastIndex=u(p,i(d.lastIndex),v)),y++}return 0===y?null:g}]}))},84208:(t,r,a)=>{"use strict";var o=a(6365),i=a(26033),u=a(26078),l=a(3338),c=a(88492),d=a(62404),p=Math.max,v=Math.min,h=Math.floor,g=/\$([$&`']|\d\d?|<[^>]*>)/g,y=/\$([$&`']|\d\d?)/g;a(48897)("replace",2,(function(t,r,a,m){return[function replace(o,i){var u=t(this),l=null==o?void 0:o[r];return void 0!==l?l.call(o,u,i):a.call(String(u),o,i)},function(t,r){var i=m(a,t,this,r);if(i.done)return i.value;var h=o(t),g=String(this),y="function"==typeof r;y||(r=String(r));var k=h.global;if(k){var x=h.unicode;h.lastIndex=0}for(var b=[];;){var C=d(h,g);if(null===C)break;if(b.push(C),!k)break;""===String(C[0])&&(h.lastIndex=c(g,u(h.lastIndex),x))}for(var w,S="",E=0,T=0;T<b.length;T++){C=b[T];for(var A=String(C[0]),I=p(v(l(C.index),g.length),0),M=[],O=1;O<C.length;O++)M.push(void 0===(w=C[O])?w:String(w));var P=C.groups;if(y){var j=[A].concat(M,I,g);void 0!==P&&j.push(P);var D=String(r.apply(void 0,j))}else D=getSubstitution(A,g,I,M,P,r);I>=E&&(S+=g.slice(E,I)+D,E=I+A.length)}return S+g.slice(E)}];function getSubstitution(t,r,o,u,l,c){var d=o+t.length,p=u.length,v=y;return void 0!==l&&(l=i(l),v=g),a.call(c,v,(function(a,i){var c;switch(i.charAt(0)){case"$":return"$";case"&":return t;case"`":return r.slice(0,o);case"'":return r.slice(d);case"<":c=l[i.slice(1,-1)];break;default:var v=+i;if(0===v)return a;if(v>p){var g=h(v/10);return 0===g?a:g<=p?void 0===u[g-1]?i.charAt(1):u[g-1]+i.charAt(1):a}c=u[v-1]}return void 0===c?"":c}))}}))},99236:(t,r,a)=>{"use strict";var o=a(94587),i=a(6365),u=a(11987),l=a(88492),c=a(26078),d=a(62404),p=a(43288),v=a(48625),h=Math.min,g=[].push,y=4294967295,m=!v((function(){RegExp(y,"y")}));a(48897)("split",2,(function(t,r,a,v){var k;return k="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,r){var i=String(this);if(void 0===t&&0===r)return[];if(!o(t))return a.call(i,t,r);for(var u,l,c,d=[],v=(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":""),h=0,m=void 0===r?y:r>>>0,k=new RegExp(t.source,v+"g");(u=p.call(k,i))&&!((l=k.lastIndex)>h&&(d.push(i.slice(h,u.index)),u.length>1&&u.index<i.length&&g.apply(d,u.slice(1)),c=u[0].length,h=l,d.length>=m));)k.lastIndex===u.index&&k.lastIndex++;return h===i.length?!c&&k.test("")||d.push(""):d.push(i.slice(h)),d.length>m?d.slice(0,m):d}:"0".split(void 0,0).length?function(t,r){return void 0===t&&0===r?[]:a.call(this,t,r)}:a,[function split(a,o){var i=t(this),u=null==a?void 0:a[r];return void 0!==u?u.call(a,i,o):k.call(String(i),a,o)},function(t,r){var o=v(k,t,this,r,k!==a);if(o.done)return o.value;var p=i(t),g=String(this),x=u(p,RegExp),b=p.unicode,C=(p.ignoreCase?"i":"")+(p.multiline?"m":"")+(p.unicode?"u":"")+(m?"y":"g"),w=new x(m?p:"^(?:"+p.source+")",C),S=void 0===r?y:r>>>0;if(0===S)return[];if(0===g.length)return null===d(w,g)?[g]:[];for(var E=0,T=0,A=[];T<g.length;){w.lastIndex=m?T:0;var I,M=d(w,m?g:g.slice(T));if(null===M||(I=h(c(w.lastIndex+(m?0:T)),g.length))===E)T=l(g,T,b);else{if(A.push(g.slice(E,T)),A.length===S)return A;for(var O=1;O<=M.length-1;O++)if(A.push(M[O]),A.length===S)return A;T=E=I}}return A.push(g.slice(E)),A}]}))},44321:(t,r,a)=>{"use strict";a(40751);var o=a(6365),i=a(74859),u=a(36628),l="toString",c=/./.toString,define=function(t){a(17738)(RegExp.prototype,l,t,!0)};a(48625)((function(){return"/a/b"!=c.call({source:"a",flags:"b"})}))?define((function toString(){var t=o(this);return"/".concat(t.source,"/","flags"in t?t.flags:!u&&t instanceof RegExp?i.call(t):void 0)})):c.name!=l&&define((function toString(){return c.call(this)}))},3777:(t,r,a)=>{"use strict";var o=a(65772),i=a(465),u="includes";o(o.P+o.F*a(86570)(u),"String",{includes:function includes(t){return!!~i(this,t,u).indexOf(t,arguments.length>1?arguments[1]:void 0)}})},37472:(t,r,a)=>{"use strict";var o=a(12070)(!0);a(61195)(String,"String",(function(t){this._t=String(t),this._i=0}),(function(){var t,r=this._t,a=this._i;return a>=r.length?{value:void 0,done:!0}:(t=o(r,a),this._i+=t.length,{value:t,done:!1})}))},65942:(t,r,a)=>{"use strict";var o=a(65772),i=a(26078),u=a(465),l="startsWith",c="".startsWith;o(o.P+o.F*a(86570)(l),"String",{startsWith:function startsWith(t){var r=u(this,t,l),a=i(Math.min(arguments.length>1?arguments[1]:void 0,r.length)),o=String(t);return c?c.call(r,o,a):r.slice(a,a+o.length)===o}})},38081:(t,r,a)=>{"use strict";var o=a(65772),i=a(59021)(!0);o(o.P,"Array",{includes:function includes(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}}),a(42094)("includes")},93085:(t,r,a)=>{for(var o=a(12897),i=a(42912),u=a(17738),l=a(38113),c=a(74216),d=a(23988),p=a(62190),v=p("iterator"),h=p("toStringTag"),g=d.Array,y={CSSRuleList:!0,CSSStyleDeclaration:!1,CSSValueList:!1,ClientRectList:!1,DOMRectList:!1,DOMStringList:!1,DOMTokenList:!0,DataTransferItemList:!1,FileList:!1,HTMLAllCollection:!1,HTMLCollection:!1,HTMLFormElement:!1,HTMLSelectElement:!1,MediaList:!0,MimeTypeArray:!1,NamedNodeMap:!1,NodeList:!0,PaintRequestList:!1,Plugin:!1,PluginArray:!1,SVGLengthList:!1,SVGNumberList:!1,SVGPathSegList:!1,SVGPointList:!1,SVGStringList:!1,SVGTransformList:!1,SourceBufferList:!1,StyleSheetList:!0,TextTrackCueList:!1,TextTrackList:!1,TouchList:!1},m=i(y),k=0;k<m.length;k++){var x,b=m[k],C=y[b],w=l[b],S=w&&w.prototype;if(S&&(S[v]||c(S,v,g),S[h]||c(S,h,b),d[b]=g,C))for(x in o)S[x]||u(S,x,o[x],!0)}},86248:t=>{var r=function(t){"use strict";var r,a=Object.prototype,o=a.hasOwnProperty,i="function"==typeof Symbol?Symbol:{},u=i.iterator||"@@iterator",l=i.asyncIterator||"@@asyncIterator",c=i.toStringTag||"@@toStringTag";function define(t,r,a){return Object.defineProperty(t,r,{value:a,enumerable:!0,configurable:!0,writable:!0}),t[r]}try{define({},"")}catch(t){define=function(t,r,a){return t[r]=a}}function wrap(t,r,a,o){var i=r&&r.prototype instanceof Generator?r:Generator,u=Object.create(i.prototype),l=new Context(o||[]);return u._invoke=function makeInvokeMethod(t,r,a){var o=d;return function invoke(i,u){if(o===v)throw new Error("Generator is already running");if(o===h){if("throw"===i)throw u;return doneResult()}for(a.method=i,a.arg=u;;){var l=a.delegate;if(l){var c=maybeInvokeDelegate(l,a);if(c){if(c===g)continue;return c}}if("next"===a.method)a.sent=a._sent=a.arg;else if("throw"===a.method){if(o===d)throw o=h,a.arg;a.dispatchException(a.arg)}else"return"===a.method&&a.abrupt("return",a.arg);o=v;var y=tryCatch(t,r,a);if("normal"===y.type){if(o=a.done?h:p,y.arg===g)continue;return{value:y.arg,done:a.done}}"throw"===y.type&&(o=h,a.method="throw",a.arg=y.arg)}}}(t,a,l),u}function tryCatch(t,r,a){try{return{type:"normal",arg:t.call(r,a)}}catch(t){return{type:"throw",arg:t}}}t.wrap=wrap;var d="suspendedStart",p="suspendedYield",v="executing",h="completed",g={};function Generator(){}function GeneratorFunction(){}function GeneratorFunctionPrototype(){}var y={};y[u]=function(){return this};var m=Object.getPrototypeOf,k=m&&m(m(values([])));k&&k!==a&&o.call(k,u)&&(y=k);var x=GeneratorFunctionPrototype.prototype=Generator.prototype=Object.create(y);function defineIteratorMethods(t){["next","throw","return"].forEach((function(r){define(t,r,(function(t){return this._invoke(r,t)}))}))}function AsyncIterator(t,r){function invoke(a,i,u,l){var c=tryCatch(t[a],t,i);if("throw"!==c.type){var d=c.arg,p=d.value;return p&&"object"==typeof p&&o.call(p,"__await")?r.resolve(p.__await).then((function(t){invoke("next",t,u,l)}),(function(t){invoke("throw",t,u,l)})):r.resolve(p).then((function(t){d.value=t,u(d)}),(function(t){return invoke("throw",t,u,l)}))}l(c.arg)}var a;this._invoke=function enqueue(t,o){function callInvokeWithMethodAndArg(){return new r((function(r,a){invoke(t,o,r,a)}))}return a=a?a.then(callInvokeWithMethodAndArg,callInvokeWithMethodAndArg):callInvokeWithMethodAndArg()}}function maybeInvokeDelegate(t,a){var o=t.iterator[a.method];if(o===r){if(a.delegate=null,"throw"===a.method){if(t.iterator.return&&(a.method="return",a.arg=r,maybeInvokeDelegate(t,a),"throw"===a.method))return g;a.method="throw",a.arg=new TypeError("The iterator does not provide a 'throw' method")}return g}var i=tryCatch(o,t.iterator,a.arg);if("throw"===i.type)return a.method="throw",a.arg=i.arg,a.delegate=null,g;var u=i.arg;return u?u.done?(a[t.resultName]=u.value,a.next=t.nextLoc,"return"!==a.method&&(a.method="next",a.arg=r),a.delegate=null,g):u:(a.method="throw",a.arg=new TypeError("iterator result is not an object"),a.delegate=null,g)}function pushTryEntry(t){var r={tryLoc:t[0]};1 in t&&(r.catchLoc=t[1]),2 in t&&(r.finallyLoc=t[2],r.afterLoc=t[3]),this.tryEntries.push(r)}function resetTryEntry(t){var r=t.completion||{};r.type="normal",delete r.arg,t.completion=r}function Context(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(pushTryEntry,this),this.reset(!0)}function values(t){if(t){var a=t[u];if(a)return a.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var i=-1,l=function next(){for(;++i<t.length;)if(o.call(t,i))return next.value=t[i],next.done=!1,next;return next.value=r,next.done=!0,next};return l.next=l}}return{next:doneResult}}function doneResult(){return{value:r,done:!0}}return GeneratorFunction.prototype=x.constructor=GeneratorFunctionPrototype,GeneratorFunctionPrototype.constructor=GeneratorFunction,GeneratorFunction.displayName=define(GeneratorFunctionPrototype,c,"GeneratorFunction"),t.isGeneratorFunction=function(t){var r="function"==typeof t&&t.constructor;return!!r&&(r===GeneratorFunction||"GeneratorFunction"===(r.displayName||r.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,GeneratorFunctionPrototype):(t.__proto__=GeneratorFunctionPrototype,define(t,c,"GeneratorFunction")),t.prototype=Object.create(x),t},t.awrap=function(t){return{__await:t}},defineIteratorMethods(AsyncIterator.prototype),AsyncIterator.prototype[l]=function(){return this},t.AsyncIterator=AsyncIterator,t.async=function(r,a,o,i,u){void 0===u&&(u=Promise);var l=new AsyncIterator(wrap(r,a,o,i),u);return t.isGeneratorFunction(a)?l:l.next().then((function(t){return t.done?t.value:l.next()}))},defineIteratorMethods(x),define(x,c,"Generator"),x[u]=function(){return this},x.toString=function(){return"[object Generator]"},t.keys=function(t){var r=[];for(var a in t)r.push(a);return r.reverse(),function next(){for(;r.length;){var a=r.pop();if(a in t)return next.value=a,next.done=!1,next}return next.done=!0,next}},t.values=values,Context.prototype={constructor:Context,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=r,this.done=!1,this.delegate=null,this.method="next",this.arg=r,this.tryEntries.forEach(resetTryEntry),!t)for(var a in this)"t"===a.charAt(0)&&o.call(this,a)&&!isNaN(+a.slice(1))&&(this[a]=r)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var a=this;function handle(o,i){return l.type="throw",l.arg=t,a.next=o,i&&(a.method="next",a.arg=r),!!i}for(var i=this.tryEntries.length-1;i>=0;--i){var u=this.tryEntries[i],l=u.completion;if("root"===u.tryLoc)return handle("end");if(u.tryLoc<=this.prev){var c=o.call(u,"catchLoc"),d=o.call(u,"finallyLoc");if(c&&d){if(this.prev<u.catchLoc)return handle(u.catchLoc,!0);if(this.prev<u.finallyLoc)return handle(u.finallyLoc)}else if(c){if(this.prev<u.catchLoc)return handle(u.catchLoc,!0)}else{if(!d)throw new Error("try statement without catch or finally");if(this.prev<u.finallyLoc)return handle(u.finallyLoc)}}}},abrupt:function(t,r){for(var a=this.tryEntries.length-1;a>=0;--a){var i=this.tryEntries[a];if(i.tryLoc<=this.prev&&o.call(i,"finallyLoc")&&this.prev<i.finallyLoc){var u=i;break}}u&&("break"===t||"continue"===t)&&u.tryLoc<=r&&r<=u.finallyLoc&&(u=null);var l=u?u.completion:{};return l.type=t,l.arg=r,u?(this.method="next",this.next=u.finallyLoc,g):this.complete(l)},complete:function(t,r){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&r&&(this.next=r),g},finish:function(t){for(var r=this.tryEntries.length-1;r>=0;--r){var a=this.tryEntries[r];if(a.finallyLoc===t)return this.complete(a.completion,a.afterLoc),resetTryEntry(a),g}},catch:function(t){for(var r=this.tryEntries.length-1;r>=0;--r){var a=this.tryEntries[r];if(a.tryLoc===t){var o=a.completion;if("throw"===o.type){var i=o.arg;resetTryEntry(a)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(t,a,o){return this.delegate={iterator:values(t),resultName:a,nextLoc:o},"next"===this.method&&(this.arg=r),g}},t}(t.exports);try{regeneratorRuntime=r}catch(t){Function("r","regeneratorRuntime = r")(r)}},18194:t=>{"use strict";t.exports=wp.i18n}},r={};function __webpack_require__(a){var o=r[a];if(void 0!==o)return o.exports;var i=r[a]={exports:{}};return t[a](i,i.exports,__webpack_require__),i.exports}(()=>{"use strict";var t=__webpack_require__(67971);__webpack_require__(84208);var r=t(__webpack_require__(11959)),a=t(__webpack_require__(39041)),o=t(__webpack_require__(76700)),i=t(__webpack_require__(44263)),u=t(__webpack_require__(77371)),l=t(__webpack_require__(68537)),c=t(__webpack_require__(90287)),d=t(__webpack_require__(35107)),p=t(__webpack_require__(52253)),v=t(__webpack_require__(22998)),h=t(__webpack_require__(36614)),g=t(__webpack_require__(57100)),y=t(__webpack_require__(14737)),m=function(t){(0,u.default)(ElementorCommonApp,t);var m=(0,l.default)(ElementorCommonApp);function ElementorCommonApp(){return(0,r.default)(this,ElementorCommonApp),m.apply(this,arguments)}return(0,a.default)(ElementorCommonApp,[{key:"setMarionetteTemplateCompiler",value:function setMarionetteTemplateCompiler(){Marionette.TemplateCache.prototype.compileTemplate=function(t,r){return r={evaluate:/<#([\s\S]+?)#>/g,interpolate:/{{{([\s\S]+?)}}}/g,escape:/{{([^}]+?)}}(?!})/g},_.template(t,r)}}},{key:"getDefaultElements",value:function getDefaultElements(){return{$window:jQuery(window),$document:jQuery(document),$body:jQuery(document.body)}}},{key:"initComponents",value:function initComponents(){this.debug=new p.default,this.helpers=new c.default,this.storage=new d.default,this.dialogsManager=new DialogsManager.Instance,this.api=new y.default,this.initModules()}},{key:"initModules",value:function initModules(){var t=this,r=this.config.activeModules,a={ajax:v.default,finder:h.default,connect:g.default};r.forEach((function(r){a[r]&&(t[r]=new a[r](t.config[r]))}))}},{key:"compileArrayTemplateArgs",value:function compileArrayTemplateArgs(t,r){return t.replace(/%(?:(\d+)\$)?s/g,(function(t,a){return a||(a=1),a--,void 0!==r[a]?r[a]:t}))}},{key:"compileObjectTemplateArgs",value:function compileObjectTemplateArgs(t,r){return t.replace(/{{(?:([ \w]+))}}/g,(function(t,a){return r[a]?r[a]:t}))}},{key:"compileTemplate",value:function compileTemplate(t,r){return jQuery.isPlainObject(r)?this.compileObjectTemplateArgs(t,r):this.compileArrayTemplateArgs(t,r)}},{key:"translate",value:function translate(t,r,a,o){r&&(o=this.config[r].i18n),o||(o=this.config.i18n);var i=o[t];return void 0===i&&(i=t),a&&(i=this.compileTemplate(i,a)),i}},{key:"onInit",value:function onInit(){(0,o.default)((0,i.default)(ElementorCommonApp.prototype),"onInit",this).call(this),this.config=elementorCommonConfig,this.setMarionetteTemplateCompiler()}}]),ElementorCommonApp}(elementorModules.ViewModule);window.elementorCommon=new m,elementorCommon.initComponents()})()})();assets/js/wp-audio.2332b719d144261993a3.bundle.min.js000064400000000534151327220410015110 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(self.webpackChunkelementor=self.webpackChunkelementor||[]).push([[52],{7602:(e,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;class WpAudio extends elementorModules.frontend.handlers.Base{onInit(){super.onInit(),window.wp.mediaelement.initialize()}}n.default=WpAudio}}]);assets/js/06ad222c8807f0a951da.bundle.js000064400001042145151327220410013101 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(self["webpackChunkelementor"] = self["webpackChunkelementor"] || []).push([["vendors-node_modules_babel_runtime-corejs2_core-js_object_values_js-node_modules_babel_runtim-2f5074"],{

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/values.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/values.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/values */ "../node_modules/core-js/library/fn/object/values.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/promise.js":
/*!*****************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/promise.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/promise */ "../node_modules/core-js/library/fn/promise.js");

/***/ }),

/***/ "../node_modules/@babel/runtime/helpers/esm/extends.js":
/*!*************************************************************!*\
  !*** ../node_modules/@babel/runtime/helpers/esm/extends.js ***!
  \*************************************************************/
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (/* binding */ _extends)
/* harmony export */ });
function _extends() {
  _extends = Object.assign || function (target) {
    for (var i = 1; i < arguments.length; i++) {
      var source = arguments[i];

      for (var key in source) {
        if (Object.prototype.hasOwnProperty.call(source, key)) {
          target[key] = source[key];
        }
      }
    }

    return target;
  };

  return _extends.apply(this, arguments);
}

/***/ }),

/***/ "../node_modules/@babel/runtime/helpers/esm/inheritsLoose.js":
/*!*******************************************************************!*\
  !*** ../node_modules/@babel/runtime/helpers/esm/inheritsLoose.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (/* binding */ _inheritsLoose)
/* harmony export */ });
/* harmony import */ var _setPrototypeOf_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./setPrototypeOf.js */ "../node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js");

function _inheritsLoose(subClass, superClass) {
  subClass.prototype = Object.create(superClass.prototype);
  subClass.prototype.constructor = subClass;
  (0,_setPrototypeOf_js__WEBPACK_IMPORTED_MODULE_0__.default)(subClass, superClass);
}

/***/ }),

/***/ "../node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js":
/*!**********************************************************************************!*\
  !*** ../node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js ***!
  \**********************************************************************************/
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (/* binding */ _objectWithoutPropertiesLoose)
/* harmony export */ });
function _objectWithoutPropertiesLoose(source, excluded) {
  if (source == null) return {};
  var target = {};
  var sourceKeys = Object.keys(source);
  var key, i;

  for (i = 0; i < sourceKeys.length; i++) {
    key = sourceKeys[i];
    if (excluded.indexOf(key) >= 0) continue;
    target[key] = source[key];
  }

  return target;
}

/***/ }),

/***/ "../node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js":
/*!********************************************************************!*\
  !*** ../node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js ***!
  \********************************************************************/
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (/* binding */ _setPrototypeOf)
/* harmony export */ });
function _setPrototypeOf(o, p) {
  _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
    o.__proto__ = p;
    return o;
  };

  return _setPrototypeOf(o, p);
}

/***/ }),

/***/ "../node_modules/core-js/library/fn/object/values.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/values.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es7.object.values */ "../node_modules/core-js/library/modules/es7.object.values.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.values;


/***/ }),

/***/ "../node_modules/core-js/library/fn/promise.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/library/fn/promise.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../modules/es6.object.to-string */ "../node_modules/core-js/library/modules/es6.object.to-string.js");
__webpack_require__(/*! ../modules/es6.string.iterator */ "../node_modules/core-js/library/modules/es6.string.iterator.js");
__webpack_require__(/*! ../modules/web.dom.iterable */ "../node_modules/core-js/library/modules/web.dom.iterable.js");
__webpack_require__(/*! ../modules/es6.promise */ "../node_modules/core-js/library/modules/es6.promise.js");
__webpack_require__(/*! ../modules/es7.promise.finally */ "../node_modules/core-js/library/modules/es7.promise.finally.js");
__webpack_require__(/*! ../modules/es7.promise.try */ "../node_modules/core-js/library/modules/es7.promise.try.js");
module.exports = __webpack_require__(/*! ../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Promise;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_microtask.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_microtask.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var macrotask = __webpack_require__(/*! ./_task */ "../node_modules/core-js/library/modules/_task.js").set;
var Observer = global.MutationObserver || global.WebKitMutationObserver;
var process = global.process;
var Promise = global.Promise;
var isNode = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js")(process) == 'process';

module.exports = function () {
  var head, last, notify;

  var flush = function () {
    var parent, fn;
    if (isNode && (parent = process.domain)) parent.exit();
    while (head) {
      fn = head.fn;
      head = head.next;
      try {
        fn();
      } catch (e) {
        if (head) notify();
        else last = undefined;
        throw e;
      }
    } last = undefined;
    if (parent) parent.enter();
  };

  // Node.js
  if (isNode) {
    notify = function () {
      process.nextTick(flush);
    };
  // browsers with MutationObserver, except iOS Safari - https://github.com/zloirock/core-js/issues/339
  } else if (Observer && !(global.navigator && global.navigator.standalone)) {
    var toggle = true;
    var node = document.createTextNode('');
    new Observer(flush).observe(node, { characterData: true }); // eslint-disable-line no-new
    notify = function () {
      node.data = toggle = !toggle;
    };
  // environments with maybe non-completely correct, but existent Promise
  } else if (Promise && Promise.resolve) {
    // Promise.resolve without an argument throws an error in LG WebOS 2
    var promise = Promise.resolve(undefined);
    notify = function () {
      promise.then(flush);
    };
  // for other environments - macrotask based on:
  // - setImmediate
  // - MessageChannel
  // - window.postMessag
  // - onreadystatechange
  // - setTimeout
  } else {
    notify = function () {
      // strange IE + webpack dev server bug - use .call(global)
      macrotask.call(global, flush);
    };
  }

  return function (fn) {
    var task = { fn: fn, next: undefined };
    if (last) last.next = task;
    if (!head) {
      head = task;
      notify();
    } last = task;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_new-promise-capability.js":
/*!**************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_new-promise-capability.js ***!
  \**************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 25.4.1.5 NewPromiseCapability(C)
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");

function PromiseCapability(C) {
  var resolve, reject;
  this.promise = new C(function ($$resolve, $$reject) {
    if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor');
    resolve = $$resolve;
    reject = $$reject;
  });
  this.resolve = aFunction(resolve);
  this.reject = aFunction(reject);
}

module.exports.f = function (C) {
  return new PromiseCapability(C);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_perform.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_perform.js ***!
  \***********************************************************/
/***/ ((module) => {

module.exports = function (exec) {
  try {
    return { e: false, v: exec() };
  } catch (e) {
    return { e: true, v: e };
  }
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_promise-resolve.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_promise-resolve.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var newPromiseCapability = __webpack_require__(/*! ./_new-promise-capability */ "../node_modules/core-js/library/modules/_new-promise-capability.js");

module.exports = function (C, x) {
  anObject(C);
  if (isObject(x) && x.constructor === C) return x;
  var promiseCapability = newPromiseCapability.f(C);
  var resolve = promiseCapability.resolve;
  resolve(x);
  return promiseCapability.promise;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-species.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-species.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('species');

module.exports = function (KEY) {
  var C = typeof core[KEY] == 'function' ? core[KEY] : global[KEY];
  if (DESCRIPTORS && C && !C[SPECIES]) dP.f(C, SPECIES, {
    configurable: true,
    get: function () { return this; }
  });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_species-constructor.js":
/*!***********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_species-constructor.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.3.20 SpeciesConstructor(O, defaultConstructor)
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('species');
module.exports = function (O, D) {
  var C = anObject(O).constructor;
  var S;
  return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_task.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_task.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var invoke = __webpack_require__(/*! ./_invoke */ "../node_modules/core-js/library/modules/_invoke.js");
var html = __webpack_require__(/*! ./_html */ "../node_modules/core-js/library/modules/_html.js");
var cel = __webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/library/modules/_dom-create.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var process = global.process;
var setTask = global.setImmediate;
var clearTask = global.clearImmediate;
var MessageChannel = global.MessageChannel;
var Dispatch = global.Dispatch;
var counter = 0;
var queue = {};
var ONREADYSTATECHANGE = 'onreadystatechange';
var defer, channel, port;
var run = function () {
  var id = +this;
  // eslint-disable-next-line no-prototype-builtins
  if (queue.hasOwnProperty(id)) {
    var fn = queue[id];
    delete queue[id];
    fn();
  }
};
var listener = function (event) {
  run.call(event.data);
};
// Node.js 0.9+ & IE10+ has setImmediate, otherwise:
if (!setTask || !clearTask) {
  setTask = function setImmediate(fn) {
    var args = [];
    var i = 1;
    while (arguments.length > i) args.push(arguments[i++]);
    queue[++counter] = function () {
      // eslint-disable-next-line no-new-func
      invoke(typeof fn == 'function' ? fn : Function(fn), args);
    };
    defer(counter);
    return counter;
  };
  clearTask = function clearImmediate(id) {
    delete queue[id];
  };
  // Node.js 0.8-
  if (__webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js")(process) == 'process') {
    defer = function (id) {
      process.nextTick(ctx(run, id, 1));
    };
  // Sphere (JS game engine) Dispatch API
  } else if (Dispatch && Dispatch.now) {
    defer = function (id) {
      Dispatch.now(ctx(run, id, 1));
    };
  // Browsers with MessageChannel, includes WebWorkers
  } else if (MessageChannel) {
    channel = new MessageChannel();
    port = channel.port2;
    channel.port1.onmessage = listener;
    defer = ctx(port.postMessage, port, 1);
  // Browsers with postMessage, skip WebWorkers
  // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'
  } else if (global.addEventListener && typeof postMessage == 'function' && !global.importScripts) {
    defer = function (id) {
      global.postMessage(id + '', '*');
    };
    global.addEventListener('message', listener, false);
  // IE8-
  } else if (ONREADYSTATECHANGE in cel('script')) {
    defer = function (id) {
      html.appendChild(cel('script'))[ONREADYSTATECHANGE] = function () {
        html.removeChild(this);
        run.call(id);
      };
    };
  // Rest old browsers
  } else {
    defer = function (id) {
      setTimeout(ctx(run, id, 1), 0);
    };
  }
}
module.exports = {
  set: setTask,
  clear: clearTask
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_user-agent.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_user-agent.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var navigator = global.navigator;

module.exports = navigator && navigator.userAgent || '';


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.promise.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.promise.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/library/modules/_classof.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var anInstance = __webpack_require__(/*! ./_an-instance */ "../node_modules/core-js/library/modules/_an-instance.js");
var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");
var speciesConstructor = __webpack_require__(/*! ./_species-constructor */ "../node_modules/core-js/library/modules/_species-constructor.js");
var task = __webpack_require__(/*! ./_task */ "../node_modules/core-js/library/modules/_task.js").set;
var microtask = __webpack_require__(/*! ./_microtask */ "../node_modules/core-js/library/modules/_microtask.js")();
var newPromiseCapabilityModule = __webpack_require__(/*! ./_new-promise-capability */ "../node_modules/core-js/library/modules/_new-promise-capability.js");
var perform = __webpack_require__(/*! ./_perform */ "../node_modules/core-js/library/modules/_perform.js");
var userAgent = __webpack_require__(/*! ./_user-agent */ "../node_modules/core-js/library/modules/_user-agent.js");
var promiseResolve = __webpack_require__(/*! ./_promise-resolve */ "../node_modules/core-js/library/modules/_promise-resolve.js");
var PROMISE = 'Promise';
var TypeError = global.TypeError;
var process = global.process;
var versions = process && process.versions;
var v8 = versions && versions.v8 || '';
var $Promise = global[PROMISE];
var isNode = classof(process) == 'process';
var empty = function () { /* empty */ };
var Internal, newGenericPromiseCapability, OwnPromiseCapability, Wrapper;
var newPromiseCapability = newGenericPromiseCapability = newPromiseCapabilityModule.f;

var USE_NATIVE = !!function () {
  try {
    // correct subclassing with @@species support
    var promise = $Promise.resolve(1);
    var FakePromise = (promise.constructor = {})[__webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('species')] = function (exec) {
      exec(empty, empty);
    };
    // unhandled rejections tracking support, NodeJS Promise without it fails @@species test
    return (isNode || typeof PromiseRejectionEvent == 'function')
      && promise.then(empty) instanceof FakePromise
      // v8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables
      // https://bugs.chromium.org/p/chromium/issues/detail?id=830565
      // we can't detect it synchronously, so just check versions
      && v8.indexOf('6.6') !== 0
      && userAgent.indexOf('Chrome/66') === -1;
  } catch (e) { /* empty */ }
}();

// helpers
var isThenable = function (it) {
  var then;
  return isObject(it) && typeof (then = it.then) == 'function' ? then : false;
};
var notify = function (promise, isReject) {
  if (promise._n) return;
  promise._n = true;
  var chain = promise._c;
  microtask(function () {
    var value = promise._v;
    var ok = promise._s == 1;
    var i = 0;
    var run = function (reaction) {
      var handler = ok ? reaction.ok : reaction.fail;
      var resolve = reaction.resolve;
      var reject = reaction.reject;
      var domain = reaction.domain;
      var result, then, exited;
      try {
        if (handler) {
          if (!ok) {
            if (promise._h == 2) onHandleUnhandled(promise);
            promise._h = 1;
          }
          if (handler === true) result = value;
          else {
            if (domain) domain.enter();
            result = handler(value); // may throw
            if (domain) {
              domain.exit();
              exited = true;
            }
          }
          if (result === reaction.promise) {
            reject(TypeError('Promise-chain cycle'));
          } else if (then = isThenable(result)) {
            then.call(result, resolve, reject);
          } else resolve(result);
        } else reject(value);
      } catch (e) {
        if (domain && !exited) domain.exit();
        reject(e);
      }
    };
    while (chain.length > i) run(chain[i++]); // variable length - can't use forEach
    promise._c = [];
    promise._n = false;
    if (isReject && !promise._h) onUnhandled(promise);
  });
};
var onUnhandled = function (promise) {
  task.call(global, function () {
    var value = promise._v;
    var unhandled = isUnhandled(promise);
    var result, handler, console;
    if (unhandled) {
      result = perform(function () {
        if (isNode) {
          process.emit('unhandledRejection', value, promise);
        } else if (handler = global.onunhandledrejection) {
          handler({ promise: promise, reason: value });
        } else if ((console = global.console) && console.error) {
          console.error('Unhandled promise rejection', value);
        }
      });
      // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should
      promise._h = isNode || isUnhandled(promise) ? 2 : 1;
    } promise._a = undefined;
    if (unhandled && result.e) throw result.v;
  });
};
var isUnhandled = function (promise) {
  return promise._h !== 1 && (promise._a || promise._c).length === 0;
};
var onHandleUnhandled = function (promise) {
  task.call(global, function () {
    var handler;
    if (isNode) {
      process.emit('rejectionHandled', promise);
    } else if (handler = global.onrejectionhandled) {
      handler({ promise: promise, reason: promise._v });
    }
  });
};
var $reject = function (value) {
  var promise = this;
  if (promise._d) return;
  promise._d = true;
  promise = promise._w || promise; // unwrap
  promise._v = value;
  promise._s = 2;
  if (!promise._a) promise._a = promise._c.slice();
  notify(promise, true);
};
var $resolve = function (value) {
  var promise = this;
  var then;
  if (promise._d) return;
  promise._d = true;
  promise = promise._w || promise; // unwrap
  try {
    if (promise === value) throw TypeError("Promise can't be resolved itself");
    if (then = isThenable(value)) {
      microtask(function () {
        var wrapper = { _w: promise, _d: false }; // wrap
        try {
          then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1));
        } catch (e) {
          $reject.call(wrapper, e);
        }
      });
    } else {
      promise._v = value;
      promise._s = 1;
      notify(promise, false);
    }
  } catch (e) {
    $reject.call({ _w: promise, _d: false }, e); // wrap
  }
};

// constructor polyfill
if (!USE_NATIVE) {
  // 25.4.3.1 Promise(executor)
  $Promise = function Promise(executor) {
    anInstance(this, $Promise, PROMISE, '_h');
    aFunction(executor);
    Internal.call(this);
    try {
      executor(ctx($resolve, this, 1), ctx($reject, this, 1));
    } catch (err) {
      $reject.call(this, err);
    }
  };
  // eslint-disable-next-line no-unused-vars
  Internal = function Promise(executor) {
    this._c = [];             // <- awaiting reactions
    this._a = undefined;      // <- checked in isUnhandled reactions
    this._s = 0;              // <- state
    this._d = false;          // <- done
    this._v = undefined;      // <- value
    this._h = 0;              // <- rejection state, 0 - default, 1 - handled, 2 - unhandled
    this._n = false;          // <- notify
  };
  Internal.prototype = __webpack_require__(/*! ./_redefine-all */ "../node_modules/core-js/library/modules/_redefine-all.js")($Promise.prototype, {
    // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected)
    then: function then(onFulfilled, onRejected) {
      var reaction = newPromiseCapability(speciesConstructor(this, $Promise));
      reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;
      reaction.fail = typeof onRejected == 'function' && onRejected;
      reaction.domain = isNode ? process.domain : undefined;
      this._c.push(reaction);
      if (this._a) this._a.push(reaction);
      if (this._s) notify(this, false);
      return reaction.promise;
    },
    // 25.4.5.1 Promise.prototype.catch(onRejected)
    'catch': function (onRejected) {
      return this.then(undefined, onRejected);
    }
  });
  OwnPromiseCapability = function () {
    var promise = new Internal();
    this.promise = promise;
    this.resolve = ctx($resolve, promise, 1);
    this.reject = ctx($reject, promise, 1);
  };
  newPromiseCapabilityModule.f = newPromiseCapability = function (C) {
    return C === $Promise || C === Wrapper
      ? new OwnPromiseCapability(C)
      : newGenericPromiseCapability(C);
  };
}

$export($export.G + $export.W + $export.F * !USE_NATIVE, { Promise: $Promise });
__webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js")($Promise, PROMISE);
__webpack_require__(/*! ./_set-species */ "../node_modules/core-js/library/modules/_set-species.js")(PROMISE);
Wrapper = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js")[PROMISE];

// statics
$export($export.S + $export.F * !USE_NATIVE, PROMISE, {
  // 25.4.4.5 Promise.reject(r)
  reject: function reject(r) {
    var capability = newPromiseCapability(this);
    var $$reject = capability.reject;
    $$reject(r);
    return capability.promise;
  }
});
$export($export.S + $export.F * (LIBRARY || !USE_NATIVE), PROMISE, {
  // 25.4.4.6 Promise.resolve(x)
  resolve: function resolve(x) {
    return promiseResolve(LIBRARY && this === Wrapper ? $Promise : this, x);
  }
});
$export($export.S + $export.F * !(USE_NATIVE && __webpack_require__(/*! ./_iter-detect */ "../node_modules/core-js/library/modules/_iter-detect.js")(function (iter) {
  $Promise.all(iter)['catch'](empty);
})), PROMISE, {
  // 25.4.4.1 Promise.all(iterable)
  all: function all(iterable) {
    var C = this;
    var capability = newPromiseCapability(C);
    var resolve = capability.resolve;
    var reject = capability.reject;
    var result = perform(function () {
      var values = [];
      var index = 0;
      var remaining = 1;
      forOf(iterable, false, function (promise) {
        var $index = index++;
        var alreadyCalled = false;
        values.push(undefined);
        remaining++;
        C.resolve(promise).then(function (value) {
          if (alreadyCalled) return;
          alreadyCalled = true;
          values[$index] = value;
          --remaining || resolve(values);
        }, reject);
      });
      --remaining || resolve(values);
    });
    if (result.e) reject(result.v);
    return capability.promise;
  },
  // 25.4.4.4 Promise.race(iterable)
  race: function race(iterable) {
    var C = this;
    var capability = newPromiseCapability(C);
    var reject = capability.reject;
    var result = perform(function () {
      forOf(iterable, false, function (promise) {
        C.resolve(promise).then(capability.resolve, reject);
      });
    });
    if (result.e) reject(result.v);
    return capability.promise;
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.object.values.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.object.values.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://github.com/tc39/proposal-object-values-entries
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var $values = __webpack_require__(/*! ./_object-to-array */ "../node_modules/core-js/library/modules/_object-to-array.js")(false);

$export($export.S, 'Object', {
  values: function values(it) {
    return $values(it);
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.promise.finally.js":
/*!**********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.promise.finally.js ***!
  \**********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
// https://github.com/tc39/proposal-promise-finally

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var speciesConstructor = __webpack_require__(/*! ./_species-constructor */ "../node_modules/core-js/library/modules/_species-constructor.js");
var promiseResolve = __webpack_require__(/*! ./_promise-resolve */ "../node_modules/core-js/library/modules/_promise-resolve.js");

$export($export.P + $export.R, 'Promise', { 'finally': function (onFinally) {
  var C = speciesConstructor(this, core.Promise || global.Promise);
  var isFunction = typeof onFinally == 'function';
  return this.then(
    isFunction ? function (x) {
      return promiseResolve(C, onFinally()).then(function () { return x; });
    } : onFinally,
    isFunction ? function (e) {
      return promiseResolve(C, onFinally()).then(function () { throw e; });
    } : onFinally
  );
} });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.promise.try.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.promise.try.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// https://github.com/tc39/proposal-promise-try
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var newPromiseCapability = __webpack_require__(/*! ./_new-promise-capability */ "../node_modules/core-js/library/modules/_new-promise-capability.js");
var perform = __webpack_require__(/*! ./_perform */ "../node_modules/core-js/library/modules/_perform.js");

$export($export.S, 'Promise', { 'try': function (callbackfn) {
  var promiseCapability = newPromiseCapability.f(this);
  var result = perform(callbackfn);
  (result.e ? promiseCapability.reject : promiseCapability.resolve)(result.v);
  return promiseCapability.promise;
} });


/***/ }),

/***/ "../node_modules/match-sorter/dist/match-sorter.esm.js":
/*!*************************************************************!*\
  !*** ../node_modules/match-sorter/dist/match-sorter.esm.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "defaultBaseSortFn": () => (/* binding */ defaultBaseSortFn),
/* harmony export */   "matchSorter": () => (/* binding */ matchSorter),
/* harmony export */   "rankings": () => (/* binding */ rankings)
/* harmony export */ });
/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ "../node_modules/@babel/runtime/helpers/esm/extends.js");
/* harmony import */ var remove_accents__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! remove-accents */ "../node_modules/remove-accents/index.js");
/* harmony import */ var remove_accents__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(remove_accents__WEBPACK_IMPORTED_MODULE_1__);



var rankings = {
  CASE_SENSITIVE_EQUAL: 7,
  EQUAL: 6,
  STARTS_WITH: 5,
  WORD_STARTS_WITH: 4,
  CONTAINS: 3,
  ACRONYM: 2,
  MATCHES: 1,
  NO_MATCH: 0
};
matchSorter.rankings = rankings;

var defaultBaseSortFn = function defaultBaseSortFn(a, b) {
  return String(a.rankedValue).localeCompare(String(b.rankedValue));
};
/**
 * Takes an array of items and a value and returns a new array with the items that match the given value
 * @param {Array} items - the items to sort
 * @param {String} value - the value to use for ranking
 * @param {Object} options - Some options to configure the sorter
 * @return {Array} - the new sorted array
 */


function matchSorter(items, value, options) {
  if (options === void 0) {
    options = {};
  }

  var _options = options,
      keys = _options.keys,
      _options$threshold = _options.threshold,
      threshold = _options$threshold === void 0 ? rankings.MATCHES : _options$threshold,
      _options$baseSort = _options.baseSort,
      baseSort = _options$baseSort === void 0 ? defaultBaseSortFn : _options$baseSort,
      _options$sorter = _options.sorter,
      sorter = _options$sorter === void 0 ? function (matchedItems) {
    return matchedItems.sort(function (a, b) {
      return sortRankedValues(a, b, baseSort);
    });
  } : _options$sorter;
  var matchedItems = items.reduce(reduceItemsToRanked, []);
  return sorter(matchedItems).map(function (_ref) {
    var item = _ref.item;
    return item;
  });

  function reduceItemsToRanked(matches, item, index) {
    var rankingInfo = getHighestRanking(item, keys, value, options);
    var rank = rankingInfo.rank,
        _rankingInfo$keyThres = rankingInfo.keyThreshold,
        keyThreshold = _rankingInfo$keyThres === void 0 ? threshold : _rankingInfo$keyThres;

    if (rank >= keyThreshold) {
      matches.push((0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, rankingInfo, {
        item: item,
        index: index
      }));
    }

    return matches;
  }
}
/**
 * Gets the highest ranking for value for the given item based on its values for the given keys
 * @param {*} item - the item to rank
 * @param {Array} keys - the keys to get values from the item for the ranking
 * @param {String} value - the value to rank against
 * @param {Object} options - options to control the ranking
 * @return {{rank: Number, keyIndex: Number, keyThreshold: Number}} - the highest ranking
 */


function getHighestRanking(item, keys, value, options) {
  if (!keys) {
    // if keys is not specified, then we assume the item given is ready to be matched
    var stringItem = item;
    return {
      // ends up being duplicate of 'item' in matches but consistent
      rankedValue: stringItem,
      rank: getMatchRanking(stringItem, value, options),
      keyIndex: -1,
      keyThreshold: options.threshold
    };
  }

  var valuesToRank = getAllValuesToRank(item, keys);
  return valuesToRank.reduce(function (_ref2, _ref3, i) {
    var rank = _ref2.rank,
        rankedValue = _ref2.rankedValue,
        keyIndex = _ref2.keyIndex,
        keyThreshold = _ref2.keyThreshold;
    var itemValue = _ref3.itemValue,
        attributes = _ref3.attributes;
    var newRank = getMatchRanking(itemValue, value, options);
    var newRankedValue = rankedValue;
    var minRanking = attributes.minRanking,
        maxRanking = attributes.maxRanking,
        threshold = attributes.threshold;

    if (newRank < minRanking && newRank >= rankings.MATCHES) {
      newRank = minRanking;
    } else if (newRank > maxRanking) {
      newRank = maxRanking;
    }

    if (newRank > rank) {
      rank = newRank;
      keyIndex = i;
      keyThreshold = threshold;
      newRankedValue = itemValue;
    }

    return {
      rankedValue: newRankedValue,
      rank: rank,
      keyIndex: keyIndex,
      keyThreshold: keyThreshold
    };
  }, {
    rankedValue: item,
    rank: rankings.NO_MATCH,
    keyIndex: -1,
    keyThreshold: options.threshold
  });
}
/**
 * Gives a rankings score based on how well the two strings match.
 * @param {String} testString - the string to test against
 * @param {String} stringToRank - the string to rank
 * @param {Object} options - options for the match (like keepDiacritics for comparison)
 * @returns {Number} the ranking for how well stringToRank matches testString
 */


function getMatchRanking(testString, stringToRank, options) {
  testString = prepareValueForComparison(testString, options);
  stringToRank = prepareValueForComparison(stringToRank, options); // too long

  if (stringToRank.length > testString.length) {
    return rankings.NO_MATCH;
  } // case sensitive equals


  if (testString === stringToRank) {
    return rankings.CASE_SENSITIVE_EQUAL;
  } // Lower casing before further comparison


  testString = testString.toLowerCase();
  stringToRank = stringToRank.toLowerCase(); // case insensitive equals

  if (testString === stringToRank) {
    return rankings.EQUAL;
  } // starts with


  if (testString.startsWith(stringToRank)) {
    return rankings.STARTS_WITH;
  } // word starts with


  if (testString.includes(" " + stringToRank)) {
    return rankings.WORD_STARTS_WITH;
  } // contains


  if (testString.includes(stringToRank)) {
    return rankings.CONTAINS;
  } else if (stringToRank.length === 1) {
    // If the only character in the given stringToRank
    //   isn't even contained in the testString, then
    //   it's definitely not a match.
    return rankings.NO_MATCH;
  } // acronym


  if (getAcronym(testString).includes(stringToRank)) {
    return rankings.ACRONYM;
  } // will return a number between rankings.MATCHES and
  // rankings.MATCHES + 1 depending  on how close of a match it is.


  return getClosenessRanking(testString, stringToRank);
}
/**
 * Generates an acronym for a string.
 *
 * @param {String} string the string for which to produce the acronym
 * @returns {String} the acronym
 */


function getAcronym(string) {
  var acronym = '';
  var wordsInString = string.split(' ');
  wordsInString.forEach(function (wordInString) {
    var splitByHyphenWords = wordInString.split('-');
    splitByHyphenWords.forEach(function (splitByHyphenWord) {
      acronym += splitByHyphenWord.substr(0, 1);
    });
  });
  return acronym;
}
/**
 * Returns a score based on how spread apart the
 * characters from the stringToRank are within the testString.
 * A number close to rankings.MATCHES represents a loose match. A number close
 * to rankings.MATCHES + 1 represents a tighter match.
 * @param {String} testString - the string to test against
 * @param {String} stringToRank - the string to rank
 * @returns {Number} the number between rankings.MATCHES and
 * rankings.MATCHES + 1 for how well stringToRank matches testString
 */


function getClosenessRanking(testString, stringToRank) {
  var matchingInOrderCharCount = 0;
  var charNumber = 0;

  function findMatchingCharacter(matchChar, string, index) {
    for (var j = index, J = string.length; j < J; j++) {
      var stringChar = string[j];

      if (stringChar === matchChar) {
        matchingInOrderCharCount += 1;
        return j + 1;
      }
    }

    return -1;
  }

  function getRanking(spread) {
    var spreadPercentage = 1 / spread;
    var inOrderPercentage = matchingInOrderCharCount / stringToRank.length;
    var ranking = rankings.MATCHES + inOrderPercentage * spreadPercentage;
    return ranking;
  }

  var firstIndex = findMatchingCharacter(stringToRank[0], testString, 0);

  if (firstIndex < 0) {
    return rankings.NO_MATCH;
  }

  charNumber = firstIndex;

  for (var i = 1, I = stringToRank.length; i < I; i++) {
    var matchChar = stringToRank[i];
    charNumber = findMatchingCharacter(matchChar, testString, charNumber);
    var found = charNumber > -1;

    if (!found) {
      return rankings.NO_MATCH;
    }
  }

  var spread = charNumber - firstIndex;
  return getRanking(spread);
}
/**
 * Sorts items that have a rank, index, and keyIndex
 * @param {Object} a - the first item to sort
 * @param {Object} b - the second item to sort
 * @return {Number} -1 if a should come first, 1 if b should come first, 0 if equal
 */


function sortRankedValues(a, b, baseSort) {
  var aFirst = -1;
  var bFirst = 1;
  var aRank = a.rank,
      aKeyIndex = a.keyIndex;
  var bRank = b.rank,
      bKeyIndex = b.keyIndex;
  var same = aRank === bRank;

  if (same) {
    if (aKeyIndex === bKeyIndex) {
      // use the base sort function as a tie-breaker
      return baseSort(a, b);
    } else {
      return aKeyIndex < bKeyIndex ? aFirst : bFirst;
    }
  } else {
    return aRank > bRank ? aFirst : bFirst;
  }
}
/**
 * Prepares value for comparison by stringifying it, removing diacritics (if specified)
 * @param {String} value - the value to clean
 * @param {Object} options - {keepDiacritics: whether to remove diacritics}
 * @return {String} the prepared value
 */


function prepareValueForComparison(value, _ref4) {
  var keepDiacritics = _ref4.keepDiacritics;
  // value might not actually be a string at this point (we don't get to choose)
  // so part of preparing the value for comparison is ensure that it is a string
  value = "" + value; // toString

  if (!keepDiacritics) {
    value = remove_accents__WEBPACK_IMPORTED_MODULE_1___default()(value);
  }

  return value;
}
/**
 * Gets value for key in item at arbitrarily nested keypath
 * @param {Object} item - the item
 * @param {Object|Function} key - the potentially nested keypath or property callback
 * @return {Array} - an array containing the value(s) at the nested keypath
 */


function getItemValues(item, key) {
  if (typeof key === 'object') {
    key = key.key;
  }

  var value;

  if (typeof key === 'function') {
    value = key(item);
  } else if (item == null) {
    value = null;
  } else if (Object.hasOwnProperty.call(item, key)) {
    value = item[key];
  } else if (key.includes('.')) {
    // eslint-disable-next-line @typescript-eslint/no-unsafe-call
    return getNestedValues(key, item);
  } else {
    value = null;
  } // because `value` can also be undefined


  if (value == null) {
    return [];
  }

  if (Array.isArray(value)) {
    return value;
  }

  return [String(value)];
}
/**
 * Given path: "foo.bar.baz"
 * And item: {foo: {bar: {baz: 'buzz'}}}
 *   -> 'buzz'
 * @param path a dot-separated set of keys
 * @param item the item to get the value from
 */


function getNestedValues(path, item) {
  var keys = path.split('.');
  var values = [item];

  for (var i = 0, I = keys.length; i < I; i++) {
    var nestedKey = keys[i];
    var nestedValues = [];

    for (var j = 0, J = values.length; j < J; j++) {
      var nestedItem = values[j];
      if (nestedItem == null) continue;

      if (Object.hasOwnProperty.call(nestedItem, nestedKey)) {
        var nestedValue = nestedItem[nestedKey];

        if (nestedValue != null) {
          nestedValues.push(nestedValue);
        }
      } else if (nestedKey === '*') {
        // ensure that values is an array
        nestedValues = nestedValues.concat(nestedItem);
      }
    }

    values = nestedValues;
  }

  if (Array.isArray(values[0])) {
    // keep allowing the implicit wildcard for an array of strings at the end of
    // the path; don't use `.flat()` because that's not available in node.js v10
    var result = [];
    return result.concat.apply(result, values);
  } // Based on our logic it should be an array of strings by now...
  // assuming the user's path terminated in strings


  return values;
}
/**
 * Gets all the values for the given keys in the given item and returns an array of those values
 * @param item - the item from which the values will be retrieved
 * @param keys - the keys to use to retrieve the values
 * @return objects with {itemValue, attributes}
 */


function getAllValuesToRank(item, keys) {
  var allValues = [];

  for (var j = 0, J = keys.length; j < J; j++) {
    var key = keys[j];
    var attributes = getKeyAttributes(key);
    var itemValues = getItemValues(item, key);

    for (var i = 0, I = itemValues.length; i < I; i++) {
      allValues.push({
        itemValue: itemValues[i],
        attributes: attributes
      });
    }
  }

  return allValues;
}

var defaultKeyAttributes = {
  maxRanking: Infinity,
  minRanking: -Infinity
};
/**
 * Gets all the attributes for the given key
 * @param key - the key from which the attributes will be retrieved
 * @return object containing the key's attributes
 */

function getKeyAttributes(key) {
  if (typeof key === 'string') {
    return defaultKeyAttributes;
  }

  return (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, defaultKeyAttributes, key);
}
/*
eslint
  no-continue: "off",
*/




/***/ }),

/***/ "../node_modules/react-query/devtools/index.js":
/*!*****************************************************!*\
  !*** ../node_modules/react-query/devtools/index.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

if (false) {} else {
  module.exports = __webpack_require__(/*! ./development */ "../node_modules/react-query/es/devtools/index.js")
}


/***/ }),

/***/ "../node_modules/react-query/es/core/focusManager.js":
/*!***********************************************************!*\
  !*** ../node_modules/react-query/es/core/focusManager.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "focusManager": () => (/* binding */ focusManager)
/* harmony export */ });
/* harmony import */ var _babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/inheritsLoose */ "../node_modules/@babel/runtime/helpers/esm/inheritsLoose.js");
/* harmony import */ var _subscribable__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./subscribable */ "../node_modules/react-query/es/core/subscribable.js");
/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utils */ "../node_modules/react-query/es/core/utils.js");




var FocusManager = /*#__PURE__*/function (_Subscribable) {
  (0,_babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_0__.default)(FocusManager, _Subscribable);

  function FocusManager() {
    return _Subscribable.apply(this, arguments) || this;
  }

  var _proto = FocusManager.prototype;

  _proto.onSubscribe = function onSubscribe() {
    if (!this.removeEventListener) {
      this.setDefaultEventListener();
    }
  };

  _proto.setEventListener = function setEventListener(setup) {
    var _this = this;

    if (this.removeEventListener) {
      this.removeEventListener();
    }

    this.removeEventListener = setup(function (focused) {
      if (typeof focused === 'boolean') {
        _this.setFocused(focused);
      } else {
        _this.onFocus();
      }
    });
  };

  _proto.setFocused = function setFocused(focused) {
    this.focused = focused;

    if (focused) {
      this.onFocus();
    }
  };

  _proto.onFocus = function onFocus() {
    this.listeners.forEach(function (listener) {
      listener();
    });
  };

  _proto.isFocused = function isFocused() {
    if (typeof this.focused === 'boolean') {
      return this.focused;
    } // document global can be unavailable in react native


    if (typeof document === 'undefined') {
      return true;
    }

    return [undefined, 'visible', 'prerender'].includes(document.visibilityState);
  };

  _proto.setDefaultEventListener = function setDefaultEventListener() {
    var _window;

    if (!_utils__WEBPACK_IMPORTED_MODULE_1__.isServer && ((_window = window) == null ? void 0 : _window.addEventListener)) {
      this.setEventListener(function (onFocus) {
        var listener = function listener() {
          return onFocus();
        }; // Listen to visibillitychange and focus


        window.addEventListener('visibilitychange', listener, false);
        window.addEventListener('focus', listener, false);
        return function () {
          // Be sure to unsubscribe if a new handler is set
          window.removeEventListener('visibilitychange', listener);
          window.removeEventListener('focus', listener);
        };
      });
    }
  };

  return FocusManager;
}(_subscribable__WEBPACK_IMPORTED_MODULE_2__.Subscribable);

var focusManager = new FocusManager();

/***/ }),

/***/ "../node_modules/react-query/es/core/index.js":
/*!****************************************************!*\
  !*** ../node_modules/react-query/es/core/index.js ***!
  \****************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "CancelledError": () => (/* reexport safe */ _retryer__WEBPACK_IMPORTED_MODULE_0__.CancelledError),
/* harmony export */   "QueryCache": () => (/* reexport safe */ _queryCache__WEBPACK_IMPORTED_MODULE_1__.QueryCache),
/* harmony export */   "QueryClient": () => (/* reexport safe */ _queryClient__WEBPACK_IMPORTED_MODULE_2__.QueryClient),
/* harmony export */   "QueryObserver": () => (/* reexport safe */ _queryObserver__WEBPACK_IMPORTED_MODULE_3__.QueryObserver),
/* harmony export */   "QueriesObserver": () => (/* reexport safe */ _queriesObserver__WEBPACK_IMPORTED_MODULE_4__.QueriesObserver),
/* harmony export */   "InfiniteQueryObserver": () => (/* reexport safe */ _infiniteQueryObserver__WEBPACK_IMPORTED_MODULE_5__.InfiniteQueryObserver),
/* harmony export */   "MutationCache": () => (/* reexport safe */ _mutationCache__WEBPACK_IMPORTED_MODULE_6__.MutationCache),
/* harmony export */   "MutationObserver": () => (/* reexport safe */ _mutationObserver__WEBPACK_IMPORTED_MODULE_7__.MutationObserver),
/* harmony export */   "setLogger": () => (/* reexport safe */ _logger__WEBPACK_IMPORTED_MODULE_8__.setLogger),
/* harmony export */   "notifyManager": () => (/* reexport safe */ _notifyManager__WEBPACK_IMPORTED_MODULE_9__.notifyManager),
/* harmony export */   "focusManager": () => (/* reexport safe */ _focusManager__WEBPACK_IMPORTED_MODULE_10__.focusManager),
/* harmony export */   "onlineManager": () => (/* reexport safe */ _onlineManager__WEBPACK_IMPORTED_MODULE_11__.onlineManager),
/* harmony export */   "hashQueryKey": () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_12__.hashQueryKey),
/* harmony export */   "isError": () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_12__.isError),
/* harmony export */   "isCancelledError": () => (/* reexport safe */ _retryer__WEBPACK_IMPORTED_MODULE_0__.isCancelledError)
/* harmony export */ });
/* harmony import */ var _retryer__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./retryer */ "../node_modules/react-query/es/core/retryer.js");
/* harmony import */ var _queryCache__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./queryCache */ "../node_modules/react-query/es/core/queryCache.js");
/* harmony import */ var _queryClient__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./queryClient */ "../node_modules/react-query/es/core/queryClient.js");
/* harmony import */ var _queryObserver__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./queryObserver */ "../node_modules/react-query/es/core/queryObserver.js");
/* harmony import */ var _queriesObserver__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./queriesObserver */ "../node_modules/react-query/es/core/queriesObserver.js");
/* harmony import */ var _infiniteQueryObserver__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./infiniteQueryObserver */ "../node_modules/react-query/es/core/infiniteQueryObserver.js");
/* harmony import */ var _mutationCache__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./mutationCache */ "../node_modules/react-query/es/core/mutationCache.js");
/* harmony import */ var _mutationObserver__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./mutationObserver */ "../node_modules/react-query/es/core/mutationObserver.js");
/* harmony import */ var _logger__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./logger */ "../node_modules/react-query/es/core/logger.js");
/* harmony import */ var _notifyManager__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./notifyManager */ "../node_modules/react-query/es/core/notifyManager.js");
/* harmony import */ var _focusManager__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./focusManager */ "../node_modules/react-query/es/core/focusManager.js");
/* harmony import */ var _onlineManager__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./onlineManager */ "../node_modules/react-query/es/core/onlineManager.js");
/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./utils */ "../node_modules/react-query/es/core/utils.js");
/* harmony import */ var _types__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./types */ "../node_modules/react-query/es/core/types.js");
/* harmony import */ var _types__WEBPACK_IMPORTED_MODULE_13___default = /*#__PURE__*/__webpack_require__.n(_types__WEBPACK_IMPORTED_MODULE_13__);
/* harmony reexport (unknown) */ var __WEBPACK_REEXPORT_OBJECT__ = {};
/* harmony reexport (unknown) */ for(const __WEBPACK_IMPORT_KEY__ in _types__WEBPACK_IMPORTED_MODULE_13__) if(["default","CancelledError","QueryCache","QueryClient","QueryObserver","QueriesObserver","InfiniteQueryObserver","MutationCache","MutationObserver","setLogger","notifyManager","focusManager","onlineManager","hashQueryKey","isError","isCancelledError"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = () => _types__WEBPACK_IMPORTED_MODULE_13__[__WEBPACK_IMPORT_KEY__]
/* harmony reexport (unknown) */ __webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__);













 // Types



/***/ }),

/***/ "../node_modules/react-query/es/core/infiniteQueryBehavior.js":
/*!********************************************************************!*\
  !*** ../node_modules/react-query/es/core/infiniteQueryBehavior.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "infiniteQueryBehavior": () => (/* binding */ infiniteQueryBehavior),
/* harmony export */   "getNextPageParam": () => (/* binding */ getNextPageParam),
/* harmony export */   "getPreviousPageParam": () => (/* binding */ getPreviousPageParam),
/* harmony export */   "hasNextPage": () => (/* binding */ hasNextPage),
/* harmony export */   "hasPreviousPage": () => (/* binding */ hasPreviousPage)
/* harmony export */ });
/* harmony import */ var _retryer__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./retryer */ "../node_modules/react-query/es/core/retryer.js");

function infiniteQueryBehavior() {
  return {
    onFetch: function onFetch(context) {
      context.fetchFn = function () {
        var _context$fetchOptions, _context$fetchOptions2, _context$state$data, _context$state$data2;

        var fetchMore = (_context$fetchOptions = context.fetchOptions) == null ? void 0 : (_context$fetchOptions2 = _context$fetchOptions.meta) == null ? void 0 : _context$fetchOptions2.fetchMore;
        var pageParam = fetchMore == null ? void 0 : fetchMore.pageParam;
        var isFetchingNextPage = (fetchMore == null ? void 0 : fetchMore.direction) === 'forward';
        var isFetchingPreviousPage = (fetchMore == null ? void 0 : fetchMore.direction) === 'backward';
        var oldPages = ((_context$state$data = context.state.data) == null ? void 0 : _context$state$data.pages) || [];
        var oldPageParams = ((_context$state$data2 = context.state.data) == null ? void 0 : _context$state$data2.pageParams) || [];
        var newPageParams = oldPageParams;
        var cancelled = false; // Get query function

        var queryFn = context.options.queryFn || function () {
          return Promise.reject('Missing queryFn');
        }; // Create function to fetch a page


        var fetchPage = function fetchPage(pages, manual, param, previous) {
          if (cancelled) {
            return Promise.reject('Cancelled');
          }

          if (typeof param === 'undefined' && !manual && pages.length) {
            return Promise.resolve(pages);
          }

          var queryFnContext = {
            queryKey: context.queryKey,
            pageParam: param
          };
          var queryFnResult = queryFn(queryFnContext);
          var promise = Promise.resolve(queryFnResult).then(function (page) {
            newPageParams = previous ? [param].concat(newPageParams) : [].concat(newPageParams, [param]);
            return previous ? [page].concat(pages) : [].concat(pages, [page]);
          });

          if ((0,_retryer__WEBPACK_IMPORTED_MODULE_0__.isCancelable)(queryFnResult)) {
            var promiseAsAny = promise;
            promiseAsAny.cancel = queryFnResult.cancel;
          }

          return promise;
        };

        var promise; // Fetch first page?

        if (!oldPages.length) {
          promise = fetchPage([]);
        } // Fetch next page?
        else if (isFetchingNextPage) {
            var manual = typeof pageParam !== 'undefined';
            var param = manual ? pageParam : getNextPageParam(context.options, oldPages);
            promise = fetchPage(oldPages, manual, param);
          } // Fetch previous page?
          else if (isFetchingPreviousPage) {
              var _manual = typeof pageParam !== 'undefined';

              var _param = _manual ? pageParam : getPreviousPageParam(context.options, oldPages);

              promise = fetchPage(oldPages, _manual, _param, true);
            } // Refetch pages
            else {
                (function () {
                  newPageParams = [];
                  var manual = typeof context.options.getNextPageParam === 'undefined'; // Fetch first page

                  promise = fetchPage([], manual, oldPageParams[0]); // Fetch remaining pages

                  var _loop = function _loop(i) {
                    promise = promise.then(function (pages) {
                      var param = manual ? oldPageParams[i] : getNextPageParam(context.options, pages);
                      return fetchPage(pages, manual, param);
                    });
                  };

                  for (var i = 1; i < oldPages.length; i++) {
                    _loop(i);
                  }
                })();
              }

        var finalPromise = promise.then(function (pages) {
          return {
            pages: pages,
            pageParams: newPageParams
          };
        });
        var finalPromiseAsAny = finalPromise;

        finalPromiseAsAny.cancel = function () {
          cancelled = true;

          if ((0,_retryer__WEBPACK_IMPORTED_MODULE_0__.isCancelable)(promise)) {
            promise.cancel();
          }
        };

        return finalPromise;
      };
    }
  };
}
function getNextPageParam(options, pages) {
  return options.getNextPageParam == null ? void 0 : options.getNextPageParam(pages[pages.length - 1], pages);
}
function getPreviousPageParam(options, pages) {
  return options.getPreviousPageParam == null ? void 0 : options.getPreviousPageParam(pages[0], pages);
}
/**
 * Checks if there is a next page.
 * Returns `undefined` if it cannot be determined.
 */

function hasNextPage(options, pages) {
  if (options.getNextPageParam && Array.isArray(pages)) {
    var nextPageParam = getNextPageParam(options, pages);
    return typeof nextPageParam !== 'undefined' && nextPageParam !== null && nextPageParam !== false;
  }
}
/**
 * Checks if there is a previous page.
 * Returns `undefined` if it cannot be determined.
 */

function hasPreviousPage(options, pages) {
  if (options.getPreviousPageParam && Array.isArray(pages)) {
    var previousPageParam = getPreviousPageParam(options, pages);
    return typeof previousPageParam !== 'undefined' && previousPageParam !== null && previousPageParam !== false;
  }
}

/***/ }),

/***/ "../node_modules/react-query/es/core/infiniteQueryObserver.js":
/*!********************************************************************!*\
  !*** ../node_modules/react-query/es/core/infiniteQueryObserver.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "InfiniteQueryObserver": () => (/* binding */ InfiniteQueryObserver)
/* harmony export */ });
/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ "../node_modules/@babel/runtime/helpers/esm/extends.js");
/* harmony import */ var _babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/esm/inheritsLoose */ "../node_modules/@babel/runtime/helpers/esm/inheritsLoose.js");
/* harmony import */ var _queryObserver__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./queryObserver */ "../node_modules/react-query/es/core/queryObserver.js");
/* harmony import */ var _infiniteQueryBehavior__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./infiniteQueryBehavior */ "../node_modules/react-query/es/core/infiniteQueryBehavior.js");




var InfiniteQueryObserver = /*#__PURE__*/function (_QueryObserver) {
  (0,_babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_1__.default)(InfiniteQueryObserver, _QueryObserver);

  // Type override
  // Type override
  // Type override
  // eslint-disable-next-line @typescript-eslint/no-useless-constructor
  function InfiniteQueryObserver(client, options) {
    return _QueryObserver.call(this, client, options) || this;
  }

  var _proto = InfiniteQueryObserver.prototype;

  _proto.bindMethods = function bindMethods() {
    _QueryObserver.prototype.bindMethods.call(this);

    this.fetchNextPage = this.fetchNextPage.bind(this);
    this.fetchPreviousPage = this.fetchPreviousPage.bind(this);
  };

  _proto.setOptions = function setOptions(options) {
    _QueryObserver.prototype.setOptions.call(this, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, options, {
      behavior: (0,_infiniteQueryBehavior__WEBPACK_IMPORTED_MODULE_2__.infiniteQueryBehavior)()
    }));
  };

  _proto.getOptimisticResult = function getOptimisticResult(options) {
    options.behavior = (0,_infiniteQueryBehavior__WEBPACK_IMPORTED_MODULE_2__.infiniteQueryBehavior)();
    return _QueryObserver.prototype.getOptimisticResult.call(this, options);
  };

  _proto.fetchNextPage = function fetchNextPage(options) {
    return this.fetch({
      cancelRefetch: true,
      throwOnError: options == null ? void 0 : options.throwOnError,
      meta: {
        fetchMore: {
          direction: 'forward',
          pageParam: options == null ? void 0 : options.pageParam
        }
      }
    });
  };

  _proto.fetchPreviousPage = function fetchPreviousPage(options) {
    return this.fetch({
      cancelRefetch: true,
      throwOnError: options == null ? void 0 : options.throwOnError,
      meta: {
        fetchMore: {
          direction: 'backward',
          pageParam: options == null ? void 0 : options.pageParam
        }
      }
    });
  };

  _proto.createResult = function createResult(query, options) {
    var _state$data, _state$data2, _state$fetchMeta, _state$fetchMeta$fetc, _state$fetchMeta2, _state$fetchMeta2$fet;

    var state = query.state;

    var result = _QueryObserver.prototype.createResult.call(this, query, options);

    return (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, result, {
      fetchNextPage: this.fetchNextPage,
      fetchPreviousPage: this.fetchPreviousPage,
      hasNextPage: (0,_infiniteQueryBehavior__WEBPACK_IMPORTED_MODULE_2__.hasNextPage)(options, (_state$data = state.data) == null ? void 0 : _state$data.pages),
      hasPreviousPage: (0,_infiniteQueryBehavior__WEBPACK_IMPORTED_MODULE_2__.hasPreviousPage)(options, (_state$data2 = state.data) == null ? void 0 : _state$data2.pages),
      isFetchingNextPage: state.isFetching && ((_state$fetchMeta = state.fetchMeta) == null ? void 0 : (_state$fetchMeta$fetc = _state$fetchMeta.fetchMore) == null ? void 0 : _state$fetchMeta$fetc.direction) === 'forward',
      isFetchingPreviousPage: state.isFetching && ((_state$fetchMeta2 = state.fetchMeta) == null ? void 0 : (_state$fetchMeta2$fet = _state$fetchMeta2.fetchMore) == null ? void 0 : _state$fetchMeta2$fet.direction) === 'backward'
    });
  };

  return InfiniteQueryObserver;
}(_queryObserver__WEBPACK_IMPORTED_MODULE_3__.QueryObserver);

/***/ }),

/***/ "../node_modules/react-query/es/core/logger.js":
/*!*****************************************************!*\
  !*** ../node_modules/react-query/es/core/logger.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "getLogger": () => (/* binding */ getLogger),
/* harmony export */   "setLogger": () => (/* binding */ setLogger)
/* harmony export */ });
/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./utils */ "../node_modules/react-query/es/core/utils.js");
 // TYPES

// FUNCTIONS
var logger = console || {
  error: _utils__WEBPACK_IMPORTED_MODULE_0__.noop,
  warn: _utils__WEBPACK_IMPORTED_MODULE_0__.noop,
  log: _utils__WEBPACK_IMPORTED_MODULE_0__.noop
};
function getLogger() {
  return logger;
}
function setLogger(newLogger) {
  logger = newLogger;
}

/***/ }),

/***/ "../node_modules/react-query/es/core/mutation.js":
/*!*******************************************************!*\
  !*** ../node_modules/react-query/es/core/mutation.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "Mutation": () => (/* binding */ Mutation),
/* harmony export */   "getDefaultState": () => (/* binding */ getDefaultState)
/* harmony export */ });
/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ "../node_modules/@babel/runtime/helpers/esm/extends.js");
/* harmony import */ var _logger__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./logger */ "../node_modules/react-query/es/core/logger.js");
/* harmony import */ var _notifyManager__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./notifyManager */ "../node_modules/react-query/es/core/notifyManager.js");
/* harmony import */ var _retryer__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./retryer */ "../node_modules/react-query/es/core/retryer.js");
/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utils */ "../node_modules/react-query/es/core/utils.js");




 // TYPES

// CLASS
var Mutation = /*#__PURE__*/function () {
  function Mutation(config) {
    this.options = (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, config.defaultOptions, config.options);
    this.mutationId = config.mutationId;
    this.mutationCache = config.mutationCache;
    this.observers = [];
    this.state = config.state || getDefaultState();
  }

  var _proto = Mutation.prototype;

  _proto.setState = function setState(state) {
    this.dispatch({
      type: 'setState',
      state: state
    });
  };

  _proto.addObserver = function addObserver(observer) {
    if (this.observers.indexOf(observer) === -1) {
      this.observers.push(observer);
    }
  };

  _proto.removeObserver = function removeObserver(observer) {
    this.observers = this.observers.filter(function (x) {
      return x !== observer;
    });
  };

  _proto.cancel = function cancel() {
    if (this.retryer) {
      this.retryer.cancel();
      return this.retryer.promise.then(_utils__WEBPACK_IMPORTED_MODULE_1__.noop).catch(_utils__WEBPACK_IMPORTED_MODULE_1__.noop);
    }

    return Promise.resolve();
  };

  _proto.continue = function _continue() {
    if (this.retryer) {
      this.retryer.continue();
      return this.retryer.promise;
    }

    return this.execute();
  };

  _proto.execute = function execute() {
    var _this = this;

    var data;
    var restored = this.state.status === 'loading';
    var promise = Promise.resolve();

    if (!restored) {
      this.dispatch({
        type: 'loading',
        variables: this.options.variables
      });
      promise = promise.then(function () {
        return _this.options.onMutate == null ? void 0 : _this.options.onMutate(_this.state.variables);
      }).then(function (context) {
        if (context !== _this.state.context) {
          _this.dispatch({
            type: 'loading',
            context: context,
            variables: _this.state.variables
          });
        }
      });
    }

    return promise.then(function () {
      return _this.executeMutation();
    }).then(function (result) {
      data = result; // Notify cache callback

      _this.mutationCache.config.onSuccess == null ? void 0 : _this.mutationCache.config.onSuccess(data, _this.state.variables, _this.state.context, _this);
    }).then(function () {
      return _this.options.onSuccess == null ? void 0 : _this.options.onSuccess(data, _this.state.variables, _this.state.context);
    }).then(function () {
      return _this.options.onSettled == null ? void 0 : _this.options.onSettled(data, null, _this.state.variables, _this.state.context);
    }).then(function () {
      _this.dispatch({
        type: 'success',
        data: data
      });

      return data;
    }).catch(function (error) {
      // Notify cache callback
      _this.mutationCache.config.onError == null ? void 0 : _this.mutationCache.config.onError(error, _this.state.variables, _this.state.context, _this); // Log error

      (0,_logger__WEBPACK_IMPORTED_MODULE_2__.getLogger)().error(error);
      return Promise.resolve().then(function () {
        return _this.options.onError == null ? void 0 : _this.options.onError(error, _this.state.variables, _this.state.context);
      }).then(function () {
        return _this.options.onSettled == null ? void 0 : _this.options.onSettled(undefined, error, _this.state.variables, _this.state.context);
      }).then(function () {
        _this.dispatch({
          type: 'error',
          error: error
        });

        throw error;
      });
    });
  };

  _proto.executeMutation = function executeMutation() {
    var _this2 = this,
        _this$options$retry;

    this.retryer = new _retryer__WEBPACK_IMPORTED_MODULE_3__.Retryer({
      fn: function fn() {
        if (!_this2.options.mutationFn) {
          return Promise.reject('No mutationFn found');
        }

        return _this2.options.mutationFn(_this2.state.variables);
      },
      onFail: function onFail() {
        _this2.dispatch({
          type: 'failed'
        });
      },
      onPause: function onPause() {
        _this2.dispatch({
          type: 'pause'
        });
      },
      onContinue: function onContinue() {
        _this2.dispatch({
          type: 'continue'
        });
      },
      retry: (_this$options$retry = this.options.retry) != null ? _this$options$retry : 0,
      retryDelay: this.options.retryDelay
    });
    return this.retryer.promise;
  };

  _proto.dispatch = function dispatch(action) {
    var _this3 = this;

    this.state = reducer(this.state, action);
    _notifyManager__WEBPACK_IMPORTED_MODULE_4__.notifyManager.batch(function () {
      _this3.observers.forEach(function (observer) {
        observer.onMutationUpdate(action);
      });

      _this3.mutationCache.notify(_this3);
    });
  };

  return Mutation;
}();
function getDefaultState() {
  return {
    context: undefined,
    data: undefined,
    error: null,
    failureCount: 0,
    isPaused: false,
    status: 'idle',
    variables: undefined
  };
}

function reducer(state, action) {
  switch (action.type) {
    case 'failed':
      return (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, state, {
        failureCount: state.failureCount + 1
      });

    case 'pause':
      return (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, state, {
        isPaused: true
      });

    case 'continue':
      return (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, state, {
        isPaused: false
      });

    case 'loading':
      return (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, state, {
        context: action.context,
        data: undefined,
        error: null,
        isPaused: false,
        status: 'loading',
        variables: action.variables
      });

    case 'success':
      return (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, state, {
        data: action.data,
        error: null,
        status: 'success',
        isPaused: false
      });

    case 'error':
      return (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, state, {
        data: undefined,
        error: action.error,
        failureCount: state.failureCount + 1,
        isPaused: false,
        status: 'error'
      });

    case 'setState':
      return (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, state, action.state);

    default:
      return state;
  }
}

/***/ }),

/***/ "../node_modules/react-query/es/core/mutationCache.js":
/*!************************************************************!*\
  !*** ../node_modules/react-query/es/core/mutationCache.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "MutationCache": () => (/* binding */ MutationCache)
/* harmony export */ });
/* harmony import */ var _babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/inheritsLoose */ "../node_modules/@babel/runtime/helpers/esm/inheritsLoose.js");
/* harmony import */ var _notifyManager__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./notifyManager */ "../node_modules/react-query/es/core/notifyManager.js");
/* harmony import */ var _mutation__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./mutation */ "../node_modules/react-query/es/core/mutation.js");
/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./utils */ "../node_modules/react-query/es/core/utils.js");
/* harmony import */ var _subscribable__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./subscribable */ "../node_modules/react-query/es/core/subscribable.js");




 // TYPES

// CLASS
var MutationCache = /*#__PURE__*/function (_Subscribable) {
  (0,_babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_0__.default)(MutationCache, _Subscribable);

  function MutationCache(config) {
    var _this;

    _this = _Subscribable.call(this) || this;
    _this.config = config || {};
    _this.mutations = [];
    _this.mutationId = 0;
    return _this;
  }

  var _proto = MutationCache.prototype;

  _proto.build = function build(client, options, state) {
    var mutation = new _mutation__WEBPACK_IMPORTED_MODULE_1__.Mutation({
      mutationCache: this,
      mutationId: ++this.mutationId,
      options: client.defaultMutationOptions(options),
      state: state,
      defaultOptions: options.mutationKey ? client.getMutationDefaults(options.mutationKey) : undefined
    });
    this.add(mutation);
    return mutation;
  };

  _proto.add = function add(mutation) {
    this.mutations.push(mutation);
    this.notify(mutation);
  };

  _proto.remove = function remove(mutation) {
    this.mutations = this.mutations.filter(function (x) {
      return x !== mutation;
    });
    mutation.cancel();
    this.notify(mutation);
  };

  _proto.clear = function clear() {
    var _this2 = this;

    _notifyManager__WEBPACK_IMPORTED_MODULE_2__.notifyManager.batch(function () {
      _this2.mutations.forEach(function (mutation) {
        _this2.remove(mutation);
      });
    });
  };

  _proto.getAll = function getAll() {
    return this.mutations;
  };

  _proto.find = function find(filters) {
    if (typeof filters.exact === 'undefined') {
      filters.exact = true;
    }

    return this.mutations.find(function (mutation) {
      return (0,_utils__WEBPACK_IMPORTED_MODULE_3__.matchMutation)(filters, mutation);
    });
  };

  _proto.findAll = function findAll(filters) {
    return this.mutations.filter(function (mutation) {
      return (0,_utils__WEBPACK_IMPORTED_MODULE_3__.matchMutation)(filters, mutation);
    });
  };

  _proto.notify = function notify(mutation) {
    var _this3 = this;

    _notifyManager__WEBPACK_IMPORTED_MODULE_2__.notifyManager.batch(function () {
      _this3.listeners.forEach(function (listener) {
        listener(mutation);
      });
    });
  };

  _proto.onFocus = function onFocus() {
    this.resumePausedMutations();
  };

  _proto.onOnline = function onOnline() {
    this.resumePausedMutations();
  };

  _proto.resumePausedMutations = function resumePausedMutations() {
    var pausedMutations = this.mutations.filter(function (x) {
      return x.state.isPaused;
    });
    return _notifyManager__WEBPACK_IMPORTED_MODULE_2__.notifyManager.batch(function () {
      return pausedMutations.reduce(function (promise, mutation) {
        return promise.then(function () {
          return mutation.continue().catch(_utils__WEBPACK_IMPORTED_MODULE_3__.noop);
        });
      }, Promise.resolve());
    });
  };

  return MutationCache;
}(_subscribable__WEBPACK_IMPORTED_MODULE_4__.Subscribable);

/***/ }),

/***/ "../node_modules/react-query/es/core/mutationObserver.js":
/*!***************************************************************!*\
  !*** ../node_modules/react-query/es/core/mutationObserver.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "MutationObserver": () => (/* binding */ MutationObserver)
/* harmony export */ });
/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ "../node_modules/@babel/runtime/helpers/esm/extends.js");
/* harmony import */ var _babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/esm/inheritsLoose */ "../node_modules/@babel/runtime/helpers/esm/inheritsLoose.js");
/* harmony import */ var _mutation__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./mutation */ "../node_modules/react-query/es/core/mutation.js");
/* harmony import */ var _notifyManager__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./notifyManager */ "../node_modules/react-query/es/core/notifyManager.js");
/* harmony import */ var _subscribable__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./subscribable */ "../node_modules/react-query/es/core/subscribable.js");





// CLASS
var MutationObserver = /*#__PURE__*/function (_Subscribable) {
  (0,_babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_1__.default)(MutationObserver, _Subscribable);

  function MutationObserver(client, options) {
    var _this;

    _this = _Subscribable.call(this) || this;
    _this.client = client;

    _this.setOptions(options);

    _this.bindMethods();

    _this.updateResult();

    return _this;
  }

  var _proto = MutationObserver.prototype;

  _proto.bindMethods = function bindMethods() {
    this.mutate = this.mutate.bind(this);
    this.reset = this.reset.bind(this);
  };

  _proto.setOptions = function setOptions(options) {
    this.options = this.client.defaultMutationOptions(options);
  };

  _proto.onUnsubscribe = function onUnsubscribe() {
    if (!this.listeners.length) {
      var _this$currentMutation;

      (_this$currentMutation = this.currentMutation) == null ? void 0 : _this$currentMutation.removeObserver(this);
    }
  };

  _proto.onMutationUpdate = function onMutationUpdate(action) {
    this.updateResult(); // Determine which callbacks to trigger

    var notifyOptions = {
      listeners: true
    };

    if (action.type === 'success') {
      notifyOptions.onSuccess = true;
    } else if (action.type === 'error') {
      notifyOptions.onError = true;
    }

    this.notify(notifyOptions);
  };

  _proto.getCurrentResult = function getCurrentResult() {
    return this.currentResult;
  };

  _proto.reset = function reset() {
    this.currentMutation = undefined;
    this.updateResult();
    this.notify({
      listeners: true
    });
  };

  _proto.mutate = function mutate(variables, options) {
    this.mutateOptions = options;

    if (this.currentMutation) {
      this.currentMutation.removeObserver(this);
    }

    this.currentMutation = this.client.getMutationCache().build(this.client, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, this.options, {
      variables: typeof variables !== 'undefined' ? variables : this.options.variables
    }));
    this.currentMutation.addObserver(this);
    return this.currentMutation.execute();
  };

  _proto.updateResult = function updateResult() {
    var state = this.currentMutation ? this.currentMutation.state : (0,_mutation__WEBPACK_IMPORTED_MODULE_2__.getDefaultState)();
    this.currentResult = (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, state, {
      isLoading: state.status === 'loading',
      isSuccess: state.status === 'success',
      isError: state.status === 'error',
      isIdle: state.status === 'idle',
      mutate: this.mutate,
      reset: this.reset
    });
  };

  _proto.notify = function notify(options) {
    var _this2 = this;

    _notifyManager__WEBPACK_IMPORTED_MODULE_3__.notifyManager.batch(function () {
      // First trigger the mutate callbacks
      if (_this2.mutateOptions) {
        if (options.onSuccess) {
          _this2.mutateOptions.onSuccess == null ? void 0 : _this2.mutateOptions.onSuccess(_this2.currentResult.data, _this2.currentResult.variables, _this2.currentResult.context);
          _this2.mutateOptions.onSettled == null ? void 0 : _this2.mutateOptions.onSettled(_this2.currentResult.data, null, _this2.currentResult.variables, _this2.currentResult.context);
        } else if (options.onError) {
          _this2.mutateOptions.onError == null ? void 0 : _this2.mutateOptions.onError(_this2.currentResult.error, _this2.currentResult.variables, _this2.currentResult.context);
          _this2.mutateOptions.onSettled == null ? void 0 : _this2.mutateOptions.onSettled(undefined, _this2.currentResult.error, _this2.currentResult.variables, _this2.currentResult.context);
        }
      } // Then trigger the listeners


      if (options.listeners) {
        _this2.listeners.forEach(function (listener) {
          listener(_this2.currentResult);
        });
      }
    });
  };

  return MutationObserver;
}(_subscribable__WEBPACK_IMPORTED_MODULE_4__.Subscribable);

/***/ }),

/***/ "../node_modules/react-query/es/core/notifyManager.js":
/*!************************************************************!*\
  !*** ../node_modules/react-query/es/core/notifyManager.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "notifyManager": () => (/* binding */ notifyManager)
/* harmony export */ });
/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./utils */ "../node_modules/react-query/es/core/utils.js");
 // TYPES

// CLASS
var NotifyManager = /*#__PURE__*/function () {
  function NotifyManager() {
    this.queue = [];
    this.transactions = 0;

    this.notifyFn = function (callback) {
      callback();
    };

    this.batchNotifyFn = function (callback) {
      callback();
    };
  }

  var _proto = NotifyManager.prototype;

  _proto.batch = function batch(callback) {
    this.transactions++;
    var result = callback();
    this.transactions--;

    if (!this.transactions) {
      this.flush();
    }

    return result;
  };

  _proto.schedule = function schedule(callback) {
    var _this = this;

    if (this.transactions) {
      this.queue.push(callback);
    } else {
      (0,_utils__WEBPACK_IMPORTED_MODULE_0__.scheduleMicrotask)(function () {
        _this.notifyFn(callback);
      });
    }
  }
  /**
   * All calls to the wrapped function will be batched.
   */
  ;

  _proto.batchCalls = function batchCalls(callback) {
    var _this2 = this;

    return function () {
      for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
        args[_key] = arguments[_key];
      }

      _this2.schedule(function () {
        callback.apply(void 0, args);
      });
    };
  };

  _proto.flush = function flush() {
    var _this3 = this;

    var queue = this.queue;
    this.queue = [];

    if (queue.length) {
      (0,_utils__WEBPACK_IMPORTED_MODULE_0__.scheduleMicrotask)(function () {
        _this3.batchNotifyFn(function () {
          queue.forEach(function (callback) {
            _this3.notifyFn(callback);
          });
        });
      });
    }
  }
  /**
   * Use this method to set a custom notify function.
   * This can be used to for example wrap notifications with `React.act` while running tests.
   */
  ;

  _proto.setNotifyFunction = function setNotifyFunction(fn) {
    this.notifyFn = fn;
  }
  /**
   * Use this method to set a custom function to batch notifications together into a single tick.
   * By default React Query will use the batch function provided by ReactDOM or React Native.
   */
  ;

  _proto.setBatchNotifyFunction = function setBatchNotifyFunction(fn) {
    this.batchNotifyFn = fn;
  };

  return NotifyManager;
}(); // SINGLETON


var notifyManager = new NotifyManager();

/***/ }),

/***/ "../node_modules/react-query/es/core/onlineManager.js":
/*!************************************************************!*\
  !*** ../node_modules/react-query/es/core/onlineManager.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "onlineManager": () => (/* binding */ onlineManager)
/* harmony export */ });
/* harmony import */ var _babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/inheritsLoose */ "../node_modules/@babel/runtime/helpers/esm/inheritsLoose.js");
/* harmony import */ var _subscribable__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./subscribable */ "../node_modules/react-query/es/core/subscribable.js");
/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utils */ "../node_modules/react-query/es/core/utils.js");




var OnlineManager = /*#__PURE__*/function (_Subscribable) {
  (0,_babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_0__.default)(OnlineManager, _Subscribable);

  function OnlineManager() {
    return _Subscribable.apply(this, arguments) || this;
  }

  var _proto = OnlineManager.prototype;

  _proto.onSubscribe = function onSubscribe() {
    if (!this.removeEventListener) {
      this.setDefaultEventListener();
    }
  };

  _proto.setEventListener = function setEventListener(setup) {
    var _this = this;

    if (this.removeEventListener) {
      this.removeEventListener();
    }

    this.removeEventListener = setup(function (online) {
      if (typeof online === 'boolean') {
        _this.setOnline(online);
      } else {
        _this.onOnline();
      }
    });
  };

  _proto.setOnline = function setOnline(online) {
    this.online = online;

    if (online) {
      this.onOnline();
    }
  };

  _proto.onOnline = function onOnline() {
    this.listeners.forEach(function (listener) {
      listener();
    });
  };

  _proto.isOnline = function isOnline() {
    if (typeof this.online === 'boolean') {
      return this.online;
    }

    if (typeof navigator === 'undefined' || typeof navigator.onLine === 'undefined') {
      return true;
    }

    return navigator.onLine;
  };

  _proto.setDefaultEventListener = function setDefaultEventListener() {
    var _window;

    if (!_utils__WEBPACK_IMPORTED_MODULE_1__.isServer && ((_window = window) == null ? void 0 : _window.addEventListener)) {
      this.setEventListener(function (onOnline) {
        var listener = function listener() {
          return onOnline();
        }; // Listen to online


        window.addEventListener('online', listener, false);
        window.addEventListener('offline', listener, false);
        return function () {
          // Be sure to unsubscribe if a new handler is set
          window.removeEventListener('online', listener);
          window.removeEventListener('offline', listener);
        };
      });
    }
  };

  return OnlineManager;
}(_subscribable__WEBPACK_IMPORTED_MODULE_2__.Subscribable);

var onlineManager = new OnlineManager();

/***/ }),

/***/ "../node_modules/react-query/es/core/queriesObserver.js":
/*!**************************************************************!*\
  !*** ../node_modules/react-query/es/core/queriesObserver.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "QueriesObserver": () => (/* binding */ QueriesObserver)
/* harmony export */ });
/* harmony import */ var _babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/inheritsLoose */ "../node_modules/@babel/runtime/helpers/esm/inheritsLoose.js");
/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./utils */ "../node_modules/react-query/es/core/utils.js");
/* harmony import */ var _notifyManager__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./notifyManager */ "../node_modules/react-query/es/core/notifyManager.js");
/* harmony import */ var _queryObserver__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./queryObserver */ "../node_modules/react-query/es/core/queryObserver.js");
/* harmony import */ var _subscribable__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./subscribable */ "../node_modules/react-query/es/core/subscribable.js");





var QueriesObserver = /*#__PURE__*/function (_Subscribable) {
  (0,_babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_0__.default)(QueriesObserver, _Subscribable);

  function QueriesObserver(client, queries) {
    var _this;

    _this = _Subscribable.call(this) || this;
    _this.client = client;
    _this.queries = [];
    _this.result = [];
    _this.observers = [];
    _this.observersMap = {};

    if (queries) {
      _this.setQueries(queries);
    }

    return _this;
  }

  var _proto = QueriesObserver.prototype;

  _proto.onSubscribe = function onSubscribe() {
    var _this2 = this;

    if (this.listeners.length === 1) {
      this.observers.forEach(function (observer) {
        observer.subscribe(function (result) {
          _this2.onUpdate(observer, result);
        });
      });
    }
  };

  _proto.onUnsubscribe = function onUnsubscribe() {
    if (!this.listeners.length) {
      this.destroy();
    }
  };

  _proto.destroy = function destroy() {
    this.listeners = [];
    this.observers.forEach(function (observer) {
      observer.destroy();
    });
  };

  _proto.setQueries = function setQueries(queries, notifyOptions) {
    this.queries = queries;
    this.updateObservers(notifyOptions);
  };

  _proto.getCurrentResult = function getCurrentResult() {
    return this.result;
  };

  _proto.getOptimisticResult = function getOptimisticResult(queries) {
    var _this3 = this;

    return queries.map(function (options) {
      var defaultedOptions = _this3.client.defaultQueryObserverOptions(options);

      return _this3.getObserver(defaultedOptions).getOptimisticResult(defaultedOptions);
    });
  };

  _proto.getObserver = function getObserver(options) {
    var defaultedOptions = this.client.defaultQueryObserverOptions(options);
    return this.observersMap[defaultedOptions.queryHash] || new _queryObserver__WEBPACK_IMPORTED_MODULE_1__.QueryObserver(this.client, defaultedOptions);
  };

  _proto.updateObservers = function updateObservers(notifyOptions) {
    var _this4 = this;

    _notifyManager__WEBPACK_IMPORTED_MODULE_2__.notifyManager.batch(function () {
      var hasIndexChange = false;
      var prevObservers = _this4.observers;
      var prevOberversMap = _this4.observersMap;
      var newResult = [];
      var newObservers = [];
      var newObserversMap = {};

      _this4.queries.forEach(function (options, i) {
        var defaultedOptions = _this4.client.defaultQueryObserverOptions(options);

        var queryHash = defaultedOptions.queryHash;

        var observer = _this4.getObserver(defaultedOptions);

        if (prevOberversMap[queryHash]) {
          observer.setOptions(defaultedOptions, notifyOptions);
        }

        if (observer !== prevObservers[i]) {
          hasIndexChange = true;
        }

        newObservers.push(observer);
        newResult.push(observer.getCurrentResult());
        newObserversMap[queryHash] = observer;
      });

      if (prevObservers.length === newObservers.length && !hasIndexChange) {
        return;
      }

      _this4.observers = newObservers;
      _this4.observersMap = newObserversMap;
      _this4.result = newResult;

      if (!_this4.hasListeners()) {
        return;
      }

      (0,_utils__WEBPACK_IMPORTED_MODULE_3__.difference)(prevObservers, newObservers).forEach(function (observer) {
        observer.destroy();
      });
      (0,_utils__WEBPACK_IMPORTED_MODULE_3__.difference)(newObservers, prevObservers).forEach(function (observer) {
        observer.subscribe(function (result) {
          _this4.onUpdate(observer, result);
        });
      });

      _this4.notify();
    });
  };

  _proto.onUpdate = function onUpdate(observer, result) {
    var index = this.observers.indexOf(observer);

    if (index !== -1) {
      this.result = (0,_utils__WEBPACK_IMPORTED_MODULE_3__.replaceAt)(this.result, index, result);
      this.notify();
    }
  };

  _proto.notify = function notify() {
    var _this5 = this;

    _notifyManager__WEBPACK_IMPORTED_MODULE_2__.notifyManager.batch(function () {
      _this5.listeners.forEach(function (listener) {
        listener(_this5.result);
      });
    });
  };

  return QueriesObserver;
}(_subscribable__WEBPACK_IMPORTED_MODULE_4__.Subscribable);

/***/ }),

/***/ "../node_modules/react-query/es/core/query.js":
/*!****************************************************!*\
  !*** ../node_modules/react-query/es/core/query.js ***!
  \****************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "Query": () => (/* binding */ Query)
/* harmony export */ });
/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ "../node_modules/@babel/runtime/helpers/esm/extends.js");
/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utils */ "../node_modules/react-query/es/core/utils.js");
/* harmony import */ var _notifyManager__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./notifyManager */ "../node_modules/react-query/es/core/notifyManager.js");
/* harmony import */ var _logger__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./logger */ "../node_modules/react-query/es/core/logger.js");
/* harmony import */ var _retryer__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./retryer */ "../node_modules/react-query/es/core/retryer.js");




 // TYPES

// CLASS
var Query = /*#__PURE__*/function () {
  function Query(config) {
    this.defaultOptions = config.defaultOptions;
    this.setOptions(config.options);
    this.observers = [];
    this.cache = config.cache;
    this.queryKey = config.queryKey;
    this.queryHash = config.queryHash;
    this.initialState = config.state || this.getDefaultState(this.options);
    this.state = this.initialState;
    this.scheduleGc();
  }

  var _proto = Query.prototype;

  _proto.setOptions = function setOptions(options) {
    var _this$options$cacheTi;

    this.options = (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, this.defaultOptions, options); // Default to 5 minutes if not cache time is set

    this.cacheTime = Math.max(this.cacheTime || 0, (_this$options$cacheTi = this.options.cacheTime) != null ? _this$options$cacheTi : 5 * 60 * 1000);
  };

  _proto.setDefaultOptions = function setDefaultOptions(options) {
    this.defaultOptions = options;
  };

  _proto.scheduleGc = function scheduleGc() {
    var _this = this;

    this.clearGcTimeout();

    if ((0,_utils__WEBPACK_IMPORTED_MODULE_1__.isValidTimeout)(this.cacheTime)) {
      this.gcTimeout = setTimeout(function () {
        _this.optionalRemove();
      }, this.cacheTime);
    }
  };

  _proto.clearGcTimeout = function clearGcTimeout() {
    clearTimeout(this.gcTimeout);
    this.gcTimeout = undefined;
  };

  _proto.optionalRemove = function optionalRemove() {
    if (!this.observers.length && !this.state.isFetching) {
      this.cache.remove(this);
    }
  };

  _proto.setData = function setData(updater, options) {
    var _this$options$isDataE, _this$options;

    var prevData = this.state.data; // Get the new data

    var data = (0,_utils__WEBPACK_IMPORTED_MODULE_1__.functionalUpdate)(updater, prevData); // Use prev data if an isDataEqual function is defined and returns `true`

    if ((_this$options$isDataE = (_this$options = this.options).isDataEqual) == null ? void 0 : _this$options$isDataE.call(_this$options, prevData, data)) {
      data = prevData;
    } else if (this.options.structuralSharing !== false) {
      // Structurally share data between prev and new data if needed
      data = (0,_utils__WEBPACK_IMPORTED_MODULE_1__.replaceEqualDeep)(prevData, data);
    } // Set data and mark it as cached


    this.dispatch({
      data: data,
      type: 'success',
      dataUpdatedAt: options == null ? void 0 : options.updatedAt
    });
    return data;
  };

  _proto.setState = function setState(state, setStateOptions) {
    this.dispatch({
      type: 'setState',
      state: state,
      setStateOptions: setStateOptions
    });
  };

  _proto.cancel = function cancel(options) {
    var _this$retryer;

    var promise = this.promise;
    (_this$retryer = this.retryer) == null ? void 0 : _this$retryer.cancel(options);
    return promise ? promise.then(_utils__WEBPACK_IMPORTED_MODULE_1__.noop).catch(_utils__WEBPACK_IMPORTED_MODULE_1__.noop) : Promise.resolve();
  };

  _proto.destroy = function destroy() {
    this.clearGcTimeout();
    this.cancel({
      silent: true
    });
  };

  _proto.reset = function reset() {
    this.destroy();
    this.setState(this.initialState);
  };

  _proto.isActive = function isActive() {
    return this.observers.some(function (observer) {
      return observer.options.enabled !== false;
    });
  };

  _proto.isFetching = function isFetching() {
    return this.state.isFetching;
  };

  _proto.isStale = function isStale() {
    return this.state.isInvalidated || !this.state.dataUpdatedAt || this.observers.some(function (observer) {
      return observer.getCurrentResult().isStale;
    });
  };

  _proto.isStaleByTime = function isStaleByTime(staleTime) {
    if (staleTime === void 0) {
      staleTime = 0;
    }

    return this.state.isInvalidated || !this.state.dataUpdatedAt || !(0,_utils__WEBPACK_IMPORTED_MODULE_1__.timeUntilStale)(this.state.dataUpdatedAt, staleTime);
  };

  _proto.onFocus = function onFocus() {
    var _this$retryer2;

    var observer = this.observers.find(function (x) {
      return x.shouldFetchOnWindowFocus();
    });

    if (observer) {
      observer.refetch();
    } // Continue fetch if currently paused


    (_this$retryer2 = this.retryer) == null ? void 0 : _this$retryer2.continue();
  };

  _proto.onOnline = function onOnline() {
    var _this$retryer3;

    var observer = this.observers.find(function (x) {
      return x.shouldFetchOnReconnect();
    });

    if (observer) {
      observer.refetch();
    } // Continue fetch if currently paused


    (_this$retryer3 = this.retryer) == null ? void 0 : _this$retryer3.continue();
  };

  _proto.addObserver = function addObserver(observer) {
    if (this.observers.indexOf(observer) === -1) {
      this.observers.push(observer); // Stop the query from being garbage collected

      this.clearGcTimeout();
      this.cache.notify({
        type: 'observerAdded',
        query: this,
        observer: observer
      });
    }
  };

  _proto.removeObserver = function removeObserver(observer) {
    if (this.observers.indexOf(observer) !== -1) {
      this.observers = this.observers.filter(function (x) {
        return x !== observer;
      });

      if (!this.observers.length) {
        // If the transport layer does not support cancellation
        // we'll let the query continue so the result can be cached
        if (this.retryer) {
          if (this.retryer.isTransportCancelable) {
            this.retryer.cancel({
              revert: true
            });
          } else {
            this.retryer.cancelRetry();
          }
        }

        if (this.cacheTime) {
          this.scheduleGc();
        } else {
          this.cache.remove(this);
        }
      }

      this.cache.notify({
        type: 'observerRemoved',
        query: this,
        observer: observer
      });
    }
  };

  _proto.getObserversCount = function getObserversCount() {
    return this.observers.length;
  };

  _proto.invalidate = function invalidate() {
    if (!this.state.isInvalidated) {
      this.dispatch({
        type: 'invalidate'
      });
    }
  };

  _proto.fetch = function fetch(options, fetchOptions) {
    var _this2 = this,
        _this$options$behavio,
        _context$fetchOptions;

    if (this.state.isFetching) {
      if (this.state.dataUpdatedAt && (fetchOptions == null ? void 0 : fetchOptions.cancelRefetch)) {
        // Silently cancel current fetch if the user wants to cancel refetches
        this.cancel({
          silent: true
        });
      } else if (this.promise) {
        // Return current promise if we are already fetching
        return this.promise;
      }
    } // Update config if passed, otherwise the config from the last execution is used


    if (options) {
      this.setOptions(options);
    } // Use the options from the first observer with a query function if no function is found.
    // This can happen when the query is hydrated or created with setQueryData.


    if (!this.options.queryFn) {
      var observer = this.observers.find(function (x) {
        return x.options.queryFn;
      });

      if (observer) {
        this.setOptions(observer.options);
      }
    }

    var queryKey = (0,_utils__WEBPACK_IMPORTED_MODULE_1__.ensureQueryKeyArray)(this.queryKey); // Create query function context

    var queryFnContext = {
      queryKey: queryKey,
      pageParam: undefined
    }; // Create fetch function

    var fetchFn = function fetchFn() {
      return _this2.options.queryFn ? _this2.options.queryFn(queryFnContext) : Promise.reject('Missing queryFn');
    }; // Trigger behavior hook


    var context = {
      fetchOptions: fetchOptions,
      options: this.options,
      queryKey: queryKey,
      state: this.state,
      fetchFn: fetchFn
    };

    if ((_this$options$behavio = this.options.behavior) == null ? void 0 : _this$options$behavio.onFetch) {
      var _this$options$behavio2;

      (_this$options$behavio2 = this.options.behavior) == null ? void 0 : _this$options$behavio2.onFetch(context);
    } // Store state in case the current fetch needs to be reverted


    this.revertState = this.state; // Set to fetching state if not already in it

    if (!this.state.isFetching || this.state.fetchMeta !== ((_context$fetchOptions = context.fetchOptions) == null ? void 0 : _context$fetchOptions.meta)) {
      var _context$fetchOptions2;

      this.dispatch({
        type: 'fetch',
        meta: (_context$fetchOptions2 = context.fetchOptions) == null ? void 0 : _context$fetchOptions2.meta
      });
    } // Try to fetch the data


    this.retryer = new _retryer__WEBPACK_IMPORTED_MODULE_2__.Retryer({
      fn: context.fetchFn,
      onSuccess: function onSuccess(data) {
        _this2.setData(data); // Notify cache callback


        _this2.cache.config.onSuccess == null ? void 0 : _this2.cache.config.onSuccess(data, _this2); // Remove query after fetching if cache time is 0

        if (_this2.cacheTime === 0) {
          _this2.optionalRemove();
        }
      },
      onError: function onError(error) {
        // Optimistically update state if needed
        if (!((0,_retryer__WEBPACK_IMPORTED_MODULE_2__.isCancelledError)(error) && error.silent)) {
          _this2.dispatch({
            type: 'error',
            error: error
          });
        }

        if (!(0,_retryer__WEBPACK_IMPORTED_MODULE_2__.isCancelledError)(error)) {
          // Notify cache callback
          _this2.cache.config.onError == null ? void 0 : _this2.cache.config.onError(error, _this2); // Log error

          (0,_logger__WEBPACK_IMPORTED_MODULE_3__.getLogger)().error(error);
        } // Remove query after fetching if cache time is 0


        if (_this2.cacheTime === 0) {
          _this2.optionalRemove();
        }
      },
      onFail: function onFail() {
        _this2.dispatch({
          type: 'failed'
        });
      },
      onPause: function onPause() {
        _this2.dispatch({
          type: 'pause'
        });
      },
      onContinue: function onContinue() {
        _this2.dispatch({
          type: 'continue'
        });
      },
      retry: context.options.retry,
      retryDelay: context.options.retryDelay
    });
    this.promise = this.retryer.promise;
    return this.promise;
  };

  _proto.dispatch = function dispatch(action) {
    var _this3 = this;

    this.state = this.reducer(this.state, action);
    _notifyManager__WEBPACK_IMPORTED_MODULE_4__.notifyManager.batch(function () {
      _this3.observers.forEach(function (observer) {
        observer.onQueryUpdate(action);
      });

      _this3.cache.notify({
        query: _this3,
        type: 'queryUpdated',
        action: action
      });
    });
  };

  _proto.getDefaultState = function getDefaultState(options) {
    var data = typeof options.initialData === 'function' ? options.initialData() : options.initialData;
    var hasInitialData = typeof options.initialData !== 'undefined';
    var initialDataUpdatedAt = hasInitialData ? typeof options.initialDataUpdatedAt === 'function' ? options.initialDataUpdatedAt() : options.initialDataUpdatedAt : 0;
    var hasData = typeof data !== 'undefined';
    return {
      data: data,
      dataUpdateCount: 0,
      dataUpdatedAt: hasData ? initialDataUpdatedAt != null ? initialDataUpdatedAt : Date.now() : 0,
      error: null,
      errorUpdateCount: 0,
      errorUpdatedAt: 0,
      fetchFailureCount: 0,
      fetchMeta: null,
      isFetching: false,
      isInvalidated: false,
      isPaused: false,
      status: hasData ? 'success' : 'idle'
    };
  };

  _proto.reducer = function reducer(state, action) {
    var _action$meta, _action$dataUpdatedAt;

    switch (action.type) {
      case 'failed':
        return (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, state, {
          fetchFailureCount: state.fetchFailureCount + 1
        });

      case 'pause':
        return (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, state, {
          isPaused: true
        });

      case 'continue':
        return (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, state, {
          isPaused: false
        });

      case 'fetch':
        return (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, state, {
          fetchFailureCount: 0,
          fetchMeta: (_action$meta = action.meta) != null ? _action$meta : null,
          isFetching: true,
          isPaused: false,
          status: !state.dataUpdatedAt ? 'loading' : state.status
        });

      case 'success':
        return (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, state, {
          data: action.data,
          dataUpdateCount: state.dataUpdateCount + 1,
          dataUpdatedAt: (_action$dataUpdatedAt = action.dataUpdatedAt) != null ? _action$dataUpdatedAt : Date.now(),
          error: null,
          fetchFailureCount: 0,
          isFetching: false,
          isInvalidated: false,
          isPaused: false,
          status: 'success'
        });

      case 'error':
        var error = action.error;

        if ((0,_retryer__WEBPACK_IMPORTED_MODULE_2__.isCancelledError)(error) && error.revert && this.revertState) {
          return (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, this.revertState);
        }

        return (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, state, {
          error: error,
          errorUpdateCount: state.errorUpdateCount + 1,
          errorUpdatedAt: Date.now(),
          fetchFailureCount: state.fetchFailureCount + 1,
          isFetching: false,
          isPaused: false,
          status: 'error'
        });

      case 'invalidate':
        return (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, state, {
          isInvalidated: true
        });

      case 'setState':
        return (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, state, action.state);

      default:
        return state;
    }
  };

  return Query;
}();

/***/ }),

/***/ "../node_modules/react-query/es/core/queryCache.js":
/*!*********************************************************!*\
  !*** ../node_modules/react-query/es/core/queryCache.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "QueryCache": () => (/* binding */ QueryCache)
/* harmony export */ });
/* harmony import */ var _babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/inheritsLoose */ "../node_modules/@babel/runtime/helpers/esm/inheritsLoose.js");
/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utils */ "../node_modules/react-query/es/core/utils.js");
/* harmony import */ var _query__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./query */ "../node_modules/react-query/es/core/query.js");
/* harmony import */ var _notifyManager__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./notifyManager */ "../node_modules/react-query/es/core/notifyManager.js");
/* harmony import */ var _subscribable__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./subscribable */ "../node_modules/react-query/es/core/subscribable.js");





// CLASS
var QueryCache = /*#__PURE__*/function (_Subscribable) {
  (0,_babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_0__.default)(QueryCache, _Subscribable);

  function QueryCache(config) {
    var _this;

    _this = _Subscribable.call(this) || this;
    _this.config = config || {};
    _this.queries = [];
    _this.queriesMap = {};
    return _this;
  }

  var _proto = QueryCache.prototype;

  _proto.build = function build(client, options, state) {
    var _options$queryHash;

    var queryKey = options.queryKey;
    var queryHash = (_options$queryHash = options.queryHash) != null ? _options$queryHash : (0,_utils__WEBPACK_IMPORTED_MODULE_1__.hashQueryKeyByOptions)(queryKey, options);
    var query = this.get(queryHash);

    if (!query) {
      query = new _query__WEBPACK_IMPORTED_MODULE_2__.Query({
        cache: this,
        queryKey: queryKey,
        queryHash: queryHash,
        options: client.defaultQueryOptions(options),
        state: state,
        defaultOptions: client.getQueryDefaults(queryKey)
      });
      this.add(query);
    }

    return query;
  };

  _proto.add = function add(query) {
    if (!this.queriesMap[query.queryHash]) {
      this.queriesMap[query.queryHash] = query;
      this.queries.push(query);
      this.notify({
        type: 'queryAdded',
        query: query
      });
    }
  };

  _proto.remove = function remove(query) {
    var queryInMap = this.queriesMap[query.queryHash];

    if (queryInMap) {
      query.destroy();
      this.queries = this.queries.filter(function (x) {
        return x !== query;
      });

      if (queryInMap === query) {
        delete this.queriesMap[query.queryHash];
      }

      this.notify({
        type: 'queryRemoved',
        query: query
      });
    }
  };

  _proto.clear = function clear() {
    var _this2 = this;

    _notifyManager__WEBPACK_IMPORTED_MODULE_3__.notifyManager.batch(function () {
      _this2.queries.forEach(function (query) {
        _this2.remove(query);
      });
    });
  };

  _proto.get = function get(queryHash) {
    return this.queriesMap[queryHash];
  };

  _proto.getAll = function getAll() {
    return this.queries;
  };

  _proto.find = function find(arg1, arg2) {
    var _parseFilterArgs = (0,_utils__WEBPACK_IMPORTED_MODULE_1__.parseFilterArgs)(arg1, arg2),
        filters = _parseFilterArgs[0];

    if (typeof filters.exact === 'undefined') {
      filters.exact = true;
    }

    return this.queries.find(function (query) {
      return (0,_utils__WEBPACK_IMPORTED_MODULE_1__.matchQuery)(filters, query);
    });
  };

  _proto.findAll = function findAll(arg1, arg2) {
    var _parseFilterArgs2 = (0,_utils__WEBPACK_IMPORTED_MODULE_1__.parseFilterArgs)(arg1, arg2),
        filters = _parseFilterArgs2[0];

    return filters ? this.queries.filter(function (query) {
      return (0,_utils__WEBPACK_IMPORTED_MODULE_1__.matchQuery)(filters, query);
    }) : this.queries;
  };

  _proto.notify = function notify(event) {
    var _this3 = this;

    _notifyManager__WEBPACK_IMPORTED_MODULE_3__.notifyManager.batch(function () {
      _this3.listeners.forEach(function (listener) {
        listener(event);
      });
    });
  };

  _proto.onFocus = function onFocus() {
    var _this4 = this;

    _notifyManager__WEBPACK_IMPORTED_MODULE_3__.notifyManager.batch(function () {
      _this4.queries.forEach(function (query) {
        query.onFocus();
      });
    });
  };

  _proto.onOnline = function onOnline() {
    var _this5 = this;

    _notifyManager__WEBPACK_IMPORTED_MODULE_3__.notifyManager.batch(function () {
      _this5.queries.forEach(function (query) {
        query.onOnline();
      });
    });
  };

  return QueryCache;
}(_subscribable__WEBPACK_IMPORTED_MODULE_4__.Subscribable);

/***/ }),

/***/ "../node_modules/react-query/es/core/queryClient.js":
/*!**********************************************************!*\
  !*** ../node_modules/react-query/es/core/queryClient.js ***!
  \**********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "QueryClient": () => (/* binding */ QueryClient)
/* harmony export */ });
/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ "../node_modules/@babel/runtime/helpers/esm/extends.js");
/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./utils */ "../node_modules/react-query/es/core/utils.js");
/* harmony import */ var _queryCache__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./queryCache */ "../node_modules/react-query/es/core/queryCache.js");
/* harmony import */ var _mutationCache__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./mutationCache */ "../node_modules/react-query/es/core/mutationCache.js");
/* harmony import */ var _focusManager__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./focusManager */ "../node_modules/react-query/es/core/focusManager.js");
/* harmony import */ var _onlineManager__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./onlineManager */ "../node_modules/react-query/es/core/onlineManager.js");
/* harmony import */ var _notifyManager__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./notifyManager */ "../node_modules/react-query/es/core/notifyManager.js");
/* harmony import */ var _infiniteQueryBehavior__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./infiniteQueryBehavior */ "../node_modules/react-query/es/core/infiniteQueryBehavior.js");







 // TYPES

// CLASS
var QueryClient = /*#__PURE__*/function () {
  function QueryClient(config) {
    if (config === void 0) {
      config = {};
    }

    this.queryCache = config.queryCache || new _queryCache__WEBPACK_IMPORTED_MODULE_1__.QueryCache();
    this.mutationCache = config.mutationCache || new _mutationCache__WEBPACK_IMPORTED_MODULE_2__.MutationCache();
    this.defaultOptions = config.defaultOptions || {};
    this.queryDefaults = [];
    this.mutationDefaults = [];
  }

  var _proto = QueryClient.prototype;

  _proto.mount = function mount() {
    var _this = this;

    this.unsubscribeFocus = _focusManager__WEBPACK_IMPORTED_MODULE_3__.focusManager.subscribe(function () {
      if (_focusManager__WEBPACK_IMPORTED_MODULE_3__.focusManager.isFocused() && _onlineManager__WEBPACK_IMPORTED_MODULE_4__.onlineManager.isOnline()) {
        _this.mutationCache.onFocus();

        _this.queryCache.onFocus();
      }
    });
    this.unsubscribeOnline = _onlineManager__WEBPACK_IMPORTED_MODULE_4__.onlineManager.subscribe(function () {
      if (_focusManager__WEBPACK_IMPORTED_MODULE_3__.focusManager.isFocused() && _onlineManager__WEBPACK_IMPORTED_MODULE_4__.onlineManager.isOnline()) {
        _this.mutationCache.onOnline();

        _this.queryCache.onOnline();
      }
    });
  };

  _proto.unmount = function unmount() {
    var _this$unsubscribeFocu, _this$unsubscribeOnli;

    (_this$unsubscribeFocu = this.unsubscribeFocus) == null ? void 0 : _this$unsubscribeFocu.call(this);
    (_this$unsubscribeOnli = this.unsubscribeOnline) == null ? void 0 : _this$unsubscribeOnli.call(this);
  };

  _proto.isFetching = function isFetching(arg1, arg2) {
    var _parseFilterArgs = (0,_utils__WEBPACK_IMPORTED_MODULE_5__.parseFilterArgs)(arg1, arg2),
        filters = _parseFilterArgs[0];

    filters.fetching = true;
    return this.queryCache.findAll(filters).length;
  };

  _proto.isMutating = function isMutating(filters) {
    return this.mutationCache.findAll((0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, filters, {
      fetching: true
    })).length;
  };

  _proto.getQueryData = function getQueryData(queryKey, filters) {
    var _this$queryCache$find;

    return (_this$queryCache$find = this.queryCache.find(queryKey, filters)) == null ? void 0 : _this$queryCache$find.state.data;
  };

  _proto.setQueryData = function setQueryData(queryKey, updater, options) {
    var parsedOptions = (0,_utils__WEBPACK_IMPORTED_MODULE_5__.parseQueryArgs)(queryKey);
    var defaultedOptions = this.defaultQueryOptions(parsedOptions);
    return this.queryCache.build(this, defaultedOptions).setData(updater, options);
  };

  _proto.setQueriesData = function setQueriesData(queryKeyOrFilters, updater, options) {
    var _this2 = this;

    return _notifyManager__WEBPACK_IMPORTED_MODULE_6__.notifyManager.batch(function () {
      return _this2.getQueryCache().findAll(queryKeyOrFilters).map(function (_ref) {
        var queryKey = _ref.queryKey;
        return [queryKey, _this2.setQueryData(queryKey, updater, options)];
      });
    });
  };

  _proto.getQueryState = function getQueryState(queryKey, filters) {
    var _this$queryCache$find2;

    return (_this$queryCache$find2 = this.queryCache.find(queryKey, filters)) == null ? void 0 : _this$queryCache$find2.state;
  };

  _proto.removeQueries = function removeQueries(arg1, arg2) {
    var _parseFilterArgs2 = (0,_utils__WEBPACK_IMPORTED_MODULE_5__.parseFilterArgs)(arg1, arg2),
        filters = _parseFilterArgs2[0];

    var queryCache = this.queryCache;
    _notifyManager__WEBPACK_IMPORTED_MODULE_6__.notifyManager.batch(function () {
      queryCache.findAll(filters).forEach(function (query) {
        queryCache.remove(query);
      });
    });
  };

  _proto.resetQueries = function resetQueries(arg1, arg2, arg3) {
    var _this3 = this;

    var _parseFilterArgs3 = (0,_utils__WEBPACK_IMPORTED_MODULE_5__.parseFilterArgs)(arg1, arg2, arg3),
        filters = _parseFilterArgs3[0],
        options = _parseFilterArgs3[1];

    var queryCache = this.queryCache;

    var refetchFilters = (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, filters, {
      active: true
    });

    return _notifyManager__WEBPACK_IMPORTED_MODULE_6__.notifyManager.batch(function () {
      queryCache.findAll(filters).forEach(function (query) {
        query.reset();
      });
      return _this3.refetchQueries(refetchFilters, options);
    });
  };

  _proto.cancelQueries = function cancelQueries(arg1, arg2, arg3) {
    var _this4 = this;

    var _parseFilterArgs4 = (0,_utils__WEBPACK_IMPORTED_MODULE_5__.parseFilterArgs)(arg1, arg2, arg3),
        filters = _parseFilterArgs4[0],
        _parseFilterArgs4$ = _parseFilterArgs4[1],
        cancelOptions = _parseFilterArgs4$ === void 0 ? {} : _parseFilterArgs4$;

    if (typeof cancelOptions.revert === 'undefined') {
      cancelOptions.revert = true;
    }

    var promises = _notifyManager__WEBPACK_IMPORTED_MODULE_6__.notifyManager.batch(function () {
      return _this4.queryCache.findAll(filters).map(function (query) {
        return query.cancel(cancelOptions);
      });
    });
    return Promise.all(promises).then(_utils__WEBPACK_IMPORTED_MODULE_5__.noop).catch(_utils__WEBPACK_IMPORTED_MODULE_5__.noop);
  };

  _proto.invalidateQueries = function invalidateQueries(arg1, arg2, arg3) {
    var _ref2,
        _filters$refetchActiv,
        _filters$refetchInact,
        _this5 = this;

    var _parseFilterArgs5 = (0,_utils__WEBPACK_IMPORTED_MODULE_5__.parseFilterArgs)(arg1, arg2, arg3),
        filters = _parseFilterArgs5[0],
        options = _parseFilterArgs5[1];

    var refetchFilters = (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, filters, {
      // if filters.refetchActive is not provided and filters.active is explicitly false,
      // e.g. invalidateQueries({ active: false }), we don't want to refetch active queries
      active: (_ref2 = (_filters$refetchActiv = filters.refetchActive) != null ? _filters$refetchActiv : filters.active) != null ? _ref2 : true,
      inactive: (_filters$refetchInact = filters.refetchInactive) != null ? _filters$refetchInact : false
    });

    return _notifyManager__WEBPACK_IMPORTED_MODULE_6__.notifyManager.batch(function () {
      _this5.queryCache.findAll(filters).forEach(function (query) {
        query.invalidate();
      });

      return _this5.refetchQueries(refetchFilters, options);
    });
  };

  _proto.refetchQueries = function refetchQueries(arg1, arg2, arg3) {
    var _this6 = this;

    var _parseFilterArgs6 = (0,_utils__WEBPACK_IMPORTED_MODULE_5__.parseFilterArgs)(arg1, arg2, arg3),
        filters = _parseFilterArgs6[0],
        options = _parseFilterArgs6[1];

    var promises = _notifyManager__WEBPACK_IMPORTED_MODULE_6__.notifyManager.batch(function () {
      return _this6.queryCache.findAll(filters).map(function (query) {
        return query.fetch();
      });
    });
    var promise = Promise.all(promises).then(_utils__WEBPACK_IMPORTED_MODULE_5__.noop);

    if (!(options == null ? void 0 : options.throwOnError)) {
      promise = promise.catch(_utils__WEBPACK_IMPORTED_MODULE_5__.noop);
    }

    return promise;
  };

  _proto.fetchQuery = function fetchQuery(arg1, arg2, arg3) {
    var parsedOptions = (0,_utils__WEBPACK_IMPORTED_MODULE_5__.parseQueryArgs)(arg1, arg2, arg3);
    var defaultedOptions = this.defaultQueryOptions(parsedOptions); // https://github.com/tannerlinsley/react-query/issues/652

    if (typeof defaultedOptions.retry === 'undefined') {
      defaultedOptions.retry = false;
    }

    var query = this.queryCache.build(this, defaultedOptions);
    return query.isStaleByTime(defaultedOptions.staleTime) ? query.fetch(defaultedOptions) : Promise.resolve(query.state.data);
  };

  _proto.prefetchQuery = function prefetchQuery(arg1, arg2, arg3) {
    return this.fetchQuery(arg1, arg2, arg3).then(_utils__WEBPACK_IMPORTED_MODULE_5__.noop).catch(_utils__WEBPACK_IMPORTED_MODULE_5__.noop);
  };

  _proto.fetchInfiniteQuery = function fetchInfiniteQuery(arg1, arg2, arg3) {
    var parsedOptions = (0,_utils__WEBPACK_IMPORTED_MODULE_5__.parseQueryArgs)(arg1, arg2, arg3);
    parsedOptions.behavior = (0,_infiniteQueryBehavior__WEBPACK_IMPORTED_MODULE_7__.infiniteQueryBehavior)();
    return this.fetchQuery(parsedOptions);
  };

  _proto.prefetchInfiniteQuery = function prefetchInfiniteQuery(arg1, arg2, arg3) {
    return this.fetchInfiniteQuery(arg1, arg2, arg3).then(_utils__WEBPACK_IMPORTED_MODULE_5__.noop).catch(_utils__WEBPACK_IMPORTED_MODULE_5__.noop);
  };

  _proto.cancelMutations = function cancelMutations() {
    var _this7 = this;

    var promises = _notifyManager__WEBPACK_IMPORTED_MODULE_6__.notifyManager.batch(function () {
      return _this7.mutationCache.getAll().map(function (mutation) {
        return mutation.cancel();
      });
    });
    return Promise.all(promises).then(_utils__WEBPACK_IMPORTED_MODULE_5__.noop).catch(_utils__WEBPACK_IMPORTED_MODULE_5__.noop);
  };

  _proto.resumePausedMutations = function resumePausedMutations() {
    return this.getMutationCache().resumePausedMutations();
  };

  _proto.executeMutation = function executeMutation(options) {
    return this.mutationCache.build(this, options).execute();
  };

  _proto.getQueryCache = function getQueryCache() {
    return this.queryCache;
  };

  _proto.getMutationCache = function getMutationCache() {
    return this.mutationCache;
  };

  _proto.getDefaultOptions = function getDefaultOptions() {
    return this.defaultOptions;
  };

  _proto.setDefaultOptions = function setDefaultOptions(options) {
    this.defaultOptions = options;
  };

  _proto.setQueryDefaults = function setQueryDefaults(queryKey, options) {
    var result = this.queryDefaults.find(function (x) {
      return (0,_utils__WEBPACK_IMPORTED_MODULE_5__.hashQueryKey)(queryKey) === (0,_utils__WEBPACK_IMPORTED_MODULE_5__.hashQueryKey)(x.queryKey);
    });

    if (result) {
      result.defaultOptions = options;
    } else {
      this.queryDefaults.push({
        queryKey: queryKey,
        defaultOptions: options
      });
    }
  };

  _proto.getQueryDefaults = function getQueryDefaults(queryKey) {
    var _this$queryDefaults$f;

    return queryKey ? (_this$queryDefaults$f = this.queryDefaults.find(function (x) {
      return (0,_utils__WEBPACK_IMPORTED_MODULE_5__.partialMatchKey)(queryKey, x.queryKey);
    })) == null ? void 0 : _this$queryDefaults$f.defaultOptions : undefined;
  };

  _proto.setMutationDefaults = function setMutationDefaults(mutationKey, options) {
    var result = this.mutationDefaults.find(function (x) {
      return (0,_utils__WEBPACK_IMPORTED_MODULE_5__.hashQueryKey)(mutationKey) === (0,_utils__WEBPACK_IMPORTED_MODULE_5__.hashQueryKey)(x.mutationKey);
    });

    if (result) {
      result.defaultOptions = options;
    } else {
      this.mutationDefaults.push({
        mutationKey: mutationKey,
        defaultOptions: options
      });
    }
  };

  _proto.getMutationDefaults = function getMutationDefaults(mutationKey) {
    var _this$mutationDefault;

    return mutationKey ? (_this$mutationDefault = this.mutationDefaults.find(function (x) {
      return (0,_utils__WEBPACK_IMPORTED_MODULE_5__.partialMatchKey)(mutationKey, x.mutationKey);
    })) == null ? void 0 : _this$mutationDefault.defaultOptions : undefined;
  };

  _proto.defaultQueryOptions = function defaultQueryOptions(options) {
    if (options == null ? void 0 : options._defaulted) {
      return options;
    }

    var defaultedOptions = (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, this.defaultOptions.queries, this.getQueryDefaults(options == null ? void 0 : options.queryKey), options, {
      _defaulted: true
    });

    if (!defaultedOptions.queryHash && defaultedOptions.queryKey) {
      defaultedOptions.queryHash = (0,_utils__WEBPACK_IMPORTED_MODULE_5__.hashQueryKeyByOptions)(defaultedOptions.queryKey, defaultedOptions);
    }

    return defaultedOptions;
  };

  _proto.defaultQueryObserverOptions = function defaultQueryObserverOptions(options) {
    return this.defaultQueryOptions(options);
  };

  _proto.defaultMutationOptions = function defaultMutationOptions(options) {
    if (options == null ? void 0 : options._defaulted) {
      return options;
    }

    return (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, this.defaultOptions.mutations, this.getMutationDefaults(options == null ? void 0 : options.mutationKey), options, {
      _defaulted: true
    });
  };

  _proto.clear = function clear() {
    this.queryCache.clear();
    this.mutationCache.clear();
  };

  return QueryClient;
}();

/***/ }),

/***/ "../node_modules/react-query/es/core/queryObserver.js":
/*!************************************************************!*\
  !*** ../node_modules/react-query/es/core/queryObserver.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "QueryObserver": () => (/* binding */ QueryObserver)
/* harmony export */ });
/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ "../node_modules/@babel/runtime/helpers/esm/extends.js");
/* harmony import */ var _babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/esm/inheritsLoose */ "../node_modules/@babel/runtime/helpers/esm/inheritsLoose.js");
/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./utils */ "../node_modules/react-query/es/core/utils.js");
/* harmony import */ var _notifyManager__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./notifyManager */ "../node_modules/react-query/es/core/notifyManager.js");
/* harmony import */ var _focusManager__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./focusManager */ "../node_modules/react-query/es/core/focusManager.js");
/* harmony import */ var _subscribable__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./subscribable */ "../node_modules/react-query/es/core/subscribable.js");
/* harmony import */ var _logger__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./logger */ "../node_modules/react-query/es/core/logger.js");
/* harmony import */ var _retryer__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./retryer */ "../node_modules/react-query/es/core/retryer.js");








var QueryObserver = /*#__PURE__*/function (_Subscribable) {
  (0,_babel_runtime_helpers_esm_inheritsLoose__WEBPACK_IMPORTED_MODULE_1__.default)(QueryObserver, _Subscribable);

  function QueryObserver(client, options) {
    var _this;

    _this = _Subscribable.call(this) || this;
    _this.client = client;
    _this.options = options;
    _this.trackedProps = [];
    _this.previousSelectError = null;

    _this.bindMethods();

    _this.setOptions(options);

    return _this;
  }

  var _proto = QueryObserver.prototype;

  _proto.bindMethods = function bindMethods() {
    this.remove = this.remove.bind(this);
    this.refetch = this.refetch.bind(this);
  };

  _proto.onSubscribe = function onSubscribe() {
    if (this.listeners.length === 1) {
      this.currentQuery.addObserver(this);

      if (shouldFetchOnMount(this.currentQuery, this.options)) {
        this.executeFetch();
      }

      this.updateTimers();
    }
  };

  _proto.onUnsubscribe = function onUnsubscribe() {
    if (!this.listeners.length) {
      this.destroy();
    }
  };

  _proto.shouldFetchOnReconnect = function shouldFetchOnReconnect() {
    return _shouldFetchOnReconnect(this.currentQuery, this.options);
  };

  _proto.shouldFetchOnWindowFocus = function shouldFetchOnWindowFocus() {
    return _shouldFetchOnWindowFocus(this.currentQuery, this.options);
  };

  _proto.destroy = function destroy() {
    this.listeners = [];
    this.clearTimers();
    this.currentQuery.removeObserver(this);
  };

  _proto.setOptions = function setOptions(options, notifyOptions) {
    var prevOptions = this.options;
    var prevQuery = this.currentQuery;
    this.options = this.client.defaultQueryObserverOptions(options);

    if (typeof this.options.enabled !== 'undefined' && typeof this.options.enabled !== 'boolean') {
      throw new Error('Expected enabled to be a boolean');
    } // Keep previous query key if the user does not supply one


    if (!this.options.queryKey) {
      this.options.queryKey = prevOptions.queryKey;
    }

    this.updateQuery();
    var mounted = this.hasListeners(); // Fetch if there are subscribers

    if (mounted && shouldFetchOptionally(this.currentQuery, prevQuery, this.options, prevOptions)) {
      this.executeFetch();
    } // Update result


    this.updateResult(notifyOptions); // Update stale interval if needed

    if (mounted && (this.currentQuery !== prevQuery || this.options.enabled !== prevOptions.enabled || this.options.staleTime !== prevOptions.staleTime)) {
      this.updateStaleTimeout();
    } // Update refetch interval if needed


    if (mounted && (this.currentQuery !== prevQuery || this.options.enabled !== prevOptions.enabled || this.options.refetchInterval !== prevOptions.refetchInterval)) {
      this.updateRefetchInterval();
    }
  };

  _proto.getOptimisticResult = function getOptimisticResult(options) {
    var defaultedOptions = this.client.defaultQueryObserverOptions(options);
    var query = this.client.getQueryCache().build(this.client, defaultedOptions);
    return this.createResult(query, defaultedOptions);
  };

  _proto.getCurrentResult = function getCurrentResult() {
    return this.currentResult;
  };

  _proto.trackResult = function trackResult(result) {
    var _this2 = this;

    var trackedResult = {};
    Object.keys(result).forEach(function (key) {
      Object.defineProperty(trackedResult, key, {
        configurable: false,
        enumerable: true,
        get: function get() {
          var typedKey = key;

          if (!_this2.trackedProps.includes(typedKey)) {
            _this2.trackedProps.push(typedKey);
          }

          return result[typedKey];
        }
      });
    });
    return trackedResult;
  };

  _proto.getNextResult = function getNextResult(options) {
    var _this3 = this;

    return new Promise(function (resolve, reject) {
      var unsubscribe = _this3.subscribe(function (result) {
        if (!result.isFetching) {
          unsubscribe();

          if (result.isError && (options == null ? void 0 : options.throwOnError)) {
            reject(result.error);
          } else {
            resolve(result);
          }
        }
      });
    });
  };

  _proto.getCurrentQuery = function getCurrentQuery() {
    return this.currentQuery;
  };

  _proto.remove = function remove() {
    this.client.getQueryCache().remove(this.currentQuery);
  };

  _proto.refetch = function refetch(options) {
    return this.fetch(options);
  };

  _proto.fetchOptimistic = function fetchOptimistic(options) {
    var _this4 = this;

    var defaultedOptions = this.client.defaultQueryObserverOptions(options);
    var query = this.client.getQueryCache().build(this.client, defaultedOptions);
    return query.fetch().then(function () {
      return _this4.createResult(query, defaultedOptions);
    });
  };

  _proto.fetch = function fetch(fetchOptions) {
    var _this5 = this;

    return this.executeFetch(fetchOptions).then(function () {
      _this5.updateResult();

      return _this5.currentResult;
    });
  };

  _proto.executeFetch = function executeFetch(fetchOptions) {
    // Make sure we reference the latest query as the current one might have been removed
    this.updateQuery(); // Fetch

    var promise = this.currentQuery.fetch(this.options, fetchOptions);

    if (!(fetchOptions == null ? void 0 : fetchOptions.throwOnError)) {
      promise = promise.catch(_utils__WEBPACK_IMPORTED_MODULE_2__.noop);
    }

    return promise;
  };

  _proto.updateStaleTimeout = function updateStaleTimeout() {
    var _this6 = this;

    this.clearStaleTimeout();

    if (_utils__WEBPACK_IMPORTED_MODULE_2__.isServer || this.currentResult.isStale || !(0,_utils__WEBPACK_IMPORTED_MODULE_2__.isValidTimeout)(this.options.staleTime)) {
      return;
    }

    var time = (0,_utils__WEBPACK_IMPORTED_MODULE_2__.timeUntilStale)(this.currentResult.dataUpdatedAt, this.options.staleTime); // The timeout is sometimes triggered 1 ms before the stale time expiration.
    // To mitigate this issue we always add 1 ms to the timeout.

    var timeout = time + 1;
    this.staleTimeoutId = setTimeout(function () {
      if (!_this6.currentResult.isStale) {
        _this6.updateResult();
      }
    }, timeout);
  };

  _proto.updateRefetchInterval = function updateRefetchInterval() {
    var _this7 = this;

    this.clearRefetchInterval();

    if (_utils__WEBPACK_IMPORTED_MODULE_2__.isServer || this.options.enabled === false || !(0,_utils__WEBPACK_IMPORTED_MODULE_2__.isValidTimeout)(this.options.refetchInterval)) {
      return;
    }

    this.refetchIntervalId = setInterval(function () {
      if (_this7.options.refetchIntervalInBackground || _focusManager__WEBPACK_IMPORTED_MODULE_3__.focusManager.isFocused()) {
        _this7.executeFetch();
      }
    }, this.options.refetchInterval);
  };

  _proto.updateTimers = function updateTimers() {
    this.updateStaleTimeout();
    this.updateRefetchInterval();
  };

  _proto.clearTimers = function clearTimers() {
    this.clearStaleTimeout();
    this.clearRefetchInterval();
  };

  _proto.clearStaleTimeout = function clearStaleTimeout() {
    clearTimeout(this.staleTimeoutId);
    this.staleTimeoutId = undefined;
  };

  _proto.clearRefetchInterval = function clearRefetchInterval() {
    clearInterval(this.refetchIntervalId);
    this.refetchIntervalId = undefined;
  };

  _proto.createResult = function createResult(query, options) {
    var prevQuery = this.currentQuery;
    var prevOptions = this.options;
    var prevResult = this.currentResult;
    var prevResultState = this.currentResultState;
    var prevResultOptions = this.currentResultOptions;
    var queryChange = query !== prevQuery;
    var queryInitialState = queryChange ? query.state : this.currentQueryInitialState;
    var prevQueryResult = queryChange ? this.currentResult : this.previousQueryResult;
    var state = query.state;
    var dataUpdatedAt = state.dataUpdatedAt,
        error = state.error,
        errorUpdatedAt = state.errorUpdatedAt,
        isFetching = state.isFetching,
        status = state.status;
    var isPreviousData = false;
    var isPlaceholderData = false;
    var data; // Optimistically set result in fetching state if needed

    if (options.optimisticResults) {
      var mounted = this.hasListeners();
      var fetchOnMount = !mounted && shouldFetchOnMount(query, options);
      var fetchOptionally = mounted && shouldFetchOptionally(query, prevQuery, options, prevOptions);

      if (fetchOnMount || fetchOptionally) {
        isFetching = true;

        if (!dataUpdatedAt) {
          status = 'loading';
        }
      }
    } // Keep previous data if needed


    if (options.keepPreviousData && !state.dataUpdateCount && (prevQueryResult == null ? void 0 : prevQueryResult.isSuccess) && status !== 'error') {
      data = prevQueryResult.data;
      dataUpdatedAt = prevQueryResult.dataUpdatedAt;
      status = prevQueryResult.status;
      isPreviousData = true;
    } // Select data if needed
    else if (options.select && typeof state.data !== 'undefined') {
        // Memoize select result
        if (prevResult && state.data === (prevResultState == null ? void 0 : prevResultState.data) && options.select === (prevResultOptions == null ? void 0 : prevResultOptions.select) && !this.previousSelectError) {
          data = prevResult.data;
        } else {
          try {
            data = options.select(state.data);

            if (options.structuralSharing !== false) {
              data = (0,_utils__WEBPACK_IMPORTED_MODULE_2__.replaceEqualDeep)(prevResult == null ? void 0 : prevResult.data, data);
            }

            this.previousSelectError = null;
          } catch (selectError) {
            (0,_logger__WEBPACK_IMPORTED_MODULE_4__.getLogger)().error(selectError);
            error = selectError;
            this.previousSelectError = selectError;
            errorUpdatedAt = Date.now();
            status = 'error';
          }
        }
      } // Use query data
      else {
          data = state.data;
        } // Show placeholder data if needed


    if (typeof options.placeholderData !== 'undefined' && typeof data === 'undefined' && status === 'loading') {
      var placeholderData; // Memoize placeholder data

      if ((prevResult == null ? void 0 : prevResult.isPlaceholderData) && options.placeholderData === (prevResultOptions == null ? void 0 : prevResultOptions.placeholderData)) {
        placeholderData = prevResult.data;
      } else {
        placeholderData = typeof options.placeholderData === 'function' ? options.placeholderData() : options.placeholderData;

        if (options.select && typeof placeholderData !== 'undefined') {
          try {
            placeholderData = options.select(placeholderData);

            if (options.structuralSharing !== false) {
              placeholderData = (0,_utils__WEBPACK_IMPORTED_MODULE_2__.replaceEqualDeep)(prevResult == null ? void 0 : prevResult.data, placeholderData);
            }

            this.previousSelectError = null;
          } catch (selectError) {
            (0,_logger__WEBPACK_IMPORTED_MODULE_4__.getLogger)().error(selectError);
            error = selectError;
            this.previousSelectError = selectError;
            errorUpdatedAt = Date.now();
            status = 'error';
          }
        }
      }

      if (typeof placeholderData !== 'undefined') {
        status = 'success';
        data = placeholderData;
        isPlaceholderData = true;
      }
    }

    var result = {
      status: status,
      isLoading: status === 'loading',
      isSuccess: status === 'success',
      isError: status === 'error',
      isIdle: status === 'idle',
      data: data,
      dataUpdatedAt: dataUpdatedAt,
      error: error,
      errorUpdatedAt: errorUpdatedAt,
      failureCount: state.fetchFailureCount,
      isFetched: state.dataUpdateCount > 0 || state.errorUpdateCount > 0,
      isFetchedAfterMount: state.dataUpdateCount > queryInitialState.dataUpdateCount || state.errorUpdateCount > queryInitialState.errorUpdateCount,
      isFetching: isFetching,
      isLoadingError: status === 'error' && state.dataUpdatedAt === 0,
      isPlaceholderData: isPlaceholderData,
      isPreviousData: isPreviousData,
      isRefetchError: status === 'error' && state.dataUpdatedAt !== 0,
      isStale: isStale(query, options),
      refetch: this.refetch,
      remove: this.remove
    };
    return result;
  };

  _proto.shouldNotifyListeners = function shouldNotifyListeners(result, prevResult) {
    if (!prevResult) {
      return true;
    }

    if (result === prevResult) {
      return false;
    }

    var _this$options = this.options,
        notifyOnChangeProps = _this$options.notifyOnChangeProps,
        notifyOnChangePropsExclusions = _this$options.notifyOnChangePropsExclusions;

    if (!notifyOnChangeProps && !notifyOnChangePropsExclusions) {
      return true;
    }

    if (notifyOnChangeProps === 'tracked' && !this.trackedProps.length) {
      return true;
    }

    var includedProps = notifyOnChangeProps === 'tracked' ? this.trackedProps : notifyOnChangeProps;
    return Object.keys(result).some(function (key) {
      var typedKey = key;
      var changed = result[typedKey] !== prevResult[typedKey];
      var isIncluded = includedProps == null ? void 0 : includedProps.some(function (x) {
        return x === key;
      });
      var isExcluded = notifyOnChangePropsExclusions == null ? void 0 : notifyOnChangePropsExclusions.some(function (x) {
        return x === key;
      });
      return changed && !isExcluded && (!includedProps || isIncluded);
    });
  };

  _proto.updateResult = function updateResult(notifyOptions) {
    var prevResult = this.currentResult;
    this.currentResult = this.createResult(this.currentQuery, this.options);
    this.currentResultState = this.currentQuery.state;
    this.currentResultOptions = this.options; // Only notify if something has changed

    if ((0,_utils__WEBPACK_IMPORTED_MODULE_2__.shallowEqualObjects)(this.currentResult, prevResult)) {
      return;
    } // Determine which callbacks to trigger


    var defaultNotifyOptions = {
      cache: true
    };

    if ((notifyOptions == null ? void 0 : notifyOptions.listeners) !== false && this.shouldNotifyListeners(this.currentResult, prevResult)) {
      defaultNotifyOptions.listeners = true;
    }

    this.notify((0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, defaultNotifyOptions, notifyOptions));
  };

  _proto.updateQuery = function updateQuery() {
    var query = this.client.getQueryCache().build(this.client, this.options);

    if (query === this.currentQuery) {
      return;
    }

    var prevQuery = this.currentQuery;
    this.currentQuery = query;
    this.currentQueryInitialState = query.state;
    this.previousQueryResult = this.currentResult;

    if (this.hasListeners()) {
      prevQuery == null ? void 0 : prevQuery.removeObserver(this);
      query.addObserver(this);
    }
  };

  _proto.onQueryUpdate = function onQueryUpdate(action) {
    var notifyOptions = {};

    if (action.type === 'success') {
      notifyOptions.onSuccess = true;
    } else if (action.type === 'error' && !(0,_retryer__WEBPACK_IMPORTED_MODULE_5__.isCancelledError)(action.error)) {
      notifyOptions.onError = true;
    }

    this.updateResult(notifyOptions);

    if (this.hasListeners()) {
      this.updateTimers();
    }
  };

  _proto.notify = function notify(notifyOptions) {
    var _this8 = this;

    _notifyManager__WEBPACK_IMPORTED_MODULE_6__.notifyManager.batch(function () {
      // First trigger the configuration callbacks
      if (notifyOptions.onSuccess) {
        _this8.options.onSuccess == null ? void 0 : _this8.options.onSuccess(_this8.currentResult.data);
        _this8.options.onSettled == null ? void 0 : _this8.options.onSettled(_this8.currentResult.data, null);
      } else if (notifyOptions.onError) {
        _this8.options.onError == null ? void 0 : _this8.options.onError(_this8.currentResult.error);
        _this8.options.onSettled == null ? void 0 : _this8.options.onSettled(undefined, _this8.currentResult.error);
      } // Then trigger the listeners


      if (notifyOptions.listeners) {
        _this8.listeners.forEach(function (listener) {
          listener(_this8.currentResult);
        });
      } // Then the cache listeners


      if (notifyOptions.cache) {
        _this8.client.getQueryCache().notify({
          query: _this8.currentQuery,
          type: 'observerResultsUpdated'
        });
      }
    });
  };

  return QueryObserver;
}(_subscribable__WEBPACK_IMPORTED_MODULE_7__.Subscribable);

function shouldLoadOnMount(query, options) {
  return options.enabled !== false && !query.state.dataUpdatedAt && !(query.state.status === 'error' && options.retryOnMount === false);
}

function shouldRefetchOnMount(query, options) {
  return options.enabled !== false && query.state.dataUpdatedAt > 0 && (options.refetchOnMount === 'always' || options.refetchOnMount !== false && isStale(query, options));
}

function shouldFetchOnMount(query, options) {
  return shouldLoadOnMount(query, options) || shouldRefetchOnMount(query, options);
}

function _shouldFetchOnReconnect(query, options) {
  return options.enabled !== false && (options.refetchOnReconnect === 'always' || options.refetchOnReconnect !== false && isStale(query, options));
}

function _shouldFetchOnWindowFocus(query, options) {
  return options.enabled !== false && (options.refetchOnWindowFocus === 'always' || options.refetchOnWindowFocus !== false && isStale(query, options));
}

function shouldFetchOptionally(query, prevQuery, options, prevOptions) {
  return options.enabled !== false && (query !== prevQuery || prevOptions.enabled === false) && isStale(query, options);
}

function isStale(query, options) {
  return query.isStaleByTime(options.staleTime);
}

/***/ }),

/***/ "../node_modules/react-query/es/core/retryer.js":
/*!******************************************************!*\
  !*** ../node_modules/react-query/es/core/retryer.js ***!
  \******************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "isCancelable": () => (/* binding */ isCancelable),
/* harmony export */   "CancelledError": () => (/* binding */ CancelledError),
/* harmony export */   "isCancelledError": () => (/* binding */ isCancelledError),
/* harmony export */   "Retryer": () => (/* binding */ Retryer)
/* harmony export */ });
/* harmony import */ var _focusManager__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./focusManager */ "../node_modules/react-query/es/core/focusManager.js");
/* harmony import */ var _onlineManager__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./onlineManager */ "../node_modules/react-query/es/core/onlineManager.js");
/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./utils */ "../node_modules/react-query/es/core/utils.js");


 // TYPES

function defaultRetryDelay(failureCount) {
  return Math.min(1000 * Math.pow(2, failureCount), 30000);
}

function isCancelable(value) {
  return typeof (value == null ? void 0 : value.cancel) === 'function';
}
var CancelledError = function CancelledError(options) {
  this.revert = options == null ? void 0 : options.revert;
  this.silent = options == null ? void 0 : options.silent;
};
function isCancelledError(value) {
  return value instanceof CancelledError;
} // CLASS

var Retryer = function Retryer(config) {
  var _this = this;

  var cancelRetry = false;
  var cancelFn;
  var continueFn;
  var promiseResolve;
  var promiseReject;

  this.cancel = function (cancelOptions) {
    return cancelFn == null ? void 0 : cancelFn(cancelOptions);
  };

  this.cancelRetry = function () {
    cancelRetry = true;
  };

  this.continue = function () {
    return continueFn == null ? void 0 : continueFn();
  };

  this.failureCount = 0;
  this.isPaused = false;
  this.isResolved = false;
  this.isTransportCancelable = false;
  this.promise = new Promise(function (outerResolve, outerReject) {
    promiseResolve = outerResolve;
    promiseReject = outerReject;
  });

  var resolve = function resolve(value) {
    if (!_this.isResolved) {
      _this.isResolved = true;
      config.onSuccess == null ? void 0 : config.onSuccess(value);
      continueFn == null ? void 0 : continueFn();
      promiseResolve(value);
    }
  };

  var reject = function reject(value) {
    if (!_this.isResolved) {
      _this.isResolved = true;
      config.onError == null ? void 0 : config.onError(value);
      continueFn == null ? void 0 : continueFn();
      promiseReject(value);
    }
  };

  var pause = function pause() {
    return new Promise(function (continueResolve) {
      continueFn = continueResolve;
      _this.isPaused = true;
      config.onPause == null ? void 0 : config.onPause();
    }).then(function () {
      continueFn = undefined;
      _this.isPaused = false;
      config.onContinue == null ? void 0 : config.onContinue();
    });
  }; // Create loop function


  var run = function run() {
    // Do nothing if already resolved
    if (_this.isResolved) {
      return;
    }

    var promiseOrValue; // Execute query

    try {
      promiseOrValue = config.fn();
    } catch (error) {
      promiseOrValue = Promise.reject(error);
    } // Create callback to cancel this fetch


    cancelFn = function cancelFn(cancelOptions) {
      if (!_this.isResolved) {
        reject(new CancelledError(cancelOptions)); // Cancel transport if supported

        if (isCancelable(promiseOrValue)) {
          try {
            promiseOrValue.cancel();
          } catch (_unused) {}
        }
      }
    }; // Check if the transport layer support cancellation


    _this.isTransportCancelable = isCancelable(promiseOrValue);
    Promise.resolve(promiseOrValue).then(resolve).catch(function (error) {
      var _config$retry, _config$retryDelay;

      // Stop if the fetch is already resolved
      if (_this.isResolved) {
        return;
      } // Do we need to retry the request?


      var retry = (_config$retry = config.retry) != null ? _config$retry : 3;
      var retryDelay = (_config$retryDelay = config.retryDelay) != null ? _config$retryDelay : defaultRetryDelay;
      var delay = typeof retryDelay === 'function' ? retryDelay(_this.failureCount, error) : retryDelay;
      var shouldRetry = retry === true || typeof retry === 'number' && _this.failureCount < retry || typeof retry === 'function' && retry(_this.failureCount, error);

      if (cancelRetry || !shouldRetry) {
        // We are done if the query does not need to be retried
        reject(error);
        return;
      }

      _this.failureCount++; // Notify on fail

      config.onFail == null ? void 0 : config.onFail(_this.failureCount, error); // Delay

      (0,_utils__WEBPACK_IMPORTED_MODULE_0__.sleep)(delay) // Pause if the document is not visible or when the device is offline
      .then(function () {
        if (!_focusManager__WEBPACK_IMPORTED_MODULE_1__.focusManager.isFocused() || !_onlineManager__WEBPACK_IMPORTED_MODULE_2__.onlineManager.isOnline()) {
          return pause();
        }
      }).then(function () {
        if (cancelRetry) {
          reject(error);
        } else {
          run();
        }
      });
    });
  }; // Start loop


  run();
};

/***/ }),

/***/ "../node_modules/react-query/es/core/subscribable.js":
/*!***********************************************************!*\
  !*** ../node_modules/react-query/es/core/subscribable.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "Subscribable": () => (/* binding */ Subscribable)
/* harmony export */ });
var Subscribable = /*#__PURE__*/function () {
  function Subscribable() {
    this.listeners = [];
  }

  var _proto = Subscribable.prototype;

  _proto.subscribe = function subscribe(listener) {
    var _this = this;

    var callback = listener || function () {
      return undefined;
    };

    this.listeners.push(callback);
    this.onSubscribe();
    return function () {
      _this.listeners = _this.listeners.filter(function (x) {
        return x !== callback;
      });

      _this.onUnsubscribe();
    };
  };

  _proto.hasListeners = function hasListeners() {
    return this.listeners.length > 0;
  };

  _proto.onSubscribe = function onSubscribe() {// Do nothing
  };

  _proto.onUnsubscribe = function onUnsubscribe() {// Do nothing
  };

  return Subscribable;
}();

/***/ }),

/***/ "../node_modules/react-query/es/core/types.js":
/*!****************************************************!*\
  !*** ../node_modules/react-query/es/core/types.js ***!
  \****************************************************/
/***/ (() => {



/***/ }),

/***/ "../node_modules/react-query/es/core/utils.js":
/*!****************************************************!*\
  !*** ../node_modules/react-query/es/core/utils.js ***!
  \****************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "isServer": () => (/* binding */ isServer),
/* harmony export */   "noop": () => (/* binding */ noop),
/* harmony export */   "functionalUpdate": () => (/* binding */ functionalUpdate),
/* harmony export */   "isValidTimeout": () => (/* binding */ isValidTimeout),
/* harmony export */   "ensureQueryKeyArray": () => (/* binding */ ensureQueryKeyArray),
/* harmony export */   "difference": () => (/* binding */ difference),
/* harmony export */   "replaceAt": () => (/* binding */ replaceAt),
/* harmony export */   "timeUntilStale": () => (/* binding */ timeUntilStale),
/* harmony export */   "parseQueryArgs": () => (/* binding */ parseQueryArgs),
/* harmony export */   "parseMutationArgs": () => (/* binding */ parseMutationArgs),
/* harmony export */   "parseFilterArgs": () => (/* binding */ parseFilterArgs),
/* harmony export */   "mapQueryStatusFilter": () => (/* binding */ mapQueryStatusFilter),
/* harmony export */   "matchQuery": () => (/* binding */ matchQuery),
/* harmony export */   "matchMutation": () => (/* binding */ matchMutation),
/* harmony export */   "hashQueryKeyByOptions": () => (/* binding */ hashQueryKeyByOptions),
/* harmony export */   "hashQueryKey": () => (/* binding */ hashQueryKey),
/* harmony export */   "stableValueHash": () => (/* binding */ stableValueHash),
/* harmony export */   "partialMatchKey": () => (/* binding */ partialMatchKey),
/* harmony export */   "partialDeepEqual": () => (/* binding */ partialDeepEqual),
/* harmony export */   "replaceEqualDeep": () => (/* binding */ replaceEqualDeep),
/* harmony export */   "shallowEqualObjects": () => (/* binding */ shallowEqualObjects),
/* harmony export */   "isPlainObject": () => (/* binding */ isPlainObject),
/* harmony export */   "isQueryKey": () => (/* binding */ isQueryKey),
/* harmony export */   "isError": () => (/* binding */ isError),
/* harmony export */   "sleep": () => (/* binding */ sleep),
/* harmony export */   "scheduleMicrotask": () => (/* binding */ scheduleMicrotask)
/* harmony export */ });
/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ "../node_modules/@babel/runtime/helpers/esm/extends.js");

// TYPES
// UTILS
var isServer = typeof window === 'undefined';
function noop() {
  return undefined;
}
function functionalUpdate(updater, input) {
  return typeof updater === 'function' ? updater(input) : updater;
}
function isValidTimeout(value) {
  return typeof value === 'number' && value >= 0 && value !== Infinity;
}
function ensureQueryKeyArray(value) {
  return Array.isArray(value) ? value : [value];
}
function difference(array1, array2) {
  return array1.filter(function (x) {
    return array2.indexOf(x) === -1;
  });
}
function replaceAt(array, index, value) {
  var copy = array.slice(0);
  copy[index] = value;
  return copy;
}
function timeUntilStale(updatedAt, staleTime) {
  return Math.max(updatedAt + (staleTime || 0) - Date.now(), 0);
}
function parseQueryArgs(arg1, arg2, arg3) {
  if (!isQueryKey(arg1)) {
    return arg1;
  }

  if (typeof arg2 === 'function') {
    return (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, arg3, {
      queryKey: arg1,
      queryFn: arg2
    });
  }

  return (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, arg2, {
    queryKey: arg1
  });
}
function parseMutationArgs(arg1, arg2, arg3) {
  if (isQueryKey(arg1)) {
    if (typeof arg2 === 'function') {
      return (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, arg3, {
        mutationKey: arg1,
        mutationFn: arg2
      });
    }

    return (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, arg2, {
      mutationKey: arg1
    });
  }

  if (typeof arg1 === 'function') {
    return (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, arg2, {
      mutationFn: arg1
    });
  }

  return (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, arg1);
}
function parseFilterArgs(arg1, arg2, arg3) {
  return isQueryKey(arg1) ? [(0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, arg2, {
    queryKey: arg1
  }), arg3] : [arg1 || {}, arg2];
}
function mapQueryStatusFilter(active, inactive) {
  if (active === true && inactive === true || active == null && inactive == null) {
    return 'all';
  } else if (active === false && inactive === false) {
    return 'none';
  } else {
    // At this point, active|inactive can only be true|false or false|true
    // so, when only one value is provided, the missing one has to be the negated value
    var isActive = active != null ? active : !inactive;
    return isActive ? 'active' : 'inactive';
  }
}
function matchQuery(filters, query) {
  var active = filters.active,
      exact = filters.exact,
      fetching = filters.fetching,
      inactive = filters.inactive,
      predicate = filters.predicate,
      queryKey = filters.queryKey,
      stale = filters.stale;

  if (isQueryKey(queryKey)) {
    if (exact) {
      if (query.queryHash !== hashQueryKeyByOptions(queryKey, query.options)) {
        return false;
      }
    } else if (!partialMatchKey(query.queryKey, queryKey)) {
      return false;
    }
  }

  var queryStatusFilter = mapQueryStatusFilter(active, inactive);

  if (queryStatusFilter === 'none') {
    return false;
  } else if (queryStatusFilter !== 'all') {
    var isActive = query.isActive();

    if (queryStatusFilter === 'active' && !isActive) {
      return false;
    }

    if (queryStatusFilter === 'inactive' && isActive) {
      return false;
    }
  }

  if (typeof stale === 'boolean' && query.isStale() !== stale) {
    return false;
  }

  if (typeof fetching === 'boolean' && query.isFetching() !== fetching) {
    return false;
  }

  if (predicate && !predicate(query)) {
    return false;
  }

  return true;
}
function matchMutation(filters, mutation) {
  var exact = filters.exact,
      fetching = filters.fetching,
      predicate = filters.predicate,
      mutationKey = filters.mutationKey;

  if (isQueryKey(mutationKey)) {
    if (!mutation.options.mutationKey) {
      return false;
    }

    if (exact) {
      if (hashQueryKey(mutation.options.mutationKey) !== hashQueryKey(mutationKey)) {
        return false;
      }
    } else if (!partialMatchKey(mutation.options.mutationKey, mutationKey)) {
      return false;
    }
  }

  if (typeof fetching === 'boolean' && mutation.state.status === 'loading' !== fetching) {
    return false;
  }

  if (predicate && !predicate(mutation)) {
    return false;
  }

  return true;
}
function hashQueryKeyByOptions(queryKey, options) {
  var hashFn = (options == null ? void 0 : options.queryKeyHashFn) || hashQueryKey;
  return hashFn(queryKey);
}
/**
 * Default query keys hash function.
 */

function hashQueryKey(queryKey) {
  var asArray = ensureQueryKeyArray(queryKey);
  return stableValueHash(asArray);
}
/**
 * Hashes the value into a stable hash.
 */

function stableValueHash(value) {
  return JSON.stringify(value, function (_, val) {
    return isPlainObject(val) ? Object.keys(val).sort().reduce(function (result, key) {
      result[key] = val[key];
      return result;
    }, {}) : val;
  });
}
/**
 * Checks if key `b` partially matches with key `a`.
 */

function partialMatchKey(a, b) {
  return partialDeepEqual(ensureQueryKeyArray(a), ensureQueryKeyArray(b));
}
/**
 * Checks if `b` partially matches with `a`.
 */

function partialDeepEqual(a, b) {
  if (a === b) {
    return true;
  }

  if (typeof a !== typeof b) {
    return false;
  }

  if (a && b && typeof a === 'object' && typeof b === 'object') {
    return !Object.keys(b).some(function (key) {
      return !partialDeepEqual(a[key], b[key]);
    });
  }

  return false;
}
/**
 * This function returns `a` if `b` is deeply equal.
 * If not, it will replace any deeply equal children of `b` with those of `a`.
 * This can be used for structural sharing between JSON values for example.
 */

function replaceEqualDeep(a, b) {
  if (a === b) {
    return a;
  }

  var array = Array.isArray(a) && Array.isArray(b);

  if (array || isPlainObject(a) && isPlainObject(b)) {
    var aSize = array ? a.length : Object.keys(a).length;
    var bItems = array ? b : Object.keys(b);
    var bSize = bItems.length;
    var copy = array ? [] : {};
    var equalItems = 0;

    for (var i = 0; i < bSize; i++) {
      var key = array ? i : bItems[i];
      copy[key] = replaceEqualDeep(a[key], b[key]);

      if (copy[key] === a[key]) {
        equalItems++;
      }
    }

    return aSize === bSize && equalItems === aSize ? a : copy;
  }

  return b;
}
/**
 * Shallow compare objects. Only works with objects that always have the same properties.
 */

function shallowEqualObjects(a, b) {
  if (a && !b || b && !a) {
    return false;
  }

  for (var key in a) {
    if (a[key] !== b[key]) {
      return false;
    }
  }

  return true;
} // Copied from: https://github.com/jonschlinkert/is-plain-object

function isPlainObject(o) {
  if (!hasObjectPrototype(o)) {
    return false;
  } // If has modified constructor


  var ctor = o.constructor;

  if (typeof ctor === 'undefined') {
    return true;
  } // If has modified prototype


  var prot = ctor.prototype;

  if (!hasObjectPrototype(prot)) {
    return false;
  } // If constructor does not have an Object-specific method


  if (!prot.hasOwnProperty('isPrototypeOf')) {
    return false;
  } // Most likely a plain Object


  return true;
}

function hasObjectPrototype(o) {
  return Object.prototype.toString.call(o) === '[object Object]';
}

function isQueryKey(value) {
  return typeof value === 'string' || Array.isArray(value);
}
function isError(value) {
  return value instanceof Error;
}
function sleep(timeout) {
  return new Promise(function (resolve) {
    setTimeout(resolve, timeout);
  });
}
/**
 * Schedules a microtask.
 * This can be useful to schedule state updates after rendering.
 */

function scheduleMicrotask(callback) {
  Promise.resolve().then(callback).catch(function (error) {
    return setTimeout(function () {
      throw error;
    });
  });
}

/***/ }),

/***/ "../node_modules/react-query/es/devtools/Explorer.js":
/*!***********************************************************!*\
  !*** ../node_modules/react-query/es/devtools/Explorer.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "Entry": () => (/* binding */ Entry),
/* harmony export */   "Label": () => (/* binding */ Label),
/* harmony export */   "Value": () => (/* binding */ Value),
/* harmony export */   "SubEntries": () => (/* binding */ SubEntries),
/* harmony export */   "Info": () => (/* binding */ Info),
/* harmony export */   "Expander": () => (/* binding */ Expander),
/* harmony export */   "default": () => (/* binding */ Explorer)
/* harmony export */ });
/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ "../node_modules/@babel/runtime/helpers/esm/extends.js");
/* harmony import */ var _babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/esm/objectWithoutPropertiesLoose */ "../node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react */ "react");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./utils */ "../node_modules/react-query/es/devtools/utils.js");


// @ts-nocheck


var Entry = (0,_utils__WEBPACK_IMPORTED_MODULE_3__.styled)('div', {
  fontFamily: 'Menlo, monospace',
  fontSize: '0.9rem',
  lineHeight: '1.7',
  outline: 'none',
  wordBreak: 'break-word'
});
var Label = (0,_utils__WEBPACK_IMPORTED_MODULE_3__.styled)('span', {
  cursor: 'pointer',
  color: 'white'
});
var Value = (0,_utils__WEBPACK_IMPORTED_MODULE_3__.styled)('span', function (props, theme) {
  return {
    color: theme.danger
  };
});
var SubEntries = (0,_utils__WEBPACK_IMPORTED_MODULE_3__.styled)('div', {
  marginLeft: '.1rem',
  paddingLeft: '1rem',
  borderLeft: '2px solid rgba(0,0,0,.15)'
});
var Info = (0,_utils__WEBPACK_IMPORTED_MODULE_3__.styled)('span', {
  color: 'grey',
  fontSize: '.7rem'
});
var Expander = function Expander(_ref) {
  var expanded = _ref.expanded,
      _ref$style = _ref.style,
      style = _ref$style === void 0 ? {} : _ref$style,
      rest = (0,_babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_1__.default)(_ref, ["expanded", "style"]);

  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement("span", {
    style: (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({
      display: 'inline-block',
      transition: 'all .1s ease',
      transform: "rotate(" + (expanded ? 90 : 0) + "deg) " + (style.transform || '')
    }, style)
  }, "\u25B6");
};

var DefaultRenderer = function DefaultRenderer(_ref2) {
  var handleEntry = _ref2.handleEntry,
      label = _ref2.label,
      value = _ref2.value,
      subEntries = _ref2.subEntries,
      subEntryPages = _ref2.subEntryPages,
      type = _ref2.type,
      expanded = _ref2.expanded,
      toggle = _ref2.toggle,
      pageSize = _ref2.pageSize;

  var _React$useState = react__WEBPACK_IMPORTED_MODULE_2___default().useState([]),
      expandedPages = _React$useState[0],
      setExpandedPages = _React$useState[1];

  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(Entry, {
    key: label
  }, (subEntryPages == null ? void 0 : subEntryPages.length) ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement((react__WEBPACK_IMPORTED_MODULE_2___default().Fragment), null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(Label, {
    onClick: function onClick() {
      return toggle();
    }
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(Expander, {
    expanded: expanded
  }), " ", label, ' ', /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(Info, null, String(type).toLowerCase() === 'iterable' ? '(Iterable) ' : '', subEntries.length, " ", subEntries.length > 1 ? "items" : "item")), expanded ? subEntryPages.length === 1 ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(SubEntries, null, subEntries.map(function (entry) {
    return handleEntry(entry);
  })) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(SubEntries, null, subEntryPages.map(function (entries, index) {
    return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement("div", {
      key: index
    }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(Entry, null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(Label, {
      onClick: function onClick() {
        return setExpandedPages(function (old) {
          return old.includes(index) ? old.filter(function (d) {
            return d !== index;
          }) : [].concat(old, [index]);
        });
      }
    }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(Expander, {
      expanded: expanded
    }), " [", index * pageSize, " ...", ' ', index * pageSize + pageSize - 1, "]"), expandedPages.includes(index) ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(SubEntries, null, entries.map(function (entry) {
      return handleEntry(entry);
    })) : null));
  })) : null) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement((react__WEBPACK_IMPORTED_MODULE_2___default().Fragment), null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(Label, null, label, ":"), ' ', /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(Value, null, JSON.stringify(value, Object.getOwnPropertyNames(Object(value))))));
};

function Explorer(_ref3) {
  var value = _ref3.value,
      defaultExpanded = _ref3.defaultExpanded,
      _ref3$renderer = _ref3.renderer,
      renderer = _ref3$renderer === void 0 ? DefaultRenderer : _ref3$renderer,
      _ref3$pageSize = _ref3.pageSize,
      pageSize = _ref3$pageSize === void 0 ? 100 : _ref3$pageSize,
      _ref3$depth = _ref3.depth,
      depth = _ref3$depth === void 0 ? 0 : _ref3$depth,
      rest = (0,_babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_1__.default)(_ref3, ["value", "defaultExpanded", "renderer", "pageSize", "depth"]);

  var _React$useState2 = react__WEBPACK_IMPORTED_MODULE_2___default().useState(defaultExpanded),
      expanded = _React$useState2[0],
      setExpanded = _React$useState2[1];

  var toggle = function toggle(set) {
    setExpanded(function (old) {
      return typeof set !== 'undefined' ? set : !old;
    });
  };

  var path = [];
  var type = typeof value;
  var subEntries;
  var subEntryPages = [];

  var makeProperty = function makeProperty(sub) {
    var _ref4;

    var newPath = path.concat(sub.label);
    var subDefaultExpanded = defaultExpanded === true ? (_ref4 = {}, _ref4[sub.label] = true, _ref4) : defaultExpanded == null ? void 0 : defaultExpanded[sub.label];
    return (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, sub, {
      path: newPath,
      depth: depth + 1,
      defaultExpanded: subDefaultExpanded
    });
  };

  if (Array.isArray(value)) {
    type = 'array';
    subEntries = value.map(function (d, i) {
      return makeProperty({
        label: i,
        value: d
      });
    });
  } else if (value !== null && typeof value === 'object' && typeof value[Symbol.iterator] === 'function') {
    type = 'Iterable';
    subEntries = Array.from(value, function (val, i) {
      return makeProperty({
        label: i,
        value: val
      });
    });
  } else if (typeof value === 'object' && value !== null) {
    type = 'object'; // eslint-disable-next-line no-shadow

    subEntries = Object.entries(value).map(function (_ref5) {
      var label = _ref5[0],
          value = _ref5[1];
      return makeProperty({
        label: label,
        value: value
      });
    });
  }

  if (subEntries) {
    var i = 0;

    while (i < subEntries.length) {
      subEntryPages.push(subEntries.slice(i, i + pageSize));
      i = i + pageSize;
    }
  }

  return renderer((0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({
    handleEntry: function handleEntry(entry) {
      return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(Explorer, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({
        key: entry.label,
        renderer: renderer
      }, rest, entry));
    },
    type: type,
    subEntries: subEntries,
    subEntryPages: subEntryPages,
    depth: depth,
    value: value,
    path: path,
    expanded: expanded,
    toggle: toggle,
    pageSize: pageSize
  }, rest));
}

/***/ }),

/***/ "../node_modules/react-query/es/devtools/Logo.js":
/*!*******************************************************!*\
  !*** ../node_modules/react-query/es/devtools/Logo.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (/* binding */ Logo)
/* harmony export */ });
/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ "../node_modules/@babel/runtime/helpers/esm/extends.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ "react");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);

// @ts-nocheck

function Logo(props) {
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement("svg", (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({
    width: "40px",
    height: "40px",
    viewBox: "0 0 190 190",
    version: "1.1"
  }, props), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement("g", {
    id: "Page-1",
    stroke: "none",
    strokeWidth: "1",
    fill: "none",
    fillRule: "evenodd"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement("g", {
    id: "og-white",
    transform: "translate(-33.000000, 0.000000)"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement("path", {
    d: "M72.7239712,61.3436237 C69.631224,46.362877 68.9675112,34.8727722 70.9666331,26.5293551 C72.1555965,21.5671678 74.3293088,17.5190846 77.6346064,14.5984631 C81.1241394,11.5150478 85.5360327,10.0020122 90.493257,10.0020122 C98.6712013,10.0020122 107.26826,13.7273214 116.455725,20.8044264 C120.20312,23.6910458 124.092437,27.170411 128.131651,31.2444746 C128.45314,30.8310265 128.816542,30.4410453 129.22143,30.0806152 C140.64098,19.9149716 150.255245,13.5989272 158.478408,11.1636507 C163.367899,9.715636 167.958526,9.57768202 172.138936,10.983031 C176.551631,12.4664684 180.06766,15.5329489 182.548314,19.8281091 C186.642288,26.9166735 187.721918,36.2310983 186.195595,47.7320243 C185.573451,52.4199112 184.50985,57.5263831 183.007094,63.0593153 C183.574045,63.1277086 184.142416,63.2532808 184.705041,63.4395297 C199.193932,68.2358678 209.453582,73.3937462 215.665021,79.2882839 C219.360669,82.7953831 221.773972,86.6998434 222.646365,91.0218204 C223.567176,95.5836746 222.669313,100.159332 220.191548,104.451297 C216.105211,111.529614 208.591643,117.11221 197.887587,121.534031 C193.589552,123.309539 188.726579,124.917559 183.293259,126.363748 C183.541176,126.92292 183.733521,127.516759 183.862138,128.139758 C186.954886,143.120505 187.618598,154.61061 185.619477,162.954027 C184.430513,167.916214 182.256801,171.964297 178.951503,174.884919 C175.46197,177.968334 171.050077,179.48137 166.092853,179.48137 C157.914908,179.48137 149.31785,175.756061 140.130385,168.678956 C136.343104,165.761613 132.410866,162.238839 128.325434,158.108619 C127.905075,158.765474 127.388968,159.376011 126.77857,159.919385 C115.35902,170.085028 105.744755,176.401073 97.5215915,178.836349 C92.6321009,180.284364 88.0414736,180.422318 83.8610636,179.016969 C79.4483686,177.533532 75.9323404,174.467051 73.4516862,170.171891 C69.3577116,163.083327 68.2780823,153.768902 69.8044053,142.267976 C70.449038,137.410634 71.56762,132.103898 73.1575891,126.339009 C72.5361041,126.276104 71.9120754,126.144816 71.2949591,125.940529 C56.8060684,121.144191 46.5464184,115.986312 40.3349789,110.091775 C36.6393312,106.584675 34.2260275,102.680215 33.3536352,98.3582381 C32.4328237,93.7963839 33.3306866,89.2207269 35.8084524,84.9287618 C39.8947886,77.8504443 47.4083565,72.2678481 58.1124133,67.8460273 C62.5385143,66.0176154 67.5637208,64.366822 73.1939394,62.8874674 C72.9933393,62.3969171 72.8349374,61.8811235 72.7239712,61.3436237 Z",
    id: "Path",
    fill: "#002C4B",
    fillRule: "nonzero",
    transform: "translate(128.000000, 95.000000) scale(-1, 1) translate(-128.000000, -95.000000) "
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement("path", {
    d: "M113.396882,64 L142.608177,64 C144.399254,64 146.053521,64.958025 146.944933,66.5115174 L161.577138,92.0115174 C162.461464,93.5526583 162.461464,95.4473417 161.577138,96.9884826 L146.944933,122.488483 C146.053521,124.041975 144.399254,125 142.608177,125 L113.396882,125 C111.605806,125 109.951539,124.041975 109.060126,122.488483 L94.4279211,96.9884826 C93.543596,95.4473417 93.543596,93.5526583 94.4279211,92.0115174 L109.060126,66.5115174 C109.951539,64.958025 111.605806,64 113.396882,64 Z M138.987827,70.2765273 C140.779849,70.2765273 142.434839,71.2355558 143.325899,72.7903404 L154.343038,92.0138131 C155.225607,93.5537825 155.225607,95.4462175 154.343038,96.9861869 L143.325899,116.20966 C142.434839,117.764444 140.779849,118.723473 138.987827,118.723473 L117.017233,118.723473 C115.225211,118.723473 113.570221,117.764444 112.67916,116.20966 L101.662022,96.9861869 C100.779452,95.4462175 100.779452,93.5537825 101.662022,92.0138131 L112.67916,72.7903404 C113.570221,71.2355558 115.225211,70.2765273 117.017233,70.2765273 L138.987827,70.2765273 Z M135.080648,77.1414791 L120.924411,77.1414791 C119.134228,77.1414791 117.480644,78.0985567 116.5889,79.6508285 L116.5889,79.6508285 L109.489217,92.0093494 C108.603232,93.5515958 108.603232,95.4484042 109.489217,96.9906506 L109.489217,96.9906506 L116.5889,109.349172 C117.480644,110.901443 119.134228,111.858521 120.924411,111.858521 L120.924411,111.858521 L135.080648,111.858521 C136.870831,111.858521 138.524416,110.901443 139.41616,109.349172 L139.41616,109.349172 L146.515843,96.9906506 C147.401828,95.4484042 147.401828,93.5515958 146.515843,92.0093494 L146.515843,92.0093494 L139.41616,79.6508285 C138.524416,78.0985567 136.870831,77.1414791 135.080648,77.1414791 L135.080648,77.1414791 Z M131.319186,83.7122186 C133.108028,83.7122186 134.760587,84.6678753 135.652827,86.2183156 L138.983552,92.0060969 C139.87203,93.5500005 139.87203,95.4499995 138.983552,96.9939031 L135.652827,102.781684 C134.760587,104.332125 133.108028,105.287781 131.319186,105.287781 L124.685874,105.287781 C122.897032,105.287781 121.244473,104.332125 120.352233,102.781684 L117.021508,96.9939031 C116.13303,95.4499995 116.13303,93.5500005 117.021508,92.0060969 L120.352233,86.2183156 C121.244473,84.6678753 122.897032,83.7122186 124.685874,83.7122186 L131.319186,83.7122186 Z M128.003794,90.1848875 C126.459294,90.1848875 125.034382,91.0072828 124.263005,92.3424437 C123.491732,93.6774232 123.491732,95.3225768 124.263005,96.6575563 C125.034382,97.9927172 126.459294,98.8151125 128.001266,98.8151125 L128.001266,98.8151125 C129.545766,98.8151125 130.970678,97.9927172 131.742055,96.6575563 C132.513327,95.3225768 132.513327,93.6774232 131.742055,92.3424437 C130.970678,91.0072828 129.545766,90.1848875 128.003794,90.1848875 L128.003794,90.1848875 Z M93,94.5009646 L100.767764,94.5009646",
    id: "Polygon-2",
    fill: "#FFD94C"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement("path", {
    d: "M87.8601729,108.357758 C89.1715224,107.608286 90.8360246,108.074601 91.5779424,109.399303 L91.5779424,109.399303 L92.0525843,110.24352 C95.8563392,116.982993 99.8190116,123.380176 103.940602,129.435068 C108.807881,136.585427 114.28184,143.82411 120.362479,151.151115 C121.316878,152.30114 121.184944,154.011176 120.065686,154.997937 L120.065686,154.997937 L119.454208,155.534625 C99.3465389,173.103314 86.2778188,176.612552 80.2480482,166.062341 C74.3500652,155.742717 76.4844915,136.982888 86.6513274,109.782853 C86.876818,109.179582 87.3045861,108.675291 87.8601729,108.357758 Z M173.534177,129.041504 C174.986131,128.785177 176.375496,129.742138 176.65963,131.194242 L176.65963,131.194242 L176.812815,131.986376 C181.782365,157.995459 178.283348,171 166.315764,171 C154.609745,171 139.708724,159.909007 121.612702,137.727022 C121.211349,137.235047 120.994572,136.617371 121,135.981509 C121.013158,134.480686 122.235785,133.274651 123.730918,133.287756 L123.730918,133.287756 L124.684654,133.294531 C132.305698,133.335994 139.714387,133.071591 146.910723,132.501323 C155.409039,131.82788 164.283523,130.674607 173.534177,129.041504 Z M180.408726,73.8119663 C180.932139,72.4026903 182.508386,71.6634537 183.954581,72.149012 L183.954581,72.149012 L184.742552,72.4154854 C210.583763,81.217922 220.402356,90.8916805 214.198332,101.436761 C208.129904,111.751366 190.484347,119.260339 161.26166,123.963678 C160.613529,124.067994 159.948643,123.945969 159.382735,123.618843 C158.047025,122.846729 157.602046,121.158214 158.388848,119.847438 L158.388848,119.847438 L158.889328,119.0105 C162.877183,112.31633 166.481358,105.654262 169.701854,99.0242957 C173.50501,91.1948179 177.073967,82.7907081 180.408726,73.8119663 Z M94.7383398,66.0363218 C95.3864708,65.9320063 96.0513565,66.0540315 96.6172646,66.3811573 C97.9529754,67.153271 98.3979538,68.8417862 97.6111517,70.1525615 L97.6111517,70.1525615 L97.1106718,70.9895001 C93.1228168,77.6836699 89.5186416,84.3457379 86.2981462,90.9757043 C82.49499,98.8051821 78.9260328,107.209292 75.5912744,116.188034 C75.0678608,117.59731 73.4916142,118.336546 72.045419,117.850988 L72.045419,117.850988 L71.2574475,117.584515 C45.4162372,108.782078 35.597644,99.1083195 41.8016679,88.5632391 C47.8700957,78.2486335 65.515653,70.7396611 94.7383398,66.0363218 Z M136.545792,34.4653746 C156.653461,16.8966864 169.722181,13.3874478 175.751952,23.9376587 C181.649935,34.2572826 179.515508,53.0171122 169.348673,80.2171474 C169.123182,80.8204179 168.695414,81.324709 168.139827,81.6422422 C166.828478,82.3917144 165.163975,81.9253986 164.422058,80.6006966 L164.422058,80.6006966 L163.947416,79.7564798 C160.143661,73.0170065 156.180988,66.6198239 152.059398,60.564932 C147.192119,53.4145727 141.71816,46.1758903 135.637521,38.8488847 C134.683122,37.6988602 134.815056,35.9888243 135.934314,35.0020629 L135.934314,35.0020629 Z M90.6842361,18 C102.390255,18 117.291276,29.0909926 135.387298,51.2729777 C135.788651,51.7649527 136.005428,52.3826288 136,53.0184911 C135.986842,54.5193144 134.764215,55.7253489 133.269082,55.7122445 L133.269082,55.7122445 L132.315346,55.7054689 C124.694302,55.6640063 117.285613,55.9284091 110.089277,56.4986773 C101.590961,57.17212 92.7164767,58.325393 83.4658235,59.9584962 C82.0138691,60.2148231 80.6245044,59.2578618 80.3403697,57.805758 L80.3403697,57.805758 L80.1871846,57.0136235 C75.2176347,31.0045412 78.7166519,18 90.6842361,18 Z",
    id: "Combined-Shape",
    fill: "#FF4154"
  }))));
}

/***/ }),

/***/ "../node_modules/react-query/es/devtools/devtools.js":
/*!***********************************************************!*\
  !*** ../node_modules/react-query/es/devtools/devtools.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "ReactQueryDevtools": () => (/* binding */ ReactQueryDevtools),
/* harmony export */   "ReactQueryDevtoolsPanel": () => (/* binding */ ReactQueryDevtoolsPanel)
/* harmony export */ });
/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ "../node_modules/@babel/runtime/helpers/esm/extends.js");
/* harmony import */ var _babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/esm/objectWithoutPropertiesLoose */ "../node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react */ "react");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var react_query__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! react-query */ "../node_modules/react-query/es/index.js");
/* harmony import */ var match_sorter__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! match-sorter */ "../node_modules/match-sorter/dist/match-sorter.esm.js");
/* harmony import */ var _useLocalStorage__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./useLocalStorage */ "../node_modules/react-query/es/devtools/useLocalStorage.js");
/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./utils */ "../node_modules/react-query/es/devtools/utils.js");
/* harmony import */ var _styledComponents__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./styledComponents */ "../node_modules/react-query/es/devtools/styledComponents.js");
/* harmony import */ var _theme__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./theme */ "../node_modules/react-query/es/devtools/theme.js");
/* harmony import */ var _Explorer__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./Explorer */ "../node_modules/react-query/es/devtools/Explorer.js");
/* harmony import */ var _Logo__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./Logo */ "../node_modules/react-query/es/devtools/Logo.js");
/* harmony import */ var _core_utils__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../core/utils */ "../node_modules/react-query/es/core/utils.js");


// @ts-nocheck











var isServer = typeof window === 'undefined';
function ReactQueryDevtools(_ref) {
  var initialIsOpen = _ref.initialIsOpen,
      _ref$panelProps = _ref.panelProps,
      panelProps = _ref$panelProps === void 0 ? {} : _ref$panelProps,
      _ref$closeButtonProps = _ref.closeButtonProps,
      closeButtonProps = _ref$closeButtonProps === void 0 ? {} : _ref$closeButtonProps,
      _ref$toggleButtonProp = _ref.toggleButtonProps,
      toggleButtonProps = _ref$toggleButtonProp === void 0 ? {} : _ref$toggleButtonProp,
      _ref$position = _ref.position,
      position = _ref$position === void 0 ? 'bottom-left' : _ref$position,
      _ref$containerElement = _ref.containerElement,
      Container = _ref$containerElement === void 0 ? 'footer' : _ref$containerElement;
  var rootRef = react__WEBPACK_IMPORTED_MODULE_2___default().useRef();
  var panelRef = react__WEBPACK_IMPORTED_MODULE_2___default().useRef();

  var _useLocalStorage = (0,_useLocalStorage__WEBPACK_IMPORTED_MODULE_4__.default)('reactQueryDevtoolsOpen', initialIsOpen),
      isOpen = _useLocalStorage[0],
      setIsOpen = _useLocalStorage[1];

  var _useLocalStorage2 = (0,_useLocalStorage__WEBPACK_IMPORTED_MODULE_4__.default)('reactQueryDevtoolsHeight', null),
      devtoolsHeight = _useLocalStorage2[0],
      setDevtoolsHeight = _useLocalStorage2[1];

  var _useSafeState = (0,_utils__WEBPACK_IMPORTED_MODULE_5__.useSafeState)(false),
      isResolvedOpen = _useSafeState[0],
      setIsResolvedOpen = _useSafeState[1];

  var _useSafeState2 = (0,_utils__WEBPACK_IMPORTED_MODULE_5__.useSafeState)(false),
      isResizing = _useSafeState2[0],
      setIsResizing = _useSafeState2[1];

  var _handleDragStart = function handleDragStart(panelElement, startEvent) {
    if (startEvent.button !== 0) return; // Only allow left click for drag

    setIsResizing(true);
    var dragInfo = {
      originalHeight: panelElement.getBoundingClientRect().height,
      pageY: startEvent.pageY
    };

    var run = function run(moveEvent) {
      var delta = dragInfo.pageY - moveEvent.pageY;
      var newHeight = dragInfo.originalHeight + delta;
      setDevtoolsHeight(newHeight);

      if (newHeight < 70) {
        setIsOpen(false);
      } else {
        setIsOpen(true);
      }
    };

    var unsub = function unsub() {
      setIsResizing(false);
      document.removeEventListener('mousemove', run);
      document.removeEventListener('mouseUp', unsub);
    };

    document.addEventListener('mousemove', run);
    document.addEventListener('mouseup', unsub);
  };

  react__WEBPACK_IMPORTED_MODULE_2___default().useEffect(function () {
    setIsResolvedOpen(isOpen);
  }, [isOpen, isResolvedOpen, setIsResolvedOpen]); // Toggle panel visibility before/after transition (depending on direction).
  // Prevents focusing in a closed panel.

  react__WEBPACK_IMPORTED_MODULE_2___default().useEffect(function () {
    var ref = panelRef.current;

    if (ref) {
      function handlePanelTransitionStart() {
        if (ref && isResolvedOpen) {
          ref.style.visibility = 'visible';
        }
      }

      function handlePanelTransitionEnd() {
        if (ref && !isResolvedOpen) {
          ref.style.visibility = 'hidden';
        }
      }

      ref.addEventListener('transitionstart', handlePanelTransitionStart);
      ref.addEventListener('transitionend', handlePanelTransitionEnd);
      return function () {
        ref.removeEventListener('transitionstart', handlePanelTransitionStart);
        ref.removeEventListener('transitionend', handlePanelTransitionEnd);
      };
    }
  }, [isResolvedOpen]);
  (react__WEBPACK_IMPORTED_MODULE_2___default())[isServer ? 'useEffect' : 'useLayoutEffect'](function () {
    if (isResolvedOpen) {
      var _rootRef$current;

      var previousValue = (_rootRef$current = rootRef.current) == null ? void 0 : _rootRef$current.parentElement.style.paddingBottom;

      var run = function run() {
        var _panelRef$current;

        var containerHeight = (_panelRef$current = panelRef.current) == null ? void 0 : _panelRef$current.getBoundingClientRect().height;
        rootRef.current.parentElement.style.paddingBottom = containerHeight + "px";
      };

      run();

      if (typeof window !== 'undefined') {
        window.addEventListener('resize', run);
        return function () {
          window.removeEventListener('resize', run);
          rootRef.current.parentElement.style.paddingBottom = previousValue;
        };
      }
    }
  }, [isResolvedOpen]);

  var _panelProps$style = panelProps.style,
      panelStyle = _panelProps$style === void 0 ? {} : _panelProps$style,
      otherPanelProps = (0,_babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_1__.default)(panelProps, ["style"]);

  var _closeButtonProps$sty = closeButtonProps.style,
      closeButtonStyle = _closeButtonProps$sty === void 0 ? {} : _closeButtonProps$sty,
      onCloseClick = closeButtonProps.onClick,
      otherCloseButtonProps = (0,_babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_1__.default)(closeButtonProps, ["style", "onClick"]);

  var _toggleButtonProps$st = toggleButtonProps.style,
      toggleButtonStyle = _toggleButtonProps$st === void 0 ? {} : _toggleButtonProps$st,
      onToggleClick = toggleButtonProps.onClick,
      otherToggleButtonProps = (0,_babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_1__.default)(toggleButtonProps, ["style", "onClick"]);

  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(Container, {
    ref: rootRef,
    className: "ReactQueryDevtools"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_theme__WEBPACK_IMPORTED_MODULE_6__.ThemeProvider, {
    theme: _theme__WEBPACK_IMPORTED_MODULE_6__.defaultTheme
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(ReactQueryDevtoolsPanel, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({
    ref: panelRef
  }, otherPanelProps, {
    style: (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({
      position: 'fixed',
      bottom: '0',
      right: '0',
      zIndex: '99999',
      width: '100%',
      height: devtoolsHeight != null ? devtoolsHeight : 500,
      maxHeight: '90%',
      boxShadow: '0 0 20px rgba(0,0,0,.3)',
      borderTop: "1px solid " + _theme__WEBPACK_IMPORTED_MODULE_6__.defaultTheme.gray,
      transformOrigin: 'top',
      // visibility will be toggled after transitions, but set initial state here
      visibility: isOpen ? 'visible' : 'hidden'
    }, panelStyle, isResizing ? {
      transition: "none"
    } : {
      transition: "all .2s ease"
    }, isResolvedOpen ? {
      opacity: 1,
      pointerEvents: 'all',
      transform: "translateY(0) scale(1)"
    } : {
      opacity: 0,
      pointerEvents: 'none',
      transform: "translateY(15px) scale(1.02)"
    }),
    isOpen: isResolvedOpen,
    setIsOpen: setIsOpen,
    handleDragStart: function handleDragStart(e) {
      return _handleDragStart(panelRef.current, e);
    }
  })), isResolvedOpen ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_styledComponents__WEBPACK_IMPORTED_MODULE_7__.Button, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({
    type: "button"
  }, otherCloseButtonProps, {
    onClick: function onClick() {
      setIsOpen(false);
      onCloseClick && onCloseClick();
    },
    style: (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({
      position: 'fixed',
      zIndex: '99999',
      margin: '.5rem',
      bottom: 0
    }, position === 'top-right' ? {
      right: '0'
    } : position === 'top-left' ? {
      left: '0'
    } : position === 'bottom-right' ? {
      right: '0'
    } : {
      left: '0'
    }, closeButtonStyle)
  }), "Close") : null), !isResolvedOpen ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement("button", (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({
    type: "button"
  }, otherToggleButtonProps, {
    "aria-label": "Open React Query Devtools",
    onClick: function onClick() {
      setIsOpen(true);
      onToggleClick && onToggleClick();
    },
    style: (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({
      background: 'none',
      border: 0,
      padding: 0,
      position: 'fixed',
      zIndex: '99999',
      display: 'inline-flex',
      fontSize: '1.5rem',
      margin: '.5rem',
      cursor: 'pointer',
      width: 'fit-content'
    }, position === 'top-right' ? {
      top: '0',
      right: '0'
    } : position === 'top-left' ? {
      top: '0',
      left: '0'
    } : position === 'bottom-right' ? {
      bottom: '0',
      right: '0'
    } : {
      bottom: '0',
      left: '0'
    }, toggleButtonStyle)
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_Logo__WEBPACK_IMPORTED_MODULE_8__.default, {
    "aria-hidden": true
  })) : null);
}

var getStatusRank = function getStatusRank(q) {
  return q.state.isFetching ? 0 : !q.getObserversCount() ? 3 : q.isStale() ? 2 : 1;
};

var sortFns = {
  'Status > Last Updated': function StatusLastUpdated(a, b) {
    return getStatusRank(a) === getStatusRank(b) ? sortFns['Last Updated'](a, b) : getStatusRank(a) > getStatusRank(b) ? 1 : -1;
  },
  'Query Hash': function QueryHash(a, b) {
    return a.queryHash > b.queryHash ? 1 : -1;
  },
  'Last Updated': function LastUpdated(a, b) {
    return a.state.updatedAt < b.state.updatedAt ? 1 : -1;
  }
};
var ReactQueryDevtoolsPanel = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().forwardRef(function ReactQueryDevtoolsPanel(props, ref) {
  var _activeQuery$state;

  var isOpen = props.isOpen,
      setIsOpen = props.setIsOpen,
      handleDragStart = props.handleDragStart,
      panelProps = (0,_babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_1__.default)(props, ["isOpen", "setIsOpen", "handleDragStart"]);

  var queryClient = (0,react_query__WEBPACK_IMPORTED_MODULE_9__.useQueryClient)();
  var queryCache = queryClient.getQueryCache();

  var _useLocalStorage3 = (0,_useLocalStorage__WEBPACK_IMPORTED_MODULE_4__.default)('reactQueryDevtoolsSortFn', Object.keys(sortFns)[0]),
      sort = _useLocalStorage3[0],
      setSort = _useLocalStorage3[1];

  var _useLocalStorage4 = (0,_useLocalStorage__WEBPACK_IMPORTED_MODULE_4__.default)('reactQueryDevtoolsFilter', ''),
      filter = _useLocalStorage4[0],
      setFilter = _useLocalStorage4[1];

  var _useLocalStorage5 = (0,_useLocalStorage__WEBPACK_IMPORTED_MODULE_4__.default)('reactQueryDevtoolsSortDesc', false),
      sortDesc = _useLocalStorage5[0],
      setSortDesc = _useLocalStorage5[1];

  var sortFn = react__WEBPACK_IMPORTED_MODULE_2___default().useMemo(function () {
    return sortFns[sort];
  }, [sort]);
  (react__WEBPACK_IMPORTED_MODULE_2___default())[isServer ? 'useEffect' : 'useLayoutEffect'](function () {
    if (!sortFn) {
      setSort(Object.keys(sortFns)[0]);
    }
  }, [setSort, sortFn]);

  var _useSafeState3 = (0,_utils__WEBPACK_IMPORTED_MODULE_5__.useSafeState)(Object.values(queryCache.findAll())),
      unsortedQueries = _useSafeState3[0],
      setUnsortedQueries = _useSafeState3[1];

  var _useLocalStorage6 = (0,_useLocalStorage__WEBPACK_IMPORTED_MODULE_4__.default)('reactQueryDevtoolsActiveQueryHash', ''),
      activeQueryHash = _useLocalStorage6[0],
      setActiveQueryHash = _useLocalStorage6[1];

  var queries = react__WEBPACK_IMPORTED_MODULE_2___default().useMemo(function () {
    var sorted = [].concat(unsortedQueries).sort(sortFn);

    if (sortDesc) {
      sorted.reverse();
    }

    if (!filter) {
      return sorted;
    }

    return (0,match_sorter__WEBPACK_IMPORTED_MODULE_3__.matchSorter)(sorted, filter, {
      keys: ['queryHash']
    }).filter(function (d) {
      return d.queryHash;
    });
  }, [sortDesc, sortFn, unsortedQueries, filter]);
  var activeQuery = react__WEBPACK_IMPORTED_MODULE_2___default().useMemo(function () {
    return queries.find(function (query) {
      return query.queryHash === activeQueryHash;
    });
  }, [activeQueryHash, queries]);
  var hasFresh = queries.filter(function (q) {
    return (0,_utils__WEBPACK_IMPORTED_MODULE_5__.getQueryStatusLabel)(q) === 'fresh';
  }).length;
  var hasFetching = queries.filter(function (q) {
    return (0,_utils__WEBPACK_IMPORTED_MODULE_5__.getQueryStatusLabel)(q) === 'fetching';
  }).length;
  var hasStale = queries.filter(function (q) {
    return (0,_utils__WEBPACK_IMPORTED_MODULE_5__.getQueryStatusLabel)(q) === 'stale';
  }).length;
  var hasInactive = queries.filter(function (q) {
    return (0,_utils__WEBPACK_IMPORTED_MODULE_5__.getQueryStatusLabel)(q) === 'inactive';
  }).length;
  react__WEBPACK_IMPORTED_MODULE_2___default().useEffect(function () {
    if (isOpen) {
      var unsubscribe = queryCache.subscribe(function () {
        setUnsortedQueries(Object.values(queryCache.getAll()));
      }); // re-subscribing after the panel is closed and re-opened won't trigger the callback,
      // So we'll manually populate our state

      setUnsortedQueries(Object.values(queryCache.getAll()));
      return unsubscribe;
    }

    return undefined;
  }, [isOpen, sort, sortFn, sortDesc, setUnsortedQueries, queryCache]);

  var handleRefetch = function handleRefetch() {
    var promise = activeQuery.fetch();
    promise.catch(_core_utils__WEBPACK_IMPORTED_MODULE_10__.noop);
  };

  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_theme__WEBPACK_IMPORTED_MODULE_6__.ThemeProvider, {
    theme: _theme__WEBPACK_IMPORTED_MODULE_6__.defaultTheme
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_styledComponents__WEBPACK_IMPORTED_MODULE_7__.Panel, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({
    ref: ref,
    className: "ReactQueryDevtoolsPanel"
  }, panelProps, {
    suppressHydrationWarning: true
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement("style", {
    dangerouslySetInnerHTML: {
      __html: "\n            .ReactQueryDevtoolsPanel * {\n              scrollbar-color: " + _theme__WEBPACK_IMPORTED_MODULE_6__.defaultTheme.backgroundAlt + " " + _theme__WEBPACK_IMPORTED_MODULE_6__.defaultTheme.gray + ";\n            }\n\n            .ReactQueryDevtoolsPanel *::-webkit-scrollbar, .ReactQueryDevtoolsPanel scrollbar {\n              width: 1rem;\n              height: 1rem;\n            }\n\n            .ReactQueryDevtoolsPanel *::-webkit-scrollbar-track, .ReactQueryDevtoolsPanel scrollbar-track {\n              background: " + _theme__WEBPACK_IMPORTED_MODULE_6__.defaultTheme.backgroundAlt + ";\n            }\n\n            .ReactQueryDevtoolsPanel *::-webkit-scrollbar-thumb, .ReactQueryDevtoolsPanel scrollbar-thumb {\n              background: " + _theme__WEBPACK_IMPORTED_MODULE_6__.defaultTheme.gray + ";\n              border-radius: .5rem;\n              border: 3px solid " + _theme__WEBPACK_IMPORTED_MODULE_6__.defaultTheme.backgroundAlt + ";\n            }\n          "
    }
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement("div", {
    style: {
      position: 'absolute',
      left: 0,
      top: 0,
      width: '100%',
      height: '4px',
      marginBottom: '-4px',
      cursor: 'row-resize',
      zIndex: 100000
    },
    onMouseDown: handleDragStart
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement("div", {
    style: {
      flex: '1 1 500px',
      minHeight: '40%',
      maxHeight: '100%',
      overflow: 'auto',
      borderRight: "1px solid " + _theme__WEBPACK_IMPORTED_MODULE_6__.defaultTheme.grayAlt,
      display: 'flex',
      flexDirection: 'column'
    }
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement("div", {
    style: {
      padding: '.5rem',
      background: _theme__WEBPACK_IMPORTED_MODULE_6__.defaultTheme.backgroundAlt,
      display: 'flex',
      justifyContent: 'space-between',
      alignItems: 'center'
    }
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_Logo__WEBPACK_IMPORTED_MODULE_8__.default, {
    "aria-hidden": true,
    style: {
      marginRight: '.5rem'
    }
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement("div", {
    style: {
      display: 'flex',
      flexDirection: 'column'
    }
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_styledComponents__WEBPACK_IMPORTED_MODULE_7__.QueryKeys, {
    style: {
      marginBottom: '.5rem'
    }
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_styledComponents__WEBPACK_IMPORTED_MODULE_7__.QueryKey, {
    suppressHydrationWarning: true,
    style: {
      background: _theme__WEBPACK_IMPORTED_MODULE_6__.defaultTheme.success,
      opacity: hasFresh ? 1 : 0.3
    }
  }, "fresh ", /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_styledComponents__WEBPACK_IMPORTED_MODULE_7__.Code, {
    suppressHydrationWarning: true
  }, "(", hasFresh, ")")), ' ', /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_styledComponents__WEBPACK_IMPORTED_MODULE_7__.QueryKey, {
    suppressHydrationWarning: true,
    style: {
      background: _theme__WEBPACK_IMPORTED_MODULE_6__.defaultTheme.active,
      opacity: hasFetching ? 1 : 0.3
    }
  }, "fetching", ' ', /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_styledComponents__WEBPACK_IMPORTED_MODULE_7__.Code, {
    suppressHydrationWarning: true
  }, "(", hasFetching, ")")), ' ', /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_styledComponents__WEBPACK_IMPORTED_MODULE_7__.QueryKey, {
    suppressHydrationWarning: true,
    style: {
      background: _theme__WEBPACK_IMPORTED_MODULE_6__.defaultTheme.warning,
      color: 'black',
      textShadow: '0',
      opacity: hasStale ? 1 : 0.3
    }
  }, "stale ", /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_styledComponents__WEBPACK_IMPORTED_MODULE_7__.Code, {
    suppressHydrationWarning: true
  }, "(", hasStale, ")")), ' ', /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_styledComponents__WEBPACK_IMPORTED_MODULE_7__.QueryKey, {
    suppressHydrationWarning: true,
    style: {
      background: _theme__WEBPACK_IMPORTED_MODULE_6__.defaultTheme.gray,
      opacity: hasInactive ? 1 : 0.3
    }
  }, "inactive", ' ', /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_styledComponents__WEBPACK_IMPORTED_MODULE_7__.Code, {
    suppressHydrationWarning: true
  }, "(", hasInactive, ")"))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement("div", {
    style: {
      display: 'flex',
      alignItems: 'center'
    }
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_styledComponents__WEBPACK_IMPORTED_MODULE_7__.Input, {
    placeholder: "Filter",
    value: filter != null ? filter : '',
    onChange: function onChange(e) {
      return setFilter(e.target.value);
    },
    onKeyDown: function onKeyDown(e) {
      if (e.key === 'Escape') setFilter('');
    },
    style: {
      flex: '1',
      marginRight: '.5rem'
    }
  }), !filter ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement((react__WEBPACK_IMPORTED_MODULE_2___default().Fragment), null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_styledComponents__WEBPACK_IMPORTED_MODULE_7__.Select, {
    value: sort,
    onChange: function onChange(e) {
      return setSort(e.target.value);
    },
    style: {
      flex: '1',
      minWidth: 75,
      marginRight: '.5rem'
    }
  }, Object.keys(sortFns).map(function (key) {
    return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement("option", {
      key: key,
      value: key
    }, "Sort by ", key);
  })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_styledComponents__WEBPACK_IMPORTED_MODULE_7__.Button, {
    type: "button",
    onClick: function onClick() {
      return setSortDesc(function (old) {
        return !old;
      });
    },
    style: {
      padding: '.3rem .4rem'
    }
  }, sortDesc ? '⬇ Desc' : '⬆ Asc')) : null))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement("div", {
    suppressHydrationWarning: true,
    style: {
      overflowY: 'auto',
      flex: '1'
    }
  }, queries.map(function (query, i) {
    return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement("div", {
      suppressHydrationWarning: true,
      key: query.queryHash || i,
      onClick: function onClick() {
        return setActiveQueryHash(activeQueryHash === query.queryHash ? '' : query.queryHash);
      },
      style: {
        display: 'flex',
        borderBottom: "solid 1px " + _theme__WEBPACK_IMPORTED_MODULE_6__.defaultTheme.grayAlt,
        cursor: 'pointer',
        background: query === activeQuery ? 'rgba(255,255,255,.1)' : undefined
      }
    }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement("div", {
      suppressHydrationWarning: true,
      style: {
        flex: '0 0 auto',
        width: '2rem',
        height: '2rem',
        background: (0,_utils__WEBPACK_IMPORTED_MODULE_5__.getQueryStatusColor)(query, _theme__WEBPACK_IMPORTED_MODULE_6__.defaultTheme),
        display: 'flex',
        alignItems: 'center',
        justifyContent: 'center',
        fontWeight: 'bold',
        textShadow: (0,_utils__WEBPACK_IMPORTED_MODULE_5__.getQueryStatusLabel)(query) === 'stale' ? '0' : '0 0 10px black',
        color: (0,_utils__WEBPACK_IMPORTED_MODULE_5__.getQueryStatusLabel)(query) === 'stale' ? 'black' : 'white'
      }
    }, query.getObserversCount()), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_styledComponents__WEBPACK_IMPORTED_MODULE_7__.Code, {
      suppressHydrationWarning: true,
      style: {
        padding: '.5rem'
      }
    }, "" + query.queryHash));
  }))), activeQuery ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_styledComponents__WEBPACK_IMPORTED_MODULE_7__.ActiveQueryPanel, null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement("div", {
    style: {
      padding: '.5rem',
      background: _theme__WEBPACK_IMPORTED_MODULE_6__.defaultTheme.backgroundAlt,
      position: 'sticky',
      top: 0,
      zIndex: 1
    }
  }, "Query Details"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement("div", {
    style: {
      padding: '.5rem'
    }
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement("div", {
    style: {
      marginBottom: '.5rem',
      display: 'flex',
      alignItems: 'stretch',
      justifyContent: 'space-between'
    }
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_styledComponents__WEBPACK_IMPORTED_MODULE_7__.Code, {
    style: {
      lineHeight: '1.8rem'
    }
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement("pre", {
    style: {
      margin: 0,
      padding: 0,
      overflow: 'auto'
    }
  }, JSON.stringify(activeQuery.queryKey, null, 2))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement("span", {
    style: {
      padding: '0.3rem .6rem',
      borderRadius: '0.4rem',
      fontWeight: 'bold',
      textShadow: '0 2px 10px black',
      background: (0,_utils__WEBPACK_IMPORTED_MODULE_5__.getQueryStatusColor)(activeQuery, _theme__WEBPACK_IMPORTED_MODULE_6__.defaultTheme),
      flexShrink: 0
    }
  }, (0,_utils__WEBPACK_IMPORTED_MODULE_5__.getQueryStatusLabel)(activeQuery))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement("div", {
    style: {
      marginBottom: '.5rem',
      display: 'flex',
      alignItems: 'center',
      justifyContent: 'space-between'
    }
  }, "Observers: ", /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_styledComponents__WEBPACK_IMPORTED_MODULE_7__.Code, null, activeQuery.getObserversCount())), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement("div", {
    style: {
      display: 'flex',
      alignItems: 'center',
      justifyContent: 'space-between'
    }
  }, "Last Updated:", ' ', /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_styledComponents__WEBPACK_IMPORTED_MODULE_7__.Code, null, new Date(activeQuery.state.dataUpdatedAt).toLocaleTimeString()))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement("div", {
    style: {
      background: _theme__WEBPACK_IMPORTED_MODULE_6__.defaultTheme.backgroundAlt,
      padding: '.5rem',
      position: 'sticky',
      top: 0,
      zIndex: 1
    }
  }, "Actions"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement("div", {
    style: {
      padding: '0.5rem'
    }
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_styledComponents__WEBPACK_IMPORTED_MODULE_7__.Button, {
    type: "button",
    onClick: handleRefetch,
    disabled: activeQuery.state.isFetching,
    style: {
      background: _theme__WEBPACK_IMPORTED_MODULE_6__.defaultTheme.active
    }
  }, "Refetch"), ' ', /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_styledComponents__WEBPACK_IMPORTED_MODULE_7__.Button, {
    type: "button",
    onClick: function onClick() {
      return queryClient.invalidateQueries(activeQuery);
    },
    style: {
      background: _theme__WEBPACK_IMPORTED_MODULE_6__.defaultTheme.warning,
      color: _theme__WEBPACK_IMPORTED_MODULE_6__.defaultTheme.inputTextColor
    }
  }, "Invalidate"), ' ', /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_styledComponents__WEBPACK_IMPORTED_MODULE_7__.Button, {
    type: "button",
    onClick: function onClick() {
      return queryClient.resetQueries(activeQuery);
    },
    style: {
      background: _theme__WEBPACK_IMPORTED_MODULE_6__.defaultTheme.gray
    }
  }, "Reset"), ' ', /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_styledComponents__WEBPACK_IMPORTED_MODULE_7__.Button, {
    type: "button",
    onClick: function onClick() {
      return queryClient.removeQueries(activeQuery);
    },
    style: {
      background: _theme__WEBPACK_IMPORTED_MODULE_6__.defaultTheme.danger
    }
  }, "Remove")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement("div", {
    style: {
      background: _theme__WEBPACK_IMPORTED_MODULE_6__.defaultTheme.backgroundAlt,
      padding: '.5rem',
      position: 'sticky',
      top: 0,
      zIndex: 1
    }
  }, "Data Explorer"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement("div", {
    style: {
      padding: '.5rem'
    }
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_Explorer__WEBPACK_IMPORTED_MODULE_11__.default, {
    label: "Data",
    value: activeQuery == null ? void 0 : (_activeQuery$state = activeQuery.state) == null ? void 0 : _activeQuery$state.data,
    defaultExpanded: {}
  })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement("div", {
    style: {
      background: _theme__WEBPACK_IMPORTED_MODULE_6__.defaultTheme.backgroundAlt,
      padding: '.5rem',
      position: 'sticky',
      top: 0,
      zIndex: 1
    }
  }, "Query Explorer"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement("div", {
    style: {
      padding: '.5rem'
    }
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(_Explorer__WEBPACK_IMPORTED_MODULE_11__.default, {
    label: "Query",
    value: activeQuery,
    defaultExpanded: {
      queryKey: true
    }
  }))) : null));
});

/***/ }),

/***/ "../node_modules/react-query/es/devtools/index.js":
/*!********************************************************!*\
  !*** ../node_modules/react-query/es/devtools/index.js ***!
  \********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "ReactQueryDevtools": () => (/* reexport safe */ _devtools__WEBPACK_IMPORTED_MODULE_0__.ReactQueryDevtools),
/* harmony export */   "ReactQueryDevtoolsPanel": () => (/* reexport safe */ _devtools__WEBPACK_IMPORTED_MODULE_0__.ReactQueryDevtoolsPanel)
/* harmony export */ });
/* harmony import */ var _devtools__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./devtools */ "../node_modules/react-query/es/devtools/devtools.js");


/***/ }),

/***/ "../node_modules/react-query/es/devtools/styledComponents.js":
/*!*******************************************************************!*\
  !*** ../node_modules/react-query/es/devtools/styledComponents.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "Panel": () => (/* binding */ Panel),
/* harmony export */   "ActiveQueryPanel": () => (/* binding */ ActiveQueryPanel),
/* harmony export */   "Button": () => (/* binding */ Button),
/* harmony export */   "QueryKeys": () => (/* binding */ QueryKeys),
/* harmony export */   "QueryKey": () => (/* binding */ QueryKey),
/* harmony export */   "Code": () => (/* binding */ Code),
/* harmony export */   "Input": () => (/* binding */ Input),
/* harmony export */   "Select": () => (/* binding */ Select)
/* harmony export */ });
/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./utils */ "../node_modules/react-query/es/devtools/utils.js");
// @ts-nocheck

var Panel = (0,_utils__WEBPACK_IMPORTED_MODULE_0__.styled)('div', function (props, theme) {
  return {
    fontSize: 'clamp(12px, 1.5vw, 14px)',
    fontFamily: "sans-serif",
    display: 'flex',
    backgroundColor: theme.background,
    color: theme.foreground
  };
}, {
  '(max-width: 700px)': {
    flexDirection: 'column'
  },
  '(max-width: 600px)': {
    fontSize: '.9rem' // flexDirection: 'column',

  }
});
var ActiveQueryPanel = (0,_utils__WEBPACK_IMPORTED_MODULE_0__.styled)('div', function (props, theme) {
  return {
    flex: '1 1 500px',
    display: 'flex',
    flexDirection: 'column',
    overflow: 'auto',
    height: '100%'
  };
}, {
  '(max-width: 700px)': function maxWidth700px(props, theme) {
    return {
      borderTop: "2px solid " + theme.gray
    };
  }
});
var Button = (0,_utils__WEBPACK_IMPORTED_MODULE_0__.styled)('button', function (props, theme) {
  return {
    appearance: 'none',
    fontSize: '.9em',
    fontWeight: 'bold',
    background: theme.gray,
    border: '0',
    borderRadius: '.3em',
    color: 'white',
    padding: '.5em',
    opacity: props.disabled ? '.5' : undefined,
    cursor: 'pointer'
  };
});
var QueryKeys = (0,_utils__WEBPACK_IMPORTED_MODULE_0__.styled)('span', {
  display: 'inline-block',
  fontSize: '0.9em'
});
var QueryKey = (0,_utils__WEBPACK_IMPORTED_MODULE_0__.styled)('span', {
  display: 'inline-flex',
  alignItems: 'center',
  padding: '.2em .4em',
  fontWeight: 'bold',
  textShadow: '0 0 10px black',
  borderRadius: '.2em'
});
var Code = (0,_utils__WEBPACK_IMPORTED_MODULE_0__.styled)('code', {
  fontSize: '.9em'
});
var Input = (0,_utils__WEBPACK_IMPORTED_MODULE_0__.styled)('input', function (props, theme) {
  return {
    backgroundColor: theme.inputBackgroundColor,
    border: 0,
    borderRadius: '.2em',
    color: theme.inputTextColor,
    fontSize: '.9em',
    lineHeight: "1.3",
    padding: '.3em .4em'
  };
});
var Select = (0,_utils__WEBPACK_IMPORTED_MODULE_0__.styled)('select', function (props, theme) {
  return {
    display: "inline-block",
    fontSize: ".9em",
    fontFamily: "sans-serif",
    fontWeight: 'normal',
    lineHeight: "1.3",
    padding: ".3em 1.5em .3em .5em",
    height: 'auto',
    border: 0,
    borderRadius: ".2em",
    appearance: "none",
    WebkitAppearance: 'none',
    backgroundColor: theme.inputBackgroundColor,
    backgroundImage: "url(\"data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100' height='100' fill='%23444444'><polygon points='0,25 100,25 50,75'/></svg>\")",
    backgroundRepeat: "no-repeat",
    backgroundPosition: "right .55em center",
    backgroundSize: ".65em auto, 100%",
    color: theme.inputTextColor
  };
}, {
  '(max-width: 500px)': {
    display: 'none'
  }
});

/***/ }),

/***/ "../node_modules/react-query/es/devtools/theme.js":
/*!********************************************************!*\
  !*** ../node_modules/react-query/es/devtools/theme.js ***!
  \********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "defaultTheme": () => (/* binding */ defaultTheme),
/* harmony export */   "ThemeProvider": () => (/* binding */ ThemeProvider),
/* harmony export */   "useTheme": () => (/* binding */ useTheme)
/* harmony export */ });
/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ "../node_modules/@babel/runtime/helpers/esm/extends.js");
/* harmony import */ var _babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/esm/objectWithoutPropertiesLoose */ "../node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react */ "react");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);



var defaultTheme = {
  background: '#0b1521',
  backgroundAlt: '#132337',
  foreground: 'white',
  gray: '#3f4e60',
  grayAlt: '#222e3e',
  inputBackgroundColor: '#fff',
  inputTextColor: '#000',
  success: '#00ab52',
  danger: '#ff0085',
  active: '#006bff',
  warning: '#ffb200'
};
var ThemeContext = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createContext(defaultTheme);
function ThemeProvider(_ref) {
  var theme = _ref.theme,
      rest = (0,_babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_1__.default)(_ref, ["theme"]);

  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(ThemeContext.Provider, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({
    value: theme
  }, rest));
}
function useTheme() {
  return react__WEBPACK_IMPORTED_MODULE_2___default().useContext(ThemeContext);
}

/***/ }),

/***/ "../node_modules/react-query/es/devtools/useLocalStorage.js":
/*!******************************************************************!*\
  !*** ../node_modules/react-query/es/devtools/useLocalStorage.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (/* binding */ useLocalStorage)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
// @ts-nocheck


var getItem = function getItem(key) {
  try {
    return JSON.parse(localStorage.getItem(key));
  } catch (_unused) {
    return undefined;
  }
};

function useLocalStorage(key, defaultValue) {
  var _React$useState = react__WEBPACK_IMPORTED_MODULE_0___default().useState(),
      value = _React$useState[0],
      setValue = _React$useState[1];

  react__WEBPACK_IMPORTED_MODULE_0___default().useEffect(function () {
    var initialValue = getItem(key);

    if (typeof initialValue === 'undefined' || initialValue === null) {
      setValue(typeof defaultValue === 'function' ? defaultValue() : defaultValue);
    } else {
      setValue(initialValue);
    }
  }, [defaultValue, key]);
  var setter = react__WEBPACK_IMPORTED_MODULE_0___default().useCallback(function (updater) {
    setValue(function (old) {
      var newVal = updater;

      if (typeof updater == 'function') {
        newVal = updater(old);
      }

      try {
        localStorage.setItem(key, JSON.stringify(newVal));
      } catch (_unused2) {}

      return newVal;
    });
  }, [key]);
  return [value, setter];
}

/***/ }),

/***/ "../node_modules/react-query/es/devtools/useMediaQuery.js":
/*!****************************************************************!*\
  !*** ../node_modules/react-query/es/devtools/useMediaQuery.js ***!
  \****************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (/* binding */ useMediaQuery)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
// @ts-nocheck

function useMediaQuery(query) {
  // Keep track of the preference in state, start with the current match
  var _React$useState = react__WEBPACK_IMPORTED_MODULE_0___default().useState(function () {
    if (typeof window !== 'undefined') {
      return window.matchMedia && window.matchMedia(query).matches;
    }
  }),
      isMatch = _React$useState[0],
      setIsMatch = _React$useState[1]; // Watch for changes


  react__WEBPACK_IMPORTED_MODULE_0___default().useEffect(function () {
    if (typeof window !== 'undefined') {
      if (!window.matchMedia) {
        return;
      } // Create a matcher


      var matcher = window.matchMedia(query); // Create our handler

      var onChange = function onChange(_ref) {
        var matches = _ref.matches;
        return setIsMatch(matches);
      }; // Listen for changes


      matcher.addListener(onChange);
      return function () {
        // Stop listening for changes
        matcher.removeListener(onChange);
      };
    }
  }, [isMatch, query, setIsMatch]);
  return isMatch;
}

/***/ }),

/***/ "../node_modules/react-query/es/devtools/utils.js":
/*!********************************************************!*\
  !*** ../node_modules/react-query/es/devtools/utils.js ***!
  \********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "isServer": () => (/* binding */ isServer),
/* harmony export */   "getQueryStatusColor": () => (/* binding */ getQueryStatusColor),
/* harmony export */   "getQueryStatusLabel": () => (/* binding */ getQueryStatusLabel),
/* harmony export */   "styled": () => (/* binding */ styled),
/* harmony export */   "useSafeState": () => (/* binding */ useSafeState)
/* harmony export */ });
/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ "../node_modules/@babel/runtime/helpers/esm/extends.js");
/* harmony import */ var _babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/esm/objectWithoutPropertiesLoose */ "../node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react */ "react");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _theme__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./theme */ "../node_modules/react-query/es/devtools/theme.js");
/* harmony import */ var _useMediaQuery__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./useMediaQuery */ "../node_modules/react-query/es/devtools/useMediaQuery.js");


// @ts-nocheck



var isServer = typeof window === 'undefined';
function getQueryStatusColor(query, theme) {
  return query.state.isFetching ? theme.active : query.isStale() ? theme.warning : !query.getObserversCount() ? theme.gray : theme.success;
}
function getQueryStatusLabel(query) {
  return query.state.isFetching ? 'fetching' : !query.getObserversCount() ? 'inactive' : query.isStale() ? 'stale' : 'fresh';
}
function styled(type, newStyles, queries) {
  if (queries === void 0) {
    queries = {};
  }

  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().forwardRef(function (_ref, ref) {
    var style = _ref.style,
        rest = (0,_babel_runtime_helpers_esm_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_1__.default)(_ref, ["style"]);

    var theme = (0,_theme__WEBPACK_IMPORTED_MODULE_3__.useTheme)();
    var mediaStyles = Object.entries(queries).reduce(function (current, _ref2) {
      var key = _ref2[0],
          value = _ref2[1];
      // eslint-disable-next-line react-hooks/rules-of-hooks
      return (0,_useMediaQuery__WEBPACK_IMPORTED_MODULE_4__.default)(key) ? (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, current, typeof value === 'function' ? value(rest, theme) : value) : current;
    }, {});
    return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_2___default().createElement(type, (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, rest, {
      style: (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, typeof newStyles === 'function' ? newStyles(rest, theme) : newStyles, style, mediaStyles),
      ref: ref
    }));
  });
}

function useIsMounted() {
  var mountedRef = react__WEBPACK_IMPORTED_MODULE_2___default().useRef(false);
  var isMounted = react__WEBPACK_IMPORTED_MODULE_2___default().useCallback(function () {
    return mountedRef.current;
  }, []);
  (react__WEBPACK_IMPORTED_MODULE_2___default())[isServer ? 'useEffect' : 'useLayoutEffect'](function () {
    mountedRef.current = true;
    return function () {
      mountedRef.current = false;
    };
  }, []);
  return isMounted;
}
/**
 * This hook is a safe useState version which schedules state updates in microtasks
 * to prevent updating a component state while React is rendering different components
 * or when the component is not mounted anymore.
 */


function useSafeState(initialState) {
  var isMounted = useIsMounted();

  var _React$useState = react__WEBPACK_IMPORTED_MODULE_2___default().useState(initialState),
      state = _React$useState[0],
      setState = _React$useState[1];

  var safeSetState = react__WEBPACK_IMPORTED_MODULE_2___default().useCallback(function (value) {
    scheduleMicrotask(function () {
      if (isMounted()) {
        setState(value);
      }
    });
  }, [isMounted]);
  return [state, safeSetState];
}
/**
 * Schedules a microtask.
 * This can be useful to schedule state updates after rendering.
 */

function scheduleMicrotask(callback) {
  Promise.resolve().then(callback).catch(function (error) {
    return setTimeout(function () {
      throw error;
    });
  });
}

/***/ }),

/***/ "../node_modules/react-query/es/index.js":
/*!***********************************************!*\
  !*** ../node_modules/react-query/es/index.js ***!
  \***********************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./core */ "../node_modules/react-query/es/core/index.js");
/* harmony reexport (unknown) */ var __WEBPACK_REEXPORT_OBJECT__ = {};
/* harmony reexport (unknown) */ for(const __WEBPACK_IMPORT_KEY__ in _core__WEBPACK_IMPORTED_MODULE_0__) if(__WEBPACK_IMPORT_KEY__ !== "default") __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = () => _core__WEBPACK_IMPORTED_MODULE_0__[__WEBPACK_IMPORT_KEY__]
/* harmony reexport (unknown) */ __webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__);
/* harmony import */ var _react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./react */ "../node_modules/react-query/es/react/index.js");
/* harmony reexport (unknown) */ var __WEBPACK_REEXPORT_OBJECT__ = {};
/* harmony reexport (unknown) */ for(const __WEBPACK_IMPORT_KEY__ in _react__WEBPACK_IMPORTED_MODULE_1__) if(["default","CancelledError","QueryCache","QueryClient","QueryObserver","QueriesObserver","InfiniteQueryObserver","MutationCache","MutationObserver","setLogger","notifyManager","focusManager","onlineManager","hashQueryKey","isError","isCancelledError"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = () => _react__WEBPACK_IMPORTED_MODULE_1__[__WEBPACK_IMPORT_KEY__]
/* harmony reexport (unknown) */ __webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__);



/***/ }),

/***/ "../node_modules/react-query/es/react/QueryClientProvider.js":
/*!*******************************************************************!*\
  !*** ../node_modules/react-query/es/react/QueryClientProvider.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "useQueryClient": () => (/* binding */ useQueryClient),
/* harmony export */   "QueryClientProvider": () => (/* binding */ QueryClientProvider)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);

var defaultContext = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createContext(undefined);
var QueryClientSharingContext = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createContext(false); // if contextSharing is on, we share the first and at least one
// instance of the context across the window
// to ensure that if React Query is used across
// different bundles or microfrontends they will
// all use the same **instance** of context, regardless
// of module scoping.

function getQueryClientContext(contextSharing) {
  if (contextSharing && typeof window !== 'undefined') {
    if (!window.ReactQueryClientContext) {
      window.ReactQueryClientContext = defaultContext;
    }

    return window.ReactQueryClientContext;
  }

  return defaultContext;
}

var useQueryClient = function useQueryClient() {
  var queryClient = react__WEBPACK_IMPORTED_MODULE_0___default().useContext(getQueryClientContext(react__WEBPACK_IMPORTED_MODULE_0___default().useContext(QueryClientSharingContext)));

  if (!queryClient) {
    throw new Error('No QueryClient set, use QueryClientProvider to set one');
  }

  return queryClient;
};
var QueryClientProvider = function QueryClientProvider(_ref) {
  var client = _ref.client,
      _ref$contextSharing = _ref.contextSharing,
      contextSharing = _ref$contextSharing === void 0 ? false : _ref$contextSharing,
      children = _ref.children;
  react__WEBPACK_IMPORTED_MODULE_0___default().useEffect(function () {
    client.mount();
    return function () {
      client.unmount();
    };
  }, [client]);
  var Context = getQueryClientContext(contextSharing);
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(QueryClientSharingContext.Provider, {
    value: contextSharing
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(Context.Provider, {
    value: client
  }, children));
};

/***/ }),

/***/ "../node_modules/react-query/es/react/QueryErrorResetBoundary.js":
/*!***********************************************************************!*\
  !*** ../node_modules/react-query/es/react/QueryErrorResetBoundary.js ***!
  \***********************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "useQueryErrorResetBoundary": () => (/* binding */ useQueryErrorResetBoundary),
/* harmony export */   "QueryErrorResetBoundary": () => (/* binding */ QueryErrorResetBoundary)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
 // CONTEXT

function createValue() {
  var _isReset = false;
  return {
    clearReset: function clearReset() {
      _isReset = false;
    },
    reset: function reset() {
      _isReset = true;
    },
    isReset: function isReset() {
      return _isReset;
    }
  };
}

var QueryErrorResetBoundaryContext = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createContext(createValue()); // HOOK

var useQueryErrorResetBoundary = function useQueryErrorResetBoundary() {
  return react__WEBPACK_IMPORTED_MODULE_0___default().useContext(QueryErrorResetBoundaryContext);
}; // COMPONENT

var QueryErrorResetBoundary = function QueryErrorResetBoundary(_ref) {
  var children = _ref.children;
  var value = react__WEBPACK_IMPORTED_MODULE_0___default().useMemo(function () {
    return createValue();
  }, []);
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(QueryErrorResetBoundaryContext.Provider, {
    value: value
  }, typeof children === 'function' ? children(value) : children);
};

/***/ }),

/***/ "../node_modules/react-query/es/react/index.js":
/*!*****************************************************!*\
  !*** ../node_modules/react-query/es/react/index.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "QueryClientProvider": () => (/* reexport safe */ _QueryClientProvider__WEBPACK_IMPORTED_MODULE_2__.QueryClientProvider),
/* harmony export */   "useQueryClient": () => (/* reexport safe */ _QueryClientProvider__WEBPACK_IMPORTED_MODULE_2__.useQueryClient),
/* harmony export */   "QueryErrorResetBoundary": () => (/* reexport safe */ _QueryErrorResetBoundary__WEBPACK_IMPORTED_MODULE_3__.QueryErrorResetBoundary),
/* harmony export */   "useQueryErrorResetBoundary": () => (/* reexport safe */ _QueryErrorResetBoundary__WEBPACK_IMPORTED_MODULE_3__.useQueryErrorResetBoundary),
/* harmony export */   "useIsFetching": () => (/* reexport safe */ _useIsFetching__WEBPACK_IMPORTED_MODULE_4__.useIsFetching),
/* harmony export */   "useIsMutating": () => (/* reexport safe */ _useIsMutating__WEBPACK_IMPORTED_MODULE_5__.useIsMutating),
/* harmony export */   "useMutation": () => (/* reexport safe */ _useMutation__WEBPACK_IMPORTED_MODULE_6__.useMutation),
/* harmony export */   "useQuery": () => (/* reexport safe */ _useQuery__WEBPACK_IMPORTED_MODULE_7__.useQuery),
/* harmony export */   "useQueries": () => (/* reexport safe */ _useQueries__WEBPACK_IMPORTED_MODULE_8__.useQueries),
/* harmony export */   "useInfiniteQuery": () => (/* reexport safe */ _useInfiniteQuery__WEBPACK_IMPORTED_MODULE_9__.useInfiniteQuery)
/* harmony export */ });
/* harmony import */ var _setBatchUpdatesFn__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./setBatchUpdatesFn */ "../node_modules/react-query/es/react/setBatchUpdatesFn.js");
/* harmony import */ var _setLogger__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./setLogger */ "../node_modules/react-query/es/react/setLogger.js");
/* harmony import */ var _QueryClientProvider__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./QueryClientProvider */ "../node_modules/react-query/es/react/QueryClientProvider.js");
/* harmony import */ var _QueryErrorResetBoundary__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./QueryErrorResetBoundary */ "../node_modules/react-query/es/react/QueryErrorResetBoundary.js");
/* harmony import */ var _useIsFetching__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./useIsFetching */ "../node_modules/react-query/es/react/useIsFetching.js");
/* harmony import */ var _useIsMutating__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./useIsMutating */ "../node_modules/react-query/es/react/useIsMutating.js");
/* harmony import */ var _useMutation__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./useMutation */ "../node_modules/react-query/es/react/useMutation.js");
/* harmony import */ var _useQuery__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./useQuery */ "../node_modules/react-query/es/react/useQuery.js");
/* harmony import */ var _useQueries__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./useQueries */ "../node_modules/react-query/es/react/useQueries.js");
/* harmony import */ var _useInfiniteQuery__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./useInfiniteQuery */ "../node_modules/react-query/es/react/useInfiniteQuery.js");
/* harmony import */ var _types__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./types */ "../node_modules/react-query/es/react/types.js");
/* harmony import */ var _types__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(_types__WEBPACK_IMPORTED_MODULE_10__);
/* harmony reexport (unknown) */ var __WEBPACK_REEXPORT_OBJECT__ = {};
/* harmony reexport (unknown) */ for(const __WEBPACK_IMPORT_KEY__ in _types__WEBPACK_IMPORTED_MODULE_10__) if(["default","QueryClientProvider","useQueryClient","QueryErrorResetBoundary","useQueryErrorResetBoundary","useIsFetching","useIsMutating","useMutation","useQuery","useQueries","useInfiniteQuery"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = () => _types__WEBPACK_IMPORTED_MODULE_10__[__WEBPACK_IMPORT_KEY__]
/* harmony reexport (unknown) */ __webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__);
// Side effects









 // Types



/***/ }),

/***/ "../node_modules/react-query/es/react/logger.js":
/*!******************************************************!*\
  !*** ../node_modules/react-query/es/react/logger.js ***!
  \******************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "logger": () => (/* binding */ logger)
/* harmony export */ });
var logger = console;

/***/ }),

/***/ "../node_modules/react-query/es/react/reactBatchedUpdates.js":
/*!*******************************************************************!*\
  !*** ../node_modules/react-query/es/react/reactBatchedUpdates.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "unstable_batchedUpdates": () => (/* binding */ unstable_batchedUpdates)
/* harmony export */ });
/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react-dom */ "react-dom");
/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_dom__WEBPACK_IMPORTED_MODULE_0__);

var unstable_batchedUpdates = (react_dom__WEBPACK_IMPORTED_MODULE_0___default().unstable_batchedUpdates);

/***/ }),

/***/ "../node_modules/react-query/es/react/setBatchUpdatesFn.js":
/*!*****************************************************************!*\
  !*** ../node_modules/react-query/es/react/setBatchUpdatesFn.js ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../core */ "../node_modules/react-query/es/core/notifyManager.js");
/* harmony import */ var _reactBatchedUpdates__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./reactBatchedUpdates */ "../node_modules/react-query/es/react/reactBatchedUpdates.js");


_core__WEBPACK_IMPORTED_MODULE_0__.notifyManager.setBatchNotifyFunction(_reactBatchedUpdates__WEBPACK_IMPORTED_MODULE_1__.unstable_batchedUpdates);

/***/ }),

/***/ "../node_modules/react-query/es/react/setLogger.js":
/*!*********************************************************!*\
  !*** ../node_modules/react-query/es/react/setLogger.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core */ "../node_modules/react-query/es/core/logger.js");
/* harmony import */ var _logger__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./logger */ "../node_modules/react-query/es/react/logger.js");



if (_logger__WEBPACK_IMPORTED_MODULE_0__.logger) {
  (0,_core__WEBPACK_IMPORTED_MODULE_1__.setLogger)(_logger__WEBPACK_IMPORTED_MODULE_0__.logger);
}

/***/ }),

/***/ "../node_modules/react-query/es/react/types.js":
/*!*****************************************************!*\
  !*** ../node_modules/react-query/es/react/types.js ***!
  \*****************************************************/
/***/ (() => {



/***/ }),

/***/ "../node_modules/react-query/es/react/useBaseQuery.js":
/*!************************************************************!*\
  !*** ../node_modules/react-query/es/react/useBaseQuery.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "useBaseQuery": () => (/* binding */ useBaseQuery)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _core_notifyManager__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../core/notifyManager */ "../node_modules/react-query/es/core/notifyManager.js");
/* harmony import */ var _QueryErrorResetBoundary__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./QueryErrorResetBoundary */ "../node_modules/react-query/es/react/QueryErrorResetBoundary.js");
/* harmony import */ var _QueryClientProvider__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./QueryClientProvider */ "../node_modules/react-query/es/react/QueryClientProvider.js");




function useBaseQuery(options, Observer) {
  var mountedRef = react__WEBPACK_IMPORTED_MODULE_0___default().useRef(false);

  var _React$useState = react__WEBPACK_IMPORTED_MODULE_0___default().useState(0),
      forceUpdate = _React$useState[1];

  var queryClient = (0,_QueryClientProvider__WEBPACK_IMPORTED_MODULE_1__.useQueryClient)();
  var errorResetBoundary = (0,_QueryErrorResetBoundary__WEBPACK_IMPORTED_MODULE_2__.useQueryErrorResetBoundary)();
  var defaultedOptions = queryClient.defaultQueryObserverOptions(options); // Make sure results are optimistically set in fetching state before subscribing or updating options

  defaultedOptions.optimisticResults = true; // Include callbacks in batch renders

  if (defaultedOptions.onError) {
    defaultedOptions.onError = _core_notifyManager__WEBPACK_IMPORTED_MODULE_3__.notifyManager.batchCalls(defaultedOptions.onError);
  }

  if (defaultedOptions.onSuccess) {
    defaultedOptions.onSuccess = _core_notifyManager__WEBPACK_IMPORTED_MODULE_3__.notifyManager.batchCalls(defaultedOptions.onSuccess);
  }

  if (defaultedOptions.onSettled) {
    defaultedOptions.onSettled = _core_notifyManager__WEBPACK_IMPORTED_MODULE_3__.notifyManager.batchCalls(defaultedOptions.onSettled);
  }

  if (defaultedOptions.suspense) {
    // Always set stale time when using suspense to prevent
    // fetching again when directly mounting after suspending
    if (typeof defaultedOptions.staleTime !== 'number') {
      defaultedOptions.staleTime = 1000;
    }
  }

  if (defaultedOptions.suspense || defaultedOptions.useErrorBoundary) {
    // Prevent retrying failed query if the error boundary has not been reset yet
    if (!errorResetBoundary.isReset()) {
      defaultedOptions.retryOnMount = false;
    }
  }

  var _React$useState2 = react__WEBPACK_IMPORTED_MODULE_0___default().useState(function () {
    return new Observer(queryClient, defaultedOptions);
  }),
      observer = _React$useState2[0];

  var result = observer.getOptimisticResult(defaultedOptions);
  react__WEBPACK_IMPORTED_MODULE_0___default().useEffect(function () {
    mountedRef.current = true;
    errorResetBoundary.clearReset();
    var unsubscribe = observer.subscribe(_core_notifyManager__WEBPACK_IMPORTED_MODULE_3__.notifyManager.batchCalls(function () {
      if (mountedRef.current) {
        forceUpdate(function (x) {
          return x + 1;
        });
      }
    })); // Update result to make sure we did not miss any query updates
    // between creating the observer and subscribing to it.

    observer.updateResult();
    return function () {
      mountedRef.current = false;
      unsubscribe();
    };
  }, [errorResetBoundary, observer]);
  react__WEBPACK_IMPORTED_MODULE_0___default().useEffect(function () {
    // Do not notify on updates because of changes in the options because
    // these changes should already be reflected in the optimistic result.
    observer.setOptions(defaultedOptions, {
      listeners: false
    });
  }, [defaultedOptions, observer]); // Handle suspense

  if (defaultedOptions.suspense && result.isLoading) {
    throw observer.fetchOptimistic(defaultedOptions).then(function (_ref) {
      var data = _ref.data;
      defaultedOptions.onSuccess == null ? void 0 : defaultedOptions.onSuccess(data);
      defaultedOptions.onSettled == null ? void 0 : defaultedOptions.onSettled(data, null);
    }).catch(function (error) {
      errorResetBoundary.clearReset();
      defaultedOptions.onError == null ? void 0 : defaultedOptions.onError(error);
      defaultedOptions.onSettled == null ? void 0 : defaultedOptions.onSettled(undefined, error);
    });
  } // Handle error boundary


  if ((defaultedOptions.suspense || defaultedOptions.useErrorBoundary) && result.isError && !result.isFetching) {
    throw result.error;
  } // Handle result property usage tracking


  if (defaultedOptions.notifyOnChangeProps === 'tracked') {
    result = observer.trackResult(result);
  }

  return result;
}

/***/ }),

/***/ "../node_modules/react-query/es/react/useInfiniteQuery.js":
/*!****************************************************************!*\
  !*** ../node_modules/react-query/es/react/useInfiniteQuery.js ***!
  \****************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "useInfiniteQuery": () => (/* binding */ useInfiniteQuery)
/* harmony export */ });
/* harmony import */ var _core_infiniteQueryObserver__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core/infiniteQueryObserver */ "../node_modules/react-query/es/core/infiniteQueryObserver.js");
/* harmony import */ var _core_utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../core/utils */ "../node_modules/react-query/es/core/utils.js");
/* harmony import */ var _useBaseQuery__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./useBaseQuery */ "../node_modules/react-query/es/react/useBaseQuery.js");


 // HOOK

function useInfiniteQuery(arg1, arg2, arg3) {
  var options = (0,_core_utils__WEBPACK_IMPORTED_MODULE_0__.parseQueryArgs)(arg1, arg2, arg3);
  return (0,_useBaseQuery__WEBPACK_IMPORTED_MODULE_1__.useBaseQuery)(options, _core_infiniteQueryObserver__WEBPACK_IMPORTED_MODULE_2__.InfiniteQueryObserver);
}

/***/ }),

/***/ "../node_modules/react-query/es/react/useIsFetching.js":
/*!*************************************************************!*\
  !*** ../node_modules/react-query/es/react/useIsFetching.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "useIsFetching": () => (/* binding */ useIsFetching)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _core_notifyManager__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../core/notifyManager */ "../node_modules/react-query/es/core/notifyManager.js");
/* harmony import */ var _core_utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core/utils */ "../node_modules/react-query/es/core/utils.js");
/* harmony import */ var _QueryClientProvider__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./QueryClientProvider */ "../node_modules/react-query/es/react/QueryClientProvider.js");




function useIsFetching(arg1, arg2) {
  var mountedRef = react__WEBPACK_IMPORTED_MODULE_0___default().useRef(false);
  var queryClient = (0,_QueryClientProvider__WEBPACK_IMPORTED_MODULE_1__.useQueryClient)();

  var _parseFilterArgs = (0,_core_utils__WEBPACK_IMPORTED_MODULE_2__.parseFilterArgs)(arg1, arg2),
      filters = _parseFilterArgs[0];

  var _React$useState = react__WEBPACK_IMPORTED_MODULE_0___default().useState(queryClient.isFetching(filters)),
      isFetching = _React$useState[0],
      setIsFetching = _React$useState[1];

  var filtersRef = react__WEBPACK_IMPORTED_MODULE_0___default().useRef(filters);
  filtersRef.current = filters;
  var isFetchingRef = react__WEBPACK_IMPORTED_MODULE_0___default().useRef(isFetching);
  isFetchingRef.current = isFetching;
  react__WEBPACK_IMPORTED_MODULE_0___default().useEffect(function () {
    mountedRef.current = true;
    var unsubscribe = queryClient.getQueryCache().subscribe(_core_notifyManager__WEBPACK_IMPORTED_MODULE_3__.notifyManager.batchCalls(function () {
      if (mountedRef.current) {
        var newIsFetching = queryClient.isFetching(filtersRef.current);

        if (isFetchingRef.current !== newIsFetching) {
          setIsFetching(newIsFetching);
        }
      }
    }));
    return function () {
      mountedRef.current = false;
      unsubscribe();
    };
  }, [queryClient]);
  return isFetching;
}

/***/ }),

/***/ "../node_modules/react-query/es/react/useIsMutating.js":
/*!*************************************************************!*\
  !*** ../node_modules/react-query/es/react/useIsMutating.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "useIsMutating": () => (/* binding */ useIsMutating)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _core_notifyManager__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core/notifyManager */ "../node_modules/react-query/es/core/notifyManager.js");
/* harmony import */ var _QueryClientProvider__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./QueryClientProvider */ "../node_modules/react-query/es/react/QueryClientProvider.js");



function useIsMutating(filters) {
  var mountedRef = react__WEBPACK_IMPORTED_MODULE_0___default().useRef(false);
  var queryClient = (0,_QueryClientProvider__WEBPACK_IMPORTED_MODULE_1__.useQueryClient)();

  var _React$useState = react__WEBPACK_IMPORTED_MODULE_0___default().useState(queryClient.isMutating(filters)),
      isMutating = _React$useState[0],
      setIsMutating = _React$useState[1];

  var filtersRef = react__WEBPACK_IMPORTED_MODULE_0___default().useRef(filters);
  filtersRef.current = filters;
  var isMutatingRef = react__WEBPACK_IMPORTED_MODULE_0___default().useRef(isMutating);
  isMutatingRef.current = isMutating;
  react__WEBPACK_IMPORTED_MODULE_0___default().useEffect(function () {
    mountedRef.current = true;
    var unsubscribe = queryClient.getMutationCache().subscribe(_core_notifyManager__WEBPACK_IMPORTED_MODULE_2__.notifyManager.batchCalls(function () {
      if (mountedRef.current) {
        var newIsMutating = queryClient.isMutating(filtersRef.current);

        if (isMutatingRef.current !== newIsMutating) {
          setIsMutating(newIsMutating);
        }
      }
    }));
    return function () {
      mountedRef.current = false;
      unsubscribe();
    };
  }, [queryClient]);
  return isMutating;
}

/***/ }),

/***/ "../node_modules/react-query/es/react/useMutation.js":
/*!***********************************************************!*\
  !*** ../node_modules/react-query/es/react/useMutation.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "useMutation": () => (/* binding */ useMutation)
/* harmony export */ });
/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/extends */ "../node_modules/@babel/runtime/helpers/esm/extends.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ "react");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _core_notifyManager__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../core/notifyManager */ "../node_modules/react-query/es/core/notifyManager.js");
/* harmony import */ var _core_utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core/utils */ "../node_modules/react-query/es/core/utils.js");
/* harmony import */ var _core_mutationObserver__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../core/mutationObserver */ "../node_modules/react-query/es/core/mutationObserver.js");
/* harmony import */ var _QueryClientProvider__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./QueryClientProvider */ "../node_modules/react-query/es/react/QueryClientProvider.js");






function useMutation(arg1, arg2, arg3) {
  var mountedRef = react__WEBPACK_IMPORTED_MODULE_1___default().useRef(false);

  var _React$useState = react__WEBPACK_IMPORTED_MODULE_1___default().useState(0),
      forceUpdate = _React$useState[1];

  var options = (0,_core_utils__WEBPACK_IMPORTED_MODULE_2__.parseMutationArgs)(arg1, arg2, arg3);
  var queryClient = (0,_QueryClientProvider__WEBPACK_IMPORTED_MODULE_3__.useQueryClient)();
  var obsRef = react__WEBPACK_IMPORTED_MODULE_1___default().useRef();

  if (!obsRef.current) {
    obsRef.current = new _core_mutationObserver__WEBPACK_IMPORTED_MODULE_4__.MutationObserver(queryClient, options);
  } else {
    obsRef.current.setOptions(options);
  }

  var currentResult = obsRef.current.getCurrentResult();
  react__WEBPACK_IMPORTED_MODULE_1___default().useEffect(function () {
    mountedRef.current = true;
    var unsubscribe = obsRef.current.subscribe(_core_notifyManager__WEBPACK_IMPORTED_MODULE_5__.notifyManager.batchCalls(function () {
      if (mountedRef.current) {
        forceUpdate(function (x) {
          return x + 1;
        });
      }
    }));
    return function () {
      mountedRef.current = false;
      unsubscribe();
    };
  }, []);
  var mutate = react__WEBPACK_IMPORTED_MODULE_1___default().useCallback(function (variables, mutateOptions) {
    obsRef.current.mutate(variables, mutateOptions).catch(_core_utils__WEBPACK_IMPORTED_MODULE_2__.noop);
  }, []);

  if (currentResult.error && obsRef.current.options.useErrorBoundary) {
    throw currentResult.error;
  }

  return (0,_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__.default)({}, currentResult, {
    mutate: mutate,
    mutateAsync: currentResult.mutate
  });
}

/***/ }),

/***/ "../node_modules/react-query/es/react/useQueries.js":
/*!**********************************************************!*\
  !*** ../node_modules/react-query/es/react/useQueries.js ***!
  \**********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "useQueries": () => (/* binding */ useQueries)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _core_notifyManager__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../core/notifyManager */ "../node_modules/react-query/es/core/notifyManager.js");
/* harmony import */ var _core_queriesObserver__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core/queriesObserver */ "../node_modules/react-query/es/core/queriesObserver.js");
/* harmony import */ var _QueryClientProvider__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./QueryClientProvider */ "../node_modules/react-query/es/react/QueryClientProvider.js");




function useQueries(queries) {
  var mountedRef = react__WEBPACK_IMPORTED_MODULE_0___default().useRef(false);

  var _React$useState = react__WEBPACK_IMPORTED_MODULE_0___default().useState(0),
      forceUpdate = _React$useState[1];

  var queryClient = (0,_QueryClientProvider__WEBPACK_IMPORTED_MODULE_1__.useQueryClient)();
  var defaultedQueries = queries.map(function (options) {
    var defaultedOptions = queryClient.defaultQueryObserverOptions(options); // Make sure the results are already in fetching state before subscribing or updating options

    defaultedOptions.optimisticResults = true;
    return defaultedOptions;
  });

  var _React$useState2 = react__WEBPACK_IMPORTED_MODULE_0___default().useState(function () {
    return new _core_queriesObserver__WEBPACK_IMPORTED_MODULE_2__.QueriesObserver(queryClient, defaultedQueries);
  }),
      observer = _React$useState2[0];

  var result = observer.getOptimisticResult(defaultedQueries);
  react__WEBPACK_IMPORTED_MODULE_0___default().useEffect(function () {
    mountedRef.current = true;
    var unsubscribe = observer.subscribe(_core_notifyManager__WEBPACK_IMPORTED_MODULE_3__.notifyManager.batchCalls(function () {
      if (mountedRef.current) {
        forceUpdate(function (x) {
          return x + 1;
        });
      }
    }));
    return function () {
      mountedRef.current = false;
      unsubscribe();
    };
  }, [observer]);
  react__WEBPACK_IMPORTED_MODULE_0___default().useEffect(function () {
    // Do not notify on updates because of changes in the options because
    // these changes should already be reflected in the optimistic result.
    observer.setQueries(defaultedQueries, {
      listeners: false
    });
  }, [defaultedQueries, observer]);
  return result;
}

/***/ }),

/***/ "../node_modules/react-query/es/react/useQuery.js":
/*!********************************************************!*\
  !*** ../node_modules/react-query/es/react/useQuery.js ***!
  \********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "useQuery": () => (/* binding */ useQuery)
/* harmony export */ });
/* harmony import */ var _core__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core */ "../node_modules/react-query/es/core/queryObserver.js");
/* harmony import */ var _core_utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../core/utils */ "../node_modules/react-query/es/core/utils.js");
/* harmony import */ var _useBaseQuery__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./useBaseQuery */ "../node_modules/react-query/es/react/useBaseQuery.js");


 // HOOK

function useQuery(arg1, arg2, arg3) {
  var parsedOptions = (0,_core_utils__WEBPACK_IMPORTED_MODULE_0__.parseQueryArgs)(arg1, arg2, arg3);
  return (0,_useBaseQuery__WEBPACK_IMPORTED_MODULE_1__.useBaseQuery)(parsedOptions, _core__WEBPACK_IMPORTED_MODULE_2__.QueryObserver);
}

/***/ }),

/***/ "../node_modules/remove-accents/index.js":
/*!***********************************************!*\
  !*** ../node_modules/remove-accents/index.js ***!
  \***********************************************/
/***/ ((module) => {

var characterMap = {
	"À": "A",
	"Á": "A",
	"Â": "A",
	"Ã": "A",
	"Ä": "A",
	"Å": "A",
	"Ấ": "A",
	"Ắ": "A",
	"Ẳ": "A",
	"Ẵ": "A",
	"Ặ": "A",
	"Æ": "AE",
	"Ầ": "A",
	"Ằ": "A",
	"Ȃ": "A",
	"Ç": "C",
	"Ḉ": "C",
	"È": "E",
	"É": "E",
	"Ê": "E",
	"Ë": "E",
	"Ế": "E",
	"Ḗ": "E",
	"Ề": "E",
	"Ḕ": "E",
	"Ḝ": "E",
	"Ȇ": "E",
	"Ì": "I",
	"Í": "I",
	"Î": "I",
	"Ï": "I",
	"Ḯ": "I",
	"Ȋ": "I",
	"Ð": "D",
	"Ñ": "N",
	"Ò": "O",
	"Ó": "O",
	"Ô": "O",
	"Õ": "O",
	"Ö": "O",
	"Ø": "O",
	"Ố": "O",
	"Ṍ": "O",
	"Ṓ": "O",
	"Ȏ": "O",
	"Ù": "U",
	"Ú": "U",
	"Û": "U",
	"Ü": "U",
	"Ý": "Y",
	"à": "a",
	"á": "a",
	"â": "a",
	"ã": "a",
	"ä": "a",
	"å": "a",
	"ấ": "a",
	"ắ": "a",
	"ẳ": "a",
	"ẵ": "a",
	"ặ": "a",
	"æ": "ae",
	"ầ": "a",
	"ằ": "a",
	"ȃ": "a",
	"ç": "c",
	"ḉ": "c",
	"è": "e",
	"é": "e",
	"ê": "e",
	"ë": "e",
	"ế": "e",
	"ḗ": "e",
	"ề": "e",
	"ḕ": "e",
	"ḝ": "e",
	"ȇ": "e",
	"ì": "i",
	"í": "i",
	"î": "i",
	"ï": "i",
	"ḯ": "i",
	"ȋ": "i",
	"ð": "d",
	"ñ": "n",
	"ò": "o",
	"ó": "o",
	"ô": "o",
	"õ": "o",
	"ö": "o",
	"ø": "o",
	"ố": "o",
	"ṍ": "o",
	"ṓ": "o",
	"ȏ": "o",
	"ù": "u",
	"ú": "u",
	"û": "u",
	"ü": "u",
	"ý": "y",
	"ÿ": "y",
	"Ā": "A",
	"ā": "a",
	"Ă": "A",
	"ă": "a",
	"Ą": "A",
	"ą": "a",
	"Ć": "C",
	"ć": "c",
	"Ĉ": "C",
	"ĉ": "c",
	"Ċ": "C",
	"ċ": "c",
	"Č": "C",
	"č": "c",
	"C̆": "C",
	"c̆": "c",
	"Ď": "D",
	"ď": "d",
	"Đ": "D",
	"đ": "d",
	"Ē": "E",
	"ē": "e",
	"Ĕ": "E",
	"ĕ": "e",
	"Ė": "E",
	"ė": "e",
	"Ę": "E",
	"ę": "e",
	"Ě": "E",
	"ě": "e",
	"Ĝ": "G",
	"Ǵ": "G",
	"ĝ": "g",
	"ǵ": "g",
	"Ğ": "G",
	"ğ": "g",
	"Ġ": "G",
	"ġ": "g",
	"Ģ": "G",
	"ģ": "g",
	"Ĥ": "H",
	"ĥ": "h",
	"Ħ": "H",
	"ħ": "h",
	"Ḫ": "H",
	"ḫ": "h",
	"Ĩ": "I",
	"ĩ": "i",
	"Ī": "I",
	"ī": "i",
	"Ĭ": "I",
	"ĭ": "i",
	"Į": "I",
	"į": "i",
	"İ": "I",
	"ı": "i",
	"IJ": "IJ",
	"ij": "ij",
	"Ĵ": "J",
	"ĵ": "j",
	"Ķ": "K",
	"ķ": "k",
	"Ḱ": "K",
	"ḱ": "k",
	"K̆": "K",
	"k̆": "k",
	"Ĺ": "L",
	"ĺ": "l",
	"Ļ": "L",
	"ļ": "l",
	"Ľ": "L",
	"ľ": "l",
	"Ŀ": "L",
	"ŀ": "l",
	"Ł": "l",
	"ł": "l",
	"Ḿ": "M",
	"ḿ": "m",
	"M̆": "M",
	"m̆": "m",
	"Ń": "N",
	"ń": "n",
	"Ņ": "N",
	"ņ": "n",
	"Ň": "N",
	"ň": "n",
	"ʼn": "n",
	"N̆": "N",
	"n̆": "n",
	"Ō": "O",
	"ō": "o",
	"Ŏ": "O",
	"ŏ": "o",
	"Ő": "O",
	"ő": "o",
	"Œ": "OE",
	"œ": "oe",
	"P̆": "P",
	"p̆": "p",
	"Ŕ": "R",
	"ŕ": "r",
	"Ŗ": "R",
	"ŗ": "r",
	"Ř": "R",
	"ř": "r",
	"R̆": "R",
	"r̆": "r",
	"Ȓ": "R",
	"ȓ": "r",
	"Ś": "S",
	"ś": "s",
	"Ŝ": "S",
	"ŝ": "s",
	"Ş": "S",
	"Ș": "S",
	"ș": "s",
	"ş": "s",
	"Š": "S",
	"š": "s",
	"Ţ": "T",
	"ţ": "t",
	"ț": "t",
	"Ț": "T",
	"Ť": "T",
	"ť": "t",
	"Ŧ": "T",
	"ŧ": "t",
	"T̆": "T",
	"t̆": "t",
	"Ũ": "U",
	"ũ": "u",
	"Ū": "U",
	"ū": "u",
	"Ŭ": "U",
	"ŭ": "u",
	"Ů": "U",
	"ů": "u",
	"Ű": "U",
	"ű": "u",
	"Ų": "U",
	"ų": "u",
	"Ȗ": "U",
	"ȗ": "u",
	"V̆": "V",
	"v̆": "v",
	"Ŵ": "W",
	"ŵ": "w",
	"Ẃ": "W",
	"ẃ": "w",
	"X̆": "X",
	"x̆": "x",
	"Ŷ": "Y",
	"ŷ": "y",
	"Ÿ": "Y",
	"Y̆": "Y",
	"y̆": "y",
	"Ź": "Z",
	"ź": "z",
	"Ż": "Z",
	"ż": "z",
	"Ž": "Z",
	"ž": "z",
	"ſ": "s",
	"ƒ": "f",
	"Ơ": "O",
	"ơ": "o",
	"Ư": "U",
	"ư": "u",
	"Ǎ": "A",
	"ǎ": "a",
	"Ǐ": "I",
	"ǐ": "i",
	"Ǒ": "O",
	"ǒ": "o",
	"Ǔ": "U",
	"ǔ": "u",
	"Ǖ": "U",
	"ǖ": "u",
	"Ǘ": "U",
	"ǘ": "u",
	"Ǚ": "U",
	"ǚ": "u",
	"Ǜ": "U",
	"ǜ": "u",
	"Ứ": "U",
	"ứ": "u",
	"Ṹ": "U",
	"ṹ": "u",
	"Ǻ": "A",
	"ǻ": "a",
	"Ǽ": "AE",
	"ǽ": "ae",
	"Ǿ": "O",
	"ǿ": "o",
	"Þ": "TH",
	"þ": "th",
	"Ṕ": "P",
	"ṕ": "p",
	"Ṥ": "S",
	"ṥ": "s",
	"X́": "X",
	"x́": "x",
	"Ѓ": "Г",
	"ѓ": "г",
	"Ќ": "К",
	"ќ": "к",
	"A̋": "A",
	"a̋": "a",
	"E̋": "E",
	"e̋": "e",
	"I̋": "I",
	"i̋": "i",
	"Ǹ": "N",
	"ǹ": "n",
	"Ồ": "O",
	"ồ": "o",
	"Ṑ": "O",
	"ṑ": "o",
	"Ừ": "U",
	"ừ": "u",
	"Ẁ": "W",
	"ẁ": "w",
	"Ỳ": "Y",
	"ỳ": "y",
	"Ȁ": "A",
	"ȁ": "a",
	"Ȅ": "E",
	"ȅ": "e",
	"Ȉ": "I",
	"ȉ": "i",
	"Ȍ": "O",
	"ȍ": "o",
	"Ȑ": "R",
	"ȑ": "r",
	"Ȕ": "U",
	"ȕ": "u",
	"B̌": "B",
	"b̌": "b",
	"Č̣": "C",
	"č̣": "c",
	"Ê̌": "E",
	"ê̌": "e",
	"F̌": "F",
	"f̌": "f",
	"Ǧ": "G",
	"ǧ": "g",
	"Ȟ": "H",
	"ȟ": "h",
	"J̌": "J",
	"ǰ": "j",
	"Ǩ": "K",
	"ǩ": "k",
	"M̌": "M",
	"m̌": "m",
	"P̌": "P",
	"p̌": "p",
	"Q̌": "Q",
	"q̌": "q",
	"Ř̩": "R",
	"ř̩": "r",
	"Ṧ": "S",
	"ṧ": "s",
	"V̌": "V",
	"v̌": "v",
	"W̌": "W",
	"w̌": "w",
	"X̌": "X",
	"x̌": "x",
	"Y̌": "Y",
	"y̌": "y",
	"A̧": "A",
	"a̧": "a",
	"B̧": "B",
	"b̧": "b",
	"Ḑ": "D",
	"ḑ": "d",
	"Ȩ": "E",
	"ȩ": "e",
	"Ɛ̧": "E",
	"ɛ̧": "e",
	"Ḩ": "H",
	"ḩ": "h",
	"I̧": "I",
	"i̧": "i",
	"Ɨ̧": "I",
	"ɨ̧": "i",
	"M̧": "M",
	"m̧": "m",
	"O̧": "O",
	"o̧": "o",
	"Q̧": "Q",
	"q̧": "q",
	"U̧": "U",
	"u̧": "u",
	"X̧": "X",
	"x̧": "x",
	"Z̧": "Z",
	"z̧": "z",
};

var chars = Object.keys(characterMap).join('|');
var allAccents = new RegExp(chars, 'g');
var firstAccent = new RegExp(chars, '');

var removeAccents = function(string) {	
	return string.replace(allAccents, function(match) {
		return characterMap[match];
	});
};

var hasAccents = function(string) {
	return !!string.match(firstAccent);
};

module.exports = removeAccents;
module.exports.has = hasAccents;
module.exports.remove = removeAccents;


/***/ })

}]);
//# sourceMappingURL=06ad222c8807f0a951da.bundle.js.mapassets/js/kit-library.e61c291a7b6bbc946eeb.bundle.min.js000064400000150656151327220410016354 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(self.webpackChunkelementor=self.webpackChunkelementor||[]).push([[372],{10751:()=>{},50146:()=>{},38859:()=>{},99788:()=>{},63927:()=>{},38298:()=>{},37054:()=>{},61706:()=>{},81143:()=>{},54289:()=>{},77604:()=>{},53004:()=>{},44807:()=>{},70082:()=>{},78870:()=>{},31761:()=>{},11427:()=>{},13777:()=>{},13656:()=>{},23711:(e,t,a)=>{"use strict";var r=a(67394),n=a(67971);r(t,"__esModule",{value:!0}),t.default=function App(){return l.default.createElement("div",{className:"e-kit-library"},l.default.createElement(d.QueryClientProvider,{client:p},l.default.createElement(v.SettingsProvider,{value:elementorAppConfig["kit-library"]},l.default.createElement(c.LastFilterProvider,null,l.default.createElement(m.Router,null,l.default.createElement(o.default,{path:"/"}),l.default.createElement(i.default,{path:"/favorites"}),l.default.createElement(s.default,{path:"/preview/:id"}),l.default.createElement(u.default,{path:"/overview/:id"})))),elementorCommon.config.isElementorDebug&&l.default.createElement(f.ReactQueryDevtools,{initialIsOpen:!1})))};var l=n(a(63804)),i=n(a(15684)),o=n(a(26115)),u=n(a(43273)),s=n(a(5133)),c=a(84364),d=a(56552),f=a(29029),m=a(50927),v=a(79917),p=new d.QueryClient({defaultOptions:{queries:{refetchOnWindowFocus:!1,retry:!1,staleTime:18e5}}})},21873:(e,t,a)=>{"use strict";var r=a(23615),n=a(67394),l=a(67971);n(t,"__esModule",{value:!0}),t.default=Badge;var i=l(a(63804));function Badge(e){return i.default.createElement("span",{className:"eps-badge eps-badge--".concat(e.variant," ").concat(e.className),style:e.style},e.children)}a(10751),Badge.propTypes={children:r.node,className:r.string,style:r.object,variant:r.oneOf(["sm","md"])},Badge.defaultProps={className:"",style:{},variant:"md"}},3964:(e,t,a)=>{"use strict";var r=a(23615),n=a(67394),l=a(67971);n(t,"__esModule",{value:!0}),t.default=Collapse;var i=l(a(63804));function Collapse(e){return i.default.createElement("div",{className:"eps-collapse ".concat(e.className),"data-open":e.isOpen||void 0},i.default.createElement("button",{className:"eps-collapse__title",onClick:function onClick(){return e.onChange((function(e){return!e}))}},i.default.createElement("span",null,e.title),i.default.createElement("i",{className:"eicon-chevron-right eps-collapse__icon"})),i.default.createElement("div",{className:"eps-collapse__content"},e.children))}a(50146),Collapse.propTypes={isOpen:r.bool,onChange:r.func,className:r.string,title:r.node,children:r.oneOfType([r.node,r.arrayOf(r.node)])},Collapse.defaultProps={className:"",isOpen:!1}},82379:(e,t,a)=>{"use strict";var r=a(18194).__,n=a(23615),l=a(67394),i=a(67971);l(t,"__esModule",{value:!0}),t.default=ConnectDialog;var o=i(a(63804)),u=a(78675),s=a(79917),c=o.default,d=c.useEffect,f=c.useRef;function ConnectDialog(e){var t=(0,s.useSettingsContext)().settings,a=f();return d((function(){jQuery(a.current).elementorConnect({success:function success(t,a){return e.onSuccess(a)},error:function error(){return e.onError(r("Unable to connect","elementor"))},UTM:function UTM(){return"&utm_source=kit-library&utm_medium=wp-dash&utm_campaign="}})}),[]),o.default.createElement(u.Dialog,{title:r("Connect to Template Library","elementor"),text:r("Access this template and our entire library by creating an account","elementor"),approveButtonText:r("Get Started","elementor"),approveButtonUrl:t.library_connect_url,approveButtonOnClick:function approveButtonOnClick(){return e.onClose()},approveButtonColor:"primary",approveButtonRef:a,dismissButtonText:r("Cancel","elementor-pro"),dismissButtonOnClick:function dismissButtonOnClick(){return e.onClose()},onClose:function onClose(){return e.onClose()}})}ConnectDialog.propTypes={onClose:n.func.isRequired,onError:n.func.isRequired,onSuccess:n.func.isRequired}},90125:(e,t,a)=>{"use strict";var r=a(18194).__,n=a(67394),l=a(67971);n(t,"__esModule",{value:!0}),t.default=function ElementorLoading(){return i.default.createElement("div",{className:"elementor-loading"},i.default.createElement("div",{className:"elementor-loader-wrapper"},i.default.createElement("div",{className:"elementor-loader"},i.default.createElement("div",{className:"elementor-loader-boxes"},i.default.createElement("div",{className:"elementor-loader-box"}),i.default.createElement("div",{className:"elementor-loader-box"}),i.default.createElement("div",{className:"elementor-loader-box"}),i.default.createElement("div",{className:"elementor-loader-box"}))),i.default.createElement("div",{className:"elementor-loading-title"},r("Loading","elementor"))))};var i=l(a(63804))},98125:(e,t,a)=>{"use strict";var r=a(18194).__,n=a(67394),l=a(67971);n(t,"__esModule",{value:!0}),t.default=function EnvatoPromotion(){return i.default.createElement(o.Text,{className:"e-kit-library-bottom-promotion",variant:"xl"},r("Looking for more Kits?","elementor")," "," ",i.default.createElement(o.Button,{variant:"underlined",color:"link",url:"https://go.elementor.com/app-envato-kits/",target:"_blank",rel:"noreferrer",text:r("Check out Elementor Template Kits on ThemeForest","elementor")}))};var i=l(a(63804)),o=a(78675);a(38859)},96980:(e,t,a)=>{"use strict";var r=a(23615),n=a(67394),l=a(67971);n(t,"__esModule",{value:!0}),t.default=ErrorScreen;var i=l(a(63804)),o=a(78675);function ErrorScreen(e){return i.default.createElement(o.Grid,{container:!0,alignItems:"center",justify:"center",direction:"column",className:"e-kit-library__error-screen"},i.default.createElement("img",{src:"".concat(elementorAppConfig.assets_url,"images/no-search-results.svg")}),i.default.createElement(o.Heading,{tag:"h3",variant:"display-1",className:"e-kit-library__error-screen-title"},e.title),i.default.createElement(o.Text,{variant:"xl",className:"e-kit-library__error-screen-description"},e.description," "," ",i.default.createElement(o.Button,{text:e.button.text,color:"link",onClick:e.button.action,url:e.button.url,target:e.button.target})))}a(99788),ErrorScreen.propTypes={title:r.string,description:r.string,button:r.shape({text:r.string,action:r.func,url:r.string,target:r.string})}},21289:(e,t,a)=>{"use strict";var r=a(18194).__,n=a(23615),l=a(67394),i=a(67971);l(t,"__esModule",{value:!0}),t.default=FavoritesActions;var o=i(a(63804)),u=a(37548),s=a(78675);function FavoritesActions(e){var t=(0,u.useKitFavoritesMutations)(),a=t.addToFavorites,n=t.removeFromFavorites,l=t.isLoading,i=l?"e-kit-library__kit-favorite-actions--loading":"";return e.isFavorite?o.default.createElement(s.Button,{text:r("Remove From Favorites","elementor"),hideText:!0,icon:"eicon-heart",className:"e-kit-library__kit-favorite-actions e-kit-library__kit-favorite-actions--active ".concat(i),onClick:function onClick(){return!l&&n.mutate(e.id)}}):o.default.createElement(s.Button,{text:r("Add To Favorites","elementor"),hideText:!0,icon:"eicon-heart-o",className:"e-kit-library__kit-favorite-actions ".concat(i),onClick:function onClick(){return!l&&a.mutate(e.id)}})}a(63927),FavoritesActions.propTypes={isFavorite:n.bool,id:n.string}},78915:(e,t,a)=>{"use strict";var r=a(18194).__,n=a(23615),l=a(67394),i=a(67971);l(t,"__esModule",{value:!0}),t.default=FilterIndicationText;var o=i(a(63804));a(42679),a(90286);var u=i(a(15792)),s=i(a(21873)),c=a(18194),d=a(78675);function FilterIndicationText(e){var t=(0,u.default)(e.queryParams.taxonomies);return o.default.createElement(d.Grid,{container:!0,className:"e-kit-library__filter-indication"},o.default.createElement(d.Text,{className:"e-kit-library__filter-indication-text"},(0,c.sprintf)((0,c._n)("Showing %s result for","Showing %s results for",e.resultCount,"elementor"),e.resultCount?e.resultCount:r("no","elementor"))," ",e.queryParams.search&&'"'.concat(e.queryParams.search,'"')," ",t.length>0&&o.default.createElement(o.default.Fragment,null,t.map((function(t){return o.default.createElement(s.default,{key:t,className:"e-kit-library__filter-indication-badge"},t,o.default.createElement(d.Button,{text:r("Remove","elementor"),hideText:!0,icon:"eicon-editor-close",className:"e-kit-library__filter-indication-badge-remove",onClick:function onClick(){return e.onRemoveTag(t)}}))})))),o.default.createElement(d.Button,{className:"e-kit-library__filter-indication-button",text:r("Clear all","elementor"),variant:"underlined",onClick:e.onClear}))}a(38298),FilterIndicationText.propTypes={queryParams:n.shape({search:n.string,taxonomies:n.objectOf(n.arrayOf(n.string)),favorite:n.bool}),resultCount:n.number.isRequired,onClear:n.func.isRequired,onRemoveTag:n.func.isRequired}},47175:(e,t,a)=>{"use strict";var r=a(18194).__,n=a(23615),l=a(67394),i=a(67971),o=a(52369);l(t,"__esModule",{value:!0}),t.default=ItemHeader;var u=o(a(63804));a(84208);var s=i(a(74846)),c=i(a(47834)),d=i(a(82379)),f=i(a(59883)),m=i(a(95948)),v=i(a(80330)),p=i(a(881)),y=o(a(8836)),_=a(78675),h=a(50927),g=a(79917);function ItemHeader(e){var t=(0,g.useSettingsContext)().updateSettings,a=(0,h.useNavigate)(),n=(0,u.useState)(!1),l=(0,c.default)(n,2),i=l[0],o=l[1],v=(0,u.useState)(!1),b=(0,c.default)(v,2),E=b[0],k=b[1],C=(0,p.default)(e.model,{onSuccess:function onSuccess(e){var t=e.data;return a("/import/process?file_url=".concat(encodeURIComponent(t.data.download_link),"&nonce=").concat(t.meta.nonce,"&referrer=kit-library"))},onError:function onError(e){if(401===e.code)return t({is_library_connected:!1,access_level:0}),void o(!0);k({code:e.code,message:r("Something went wrong.","elementor")})}}),x=C.mutate,T=C.isLoading,w=function useKitCallToActionButton(e,t){var a=t.apply,n=t.isApplyLoading,l=t.onConnect,i=(0,y.default)(e.accessLevel),o=(0,c.default)(i,2),s=o[0],d=o[1].subscriptionPlan;return(0,u.useMemo)((function(){return s===y.TYPE_CONNECT?{id:"connect",text:r("Apply Kit","elementor"),hideText:!1,variant:"contained",color:"primary",size:"sm",onClick:l,includeHeaderBtnClass:!1}:s===y.TYPE_PROMOTION&&d?{id:"promotion",text:r("Go %s","elementor").replace("%s",d.label),hideText:!1,variant:"contained",color:"cta",size:"sm",url:d.promotion_url,target:"_blank",includeHeaderBtnClass:!1}:{id:"apply",text:r("Apply Kit","elementor"),className:"e-kit-library__apply-button",icon:n?"eicon-loading eicon-animation-spin":"",hideText:!1,variant:"contained",color:n?"disabled":"primary",size:"sm",onClick:n?null:a,includeHeaderBtnClass:!1}}),[s,d,n,a])}(e.model,{onConnect:function onConnect(){return o(!0)},apply:x,isApplyLoading:T}),N=(0,u.useMemo)((function(){return[w].concat((0,s.default)(e.buttons))}),[e.buttons,w]);return u.default.createElement(u.default.Fragment,null,E&&u.default.createElement(_.Dialog,{title:E.message,text:r("Nothing to worry about, just try again. If the problem continues, head over to the Help Center.","elementor"),approveButtonText:r("Learn More","elementor"),approveButtonColor:"link",approveButtonUrl:"http://go.elementor.com/app-kit-library-error",approveButtonOnClick:function approveButtonOnClick(){return k(!1)},dismissButtonText:r("Got it","elementor"),dismissButtonOnClick:function dismissButtonOnClick(){return k(!1)},onClose:function onClose(){return k(!1)}}),i&&u.default.createElement(d.default,{onClose:function onClose(){return o(!1)},onSuccess:function onSuccess(a){t({is_library_connected:!0,access_level:a.kits_access_level||a.access_level||0}),a.access_level<e.model.accessLevel||x()},onError:function onError(e){return k({message:e})}}),u.default.createElement(f.default,{startColumn:u.default.createElement(m.default,null),centerColumn:e.centerColumn,buttons:N}))}a(37054),ItemHeader.propTypes={model:n.instanceOf(v.default).isRequired,centerColumn:n.node,buttons:n.arrayOf(n.object)}},35633:(e,t,a)=>{"use strict";var r=a(18194).__,n=a(23615),l=a(67394),i=a(52369),o=a(67971);l(t,"__esModule",{value:!0}),t.default=KitListItem;var u=o(a(63804)),s=o(a(47834)),c=o(a(21873)),d=o(a(21289)),f=o(a(80330)),m=i(a(8836)),v=a(78675);function KitListItem(e){var t=(0,m.default)(e.model.accessLevel),a=(0,s.default)(t,2),n=a[0],l=a[1].subscriptionPlan;return u.default.createElement(v.Card,{className:"e-kit-library__kit-item"},u.default.createElement(v.CardHeader,null,u.default.createElement(v.Heading,{tag:"h3",title:e.model.title,variant:"h5",className:"eps-card__headline"},e.model.title),u.default.createElement(d.default,{id:e.model.id,isFavorite:e.model.isFavorite})),u.default.createElement(v.CardBody,null,u.default.createElement(v.CardImage,{alt:e.model.title,src:e.model.thumbnailUrl||""},(null==l?void 0:l.label)&&u.default.createElement(c.default,{variant:"sm",className:"e-kit-library__kit-item-subscription-plan-badge",style:{backgroundColor:l.color}},l.label),u.default.createElement(v.CardOverlay,null,u.default.createElement(v.Grid,{container:!0,direction:"column",className:"e-kit-library__kit-item-overlay"},u.default.createElement(v.Button,{className:"e-kit-library__kit-item-overlay-overview-button",text:r("View Demo","elementor"),icon:"eicon-preview-medium",url:"/kit-library/preview/".concat(e.model.id)}),n===m.TYPE_PROMOTION&&(null==l?void 0:l.label)&&u.default.createElement(v.Button,{className:"e-kit-library__kit-item-overlay-promotion-button",text:"Go ".concat(l.label),icon:"eicon-external-link-square",url:l.promotion_url,target:"_blank"}))))))}a(61706),KitListItem.propTypes={model:n.instanceOf(f.default).isRequired}},72358:(e,t,a)=>{"use strict";var r=a(23615),n=a(67394),l=a(67971);n(t,"__esModule",{value:!0}),t.default=KitList;var i=l(a(63804));a(90286);var o=l(a(80330)),u=l(a(35633)),s=a(78675);function KitList(e){return i.default.createElement(s.CssGrid,{spacing:24,colMinWidth:290},e.data.map((function(e){return i.default.createElement(u.default,{key:e.id,model:e})})))}KitList.propTypes={data:r.arrayOf(r.instanceOf(o.default))}},95948:(e,t,a)=>{"use strict";var r=a(18194).__,n=a(67394),l=a(67971);n(t,"__esModule",{value:!0}),t.default=function HeaderBackButton(){var e=(0,s.useNavigate)(),t=(0,u.useLastFilterContext)().lastFilter;return i.default.createElement("div",{className:"e-kit-library__header-back-container"},i.default.createElement(o.Button,{className:"e-kit-library__header-back",icon:"eicon-chevron-left",text:r("Back to Library","elementor"),onClick:function onClick(){return e(wp.url.addQueryArgs("/kit-library",t))}}))};var i=l(a(63804)),o=a(78675),u=a(84364),s=a(50927);a(81143)},59883:(e,t,a)=>{"use strict";var r=a(18194).__,n=a(23615),l=a(67394),i=a(67971);l(t,"__esModule",{value:!0}),t.default=Header;var o=i(a(63804)),u=a(78675),s=i(a(50888));function Header(e){return o.default.createElement(u.Grid,{container:!0,alignItems:"center",justify:"space-between",className:"eps-app__header"},e.startColumn||o.default.createElement("a",{className:"eps-app__logo-title-wrapper",href:"#/kit-library"},o.default.createElement("i",{className:"eps-app__logo eicon-elementor"}),o.default.createElement("h1",{className:"eps-app__title"},r("Kit Library","elementor"))),e.centerColumn||o.default.createElement("span",null),e.endColumn||o.default.createElement("div",{style:{flex:1}},o.default.createElement(s.default,{buttons:e.buttons})))}Header.propTypes={startColumn:n.node,endColumn:n.node,centerColumn:n.node,buttons:n.arrayOf(n.object)}},95219:(e,t,a)=>{"use strict";var r=a(23615),n=a(67394),l=a(67971);n(t,"__esModule",{value:!0}),t.default=Index;var i=l(a(63804)),o=l(a(8296));function Index(e){return i.default.createElement("div",{className:"eps-app__lightbox"},i.default.createElement("div",{className:"eps-app"},e.header,i.default.createElement("div",{className:"eps-app__main"},e.sidebar&&i.default.createElement(o.default,null,e.sidebar),e.children)))}Index.propTypes={header:r.node,sidebar:r.node,children:r.node}},28426:(e,t,a)=>{"use strict";var r=a(23615),n=a(67394),l=a(67971);n(t,"__esModule",{value:!0}),t.default=PageLoader;var i=l(a(63804)),o=a(78675);function PageLoader(e){return i.default.createElement("div",{className:"e-kit-library__page-loader ".concat(e.className)},i.default.createElement(o.Icon,{className:"eicon-loading eicon-animation-spin"}))}a(54289),PageLoader.propTypes={className:r.string},PageLoader.defaultProps={className:""}},3213:(e,t,a)=>{"use strict";var r=a(18194).__,n=a(23615),l=a(67394),i=a(67971);l(t,"__esModule",{value:!0}),t.default=SearchInput;var o=i(a(63804)),u=a(78675);function SearchInput(e){return o.default.createElement("div",{className:"eps-search-input__container ".concat(e.className)},o.default.createElement("input",{className:"eps-search-input eps-search-input--".concat(e.size),placeholder:e.placeholder,value:e.value||"",onChange:function onChange(t){return e.onChange(t.target.value)}}),o.default.createElement(u.Icon,{className:"eicon-search-bold eps-search-input__icon eps-search-input__icon--".concat(e.size)}),e.value&&o.default.createElement(u.Button,{text:r("Clear","elementor"),hideText:!0,className:"eicon-close-circle eps-search-input__clear-icon eps-search-input__clear-icon--".concat(e.size),onClick:function onClick(){return e.onChange("")}}))}a(77604),SearchInput.propTypes={placeholder:n.string,value:n.string.isRequired,onChange:n.func.isRequired,className:n.string,size:n.oneOf(["md","sm"])},SearchInput.defaultProps={className:"",size:"md"}},86281:(e,t,a)=>{"use strict";var r=a(18194).__,n=a(23615),l=a(67394),i=a(67971);l(t,"__esModule",{value:!0}),t.default=SortSelect;var o=i(a(63804)),u=a(78675);function SortSelect(e){return o.default.createElement("div",{className:"eps-sort-select"},o.default.createElement("div",{className:"eps-sort-select__select-wrapper"},o.default.createElement(u.Select,{options:e.options,value:e.value.by,onChange:function onChange(t){var a=t.target.value;e.onChange({by:a,direction:e.value.direction})},className:"eps-sort-select__select"})),o.default.createElement(u.Button,{text:"asc"===e.value.direction?r("Sort Descending","elementor"):r("Sort Ascending","elementor"),hideText:!0,icon:"asc"===e.value.direction?"eicon-arrow-up":"eicon-arrow-down",className:"eps-sort-select__button",onClick:function onClick(){e.onChange({by:e.value.by,direction:"asc"===e.value.direction?"desc":"asc"})}}))}a(53004),SortSelect.propTypes={options:n.arrayOf(n.shape({label:n.string.isRequired,value:n.oneOfType([n.string,n.number]).isRequired})).isRequired,value:n.shape({direction:n.oneOf(["asc","desc"]).isRequired,by:n.string.isRequired}).isRequired,onChange:n.func.isRequired}},11300:(e,t,a)=>{"use strict";var r=a(18194).__,n=a(23615),l=a(67394),i=a(67971),o=a(52369);l(t,"__esModule",{value:!0}),t.default=TaxonomiesFilterList;var u=o(a(63804));a(64434),a(3777),a(38081),a(90286);var s=i(a(74846)),c=i(a(47834)),d=i(a(28605)),f=i(a(3964)),m=i(a(3213)),v=a(78675),p=a(18194);function TaxonomiesFilterList(e){var t=(0,u.useState)(e.taxonomiesByType.isOpenByDefault),a=(0,c.default)(t,2),n=a[0],l=a[1],i=(0,u.useState)(""),o=(0,c.default)(i,2),d=o[0],y=o[1],_=(0,u.useMemo)((function(){if(!d)return e.taxonomiesByType.data;var t=d.toLowerCase();return e.taxonomiesByType.data.filter((function(e){return e.text.toLowerCase().includes(t)}))}),[e.taxonomiesByType.data,d]);return u.default.createElement(f.default,{className:"e-kit-library__tags-filter-list",title:e.taxonomiesByType.label,isOpen:n,onChange:l},e.taxonomiesByType.data.length>=15&&u.default.createElement(m.default,{size:"sm",className:"e-kit-library__tags-filter-list-search",placeholder:(0,p.sprintf)(r("Search %s...","elementor"),e.taxonomiesByType.label),value:d,onChange:y}),u.default.createElement("div",{className:"e-kit-library__tags-filter-list-container"},0===_.length&&u.default.createElement(v.Text,null,r("No Results Found","elementor")),_.map((function(t){var a;return u.default.createElement("label",{key:t.text,className:"e-kit-library__tags-filter-list-item"},u.default.createElement(v.Checkbox,{checked:(null===(a=e.selected[t.type])||void 0===a?void 0:a.includes(t.text))||!1,onChange:function onChange(a){var r=a.target.checked;e.onSelect(t.type,(function(e){return r?[].concat((0,s.default)(e),[t.text]):e.filter((function(e){return e!==t.text}))}))}}),t.text)}))))}TaxonomiesFilterList.propTypes={taxonomiesByType:n.shape({key:n.string,label:n.string,data:n.arrayOf(n.instanceOf(d.default)),isOpenByDefault:n.bool}),selected:n.objectOf(n.arrayOf(n.string)),onSelect:n.func}},8328:(e,t,a)=>{"use strict";var r=a(23615),n=a(67394),l=a(52369),i=a(67971);n(t,"__esModule",{value:!0}),t.default=TaxonomiesFilter;var o=i(a(63804)),u=i(a(84899));a(64434),a(90286);var s=i(a(11300)),c=l(a(28605));a(44807);var d=o.default.useMemo;function TaxonomiesFilter(e){var t=d((function(){return e.taxonomies?c.taxonomyType.map((function(t){return(0,u.default)((0,u.default)({},t),{},{data:e.taxonomies.filter((function(e){return e.type===t.key}))})})).filter((function(e){return e.data.length>0})):[]}),[e.taxonomies]);return o.default.createElement("div",{className:"e-kit-library__tags-filter"},t.map((function(t){return o.default.createElement(s.default,{key:t.key,taxonomiesByType:t,selected:e.selected,onSelect:e.onSelect})})))}TaxonomiesFilter.propTypes={selected:r.objectOf(r.arrayOf(r.string)),onSelect:r.func,taxonomies:r.arrayOf(r.instanceOf(c.default))}},84364:(e,t,a)=>{"use strict";var r=a(23615),n=a(67394),l=a(67971),i=a(52369);n(t,"__esModule",{value:!0}),t.useLastFilterContext=function useLastFilterContext(){return(0,o.useContext)(s)},t.LastFilterProvider=LastFilterProvider;var o=i(a(63804)),u=l(a(47834)),s=(0,o.createContext)({});function LastFilterProvider(e){var t=(0,o.useState)({}),a=(0,u.default)(t,2),r=a[0],n=a[1];return o.default.createElement(s.Provider,{value:{lastFilter:r,setLastFilter:n}},e.children)}LastFilterProvider.propTypes={children:r.any}},79917:(e,t,a)=>{"use strict";var r=a(23615),n=a(67394),l=a(67971),i=a(52369);n(t,"__esModule",{value:!0}),t.useSettingsContext=function useSettingsContext(){return(0,o.useContext)(c)},t.SettingsProvider=SettingsProvider;var o=i(a(63804)),u=l(a(84899)),s=l(a(47834)),c=(0,o.createContext)({});function SettingsProvider(e){var t=(0,o.useState)({}),a=(0,s.default)(t,2),r=a[0],n=a[1],l=(0,o.useCallback)((function(e){n((function(t){return(0,u.default)((0,u.default)({},t),e)}))}),[n]);return(0,o.useEffect)((function(){n(e.value)}),[n]),o.default.createElement(c.Provider,{value:{settings:r,setSettings:n,updateSettings:l}},e.children)}SettingsProvider.propTypes={children:r.any,value:r.object.isRequired}},37050:(e,t,a)=>{"use strict";var r=a(18194).__,n=a(67394),l=a(67971);n(t,"__esModule",{value:!0}),t.default=function useContentTypes(){return(0,u.useQuery)([s],fetchContentTypes)},t.KEY=void 0,a(90286);var i=l(a(73220)),o=l(a(8247)),u=a(56552),s="content-types";function fetchContentTypes(){return i.default.resolve([{id:"page",label:r("Pages","elementor"),doc_types:["wp-page"],order:0},{id:"site-parts",label:r("Site Parts","elementor"),doc_types:["archive","error-404","footer","header","search-results","single-page","single-post","product","product-archive","404","single"],order:1},{id:"popup",label:r("Popups","elementor"),doc_types:["popup"],order:2}]).then((function(e){return e.map((function(e){return o.default.createFromResponse(e)}))}))}t.KEY=s},881:(e,t,a)=>{"use strict";a(67394)(t,"__esModule",{value:!0}),t.default=function useDownloadLinkMutation(e,t){var a=t.onError,l=t.onSuccess,i=(0,r.useCallback)((function(){return $e.data.get("kits/download-link",{id:e.id},{refresh:!0})}),[e]);return(0,n.useMutation)(i,{onSuccess:l,onError:a})};var r=a(63804),n=a(56552)},8836:(e,t,a)=>{"use strict";a(67394)(t,"__esModule",{value:!0}),t.default=function useKitCallToAction(e){var t=(0,n.useSettingsContext)().settings,a=(0,r.useMemo)((function(){var a;return null===(a=t.subscription_plans)||void 0===a?void 0:a[e]}),[t,e]);return[(0,r.useMemo)((function(){var a=t.access_level>=e;return t.is_library_connected||!t.is_pro&&!a?a?o:i:l}),[t,e]),{subscriptionPlan:a}]},t.TYPE_APPLY=t.TYPE_PROMOTION=t.TYPE_CONNECT=void 0;var r=a(63804),n=a(79917),l="connect";t.TYPE_CONNECT=l;var i="promotion";t.TYPE_PROMOTION=i;var o="apply";t.TYPE_APPLY=o},15398:(e,t,a)=>{"use strict";var r=a(67394),n=a(67971);r(t,"__esModule",{value:!0}),t.default=function useKitDocumentByType(e){var t=(0,i.default)(),a=(0,o.useMemo)((function(){return e&&t.data?e.getDocumentsByTypes(t.data).sort((function(e,t){return e.order-t.order})):[]}),[e,t.data]);return(0,l.default)((0,l.default)({},t),{},{data:a})};var l=n(a(84899)),i=n(a(37050)),o=a(63804)},37548:(e,t,a)=>{"use strict";var r=a(67394),n=a(67971);r(t,"__esModule",{value:!0}),t.useKitFavoritesMutations=function useKitFavoritesMutations(){var e=(0,u.useQueryClient)(),t=(0,l.useCallback)((function(t){var a=t.data,r=a.data.id,n=a.data.is_favorite;e.getQueryData([i.KEY])&&e.setQueryData([i.KEY],(function(e){return e?e.map((function(e){return e.id===r?(e.isFavorite=n,e.clone()):e})):e})),e.getQueryData([o.KEY,r])&&e.setQueryData([o.KEY,r],(function(e){return e.isFavorite=n,e.clone()}))}),[e]),a=(0,u.useMutation)((function(e){return $e.data.create("kits/favorites",{},{id:e})}),{onSuccess:t}),r=(0,u.useMutation)((function(e){return $e.data.delete("kits/favorites",{id:e})}),{onSuccess:t});return{addToFavorites:a,removeFromFavorites:r,isLoading:a.isLoading||r.isLoading}},a(90286);n(a(80330));var l=a(63804),i=a(92848),o=a(39261),u=a(56552)},39261:(e,t,a)=>{"use strict";var r=a(67394),n=a(67971);r(t,"__esModule",{value:!0}),t.default=function useKit(e){var t=function usePlaceholderDataCallback(e){var t=(0,s.useQueryClient)();return(0,u.useCallback)((function(){var a,r=null===(a=t.getQueryData(o.KEY))||void 0===a?void 0:a.find((function(t){return t.id===e}));if(r)return r}),[t,e])}(e);return(0,s.useQuery)(["kit",e],fetchKitItem,{placeholderData:t})},t.KEY=void 0;var l=n(a(47834));a(71954);var i=n(a(80330)),o=a(92848),u=a(63804),s=a(56552);function fetchKitItem(e){var t=(0,l.default)(e.queryKey,2),a=(t[0],t[1]);return $e.data.get("kits/index",{id:a},{refresh:!0}).then((function(e){return e.data})).then((function(e){var t=e.data;return i.default.createFromResponse(t)}))}t.KEY="kit"},92848:(e,t,a)=>{"use strict";var r=a(67394),n=a(67971);r(t,"__esModule",{value:!0}),t.default=function useKits(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=(0,v.useState)(!1),a=(0,i.default)(t,2),r=a[0],n=a[1],u=(0,v.useState)((function(){return(0,s.default)((0,s.default)({ready:!1},y),e)})),c=(0,i.default)(u,2),f=c[0],h=c[1],g=(0,v.useCallback)((function(){return n(!0)}),[n]),b=(0,v.useCallback)((function(){return h((0,s.default)((0,s.default)({ready:!0},y),e))}),[h]),E=(0,m.useQuery)([p],(function(){return fetchKits(r)})),k=(0,v.useMemo)((function(){return E.data?pipe.apply(void 0,(0,o.default)((0,l.default)(_)))((0,o.default)(E.data),f):[]}),[E.data,f]),C=(0,d.default)(f.taxonomies),x=(0,v.useMemo)((function(){return!!f.search||!!C.length}),[f]);return(0,v.useEffect)((function(){r&&E.refetch().then((function(){return n(!1)}))}),[r]),(0,s.default)((0,s.default)({},E),{},{data:k,queryParams:f,setQueryParams:h,clearQueryParams:b,forceRefetch:g,isFilterActive:x})},t.defaultQueryParams=t.KEY=void 0;var l=n(a(35657));a(64434),a(42679),a(3777),a(38081),a(90286);var i=n(a(47834)),o=n(a(74846)),u=n(a(18042)),s=n(a(84899)),c=n(a(80330)),d=n(a(15792)),f=a(28605),m=a(56552),v=a(63804),p="kits";t.KEY=p;var y={favorite:!1,search:"",taxonomies:f.taxonomyType.reduce((function(e,t){var a=t.key;return(0,s.default)((0,s.default)({},e),{},(0,u.default)({},a,[]))}),{}),order:{direction:"desc",by:"featuredIndex"}};t.defaultQueryParams=y;var _={favoriteFilter:function favoriteFilter(e,t){return t.favorite?e.filter((function(e){return e.isFavorite})):e},searchFilter:function searchFilter(e,t){return t.search?e.filter((function(e){var a=[].concat((0,o.default)(e.keywords),[e.title]),r=t.search.toLowerCase();return a.some((function(e){return e.toLowerCase().includes(r)}))})):e},taxonomiesFilter:function taxonomiesFilter(e,t){return(0,l.default)(t.taxonomies).filter((function(e){return e.length})).reduce((function(e,t){return e.filter((function(e){return t.some((function(t){return e.taxonomies.some((function(e){return t===e}))}))}))}),e)},sort:function sort(e,t){var a=t.order;return e.sort((function(e,t){return"asc"===a.direction?e[a.by]-t[a.by]:t[a.by]-e[a.by]}))}};function pipe(){for(var e=arguments.length,t=new Array(e),a=0;a<e;a++)t[a]=arguments[a];return function(e){for(var a=arguments.length,r=new Array(a>1?a-1:0),n=1;n<a;n++)r[n-1]=arguments[n];return t.reduce((function(e,t){return t.apply(void 0,[e].concat(r))}),e)}}function fetchKits(e){return $e.data.get("kits/index",{force:e?1:void 0},{refresh:!0}).then((function(e){return e.data})).then((function(e){return e.data.map((function(e){return c.default.createFromResponse(e)}))}))}},15792:(e,t,a)=>{"use strict";var r=a(67394),n=a(67971);r(t,"__esModule",{value:!0}),t.default=function useSelectedTaxonomies(e){return(0,o.useMemo)((function(){return(0,i.default)(e).reduce((function(e,t){return[].concat((0,l.default)(e),(0,l.default)(t))}))}),[e])};var l=n(a(74846)),i=n(a(35657)),o=a(63804)},95236:(e,t,a)=>{"use strict";var r=a(67394),n=a(67971);r(t,"__esModule",{value:!0}),t.default=function useTaxonomies(){var e=(0,s.useState)(!1),t=(0,i.default)(e,2),a=t[0],r=t[1],n=(0,s.useCallback)((function(){return r(!0)}),[r]),d=(0,u.useQuery)([c],(function(){return function fetchTaxonomies(e){return $e.data.get("kit-taxonomies/index",{force:e?1:void 0},{refresh:!0}).then((function(e){return e.data})).then((function(e){return e.data.map((function(e){return o.default.createFromResponse(e)}))}))}(a)}));return(0,s.useEffect)((function(){a&&d.refetch().then((function(){return r(!1)}))}),[a]),(0,l.default)((0,l.default)({},d),{},{forceRefetch:n})},t.KEY=void 0,a(90286);var l=n(a(84899)),i=n(a(47834)),o=n(a(28605)),u=a(56552),s=a(63804),c="tags";t.KEY=c},96084:(e,t,a)=>{"use strict";var r=a(67394),n=a(67971);r(t,"__esModule",{value:!0}),t.default=void 0;var l=n(a(83452)),i=n(a(38923)),o=n(a(47834)),u=n(a(11959)),s=n(a(39041)),c=function(){function BaseModel(){(0,u.default)(this,BaseModel)}return(0,s.default)(BaseModel,[{key:"clone",value:function clone(){var e=this,t=new this.constructor;return(0,l.default)(this).forEach((function(a){t[a]=e[a]})),t}},{key:"init",value:function init(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,i.default)(t).forEach((function(t){var a=(0,o.default)(t,2),r=a[0],n=a[1];e[r]=n})),this}}]),BaseModel}();t.default=c},8247:(e,t,a)=>{"use strict";var r=a(67394),n=a(67971);r(t,"__esModule",{value:!0}),t.default=void 0;var l=n(a(11959)),i=n(a(39041)),o=n(a(38852)),u=n(a(77371)),s=n(a(68537)),c=n(a(18042)),d=function(e){(0,u.default)(ContentType,e);var t=(0,s.default)(ContentType);function ContentType(){var e;(0,l.default)(this,ContentType);for(var a=arguments.length,r=new Array(a),n=0;n<a;n++)r[n]=arguments[n];return e=t.call.apply(t,[this].concat(r)),(0,c.default)((0,o.default)(e),"id",""),(0,c.default)((0,o.default)(e),"label",""),(0,c.default)((0,o.default)(e),"documentTypes",[]),(0,c.default)((0,o.default)(e),"documents",[]),(0,c.default)((0,o.default)(e),"order",0),e}return(0,i.default)(ContentType,null,[{key:"createFromResponse",value:function createFromResponse(e){return(new ContentType).init({id:e.id,label:e.label,documentTypes:e.doc_types,order:e.order,documents:[]})}}]),ContentType}(n(a(96084)).default);t.default=d},70345:(e,t,a)=>{"use strict";var r=a(67394),n=a(67971);r(t,"__esModule",{value:!0}),t.default=void 0;var l=n(a(11959)),i=n(a(39041)),o=n(a(38852)),u=n(a(77371)),s=n(a(68537)),c=n(a(18042)),d=function(e){(0,u.default)(Document,e);var t=(0,s.default)(Document);function Document(){var e;(0,l.default)(this,Document);for(var a=arguments.length,r=new Array(a),n=0;n<a;n++)r[n]=arguments[n];return e=t.call.apply(t,[this].concat(r)),(0,c.default)((0,o.default)(e),"id",""),(0,c.default)((0,o.default)(e),"title",""),(0,c.default)((0,o.default)(e),"documentType",""),(0,c.default)((0,o.default)(e),"thumbnailUrl",""),(0,c.default)((0,o.default)(e),"previewUrl",""),e}return(0,i.default)(Document,null,[{key:"createFromResponse",value:function createFromResponse(e){return(new Document).init({id:e.id,title:e.title,documentType:e.doc_type,thumbnailUrl:e.thumbnail_url,previewUrl:e.preview_url})}}]),Document}(n(a(96084)).default);t.default=d},80330:(e,t,a)=>{"use strict";var r=a(67394),n=a(67971);r(t,"__esModule",{value:!0}),t.default=void 0,a(90286),a(64434),a(3777),a(38081);var l=n(a(11959)),i=n(a(39041)),o=n(a(38852)),u=n(a(77371)),s=n(a(68537)),c=n(a(18042)),d=n(a(96084)),f=n(a(70345)),m=function(e){(0,u.default)(Kit,e);var t=(0,s.default)(Kit);function Kit(){var e;(0,l.default)(this,Kit);for(var a=arguments.length,r=new Array(a),n=0;n<a;n++)r[n]=arguments[n];return e=t.call.apply(t,[this].concat(r)),(0,c.default)((0,o.default)(e),"id",""),(0,c.default)((0,o.default)(e),"title",""),(0,c.default)((0,o.default)(e),"description",""),(0,c.default)((0,o.default)(e),"isFavorite",!1),(0,c.default)((0,o.default)(e),"thumbnailUrl",null),(0,c.default)((0,o.default)(e),"previewUrl",""),(0,c.default)((0,o.default)(e),"accessLevel",0),(0,c.default)((0,o.default)(e),"trendIndex",null),(0,c.default)((0,o.default)(e),"popularityIndex",null),(0,c.default)((0,o.default)(e),"featuredIndex",null),(0,c.default)((0,o.default)(e),"createdAt",null),(0,c.default)((0,o.default)(e),"updatedAt",null),(0,c.default)((0,o.default)(e),"keywords",[]),(0,c.default)((0,o.default)(e),"taxonomies",[]),(0,c.default)((0,o.default)(e),"documents",[]),e}return(0,i.default)(Kit,[{key:"getDocumentsByTypes",value:function getDocumentsByTypes(e){var t=this;return e.map((function(e){return(e=e.clone()).documents=t.documents.filter((function(t){return e.documentTypes.includes(t.documentType)})),e}))}}],[{key:"createFromResponse",value:function createFromResponse(e){return(new Kit).init({id:e.id,title:e.title,description:e.description,isFavorite:e.is_favorite,thumbnailUrl:e.thumbnail_url,previewUrl:e.preview_url,accessLevel:e.access_level,trendIndex:e.trend_index,popularityIndex:e.popularity_index,featuredIndex:e.featured_index,createdAt:e.created_at?new Date(e.created_at):null,updatedAt:e.updated_at?new Date(e.updated_at):null,keywords:e.keywords,taxonomies:e.taxonomies,documents:e.documents?e.documents.map((function(e){return f.default.createFromResponse(e)})):[]})}}]),Kit}(d.default);t.default=m},28605:(e,t,a)=>{"use strict";var r=a(18194).__,n=a(67394),l=a(67971);n(t,"__esModule",{value:!0}),t.default=t.taxonomyType=void 0;var i=l(a(11959)),o=l(a(39041)),u=l(a(38852)),s=l(a(77371)),c=l(a(68537)),d=l(a(18042)),f=l(a(96084)),m=[{key:"categories",label:r("Categories","elementor"),isOpenByDefault:!0},{key:"tags",label:r("Tags","elementor")},{key:"types",label:r("Kit Types","elementor")},{key:"features",label:r("Features","elementor")}];t.taxonomyType=m;var v=function(e){(0,s.default)(Taxonomy,e);var t=(0,c.default)(Taxonomy);function Taxonomy(){var e;(0,i.default)(this,Taxonomy);for(var a=arguments.length,r=new Array(a),n=0;n<a;n++)r[n]=arguments[n];return e=t.call.apply(t,[this].concat(r)),(0,d.default)((0,u.default)(e),"text",""),(0,d.default)((0,u.default)(e),"type","tag"),e}return(0,o.default)(Taxonomy,null,[{key:"createFromResponse",value:function createFromResponse(e){return(new Taxonomy).init({text:e.text,type:e.type})}}]),Taxonomy}(f.default);t.default=v},15684:(e,t,a)=>{"use strict";var r=a(18194).__,n=a(23615),l=a(67394),i=a(67971);l(t,"__esModule",{value:!0}),t.default=Favorites;var o=i(a(63804)),u=i(a(26115)),s=i(a(96980)),c=a(50927);function Favorites(e){var t=(0,c.useNavigate)(),a=o.default.createElement(s.default,{title:r("No favorites here yet...","elementor"),description:r("Use the heart icon to save kits that inspire you. You'll be able to find them here.","elementor"),button:{text:r("Continue browsing.","elementor"),action:function action(){return t("/kit-library")}}});return o.default.createElement(u.default,{path:e.path,initialQueryParams:{favorite:!0},renderNoResultsComponent:function renderNoResultsComponent(e){var t=e.defaultComponent;return e.isFilterActive?t:a}})}Favorites.propTypes={path:n.string}},50312:(e,t,a)=>{"use strict";var r=a(18194).__,n=a(23615),l=a(67394),i=a(67971),o=a(52369);l(t,"__esModule",{value:!0}),t.default=IndexHeader;var u=o(a(63804)),s=i(a(47834)),c=i(a(59883)),d=a(78675),f=a(50927);function IndexHeader(e){var t=(0,f.useNavigate)(),a=(0,u.useState)(!1),n=(0,s.default)(a,2),l=n[0],i=n[1],o=(0,u.useMemo)((function(){return[{id:"info",text:r("Info","elementor-pro"),hideText:!0,icon:"eicon-info-circle-o",onClick:function onClick(){return i(!0)}},{id:"refetch",text:r("Refetch","elementor-pro"),hideText:!0,icon:"eicon-sync ".concat(e.isFetching?"eicon-animation-spin":""),onClick:e.refetch},{id:"import",text:r("Import","elementor-pro"),hideText:!0,icon:"eicon-upload-circle-o",onClick:function onClick(){return t("/import?referrer=kit-library")}}]}),[e.isFetching,e.refetch]);return u.default.createElement(u.default.Fragment,null,u.default.createElement(c.default,{buttons:o}),u.default.createElement(d.ModalProvider,{title:r("Welcome to the Library","elementor"),show:l,setShow:i},u.default.createElement("div",{className:"e-kit-library-header-info-modal-container"},u.default.createElement(d.Heading,{tag:"h3",variant:"h3"},r("What's a kit?","elementor")),u.default.createElement(d.Text,null,r("A Template Kit is full, ready-made design that you can apply to your site. It includes all the pages, parts, settings and content that you'd expect in a fully functional website.","elementor"))),u.default.createElement("div",{className:"e-kit-library-header-info-modal-container"},u.default.createElement(d.Heading,{tag:"h3",variant:"h3"},r("What's going on in the Kit Library?","elementor")),u.default.createElement(d.Text,null,r("Search & filter for kits by category and tags, or browse through individual kits to see what's inside.","elementor"),u.default.createElement("br",null),r("Once you've picked a winner, apply it to your site!","elementor"))),u.default.createElement("div",null,u.default.createElement(d.Heading,{tag:"h3",variant:"h3"},r("Happy browsing!","elementor")),u.default.createElement(d.Text,null,u.default.createElement(d.Button,{url:"https://go.elementor.com/app-kit-library-how-to-use-kits",target:"_blank",rel:"noreferrer",text:r("Learn more","elementor"),color:"link"})," ",r("about using templates","elementor")))))}a(70082),IndexHeader.propTypes={refetch:n.func.isRequired,isFetching:n.bool}},59380:(e,t,a)=>{"use strict";var r=a(23615),n=a(67394),l=a(67971);n(t,"__esModule",{value:!0}),t.default=IndexSidebar;var i=l(a(63804));a(90286);var o=a(78675);function IndexSidebar(e){return i.default.createElement(i.default.Fragment,null,e.menuItems.map((function(e){return i.default.createElement(o.MenuItem,{key:e.label,text:e.label,className:"eps-menu-item__link ".concat(e.isActive?"eps-menu-item--active":""),icon:e.icon,url:e.url})})),e.tagsFilterSlot)}IndexSidebar.propTypes={tagsFilterSlot:r.node,menuItems:r.arrayOf(r.shape({label:r.string,icon:r.string,isActive:r.bool,url:r.string}))}},26115:(e,t,a)=>{"use strict";var r=a(18194).__,n=a(23615),l=a(67394),i=a(67971),o=a(52369);l(t,"__esModule",{value:!0}),t.default=Index;var u=o(a(63804));a(64434),a(84208),a(3777),a(38081),a(99236),a(42679);var s=i(a(38923)),c=i(a(83452)),d=i(a(74846)),f=i(a(18042)),m=i(a(47834)),v=i(a(84899)),p=i(a(32161)),y=i(a(98125)),_=i(a(96980)),h=i(a(78915)),g=i(a(50312)),b=i(a(59380)),E=i(a(72358)),k=i(a(95219)),C=i(a(28426)),x=i(a(3213)),T=i(a(86281)),w=i(a(8328)),N=o(a(92848)),F=i(a(4801)),M=i(a(95236)),P=a(78675),S=a(84364),O=a(50927);function Index(e){(0,F.default)({title:r("Kit Library","elementor")});var t=function useMenuItems(e){return(0,u.useMemo)((function(){var t=e.replace("/","");return[{label:r("All Template Kits","elementor"),icon:"eicon-filter",isActive:!t,url:"/kit-library"},{label:r("Favorites","elementor"),icon:"eicon-heart-o",isActive:"favorites"===t,url:"/kit-library/favorites"}]}),[e])}(e.path),a=(0,N.default)(e.initialQueryParams),n=a.data,l=a.isSuccess,i=a.isLoading,o=a.isFetching,I=a.isError,L=a.queryParams,B=a.setQueryParams,R=a.clearQueryParams,K=a.forceRefetch,A=a.isFilterActive;!function useRouterQueryParams(e,t){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],r=(0,O.useLocation)(),n=(0,S.useLastFilterContext)().setLastFilter;(0,u.useEffect)((function(){var t=Object.fromEntries((0,s.default)(e).filter((function(e){var t=(0,m.default)(e,2),r=t[0],n=t[1];return!a.includes(r)&&n})));n(t),history.replaceState(null,"",decodeURI("#".concat(wp.url.addQueryArgs(r.pathname.split("?")[0]||"/",t))))}),[e]),(0,u.useEffect)((function(){var e=(0,c.default)(N.defaultQueryParams).reduce((function(e,t){var a=wp.url.getQueryArg(r.pathname,t);return a?(0,v.default)((0,v.default)({},e),{},(0,f.default)({},t,a)):e}),{});t((function(t){return(0,v.default)((0,v.default)((0,v.default)({},t),e),{},{taxonomies:(0,v.default)((0,v.default)({},t.taxonomies),e.taxonomies),ready:!0})}))}),[])}(L,B,["ready"].concat((0,d.default)((0,c.default)(e.initialQueryParams))));var D=(0,M.default)(),q=D.data,H=D.forceRefetch,Q=D.isFetching,U=function useTaxonomiesSelection(e){return[(0,u.useCallback)((function(t,a){return e((function(e){var r=(0,v.default)({},e.taxonomies);return r[t]=a(e.taxonomies[t]),(0,v.default)((0,v.default)({},e),{},{taxonomies:r})}))}),[e]),(0,u.useCallback)((function(t){return e((function(e){var a=(0,s.default)(e.taxonomies).reduce((function(e,a){var r=(0,m.default)(a,2),n=r[0],l=r[1];return(0,v.default)((0,v.default)({},e),{},(0,f.default)({},n,l.filter((function(e){return e!==t}))))}),{});return(0,v.default)((0,v.default)({},e),{},{taxonomies:a})}))}),[e])]}(B),Y=(0,m.default)(U,2),G=Y[0],j=Y[1];return u.default.createElement(k.default,{sidebar:u.default.createElement(b.default,{tagsFilterSlot:u.default.createElement(w.default,{selected:L.taxonomies,onSelect:G,taxonomies:q}),menuItems:t}),header:u.default.createElement(g.default,{refetch:function refetch(){K(),H()},isFetching:o||Q})},u.default.createElement("div",{className:"e-kit-library__index-layout-container"},u.default.createElement(P.Grid,{container:!0,className:"e-kit-library__index-layout-top-area"},u.default.createElement(P.Grid,{item:!0,className:"e-kit-library__index-layout-top-area-search"},u.default.createElement(x.default,{placeholder:r("Search all Template Kits...","elementor"),value:L.search,onChange:function onChange(e){return B((function(t){return(0,v.default)((0,v.default)({},t),{},{search:e})}))}}),A&&u.default.createElement(h.default,{queryParams:L,resultCount:n.length||0,onClear:R,onRemoveTag:j})),u.default.createElement(P.Grid,{item:!0,className:"e-kit-library__index-layout-top-area-sort"},u.default.createElement(T.default,{options:[{label:r("Featured","elementor"),value:"featuredIndex"},{label:r("New","elementor"),value:"createdAt"},{label:r("Popular","elementor"),value:"popularityIndex"},{label:r("Trending","elementor"),value:"trendIndex"}],value:L.order,onChange:function onChange(e){return B((function(t){return(0,v.default)((0,v.default)({},t),{},{order:e})}))}}))),u.default.createElement(p.default,{className:"e-kit-library__index-layout-main"},u.default.createElement(u.default.Fragment,null,i&&u.default.createElement(C.default,null),I&&u.default.createElement(_.default,{title:r("Something went wrong.","elementor"),description:r("Nothing to worry about, use 🔄 on the top right to try again. If the problem continues, head over to the Help Center.","elementor"),button:{text:r("Learn More","elementor"),url:"http://go.elementor.com/app-kit-library-error",target:"_blank"}}),l&&0<n.length&&L.ready&&u.default.createElement(E.default,{data:n}),l&&0===n.length&&L.ready&&e.renderNoResultsComponent({defaultComponent:u.default.createElement(_.default,{title:r("No results matched your search.","elementor"),description:r("Try different keywords or ","elementor"),button:{text:r("Continue browsing.","elementor"),action:R}}),isFilterActive:A}),u.default.createElement(y.default,null)))))}a(78870),Index.propTypes={path:n.string,initialQueryParams:n.object,renderNoResultsComponent:n.func},Index.defaultProps={initialQueryParams:{},renderNoResultsComponent:function renderNoResultsComponent(e){return e.defaultComponent}}},86769:(e,t,a)=>{"use strict";var r=a(18194).__,n=a(23615),l=a(67394),i=a(67971);l(t,"__esModule",{value:!0}),t.default=OverviewContentGroupItem;var o=i(a(63804)),u=i(a(70345)),s=a(78675);function OverviewContentGroupItem(e){return o.default.createElement(s.Card,null,o.default.createElement(s.CardHeader,null,o.default.createElement(s.Heading,{tag:"h3",title:e.document.title,variant:"h5",className:"eps-card__headline"},e.document.title)),o.default.createElement(s.CardBody,null,o.default.createElement(s.CardImage,{alt:e.document.title,src:e.document.thumbnailUrl||""},e.document.previewUrl&&o.default.createElement(s.CardOverlay,null,o.default.createElement(s.Button,{className:"e-kit-library__kit-item-overlay-overview-button",text:r("View Demo","elementor"),icon:"eicon-preview-medium",url:"/kit-library/preview/".concat(e.kitId,"?document_id=").concat(e.document.id)})))))}OverviewContentGroupItem.propTypes={document:n.instanceOf(u.default).isRequired,kitId:n.string.isRequired}},70215:(e,t,a)=>{"use strict";var r=a(23615),n=a(67394),l=a(67971);n(t,"__esModule",{value:!0}),t.default=OverviewContentGroup;var i=l(a(63804));a(90286);var o=l(a(8247)),u=l(a(86769)),s=a(78675);function OverviewContentGroup(e){var t,a;return(null===(t=e.contentType)||void 0===t||null===(a=t.documents)||void 0===a?void 0:a.length)<=0?"":i.default.createElement("div",{className:"e-kit-library__content-overview-group-item"},i.default.createElement(s.Heading,{tag:"h3",variant:"h3",className:"e-kit-library__content-overview-group-title"},e.contentType.label),i.default.createElement(s.CssGrid,{spacing:24,colMinWidth:250},e.contentType.documents.map((function(t){return i.default.createElement(u.default,{key:t.id,document:t,kitId:e.kitId})}))))}OverviewContentGroup.propTypes={contentType:r.instanceOf(o.default),kitId:r.string.isRequired}},54908:(e,t,a)=>{"use strict";var r=a(18194).__,n=a(23615),l=a(67394),i=a(67971),o=a(52369);l(t,"__esModule",{value:!0}),t.default=OverviewSidebar;var u=o(a(63804));a(90286);var s=i(a(47834)),c=i(a(3964)),d=i(a(8247)),f=i(a(21289)),m=i(a(80330)),v=i(a(96370)),p=a(78675);function OverviewSidebar(e){var t,a=(0,u.useState)(!0),n=(0,s.default)(a,2),l=n[0],i=n[1],o=(0,u.useState)(!1),d=(0,s.default)(o,2),m=d[0],y=d[1];return u.default.createElement("div",{className:"e-kit-library__item-sidebar"},u.default.createElement("div",{className:"e-kit-library__item-sidebar-header"},u.default.createElement(p.Heading,{tag:"h1",variant:"h5",className:"e-kit-library__item-sidebar-header-title"},e.model.title),u.default.createElement(f.default,{isFavorite:e.model.isFavorite,id:e.model.id})),u.default.createElement(p.CardImage,{className:"e-kit-library__item-sidebar-thumbnail",alt:e.model.title,src:e.model.thumbnailUrl||""}),u.default.createElement(p.Text,{className:"e-kit-library__item-sidebar-description"},e.model.description||""),e.model.taxonomies.length>0&&u.default.createElement(c.default,{isOpen:l,onChange:i,title:r("TAGS","elementor"),className:"e-kit-library__item-sidebar-collapse-tags"},u.default.createElement(p.Grid,{container:!0,className:"e-kit-library__item-sidebar-tags-container"},e.model.taxonomies.map((function(e){return u.default.createElement(v.default,{key:e},e)})))),(null===(t=e.groupedKitContent)||void 0===t?void 0:t.length)>0&&e.model.documents.length>0&&u.default.createElement(c.default,{isOpen:m,onChange:y,title:r("WHAT'S INSIDE","elementor"),className:"e-kit-library__item-sidebar-collapse-info"},e.groupedKitContent.map((function(e){return e.documents<=0?"":u.default.createElement(p.Text,{className:"e-kit-library__item-information-text",key:e.id},e.documents.length," ",e.label)}))))}a(31761),OverviewSidebar.propTypes={model:n.instanceOf(m.default).isRequired,groupedKitContent:n.arrayOf(n.instanceOf(d.default))}},96370:(e,t,a)=>{"use strict";var r=a(23615),n=a(67394),l=a(67971),i=a(52369);n(t,"__esModule",{value:!0}),t.default=OverviewTaxonomyBadge;var o=i(a(63804));a(71954);var u=l(a(21873)),s=l(a(95236)),c=a(50927);function OverviewTaxonomyBadge(e){var t=(0,s.default)().data,a=e.children,r=(0,o.useMemo)((function(){var e;return t?null===(e=t.find((function(e){return e.text===a})))||void 0===e?void 0:e.type:null}),[t,a]);return r?o.default.createElement(c.Link,{to:"/kit-library?taxonomies[".concat(r,"][]=").concat(a)},o.default.createElement(u.default,null,e.children)):""}OverviewTaxonomyBadge.propTypes={children:r.string}},43273:(e,t,a)=>{"use strict";var r=a(18194).__,n=a(23615),l=a(67394),i=a(67971),o=a(52369);l(t,"__esModule",{value:!0}),t.default=Overview;var u=o(a(63804));a(90286);var s=i(a(32161)),c=i(a(90125)),d=i(a(47175)),f=i(a(95219)),m=i(a(70215)),v=i(a(54908)),p=i(a(39261)),y=i(a(15398)),_=i(a(4801)),h=a(50927);function Overview(e){var t=(0,p.default)(e.id),a=t.data,n=t.isError,l=t.isLoading,i=(0,y.default)(a).data,o=function useHeaderButtons(e){var t=(0,h.useNavigate)();return(0,u.useMemo)((function(){return[{id:"view-demo",text:r("View Demo","elementor"),hideText:!1,variant:"outlined",color:"secondary",size:"sm",onClick:function onClick(){return t("/kit-library/preview/".concat(e))},includeHeaderBtnClass:!1}]}),[e])}(e.id);if((0,_.default)({title:a?"".concat(r("Kit Library","elementor")," | ").concat(a.title):r("Loading...","elementor")}),n)throw new Error;return l?u.default.createElement(c.default,null):u.default.createElement(f.default,{header:u.default.createElement(d.default,{model:a,buttons:o}),sidebar:u.default.createElement(v.default,{model:a,groupedKitContent:i})},i.length>0&&u.default.createElement(s.default,null,i.map((function(t){return u.default.createElement(m.default,{key:t.id,contentType:t,kitId:e.id})}))))}a(11427),Overview.propTypes={id:n.string}},16692:(e,t,a)=>{"use strict";var r=a(23615),n=a(67394),l=a(52369);n(t,"__esModule",{value:!0}),t.PreviewIframe=PreviewIframe;var i=l(a(63804)),o=a(78675);function PreviewIframe(e){var t=(0,i.useRef)();return(0,i.useEffect)((function(){if(t.current){var a=function listener(){return e.onLoaded()};return t.current.addEventListener("load",a),function(){return t.current&&t.current.removeEventListener("load",a)}}}),[t.current,e.previewUrl]),i.default.createElement(o.Grid,{container:!0,justify:"center",className:"e-kit-library__preview-iframe-container"},i.default.createElement("iframe",{className:"e-kit-library__preview-iframe",src:e.previewUrl,style:e.style,ref:t}))}PreviewIframe.propTypes={previewUrl:r.string.isRequired,style:r.object,onLoaded:r.func},PreviewIframe.defaultProps={style:{width:"100%",height:"100%"},onLoaded:function onLoaded(){}}},40562:(e,t,a)=>{"use strict";var r=a(23615),n=a(67394),l=a(67971);n(t,"__esModule",{value:!0}),t.default=PreviewResponsiveControls;var i=l(a(63804));a(90286);var o=a(5133),u=a(78675);function PreviewResponsiveControls(e){return i.default.createElement(u.Grid,{container:!0,alignItems:"center",justify:"center",className:"e-kit-library__preview-responsive-controls"},o.breakpoints.map((function(t){var a=t.label,r=t.value,n="e-kit-library__preview-responsive-controls-item";return e.active===r&&(n+=" e-kit-library__preview-responsive-controls-item--active"),i.default.createElement(u.Button,{key:r,text:a,hideText:!0,className:n,icon:"eicon-device-".concat(r),onClick:function onClick(){return e.onChange(r)}})})))}a(13777),PreviewResponsiveControls.propTypes={active:r.string,onChange:r.func.isRequired},PreviewResponsiveControls.defaultProps={active:"desktop"}},5133:(e,t,a)=>{"use strict";var r=a(18194).__,n=a(23615),l=a(67394),i=a(67971),o=a(52369);l(t,"__esModule",{value:!0}),t.default=Preview,t.breakpoints=void 0;var u=o(a(63804)),s=i(a(47834)),c=i(a(14176));a(99236),a(71954);var d=i(a(90125)),f=i(a(47175)),m=i(a(95219)),v=i(a(28426)),p=i(a(40562)),y=i(a(39261)),_=i(a(4801)),h=a(16692),g=a(50927);a(13656);var b=[{value:"desktop",label:r("Desktop","elementor"),style:{width:"100%",height:"100%"}},{value:"tablet",label:r("Tablet","elementor"),style:{marginTop:"30px",marginBottom:"30px",width:"768px",height:"1024px"}},{value:"mobile",label:r("Mobile","elementor"),style:{marginTop:"30px",marginBottom:"30px",width:"375px",height:"667px"}}];function Preview(e){var t=(0,y.default)(e.id),a=t.data,n=t.isError,l=t.isLoading,i=(0,u.useState)(!0),o=(0,s.default)(i,2),E=o[0],k=o[1],C=function useHeaderButtons(e){var t=(0,g.useNavigate)();return(0,u.useMemo)((function(){return[{id:"overview",text:r("Overview","elementor"),hideText:!1,variant:"outlined",color:"secondary",size:"sm",onClick:function onClick(){return t("/kit-library/overview/".concat(e))},includeHeaderBtnClass:!1}]}),[e])}(e.id),x=function usePreviewUrl(e){var t=(0,g.useLocation)();return(0,u.useMemo)((function(){var a,r;if(!e)return null;var n=new URLSearchParams(null===(a=t.pathname.split("?"))||void 0===a?void 0:a[1]).get("document_id");return n&&(null===(r=e.documents.find((function(e){return e.id===(0,c.default)(n)})))||void 0===r?void 0:r.previewUrl)||e.previewUrl}),[t,e])}(a),T=(0,u.useState)("desktop"),w=(0,s.default)(T,2),N=w[0],F=w[1],M=(0,u.useMemo)((function(){return b.find((function(e){return e.value===N})).style}),[N]);if((0,_.default)({title:a?"".concat(r("Kit Library","elementor")," | ").concat(a.title):r("Loading...","elementor")}),n)throw new Error;return l?u.default.createElement(d.default,null):u.default.createElement(m.default,{header:u.default.createElement(f.default,{model:a,buttons:C,centerColumn:u.default.createElement(p.default,{active:N,onChange:F})})},E&&u.default.createElement(v.default,{className:"e-kit-library__preview-loader"}),x&&u.default.createElement(h.PreviewIframe,{previewUrl:x,style:M,onLoaded:function onLoaded(){return k(!1)}}))}t.breakpoints=b,Preview.propTypes={id:n.string}}}]);assets/js/gutenberg.js000064400000075537151327220410011020 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
/******/ (() => { // webpackBootstrap
/******/ 	var __webpack_modules__ = ({

/***/ "../node_modules/core-js/modules/_a-function.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_a-function.js ***!
  \******************************************************/
/***/ ((module) => {

module.exports = function (it) {
  if (typeof it != 'function') throw TypeError(it + ' is not a function!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_add-to-unscopables.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/modules/_add-to-unscopables.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 22.1.3.31 Array.prototype[@@unscopables]
var UNSCOPABLES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('unscopables');
var ArrayProto = Array.prototype;
if (ArrayProto[UNSCOPABLES] == undefined) __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js")(ArrayProto, UNSCOPABLES, {});
module.exports = function (key) {
  ArrayProto[UNSCOPABLES][key] = true;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_an-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_an-object.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
module.exports = function (it) {
  if (!isObject(it)) throw TypeError(it + ' is not an object!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-methods.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_array-methods.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 0 -> Array#forEach
// 1 -> Array#map
// 2 -> Array#filter
// 3 -> Array#some
// 4 -> Array#every
// 5 -> Array#find
// 6 -> Array#findIndex
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/modules/_ctx.js");
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/modules/_iobject.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/modules/_to-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var asc = __webpack_require__(/*! ./_array-species-create */ "../node_modules/core-js/modules/_array-species-create.js");
module.exports = function (TYPE, $create) {
  var IS_MAP = TYPE == 1;
  var IS_FILTER = TYPE == 2;
  var IS_SOME = TYPE == 3;
  var IS_EVERY = TYPE == 4;
  var IS_FIND_INDEX = TYPE == 6;
  var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
  var create = $create || asc;
  return function ($this, callbackfn, that) {
    var O = toObject($this);
    var self = IObject(O);
    var f = ctx(callbackfn, that, 3);
    var length = toLength(self.length);
    var index = 0;
    var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;
    var val, res;
    for (;length > index; index++) if (NO_HOLES || index in self) {
      val = self[index];
      res = f(val, index, O);
      if (TYPE) {
        if (IS_MAP) result[index] = res;   // map
        else if (res) switch (TYPE) {
          case 3: return true;             // some
          case 5: return val;              // find
          case 6: return index;            // findIndex
          case 2: result.push(val);        // filter
        } else if (IS_EVERY) return false; // every
      }
    }
    return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-species-constructor.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/modules/_array-species-constructor.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var isArray = __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/modules/_is-array.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('species');

module.exports = function (original) {
  var C;
  if (isArray(original)) {
    C = original.constructor;
    // cross-realm fallback
    if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
    if (isObject(C)) {
      C = C[SPECIES];
      if (C === null) C = undefined;
    }
  } return C === undefined ? Array : C;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-species-create.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_array-species-create.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 9.4.2.3 ArraySpeciesCreate(originalArray, length)
var speciesConstructor = __webpack_require__(/*! ./_array-species-constructor */ "../node_modules/core-js/modules/_array-species-constructor.js");

module.exports = function (original, length) {
  return new (speciesConstructor(original))(length);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_cof.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_cof.js ***!
  \***********************************************/
/***/ ((module) => {

var toString = {}.toString;

module.exports = function (it) {
  return toString.call(it).slice(8, -1);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_core.js":
/*!************************************************!*\
  !*** ../node_modules/core-js/modules/_core.js ***!
  \************************************************/
/***/ ((module) => {

var core = module.exports = { version: '2.6.12' };
if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/modules/_ctx.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_ctx.js ***!
  \***********************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// optional / simple context binding
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/modules/_a-function.js");
module.exports = function (fn, that, length) {
  aFunction(fn);
  if (that === undefined) return fn;
  switch (length) {
    case 1: return function (a) {
      return fn.call(that, a);
    };
    case 2: return function (a, b) {
      return fn.call(that, a, b);
    };
    case 3: return function (a, b, c) {
      return fn.call(that, a, b, c);
    };
  }
  return function (/* ...args */) {
    return fn.apply(that, arguments);
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_defined.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_defined.js ***!
  \***************************************************/
/***/ ((module) => {

// 7.2.1 RequireObjectCoercible(argument)
module.exports = function (it) {
  if (it == undefined) throw TypeError("Can't call method on  " + it);
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_descriptors.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_descriptors.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Thank's IE8 for his funny defineProperty
module.exports = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () {
  return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/modules/_dom-create.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_dom-create.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js").document;
// typeof document.createElement is 'object' in old IE
var is = isObject(document) && isObject(document.createElement);
module.exports = function (it) {
  return is ? document.createElement(it) : {};
};


/***/ }),

/***/ "../node_modules/core-js/modules/_export.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_export.js ***!
  \**************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/modules/_ctx.js");
var PROTOTYPE = 'prototype';

var $export = function (type, name, source) {
  var IS_FORCED = type & $export.F;
  var IS_GLOBAL = type & $export.G;
  var IS_STATIC = type & $export.S;
  var IS_PROTO = type & $export.P;
  var IS_BIND = type & $export.B;
  var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE];
  var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
  var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {});
  var key, own, out, exp;
  if (IS_GLOBAL) source = name;
  for (key in source) {
    // contains in native
    own = !IS_FORCED && target && target[key] !== undefined;
    // export native or passed
    out = (own ? target : source)[key];
    // bind timers to global for call from export context
    exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
    // extend global
    if (target) redefine(target, key, out, type & $export.U);
    // export
    if (exports[key] != out) hide(exports, key, exp);
    if (IS_PROTO && expProto[key] != out) expProto[key] = out;
  }
};
global.core = core;
// type bitmap
$export.F = 1;   // forced
$export.G = 2;   // global
$export.S = 4;   // static
$export.P = 8;   // proto
$export.B = 16;  // bind
$export.W = 32;  // wrap
$export.U = 64;  // safe
$export.R = 128; // real proto method for `library`
module.exports = $export;


/***/ }),

/***/ "../node_modules/core-js/modules/_fails.js":
/*!*************************************************!*\
  !*** ../node_modules/core-js/modules/_fails.js ***!
  \*************************************************/
/***/ ((module) => {

module.exports = function (exec) {
  try {
    return !!exec();
  } catch (e) {
    return true;
  }
};


/***/ }),

/***/ "../node_modules/core-js/modules/_function-to-string.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/modules/_function-to-string.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/modules/_shared.js")('native-function-to-string', Function.toString);


/***/ }),

/***/ "../node_modules/core-js/modules/_global.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_global.js ***!
  \**************************************************/
/***/ ((module) => {

// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
var global = module.exports = typeof window != 'undefined' && window.Math == Math
  ? window : typeof self != 'undefined' && self.Math == Math ? self
  // eslint-disable-next-line no-new-func
  : Function('return this')();
if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/modules/_has.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_has.js ***!
  \***********************************************/
/***/ ((module) => {

var hasOwnProperty = {}.hasOwnProperty;
module.exports = function (it, key) {
  return hasOwnProperty.call(it, key);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_hide.js":
/*!************************************************!*\
  !*** ../node_modules/core-js/modules/_hide.js ***!
  \************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/modules/_property-desc.js");
module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? function (object, key, value) {
  return dP.f(object, key, createDesc(1, value));
} : function (object, key, value) {
  object[key] = value;
  return object;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_ie8-dom-define.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/_ie8-dom-define.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") && !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () {
  return Object.defineProperty(__webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/modules/_dom-create.js")('div'), 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/modules/_iobject.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_iobject.js ***!
  \***************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// fallback for non-array-like ES3 and non-enumerable old V8 strings
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
// eslint-disable-next-line no-prototype-builtins
module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
  return cof(it) == 'String' ? it.split('') : Object(it);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_is-array.js":
/*!****************************************************!*\
  !*** ../node_modules/core-js/modules/_is-array.js ***!
  \****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.2.2 IsArray(argument)
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
module.exports = Array.isArray || function isArray(arg) {
  return cof(arg) == 'Array';
};


/***/ }),

/***/ "../node_modules/core-js/modules/_is-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_is-object.js ***!
  \*****************************************************/
/***/ ((module) => {

module.exports = function (it) {
  return typeof it === 'object' ? it !== null : typeof it === 'function';
};


/***/ }),

/***/ "../node_modules/core-js/modules/_library.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_library.js ***!
  \***************************************************/
/***/ ((module) => {

module.exports = false;


/***/ }),

/***/ "../node_modules/core-js/modules/_object-dp.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_object-dp.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/modules/_ie8-dom-define.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/modules/_to-primitive.js");
var dP = Object.defineProperty;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? Object.defineProperty : function defineProperty(O, P, Attributes) {
  anObject(O);
  P = toPrimitive(P, true);
  anObject(Attributes);
  if (IE8_DOM_DEFINE) try {
    return dP(O, P, Attributes);
  } catch (e) { /* empty */ }
  if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
  if ('value' in Attributes) O[P] = Attributes.value;
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_property-desc.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_property-desc.js ***!
  \*********************************************************/
/***/ ((module) => {

module.exports = function (bitmap, value) {
  return {
    enumerable: !(bitmap & 1),
    configurable: !(bitmap & 2),
    writable: !(bitmap & 4),
    value: value
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_redefine.js":
/*!****************************************************!*\
  !*** ../node_modules/core-js/modules/_redefine.js ***!
  \****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var SRC = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/modules/_uid.js")('src');
var $toString = __webpack_require__(/*! ./_function-to-string */ "../node_modules/core-js/modules/_function-to-string.js");
var TO_STRING = 'toString';
var TPL = ('' + $toString).split(TO_STRING);

__webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js").inspectSource = function (it) {
  return $toString.call(it);
};

(module.exports = function (O, key, val, safe) {
  var isFunction = typeof val == 'function';
  if (isFunction) has(val, 'name') || hide(val, 'name', key);
  if (O[key] === val) return;
  if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));
  if (O === global) {
    O[key] = val;
  } else if (!safe) {
    delete O[key];
    hide(O, key, val);
  } else if (O[key]) {
    O[key] = val;
  } else {
    hide(O, key, val);
  }
// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
})(Function.prototype, TO_STRING, function toString() {
  return typeof this == 'function' && this[SRC] || $toString.call(this);
});


/***/ }),

/***/ "../node_modules/core-js/modules/_shared.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_shared.js ***!
  \**************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var SHARED = '__core-js_shared__';
var store = global[SHARED] || (global[SHARED] = {});

(module.exports = function (key, value) {
  return store[key] || (store[key] = value !== undefined ? value : {});
})('versions', []).push({
  version: core.version,
  mode: __webpack_require__(/*! ./_library */ "../node_modules/core-js/modules/_library.js") ? 'pure' : 'global',
  copyright: '© 2020 Denis Pushkarev (zloirock.ru)'
});


/***/ }),

/***/ "../node_modules/core-js/modules/_to-integer.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_to-integer.js ***!
  \******************************************************/
/***/ ((module) => {

// 7.1.4 ToInteger
var ceil = Math.ceil;
var floor = Math.floor;
module.exports = function (it) {
  return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-length.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_to-length.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.15 ToLength
var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var min = Math.min;
module.exports = function (it) {
  return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_to-object.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.13 ToObject(argument)
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
module.exports = function (it) {
  return Object(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-primitive.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/modules/_to-primitive.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.1 ToPrimitive(input [, PreferredType])
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
// instead of the ES6 spec version, we didn't implement @@toPrimitive case
// and the second argument - flag - preferred type is a string
module.exports = function (it, S) {
  if (!isObject(it)) return it;
  var fn, val;
  if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
  if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  throw TypeError("Can't convert object to primitive value");
};


/***/ }),

/***/ "../node_modules/core-js/modules/_uid.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_uid.js ***!
  \***********************************************/
/***/ ((module) => {

var id = 0;
var px = Math.random();
module.exports = function (key) {
  return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_wks.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_wks.js ***!
  \***********************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var store = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/modules/_shared.js")('wks');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/modules/_uid.js");
var Symbol = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js").Symbol;
var USE_SYMBOL = typeof Symbol == 'function';

var $exports = module.exports = function (name) {
  return store[name] || (store[name] =
    USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
};

$exports.store = store;


/***/ }),

/***/ "../node_modules/core-js/modules/es6.array.find.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.array.find.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 22.1.3.8 Array.prototype.find(predicate, thisArg = undefined)
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var $find = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/modules/_array-methods.js")(5);
var KEY = 'find';
var forced = true;
// Shouldn't skip holes
if (KEY in []) Array(1)[KEY](function () { forced = false; });
$export($export.P + $export.F * forced, 'Array', {
  find: function find(callbackfn /* , that = undefined */) {
    return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
  }
});
__webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/modules/_add-to-unscopables.js")(KEY);


/***/ }),

/***/ "@wordpress/i18n":
/*!**************************!*\
  !*** external "wp.i18n" ***!
  \**************************/
/***/ ((module) => {

"use strict";
module.exports = wp.i18n;

/***/ })

/******/ 	});
/************************************************************************/
/******/ 	// The module cache
/******/ 	var __webpack_module_cache__ = {};
/******/ 	
/******/ 	// The require function
/******/ 	function __webpack_require__(moduleId) {
/******/ 		// Check if module is in cache
/******/ 		var cachedModule = __webpack_module_cache__[moduleId];
/******/ 		if (cachedModule !== undefined) {
/******/ 			return cachedModule.exports;
/******/ 		}
/******/ 		// Create a new module (and put it into the cache)
/******/ 		var module = __webpack_module_cache__[moduleId] = {
/******/ 			// no module.id needed
/******/ 			// no module.loaded needed
/******/ 			exports: {}
/******/ 		};
/******/ 	
/******/ 		// Execute the module function
/******/ 		__webpack_modules__[moduleId](module, module.exports, __webpack_require__);
/******/ 	
/******/ 		// Return the exports of the module
/******/ 		return module.exports;
/******/ 	}
/******/ 	
/************************************************************************/
var __webpack_exports__ = {};
// This entry need to be wrapped in an IIFE because it need to be in strict mode.
(() => {
"use strict";
/*!*******************************************!*\
  !*** ../assets/dev/js/admin/gutenberg.js ***!
  \*******************************************/
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

/* global jQuery, ElementorGutenbergSettings */
(function ($) {
  'use strict';

  var ElementorGutenbergApp = {
    cacheElements: function cacheElements() {
      var self = this;
      self.isElementorMode = ElementorGutenbergSettings.isElementorMode;
      self.cache = {};
      self.cache.$gutenberg = $('#editor');
      self.cache.$switchMode = $($('#elementor-gutenberg-button-switch-mode').html());
      self.cache.$switchModeButton = self.cache.$switchMode.find('#elementor-switch-mode-button');
      self.bindEvents();
      self.toggleStatus();
      wp.data.subscribe(function () {
        setTimeout(function () {
          self.buildPanel();
        }, 1);
      });
    },
    buildPanel: function buildPanel() {
      var self = this;

      if (!self.cache.$gutenberg.find('#elementor-switch-mode').length) {
        self.cache.$gutenberg.find('.edit-post-header-toolbar').append(self.cache.$switchMode);
      }

      if (!$('#elementor-editor').length) {
        self.cache.$editorPanel = $($('#elementor-gutenberg-panel').html()); // TODO: `editor-block-list__layout` class for WP < 5.3 support.

        self.cache.$gurenbergBlockList = self.cache.$gutenberg.find('.editor-block-list__layout, .editor-post-text-editor, .block-editor-block-list__layout');
        self.cache.$gurenbergBlockList.after(self.cache.$editorPanel);
        self.cache.$editorPanelButton = self.cache.$editorPanel.find('#elementor-go-to-edit-page-link');
        self.cache.$editorPanelButton.on('click', function (event) {
          event.preventDefault();
          self.animateLoader(); // A new post is initialized as an 'auto-draft'.
          // if the post is not a new post it should not save it to avoid some saving conflict between elementor and gutenberg.

          var isNewPost = 'auto-draft' === wp.data.select('core/editor').getCurrentPost().status;

          if (isNewPost) {
            var documentTitle = wp.data.select('core/editor').getEditedPostAttribute('title');

            if (!documentTitle) {
              wp.data.dispatch('core/editor').editPost({
                title: 'Elementor #' + $('#post_ID').val()
              });
            }

            wp.data.dispatch('core/editor').savePost();
          }

          self.redirectWhenSave();
        });
      }
    },
    bindEvents: function bindEvents() {
      var self = this;
      self.cache.$switchModeButton.on('click', function () {
        if (self.isElementorMode) {
          elementorCommon.dialogsManager.createWidget('confirm', {
            message: __('Please note that you are switching to WordPress default editor. Your current layout, design and content might break.', 'elementor'),
            headerMessage: __('Back to WordPress Editor', 'elementor'),
            strings: {
              confirm: __('Continue', 'elementor'),
              cancel: __('Cancel', 'elementor')
            },
            defaultOption: 'confirm',
            onConfirm: function onConfirm() {
              var wpEditor = wp.data.dispatch('core/editor');
              wpEditor.editPost({
                gutenberg_elementor_mode: false
              });
              wpEditor.savePost();
              self.isElementorMode = !self.isElementorMode;
              self.toggleStatus();
            }
          }).show();
        } else {
          self.isElementorMode = !self.isElementorMode;
          self.toggleStatus();
          self.cache.$editorPanelButton.trigger('click');
        }
      });
    },
    redirectWhenSave: function redirectWhenSave() {
      var self = this;
      setTimeout(function () {
        if (wp.data.select('core/editor').isSavingPost()) {
          self.redirectWhenSave();
        } else {
          location.href = ElementorGutenbergSettings.editLink;
        }
      }, 300);
    },
    animateLoader: function animateLoader() {
      this.cache.$editorPanelButton.addClass('elementor-animate');
    },
    toggleStatus: function toggleStatus() {
      jQuery('body').toggleClass('elementor-editor-active', this.isElementorMode).toggleClass('elementor-editor-inactive', !this.isElementorMode);
    },
    init: function init() {
      this.cacheElements();
    }
  };
  $(function () {
    ElementorGutenbergApp.init();
  });
})(jQuery);
})();

/******/ })()
;
//# sourceMappingURL=gutenberg.js.mapassets/js/progress.4079971c3240c226b858.bundle.min.js000064400000001216151327220410015236 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
(self.webpackChunkelementor=self.webpackChunkelementor||[]).push([[192],{1351:(e,s)=>{"use strict";Object.defineProperty(s,"__esModule",{value:!0}),s.default=void 0;class Progress extends elementorModules.frontend.handlers.Base{getDefaultSettings(){return{selectors:{progressNumber:".elementor-progress-bar"}}}getDefaultElements(){const e=this.getSettings("selectors");return{$progressNumber:this.$element.find(e.progressNumber)}}onInit(){super.onInit(),elementorFrontend.waypoint(this.elements.$progressNumber,(()=>{const e=this.elements.$progressNumber;e.css("width",e.data("max")+"%")}))}}s.default=Progress}}]);assets/js/app.js000064400002545320151327220410007610 0ustar00/*! elementor - v3.4.8 - 16-11-2021 */
/******/ (() => { // webpackBootstrap
/******/ 	var __webpack_modules__ = ({

/***/ "../core/app/assets/js/app.scss":
/*!**************************************!*\
  !*** ../core/app/assets/js/app.scss ***!
  \**************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/assets/js/molecules/collapse.scss":
/*!*****************************************************!*\
  !*** ../core/app/assets/js/molecules/collapse.scss ***!
  \*****************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/assets/js/molecules/upload-file.scss":
/*!********************************************************!*\
  !*** ../core/app/assets/js/molecules/upload-file.scss ***!
  \********************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/assets/js/organisms/drop-zone.scss":
/*!******************************************************!*\
  !*** ../core/app/assets/js/organisms/drop-zone.scss ***!
  \******************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/assets/js/organisms/wizard-footer.scss":
/*!**********************************************************!*\
  !*** ../core/app/assets/js/organisms/wizard-footer.scss ***!
  \**********************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/assets/js/ui/atoms/box.scss":
/*!***********************************************!*\
  !*** ../core/app/assets/js/ui/atoms/box.scss ***!
  \***********************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/assets/js/ui/atoms/checkbox.scss":
/*!****************************************************!*\
  !*** ../core/app/assets/js/ui/atoms/checkbox.scss ***!
  \****************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/assets/js/ui/atoms/drag-drop.scss":
/*!*****************************************************!*\
  !*** ../core/app/assets/js/ui/atoms/drag-drop.scss ***!
  \*****************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/assets/js/ui/atoms/text-field.scss":
/*!******************************************************!*\
  !*** ../core/app/assets/js/ui/atoms/text-field.scss ***!
  \******************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/assets/js/ui/card/card.scss":
/*!***********************************************!*\
  !*** ../core/app/assets/js/ui/card/card.scss ***!
  \***********************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/assets/js/ui/dialog/dialog.scss":
/*!***************************************************!*\
  !*** ../core/app/assets/js/ui/dialog/dialog.scss ***!
  \***************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/assets/js/ui/grid/grid.scss":
/*!***********************************************!*\
  !*** ../core/app/assets/js/ui/grid/grid.scss ***!
  \***********************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/assets/js/ui/modal/modal.scss":
/*!*************************************************!*\
  !*** ../core/app/assets/js/ui/modal/modal.scss ***!
  \*************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/assets/js/ui/molecules/inline-link.scss":
/*!***********************************************************!*\
  !*** ../core/app/assets/js/ui/molecules/inline-link.scss ***!
  \***********************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/assets/js/ui/molecules/list.scss":
/*!****************************************************!*\
  !*** ../core/app/assets/js/ui/molecules/list.scss ***!
  \****************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/assets/js/ui/molecules/notice.scss":
/*!******************************************************!*\
  !*** ../core/app/assets/js/ui/molecules/notice.scss ***!
  \******************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/import-export/assets/js/pages/export/export-complete/export-complete.scss":
/*!*****************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/pages/export/export-complete/export-complete.scss ***!
  \*****************************************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/import-export/assets/js/pages/export/export-kit/export-kit.scss":
/*!*******************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/pages/export/export-kit/export-kit.scss ***!
  \*******************************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/import-export/assets/js/pages/import/import-kit/import-kit.scss":
/*!*******************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/pages/import/import-kit/import-kit.scss ***!
  \*******************************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/import-export/assets/js/pages/import/import-resolver/import-resolver.scss":
/*!*****************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/pages/import/import-resolver/import-resolver.scss ***!
  \*****************************************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/content-layout/content-layout.scss":
/*!*********************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/content-layout/content-layout.scss ***!
  \*********************************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/info-modal/info-modal.scss":
/*!*************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/info-modal/info-modal.scss ***!
  \*************************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/kit-content/components/templates-features/templates-features.scss":
/*!****************************************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/kit-content/components/templates-features/templates-features.scss ***!
  \****************************************************************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/kit-content/kit-content.scss":
/*!***************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/kit-content/kit-content.scss ***!
  \***************************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/kit-data/kit-data.scss":
/*!*********************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/kit-data/kit-data.scss ***!
  \*********************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/import-export/assets/js/ui/page-header/page-header.scss":
/*!***********************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/ui/page-header/page-header.scss ***!
  \***********************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/import-export/assets/js/ui/panel/panel.scss":
/*!***********************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/ui/panel/panel.scss ***!
  \***********************************************************************/
/***/ (() => {



/***/ }),

/***/ "../core/app/modules/import-export/assets/js/ui/wizard-step/wizard-step.scss":
/*!***********************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/ui/wizard-step/wizard-step.scss ***!
  \***********************************************************************************/
/***/ (() => {



/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/array/from.js":
/*!********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/array/from.js ***!
  \********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/array/from */ "../node_modules/core-js/library/fn/array/from.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/array/is-array */ "../node_modules/core-js/library/fn/array/is-array.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/json/stringify.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/json/stringify.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/json/stringify */ "../node_modules/core-js/library/fn/json/stringify.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/assign.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/assign.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/assign */ "../node_modules/core-js/library/fn/object/assign.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/create.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/create.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/create */ "../node_modules/core-js/library/fn/object/create.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/define-properties.js":
/*!**********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/define-properties.js ***!
  \**********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/define-properties */ "../node_modules/core-js/library/fn/object/define-properties.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js":
/*!********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js ***!
  \********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/define-property */ "../node_modules/core-js/library/fn/object/define-property.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/entries.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/entries */ "../node_modules/core-js/library/fn/object/entries.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js":
/*!********************************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js ***!
  \********************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/get-own-property-descriptor */ "../node_modules/core-js/library/fn/object/get-own-property-descriptor.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptors.js":
/*!*********************************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptors.js ***!
  \*********************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/get-own-property-descriptors */ "../node_modules/core-js/library/fn/object/get-own-property-descriptors.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-symbols.js":
/*!*****************************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-symbols.js ***!
  \*****************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/get-own-property-symbols */ "../node_modules/core-js/library/fn/object/get-own-property-symbols.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/get-prototype-of.js":
/*!*********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/get-prototype-of.js ***!
  \*********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/get-prototype-of */ "../node_modules/core-js/library/fn/object/get-prototype-of.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/keys.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/keys */ "../node_modules/core-js/library/fn/object/keys.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js":
/*!*********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js ***!
  \*********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/object/set-prototype-of */ "../node_modules/core-js/library/fn/object/set-prototype-of.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/parse-int.js":
/*!*******************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/parse-int.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/parse-int */ "../node_modules/core-js/library/fn/parse-int.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js":
/*!***************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js ***!
  \***************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/reflect/construct */ "../node_modules/core-js/library/fn/reflect/construct.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/reflect/get.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/reflect/get.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/reflect/get */ "../node_modules/core-js/library/fn/reflect/get.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js":
/*!****************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/symbol.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/symbol */ "../node_modules/core-js/library/fn/symbol/index.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js":
/*!*************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js ***!
  \*************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/symbol/iterator */ "../node_modules/core-js/library/fn/symbol/iterator.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/core-js/weak-map.js":
/*!******************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/core-js/weak-map.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! core-js/library/fn/weak-map */ "../node_modules/core-js/library/fn/weak-map.js");

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/arrayLikeToArray.js":
/*!**************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/arrayLikeToArray.js ***!
  \**************************************************************************/
/***/ ((module) => {

function _arrayLikeToArray(arr, len) {
  if (len == null || len > arr.length) len = arr.length;

  for (var i = 0, arr2 = new Array(len); i < len; i++) {
    arr2[i] = arr[i];
  }

  return arr2;
}

module.exports = _arrayLikeToArray;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/arrayWithHoles.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/arrayWithHoles.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Array$isArray = __webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js");

function _arrayWithHoles(arr) {
  if (_Array$isArray(arr)) return arr;
}

module.exports = _arrayWithHoles;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/arrayWithoutHoles.js":
/*!***************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/arrayWithoutHoles.js ***!
  \***************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Array$isArray = __webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js");

var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/arrayLikeToArray.js");

function _arrayWithoutHoles(arr) {
  if (_Array$isArray(arr)) return arrayLikeToArray(arr);
}

module.exports = _arrayWithoutHoles;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js":
/*!*******************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js ***!
  \*******************************************************************************/
/***/ ((module) => {

function _assertThisInitialized(self) {
  if (self === void 0) {
    throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
  }

  return self;
}

module.exports = _assertThisInitialized;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js ***!
  \************************************************************************/
/***/ ((module) => {

function _classCallCheck(instance, Constructor) {
  if (!(instance instanceof Constructor)) {
    throw new TypeError("Cannot call a class as a function");
  }
}

module.exports = _classCallCheck;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/createClass.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

function _defineProperties(target, props) {
  for (var i = 0; i < props.length; i++) {
    var descriptor = props[i];
    descriptor.enumerable = descriptor.enumerable || false;
    descriptor.configurable = true;
    if ("value" in descriptor) descriptor.writable = true;

    _Object$defineProperty(target, descriptor.key, descriptor);
  }
}

function _createClass(Constructor, protoProps, staticProps) {
  if (protoProps) _defineProperties(Constructor.prototype, protoProps);
  if (staticProps) _defineProperties(Constructor, staticProps);
  return Constructor;
}

module.exports = _createClass;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/createForOfIteratorHelper.js":
/*!***********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/createForOfIteratorHelper.js ***!
  \***********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Symbol = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol */ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js");

var _Symbol$iterator = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/iterator */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js");

var _Array$isArray = __webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js");

var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js");

function _createForOfIteratorHelper(o, allowArrayLike) {
  var it = typeof _Symbol !== "undefined" && o[_Symbol$iterator] || o["@@iterator"];

  if (!it) {
    if (_Array$isArray(o) || (it = unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") {
      if (it) o = it;
      var i = 0;

      var F = function F() {};

      return {
        s: F,
        n: function n() {
          if (i >= o.length) return {
            done: true
          };
          return {
            done: false,
            value: o[i++]
          };
        },
        e: function e(_e) {
          throw _e;
        },
        f: F
      };
    }

    throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
  }

  var normalCompletion = true,
      didErr = false,
      err;
  return {
    s: function s() {
      it = it.call(o);
    },
    n: function n() {
      var step = it.next();
      normalCompletion = step.done;
      return step;
    },
    e: function e(_e2) {
      didErr = true;
      err = _e2;
    },
    f: function f() {
      try {
        if (!normalCompletion && it["return"] != null) it["return"]();
      } finally {
        if (didErr) throw err;
      }
    }
  };
}

module.exports = _createForOfIteratorHelper;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js":
/*!*********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/createSuper.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Reflect$construct = __webpack_require__(/*! @babel/runtime-corejs2/core-js/reflect/construct */ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js");

var getPrototypeOf = __webpack_require__(/*! ./getPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js");

var isNativeReflectConstruct = __webpack_require__(/*! ./isNativeReflectConstruct.js */ "../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js");

var possibleConstructorReturn = __webpack_require__(/*! ./possibleConstructorReturn.js */ "../node_modules/@babel/runtime-corejs2/helpers/possibleConstructorReturn.js");

function _createSuper(Derived) {
  var hasNativeReflectConstruct = isNativeReflectConstruct();
  return function _createSuperInternal() {
    var Super = getPrototypeOf(Derived),
        result;

    if (hasNativeReflectConstruct) {
      var NewTarget = getPrototypeOf(this).constructor;
      result = _Reflect$construct(Super, arguments, NewTarget);
    } else {
      result = Super.apply(this, arguments);
    }

    return possibleConstructorReturn(this, result);
  };
}

module.exports = _createSuper;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

function _defineProperty(obj, key, value) {
  if (key in obj) {
    _Object$defineProperty(obj, key, {
      value: value,
      enumerable: true,
      configurable: true,
      writable: true
    });
  } else {
    obj[key] = value;
  }

  return obj;
}

module.exports = _defineProperty;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/extends.js":
/*!*****************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/extends.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$assign = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/assign */ "../node_modules/@babel/runtime-corejs2/core-js/object/assign.js");

function _extends() {
  module.exports = _extends = _Object$assign || function (target) {
    for (var i = 1; i < arguments.length; i++) {
      var source = arguments[i];

      for (var key in source) {
        if (Object.prototype.hasOwnProperty.call(source, key)) {
          target[key] = source[key];
        }
      }
    }

    return target;
  };

  module.exports.default = module.exports, module.exports.__esModule = true;
  return _extends.apply(this, arguments);
}

module.exports = _extends;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/get.js":
/*!*************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/get.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Reflect$get = __webpack_require__(/*! @babel/runtime-corejs2/core-js/reflect/get */ "../node_modules/@babel/runtime-corejs2/core-js/reflect/get.js");

var _Object$getOwnPropertyDescriptor = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-own-property-descriptor */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js");

var superPropBase = __webpack_require__(/*! ./superPropBase.js */ "../node_modules/@babel/runtime-corejs2/helpers/superPropBase.js");

function _get(target, property, receiver) {
  if (typeof Reflect !== "undefined" && _Reflect$get) {
    module.exports = _get = _Reflect$get;
    module.exports.default = module.exports, module.exports.__esModule = true;
  } else {
    module.exports = _get = function _get(target, property, receiver) {
      var base = superPropBase(target, property);
      if (!base) return;

      var desc = _Object$getOwnPropertyDescriptor(base, property);

      if (desc.get) {
        return desc.get.call(receiver);
      }

      return desc.value;
    };

    module.exports.default = module.exports, module.exports.__esModule = true;
  }

  return _get(target, property, receiver || target);
}

module.exports = _get;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$setPrototypeOf = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/set-prototype-of */ "../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js");

var _Object$getPrototypeOf = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-prototype-of */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-prototype-of.js");

function _getPrototypeOf(o) {
  module.exports = _getPrototypeOf = _Object$setPrototypeOf ? _Object$getPrototypeOf : function _getPrototypeOf(o) {
    return o.__proto__ || _Object$getPrototypeOf(o);
  };
  module.exports.default = module.exports, module.exports.__esModule = true;
  return _getPrototypeOf(o);
}

module.exports = _getPrototypeOf;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js":
/*!******************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/inherits.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$create = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/create */ "../node_modules/@babel/runtime-corejs2/core-js/object/create.js");

var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js");

function _inherits(subClass, superClass) {
  if (typeof superClass !== "function" && superClass !== null) {
    throw new TypeError("Super expression must either be null or a function");
  }

  subClass.prototype = _Object$create(superClass && superClass.prototype, {
    constructor: {
      value: subClass,
      writable: true,
      configurable: true
    }
  });
  if (superClass) setPrototypeOf(subClass, superClass);
}

module.exports = _inherits;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js":
/*!*******************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js ***!
  \*******************************************************************************/
/***/ ((module) => {

function _interopRequireDefault(obj) {
  return obj && obj.__esModule ? obj : {
    "default": obj
  };
}

module.exports = _interopRequireDefault;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js":
/*!********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js ***!
  \********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _typeof = __webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js").default;

var _WeakMap = __webpack_require__(/*! @babel/runtime-corejs2/core-js/weak-map */ "../node_modules/@babel/runtime-corejs2/core-js/weak-map.js");

var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _Object$getOwnPropertyDescriptor = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-own-property-descriptor */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js");

function _getRequireWildcardCache(nodeInterop) {
  if (typeof _WeakMap !== "function") return null;
  var cacheBabelInterop = new _WeakMap();
  var cacheNodeInterop = new _WeakMap();
  return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) {
    return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
  })(nodeInterop);
}

function _interopRequireWildcard(obj, nodeInterop) {
  if (!nodeInterop && obj && obj.__esModule) {
    return obj;
  }

  if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") {
    return {
      "default": obj
    };
  }

  var cache = _getRequireWildcardCache(nodeInterop);

  if (cache && cache.has(obj)) {
    return cache.get(obj);
  }

  var newObj = {};
  var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor;

  for (var key in obj) {
    if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
      var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null;

      if (desc && (desc.get || desc.set)) {
        _Object$defineProperty(newObj, key, desc);
      } else {
        newObj[key] = obj[key];
      }
    }
  }

  newObj["default"] = obj;

  if (cache) {
    cache.set(obj, newObj);
  }

  return newObj;
}

module.exports = _interopRequireWildcard;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js":
/*!**********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/isNativeReflectConstruct.js ***!
  \**********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Reflect$construct = __webpack_require__(/*! @babel/runtime-corejs2/core-js/reflect/construct */ "../node_modules/@babel/runtime-corejs2/core-js/reflect/construct.js");

function _isNativeReflectConstruct() {
  if (typeof Reflect === "undefined" || !_Reflect$construct) return false;
  if (_Reflect$construct.sham) return false;
  if (typeof Proxy === "function") return true;

  try {
    Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {}));
    return true;
  } catch (e) {
    return false;
  }
}

module.exports = _isNativeReflectConstruct;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/iterableToArray.js":
/*!*************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/iterableToArray.js ***!
  \*************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Symbol = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol */ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js");

var _Symbol$iterator = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/iterator */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js");

var _Array$from = __webpack_require__(/*! @babel/runtime-corejs2/core-js/array/from */ "../node_modules/@babel/runtime-corejs2/core-js/array/from.js");

function _iterableToArray(iter) {
  if (typeof _Symbol !== "undefined" && iter[_Symbol$iterator] != null || iter["@@iterator"] != null) return _Array$from(iter);
}

module.exports = _iterableToArray;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/iterableToArrayLimit.js":
/*!******************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/iterableToArrayLimit.js ***!
  \******************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Symbol = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol */ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js");

var _Symbol$iterator = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/iterator */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js");

function _iterableToArrayLimit(arr, i) {
  var _i = arr == null ? null : typeof _Symbol !== "undefined" && arr[_Symbol$iterator] || arr["@@iterator"];

  if (_i == null) return;
  var _arr = [];
  var _n = true;
  var _d = false;

  var _s, _e;

  try {
    for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {
      _arr.push(_s.value);

      if (i && _arr.length === i) break;
    }
  } catch (err) {
    _d = true;
    _e = err;
  } finally {
    try {
      if (!_n && _i["return"] != null) _i["return"]();
    } finally {
      if (_d) throw _e;
    }
  }

  return _arr;
}

module.exports = _iterableToArrayLimit;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/nonIterableRest.js":
/*!*************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/nonIterableRest.js ***!
  \*************************************************************************/
/***/ ((module) => {

function _nonIterableRest() {
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
}

module.exports = _nonIterableRest;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/nonIterableSpread.js":
/*!***************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/nonIterableSpread.js ***!
  \***************************************************************************/
/***/ ((module) => {

function _nonIterableSpread() {
  throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
}

module.exports = _nonIterableSpread;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$keys = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js");

var _Object$getOwnPropertySymbols = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-own-property-symbols */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-symbols.js");

var _Object$getOwnPropertyDescriptor = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-own-property-descriptor */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptor.js");

var _Object$getOwnPropertyDescriptors = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/get-own-property-descriptors */ "../node_modules/@babel/runtime-corejs2/core-js/object/get-own-property-descriptors.js");

var _Object$defineProperties = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-properties */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-properties.js");

var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var defineProperty = __webpack_require__(/*! ./defineProperty.js */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js");

function ownKeys(object, enumerableOnly) {
  var keys = _Object$keys(object);

  if (_Object$getOwnPropertySymbols) {
    var symbols = _Object$getOwnPropertySymbols(object);

    if (enumerableOnly) {
      symbols = symbols.filter(function (sym) {
        return _Object$getOwnPropertyDescriptor(object, sym).enumerable;
      });
    }

    keys.push.apply(keys, symbols);
  }

  return keys;
}

function _objectSpread2(target) {
  for (var i = 1; i < arguments.length; i++) {
    var source = arguments[i] != null ? arguments[i] : {};

    if (i % 2) {
      ownKeys(Object(source), true).forEach(function (key) {
        defineProperty(target, key, source[key]);
      });
    } else if (_Object$getOwnPropertyDescriptors) {
      _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source));
    } else {
      ownKeys(Object(source)).forEach(function (key) {
        _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key));
      });
    }
  }

  return target;
}

module.exports = _objectSpread2;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/possibleConstructorReturn.js":
/*!***********************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/possibleConstructorReturn.js ***!
  \***********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _typeof = __webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js").default;

var assertThisInitialized = __webpack_require__(/*! ./assertThisInitialized.js */ "../node_modules/@babel/runtime-corejs2/helpers/assertThisInitialized.js");

function _possibleConstructorReturn(self, call) {
  if (call && (_typeof(call) === "object" || typeof call === "function")) {
    return call;
  }

  return assertThisInitialized(self);
}

module.exports = _possibleConstructorReturn;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js":
/*!************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/setPrototypeOf.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Object$setPrototypeOf = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/set-prototype-of */ "../node_modules/@babel/runtime-corejs2/core-js/object/set-prototype-of.js");

function _setPrototypeOf(o, p) {
  module.exports = _setPrototypeOf = _Object$setPrototypeOf || function _setPrototypeOf(o, p) {
    o.__proto__ = p;
    return o;
  };

  module.exports.default = module.exports, module.exports.__esModule = true;
  return _setPrototypeOf(o, p);
}

module.exports = _setPrototypeOf;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var arrayWithHoles = __webpack_require__(/*! ./arrayWithHoles.js */ "../node_modules/@babel/runtime-corejs2/helpers/arrayWithHoles.js");

var iterableToArrayLimit = __webpack_require__(/*! ./iterableToArrayLimit.js */ "../node_modules/@babel/runtime-corejs2/helpers/iterableToArrayLimit.js");

var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js");

var nonIterableRest = __webpack_require__(/*! ./nonIterableRest.js */ "../node_modules/@babel/runtime-corejs2/helpers/nonIterableRest.js");

function _slicedToArray(arr, i) {
  return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();
}

module.exports = _slicedToArray;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/superPropBase.js":
/*!***********************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/superPropBase.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var getPrototypeOf = __webpack_require__(/*! ./getPrototypeOf.js */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js");

function _superPropBase(object, property) {
  while (!Object.prototype.hasOwnProperty.call(object, property)) {
    object = getPrototypeOf(object);
    if (object === null) break;
  }

  return object;
}

module.exports = _superPropBase;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/toConsumableArray.js":
/*!***************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/toConsumableArray.js ***!
  \***************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var arrayWithoutHoles = __webpack_require__(/*! ./arrayWithoutHoles.js */ "../node_modules/@babel/runtime-corejs2/helpers/arrayWithoutHoles.js");

var iterableToArray = __webpack_require__(/*! ./iterableToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/iterableToArray.js");

var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js");

var nonIterableSpread = __webpack_require__(/*! ./nonIterableSpread.js */ "../node_modules/@babel/runtime-corejs2/helpers/nonIterableSpread.js");

function _toConsumableArray(arr) {
  return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();
}

module.exports = _toConsumableArray;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js":
/*!****************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/typeof.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Symbol = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol */ "../node_modules/@babel/runtime-corejs2/core-js/symbol.js");

var _Symbol$iterator = __webpack_require__(/*! @babel/runtime-corejs2/core-js/symbol/iterator */ "../node_modules/@babel/runtime-corejs2/core-js/symbol/iterator.js");

function _typeof(obj) {
  "@babel/helpers - typeof";

  if (typeof _Symbol === "function" && typeof _Symbol$iterator === "symbol") {
    module.exports = _typeof = function _typeof(obj) {
      return typeof obj;
    };

    module.exports.default = module.exports, module.exports.__esModule = true;
  } else {
    module.exports = _typeof = function _typeof(obj) {
      return obj && typeof _Symbol === "function" && obj.constructor === _Symbol && obj !== _Symbol.prototype ? "symbol" : typeof obj;
    };

    module.exports.default = module.exports, module.exports.__esModule = true;
  }

  return _typeof(obj);
}

module.exports = _typeof;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js":
/*!************************************************************************************!*\
  !*** ../node_modules/@babel/runtime-corejs2/helpers/unsupportedIterableToArray.js ***!
  \************************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var _Array$from = __webpack_require__(/*! @babel/runtime-corejs2/core-js/array/from */ "../node_modules/@babel/runtime-corejs2/core-js/array/from.js");

var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ "../node_modules/@babel/runtime-corejs2/helpers/arrayLikeToArray.js");

function _unsupportedIterableToArray(o, minLen) {
  if (!o) return;
  if (typeof o === "string") return arrayLikeToArray(o, minLen);
  var n = Object.prototype.toString.call(o).slice(8, -1);
  if (n === "Object" && o.constructor) n = o.constructor.name;
  if (n === "Map" || n === "Set") return _Array$from(o);
  if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);
}

module.exports = _unsupportedIterableToArray;
module.exports.default = module.exports, module.exports.__esModule = true;

/***/ }),

/***/ "../node_modules/@reach/router/es/index.js":
/*!*************************************************!*\
  !*** ../node_modules/@reach/router/es/index.js ***!
  \*************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "Link": () => (/* binding */ Link),
/* harmony export */   "Location": () => (/* binding */ Location),
/* harmony export */   "LocationProvider": () => (/* binding */ LocationProvider),
/* harmony export */   "Match": () => (/* binding */ Match),
/* harmony export */   "Redirect": () => (/* binding */ Redirect),
/* harmony export */   "Router": () => (/* binding */ Router),
/* harmony export */   "ServerLocation": () => (/* binding */ ServerLocation),
/* harmony export */   "createHistory": () => (/* reexport safe */ _lib_history__WEBPACK_IMPORTED_MODULE_6__.createHistory),
/* harmony export */   "createMemorySource": () => (/* reexport safe */ _lib_history__WEBPACK_IMPORTED_MODULE_6__.createMemorySource),
/* harmony export */   "isRedirect": () => (/* binding */ isRedirect),
/* harmony export */   "navigate": () => (/* reexport safe */ _lib_history__WEBPACK_IMPORTED_MODULE_6__.navigate),
/* harmony export */   "redirectTo": () => (/* binding */ redirectTo),
/* harmony export */   "globalHistory": () => (/* reexport safe */ _lib_history__WEBPACK_IMPORTED_MODULE_6__.globalHistory),
/* harmony export */   "matchPath": () => (/* reexport safe */ _lib_utils__WEBPACK_IMPORTED_MODULE_5__.match),
/* harmony export */   "useLocation": () => (/* binding */ useLocation),
/* harmony export */   "useNavigate": () => (/* binding */ useNavigate),
/* harmony export */   "useParams": () => (/* binding */ useParams),
/* harmony export */   "useMatch": () => (/* binding */ useMatch)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var invariant__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! invariant */ "../node_modules/invariant/browser.js");
/* harmony import */ var invariant__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(invariant__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var create_react_context__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! create-react-context */ "../node_modules/create-react-context/lib/index.js");
/* harmony import */ var create_react_context__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(create_react_context__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var react_lifecycles_compat__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! react-lifecycles-compat */ "../node_modules/react-lifecycles-compat/react-lifecycles-compat.es.js");
/* harmony import */ var _lib_utils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./lib/utils */ "../node_modules/@reach/router/es/lib/utils.js");
/* harmony import */ var _lib_history__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./lib/history */ "../node_modules/@reach/router/es/lib/history.js");
var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };

function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }

function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }

function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }

function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }

/* eslint-disable jsx-a11y/anchor-has-content */








////////////////////////////////////////////////////////////////////////////////

var createNamedContext = function createNamedContext(name, defaultValue) {
  var Ctx = create_react_context__WEBPACK_IMPORTED_MODULE_3___default()(defaultValue);
  Ctx.displayName = name;
  return Ctx;
};

////////////////////////////////////////////////////////////////////////////////
// Location Context/Provider
var LocationContext = createNamedContext("Location");

// sets up a listener if there isn't one already so apps don't need to be
// wrapped in some top level provider
var Location = function Location(_ref) {
  var children = _ref.children;
  return react__WEBPACK_IMPORTED_MODULE_0___default().createElement(
    LocationContext.Consumer,
    null,
    function (context) {
      return context ? children(context) : react__WEBPACK_IMPORTED_MODULE_0___default().createElement(
        LocationProvider,
        null,
        children
      );
    }
  );
};

var LocationProvider = function (_React$Component) {
  _inherits(LocationProvider, _React$Component);

  function LocationProvider() {
    var _temp, _this, _ret;

    _classCallCheck(this, LocationProvider);

    for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
      args[_key] = arguments[_key];
    }

    return _ret = (_temp = (_this = _possibleConstructorReturn(this, _React$Component.call.apply(_React$Component, [this].concat(args))), _this), _this.state = {
      context: _this.getContext(),
      refs: { unlisten: null }
    }, _temp), _possibleConstructorReturn(_this, _ret);
  }

  LocationProvider.prototype.getContext = function getContext() {
    var _props$history = this.props.history,
        navigate = _props$history.navigate,
        location = _props$history.location;

    return { navigate: navigate, location: location };
  };

  LocationProvider.prototype.componentDidCatch = function componentDidCatch(error, info) {
    if (isRedirect(error)) {
      var _navigate = this.props.history.navigate;

      _navigate(error.uri, { replace: true });
    } else {
      throw error;
    }
  };

  LocationProvider.prototype.componentDidUpdate = function componentDidUpdate(prevProps, prevState) {
    if (prevState.context.location !== this.state.context.location) {
      this.props.history._onTransitionComplete();
    }
  };

  LocationProvider.prototype.componentDidMount = function componentDidMount() {
    var _this2 = this;

    var refs = this.state.refs,
        history = this.props.history;

    history._onTransitionComplete();
    refs.unlisten = history.listen(function () {
      Promise.resolve().then(function () {
        // TODO: replace rAF with react deferred update API when it's ready https://github.com/facebook/react/issues/13306
        requestAnimationFrame(function () {
          if (!_this2.unmounted) {
            _this2.setState(function () {
              return { context: _this2.getContext() };
            });
          }
        });
      });
    });
  };

  LocationProvider.prototype.componentWillUnmount = function componentWillUnmount() {
    var refs = this.state.refs;

    this.unmounted = true;
    refs.unlisten();
  };

  LocationProvider.prototype.render = function render() {
    var context = this.state.context,
        children = this.props.children;

    return react__WEBPACK_IMPORTED_MODULE_0___default().createElement(
      LocationContext.Provider,
      { value: context },
      typeof children === "function" ? children(context) : children || null
    );
  };

  return LocationProvider;
}((react__WEBPACK_IMPORTED_MODULE_0___default().Component));

////////////////////////////////////////////////////////////////////////////////


LocationProvider.defaultProps = {
  history: _lib_history__WEBPACK_IMPORTED_MODULE_6__.globalHistory
};
 true ? LocationProvider.propTypes = {
  history: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().object.isRequired)
} : 0;
var ServerLocation = function ServerLocation(_ref2) {
  var url = _ref2.url,
      children = _ref2.children;

  var searchIndex = url.indexOf("?");
  var searchExists = searchIndex > -1;
  var pathname = void 0;
  var search = "";
  var hash = "";

  if (searchExists) {
    pathname = url.substring(0, searchIndex);
    search = url.substring(searchIndex);
  } else {
    pathname = url;
  }

  return react__WEBPACK_IMPORTED_MODULE_0___default().createElement(
    LocationContext.Provider,
    {
      value: {
        location: {
          pathname: pathname,
          search: search,
          hash: hash
        },
        navigate: function navigate() {
          throw new Error("You can't call navigate on the server.");
        }
      }
    },
    children
  );
};
////////////////////////////////////////////////////////////////////////////////
// Sets baseuri and basepath for nested routers and links
var BaseContext = createNamedContext("Base", { baseuri: "/", basepath: "/" });

////////////////////////////////////////////////////////////////////////////////
// The main event, welcome to the show everybody.
var Router = function Router(props) {
  return react__WEBPACK_IMPORTED_MODULE_0___default().createElement(
    BaseContext.Consumer,
    null,
    function (baseContext) {
      return react__WEBPACK_IMPORTED_MODULE_0___default().createElement(
        Location,
        null,
        function (locationContext) {
          return react__WEBPACK_IMPORTED_MODULE_0___default().createElement(RouterImpl, _extends({}, baseContext, locationContext, props));
        }
      );
    }
  );
};

var RouterImpl = function (_React$PureComponent) {
  _inherits(RouterImpl, _React$PureComponent);

  function RouterImpl() {
    _classCallCheck(this, RouterImpl);

    return _possibleConstructorReturn(this, _React$PureComponent.apply(this, arguments));
  }

  RouterImpl.prototype.render = function render() {
    var _props = this.props,
        location = _props.location,
        _navigate2 = _props.navigate,
        basepath = _props.basepath,
        primary = _props.primary,
        children = _props.children,
        baseuri = _props.baseuri,
        _props$component = _props.component,
        component = _props$component === undefined ? "div" : _props$component,
        domProps = _objectWithoutProperties(_props, ["location", "navigate", "basepath", "primary", "children", "baseuri", "component"]);

    var routes = react__WEBPACK_IMPORTED_MODULE_0___default().Children.toArray(children).reduce(function (array, child) {
      var routes = createRoute(basepath)(child);
      return array.concat(routes);
    }, []);
    var pathname = location.pathname;


    var match = (0,_lib_utils__WEBPACK_IMPORTED_MODULE_5__.pick)(routes, pathname);

    if (match) {
      var params = match.params,
          uri = match.uri,
          route = match.route,
          element = match.route.value;

      // remove the /* from the end for child routes relative paths

      basepath = route.default ? basepath : route.path.replace(/\*$/, "");

      var props = _extends({}, params, {
        uri: uri,
        location: location,
        navigate: function navigate(to, options) {
          return _navigate2((0,_lib_utils__WEBPACK_IMPORTED_MODULE_5__.resolve)(to, uri), options);
        }
      });

      var clone = react__WEBPACK_IMPORTED_MODULE_0___default().cloneElement(element, props, element.props.children ? react__WEBPACK_IMPORTED_MODULE_0___default().createElement(
        Router,
        { location: location, primary: primary },
        element.props.children
      ) : undefined);

      // using 'div' for < 16.3 support
      var FocusWrapper = primary ? FocusHandler : component;
      // don't pass any props to 'div'
      var wrapperProps = primary ? _extends({ uri: uri, location: location, component: component }, domProps) : domProps;

      return react__WEBPACK_IMPORTED_MODULE_0___default().createElement(
        BaseContext.Provider,
        { value: { baseuri: uri, basepath: basepath } },
        react__WEBPACK_IMPORTED_MODULE_0___default().createElement(
          FocusWrapper,
          wrapperProps,
          clone
        )
      );
    } else {
      // Not sure if we want this, would require index routes at every level
      // warning(
      //   false,
      //   `<Router basepath="${basepath}">\n\nNothing matched:\n\t${
      //     location.pathname
      //   }\n\nPaths checked: \n\t${routes
      //     .map(route => route.path)
      //     .join(
      //       "\n\t"
      //     )}\n\nTo get rid of this warning, add a default NotFound component as child of Router:
      //   \n\tlet NotFound = () => <div>Not Found!</div>
      //   \n\t<Router>\n\t  <NotFound default/>\n\t  {/* ... */}\n\t</Router>`
      // );
      return null;
    }
  };

  return RouterImpl;
}((react__WEBPACK_IMPORTED_MODULE_0___default().PureComponent));

RouterImpl.defaultProps = {
  primary: true
};


var FocusContext = createNamedContext("Focus");

var FocusHandler = function FocusHandler(_ref3) {
  var uri = _ref3.uri,
      location = _ref3.location,
      component = _ref3.component,
      domProps = _objectWithoutProperties(_ref3, ["uri", "location", "component"]);

  return react__WEBPACK_IMPORTED_MODULE_0___default().createElement(
    FocusContext.Consumer,
    null,
    function (requestFocus) {
      return react__WEBPACK_IMPORTED_MODULE_0___default().createElement(FocusHandlerImpl, _extends({}, domProps, {
        component: component,
        requestFocus: requestFocus,
        uri: uri,
        location: location
      }));
    }
  );
};

// don't focus on initial render
var initialRender = true;
var focusHandlerCount = 0;

var FocusHandlerImpl = function (_React$Component2) {
  _inherits(FocusHandlerImpl, _React$Component2);

  function FocusHandlerImpl() {
    var _temp2, _this4, _ret2;

    _classCallCheck(this, FocusHandlerImpl);

    for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
      args[_key2] = arguments[_key2];
    }

    return _ret2 = (_temp2 = (_this4 = _possibleConstructorReturn(this, _React$Component2.call.apply(_React$Component2, [this].concat(args))), _this4), _this4.state = {}, _this4.requestFocus = function (node) {
      if (!_this4.state.shouldFocus && node) {
        node.focus();
      }
    }, _temp2), _possibleConstructorReturn(_this4, _ret2);
  }

  FocusHandlerImpl.getDerivedStateFromProps = function getDerivedStateFromProps(nextProps, prevState) {
    var initial = prevState.uri == null;
    if (initial) {
      return _extends({
        shouldFocus: true
      }, nextProps);
    } else {
      var myURIChanged = nextProps.uri !== prevState.uri;
      var navigatedUpToMe = prevState.location.pathname !== nextProps.location.pathname && nextProps.location.pathname === nextProps.uri;
      return _extends({
        shouldFocus: myURIChanged || navigatedUpToMe
      }, nextProps);
    }
  };

  FocusHandlerImpl.prototype.componentDidMount = function componentDidMount() {
    focusHandlerCount++;
    this.focus();
  };

  FocusHandlerImpl.prototype.componentWillUnmount = function componentWillUnmount() {
    focusHandlerCount--;
    if (focusHandlerCount === 0) {
      initialRender = true;
    }
  };

  FocusHandlerImpl.prototype.componentDidUpdate = function componentDidUpdate(prevProps, prevState) {
    if (prevProps.location !== this.props.location && this.state.shouldFocus) {
      this.focus();
    }
  };

  FocusHandlerImpl.prototype.focus = function focus() {
    if (false) {}

    var requestFocus = this.props.requestFocus;


    if (requestFocus) {
      requestFocus(this.node);
    } else {
      if (initialRender) {
        initialRender = false;
      } else if (this.node) {
        // React polyfills [autofocus] and it fires earlier than cDM,
        // so we were stealing focus away, this line prevents that.
        if (!this.node.contains(document.activeElement)) {
          this.node.focus();
        }
      }
    }
  };

  FocusHandlerImpl.prototype.render = function render() {
    var _this5 = this;

    var _props2 = this.props,
        children = _props2.children,
        style = _props2.style,
        requestFocus = _props2.requestFocus,
        _props2$component = _props2.component,
        Comp = _props2$component === undefined ? "div" : _props2$component,
        uri = _props2.uri,
        location = _props2.location,
        domProps = _objectWithoutProperties(_props2, ["children", "style", "requestFocus", "component", "uri", "location"]);

    return react__WEBPACK_IMPORTED_MODULE_0___default().createElement(
      Comp,
      _extends({
        style: _extends({ outline: "none" }, style),
        tabIndex: "-1",
        ref: function ref(n) {
          return _this5.node = n;
        }
      }, domProps),
      react__WEBPACK_IMPORTED_MODULE_0___default().createElement(
        FocusContext.Provider,
        { value: this.requestFocus },
        this.props.children
      )
    );
  };

  return FocusHandlerImpl;
}((react__WEBPACK_IMPORTED_MODULE_0___default().Component));

(0,react_lifecycles_compat__WEBPACK_IMPORTED_MODULE_4__.polyfill)(FocusHandlerImpl);

var k = function k() {};

////////////////////////////////////////////////////////////////////////////////
var forwardRef = (react__WEBPACK_IMPORTED_MODULE_0___default().forwardRef);

if (typeof forwardRef === "undefined") {
  forwardRef = function forwardRef(C) {
    return C;
  };
}

var Link = forwardRef(function (_ref4, ref) {
  var innerRef = _ref4.innerRef,
      props = _objectWithoutProperties(_ref4, ["innerRef"]);

  return react__WEBPACK_IMPORTED_MODULE_0___default().createElement(
    BaseContext.Consumer,
    null,
    function (_ref5) {
      var basepath = _ref5.basepath,
          baseuri = _ref5.baseuri;
      return react__WEBPACK_IMPORTED_MODULE_0___default().createElement(
        Location,
        null,
        function (_ref6) {
          var location = _ref6.location,
              navigate = _ref6.navigate;

          var to = props.to,
              state = props.state,
              replace = props.replace,
              _props$getProps = props.getProps,
              getProps = _props$getProps === undefined ? k : _props$getProps,
              anchorProps = _objectWithoutProperties(props, ["to", "state", "replace", "getProps"]);

          var href = (0,_lib_utils__WEBPACK_IMPORTED_MODULE_5__.resolve)(to, baseuri);
          var encodedHref = encodeURI(href);
          var isCurrent = location.pathname === encodedHref;
          var isPartiallyCurrent = (0,_lib_utils__WEBPACK_IMPORTED_MODULE_5__.startsWith)(location.pathname, encodedHref);

          return react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", _extends({
            ref: ref || innerRef,
            "aria-current": isCurrent ? "page" : undefined
          }, anchorProps, getProps({ isCurrent: isCurrent, isPartiallyCurrent: isPartiallyCurrent, href: href, location: location }), {
            href: href,
            onClick: function onClick(event) {
              if (anchorProps.onClick) anchorProps.onClick(event);
              if (shouldNavigate(event)) {
                event.preventDefault();
                var shouldReplace = replace;
                if (typeof replace !== "boolean" && isCurrent) {
                  var _location$state = _extends({}, location.state),
                      key = _location$state.key,
                      restState = _objectWithoutProperties(_location$state, ["key"]);

                  shouldReplace = (0,_lib_utils__WEBPACK_IMPORTED_MODULE_5__.shallowCompare)(_extends({}, state), restState);
                }
                navigate(href, {
                  state: state,
                  replace: shouldReplace
                });
              }
            }
          }));
        }
      );
    }
  );
});

Link.displayName = "Link";

 true ? Link.propTypes = {
  to: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string.isRequired)
} : 0;

////////////////////////////////////////////////////////////////////////////////
function RedirectRequest(uri) {
  this.uri = uri;
}

var isRedirect = function isRedirect(o) {
  return o instanceof RedirectRequest;
};

var redirectTo = function redirectTo(to) {
  throw new RedirectRequest(to);
};

var RedirectImpl = function (_React$Component3) {
  _inherits(RedirectImpl, _React$Component3);

  function RedirectImpl() {
    _classCallCheck(this, RedirectImpl);

    return _possibleConstructorReturn(this, _React$Component3.apply(this, arguments));
  }

  // Support React < 16 with this hook
  RedirectImpl.prototype.componentDidMount = function componentDidMount() {
    var _props3 = this.props,
        navigate = _props3.navigate,
        to = _props3.to,
        from = _props3.from,
        _props3$replace = _props3.replace,
        replace = _props3$replace === undefined ? true : _props3$replace,
        state = _props3.state,
        noThrow = _props3.noThrow,
        baseuri = _props3.baseuri,
        props = _objectWithoutProperties(_props3, ["navigate", "to", "from", "replace", "state", "noThrow", "baseuri"]);

    Promise.resolve().then(function () {
      var resolvedTo = (0,_lib_utils__WEBPACK_IMPORTED_MODULE_5__.resolve)(to, baseuri);
      navigate((0,_lib_utils__WEBPACK_IMPORTED_MODULE_5__.insertParams)(resolvedTo, props), { replace: replace, state: state });
    });
  };

  RedirectImpl.prototype.render = function render() {
    var _props4 = this.props,
        navigate = _props4.navigate,
        to = _props4.to,
        from = _props4.from,
        replace = _props4.replace,
        state = _props4.state,
        noThrow = _props4.noThrow,
        baseuri = _props4.baseuri,
        props = _objectWithoutProperties(_props4, ["navigate", "to", "from", "replace", "state", "noThrow", "baseuri"]);

    var resolvedTo = (0,_lib_utils__WEBPACK_IMPORTED_MODULE_5__.resolve)(to, baseuri);
    if (!noThrow) redirectTo((0,_lib_utils__WEBPACK_IMPORTED_MODULE_5__.insertParams)(resolvedTo, props));
    return null;
  };

  return RedirectImpl;
}((react__WEBPACK_IMPORTED_MODULE_0___default().Component));

var Redirect = function Redirect(props) {
  return react__WEBPACK_IMPORTED_MODULE_0___default().createElement(
    BaseContext.Consumer,
    null,
    function (_ref7) {
      var baseuri = _ref7.baseuri;
      return react__WEBPACK_IMPORTED_MODULE_0___default().createElement(
        Location,
        null,
        function (locationContext) {
          return react__WEBPACK_IMPORTED_MODULE_0___default().createElement(RedirectImpl, _extends({}, locationContext, { baseuri: baseuri }, props));
        }
      );
    }
  );
};

 true ? Redirect.propTypes = {
  from: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string),
  to: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string.isRequired)
} : 0;

////////////////////////////////////////////////////////////////////////////////
var Match = function Match(_ref8) {
  var path = _ref8.path,
      children = _ref8.children;
  return react__WEBPACK_IMPORTED_MODULE_0___default().createElement(
    BaseContext.Consumer,
    null,
    function (_ref9) {
      var baseuri = _ref9.baseuri;
      return react__WEBPACK_IMPORTED_MODULE_0___default().createElement(
        Location,
        null,
        function (_ref10) {
          var navigate = _ref10.navigate,
              location = _ref10.location;

          var resolvedPath = (0,_lib_utils__WEBPACK_IMPORTED_MODULE_5__.resolve)(path, baseuri);
          var result = (0,_lib_utils__WEBPACK_IMPORTED_MODULE_5__.match)(resolvedPath, location.pathname);
          return children({
            navigate: navigate,
            location: location,
            match: result ? _extends({}, result.params, {
              uri: result.uri,
              path: path
            }) : null
          });
        }
      );
    }
  );
};

////////////////////////////////////////////////////////////////////////////////
// Hooks

var useLocation = function useLocation() {
  var context = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(LocationContext);

  if (!context) {
    throw new Error("useLocation hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router");
  }

  return context.location;
};

var useNavigate = function useNavigate() {
  var context = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(LocationContext);

  if (!context) {
    throw new Error("useNavigate hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router");
  }

  return context.navigate;
};

var useParams = function useParams() {
  var context = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(BaseContext);

  if (!context) {
    throw new Error("useParams hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router");
  }

  var location = useLocation();

  var results = (0,_lib_utils__WEBPACK_IMPORTED_MODULE_5__.match)(context.basepath, location.pathname);

  return results ? results.params : null;
};

var useMatch = function useMatch(path) {
  if (!path) {
    throw new Error("useMatch(path: string) requires an argument of a string to match against");
  }
  var context = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(BaseContext);

  if (!context) {
    throw new Error("useMatch hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router");
  }

  var location = useLocation();

  var resolvedPath = (0,_lib_utils__WEBPACK_IMPORTED_MODULE_5__.resolve)(path, context.baseuri);
  var result = (0,_lib_utils__WEBPACK_IMPORTED_MODULE_5__.match)(resolvedPath, location.pathname);
  return result ? _extends({}, result.params, {
    uri: result.uri,
    path: path
  }) : null;
};

////////////////////////////////////////////////////////////////////////////////
// Junk
var stripSlashes = function stripSlashes(str) {
  return str.replace(/(^\/+|\/+$)/g, "");
};

var createRoute = function createRoute(basepath) {
  return function (element) {
    if (!element) {
      return null;
    }

    if (element.type === (react__WEBPACK_IMPORTED_MODULE_0___default().Fragment) && element.props.children) {
      return react__WEBPACK_IMPORTED_MODULE_0___default().Children.map(element.props.children, createRoute(basepath));
    }
    !(element.props.path || element.props.default || element.type === Redirect) ?  true ? invariant__WEBPACK_IMPORTED_MODULE_2___default()(false, "<Router>: Children of <Router> must have a `path` or `default` prop, or be a `<Redirect>`. None found on element type `" + element.type + "`") : 0 : void 0;

    !!(element.type === Redirect && (!element.props.from || !element.props.to)) ?  true ? invariant__WEBPACK_IMPORTED_MODULE_2___default()(false, "<Redirect from=\"" + element.props.from + "\" to=\"" + element.props.to + "\"/> requires both \"from\" and \"to\" props when inside a <Router>.") : 0 : void 0;

    !!(element.type === Redirect && !(0,_lib_utils__WEBPACK_IMPORTED_MODULE_5__.validateRedirect)(element.props.from, element.props.to)) ?  true ? invariant__WEBPACK_IMPORTED_MODULE_2___default()(false, "<Redirect from=\"" + element.props.from + " to=\"" + element.props.to + "\"/> has mismatched dynamic segments, ensure both paths have the exact same dynamic segments.") : 0 : void 0;

    if (element.props.default) {
      return { value: element, default: true };
    }

    var elementPath = element.type === Redirect ? element.props.from : element.props.path;

    var path = elementPath === "/" ? basepath : stripSlashes(basepath) + "/" + stripSlashes(elementPath);

    return {
      value: element,
      default: element.props.default,
      path: element.props.children ? stripSlashes(path) + "/*" : path
    };
  };
};

var shouldNavigate = function shouldNavigate(event) {
  return !event.defaultPrevented && event.button === 0 && !(event.metaKey || event.altKey || event.ctrlKey || event.shiftKey);
};

////////////////////////////////////////////////////////////////////////


/***/ }),

/***/ "../node_modules/@reach/router/es/lib/history.js":
/*!*******************************************************!*\
  !*** ../node_modules/@reach/router/es/lib/history.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "globalHistory": () => (/* binding */ globalHistory),
/* harmony export */   "navigate": () => (/* binding */ navigate),
/* harmony export */   "createHistory": () => (/* binding */ createHistory),
/* harmony export */   "createMemorySource": () => (/* binding */ createMemorySource)
/* harmony export */ });
var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };

var getLocation = function getLocation(source) {
  var _source$location = source.location,
      search = _source$location.search,
      hash = _source$location.hash,
      href = _source$location.href,
      origin = _source$location.origin,
      protocol = _source$location.protocol,
      host = _source$location.host,
      hostname = _source$location.hostname,
      port = _source$location.port;
  var pathname = source.location.pathname;


  if (!pathname && href && canUseDOM) {
    var url = new URL(href);
    pathname = url.pathname;
  }

  return {
    pathname: encodeURI(decodeURI(pathname)),
    search: search,
    hash: hash,
    href: href,
    origin: origin,
    protocol: protocol,
    host: host,
    hostname: hostname,
    port: port,
    state: source.history.state,
    key: source.history.state && source.history.state.key || "initial"
  };
};

var createHistory = function createHistory(source, options) {
  var listeners = [];
  var location = getLocation(source);
  var transitioning = false;
  var resolveTransition = function resolveTransition() {};

  return {
    get location() {
      return location;
    },

    get transitioning() {
      return transitioning;
    },

    _onTransitionComplete: function _onTransitionComplete() {
      transitioning = false;
      resolveTransition();
    },
    listen: function listen(listener) {
      listeners.push(listener);

      var popstateListener = function popstateListener() {
        location = getLocation(source);
        listener({ location: location, action: "POP" });
      };

      source.addEventListener("popstate", popstateListener);

      return function () {
        source.removeEventListener("popstate", popstateListener);
        listeners = listeners.filter(function (fn) {
          return fn !== listener;
        });
      };
    },
    navigate: function navigate(to) {
      var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
          state = _ref.state,
          _ref$replace = _ref.replace,
          replace = _ref$replace === undefined ? false : _ref$replace;

      if (typeof to === "number") {
        source.history.go(to);
      } else {
        state = _extends({}, state, { key: Date.now() + "" });
        // try...catch iOS Safari limits to 100 pushState calls
        try {
          if (transitioning || replace) {
            source.history.replaceState(state, null, to);
          } else {
            source.history.pushState(state, null, to);
          }
        } catch (e) {
          source.location[replace ? "replace" : "assign"](to);
        }
      }

      location = getLocation(source);
      transitioning = true;
      var transition = new Promise(function (res) {
        return resolveTransition = res;
      });
      listeners.forEach(function (listener) {
        return listener({ location: location, action: "PUSH" });
      });
      return transition;
    }
  };
};

////////////////////////////////////////////////////////////////////////////////
// Stores history entries in memory for testing or other platforms like Native
var createMemorySource = function createMemorySource() {
  var initialPath = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : "/";

  var searchIndex = initialPath.indexOf("?");
  var initialLocation = {
    pathname: searchIndex > -1 ? initialPath.substr(0, searchIndex) : initialPath,
    search: searchIndex > -1 ? initialPath.substr(searchIndex) : ""
  };
  var index = 0;
  var stack = [initialLocation];
  var states = [null];

  return {
    get location() {
      return stack[index];
    },
    addEventListener: function addEventListener(name, fn) {},
    removeEventListener: function removeEventListener(name, fn) {},

    history: {
      get entries() {
        return stack;
      },
      get index() {
        return index;
      },
      get state() {
        return states[index];
      },
      pushState: function pushState(state, _, uri) {
        var _uri$split = uri.split("?"),
            pathname = _uri$split[0],
            _uri$split$ = _uri$split[1],
            search = _uri$split$ === undefined ? "" : _uri$split$;

        index++;
        stack.push({ pathname: pathname, search: search.length ? "?" + search : search });
        states.push(state);
      },
      replaceState: function replaceState(state, _, uri) {
        var _uri$split2 = uri.split("?"),
            pathname = _uri$split2[0],
            _uri$split2$ = _uri$split2[1],
            search = _uri$split2$ === undefined ? "" : _uri$split2$;

        stack[index] = { pathname: pathname, search: search };
        states[index] = state;
      },
      go: function go(to) {
        var newIndex = index + to;

        if (newIndex < 0 || newIndex > states.length - 1) {
          return;
        }

        index = newIndex;
      }
    }
  };
};

////////////////////////////////////////////////////////////////////////////////
// global history - uses window.history as the source if available, otherwise a
// memory history
var canUseDOM = !!(typeof window !== "undefined" && window.document && window.document.createElement);
var getSource = function getSource() {
  return canUseDOM ? window : createMemorySource();
};

var globalHistory = createHistory(getSource());
var navigate = globalHistory.navigate;

////////////////////////////////////////////////////////////////////////////////



/***/ }),

/***/ "../node_modules/@reach/router/es/lib/utils.js":
/*!*****************************************************!*\
  !*** ../node_modules/@reach/router/es/lib/utils.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "startsWith": () => (/* binding */ startsWith),
/* harmony export */   "pick": () => (/* binding */ pick),
/* harmony export */   "match": () => (/* binding */ match),
/* harmony export */   "resolve": () => (/* binding */ resolve),
/* harmony export */   "insertParams": () => (/* binding */ insertParams),
/* harmony export */   "validateRedirect": () => (/* binding */ validateRedirect),
/* harmony export */   "shallowCompare": () => (/* binding */ shallowCompare)
/* harmony export */ });
/* harmony import */ var invariant__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! invariant */ "../node_modules/invariant/browser.js");
/* harmony import */ var invariant__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(invariant__WEBPACK_IMPORTED_MODULE_0__);


////////////////////////////////////////////////////////////////////////////////
// startsWith(string, search) - Check if `string` starts with `search`
var startsWith = function startsWith(string, search) {
  return string.substr(0, search.length) === search;
};

////////////////////////////////////////////////////////////////////////////////
// pick(routes, uri)
//
// Ranks and picks the best route to match. Each segment gets the highest
// amount of points, then the type of segment gets an additional amount of
// points where
//
//     static > dynamic > splat > root
//
// This way we don't have to worry about the order of our routes, let the
// computers do it.
//
// A route looks like this
//
//     { path, default, value }
//
// And a returned match looks like:
//
//     { route, params, uri }
//
// I know, I should use TypeScript not comments for these types.
var pick = function pick(routes, uri) {
  var match = void 0;
  var default_ = void 0;

  var _uri$split = uri.split("?"),
      uriPathname = _uri$split[0];

  var uriSegments = segmentize(uriPathname);
  var isRootUri = uriSegments[0] === "";
  var ranked = rankRoutes(routes);

  for (var i = 0, l = ranked.length; i < l; i++) {
    var missed = false;
    var route = ranked[i].route;

    if (route.default) {
      default_ = {
        route: route,
        params: {},
        uri: uri
      };
      continue;
    }

    var routeSegments = segmentize(route.path);
    var params = {};
    var max = Math.max(uriSegments.length, routeSegments.length);
    var index = 0;

    for (; index < max; index++) {
      var routeSegment = routeSegments[index];
      var uriSegment = uriSegments[index];

      if (isSplat(routeSegment)) {
        // Hit a splat, just grab the rest, and return a match
        // uri:   /files/documents/work
        // route: /files/*
        var param = routeSegment.slice(1) || "*";
        params[param] = uriSegments.slice(index).map(decodeURIComponent).join("/");
        break;
      }

      if (uriSegment === undefined) {
        // URI is shorter than the route, no match
        // uri:   /users
        // route: /users/:userId
        missed = true;
        break;
      }

      var dynamicMatch = paramRe.exec(routeSegment);

      if (dynamicMatch && !isRootUri) {
        var matchIsNotReserved = reservedNames.indexOf(dynamicMatch[1]) === -1;
        !matchIsNotReserved ?  true ? invariant__WEBPACK_IMPORTED_MODULE_0___default()(false, "<Router> dynamic segment \"" + dynamicMatch[1] + "\" is a reserved name. Please use a different name in path \"" + route.path + "\".") : 0 : void 0;
        var value = decodeURIComponent(uriSegment);
        params[dynamicMatch[1]] = value;
      } else if (routeSegment !== uriSegment) {
        // Current segments don't match, not dynamic, not splat, so no match
        // uri:   /users/123/settings
        // route: /users/:id/profile
        missed = true;
        break;
      }
    }

    if (!missed) {
      match = {
        route: route,
        params: params,
        uri: "/" + uriSegments.slice(0, index).join("/")
      };
      break;
    }
  }

  return match || default_ || null;
};

////////////////////////////////////////////////////////////////////////////////
// match(path, uri) - Matches just one path to a uri, also lol
var match = function match(path, uri) {
  return pick([{ path: path }], uri);
};

////////////////////////////////////////////////////////////////////////////////
// resolve(to, basepath)
//
// Resolves URIs as though every path is a directory, no files.  Relative URIs
// in the browser can feel awkward because not only can you be "in a directory"
// you can be "at a file", too. For example
//
//     browserSpecResolve('foo', '/bar/') => /bar/foo
//     browserSpecResolve('foo', '/bar') => /foo
//
// But on the command line of a file system, it's not as complicated, you can't
// `cd` from a file, only directories.  This way, links have to know less about
// their current path. To go deeper you can do this:
//
//     <Link to="deeper"/>
//     // instead of
//     <Link to=`{${props.uri}/deeper}`/>
//
// Just like `cd`, if you want to go deeper from the command line, you do this:
//
//     cd deeper
//     # not
//     cd $(pwd)/deeper
//
// By treating every path as a directory, linking to relative paths should
// require less contextual information and (fingers crossed) be more intuitive.
var resolve = function resolve(to, base) {
  // /foo/bar, /baz/qux => /foo/bar
  if (startsWith(to, "/")) {
    return to;
  }

  var _to$split = to.split("?"),
      toPathname = _to$split[0],
      toQuery = _to$split[1];

  var _base$split = base.split("?"),
      basePathname = _base$split[0];

  var toSegments = segmentize(toPathname);
  var baseSegments = segmentize(basePathname);

  // ?a=b, /users?b=c => /users?a=b
  if (toSegments[0] === "") {
    return addQuery(basePathname, toQuery);
  }

  // profile, /users/789 => /users/789/profile
  if (!startsWith(toSegments[0], ".")) {
    var pathname = baseSegments.concat(toSegments).join("/");
    return addQuery((basePathname === "/" ? "" : "/") + pathname, toQuery);
  }

  // ./         /users/123  =>  /users/123
  // ../        /users/123  =>  /users
  // ../..      /users/123  =>  /
  // ../../one  /a/b/c/d    =>  /a/b/one
  // .././one   /a/b/c/d    =>  /a/b/c/one
  var allSegments = baseSegments.concat(toSegments);
  var segments = [];
  for (var i = 0, l = allSegments.length; i < l; i++) {
    var segment = allSegments[i];
    if (segment === "..") segments.pop();else if (segment !== ".") segments.push(segment);
  }

  return addQuery("/" + segments.join("/"), toQuery);
};

////////////////////////////////////////////////////////////////////////////////
// insertParams(path, params)

var insertParams = function insertParams(path, params) {
  var _path$split = path.split("?"),
      pathBase = _path$split[0],
      _path$split$ = _path$split[1],
      query = _path$split$ === undefined ? "" : _path$split$;

  var segments = segmentize(pathBase);
  var constructedPath = "/" + segments.map(function (segment) {
    var match = paramRe.exec(segment);
    return match ? params[match[1]] : segment;
  }).join("/");
  var _params$location = params.location;
  _params$location = _params$location === undefined ? {} : _params$location;
  var _params$location$sear = _params$location.search,
      search = _params$location$sear === undefined ? "" : _params$location$sear;

  var searchSplit = search.split("?")[1] || "";
  constructedPath = addQuery(constructedPath, query, searchSplit);
  return constructedPath;
};

var validateRedirect = function validateRedirect(from, to) {
  var filter = function filter(segment) {
    return isDynamic(segment);
  };
  var fromString = segmentize(from).filter(filter).sort().join("/");
  var toString = segmentize(to).filter(filter).sort().join("/");
  return fromString === toString;
};

////////////////////////////////////////////////////////////////////////////////
// Junk
var paramRe = /^:(.+)/;

var SEGMENT_POINTS = 4;
var STATIC_POINTS = 3;
var DYNAMIC_POINTS = 2;
var SPLAT_PENALTY = 1;
var ROOT_POINTS = 1;

var isRootSegment = function isRootSegment(segment) {
  return segment === "";
};
var isDynamic = function isDynamic(segment) {
  return paramRe.test(segment);
};
var isSplat = function isSplat(segment) {
  return segment && segment[0] === "*";
};

var rankRoute = function rankRoute(route, index) {
  var score = route.default ? 0 : segmentize(route.path).reduce(function (score, segment) {
    score += SEGMENT_POINTS;
    if (isRootSegment(segment)) score += ROOT_POINTS;else if (isDynamic(segment)) score += DYNAMIC_POINTS;else if (isSplat(segment)) score -= SEGMENT_POINTS + SPLAT_PENALTY;else score += STATIC_POINTS;
    return score;
  }, 0);
  return { route: route, score: score, index: index };
};

var rankRoutes = function rankRoutes(routes) {
  return routes.map(rankRoute).sort(function (a, b) {
    return a.score < b.score ? 1 : a.score > b.score ? -1 : a.index - b.index;
  });
};

var segmentize = function segmentize(uri) {
  return uri
  // strip starting/ending slashes
  .replace(/(^\/+|\/+$)/g, "").split("/");
};

var addQuery = function addQuery(pathname) {
  for (var _len = arguments.length, query = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
    query[_key - 1] = arguments[_key];
  }

  query = query.filter(function (q) {
    return q && q.length > 0;
  });
  return pathname + (query && query.length > 0 ? "?" + query.join("&") : "");
};

var reservedNames = ["uri", "path"];

/**
 * Shallow compares two objects.
 * @param {Object} obj1 The first object to compare.
 * @param {Object} obj2 The second object to compare.
 */
var shallowCompare = function shallowCompare(obj1, obj2) {
  var obj1Keys = Object.keys(obj1);
  return obj1Keys.length === Object.keys(obj2).length && obj1Keys.every(function (key) {
    return obj2.hasOwnProperty(key) && obj1[key] === obj2[key];
  });
};

////////////////////////////////////////////////////////////////////////////////


/***/ }),

/***/ "../core/app/assets/js/app.js":
/*!************************************!*\
  !*** ../core/app/assets/js/app.js ***!
  \************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = App;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _router = _interopRequireDefault(__webpack_require__(/*! @elementor/router */ "@elementor/router"));

var _router2 = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js");

var _reachRouterHashHistory = __webpack_require__(/*! reach-router-hash-history */ "../node_modules/reach-router-hash-history/index.js");

var _notFound = _interopRequireDefault(__webpack_require__(/*! elementor-app/pages/not-found */ "../core/app/assets/js/pages/not-found.js"));

var _index = _interopRequireDefault(__webpack_require__(/*! elementor-app/pages/index */ "../core/app/assets/js/pages/index.js"));

var _errorBoundary = _interopRequireDefault(__webpack_require__(/*! elementor-app/organisms/error-boundary */ "../core/app/assets/js/organisms/error-boundary.js"));

__webpack_require__(/*! ./app.scss */ "../core/app/assets/js/app.scss");

/**
 * Elementor App
 */
var _React = _react.default,
    Suspense = _React.Suspense;

function App() {
  // Use hash route because it's actually rendered on a WP Admin page.
  // Make it public for external uses.
  _router.default.appHistory = (0, _router2.createHistory)((0, _reachRouterHashHistory.createHashSource)());
  return /*#__PURE__*/_react.default.createElement(_errorBoundary.default, null, /*#__PURE__*/_react.default.createElement(_router2.LocationProvider, {
    history: _router.default.appHistory
  }, /*#__PURE__*/_react.default.createElement(Suspense, {
    fallback: null
  }, /*#__PURE__*/_react.default.createElement(_router2.Router, null, _router.default.getRoutes(), /*#__PURE__*/_react.default.createElement(_index.default, {
    path: "/"
  }), /*#__PURE__*/_react.default.createElement(_notFound.default, {
    default: true
  })))));
}

/***/ }),

/***/ "../core/app/assets/js/hooks/use-action.js":
/*!*************************************************!*\
  !*** ../core/app/assets/js/hooks/use-action.js ***!
  \*************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = useAction;

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

function useAction() {
  return {
    backToDashboard: function backToDashboard() {
      if (window.top === window) {
        // Directly - in case that the return_url is the login-page, the target should be the admin-page and not the login-page again.
        window.top.location = elementorAppConfig.return_url.includes(elementorAppConfig.login_url) ? elementorAppConfig.admin_url : elementorAppConfig.return_url;
      } else {
        // Iframe.
        window.top.$e.run('app/close');
      }
    }
  };
}

/***/ }),

/***/ "../core/app/assets/js/hooks/use-ajax.js":
/*!***********************************************!*\
  !*** ../core/app/assets/js/hooks/use-ajax.js ***!
  \***********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = useAjax;

var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _react = __webpack_require__(/*! react */ "react");

function useAjax() {
  var _useState = (0, _react.useState)(null),
      _useState2 = (0, _slicedToArray2.default)(_useState, 2),
      ajax = _useState2[0],
      setAjax = _useState2[1],
      initialStatusKey = 'initial',
      uploadInitialState = {
    status: initialStatusKey,
    isComplete: false,
    response: null
  },
      _useState3 = (0, _react.useState)(uploadInitialState),
      _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
      ajaxState = _useState4[0],
      setAjaxState = _useState4[1],
      ajaxActions = {
    reset: function reset() {
      return setAjaxState(initialStatusKey);
    }
  };

  (0, _react.useEffect)(function () {
    if (ajax) {
      var formData = new FormData();

      if (ajax.data) {
        for (var key in ajax.data) {
          formData.append(key, ajax.data[key]);
        }

        if (!ajax.data.nonce) {
          formData.append('nonce', elementorCommon.config.ajax.nonce);
        }
      }

      var options = (0, _objectSpread2.default)((0, _objectSpread2.default)({
        type: 'post',
        url: elementorCommon.config.ajax.url,
        headers: {},
        cache: false,
        contentType: false,
        processData: false
      }, ajax), {}, {
        data: formData,
        success: function success(response) {
          var status = response.success ? 'success' : 'error';
          setAjaxState(function (prevState) {
            return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, prevState), {}, {
              status: status,
              response: response === null || response === void 0 ? void 0 : response.data
            });
          });
        },
        error: function error() {
          setAjaxState(function (prevState) {
            return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, prevState), {}, {
              status: 'error'
            });
          });
        },
        complete: function complete() {
          setAjaxState(function (prevState) {
            return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, prevState), {}, {
              isComplete: true
            });
          });
        }
      });
      jQuery.ajax(options);
    }
  }, [ajax]);
  return {
    ajax: ajax,
    setAjax: setAjax,
    ajaxState: ajaxState,
    ajaxActions: ajaxActions
  };
}

/***/ }),

/***/ "../core/app/assets/js/hooks/use-page-title.js":
/*!*****************************************************!*\
  !*** ../core/app/assets/js/hooks/use-page-title.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = usePageTitle;

var _react = __webpack_require__(/*! react */ "react");

function usePageTitle(_ref) {
  var title = _ref.title,
      prefix = _ref.prefix;
  (0, _react.useEffect)(function () {
    if (!prefix) {
      prefix = __('Elementor', 'elementor');
    }

    document.title = "".concat(prefix, " | ").concat(title);
  }, [title, prefix]);
}

/***/ }),

/***/ "../core/app/assets/js/layout/content.js":
/*!***********************************************!*\
  !*** ../core/app/assets/js/layout/content.js ***!
  \***********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Content;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

function Content(props) {
  return /*#__PURE__*/_react.default.createElement("main", {
    className: "eps-app__content ".concat(props.className)
  }, props.children);
}

Content.propTypes = {
  children: PropTypes.any,
  className: PropTypes.string
};
Content.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/layout/footer.js":
/*!**********************************************!*\
  !*** ../core/app/assets/js/layout/footer.js ***!
  \**********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Footer;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

function Footer(props) {
  return /*#__PURE__*/_react.default.createElement("footer", {
    className: "eps-app__footer"
  }, props.children);
}

Footer.propTypes = {
  children: PropTypes.object
};

/***/ }),

/***/ "../core/app/assets/js/layout/header-button.js":
/*!*****************************************************!*\
  !*** ../core/app/assets/js/layout/header-button.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _assign = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/assign */ "../node_modules/@babel/runtime-corejs2/core-js/object/assign.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _get2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/get */ "../node_modules/@babel/runtime-corejs2/helpers/get.js"));

var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/getPrototypeOf */ "../node_modules/@babel/runtime-corejs2/helpers/getPrototypeOf.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _button = _interopRequireDefault(__webpack_require__(/*! ../ui/molecules/button */ "../core/app/assets/js/ui/molecules/button.js"));

var Button = /*#__PURE__*/function (_BaseButton) {
  (0, _inherits2.default)(Button, _BaseButton);

  var _super = (0, _createSuper2.default)(Button);

  function Button() {
    (0, _classCallCheck2.default)(this, Button);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Button, [{
    key: "getCssId",
    value: function getCssId() {
      return "eps-app-header-btn-" + (0, _get2.default)((0, _getPrototypeOf2.default)(Button.prototype), "getCssId", this).call(this);
    }
  }, {
    key: "getClassName",
    value: function getClassName() {
      // Avoid using the 'eps-app__header-btn' class to make sure it is not override custom styles.
      if (!this.props.includeHeaderBtnClass) {
        return (0, _get2.default)((0, _getPrototypeOf2.default)(Button.prototype), "getClassName", this).call(this);
      }

      return "eps-app__header-btn " + (0, _get2.default)((0, _getPrototypeOf2.default)(Button.prototype), "getClassName", this).call(this);
    }
  }]);
  return Button;
}(_button.default);

exports.default = Button;
(0, _defineProperty2.default)(Button, "defaultProps", (0, _assign.default)({}
/* clone */
, _button.default.defaultProps, {
  hideText: true,
  includeHeaderBtnClass: true
}));

/***/ }),

/***/ "../core/app/assets/js/layout/header-buttons.js":
/*!******************************************************!*\
  !*** ../core/app/assets/js/layout/header-buttons.js ***!
  \******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = HeaderButtons;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

var _useAction = _interopRequireDefault(__webpack_require__(/*! elementor-app/hooks/use-action */ "../core/app/assets/js/hooks/use-action.js"));

var _headerButton = _interopRequireDefault(__webpack_require__(/*! ./header-button */ "../core/app/assets/js/layout/header-button.js"));

function HeaderButtons(props) {
  var action = (0, _useAction.default)();
  var tools = '';

  if (props.buttons.length) {
    var buttons = props.buttons.map(function (button) {
      return /*#__PURE__*/_react.default.createElement(_headerButton.default, (0, _extends2.default)({
        key: button.id
      }, button));
    });
    tools = /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, buttons);
  }

  return /*#__PURE__*/_react.default.createElement("div", {
    className: "eps-app__header-buttons"
  }, /*#__PURE__*/_react.default.createElement(_headerButton.default, {
    text: __('Close', 'elementor'),
    icon: "eicon-close",
    className: "eps-app__close-button",
    onClick: action.backToDashboard
  }), tools);
}

HeaderButtons.propTypes = {
  buttons: PropTypes.arrayOf(PropTypes.object)
};
HeaderButtons.defaultProps = {
  buttons: []
};

/***/ }),

/***/ "../core/app/assets/js/layout/header.js":
/*!**********************************************!*\
  !*** ../core/app/assets/js/layout/header.js ***!
  \**********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Header;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

var _grid = _interopRequireDefault(__webpack_require__(/*! ../ui/grid/grid */ "../core/app/assets/js/ui/grid/grid.js"));

var _headerButtons = _interopRequireDefault(__webpack_require__(/*! ./header-buttons */ "../core/app/assets/js/layout/header-buttons.js"));

var _usePageTitle = _interopRequireDefault(__webpack_require__(/*! elementor-app/hooks/use-page-title */ "../core/app/assets/js/hooks/use-page-title.js"));

function Header(props) {
  (0, _usePageTitle.default)({
    title: props.title
  });
  var TitleTag = 'span',
      titleAttrs = {};

  if (props.titleRedirectRoute) {
    TitleTag = 'a';
    titleAttrs = {
      href: "#".concat(props.titleRedirectRoute),
      target: '_self'
    };
  }

  return /*#__PURE__*/_react.default.createElement(_grid.default, {
    container: true,
    alignItems: "center",
    justify: "space-between",
    className: "eps-app__header"
  }, /*#__PURE__*/_react.default.createElement(TitleTag, (0, _extends2.default)({
    className: "eps-app__logo-title-wrapper"
  }, titleAttrs), /*#__PURE__*/_react.default.createElement("i", {
    className: "eps-app__logo eicon-elementor"
  }), /*#__PURE__*/_react.default.createElement("h1", {
    className: "eps-app__title"
  }, props.title)), /*#__PURE__*/_react.default.createElement(_headerButtons.default, {
    buttons: props.buttons
  }));
}

Header.propTypes = {
  title: PropTypes.string,
  titleRedirectRoute: PropTypes.string,
  buttons: PropTypes.arrayOf(PropTypes.object)
};
Header.defaultProps = {
  buttons: []
};

/***/ }),

/***/ "../core/app/assets/js/layout/page.js":
/*!********************************************!*\
  !*** ../core/app/assets/js/layout/page.js ***!
  \********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Page;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _header = _interopRequireDefault(__webpack_require__(/*! ./header */ "../core/app/assets/js/layout/header.js"));

var _sidebar = _interopRequireDefault(__webpack_require__(/*! ./sidebar */ "../core/app/assets/js/layout/sidebar.js"));

var _content = _interopRequireDefault(__webpack_require__(/*! ./content */ "../core/app/assets/js/layout/content.js"));

var _footer = _interopRequireDefault(__webpack_require__(/*! ./footer */ "../core/app/assets/js/layout/footer.js"));

function Page(props) {
  var AppSidebar = function AppSidebar() {
    if (!props.sidebar) {
      return;
    }

    return /*#__PURE__*/_react.default.createElement(_sidebar.default, null, props.sidebar);
  },
      AppFooter = function AppFooter() {
    if (!props.footer) {
      return;
    }

    return /*#__PURE__*/_react.default.createElement(_footer.default, null, props.footer);
  };

  return /*#__PURE__*/_react.default.createElement("div", {
    className: "eps-app__lightbox ".concat(props.className)
  }, /*#__PURE__*/_react.default.createElement("div", {
    className: "eps-app"
  }, /*#__PURE__*/_react.default.createElement(_header.default, {
    title: props.title,
    buttons: props.headerButtons,
    titleRedirectRoute: props.titleRedirectRoute
  }), /*#__PURE__*/_react.default.createElement("div", {
    className: "eps-app__main"
  }, AppSidebar(), /*#__PURE__*/_react.default.createElement(_content.default, null, props.content)), AppFooter()));
}

Page.propTypes = {
  title: PropTypes.string,
  titleRedirectRoute: PropTypes.string,
  className: PropTypes.string,
  headerButtons: PropTypes.arrayOf(PropTypes.object),
  sidebar: PropTypes.object,
  content: PropTypes.object.isRequired,
  footer: PropTypes.object
};
Page.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/layout/sidebar.js":
/*!***********************************************!*\
  !*** ../core/app/assets/js/layout/sidebar.js ***!
  \***********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Sidebar;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

function Sidebar(props) {
  return /*#__PURE__*/_react.default.createElement("div", {
    className: "eps-app__sidebar"
  }, props.children);
}

Sidebar.propTypes = {
  children: PropTypes.object
};

/***/ }),

/***/ "../core/app/assets/js/molecules/collapse-content.js":
/*!***********************************************************!*\
  !*** ../core/app/assets/js/molecules/collapse-content.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = CollapseContent;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

function CollapseContent(props) {
  return /*#__PURE__*/_react.default.createElement("div", {
    className: "e-app-collapse-content"
  }, props.children);
}

CollapseContent.propTypes = {
  className: PropTypes.string,
  children: PropTypes.any
};
CollapseContent.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/molecules/collapse-context.js":
/*!***********************************************************!*\
  !*** ../core/app/assets/js/molecules/collapse-context.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.CollapseContext = void 0;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var CollapseContext = _react.default.createContext();

exports.CollapseContext = CollapseContext;

/***/ }),

/***/ "../core/app/assets/js/molecules/collapse-toggle.js":
/*!**********************************************************!*\
  !*** ../core/app/assets/js/molecules/collapse-toggle.js ***!
  \**********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = CollapseToggle;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

var _collapseContext = __webpack_require__(/*! ./collapse-context */ "../core/app/assets/js/molecules/collapse-context.js");

function CollapseToggle(props) {
  var context = (0, _react.useContext)(_collapseContext.CollapseContext),
      style = {
    '--e-app-collapse-toggle-icon-spacing': (0, _utils.pxToRem)(props.iconSpacing)
  },
      classNameBase = 'e-app-collapse-toggle',
      classes = [classNameBase, (0, _defineProperty2.default)({}, classNameBase + '--active', props.active)],
      attrs = {
    style: style,
    className: (0, _utils.arrayToClassName)(classes)
  };

  if (props.active) {
    attrs.onClick = function () {
      return context.toggle();
    };
  }

  return /*#__PURE__*/_react.default.createElement("div", attrs, props.children, props.active && props.showIcon && /*#__PURE__*/_react.default.createElement("i", {
    className: "eicon-caret-down e-app-collapse-toggle__icon"
  }));
}

CollapseToggle.propTypes = {
  className: PropTypes.string,
  iconSpacing: PropTypes.number,
  showIcon: PropTypes.bool,
  active: PropTypes.bool,
  children: PropTypes.any
};
CollapseToggle.defaultProps = {
  className: '',
  iconSpacing: 20,
  showIcon: true,
  active: true
};

/***/ }),

/***/ "../core/app/assets/js/molecules/collapse.js":
/*!***************************************************!*\
  !*** ../core/app/assets/js/molecules/collapse.js ***!
  \***************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Collapse;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

var _collapseContext = __webpack_require__(/*! ./collapse-context */ "../core/app/assets/js/molecules/collapse-context.js");

var _collapseToggle = _interopRequireDefault(__webpack_require__(/*! ./collapse-toggle */ "../core/app/assets/js/molecules/collapse-toggle.js"));

var _collapseContent = _interopRequireDefault(__webpack_require__(/*! ./collapse-content */ "../core/app/assets/js/molecules/collapse-content.js"));

__webpack_require__(/*! ./collapse.scss */ "../core/app/assets/js/molecules/collapse.scss");

function Collapse(props) {
  var _useState = (0, _react.useState)(props.isOpened),
      _useState2 = (0, _slicedToArray2.default)(_useState, 2),
      isOpened = _useState2[0],
      setIsOpened = _useState2[1],
      classNameBase = 'e-app-collapse',
      classes = [classNameBase, props.className, (0, _defineProperty2.default)({}, classNameBase + '--opened', isOpened)],
      toggle = function toggle() {
    return setIsOpened(function (prevState) {
      return !prevState;
    });
  };

  (0, _react.useEffect)(function () {
    if (props.isOpened !== isOpened) {
      setIsOpened(props.isOpened);
    }
  }, [props.isOpened]);
  (0, _react.useEffect)(function () {
    if (props.onChange) {
      props.onChange(isOpened);
    }
  }, [isOpened]);
  return /*#__PURE__*/_react.default.createElement(_collapseContext.CollapseContext.Provider, {
    value: {
      toggle: toggle
    }
  }, /*#__PURE__*/_react.default.createElement("div", {
    className: (0, _utils.arrayToClassName)(classes)
  }, props.children));
}

Collapse.propTypes = {
  className: PropTypes.string,
  isOpened: PropTypes.bool,
  onChange: PropTypes.func,
  children: PropTypes.oneOfType([PropTypes.node, PropTypes.arrayOf(PropTypes.node)])
};
Collapse.defaultProps = {
  className: '',
  isOpened: false
};
Collapse.Toggle = _collapseToggle.default;
Collapse.Content = _collapseContent.default;

/***/ }),

/***/ "../core/app/assets/js/molecules/dashboard-button.js":
/*!***********************************************************!*\
  !*** ../core/app/assets/js/molecules/dashboard-button.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = DashboardButton;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

var _button = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/button */ "../core/app/assets/js/ui/molecules/button.js"));

var _useAction = _interopRequireDefault(__webpack_require__(/*! elementor-app/hooks/use-action */ "../core/app/assets/js/hooks/use-action.js"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

function DashboardButton(props) {
  var action = (0, _useAction.default)(),
      baseClassName = 'e-app-dashboard-button',
      classes = [baseClassName, props.className];
  return /*#__PURE__*/_react.default.createElement(_button.default, (0, _extends2.default)({}, props, {
    className: (0, _utils.arrayToClassName)(classes),
    text: props.text,
    onClick: action.backToDashboard
  }));
}

DashboardButton.propTypes = {
  className: PropTypes.string,
  text: PropTypes.string
};
DashboardButton.defaultProps = {
  className: '',
  variant: 'contained',
  color: 'primary',
  text: __('Back to dashboard', 'elementor')
};

/***/ }),

/***/ "../core/app/assets/js/molecules/go-pro-button.js":
/*!********************************************************!*\
  !*** ../core/app/assets/js/molecules/go-pro-button.js ***!
  \********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = GoProButton;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

var _button = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/button */ "../core/app/assets/js/ui/molecules/button.js"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

function GoProButton(props) {
  var baseClassName = 'e-app-go-pro-button',
      classes = [baseClassName, props.className];
  return /*#__PURE__*/_react.default.createElement(_button.default, (0, _extends2.default)({}, props, {
    className: (0, _utils.arrayToClassName)(classes),
    text: props.text
  }));
}

GoProButton.propTypes = {
  className: PropTypes.string,
  text: PropTypes.string
};
GoProButton.defaultProps = {
  className: '',
  variant: 'contained',
  size: 'sm',
  color: 'cta',
  target: '_blank',
  rel: 'noopener noreferrer',
  text: __('Go Pro', 'elementor')
};

/***/ }),

/***/ "../core/app/assets/js/molecules/tooltip.js":
/*!**************************************************!*\
  !*** ../core/app/assets/js/molecules/tooltip.js ***!
  \**************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Tooltip;

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! ../utils/utils */ "../core/app/assets/js/utils/utils.js");

function Tooltip(props) {
  var baseClassName = 'e-app-tooltip',
      classes = [baseClassName, props.className],
      childRef = (0, _react.useRef)(null),
      isAborted = (0, _react.useRef)(false),
      isManualControl = props.hasOwnProperty('show'),
      _useState = (0, _react.useState)(false),
      _useState2 = (0, _slicedToArray2.default)(_useState, 2),
      isLibraryLoaded = _useState2[0],
      setIsLibraryLoaded = _useState2[1],
      _useState3 = (0, _react.useState)(false),
      _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
      showTooltip = _useState4[0],
      setShowTooltip = _useState4[1],
      directionsMap = {
    top: 's',
    right: 'w',
    down: 'n',
    left: 'e'
  },
      tipsyConfig = {
    trigger: isManualControl ? 'manual' : 'hover',
    gravity: directionsMap[props.direction],
    offset: props.offset,
    title: function title() {
      return props.title;
    }
  },
      setTipsy = function setTipsy() {
    var $tooltipContainer = jQuery(childRef.current);
    $tooltipContainer.tipsy(tipsyConfig);

    if (isManualControl) {
      var displayMode = showTooltip ? 'show' : 'hide';
      $tooltipContainer.tipsy(displayMode);
    }
  };

  (0, _react.useEffect)(function () {
    // In case that the component is disabled the tipsy library will not be loaded by default.
    if (!props.disabled) {
      isAborted.current = false;
      import(
      /* webpackIgnore: true */
      "".concat(elementorCommon.config.urls.assets, "lib/tipsy/tipsy.min.js?ver=1.0.0")).then(function () {
        if (!isAborted.current) {
          if (isLibraryLoaded) {
            setTipsy();
          } else {
            setIsLibraryLoaded(true);
          }
        }
      });
    }

    return function () {
      if (!props.disabled) {
        // Aborting the current dynamic-import state update in case of re-render.
        isAborted.current = true; // Cleanup of existing tipsy element in case of re-render.

        jQuery('.tipsy:last').remove();
      }
    };
  }, [props.disabled]);
  (0, _react.useEffect)(function () {
    if (isLibraryLoaded) {
      setTipsy();
    }
  }, [isLibraryLoaded, showTooltip]);
  (0, _react.useEffect)(function () {
    // The "show" state should not be changed while the component is disabled.
    if (!props.disabled && props.show !== showTooltip) {
      setShowTooltip(props.show);
    }
  }, [props.show]);
  return /*#__PURE__*/_react.default.createElement(props.tag, {
    className: (0, _utils.arrayToClassName)(classes),
    ref: childRef
  }, props.children);
}

Tooltip.propTypes = {
  className: PropTypes.string,
  offset: PropTypes.number,
  show: PropTypes.bool,
  direction: PropTypes.oneOf(['top', 'right', 'left', 'down']),
  tag: PropTypes.string.isRequired,
  title: PropTypes.string.isRequired,
  disabled: PropTypes.bool,
  children: PropTypes.any
};
Tooltip.defaultProps = {
  className: '',
  offset: 10,
  direction: 'top',
  disabled: false
};

/***/ }),

/***/ "../core/app/assets/js/molecules/upload-file.js":
/*!******************************************************!*\
  !*** ../core/app/assets/js/molecules/upload-file.js ***!
  \******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = UploadFile;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

var _button = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/button */ "../core/app/assets/js/ui/molecules/button.js"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

__webpack_require__(/*! ./upload-file.scss */ "../core/app/assets/js/molecules/upload-file.scss");

function UploadFile(props) {
  var fileInput = (0, _react.useRef)(null),
      baseClassName = 'e-app-upload-file',
      classes = [baseClassName, props.className];
  return /*#__PURE__*/_react.default.createElement("div", {
    className: (0, _utils.arrayToClassName)(classes)
  }, /*#__PURE__*/_react.default.createElement("input", {
    ref: fileInput,
    type: "file",
    accept: props.filetypes.map(function (type) {
      return '.' + type;
    }).join(', '),
    className: "e-app-upload-file__input",
    onChange: function onChange(event) {
      var file = event.target.files[0];

      if (file && (0, _utils.isOneOf)(file.type, props.filetypes)) {
        props.onFileSelect(file, event);
      } else {
        fileInput.current.value = '';
        props.onError();
      }
    }
  }), /*#__PURE__*/_react.default.createElement(_button.default, {
    className: "e-app-upload-file__button",
    text: props.text,
    variant: "contained",
    color: "primary",
    size: "lg",
    hideText: props.isLoading,
    icon: props.isLoading ? 'eicon-loading eicon-animation-spin' : '',
    onClick: function onClick() {
      if (!props.isLoading) {
        fileInput.current.click();
      }
    }
  }));
}

UploadFile.propTypes = {
  className: PropTypes.string,
  text: PropTypes.string,
  onFileSelect: PropTypes.func,
  isLoading: PropTypes.bool,
  filetypes: PropTypes.array.isRequired,
  onError: PropTypes.func
};
UploadFile.defaultProps = {
  className: '',
  text: __('Select File', 'elementor'),
  onError: function onError() {}
};

/***/ }),

/***/ "../core/app/assets/js/organisms/drop-zone.js":
/*!****************************************************!*\
  !*** ../core/app/assets/js/organisms/drop-zone.js ***!
  \****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = DropZone;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

var _uploadFile = _interopRequireDefault(__webpack_require__(/*! elementor-app/molecules/upload-file */ "../core/app/assets/js/molecules/upload-file.js"));

var _dragDrop = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/drag-drop */ "../core/app/assets/js/ui/atoms/drag-drop.js"));

var _icon = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/icon */ "../core/app/assets/js/ui/atoms/icon.js"));

var _heading = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/heading */ "../core/app/assets/js/ui/atoms/heading.js"));

var _text = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/text */ "../core/app/assets/js/ui/atoms/text.js"));

__webpack_require__(/*! ./drop-zone.scss */ "../core/app/assets/js/organisms/drop-zone.scss");

function DropZone(props) {
  var classes = ['e-app-drop-zone', props.className],
      dragDropEvents = {
    onDrop: function onDrop(event) {
      if (!props.isLoading) {
        var file = event.dataTransfer.files[0];

        if (file && (0, _utils.isOneOf)(file.type, props.filetypes)) {
          props.onFileSelect(file, event);
        } else {
          props.onError();
        }
      }
    }
  };
  return /*#__PURE__*/_react.default.createElement("section", {
    className: (0, _utils.arrayToClassName)(classes)
  }, /*#__PURE__*/_react.default.createElement(_dragDrop.default, (0, _extends2.default)({}, dragDropEvents, {
    isLoading: props.isLoading
  }), props.icon && /*#__PURE__*/_react.default.createElement(_icon.default, {
    className: "e-app-drop-zone__icon ".concat(props.icon)
  }), props.heading && /*#__PURE__*/_react.default.createElement(_heading.default, {
    variant: "display-3"
  }, props.heading), props.text && /*#__PURE__*/_react.default.createElement(_text.default, {
    variant: "xl",
    className: "e-app-drop-zone__text"
  }, props.text), props.secondaryText && /*#__PURE__*/_react.default.createElement(_text.default, {
    variant: "xl",
    className: "e-app-drop-zone__secondary-text"
  }, props.secondaryText), props.showButton && /*#__PURE__*/_react.default.createElement(_uploadFile.default, {
    isLoading: props.isLoading,
    onFileSelect: props.onFileSelect,
    onError: props.onError,
    text: props.buttonText,
    filetypes: props.filetypes
  })));
}

DropZone.propTypes = {
  className: PropTypes.string,
  children: PropTypes.any,
  onFileSelect: PropTypes.func.isRequired,
  heading: PropTypes.string,
  text: PropTypes.string,
  secondaryText: PropTypes.string,
  buttonText: PropTypes.string,
  icon: PropTypes.string,
  showButton: PropTypes.bool,
  showIcon: PropTypes.bool,
  isLoading: PropTypes.bool,
  filetypes: PropTypes.array.isRequired,
  onError: PropTypes.func
};
DropZone.defaultProps = {
  className: '',
  icon: 'eicon-library-upload',
  showButton: true,
  showIcon: true,
  onError: function onError() {}
};

/***/ }),

/***/ "../core/app/assets/js/organisms/error-boundary.js":
/*!*********************************************************!*\
  !*** ../core/app/assets/js/organisms/error-boundary.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _dialog = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/dialog/dialog */ "../core/app/assets/js/ui/dialog/dialog.js"));

// In the current time there is no solution to use "getDerivedStateFromError" static method with functional component
// That is why this component is a class component.
// @link https://reactjs.org/docs/hooks-faq.html#do-hooks-cover-all-use-cases-for-classes
var ErrorBoundary = /*#__PURE__*/function (_React$Component) {
  (0, _inherits2.default)(ErrorBoundary, _React$Component);

  var _super = (0, _createSuper2.default)(ErrorBoundary);

  function ErrorBoundary(props) {
    var _this;

    (0, _classCallCheck2.default)(this, ErrorBoundary);
    _this = _super.call(this, props);
    _this.state = {
      hasError: null
    };
    return _this;
  }

  (0, _createClass2.default)(ErrorBoundary, [{
    key: "goBack",
    value: function goBack() {
      // If the app was opened inside an iframe, it will close it,
      // if not, it will redirect to the last location.
      if (window.top !== window.self) {
        window.top.$e.run('app/close');
      }

      window.location = elementorAppConfig.return_url;
    }
  }, {
    key: "render",
    value: function render() {
      if (this.state.hasError) {
        return /*#__PURE__*/_react.default.createElement(_dialog.default, {
          title: this.props.title,
          text: this.props.text,
          approveButtonUrl: this.props.learnMoreUrl,
          approveButtonColor: "link",
          approveButtonTarget: "_blank",
          approveButtonText: __('Learn More', 'elementor'),
          dismissButtonText: __('Go Back', 'elementor'),
          dismissButtonOnClick: this.goBack
        });
      }

      return this.props.children;
    }
  }], [{
    key: "getDerivedStateFromError",
    value: function getDerivedStateFromError() {
      return {
        hasError: true
      };
    }
  }]);
  return ErrorBoundary;
}(_react.default.Component);

exports.default = ErrorBoundary;
(0, _defineProperty2.default)(ErrorBoundary, "propTypes", {
  children: PropTypes.any,
  title: PropTypes.string,
  text: PropTypes.string,
  learnMoreUrl: PropTypes.string
});
(0, _defineProperty2.default)(ErrorBoundary, "defaultProps", {
  title: __('App could not be loaded', 'elementor'),
  text: __('We’re sorry, but something went wrong. Click on ‘Learn more’ and follow each of the steps to quickly solve it.', 'elementor'),
  learnMoreUrl: 'https://go.elementor.com/app-general-load-issue/'
});

/***/ }),

/***/ "../core/app/assets/js/organisms/wizard-footer.js":
/*!********************************************************!*\
  !*** ../core/app/assets/js/organisms/wizard-footer.js ***!
  \********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = WizardFooter;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

var _grid = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/grid/grid */ "../core/app/assets/js/ui/grid/grid.js"));

__webpack_require__(/*! ./wizard-footer.scss */ "../core/app/assets/js/organisms/wizard-footer.scss");

function WizardFooter(props) {
  var baseClassName = 'e-app-wizard-footer',
      classes = [baseClassName, props.className];

  if (props.separator) {
    classes.push(baseClassName + '__separator');
  }

  return /*#__PURE__*/_react.default.createElement(_grid.default, (0, _extends2.default)({
    container: true
  }, props, {
    className: (0, _utils.arrayToClassName)(classes)
  }), props.children);
}

WizardFooter.propTypes = {
  className: PropTypes.string,
  justify: PropTypes.any,
  separator: PropTypes.any,
  children: PropTypes.oneOfType([PropTypes.string, PropTypes.object, PropTypes.arrayOf(PropTypes.object)]).isRequired
};
WizardFooter.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/pages/index.js":
/*!********************************************!*\
  !*** ../core/app/assets/js/pages/index.js ***!
  \********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Index;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.regexp.search.js */ "../node_modules/core-js/modules/es6.regexp.search.js");

__webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");

__webpack_require__(/*! core-js/modules/es6.array.iterator.js */ "../node_modules/core-js/modules/es6.array.iterator.js");

__webpack_require__(/*! core-js/modules/web.dom.iterable.js */ "../node_modules/core-js/modules/web.dom.iterable.js");

__webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");

var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js");

var _actionsMap = _interopRequireDefault(__webpack_require__(/*! elementor-app/url-actions/actions-map */ "../core/app/assets/js/url-actions/actions-map.js"));

function Index() {
  var _elementorAppConfig$m;

  var urlSearchParams = new URLSearchParams(window.location.search),
      queryParams = Object.fromEntries(urlSearchParams.entries()),
      // The 'action' query param is translated into a route URL.
  url = _actionsMap.default[queryParams.action] || ((_elementorAppConfig$m = elementorAppConfig.menu_url.split('#')) === null || _elementorAppConfig$m === void 0 ? void 0 : _elementorAppConfig$m[1]);
  return /*#__PURE__*/_react.default.createElement(_router.Redirect, {
    to: url || '/not-found',
    noThrow: true
  });
}

/***/ }),

/***/ "../core/app/assets/js/pages/not-found.js":
/*!************************************************!*\
  !*** ../core/app/assets/js/pages/not-found.js ***!
  \************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = NotFound;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _page = _interopRequireDefault(__webpack_require__(/*! elementor-app/layout/page */ "../core/app/assets/js/layout/page.js"));

function NotFound() {
  var config = {
    title: __('Not Found', 'elementor'),
    className: 'eps-app__not-found',
    content: /*#__PURE__*/_react.default.createElement("h1", null, " ", __('Not Found', 'elementor'), " "),
    sidebar: /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null)
  };
  return /*#__PURE__*/_react.default.createElement(_page.default, config);
}

/***/ }),

/***/ "../core/app/assets/js/ui/atoms/box.js":
/*!*********************************************!*\
  !*** ../core/app/assets/js/ui/atoms/box.js ***!
  \*********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Box;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

__webpack_require__(/*! ./box.scss */ "../core/app/assets/js/ui/atoms/box.scss");

function Box(props) {
  var baseClassName = 'eps-box',
      classes = [baseClassName, props.className],
      style = {};

  if (props.hasOwnProperty('padding')) {
    style['--eps-box-padding'] = (0, _utils.pxToRem)(props.padding);
    classes.push(baseClassName + '--padding');
  }

  return /*#__PURE__*/_react.default.createElement("div", {
    style: style,
    className: (0, _utils.arrayToClassName)(classes)
  }, props.children);
}

Box.propTypes = {
  className: PropTypes.string,
  padding: PropTypes.string,
  children: PropTypes.oneOfType([PropTypes.string, PropTypes.object, PropTypes.arrayOf(PropTypes.object)]).isRequired
};
Box.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/ui/atoms/checkbox.js":
/*!**************************************************!*\
  !*** ../core/app/assets/js/ui/atoms/checkbox.js ***!
  \**************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Checkbox;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

__webpack_require__(/*! ./checkbox.scss */ "../core/app/assets/js/ui/atoms/checkbox.scss");

function Checkbox(props) {
  var baseClassName = 'eps-checkbox',
      classes = [baseClassName, props.className];

  if (props.rounded) {
    classes.push(baseClassName + '--rounded');
  }

  return /*#__PURE__*/_react.default.createElement("input", (0, _extends2.default)({}, props, {
    type: "checkbox",
    disabled: props.disabled,
    className: (0, _utils.arrayToClassName)(classes)
  }));
}

Checkbox.propTypes = {
  className: PropTypes.string,
  disabled: PropTypes.bool,
  rounded: PropTypes.bool
};
Checkbox.defaultProps = {
  className: '',
  disabled: false
};

/***/ }),

/***/ "../core/app/assets/js/ui/atoms/drag-drop.js":
/*!***************************************************!*\
  !*** ../core/app/assets/js/ui/atoms/drag-drop.js ***!
  \***************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = DragDrop;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _utils = __webpack_require__(/*! ../../utils/utils */ "../core/app/assets/js/utils/utils.js");

__webpack_require__(/*! ./drag-drop.scss */ "../core/app/assets/js/ui/atoms/drag-drop.scss");

function DragDrop(props) {
  var _useState = (0, _react.useState)(false),
      _useState2 = (0, _slicedToArray2.default)(_useState, 2),
      isDragOver = _useState2[0],
      setIsDragOver = _useState2[1],
      getClassName = function getClassName() {
    var baseClassName = 'e-app-drag-drop',
        classes = [baseClassName, props.className];

    if (isDragOver && !props.isLoading) {
      classes.push(baseClassName + '--drag-over');
    }

    return (0, _utils.arrayToClassName)(classes);
  },
      onDragDropActions = function onDragDropActions(event) {
    event.preventDefault();
    event.stopPropagation();
  },
      dragDropEvents = {
    onDrop: function onDrop(event) {
      onDragDropActions(event);
      setIsDragOver(false);

      if (props.onDrop) {
        props.onDrop(event);
      }
    },
    onDragOver: function onDragOver(event) {
      onDragDropActions(event);
      setIsDragOver(true);

      if (props.onDragOver) {
        props.onDragOver(event);
      }
    },
    onDragLeave: function onDragLeave(event) {
      onDragDropActions(event);
      setIsDragOver(false);

      if (props.onDragLeave) {
        props.onDragLeave(event);
      }
    }
  };

  return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({}, dragDropEvents, {
    className: getClassName()
  }), props.children);
}

DragDrop.propTypes = {
  className: PropTypes.string,
  children: PropTypes.any,
  onDrop: PropTypes.func,
  onDragLeave: PropTypes.func,
  onDragOver: PropTypes.func,
  isLoading: PropTypes.bool
};
DragDrop.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/ui/atoms/heading.js":
/*!*************************************************!*\
  !*** ../core/app/assets/js/ui/atoms/heading.js ***!
  \*************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Heading;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! ../../utils/utils */ "../core/app/assets/js/utils/utils.js");

function Heading(props) {
  var baseClassName = 'eps',
      classes = [props.className];

  if (props.variant) {
    classes.push(baseClassName + '-' + props.variant);
  }

  var Element = function Element() {
    return _react.default.createElement(props.tag, {
      className: (0, _utils.arrayToClassName)(classes)
    }, props.children);
  };

  return /*#__PURE__*/_react.default.createElement(Element, null);
}

Heading.propTypes = {
  className: PropTypes.string,
  children: PropTypes.oneOfType([PropTypes.string, PropTypes.object, PropTypes.arrayOf(PropTypes.object)]).isRequired,
  tag: PropTypes.oneOf(['h1', 'h2', 'h3', 'h4', 'h5', 'h6']),
  variant: PropTypes.oneOf(['display-1', 'display-2', 'display-3', 'display-4', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6']).isRequired
};
Heading.defaultProps = {
  className: '',
  tag: 'h1'
};

/***/ }),

/***/ "../core/app/assets/js/ui/atoms/icon.js":
/*!**********************************************!*\
  !*** ../core/app/assets/js/ui/atoms/icon.js ***!
  \**********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Icon;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

function Icon(props) {
  return /*#__PURE__*/_react.default.createElement("i", {
    className: "eps-icon ".concat(props.className)
  });
}

Icon.propTypes = {
  className: PropTypes.string.isRequired
};
Icon.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/ui/atoms/text-field.js":
/*!****************************************************!*\
  !*** ../core/app/assets/js/ui/atoms/text-field.js ***!
  \****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = TextField;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _utils = __webpack_require__(/*! ../../utils/utils */ "../core/app/assets/js/utils/utils.js");

__webpack_require__(/*! ./text-field.scss */ "../core/app/assets/js/ui/atoms/text-field.scss");

function TextField(props) {
  var classNameBase = 'eps-text-field',
      classes = [classNameBase, props.className, (0, _defineProperty2.default)({}, classNameBase + '--outlined', 'outlined' === props.variant)],
      validProps = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, props), {}, {
    className: (0, _utils.arrayToClassName)(classes)
  });

  if (validProps.multiline) {
    delete validProps.multiline;
    return /*#__PURE__*/_react.default.createElement("textarea", validProps);
  }

  return /*#__PURE__*/_react.default.createElement("input", (0, _extends2.default)({}, validProps, {
    type: "text"
  }));
}

TextField.propTypes = {
  className: PropTypes.string,
  multiline: PropTypes.bool,
  variant: PropTypes.oneOf(['standard', 'outlined']),
  children: PropTypes.string
};
TextField.defaultProps = {
  className: '',
  variant: 'standard'
};

/***/ }),

/***/ "../core/app/assets/js/ui/atoms/text.js":
/*!**********************************************!*\
  !*** ../core/app/assets/js/ui/atoms/text.js ***!
  \**********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Text;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! ../../utils/utils */ "../core/app/assets/js/utils/utils.js");

function Text(props) {
  var baseClassName = 'eps',
      classes = [props.className],
      variant = props.variant && 'md' !== props.variant ? '-' + props.variant : '';
  classes.push(baseClassName + '-text' + variant);

  var Element = function Element() {
    return _react.default.createElement(props.tag, {
      className: (0, _utils.arrayToClassName)(classes)
    }, props.children);
  };

  return /*#__PURE__*/_react.default.createElement(Element, null);
}

Text.propTypes = {
  className: PropTypes.string,
  variant: PropTypes.oneOf(['xl', 'lg', 'md', 'sm', 'xs', 'xxs']),
  tag: PropTypes.string,
  children: PropTypes.any.isRequired
};
Text.defaultProps = {
  className: '',
  tag: 'p'
};

/***/ }),

/***/ "../core/app/assets/js/ui/card/card-body.js":
/*!**************************************************!*\
  !*** ../core/app/assets/js/ui/card/card-body.js ***!
  \**************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = CardBody;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

__webpack_require__(/*! ./card.scss */ "../core/app/assets/js/ui/card/card.scss");

function CardBody(props) {
  var classNameBase = 'eps-card__body',
      classes = [classNameBase, props.className],
      style = {};

  if (props.hasOwnProperty('padding')) {
    style['--eps-card-body-padding'] = (0, _utils.pxToRem)(props.padding);
    classes.push(classNameBase + '--padding');
  }

  return /*#__PURE__*/_react.default.createElement("main", {
    className: (0, _utils.arrayToClassName)(classes),
    style: style
  }, props.children);
}

CardBody.propTypes = {
  className: PropTypes.string,
  padding: PropTypes.string,
  passive: PropTypes.bool,
  active: PropTypes.bool,
  children: PropTypes.any.isRequired
};
CardBody.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/ui/card/card-divider.js":
/*!*****************************************************!*\
  !*** ../core/app/assets/js/ui/card/card-divider.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = CardDivider;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

__webpack_require__(/*! ./card.scss */ "../core/app/assets/js/ui/card/card.scss");

function CardDivider(props) {
  var classNameBase = 'eps-card__divider',
      classes = [classNameBase, props.className];
  return /*#__PURE__*/_react.default.createElement("hr", {
    className: (0, _utils.arrayToClassName)(classes)
  });
}

CardDivider.propTypes = {
  className: PropTypes.string
};
CardDivider.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/ui/card/card-footer.js":
/*!****************************************************!*\
  !*** ../core/app/assets/js/ui/card/card-footer.js ***!
  \****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = CardFooter;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

__webpack_require__(/*! ./card.scss */ "../core/app/assets/js/ui/card/card.scss");

function CardFooter(props) {
  var classNameBase = 'eps-card__footer',
      classes = [classNameBase, props.className],
      style = {};

  if (props.hasOwnProperty('padding')) {
    style['--eps-card-footer-padding'] = (0, _utils.pxToRem)(props.padding);
    classes.push(classNameBase + '--padding');
  }

  return /*#__PURE__*/_react.default.createElement("footer", {
    className: (0, _utils.arrayToClassName)(classes),
    style: style
  }, props.children);
}

CardFooter.propTypes = {
  className: PropTypes.string,
  padding: PropTypes.string,
  passive: PropTypes.bool,
  active: PropTypes.bool,
  children: PropTypes.object.isRequired
};
CardFooter.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/ui/card/card-header.js":
/*!****************************************************!*\
  !*** ../core/app/assets/js/ui/card/card-header.js ***!
  \****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = CardHeader;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

__webpack_require__(/*! ./card.scss */ "../core/app/assets/js/ui/card/card.scss");

function CardHeader(props) {
  var classNameBase = 'eps-card__header',
      classes = [classNameBase, props.className],
      style = {};

  if (props.hasOwnProperty('padding')) {
    style['--eps-card-header-padding'] = (0, _utils.pxToRem)(props.padding);
    classes.push(classNameBase + '--padding');
  }

  return /*#__PURE__*/_react.default.createElement("header", {
    className: (0, _utils.arrayToClassName)(classes),
    style: style
  }, props.children);
}

CardHeader.propTypes = {
  className: PropTypes.string,
  padding: PropTypes.string,
  passive: PropTypes.bool,
  active: PropTypes.bool,
  children: PropTypes.any.isRequired
};
CardHeader.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/ui/card/card-headline.js":
/*!******************************************************!*\
  !*** ../core/app/assets/js/ui/card/card-headline.js ***!
  \******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = CardHeadline;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

__webpack_require__(/*! ./card.scss */ "../core/app/assets/js/ui/card/card.scss");

function CardHeadline(props) {
  var classNameBase = 'eps-card__headline',
      classes = [classNameBase, props.className];
  return /*#__PURE__*/_react.default.createElement("h4", {
    className: (0, _utils.arrayToClassName)(classes)
  }, props.children);
}

CardHeadline.propTypes = {
  className: PropTypes.string,
  children: PropTypes.any.isRequired
};
CardHeadline.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/ui/card/card-image.js":
/*!***************************************************!*\
  !*** ../core/app/assets/js/ui/card/card-image.js ***!
  \***************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = CardImage;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! ./card.scss */ "../core/app/assets/js/ui/card/card.scss");

function CardImage(props) {
  var image = /*#__PURE__*/_react.default.createElement("img", {
    src: props.src,
    alt: props.alt,
    className: "eps-card__image",
    loading: "lazy"
  });

  return /*#__PURE__*/_react.default.createElement("figure", {
    className: "eps-card__figure ".concat(props.className)
  }, image, props.children);
}

CardImage.propTypes = {
  className: PropTypes.string,
  src: PropTypes.string.isRequired,
  alt: PropTypes.string.isRequired,
  children: PropTypes.any
};
CardImage.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/ui/card/card-overlay.js":
/*!*****************************************************!*\
  !*** ../core/app/assets/js/ui/card/card-overlay.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = CardOverlay;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! ./card.scss */ "../core/app/assets/js/ui/card/card.scss");

function CardOverlay(props) {
  return /*#__PURE__*/_react.default.createElement("div", {
    className: "eps-card__image-overlay ".concat(props.className)
  }, props.children);
}

CardOverlay.propTypes = {
  className: PropTypes.string,
  children: PropTypes.object.isRequired
};
CardOverlay.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/ui/card/card.js":
/*!*********************************************!*\
  !*** ../core/app/assets/js/ui/card/card.js ***!
  \*********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _cardHeader = _interopRequireDefault(__webpack_require__(/*! ./card-header */ "../core/app/assets/js/ui/card/card-header.js"));

var _cardBody = _interopRequireDefault(__webpack_require__(/*! ./card-body */ "../core/app/assets/js/ui/card/card-body.js"));

var _cardImage = _interopRequireDefault(__webpack_require__(/*! ./card-image */ "../core/app/assets/js/ui/card/card-image.js"));

var _cardOverlay = _interopRequireDefault(__webpack_require__(/*! ./card-overlay */ "../core/app/assets/js/ui/card/card-overlay.js"));

var _cardFooter = _interopRequireDefault(__webpack_require__(/*! ./card-footer */ "../core/app/assets/js/ui/card/card-footer.js"));

var _cardHeadline = _interopRequireDefault(__webpack_require__(/*! ./card-headline */ "../core/app/assets/js/ui/card/card-headline.js"));

var _cardDivider = _interopRequireDefault(__webpack_require__(/*! ./card-divider */ "../core/app/assets/js/ui/card/card-divider.js"));

__webpack_require__(/*! ./card.scss */ "../core/app/assets/js/ui/card/card.scss");

var Card = _react.default.forwardRef(function (props, ref) {
  return /*#__PURE__*/_react.default.createElement("article", {
    className: "eps-card ".concat(props.className),
    ref: ref
  }, props.children);
});

Card.propTypes = {
  type: PropTypes.string,
  className: PropTypes.string,
  children: PropTypes.any
};
Card.defaultProps = {
  className: ''
};
Card.displayName = 'Card';
Card.Header = _cardHeader.default;
Card.Body = _cardBody.default;
Card.Image = _cardImage.default;
Card.Overlay = _cardOverlay.default;
Card.Footer = _cardFooter.default;
Card.Headline = _cardHeadline.default;
Card.Divider = _cardDivider.default;
var _default = Card;
exports.default = _default;

/***/ }),

/***/ "../core/app/assets/js/ui/dialog/dialog-actions.js":
/*!*********************************************************!*\
  !*** ../core/app/assets/js/ui/dialog/dialog-actions.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = DialogActions;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

function DialogActions(props) {
  return /*#__PURE__*/_react.default.createElement("div", {
    className: "eps-dialog__buttons"
  }, props.children);
}

DialogActions.propTypes = {
  children: PropTypes.any
};

/***/ }),

/***/ "../core/app/assets/js/ui/dialog/dialog-button.js":
/*!********************************************************!*\
  !*** ../core/app/assets/js/ui/dialog/dialog-button.js ***!
  \********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = DialogButton;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

var _button = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/button */ "../core/app/assets/js/ui/molecules/button.js"));

function DialogButton(props) {
  return /*#__PURE__*/_react.default.createElement(_button.default, (0, _extends2.default)({}, props, {
    className: "eps-dialog__button ".concat(props.className)
  }));
}

DialogButton.propTypes = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, _button.default.propTypes), {}, {
  tabIndex: PropTypes.string,
  type: PropTypes.string
});
DialogButton.defaultProps = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, _button.default.defaultProps), {}, {
  tabIndex: '0',
  type: 'button'
});

/***/ }),

/***/ "../core/app/assets/js/ui/dialog/dialog-content.js":
/*!*********************************************************!*\
  !*** ../core/app/assets/js/ui/dialog/dialog-content.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = DialogContent;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

function DialogContent(props) {
  return /*#__PURE__*/_react.default.createElement("div", {
    className: "eps-dialog__content"
  }, props.children);
}

DialogContent.propTypes = {
  children: PropTypes.any
};

/***/ }),

/***/ "../core/app/assets/js/ui/dialog/dialog-text.js":
/*!******************************************************!*\
  !*** ../core/app/assets/js/ui/dialog/dialog-text.js ***!
  \******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = DialogText;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

var _text = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/text */ "../core/app/assets/js/ui/atoms/text.js"));

function DialogText(props) {
  return /*#__PURE__*/_react.default.createElement(_text.default, (0, _extends2.default)({
    variant: "xs"
  }, props, {
    className: "eps-dialog__text ".concat(props.className)
  }));
}

DialogText.propTypes = (0, _objectSpread2.default)({}, _text.default.propTypes);
DialogText.defaultProps = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, _text.default.defaultProps), {}, {
  tag: 'p',
  variant: 'sm'
});

/***/ }),

/***/ "../core/app/assets/js/ui/dialog/dialog-title.js":
/*!*******************************************************!*\
  !*** ../core/app/assets/js/ui/dialog/dialog-title.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = DialogTitle;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

var _heading = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/heading */ "../core/app/assets/js/ui/atoms/heading.js"));

function DialogTitle(props) {
  return /*#__PURE__*/_react.default.createElement(_heading.default, (0, _extends2.default)({}, props, {
    className: "eps-dialog__title ".concat(props.className)
  }));
}

DialogTitle.propTypes = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, _heading.default.propTypes), {}, {
  className: PropTypes.string
});
DialogTitle.defaultProps = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, _heading.default.propTypes), {}, {
  variant: 'h3',
  tag: 'h3',
  className: ''
});

/***/ }),

/***/ "../core/app/assets/js/ui/dialog/dialog-wrapper.js":
/*!*********************************************************!*\
  !*** ../core/app/assets/js/ui/dialog/dialog-wrapper.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = DialogWrapper;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _button = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/button */ "../core/app/assets/js/ui/molecules/button.js"));

function DialogWrapper(props) {
  var WrapperTag = 'div';

  if (props.onSubmit) {
    WrapperTag = 'form';
  }

  return /*#__PURE__*/_react.default.createElement("section", {
    className: "eps-modal__overlay"
  }, /*#__PURE__*/_react.default.createElement(WrapperTag, {
    className: "eps-modal eps-dialog",
    onSubmit: props.onSubmit
  }, props.onClose && /*#__PURE__*/_react.default.createElement(_button.default, {
    onClick: props.onClose,
    text: __('Close', 'elementor'),
    hideText: true,
    icon: "eicon-close",
    className: "eps-dialog__close-button"
  }), props.children));
}

DialogWrapper.propTypes = {
  onClose: PropTypes.func,
  onSubmit: PropTypes.func,
  children: PropTypes.any
};

/***/ }),

/***/ "../core/app/assets/js/ui/dialog/dialog.js":
/*!*************************************************!*\
  !*** ../core/app/assets/js/ui/dialog/dialog.js ***!
  \*************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Dialog;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _dialogWrapper = _interopRequireDefault(__webpack_require__(/*! ./dialog-wrapper */ "../core/app/assets/js/ui/dialog/dialog-wrapper.js"));

var _dialogContent = _interopRequireDefault(__webpack_require__(/*! ./dialog-content */ "../core/app/assets/js/ui/dialog/dialog-content.js"));

var _dialogTitle = _interopRequireDefault(__webpack_require__(/*! ./dialog-title */ "../core/app/assets/js/ui/dialog/dialog-title.js"));

var _dialogText = _interopRequireDefault(__webpack_require__(/*! ./dialog-text */ "../core/app/assets/js/ui/dialog/dialog-text.js"));

var _dialogActions = _interopRequireDefault(__webpack_require__(/*! ./dialog-actions */ "../core/app/assets/js/ui/dialog/dialog-actions.js"));

var _dialogButton = _interopRequireDefault(__webpack_require__(/*! ./dialog-button */ "../core/app/assets/js/ui/dialog/dialog-button.js"));

__webpack_require__(/*! ./dialog.scss */ "../core/app/assets/js/ui/dialog/dialog.scss");

function Dialog(props) {
  return /*#__PURE__*/_react.default.createElement(_dialogWrapper.default, {
    onSubmit: props.onSubmit,
    onClose: props.onClose
  }, /*#__PURE__*/_react.default.createElement(_dialogContent.default, null, props.title && /*#__PURE__*/_react.default.createElement(_dialogTitle.default, null, props.title), props.text && /*#__PURE__*/_react.default.createElement(_dialogText.default, null, props.text), props.children), /*#__PURE__*/_react.default.createElement(_dialogActions.default, null, /*#__PURE__*/_react.default.createElement(_dialogButton.default, {
    key: "dismiss",
    text: props.dismissButtonText,
    onClick: props.dismissButtonOnClick,
    url: props.dismissButtonUrl,
    target: props.dismissButtonTarget,
    tabIndex: "2"
  }), /*#__PURE__*/_react.default.createElement(_dialogButton.default, {
    key: "approve",
    text: props.approveButtonText,
    onClick: props.approveButtonOnClick,
    url: props.approveButtonUrl,
    target: props.approveButtonTarget,
    color: props.approveButtonColor,
    elRef: props.approveButtonRef,
    tabIndex: "1"
  })));
}

Dialog.propTypes = {
  title: PropTypes.any,
  text: PropTypes.any,
  children: PropTypes.any,
  onSubmit: PropTypes.func,
  onClose: PropTypes.func,
  dismissButtonText: PropTypes.string.isRequired,
  dismissButtonOnClick: PropTypes.func,
  dismissButtonUrl: PropTypes.string,
  dismissButtonTarget: PropTypes.string,
  approveButtonText: PropTypes.string.isRequired,
  approveButtonOnClick: PropTypes.func,
  approveButtonUrl: PropTypes.string,
  approveButtonColor: PropTypes.string,
  approveButtonTarget: PropTypes.string,
  approveButtonRef: PropTypes.object
};
Dialog.defaultProps = {};
Dialog.Wrapper = _dialogWrapper.default;
Dialog.Content = _dialogContent.default;
Dialog.Title = _dialogTitle.default;
Dialog.Text = _dialogText.default;
Dialog.Actions = _dialogActions.default;
Dialog.Button = _dialogButton.default;

/***/ }),

/***/ "../core/app/assets/js/ui/grid/grid.js":
/*!*********************************************!*\
  !*** ../core/app/assets/js/ui/grid/grid.js ***!
  \*********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Grid;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.regexp.match.js */ "../node_modules/core-js/modules/es6.regexp.match.js");

__webpack_require__(/*! core-js/modules/es6.regexp.replace.js */ "../node_modules/core-js/modules/es6.regexp.replace.js");

var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/toConsumableArray */ "../node_modules/@babel/runtime-corejs2/helpers/toConsumableArray.js"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

__webpack_require__(/*! ./grid.scss */ "../core/app/assets/js/ui/grid/grid.scss");

function Grid(props) {
  var propsMap = {
    direction: '--direction{{ -VALUE }}',
    justify: '--justify{{ -VALUE }}',
    alignContent: '--align-content{{ -VALUE }}',
    alignItems: '--align-items{{ -VALUE }}',
    container: '-container',
    item: '-item',
    noWrap: '-container--no-wrap',
    wrapReverse: '-container--wrap-reverse',
    zeroMinWidth: '-item--zero-min-width',
    spacing: '-container--spacing',
    xs: '-item-xs{{ -VALUE }}',
    sm: '-item-sm{{ -VALUE }}',
    md: '-item-md{{ -VALUE }}',
    lg: '-item-lg{{ -VALUE }}',
    xl: '-item-xl{{ -VALUE }}',
    xxl: '-item-xxl{{ -VALUE }}'
  },
      getStyle = function getStyle() {
    return isValidPropValue(props.spacing) ? {
      '--grid-spacing-gutter': (0, _utils.pxToRem)(props.spacing)
    } : {};
  },
      classes = [getBaseClassName(), props.className].concat((0, _toConsumableArray2.default)(getPropsClasses(propsMap, props)));

  return /*#__PURE__*/_react.default.createElement("div", {
    style: getStyle(),
    className: (0, _utils.arrayToClassName)(classes)
  }, props.children);
}

function getPropsClasses(propsMap, props) {
  var classes = [];

  for (var prop in propsMap) {
    if (props[prop]) {
      var propValue = isValidPropValue(props[prop]) ? props[prop] : '';
      classes.push(getBaseClassName() + renderPropValueBrackets(propsMap[prop], propValue));
    }
  }

  return classes;
}

function renderPropValueBrackets(propClass, propValue) {
  var brackets = propClass.match(/{{.*?}}/);

  if (brackets) {
    var bracketsValue = propValue ? brackets[0].replace(/[{ }]/g, '').replace(/value/i, propValue) : '';
    propClass = propClass.replace(brackets[0], bracketsValue);
  }

  return propClass;
}

function getBaseClassName() {
  return 'eps-grid';
}

function isValidPropValue(propValue) {
  return propValue && 'boolean' !== typeof propValue;
}

Grid.propTypes = {
  className: PropTypes.string,
  direction: PropTypes.oneOf(['row', 'column', 'row-reverse', 'column-reverse']),
  justify: PropTypes.oneOf(['start', 'center', 'end', 'space-between', 'space-evenly', 'space-around', 'stretch']),
  alignContent: PropTypes.oneOf(['start', 'center', 'end', 'space-between', 'stretch']),
  alignItems: PropTypes.oneOf(['start', 'center', 'end', 'baseline', 'stretch']),
  container: PropTypes.bool,
  item: PropTypes.bool,
  noWrap: PropTypes.bool,
  wrapReverse: PropTypes.bool,
  zeroMinWidth: PropTypes.bool,
  spacing: PropTypes.number,
  xs: PropTypes.oneOfType([PropTypes.number, PropTypes.bool]),
  sm: PropTypes.oneOfType([PropTypes.number, PropTypes.bool]),
  md: PropTypes.oneOfType([PropTypes.number, PropTypes.bool]),
  lg: PropTypes.oneOfType([PropTypes.number, PropTypes.bool]),
  xl: PropTypes.oneOfType([PropTypes.number, PropTypes.bool]),
  xxl: PropTypes.oneOfType([PropTypes.number, PropTypes.bool]),
  children: PropTypes.any.isRequired
};
Grid.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/ui/modal/modal-section.js":
/*!*******************************************************!*\
  !*** ../core/app/assets/js/ui/modal/modal-section.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ModalSection;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! ../../utils/utils */ "../core/app/assets/js/utils/utils.js");

function ModalSection(props) {
  return /*#__PURE__*/_react.default.createElement("section", {
    className: (0, _utils.arrayToClassName)(['eps-modal__section', props.className])
  }, props.children);
}

ModalSection.propTypes = {
  className: PropTypes.string,
  children: PropTypes.any
};
ModalSection.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/ui/modal/modal-tip.js":
/*!***************************************************!*\
  !*** ../core/app/assets/js/ui/modal/modal-tip.js ***!
  \***************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ModalTip;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! ../../utils/utils */ "../core/app/assets/js/utils/utils.js");

var _heading = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/heading */ "../core/app/assets/js/ui/atoms/heading.js"));

var _text = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/text */ "../core/app/assets/js/ui/atoms/text.js"));

function ModalTip(props) {
  return /*#__PURE__*/_react.default.createElement("div", {
    className: (0, _utils.arrayToClassName)(['eps-modal__tip', props.className])
  }, /*#__PURE__*/_react.default.createElement(_heading.default, {
    variant: "h3",
    tag: "h3"
  }, props.title), props.description && /*#__PURE__*/_react.default.createElement(_text.default, {
    variant: "xs"
  }, props.description));
}

ModalTip.propTypes = {
  className: PropTypes.string,
  title: PropTypes.string,
  description: PropTypes.string
};
ModalTip.defaultProps = {
  className: '',
  title: __('Tip', 'elementor')
};

/***/ }),

/***/ "../core/app/assets/js/ui/modal/modal.js":
/*!***********************************************!*\
  !*** ../core/app/assets/js/ui/modal/modal.js ***!
  \***********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ModalProvider;
exports.Modal = void 0;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

var _button = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/button */ "../core/app/assets/js/ui/molecules/button.js"));

var _grid = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/grid/grid */ "../core/app/assets/js/ui/grid/grid.js"));

var _icon = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/icon */ "../core/app/assets/js/ui/atoms/icon.js"));

var _text = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/text */ "../core/app/assets/js/ui/atoms/text.js"));

var _modalSection = _interopRequireDefault(__webpack_require__(/*! ./modal-section */ "../core/app/assets/js/ui/modal/modal-section.js"));

var _modalTip = _interopRequireDefault(__webpack_require__(/*! ./modal-tip */ "../core/app/assets/js/ui/modal/modal-tip.js"));

__webpack_require__(/*! ./modal.scss */ "../core/app/assets/js/ui/modal/modal.scss");

function ModalProvider(props) {
  var _useState = (0, _react.useState)(props.show),
      _useState2 = (0, _slicedToArray2.default)(_useState, 2),
      show = _useState2[0],
      setShow = _useState2[1],
      hideModal = function hideModal() {
    setShow(false); // The purpose of the props.setShow is to sync an external state with the component inner state.

    // The purpose of the props.setShow is to sync an external state with the component inner state.
    if (props.setShow) {
      props.setShow(false);
    }
  },
      showModal = function showModal() {
    setShow(true); // The purpose of the props.setShow is to sync an external state with the component inner state.

    // The purpose of the props.setShow is to sync an external state with the component inner state.
    if (props.setShow) {
      props.setShow(true);
    }
  },
      modalAttrs = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, props), {}, {
    show: show,
    hideModal: hideModal,
    showModal: showModal
  });

  (0, _react.useEffect)(function () {
    // Sync with external state.
    setShow(props.show);
  }, [props.show]);
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, props.toggleButtonProps && /*#__PURE__*/_react.default.createElement(_button.default, (0, _extends2.default)({}, props.toggleButtonProps, {
    onClick: showModal
  })), /*#__PURE__*/_react.default.createElement(Modal, modalAttrs, props.children));
}

ModalProvider.propTypes = {
  children: PropTypes.node.isRequired,
  toggleButtonProps: PropTypes.object,
  title: PropTypes.string,
  icon: PropTypes.string,
  show: PropTypes.bool,
  setShow: PropTypes.func
};
ModalProvider.defaultProps = {
  show: false
};
ModalProvider.Section = _modalSection.default;
ModalProvider.Tip = _modalTip.default;

var Modal = function Modal(props) {
  var modalRef = (0, _react.useRef)(null),
      closeRef = (0, _react.useRef)(null),
      closeModal = function closeModal(e) {
    var node = modalRef.current,
        closeNode = closeRef.current,
        isInCloseNode = closeNode && closeNode.contains(e.target); // ignore if click is inside the modal

    if (node && node.contains(e.target) && !isInCloseNode) {
      return;
    }

    props.hideModal();
  };

  (0, _react.useEffect)(function () {
    if (props.show) {
      document.addEventListener('mousedown', closeModal, false);
    }

    return function () {
      return document.removeEventListener('mousedown', closeModal, false);
    };
  }, [props.show]);

  if (!props.show) {
    return null;
  }

  return /*#__PURE__*/_react.default.createElement("div", {
    className: "eps-modal__overlay",
    onClick: closeModal
  }, /*#__PURE__*/_react.default.createElement("div", {
    className: (0, _utils.arrayToClassName)(['eps-modal', props.className]),
    ref: modalRef
  }, /*#__PURE__*/_react.default.createElement(_grid.default, {
    container: true,
    className: "eps-modal__header",
    justify: "space-between",
    alignItems: "center"
  }, /*#__PURE__*/_react.default.createElement(_grid.default, {
    item: true
  }, /*#__PURE__*/_react.default.createElement(_icon.default, {
    className: "eps-modal__icon ".concat(props.icon)
  }), /*#__PURE__*/_react.default.createElement(_text.default, {
    className: "title",
    tag: "span"
  }, props.title)), /*#__PURE__*/_react.default.createElement(_grid.default, {
    item: true
  }, /*#__PURE__*/_react.default.createElement("div", {
    className: "eps-modal__close-wrapper",
    ref: closeRef
  }, /*#__PURE__*/_react.default.createElement(_button.default, {
    text: __('Close', 'elementor'),
    hideText: true,
    icon: "eicon-close",
    onClick: props.closeModal
  })))), /*#__PURE__*/_react.default.createElement("div", {
    className: "eps-modal__body"
  }, props.children)));
};

exports.Modal = Modal;
Modal.propTypes = {
  className: PropTypes.string,
  children: PropTypes.any.isRequired,
  title: PropTypes.string.isRequired,
  icon: PropTypes.string,
  show: PropTypes.bool,
  setShow: PropTypes.func,
  hideModal: PropTypes.func,
  showModal: PropTypes.func,
  closeModal: PropTypes.func
};
Modal.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/ui/molecules/button.js":
/*!****************************************************!*\
  !*** ../core/app/assets/js/ui/molecules/button.js ***!
  \****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js");

var _router2 = _interopRequireDefault(__webpack_require__(/*! @elementor/router */ "@elementor/router"));

var _icon = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/icon */ "../core/app/assets/js/ui/atoms/icon.js"));

var Button = /*#__PURE__*/function (_React$Component) {
  (0, _inherits2.default)(Button, _React$Component);

  var _super = (0, _createSuper2.default)(Button);

  function Button() {
    (0, _classCallCheck2.default)(this, Button);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Button, [{
    key: "getCssId",
    value: function getCssId() {
      return this.props.id;
    }
  }, {
    key: "getClassName",
    value: function getClassName() {
      var baseClassName = 'eps-button',
          classes = [baseClassName, this.props.className];
      return classes.concat(this.getStylePropsClasses(baseClassName)).filter(function (classItem) {
        return '' !== classItem;
      }).join(' ');
    }
  }, {
    key: "getStylePropsClasses",
    value: function getStylePropsClasses(baseClassName) {
      var _this = this;

      var styleProps = ['color', 'size', 'variant'],
          stylePropClasses = [];
      styleProps.forEach(function (styleProp) {
        var stylePropValue = _this.props[styleProp];

        if (stylePropValue) {
          stylePropClasses.push(baseClassName + '--' + stylePropValue);
        }
      });
      return stylePropClasses;
    }
  }, {
    key: "getIcon",
    value: function getIcon() {
      if (this.props.icon) {
        var tooltip = this.props.tooltip || this.props.text;

        var icon = /*#__PURE__*/_react.default.createElement(_icon.default, {
          className: this.props.icon,
          "aria-hidden": "true",
          title: tooltip
        });

        var screenReaderText = '';

        if (this.props.hideText) {
          screenReaderText = /*#__PURE__*/_react.default.createElement("span", {
            className: "sr-only"
          }, tooltip);
        }

        return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, icon, screenReaderText);
      }

      return '';
    }
  }, {
    key: "getText",
    value: function getText() {
      return this.props.hideText ? '' : /*#__PURE__*/_react.default.createElement("span", null, this.props.text);
    }
  }, {
    key: "render",
    value: function render() {
      var attributes = {},
          id = this.getCssId(),
          className = this.getClassName(); // Add attributes only if they are not empty.

      if (id) {
        attributes.id = id;
      }

      if (className) {
        attributes.className = className;
      }

      if (this.props.onClick) {
        attributes.onClick = this.props.onClick;
      }

      if (this.props.rel) {
        attributes.rel = this.props.rel;
      }

      if (this.props.elRef) {
        attributes.ref = this.props.elRef;
      }

      var buttonContent = /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, this.getIcon(), this.getText());

      if (this.props.url) {
        if (0 === this.props.url.indexOf('http')) {
          return /*#__PURE__*/_react.default.createElement("a", (0, _extends2.default)({
            href: this.props.url,
            target: this.props.target
          }, attributes), buttonContent);
        } // @see https://reach.tech/router/example/active-links.


        attributes.getProps = function (props) {
          if (props.isCurrent) {
            attributes.className += ' active';
          }

          return {
            className: attributes.className
          };
        };

        return /*#__PURE__*/_react.default.createElement(_router.LocationProvider, {
          history: _router2.default.appHistory
        }, /*#__PURE__*/_react.default.createElement(_router.Link, (0, _extends2.default)({
          to: this.props.url
        }, attributes), buttonContent));
      }

      return /*#__PURE__*/_react.default.createElement("div", attributes, buttonContent);
    }
  }]);
  return Button;
}(_react.default.Component);

exports.default = Button;
(0, _defineProperty2.default)(Button, "propTypes", {
  text: PropTypes.string.isRequired,
  hideText: PropTypes.bool,
  icon: PropTypes.string,
  tooltip: PropTypes.string,
  id: PropTypes.string,
  className: PropTypes.string,
  url: PropTypes.string,
  onClick: PropTypes.func,
  variant: PropTypes.oneOf(['contained', 'underlined', 'outlined', '']),
  color: PropTypes.oneOf(['primary', 'secondary', 'cta', 'link', 'disabled']),
  size: PropTypes.oneOf(['sm', 'md', 'lg']),
  target: PropTypes.string,
  rel: PropTypes.string,
  elRef: PropTypes.object
});
(0, _defineProperty2.default)(Button, "defaultProps", {
  id: '',
  className: '',
  variant: '',
  target: '_parent'
});

/***/ }),

/***/ "../core/app/assets/js/ui/molecules/inline-link.js":
/*!*********************************************************!*\
  !*** ../core/app/assets/js/ui/molecules/inline-link.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = InlineLink;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js");

var _router2 = _interopRequireDefault(__webpack_require__(/*! @elementor/router */ "@elementor/router"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

__webpack_require__(/*! ./inline-link.scss */ "../core/app/assets/js/ui/molecules/inline-link.scss");

function InlineLink(props) {
  var baseClassName = 'eps-inline-link',
      colorClassName = "".concat(baseClassName, "--color-").concat(props.color),
      underlineClassName = 'none' !== props.underline ? "".concat(baseClassName, "--underline-").concat(props.underline) : '',
      italicClassName = props.italic ? "".concat(baseClassName, "--italic") : '',
      classes = [baseClassName, colorClassName, underlineClassName, italicClassName, props.className],
      className = (0, _utils.arrayToClassName)(classes),
      getRouterLink = function getRouterLink() {
    return /*#__PURE__*/_react.default.createElement(_router.LocationProvider, {
      history: _router2.default.appHistory
    }, /*#__PURE__*/_react.default.createElement(_router.Link, {
      to: props.url,
      className: className
    }, props.children));
  },
      getExternalLink = function getExternalLink() {
    return /*#__PURE__*/_react.default.createElement("a", {
      href: props.url,
      target: props.target,
      rel: props.rel,
      className: className
    }, props.children);
  },
      getActionLink = function getActionLink() {
    return /*#__PURE__*/_react.default.createElement("button", {
      className: className,
      onClick: props.onClick
    }, props.children);
  };

  if (!props.url) {
    return getActionLink();
  }

  return props.url.includes('http') ? getExternalLink() : getRouterLink();
}

InlineLink.propTypes = {
  className: PropTypes.string,
  children: PropTypes.string,
  url: PropTypes.string,
  target: PropTypes.string,
  rel: PropTypes.string,
  text: PropTypes.string,
  color: PropTypes.oneOf(['primary', 'secondary', 'cta', 'link', 'disabled']),
  underline: PropTypes.oneOf(['none', 'hover', 'always']),
  italic: PropTypes.bool
};
InlineLink.defaultProps = {
  className: '',
  color: 'link',
  underline: 'always',
  target: '_blank',
  rel: 'noopener noreferrer'
};

/***/ }),

/***/ "../core/app/assets/js/ui/molecules/list-item.js":
/*!*******************************************************!*\
  !*** ../core/app/assets/js/ui/molecules/list-item.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ListItem;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

function ListItem(props) {
  var baseClassName = 'eps-list__item',
      classes = [baseClassName, props.className];
  var style;

  if (props.hasOwnProperty('padding')) {
    style = {
      '--eps-list-item-padding': (0, _utils.pxToRem)(props.padding)
    };
    classes.push(baseClassName + '--padding');
  }

  return /*#__PURE__*/_react.default.createElement("li", {
    style: style,
    className: (0, _utils.arrayToClassName)(classes)
  }, props.children);
}

ListItem.propTypes = {
  className: PropTypes.string,
  padding: PropTypes.string,
  children: PropTypes.any.isRequired
};
ListItem.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/ui/molecules/list.js":
/*!**************************************************!*\
  !*** ../core/app/assets/js/ui/molecules/list.js ***!
  \**************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = List;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

var _listItem = _interopRequireDefault(__webpack_require__(/*! ./list-item */ "../core/app/assets/js/ui/molecules/list-item.js"));

__webpack_require__(/*! ./list.scss */ "../core/app/assets/js/ui/molecules/list.scss");

function List(props) {
  var baseClassName = 'eps-list',
      classes = [baseClassName, props.className];
  var style;

  if (props.hasOwnProperty('padding')) {
    style = {
      '--eps-list-padding': (0, _utils.pxToRem)(props.padding)
    };
    classes.push(baseClassName + '--padding');
  }

  if (props.separated) {
    classes.push(baseClassName + '--separated');
  }

  return /*#__PURE__*/_react.default.createElement("ul", {
    style: style,
    className: (0, _utils.arrayToClassName)(classes)
  }, props.children);
}

List.propTypes = {
  className: PropTypes.string,
  divided: PropTypes.any,
  separated: PropTypes.any,
  padding: PropTypes.string,
  children: PropTypes.oneOfType([PropTypes.object, PropTypes.arrayOf(PropTypes.object)]).isRequired
};
List.defaultProps = {
  className: ''
};
List.Item = _listItem.default;

/***/ }),

/***/ "../core/app/assets/js/ui/molecules/notice.js":
/*!****************************************************!*\
  !*** ../core/app/assets/js/ui/molecules/notice.js ***!
  \****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Notice;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

var _text = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/text */ "../core/app/assets/js/ui/atoms/text.js"));

__webpack_require__(/*! ./notice.scss */ "../core/app/assets/js/ui/molecules/notice.scss");

function Notice(props) {
  var baseClassName = 'eps-notice',
      classes = [baseClassName, props.className];

  if (props.color) {
    classes.push(baseClassName + '--' + props.color);
  }

  return /*#__PURE__*/_react.default.createElement("div", {
    className: (0, _utils.arrayToClassName)(classes)
  }, /*#__PURE__*/_react.default.createElement(_text.default, {
    variant: "xs",
    className: "eps-notice__text"
  }, props.label && /*#__PURE__*/_react.default.createElement("strong", null, props.label + ': '), " ", props.children));
}

Notice.propTypes = {
  className: PropTypes.string,
  color: PropTypes.string,
  label: PropTypes.string,
  children: PropTypes.oneOfType([PropTypes.string, PropTypes.object, PropTypes.arrayOf(PropTypes.object)]).isRequired
};
Notice.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/assets/js/url-actions/actions-map.js":
/*!********************************************************!*\
  !*** ../core/app/assets/js/url-actions/actions-map.js ***!
  \********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;
var _default = {
  'import-kit': '/import/process'
};
exports.default = _default;

/***/ }),

/***/ "../core/app/assets/js/utils/utils.js":
/*!********************************************!*\
  !*** ../core/app/assets/js/utils/utils.js ***!
  \********************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.isOneOf = exports.rgbToHex = exports.stringToRemValues = exports.arrayToClassName = exports.pxToRem = void 0;

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _typeof2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/typeof */ "../node_modules/@babel/runtime-corejs2/helpers/typeof.js"));

__webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");

__webpack_require__(/*! core-js/modules/es6.regexp.to-string.js */ "../node_modules/core-js/modules/es6.regexp.to-string.js");

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

__webpack_require__(/*! core-js/modules/es6.regexp.split.js */ "../node_modules/core-js/modules/es6.regexp.split.js");

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

var pxToRem = function pxToRem(pixels) {
  if (!pixels) {
    return;
  } else if ('string' !== typeof pixels) {
    pixels = pixels.toString();
  }

  return pixels.split(' ').map(function (value) {
    return "".concat(value * 0.0625, "rem");
  }).join(' ');
};

exports.pxToRem = pxToRem;

var arrayToClassName = function arrayToClassName(array, action) {
  return array.filter(function (item) {
    return 'object' === (0, _typeof2.default)(item) ? (0, _entries.default)(item)[0][1] : item;
  }).map(function (item) {
    var value = 'object' === (0, _typeof2.default)(item) ? (0, _entries.default)(item)[0][0] : item;
    return action ? action(value) : value;
  }).join(' ');
};

exports.arrayToClassName = arrayToClassName;

var stringToRemValues = function stringToRemValues(string) {
  return string.split(' ').map(function (value) {
    return pxToRem(value);
  }).join(' ');
};

exports.stringToRemValues = stringToRemValues;

var rgbToHex = function rgbToHex(r, g, b) {
  return '#' + [r, g, b].map(function (x) {
    var hex = x.toString(16);
    return 1 === hex.length ? '0' + hex : hex;
  }).join('');
};

exports.rgbToHex = rgbToHex;

var isOneOf = function isOneOf(filetype, filetypeOptions) {
  return filetypeOptions.some(function (type) {
    return filetype.includes(type);
  });
};

exports.isOneOf = isOneOf;

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/context/context-provider.js":
/*!*******************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/context/context-provider.js ***!
  \*******************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ContextProvider;
exports.Context = void 0;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _contextReducer = __webpack_require__(/*! ./context-reducer */ "../core/app/modules/import-export/assets/js/context/context-reducer.js");

var Context = _react.default.createContext();

exports.Context = Context;

function ContextProvider(props) {
  var initialState = {
    includes: [],
    downloadUrl: '',
    fileResponse: null,
    file: null,
    overrideConditions: [],
    referrer: null,
    kitInfo: {
      title: null,
      description: null
    }
  },
      _useReducer = (0, _react.useReducer)(_contextReducer.reducer, initialState),
      _useReducer2 = (0, _slicedToArray2.default)(_useReducer, 2),
      data = _useReducer2[0],
      dispatch = _useReducer2[1];

  return /*#__PURE__*/_react.default.createElement(Context.Provider, {
    value: {
      data: data,
      dispatch: dispatch
    }
  }, props.children);
}

ContextProvider.propTypes = {
  children: PropTypes.object.isRequired
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/context/context-reducer.js":
/*!******************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/context/context-reducer.js ***!
  \******************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.reducer = void 0;

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/toConsumableArray */ "../node_modules/@babel/runtime-corejs2/helpers/toConsumableArray.js"));

var _objectSpread4 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var ReducerActions = /*#__PURE__*/function () {
  function ReducerActions() {
    (0, _classCallCheck2.default)(this, ReducerActions);
  }

  (0, _createClass2.default)(ReducerActions, null, [{
    key: "updateArray",
    value: function updateArray(state, key, value, action) {
      if ('add' === action) {
        // If the value already exists, then do nothing.
        if (state[key].includes(value)) {
          return state;
        }

        return (0, _objectSpread4.default)((0, _objectSpread4.default)({}, state), {}, (0, _defineProperty2.default)({}, key, [].concat((0, _toConsumableArray2.default)(state[key]), [value])));
      } else if ('remove' === action) {
        return (0, _objectSpread4.default)((0, _objectSpread4.default)({}, state), {}, (0, _defineProperty2.default)({}, key, state[key].filter(function (item) {
          return item !== value;
        })));
      }

      return state;
    }
  }]);
  return ReducerActions;
}();

var reducer = function reducer(state, action) {
  switch (action.type) {
    case 'SET_DOWNLOAD_URL':
      return (0, _objectSpread4.default)((0, _objectSpread4.default)({}, state), {}, {
        downloadUrl: action.payload
      });

    case 'ADD_INCLUDE':
      return ReducerActions.updateArray(state, 'includes', action.payload, 'add');

    case 'REMOVE_INCLUDE':
      return ReducerActions.updateArray(state, 'includes', action.payload, 'remove');

    case 'SET_FILE_RESPONSE':
      return (0, _objectSpread4.default)((0, _objectSpread4.default)({}, state), {}, {
        fileResponse: action.payload
      });

    case 'SET_FILE':
      return (0, _objectSpread4.default)((0, _objectSpread4.default)({}, state), {}, {
        file: action.payload
      });

    case 'ADD_OVERRIDE_CONDITION':
      return ReducerActions.updateArray(state, 'overrideConditions', action.payload, 'add');

    case 'REMOVE_OVERRIDE_CONDITION':
      return ReducerActions.updateArray(state, 'overrideConditions', action.payload, 'remove');

    case 'SET_KIT_TITLE':
      return (0, _objectSpread4.default)((0, _objectSpread4.default)({}, state), {}, {
        kitInfo: (0, _objectSpread4.default)((0, _objectSpread4.default)({}, state.kitInfo), {}, {
          title: action.payload
        })
      });

    case 'SET_KIT_DESCRIPTION':
      return (0, _objectSpread4.default)((0, _objectSpread4.default)({}, state), {}, {
        kitInfo: (0, _objectSpread4.default)((0, _objectSpread4.default)({}, state.kitInfo), {}, {
          description: action.payload
        })
      });

    case 'SET_REFERRER':
      return (0, _objectSpread4.default)((0, _objectSpread4.default)({}, state), {}, {
        referrer: action.payload
      });

    case 'SET_INCLUDES':
      return (0, _objectSpread4.default)((0, _objectSpread4.default)({}, state), {}, {
        includes: action.payload
      });

    default:
      return state;
  }
};

exports.reducer = reducer;

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/export.js":
/*!*************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/export.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Export;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _contextProvider = _interopRequireDefault(__webpack_require__(/*! ./context/context-provider */ "../core/app/modules/import-export/assets/js/context/context-provider.js"));

var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js");

var _router2 = _interopRequireDefault(__webpack_require__(/*! @elementor/router */ "@elementor/router"));

var _exportKit = _interopRequireDefault(__webpack_require__(/*! ./pages/export/export-kit/export-kit */ "../core/app/modules/import-export/assets/js/pages/export/export-kit/export-kit.js"));

var _exportComplete = _interopRequireDefault(__webpack_require__(/*! ./pages/export/export-complete/export-complete */ "../core/app/modules/import-export/assets/js/pages/export/export-complete/export-complete.js"));

var _exportProcess = _interopRequireDefault(__webpack_require__(/*! ./pages/export/export-process/export-process */ "../core/app/modules/import-export/assets/js/pages/export/export-process/export-process.js"));

function Export() {
  return /*#__PURE__*/_react.default.createElement(_contextProvider.default, null, /*#__PURE__*/_react.default.createElement(_router.LocationProvider, {
    history: _router2.default.appHistory
  }, /*#__PURE__*/_react.default.createElement(_router.Router, null, /*#__PURE__*/_react.default.createElement(_exportComplete.default, {
    path: "complete"
  }), /*#__PURE__*/_react.default.createElement(_exportProcess.default, {
    path: "process"
  }), /*#__PURE__*/_react.default.createElement(_exportKit.default, {
    default: true
  }))));
}

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/import.js":
/*!*************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/import.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Import;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _contextProvider = _interopRequireDefault(__webpack_require__(/*! ./context/context-provider */ "../core/app/modules/import-export/assets/js/context/context-provider.js"));

var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js");

var _router2 = _interopRequireDefault(__webpack_require__(/*! @elementor/router */ "@elementor/router"));

var _importKit = _interopRequireDefault(__webpack_require__(/*! ./pages/import/import-kit/import-kit */ "../core/app/modules/import-export/assets/js/pages/import/import-kit/import-kit.js"));

var _importContent = _interopRequireDefault(__webpack_require__(/*! ./pages/import/import-content/import-content */ "../core/app/modules/import-export/assets/js/pages/import/import-content/import-content.js"));

var _importResolver = _interopRequireDefault(__webpack_require__(/*! ./pages/import/import-resolver/import-resolver */ "../core/app/modules/import-export/assets/js/pages/import/import-resolver/import-resolver.js"));

var _importProcess = _interopRequireDefault(__webpack_require__(/*! ./pages/import/import-process/import-process */ "../core/app/modules/import-export/assets/js/pages/import/import-process/import-process.js"));

var _importComplete = _interopRequireDefault(__webpack_require__(/*! ./pages/import/import-complete/import-complete */ "../core/app/modules/import-export/assets/js/pages/import/import-complete/import-complete.js"));

function Import() {
  return /*#__PURE__*/_react.default.createElement(_contextProvider.default, null, /*#__PURE__*/_react.default.createElement(_router.LocationProvider, {
    history: _router2.default.appHistory
  }, /*#__PURE__*/_react.default.createElement(_router.Router, null, /*#__PURE__*/_react.default.createElement(_importComplete.default, {
    path: "complete"
  }), /*#__PURE__*/_react.default.createElement(_importProcess.default, {
    path: "process"
  }), /*#__PURE__*/_react.default.createElement(_importResolver.default, {
    path: "resolver"
  }), /*#__PURE__*/_react.default.createElement(_importContent.default, {
    path: "content"
  }), /*#__PURE__*/_react.default.createElement(_importKit.default, {
    default: true
  }))));
}

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/module.js":
/*!*************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/module.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _createForOfIteratorHelper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createForOfIteratorHelper */ "../node_modules/@babel/runtime-corejs2/helpers/createForOfIteratorHelper.js"));

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _router = _interopRequireDefault(__webpack_require__(/*! @elementor/router */ "@elementor/router"));

var _import = _interopRequireDefault(__webpack_require__(/*! ./import */ "../core/app/modules/import-export/assets/js/import.js"));

var _export = _interopRequireDefault(__webpack_require__(/*! ./export */ "../core/app/modules/import-export/assets/js/export.js"));

var ImportExport = function ImportExport() {
  (0, _classCallCheck2.default)(this, ImportExport);
  (0, _defineProperty2.default)(this, "routes", [{
    path: '/import/*',
    component: _import.default
  }, {
    path: '/export/*',
    component: _export.default
  }]);

  var _iterator = (0, _createForOfIteratorHelper2.default)(this.routes),
      _step;

  try {
    for (_iterator.s(); !(_step = _iterator.n()).done;) {
      var route = _step.value;

      _router.default.addRoute(route);
    }
  } catch (err) {
    _iterator.e(err);
  } finally {
    _iterator.f();
  }
};

exports.default = ImportExport;

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/pages/export/export-complete/export-complete.js":
/*!***************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/pages/export/export-complete/export-complete.js ***!
  \***************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ExportComplete;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _contextProvider = __webpack_require__(/*! ../../../context/context-provider */ "../core/app/modules/import-export/assets/js/context/context-provider.js");

var _layout = _interopRequireDefault(__webpack_require__(/*! ../../../templates/layout */ "../core/app/modules/import-export/assets/js/templates/layout.js"));

var _wizardStep = _interopRequireDefault(__webpack_require__(/*! ../../../ui/wizard-step/wizard-step */ "../core/app/modules/import-export/assets/js/ui/wizard-step/wizard-step.js"));

var _kitData = _interopRequireDefault(__webpack_require__(/*! ../../../shared/kit-data/kit-data */ "../core/app/modules/import-export/assets/js/shared/kit-data/kit-data.js"));

var _inlineLink = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/inline-link */ "../core/app/assets/js/ui/molecules/inline-link.js"));

var _wizardFooter = _interopRequireDefault(__webpack_require__(/*! elementor-app/organisms/wizard-footer */ "../core/app/assets/js/organisms/wizard-footer.js"));

var _dashboardButton = _interopRequireDefault(__webpack_require__(/*! elementor-app/molecules/dashboard-button */ "../core/app/assets/js/molecules/dashboard-button.js"));

__webpack_require__(/*! ./export-complete.scss */ "../core/app/modules/import-export/assets/js/pages/export/export-complete/export-complete.scss");

function ExportComplete() {
  var _context$data$fileRes;

  var context = (0, _react.useContext)(_contextProvider.Context),
      downloadLink = (0, _react.useRef)(null),
      getFooter = function getFooter() {
    return /*#__PURE__*/_react.default.createElement(_wizardFooter.default, {
      separator: true,
      justify: "end"
    }, /*#__PURE__*/_react.default.createElement(_dashboardButton.default, null));
  },
      downloadFile = function downloadFile() {
    if (!downloadLink.current) {
      var link = document.createElement('a');
      link.href = 'data:text/plain;base64,' + context.data.fileResponse.file;
      link.download = 'elementor-kit.zip';
      downloadLink.current = link;
    }

    downloadLink.current.click();
  },
      getDownloadLink = function getDownloadLink() {
    return /*#__PURE__*/_react.default.createElement(_inlineLink.default, {
      onClick: downloadFile,
      italic: true
    }, __('Click Here', 'elementor'));
  };

  (0, _react.useEffect)(function () {
    if (context.data.downloadUrl) {
      downloadFile();
    }
  }, [context.data.downloadUrl]);
  return /*#__PURE__*/_react.default.createElement(_layout.default, {
    type: "export",
    footer: getFooter()
  }, /*#__PURE__*/_react.default.createElement(_wizardStep.default, {
    image: elementorAppConfig.assets_url + 'images/go-pro.svg',
    heading: __('Your export is ready!', 'elementor'),
    description: __('Now you can import this kit and use it on other sites.', 'elementor'),
    notice: /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, __('Download not working?', 'elementor'), " ", getDownloadLink(), " ", __('to download', 'elementor'))
  }, /*#__PURE__*/_react.default.createElement(_kitData.default, {
    data: (_context$data$fileRes = context.data.fileResponse) === null || _context$data$fileRes === void 0 ? void 0 : _context$data$fileRes.manifest
  })));
}

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/pages/export/export-kit/components/export-button/export-button.js":
/*!*********************************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/pages/export/export-kit/components/export-button/export-button.js ***!
  \*********************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ExportButton;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js");

var _contextProvider = __webpack_require__(/*! ../../../../../context/context-provider */ "../core/app/modules/import-export/assets/js/context/context-provider.js");

var _button = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/button */ "../core/app/assets/js/ui/molecules/button.js"));

function ExportButton() {
  var context = (0, _react.useContext)(_contextProvider.Context),
      navigate = (0, _router.useNavigate)(),
      _useState = (0, _react.useState)(false),
      _useState2 = (0, _slicedToArray2.default)(_useState, 2),
      isDownloadAllowed = _useState2[0],
      setIsDownloadAllowed = _useState2[1],
      getDownloadUrl = function getDownloadUrl() {
    var exportURL = elementorAppConfig['import-export'].exportURL,
        exportData = {
      elementor_export_kit: {
        include: context.data.includes,
        kitInfo: context.data.kitInfo
      }
    };
    return exportURL + '&' + jQuery.param(exportData);
  };

  (0, _react.useEffect)(function () {
    setIsDownloadAllowed(!!context.data.includes.length);
  }, [context.data.includes]);
  (0, _react.useEffect)(function () {
    if (context.data.downloadUrl) {
      navigate('/export/process');
    }
  }, [context.data.downloadUrl]);
  return /*#__PURE__*/_react.default.createElement(_button.default, {
    variant: "contained",
    text: __('Export', 'elementor'),
    color: isDownloadAllowed ? 'primary' : 'disabled',
    onClick: function onClick() {
      if (isDownloadAllowed) {
        context.dispatch({
          type: 'SET_DOWNLOAD_URL',
          payload: getDownloadUrl()
        });
      }
    }
  });
}

ExportButton.propTypes = {
  setIsDownloading: PropTypes.func
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/pages/export/export-kit/components/kit-description/kit-description.js":
/*!*************************************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/pages/export/export-kit/components/kit-description/kit-description.js ***!
  \*************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = KitDescription;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _contextProvider = __webpack_require__(/*! ../../../../../context/context-provider */ "../core/app/modules/import-export/assets/js/context/context-provider.js");

var _textField = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/text-field */ "../core/app/assets/js/ui/atoms/text-field.js"));

function KitDescription() {
  var context = (0, _react.useContext)(_contextProvider.Context);
  return /*#__PURE__*/_react.default.createElement(_textField.default, {
    variant: "outlined",
    placeholder: __('Say something about the style and content of these files...', 'elementor'),
    multiline: true,
    rows: 5,
    onChange: function onChange(event) {
      context.dispatch({
        type: 'SET_KIT_DESCRIPTION',
        payload: event.target.value
      });
    }
  });
}

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/pages/export/export-kit/components/kit-info-modal/kit-info-modal.js":
/*!***********************************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/pages/export/export-kit/components/kit-info-modal/kit-info-modal.js ***!
  \***********************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = KitInfoModal;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

var _modal = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/modal/modal */ "../core/app/assets/js/ui/modal/modal.js"));

var _heading = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/heading */ "../core/app/assets/js/ui/atoms/heading.js"));

var _text = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/text */ "../core/app/assets/js/ui/atoms/text.js"));

function KitInfoModal(props) {
  return /*#__PURE__*/_react.default.createElement(_modal.default, (0, _extends2.default)({}, props, {
    className: "e-app-export-kit-info-modal",
    title: __('Template Kit Information', 'elementor')
  }), /*#__PURE__*/_react.default.createElement(_modal.default.Section, null, /*#__PURE__*/_react.default.createElement(_heading.default, {
    className: "e-app-export-kit-info-modal__heading",
    variant: "h2",
    tag: "h3"
  }, __('What is kit information?', 'elementor')), /*#__PURE__*/_react.default.createElement(_text.default, null, __('These are the details you’ll use to quickly find and apply this kit in the future, even as your collection grows.', 'elementor'))));
}

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/pages/export/export-kit/components/kit-name/kit-name.js":
/*!***********************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/pages/export/export-kit/components/kit-name/kit-name.js ***!
  \***********************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = KitName;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _contextProvider = __webpack_require__(/*! ../../../../../context/context-provider */ "../core/app/modules/import-export/assets/js/context/context-provider.js");

var _textField = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/text-field */ "../core/app/assets/js/ui/atoms/text-field.js"));

function KitName() {
  var context = (0, _react.useContext)(_contextProvider.Context);
  return /*#__PURE__*/_react.default.createElement(_textField.default, {
    variant: "outlined",
    placeholder: __('Elementor Kit', 'elementor'),
    onChange: function onChange(event) {
      context.dispatch({
        type: 'SET_KIT_TITLE',
        payload: event.target.value
      });
    }
  });
}

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/pages/export/export-kit/export-kit.js":
/*!*****************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/pages/export/export-kit/export-kit.js ***!
  \*****************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ExportKit;

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _layout = _interopRequireDefault(__webpack_require__(/*! ../../../templates/layout */ "../core/app/modules/import-export/assets/js/templates/layout.js"));

var _pageHeader = _interopRequireDefault(__webpack_require__(/*! ../../../ui/page-header/page-header */ "../core/app/modules/import-export/assets/js/ui/page-header/page-header.js"));

var _exportButton = _interopRequireDefault(__webpack_require__(/*! ./components/export-button/export-button */ "../core/app/modules/import-export/assets/js/pages/export/export-kit/components/export-button/export-button.js"));

var _kitContent = _interopRequireDefault(__webpack_require__(/*! ../../../shared/kit-content/kit-content */ "../core/app/modules/import-export/assets/js/shared/kit-content/kit-content.js"));

var _panel = _interopRequireDefault(__webpack_require__(/*! ../../../ui/panel/panel */ "../core/app/modules/import-export/assets/js/ui/panel/panel.js"));

var _kitName = _interopRequireDefault(__webpack_require__(/*! ./components/kit-name/kit-name */ "../core/app/modules/import-export/assets/js/pages/export/export-kit/components/kit-name/kit-name.js"));

var _kitDescription = _interopRequireDefault(__webpack_require__(/*! ./components/kit-description/kit-description */ "../core/app/modules/import-export/assets/js/pages/export/export-kit/components/kit-description/kit-description.js"));

var _kitInfoModal = _interopRequireDefault(__webpack_require__(/*! ./components/kit-info-modal/kit-info-modal */ "../core/app/modules/import-export/assets/js/pages/export/export-kit/components/kit-info-modal/kit-info-modal.js"));

var _grid = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/grid/grid */ "../core/app/assets/js/ui/grid/grid.js"));

var _heading = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/heading */ "../core/app/assets/js/ui/atoms/heading.js"));

var _inlineLink = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/inline-link */ "../core/app/assets/js/ui/molecules/inline-link.js"));

var _button = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/button */ "../core/app/assets/js/ui/molecules/button.js"));

var _wizardFooter = _interopRequireDefault(__webpack_require__(/*! elementor-app/organisms/wizard-footer */ "../core/app/assets/js/organisms/wizard-footer.js"));

__webpack_require__(/*! ./export-kit.scss */ "../core/app/modules/import-export/assets/js/pages/export/export-kit/export-kit.scss");

function ExportKit() {
  var _useState = (0, _react.useState)(false),
      _useState2 = (0, _slicedToArray2.default)(_useState, 2),
      showKitInfoModal = _useState2[0],
      setShowKitInfoModal = _useState2[1],
      kitInfoTitle = __('Kit Information', 'elementor'),
      getFooter = function getFooter() {
    return /*#__PURE__*/_react.default.createElement(_wizardFooter.default, {
      separator: true,
      justify: "end"
    }, /*#__PURE__*/_react.default.createElement(_exportButton.default, null));
  },
      getLearnMoreLink = function getLearnMoreLink() {
    return /*#__PURE__*/_react.default.createElement(_inlineLink.default, {
      url: "https://go.elementor.com/app-what-are-kits",
      italic: true
    }, __('Learn More', 'elementor'));
  };

  return /*#__PURE__*/_react.default.createElement(_layout.default, {
    type: "export",
    footer: getFooter()
  }, /*#__PURE__*/_react.default.createElement("section", {
    className: "e-app-export-kit"
  }, /*#__PURE__*/_react.default.createElement(_pageHeader.default, {
    heading: __('Export a Template Kit', 'elementor'),
    description: [__('Choose which Elementor components - templates, content and site settings - to include in your kit file.', 'elementor'), /*#__PURE__*/_react.default.createElement(_react.default.Fragment, {
      key: "description-secondary-line"
    }, __('By default, all of your components will be exported.', 'elementor'), " ", getLearnMoreLink())]
  }), /*#__PURE__*/_react.default.createElement(_kitContent.default, null), /*#__PURE__*/_react.default.createElement(_panel.default, {
    className: "e-app-export-kit-information"
  }, /*#__PURE__*/_react.default.createElement(_panel.default.Header, null, /*#__PURE__*/_react.default.createElement(_panel.default.Headline, null, kitInfoTitle, /*#__PURE__*/_react.default.createElement(_button.default, {
    className: "e-app-export-kit-info-modal__icon",
    icon: "eicon-info-circle",
    color: "secondary",
    hideText: true,
    text: kitInfoTitle,
    onClick: function onClick(event) {
      event.stopPropagation();
      setShowKitInfoModal(function (prevState) {
        return !prevState;
      });
    }
  }))), /*#__PURE__*/_react.default.createElement(_panel.default.Body, null, /*#__PURE__*/_react.default.createElement(_grid.default, {
    container: true,
    spacing: 20
  }, /*#__PURE__*/_react.default.createElement(_grid.default, {
    item: true,
    md: 4
  }, /*#__PURE__*/_react.default.createElement(_grid.default, {
    container: true,
    direction: "column"
  }, /*#__PURE__*/_react.default.createElement(_grid.default, {
    className: "e-app-export-kit-information__field-header",
    container: true,
    alignItems: "center"
  }, /*#__PURE__*/_react.default.createElement(_heading.default, {
    className: "e-app-export-kit-information__label",
    variant: "h6",
    tag: "h4"
  }, __('Kit Name', 'elementor'))), /*#__PURE__*/_react.default.createElement(_grid.default, {
    item: true
  }, /*#__PURE__*/_react.default.createElement(_kitName.default, null)))), /*#__PURE__*/_react.default.createElement(_grid.default, {
    item: true,
    md: 4
  }, /*#__PURE__*/_react.default.createElement(_grid.default, {
    className: "e-app-export-kit-information__field-header",
    container: true,
    alignItems: "center"
  }, /*#__PURE__*/_react.default.createElement(_heading.default, {
    className: "e-app-export-kit-information__label",
    variant: "h6",
    tag: "h4"
  }, __('Kit Description', 'elementor'))), /*#__PURE__*/_react.default.createElement(_grid.default, {
    item: true
  }, /*#__PURE__*/_react.default.createElement(_kitDescription.default, null)))))), /*#__PURE__*/_react.default.createElement(_kitInfoModal.default, {
    show: showKitInfoModal,
    setShow: setShowKitInfoModal
  })));
}

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/pages/export/export-process/export-process.js":
/*!*************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/pages/export/export-process/export-process.js ***!
  \*************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ExportProcess;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js");

var _layout = _interopRequireDefault(__webpack_require__(/*! ../../../templates/layout */ "../core/app/modules/import-export/assets/js/templates/layout.js"));

var _fileProcess = _interopRequireDefault(__webpack_require__(/*! ../../../shared/file-process/file-process */ "../core/app/modules/import-export/assets/js/shared/file-process/file-process.js"));

var _contextProvider = __webpack_require__(/*! ../../../context/context-provider */ "../core/app/modules/import-export/assets/js/context/context-provider.js");

var _useAjax2 = _interopRequireDefault(__webpack_require__(/*! elementor-app/hooks/use-ajax */ "../core/app/assets/js/hooks/use-ajax.js"));

function ExportProcess() {
  var _useAjax = (0, _useAjax2.default)(),
      ajaxState = _useAjax.ajaxState,
      setAjax = _useAjax.setAjax,
      context = (0, _react.useContext)(_contextProvider.Context),
      navigate = (0, _router.useNavigate)(),
      onLoad = function onLoad() {
    if (context.data.downloadUrl) {
      setAjax({
        url: context.data.downloadUrl,
        headers: {
          'Content-Type': 'application/json'
        }
      });
    }
  },
      onSuccess = function onSuccess() {
    return context.dispatch({
      type: 'SET_FILE_RESPONSE',
      payload: ajaxState.response
    });
  },
      onDialogDismiss = function onDialogDismiss() {
    context.dispatch({
      type: 'SET_DOWNLOAD_URL',
      payload: ''
    });
    navigate('export');
  };

  (0, _react.useEffect)(function () {
    if (context.data.fileResponse) {
      navigate('export/complete');
    }
  }, [context.data.fileResponse]);
  return /*#__PURE__*/_react.default.createElement(_layout.default, {
    type: "export"
  }, /*#__PURE__*/_react.default.createElement(_fileProcess.default, {
    status: ajaxState.status,
    onLoad: onLoad,
    onSuccess: onSuccess,
    onDialogApprove: function onDialogApprove() {
      return window.open('https://elementor.com/help/export-kit?utm_source=import-export&utm_medium=wp-dash&utm_campaign=learn', '_blank');
    },
    onDialogDismiss: onDialogDismiss
  }));
}

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/pages/import/import-complete/import-complete.js":
/*!***************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/pages/import/import-complete/import-complete.js ***!
  \***************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ImportComplete;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

var _contextProvider = __webpack_require__(/*! ../../../context/context-provider */ "../core/app/modules/import-export/assets/js/context/context-provider.js");

var _layout = _interopRequireDefault(__webpack_require__(/*! ../../../templates/layout */ "../core/app/modules/import-export/assets/js/templates/layout.js"));

var _wizardStep = _interopRequireDefault(__webpack_require__(/*! ../../../ui/wizard-step/wizard-step */ "../core/app/modules/import-export/assets/js/ui/wizard-step/wizard-step.js"));

var _kitData = _interopRequireDefault(__webpack_require__(/*! ../../../shared/kit-data/kit-data */ "../core/app/modules/import-export/assets/js/shared/kit-data/kit-data.js"));

var _inlineLink = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/inline-link */ "../core/app/assets/js/ui/molecules/inline-link.js"));

var _dashboardButton = _interopRequireDefault(__webpack_require__(/*! elementor-app/molecules/dashboard-button */ "../core/app/assets/js/molecules/dashboard-button.js"));

var _wizardFooter = _interopRequireDefault(__webpack_require__(/*! elementor-app/organisms/wizard-footer */ "../core/app/assets/js/organisms/wizard-footer.js"));

function ImportComplete() {
  var context = (0, _react.useContext)(_contextProvider.Context),
      getFooter = function getFooter() {
    return /*#__PURE__*/_react.default.createElement(_wizardFooter.default, {
      separator: true,
      justify: "end"
    }, /*#__PURE__*/_react.default.createElement(_dashboardButton.default, null));
  },
      getTemplates = function getTemplates(templates, importedData) {
    var kitTemplates = {};

    for (var key in importedData === null || importedData === void 0 ? void 0 : (_importedData$templat = importedData.templates) === null || _importedData$templat === void 0 ? void 0 : _importedData$templat.succeed) {
      var _importedData$templat;

      kitTemplates[key] = templates[key];
    }

    return kitTemplates;
  },
      getContent = function getContent(content, importedData) {
    var kitContent = {};

    for (var contentType in importedData === null || importedData === void 0 ? void 0 : importedData.content) {
      kitContent[contentType] = {};

      for (var key in (_importedData$content = importedData.content[contentType]) === null || _importedData$content === void 0 ? void 0 : _importedData$content.succeed) {
        var _importedData$content;

        kitContent[contentType][key] = content[contentType][key];
      }
    }

    return kitContent;
  },
      getWPContent = function getWPContent(content, importedData) {
    var kitWPContent = {};

    for (var contentType in importedData === null || importedData === void 0 ? void 0 : importedData['wp-content']) {
      var _importedData$wpCont;

      var succeededItems = (_importedData$wpCont = importedData['wp-content'][contentType]) === null || _importedData$wpCont === void 0 ? void 0 : _importedData$wpCont.succeed;
      kitWPContent[contentType] = succeededItems ? (0, _keys.default)(succeededItems) : [];
    }

    return kitWPContent;
  },
      getKitData = function getKitData() {
    if (!context.data.fileResponse) {
      return {};
    }

    var manifest = context.data.fileResponse.stage1.manifest,
        importedData = context.data.fileResponse.stage2;
    return {
      templates: getTemplates(manifest.templates, importedData),
      content: getContent(manifest.content, importedData),
      'wp-content': getWPContent(manifest['wp-content'], importedData),
      'site-settings': context.data.includes.includes('settings') ? manifest['site-settings'] : {}
    };
  };

  return /*#__PURE__*/_react.default.createElement(_layout.default, {
    type: "import",
    footer: getFooter()
  }, /*#__PURE__*/_react.default.createElement(_wizardStep.default, {
    image: elementorAppConfig.assets_url + 'images/go-pro.svg',
    heading: __('Your kit is now live on your site!', 'elementor'),
    notice: /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_inlineLink.default, {
      url: "https://go.elementor.com/app-what-are-kits",
      italic: true
    }, __('Click Here', 'elementor')), " ", __('to learn more about building your site with Elementor Kits', 'elementor'))
  }, /*#__PURE__*/_react.default.createElement(_kitData.default, {
    data: getKitData()
  })));
}

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/pages/import/import-content/components/import-button/import-button.js":
/*!*************************************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/pages/import/import-content/components/import-button/import-button.js ***!
  \*************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ImportButton;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js");

var _contextProvider = __webpack_require__(/*! ../../../../../context/context-provider */ "../core/app/modules/import-export/assets/js/context/context-provider.js");

var _button = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/button */ "../core/app/assets/js/ui/molecules/button.js"));

function ImportButton() {
  var context = (0, _react.useContext)(_contextProvider.Context),
      navigate = (0, _router.useNavigate)(),
      _useState = (0, _react.useState)(false),
      _useState2 = (0, _slicedToArray2.default)(_useState, 2),
      isImportAllowed = _useState2[0],
      setIsImportAllowed = _useState2[1];

  (0, _react.useEffect)(function () {
    setIsImportAllowed(!!context.data.includes.length);
  }, [context.data.includes]);
  return /*#__PURE__*/_react.default.createElement(_button.default, {
    variant: "contained",
    text: __('Next', 'elementor'),
    color: isImportAllowed ? 'primary' : 'disabled',
    onClick: function onClick() {
      if (isImportAllowed) {
        if (context.data.includes.includes('templates') && context.data.fileResponse.stage1.conflicts) {
          navigate('import/resolver');
        } else {
          navigate('import/process');
        }
      }
    }
  });
}

ImportButton.propTypes = {
  setIsDownloading: PropTypes.func
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/pages/import/import-content/import-content.js":
/*!*************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/pages/import/import-content/import-content.js ***!
  \*************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ImportContent;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js");

var _contextProvider = __webpack_require__(/*! ../../../context/context-provider */ "../core/app/modules/import-export/assets/js/context/context-provider.js");

var _layout = _interopRequireDefault(__webpack_require__(/*! ../../../templates/layout */ "../core/app/modules/import-export/assets/js/templates/layout.js"));

var _pageHeader = _interopRequireDefault(__webpack_require__(/*! ../../../ui/page-header/page-header */ "../core/app/modules/import-export/assets/js/ui/page-header/page-header.js"));

var _kitContent = _interopRequireDefault(__webpack_require__(/*! ../../../shared/kit-content/kit-content */ "../core/app/modules/import-export/assets/js/shared/kit-content/kit-content.js"));

var _inlineLink = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/inline-link */ "../core/app/assets/js/ui/molecules/inline-link.js"));

var _button = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/button */ "../core/app/assets/js/ui/molecules/button.js"));

var _wizardFooter = _interopRequireDefault(__webpack_require__(/*! elementor-app/organisms/wizard-footer */ "../core/app/assets/js/organisms/wizard-footer.js"));

var _importButton = _interopRequireDefault(__webpack_require__(/*! ./components/import-button/import-button */ "../core/app/modules/import-export/assets/js/pages/import/import-content/components/import-button/import-button.js"));

function ImportContent() {
  var _context$data$fileRes, _context$data$fileRes2;

  var context = (0, _react.useContext)(_contextProvider.Context),
      navigate = (0, _router.useNavigate)(),
      getFooter = function getFooter() {
    return /*#__PURE__*/_react.default.createElement(_wizardFooter.default, {
      separator: true,
      justify: "end"
    }, /*#__PURE__*/_react.default.createElement(_button.default, {
      text: __('Previous', 'elementor'),
      variant: "contained",
      onClick: function onClick() {
        return context.dispatch({
          type: 'SET_FILE',
          payload: null
        });
      }
    }), /*#__PURE__*/_react.default.createElement(_importButton.default, null));
  },
      getLearnMoreLink = function getLearnMoreLink() {
    return /*#__PURE__*/_react.default.createElement(_inlineLink.default, {
      url: "https://go.elementor.com/app-what-are-kits",
      italic: true
    }, __('Learn More', 'elementor'));
  };

  (0, _react.useEffect)(function () {
    if (!context.data.file) {
      navigate('import');
    }
  }, [context.data.file]);
  return /*#__PURE__*/_react.default.createElement(_layout.default, {
    type: "import",
    footer: getFooter()
  }, /*#__PURE__*/_react.default.createElement("section", {
    className: "e-app-export-kit"
  }, /*#__PURE__*/_react.default.createElement(_pageHeader.default, {
    heading: __('Import a Template Kit', 'elementor'),
    description: [__('Choose which Elementor components - templates, content and site settings - to include in your kit.', 'elementor'), /*#__PURE__*/_react.default.createElement(_react.default.Fragment, {
      key: "description-secondary-line"
    }, __('By default, all of your components will be imported.', 'elementor'), " ", getLearnMoreLink())]
  }), /*#__PURE__*/_react.default.createElement(_kitContent.default, {
    manifest: (_context$data$fileRes = context.data.fileResponse) === null || _context$data$fileRes === void 0 ? void 0 : (_context$data$fileRes2 = _context$data$fileRes.stage1) === null || _context$data$fileRes2 === void 0 ? void 0 : _context$data$fileRes2.manifest
  })));
}

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/pages/import/import-kit/import-kit.js":
/*!*****************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/pages/import/import-kit/import-kit.js ***!
  \*****************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ImportKit;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _stringify = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/json/stringify */ "../node_modules/@babel/runtime-corejs2/core-js/json/stringify.js"));

__webpack_require__(/*! core-js/modules/es6.regexp.match.js */ "../node_modules/core-js/modules/es6.regexp.match.js");

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js");

var _contextProvider = __webpack_require__(/*! ../../../context/context-provider */ "../core/app/modules/import-export/assets/js/context/context-provider.js");

var _layout = _interopRequireDefault(__webpack_require__(/*! ../../../templates/layout */ "../core/app/modules/import-export/assets/js/templates/layout.js"));

var _pageHeader = _interopRequireDefault(__webpack_require__(/*! ../../../ui/page-header/page-header */ "../core/app/modules/import-export/assets/js/ui/page-header/page-header.js"));

var _importFailedDialog = _interopRequireDefault(__webpack_require__(/*! ../../../shared/import-failed-dialog/import-failed-dialog */ "../core/app/modules/import-export/assets/js/shared/import-failed-dialog/import-failed-dialog.js"));

var _inlineLink = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/inline-link */ "../core/app/assets/js/ui/molecules/inline-link.js"));

var _notice = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/notice */ "../core/app/assets/js/ui/molecules/notice.js"));

var _dropZone = _interopRequireDefault(__webpack_require__(/*! elementor-app/organisms/drop-zone */ "../core/app/assets/js/organisms/drop-zone.js"));

var _button = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/button */ "../core/app/assets/js/ui/molecules/button.js"));

var _useAjax2 = _interopRequireDefault(__webpack_require__(/*! elementor-app/hooks/use-ajax */ "../core/app/assets/js/hooks/use-ajax.js"));

__webpack_require__(/*! ./import-kit.scss */ "../core/app/modules/import-export/assets/js/pages/import/import-kit/import-kit.scss");

function ImportKit() {
  var _useAjax = (0, _useAjax2.default)(),
      ajaxState = _useAjax.ajaxState,
      setAjax = _useAjax.setAjax,
      ajaxActions = _useAjax.ajaxActions,
      _useState = (0, _react.useState)(false),
      _useState2 = (0, _slicedToArray2.default)(_useState, 2),
      isImportFailed = _useState2[0],
      setIsImportFailed = _useState2[1],
      _useState3 = (0, _react.useState)(false),
      _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
      isLoading = _useState4[0],
      setIsLoading = _useState4[1],
      context = (0, _react.useContext)(_contextProvider.Context),
      navigate = (0, _router.useNavigate)(),
      referrer = location.hash.match('referrer=([^&]+)'),
      resetImportProcess = function resetImportProcess() {
    context.dispatch({
      type: 'SET_FILE',
      payload: null
    });
    setIsImportFailed(false);
    setIsLoading(false);
    ajaxActions.reset();
  },
      getLearnMoreLink = function getLearnMoreLink() {
    return /*#__PURE__*/_react.default.createElement(_inlineLink.default, {
      url: "https://go.elementor.com/app-what-are-kits",
      key: "learn-more-link",
      italic: true
    }, __('Learn More', 'elementor'));
  };

  (0, _react.useEffect)(function () {
    if (context.data.file) {
      setAjax({
        data: {
          e_import_file: context.data.file,
          action: 'elementor_import_kit',
          data: (0, _stringify.default)({
            stage: 1
          })
        }
      });
    }
  }, [context.data.file]);
  (0, _react.useEffect)(function () {
    if ('success' === ajaxState.status) {
      context.dispatch({
        type: 'SET_FILE_RESPONSE',
        payload: {
          stage1: ajaxState.response
        }
      });
    } else if ('error' === ajaxState.status) {
      setIsImportFailed(true);
    }
  }, [ajaxState.status]);
  (0, _react.useEffect)(function () {
    if (context.data.fileResponse && context.data.file) {
      navigate('/import/content');
    }
  }, [context.data.fileResponse]);
  (0, _react.useEffect)(function () {
    context.dispatch({
      type: 'SET_INCLUDES',
      payload: []
    });
  }, []);
  return /*#__PURE__*/_react.default.createElement(_layout.default, {
    type: "import"
  }, /*#__PURE__*/_react.default.createElement("section", {
    className: "e-app-import"
  }, 'kit-library' === (referrer === null || referrer === void 0 ? void 0 : referrer[1]) && /*#__PURE__*/_react.default.createElement(_button.default, {
    className: "e-app-import__back-to-library",
    icon: "eicon-chevron-left",
    text: __('Back to Kit Library', 'elementor'),
    onClick: function onClick() {
      return navigate('/kit-library');
    }
  }), /*#__PURE__*/_react.default.createElement(_pageHeader.default, {
    heading: __('Import a Template Kit', 'elementor'),
    description: [__('Upload a file with templates, site settings, content, etc., and apply them to your site automatically.', 'elementor'), getLearnMoreLink()]
  }), /*#__PURE__*/_react.default.createElement(_notice.default, {
    label: __('Important', 'elementor'),
    color: "warning",
    className: "e-app-import__notice"
  }, __('We recommend that you backup your site before importing a kit file.', 'elementor')), /*#__PURE__*/_react.default.createElement(_dropZone.default, {
    className: "e-app-import__drop-zone",
    heading: __('Upload Files to Your Library', 'elementor'),
    text: __('Drag & drop the .zip file with your Kit', 'elementor'),
    secondaryText: __('Or', 'elementor'),
    filetypes: ['zip'],
    onFileSelect: function onFileSelect(file) {
      setIsLoading(true);
      context.dispatch({
        type: 'SET_FILE',
        payload: file
      });
    },
    onError: function onError() {
      return setIsImportFailed(true);
    },
    isLoading: isLoading
  }), isImportFailed && /*#__PURE__*/_react.default.createElement(_importFailedDialog.default, {
    onApprove: function onApprove() {
      return window.open('https://elementor.com/help/import-kit?utm_source=import-export&utm_medium=wp-dash&utm_campaign=learn', '_blank');
    },
    onDismiss: resetImportProcess
  })));
}

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/pages/import/import-process/import-process.js":
/*!*************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/pages/import/import-process/import-process.js ***!
  \*************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ImportProcess;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

var _stringify = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/json/stringify */ "../node_modules/@babel/runtime-corejs2/core-js/json/stringify.js"));

__webpack_require__(/*! core-js/modules/es6.regexp.search.js */ "../node_modules/core-js/modules/es6.regexp.search.js");

__webpack_require__(/*! core-js/modules/es6.object.to-string.js */ "../node_modules/core-js/modules/es6.object.to-string.js");

__webpack_require__(/*! core-js/modules/es6.array.iterator.js */ "../node_modules/core-js/modules/es6.array.iterator.js");

__webpack_require__(/*! core-js/modules/web.dom.iterable.js */ "../node_modules/core-js/modules/web.dom.iterable.js");

__webpack_require__(/*! core-js/modules/es6.regexp.match.js */ "../node_modules/core-js/modules/es6.regexp.match.js");

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js");

var _layout = _interopRequireDefault(__webpack_require__(/*! ../../../templates/layout */ "../core/app/modules/import-export/assets/js/templates/layout.js"));

var _fileProcess = _interopRequireDefault(__webpack_require__(/*! ../../../shared/file-process/file-process */ "../core/app/modules/import-export/assets/js/shared/file-process/file-process.js"));

var _contextProvider = __webpack_require__(/*! ../../../context/context-provider */ "../core/app/modules/import-export/assets/js/context/context-provider.js");

var _useAjax2 = _interopRequireDefault(__webpack_require__(/*! elementor-app/hooks/use-ajax */ "../core/app/assets/js/hooks/use-ajax.js"));

function ImportProcess() {
  var _location$hash$match;

  var _useAjax = (0, _useAjax2.default)(),
      ajaxState = _useAjax.ajaxState,
      setAjax = _useAjax.setAjax,
      context = (0, _react.useContext)(_contextProvider.Context),
      navigate = (0, _router.useNavigate)(),
      urlSearchParams = new URLSearchParams(window.location.search),
      queryParams = Object.fromEntries(urlSearchParams.entries()),
      fileURL = (queryParams === null || queryParams === void 0 ? void 0 : queryParams['file_url']) || ((_location$hash$match = location.hash.match('file_url=([^&]+)')) === null || _location$hash$match === void 0 ? void 0 : _location$hash$match[1]),
      onLoad = function onLoad() {
    var ajaxConfig = {
      data: {
        action: 'elementor_import_kit'
      }
    };

    if (fileURL || context.data.fileResponse) {
      if (fileURL && !context.data.file) {
        // When the starting point of the app is the import/process screen and importing via file_url.
        var decodedFileURL = decodeURIComponent(fileURL);
        context.dispatch({
          type: 'SET_FILE',
          payload: decodedFileURL
        });
        ajaxConfig.data.e_import_file = decodedFileURL;
        ajaxConfig.data.data = (0, _stringify.default)({
          stage: 1
        });
        var referrer = location.hash.match('referrer=([^&]+)');

        if (referrer) {
          context.dispatch({
            type: 'SET_REFERRER',
            payload: referrer[1]
          });
        }
      } else {
        // When the import/process is the second step of the kit import process, after selecting the kit content.
        ajaxConfig.data.data = {
          stage: 2,
          session: context.data.fileResponse.stage1.session,
          include: context.data.includes,
          overrideConditions: context.data.overrideConditions
        };

        if (context.data.referrer) {
          ajaxConfig.data.data.referrer = context.data.referrer;
        }

        ajaxConfig.data.data = (0, _stringify.default)(ajaxConfig.data.data);
      }

      setAjax(ajaxConfig);
    }
  },
      onSuccess = function onSuccess() {
    var _context$data$fileRes;

    if ((_context$data$fileRes = context.data.fileResponse) !== null && _context$data$fileRes !== void 0 && _context$data$fileRes.stage1) {
      var previousFileResponse = context.data.fileResponse,
          fileResponse = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, previousFileResponse), {}, {
        stage2: ajaxState.response
      });
      context.dispatch({
        type: 'SET_FILE_RESPONSE',
        payload: fileResponse
      });
    } else {
      context.dispatch({
        type: 'SET_FILE_RESPONSE',
        payload: {
          stage1: ajaxState.response
        }
      });
    }
  },
      onDialogDismiss = function onDialogDismiss() {
    context.dispatch({
      type: 'SET_FILE',
      payload: null
    });
    navigate('/import');
  };

  (0, _react.useEffect)(function () {
    if ('success' === ajaxState.status) {
      if (context.data.fileResponse.hasOwnProperty('stage2')) {
        navigate('/import/complete');
      } else {
        navigate('/import/content');
      }
    }
  }, [context.data.fileResponse]);
  return /*#__PURE__*/_react.default.createElement(_layout.default, {
    type: "import"
  }, /*#__PURE__*/_react.default.createElement(_fileProcess.default, {
    status: ajaxState.status,
    onLoad: onLoad,
    onSuccess: onSuccess,
    onDialogApprove: function onDialogApprove() {},
    onDialogDismiss: onDialogDismiss
  }));
}

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/pages/import/import-resolver/components/conflict/components/conflict-checkbox/conflict-checkbox.js":
/*!******************************************************************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/pages/import/import-resolver/components/conflict/components/conflict-checkbox/conflict-checkbox.js ***!
  \******************************************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ConflictCheckbox;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

var _contextProvider = __webpack_require__(/*! ../../../../../../../context/context-provider */ "../core/app/modules/import-export/assets/js/context/context-provider.js");

var _checkbox = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/checkbox */ "../core/app/assets/js/ui/atoms/checkbox.js"));

function ConflictCheckbox(props) {
  var context = (0, _react.useContext)(_contextProvider.Context),
      isSelected = function isSelected() {
    return context.data.overrideConditions.includes(props.id);
  },
      updateOverrideCondition = function updateOverrideCondition(event) {
    var isChecked = event.target.checked,
        actionType = isChecked ? 'ADD_OVERRIDE_CONDITION' : 'REMOVE_OVERRIDE_CONDITION';
    context.dispatch({
      type: actionType,
      payload: props.id
    });
  };

  (0, _react.useEffect)(function () {
    if (!context.data.overrideConditions.length) {
      context.dispatch({
        type: 'ADD_OVERRIDE_CONDITION',
        payload: props.id
      });
    }
  }, []);
  return /*#__PURE__*/_react.default.createElement(_checkbox.default, {
    checked: isSelected(),
    onChange: updateOverrideCondition,
    className: props.className
  });
}

ConflictCheckbox.propTypes = {
  className: PropTypes.string,
  id: PropTypes.number.isRequired
};
ConflictCheckbox.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/pages/import/import-resolver/components/conflict/conflict.js":
/*!****************************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/pages/import/import-resolver/components/conflict/conflict.js ***!
  \****************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Conflict;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

var _contextProvider = __webpack_require__(/*! ../../../../../context/context-provider */ "../core/app/modules/import-export/assets/js/context/context-provider.js");

var _conflictCheckbox = _interopRequireDefault(__webpack_require__(/*! ./components/conflict-checkbox/conflict-checkbox */ "../core/app/modules/import-export/assets/js/pages/import/import-resolver/components/conflict/components/conflict-checkbox/conflict-checkbox.js"));

var _heading = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/heading */ "../core/app/assets/js/ui/atoms/heading.js"));

var _text = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/text */ "../core/app/assets/js/ui/atoms/text.js"));

var _grid = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/grid/grid */ "../core/app/assets/js/ui/grid/grid.js"));

var _button = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/button */ "../core/app/assets/js/ui/molecules/button.js"));

function Conflict(props) {
  var _context$data$fileRes, _context$data$fileRes2;

  var context = (0, _react.useContext)(_contextProvider.Context),
      manifest = (_context$data$fileRes = context.data.fileResponse) === null || _context$data$fileRes === void 0 ? void 0 : (_context$data$fileRes2 = _context$data$fileRes.stage1) === null || _context$data$fileRes2 === void 0 ? void 0 : _context$data$fileRes2.manifest,
      getConflictTitle = function getConflictTitle(id) {
    var _elementorAppConfig$i;

    var templateType = manifest.templates[id].doc_type,
        summaryTitle = (_elementorAppConfig$i = elementorAppConfig['import-export'].summaryTitles.templates) === null || _elementorAppConfig$i === void 0 ? void 0 : _elementorAppConfig$i[templateType];
    return (summaryTitle === null || summaryTitle === void 0 ? void 0 : summaryTitle.single) || templateType;
  },
      getEditTemplateButton = function getEditTemplateButton(editUrl) {
    return /*#__PURE__*/_react.default.createElement(_button.default, {
      className: "e-app-import-resolver-conflicts__edit-template",
      url: editUrl,
      target: "_blank",
      icon: "eicon-editor-external-link",
      text: __('Edit Template', 'elementor'),
      hideText: true
    });
  },
      isImportedAssetSelected = function isImportedAssetSelected(importedAssetId) {
    return context.data.overrideConditions.includes(importedAssetId);
  },
      getAssetClassName = function getAssetClassName(isActive) {
    var classes = ['e-app-import-resolver-conflicts__asset'];

    if (isActive) {
      classes.push('active');
    }

    return classes.join(' ');
  },
      getImportedAssetClasses = function getImportedAssetClasses(importedAssetId) {
    return getAssetClassName(isImportedAssetSelected(importedAssetId));
  },
      getExistingAssetClasses = function getExistingAssetClasses(importedAssetId) {
    return getAssetClassName(!isImportedAssetSelected(importedAssetId));
  };

  return /*#__PURE__*/_react.default.createElement(_grid.default, {
    container: true,
    noWrap: true
  }, /*#__PURE__*/_react.default.createElement(_conflictCheckbox.default, {
    id: props.importedId,
    type: "main-type",
    className: "e-app-import-resolver-conflicts__checkbox"
  }), /*#__PURE__*/_react.default.createElement(_grid.default, {
    item: true
  }, /*#__PURE__*/_react.default.createElement(_heading.default, {
    variant: "h5",
    tag: "h4",
    className: "e-app-import-resolver-conflicts__title"
  }, getConflictTitle(props.importedId)), /*#__PURE__*/_react.default.createElement(_grid.default, {
    item: true
  }, /*#__PURE__*/_react.default.createElement(_text.default, {
    variant: "sm",
    tag: "span",
    className: getImportedAssetClasses(props.importedId)
  }, __('Imported'), ": ", manifest.templates[props.importedId].title), /*#__PURE__*/_react.default.createElement(_text.default, {
    style: true,
    variant: "sm",
    tag: "span",
    className: getExistingAssetClasses(props.importedId)
  }, __('Existing'), ": ", props.conflictData.template_title, " ", getEditTemplateButton(props.conflictData.edit_url)))));
}

Conflict.propTypes = {
  importedId: PropTypes.number,
  conflictData: PropTypes.object
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/pages/import/import-resolver/import-resolver.js":
/*!***************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/pages/import/import-resolver/import-resolver.js ***!
  \***************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ImportResolver;

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _parseInt2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/parse-int */ "../node_modules/@babel/runtime-corejs2/core-js/parse-int.js"));

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

__webpack_require__(/*! core-js/modules/es6.array.find.js */ "../node_modules/core-js/modules/es6.array.find.js");

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _router = __webpack_require__(/*! @reach/router */ "../node_modules/@reach/router/es/index.js");

var _contextProvider = __webpack_require__(/*! ../../../context/context-provider */ "../core/app/modules/import-export/assets/js/context/context-provider.js");

var _layout = _interopRequireDefault(__webpack_require__(/*! ../../../templates/layout */ "../core/app/modules/import-export/assets/js/templates/layout.js"));

var _pageHeader = _interopRequireDefault(__webpack_require__(/*! ../../../ui/page-header/page-header */ "../core/app/modules/import-export/assets/js/ui/page-header/page-header.js"));

var _conflict = _interopRequireDefault(__webpack_require__(/*! ./components/conflict/conflict */ "../core/app/modules/import-export/assets/js/pages/import/import-resolver/components/conflict/conflict.js"));

var _panel = _interopRequireDefault(__webpack_require__(/*! ../../../ui/panel/panel */ "../core/app/modules/import-export/assets/js/ui/panel/panel.js"));

var _notice = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/notice */ "../core/app/assets/js/ui/molecules/notice.js"));

var _inlineLink = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/inline-link */ "../core/app/assets/js/ui/molecules/inline-link.js"));

var _button = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/button */ "../core/app/assets/js/ui/molecules/button.js"));

var _box = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/box */ "../core/app/assets/js/ui/atoms/box.js"));

var _list = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/list */ "../core/app/assets/js/ui/molecules/list.js"));

var _wizardFooter = _interopRequireDefault(__webpack_require__(/*! elementor-app/organisms/wizard-footer */ "../core/app/assets/js/organisms/wizard-footer.js"));

__webpack_require__(/*! ./import-resolver.scss */ "../core/app/modules/import-export/assets/js/pages/import/import-resolver/import-resolver.scss");

function ImportResolver() {
  var _context$data, _context$data$fileRes;

  var context = (0, _react.useContext)(_contextProvider.Context),
      navigate = (0, _router.useNavigate)(),
      conflicts = ((_context$data = context.data) === null || _context$data === void 0 ? void 0 : (_context$data$fileRes = _context$data.fileResponse) === null || _context$data$fileRes === void 0 ? void 0 : _context$data$fileRes.stage1.conflicts) || {},
      getFooter = function getFooter() {
    return /*#__PURE__*/_react.default.createElement(_wizardFooter.default, {
      separator: true,
      justify: "end"
    }, /*#__PURE__*/_react.default.createElement(_button.default, {
      text: __('Previous', 'elementor'),
      variant: "contained",
      onClick: function onClick() {
        return navigate('import/content');
      }
    }), /*#__PURE__*/_react.default.createElement(_button.default, {
      text: __('Next', 'elementor'),
      variant: "contained",
      color: "primary",
      onClick: function onClick() {
        return navigate('import/process');
      }
    }));
  },
      getLearnMoreLink = function getLearnMoreLink() {
    return /*#__PURE__*/_react.default.createElement(_inlineLink.default, {
      url: "https://go.elementor.com/app-what-are-kits",
      italic: true
    }, __('Learn More', 'elementor'));
  },
      isHomePageOverride = function isHomePageOverride() {
    if (context.data.includes.includes('content')) {
      var _context$data2, _context$data2$fileRe, _context$data2$fileRe2;

      var pages = ((_context$data2 = context.data) === null || _context$data2 === void 0 ? void 0 : (_context$data2$fileRe = _context$data2.fileResponse) === null || _context$data2$fileRe === void 0 ? void 0 : (_context$data2$fileRe2 = _context$data2$fileRe.stage1.manifest.content) === null || _context$data2$fileRe2 === void 0 ? void 0 : _context$data2$fileRe2.page) || {};
      return (0, _entries.default)(pages).find(function (pageData) {
        return pageData[1].show_on_front;
      });
    }

    return false;
  };

  return /*#__PURE__*/_react.default.createElement(_layout.default, {
    type: "import",
    footer: getFooter()
  }, /*#__PURE__*/_react.default.createElement("section", {
    className: "e-app-import-resolver"
  }, /*#__PURE__*/_react.default.createElement(_pageHeader.default, {
    heading: __('Import a Template Kit', 'elementor'),
    description: [__("We noticed that items in your kit overlap with what's already live on your site.", 'elementor'), /*#__PURE__*/_react.default.createElement(_react.default.Fragment, {
      key: "description-secondary-line"
    }, __('Items that you leave checked here will override your current design and settings.', 'elementor'), " ", getLearnMoreLink())]
  }), isHomePageOverride() && /*#__PURE__*/_react.default.createElement(_notice.default, {
    className: "e-app-import-resolver__notice",
    label: __('Note', 'elementor'),
    color: "warning"
  }, __("Your site's homepage will be determined by the kit. You can change this later.", 'elementor')), /*#__PURE__*/_react.default.createElement(_panel.default, {
    isOpened: true
  }, /*#__PURE__*/_react.default.createElement(_panel.default.Header, {
    toggle: false
  }, /*#__PURE__*/_react.default.createElement(_panel.default.Headline, null, __('Select the items you want to keep and apply:', 'elementor'))), /*#__PURE__*/_react.default.createElement(_panel.default.Body, {
    padding: "20"
  }, /*#__PURE__*/_react.default.createElement(_box.default, {
    className: "e-app-import-resolver-conflicts__container"
  }, /*#__PURE__*/_react.default.createElement(_list.default, {
    separated: true,
    className: "e-app-import-resolver-conflicts"
  }, (0, _entries.default)(conflicts).map(function (_ref, index) {
    var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
        id = _ref2[0],
        conflict = _ref2[1];

    return /*#__PURE__*/_react.default.createElement(_list.default.Item, {
      padding: "20",
      key: index,
      className: "e-app-import-resolver-conflicts__item"
    }, /*#__PURE__*/_react.default.createElement(_conflict.default, {
      importedId: (0, _parseInt2.default)(id),
      conflictData: conflict[0]
    }));
  })))))));
}

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/content-layout/content-layout.js":
/*!*******************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/content-layout/content-layout.js ***!
  \*******************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ContentLayout;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! ./content-layout.scss */ "../core/app/modules/import-export/assets/js/shared/content-layout/content-layout.scss");

function ContentLayout(props) {
  return /*#__PURE__*/_react.default.createElement("div", {
    className: "e-app-import-export-content-layout"
  }, /*#__PURE__*/_react.default.createElement("div", {
    className: "e-app-import-export-content-layout__container"
  }, props.children));
}

ContentLayout.propTypes = {
  children: PropTypes.any.isRequired
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/file-process/file-process.js":
/*!***************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/file-process/file-process.js ***!
  \***************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = FileProcess;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

var _importFailedDialog = _interopRequireDefault(__webpack_require__(/*! ../import-failed-dialog/import-failed-dialog */ "../core/app/modules/import-export/assets/js/shared/import-failed-dialog/import-failed-dialog.js"));

var _wizardStep = _interopRequireDefault(__webpack_require__(/*! ../../ui/wizard-step/wizard-step */ "../core/app/modules/import-export/assets/js/ui/wizard-step/wizard-step.js"));

function FileProcess(props) {
  (0, _react.useEffect)(function () {
    props.onLoad();
  }, []);
  (0, _react.useEffect)(function () {
    if ('success' === props.status) {
      props.onSuccess();
    }
  }, [props.status]);
  return /*#__PURE__*/_react.default.createElement(_wizardStep.default, {
    className: (0, _utils.arrayToClassName)(['e-app-import-export-file-process', props.className]),
    icon: "eicon-loading eicon-animation-spin",
    heading: __('Setting up your kit...', 'elementor'),
    description: /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, __('This usually takes a few moments.', 'elementor'), /*#__PURE__*/_react.default.createElement("br", null), __("Don't close this window until the process is finished.", 'elementor'))
  }, 'error' === props.status && /*#__PURE__*/_react.default.createElement(_importFailedDialog.default, {
    onApprove: props.onDialogApprove,
    onDismiss: props.onDialogDismiss
  }));
}

FileProcess.propTypes = {
  className: PropTypes.string,
  status: PropTypes.oneOf(['initial', 'success', 'error']),
  onLoad: PropTypes.func.isRequired,
  onSuccess: PropTypes.func.isRequired,
  onDialogApprove: PropTypes.func.isRequired,
  onDialogDismiss: PropTypes.func.isRequired
};
FileProcess.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/import-failed-dialog/import-failed-dialog.js":
/*!*******************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/import-failed-dialog/import-failed-dialog.js ***!
  \*******************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ImportFailedDialog;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _dialog = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/dialog/dialog */ "../core/app/assets/js/ui/dialog/dialog.js"));

function ImportFailedDialog(props) {
  return /*#__PURE__*/_react.default.createElement(_dialog.default, {
    title: __('Something went wrong', 'elementor'),
    text: __('Nothing to worry about, just try again. If the problem continues, head over to the Help Center.', 'elementor'),
    approveButtonColor: "link",
    approveButtonText: __('Learn More', 'elementor'),
    approveButtonOnClick: props.onApprove,
    dismissButtonText: __('Dismiss', 'elementor'),
    dismissButtonOnClick: props.onDismiss,
    onClose: props.onDismiss
  });
}

ImportFailedDialog.propTypes = {
  onApprove: PropTypes.func.isRequired,
  onDismiss: PropTypes.func.isRequired
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/info-modal/export-info-modal.js":
/*!******************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/info-modal/export-info-modal.js ***!
  \******************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ExportInfoModal;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

var _inlineLink = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/inline-link */ "../core/app/assets/js/ui/molecules/inline-link.js"));

var _infoModal = _interopRequireDefault(__webpack_require__(/*! ./info-modal */ "../core/app/modules/import-export/assets/js/shared/info-modal/info-modal.js"));

function ExportInfoModal(props) {
  return /*#__PURE__*/_react.default.createElement(_infoModal.default, (0, _extends2.default)({}, props, {
    title: __('Export a Template Kit', 'elementor')
  }), /*#__PURE__*/_react.default.createElement(_infoModal.default.Section, null, /*#__PURE__*/_react.default.createElement(_infoModal.default.Heading, null, __('What’s a Template Kit?', 'elementor')), /*#__PURE__*/_react.default.createElement(_infoModal.default.Text, null, __('A kit is a zip file containing anything from an entire site to individual components.', 'elementor'))), /*#__PURE__*/_react.default.createElement(_infoModal.default.Section, null, /*#__PURE__*/_react.default.createElement(_infoModal.default.Heading, null, __('How does exporting work?', 'elementor')), /*#__PURE__*/_react.default.createElement(_infoModal.default.Text, null, /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, __('Select what to include from your site. We’ll use that to create a zip file.', 'elementor'), /*#__PURE__*/_react.default.createElement("br", null), __('That’s it!', 'elementor'), " ", /*#__PURE__*/_react.default.createElement(_inlineLink.default, {
    url: "http://go.elementor.com/app-export-kit"
  }, __('Learn More', 'elementor'))))), /*#__PURE__*/_react.default.createElement(_infoModal.default.Section, null, /*#__PURE__*/_react.default.createElement(_infoModal.default.Tip, {
    title: __('Tip!', 'elementor'),
    description: __('Once your download is complete, import your kit to another site and get it up and running quickly.', 'elementor')
  })));
}

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/info-modal/import-info-modal.js":
/*!******************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/info-modal/import-info-modal.js ***!
  \******************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = ImportInfoModal;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

var _inlineLink = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/inline-link */ "../core/app/assets/js/ui/molecules/inline-link.js"));

var _infoModal = _interopRequireDefault(__webpack_require__(/*! ./info-modal */ "../core/app/modules/import-export/assets/js/shared/info-modal/info-modal.js"));

function ImportInfoModal(props) {
  return /*#__PURE__*/_react.default.createElement(_infoModal.default, (0, _extends2.default)({}, props, {
    title: __('Import a Template Kit', 'elementor')
  }), /*#__PURE__*/_react.default.createElement(_infoModal.default.Section, null, /*#__PURE__*/_react.default.createElement(_infoModal.default.Heading, null, __('What’s a Template Kit?', 'elementor')), /*#__PURE__*/_react.default.createElement(_infoModal.default.Text, null, __('A kit is a zip file containing anything from an entire site to individual components.', 'elementor'))), /*#__PURE__*/_react.default.createElement(_infoModal.default.Section, null, /*#__PURE__*/_react.default.createElement(_infoModal.default.Heading, null, __('How does importing work?', 'elementor')), /*#__PURE__*/_react.default.createElement(_infoModal.default.Text, null, /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, __('After you select what\'s included from your imported kit, you’ll be able to choose which current site settings should stay and which the import should override. ', 'elementor'), /*#__PURE__*/_react.default.createElement("br", null), /*#__PURE__*/_react.default.createElement(_inlineLink.default, {
    url: "http://go.elementor.com/app-import-kit"
  }, __('Learn More', 'elementor'))))));
}

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/info-modal/info-modal-heading.js":
/*!*******************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/info-modal/info-modal-heading.js ***!
  \*******************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = InfoModalHeading;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

var _heading = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/heading */ "../core/app/assets/js/ui/atoms/heading.js"));

function InfoModalHeading(props) {
  return /*#__PURE__*/_react.default.createElement(_heading.default, {
    variant: "h3",
    tag: "h2",
    className: (0, _utils.arrayToClassName)(['e-app-import-export-info-modal__heading', props.className])
  }, props.children);
}

InfoModalHeading.propTypes = {
  className: PropTypes.string,
  children: PropTypes.oneOfType([PropTypes.string, PropTypes.object, PropTypes.arrayOf(PropTypes.object)]).isRequired
};
InfoModalHeading.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/info-modal/info-modal-section.js":
/*!*******************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/info-modal/info-modal-section.js ***!
  \*******************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = InfoModalSection;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

var _modal = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/modal/modal */ "../core/app/assets/js/ui/modal/modal.js"));

function InfoModalSection(props) {
  return /*#__PURE__*/_react.default.createElement(_modal.default.Section, {
    className: (0, _utils.arrayToClassName)(['e-app-import-export-info-modal__section', props.className])
  }, props.children);
}

InfoModalSection.propTypes = {
  className: PropTypes.string,
  children: PropTypes.any
};
InfoModalSection.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/info-modal/info-modal-text.js":
/*!****************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/info-modal/info-modal-text.js ***!
  \****************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = InfoModalText;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

var _text = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/text */ "../core/app/assets/js/ui/atoms/text.js"));

function InfoModalText(props) {
  return /*#__PURE__*/_react.default.createElement(_text.default, {
    variant: "sm",
    className: (0, _utils.arrayToClassName)(['e-app-import-export-info-modal__text', props.className])
  }, props.children);
}

InfoModalText.propTypes = {
  className: PropTypes.string,
  children: PropTypes.any.isRequired
};
InfoModalText.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/info-modal/info-modal-tip.js":
/*!***************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/info-modal/info-modal-tip.js ***!
  \***************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = InfoModalTip;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

var _modal = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/modal/modal */ "../core/app/assets/js/ui/modal/modal.js"));

function InfoModalTip(props) {
  return /*#__PURE__*/_react.default.createElement(_modal.default.Tip, (0, _extends2.default)({}, props, {
    className: (0, _utils.arrayToClassName)(['e-app-import-export-info-modal__tip', props.className])
  }));
}

InfoModalTip.propTypes = {
  className: PropTypes.string
};
InfoModalTip.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/info-modal/info-modal.js":
/*!***********************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/info-modal/info-modal.js ***!
  \***********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = InfoModal;
exports.infoButtonProps = void 0;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _extends2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/extends */ "../node_modules/@babel/runtime-corejs2/helpers/extends.js"));

var _modal = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/modal/modal */ "../core/app/assets/js/ui/modal/modal.js"));

var _infoModalSection = _interopRequireDefault(__webpack_require__(/*! ./info-modal-section */ "../core/app/modules/import-export/assets/js/shared/info-modal/info-modal-section.js"));

var _infoModalHeading = _interopRequireDefault(__webpack_require__(/*! ./info-modal-heading */ "../core/app/modules/import-export/assets/js/shared/info-modal/info-modal-heading.js"));

var _infoModalText = _interopRequireDefault(__webpack_require__(/*! ./info-modal-text */ "../core/app/modules/import-export/assets/js/shared/info-modal/info-modal-text.js"));

var _infoModalTip = _interopRequireDefault(__webpack_require__(/*! ./info-modal-tip */ "../core/app/modules/import-export/assets/js/shared/info-modal/info-modal-tip.js"));

__webpack_require__(/*! ./info-modal.scss */ "../core/app/modules/import-export/assets/js/shared/info-modal/info-modal.scss");

var infoButtonProps = {
  id: 'info-modal',
  className: 'e-app-export-kit-information__info-icon',
  icon: 'eicon-info-circle',
  text: __('Kit Info', 'elementor'),
  color: 'secondary',
  hideText: true
};
exports.infoButtonProps = infoButtonProps;

function InfoModal(props) {
  var attrs = {
    className: 'e-app-import-export-info-modal',
    setShow: props.setShow
  };

  if (props.hasOwnProperty('show')) {
    attrs.show = props.show;
  } else {
    attrs.toggleButtonProps = infoButtonProps;
  }

  return /*#__PURE__*/_react.default.createElement(_modal.default, (0, _extends2.default)({}, attrs, {
    title: props.title
  }), props.children);
}

InfoModal.propTypes = {
  show: PropTypes.bool,
  setShow: PropTypes.func,
  title: PropTypes.string,
  children: PropTypes.any.isRequired
};
InfoModal.Section = _infoModalSection.default;
InfoModal.Heading = _infoModalHeading.default;
InfoModal.Text = _infoModalText.default;
InfoModal.Tip = _infoModalTip.default;

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/kit-content/components/kit-content-checkbox/kit-content-checkbox.js":
/*!******************************************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/kit-content/components/kit-content-checkbox/kit-content-checkbox.js ***!
  \******************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = KitContentCheckbox;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.string.includes.js */ "../node_modules/core-js/modules/es6.string.includes.js");

__webpack_require__(/*! core-js/modules/es7.array.includes.js */ "../node_modules/core-js/modules/es7.array.includes.js");

var _contextProvider = __webpack_require__(/*! ../../../../context/context-provider */ "../core/app/modules/import-export/assets/js/context/context-provider.js");

var _checkbox = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/checkbox */ "../core/app/assets/js/ui/atoms/checkbox.js"));

function KitContentCheckbox(props) {
  var context = (0, _react.useContext)(_contextProvider.Context),
      isSelected = function isSelected() {
    return context.data.includes.includes(props.type);
  },
      setIncludes = function setIncludes(event) {
    var isChecked = event.target.checked,
        actionType = isChecked ? 'ADD_INCLUDE' : 'REMOVE_INCLUDE';
    context.dispatch({
      type: actionType,
      payload: props.type
    });
  };

  (0, _react.useEffect)(function () {
    if (!context.data.includes.length) {
      context.dispatch({
        type: 'ADD_INCLUDE',
        payload: props.type
      });
    }
  }, []);
  return (0, _react.useMemo)(function () {
    return /*#__PURE__*/_react.default.createElement(_checkbox.default, {
      checked: isSelected(),
      onChange: setIncludes,
      className: props.className
    });
  }, [context.data.includes]);
}

KitContentCheckbox.propTypes = {
  className: PropTypes.string,
  type: PropTypes.string.isRequired
};
KitContentCheckbox.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/kit-content/components/templates-features/templates-features.js":
/*!**************************************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/kit-content/components/templates-features/templates-features.js ***!
  \**************************************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = TemplatesFeatures;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _tooltip = _interopRequireDefault(__webpack_require__(/*! elementor-app/molecules/tooltip */ "../core/app/assets/js/molecules/tooltip.js"));

__webpack_require__(/*! ./templates-features.scss */ "../core/app/modules/import-export/assets/js/shared/kit-content/components/templates-features/templates-features.scss");

function TemplatesFeatures(props) {
  var _props$features$locke;

  var isLockedFeatures = (_props$features$locke = props.features.locked) === null || _props$features$locke === void 0 ? void 0 : _props$features$locke.length,
      getLockedFeatures = function getLockedFeatures() {
    if (!isLockedFeatures) {
      return;
    }

    return /*#__PURE__*/_react.default.createElement(_tooltip.default, {
      tag: "span",
      offset: 19,
      show: props.showTooltip,
      title: props.features.tooltip,
      disabled: !props.isLocked,
      className: props.isLocked ? 'e-app-export-templates-features__locked' : ''
    }, ', ' + props.features.locked.join(', '));
  },
      getOpenFeatures = function getOpenFeatures() {
    var _props$features$open;

    return (_props$features$open = props.features.open) === null || _props$features$open === void 0 ? void 0 : _props$features$open.join(', ');
  };

  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, getOpenFeatures(), getLockedFeatures());
}

TemplatesFeatures.propTypes = {
  features: PropTypes.object,
  isLocked: PropTypes.bool,
  showTooltip: PropTypes.bool
};
TemplatesFeatures.defaultProps = {
  showTooltip: false
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/kit-content/kit-content-data/kit-content-data.js":
/*!***********************************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/kit-content/kit-content-data/kit-content-data.js ***!
  \***********************************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;
var kitContentData = [{
  type: 'templates',
  data: {
    title: __('Templates', 'elementor'),
    features: {
      open: [__('Saved Templates', 'elementor')],
      locked: [__('Headers', 'elementor'), __('Footers', 'elementor'), __('Archives', 'elementor'), __('Single Posts', 'elementor'), __('Single Pages', 'elementor'), __('Search Results', 'elementor'), __('404 Error Page', 'elementor'), __('Popups', 'elementor'), __('Global widgets', 'elementor')],
      tooltip: __('To import or export these components, you’ll need Elementor Pro.', 'elementor')
    }
  }
}, {
  type: 'content',
  data: {
    title: __('Content', 'elementor'),
    features: {
      open: [__('Elementor Pages', 'elementor'), __('Landing Pages', 'elementor'), __('Elementor Posts', 'elementor'), __('WP Pages', 'elementor'), __('WP Posts', 'elementor'), __('Custom Post Type', 'elementor')]
    }
  }
}, {
  type: 'settings',
  data: {
    title: __('Site Settings', 'elementor'),
    features: {
      open: [__('Global Colors', 'elementor'), __('Global Fonts', 'elementor'), __('Theme Style settings', 'elementor'), __('Layout Settings', 'elementor'), __('Lightbox Settings', 'elementor'), __('Background Settings', 'elementor')]
    }
  }
}];
var _default = kitContentData;
exports.default = _default;

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/kit-content/kit-content.js":
/*!*************************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/kit-content/kit-content.js ***!
  \*************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = KitContent;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/defineProperty */ "../node_modules/@babel/runtime-corejs2/helpers/defineProperty.js"));

var _objectSpread3 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _templatesFeatures = _interopRequireDefault(__webpack_require__(/*! ./components/templates-features/templates-features */ "../core/app/modules/import-export/assets/js/shared/kit-content/components/templates-features/templates-features.js"));

var _kitContentCheckbox = _interopRequireDefault(__webpack_require__(/*! ./components/kit-content-checkbox/kit-content-checkbox */ "../core/app/modules/import-export/assets/js/shared/kit-content/components/kit-content-checkbox/kit-content-checkbox.js"));

var _goProButton = _interopRequireDefault(__webpack_require__(/*! elementor-app/molecules/go-pro-button */ "../core/app/assets/js/molecules/go-pro-button.js"));

var _box = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/box */ "../core/app/assets/js/ui/atoms/box.js"));

var _list = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/list */ "../core/app/assets/js/ui/molecules/list.js"));

var _heading = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/heading */ "../core/app/assets/js/ui/atoms/heading.js"));

var _text = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/text */ "../core/app/assets/js/ui/atoms/text.js"));

var _grid = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/grid/grid */ "../core/app/assets/js/ui/grid/grid.js"));

var _kitContentData = _interopRequireDefault(__webpack_require__(/*! ./kit-content-data/kit-content-data */ "../core/app/modules/import-export/assets/js/shared/kit-content/kit-content-data/kit-content-data.js"));

__webpack_require__(/*! ./kit-content.scss */ "../core/app/modules/import-export/assets/js/shared/kit-content/kit-content.scss");

function KitContent(props) {
  var hasPro = elementorAppConfig.hasPro,
      _useState = (0, _react.useState)({}),
      _useState2 = (0, _slicedToArray2.default)(_useState, 2),
      containerHover = _useState2[0],
      setContainerHover = _useState2[1],
      getTemplateFeatures = function getTemplateFeatures(features, index) {
    if (!features) {
      return;
    }

    return /*#__PURE__*/_react.default.createElement(_templatesFeatures.default, {
      features: features,
      isLocked: !hasPro,
      showTooltip: containerHover[index]
    });
  },
      getGoProButton = function getGoProButton() {
    return /*#__PURE__*/_react.default.createElement(_goProButton.default, {
      className: "e-app-export-kit-content__go-pro-button",
      url: "https://go.elementor.com/go-pro-import-export"
    });
  },
      setContainerHoverState = function setContainerHoverState(index, state) {
    setContainerHover(function (prevState) {
      return (0, _objectSpread3.default)((0, _objectSpread3.default)({}, prevState), {}, (0, _defineProperty2.default)({}, index, state));
    });
  };

  return /*#__PURE__*/_react.default.createElement(_box.default, null, /*#__PURE__*/_react.default.createElement(_list.default, {
    separated: true,
    className: "e-app-export-kit-content"
  }, _kitContentData.default.map(function (item, index) {
    var _item$data$features;

    var isLockedFeaturesNoPro = ((_item$data$features = item.data.features) === null || _item$data$features === void 0 ? void 0 : _item$data$features.locked) && !hasPro;

    if (props.manifest) {
      var contentType = 'settings' === item.type ? 'site-settings' : item.type;

      if (!props.manifest[contentType]) {
        return;
      }
    }

    return /*#__PURE__*/_react.default.createElement(_list.default.Item, {
      padding: "20",
      key: item.type,
      className: "e-app-export-kit-content__item"
    }, /*#__PURE__*/_react.default.createElement("div", {
      onMouseEnter: function onMouseEnter() {
        return isLockedFeaturesNoPro && setContainerHoverState(index, true);
      },
      onMouseLeave: function onMouseLeave() {
        return isLockedFeaturesNoPro && setContainerHoverState(index, false);
      }
    }, /*#__PURE__*/_react.default.createElement(_grid.default, {
      container: true,
      noWrap: true
    }, /*#__PURE__*/_react.default.createElement(_kitContentCheckbox.default, {
      type: item.type,
      className: "e-app-export-kit-content__checkbox"
    }), /*#__PURE__*/_react.default.createElement(_grid.default, {
      item: true
    }, /*#__PURE__*/_react.default.createElement(_heading.default, {
      variant: "h4",
      tag: "h3",
      className: "e-app-export-kit-content__title"
    }, item.data.title), /*#__PURE__*/_react.default.createElement(_grid.default, {
      item: true
    }, /*#__PURE__*/_react.default.createElement(_text.default, {
      variant: "sm",
      tag: "span",
      className: "e-app-export-kit-content__description"
    }, item.data.description || getTemplateFeatures(item.data.features, index)), isLockedFeaturesNoPro && getGoProButton())))));
  })));
}

KitContent.propTypes = {
  className: PropTypes.string,
  manifest: PropTypes.object
};
KitContent.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/shared/kit-data/kit-data.js":
/*!*******************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/shared/kit-data/kit-data.js ***!
  \*******************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = KitData;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

var _entries = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/entries */ "../node_modules/@babel/runtime-corejs2/core-js/object/entries.js"));

var _keys = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/object/keys */ "../node_modules/@babel/runtime-corejs2/core-js/object/keys.js"));

__webpack_require__(/*! core-js/modules/es6.array.map.js */ "../node_modules/core-js/modules/es6.array.map.js");

__webpack_require__(/*! core-js/modules/es6.array.filter.js */ "../node_modules/core-js/modules/es6.array.filter.js");

var _heading = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/heading */ "../core/app/assets/js/ui/atoms/heading.js"));

var _text = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/text */ "../core/app/assets/js/ui/atoms/text.js"));

var _list = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/molecules/list */ "../core/app/assets/js/ui/molecules/list.js"));

__webpack_require__(/*! ./kit-data.scss */ "../core/app/modules/import-export/assets/js/shared/kit-data/kit-data.scss");

function KitData(props) {
  var kitData = props.data,
      getSummaryTitle = function getSummaryTitle(type, key, amount) {
    var data = elementorAppConfig['import-export'].summaryTitles[type][key];

    if (data !== null && data !== void 0 && data.single) {
      if (!amount) {
        return '';
      }

      var title = amount > 1 ? data.plural : data.single;
      return amount + ' ' + title;
    }

    return data;
  },
      getTemplates = function getTemplates() {
    var templates = {};

    for (var key in kitData === null || kitData === void 0 ? void 0 : kitData.templates) {
      var type = kitData.templates[key].doc_type;

      if (!templates[type]) {
        templates[type] = 0;
      }

      templates[type]++;
    }

    return (0, _entries.default)(templates).map(function (item) {
      return getSummaryTitle('templates', item[0], item[1]);
    });
  },
      getSiteSettings = function getSiteSettings() {
    var siteSettings = (kitData === null || kitData === void 0 ? void 0 : kitData['site-settings']) || {};
    return (0, _entries.default)(siteSettings).map(function (item) {
      return getSummaryTitle('site-settings', item[1]);
    });
  },
      getContent = function getContent() {
    var content = (kitData === null || kitData === void 0 ? void 0 : kitData.content) || {},
        wpContent = (kitData === null || kitData === void 0 ? void 0 : kitData['wp-content']) || {};
    var mergedContent = (0, _objectSpread2.default)({}, content);

    for (var key in mergedContent) {
      mergedContent[key] = (0, _keys.default)(mergedContent[key]).concat(wpContent[key] || []);
    } // In case that wpContent has properties that doesn't exist in the content object.


    mergedContent = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, wpContent), mergedContent);
    return (0, _entries.default)(mergedContent).map(function (item) {
      return getSummaryTitle('content', item[0], item[1].length);
    });
  },
      kitContent = [{
    title: __('Templates:', 'elementor'),
    data: getTemplates()
  }, {
    title: __('Site Settings:', 'elementor'),
    data: getSiteSettings()
  }, {
    title: __('Content:', 'elementor'),
    data: getContent()
  }];

  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_heading.default, {
    variant: "h6",
    tag: "h3",
    className: "e-app-export-complete__kit-content-title"
  }, __('This Template Kit includes:', 'elementor')), /*#__PURE__*/_react.default.createElement(_list.default, {
    className: "e-app-export-complete-kit-data-list"
  }, kitContent.map(function (item, index) {
    if (!item.data.length) {
      return;
    }

    return /*#__PURE__*/_react.default.createElement(_list.default.Item, {
      key: index,
      className: "e-app-export-complete-kit-data-list__item"
    }, /*#__PURE__*/_react.default.createElement(_text.default, {
      tag: "strong",
      variant: "sm"
    }, /*#__PURE__*/_react.default.createElement("strong", null, item.title)), " ", /*#__PURE__*/_react.default.createElement(_text.default, {
      tag: "span",
      variant: "sm"
    }, item.data.filter(function (value) {
      return value;
    }).join(' | ')));
  })));
}

KitData.propTypes = {
  data: PropTypes.object
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/templates/layout.js":
/*!***********************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/templates/layout.js ***!
  \***********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Layout;

var _react = _interopRequireWildcard(__webpack_require__(/*! react */ "react"));

__webpack_require__(/*! core-js/modules/es6.regexp.match.js */ "../node_modules/core-js/modules/es6.regexp.match.js");

var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/toConsumableArray */ "../node_modules/@babel/runtime-corejs2/helpers/toConsumableArray.js"));

var _objectSpread2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/objectSpread2 */ "../node_modules/@babel/runtime-corejs2/helpers/objectSpread2.js"));

var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/slicedToArray */ "../node_modules/@babel/runtime-corejs2/helpers/slicedToArray.js"));

var _page = _interopRequireDefault(__webpack_require__(/*! elementor-app/layout/page */ "../core/app/assets/js/layout/page.js"));

var _contentLayout = _interopRequireDefault(__webpack_require__(/*! ../shared/content-layout/content-layout */ "../core/app/modules/import-export/assets/js/shared/content-layout/content-layout.js"));

var _infoModal = __webpack_require__(/*! ../shared/info-modal/info-modal */ "../core/app/modules/import-export/assets/js/shared/info-modal/info-modal.js");

var _importInfoModal = _interopRequireDefault(__webpack_require__(/*! ../shared/info-modal/import-info-modal */ "../core/app/modules/import-export/assets/js/shared/info-modal/import-info-modal.js"));

var _exportInfoModal = _interopRequireDefault(__webpack_require__(/*! ../shared/info-modal/export-info-modal */ "../core/app/modules/import-export/assets/js/shared/info-modal/export-info-modal.js"));

function Layout(props) {
  var _useState = (0, _react.useState)(false),
      _useState2 = (0, _slicedToArray2.default)(_useState, 2),
      showInfoModal = _useState2[0],
      setShowInfoModal = _useState2[1],
      referrer = location.hash.match('referrer=([^&]+)'),
      getContent = function getContent() {
    var infoModalProps = {
      show: showInfoModal,
      setShow: setShowInfoModal
    };
    return /*#__PURE__*/_react.default.createElement(_contentLayout.default, null, props.children, 'import' === props.type ? /*#__PURE__*/_react.default.createElement(_importInfoModal.default, infoModalProps) : /*#__PURE__*/_react.default.createElement(_exportInfoModal.default, infoModalProps));
  },
      getInfoButtonProps = function getInfoButtonProps() {
    return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, _infoModal.infoButtonProps), {}, {
      onClick: function onClick() {
        setShowInfoModal(true);
      }
    });
  },
      config = {
    title: 'import' === props.type ? __('Import', 'elementor') : __('Export', 'elementor'),
    headerButtons: [getInfoButtonProps()].concat((0, _toConsumableArray2.default)(props.headerButtons)),
    content: getContent(),
    footer: props.footer
  },
      moduleAdminTab = '#tab-import-export-kit'; // Targeting the return_url value to the import-export dedicated admin tab (only when there is no specific referrer).


  if (!referrer && -1 === elementorAppConfig.return_url.indexOf(moduleAdminTab)) {
    elementorAppConfig.return_url += moduleAdminTab;
  }

  return /*#__PURE__*/_react.default.createElement(_page.default, config);
}

Layout.propTypes = {
  type: PropTypes.oneOf(['import', 'export']),
  headerButtons: PropTypes.arrayOf(PropTypes.object),
  children: PropTypes.object.isRequired,
  footer: PropTypes.object
};
Layout.defaultProps = {
  headerButtons: []
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/ui/page-header/page-header.js":
/*!*********************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/ui/page-header/page-header.js ***!
  \*********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = PageHeader;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _isArray = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/core-js/array/is-array */ "../node_modules/@babel/runtime-corejs2/core-js/array/is-array.js"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

var _grid = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/grid/grid */ "../core/app/assets/js/ui/grid/grid.js"));

var _heading = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/heading */ "../core/app/assets/js/ui/atoms/heading.js"));

var _text = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/text */ "../core/app/assets/js/ui/atoms/text.js"));

__webpack_require__(/*! ./page-header.scss */ "../core/app/modules/import-export/assets/js/ui/page-header/page-header.scss");

// Page header.
function PageHeader(props) {
  var baseClassName = 'e-app-import-export-page-header',
      classes = [baseClassName, props.className];

  var handleMultiLine = function handleMultiLine(content) {
    if ((0, _isArray.default)(content)) {
      var multiLineArray = [];
      content.forEach(function (line, index) {
        if (index) {
          multiLineArray.push( /*#__PURE__*/_react.default.createElement("br", {
            key: index
          }));
        }

        multiLineArray.push(line);
      });
      return multiLineArray;
    }

    return content;
  };

  return /*#__PURE__*/_react.default.createElement("div", {
    className: (0, _utils.arrayToClassName)(classes)
  }, /*#__PURE__*/_react.default.createElement(_grid.default, {
    container: true
  }, /*#__PURE__*/_react.default.createElement(_grid.default, {
    item: true,
    className: "e-app-import-export-page-header__content-wrapper"
  }, props.heading && /*#__PURE__*/_react.default.createElement(_heading.default, {
    variant: "display-3",
    className: "e-app-import-export-page-header__heading"
  }, props.heading), props.description && /*#__PURE__*/_react.default.createElement(_text.default, {
    className: "e-app-import-export-page-header__description"
  }, handleMultiLine(props.description)))));
}

PageHeader.propTypes = {
  className: PropTypes.string,
  heading: PropTypes.string,
  description: PropTypes.oneOfType([PropTypes.string, PropTypes.array, PropTypes.object])
};
PageHeader.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/ui/panel/panel-body.js":
/*!**************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/ui/panel/panel-body.js ***!
  \**************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = PanelBody;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

var _card = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/card/card */ "../core/app/assets/js/ui/card/card.js"));

var _collapse = _interopRequireDefault(__webpack_require__(/*! elementor-app/molecules/collapse */ "../core/app/assets/js/molecules/collapse.js"));

function PanelBody(props) {
  return /*#__PURE__*/_react.default.createElement(_collapse.default.Content, null, /*#__PURE__*/_react.default.createElement(_card.default.Body, {
    padding: props.padding,
    className: (0, _utils.arrayToClassName)(['e-app-import-export-panel__body', props.className])
  }, props.children));
}

PanelBody.propTypes = {
  className: PropTypes.string,
  padding: PropTypes.string,
  children: PropTypes.any.isRequired
};
PanelBody.defaultProps = {
  className: '',
  padding: '0'
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/ui/panel/panel-header.js":
/*!****************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/ui/panel/panel-header.js ***!
  \****************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = PanelHeader;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

var _card = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/card/card */ "../core/app/assets/js/ui/card/card.js"));

var _collapse = _interopRequireDefault(__webpack_require__(/*! elementor-app/molecules/collapse */ "../core/app/assets/js/molecules/collapse.js"));

function PanelHeader(props) {
  return /*#__PURE__*/_react.default.createElement(_collapse.default.Toggle, {
    active: props.toggle,
    showIcon: props.showIcon
  }, /*#__PURE__*/_react.default.createElement(_card.default.Header, {
    padding: "20",
    className: (0, _utils.arrayToClassName)(['e-app-import-export-panel__header', props.className])
  }, props.children));
}

PanelHeader.propTypes = {
  className: PropTypes.string,
  padding: PropTypes.string,
  toggle: PropTypes.bool,
  showIcon: PropTypes.bool,
  children: PropTypes.any.isRequired
};
PanelHeader.defaultProps = {
  className: '',
  padding: '20',
  toggle: true,
  showIcon: true
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/ui/panel/panel-headline.js":
/*!******************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/ui/panel/panel-headline.js ***!
  \******************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = PanelHeadline;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

var _card = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/card/card */ "../core/app/assets/js/ui/card/card.js"));

function PanelHeadline(props) {
  return /*#__PURE__*/_react.default.createElement(_card.default.Headline, {
    className: (0, _utils.arrayToClassName)(['e-app-import-export-panel__headline', props.className])
  }, props.children);
}

PanelHeadline.propTypes = {
  className: PropTypes.string,
  children: PropTypes.any.isRequired
};
PanelHeadline.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/ui/panel/panel.js":
/*!*********************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/ui/panel/panel.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = Panel;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

var _card = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/card/card */ "../core/app/assets/js/ui/card/card.js"));

var _collapse = _interopRequireDefault(__webpack_require__(/*! elementor-app/molecules/collapse */ "../core/app/assets/js/molecules/collapse.js"));

var _panelHeader = _interopRequireDefault(__webpack_require__(/*! ./panel-header */ "../core/app/modules/import-export/assets/js/ui/panel/panel-header.js"));

var _panelHeadline = _interopRequireDefault(__webpack_require__(/*! ./panel-headline */ "../core/app/modules/import-export/assets/js/ui/panel/panel-headline.js"));

var _panelBody = _interopRequireDefault(__webpack_require__(/*! ./panel-body */ "../core/app/modules/import-export/assets/js/ui/panel/panel-body.js"));

__webpack_require__(/*! ./panel.scss */ "../core/app/modules/import-export/assets/js/ui/panel/panel.scss");

function Panel(props) {
  return /*#__PURE__*/_react.default.createElement(_collapse.default, {
    isOpened: props.isOpened
  }, /*#__PURE__*/_react.default.createElement(_card.default, {
    className: (0, _utils.arrayToClassName)(['e-app-import-export-panel', props.className])
  }, props.children));
}

Panel.propTypes = {
  className: PropTypes.string,
  isOpened: PropTypes.bool,
  children: PropTypes.any.isRequired
};
Panel.defaultProps = {
  className: '',
  isOpened: false
};
Panel.Header = _panelHeader.default;
Panel.Headline = _panelHeadline.default;
Panel.Body = _panelBody.default;

/***/ }),

/***/ "../core/app/modules/import-export/assets/js/ui/wizard-step/wizard-step.js":
/*!*********************************************************************************!*\
  !*** ../core/app/modules/import-export/assets/js/ui/wizard-step/wizard-step.js ***!
  \*********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var PropTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = WizardStep;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _utils = __webpack_require__(/*! elementor-app/utils/utils.js */ "../core/app/assets/js/utils/utils.js");

var _grid = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/grid/grid */ "../core/app/assets/js/ui/grid/grid.js"));

var _icon = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/icon */ "../core/app/assets/js/ui/atoms/icon.js"));

var _heading = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/heading */ "../core/app/assets/js/ui/atoms/heading.js"));

var _text = _interopRequireDefault(__webpack_require__(/*! elementor-app/ui/atoms/text */ "../core/app/assets/js/ui/atoms/text.js"));

__webpack_require__(/*! ./wizard-step.scss */ "../core/app/modules/import-export/assets/js/ui/wizard-step/wizard-step.scss");

function WizardStep(props) {
  var baseClassName = 'e-app-import-export-wizard-step',
      classes = [baseClassName, props.className];
  return /*#__PURE__*/_react.default.createElement(_grid.default, {
    className: (0, _utils.arrayToClassName)(classes),
    justify: "center",
    container: true
  }, /*#__PURE__*/_react.default.createElement(_grid.default, {
    item: true
  }, (props.image || props.icon) && /*#__PURE__*/_react.default.createElement(_grid.default, {
    className: "e-app-import-export-wizard-step__media-container",
    justify: "center",
    alignItems: "end",
    container: true
  }, props.image && /*#__PURE__*/_react.default.createElement("img", {
    className: "e-app-import-export-wizard-step__image",
    src: props.image
  }), props.icon && /*#__PURE__*/_react.default.createElement(_icon.default, {
    className: "e-app-import-export-wizard-step__icon ".concat(props.icon)
  })), props.heading && /*#__PURE__*/_react.default.createElement(_heading.default, {
    variant: "display-3",
    className: "e-app-import-export-wizard-step__heading"
  }, props.heading), props.description && /*#__PURE__*/_react.default.createElement(_text.default, {
    variant: "xl",
    className: "e-app-import-export-wizard-step__description"
  }, props.description), props.children && /*#__PURE__*/_react.default.createElement(_grid.default, {
    item: true,
    className: "e-app-import-export-wizard-step__content"
  }, props.children), props.notice && /*#__PURE__*/_react.default.createElement(_text.default, {
    variant: "xs",
    className: "e-app-import-export-wizard-step__notice"
  }, props.notice)));
}

WizardStep.propTypes = {
  className: PropTypes.string,
  image: PropTypes.string,
  icon: PropTypes.string,
  heading: PropTypes.string,
  description: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),
  notice: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),
  children: PropTypes.any
};
WizardStep.defaultProps = {
  className: ''
};

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/data/kits/commands-data/download-link.js":
/*!******************************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/data/kits/commands-data/download-link.js ***!
  \******************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.DownloadLink = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var DownloadLink = /*#__PURE__*/function (_$e$modules$CommandDa) {
  (0, _inherits2.default)(DownloadLink, _$e$modules$CommandDa);

  var _super = (0, _createSuper2.default)(DownloadLink);

  function DownloadLink() {
    (0, _classCallCheck2.default)(this, DownloadLink);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(DownloadLink, null, [{
    key: "getEndpointFormat",
    value: function getEndpointFormat() {
      return 'kits/download-link/{id}';
    }
  }]);
  return DownloadLink;
}($e.modules.CommandData);

exports.DownloadLink = DownloadLink;

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/data/kits/commands-data/favorites.js":
/*!**************************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/data/kits/commands-data/favorites.js ***!
  \**************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.Favorites = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var Favorites = /*#__PURE__*/function (_$e$modules$CommandDa) {
  (0, _inherits2.default)(Favorites, _$e$modules$CommandDa);

  var _super = (0, _createSuper2.default)(Favorites);

  function Favorites() {
    (0, _classCallCheck2.default)(this, Favorites);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Favorites, null, [{
    key: "getEndpointFormat",
    value: function getEndpointFormat() {
      return 'kits/favorites/{id}';
    }
  }]);
  return Favorites;
}($e.modules.CommandData);

exports.Favorites = Favorites;

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/data/kits/commands-data/index.js":
/*!**********************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/data/kits/commands-data/index.js ***!
  \**********************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

_Object$defineProperty(exports, "DownloadLink", {
  enumerable: true,
  get: function get() {
    return _downloadLink.DownloadLink;
  }
});

_Object$defineProperty(exports, "Favorites", {
  enumerable: true,
  get: function get() {
    return _favorites.Favorites;
  }
});

exports.Index = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var _downloadLink = __webpack_require__(/*! ./download-link */ "../core/app/modules/kit-library/assets/js/data/kits/commands-data/download-link.js");

var _favorites = __webpack_require__(/*! ./favorites */ "../core/app/modules/kit-library/assets/js/data/kits/commands-data/favorites.js");

var Index = /*#__PURE__*/function (_$e$modules$CommandDa) {
  (0, _inherits2.default)(Index, _$e$modules$CommandDa);

  var _super = (0, _createSuper2.default)(Index);

  function Index() {
    (0, _classCallCheck2.default)(this, Index);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Index, null, [{
    key: "getEndpointFormat",
    value: function getEndpointFormat() {
      return 'kits/{id}';
    }
  }]);
  return Index;
}($e.modules.CommandData);

exports.Index = Index;

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/data/kits/component.js":
/*!************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/data/kits/component.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var commandsData = _interopRequireWildcard(__webpack_require__(/*! ./commands-data/ */ "../core/app/modules/kit-library/assets/js/data/kits/commands-data/index.js"));

var Component = /*#__PURE__*/function (_$e$modules$Component) {
  (0, _inherits2.default)(Component, _$e$modules$Component);

  var _super = (0, _createSuper2.default)(Component);

  function Component() {
    (0, _classCallCheck2.default)(this, Component);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Component, [{
    key: "getNamespace",
    value: function getNamespace() {
      return 'kits';
    }
  }, {
    key: "defaultData",
    value: function defaultData() {
      return this.importCommands(commandsData);
    }
  }]);
  return Component;
}($e.modules.ComponentBase);

exports.default = Component;

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/data/taxonomies/commands-data/index.js":
/*!****************************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/data/taxonomies/commands-data/index.js ***!
  \****************************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.Index = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var Index = /*#__PURE__*/function (_$e$modules$CommandDa) {
  (0, _inherits2.default)(Index, _$e$modules$CommandDa);

  var _super = (0, _createSuper2.default)(Index);

  function Index() {
    (0, _classCallCheck2.default)(this, Index);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Index, null, [{
    key: "getEndpointFormat",
    value: function getEndpointFormat() {
      return 'kit-taxonomies/{id}';
    }
  }]);
  return Index;
}($e.modules.CommandData);

exports.Index = Index;

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/data/taxonomies/component.js":
/*!******************************************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/data/taxonomies/component.js ***!
  \******************************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireWildcard = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireWildcard */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireWildcard.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/inherits */ "../node_modules/@babel/runtime-corejs2/helpers/inherits.js"));

var _createSuper2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createSuper */ "../node_modules/@babel/runtime-corejs2/helpers/createSuper.js"));

var commandsData = _interopRequireWildcard(__webpack_require__(/*! ./commands-data/ */ "../core/app/modules/kit-library/assets/js/data/taxonomies/commands-data/index.js"));

var Component = /*#__PURE__*/function (_$e$modules$Component) {
  (0, _inherits2.default)(Component, _$e$modules$Component);

  var _super = (0, _createSuper2.default)(Component);

  function Component() {
    (0, _classCallCheck2.default)(this, Component);
    return _super.apply(this, arguments);
  }

  (0, _createClass2.default)(Component, [{
    key: "getNamespace",
    value: function getNamespace() {
      return 'kit-taxonomies';
    }
  }, {
    key: "defaultData",
    value: function defaultData() {
      return this.importCommands(commandsData);
    }
  }]);
  return Component;
}($e.modules.ComponentBase);

exports.default = Component;

/***/ }),

/***/ "../core/app/modules/kit-library/assets/js/module.js":
/*!***********************************************************!*\
  !*** ../core/app/modules/kit-library/assets/js/module.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/* provided dependency */ var React = __webpack_require__(/*! react */ "react");


var _Object$defineProperty = __webpack_require__(/*! @babel/runtime-corejs2/core-js/object/define-property */ "../node_modules/@babel/runtime-corejs2/core-js/object/define-property.js");

var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

_Object$defineProperty(exports, "__esModule", {
  value: true
});

exports.default = void 0;

var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/classCallCheck */ "../node_modules/@babel/runtime-corejs2/helpers/classCallCheck.js"));

var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime-corejs2/helpers/createClass */ "../node_modules/@babel/runtime-corejs2/helpers/createClass.js"));

var _component = _interopRequireDefault(__webpack_require__(/*! ./data/kits/component */ "../core/app/modules/kit-library/assets/js/data/kits/component.js"));

var _router = _interopRequireDefault(__webpack_require__(/*! @elementor/router */ "@elementor/router"));

var _component2 = _interopRequireDefault(__webpack_require__(/*! ./data/taxonomies/component */ "../core/app/modules/kit-library/assets/js/data/taxonomies/component.js"));

var KitLibrary = /*#__PURE__*/function () {
  function KitLibrary() {
    (0, _classCallCheck2.default)(this, KitLibrary);

    if (!this.hasAccessToModule()) {
      return;
    }

    $e.components.register(new _component.default());
    $e.components.register(new _component2.default());

    _router.default.addRoute({
      path: '/kit-library/*',
      component: React.lazy(function () {
        return Promise.all(/*! import() | kit-library */[__webpack_require__.e("vendors-node_modules_babel_runtime-corejs2_core-js_object_values_js-node_modules_babel_runtim-2f5074"), __webpack_require__.e("kit-library")]).then(__webpack_require__.t.bind(__webpack_require__, /*! ./app */ "../core/app/modules/kit-library/assets/js/app.js", 23));
      })
    });
  }

  (0, _createClass2.default)(KitLibrary, [{
    key: "hasAccessToModule",
    value: function hasAccessToModule() {
      var _elementorAppConfig$k;

      return (_elementorAppConfig$k = elementorAppConfig['kit-library']) === null || _elementorAppConfig$k === void 0 ? void 0 : _elementorAppConfig$k['has_access_to_module'];
    }
  }]);
  return KitLibrary;
}();

exports.default = KitLibrary;

/***/ }),

/***/ "../node_modules/core-js/library/fn/array/from.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/fn/array/from.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.string.iterator */ "../node_modules/core-js/library/modules/es6.string.iterator.js");
__webpack_require__(/*! ../../modules/es6.array.from */ "../node_modules/core-js/library/modules/es6.array.from.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Array.from;


/***/ }),

/***/ "../node_modules/core-js/library/fn/array/is-array.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/fn/array/is-array.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.array.is-array */ "../node_modules/core-js/library/modules/es6.array.is-array.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Array.isArray;


/***/ }),

/***/ "../node_modules/core-js/library/fn/json/stringify.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/fn/json/stringify.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var core = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js");
var $JSON = core.JSON || (core.JSON = { stringify: JSON.stringify });
module.exports = function stringify(it) { // eslint-disable-line no-unused-vars
  return $JSON.stringify.apply($JSON, arguments);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/assign.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/assign.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.assign */ "../node_modules/core-js/library/modules/es6.object.assign.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.assign;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/create.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/create.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.create */ "../node_modules/core-js/library/modules/es6.object.create.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function create(P, D) {
  return $Object.create(P, D);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/define-properties.js":
/*!**********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/define-properties.js ***!
  \**********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.define-properties */ "../node_modules/core-js/library/modules/es6.object.define-properties.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function defineProperties(T, D) {
  return $Object.defineProperties(T, D);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/define-property.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/define-property.js ***!
  \********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.define-property */ "../node_modules/core-js/library/modules/es6.object.define-property.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function defineProperty(it, key, desc) {
  return $Object.defineProperty(it, key, desc);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/entries.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/entries.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es7.object.entries */ "../node_modules/core-js/library/modules/es7.object.entries.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.entries;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/get-own-property-descriptor.js":
/*!********************************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/get-own-property-descriptor.js ***!
  \********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.get-own-property-descriptor */ "../node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js");
var $Object = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object;
module.exports = function getOwnPropertyDescriptor(it, key) {
  return $Object.getOwnPropertyDescriptor(it, key);
};


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/get-own-property-descriptors.js":
/*!*********************************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/get-own-property-descriptors.js ***!
  \*********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es7.object.get-own-property-descriptors */ "../node_modules/core-js/library/modules/es7.object.get-own-property-descriptors.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.getOwnPropertyDescriptors;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/get-own-property-symbols.js":
/*!*****************************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/get-own-property-symbols.js ***!
  \*****************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.symbol */ "../node_modules/core-js/library/modules/es6.symbol.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.getOwnPropertySymbols;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/get-prototype-of.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/get-prototype-of.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.get-prototype-of */ "../node_modules/core-js/library/modules/es6.object.get-prototype-of.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.getPrototypeOf;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/keys.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/keys.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.keys */ "../node_modules/core-js/library/modules/es6.object.keys.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.keys;


/***/ }),

/***/ "../node_modules/core-js/library/fn/object/set-prototype-of.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/fn/object/set-prototype-of.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.object.set-prototype-of */ "../node_modules/core-js/library/modules/es6.object.set-prototype-of.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Object.setPrototypeOf;


/***/ }),

/***/ "../node_modules/core-js/library/fn/parse-int.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/fn/parse-int.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../modules/es6.parse-int */ "../node_modules/core-js/library/modules/es6.parse-int.js");
module.exports = __webpack_require__(/*! ../modules/_core */ "../node_modules/core-js/library/modules/_core.js").parseInt;


/***/ }),

/***/ "../node_modules/core-js/library/fn/reflect/construct.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/fn/reflect/construct.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.reflect.construct */ "../node_modules/core-js/library/modules/es6.reflect.construct.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Reflect.construct;


/***/ }),

/***/ "../node_modules/core-js/library/fn/reflect/get.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/library/fn/reflect/get.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.reflect.get */ "../node_modules/core-js/library/modules/es6.reflect.get.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Reflect.get;


/***/ }),

/***/ "../node_modules/core-js/library/fn/symbol/index.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/fn/symbol/index.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.symbol */ "../node_modules/core-js/library/modules/es6.symbol.js");
__webpack_require__(/*! ../../modules/es6.object.to-string */ "../node_modules/core-js/library/modules/es6.object.to-string.js");
__webpack_require__(/*! ../../modules/es7.symbol.async-iterator */ "../node_modules/core-js/library/modules/es7.symbol.async-iterator.js");
__webpack_require__(/*! ../../modules/es7.symbol.observable */ "../node_modules/core-js/library/modules/es7.symbol.observable.js");
module.exports = __webpack_require__(/*! ../../modules/_core */ "../node_modules/core-js/library/modules/_core.js").Symbol;


/***/ }),

/***/ "../node_modules/core-js/library/fn/symbol/iterator.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/fn/symbol/iterator.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../../modules/es6.string.iterator */ "../node_modules/core-js/library/modules/es6.string.iterator.js");
__webpack_require__(/*! ../../modules/web.dom.iterable */ "../node_modules/core-js/library/modules/web.dom.iterable.js");
module.exports = __webpack_require__(/*! ../../modules/_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js").f('iterator');


/***/ }),

/***/ "../node_modules/core-js/library/fn/weak-map.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/library/fn/weak-map.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ../modules/es6.object.to-string */ "../node_modules/core-js/library/modules/es6.object.to-string.js");
__webpack_require__(/*! ../modules/web.dom.iterable */ "../node_modules/core-js/library/modules/web.dom.iterable.js");
__webpack_require__(/*! ../modules/es6.weak-map */ "../node_modules/core-js/library/modules/es6.weak-map.js");
__webpack_require__(/*! ../modules/es7.weak-map.of */ "../node_modules/core-js/library/modules/es7.weak-map.of.js");
__webpack_require__(/*! ../modules/es7.weak-map.from */ "../node_modules/core-js/library/modules/es7.weak-map.from.js");
module.exports = __webpack_require__(/*! ../modules/_core */ "../node_modules/core-js/library/modules/_core.js").WeakMap;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_a-function.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_a-function.js ***!
  \**************************************************************/
/***/ ((module) => {

module.exports = function (it) {
  if (typeof it != 'function') throw TypeError(it + ' is not a function!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_add-to-unscopables.js":
/*!**********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_add-to-unscopables.js ***!
  \**********************************************************************/
/***/ ((module) => {

module.exports = function () { /* empty */ };


/***/ }),

/***/ "../node_modules/core-js/library/modules/_an-instance.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_an-instance.js ***!
  \***************************************************************/
/***/ ((module) => {

module.exports = function (it, Constructor, name, forbiddenField) {
  if (!(it instanceof Constructor) || (forbiddenField !== undefined && forbiddenField in it)) {
    throw TypeError(name + ': incorrect invocation!');
  } return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_an-object.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_an-object.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
module.exports = function (it) {
  if (!isObject(it)) throw TypeError(it + ' is not an object!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-includes.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-includes.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// false -> Array#indexOf
// true  -> Array#includes
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
var toAbsoluteIndex = __webpack_require__(/*! ./_to-absolute-index */ "../node_modules/core-js/library/modules/_to-absolute-index.js");
module.exports = function (IS_INCLUDES) {
  return function ($this, el, fromIndex) {
    var O = toIObject($this);
    var length = toLength(O.length);
    var index = toAbsoluteIndex(fromIndex, length);
    var value;
    // Array#includes uses SameValueZero equality algorithm
    // eslint-disable-next-line no-self-compare
    if (IS_INCLUDES && el != el) while (length > index) {
      value = O[index++];
      // eslint-disable-next-line no-self-compare
      if (value != value) return true;
    // Array#indexOf ignores holes, Array#includes - not
    } else for (;length > index; index++) if (IS_INCLUDES || index in O) {
      if (O[index] === el) return IS_INCLUDES || index || 0;
    } return !IS_INCLUDES && -1;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-methods.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-methods.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 0 -> Array#forEach
// 1 -> Array#map
// 2 -> Array#filter
// 3 -> Array#some
// 4 -> Array#every
// 5 -> Array#find
// 6 -> Array#findIndex
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/library/modules/_iobject.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
var asc = __webpack_require__(/*! ./_array-species-create */ "../node_modules/core-js/library/modules/_array-species-create.js");
module.exports = function (TYPE, $create) {
  var IS_MAP = TYPE == 1;
  var IS_FILTER = TYPE == 2;
  var IS_SOME = TYPE == 3;
  var IS_EVERY = TYPE == 4;
  var IS_FIND_INDEX = TYPE == 6;
  var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
  var create = $create || asc;
  return function ($this, callbackfn, that) {
    var O = toObject($this);
    var self = IObject(O);
    var f = ctx(callbackfn, that, 3);
    var length = toLength(self.length);
    var index = 0;
    var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;
    var val, res;
    for (;length > index; index++) if (NO_HOLES || index in self) {
      val = self[index];
      res = f(val, index, O);
      if (TYPE) {
        if (IS_MAP) result[index] = res;   // map
        else if (res) switch (TYPE) {
          case 3: return true;             // some
          case 5: return val;              // find
          case 6: return index;            // findIndex
          case 2: result.push(val);        // filter
        } else if (IS_EVERY) return false; // every
      }
    }
    return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-species-constructor.js":
/*!*****************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-species-constructor.js ***!
  \*****************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var isArray = __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/library/modules/_is-array.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('species');

module.exports = function (original) {
  var C;
  if (isArray(original)) {
    C = original.constructor;
    // cross-realm fallback
    if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
    if (isObject(C)) {
      C = C[SPECIES];
      if (C === null) C = undefined;
    }
  } return C === undefined ? Array : C;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_array-species-create.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_array-species-create.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 9.4.2.3 ArraySpeciesCreate(originalArray, length)
var speciesConstructor = __webpack_require__(/*! ./_array-species-constructor */ "../node_modules/core-js/library/modules/_array-species-constructor.js");

module.exports = function (original, length) {
  return new (speciesConstructor(original))(length);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_bind.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_bind.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var invoke = __webpack_require__(/*! ./_invoke */ "../node_modules/core-js/library/modules/_invoke.js");
var arraySlice = [].slice;
var factories = {};

var construct = function (F, len, args) {
  if (!(len in factories)) {
    for (var n = [], i = 0; i < len; i++) n[i] = 'a[' + i + ']';
    // eslint-disable-next-line no-new-func
    factories[len] = Function('F,a', 'return new F(' + n.join(',') + ')');
  } return factories[len](F, args);
};

module.exports = Function.bind || function bind(that /* , ...args */) {
  var fn = aFunction(this);
  var partArgs = arraySlice.call(arguments, 1);
  var bound = function (/* args... */) {
    var args = partArgs.concat(arraySlice.call(arguments));
    return this instanceof bound ? construct(fn, args.length, args) : invoke(fn, args, that);
  };
  if (isObject(fn.prototype)) bound.prototype = fn.prototype;
  return bound;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_classof.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_classof.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// getting tag from 19.1.3.6 Object.prototype.toString()
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('toStringTag');
// ES3 wrong here
var ARG = cof(function () { return arguments; }()) == 'Arguments';

// fallback for IE11 Script Access Denied error
var tryGet = function (it, key) {
  try {
    return it[key];
  } catch (e) { /* empty */ }
};

module.exports = function (it) {
  var O, T, B;
  return it === undefined ? 'Undefined' : it === null ? 'Null'
    // @@toStringTag case
    : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T
    // builtinTag case
    : ARG ? cof(O)
    // ES3 arguments fallback
    : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_cof.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_cof.js ***!
  \*******************************************************/
/***/ ((module) => {

var toString = {}.toString;

module.exports = function (it) {
  return toString.call(it).slice(8, -1);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_collection-weak.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_collection-weak.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var redefineAll = __webpack_require__(/*! ./_redefine-all */ "../node_modules/core-js/library/modules/_redefine-all.js");
var getWeak = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js").getWeak;
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var anInstance = __webpack_require__(/*! ./_an-instance */ "../node_modules/core-js/library/modules/_an-instance.js");
var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");
var createArrayMethod = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/library/modules/_array-methods.js");
var $has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var validate = __webpack_require__(/*! ./_validate-collection */ "../node_modules/core-js/library/modules/_validate-collection.js");
var arrayFind = createArrayMethod(5);
var arrayFindIndex = createArrayMethod(6);
var id = 0;

// fallback for uncaught frozen keys
var uncaughtFrozenStore = function (that) {
  return that._l || (that._l = new UncaughtFrozenStore());
};
var UncaughtFrozenStore = function () {
  this.a = [];
};
var findUncaughtFrozen = function (store, key) {
  return arrayFind(store.a, function (it) {
    return it[0] === key;
  });
};
UncaughtFrozenStore.prototype = {
  get: function (key) {
    var entry = findUncaughtFrozen(this, key);
    if (entry) return entry[1];
  },
  has: function (key) {
    return !!findUncaughtFrozen(this, key);
  },
  set: function (key, value) {
    var entry = findUncaughtFrozen(this, key);
    if (entry) entry[1] = value;
    else this.a.push([key, value]);
  },
  'delete': function (key) {
    var index = arrayFindIndex(this.a, function (it) {
      return it[0] === key;
    });
    if (~index) this.a.splice(index, 1);
    return !!~index;
  }
};

module.exports = {
  getConstructor: function (wrapper, NAME, IS_MAP, ADDER) {
    var C = wrapper(function (that, iterable) {
      anInstance(that, C, NAME, '_i');
      that._t = NAME;      // collection type
      that._i = id++;      // collection id
      that._l = undefined; // leak store for uncaught frozen objects
      if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);
    });
    redefineAll(C.prototype, {
      // 23.3.3.2 WeakMap.prototype.delete(key)
      // 23.4.3.3 WeakSet.prototype.delete(value)
      'delete': function (key) {
        if (!isObject(key)) return false;
        var data = getWeak(key);
        if (data === true) return uncaughtFrozenStore(validate(this, NAME))['delete'](key);
        return data && $has(data, this._i) && delete data[this._i];
      },
      // 23.3.3.4 WeakMap.prototype.has(key)
      // 23.4.3.4 WeakSet.prototype.has(value)
      has: function has(key) {
        if (!isObject(key)) return false;
        var data = getWeak(key);
        if (data === true) return uncaughtFrozenStore(validate(this, NAME)).has(key);
        return data && $has(data, this._i);
      }
    });
    return C;
  },
  def: function (that, key, value) {
    var data = getWeak(anObject(key), true);
    if (data === true) uncaughtFrozenStore(that).set(key, value);
    else data[that._i] = value;
    return that;
  },
  ufstore: uncaughtFrozenStore
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_collection.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_collection.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var meta = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var redefineAll = __webpack_require__(/*! ./_redefine-all */ "../node_modules/core-js/library/modules/_redefine-all.js");
var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");
var anInstance = __webpack_require__(/*! ./_an-instance */ "../node_modules/core-js/library/modules/_an-instance.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
var each = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/library/modules/_array-methods.js")(0);
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");

module.exports = function (NAME, wrapper, methods, common, IS_MAP, IS_WEAK) {
  var Base = global[NAME];
  var C = Base;
  var ADDER = IS_MAP ? 'set' : 'add';
  var proto = C && C.prototype;
  var O = {};
  if (!DESCRIPTORS || typeof C != 'function' || !(IS_WEAK || proto.forEach && !fails(function () {
    new C().entries().next();
  }))) {
    // create collection constructor
    C = common.getConstructor(wrapper, NAME, IS_MAP, ADDER);
    redefineAll(C.prototype, methods);
    meta.NEED = true;
  } else {
    C = wrapper(function (target, iterable) {
      anInstance(target, C, NAME, '_c');
      target._c = new Base();
      if (iterable != undefined) forOf(iterable, IS_MAP, target[ADDER], target);
    });
    each('add,clear,delete,forEach,get,has,set,keys,values,entries,toJSON'.split(','), function (KEY) {
      var IS_ADDER = KEY == 'add' || KEY == 'set';
      if (KEY in proto && !(IS_WEAK && KEY == 'clear')) hide(C.prototype, KEY, function (a, b) {
        anInstance(this, C, KEY);
        if (!IS_ADDER && IS_WEAK && !isObject(a)) return KEY == 'get' ? undefined : false;
        var result = this._c[KEY](a === 0 ? 0 : a, b);
        return IS_ADDER ? this : result;
      });
    });
    IS_WEAK || dP(C.prototype, 'size', {
      get: function () {
        return this._c.size;
      }
    });
  }

  setToStringTag(C, NAME);

  O[NAME] = C;
  $export($export.G + $export.W + $export.F, O);

  if (!IS_WEAK) common.setStrong(C, NAME, IS_MAP);

  return C;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_core.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_core.js ***!
  \********************************************************/
/***/ ((module) => {

var core = module.exports = { version: '2.6.12' };
if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/library/modules/_create-property.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_create-property.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $defineProperty = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");

module.exports = function (object, index, value) {
  if (index in object) $defineProperty.f(object, index, createDesc(0, value));
  else object[index] = value;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_ctx.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_ctx.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// optional / simple context binding
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
module.exports = function (fn, that, length) {
  aFunction(fn);
  if (that === undefined) return fn;
  switch (length) {
    case 1: return function (a) {
      return fn.call(that, a);
    };
    case 2: return function (a, b) {
      return fn.call(that, a, b);
    };
    case 3: return function (a, b, c) {
      return fn.call(that, a, b, c);
    };
  }
  return function (/* ...args */) {
    return fn.apply(that, arguments);
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_defined.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_defined.js ***!
  \***********************************************************/
/***/ ((module) => {

// 7.2.1 RequireObjectCoercible(argument)
module.exports = function (it) {
  if (it == undefined) throw TypeError("Can't call method on  " + it);
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_descriptors.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_descriptors.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Thank's IE8 for his funny defineProperty
module.exports = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/_dom-create.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_dom-create.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").document;
// typeof document.createElement is 'object' in old IE
var is = isObject(document) && isObject(document.createElement);
module.exports = function (it) {
  return is ? document.createElement(it) : {};
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_enum-bug-keys.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_enum-bug-keys.js ***!
  \*****************************************************************/
/***/ ((module) => {

// IE 8- don't enum bug keys
module.exports = (
  'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
).split(',');


/***/ }),

/***/ "../node_modules/core-js/library/modules/_enum-keys.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_enum-keys.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// all enumerable object keys, includes symbols
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var gOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js");
module.exports = function (it) {
  var result = getKeys(it);
  var getSymbols = gOPS.f;
  if (getSymbols) {
    var symbols = getSymbols(it);
    var isEnum = pIE.f;
    var i = 0;
    var key;
    while (symbols.length > i) if (isEnum.call(it, key = symbols[i++])) result.push(key);
  } return result;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_export.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_export.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var PROTOTYPE = 'prototype';

var $export = function (type, name, source) {
  var IS_FORCED = type & $export.F;
  var IS_GLOBAL = type & $export.G;
  var IS_STATIC = type & $export.S;
  var IS_PROTO = type & $export.P;
  var IS_BIND = type & $export.B;
  var IS_WRAP = type & $export.W;
  var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
  var expProto = exports[PROTOTYPE];
  var target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE];
  var key, own, out;
  if (IS_GLOBAL) source = name;
  for (key in source) {
    // contains in native
    own = !IS_FORCED && target && target[key] !== undefined;
    if (own && has(exports, key)) continue;
    // export native or passed
    out = own ? target[key] : source[key];
    // prevent global pollution for namespaces
    exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key]
    // bind timers to global for call from export context
    : IS_BIND && own ? ctx(out, global)
    // wrap global constructors for prevent change them in library
    : IS_WRAP && target[key] == out ? (function (C) {
      var F = function (a, b, c) {
        if (this instanceof C) {
          switch (arguments.length) {
            case 0: return new C();
            case 1: return new C(a);
            case 2: return new C(a, b);
          } return new C(a, b, c);
        } return C.apply(this, arguments);
      };
      F[PROTOTYPE] = C[PROTOTYPE];
      return F;
    // make static versions for prototype methods
    })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
    // export proto methods to core.%CONSTRUCTOR%.methods.%NAME%
    if (IS_PROTO) {
      (exports.virtual || (exports.virtual = {}))[key] = out;
      // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME%
      if (type & $export.R && expProto && !expProto[key]) hide(expProto, key, out);
    }
  }
};
// type bitmap
$export.F = 1;   // forced
$export.G = 2;   // global
$export.S = 4;   // static
$export.P = 8;   // proto
$export.B = 16;  // bind
$export.W = 32;  // wrap
$export.U = 64;  // safe
$export.R = 128; // real proto method for `library`
module.exports = $export;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_fails.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_fails.js ***!
  \*********************************************************/
/***/ ((module) => {

module.exports = function (exec) {
  try {
    return !!exec();
  } catch (e) {
    return true;
  }
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_for-of.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_for-of.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var call = __webpack_require__(/*! ./_iter-call */ "../node_modules/core-js/library/modules/_iter-call.js");
var isArrayIter = __webpack_require__(/*! ./_is-array-iter */ "../node_modules/core-js/library/modules/_is-array-iter.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
var getIterFn = __webpack_require__(/*! ./core.get-iterator-method */ "../node_modules/core-js/library/modules/core.get-iterator-method.js");
var BREAK = {};
var RETURN = {};
var exports = module.exports = function (iterable, entries, fn, that, ITERATOR) {
  var iterFn = ITERATOR ? function () { return iterable; } : getIterFn(iterable);
  var f = ctx(fn, that, entries ? 2 : 1);
  var index = 0;
  var length, step, iterator, result;
  if (typeof iterFn != 'function') throw TypeError(iterable + ' is not iterable!');
  // fast case for arrays with default iterator
  if (isArrayIter(iterFn)) for (length = toLength(iterable.length); length > index; index++) {
    result = entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]);
    if (result === BREAK || result === RETURN) return result;
  } else for (iterator = iterFn.call(iterable); !(step = iterator.next()).done;) {
    result = call(iterator, f, step.value, entries);
    if (result === BREAK || result === RETURN) return result;
  }
};
exports.BREAK = BREAK;
exports.RETURN = RETURN;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_global.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_global.js ***!
  \**********************************************************/
/***/ ((module) => {

// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
var global = module.exports = typeof window != 'undefined' && window.Math == Math
  ? window : typeof self != 'undefined' && self.Math == Math ? self
  // eslint-disable-next-line no-new-func
  : Function('return this')();
if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/library/modules/_has.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_has.js ***!
  \*******************************************************/
/***/ ((module) => {

var hasOwnProperty = {}.hasOwnProperty;
module.exports = function (it, key) {
  return hasOwnProperty.call(it, key);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_hide.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_hide.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? function (object, key, value) {
  return dP.f(object, key, createDesc(1, value));
} : function (object, key, value) {
  object[key] = value;
  return object;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_html.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_html.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").document;
module.exports = document && document.documentElement;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_ie8-dom-define.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_ie8-dom-define.js ***!
  \******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") && !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  return Object.defineProperty(__webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/library/modules/_dom-create.js")('div'), 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/_invoke.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_invoke.js ***!
  \**********************************************************/
/***/ ((module) => {

// fast apply, http://jsperf.lnkit.com/fast-apply/5
module.exports = function (fn, args, that) {
  var un = that === undefined;
  switch (args.length) {
    case 0: return un ? fn()
                      : fn.call(that);
    case 1: return un ? fn(args[0])
                      : fn.call(that, args[0]);
    case 2: return un ? fn(args[0], args[1])
                      : fn.call(that, args[0], args[1]);
    case 3: return un ? fn(args[0], args[1], args[2])
                      : fn.call(that, args[0], args[1], args[2]);
    case 4: return un ? fn(args[0], args[1], args[2], args[3])
                      : fn.call(that, args[0], args[1], args[2], args[3]);
  } return fn.apply(that, args);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iobject.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iobject.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// fallback for non-array-like ES3 and non-enumerable old V8 strings
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js");
// eslint-disable-next-line no-prototype-builtins
module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
  return cof(it) == 'String' ? it.split('') : Object(it);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_is-array-iter.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_is-array-iter.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// check on default Array iterator
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var ArrayProto = Array.prototype;

module.exports = function (it) {
  return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_is-array.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_is-array.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.2.2 IsArray(argument)
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/library/modules/_cof.js");
module.exports = Array.isArray || function isArray(arg) {
  return cof(arg) == 'Array';
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_is-object.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_is-object.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = function (it) {
  return typeof it === 'object' ? it !== null : typeof it === 'function';
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-call.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-call.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// call something on iterator step with safe closing on error
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
module.exports = function (iterator, fn, value, entries) {
  try {
    return entries ? fn(anObject(value)[0], value[1]) : fn(value);
  // 7.4.6 IteratorClose(iterator, completion)
  } catch (e) {
    var ret = iterator['return'];
    if (ret !== undefined) anObject(ret.call(iterator));
    throw e;
  }
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-create.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-create.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
var descriptor = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var IteratorPrototype = {};

// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
__webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js")(IteratorPrototype, __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator'), function () { return this; });

module.exports = function (Constructor, NAME, next) {
  Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });
  setToStringTag(Constructor, NAME + ' Iterator');
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-define.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-define.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/library/modules/_redefine.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var $iterCreate = __webpack_require__(/*! ./_iter-create */ "../node_modules/core-js/library/modules/_iter-create.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`
var FF_ITERATOR = '@@iterator';
var KEYS = 'keys';
var VALUES = 'values';

var returnThis = function () { return this; };

module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {
  $iterCreate(Constructor, NAME, next);
  var getMethod = function (kind) {
    if (!BUGGY && kind in proto) return proto[kind];
    switch (kind) {
      case KEYS: return function keys() { return new Constructor(this, kind); };
      case VALUES: return function values() { return new Constructor(this, kind); };
    } return function entries() { return new Constructor(this, kind); };
  };
  var TAG = NAME + ' Iterator';
  var DEF_VALUES = DEFAULT == VALUES;
  var VALUES_BUG = false;
  var proto = Base.prototype;
  var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];
  var $default = $native || getMethod(DEFAULT);
  var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;
  var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;
  var methods, key, IteratorPrototype;
  // Fix native
  if ($anyNative) {
    IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));
    if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {
      // Set @@toStringTag to native iterators
      setToStringTag(IteratorPrototype, TAG, true);
      // fix for some old engines
      if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);
    }
  }
  // fix Array#{values, @@iterator}.name in V8 / FF
  if (DEF_VALUES && $native && $native.name !== VALUES) {
    VALUES_BUG = true;
    $default = function values() { return $native.call(this); };
  }
  // Define iterator
  if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {
    hide(proto, ITERATOR, $default);
  }
  // Plug for library
  Iterators[NAME] = $default;
  Iterators[TAG] = returnThis;
  if (DEFAULT) {
    methods = {
      values: DEF_VALUES ? $default : getMethod(VALUES),
      keys: IS_SET ? $default : getMethod(KEYS),
      entries: $entries
    };
    if (FORCED) for (key in methods) {
      if (!(key in proto)) redefine(proto, key, methods[key]);
    } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
  }
  return methods;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-detect.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-detect.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var SAFE_CLOSING = false;

try {
  var riter = [7][ITERATOR]();
  riter['return'] = function () { SAFE_CLOSING = true; };
  // eslint-disable-next-line no-throw-literal
  Array.from(riter, function () { throw 2; });
} catch (e) { /* empty */ }

module.exports = function (exec, skipClosing) {
  if (!skipClosing && !SAFE_CLOSING) return false;
  var safe = false;
  try {
    var arr = [7];
    var iter = arr[ITERATOR]();
    iter.next = function () { return { done: safe = true }; };
    arr[ITERATOR] = function () { return iter; };
    exec(arr);
  } catch (e) { /* empty */ }
  return safe;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iter-step.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iter-step.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = function (done, value) {
  return { value: value, done: !!done };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_iterators.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_iterators.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = {};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_library.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_library.js ***!
  \***********************************************************/
/***/ ((module) => {

module.exports = true;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_meta.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_meta.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var META = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js")('meta');
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var setDesc = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
var id = 0;
var isExtensible = Object.isExtensible || function () {
  return true;
};
var FREEZE = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  return isExtensible(Object.preventExtensions({}));
});
var setMeta = function (it) {
  setDesc(it, META, { value: {
    i: 'O' + ++id, // object ID
    w: {}          // weak collections IDs
  } });
};
var fastKey = function (it, create) {
  // return primitive with prefix
  if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;
  if (!has(it, META)) {
    // can't set metadata to uncaught frozen object
    if (!isExtensible(it)) return 'F';
    // not necessary to add metadata
    if (!create) return 'E';
    // add missing metadata
    setMeta(it);
  // return object ID
  } return it[META].i;
};
var getWeak = function (it, create) {
  if (!has(it, META)) {
    // can't set metadata to uncaught frozen object
    if (!isExtensible(it)) return true;
    // not necessary to add metadata
    if (!create) return false;
    // add missing metadata
    setMeta(it);
  // return hash weak collections IDs
  } return it[META].w;
};
// add metadata on freeze-family methods calling
var onFreeze = function (it) {
  if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it);
  return it;
};
var meta = module.exports = {
  KEY: META,
  NEED: false,
  fastKey: fastKey,
  getWeak: getWeak,
  onFreeze: onFreeze
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-assign.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-assign.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 19.1.2.1 Object.assign(target, source, ...)
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var gOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/library/modules/_iobject.js");
var $assign = Object.assign;

// should work with symbols and should have deterministic property order (V8 bug)
module.exports = !$assign || __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js")(function () {
  var A = {};
  var B = {};
  // eslint-disable-next-line no-undef
  var S = Symbol();
  var K = 'abcdefghijklmnopqrst';
  A[S] = 7;
  K.split('').forEach(function (k) { B[k] = k; });
  return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join('') != K;
}) ? function assign(target, source) { // eslint-disable-line no-unused-vars
  var T = toObject(target);
  var aLen = arguments.length;
  var index = 1;
  var getSymbols = gOPS.f;
  var isEnum = pIE.f;
  while (aLen > index) {
    var S = IObject(arguments[index++]);
    var keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S);
    var length = keys.length;
    var j = 0;
    var key;
    while (length > j) {
      key = keys[j++];
      if (!DESCRIPTORS || isEnum.call(S, key)) T[key] = S[key];
    }
  } return T;
} : $assign;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-create.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-create.js ***!
  \*****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var dPs = __webpack_require__(/*! ./_object-dps */ "../node_modules/core-js/library/modules/_object-dps.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');
var Empty = function () { /* empty */ };
var PROTOTYPE = 'prototype';

// Create object with fake `null` prototype: use iframe Object with cleared prototype
var createDict = function () {
  // Thrash, waste and sodomy: IE GC bug
  var iframe = __webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/library/modules/_dom-create.js")('iframe');
  var i = enumBugKeys.length;
  var lt = '<';
  var gt = '>';
  var iframeDocument;
  iframe.style.display = 'none';
  __webpack_require__(/*! ./_html */ "../node_modules/core-js/library/modules/_html.js").appendChild(iframe);
  iframe.src = 'javascript:'; // eslint-disable-line no-script-url
  // createDict = iframe.contentWindow.Object;
  // html.removeChild(iframe);
  iframeDocument = iframe.contentWindow.document;
  iframeDocument.open();
  iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);
  iframeDocument.close();
  createDict = iframeDocument.F;
  while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];
  return createDict();
};

module.exports = Object.create || function create(O, Properties) {
  var result;
  if (O !== null) {
    Empty[PROTOTYPE] = anObject(O);
    result = new Empty();
    Empty[PROTOTYPE] = null;
    // add "__proto__" for Object.getPrototypeOf polyfill
    result[IE_PROTO] = O;
  } else result = createDict();
  return Properties === undefined ? result : dPs(result, Properties);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-dp.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-dp.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/library/modules/_ie8-dom-define.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
var dP = Object.defineProperty;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? Object.defineProperty : function defineProperty(O, P, Attributes) {
  anObject(O);
  P = toPrimitive(P, true);
  anObject(Attributes);
  if (IE8_DOM_DEFINE) try {
    return dP(O, P, Attributes);
  } catch (e) { /* empty */ }
  if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
  if ('value' in Attributes) O[P] = Attributes.value;
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-dps.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-dps.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");

module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? Object.defineProperties : function defineProperties(O, Properties) {
  anObject(O);
  var keys = getKeys(Properties);
  var length = keys.length;
  var i = 0;
  var P;
  while (length > i) dP.f(O, P = keys[i++], Properties[P]);
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gopd.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gopd.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var pIE = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/library/modules/_ie8-dom-define.js");
var gOPD = Object.getOwnPropertyDescriptor;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js") ? gOPD : function getOwnPropertyDescriptor(O, P) {
  O = toIObject(O);
  P = toPrimitive(P, true);
  if (IE8_DOM_DEFINE) try {
    return gOPD(O, P);
  } catch (e) { /* empty */ }
  if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gopn-ext.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gopn-ext.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var gOPN = __webpack_require__(/*! ./_object-gopn */ "../node_modules/core-js/library/modules/_object-gopn.js").f;
var toString = {}.toString;

var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames
  ? Object.getOwnPropertyNames(window) : [];

var getWindowNames = function (it) {
  try {
    return gOPN(it);
  } catch (e) {
    return windowNames.slice();
  }
};

module.exports.f = function getOwnPropertyNames(it) {
  return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gopn.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gopn.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)
var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/library/modules/_object-keys-internal.js");
var hiddenKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js").concat('length', 'prototype');

exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
  return $keys(O, hiddenKeys);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gops.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gops.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, exports) => {

exports.f = Object.getOwnPropertySymbols;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-gpo.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-gpo.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');
var ObjectProto = Object.prototype;

module.exports = Object.getPrototypeOf || function (O) {
  O = toObject(O);
  if (has(O, IE_PROTO)) return O[IE_PROTO];
  if (typeof O.constructor == 'function' && O instanceof O.constructor) {
    return O.constructor.prototype;
  } return O instanceof Object ? ObjectProto : null;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-keys-internal.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-keys-internal.js ***!
  \************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var arrayIndexOf = __webpack_require__(/*! ./_array-includes */ "../node_modules/core-js/library/modules/_array-includes.js")(false);
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/library/modules/_shared-key.js")('IE_PROTO');

module.exports = function (object, names) {
  var O = toIObject(object);
  var i = 0;
  var result = [];
  var key;
  for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);
  // Don't enum bug & hidden keys
  while (names.length > i) if (has(O, key = names[i++])) {
    ~arrayIndexOf(result, key) || result.push(key);
  }
  return result;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-keys.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-keys.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.14 / 15.2.3.14 Object.keys(O)
var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/library/modules/_object-keys-internal.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/library/modules/_enum-bug-keys.js");

module.exports = Object.keys || function keys(O) {
  return $keys(O, enumBugKeys);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-pie.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-pie.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, exports) => {

exports.f = {}.propertyIsEnumerable;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-sap.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-sap.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// most Object methods by ES6 should accept primitives
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
module.exports = function (KEY, exec) {
  var fn = (core.Object || {})[KEY] || Object[KEY];
  var exp = {};
  exp[KEY] = exec(fn);
  $export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_object-to-array.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_object-to-array.js ***!
  \*******************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var isEnum = __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js").f;
module.exports = function (isEntries) {
  return function (it) {
    var O = toIObject(it);
    var keys = getKeys(O);
    var length = keys.length;
    var i = 0;
    var result = [];
    var key;
    while (length > i) {
      key = keys[i++];
      if (!DESCRIPTORS || isEnum.call(O, key)) {
        result.push(isEntries ? [key, O[key]] : O[key]);
      }
    }
    return result;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_own-keys.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_own-keys.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// all object keys, includes non-enumerable and symbols
var gOPN = __webpack_require__(/*! ./_object-gopn */ "../node_modules/core-js/library/modules/_object-gopn.js");
var gOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var Reflect = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").Reflect;
module.exports = Reflect && Reflect.ownKeys || function ownKeys(it) {
  var keys = gOPN.f(anObject(it));
  var getSymbols = gOPS.f;
  return getSymbols ? keys.concat(getSymbols(it)) : keys;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_parse-int.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_parse-int.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var $parseInt = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").parseInt;
var $trim = __webpack_require__(/*! ./_string-trim */ "../node_modules/core-js/library/modules/_string-trim.js").trim;
var ws = __webpack_require__(/*! ./_string-ws */ "../node_modules/core-js/library/modules/_string-ws.js");
var hex = /^[-+]?0[xX]/;

module.exports = $parseInt(ws + '08') !== 8 || $parseInt(ws + '0x16') !== 22 ? function parseInt(str, radix) {
  var string = $trim(String(str), 3);
  return $parseInt(string, (radix >>> 0) || (hex.test(string) ? 16 : 10));
} : $parseInt;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_property-desc.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_property-desc.js ***!
  \*****************************************************************/
/***/ ((module) => {

module.exports = function (bitmap, value) {
  return {
    enumerable: !(bitmap & 1),
    configurable: !(bitmap & 2),
    writable: !(bitmap & 4),
    value: value
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_redefine-all.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_redefine-all.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
module.exports = function (target, src, safe) {
  for (var key in src) {
    if (safe && target[key]) target[key] = src[key];
    else hide(target, key, src[key]);
  } return target;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_redefine.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_redefine.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-collection-from.js":
/*!***********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-collection-from.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// https://tc39.github.io/proposal-setmap-offrom/
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var forOf = __webpack_require__(/*! ./_for-of */ "../node_modules/core-js/library/modules/_for-of.js");

module.exports = function (COLLECTION) {
  $export($export.S, COLLECTION, { from: function from(source /* , mapFn, thisArg */) {
    var mapFn = arguments[1];
    var mapping, A, n, cb;
    aFunction(this);
    mapping = mapFn !== undefined;
    if (mapping) aFunction(mapFn);
    if (source == undefined) return new this();
    A = [];
    if (mapping) {
      n = 0;
      cb = ctx(mapFn, arguments[2], 2);
      forOf(source, false, function (nextItem) {
        A.push(cb(nextItem, n++));
      });
    } else {
      forOf(source, false, A.push, A);
    }
    return new this(A);
  } });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-collection-of.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-collection-of.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// https://tc39.github.io/proposal-setmap-offrom/
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");

module.exports = function (COLLECTION) {
  $export($export.S, COLLECTION, { of: function of() {
    var length = arguments.length;
    var A = new Array(length);
    while (length--) A[length] = arguments[length];
    return new this(A);
  } });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-proto.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-proto.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Works with __proto__ only. Old v8 can't work with null proto objects.
/* eslint-disable no-proto */
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var check = function (O, proto) {
  anObject(O);
  if (!isObject(proto) && proto !== null) throw TypeError(proto + ": can't set as prototype!");
};
module.exports = {
  set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line
    function (test, buggy, set) {
      try {
        set = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js")(Function.call, __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js").f(Object.prototype, '__proto__').set, 2);
        set(test, []);
        buggy = !(test instanceof Array);
      } catch (e) { buggy = true; }
      return function setPrototypeOf(O, proto) {
        check(O, proto);
        if (buggy) O.__proto__ = proto;
        else set(O, proto);
        return O;
      };
    }({}, false) : undefined),
  check: check
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_set-to-string-tag.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_set-to-string-tag.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var def = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('toStringTag');

module.exports = function (it, tag, stat) {
  if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_shared-key.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_shared-key.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var shared = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js")('keys');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
module.exports = function (key) {
  return shared[key] || (shared[key] = uid(key));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_shared.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_shared.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var SHARED = '__core-js_shared__';
var store = global[SHARED] || (global[SHARED] = {});

(module.exports = function (key, value) {
  return store[key] || (store[key] = value !== undefined ? value : {});
})('versions', []).push({
  version: core.version,
  mode: __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js") ? 'pure' : 'global',
  copyright: '© 2020 Denis Pushkarev (zloirock.ru)'
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/_string-at.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_string-at.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
// true  -> String#at
// false -> String#codePointAt
module.exports = function (TO_STRING) {
  return function (that, pos) {
    var s = String(defined(that));
    var i = toInteger(pos);
    var l = s.length;
    var a, b;
    if (i < 0 || i >= l) return TO_STRING ? '' : undefined;
    a = s.charCodeAt(i);
    return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
      ? TO_STRING ? s.charAt(i) : a
      : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
  };
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_string-trim.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_string-trim.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
var spaces = __webpack_require__(/*! ./_string-ws */ "../node_modules/core-js/library/modules/_string-ws.js");
var space = '[' + spaces + ']';
var non = '\u200b\u0085';
var ltrim = RegExp('^' + space + space + '*');
var rtrim = RegExp(space + space + '*$');

var exporter = function (KEY, exec, ALIAS) {
  var exp = {};
  var FORCE = fails(function () {
    return !!spaces[KEY]() || non[KEY]() != non;
  });
  var fn = exp[KEY] = FORCE ? exec(trim) : spaces[KEY];
  if (ALIAS) exp[ALIAS] = fn;
  $export($export.P + $export.F * FORCE, 'String', exp);
};

// 1 -> String#trimLeft
// 2 -> String#trimRight
// 3 -> String#trim
var trim = exporter.trim = function (string, TYPE) {
  string = String(defined(string));
  if (TYPE & 1) string = string.replace(ltrim, '');
  if (TYPE & 2) string = string.replace(rtrim, '');
  return string;
};

module.exports = exporter;


/***/ }),

/***/ "../node_modules/core-js/library/modules/_string-ws.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_string-ws.js ***!
  \*************************************************************/
/***/ ((module) => {

module.exports = '\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003' +
  '\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF';


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-absolute-index.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-absolute-index.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
var max = Math.max;
var min = Math.min;
module.exports = function (index, length) {
  index = toInteger(index);
  return index < 0 ? max(index + length, 0) : min(index, length);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-integer.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-integer.js ***!
  \**************************************************************/
/***/ ((module) => {

// 7.1.4 ToInteger
var ceil = Math.ceil;
var floor = Math.floor;
module.exports = function (it) {
  return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-iobject.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-iobject.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// to indexed object, toObject with fallback for non-array-like ES3 strings
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/library/modules/_iobject.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
module.exports = function (it) {
  return IObject(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-length.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-length.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.15 ToLength
var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/library/modules/_to-integer.js");
var min = Math.min;
module.exports = function (it) {
  return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-object.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-object.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.13 ToObject(argument)
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/library/modules/_defined.js");
module.exports = function (it) {
  return Object(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_to-primitive.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_to-primitive.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.1 ToPrimitive(input [, PreferredType])
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
// instead of the ES6 spec version, we didn't implement @@toPrimitive case
// and the second argument - flag - preferred type is a string
module.exports = function (it, S) {
  if (!isObject(it)) return it;
  var fn, val;
  if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
  if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  throw TypeError("Can't convert object to primitive value");
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_uid.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_uid.js ***!
  \*******************************************************/
/***/ ((module) => {

var id = 0;
var px = Math.random();
module.exports = function (key) {
  return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_validate-collection.js":
/*!***********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_validate-collection.js ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
module.exports = function (it, TYPE) {
  if (!isObject(it) || it._t !== TYPE) throw TypeError('Incompatible receiver, ' + TYPE + ' required!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_wks-define.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/library/modules/_wks-define.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js");
var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js");
var wksExt = __webpack_require__(/*! ./_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js");
var defineProperty = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f;
module.exports = function (name) {
  var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {});
  if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) });
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/_wks-ext.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/library/modules/_wks-ext.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

exports.f = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js");


/***/ }),

/***/ "../node_modules/core-js/library/modules/_wks.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/library/modules/_wks.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var store = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js")('wks');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
var Symbol = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").Symbol;
var USE_SYMBOL = typeof Symbol == 'function';

var $exports = module.exports = function (name) {
  return store[name] || (store[name] =
    USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
};

$exports.store = store;


/***/ }),

/***/ "../node_modules/core-js/library/modules/core.get-iterator-method.js":
/*!***************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/core.get-iterator-method.js ***!
  \***************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/library/modules/_classof.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('iterator');
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
module.exports = __webpack_require__(/*! ./_core */ "../node_modules/core-js/library/modules/_core.js").getIteratorMethod = function (it) {
  if (it != undefined) return it[ITERATOR]
    || it['@@iterator']
    || Iterators[classof(it)];
};


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.array.from.js":
/*!*****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.array.from.js ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/library/modules/_ctx.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var call = __webpack_require__(/*! ./_iter-call */ "../node_modules/core-js/library/modules/_iter-call.js");
var isArrayIter = __webpack_require__(/*! ./_is-array-iter */ "../node_modules/core-js/library/modules/_is-array-iter.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/library/modules/_to-length.js");
var createProperty = __webpack_require__(/*! ./_create-property */ "../node_modules/core-js/library/modules/_create-property.js");
var getIterFn = __webpack_require__(/*! ./core.get-iterator-method */ "../node_modules/core-js/library/modules/core.get-iterator-method.js");

$export($export.S + $export.F * !__webpack_require__(/*! ./_iter-detect */ "../node_modules/core-js/library/modules/_iter-detect.js")(function (iter) { Array.from(iter); }), 'Array', {
  // 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined)
  from: function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {
    var O = toObject(arrayLike);
    var C = typeof this == 'function' ? this : Array;
    var aLen = arguments.length;
    var mapfn = aLen > 1 ? arguments[1] : undefined;
    var mapping = mapfn !== undefined;
    var index = 0;
    var iterFn = getIterFn(O);
    var length, result, step, iterator;
    if (mapping) mapfn = ctx(mapfn, aLen > 2 ? arguments[2] : undefined, 2);
    // if object isn't iterable or it's array with default iterator - use simple case
    if (iterFn != undefined && !(C == Array && isArrayIter(iterFn))) {
      for (iterator = iterFn.call(O), result = new C(); !(step = iterator.next()).done; index++) {
        createProperty(result, index, mapping ? call(iterator, mapfn, [step.value, index], true) : step.value);
      }
    } else {
      length = toLength(O.length);
      for (result = new C(length); length > index; index++) {
        createProperty(result, index, mapping ? mapfn(O[index], index) : O[index]);
      }
    }
    result.length = index;
    return result;
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.array.is-array.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.array.is-array.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 22.1.2.2 / 15.4.3.2 Array.isArray(arg)
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");

$export($export.S, 'Array', { isArray: __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/library/modules/_is-array.js") });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.array.iterator.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.array.iterator.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var addToUnscopables = __webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/library/modules/_add-to-unscopables.js");
var step = __webpack_require__(/*! ./_iter-step */ "../node_modules/core-js/library/modules/_iter-step.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");

// 22.1.3.4 Array.prototype.entries()
// 22.1.3.13 Array.prototype.keys()
// 22.1.3.29 Array.prototype.values()
// 22.1.3.30 Array.prototype[@@iterator]()
module.exports = __webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/library/modules/_iter-define.js")(Array, 'Array', function (iterated, kind) {
  this._t = toIObject(iterated); // target
  this._i = 0;                   // next index
  this._k = kind;                // kind
// 22.1.5.2.1 %ArrayIteratorPrototype%.next()
}, function () {
  var O = this._t;
  var kind = this._k;
  var index = this._i++;
  if (!O || index >= O.length) {
    this._t = undefined;
    return step(1);
  }
  if (kind == 'keys') return step(0, index);
  if (kind == 'values') return step(0, O[index]);
  return step(0, [index, O[index]]);
}, 'values');

// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
Iterators.Arguments = Iterators.Array;

addToUnscopables('keys');
addToUnscopables('values');
addToUnscopables('entries');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.assign.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.assign.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.3.1 Object.assign(target, source)
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");

$export($export.S + $export.F, 'Object', { assign: __webpack_require__(/*! ./_object-assign */ "../node_modules/core-js/library/modules/_object-assign.js") });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.create.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.create.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
$export($export.S, 'Object', { create: __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js") });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.define-properties.js":
/*!*******************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.define-properties.js ***!
  \*******************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
// 19.1.2.3 / 15.2.3.7 Object.defineProperties(O, Properties)
$export($export.S + $export.F * !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js"), 'Object', { defineProperties: __webpack_require__(/*! ./_object-dps */ "../node_modules/core-js/library/modules/_object-dps.js") });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.define-property.js":
/*!*****************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.define-property.js ***!
  \*****************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)
$export($export.S + $export.F * !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js"), 'Object', { defineProperty: __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js").f });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js":
/*!*****************************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.get-own-property-descriptor.js ***!
  \*****************************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var $getOwnPropertyDescriptor = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js").f;

__webpack_require__(/*! ./_object-sap */ "../node_modules/core-js/library/modules/_object-sap.js")('getOwnPropertyDescriptor', function () {
  return function getOwnPropertyDescriptor(it, key) {
    return $getOwnPropertyDescriptor(toIObject(it), key);
  };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.get-prototype-of.js":
/*!******************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.get-prototype-of.js ***!
  \******************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.9 Object.getPrototypeOf(O)
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var $getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");

__webpack_require__(/*! ./_object-sap */ "../node_modules/core-js/library/modules/_object-sap.js")('getPrototypeOf', function () {
  return function getPrototypeOf(it) {
    return $getPrototypeOf(toObject(it));
  };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.keys.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.keys.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.14 Object.keys(O)
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var $keys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");

__webpack_require__(/*! ./_object-sap */ "../node_modules/core-js/library/modules/_object-sap.js")('keys', function () {
  return function keys(it) {
    return $keys(toObject(it));
  };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.set-prototype-of.js":
/*!******************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.set-prototype-of.js ***!
  \******************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.3.19 Object.setPrototypeOf(O, proto)
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
$export($export.S, 'Object', { setPrototypeOf: __webpack_require__(/*! ./_set-proto */ "../node_modules/core-js/library/modules/_set-proto.js").set });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.object.to-string.js":
/*!***********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.object.to-string.js ***!
  \***********************************************************************/
/***/ (() => {



/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.parse-int.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.parse-int.js ***!
  \****************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var $parseInt = __webpack_require__(/*! ./_parse-int */ "../node_modules/core-js/library/modules/_parse-int.js");
// 18.2.5 parseInt(string, radix)
$export($export.G + $export.F * (parseInt != $parseInt), { parseInt: $parseInt });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.reflect.construct.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.reflect.construct.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 26.1.2 Reflect.construct(target, argumentsList [, newTarget])
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/library/modules/_a-function.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
var bind = __webpack_require__(/*! ./_bind */ "../node_modules/core-js/library/modules/_bind.js");
var rConstruct = (__webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js").Reflect || {}).construct;

// MS Edge supports only 2 arguments and argumentsList argument is optional
// FF Nightly sets third argument as `new.target`, but does not create `this` from it
var NEW_TARGET_BUG = fails(function () {
  function F() { /* empty */ }
  return !(rConstruct(function () { /* empty */ }, [], F) instanceof F);
});
var ARGS_BUG = !fails(function () {
  rConstruct(function () { /* empty */ });
});

$export($export.S + $export.F * (NEW_TARGET_BUG || ARGS_BUG), 'Reflect', {
  construct: function construct(Target, args /* , newTarget */) {
    aFunction(Target);
    anObject(args);
    var newTarget = arguments.length < 3 ? Target : aFunction(arguments[2]);
    if (ARGS_BUG && !NEW_TARGET_BUG) return rConstruct(Target, args, newTarget);
    if (Target == newTarget) {
      // w/o altered newTarget, optimization for 0-4 arguments
      switch (args.length) {
        case 0: return new Target();
        case 1: return new Target(args[0]);
        case 2: return new Target(args[0], args[1]);
        case 3: return new Target(args[0], args[1], args[2]);
        case 4: return new Target(args[0], args[1], args[2], args[3]);
      }
      // w/o altered newTarget, lot of arguments case
      var $args = [null];
      $args.push.apply($args, args);
      return new (bind.apply(Target, $args))();
    }
    // with altered newTarget, not support built-in constructors
    var proto = newTarget.prototype;
    var instance = create(isObject(proto) ? proto : Object.prototype);
    var result = Function.apply.call(Target, instance, args);
    return isObject(result) ? result : instance;
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.reflect.get.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.reflect.get.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 26.1.6 Reflect.get(target, propertyKey [, receiver])
var gOPD = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js");
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/library/modules/_object-gpo.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");

function get(target, propertyKey /* , receiver */) {
  var receiver = arguments.length < 3 ? target : arguments[2];
  var desc, proto;
  if (anObject(target) === receiver) return target[propertyKey];
  if (desc = gOPD.f(target, propertyKey)) return has(desc, 'value')
    ? desc.value
    : desc.get !== undefined
      ? desc.get.call(receiver)
      : undefined;
  if (isObject(proto = getPrototypeOf(target))) return get(proto, propertyKey, receiver);
}

$export($export.S, 'Reflect', { get: get });


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.string.iterator.js":
/*!**********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.string.iterator.js ***!
  \**********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $at = __webpack_require__(/*! ./_string-at */ "../node_modules/core-js/library/modules/_string-at.js")(true);

// 21.1.3.27 String.prototype[@@iterator]()
__webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/library/modules/_iter-define.js")(String, 'String', function (iterated) {
  this._t = String(iterated); // target
  this._i = 0;                // next index
// 21.1.5.2.1 %StringIteratorPrototype%.next()
}, function () {
  var O = this._t;
  var index = this._i;
  var point;
  if (index >= O.length) return { value: undefined, done: true };
  point = $at(O, index);
  this._i += point.length;
  return { value: point, done: false };
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.symbol.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.symbol.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// ECMAScript 6 symbols shim
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/library/modules/_has.js");
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/library/modules/_descriptors.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/library/modules/_redefine.js");
var META = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js").KEY;
var $fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/library/modules/_fails.js");
var shared = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/library/modules/_shared.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/library/modules/_set-to-string-tag.js");
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/library/modules/_uid.js");
var wks = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js");
var wksExt = __webpack_require__(/*! ./_wks-ext */ "../node_modules/core-js/library/modules/_wks-ext.js");
var wksDefine = __webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js");
var enumKeys = __webpack_require__(/*! ./_enum-keys */ "../node_modules/core-js/library/modules/_enum-keys.js");
var isArray = __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/library/modules/_is-array.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/library/modules/_an-object.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/library/modules/_to-object.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/library/modules/_to-primitive.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/library/modules/_property-desc.js");
var _create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/library/modules/_object-create.js");
var gOPNExt = __webpack_require__(/*! ./_object-gopn-ext */ "../node_modules/core-js/library/modules/_object-gopn-ext.js");
var $GOPD = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js");
var $GOPS = __webpack_require__(/*! ./_object-gops */ "../node_modules/core-js/library/modules/_object-gops.js");
var $DP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/library/modules/_object-dp.js");
var $keys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/library/modules/_object-keys.js");
var gOPD = $GOPD.f;
var dP = $DP.f;
var gOPN = gOPNExt.f;
var $Symbol = global.Symbol;
var $JSON = global.JSON;
var _stringify = $JSON && $JSON.stringify;
var PROTOTYPE = 'prototype';
var HIDDEN = wks('_hidden');
var TO_PRIMITIVE = wks('toPrimitive');
var isEnum = {}.propertyIsEnumerable;
var SymbolRegistry = shared('symbol-registry');
var AllSymbols = shared('symbols');
var OPSymbols = shared('op-symbols');
var ObjectProto = Object[PROTOTYPE];
var USE_NATIVE = typeof $Symbol == 'function' && !!$GOPS.f;
var QObject = global.QObject;
// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173
var setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;

// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687
var setSymbolDesc = DESCRIPTORS && $fails(function () {
  return _create(dP({}, 'a', {
    get: function () { return dP(this, 'a', { value: 7 }).a; }
  })).a != 7;
}) ? function (it, key, D) {
  var protoDesc = gOPD(ObjectProto, key);
  if (protoDesc) delete ObjectProto[key];
  dP(it, key, D);
  if (protoDesc && it !== ObjectProto) dP(ObjectProto, key, protoDesc);
} : dP;

var wrap = function (tag) {
  var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]);
  sym._k = tag;
  return sym;
};

var isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function (it) {
  return typeof it == 'symbol';
} : function (it) {
  return it instanceof $Symbol;
};

var $defineProperty = function defineProperty(it, key, D) {
  if (it === ObjectProto) $defineProperty(OPSymbols, key, D);
  anObject(it);
  key = toPrimitive(key, true);
  anObject(D);
  if (has(AllSymbols, key)) {
    if (!D.enumerable) {
      if (!has(it, HIDDEN)) dP(it, HIDDEN, createDesc(1, {}));
      it[HIDDEN][key] = true;
    } else {
      if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false;
      D = _create(D, { enumerable: createDesc(0, false) });
    } return setSymbolDesc(it, key, D);
  } return dP(it, key, D);
};
var $defineProperties = function defineProperties(it, P) {
  anObject(it);
  var keys = enumKeys(P = toIObject(P));
  var i = 0;
  var l = keys.length;
  var key;
  while (l > i) $defineProperty(it, key = keys[i++], P[key]);
  return it;
};
var $create = function create(it, P) {
  return P === undefined ? _create(it) : $defineProperties(_create(it), P);
};
var $propertyIsEnumerable = function propertyIsEnumerable(key) {
  var E = isEnum.call(this, key = toPrimitive(key, true));
  if (this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return false;
  return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true;
};
var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key) {
  it = toIObject(it);
  key = toPrimitive(key, true);
  if (it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return;
  var D = gOPD(it, key);
  if (D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) D.enumerable = true;
  return D;
};
var $getOwnPropertyNames = function getOwnPropertyNames(it) {
  var names = gOPN(toIObject(it));
  var result = [];
  var i = 0;
  var key;
  while (names.length > i) {
    if (!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META) result.push(key);
  } return result;
};
var $getOwnPropertySymbols = function getOwnPropertySymbols(it) {
  var IS_OP = it === ObjectProto;
  var names = gOPN(IS_OP ? OPSymbols : toIObject(it));
  var result = [];
  var i = 0;
  var key;
  while (names.length > i) {
    if (has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true)) result.push(AllSymbols[key]);
  } return result;
};

// 19.4.1.1 Symbol([description])
if (!USE_NATIVE) {
  $Symbol = function Symbol() {
    if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor!');
    var tag = uid(arguments.length > 0 ? arguments[0] : undefined);
    var $set = function (value) {
      if (this === ObjectProto) $set.call(OPSymbols, value);
      if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;
      setSymbolDesc(this, tag, createDesc(1, value));
    };
    if (DESCRIPTORS && setter) setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set });
    return wrap(tag);
  };
  redefine($Symbol[PROTOTYPE], 'toString', function toString() {
    return this._k;
  });

  $GOPD.f = $getOwnPropertyDescriptor;
  $DP.f = $defineProperty;
  __webpack_require__(/*! ./_object-gopn */ "../node_modules/core-js/library/modules/_object-gopn.js").f = gOPNExt.f = $getOwnPropertyNames;
  __webpack_require__(/*! ./_object-pie */ "../node_modules/core-js/library/modules/_object-pie.js").f = $propertyIsEnumerable;
  $GOPS.f = $getOwnPropertySymbols;

  if (DESCRIPTORS && !__webpack_require__(/*! ./_library */ "../node_modules/core-js/library/modules/_library.js")) {
    redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);
  }

  wksExt.f = function (name) {
    return wrap(wks(name));
  };
}

$export($export.G + $export.W + $export.F * !USE_NATIVE, { Symbol: $Symbol });

for (var es6Symbols = (
  // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14
  'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'
).split(','), j = 0; es6Symbols.length > j;)wks(es6Symbols[j++]);

for (var wellKnownSymbols = $keys(wks.store), k = 0; wellKnownSymbols.length > k;) wksDefine(wellKnownSymbols[k++]);

$export($export.S + $export.F * !USE_NATIVE, 'Symbol', {
  // 19.4.2.1 Symbol.for(key)
  'for': function (key) {
    return has(SymbolRegistry, key += '')
      ? SymbolRegistry[key]
      : SymbolRegistry[key] = $Symbol(key);
  },
  // 19.4.2.5 Symbol.keyFor(sym)
  keyFor: function keyFor(sym) {
    if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol!');
    for (var key in SymbolRegistry) if (SymbolRegistry[key] === sym) return key;
  },
  useSetter: function () { setter = true; },
  useSimple: function () { setter = false; }
});

$export($export.S + $export.F * !USE_NATIVE, 'Object', {
  // 19.1.2.2 Object.create(O [, Properties])
  create: $create,
  // 19.1.2.4 Object.defineProperty(O, P, Attributes)
  defineProperty: $defineProperty,
  // 19.1.2.3 Object.defineProperties(O, Properties)
  defineProperties: $defineProperties,
  // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
  getOwnPropertyDescriptor: $getOwnPropertyDescriptor,
  // 19.1.2.7 Object.getOwnPropertyNames(O)
  getOwnPropertyNames: $getOwnPropertyNames,
  // 19.1.2.8 Object.getOwnPropertySymbols(O)
  getOwnPropertySymbols: $getOwnPropertySymbols
});

// Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives
// https://bugs.chromium.org/p/v8/issues/detail?id=3443
var FAILS_ON_PRIMITIVES = $fails(function () { $GOPS.f(1); });

$export($export.S + $export.F * FAILS_ON_PRIMITIVES, 'Object', {
  getOwnPropertySymbols: function getOwnPropertySymbols(it) {
    return $GOPS.f(toObject(it));
  }
});

// 24.3.2 JSON.stringify(value [, replacer [, space]])
$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function () {
  var S = $Symbol();
  // MS Edge converts symbol values to JSON as {}
  // WebKit converts symbol values to JSON as null
  // V8 throws on boxed symbols
  return _stringify([S]) != '[null]' || _stringify({ a: S }) != '{}' || _stringify(Object(S)) != '{}';
})), 'JSON', {
  stringify: function stringify(it) {
    var args = [it];
    var i = 1;
    var replacer, $replacer;
    while (arguments.length > i) args.push(arguments[i++]);
    $replacer = replacer = args[1];
    if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined
    if (!isArray(replacer)) replacer = function (key, value) {
      if (typeof $replacer == 'function') value = $replacer.call(this, key, value);
      if (!isSymbol(value)) return value;
    };
    args[1] = replacer;
    return _stringify.apply($JSON, args);
  }
});

// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint)
$Symbol[PROTOTYPE][TO_PRIMITIVE] || __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js")($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);
// 19.4.3.5 Symbol.prototype[@@toStringTag]
setToStringTag($Symbol, 'Symbol');
// 20.2.1.9 Math[@@toStringTag]
setToStringTag(Math, 'Math', true);
// 24.3.3 JSON[@@toStringTag]
setToStringTag(global.JSON, 'JSON', true);


/***/ }),

/***/ "../node_modules/core-js/library/modules/es6.weak-map.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es6.weak-map.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var each = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/library/modules/_array-methods.js")(0);
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/library/modules/_redefine.js");
var meta = __webpack_require__(/*! ./_meta */ "../node_modules/core-js/library/modules/_meta.js");
var assign = __webpack_require__(/*! ./_object-assign */ "../node_modules/core-js/library/modules/_object-assign.js");
var weak = __webpack_require__(/*! ./_collection-weak */ "../node_modules/core-js/library/modules/_collection-weak.js");
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/library/modules/_is-object.js");
var validate = __webpack_require__(/*! ./_validate-collection */ "../node_modules/core-js/library/modules/_validate-collection.js");
var NATIVE_WEAK_MAP = __webpack_require__(/*! ./_validate-collection */ "../node_modules/core-js/library/modules/_validate-collection.js");
var IS_IE11 = !global.ActiveXObject && 'ActiveXObject' in global;
var WEAK_MAP = 'WeakMap';
var getWeak = meta.getWeak;
var isExtensible = Object.isExtensible;
var uncaughtFrozenStore = weak.ufstore;
var InternalMap;

var wrapper = function (get) {
  return function WeakMap() {
    return get(this, arguments.length > 0 ? arguments[0] : undefined);
  };
};

var methods = {
  // 23.3.3.3 WeakMap.prototype.get(key)
  get: function get(key) {
    if (isObject(key)) {
      var data = getWeak(key);
      if (data === true) return uncaughtFrozenStore(validate(this, WEAK_MAP)).get(key);
      return data ? data[this._i] : undefined;
    }
  },
  // 23.3.3.5 WeakMap.prototype.set(key, value)
  set: function set(key, value) {
    return weak.def(validate(this, WEAK_MAP), key, value);
  }
};

// 23.3 WeakMap Objects
var $WeakMap = module.exports = __webpack_require__(/*! ./_collection */ "../node_modules/core-js/library/modules/_collection.js")(WEAK_MAP, wrapper, methods, weak, true, true);

// IE11 WeakMap frozen keys fix
if (NATIVE_WEAK_MAP && IS_IE11) {
  InternalMap = weak.getConstructor(wrapper, WEAK_MAP);
  assign(InternalMap.prototype, methods);
  meta.NEED = true;
  each(['delete', 'has', 'get', 'set'], function (key) {
    var proto = $WeakMap.prototype;
    var method = proto[key];
    redefine(proto, key, function (a, b) {
      // store frozen objects on internal weakmap shim
      if (isObject(a) && !isExtensible(a)) {
        if (!this._f) this._f = new InternalMap();
        var result = this._f[key](a, b);
        return key == 'set' ? this : result;
      // store all the rest on native weakmap
      } return method.call(this, a, b);
    });
  });
}


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.object.entries.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.object.entries.js ***!
  \*********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://github.com/tc39/proposal-object-values-entries
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var $entries = __webpack_require__(/*! ./_object-to-array */ "../node_modules/core-js/library/modules/_object-to-array.js")(true);

$export($export.S, 'Object', {
  entries: function entries(it) {
    return $entries(it);
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.object.get-own-property-descriptors.js":
/*!******************************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.object.get-own-property-descriptors.js ***!
  \******************************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://github.com/tc39/proposal-object-getownpropertydescriptors
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/library/modules/_export.js");
var ownKeys = __webpack_require__(/*! ./_own-keys */ "../node_modules/core-js/library/modules/_own-keys.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/library/modules/_to-iobject.js");
var gOPD = __webpack_require__(/*! ./_object-gopd */ "../node_modules/core-js/library/modules/_object-gopd.js");
var createProperty = __webpack_require__(/*! ./_create-property */ "../node_modules/core-js/library/modules/_create-property.js");

$export($export.S, 'Object', {
  getOwnPropertyDescriptors: function getOwnPropertyDescriptors(object) {
    var O = toIObject(object);
    var getDesc = gOPD.f;
    var keys = ownKeys(O);
    var result = {};
    var i = 0;
    var key, desc;
    while (keys.length > i) {
      desc = getDesc(O, key = keys[i++]);
      if (desc !== undefined) createProperty(result, key, desc);
    }
    return result;
  }
});


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.symbol.async-iterator.js":
/*!****************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.symbol.async-iterator.js ***!
  \****************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js")('asyncIterator');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.symbol.observable.js":
/*!************************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.symbol.observable.js ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ./_wks-define */ "../node_modules/core-js/library/modules/_wks-define.js")('observable');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.weak-map.from.js":
/*!********************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.weak-map.from.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://tc39.github.io/proposal-setmap-offrom/#sec-weakmap.from
__webpack_require__(/*! ./_set-collection-from */ "../node_modules/core-js/library/modules/_set-collection-from.js")('WeakMap');


/***/ }),

/***/ "../node_modules/core-js/library/modules/es7.weak-map.of.js":
/*!******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/es7.weak-map.of.js ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// https://tc39.github.io/proposal-setmap-offrom/#sec-weakmap.of
__webpack_require__(/*! ./_set-collection-of */ "../node_modules/core-js/library/modules/_set-collection-of.js")('WeakMap');


/***/ }),

/***/ "../node_modules/core-js/library/modules/web.dom.iterable.js":
/*!*******************************************************************!*\
  !*** ../node_modules/core-js/library/modules/web.dom.iterable.js ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

__webpack_require__(/*! ./es6.array.iterator */ "../node_modules/core-js/library/modules/es6.array.iterator.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/library/modules/_global.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/library/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/library/modules/_iterators.js");
var TO_STRING_TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/library/modules/_wks.js")('toStringTag');

var DOMIterables = ('CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,' +
  'DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,' +
  'MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,' +
  'SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,' +
  'TextTrackList,TouchList').split(',');

for (var i = 0; i < DOMIterables.length; i++) {
  var NAME = DOMIterables[i];
  var Collection = global[NAME];
  var proto = Collection && Collection.prototype;
  if (proto && !proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);
  Iterators[NAME] = Iterators.Array;
}


/***/ }),

/***/ "../node_modules/core-js/modules/_a-function.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_a-function.js ***!
  \******************************************************/
/***/ ((module) => {

module.exports = function (it) {
  if (typeof it != 'function') throw TypeError(it + ' is not a function!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_add-to-unscopables.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/modules/_add-to-unscopables.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 22.1.3.31 Array.prototype[@@unscopables]
var UNSCOPABLES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('unscopables');
var ArrayProto = Array.prototype;
if (ArrayProto[UNSCOPABLES] == undefined) __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js")(ArrayProto, UNSCOPABLES, {});
module.exports = function (key) {
  ArrayProto[UNSCOPABLES][key] = true;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_advance-string-index.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_advance-string-index.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var at = __webpack_require__(/*! ./_string-at */ "../node_modules/core-js/modules/_string-at.js")(true);

 // `AdvanceStringIndex` abstract operation
// https://tc39.github.io/ecma262/#sec-advancestringindex
module.exports = function (S, index, unicode) {
  return index + (unicode ? at(S, index).length : 1);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_an-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_an-object.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
module.exports = function (it) {
  if (!isObject(it)) throw TypeError(it + ' is not an object!');
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-includes.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/_array-includes.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// false -> Array#indexOf
// true  -> Array#includes
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/modules/_to-iobject.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var toAbsoluteIndex = __webpack_require__(/*! ./_to-absolute-index */ "../node_modules/core-js/modules/_to-absolute-index.js");
module.exports = function (IS_INCLUDES) {
  return function ($this, el, fromIndex) {
    var O = toIObject($this);
    var length = toLength(O.length);
    var index = toAbsoluteIndex(fromIndex, length);
    var value;
    // Array#includes uses SameValueZero equality algorithm
    // eslint-disable-next-line no-self-compare
    if (IS_INCLUDES && el != el) while (length > index) {
      value = O[index++];
      // eslint-disable-next-line no-self-compare
      if (value != value) return true;
    // Array#indexOf ignores holes, Array#includes - not
    } else for (;length > index; index++) if (IS_INCLUDES || index in O) {
      if (O[index] === el) return IS_INCLUDES || index || 0;
    } return !IS_INCLUDES && -1;
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-methods.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_array-methods.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 0 -> Array#forEach
// 1 -> Array#map
// 2 -> Array#filter
// 3 -> Array#some
// 4 -> Array#every
// 5 -> Array#find
// 6 -> Array#findIndex
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/modules/_ctx.js");
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/modules/_iobject.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/modules/_to-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var asc = __webpack_require__(/*! ./_array-species-create */ "../node_modules/core-js/modules/_array-species-create.js");
module.exports = function (TYPE, $create) {
  var IS_MAP = TYPE == 1;
  var IS_FILTER = TYPE == 2;
  var IS_SOME = TYPE == 3;
  var IS_EVERY = TYPE == 4;
  var IS_FIND_INDEX = TYPE == 6;
  var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
  var create = $create || asc;
  return function ($this, callbackfn, that) {
    var O = toObject($this);
    var self = IObject(O);
    var f = ctx(callbackfn, that, 3);
    var length = toLength(self.length);
    var index = 0;
    var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;
    var val, res;
    for (;length > index; index++) if (NO_HOLES || index in self) {
      val = self[index];
      res = f(val, index, O);
      if (TYPE) {
        if (IS_MAP) result[index] = res;   // map
        else if (res) switch (TYPE) {
          case 3: return true;             // some
          case 5: return val;              // find
          case 6: return index;            // findIndex
          case 2: result.push(val);        // filter
        } else if (IS_EVERY) return false; // every
      }
    }
    return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-species-constructor.js":
/*!*********************************************************************!*\
  !*** ../node_modules/core-js/modules/_array-species-constructor.js ***!
  \*********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var isArray = __webpack_require__(/*! ./_is-array */ "../node_modules/core-js/modules/_is-array.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('species');

module.exports = function (original) {
  var C;
  if (isArray(original)) {
    C = original.constructor;
    // cross-realm fallback
    if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
    if (isObject(C)) {
      C = C[SPECIES];
      if (C === null) C = undefined;
    }
  } return C === undefined ? Array : C;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_array-species-create.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_array-species-create.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 9.4.2.3 ArraySpeciesCreate(originalArray, length)
var speciesConstructor = __webpack_require__(/*! ./_array-species-constructor */ "../node_modules/core-js/modules/_array-species-constructor.js");

module.exports = function (original, length) {
  return new (speciesConstructor(original))(length);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_classof.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_classof.js ***!
  \***************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// getting tag from 19.1.3.6 Object.prototype.toString()
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('toStringTag');
// ES3 wrong here
var ARG = cof(function () { return arguments; }()) == 'Arguments';

// fallback for IE11 Script Access Denied error
var tryGet = function (it, key) {
  try {
    return it[key];
  } catch (e) { /* empty */ }
};

module.exports = function (it) {
  var O, T, B;
  return it === undefined ? 'Undefined' : it === null ? 'Null'
    // @@toStringTag case
    : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T
    // builtinTag case
    : ARG ? cof(O)
    // ES3 arguments fallback
    : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_cof.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_cof.js ***!
  \***********************************************/
/***/ ((module) => {

var toString = {}.toString;

module.exports = function (it) {
  return toString.call(it).slice(8, -1);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_core.js":
/*!************************************************!*\
  !*** ../node_modules/core-js/modules/_core.js ***!
  \************************************************/
/***/ ((module) => {

var core = module.exports = { version: '2.6.12' };
if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/modules/_ctx.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_ctx.js ***!
  \***********************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// optional / simple context binding
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/modules/_a-function.js");
module.exports = function (fn, that, length) {
  aFunction(fn);
  if (that === undefined) return fn;
  switch (length) {
    case 1: return function (a) {
      return fn.call(that, a);
    };
    case 2: return function (a, b) {
      return fn.call(that, a, b);
    };
    case 3: return function (a, b, c) {
      return fn.call(that, a, b, c);
    };
  }
  return function (/* ...args */) {
    return fn.apply(that, arguments);
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_defined.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_defined.js ***!
  \***************************************************/
/***/ ((module) => {

// 7.2.1 RequireObjectCoercible(argument)
module.exports = function (it) {
  if (it == undefined) throw TypeError("Can't call method on  " + it);
  return it;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_descriptors.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_descriptors.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// Thank's IE8 for his funny defineProperty
module.exports = !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () {
  return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/modules/_dom-create.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_dom-create.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js").document;
// typeof document.createElement is 'object' in old IE
var is = isObject(document) && isObject(document.createElement);
module.exports = function (it) {
  return is ? document.createElement(it) : {};
};


/***/ }),

/***/ "../node_modules/core-js/modules/_enum-bug-keys.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_enum-bug-keys.js ***!
  \*********************************************************/
/***/ ((module) => {

// IE 8- don't enum bug keys
module.exports = (
  'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
).split(',');


/***/ }),

/***/ "../node_modules/core-js/modules/_export.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_export.js ***!
  \**************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
var ctx = __webpack_require__(/*! ./_ctx */ "../node_modules/core-js/modules/_ctx.js");
var PROTOTYPE = 'prototype';

var $export = function (type, name, source) {
  var IS_FORCED = type & $export.F;
  var IS_GLOBAL = type & $export.G;
  var IS_STATIC = type & $export.S;
  var IS_PROTO = type & $export.P;
  var IS_BIND = type & $export.B;
  var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE];
  var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
  var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {});
  var key, own, out, exp;
  if (IS_GLOBAL) source = name;
  for (key in source) {
    // contains in native
    own = !IS_FORCED && target && target[key] !== undefined;
    // export native or passed
    out = (own ? target : source)[key];
    // bind timers to global for call from export context
    exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
    // extend global
    if (target) redefine(target, key, out, type & $export.U);
    // export
    if (exports[key] != out) hide(exports, key, exp);
    if (IS_PROTO && expProto[key] != out) expProto[key] = out;
  }
};
global.core = core;
// type bitmap
$export.F = 1;   // forced
$export.G = 2;   // global
$export.S = 4;   // static
$export.P = 8;   // proto
$export.B = 16;  // bind
$export.W = 32;  // wrap
$export.U = 64;  // safe
$export.R = 128; // real proto method for `library`
module.exports = $export;


/***/ }),

/***/ "../node_modules/core-js/modules/_fails-is-regexp.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/_fails-is-regexp.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var MATCH = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('match');
module.exports = function (KEY) {
  var re = /./;
  try {
    '/./'[KEY](re);
  } catch (e) {
    try {
      re[MATCH] = false;
      return !'/./'[KEY](re);
    } catch (f) { /* empty */ }
  } return true;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_fails.js":
/*!*************************************************!*\
  !*** ../node_modules/core-js/modules/_fails.js ***!
  \*************************************************/
/***/ ((module) => {

module.exports = function (exec) {
  try {
    return !!exec();
  } catch (e) {
    return true;
  }
};


/***/ }),

/***/ "../node_modules/core-js/modules/_fix-re-wks.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_fix-re-wks.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

__webpack_require__(/*! ./es6.regexp.exec */ "../node_modules/core-js/modules/es6.regexp.exec.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
var wks = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js");
var regexpExec = __webpack_require__(/*! ./_regexp-exec */ "../node_modules/core-js/modules/_regexp-exec.js");

var SPECIES = wks('species');

var REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {
  // #replace needs built-in support for named groups.
  // #match works fine because it just return the exec results, even if it has
  // a "grops" property.
  var re = /./;
  re.exec = function () {
    var result = [];
    result.groups = { a: '7' };
    return result;
  };
  return ''.replace(re, '$<a>') !== '7';
});

var SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = (function () {
  // Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec
  var re = /(?:)/;
  var originalExec = re.exec;
  re.exec = function () { return originalExec.apply(this, arguments); };
  var result = 'ab'.split(re);
  return result.length === 2 && result[0] === 'a' && result[1] === 'b';
})();

module.exports = function (KEY, length, exec) {
  var SYMBOL = wks(KEY);

  var DELEGATES_TO_SYMBOL = !fails(function () {
    // String methods call symbol-named RegEp methods
    var O = {};
    O[SYMBOL] = function () { return 7; };
    return ''[KEY](O) != 7;
  });

  var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL ? !fails(function () {
    // Symbol-named RegExp methods call .exec
    var execCalled = false;
    var re = /a/;
    re.exec = function () { execCalled = true; return null; };
    if (KEY === 'split') {
      // RegExp[@@split] doesn't call the regex's exec method, but first creates
      // a new one. We need to return the patched regex when creating the new one.
      re.constructor = {};
      re.constructor[SPECIES] = function () { return re; };
    }
    re[SYMBOL]('');
    return !execCalled;
  }) : undefined;

  if (
    !DELEGATES_TO_SYMBOL ||
    !DELEGATES_TO_EXEC ||
    (KEY === 'replace' && !REPLACE_SUPPORTS_NAMED_GROUPS) ||
    (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)
  ) {
    var nativeRegExpMethod = /./[SYMBOL];
    var fns = exec(
      defined,
      SYMBOL,
      ''[KEY],
      function maybeCallNative(nativeMethod, regexp, str, arg2, forceStringMethod) {
        if (regexp.exec === regexpExec) {
          if (DELEGATES_TO_SYMBOL && !forceStringMethod) {
            // The native String method already delegates to @@method (this
            // polyfilled function), leasing to infinite recursion.
            // We avoid it by directly calling the native @@method method.
            return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };
          }
          return { done: true, value: nativeMethod.call(str, regexp, arg2) };
        }
        return { done: false };
      }
    );
    var strfn = fns[0];
    var rxfn = fns[1];

    redefine(String.prototype, KEY, strfn);
    hide(RegExp.prototype, SYMBOL, length == 2
      // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)
      // 21.2.5.11 RegExp.prototype[@@split](string, limit)
      ? function (string, arg) { return rxfn.call(string, this, arg); }
      // 21.2.5.6 RegExp.prototype[@@match](string)
      // 21.2.5.9 RegExp.prototype[@@search](string)
      : function (string) { return rxfn.call(string, this); }
    );
  }
};


/***/ }),

/***/ "../node_modules/core-js/modules/_flags.js":
/*!*************************************************!*\
  !*** ../node_modules/core-js/modules/_flags.js ***!
  \*************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 21.2.5.3 get RegExp.prototype.flags
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
module.exports = function () {
  var that = anObject(this);
  var result = '';
  if (that.global) result += 'g';
  if (that.ignoreCase) result += 'i';
  if (that.multiline) result += 'm';
  if (that.unicode) result += 'u';
  if (that.sticky) result += 'y';
  return result;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_function-to-string.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/modules/_function-to-string.js ***!
  \**************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/modules/_shared.js")('native-function-to-string', Function.toString);


/***/ }),

/***/ "../node_modules/core-js/modules/_global.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_global.js ***!
  \**************************************************/
/***/ ((module) => {

// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
var global = module.exports = typeof window != 'undefined' && window.Math == Math
  ? window : typeof self != 'undefined' && self.Math == Math ? self
  // eslint-disable-next-line no-new-func
  : Function('return this')();
if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef


/***/ }),

/***/ "../node_modules/core-js/modules/_has.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_has.js ***!
  \***********************************************/
/***/ ((module) => {

var hasOwnProperty = {}.hasOwnProperty;
module.exports = function (it, key) {
  return hasOwnProperty.call(it, key);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_hide.js":
/*!************************************************!*\
  !*** ../node_modules/core-js/modules/_hide.js ***!
  \************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js");
var createDesc = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/modules/_property-desc.js");
module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? function (object, key, value) {
  return dP.f(object, key, createDesc(1, value));
} : function (object, key, value) {
  object[key] = value;
  return object;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_html.js":
/*!************************************************!*\
  !*** ../node_modules/core-js/modules/_html.js ***!
  \************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var document = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js").document;
module.exports = document && document.documentElement;


/***/ }),

/***/ "../node_modules/core-js/modules/_ie8-dom-define.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/_ie8-dom-define.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

module.exports = !__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") && !__webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () {
  return Object.defineProperty(__webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/modules/_dom-create.js")('div'), 'a', { get: function () { return 7; } }).a != 7;
});


/***/ }),

/***/ "../node_modules/core-js/modules/_iobject.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_iobject.js ***!
  \***************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// fallback for non-array-like ES3 and non-enumerable old V8 strings
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
// eslint-disable-next-line no-prototype-builtins
module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
  return cof(it) == 'String' ? it.split('') : Object(it);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_is-array.js":
/*!****************************************************!*\
  !*** ../node_modules/core-js/modules/_is-array.js ***!
  \****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.2.2 IsArray(argument)
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
module.exports = Array.isArray || function isArray(arg) {
  return cof(arg) == 'Array';
};


/***/ }),

/***/ "../node_modules/core-js/modules/_is-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_is-object.js ***!
  \*****************************************************/
/***/ ((module) => {

module.exports = function (it) {
  return typeof it === 'object' ? it !== null : typeof it === 'function';
};


/***/ }),

/***/ "../node_modules/core-js/modules/_is-regexp.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_is-regexp.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.2.8 IsRegExp(argument)
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
var cof = __webpack_require__(/*! ./_cof */ "../node_modules/core-js/modules/_cof.js");
var MATCH = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('match');
module.exports = function (it) {
  var isRegExp;
  return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp');
};


/***/ }),

/***/ "../node_modules/core-js/modules/_iter-create.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_iter-create.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var create = __webpack_require__(/*! ./_object-create */ "../node_modules/core-js/modules/_object-create.js");
var descriptor = __webpack_require__(/*! ./_property-desc */ "../node_modules/core-js/modules/_property-desc.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/modules/_set-to-string-tag.js");
var IteratorPrototype = {};

// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
__webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js")(IteratorPrototype, __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('iterator'), function () { return this; });

module.exports = function (Constructor, NAME, next) {
  Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });
  setToStringTag(Constructor, NAME + ' Iterator');
};


/***/ }),

/***/ "../node_modules/core-js/modules/_iter-define.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_iter-define.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var LIBRARY = __webpack_require__(/*! ./_library */ "../node_modules/core-js/modules/_library.js");
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/modules/_iterators.js");
var $iterCreate = __webpack_require__(/*! ./_iter-create */ "../node_modules/core-js/modules/_iter-create.js");
var setToStringTag = __webpack_require__(/*! ./_set-to-string-tag */ "../node_modules/core-js/modules/_set-to-string-tag.js");
var getPrototypeOf = __webpack_require__(/*! ./_object-gpo */ "../node_modules/core-js/modules/_object-gpo.js");
var ITERATOR = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('iterator');
var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`
var FF_ITERATOR = '@@iterator';
var KEYS = 'keys';
var VALUES = 'values';

var returnThis = function () { return this; };

module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {
  $iterCreate(Constructor, NAME, next);
  var getMethod = function (kind) {
    if (!BUGGY && kind in proto) return proto[kind];
    switch (kind) {
      case KEYS: return function keys() { return new Constructor(this, kind); };
      case VALUES: return function values() { return new Constructor(this, kind); };
    } return function entries() { return new Constructor(this, kind); };
  };
  var TAG = NAME + ' Iterator';
  var DEF_VALUES = DEFAULT == VALUES;
  var VALUES_BUG = false;
  var proto = Base.prototype;
  var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];
  var $default = $native || getMethod(DEFAULT);
  var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;
  var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;
  var methods, key, IteratorPrototype;
  // Fix native
  if ($anyNative) {
    IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));
    if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {
      // Set @@toStringTag to native iterators
      setToStringTag(IteratorPrototype, TAG, true);
      // fix for some old engines
      if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);
    }
  }
  // fix Array#{values, @@iterator}.name in V8 / FF
  if (DEF_VALUES && $native && $native.name !== VALUES) {
    VALUES_BUG = true;
    $default = function values() { return $native.call(this); };
  }
  // Define iterator
  if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {
    hide(proto, ITERATOR, $default);
  }
  // Plug for library
  Iterators[NAME] = $default;
  Iterators[TAG] = returnThis;
  if (DEFAULT) {
    methods = {
      values: DEF_VALUES ? $default : getMethod(VALUES),
      keys: IS_SET ? $default : getMethod(KEYS),
      entries: $entries
    };
    if (FORCED) for (key in methods) {
      if (!(key in proto)) redefine(proto, key, methods[key]);
    } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
  }
  return methods;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_iter-step.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_iter-step.js ***!
  \*****************************************************/
/***/ ((module) => {

module.exports = function (done, value) {
  return { value: value, done: !!done };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_iterators.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_iterators.js ***!
  \*****************************************************/
/***/ ((module) => {

module.exports = {};


/***/ }),

/***/ "../node_modules/core-js/modules/_library.js":
/*!***************************************************!*\
  !*** ../node_modules/core-js/modules/_library.js ***!
  \***************************************************/
/***/ ((module) => {

module.exports = false;


/***/ }),

/***/ "../node_modules/core-js/modules/_object-create.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_object-create.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var dPs = __webpack_require__(/*! ./_object-dps */ "../node_modules/core-js/modules/_object-dps.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/modules/_enum-bug-keys.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/modules/_shared-key.js")('IE_PROTO');
var Empty = function () { /* empty */ };
var PROTOTYPE = 'prototype';

// Create object with fake `null` prototype: use iframe Object with cleared prototype
var createDict = function () {
  // Thrash, waste and sodomy: IE GC bug
  var iframe = __webpack_require__(/*! ./_dom-create */ "../node_modules/core-js/modules/_dom-create.js")('iframe');
  var i = enumBugKeys.length;
  var lt = '<';
  var gt = '>';
  var iframeDocument;
  iframe.style.display = 'none';
  __webpack_require__(/*! ./_html */ "../node_modules/core-js/modules/_html.js").appendChild(iframe);
  iframe.src = 'javascript:'; // eslint-disable-line no-script-url
  // createDict = iframe.contentWindow.Object;
  // html.removeChild(iframe);
  iframeDocument = iframe.contentWindow.document;
  iframeDocument.open();
  iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);
  iframeDocument.close();
  createDict = iframeDocument.F;
  while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];
  return createDict();
};

module.exports = Object.create || function create(O, Properties) {
  var result;
  if (O !== null) {
    Empty[PROTOTYPE] = anObject(O);
    result = new Empty();
    Empty[PROTOTYPE] = null;
    // add "__proto__" for Object.getPrototypeOf polyfill
    result[IE_PROTO] = O;
  } else result = createDict();
  return Properties === undefined ? result : dPs(result, Properties);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-dp.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_object-dp.js ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var IE8_DOM_DEFINE = __webpack_require__(/*! ./_ie8-dom-define */ "../node_modules/core-js/modules/_ie8-dom-define.js");
var toPrimitive = __webpack_require__(/*! ./_to-primitive */ "../node_modules/core-js/modules/_to-primitive.js");
var dP = Object.defineProperty;

exports.f = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? Object.defineProperty : function defineProperty(O, P, Attributes) {
  anObject(O);
  P = toPrimitive(P, true);
  anObject(Attributes);
  if (IE8_DOM_DEFINE) try {
    return dP(O, P, Attributes);
  } catch (e) { /* empty */ }
  if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
  if ('value' in Attributes) O[P] = Attributes.value;
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-dps.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_object-dps.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var dP = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/modules/_object-keys.js");

module.exports = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") ? Object.defineProperties : function defineProperties(O, Properties) {
  anObject(O);
  var keys = getKeys(Properties);
  var length = keys.length;
  var i = 0;
  var P;
  while (length > i) dP.f(O, P = keys[i++], Properties[P]);
  return O;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-gpo.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_object-gpo.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/modules/_to-object.js");
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/modules/_shared-key.js")('IE_PROTO');
var ObjectProto = Object.prototype;

module.exports = Object.getPrototypeOf || function (O) {
  O = toObject(O);
  if (has(O, IE_PROTO)) return O[IE_PROTO];
  if (typeof O.constructor == 'function' && O instanceof O.constructor) {
    return O.constructor.prototype;
  } return O instanceof Object ? ObjectProto : null;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-keys-internal.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_object-keys-internal.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/modules/_to-iobject.js");
var arrayIndexOf = __webpack_require__(/*! ./_array-includes */ "../node_modules/core-js/modules/_array-includes.js")(false);
var IE_PROTO = __webpack_require__(/*! ./_shared-key */ "../node_modules/core-js/modules/_shared-key.js")('IE_PROTO');

module.exports = function (object, names) {
  var O = toIObject(object);
  var i = 0;
  var result = [];
  var key;
  for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);
  // Don't enum bug & hidden keys
  while (names.length > i) if (has(O, key = names[i++])) {
    ~arrayIndexOf(result, key) || result.push(key);
  }
  return result;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_object-keys.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_object-keys.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 19.1.2.14 / 15.2.3.14 Object.keys(O)
var $keys = __webpack_require__(/*! ./_object-keys-internal */ "../node_modules/core-js/modules/_object-keys-internal.js");
var enumBugKeys = __webpack_require__(/*! ./_enum-bug-keys */ "../node_modules/core-js/modules/_enum-bug-keys.js");

module.exports = Object.keys || function keys(O) {
  return $keys(O, enumBugKeys);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_property-desc.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_property-desc.js ***!
  \*********************************************************/
/***/ ((module) => {

module.exports = function (bitmap, value) {
  return {
    enumerable: !(bitmap & 1),
    configurable: !(bitmap & 2),
    writable: !(bitmap & 4),
    value: value
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_redefine.js":
/*!****************************************************!*\
  !*** ../node_modules/core-js/modules/_redefine.js ***!
  \****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var SRC = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/modules/_uid.js")('src');
var $toString = __webpack_require__(/*! ./_function-to-string */ "../node_modules/core-js/modules/_function-to-string.js");
var TO_STRING = 'toString';
var TPL = ('' + $toString).split(TO_STRING);

__webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js").inspectSource = function (it) {
  return $toString.call(it);
};

(module.exports = function (O, key, val, safe) {
  var isFunction = typeof val == 'function';
  if (isFunction) has(val, 'name') || hide(val, 'name', key);
  if (O[key] === val) return;
  if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));
  if (O === global) {
    O[key] = val;
  } else if (!safe) {
    delete O[key];
    hide(O, key, val);
  } else if (O[key]) {
    O[key] = val;
  } else {
    hide(O, key, val);
  }
// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
})(Function.prototype, TO_STRING, function toString() {
  return typeof this == 'function' && this[SRC] || $toString.call(this);
});


/***/ }),

/***/ "../node_modules/core-js/modules/_regexp-exec-abstract.js":
/*!****************************************************************!*\
  !*** ../node_modules/core-js/modules/_regexp-exec-abstract.js ***!
  \****************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/modules/_classof.js");
var builtinExec = RegExp.prototype.exec;

 // `RegExpExec` abstract operation
// https://tc39.github.io/ecma262/#sec-regexpexec
module.exports = function (R, S) {
  var exec = R.exec;
  if (typeof exec === 'function') {
    var result = exec.call(R, S);
    if (typeof result !== 'object') {
      throw new TypeError('RegExp exec method returned something other than an Object or null');
    }
    return result;
  }
  if (classof(R) !== 'RegExp') {
    throw new TypeError('RegExp#exec called on incompatible receiver');
  }
  return builtinExec.call(R, S);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_regexp-exec.js":
/*!*******************************************************!*\
  !*** ../node_modules/core-js/modules/_regexp-exec.js ***!
  \*******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var regexpFlags = __webpack_require__(/*! ./_flags */ "../node_modules/core-js/modules/_flags.js");

var nativeExec = RegExp.prototype.exec;
// This always refers to the native implementation, because the
// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,
// which loads this file before patching the method.
var nativeReplace = String.prototype.replace;

var patchedExec = nativeExec;

var LAST_INDEX = 'lastIndex';

var UPDATES_LAST_INDEX_WRONG = (function () {
  var re1 = /a/,
      re2 = /b*/g;
  nativeExec.call(re1, 'a');
  nativeExec.call(re2, 'a');
  return re1[LAST_INDEX] !== 0 || re2[LAST_INDEX] !== 0;
})();

// nonparticipating capturing group, copied from es5-shim's String#split patch.
var NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;

var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED;

if (PATCH) {
  patchedExec = function exec(str) {
    var re = this;
    var lastIndex, reCopy, match, i;

    if (NPCG_INCLUDED) {
      reCopy = new RegExp('^' + re.source + '$(?!\\s)', regexpFlags.call(re));
    }
    if (UPDATES_LAST_INDEX_WRONG) lastIndex = re[LAST_INDEX];

    match = nativeExec.call(re, str);

    if (UPDATES_LAST_INDEX_WRONG && match) {
      re[LAST_INDEX] = re.global ? match.index + match[0].length : lastIndex;
    }
    if (NPCG_INCLUDED && match && match.length > 1) {
      // Fix browsers whose `exec` methods don't consistently return `undefined`
      // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/
      // eslint-disable-next-line no-loop-func
      nativeReplace.call(match[0], reCopy, function () {
        for (i = 1; i < arguments.length - 2; i++) {
          if (arguments[i] === undefined) match[i] = undefined;
        }
      });
    }

    return match;
  };
}

module.exports = patchedExec;


/***/ }),

/***/ "../node_modules/core-js/modules/_same-value.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_same-value.js ***!
  \******************************************************/
/***/ ((module) => {

// 7.2.9 SameValue(x, y)
module.exports = Object.is || function is(x, y) {
  // eslint-disable-next-line no-self-compare
  return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;
};


/***/ }),

/***/ "../node_modules/core-js/modules/_set-to-string-tag.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/_set-to-string-tag.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var def = __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js").f;
var has = __webpack_require__(/*! ./_has */ "../node_modules/core-js/modules/_has.js");
var TAG = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('toStringTag');

module.exports = function (it, tag, stat) {
  if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });
};


/***/ }),

/***/ "../node_modules/core-js/modules/_shared-key.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_shared-key.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var shared = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/modules/_shared.js")('keys');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/modules/_uid.js");
module.exports = function (key) {
  return shared[key] || (shared[key] = uid(key));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_shared.js":
/*!**************************************************!*\
  !*** ../node_modules/core-js/modules/_shared.js ***!
  \**************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var core = __webpack_require__(/*! ./_core */ "../node_modules/core-js/modules/_core.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var SHARED = '__core-js_shared__';
var store = global[SHARED] || (global[SHARED] = {});

(module.exports = function (key, value) {
  return store[key] || (store[key] = value !== undefined ? value : {});
})('versions', []).push({
  version: core.version,
  mode: __webpack_require__(/*! ./_library */ "../node_modules/core-js/modules/_library.js") ? 'pure' : 'global',
  copyright: '© 2020 Denis Pushkarev (zloirock.ru)'
});


/***/ }),

/***/ "../node_modules/core-js/modules/_species-constructor.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/modules/_species-constructor.js ***!
  \***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.3.20 SpeciesConstructor(O, defaultConstructor)
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var aFunction = __webpack_require__(/*! ./_a-function */ "../node_modules/core-js/modules/_a-function.js");
var SPECIES = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('species');
module.exports = function (O, D) {
  var C = anObject(O).constructor;
  var S;
  return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_strict-method.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/_strict-method.js ***!
  \*********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js");

module.exports = function (method, arg) {
  return !!method && fails(function () {
    // eslint-disable-next-line no-useless-call
    arg ? method.call(null, function () { /* empty */ }, 1) : method.call(null);
  });
};


/***/ }),

/***/ "../node_modules/core-js/modules/_string-at.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_string-at.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
// true  -> String#at
// false -> String#codePointAt
module.exports = function (TO_STRING) {
  return function (that, pos) {
    var s = String(defined(that));
    var i = toInteger(pos);
    var l = s.length;
    var a, b;
    if (i < 0 || i >= l) return TO_STRING ? '' : undefined;
    a = s.charCodeAt(i);
    return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
      ? TO_STRING ? s.charAt(i) : a
      : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
  };
};


/***/ }),

/***/ "../node_modules/core-js/modules/_string-context.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/_string-context.js ***!
  \**********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// helper for String#{startsWith, endsWith, includes}
var isRegExp = __webpack_require__(/*! ./_is-regexp */ "../node_modules/core-js/modules/_is-regexp.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");

module.exports = function (that, searchString, NAME) {
  if (isRegExp(searchString)) throw TypeError('String#' + NAME + " doesn't accept regex!");
  return String(defined(that));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-absolute-index.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/_to-absolute-index.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var max = Math.max;
var min = Math.min;
module.exports = function (index, length) {
  index = toInteger(index);
  return index < 0 ? max(index + length, 0) : min(index, length);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-integer.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_to-integer.js ***!
  \******************************************************/
/***/ ((module) => {

// 7.1.4 ToInteger
var ceil = Math.ceil;
var floor = Math.floor;
module.exports = function (it) {
  return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-iobject.js":
/*!******************************************************!*\
  !*** ../node_modules/core-js/modules/_to-iobject.js ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// to indexed object, toObject with fallback for non-array-like ES3 strings
var IObject = __webpack_require__(/*! ./_iobject */ "../node_modules/core-js/modules/_iobject.js");
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
module.exports = function (it) {
  return IObject(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-length.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_to-length.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.15 ToLength
var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var min = Math.min;
module.exports = function (it) {
  return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-object.js":
/*!*****************************************************!*\
  !*** ../node_modules/core-js/modules/_to-object.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.13 ToObject(argument)
var defined = __webpack_require__(/*! ./_defined */ "../node_modules/core-js/modules/_defined.js");
module.exports = function (it) {
  return Object(defined(it));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_to-primitive.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/modules/_to-primitive.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

// 7.1.1 ToPrimitive(input [, PreferredType])
var isObject = __webpack_require__(/*! ./_is-object */ "../node_modules/core-js/modules/_is-object.js");
// instead of the ES6 spec version, we didn't implement @@toPrimitive case
// and the second argument - flag - preferred type is a string
module.exports = function (it, S) {
  if (!isObject(it)) return it;
  var fn, val;
  if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
  if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
  throw TypeError("Can't convert object to primitive value");
};


/***/ }),

/***/ "../node_modules/core-js/modules/_uid.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_uid.js ***!
  \***********************************************/
/***/ ((module) => {

var id = 0;
var px = Math.random();
module.exports = function (key) {
  return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
};


/***/ }),

/***/ "../node_modules/core-js/modules/_wks.js":
/*!***********************************************!*\
  !*** ../node_modules/core-js/modules/_wks.js ***!
  \***********************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var store = __webpack_require__(/*! ./_shared */ "../node_modules/core-js/modules/_shared.js")('wks');
var uid = __webpack_require__(/*! ./_uid */ "../node_modules/core-js/modules/_uid.js");
var Symbol = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js").Symbol;
var USE_SYMBOL = typeof Symbol == 'function';

var $exports = module.exports = function (name) {
  return store[name] || (store[name] =
    USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
};

$exports.store = store;


/***/ }),

/***/ "../node_modules/core-js/modules/es6.array.filter.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.array.filter.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var $filter = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/modules/_array-methods.js")(2);

$export($export.P + $export.F * !__webpack_require__(/*! ./_strict-method */ "../node_modules/core-js/modules/_strict-method.js")([].filter, true), 'Array', {
  // 22.1.3.7 / 15.4.4.20 Array.prototype.filter(callbackfn [, thisArg])
  filter: function filter(callbackfn /* , thisArg */) {
    return $filter(this, callbackfn, arguments[1]);
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.array.find.js":
/*!*********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.array.find.js ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 22.1.3.8 Array.prototype.find(predicate, thisArg = undefined)
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var $find = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/modules/_array-methods.js")(5);
var KEY = 'find';
var forced = true;
// Shouldn't skip holes
if (KEY in []) Array(1)[KEY](function () { forced = false; });
$export($export.P + $export.F * forced, 'Array', {
  find: function find(callbackfn /* , that = undefined */) {
    return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
  }
});
__webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/modules/_add-to-unscopables.js")(KEY);


/***/ }),

/***/ "../node_modules/core-js/modules/es6.array.iterator.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.array.iterator.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var addToUnscopables = __webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/modules/_add-to-unscopables.js");
var step = __webpack_require__(/*! ./_iter-step */ "../node_modules/core-js/modules/_iter-step.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/modules/_iterators.js");
var toIObject = __webpack_require__(/*! ./_to-iobject */ "../node_modules/core-js/modules/_to-iobject.js");

// 22.1.3.4 Array.prototype.entries()
// 22.1.3.13 Array.prototype.keys()
// 22.1.3.29 Array.prototype.values()
// 22.1.3.30 Array.prototype[@@iterator]()
module.exports = __webpack_require__(/*! ./_iter-define */ "../node_modules/core-js/modules/_iter-define.js")(Array, 'Array', function (iterated, kind) {
  this._t = toIObject(iterated); // target
  this._i = 0;                   // next index
  this._k = kind;                // kind
// 22.1.5.2.1 %ArrayIteratorPrototype%.next()
}, function () {
  var O = this._t;
  var kind = this._k;
  var index = this._i++;
  if (!O || index >= O.length) {
    this._t = undefined;
    return step(1);
  }
  if (kind == 'keys') return step(0, index);
  if (kind == 'values') return step(0, O[index]);
  return step(0, [index, O[index]]);
}, 'values');

// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
Iterators.Arguments = Iterators.Array;

addToUnscopables('keys');
addToUnscopables('values');
addToUnscopables('entries');


/***/ }),

/***/ "../node_modules/core-js/modules/es6.array.map.js":
/*!********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.array.map.js ***!
  \********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var $map = __webpack_require__(/*! ./_array-methods */ "../node_modules/core-js/modules/_array-methods.js")(1);

$export($export.P + $export.F * !__webpack_require__(/*! ./_strict-method */ "../node_modules/core-js/modules/_strict-method.js")([].map, true), 'Array', {
  // 22.1.3.15 / 15.4.4.19 Array.prototype.map(callbackfn [, thisArg])
  map: function map(callbackfn /* , thisArg */) {
    return $map(this, callbackfn, arguments[1]);
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.object.to-string.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.object.to-string.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// 19.1.3.6 Object.prototype.toString()
var classof = __webpack_require__(/*! ./_classof */ "../node_modules/core-js/modules/_classof.js");
var test = {};
test[__webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js")('toStringTag')] = 'z';
if (test + '' != '[object z]') {
  __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js")(Object.prototype, 'toString', function toString() {
    return '[object ' + classof(this) + ']';
  }, true);
}


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.exec.js":
/*!**********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.exec.js ***!
  \**********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

var regexpExec = __webpack_require__(/*! ./_regexp-exec */ "../node_modules/core-js/modules/_regexp-exec.js");
__webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js")({
  target: 'RegExp',
  proto: true,
  forced: regexpExec !== /./.exec
}, {
  exec: regexpExec
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.flags.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.flags.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

// 21.2.5.3 get RegExp.prototype.flags()
if (__webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js") && /./g.flags != 'g') __webpack_require__(/*! ./_object-dp */ "../node_modules/core-js/modules/_object-dp.js").f(RegExp.prototype, 'flags', {
  configurable: true,
  get: __webpack_require__(/*! ./_flags */ "../node_modules/core-js/modules/_flags.js")
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.match.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.match.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var advanceStringIndex = __webpack_require__(/*! ./_advance-string-index */ "../node_modules/core-js/modules/_advance-string-index.js");
var regExpExec = __webpack_require__(/*! ./_regexp-exec-abstract */ "../node_modules/core-js/modules/_regexp-exec-abstract.js");

// @@match logic
__webpack_require__(/*! ./_fix-re-wks */ "../node_modules/core-js/modules/_fix-re-wks.js")('match', 1, function (defined, MATCH, $match, maybeCallNative) {
  return [
    // `String.prototype.match` method
    // https://tc39.github.io/ecma262/#sec-string.prototype.match
    function match(regexp) {
      var O = defined(this);
      var fn = regexp == undefined ? undefined : regexp[MATCH];
      return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));
    },
    // `RegExp.prototype[@@match]` method
    // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match
    function (regexp) {
      var res = maybeCallNative($match, regexp, this);
      if (res.done) return res.value;
      var rx = anObject(regexp);
      var S = String(this);
      if (!rx.global) return regExpExec(rx, S);
      var fullUnicode = rx.unicode;
      rx.lastIndex = 0;
      var A = [];
      var n = 0;
      var result;
      while ((result = regExpExec(rx, S)) !== null) {
        var matchStr = String(result[0]);
        A[n] = matchStr;
        if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
        n++;
      }
      return n === 0 ? null : A;
    }
  ];
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.replace.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.replace.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var toObject = __webpack_require__(/*! ./_to-object */ "../node_modules/core-js/modules/_to-object.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var toInteger = __webpack_require__(/*! ./_to-integer */ "../node_modules/core-js/modules/_to-integer.js");
var advanceStringIndex = __webpack_require__(/*! ./_advance-string-index */ "../node_modules/core-js/modules/_advance-string-index.js");
var regExpExec = __webpack_require__(/*! ./_regexp-exec-abstract */ "../node_modules/core-js/modules/_regexp-exec-abstract.js");
var max = Math.max;
var min = Math.min;
var floor = Math.floor;
var SUBSTITUTION_SYMBOLS = /\$([$&`']|\d\d?|<[^>]*>)/g;
var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&`']|\d\d?)/g;

var maybeToString = function (it) {
  return it === undefined ? it : String(it);
};

// @@replace logic
__webpack_require__(/*! ./_fix-re-wks */ "../node_modules/core-js/modules/_fix-re-wks.js")('replace', 2, function (defined, REPLACE, $replace, maybeCallNative) {
  return [
    // `String.prototype.replace` method
    // https://tc39.github.io/ecma262/#sec-string.prototype.replace
    function replace(searchValue, replaceValue) {
      var O = defined(this);
      var fn = searchValue == undefined ? undefined : searchValue[REPLACE];
      return fn !== undefined
        ? fn.call(searchValue, O, replaceValue)
        : $replace.call(String(O), searchValue, replaceValue);
    },
    // `RegExp.prototype[@@replace]` method
    // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace
    function (regexp, replaceValue) {
      var res = maybeCallNative($replace, regexp, this, replaceValue);
      if (res.done) return res.value;

      var rx = anObject(regexp);
      var S = String(this);
      var functionalReplace = typeof replaceValue === 'function';
      if (!functionalReplace) replaceValue = String(replaceValue);
      var global = rx.global;
      if (global) {
        var fullUnicode = rx.unicode;
        rx.lastIndex = 0;
      }
      var results = [];
      while (true) {
        var result = regExpExec(rx, S);
        if (result === null) break;
        results.push(result);
        if (!global) break;
        var matchStr = String(result[0]);
        if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
      }
      var accumulatedResult = '';
      var nextSourcePosition = 0;
      for (var i = 0; i < results.length; i++) {
        result = results[i];
        var matched = String(result[0]);
        var position = max(min(toInteger(result.index), S.length), 0);
        var captures = [];
        // NOTE: This is equivalent to
        //   captures = result.slice(1).map(maybeToString)
        // but for some reason `nativeSlice.call(result, 1, result.length)` (called in
        // the slice polyfill when slicing native arrays) "doesn't work" in safari 9 and
        // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.
        for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));
        var namedCaptures = result.groups;
        if (functionalReplace) {
          var replacerArgs = [matched].concat(captures, position, S);
          if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);
          var replacement = String(replaceValue.apply(undefined, replacerArgs));
        } else {
          replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);
        }
        if (position >= nextSourcePosition) {
          accumulatedResult += S.slice(nextSourcePosition, position) + replacement;
          nextSourcePosition = position + matched.length;
        }
      }
      return accumulatedResult + S.slice(nextSourcePosition);
    }
  ];

    // https://tc39.github.io/ecma262/#sec-getsubstitution
  function getSubstitution(matched, str, position, captures, namedCaptures, replacement) {
    var tailPos = position + matched.length;
    var m = captures.length;
    var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;
    if (namedCaptures !== undefined) {
      namedCaptures = toObject(namedCaptures);
      symbols = SUBSTITUTION_SYMBOLS;
    }
    return $replace.call(replacement, symbols, function (match, ch) {
      var capture;
      switch (ch.charAt(0)) {
        case '$': return '$';
        case '&': return matched;
        case '`': return str.slice(0, position);
        case "'": return str.slice(tailPos);
        case '<':
          capture = namedCaptures[ch.slice(1, -1)];
          break;
        default: // \d\d?
          var n = +ch;
          if (n === 0) return match;
          if (n > m) {
            var f = floor(n / 10);
            if (f === 0) return match;
            if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);
            return match;
          }
          capture = captures[n - 1];
      }
      return capture === undefined ? '' : capture;
    });
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.search.js":
/*!************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.search.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var sameValue = __webpack_require__(/*! ./_same-value */ "../node_modules/core-js/modules/_same-value.js");
var regExpExec = __webpack_require__(/*! ./_regexp-exec-abstract */ "../node_modules/core-js/modules/_regexp-exec-abstract.js");

// @@search logic
__webpack_require__(/*! ./_fix-re-wks */ "../node_modules/core-js/modules/_fix-re-wks.js")('search', 1, function (defined, SEARCH, $search, maybeCallNative) {
  return [
    // `String.prototype.search` method
    // https://tc39.github.io/ecma262/#sec-string.prototype.search
    function search(regexp) {
      var O = defined(this);
      var fn = regexp == undefined ? undefined : regexp[SEARCH];
      return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[SEARCH](String(O));
    },
    // `RegExp.prototype[@@search]` method
    // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@search
    function (regexp) {
      var res = maybeCallNative($search, regexp, this);
      if (res.done) return res.value;
      var rx = anObject(regexp);
      var S = String(this);
      var previousLastIndex = rx.lastIndex;
      if (!sameValue(previousLastIndex, 0)) rx.lastIndex = 0;
      var result = regExpExec(rx, S);
      if (!sameValue(rx.lastIndex, previousLastIndex)) rx.lastIndex = previousLastIndex;
      return result === null ? -1 : result.index;
    }
  ];
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.split.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.split.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


var isRegExp = __webpack_require__(/*! ./_is-regexp */ "../node_modules/core-js/modules/_is-regexp.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var speciesConstructor = __webpack_require__(/*! ./_species-constructor */ "../node_modules/core-js/modules/_species-constructor.js");
var advanceStringIndex = __webpack_require__(/*! ./_advance-string-index */ "../node_modules/core-js/modules/_advance-string-index.js");
var toLength = __webpack_require__(/*! ./_to-length */ "../node_modules/core-js/modules/_to-length.js");
var callRegExpExec = __webpack_require__(/*! ./_regexp-exec-abstract */ "../node_modules/core-js/modules/_regexp-exec-abstract.js");
var regexpExec = __webpack_require__(/*! ./_regexp-exec */ "../node_modules/core-js/modules/_regexp-exec.js");
var fails = __webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js");
var $min = Math.min;
var $push = [].push;
var $SPLIT = 'split';
var LENGTH = 'length';
var LAST_INDEX = 'lastIndex';
var MAX_UINT32 = 0xffffffff;

// babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError
var SUPPORTS_Y = !fails(function () { RegExp(MAX_UINT32, 'y'); });

// @@split logic
__webpack_require__(/*! ./_fix-re-wks */ "../node_modules/core-js/modules/_fix-re-wks.js")('split', 2, function (defined, SPLIT, $split, maybeCallNative) {
  var internalSplit;
  if (
    'abbc'[$SPLIT](/(b)*/)[1] == 'c' ||
    'test'[$SPLIT](/(?:)/, -1)[LENGTH] != 4 ||
    'ab'[$SPLIT](/(?:ab)*/)[LENGTH] != 2 ||
    '.'[$SPLIT](/(.?)(.?)/)[LENGTH] != 4 ||
    '.'[$SPLIT](/()()/)[LENGTH] > 1 ||
    ''[$SPLIT](/.?/)[LENGTH]
  ) {
    // based on es5-shim implementation, need to rework it
    internalSplit = function (separator, limit) {
      var string = String(this);
      if (separator === undefined && limit === 0) return [];
      // If `separator` is not a regex, use native split
      if (!isRegExp(separator)) return $split.call(string, separator, limit);
      var output = [];
      var flags = (separator.ignoreCase ? 'i' : '') +
                  (separator.multiline ? 'm' : '') +
                  (separator.unicode ? 'u' : '') +
                  (separator.sticky ? 'y' : '');
      var lastLastIndex = 0;
      var splitLimit = limit === undefined ? MAX_UINT32 : limit >>> 0;
      // Make `global` and avoid `lastIndex` issues by working with a copy
      var separatorCopy = new RegExp(separator.source, flags + 'g');
      var match, lastIndex, lastLength;
      while (match = regexpExec.call(separatorCopy, string)) {
        lastIndex = separatorCopy[LAST_INDEX];
        if (lastIndex > lastLastIndex) {
          output.push(string.slice(lastLastIndex, match.index));
          if (match[LENGTH] > 1 && match.index < string[LENGTH]) $push.apply(output, match.slice(1));
          lastLength = match[0][LENGTH];
          lastLastIndex = lastIndex;
          if (output[LENGTH] >= splitLimit) break;
        }
        if (separatorCopy[LAST_INDEX] === match.index) separatorCopy[LAST_INDEX]++; // Avoid an infinite loop
      }
      if (lastLastIndex === string[LENGTH]) {
        if (lastLength || !separatorCopy.test('')) output.push('');
      } else output.push(string.slice(lastLastIndex));
      return output[LENGTH] > splitLimit ? output.slice(0, splitLimit) : output;
    };
  // Chakra, V8
  } else if ('0'[$SPLIT](undefined, 0)[LENGTH]) {
    internalSplit = function (separator, limit) {
      return separator === undefined && limit === 0 ? [] : $split.call(this, separator, limit);
    };
  } else {
    internalSplit = $split;
  }

  return [
    // `String.prototype.split` method
    // https://tc39.github.io/ecma262/#sec-string.prototype.split
    function split(separator, limit) {
      var O = defined(this);
      var splitter = separator == undefined ? undefined : separator[SPLIT];
      return splitter !== undefined
        ? splitter.call(separator, O, limit)
        : internalSplit.call(String(O), separator, limit);
    },
    // `RegExp.prototype[@@split]` method
    // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@split
    //
    // NOTE: This cannot be properly polyfilled in engines that don't support
    // the 'y' flag.
    function (regexp, limit) {
      var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== $split);
      if (res.done) return res.value;

      var rx = anObject(regexp);
      var S = String(this);
      var C = speciesConstructor(rx, RegExp);

      var unicodeMatching = rx.unicode;
      var flags = (rx.ignoreCase ? 'i' : '') +
                  (rx.multiline ? 'm' : '') +
                  (rx.unicode ? 'u' : '') +
                  (SUPPORTS_Y ? 'y' : 'g');

      // ^(? + rx + ) is needed, in combination with some S slicing, to
      // simulate the 'y' flag.
      var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags);
      var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;
      if (lim === 0) return [];
      if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];
      var p = 0;
      var q = 0;
      var A = [];
      while (q < S.length) {
        splitter.lastIndex = SUPPORTS_Y ? q : 0;
        var z = callRegExpExec(splitter, SUPPORTS_Y ? S : S.slice(q));
        var e;
        if (
          z === null ||
          (e = $min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p
        ) {
          q = advanceStringIndex(S, q, unicodeMatching);
        } else {
          A.push(S.slice(p, q));
          if (A.length === lim) return A;
          for (var i = 1; i <= z.length - 1; i++) {
            A.push(z[i]);
            if (A.length === lim) return A;
          }
          q = p = e;
        }
      }
      A.push(S.slice(p));
      return A;
    }
  ];
});


/***/ }),

/***/ "../node_modules/core-js/modules/es6.regexp.to-string.js":
/*!***************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.regexp.to-string.js ***!
  \***************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

__webpack_require__(/*! ./es6.regexp.flags */ "../node_modules/core-js/modules/es6.regexp.flags.js");
var anObject = __webpack_require__(/*! ./_an-object */ "../node_modules/core-js/modules/_an-object.js");
var $flags = __webpack_require__(/*! ./_flags */ "../node_modules/core-js/modules/_flags.js");
var DESCRIPTORS = __webpack_require__(/*! ./_descriptors */ "../node_modules/core-js/modules/_descriptors.js");
var TO_STRING = 'toString';
var $toString = /./[TO_STRING];

var define = function (fn) {
  __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js")(RegExp.prototype, TO_STRING, fn, true);
};

// 21.2.5.14 RegExp.prototype.toString()
if (__webpack_require__(/*! ./_fails */ "../node_modules/core-js/modules/_fails.js")(function () { return $toString.call({ source: 'a', flags: 'b' }) != '/a/b'; })) {
  define(function toString() {
    var R = anObject(this);
    return '/'.concat(R.source, '/',
      'flags' in R ? R.flags : !DESCRIPTORS && R instanceof RegExp ? $flags.call(R) : undefined);
  });
// FF44- RegExp#toString has a wrong name
} else if ($toString.name != TO_STRING) {
  define(function toString() {
    return $toString.call(this);
  });
}


/***/ }),

/***/ "../node_modules/core-js/modules/es6.string.includes.js":
/*!**************************************************************!*\
  !*** ../node_modules/core-js/modules/es6.string.includes.js ***!
  \**************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
// 21.1.3.7 String.prototype.includes(searchString, position = 0)

var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var context = __webpack_require__(/*! ./_string-context */ "../node_modules/core-js/modules/_string-context.js");
var INCLUDES = 'includes';

$export($export.P + $export.F * __webpack_require__(/*! ./_fails-is-regexp */ "../node_modules/core-js/modules/_fails-is-regexp.js")(INCLUDES), 'String', {
  includes: function includes(searchString /* , position = 0 */) {
    return !!~context(this, searchString, INCLUDES)
      .indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined);
  }
});


/***/ }),

/***/ "../node_modules/core-js/modules/es7.array.includes.js":
/*!*************************************************************!*\
  !*** ../node_modules/core-js/modules/es7.array.includes.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

"use strict";

// https://github.com/tc39/Array.prototype.includes
var $export = __webpack_require__(/*! ./_export */ "../node_modules/core-js/modules/_export.js");
var $includes = __webpack_require__(/*! ./_array-includes */ "../node_modules/core-js/modules/_array-includes.js")(true);

$export($export.P, 'Array', {
  includes: function includes(el /* , fromIndex = 0 */) {
    return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);
  }
});

__webpack_require__(/*! ./_add-to-unscopables */ "../node_modules/core-js/modules/_add-to-unscopables.js")('includes');


/***/ }),

/***/ "../node_modules/core-js/modules/web.dom.iterable.js":
/*!***********************************************************!*\
  !*** ../node_modules/core-js/modules/web.dom.iterable.js ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {

var $iterators = __webpack_require__(/*! ./es6.array.iterator */ "../node_modules/core-js/modules/es6.array.iterator.js");
var getKeys = __webpack_require__(/*! ./_object-keys */ "../node_modules/core-js/modules/_object-keys.js");
var redefine = __webpack_require__(/*! ./_redefine */ "../node_modules/core-js/modules/_redefine.js");
var global = __webpack_require__(/*! ./_global */ "../node_modules/core-js/modules/_global.js");
var hide = __webpack_require__(/*! ./_hide */ "../node_modules/core-js/modules/_hide.js");
var Iterators = __webpack_require__(/*! ./_iterators */ "../node_modules/core-js/modules/_iterators.js");
var wks = __webpack_require__(/*! ./_wks */ "../node_modules/core-js/modules/_wks.js");
var ITERATOR = wks('iterator');
var TO_STRING_TAG = wks('toStringTag');
var ArrayValues = Iterators.Array;

var DOMIterables = {
  CSSRuleList: true, // TODO: Not spec compliant, should be false.
  CSSStyleDeclaration: false,
  CSSValueList: false,
  ClientRectList: false,
  DOMRectList: false,
  DOMStringList: false,
  DOMTokenList: true,
  DataTransferItemList: false,
  FileList: false,
  HTMLAllCollection: false,
  HTMLCollection: false,
  HTMLFormElement: false,
  HTMLSelectElement: false,
  MediaList: true, // TODO: Not spec compliant, should be false.
  MimeTypeArray: false,
  NamedNodeMap: false,
  NodeList: true,
  PaintRequestList: false,
  Plugin: false,
  PluginArray: false,
  SVGLengthList: false,
  SVGNumberList: false,
  SVGPathSegList: false,
  SVGPointList: false,
  SVGStringList: false,
  SVGTransformList: false,
  SourceBufferList: false,
  StyleSheetList: true, // TODO: Not spec compliant, should be false.
  TextTrackCueList: false,
  TextTrackList: false,
  TouchList: false
};

for (var collections = getKeys(DOMIterables), i = 0; i < collections.length; i++) {
  var NAME = collections[i];
  var explicit = DOMIterables[NAME];
  var Collection = global[NAME];
  var proto = Collection && Collection.prototype;
  var key;
  if (proto) {
    if (!proto[ITERATOR]) hide(proto, ITERATOR, ArrayValues);
    if (!proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);
    Iterators[NAME] = ArrayValues;
    if (explicit) for (key in $iterators) if (!proto[key]) redefine(proto, key, $iterators[key], true);
  }
}


/***/ }),

/***/ "../node_modules/create-react-context/lib/implementation.js":
/*!******************************************************************!*\
  !*** ../node_modules/create-react-context/lib/implementation.js ***!
  \******************************************************************/
/***/ ((module, exports, __webpack_require__) => {

"use strict";


exports.__esModule = true;

var _react = __webpack_require__(/*! react */ "react");

var _react2 = _interopRequireDefault(_react);

var _propTypes = __webpack_require__(/*! prop-types */ "../node_modules/prop-types/index.js");

var _propTypes2 = _interopRequireDefault(_propTypes);

var _gud = __webpack_require__(/*! gud */ "../node_modules/gud/index.js");

var _gud2 = _interopRequireDefault(_gud);

var _warning = __webpack_require__(/*! warning */ "../node_modules/warning/warning.js");

var _warning2 = _interopRequireDefault(_warning);

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }

function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }

function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }

var MAX_SIGNED_31_BIT_INT = 1073741823;

// Inlined Object.is polyfill.
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is
function objectIs(x, y) {
  if (x === y) {
    return x !== 0 || 1 / x === 1 / y;
  } else {
    return x !== x && y !== y;
  }
}

function createEventEmitter(value) {
  var handlers = [];
  return {
    on: function on(handler) {
      handlers.push(handler);
    },
    off: function off(handler) {
      handlers = handlers.filter(function (h) {
        return h !== handler;
      });
    },
    get: function get() {
      return value;
    },
    set: function set(newValue, changedBits) {
      value = newValue;
      handlers.forEach(function (handler) {
        return handler(value, changedBits);
      });
    }
  };
}

function onlyChild(children) {
  return Array.isArray(children) ? children[0] : children;
}

function createReactContext(defaultValue, calculateChangedBits) {
  var _Provider$childContex, _Consumer$contextType;

  var contextProp = '__create-react-context-' + (0, _gud2.default)() + '__';

  var Provider = function (_Component) {
    _inherits(Provider, _Component);

    function Provider() {
      var _temp, _this, _ret;

      _classCallCheck(this, Provider);

      for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
        args[_key] = arguments[_key];
      }

      return _ret = (_temp = (_this = _possibleConstructorReturn(this, _Component.call.apply(_Component, [this].concat(args))), _this), _this.emitter = createEventEmitter(_this.props.value), _temp), _possibleConstructorReturn(_this, _ret);
    }

    Provider.prototype.getChildContext = function getChildContext() {
      var _ref;

      return _ref = {}, _ref[contextProp] = this.emitter, _ref;
    };

    Provider.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {
      if (this.props.value !== nextProps.value) {
        var oldValue = this.props.value;
        var newValue = nextProps.value;
        var changedBits = void 0;

        if (objectIs(oldValue, newValue)) {
          changedBits = 0; // No change
        } else {
          changedBits = typeof calculateChangedBits === 'function' ? calculateChangedBits(oldValue, newValue) : MAX_SIGNED_31_BIT_INT;
          if (true) {
            (0, _warning2.default)((changedBits & MAX_SIGNED_31_BIT_INT) === changedBits, 'calculateChangedBits: Expected the return value to be a ' + '31-bit integer. Instead received: %s', changedBits);
          }

          changedBits |= 0;

          if (changedBits !== 0) {
            this.emitter.set(nextProps.value, changedBits);
          }
        }
      }
    };

    Provider.prototype.render = function render() {
      return this.props.children;
    };

    return Provider;
  }(_react.Component);

  Provider.childContextTypes = (_Provider$childContex = {}, _Provider$childContex[contextProp] = _propTypes2.default.object.isRequired, _Provider$childContex);

  var Consumer = function (_Component2) {
    _inherits(Consumer, _Component2);

    function Consumer() {
      var _temp2, _this2, _ret2;

      _classCallCheck(this, Consumer);

      for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
        args[_key2] = arguments[_key2];
      }

      return _ret2 = (_temp2 = (_this2 = _possibleConstructorReturn(this, _Component2.call.apply(_Component2, [this].concat(args))), _this2), _this2.state = {
        value: _this2.getValue()
      }, _this2.onUpdate = function (newValue, changedBits) {
        var observedBits = _this2.observedBits | 0;
        if ((observedBits & changedBits) !== 0) {
          _this2.setState({ value: _this2.getValue() });
        }
      }, _temp2), _possibleConstructorReturn(_this2, _ret2);
    }

    Consumer.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {
      var observedBits = nextProps.observedBits;

      this.observedBits = observedBits === undefined || observedBits === null ? MAX_SIGNED_31_BIT_INT // Subscribe to all changes by default
      : observedBits;
    };

    Consumer.prototype.componentDidMount = function componentDidMount() {
      if (this.context[contextProp]) {
        this.context[contextProp].on(this.onUpdate);
      }
      var observedBits = this.props.observedBits;

      this.observedBits = observedBits === undefined || observedBits === null ? MAX_SIGNED_31_BIT_INT // Subscribe to all changes by default
      : observedBits;
    };

    Consumer.prototype.componentWillUnmount = function componentWillUnmount() {
      if (this.context[contextProp]) {
        this.context[contextProp].off(this.onUpdate);
      }
    };

    Consumer.prototype.getValue = function getValue() {
      if (this.context[contextProp]) {
        return this.context[contextProp].get();
      } else {
        return defaultValue;
      }
    };

    Consumer.prototype.render = function render() {
      return onlyChild(this.props.children)(this.state.value);
    };

    return Consumer;
  }(_react.Component);

  Consumer.contextTypes = (_Consumer$contextType = {}, _Consumer$contextType[contextProp] = _propTypes2.default.object, _Consumer$contextType);


  return {
    Provider: Provider,
    Consumer: Consumer
  };
}

exports.default = createReactContext;
module.exports = exports['default'];

/***/ }),

/***/ "../node_modules/create-react-context/lib/index.js":
/*!*********************************************************!*\
  !*** ../node_modules/create-react-context/lib/index.js ***!
  \*********************************************************/
/***/ ((module, exports, __webpack_require__) => {

"use strict";


exports.__esModule = true;

var _react = __webpack_require__(/*! react */ "react");

var _react2 = _interopRequireDefault(_react);

var _implementation = __webpack_require__(/*! ./implementation */ "../node_modules/create-react-context/lib/implementation.js");

var _implementation2 = _interopRequireDefault(_implementation);

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

exports.default = _react2.default.createContext || _implementation2.default;
module.exports = exports['default'];

/***/ }),

/***/ "../node_modules/gud/index.js":
/*!************************************!*\
  !*** ../node_modules/gud/index.js ***!
  \************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
// @flow


var key = '__global_unique_id__';

module.exports = function() {
  return __webpack_require__.g[key] = (__webpack_require__.g[key] || 0) + 1;
};


/***/ }),

/***/ "../node_modules/invariant/browser.js":
/*!********************************************!*\
  !*** ../node_modules/invariant/browser.js ***!
  \********************************************/
/***/ ((module) => {

"use strict";
/**
 * Copyright (c) 2013-present, Facebook, Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */



/**
 * Use invariant() to assert state which your program assumes to be true.
 *
 * Provide sprintf-style format (only %s is supported) and arguments
 * to provide information about what broke and what you were
 * expecting.
 *
 * The invariant message will be stripped in production, but the invariant
 * will remain to ensure logic does not differ in production.
 */

var invariant = function(condition, format, a, b, c, d, e, f) {
  if (true) {
    if (format === undefined) {
      throw new Error('invariant requires an error message argument');
    }
  }

  if (!condition) {
    var error;
    if (format === undefined) {
      error = new Error(
        'Minified exception occurred; use the non-minified dev environment ' +
        'for the full error message and additional helpful warnings.'
      );
    } else {
      var args = [a, b, c, d, e, f];
      var argIndex = 0;
      error = new Error(
        format.replace(/%s/g, function() { return args[argIndex++]; })
      );
      error.name = 'Invariant Violation';
    }

    error.framesToPop = 1; // we don't care about invariant's own frame
    throw error;
  }
};

module.exports = invariant;


/***/ }),

/***/ "../node_modules/object-assign/index.js":
/*!**********************************************!*\
  !*** ../node_modules/object-assign/index.js ***!
  \**********************************************/
/***/ ((module) => {

"use strict";
/*
object-assign
(c) Sindre Sorhus
@license MIT
*/


/* eslint-disable no-unused-vars */
var getOwnPropertySymbols = Object.getOwnPropertySymbols;
var hasOwnProperty = Object.prototype.hasOwnProperty;
var propIsEnumerable = Object.prototype.propertyIsEnumerable;

function toObject(val) {
	if (val === null || val === undefined) {
		throw new TypeError('Object.assign cannot be called with null or undefined');
	}

	return Object(val);
}

function shouldUseNative() {
	try {
		if (!Object.assign) {
			return false;
		}

		// Detect buggy property enumeration order in older V8 versions.

		// https://bugs.chromium.org/p/v8/issues/detail?id=4118
		var test1 = new String('abc');  // eslint-disable-line no-new-wrappers
		test1[5] = 'de';
		if (Object.getOwnPropertyNames(test1)[0] === '5') {
			return false;
		}

		// https://bugs.chromium.org/p/v8/issues/detail?id=3056
		var test2 = {};
		for (var i = 0; i < 10; i++) {
			test2['_' + String.fromCharCode(i)] = i;
		}
		var order2 = Object.getOwnPropertyNames(test2).map(function (n) {
			return test2[n];
		});
		if (order2.join('') !== '0123456789') {
			return false;
		}

		// https://bugs.chromium.org/p/v8/issues/detail?id=3056
		var test3 = {};
		'abcdefghijklmnopqrst'.split('').forEach(function (letter) {
			test3[letter] = letter;
		});
		if (Object.keys(Object.assign({}, test3)).join('') !==
				'abcdefghijklmnopqrst') {
			return false;
		}

		return true;
	} catch (err) {
		// We don't expect any of the above to throw, but better to be safe.
		return false;
	}
}

module.exports = shouldUseNative() ? Object.assign : function (target, source) {
	var from;
	var to = toObject(target);
	var symbols;

	for (var s = 1; s < arguments.length; s++) {
		from = Object(arguments[s]);

		for (var key in from) {
			if (hasOwnProperty.call(from, key)) {
				to[key] = from[key];
			}
		}

		if (getOwnPropertySymbols) {
			symbols = getOwnPropertySymbols(from);
			for (var i = 0; i < symbols.length; i++) {
				if (propIsEnumerable.call(from, symbols[i])) {
					to[symbols[i]] = from[symbols[i]];
				}
			}
		}
	}

	return to;
};


/***/ }),

/***/ "../node_modules/prop-types/checkPropTypes.js":
/*!****************************************************!*\
  !*** ../node_modules/prop-types/checkPropTypes.js ***!
  \****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/**
 * Copyright (c) 2013-present, Facebook, Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */



var printWarning = function() {};

if (true) {
  var ReactPropTypesSecret = __webpack_require__(/*! ./lib/ReactPropTypesSecret */ "../node_modules/prop-types/lib/ReactPropTypesSecret.js");
  var loggedTypeFailures = {};
  var has = Function.call.bind(Object.prototype.hasOwnProperty);

  printWarning = function(text) {
    var message = 'Warning: ' + text;
    if (typeof console !== 'undefined') {
      console.error(message);
    }
    try {
      // --- Welcome to debugging React ---
      // This error was thrown as a convenience so that you can use this stack
      // to find the callsite that caused this warning to fire.
      throw new Error(message);
    } catch (x) {}
  };
}

/**
 * Assert that the values match with the type specs.
 * Error messages are memorized and will only be shown once.
 *
 * @param {object} typeSpecs Map of name to a ReactPropType
 * @param {object} values Runtime values that need to be type-checked
 * @param {string} location e.g. "prop", "context", "child context"
 * @param {string} componentName Name of the component for error messages.
 * @param {?Function} getStack Returns the component stack.
 * @private
 */
function checkPropTypes(typeSpecs, values, location, componentName, getStack) {
  if (true) {
    for (var typeSpecName in typeSpecs) {
      if (has(typeSpecs, typeSpecName)) {
        var error;
        // Prop type validation may throw. In case they do, we don't want to
        // fail the render phase where it didn't fail before. So we log it.
        // After these have been cleaned up, we'll let them throw.
        try {
          // This is intentionally an invariant that gets caught. It's the same
          // behavior as without this statement except with a better message.
          if (typeof typeSpecs[typeSpecName] !== 'function') {
            var err = Error(
              (componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' +
              'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.'
            );
            err.name = 'Invariant Violation';
            throw err;
          }
          error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);
        } catch (ex) {
          error = ex;
        }
        if (error && !(error instanceof Error)) {
          printWarning(
            (componentName || 'React class') + ': type specification of ' +
            location + ' `' + typeSpecName + '` is invalid; the type checker ' +
            'function must return `null` or an `Error` but returned a ' + typeof error + '. ' +
            'You may have forgotten to pass an argument to the type checker ' +
            'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' +
            'shape all require an argument).'
          );
        }
        if (error instanceof Error && !(error.message in loggedTypeFailures)) {
          // Only monitor this failure once because there tends to be a lot of the
          // same error.
          loggedTypeFailures[error.message] = true;

          var stack = getStack ? getStack() : '';

          printWarning(
            'Failed ' + location + ' type: ' + error.message + (stack != null ? stack : '')
          );
        }
      }
    }
  }
}

/**
 * Resets warning cache when testing.
 *
 * @private
 */
checkPropTypes.resetWarningCache = function() {
  if (true) {
    loggedTypeFailures = {};
  }
}

module.exports = checkPropTypes;


/***/ }),

/***/ "../node_modules/prop-types/factoryWithTypeCheckers.js":
/*!*************************************************************!*\
  !*** ../node_modules/prop-types/factoryWithTypeCheckers.js ***!
  \*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
/**
 * Copyright (c) 2013-present, Facebook, Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */



var ReactIs = __webpack_require__(/*! react-is */ "../node_modules/react-is/index.js");
var assign = __webpack_require__(/*! object-assign */ "../node_modules/object-assign/index.js");

var ReactPropTypesSecret = __webpack_require__(/*! ./lib/ReactPropTypesSecret */ "../node_modules/prop-types/lib/ReactPropTypesSecret.js");
var checkPropTypes = __webpack_require__(/*! ./checkPropTypes */ "../node_modules/prop-types/checkPropTypes.js");

var has = Function.call.bind(Object.prototype.hasOwnProperty);
var printWarning = function() {};

if (true) {
  printWarning = function(text) {
    var message = 'Warning: ' + text;
    if (typeof console !== 'undefined') {
      console.error(message);
    }
    try {
      // --- Welcome to debugging React ---
      // This error was thrown as a convenience so that you can use this stack
      // to find the callsite that caused this warning to fire.
      throw new Error(message);
    } catch (x) {}
  };
}

function emptyFunctionThatReturnsNull() {
  return null;
}

module.exports = function(isValidElement, throwOnDirectAccess) {
  /* global Symbol */
  var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;
  var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.

  /**
   * Returns the iterator method function contained on the iterable object.
   *
   * Be sure to invoke the function with the iterable as context:
   *
   *     var iteratorFn = getIteratorFn(myIterable);
   *     if (iteratorFn) {
   *       var iterator = iteratorFn.call(myIterable);
   *       ...
   *     }
   *
   * @param {?object} maybeIterable
   * @return {?function}
   */
  function getIteratorFn(maybeIterable) {
    var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);
    if (typeof iteratorFn === 'function') {
      return iteratorFn;
    }
  }

  /**
   * Collection of methods that allow declaration and validation of props that are
   * supplied to React components. Example usage:
   *
   *   var Props = require('ReactPropTypes');
   *   var MyArticle = React.createClass({
   *     propTypes: {
   *       // An optional string prop named "description".
   *       description: Props.string,
   *
   *       // A required enum prop named "category".
   *       category: Props.oneOf(['News','Photos']).isRequired,
   *
   *       // A prop named "dialog" that requires an instance of Dialog.
   *       dialog: Props.instanceOf(Dialog).isRequired
   *     },
   *     render: function() { ... }
   *   });
   *
   * A more formal specification of how these methods are used:
   *
   *   type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)
   *   decl := ReactPropTypes.{type}(.isRequired)?
   *
   * Each and every declaration produces a function with the same signature. This
   * allows the creation of custom validation functions. For example:
   *
   *  var MyLink = React.createClass({
   *    propTypes: {
   *      // An optional string or URI prop named "href".
   *      href: function(props, propName, componentName) {
   *        var propValue = props[propName];
   *        if (propValue != null && typeof propValue !== 'string' &&
   *            !(propValue instanceof URI)) {
   *          return new Error(
   *            'Expected a string or an URI for ' + propName + ' in ' +
   *            componentName
   *          );
   *        }
   *      }
   *    },
   *    render: function() {...}
   *  });
   *
   * @internal
   */

  var ANONYMOUS = '<<anonymous>>';

  // Important!
  // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.
  var ReactPropTypes = {
    array: createPrimitiveTypeChecker('array'),
    bool: createPrimitiveTypeChecker('boolean'),
    func: createPrimitiveTypeChecker('function'),
    number: createPrimitiveTypeChecker('number'),
    object: createPrimitiveTypeChecker('object'),
    string: createPrimitiveTypeChecker('string'),
    symbol: createPrimitiveTypeChecker('symbol'),

    any: createAnyTypeChecker(),
    arrayOf: createArrayOfTypeChecker,
    element: createElementTypeChecker(),
    elementType: createElementTypeTypeChecker(),
    instanceOf: createInstanceTypeChecker,
    node: createNodeChecker(),
    objectOf: createObjectOfTypeChecker,
    oneOf: createEnumTypeChecker,
    oneOfType: createUnionTypeChecker,
    shape: createShapeTypeChecker,
    exact: createStrictShapeTypeChecker,
  };

  /**
   * inlined Object.is polyfill to avoid requiring consumers ship their own
   * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is
   */
  /*eslint-disable no-self-compare*/
  function is(x, y) {
    // SameValue algorithm
    if (x === y) {
      // Steps 1-5, 7-10
      // Steps 6.b-6.e: +0 != -0
      return x !== 0 || 1 / x === 1 / y;
    } else {
      // Step 6.a: NaN == NaN
      return x !== x && y !== y;
    }
  }
  /*eslint-enable no-self-compare*/

  /**
   * We use an Error-like object for backward compatibility as people may call
   * PropTypes directly and inspect their output. However, we don't use real
   * Errors anymore. We don't inspect their stack anyway, and creating them
   * is prohibitively expensive if they are created too often, such as what
   * happens in oneOfType() for any type before the one that matched.
   */
  function PropTypeError(message) {
    this.message = message;
    this.stack = '';
  }
  // Make `instanceof Error` still work for returned errors.
  PropTypeError.prototype = Error.prototype;

  function createChainableTypeChecker(validate) {
    if (true) {
      var manualPropTypeCallCache = {};
      var manualPropTypeWarningCount = 0;
    }
    function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {
      componentName = componentName || ANONYMOUS;
      propFullName = propFullName || propName;

      if (secret !== ReactPropTypesSecret) {
        if (throwOnDirectAccess) {
          // New behavior only for users of `prop-types` package
          var err = new Error(
            'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +
            'Use `PropTypes.checkPropTypes()` to call them. ' +
            'Read more at http://fb.me/use-check-prop-types'
          );
          err.name = 'Invariant Violation';
          throw err;
        } else if ( true && typeof console !== 'undefined') {
          // Old behavior for people using React.PropTypes
          var cacheKey = componentName + ':' + propName;
          if (
            !manualPropTypeCallCache[cacheKey] &&
            // Avoid spamming the console because they are often not actionable except for lib authors
            manualPropTypeWarningCount < 3
          ) {
            printWarning(
              'You are manually calling a React.PropTypes validation ' +
              'function for the `' + propFullName + '` prop on `' + componentName  + '`. This is deprecated ' +
              'and will throw in the standalone `prop-types` package. ' +
              'You may be seeing this warning due to a third-party PropTypes ' +
              'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.'
            );
            manualPropTypeCallCache[cacheKey] = true;
            manualPropTypeWarningCount++;
          }
        }
      }
      if (props[propName] == null) {
        if (isRequired) {
          if (props[propName] === null) {
            return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));
          }
          return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));
        }
        return null;
      } else {
        return validate(props, propName, componentName, location, propFullName);
      }
    }

    var chainedCheckType = checkType.bind(null, false);
    chainedCheckType.isRequired = checkType.bind(null, true);

    return chainedCheckType;
  }

  function createPrimitiveTypeChecker(expectedType) {
    function validate(props, propName, componentName, location, propFullName, secret) {
      var propValue = props[propName];
      var propType = getPropType(propValue);
      if (propType !== expectedType) {
        // `propValue` being instance of, say, date/regexp, pass the 'object'
        // check, but we can offer a more precise error message here rather than
        // 'of type `object`'.
        var preciseType = getPreciseType(propValue);

        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'));
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createAnyTypeChecker() {
    return createChainableTypeChecker(emptyFunctionThatReturnsNull);
  }

  function createArrayOfTypeChecker(typeChecker) {
    function validate(props, propName, componentName, location, propFullName) {
      if (typeof typeChecker !== 'function') {
        return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');
      }
      var propValue = props[propName];
      if (!Array.isArray(propValue)) {
        var propType = getPropType(propValue);
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));
      }
      for (var i = 0; i < propValue.length; i++) {
        var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);
        if (error instanceof Error) {
          return error;
        }
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createElementTypeChecker() {
    function validate(props, propName, componentName, location, propFullName) {
      var propValue = props[propName];
      if (!isValidElement(propValue)) {
        var propType = getPropType(propValue);
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createElementTypeTypeChecker() {
    function validate(props, propName, componentName, location, propFullName) {
      var propValue = props[propName];
      if (!ReactIs.isValidElementType(propValue)) {
        var propType = getPropType(propValue);
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement type.'));
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createInstanceTypeChecker(expectedClass) {
    function validate(props, propName, componentName, location, propFullName) {
      if (!(props[propName] instanceof expectedClass)) {
        var expectedClassName = expectedClass.name || ANONYMOUS;
        var actualClassName = getClassName(props[propName]);
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createEnumTypeChecker(expectedValues) {
    if (!Array.isArray(expectedValues)) {
      if (true) {
        if (arguments.length > 1) {
          printWarning(
            'Invalid arguments supplied to oneOf, expected an array, got ' + arguments.length + ' arguments. ' +
            'A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).'
          );
        } else {
          printWarning('Invalid argument supplied to oneOf, expected an array.');
        }
      }
      return emptyFunctionThatReturnsNull;
    }

    function validate(props, propName, componentName, location, propFullName) {
      var propValue = props[propName];
      for (var i = 0; i < expectedValues.length; i++) {
        if (is(propValue, expectedValues[i])) {
          return null;
        }
      }

      var valuesString = JSON.stringify(expectedValues, function replacer(key, value) {
        var type = getPreciseType(value);
        if (type === 'symbol') {
          return String(value);
        }
        return value;
      });
      return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + String(propValue) + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));
    }
    return createChainableTypeChecker(validate);
  }

  function createObjectOfTypeChecker(typeChecker) {
    function validate(props, propName, componentName, location, propFullName) {
      if (typeof typeChecker !== 'function') {
        return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');
      }
      var propValue = props[propName];
      var propType = getPropType(propValue);
      if (propType !== 'object') {
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));
      }
      for (var key in propValue) {
        if (has(propValue, key)) {
          var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
          if (error instanceof Error) {
            return error;
          }
        }
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createUnionTypeChecker(arrayOfTypeCheckers) {
    if (!Array.isArray(arrayOfTypeCheckers)) {
       true ? printWarning('Invalid argument supplied to oneOfType, expected an instance of array.') : 0;
      return emptyFunctionThatReturnsNull;
    }

    for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
      var checker = arrayOfTypeCheckers[i];
      if (typeof checker !== 'function') {
        printWarning(
          'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +
          'received ' + getPostfixForTypeWarning(checker) + ' at index ' + i + '.'
        );
        return emptyFunctionThatReturnsNull;
      }
    }

    function validate(props, propName, componentName, location, propFullName) {
      for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
        var checker = arrayOfTypeCheckers[i];
        if (checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret) == null) {
          return null;
        }
      }

      return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`.'));
    }
    return createChainableTypeChecker(validate);
  }

  function createNodeChecker() {
    function validate(props, propName, componentName, location, propFullName) {
      if (!isNode(props[propName])) {
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createShapeTypeChecker(shapeTypes) {
    function validate(props, propName, componentName, location, propFullName) {
      var propValue = props[propName];
      var propType = getPropType(propValue);
      if (propType !== 'object') {
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));
      }
      for (var key in shapeTypes) {
        var checker = shapeTypes[key];
        if (!checker) {
          continue;
        }
        var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
        if (error) {
          return error;
        }
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createStrictShapeTypeChecker(shapeTypes) {
    function validate(props, propName, componentName, location, propFullName) {
      var propValue = props[propName];
      var propType = getPropType(propValue);
      if (propType !== 'object') {
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));
      }
      // We need to check all keys in case some are required but missing from
      // props.
      var allKeys = assign({}, props[propName], shapeTypes);
      for (var key in allKeys) {
        var checker = shapeTypes[key];
        if (!checker) {
          return new PropTypeError(
            'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' +
            '\nBad object: ' + JSON.stringify(props[propName], null, '  ') +
            '\nValid keys: ' +  JSON.stringify(Object.keys(shapeTypes), null, '  ')
          );
        }
        var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
        if (error) {
          return error;
        }
      }
      return null;
    }

    return createChainableTypeChecker(validate);
  }

  function isNode(propValue) {
    switch (typeof propValue) {
      case 'number':
      case 'string':
      case 'undefined':
        return true;
      case 'boolean':
        return !propValue;
      case 'object':
        if (Array.isArray(propValue)) {
          return propValue.every(isNode);
        }
        if (propValue === null || isValidElement(propValue)) {
          return true;
        }

        var iteratorFn = getIteratorFn(propValue);
        if (iteratorFn) {
          var iterator = iteratorFn.call(propValue);
          var step;
          if (iteratorFn !== propValue.entries) {
            while (!(step = iterator.next()).done) {
              if (!isNode(step.value)) {
                return false;
              }
            }
          } else {
            // Iterator will provide entry [k,v] tuples rather than values.
            while (!(step = iterator.next()).done) {
              var entry = step.value;
              if (entry) {
                if (!isNode(entry[1])) {
                  return false;
                }
              }
            }
          }
        } else {
          return false;
        }

        return true;
      default:
        return false;
    }
  }

  function isSymbol(propType, propValue) {
    // Native Symbol.
    if (propType === 'symbol') {
      return true;
    }

    // falsy value can't be a Symbol
    if (!propValue) {
      return false;
    }

    // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'
    if (propValue['@@toStringTag'] === 'Symbol') {
      return true;
    }

    // Fallback for non-spec compliant Symbols which are polyfilled.
    if (typeof Symbol === 'function' && propValue instanceof Symbol) {
      return true;
    }

    return false;
  }

  // Equivalent of `typeof` but with special handling for array and regexp.
  function getPropType(propValue) {
    var propType = typeof propValue;
    if (Array.isArray(propValue)) {
      return 'array';
    }
    if (propValue instanceof RegExp) {
      // Old webkits (at least until Android 4.0) return 'function' rather than
      // 'object' for typeof a RegExp. We'll normalize this here so that /bla/
      // passes PropTypes.object.
      return 'object';
    }
    if (isSymbol(propType, propValue)) {
      return 'symbol';
    }
    return propType;
  }

  // This handles more types than `getPropType`. Only used for error messages.
  // See `createPrimitiveTypeChecker`.
  function getPreciseType(propValue) {
    if (typeof propValue === 'undefined' || propValue === null) {
      return '' + propValue;
    }
    var propType = getPropType(propValue);
    if (propType === 'object') {
      if (propValue instanceof Date) {
        return 'date';
      } else if (propValue instanceof RegExp) {
        return 'regexp';
      }
    }
    return propType;
  }

  // Returns a string that is postfixed to a warning about an invalid type.
  // For example, "undefined" or "of type array"
  function getPostfixForTypeWarning(value) {
    var type = getPreciseType(value);
    switch (type) {
      case 'array':
      case 'object':
        return 'an ' + type;
      case 'boolean':
      case 'date':
      case 'regexp':
        return 'a ' + type;
      default:
        return type;
    }
  }

  // Returns class name of the object, if any.
  function getClassName(propValue) {
    if (!propValue.constructor || !propValue.constructor.name) {
      return ANONYMOUS;
    }
    return propValue.constructor.name;
  }

  ReactPropTypes.checkPropTypes = checkPropTypes;
  ReactPropTypes.resetWarningCache = checkPropTypes.resetWarningCache;
  ReactPropTypes.PropTypes = ReactPropTypes;

  return ReactPropTypes;
};


/***/ }),

/***/ "../node_modules/prop-types/index.js":
/*!*******************************************!*\
  !*** ../node_modules/prop-types/index.js ***!
  \*******************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

/**
 * Copyright (c) 2013-present, Facebook, Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

if (true) {
  var ReactIs = __webpack_require__(/*! react-is */ "../node_modules/react-is/index.js");

  // By explicitly using `prop-types` you are opting into new development behavior.
  // http://fb.me/prop-types-in-prod
  var throwOnDirectAccess = true;
  module.exports = __webpack_require__(/*! ./factoryWithTypeCheckers */ "../node_modules/prop-types/factoryWithTypeCheckers.js")(ReactIs.isElement, throwOnDirectAccess);
} else {}


/***/ }),

/***/ "../node_modules/prop-types/lib/ReactPropTypesSecret.js":
/*!**************************************************************!*\
  !*** ../node_modules/prop-types/lib/ReactPropTypesSecret.js ***!
  \**************************************************************/
/***/ ((module) => {

"use strict";
/**
 * Copyright (c) 2013-present, Facebook, Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */



var ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';

module.exports = ReactPropTypesSecret;


/***/ }),

/***/ "../node_modules/reach-router-hash-history/index.js":
/*!**********************************************************!*\
  !*** ../node_modules/reach-router-hash-history/index.js ***!
  \**********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "createHashSource": () => (/* binding */ createHashSource)
/* harmony export */ });
// take some code from
// https://github.com/ReactTraining/history/blob/master/modules/createHashHistory.js

function getHashPath() {
  // We can't use window.location.hash here because it's not
  // consistent across browsers - Firefox will pre-decode it!
  const href = window.location.href;
  const hashIndex = href.indexOf('#');
  return hashIndex === -1 ? '' : href.substring(hashIndex + 1);
}

function pushHashPath(path) {
  window.location.hash = '#' + path;
}

function replaceHashPath(path) {
  const hashIndex = window.location.href.indexOf('#');
  window.location.replace(
    window.location.href.slice(0, hashIndex >= 0 ? hashIndex : 0) + '#' + path
  );
}

let createHashSource = (initialPathname = '/') => {
  let index = 0;
  // let stack = [{ pathname: initialPathname, search: '' }];
  // let states = [];

  return {
    get location() {
      return { pathname: getHashPath(), search: '' };
      // return stack[index];
    },
    addEventListener(name, fn) {
      if (name === 'popstate') {
        window.addEventListener('hashchange', fn);
      }
    },
    removeEventListener(name, fn) {
      if (name === 'popstate') {
        window.addEventListener('hashchange', fn);
      }
    },
    history: {
      get entries() {
        return [{ pathname: getHashPath(), search: '' }];
        // return stack;
      },
      get index() {
        return index;
      },
      get state() {
        return undefined;
        // return states[index];
      },
      pushState(state, _, uri) {
        pushHashPath(uri);
        // let [pathname, search = ''] = uri.split('?');
        // index++;
        // stack.push({ pathname, search });
        // states.push(state);
      },
      replaceState(state, _, uri) {
        replaceHashPath(uri);
        // let [pathname, search = ''] = uri.split('?');
        // stack[index] = { pathname, search };
        // states[index] = state;
      }
    }
  };
};




/***/ }),

/***/ "../node_modules/react-is/cjs/react-is.development.js":
/*!************************************************************!*\
  !*** ../node_modules/react-is/cjs/react-is.development.js ***!
  \************************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";
/** @license React v16.13.1
 * react-is.development.js
 *
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */





if (true) {
  (function() {
'use strict';

// The Symbol used to tag the ReactElement-like types. If there is no native Symbol
// nor polyfill, then a plain number is used for performance.
var hasSymbol = typeof Symbol === 'function' && Symbol.for;
var REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;
var REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;
var REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;
var REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;
var REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;
var REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;
var REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary
// (unstable) APIs that have been removed. Can we remove the symbols?

var REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;
var REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;
var REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;
var REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;
var REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;
var REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;
var REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;
var REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;
var REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;
var REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;
var REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;

function isValidElementType(type) {
  return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
  type === REACT_FRAGMENT_TYPE || type === REACT_CONCURRENT_MODE_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || typeof type === 'object' && type !== null && (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || type.$$typeof === REACT_FUNDAMENTAL_TYPE || type.$$typeof === REACT_RESPONDER_TYPE || type.$$typeof === REACT_SCOPE_TYPE || type.$$typeof === REACT_BLOCK_TYPE);
}

function typeOf(object) {
  if (typeof object === 'object' && object !== null) {
    var $$typeof = object.$$typeof;

    switch ($$typeof) {
      case REACT_ELEMENT_TYPE:
        var type = object.type;

        switch (type) {
          case REACT_ASYNC_MODE_TYPE:
          case REACT_CONCURRENT_MODE_TYPE:
          case REACT_FRAGMENT_TYPE:
          case REACT_PROFILER_TYPE:
          case REACT_STRICT_MODE_TYPE:
          case REACT_SUSPENSE_TYPE:
            return type;

          default:
            var $$typeofType = type && type.$$typeof;

            switch ($$typeofType) {
              case REACT_CONTEXT_TYPE:
              case REACT_FORWARD_REF_TYPE:
              case REACT_LAZY_TYPE:
              case REACT_MEMO_TYPE:
              case REACT_PROVIDER_TYPE:
                return $$typeofType;

              default:
                return $$typeof;
            }

        }

      case REACT_PORTAL_TYPE:
        return $$typeof;
    }
  }

  return undefined;
} // AsyncMode is deprecated along with isAsyncMode

var AsyncMode = REACT_ASYNC_MODE_TYPE;
var ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;
var ContextConsumer = REACT_CONTEXT_TYPE;
var ContextProvider = REACT_PROVIDER_TYPE;
var Element = REACT_ELEMENT_TYPE;
var ForwardRef = REACT_FORWARD_REF_TYPE;
var Fragment = REACT_FRAGMENT_TYPE;
var Lazy = REACT_LAZY_TYPE;
var Memo = REACT_MEMO_TYPE;
var Portal = REACT_PORTAL_TYPE;
var Profiler = REACT_PROFILER_TYPE;
var StrictMode = REACT_STRICT_MODE_TYPE;
var Suspense = REACT_SUSPENSE_TYPE;
var hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated

function isAsyncMode(object) {
  {
    if (!hasWarnedAboutDeprecatedIsAsyncMode) {
      hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint

      console['warn']('The ReactIs.isAsyncMode() alias has been deprecated, ' + 'and will be removed in React 17+. Update your code to use ' + 'ReactIs.isConcurrentMode() instead. It has the exact same API.');
    }
  }

  return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;
}
function isConcurrentMode(object) {
  return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;
}
function isContextConsumer(object) {
  return typeOf(object) === REACT_CONTEXT_TYPE;
}
function isContextProvider(object) {
  return typeOf(object) === REACT_PROVIDER_TYPE;
}
function isElement(object) {
  return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;
}
function isForwardRef(object) {
  return typeOf(object) === REACT_FORWARD_REF_TYPE;
}
function isFragment(object) {
  return typeOf(object) === REACT_FRAGMENT_TYPE;
}
function isLazy(object) {
  return typeOf(object) === REACT_LAZY_TYPE;
}
function isMemo(object) {
  return typeOf(object) === REACT_MEMO_TYPE;
}
function isPortal(object) {
  return typeOf(object) === REACT_PORTAL_TYPE;
}
function isProfiler(object) {
  return typeOf(object) === REACT_PROFILER_TYPE;
}
function isStrictMode(object) {
  return typeOf(object) === REACT_STRICT_MODE_TYPE;
}
function isSuspense(object) {
  return typeOf(object) === REACT_SUSPENSE_TYPE;
}

exports.AsyncMode = AsyncMode;
exports.ConcurrentMode = ConcurrentMode;
exports.ContextConsumer = ContextConsumer;
exports.ContextProvider = ContextProvider;
exports.Element = Element;
exports.ForwardRef = ForwardRef;
exports.Fragment = Fragment;
exports.Lazy = Lazy;
exports.Memo = Memo;
exports.Portal = Portal;
exports.Profiler = Profiler;
exports.StrictMode = StrictMode;
exports.Suspense = Suspense;
exports.isAsyncMode = isAsyncMode;
exports.isConcurrentMode = isConcurrentMode;
exports.isContextConsumer = isContextConsumer;
exports.isContextProvider = isContextProvider;
exports.isElement = isElement;
exports.isForwardRef = isForwardRef;
exports.isFragment = isFragment;
exports.isLazy = isLazy;
exports.isMemo = isMemo;
exports.isPortal = isPortal;
exports.isProfiler = isProfiler;
exports.isStrictMode = isStrictMode;
exports.isSuspense = isSuspense;
exports.isValidElementType = isValidElementType;
exports.typeOf = typeOf;
  })();
}


/***/ }),

/***/ "../node_modules/react-is/index.js":
/*!*****************************************!*\
  !*** ../node_modules/react-is/index.js ***!
  \*****************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


if (false) {} else {
  module.exports = __webpack_require__(/*! ./cjs/react-is.development.js */ "../node_modules/react-is/cjs/react-is.development.js");
}


/***/ }),

/***/ "../node_modules/react-lifecycles-compat/react-lifecycles-compat.es.js":
/*!*****************************************************************************!*\
  !*** ../node_modules/react-lifecycles-compat/react-lifecycles-compat.es.js ***!
  \*****************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "polyfill": () => (/* binding */ polyfill)
/* harmony export */ });
/**
 * Copyright (c) 2013-present, Facebook, Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

function componentWillMount() {
  // Call this.constructor.gDSFP to support sub-classes.
  var state = this.constructor.getDerivedStateFromProps(this.props, this.state);
  if (state !== null && state !== undefined) {
    this.setState(state);
  }
}

function componentWillReceiveProps(nextProps) {
  // Call this.constructor.gDSFP to support sub-classes.
  // Use the setState() updater to ensure state isn't stale in certain edge cases.
  function updater(prevState) {
    var state = this.constructor.getDerivedStateFromProps(nextProps, prevState);
    return state !== null && state !== undefined ? state : null;
  }
  // Binding "this" is important for shallow renderer support.
  this.setState(updater.bind(this));
}

function componentWillUpdate(nextProps, nextState) {
  try {
    var prevProps = this.props;
    var prevState = this.state;
    this.props = nextProps;
    this.state = nextState;
    this.__reactInternalSnapshotFlag = true;
    this.__reactInternalSnapshot = this.getSnapshotBeforeUpdate(
      prevProps,
      prevState
    );
  } finally {
    this.props = prevProps;
    this.state = prevState;
  }
}

// React may warn about cWM/cWRP/cWU methods being deprecated.
// Add a flag to suppress these warnings for this special case.
componentWillMount.__suppressDeprecationWarning = true;
componentWillReceiveProps.__suppressDeprecationWarning = true;
componentWillUpdate.__suppressDeprecationWarning = true;

function polyfill(Component) {
  var prototype = Component.prototype;

  if (!prototype || !prototype.isReactComponent) {
    throw new Error('Can only polyfill class components');
  }

  if (
    typeof Component.getDerivedStateFromProps !== 'function' &&
    typeof prototype.getSnapshotBeforeUpdate !== 'function'
  ) {
    return Component;
  }

  // If new component APIs are defined, "unsafe" lifecycles won't be called.
  // Error if any of these lifecycles are present,
  // Because they would work differently between older and newer (16.3+) versions of React.
  var foundWillMountName = null;
  var foundWillReceivePropsName = null;
  var foundWillUpdateName = null;
  if (typeof prototype.componentWillMount === 'function') {
    foundWillMountName = 'componentWillMount';
  } else if (typeof prototype.UNSAFE_componentWillMount === 'function') {
    foundWillMountName = 'UNSAFE_componentWillMount';
  }
  if (typeof prototype.componentWillReceiveProps === 'function') {
    foundWillReceivePropsName = 'componentWillReceiveProps';
  } else if (typeof prototype.UNSAFE_componentWillReceiveProps === 'function') {
    foundWillReceivePropsName = 'UNSAFE_componentWillReceiveProps';
  }
  if (typeof prototype.componentWillUpdate === 'function') {
    foundWillUpdateName = 'componentWillUpdate';
  } else if (typeof prototype.UNSAFE_componentWillUpdate === 'function') {
    foundWillUpdateName = 'UNSAFE_componentWillUpdate';
  }
  if (
    foundWillMountName !== null ||
    foundWillReceivePropsName !== null ||
    foundWillUpdateName !== null
  ) {
    var componentName = Component.displayName || Component.name;
    var newApiName =
      typeof Component.getDerivedStateFromProps === 'function'
        ? 'getDerivedStateFromProps()'
        : 'getSnapshotBeforeUpdate()';

    throw Error(
      'Unsafe legacy lifecycles will not be called for components using new component APIs.\n\n' +
        componentName +
        ' uses ' +
        newApiName +
        ' but also contains the following legacy lifecycles:' +
        (foundWillMountName !== null ? '\n  ' + foundWillMountName : '') +
        (foundWillReceivePropsName !== null
          ? '\n  ' + foundWillReceivePropsName
          : '') +
        (foundWillUpdateName !== null ? '\n  ' + foundWillUpdateName : '') +
        '\n\nThe above lifecycles should be removed. Learn more about this warning here:\n' +
        'https://fb.me/react-async-component-lifecycle-hooks'
    );
  }

  // React <= 16.2 does not support static getDerivedStateFromProps.
  // As a workaround, use cWM and cWRP to invoke the new static lifecycle.
  // Newer versions of React will ignore these lifecycles if gDSFP exists.
  if (typeof Component.getDerivedStateFromProps === 'function') {
    prototype.componentWillMount = componentWillMount;
    prototype.componentWillReceiveProps = componentWillReceiveProps;
  }

  // React <= 16.2 does not support getSnapshotBeforeUpdate.
  // As a workaround, use cWU to invoke the new lifecycle.
  // Newer versions of React will ignore that lifecycle if gSBU exists.
  if (typeof prototype.getSnapshotBeforeUpdate === 'function') {
    if (typeof prototype.componentDidUpdate !== 'function') {
      throw new Error(
        'Cannot polyfill getSnapshotBeforeUpdate() for components that do not define componentDidUpdate() on the prototype'
      );
    }

    prototype.componentWillUpdate = componentWillUpdate;

    var componentDidUpdate = prototype.componentDidUpdate;

    prototype.componentDidUpdate = function componentDidUpdatePolyfill(
      prevProps,
      prevState,
      maybeSnapshot
    ) {
      // 16.3+ will not execute our will-update method;
      // It will pass a snapshot value to did-update though.
      // Older versions will require our polyfilled will-update value.
      // We need to handle both cases, but can't just check for the presence of "maybeSnapshot",
      // Because for <= 15.x versions this might be a "prevContext" object.
      // We also can't just check "__reactInternalSnapshot",
      // Because get-snapshot might return a falsy value.
      // So check for the explicit __reactInternalSnapshotFlag flag to determine behavior.
      var snapshot = this.__reactInternalSnapshotFlag
        ? this.__reactInternalSnapshot
        : maybeSnapshot;

      componentDidUpdate.call(this, prevProps, prevState, snapshot);
    };
  }

  return Component;
}




/***/ }),

/***/ "../node_modules/warning/warning.js":
/*!******************************************!*\
  !*** ../node_modules/warning/warning.js ***!
  \******************************************/
/***/ ((module) => {

"use strict";
/**
 * Copyright (c) 2014-present, Facebook, Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */



/**
 * Similar to invariant but only logs a warning if the condition is not met.
 * This can be used to log issues in development environments in critical
 * paths. Removing the logging code for production environments will keep the
 * same logic and follow the same code paths.
 */

var __DEV__ = "development" !== 'production';

var warning = function() {};

if (__DEV__) {
  var printWarning = function printWarning(format, args) {
    var len = arguments.length;
    args = new Array(len > 1 ? len - 1 : 0);
    for (var key = 1; key < len; key++) {
      args[key - 1] = arguments[key];
    }
    var argIndex = 0;
    var message = 'Warning: ' +
      format.replace(/%s/g, function() {
        return args[argIndex++];
      });
    if (typeof console !== 'undefined') {
      console.error(message);
    }
    try {
      // --- Welcome to debugging React ---
      // This error was thrown as a convenience so that you can use this stack
      // to find the callsite that caused this warning to fire.
      throw new Error(message);
    } catch (x) {}
  }

  warning = function(condition, format, args) {
    var len = arguments.length;
    args = new Array(len > 2 ? len - 2 : 0);
    for (var key = 2; key < len; key++) {
      args[key - 2] = arguments[key];
    }
    if (format === undefined) {
      throw new Error(
          '`warning(condition, format, ...args)` requires a warning ' +
          'message argument'
      );
    }
    if (!condition) {
      printWarning.apply(null, [format].concat(args));
    }
  };
}

module.exports = warning;


/***/ }),

/***/ "react":
/*!************************!*\
  !*** external "React" ***!
  \************************/
/***/ ((module) => {

"use strict";
module.exports = React;

/***/ }),

/***/ "react-dom":
/*!***************************!*\
  !*** external "ReactDOM" ***!
  \***************************/
/***/ ((module) => {

"use strict";
module.exports = ReactDOM;

/***/ }),

/***/ "@elementor/app-ui":
/*!*********************************************!*\
  !*** external "elementorAppPackages.appUi" ***!
  \*********************************************/
/***/ ((module) => {

"use strict";
module.exports = elementorAppPackages.appUi;

/***/ }),

/***/ "@elementor/router":
/*!**********************************************!*\
  !*** external "elementorAppPackages.router" ***!
  \**********************************************/
/***/ ((module) => {

"use strict";
module.exports = elementorAppPackages.router;

/***/ }),

/***/ "@elementor/site-editor":
/*!**************************************************!*\
  !*** external "elementorAppPackages.siteEditor" ***!
  \**************************************************/
/***/ ((module) => {

"use strict";
module.exports = elementorAppPackages.siteEditor;

/***/ }),

/***/ "@wordpress/i18n":
/*!**************************!*\
  !*** external "wp.i18n" ***!
  \**************************/
/***/ ((module) => {

"use strict";
module.exports = wp.i18n;

/***/ })

/******/ 	});
/************************************************************************/
/******/ 	// The module cache
/******/ 	var __webpack_module_cache__ = {};
/******/ 	
/******/ 	// The require function
/******/ 	function __webpack_require__(moduleId) {
/******/ 		// Check if module is in cache
/******/ 		var cachedModule = __webpack_module_cache__[moduleId];
/******/ 		if (cachedModule !== undefined) {
/******/ 			return cachedModule.exports;
/******/ 		}
/******/ 		// Create a new module (and put it into the cache)
/******/ 		var module = __webpack_module_cache__[moduleId] = {
/******/ 			// no module.id needed
/******/ 			// no module.loaded needed
/******/ 			exports: {}
/******/ 		};
/******/ 	
/******/ 		// Execute the module function
/******/ 		__webpack_modules__[moduleId](module, module.exports, __webpack_require__);
/******/ 	
/******/ 		// Return the exports of the module
/******/ 		return module.exports;
/******/ 	}
/******/ 	
/******/ 	// expose the modules object (__webpack_modules__)
/******/ 	__webpack_require__.m = __webpack_modules__;
/******/ 	
/************************************************************************/
/******/ 	/* webpack/runtime/compat get default export */
/******/ 	(() => {
/******/ 		// getDefaultExport function for compatibility with non-harmony modules
/******/ 		__webpack_require__.n = (module) => {
/******/ 			var getter = module && module.__esModule ?
/******/ 				() => (module['default']) :
/******/ 				() => (module);
/******/ 			__webpack_require__.d(getter, { a: getter });
/******/ 			return getter;
/******/ 		};
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/create fake namespace object */
/******/ 	(() => {
/******/ 		var getProto = Object.getPrototypeOf ? (obj) => (Object.getPrototypeOf(obj)) : (obj) => (obj.__proto__);
/******/ 		var leafPrototypes;
/******/ 		// create a fake namespace object
/******/ 		// mode & 1: value is a module id, require it
/******/ 		// mode & 2: merge all properties of value into the ns
/******/ 		// mode & 4: return value when already ns object
/******/ 		// mode & 16: return value when it's Promise-like
/******/ 		// mode & 8|1: behave like require
/******/ 		__webpack_require__.t = function(value, mode) {
/******/ 			if(mode & 1) value = this(value);
/******/ 			if(mode & 8) return value;
/******/ 			if(typeof value === 'object' && value) {
/******/ 				if((mode & 4) && value.__esModule) return value;
/******/ 				if((mode & 16) && typeof value.then === 'function') return value;
/******/ 			}
/******/ 			var ns = Object.create(null);
/******/ 			__webpack_require__.r(ns);
/******/ 			var def = {};
/******/ 			leafPrototypes = leafPrototypes || [null, getProto({}), getProto([]), getProto(getProto)];
/******/ 			for(var current = mode & 2 && value; typeof current == 'object' && !~leafPrototypes.indexOf(current); current = getProto(current)) {
/******/ 				Object.getOwnPropertyNames(current).forEach((key) => (def[key] = () => (value[key])));
/******/ 			}
/******/ 			def['default'] = () => (value);
/******/ 			__webpack_require__.d(ns, def);
/******/ 			return ns;
/******/ 		};
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/define property getters */
/******/ 	(() => {
/******/ 		// define getter functions for harmony exports
/******/ 		__webpack_require__.d = (exports, definition) => {
/******/ 			for(var key in definition) {
/******/ 				if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
/******/ 					Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
/******/ 				}
/******/ 			}
/******/ 		};
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/ensure chunk */
/******/ 	(() => {
/******/ 		__webpack_require__.f = {};
/******/ 		// This file contains only the entry chunk.
/******/ 		// The chunk loading function for additional chunks
/******/ 		__webpack_require__.e = (chunkId) => {
/******/ 			return Promise.all(Object.keys(__webpack_require__.f).reduce((promises, key) => {
/******/ 				__webpack_require__.f[key](chunkId, promises);
/******/ 				return promises;
/******/ 			}, []));
/******/ 		};
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/get javascript chunk filename */
/******/ 	(() => {
/******/ 		// This function allow to reference async chunks
/******/ 		__webpack_require__.u = (chunkId) => {
/******/ 			// return url for filenames not based on template
/******/ 			if (chunkId === "vendors-node_modules_babel_runtime-corejs2_core-js_object_values_js-node_modules_babel_runtim-2f5074") return "06ad222c8807f0a951da.bundle.js";
/******/ 			if (chunkId === "kit-library") return "" + chunkId + ".d3688acfaab28676a99c.bundle.js";
/******/ 			// return url for filenames based on template
/******/ 			return undefined;
/******/ 		};
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/global */
/******/ 	(() => {
/******/ 		__webpack_require__.g = (function() {
/******/ 			if (typeof globalThis === 'object') return globalThis;
/******/ 			try {
/******/ 				return this || new Function('return this')();
/******/ 			} catch (e) {
/******/ 				if (typeof window === 'object') return window;
/******/ 			}
/******/ 		})();
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/hasOwnProperty shorthand */
/******/ 	(() => {
/******/ 		__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/load script */
/******/ 	(() => {
/******/ 		var inProgress = {};
/******/ 		var dataWebpackPrefix = "elementor:";
/******/ 		// loadScript function to load a script via script tag
/******/ 		__webpack_require__.l = (url, done, key, chunkId) => {
/******/ 			if(inProgress[url]) { inProgress[url].push(done); return; }
/******/ 			var script, needAttach;
/******/ 			if(key !== undefined) {
/******/ 				var scripts = document.getElementsByTagName("script");
/******/ 				for(var i = 0; i < scripts.length; i++) {
/******/ 					var s = scripts[i];
/******/ 					if(s.getAttribute("src") == url || s.getAttribute("data-webpack") == dataWebpackPrefix + key) { script = s; break; }
/******/ 				}
/******/ 			}
/******/ 			if(!script) {
/******/ 				needAttach = true;
/******/ 				script = document.createElement('script');
/******/ 		
/******/ 				script.charset = 'utf-8';
/******/ 				script.timeout = 120;
/******/ 				if (__webpack_require__.nc) {
/******/ 					script.setAttribute("nonce", __webpack_require__.nc);
/******/ 				}
/******/ 				script.setAttribute("data-webpack", dataWebpackPrefix + key);
/******/ 				script.src = url;
/******/ 			}
/******/ 			inProgress[url] = [done];
/******/ 			var onScriptComplete = (prev, event) => {
/******/ 				// avoid mem leaks in IE.
/******/ 				script.onerror = script.onload = null;
/******/ 				clearTimeout(timeout);
/******/ 				var doneFns = inProgress[url];
/******/ 				delete inProgress[url];
/******/ 				script.parentNode && script.parentNode.removeChild(script);
/******/ 				doneFns && doneFns.forEach((fn) => (fn(event)));
/******/ 				if(prev) return prev(event);
/******/ 			}
/******/ 			;
/******/ 			var timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);
/******/ 			script.onerror = onScriptComplete.bind(null, script.onerror);
/******/ 			script.onload = onScriptComplete.bind(null, script.onload);
/******/ 			needAttach && document.head.appendChild(script);
/******/ 		};
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/make namespace object */
/******/ 	(() => {
/******/ 		// define __esModule on exports
/******/ 		__webpack_require__.r = (exports) => {
/******/ 			if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ 				Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ 			}
/******/ 			Object.defineProperty(exports, '__esModule', { value: true });
/******/ 		};
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/publicPath */
/******/ 	(() => {
/******/ 		var scriptUrl;
/******/ 		if (__webpack_require__.g.importScripts) scriptUrl = __webpack_require__.g.location + "";
/******/ 		var document = __webpack_require__.g.document;
/******/ 		if (!scriptUrl && document) {
/******/ 			if (document.currentScript)
/******/ 				scriptUrl = document.currentScript.src
/******/ 			if (!scriptUrl) {
/******/ 				var scripts = document.getElementsByTagName("script");
/******/ 				if(scripts.length) scriptUrl = scripts[scripts.length - 1].src
/******/ 			}
/******/ 		}
/******/ 		// When supporting browsers where an automatic publicPath is not supported you must specify an output.publicPath manually via configuration
/******/ 		// or pass an empty string ("") and set the __webpack_public_path__ variable from your code to use your own logic.
/******/ 		if (!scriptUrl) throw new Error("Automatic publicPath is not supported in this browser");
/******/ 		scriptUrl = scriptUrl.replace(/#.*$/, "").replace(/\?.*$/, "").replace(/\/[^\/]+$/, "/");
/******/ 		__webpack_require__.p = scriptUrl;
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/jsonp chunk loading */
/******/ 	(() => {
/******/ 		// no baseURI
/******/ 		
/******/ 		// object to store loaded and loading chunks
/******/ 		// undefined = chunk not loaded, null = chunk preloaded/prefetched
/******/ 		// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded
/******/ 		var installedChunks = {
/******/ 			"app": 0
/******/ 		};
/******/ 		
/******/ 		__webpack_require__.f.j = (chunkId, promises) => {
/******/ 				// JSONP chunk loading for javascript
/******/ 				var installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;
/******/ 				if(installedChunkData !== 0) { // 0 means "already installed".
/******/ 		
/******/ 					// a Promise means "currently loading".
/******/ 					if(installedChunkData) {
/******/ 						promises.push(installedChunkData[2]);
/******/ 					} else {
/******/ 						if(true) { // all chunks have JS
/******/ 							// setup Promise in chunk cache
/******/ 							var promise = new Promise((resolve, reject) => (installedChunkData = installedChunks[chunkId] = [resolve, reject]));
/******/ 							promises.push(installedChunkData[2] = promise);
/******/ 		
/******/ 							// start chunk loading
/******/ 							var url = __webpack_require__.p + __webpack_require__.u(chunkId);
/******/ 							// create error before stack unwound to get useful stacktrace later
/******/ 							var error = new Error();
/******/ 							var loadingEnded = (event) => {
/******/ 								if(__webpack_require__.o(installedChunks, chunkId)) {
/******/ 									installedChunkData = installedChunks[chunkId];
/******/ 									if(installedChunkData !== 0) installedChunks[chunkId] = undefined;
/******/ 									if(installedChunkData) {
/******/ 										var errorType = event && (event.type === 'load' ? 'missing' : event.type);
/******/ 										var realSrc = event && event.target && event.target.src;
/******/ 										error.message = 'Loading chunk ' + chunkId + ' failed.\n(' + errorType + ': ' + realSrc + ')';
/******/ 										error.name = 'ChunkLoadError';
/******/ 										error.type = errorType;
/******/ 										error.request = realSrc;
/******/ 										installedChunkData[1](error);
/******/ 									}
/******/ 								}
/******/ 							};
/******/ 							__webpack_require__.l(url, loadingEnded, "chunk-" + chunkId, chunkId);
/******/ 						} else installedChunks[chunkId] = 0;
/******/ 					}
/******/ 				}
/******/ 		};
/******/ 		
/******/ 		// no prefetching
/******/ 		
/******/ 		// no preloaded
/******/ 		
/******/ 		// no HMR
/******/ 		
/******/ 		// no HMR manifest
/******/ 		
/******/ 		// no on chunks loaded
/******/ 		
/******/ 		// install a JSONP callback for chunk loading
/******/ 		var webpackJsonpCallback = (parentChunkLoadingFunction, data) => {
/******/ 			var [chunkIds, moreModules, runtime] = data;
/******/ 			// add "moreModules" to the modules object,
/******/ 			// then flag all "chunkIds" as loaded and fire callback
/******/ 			var moduleId, chunkId, i = 0;
/******/ 			for(moduleId in moreModules) {
/******/ 				if(__webpack_require__.o(moreModules, moduleId)) {
/******/ 					__webpack_require__.m[moduleId] = moreModules[moduleId];
/******/ 				}
/******/ 			}
/******/ 			if(runtime) var result = runtime(__webpack_require__);
/******/ 			if(parentChunkLoadingFunction) parentChunkLoadingFunction(data);
/******/ 			for(;i < chunkIds.length; i++) {
/******/ 				chunkId = chunkIds[i];
/******/ 				if(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {
/******/ 					installedChunks[chunkId][0]();
/******/ 				}
/******/ 				installedChunks[chunkIds[i]] = 0;
/******/ 			}
/******/ 		
/******/ 		}
/******/ 		
/******/ 		var chunkLoadingGlobal = self["webpackChunkelementor"] = self["webpackChunkelementor"] || [];
/******/ 		chunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));
/******/ 		chunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));
/******/ 	})();
/******/ 	
/************************************************************************/
var __webpack_exports__ = {};
// This entry need to be wrapped in an IIFE because it need to be in strict mode.
(() => {
"use strict";
/*!**************************************!*\
  !*** ../core/app/assets/js/index.js ***!
  \**************************************/
/* provided dependency */ var ReactDOM = __webpack_require__(/*! react-dom */ "react-dom");


var _interopRequireDefault = __webpack_require__(/*! @babel/runtime-corejs2/helpers/interopRequireDefault */ "../node_modules/@babel/runtime-corejs2/helpers/interopRequireDefault.js");

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _app = _interopRequireDefault(__webpack_require__(/*! ./app */ "../core/app/assets/js/app.js"));

var _module = _interopRequireDefault(__webpack_require__(/*! ../../modules/import-export/assets/js/module */ "../core/app/modules/import-export/assets/js/module.js"));

var _module2 = _interopRequireDefault(__webpack_require__(/*! ../../modules/kit-library/assets/js/module */ "../core/app/modules/kit-library/assets/js/module.js"));

var _siteEditor = __webpack_require__(/*! @elementor/site-editor */ "@elementor/site-editor");

new _module.default();
new _module2.default();
new _siteEditor.Module();
var AppWrapper = elementorCommon.config.isDebug ? _react.default.StrictMode : _react.default.Fragment;
ReactDOM.render( /*#__PURE__*/_react.default.createElement(AppWrapper, null, /*#__PURE__*/_react.default.createElement(_app.default, null)), document.getElementById('e-app'));
})();

/******/ })()
;
//# sourceMappingURL=app.js.mapmodules/admin-top-bar/module.php000064400000005063151327220410012645 0ustar00<?php
namespace Elementor\Modules\AdminTopBar;

use Elementor\Core\Base\App as BaseApp;
use Elementor\Core\Experiments\Manager;
use Elementor\Utils;
use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

class Module extends BaseApp {

	/**
	 * @return bool
	 */
	public static function is_active() {
		return is_admin();
	}

	public static function get_experimental_data() {
		return [
			'name' => 'admin-top-bar',
			'title' => esc_html__( 'Admin Top Bar', 'elementor' ),
			'description' => esc_html__( 'Adds a top bar to elementors pages in admin area.', 'elementor' ),
			'release_status' => Manager::RELEASE_STATUS_BETA,
			'new_site' => [
				'default_active' => true,
			],
		];
	}

	/**
	 * @return string
	 */
	public function get_name() {
		return 'admin-top-bar';
	}

	private function render_admin_top_bar() {
		?>
		<div id="e-admin-top-bar-root">
		</div>
		<?php
	}

	/**
	 * Enqueue admin scripts
	 */
	private function enqueue_scripts() {
		wp_enqueue_style( 'elementor-admin-top-bar-fonts', 'https://fonts.googleapis.com/css2?family=Roboto&display=swap', [], ELEMENTOR_VERSION );

		wp_enqueue_style( 'elementor-admin-top-bar', $this->get_css_assets_url( 'admin-top-bar', null, 'default', true ), [], ELEMENTOR_VERSION );

		wp_enqueue_script( 'elementor-admin-top-bar', $this->get_js_assets_url( 'admin-top-bar' ), [
			'elementor-common',
			'react',
			'react-dom',
		], ELEMENTOR_VERSION, true );

		$min_suffix = Utils::is_script_debug() ? '' : '.min';

		wp_enqueue_script( 'tipsy', ELEMENTOR_ASSETS_URL . 'lib/tipsy/tipsy' . $min_suffix . '.js', [
			'jquery',
		], '1.0.0', true );

		$this->print_config();
	}

	/**
	 * Module constructor.
	 */
	public function __construct() {
		parent::__construct();

		add_action( 'in_admin_header', function () {
			$this->render_admin_top_bar();
		} );

		add_action( 'admin_enqueue_scripts', function () {
			$this->enqueue_scripts();
		} );

		add_action( 'elementor/init', function () {
			$settings = [];
			$settings['is_administrator'] = current_user_can( 'manage_options' );

			/** @var \Elementor\Core\Common\Modules\Connect\Apps\Library $library */
			$library = Plugin::$instance->common->get_component( 'connect' )->get_app( 'library' );
			if ( $library ) {
				$settings = array_merge( $settings, [
					'is_user_connected' => $library->is_connected(),
					'connect_url' => $library->get_admin_url( 'authorize' ),
				] );
			}

			$this->set_settings( $settings );

			do_action( 'elementor/admin-top-bar/init', $this );
		}, 12 /* After component 'connect' register the apps */ );
	}
}
modules/library/user-favorites.php000064400000005307151327220410013351 0ustar00<?php
namespace Elementor\Modules\Library;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

class User_Favorites {
	const USER_META_KEY = 'elementor_library_favorites';

	/**
	 * @var int
	 */
	private $user_id;

	/**
	 * @var array|null
	 */
	private $cache;

	/**
	 * User_Favorites constructor.
	 *
	 * @param $user_id
	 */
	public function __construct( $user_id ) {
		$this->user_id = $user_id;
	}

	/**
	 * @param null  $vendor
	 * @param null  $resource
	 * @param false $ignore_cache
	 *
	 * @return array
	 */
	public function get( $vendor = null, $resource = null, $ignore_cache = false ) {
		if ( $ignore_cache || empty( $this->cache ) ) {
			$this->cache = get_user_meta( $this->user_id, self::USER_META_KEY, true );
		}

		if ( ! $this->cache || ! is_array( $this->cache ) ) {
			return [];
		}

		if ( $vendor && $resource ) {
			$key = $this->get_key( $vendor, $resource );

			return isset( $this->cache[ $key ] ) ? $this->cache[ $key ] : [];
		}

		return $this->cache;
	}

	/**
	 * @param $vendor
	 * @param $resource
	 * @param $id
	 *
	 * @return bool
	 */
	public function exists( $vendor, $resource, $id ) {
		return in_array( $id, $this->get( $vendor, $resource ), true );
	}

	/**
	 * @param       $vendor
	 * @param       $resource
	 * @param array $value
	 *
	 * @return $this
	 * @throws \Exception
	 */
	public function save( $vendor, $resource, $value = [] ) {
		$all_favorites = $this->get();

		$all_favorites[ $this->get_key( $vendor, $resource ) ] = $value;

		$result = update_user_meta( $this->user_id, self::USER_META_KEY, $all_favorites );

		if ( false === $result ) {
			throw new \Exception( __( 'Failed to save user favorites', 'elementor' ) );
		}

		$this->cache = $all_favorites;

		return $this;
	}

	/**
	 * @param $vendor
	 * @param $resource
	 * @param $id
	 *
	 * @return $this
	 * @throws \Exception
	 */
	public function add( $vendor, $resource, $id ) {
		$favorites = $this->get( $vendor, $resource );

		if ( in_array( $id, $favorites, true ) ) {
			return $this;
		}

		$favorites[] = $id;

		$this->save( $vendor, $resource, $favorites );

		return $this;
	}

	/**
	 * @param $vendor
	 * @param $resource
	 * @param $id
	 *
	 * @return $this
	 * @throws \Exception
	 */
	public function remove( $vendor, $resource, $id ) {
		$favorites = $this->get( $vendor, $resource );

		if ( ! in_array( $id, $favorites, true ) ) {
			return $this;
		}

		$favorites = array_filter( $favorites, function ( $item ) use ( $id ) {
			return $item !== $id;
		} );

		$this->save( $vendor, $resource, $favorites );

		return $this;
	}

	/**
	 * @param $vendor
	 * @param $resource
	 *
	 * @return string
	 */
	private function get_key( $vendor, $resource ) {
		return "{$vendor}/{$resource}";
	}
}
modules/library/module.php000064400000002105151327220410011651 0ustar00<?php
namespace Elementor\Modules\Library;

use Elementor\Core\Base\Module as BaseModule;
use Elementor\Modules\Library\Documents;
use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor library module.
 *
 * Elementor library module handler class is responsible for registering and
 * managing Elementor library modules.
 *
 * @since 2.0.0
 */
class Module extends BaseModule {

	/**
	 * Get module name.
	 *
	 * Retrieve the library module name.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @return string Module name.
	 */
	public function get_name() {
		return 'library';
	}

	/**
	 * Library module constructor.
	 *
	 * Initializing Elementor library module.
	 *
	 * @since 2.0.0
	 * @access public
	 */
	public function __construct() {
		Plugin::$instance->documents
			->register_document_type( 'not-supported', Documents\Not_Supported::get_class_full_name() )
			->register_document_type( 'page', Documents\Page::get_class_full_name() )
			->register_document_type( 'section', Documents\Section::get_class_full_name() );
	}
}
modules/library/documents/section.php000064400000001605151327220410014035 0ustar00<?php
namespace Elementor\Modules\Library\Documents;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

/**
 * Elementor section library document.
 *
 * Elementor section library document handler class is responsible for
 * handling a document of a section type.
 *
 * @since 2.0.0
 */
class Section extends Library_Document {

	public static function get_properties() {
		$properties = parent::get_properties();

		$properties['support_kit'] = true;

		return $properties;
	}

	public static function get_type() {
		return 'section';
	}

	/**
	 * Get document title.
	 *
	 * Retrieve the document title.
	 *
	 * @since 2.0.0
	 * @access public
	 * @static
	 *
	 * @return string Document title.
	 */
	public static function get_title() {
		return esc_html__( 'Section', 'elementor' );
	}

	public static function get_plural_title() {
		return __( 'Sections', 'elementor' );
	}
}
modules/library/documents/page.php000064400000003262151327220410013306 0ustar00<?php
namespace Elementor\Modules\Library\Documents;

use Elementor\Core\DocumentTypes\Post;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

/**
 * Elementor page library document.
 *
 * Elementor page library document handler class is responsible for
 * handling a document of a page type.
 *
 * @since 2.0.0
 */
class Page extends Library_Document {

	/**
	 * Get document properties.
	 *
	 * Retrieve the document properties.
	 *
	 * @since 2.0.0
	 * @access public
	 * @static
	 *
	 * @return array Document properties.
	 */
	public static function get_properties() {
		$properties = parent::get_properties();

		$properties['support_wp_page_templates'] = true;
		$properties['support_kit'] = true;

		return $properties;
	}

	public static function get_type() {
		return 'page';
	}

	/**
	 * Get document title.
	 *
	 * Retrieve the document title.
	 *
	 * @since 2.0.0
	 * @access public
	 * @static
	 *
	 * @return string Document title.
	 */
	public static function get_title() {
		return esc_html__( 'Page', 'elementor' );
	}

	public static function get_plural_title() {
		return __( 'Pages', 'elementor' );
	}

	/**
	 * @since 2.1.3
	 * @access public
	 */
	public function get_css_wrapper_selector() {
		return 'body.elementor-page-' . $this->get_main_id();
	}

	/**
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		parent::register_controls();

		Post::register_hide_title_control( $this );

		Post::register_style_controls( $this );
	}

	protected function get_remote_library_config() {
		$config = parent::get_remote_library_config();

		$config['type'] = 'page';
		$config['default_route'] = 'templates/pages';

		return $config;
	}
}
modules/library/documents/library-document.php000064400000003020151327220410015642 0ustar00<?php
namespace Elementor\Modules\Library\Documents;

use Elementor\Core\Base\Document;
use Elementor\Modules\Library\Traits\Library;
use Elementor\TemplateLibrary\Source_Local;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

/**
 * Elementor library document.
 *
 * Elementor library document handler class is responsible for handling
 * a document of the library type.
 *
 * @since 2.0.0
 */
abstract class Library_Document extends Document {

	// Library Document Trait
	use Library;

	/**
	 * The taxonomy type slug for the library document.
	 */
	const TAXONOMY_TYPE_SLUG = 'elementor_library_type';

	/**
	 * Get document properties.
	 *
	 * Retrieve the document properties.
	 *
	 * @since 2.0.0
	 * @access public
	 * @static
	 *
	 * @return array Document properties.
	 */
	public static function get_properties() {
		$properties = parent::get_properties();

		$properties['admin_tab_group'] = 'library';
		$properties['show_in_library'] = true;
		$properties['register_type'] = true;

		return $properties;
	}

	/**
	 * Get initial config.
	 *
	 * Retrieve the current element initial configuration.
	 *
	 * Adds more configuration on top of the controls list and the tabs assigned
	 * to the control. This method also adds element name, type, icon and more.
	 *
	 * @since 2.9.0
	 * @access protected
	 *
	 * @return array The initial config.
	 */
	public function get_initial_config() {
		$config = parent::get_initial_config();

		$config['library'] = [
			'save_as_same_type' => true,
		];

		return $config;
	}
}
modules/library/documents/not-supported.php000064400000002707151327220410015220 0ustar00<?php
namespace Elementor\Modules\Library\Documents;

use Elementor\TemplateLibrary\Source_Local;
use Elementor\Utils;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

/**
 * Elementor section library document.
 *
 * Elementor section library document handler class is responsible for
 * handling a document of a section type.
 *
 */
class Not_Supported extends Library_Document {

	/**
	 * Get document properties.
	 *
	 * Retrieve the document properties.
	 *
	 * @access public
	 * @static
	 *
	 * @return array Document properties.
	 */
	public static function get_properties() {
		$properties = parent::get_properties();

		$properties['admin_tab_group'] = '';
		$properties['register_type'] = false;
		$properties['is_editable'] = false;
		$properties['show_in_library'] = false;

		$properties['cpt'] = [
			Source_Local::CPT,
		];

		return $properties;
	}

	public static function get_type() {
		return 'not-supported';
	}

	/**
	 * Get document title.
	 *
	 * Retrieve the document title.
	 *
	 * @access public
	 * @static
	 *
	 * @return string Document title.
	 */
	public static function get_title() {
		return esc_html__( 'Not Supported', 'elementor' );
	}

	public function save_template_type() {
		// Do nothing.
	}

	public function print_admin_column_type() {
		Utils::print_unescaped_internal_string( self::get_title() );
	}

	public function filter_admin_row_actions( $actions ) {
		unset( $actions['view'] );

		return $actions;
	}
}
modules/library/traits/library.php000064400000002021151327220410013333 0ustar00<?php
namespace Elementor\Modules\Library\Traits;

use Elementor\TemplateLibrary\Source_Local;

/**
 * Elementor Library Trait
 *
 * This trait is used by all Library Documents and Landing Pages.
 *
 * @since 3.1.0
 */
trait Library {
	/**
	 * Print Admin Column Type
	 *
	 * Runs on WordPress' 'manage_{custom post type}_posts_custom_column' hook to modify each row's content.
	 *
	 * @since 3.1.0
	 * @access public
	 */
	public function print_admin_column_type() {
		$admin_filter_url = admin_url( Source_Local::ADMIN_MENU_SLUG . '&elementor_library_type=' . $this->get_name() );
		//PHPCS - Not a user input
		printf( '<a href="%s">%s</a>', $admin_filter_url, $this->get_title() ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
	}

	/**
	 * Save document type.
	 *
	 * Set new/updated document type.
	 *
	 * @since 3.1.0
	 * @access public
	 */
	public function save_template_type() {
		parent::save_template_type();

		wp_set_object_terms( $this->post->ID, $this->get_name(), Source_Local::TAXONOMY_TYPE_SLUG );
	}
}
modules/system-info/templates/html.php000064400000004262151327220410014145 0ustar00<?php
use Elementor\Utils;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * @var array $reports
 */
foreach ( $reports as $report_name => $report ) : ?>
	<div class="elementor-system-info-section elementor-system-info-<?php echo esc_attr( $report_name ); ?>">
		<table class="widefat">
			<thead>
			<tr>
				<th><?php Utils::print_unescaped_internal_string( $report['label'] ); ?></th>
				<th></th>
				<th></th>
			</tr>
			</thead>
			<tbody>
			<?php
			foreach ( $report['report'] as $field_name => $field ) :
				if ( in_array( $report_name, [ 'plugins', 'network_plugins', 'mu_plugins' ], true ) ) {
					foreach ( $field['value'] as $plugin_info ) :
						?>
						<tr>
							<td><?php
							if ( $plugin_info['PluginURI'] ) :
								$plugin_name = "<a href='{$plugin_info['PluginURI']}'>{$plugin_info['Name']}</a>";
							else :
								$plugin_name = $plugin_info['Name'];
							endif;

							if ( $plugin_info['Version'] ) :
								$plugin_name .= ' - ' . $plugin_info['Version'];
							endif;

							Utils::print_unescaped_internal_string( $plugin_name );
							?></td>
							<td><?php
							if ( $plugin_info['Author'] ) :
								if ( $plugin_info['AuthorURI'] ) :
									$author = "<a href='{$plugin_info['AuthorURI']}'>{$plugin_info['Author']}</a>";
								else :
									$author = $plugin_info['Author'];
								endif;

								Utils::print_unescaped_internal_string( "By $author" );
							endif;
							?></td>
							<td></td>
						</tr>
						<?php
					endforeach;
				} else {
					$warning_class = ! empty( $field['warning'] ) ? ' class="elementor-warning"' : '';
					$log_label = ! empty( $field['label'] ) ? $field['label'] . ':' : '';
					?>
					<tr<?php Utils::print_unescaped_internal_string( $warning_class ); ?>>
						<td><?php Utils::print_unescaped_internal_string( $log_label ); ?></td>
						<td><?php Utils::print_unescaped_internal_string( $field['value'] ); ?></td>
						<td><?php
						if ( ! empty( $field['recommendation'] ) ) :
							Utils::print_unescaped_internal_string( $field['recommendation'] );
						endif;
						?></td>
					</tr>
					<?php
				}
			endforeach;
			?>
			</tbody>
		</table>
	</div>
	<?php
endforeach;
modules/system-info/templates/raw.php000064400000003343151327220410013771 0ustar00<?php
if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * @var array $reports
 * @var array $required_plugins_properties
 * @var int   $tabs_count
 */

$tabs_count++;

$required_plugins_properties = array_flip( $required_plugins_properties );

unset( $required_plugins_properties['Name'] );

foreach ( $reports as $report_name => $report ) :
	$indent = str_repeat( "\t", $tabs_count - 1 );

	$is_plugins = in_array( $report_name, [
		'plugins',
		'network_plugins',
		'mu_plugins',
	] );

	if ( ! $is_plugins ) :
		echo PHP_EOL . $indent . '== ' . $report['label'] . ' =='; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
	endif;

	echo PHP_EOL;

	foreach ( $report['report'] as $field_name => $field ) :
		$sub_indent = str_repeat( "\t", $tabs_count );

		if ( $is_plugins ) {
			echo "== {$field['label']} ==" . PHP_EOL; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped

			foreach ( $field['value'] as $plugin_info ) :
				$plugin_properties = array_intersect_key( $plugin_info, $required_plugins_properties );

				echo esc_html( $sub_indent . $plugin_info['Name'] );

				foreach ( $plugin_properties as $property_name => $property ) :
					echo PHP_EOL . "{$sub_indent}\t{$property_name}: {$property}"; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
				endforeach;

				echo PHP_EOL . PHP_EOL;
			endforeach;
		} else {
			$label = $field['label'];

			if ( ! empty( $label ) ) {
				$label .= ': ';
			}
			echo "{$sub_indent}{$label}{$field['value']}" . PHP_EOL; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
		}
	endforeach;

	if ( ! empty( $report['sub'] ) ) :
		$this->print_report( $report['sub'], $template, true );
	endif;
endforeach;

$tabs_count--;
modules/system-info/module.php000064400000021173151327220410012470 0ustar00<?php
namespace Elementor\Modules\System_Info;

use Elementor\Core\Base\Module as BaseModule;
use Elementor\Modules\System_Info\Reporters\Base;
use Elementor\Modules\System_Info\Helpers\Model_Helper;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor system info module.
 *
 * Elementor system info module handler class is responsible for registering and
 * managing Elementor system info reports.
 *
 * @since 2.9.0
 */
class Module extends BaseModule {
	/**
	 * Get module name.
	 *
	 * Retrieve the system info module name.
	 *
	 * @since 2.9.0
	 * @access public
	 *
	 * @return string Module name.
	 */
	public function get_name() {
		return 'system-info';
	}

	/**
	 * Required user capabilities.
	 *
	 * Holds the user capabilities required to manage Elementor menus.
	 *
	 * @since 2.9.0
	 * @access private
	 *
	 * @var string
	 */
	private $capability = 'manage_options';

	/**
	 * Elementor system info reports.
	 *
	 * Holds an array of available reports in Elementor system info page.
	 *
	 * @since 2.9.0
	 * @access private
	 *
	 * @var array
	 */
	private static $reports = [
		'server' => [],
		'wordpress' => [],
		'theme' => [],
		'user' => [],
		'plugins' => [],
		'network_plugins' => [],
		'mu_plugins' => [],
	];

	/**
	 * Main system info page constructor.
	 *
	 * Initializing Elementor system info page.
	 *
	 * @since 2.9.0
	 * @access public
	 */
	public function __construct() {
		$this->add_actions();
	}

	/**
	 * Get default settings.
	 *
	 * Retrieve the default settings. Used to reset the report settings on
	 * initialization.
	 *
	 * @since 2.9.0
	 * @access protected
	 *
	 * @return array Default settings.
	 */
	protected function get_init_settings() {
		$settings = [];

		$reporter_properties = Base::get_properties_keys();

		array_push( $reporter_properties, 'category', 'name', 'class_name' );

		$settings['reporter_properties'] = $reporter_properties;

		$settings['reportFilePrefix'] = '';

		return $settings;
	}

	/**
	 * Add actions.
	 *
	 * Register filters and actions for the main system info page.
	 *
	 * @since 2.9.0
	 * @access private
	 */
	private function add_actions() {
		add_action( 'admin_menu', [ $this, 'register_menu' ], 500 );
		add_action( 'wp_ajax_elementor_system_info_download_file', [ $this, 'download_file' ] );
	}

	/**
	 * Register admin menu.
	 *
	 * Add new Elementor system info admin menu.
	 *
	 * Fired by `admin_menu` action.
	 *
	 * @since 2.9.0
	 * @access public
	 */
	public function register_menu() {
		$system_info_text = esc_html__( 'System Info', 'elementor' );

		add_submenu_page(
			'elementor',
			$system_info_text,
			$system_info_text,
			$this->capability,
			'elementor-system-info',
			[ $this, 'display_page' ]
		);
	}

	/**
	 * Display page.
	 *
	 * Output the content for the main system info page.
	 *
	 * @since 2.9.0
	 * @access public
	 */
	public function display_page() {
		$reports_info = self::get_allowed_reports();

		$reports = $this->load_reports( $reports_info, 'html' );

		$raw_reports = $this->load_reports( $reports_info, 'raw' );

		?>
		<div id="elementor-system-info">
			<h3 class="wp-heading-inline"><?php echo esc_html__( 'System Info', 'elementor' ); ?></h3>
			<div><?php $this->print_report( $reports, 'html' ); ?></div>
			<h3><?php echo esc_html__( 'Copy & Paste Info', 'elementor' ); ?></h3>
			<div id="elementor-system-info-raw">
				<label id="elementor-system-info-raw-code-label" for="elementor-system-info-raw-code"><?php echo esc_html__( 'You can copy the below info as simple text with Ctrl+C / Ctrl+V:', 'elementor' ); ?></label>
				<textarea id="elementor-system-info-raw-code" readonly>
					<?php
						unset( $raw_reports['wordpress']['report']['admin_email'] );

						$this->print_report( $raw_reports, 'raw' );
					?>
				</textarea>
				<script>
					var textarea = document.getElementById( 'elementor-system-info-raw-code' );
					var selectRange = function() {
						textarea.setSelectionRange( 0, textarea.value.length );
					};
					textarea.onfocus = textarea.onblur = textarea.onclick = selectRange;
					textarea.onfocus();
				</script>
			</div>
			<hr>
			<form action="<?php echo esc_url( admin_url( 'admin-ajax.php' ) ); ?>" method="post">
				<input type="hidden" name="action" value="elementor_system_info_download_file">
				<input type="submit" class="button button-primary" value="<?php echo esc_html__( 'Download System Info', 'elementor' ); ?>">
			</form>
		</div>
		<?php
	}

	/**
	 * Download file.
	 *
	 * Download the reports files.
	 *
	 * Fired by `wp_ajax_elementor_system_info_download_file` action.
	 *
	 * @since 2.9.0
	 * @access public
	 */
	public function download_file() {
		if ( ! current_user_can( $this->capability ) ) {
			wp_die( esc_html__( 'You don\'t have permissions to download this file', 'elementor' ) );
		}

		$reports_info = self::get_allowed_reports();
		$reports = $this->load_reports( $reports_info, 'raw' );

		$domain = parse_url( site_url(), PHP_URL_HOST );

		header( 'Content-Type: text/plain' );
		header( 'Content-Disposition:attachment; filename=system-info-' . $domain . '-' . gmdate( 'd-m-Y' ) . '.txt' );

		$this->print_report( $reports );

		die;
	}

	/**
	 * Get report class.
	 *
	 * Retrieve the class of the report for any given report type.
	 *
	 * @since 2.9.0
	 * @access public
	 *
	 * @param string $reporter_type The type of the report.
	 *
	 * @return string The class of the report.
	 */
	public function get_reporter_class( $reporter_type ) {
		return __NAMESPACE__ . '\Reporters\\' . ucfirst( $reporter_type );
	}

	/**
	 * Load reports.
	 *
	 * Retrieve the system info reports.
	 *
	 * @since 2.9.0
	 * @access public
	 *
	 * @param array $reports An array of system info reports.
	 * @param string $format - possible values: 'raw' or empty string, meaning 'html'
	 *
	 * @return array An array of system info reports.
	 */
	public function load_reports( $reports, $format = '' ) {
		$result = [];

		foreach ( $reports as $report_name => $report_info ) {
			$reporter_params = [
				'name' => $report_name,
				'format' => $format,
			];

			$reporter_params = array_merge( $reporter_params, $report_info );

			$reporter = $this->create_reporter( $reporter_params );

			if ( ! $reporter instanceof Base ) {
				continue;
			}

			$result[ $report_name ] = [
				'report' => $reporter->get_report( $format ),
				'label' => $reporter->get_title(),
			];

			if ( ! empty( $report_info['sub'] ) ) {
				$result[ $report_name ]['sub'] = $this->load_reports( $report_info['sub'] );
			}
		}

		return $result;
	}

	/**
	 * Create a report.
	 *
	 * Register a new report that will be displayed in Elementor system info page.
	 *
	 * @param array $properties Report properties.
	 *
	 * @return \WP_Error|false|Base Base instance if the report was created,
	 *                                       False or WP_Error otherwise.
	 *@since 2.9.0
	 * @access public
	 *
	 */
	public function create_reporter( array $properties ) {
		$properties = Model_Helper::prepare_properties( $this->get_settings( 'reporter_properties' ), $properties );

		$reporter_class = $properties['class_name'] ? $properties['class_name'] : $this->get_reporter_class( $properties['name'] );

		$reporter = new $reporter_class( $properties );

		if ( ! ( $reporter instanceof Base ) ) {
			return new \WP_Error( 'Each reporter must to be an instance or sub-instance of `Base` class.' );
		}

		if ( ! $reporter->is_enabled() ) {
			return false;
		}

		return $reporter;
	}

	/**
	 * Print report.
	 *
	 * Output the system info page reports using an output template.
	 *
	 * @since 2.9.0
	 * @access public
	 *
	 * @param array  $reports  An array of system info reports.
	 * @param string $template Output type from the templates folder. Available
	 *                         templates are `raw` and `html`. Default is `raw`.
	 */
	public function print_report( $reports, $template = 'raw' ) {
		static $tabs_count = 0;

		static $required_plugins_properties = [
			'Name',
			'Version',
			'URL',
			'Author',
		];

		$template_path = __DIR__ . '/templates/' . $template . '.php';

		require $template_path;
	}

	/**
	 * Get allowed reports.
	 *
	 * Retrieve the available reports in Elementor system info page.
	 *
	 * @since 2.9.0
	 * @access public
	 * @static
	 *
	 * @return array Available reports in Elementor system info page.
	 */
	public static function get_allowed_reports() {
		return self::$reports;
	}

	/**
	 * Add report.
	 *
	 * Register a new report to Elementor system info page.
	 *
	 * @since 2.9.0
	 * @access public
	 * @static
	 *
	 * @param string $report_name The name of the report.
	 * @param array  $report_info Report info.
	 */
	public static function add_report( $report_name, $report_info ) {
		self::$reports[ $report_name ] = $report_info;
	}
}
modules/system-info/helpers/model-helper.php000064400000003312151327220410015215 0ustar00<?php
namespace Elementor\Modules\System_Info\Helpers;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor model helper.
 *
 * Elementor model helper handler class is responsible for filtering properties.
 *
 * @since 1.0.0
 */
final class Model_Helper {

	/**
	 * Model helper constructor.
	 *
	 * Initializing the model helper class.
	 *
	 * @since 1.0.0
	 * @access private
	 */
	private function __construct() {}

	/**
	 * Filter possible properties.
	 *
	 * Retrieve possible properties filtered by property intersect key.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @param array $possible_properties All the possible properties.
	 * @param array $properties          Properties to filter.
	 *
	 * @return array Possible properties filtered by property intersect key.
	 */
	public static function filter_possible_properties( $possible_properties, $properties ) {
		$properties_keys = array_flip( $possible_properties );

		return array_intersect_key( $properties, $properties_keys );
	}

	/**
	 * Prepare properties.
	 *
	 * Combine the possible properties with the user properties and filter them.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @param array $possible_properties All the possible properties.
	 * @param array $user_properties     User properties.
	 *
	 * @return array Possible properties and user properties filtered by property intersect key.
	 */
	public static function prepare_properties( $possible_properties, $user_properties ) {
		$properties = array_fill_keys( $possible_properties, null );

		$properties = array_merge( $properties, $user_properties );

		return self::filter_possible_properties( $possible_properties, $properties );
	}
}
modules/system-info/reporters/server.php000064400000017276151327220410014547 0ustar00<?php
namespace Elementor\Modules\System_Info\Reporters;

use Elementor\Api;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor server environment report.
 *
 * Elementor system report handler class responsible for generating a report for
 * the server environment.
 *
 * @since 1.0.0
 */
class Server extends Base {

	/**
	 * Get server environment reporter title.
	 *
	 * Retrieve server environment reporter title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Reporter title.
	 */
	public function get_title() {
		return 'Server Environment';
	}

	/**
	 * Get server environment report fields.
	 *
	 * Retrieve the required fields for the server environment report.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array Required report fields with field ID and field label.
	 */
	public function get_fields() {
		return [
			'os' => 'Operating System',
			'software' => 'Software',
			'mysql_version' => 'MySQL version',
			'php_version' => 'PHP Version',
			'php_max_input_vars' => 'PHP Max Input Vars',
			'php_max_post_size' => 'PHP Max Post Size',
			'gd_installed' => 'GD Installed',
			'zip_installed' => 'ZIP Installed',
			'write_permissions' => 'Write Permissions',
			'elementor_library' => 'Elementor Library',
		];
	}

	/**
	 * Get server operating system.
	 *
	 * Retrieve the server operating system.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array {
	 *    Report data.
	 *
	 *    @type string $value Server operating system.
	 * }
	 */
	public function get_os() {
		return [
			'value' => PHP_OS,
		];
	}

	/**
	 * Get server software.
	 *
	 * Retrieve the server software.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array {
	 *    Report data.
	 *
	 *    @type string $value Server software.
	 * }
	 */
	public function get_software() {
		return [
			'value' => $_SERVER['SERVER_SOFTWARE'],
		];
	}

	/**
	 * Get PHP version.
	 *
	 * Retrieve the PHP version.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array {
	 *    Report data.
	 *
	 *    @type string $value          PHP version.
	 *    @type string $recommendation Minimum PHP version recommendation.
	 *    @type bool   $warning        Whether to display a warning.
	 * }
	 */
	public function get_php_version() {
		$result = [
			'value' => PHP_VERSION,
		];

		if ( version_compare( $result['value'], '5.4', '<' ) ) {
			$result['recommendation'] = _x( 'We recommend to use php 5.4 or higher', 'System Info', 'elementor' );

			$result['warning'] = true;
		}

		return $result;
	}

	/**
	 * Get PHP `max_input_vars`.
	 *
	 * Retrieve the value of `max_input_vars` from `php.ini` configuration file.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array {
	 *    Report data.
	 *
	 *    @type string $value PHP `max_input_vars`.
	 * }
	 */
	public function get_php_max_input_vars() {
		return [
			'value' => ini_get( 'max_input_vars' ),
		];
	}

	/**
	 * Get PHP `post_max_size`.
	 *
	 * Retrieve the value of `post_max_size` from `php.ini` configuration file.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array {
	 *    Report data.
	 *
	 *    @type string $value PHP `post_max_size`.
	 * }
	 */
	public function get_php_max_post_size() {
		return [
			'value' => ini_get( 'post_max_size' ),
		];
	}

	/**
	 * Get GD installed.
	 *
	 * Whether the GD extension is installed.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array {
	 *    Report data.
	 *
	 *    @type string $value   Yes if the GD extension is installed, No otherwise.
	 *    @type bool   $warning Whether to display a warning. True if the GD extension is installed, False otherwise.
	 * }
	 */
	public function get_gd_installed() {
		$gd_installed = extension_loaded( 'gd' );

		return [
			'value' => $gd_installed ? 'Yes' : 'No',
			'warning' => ! $gd_installed,
		];
	}

	/**
	 * Get ZIP installed.
	 *
	 * Whether the ZIP extension is installed.
	 *
	 * @since 2.1.0
	 * @access public
	 *
	 * @return array {
	 *    Report data.
	 *
	 *    @type string $value   Yes if the ZIP extension is installed, No otherwise.
	 *    @type bool   $warning Whether to display a warning. True if the ZIP extension is installed, False otherwise.
	 * }
	 */
	public function get_zip_installed() {
		$zip_installed = extension_loaded( 'zip' );

		return [
			'value' => $zip_installed ? 'Yes' : 'No',
			'warning' => ! $zip_installed,
		];
	}

	/**
	 * Get MySQL version.
	 *
	 * Retrieve the MySQL version.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array {
	 *    Report data.
	 *
	 *    @type string $value MySQL version.
	 * }
	 */
	public function get_mysql_version() {
		global $wpdb;

		$db_server_version = $wpdb->get_results( "SHOW VARIABLES WHERE `Variable_name` IN ( 'version_comment', 'innodb_version' )", OBJECT_K );

		return [
			'value' => $db_server_version['version_comment']->Value . ' v' . $db_server_version['innodb_version']->Value,
		];
	}

	/**
	 * Get write permissions.
	 *
	 * Check whether the required folders has writing permissions.
	 *
	 * @since 1.9.0
	 * @access public
	 *
	 * @return array {
	 *    Report data.
	 *
	 *    @type string $value   Writing permissions status.
	 *    @type bool   $warning Whether to display a warning. True if some required
	 *                          folders don't have writing permissions, False otherwise.
	 * }
	 */
	public function get_write_permissions() {
		$paths_to_check = [
			ABSPATH => 'WordPress root directory',
		];

		$write_problems = [];

		$wp_upload_dir = wp_upload_dir();

		if ( $wp_upload_dir['error'] ) {
			$write_problems[] = 'WordPress root uploads directory';
		}

		$elementor_uploads_path = $wp_upload_dir['basedir'] . '/elementor';

		if ( is_dir( $elementor_uploads_path ) ) {
			$paths_to_check[ $elementor_uploads_path ] = 'Elementor uploads directory';
		}

		$htaccess_file = ABSPATH . '/.htaccess';

		if ( file_exists( $htaccess_file ) ) {
			$paths_to_check[ $htaccess_file ] = '.htaccess file';
		}

		foreach ( $paths_to_check as $dir => $description ) {
			if ( ! is_writable( $dir ) ) {
				$write_problems[] = $description;
			}
		}

		if ( $write_problems ) {
			$value = 'There are some writing permissions issues with the following directories/files:' . "\n\t\t - ";

			$value .= implode( "\n\t\t - ", $write_problems );
		} else {
			$value = 'All right';
		}

		return [
			'value' => $value,
			'warning' => ! ! $write_problems,
		];
	}

	/**
	 * Check for elementor library connectivity.
	 *
	 * Check whether the remote elementor library is reachable.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array {
	 *    Report data.
	 *
	 *    @type string $value   The status of elementor library connectivity.
	 *    @type bool   $warning Whether to display a warning. True if elementor
	 * *                        library is not reachable, False otherwise.
	 * }
	 */
	public function get_elementor_library() {
		$response = wp_remote_get(
			Api::$api_info_url, [
				'timeout' => 5,
				'body' => [
					// Which API version is used
					'api_version' => ELEMENTOR_VERSION,
					// Which language to return
					'site_lang' => get_bloginfo( 'language' ),
				],
			]
		);

		if ( is_wp_error( $response ) ) {
			return [
				'value' => 'Not connected (' . $response->get_error_message() . ')',
				'warning' => true,
			];
		}

		$http_response_code = wp_remote_retrieve_response_code( $response );

		if ( 200 !== (int) $http_response_code ) {
			$error_msg = 'HTTP Error (' . $http_response_code . ')';

			return [
				'value' => 'Not connected (' . $error_msg . ')',
				'warning' => true,
			];
		}

		$info_data = json_decode( wp_remote_retrieve_body( $response ), true );

		if ( empty( $info_data ) ) {
			return [
				'value' => 'Not connected (Returns invalid JSON)',
				'warning' => true,
			];
		}

		return [
			'value' => 'Connected',
		];
	}
}
modules/system-info/reporters/plugins.php000064400000003731151327220410014711 0ustar00<?php
namespace Elementor\Modules\System_Info\Reporters;

use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor active plugins report.
 *
 * Elementor system report handler class responsible for generating a report for
 * active plugins.
 *
 * @since 1.0.0
 */
class Plugins extends Base {

	/**
	 * Active plugins.
	 *
	 * Holds the sites active plugins list.
	 *
	 * @since 1.0.0
	 * @access private
	 *
	 * @var array
	 */
	private $plugins;

	/**
	 * Get active plugins.
	 *
	 * Retrieve the active plugins from the list of all the installed plugins.
	 *
	 * @since 2.0.0
	 * @access private
	 *
	 * @return array Active plugins.
	 */
	private function get_plugins() {
		if ( ! $this->plugins ) {
			$this->plugins = Plugin::$instance->wp->get_active_plugins()->all();
		}

		return $this->plugins;
	}

	/**
	 * Get active plugins reporter title.
	 *
	 * Retrieve active plugins reporter title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Reporter title.
	 */
	public function get_title() {
		return 'Active Plugins';
	}

	/**
	 * Is enabled.
	 *
	 * Whether there are active plugins or not.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return bool True if the site has active plugins, False otherwise.
	 */
	public function is_enabled() {
		return ! ! $this->get_plugins();
	}

	/**
	 * Get active plugins report fields.
	 *
	 * Retrieve the required fields for the active plugins report.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array Required report fields with field ID and field label.
	 */
	public function get_fields() {
		return [
			'active_plugins' => 'Active Plugins',
		];
	}

	/**
	 * Get active plugins.
	 *
	 * Retrieve the sites active plugins.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array {
	 *    Report data.
	 *
	 *    @type string $value The active plugins list.
	 * }
	 */
	public function get_active_plugins() {
		return [
			'value' => $this->get_plugins(),
		];
	}
}
modules/system-info/reporters/mu-plugins.php000064400000003651151327220410015331 0ustar00<?php
namespace Elementor\Modules\System_Info\Reporters;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor must-use plugins report.
 *
 * Elementor system report handler class responsible for generating a report for
 * must-use plugins.
 *
 * @since 1.0.0
 */
class MU_Plugins extends Base {

	/**
	 * Must-Use plugins.
	 *
	 * Holds the sites must-use plugins list.
	 *
	 * @since 1.0.0
	 * @access private
	 *
	 * @var array
	 */
	private $plugins;

	/**
	 * Get must-use plugins.
	 *
	 * Retrieve the must-use plugins.
	 *
	 * @since 2.0.0
	 * @access private
	 *
	 * @return array Must-Use plugins.
	 */
	private function get_mu_plugins() {
		if ( ! $this->plugins ) {
			$this->plugins = get_mu_plugins();
		}

		return $this->plugins;
	}

	/**
	 * Is enabled.
	 *
	 * Whether there are must-use plugins or not.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return bool True if the site has must-use plugins, False otherwise.
	 */
	public function is_enabled() {
		return ! ! $this->get_mu_plugins();
	}

	/**
	 * Get must-use plugins reporter title.
	 *
	 * Retrieve must-use plugins reporter title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Reporter title.
	 */
	public function get_title() {
		return 'Must-Use Plugins';
	}

	/**
	 * Get must-use plugins report fields.
	 *
	 * Retrieve the required fields for the must-use plugins report.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array Required report fields with field ID and field label.
	 */
	public function get_fields() {
		return [
			'must_use_plugins' => 'Must-Use Plugins',
		];
	}

	/**
	 * Get must-use plugins.
	 *
	 * Retrieve the sites must-use plugins.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array {
	 *    Report data.
	 *
	 *    @type string $value The must-use plugins list.
	 * }
	 */
	public function get_must_use_plugins() {
		return [
			'value' => $this->get_mu_plugins(),
		];
	}
}
modules/system-info/reporters/user.php000064400000003654151327220410014212 0ustar00<?php
namespace Elementor\Modules\System_Info\Reporters;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor user report.
 *
 * Elementor system report handler class responsible for generating a report for
 * the user.
 *
 * @since 1.0.0
 */
class User extends Base {

	public function is_enabled() {
		return (bool) wp_get_current_user()->ID;
	}

	/**
	 * Get user reporter title.
	 *
	 * Retrieve user reporter title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Reporter title.
	 */
	public function get_title() {
		return 'User';
	}

	/**
	 * Get user report fields.
	 *
	 * Retrieve the required fields for the user report.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array Required report fields with field ID and field label.
	 */
	public function get_fields() {
		return [
			'role' => 'Role',
			'locale' => 'WP Profile lang',
			'agent' => 'User Agent',
		];
	}

	/**
	 * Get user role.
	 *
	 * Retrieve the user role.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array {
	 *    Report data.
	 *
	 *    @type string $value The user role.
	 * }
	 */
	public function get_role() {
		$role = null;

		$current_user = wp_get_current_user();
		if ( ! empty( $current_user->roles ) ) {
			$role = $current_user->roles[0];
		}

		return [
			'value' => $role,
		];
	}

	/**
	 * Get user profile language.
	 *
	 * Retrieve the user profile language.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array {
	 *    Report data.
	 *
	 *    @type string $value User profile language.
	 * }
	 */
	public function get_locale() {
		return [
			'value' => get_locale(),
		];
	}

	/**
	 * Get user agent.
	 *
	 * Retrieve user agent.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array {
	 *    Report data.
	 *
	 *    @type string $value HTTP user agent.
	 * }
	 */
	public function get_agent() {
		return [
			'value' => esc_html( $_SERVER['HTTP_USER_AGENT'] ),
		];
	}
}
modules/system-info/reporters/network-plugins.php000064400000004264151327220410016402 0ustar00<?php
namespace Elementor\Modules\System_Info\Reporters;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor network plugins report.
 *
 * Elementor system report handler class responsible for generating a report for
 * network plugins.
 *
 * @since 1.0.0
 */
class Network_Plugins extends Base {

	/**
	 * Network plugins.
	 *
	 * Holds the sites network plugins list.
	 *
	 * @since 1.0.0
	 * @access private
	 *
	 * @var array
	 */
	private $plugins;

	/**
	 * Get network plugins reporter title.
	 *
	 * Retrieve network plugins reporter title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Reporter title.
	 */
	public function get_title() {
		return 'Network Plugins';
	}

	/**
	 * Get active network plugins.
	 *
	 * Retrieve the active network plugins from the list of active site-wide plugins.
	 *
	 * @since 2.0.0
	 * @access private
	 *
	 * @return array Active network plugins.
	 */
	private function get_network_plugins() {
		if ( ! $this->plugins ) {
			$active_plugins = get_site_option( 'active_sitewide_plugins' );
			$this->plugins = array_intersect_key( get_plugins(), $active_plugins );
		}

		return $this->plugins;
	}

	/**
	 * Is enabled.
	 *
	 * Whether there are active network plugins or not.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return bool True if the site has active network plugins, False otherwise.
	 */
	public function is_enabled() {
		if ( ! is_multisite() ) {
			return false;
		};

		return ! ! $this->get_network_plugins();
	}

	/**
	 * Get network plugins report fields.
	 *
	 * Retrieve the required fields for the network plugins report.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array Required report fields with field ID and field label.
	 */
	public function get_fields() {
		return [
			'network_active_plugins' => 'Network Plugins',
		];
	}

	/**
	 * Get active network plugins.
	 *
	 * Retrieve the sites active network plugins.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array {
	 *    Report data.
	 *
	 *    @type string $value The active network plugins list.
	 * }
	 */
	public function get_network_active_plugins() {
		return [
			'value' => $this->get_network_plugins(),
		];
	}
}
modules/system-info/reporters/base.php000064400000007722151327220410014146 0ustar00<?php
namespace Elementor\Modules\System_Info\Reporters;

use Elementor\Modules\System_Info\Helpers\Model_Helper;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor base reporter.
 *
 * A base abstract class that provides the needed properties and methods to
 * manage and handle reporter in inheriting classes.
 *
 * @since 2.9.0
 * @abstract
 */
abstract class Base {

	/**
	 * Reporter properties.
	 *
	 * Holds the list of all the properties of the report.
	 *
	 * @access protected
	 * @static
	 *
	 * @var array
	 */
	protected $_properties;

	/**
	 * Get report title.
	 *
	 * Retrieve the title of the report.
	 *
	 * @since 2.9.0
	 * @access public
	 * @abstract
	 */
	abstract public function get_title();

	/**
	 * Get report fields.
	 *
	 * Retrieve the required fields for the report.
	 *
	 * @since 2.9.0
	 * @access public
	 * @abstract
	 */
	abstract public function get_fields();

	/**
	 * Is report enabled.
	 *
	 * Whether the report is enabled.
	 *
	 * @since 2.9.0
	 * @access public
	 *
	 * @return bool Whether the report is enabled.
	 */
	public function is_enabled() {
		return true;
	}

	/**
	 * Get report.
	 *
	 * Retrieve the report with all it's containing fields.
	 *
	 * @since 2.9.0
	 * @access public
	 *
	 * @return \WP_Error | array {
	 *    Report fields.
	 *
	 *    @type string $name Field name.
	 *    @type string $label Field label.
	 * }
	 */
	final public function get_report( $format = '' ) {
		$result = [];

		$format = ( empty( $format ) ) ? '' : $format . '_';

		foreach ( $this->get_fields() as $field_name => $field_label ) {
			$method = 'get_' . $format . $field_name;

			if ( ! method_exists( $this, $method ) ) {
				$method = 'get_' . $field_name;
				//fallback:
				if ( ! method_exists( $this, $method ) ) {
					return new \WP_Error( sprintf( "Getter method for the field '%s' wasn't found in %s.", $field_name, get_called_class() ) );
				}
			}

			$reporter_field = [
				'name' => $field_name,
				'label' => $field_label,
			];

			$reporter_field = array_merge( $reporter_field, $this->$method() );
			$result[ $field_name ] = $reporter_field;
		}

		return $result;
	}

	/**
	 * Get properties keys.
	 *
	 * Retrieve the keys of the properties.
	 *
	 * @since 2.9.0
	 * @access public
	 * @static
	 *
	 * @return array {
	 *    Property keys.
	 *
	 *    @type string $name   Property name.
	 *    @type string $fields Property fields.
	 * }
	 */
	public static function get_properties_keys() {
		return [
			'name',
			'format',
			'fields',
		];
	}

	/**
	 * Filter possible properties.
	 *
	 * Retrieve possible properties filtered by property keys.
	 *
	 * @since 2.9.0
	 * @access public
	 * @static
	 *
	 * @param array $properties Properties to filter.
	 *
	 * @return array Possible properties filtered by property keys.
	 */
	final public static function filter_possible_properties( $properties ) {
		return Model_Helper::filter_possible_properties( self::get_properties_keys(), $properties );
	}

	/**
	 * Set properties.
	 *
	 * Add/update properties to the report.
	 *
	 * @since 2.9.0
	 * @access public
	 *
	 * @param array $key   Property key.
	 * @param array $value Optional. Property value. Default is `null`.
	 */
	final public function set_properties( $key, $value = null ) {
		if ( is_array( $key ) ) {
			$key = self::filter_possible_properties( $key );

			foreach ( $key as $sub_key => $sub_value ) {
				$this->set_properties( $sub_key, $sub_value );
			}

			return;
		}

		if ( ! in_array( $key, self::get_properties_keys(), true ) ) {
			return;
		}

		$this->_properties[ $key ] = $value;
	}

	/**
	 * Reporter base constructor.
	 *
	 * Initializing the reporter base class.
	 *
	 * @since 2.9.0
	 * @access public
	 *
	 * @param array $properties Optional. Properties to filter. Default is `null`.
	 */
	public function __construct( $properties = null ) {
		$this->_properties = array_fill_keys( self::get_properties_keys(), null );

		if ( $properties ) {
			$this->set_properties( $properties, null );
		}
	}
}
modules/system-info/reporters/wordpress.php000064400000013710151327220410015256 0ustar00<?php
namespace Elementor\Modules\System_Info\Reporters;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor WordPress environment report.
 *
 * Elementor system report handler class responsible for generating a report for
 * the WordPress environment.
 *
 * @since 1.0.0
 */
class WordPress extends Base {

	/**
	 * Get WordPress environment reporter title.
	 *
	 * Retrieve WordPress environment reporter title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Reporter title.
	 */
	public function get_title() {
		return 'WordPress Environment';
	}

	/**
	 * Get WordPress environment report fields.
	 *
	 * Retrieve the required fields for the WordPress environment report.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array Required report fields with field ID and field label.
	 */
	public function get_fields() {
		return [
			'version' => 'Version',
			'site_url' => 'Site URL',
			'home_url' => 'Home URL',
			'is_multisite' => 'WP Multisite',
			'max_upload_size' => 'Max Upload Size',
			'memory_limit' => 'Memory limit',
			'permalink_structure' => 'Permalink Structure',
			'language' => 'Language',
			'timezone' => 'Timezone',
			'admin_email' => 'Admin Email',
			'debug_mode' => 'Debug Mode',
		];
	}

	/**
	 * Get WordPress memory limit.
	 *
	 * Retrieve the WordPress memory limit.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array {
	 *    Report data.
	 *
	 *    @type string $value          WordPress memory limit.
	 *    @type string $recommendation Recommendation memory limit.
	 *    @type bool   $warning        Whether to display a warning. True if the limit
	 *                                 is below the recommended 64M, False otherwise.
	 * }
	 */
	public function get_memory_limit() {
		$result = [
			'value' => ini_get( 'memory_limit' ),
		];

		$min_recommended_memory = '64M';

		$memory_limit_bytes = wp_convert_hr_to_bytes( $result['value'] );

		$min_recommended_bytes = wp_convert_hr_to_bytes( $min_recommended_memory );

		if ( $memory_limit_bytes < $min_recommended_bytes ) {
			$result['recommendation'] = sprintf(
				/* translators: 1: Minimum recommended_memory, 2: WordPress wp-config memory documentation. */
				_x( 'We recommend setting memory to at least %1$s. For more information, read about <a href="%2$s">how to Increase memory allocated to PHP</a>.', 'System Info', 'elementor' ),
				$min_recommended_memory,
				'https://go.elementor.com/wordpress-wp-config-memory/'
			);

			$result['warning'] = true;
		}

		return $result;
	}

	/**
	 * Get WordPress version.
	 *
	 * Retrieve the WordPress version.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array {
	 *    Report data.
	 *
	 *    @type string $value WordPress version.
	 * }
	 */
	public function get_version() {
		return [
			'value' => get_bloginfo( 'version' ),
		];
	}

	/**
	 * Is multisite.
	 *
	 * Whether multisite is enabled or not.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array {
	 *    Report data.
	 *
	 *    @type string $value Yes if multisite is enabled, No otherwise.
	 * }
	 */
	public function get_is_multisite() {
		return [
			'value' => is_multisite() ? 'Yes' : 'No',
		];
	}

	/**
	 * Get site URL.
	 *
	 * Retrieve WordPress site URL.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array {
	 *    Report data.
	 *
	 *    @type string $value WordPress site URL.
	 * }
	 */
	public function get_site_url() {
		return [
			'value' => get_site_url(),
		];
	}

	/**
	 * Get home URL.
	 *
	 * Retrieve WordPress home URL.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array {
	 *    Report data.
	 *
	 *    @type string $value WordPress home URL.
	 * }
	 */
	public function get_home_url() {
		return [
			'value' => get_home_url(),
		];
	}

	/**
	 * Get permalink structure.
	 *
	 * Retrieve the permalink structure
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array {
	 *    Report data.
	 *
	 *    @type string $value WordPress permalink structure.
	 * }
	 */
	public function get_permalink_structure() {
		global $wp_rewrite;

		$structure = $wp_rewrite->permalink_structure;

		if ( ! $structure ) {
			$structure = 'Plain';
		}

		return [
			'value' => $structure,
		];
	}

	/**
	 * Get site language.
	 *
	 * Retrieve the site language.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array {
	 *    Report data.
	 *
	 *    @type string $value WordPress site language.
	 * }
	 */
	public function get_language() {
		return [
			'value' => get_bloginfo( 'language' ),
		];
	}

	/**
	 * Get PHP `max_upload_size`.
	 *
	 * Retrieve the value of maximum upload file size defined in `php.ini` configuration file.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array {
	 *    Report data.
	 *
	 *    @type string $value Maximum upload file size allowed.
	 * }
	 */
	public function get_max_upload_size() {
		return [
			'value' => size_format( wp_max_upload_size() ),
		];
	}

	/**
	 * Get WordPress timezone.
	 *
	 * Retrieve WordPress timezone.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array {
	 *    Report data.
	 *
	 *    @type string $value WordPress timezone.
	 * }
	 */
	public function get_timezone() {
		$timezone = get_option( 'timezone_string' );
		if ( ! $timezone ) {
			$timezone = get_option( 'gmt_offset' );
		}

		return [
			'value' => $timezone,
		];
	}

	/**
	 * Get WordPress administrator email.
	 *
	 * Retrieve WordPress administrator email.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array {
	 *    Report data.
	 *
	 *    @type string $value WordPress administrator email.
	 * }
	 */
	public function get_admin_email() {
		return [
			'value' => get_option( 'admin_email' ),
		];
	}

	/**
	 * Get debug mode.
	 *
	 * Whether WordPress debug mode is enabled or not.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array {
	 *    Report data.
	 *
	 *    @type string $value Active if debug mode is enabled, Inactive otherwise.
	 * }
	 */
	public function get_debug_mode() {
		return [
			'value' => WP_DEBUG ? 'Active' : 'Inactive',
		];
	}
}
modules/system-info/reporters/theme.php000064400000012013151327220410014323 0ustar00<?php
namespace Elementor\Modules\System_Info\Reporters;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor theme report.
 *
 * Elementor system report handler class responsible for generating a report for
 * the theme.
 *
 * @since 1.0.0
 */
class Theme extends Base {

	/**
	 * Theme.
	 *
	 * Holds the sites theme object.
	 *
	 * @since 1.0.0
	 * @access private
	 *
	 * @var \WP_Theme WordPress theme object.
	 */
	private $theme = null;

	/**
	 * Get theme reporter title.
	 *
	 * Retrieve theme reporter title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Reporter title.
	 */
	public function get_title() {
		return 'Theme';
	}

	/**
	 * Get theme report fields.
	 *
	 * Retrieve the required fields for the theme report.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array Required report fields with field ID and field label.
	 */
	public function get_fields() {
		$fields = [
			'name' => 'Name',
			'version' => 'Version',
			'author' => 'Author',
			'is_child_theme' => 'Child Theme',
		];

		if ( $this->get_parent_theme() ) {
			$parent_fields = [
				'parent_name' => 'Parent Theme Name',
				'parent_version' => 'Parent Theme Version',
				'parent_author' => 'Parent Theme Author',
			];
			$fields = array_merge( $fields, $parent_fields );
		}

		return $fields;
	}

	/**
	 * Get theme.
	 *
	 * Retrieve the theme.
	 *
	 * @since 1.0.0
	 * @access protected
	 * @deprecated 3.1.0
	 *
	 * @return \WP_Theme WordPress theme object.
	 */
	protected function _get_theme() {
		Plugin::$instance->modules_manager->get_modules( 'dev-tools' )->deprecation->deprecated_function( __METHOD__, '3.1.0', __CLASS__ . '::get_theme()' );

		return $this->get_theme();
	}

	/**
	 * Get theme.
	 *
	 * Retrieve the theme.
	 *
	 * @since 3.1.0
	 * @access private
	 *
	 * @return \WP_Theme WordPress theme object.
	 */
	private function get_theme() {
		if ( is_null( $this->theme ) ) {
			$this->theme = wp_get_theme();
		}
		return $this->theme;
	}

	/**
	 * Get parent theme.
	 *
	 * Retrieve the parent theme.
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @return \WP_Theme|false WordPress theme object, or false if the current theme is not a child theme.
	 */
	protected function get_parent_theme() {
		return $this->get_theme()->parent();
	}

	/**
	 * Get theme name.
	 *
	 * Retrieve the theme name.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array {
	 *    Report data.
	 *
	 *    @type string $value The theme name.
	 * }
	 */
	public function get_name() {
		return [
			'value' => $this->get_theme()->get( 'Name' ),
		];
	}

	/**
	 * Get theme author.
	 *
	 * Retrieve the theme author.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array {
	 *    Report data.
	 *
	 *    @type string $value The theme author.
	 * }
	 */
	public function get_author() {
		return [
			'value' => $this->get_theme()->get( 'Author' ),
		];
	}

	/**
	 * Get theme version.
	 *
	 * Retrieve the theme version.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array {
	 *    Report data.
	 *
	 *    @type string $value The theme version.
	 * }
	 */
	public function get_version() {
		return [
			'value' => $this->get_theme()->get( 'Version' ),
		];
	}

	/**
	 * Is the theme is a child theme.
	 *
	 * Whether the theme is a child theme.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array {
	 *    Report data.
	 *
	 *    @type string $value          Yes if the theme is a child theme, No otherwise.
	 *    @type string $recommendation Theme source code modification recommendation.
	 * }
	 */
	public function get_is_child_theme() {
		$is_child_theme = is_child_theme();

		$result = [
			'value' => $is_child_theme ? 'Yes' : 'No',
		];

		if ( ! $is_child_theme ) {
			$result['recommendation'] = sprintf(
				/* translators: %s: WordPress child themes documentation. */
				_x( 'If you want to modify the source code of your theme, we recommend using a <a href="%s">child theme</a>.', 'System Info', 'elementor' ),
				'https://go.elementor.com/wordpress-child-themes/'
			);
		}

		return $result;
	}

	/**
	 * Get parent theme version.
	 *
	 * Retrieve the parent theme version.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array {
	 *    Report data.
	 *
	 *    @type string $value The parent theme version.
	 * }
	 */
	public function get_parent_version() {
		return [
			'value' => $this->get_parent_theme()->get( 'Version' ),
		];
	}

	/**
	 * Get parent theme author.
	 *
	 * Retrieve the parent theme author.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array {
	 *    Report data.
	 *
	 *    @type string $value The parent theme author.
	 * }
	 */
	public function get_parent_author() {
		return [
			'value' => $this->get_parent_theme()->get( 'Author' ),
		];
	}

	/**
	 * Get parent theme name.
	 *
	 * Retrieve the parent theme name.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array {
	 *    Report data.
	 *
	 *    @type string $value The parent theme name.
	 * }
	 */
	public function get_parent_name() {
		return [
			'value' => $this->get_parent_theme()->get( 'Name' ),
		];
	}
}
modules/wp-cli/command.php000064400000010174151327220410011536 0ustar00<?php
namespace Elementor\Modules\WpCli;

use Elementor\Api;
use Elementor\Plugin;
use Elementor\TemplateLibrary\Source_Local;
use Elementor\Utils;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

/**
 * Elementor Page Builder cli tools.
 */
class Command extends \WP_CLI_Command {

	/**
	 * Flush the Elementor Page Builder CSS Cache.
	 *
	 * [--network]
	 *      Flush CSS Cache for all the sites in the network.
	 *
	 * ## EXAMPLES
	 *
	 *  1. wp elementor flush-css
	 *      - This will flush the CSS files for elementor page builder.
	 *
	 *  2. wp elementor flush-css --network
	 *      - This will flush the CSS files for elementor page builder for all the sites in the network.
	 *
	 * @since 2.1.0
	 * @access public
	 * @alias flush-css
	 */
	public function flush_css( $args, $assoc_args ) {
		$network = ! empty( $assoc_args['network'] ) && is_multisite();

		if ( $network ) {
			/** @var \WP_Site[] $blogs */
			$blogs = get_sites();

			foreach ( $blogs as $keys => $blog ) {
				// Cast $blog as an array instead of  object
				$blog_id = $blog->blog_id;

				switch_to_blog( $blog_id );

				Plugin::$instance->files_manager->clear_cache();

				\WP_CLI::success( 'Flushed the Elementor CSS Cache for site - ' . get_option( 'home' ) );

				restore_current_blog();
			}
		} else {
			Plugin::$instance->files_manager->clear_cache();

			\WP_CLI::success( 'Flushed the Elementor CSS Cache' );
		}
	}

	/**
	 * Print system info powered by Elementor
	 *
	 * ## EXAMPLES
	 *
	 *  1. wp elementor system-info
	 *      - This will print the System Info in JSON format
	 *
	 * @since 3.0.11
	 * @access public
	 * @alias system-info
	 */
	public function system_info() {
		echo wp_json_encode( \Elementor\Tracker::get_tracking_data() );
	}

	/**
	 * Replace old URLs with new URLs in all Elementor pages.
	 *
	 * [--force]
	 *      Suppress error messages. instead, return "0 affected rows.".
	 *
	 * ## EXAMPLES
	 *
	 *  1. wp elementor replace-urls <old> <new>
	 *      - This will replace all <old> URLs with the <new> URL.
	 *
	 *  2. wp elementor replace-urls <old> <new> --force
	 *      - This will replace all <old> URLs with the <new> URL without throw errors.
	 *
	 * @access public
	 * @alias replace-urls
	 */
	public function replace_urls( $args, $assoc_args ) {
		if ( empty( $args[0] ) ) {
			\WP_CLI::error( 'Please set the `old` URL' );
		}

		if ( empty( $args[1] ) ) {
			\WP_CLI::error( 'Please set the `new` URL' );
		}

		try {
			$results = Utils::replace_urls( $args[0], $args[1] );
			\WP_CLI::success( $results );
		} catch ( \Exception $e ) {
			if ( isset( $assoc_args['force'] ) ) {
				\WP_CLI::success( '0 rows affected.' );
			} else {
				\WP_CLI::error( $e->getMessage() );
			}
		}
	}

	/**
	 * Sync Elementor Library.
	 *
	 * ## EXAMPLES
	 *
	 *  1. wp elementor sync-library
	 *      - This will sync the library with Elementor cloud library.
	 *
	 * @since 2.1.0
	 * @access public
	 * @alias sync-library
	 */
	public function sync_library( $args, $assoc_args ) {
		// TODO:
		// \WP_CLI::warning( 'command is deprecated since 2.8.0 Please use: wp elementor library sync' );

		$data = Api::get_library_data( true );

		if ( empty( $data ) ) {
			\WP_CLI::error( 'Cannot sync library.' );
		}

		\WP_CLI::success( 'Library has been synced.' );
	}

	/**
	 * Import template files to the Library.
	 *
	 * ## EXAMPLES
	 *
	 *  1. wp elementor import-library <file-path>
	 *      - This will import a file or a zip of multiple files to the library.
	 *
	 * @since 2.1.0
	 * @access public
	 * @alias import-library
	 */
	public function import_library( $args, $assoc_args ) {
		// TODO:
		// \WP_CLI::warning( 'command is deprecated since 2.8.0 Please use: wp elementor library import' );

		if ( empty( $args[0] ) ) {
			\WP_CLI::error( 'Please set file path.' );
		}

		/** @var Source_Local $source */
		$source = Plugin::$instance->templates_manager->get_source( 'local' );

		$imported_items = $source->import_template( basename( $args[0] ), $args[0] );

		if ( is_wp_error( $imported_items ) ) {
			\WP_CLI::error( $imported_items->get_error_message() );
		}

		\WP_CLI::success( count( $imported_items ) . ' item(s) has been imported.' );
	}
}
modules/wp-cli/module.php000064400000002451151327220410011404 0ustar00<?php
namespace Elementor\Modules\WpCli;

use Elementor\Core\Base\Module as BaseModule;
use Elementor\Core\Logger\Manager as Logger;
use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Module extends BaseModule {

	/**
	 * Get module name.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @return string Module name.
	 */
	public function get_name() {
		return 'wp-cli';
	}

	/**
	 * @since 2.1.0
	 * @access public
	 * @static
	 */
	public static function is_active() {
		return defined( 'WP_CLI' ) && WP_CLI;
	}

	/**
	 * @param Logger $logger
	 * @access public
	 */
	public function register_cli_logger( $logger ) {
		$logger->register_logger( 'cli', 'Elementor\Modules\WpCli\Cli_Logger' );
		$logger->set_default_logger( 'cli' );
	}

	public function init_common() {
		Plugin::$instance->init_common();
	}

	/**
	 *
	 * @since 2.1.0
	 * @access public
	 */
	public function __construct() {
		add_action( 'cli_init', [ $this, 'init_common' ] );
		add_action( 'elementor/loggers/register', [ $this, 'register_cli_logger' ] );

		\WP_CLI::add_command( 'elementor', '\Elementor\Modules\WpCli\Command' );
		\WP_CLI::add_command( 'elementor update', '\Elementor\Modules\WpCli\Update' );
		\WP_CLI::add_command( 'elementor library', '\Elementor\Modules\WpCli\Library' );
	}
}
modules/wp-cli/library.php000064400000010564151327220410011567 0ustar00<?php
namespace Elementor\Modules\WpCli;

use Elementor\Api;
use Elementor\Plugin;
use Elementor\TemplateLibrary\Source_Local;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

/**
 * Elementor Page Builder cli tools.
 */
class Library extends \WP_CLI_Command {

	/**
	 * Sync Elementor Library.
	 *
	 * [--network]
	 *      Sync library in all the sites in the network.
	 *
	 * [--force]
	 *      Force sync even if it's looks like that the library is already up to date.
	 *
	 * ## EXAMPLES
	 *
	 *  1. wp elementor library sync
	 *      - This will sync the library with Elementor cloud library.
	 *
	 *  2. wp elementor library sync --force
	 *      - This will sync the library with Elementor cloud even if it's looks like that the library is already up to date.
	 *
	 *  3. wp elementor library sync --network
	 *      - This will sync the library with Elementor cloud library for each site in the network if needed.
	 *
	 * @since 2.8.0
	 * @access public
	 */
	public function sync( $args, $assoc_args ) {
		$network = isset( $assoc_args['network'] ) && is_multisite();

		if ( $network ) {
			/** @var \WP_Site[] $sites */
			$sites = get_sites();

			foreach ( $sites as $keys => $blog ) {
				// Cast $blog as an array instead of  object
				$blog_id = $blog->blog_id;

				switch_to_blog( $blog_id );

				\WP_CLI::line( 'Site #' . $blog_id . ' - ' . get_option( 'blogname' ) );

				$this->do_sync( isset( $assoc_args['force'] ) );

				\WP_CLI::success( 'Done! - ' . get_option( 'home' ) );

				restore_current_blog();
			}
		} else {
			$this->do_sync( isset( $assoc_args['force'] ) );
			\WP_CLI::success( 'Done!' );
		}
	}

	/**
	 * Import template files to the Library.
	 *
	 * ## EXAMPLES
	 *
	 *  1. wp elementor library import <file-path>
	 *      - This will import a file or a zip of multiple files to the library.
	 *
	 * @param $args
	 * @param $assoc_args
	 *
	 * @since  2.8.0
	 * @access public
	 */
	public function import( $args ) {
		if ( empty( $args[0] ) ) {
			\WP_CLI::error( 'Please set file path.' );
		}

		$file = $args[0];

		/** @var Source_Local $source */
		$source = Plugin::$instance->templates_manager->get_source( 'local' );

		$imported_items = $source->import_template( basename( $file ), $file );

		if ( is_wp_error( $imported_items ) ) {
			\WP_CLI::error( $imported_items->get_error_message() );
		}

		\WP_CLI::success( count( $imported_items ) . ' item(s) has been imported.' );
	}

	/**
	 * Connect site to Elementor Library.
	 * (Network is not supported)
	 *
	 * --user
	 *      The user to connect <id|login|email>
	 *
	 * --token
	 *      A connect token from Elementor Account Dashboard.
	 *
	 * ## EXAMPLES
	 *
	 *  1. wp elementor library connect --user=admin --token=<connect-cli-token>
	 *      - This will connect the admin to Elementor library.
	 *
	 * @param $args
	 * @param $assoc_args
	 *
	 * @since  2.8.0
	 * @access public
	 */
	public function connect( $args, $assoc_args ) {
		if ( ! get_current_user_id() ) {
			\WP_CLI::error( 'Please set user to connect (--user=<id|login|email>).' );
		}

		if ( empty( $assoc_args['token'] ) ) {
			\WP_CLI::error( 'Please set connect token.' );
		}

		$_REQUEST['mode'] = 'cli';
		$_REQUEST['token'] = $assoc_args['token'];

		$app = $this->get_library_app();

		$app->set_auth_mode( 'cli' );

		$app->action_authorize();

		$app->action_get_token();
	}

	/**
	 * Disconnect site from Elementor Library.
	 *
	 * --user
	 *      The user to disconnect <id|login|email>
	 *
	 * ## EXAMPLES
	 *
	 *  1. wp elementor library disconnect --user=admin
	 *      - This will disconnect the admin from Elementor library.
	 *
	 * @param $args
	 * @param $assoc_args
	 *
	 * @since  2.8.0
	 * @access public
	 */
	public function disconnect() {
		if ( ! get_current_user_id() ) {
			\WP_CLI::error( 'Please set user to connect (--user=<id|login|email>).' );
		}

		$_REQUEST['mode'] = 'cli';

		$this->get_library_app()->action_disconnect();
	}

	private function do_sync() {
		$data = Api::get_library_data( true );

		if ( empty( $data ) ) {
			\WP_CLI::error( 'Cannot sync library.' );
		}
	}

	/**
	 * @return \Elementor\Core\Common\Modules\Connect\Apps\Library
	 */
	private function get_library_app() {
		$connect = Plugin::$instance->common->get_component( 'connect' );
		$app = $connect->get_app( 'library' );
		// Before init.
		if ( ! $app ) {
			$connect->init();
			$app = $connect->get_app( 'library' );
		}

		return $app;
	}
}
modules/wp-cli/update.php000064400000005154151327220410011404 0ustar00<?php
namespace Elementor\Modules\WpCli;

use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

/**
 * Elementor Page Builder cli tools.
 */
class Update extends \WP_CLI_Command {

	/**
	 * Update the DB after plugin upgrade.
	 *
	 * [--network]
	 *      Update DB in all the sites in the network.
	 *
	 * [--force]
	 *      Force update even if it's looks like that update is in progress.
	 *
	 *
	 * ## EXAMPLES
	 *
	 *  1. wp elementor update db
	 *      - This will Upgrade the DB if needed.
	 *
	 *  2. wp elementor update db --force
	 *      - This will Upgrade the DB even if another process is running.
	 *
	 *  3. wp elementor update db --network
	 *      - This will Upgrade the DB for each site in the network if needed.
	 *
	 * @since  2.4.0
	 * @access public
	 *
	 * @param $args
	 * @param $assoc_args
	 */
	public function db( $args, $assoc_args ) {
		$network = ! empty( $assoc_args['network'] ) && is_multisite();

		if ( $network ) {
			/** @var \WP_Site[] $sites */
			$sites = get_sites();

			foreach ( $sites as $keys => $blog ) {
				// Cast $blog as an array instead of  object
				$blog_id = $blog->blog_id;

				switch_to_blog( $blog_id );

				\WP_CLI::line( 'Site #' . $blog_id . ' - ' . get_option( 'blogname' ) );

				$this->do_db_upgrade( $assoc_args );

				\WP_CLI::success( 'Done! - ' . get_option( 'home' ) );

				restore_current_blog();
			}
		} else {
			$this->do_db_upgrade( $assoc_args );
		}
	}

	protected function get_update_db_manager_class() {
		return '\Elementor\Core\Upgrade\Manager';
	}

	protected function do_db_upgrade( $assoc_args ) {
		$manager_class = $this->get_update_db_manager_class();

		/** @var \Elementor\Core\Upgrade\Manager $manager */
		$manager = new $manager_class();

		$updater = $manager->get_task_runner();

		if ( $updater->is_process_locked() && empty( $assoc_args['force'] ) ) {
			\WP_CLI::warning( 'Oops! Process is already running. Use --force to force run.' );
			return;
		}

		if ( ! $manager->should_upgrade() ) {
			\WP_CLI::success( 'The DB is already updated!' );
			return;
		}

		$callbacks = $manager->get_upgrade_callbacks();
		$did_tasks = false;

		if ( ! empty( $callbacks ) ) {
			Plugin::$instance->logger->get_logger()->info( 'Update DB has been started', [
				'meta' => [
					'plugin' => $manager->get_plugin_label(),
					'from' => $manager->get_current_version(),
					'to' => $manager->get_new_version(),
				],
			] );

			$updater->handle_immediately( $callbacks );
			$did_tasks = true;
		}

		$manager->on_runner_complete( $did_tasks );

		\WP_CLI::success( count( $callbacks ) . ' updates(s) has been applied.' );
	}
}
modules/wp-cli/cli-logger.php000064400000001154151327220410012142 0ustar00<?php
namespace Elementor\Modules\WpCli;

use Elementor\Core\Logger\Loggers\Db;
use Elementor\Core\Logger\Items\Log_Item_Interface as Log_Item_Interface;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Cli_Logger extends Db {

	public function save_log( Log_Item_Interface $item ) {
		$message = $item->format( 'raw' );
		switch ( $item->type ) {
			case self::LEVEL_WARNING:
				\WP_CLI::warning( $message );
				break;
			case self::LEVEL_ERROR:
				\WP_CLI::error( $message, false );
				break;
			default:
				\WP_CLI::log( $message );
				break;
		}

		parent::save_log( $item );
	}
}
modules/safe-mode/module.php000064400000040223151327220410012050 0ustar00<?php
namespace Elementor\Modules\SafeMode;

use Elementor\Plugin;
use Elementor\Settings;
use Elementor\Tools;
use Elementor\TemplateLibrary\Source_Local;
use Elementor\Core\Common\Modules\Ajax\Module as Ajax;
use Elementor\Utils;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Module extends \Elementor\Core\Base\Module {

	const OPTION_ENABLED = 'elementor_safe_mode';
	const OPTION_TOKEN = self::OPTION_ENABLED . '_token';
	const MU_PLUGIN_FILE_NAME = 'elementor-safe-mode.php';
	const DOCS_HELPED_URL = 'https://go.elementor.com/safe-mode-helped/';
	const DOCS_DIDNT_HELP_URL = 'https://go.elementor.com/safe-mode-didnt-helped/';
	const DOCS_MU_PLUGINS_URL = 'https://go.elementor.com/safe-mode-mu-plugins/';
	const DOCS_TRY_SAFE_MODE_URL = 'https://go.elementor.com/safe-mode/';

	const EDITOR_NOTICE_TIMEOUT = 30000; /* ms */

	public function get_name() {
		return 'safe-mode';
	}

	public function register_ajax_actions( Ajax $ajax ) {
		$ajax->register_ajax_action( 'enable_safe_mode', [ $this, 'ajax_enable_safe_mode' ] );
		$ajax->register_ajax_action( 'disable_safe_mode', [ $this, 'disable_safe_mode' ] );
	}

	/**
	 * @param Tools $tools_page
	 */
	public function add_admin_button( $tools_page ) {
		$tools_page->add_fields( Settings::TAB_GENERAL, 'tools', [
			'safe_mode' => [
				'label' => esc_html__( 'Safe Mode', 'elementor' ),
				'field_args' => [
					'type' => 'select',
					'std' => $this->is_enabled() ? 'global' : '',
					'options' => [
						'' => esc_html__( 'Disable', 'elementor' ),
						'global' => esc_html__( 'Enable', 'elementor' ),

					],
					'desc' => esc_html__( 'Safe Mode allows you to troubleshoot issues by only loading the editor, without loading the theme or any other plugin.', 'elementor' ),
				],
			],
		] );
	}

	public function on_update_safe_mode( $value ) {
		if ( 'yes' === $value || 'global' === $value ) {
			$this->enable_safe_mode();
		} else {
			$this->disable_safe_mode();
		}

		return $value;
	}

	public function ajax_enable_safe_mode( $data ) {
		// It will run `$this->>update_safe_mode`.
		update_option( 'elementor_safe_mode', 'yes' );

		$document = Plugin::$instance->documents->get( $data['editor_post_id'] );

		if ( $document ) {
			return add_query_arg( 'elementor-mode', 'safe', $document->get_edit_url() );
		}

		return false;
	}

	public function enable_safe_mode() {
		if ( ! current_user_can( 'install_plugins' ) ) {
			return;
		}

		WP_Filesystem();

		$this->update_allowed_plugins();

		if ( ! is_dir( WPMU_PLUGIN_DIR ) ) {
			wp_mkdir_p( WPMU_PLUGIN_DIR );
			add_option( 'elementor_safe_mode_created_mu_dir', true );
		}

		if ( ! is_dir( WPMU_PLUGIN_DIR ) ) {
			wp_die( esc_html__( 'Cannot enable Safe Mode', 'elementor' ) );
		}

		$results = copy_dir( __DIR__ . '/mu-plugin/', WPMU_PLUGIN_DIR );

		if ( is_wp_error( $results ) ) {
			return;
		}

		$token = md5( wp_rand() );

		// Only who own this key can use 'elementor-safe-mode'.
		update_option( self::OPTION_TOKEN, $token );

		// Save for later use.
		setcookie( self::OPTION_TOKEN, $token, time() + HOUR_IN_SECONDS, COOKIEPATH );
	}

	public function disable_safe_mode() {
		if ( ! current_user_can( 'install_plugins' ) ) {
			return;
		}

		$file_path = WP_CONTENT_DIR . '/mu-plugins/elementor-safe-mode.php';
		if ( file_exists( $file_path ) ) {
			unlink( $file_path );
		}

		if ( get_option( 'elementor_safe_mode_created_mu_dir' ) ) {
			// It will be removed only if it's empty and don't have other mu-plugins.
			@rmdir( WPMU_PLUGIN_DIR );
		}

		delete_option( 'elementor_safe_mode' );
		delete_option( 'elementor_safe_mode_allowed_plugins' );
		delete_option( 'theme_mods_elementor-safe' );
		delete_option( 'elementor_safe_mode_created_mu_dir' );

		delete_option( self::OPTION_TOKEN );
		setcookie( self::OPTION_TOKEN, '', 1 );
	}

	public function filter_preview_url( $url ) {
		return add_query_arg( 'elementor-mode', 'safe', $url );
	}

	public function filter_template() {
		return ELEMENTOR_PATH . 'modules/page-templates/templates/canvas.php';
	}

	public function print_safe_mode_css() {
		?>
		<style>
			.elementor-safe-mode-toast {
				position: absolute;
				z-index: 10000; /* Over the loading layer */
				bottom: 10px;
				width: 400px;
				line-height: 30px;
				background: white;
				padding: 20px 25px 25px;
				box-shadow: 0 5px 20px rgba(0, 0, 0, 0.15);
				border-radius: 5px;
				font-family: Roboto, Arial, Helvetica, Verdana, sans-serif;
			}

			body.rtl .elementor-safe-mode-toast {
				left: 10px;
			}

			body:not(.rtl) .elementor-safe-mode-toast {
				right: 10px;
			}

			#elementor-try-safe-mode {
				display: none;
			}

			.elementor-safe-mode-toast .elementor-toast-content {
				font-size: 13px;
				line-height: 22px;
				color: #6D7882;
			}

			.elementor-safe-mode-toast .elementor-toast-content a {
				color: #138FFF;
			}

			.elementor-safe-mode-toast .elementor-toast-content hr {
				margin: 15px auto;
				border: 0 none;
				border-top: 1px solid #F1F3F5;
			}

			.elementor-safe-mode-toast header {
				display: flex;
				align-items: center;
				justify-content: space-between;
				flex-wrap: wrap;
				margin-bottom: 20px;
			}

			.elementor-safe-mode-toast header > * {
				margin-top: 10px;
			}

			.elementor-safe-mode-toast .elementor-safe-mode-button {
				display: inline-block;
				font-weight: 500;
				font-size: 11px;
				text-transform: uppercase;
				color: white;
				padding: 10px 15px;
				line-height: 1;
				background: #A4AFB7;
				border-radius: 3px;
			}

			#elementor-try-safe-mode .elementor-safe-mode-button {
				background: #39B54A;
			}

			.elementor-safe-mode-toast header i {
				font-size: 25px;
				color: #fcb92c;
			}

			body:not(.rtl) .elementor-safe-mode-toast header i {
				margin-right: 10px;
			}

			body.rtl .elementor-safe-mode-toast header i {
				margin-left: 10px;
			}

			.elementor-safe-mode-toast header h2 {
				flex-grow: 1;
				font-size: 18px;
				color: #6D7882;
			}

			.elementor-safe-mode-list-item {
				margin-top: 10px;
				list-style: outside;
			}

			body:not(.rtl) .elementor-safe-mode-list-item {
				margin-left: 15px;
			}

			body.rtl .elementor-safe-mode-list-item {
				margin-right: 15px;
			}

			.elementor-safe-mode-list-item b {
				font-size: 14px;
			}

			.elementor-safe-mode-list-item-content {
				font-style: italic;
				color: #a4afb7;
			}

			.elementor-safe-mode-list-item-title {
				font-weight: 500;
			}

			.elementor-safe-mode-mu-plugins {
				background-color: #f1f3f5;
				margin-top: 20px;
				padding: 10px 15px;
			}
		</style>
		<?php
	}

	public function print_safe_mode_notice() {
		$this->print_safe_mode_css()
		?>
		<div class="elementor-safe-mode-toast" id="elementor-safe-mode-message">
			<header>
				<i class="eicon-warning"></i>
				<h2><?php echo esc_html__( 'Safe Mode ON', 'elementor' ); ?></h2>
				<a class="elementor-safe-mode-button elementor-disable-safe-mode" target="_blank" href="<?php echo esc_url( $this->get_admin_page_url() ); ?>">
					<?php echo esc_html__( 'Disable Safe Mode', 'elementor' ); ?>
				</a>
			</header>

			<div class="elementor-toast-content">
				<ul class="elementor-safe-mode-list">
					<li class="elementor-safe-mode-list-item">
						<div class="elementor-safe-mode-list-item-title"><?php echo esc_html__( 'Editor successfully loaded?', 'elementor' ); ?></div>
						<div class="elementor-safe-mode-list-item-content">
							<?php
								echo esc_html__( 'The issue was probably caused by one of your plugins or theme.', 'elementor' );
								echo ' ';

								printf(
									/* translators: %1$s Link open tag, %2$s: Link close tag. */
									esc_html__( '%1$sClick here%2$s to troubleshoot', 'elementor' ),
									'<a href="' . self::DOCS_HELPED_URL . '" target="_blank">', // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
									'</a>'
								);
							?>
						</div>
					</li>
					<li class="elementor-safe-mode-list-item">
						<div class="elementor-safe-mode-list-item-title"><?php echo esc_html__( 'Still experiencing issues?', 'elementor' ); ?></div>
						<div class="elementor-safe-mode-list-item-content">
							<?php
								printf(
									/* translators: %1$s Link open tag, %2$s: Link close tag. */
									esc_html__( '%1$sClick here%2$s to troubleshoot', 'elementor' ),
									'<a href="' . self::DOCS_DIDNT_HELP_URL . '" target="_blank">', // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
									'</a>'
								);
							?>
						</div>
					</li>
				</ul>
				<?php
				$mu_plugins = wp_get_mu_plugins();

				if ( 1 < count( $mu_plugins ) ) : ?>
					<div class="elementor-safe-mode-mu-plugins">
						<?php
						printf(
							/* translators: %1$s Link open tag, %2$s: Link close tag. */
							esc_html__( 'Please note! We couldn\'t deactivate all of your plugins on Safe Mode. Please %1$sread more%2$s about this issue', 'elementor' ),
							'<a href="' . self::DOCS_MU_PLUGINS_URL . '" target="_blank">', // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
							'</a>'
						);
						?>
					</div>
				<?php endif; ?>
			</div>
		</div>

		<script>
			var ElementorSafeMode = function() {
				var attachEvents = function() {
					jQuery( '.elementor-disable-safe-mode' ).on( 'click', function( e ) {
						if ( ! elementorCommon || ! elementorCommon.ajax ) {
							return;
						}

						e.preventDefault();

						elementorCommon.ajax.addRequest(
							'disable_safe_mode', {
								success: function() {
									if ( -1 === location.href.indexOf( 'elementor-mode=safe' ) ) {
										location.reload();
									} else {
										// Need to remove the URL from browser history.
										location.replace( location.href.replace( '&elementor-mode=safe', '' ) );
									}
								},
								error: function() {
									alert( 'An error occurred' );
								},
							},
							true
						);
					} );
				};

				var init = function() {
					attachEvents();
				};

				init();
			};

			new ElementorSafeMode();
		</script>
		<?php
	}

	public function print_try_safe_mode() {
		if ( ! $this->is_allowed_post_type() ) {
			return;
		}

		$this->print_safe_mode_css();
		?>
		<div class="elementor-safe-mode-toast" id="elementor-try-safe-mode">
		<?php if ( current_user_can( 'install_plugins' ) ) : ?>
			<header>
				<i class="eicon-warning"></i>
				<h2><?php echo esc_html__( 'Can\'t Edit?', 'elementor' ); ?></h2>
				<a class="elementor-safe-mode-button elementor-enable-safe-mode" target="_blank" href="<?php echo esc_url( $this->get_admin_page_url() ); ?>">
					<?php echo esc_html__( 'Enable Safe Mode', 'elementor' ); ?>
				</a>
			</header>
			<div class="elementor-toast-content">
				<?php echo esc_html__( 'Having problems loading Elementor? Please enable Safe Mode to troubleshoot.', 'elementor' ); ?>
				<a href="<?php Utils::print_unescaped_internal_string( self::DOCS_TRY_SAFE_MODE_URL ); ?>" target="_blank"><?php echo esc_html__( 'Learn More', 'elementor' ); ?></a>
			</div>
		<?php else : ?>
			<header>
				<i class="eicon-warning"></i>
				<h2><?php echo esc_html__( 'Can\'t Edit?', 'elementor' ); ?></h2>
			</header>
			<div class="elementor-toast-content">
				<?php echo esc_html__( 'If you are experiencing a loading issue, contact your site administrator to troubleshoot the problem using Safe Mode.', 'elementor' ); ?>
				<a href="<?php Utils::print_unescaped_internal_string( self::DOCS_TRY_SAFE_MODE_URL ); ?>" target="_blank"><?php echo esc_html__( 'Learn More', 'elementor' ); ?></a>
			</div>
		<?php endif; ?>
		</div>

		<script>
			var ElementorTrySafeMode = function() {
				var attachEvents = function() {
					jQuery( '.elementor-enable-safe-mode' ).on( 'click', function( e ) {
						if ( ! elementorCommon || ! elementorCommon.ajax ) {
							return;
						}

						e.preventDefault();

						elementorCommon.ajax.addRequest(
							'enable_safe_mode', {
								data: {
									editor_post_id: '<?php
										// PHPCS - the method get_post_id is safe.
										echo Plugin::$instance->editor->get_post_id(); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
									?>',
								},
								success: function( url ) {
									location.assign( url );
								},
								error: function() {
									alert( 'An error occurred' );
								},
							},
							true
						);
					} );
				};

				var isElementorLoaded = function() {
					if ( 'undefined' === typeof elementor ) {
						return false;
					}

					if ( ! elementor.loaded ) {
						return false;
					}

					if ( jQuery( '#elementor-loading' ).is( ':visible' ) ) {
						return false;
					}

					return true;
				};

				var handleTrySafeModeNotice = function() {
					var $notice = jQuery( '#elementor-try-safe-mode' );

					if ( isElementorLoaded() ) {
						$notice.remove();
						return;
					}

					if ( ! $notice.data( 'visible' ) ) {
						$notice.show().data( 'visible', true );
					}

					// Re-check after 500ms.
					setTimeout( handleTrySafeModeNotice, 500 );
				};

				var init = function() {
					setTimeout( handleTrySafeModeNotice, <?php Utils::print_unescaped_internal_string( self::EDITOR_NOTICE_TIMEOUT ); ?> );

					attachEvents();
				};

				init();
			};

			new ElementorTrySafeMode();
		</script>

		<?php
	}

	public function run_safe_mode() {
		remove_action( 'elementor/editor/footer', [ $this, 'print_try_safe_mode' ] );

		// Avoid notices like for comment.php.
		add_filter( 'deprecated_file_trigger_error', '__return_false' );

		add_filter( 'template_include', [ $this, 'filter_template' ], 999 );
		add_filter( 'elementor/document/urls/preview', [ $this, 'filter_preview_url' ] );
		add_action( 'elementor/editor/footer', [ $this, 'print_safe_mode_notice' ] );
		add_action( 'elementor/editor/before_enqueue_scripts', [ $this, 'register_scripts' ], 11 /* After Common Scripts */ );
	}

	public function register_scripts() {
		wp_add_inline_script( 'elementor-common', 'elementorCommon.ajax.addRequestConstant( "elementor-mode", "safe" );' );
	}

	private function is_enabled() {
		return get_option( self::OPTION_ENABLED, '' );
	}

	private function get_admin_page_url() {
		// A fallback URL if the Js doesn't work.
		return Tools::get_url();
	}

	public function plugin_action_links( $actions ) {
		$actions['disable'] = '<a href="' . self::get_admin_page_url() . '">' . esc_html__( 'Disable Safe Mode', 'elementor' ) . '</a>';

		return $actions;
	}

	public function on_deactivated_plugin( $plugin ) {
		if ( ELEMENTOR_PLUGIN_BASE === $plugin ) {
			$this->disable_safe_mode();
			return;
		}

		$allowed_plugins = get_option( 'elementor_safe_mode_allowed_plugins', [] );
		$plugin_key = array_search( $plugin, $allowed_plugins, true );

		if ( $plugin_key ) {
			unset( $allowed_plugins[ $plugin_key ] );
			update_option( 'elementor_safe_mode_allowed_plugins', $allowed_plugins );
		}
	}

	public function update_allowed_plugins() {
		$allowed_plugins = [
			'elementor' => ELEMENTOR_PLUGIN_BASE,
		];

		if ( defined( 'ELEMENTOR_PRO_PLUGIN_BASE' ) ) {
			$allowed_plugins['elementor_pro'] = ELEMENTOR_PRO_PLUGIN_BASE;
		}

		if ( defined( 'WC_PLUGIN_BASENAME' ) ) {
			$allowed_plugins['woocommerce'] = WC_PLUGIN_BASENAME;
		}

		update_option( 'elementor_safe_mode_allowed_plugins', $allowed_plugins );
	}

	public function __construct() {
		if ( current_user_can( 'install_plugins' ) ) {
			add_action( 'elementor/admin/after_create_settings/elementor-tools', [ $this, 'add_admin_button' ] );
		}

		add_action( 'elementor/ajax/register_actions', [ $this, 'register_ajax_actions' ] );

		$plugin_file = self::MU_PLUGIN_FILE_NAME;
		add_filter( "plugin_action_links_{$plugin_file}", [ $this, 'plugin_action_links' ] );

		// Use pre_update, in order to catch cases that $value === $old_value and it not updated.
		add_filter( 'pre_update_option_elementor_safe_mode', [ $this, 'on_update_safe_mode' ], 10, 2 );

		add_action( 'elementor/safe_mode/init', [ $this, 'run_safe_mode' ] );
		add_action( 'elementor/editor/footer', [ $this, 'print_try_safe_mode' ] );

		if ( $this->is_enabled() ) {
			add_action( 'activated_plugin', [ $this, 'update_allowed_plugins' ] );
			add_action( 'deactivated_plugin', [ $this, 'on_deactivated_plugin' ] );
		}
	}

	private function is_allowed_post_type() {
		$allowed_post_types = [
			'post',
			'page',
			'product',
			Source_Local::CPT,
		];

		$current_post_type = get_post_type( Plugin::$instance->editor->get_post_id() );

		return in_array( $current_post_type, $allowed_post_types );
	}
}
modules/safe-mode/mu-plugin/elementor-safe-mode.php000064400000007533151327220410016337 0ustar00<?php

/**
 * Plugin Name: Elementor Safe Mode
 * Description: Safe Mode allows you to troubleshoot issues by only loading the editor, without loading the theme or any other plugin.
 * Plugin URI: https://elementor.com/?utm_source=safe-mode&utm_campaign=plugin-uri&utm_medium=wp-dash
 * Author: Elementor.com
 * Version: 1.0.0
 * Author URI: https://elementor.com/?utm_source=safe-mode&utm_campaign=author-uri&utm_medium=wp-dash
 *
 * Text Domain: elementor
 *
 * @package Elementor
 * @category Safe Mode
 *
 * Elementor is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * any later version.
 *
 * Elementor is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
 * GNU General Public License for more details.
 */

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Safe_Mode {

	const OPTION_ENABLED = 'elementor_safe_mode';
	const OPTION_TOKEN = self::OPTION_ENABLED . '_token';

	public function is_enabled() {
		return get_option( self::OPTION_ENABLED );
	}

	public function is_valid_token() {
		$token = isset( $_COOKIE[ self::OPTION_TOKEN ] ) ? $_COOKIE[ self::OPTION_TOKEN ] : null;

		if ( $token && get_option( self::OPTION_TOKEN ) === $token ) {
			return true;
		}

		return false;
	}

	public function is_requested() {
		return ! empty( $_REQUEST['elementor-mode'] ) && 'safe' === $_REQUEST['elementor-mode'];
	}

	public function is_editor() {
		return is_admin() && isset( $_GET['action'] ) && 'elementor' === $_GET['action'];
	}

	public function is_editor_preview() {
		return isset( $_GET['elementor-preview'] );
	}

	public function is_editor_ajax() {
		// PHPCS - There is already nonce verification in the Ajax Manager
		return is_admin() && isset( $_POST['action'] ) && 'elementor_ajax' === $_POST['action']; // phpcs:ignore WordPress.Security.NonceVerification.Missing
	}

	public function add_hooks() {
		add_filter( 'pre_option_active_plugins', function () {
			return get_option( 'elementor_safe_mode_allowed_plugins' );
		} );

		add_filter( 'pre_option_stylesheet', function () {
			return 'elementor-safe';
		} );

		add_filter( 'pre_option_template', function () {
			return 'elementor-safe';
		} );

		add_action( 'elementor/init', function () {
			do_action( 'elementor/safe_mode/init' );
		} );
	}

	/**
	 * Plugin row meta.
	 *
	 * Adds row meta links to the plugin list table
	 *
	 * Fired by `plugin_row_meta` filter.
	 *
	 * @access public
	 *
	 * @param array  $plugin_meta An array of the plugin's metadata, including
	 *                            the version, author, author URI, and plugin URI.
	 * @param string $plugin_file Path to the plugin file, relative to the plugins
	 *                            directory.
	 *
	 * @return array An array of plugin row meta links.
	 */
	public function plugin_row_meta( $plugin_meta, $plugin_file, $plugin_data, $status ) {
		if ( basename( __FILE__ ) === $plugin_file ) {
			$row_meta = [
				'docs' => '<a href="https://go.elementor.com/safe-mode/" aria-label="' . esc_attr( esc_html__( 'Learn More', 'elementor' ) ) . '" target="_blank">' . esc_html__( 'Learn More', 'elementor' ) . '</a>',
			];

			$plugin_meta = array_merge( $plugin_meta, $row_meta );
		}

		return $plugin_meta;
	}

	public function __construct() {
		add_filter( 'plugin_row_meta', [ $this, 'plugin_row_meta' ], 10, 4 );

		$enabled_type = $this->is_enabled();

		if ( ! $enabled_type || ! $this->is_valid_token() ) {
			return;
		}

		if ( ! $this->is_requested() && 'global' !== $enabled_type ) {
			return;
		}

		if ( ! $this->is_editor() && ! $this->is_editor_preview() && ! $this->is_editor_ajax() ) {
			return;
		}

		$this->add_hooks();
	}
}

new Safe_Mode();
modules/dynamic-tags/module.php000064400000005570151327220410012576 0ustar00<?php
namespace Elementor\Modules\DynamicTags;

use Elementor\Core\Base\Module as BaseModule;
use Elementor\Core\DynamicTags\Manager;
use Elementor\Core\DynamicTags\Tag;
use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor dynamic tags module.
 *
 * Elementor dynamic tags module handler class is responsible for registering
 * and managing Elementor dynamic tags modules.
 *
 * @since 2.0.0
 */
class Module extends BaseModule {

	/**
	 * Base dynamic tag group.
	 */
	const BASE_GROUP = 'base';

	/**
	 * Dynamic tags text category.
	 */
	const TEXT_CATEGORY = 'text';

	/**
	 * Dynamic tags URL category.
	 */
	const URL_CATEGORY = 'url';

	/**
	 * Dynamic tags image category.
	 */
	const IMAGE_CATEGORY = 'image';

	/**
	 * Dynamic tags media category.
	 */
	const MEDIA_CATEGORY = 'media';

	/**
	 * Dynamic tags post meta category.
	 */
	const POST_META_CATEGORY = 'post_meta';

	/**
	 * Dynamic tags gallery category.
	 */
	const GALLERY_CATEGORY = 'gallery';

	/**
	 * Dynamic tags number category.
	 */
	const NUMBER_CATEGORY = 'number';

	/**
	 * Dynamic tags number category.
	 */
	const COLOR_CATEGORY = 'color';

	/**
	 * Dynamic tags module constructor.
	 *
	 * Initializing Elementor dynamic tags module.
	 *
	 * @since 2.0.0
	 * @access public
	 */
	public function __construct() {
		$this->register_groups();

		add_action( 'elementor/dynamic_tags/register_tags', [ $this, 'register_tags' ] );
	}

	/**
	 * Get module name.
	 *
	 * Retrieve the dynamic tags module name.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @return string Module name.
	 */
	public function get_name() {
		return 'dynamic_tags';
	}

	/**
	 * Get classes names.
	 *
	 * Retrieve the dynamic tag classes names.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @return array Tag dynamic tag classes names.
	 */
	public function get_tag_classes_names() {
		return [];
	}

	/**
	 * Get groups.
	 *
	 * Retrieve the dynamic tag groups.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @return array Tag dynamic tag groups.
	 */
	public function get_groups() {
		return [
			self::BASE_GROUP => [
				'title' => 'Base Tags',
			],
		];
	}

	/**
	 * Register groups.
	 *
	 * Add all the available tag groups.
	 *
	 * @since 2.0.0
	 * @access private
	 */
	private function register_groups() {
		foreach ( $this->get_groups() as $group_name => $group_settings ) {
			Plugin::$instance->dynamic_tags->register_group( $group_name, $group_settings );
		}
	}

	/**
	 * Register tags.
	 *
	 * Add all the available dynamic tags.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @param Manager $dynamic_tags
	 */
	public function register_tags( $dynamic_tags ) {
		foreach ( $this->get_tag_classes_names() as $tag_class ) {
			/** @var Tag $class_name */
			$class_name = $this->get_reflection()->getNamespaceName() . '\Tags\\' . $tag_class;

			$dynamic_tags->register_tag( $class_name );
		}
	}
}
modules/shapes/widgets/text-path.php000064400000034030151327220420013572 0ustar00<?php

namespace Elementor\Modules\Shapes\Widgets;

use Elementor\Controls_Manager;
use Elementor\Core\Kits\Documents\Tabs\Global_Typography;
use Elementor\Group_Control_Typography;
use Elementor\Modules\Shapes\Module as Shapes_Module;
use Elementor\Utils;
use Elementor\Widget_Base;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor WordArt widget.
 *
 * Elementor widget that displays text along SVG path.
 *
 */
class TextPath extends Widget_Base {

	const DEFAULT_PATH_FILL = '#E8178A';

	/**
	 * Get widget name.
	 *
	 * Retrieve Text Path widget name.
	 *
	 * @return string Widget name.
	 * @access public
	 *
	 */
	public function get_name() {
		return 'text-path';
	}

	/**
	 * Get widget title.
	 *
	 * Retrieve Text Path widget title.
	 *
	 * @return string Widget title.
	 * @access public
	 *
	 */
	public function get_title() {
		return esc_html__( 'Text Path', 'elementor' );
	}

	/**
	 * Get widget icon.
	 *
	 * Retrieve Text Path widget icon.
	 *
	 * @return string Widget icon.
	 * @access public
	 *
	 */
	public function get_icon() {
		return 'eicon-wordart';
	}

	/**
	 * Get widget keywords.
	 *
	 * Retrieve the list of keywords the widget belongs to.
	 *
	 * @return array Widget keywords.
	 * @access public
	 *
	 */
	public function get_keywords() {
		return [ 'text path', 'word path', 'text on path', 'wordart', 'word art' ];
	}

	/**
	 * Register content controls under content tab.
	 */
	protected function register_content_tab() {
		$this->start_controls_section(
			'section_content_text_path',
			[
				'label' => esc_html__( 'Text Path', 'elementor' ),
				'tab' => Controls_Manager::TAB_CONTENT,
			]
		);

		$this->add_control(
			'text',
			[
				'label' => esc_html__( 'Text', 'elementor' ),
				'type' => Controls_Manager::TEXT,
				'label_block' => true,
				'default' => esc_html__( 'Add Your Curvy Text Here', 'elementor' ),
				'frontend_available' => true,
				'render_type' => 'none',
				'dynamic' => [
					'active' => true,
				],
			]
		);

		$this->add_control(
			'path',
			[
				'label' => esc_html__( 'Path Type', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'options' => Shapes_Module::get_paths(),
				'default' => 'wave',
			]
		);

		$this->add_control(
			'custom_path',
			[
				'label' => esc_html__( 'SVG', 'elementor' ),
				'type' => Controls_Manager::MEDIA,
				'media_types' => [
					'svg',
				],
				'condition' => [
					'path' => 'custom',
				],
				'dynamic' => [
					'active' => true,
				],
				'description' => sprintf(
					/* translators: 1: Link open tag, 2: Link close tag. */
					esc_html__( 'Want to create custom text paths with SVG? %1$sLearn More%2$s', 'elementor' ),
					'<a target="_blank" href="https://go.elementor.com/text-path-create-paths/">',
					'</a>'
				),
			]
		);

		$this->add_control(
			'link',
			[
				'label' => esc_html__( 'Link', 'elementor' ),
				'type' => Controls_Manager::URL,
				'label_block' => true,
				'dynamic' => [
					'active' => true,
				],
				'placeholder' => esc_html__( 'Paste URL or type', 'elementor' ),
				'frontend_available' => true,
			]
		);

		$this->add_responsive_control(
			'align',
			[
				'label' => esc_html__( 'Alignment', 'elementor' ),
				'type' => Controls_Manager::CHOOSE,
				'default' => '',
				'options' => [
					'left' => [
						'title' => esc_html__( 'Left', 'elementor' ),
						'icon' => 'eicon-text-align-left',
					],
					'center' => [
						'title' => esc_html__( 'Center', 'elementor' ),
						'icon' => 'eicon-text-align-center',
					],
					'right' => [
						'title' => esc_html__( 'Right', 'elementor' ),
						'icon' => 'eicon-text-align-right',
					],
				],
				'selectors' => [
					'{{WRAPPER}}' => '--alignment: {{VALUE}}',
				],
				'frontend_available' => true,
			]
		);

		$this->add_control(
			'text_path_direction',
			[
				'label' => esc_html__( 'Text Direction', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => '',
				'options' => [
					'' => esc_html__( 'Default', 'elementor' ),
					'rtl' => esc_html__( 'RTL', 'elementor' ),
					'ltr' => esc_html__( 'LTR', 'elementor' ),
				],
				'selectors' => [
					'{{WRAPPER}}' => '--direction: {{VALUE}}',
				],
				'frontend_available' => true,
			]
		);

		$this->add_control(
			'show_path',
			[
				'label' => esc_html__( 'Show Path', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'label_on' => esc_html__( 'On', 'elementor' ),
				'label_off' => esc_html__( 'Off', 'elementor' ),
				'return_value' => self::DEFAULT_PATH_FILL,
				'separator' => 'before',
				'default' => '',
				'selectors' => [
					'{{WRAPPER}}' => '--path-stroke: {{VALUE}}; --path-fill: transparent;',
				],
			]
		);

		$this->end_controls_section();
	}

	/**
	 * Register style controls under style tab.
	 */
	protected function register_style_tab() {
		/**
		 * Text Path styling section.
		 */
		$this->start_controls_section(
			'section_style_text_path',
			[
				'label' => esc_html__( 'Text Path', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->add_responsive_control(
			'size',
			[
				'label' => esc_html__( 'Size', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'size_units' => [ '%', 'px' ],
				'range' => [
					'%' => [
						'min' => 0,
						'max' => 100,
						'step' => 10,
					],
					'px' => [
						'min' => 0,
						'max' => 800,
						'step' => 50,
					],
				],
				'default' => [
					'unit' => 'px',
					'size' => 500,
				],
				'tablet_default' => [
					'unit' => 'px',
					'size' => 500,
				],
				'mobile_default' => [
					'unit' => 'px',
					'size' => 500,
				],
				'selectors' => [
					'{{WRAPPER}}' => '--width: {{SIZE}}{{UNIT}};',
				],
			]
		);

		$this->add_responsive_control(
			'rotation',
			[
				'label' => esc_html__( 'Rotate', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'size_units' => [ 'deg' ],
				'range' => [
					'deg' => [
						'min' => 0,
						'max' => 360,
						'step' => 1,
					],
				],
				'default' => [
					'unit' => 'deg',
					'size' => '',
				],
				'tablet_default' => [
					'unit' => 'deg',
					'size' => '',
				],
				'mobile_default' => [
					'unit' => 'deg',
					'size' => '',
				],
				'selectors' => [
					'{{WRAPPER}}' => '--rotate: {{SIZE}}{{UNIT}};',
				],
			]
		);

		$this->add_control(
			'text_heading',
			[
				'label' => esc_html__( 'Text', 'elementor' ),
				'type' => Controls_Manager::HEADING,
			]
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			[
				'name' => 'text_typography',
				'selector' => '{{WRAPPER}}',
				'global' => [
					'default' => Global_Typography::TYPOGRAPHY_TEXT,
				],
				'fields_options' => [
					'font_size' => [
						'default' => [
							'size' => '20',
							'unit' => 'px',
						],
						'size_units' => [ 'px' ],
					],
					// Text decoration isn't an inherited property, so it's required to explicitly
					// target the specific `textPath` element.
					'text_decoration' => [
						'selectors' => [
							'{{WRAPPER}} textPath' => 'text-decoration: {{VALUE}};',
						],
					],
				],
			]
		);

		$this->add_responsive_control(
			'word_spacing',
			[
				'label' => esc_html__( 'Word Spacing', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'size_units' => [ 'px' ],
				'range' => [
					'px' => [
						'min' => -20,
						'max' => 20,
						'step' => 1,
					],
				],
				'default' => [
					'unit' => 'px',
					'size' => '',
				],
				'tablet_default' => [
					'unit' => 'px',
					'size' => '',
				],
				'mobile_default' => [
					'unit' => 'px',
					'size' => '',
				],
				'selectors' => [
					'{{WRAPPER}}' => '--word-spacing: {{SIZE}}{{UNIT}};',
				],
			]
		);

		$this->add_control(
			'start_point',
			[
				'label' => esc_html__( 'Starting Point', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'size_units' => [ '%' ],
				'range' => [
					'px' => [
						'min' => -100,
						'max' => 100,
						'step' => 1,
					],
				],
				'default' => [
					'unit' => '%',
					'size' => 0,
				],
				'frontend_available' => true,
				'render_type' => 'none',
			]
		);

		$this->start_controls_tabs( 'text_style' );

		/**
		 * Normal tab.
		 */
		$this->start_controls_tab(
			'text_normal',
			[
				'label' => esc_html__( 'Normal', 'elementor' ),
			]
		);

		$this->add_control(
			'text_color_normal',
			[
				'label' => esc_html__( 'Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'selectors' => [
					'{{WRAPPER}}' => '--text-color: {{VALUE}};',
				],
			]
		);

		$this->end_controls_tab();

		/**
		 * Hover tab.
		 */
		$this->start_controls_tab(
			'text_hover',
			[
				'label' => esc_html__( 'Hover', 'elementor' ),
			]
		);

		$this->add_control(
			'text_color_hover',
			[
				'label' => esc_html__( 'Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'selectors' => [
					'{{WRAPPER}}' => '--text-color-hover: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'hover_animation',
			[
				'label' => esc_html__( 'Hover Animation', 'elementor' ),
				'type' => Controls_Manager::HOVER_ANIMATION,
			]
		);

		$this->add_control(
			'hover_transition',
			[
				'label' => esc_html__( 'Transition Duration', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'default' => [
					'size' => 0.3,
					'unit' => 's',
				],
				'range' => [
					's' => [
						'min' => 0,
						'max' => 3,
						'step' => 0.1,
					],
				],
				'selectors' => [
					'{{WRAPPER}}' => '--transition: {{SIZE}}{{UNIT}}',
				],
			]
		);

		$this->end_controls_tab();

		$this->end_controls_tabs();

		$this->end_controls_section();

		/**
		 * Path styling section.
		 */
		$this->start_controls_section(
			'section_style_path',
			[
				'label' => esc_html__( 'Path', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
				'condition' => [
					'show_path!' => '',
				],
			]
		);

		$this->start_controls_tabs( 'path_style' );

		/**
		 * Normal tab.
		 */
		$this->start_controls_tab(
			'path_normal',
			[
				'label' => esc_html__( 'Normal', 'elementor' ),
			]
		);

		$this->add_control(
			'path_fill_normal',
			[
				'label' => esc_html__( 'Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'selectors' => [
					'{{WRAPPER}}' => '--path-fill: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'stroke_heading_normal',
			[
				'label' => esc_html__( 'Stroke', 'elementor' ),
				'type' => Controls_Manager::HEADING,
			]
		);

		$this->add_control(
			'stroke_color_normal',
			[
				'label' => esc_html__( 'Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => self::DEFAULT_PATH_FILL,
				'selectors' => [
					'{{WRAPPER}}' => '--stroke-color: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'stroke_width_normal',
			[
				'label' => esc_html__( 'Width', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'default' => [
					'size' => 1,
					'unit' => 'px',
				],
				'range' => [
					'px' => [
						'min' => 0,
						'max' => 20,
						'step' => 1,
					],
				],
				'selectors' => [
					'{{WRAPPER}}' => '--stroke-width: {{SIZE}}{{UNIT}}',
				],
			]
		);

		$this->end_controls_tab();

		/**
		 * Hover tab.
		 */
		$this->start_controls_tab(
			'path_hover',
			[
				'label' => esc_html__( 'Hover', 'elementor' ),
			]
		);

		$this->add_control(
			'path_fill_hover',
			[
				'label' => esc_html__( 'Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'selectors' => [
					'{{WRAPPER}}' => '--path-fill-hover: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'stroke_heading_hover',
			[
				'label' => esc_html__( 'Stroke', 'elementor' ),
				'type' => Controls_Manager::HEADING,
			]
		);

		$this->add_control(
			'stroke_color_hover',
			[
				'label' => esc_html__( 'Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'selectors' => [
					'{{WRAPPER}}' => '--stroke-color-hover: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'stroke_width_hover',
			[
				'label' => esc_html__( 'Width', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'default' => [
					'size' => '',
					'unit' => 'px',
				],
				'range' => [
					'px' => [
						'min' => 0,
						'max' => 20,
						'step' => 1,
					],
				],
				'selectors' => [
					'{{WRAPPER}}' => '--stroke-width-hover: {{SIZE}}{{UNIT}}',
				],
			]
		);

		$this->add_control(
			'stroke_transition',
			[
				'label' => esc_html__( 'Transition Duration', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'default' => [
					'size' => 0.3,
					'unit' => 's',
				],
				'range' => [
					's' => [
						'min' => 0,
						'max' => 3,
						'step' => 0.1,
					],
				],
				'selectors' => [
					'{{WRAPPER}}' => '--stroke-transition: {{SIZE}}{{UNIT}}',
				],
			]
		);

		$this->end_controls_tab();

		$this->end_controls_tabs();

		$this->end_controls_section();
	}

	/**
	 * Register Text Path widget controls.
	 *
	 * Adds different input fields to allow the user to change and customize the widget settings.
	 *
	 * @access protected
	 */
	protected function register_controls() {
		$this->register_content_tab();
		$this->register_style_tab();
	}

	/**
	 * Render Text Path widget output on the frontend.
	 *
	 * Written in PHP and used to generate the final HTML.
	 *
	 * @access protected
	 */
	protected function render() {
		$settings = $this->get_settings_for_display();

		// Get the shape SVG markup.
		if ( 'custom' !== $settings['path'] ) {
			$path_svg = Shapes_Module::get_path_svg( $settings['path'] );
		} else {
			$path = get_attached_file( $settings['custom_path']['id'] );
			$path_svg = Shapes_Module::read_svg( $path );
		}

		// Add Text Path text.
		$this->add_render_attribute( 'text_path', 'class', 'e-text-path' );

		// Add hover animation.
		if ( ! empty( $settings['hover_animation'] ) ) {
			$this->add_render_attribute( 'text_path', 'class', 'elementor-animation-' . $settings['hover_animation'] );
		}

		// Render.
		?>
		<div <?php $this->print_render_attribute_string( 'text_path' ); ?> data-text="<?php echo esc_attr( $settings['text'] ); ?>">
			<?php Utils::print_wp_kses_extended( $path_svg, [ 'svg' ] ); ?>
		</div>
		<?php
	}
}
modules/shapes/module.php000064400000003614151327220420011477 0ustar00<?php

namespace Elementor\Modules\Shapes;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Module extends \Elementor\Core\Base\Module {

	/**
	 * Return a translated user-friendly list of the available SVG shapes.
	 *
	 * @param bool $add_custom Determine if the output should include the `Custom` option.
	 *
	 * @return array List of paths.
	 */
	public static function get_paths( $add_custom = true ) {
		$paths = [
			'wave' => esc_html__( 'Wave', 'elementor' ),
			'arc' => esc_html__( 'Arc', 'elementor' ),
			'circle' => esc_html__( 'Circle', 'elementor' ),
			'line' => esc_html__( 'Line', 'elementor' ),
			'oval' => esc_html__( 'Oval', 'elementor' ),
			'spiral' => esc_html__( 'Spiral', 'elementor' ),
		];

		if ( $add_custom ) {
			$paths['custom'] = esc_html__( 'Custom', 'elementor' );
		}

		return $paths;
	}

	/**
	 * Read SVG contents.
	 *
	 * @param $path - The SVG file path.
	 *
	 * @return false|string
	 */
	public static function read_svg( $path ) {
		if ( ! $path || ! is_file( $path ) || ! is_readable( $path ) ) {
			return '';
		}

		// Get the file contents only if it's svg.
		if ( 'svg' !== pathinfo( $path, PATHINFO_EXTENSION ) ) {
			return '';
		}

		$svg = file_get_contents( $path );

		return $svg ? $svg : '';
	}

	/**
	 * Gets an SVG path name as a parameter and returns its SVG markup from the `svg-paths`
	 * folder under the assets directory.
	 *
	 * @param $path string Path name.
	 *
	 * @return string The path SVG markup.
	 */
	public static function get_path_svg( $path ) {
		$file_name = ELEMENTOR_ASSETS_PATH . 'svg-paths/' . $path . '.svg';

		return static::read_svg( $file_name );
	}

	/**
	 * Get the module's associated widgets.
	 *
	 * @return string[]
	 */
	protected function get_widgets() {
		return [
			'TextPath',
		];
	}

	/**
	 * Retrieve the module name.
	 *
	 * @return string
	 */
	public function get_name() {
		return 'shapes';
	}
}
modules/compatibility-tag/compatibility-tag-report.php000064400000007613151327220420017307 0ustar00<?php
namespace Elementor\Modules\CompatibilityTag;

use Elementor\Plugin;
use Elementor\Core\Utils\Version;
use Elementor\Core\Utils\Collection;
use Elementor\Modules\System_Info\Reporters\Base;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

class Compatibility_Tag_Report extends Base {
	/**
	 * @var Compatibility_Tag
	 */
	protected $compatibility_tag_service;

	/**
	 * @var Version
	 */
	protected $plugin_version;

	/**
	 * @var string
	 */
	protected $plugin_label;

	/**
	 * @var array
	 */
	protected $plugins_to_check;

	/**
	 * Compatibility_Tag_Report constructor.
	 *
	 * @param $properties
	 */
	public function __construct( $properties ) {
		parent::__construct( $properties );

		$this->compatibility_tag_service = $this->_properties['fields']['compatibility_tag_service'];
		$this->plugin_label = $this->_properties['fields']['plugin_label'];
		$this->plugin_version = $this->_properties['fields']['plugin_version'];
		$this->plugins_to_check = $this->_properties['fields']['plugins_to_check'];
	}

	/**
	 * The title of the report
	 *
	 * @return string
	 */
	public function get_title() {
		return $this->plugin_label . ' - Compatibility Tag';
	}

	/**
	 * Report fields
	 *
	 * @return string[]
	 */
	public function get_fields() {
		return [
			'report_data' => '',
		];
	}

	/**
	 * Report data.
	 *
	 * @return string[]
	 * @throws \Exception
	 */
	public function get_report_data() {
		$compatibility_status = $this->compatibility_tag_service->check(
			$this->plugin_version,
			$this->plugins_to_check
		);

		if ( 'html' === $this->_properties['format'] ) {
			$compatibility_status = $this->get_html_from_compatibility_status( $compatibility_status );
		} elseif ( 'raw' === $this->_properties['format'] ) {
			$compatibility_status = $this->get_raw_from_compatibility_status( $compatibility_status );
		}

		return [
			'value' => $compatibility_status,
		];
	}

	/**
	 * Merge compatibility status with the plugins data.
	 *
	 * @param array $compatibility_status
	 *
	 * @return Collection
	 */
	private function merge_compatibility_status_with_plugins( array $compatibility_status ) {
		$labels = $this->get_report_labels();

		$compatibility_status = ( new Collection( $compatibility_status ) )
			->map( function ( $value ) use ( $labels ) {
				$status = isset( $labels[ $value ] ) ? $labels[ $value ] : __( 'Unknown', 'elementor' );

				return [ 'compatibility_status' => $status ];
			} );

		return Plugin::$instance->wp
			->get_plugins()
			->only( $compatibility_status->keys() )
			->merge_recursive( $compatibility_status );
	}

	/**
	 * Format compatibility status into HTML.
	 *
	 * @param array $compatibility_status
	 *
	 * @return string
	 */
	private function get_html_from_compatibility_status( array $compatibility_status ) {
		return $this->merge_compatibility_status_with_plugins( $compatibility_status )
			->map( function ( array $plugin ) {
				return "<tr><td> {$plugin['Name']} </td><td> {$plugin['compatibility_status']} </td></tr>";
			} )
			->implode( '' );
	}

	/**
	 * Format compatibility status into raw string.
	 *
	 * @param array $compatibility_status
	 *
	 * @return string
	 */
	private function get_raw_from_compatibility_status( array $compatibility_status ) {
		return PHP_EOL . $this->merge_compatibility_status_with_plugins( $compatibility_status )
			->map( function ( array $plugin ) {
				return "\t{$plugin['Name']}: {$plugin['compatibility_status']}";
			} )
			->implode( PHP_EOL );
	}

	/**
	 * @return array
	 */
	private function get_report_labels() {
		return [
			Compatibility_Tag::COMPATIBLE   => __( 'Compatible', 'elementor' ),
			Compatibility_Tag::INCOMPATIBLE => __( 'Incompatible', 'elementor' ),
			Compatibility_Tag::HEADER_NOT_EXISTS => __( 'Compatibility not specified', 'elementor' ),
			Compatibility_Tag::INVALID_VERSION => __( 'Compatibility unknown', 'elementor' ),
			Compatibility_Tag::PLUGIN_NOT_EXISTS => __( 'Error', 'elementor' ),
		];
	}
}
modules/compatibility-tag/base-module.php000064400000007320151327220420014544 0ustar00<?php
namespace Elementor\Modules\CompatibilityTag;

use Elementor\Plugin;
use Elementor\Core\Utils\Version;
use Elementor\Core\Utils\Collection;
use Elementor\Core\Base\Module as BaseModule;
use Elementor\Modules\System_Info\Module as System_Info;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

abstract class Base_Module extends BaseModule {
	const MODULE_NAME = 'compatibility-tag';

	/**
	 * @var Compatibility_Tag
	 */
	private $compatibility_tag_service;

	/**
	 * @return string
	 */
	public function get_name() {
		return static::MODULE_NAME;
	}

	/**
	 * @return Compatibility_Tag
	 */
	private function get_compatibility_tag_service() {
		if ( ! $this->compatibility_tag_service ) {
			$this->compatibility_tag_service = new Compatibility_Tag( $this->get_plugin_header() );
		}

		return $this->compatibility_tag_service;
	}

	/**
	 * Add allowed headers to plugins.
	 *
	 * @param array $headers
	 * @param       $compatibility_tag_header
	 *
	 * @return array
	 */
	protected function enable_elementor_headers( array $headers, $compatibility_tag_header ) {
		$headers[] = $compatibility_tag_header;

		return $headers;
	}

	/**
	 * @return Collection
	 */
	protected function get_plugins_to_check() {
		return $this->get_plugins_with_header();
	}

	/**
	 * Append a compatibility message to the update plugin warning.
	 *
	 * @param array $args
	 *
	 * @throws \Exception
	 */
	protected function on_plugin_update_message( array $args ) {
		$new_version = Version::create_from_string( $args['new_version'] );

		if ( $new_version->compare( '=', $args['Version'], Version::PART_MAJOR_2 ) ) {
			return;
		}

		$plugins = $this->get_plugins_to_check();
		$plugins_compatibility = $this->get_compatibility_tag_service()->check( $new_version, $plugins->keys() );

		$plugins = $plugins->filter( function ( $data, $plugin_name ) use ( $plugins_compatibility ) {
			return Compatibility_Tag::COMPATIBLE !== $plugins_compatibility[ $plugin_name ];
		} );

		if ( $plugins->is_empty() ) {
			return;
		}

		include __DIR__ . '/views/plugin-update-message-compatibility.php';
	}

	/**
	 * Get all plugins with specific header.
	 *
	 * @return Collection
	 */
	private function get_plugins_with_header() {
		return Plugin::$instance->wp
			->get_plugins()
			->filter( function ( array $plugin ) {
				return ! empty( $plugin[ $this->get_plugin_header() ] );
			} );
	}

	/**
	 * @return string
	 */
	abstract protected function get_plugin_header();

	/**
	 * @return string
	 */
	abstract protected function get_plugin_label();

	/**
	 * @return string
	 */
	abstract protected function get_plugin_name();

	/**
	 * @return string
	 */
	abstract protected function get_plugin_version();

	/**
	 * Base_Module constructor.
	 *
	 * @throws \Exception
	 */
	public function __construct() {
		add_filter( 'extra_plugin_headers', function ( array $headers ) {
			return $this->enable_elementor_headers( $headers, $this->get_plugin_header() );
		} );

		add_action( 'in_plugin_update_message-' . $this->get_plugin_name(), function ( array $args ) {
			$this->on_plugin_update_message( $args );
		}, 11 /* After the warning message for backup */ );

		add_action( 'admin_init', function () {
			System_Info::add_report( $this->get_plugin_name() . '_compatibility', [
				'file_name' => __DIR__ . '/compatibility-tag-report.php',
				'class_name' => __NAMESPACE__ . '\Compatibility_Tag_Report',
				'fields' => [
					'compatibility_tag_service' => $this->get_compatibility_tag_service(),
					'plugin_label' => $this->get_plugin_label(),
					'plugin_version' => Version::create_from_string( $this->get_plugin_version() ),
					'plugins_to_check' => $this->get_plugins_to_check()
						->only( get_option( 'active_plugins' ) )
						->keys(),
				],
			] );
		} );
	}
}
modules/compatibility-tag/module.php000064400000003251151327220420013633 0ustar00<?php
namespace Elementor\Modules\CompatibilityTag;

use Elementor\Plugin;
use Elementor\Core\Utils\Version;
use Elementor\Core\Utils\Collection;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Inspired By WooCommerce.
 *
 * @link  https://github.com/woocommerce/woocommerce/blob/master/includes/admin/plugin-updates/class-wc-plugin-updates.php
 */
class Module extends Base_Module {
	/**
	 * This is the header used by extensions to show testing.
	 *
	 * @var string
	 */
	const PLUGIN_VERSION_TESTED_HEADER = 'Elementor tested up to';

	/**
	 * @return string
	 */
	protected function get_plugin_header() {
		return static::PLUGIN_VERSION_TESTED_HEADER;
	}

	/**
	 * @return string
	 */
	protected function get_plugin_label() {
		return esc_html__( 'Elementor', 'elementor' );
	}

	/**
	 * @return string
	 */
	protected function get_plugin_name() {
		return ELEMENTOR_PLUGIN_BASE;
	}

	/**
	 * @return string
	 */
	protected function get_plugin_version() {
		return ELEMENTOR_VERSION;
	}

	/**
	 * @return Collection
	 */
	protected function get_plugins_to_check() {
		return parent::get_plugins_to_check()
			->merge( $this->get_plugins_with_plugin_title_in_their_name() );
	}

	/**
	 * Get all the plugins that has the name of the current plugin in their name.
	 *
	 * @return Collection
	 */
	private function get_plugins_with_plugin_title_in_their_name() {
		return Plugin::$instance->wp
			->get_plugins()
			->except( [
				'elementor/elementor.php',
				'elementor-beta/elementor-beta.php',
				'block-builder/block-builder.php',
			] )
			->filter( function ( array $data ) {
				return false !== strpos( strtolower( $data['Name'] ), 'elementor' );
			} );
	}
}
modules/compatibility-tag/views/plugin-update-message-compatibility.php000064400000004255151327220420022557 0ustar00<?php
use Elementor\Core\Utils\Version;
use Elementor\Core\Utils\Collection;
use Elementor\Modules\CompatibilityTag\Base_Module;
use Elementor\Modules\CompatibilityTag\Compatibility_Tag;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Those variables were declared in 'in_plugin_update_message' method that included the current view file.
 *
 * @var Base_Module $this
 * @var Version $new_version
 * @var Collection $plugins
 * @var array $plugins_compatibility
 */
?>
<hr class="e-major-update-warning__separator" />
<div class="e-major-update-warning">
	<div class="e-major-update-warning__icon">
		<i class="eicon-info-circle"></i>
	</div>
	<div>
		<div class="e-major-update-warning__message">
			<strong>
				<?php echo esc_html__( 'Compatibility Alert', 'elementor' ); ?>
			</strong> -
			<?php
			/* translators: 1: Plugin name, 2: Plugin version. */
			echo sprintf(
				esc_html__( 'Some of the plugins you’re using have not been tested with the latest version of %1$s (%2$s). To avoid issues, make sure they are all up to date and compatible before updating %1$s.', 'elementor' ),
				esc_html( $this->get_plugin_label() ),
				$new_version->__toString() // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
			);
			?>
		</div>
		<br />
		<table class="e-compatibility-update-table">
			<tr>
				<th><?php echo esc_html__( 'Plugin', 'elementor' ); ?></th>
				<th><?php
					/* translators: %s: Elementor plugin name. */
					echo sprintf( esc_html__( 'Tested up to %s version', 'elementor' ), esc_html( $this->get_plugin_label() ) );
				?></th>
			</tr>
			<?php foreach ( $plugins as $plugin_name => $plugin_data ) : ?>
				<?php
				if (
				in_array( $plugins_compatibility[ $plugin_name ], [
					Compatibility_Tag::PLUGIN_NOT_EXISTS,
					Compatibility_Tag::HEADER_NOT_EXISTS,
					Compatibility_Tag::INVALID_VERSION,
				], true )
				) {
					$plugin_data[ $this->get_plugin_header() ] = esc_html__( 'Unknown', 'elementor' );
				}
				?>

				<tr>
					<td><?php echo esc_html( $plugin_data['Name'] ); ?></td>
					<td><?php echo esc_html( $plugin_data[ $this->get_plugin_header() ] ); ?></td>
				</tr>
			<?php endforeach ?>
		</table>
	</div>
</div>
modules/compatibility-tag/compatibility-tag.php000064400000003707151327220420015776 0ustar00<?php
namespace Elementor\Modules\CompatibilityTag;

use Elementor\Plugin;
use Elementor\Core\Utils\Version;
use Elementor\Core\Base\Base_Object;
use Elementor\Core\Utils\Collection;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

class Compatibility_Tag extends Base_Object {
	const PLUGIN_NOT_EXISTS = 'plugin_not_exists';
	const HEADER_NOT_EXISTS = 'header_not_exists';
	const INVALID_VERSION = 'invalid_version';
	const INCOMPATIBLE = 'incompatible';
	const COMPATIBLE = 'compatible';

	/**
	 * @var string Holds the header that should be checked.
	 */
	private $header;

	/**
	 * Compatibility_Tag constructor.
	 *
	 * @param string $header
	 */
	public function __construct( $header ) {
		$this->header = $header;
	}

	/**
	 * Return if plugins is compatible or not.
	 *
	 * @param Version $version
	 * @param array   $plugins_names
	 *
	 * @return array
	 * @throws \Exception
	 */
	public function check( Version $version, array $plugins_names ) {
		return ( new Collection( $plugins_names ) )
			->map_with_keys( function ( $plugin_name ) use ( $version ) {
				return [ $plugin_name => $this->is_compatible( $version, $plugin_name ) ];
			} )
			->all();
	}

	/**
	 * Check single plugin if is compatible or not.
	 *
	 * @param Version $version
	 * @param         $plugin_name
	 *
	 * @return string
	 * @throws \Exception
	 */
	private function is_compatible( Version $version, $plugin_name ) {
		$plugins = Plugin::$instance->wp->get_plugins();

		if ( ! isset( $plugins[ $plugin_name ] ) ) {
			return self::PLUGIN_NOT_EXISTS;
		}

		$requested_plugin = $plugins[ $plugin_name ];

		if ( empty( $requested_plugin[ $this->header ] ) ) {
			return self::HEADER_NOT_EXISTS;
		}

		if ( ! Version::is_valid_version( $requested_plugin[ $this->header ] ) ) {
			return self::INVALID_VERSION;
		}

		if ( $version->compare( '>', $requested_plugin[ $this->header ], Version::PART_MAJOR_2 ) ) {
			return self::INCOMPATIBLE;
		}

		return self::COMPATIBLE;
	}
}
modules/page-templates/module.php000064400000026145151327220420013130 0ustar00<?php
namespace Elementor\Modules\PageTemplates;

use Elementor\Controls_Manager;
use Elementor\Core\Base\Document;
use Elementor\Core\Base\Module as BaseModule;
use Elementor\Core\Kits\Documents\Kit;
use Elementor\Plugin;
use Elementor\Utils;
use Elementor\Core\DocumentTypes\PageBase as PageBase;
use Elementor\Modules\Library\Documents\Page as LibraryPageDocument;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

/**
 * Elementor page templates module.
 *
 * Elementor page templates module handler class is responsible for registering
 * and managing Elementor page templates modules.
 *
 * @since 2.0.0
 */
class Module extends BaseModule {

	/**
	 * The of the theme.
	 */
	const TEMPLATE_THEME = 'elementor_theme';

	/**
	 * Elementor Canvas template name.
	 */
	const TEMPLATE_CANVAS = 'elementor_canvas';

	/**
	 * Elementor Header & Footer template name.
	 */
	const TEMPLATE_HEADER_FOOTER = 'elementor_header_footer';

	/**
	 * Print callback.
	 *
	 * Holds the page template callback content.
	 *
	 * @since 2.0.0
	 * @access protected
	 *
	 * @var callable
	 */
	protected $print_callback;

	/**
	 * Get module name.
	 *
	 * Retrieve the page templates module name.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @return string Module name.
	 */
	public function get_name() {
		return 'page-templates';
	}

	/**
	 * Template include.
	 *
	 * Update the path for the Elementor Canvas template.
	 *
	 * Fired by `template_include` filter.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @param string $template The path of the template to include.
	 *
	 * @return string The path of the template to include.
	 */
	public function template_include( $template ) {
		if ( is_singular() ) {
			$document = Plugin::$instance->documents->get_doc_for_frontend( get_the_ID() );

			if ( $document && $document::get_property( 'support_wp_page_templates' ) ) {
				$page_template = $document->get_meta( '_wp_page_template' );

				$template_path = $this->get_template_path( $page_template );

				if ( self::TEMPLATE_THEME !== $page_template && ! $template_path && $document->is_built_with_elementor() ) {
					$kit_default_template = Plugin::$instance->kits_manager->get_current_settings( 'default_page_template' );
					$template_path = $this->get_template_path( $kit_default_template );
				}

				if ( $template_path ) {
					$template = $template_path;

					Plugin::$instance->inspector->add_log( 'Page Template', Plugin::$instance->inspector->parse_template_path( $template ), $document->get_edit_url() );
				}
			}
		}

		return $template;
	}

	/**
	 * Add WordPress templates.
	 *
	 * Adds Elementor templates to all the post types that support
	 * Elementor.
	 *
	 * Fired by `init` action.
	 *
	 * @since 2.0.0
	 * @access public
	 */
	public function add_wp_templates_support() {
		$post_types = get_post_types_by_support( 'elementor' );

		foreach ( $post_types as $post_type ) {
			add_filter( "theme_{$post_type}_templates", [ $this, 'add_page_templates' ], 10, 4 );
		}
	}

	/**
	 * Add page templates.
	 *
	 * Add the Elementor page templates to the theme templates.
	 *
	 * Fired by `theme_{$post_type}_templates` filter.
	 *
	 * @since 2.0.0
	 * @access public
	 * @static
	 *
	 * @param array $page_templates Array of page templates. Keys are filenames,
	 *                              checks are translated names.
	 *
	 * @param \WP_Theme $wp_theme
	 * @param \WP_Post $post
	 *
	 * @return array Page templates.
	 */
	public function add_page_templates( $page_templates, $wp_theme, $post ) {
		if ( $post ) {
			// FIX ME: Gutenberg not send $post as WP_Post object, just the post ID.
			$post_id = ! empty( $post->ID ) ? $post->ID : $post;

			$document = Plugin::$instance->documents->get( $post_id );
			if ( $document && ! $document::get_property( 'support_wp_page_templates' ) ) {
				return $page_templates;
			}
		}

		$page_templates = [
			self::TEMPLATE_CANVAS => _x( 'Elementor Canvas', 'Page Template', 'elementor' ),
			self::TEMPLATE_HEADER_FOOTER => _x( 'Elementor Full Width', 'Page Template', 'elementor' ),
			self::TEMPLATE_THEME => _x( 'Theme', 'Page Template', 'elementor' ),
		] + $page_templates;

		return $page_templates;
	}

	/**
	 * Set print callback.
	 *
	 * Set the page template callback.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @param callable $callback
	 */
	public function set_print_callback( $callback ) {
		$this->print_callback = $callback;
	}

	/**
	 * Print callback.
	 *
	 * Prints the page template content using WordPress loop.
	 *
	 * @since 2.0.0
	 * @access public
	 */
	public function print_callback() {
		while ( have_posts() ) :
			the_post();
			the_content();
		endwhile;
	}

	/**
	 * Print content.
	 *
	 * Prints the page template content.
	 *
	 * @since 2.0.0
	 * @access public
	 */
	public function print_content() {
		if ( ! $this->print_callback ) {
			$this->print_callback = [ $this, 'print_callback' ];
		}

		call_user_func( $this->print_callback );
	}

	/**
	 * Get page template path.
	 *
	 * Retrieve the path for any given page template.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @param string $page_template The page template name.
	 *
	 * @return string Page template path.
	 */
	public function get_template_path( $page_template ) {
		$template_path = '';
		switch ( $page_template ) {
			case self::TEMPLATE_CANVAS:
				$template_path = __DIR__ . '/templates/canvas.php';
				break;
			case self::TEMPLATE_HEADER_FOOTER:
				$template_path = __DIR__ . '/templates/header-footer.php';
				break;
		}

		return $template_path;
	}

	/**
	 * Register template control.
	 *
	 * Adds custom controls to any given document.
	 *
	 * Fired by `update_post_metadata` action.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @param Document $document The document instance.
	 */
	public function action_register_template_control( $document ) {
		if ( $document instanceof PageBase || $document instanceof LibraryPageDocument ) {
			$this->register_template_control( $document );
		}
	}

	/**
	 * Register template control.
	 *
	 * Adds custom controls to any given document.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @param Document $document   The document instance.
	 * @param string   $control_id Optional. The control ID. Default is `template`.
	 */
	public function register_template_control( $document, $control_id = 'template' ) {
		if ( ! Utils::is_cpt_custom_templates_supported() ) {
			return;
		}

		require_once ABSPATH . '/wp-admin/includes/template.php';

		$document->start_injection( [
			'of' => 'post_status',
			'fallback' => [
				'of' => 'post_title',
			],
		] );

		$control_options = [
			'options' => array_flip( get_page_templates( null, $document->get_main_post()->post_type ) ),
		];

		$this->add_template_controls( $document, $control_id, $control_options );

		$document->end_injection();
	}

	// The $options variable is an array of $control_options to overwrite the default
	public function add_template_controls( Document $document, $control_id, $control_options ) {
		// Default Control Options
		$default_control_options = [
			'label' => esc_html__( 'Page Layout', 'elementor' ),
			'type' => Controls_Manager::SELECT,
			'default' => 'default',
			'options' => [
				'default' => esc_html__( 'Default', 'elementor' ),
			],
		];

		$control_options = array_replace_recursive( $default_control_options, $control_options );

		$document->add_control(
			$control_id,
			$control_options
		);

		$document->add_control(
			$control_id . '_default_description',
			[
				'type' => Controls_Manager::RAW_HTML,
				'raw' => '<b>' . esc_html__( 'The default page template as defined in Elementor Panel → Hamburger Menu → Site Settings.', 'elementor' ) . '</b>',
				'content_classes' => 'elementor-descriptor',
				'condition' => [
					$control_id => 'default',
				],
			]
		);

		$document->add_control(
			$control_id . '_theme_description',
			[
				'type' => Controls_Manager::RAW_HTML,
				'raw' => '<b>' . esc_html__( 'Default Page Template from your theme.', 'elementor' ) . '</b>',
				'content_classes' => 'elementor-descriptor',
				'condition' => [
					$control_id => self::TEMPLATE_THEME,
				],
			]
		);

		$document->add_control(
			$control_id . '_canvas_description',
			[
				'type' => Controls_Manager::RAW_HTML,
				'raw' => '<b>' . esc_html__( 'No header, no footer, just Elementor', 'elementor' ) . '</b>',
				'content_classes' => 'elementor-descriptor',
				'condition' => [
					$control_id => self::TEMPLATE_CANVAS,
				],
			]
		);

		$document->add_control(
			$control_id . '_header_footer_description',
			[
				'type' => Controls_Manager::RAW_HTML,
				'raw' => '<b>' . esc_html__( 'This template includes the header, full-width content and footer', 'elementor' ) . '</b>',
				'content_classes' => 'elementor-descriptor',
				'condition' => [
					$control_id => self::TEMPLATE_HEADER_FOOTER,
				],
			]
		);

		if ( $document instanceof Kit ) {
			$document->add_control(
				'reload_preview_description',
				[
					'type' => Controls_Manager::RAW_HTML,
					'raw' => esc_html__( 'Changes will be reflected in the preview only after the page reloads.', 'elementor' ),
					'content_classes' => 'elementor-descriptor',
				]
			);
		}
	}

	/**
	 * Filter metadata update.
	 *
	 * Filters whether to update metadata of a specific type.
	 *
	 * Elementor don't allow WordPress to update the parent page template
	 * during `wp_update_post`.
	 *
	 * Fired by `update_{$meta_type}_metadata` filter.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @param bool   $check     Whether to allow updating metadata for the given type.
	 * @param int    $object_id Object ID.
	 * @param string $meta_key  Meta key.
	 *
	 * @return bool Whether to allow updating metadata of a specific type.
	 */
	public function filter_update_meta( $check, $object_id, $meta_key ) {
		if ( '_wp_page_template' === $meta_key && Plugin::$instance->common ) {
			/** @var \Elementor\Core\Common\Modules\Ajax\Module $ajax */
			$ajax = Plugin::$instance->common->get_component( 'ajax' );

			$ajax_data = $ajax->get_current_action_data();

			$is_autosave_action = $ajax_data && 'save_builder' === $ajax_data['action'] && Document::STATUS_AUTOSAVE === $ajax_data['data']['status'];

			// Don't allow WP to update the parent page template.
			// (during `wp_update_post` from page-settings or save_plain_text).
			if ( $is_autosave_action && ! wp_is_post_autosave( $object_id ) && Document::STATUS_DRAFT !== get_post_status( $object_id ) ) {
				$check = false;
			}
		}

		return $check;
	}

	/**
	 * Support `wp_body_open` action, available since WordPress 5.2.
	 *
	 * @since 2.7.0
	 * @access public
	 */
	public static function body_open() {
		if ( function_exists( 'wp_body_open' ) ) {
			wp_body_open();
		} else {
			do_action( 'wp_body_open' );
		}
	}

	/**
	 * Page templates module constructor.
	 *
	 * Initializing Elementor page templates module.
	 *
	 * @since 2.0.0
	 * @access public
	 */
	public function __construct() {
		add_action( 'init', [ $this, 'add_wp_templates_support' ] );

		add_filter( 'template_include', [ $this, 'template_include' ], 11 /* After Plugins/WooCommerce */ );

		add_action( 'elementor/documents/register_controls', [ $this, 'action_register_template_control' ] );

		add_filter( 'update_post_metadata', [ $this, 'filter_update_meta' ], 10, 3 );
	}
}
modules/page-templates/templates/canvas.php000064400000002517151327220420015111 0ustar00<?php

use Elementor\Utils;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

\Elementor\Plugin::$instance->frontend->add_body_class( 'elementor-template-canvas' );

?>
<!DOCTYPE html>
<html <?php language_attributes(); ?>>
<head>
	<meta charset="<?php bloginfo( 'charset' ); ?>">
	<?php if ( ! current_theme_supports( 'title-tag' ) ) : ?>
		<title><?php echo wp_get_document_title(); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?></title>
	<?php endif; ?>
	<?php wp_head(); ?>
	<?php

	// Keep the following line after `wp_head()` call, to ensure it's not overridden by another templates.
	Utils::print_unescaped_internal_string( Utils::get_meta_viewport( 'canvas' ) );
	?>
</head>
<body <?php body_class(); ?>>
	<?php
	Elementor\Modules\PageTemplates\Module::body_open();
	/**
	 * Before canvas page template content.
	 *
	 * Fires before the content of Elementor canvas page template.
	 *
	 * @since 1.0.0
	 */
	do_action( 'elementor/page_templates/canvas/before_content' );

	\Elementor\Plugin::$instance->modules_manager->get_modules( 'page-templates' )->print_content();

	/**
	 * After canvas page template content.
	 *
	 * Fires after the content of Elementor canvas page template.
	 *
	 * @since 1.0.0
	 */
	do_action( 'elementor/page_templates/canvas/after_content' );

	wp_footer();
	?>
	</body>
</html>
modules/page-templates/templates/header-footer.php000064400000001332151327220420016354 0ustar00<?php

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

\Elementor\Plugin::$instance->frontend->add_body_class( 'elementor-template-full-width' );

get_header();
/**
 * Before Header-Footer page template content.
 *
 * Fires before the content of Elementor Header-Footer page template.
 *
 * @since 2.0.0
 */
do_action( 'elementor/page_templates/header-footer/before_content' );

\Elementor\Plugin::$instance->modules_manager->get_modules( 'page-templates' )->print_content();

/**
 * After Header-Footer page template content.
 *
 * Fires after the content of Elementor Header-Footer page template.
 *
 * @since 2.0.0
 */
do_action( 'elementor/page_templates/header-footer/after_content' );

get_footer();
modules/elements-color-picker/module.php000064400000002706151327220420014420 0ustar00<?php
namespace Elementor\Modules\ElementsColorPicker;

use Elementor\Core\Experiments\Manager;
use Elementor\Core\Base\Module as BaseModule;
use Elementor\Core\Experiments\Manager as Experiments_Manager;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

class Module extends BaseModule {

	/**
	 * Retrieve the module name.
	 *
	 * @return string
	 */
	public function get_name() {
		return 'elements-color-picker';
	}

	/**
	 * Set the Eye-Dropper as an experimental feature.
	 *
	 * @return array
	 */
	public static function get_experimental_data() {
		return [
			'name' => 'elements-color-picker',
			'title' => esc_html__( 'Color Sampler', 'elementor' ),
			'default' => Manager::STATE_ACTIVE,
			'release_status' => Experiments_Manager::RELEASE_STATUS_BETA,
			'description' => esc_html__( 'Adds a new color picker functionality that allows choose a color from other elements settings.', 'elementor' ),
		];
	}

	/**
	 * Enqueue the `Color-Thief` library to pick colors from images.
	 *
	 * @return void
	 */
	public function enqueue_scripts() {
		wp_enqueue_script(
			'color-thief',
			$this->get_js_assets_url( 'color-thief', 'assets/lib/color-thief/', true ),
			[ 'elementor-editor' ],
			ELEMENTOR_VERSION,
			true
		);
	}

	/**
	 * Module constructor - Initialize the Eye-Dropper module.
	 *
	 * @return void
	 */
	public function __construct() {
		add_action( 'elementor/editor/after_enqueue_scripts', [ $this, 'enqueue_scripts' ] );
	}
}
modules/gutenberg/module.php000064400000007252151327220420012200 0ustar00<?php
namespace Elementor\Modules\Gutenberg;

use Elementor\Core\Base\Module as BaseModule;
use Elementor\Plugin;
use Elementor\User;
use Elementor\Utils;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

class Module extends BaseModule {

	protected $is_gutenberg_editor_active = false;

	/**
	 * @since 2.1.0
	 * @access public
	 */
	public function get_name() {
		return 'gutenberg';
	}

	/**
	 * @since 2.1.0
	 * @access public
	 * @static
	 */
	public static function is_active() {
		return function_exists( 'register_block_type' );
	}

	/**
	 * @since 2.1.0
	 * @access public
	 */
	public function register_elementor_rest_field() {
		register_rest_field( get_post_types( '', 'names' ),
			'gutenberg_elementor_mode', [
				'update_callback' => function( $request_value, $object ) {
					if ( ! User::is_current_user_can_edit( $object->ID ) ) {
						return false;
					}

					$document = Plugin::$instance->documents->get( $object->ID );

					if ( ! $document ) {
						return false;
					}

					$document->set_is_built_with_elementor( false );

					return true;
				},
			]
		);
	}

	/**
	 * @since 2.1.0
	 * @access public
	 */
	public function enqueue_assets() {
		$document = Plugin::$instance->documents->get( get_the_ID() );

		if ( ! $document || ! $document->is_editable_by_current_user() ) {
			return;
		}

		$this->is_gutenberg_editor_active = true;

		$suffix = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min';

		wp_enqueue_script( 'elementor-gutenberg', ELEMENTOR_ASSETS_URL . 'js/gutenberg' . $suffix . '.js', [ 'jquery' ], ELEMENTOR_VERSION, true );

		$elementor_settings = [
			'isElementorMode' => $document->is_built_with_elementor(),
			'editLink' => $document->get_edit_url(),
		];
		Utils::print_js_config( 'elementor-gutenberg', 'ElementorGutenbergSettings', $elementor_settings );
	}

	/**
	 * @since 2.1.0
	 * @access public
	 */
	public function print_admin_js_template() {
		if ( ! $this->is_gutenberg_editor_active ) {
			return;
		}

		?>
		<script id="elementor-gutenberg-button-switch-mode" type="text/html">
			<div id="elementor-switch-mode">
				<button id="elementor-switch-mode-button" type="button" class="button button-primary button-large">
					<span class="elementor-switch-mode-on"><?php echo esc_html__( '&#8592; Back to WordPress Editor', 'elementor' ); ?></span>
					<span class="elementor-switch-mode-off">
						<i class="eicon-elementor-square" aria-hidden="true"></i>
						<?php echo esc_html__( 'Edit with Elementor', 'elementor' ); ?>
					</span>
				</button>
			</div>
		</script>

		<script id="elementor-gutenberg-panel" type="text/html">
			<div id="elementor-editor"><a id="elementor-go-to-edit-page-link" href="#">
					<div id="elementor-editor-button" class="button button-primary button-hero">
						<i class="eicon-elementor-square" aria-hidden="true"></i>
						<?php echo esc_html__( 'Edit with Elementor', 'elementor' ); ?>
					</div>
					<div class="elementor-loader-wrapper">
						<div class="elementor-loader">
							<div class="elementor-loader-boxes">
								<div class="elementor-loader-box"></div>
								<div class="elementor-loader-box"></div>
								<div class="elementor-loader-box"></div>
								<div class="elementor-loader-box"></div>
							</div>
						</div>
						<div class="elementor-loading-title"><?php echo esc_html__( 'Loading', 'elementor' ); ?></div>
					</div>
				</a></div>
		</script>
		<?php
	}

	/**
	 * @since 2.1.0
	 * @access public
	 */
	public function __construct() {
		add_action( 'rest_api_init', [ $this, 'register_elementor_rest_field' ] );
		add_action( 'enqueue_block_editor_assets', [ $this, 'enqueue_assets' ] );
		add_action( 'admin_footer', [ $this, 'print_admin_js_template' ] );
	}
}
modules/dev-tools/module.php000064400000001720151327220420012124 0ustar00<?php
namespace Elementor\Modules\DevTools;

use Elementor\Core\Base\Module as BaseModule;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Fix issue with 'Potentially polymorphic call. The code may be inoperable depending on the actual class instance passed as the argument.'.
 * Its tells to the editor that instance() return right module. instead of base module.
 * @method Module instance()
*/
class Module extends BaseModule {
	/**
	 * @var Deprecation
	 */
	public $deprecation;

	public function __construct() {
		$this->deprecation = new Deprecation( ELEMENTOR_VERSION );

		add_filter( 'elementor/editor/localize_settings', [ $this, 'localize_settings' ] );
	}

	public function get_name() {
		return 'dev-tools';
	}

	public function localize_settings( $settings ) {
		$settings = array_replace_recursive( $settings, [
			'dev_tools' => [
				'deprecation' => $this->deprecation->get_settings(),
			],
		] );

		return $settings;
	}
}
modules/dev-tools/deprecation.php000064400000022161151327220420013136 0ustar00<?php
namespace Elementor\Modules\DevTools;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

class Deprecation {
	const SOFT_VERSIONS_COUNT = 4;
	const HARD_VERSIONS_COUNT = 8;

	private $current_version = null;
	private $soft_deprecated_notices = [];

	public function __construct( $current_version ) {
		$this->current_version = $current_version;
	}

	public function get_settings() {
		return [
			'soft_notices' => $this->soft_deprecated_notices,
		];
	}

	/**
	 * Get total of major.
	 *
	 * Since `get_total_major` cannot determine how much really versions between 2.9.0 and 3.3.0 if there is 2.10.0 version for example,
	 * versions with major2 more then 9 will be added to total.
	 *
	 * @since 3.1.0
	 *
	 * @param array $parsed_version
	 *
	 * @return int
	 */
	public function get_total_major( $parsed_version ) {
		$major1 = $parsed_version['major1'];
		$major2 = $parsed_version['major2'];
		$major2 = $major2 > 9 ? 9 : $major2;
		$minor = 0;

		$total = intval( "{$major1}{$major2}{$minor}" );

		if ( $total > 99 ) {
			$total = $total / 10;
		} else {
			$total = intval( $total / 10 );
		}

		if ( $parsed_version['major2'] > 9 ) {
			$total += $parsed_version['major2'] - 9;
		}

		return $total;
	}

	/**
	 * Get next version.
	 *
	 * @since 3.1.0
	 *
	 * @param string $version
	 * @param int $count
	 *
	 * @return string|false
	 */
	public function get_next_version( $version, $count = 1 ) {
		$version = $this->parse_version( $version );

		if ( ! $version ) {
			return false;
		}

		$version['total'] = $this->get_total_major( $version ) + $count;

		$total = $version['total'];

		if ( $total > 9 ) {
			$version['major1'] = intval( $total / 10 );
			$version['major2'] = $total % 10;
		} else {
			$version['major1'] = 0;
			$version['major2'] = $total;
		}

		$version['minor'] = 0;

		return $this->implode_version( $version );
	}

	/**
	 * Implode parsed version to string version.
	 *
	 * @since 3.1.0
	 *
	 * @param array $parsed_version
	 *
	 * @return string
	 */
	public function implode_version( $parsed_version ) {
		$major1 = $parsed_version['major1'];
		$major2 = $parsed_version['major2'];
		$minor = $parsed_version['minor'];

		return "{$major1}.{$major2}.{$minor}";
	}

	/**
	 * Parse to an informative array.
	 *
	 * @since 3.1.0
	 *
	 * @param string $version
	 *
	 * @return array|false
	 */
	public function parse_version( $version ) {
		$version_explode = explode( '.', $version );
		$version_explode_count = count( $version_explode );

		if ( $version_explode_count < 3 || $version_explode_count > 4 ) {
			trigger_error( 'Invalid Semantic Version string provided' );

			return false;
		}

		list( $major1, $major2, $minor ) = $version_explode;

		$result = [
			'major1' => intval( $major1 ),
			'major2' => intval( $major2 ),
			'minor' => intval( $minor ),
		];

		if ( $version_explode_count > 3 ) {
			$result['build'] = $version_explode[3];
		}

		return $result;
	}

	/**
	 * Compare two versions, result is equal to diff of major versions.
	 * Notice: If you want to compare between 2.9.0 and 3.3.0, and there is also a 2.10.0 version, you cannot get the right comparison
	 * Since $this->deprecation->get_total_major cannot determine how much really versions between 2.9.0 and 3.3.0.
	 *
	 * @since 3.1.0
	 *
	 * @param {string} $version1
	 * @param {string} $version2
	 *
	 * @return int|false
	 */
	public function compare_version( $version1, $version2 ) {
		$version1 = self::parse_version( $version1 );
		$version2 = self::parse_version( $version2 );

		if ( $version1 && $version2 ) {
			$versions = [ &$version1, &$version2 ];

			foreach ( $versions as &$version ) {
				$version['total'] = self::get_total_major( $version );
			}

			return $version1['total'] - $version2['total'];
		}

		return false;
	}

	/**
	 * Check Deprecation
	 *
	 * Checks whether the given entity is valid. If valid, this method checks whether the deprecation
	 * should be soft (browser console notice) or hard (use WordPress' native deprecation methods).
	 *
	 * @since 3.1.0
	 *
	 * @param string $entity - The Deprecated entity (the function/hook itself)
	 * @param string $version
	 * @param string $replacement Optional
	 * @param string $base_version Optional. Default is `null`
	 *
	 * @return bool|void
	 * @throws \Exception
	 */
	private function check_deprecation( $entity, $version, $replacement, $base_version = null ) {
		if ( null === $base_version ) {
			$base_version = $this->current_version;
		}

		$diff = $this->compare_version( $base_version, $version );

		if ( false === $diff ) {
			throw new \Exception( 'Invalid deprecation diff' );
		}

		$print_deprecated = false;

		if ( defined( 'WP_DEBUG' ) && WP_DEBUG && $diff <= self::SOFT_VERSIONS_COUNT ) {
			// Soft deprecated.
			if ( ! isset( $this->soft_deprecated_notices[ $entity ] ) ) {
				$this->soft_deprecated_notices[ $entity ] = [
					$version,
					$replacement,
				];
			}

			if ( defined( 'ELEMENTOR_DEBUG' ) && ELEMENTOR_DEBUG ) {
				$print_deprecated = true;
			}
		} else {
			// Hard deprecated.
			$print_deprecated = true;
		}

		return $print_deprecated;
	}

	/**
	 * Deprecated Function
	 *
	 * Handles the deprecation process for functions.
	 *
	 * @since 3.1.0
	 *
	 * @param string $function
	 * @param string $version
	 * @param string $replacement Optional. Default is ''
	 * @param string $base_version Optional. Default is `null`
	 * @throws \Exception
	 */
	public function deprecated_function( $function, $version, $replacement = '', $base_version = null ) {
		$print_deprecated = $this->check_deprecation( $function, $version, $replacement, $base_version );

		if ( $print_deprecated ) {
			// PHPCS - We need to echo special characters because they can exist in function calls.
			_deprecated_function( $function, esc_html( $version ), $replacement );  // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
		}
	}

	/**
	 * Deprecated Hook
	 *
	 * Handles the deprecation process for hooks.
	 *
	 * @since 3.1.0
	 *
	 * @param string $hook
	 * @param string $version
	 * @param string $replacement Optional. Default is ''
	 * @param string $base_version Optional. Default is `null`
	 * @throws \Exception
	 */
	public function deprecated_hook( $hook, $version, $replacement = '', $base_version = null ) {
		$print_deprecated = $this->check_deprecation( $hook, $version, $replacement, $base_version );

		if ( $print_deprecated ) {
			_deprecated_hook( esc_html( $hook ), esc_html( $version ), esc_html( $replacement ) );
		}
	}

	/**
	 * Deprecated Argument
	 *
	 * Handles the deprecation process for function arguments.
	 *
	 * @since 3.1.0
	 *
	 * @param string $argument
	 * @param string $version
	 * @param string $replacement
	 * @param string $message
	 * @throws \Exception
	 */
	public function deprecated_argument( $argument, $version, $replacement = '', $message = '' ) {
		$print_deprecated = $this->check_deprecation( $argument, $version, $replacement );

		if ( $print_deprecated ) {
			$message = empty( $message ) ? '' : ' ' . $message;
			// These arguments are escaped because they are printed later, and are not escaped when printed.
			$error_message_args = [ esc_html( $argument ), esc_html( $version ) ];

			if ( $replacement ) {
				/* translators: 1: Function argument, 2: Elementor version number, 3: Replacement argument name. */
				$translation_string = esc_html__( 'The %1$s argument is deprecated since version %2$s! Use %3$s instead.', 'elementor' );
				$error_message_args[] = $replacement;
			} else {
				/* translators: 1: Function argument, 2: Elementor version number. */
				$translation_string = esc_html__( 'The %1$s argument is deprecated since version %2$s!', 'elementor' );
			}

			trigger_error(
				vsprintf(
					// PHPCS - $translation_string is already escaped above.
					$translation_string,  // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
					// PHPCS - $error_message_args is an array.
					$error_message_args  // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
				) . esc_html( $message ),
				E_USER_DEPRECATED
			);
		}
	}

	/**
	 * Do Deprecated Action
	 *
	 * A method used to run deprecated actions through Elementor's deprecation process.
	 *
	 * @since 3.1.0
	 *
	 * @param string $hook
	 * @param array $args
	 * @param string $version
	 * @param string $replacement
	 * @param null|string $base_version
	 *
	 * @throws \Exception
	 */
	public function do_deprecated_action( $hook, $args, $version, $replacement = '', $base_version = null ) {
		if ( ! has_action( $hook ) ) {
			return;
		}

		$this->deprecated_hook( $hook, $version, $replacement, $base_version );

		do_action_ref_array( $hook, $args );
	}

	/**
	 * Apply Deprecated Filter
	 *
	 * A method used to run deprecated filters through Elementor's deprecation process.
	 *
	 * @since 3.2.0
	 *
	 * @param string $hook
	 * @param array $args
	 * @param string $version
	 * @param string $replacement
	 * @param null|string $base_version
	 *
	 * @return mixed
	 * @throws \Exception
	 */
	public function apply_deprecated_filter( $hook, $args, $version, $replacement = '', $base_version = null ) {
		if ( ! has_action( $hook ) ) {
			return;
		}

		$this->deprecated_hook( $hook, $version, $replacement, $base_version );

		return apply_filters_ref_array( $hook, $args );
	}
}
modules/usage/module.php000064400000037033151327220420011322 0ustar00<?php
namespace Elementor\Modules\Usage;

use Elementor\Core\Base\Document;
use Elementor\Core\Base\Module as BaseModule;
use Elementor\Core\DynamicTags\Manager;
use Elementor\Modules\System_Info\Module as System_Info;
use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor usage module.
 *
 * Elementor usage module handler class is responsible for registering and
 * managing Elementor usage data.
 *
 */
class Module extends BaseModule {
	const GENERAL_TAB = 'general';
	const META_KEY = '_elementor_controls_usage';
	const OPTION_NAME = 'elementor_controls_usage';

	/**
	 * @var bool
	 */
	private $is_document_saving = false;

	/**
	 * Get module name.
	 *
	 * Retrieve the usage module name.
	 *
	 * @access public
	 *
	 * @return string Module name.
	 */
	public function get_name() {
		return 'usage';
	}

	/**
	 * Get doc type count.
	 *
	 * Get count of documents based on doc type
	 *
	 * Remove 'wp-' from $doc_type for BC, support doc type change since 2.7.0.
	 *
	 * @param \Elementor\Core\Documents_Manager $doc_class
	 * @param String $doc_type
	 *
	 * @return int
	 */
	public function get_doc_type_count( $doc_class, $doc_type ) {
		static $posts = null;
		static $library = null;

		if ( null === $posts ) {
			$posts = \Elementor\Tracker::get_posts_usage();
		}

		if ( null === $library ) {
			$library = \Elementor\Tracker::get_library_usage();
		}

		$posts_usage = $posts;

		if ( $doc_class::get_property( 'show_in_library' ) ) {
			$posts_usage = $library;
		}

		$doc_type_common = str_replace( 'wp-', '', $doc_type );

		$doc_usage = isset( $posts_usage[ $doc_type_common ] ) ? $posts_usage[ $doc_type_common ] : 0;

		return is_array( $doc_usage ) ? $doc_usage['publish'] : $doc_usage;
	}

	/**
	 * Get formatted usage.
	 *
	 * Retrieve formatted usage, for frontend.
	 *
	 * @param String format
	 *
	 * @return array
	 */
	public function get_formatted_usage( $format = 'html' ) {
		$usage = [];

		foreach ( get_option( self::OPTION_NAME, [] ) as $doc_type => $elements ) {
			$doc_class = Plugin::$instance->documents->get_document_type( $doc_type );

			if ( 'html' === $format && $doc_class ) {
				$doc_title = $doc_class::get_title();
			} else {
				$doc_title = $doc_type;
			}

			$doc_count = $this->get_doc_type_count( $doc_class, $doc_type );

			$tab_group = $doc_class::get_property( 'admin_tab_group' );

			if ( 'html' === $format && $tab_group ) {
				$doc_title = ucwords( $tab_group ) . ' - ' . $doc_title;
			}

			// Replace element type with element title.
			foreach ( $elements as $element_type => $data ) {
				unset( $elements[ $element_type ] );

				if ( in_array( $element_type, [ 'section', 'column' ], true ) ) {
					continue;
				}

				$widget_instance = Plugin::$instance->widgets_manager->get_widget_types( $element_type );

				if ( 'html' === $format && $widget_instance ) {
					$widget_title = $widget_instance->get_title();
				} else {
					$widget_title = $element_type;
				}

				$elements[ $widget_title ] = $data['count'];
			}

			// Sort elements by key.
			ksort( $elements );

			$usage[ $doc_type ] = [
				'title' => $doc_title,
				'elements' => $elements,
				'count' => $doc_count,
			];

			// ' ? 1 : 0;' In sorters is compatibility for PHP8.0.
			// Sort usage by title.
			uasort( $usage, function( $a, $b ) {
				return ( $a['title'] > $b['title'] ) ? 1 : 0;
			} );

			// If title includes '-' will have lower priority.
			uasort( $usage, function( $a ) {
				return strpos( $a['title'], '-' ) ? 1 : 0;
			} );
		}

		return $usage;
	}

	/**
	 * Before document Save.
	 *
	 * Called on elementor/document/before_save, remove document from global & set saving flag.
	 *
	 * @param Document $document
	 * @param array $data new settings to save.
	 */
	public function before_document_save( $document, $data ) {
		$current_status = get_post_status( $document->get_post() );
		$new_status = isset( $data['settings']['post_status'] ) ? $data['settings']['post_status'] : '';

		if ( $current_status === $new_status ) {
			$this->remove_from_global( $document );
		}

		$this->is_document_saving = true;
	}

	/**
	 * After document save.
	 *
	 * Called on elementor/document/after_save, adds document to global & clear saving flag.
	 *
	 * @param Document $document
	 */
	public function after_document_save( $document ) {
		if ( Document::STATUS_PUBLISH === $document->get_post()->post_status || Document::STATUS_PRIVATE === $document->get_post()->post_status ) {
			$this->save_document_usage( $document );
		}

		$this->is_document_saving = false;
	}

	/**
	 * On status change.
	 *
	 * Called on transition_post_status.
	 *
	 * @param string $new_status
	 * @param string $old_status
	 * @param \WP_Post $post
	 */
	public function on_status_change( $new_status, $old_status, $post ) {
		if ( wp_is_post_autosave( $post ) ) {
			return;
		}

		// If it's from elementor editor, the usage should be saved via `before_document_save`/`after_document_save`.
		if ( $this->is_document_saving ) {
			return;
		}

		$document = Plugin::$instance->documents->get( $post->ID );

		if ( ! $document ) {
			return;
		}

		$is_public_unpublish = 'publish' === $old_status && 'publish' !== $new_status;
		$is_private_unpublish = 'private' === $old_status && 'private' !== $new_status;

		if ( $is_public_unpublish || $is_private_unpublish ) {
			$this->remove_from_global( $document );
		}

		$is_public_publish = 'publish' !== $old_status && 'publish' === $new_status;
		$is_private_publish = 'private' !== $old_status && 'private' === $new_status;

		if ( $is_public_publish || $is_private_publish ) {
			$this->save_document_usage( $document );
		}
	}

	/**
	 * On before delete post.
	 *
	 * Called on on_before_delete_post.
	 *
	 * @param int $post_id
	 */
	public function on_before_delete_post( $post_id ) {
		$document = Plugin::$instance->documents->get( $post_id );

		if ( $document->get_id() !== $document->get_main_id() ) {
			return;
		}

		$this->remove_from_global( $document );
	}

	/**
	 * Add's tracking data.
	 *
	 * Called on elementor/tracker/send_tracking_data_params.
	 *
	 * @param array $params
	 *
	 * @return array
	 */
	public function add_tracking_data( $params ) {
		$params['usages']['elements'] = get_option( self::OPTION_NAME );

		return $params;
	}

	/**
	 * Recalculate usage.
	 *
	 * Recalculate usage for all elementor posts.
	 *
	 * @param int $limit
	 * @param int $offset
	 *
	 * @return int
	 */
	public function recalc_usage( $limit = -1, $offset = 0 ) {
		// While requesting recalc_usage, data should be deleted.
		// if its in a batch the data should be deleted only on the first batch.
		if ( 0 === $offset ) {
			delete_option( self::OPTION_NAME );
		}

		$post_types = get_post_types( array( 'public' => true ) );

		$query = new \WP_Query( [
			'meta_key' => '_elementor_data',
			'post_type' => $post_types,
			'post_status' => [ 'publish', 'private' ],
			'posts_per_page' => $limit,
			'offset' => $offset,
		] );

		foreach ( $query->posts as $post ) {
			$document = Plugin::$instance->documents->get( $post->ID );

			if ( ! $document ) {
				continue;
			}

			$this->after_document_save( $document );
		}

		// Clear query memory before leave.
		wp_cache_flush();

		return count( $query->posts );
	}

	/**
	 * Increase controls count.
	 *
	 * Increase controls count, for each element.
	 *
	 * @param array &$element_ref
	 * @param string $tab
	 * @param string $section
	 * @param string $control
	 * @param int $count
	 */
	private function increase_controls_count( &$element_ref, $tab, $section, $control, $count ) {
		if ( ! isset( $element_ref['controls'][ $tab ] ) ) {
			$element_ref['controls'][ $tab ] = [];
		}

		if ( ! isset( $element_ref['controls'][ $tab ][ $section ] ) ) {
			$element_ref['controls'][ $tab ][ $section ] = [];
		}

		if ( ! isset( $element_ref['controls'][ $tab ][ $section ][ $control ] ) ) {
			$element_ref['controls'][ $tab ][ $section ][ $control ] = 0;
		}

		$element_ref['controls'][ $tab ][ $section ][ $control ] += $count;
	}

	/**
	 * Add Controls
	 *
	 * Add's controls to this element_ref, returns changed controls count.
	 *
	 * @param array $settings_controls
	 * @param array $element_controls
	 * @param array &$element_ref
	 *
	 * @return int ($changed_controls_count).
	 */
	private function add_controls( $settings_controls, $element_controls, &$element_ref ) {
		$changed_controls_count = 0;

		// Loop over all element settings.
		foreach ( $settings_controls as $control => $value ) {
			if ( empty( $element_controls[ $control ] ) ) {
				continue;
			}

			$control_config = $element_controls[ $control ];

			if ( ! isset( $control_config['section'], $control_config['default'] ) ) {
				continue;
			}

			$tab = $control_config['tab'];
			$section = $control_config['section'];

			// If setting value is not the control default.
			if ( $value !== $control_config['default'] ) {
				$this->increase_controls_count( $element_ref, $tab, $section, $control, 1 );

				$changed_controls_count++;
			}
		}

		return $changed_controls_count;
	}

	/**
	 * Add general controls.
	 *
	 * Extract general controls to element ref, return clean `$settings_control`.
	 *
	 * @param array $settings_controls
	 * @param array &$element_ref
	 *
	 * @return array ($settings_controls).
	 */
	private function add_general_controls( $settings_controls, &$element_ref ) {
		if ( ! empty( $settings_controls[ Manager::DYNAMIC_SETTING_KEY ] ) ) {
			$settings_controls = array_merge( $settings_controls, $settings_controls[ Manager::DYNAMIC_SETTING_KEY ] );

			// Add dynamic count to controls under `general` tab.
			$this->increase_controls_count(
				$element_ref,
				self::GENERAL_TAB,
				Manager::DYNAMIC_SETTING_KEY,
				'count',
				count( $settings_controls[ Manager::DYNAMIC_SETTING_KEY ] )
			);
		}

		return $settings_controls;
	}

	/**
	 * Add to global.
	 *
	 * Add's usage to global (update database).
	 *
	 * @param string $doc_name
	 * @param array $doc_usage
	 */
	private function add_to_global( $doc_name, $doc_usage ) {
		$global_usage = get_option( self::OPTION_NAME, [] );

		foreach ( $doc_usage as $element_type => $element_data ) {
			if ( ! isset( $global_usage[ $doc_name ] ) ) {
				$global_usage[ $doc_name ] = [];
			}

			if ( ! isset( $global_usage[ $doc_name ][ $element_type ] ) ) {
				$global_usage[ $doc_name ][ $element_type ] = [
					'count' => 0,
					'controls' => [],
				];
			}

			$global_element_ref = &$global_usage[ $doc_name ][ $element_type ];
			$global_element_ref['count'] += $element_data['count'];

			if ( empty( $element_data['controls'] ) ) {
				continue;
			}

			foreach ( $element_data['controls'] as $tab => $sections ) {
				foreach ( $sections as $section => $controls ) {
					foreach ( $controls as $control => $count ) {
						$this->increase_controls_count( $global_element_ref, $tab, $section, $control, $count );
					}
				}
			}
		}

		update_option( self::OPTION_NAME, $global_usage, false );
	}

	/**
	 * Remove from global.
	 *
	 * Remove's usage from global (update database).
	 *
	 * @param Document $document
	 */
	private function remove_from_global( $document ) {
		$prev_usage = $document->get_meta( self::META_KEY );

		if ( empty( $prev_usage ) ) {
			return;
		}

		$doc_name = $document->get_name();

		$global_usage = get_option( self::OPTION_NAME, [] );

		foreach ( $prev_usage as $element_type => $doc_value ) {
			if ( isset( $global_usage[ $doc_name ][ $element_type ]['count'] ) ) {
				$global_usage[ $doc_name ][ $element_type ]['count'] -= $prev_usage[ $element_type ]['count'];

				if ( 0 === $global_usage[ $doc_name ][ $element_type ]['count'] ) {
					unset( $global_usage[ $doc_name ][ $element_type ] );

					if ( 0 === count( $global_usage[ $doc_name ] ) ) {
						unset( $global_usage[ $doc_name ] );
					}

					continue;
				}

				foreach ( $prev_usage[ $element_type ]['controls'] as $tab => $sections ) {
					foreach ( $sections as $section => $controls ) {
						foreach ( $controls as $control => $count ) {
							if ( isset( $global_usage[ $doc_name ][ $element_type ]['controls'][ $tab ][ $section ][ $control ] ) ) {
								$section_ref = &$global_usage[ $doc_name ][ $element_type ]['controls'][ $tab ][ $section ];

								$section_ref[ $control ] -= $count;

								if ( 0 === $section_ref[ $control ] ) {
									unset( $section_ref[ $control ] );
								}
							}
						}
					}
				}
			}
		}

		update_option( self::OPTION_NAME, $global_usage, false );

		$document->delete_meta( self::META_KEY );
	}

	/**
	 * Get elements usage.
	 *
	 * Get's the current elements usage by passed elements array parameter.
	 *
	 * @param array $elements
	 *
	 * @return array
	 */
	private function get_elements_usage( $elements ) {
		$usage = [];

		Plugin::$instance->db->iterate_data( $elements, function ( $element ) use ( &$usage ) {
			if ( empty( $element['widgetType'] ) ) {
				$type = $element['elType'];
				$element_instance = Plugin::$instance->elements_manager->get_element_types( $type );
			} else {
				$type = $element['widgetType'];
				$element_instance = Plugin::$instance->widgets_manager->get_widget_types( $type );
			}

			if ( ! isset( $usage[ $type ] ) ) {
				$usage[ $type ] = [
					'count' => 0,
					'control_percent' => 0,
					'controls' => [],
				];
			}

			$usage[ $type ]['count']++;

			if ( ! $element_instance ) {
				return $element;
			}

			$element_controls = $element_instance->get_controls();

			if ( isset( $element['settings'] ) ) {
				$settings_controls = $element['settings'];
				$element_ref = &$usage[ $type ];

				// Add dynamic values.
				$settings_controls = $this->add_general_controls( $settings_controls, $element_ref );

				$changed_controls_count = $this->add_controls( $settings_controls, $element_controls, $element_ref );

				$percent = $changed_controls_count / ( count( $element_controls ) / 100 );

				$usage[ $type ] ['control_percent'] = (int) round( $percent );
			}

			return $element;
		} );

		return $usage;
	}

	/**
	 * Save document usage.
	 *
	 * Save requested document usage, and update global.
	 *
	 * @param Document $document
	 */
	private function save_document_usage( Document $document ) {
		if ( ! $document::get_property( 'is_editable' ) && ! $document->is_built_with_elementor() ) {
			return;
		}

		// Get data manually to avoid conflict with `\Elementor\Core\Base\Document::get_elements_data... convert_to_elementor`.
		$data = $document->get_json_meta( '_elementor_data' );

		if ( ! empty( $data ) ) {
			try {
				$usage = $this->get_elements_usage( $document->get_elements_raw_data( $data ) );

				$document->update_meta( self::META_KEY, $usage );

				$this->add_to_global( $document->get_name(), $usage );
			} catch ( \Exception $exception ) {
				Plugin::$instance->logger->get_logger()->error( $exception->getMessage(), [
					'document_id' => $document->get_id(),
					'document_name' => $document->get_name(),
				] );

				return;
			};
		}
	}

	/**
	 * Add system info report.
	 */
	public function add_system_info_report() {
		System_Info::add_report( 'usage', [
			'file_name' => __DIR__ . '/usage-reporter.php',
			'class_name' => __NAMESPACE__ . '\Usage_Reporter',
		] );
	}

	/**
	 * Usage module constructor.
	 *
	 * Initializing Elementor usage module.
	 *
	 * @access public
	 */
	public function __construct() {
		add_action( 'transition_post_status', [ $this, 'on_status_change' ], 10, 3 );
		add_action( 'before_delete_post', [ $this, 'on_before_delete_post' ] );

		add_action( 'elementor/document/before_save', [ $this, 'before_document_save' ], 10, 2 );
		add_action( 'elementor/document/after_save', [ $this, 'after_document_save' ] );

		add_filter( 'elementor/tracker/send_tracking_data_params', [ $this, 'add_tracking_data' ] );

		add_action( 'admin_init', [ $this, 'add_system_info_report' ], 50 );
	}
}
modules/usage/usage-reporter.php000064400000005613151327220420013000 0ustar00<?php
namespace Elementor\Modules\Usage;

use Elementor\Modules\System_Info\Reporters\Base;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor usage report.
 *
 * Elementor system report handler class responsible for generating a report for
 * the user.
 */
class Usage_Reporter extends Base {

	const RECALC_ACTION = 'elementor_usage_recalc';

	public function get_title() {
		$title = 'Elements Usage';

		if ( 'html' === $this->_properties['format'] ) {
			if ( empty( $_GET[ self::RECALC_ACTION ] ) ) { // phpcs:ignore -- nonce validation is not required here.
				$nonce = wp_create_nonce( self::RECALC_ACTION );
				$url = add_query_arg( [
					self::RECALC_ACTION => 1,
					'_wpnonce' => $nonce,
				] );

				$title .= '<a id="elementor-usage-recalc" href="' . esc_url( $url ) . '#elementor-usage-recalc" class="box-title-tool">Recalculate</a>';
			} else {
				$title .= $this->get_remove_recalc_query_string_script();
			}
		}

		return $title;
	}

	public function get_fields() {
		return [
			'usage' => '',
		];
	}

	public function get_usage() {
		/** @var Module $module */
		$module = Module::instance();

		if ( ! empty( $_GET[ self::RECALC_ACTION ] ) ) {
			if ( empty( $_GET['_wpnonce'] ) || ! wp_verify_nonce( $_GET['_wpnonce'], self::RECALC_ACTION ) ) {
				wp_die( 'Invalid Nonce', 'Invalid Nonce', [
					'back_link' => true,
				] );
			}

			$module->recalc_usage();
		}

		$usage = '';

		foreach ( $module->get_formatted_usage() as $doc_type => $data ) {
			$usage .= '<tr><td>' . $data['title'] . ' ( ' . $data['count'] . ' )</td><td>';

			foreach ( $data['elements'] as $element => $count ) {
				$usage .= $element . ': ' . $count . PHP_EOL;
			}

			$usage .= '</td></tr>';
		}

		return [
			'value' => $usage,
		];
	}

	public function get_raw_usage() {
		/** @var Module $module */
		$module = Module::instance();
		$usage = PHP_EOL;

		foreach ( $module->get_formatted_usage( 'raw' ) as $doc_type => $data ) {
			$usage .= "\t{$data['title']} : " . $data['count'] . PHP_EOL;

			foreach ( $data['elements'] as $element => $count ) {
				$usage .= "\t\t{$element} : {$count}" . PHP_EOL;
			}
		}

		return [
			'value' => $usage,
		];
	}

	/**
	 * Removes the "elementor_usage_recalc" param from the query string to avoid recalc every refresh.
	 * When using a redirect header in place of this approach it throws an error because some components have already output some content.
	 *
	 * @return string
	 */
	private function get_remove_recalc_query_string_script() {
		ob_start();
		?>
		<script>
			// Origin file: modules/usage/usage-reporter.php - get_remove_recalc_query_string_script()
			{
				const url = new URL( window.location );

				url.hash = '';
				url.searchParams.delete( 'elementor_usage_recalc' );
				url.searchParams.delete( '_wpnonce' );

				history.replaceState( '', window.title, url.toString() );
			}
		</script>
		<?php

		return ob_get_clean();
	}
}
modules/landing-pages/module.php000064400000041057151327220420012730 0ustar00<?php
namespace Elementor\Modules\LandingPages;

use Elementor\Core\Base\Module as BaseModule;
use Elementor\Core\Documents_Manager;
use Elementor\Core\Experiments\Manager as Experiments_Manager;
use Elementor\Modules\LandingPages\Documents\Landing_Page;
use Elementor\Modules\LandingPages\Module as Landing_Pages_Module;
use Elementor\Plugin;
use Elementor\TemplateLibrary\Source_Local;
use Elementor\Utils;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

class Module extends BaseModule {

	const DOCUMENT_TYPE = 'landing-page';
	const CPT = 'e-landing-page';
	const ADMIN_PAGE_SLUG = 'edit.php?post_type=' . self::CPT;

	private $posts;
	private $trashed_posts;
	private $new_lp_url;
	private $permalink_structure;

	public function get_name() {
		return 'landing-pages';
	}

	/**
	 * Get Experimental Data
	 *
	 * Implementation of this method makes the module an experiment.
	 *
	 * @since 3.1.0
	 *
	 * @return array
	 */
	public static function get_experimental_data() {
		return [
			'name' => 'landing-pages',
			'title' => esc_html__( 'Landing Pages', 'elementor' ),
			'description' => esc_html__( 'Adds a new Elementor content type that allows creating beautiful landing pages instantly in a streamlined workflow.', 'elementor' ),
			'release_status' => Experiments_Manager::RELEASE_STATUS_BETA,
			'default' => Experiments_Manager::STATE_ACTIVE,
		];
	}

	/**
	 * Get Trashed Landing Pages Posts
	 *
	 * Returns the posts property of a WP_Query run for Landing Pages with post_status of 'trash'.
	 *
	 * @since 3.1.0
	 *
	 * @return array trashed posts
	 */
	private function get_trashed_landing_page_posts() {
		if ( $this->trashed_posts ) {
			return $this->trashed_posts;
		}

		// `'posts_per_page' => 1` is because this is only used as an indicator to whether there are any trashed landing pages.
		$trashed_posts_query = new \WP_Query( [
			'post_type' => self::CPT,
			'post_status' => 'trash',
			'posts_per_page' => 1,
			'meta_key' => '_elementor_template_type',
			'meta_value' => self::DOCUMENT_TYPE,
		] );

		$this->trashed_posts = $trashed_posts_query->posts;

		return $this->trashed_posts;
	}

	/**
	 * Get Landing Pages Posts
	 *
	 * Returns the posts property of a WP_Query run for posts with the Landing Pages CPT.
	 *
	 * @since 3.1.0
	 *
	 * @return array posts
	 */
	private function get_landing_page_posts() {
		if ( $this->posts ) {
			return $this->posts;
		}

		// `'posts_per_page' => 1` is because this is only used as an indicator to whether there are any landing pages.
		$posts_query = new \WP_Query( [
			'post_type' => self::CPT,
			'post_status' => 'any',
			'posts_per_page' => 1,
			'meta_key' => '_elementor_template_type',
			'meta_value' => self::DOCUMENT_TYPE,
		] );

		$this->posts = $posts_query->posts;

		return $this->posts;
	}

	/**
	 * Is Elementor Landing Page.
	 *
	 * Check whether the post is an Elementor Landing Page.
	 *
	 * @since 3.1.0
	 * @access public
	 *
	 * @param \WP_Post $post Post Object
	 *
	 * @return bool Whether the post was built with Elementor.
	 */
	public function is_elementor_landing_page( $post ) {
		return self::CPT === $post->post_type;
	}

	/**
	 * Add Submenu Page
	 *
	 * Adds the 'Landing Pages' submenu item to the 'Templates' menu item.
	 *
	 * @since 3.1.0
	 */
	private function add_submenu_page() {
		$posts = $this->get_landing_page_posts();

		// If there are no Landing Pages, show the "Create Your First Landing Page" page.
		// If there are, show the pages table.
		if ( ! empty( $posts ) ) {
			$landing_page_menu_slug = self::ADMIN_PAGE_SLUG;
			$landing_page_menu_callback = null;
		} else {
			$landing_page_menu_slug = self::CPT;
			$landing_page_menu_callback = [ $this, 'print_empty_landing_pages_page' ];
		}

		$landing_pages_title = esc_html__( 'Landing Pages', 'elementor' );

		add_submenu_page(
			Source_Local::ADMIN_MENU_SLUG,
			$landing_pages_title,
			$landing_pages_title,
			'manage_options',
			$landing_page_menu_slug,
			$landing_page_menu_callback
		);
	}

	/**
	 * Get 'Add New' Landing Page URL
	 *
	 * Retrieves the custom URL for the admin dashboard's 'Add New' button in the Landing Pages admin screen. This URL
	 * creates a new Landing Pages and directly opens the Elementor Editor with the Template Library modal open on the
	 * Landing Pages tab.
	 *
	 * @since 3.1.0
	 *
	 * @return string
	 */
	private function get_add_new_landing_page_url() {
		if ( ! $this->new_lp_url ) {
			$this->new_lp_url = Plugin::$instance->documents->get_create_new_post_url( self::CPT, self::DOCUMENT_TYPE ) . '#library';
		}
		return $this->new_lp_url;
	}

	/**
	 * Get Empty Landing Pages Page
	 *
	 * Prints the HTML content of the page that is displayed when there are no existing landing pages in the DB.
	 * Added as the callback to add_submenu_page.
	 *
	 * @since 3.1.0
	 */
	public function print_empty_landing_pages_page() {
		$template_sources = Plugin::$instance->templates_manager->get_registered_sources();
		$source_local = $template_sources['local'];
		$trashed_posts = $this->get_trashed_landing_page_posts();

		?>
		<div class="e-landing-pages-empty">
		<?php
		/** @var Source_Local $source_local */
		$source_local->print_blank_state_template( esc_html__( 'Landing Page', 'elementor' ), $this->get_add_new_landing_page_url(), esc_html__( 'Build Effective Landing Pages for your business\' marketing campaigns.', 'elementor' ) );

		if ( ! empty( $trashed_posts ) ) : ?>
			<div class="e-trashed-items">
				<?php
					printf(
						/* translators: %1$s Link open tag, %2$s: Link close tag. */
						esc_html__( 'Or view %1$sTrashed Items%1$s', 'elementor' ),
						'<a href="' . esc_url( admin_url( 'edit.php?post_status=trash&post_type=' . self::CPT ) ) . '">',
						'</a>'
					);
				?>
			</div>
		<?php endif; ?>
		</div>
		<?php
	}

	/**
	 * Is Current Admin Page Edit LP
	 *
	 * Checks whether the current page is a native WordPress edit page for a landing page.
	 */
	private function is_landing_page_admin_edit() {
		$screen = get_current_screen();

		if ( 'post' === $screen->base ) {
			return $this->is_elementor_landing_page( get_post() );
		}

		return false;
	}

	/**
	 * Admin Localize Settings
	 *
	 * Enables adding properties to the globally available elementorAdmin.config JS object in the Admin Dashboard.
	 * Runs on the 'elementor/admin/localize_settings' filter.
	 *
	 * @since 3.1.0
	 *
	 * @param $settings
	 * @return array|null
	 */
	private function admin_localize_settings( $settings ) {
		$additional_settings = [
			'urls' => [
				'addNewLandingPageUrl' => $this->get_add_new_landing_page_url(),
			],
			'landingPages' => [
				'landingPagesHasPages' => [] !== $this->get_landing_page_posts(),
				'isLandingPageAdminEdit' => $this->is_landing_page_admin_edit(),
			],
		];

		return array_replace_recursive( $settings, $additional_settings );
	}

	/**
	 * Register Landing Pages CPT
	 *
	 * @since 3.1.0
	 */
	private function register_landing_page_cpt() {
		$labels = [
			'name' => esc_html__( 'Landing Pages', 'elementor' ),
			'singular_name' => esc_html__( 'Landing Page', 'elementor' ),
			'add_new' => esc_html__( 'Add New', 'elementor' ),
			'add_new_item' => esc_html__( 'Add New Landing Page', 'elementor' ),
			'edit_item' => esc_html__( 'Edit Landing Page', 'elementor' ),
			'new_item' => esc_html__( 'New Landing Page', 'elementor' ),
			'all_items' => esc_html__( 'All Landing Pages', 'elementor' ),
			'view_item' => esc_html__( 'View Landing Page', 'elementor' ),
			'search_items' => esc_html__( 'Search Landing Pages', 'elementor' ),
			'not_found' => esc_html__( 'No landing pages found', 'elementor' ),
			'not_found_in_trash' => esc_html__( 'No landing pages found in trash', 'elementor' ),
			'parent_item_colon' => '',
			'menu_name' => esc_html__( 'Landing Pages', 'elementor' ),
		];

		$args = [
			'labels' => $labels,
			'public' => true,
			'show_in_menu' => 'edit.php?post_type=elementor_library&tabs_group=library',
			'capability_type' => 'page',
			'taxonomies' => [ Source_Local::TAXONOMY_TYPE_SLUG ],
			'supports' => [ 'title', 'editor', 'comments', 'revisions', 'trackbacks', 'author', 'excerpt', 'page-attributes', 'thumbnail', 'custom-fields', 'post-formats', 'elementor' ],
		];

		register_post_type( self::CPT, $args );
	}

	/**
	 * Remove Post Type Slug
	 *
	 * Landing Pages are supposed to act exactly like pages. This includes their URLs being directly under the site's
	 * domain name. Since "Landing Pages" is a CPT, WordPress automatically adds the landing page slug as a prefix to
	 * it's posts' permalinks. This method checks if the post's post type is Landing Pages, and if it is, it removes
	 * the CPT slug from the requested post URL.
	 *
	 * Runs on the 'post_type_link' filter.
	 *
	 * @since 3.1.0
	 *
	 * @param $post_link
	 * @param $post
	 * @param $leavename
	 * @return string|string[]
	 */
	private function remove_post_type_slug( $post_link, $post, $leavename ) {
		// Only try to modify the permalink if the post is a Landing Page.
		if ( self::CPT !== $post->post_type || 'publish' !== $post->post_status ) {
			return $post_link;
		}

		// Any slug prefixes need to be removed from the post link.
		return get_home_url() . '/' . $post->post_name . '/';
	}

	/**
	 * Adjust Landing Page Query
	 *
	 * Since Landing Pages are a CPT but should act like pages, the WP_Query that is used to fetch the page from the
	 * database needs to be adjusted. This method adds the Landing Pages CPT to the list of queried post types, to
	 * make sure the database query finds the correct Landing Page to display.
	 * Runs on the 'pre_get_posts' action.
	 *
	 * @since 3.1.0
	 *
	 * @param \WP_Query $query
	 */
	private function adjust_landing_page_query( \WP_Query $query ) {
		// Only handle actual pages.
		if (
			! $query->is_main_query()
			// If the query is not for a page.
			|| ! isset( $query->query['page'] )
			// If the query is for a static home/blog page.
			|| is_home()
			// If the post type comes already set, the main query is probably a custom one made by another plugin.
			// In this case we do not want to intervene in order to not cause a conflict.
			|| isset( $query->query['post_type'] )
		) {
			return;
		}

		// Create the post types property as an array and include the landing pages CPT in it.
		$query_post_types = [ 'post', 'page', self::CPT ];

		// Since WordPress determined this is supposed to be a page, we'll pre-set the post_type query arg to make sure
		// it includes the Landing Page CPT, so when the query is parsed, our CPT will be a legitimate match to the
		// Landing Page's permalink (that is directly under the domain, without a CPT slug prefix). In some cases,
		// The 'name' property will be set, and in others it is the 'pagename', so we have to cover both cases.
		if ( ! empty( $query->query['name'] ) ) {
			$query->set( 'post_type', $query_post_types );
		} elseif ( ! empty( $query->query['pagename'] ) && false === strpos( $query->query['pagename'], '/' ) ) {
			$query->set( 'post_type', $query_post_types );

			// We also need to set the name query var since redirect_guess_404_permalink() relies on it.
			add_filter( 'pre_redirect_guess_404_permalink', function( $value ) use ( $query ) {
				set_query_var( 'name', $query->query['pagename'] );

				return $value;
			} );
		}
	}

	/**
	 * Handle 404
	 *
	 * This method runs after a page is not found in the database, but before a page is returned as a 404.
	 * These cases are handled in this filter callback, that runs on the 'pre_handle_404' filter.
	 *
	 * In some cases (such as when a site uses custom permalink structures), WordPress's WP_Query does not identify a
	 * Landing Page's URL as a post belonging to the Landing Page CPT. Some cases are handled successfully by the
	 * adjust_landing_page_query() method, but some are not and still trigger a 404 process. This method handles such
	 * cases by overriding the $wp_query global to fetch the correct landing page post entry.
	 *
	 * For example, since Landing Pages slugs come directly after the site domain name, WP_Query might parse the post
	 * as a category page. Since there is no category matching the slug, it triggers a 404 process. In this case, we
	 * run a query for a Landing Page post with the passed slug ($query->query['category_name']. If a Landing Page
	 * with the passed slug is found, we override the global $wp_query with the new, correct query.
	 *
	 * @param $current_value
	 * @param $query
	 * @return false
	 */
	private function handle_404( $current_value, $query ) {
		global $wp_query;

		// If another plugin/theme already used this filter, exit here to avoid conflicts.
		if ( $current_value ) {
			return $current_value;
		}

		if (
			// Make sure we only intervene in the main query.
			! $query->is_main_query()
			// If a post was found, this is not a 404 case, so do not intervene.
			|| ! empty( $query->posts )
			// This filter is only meant to deal with wrong queries where the only query var is 'category_name'.
			// If there is no 'category_name' query var, do not intervene.
			|| empty( $query->query['category_name'] )
			// If the query is for a real taxonomy (determined by it including a table to search in, such as the
			// wp_term_relationships table), do not intervene.
			|| ! empty( $query->tax_query->table_aliases )
		) {
			return false;
		}

		// Search for a Landing Page with the same name passed as the 'category name'.
		$possible_new_query = new \WP_Query( [
			'post_type' => self::CPT,
			'name' => $query->query['category_name'],
		] );

		// Only if such a Landing Page is found, override the query to fetch the correct page.
		if ( ! empty( $possible_new_query->posts ) ) {
			$wp_query = $possible_new_query; //phpcs:ignore WordPress.WP.GlobalVariablesOverride.Prohibited
		}

		return false;
	}

	public function __construct() {
		$this->permalink_structure = get_option( 'permalink_structure' );

		$this->register_landing_page_cpt();

		// If there is a permalink structure set to the site, run the hooks that modify the Landing Pages permalinks to
		// match WordPress' native 'Pages' post type.
		if ( '' !== $this->permalink_structure ) {
			// Landing Pages' post link needs to be modified to be identical to the pages permalink structure. This
			// needs to happen in both the admin and the front end, since post links are also used in the admin pages.
			add_filter( 'post_type_link', function( $post_link, $post, $leavename ) {
				return $this->remove_post_type_slug( $post_link, $post, $leavename );
			}, 10, 3 );

			// The query itself only has to be manipulated when pages are viewed in the front end.
			if ( ! is_admin() || wp_doing_ajax() ) {
				add_action( 'pre_get_posts', function ( $query ) {
					$this->adjust_landing_page_query( $query );
				} );

				// Handle cases where visiting a Landing Page's URL returns 404.
				add_filter( 'pre_handle_404', function ( $value, $query ) {
					return $this->handle_404( $value, $query );
				}, 10, 2 );
			}
		}

		add_action( 'elementor/documents/register', function( Documents_Manager $documents_manager ) {
			$documents_manager->register_document_type( self::DOCUMENT_TYPE, Landing_Page::get_class_full_name() );
		} );

		add_action( 'admin_menu', function() {
			$this->add_submenu_page();
		}, 30 );

		// Add the custom 'Add New' link for Landing Pages into Elementor's admin config.
		add_action( 'elementor/admin/localize_settings', function( array $settings ) {
			return $this->admin_localize_settings( $settings );
		} );

		add_filter( 'elementor/template_library/sources/local/register_taxonomy_cpts', function( array $cpts ) {
			$cpts[] = self::CPT;

			return $cpts;
		} );

		// In the Landing Pages Admin Table page - Overwrite Template type column header title.
		add_action( 'manage_' . Landing_Pages_Module::CPT . '_posts_columns', function( $posts_columns ) {
			/** @var Source_Local $source_local */
			$source_local = Plugin::$instance->templates_manager->get_source( 'local' );

			return $source_local->admin_columns_headers( $posts_columns );
		} );

		// In the Landing Pages Admin Table page - Overwrite Template type column row values.
		add_action( 'manage_' . Landing_Pages_Module::CPT . '_posts_custom_column', function( $column_name, $post_id ) {
			/** @var Landing_Page $document */
			$document = Plugin::$instance->documents->get( $post_id );

			$document->admin_columns_content( $column_name );
		}, 10, 2 );

		// Overwrite the Admin Bar's 'New +' Landing Page URL with the link that creates the new LP in Elementor
		// with the Template Library modal open.
		add_action( 'admin_bar_menu', function( $admin_bar ) {
			// Get the Landing Page menu node.
			$new_landing_page_node = $admin_bar->get_node( 'new-e-landing-page' );

			if ( $new_landing_page_node ) {
				$new_landing_page_node->href = $this->get_add_new_landing_page_url();

				$admin_bar->add_node( $new_landing_page_node );
			}
		}, 100 );
	}
}
modules/landing-pages/documents/landing-page.php000064400000004141151327220420015763 0ustar00<?php
namespace Elementor\Modules\LandingPages\Documents;

use Elementor\Core\DocumentTypes\PageBase;
use Elementor\Modules\LandingPages\Module as Landing_Pages_Module;
use Elementor\Modules\Library\Traits\Library;
use Elementor\Modules\PageTemplates\Module as Page_Templates_Module;
use Elementor\Plugin;
use Elementor\TemplateLibrary\Source_Local;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Landing_Page extends PageBase {

	// Library Document Trait
	use Library;

	public static function get_properties() {
		$properties = parent::get_properties();

		$properties['support_kit'] = true;
		$properties['show_in_library'] = true;
		$properties['cpt'] = [ Landing_Pages_Module::CPT ];

		return $properties;
	}

	/**
	 * @access public
	 */
	public function get_name() {
		return Landing_Pages_Module::DOCUMENT_TYPE;
	}

	/**
	 * @access public
	 * @static
	 */
	public static function get_title() {
		return esc_html__( 'Landing Page', 'elementor' );
	}

	/**
	 * @access public
	 * @static
	 */
	public static function get_plural_title() {
		return __( 'Landing Pages', 'elementor' );
	}

	/**
	 * Save Document.
	 *
	 * Save an Elementor document.
	 *
	 * @since 3.1.0
	 * @access public
	 *
	 * @param $data
	 *
	 * @return bool
	 */
	public function save( $data ) {
		// This is for the first time a Landing Page is created. It is done in order to load a new Landing Page with
		// 'Canvas' as the default page template.
		if ( empty( $data['settings']['template'] ) ) {
			$data['settings']['template'] = Page_Templates_Module::TEMPLATE_CANVAS;
		}

		return parent::save( $data );
	}

	/**
	 * Admin Columns Content
	 *
	 * @since 3.1.0
	 *
	 * @param $column_name
	 * @access public
	 */
	public function admin_columns_content( $column_name ) {
		if ( 'elementor_library_type' === $column_name ) {
			$this->print_admin_column_type();
		}
	}

	protected function get_remote_library_config() {
		$config = [
			'type' => 'lp',
			'default_route' => 'templates/landing-pages',
			'autoImportSettings' => true,
		];

		return array_replace_recursive( parent::get_remote_library_config(), $config );
	}
}
modules/history/views/history-panel-template.php000064400000003535151327220420016176 0ustar00<?php
if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

?>
<script type="text/template" id="tmpl-elementor-panel-history-page">
	<div id="elementor-panel-elements-navigation" class="elementor-panel-navigation">
		<div class="elementor-component-tab elementor-panel-navigation-tab" data-tab="actions"><?php echo esc_html__( 'Actions', 'elementor' ); ?></div>
		<div class="elementor-component-tab elementor-panel-navigation-tab" data-tab="revisions"><?php echo esc_html__( 'Revisions', 'elementor' ); ?></div>
	</div>
	<div id="elementor-panel-history-content"></div>
</script>

<script type="text/template" id="tmpl-elementor-panel-history-tab">
	<div id="elementor-history-list"></div>
	<div class="elementor-history-revisions-message"><?php echo esc_html__( 'Switch to Revisions tab for older versions', 'elementor' ); ?></div>
</script>

<script type="text/template" id="tmpl-elementor-panel-history-no-items">
	<img class="elementor-nerd-box-icon" src="<?php
		// PHPCS - Safe Elementor SVG
		echo ELEMENTOR_ASSETS_URL . 'images/information.svg'; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>" />
	<div class="elementor-nerd-box-title"><?php echo esc_html__( 'No History Yet', 'elementor' ); ?></div>
	<div class="elementor-nerd-box-message"><?php echo esc_html__( 'Once you start working, you\'ll be able to redo / undo any action you make in the editor.', 'elementor' ); ?></div>
</script>

<script type="text/template" id="tmpl-elementor-panel-history-item">
	<div class="elementor-history-item__details">
		<span class="elementor-history-item__title">{{{ title }}}</span>
		<span class="elementor-history-item__subtitle">{{{ subTitle }}}</span>
		<span class="elementor-history-item__action">{{{ action }}}</span>
	</div>
	<div class="elementor-history-item__icon">
		<span class="eicon" aria-hidden="true"></span>
	</div>
</script>
modules/history/views/revisions-panel-template.php000064400000007035151327220420016515 0ustar00<?php
if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

?>
<script type="text/template" id="tmpl-elementor-panel-revisions">
	<div class="elementor-panel-box">
	<div class="elementor-panel-scheme-buttons">
			<div class="elementor-panel-scheme-button-wrapper elementor-panel-scheme-discard">
				<button class="elementor-button" disabled>
					<i class="eicon-close" aria-hidden="true"></i>
					<?php echo esc_html__( 'Discard', 'elementor' ); ?>
				</button>
			</div>
			<div class="elementor-panel-scheme-button-wrapper elementor-panel-scheme-save">
				<button class="elementor-button elementor-button-success" disabled>
					<?php echo esc_html__( 'Apply', 'elementor' ); ?>
				</button>
			</div>
		</div>
	</div>

	<div class="elementor-panel-box">
		<div class="elementor-panel-heading">
			<div class="elementor-panel-heading-title"><?php echo esc_html__( 'Revisions', 'elementor' ); ?></div>
		</div>
		<div id="elementor-revisions-list" class="elementor-panel-box-content"></div>
	</div>
</script>

<script type="text/template" id="tmpl-elementor-panel-revisions-no-revisions">
	<#
	var no_revisions_1 = '<?php echo esc_html__( 'Revision history lets you save your previous versions of your work, and restore them any time.', 'elementor' ); ?>',
		no_revisions_2 = '<?php echo esc_html__( 'Start designing your page and you will be able to see the entire revision history here.', 'elementor' ); ?>',
		revisions_disabled_1 = '<?php echo esc_html__( 'It looks like the post revision feature is unavailable in your website.', 'elementor' ); ?>',
		revisions_disabled_2 = '<?php printf(
			/* translators: %1$s Link open tag, %2$s: Link close tag. */
			esc_html__( 'Learn more about %1$sWordPress revisions%2$s', 'elementor' ),
			'<a target="_blank" href="https://go.elementor.com/wordpress-revisions/">',
			'</a>'
		); ?>';
	#>
	<img class="elementor-nerd-box-icon" src="<?php
	// PHPCS - Safe Elementor SVG
	echo ELEMENTOR_ASSETS_URL . 'images/information.svg' // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>" />
	<div class="elementor-nerd-box-title"><?php echo esc_html__( 'No Revisions Saved Yet', 'elementor' ); ?></div>
	<div class="elementor-nerd-box-message">{{{ elementor.config.document.revisions.enabled ? no_revisions_1 : revisions_disabled_1 }}}</div>
	<div class="elementor-nerd-box-message">{{{ elementor.config.document.revisions.enabled ? no_revisions_2 : revisions_disabled_2 }}}</div>
</script>

<script type="text/template" id="tmpl-elementor-panel-revisions-loading">
	<i class="eicon-loading eicon-animation-spin" aria-hidden="true"></i>
</script>

<script type="text/template" id="tmpl-elementor-panel-revisions-revision-item">
	<div class="elementor-revision-item__wrapper {{ type }}">
		<div class="elementor-revision-item__gravatar">{{{ gravatar }}}</div>
		<div class="elementor-revision-item__details">
			<div class="elementor-revision-date" title="{{{ new Date( timestamp * 1000 ) }}}">{{{ date }}}</div>
			<div class="elementor-revision-meta">
				<span>{{{ typeLabel }}}</span>
				<?php echo esc_html__( 'By', 'elementor' ); ?> {{{ author }}}
				<span>(#{{{ id }}})</span>&nbsp;
			</div>
		</div>
		<div class="elementor-revision-item__tools">
			<# if ( 'current' === type ) { #>
				<i class="elementor-revision-item__tools-current eicon-star" aria-hidden="true"></i>
				<span class="elementor-screen-only"><?php echo esc_html__( 'Current', 'elementor' ); ?></span>
			<# } #>

			<i class="elementor-revision-item__tools-spinner eicon-loading eicon-animation-spin" aria-hidden="true"></i>
		</div>
	</div>
</script>
modules/history/module.php000064400000003007151327220420011711 0ustar00<?php
namespace Elementor\Modules\History;

use Elementor\Core\Base\Module as BaseModule;
use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor history module.
 *
 * Elementor history module handler class is responsible for registering and
 * managing Elementor history modules.
 *
 * @since 1.7.0
 */
class Module extends BaseModule {

	/**
	 * Get module name.
	 *
	 * Retrieve the history module name.
	 *
	 * @since 1.7.0
	 * @access public
	 *
	 * @return string Module name.
	 */
	public function get_name() {
		return 'history';
	}

	/**
	 * Localize settings.
	 *
	 * Add new localized settings for the history module.
	 *
	 * Fired by `elementor/editor/localize_settings` filter.
	 *
	 * @since 1.7.0
	 * @access public
	 * @deprecated 3.1.0
	 *
	 * @return array Localized settings.
	 */
	public function localize_settings() {
		Plugin::$instance->modules_manager->get_modules( 'dev-tools' )->deprecation->deprecated_function( __METHOD__, '3.1.0' );

		return [];
	}

	/**
	 * @since 2.3.0
	 * @access public
	 */
	public function add_templates() {
		Plugin::$instance->common->add_template( __DIR__ . '/views/history-panel-template.php' );
		Plugin::$instance->common->add_template( __DIR__ . '/views/revisions-panel-template.php' );
	}

	/**
	 * History module constructor.
	 *
	 * Initializing Elementor history module.
	 *
	 * @since 1.7.0
	 * @access public
	 */
	public function __construct() {
		add_action( 'elementor/editor/init', [ $this, 'add_templates' ] );
	}
}
modules/history/revisions-manager.php000064400000023766151327220420014073 0ustar00<?php
namespace Elementor\Modules\History;

use Elementor\Core\Base\Document;
use Elementor\Core\Common\Modules\Ajax\Module as Ajax;
use Elementor\Core\Files\CSS\Post as Post_CSS;
use Elementor\Plugin;
use Elementor\Utils;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor history revisions manager.
 *
 * Elementor history revisions manager handler class is responsible for
 * registering and managing Elementor revisions manager.
 *
 * @since 1.7.0
 */
class Revisions_Manager {

	/**
	 * Maximum number of revisions to display.
	 */
	const MAX_REVISIONS_TO_DISPLAY = 100;

	/**
	 * Authors list.
	 *
	 * Holds all the authors.
	 *
	 * @access private
	 *
	 * @var array
	 */
	private static $authors = [];

	/**
	 * History revisions manager constructor.
	 *
	 * Initializing Elementor history revisions manager.
	 *
	 * @since 1.7.0
	 * @access public
	 */
	public function __construct() {
		self::register_actions();
	}

	/**
	 * @since 1.7.0
	 * @access public
	 * @static
	 */
	public static function handle_revision() {
		add_filter( 'wp_save_post_revision_check_for_changes', '__return_false' );
	}

	/**
	 * @since 2.0.0
	 * @access public
	 * @static
	 *
	 * @param $post_content
	 * @param $post_id
	 *
	 * @return string
	 */
	public static function avoid_delete_auto_save( $post_content, $post_id ) {
		// Add a temporary string in order the $post will not be equal to the $autosave
		// in edit-form-advanced.php:210
		$document = Plugin::$instance->documents->get( $post_id );

		if ( $document && $document->is_built_with_elementor() ) {
			$post_content .= '<!-- Created with Elementor -->';
		}

		return $post_content;
	}

	/**
	 * @since 2.0.0
	 * @access public
	 * @static
	 */
	public static function remove_temp_post_content() {
		global $post;

		$document = Plugin::$instance->documents->get( $post->ID );

		if ( ! $document || ! $document->is_built_with_elementor() ) {
			return;
		}

		$post->post_content = str_replace( '<!-- Created with Elementor -->', '', $post->post_content );
	}

	/**
	 * @since 1.7.0
	 * @access public
	 * @static
	 *
	 * @param int   $post_id
	 * @param array $query_args
	 * @param bool  $parse_result
	 *
	 * @return array
	 */
	public static function get_revisions( $post_id = 0, $query_args = [], $parse_result = true ) {
		$post = get_post( $post_id );

		if ( ! $post || empty( $post->ID ) ) {
			return [];
		}

		$revisions = [];

		$default_query_args = [
			'posts_per_page' => self::MAX_REVISIONS_TO_DISPLAY,
			'meta_key' => '_elementor_data',
		];

		$query_args = array_merge( $default_query_args, $query_args );

		$posts = wp_get_post_revisions( $post->ID, $query_args );

		if ( ! wp_revisions_enabled( $post ) ) {
			$autosave = Utils::get_post_autosave( $post->ID );
			if ( $autosave ) {
				if ( $parse_result ) {
					array_unshift( $posts, $autosave );
				} else {
					array_unshift( $posts, $autosave->ID );
				}
			}
		}

		if ( $parse_result ) {
			array_unshift( $posts, $post );
		} else {
			array_unshift( $posts, $post->ID );
			return $posts;
		}

		$current_time = current_time( 'timestamp' );

		/** @var \WP_Post $revision */
		foreach ( $posts as $revision ) {
			$date = date_i18n( _x( 'M j @ H:i', 'revision date format', 'elementor' ), strtotime( $revision->post_modified ) );

			$human_time = human_time_diff( strtotime( $revision->post_modified ), $current_time );

			if ( $revision->ID === $post->ID ) {
				$type = 'current';
				$type_label = esc_html__( 'Current Version', 'elementor' );
			} elseif ( false !== strpos( $revision->post_name, 'autosave' ) ) {
				$type = 'autosave';
				$type_label = esc_html__( 'Autosave', 'elementor' );
			} else {
				$type = 'revision';
				$type_label = esc_html__( 'Revision', 'elementor' );
			}

			if ( ! isset( self::$authors[ $revision->post_author ] ) ) {
				self::$authors[ $revision->post_author ] = [
					'avatar' => get_avatar( $revision->post_author, 22 ),
					'display_name' => get_the_author_meta( 'display_name', $revision->post_author ),
				];
			}

			$revisions[] = [
				'id' => $revision->ID,
				'author' => self::$authors[ $revision->post_author ]['display_name'],
				'timestamp' => strtotime( $revision->post_modified ),
				'date' => sprintf(
					/* translators: 1: Human readable time difference, 2: Date. */
					__( '%1$s ago (%2$s)', 'elementor' ),
					$human_time,
					$date
				),
				'type' => $type,
				'typeLabel' => $type_label,
				'gravatar' => self::$authors[ $revision->post_author ]['avatar'],
			];
		}

		return $revisions;
	}

	/**
	 * @since 1.9.2
	 * @access public
	 * @static
	 */
	public static function update_autosave( $autosave_data ) {
		self::save_revision( $autosave_data['ID'] );
	}

	/**
	 * @since 1.7.0
	 * @access public
	 * @static
	 */
	public static function save_revision( $revision_id ) {
		$parent_id = wp_is_post_revision( $revision_id );

		if ( $parent_id ) {
			Plugin::$instance->db->safe_copy_elementor_meta( $parent_id, $revision_id );
		}
	}

	/**
	 * @since 1.7.0
	 * @access public
	 * @static
	 */
	public static function restore_revision( $parent_id, $revision_id ) {
		$parent = Plugin::$instance->documents->get( $parent_id );
		$revision = Plugin::$instance->documents->get( $revision_id );

		if ( ! $parent || ! $revision ) {
			return;
		}

		$is_built_with_elementor = $revision->is_built_with_elementor();

		$parent->set_is_built_with_elementor( $is_built_with_elementor );

		if ( ! $is_built_with_elementor ) {
			return;
		}

		Plugin::$instance->db->copy_elementor_meta( $revision_id, $parent_id );

		$post_css = Post_CSS::create( $parent_id );

		$post_css->update();
	}

	/**
	 * @since 2.3.0
	 * @access public
	 * @static
	 *
	 * @param $data
	 *
	 * @return array
	 * @throws \Exception
	 */
	public static function ajax_get_revision_data( array $data ) {
		if ( ! isset( $data['id'] ) ) {
			throw new \Exception( 'You must set the revision ID.' );
		}

		$revision = Plugin::$instance->documents->get( $data['id'] );

		if ( ! $revision ) {
			throw new \Exception( 'Invalid revision.' );
		}

		if ( ! current_user_can( 'edit_post', $revision->get_id() ) ) {
			throw new \Exception( esc_html__( 'Access denied.', 'elementor' ) );
		}

		$revision_data = [
			'settings' => $revision->get_settings(),
			'elements' => $revision->get_elements_data(),
		];

		return $revision_data;
	}

	/**
	 * @since 1.7.0
	 * @access public
	 * @static
	 */
	public static function add_revision_support_for_all_post_types() {
		$post_types = get_post_types_by_support( 'elementor' );
		foreach ( $post_types as $post_type ) {
			add_post_type_support( $post_type, 'revisions' );
		}
	}

	/**
	 * @since 2.0.0
	 * @access public
	 * @static
	 * @param array $return_data
	 * @param Document $document
	 *
	 * @return array
	 */
	public static function on_ajax_save_builder_data( $return_data, $document ) {
		$post_id = $document->get_main_id();

		$latest_revisions = self::get_revisions(
			$post_id, [
				'posts_per_page' => 1,
			]
		);

		$all_revision_ids = self::get_revisions(
			$post_id, [
				'fields' => 'ids',
			], false
		);

		// Send revisions data only if has revisions.
		if ( ! empty( $latest_revisions ) ) {
			$current_revision_id = self::current_revision_id( $post_id );

			$return_data = array_replace_recursive( $return_data, [
				'config' => [
					'document' => [
						'revisions' => [
							'current_id' => $current_revision_id,
						],
					],
				],
				'latest_revisions' => $latest_revisions,
				'revisions_ids' => $all_revision_ids,
			] );
		}

		return $return_data;
	}

	/**
	 * @since 1.7.0
	 * @access public
	 * @static
	 */
	public static function db_before_save( $status, $has_changes ) {
		if ( $has_changes ) {
			self::handle_revision();
		}
	}

	public static function document_config( $settings, $post_id ) {
		$settings['revisions'] = [
			'enabled' => ( $post_id && wp_revisions_enabled( get_post( $post_id ) ) ),
			'current_id' => self::current_revision_id( $post_id ),
		];

		return $settings;
	}

	/**
	 * Localize settings.
	 *
	 * Add new localized settings for the revisions manager.
	 *
	 * Fired by `elementor/editor/editor_settings` filter.
	 *
	 * @since 1.7.0
	 * @access public
	 * @static
	 * @deprecated 3.1.0
	 */
	public static function editor_settings() {
		Plugin::$instance->modules_manager->get_modules( 'dev-tools' )->deprecation->deprecated_function( __METHOD__, '3.1.0' );

		return [];
	}

	public static function ajax_get_revisions() {
		return self::get_revisions();
	}

	/**
	 * @since 2.3.0
	 * @access public
	 * @static
	 */
	public static function register_ajax_actions( Ajax $ajax ) {
		$ajax->register_ajax_action( 'get_revisions', [ __CLASS__, 'ajax_get_revisions' ] );
		$ajax->register_ajax_action( 'get_revision_data', [ __CLASS__, 'ajax_get_revision_data' ] );
	}

	/**
	 * @since 1.7.0
	 * @access private
	 * @static
	 */
	private static function register_actions() {
		add_action( 'wp_restore_post_revision', [ __CLASS__, 'restore_revision' ], 10, 2 );
		add_action( 'init', [ __CLASS__, 'add_revision_support_for_all_post_types' ], 9999 );
		add_filter( 'elementor/document/config', [ __CLASS__, 'document_config' ], 10, 2 );
		add_action( 'elementor/db/before_save', [ __CLASS__, 'db_before_save' ], 10, 2 );
		add_action( '_wp_put_post_revision', [ __CLASS__, 'save_revision' ] );
		add_action( 'wp_creating_autosave', [ __CLASS__, 'update_autosave' ] );
		add_action( 'elementor/ajax/register_actions', [ __CLASS__, 'register_ajax_actions' ] );

		// Hack to avoid delete the auto-save revision in WP editor.
		add_filter( 'edit_post_content', [ __CLASS__, 'avoid_delete_auto_save' ], 10, 2 );
		add_action( 'edit_form_after_title', [ __CLASS__, 'remove_temp_post_content' ] );

		if ( wp_doing_ajax() ) {
			add_filter( 'elementor/documents/ajax_save/return_data', [ __CLASS__, 'on_ajax_save_builder_data' ], 10, 2 );
		}
	}

	/**
	 * @since 1.9.0
	 * @access private
	 * @static
	 */
	private static function current_revision_id( $post_id ) {
		$current_revision_id = $post_id;
		$autosave = Utils::get_post_autosave( $post_id );

		if ( is_object( $autosave ) ) {
			$current_revision_id = $autosave->ID;
		}

		return $current_revision_id;
	}
}
modules/admin-bar/module.php000064400000006323151327220420012046 0ustar00<?php
namespace Elementor\Modules\AdminBar;

use Elementor\Core\Base\Document;
use Elementor\Core\Base\App as BaseApp;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

class Module extends BaseApp {
	/**
	 * @var Document[]
	 */
	private $documents = [];

	/**
	 * @return bool
	 */
	public static function is_active() {
		return is_admin_bar_showing();
	}

	/**
	 * @return string
	 */
	public function get_name() {
		return 'admin-bar';
	}

	/**
	 * Collect the documents that was rendered in the current page.
	 *
	 * @param Document $document
	 * @param $is_excerpt
	 */
	public function add_document_to_admin_bar( Document $document, $is_excerpt ) {
		if (
			$is_excerpt ||
			! $document::get_property( 'show_on_admin_bar' ) ||
			! $document->is_editable_by_current_user()
		) {
			return;
		}

		$this->documents[ $document->get_main_id() ] = $document;
	}

	/**
	 * Scripts for module.
	 */
	public function enqueue_scripts() {
		if ( empty( $this->documents ) ) {
			return;
		}

		// Should load 'elementor-admin-bar' before 'admin-bar'
		wp_dequeue_script( 'admin-bar' );

		wp_enqueue_script(
			'elementor-admin-bar',
			$this->get_js_assets_url( 'elementor-admin-bar' ),
			[ 'elementor-frontend-modules' ],
			ELEMENTOR_VERSION,
			true
		);

		// This is a core script of WordPress, it is not required to pass the 'ver' argument.
		wp_enqueue_script( // phpcs:ignore WordPress.WP.EnqueuedResourceParameters
			'admin-bar',
			null,
			[ 'elementor-admin-bar' ],
			false,
			true
		);

		$this->print_config( 'elementor-admin-bar' );
	}

	/**
	 * Creates admin bar menu items config.
	 *
	 * @return array
	 */
	public function get_init_settings() {
		$settings = [];

		if ( ! empty( $this->documents ) ) {
			$settings['elementor_edit_page'] = $this->get_edit_button_config();
		}

		/**
		 * Admin bar settings in the frontend.
		 *
		 * Register admin_bar config to parse later in the frontend and add to the admin bar with JS.
		 *
		 * @since 3.0.0
		 *
		 * @param array $settings the admin_bar config
		 */
		$settings = apply_filters( 'elementor/frontend/admin_bar/settings', $settings );

		return $settings;
	}

	/**
	 * Creates the config for 'Edit with elementor' menu item.
	 *
	 * @return array
	 */
	private function get_edit_button_config() {
		$queried_object_id = get_queried_object_id();
		$href = null;

		if ( is_singular() && isset( $this->documents[ $queried_object_id ] ) ) {
			$href = $this->documents[ $queried_object_id ]->get_edit_url();

			unset( $this->documents[ $queried_object_id ] );
		}

		return [
			'id' => 'elementor_edit_page',
			'title' => esc_html__( 'Edit with Elementor', 'elementor' ),
			'href' => $href,
			'children' => array_map( function ( $document ) {
				return [
					'id' => "elementor_edit_doc_{$document->get_main_id()}",
					'title' => $document->get_post()->post_title,
					'sub_title' => $document::get_title(),
					'href' => $document->get_edit_url(),
				];
			}, $this->documents ),
		];
	}

	/**
	 * Module constructor.
	 */
	public function __construct() {
		add_action( 'elementor/frontend/before_get_builder_content', [ $this, 'add_document_to_admin_bar' ], 10, 2 );
		add_action( 'wp_footer', [ $this, 'enqueue_scripts' ], 11 /* after third party scripts */ );
	}
}
includes/frontend.php000064400000111050151327220420010676 0ustar00<?php
namespace Elementor;

use Elementor\Core\Base\App;
use Elementor\Core\Frontend\Render_Mode_Manager;
use Elementor\Core\Responsive\Files\Frontend as FrontendFile;
use Elementor\Core\Files\CSS\Global_CSS;
use Elementor\Core\Files\CSS\Post as Post_CSS;
use Elementor\Core\Files\CSS\Post_Preview;
use Elementor\Core\Responsive\Responsive;
use Elementor\Core\Settings\Manager as SettingsManager;
use Elementor\Core\Breakpoints\Manager as Breakpoints_Manager;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor frontend.
 *
 * Elementor frontend handler class is responsible for initializing Elementor in
 * the frontend.
 *
 * @since 1.0.0
 */
class Frontend extends App {

	/**
	 * The priority of the content filter.
	 */
	const THE_CONTENT_FILTER_PRIORITY = 9;

	/**
	 * Post ID.
	 *
	 * Holds the ID of the current post.
	 *
	 * @access private
	 *
	 * @var int Post ID.
	 */
	private $post_id;

	/**
	 * Fonts to enqueue
	 *
	 * Holds the list of fonts that are being used in the current page.
	 *
	 * @since 1.9.4
	 * @access public
	 *
	 * @var array Used fonts. Default is an empty array.
	 */
	public $fonts_to_enqueue = [];

	/**
	 * Holds the class that respond to manage the render mode.
	 *
	 * @var Render_Mode_Manager
	 */
	public $render_mode_manager;

	/**
	 * Registered fonts.
	 *
	 * Holds the list of enqueued fonts in the current page.
	 *
	 * @since 1.0.0
	 * @access private
	 *
	 * @var array Registered fonts. Default is an empty array.
	 */
	private $registered_fonts = [];

	/**
	 * Icon Fonts to enqueue
	 *
	 * Holds the list of Icon fonts that are being used in the current page.
	 *
	 * @since 2.4.0
	 * @access private
	 *
	 * @var array Used icon fonts. Default is an empty array.
	 */
	private $icon_fonts_to_enqueue = [];

	/**
	 * Enqueue Icon Fonts
	 *
	 * Holds the list of Icon fonts already enqueued  in the current page.
	 *
	 * @since 2.4.0
	 * @access private
	 *
	 * @var array enqueued icon fonts. Default is an empty array.
	 */
	private $enqueued_icon_fonts = [];

	/**
	 * Whether the page is using Elementor.
	 *
	 * Used to determine whether the current page is using Elementor.
	 *
	 * @since 1.0.0
	 * @access private
	 *
	 * @var bool Whether Elementor is being used. Default is false.
	 */
	private $_has_elementor_in_page = false;

	/**
	 * Whether the excerpt is being called.
	 *
	 * Used to determine whether the call to `the_content()` came from `get_the_excerpt()`.
	 *
	 * @since 1.0.0
	 * @access private
	 *
	 * @var bool Whether the excerpt is being used. Default is false.
	 */
	private $_is_excerpt = false;

	/**
	 * Filters removed from the content.
	 *
	 * Hold the list of filters removed from `the_content()`. Used to hold the filters that
	 * conflicted with Elementor while Elementor process the content.
	 *
	 * @since 1.0.0
	 * @access private
	 *
	 * @var array Filters removed from the content. Default is an empty array.
	 */
	private $content_removed_filters = [];

	/**
	 * @var string[]
	 */
	private $body_classes = [
		'elementor-default',
	];

	/**
	 * Front End constructor.
	 *
	 * Initializing Elementor front end. Make sure we are not in admin, not and
	 * redirect from old URL structure of Elementor editor.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function __construct() {
		// We don't need this class in admin side, but in AJAX requests.
		if ( is_admin() && ! wp_doing_ajax() ) {
			return;
		}

		add_action( 'template_redirect', [ $this, 'init_render_mode' ], -1 /* Before admin bar. */ );
		add_action( 'template_redirect', [ $this, 'init' ] );
		add_action( 'wp_enqueue_scripts', [ $this, 'register_scripts' ], 5 );
		add_action( 'wp_enqueue_scripts', [ $this, 'register_styles' ], 5 );

		// TODO: a temporary solution to a scenario that the elementor-icons.css file was de-registered and the e-icons font fonts should not be loaded.
		add_action( 'wp_enqueue_scripts', function() {
			if ( ! wp_style_is( 'elementor-icons', 'registered' ) ) {
				$elementor_icons_css_reset = '[class^="eicon"], [class*=" eicon-"] { font-family: "initial"; } [class^="eicon"]:before, [class*=" eicon-"]:before { content: ""; }';

				wp_add_inline_style( 'elementor-frontend', $elementor_icons_css_reset );
			}
		}, 30 );

		$this->add_content_filter();

		// Hack to avoid enqueue post CSS while it's a `the_excerpt` call.
		add_filter( 'get_the_excerpt', [ $this, 'start_excerpt_flag' ], 1 );
		add_filter( 'get_the_excerpt', [ $this, 'end_excerpt_flag' ], 20 );
	}

	/**
	 * Get module name.
	 *
	 * Retrieve the module name.
	 *
	 * @since 2.3.0
	 * @access public
	 *
	 * @return string Module name.
	 */
	public function get_name() {
		return 'frontend';
	}

	/**
	 * Init render mode manager.
	 */
	public function init_render_mode() {
		if ( Plugin::$instance->editor->is_edit_mode() ) {
			return;
		}

		$this->render_mode_manager = new Render_Mode_Manager();
	}

	/**
	 * Init.
	 *
	 * Initialize Elementor front end. Hooks the needed actions to run Elementor
	 * in the front end, including script and style registration.
	 *
	 * Fired by `template_redirect` action.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function init() {
		if ( Plugin::$instance->editor->is_edit_mode() ) {
			return;
		}

		add_filter( 'body_class', [ $this, 'body_class' ] );

		if ( Plugin::$instance->preview->is_preview_mode() ) {
			return;
		}

		if ( current_user_can( 'manage_options' ) ) {
			Plugin::$instance->init_common();
		}

		$this->post_id = get_the_ID();

		$document = Plugin::$instance->documents->get( $this->post_id );

		if ( is_singular() && $document && $document->is_built_with_elementor() ) {
			add_action( 'wp_enqueue_scripts', [ $this, 'enqueue_styles' ] );
		}

		// Priority 7 to allow google fonts in header template to load in <head> tag
		add_action( 'wp_head', [ $this, 'print_fonts_links' ], 7 );
		add_action( 'wp_head', [ $this, 'add_theme_color_meta_tag' ] );
		add_action( 'wp_footer', [ $this, 'wp_footer' ] );
	}

	/**
	 * @since 2.0.12
	 * @access public
	 * @param string|array $class
	 */
	public function add_body_class( $class ) {
		if ( is_array( $class ) ) {
			$this->body_classes = array_merge( $this->body_classes, $class );
		} else {
			$this->body_classes[] = $class;
		}
	}

	/**
	 * Add Theme Color Meta Tag
	 *
	 * @since 3.0.0
	 * @access public
	 */
	public function add_theme_color_meta_tag() {
		$kit = Plugin::$instance->kits_manager->get_active_kit_for_frontend();
		$mobile_theme_color = $kit->get_settings( 'mobile_theme_color' );

		if ( ! empty( $mobile_theme_color ) ) {
			?>
			<meta name="theme-color" content="<?php echo esc_html( $mobile_theme_color ); ?>">
			<?php
		}
	}

	/**
	 * Body tag classes.
	 *
	 * Add new elementor classes to the body tag.
	 *
	 * Fired by `body_class` filter.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param array $classes Optional. One or more classes to add to the body tag class list.
	 *                       Default is an empty array.
	 *
	 * @return array Body tag classes.
	 */
	public function body_class( $classes = [] ) {
		$classes = array_merge( $classes, $this->body_classes );

		$id = get_the_ID();

		$document = Plugin::$instance->documents->get( $id );

		if ( is_singular() && $document && $document->is_built_with_elementor() ) {
			$classes[] = 'elementor-page elementor-page-' . $id;
		}

		if ( Plugin::$instance->preview->is_preview_mode() ) {
			$editor_preferences = SettingsManager::get_settings_managers( 'editorPreferences' );

			$show_hidden_elements = $editor_preferences->get_model()->get_settings( 'show_hidden_elements' );

			if ( 'yes' === $show_hidden_elements ) {
				$classes[] = 'e-preview--show-hidden-elements';
			}
		}

		return $classes;
	}

	/**
	 * Add content filter.
	 *
	 * Remove plain content and render the content generated by Elementor.
	 *
	 * @since 1.8.0
	 * @access public
	 */
	public function add_content_filter() {
		add_filter( 'the_content', [ $this, 'apply_builder_in_content' ], self::THE_CONTENT_FILTER_PRIORITY );
	}

	/**
	 * Remove content filter.
	 *
	 * When the Elementor generated content rendered, we remove the filter to prevent multiple
	 * accuracies. This way we make sure Elementor renders the content only once.
	 *
	 * @since 1.8.0
	 * @access public
	 */
	public function remove_content_filter() {
		remove_filter( 'the_content', [ $this, 'apply_builder_in_content' ], self::THE_CONTENT_FILTER_PRIORITY );
	}

	/**
	 * Registers scripts.
	 *
	 * Registers all the frontend scripts.
	 *
	 * Fired by `wp_enqueue_scripts` action.
	 *
	 * @since 1.2.1
	 * @access public
	 */
	public function register_scripts() {
		/**
		 * Before frontend register scripts.
		 *
		 * Fires before Elementor frontend scripts are registered.
		 *
		 * @since 1.2.1
		 */
		do_action( 'elementor/frontend/before_register_scripts' );

		wp_register_script(
			'elementor-webpack-runtime',
			$this->get_js_assets_url( 'webpack.runtime', 'assets/js/' ),
			[],
			ELEMENTOR_VERSION,
			true
		);

		wp_register_script(
			'elementor-frontend-modules',
			$this->get_js_assets_url( 'frontend-modules' ),
			[
				'elementor-webpack-runtime',
				'jquery',
			],
			ELEMENTOR_VERSION,
			true
		);

		wp_register_script(
			'elementor-waypoints',
			$this->get_js_assets_url( 'waypoints', 'assets/lib/waypoints/' ),
			[
				'jquery',
			],
			'4.0.2',
			true
		);

		wp_register_script(
			'flatpickr',
			$this->get_js_assets_url( 'flatpickr', 'assets/lib/flatpickr/' ),
			[
				'jquery',
			],
			'4.1.4',
			true
		);

		wp_register_script(
			'imagesloaded',
			$this->get_js_assets_url( 'imagesloaded', 'assets/lib/imagesloaded/' ),
			[
				'jquery',
			],
			'4.1.0',
			true
		);

		wp_register_script(
			'jquery-numerator',
			$this->get_js_assets_url( 'jquery-numerator', 'assets/lib/jquery-numerator/' ),
			[
				'jquery',
			],
			'0.2.1',
			true
		);

		/**
		 * @deprecated since 2.7.0 Use Swiper instead
		 */
		wp_register_script(
			'jquery-slick',
			$this->get_js_assets_url( 'slick', 'assets/lib/slick/' ),
			[
				'jquery',
			],
			'1.8.1',
			true
		);

		wp_register_script(
			'elementor-dialog',
			$this->get_js_assets_url( 'dialog', 'assets/lib/dialog/' ),
			[
				'jquery-ui-position',
			],
			'4.8.1',
			true
		);

		wp_register_script(
			'elementor-gallery',
			$this->get_js_assets_url( 'e-gallery', 'assets/lib/e-gallery/js/' ),
			[
				'jquery',
			],
			'1.2.0',
			true
		);

		wp_register_script(
			'share-link',
			$this->get_js_assets_url( 'share-link', 'assets/lib/share-link/' ),
			[
				'jquery',
			],
			ELEMENTOR_VERSION,
			true
		);

		wp_register_script(
			'elementor-frontend',
			$this->get_js_assets_url( 'frontend' ),
			$this->get_elementor_frontend_dependencies(),
			ELEMENTOR_VERSION,
			true
		);

		/**
		 * After frontend register scripts.
		 *
		 * Fires after Elementor frontend scripts are registered.
		 *
		 * @since 1.2.1
		 */
		do_action( 'elementor/frontend/after_register_scripts' );
	}

	/**
	 * Registers styles.
	 *
	 * Registers all the frontend styles.
	 *
	 * Fired by `wp_enqueue_scripts` action.
	 *
	 * @since 1.2.0
	 * @access public
	 */
	public function register_styles() {
		/**
		 * Before frontend register styles.
		 *
		 * Fires before Elementor frontend styles are registered.
		 *
		 * @since 1.2.0
		 */
		do_action( 'elementor/frontend/before_register_styles' );

		wp_register_style(
			'font-awesome',
			$this->get_css_assets_url( 'font-awesome', 'assets/lib/font-awesome/css/' ),
			[],
			'4.7.0'
		);

		wp_register_style(
			'elementor-icons',
			$this->get_css_assets_url( 'elementor-icons', 'assets/lib/eicons/css/' ),
			[],
			'5.13.0'
		);

		wp_register_style(
			'flatpickr',
			$this->get_css_assets_url( 'flatpickr', 'assets/lib/flatpickr/' ),
			[],
			'4.1.4'
		);

		wp_register_style(
			'elementor-gallery',
			$this->get_css_assets_url( 'e-gallery', 'assets/lib/e-gallery/css/' ),
			[],
			'1.2.0'
		);

		$min_suffix = Utils::is_script_debug() ? '' : '.min';

		$direction_suffix = is_rtl() ? '-rtl' : '';

		$frontend_base_file_name = $this->is_optimized_css_mode() ? 'frontend-lite' : 'frontend';

		$frontend_file_name = $frontend_base_file_name . $direction_suffix . $min_suffix . '.css';

		$frontend_dependencies = [];

		$has_custom_breakpoints = Plugin::$instance->breakpoints->has_custom_breakpoints();

		if ( ! Plugin::$instance->experiments->is_feature_active( 'e_dom_optimization' ) ) {
			// If The Dom Optimization feature is disabled, register the legacy CSS
			wp_register_style(
				'elementor-frontend-legacy',
				$this->get_frontend_file_url( 'frontend-legacy' . $direction_suffix . $min_suffix . '.css', $has_custom_breakpoints ),
				[],
				ELEMENTOR_VERSION
			);

			$frontend_dependencies[] = 'elementor-frontend-legacy';
		}

		wp_register_style(
			'elementor-frontend',
			$this->get_frontend_file_url( $frontend_file_name, $has_custom_breakpoints ),
			$frontend_dependencies,
			$has_custom_breakpoints ? null : ELEMENTOR_VERSION
		);

		/**
		 * After frontend register styles.
		 *
		 * Fires after Elementor frontend styles are registered.
		 *
		 * @since 1.2.0
		 */
		do_action( 'elementor/frontend/after_register_styles' );
	}

	/**
	 * Enqueue scripts.
	 *
	 * Enqueue all the frontend scripts.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function enqueue_scripts() {
		/**
		 * Before frontend enqueue scripts.
		 *
		 * Fires before Elementor frontend scripts are enqueued.
		 *
		 * @since 1.0.0
		 */
		do_action( 'elementor/frontend/before_enqueue_scripts' );

		wp_enqueue_script( 'elementor-frontend' );

		if ( ! $this->is_improved_assets_loading() ) {
			wp_enqueue_script(
				'preloaded-modules',
				$this->get_js_assets_url( 'preloaded-modules', 'assets/js/' ),
				[
					'elementor-frontend',
				],
				ELEMENTOR_VERSION,
				true
			);
		}

		$this->print_config();

		$this->enqueue_conditional_assets();

		/**
		 * After frontend enqueue scripts.
		 *
		 * Fires after Elementor frontend scripts are enqueued.
		 *
		 * @since 1.0.0
		 */
		do_action( 'elementor/frontend/after_enqueue_scripts' );
	}

	/**
	 * Enqueue styles.
	 *
	 * Enqueue all the frontend styles.
	 *
	 * Fired by `wp_enqueue_scripts` action.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function enqueue_styles() {
		static $is_enqueue_styles_already_triggered;

		if ( ! $is_enqueue_styles_already_triggered ) {
			$is_enqueue_styles_already_triggered = true;

			/**
			 * Before frontend styles enqueued.
			 *
			 * Fires before Elementor frontend styles are enqueued.
			 *
			 * @since 1.0.0
			 */
			do_action( 'elementor/frontend/before_enqueue_styles' );

			$this->add_elementor_icons_inline_css();

			// The e-icons are needed in preview mode for the editor icons (plus-icon for new section, folder-icon for the templates library etc.).
			if ( ! $this->is_improved_assets_loading() || Plugin::$instance->preview->is_preview_mode() ) {
				wp_enqueue_style( 'elementor-icons' );
			}

			wp_enqueue_style( 'elementor-frontend' );

			/**
			 * After frontend styles enqueued.
			 *
			 * Fires after Elementor frontend styles are enqueued.
			 *
			 * @since 1.0.0
			 */
			do_action( 'elementor/frontend/after_enqueue_styles' );

			if ( ! Plugin::$instance->preview->is_preview_mode() ) {
				$this->parse_global_css_code();

				$post_id = get_the_ID();
				// Check $post_id for virtual pages. check is singular because the $post_id is set to the first post on archive pages.
				if ( $post_id && is_singular() ) {
					$css_file = Post_CSS::create( get_the_ID() );
					$css_file->enqueue();
				}
			}
		}
	}

	/**
	 * Get Frontend File URL
	 *
	 * Returns the URL for the CSS file to be loaded in the front end. If requested via the second parameter, a custom
	 * file is generated based on a passed template file name. Otherwise, the URL for the default CSS file is returned.
	 *
	 * @since 3.4.5
	 *
	 * @access private
	 *
	 * @param string $frontend_file_name
	 * @param boolean $custom_file
	 *
	 * @return string frontend file URL
	 */
	private function get_frontend_file_url( $frontend_file_name, $custom_file ) {
		if ( $custom_file ) {
			$frontend_file = new FrontendFile( 'custom-' . $frontend_file_name, Breakpoints_Manager::get_stylesheet_templates_path() . $frontend_file_name );

			$time = $frontend_file->get_meta( 'time' );

			if ( ! $time ) {
				$frontend_file->update();
			}
			$frontend_file_url = $frontend_file->get_url();
		} else {
			$frontend_file_url = ELEMENTOR_ASSETS_URL . 'css/' . $frontend_file_name;
		}

		return $frontend_file_url;
	}

	/**
	 * Enqueue assets conditionally.
	 *
	 * Enqueue all assets that were pre-enabled.
	 *
	 * @since 3.3.0
	 * @access private
	 */
	private function enqueue_conditional_assets() {
		Plugin::$instance->assets_loader->enqueue_assets();
	}

	/**
	 * Elementor footer scripts and styles.
	 *
	 * Handle styles and scripts that are not printed in the header.
	 *
	 * Fired by `wp_footer` action.
	 *
	 * @since 1.0.11
	 * @access public
	 */
	public function wp_footer() {
		if ( ! $this->_has_elementor_in_page ) {
			return;
		}

		$this->enqueue_styles();
		$this->enqueue_scripts();

		$this->print_fonts_links();
	}

	/**
	 * Print fonts links.
	 *
	 * Enqueue all the frontend fonts by url.
	 *
	 * Fired by `wp_head` action.
	 *
	 * @since 1.9.4
	 * @access public
	 */
	public function print_fonts_links() {
		$google_fonts = [
			'google' => [],
			'early' => [],
		];

		foreach ( $this->fonts_to_enqueue as $key => $font ) {
			$font_type = Fonts::get_font_type( $font );

			switch ( $font_type ) {
				case Fonts::GOOGLE:
					$google_fonts['google'][] = $font;
					break;

				case Fonts::EARLYACCESS:
					$google_fonts['early'][] = $font;
					break;

				case false:
					$this->maybe_enqueue_icon_font( $font );
					break;
				default:
					/**
					 * Print font links.
					 *
					 * Fires when Elementor frontend fonts are printed on the HEAD tag.
					 *
					 * The dynamic portion of the hook name, `$font_type`, refers to the font type.
					 *
					 * @since 2.0.0
					 *
					 * @param string $font Font name.
					 */
					do_action( "elementor/fonts/print_font_links/{$font_type}", $font );
			}
		}
		$this->fonts_to_enqueue = [];

		$this->enqueue_google_fonts( $google_fonts );
		$this->enqueue_icon_fonts();
	}

	private function maybe_enqueue_icon_font( $icon_font_type ) {
		if ( ! Icons_Manager::is_migration_allowed() ) {
			return;
		}

		$icons_types = Icons_Manager::get_icon_manager_tabs();
		if ( ! isset( $icons_types[ $icon_font_type ] ) ) {
			return;
		}

		$icon_type = $icons_types[ $icon_font_type ];
		if ( isset( $icon_type['url'] ) ) {
			$this->icon_fonts_to_enqueue[ $icon_font_type ] = [ $icon_type['url'] ];
		}
	}

	private function enqueue_icon_fonts() {
		if ( empty( $this->icon_fonts_to_enqueue ) || ! Icons_Manager::is_migration_allowed() ) {
			return;
		}

		foreach ( $this->icon_fonts_to_enqueue as $icon_type => $css_url ) {
			wp_enqueue_style( 'elementor-icons-' . $icon_type );
			$this->enqueued_icon_fonts[] = $css_url;
		}

		//clear enqueued icons
		$this->icon_fonts_to_enqueue = [];
	}

	/**
	 * Print Google fonts.
	 *
	 * Enqueue all the frontend Google fonts.
	 *
	 * Fired by `wp_head` action.
	 *
	 * @since 1.0.0
	 * @access private
	 *
	 * @param array $google_fonts Optional. Google fonts to print in the frontend.
	 *                            Default is an empty array.
	 */
	private function enqueue_google_fonts( $google_fonts = [] ) {
		static $google_fonts_index = 0;

		$print_google_fonts = true;

		/**
		 * Print frontend google fonts.
		 *
		 * Filters whether to enqueue Google fonts in the frontend.
		 *
		 * @since 1.0.0
		 *
		 * @param bool $print_google_fonts Whether to enqueue Google fonts. Default is true.
		 */
		$print_google_fonts = apply_filters( 'elementor/frontend/print_google_fonts', $print_google_fonts );

		if ( ! $print_google_fonts ) {
			return;
		}

		// Print used fonts
		if ( ! empty( $google_fonts['google'] ) ) {
			$google_fonts_index++;

			foreach ( $google_fonts['google'] as &$font ) {
				$font = str_replace( ' ', '+', $font ) . ':100,100italic,200,200italic,300,300italic,400,400italic,500,500italic,600,600italic,700,700italic,800,800italic,900,900italic';
			}

			// Defining a font-display type to google fonts.
			$font_display_url_str = '&display=' . Fonts::get_font_display_setting();

			$fonts_url = sprintf( 'https://fonts.googleapis.com/css?family=%1$s%2$s', implode( rawurlencode( '|' ), $google_fonts['google'] ), $font_display_url_str );

			$subsets = [
				'ru_RU' => 'cyrillic',
				'bg_BG' => 'cyrillic',
				'he_IL' => 'hebrew',
				'el' => 'greek',
				'vi' => 'vietnamese',
				'uk' => 'cyrillic',
				'cs_CZ' => 'latin-ext',
				'ro_RO' => 'latin-ext',
				'pl_PL' => 'latin-ext',
				'hr_HR' => 'latin-ext',
				'hu_HU' => 'latin-ext',
				'sk_SK' => 'latin-ext',
				'tr_TR' => 'latin-ext',
				'lt_LT' => 'latin-ext',
			];

			/**
			 * Google font subsets.
			 *
			 * Filters the list of Google font subsets from which locale will be enqueued in frontend.
			 *
			 * @since 1.0.0
			 *
			 * @param array $subsets A list of font subsets.
			 */
			$subsets = apply_filters( 'elementor/frontend/google_font_subsets', $subsets );

			$locale = get_locale();

			if ( isset( $subsets[ $locale ] ) ) {
				$fonts_url .= '&subset=' . $subsets[ $locale ];
			}

			wp_enqueue_style( 'google-fonts-' . $google_fonts_index, $fonts_url ); // phpcs:ignore WordPress.WP.EnqueuedResourceParameters.MissingVersion
		}

		if ( ! empty( $google_fonts['early'] ) ) {
			foreach ( $google_fonts['early'] as $current_font ) {
				$google_fonts_index++;

				//printf( '<link rel="stylesheet" type="text/css" href="https://fonts.googleapis.com/earlyaccess/%s.css">', strtolower( str_replace( ' ', '', $current_font ) ) );

				$font_url = sprintf( 'https://fonts.googleapis.com/earlyaccess/%s.css', strtolower( str_replace( ' ', '', $current_font ) ) );

				wp_enqueue_style( 'google-earlyaccess-' . $google_fonts_index, $font_url ); // phpcs:ignore WordPress.WP.EnqueuedResourceParameters.MissingVersion
			}
		}

	}

	/**
	 * Enqueue fonts.
	 *
	 * Enqueue all the frontend fonts.
	 *
	 * @since 1.2.0
	 * @access public
	 *
	 * @param array $font Fonts to enqueue in the frontend.
	 */
	public function enqueue_font( $font ) {
		if ( in_array( $font, $this->registered_fonts ) ) {
			return;
		}

		$this->fonts_to_enqueue[] = $font;
		$this->registered_fonts[] = $font;
	}

	/**
	 * Parse global CSS.
	 *
	 * Enqueue the global CSS file.
	 *
	 * @since 1.2.0
	 * @access protected
	 */
	protected function parse_global_css_code() {
		$scheme_css_file = Global_CSS::create( 'global.css' );

		$scheme_css_file->enqueue();
	}

	/**
	 * Apply builder in content.
	 *
	 * Used to apply the Elementor page editor on the post content.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param string $content The post content.
	 *
	 * @return string The post content.
	 */
	public function apply_builder_in_content( $content ) {
		$this->restore_content_filters();

		if ( Plugin::$instance->preview->is_preview_mode() || $this->_is_excerpt ) {
			return $content;
		}

		// Remove the filter itself in order to allow other `the_content` in the elements
		$this->remove_content_filter();

		$post_id = get_the_ID();
		$builder_content = $this->get_builder_content( $post_id );

		if ( ! empty( $builder_content ) ) {
			$content = $builder_content;
			$this->remove_content_filters();
		}

		// Add the filter again for other `the_content` calls
		$this->add_content_filter();

		return $content;
	}

	/**
	 * Retrieve builder content.
	 *
	 * Used to render and return the post content with all the Elementor elements.
	 *
	 * Note that this method is an internal method, please use `get_builder_content_for_display()`.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param int  $post_id  The post ID.
	 * @param bool $with_css Optional. Whether to retrieve the content with CSS
	 *                       or not. Default is false.
	 *
	 * @return string The post content.
	 */
	public function get_builder_content( $post_id, $with_css = false ) {
		if ( post_password_required( $post_id ) ) {
			return '';
		}

		$document = Plugin::$instance->documents->get_doc_for_frontend( $post_id );

		if ( ! $document || ! $document->is_built_with_elementor() ) {
			return '';
		}

		// Change the current post, so widgets can use `documents->get_current`.
		Plugin::$instance->documents->switch_to_document( $document );

		$data = $document->get_elements_data();

		/**
		 * Frontend builder content data.
		 *
		 * Filters the builder content in the frontend.
		 *
		 * @since 1.0.0
		 *
		 * @param array $data    The builder content.
		 * @param int   $post_id The post ID.
		 */
		$data = apply_filters( 'elementor/frontend/builder_content_data', $data, $post_id );

		do_action( 'elementor/frontend/before_get_builder_content', $document, $this->_is_excerpt );

		if ( empty( $data ) ) {
			Plugin::$instance->documents->restore_document();

			return '';
		}

		if ( ! $this->_is_excerpt ) {
			if ( $document->is_autosave() ) {
				$css_file = Post_Preview::create( $document->get_post()->ID );
			} else {
				$css_file = Post_CSS::create( $post_id );
			}

			$css_file->enqueue();
		}

		ob_start();

		// Handle JS and Customizer requests, with CSS inline.
		if ( is_customize_preview() || wp_doing_ajax() ) {
			$with_css = true;
		}

		if ( ! empty( $css_file ) && $with_css ) {
			$css_file->print_css();
		}

		$document->print_elements_with_wrapper( $data );

		$content = ob_get_clean();

		$content = $this->process_more_tag( $content );

		/**
		 * Frontend content.
		 *
		 * Filters the content in the frontend.
		 *
		 * @since 1.0.0
		 *
		 * @param string $content The content.
		 */
		$content = apply_filters( 'elementor/frontend/the_content', $content );

		if ( ! empty( $content ) ) {
			$this->_has_elementor_in_page = true;
		}

		Plugin::$instance->documents->restore_document();

		// BC
		// TODO: use Deprecation::do_deprecated_action() in 3.1.0
		do_action( 'elementor/frontend/get_builder_content', $document, $this->_is_excerpt, $with_css );

		return $content;
	}

	/**
	 * Retrieve builder content for display.
	 *
	 * Used to render and return the post content with all the Elementor elements.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param int $post_id The post ID.
	 *
	 * @param bool $with_css Optional. Whether to retrieve the content with CSS
	 *                       or not. Default is false.
	 *
	 * @return string The post content.
	 */
	public function get_builder_content_for_display( $post_id, $with_css = false ) {
		if ( ! get_post( $post_id ) ) {
			return '';
		}

		$editor = Plugin::$instance->editor;

		// Avoid recursion
		if ( get_the_ID() === (int) $post_id ) {
			$content = '';
			if ( $editor->is_edit_mode() ) {
				$content = '<div class="elementor-alert elementor-alert-danger">' . esc_html__( 'Invalid Data: The Template ID cannot be the same as the currently edited template. Please choose a different one.', 'elementor' ) . '</div>';
			}

			return $content;
		}

		// Set edit mode as false, so don't render settings and etc. use the $is_edit_mode to indicate if we need the CSS inline
		$is_edit_mode = $editor->is_edit_mode();
		$editor->set_edit_mode( false );

		$with_css = $with_css ? true : $is_edit_mode;

		$content = $this->get_builder_content( $post_id, $with_css );

		// Restore edit mode state
		Plugin::$instance->editor->set_edit_mode( $is_edit_mode );

		return $content;
	}

	/**
	 * Start excerpt flag.
	 *
	 * Flags when `the_excerpt` is called. Used to avoid enqueueing CSS in the excerpt.
	 *
	 * @since 1.4.3
	 * @access public
	 *
	 * @param string $excerpt The post excerpt.
	 *
	 * @return string The post excerpt.
	 */
	public function start_excerpt_flag( $excerpt ) {
		$this->_is_excerpt = true;
		return $excerpt;
	}

	/**
	 * End excerpt flag.
	 *
	 * Flags when `the_excerpt` call ended.
	 *
	 * @since 1.4.3
	 * @access public
	 *
	 * @param string $excerpt The post excerpt.
	 *
	 * @return string The post excerpt.
	 */
	public function end_excerpt_flag( $excerpt ) {
		$this->_is_excerpt = false;
		return $excerpt;
	}

	/**
	 * Remove content filters.
	 *
	 * Remove WordPress default filters that conflicted with Elementor.
	 *
	 * @since 1.5.0
	 * @access public
	 */
	public function remove_content_filters() {
		$filters = [
			'wpautop',
			'shortcode_unautop',
			'wptexturize',
		];

		foreach ( $filters as $filter ) {
			// Check if another plugin/theme do not already removed the filter.
			if ( has_filter( 'the_content', $filter ) ) {
				remove_filter( 'the_content', $filter );
				$this->content_removed_filters[] = $filter;
			}
		}
	}

	/**
	 * Has Elementor In Page
	 *
	 * Determine whether the current page is using Elementor.
	 *
	 * @since 2.0.9
	 *
	 * @access public
	 * @return bool
	 */
	public function has_elementor_in_page() {
		return $this->_has_elementor_in_page;
	}

	public function create_action_hash( $action, array $settings = [] ) {
		return '#' . rawurlencode( sprintf( 'elementor-action:action=%1$s&settings=%2$s', $action, base64_encode( wp_json_encode( $settings ) ) ) );
	}

	/**
	 * Is the current render mode is static.
	 *
	 * @return bool
	 */
	public function is_static_render_mode() {
		// The render mode manager is exists only in frontend,
		// so by default if it is not exist the method will return false.
		if ( ! $this->render_mode_manager ) {
			return false;
		}

		return $this->render_mode_manager->get_current()->is_static();
	}

	/**
	 * Get Init Settings
	 *
	 * Used to define the default/initial settings of the object. Inheriting classes may implement this method to define
	 * their own default/initial settings.
	 *
	 * @since 2.3.0
	 *
	 * @access protected
	 * @return array
	 */
	protected function get_init_settings() {
		$is_preview_mode = Plugin::$instance->preview->is_preview_mode( Plugin::$instance->preview->get_post_id() );

		$active_experimental_features = Plugin::$instance->experiments->get_active_features();

		$active_experimental_features = array_fill_keys( array_keys( $active_experimental_features ), true );

		$assets_url = ELEMENTOR_ASSETS_URL;

		/**
		 * Frontend assets URL
		 *
		 * Filters Elementor frontend assets URL.
		 *
		 * @since 2.3.0
		 *
		 * @param string $assets_url The frontend assets URL. Default is ELEMENTOR_ASSETS_URL.
		 */
		$assets_url = apply_filters( 'elementor/frontend/assets_url', $assets_url );

		$settings = [
			'environmentMode' => [
				'edit' => $is_preview_mode,
				'wpPreview' => is_preview(),
				'isScriptDebug' => Utils::is_script_debug(),
			],
			'i18n' => [
				'shareOnFacebook' => esc_html__( 'Share on Facebook', 'elementor' ),
				'shareOnTwitter' => esc_html__( 'Share on Twitter', 'elementor' ),
				'pinIt' => esc_html__( 'Pin it', 'elementor' ),
				'download' => esc_html__( 'Download', 'elementor' ),
				'downloadImage' => esc_html__( 'Download image', 'elementor' ),
				'fullscreen' => esc_html__( 'Fullscreen', 'elementor' ),
				'zoom' => esc_html__( 'Zoom', 'elementor' ),
				'share' => esc_html__( 'Share', 'elementor' ),
				'playVideo' => esc_html__( 'Play Video', 'elementor' ),
				'previous' => esc_html__( 'Previous', 'elementor' ),
				'next' => esc_html__( 'Next', 'elementor' ),
				'close' => esc_html__( 'Close', 'elementor' ),
			],
			'is_rtl' => is_rtl(),
			// 'breakpoints' object is kept for BC.
			'breakpoints' => Responsive::get_breakpoints(),
			// 'responsive' contains the custom breakpoints config introduced in Elementor v3.2.0
			'responsive' => [
				'breakpoints' => Plugin::$instance->breakpoints->get_breakpoints_config(),
			],
			'version' => ELEMENTOR_VERSION,
			'is_static' => $this->is_static_render_mode(),
			'experimentalFeatures' => $active_experimental_features,
			'urls' => [
				'assets' => $assets_url,
			],
		];

		$settings['settings'] = SettingsManager::get_settings_frontend_config();

		$kit = Plugin::$instance->kits_manager->get_active_kit_for_frontend();
		$settings['kit'] = $kit->get_frontend_settings();

		if ( is_singular() ) {
			$post = get_post();

			$title = Utils::urlencode_html_entities( wp_get_document_title() );

			// Try to use the 'large' WP image size because the Pinterest share API
			// has problems accepting shares with large images sometimes, and the WP 'large' thumbnail is
			// the largest default WP image size that will probably not be changed in most sites
			$featured_image_url = get_the_post_thumbnail_url( null, 'large' );

			// If the large size was nullified, use the full size which cannot be nullified/deleted
			if ( ! $featured_image_url ) {
				$featured_image_url = get_the_post_thumbnail_url( null, 'full' );
			}

			$settings['post'] = [
				'id' => $post->ID,
				'title' => $title,
				'excerpt' => $post->post_excerpt,
				'featuredImage' => $featured_image_url,
			];
		} else {
			$settings['post'] = [
				'id' => 0,
				'title' => wp_get_document_title(),
				'excerpt' => get_the_archive_description(),
			];
		}

		$empty_object = (object) [];

		if ( $is_preview_mode ) {
			$settings['elements'] = [
				'data' => $empty_object,
				'editSettings' => $empty_object,
				'keys' => $empty_object,
			];
		}

		if ( is_user_logged_in() ) {
			$user = wp_get_current_user();

			if ( ! empty( $user->roles ) ) {
				$settings['user'] = [
					'roles' => $user->roles,
				];
			}
		}

		return $settings;
	}

	/**
	 * Restore content filters.
	 *
	 * Restore removed WordPress filters that conflicted with Elementor.
	 *
	 * @since 1.5.0
	 * @access public
	 */
	public function restore_content_filters() {
		foreach ( $this->content_removed_filters as $filter ) {
			add_filter( 'the_content', $filter );
		}

		$this->content_removed_filters = [];
	}

	/**
	 * Process More Tag
	 *
	 * Respect the native WP (<!--more-->) tag
	 *
	 * @access private
	 * @since 2.0.4
	 *
	 * @param $content
	 *
	 * @return string
	 */
	private function process_more_tag( $content ) {
		$post = get_post();
		$content = str_replace( '&lt;!--more--&gt;', '<!--more-->', $content );
		$parts = get_extended( $content );
		if ( empty( $parts['extended'] ) ) {
			return $content;
		}

		if ( is_singular() ) {
			return $parts['main'] . '<div id="more-' . $post->ID . '"></div>' . $parts['extended'];
		}

		if ( empty( $parts['more_text'] ) ) {
			$parts['more_text'] = esc_html__( '(more&hellip;)', 'elementor' );
		}

		$more_link_text = sprintf(
			'<span aria-label="%1$s">%2$s</span>',
			sprintf(
				/* translators: %s: Current post name. */
				__( 'Continue reading %s', 'elementor' ),
				the_title_attribute( [
					'echo' => false,
				] )
			),
			$parts['more_text']
		);

		$more_link = sprintf( ' <a href="%s#more-%s" class="more-link elementor-more-link">%s</a>', get_permalink(), $post->ID, $more_link_text );

		/**
		 * The content "more" link.
		 *
		 * Filters the "more" link displayed after the content.
		 *
		 * This hook can be used either to change the link syntax or to change the
		 * text inside the link.
		 *
		 * @since 2.0.4
		 *
		 * @param string $more_link      The more link.
		 * @param string $more_link_text The text inside the more link.
		 */
		$more_link = apply_filters( 'the_content_more_link', $more_link, $more_link_text );

		return force_balance_tags( $parts['main'] ) . $more_link;
	}

	private function is_improved_assets_loading() {
		return Plugin::$instance->experiments->is_feature_active( 'e_optimized_assets_loading' );
	}

	private function get_elementor_frontend_dependencies() {
		$dependencies = [
			'elementor-frontend-modules',
			'elementor-waypoints',
			'jquery-ui-position',
		];

		if ( ! $this->is_improved_assets_loading() ) {
			wp_register_script(
				'swiper',
				$this->get_js_assets_url( 'swiper', 'assets/lib/swiper/' ),
				[],
				'5.3.6',
				true
			);

			$dependencies[] = 'swiper';
			$dependencies[] = 'share-link';
			$dependencies[] = 'elementor-dialog';
		}

		return $dependencies;
	}

	private function is_optimized_css_mode() {
		$is_optimized_css_loading = Plugin::$instance->experiments->is_feature_active( 'e_optimized_css_loading' );

		return ! Utils::is_script_debug() && $is_optimized_css_loading && ! Plugin::$instance->preview->is_preview_mode();
	}

	private function add_elementor_icons_inline_css() {
		$elementor_icons_library_version = '5.10.0';

		/**
		 * The e-icons font-face must be printed inline due to custom breakpoints.
		 * When using custom breakpoints, the frontend CSS is loaded from the custom-frontend CSS file.
		 * The custom frontend file is located in a different path ('uploads' folder).
		 * Therefore, it cannot be called from a CSS file that its relative path can vary.
		 */
		$elementor_icons_inline_css = sprintf( '@font-face{font-family:eicons;src:url(%1$slib/eicons/fonts/eicons.eot?%2$s);src:url(%1$slib/eicons/fonts/eicons.eot?%2$s#iefix) format("embedded-opentype"),url(%1$slib/eicons/fonts/eicons.woff2?%2$s) format("woff2"),url(%1$slib/eicons/fonts/eicons.woff?%2$s) format("woff"),url(%1$slib/eicons/fonts/eicons.ttf?%2$s) format("truetype"),url(%1$slib/eicons/fonts/eicons.svg?%2$s#eicon) format("svg");font-weight:400;font-style:normal}', ELEMENTOR_ASSETS_URL, $elementor_icons_library_version );

		wp_add_inline_style( 'elementor-frontend', $elementor_icons_inline_css );
	}
}
includes/settings/settings-page.php000064400000024421151327220420013476 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor settings page.
 *
 * An abstract class that provides the needed properties and methods to handle
 * WordPress dashboard settings pages in inheriting classes.
 *
 * @since 1.0.0
 * @abstract
 */
abstract class Settings_Page {

	/**
	 * Settings page ID.
	 */
	const PAGE_ID = '';

	/**
	 * Tabs.
	 *
	 * Holds the settings page tabs, sections and fields.
	 *
	 * @access private
	 *
	 * @var array
	 */
	private $tabs;

	/**
	 * Create tabs.
	 *
	 * Return the settings page tabs, sections and fields.
	 *
	 * @since 1.5.0
	 * @access protected
	 * @abstract
	 */
	abstract protected function create_tabs();

	/**
	 * Get settings page title.
	 *
	 * Retrieve the title for the settings page.
	 *
	 * @since 1.5.0
	 * @access protected
	 * @abstract
	 */
	abstract protected function get_page_title();

	/**
	 * Get settings page URL.
	 *
	 * Retrieve the URL of the settings page.
	 *
	 * @since 1.5.0
	 * @access public
	 * @static
	 *
	 * @return string Settings page URL.
	 */
	final public static function get_url() {
		return admin_url( 'admin.php?page=' . static::PAGE_ID );
	}

	/**
	 * Settings page constructor.
	 *
	 * Initializing Elementor settings page.
	 *
	 * @since 1.5.0
	 * @access public
	 */
	public function __construct() {
		// PHPCS - The user data is not used.
		if ( ! empty( $_POST['option_page'] ) && static::PAGE_ID === $_POST['option_page'] ) { // phpcs:ignore WordPress.Security.NonceVerification.Missing
			add_action( 'admin_init', [ $this, 'register_settings_fields' ] );
		}
	}

	/**
	 * Get tabs.
	 *
	 * Retrieve the settings page tabs, sections and fields.
	 *
	 * @since 1.5.0
	 * @access public
	 *
	 * @return array Settings page tabs, sections and fields.
	 */
	final public function get_tabs() {
		$this->ensure_tabs();

		return $this->tabs;
	}

	/**
	 * Add tab.
	 *
	 * Register a new tab to a settings page.
	 *
	 * @since 1.5.0
	 * @access public
	 *
	 * @param string $tab_id   Tab ID.
	 * @param array  $tab_args Optional. Tab arguments. Default is an empty array.
	 */
	final public function add_tab( $tab_id, array $tab_args = [] ) {
		$this->ensure_tabs();

		if ( isset( $this->tabs[ $tab_id ] ) ) {
			// Don't override an existing tab
			return;
		}

		if ( ! isset( $tab_args['sections'] ) ) {
			$tab_args['sections'] = [];
		}

		$this->tabs[ $tab_id ] = $tab_args;
	}

	/**
	 * Add section.
	 *
	 * Register a new section to a tab.
	 *
	 * @since 1.5.0
	 * @access public
	 *
	 * @param string $tab_id       Tab ID.
	 * @param string $section_id   Section ID.
	 * @param array  $section_args Optional. Section arguments. Default is an
	 *                             empty array.
	 */
	final public function add_section( $tab_id, $section_id, array $section_args = [] ) {
		$this->ensure_tabs();

		if ( ! isset( $this->tabs[ $tab_id ] ) ) {
			// If the requested tab doesn't exists, use the first tab
			$tab_id = key( $this->tabs );
		}

		if ( isset( $this->tabs[ $tab_id ]['sections'][ $section_id ] ) ) {
			// Don't override an existing section
			return;
		}

		if ( ! isset( $section_args['fields'] ) ) {
			$section_args['fields'] = [];
		}

		$this->tabs[ $tab_id ]['sections'][ $section_id ] = $section_args;
	}

	/**
	 * Add field.
	 *
	 * Register a new field to a section.
	 *
	 * @since 1.5.0
	 * @access public
	 *
	 * @param string $tab_id     Tab ID.
	 * @param string $section_id Section ID.
	 * @param string $field_id   Field ID.
	 * @param array  $field_args Field arguments.
	 */
	final public function add_field( $tab_id, $section_id, $field_id, array $field_args ) {
		$this->ensure_tabs();

		if ( ! isset( $this->tabs[ $tab_id ] ) ) {
			// If the requested tab doesn't exists, use the first tab
			$tab_id = key( $this->tabs );
		}

		if ( ! isset( $this->tabs[ $tab_id ]['sections'][ $section_id ] ) ) {
			// If the requested section doesn't exists, use the first section
			$section_id = key( $this->tabs[ $tab_id ]['sections'] );
		}

		if ( isset( $this->tabs[ $tab_id ]['sections'][ $section_id ]['fields'][ $field_id ] ) ) {
			// Don't override an existing field
			return;
		}

		$this->tabs[ $tab_id ]['sections'][ $section_id ]['fields'][ $field_id ] = $field_args;
	}

	/**
	 * Add fields.
	 *
	 * Register multiple fields to a section.
	 *
	 * @since 1.5.0
	 * @access public
	 *
	 * @param string $tab_id     Tab ID.
	 * @param string $section_id Section ID.
	 * @param array  $fields     {
	 *    An array of fields.
	 *
	 *    @type string $field_id   Field ID.
	 *    @type array  $field_args Field arguments.
	 * }
	 */
	final public function add_fields( $tab_id, $section_id, array $fields ) {
		foreach ( $fields as $field_id => $field_args ) {
			$this->add_field( $tab_id, $section_id, $field_id, $field_args );
		}
	}

	/**
	 * Register settings fields.
	 *
	 * In each tab register his inner sections, and in each section register his
	 * inner fields.
	 *
	 * @since 1.5.0
	 * @access public
	 */
	final public function register_settings_fields() {
		$controls_class_name = __NAMESPACE__ . '\Settings_Controls';

		$tabs = $this->get_tabs();

		foreach ( $tabs as $tab_id => $tab ) {

			foreach ( $tab['sections'] as $section_id => $section ) {
				$full_section_id = 'elementor_' . $section_id . '_section';

				$label = isset( $section['label'] ) ? $section['label'] : '';

				$section_callback = isset( $section['callback'] ) ? $section['callback'] : '__return_empty_string';

				add_settings_section( $full_section_id, $label, $section_callback, static::PAGE_ID );

				foreach ( $section['fields'] as $field_id => $field ) {
					$full_field_id = ! empty( $field['full_field_id'] ) ? $field['full_field_id'] : 'elementor_' . $field_id;

					$field['field_args']['id'] = $full_field_id;

					$field_classes = [ $full_field_id ];

					if ( ! empty( $field['class'] ) ) {
						$field_classes[] = $field['field_args']['class'];
					}

					$field['field_args']['class'] = implode( ' ', $field_classes );

					if ( ! isset( $field['render'] ) ) {
						$field['render'] = [ $controls_class_name, 'render' ];
					}

					add_settings_field(
						$full_field_id,
						isset( $field['label'] ) ? $field['label'] : '',
						$field['render'],
						static::PAGE_ID,
						$full_section_id,
						$field['field_args']
					);

					$setting_args = [];

					if ( ! empty( $field['setting_args'] ) ) {
						$setting_args = $field['setting_args'];
					}

					register_setting( static::PAGE_ID, $full_field_id, $setting_args );
				}
			}
		}
	}

	/**
	 * Display settings page.
	 *
	 * Output the content for the settings page.
	 *
	 * @since 1.5.0
	 * @access public
	 */
	public function display_settings_page() {
		$this->register_settings_fields();

		$tabs = $this->get_tabs();
		?>
		<div class="wrap">
			<h1 class="wp-heading-inline"><?php echo esc_html( $this->get_page_title() ); ?></h1>
			<div id="elementor-settings-tabs-wrapper" class="nav-tab-wrapper">
				<?php
				foreach ( $tabs as $tab_id => $tab ) {
					if ( ! $this->should_render_tab( $tab ) ) {
						continue;
					}

					$active_class = '';

					if ( 'general' === $tab_id ) {
						$active_class = ' nav-tab-active';
					}

					$sanitized_tab_id = esc_attr( $tab_id );
					$sanitized_tab_label = esc_html( $tab['label'] );

					// PHPCS - Escaped the relevant strings above.
					echo "<a id='elementor-settings-tab-{$sanitized_tab_id}' class='nav-tab{$active_class}' href='#tab-{$sanitized_tab_id}'>{$sanitized_tab_label}</a>"; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
				}
				?>
			</div>
			<form id="elementor-settings-form" method="post" action="options.php">
				<?php
				settings_fields( static::PAGE_ID );

				foreach ( $tabs as $tab_id => $tab ) {
					if ( ! $this->should_render_tab( $tab ) ) {
						continue;
					}

					$active_class = '';

					if ( 'general' === $tab_id ) {
						$active_class = ' elementor-active';
					}

					$sanitized_tab_id = esc_attr( $tab_id );

					// PHPCS - $active_class is a non-dynamic string and $sanitized_tab_id is escaped above.
					echo "<div id='tab-{$sanitized_tab_id}' class='elementor-settings-form-page{$active_class}'>"; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped

					foreach ( $tab['sections'] as $section_id => $section ) {
						$full_section_id = 'elementor_' . $section_id . '_section';

						if ( ! empty( $section['label'] ) ) {
							echo '<h2>' . esc_html( $section['label'] ) . '</h2>';
						}

						if ( ! empty( $section['callback'] ) ) {
							$section['callback']();
						}

						echo '<table class="form-table">';

						do_settings_fields( static::PAGE_ID, $full_section_id );

						echo '</table>';
					}

					echo '</div>';
				}

				submit_button();
				?>
			</form>
		</div><!-- /.wrap -->
		<?php
	}

	public function get_usage_fields() {
		return [
			'allow_tracking' => [
				'label' => esc_html__( 'Usage Data Sharing', 'elementor' ),
				'field_args' => [
					'type' => 'checkbox',
					'value' => 'yes',
					'default' => '',
					'sub_desc' => esc_html__( 'Become a super contributor by opting in to share non-sensitive plugin data and to receive periodic email updates from us.', 'elementor' ) . sprintf( ' <a href="%1$s" target="_blank">%2$s</a>', 'https://go.elementor.com/usage-data-tracking/', esc_html__( 'Learn more.', 'elementor' ) ),
				],
				'setting_args' => [ __NAMESPACE__ . '\Tracker', 'check_for_settings_optin' ],
			],
		];
	}

	/**
	 * Ensure tabs.
	 *
	 * Make sure the settings page has tabs before inserting any new sections or
	 * fields.
	 *
	 * @since 1.5.0
	 * @access private
	 */
	private function ensure_tabs() {
		if ( null === $this->tabs ) {
			$this->tabs = $this->create_tabs();

			$page_id = static::PAGE_ID;

			/**
			 * After create settings.
			 *
			 * Fires after the settings are created in Elementor admin page.
			 *
			 * The dynamic portion of the hook name, `$page_id`, refers to the current page ID.
			 *
			 * @since 1.0.0
			 *
			 * @param Settings_Page $this The settings page.
			 */
			do_action( "elementor/admin/after_create_settings/{$page_id}", $this );
		}
	}

	/**
	 * Should it render the settings tab
	 *
	 * @param $tab
	 *
	 * @return bool
	 */
	private function should_render_tab( $tab ) {
		// BC - When 'show_if' prop is not exists, it actually should render the tab.
		return ! empty( $tab['sections'] ) && ( ! isset( $tab['show_if'] ) || $tab['show_if'] );
	}
}
includes/settings/controls.php000064400000016107151327220420012571 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor settings controls.
 *
 * Elementor settings controls handler class responsible for creating the final
 * HTML for various input field types used in Elementor settings pages.
 *
 * @since 1.0.0
 */
class Settings_Controls {

	/**
	 * Render settings control.
	 *
	 * Generates the final HTML on the frontend for any given field based on
	 * the field type (text, select, checkbox, raw HTML, etc.).
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @param array $field Optional. Field data. Default is an empty array.
	 */
	public static function render( $field = [] ) {
		if ( empty( $field ) || empty( $field['id'] ) ) {
			return;
		}

		$defaults = [
			'type' => '',
			'attributes' => [],
			'std' => '',
			'desc' => '',
		];

		$field = array_merge( $defaults, $field );

		$method_name = $field['type'];

		if ( ! method_exists( __CLASS__, $method_name ) ) {
			$method_name = 'text';
		}

		self::$method_name( $field );
	}

	/**
	 * Render text control.
	 *
	 * Generates the final HTML for text controls.
	 *
	 * @since 2.0.0
	 * @access private
	 * @static
	 *
	 * @param array $field Field data.
	 */
	private static function text( array $field ) {
		if ( empty( $field['attributes']['class'] ) ) {
			$field['attributes']['class'] = 'regular-text';
		}

		?>
		<input type="<?php echo esc_attr( $field['type'] ); ?>" id="<?php echo esc_attr( $field['id'] ); ?>" name="<?php echo esc_attr( $field['id'] ); ?>" value="<?php echo esc_attr( get_option( $field['id'], $field['std'] ) ); ?>" <?php Utils::print_html_attributes( $field['attributes'] ); ?>/>
		<?php
		if ( ! empty( $field['sub_desc'] ) ) :
			echo wp_kses_post( $field['sub_desc'] );
		endif;
		?>
		<?php if ( ! empty( $field['desc'] ) ) : ?>
			<p class="description"><?php echo wp_kses_post( $field['desc'] ); ?></p>
			<?php
		endif;
	}

	/**
	 * Render checkbox control.
	 *
	 * Generates the final HTML for checkbox controls.
	 *
	 * @since 2.0.0
	 * @access private
	 * @static
	 *
	 * @param array $field Field data.
	 */
	private static function checkbox( array $field ) {
		?>
		<label>
			<input type="<?php echo esc_attr( $field['type'] ); ?>" id="<?php echo esc_attr( $field['id'] ); ?>" name="<?php echo esc_attr( $field['id'] ); ?>" value="<?php echo esc_attr( $field['value'] ); ?>"<?php checked( $field['value'], get_option( $field['id'], $field['std'] ) ); ?> />
			<?php
			if ( ! empty( $field['sub_desc'] ) ) :
				echo wp_kses_post( $field['sub_desc'] );
			endif;
			?>
		</label>
		<?php if ( ! empty( $field['desc'] ) ) : ?>
			<p class="description"><?php echo wp_kses_post( $field['desc'] ); ?></p>
			<?php
		endif;
	}

	/**
	 * Render checkbox list control.
	 *
	 * Generates the final HTML for checkbox list controls.
	 *
	 * @since 2.0.0
	 * @access private
	 * @static
	 *
	 * @param array $field Field data.
	 */
	private static function checkbox_list( array $field ) {
		$old_value = get_option( $field['id'], $field['std'] );
		if ( ! is_array( $old_value ) ) {
			$old_value = [];
		}

		foreach ( $field['options'] as $option_key => $option_value ) :
			?>
			<label>
				<input type="checkbox" name="<?php echo esc_attr( $field['id'] ); ?>[]" value="<?php echo esc_attr( $option_key ); ?>"<?php checked( in_array( $option_key, $old_value ), true ); ?> />
				<?php echo wp_kses_post( $option_value ); ?>
			</label><br />
		<?php endforeach; ?>
		<?php if ( ! empty( $field['desc'] ) ) : ?>
			<p class="description"><?php echo wp_kses_post( $field['desc'] ); ?></p>
			<?php
		endif;
	}

	/**
	 * Render select control.
	 *
	 * Generates the final HTML for select controls.
	 *
	 * @since 2.0.0
	 * @access private
	 * @static
	 *
	 * @param array $field Field data.
	 */
	private static function select( array $field ) {
		$old_value = get_option( $field['id'], $field['std'] );
		?>
		<select name="<?php echo esc_attr( $field['id'] ); ?>">
			<?php if ( ! empty( $field['show_select'] ) ) : ?>
				<option value="">— <?php echo esc_html__( 'Select', 'elementor' ); ?> —</option>
			<?php endif; ?>

			<?php foreach ( $field['options'] as $value => $label ) : ?>
				<option value="<?php echo esc_attr( $value ); ?>"<?php esc_attr( selected( $value, $old_value ) ); ?>><?php echo esc_html( $label ); ?></option>
			<?php endforeach; ?>
		</select>

		<?php if ( ! empty( $field['desc'] ) ) : ?>
			<p class="description"><?php echo wp_kses_post( $field['desc'] ); ?></p>
			<?php
		endif;
	}

	/**
	 * Render checkbox list control for CPT.
	 *
	 * Generates the final HTML for checkbox list controls populated with Custom Post Types.
	 *
	 * @since 2.0.0
	 * @access private
	 * @static
	 *
	 * @param array $field Field data.
	 */
	private static function checkbox_list_cpt( array $field ) {
		$defaults = [
			'exclude' => [],
		];
		$field = array_merge( $defaults, $field );

		$post_types_objects = get_post_types(
			[
				'public' => true,
			], 'objects'
		);

		/**
		 * Filters the list of post type objects used by Elementor.
		 *
		 * @since 2.8.0
		 *
		 * @param array $post_types_objects List of post type objects used by Elementor.
		 */
		$post_types_objects = apply_filters( 'elementor/settings/controls/checkbox_list_cpt/post_type_objects', $post_types_objects );

		$field['options'] = [];
		foreach ( $post_types_objects as $cpt_slug => $post_type ) {
			if ( in_array( $cpt_slug, $field['exclude'], true ) ) {
				continue;
			}

			$field['options'][ $cpt_slug ] = $post_type->labels->name;
		}

		self::checkbox_list( $field );
	}

	/**
	 * Render checkbox list control for user roles.
	 *
	 * Generates the final HTML for checkbox list controls populated with user roles.
	 *
	 * @since 2.0.0
	 * @access private
	 * @static
	 *
	 * @param array $field Field data.
	 */
	private static function checkbox_list_roles( array $field ) {
		$defaults = [
			'exclude' => [],
		];
		$field = array_merge( $defaults, $field );

		$field['options'] = [];
		$roles = get_editable_roles();

		if ( is_multisite() ) {
			$roles = [
				'super_admin' => [
					'name' => esc_html__( 'Super Admin', 'elementor' ),
				],
			] + $roles;
		}

		foreach ( $roles as $role_slug => $role_data ) {
			if ( in_array( $role_slug, $field['exclude'] ) ) {
				continue;
			}

			$field['options'][ $role_slug ] = $role_data['name'];
		}

		self::checkbox_list( $field );
	}

	/**
	 * Render raw HTML control.
	 *
	 * Generates the final HTML for raw HTML controls.
	 *
	 * @since 2.0.0
	 * @access private
	 * @static
	 *
	 * @param array $field Field data.
	 */
	private static function raw_html( array $field ) {
		if ( empty( $field['html'] ) ) {
			return;
		}
		?>
		<div id="<?php echo esc_attr( $field['id'] ); ?>">

			<?php // PHPCS - This is a Raw HTML control, it is not escaped on purpose. ?>
			<div><?php echo $field['html']; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?></div>
			<?php
			if ( ! empty( $field['sub_desc'] ) ) :
				echo wp_kses_post( $field['sub_desc'] );
			endif;
			?>
			<?php if ( ! empty( $field['desc'] ) ) : ?>
				<p class="description"><?php echo wp_kses_post( $field['desc'] ); ?></p>
			<?php endif; ?>
			</div>
		<?php
	}
}
includes/settings/settings.php000064400000053516151327220420012573 0ustar00<?php
namespace Elementor;

use Elementor\TemplateLibrary\Source_Local;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor "Settings" page in WordPress Dashboard.
 *
 * Elementor settings page handler class responsible for creating and displaying
 * Elementor "Settings" page in WordPress dashboard.
 *
 * @since 1.0.0
 */
class Settings extends Settings_Page {

	/**
	 * Settings page ID for Elementor settings.
	 */
	const PAGE_ID = 'elementor';

	/**
	 * Go Pro menu priority.
	 */
	const MENU_PRIORITY_GO_PRO = 502;

	/**
	 * Settings page field for update time.
	 */
	const UPDATE_TIME_FIELD = '_elementor_settings_update_time';

	/**
	 * Settings page general tab slug.
	 */
	const TAB_GENERAL = 'general';

	/**
	 * Settings page style tab slug.
	 */
	const TAB_STYLE = 'style';

	/**
	 * Settings page integrations tab slug.
	 */
	const TAB_INTEGRATIONS = 'integrations';

	/**
	 * Settings page advanced tab slug.
	 */
	const TAB_ADVANCED = 'advanced';

	/**
	 * Register admin menu.
	 *
	 * Add new Elementor Settings admin menu.
	 *
	 * Fired by `admin_menu` action.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function register_admin_menu() {
		global $menu;

		$menu[] = [ '', 'read', 'separator-elementor', '', 'wp-menu-separator elementor' ]; // phpcs:ignore WordPress.WP.GlobalVariablesOverride.Prohibited

		if ( ! current_user_can( 'manage_options' ) ) {
			return;
		}

		add_menu_page(
			esc_html__( 'Elementor', 'elementor' ),
			esc_html__( 'Elementor', 'elementor' ),
			'manage_options',
			self::PAGE_ID,
			[ $this, 'display_settings_page' ],
			'',
			'58.5'
		);
	}

	/**
	 * Reorder the Elementor menu items in admin.
	 * Based on WC.
	 *
	 * @since 2.4.0
	 *
	 * @param array $menu_order Menu order.
	 * @return array
	 */
	public function menu_order( $menu_order ) {
		// Initialize our custom order array.
		$elementor_menu_order = [];

		// Get the index of our custom separator.
		$elementor_separator = array_search( 'separator-elementor', $menu_order, true );

		// Get index of library menu.
		$elementor_library = array_search( Source_Local::ADMIN_MENU_SLUG, $menu_order, true );

		// Loop through menu order and do some rearranging.
		foreach ( $menu_order as $index => $item ) {
			if ( 'elementor' === $item ) {
				$elementor_menu_order[] = 'separator-elementor';
				$elementor_menu_order[] = $item;
				$elementor_menu_order[] = Source_Local::ADMIN_MENU_SLUG;

				unset( $menu_order[ $elementor_separator ] );
				unset( $menu_order[ $elementor_library ] );
			} elseif ( ! in_array( $item, [ 'separator-elementor' ], true ) ) {
				$elementor_menu_order[] = $item;
			}
		}

		// Return order.
		return $elementor_menu_order;
	}

	/**
	 * Register Elementor Pro sub-menu.
	 *
	 * Add new Elementor Pro sub-menu under the main Elementor menu.
	 *
	 * Fired by `admin_menu` action.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function register_pro_menu() {
		add_submenu_page(
			self::PAGE_ID,
			esc_html__( 'Submissions', 'elementor' ),
			esc_html__( 'Submissions', 'elementor' ),
			'manage_options',
			'e-form-submissions',
			function() {
				$this->elementor_form_submissions();
			}
		);

		add_submenu_page(
			self::PAGE_ID,
			esc_html__( 'Custom Fonts', 'elementor' ),
			esc_html__( 'Custom Fonts', 'elementor' ),
			'manage_options',
			'elementor_custom_fonts',
			[ $this, 'elementor_custom_fonts' ]
		);

		add_submenu_page(
			self::PAGE_ID,
			esc_html__( 'Custom Icons', 'elementor' ),
			esc_html__( 'Custom Icons', 'elementor' ),
			'manage_options',
			'elementor_custom_icons',
			[ $this, 'elementor_custom_icons' ]
		);

		add_submenu_page(
			self::PAGE_ID,
			'',
			'<span class="dashicons dashicons-star-filled" style="font-size: 17px"></span> ' . esc_html__( 'Go Pro', 'elementor' ),
			'manage_options',
			'go_elementor_pro',
			[ $this, 'handle_external_redirects' ]
		);

		add_submenu_page( Source_Local::ADMIN_MENU_SLUG, esc_html__( 'Popups', 'elementor' ), esc_html__( 'Popups', 'elementor' ), 'manage_options', 'popup_templates', [ $this, 'elementor_popups' ] );
	}

	/**
	 * Register Elementor knowledge base sub-menu.
	 *
	 * Add new Elementor knowledge base sub-menu under the main Elementor menu.
	 *
	 * Fired by `admin_menu` action.
	 *
	 * @since 2.0.3
	 * @access public
	 */
	public function register_knowledge_base_menu() {
		add_submenu_page(
			self::PAGE_ID,
			'',
			__( 'Getting Started', 'elementor' ),
			'manage_options',
			'elementor-getting-started',
			[ $this, 'elementor_getting_started' ]
		);

		add_submenu_page(
			self::PAGE_ID,
			'',
			esc_html__( 'Get Help', 'elementor' ),
			'manage_options',
			'go_knowledge_base_site',
			[ $this, 'handle_external_redirects' ]
		);
	}

	/**
	 * Go Elementor Pro.
	 *
	 * Redirect the Elementor Pro page the clicking the Elementor Pro menu link.
	 *
	 * Fired by `admin_init` action.
	 *
	 * @since 2.0.3
	 * @access public
	 */
	public function handle_external_redirects() {
		if ( empty( $_GET['page'] ) ) {
			return;
		}

		if ( 'go_elementor_pro' === $_GET['page'] ) {
			wp_redirect( Utils::get_pro_link( 'https://elementor.com/pro/?utm_source=wp-menu&utm_campaign=gopro&utm_medium=wp-dash' ) );
			die;
		}

		if ( 'go_knowledge_base_site' === $_GET['page'] ) {
			wp_redirect( 'https://go.elementor.com/docs-admin-menu/' );
			die;
		}
	}

	/**
	 * Display settings page.
	 *
	 * Output the content for the getting started page.
	 *
	 * @since 2.2.0
	 * @access public
	 */
	public function elementor_getting_started() {
		if ( User::is_current_user_can_edit_post_type( 'page' ) ) {
			$create_new_label = esc_html__( 'Create Your First Page', 'elementor' );
			$create_new_cpt = 'page';
		} elseif ( User::is_current_user_can_edit_post_type( 'post' ) ) {
			$create_new_label = esc_html__( 'Create Your First Post', 'elementor' );
			$create_new_cpt = 'post';
		}

		?>
		<div class="wrap">
			<div class="e-getting-started">
				<div class="e-getting-started__box postbox">
					<div class="e-getting-started__header">
						<div class="e-getting-started__title">
							<div class="e-logo-wrapper">
								<i class="eicon-elementor"></i>
							</div>
							<?php echo esc_html__( 'Getting Started', 'elementor' ); ?>
						</div>
						<a class="e-getting-started__skip" href="<?php echo esc_url( admin_url() ); ?>">
							<i class="eicon-close" aria-hidden="true" title="<?php esc_attr_e( 'Skip', 'elementor' ); ?>"></i>
							<span class="elementor-screen-only"><?php echo esc_html__( 'Skip', 'elementor' ); ?></span>
						</a>
					</div>
					<div class="e-getting-started__content">
						<div class="e-getting-started__content--narrow">
							<h2><?php echo esc_html__( 'Welcome to Elementor', 'elementor' ); ?></h2>
							<p><?php echo esc_html__( 'Get introduced to Elementor by watching our "Getting Started" video series. It will guide you through the steps needed to create your website. Then click to create your first page.', 'elementor' ); ?></p>
						</div>

						<div class="e-getting-started__video">
							<iframe width="620" height="350" src="https://www.youtube-nocookie.com/embed/videoseries?v=icTcREd1tAg&amp;list=PLZyp9H25CboE6dhe7MnUxUdp4zU7OsNSe&amp;index=1" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
						</div>

						<div class="e-getting-started__actions e-getting-started__content--narrow">
							<?php if ( ! empty( $create_new_cpt ) ) : ?>
							<a href="<?php echo esc_url( Plugin::$instance->documents->get_create_new_post_url( $create_new_cpt ) ); ?>" class="button button-primary button-hero"><?php echo esc_html( $create_new_label ); ?></a>
							<?php endif; ?>

							<a href="https://go.elementor.com/getting-started/" target="_blank" class="button button-secondary button-hero"><?php echo esc_html__( 'Watch the Full Guide', 'elementor' ); ?></a>
						</div>
					</div>
				</div>
			</div>
		</div><!-- /.wrap -->
		<?php
	}

	/**
	 * Display settings page.
	 *
	 * Output the content for the custom fonts page.
	 *
	 * @since 2.0.0
	 * @access public
	 */
	public function elementor_custom_fonts() {
		?>
		<div class="wrap">
			<div class="elementor-blank_state">
				<?php // PHPCS - No need to escape an SVG image from the Elementor assets/images folder. ?>
				<img src="<?php echo ELEMENTOR_ASSETS_URL . 'images/go-pro-wp-dashboard.svg'; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>" />
				<h2><?php echo esc_html__( 'Add Your Custom Fonts', 'elementor' ); ?></h2>
				<p><?php echo esc_html__( 'Custom Fonts allows you to add your self-hosted fonts and use them on your Elementor projects to create a unique brand language.', 'elementor' ); ?></p>
				<?php // PHPCS - No need to escape a URL. The query arg is sanitized. ?>
				<a class="elementor-button elementor-button-default elementor-button-go-pro" target="_blank" href="<?php echo Utils::get_pro_link( 'https://elementor.com/pro/?utm_source=wp-custom-fonts&utm_campaign=gopro&utm_medium=wp-dash' ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>"><?php echo esc_html__( 'Go Pro', 'elementor' ); ?></a>
			</div>
		</div><!-- /.wrap -->
		<?php
	}

	/**
	 * Display settings page.
	 *
	 * Output the content for the custom icons page.
	 *
	 * @since 2.8.0
	 * @access public
	 */
	public function elementor_custom_icons() {
		?>
		<div class="wrap">
			<div class="elementor-blank_state">
				<img src="<?php Utils::print_unescaped_internal_string( ELEMENTOR_ASSETS_URL . 'images/go-pro-wp-dashboard.svg' ); ?>" />
				<h2><?php echo esc_html__( 'Add Your Custom Icons', 'elementor' ); ?></h2>
				<p><?php echo esc_html__( 'Don\'t rely solely on the FontAwesome icons everyone else is using! Differentiate your website and your style with custom icons you can upload from your favorite icons source.', 'elementor' ); ?></p>
				<?php // PHPCS - No need to escape a URL. The query arg is sanitized. ?>
				<a class="elementor-button elementor-button-default elementor-button-go-pro" target="_blank" href="<?php echo Utils::get_pro_link( 'https://elementor.com/pro/?utm_source=wp-custom-icons&utm_campaign=gopro&utm_medium=wp-dash' ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>"><?php echo esc_html__( 'Go Pro', 'elementor' ); ?></a>
			</div>
		</div><!-- /.wrap -->
		<?php
	}

	/**
	 * Display settings page.
	 *
	 * Output the content for the Popups page.
	 *
	 * @since 2.4.0
	 * @access public
	 */
	public function elementor_popups() {
		?>
		<div class="wrap">
			<div class="elementor-blank_state">
				<img src="<?php Utils::print_unescaped_internal_string( ELEMENTOR_ASSETS_URL . 'images/go-pro-wp-dashboard.svg' ); ?>" />
				<h2><?php echo esc_html__( 'Get Popup Builder', 'elementor' ); ?></h2>
				<p><?php echo esc_html__( 'Popup Builder lets you take advantage of all the amazing features in Elementor, so you can build beautiful & highly converting popups. Go pro and start designing your popups today.', 'elementor' ); ?></p>
				<?php // PHPCS - No need to escape a URL. The query arg is sanitized. ?>
				<a class="elementor-button elementor-button-default elementor-button-go-pro" target="_blank" href="<?php echo Utils::get_pro_link( 'https://elementor.com/popup-builder/?utm_source=popup-templates&utm_campaign=gopro&utm_medium=wp-dash' ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>"><?php echo esc_html__( 'Go Pro', 'elementor' ); ?></a>
			</div>
		</div><!-- /.wrap -->
		<?php
	}

	public function elementor_form_submissions() {
		?>
		<div class="wrap">
			<div class="elementor-blank_state">
				<img src="<?php Utils::print_unescaped_internal_string( ELEMENTOR_ASSETS_URL ); ?>images/go-pro-wp-dashboard.svg" />
				<h2><?php echo esc_html__( 'Collect Your Form Submissions', 'elementor' ); ?></h2>
				<p>
					<?php echo esc_html__( 'Save and manage all of your form submissions in one single place.
All within a simple, intuitive place.', 'elementor' ); ?>
					<a href="http://go.elementor.com/wp-dash-submissions" target="_blank" rel="nofollow">
						<?php echo esc_html__( 'Learn More', 'elementor' ); ?>
					</a>
				</p>
				<a class="elementor-button elementor-button-default elementor-button-go-pro" target="_blank" href="<?php
				Utils::print_unescaped_internal_string( Utils::get_pro_link( 'https://go.elementor.com/go-pro-submissions' ) );
				?>"><?php echo esc_html__( 'Go Pro', 'elementor' ); ?></a>
			</div>
		</div><!-- /.wrap -->
		<?php
	}

	/**
	 * On admin init.
	 *
	 * Preform actions on WordPress admin initialization.
	 *
	 * Fired by `admin_init` action.
	 *
	 * @since 2.0.0
	 * @access public
	 */
	public function on_admin_init() {
		$this->handle_external_redirects();

		$this->maybe_remove_all_admin_notices();
	}

	/**
	 * Change "Settings" menu name.
	 *
	 * Update the name of the Settings admin menu from "Elementor" to "Settings".
	 *
	 * Fired by `admin_menu` action.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function admin_menu_change_name() {
		Utils::change_submenu_first_item_label( 'elementor', esc_html__( 'Settings', 'elementor' ) );
	}

	/**
	 * Update CSS print method.
	 *
	 * Clear post CSS cache.
	 *
	 * Fired by `add_option_elementor_css_print_method` and
	 * `update_option_elementor_css_print_method` actions.
	 *
	 * @since 1.7.5
	 * @access public
	 * @deprecated 3.0.0
	 */
	public function update_css_print_method() {
		Plugin::$instance->files_manager->clear_cache();
	}

	/**
	 * Create tabs.
	 *
	 * Return the settings page tabs, sections and fields.
	 *
	 * @since 1.5.0
	 * @access protected
	 *
	 * @return array An array with the settings page tabs, sections and fields.
	 */
	protected function create_tabs() {
		$validations_class_name = __NAMESPACE__ . '\Settings_Validations';

		return [
			self::TAB_GENERAL => [
				'label' => esc_html__( 'General', 'elementor' ),
				'sections' => [
					'general' => [
						'fields' => [
							self::UPDATE_TIME_FIELD => [
								'full_field_id' => self::UPDATE_TIME_FIELD,
								'field_args' => [
									'type' => 'hidden',
								],
								'setting_args' => [ $validations_class_name, 'current_time' ],
							],
							'cpt_support' => [
								'label' => esc_html__( 'Post Types', 'elementor' ),
								'field_args' => [
									'type' => 'checkbox_list_cpt',
									'std' => [ 'page', 'post' ],
									'exclude' => [ 'attachment', 'elementor_library' ],
								],
								'setting_args' => [ $validations_class_name, 'checkbox_list' ],
							],
							'disable_color_schemes' => [
								'label' => esc_html__( 'Disable Default Colors', 'elementor' ),
								'field_args' => [
									'type' => 'checkbox',
									'value' => 'yes',
									'sub_desc' => esc_html__( 'Checking this box will disable Elementor\'s Default Colors, and make Elementor inherit the colors from your theme.', 'elementor' ),
								],
							],
							'disable_typography_schemes' => [
								'label' => esc_html__( 'Disable Default Fonts', 'elementor' ),
								'field_args' => [
									'type' => 'checkbox',
									'value' => 'yes',
									'sub_desc' => esc_html__( 'Checking this box will disable Elementor\'s Default Fonts, and make Elementor inherit the fonts from your theme.', 'elementor' ),
								],
							],
						],
					],
					'usage' => [
						'label' => esc_html__( 'Improve Elementor', 'elementor' ),
						'fields' => $this->get_usage_fields(),
					],
				],
			],
			self::TAB_STYLE => [
				'label' => esc_html__( 'Style', 'elementor' ),
				'sections' => [
					'style' => [
						'fields' => [
							'notice' => [
								'label' => esc_html__( 'Looking for the Style settings?', 'elementor' ),
								'field_args' => [
									'type' => 'raw_html',
									'html' => sprintf(
										/* translators: 1: Bold open tag, 2: Bold close tag */
										esc_html__( 'The Style settings changed its location and can now be found within Elementor Editor\'s %1$sPanel > Hamburger Menu > Site Settings%2$s.', 'elementor' ),
										'<strong>',
										'</strong>'
									) .
									'<br>' .
									esc_html__( 'You can use the Site Settings to make changes and see them live!', 'elementor' ) .
									sprintf( ' <a target="_blank" href="http://go.elementor.com/panel-layout-settings">%s</a>', esc_html__( 'Learn More', 'elementor' ) ),
								],
							],
						],
					],
				],
			],
			self::TAB_INTEGRATIONS => [
				'label' => esc_html__( 'Integrations', 'elementor' ),
				'sections' => [
					'google_maps' => [
						'label' => esc_html__( 'Google Maps Embed API', 'elementor' ),
						'callback' => function() {
							printf(
								/* translators: 1: Link open tag, 2: Link close tag */
								esc_html__( 'Google Maps Embed API is a free service by Google that allows embedding Google Maps in your site. For more details, visit Google Maps\' %1$sUsing API Keys%2$s page.', 'elementor' ),
								'<a target="_blank" href="https://developers.google.com/maps/documentation/embed/get-api-key">',
								'</a>'
							);
						},
						'fields' => [
							'google_maps_api_key' => [
								'label' => esc_html__( 'API Key', 'elementor' ),
								'field_args' => [
									'class' => 'elementor_google_maps_api_key',
									'type' => 'text',
								],
							],
						],
					],
				],
			],
			self::TAB_ADVANCED => [
				'label' => esc_html__( 'Advanced', 'elementor' ),
				'sections' => [
					'advanced' => [
						'fields' => [
							'css_print_method' => [
								'label' => esc_html__( 'CSS Print Method', 'elementor' ),
								'field_args' => [
									'class' => 'elementor_css_print_method',
									'type' => 'select',
									'std' => 'external',
									'options' => [
										'external' => esc_html__( 'External File', 'elementor' ),
										'internal' => esc_html__( 'Internal Embedding', 'elementor' ),
									],
									'desc' => '<div class="elementor-css-print-method-description" data-value="external" style="display: none">' . esc_html__( 'Use external CSS files for all generated stylesheets. Choose this setting for better performance (recommended).', 'elementor' ) . '</div><div class="elementor-css-print-method-description" data-value="internal" style="display: none">' . esc_html__( 'Use internal CSS that is embedded in the head of the page. For troubleshooting server configuration conflicts and managing development environments.', 'elementor' ) . '</div>',
								],
							],
							'editor_break_lines' => [
								'label' => esc_html__( 'Switch Editor Loader Method', 'elementor' ),
								'field_args' => [
									'type' => 'select',
									'std' => '',
									'options' => [
										'' => esc_html__( 'Disable', 'elementor' ),
										'1' => esc_html__( 'Enable', 'elementor' ),
									],
									'desc' => esc_html__( 'For troubleshooting server configuration conflicts.', 'elementor' ),
								],
							],
							'unfiltered_files_upload' => [
								'label' => esc_html__( 'Enable Unfiltered File Uploads', 'elementor' ),
								'field_args' => [
									'type' => 'select',
									'std' => '',
									'options' => [
										'' => esc_html__( 'Disable', 'elementor' ),
										'1' => esc_html__( 'Enable', 'elementor' ),
									],
									'desc' => esc_html__( 'Please note! Allowing uploads of any files (SVG & JSON included) is a potential security risk.', 'elementor' ) . '<br>' . esc_html__( 'Elementor will try to sanitize the unfiltered files, removing potential malicious code and scripts.', 'elementor' ) . '<br>' . esc_html__( 'We recommend you only enable this feature if you understand the security risks involved.', 'elementor' ),
								],
							],
							'font_display' => [
								'label' => esc_html__( 'Google Fonts Load', 'elementor' ),
								'field_args' => [
									'type' => 'select',
									'std' => 'auto',
									'options' => [
										'auto' => esc_html__( 'Default', 'elementor' ),
										'block' => esc_html__( 'Blocking', 'elementor' ),
										'swap' => esc_html__( 'Swap', 'elementor' ),
										'fallback' => esc_html__( 'Fallback', 'elementor' ),
										'optional' => esc_html__( 'Optional', 'elementor' ),
									],
									'desc' => esc_html__( 'Font-display property defines how font files are loaded and displayed by the browser.', 'elementor' ) . '<br>' . esc_html__( 'Set the way Google Fonts are being loaded by selecting the font-display property (Default: Auto).', 'elementor' ),
								],
							],
						],
					],
				],
			],
		];
	}

	/**
	 * Get settings page title.
	 *
	 * Retrieve the title for the settings page.
	 *
	 * @since 1.5.0
	 * @access protected
	 *
	 * @return string Settings page title.
	 */
	protected function get_page_title() {
		return __( 'Elementor', 'elementor' );
	}

	/**
	 * @since 2.2.0
	 * @access private
	 */
	private function maybe_remove_all_admin_notices() {
		$elementor_pages = [
			'elementor-getting-started',
			'elementor_custom_fonts',
			'elementor_custom_icons',
			'elementor-license',
			'popup_templates',
		];

		if ( empty( $_GET['page'] ) || ! in_array( $_GET['page'], $elementor_pages, true ) ) {
			return;
		}

		remove_all_actions( 'admin_notices' );
	}

	/**
	 * Settings page constructor.
	 *
	 * Initializing Elementor "Settings" page.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function __construct() {
		parent::__construct();

		add_action( 'admin_init', [ $this, 'on_admin_init' ] );
		add_action( 'admin_menu', [ $this, 'register_admin_menu' ], 20 );
		add_action( 'admin_menu', [ $this, 'admin_menu_change_name' ], 200 );
		add_action( 'admin_menu', [ $this, 'register_pro_menu' ], self::MENU_PRIORITY_GO_PRO );
		add_action( 'admin_menu', [ $this, 'register_knowledge_base_menu' ], 501 );

		$clear_cache_callback = [ Plugin::$instance->files_manager, 'clear_cache' ];

		// Clear CSS Meta after change css related methods.
		$css_settings = [
			'elementor_disable_color_schemes',
			'elementor_disable_typography_schemes',
			'elementor_css_print_method',
		];

		foreach ( $css_settings as $option_name ) {
			add_action( "add_option_{$option_name}", $clear_cache_callback );
			add_action( "update_option_{$option_name}", $clear_cache_callback );
		}

		add_filter( 'custom_menu_order', '__return_true' );
		add_filter( 'menu_order', [ $this, 'menu_order' ] );
	}
}
includes/settings/validations.php000064400000003177151327220420013246 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor settings validations.
 *
 * Elementor settings validations handler class is responsible for validating settings
 * fields.
 *
 * @since 1.0.0
 */
class Settings_Validations {

	/**
	 * Validate HTML field.
	 *
	 * Sanitize content for allowed HTML tags and remove backslashes before quotes.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @param string $input Input field.
	 *
	 * @return string Input field.
	 */
	public static function html( $input ) {
		return stripslashes( wp_filter_post_kses( addslashes( $input ) ) );
	}

	/**
	 * Validate checkbox list.
	 *
	 * Make sure that an empty checkbox list field will return an array.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @param mixed $input Input field.
	 *
	 * @return mixed Input field.
	 */
	public static function checkbox_list( $input ) {
		if ( empty( $input ) ) {
			$input = [];
		}

		return $input;
	}

	/**
	 * Current Time
	 *
	 * Used to return current time
	 *
	 * @since 2.5.0
	 * @access public
	 * @static
	 *
	 * @param mixed $input Input field.
	 *
	 * @return int
	 */
	public static function current_time( $input ) {
		return time();
	}

	/**
	 * Clear cache.
	 *
	 * Delete post meta containing the post CSS file data. And delete the actual
	 * CSS files from the upload directory.
	 *
	 * @since 1.4.8
	 * @access public
	 * @static
	 *
	 * @param mixed $input Input field.
	 *
	 * @return mixed Input field.
	 */
	public static function clear_cache( $input ) {
		Plugin::$instance->files_manager->clear_cache();

		return $input;
	}
}
includes/settings/tools.php000064400000032247151327220420012071 0ustar00<?php
namespace Elementor;

use Elementor\Core\Kits\Manager;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor "Tools" page in WordPress Dashboard.
 *
 * Elementor settings page handler class responsible for creating and displaying
 * Elementor "Tools" page in WordPress dashboard.
 *
 * @since 1.0.0
 */
class Tools extends Settings_Page {

	/**
	 * Settings page ID for Elementor tools.
	 */
	const PAGE_ID = 'elementor-tools';

	/**
	 * Register admin menu.
	 *
	 * Add new Elementor Tools admin menu.
	 *
	 * Fired by `admin_menu` action.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function register_admin_menu() {
		add_submenu_page(
			Settings::PAGE_ID,
			__( 'Tools', 'elementor' ),
			__( 'Tools', 'elementor' ),
			'manage_options',
			self::PAGE_ID,
			[ $this, 'display_settings_page' ]
		);
	}

	/**
	 * Clear cache.
	 *
	 * Delete post meta containing the post CSS file data. And delete the actual
	 * CSS files from the upload directory.
	 *
	 * Fired by `wp_ajax_elementor_clear_cache` action.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function ajax_elementor_clear_cache() {
		check_ajax_referer( 'elementor_clear_cache', '_nonce' );

		Plugin::$instance->files_manager->clear_cache();

		wp_send_json_success();
	}

	/**
	 * Recreate kit.
	 *
	 * Recreate default kit (only when default kit does not exist).
	 *
	 * Fired by `wp_ajax_elementor_recreate_kit` action.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function ajax_elementor_recreate_kit() {
		check_ajax_referer( 'elementor_recreate_kit', '_nonce' );

		$kit = Plugin::$instance->kits_manager->get_active_kit();

		if ( $kit->get_id() ) {
			wp_send_json_error( [ 'message' => __( 'There\'s already an active kit.', 'elementor' ) ], 400 );
		}

		$created_default_kit = Plugin::$instance->kits_manager->create_default();

		if ( ! $created_default_kit ) {
			wp_send_json_error( [ 'message' => __( 'An error occurred while trying to create a kit.', 'elementor' ) ], 500 );
		}

		update_option( Manager::OPTION_ACTIVE, $created_default_kit );

		wp_send_json_success( __( 'New kit have been created successfully', 'elementor' ) );
	}

	/**
	 * Replace URLs.
	 *
	 * Sends an ajax request to replace old URLs to new URLs. This method also
	 * updates all the Elementor data.
	 *
	 * Fired by `wp_ajax_elementor_replace_url` action.
	 *
	 * @since 1.1.0
	 * @access public
	 */
	public function ajax_elementor_replace_url() {
		check_ajax_referer( 'elementor_replace_url', '_nonce' );

		$from = ! empty( $_POST['from'] ) ? $_POST['from'] : '';
		$to = ! empty( $_POST['to'] ) ? $_POST['to'] : '';

		try {
			$results = Utils::replace_urls( $from, $to );
			wp_send_json_success( $results );
		} catch ( \Exception $e ) {
			wp_send_json_error( $e->getMessage() );
		}
	}

	/**
	 * Elementor version rollback.
	 *
	 * Rollback to previous Elementor version.
	 *
	 * Fired by `admin_post_elementor_rollback` action.
	 *
	 * @since 1.5.0
	 * @access public
	 */
	public function post_elementor_rollback() {
		check_admin_referer( 'elementor_rollback' );

		if ( ! static::can_user_rollback_versions() ) {
			wp_die( esc_html__( 'Not allowed to rollback versions', 'elementor' ) );
		}

		$rollback_versions = $this->get_rollback_versions();
		if ( empty( $_GET['version'] ) || ! in_array( $_GET['version'], $rollback_versions ) ) {
			wp_die( esc_html__( 'Error occurred, The version selected is invalid. Try selecting different version.', 'elementor' ) );
		}

		$plugin_slug = basename( ELEMENTOR__FILE__, '.php' );

		$rollback = new Rollback(
			[
				'version' => $_GET['version'],
				'plugin_name' => ELEMENTOR_PLUGIN_BASE,
				'plugin_slug' => $plugin_slug,
				'package_url' => sprintf( 'https://downloads.wordpress.org/plugin/%s.%s.zip', $plugin_slug, $_GET['version'] ),
			]
		);

		$rollback->run();

		wp_die(
			'', esc_html__( 'Rollback to Previous Version', 'elementor' ), [
				'response' => 200,
			]
		);
	}

	/**
	 * Tools page constructor.
	 *
	 * Initializing Elementor "Tools" page.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function __construct() {
		parent::__construct();

		add_action( 'admin_menu', [ $this, 'register_admin_menu' ], 205 );

		add_action( 'wp_ajax_elementor_clear_cache', [ $this, 'ajax_elementor_clear_cache' ] );
		add_action( 'wp_ajax_elementor_replace_url', [ $this, 'ajax_elementor_replace_url' ] );
		add_action( 'wp_ajax_elementor_recreate_kit', [ $this, 'ajax_elementor_recreate_kit' ] );

		add_action( 'admin_post_elementor_rollback', [ $this, 'post_elementor_rollback' ] );
	}

	private function get_rollback_versions() {
		$rollback_versions = get_transient( 'elementor_rollback_versions_' . ELEMENTOR_VERSION );
		if ( false === $rollback_versions ) {
			$max_versions = 30;

			require_once ABSPATH . 'wp-admin/includes/plugin-install.php';

			$plugin_information = plugins_api(
				'plugin_information', [
					'slug' => 'elementor',
				]
			);

			if ( empty( $plugin_information->versions ) || ! is_array( $plugin_information->versions ) ) {
				return [];
			}

			krsort( $plugin_information->versions );

			$rollback_versions = [];

			$current_index = 0;
			foreach ( $plugin_information->versions as $version => $download_link ) {
				if ( $max_versions <= $current_index ) {
					break;
				}

				$lowercase_version = strtolower( $version );
				$is_valid_rollback_version = ! preg_match( '/(trunk|beta|rc|dev)/i', $lowercase_version );

				/**
				 * Is rollback version is valid.
				 *
				 * Filters the check whether the rollback version is valid.
				 *
				 * @param bool $is_valid_rollback_version Whether the rollback version is valid.
				 */
				$is_valid_rollback_version = apply_filters(
					'elementor/settings/tools/rollback/is_valid_rollback_version',
					$is_valid_rollback_version,
					$lowercase_version
				);

				if ( ! $is_valid_rollback_version ) {
					continue;
				}

				if ( version_compare( $version, ELEMENTOR_VERSION, '>=' ) ) {
					continue;
				}

				$current_index++;
				$rollback_versions[] = $version;
			}

			set_transient( 'elementor_rollback_versions_' . ELEMENTOR_VERSION, $rollback_versions, WEEK_IN_SECONDS );
		}

		return $rollback_versions;
	}

	/**
	 * Create tabs.
	 *
	 * Return the tools page tabs, sections and fields.
	 *
	 * @since 1.5.0
	 * @access protected
	 *
	 * @return array An array with the page tabs, sections and fields.
	 */
	protected function create_tabs() {
		$rollback_html = '<select class="elementor-rollback-select">';

		foreach ( $this->get_rollback_versions() as $version ) {
			$rollback_html .= "<option value='{$version}'>$version</option>";
		}
		$rollback_html .= '</select>';

		$tabs = [
			'general' => [
				'label' => esc_html__( 'General', 'elementor' ),
				'sections' => [
					'tools' => [
						'fields' => [
							'clear_cache' => [
								'label' => esc_html__( 'Regenerate CSS & Data', 'elementor' ),
								'field_args' => [
									'type' => 'raw_html',
									'html' => sprintf( '<button data-nonce="%s" class="button elementor-button-spinner" id="elementor-clear-cache-button">%s</button>', wp_create_nonce( 'elementor_clear_cache' ), esc_html__( 'Regenerate Files & Data', 'elementor' ) ),
									'desc' => esc_html__( 'Styles set in Elementor are saved in CSS files in the uploads folder and in the site’s database. Recreate those files and settings, according to the most recent settings.', 'elementor' ),
								],
							],
							'reset_api_data' => [
								'label' => esc_html__( 'Sync Library', 'elementor' ),
								'field_args' => [
									'type' => 'raw_html',
									'html' => sprintf( '<button data-nonce="%s" class="button elementor-button-spinner" id="elementor-library-sync-button">%s</button>', wp_create_nonce( 'elementor_reset_library' ), esc_html__( 'Sync Library', 'elementor' ) ),
									'desc' => esc_html__( 'Elementor Library automatically updates on a daily basis. You can also manually update it by clicking on the sync button.', 'elementor' ),
								],
							],
						],
					],
				],
			],
			'replace_url' => [
				'label' => esc_html__( 'Replace URL', 'elementor' ),
				'sections' => [
					'replace_url' => [
						'callback' => function() {
							$intro_text = sprintf(
								/* translators: %s: WordPress backups documentation. */
								__( '<strong>Important:</strong> It is strongly recommended that you <a target="_blank" href="%s">backup your database</a> before using Replace URL.', 'elementor' ),
								'http://go.elementor.com/wordpress-backups/'
							);
							$intro_text = '<div>' . $intro_text . '</div>';

							echo '<h2>' . esc_html__( 'Replace URL', 'elementor' ) . '</h2>';
							Utils::print_unescaped_internal_string( $intro_text );
						},
						'fields' => [
							'replace_url' => [
								'label' => esc_html__( 'Update Site Address (URL)', 'elementor' ),
								'field_args' => [
									'type' => 'raw_html',
									'html' => sprintf( '<input type="text" name="from" placeholder="http://old-url.com" class="medium-text"><input type="text" name="to" placeholder="http://new-url.com" class="medium-text"><button data-nonce="%s" class="button elementor-button-spinner" id="elementor-replace-url-button">%s</button>', wp_create_nonce( 'elementor_replace_url' ), esc_html__( 'Replace URL', 'elementor' ) ),
									'desc' => esc_html__( 'Enter your old and new URLs for your WordPress installation, to update all Elementor data (Relevant for domain transfers or move to \'HTTPS\').', 'elementor' ),
								],
							],
						],
					],
				],
			],
			'versions' => [
				'show_if' => static::can_user_rollback_versions(),
				'label' => esc_html__( 'Version Control', 'elementor' ),
				'sections' => [
					'rollback' => [
						'label' => esc_html__( 'Rollback to Previous Version', 'elementor' ),
						'callback' => function() {
							$intro_text = sprintf(
								/* translators: %s: Elementor version. */
								__( 'Experiencing an issue with Elementor version %s? Rollback to a previous version before the issue appeared.', 'elementor' ),
								ELEMENTOR_VERSION
							);
							$intro_text = '<p>' . $intro_text . '</p>';

							Utils::print_unescaped_internal_string( $intro_text );
						},
						'fields' => [
							'rollback' => [
								'label' => esc_html__( 'Rollback Version', 'elementor' ),
								'field_args' => [
									'type' => 'raw_html',
									'html' => sprintf(
										$rollback_html . '<a data-placeholder-text="' . esc_html__( 'Reinstall', 'elementor' ) . ' v{VERSION}" href="#" data-placeholder-url="%s" class="button elementor-button-spinner elementor-rollback-button">%s</a>',
										wp_nonce_url( admin_url( 'admin-post.php?action=elementor_rollback&version=VERSION' ), 'elementor_rollback' ),
										__( 'Reinstall', 'elementor' )
									),
									'desc' => '<span style="color: red;">' . esc_html__( 'Warning: Please backup your database before making the rollback.', 'elementor' ) . '</span>',
								],
							],
						],
					],
					'beta' => [
						'label' => esc_html__( 'Become a Beta Tester', 'elementor' ),
						'callback' => function() {
							echo '<p>' .
								esc_html__( 'Turn-on Beta Tester, to get notified when a new beta version of Elementor or Elementor Pro is available. The Beta version will not install automatically. You always have the option to ignore it.', 'elementor' ) .
								'</p>';
							echo sprintf(
								/* translators: 1: Link open tag, 2: Link close tag. */
								esc_html__( '%1$sClick here%2$s to join our first-to-know email updates.', 'elementor' ),
								'<a id="beta-tester-first-to-know" href="#">',
								'</a>'
							);
						},
						'fields' => [
							'beta' => [
								'label' => esc_html__( 'Beta Tester', 'elementor' ),
								'field_args' => [
									'type' => 'select',
									'std' => 'no',
									'options' => [
										'no' => esc_html__( 'Disable', 'elementor' ),
										'yes' => esc_html__( 'Enable', 'elementor' ),
									],
									'desc' => '<span style="color: red;">' . esc_html__( 'Please Note: We do not recommend updating to a beta version on production sites.', 'elementor' ) . '</span>',
								],
							],
						],
					],
				],
			],
		];

		if ( ! Plugin::$instance->kits_manager->get_active_kit()->get_id() ) {
			$tabs['general']['sections']['tools']['fields']['recreate_kit'] = [
				'label' => __( 'Recreate Kit', 'elementor' ),
				'field_args' => [
					'type' => 'raw_html',
					'html' => sprintf( '<button data-nonce="%s" class="button elementor-button-spinner" id="elementor-recreate-kit-button">%s</button>', wp_create_nonce( 'elementor_recreate_kit' ), __( 'Recreate Kit', 'elementor' ) ),
					'desc' => __( 'It seems like your site doesn\'t have any active Kit. The active Kit includes all of your Site Settings. By recreating your Kit you will able to start edit your Site Settings again.', 'elementor' ),
				],
			];
		}
		return $tabs;
	}

	/**
	 * Get tools page title.
	 *
	 * Retrieve the title for the tools page.
	 *
	 * @since 1.5.0
	 * @access protected
	 *
	 * @return string Tools page title.
	 */
	protected function get_page_title() {
		return __( 'Tools', 'elementor' );
	}

	/**
	 * Check if the current user can access the version control tab and rollback versions.
	 *
	 * @return bool
	 */
	public static function can_user_rollback_versions() {
		return current_user_can( 'activate_plugins' ) && current_user_can( 'update_plugins' );
	}
}
includes/heartbeat.php000064400000005113151327220420011020 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor heartbeat.
 *
 * Elementor heartbeat handler class is responsible for initializing Elementor
 * heartbeat. The class communicates with WordPress Heartbeat API while working
 * with Elementor.
 *
 * @since 1.0.0
 */
class Heartbeat {

	/**
	 * Heartbeat received.
	 *
	 * Locks the Heartbeat response received when editing with Elementor.
	 *
	 * Fired by `heartbeat_received` filter.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param array $response The Heartbeat response.
	 * @param array $data     The `$_POST` data sent.
	 *
	 * @return array Heartbeat response received.
	 */
	public function heartbeat_received( $response, $data ) {
		if ( isset( $data['elementor_post_lock']['post_ID'] ) ) {
			$post_id = $data['elementor_post_lock']['post_ID'];
			$locked_user = Plugin::$instance->editor->get_locked_user( $post_id );

			if ( ! $locked_user || ! empty( $data['elementor_force_post_lock'] ) ) {
				Plugin::$instance->editor->lock_post( $post_id );
			} else {
				$response['locked_user'] = $locked_user->display_name;
			}

			/** @var Core\Common\Modules\Ajax\Module $ajax */
			$ajax = Plugin::$instance->common->get_component( 'ajax' );

			$response['elementorNonce'] = $ajax->create_nonce();
		}
		return $response;
	}

	/**
	 * Refresh nonces.
	 *
	 * Filter the nonces to send to the editor when editing with Elementor. Used
	 * to refresh the nonce when the nonce expires while editing. This way the
	 * user doesn't need to log-in again as Elementor fetches the new nonce from
	 * the server using ajax.
	 *
	 * Fired by `wp_refresh_nonces` filter.
	 *
	 * @since 1.8.0
	 * @access public
	 *
	 * @param array $response The no-priv Heartbeat response object or array.
	 * @param array $data     The `$_POST` data sent.
	 *
	 * @return array Refreshed nonces.
	 */
	public function refresh_nonces( $response, $data ) {
		if ( isset( $data['elementor_post_lock']['post_ID'] ) ) {
			/** @var Core\Common\Modules\Ajax\Module $ajax */
			$ajax = Plugin::$instance->common->get_component( 'ajax' );

			$response['elementor-refresh-nonces'] = [
				'elementorNonce' => $ajax->create_nonce(),
				'heartbeatNonce' => wp_create_nonce( 'heartbeat-nonce' ),
			];
		}

		return $response;
	}

	/**
	 * Heartbeat constructor.
	 *
	 * Initializing Elementor heartbeat.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function __construct() {
		add_filter( 'heartbeat_received', [ $this, 'heartbeat_received' ], 10, 2 );
		add_filter( 'wp_refresh_nonces', [ $this, 'refresh_nonces' ], 30, 2 );
	}
}
includes/beta-testers.php000064400000005763151327220420011476 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor beta testers.
 *
 * Elementor beta testers handler class is responsible for the Beta Testers
 * feature that allows developers to test Elementor beta versions.
 *
 * @since 1.5.0
 */
class Beta_Testers {

	const NEWSLETTER_TERMS_URL = 'https://go.elementor.com/beta-testers-newsletter-terms';

	const NEWSLETTER_PRIVACY_URL = 'https://go.elementor.com/beta-testers-newsletter-privacy';

	const BETA_TESTER_SIGNUP = 'beta_tester_signup';

	/**
	 * Transient key.
	 *
	 * Holds the Elementor beta testers transient key.
	 *
	 * @since 1.5.0
	 * @access private
	 * @static
	 *
	 * @var string Transient key.
	 */
	private $transient_key;

	/**
	 * Get beta version.
	 *
	 * Retrieve Elementor beta version from wp.org plugin repository.
	 *
	 * @since 1.5.0
	 * @access private
	 *
	 * @return string|false Beta version or false.
	 */
	private function get_beta_version() {
		$beta_version = get_site_transient( $this->transient_key );

		if ( false === $beta_version ) {
			$beta_version = 'false';

			$response = wp_remote_get( 'https://plugins.svn.wordpress.org/elementor/trunk/readme.txt' );

			if ( ! is_wp_error( $response ) && ! empty( $response['body'] ) ) {
				preg_match( '/Beta tag: (.*)/i', $response['body'], $matches );
				if ( isset( $matches[1] ) ) {
					$beta_version = $matches[1];
				}
			}

			set_site_transient( $this->transient_key, $beta_version, 6 * HOUR_IN_SECONDS );
		}

		return $beta_version;
	}

	/**
	 * Check version.
	 *
	 * Checks whether a beta version exist, and retrieve the version data.
	 *
	 * Fired by `pre_set_site_transient_update_plugins` filter, before WordPress
	 * runs the plugin update checker.
	 *
	 * @since 1.5.0
	 * @access public
	 *
	 * @param array $transient Plugin version data.
	 *
	 * @return array Plugin version data.
	 */
	public function check_version( $transient ) {
		if ( empty( $transient->checked ) ) {
			return $transient;
		}

		delete_site_transient( $this->transient_key );

		$plugin_slug = basename( ELEMENTOR__FILE__, '.php' );

		$beta_version = $this->get_beta_version();
		if ( 'false' !== $beta_version && version_compare( $beta_version, ELEMENTOR_VERSION, '>' ) ) {
			$response = new \stdClass();
			$response->plugin = $plugin_slug;
			$response->slug = $plugin_slug;
			$response->new_version = $beta_version;
			$response->url = 'https://elementor.com/';
			$response->package = sprintf( 'https://downloads.wordpress.org/plugin/elementor.%s.zip', $beta_version );

			$transient->response[ ELEMENTOR_PLUGIN_BASE ] = $response;
		}

		return $transient;
	}

	/**
	 * Beta testers constructor.
	 *
	 * Initializing Elementor beta testers.
	 *
	 * @since 1.5.0
	 * @access public
	 */
	public function __construct() {
		if ( 'yes' !== get_option( 'elementor_beta', 'no' ) ) {
			return;
		}

		$this->transient_key = md5( 'elementor_beta_testers_response_key' );

		add_filter( 'pre_set_site_transient_update_plugins', [ $this, 'check_version' ] );
	}
}
includes/db.php000064400000035302151327220420007451 0ustar00<?php
namespace Elementor;

use Elementor\Core\Base\Document;
use Elementor\Core\DynamicTags\Manager;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor database.
 *
 * Elementor database handler class is responsible for communicating with the
 * DB, save and retrieve Elementor data and meta data.
 *
 * @since 1.0.0
 */
class DB {

	/**
	 * Current DB version of the editor.
	 */
	const DB_VERSION = '0.4';

	/**
	 * Post publish status.
	 *
	 * @deprecated 3.1.0 Use `Document::STATUS_PUBLISH` instead
	 */
	const STATUS_PUBLISH = Document::STATUS_PUBLISH;

	/**
	 * Post draft status.
	 *
	 * @deprecated 3.1.0 Use `Document::STATUS_DRAFT` instead
	 */
	const STATUS_DRAFT = Document::STATUS_DRAFT;

	/**
	 * Post private status.
	 *
	 * @deprecated 3.1.0 Use `Document::STATUS_PRIVATE` instead
	 */
	const STATUS_PRIVATE = Document::STATUS_PRIVATE;

	/**
	 * Post autosave status.
	 *
	 * @deprecated 3.1.0 Use `Document::STATUS_AUTOSAVE` instead
	 */
	const STATUS_AUTOSAVE = Document::STATUS_AUTOSAVE;

	/**
	 * Post pending status.
	 *
	 * @deprecated 3.1.0 Use `Document::STATUS_PENDING` instead
	 */
	const STATUS_PENDING = Document::STATUS_PENDING;

	/**
	 * Switched post data.
	 *
	 * Holds the switched post data.
	 *
	 * @since 1.5.0
	 * @access protected
	 *
	 * @var array Switched post data. Default is an empty array.
	 */
	protected $switched_post_data = [];

	/**
	 * Switched data.
	 *
	 * Holds the switched data.
	 *
	 * @since 2.0.0
	 * @access protected
	 *
	 * @var array Switched data. Default is an empty array.
	 */
	protected $switched_data = [];

	/**
	 * Get builder.
	 *
	 * Retrieve editor data from the database.
	 *
	 * @since 1.0.0
	 * @deprecated 3.1.0 Use `Plugin::$instance->documents->get( $post_id )->get_elements_raw_data( null, true )` OR `Plugin::$instance->documents->get_doc_or_auto_save( $post_id )->get_elements_raw_data( null, true )` instead
	 * @access public
	 *
	 * @param int     $post_id           Post ID.
	 * @param string  $status            Optional. Post status. Default is `publish`.
	 *
	 * @return array Editor data.
	 */
	public function get_builder( $post_id, $status = Document::STATUS_PUBLISH ) {
		Plugin::$instance->modules_manager
			->get_modules( 'dev-tools' )
			->deprecation
			->deprecated_function(
				__METHOD__,
				'3.1.0',
				'`Plugin::$instance->documents->get( $post_id )->get_elements_raw_data( null, true )` OR `Plugin::$instance->documents->get_doc_or_auto_save( $post_id )->get_elements_raw_data( null, true )`'
			);

		if ( Document::STATUS_DRAFT === $status ) {
			$document = Plugin::$instance->documents->get_doc_or_auto_save( $post_id );
		} else {
			$document = Plugin::$instance->documents->get( $post_id );
		}

		if ( $document ) {
			$editor_data = $document->get_elements_raw_data( null, true );
		} else {
			$editor_data = [];
		}

		return $editor_data;
	}

	/**
	 * Get JSON meta.
	 *
	 * Retrieve post meta data, and return the JSON decoded data.
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @param int    $post_id Post ID.
	 * @param string $key     The meta key to retrieve.
	 *
	 * @return array Decoded JSON data from post meta.
	 */
	protected function _get_json_meta( $post_id, $key ) {
		Plugin::$instance->modules_manager->get_modules( 'dev-tools' )->deprecation->deprecated_function( __METHOD__, '3.1.0' );

		$meta = get_post_meta( $post_id, $key, true );

		if ( is_string( $meta ) && ! empty( $meta ) ) {
			$meta = json_decode( $meta, true );
		}

		if ( empty( $meta ) ) {
			$meta = [];
		}

		return $meta;
	}

	/**
	 * Is using Elementor.
	 *
	 * Set whether the page is using Elementor or not.
	 *
	 * @since 1.5.0
	 * @deprecated 3.1.0 Use `Plugin::$instance->documents->get( $post_id )->set_is_build_with_elementor( $is_elementor )` instead
	 * @access public
	 *
	 * @param int  $post_id      Post ID.
	 * @param bool $is_elementor Optional. Whether the page is elementor page.
	 *                           Default is true.
	 */
	public function set_is_elementor_page( $post_id, $is_elementor = true ) {
		Plugin::$instance->modules_manager
			->get_modules( 'dev-tools' )
			->deprecation
			->deprecated_function(
				__METHOD__,
				'3.1.0',
				'Plugin::$instance->documents->get( $post_id )->set_is_build_with_elementor( $is_elementor )'
			);

		$document = Plugin::$instance->documents->get( $post_id );

		if ( ! $document ) {
			return;
		}

		$document->set_is_built_with_elementor( $is_elementor );
	}

	/**
	 * Render element plain content.
	 *
	 * When saving data in the editor, this method renders recursively the plain
	 * content containing only the content and the HTML. No CSS data.
	 *
	 * @since 2.0.0
	 * @access private
	 *
	 * @param array $element_data Element data.
	 */
	private function render_element_plain_content( $element_data ) {
		if ( 'widget' === $element_data['elType'] ) {
			/** @var Widget_Base $widget */
			$widget = Plugin::$instance->elements_manager->create_element_instance( $element_data );

			if ( $widget ) {
				$widget->render_plain_content();
			}
		}

		if ( ! empty( $element_data['elements'] ) ) {
			foreach ( $element_data['elements'] as $element ) {
				$this->render_element_plain_content( $element );
			}
		}
	}

	/**
	 * Save plain text.
	 *
	 * Retrieves the raw content, removes all kind of unwanted HTML tags and saves
	 * the content as the `post_content` field in the database.
	 *
	 * @since 1.9.0
	 * @access public
	 *
	 * @param int $post_id Post ID.
	 */
	public function save_plain_text( $post_id ) {
		// Switch $dynamic_tags to parsing mode = remove.
		$dynamic_tags = Plugin::$instance->dynamic_tags;
		$parsing_mode = $dynamic_tags->get_parsing_mode();
		$dynamic_tags->set_parsing_mode( Manager::MODE_REMOVE );

		$plain_text = $this->get_plain_text( $post_id );

		wp_update_post(
			[
				'ID' => $post_id,
				'post_content' => $plain_text,
			]
		);

		// Restore parsing mode.
		$dynamic_tags->set_parsing_mode( $parsing_mode );
	}

	/**
	 * Iterate data.
	 *
	 * Accept any type of Elementor data and a callback function. The callback
	 * function runs recursively for each element and his child elements.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param array    $data_container Any type of elementor data.
	 * @param callable $callback       A function to iterate data by.
	 * @param array    $args           Array of args pointers for passing parameters in & out of the callback
	 *
	 * @return mixed Iterated data.
	 */
	public function iterate_data( $data_container, $callback, $args = [] ) {
		if ( isset( $data_container['elType'] ) ) {
			if ( ! empty( $data_container['elements'] ) ) {
				$data_container['elements'] = $this->iterate_data( $data_container['elements'], $callback, $args );
			}

			return call_user_func( $callback, $data_container, $args );
		}

		foreach ( $data_container as $element_key => $element_value ) {
			$element_data = $this->iterate_data( $data_container[ $element_key ], $callback, $args );

			if ( null === $element_data ) {
				continue;
			}

			$data_container[ $element_key ] = $element_data;
		}

		return $data_container;
	}

	/**
	 * Safely copy Elementor meta.
	 *
	 * Make sure the original page was built with Elementor and the post is not
	 * auto-save. Only then copy elementor meta from one post to another using
	 * `copy_elementor_meta()`.
	 *
	 * @since 1.9.2
	 * @access public
	 *
	 * @param int $from_post_id Original post ID.
	 * @param int $to_post_id   Target post ID.
	 */
	public function safe_copy_elementor_meta( $from_post_id, $to_post_id ) {
		// It's from  WP-Admin & not from Elementor.
		if ( ! did_action( 'elementor/db/before_save' ) ) {
			$from_document = Plugin::$instance->documents->get( $from_post_id );

			if ( ! $from_document || ! $from_document->is_built_with_elementor() ) {
				return;
			}

			// It's an exited Elementor auto-save
			if ( get_post_meta( $to_post_id, '_elementor_data', true ) ) {
				return;
			}
		}

		$this->copy_elementor_meta( $from_post_id, $to_post_id );
	}

	/**
	 * Copy Elementor meta.
	 *
	 * Duplicate the data from one post to another.
	 *
	 * Consider using `safe_copy_elementor_meta()` method instead.
	 *
	 * @since 1.1.0
	 * @access public
	 *
	 * @param int $from_post_id Original post ID.
	 * @param int $to_post_id   Target post ID.
	 */
	public function copy_elementor_meta( $from_post_id, $to_post_id ) {
		$from_post_meta = get_post_meta( $from_post_id );
		$core_meta = [
			'_wp_page_template',
			'_thumbnail_id',
		];

		foreach ( $from_post_meta as $meta_key => $values ) {
			// Copy only meta with the `_elementor` prefix
			if ( 0 === strpos( $meta_key, '_elementor' ) || in_array( $meta_key, $core_meta, true ) ) {
				$value = $values[0];

				// The elementor JSON needs slashes before saving
				if ( '_elementor_data' === $meta_key ) {
					$value = wp_slash( $value );
				} else {
					$value = maybe_unserialize( $value );
				}

				// Don't use `update_post_meta` that can't handle `revision` post type
				update_metadata( 'post', $to_post_id, $meta_key, $value );
			}
		}
	}

	/**
	 * Is built with Elementor.
	 *
	 * Check whether the post was built with Elementor.
	 *
	 * @since 1.0.10
	 * @deprecated 3.2.0 Use `Plugin::$instance->documents->get( $post_id )->is_built_with_elementor()` instead
	 * @access public
	 *
	 * @param int $post_id Post ID.
	 *
	 * @return bool Whether the post was built with Elementor.
	 */
	public function is_built_with_elementor( $post_id ) {
		Plugin::$instance->modules_manager
			->get_modules( 'dev-tools' )
			->deprecation
			->deprecated_function(
				__METHOD__,
				'3.2.0',
				'Plugin::$instance->documents->get( $post_id )->is_built_with_elementor()'
			);

		$document = Plugin::$instance->documents->get( $post_id );

		if ( ! $document ) {
			return false;
		}

		return $document->is_built_with_elementor();
	}

	/**
	 * Switch to post.
	 *
	 * Change the global WordPress post to the requested post.
	 *
	 * @since 1.5.0
	 * @access public
	 *
	 * @param int $post_id Post ID to switch to.
	 */
	public function switch_to_post( $post_id ) {
		$post_id = absint( $post_id );
		// If is already switched, or is the same post, return.
		if ( get_the_ID() === $post_id ) {
			$this->switched_post_data[] = false;
			return;
		}

		$this->switched_post_data[] = [
			'switched_id' => $post_id,
			'original_id' => get_the_ID(), // Note, it can be false if the global isn't set
		];

		$GLOBALS['post'] = get_post( $post_id ); // phpcs:ignore WordPress.WP.GlobalVariablesOverride.Prohibited

		setup_postdata( $GLOBALS['post'] );
	}

	/**
	 * Restore current post.
	 *
	 * Rollback to the previous global post, rolling back from `DB::switch_to_post()`.
	 *
	 * @since 1.5.0
	 * @access public
	 */
	public function restore_current_post() {
		$data = array_pop( $this->switched_post_data );

		// If not switched, return.
		if ( ! $data ) {
			return;
		}

		// It was switched from an empty global post, restore this state and unset the global post
		if ( false === $data['original_id'] ) {
			unset( $GLOBALS['post'] );
			return;
		}

		$GLOBALS['post'] = get_post( $data['original_id'] ); // phpcs:ignore WordPress.WP.GlobalVariablesOverride.Prohibited

		setup_postdata( $GLOBALS['post'] );
	}


	/**
	 * Switch to query.
	 *
	 * Change the WordPress query to a new query with the requested
	 * query variables.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @param array $query_vars New query variables.
	 * @param bool  $force_global_post
	 */
	public function switch_to_query( $query_vars, $force_global_post = false ) {
		global $wp_query;
		$current_query_vars = $wp_query->query;

		// If is already switched, or is the same query, return.
		if ( $current_query_vars === $query_vars ) {
			$this->switched_data[] = false;
			return;
		}

		$new_query = new \WP_Query( $query_vars );

		$switched_data = [
			'switched' => $new_query,
			'original' => $wp_query,
		];

		if ( ! empty( $GLOBALS['post'] ) ) {
			$switched_data['post'] = $GLOBALS['post'];
		}

		$this->switched_data[] = $switched_data;

		$wp_query = $new_query; // phpcs:ignore WordPress.WP.GlobalVariablesOverride.Prohibited

		// Ensure the global post is set only if needed
		unset( $GLOBALS['post'] );

		if ( isset( $new_query->posts[0] ) ) {
			if ( $force_global_post || $new_query->is_singular() ) {
				$GLOBALS['post'] = $new_query->posts[0]; // phpcs:ignore WordPress.WP.GlobalVariablesOverride.Prohibited
				setup_postdata( $GLOBALS['post'] );
			}
		}

		if ( $new_query->is_author() ) {
			$GLOBALS['authordata'] = get_userdata( $new_query->get( 'author' ) ); // phpcs:ignore WordPress.WP.GlobalVariablesOverride.Prohibited
		}
	}

	/**
	 * Restore current query.
	 *
	 * Rollback to the previous query, rolling back from `DB::switch_to_query()`.
	 *
	 * @since 2.0.0
	 * @access public
	 */
	public function restore_current_query() {
		$data = array_pop( $this->switched_data );

		// If not switched, return.
		if ( ! $data ) {
			return;
		}

		global $wp_query;

		$wp_query = $data['original']; // phpcs:ignore WordPress.WP.GlobalVariablesOverride.Prohibited

		// Ensure the global post/authordata is set only if needed.
		unset( $GLOBALS['post'] );
		unset( $GLOBALS['authordata'] );

		if ( ! empty( $data['post'] ) ) {
			$GLOBALS['post'] = $data['post']; // phpcs:ignore WordPress.WP.GlobalVariablesOverride.Prohibited
			setup_postdata( $GLOBALS['post'] );
		}

		if ( $wp_query->is_author() ) {
			$GLOBALS['authordata'] = get_userdata( $wp_query->get( 'author' ) ); // phpcs:ignore WordPress.WP.GlobalVariablesOverride.Prohibited
		}
	}

	/**
	 * Get plain text.
	 *
	 * Retrieve the post plain text.
	 *
	 * @since 1.9.0
	 * @access public
	 *
	 * @param int $post_id Post ID.
	 *
	 * @return string Post plain text.
	 */
	public function get_plain_text( $post_id ) {
		$document = Plugin::$instance->documents->get( $post_id );
		$data = $document ? $document->get_elements_data() : [];

		return $this->get_plain_text_from_data( $data );
	}

	/**
	 * Get plain text from data.
	 *
	 * Retrieve the post plain text from any given Elementor data.
	 *
	 * @since 1.9.2
	 * @access public
	 *
	 * @param array $data Post ID.
	 *
	 * @return string Post plain text.
	 */
	public function get_plain_text_from_data( $data ) {
		ob_start();
		if ( $data ) {
			foreach ( $data as $element_data ) {
				$this->render_element_plain_content( $element_data );
			}
		}

		$plain_text = ob_get_clean();

		// Remove unnecessary tags.
		$plain_text = preg_replace( '/<\/?div[^>]*\>/i', '', $plain_text );
		$plain_text = preg_replace( '/<\/?span[^>]*\>/i', '', $plain_text );
		$plain_text = preg_replace( '#<script(.*?)>(.*?)</script>#is', '', $plain_text );
		$plain_text = preg_replace( '/<i [^>]*><\\/i[^>]*>/', '', $plain_text );
		$plain_text = preg_replace( '/ class=".*?"/', '', $plain_text );

		// Remove empty lines.
		$plain_text = preg_replace( '/(^[\r\n]*|[\r\n]+)[\s\t]*[\r\n]+/', "\n", $plain_text );

		$plain_text = trim( $plain_text );

		return $plain_text;
	}
}
includes/libraries/bfi-thumb/bfi-thumb.php000064400000057020151327220420014573 0ustar00<?php
/*
 * bfi_thumb - WP Image Resizer v1.3
 *
 * (c) 2013 Benjamin F. Intal / Gambit
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

/** Uses WP's Image Editor Class to resize and filter images
 *
 * @param $url    string the local image URL to manipulate
 * @param $params array the options to perform on the image. Keys and values supported:
 *                'width' int pixels
 *                'height' int pixels
 *                'opacity' int 0-100
 *                'color' string hex-color #000000-#ffffff
 *                'grayscale' bool
 *                'negate' bool
 *                'crop' bool
 *                'crop_only' bool
 *                'crop_x' bool string
 *                'crop_y' bool string
 *                'crop_width' bool string
 *                'crop_height' bool string
 *                'quality' int 1-100
 * @param $single boolean, if false then an array of data will be returned
 *
 * @return string|array containing the url of the resized modified image
 */

if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly.

if ( ! defined( 'BFITHUMB_UPLOAD_DIR' ) ) {
	define( 'BFITHUMB_UPLOAD_DIR', 'elementor/thumbs' );
}

if ( ! function_exists( 'bfi_thumb' ) ) {

	function bfi_thumb( $url, $params = array(), $single = true ) {
		$class = BFI_Class_Factory::getNewestVersion( 'BFI_Thumb' );

		return call_user_func( array( $class, 'thumb' ), $url, $params, $single );
	}
}


/**
 * Class factory, this is to make sure that when multiple bfi_thumb scripts
 * are used (e.g. a plugin and a theme both use it), we always use the
 * latest version.
 */
if ( ! class_exists( 'BFI_Class_Factory' ) ) {

	class BFI_Class_Factory {

		public static $versions = array();
		public static $latestClass = array();

		public static function addClassVersion( $baseClassName, $className, $version ) {
			if ( empty( self::$versions[ $baseClassName ] ) ) {
				self::$versions[ $baseClassName ] = array();
			}
			self::$versions[ $baseClassName ][] = array(
				'class' => $className,
				'version' => $version,
			);
		}

		public static function getNewestVersion( $baseClassName ) {
			if ( empty( self::$latestClass[ $baseClassName ] ) ) {
				usort( self::$versions[ $baseClassName ], array( __CLASS__, "versionCompare" ) );
				self::$latestClass[ $baseClassName ] = self::$versions[ $baseClassName ][0]['class'];
				unset( self::$versions[ $baseClassName ] );
			}

			return self::$latestClass[ $baseClassName ];
		}

		public static function versionCompare( $a, $b ) {
			return version_compare( $a['version'], $b['version'] ) == 1 ? -1 : 1;
		}
	}
}


/*
 * Change the default image editors
 */
add_filter( 'wp_image_editors', 'bfi_wp_image_editor' );

// Instead of using the default image editors, use our extended ones
if ( ! function_exists( 'bfi_wp_image_editor' ) ) {

	function bfi_wp_image_editor( $editorArray ) {
		// Make sure that we use the latest versions
		return array(
			BFI_Class_Factory::getNewestVersion( 'BFI_Image_Editor_GD' ),
			BFI_Class_Factory::getNewestVersion( 'BFI_Image_Editor_Imagick' ),
		);
	}
}


/*
 * Include the WP Image classes
 */

require_once ABSPATH . WPINC . '/class-wp-image-editor.php';
require_once ABSPATH . WPINC . '/class-wp-image-editor-imagick.php';
require_once ABSPATH . WPINC . '/class-wp-image-editor-gd.php';


/*
 * Enhanced Imagemagick Image Editor
 */


if ( ! class_exists( 'BFI_Image_Editor_Imagick_1_3' ) ) {

	BFI_Class_Factory::addClassVersion( 'BFI_Image_Editor_Imagick', 'BFI_Image_Editor_Imagick_1_3', '1.3' );

	class BFI_Image_Editor_Imagick_1_3 extends WP_Image_Editor_Imagick {

		/** Changes the opacity of the image
		 *
		 * @supports 3.5.1
		 * @access   public
		 *
		 * @param float $opacity (0.0-1.0)
		 *
		 * @return boolean|WP_Error
		 */
		public function opacity( $opacity ) {
			$opacity /= 100;

			try {
				// From: http://stackoverflow.com/questions/3538851/php-imagick-setimageopacity-destroys-transparency-and-does-nothing
				// preserves transparency
				//$this->image->setImageOpacity($opacity);
				return $this->image->evaluateImage( Imagick::EVALUATE_MULTIPLY, $opacity, Imagick::CHANNEL_ALPHA );
			} catch ( Exception $e ) {
				return new WP_Error( 'image_opacity_error', $e->getMessage() );
			}
		}

		/** Tints the image a different color
		 *
		 * @supports 3.5.1
		 * @access   public
		 *
		 * @param string hex color e.g. #ff00ff
		 *
		 * @return boolean|WP_Error
		 */
		public function colorize( $hexColor ) {
			try {
				return $this->image->colorizeImage( $hexColor, 1.0 );
			} catch ( Exception $e ) {
				return new WP_Error( 'image_colorize_error', $e->getMessage() );
			}
		}

		/** Makes the image grayscale
		 *
		 * @supports 3.5.1
		 * @access   public
		 *
		 * @return boolean|WP_Error
		 */
		public function grayscale() {
			try {
				return $this->image->modulateImage( 100, 0, 100 );
			} catch ( Exception $e ) {
				return new WP_Error( 'image_grayscale_error', $e->getMessage() );
			}
		}

		/** Negates the image
		 *
		 * @supports 3.5.1
		 * @access   public
		 *
		 * @return boolean|WP_Error
		 */
		public function negate() {
			try {
				return $this->image->negateImage( false );
			} catch ( Exception $e ) {
				return new WP_Error( 'image_negate_error', $e->getMessage() );
			}
		}
	}
}


/*
 * Enhanced GD Image Editor
 */


if ( ! class_exists( 'BFI_Image_Editor_GD_1_3' ) ) {

	BFI_Class_Factory::addClassVersion( 'BFI_Image_Editor_GD', 'BFI_Image_Editor_GD_1_3', '1.3' );

	class BFI_Image_Editor_GD_1_3 extends WP_Image_Editor_GD {

		/** Rotates current image counter-clockwise by $angle.
		 * Ported from image-edit.php
		 * Added presevation of alpha channels
		 *
		 * @since  3.5.0
		 * @access public
		 *
		 * @param float $angle
		 *
		 * @return boolean|WP_Error
		 */
		public function rotate( $angle ) {
			if ( function_exists( 'imagerotate' ) ) {
				$rotated = imagerotate( $this->image, $angle, 0 );

				// Add alpha blending
				imagealphablending( $rotated, true );
				imagesavealpha( $rotated, true );

				if ( is_resource( $rotated ) ) {
					imagedestroy( $this->image );
					$this->image = $rotated;
					$this->update_size();

					return true;
				}
			}

			return new WP_Error( 'image_rotate_error', 'Image rotate failed.', $this->file );
		}

		/** Changes the opacity of the image
		 *
		 * @supports 3.5.1
		 * @access   public
		 *
		 * @param float $opacity (0.0-1.0)
		 *
		 * @return boolean|WP_Error
		 */
		public function opacity( $opacity ) {
			$opacity /= 100;

			$filtered = $this->_opacity( $this->image, $opacity );

			if ( is_resource( $filtered ) ) {
				// imagedestroy($this->image);
				$this->image = $filtered;

				return true;
			}

			return new WP_Error( 'image_opacity_error', 'Image opacity change failed.', $this->file );
		}


		// from: http://php.net/manual/en/function.imagefilter.php
		// params: image resource id, opacity (eg. 0.0-1.0)
		protected function _opacity( $image, $opacity ) {
			if ( ! function_exists( 'imagealphablending' ) || ! function_exists( 'imagecolorat' ) || ! function_exists( 'imagecolorallocatealpha' ) || ! function_exists( 'imagesetpixel' ) ) {
				return false;
			}

			// get image width and height
			$w = imagesx( $image );
			$h = imagesy( $image );

			// turn alpha blending off
			imagealphablending( $image, false );

			// find the most opaque pixel in the image (the one with the smallest alpha value)
			$minalpha = 127;
			for ( $x = 0; $x < $w; $x++ ) {
				for ( $y = 0; $y < $h; $y++ ) {
					$alpha = ( imagecolorat( $image, $x, $y ) >> 24 ) & 0xFF;
					if ( $alpha < $minalpha ) {
						$minalpha = $alpha;
					}
				}
			}

			// loop through image pixels and modify alpha for each
			for ( $x = 0; $x < $w; $x++ ) {
				for ( $y = 0; $y < $h; $y++ ) {

					// get current alpha value (represents the TANSPARENCY!)
					$colorxy = imagecolorat( $image, $x, $y );
					$alpha = ( $colorxy >> 24 ) & 0xFF;

					// calculate new alpha
					if ( $minalpha !== 127 ) {
						$alpha = 127 + 127 * $opacity * ( $alpha - 127 ) / ( 127 - $minalpha );
					} else {
						$alpha += 127 * $opacity;
					}

					// get the color index with new alpha
					$alphacolorxy = imagecolorallocatealpha( $image, ( $colorxy >> 16 ) & 0xFF, ( $colorxy >> 8 ) & 0xFF, $colorxy & 0xFF, $alpha );

					// set pixel with the new color + opacity
					if ( ! imagesetpixel( $image, $x, $y, $alphacolorxy ) ) {
						return false;
					}
				}
			}

			imagesavealpha( $image, true );

			return $image;
		}

		/** Tints the image a different color
		 *
		 * @supports 3.5.1
		 * @access   public
		 *
		 * @param string hex color e.g. #ff00ff
		 *
		 * @return boolean|WP_Error
		 */
		public function colorize( $hexColor ) {
			if ( function_exists( 'imagefilter' ) && function_exists( 'imagesavealpha' ) && function_exists( 'imagealphablending' ) ) {

				$hexColor = preg_replace( '#^\##', '', $hexColor );
				$r = hexdec( substr( $hexColor, 0, 2 ) );
				$g = hexdec( substr( $hexColor, 2, 2 ) );
				$b = hexdec( substr( $hexColor, 2, 2 ) );

				imagealphablending( $this->image, false );
				if ( imagefilter( $this->image, IMG_FILTER_COLORIZE, $r, $g, $b, 0 ) ) {
					imagesavealpha( $this->image, true );

					return true;
				}
			}

			return new WP_Error( 'image_colorize_error', 'Image color change failed.', $this->file );
		}

		/** Makes the image grayscale
		 *
		 * @supports 3.5.1
		 * @access   public
		 *
		 * @return boolean|WP_Error
		 */
		public function grayscale() {
			if ( function_exists( 'imagefilter' ) ) {
				if ( imagefilter( $this->image, IMG_FILTER_GRAYSCALE ) ) {
					return true;
				}
			}

			return new WP_Error( 'image_grayscale_error', 'Image grayscale failed.', $this->file );
		}

		/** Negates the image
		 *
		 * @supports 3.5.1
		 * @access   public
		 *
		 * @return boolean|WP_Error
		 */
		public function negate() {
			if ( function_exists( 'imagefilter' ) ) {
				if ( imagefilter( $this->image, IMG_FILTER_NEGATE ) ) {
					return true;
				}
			}

			return new WP_Error( 'image_negate_error', 'Image negate failed.', $this->file );
		}
	}
}


/*
 * Main Class
 */
if ( ! class_exists( 'BFI_Thumb_1_3' ) ) {

	BFI_Class_Factory::addClassVersion( 'BFI_Thumb', 'BFI_Thumb_1_3', '1.3' );

	class BFI_Thumb_1_3 {

		/** Uses WP's Image Editor Class to resize and filter images
		 * Inspired by: https://github.com/sy4mil/Aqua-Resizer/blob/master/aq_resizer.php
		 *
		 * @param $url    string the local image URL to manipulate
		 * @param $params array the options to perform on the image. Keys and values supported:
		 *                'width' int pixels
		 *                'height' int pixels
		 *                'opacity' int 0-100
		 *                'color' string hex-color #000000-#ffffff
		 *                'grayscale' bool
		 *                'crop' bool
		 *                'negate' bool
		 *                'crop_only' bool
		 *                'crop_x' bool string
		 *                'crop_y' bool string
		 *                'crop_width' bool string
		 *                'crop_height' bool string
		 *                'quality' int 1-100
		 * @param $single boolean, if false then an array of data will be returned
		 *
		 * @return string|array
		 */
		public static function thumb( $url, $params = array(), $single = true ) {
			extract( $params );

			//validate inputs
			if ( ! $url ) {
				return false;
			}

			$crop_only = isset( $crop_only ) ? $crop_only : false;

			//define upload path & dir
			$upload_info = wp_upload_dir();
			$upload_dir = $upload_info['basedir'];
			$upload_url = $upload_info['baseurl'];
			$theme_url = get_template_directory_uri();
			$theme_dir = get_template_directory();

			// find the path of the image. Perform 2 checks:
			// #1 check if the image is in the uploads folder
			if ( strpos( $url, $upload_url ) !== false ) {
				$rel_path = str_replace( $upload_url, '', $url );
				$img_path = $upload_dir . $rel_path;
				// #2 check if the image is in the current theme folder
			} else if ( strpos( $url, $theme_url ) !== false ) {
				$rel_path = str_replace( $theme_url, '', $url );
				$img_path = $theme_dir . $rel_path;
			}

			// Fail if we can't find the image in our WP local directory
			if ( empty( $img_path ) ) {
				return $url;
			}

			// check if img path exists, and is an image indeed
			if ( ! @file_exists( $img_path ) || ! getimagesize( $img_path ) ) {
				return $url;
			}

			// This is the filename
			$basename = basename( $img_path );

			//get image info
			$info = pathinfo( $img_path );
			$ext = $info['extension'];
			list( $orig_w, $orig_h ) = getimagesize( $img_path );

			// support percentage dimensions. compute percentage based on
			// the original dimensions
			if ( isset( $width ) ) {
				if ( stripos( $width, '%' ) !== false ) {
					$width = (int) ( (float) str_replace( '%', '', $width ) / 100 * $orig_w );
				}
			}
			if ( isset( $height ) ) {
				if ( stripos( $height, '%' ) !== false ) {
					$height = (int) ( (float) str_replace( '%', '', $height ) / 100 * $orig_h );
				}
			}

			// The only purpose of this is to determine the final width and height
			// without performing any actual image manipulation, which will be used
			// to check whether a resize was previously done.
			if ( isset( $width ) && $crop_only === false ) {
				//get image size after cropping
				$dims = image_resize_dimensions( $orig_w, $orig_h, $width, isset( $height ) ? $height : null, isset( $crop ) ? $crop : false );
				$dst_w = isset( $dims[4] ) ? $dims[4] : null;
				$dst_h = isset( $dims[5] ) ? $dims[5] : null;
			} else if ( $crop_only === true ) {
				// we don't want a resize,
				// but only a crop in the image

				// get x position to start croping
				$src_x = ( isset( $crop_x ) ) ? $crop_x : 0;

				// get y position to start croping
				$src_y = ( isset( $crop_y ) ) ? $crop_y : 0;

				// width of the crop
				if ( isset( $crop_width ) ) {
					$src_w = $crop_width;
				} else if ( isset( $width ) ) {
					$src_w = $width;
				} else {
					$src_w = $orig_w;
				}

				// height of the crop
				if ( isset( $crop_height ) ) {
					$src_h = $crop_height;
				} else if ( isset( $height ) ) {
					$src_h = $height;
				} else {
					$src_h = $orig_h;
				}

				// set the width resize with the crop
				if ( isset( $crop_width ) && isset( $width ) ) {
					$dst_w = $width;
				} else {
					$dst_w = null;
				}

				// set the height resize with the crop
				if ( isset( $crop_height ) && isset( $height ) ) {
					$dst_h = $height;
				} else {
					$dst_h = null;
				}

				// allow percentages
				if ( isset( $dst_w ) ) {
					if ( stripos( $dst_w, '%' ) !== false ) {
						$dst_w = (int) ( (float) str_replace( '%', '', $dst_w ) / 100 * $orig_w );
					}
				}
				if ( isset( $dst_h ) ) {
					if ( stripos( $dst_h, '%' ) !== false ) {
						$dst_h = (int) ( (float) str_replace( '%', '', $dst_h ) / 100 * $orig_h );
					}
				}

				$dims = image_resize_dimensions( $src_w, $src_h, $dst_w, $dst_h, false );
				$dst_w = $dims[4];
				$dst_h = $dims[5];

				// Make the pos x and pos y work with percentages
				if ( stripos( $src_x, '%' ) !== false ) {
					$src_x = (int) ( (float) str_replace( '%', '', $width ) / 100 * $orig_w );
				}
				if ( stripos( $src_y, '%' ) !== false ) {
					$src_y = (int) ( (float) str_replace( '%', '', $height ) / 100 * $orig_h );
				}

				// allow center to position crop start
				if ( $src_x === 'center' ) {
					$src_x = ( $orig_w - $src_w ) / 2;
				}
				if ( $src_y === 'center' ) {
					$src_y = ( $orig_h - $src_h ) / 2;
				}
			}

			// create the suffix for the saved file
			// we can use this to check whether we need to create a new file or just use an existing one.
			$suffix = (string) filemtime( $img_path ) . ( isset( $width ) ? str_pad( (string) $width, 5, '0', STR_PAD_LEFT ) : '00000' ) . ( isset( $height ) ? str_pad( (string) $height, 5, '0', STR_PAD_LEFT ) : '00000' ) . ( isset( $opacity ) ? str_pad( (string) $opacity, 3, '0', STR_PAD_LEFT ) : '100' ) . ( isset( $color ) ? str_pad( preg_replace( '#^\##', '', $color ), 8, '0', STR_PAD_LEFT ) : '00000000' ) . ( isset( $grayscale ) ? ( $grayscale ? '1' : '0' ) : '0' ) . ( isset( $crop ) ? ( $crop ? '1' : '0' ) : '0' ) . ( isset( $negate ) ? ( $negate ? '1' : '0' ) : '0' ) . ( isset( $crop_only ) ? ( $crop_only ? '1' : '0' ) : '0' ) . ( isset( $src_x ) ? str_pad( (string) $src_x, 5, '0', STR_PAD_LEFT ) : '00000' ) . ( isset( $src_y ) ? str_pad( (string) $src_y, 5, '0', STR_PAD_LEFT ) : '00000' ) . ( isset( $src_w ) ? str_pad( (string) $src_w, 5, '0', STR_PAD_LEFT ) : '00000' ) . ( isset( $src_h ) ? str_pad( (string) $src_h, 5, '0', STR_PAD_LEFT ) : '00000' ) . ( isset( $dst_w ) ? str_pad( (string) $dst_w, 5, '0', STR_PAD_LEFT ) : '00000' ) . ( isset( $dst_h ) ? str_pad( (string) $dst_h, 5, '0', STR_PAD_LEFT ) : '00000' ) . ( ( isset ( $quality ) && $quality > 0 && $quality <= 100 ) ? ( $quality ? (string) $quality : '0' ) : '0' );
			$suffix = self::base_convert_arbitrary( $suffix, 10, 36 );

			// use this to check if cropped image already exists, so we can return that instead
			$dst_rel_path = str_replace( '.' . $ext, '', basename( $img_path ) );

			// If opacity is set, change the image type to png
			if ( isset( $opacity ) ) {
				$ext = 'png';
			}


			// Create the upload subdirectory, this is where
			// we store all our generated images
			if ( defined( 'BFITHUMB_UPLOAD_DIR' ) ) {
				$upload_dir .= "/" . BFITHUMB_UPLOAD_DIR;
				$upload_url .= "/" . BFITHUMB_UPLOAD_DIR;
			} else {
				$upload_dir .= "/bfi_thumb";
				$upload_url .= "/bfi_thumb";
			}
			if ( ! is_dir( $upload_dir ) ) {
				wp_mkdir_p( $upload_dir );
			}


			// desination paths and urls
			$destfilename = "{$upload_dir}/{$dst_rel_path}-{$suffix}.{$ext}";

			// The urls generated have lower case extensions regardless of the original case
			$ext = strtolower( $ext );
			$img_url = "{$upload_url}/{$dst_rel_path}-{$suffix}.{$ext}";

			// if file exists, just return it
			if ( @file_exists( $destfilename ) && getimagesize( $destfilename ) ) {
			} else {
				// perform resizing and other filters
				$editor = wp_get_image_editor( $img_path );

				if ( is_wp_error( $editor ) ) {
					return false;
				}

				/*
				 * Perform image manipulations
				 */
				if ( $crop_only === false ) {
					if ( ( isset( $width ) && $width ) || ( isset( $height ) && $height ) ) {
						if ( is_wp_error( $editor->resize( isset( $width ) ? $width : null, isset( $height ) ? $height : null, isset( $crop ) ? $crop : false ) ) ) {
							return false;
						}
					}
				} else {
					if ( is_wp_error( $editor->crop( $src_x, $src_y, $src_w, $src_h, $dst_w, $dst_h ) ) ) {
						return false;
					}
				}

				if ( isset( $negate ) ) {
					if ( $negate ) {
						if ( is_wp_error( $editor->negate() ) ) {
							return false;
						}
					}
				}

				if ( isset( $opacity ) ) {
					if ( is_wp_error( $editor->opacity( $opacity ) ) ) {
						return false;
					}
				}

				if ( isset( $grayscale ) ) {
					if ( $grayscale ) {
						if ( is_wp_error( $editor->grayscale() ) ) {
							return false;
						}
					}
				}

				if ( isset( $color ) ) {
					if ( is_wp_error( $editor->colorize( $color ) ) ) {
						return false;
					}
				}

				// set the image quality (1-100) to save this image at
				if ( isset( $quality ) && $quality > 0 && $quality <= 100 && $ext != 'png' ) {
					$editor->set_quality( $quality );
				}

				// save our new image
				$mime_type = isset( $opacity ) ? 'image/png' : null;
				$resized_file = $editor->save( $destfilename, $mime_type );
			}

			//return the output
			if ( $single ) {
				$image = $img_url;
			} else {
				//array return
				$image = array(
					0 => $img_url,
					1 => isset( $dst_w ) ? $dst_w : $orig_w,
					2 => isset( $dst_h ) ? $dst_h : $orig_h,
				);
			}

			return $image;
		}

		/** Shortens a number into a base 36 string
		 *
		 * @param $number   string a string of numbers to convert
		 * @param $fromBase starting base
		 * @param $toBase   base to convert the number to
		 *
		 * @return string base converted characters
		 */
		protected static function base_convert_arbitrary( $number, $fromBase, $toBase ) {
			$digits = '0123456789abcdefghijklmnopqrstuvwxyz';
			$length = strlen( $number );
			$result = '';

			$nibbles = array();
			for ( $i = 0; $i < $length; ++$i ) {
				$nibbles[ $i ] = strpos( $digits, $number[ $i ] );
			}

			do {
				$value = 0;
				$newlen = 0;

				for ( $i = 0; $i < $length; ++$i ) {

					$value = $value * $fromBase + $nibbles[ $i ];

					if ( $value >= $toBase ) {
						$nibbles[ $newlen++ ] = (int) ( $value / $toBase );
						$value %= $toBase;
					} else if ( $newlen > 0 ) {
						$nibbles[ $newlen++ ] = 0;
					}
				}

				$length = $newlen;
				$result = $digits[ $value ] . $result;
			} while ( $newlen != 0 );

			return $result;
		}
	}
}


// don't use the default resizer since we want to allow resizing to larger sizes (than the original one)
// Parts are copied from media.php
// Crop is always applied (just like timthumb)
// Don't use this inside the admin since sometimes images in the media library get resized
if ( ! is_admin() ) {
	add_filter( 'image_resize_dimensions', 'bfi_image_resize_dimensions', 10, 5 );
}

if ( ! function_exists( 'bfi_image_resize_dimensions' ) ) {
	function bfi_image_resize_dimensions( $payload, $orig_w, $orig_h, $dest_w, $dest_h, $crop = false ) {
		$aspect_ratio = $orig_w / $orig_h;

		$new_w = $dest_w;
		$new_h = $dest_h;

		if ( empty( $new_w ) || $new_w < 0 ) {
			$new_w = intval( $new_h * $aspect_ratio );
		}

		if ( empty( $new_h ) || $new_h < 0 ) {
			$new_h = intval( $new_w / $aspect_ratio );
		}

		$size_ratio = max( $new_w / $orig_w, $new_h / $orig_h );

		$crop_w = round( $new_w / $size_ratio );
		$crop_h = round( $new_h / $size_ratio );
		$s_x = floor( ( $orig_w - $crop_w ) / 2 );
		$s_y = floor( ( $orig_h - $crop_h ) / 2 );

		// Safe guard against super large or zero images which might cause 500 errors
		if ( $new_w > 5000 || $new_h > 5000 || $new_w <= 0 || $new_h <= 0 ) {
			return null;
		}

		// the return array matches the parameters to imagecopyresampled()
		// int dst_x, int dst_y, int src_x, int src_y, int dst_w, int dst_h, int src_w, int src_h
		return array( 0, 0, (int) $s_x, (int) $s_y, (int) $new_w, (int) $new_h, (int) $crop_w, (int) $crop_h );
	}
}


// This function allows us to latch on WP image functions such as
// the_post_thumbnail, get_image_tag and wp_get_attachment_image_src
// so that you won't have to use the function bfi_thumb in order to do resizing.
// To make this work, in the WP image functions, when specifying an
// array for the image dimensions, add a 'bfi_thumb' => true to
// the array, then add your normal $params arguments.
//
// e.g. the_post_thumbnail( array( 1024, 400, 'bfi_thumb' => true, 'grayscale' => true ) );
add_filter( 'image_downsize', 'bfi_image_downsize', 1, 3 );

if ( ! function_exists( 'bfi_image_downsize' ) ) {
	function bfi_image_downsize( $out, $id, $size ) {
		if ( ! is_array( $size ) ) {
			return false;
		}
		if ( ! array_key_exists( 'bfi_thumb', $size ) ) {
			return false;
		}
		if ( empty( $size['bfi_thumb'] ) ) {
			return false;
		}

		$img_url = wp_get_attachment_url( $id );

		$params = $size;
		$params['width'] = $size[0];
		$params['height'] = $size[1];

		$resized_img_url = bfi_thumb( $img_url, $params );

		return array( $resized_img_url, $size[0], $size[1], false );
	}
}
includes/libraries/wp-background-process/wp-async-request.php000064400000000463151327220420020506 0ustar00<?php

if ( ! defined( 'ABSPATH' ) ) {
	exit;
}

// TODO: _deprecated_file( __FILE__, '3.0.7', '\Elementor\Core\Base\BackgroundProcess\WP_Async_Request' );

if ( ! class_exists( 'WP_Async_Request' ) ) {
	abstract class WP_Async_Request extends \Elementor\Core\Base\BackgroundProcess\WP_Async_Request {
	}
}
includes/libraries/wp-background-process/wp-background-process.php000064400000000507151327220420021475 0ustar00<?php

if ( ! defined( 'ABSPATH' ) ) {
	exit;
}

// TODO: _deprecated_file( __FILE__, '3.0.7', '\Elementor\Core\Base\BackgroundProcess\WP_Background_Process' );

if ( ! class_exists( 'WP_Background_Process' ) ) {
	abstract class WP_Background_Process extends \Elementor\Core\Base\BackgroundProcess\WP_Background_Process {
	}
}
includes/plugin.php000064400000042046151327220420010365 0ustar00<?php
namespace Elementor;

use Elementor\Core\Wp_Api;
use Elementor\Core\Admin\Admin;
use Elementor\Core\Breakpoints\Manager as Breakpoints_Manager;
use Elementor\Core\Common\Modules\Ajax\Module as Ajax;
use Elementor\Core\Common\App as CommonApp;
use Elementor\Core\Debug\Inspector;
use Elementor\Core\Documents_Manager;
use Elementor\Core\Experiments\Manager as Experiments_Manager;
use Elementor\Core\Kits\Manager as Kits_Manager;
use Elementor\Core\Editor\Editor;
use Elementor\Core\Files\Manager as Files_Manager;
use Elementor\Core\Files\Assets\Manager as Assets_Manager;
use Elementor\Core\Modules_Manager;
use Elementor\Core\Schemes\Manager as Schemes_Manager;
use Elementor\Core\Settings\Manager as Settings_Manager;
use Elementor\Core\Settings\Page\Manager as Page_Settings_Manager;
use Elementor\Core\Upgrade\Elementor_3_Re_Migrate_Globals;
use Elementor\Modules\History\Revisions_Manager;
use Elementor\Core\DynamicTags\Manager as Dynamic_Tags_Manager;
use Elementor\Core\Logger\Manager as Log_Manager;
use Elementor\Core\Page_Assets\Loader as Assets_Loader;
use Elementor\Modules\System_Info\Module as System_Info_Module;
use Elementor\Data\Manager as Data_Manager;
use Elementor\Core\Common\Modules\DevTools\Module as Dev_Tools;
use Elementor\Core\Files\Uploads_Manager as Uploads_Manager;

if ( ! defined( 'ABSPATH' ) ) {
	exit;
}

/**
 * Elementor plugin.
 *
 * The main plugin handler class is responsible for initializing Elementor. The
 * class registers and all the components required to run the plugin.
 *
 * @since 1.0.0
 */
class Plugin {
	const ELEMENTOR_DEFAULT_POST_TYPES = [ 'page', 'post' ];

	/**
	 * Instance.
	 *
	 * Holds the plugin instance.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @var Plugin
	 */
	public static $instance = null;

	/**
	 * Database.
	 *
	 * Holds the plugin database handler which is responsible for communicating
	 * with the database.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @var DB
	 */
	public $db;

	/**
	 * Ajax Manager.
	 *
	 * Holds the plugin ajax handlers which are responsible for ajax requests
	 * and responses.
	 *
	 * @since 1.9.0
	 * @deprecated 2.3.0 Use `Plugin::$instance->common->get_component( 'ajax' )` instead.
	 * @access public
	 *
	 * @var Ajax
	 */
	public $ajax;

	/**
	 * Controls manager.
	 *
	 * Holds the plugin controls manager handler is responsible for registering
	 * and initializing controls.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @var Controls_Manager
	 */
	public $controls_manager;

	/**
	 * Documents manager.
	 *
	 * Holds the documents manager.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @var Documents_Manager
	 */
	public $documents;

	/**
	 * Schemes manager.
	 *
	 * Holds the plugin schemes manager.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @var Schemes_Manager
	 */
	public $schemes_manager;

	/**
	 * Elements manager.
	 *
	 * Holds the plugin elements manager.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @var Elements_Manager
	 */
	public $elements_manager;

	/**
	 * Widgets manager.
	 *
	 * Holds the plugin widgets manager which is responsible for registering and
	 * initializing widgets.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @var Widgets_Manager
	 */
	public $widgets_manager;

	/**
	 * Revisions manager.
	 *
	 * Holds the plugin revisions manager which handles history and revisions
	 * functionality.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @var Revisions_Manager
	 */
	public $revisions_manager;

	/**
	 * Images manager.
	 *
	 * Holds the plugin images manager which is responsible for retrieving image
	 * details.
	 *
	 * @since 2.9.0
	 * @access public
	 *
	 * @var Images_Manager
	 */
	public $images_manager;

	/**
	 * Maintenance mode.
	 *
	 * Holds the maintenance mode manager responsible for the "Maintenance Mode"
	 * and the "Coming Soon" features.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @var Maintenance_Mode
	 */
	public $maintenance_mode;

	/**
	 * Page settings manager.
	 *
	 * Holds the page settings manager.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @var Page_Settings_Manager
	 */
	public $page_settings_manager;

	/**
	 * Dynamic tags manager.
	 *
	 * Holds the dynamic tags manager.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @var Dynamic_Tags_Manager
	 */
	public $dynamic_tags;

	/**
	 * Settings.
	 *
	 * Holds the plugin settings.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @var Settings
	 */
	public $settings;

	/**
	 * Role Manager.
	 *
	 * Holds the plugin role manager.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @var Core\RoleManager\Role_Manager
	 */
	public $role_manager;

	/**
	 * Admin.
	 *
	 * Holds the plugin admin.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @var Admin
	 */
	public $admin;

	/**
	 * Tools.
	 *
	 * Holds the plugin tools.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @var Tools
	 */
	public $tools;

	/**
	 * Preview.
	 *
	 * Holds the plugin preview.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @var Preview
	 */
	public $preview;

	/**
	 * Editor.
	 *
	 * Holds the plugin editor.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @var Editor
	 */
	public $editor;

	/**
	 * Frontend.
	 *
	 * Holds the plugin frontend.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @var Frontend
	 */
	public $frontend;

	/**
	 * Heartbeat.
	 *
	 * Holds the plugin heartbeat.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @var Heartbeat
	 */
	public $heartbeat;

	/**
	 * System info.
	 *
	 * Holds the system info data.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @var System_Info_Module
	 */
	public $system_info;

	/**
	 * Template library manager.
	 *
	 * Holds the template library manager.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @var TemplateLibrary\Manager
	 */
	public $templates_manager;

	/**
	 * Skins manager.
	 *
	 * Holds the skins manager.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @var Skins_Manager
	 */
	public $skins_manager;

	/**
	 * Files manager.
	 *
	 * Holds the plugin files manager.
	 *
	 * @since 2.1.0
	 * @access public
	 *
	 * @var Files_Manager
	 */
	public $files_manager;

	/**
	 * Assets manager.
	 *
	 * Holds the plugin assets manager.
	 *
	 * @since 2.6.0
	 * @access public
	 *
	 * @var Assets_Manager
	 */
	public $assets_manager;

	/**
	 * Icons Manager.
	 *
	 * Holds the plugin icons manager.
	 *
	 * @access public
	 *
	 * @var Icons_Manager
	 */
	public $icons_manager;

	/**
	 * Files Manager.
	 *
	 * Holds the plugin files manager.
	 *
	 * @since 1.0.0
	 * @deprecated 2.1.0 Use `Plugin::$files_manager` instead.
	 * @access public
	 *
	 * @var Files_Manager
	 */
	private $posts_css_manager;

	/**
	 * WordPress widgets manager.
	 *
	 * Holds the WordPress widgets manager.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @var WordPress_Widgets_Manager
	 */
	public $wordpress_widgets_manager;

	/**
	 * Modules manager.
	 *
	 * Holds the plugin modules manager.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @var Modules_Manager
	 */
	public $modules_manager;

	/**
	 * Beta testers.
	 *
	 * Holds the plugin beta testers.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @var Beta_Testers
	 */
	public $beta_testers;

	/**
	 * Debugger.
	 *
	 * Holds the plugin debugger data.
	 *
	 * @deprecated 2.1.2 Use `Plugin::$inspector` instead.
	 * @access public
	 *
	 * @var Inspector
	 */
	public $debugger;

	/**
	 * Inspector.
	 *
	 * Holds the plugin inspector data.
	 *
	 * @since 2.1.2
	 * @access public
	 *
	 * @var Inspector
	 */
	public $inspector;

	/**
	 * Common functionality.
	 *
	 * Holds the plugin common functionality.
	 *
	 * @since 2.3.0
	 * @access public
	 *
	 * @var CommonApp
	 */
	public $common;

	/**
	 * Log manager.
	 *
	 * Holds the plugin log manager.
	 *
	 * @access public
	 *
	 * @var Log_Manager
	 */
	public $logger;

	/**
	 * Dev tools.
	 *
	 * Holds the plugin dev tools.
	 *
	 * @access private
	 *
	 * @var Dev_Tools
	 */
	private $dev_tools;

	/**
	 * Upgrade manager.
	 *
	 * Holds the plugin upgrade manager.
	 *
	 * @access public
	 *
	 * @var Core\Upgrade\Manager
	 */
	public $upgrade;

	/**
	 * Kits manager.
	 *
	 * Holds the plugin kits manager.
	 *
	 * @access public
	 *
	 * @var Core\Kits\Manager
	 */
	public $kits_manager;

	/**
	 * Data manager.
	 *
	 * Holds the plugin data manager.
	 *
	 * @access public
	 *
	 * @var \Core\Data\Manager
	 */
	public $data_manager;

	/**
	 * Legacy mode.
	 *
	 * Holds the plugin legacy mode data.
	 *
	 * @access public
	 *
	 * @var array
	 */
	public $legacy_mode;

	/**
	 * App.
	 *
	 * Holds the plugin app data.
	 *
	 * @since 3.0.0
	 * @access public
	 *
	 * @var Core\App\App
	 */
	public $app;

	/**
	 * WordPress API.
	 *
	 * Holds the methods that interact with WordPress Core API.
	 *
	 * @since 3.0.0
	 * @access public
	 *
	 * @var Wp_Api
	 */
	public $wp;

	/**
	 * Experiments manager.
	 *
	 * Holds the plugin experiments manager.
	 *
	 * @since 3.1.0
	 * @access public
	 *
	 * @var Experiments_Manager
	 */
	public $experiments;

	/**
	 * Uploads manager.
	 *
	 * Holds the plugin uploads manager responsible for handling file uploads
	 * that are not done with WordPress Media.
	 *
	 * @since 3.3.0
	 * @access public
	 *
	 * @var Uploads_Manager
	 */
	public $uploads_manager;

	/**
	 * Breakpoints manager.
	 *
	 * Holds the plugin breakpoints manager.
	 *
	 * @since 3.2.0
	 * @access public
	 *
	 * @var Breakpoints_Manager
	 */
	public $breakpoints;

	/**
	 * Assets loader.
	 *
	 * Holds the plugin assets loader responsible for conditionally enqueuing
	 * styles and script assets that were pre-enabled.
	 *
	 * @since 3.3.0
	 * @access public
	 *
	 * @var Assets_Loader
	 */
	public $assets_loader;

	/**
	 * Clone.
	 *
	 * Disable class cloning and throw an error on object clone.
	 *
	 * The whole idea of the singleton design pattern is that there is a single
	 * object. Therefore, we don't want the object to be cloned.
	 *
	 * @access public
	 * @since 1.0.0
	 */
	public function __clone() {
		// Cloning instances of the class is forbidden.
		_doing_it_wrong( __FUNCTION__, esc_html__( 'Something went wrong.', 'elementor' ), '1.0.0' );
	}

	/**
	 * Wakeup.
	 *
	 * Disable unserializing of the class.
	 *
	 * @access public
	 * @since 1.0.0
	 */
	public function __wakeup() {
		// Unserializing instances of the class is forbidden.
		_doing_it_wrong( __FUNCTION__, esc_html__( 'Something went wrong.', 'elementor' ), '1.0.0' );
	}

	/**
	 * Instance.
	 *
	 * Ensures only one instance of the plugin class is loaded or can be loaded.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @return Plugin An instance of the class.
	 */
	public static function instance() {
		if ( is_null( self::$instance ) ) {
			self::$instance = new self();

			/**
			 * Elementor loaded.
			 *
			 * Fires when Elementor was fully loaded and instantiated.
			 *
			 * @since 1.0.0
			 */
			do_action( 'elementor/loaded' );
		}

		return self::$instance;
	}

	/**
	 * Init.
	 *
	 * Initialize Elementor Plugin. Register Elementor support for all the
	 * supported post types and initialize Elementor components.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function init() {
		$this->add_cpt_support();

		$this->init_components();

		/**
		 * Elementor init.
		 *
		 * Fires when Elementor components are initialized.
		 *
		 * After Elementor finished loading but before any headers are sent.
		 *
		 * @since 1.0.0
		 */
		do_action( 'elementor/init' );
	}

	/**
	 * Get install time.
	 *
	 * Retrieve the time when Elementor was installed.
	 *
	 * @since 2.6.0
	 * @access public
	 * @static
	 *
	 * @return int Unix timestamp when Elementor was installed.
	 */
	public function get_install_time() {
		$installed_time = get_option( '_elementor_installed_time' );

		if ( ! $installed_time ) {
			$installed_time = time();

			update_option( '_elementor_installed_time', $installed_time );
		}

		return $installed_time;
	}

	/**
	 * @since 2.3.0
	 * @access public
	 */
	public function on_rest_api_init() {
		// On admin/frontend sometimes the rest API is initialized after the common is initialized.
		if ( ! $this->common ) {
			$this->init_common();
		}
	}

	/**
	 * Init components.
	 *
	 * Initialize Elementor components. Register actions, run setting manager,
	 * initialize all the components that run elementor, and if in admin page
	 * initialize admin components.
	 *
	 * @since 1.0.0
	 * @access private
	 */
	private function init_components() {
		$this->experiments = new Experiments_Manager();
		$this->breakpoints = new Breakpoints_Manager();
		$this->inspector = new Inspector();
		$this->debugger = $this->inspector;

		Settings_Manager::run();

		$this->db = new DB();
		$this->controls_manager = new Controls_Manager();
		$this->documents = new Documents_Manager();
		$this->kits_manager = new Kits_Manager();
		$this->schemes_manager = new Schemes_Manager();
		$this->elements_manager = new Elements_Manager();
		$this->widgets_manager = new Widgets_Manager();
		$this->skins_manager = new Skins_Manager();
		$this->files_manager = new Files_Manager();
		$this->assets_manager = new Assets_Manager();
		$this->icons_manager = new Icons_Manager();
		$this->settings = new Settings();
		$this->tools = new Tools();
		$this->editor = new Editor();
		$this->preview = new Preview();
		$this->frontend = new Frontend();
		$this->maintenance_mode = new Maintenance_Mode();
		$this->dynamic_tags = new Dynamic_Tags_Manager();
		$this->modules_manager = new Modules_Manager();
		$this->templates_manager = new TemplateLibrary\Manager();
		$this->role_manager = new Core\RoleManager\Role_Manager();
		$this->system_info = new System_Info_Module();
		$this->revisions_manager = new Revisions_Manager();
		$this->images_manager = new Images_Manager();
		$this->wp = new Wp_Api();
		$this->assets_loader = new Assets_Loader();
		$this->uploads_manager = new Uploads_Manager();

		User::init();
		Api::init();
		Tracker::init();

		$this->upgrade = new Core\Upgrade\Manager();

		$this->app = new Core\App\App();

		if ( is_admin() ) {
			$this->heartbeat = new Heartbeat();
			$this->wordpress_widgets_manager = new WordPress_Widgets_Manager();
			$this->admin = new Admin();
			$this->beta_testers = new Beta_Testers();
			new Elementor_3_Re_Migrate_Globals();
		}
	}

	/**
	 * @since 2.3.0
	 * @access public
	 */
	public function init_common() {
		$this->common = new CommonApp();

		$this->common->init_components();

		$this->ajax = $this->common->get_component( 'ajax' );
	}

	/**
	 * Get Legacy Mode
	 *
	 * @since 3.0.0
	 * @deprecated 3.1.0 Use `Plugin::$instance->experiments->is_feature_active()` instead
	 *
	 * @param string $mode_name Optional. Default is null
	 *
	 * @return bool|bool[]
	 */
	public function get_legacy_mode( $mode_name = null ) {
		self::$instance->modules_manager->get_modules( 'dev-tools' )->deprecation
			->deprecated_function( __METHOD__, '3.1.0', 'Plugin::$instance->experiments->is_feature_active()' );

		$legacy_mode = [
			'elementWrappers' => ! self::$instance->experiments->is_feature_active( 'e_dom_optimization' ),
		];

		if ( ! $mode_name ) {
			return $legacy_mode;
		}

		if ( isset( $legacy_mode[ $mode_name ] ) ) {
			return $legacy_mode[ $mode_name ];
		}

		// If there is no legacy mode with the given mode name;
		return false;
	}

	/**
	 * Add custom post type support.
	 *
	 * Register Elementor support for all the supported post types defined by
	 * the user in the admin screen and saved as `elementor_cpt_support` option
	 * in WordPress `$wpdb->options` table.
	 *
	 * If no custom post type selected, usually in new installs, this method
	 * will return the two default post types: `page` and `post`.
	 *
	 * @since 1.0.0
	 * @access private
	 */
	private function add_cpt_support() {
		$cpt_support = get_option( 'elementor_cpt_support', self::ELEMENTOR_DEFAULT_POST_TYPES );

		foreach ( $cpt_support as $cpt_slug ) {
			add_post_type_support( $cpt_slug, 'elementor' );
		}
	}

	/**
	 * Register autoloader.
	 *
	 * Elementor autoloader loads all the classes needed to run the plugin.
	 *
	 * @since 1.6.0
	 * @access private
	 */
	private function register_autoloader() {
		require_once ELEMENTOR_PATH . '/includes/autoloader.php';

		Autoloader::run();
	}

	/**
	 * Plugin Magic Getter
	 *
	 * @since 3.1.0
	 * @access public
	 *
	 * @param $property
	 * @return mixed
	 * @throws \Exception
	 */
	public function __get( $property ) {
		if ( 'posts_css_manager' === $property ) {
			self::$instance->modules_manager->get_modules( 'dev-tools' )->deprecation->deprecated_argument( 'Plugin::$instance->posts_css_manager', '2.7.0', 'Plugin::$instance->files_manager' );

			return $this->files_manager;
		}

		if ( property_exists( $this, $property ) ) {
			throw new \Exception( 'Cannot access private property' );
		}

		return null;
	}

	/**
	 * Plugin constructor.
	 *
	 * Initializing Elementor plugin.
	 *
	 * @since 1.0.0
	 * @access private
	 */
	private function __construct() {
		$this->register_autoloader();

		$this->logger = Log_Manager::instance();
		$this->data_manager = Data_Manager::instance();

		Maintenance::init();
		Compatibility::register_actions();

		add_action( 'init', [ $this, 'init' ], 0 );
		add_action( 'rest_api_init', [ $this, 'on_rest_api_init' ] );
	}

	final public static function get_title() {
		return esc_html__( 'Elementor', 'elementor' );
	}
}

if ( ! defined( 'ELEMENTOR_TESTS' ) ) {
	// In tests we run the instance manually.
	Plugin::instance();
}
includes/template-library/manager.php000064400000035725151327220420013764 0ustar00<?php
namespace Elementor\TemplateLibrary;

use Elementor\Api;
use Elementor\Core\Common\Modules\Ajax\Module as Ajax;
use Elementor\Core\Settings\Manager as SettingsManager;
use Elementor\TemplateLibrary\Classes\Import_Images;
use Elementor\Plugin;
use Elementor\User;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor template library manager.
 *
 * Elementor template library manager handler class is responsible for
 * initializing the template library.
 *
 * @since 1.0.0
 */
class Manager {

	/**
	 * Registered template sources.
	 *
	 * Holds a list of all the supported sources with their instances.
	 *
	 * @access protected
	 *
	 * @var Source_Base[]
	 */
	protected $_registered_sources = [];

	/**
	 * Imported template images.
	 *
	 * Holds an instance of `Import_Images` class.
	 *
	 * @access private
	 *
	 * @var Import_Images
	 */
	private $_import_images = null;

	/**
	 * Template library manager constructor.
	 *
	 * Initializing the template library manager by registering default template
	 * sources and initializing ajax calls.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function __construct() {
		$this->register_default_sources();

		$this->add_actions();
	}

	/**
	 * @since 2.3.0
	 * @access public
	 */
	public function add_actions() {
		add_action( 'elementor/ajax/register_actions', [ $this, 'register_ajax_actions' ] );
		add_action( 'wp_ajax_elementor_library_direct_actions', [ $this, 'handle_direct_actions' ] );
	}

	/**
	 * Get `Import_Images` instance.
	 *
	 * Retrieve the instance of the `Import_Images` class.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return Import_Images Imported images instance.
	 */
	public function get_import_images_instance() {
		if ( null === $this->_import_images ) {
			$this->_import_images = new Import_Images();
		}

		return $this->_import_images;
	}

	/**
	 * Register template source.
	 *
	 * Used to register new template sources displayed in the template library.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param string $source_class The name of source class.
	 * @param array  $args         Optional. Class arguments. Default is an
	 *                             empty array.
	 *
	 * @return \WP_Error|true True if the source was registered, `WP_Error`
	 *                        otherwise.
	 */
	public function register_source( $source_class, $args = [] ) {
		if ( ! class_exists( $source_class ) ) {
			return new \WP_Error( 'source_class_name_not_exists' );
		}

		$source_instance = new $source_class( $args );

		if ( ! $source_instance instanceof Source_Base ) {
			return new \WP_Error( 'wrong_instance_source' );
		}

		$source_id = $source_instance->get_id();

		if ( isset( $this->_registered_sources[ $source_id ] ) ) {
			return new \WP_Error( 'source_exists' );
		}

		$this->_registered_sources[ $source_id ] = $source_instance;

		return true;
	}

	/**
	 * Unregister template source.
	 *
	 * Remove an existing template sources from the list of registered template
	 * sources.
	 *
	 * @deprecated 2.7.0
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param string $id The source ID.
	 *
	 * @return bool Whether the source was unregistered.
	 */
	public function unregister_source( $id ) {
		return true;
	}

	/**
	 * Get registered template sources.
	 *
	 * Retrieve registered template sources.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return Source_Base[] Registered template sources.
	 */
	public function get_registered_sources() {
		return $this->_registered_sources;
	}

	/**
	 * Get template source.
	 *
	 * Retrieve single template sources for a given template ID.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param string $id The source ID.
	 *
	 * @return false|Source_Base Template sources if one exist, False otherwise.
	 */
	public function get_source( $id ) {
		$sources = $this->get_registered_sources();

		if ( ! isset( $sources[ $id ] ) ) {
			return false;
		}

		return $sources[ $id ];
	}

	/**
	 * Get templates.
	 *
	 * Retrieve all the templates from all the registered sources.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array Templates array.
	 */
	public function get_templates() {
		$templates = [];

		foreach ( $this->get_registered_sources() as $source ) {
			$templates = array_merge( $templates, $source->get_items() );
		}

		return $templates;
	}

	/**
	 * Get library data.
	 *
	 * Retrieve the library data.
	 *
	 * @since 1.9.0
	 * @access public
	 *
	 * @param array $args Library arguments.
	 *
	 * @return array Library data.
	 */
	public function get_library_data( array $args ) {
		$library_data = Api::get_library_data( ! empty( $args['sync'] ) );

		// Ensure all document are registered.
		Plugin::$instance->documents->get_document_types();

		return [
			'templates' => $this->get_templates(),
			'config' => $library_data['types_data'],
		];
	}

	/**
	 * Save template.
	 *
	 * Save new or update existing template on the database.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param array $args Template arguments.
	 *
	 * @return \WP_Error|int The ID of the saved/updated template.
	 */
	public function save_template( array $args ) {
		$validate_args = $this->ensure_args( [ 'post_id', 'source', 'content', 'type' ], $args );

		if ( is_wp_error( $validate_args ) ) {
			return $validate_args;
		}

		$source = $this->get_source( $args['source'] );

		if ( ! $source ) {
			return new \WP_Error( 'template_error', 'Template source not found.' );
		}

		$args['content'] = json_decode( $args['content'], true );

		$page = SettingsManager::get_settings_managers( 'page' )->get_model( $args['post_id'] );

		$args['page_settings'] = $page->get_data( 'settings' );

		$template_id = $source->save_item( $args );

		if ( is_wp_error( $template_id ) ) {
			return $template_id;
		}

		return $source->get_item( $template_id );
	}

	/**
	 * Update template.
	 *
	 * Update template on the database.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param array $template_data New template data.
	 *
	 * @return \WP_Error|Source_Base Template sources instance if the templates
	 *                               was updated, `WP_Error` otherwise.
	 */
	public function update_template( array $template_data ) {
		$validate_args = $this->ensure_args( [ 'source', 'content', 'type' ], $template_data );

		if ( is_wp_error( $validate_args ) ) {
			return $validate_args;
		}

		$source = $this->get_source( $template_data['source'] );

		if ( ! $source ) {
			return new \WP_Error( 'template_error', 'Template source not found.' );
		}

		$template_data['content'] = json_decode( $template_data['content'], true );

		$update = $source->update_item( $template_data );

		if ( is_wp_error( $update ) ) {
			return $update;
		}

		return $source->get_item( $template_data['id'] );
	}

	/**
	 * Update templates.
	 *
	 * Update template on the database.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param array $args Template arguments.
	 *
	 * @return \WP_Error|true True if templates updated, `WP_Error` otherwise.
	 */
	public function update_templates( array $args ) {
		foreach ( $args['templates'] as $template_data ) {
			$result = $this->update_template( $template_data );

			if ( is_wp_error( $result ) ) {
				return $result;
			}
		}

		return true;
	}

	/**
	 * Get template data.
	 *
	 * Retrieve the template data.
	 *
	 * @since 1.5.0
	 * @access public
	 *
	 * @param array $args Template arguments.
	 *
	 * @return \WP_Error|bool|array ??
	 */
	public function get_template_data( array $args ) {
		$validate_args = $this->ensure_args( [ 'source', 'template_id' ], $args );

		if ( is_wp_error( $validate_args ) ) {
			return $validate_args;
		}

		if ( isset( $args['edit_mode'] ) ) {
			Plugin::$instance->editor->set_edit_mode( $args['edit_mode'] );
		}

		$source = $this->get_source( $args['source'] );

		if ( ! $source ) {
			return new \WP_Error( 'template_error', 'Template source not found.' );
		}

		do_action( 'elementor/template-library/before_get_source_data', $args, $source );

		$data = $source->get_data( $args );

		do_action( 'elementor/template-library/after_get_source_data', $args, $source );

		return $data;
	}

	/**
	 * Delete template.
	 *
	 * Delete template from the database.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param array $args Template arguments.
	 *
	 * @return \WP_Post|\WP_Error|false|null Post data on success, false or null
	 *                                       or 'WP_Error' on failure.
	 */
	public function delete_template( array $args ) {
		$validate_args = $this->ensure_args( [ 'source', 'template_id' ], $args );

		if ( is_wp_error( $validate_args ) ) {
			return $validate_args;
		}

		$source = $this->get_source( $args['source'] );

		if ( ! $source ) {
			return new \WP_Error( 'template_error', 'Template source not found.' );
		}

		return $source->delete_template( $args['template_id'] );
	}

	/**
	 * Export template.
	 *
	 * Export template to a file.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param array $args Template arguments.
	 *
	 * @return mixed Whether the export succeeded or failed.
	 */
	public function export_template( array $args ) {
		$validate_args = $this->ensure_args( [ 'source', 'template_id' ], $args );

		if ( is_wp_error( $validate_args ) ) {
			return $validate_args;
		}

		$source = $this->get_source( $args['source'] );

		if ( ! $source ) {
			return new \WP_Error( 'template_error', 'Template source not found' );
		}

		return $source->export_template( $args['template_id'] );
	}

	/**
	 * @since 2.3.0
	 * @access public
	 */
	public function direct_import_template() {
		/** @var Source_Local $source */
		$source = $this->get_source( 'local' );

		return $source->import_template( $_FILES['file']['name'], $_FILES['file']['tmp_name'] );
	}

	/**
	 * Import template.
	 *
	 * Import template from a file.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param array $data
	 *
	 * @return mixed Whether the export succeeded or failed.
	 */
	public function import_template( array $data ) {
		// Imported templates can be either JSON files, or Zip files containing multiple JSON files
		$upload_result = Plugin::$instance->uploads_manager->handle_elementor_upload( $data, [ 'zip', 'json' ] );

		if ( is_wp_error( $upload_result ) ) {
			return $upload_result;
		}

		/** @var Source_Local $source_local */
		$source_local = $this->get_source( 'local' );

		return $source_local->import_template( $upload_result['name'], $upload_result['tmp_name'] );
	}

	/**
	 * Mark template as favorite.
	 *
	 * Add the template to the user favorite templates.
	 *
	 * @since 1.9.0
	 * @access public
	 *
	 * @param array $args Template arguments.
	 *
	 * @return mixed Whether the template marked as favorite.
	 */
	public function mark_template_as_favorite( $args ) {
		$validate_args = $this->ensure_args( [ 'source', 'template_id', 'favorite' ], $args );

		if ( is_wp_error( $validate_args ) ) {
			return $validate_args;
		}

		$source = $this->get_source( $args['source'] );

		return $source->mark_as_favorite( $args['template_id'], filter_var( $args['favorite'], FILTER_VALIDATE_BOOLEAN ) );
	}

	/**
	 * Register default template sources.
	 *
	 * Register the 'local' and 'remote' template sources that Elementor use by
	 * default.
	 *
	 * @since 1.0.0
	 * @access private
	 */
	private function register_default_sources() {
		$sources = [
			'local',
			'remote',
		];

		foreach ( $sources as $source_filename ) {
			$class_name = ucwords( $source_filename );
			$class_name = str_replace( '-', '_', $class_name );

			$this->register_source( __NAMESPACE__ . '\Source_' . $class_name );
		}
	}

	/**
	 * Handle ajax request.
	 *
	 * Fire authenticated ajax actions for any given ajax request.
	 *
	 * @since 1.0.0
	 * @access private
	 *
	 * @param string $ajax_request Ajax request.
	 *
	 * @param array $data
	 *
	 * @return mixed
	 * @throws \Exception
	 */
	private function handle_ajax_request( $ajax_request, array $data ) {
		if ( ! User::is_current_user_can_edit_post_type( Source_Local::CPT ) ) {
			throw new \Exception( 'Access Denied' );
		}

		if ( ! empty( $data['editor_post_id'] ) ) {
			$editor_post_id = absint( $data['editor_post_id'] );

			if ( ! get_post( $editor_post_id ) ) {
				throw new \Exception( esc_html__( 'Post not found.', 'elementor' ) );
			}

			Plugin::$instance->db->switch_to_post( $editor_post_id );
		}

		$result = call_user_func( [ $this, $ajax_request ], $data );

		if ( is_wp_error( $result ) ) {
			throw new \Exception( $result->get_error_message() );
		}

		return $result;
	}

	/**
	 * Init ajax calls.
	 *
	 * Initialize template library ajax calls for allowed ajax requests.
	 *
	 * @since 2.3.0
	 * @access public
	 *
	 * @param Ajax $ajax
	 */
	public function register_ajax_actions( Ajax $ajax ) {
		$library_ajax_requests = [
			'get_library_data',
			'get_template_data',
			'save_template',
			'update_templates',
			'delete_template',
			'import_template',
			'mark_template_as_favorite',
		];

		foreach ( $library_ajax_requests as $ajax_request ) {
			$ajax->register_ajax_action( $ajax_request, function( $data ) use ( $ajax_request ) {
				return $this->handle_ajax_request( $ajax_request, $data );
			} );
		}
	}

	/**
	 * @since 2.3.0
	 * @access public
	 */
	public function handle_direct_actions() {
		if ( ! User::is_current_user_can_edit_post_type( Source_Local::CPT ) ) {
			return;
		}

		/** @var Ajax $ajax */
		$ajax = Plugin::$instance->common->get_component( 'ajax' );

		if ( ! $ajax->verify_request_nonce() ) {
			$this->handle_direct_action_error( 'Access Denied' );
		}

		$action = $_REQUEST['library_action'];

		$result = $this->$action( $_REQUEST );

		if ( is_wp_error( $result ) ) {
			/** @var \WP_Error $result */
			$this->handle_direct_action_error( $result->get_error_message() . '.' );
		}

		$callback = "on_{$action}_success";

		if ( method_exists( $this, $callback ) ) {
			$this->$callback( $result );
		}

		die;
	}

	/**
	 * On successful template import.
	 *
	 * Redirect the user to the template library after template import was
	 * successful finished.
	 *
	 * @since 2.3.0
	 * @access private
	 */
	private function on_direct_import_template_success() {
		wp_safe_redirect( admin_url( Source_Local::ADMIN_MENU_SLUG ) );
	}

	/**
	 * @since 2.3.0
	 * @access private
	 */
	private function handle_direct_action_error( $message ) {
		_default_wp_die_handler( $message, 'Elementor Library' );
	}

	/**
	 * Ensure arguments exist.
	 *
	 * Checks whether the required arguments exist in the specified arguments.
	 *
	 * @since 1.0.0
	 * @access private
	 *
	 * @param array $required_args  Required arguments to check whether they
	 *                              exist.
	 * @param array $specified_args The list of all the specified arguments to
	 *                              check against.
	 *
	 * @return \WP_Error|true True on success, 'WP_Error' otherwise.
	 */
	private function ensure_args( array $required_args, array $specified_args ) {
		$not_specified_args = array_diff( $required_args, array_keys( array_filter( $specified_args ) ) );

		if ( $not_specified_args ) {
			return new \WP_Error( 'arguments_not_specified', sprintf( 'The required argument(s) "%s" not specified.', implode( ', ', $not_specified_args ) ) );
		}

		return true;
	}
}
includes/template-library/sources/remote.php000064400000013040151327220420015312 0ustar00<?php
namespace Elementor\TemplateLibrary;

use Elementor\Api;
use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor template library remote source.
 *
 * Elementor template library remote source handler class is responsible for
 * handling remote templates from Elementor.com servers.
 *
 * @since 1.0.0
 */
class Source_Remote extends Source_Base {

	/**
	 * Get remote template ID.
	 *
	 * Retrieve the remote template ID.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string The remote template ID.
	 */
	public function get_id() {
		return 'remote';
	}

	/**
	 * Get remote template title.
	 *
	 * Retrieve the remote template title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string The remote template title.
	 */
	public function get_title() {
		return esc_html__( 'Remote', 'elementor' );
	}

	/**
	 * Register remote template data.
	 *
	 * Used to register custom template data like a post type, a taxonomy or any
	 * other data.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function register_data() {}

	/**
	 * Get remote templates.
	 *
	 * Retrieve remote templates from Elementor.com servers.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param array $args Optional. Nou used in remote source.
	 *
	 * @return array Remote templates.
	 */
	public function get_items( $args = [] ) {
		$library_data = Api::get_library_data();

		$templates = [];

		if ( ! empty( $library_data['templates'] ) ) {
			foreach ( $library_data['templates'] as $template_data ) {
				$templates[] = $this->prepare_template( $template_data );
			}
		}

		return $templates;
	}

	/**
	 * Get remote template.
	 *
	 * Retrieve a single remote template from Elementor.com servers.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param int $template_id The template ID.
	 *
	 * @return array Remote template.
	 */
	public function get_item( $template_id ) {
		$templates = $this->get_items();

		return $templates[ $template_id ];
	}

	/**
	 * Save remote template.
	 *
	 * Remote template from Elementor.com servers cannot be saved on the
	 * database as they are retrieved from remote servers.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param array $template_data Remote template data.
	 *
	 * @return \WP_Error
	 */
	public function save_item( $template_data ) {
		return new \WP_Error( 'invalid_request', 'Cannot save template to a remote source' );
	}

	/**
	 * Update remote template.
	 *
	 * Remote template from Elementor.com servers cannot be updated on the
	 * database as they are retrieved from remote servers.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param array $new_data New template data.
	 *
	 * @return \WP_Error
	 */
	public function update_item( $new_data ) {
		return new \WP_Error( 'invalid_request', 'Cannot update template to a remote source' );
	}

	/**
	 * Delete remote template.
	 *
	 * Remote template from Elementor.com servers cannot be deleted from the
	 * database as they are retrieved from remote servers.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param int $template_id The template ID.
	 *
	 * @return \WP_Error
	 */
	public function delete_template( $template_id ) {
		return new \WP_Error( 'invalid_request', 'Cannot delete template from a remote source' );
	}

	/**
	 * Export remote template.
	 *
	 * Remote template from Elementor.com servers cannot be exported from the
	 * database as they are retrieved from remote servers.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param int $template_id The template ID.
	 *
	 * @return \WP_Error
	 */
	public function export_template( $template_id ) {
		return new \WP_Error( 'invalid_request', 'Cannot export template from a remote source' );
	}

	/**
	 * Get remote template data.
	 *
	 * Retrieve the data of a single remote template from Elementor.com servers.
	 *
	 * @since 1.5.0
	 * @access public
	 *
	 * @param array  $args    Custom template arguments.
	 * @param string $context Optional. The context. Default is `display`.
	 *
	 * @return array|\WP_Error Remote Template data.
	 */
	public function get_data( array $args, $context = 'display' ) {
		$data = Api::get_template_content( $args['template_id'] );

		if ( is_wp_error( $data ) ) {
			return $data;
		}

		// BC.
		$data = (array) $data;

		$data['content'] = $this->replace_elements_ids( $data['content'] );
		$data['content'] = $this->process_export_import_content( $data['content'], 'on_import' );

		$post_id = $args['editor_post_id'];
		$document = Plugin::$instance->documents->get( $post_id );
		if ( $document ) {
			$data['content'] = $document->get_elements_raw_data( $data['content'], true );
		}

		return $data;
	}

	/**
	 * @since 2.2.0
	 * @access private
	 */
	private function prepare_template( array $template_data ) {
		$favorite_templates = $this->get_user_meta( 'favorites' );

		return [
			'template_id' => $template_data['id'],
			'source' => $this->get_id(),
			'type' => $template_data['type'],
			'subtype' => $template_data['subtype'],
			'title' => $template_data['title'],
			'thumbnail' => $template_data['thumbnail'],
			'date' => $template_data['tmpl_created'],
			'author' => $template_data['author'],
			'tags' => json_decode( $template_data['tags'] ),
			'isPro' => ( '1' === $template_data['is_pro'] ),
			'accessLevel' => $template_data['access_level'],
			'popularityIndex' => (int) $template_data['popularity_index'],
			'trendIndex' => (int) $template_data['trend_index'],
			'hasPageSettings' => ( '1' === $template_data['has_page_settings'] ),
			'url' => $template_data['url'],
			'favorite' => ! empty( $favorite_templates[ $template_data['id'] ] ),
		];
	}
}
includes/template-library/sources/base.php000064400000020720151327220420014734 0ustar00<?php
namespace Elementor\TemplateLibrary;

use Elementor\Controls_Stack;
use Elementor\Plugin;
use Elementor\Utils;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor template library source base.
 *
 * Elementor template library source base handler class is responsible for
 * initializing all the methods controlling the source of Elementor templates.
 *
 * @since 1.0.0
 * @abstract
 */
abstract class Source_Base {

	/**
	 * User meta.
	 *
	 * Holds the current user meta data.
	 *
	 * @access private
	 *
	 * @var array
	 */
	private $user_meta;

	/**
	 * Get template ID.
	 *
	 * Retrieve the template ID.
	 *
	 * @since 1.0.0
	 * @access public
	 * @abstract
	 */
	abstract public function get_id();

	/**
	 * Get template title.
	 *
	 * Retrieve the template title.
	 *
	 * @since 1.0.0
	 * @access public
	 * @abstract
	 */
	abstract public function get_title();

	/**
	 * Register template data.
	 *
	 * Used to register custom template data like a post type, a taxonomy or any
	 * other data.
	 *
	 * @since 1.0.0
	 * @access public
	 * @abstract
	 */
	abstract public function register_data();

	/**
	 * Get templates.
	 *
	 * Retrieve templates from the template library.
	 *
	 * @since 1.0.0
	 * @access public
	 * @abstract
	 *
	 * @param array $args Optional. Filter templates list based on a set of
	 *                    arguments. Default is an empty array.
	 */
	abstract public function get_items( $args = [] );

	/**
	 * Get template.
	 *
	 * Retrieve a single template from the template library.
	 *
	 * @since 1.0.0
	 * @access public
	 * @abstract
	 *
	 * @param int $template_id The template ID.
	 */
	abstract public function get_item( $template_id );

	/**
	 * Get template data.
	 *
	 * Retrieve a single template data from the template library.
	 *
	 * @since 1.5.0
	 * @access public
	 * @abstract
	 *
	 * @param array $args Custom template arguments.
	 */
	abstract public function get_data( array $args );

	/**
	 * Delete template.
	 *
	 * Delete template from the database.
	 *
	 * @since 1.0.0
	 * @access public
	 * @abstract
	 *
	 * @param int $template_id The template ID.
	 */
	abstract public function delete_template( $template_id );

	/**
	 * Save template.
	 *
	 * Save new or update existing template on the database.
	 *
	 * @since 1.0.0
	 * @access public
	 * @abstract
	 *
	 * @param array $template_data The template data.
	 */
	abstract public function save_item( $template_data );

	/**
	 * Update template.
	 *
	 * Update template on the database.
	 *
	 * @since 1.0.0
	 * @access public
	 * @abstract
	 *
	 * @param array $new_data New template data.
	 */
	abstract public function update_item( $new_data );

	/**
	 * Export template.
	 *
	 * Export template to a file.
	 *
	 * @since 1.0.0
	 * @access public
	 * @abstract
	 *
	 * @param int $template_id The template ID.
	 */
	abstract public function export_template( $template_id );

	/**
	 * Template library source base constructor.
	 *
	 * Initializing the template library source base by registering custom
	 * template data.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function __construct() {
		$this->register_data();
	}

	/**
	 * Mark template as favorite.
	 *
	 * Update user meta containing his favorite templates. For a given template
	 * ID, add the template to the favorite templates or remove it from the
	 * favorites, based on the `favorite` parameter.
	 *
	 * @since 1.9.0
	 * @access public
	 *
	 * @param int  $template_id The template ID.
	 * @param bool $favorite    Optional. Whether the template is marked as
	 *                          favorite, or not. Default is true.
	 *
	 * @return int|bool User meta ID if the key didn't exist, true on successful
	 *                  update, false on failure.
	 */
	public function mark_as_favorite( $template_id, $favorite = true ) {
		$favorites_templates = $this->get_user_meta( 'favorites' );

		if ( ! $favorites_templates ) {
			$favorites_templates = [];
		}

		if ( $favorite ) {
			$favorites_templates[ $template_id ] = $favorite;
		} elseif ( isset( $favorites_templates[ $template_id ] ) ) {
			unset( $favorites_templates[ $template_id ] );
		}

		return $this->update_user_meta( 'favorites', $favorites_templates );
	}

	/**
	 * Get current user meta.
	 *
	 * Retrieve Elementor meta data for the current user.
	 *
	 * @since 1.9.0
	 * @access public
	 *
	 * @param string $item Optional. User meta key. Default is null.
	 *
	 * @return null|array An array of user meta data, or null otherwise.
	 */
	public function get_user_meta( $item = null ) {
		if ( null === $this->user_meta ) {
			$this->user_meta = get_user_meta( get_current_user_id(), $this->get_user_meta_prefix(), true );
		}

		if ( ! $this->user_meta ) {
			$this->user_meta = [];
		}

		if ( $item ) {
			if ( isset( $this->user_meta[ $item ] ) ) {
				return $this->user_meta[ $item ];
			}

			return null;
		}

		return $this->user_meta;
	}

	/**
	 * Update current user meta.
	 *
	 * Update user meta data based on meta key an value.
	 *
	 * @since 1.9.0
	 * @access public
	 *
	 * @param string $key   Optional. User meta key.
	 * @param mixed  $value Optional. User meta value.
	 *
	 * @return int|bool User meta ID if the key didn't exist, true on successful
	 *                  update, false on failure.
	 */
	public function update_user_meta( $key, $value ) {
		$meta = $this->get_user_meta();

		$meta[ $key ] = $value;

		$this->user_meta = $meta;

		return update_user_meta( get_current_user_id(), $this->get_user_meta_prefix(), $meta );
	}

	/**
	 * Replace elements IDs.
	 *
	 * For any given Elementor content/data, replace the IDs with new randomly
	 * generated IDs.
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @param array $content Any type of Elementor data.
	 *
	 * @return mixed Iterated data.
	 */
	protected function replace_elements_ids( $content ) {
		return Plugin::$instance->db->iterate_data( $content, function( $element ) {
			$element['id'] = Utils::generate_random_string();

			return $element;
		} );
	}

	/**
	 * Get Elementor library user meta prefix.
	 *
	 * Retrieve user meta prefix used to save Elementor data.
	 *
	 * @since 1.9.0
	 * @access protected
	 *
	 * @return string User meta prefix.
	 */
	protected function get_user_meta_prefix() {
		return 'elementor_library_' . $this->get_id();
	}

	/**
	 * Process content for export/import.
	 *
	 * Process the content and all the inner elements, and prepare all the
	 * elements data for export/import.
	 *
	 * @since 1.5.0
	 * @access protected
	 *
	 * @param array  $content A set of elements.
	 * @param string $method  Accepts either `on_export` to export data or
	 *                        `on_import` to import data.
	 *
	 * @return mixed Processed content data.
	 */
	protected function process_export_import_content( $content, $method ) {
		return Plugin::$instance->db->iterate_data(
			$content, function( $element_data ) use ( $method ) {
				$element = Plugin::$instance->elements_manager->create_element_instance( $element_data );

				// If the widget/element isn't exist, like a plugin that creates a widget but deactivated
				if ( ! $element ) {
					return null;
				}

				return $this->process_element_export_import_content( $element, $method );
			}
		);
	}

	/**
	 * Process single element content for export/import.
	 *
	 * Process any given element and prepare the element data for export/import.
	 *
	 * @since 1.5.0
	 * @access protected
	 *
	 * @param Controls_Stack $element
	 * @param string         $method
	 *
	 * @return array Processed element data.
	 */
	protected function process_element_export_import_content( Controls_Stack $element, $method ) {
		$element_data = $element->get_data();

		if ( method_exists( $element, $method ) ) {
			// TODO: Use the internal element data without parameters.
			$element_data = $element->{$method}( $element_data );
		}

		foreach ( $element->get_controls() as $control ) {
			$control_class = Plugin::$instance->controls_manager->get_control( $control['type'] );

			// If the control isn't exist, like a plugin that creates the control but deactivated.
			if ( ! $control_class ) {
				return $element_data;
			}

			if ( method_exists( $control_class, $method ) ) {
				$element_data['settings'][ $control['name'] ] = $control_class->{$method}( $element->get_settings( $control['name'] ), $control );
			}

			// On Export, check if the control has an argument 'export' => false.
			if ( 'on_export' === $method && isset( $control['export'] ) && false === $control['export'] ) {
				unset( $element_data['settings'][ $control['name'] ] );
			}
		}

		return $element_data;
	}
}
includes/template-library/sources/local.php000064400000132277151327220420015127 0ustar00<?php
namespace Elementor\TemplateLibrary;

use Elementor\Core\Base\Document;
use Elementor\Core\Editor\Editor;
use Elementor\Core\Files\File_Types\Zip;
use Elementor\DB;
use Elementor\Core\Settings\Manager as SettingsManager;
use Elementor\Core\Settings\Page\Model;
use Elementor\Modules\Library\Documents\Library_Document;
use Elementor\Plugin;
use Elementor\Utils;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor template library local source.
 *
 * Elementor template library local source handler class is responsible for
 * handling local Elementor templates saved by the user locally on his site.
 *
 * @since 1.0.0
 */
class Source_Local extends Source_Base {

	/**
	 * Elementor template-library post-type slug.
	 */
	const CPT = 'elementor_library';

	/**
	 * Elementor template-library taxonomy slug.
	 */
	const TAXONOMY_TYPE_SLUG = 'elementor_library_type';

	/**
	 * Elementor template-library category slug.
	 */
	const TAXONOMY_CATEGORY_SLUG = 'elementor_library_category';

	/**
	 * Elementor template-library meta key.
	 * @deprecated 2.3.0 Use \Elementor\Core\Base\Document::TYPE_META_KEY instead
	 */
	const TYPE_META_KEY = '_elementor_template_type';

	/**
	 * Elementor template-library temporary files folder.
	 */
	const TEMP_FILES_DIR = 'elementor/tmp';

	/**
	 * Elementor template-library bulk export action name.
	 */
	const BULK_EXPORT_ACTION = 'elementor_export_multiple_templates';

	const ADMIN_MENU_SLUG = 'edit.php?post_type=elementor_library';

	const ADMIN_SCREEN_ID = 'edit-elementor_library';

	/**
	 * Template types.
	 *
	 * Holds the list of supported template types that can be displayed.
	 *
	 * @access private
	 * @static
	 *
	 * @var array
	 */
	private static $template_types = [];

	/**
	 * Post type object.
	 *
	 * Holds the post type object of the current post.
	 *
	 * @access private
	 *
	 * @var \WP_Post_Type
	 */
	private $post_type_object;

	/**
	 * @since 2.3.0
	 * @access public
	 * @static
	 * @return array
	 */
	public static function get_template_types() {
		return self::$template_types;
	}

	/**
	 * Get local template type.
	 *
	 * Retrieve the template type from the post meta.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @param int $template_id The template ID.
	 *
	 * @return mixed The value of meta data field.
	 */
	public static function get_template_type( $template_id ) {
		return get_post_meta( $template_id, Document::TYPE_META_KEY, true );
	}

	/**
	 * Is base templates screen.
	 *
	 * Whether the current screen base is edit and the post type is template.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @return bool True on base templates screen, False otherwise.
	 */
	public static function is_base_templates_screen() {
		global $current_screen;

		if ( ! $current_screen ) {
			return false;
		}

		return 'edit' === $current_screen->base && self::CPT === $current_screen->post_type;
	}

	/**
	 * Add template type.
	 *
	 * Register new template type to the list of supported local template types.
	 *
	 * @since 1.0.3
	 * @access public
	 * @static
	 *
	 * @param string $type Template type.
	 */
	public static function add_template_type( $type ) {
		self::$template_types[ $type ] = $type;
	}

	/**
	 * Remove template type.
	 *
	 * Remove existing template type from the list of supported local template
	 * types.
	 *
	 * @since 1.8.0
	 * @access public
	 * @static
	 *
	 * @param string $type Template type.
	 */
	public static function remove_template_type( $type ) {
		if ( isset( self::$template_types[ $type ] ) ) {
			unset( self::$template_types[ $type ] );
		}
	}

	public static function get_admin_url( $relative = false ) {
		$base_url = self::ADMIN_MENU_SLUG;
		if ( ! $relative ) {
			$base_url = admin_url( $base_url );
		}

		return add_query_arg( 'tabs_group', 'library', $base_url );
	}

	/**
	 * Get local template ID.
	 *
	 * Retrieve the local template ID.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string The local template ID.
	 */
	public function get_id() {
		return 'local';
	}

	/**
	 * Get local template title.
	 *
	 * Retrieve the local template title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string The local template title.
	 */
	public function get_title() {
		return esc_html__( 'Local', 'elementor' );
	}

	/**
	 * Register local template data.
	 *
	 * Used to register custom template data like a post type, a taxonomy or any
	 * other data.
	 *
	 * The local template class registers a new `elementor_library` post type
	 * and an `elementor_library_type` taxonomy. They are used to store data for
	 * local templates saved by the user on his site.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function register_data() {
		$labels = [
			'name' => _x( 'My Templates', 'Template Library', 'elementor' ),
			'singular_name' => _x( 'Template', 'Template Library', 'elementor' ),
			'add_new' => _x( 'Add New', 'Template Library', 'elementor' ),
			'add_new_item' => _x( 'Add New Template', 'Template Library', 'elementor' ),
			'edit_item' => _x( 'Edit Template', 'Template Library', 'elementor' ),
			'new_item' => _x( 'New Template', 'Template Library', 'elementor' ),
			'all_items' => _x( 'All Templates', 'Template Library', 'elementor' ),
			'view_item' => _x( 'View Template', 'Template Library', 'elementor' ),
			'search_items' => _x( 'Search Template', 'Template Library', 'elementor' ),
			'not_found' => _x( 'No Templates found', 'Template Library', 'elementor' ),
			'not_found_in_trash' => _x( 'No Templates found in Trash', 'Template Library', 'elementor' ),
			'parent_item_colon' => '',
			'menu_name' => _x( 'Templates', 'Template Library', 'elementor' ),
		];

		$args = [
			'labels' => $labels,
			'public' => true,
			'rewrite' => false,
			'menu_icon' => 'dashicons-admin-page',
			'show_ui' => true,
			'show_in_menu' => true,
			'show_in_nav_menus' => false,
			'exclude_from_search' => true,
			'capability_type' => 'post',
			'hierarchical' => false,
			'supports' => [ 'title', 'thumbnail', 'author', 'elementor' ],
		];

		/**
		 * Register template library post type args.
		 *
		 * Filters the post type arguments when registering elementor template library post type.
		 *
		 * @since 1.0.0
		 *
		 * @param array $args Arguments for registering a post type.
		 */
		$args = apply_filters( 'elementor/template_library/sources/local/register_post_type_args', $args );

		$this->post_type_object = register_post_type( self::CPT, $args );

		$args = [
			'hierarchical' => false,
			'show_ui' => false,
			'show_in_nav_menus' => false,
			'show_admin_column' => true,
			'query_var' => is_admin(),
			'rewrite' => false,
			'public' => false,
			'label' => _x( 'Type', 'Template Library', 'elementor' ),
		];

		/**
		 * Register template library taxonomy args.
		 *
		 * Filters the taxonomy arguments when registering elementor template library taxonomy.
		 *
		 * @since 1.0.0
		 *
		 * @param array $args Arguments for registering a taxonomy.
		 */
		$args = apply_filters( 'elementor/template_library/sources/local/register_taxonomy_args', $args );

		$cpts_to_associate = [ self::CPT ];

		/**
		 * Custom post types to associate.
		 *
		 * Filters the list of custom post types when registering elementor template library taxonomy.
		 *
		 * @since 1.0.0
		 *
		 * @param array $cpts_to_associate Custom post types. Default is `elementor_library` post type.
		 */
		$cpts_to_associate = apply_filters( 'elementor/template_library/sources/local/register_taxonomy_cpts', $cpts_to_associate );

		register_taxonomy( self::TAXONOMY_TYPE_SLUG, $cpts_to_associate, $args );

		/**
		 * Categories
		 */
		$args = [
			'hierarchical' => true,
			'show_ui' => true,
			'show_in_nav_menus' => false,
			'show_admin_column' => true,
			'query_var' => is_admin(),
			'rewrite' => false,
			'public' => false,
			'labels' => [
				'name' => _x( 'Categories', 'Template Library', 'elementor' ),
				'singular_name' => _x( 'Category', 'Template Library', 'elementor' ),
				'all_items' => _x( 'All Categories', 'Template Library', 'elementor' ),
			],
		];

		/**
		 * Register template library category args.
		 *
		 * Filters the category arguments when registering elementor template library category.
		 *
		 * @since 2.4.0
		 *
		 * @param array $args Arguments for registering a category.
		 */
		$args = apply_filters( 'elementor/template_library/sources/local/register_category_args', $args );

		register_taxonomy( self::TAXONOMY_CATEGORY_SLUG, self::CPT, $args );
	}

	/**
	 * Remove Add New item from admin menu.
	 *
	 * Fired by `admin_menu` action.
	 *
	 * @since 2.4.0
	 * @access public
	 */
	public function admin_menu_reorder() {
		global $submenu;

		if ( ! isset( $submenu[ self::ADMIN_MENU_SLUG ] ) ) {
			return;
		}
		$library_submenu = &$submenu[ self::ADMIN_MENU_SLUG ];

		// Remove 'All Templates' menu.
		unset( $library_submenu[5] );

		// If current use can 'Add New' - move the menu to end, and add the '#add_new' anchor.
		if ( isset( $library_submenu[10][2] ) ) {
			$library_submenu[700] = $library_submenu[10];
			unset( $library_submenu[10] );
			$library_submenu[700][2] = admin_url( self::ADMIN_MENU_SLUG . '#add_new' );
		}

		// Move the 'Categories' menu to end.
		if ( isset( $library_submenu[15] ) ) {
			$library_submenu[800] = $library_submenu[15];
			unset( $library_submenu[15] );
		}

		if ( $this->is_current_screen() ) {
			$library_title = $this->get_library_title();

			foreach ( $library_submenu as &$item ) {
				if ( $library_title === $item[0] ) {
					if ( ! isset( $item[4] ) ) {
						$item[4] = '';
					}
					$item[4] .= ' current';
				}
			}
		}
	}

	public function admin_menu() {
		add_submenu_page( self::ADMIN_MENU_SLUG, '', esc_html__( 'Saved Templates', 'elementor' ), Editor::EDITING_CAPABILITY, self::get_admin_url( true ) );
	}

	public function admin_title( $admin_title, $title ) {
		$library_title = $this->get_library_title();

		if ( $library_title ) {
			$admin_title = str_replace( $title, $library_title, $admin_title );
		}

		return $admin_title;
	}

	public function replace_admin_heading() {
		$library_title = $this->get_library_title();

		if ( $library_title ) {
			global $post_type_object;

			$post_type_object->labels->name = $library_title;
		}
	}

	/**
	 * Get local templates.
	 *
	 * Retrieve local templates saved by the user on his site.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param array $args Optional. Filter templates based on a set of
	 *                    arguments. Default is an empty array.
	 *
	 * @return array Local templates.
	 */
	public function get_items( $args = [] ) {
		$template_types = array_values( self::$template_types );

		if ( ! empty( $args['type'] ) ) {
			$template_types = $args['type'];
			unset( $args['type'] );
		}

		$defaults = [
			'post_type' => self::CPT,
			'post_status' => 'publish',
			'posts_per_page' => -1,
			'orderby' => 'title',
			'order' => 'ASC',
			'meta_query' => [
				[
					'key' => Document::TYPE_META_KEY,
					'value' => $template_types,
				],
			],
		];

		$query_args = wp_parse_args( $args, $defaults );

		$templates_query = new \WP_Query( $query_args );

		$templates = [];

		if ( $templates_query->have_posts() ) {
			foreach ( $templates_query->get_posts() as $post ) {
				$templates[] = $this->get_item( $post->ID );
			}
		}

		return $templates;
	}

	/**
	 * Save local template.
	 *
	 * Save new or update existing template on the database.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param array $template_data Local template data.
	 *
	 * @return \WP_Error|int The ID of the saved/updated template, `WP_Error` otherwise.
	 */
	public function save_item( $template_data ) {
		if ( ! current_user_can( $this->post_type_object->cap->edit_posts ) ) {
			return new \WP_Error( 'save_error', esc_html__( 'Access denied.', 'elementor' ) );
		}

		$defaults = [
			'title' => esc_html__( '(no title)', 'elementor' ),
			'page_settings' => [],
			'status' => current_user_can( 'publish_posts' ) ? 'publish' : 'pending',
		];

		$template_data = wp_parse_args( $template_data, $defaults );

		$document = Plugin::$instance->documents->create(
			$template_data['type'],
			[
				'post_title' => $template_data['title'],
				'post_status' => $template_data['status'],
				'post_type' => self::CPT,
			]
		);

		if ( is_wp_error( $document ) ) {
			/**
			 * @var \WP_Error $document
			 */
			return $document;
		}

		if ( ! empty( $template_data['content'] ) ) {
			$template_data['content'] = $this->replace_elements_ids( $template_data['content'] );
		}

		$document->save( [
			'elements' => $template_data['content'],
			'settings' => $template_data['page_settings'],
		] );

		$template_id = $document->get_main_id();

		/**
		 * After template library save.
		 *
		 * Fires after Elementor template library was saved.
		 *
		 * @since 1.0.1
		 *
		 * @param int   $template_id   The ID of the template.
		 * @param array $template_data The template data.
		 */
		do_action( 'elementor/template-library/after_save_template', $template_id, $template_data );

		/**
		 * After template library update.
		 *
		 * Fires after Elementor template library was updated.
		 *
		 * @since 1.0.1
		 *
		 * @param int   $template_id   The ID of the template.
		 * @param array $template_data The template data.
		 */
		do_action( 'elementor/template-library/after_update_template', $template_id, $template_data );

		return $template_id;
	}

	/**
	 * Update local template.
	 *
	 * Update template on the database.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param array $new_data New template data.
	 *
	 * @return \WP_Error|true True if template updated, `WP_Error` otherwise.
	 */
	public function update_item( $new_data ) {
		if ( ! current_user_can( $this->post_type_object->cap->edit_post, $new_data['id'] ) ) {
			return new \WP_Error( 'save_error', esc_html__( 'Access denied.', 'elementor' ) );
		}

		$document = Plugin::$instance->documents->get( $new_data['id'] );

		if ( ! $document ) {
			return new \WP_Error( 'save_error', esc_html__( 'Template not exist.', 'elementor' ) );
		}

		$document->save( [
			'elements' => $new_data['content'],
		] );

		/**
		 * After template library update.
		 *
		 * Fires after Elementor template library was updated.
		 *
		 * @since 1.0.0
		 *
		 * @param int   $new_data_id The ID of the new template.
		 * @param array $new_data    The new template data.
		 */
		do_action( 'elementor/template-library/after_update_template', $new_data['id'], $new_data );

		return true;
	}

	/**
	 * Get local template.
	 *
	 * Retrieve a single local template saved by the user on his site.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param int $template_id The template ID.
	 *
	 * @return array Local template.
	 */
	public function get_item( $template_id ) {
		$post = get_post( $template_id );

		$user = get_user_by( 'id', $post->post_author );

		$page = SettingsManager::get_settings_managers( 'page' )->get_model( $template_id );

		$page_settings = $page->get_data( 'settings' );

		$date = strtotime( $post->post_date );

		$data = [
			'template_id' => $post->ID,
			'source' => $this->get_id(),
			'type' => self::get_template_type( $post->ID ),
			'title' => $post->post_title,
			'thumbnail' => get_the_post_thumbnail_url( $post ),
			'date' => $date,
			'human_date' => date_i18n( get_option( 'date_format' ), $date ),
			'human_modified_date' => date_i18n( get_option( 'date_format' ), strtotime( $post->post_modified ) ),
			'author' => $user->display_name,
			'status' => $post->post_status,
			'hasPageSettings' => ! empty( $page_settings ),
			'tags' => [],
			'export_link' => $this->get_export_link( $template_id ),
			'url' => get_permalink( $post->ID ),
		];

		/**
		 * Get template library template.
		 *
		 * Filters the template data when retrieving a single template from the
		 * template library.
		 *
		 * @since 1.0.0
		 *
		 * @param array $data Template data.
		 */
		$data = apply_filters( 'elementor/template-library/get_template', $data );

		return $data;
	}

	/**
	 * Get template data.
	 *
	 * Retrieve the data of a single local template saved by the user on his site.
	 *
	 * @since 1.5.0
	 * @access public
	 *
	 * @param array $args Custom template arguments.
	 *
	 * @return array Local template data.
	 */
	public function get_data( array $args ) {
		$template_id = $args['template_id'];

		$document = Plugin::$instance->documents->get( $template_id );
		$content = [];

		if ( $document ) {
			// TODO: Validate the data (in JS too!).
			if ( ! empty( $args['display'] ) ) {
				$content = $document->get_elements_raw_data( null, true );
			} else {
				$content = $document->get_elements_data();
			}

			if ( ! empty( $content ) ) {
				$content = $this->replace_elements_ids( $content );
			}
		}

		$data = [
			'content' => $content,
		];

		if ( ! empty( $args['with_page_settings'] ) ) {
			$page = SettingsManager::get_settings_managers( 'page' )->get_model( $args['template_id'] );

			$data['page_settings'] = $page->get_data( 'settings' );
		}

		return $data;
	}

	/**
	 * Delete local template.
	 *
	 * Delete template from the database.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param int $template_id The template ID.
	 *
	 * @return \WP_Post|\WP_Error|false|null Post data on success, false or null
	 *                                       or 'WP_Error' on failure.
	 */
	public function delete_template( $template_id ) {
		if ( ! current_user_can( $this->post_type_object->cap->delete_post, $template_id ) ) {
			return new \WP_Error( 'template_error', esc_html__( 'Access denied.', 'elementor' ) );
		}

		return wp_delete_post( $template_id, true );
	}

	/**
	 * Export local template.
	 *
	 * Export template to a file.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param int $template_id The template ID.
	 *
	 * @return \WP_Error WordPress error if template export failed.
	 */
	public function export_template( $template_id ) {
		$file_data = $this->prepare_template_export( $template_id );

		if ( is_wp_error( $file_data ) ) {
			return $file_data;
		}

		$this->send_file_headers( $file_data['name'], strlen( $file_data['content'] ) );

		// Clear buffering just in case.
		@ob_end_clean();

		flush();

		// Output file contents.
		// PHPCS - Export widget json
		echo $file_data['content']; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped

		die;
	}

	/**
	 * Export multiple local templates.
	 *
	 * Export multiple template to a ZIP file.
	 *
	 * @since 1.6.0
	 * @access public
	 *
	 * @param array $template_ids An array of template IDs.
	 *
	 * @return \WP_Error WordPress error if export failed.
	 */
	public function export_multiple_templates( array $template_ids ) {
		$files = [];

		$wp_upload_dir = wp_upload_dir();

		$temp_path = $wp_upload_dir['basedir'] . '/' . self::TEMP_FILES_DIR;

		// Create temp path if it doesn't exist
		wp_mkdir_p( $temp_path );

		// Create all json files
		foreach ( $template_ids as $template_id ) {
			$file_data = $this->prepare_template_export( $template_id );

			if ( is_wp_error( $file_data ) ) {
				continue;
			}

			$complete_path = $temp_path . '/' . $file_data['name'];

			$put_contents = file_put_contents( $complete_path, $file_data['content'] );

			if ( ! $put_contents ) {
				return new \WP_Error( '404', sprintf( 'Cannot create file "%s".', $file_data['name'] ) );
			}

			$files[] = [
				'path' => $complete_path,
				'name' => $file_data['name'],
			];
		}

		if ( ! $files ) {
			return new \WP_Error( 'empty_files', 'There is no files to export (probably all the requested templates are empty).' );
		}

		// Create temporary .zip file
		$zip_archive_filename = 'elementor-templates-' . gmdate( 'Y-m-d' ) . '.zip';

		$zip_archive = new \ZipArchive();

		$zip_complete_path = $temp_path . '/' . $zip_archive_filename;

		$zip_archive->open( $zip_complete_path, \ZipArchive::CREATE );

		foreach ( $files as $file ) {
			$zip_archive->addFile( $file['path'], $file['name'] );
		}

		$zip_archive->close();

		foreach ( $files as $file ) {
			unlink( $file['path'] );
		}

		$this->send_file_headers( $zip_archive_filename, filesize( $zip_complete_path ) );

		@ob_end_flush();

		@readfile( $zip_complete_path );

		unlink( $zip_complete_path );

		die;
	}

	/**
	 * Import local template.
	 *
	 * Import template from a file.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param string $name - The file name
	 * @param string $path - The file path
	 * @return \WP_Error|array An array of items on success, 'WP_Error' on failure.
	 */
	public function import_template( $name, $path ) {
		if ( empty( $path ) ) {
			return new \WP_Error( 'file_error', 'Please upload a file to import' );
		}

		$items = [];

		// If the import file is a Zip file with potentially multiple JSON files
		if ( 'zip' === pathinfo( $name, PATHINFO_EXTENSION ) ) {
			$extracted_files = Plugin::$instance->uploads_manager->extract_and_validate_zip( $path );

			if ( is_wp_error( $extracted_files ) ) {
				// Remove the temporary zip file, since it's now not necessary.
				Plugin::$instance->uploads_manager->remove_file_or_dir( $path );
				// Delete the temporary extraction directory, since it's now not necessary.
				Plugin::$instance->uploads_manager->remove_file_or_dir( $extracted_files['extraction_directory'] );

				return $extracted_files;
			}

			foreach ( $extracted_files['files'] as $file_path ) {
				$import_result = $this->import_single_template( $file_path );

				if ( is_wp_error( $import_result ) ) {
					Plugin::$instance->uploads_manager->remove_file_or_dir( $import_result );

					return $import_result;
				}

				$items[] = $import_result;
			}

			// Delete the temporary extraction directory, since it's now not necessary.
			Plugin::$instance->uploads_manager->remove_file_or_dir( $extracted_files['extraction_directory'] );
		} else {
			// If the import file is a single JSON file
			$import_result = $this->import_single_template( $path );

			if ( is_wp_error( $import_result ) ) {
				Plugin::$instance->uploads_manager->remove_file_or_dir( $import_result );

				return $import_result;
			}

			$items[] = $import_result;
		}

		return $items;
	}

	/**
	 * Post row actions.
	 *
	 * Add an export link to the template library action links table list.
	 *
	 * Fired by `post_row_actions` filter.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param array    $actions An array of row action links.
	 * @param \WP_Post $post    The post object.
	 *
	 * @return array An updated array of row action links.
	 */
	public function post_row_actions( $actions, \WP_Post $post ) {
		if ( self::is_base_templates_screen() ) {
			if ( $this->is_template_supports_export( $post->ID ) ) {
				$actions['export-template'] = sprintf( '<a href="%1$s">%2$s</a>', $this->get_export_link( $post->ID ), esc_html__( 'Export Template', 'elementor' ) );
			}
		}

		return $actions;
	}

	/**
	 * Admin import template form.
	 *
	 * The import form displayed in "My Library" screen in WordPress dashboard.
	 *
	 * The form allows the user to import template in json/zip format to the site.
	 *
	 * Fired by `admin_footer` action.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function admin_import_template_form() {
		if ( ! self::is_base_templates_screen() ) {
			return;
		}

		/** @var \Elementor\Core\Common\Modules\Ajax\Module $ajax */
		$ajax = Plugin::$instance->common->get_component( 'ajax' );
		?>
		<div id="elementor-hidden-area">
			<a id="elementor-import-template-trigger" class="page-title-action"><?php echo esc_html__( 'Import Templates', 'elementor' ); ?></a>
			<div id="elementor-import-template-area">
				<div id="elementor-import-template-title"><?php echo esc_html__( 'Choose an Elementor template JSON file or a .zip archive of Elementor templates, and add them to the list of templates available in your library.', 'elementor' ); ?></div>
				<form id="elementor-import-template-form" method="post" action="<?php echo esc_url( admin_url( 'admin-ajax.php' ) ); ?>" enctype="multipart/form-data">
					<input type="hidden" name="action" value="elementor_library_direct_actions">
					<input type="hidden" name="library_action" value="direct_import_template">
					<input type="hidden" name="_nonce" value="<?php Utils::print_unescaped_internal_string( $ajax->create_nonce() ); ?>">
					<fieldset id="elementor-import-template-form-inputs">
						<input type="file" name="file" accept=".json,application/json,.zip,application/octet-stream,application/zip,application/x-zip,application/x-zip-compressed" required>
						<input type="submit" class="button" value="<?php echo esc_attr__( 'Import Now', 'elementor' ); ?>">
					</fieldset>
				</form>
			</div>
		</div>
		<?php
	}

	/**
	 * Block template frontend
	 *
	 * Don't display the single view of the template library post type in the
	 * frontend, for users that don't have the proper permissions.
	 *
	 * Fired by `template_redirect` action.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function block_template_frontend() {
		if ( is_singular( self::CPT ) && ! current_user_can( Editor::EDITING_CAPABILITY ) ) {
			wp_safe_redirect( site_url(), 301 );
			die;
		}
	}

	/**
	 * Is template library supports export.
	 *
	 * whether the template library supports export.
	 *
	 * Template saved by the user locally on his site, support export by default
	 * but this can be changed using a filter.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param int $template_id The template ID.
	 *
	 * @return bool Whether the template library supports export.
	 */
	public function is_template_supports_export( $template_id ) {
		$export_support = true;

		/**
		 * Is template library supports export.
		 *
		 * Filters whether the template library supports export.
		 *
		 * @since 1.0.0
		 *
		 * @param bool $export_support Whether the template library supports export.
		 *                             Default is true.
		 * @param int  $template_id    Post ID.
		 */
		$export_support = apply_filters( 'elementor/template_library/is_template_supports_export', $export_support, $template_id );

		return $export_support;
	}

	/**
	 * Remove Elementor post state.
	 *
	 * Remove the 'elementor' post state from the display states of the post.
	 *
	 * Used to remove the 'elementor' post state from the template library items.
	 *
	 * Fired by `display_post_states` filter.
	 *
	 * @since 1.8.0
	 * @access public
	 *
	 * @param array    $post_states An array of post display states.
	 * @param \WP_Post $post        The current post object.
	 *
	 * @return array Updated array of post display states.
	 */
	public function remove_elementor_post_state_from_library( $post_states, $post ) {
		if ( self::CPT === $post->post_type && isset( $post_states['elementor'] ) ) {
			unset( $post_states['elementor'] );
		}
		return $post_states;
	}

	/**
	 * Get template export link.
	 *
	 * Retrieve the link used to export a single template based on the template
	 * ID.
	 *
	 * @since 2.0.0
	 * @access private
	 *
	 * @param int $template_id The template ID.
	 *
	 * @return string Template export URL.
	 */
	private function get_export_link( $template_id ) {
		// TODO: BC since 2.3.0 - Use `$ajax->create_nonce()`
		/** @var \Elementor\Core\Common\Modules\Ajax\Module $ajax */
		// $ajax = Plugin::$instance->common->get_component( 'ajax' );

		return add_query_arg(
			[
				'action' => 'elementor_library_direct_actions',
				'library_action' => 'export_template',
				'source' => $this->get_id(),
				'_nonce' => wp_create_nonce( 'elementor_ajax' ),
				'template_id' => $template_id,
			],
			admin_url( 'admin-ajax.php' )
		);
	}

	/**
	 * On template save.
	 *
	 * Run this method when template is being saved.
	 *
	 * Fired by `save_post` action.
	 *
	 * @since 1.0.1
	 * @access public
	 *
	 * @param int      $post_id Post ID.
	 * @param \WP_Post $post    The current post object.
	 */
	public function on_save_post( $post_id, \WP_Post $post ) {
		if ( self::CPT !== $post->post_type ) {
			return;
		}

		if ( self::get_template_type( $post_id ) ) { // It's already with a type
			return;
		}

		// Don't save type on import, the importer will do it.
		if ( did_action( 'import_start' ) ) {
			return;
		}

		$this->save_item_type( $post_id, 'page' );
	}

	/**
	 * Save item type.
	 *
	 * When saving/updating templates, this method is used to update the post
	 * meta data and the taxonomy.
	 *
	 * @since 1.0.1
	 * @access private
	 *
	 * @param int    $post_id Post ID.
	 * @param string $type    Item type.
	 */
	private function save_item_type( $post_id, $type ) {
		update_post_meta( $post_id, Document::TYPE_META_KEY, $type );

		wp_set_object_terms( $post_id, $type, self::TAXONOMY_TYPE_SLUG );
	}

	/**
	 * Bulk export action.
	 *
	 * Adds an 'Export' action to the Bulk Actions drop-down in the template
	 * library.
	 *
	 * Fired by `bulk_actions-edit-elementor_library` filter.
	 *
	 * @since 1.6.0
	 * @access public
	 *
	 * @param array $actions An array of the available bulk actions.
	 *
	 * @return array An array of the available bulk actions.
	 */
	public function admin_add_bulk_export_action( $actions ) {
		$actions[ self::BULK_EXPORT_ACTION ] = esc_html__( 'Export', 'elementor' );

		return $actions;
	}

	/**
	 * Add bulk export action.
	 *
	 * Handles the template library bulk export action.
	 *
	 * Fired by `handle_bulk_actions-edit-elementor_library` filter.
	 *
	 * @since 1.6.0
	 * @access public
	 *
	 * @param string $redirect_to The redirect URL.
	 * @param string $action      The action being taken.
	 * @param array  $post_ids    The items to take the action on.
	 */
	public function admin_export_multiple_templates( $redirect_to, $action, $post_ids ) {
		if ( self::BULK_EXPORT_ACTION === $action ) {
			$result = $this->export_multiple_templates( $post_ids );

			// If you reach this line, the export failed
			// PHPCS - Not user input.
			wp_die( $result->get_error_message() ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
		}
	}

	/**
	 * Print admin tabs.
	 *
	 * Used to output the template library tabs with their labels.
	 *
	 * Fired by `views_edit-elementor_library` filter.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @param array $views An array of available list table views.
	 *
	 * @return array An updated array of available list table views.
	 */
	public function admin_print_tabs( $views ) {
		$current_type = '';
		$active_class = ' nav-tab-active';
		$current_tabs_group = $this->get_current_tab_group();

		if ( ! empty( $_REQUEST[ self::TAXONOMY_TYPE_SLUG ] ) ) {
			$current_type = $_REQUEST[ self::TAXONOMY_TYPE_SLUG ];
			$active_class = '';
		}

		$url_args = [
			'post_type' => self::CPT,
			'tabs_group' => $current_tabs_group,
		];

		$baseurl = add_query_arg( $url_args, admin_url( 'edit.php' ) );

		$filter = [
			'admin_tab_group' => $current_tabs_group,
		];
		$operator = 'and';

		if ( empty( $current_tabs_group ) ) {
			// Don't include 'not-supported' or other templates that don't set their `admin_tab_group`.
			$operator = 'NOT';
		}

		$doc_types = Plugin::$instance->documents->get_document_types( $filter, $operator );

		if ( 1 >= count( $doc_types ) ) {
			return $views;
		}

		?>
		<div id="elementor-template-library-tabs-wrapper" class="nav-tab-wrapper">
			<a class="nav-tab<?php echo esc_attr( $active_class ); ?>" href="<?php echo esc_url( $baseurl ); ?>">
				<?php
				$all_title = $this->get_library_title();
				if ( ! $all_title ) {
					$all_title = esc_html__( 'All', 'elementor' );
				}
				Utils::print_unescaped_internal_string( $all_title ); ?>
			</a>
			<?php
			foreach ( $doc_types as $type => $class_name ) :
				$active_class = '';

				if ( $current_type === $type ) {
					$active_class = ' nav-tab-active';
				}

				$type_url = esc_url( add_query_arg( self::TAXONOMY_TYPE_SLUG, $type, $baseurl ) );
				$type_label = $this->get_template_label_by_type( $type );
				Utils::print_unescaped_internal_string( "<a class='nav-tab{$active_class}' href='{$type_url}'>{$type_label}</a>" );
			endforeach;
			?>
		</div>
		<?php
		return $views;
	}

	/**
	 * Maybe render blank state.
	 *
	 * When the template library has no saved templates, display a blank admin page offering
	 * to create the very first template.
	 *
	 * Fired by `manage_posts_extra_tablenav` action.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @param string $which The location of the extra table nav markup: 'top' or 'bottom'.
	 * @param array $args
	 */
	public function maybe_render_blank_state( $which, array $args = [] ) {
		global $post_type;

		$args = wp_parse_args( $args, [
			'cpt' => self::CPT,
			'post_type' => get_query_var( 'elementor_library_type' ),
		] );

		if ( $args['cpt'] !== $post_type || 'bottom' !== $which ) {
			return;
		}

		global $wp_list_table;

		$total_items = $wp_list_table->get_pagination_arg( 'total_items' );

		if ( ! empty( $total_items ) || ! empty( $_REQUEST['s'] ) ) {
			return;
		}

		$current_type = $args['post_type'];

		$document_types = Plugin::instance()->documents->get_document_types();

		if ( empty( $document_types[ $current_type ] ) ) {
			return;
		}

		// TODO: Better way to exclude widget type.
		if ( 'widget' === $current_type ) {
			return;
		}

		// TODO: This code maybe unreachable see if above `if ( empty( $document_types[ $current_type ] ) )`.
		if ( empty( $current_type ) ) {
			$counts = (array) wp_count_posts( self::CPT );
			unset( $counts['auto-draft'] );
			$count  = array_sum( $counts );

			if ( 0 < $count ) {
				return;
			}

			$current_type = 'template';

			$args['additional_inline_style'] = '#elementor-template-library-tabs-wrapper {display: none;}';
		}

		$this->render_blank_state( $current_type, $args );
	}

	private function render_blank_state( $current_type, array $args = [] ) {
		$current_type_label = $this->get_template_label_by_type( $current_type );
		$inline_style = '#posts-filter .wp-list-table, #posts-filter .tablenav.top, .tablenav.bottom .actions, .wrap .subsubsub { display:none;}';

		$args = wp_parse_args( $args, [
			'additional_inline_style' => '',
			'href' => '',
			'description' => esc_html__( 'Add templates and reuse them across your website. Easily export and import them to any other project, for an optimized workflow.', 'elementor' ),
		] );
		$inline_style .= $args['additional_inline_style'];
		?>
		<style type="text/css"><?php Utils::print_unescaped_internal_string( $inline_style ); ?></style>
		<div class="elementor-template_library-blank_state">
			<?php $this->print_blank_state_template( $current_type_label, $args['href'], $args['description'] ); ?>
		</div>
		<?php
	}

	/**
	 * Print Blank State Template
	 *
	 * When the an entity (CPT, Taxonomy...etc) has no saved items, print a blank admin page offering
	 * to create the very first item.
	 *
	 * This method is public because it needs to be accessed from outside the Source_Local
	 *
	 * @since 3.1.0
	 * @access public
	 *
	 * @param string $current_type_label The Entity title
	 * @param string $href The URL for the 'Add New' button
	 * @param string $description The sub title describing the Entity (Post Type, Taxonomy, etc.)
	 */
	public function print_blank_state_template( $current_type_label, $href, $description ) {
		?>
			<div class="elementor-blank_state">
				<i class="eicon-folder"></i>
				<h2>
					<?php
					/* translators: %s: Template type label. */
					printf( esc_html__( 'Create Your First %s', 'elementor' ), esc_html( $current_type_label ) );
					?>
				</h2>
				<p><?php echo wp_kses_post( $description ); ?></p>
				<a id="elementor-template-library-add-new" class="elementor-button elementor-button-success" href="<?php echo esc_url( $href ); ?>">
					<?php
					/* translators: %s: Template type label. */
					printf( esc_html__( 'Add New %s', 'elementor' ), esc_html( $current_type_label ) );
					?>
				</a>
			</div>
		<?php
	}

	public function add_filter_by_category( $post_type ) {
		if ( self::CPT !== $post_type ) {
			return;
		}

		$all_items = get_taxonomy( self::TAXONOMY_CATEGORY_SLUG )->labels->all_items;

		$dropdown_options = array(
			'show_option_all' => $all_items,
			'show_option_none' => $all_items,
			'hide_empty' => 0,
			'hierarchical' => 1,
			'show_count' => 0,
			'orderby' => 'name',
			'value_field' => 'slug',
			'taxonomy' => self::TAXONOMY_CATEGORY_SLUG,
			'name' => self::TAXONOMY_CATEGORY_SLUG,
			'selected' => empty( $_GET[ self::TAXONOMY_CATEGORY_SLUG ] ) ? '' : $_GET[ self::TAXONOMY_CATEGORY_SLUG ],
		);
		echo '<label class="screen-reader-text" for="cat">' . esc_html_x( 'Filter by category', 'Template Library', 'elementor' ) . '</label>';
		wp_dropdown_categories( $dropdown_options );
	}

	/**
	 * Import single template.
	 *
	 * Import template from a file to the database.
	 *
	 * @since 1.6.0
	 * @access private
	 *
	 * @param string $file_path File name.
	 *
	 * @return \WP_Error|int|array Local template array, or template ID, or
	 *                             `WP_Error`.
	 */
	private function import_single_template( $file_path ) {
		$data = json_decode( file_get_contents( $file_path ), true );

		if ( empty( $data ) ) {
			return new \WP_Error( 'file_error', 'Invalid File' );
		}

		$content = $data['content'];

		if ( ! is_array( $content ) ) {
			return new \WP_Error( 'file_error', 'Invalid Content In File' );
		}

		$content = $this->process_export_import_content( $content, 'on_import' );

		$page_settings = [];

		if ( ! empty( $data['page_settings'] ) ) {
			$page = new Model( [
				'id' => 0,
				'settings' => $data['page_settings'],
			] );

			$page_settings_data = $this->process_element_export_import_content( $page, 'on_import' );

			if ( ! empty( $page_settings_data['settings'] ) ) {
				$page_settings = $page_settings_data['settings'];
			}
		}

		$template_id = $this->save_item( [
			'content' => $content,
			'title' => $data['title'],
			'type' => $data['type'],
			'page_settings' => $page_settings,
		] );

		// Remove the temporary file, now that we're done with it.
		Plugin::$instance->uploads_manager->remove_file_or_dir( $file_path );

		if ( is_wp_error( $template_id ) ) {
			return $template_id;
		}

		return $this->get_item( $template_id );
	}

	/**
	 * Prepare template to export.
	 *
	 * Retrieve the relevant template data and return them as an array.
	 *
	 * @since 1.6.0
	 * @access private
	 *
	 * @param int $template_id The template ID.
	 *
	 * @return \WP_Error|array Exported template data.
	 */
	private function prepare_template_export( $template_id ) {
		$document = Plugin::$instance->documents->get( $template_id );

		$template_data = $document->get_export_data();

		if ( empty( $template_data['content'] ) ) {
			return new \WP_Error( 'empty_template', 'The template is empty' );
		}

		$export_data = [
			'content' => $template_data['content'],
			'page_settings' => $template_data['settings'],
			'version' => DB::DB_VERSION,
			'title' => get_the_title( $template_id ),
			'type' => self::get_template_type( $template_id ),
		];

		return [
			'name' => 'elementor-' . $template_id . '-' . gmdate( 'Y-m-d' ) . '.json',
			'content' => wp_json_encode( $export_data ),
		];
	}

	/**
	 * Send file headers.
	 *
	 * Set the file header when export template data to a file.
	 *
	 * @since 1.6.0
	 * @access private
	 *
	 * @param string $file_name File name.
	 * @param int    $file_size File size.
	 */
	private function send_file_headers( $file_name, $file_size ) {
		header( 'Content-Type: application/octet-stream' );
		header( 'Content-Disposition: attachment; filename=' . $file_name );
		header( 'Expires: 0' );
		header( 'Cache-Control: must-revalidate' );
		header( 'Pragma: public' );
		header( 'Content-Length: ' . $file_size );
	}

	/**
	 * Get template label by type.
	 *
	 * Retrieve the template label for any given template type.
	 *
	 * @since 2.0.0
	 * @access private
	 *
	 * @param string $template_type Template type.
	 *
	 * @return string Template label.
	 */
	private function get_template_label_by_type( $template_type ) {
		$document_types = Plugin::instance()->documents->get_document_types();

		if ( isset( $document_types[ $template_type ] ) ) {
			$template_label = call_user_func( [ $document_types[ $template_type ], 'get_title' ] );
		} else {
			$template_label = ucwords( str_replace( [ '_', '-' ], ' ', $template_type ) );
		}

		/**
		 * Template label by template type.
		 *
		 * Filters the template label by template type in the template library .
		 *
		 * @since 2.0.0
		 *
		 * @param string $template_label Template label.
		 * @param string $template_type  Template type.
		 */
		$template_label = apply_filters( 'elementor/template-library/get_template_label_by_type', $template_label, $template_type );

		return $template_label;
	}

	/**
	 * Filter template types in admin query.
	 *
	 * Update the template types in the main admin query.
	 *
	 * Fired by `parse_query` action.
	 *
	 * @since 2.4.0
	 * @access public
	 *
	 * @param \WP_Query $query The `WP_Query` instance.
	 */
	public function admin_query_filter_types( \WP_Query $query ) {
		if ( ! $this->is_current_screen() || ! empty( $query->query_vars['meta_key'] ) ) {
			return;
		}

		$current_tabs_group = $this->get_current_tab_group();

		if ( isset( $query->query_vars[ self::TAXONOMY_CATEGORY_SLUG ] ) && '-1' === $query->query_vars[ self::TAXONOMY_CATEGORY_SLUG ] ) {
			unset( $query->query_vars[ self::TAXONOMY_CATEGORY_SLUG ] );
		}

		if ( empty( $current_tabs_group ) ) {
			return;
		}

		$doc_types = Plugin::$instance->documents->get_document_types( [
			'admin_tab_group' => $current_tabs_group,
		] );

		$query->query_vars['meta_key'] = Document::TYPE_META_KEY;
		$query->query_vars['meta_value'] = array_keys( $doc_types );
	}

	/**
	 * Add template library actions.
	 *
	 * Register filters and actions for the template library.
	 *
	 * @since 2.0.0
	 * @access private
	 */
	private function add_actions() {
		if ( is_admin() ) {
			add_action( 'admin_menu', [ $this, 'admin_menu' ] );
			add_action( 'admin_menu', [ $this, 'admin_menu_reorder' ], 800 );
			add_filter( 'admin_title', [ $this, 'admin_title' ], 10, 2 );
			add_action( 'all_admin_notices', [ $this, 'replace_admin_heading' ] );
			add_filter( 'post_row_actions', [ $this, 'post_row_actions' ], 10, 2 );
			add_action( 'admin_footer', [ $this, 'admin_import_template_form' ] );
			add_action( 'save_post', [ $this, 'on_save_post' ], 10, 2 );
			add_filter( 'display_post_states', [ $this, 'remove_elementor_post_state_from_library' ], 11, 2 );

			add_action( 'parse_query', [ $this, 'admin_query_filter_types' ] );

			// Template filter by category.
			add_action( 'restrict_manage_posts', [ $this, 'add_filter_by_category' ] );

			// Template type column.
			add_action( 'manage_' . self::CPT . '_posts_columns', [ $this, 'admin_columns_headers' ] );
			add_action( 'manage_' . self::CPT . '_posts_custom_column', [ $this, 'admin_columns_content' ], 10, 2 );

			// Template library bulk actions.
			add_filter( 'bulk_actions-edit-elementor_library', [ $this, 'admin_add_bulk_export_action' ] );
			add_filter( 'handle_bulk_actions-edit-elementor_library', [ $this, 'admin_export_multiple_templates' ], 10, 3 );

			// Print template library tabs.
			add_filter( 'views_edit-' . self::CPT, [ $this, 'admin_print_tabs' ] );

			// Show blank state.
			add_action( 'manage_posts_extra_tablenav', [ $this, 'maybe_render_blank_state' ] );
		}

		add_action( 'template_redirect', [ $this, 'block_template_frontend' ] );

		// Remove elementor library templates from WP Sitemap
		add_filter(
			'wp_sitemaps_post_types',
			function( $post_types ) {
				return $this->remove_elementor_cpt_from_sitemap( $post_types );
			}
		);
	}

	/**
	 * @since 2.0.6
	 * @access public
	 */
	public function admin_columns_content( $column_name, $post_id ) {
		if ( 'elementor_library_type' === $column_name ) {
			/** @var Document $document */
			$document = Plugin::$instance->documents->get( $post_id );

			if ( $document && $document instanceof Library_Document ) {
				$document->print_admin_column_type();
			}
		}
	}

	/**
	 * @since 2.0.6
	 * @access public
	 */
	public function admin_columns_headers( $posts_columns ) {
		// Replace original column that bind to the taxonomy - with another column.
		unset( $posts_columns['taxonomy-elementor_library_type'] );

		$offset = 2;

		$posts_columns = array_slice( $posts_columns, 0, $offset, true ) + [
			'elementor_library_type' => esc_html__( 'Type', 'elementor' ),
		] + array_slice( $posts_columns, $offset, null, true );

		return $posts_columns;
	}

	public function get_current_tab_group( $default = '' ) {
		$current_tabs_group = $default;

		if ( ! empty( $_REQUEST[ self::TAXONOMY_TYPE_SLUG ] ) ) {
			$doc_type = Plugin::$instance->documents->get_document_type( $_REQUEST[ self::TAXONOMY_TYPE_SLUG ], '' );
			if ( $doc_type ) {
				$current_tabs_group = $doc_type::get_property( 'admin_tab_group' );
			}
		} elseif ( ! empty( $_REQUEST['tabs_group'] ) ) {
			$current_tabs_group = $_REQUEST['tabs_group'];
		}

		return $current_tabs_group;
	}

	private function get_library_title() {
		$title = '';

		if ( $this->is_current_screen() ) {
			$current_tab_group = $this->get_current_tab_group();

			if ( $current_tab_group ) {
				$titles = [
					'library' => esc_html__( 'Saved Templates', 'elementor' ),
					'theme' => esc_html__( 'Theme Builder', 'elementor' ),
					'popup' => esc_html__( 'Popups', 'elementor' ),
				];

				if ( ! empty( $titles[ $current_tab_group ] ) ) {
					$title = $titles[ $current_tab_group ];
				}
			}
		}

		return $title;
	}

	private function is_current_screen() {
		global $pagenow, $typenow;

		return 'edit.php' === $pagenow && self::CPT === $typenow;
	}

	/**
	 * @param array $post_types
	 *
	 * @return array
	 */
	private function remove_elementor_cpt_from_sitemap( array $post_types ) {
		unset( $post_types[ self::CPT ] );

		return $post_types;
	}

	/**
	 * Template library local source constructor.
	 *
	 * Initializing the template library local source base by registering custom
	 * template data and running custom actions.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function __construct() {
		parent::__construct();

		$this->add_actions();
	}
}
includes/template-library/classes/class-import-images.php000064400000010517151327220420017657 0ustar00<?php
namespace Elementor\TemplateLibrary\Classes;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor template library import images.
 *
 * Elementor template library import images handler class is responsible for
 * importing remote images used by the template library.
 *
 * @since 1.0.0
 */
class Import_Images {

	/**
	 * Replaced images IDs.
	 *
	 * The IDs of all the new imported images. An array containing the old
	 * attachment ID and the new attachment ID generated after the import.
	 *
	 * @since 1.0.0
	 * @access private
	 *
	 * @var array
	 */
	private $_replace_image_ids = [];

	/**
	 * Get image hash.
	 *
	 * Retrieve the sha1 hash of the image URL.
	 *
	 * @since 2.0.0
	 * @access private
	 *
	 * @param string $attachment_url The attachment URL.
	 *
	 * @return string Image hash.
	 */
	private function get_hash_image( $attachment_url ) {
		return sha1( $attachment_url );
	}

	/**
	 * Get saved image.
	 *
	 * Retrieve new image ID, if the image has a new ID after the import.
	 *
	 * @since 2.0.0
	 * @access private
	 *
	 * @param array $attachment The attachment.
	 *
	 * @return false|array New image ID  or false.
	 */
	private function get_saved_image( $attachment ) {
		global $wpdb;

		if ( isset( $this->_replace_image_ids[ $attachment['id'] ] ) ) {
			return $this->_replace_image_ids[ $attachment['id'] ];
		}

		$post_id = $wpdb->get_var(
			$wpdb->prepare(
				'SELECT `post_id` FROM `' . $wpdb->postmeta . '`
					WHERE `meta_key` = \'_elementor_source_image_hash\'
						AND `meta_value` = %s
				;',
				$this->get_hash_image( $attachment['url'] )
			)
		);

		if ( $post_id ) {
			$new_attachment = [
				'id' => $post_id,
				'url' => wp_get_attachment_url( $post_id ),
			];
			$this->_replace_image_ids[ $attachment['id'] ] = $new_attachment;

			return $new_attachment;
		}

		return false;
	}

	/**
	 * Import image.
	 *
	 * Import a single image from a remote server, upload the image WordPress
	 * uploads folder, create a new attachment in the database and updates the
	 * attachment metadata.
	 *
	 * @since 1.0.0
	 * @since 3.2.0 New `$parent_post_id` option added
	 * @access public
	 *
	 * @param array $attachment The attachment.
	 * @param int $parent_post_id Optional
	 *
	 * @return false|array Imported image data, or false.
	 */
	public function import( $attachment, $parent_post_id = null ) {
		if ( ! empty( $attachment['id'] ) ) {
			$saved_image = $this->get_saved_image( $attachment );

			if ( $saved_image ) {
				return $saved_image;
			}
		}

		// Extract the file name and extension from the url.
		$filename = basename( $attachment['url'] );

		$file_content = wp_remote_retrieve_body( wp_safe_remote_get( $attachment['url'] ) );

		if ( empty( $file_content ) ) {
			return false;
		}

		$upload = wp_upload_bits(
			$filename,
			null,
			$file_content
		);

		$post = [
			'post_title' => $filename,
			'guid' => $upload['url'],
		];

		$info = wp_check_filetype( $upload['file'] );
		if ( $info ) {
			$post['post_mime_type'] = $info['type'];
		} else {
			// For now just return the origin attachment
			return $attachment;
			// return new \WP_Error( 'attachment_processing_error', esc_html__( 'Invalid file type.', 'elementor' ) );
		}

		$post_id = wp_insert_attachment( $post, $upload['file'], $parent_post_id );

		// On REST requests.
		if ( ! function_exists( 'wp_generate_attachment_metadata' ) ) {
			require_once ABSPATH . '/wp-admin/includes/image.php';
		}

		if ( ! function_exists( 'wp_read_video_metadata' ) ) {
			require_once ABSPATH . '/wp-admin/includes/media.php';
		}

		wp_update_attachment_metadata(
			$post_id,
			wp_generate_attachment_metadata( $post_id, $upload['file'] )
		);
		update_post_meta( $post_id, '_elementor_source_image_hash', $this->get_hash_image( $attachment['url'] ) );

		$new_attachment = [
			'id' => $post_id,
			'url' => $upload['url'],
		];

		if ( ! empty( $attachment['id'] ) ) {
			$this->_replace_image_ids[ $attachment['id'] ] = $new_attachment;
		}

		return $new_attachment;
	}

	/**
	 * Template library import images constructor.
	 *
	 * Initializing the images import class used by the template library through
	 * the WordPress Filesystem API.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function __construct() {
		if ( ! function_exists( 'WP_Filesystem' ) ) {
			require_once ABSPATH . 'wp-admin/includes/file.php';
		}

		WP_Filesystem();
	}
}
includes/managers/widgets.php000064400000026534151327220420012336 0ustar00<?php
namespace Elementor;

use Elementor\Core\Common\Modules\Ajax\Module as Ajax;
use Elementor\Core\Utils\Exceptions;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor widgets manager.
 *
 * Elementor widgets manager handler class is responsible for registering and
 * initializing all the supported Elementor widgets.
 *
 * @since 1.0.0
 */
class Widgets_Manager {

	/**
	 * Widget types.
	 *
	 * Holds the list of all the widget types.
	 *
	 * @since 1.0.0
	 * @access private
	 *
	 * @var Widget_Base[]
	 */
	private $_widget_types = null;

	/**
	 * Init widgets.
	 *
	 * Initialize Elementor widgets manager. Include all the the widgets files
	 * and register each Elementor and WordPress widget.
	 *
	 * @since 2.0.0
	 * @access private
	*/
	private function init_widgets() {
		$build_widgets_filename = [
			'common',
			'heading',
			'image',
			'text-editor',
			'video',
			'button',
			'divider',
			'spacer',
			'image-box',
			'google-maps',
			'icon',
			'icon-box',
			'star-rating',
			'image-carousel',
			'image-gallery',
			'icon-list',
			'counter',
			'progress',
			'testimonial',
			'tabs',
			'accordion',
			'toggle',
			'social-icons',
			'alert',
			'audio',
			'shortcode',
			'html',
			'menu-anchor',
			'sidebar',
			'read-more',
		];

		$this->_widget_types = [];

		foreach ( $build_widgets_filename as $widget_filename ) {
			include( ELEMENTOR_PATH . 'includes/widgets/' . $widget_filename . '.php' );

			$class_name = str_replace( '-', '_', $widget_filename );

			$class_name = __NAMESPACE__ . '\Widget_' . $class_name;

			$this->register_widget_type( new $class_name() );
		}

		$this->register_wp_widgets();

		/**
		 * After widgets registered.
		 *
		 * Fires after Elementor widgets are registered.
		 *
		 * @since 1.0.0
		 *
		 * @param Widgets_Manager $this The widgets manager.
		 */
		do_action( 'elementor/widgets/widgets_registered', $this );
	}

	/**
	 * Register WordPress widgets.
	 *
	 * Add native WordPress widget to the list of registered widget types.
	 *
	 * Exclude the widgets that are in Elementor widgets black list. Theme and
	 * plugin authors can filter the black list.
	 *
	 * @since 2.0.0
	 * @access private
	*/
	private function register_wp_widgets() {
		global $wp_widget_factory;

		// Skip Pojo widgets.
		$pojo_allowed_widgets = [
			'Pojo_Widget_Recent_Posts',
			'Pojo_Widget_Posts_Group',
			'Pojo_Widget_Gallery',
			'Pojo_Widget_Recent_Galleries',
			'Pojo_Slideshow_Widget',
			'Pojo_Forms_Widget',
			'Pojo_Widget_News_Ticker',

			'Pojo_Widget_WC_Products',
			'Pojo_Widget_WC_Products_Category',
			'Pojo_Widget_WC_Product_Categories',
		];

		// Allow themes/plugins to filter out their widgets.
		$black_list = [];

		/**
		 * Elementor widgets black list.
		 *
		 * Filters the widgets black list that won't be displayed in the panel.
		 *
		 * @since 1.0.0
		 *
		 * @param array $black_list A black list of widgets. Default is an empty array.
		 */
		$black_list = apply_filters( 'elementor/widgets/black_list', $black_list );

		foreach ( $wp_widget_factory->widgets as $widget_class => $widget_obj ) {

			if ( in_array( $widget_class, $black_list ) ) {
				continue;
			}

			if ( $widget_obj instanceof \Pojo_Widget_Base && ! in_array( $widget_class, $pojo_allowed_widgets ) ) {
				continue;
			}

			$elementor_widget_class = __NAMESPACE__ . '\Widget_WordPress';

			$this->register_widget_type(
				new $elementor_widget_class( [], [
					'widget_name' => $widget_class,
				] )
			);
		}
	}

	/**
	 * Require files.
	 *
	 * Require Elementor widget base class.
	 *
	 * @since 2.0.0
	 * @access private
	*/
	private function require_files() {
		require ELEMENTOR_PATH . 'includes/base/widget-base.php';
	}

	/**
	 * Register widget type.
	 *
	 * Add a new widget type to the list of registered widget types.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param Widget_Base $widget Elementor widget.
	 *
	 * @return true True if the widget was registered.
	*/
	public function register_widget_type( Widget_Base $widget ) {
		if ( is_null( $this->_widget_types ) ) {
			$this->init_widgets();
		}

		$this->_widget_types[ $widget->get_name() ] = $widget;

		return true;
	}

	/**
	 * Unregister widget type.
	 *
	 * Removes widget type from the list of registered widget types.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param string $name Widget name.
	 *
	 * @return true True if the widget was unregistered, False otherwise.
	*/
	public function unregister_widget_type( $name ) {
		if ( ! isset( $this->_widget_types[ $name ] ) ) {
			return false;
		}

		unset( $this->_widget_types[ $name ] );

		return true;
	}

	/**
	 * Get widget types.
	 *
	 * Retrieve the registered widget types list.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param string $widget_name Optional. Widget name. Default is null.
	 *
	 * @return Widget_Base|Widget_Base[]|null Registered widget types.
	*/
	public function get_widget_types( $widget_name = null ) {
		if ( is_null( $this->_widget_types ) ) {
			$this->init_widgets();
		}

		if ( null !== $widget_name ) {
			return isset( $this->_widget_types[ $widget_name ] ) ? $this->_widget_types[ $widget_name ] : null;
		}

		return $this->_widget_types;
	}

	/**
	 * Get widget types config.
	 *
	 * Retrieve all the registered widgets with config for each widgets.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array Registered widget types with each widget config.
	*/
	public function get_widget_types_config() {
		$config = [];

		foreach ( $this->get_widget_types() as $widget_key => $widget ) {
			$config[ $widget_key ] = $widget->get_config();
		}

		return $config;
	}

	public function ajax_get_widget_types_controls_config( array $data ) {
		$config = [];

		foreach ( $this->get_widget_types() as $widget_key => $widget ) {
			if ( isset( $data['exclude'][ $widget_key ] ) ) {
				continue;
			}

			$config[ $widget_key ] = [
				'controls' => $widget->get_stack( false )['controls'],
				'tabs_controls' => $widget->get_tabs_controls(),
			];
		}

		return $config;
	}

	/**
	 * Ajax render widget.
	 *
	 * Ajax handler for Elementor render_widget.
	 *
	 * Fired by `wp_ajax_elementor_render_widget` action.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @throws \Exception If current user don't have permissions to edit the post.
	 *
	 * @param array $request Ajax request.
	 *
	 * @return array {
	 *     Rendered widget.
	 *
	 *     @type string $render The rendered HTML.
	 * }
	 */
	public function ajax_render_widget( $request ) {
		$document = Plugin::$instance->documents->get( $request['editor_post_id'] );

		if ( ! $document->is_editable_by_current_user() ) {
			throw new \Exception( 'Access denied.', Exceptions::FORBIDDEN );
		}

		// Override the global $post for the render.
		query_posts(
			[
				'p' => $request['editor_post_id'],
				'post_type' => 'any',
			]
		);

		$editor = Plugin::$instance->editor;
		$is_edit_mode = $editor->is_edit_mode();
		$editor->set_edit_mode( true );

		Plugin::$instance->documents->switch_to_document( $document );

		$render_html = $document->render_element( $request['data'] );

		$editor->set_edit_mode( $is_edit_mode );

		return [
			'render' => $render_html,
		];
	}

	/**
	 * Ajax get WordPress widget form.
	 *
	 * Ajax handler for Elementor editor get_wp_widget_form.
	 *
	 * Fired by `wp_ajax_elementor_editor_get_wp_widget_form` action.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param array $request Ajax request.
	 *
	 * @return bool|string Rendered widget form.
	 */
	public function ajax_get_wp_widget_form( $request ) {
		if ( empty( $request['widget_type'] ) ) {
			return false;
		}

		if ( empty( $request['data'] ) ) {
			$request['data'] = [];
		}

		$element_data = [
			'id' => $request['id'],
			'elType' => 'widget',
			'widgetType' => $request['widget_type'],
			'settings' => $request['data'],
		];

		/**
		 * @var $widget_obj Widget_WordPress
		 */
		$widget_obj = Plugin::$instance->elements_manager->create_element_instance( $element_data );

		if ( ! $widget_obj ) {
			return false;
		}

		return $widget_obj->get_form();
	}

	/**
	 * Render widgets content.
	 *
	 * Used to generate the widget templates on the editor using Underscore JS
	 * template, for all the registered widget types.
	 *
	 * @since 1.0.0
	 * @access public
	*/
	public function render_widgets_content() {
		foreach ( $this->get_widget_types() as $widget ) {
			$widget->print_template();
		}
	}

	/**
	 * Get widgets frontend settings keys.
	 *
	 * Retrieve frontend controls settings keys for all the registered widget
	 * types.
	 *
	 * @since 1.3.0
	 * @access public
	 *
	 * @return array Registered widget types with settings keys for each widget.
	*/
	public function get_widgets_frontend_settings_keys() {
		$keys = [];

		foreach ( $this->get_widget_types() as $widget_type_name => $widget_type ) {
			$widget_type_keys = $widget_type->get_frontend_settings_keys();

			if ( $widget_type_keys ) {
				$keys[ $widget_type_name ] = $widget_type_keys;
			}
		}

		return $keys;
	}

	/**
	 * Enqueue widgets scripts.
	 *
	 * Enqueue all the scripts defined as a dependency for each widget.
	 *
	 * @since 1.3.0
	 * @access public
	*/
	public function enqueue_widgets_scripts() {
		foreach ( $this->get_widget_types() as $widget ) {
			$widget->enqueue_scripts();
		}
	}

	/**
	 * Enqueue widgets styles
	 *
	 * Enqueue all the styles defined as a dependency for each widget
	 *
	 * @access public
	 */
	public function enqueue_widgets_styles() {
		foreach ( $this->get_widget_types() as $widget ) {
			$widget->enqueue_styles();
		}
	}

	/**
	 * Retrieve inline editing configuration.
	 *
	 * Returns general inline editing configurations like toolbar types etc.
	 *
	 * @access public
	 * @since 1.8.0
	 *
	 * @return array {
	 *     Inline editing configuration.
	 *
	 *     @type array $toolbar {
	 *         Toolbar types and the actions each toolbar includes.
	 *         Note: Wysiwyg controls uses the advanced toolbar, textarea controls
	 *         uses the basic toolbar and text controls has no toolbar.
	 *
	 *         @type array $basic    Basic actions included in the edit tool.
	 *         @type array $advanced Advanced actions included in the edit tool.
	 *     }
	 * }
	 */
	public function get_inline_editing_config() {
		$basic_tools = [
			'bold',
			'underline',
			'italic',
		];

		$advanced_tools = array_merge( $basic_tools, [
			'createlink',
			'unlink',
			'h1' => [
				'h1',
				'h2',
				'h3',
				'h4',
				'h5',
				'h6',
				'p',
				'blockquote',
				'pre',
			],
			'list' => [
				'insertOrderedList',
				'insertUnorderedList',
			],
		] );

		return [
			'toolbar' => [
				'basic' => $basic_tools,
				'advanced' => $advanced_tools,
			],
		];
	}

	/**
	 * Widgets manager constructor.
	 *
	 * Initializing Elementor widgets manager.
	 *
	 * @since 1.0.0
	 * @access public
	*/
	public function __construct() {
		$this->require_files();

		add_action( 'elementor/ajax/register_actions', [ $this, 'register_ajax_actions' ] );
	}

	/**
	 * Register ajax actions.
	 *
	 * Add new actions to handle data after an ajax requests returned.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @param Ajax $ajax_manager
	 */
	public function register_ajax_actions( Ajax $ajax_manager ) {
		$ajax_manager->register_ajax_action( 'render_widget', [ $this, 'ajax_render_widget' ] );
		$ajax_manager->register_ajax_action( 'editor_get_wp_widget_form', [ $this, 'ajax_get_wp_widget_form' ] );
		$ajax_manager->register_ajax_action( 'get_widgets_config', [ $this, 'ajax_get_widget_types_controls_config' ] );
	}
}
includes/managers/image.php000064400000007345151327220420011751 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor images manager.
 *
 * Elementor images manager handler class is responsible for retrieving image
 * details.
 *
 * @since 1.0.0
 */
class Images_Manager {

	/**
	 * Get images details.
	 *
	 * Retrieve details for all the images.
	 *
	 * Fired by `wp_ajax_elementor_get_images_details` action.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function get_images_details() {
		// PHPCS - Already validated by wp_ajax.
		$items = $_POST['items']; // phpcs:ignore WordPress.Security.NonceVerification.Missing
		$urls  = [];

		foreach ( $items as $item ) {
			$urls[ $item['id'] ] = $this->get_details( $item['id'], $item['size'], $item['is_first_time'] );
		}

		wp_send_json_success( $urls );
	}

	/**
	 * Get image details.
	 *
	 * Retrieve single image details.
	 *
	 * Fired by `wp_ajax_elementor_get_image_details` action.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param string       $id            Image attachment ID.
	 * @param string|array $size          Image size. Accepts any valid image
	 *                                    size, or an array of width and height
	 *                                    values in pixels (in that order).
	 * @param string       $is_first_time Set 'true' string to force reloading
	 *                                    all image sizes.
	 *
	 * @return array URLs with different image sizes.
	 */
	public function get_details( $id, $size, $is_first_time ) {
		if ( ! class_exists( 'Group_Control_Image_Size' ) ) {
			require_once ELEMENTOR_PATH . '/includes/controls/groups/image-size.php';
		}

		if ( 'true' === $is_first_time ) {
			$sizes = get_intermediate_image_sizes();
			$sizes[] = 'full';
		} else {
			$sizes = [];
		}

		$sizes[] = $size;
		$urls = [];
		foreach ( $sizes as $size ) {
			if ( 0 === strpos( $size, 'custom_' ) ) {
				preg_match( '/custom_(\d*)x(\d*)/', $size, $matches );

				$instance = [
					'image_size' => 'custom',
					'image_custom_dimension' => [
						'width' => $matches[1],
						'height' => $matches[2],
					],
				];

				$urls[ $size ] = Group_Control_Image_Size::get_attachment_image_src( $id, 'image', $instance );
			} else {
				$urls[ $size ] = wp_get_attachment_image_src( $id, $size )[0];
			}
		}

		return $urls;
	}

	/**
	 * Get Light-Box Image Attributes
	 *
	 * Used to retrieve an array of image attributes to be used for displaying an image in Elementor's Light Box module.
	 *
	 * @param int $id       The ID of the image
	 *
	 * @return array An array of image attributes including `title` and `description`.
	 * @since 2.9.0
	 * @access public
	 */

	public function get_lightbox_image_attributes( $id ) {
		$attributes = [];
		$kit = Plugin::$instance->kits_manager->get_active_kit();
		$lightbox_title_src = $kit->get_settings( 'lightbox_title_src' );
		$lightbox_description_src = $kit->get_settings( 'lightbox_description_src' );
		$attachment = get_post( $id );
		$image_data = [
			'alt' => get_post_meta( $attachment->ID, '_wp_attachment_image_alt', true ),
			'caption' => $attachment->post_excerpt,
			'description' => $attachment->post_content,
			'title' => $attachment->post_title,
		];

		if ( $lightbox_title_src && $image_data[ $lightbox_title_src ] ) {
			$attributes['title'] = $image_data[ $lightbox_title_src ];
		}

		if ( $lightbox_description_src && $image_data[ $lightbox_description_src ] ) {
			$attributes['description'] = $image_data[ $lightbox_description_src ];
		}

		return $attributes;
	}

	/**
	 * Images manager constructor.
	 *
	 * Initializing Elementor images manager.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function __construct() {
		add_action( 'wp_ajax_elementor_get_images_details', [ $this, 'get_images_details' ] );
	}
}
includes/managers/icons.php000064400000044130151327220420011773 0ustar00<?php
namespace Elementor;

use Elementor\Core\Page_Assets\Data_Managers\Font_Icon_Svg as Font_Icon_Svg_Data_Manager;
use Elementor\Core\Page_Assets\Managers\Font_Icon_Svg\Manager as Font_Icon_Svg_Manager;
use Elementor\Core\Files\Assets\Svg\Svg_Handler;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor icons manager.
 *
 * Elementor icons manager handler class
 *
 * @since 2.4.0
 */
class Icons_Manager {

	const NEEDS_UPDATE_OPTION = 'icon_manager_needs_update';

	const FONT_ICON_SVG_CLASS_NAME = 'e-font-icon-svg';

	const LOAD_FA4_SHIM_OPTION_KEY = 'elementor_load_fa4_shim';
	/**
	 * Tabs.
	 *
	 * Holds the list of all the tabs.
	 *
	 * @access private
	 * @static
	 * @since 2.4.0
	 * @var array
	 */
	private static $tabs;

	private static $data_manager;

	private static $font_icon_svg_symbols = [];

	private static function get_needs_upgrade_option() {
		return get_option( 'elementor_' . self::NEEDS_UPDATE_OPTION, null );
	}

	/**
	 * register styles
	 *
	 * Used to register all icon types stylesheets so they could be enqueued later by widgets
	 */
	public function register_styles() {
		$config = self::get_icon_manager_tabs_config();

		$shared_styles = [];

		foreach ( $config as $type => $icon_type ) {
			if ( ! isset( $icon_type['url'] ) ) {
				continue;
			}
			$dependencies = [];
			if ( ! empty( $icon_type['enqueue'] ) ) {
				foreach ( (array) $icon_type['enqueue'] as $font_css_url ) {
					if ( ! in_array( $font_css_url, array_keys( $shared_styles ) ) ) {
						$style_handle = 'elementor-icons-shared-' . count( $shared_styles );
						wp_register_style(
							$style_handle,
							$font_css_url,
							[],
							$icon_type['ver']
						);
						$shared_styles[ $font_css_url ] = $style_handle;
					}
					$dependencies[] = $shared_styles[ $font_css_url ];
				}
			}
			wp_register_style(
				'elementor-icons-' . $icon_type['name'],
				$icon_type['url'],
				$dependencies,
				$icon_type['ver']
			);
		}
	}

	/**
	 * Init Tabs
	 *
	 * Initiate Icon Manager Tabs.
	 *
	 * @access private
	 * @static
	 * @since 2.4.0
	 */
	private static function init_tabs() {
		$initial_tabs = [
			'fa-regular' => [
				'name' => 'fa-regular',
				'label' => esc_html__( 'Font Awesome - Regular', 'elementor' ),
				'url' => self::get_fa_asset_url( 'regular' ),
				'enqueue' => [ self::get_fa_asset_url( 'fontawesome' ) ],
				'prefix' => 'fa-',
				'displayPrefix' => 'far',
				'labelIcon' => 'fab fa-font-awesome-alt',
				'ver' => '5.15.3',
				'fetchJson' => self::get_fa_asset_url( 'regular', 'js', false ),
				'native' => true,
			],
			'fa-solid' => [
				'name' => 'fa-solid',
				'label' => esc_html__( 'Font Awesome - Solid', 'elementor' ),
				'url' => self::get_fa_asset_url( 'solid' ),
				'enqueue' => [ self::get_fa_asset_url( 'fontawesome' ) ],
				'prefix' => 'fa-',
				'displayPrefix' => 'fas',
				'labelIcon' => 'fab fa-font-awesome',
				'ver' => '5.15.3',
				'fetchJson' => self::get_fa_asset_url( 'solid', 'js', false ),
				'native' => true,
			],
			'fa-brands' => [
				'name' => 'fa-brands',
				'label' => esc_html__( 'Font Awesome - Brands', 'elementor' ),
				'url' => self::get_fa_asset_url( 'brands' ),
				'enqueue' => [ self::get_fa_asset_url( 'fontawesome' ) ],
				'prefix' => 'fa-',
				'displayPrefix' => 'fab',
				'labelIcon' => 'fab fa-font-awesome-flag',
				'ver' => '5.15.3',
				'fetchJson' => self::get_fa_asset_url( 'brands', 'js', false ),
				'native' => true,
			],
		];

		/**
		 * Initial icon manager tabs.
		 *
		 * Filters the list of initial icon manager tabs.
		 *
		 * @param array $icon_manager_tabs Initial icon manager tabs.
		 */
		$initial_tabs = apply_filters( 'elementor/icons_manager/native', $initial_tabs );

		self::$tabs = $initial_tabs;
	}

	/**
	 * Get Icon Manager Tabs
	 * @return array
	 */
	public static function get_icon_manager_tabs() {
		if ( self::is_font_icon_inline_svg() && ! Plugin::$instance->editor->is_edit_mode() && ! Plugin::$instance->preview->is_preview_mode() ) {
			self::$tabs = [];
		} elseif ( ! self::$tabs ) {
			self::init_tabs();
		}

		$additional_tabs = [];

		/**
		 * Additional icon manager tabs.
		 *
		 * Filters additional icon manager tabs.
		 *
		 * @param array $additional_tabs Additional icon manager tabs. Default is an empty array.
		 */
		$additional_tabs = apply_filters( 'elementor/icons_manager/additional_tabs', $additional_tabs );

		return array_merge( self::$tabs, $additional_tabs );
	}

	public static function enqueue_shim() {
		wp_enqueue_script(
			'font-awesome-4-shim',
			self::get_fa_asset_url( 'v4-shims', 'js' ),
			[],
			ELEMENTOR_VERSION
		);
		// Make sure that the CSS in the 'all' file does not override FA Pro's CSS
		if ( ! wp_script_is( 'font-awesome-pro' ) ) {
			wp_enqueue_style(
				'font-awesome-5-all',
				self::get_fa_asset_url( 'all' ),
				[],
				ELEMENTOR_VERSION
			);
		}
		wp_enqueue_style(
			'font-awesome-4-shim',
			self::get_fa_asset_url( 'v4-shims' ),
			[],
			ELEMENTOR_VERSION
		);
	}

	private static function get_fa_asset_url( $filename, $ext_type = 'css', $add_suffix = true ) {
		static $is_test_mode = null;
		if ( null === $is_test_mode ) {
			$is_test_mode = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG || defined( 'ELEMENTOR_TESTS' ) && ELEMENTOR_TESTS;
		}
		$url = ELEMENTOR_ASSETS_URL . 'lib/font-awesome/' . $ext_type . '/' . $filename;
		if ( ! $is_test_mode && $add_suffix ) {
			$url .= '.min';
		}

		return $url . '.' . $ext_type;
	}

	public static function get_icon_manager_tabs_config() {
		$tabs = [
			'all' => [
				'name' => 'all',
				'label' => esc_html__( 'All Icons', 'elementor' ),
				'labelIcon' => 'eicon-filter',
				'native' => true,
			],
		];

		return array_values( array_merge( $tabs, self::get_icon_manager_tabs() ) );
	}

	/**
	 * is_font_awesome_inline
	 *
	 * @return bool
	 */
	private static function is_font_icon_inline_svg() {
		return Plugin::$instance->experiments->is_feature_active( 'e_font_icon_svg' );
	}

	/**
	 * render_svg_symbols
	 *
	 */
	public static function render_svg_symbols() {
		if ( ! self::$font_icon_svg_symbols ) {
			return;
		}

		$svg = '<svg xmlns="http://www.w3.org/2000/svg" style="display: none;">';

		foreach ( self::$font_icon_svg_symbols as $symbol_id => $symbol ) {
			$svg .= '<symbol id="' . $symbol_id . '" viewBox="0 0 ' . esc_attr( $symbol['width'] ) . ' ' . esc_attr( $symbol['height'] ) . '">';
			$svg .= '<path d="' . esc_attr( $symbol['path'] ) . '"></path>';
			$svg .= '</symbol>';
		}

		$svg .= '</svg>';

		Utils::print_unescaped_internal_string( $svg );
	}

	public static function get_icon_svg_data( $icon ) {
		$font_family_manager = Font_Icon_Svg_Manager::get_font_family_manager( $icon['font_family'] );

		$config = $font_family_manager::get_config( $icon );

		return self::$data_manager->get_asset_data( $config );
	}

	/**
	 * Get font awesome svg.
	 * @param $icon array [ 'value' => string, 'library' => string ]
	 *
	 * @return bool|mixed|string
	 */
	public static function get_font_icon_svg( $icon, $attributes = [] ) {
		// Load the SVG from the database.
		$icon_data = self::get_icon_svg_data( $icon );

		if ( ! $icon_data['path'] ) {
			return '';
		}

		// Add the icon data to the symbols array for later use in page rendering process.
		if ( ! in_array( $icon_data['key'], self::$font_icon_svg_symbols, true ) ) {
			self::$font_icon_svg_symbols[ $icon_data['key'] ] = $icon_data;
		}

		if ( ! empty( $attributes['class'] ) && ! is_array( $attributes['class'] ) ) {
			$attributes['class'] = [ $attributes['class'] ];
		}

		$attributes['class'][] = self::FONT_ICON_SVG_CLASS_NAME;

		/**
		 * If in edit mode inline the full svg, otherwise use the symbol.
		 * Will be displayed only after page update or widget "blur".
		 */
		if ( Plugin::$instance->editor->is_edit_mode() ) {
			return '<svg xmlns="http://www.w3.org/2000/svg" ' . Utils::render_html_attributes( $attributes ) . '
				viewBox="0 0 ' . esc_attr( $icon_data['width'] ) . ' ' . esc_attr( $icon_data['height'] ) . '">
				<path d="' . esc_attr( $icon_data['path'] ) . '"></path>
			</svg>';
		}

		return '<svg ' . Utils::render_html_attributes( $attributes ) . '><use xlink:href="#' . esc_attr( $icon_data['key'] ) . '" /></svg>';
	}

	public static function render_uploaded_svg_icon( $value ) {
		if ( ! isset( $value['id'] ) ) {
			return '';
		}

		return Svg_Handler::get_inline_svg( $value['id'] );
	}

	public static function render_font_icon( $icon, $attributes = [], $tag = 'i' ) {
		$icon_types = self::get_icon_manager_tabs();

		if ( isset( $icon_types[ $icon['library'] ]['render_callback'] ) && is_callable( $icon_types[ $icon['library'] ]['render_callback'] ) ) {
			return call_user_func_array( $icon_types[ $icon['library'] ]['render_callback'], [ $icon, $attributes, $tag ] );
		}

		$content = '';

		$font_icon_svg_family = self::is_font_icon_inline_svg() ? Font_Icon_Svg_Manager::get_font_family( $icon['library'] ) : '';

		if ( $font_icon_svg_family ) {
			$icon['font_family'] = $font_icon_svg_family;

			$content = self::get_font_icon_svg( $icon, $attributes );

			if ( $content ) {
				return $content;
			}
		}

		if ( ! $content ) {
			if ( empty( $attributes['class'] ) ) {
				$attributes['class'] = $icon['value'];
			} else {
				if ( is_array( $attributes['class'] ) ) {
					$attributes['class'][] = $icon['value'];
				} else {
					$attributes['class'] .= ' ' . $icon['value'];
				}
			}
		}

		return '<' . $tag . ' ' . Utils::render_html_attributes( $attributes ) . '>' . $content . '</' . $tag . '>';
	}

	/**
	 * Render Icon
	 *
	 * Used to render Icon for \Elementor\Controls_Manager::ICONS
	 * @param array $icon             Icon Type, Icon value
	 * @param array $attributes       Icon HTML Attributes
	 * @param string $tag             Icon HTML tag, defaults to <i>
	 *
	 * @return mixed|string
	 */
	public static function render_icon( $icon, $attributes = [], $tag = 'i' ) {
		if ( empty( $icon['library'] ) ) {
			return false;
		}

		$output = '';

		/**
		 * When the library value is svg it means that it's a SVG media attachment uploaded by the user.
		 * Otherwise, it's the name of the font family that the icon belongs to.
		 */
		if ( 'svg' === $icon['library'] ) {
			$output = self::render_uploaded_svg_icon( $icon['value'] );
		} else {
			$output = self::render_font_icon( $icon, $attributes, $tag );
		}

		Utils::print_unescaped_internal_string( $output );

		return true;
	}

	/**
	 * Font Awesome 4 to font Awesome 5 Value Migration
	 *
	 * used to convert string value of Icon control to array value of Icons control
	 * ex: 'fa fa-star' => [ 'value' => 'fas fa-star', 'library' => 'fa-solid' ]
	 *
	 * @param $value
	 *
	 * @return array
	 */
	public static function fa4_to_fa5_value_migration( $value ) {
		static $migration_dictionary = false;
		if ( '' === $value ) {
			return [
				'value' => '',
				'library' => '',
			];
		}
		if ( false === $migration_dictionary ) {
			$migration_dictionary = json_decode( file_get_contents( ELEMENTOR_ASSETS_PATH . 'lib/font-awesome/migration/mapping.js' ), true );
		}
		if ( isset( $migration_dictionary[ $value ] ) ) {
			return $migration_dictionary[ $value ];
		}

		return [
			'value' => 'fas ' . str_replace( 'fa ', '', $value ),
			'library' => 'fa-solid',
		];
	}

	/**
	 * on_import_migration
	 * @param array $element        settings array
	 * @param string $old_control   old control id
	 * @param string $new_control   new control id
	 * @param bool $remove_old      boolean weather to remove old control or not
	 *
	 * @return array
	 */
	public static function on_import_migration( array $element, $old_control = '', $new_control = '', $remove_old = false ) {

		if ( ! isset( $element['settings'][ $old_control ] ) || isset( $element['settings'][ $new_control ] ) ) {
			return $element;
		}

		// Case when old value is saved as empty string
		$new_value = [
			'value' => '',
			'library' => '',
		];

		// Case when old value needs migration
		if ( ! empty( $element['settings'][ $old_control ] ) && ! self::is_migration_allowed() ) {
			$new_value = self::fa4_to_fa5_value_migration( $element['settings'][ $old_control ] );
		}

		$element['settings'][ $new_control ] = $new_value;

		//remove old value
		if ( $remove_old ) {
			unset( $element['settings'][ $old_control ] );
		}

		return $element;
	}

	/**
	 * is_migration_allowed
	 * @return bool
	 */
	public static function is_migration_allowed() {
		static $migration_allowed = false;
		if ( false === $migration_allowed ) {
			$migration_allowed = null === self::get_needs_upgrade_option();

			/**
			 * Is icon migration allowed.
			 *
			 * Filters whther the icons migration allowed.
			 *
			 * @param bool $migration_allowed Is icon migration is allowed.
			 */
			$migration_allowed = apply_filters( 'elementor/icons_manager/migration_allowed', $migration_allowed );
		}
		return $migration_allowed;
	}

	/**
	 * Register_Admin Settings
	 *
	 * adds Font Awesome migration / update admin settings
	 * @param Settings $settings
	 */
	public function register_admin_settings( Settings $settings ) {
		$settings->add_field(
			Settings::TAB_ADVANCED,
			Settings::TAB_ADVANCED,
			'load_fa4_shim',
			[
				'label' => esc_html__( 'Load Font Awesome 4 Support', 'elementor' ),
				'field_args' => [
					'type' => 'select',
					'std' => '',
					'options' => [
						'' => esc_html__( 'No', 'elementor' ),
						'yes' => esc_html__( 'Yes', 'elementor' ),
					],
					'desc' => esc_html__( 'Font Awesome 4 support script (shim.js) is a script that makes sure all previously selected Font Awesome 4 icons are displayed correctly while using Font Awesome 5 library.', 'elementor' ),
				],
			]
		);
	}

	public function register_admin_tools_settings( Tools $settings ) {
		$settings->add_tab( 'fontawesome4_migration', [ 'label' => esc_html__( 'Font Awesome Upgrade', 'elementor' ) ] );

		$settings->add_section( 'fontawesome4_migration', 'fontawesome4_migration', [
			'callback' => function() {
				echo '<h2>' . esc_html__( 'Font Awesome Upgrade', 'elementor' ) . '</h2>';
				echo '<p>' . // PHPCS - Plain Text
				esc_html__( 'Access 1,500+ amazing Font Awesome 5 icons and enjoy faster performance and design flexibility.', 'elementor' ) . '<br>' . // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
				esc_html__( 'By upgrading, whenever you edit a page containing a Font Awesome 4 icon, Elementor will convert it to the new Font Awesome 5 icon.', 'elementor' ) . // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
				'</p><p><strong>' .
				esc_html__( 'Please note that the upgrade process may cause some of the previously used Font Awesome 4 icons to look a bit different due to minor design changes made by Font Awesome.', 'elementor' ) . // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
				'</strong></p><p>' .
				esc_html__( 'The upgrade process includes a database update', 'elementor' ) . ' - ' . // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
				esc_html__( 'We highly recommend backing up your database before performing this upgrade.', 'elementor' ) . // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
				'</p>' .
				esc_html__( 'This action is not reversible and cannot be undone by rolling back to previous versions.', 'elementor' ) . // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
				'</p>';
			},
			'fields' => [
				[
					'label'      => esc_html__( 'Font Awesome Upgrade', 'elementor' ),
					'field_args' => [
						'type' => 'raw_html',
						'html' => sprintf( '<span data-action="%s" data-_nonce="%s" class="button" id="elementor_upgrade_fa_button">%s</span>',
							self::NEEDS_UPDATE_OPTION . '_upgrade',
							wp_create_nonce( self::NEEDS_UPDATE_OPTION ),
							esc_html__( 'Upgrade To Font Awesome 5', 'elementor' )
						),
					],
				],
			],
		] );
	}

	/**
	 * Ajax Upgrade to FontAwesome 5
	 */
	public function ajax_upgrade_to_fa5() {
		check_ajax_referer( self::NEEDS_UPDATE_OPTION, '_nonce' );

		delete_option( 'elementor_' . self::NEEDS_UPDATE_OPTION );

		wp_send_json_success( [ 'message' => '<p>' . esc_html__( 'Hurray! The upgrade process to Font Awesome 5 was completed successfully.', 'elementor' ) . '</p>' ] );
	}

	/**
	 * Add Update Needed Flag
	 * @param array $settings
	 *
	 * @return array;
	 */
	public function add_update_needed_flag( $settings ) {
		$settings['icons_update_needed'] = true;
		return $settings;
	}

	public function enqueue_fontawesome_css() {
		if ( ! self::is_migration_allowed() ) {
			wp_enqueue_style( 'font-awesome' );
		} else {
			$current_filter = current_filter();
			$load_shim = get_option( self::LOAD_FA4_SHIM_OPTION_KEY, false );
			if ( 'elementor/editor/after_enqueue_styles' === $current_filter ) {
				self::enqueue_shim();
			} else if ( 'yes' === $load_shim ) {
				self::enqueue_shim();
			}
		}
	}

	/**
	 * @deprecated 3.1.0
	 */
	public function add_admin_strings() {
		Plugin::$instance->modules_manager->get_modules( 'dev-tools' )->deprecation->deprecated_function( __METHOD__, '3.1.0' );

		return [];
	}

	/**
	 * @since 3.0.0
	 * @deprecated 3.0.0
	 */
	public function register_ajax_actions() {
		_deprecated_function( __METHOD__, '3.0.0' );
	}

	/**
	 * @since 3.0.0.
	 * @deprecated 3.0.0
	 */
	public function ajax_enable_svg_uploads() {
		_deprecated_function( __METHOD__, '3.0.0' );
	}

	/**
	 * Icons Manager constructor
	 */
	public function __construct() {
		if ( is_admin() ) {
			// @todo: remove once we deprecate fa4
			add_action( 'elementor/admin/after_create_settings/' . Settings::PAGE_ID, [ $this, 'register_admin_settings' ], 100 );
		}

		if ( self::is_font_icon_inline_svg() ) {
			self::$data_manager = new Font_Icon_Svg_Data_Manager();

			add_action( 'wp_footer', [ $this, 'render_svg_symbols' ], 10 );
		}

		add_action( 'elementor/frontend/after_enqueue_styles', [ $this, 'enqueue_fontawesome_css' ] );
		add_action( 'elementor/frontend/after_register_styles', [ $this, 'register_styles' ] );

		if ( ! self::is_migration_allowed() ) {
			add_filter( 'elementor/editor/localize_settings', [ $this, 'add_update_needed_flag' ] );
			add_action( 'elementor/admin/after_create_settings/' . Tools::PAGE_ID, [ $this, 'register_admin_tools_settings' ], 100 );

			if ( ! empty( $_POST ) ) { // phpcs:ignore -- nonce validation done in callback
				add_action( 'wp_ajax_' . self::NEEDS_UPDATE_OPTION . '_upgrade', [ $this, 'ajax_upgrade_to_fa5' ] );
			}
		}
	}
}
includes/managers/elements.php000064400000016752151327220420012505 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor elements manager.
 *
 * Elementor elements manager handler class is responsible for registering and
 * initializing all the supported elements.
 *
 * @since 1.0.0
 */
class Elements_Manager {

	/**
	 * Element types.
	 *
	 * Holds the list of all the element types.
	 *
	 * @access private
	 *
	 * @var Element_Base[]
	 */
	private $_element_types;

	/**
	 * Element categories.
	 *
	 * Holds the list of all the element categories.
	 *
	 * @access private
	 *
	 * @var
	 */
	private $categories;

	/**
	 * Elements constructor.
	 *
	 * Initializing Elementor elements manager.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function __construct() {
		$this->require_files();
	}

	/**
	 * Create element instance.
	 *
	 * This method creates a new element instance for any given element.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param array        $element_data Element data.
	 * @param array        $element_args Optional. Element arguments. Default is
	 *                                   an empty array.
	 * @param Element_Base $element_type Optional. Element type. Default is null.
	 *
	 * @return Element_Base|null Element instance if element created, or null
	 *                           otherwise.
	 */
	public function create_element_instance( array $element_data, array $element_args = [], Element_Base $element_type = null ) {
		if ( null === $element_type ) {
			if ( 'widget' === $element_data['elType'] ) {
				$element_type = Plugin::$instance->widgets_manager->get_widget_types( $element_data['widgetType'] );
			} else {
				$element_type = $this->get_element_types( $element_data['elType'] );
			}
		}

		if ( ! $element_type ) {
			return null;
		}

		$args = array_merge( $element_type->get_default_args(), $element_args );

		$element_class = $element_type->get_class_name();

		try {
			$element = new $element_class( $element_data, $args );
		} catch ( \Exception $e ) {
			return null;
		}

		return $element;
	}

	/**
	 * Get element categories.
	 *
	 * Retrieve the list of categories the element belongs to.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array Element categories.
	 */
	public function get_categories() {
		if ( null === $this->categories ) {
			$this->init_categories();
		}

		return $this->categories;
	}

	/**
	 * Add element category.
	 *
	 * Register new category for the element.
	 *
	 * @since 1.7.12
	 * @access public
	 *
	 * @param string $category_name       Category name.
	 * @param array  $category_properties Category properties.
	 */
	public function add_category( $category_name, $category_properties ) {
		if ( null === $this->categories ) {
			$this->get_categories();
		}

		if ( ! isset( $this->categories[ $category_name ] ) ) {
			$this->categories[ $category_name ] = $category_properties;
		}
	}

	/**
	 * Register element type.
	 *
	 * Add new type to the list of registered types.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param Element_Base $element Element instance.
	 *
	 * @return bool Whether the element type was registered.
	 */
	public function register_element_type( Element_Base $element ) {
		$this->_element_types[ $element->get_name() ] = $element;

		return true;
	}

	/**
	 * Unregister element type.
	 *
	 * Remove element type from the list of registered types.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param string $name Element name.
	 *
	 * @return bool Whether the element type was unregister, or not.
	 */
	public function unregister_element_type( $name ) {
		if ( ! isset( $this->_element_types[ $name ] ) ) {
			return false;
		}

		unset( $this->_element_types[ $name ] );

		return true;
	}

	/**
	 * Get element types.
	 *
	 * Retrieve the list of all the element types, or if a specific element name
	 * was provided retrieve his element types.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param string $element_name Optional. Element name. Default is null.
	 *
	 * @return null|Element_Base|Element_Base[] Element types, or a list of all the element
	 *                             types, or null if element does not exist.
	 */
	public function get_element_types( $element_name = null ) {
		if ( is_null( $this->_element_types ) ) {
			$this->init_elements();
		}

		if ( null !== $element_name ) {
			return isset( $this->_element_types[ $element_name ] ) ? $this->_element_types[ $element_name ] : null;
		}

		return $this->_element_types;
	}

	/**
	 * Get element types config.
	 *
	 * Retrieve the config of all the element types.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array Element types config.
	 */
	public function get_element_types_config() {
		$config = [];

		foreach ( $this->get_element_types() as $element ) {
			$config[ $element->get_name() ] = $element->get_config();
		}

		return $config;
	}

	/**
	 * Render elements content.
	 *
	 * Used to generate the elements templates on the editor.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function render_elements_content() {
		foreach ( $this->get_element_types() as $element_type ) {
			$element_type->print_template();
		}
	}

	/**
	 * Init elements.
	 *
	 * Initialize Elementor elements by registering the supported elements.
	 * Elementor supports by default `section` element and `column` element.
	 *
	 * @since 2.0.0
	 * @access private
	 */
	private function init_elements() {
		$this->_element_types = [];

		foreach ( [ 'section', 'column' ] as $element_name ) {
			$class_name = __NAMESPACE__ . '\Element_' . $element_name;

			$this->register_element_type( new $class_name() );
		}

		/**
		 * After elements registered.
		 *
		 * Fires after Elementor elements are registered.
		 *
		 * @since 1.0.0
		 */
		do_action( 'elementor/elements/elements_registered', $this );
	}

	/**
	 * Init categories.
	 *
	 * Initialize the element categories.
	 *
	 * @since 1.7.12
	 * @access private
	 */
	private function init_categories() {
		$this->categories = [
			'basic' => [
				'title' => esc_html__( 'Basic', 'elementor' ),
				'icon' => 'eicon-font',
			],
			'pro-elements' => [
				'title' => esc_html__( 'Pro', 'elementor' ),
			],
			'general' => [
				'title' => esc_html__( 'General', 'elementor' ),
				'icon' => 'eicon-font',
			],
			'theme-elements' => [
				'title' => esc_html__( 'Site', 'elementor' ),
				'active' => false,
			],
			'woocommerce-elements' => [
				'title' => esc_html__( 'WooCommerce', 'elementor' ),
				'active' => false,
			],
		];

		/**
		 * When categories are registered.
		 *
		 * Fires after basic categories are registered, before WordPress
		 * category have been registered.
		 *
		 * This is where categories registered by external developers are
		 * added.
		 *
		 * @since 2.0.0
		 *
		 * @param Elements_Manager $this Elements manager instance.
		 */
		do_action( 'elementor/elements/categories_registered', $this );

		$this->categories['pojo'] = [
			'title' => esc_html__( 'Pojo Themes', 'elementor' ),
			'icon' => 'eicon-pojome',
		];

		$this->categories['wordpress'] = [
			'title' => esc_html__( 'WordPress', 'elementor' ),
			'icon' => 'eicon-wordpress',
			'active' => false,
		];
	}

	/**
	 * Require files.
	 *
	 * Require Elementor element base class and column, section and repeater
	 * elements.
	 *
	 * @since 1.0.0
	 * @access private
	 */
	private function require_files() {
		require_once ELEMENTOR_PATH . 'includes/base/element-base.php';

		require ELEMENTOR_PATH . 'includes/elements/column.php';
		require ELEMENTOR_PATH . 'includes/elements/section.php';
		require ELEMENTOR_PATH . 'includes/elements/repeater.php';
	}
}
includes/managers/controls.php000064400000055172151327220420012533 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor controls manager.
 *
 * Elementor controls manager handler class is responsible for registering and
 * initializing all the supported controls, both regular controls and the group
 * controls.
 *
 * @since 1.0.0
 */
class Controls_Manager {

	/**
	 * Content tab.
	 */
	const TAB_CONTENT = 'content';

	/**
	 * Style tab.
	 */
	const TAB_STYLE = 'style';

	/**
	 * Advanced tab.
	 */
	const TAB_ADVANCED = 'advanced';

	/**
	 * Responsive tab.
	 */
	const TAB_RESPONSIVE = 'responsive';

	/**
	 * Layout tab.
	 */
	const TAB_LAYOUT = 'layout';

	/**
	 * Settings tab.
	 */
	const TAB_SETTINGS = 'settings';

	/**
	 * Text control.
	 */
	const TEXT = 'text';

	/**
	 * Number control.
	 */
	const NUMBER = 'number';

	/**
	 * Textarea control.
	 */
	const TEXTAREA = 'textarea';

	/**
	 * Select control.
	 */
	const SELECT = 'select';

	/**
	 * Switcher control.
	 */
	const SWITCHER = 'switcher';

	/**
	 * Button control.
	 */
	const BUTTON = 'button';

	/**
	 * Hidden control.
	 */
	const HIDDEN = 'hidden';

	/**
	 * Heading control.
	 */
	const HEADING = 'heading';

	/**
	 * Raw HTML control.
	 */
	const RAW_HTML = 'raw_html';

	/**
	 * Deprecated Notice control.
	 */
	const DEPRECATED_NOTICE = 'deprecated_notice';

	/**
	 * Popover Toggle control.
	 */
	const POPOVER_TOGGLE = 'popover_toggle';

	/**
	 * Section control.
	 */
	const SECTION = 'section';

	/**
	 * Tab control.
	 */
	const TAB = 'tab';

	/**
	 * Tabs control.
	 */
	const TABS = 'tabs';

	/**
	 * Divider control.
	 */
	const DIVIDER = 'divider';

	/**
	 * Color control.
	 */
	const COLOR = 'color';

	/**
	 * Media control.
	 */
	const MEDIA = 'media';

	/**
	 * Slider control.
	 */
	const SLIDER = 'slider';

	/**
	 * Dimensions control.
	 */
	const DIMENSIONS = 'dimensions';

	/**
	 * Choose control.
	 */
	const CHOOSE = 'choose';

	/**
	 * WYSIWYG control.
	 */
	const WYSIWYG = 'wysiwyg';

	/**
	 * Code control.
	 */
	const CODE = 'code';

	/**
	 * Font control.
	 */
	const FONT = 'font';

	/**
	 * Image dimensions control.
	 */
	const IMAGE_DIMENSIONS = 'image_dimensions';

	/**
	 * WordPress widget control.
	 */
	const WP_WIDGET = 'wp_widget';

	/**
	 * URL control.
	 */
	const URL = 'url';

	/**
	 * Repeater control.
	 */
	const REPEATER = 'repeater';

	/**
	 * Icon control.
	 */
	const ICON = 'icon';

	/**
	 * Icons control.
	 */
	const ICONS = 'icons';

	/**
	 * Gallery control.
	 */
	const GALLERY = 'gallery';

	/**
	 * Structure control.
	 */
	const STRUCTURE = 'structure';

	/**
	 * Select2 control.
	 */
	const SELECT2 = 'select2';

	/**
	 * Date/Time control.
	 */
	const DATE_TIME = 'date_time';

	/**
	 * Box shadow control.
	 */
	const BOX_SHADOW = 'box_shadow';

	/**
	 * Text shadow control.
	 */
	const TEXT_SHADOW = 'text_shadow';

	/**
	 * Entrance animation control.
	 */
	const ANIMATION = 'animation';

	/**
	 * Hover animation control.
	 */
	const HOVER_ANIMATION = 'hover_animation';

	/**
	 * Exit animation control.
	 */
	const EXIT_ANIMATION = 'exit_animation';

	/**
	 * Controls.
	 *
	 * Holds the list of all the controls. Default is `null`.
	 *
	 * @since 1.0.0
	 * @access private
	 *
	 * @var Base_Control[]
	 */
	private $controls = null;

	/**
	 * Control groups.
	 *
	 * Holds the list of all the control groups. Default is an empty array.
	 *
	 * @since 1.0.0
	 * @access private
	 *
	 * @var Group_Control_Base[]
	 */
	private $control_groups = [];

	/**
	 * Control stacks.
	 *
	 * Holds the list of all the control stacks. Default is an empty array.
	 *
	 * @since 1.0.0
	 * @access private
	 *
	 * @var array
	 */
	private $stacks = [];

	/**
	 * Tabs.
	 *
	 * Holds the list of all the tabs.
	 *
	 * @since 1.0.0
	 * @access private
	 * @static
	 *
	 * @var array
	 */
	private static $tabs;

	/**
	 * Init tabs.
	 *
	 * Initialize control tabs.
	 *
	 * @since 1.6.0
	 * @access private
	 * @static
	 */
	private static function init_tabs() {
		self::$tabs = [
			self::TAB_CONTENT => esc_html__( 'Content', 'elementor' ),
			self::TAB_STYLE => esc_html__( 'Style', 'elementor' ),
			self::TAB_ADVANCED => esc_html__( 'Advanced', 'elementor' ),
			self::TAB_RESPONSIVE => esc_html__( 'Responsive', 'elementor' ),
			self::TAB_LAYOUT => esc_html__( 'Layout', 'elementor' ),
			self::TAB_SETTINGS => esc_html__( 'Settings', 'elementor' ),
		];
	}

	/**
	 * Get tabs.
	 *
	 * Retrieve the tabs of the current control.
	 *
	 * @since 1.6.0
	 * @access public
	 * @static
	 *
	 * @return array Control tabs.
	 */
	public static function get_tabs() {
		if ( ! self::$tabs ) {
			self::init_tabs();
		}

		return self::$tabs;
	}

	/**
	 * Add tab.
	 *
	 * This method adds a new tab to the current control.
	 *
	 * @since 1.6.0
	 * @access public
	 * @static
	 *
	 * @param string $tab_name  Tab name.
	 * @param string $tab_label Tab label.
	 */
	public static function add_tab( $tab_name, $tab_label = '' ) {
		if ( ! self::$tabs ) {
			self::init_tabs();
		}

		if ( isset( self::$tabs[ $tab_name ] ) ) {
			return;
		}

		self::$tabs[ $tab_name ] = $tab_label;
	}

	public static function get_groups_names() {
		// Group name must use "-" instead of "_"
		return [
			'background',
			'border',
			'typography',
			'image-size',
			'box-shadow',
			'css-filter',
			'text-shadow',
		];
	}

	public static function get_controls_names() {
		return [
			self::TEXT,
			self::NUMBER,
			self::TEXTAREA,
			self::SELECT,
			self::SWITCHER,

			self::BUTTON,
			self::HIDDEN,
			self::HEADING,
			self::RAW_HTML,
			self::POPOVER_TOGGLE,
			self::SECTION,
			self::TAB,
			self::TABS,
			self::DIVIDER,
			self::DEPRECATED_NOTICE,

			self::COLOR,
			self::MEDIA,
			self::SLIDER,
			self::DIMENSIONS,
			self::CHOOSE,
			self::WYSIWYG,
			self::CODE,
			self::FONT,
			self::IMAGE_DIMENSIONS,

			self::WP_WIDGET,

			self::URL,
			self::REPEATER,
			self::ICON,
			self::ICONS,
			self::GALLERY,
			self::STRUCTURE,
			self::SELECT2,
			self::DATE_TIME,
			self::BOX_SHADOW,
			self::TEXT_SHADOW,
			self::ANIMATION,
			self::HOVER_ANIMATION,
			self::EXIT_ANIMATION,
		];
	}

	/**
	 * Register controls.
	 *
	 * This method creates a list of all the supported controls by requiring the
	 * control files and initializing each one of them.
	 *
	 * The list of supported controls includes the regular controls and the group
	 * controls.
	 *
	 * External developers can register new controls by hooking to the
	 * `elementor/controls/controls_registered` action.
	 *
	 * @since 3.1.0
	 * @access private
	 */
	private function register_controls() {
		$this->controls = [];

		foreach ( self::get_controls_names() as $control_id ) {
			$control_class_id = str_replace( ' ', '_', ucwords( str_replace( '_', ' ', $control_id ) ) );
			$class_name = __NAMESPACE__ . '\Control_' . $control_class_id;

			$this->register_control( $control_id, new $class_name() );
		}

		// Group Controls
		foreach ( self::get_groups_names() as $group_name ) {
			$group_class_id = str_replace( ' ', '_', ucwords( str_replace( '-', ' ', $group_name ) ) );
			$class_name = __NAMESPACE__ . '\Group_Control_' . $group_class_id;

			$this->control_groups[ $group_name ] = new $class_name();
		}

		/**
		 * After controls registered.
		 *
		 * Fires after Elementor controls are registered.
		 *
		 * @since 1.0.0
		 *
		 * @param Controls_Manager $this The controls manager.
		 */
		do_action( 'elementor/controls/controls_registered', $this );
	}

	/**
	 * Register control.
	 *
	 * This method adds a new control to the controls list. It adds any given
	 * control to any given control instance.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param string       $control_id       Control ID.
	 * @param Base_Control $control_instance Control instance, usually the
	 *                                       current instance.
	 */
	public function register_control( $control_id, Base_Control $control_instance ) {
		$this->controls[ $control_id ] = $control_instance;
	}

	/**
	 * Unregister control.
	 *
	 * This method removes control from the controls list.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param string $control_id Control ID.
	 *
	 * @return bool True if the control was removed, False otherwise.
	 */
	public function unregister_control( $control_id ) {
		if ( ! isset( $this->controls[ $control_id ] ) ) {
			return false;
		}

		unset( $this->controls[ $control_id ] );

		return true;
	}

	/**
	 * Get controls.
	 *
	 * Retrieve the controls list from the current instance.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return Base_Control[] Controls list.
	 */
	public function get_controls() {
		if ( null === $this->controls ) {
			$this->register_controls();
		}

		return $this->controls;
	}

	/**
	 * Get control.
	 *
	 * Retrieve a specific control from the current controls instance.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param string $control_id Control ID.
	 *
	 * @return bool|Base_Control Control instance, or False otherwise.
	 */
	public function get_control( $control_id ) {
		$controls = $this->get_controls();

		return isset( $controls[ $control_id ] ) ? $controls[ $control_id ] : false;
	}

	/**
	 * Get controls data.
	 *
	 * Retrieve all the registered controls and all the data for each control.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array {
	 *    Control data.
	 *
	 *    @type array $name Control data.
	 * }
	 */
	public function get_controls_data() {
		$controls_data = [];

		foreach ( $this->get_controls() as $name => $control ) {
			$controls_data[ $name ] = $control->get_settings();
		}

		return $controls_data;
	}

	/**
	 * Render controls.
	 *
	 * Generate the final HTML for all the registered controls using the element
	 * template.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function render_controls() {
		foreach ( $this->get_controls() as $control ) {
			$control->print_template();
		}
	}

	/**
	 * Get control groups.
	 *
	 * Retrieve a specific group for a given ID, or a list of all the control
	 * groups.
	 *
	 * If the given group ID is wrong, it will return `null`. When the ID valid,
	 * it will return the group control instance. When no ID was given, it will
	 * return all the control groups.
	 *
	 * @since 1.0.10
	 * @access public
	 *
	 * @param string $id Optional. Group ID. Default is null.
	 *
	 * @return null|Group_Control_Base|Group_Control_Base[]
	 */
	public function get_control_groups( $id = null ) {
		if ( $id ) {
			return isset( $this->control_groups[ $id ] ) ? $this->control_groups[ $id ] : null;
		}

		return $this->control_groups;
	}

	/**
	 * Add group control.
	 *
	 * This method adds a new group control to the control groups list. It adds
	 * any given group control to any given group control instance.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param string             $id       Group control ID.
	 * @param Group_Control_Base $instance Group control instance, usually the
	 *                                     current instance.
	 *
	 * @return Group_Control_Base Group control instance.
	 */
	public function add_group_control( $id, $instance ) {
		$this->control_groups[ $id ] = $instance;

		return $instance;
	}

	/**
	 * Enqueue control scripts and styles.
	 *
	 * Used to register and enqueue custom scripts and styles used by the control.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function enqueue_control_scripts() {
		foreach ( $this->get_controls() as $control ) {
			$control->enqueue();
		}
	}

	/**
	 * Open new stack.
	 *
	 * This method adds a new stack to the control stacks list. It adds any
	 * given stack to the current control instance.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param Controls_Stack $controls_stack Controls stack.
	 */
	public function open_stack( Controls_Stack $controls_stack ) {
		$stack_id = $controls_stack->get_unique_name();

		$this->stacks[ $stack_id ] = [
			'tabs' => [],
			'controls' => [],
		];
	}

	/**
	 * Add control to stack.
	 *
	 * This method adds a new control to the stack.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param Controls_Stack $element      Element stack.
	 * @param string         $control_id   Control ID.
	 * @param array          $control_data Control data.
	 * @param array          $options      Optional. Control additional options.
	 *                                     Default is an empty array.
	 *
	 * @return bool True if control added, False otherwise.
	 */
	public function add_control_to_stack( Controls_Stack $element, $control_id, $control_data, $options = [] ) {
		$default_options = [
			'overwrite' => false,
			'index' => null,
		];

		$options = array_merge( $default_options, $options );

		$default_args = [
			'type' => self::TEXT,
			'tab' => self::TAB_CONTENT,
		];

		$control_data['name'] = $control_id;

		$control_data = array_merge( $default_args, $control_data );

		$control_type_instance = $this->get_control( $control_data['type'] );

		if ( ! $control_type_instance ) {
			_doing_it_wrong( sprintf( '%1$s::%2$s', __CLASS__, __FUNCTION__ ), sprintf( 'Control type "%s" not found.', esc_html( $control_data['type'] ) ), '1.0.0' );
			return false;
		}

		if ( $control_type_instance instanceof Base_Data_Control ) {
			$control_default_value = $control_type_instance->get_default_value();

			if ( is_array( $control_default_value ) ) {
				$control_data['default'] = isset( $control_data['default'] ) ? array_merge( $control_default_value, $control_data['default'] ) : $control_default_value;
			} else {
				$control_data['default'] = isset( $control_data['default'] ) ? $control_data['default'] : $control_default_value;
			}
		}

		$stack_id = $element->get_unique_name();

		if ( ! $options['overwrite'] && isset( $this->stacks[ $stack_id ]['controls'][ $control_id ] ) ) {
			_doing_it_wrong( sprintf( '%1$s::%2$s', __CLASS__, __FUNCTION__ ), sprintf( 'Cannot redeclare control with same name "%s".', esc_html( $control_id ) ), '1.0.0' );

			return false;
		}

		$tabs = self::get_tabs();

		if ( ! isset( $tabs[ $control_data['tab'] ] ) ) {
			$control_data['tab'] = $default_args['tab'];
		}

		$this->stacks[ $stack_id ]['tabs'][ $control_data['tab'] ] = $tabs[ $control_data['tab'] ];

		$this->stacks[ $stack_id ]['controls'][ $control_id ] = $control_data;

		if ( null !== $options['index'] ) {
			$controls = $this->stacks[ $stack_id ]['controls'];

			$controls_keys = array_keys( $controls );

			array_splice( $controls_keys, $options['index'], 0, $control_id );

			$this->stacks[ $stack_id ]['controls'] = array_merge( array_flip( $controls_keys ), $controls );
		}

		return true;
	}

	/**
	 * Remove control from stack.
	 *
	 * This method removes a control a the stack.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param string $stack_id   Stack ID.
	 * @param array|string $control_id The ID of the control to remove.
	 *
	 * @return bool|\WP_Error True if the stack was removed, False otherwise.
	 */
	public function remove_control_from_stack( $stack_id, $control_id ) {
		if ( is_array( $control_id ) ) {
			foreach ( $control_id as $id ) {
				$this->remove_control_from_stack( $stack_id, $id );
			}

			return true;
		}

		if ( empty( $this->stacks[ $stack_id ]['controls'][ $control_id ] ) ) {
			return new \WP_Error( 'Cannot remove not-exists control.' );
		}

		unset( $this->stacks[ $stack_id ]['controls'][ $control_id ] );

		return true;
	}

	/**
	 * Get control from stack.
	 *
	 * Retrieve a specific control for a given a specific stack.
	 *
	 * If the given control does not exist in the stack, or the stack does not
	 * exist, it will return `WP_Error`. Otherwise, it will retrieve the control
	 * from the stack.
	 *
	 * @since 1.1.0
	 * @access public
	 *
	 * @param string $stack_id   Stack ID.
	 * @param string $control_id Control ID.
	 *
	 * @return array|\WP_Error The control, or an error.
	 */
	public function get_control_from_stack( $stack_id, $control_id ) {
		if ( empty( $this->stacks[ $stack_id ]['controls'][ $control_id ] ) ) {
			return new \WP_Error( 'Cannot get a not-exists control.' );
		}

		return $this->stacks[ $stack_id ]['controls'][ $control_id ];
	}

	/**
	 * Update control in stack.
	 *
	 * This method updates the control data for a given stack.
	 *
	 * @since 1.1.0
	 * @access public
	 *
	 * @param Controls_Stack $element      Element stack.
	 * @param string         $control_id   Control ID.
	 * @param array          $control_data Control data.
	 * @param array          $options      Optional. Control additional options.
	 *                                     Default is an empty array.
	 *
	 * @return bool True if control updated, False otherwise.
	 */
	public function update_control_in_stack( Controls_Stack $element, $control_id, $control_data, array $options = [] ) {
		$old_control_data = $this->get_control_from_stack( $element->get_unique_name(), $control_id );

		if ( is_wp_error( $old_control_data ) ) {
			return false;
		}

		if ( ! empty( $options['recursive'] ) ) {
			$control_data = array_replace_recursive( $old_control_data, $control_data );
		} else {
			$control_data = array_merge( $old_control_data, $control_data );
		}

		return $this->add_control_to_stack( $element, $control_id, $control_data, [
			'overwrite' => true,
		] );
	}

	/**
	 * Get stacks.
	 *
	 * Retrieve a specific stack for the list of stacks.
	 *
	 * If the given stack is wrong, it will return `null`. When the stack valid,
	 * it will return the the specific stack. When no stack was given, it will
	 * return all the stacks.
	 *
	 * @since 1.7.1
	 * @access public
	 *
	 * @param string $stack_id Optional. stack ID. Default is null.
	 *
	 * @return null|array A list of stacks.
	 */
	public function get_stacks( $stack_id = null ) {
		if ( $stack_id ) {
			if ( isset( $this->stacks[ $stack_id ] ) ) {
				return $this->stacks[ $stack_id ];
			}

			return null;
		}

		return $this->stacks;
	}

	/**
	 * Get element stack.
	 *
	 * Retrieve a specific stack for the list of stacks from the current instance.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param Controls_Stack $controls_stack  Controls stack.
	 *
	 * @return null|array Stack data if it exist, `null` otherwise.
	 */
	public function get_element_stack( Controls_Stack $controls_stack ) {
		$stack_id = $controls_stack->get_unique_name();

		if ( ! isset( $this->stacks[ $stack_id ] ) ) {
			return null;
		}

		return $this->stacks[ $stack_id ];
	}

	/**
	 * Add custom CSS controls.
	 *
	 * This method adds a new control for the "Custom CSS" feature. The free
	 * version of elementor uses this method to display an upgrade message to
	 * Elementor Pro.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param Controls_Stack $controls_stack .
	 * @param string $tab
	 * @param array $additional_messages
	 *
	 */
	public function add_custom_css_controls( Controls_Stack $controls_stack, $tab = self::TAB_ADVANCED, $additional_messages = [] ) {
		$controls_stack->start_controls_section(
			'section_custom_css_pro',
			[
				'label' => esc_html__( 'Custom CSS', 'elementor' ),
				'tab' => $tab,
			]
		);

		$messages = [
			esc_html__( 'Custom CSS lets you add CSS code to any widget, and see it render live right in the editor.', 'elementor' ),
		];

		if ( $additional_messages ) {
			$messages = array_merge( $messages, $additional_messages );
		}

		$controls_stack->add_control(
			'custom_css_pro',
			[
				'type' => self::RAW_HTML,
				'raw' => $this->get_teaser_template( [
					'title' => esc_html__( 'Meet Our Custom CSS', 'elementor' ),
					'messages' => $messages,
					'link' => 'https://elementor.com/pro/?utm_source=panel-custom-css&utm_campaign=gopro&utm_medium=wp-dash',
				] ),
			]
		);

		$controls_stack->end_controls_section();
	}

	/**
	 * Add Page Transitions controls.
	 *
	 * This method adds a new control for the "Page Transitions" feature. The Core
	 * version of elementor uses this method to display an upgrade message to
	 * Elementor Pro.
	 *
	 * @param Controls_Stack $controls_stack .
	 * @param string $tab
	 * @param array $additional_messages
	 *
	 * @return void
	 */
	public function add_page_transitions_controls( Controls_Stack $controls_stack, $tab = self::TAB_ADVANCED, $additional_messages = [] ) {
		$controls_stack->start_controls_section(
			'section_page_transitions_teaser',
			[
				'label' => esc_html__( 'Page Transitions', 'elementor' ),
				'tab' => $tab,
			]
		);

		$messages = [
			esc_html__( 'Page Transitions let you style entrance and exit animations between pages as well as display loader until your page assets load.', 'elementor' ),
		];

		if ( $additional_messages ) {
			$messages = array_merge( $messages, $additional_messages );
		}

		$controls_stack->add_control(
			'page_transitions_teaser',
			[
				'type' => self::RAW_HTML,
				'raw' => $this->get_teaser_template( [
					'title' => esc_html__( 'Meet Page Transitions', 'elementor' ),
					'messages' => $messages,
					'link' => 'https://elementor.com/pro/?utm_source=panel-page-transitions&utm_campaign=gopro&utm_medium=wp-dash',
				] ),
			]
		);

		$controls_stack->end_controls_section();
	}

	public function get_teaser_template( $texts ) {
		ob_start();
		?>
		<div class="elementor-nerd-box">
			<img class="elementor-nerd-box-icon" src="<?php echo esc_url( ELEMENTOR_ASSETS_URL . 'images/go-pro.svg' ); ?>" />
			<div class="elementor-nerd-box-title"><?php Utils::print_unescaped_internal_string( $texts['title'] ); ?></div>
			<?php foreach ( $texts['messages'] as $message ) { ?>
				<div class="elementor-nerd-box-message"><?php Utils::print_unescaped_internal_string( $message ); ?></div>
			<?php }

			// Show a `Go Pro` button only if the user doesn't have Pro.
			if ( $texts['link'] && ! Utils::has_pro() ) { ?>
				<a class="elementor-nerd-box-link elementor-button elementor-button-default elementor-button-go-pro" href="<?php echo esc_url( Utils::get_pro_link( $texts['link'] ) ); ?>" target="_blank">
					<?php echo esc_html__( 'Go Pro', 'elementor' ); ?>
				</a>
			<?php } ?>
		</div>
		<?php

		return ob_get_clean();
	}

	/**
	 * Add custom attributes controls.
	 *
	 * This method adds a new control for the "Custom Attributes" feature. The free
	 * version of elementor uses this method to display an upgrade message to
	 * Elementor Pro.
	 *
	 * @since 2.8.3
	 * @access public
	 *
	 * @param Controls_Stack $controls_stack.
	 */
	public function add_custom_attributes_controls( Controls_Stack $controls_stack ) {
		$controls_stack->start_controls_section(
			'section_custom_attributes_pro',
			[
				'label' => esc_html__( 'Attributes', 'elementor' ),
				'tab' => self::TAB_ADVANCED,
			]
		);

		$controls_stack->add_control(
			'custom_attributes_pro',
			[
				'type' => self::RAW_HTML,
				'raw' => $this->get_teaser_template( [
					'title' => esc_html__( 'Meet Our Attributes', 'elementor' ),
					'messages' => [
						esc_html__( 'Attributes lets you add custom HTML attributes to any element.', 'elementor' ),
					],
					'link' => 'https://elementor.com/pro/?utm_source=panel-custom-attributes&utm_campaign=gopro&utm_medium=wp-dash',
				] ),
			]
		);

		$controls_stack->end_controls_section();
	}
}
includes/managers/skins.php000064400000004506151327220420012012 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor skins manager.
 *
 * Elementor skins manager handler class is responsible for registering and
 * initializing all the supported skins.
 *
 * @since 1.0.0
 */
class Skins_Manager {

	/**
	 * Registered Skins.
	 *
	 * Holds the list of all the registered skins for all the widgets.
	 *
	 * @since 1.0.0
	 * @access private
	 *
	 * @var array Registered skins.
	 */
	private $_skins = [];

	/**
	 * Add new skin.
	 *
	 * Register a single new skin for a widget.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param Widget_Base $widget Elementor widget.
	 * @param Skin_Base   $skin   Elementor skin.
	 *
	 * @return true True if skin added.
	 */
	public function add_skin( Widget_Base $widget, Skin_Base $skin ) {
		$widget_name = $widget->get_name();

		if ( ! isset( $this->_skins[ $widget_name ] ) ) {
			$this->_skins[ $widget_name ] = [];
		}

		$this->_skins[ $widget_name ][ $skin->get_id() ] = $skin;

		return true;
	}

	/**
	 * Remove a skin.
	 *
	 * Unregister an existing skin from a widget.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param Widget_Base $widget  Elementor widget.
	 * @param string      $skin_id Elementor skin ID.
	 *
	 * @return true|\WP_Error True if skin removed, `WP_Error` otherwise.
	 */
	public function remove_skin( Widget_Base $widget, $skin_id ) {
		$widget_name = $widget->get_name();

		if ( ! isset( $this->_skins[ $widget_name ][ $skin_id ] ) ) {
			return new \WP_Error( 'Cannot remove not-exists skin.' );
		}

		unset( $this->_skins[ $widget_name ][ $skin_id ] );

		return true;
	}

	/**
	 * Get skins.
	 *
	 * Retrieve all the skins assigned for a specific widget.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param Widget_Base $widget Elementor widget.
	 *
	 * @return false|array Skins if the widget has skins, False otherwise.
	 */
	public function get_skins( Widget_Base $widget ) {
		$widget_name = $widget->get_name();

		if ( ! isset( $this->_skins[ $widget_name ] ) ) {
			return false;
		}

		return $this->_skins[ $widget_name ];
	}

	/**
	 * Skins manager constructor.
	 *
	 * Initializing Elementor skins manager by requiring the skin base class.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function __construct() {
		require ELEMENTOR_PATH . 'includes/base/skin-base.php';
	}
}
includes/managers/wordpress-widgets.php000064400000005326151327220420014360 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor WordPress widgets manager.
 *
 * Elementor WordPress widgets manager handler class is responsible for
 * registering and initializing all the supported controls, both regular
 * controls and the group controls.
 *
 * @since 1.5.0
 */
class WordPress_Widgets_Manager {

	/**
	 * WordPress widgets manager constructor.
	 *
	 * Initializing the WordPress widgets manager in Elementor editor.
	 *
	 * @since 1.5.0
	 * @access public
	 */
	public function __construct() {
		if ( version_compare( get_bloginfo( 'version' ), '4.8', '<' ) ) {
			return;
		}

		add_action( 'elementor/editor/before_enqueue_scripts', [ $this, 'before_enqueue_scripts' ] );
		add_action( 'elementor/editor/footer', [ $this, 'footer' ] );
	}

	/**
	 * Before enqueue scripts.
	 *
	 * Prints custom scripts required to run WordPress widgets in Elementor
	 * editor.
	 *
	 * Fired by `elementor/editor/before_enqueue_scripts` action.
	 *
	 * @since 1.5.0
	 * @access public
	 */
	public function before_enqueue_scripts() {
		global $wp_scripts;

		$suffix = Utils::is_script_debug() ? '' : '.min';

		// TODO: after WP >= 4.9 - it's no needed, Keep for Backward compatibility.
		$wp_scripts->add( 'media-widgets', "/wp-admin/js/widgets/media-widgets$suffix.js", array( 'jquery', 'media-models', 'media-views' ) );
		$wp_scripts->add_inline_script( 'media-widgets', 'wp.mediaWidgets.init();', 'after' );

		$wp_scripts->add( 'media-audio-widget', "/wp-admin/js/widgets/media-audio-widget$suffix.js", array( 'media-widgets', 'media-audiovideo' ) );
		$wp_scripts->add( 'media-image-widget', "/wp-admin/js/widgets/media-image-widget$suffix.js", array( 'media-widgets' ) );
		$wp_scripts->add( 'media-video-widget', "/wp-admin/js/widgets/media-video-widget$suffix.js", array( 'media-widgets', 'media-audiovideo' ) );
		$wp_scripts->add( 'text-widgets', "/wp-admin/js/widgets/text-widgets$suffix.js", array( 'jquery', 'editor', 'wp-util' ) );
		$wp_scripts->add_inline_script( 'text-widgets', 'wp.textWidgets.init();', 'after' );

		wp_enqueue_style( 'widgets' );
		wp_enqueue_style( 'media-views' );
		// End TODO.

		// Don't enqueue `code-editor` for WP Custom HTML widget.
		wp_get_current_user()->syntax_highlighting = 'false';

		/** This action is documented in wp-admin/admin-header.php */
		do_action( 'admin_print_scripts-widgets.php' );
	}

	/**
	 * WordPress widgets footer.
	 *
	 * Prints WordPress widgets scripts in Elementor editor footer.
	 *
	 * Fired by `elementor/editor/footer` action.
	 *
	 * @since 1.5.0
	 * @access public
	 */
	public function footer() {
		/** This action is documented in wp-admin/admin-footer.php */
		do_action( 'admin_footer-widgets.php' );
	}
}
includes/shapes.php000064400000014366151327220420010356 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor shapes.
 *
 * Elementor shapes handler class is responsible for setting up the supported
 * shape dividers.
 *
 * @since 1.3.0
 */
class Shapes {

	/**
	 * The exclude filter.
	 */
	const FILTER_EXCLUDE = 'exclude';

	/**
	 * The include filter.
	 */
	const FILTER_INCLUDE = 'include';

	/**
	 * Shapes.
	 *
	 * Holds the list of supported shapes.
	 *
	 * @since 1.3.0
	 * @access private
	 * @static
	 *
	 * @var array A list of supported shapes.
	 */
	private static $shapes;

	/**
	 * Get shapes.
	 *
	 * Retrieve a shape from the lists of supported shapes. If no shape specified
	 * it will return all the supported shapes.
	 *
	 * @since 1.3.0
	 * @access public
	 * @static
	 *
	 * @param array $shape Optional. Specific shape. Default is `null`.
	 *
	 * @return array The specified shape or a list of all the supported shapes.
	 */
	public static function get_shapes( $shape = null ) {
		if ( null === self::$shapes ) {
			self::init_shapes();
		}

		if ( $shape ) {
			return isset( self::$shapes[ $shape ] ) ? self::$shapes[ $shape ] : null;
		}

		return self::$shapes;
	}

	/**
	 * Filter shapes.
	 *
	 * Retrieve shapes filtered by a specific condition, from the list of
	 * supported shapes.
	 *
	 * @since 1.3.0
	 * @access public
	 * @static
	 *
	 * @param string $by     Specific condition to filter by.
	 * @param string $filter Optional. Comparison condition to filter by.
	 *                       Default is `include`.
	 *
	 * @return array A list of filtered shapes.
	 */
	public static function filter_shapes( $by, $filter = self::FILTER_INCLUDE ) {
		return array_filter(
			self::get_shapes(), function( $shape ) use ( $by, $filter ) {
				return self::FILTER_INCLUDE === $filter xor empty( $shape[ $by ] );
			}
		);
	}

	/**
	 * Get shape path.
	 *
	 * For a given shape, retrieve the file path.
	 *
	 * @since 1.3.0
	 * @access public
	 * @static
	 *
	 * @param string $shape       The shape.
	 * @param bool   $is_negative Optional. Whether the file name is negative or
	 *                            not. Default is `false`.
	 *
	 * @return string Shape file path.
	 */
	public static function get_shape_path( $shape, $is_negative = false ) {

		if ( isset( self::$shapes[ $shape ] ) && isset( self::$shapes[ $shape ]['path'] ) ) {
			$path = self::$shapes[ $shape ]['path'];
			return ( $is_negative ) ? str_replace( '.svg', '-negative.svg', $path ) : $path;
		}

		$file_name = $shape;

		if ( $is_negative ) {
			$file_name .= '-negative';
		}

		return ELEMENTOR_PATH . 'assets/shapes/' . $file_name . '.svg';
	}

	/**
	 * Init shapes.
	 *
	 * Set the supported shapes.
	 *
	 * @since 1.3.0
	 * @access private
	 * @static
	 */
	private static function init_shapes() {
		$native_shapes = [
			'mountains' => [
				'title' => _x( 'Mountains', 'Shapes', 'elementor' ),
				'has_flip' => true,
			],
			'drops' => [
				'title' => _x( 'Drops', 'Shapes', 'elementor' ),
				'has_negative' => true,
				'has_flip' => true,
				'height_only' => true,
			],
			'clouds' => [
				'title' => _x( 'Clouds', 'Shapes', 'elementor' ),
				'has_negative' => true,
				'has_flip' => true,
				'height_only' => true,
			],
			'zigzag' => [
				'title' => _x( 'Zigzag', 'Shapes', 'elementor' ),
			],
			'pyramids' => [
				'title' => _x( 'Pyramids', 'Shapes', 'elementor' ),
				'has_negative' => true,
				'has_flip' => true,
			],
			'triangle' => [
				'title' => _x( 'Triangle', 'Shapes', 'elementor' ),
				'has_negative' => true,
			],
			'triangle-asymmetrical' => [
				'title' => _x( 'Triangle Asymmetrical', 'Shapes', 'elementor' ),
				'has_negative' => true,
				'has_flip' => true,
			],
			'tilt' => [
				'title' => _x( 'Tilt', 'Shapes', 'elementor' ),
				'has_flip' => true,
				'height_only' => true,
			],
			'opacity-tilt' => [
				'title' => _x( 'Tilt Opacity', 'Shapes', 'elementor' ),
				'has_flip' => true,
			],
			'opacity-fan' => [
				'title' => _x( 'Fan Opacity', 'Shapes', 'elementor' ),
			],
			'curve' => [
				'title' => _x( 'Curve', 'Shapes', 'elementor' ),
				'has_negative' => true,
			],
			'curve-asymmetrical' => [
				'title' => _x( 'Curve Asymmetrical', 'Shapes', 'elementor' ),
				'has_negative' => true,
				'has_flip' => true,
			],
			'waves' => [
				'title' => _x( 'Waves', 'Shapes', 'elementor' ),
				'has_negative' => true,
				'has_flip' => true,
			],
			'wave-brush' => [
				'title' => _x( 'Waves Brush', 'Shapes', 'elementor' ),
				'has_flip' => true,
			],
			'waves-pattern' => [
				'title' => _x( 'Waves Pattern', 'Shapes', 'elementor' ),
				'has_flip' => true,
			],
			'arrow' => [
				'title' => _x( 'Arrow', 'Shapes', 'elementor' ),
				'has_negative' => true,
			],
			'split' => [
				'title' => _x( 'Split', 'Shapes', 'elementor' ),
				'has_negative' => true,
			],
			'book' => [
				'title' => _x( 'Book', 'Shapes', 'elementor' ),
				'has_negative' => true,
			],
		];

		self::$shapes = array_merge( $native_shapes, self::get_additional_shapes() );
	}

	/**
	 * Get Additional Shapes
	 *
	 * Used to add custom shapes to elementor.
	 *
	 * @since 2.5.0
	 *
	 * @return array
	 */
	private static function get_additional_shapes() {
		static $additional_shapes = null;

		if ( null !== $additional_shapes ) {
			return $additional_shapes;
		}
		$additional_shapes = [];
		/**
		 * Additional shapes.
		 *
		 * Filters the shapes used by Elementor to add additional shapes.
		 *
		 * @since 2.0.1
		 *
		 * @param array $additional_shapes Additional Elementor shapes.
		 */
		$additional_shapes = apply_filters( 'elementor/shapes/additional_shapes', $additional_shapes );
		return $additional_shapes;
	}

	/**
	 * Get Additional Shapes For Config
	 *
	 * Used to set additional shape paths for editor
	 *
	 * @since 2.5.0
	 *
	 * @return array|bool
	 */
	public static function get_additional_shapes_for_config() {
		$additional_shapes = self::get_additional_shapes();
		if ( empty( $additional_shapes ) ) {
			return false;
		}

		$additional_shapes_config = [];
		foreach ( $additional_shapes as $shape_name => $shape_settings ) {
			if ( ! isset( $shape_settings['url'] ) ) {
				continue;
			}
			$additional_shapes_config[ $shape_name ] = $shape_settings['url'];
		}

		if ( empty( $additional_shapes_config ) ) {
			return false;
		}

		return $additional_shapes_config;
	}
}
includes/fonts.php000064400000114427151327220420010223 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor fonts.
 *
 * Elementor fonts handler class is responsible for registering the supported
 * fonts used by Elementor.
 *
 * @since 1.0.0
 */
class Fonts {

	/**
	 * The system font name.
	 */
	const SYSTEM = 'system';

	/**
	 * The google font name.
	 */
	const GOOGLE = 'googlefonts';

	/**
	 * The google early access font name.
	 */
	const EARLYACCESS = 'earlyaccess';

	/**
	 * The local font name.
	 */
	const LOCAL = 'local';

	private static $fonts;

	/**
	 * Font groups.
	 *
	 * Used to hold font types/groups.
	 *
	 * @since 1.9.4
	 * @access private
	 * @static
	 *
	 * @var null|array
	 */
	private static $font_groups;

	/**
	 * Get font Groups.
	 *
	 * Retrieve the list of font groups.
	 *
	 * @since 1.9.4
	 * @access public
	 * @static
	 *
	 * @return array Supported font groups/types.
	 */
	public static function get_font_groups() {
		if ( null === self::$font_groups ) {
			$font_groups = [
				self::SYSTEM => esc_html__( 'System', 'elementor' ),
				self::GOOGLE => esc_html__( 'Google', 'elementor' ),
				self::EARLYACCESS => esc_html__( 'Google Early Access', 'elementor' ),
			];

			/**
			 * Font groups.
			 *
			 * Filters the fonts groups used by Elementor.
			 *
			 * @since 1.9.4
			 *
			 * @param array $font_groups Font groups.
			 */
			$font_groups = apply_filters( 'elementor/fonts/groups', $font_groups );

			self::$font_groups = $font_groups;
		}

		return self::$font_groups;
	}

	/**
	 * Get fonts.
	 *
	 * Retrieve the list of supported fonts.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @return array Supported fonts.
	 */
	public static function get_fonts() {
		if ( null === self::$fonts ) {
			$additional_fonts = [];

			/**
			 * Additional fonts.
			 *
			 * Filters the fonts used by Elementor to add additional fonts.
			 *
			 * @since 1.9.4
			 *
			 * @param array $additional_fonts Additional Elementor fonts.
			 */
			$additional_fonts = apply_filters( 'elementor/fonts/additional_fonts', $additional_fonts );

			self::$fonts = array_merge( self::get_native_fonts(), $additional_fonts );
		}

		return self::$fonts;
	}

	/**
	 * Get Elementor native fonts.
	 *
	 * Retrieve the list of supported fonts.
	 *
	 * @since 1.9.4
	 * @access private
	 * @static
	 *
	 * @return array Supported fonts.
	 */
	private static function get_native_fonts() {
		return [
			// System fonts.
			'Arial' => self::SYSTEM,
			'Tahoma' => self::SYSTEM,
			'Verdana' => self::SYSTEM,
			'Helvetica' => self::SYSTEM,
			'Times New Roman' => self::SYSTEM,
			'Trebuchet MS' => self::SYSTEM,
			'Georgia' => self::SYSTEM,

			// Google Fonts (last update: 07/05/2021).
			'ABeeZee' => self::GOOGLE,
			'Abel' => self::GOOGLE,
			'Abhaya Libre' => self::GOOGLE,
			'Abril Fatface' => self::GOOGLE,
			'Aclonica' => self::GOOGLE,
			'Acme' => self::GOOGLE,
			'Actor' => self::GOOGLE,
			'Adamina' => self::GOOGLE,
			'Advent Pro' => self::GOOGLE,
			'Aguafina Script' => self::GOOGLE,
			'Akaya Kanadaka' => self::GOOGLE,
			'Akaya Telivigala' => self::GOOGLE,
			'Akronim' => self::GOOGLE,
			'Aladin' => self::GOOGLE,
			'Alata' => self::GOOGLE,
			'Alatsi' => self::GOOGLE,
			'Aldrich' => self::GOOGLE,
			'Alef' => self::GOOGLE,
			'Alef Hebrew' => self::EARLYACCESS, // Hack for Google Early Access.
			'Alegreya' => self::GOOGLE,
			'Alegreya SC' => self::GOOGLE,
			'Alegreya Sans' => self::GOOGLE,
			'Alegreya Sans SC' => self::GOOGLE,
			'Aleo' => self::GOOGLE,
			'Alex Brush' => self::GOOGLE,
			'Alfa Slab One' => self::GOOGLE,
			'Alice' => self::GOOGLE,
			'Alike' => self::GOOGLE,
			'Alike Angular' => self::GOOGLE,
			'Allan' => self::GOOGLE,
			'Allerta' => self::GOOGLE,
			'Allerta Stencil' => self::GOOGLE,
			'Allura' => self::GOOGLE,
			'Almarai' => self::GOOGLE,
			'Almendra' => self::GOOGLE,
			'Almendra Display' => self::GOOGLE,
			'Almendra SC' => self::GOOGLE,
			'Amarante' => self::GOOGLE,
			'Amaranth' => self::GOOGLE,
			'Amatic SC' => self::GOOGLE,
			'Amethysta' => self::GOOGLE,
			'Amiko' => self::GOOGLE,
			'Amiri' => self::GOOGLE,
			'Amita' => self::GOOGLE,
			'Anaheim' => self::GOOGLE,
			'Andada' => self::GOOGLE,
			'Andika' => self::GOOGLE,
			'Andika New Basic' => self::GOOGLE,
			'Angkor' => self::GOOGLE,
			'Annie Use Your Telescope' => self::GOOGLE,
			'Anonymous Pro' => self::GOOGLE,
			'Antic' => self::GOOGLE,
			'Antic Didone' => self::GOOGLE,
			'Antic Slab' => self::GOOGLE,
			'Anton' => self::GOOGLE,
			'Antonio' => self::GOOGLE,
			'Arapey' => self::GOOGLE,
			'Arbutus' => self::GOOGLE,
			'Arbutus Slab' => self::GOOGLE,
			'Architects Daughter' => self::GOOGLE,
			'Archivo' => self::GOOGLE,
			'Archivo Black' => self::GOOGLE,
			'Archivo Narrow' => self::GOOGLE,
			'Aref Ruqaa' => self::GOOGLE,
			'Arima Madurai' => self::GOOGLE,
			'Arimo' => self::GOOGLE,
			'Arizonia' => self::GOOGLE,
			'Armata' => self::GOOGLE,
			'Arsenal' => self::GOOGLE,
			'Artifika' => self::GOOGLE,
			'Arvo' => self::GOOGLE,
			'Arya' => self::GOOGLE,
			'Asap' => self::GOOGLE,
			'Asap Condensed' => self::GOOGLE,
			'Asar' => self::GOOGLE,
			'Asset' => self::GOOGLE,
			'Assistant' => self::GOOGLE,
			'Astloch' => self::GOOGLE,
			'Asul' => self::GOOGLE,
			'Athiti' => self::GOOGLE,
			'Atma' => self::GOOGLE,
			'Atomic Age' => self::GOOGLE,
			'Aubrey' => self::GOOGLE,
			'Audiowide' => self::GOOGLE,
			'Autour One' => self::GOOGLE,
			'Average' => self::GOOGLE,
			'Average Sans' => self::GOOGLE,
			'Averia Gruesa Libre' => self::GOOGLE,
			'Averia Libre' => self::GOOGLE,
			'Averia Sans Libre' => self::GOOGLE,
			'Averia Serif Libre' => self::GOOGLE,
			'B612' => self::GOOGLE,
			'B612 Mono' => self::GOOGLE,
			'Bad Script' => self::GOOGLE,
			'Bahiana' => self::GOOGLE,
			'Bahianita' => self::GOOGLE,
			'Bai Jamjuree' => self::GOOGLE,
			'Ballet' => self::GOOGLE,
			'Baloo 2' => self::GOOGLE,
			'Baloo Bhai 2' => self::GOOGLE,
			'Baloo Bhaina 2' => self::GOOGLE,
			'Baloo Chettan 2' => self::GOOGLE,
			'Baloo Da 2' => self::GOOGLE,
			'Baloo Paaji 2' => self::GOOGLE,
			'Baloo Tamma 2' => self::GOOGLE,
			'Baloo Tammudu 2' => self::GOOGLE,
			'Baloo Thambi 2' => self::GOOGLE,
			'Balsamiq Sans' => self::GOOGLE,
			'Balthazar' => self::GOOGLE,
			'Bangers' => self::GOOGLE,
			'Barlow' => self::GOOGLE,
			'Barlow Condensed' => self::GOOGLE,
			'Barlow Semi Condensed' => self::GOOGLE,
			'Barriecito' => self::GOOGLE,
			'Barrio' => self::GOOGLE,
			'Basic' => self::GOOGLE,
			'Baskervville' => self::GOOGLE,
			'Battambang' => self::GOOGLE,
			'Baumans' => self::GOOGLE,
			'Bayon' => self::GOOGLE,
			'Be Vietnam' => self::GOOGLE,
			'Bebas Neue' => self::GOOGLE,
			'Belgrano' => self::GOOGLE,
			'Bellefair' => self::GOOGLE,
			'Belleza' => self::GOOGLE,
			'Bellota' => self::GOOGLE,
			'Bellota Text' => self::GOOGLE,
			'BenchNine' => self::GOOGLE,
			'Benne' => self::GOOGLE,
			'Bentham' => self::GOOGLE,
			'Berkshire Swash' => self::GOOGLE,
			'Beth Ellen' => self::GOOGLE,
			'Bevan' => self::GOOGLE,
			'Big Shoulders Display' => self::GOOGLE,
			'Big Shoulders Inline Display' => self::GOOGLE,
			'Big Shoulders Inline Text' => self::GOOGLE,
			'Big Shoulders Stencil Display' => self::GOOGLE,
			'Big Shoulders Stencil Text' => self::GOOGLE,
			'Big Shoulders Text' => self::GOOGLE,
			'Bigelow Rules' => self::GOOGLE,
			'Bigshot One' => self::GOOGLE,
			'Bilbo' => self::GOOGLE,
			'Bilbo Swash Caps' => self::GOOGLE,
			'BioRhyme' => self::GOOGLE,
			'BioRhyme Expanded' => self::GOOGLE,
			'Biryani' => self::GOOGLE,
			'Bitter' => self::GOOGLE,
			'Black And White Picture' => self::GOOGLE,
			'Black Han Sans' => self::GOOGLE,
			'Black Ops One' => self::GOOGLE,
			'Blinker' => self::GOOGLE,
			'Bodoni Moda' => self::GOOGLE,
			'Bokor' => self::GOOGLE,
			'Bonbon' => self::GOOGLE,
			'Boogaloo' => self::GOOGLE,
			'Bowlby One' => self::GOOGLE,
			'Bowlby One SC' => self::GOOGLE,
			'Brawler' => self::GOOGLE,
			'Bree Serif' => self::GOOGLE,
			'Brygada 1918' => self::GOOGLE,
			'Bubblegum Sans' => self::GOOGLE,
			'Bubbler One' => self::GOOGLE,
			'Buda' => self::GOOGLE,
			'Buenard' => self::GOOGLE,
			'Bungee' => self::GOOGLE,
			'Bungee Hairline' => self::GOOGLE,
			'Bungee Inline' => self::GOOGLE,
			'Bungee Outline' => self::GOOGLE,
			'Bungee Shade' => self::GOOGLE,
			'Butcherman' => self::GOOGLE,
			'Butterfly Kids' => self::GOOGLE,
			'Cabin' => self::GOOGLE,
			'Cabin Condensed' => self::GOOGLE,
			'Cabin Sketch' => self::GOOGLE,
			'Caesar Dressing' => self::GOOGLE,
			'Cagliostro' => self::GOOGLE,
			'Cairo' => self::GOOGLE,
			'Caladea' => self::GOOGLE,
			'Calistoga' => self::GOOGLE,
			'Calligraffitti' => self::GOOGLE,
			'Cambay' => self::GOOGLE,
			'Cambo' => self::GOOGLE,
			'Candal' => self::GOOGLE,
			'Cantarell' => self::GOOGLE,
			'Cantata One' => self::GOOGLE,
			'Cantora One' => self::GOOGLE,
			'Capriola' => self::GOOGLE,
			'Cardo' => self::GOOGLE,
			'Carme' => self::GOOGLE,
			'Carrois Gothic' => self::GOOGLE,
			'Carrois Gothic SC' => self::GOOGLE,
			'Carter One' => self::GOOGLE,
			'Castoro' => self::GOOGLE,
			'Catamaran' => self::GOOGLE,
			'Caudex' => self::GOOGLE,
			'Caveat' => self::GOOGLE,
			'Caveat Brush' => self::GOOGLE,
			'Cedarville Cursive' => self::GOOGLE,
			'Ceviche One' => self::GOOGLE,
			'Chakra Petch' => self::GOOGLE,
			'Changa' => self::GOOGLE,
			'Changa One' => self::GOOGLE,
			'Chango' => self::GOOGLE,
			'Charm' => self::GOOGLE,
			'Charmonman' => self::GOOGLE,
			'Chathura' => self::GOOGLE,
			'Chau Philomene One' => self::GOOGLE,
			'Chela One' => self::GOOGLE,
			'Chelsea Market' => self::GOOGLE,
			'Chenla' => self::GOOGLE,
			'Cherry Cream Soda' => self::GOOGLE,
			'Cherry Swash' => self::GOOGLE,
			'Chewy' => self::GOOGLE,
			'Chicle' => self::GOOGLE,
			'Chilanka' => self::GOOGLE,
			'Chivo' => self::GOOGLE,
			'Chonburi' => self::GOOGLE,
			'Cinzel' => self::GOOGLE,
			'Cinzel Decorative' => self::GOOGLE,
			'Clicker Script' => self::GOOGLE,
			'Coda' => self::GOOGLE,
			'Coda Caption' => self::GOOGLE,
			'Codystar' => self::GOOGLE,
			'Coiny' => self::GOOGLE,
			'Combo' => self::GOOGLE,
			'Comfortaa' => self::GOOGLE,
			'Comic Neue' => self::GOOGLE,
			'Coming Soon' => self::GOOGLE,
			'Commissioner' => self::GOOGLE,
			'Concert One' => self::GOOGLE,
			'Condiment' => self::GOOGLE,
			'Content' => self::GOOGLE,
			'Contrail One' => self::GOOGLE,
			'Convergence' => self::GOOGLE,
			'Cookie' => self::GOOGLE,
			'Copse' => self::GOOGLE,
			'Corben' => self::GOOGLE,
			'Cormorant' => self::GOOGLE,
			'Cormorant Garamond' => self::GOOGLE,
			'Cormorant Infant' => self::GOOGLE,
			'Cormorant SC' => self::GOOGLE,
			'Cormorant Unicase' => self::GOOGLE,
			'Cormorant Upright' => self::GOOGLE,
			'Courgette' => self::GOOGLE,
			'Courier Prime' => self::GOOGLE,
			'Cousine' => self::GOOGLE,
			'Coustard' => self::GOOGLE,
			'Covered By Your Grace' => self::GOOGLE,
			'Crafty Girls' => self::GOOGLE,
			'Creepster' => self::GOOGLE,
			'Crete Round' => self::GOOGLE,
			'Crimson Pro' => self::GOOGLE,
			'Crimson Text' => self::GOOGLE,
			'Croissant One' => self::GOOGLE,
			'Crushed' => self::GOOGLE,
			'Cuprum' => self::GOOGLE,
			'Cute Font' => self::GOOGLE,
			'Cutive' => self::GOOGLE,
			'Cutive Mono' => self::GOOGLE,
			'DM Mono' => self::GOOGLE,
			'DM Sans' => self::GOOGLE,
			'DM Serif Display' => self::GOOGLE,
			'DM Serif Text' => self::GOOGLE,
			'Damion' => self::GOOGLE,
			'Dancing Script' => self::GOOGLE,
			'Dangrek' => self::GOOGLE,
			'Darker Grotesque' => self::GOOGLE,
			'David Libre' => self::GOOGLE,
			'Dawning of a New Day' => self::GOOGLE,
			'Days One' => self::GOOGLE,
			'Dekko' => self::GOOGLE,
			'Dela Gothic One' => self::GOOGLE,
			'Delius' => self::GOOGLE,
			'Delius Swash Caps' => self::GOOGLE,
			'Delius Unicase' => self::GOOGLE,
			'Della Respira' => self::GOOGLE,
			'Denk One' => self::GOOGLE,
			'Devonshire' => self::GOOGLE,
			'Dhurjati' => self::GOOGLE,
			'Didact Gothic' => self::GOOGLE,
			'Diplomata' => self::GOOGLE,
			'Diplomata SC' => self::GOOGLE,
			'Do Hyeon' => self::GOOGLE,
			'Dokdo' => self::GOOGLE,
			'Domine' => self::GOOGLE,
			'Donegal One' => self::GOOGLE,
			'Doppio One' => self::GOOGLE,
			'Dorsa' => self::GOOGLE,
			'Dosis' => self::GOOGLE,
			'DotGothic16' => self::GOOGLE,
			'Dr Sugiyama' => self::GOOGLE,
			'Droid Arabic Kufi' => self::EARLYACCESS, // Hack for Google Early Access.
			'Droid Arabic Naskh' => self::EARLYACCESS, // Hack for Google Early Access.
			'Duru Sans' => self::GOOGLE,
			'Dynalight' => self::GOOGLE,
			'EB Garamond' => self::GOOGLE,
			'Eagle Lake' => self::GOOGLE,
			'East Sea Dokdo' => self::GOOGLE,
			'Eater' => self::GOOGLE,
			'Economica' => self::GOOGLE,
			'Eczar' => self::GOOGLE,
			'El Messiri' => self::GOOGLE,
			'Electrolize' => self::GOOGLE,
			'Elsie' => self::GOOGLE,
			'Elsie Swash Caps' => self::GOOGLE,
			'Emblema One' => self::GOOGLE,
			'Emilys Candy' => self::GOOGLE,
			'Encode Sans' => self::GOOGLE,
			'Encode Sans Condensed' => self::GOOGLE,
			'Encode Sans Expanded' => self::GOOGLE,
			'Encode Sans Semi Condensed' => self::GOOGLE,
			'Encode Sans Semi Expanded' => self::GOOGLE,
			'Engagement' => self::GOOGLE,
			'Englebert' => self::GOOGLE,
			'Enriqueta' => self::GOOGLE,
			'Epilogue' => self::GOOGLE,
			'Erica One' => self::GOOGLE,
			'Esteban' => self::GOOGLE,
			'Euphoria Script' => self::GOOGLE,
			'Ewert' => self::GOOGLE,
			'Exo' => self::GOOGLE,
			'Exo 2' => self::GOOGLE,
			'Expletus Sans' => self::GOOGLE,
			'Fahkwang' => self::GOOGLE,
			'Fanwood Text' => self::GOOGLE,
			'Farro' => self::GOOGLE,
			'Farsan' => self::GOOGLE,
			'Fascinate' => self::GOOGLE,
			'Fascinate Inline' => self::GOOGLE,
			'Faster One' => self::GOOGLE,
			'Fasthand' => self::GOOGLE,
			'Fauna One' => self::GOOGLE,
			'Faustina' => self::GOOGLE,
			'Federant' => self::GOOGLE,
			'Federo' => self::GOOGLE,
			'Felipa' => self::GOOGLE,
			'Fenix' => self::GOOGLE,
			'Finger Paint' => self::GOOGLE,
			'Fira Code' => self::GOOGLE,
			'Fira Mono' => self::GOOGLE,
			'Fira Sans' => self::GOOGLE,
			'Fira Sans Condensed' => self::GOOGLE,
			'Fira Sans Extra Condensed' => self::GOOGLE,
			'Fjalla One' => self::GOOGLE,
			'Fjord One' => self::GOOGLE,
			'Flamenco' => self::GOOGLE,
			'Flavors' => self::GOOGLE,
			'Fondamento' => self::GOOGLE,
			'Fontdiner Swanky' => self::GOOGLE,
			'Forum' => self::GOOGLE,
			'Francois One' => self::GOOGLE,
			'Frank Ruhl Libre' => self::GOOGLE,
			'Fraunces' => self::GOOGLE,
			'Freckle Face' => self::GOOGLE,
			'Fredericka the Great' => self::GOOGLE,
			'Fredoka One' => self::GOOGLE,
			'Freehand' => self::GOOGLE,
			'Fresca' => self::GOOGLE,
			'Frijole' => self::GOOGLE,
			'Fruktur' => self::GOOGLE,
			'Fugaz One' => self::GOOGLE,
			'GFS Didot' => self::GOOGLE,
			'GFS Neohellenic' => self::GOOGLE,
			'Gabriela' => self::GOOGLE,
			'Gaegu' => self::GOOGLE,
			'Gafata' => self::GOOGLE,
			'Galada' => self::GOOGLE,
			'Galdeano' => self::GOOGLE,
			'Galindo' => self::GOOGLE,
			'Gamja Flower' => self::GOOGLE,
			'Gayathri' => self::GOOGLE,
			'Gelasio' => self::GOOGLE,
			'Gentium Basic' => self::GOOGLE,
			'Gentium Book Basic' => self::GOOGLE,
			'Geo' => self::GOOGLE,
			'Geostar' => self::GOOGLE,
			'Geostar Fill' => self::GOOGLE,
			'Germania One' => self::GOOGLE,
			'Gidugu' => self::GOOGLE,
			'Gilda Display' => self::GOOGLE,
			'Girassol' => self::GOOGLE,
			'Give You Glory' => self::GOOGLE,
			'Glass Antiqua' => self::GOOGLE,
			'Glegoo' => self::GOOGLE,
			'Gloria Hallelujah' => self::GOOGLE,
			'Goblin One' => self::GOOGLE,
			'Gochi Hand' => self::GOOGLE,
			'Goldman' => self::GOOGLE,
			'Gorditas' => self::GOOGLE,
			'Gothic A1' => self::GOOGLE,
			'Gotu' => self::GOOGLE,
			'Goudy Bookletter 1911' => self::GOOGLE,
			'Graduate' => self::GOOGLE,
			'Grand Hotel' => self::GOOGLE,
			'Grandstander' => self::GOOGLE,
			'Gravitas One' => self::GOOGLE,
			'Great Vibes' => self::GOOGLE,
			'Grenze' => self::GOOGLE,
			'Grenze Gotisch' => self::GOOGLE,
			'Griffy' => self::GOOGLE,
			'Gruppo' => self::GOOGLE,
			'Gudea' => self::GOOGLE,
			'Gugi' => self::GOOGLE,
			'Gupter' => self::GOOGLE,
			'Gurajada' => self::GOOGLE,
			'Habibi' => self::GOOGLE,
			'Hachi Maru Pop' => self::GOOGLE,
			'Halant' => self::GOOGLE,
			'Hammersmith One' => self::GOOGLE,
			'Hanalei' => self::GOOGLE,
			'Hanalei Fill' => self::GOOGLE,
			'Handlee' => self::GOOGLE,
			'Hanuman' => self::GOOGLE,
			'Happy Monkey' => self::GOOGLE,
			'Harmattan' => self::GOOGLE,
			'Headland One' => self::GOOGLE,
			'Heebo' => self::GOOGLE,
			'Henny Penny' => self::GOOGLE,
			'Hepta Slab' => self::GOOGLE,
			'Herr Von Muellerhoff' => self::GOOGLE,
			'Hi Melody' => self::GOOGLE,
			'Hind' => self::GOOGLE,
			'Hind Guntur' => self::GOOGLE,
			'Hind Madurai' => self::GOOGLE,
			'Hind Siliguri' => self::GOOGLE,
			'Hind Vadodara' => self::GOOGLE,
			'Holtwood One SC' => self::GOOGLE,
			'Homemade Apple' => self::GOOGLE,
			'Homenaje' => self::GOOGLE,
			'IBM Plex Mono' => self::GOOGLE,
			'IBM Plex Sans' => self::GOOGLE,
			'IBM Plex Sans Condensed' => self::GOOGLE,
			'IBM Plex Serif' => self::GOOGLE,
			'IM Fell DW Pica' => self::GOOGLE,
			'IM Fell DW Pica SC' => self::GOOGLE,
			'IM Fell Double Pica' => self::GOOGLE,
			'IM Fell Double Pica SC' => self::GOOGLE,
			'IM Fell English' => self::GOOGLE,
			'IM Fell English SC' => self::GOOGLE,
			'IM Fell French Canon' => self::GOOGLE,
			'IM Fell French Canon SC' => self::GOOGLE,
			'IM Fell Great Primer' => self::GOOGLE,
			'IM Fell Great Primer SC' => self::GOOGLE,
			'Ibarra Real Nova' => self::GOOGLE,
			'Iceberg' => self::GOOGLE,
			'Iceland' => self::GOOGLE,
			'Imbue' => self::GOOGLE,
			'Imprima' => self::GOOGLE,
			'Inconsolata' => self::GOOGLE,
			'Inder' => self::GOOGLE,
			'Indie Flower' => self::GOOGLE,
			'Inika' => self::GOOGLE,
			'Inknut Antiqua' => self::GOOGLE,
			'Inria Sans' => self::GOOGLE,
			'Inria Serif' => self::GOOGLE,
			'Inter' => self::GOOGLE,
			'Irish Grover' => self::GOOGLE,
			'Istok Web' => self::GOOGLE,
			'Italiana' => self::GOOGLE,
			'Italianno' => self::GOOGLE,
			'Itim' => self::GOOGLE,
			'Jacques Francois' => self::GOOGLE,
			'Jacques Francois Shadow' => self::GOOGLE,
			'Jaldi' => self::GOOGLE,
			'JetBrains Mono' => self::GOOGLE,
			'Jim Nightshade' => self::GOOGLE,
			'Jockey One' => self::GOOGLE,
			'Jolly Lodger' => self::GOOGLE,
			'Jomhuria' => self::GOOGLE,
			'Jomolhari' => self::GOOGLE,
			'Josefin Sans' => self::GOOGLE,
			'Josefin Slab' => self::GOOGLE,
			'Jost' => self::GOOGLE,
			'Joti One' => self::GOOGLE,
			'Jua' => self::GOOGLE,
			'Judson' => self::GOOGLE,
			'Julee' => self::GOOGLE,
			'Julius Sans One' => self::GOOGLE,
			'Junge' => self::GOOGLE,
			'Jura' => self::GOOGLE,
			'Just Another Hand' => self::GOOGLE,
			'Just Me Again Down Here' => self::GOOGLE,
			'K2D' => self::GOOGLE,
			'Kadwa' => self::GOOGLE,
			'Kalam' => self::GOOGLE,
			'Kameron' => self::GOOGLE,
			'Kanit' => self::GOOGLE,
			'Kantumruy' => self::GOOGLE,
			'Karantina' => self::GOOGLE,
			'Karla' => self::GOOGLE,
			'Karma' => self::GOOGLE,
			'Katibeh' => self::GOOGLE,
			'Kaushan Script' => self::GOOGLE,
			'Kavivanar' => self::GOOGLE,
			'Kavoon' => self::GOOGLE,
			'Kdam Thmor' => self::GOOGLE,
			'Keania One' => self::GOOGLE,
			'Kelly Slab' => self::GOOGLE,
			'Kenia' => self::GOOGLE,
			'Khand' => self::GOOGLE,
			'Khmer' => self::GOOGLE,
			'Khula' => self::GOOGLE,
			'Kirang Haerang' => self::GOOGLE,
			'Kite One' => self::GOOGLE,
			'Kiwi Maru' => self::GOOGLE,
			'Knewave' => self::GOOGLE,
			'KoHo' => self::GOOGLE,
			'Kodchasan' => self::GOOGLE,
			'Kosugi' => self::GOOGLE,
			'Kosugi Maru' => self::GOOGLE,
			'Kotta One' => self::GOOGLE,
			'Koulen' => self::GOOGLE,
			'Kranky' => self::GOOGLE,
			'Kreon' => self::GOOGLE,
			'Kristi' => self::GOOGLE,
			'Krona One' => self::GOOGLE,
			'Krub' => self::GOOGLE,
			'Kufam' => self::GOOGLE,
			'Kulim Park' => self::GOOGLE,
			'Kumar One' => self::GOOGLE,
			'Kumar One Outline' => self::GOOGLE,
			'Kumbh Sans' => self::GOOGLE,
			'Kurale' => self::GOOGLE,
			'La Belle Aurore' => self::GOOGLE,
			'Lacquer' => self::GOOGLE,
			'Laila' => self::GOOGLE,
			'Lakki Reddy' => self::GOOGLE,
			'Lalezar' => self::GOOGLE,
			'Lancelot' => self::GOOGLE,
			'Langar' => self::GOOGLE,
			'Lateef' => self::GOOGLE,
			'Lato' => self::GOOGLE,
			'League Script' => self::GOOGLE,
			'Leckerli One' => self::GOOGLE,
			'Ledger' => self::GOOGLE,
			'Lekton' => self::GOOGLE,
			'Lemon' => self::GOOGLE,
			'Lemonada' => self::GOOGLE,
			'Lexend' => self::GOOGLE,
			'Lexend Deca' => self::GOOGLE,
			'Lexend Exa' => self::GOOGLE,
			'Lexend Giga' => self::GOOGLE,
			'Lexend Mega' => self::GOOGLE,
			'Lexend Peta' => self::GOOGLE,
			'Lexend Tera' => self::GOOGLE,
			'Lexend Zetta' => self::GOOGLE,
			'Libre Barcode 128' => self::GOOGLE,
			'Libre Barcode 128 Text' => self::GOOGLE,
			'Libre Barcode 39' => self::GOOGLE,
			'Libre Barcode 39 Extended' => self::GOOGLE,
			'Libre Barcode 39 Extended Text' => self::GOOGLE,
			'Libre Barcode 39 Text' => self::GOOGLE,
			'Libre Barcode EAN13 Text' => self::GOOGLE,
			'Libre Baskerville' => self::GOOGLE,
			'Libre Caslon Display' => self::GOOGLE,
			'Libre Caslon Text' => self::GOOGLE,
			'Libre Franklin' => self::GOOGLE,
			'Life Savers' => self::GOOGLE,
			'Lilita One' => self::GOOGLE,
			'Lily Script One' => self::GOOGLE,
			'Limelight' => self::GOOGLE,
			'Linden Hill' => self::GOOGLE,
			'Literata' => self::GOOGLE,
			'Liu Jian Mao Cao' => self::GOOGLE,
			'Livvic' => self::GOOGLE,
			'Lobster' => self::GOOGLE,
			'Lobster Two' => self::GOOGLE,
			'Londrina Outline' => self::GOOGLE,
			'Londrina Shadow' => self::GOOGLE,
			'Londrina Sketch' => self::GOOGLE,
			'Londrina Solid' => self::GOOGLE,
			'Long Cang' => self::GOOGLE,
			'Lora' => self::GOOGLE,
			'Love Ya Like A Sister' => self::GOOGLE,
			'Loved by the King' => self::GOOGLE,
			'Lovers Quarrel' => self::GOOGLE,
			'Luckiest Guy' => self::GOOGLE,
			'Lusitana' => self::GOOGLE,
			'Lustria' => self::GOOGLE,
			'M PLUS 1p' => self::GOOGLE,
			'M PLUS Rounded 1c' => self::GOOGLE,
			'Ma Shan Zheng' => self::GOOGLE,
			'Macondo' => self::GOOGLE,
			'Macondo Swash Caps' => self::GOOGLE,
			'Mada' => self::GOOGLE,
			'Magra' => self::GOOGLE,
			'Maiden Orange' => self::GOOGLE,
			'Maitree' => self::GOOGLE,
			'Major Mono Display' => self::GOOGLE,
			'Mako' => self::GOOGLE,
			'Mali' => self::GOOGLE,
			'Mallanna' => self::GOOGLE,
			'Mandali' => self::GOOGLE,
			'Manjari' => self::GOOGLE,
			'Manrope' => self::GOOGLE,
			'Mansalva' => self::GOOGLE,
			'Manuale' => self::GOOGLE,
			'Marcellus' => self::GOOGLE,
			'Marcellus SC' => self::GOOGLE,
			'Marck Script' => self::GOOGLE,
			'Margarine' => self::GOOGLE,
			'Markazi Text' => self::GOOGLE,
			'Marko One' => self::GOOGLE,
			'Marmelad' => self::GOOGLE,
			'Martel' => self::GOOGLE,
			'Martel Sans' => self::GOOGLE,
			'Marvel' => self::GOOGLE,
			'Mate' => self::GOOGLE,
			'Mate SC' => self::GOOGLE,
			'Maven Pro' => self::GOOGLE,
			'McLaren' => self::GOOGLE,
			'Meddon' => self::GOOGLE,
			'MedievalSharp' => self::GOOGLE,
			'Medula One' => self::GOOGLE,
			'Meera Inimai' => self::GOOGLE,
			'Megrim' => self::GOOGLE,
			'Meie Script' => self::GOOGLE,
			'Merienda' => self::GOOGLE,
			'Merienda One' => self::GOOGLE,
			'Merriweather' => self::GOOGLE,
			'Merriweather Sans' => self::GOOGLE,
			'Metal' => self::GOOGLE,
			'Metal Mania' => self::GOOGLE,
			'Metamorphous' => self::GOOGLE,
			'Metrophobic' => self::GOOGLE,
			'Michroma' => self::GOOGLE,
			'Milonga' => self::GOOGLE,
			'Miltonian' => self::GOOGLE,
			'Miltonian Tattoo' => self::GOOGLE,
			'Mina' => self::GOOGLE,
			'Miniver' => self::GOOGLE,
			'Miriam Libre' => self::GOOGLE,
			'Mirza' => self::GOOGLE,
			'Miss Fajardose' => self::GOOGLE,
			'Mitr' => self::GOOGLE,
			'Modak' => self::GOOGLE,
			'Modern Antiqua' => self::GOOGLE,
			'Mogra' => self::GOOGLE,
			'Molengo' => self::GOOGLE,
			'Molle' => self::GOOGLE,
			'Monda' => self::GOOGLE,
			'Monofett' => self::GOOGLE,
			'Monoton' => self::GOOGLE,
			'Monsieur La Doulaise' => self::GOOGLE,
			'Montaga' => self::GOOGLE,
			'Montez' => self::GOOGLE,
			'Montserrat' => self::GOOGLE,
			'Montserrat Alternates' => self::GOOGLE,
			'Montserrat Subrayada' => self::GOOGLE,
			'Moul' => self::GOOGLE,
			'Moulpali' => self::GOOGLE,
			'Mountains of Christmas' => self::GOOGLE,
			'Mouse Memoirs' => self::GOOGLE,
			'Mr Bedfort' => self::GOOGLE,
			'Mr Dafoe' => self::GOOGLE,
			'Mr De Haviland' => self::GOOGLE,
			'Mrs Saint Delafield' => self::GOOGLE,
			'Mrs Sheppards' => self::GOOGLE,
			'Mukta' => self::GOOGLE,
			'Mukta Mahee' => self::GOOGLE,
			'Mukta Malar' => self::GOOGLE,
			'Mukta Vaani' => self::GOOGLE,
			'Mulish' => self::GOOGLE,
			'MuseoModerno' => self::GOOGLE,
			'Mystery Quest' => self::GOOGLE,
			'NTR' => self::GOOGLE,
			'Nanum Brush Script' => self::GOOGLE,
			'Nanum Gothic' => self::GOOGLE,
			'Nanum Gothic Coding' => self::GOOGLE,
			'Nanum Myeongjo' => self::GOOGLE,
			'Nanum Pen Script' => self::GOOGLE,
			'Nerko One' => self::GOOGLE,
			'Neucha' => self::GOOGLE,
			'Neuton' => self::GOOGLE,
			'New Rocker' => self::GOOGLE,
			'New Tegomin' => self::GOOGLE,
			'News Cycle' => self::GOOGLE,
			'Newsreader' => self::GOOGLE,
			'Niconne' => self::GOOGLE,
			'Niramit' => self::GOOGLE,
			'Nixie One' => self::GOOGLE,
			'Nobile' => self::GOOGLE,
			'Nokora' => self::GOOGLE,
			'Norican' => self::GOOGLE,
			'Nosifer' => self::GOOGLE,
			'Notable' => self::GOOGLE,
			'Nothing You Could Do' => self::GOOGLE,
			'Noticia Text' => self::GOOGLE,
			'Noto Kufi Arabic' => self::EARLYACCESS, // Hack for Google Early Access.
			'Noto Naskh Arabic' => self::EARLYACCESS, // Hack for Google Early Access.
			'Noto Sans' => self::GOOGLE,
			'Noto Sans HK' => self::GOOGLE,
			'Noto Sans Hebrew' => self::EARLYACCESS, // Hack for Google Early Access.
			'Noto Sans JP' => self::GOOGLE,
			'Noto Sans KR' => self::GOOGLE,
			'Noto Sans SC' => self::GOOGLE,
			'Noto Sans TC' => self::GOOGLE,
			'Noto Serif' => self::GOOGLE,
			'Noto Serif JP' => self::GOOGLE,
			'Noto Serif KR' => self::GOOGLE,
			'Noto Serif SC' => self::GOOGLE,
			'Noto Serif TC' => self::GOOGLE,
			'Nova Cut' => self::GOOGLE,
			'Nova Flat' => self::GOOGLE,
			'Nova Mono' => self::GOOGLE,
			'Nova Oval' => self::GOOGLE,
			'Nova Round' => self::GOOGLE,
			'Nova Script' => self::GOOGLE,
			'Nova Slim' => self::GOOGLE,
			'Nova Square' => self::GOOGLE,
			'Numans' => self::GOOGLE,
			'Nunito' => self::GOOGLE,
			'Nunito Sans' => self::GOOGLE,
			'Odibee Sans' => self::GOOGLE,
			'Odor Mean Chey' => self::GOOGLE,
			'Offside' => self::GOOGLE,
			'Oi' => self::GOOGLE,
			'Old Standard TT' => self::GOOGLE,
			'Oldenburg' => self::GOOGLE,
			'Oleo Script' => self::GOOGLE,
			'Oleo Script Swash Caps' => self::GOOGLE,
			'Open Sans' => self::GOOGLE,
			'Open Sans Condensed' => self::GOOGLE,
			'Open Sans Hebrew' => self::EARLYACCESS, // Hack for Google Early Access.
			'Open Sans Hebrew Condensed' => self::EARLYACCESS, // Hack for Google Early Access.
			'Oranienbaum' => self::GOOGLE,
			'Orbitron' => self::GOOGLE,
			'Oregano' => self::GOOGLE,
			'Orelega One' => self::GOOGLE,
			'Orienta' => self::GOOGLE,
			'Original Surfer' => self::GOOGLE,
			'Oswald' => self::GOOGLE,
			'Over the Rainbow' => self::GOOGLE,
			'Overlock' => self::GOOGLE,
			'Overlock SC' => self::GOOGLE,
			'Overpass' => self::GOOGLE,
			'Overpass Mono' => self::GOOGLE,
			'Ovo' => self::GOOGLE,
			'Oxanium' => self::GOOGLE,
			'Oxygen' => self::GOOGLE,
			'Oxygen Mono' => self::GOOGLE,
			'PT Mono' => self::GOOGLE,
			'PT Sans' => self::GOOGLE,
			'PT Sans Caption' => self::GOOGLE,
			'PT Sans Narrow' => self::GOOGLE,
			'PT Serif' => self::GOOGLE,
			'PT Serif Caption' => self::GOOGLE,
			'Pacifico' => self::GOOGLE,
			'Padauk' => self::GOOGLE,
			'Palanquin' => self::GOOGLE,
			'Palanquin Dark' => self::GOOGLE,
			'Pangolin' => self::GOOGLE,
			'Paprika' => self::GOOGLE,
			'Parisienne' => self::GOOGLE,
			'Passero One' => self::GOOGLE,
			'Passion One' => self::GOOGLE,
			'Pathway Gothic One' => self::GOOGLE,
			'Patrick Hand' => self::GOOGLE,
			'Patrick Hand SC' => self::GOOGLE,
			'Pattaya' => self::GOOGLE,
			'Patua One' => self::GOOGLE,
			'Pavanam' => self::GOOGLE,
			'Paytone One' => self::GOOGLE,
			'Peddana' => self::GOOGLE,
			'Peralta' => self::GOOGLE,
			'Permanent Marker' => self::GOOGLE,
			'Petit Formal Script' => self::GOOGLE,
			'Petrona' => self::GOOGLE,
			'Philosopher' => self::GOOGLE,
			'Piazzolla' => self::GOOGLE,
			'Piedra' => self::GOOGLE,
			'Pinyon Script' => self::GOOGLE,
			'Pirata One' => self::GOOGLE,
			'Plaster' => self::GOOGLE,
			'Play' => self::GOOGLE,
			'Playball' => self::GOOGLE,
			'Playfair Display' => self::GOOGLE,
			'Playfair Display SC' => self::GOOGLE,
			'Podkova' => self::GOOGLE,
			'Poiret One' => self::GOOGLE,
			'Poller One' => self::GOOGLE,
			'Poly' => self::GOOGLE,
			'Pompiere' => self::GOOGLE,
			'Pontano Sans' => self::GOOGLE,
			'Poor Story' => self::GOOGLE,
			'Poppins' => self::GOOGLE,
			'Port Lligat Sans' => self::GOOGLE,
			'Port Lligat Slab' => self::GOOGLE,
			'Potta One' => self::GOOGLE,
			'Pragati Narrow' => self::GOOGLE,
			'Prata' => self::GOOGLE,
			'Preahvihear' => self::GOOGLE,
			'Press Start 2P' => self::GOOGLE,
			'Pridi' => self::GOOGLE,
			'Princess Sofia' => self::GOOGLE,
			'Prociono' => self::GOOGLE,
			'Prompt' => self::GOOGLE,
			'Prosto One' => self::GOOGLE,
			'Proza Libre' => self::GOOGLE,
			'Public Sans' => self::GOOGLE,
			'Puritan' => self::GOOGLE,
			'Purple Purse' => self::GOOGLE,
			'Quando' => self::GOOGLE,
			'Quantico' => self::GOOGLE,
			'Quattrocento' => self::GOOGLE,
			'Quattrocento Sans' => self::GOOGLE,
			'Questrial' => self::GOOGLE,
			'Quicksand' => self::GOOGLE,
			'Quintessential' => self::GOOGLE,
			'Qwigley' => self::GOOGLE,
			'Racing Sans One' => self::GOOGLE,
			'Radley' => self::GOOGLE,
			'Rajdhani' => self::GOOGLE,
			'Rakkas' => self::GOOGLE,
			'Raleway' => self::GOOGLE,
			'Raleway Dots' => self::GOOGLE,
			'Ramabhadra' => self::GOOGLE,
			'Ramaraja' => self::GOOGLE,
			'Rambla' => self::GOOGLE,
			'Rammetto One' => self::GOOGLE,
			'Ranchers' => self::GOOGLE,
			'Rancho' => self::GOOGLE,
			'Ranga' => self::GOOGLE,
			'Rasa' => self::GOOGLE,
			'Rationale' => self::GOOGLE,
			'Ravi Prakash' => self::GOOGLE,
			'Recursive' => self::GOOGLE,
			'Red Hat Display' => self::GOOGLE,
			'Red Hat Text' => self::GOOGLE,
			'Red Rose' => self::GOOGLE,
			'Redressed' => self::GOOGLE,
			'Reem Kufi' => self::GOOGLE,
			'Reenie Beanie' => self::GOOGLE,
			'Reggae One' => self::GOOGLE,
			'Revalia' => self::GOOGLE,
			'Rhodium Libre' => self::GOOGLE,
			'Ribeye' => self::GOOGLE,
			'Ribeye Marrow' => self::GOOGLE,
			'Righteous' => self::GOOGLE,
			'Risque' => self::GOOGLE,
			'Roboto' => self::GOOGLE,
			'Roboto Condensed' => self::GOOGLE,
			'Roboto Mono' => self::GOOGLE,
			'Roboto Slab' => self::GOOGLE,
			'Rochester' => self::GOOGLE,
			'Rock Salt' => self::GOOGLE,
			'RocknRoll One' => self::GOOGLE,
			'Rokkitt' => self::GOOGLE,
			'Romanesco' => self::GOOGLE,
			'Ropa Sans' => self::GOOGLE,
			'Rosario' => self::GOOGLE,
			'Rosarivo' => self::GOOGLE,
			'Rouge Script' => self::GOOGLE,
			'Rowdies' => self::GOOGLE,
			'Rozha One' => self::GOOGLE,
			'Rubik' => self::GOOGLE,
			'Rubik Mono One' => self::GOOGLE,
			'Ruda' => self::GOOGLE,
			'Rufina' => self::GOOGLE,
			'Ruge Boogie' => self::GOOGLE,
			'Ruluko' => self::GOOGLE,
			'Rum Raisin' => self::GOOGLE,
			'Ruslan Display' => self::GOOGLE,
			'Russo One' => self::GOOGLE,
			'Ruthie' => self::GOOGLE,
			'Rye' => self::GOOGLE,
			'Sacramento' => self::GOOGLE,
			'Sahitya' => self::GOOGLE,
			'Sail' => self::GOOGLE,
			'Saira' => self::GOOGLE,
			'Saira Condensed' => self::GOOGLE,
			'Saira Extra Condensed' => self::GOOGLE,
			'Saira Semi Condensed' => self::GOOGLE,
			'Saira Stencil One' => self::GOOGLE,
			'Salsa' => self::GOOGLE,
			'Sanchez' => self::GOOGLE,
			'Sancreek' => self::GOOGLE,
			'Sansita' => self::GOOGLE,
			'Sansita Swashed' => self::GOOGLE,
			'Sarabun' => self::GOOGLE,
			'Sarala' => self::GOOGLE,
			'Sarina' => self::GOOGLE,
			'Sarpanch' => self::GOOGLE,
			'Satisfy' => self::GOOGLE,
			'Sawarabi Gothic' => self::GOOGLE,
			'Sawarabi Mincho' => self::GOOGLE,
			'Scada' => self::GOOGLE,
			'Scheherazade' => self::GOOGLE,
			'Schoolbell' => self::GOOGLE,
			'Scope One' => self::GOOGLE,
			'Seaweed Script' => self::GOOGLE,
			'Secular One' => self::GOOGLE,
			'Sedgwick Ave' => self::GOOGLE,
			'Sedgwick Ave Display' => self::GOOGLE,
			'Sen' => self::GOOGLE,
			'Sevillana' => self::GOOGLE,
			'Seymour One' => self::GOOGLE,
			'Shadows Into Light' => self::GOOGLE,
			'Shadows Into Light Two' => self::GOOGLE,
			'Shanti' => self::GOOGLE,
			'Share' => self::GOOGLE,
			'Share Tech' => self::GOOGLE,
			'Share Tech Mono' => self::GOOGLE,
			'Shippori Mincho' => self::GOOGLE,
			'Shippori Mincho B1' => self::GOOGLE,
			'Shojumaru' => self::GOOGLE,
			'Short Stack' => self::GOOGLE,
			'Shrikhand' => self::GOOGLE,
			'Siemreap' => self::GOOGLE,
			'Sigmar One' => self::GOOGLE,
			'Signika' => self::GOOGLE,
			'Signika Negative' => self::GOOGLE,
			'Simonetta' => self::GOOGLE,
			'Single Day' => self::GOOGLE,
			'Sintony' => self::GOOGLE,
			'Sirin Stencil' => self::GOOGLE,
			'Six Caps' => self::GOOGLE,
			'Skranji' => self::GOOGLE,
			'Slabo 13px' => self::GOOGLE,
			'Slabo 27px' => self::GOOGLE,
			'Slackey' => self::GOOGLE,
			'Smokum' => self::GOOGLE,
			'Smythe' => self::GOOGLE,
			'Sniglet' => self::GOOGLE,
			'Snippet' => self::GOOGLE,
			'Snowburst One' => self::GOOGLE,
			'Sofadi One' => self::GOOGLE,
			'Sofia' => self::GOOGLE,
			'Solway' => self::GOOGLE,
			'Song Myung' => self::GOOGLE,
			'Sonsie One' => self::GOOGLE,
			'Sora' => self::GOOGLE,
			'Sorts Mill Goudy' => self::GOOGLE,
			'Source Code Pro' => self::GOOGLE,
			'Source Sans Pro' => self::GOOGLE,
			'Source Serif Pro' => self::GOOGLE,
			'Space Grotesk' => self::GOOGLE,
			'Space Mono' => self::GOOGLE,
			'Spartan' => self::GOOGLE,
			'Special Elite' => self::GOOGLE,
			'Spectral' => self::GOOGLE,
			'Spectral SC' => self::GOOGLE,
			'Spicy Rice' => self::GOOGLE,
			'Spinnaker' => self::GOOGLE,
			'Spirax' => self::GOOGLE,
			'Squada One' => self::GOOGLE,
			'Sree Krushnadevaraya' => self::GOOGLE,
			'Sriracha' => self::GOOGLE,
			'Srisakdi' => self::GOOGLE,
			'Staatliches' => self::GOOGLE,
			'Stalemate' => self::GOOGLE,
			'Stalinist One' => self::GOOGLE,
			'Stardos Stencil' => self::GOOGLE,
			'Stick' => self::GOOGLE,
			'Stint Ultra Condensed' => self::GOOGLE,
			'Stint Ultra Expanded' => self::GOOGLE,
			'Stoke' => self::GOOGLE,
			'Strait' => self::GOOGLE,
			'Stylish' => self::GOOGLE,
			'Sue Ellen Francisco' => self::GOOGLE,
			'Suez One' => self::GOOGLE,
			'Sulphur Point' => self::GOOGLE,
			'Sumana' => self::GOOGLE,
			'Sunflower' => self::GOOGLE,
			'Sunshiney' => self::GOOGLE,
			'Supermercado One' => self::GOOGLE,
			'Sura' => self::GOOGLE,
			'Suranna' => self::GOOGLE,
			'Suravaram' => self::GOOGLE,
			'Suwannaphum' => self::GOOGLE,
			'Swanky and Moo Moo' => self::GOOGLE,
			'Syncopate' => self::GOOGLE,
			'Syne' => self::GOOGLE,
			'Syne Mono' => self::GOOGLE,
			'Syne Tactile' => self::GOOGLE,
			'Tajawal' => self::GOOGLE,
			'Tangerine' => self::GOOGLE,
			'Taprom' => self::GOOGLE,
			'Tauri' => self::GOOGLE,
			'Taviraj' => self::GOOGLE,
			'Teko' => self::GOOGLE,
			'Telex' => self::GOOGLE,
			'Tenali Ramakrishna' => self::GOOGLE,
			'Tenor Sans' => self::GOOGLE,
			'Text Me One' => self::GOOGLE,
			'Texturina' => self::GOOGLE,
			'Thasadith' => self::GOOGLE,
			'The Girl Next Door' => self::GOOGLE,
			'Tienne' => self::GOOGLE,
			'Tillana' => self::GOOGLE,
			'Timmana' => self::GOOGLE,
			'Tinos' => self::GOOGLE,
			'Titan One' => self::GOOGLE,
			'Titillium Web' => self::GOOGLE,
			'Tomorrow' => self::GOOGLE,
			'Trade Winds' => self::GOOGLE,
			'Train One' => self::GOOGLE,
			'Trirong' => self::GOOGLE,
			'Trispace' => self::GOOGLE,
			'Trocchi' => self::GOOGLE,
			'Trochut' => self::GOOGLE,
			'Truculenta' => self::GOOGLE,
			'Trykker' => self::GOOGLE,
			'Tulpen One' => self::GOOGLE,
			'Turret Road' => self::GOOGLE,
			'Ubuntu' => self::GOOGLE,
			'Ubuntu Condensed' => self::GOOGLE,
			'Ubuntu Mono' => self::GOOGLE,
			'Ultra' => self::GOOGLE,
			'Uncial Antiqua' => self::GOOGLE,
			'Underdog' => self::GOOGLE,
			'Unica One' => self::GOOGLE,
			'UnifrakturCook' => self::GOOGLE,
			'UnifrakturMaguntia' => self::GOOGLE,
			'Unkempt' => self::GOOGLE,
			'Unlock' => self::GOOGLE,
			'Unna' => self::GOOGLE,
			'VT323' => self::GOOGLE,
			'Vampiro One' => self::GOOGLE,
			'Varela' => self::GOOGLE,
			'Varela Round' => self::GOOGLE,
			'Varta' => self::GOOGLE,
			'Vast Shadow' => self::GOOGLE,
			'Vesper Libre' => self::GOOGLE,
			'Viaoda Libre' => self::GOOGLE,
			'Vibes' => self::GOOGLE,
			'Vibur' => self::GOOGLE,
			'Vidaloka' => self::GOOGLE,
			'Viga' => self::GOOGLE,
			'Voces' => self::GOOGLE,
			'Volkhov' => self::GOOGLE,
			'Vollkorn' => self::GOOGLE,
			'Vollkorn SC' => self::GOOGLE,
			'Voltaire' => self::GOOGLE,
			'Waiting for the Sunrise' => self::GOOGLE,
			'Wallpoet' => self::GOOGLE,
			'Walter Turncoat' => self::GOOGLE,
			'Warnes' => self::GOOGLE,
			'Wellfleet' => self::GOOGLE,
			'Wendy One' => self::GOOGLE,
			'Wire One' => self::GOOGLE,
			'Work Sans' => self::GOOGLE,
			'Xanh Mono' => self::GOOGLE,
			'Yanone Kaffeesatz' => self::GOOGLE,
			'Yantramanav' => self::GOOGLE,
			'Yatra One' => self::GOOGLE,
			'Yellowtail' => self::GOOGLE,
			'Yeon Sung' => self::GOOGLE,
			'Yeseva One' => self::GOOGLE,
			'Yesteryear' => self::GOOGLE,
			'Yrsa' => self::GOOGLE,
			'Yusei Magic' => self::GOOGLE,
			'ZCOOL KuaiLe' => self::GOOGLE,
			'ZCOOL QingKe HuangYou' => self::GOOGLE,
			'ZCOOL XiaoWei' => self::GOOGLE,
			'Zen Dots' => self::GOOGLE,
			'Zeyada' => self::GOOGLE,
			'Zhi Mang Xing' => self::GOOGLE,
			'Zilla Slab' => self::GOOGLE,
			'Zilla Slab Highlight' => self::GOOGLE,
		];
	}

	/**
	 * Get font type.
	 *
	 * Retrieve the font type for a given font.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @param string $name Font name.
	 *
	 * @return string|false Font type, or false if font doesn't exist.
	 */
	public static function get_font_type( $name ) {
		$fonts = self::get_fonts();

		if ( empty( $fonts[ $name ] ) ) {
			return false;
		}

		return $fonts[ $name ];
	}

	/**
	 * Get fonts by group.
	 *
	 * Retrieve all the fonts belong to specific group.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @param array $groups Optional. Font group. Default is an empty array.
	 *
	 * @return array Font type, or false if font doesn't exist.
	 */
	public static function get_fonts_by_groups( $groups = [] ) {
		return array_filter( self::get_fonts(), function( $font ) use ( $groups ) {
			return in_array( $font, $groups );
		} );
	}

	public static function get_font_display_setting() {
		return get_option( 'elementor_font_display', 'auto' );
	}
}
includes/conditions.php000064400000005320151327220420011232 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor conditions.
 *
 * Elementor conditions handler class introduce the compare conditions and the
 * check conditions methods.
 *
 * @since 1.0.0
 */
class Conditions {

	/**
	 * Compare conditions.
	 *
	 * Whether the two values comply the comparison operator.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @param mixed  $left_value  First value to compare.
	 * @param mixed  $right_value Second value to compare.
	 * @param string $operator    Comparison operator.
	 *
	 * @return bool Whether the two values complies the comparison operator.
	 */
	public static function compare( $left_value, $right_value, $operator ) {
		switch ( $operator ) {
			case '==':
				return $left_value == $right_value;
			case '!=':
				return $left_value != $right_value;
			case '!==':
				return $left_value !== $right_value;
			case 'in':
				return in_array( $left_value, $right_value, true );
			case '!in':
				return ! in_array( $left_value, $right_value, true );
			case 'contains':
				return in_array( $right_value, $left_value, true );
			case '!contains':
				return ! in_array( $right_value, $left_value, true );
			case '<':
				return $left_value < $right_value;
			case '<=':
				return $left_value <= $right_value;
			case '>':
				return $left_value > $right_value;
			case '>=':
				return $left_value >= $right_value;
			default:
				return $left_value === $right_value;
		}
	}

	/**
	 * Check conditions.
	 *
	 * Whether the comparison conditions comply.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @param array $conditions The conditions to check.
	 * @param array $comparison The comparison parameter.
	 *
	 * @return bool Whether the comparison conditions comply.
	 */
	public static function check( array $conditions, array $comparison ) {
		$is_or_condition = isset( $conditions['relation'] ) && 'or' === $conditions['relation'];

		$condition_succeed = ! $is_or_condition;

		foreach ( $conditions['terms'] as $term ) {
			if ( ! empty( $term['terms'] ) ) {
				$comparison_result = self::check( $term, $comparison );
			} else {
				preg_match( '/(\w+)(?:\[(\w+)])?/', $term['name'], $parsed_name );

				$value = $comparison[ $parsed_name[1] ];

				if ( ! empty( $parsed_name[2] ) ) {
					$value = $value[ $parsed_name[2] ];
				}

				$operator = null;

				if ( ! empty( $term['operator'] ) ) {
					$operator = $term['operator'];
				}

				$comparison_result = self::compare( $value, $term['value'], $operator );
			}

			if ( $is_or_condition ) {
				if ( $comparison_result ) {
					return true;
				}
			} elseif ( ! $comparison_result ) {
				return false;
			}
		}

		return $condition_succeed;
	}
}
includes/stylesheet.php000064400000021642151327220420011257 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor stylesheet.
 *
 * Elementor stylesheet handler class responsible for setting up CSS rules and
 * properties, and all the CSS `@media` rule with supported viewport width.
 *
 * @since 1.0.0
 */
class Stylesheet {

	/**
	 * CSS Rules.
	 *
	 * Holds the list of CSS rules.
	 *
	 * @since 1.0.0
	 * @access private
	 *
	 * @var array A list of CSS rules.
	 */
	private $rules = [];

	/**
	 * Devices.
	 *
	 * Holds the list of devices.
	 *
	 * @since 1.0.0
	 * @access private
	 *
	 * @var array A list of devices.
	 */
	private $devices = [];

	/**
	 * Raw CSS.
	 *
	 * Holds the raw CSS.
	 *
	 * @since 1.0.0
	 * @access private
	 *
	 * @var array The raw CSS.
	 */
	private $raw = [];

	/**
	 * Parse CSS rules.
	 *
	 * Goes over the list of CSS rules and generates the final CSS.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @param array $rules CSS rules.
	 *
	 * @return string Parsed rules.
	 */
	public static function parse_rules( array $rules ) {
		$parsed_rules = '';

		foreach ( $rules as $selector => $properties ) {
			$selector_content = self::parse_properties( $properties );

			if ( $selector_content ) {
				$parsed_rules .= $selector . '{' . $selector_content . '}';
			}
		}

		return $parsed_rules;
	}

	/**
	 * Parse CSS properties.
	 *
	 * Goes over the selector properties and generates the CSS of the selector.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @param array $properties CSS properties.
	 *
	 * @return string Parsed properties.
	 */
	public static function parse_properties( array $properties ) {
		$parsed_properties = '';

		foreach ( $properties as $property_key => $property_value ) {
			if ( '' !== $property_value ) {
				$parsed_properties .= $property_key . ':' . $property_value . ';';
			}
		}

		return $parsed_properties;
	}

	/**
	 * Add device.
	 *
	 * Add a new device to the devices list.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param string $device_name      Device name.
	 * @param string $device_max_point Device maximum point.
	 *
	 * @return Stylesheet The current stylesheet class instance.
	 */
	public function add_device( $device_name, $device_max_point ) {
		$this->devices[ $device_name ] = $device_max_point;

		asort( $this->devices );

		return $this;
	}

	/**
	 * Add rules.
	 *
	 * Add a new CSS rule to the rules list.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param string       $selector    CSS selector.
	 * @param array|string $style_rules Optional. Style rules. Default is `null`.
	 * @param array        $query       Optional. Media query. Default is `null`.
	 *
	 * @return Stylesheet The current stylesheet class instance.
	 */
	public function add_rules( $selector, $style_rules = null, array $query = null ) {
		$query_hash = 'all';

		if ( $query ) {
			$query_hash = $this->query_to_hash( $query );
		}

		if ( ! isset( $this->rules[ $query_hash ] ) ) {
			$this->add_query_hash( $query_hash );
		}

		if ( null === $style_rules ) {
			preg_match_all( '/([^\s].+?(?=\{))\{((?s:.)+?(?=}))}/', $selector, $parsed_rules );

			foreach ( $parsed_rules[1] as $index => $selector ) {
				$this->add_rules( $selector, $parsed_rules[2][ $index ], $query );
			}

			return $this;
		}

		if ( ! isset( $this->rules[ $query_hash ][ $selector ] ) ) {
			$this->rules[ $query_hash ][ $selector ] = [];
		}

		if ( is_string( $style_rules ) ) {
			$style_rules = array_filter( explode( ';', trim( $style_rules ) ) );

			$ordered_rules = [];

			foreach ( $style_rules as $rule ) {
				$property = explode( ':', $rule, 2 );

				if ( count( $property ) < 2 ) {
					return $this;
				}

				$ordered_rules[ trim( $property[0] ) ] = trim( $property[1], ' ;' );
			}

			$style_rules = $ordered_rules;
		}

		$this->rules[ $query_hash ][ $selector ] = array_merge( $this->rules[ $query_hash ][ $selector ], $style_rules );

		return $this;
	}

	/**
	 * Add raw CSS.
	 *
	 * Add a raw CSS rule.
	 *
	 * @since 1.0.8
	 * @access public
	 *
	 * @param string $css    The raw CSS.
	 * @param string $device Optional. The device. Default is empty.
	 *
	 * @return Stylesheet The current stylesheet class instance.
	 */
	public function add_raw_css( $css, $device = '' ) {
		if ( ! isset( $this->raw[ $device ] ) ) {
			$this->raw[ $device ] = [];
		}

		$this->raw[ $device ][] = trim( $css );

		return $this;
	}

	/**
	 * Get CSS rules.
	 *
	 * Retrieve the CSS rules.
	 *
	 * @since 1.0.5
	 * @access public
	 *
	 * @param string $device   Optional. The device. Default is empty.
	 * @param string $selector Optional. CSS selector. Default is empty.
	 * @param string $property Optional. CSS property. Default is empty.
	 *
	 * @return null|array CSS rules, or `null` if not rules found.
	 */
	public function get_rules( $device = null, $selector = null, $property = null ) {
		if ( ! $device ) {
			return $this->rules;
		}

		if ( $property ) {
			return isset( $this->rules[ $device ][ $selector ][ $property ] ) ? $this->rules[ $device ][ $selector ][ $property ] : null;
		}

		if ( $selector ) {
			return isset( $this->rules[ $device ][ $selector ] ) ? $this->rules[ $device ][ $selector ] : null;
		}

		return isset( $this->rules[ $device ] ) ? $this->rules[ $device ] : null;
	}

	/**
	 * To string.
	 *
	 * This magic method responsible for parsing the rules into one CSS string.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string CSS style.
	 */
	public function __toString() {
		$style_text = '';

		foreach ( $this->rules as $query_hash => $rule ) {
			$device_text = self::parse_rules( $rule );

			if ( 'all' !== $query_hash ) {
				$device_text = $this->get_query_hash_style_format( $query_hash ) . '{' . $device_text . '}';
			}

			$style_text .= $device_text;
		}

		foreach ( $this->raw as $device_name => $raw ) {
			$raw = implode( "\n", $raw );

			if ( $raw && isset( $this->devices[ $device_name ] ) ) {
				$raw = '@media(max-width: ' . $this->devices[ $device_name ] . 'px){' . $raw . '}';
			}

			$style_text .= $raw;
		}

		return $style_text;
	}

	/**
	 * Query to hash.
	 *
	 * Turns the media query into a hashed string that represents the query
	 * endpoint in the rules list.
	 *
	 * @since 1.2.0
	 * @access private
	 *
	 * @param array $query CSS media query.
	 *
	 * @return string Hashed string of the query.
	 */
	private function query_to_hash( array $query ) {
		$hash = [];

		foreach ( $query as $endpoint => $value ) {
			$hash[] = $endpoint . '_' . $value;
		}

		return implode( '-', $hash );
	}

	/**
	 * Hash to query.
	 *
	 * Turns the hashed string to an array that contains the data of the query
	 * endpoint.
	 *
	 * @since 1.2.0
	 * @access private
	 *
	 * @param string $hash Hashed string of the query.
	 *
	 * @return array Media query data.
	 */
	private function hash_to_query( $hash ) {
		$query = [];

		$hash = array_filter( explode( '-', $hash ) );

		foreach ( $hash as $single_query ) {
			preg_match( '/(min|max)_(.*)/', $single_query, $query_parts );

			$end_point = $query_parts[1];

			$device_name = $query_parts[2];

			$query[ $end_point ] = 'max' === $end_point ? $this->devices[ $device_name ] : Plugin::$instance->breakpoints->get_device_min_breakpoint( $device_name );
		}

		return $query;
	}

	/**
	 * Add query hash.
	 *
	 * Register new endpoint query and sort the rules the way they should be
	 * displayed in the final stylesheet based on the device and the viewport
	 * width.
	 *
	 * @since 1.2.0
	 * @access private
	 *
	 * @param string $query_hash Hashed string of the query.
	 */
	private function add_query_hash( $query_hash ) {
		$this->rules[ $query_hash ] = [];

		uksort(
			$this->rules, function( $a, $b ) {
				if ( 'all' === $a ) {
					return -1;
				}

				if ( 'all' === $b ) {
					return 1;
				}

				$a_query = $this->hash_to_query( $a );

				$b_query = $this->hash_to_query( $b );

				if ( isset( $a_query['min'] ) xor isset( $b_query['min'] ) ) {
					return 1;
				}

				if ( isset( $a_query['min'] ) ) {
					$range = $a_query['min'] - $b_query['min'];

					if ( $range ) {
						return $range;
					}

					$a_has_max = isset( $a_query['max'] );

					if ( $a_has_max xor isset( $b_query['max'] ) ) {
						return $a_has_max ? 1 : -1;
					}

					if ( ! $a_has_max ) {
						return 0;
					}
				}

				return $b_query['max'] - $a_query['max'];
			}
		);
	}

	/**
	 * Get query hash style format.
	 *
	 * Retrieve formated media query rule with the endpoint width settings.
	 *
	 * The method returns the CSS `@media` rule and supported viewport width in
	 * pixels. It can also handel multiple width endpoints.
	 *
	 * @since 1.2.0
	 * @access private
	 *
	 * @param string $query_hash The hash of the query.
	 *
	 * @return string CSS media query.
	 */
	private function get_query_hash_style_format( $query_hash ) {
		$query = $this->hash_to_query( $query_hash );

		$style_format = [];

		foreach ( $query as $end_point => $value ) {
			$style_format[] = '(' . $end_point . '-width:' . $value . 'px)';
		}

		return '@media' . implode( ' and ', $style_format );
	}
}
includes/preview.php000064400000017153151327220420010551 0ustar00<?php
namespace Elementor;

use Elementor\Core\Base\App;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor preview.
 *
 * Elementor preview handler class is responsible for initializing Elementor in
 * preview mode.
 *
 * @since 1.0.0
 */
class Preview extends App {

	/**
	 * Is Preview.
	 *
	 * Holds a flag if current request is a preview.
	 * The flag is not related to a specific post or edit permissions.
	 *
	 * @since 2.9.5
	 * @access private
	 *
	 * @var bool Is Preview.
	 */

	private $is_preview;

	/**
	 * Post ID.
	 *
	 * Holds the ID of the current post being previewed.
	 *
	 * @since 1.0.0
	 * @access private
	 *
	 * @var int Post ID.
	 */
	private $post_id;

	/**
	 * Get module name.
	 *
	 * Retrieve the module name.
	 *
	 * @since 3.0.0
	 * @access public
	 * @abstract
	 *
	 * @return string Module name.
	 */
	public function get_name() {
		return 'preview';
	}

	/**
	 * Init.
	 *
	 * Initialize Elementor preview mode.
	 *
	 * Fired by `template_redirect` action.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function init() {
		if ( is_admin() || ! $this->is_preview_mode() ) {
			return;
		}

		if ( isset( $_GET['preview-debug'] ) ) {
			register_shutdown_function( function () {
				$e = error_get_last();
				if ( $e ) {
					echo '<div id="elementor-preview-debug-error"><pre>';
					Utils::print_unescaped_internal_string( $e['message'] );
					echo '</pre></div>';
				}
			} );
		}

		$this->post_id = get_the_ID();
		$this->is_preview = true;

		// Don't redirect to permalink.
		remove_action( 'template_redirect', 'redirect_canonical' );

		// Compatibility with Yoast SEO plugin when 'Removes unneeded query variables from the URL' enabled.
		// TODO: Move this code to `includes/compatibility.php`.
		if ( class_exists( 'WPSEO_Frontend' ) ) {
			remove_action( 'template_redirect', [ \WPSEO_Frontend::get_instance(), 'clean_permalink' ], 1 );
		}

		// Disable the WP admin bar in preview mode.
		add_filter( 'show_admin_bar', '__return_false' );

		add_action( 'wp_enqueue_scripts', function() {
			$this->enqueue_styles();
			$this->enqueue_scripts();
		} );

		add_filter( 'the_content', [ $this, 'builder_wrapper' ], 999999 );

		add_action( 'wp_footer', [ $this, 'wp_footer' ] );

		// Avoid Cloudflare's Rocket Loader lazy load the editor iframe
		add_filter( 'script_loader_tag', [ $this, 'rocket_loader_filter' ], 10, 3 );

		// Tell to WP Cache plugins do not cache this request.
		Utils::do_not_cache();

		/**
		 * Preview init.
		 *
		 * Fires on Elementor preview init, after Elementor preview has finished
		 * loading but before any headers are sent.
		 *
		 * @since 1.0.0
		 *
		 * @param Preview $this The current preview.
		 */
		do_action( 'elementor/preview/init', $this );
	}

	/**
	 * Retrieve post ID.
	 *
	 * Get the ID of the current post.
	 *
	 * @since 1.8.0
	 * @access public
	 *
	 * @return int Post ID.
	 */
	public function get_post_id() {
		return $this->post_id;
	}

	/**
	 * Is Preview.
	 *
	 * Whether current request is the elementor preview iframe.
	 * The flag is not related to a specific post or edit permissions.
	 *
	 * @since 2.9.5
	 * @access public
	 *
	 * @return bool
	 */
	public function is_preview() {
		return $this->is_preview;
	}

	/**
	 * Whether preview mode is active.
	 *
	 * Used to determine whether we are in the preview mode (iframe).
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param int $post_id Optional. Post ID. Default is `0`.
	 *
	 * @return bool Whether preview mode is active.
	 */
	public function is_preview_mode( $post_id = 0 ) {
		if ( ! isset( $_GET['elementor-preview'] ) ) {
			return false;
		}

		if ( empty( $post_id ) ) {
			$post_id = get_the_ID();
		}

		if ( ! User::is_current_user_can_edit( $post_id ) ) {
			return false;
		}

		if ( $post_id !== (int) $_GET['elementor-preview'] ) {
			return false;
		}

		return true;
	}

	/**
	 * Builder wrapper.
	 *
	 * Used to add an empty HTML wrapper for the builder, the javascript will add
	 * the content later.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param string $content The content of the builder.
	 *
	 * @return string HTML wrapper for the builder.
	 */
	public function builder_wrapper( $content ) {
		if ( get_the_ID() === $this->post_id ) {
			$document = Plugin::$instance->documents->get( $this->post_id );

			$attributes = $document->get_container_attributes();

			$content = '<div ' . Utils::render_html_attributes( $attributes ) . '></div>';
		}

		return $content;
	}

	/**
	 * Enqueue preview styles.
	 *
	 * Registers all the preview styles and enqueues them.
	 *
	 * Fired by `wp_enqueue_scripts` action.
	 *
	 * @since 1.0.0
	 * @access private
	 */
	private function enqueue_styles() {
		// Hold-on all jQuery plugins after all HTML markup render.
		wp_add_inline_script( 'jquery-migrate', 'jQuery.holdReady( true );' );

		Plugin::$instance->frontend->enqueue_styles();

		Plugin::$instance->widgets_manager->enqueue_widgets_styles();

		$suffix = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min';

		$direction_suffix = is_rtl() ? '-rtl' : '';

		wp_register_style(
			'elementor-select2',
			ELEMENTOR_ASSETS_URL . 'lib/e-select2/css/e-select2' . $suffix . '.css',
			[],
			'4.0.6-rc.1'
		);

		wp_register_style(
			'editor-preview',
			ELEMENTOR_ASSETS_URL . 'css/editor-preview' . $direction_suffix . $suffix . '.css',
			[
				'elementor-select2',
			],
			ELEMENTOR_VERSION
		);

		wp_enqueue_style( 'editor-preview' );

		if ( ! Plugin::$instance->experiments->is_feature_active( 'e_dom_optimization' ) ) {
			wp_register_style(
				'editor-preview-legacy',
				ELEMENTOR_ASSETS_URL . 'css/editor-preview-legacy' . $direction_suffix . $suffix . '.css',
				[],
				ELEMENTOR_VERSION
			);

			wp_enqueue_style( 'editor-preview-legacy' );
		}

		// Handle the 'wp audio' in editor preview.
		wp_enqueue_style( 'wp-mediaelement' );

		/**
		 * Preview enqueue styles.
		 *
		 * Fires after Elementor preview styles are enqueued.
		 *
		 * @since 1.0.0
		 */
		do_action( 'elementor/preview/enqueue_styles' );
	}

	/**
	 * Enqueue preview scripts.
	 *
	 * Registers all the preview scripts and enqueues them.
	 *
	 * Fired by `wp_enqueue_scripts` action.
	 *
	 * @since 1.5.4
	 * @access private
	 */
	private function enqueue_scripts() {
		Plugin::$instance->frontend->register_scripts();

		Plugin::$instance->widgets_manager->enqueue_widgets_scripts();

		$suffix = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min';

		wp_enqueue_script(
			'elementor-inline-editor',
			ELEMENTOR_ASSETS_URL . 'lib/inline-editor/js/inline-editor' . $suffix . '.js',
			[],
			ELEMENTOR_VERSION,
			true
		);

		// Handle the 'wp audio' in editor preview.
		wp_enqueue_script( 'wp-mediaelement' );

		/**
		 * Preview enqueue scripts.
		 *
		 * Fires after Elementor preview scripts are enqueued.
		 *
		 * @since 1.5.4
		 */
		do_action( 'elementor/preview/enqueue_scripts' );
	}

	public function rocket_loader_filter( $tag, $handle, $src ) {
		return str_replace( '<script', '<script data-cfasync="false"', $tag );
	}

	/**
	 * Elementor Preview footer scripts and styles.
	 *
	 * Handle styles and scripts from frontend.
	 *
	 * Fired by `wp_footer` action.
	 *
	 * @since 2.0.9
	 * @access public
	 */
	public function wp_footer() {
		$frontend = Plugin::$instance->frontend;
		if ( $frontend->has_elementor_in_page() ) {
			// Has header/footer/widget-template - enqueue all style/scripts/fonts.
			$frontend->wp_footer();
		} else {
			// Enqueue only scripts.
			$frontend->enqueue_scripts();
		}
	}

	/**
	 * Preview constructor.
	 *
	 * Initializing Elementor preview.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function __construct() {
		add_action( 'template_redirect', [ $this, 'init' ], 0 );
	}
}
includes/maintenance-mode.php000064400000026210151327220420012266 0ustar00<?php
namespace Elementor;

use Elementor\TemplateLibrary\Source_Local;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor maintenance mode.
 *
 * Elementor maintenance mode handler class is responsible for the Elementor
 * "Maintenance Mode" and the "Coming Soon" features.
 *
 * @since 1.4.0
 */
class Maintenance_Mode {

	/**
	 * The options prefix.
	 */
	const OPTION_PREFIX = 'elementor_maintenance_mode_';

	/**
	 * The maintenance mode.
	 */
	const MODE_MAINTENANCE = 'maintenance';

	/**
	 * The coming soon mode.
	 */
	const MODE_COMING_SOON = 'coming_soon';

	/**
	 * Get elementor option.
	 *
	 * Retrieve elementor option from the database.
	 *
	 * @since 1.4.0
	 * @access public
	 * @static
	 *
	 * @param string $option  Option name. Expected to not be SQL-escaped.
	 * @param mixed  $default Optional. Default value to return if the option
	 *                        does not exist. Default is false.
	 *
	 * @return bool False if value was not updated and true if value was updated.
	 */
	public static function get( $option, $default = false ) {
		return get_option( self::OPTION_PREFIX . $option, $default );
	}

	/**
	 * Set elementor option.
	 *
	 * Update elementor option in the database.
	 *
	 * @since 1.4.0
	 * @access public
	 * @static
	 *
	 * @param string $option Option name. Expected to not be SQL-escaped.
	 * @param mixed  $value  Option value. Must be serializable if non-scalar.
	 *                       Expected to not be SQL-escaped.
	 *
	 * @return bool False if value was not updated and true if value was updated.
	 */
	public static function set( $option, $value ) {
		return update_option( self::OPTION_PREFIX . $option, $value );
	}

	/**
	 * Body class.
	 *
	 * Add "Maintenance Mode" CSS classes to the body tag.
	 *
	 * Fired by `body_class` filter.
	 *
	 * @since 1.4.0
	 * @access public
	 *
	 * @param array $classes An array of body classes.
	 *
	 * @return array An array of body classes.
	 */
	public function body_class( $classes ) {
		$classes[] = 'elementor-maintenance-mode';

		return $classes;
	}

	/**
	 * Template redirect.
	 *
	 * Redirect to the "Maintenance Mode" template.
	 *
	 * Fired by `template_redirect` action.
	 *
	 * @since 1.4.0
	 * @access public
	 */
	public function template_redirect() {
		if ( Plugin::$instance->preview->is_preview_mode() ) {
			return;
		}

		$user = wp_get_current_user();

		$exclude_mode = self::get( 'exclude_mode', [] );

		$is_login_page = false;

		/**
		 * Is login page
		 *
		 * Filters whether the maintenance mode displaying the login page or a regular page.
		 *
		 * @since 1.0.4
		 *
		 * @param bool $is_login_page Whether its a login page.
		 */
		$is_login_page = apply_filters( 'elementor/maintenance_mode/is_login_page', $is_login_page );

		if ( $is_login_page ) {
			return;
		}

		if ( 'logged_in' === $exclude_mode && is_user_logged_in() ) {
			return;
		}

		if ( 'custom' === $exclude_mode ) {
			$exclude_roles = self::get( 'exclude_roles', [] );
			$user_roles = $user->roles;

			if ( is_multisite() && is_super_admin() ) {
				$user_roles[] = 'super_admin';
			}

			$compare_roles = array_intersect( $user_roles, $exclude_roles );

			if ( ! empty( $compare_roles ) ) {
				return;
			}
		}

		add_filter( 'body_class', [ $this, 'body_class' ] );

		if ( 'maintenance' === self::get( 'mode' ) ) {
			$protocol = wp_get_server_protocol();
			header( "$protocol 503 Service Unavailable", true, 503 );
			header( 'Content-Type: text/html; charset=utf-8' );
			header( 'Retry-After: 600' );
		}

		// Setup global post for Elementor\frontend so `_has_elementor_in_page = true`.
		$GLOBALS['post'] = get_post( self::get( 'template_id' ) ); // phpcs:ignore WordPress.WP.GlobalVariablesOverride.Prohibited

		// Set the template as `$wp_query->current_object` for `wp_title` and etc.
		query_posts( [
			'p' => self::get( 'template_id' ),
			'post_type' => Source_Local::CPT,
		] );
	}

	/**
	 * Register settings fields.
	 *
	 * Adds new "Maintenance Mode" settings fields to Elementor admin page.
	 *
	 * The method need to receive the an instance of the Tools settings page
	 * to add the new maintenance mode functionality.
	 *
	 * Fired by `elementor/admin/after_create_settings/{$page_id}` action.
	 *
	 * @since 1.4.0
	 * @access public
	 *
	 * @param Tools $tools An instance of the Tools settings page.
	 */
	public function register_settings_fields( Tools $tools ) {
		$templates = Plugin::$instance->templates_manager->get_source( 'local' )->get_items( [
			'type' => 'page',
		] );

		$templates_options = [];

		foreach ( $templates as $template ) {
			$templates_options[ $template['template_id'] ] = esc_html( $template['title'] );
		}

		ob_start();

		$this->print_template_description();

		$template_description = ob_get_clean();

		$tools->add_tab(
			'maintenance_mode', [
				'label' => esc_html__( 'Maintenance Mode', 'elementor' ),
				'sections' => [
					'maintenance_mode' => [
						'callback' => function() {
							echo '<h2>' . esc_html__( 'Maintenance Mode', 'elementor' ) . '</h2>';
							echo '<div>' . esc_html__( 'Set your entire website as MAINTENANCE MODE, meaning the site is offline temporarily for maintenance, or set it as COMING SOON mode, meaning the site is offline until it is ready to be launched.', 'elementor' ) . '</div>';
						},
						'fields' => [
							'maintenance_mode_mode' => [
								'label' => esc_html__( 'Choose Mode', 'elementor' ),
								'field_args' => [
									'type' => 'select',
									'std' => '',
									'options' => [
										'' => esc_html__( 'Disabled', 'elementor' ),
										self::MODE_COMING_SOON => esc_html__( 'Coming Soon', 'elementor' ),
										self::MODE_MAINTENANCE => esc_html__( 'Maintenance', 'elementor' ),
									],
									'desc' => '<div class="elementor-maintenance-mode-description" data-value="" style="display: none">' .
												esc_html__( 'Choose between Coming Soon mode (returning HTTP 200 code) or Maintenance Mode (returning HTTP 503 code).', 'elementor' ) .
												'</div>' .
												'<div class="elementor-maintenance-mode-description" data-value="maintenance" style="display: none">' .
												esc_html__( 'Maintenance Mode returns HTTP 503 code, so search engines know to come back a short time later. It is not recommended to use this mode for more than a couple of days.', 'elementor' ) .
												'</div>' .
												'<div class="elementor-maintenance-mode-description" data-value="coming_soon" style="display: none">' .
												esc_html__( 'Coming Soon returns HTTP 200 code, meaning the site is ready to be indexed.', 'elementor' ) .
												'</div>',
								],
							],
							'maintenance_mode_exclude_mode' => [
								'label' => esc_html__( 'Who Can Access', 'elementor' ),
								'field_args' => [
									'class' => 'elementor-default-hide',
									'type' => 'select',
									'std' => 'logged_in',
									'options' => [
										'logged_in' => esc_html__( 'Logged In', 'elementor' ),
										'custom' => esc_html__( 'Custom', 'elementor' ),
									],
								],
							],
							'maintenance_mode_exclude_roles' => [
								'label' => esc_html__( 'Roles', 'elementor' ),
								'field_args' => [
									'class' => 'elementor-default-hide',
									'type' => 'checkbox_list_roles',
								],
								'setting_args' => [ __NAMESPACE__ . '\Settings_Validations', 'checkbox_list' ],
							],
							'maintenance_mode_template_id' => [
								'label' => esc_html__( 'Choose Template', 'elementor' ),
								'field_args' => [
									'class' => 'elementor-default-hide',
									'type' => 'select',
									'std' => '',
									'show_select' => true,
									'options' => $templates_options,
									'desc' => $template_description,
								],
							],
						],
					],
				],
			]
		);
	}

	/**
	 * Add menu in admin bar.
	 *
	 * Adds "Maintenance Mode" items to the WordPress admin bar.
	 *
	 * Fired by `admin_bar_menu` filter.
	 *
	 * @since 1.4.0
	 * @access public
	 *
	 * @param \WP_Admin_Bar $wp_admin_bar WP_Admin_Bar instance, passed by reference.
	 */
	public function add_menu_in_admin_bar( \WP_Admin_Bar $wp_admin_bar ) {
		$wp_admin_bar->add_node( [
			'id' => 'elementor-maintenance-on',
			'title' => esc_html__( 'Maintenance Mode ON', 'elementor' ),
			'href' => Tools::get_url() . '#tab-maintenance_mode',
		] );

		$document = Plugin::$instance->documents->get( self::get( 'template_id' ) );

		$wp_admin_bar->add_node( [
			'id' => 'elementor-maintenance-edit',
			'parent' => 'elementor-maintenance-on',
			'title' => esc_html__( 'Edit Template', 'elementor' ),
			'href' => $document ? $document->get_edit_url() : '',
		] );
	}

	/**
	 * Print style.
	 *
	 * Adds custom CSS to the HEAD html tag. The CSS that emphasise the maintenance
	 * mode with red colors.
	 *
	 * Fired by `admin_head` and `wp_head` filters.
	 *
	 * @since 1.4.0
	 * @access public
	 */
	public function print_style() {
		?>
		<style>#wp-admin-bar-elementor-maintenance-on > a { background-color: #dc3232; }
			#wp-admin-bar-elementor-maintenance-on > .ab-item:before { content: "\f160"; top: 2px; }</style>
		<?php
	}

	public function on_update_mode( $old_value, $value ) {
		if ( $old_value !== $value ) {
			do_action( 'elementor/maintenance_mode/mode_changed', $old_value, $value );
		}
	}

	/**
	 * Maintenance mode constructor.
	 *
	 * Initializing Elementor maintenance mode.
	 *
	 * @since 1.4.0
	 * @access public
	 */
	public function __construct() {
		add_action( 'update_option_elementor_maintenance_mode_mode', [ $this, 'on_update_mode' ], 10, 2 );

		$is_enabled = (bool) self::get( 'mode' ) && (bool) self::get( 'template_id' );

		if ( is_admin() ) {
			$page_id = Tools::PAGE_ID;
			add_action( "elementor/admin/after_create_settings/{$page_id}", [ $this, 'register_settings_fields' ] );
		}

		if ( ! $is_enabled ) {
			return;
		}

		add_action( 'admin_bar_menu', [ $this, 'add_menu_in_admin_bar' ], 300 );
		add_action( 'admin_head', [ $this, 'print_style' ] );
		add_action( 'wp_head', [ $this, 'print_style' ] );

		// Priority = 11 that is *after* WP default filter `redirect_canonical` in order to avoid redirection loop.
		add_action( 'template_redirect', [ $this, 'template_redirect' ], 11 );
	}

	/**
	 * Print Template Description
	 *
	 * Prints the template description
	 *
	 * @since 2.2.0
	 * @access private
	 */
	private function print_template_description() {
		$template_id = self::get( 'template_id' );

		$edit_url = '';

		if ( $template_id && get_post( $template_id ) ) {
			$edit_url = Plugin::$instance->documents->get( $template_id )->get_edit_url();
		}

		?>
		<a target="_blank" class="elementor-edit-template" style="display: none" href="<?php echo esc_url( $edit_url ); ?>"><?php echo esc_html__( 'Edit Template', 'elementor' ); ?></a>
		<div class="elementor-maintenance-mode-error"><?php echo esc_html__( 'To enable maintenance mode you have to set a template for the maintenance mode page.', 'elementor' ); ?></div>
		<div class="elementor-maintenance-mode-error">
			<?php
				printf(
					/* translators: %1$s Link open tag, %2$s: Link close tag. */
					esc_html__( 'Select one or go ahead and %1$screate one%2$s now.', 'elementor' ),
					'<a target="_blank" href="' . esc_url( admin_url( 'post-new.php?post_type=' . Source_Local::CPT ) ) . '">',
					'</a>'
				);
			?>
		</div>
		<?php
	}
}
includes/editor-templates/repeater.php000064400000002234151327220420014153 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

?>
<script type="text/template" id="tmpl-elementor-repeater-row">
	<div class="elementor-repeater-row-tools">
		<# if ( itemActions.drag_n_drop ) {  #>
			<div class="elementor-repeater-row-handle-sortable">
				<i class="eicon-ellipsis-v" aria-hidden="true"></i>
				<span class="elementor-screen-only"><?php echo esc_html__( 'Drag & Drop', 'elementor' ); ?></span>
			</div>
		<# } #>
		<div class="elementor-repeater-row-item-title"></div>
		<# if ( itemActions.duplicate ) {  #>
			<div class="elementor-repeater-row-tool elementor-repeater-tool-duplicate">
				<i class="eicon-copy" aria-hidden="true"></i>
				<span class="elementor-screen-only"><?php echo esc_html__( 'Duplicate', 'elementor' ); ?></span>
			</div>
		<# }
		if ( itemActions.remove ) {  #>
			<div class="elementor-repeater-row-tool elementor-repeater-tool-remove">
				<i class="eicon-close" aria-hidden="true"></i>
				<span class="elementor-screen-only"><?php echo esc_html__( 'Remove', 'elementor' ); ?></span>
			</div>
		<# } #>
	</div>
	<div class="elementor-repeater-row-controls"></div>
</script>
includes/editor-templates/library-layout.php000064400000002346151327220420015327 0ustar00<?php
if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}
?>
<script type="text/template" id="tmpl-elementor-templates-modal__header">
	<div class="elementor-templates-modal__header__logo-area"></div>
	<div class="elementor-templates-modal__header__menu-area"></div>
	<div class="elementor-templates-modal__header__items-area">
		<# if ( closeType ) { #>
			<div class="elementor-templates-modal__header__close elementor-templates-modal__header__close--{{{ closeType }}} elementor-templates-modal__header__item">
				<# if ( 'skip' === closeType ) { #>
				<span><?php echo esc_html__( 'Skip', 'elementor' ); ?></span>
				<# } #>
				<i class="eicon-close" aria-hidden="true" title="<?php echo esc_html__( 'Close', 'elementor' ); ?>"></i>
				<span class="elementor-screen-only"><?php echo esc_html__( 'Close', 'elementor' ); ?></span>
			</div>
		<# } #>
		<div id="elementor-template-library-header-tools"></div>
	</div>
</script>

<script type="text/template" id="tmpl-elementor-templates-modal__header__logo">
	<span class="elementor-templates-modal__header__logo__icon-wrapper e-logo-wrapper">
		<i class="eicon-elementor"></i>
	</span>
	<span class="elementor-templates-modal__header__logo__title">{{{ title }}}</span>
</script>
includes/editor-templates/editor-wrapper.php000064400000005215151327220420015312 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

global $wp_version;

$body_classes = [
	'elementor-editor-active',
	'wp-version-' . str_replace( '.', '-', $wp_version ),
];

if ( is_rtl() ) {
	$body_classes[] = 'rtl';
}

if ( ! Plugin::$instance->role_manager->user_can( 'design' ) ) {
	$body_classes[] = 'elementor-editor-content-only';
}

$notice = Plugin::$instance->editor->notice_bar->get_notice();
?>
<!DOCTYPE html>
<html <?php language_attributes(); ?>>
<head>
	<meta charset="utf-8" />
	<meta name="viewport" content="width=device-width, initial-scale=1.0" />
	<title><?php echo esc_html__( 'Elementor', 'elementor' ) . ' | ' . esc_html( get_the_title() ); ?></title>
	<?php wp_head(); ?>
	<script>
		var ajaxurl = '<?php Utils::print_unescaped_internal_string( admin_url( 'admin-ajax.php', 'relative' ) ); ?>';
	</script>
</head>
<body class="<?php echo esc_attr( implode( ' ', $body_classes ) ); ?>">
<div id="elementor-editor-wrapper">
	<div id="elementor-panel" class="elementor-panel"></div>
	<div id="elementor-preview">
		<div id="elementor-loading">
			<div class="elementor-loader-wrapper">
				<div class="elementor-loader">
					<div class="elementor-loader-boxes">
						<div class="elementor-loader-box"></div>
						<div class="elementor-loader-box"></div>
						<div class="elementor-loader-box"></div>
						<div class="elementor-loader-box"></div>
					</div>
				</div>
				<div class="elementor-loading-title"><?php echo esc_html__( 'Loading', 'elementor' ); ?></div>
			</div>
		</div>
		<div id="elementor-responsive-bar"></div>
		<div id="elementor-preview-responsive-wrapper" class="elementor-device-desktop elementor-device-rotate-portrait">
			<div id="elementor-preview-loading">
				<i class="eicon-loading eicon-animation-spin" aria-hidden="true"></i>
			</div>
			<?php if ( $notice ) { ?>
				<div id="elementor-notice-bar">
					<i class="eicon-elementor-square"></i>
					<div id="elementor-notice-bar__message"><?php Utils::print_unescaped_internal_string( sprintf( $notice['message'], $notice['action_url'] ) ); ?></div>
					<div id="elementor-notice-bar__action"><a href="<?php Utils::print_unescaped_internal_string( $notice['action_url'] ); ?>" target="_blank"><?php Utils::print_unescaped_internal_string( $notice['action_title'] ); ?></a></div>
					<i id="elementor-notice-bar__close" class="eicon-close"></i>
				</div>
			<?php } // IFrame will be created here by the Javascript later. ?>
		</div>
	</div>
	<div id="elementor-navigator"></div>
</div>
<?php
	wp_footer();
	/** This action is documented in wp-admin/admin-footer.php */
	do_action( 'admin_print_footer_scripts' );
?>
</body>
</html>
includes/editor-templates/panel.php000064400000034235151327220420013451 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

$document = Plugin::$instance->documents->get( Plugin::$instance->editor->get_post_id() );
?>
<script type="text/template" id="tmpl-elementor-panel">
	<div id="elementor-mode-switcher"></div>
	<div id="elementor-panel-state-loading">
		<i class="eicon-loading eicon-animation-spin"></i>
	</div>
	<header id="elementor-panel-header-wrapper"></header>
	<main id="elementor-panel-content-wrapper"></main>
	<footer id="elementor-panel-footer">
		<div class="elementor-panel-container"></div>
	</footer>
</script>

<script type="text/template" id="tmpl-elementor-panel-menu">
	<div id="elementor-panel-page-menu-content"></div>
	<# if ( elementor.config.document.panel.needHelpUrl ) { #>
	<div id="elementor-panel__editor__help">
		<a id="elementor-panel__editor__help__link" href="{{{ elementor.config.document.panel.needHelpUrl }}}" target="_blank">
			<?php echo esc_html__( 'Need Help', 'elementor' ); ?>
			<i class="eicon-help-o"></i>
		</a>
	</div>
	<# } #>
</script>

<script type="text/template" id="tmpl-elementor-panel-menu-group">
	<div class="elementor-panel-menu-group-title">{{{ title }}}</div>
	<div class="elementor-panel-menu-items"></div>
</script>

<script type="text/template" id="tmpl-elementor-panel-menu-item">
	<div class="elementor-panel-menu-item-icon">
		<i class="{{ icon }}"></i>
	</div>
	<# if ( 'undefined' === typeof type || 'link' !== type ) { #>
		<div class="elementor-panel-menu-item-title">{{{ title }}}</div>
	<# } else {
		let target = ( 'undefined' !== typeof newTab && newTab ) ? '_blank' : '_self';
	#>
		<a href="{{ link }}" target="{{ target }}"><div class="elementor-panel-menu-item-title">{{{ title }}}</div></a>
	<# } #>
</script>

<script type="text/template" id="tmpl-elementor-panel-header">
	<div id="elementor-panel-header-menu-button" class="elementor-header-button">
		<i class="elementor-icon eicon-menu-bar tooltip-target" aria-hidden="true" data-tooltip="<?php esc_attr_e( 'Menu', 'elementor' ); ?>"></i>
		<span class="elementor-screen-only"><?php echo esc_html__( 'Menu', 'elementor' ); ?></span>
	</div>
	<div id="elementor-panel-header-title"></div>
	<div id="elementor-panel-header-add-button" class="elementor-header-button">
		<i class="elementor-icon eicon-apps tooltip-target" aria-hidden="true" data-tooltip="<?php esc_attr_e( 'Widgets Panel', 'elementor' ); ?>"></i>
		<span class="elementor-screen-only"><?php echo esc_html__( 'Widgets Panel', 'elementor' ); ?></span>
	</div>
</script>

<script type="text/template" id="tmpl-elementor-panel-footer-content">
	<div id="elementor-panel-footer-settings" class="elementor-panel-footer-tool elementor-leave-open tooltip-target" data-tooltip="<?php esc_attr_e( 'Settings', 'elementor' ); ?>">
		<i class="eicon-cog" aria-hidden="true"></i>
		<span class="elementor-screen-only"><?php printf( esc_html__( '%s Settings', 'elementor' ), esc_html( $document::get_title() ) ); ?></span>
	</div>
	<div id="elementor-panel-footer-navigator" class="elementor-panel-footer-tool tooltip-target" data-tooltip="<?php esc_attr_e( 'Navigator', 'elementor' ); ?>">
		<i class="eicon-navigator" aria-hidden="true"></i>
		<span class="elementor-screen-only"><?php echo esc_html__( 'Navigator', 'elementor' ); ?></span>
	</div>
	<div id="elementor-panel-footer-history" class="elementor-panel-footer-tool elementor-leave-open tooltip-target" data-tooltip="<?php esc_attr_e( 'History', 'elementor' ); ?>">
		<i class="eicon-history" aria-hidden="true"></i>
		<span class="elementor-screen-only"><?php echo esc_html__( 'History', 'elementor' ); ?></span>
	</div>
	<div id="elementor-panel-footer-responsive" class="elementor-panel-footer-tool elementor-toggle-state">
		<i class="eicon-device-responsive tooltip-target" aria-hidden="true" data-tooltip="<?php esc_attr_e( 'Responsive Mode', 'elementor' ); ?>"></i>
		<span class="elementor-screen-only">
			<?php echo esc_html__( 'Responsive Mode', 'elementor' ); ?>
		</span>
	</div>
	<div id="elementor-panel-footer-saver-preview" class="elementor-panel-footer-tool tooltip-target" data-tooltip="<?php esc_attr_e( 'Preview Changes', 'elementor' ); ?>">
		<span id="elementor-panel-footer-saver-preview-label">
			<i class="eicon-preview-medium" aria-hidden="true"></i>
			<span class="elementor-screen-only"><?php echo esc_html__( 'Preview Changes', 'elementor' ); ?></span>
		</span>
	</div>
	<div id="elementor-panel-footer-saver-publish" class="elementor-panel-footer-tool">
		<button id="elementor-panel-saver-button-publish" class="elementor-button elementor-button-success elementor-disabled">
			<span class="elementor-state-icon">
				<i class="eicon-loading eicon-animation-spin" aria-hidden="true"></i>
			</span>
			<span id="elementor-panel-saver-button-publish-label">
				<?php echo esc_html__( 'Publish', 'elementor' ); ?>
			</span>
		</button>
	</div>
	<div id="elementor-panel-footer-saver-options" class="elementor-panel-footer-tool elementor-toggle-state">
		<button id="elementor-panel-saver-button-save-options" class="elementor-button elementor-button-success tooltip-target elementor-disabled" data-tooltip="<?php esc_attr_e( 'Save Options', 'elementor' ); ?>" data-tooltip-offset="7">
			<i class="eicon-caret-up" aria-hidden="true"></i>
			<span class="elementor-screen-only"><?php echo esc_html__( 'Save Options', 'elementor' ); ?></span>
		</button>
		<div class="elementor-panel-footer-sub-menu-wrapper">
			<p class="elementor-last-edited-wrapper">
				<span class="elementor-state-icon">
					<i class="eicon-loading eicon-animation-spin" aria-hidden="true"></i>
				</span>
				<span class="elementor-last-edited">
				</span>
			</p>
			<div class="elementor-panel-footer-sub-menu">
				<div id="elementor-panel-footer-sub-menu-item-save-draft" class="elementor-panel-footer-sub-menu-item elementor-disabled">
					<i class="elementor-icon eicon-save" aria-hidden="true"></i>
					<span class="elementor-title"><?php echo esc_html__( 'Save Draft', 'elementor' ); ?></span>
				</div>
				<div id="elementor-panel-footer-sub-menu-item-save-template" class="elementor-panel-footer-sub-menu-item">
					<i class="elementor-icon eicon-folder" aria-hidden="true"></i>
					<span class="elementor-title"><?php echo esc_html__( 'Save as Template', 'elementor' ); ?></span>
				</div>
			</div>
		</div>
	</div>
</script>

<script type="text/template" id="tmpl-elementor-mode-switcher-content">
	<input id="elementor-mode-switcher-preview-input" type="checkbox">
	<label for="elementor-mode-switcher-preview-input" id="elementor-mode-switcher-preview">
		<i class="eicon" aria-hidden="true" title="<?php esc_attr_e( 'Hide Panel', 'elementor' ); ?>"></i>
		<span class="elementor-screen-only"><?php echo esc_html__( 'Hide Panel', 'elementor' ); ?></span>
	</label>
</script>

<script type="text/template" id="tmpl-editor-content">
	<div class="elementor-panel-navigation">
		<# _.each( elementData.tabs_controls, function( tabTitle, tabSlug ) {
			if ( 'content' !== tabSlug && ! elementor.userCan( 'design' ) ) {
				return;
			}
			$e.bc.ensureTab( 'panel/editor', tabSlug );
			#>
			<div class="elementor-component-tab elementor-panel-navigation-tab elementor-tab-control-{{ tabSlug }}" data-tab="{{ tabSlug }}">
				<a href="#">{{{ tabTitle }}}</a>
			</div>
		<# } ); #>
	</div>
	<# if ( elementData.reload_preview ) { #>
		<div class="elementor-update-preview">
			<div class="elementor-update-preview-title"><?php echo esc_html__( 'Update changes to page', 'elementor' ); ?></div>
			<div class="elementor-update-preview-button-wrapper">
				<button class="elementor-update-preview-button elementor-button elementor-button-success"><?php echo esc_html__( 'Apply', 'elementor' ); ?></button>
			</div>
		</div>
	<# } #>
	<div id="elementor-controls"></div>
	<# if ( elementData.help_url ) { #>
		<div id="elementor-panel__editor__help">
			<a id="elementor-panel__editor__help__link" href="{{ elementData.help_url }}" target="_blank">
				<?php echo esc_html__( 'Need Help', 'elementor' ); ?>
				<i class="eicon-help-o"></i>
			</a>
		</div>
	<# } #>
</script>

<script type="text/template" id="tmpl-elementor-panel-schemes-disabled">
	<img class="elementor-nerd-box-icon" src="<?php Utils::print_unescaped_internal_string( ELEMENTOR_ASSETS_URL . 'images/information.svg' ); ?>" />
	<div class="elementor-nerd-box-title">{{{ '<?php echo esc_html__( '%s are disabled', 'elementor' ); // phpcs:ignore WordPress.WP.I18n.MissingTranslatorsComment ?>'.replace( '%s', disabledTitle ) }}}</div>
	<div class="elementor-nerd-box-message"><?php
		printf(
			/* translators: %1$s Link open tag, %2$s: Link close tag. */
			esc_html__( 'You can enable it from the %1$sElementor settings page%2$s.', 'elementor' ),
			'<a href="' . esc_url( Settings::get_url() ) . '" target="_blank">',
			'</a>'
		);
		?></div>
</script>

<script type="text/template" id="tmpl-elementor-panel-scheme-color-item">
	<div class="elementor-panel-scheme-color-picker-placeholder"></div>
	<div class="elementor-panel-scheme-color-title">{{{ title }}}</div>
</script>

<script type="text/template" id="tmpl-elementor-panel-scheme-typography-item">
	<div class="elementor-panel-heading">
		<div class="elementor-panel-heading-toggle">
			<i class="eicon" aria-hidden="true"></i>
		</div>
		<div class="elementor-panel-heading-title">{{{ title }}}</div>
	</div>
	<div class="elementor-panel-scheme-typography-items elementor-panel-box-content">
		<?php
		$scheme_fields_keys = Group_Control_Typography::get_scheme_fields_keys();

		$typography_group = Plugin::$instance->controls_manager->get_control_groups( 'typography' );
		$typography_fields = $typography_group->get_fields();

		$scheme_fields = array_intersect_key( $typography_fields, array_flip( $scheme_fields_keys ) );

		foreach ( $scheme_fields as $option_name => $option ) :
			?>
			<div class="elementor-panel-scheme-typography-item elementor-control elementor-control-type-select">
				<div class="elementor-panel-scheme-item-title elementor-control-title"><?php echo esc_html( $option['label'] ); ?></div>
				<div class="elementor-panel-scheme-typography-item-value elementor-control-input-wrapper">
					<?php if ( 'select' === $option['type'] ) : ?>
						<select name="<?php echo esc_attr( $option_name ); ?>" class="elementor-panel-scheme-typography-item-field">
							<?php foreach ( $option['options'] as $field_key => $field_value ) : ?>
								<option value="<?php echo esc_attr( $field_key ); ?>"><?php echo esc_html( $field_value ); ?></option>
							<?php endforeach; ?>
						</select>
					<?php elseif ( 'font' === $option['type'] ) : ?>
						<select name="<?php echo esc_attr( $option_name ); ?>" class="elementor-panel-scheme-typography-item-field">
							<option value=""><?php echo esc_html__( 'Default', 'elementor' ); ?></option>
							<?php foreach ( Fonts::get_font_groups() as $group_type => $group_label ) : ?>
								<optgroup label="<?php echo esc_attr( $group_label ); ?>">
									<?php foreach ( Fonts::get_fonts_by_groups( [ $group_type ] ) as $font_title => $font_type ) : ?>
										<option value="<?php echo esc_attr( $font_title ); ?>"><?php echo esc_html( $font_title ); ?></option>
									<?php endforeach; ?>
								</optgroup>
							<?php endforeach; ?>
						</select>
					<?php elseif ( 'text' === $option['type'] ) : ?>
						<input name="<?php echo esc_attr( $option_name ); ?>" class="elementor-panel-scheme-typography-item-field" />
					<?php endif; ?>
				</div>
			</div>
		<?php endforeach; ?>
	</div>
</script>

<script type="text/template" id="tmpl-elementor-control-responsive-switchers">
	<div class="elementor-control-responsive-switchers">
		<div class="elementor-control-responsive-switchers__holder">
		<#
			const activeBreakpoints = elementor.config.responsive.activeBreakpoints,
				devicesForDisplay = elementor.breakpoints.getActiveBreakpointsList( { largeToSmall: true, withDesktop: true } );

			var devices = responsive.devices || devicesForDisplay;

			_.each( devices, function( device ) {
				// The 'Desktop' label is made accessible via the global config because it needs to be translated.
				var deviceLabel = 'desktop' === device ? '<?php esc_html_e( 'Desktop', 'elementor' ); ?>' : activeBreakpoints[ device ].label,
					tooltipDir = "<?php echo is_rtl() ? 'e' : 'w'; ?>";
			#>
				<a class="elementor-responsive-switcher tooltip-target elementor-responsive-switcher-{{ device }}" data-device="{{ device }}" data-tooltip="{{ deviceLabel }}" data-tooltip-pos="{{ tooltipDir }}">
					<i class="{{ elementor.config.responsive.icons_map[ device ] }}"></i>
				</a>
			<# } );
		#>
		</div>
	</div>
</script>

<script type="text/template" id="tmpl-elementor-control-dynamic-switcher">
	<div class="elementor-control-dynamic-switcher elementor-control-unit-1" data-tooltip="<?php echo esc_html__( 'Dynamic Tags', 'elementor' ); ?>">
		<i class="eicon-database"></i>
	</div>
</script>
<script type="text/template" id="tmpl-elementor-control-element-color-picker">
	<div class="elementor-control-element-color-picker e-control-tool" data-tooltip="<?php echo esc_attr__( 'Color Sampler', 'elementor' ); ?>">
		<i class="eicon-eyedropper"></i>
	</div>
</script>

<script type="text/template" id="tmpl-elementor-control-dynamic-cover">
	<div class="elementor-dynamic-cover__settings">
		<i class="eicon-{{ hasSettings ? 'wrench' : 'database' }}"></i>
	</div>
	<div class="elementor-dynamic-cover__title" title="{{{ title + ' ' + content }}}">{{{ title + ' ' + content }}}</div>
	<# if ( isRemovable ) { #>
		<div class="elementor-dynamic-cover__remove">
			<i class="eicon-close-circle"></i>
		</div>
	<# } #>
</script>

<script type="text/template" id="tmpl-elementor-dynamic-tags-promo">
	<div class="elementor-tags-list__teaser">
		<div class="elementor-tags-list__group-title elementor-tags-list__teaser-title">
			<i class="eicon-info-circle"></i><?php echo esc_html__( 'Elementor Dynamic Content', 'elementor' ); ?>
		</div>
		<div class="elementor-tags-list__teaser-text">
			<?php echo esc_html__( 'You’re missing out!', 'elementor' ); ?><br />
			<?php echo esc_html__( 'Get more dynamic capabilities by incorporating dozens of Elementor\'s native dynamic tags.', 'elementor' ); ?>
			<a href="{{{ elementor.config.dynamicPromotionURL }}}" class="elementor-tags-list__teaser-link" target="_blank">
				<?php echo esc_html__( 'See it in action', 'elementor' ); ?>
			</a>
		</div>
	</div>
</script>
includes/editor-templates/hotkeys.php000064400000012417151327220420014036 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}
?>
<script type="text/template" id="tmpl-elementor-hotkeys">
	<# var ctrlLabel = environment.mac ? 'Cmd' : 'Ctrl'; #>
	<div id="elementor-hotkeys__content">
		<div id="elementor-hotkeys__actions" class="elementor-hotkeys__col">

			<div class="elementor-hotkeys__header">
				<h3><?php echo esc_html__( 'Actions', 'elementor' ); ?></h3>
			</div>
			<div class="elementor-hotkeys__list">
				<div class="elementor-hotkeys__item">
					<div class="elementor-hotkeys__item--label"><?php echo esc_html__( 'Undo', 'elementor' ); ?></div>
					<div class="elementor-hotkeys__item--shortcut">
						<span>{{{ ctrlLabel }}}</span>
						<span>Z</span>
					</div>
				</div>

				<div class="elementor-hotkeys__item">
					<div class="elementor-hotkeys__item--label"><?php echo esc_html__( 'Redo', 'elementor' ); ?></div>
					<div class="elementor-hotkeys__item--shortcut">
						<span>{{{ ctrlLabel }}}</span>
						<span>Shift</span>
						<span>Z</span>
					</div>
				</div>

				<div class="elementor-hotkeys__item">
					<div class="elementor-hotkeys__item--label"><?php echo esc_html__( 'Copy', 'elementor' ); ?></div>
					<div class="elementor-hotkeys__item--shortcut">
						<span>{{{ ctrlLabel }}}</span>
						<span>C</span>
					</div>
				</div>

				<div class="elementor-hotkeys__item">
					<div class="elementor-hotkeys__item--label"><?php echo esc_html__( 'Paste', 'elementor' ); ?></div>
					<div class="elementor-hotkeys__item--shortcut">
						<span>{{{ ctrlLabel }}}</span>
						<span>V</span>
					</div>
				</div>

				<div class="elementor-hotkeys__item">
					<div class="elementor-hotkeys__item--label"><?php echo esc_html__( 'Paste Style', 'elementor' ); ?></div>
					<div class="elementor-hotkeys__item--shortcut">
						<span>{{{ ctrlLabel }}}</span>
						<span>Shift</span>
						<span>V</span>
					</div>
				</div>

				<div class="elementor-hotkeys__item">
					<div class="elementor-hotkeys__item--label"><?php echo esc_html__( 'Delete', 'elementor' ); ?></div>
					<div class="elementor-hotkeys__item--shortcut">
						<span>Delete</span>
					</div>
				</div>

				<div class="elementor-hotkeys__item">
					<div class="elementor-hotkeys__item--label"><?php echo esc_html__( 'Duplicate', 'elementor' ); ?></div>
					<div class="elementor-hotkeys__item--shortcut">
						<span>{{{ ctrlLabel }}}</span>
						<span>D</span>
					</div>
				</div>

				<div class="elementor-hotkeys__item">
					<div class="elementor-hotkeys__item--label"><?php echo esc_html__( 'Save', 'elementor' ); ?></div>
					<div class="elementor-hotkeys__item--shortcut">
						<span>{{{ ctrlLabel }}}</span>
						<span>S</span>
					</div>
				</div>

			</div>
		</div>

		<div id="elementor-hotkeys__navigation" class="elementor-hotkeys__col">

			<div class="elementor-hotkeys__header">
				<h3><?php echo esc_html__( 'Go To', 'elementor' ); ?></h3>
			</div>
			<div class="elementor-hotkeys__list">
				<div class="elementor-hotkeys__item">
					<div class="elementor-hotkeys__item--label"><?php echo esc_html__( 'Finder', 'elementor' ); ?></div>
					<div class="elementor-hotkeys__item--shortcut">
						<span>{{{ ctrlLabel }}}</span>
						<span>E</span>
					</div>
				</div>

				<div class="elementor-hotkeys__item">
					<div class="elementor-hotkeys__item--label"><?php echo esc_html__( 'Show / Hide Panel', 'elementor' ); ?></div>
					<div class="elementor-hotkeys__item--shortcut">
						<span>{{{ ctrlLabel }}}</span>
						<span>P</span>
					</div>
				</div>

				<div class="elementor-hotkeys__item">
					<div class="elementor-hotkeys__item--label"><?php echo esc_html__( 'Responsive Mode', 'elementor' ); ?></div>
					<div class="elementor-hotkeys__item--shortcut">
						<span>{{{ ctrlLabel }}}</span>
						<span>Shift</span>
						<span>M</span>
					</div>
				</div>

				<div class="elementor-hotkeys__item">
					<div class="elementor-hotkeys__item--label"><?php echo esc_html__( 'History', 'elementor' ); ?></div>
					<div class="elementor-hotkeys__item--shortcut">
						<span>{{{ ctrlLabel }}}</span>
						<span>Shift</span>
						<span>H</span>
					</div>
				</div>

				<div class="elementor-hotkeys__item">
					<div class="elementor-hotkeys__item--label"><?php echo esc_html__( 'Navigator', 'elementor' ); ?></div>
					<div class="elementor-hotkeys__item--shortcut">
						<span>{{{ ctrlLabel }}}</span>
						<span>I</span>
					</div>
				</div>

				<div class="elementor-hotkeys__item">
					<div class="elementor-hotkeys__item--label"><?php echo esc_html__( 'Template Library', 'elementor' ); ?></div>
					<div class="elementor-hotkeys__item--shortcut">
						<span>{{{ ctrlLabel }}}</span>
						<span>Shift</span>
						<span>L</span>
					</div>
				</div>

				<div class="elementor-hotkeys__item">
					<div class="elementor-hotkeys__item--label"><?php echo esc_html__( 'Keyboard Shortcuts', 'elementor' ); ?></div>
					<div class="elementor-hotkeys__item--shortcut">
						<span>Shift</span>
						<span>?</span>
					</div>
				</div>

				<div class="elementor-hotkeys__item">
					<div class="elementor-hotkeys__item--label"><?php echo esc_html__( 'Quit', 'elementor' ); ?></div>
					<div class="elementor-hotkeys__item--shortcut">
						<span>Esc</span>
					</div>
				</div>
			</div>
		</div>
	</div>
</script>
includes/editor-templates/global.php000064400000003616151327220420013611 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}
?>
<script type="text/template" id="tmpl-elementor-empty-preview">
	<div class="elementor-first-add">
		<div class="elementor-icon eicon-plus"></div>
	</div>
</script>

<script type="text/template" id="tmpl-elementor-add-section">
	<div class="elementor-add-section-inner">
		<div class="elementor-add-section-close">
			<i class="eicon-close" aria-hidden="true"></i>
			<span class="elementor-screen-only"><?php echo esc_html__( 'Close', 'elementor' ); ?></span>
		</div>
		<div class="elementor-add-new-section">
			<div class="elementor-add-section-area-button elementor-add-section-button" title="<?php echo esc_html__( 'Add New Section', 'elementor' ); ?>">
				<i class="eicon-plus"></i>
			</div>
			<div class="elementor-add-section-area-button elementor-add-template-button" title="<?php echo esc_html__( 'Add Template', 'elementor' ); ?>">
				<i class="eicon-folder"></i>
			</div>
			<div class="elementor-add-section-drag-title"><?php echo esc_html__( 'Drag widget here', 'elementor' ); ?></div>
		</div>
		<div class="elementor-select-preset">
			<div class="elementor-select-preset-title"><?php echo esc_html__( 'Select your Structure', 'elementor' ); ?></div>
			<ul class="elementor-select-preset-list">
				<#
					var structures = [ 10, 20, 30, 40, 21, 22, 31, 32, 33, 50, 60, 34 ];

					_.each( structures, function( structure ) {
					var preset = elementor.presetsFactory.getPresetByStructure( structure ); #>

					<li class="elementor-preset elementor-column elementor-col-16" data-structure="{{ structure }}">
						{{{ elementor.presetsFactory.getPresetSVG( preset.preset ).outerHTML }}}
					</li>
					<# } ); #>
			</ul>
		</div>
	</div>
</script>

<script type="text/template" id="tmpl-elementor-tag-controls-stack-empty">
	<?php echo esc_html__( 'This tag has no settings.', 'elementor' ); ?>
</script>
includes/editor-templates/templates.php000064400000041715151327220420014351 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}
?>
<script type="text/template" id="tmpl-elementor-template-library-header-actions">
	<div id="elementor-template-library-header-import" class="elementor-templates-modal__header__item">
		<i class="eicon-upload-circle-o" aria-hidden="true" title="<?php esc_attr_e( 'Import Template', 'elementor' ); ?>"></i>
		<span class="elementor-screen-only"><?php echo esc_html__( 'Import Template', 'elementor' ); ?></span>
	</div>
	<div id="elementor-template-library-header-sync" class="elementor-templates-modal__header__item">
		<i class="eicon-sync" aria-hidden="true" title="<?php esc_attr_e( 'Sync Library', 'elementor' ); ?>"></i>
		<span class="elementor-screen-only"><?php echo esc_html__( 'Sync Library', 'elementor' ); ?></span>
	</div>
	<div id="elementor-template-library-header-save" class="elementor-templates-modal__header__item">
		<i class="eicon-save-o" aria-hidden="true" title="<?php esc_attr_e( 'Save', 'elementor' ); ?>"></i>
		<span class="elementor-screen-only"><?php echo esc_html__( 'Save', 'elementor' ); ?></span>
	</div>
</script>

<script type="text/template" id="tmpl-elementor-template-library-header-menu">
	<# jQuery.each( tabs, ( tab, args ) => { #>
		<div class="elementor-component-tab elementor-template-library-menu-item" data-tab="{{{ tab }}}">{{{ args.title }}}</div>
	<# } ); #>
</script>

<script type="text/template" id="tmpl-elementor-template-library-header-preview">
	<div id="elementor-template-library-header-preview-insert-wrapper" class="elementor-templates-modal__header__item">
		{{{ elementor.templates.layout.getTemplateActionButton( obj ) }}}
	</div>
</script>

<script type="text/template" id="tmpl-elementor-template-library-header-back">
	<i class="eicon-" aria-hidden="true"></i>
	<span><?php echo esc_html__( 'Back to Library', 'elementor' ); ?></span>
</script>

<script type="text/template" id="tmpl-elementor-template-library-loading">
	<div class="elementor-loader-wrapper">
		<div class="elementor-loader">
			<div class="elementor-loader-boxes">
				<div class="elementor-loader-box"></div>
				<div class="elementor-loader-box"></div>
				<div class="elementor-loader-box"></div>
				<div class="elementor-loader-box"></div>
			</div>
		</div>
		<div class="elementor-loading-title"><?php echo esc_html__( 'Loading', 'elementor' ); ?></div>
	</div>
</script>

<script type="text/template" id="tmpl-elementor-template-library-templates">
	<#
		var activeSource = elementor.templates.getFilter('source');
	#>
	<div id="elementor-template-library-toolbar">
		<# if ( 'remote' === activeSource ) {
			var activeType = elementor.templates.getFilter('type');
			#>
			<div id="elementor-template-library-filter-toolbar-remote" class="elementor-template-library-filter-toolbar">
				<# if ( 'page' === activeType ) { #>
					<div id="elementor-template-library-order">
						<input type="radio" id="elementor-template-library-order-new" class="elementor-template-library-order-input" name="elementor-template-library-order" value="date">
						<label for="elementor-template-library-order-new" class="elementor-template-library-order-label"><?php echo esc_html__( 'New', 'elementor' ); ?></label>
						<input type="radio" id="elementor-template-library-order-trend" class="elementor-template-library-order-input" name="elementor-template-library-order" value="trendIndex">
						<label for="elementor-template-library-order-trend" class="elementor-template-library-order-label"><?php echo esc_html__( 'Trend', 'elementor' ); ?></label>
						<input type="radio" id="elementor-template-library-order-popular" class="elementor-template-library-order-input" name="elementor-template-library-order" value="popularityIndex">
						<label for="elementor-template-library-order-popular" class="elementor-template-library-order-label"><?php echo esc_html__( 'Popular', 'elementor' ); ?></label>
					</div>
				<# } else {
					var config = elementor.templates.getConfig( activeType );
					if ( config.categories ) { #>
						<div id="elementor-template-library-filter">
							<select id="elementor-template-library-filter-subtype" class="elementor-template-library-filter-select" data-elementor-filter="subtype">
								<option></option>
								<# config.categories.forEach( function( category ) {
									var selected = category === elementor.templates.getFilter( 'subtype' ) ? ' selected' : '';
									#>
									<option value="{{ category }}"{{{ selected }}}>{{{ category }}}</option>
								<# } ); #>
							</select>
						</div>
					<# }
				} #>
				<div id="elementor-template-library-my-favorites">
					<# var checked = elementor.templates.getFilter( 'favorite' ) ? ' checked' : ''; #>
					<input id="elementor-template-library-filter-my-favorites" type="checkbox"{{{ checked }}}>
					<label id="elementor-template-library-filter-my-favorites-label" for="elementor-template-library-filter-my-favorites">
						<i class="eicon" aria-hidden="true"></i>
						<?php echo esc_html__( 'My Favorites', 'elementor' ); ?>
					</label>
				</div>
			</div>
		<# } else { #>
			<div id="elementor-template-library-filter-toolbar-local" class="elementor-template-library-filter-toolbar"></div>
		<# } #>
		<div id="elementor-template-library-filter-text-wrapper">
			<label for="elementor-template-library-filter-text" class="elementor-screen-only"><?php echo esc_html__( 'Search Templates:', 'elementor' ); ?></label>
			<input id="elementor-template-library-filter-text" placeholder="<?php echo esc_attr__( 'Search', 'elementor' ); ?>">
			<i class="eicon-search"></i>
		</div>
	</div>
	<# if ( 'local' === activeSource ) { #>
		<div id="elementor-template-library-order-toolbar-local">
			<div class="elementor-template-library-local-column-1">
				<input type="radio" id="elementor-template-library-order-local-title" class="elementor-template-library-order-input" name="elementor-template-library-order-local" value="title" data-default-ordering-direction="asc">
				<label for="elementor-template-library-order-local-title" class="elementor-template-library-order-label"><?php echo esc_html__( 'Name', 'elementor' ); ?></label>
			</div>
			<div class="elementor-template-library-local-column-2">
				<input type="radio" id="elementor-template-library-order-local-type" class="elementor-template-library-order-input" name="elementor-template-library-order-local" value="type" data-default-ordering-direction="asc">
				<label for="elementor-template-library-order-local-type" class="elementor-template-library-order-label"><?php echo esc_html__( 'Type', 'elementor' ); ?></label>
			</div>
			<div class="elementor-template-library-local-column-3">
				<input type="radio" id="elementor-template-library-order-local-author" class="elementor-template-library-order-input" name="elementor-template-library-order-local" value="author" data-default-ordering-direction="asc">
				<label for="elementor-template-library-order-local-author" class="elementor-template-library-order-label"><?php echo esc_html__( 'Created By', 'elementor' ); ?></label>
			</div>
			<div class="elementor-template-library-local-column-4">
				<input type="radio" id="elementor-template-library-order-local-date" class="elementor-template-library-order-input" name="elementor-template-library-order-local" value="date">
				<label for="elementor-template-library-order-local-date" class="elementor-template-library-order-label"><?php echo esc_html__( 'Creation Date', 'elementor' ); ?></label>
			</div>
			<div class="elementor-template-library-local-column-5">
				<div class="elementor-template-library-order-label"><?php echo esc_html__( 'Actions', 'elementor' ); ?></div>
			</div>
		</div>
	<# } #>
	<div id="elementor-template-library-templates-container"></div>
	<# if ( 'remote' === activeSource ) { #>
		<div id="elementor-template-library-footer-banner">
			<img class="elementor-nerd-box-icon" src="<?php
				Utils::print_unescaped_internal_string( ELEMENTOR_ASSETS_URL . 'images/information.svg' );
			?>" />
			<div class="elementor-excerpt"><?php echo esc_html__( 'Stay tuned! More awesome templates coming real soon.', 'elementor' ); ?></div>
		</div>
	<# } #>
</script>

<script type="text/template" id="tmpl-elementor-template-library-template-remote">
	<div class="elementor-template-library-template-body">
		<?php // 'lp' stands for Landing Pages Library type. ?>
		<# if ( 'page' === type || 'lp' === type ) { #>
			<div class="elementor-template-library-template-screenshot" style="background-image: url({{ thumbnail }});"></div>
		<# } else { #>
			<img src="{{ thumbnail }}">
		<# } #>
		<div class="elementor-template-library-template-preview">
			<i class="eicon-zoom-in-bold" aria-hidden="true"></i>
		</div>
	</div>
	<div class="elementor-template-library-template-footer">
		{{{ elementor.templates.layout.getTemplateActionButton( obj ) }}}
		<div class="elementor-template-library-template-name">{{{ title }}} - {{{ type }}}</div>
		<div class="elementor-template-library-favorite">
			<input id="elementor-template-library-template-{{ template_id }}-favorite-input" class="elementor-template-library-template-favorite-input" type="checkbox"{{ favorite ? " checked" : "" }}>
			<label for="elementor-template-library-template-{{ template_id }}-favorite-input" class="elementor-template-library-template-favorite-label">
				<i class="eicon-heart-o" aria-hidden="true"></i>
				<span class="elementor-screen-only"><?php echo esc_html__( 'Favorite', 'elementor' ); ?></span>
			</label>
		</div>
	</div>
</script>

<script type="text/template" id="tmpl-elementor-template-library-template-local">
	<div class="elementor-template-library-template-name elementor-template-library-local-column-1">{{ title }}</div>
	<div class="elementor-template-library-template-meta elementor-template-library-template-type elementor-template-library-local-column-2">{{{ elementor.translate( type ) }}}</div>
	<div class="elementor-template-library-template-meta elementor-template-library-template-author elementor-template-library-local-column-3">{{{ author }}}</div>
	<div class="elementor-template-library-template-meta elementor-template-library-template-date elementor-template-library-local-column-4">{{{ human_date }}}</div>
	<div class="elementor-template-library-template-controls elementor-template-library-local-column-5">
		<div class="elementor-template-library-template-preview">
			<i class="eicon-preview-medium" aria-hidden="true"></i>
			<span class="elementor-template-library-template-control-title"><?php echo esc_html__( 'Preview', 'elementor' ); ?></span>
		</div>
		<button class="elementor-template-library-template-action elementor-template-library-template-insert elementor-button elementor-button-success">
			<i class="eicon-file-download" aria-hidden="true"></i>
			<span class="elementor-button-title"><?php echo esc_html__( 'Insert', 'elementor' ); ?></span>
		</button>
		<div class="elementor-template-library-template-more-toggle">
			<i class="eicon-ellipsis-h" aria-hidden="true"></i>
			<span class="elementor-screen-only"><?php echo esc_html__( 'More actions', 'elementor' ); ?></span>
		</div>
		<div class="elementor-template-library-template-more">
			<div class="elementor-template-library-template-delete">
				<i class="eicon-trash-o" aria-hidden="true"></i>
				<span class="elementor-template-library-template-control-title"><?php echo esc_html__( 'Delete', 'elementor' ); ?></span>
			</div>
			<div class="elementor-template-library-template-export">
				<a href="{{ export_link }}">
					<i class="eicon-sign-out" aria-hidden="true"></i>
					<span class="elementor-template-library-template-control-title"><?php echo esc_html__( 'Export', 'elementor' ); ?></span>
				</a>
			</div>
		</div>
	</div>
</script>

<script type="text/template" id="tmpl-elementor-template-library-insert-button">
	<a class="elementor-template-library-template-action elementor-template-library-template-insert elementor-button">
		<i class="eicon-file-download" aria-hidden="true"></i>
		<span class="elementor-button-title"><?php echo esc_html__( 'Insert', 'elementor' ); ?></span>
	</a>
</script>

<script type="text/template" id="tmpl-elementor-template-library-upgrade-plan-button">
	<a
		class="elementor-template-library-template-action elementor-button elementor-go-pro"
		href="{{{ promotionLink }}}"
		target="_blank"
	>
		<i class="eicon-external-link-square" aria-hidden="true"></i>
		<span class="elementor-button-title">{{{ promotionText }}}</span>
	</a>
</script>

<script type="text/template" id="tmpl-elementor-template-library-save-template">
	<div class="elementor-template-library-blank-icon">
		<i class="eicon-library-save" aria-hidden="true"></i>
		<span class="elementor-screen-only"><?php echo esc_html__( 'Save', 'elementor' ); ?></span>
	</div>
	<div class="elementor-template-library-blank-title">{{{ title }}}</div>
	<div class="elementor-template-library-blank-message">{{{ description }}}</div>
	<form id="elementor-template-library-save-template-form">
		<input type="hidden" name="post_id" value="<?php echo get_the_ID(); ?>">
		<input id="elementor-template-library-save-template-name" name="title" placeholder="<?php echo esc_attr__( 'Enter Template Name', 'elementor' ); ?>" required>
		<button id="elementor-template-library-save-template-submit" class="elementor-button elementor-button-success">
			<span class="elementor-state-icon">
				<i class="eicon-loading eicon-animation-spin" aria-hidden="true"></i>
			</span>
			<?php echo esc_html__( 'Save', 'elementor' ); ?>
		</button>
	</form>
	<div class="elementor-template-library-blank-footer">
		<?php echo esc_html__( 'Want to learn more about the Elementor library?', 'elementor' ); ?>
		<a class="elementor-template-library-blank-footer-link" href="https://go.elementor.com/docs-library/" target="_blank"><?php echo esc_html__( 'Click here', 'elementor' ); ?></a>
	</div>
</script>

<script type="text/template" id="tmpl-elementor-template-library-import">
	<form id="elementor-template-library-import-form">
		<div class="elementor-template-library-blank-icon">
			<i class="eicon-library-upload" aria-hidden="true"></i>
		</div>
		<div class="elementor-template-library-blank-title"><?php echo esc_html__( 'Import Template to Your Library', 'elementor' ); ?></div>
		<div class="elementor-template-library-blank-message"><?php echo esc_html__( 'Drag & drop your .JSON or .zip template file', 'elementor' ); ?></div>
		<div id="elementor-template-library-import-form-or"><?php echo esc_html__( 'or', 'elementor' ); ?></div>
		<label for="elementor-template-library-import-form-input" id="elementor-template-library-import-form-label" class="elementor-button elementor-button-success"><?php echo esc_html__( 'Select File', 'elementor' ); ?></label>
		<input id="elementor-template-library-import-form-input" type="file" name="file" accept=".json,.zip" required/>
		<div class="elementor-template-library-blank-footer">
			<?php echo esc_html__( 'Want to learn more about the Elementor library?', 'elementor' ); ?>
			<a class="elementor-template-library-blank-footer-link" href="https://go.elementor.com/docs-library/" target="_blank"><?php echo esc_html__( 'Click here', 'elementor' ); ?></a>
		</div>
	</form>
</script>

<script type="text/template" id="tmpl-elementor-template-library-templates-empty">
	<div class="elementor-template-library-blank-icon">
		<img src="<?php Utils::print_unescaped_internal_string( ELEMENTOR_ASSETS_URL . 'images/no-search-results.svg' ); ?>" class="elementor-template-library-no-results" />
	</div>
	<div class="elementor-template-library-blank-title"></div>
	<div class="elementor-template-library-blank-message"></div>
	<div class="elementor-template-library-blank-footer">
		<?php echo esc_html__( 'Want to learn more about the Elementor library?', 'elementor' ); ?>
		<a class="elementor-template-library-blank-footer-link" href="https://go.elementor.com/docs-library/" target="_blank"><?php echo esc_html__( 'Click here', 'elementor' ); ?></a>
	</div>
</script>

<script type="text/template" id="tmpl-elementor-template-library-preview">
	<iframe></iframe>
</script>

<script type="text/template" id="tmpl-elementor-template-library-connect">
	<div id="elementor-template-library-connect-logo" class="e-logo-wrapper">
		<i class="eicon-elementor" aria-hidden="true"></i>
	</div>
	<div class="elementor-template-library-blank-title">
		{{{ title }}}
	</div>
	<div class="elementor-template-library-blank-message">
		{{{ message }}}
	</div>
	<?php $url = Plugin::$instance->common->get_component( 'connect' )->get_app( 'library' )->get_admin_url( 'authorize' ); ?>
	<a id="elementor-template-library-connect__button" class="elementor-button elementor-button-success" href="<?php echo esc_attr( $url ); ?>">
		{{{ button }}}
	</a>
	<?php
	$base_images_url = $this->get_assets_base_url() . '/assets/images/library-connect/';

	$images = [ 'left-1', 'left-2', 'right-1', 'right-2' ];

	foreach ( $images as $image ) : ?>
		<img id="elementor-template-library-connect__background-image-<?php Utils::print_unescaped_internal_string( $image ); ?>" class="elementor-template-library-connect__background-image" src="<?php Utils::print_unescaped_internal_string( $base_images_url . $image ); ?>.png" draggable="false"/>
	<?php endforeach; ?>
</script>
includes/editor-templates/navigator.php000064400000004265151327220420014344 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

?>
<script type="text/template" id="tmpl-elementor-navigator">
	<div id="elementor-navigator__header">
		<i id="elementor-navigator__toggle-all" class="eicon-expand" data-elementor-action="expand"></i>
		<div id="elementor-navigator__header__title"><?php echo esc_html__( 'Navigator', 'elementor' ); ?></div>
		<i id="elementor-navigator__close" class="eicon-close"></i>
	</div>
	<div id="elementor-navigator__elements"></div>
	<div id="elementor-navigator__footer">
		<i class="eicon-ellipsis-h"></i>
	</div>
</script>

<script type="text/template" id="tmpl-elementor-navigator__elements">
	<# if ( obj.elType ) { #>
		<div class="elementor-navigator__item">
			<div class="elementor-navigator__element__list-toggle">
				<i class="eicon-sort-down"></i>
			</div>
			<#
			if ( icon ) { #>
				<div class="elementor-navigator__element__element-type">
					<i class="{{{ icon }}}"></i>
				</div>
			<# } #>
			<div class="elementor-navigator__element__title">
				<span class="elementor-navigator__element__title__text">{{{ title }}}</span>
			</div>
			<div class="elementor-navigator__element__toggle">
				<i class="eicon-preview-medium"></i>
			</div>
			<div class="elementor-navigator__element__indicators"></div>
		</div>
	<# } #>
	<div class="elementor-navigator__elements"></div>
</script>

<script type="text/template" id="tmpl-elementor-navigator__elements--empty">
	<div class="elementor-empty-view__title"><?php echo esc_html__( 'Empty', 'elementor' ); ?></div>
</script>

<script type="text/template" id="tmpl-elementor-navigator__root--empty">
	<img class="elementor-nerd-box-icon" src="<?php echo ELEMENTOR_ASSETS_URL . 'images/information.svg'; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>" />
	<div class="elementor-nerd-box-title"><?php echo esc_html__( 'Easy Navigation is Here!', 'elementor' ); ?></div>
	<div class="elementor-nerd-box-message"><?php echo esc_html__( 'Once you fill your page with content, this window will give you an overview display of all the page elements. This way, you can easily move around any section, column, or widget.', 'elementor' ); ?></div>
</script>
includes/editor-templates/panel-elements.php000064400000006735151327220420015267 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}
?>
<script type="text/template" id="tmpl-elementor-panel-elements">
	<div id="elementor-panel-elements-navigation" class="elementor-panel-navigation">
		<div class="elementor-component-tab elementor-panel-navigation-tab" data-tab="categories"><?php echo esc_html__( 'Elements', 'elementor' ); ?></div>
		<div class="elementor-component-tab elementor-panel-navigation-tab" data-tab="global"><?php echo esc_html__( 'Global', 'elementor' ); ?></div>
	</div>
	<div id="elementor-panel-elements-search-area"></div>
	<div id="elementor-panel-elements-wrapper"></div>
</script>

<script type="text/template" id="tmpl-elementor-panel-categories">
	<div id="elementor-panel-categories"></div>

	<div id="elementor-panel-get-pro-elements" class="elementor-nerd-box">
		<img class="elementor-nerd-box-icon" src="<?php echo ELEMENTOR_ASSETS_URL . 'images/go-pro.svg'; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>" />
		<div class="elementor-nerd-box-message"><?php echo esc_html__( 'Get more with Elementor Pro', 'elementor' ); ?></div>
		<a class="elementor-button elementor-button-default elementor-nerd-box-link" target="_blank" href="<?php echo Utils::get_pro_link( 'https://elementor.com/pro/?utm_source=panel-widgets&utm_campaign=gopro&utm_medium=wp-dash' ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>"><?php echo esc_html__( 'Go Pro', 'elementor' ); ?></a>
	</div>
</script>

<script type="text/template" id="tmpl-elementor-panel-elements-category">
	<div class="elementor-panel-category-title">{{{ title }}}</div>
	<div class="elementor-panel-category-items elementor-responsive-panel"></div>
</script>

<script type="text/template" id="tmpl-elementor-panel-element-search">
	<label for="elementor-panel-elements-search-input" class="screen-reader-text"><?php echo esc_html__( 'Search Widget:', 'elementor' ); ?></label>
	<input type="search" id="elementor-panel-elements-search-input" placeholder="<?php esc_attr_e( 'Search Widget...', 'elementor' ); ?>" autocomplete="off"/>
	<i class="eicon-search-bold" aria-hidden="true"></i>
</script>

<script type="text/template" id="tmpl-elementor-element-library-element">
	<div class="elementor-element">
		<# if ( false === obj.editable ) { #>
			<i class="eicon-lock"></i>
		<# } #>
		<div class="icon">
			<i class="{{ icon }}" aria-hidden="true"></i>
		</div>
		<div class="elementor-element-title-wrapper">
			<div class="title">{{{ title }}}</div>
		</div>
	</div>
</script>

<script type="text/template" id="tmpl-elementor-panel-global">
	<div class="elementor-nerd-box">
		<img class="elementor-nerd-box-icon" src="<?php echo ELEMENTOR_ASSETS_URL . 'images/information.svg'; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>" />
		<div class="elementor-nerd-box-title"><?php echo esc_html__( 'Meet Our Global Widget', 'elementor' ); ?></div>
		<div class="elementor-nerd-box-message"><?php echo esc_html__( 'With this feature, you can save a widget as global, then add it to multiple areas. All areas will be editable from one single place.', 'elementor' ); ?></div>
		<a class="elementor-button elementor-button-default elementor-nerd-box-link" target="_blank" href="<?php echo Utils::get_pro_link( 'https://elementor.com/pro/?utm_source=panel-global&utm_campaign=gopro&utm_medium=wp-dash' ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>"><?php echo esc_html__( 'Go Pro', 'elementor' ); ?></a>
	</div>
</script>
includes/editor-templates/responsive-bar.php000064400000007151151327220420015306 0ustar00<?php
namespace Elementor;

use Elementor\Core\Breakpoints\Breakpoint;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

// TODO: Use API data instead of this static array, once it is available.
$active_breakpoints = Plugin::$instance->breakpoints->get_active_breakpoints();
$active_devices = Plugin::$instance->breakpoints->get_active_devices_list( [ 'reverse' => true ] );

$breakpoint_classes_map = array_intersect_key( Plugin::$instance->breakpoints->get_responsive_icons_classes_map(), array_flip( $active_devices ) );

/* translators: %1$s: Device Name */
$breakpoint_label = esc_html__( '%1$s <br> Settings added for the %1$s device will apply to %2$spx screens and down', 'elementor' );
?>

<script type="text/template" id="tmpl-elementor-templates-responsive-bar">
	<div id="e-responsive-bar__center">
		<div id="e-responsive-bar-switcher" class="e-responsive-bar--pipe">
			<?php foreach ( $active_devices as $device_key ) {
				if ( 'desktop' === $device_key ) {
					$tooltip_label = esc_html__( 'Desktop <br> Settings added for the base device will apply to all breakpoints unless edited', 'elementor' );
				} elseif ( 'widescreen' === $device_key ) {
					$tooltip_label = esc_html__( 'Widescreen <br> Settings added for the Widescreen device will apply to screen sizes %dpx and up', 'elementor' );

					$tooltip_label = sprintf( $tooltip_label, $active_breakpoints[ $device_key ]->get_value() );
				} else {
					$tooltip_label = sprintf( $breakpoint_label, $active_breakpoints[ $device_key ]->get_label(), $active_breakpoints[ $device_key ]->get_value() );
				}
				printf( '<label
					id="e-responsive-bar-switcher__option-%1$s"
					class="e-responsive-bar-switcher__option"
					for="e-responsive-bar-switch-%1$s"
					data-tooltip="%2$s">

					<input type="radio" name="breakpoint" id="e-responsive-bar-switch-%1$s" value="%1$s">
					<i class="%3$s" aria-hidden="true"></i>
					<span class="screen-reader-text">%2$s</span>
				</label>', esc_attr( $device_key ), esc_attr( $tooltip_label ), esc_attr( $breakpoint_classes_map[ $device_key ] ) );
			} ?>
			</div>
			<div id="e-responsive-bar-scale">
				<div id="e-responsive-bar-scale__minus"></div>
				<div id="e-responsive-bar-scale__value-wrapper"><span id="e-responsive-bar-scale__value">100</span>%</div>
				<div id="e-responsive-bar-scale__plus"><i class="eicon-plus" aria-hidden="true"></i></div>
				<div id="e-responsive-bar-scale__reset"><i class="eicon-undo" aria-hidden="true"></i></div>
			</div>
		</div>
		<div id="e-responsive-bar__end">
			<div id="e-responsive-bar__size-inputs-wrapper" class="e-flex e-align-items-center">
				<label for="e-responsive-bar__input-width">W</label>
				<input type="number" id="e-responsive-bar__input-width" class="e-responsive-bar__input-size" autocomplete="off">
				<label for="e-responsive-bar__input-height">H</label>
				<input type="number" id="e-responsive-bar__input-height" class="e-responsive-bar__input-size" autocomplete="off">
			</div>
			<button id="e-responsive-bar__settings-button" class="e-responsive-bar__button e-responsive-bar--pipe"
					data-tooltip="<?php echo esc_html__( 'Manage Breakpoints', 'elementor' ); ?>">
				<span class="elementor-screen-only"><?php echo esc_html__( 'Settings', 'elementor' ); ?></span>
				<i class="eicon-cog" aria-hidden="true"></i>
			</button>
			<button id="e-responsive-bar__close-button" class="e-responsive-bar__button"
					data-tooltip="<?php echo esc_html__( 'Close', 'elementor' ); ?>">
				<span class="elementor-screen-only"><?php echo esc_html__( 'Close', 'elementor' ); ?></span>
				<i class="eicon-close" aria-hidden="true"></i>
			</button>
		</div>
</script>
includes/embed.php000064400000017606151327220420010147 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor embed.
 *
 * Elementor embed handler class is responsible for Elementor embed functionality.
 * The class holds the supported providers with their embed patters, and handles
 * their custom properties to create custom HTML with the embeded content.
 *
 * @since 1.5.0
 */
class Embed {

	/**
	 * Provider match masks.
	 *
	 * Holds a list of supported providers with their URL structure in a regex format.
	 *
	 * @since 1.5.0
	 * @access private
	 * @static
	 *
	 * @var array Provider URL structure regex.
	 */
	private static $provider_match_masks = [
		'youtube' => '/^.*(?:youtu\.be\/|youtube(?:-nocookie)?\.com\/(?:(?:watch)?\?(?:.*&)?vi?=|(?:embed|v|vi|user)\/))([^\?&\"\'>]+)/',
		'vimeo' => '/^.*vimeo\.com\/(?:[a-z]*\/)*([‌​0-9]{6,11})[?]?.*/',
		'dailymotion' => '/^.*dailymotion.com\/(?:video|hub)\/([^_]+)[^#]*(#video=([^_&]+))?/',
	];

	/**
	 * Embed patterns.
	 *
	 * Holds a list of supported providers with their embed patters.
	 *
	 * @since 1.5.0
	 * @access private
	 * @static
	 *
	 * @var array Embed patters.
	 */
	private static $embed_patterns = [
		'youtube' => 'https://www.youtube{NO_COOKIE}.com/embed/{VIDEO_ID}?feature=oembed',
		'vimeo' => 'https://player.vimeo.com/video/{VIDEO_ID}#t={TIME}',
		'dailymotion' => 'https://dailymotion.com/embed/video/{VIDEO_ID}',
	];

	/**
	 * Get video properties.
	 *
	 * Retrieve the video properties for a given video URL.
	 *
	 * @since 1.5.0
	 * @access public
	 * @static
	 *
	 * @param string $video_url Video URL.
	 *
	 * @return null|array The video properties, or null.
	 */
	public static function get_video_properties( $video_url ) {
		foreach ( self::$provider_match_masks as $provider => $match_mask ) {
			preg_match( $match_mask, $video_url, $matches );

			if ( $matches ) {
				return [
					'provider' => $provider,
					'video_id' => $matches[1],
				];
			}
		}

		return null;
	}

	/**
	 * Get embed URL.
	 *
	 * Retrieve the embed URL for a given video.
	 *
	 * @since 1.5.0
	 * @access public
	 * @static
	 *
	 * @param string $video_url        Video URL.
	 * @param array  $embed_url_params Optional. Embed parameters. Default is an
	 *                                 empty array.
	 * @param array  $options          Optional. Embed options. Default is an
	 *                                 empty array.
	 *
	 * @return null|array The video properties, or null.
	 */
	public static function get_embed_url( $video_url, array $embed_url_params = [], array $options = [] ) {
		$video_properties = self::get_video_properties( $video_url );

		if ( ! $video_properties ) {
			return null;
		}

		$embed_pattern = self::$embed_patterns[ $video_properties['provider'] ];

		$replacements = [
			'{VIDEO_ID}' => $video_properties['video_id'],
		];

		if ( 'youtube' === $video_properties['provider'] ) {
			$replacements['{NO_COOKIE}'] = ! empty( $options['privacy'] ) ? '-nocookie' : '';
		} elseif ( 'vimeo' === $video_properties['provider'] ) {
			$time_text = '';

			if ( ! empty( $options['start'] ) ) {
				$time_text = date( 'H\hi\ms\s', $options['start'] ); // PHPCS:Ignore WordPress.DateTime.RestrictedFunctions.date_date
			}

			$replacements['{TIME}'] = $time_text;

			/**
			 * Handle Vimeo private videos
			 *
			 * Vimeo requires an additional parameter when displaying private/unlisted videos. It has two ways of
			 * passing that parameter:
			 * * as an endpoint - vimeo.com/{video_id}/{privacy_token}
			 * OR
			 * * as a GET parameter named `h` - vimeo.com/{video_id}?h={privacy_token}
			 *
			 * The following regex match looks for either of these methods in the Vimeo URL, and if it finds a privacy
			 * token, it adds it to the embed params array as the `h` parameter (which is how Vimeo can receive it when
			 * using Oembed).
			 */
			$h_param = [];
			preg_match( '/(?|(?:[\?|\&]h={1})([\w]+)|\d\/([\w]+))/', $video_url, $h_param );

			if ( ! empty( $h_param ) ) {
				$embed_url_params['h'] = $h_param[1];
			}
		}

		$embed_pattern = str_replace( array_keys( $replacements ), $replacements, $embed_pattern );

		return add_query_arg( $embed_url_params, $embed_pattern );
	}

	/**
	 * Get embed HTML.
	 *
	 * Retrieve the final HTML of the embedded URL.
	 *
	 * @since 1.5.0
	 * @access public
	 * @static
	 *
	 * @param string $video_url        Video URL.
	 * @param array  $embed_url_params Optional. Embed parameters. Default is an
	 *                                 empty array.
	 * @param array  $options          Optional. Embed options. Default is an
	 *                                 empty array.
	 * @param array  $frame_attributes Optional. IFrame attributes. Default is an
	 *                                 empty array.
	 *
	 * @return string The embed HTML.
	 */
	public static function get_embed_html( $video_url, array $embed_url_params = [], array $options = [], array $frame_attributes = [] ) {
		$video_properties = self::get_video_properties( $video_url );

		$default_frame_attributes = [
			'class' => 'elementor-video-iframe',
			'allowfullscreen',
			'title' => sprintf(
				/* translators: %s: Video provider */
				__( '%s Video Player', 'elementor' ),
				$video_properties['provider']
			),
		];

		$video_embed_url = self::get_embed_url( $video_url, $embed_url_params, $options );
		if ( ! $video_embed_url ) {
			return null;
		}
		if ( ! $options['lazy_load'] ) {
			$default_frame_attributes['src'] = $video_embed_url;
		} else {
			$default_frame_attributes['data-lazy-load'] = $video_embed_url;
		}

		$frame_attributes = array_merge( $default_frame_attributes, $frame_attributes );

		$attributes_for_print = [];

		foreach ( $frame_attributes as $attribute_key => $attribute_value ) {
			$attribute_value = esc_attr( $attribute_value );

			if ( is_numeric( $attribute_key ) ) {
				$attributes_for_print[] = $attribute_value;
			} else {
				$attributes_for_print[] = sprintf( '%1$s="%2$s"', $attribute_key, $attribute_value );
			}
		}

		$attributes_for_print = implode( ' ', $attributes_for_print );

		$iframe_html = "<iframe $attributes_for_print></iframe>";

		/** This filter is documented in wp-includes/class-oembed.php */
		return apply_filters( 'oembed_result', $iframe_html, $video_url, $frame_attributes );
	}

	/**
	 * Get oembed data from the cache.
	 * if not exists in the cache it will fetch from provider and then save to the cache.
	 *
	 * @param $oembed_url
	 * @param $cached_post_id
	 *
	 * @return array|null
	 */
	public static function get_oembed_data( $oembed_url, $cached_post_id ) {
		$cached_oembed_data = json_decode( get_post_meta( $cached_post_id, '_elementor_oembed_cache', true ), true );

		if ( isset( $cached_oembed_data[ $oembed_url ] ) ) {
			return $cached_oembed_data[ $oembed_url ];
		}

		$normalize_oembed_data = self::fetch_oembed_data( $oembed_url );

		if ( ! $cached_oembed_data ) {
			$cached_oembed_data = [];
		}

		update_post_meta( $cached_post_id, '_elementor_oembed_cache', wp_json_encode( array_merge(
			$cached_oembed_data,
			[
				$oembed_url => $normalize_oembed_data,
			]
		) ) );

		return $normalize_oembed_data;
	}

	/**
	 * Fetch oembed data from oembed provider.
	 *
	 * @param $oembed_url
	 *
	 * @return array|null
	 */
	public static function fetch_oembed_data( $oembed_url ) {
		$oembed_data = _wp_oembed_get_object()->get_data( $oembed_url );

		if ( ! $oembed_data ) {
			return null;
		}

		return [
			'thumbnail_url' => $oembed_data->thumbnail_url,
			'title' => $oembed_data->title,
		];
	}

	/**
	 * @param $oembed_url
	 * @param null|string|int $cached_post_id
	 *
	 * @return string|null
	 */
	public static function get_embed_thumbnail_html( $oembed_url, $cached_post_id = null ) {
		$oembed_data = self::get_oembed_data( $oembed_url, $cached_post_id );

		if ( ! $oembed_data ) {
			return null;
		}

		return '<div class="elementor-image">' . sprintf( '<img src="%1$s" alt="%2$s" title="%2$s" width="%3$s" />', $oembed_data['thumbnail_url'], esc_attr( $oembed_data['title'] ), '100%' ) . '</div>';
	}
}
includes/maintenance.php000064400000004142151327220420011344 0ustar00<?php
namespace Elementor;

use Elementor\Core\Kits\Manager;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor maintenance.
 *
 * Elementor maintenance handler class is responsible for setting up Elementor
 * activation and uninstallation hooks.
 *
 * @since 1.0.0
 */
class Maintenance {

	/**
	 * Activate Elementor.
	 *
	 * Set Elementor activation hook.
	 *
	 * Fired by `register_activation_hook` when the plugin is activated.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 */
	public static function activation( $network_wide ) {
		wp_clear_scheduled_hook( 'elementor/tracker/send_event' );

		wp_schedule_event( time(), 'daily', 'elementor/tracker/send_event' );
		flush_rewrite_rules();

		if ( is_multisite() && $network_wide ) {
			static::create_default_kit(
				get_sites( [ 'fields' => 'ids' ] )
			);

			return;
		}

		static::create_default_kit();

		set_transient( 'elementor_activation_redirect', true, MINUTE_IN_SECONDS );
	}

	/**
	 * Uninstall Elementor.
	 *
	 * Set Elementor uninstallation hook.
	 *
	 * Fired by `register_uninstall_hook` when the plugin is uninstalled.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 */
	public static function uninstall() {
		wp_clear_scheduled_hook( 'elementor/tracker/send_event' );
	}

	/**
	 * Init.
	 *
	 * Initialize Elementor Maintenance.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 */
	public static function init() {
		register_activation_hook( ELEMENTOR_PLUGIN_BASE, [ __CLASS__, 'activation' ] );
		register_uninstall_hook( ELEMENTOR_PLUGIN_BASE, [ __CLASS__, 'uninstall' ] );

		add_action( 'wpmu_new_blog', function ( $site_id ) {
			if ( ! is_plugin_active_for_network( ELEMENTOR_PLUGIN_BASE ) ) {
				return;
			}

			static::create_default_kit( [ $site_id ] );
		} );
	}

	/**
	 * @param array $site_ids
	 */
	private static function create_default_kit( array $site_ids = [] ) {
		if ( ! empty( $site_ids ) ) {
			foreach ( $site_ids as $site_id ) {
				switch_to_blog( $site_id );

				Manager::create_default_kit();

				restore_current_blog();
			};

			return;
		}

		Manager::create_default_kit();
	}
}
includes/compatibility.php000064400000027231151327220420011737 0ustar00<?php
namespace Elementor;

use Elementor\Core\DocumentTypes\PageBase;
use Elementor\TemplateLibrary\Source_Local;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor compatibility.
 *
 * Elementor compatibility handler class is responsible for compatibility with
 * external plugins. The class resolves different issues with non-compatible
 * plugins.
 *
 * @since 1.0.0
 */
class Compatibility {

	/**
	 * Register actions.
	 *
	 * Run Elementor compatibility with external plugins using custom filters and
	 * actions.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 */
	public static function register_actions() {
		add_action( 'init', [ __CLASS__, 'init' ] );

		self::polylang_compatibility();

		if ( is_admin() || defined( 'WP_LOAD_IMPORTERS' ) ) {
			add_filter( 'wp_import_post_meta', [ __CLASS__, 'on_wp_import_post_meta' ] );
			add_filter( 'wxr_importer.pre_process.post_meta', [ __CLASS__, 'on_wxr_importer_pre_process_post_meta' ] );
		}

		add_action( 'elementor/maintenance_mode/mode_changed', [ __CLASS__, 'clear_3rd_party_cache' ] );

		add_action( 'elementor/element/before_section_start', [ __CLASS__, 'document_post_deprecated_hooks' ], 10, 3 );
		add_action( 'elementor/element/after_section_start', [ __CLASS__, 'document_post_deprecated_hooks' ], 10, 3 );
		add_action( 'elementor/element/before_section_end', [ __CLASS__, 'document_post_deprecated_hooks' ], 10, 3 );
		add_action( 'elementor/element/after_section_end', [ __CLASS__, 'document_post_deprecated_hooks' ], 10, 3 );
	}

	public static function document_post_deprecated_hooks( $instance, $section_id, $args ) {
		if ( ! $instance instanceof PageBase ) {
			return;
		}

		$current_action = current_action();
		$current_action = explode( '/', $current_action );
		$current_sub_action = $current_action[2];

		$deprecated_action = "elementor/element/post/{$section_id}/{$current_sub_action}";

		if ( ! has_action( $deprecated_action ) ) {
			return;
		}

		$replacement = "`elementor/element/wp-post/{$section_id}/{$current_sub_action}` or `elementor/element/wp-page/{$section_id}/{$current_sub_action}`";

		Plugin::$instance->modules_manager->get_modules( 'dev-tools' )->deprecation->do_deprecated_action( $deprecated_action, func_get_args(), '2.7.0', $replacement );
	}

	public static function clear_3rd_party_cache() {
		// W3 Total Cache.
		if ( function_exists( 'w3tc_flush_all' ) ) {
			w3tc_flush_all();
		}

		// WP Fastest Cache.
		if ( ! empty( $GLOBALS['wp_fastest_cache'] ) && method_exists( $GLOBALS['wp_fastest_cache'], 'deleteCache' ) ) {
			$GLOBALS['wp_fastest_cache']->deleteCache();
		}

		// WP Super Cache
		if ( function_exists( 'wp_cache_clean_cache' ) ) {
			global $file_prefix;
			wp_cache_clean_cache( $file_prefix, true );
		}
	}

	/**
	 * Add new button to gutenberg.
	 *
	 * Insert new "Elementor" button to the gutenberg editor to create new post
	 * using Elementor page builder.
	 *
	 * @since 1.9.0
	 * @access public
	 * @static
	 */
	public static function add_new_button_to_gutenberg() {
		global $typenow;
		if ( ! User::is_current_user_can_edit_post_type( $typenow ) ) {
			return;
		}

		// Introduced in WP 5.0
		if ( function_exists( 'use_block_editor_for_post' ) && ! use_block_editor_for_post( $typenow ) ) {
			return;
		}

		// Deprecated/removed in Gutenberg plugin v5.3.0
		if ( function_exists( 'gutenberg_can_edit_post_type' ) && ! gutenberg_can_edit_post_type( $typenow ) ) {
			return;
		}

		?>
		<script type="text/javascript">
			document.addEventListener( 'DOMContentLoaded', function() {
				var dropdown = document.querySelector( '#split-page-title-action .dropdown' );

				if ( ! dropdown ) {
					return;
				}

				var url = '<?php echo esc_url( Plugin::$instance->documents->get_create_new_post_url( $typenow ) ); ?>';

				dropdown.insertAdjacentHTML( 'afterbegin', '<a href="' + url + '">Elementor</a>' );
			} );
		</script>
		<?php
	}

	/**
	 * Init.
	 *
	 * Initialize Elementor compatibility with external plugins.
	 *
	 * Fired by `init` action.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 */
	public static function init() {
		// Hotfix for NextGEN Gallery plugin.
		if ( defined( 'NGG_PLUGIN_VERSION' ) ) {
			add_filter( 'elementor/document/urls/edit', function( $edit_link ) {
				return add_query_arg( 'display_gallery_iframe', '', $edit_link );
			} );
		}

		// Exclude our Library from Yoast SEO plugin.
		add_filter( 'wpseo_sitemaps_supported_post_types', [ __CLASS__, 'filter_library_post_type' ] );
		add_filter( 'wpseo_accessible_post_types', [ __CLASS__, 'filter_library_post_type' ] );
		add_filter( 'wpseo_sitemap_exclude_post_type', function( $retval, $post_type ) {
			if ( Source_Local::CPT === $post_type ) {
				$retval = true;
			}

			return $retval;
		}, 10, 2 );

		// Disable optimize files in Editor from Autoptimize plugin.
		add_filter( 'autoptimize_filter_noptimize', function( $retval ) {
			if ( Plugin::$instance->editor->is_edit_mode() ) {
				$retval = true;
			}

			return $retval;
		} );

		// Add the description (content) tab for a new product, so it can be edited with Elementor.
		add_filter( 'woocommerce_product_tabs', function( $tabs ) {
			if ( ! isset( $tabs['description'] ) && Plugin::$instance->preview->is_preview_mode() ) {
				$post = get_post();
				if ( empty( $post->post_content ) ) {
					$tabs['description'] = [
						'title' => esc_html__( 'Description', 'elementor' ),
						'priority' => 10,
						'callback' => 'woocommerce_product_description_tab',
					];
				}
			}

			return $tabs;
		} );

		// Fix WC session not defined in editor.
		if ( class_exists( 'woocommerce' ) ) {
			add_action( 'elementor/editor/before_enqueue_scripts', function() {
				remove_action( 'woocommerce_shortcode_before_product_cat_loop', 'wc_print_notices' );
				remove_action( 'woocommerce_before_shop_loop', 'wc_print_notices' );
				remove_action( 'woocommerce_before_single_product', 'wc_print_notices' );
			} );

			add_filter( 'elementor/maintenance_mode/is_login_page', function( $value ) {

				// Support Woocommerce Account Page.
				if ( is_account_page() && ! is_user_logged_in() ) {
					$value = true;
				}
				return $value;
			} );
		}

		// Fix Jetpack Contact Form in Editor Mode.
		if ( class_exists( 'Grunion_Editor_View' ) ) {
			add_action( 'elementor/editor/before_enqueue_scripts', function() {
				remove_action( 'media_buttons', 'grunion_media_button', 999 );
				remove_action( 'admin_enqueue_scripts', 'grunion_enable_spam_recheck' );

				remove_action( 'admin_notices', [ 'Grunion_Editor_View', 'handle_editor_view_js' ] );
				remove_action( 'admin_head', [ 'Grunion_Editor_View', 'admin_head' ] );
			} );
		}

		// Fix Popup Maker in Editor Mode.
		if ( class_exists( 'PUM_Admin_Shortcode_UI' ) ) {
			add_action( 'elementor/editor/before_enqueue_scripts', function() {
				$pum_admin_instance = \PUM_Admin_Shortcode_UI::instance();

				remove_action( 'print_media_templates', [ $pum_admin_instance, 'print_media_templates' ] );
				remove_action( 'admin_print_footer_scripts', [ $pum_admin_instance, 'admin_print_footer_scripts' ], 100 );
				remove_action( 'wp_ajax_pum_do_shortcode', [ $pum_admin_instance, 'wp_ajax_pum_do_shortcode' ] );

				remove_action( 'admin_enqueue_scripts', [ $pum_admin_instance, 'admin_enqueue_scripts' ] );

				remove_filter( 'pum_admin_var', [ $pum_admin_instance, 'pum_admin_var' ] );
			} );
		}

		// Fix Preview URL for https://github.com/wpmudev/domain-mapping plugin
		if ( class_exists( 'domain_map' ) ) {
			add_filter( 'elementor/document/urls/preview', function( $preview_url ) {
				if ( wp_parse_url( $preview_url, PHP_URL_HOST ) !== $_SERVER['HTTP_HOST'] ) {
					$preview_url = \domain_map::utils()->unswap_url( $preview_url );
					$preview_url = add_query_arg( [
						'dm' => \Domainmap_Module_Mapping::BYPASS,
					], $preview_url );
				}

				return $preview_url;
			} );
		}

		// Gutenberg
		if ( function_exists( 'gutenberg_init' ) ) {
			add_action( 'admin_print_scripts-edit.php', [ __CLASS__, 'add_new_button_to_gutenberg' ], 11 );
		}
	}

	public static function filter_library_post_type( $post_types ) {
		unset( $post_types[ Source_Local::CPT ] );

		return $post_types;
	}

	/**
	 * Polylang compatibility.
	 *
	 * Fix Polylang compatibility with Elementor.
	 *
	 * @since 2.0.0
	 * @access private
	 * @static
	 */
	private static function polylang_compatibility() {
		// Fix language if the `get_user_locale` is difference from the `get_locale
		if ( isset( $_REQUEST['action'] ) && 0 === strpos( $_REQUEST['action'], 'elementor' ) ) {
			add_action( 'set_current_user', function() {
				global $current_user;
				$current_user->locale = get_locale();
			} );

			// Fix for Polylang
			define( 'PLL_AJAX_ON_FRONT', true );

			add_action( 'pll_pre_init', function( $polylang ) {
				if ( isset( $_REQUEST['post'] ) ) {
					$post_language = $polylang->model->post->get_language( $_REQUEST['post'], 'locale' );
					if ( ! empty( $post_language ) ) {
						$_REQUEST['lang'] = $post_language->locale;
					}
				}
			} );
		}

		// Copy elementor data while polylang creates a translation copy
		add_filter( 'pll_copy_post_metas', [ __CLASS__, 'save_polylang_meta' ], 10, 4 );
	}

	/**
	 * Save polylang meta.
	 *
	 * Copy elementor data while polylang creates a translation copy.
	 *
	 * Fired by `pll_copy_post_metas` filter.
	 *
	 * @since 1.6.0
	 * @access public
	 * @static
	 *
	 * @param array $keys List of custom fields names.
	 * @param bool  $sync True if it is synchronization, false if it is a copy.
	 * @param int   $from ID of the post from which we copy information.
	 * @param int   $to   ID of the post to which we paste information.
	 *
	 * @return array List of custom fields names.
	 */
	public static function save_polylang_meta( $keys, $sync, $from, $to ) {
		// Copy only for a new post.
		if ( ! $sync ) {
			Plugin::$instance->db->copy_elementor_meta( $from, $to );
		}

		return $keys;
	}

	/**
	 * Process post meta before WP importer.
	 *
	 * Normalize Elementor post meta on import, We need the `wp_slash` in order
	 * to avoid the unslashing during the `add_post_meta`.
	 *
	 * Fired by `wp_import_post_meta` filter.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @param array $post_meta Post meta.
	 *
	 * @return array Updated post meta.
	 */
	public static function on_wp_import_post_meta( $post_meta ) {
		$is_wp_importer_before_0_7 = self::is_wp_importer_before_0_7();

		if ( $is_wp_importer_before_0_7 ) {
			foreach ( $post_meta as &$meta ) {
				if ( '_elementor_data' === $meta['key'] ) {
					$meta['value'] = wp_slash( $meta['value'] );
					break;
				}
			}
		}

		return $post_meta;
	}

	/**
	 * Is WP Importer Before 0.7
	 *
	 * Checks if WP Importer is installed, and whether its version is older than 0.7.
	 *
	 * @return bool
	 */
	public static function is_wp_importer_before_0_7() {
		$wp_importer = get_plugins( '/wordpress-importer' );

		if ( ! empty( $wp_importer ) ) {
			$wp_importer_version = $wp_importer['wordpress-importer.php']['Version'];

			if ( version_compare( $wp_importer_version, '0.7', '<' ) ) {
				return true;
			}
		}

		return false;
	}

	/**
	 * Process post meta before WXR importer.
	 *
	 * Normalize Elementor post meta on import with the new WP_importer, We need
	 * the `wp_slash` in order to avoid the unslashing during the `add_post_meta`.
	 *
	 * Fired by `wxr_importer.pre_process.post_meta` filter.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @param array $post_meta Post meta.
	 *
	 * @return array Updated post meta.
	 */
	public static function on_wxr_importer_pre_process_post_meta( $post_meta ) {
		$is_wp_importer_before_0_7 = self::is_wp_importer_before_0_7();

		if ( $is_wp_importer_before_0_7 ) {
			if ( '_elementor_data' === $post_meta['key'] ) {
				$post_meta['value'] = wp_slash( $post_meta['value'] );
			}
		}

		return $post_meta;
	}
}
includes/tracker.php000064400000032401151327220420010514 0ustar00<?php
namespace Elementor;

use Elementor\Modules\System_Info\Module as System_Info_Module;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor tracker.
 *
 * Elementor tracker handler class is responsible for sending non-sensitive plugin
 * data to Elementor servers for users that actively allowed data tracking.
 *
 * @since 1.0.0
 */
class Tracker {

	/**
	 * API URL.
	 *
	 * Holds the URL of the Tracker API.
	 *
	 * @since 1.0.0
	 * @access private
	 *
	 * @var string API URL.
	 */
	private static $_api_url = 'https://my.elementor.com/api/v1/tracker/';

	private static $notice_shown = false;

	/**
	 * Init.
	 *
	 * Initialize Elementor tracker.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 */
	public static function init() {
		add_action( 'elementor/tracker/send_event', [ __CLASS__, 'send_tracking_data' ] );
		add_action( 'admin_init', [ __CLASS__, 'handle_tracker_actions' ] );
	}

	/**
	 * Check for settings opt-in.
	 *
	 * Checks whether the site admin has opted-in for data tracking, or not.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @param string $new_value Allowed tracking value.
	 *
	 * @return string Return `yes` if tracking allowed, `no` otherwise.
	 */
	public static function check_for_settings_optin( $new_value ) {
		$old_value = get_option( 'elementor_allow_tracking', 'no' );
		if ( $old_value !== $new_value && 'yes' === $new_value ) {
			self::send_tracking_data( true );
		}

		if ( empty( $new_value ) ) {
			$new_value = 'no';
		}
		return $new_value;
	}

	/**
	 * Send tracking data.
	 *
	 * Decide whether to send tracking data, or not.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @param bool $override
	 */
	public static function send_tracking_data( $override = false ) {
		// Don't trigger this on AJAX Requests.
		if ( defined( 'DOING_AJAX' ) && DOING_AJAX ) {
			return;
		}

		if ( ! self::is_allow_track() ) {
			return;
		}

		$last_send = self::get_last_send_time();

		/**
		 * Tracker override send.
		 *
		 * Filters whether to override sending tracking data or not.
		 *
		 * @since 1.0.0
		 *
		 * @param bool $override Whether to override default setting or not.
		 */
		$override = apply_filters( 'elementor/tracker/send_override', $override );

		if ( ! $override ) {
			$last_send_interval = strtotime( '-1 week' );

			/**
			 * Tracker last send interval.
			 *
			 * Filters the interval of between two tracking requests.
			 *
			 * @since 1.0.0
			 *
			 * @param int $last_send_interval A date/time string. Default is `strtotime( '-1 week' )`.
			 */
			$last_send_interval = apply_filters( 'elementor/tracker/last_send_interval', $last_send_interval );

			// Send a maximum of once per week by default.
			if ( $last_send && $last_send > $last_send_interval ) {
				return;
			}
		} else {
			// Make sure there is at least a 1 hour delay between override sends, we dont want duplicate calls due to double clicking links.
			if ( $last_send && $last_send > strtotime( '-1 hours' ) ) {
				return;
			}
		}

		// Update time first before sending to ensure it is set.
		update_option( 'elementor_tracker_last_send', time() );

		$params = self::get_tracking_data( empty( $last_send ) );

		add_filter( 'https_ssl_verify', '__return_false' );

		wp_safe_remote_post(
			self::$_api_url,
			[
				'timeout' => 25,
				'blocking' => false,
				// 'sslverify' => false,
				'body' => [
					'data' => wp_json_encode( $params ),
				],
			]
		);
	}

	/**
	 * Is allow track.
	 *
	 * Checks whether the site admin has opted-in for data tracking, or not.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 */
	public static function is_allow_track() {
		return 'yes' === get_option( 'elementor_allow_tracking', 'no' );
	}

	/**
	 * Handle tracker actions.
	 *
	 * Check if the user opted-in or opted-out and update the database.
	 *
	 * Fired by `admin_init` action.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 */
	public static function handle_tracker_actions() {
		if ( ! isset( $_GET['elementor_tracker'] ) ) {
			return;
		}

		if ( 'opt_into' === $_GET['elementor_tracker'] ) {
			check_admin_referer( 'opt_into' );

			self::set_opt_in( true );
		}

		if ( 'opt_out' === $_GET['elementor_tracker'] ) {
			check_admin_referer( 'opt_out' );

			self::set_opt_in( false );
		}

		wp_redirect( remove_query_arg( 'elementor_tracker' ) );
		exit;
	}

	/**
	 * @since 2.2.0
	 * @access public
	 * @static
	 */
	public static function is_notice_shown() {
		return self::$notice_shown;
	}

	public static function set_opt_in( $value ) {
		if ( $value ) {
			update_option( 'elementor_allow_tracking', 'yes' );
			self::send_tracking_data( true );
		} else {
			update_option( 'elementor_allow_tracking', 'no' );
			update_option( 'elementor_tracker_notice', '1' );
		}
	}

	/**
	 * Get system reports data.
	 *
	 * Retrieve the data from system reports.
	 *
	 * @since 2.0.0
	 * @access private
	 * @static
	 *
	 * @return array The data from system reports.
	 */
	private static function get_system_reports_data() {
		$reports = Plugin::$instance->system_info->load_reports( System_Info_Module::get_allowed_reports() );

		$system_reports = [];
		foreach ( $reports as $report_key => $report_details ) {
			$system_reports[ $report_key ] = [];
			foreach ( $report_details['report'] as $sub_report_key => $sub_report_details ) {
				$system_reports[ $report_key ][ $sub_report_key ] = $sub_report_details['value'];
			}
		}
		return $system_reports;
	}

	/**
	 * Get last send time.
	 *
	 * Retrieve the last time tracking data was sent.
	 *
	 * @since 2.0.0
	 * @access private
	 * @static
	 *
	 * @return int|false The last time tracking data was sent, or false if
	 *                   tracking data never sent.
	 */
	private static function get_last_send_time() {
		$last_send_time = get_option( 'elementor_tracker_last_send', false );

		/**
		 * Tracker last send time.
		 *
		 * Filters the last time tracking data was sent.
		 *
		 * @since 1.0.0
		 *
		 * @param int|false $last_send_time The last time tracking data was sent,
		 *                                  or false if tracking data never sent.
		 */
		$last_send_time = apply_filters( 'elementor/tracker/last_send_time', $last_send_time );

		return $last_send_time;
	}

	/**
	 * Get non elementor post usages.
	 *
	 * Retrieve the number of posts that not using elementor.

	 * @return array The number of posts using not used by Elementor grouped by post types
	 *               and post status.
	 */
	public static function get_non_elementor_posts_usage() {
		global $wpdb;

		$usage = [];

		$results = $wpdb->get_results(
			"SELECT `post_type`, `post_status`, COUNT(`ID`) `hits`
				FROM {$wpdb->posts} `p`
				LEFT JOIN {$wpdb->postmeta} `pm` ON(`p`.`ID` = `pm`.`post_id` AND  `meta_key` = '_elementor_edit_mode' )
				WHERE `post_type` != 'elementor_library' AND `meta_value` IS NULL
				GROUP BY `post_type`, `post_status`;"
		);

		if ( $results ) {
			foreach ( $results as $result ) {
				$usage[ $result->post_type ][ $result->post_status ] = $result->hits;
			}
		}

		return $usage;
	}

	/**
	 * Get posts usage.
	 *
	 * Retrieve the number of posts using Elementor.
	 *
	 * @since 2.0.0
	 * @access public
	 * @static
	 *
	 * @return array The number of posts using Elementor grouped by post types
	 *               and post status.
	 */
	public static function get_posts_usage() {
		global $wpdb;

		$usage = [];

		$results = $wpdb->get_results(
			"SELECT `post_type`, `post_status`, COUNT(`ID`) `hits`
				FROM {$wpdb->posts} `p`
				LEFT JOIN {$wpdb->postmeta} `pm` ON(`p`.`ID` = `pm`.`post_id`)
				WHERE `post_type` != 'elementor_library'
					AND `meta_key` = '_elementor_edit_mode' AND `meta_value` = 'builder'
				GROUP BY `post_type`, `post_status`;"
		);

		if ( $results ) {
			foreach ( $results as $result ) {
				$usage[ $result->post_type ][ $result->post_status ] = $result->hits;
			}
		}

		return $usage;
	}

	/**
	 * Get library usage.
	 *
	 * Retrieve the number of Elementor library items saved.
	 *
	 * @since 2.0.0
	 * @access public
	 * @static
	 *
	 * @return array The number of Elementor library items grouped by post types
	 *               and meta value.
	 */
	public static function get_library_usage() {
		global $wpdb;

		$usage = [];

		$results = $wpdb->get_results(
			"SELECT `meta_value`, COUNT(`ID`) `hits`
				FROM {$wpdb->posts} `p`
				LEFT JOIN {$wpdb->postmeta} `pm` ON(`p`.`ID` = `pm`.`post_id`)
				WHERE `post_type` = 'elementor_library'
					AND `meta_key` = '_elementor_template_type'
				GROUP BY `post_type`, `meta_value`;"
		);

		if ( $results ) {
			foreach ( $results as $result ) {
				$usage[ $result->meta_value ] = $result->hits;
			}
		}

		return $usage;

	}

	/**
	 * Get usage of general settings.
	 * 'Elementor->Settings->General'.
	 *
	 * @return array
	 */
	public static function get_settings_general_usage() {
		return self::get_tracking_data_from_settings( 'general' );
	}

	/**
	 * Get usage of advanced settings.
	 * 'Elementor->Settings->Advanced'.
	 *
	 * @return array
	 */
	public static function get_settings_advanced_usage() {
		return self::get_tracking_data_from_settings( 'advanced' );
	}

	/**
	 * Get usage of experiments settings.
	 *
	 * 'Elementor->Settings->Experiments'.
	 *
	 * @return array
	 */
	public static function get_settings_experiments_usage() {
		$result = [];

		$experiments_manager = Plugin::$instance->experiments;

		// TODO: Those keys should be at `$experiments_manager`.
		$tracking_keys = [
			'default',
			'state',
		];

		foreach ( $experiments_manager->get_features() as $feature_name => $feature_data ) {
			$data_to_collect = [];

			// Extract only tracking keys.
			foreach ( $tracking_keys as $tracking_key ) {
				$data_to_collect[ $tracking_key ] = $feature_data[ $tracking_key ];
			}

			$result[ $feature_name ] = $data_to_collect;
		}

		return $result;
	}

	/**
	 * Get usage of general tools.
	 * 'Elementor->Tools->General'.
	 *
	 * @return array
	 */
	public static function get_tools_general_usage() {
		return self::get_tracking_data_from_tools( 'general' );
	}

	/**
	 * Get usage of 'version control' tools.
	 * 'Elementor->Tools->Version Control'.
	 *
	 * @return array
	 */
	public static function get_tools_version_control_usage() {
		return self::get_tracking_data_from_tools( 'versions' );
	}

	/**
	 * Get usage of 'maintenance' tools.
	 * 'Elementor->Tools->Maintenance'.
	 *
	 * @return array
	 */
	public static function get_tools_maintenance_usage() {
		return self::get_tracking_data_from_tools( 'maintenance_mode' );
	}

	/**
	 * Get the tracking data
	 *
	 * Retrieve tracking data and apply filter
	 *
	 * @access public
	 * @static
	 *
	 * @param bool $is_first_time
	 *
	 * @return array
	 */
	public static function get_tracking_data( $is_first_time = false ) {
		$params = [
			'system' => self::get_system_reports_data(),
			'site_lang' => get_bloginfo( 'language' ),
			'email' => get_option( 'admin_email' ),
			'usages' => [
				'posts' => self::get_posts_usage(),
				'non-elementor-posts' => self::get_non_elementor_posts_usage(),
				'library' => self::get_library_usage(),
				'settings' => [
					'general' => self::get_settings_general_usage(),
					'advanced' => self::get_settings_advanced_usage(),
					'experiments' => self::get_settings_experiments_usage(),
				],
				'tools' => [
					'general' => self::get_tools_general_usage(),
					'version' => self::get_tools_version_control_usage(),
					'maintenance' => self::get_tools_maintenance_usage(),
				],
			],
			'is_first_time' => $is_first_time,
			'install_time' => Plugin::instance()->get_install_time(),
		];

		/**
		 * Tracker send tracking data params.
		 *
		 * Filters the data parameters when sending tracking request.
		 *
		 * @param array $params Variable to encode as JSON.
		 *
		 * @since 1.0.0
		 *
		 */
		$params = apply_filters( 'elementor/tracker/send_tracking_data_params', $params );

		return $params;
	}

	/**
	 * @param string $tab_name
	 * @return array
	 */
	private static function get_tracking_data_from_settings( $tab_name ) {
		return self::get_tracking_data_from_settings_page(
			Plugin::$instance->settings->get_tabs(),
			$tab_name
		);
	}

	/**
	 * @param string $tab_name
	 * @return array
	 */
	private static function get_tracking_data_from_tools( $tab_name ) {
		return self::get_tracking_data_from_settings_page(
			Plugin::$instance->tools->get_tabs(),
			$tab_name
		);
	}

	private static function get_tracking_data_from_settings_page( $tabs, $tab_name ) {
		$result = [];

		if ( empty( $tabs[ $tab_name ] ) ) {
			return $result;
		}

		$tab = $tabs[ $tab_name ];

		foreach ( $tab['sections'] as $section_name => $section ) {
			foreach ( $section['fields'] as $field_name => $field ) {
				// Skips fields with '_' prefix.
				if ( '_' === $field_name[0] ) {
					continue;
				}

				$default_value = null;
				$args = $field['field_args'];
				switch ( $args['type'] ) {
					case 'checkbox':
						$default_value = $args['value'];
						break;

					case 'select':
					case 'checkbox_list_cpt':
						$default_value = $args['std'];
						break;

					case 'checkbox_list_roles':
						$default_value = null;
						break;

					// 'raw_html' is used as action and not as data.
					case 'raw_html':
						continue 2; // Skip fields loop.

					default:
						trigger_error( 'Invalid type: \'' . $args['type'] . '\'' ); // phpcs:ignore
				}

				$result[ $field_name ] = get_option( 'elementor_' . $field_name, $default_value );
			}
		}

		return $result;
	}
}
includes/api.php000064400000014643151327220420007642 0ustar00<?php
namespace Elementor;

use Elementor\Core\Common\Modules\Connect\Apps\Library;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor API.
 *
 * Elementor API handler class is responsible for communicating with Elementor
 * remote servers retrieving templates data and to send uninstall feedback.
 *
 * @since 1.0.0
 */
class Api {

	/**
	 * Elementor library option key.
	 */
	const LIBRARY_OPTION_KEY = 'elementor_remote_info_library';

	/**
	 * Elementor feed option key.
	 */
	const FEED_OPTION_KEY = 'elementor_remote_info_feed_data';

	/**
	 * API info URL.
	 *
	 * Holds the URL of the info API.
	 *
	 * @access public
	 * @static
	 *
	 * @var string API info URL.
	 */
	public static $api_info_url = 'https://my.elementor.com/api/v1/info/';

	/**
	 * API feedback URL.
	 *
	 * Holds the URL of the feedback API.
	 *
	 * @access private
	 * @static
	 *
	 * @var string API feedback URL.
	 */
	private static $api_feedback_url = 'https://my.elementor.com/api/v1/feedback/';

	/**
	 * Get info data.
	 *
	 * This function notifies the user of upgrade notices, new templates and contributors.
	 *
	 * @since 2.0.0
	 * @access private
	 * @static
	 *
	 * @param bool $force_update Optional. Whether to force the data retrieval or
	 *                                     not. Default is false.
	 *
	 * @return array|false Info data, or false.
	 */
	private static function get_info_data( $force_update = false ) {
		$cache_key = 'elementor_remote_info_api_data_' . ELEMENTOR_VERSION;

		$info_data = get_transient( $cache_key );

		if ( $force_update || false === $info_data ) {
			$timeout = ( $force_update ) ? 25 : 8;

			$response = wp_remote_get( self::$api_info_url, [
				'timeout' => $timeout,
				'body' => [
					// Which API version is used.
					'api_version' => ELEMENTOR_VERSION,
					// Which language to return.
					'site_lang' => get_bloginfo( 'language' ),
				],
			] );

			if ( is_wp_error( $response ) || 200 !== (int) wp_remote_retrieve_response_code( $response ) ) {
				set_transient( $cache_key, [], 2 * HOUR_IN_SECONDS );

				return false;
			}

			$info_data = json_decode( wp_remote_retrieve_body( $response ), true );

			if ( empty( $info_data ) || ! is_array( $info_data ) ) {
				set_transient( $cache_key, [], 2 * HOUR_IN_SECONDS );

				return false;
			}

			if ( isset( $info_data['library'] ) ) {
				update_option( self::LIBRARY_OPTION_KEY, $info_data['library'], 'no' );

				unset( $info_data['library'] );
			}

			if ( isset( $info_data['feed'] ) ) {
				update_option( self::FEED_OPTION_KEY, $info_data['feed'], 'no' );

				unset( $info_data['feed'] );
			}

			set_transient( $cache_key, $info_data, 12 * HOUR_IN_SECONDS );
		}

		return $info_data;
	}

	/**
	 * Get upgrade notice.
	 *
	 * Retrieve the upgrade notice if one exists, or false otherwise.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @return array|false Upgrade notice, or false none exist.
	 */
	public static function get_upgrade_notice() {
		$data = self::get_info_data();

		if ( empty( $data['upgrade_notice'] ) ) {
			return false;
		}

		return $data['upgrade_notice'];
	}

	public static function get_admin_notice() {
		$data = self::get_info_data();
		if ( empty( $data['admin_notice'] ) ) {
			return false;
		}
		return $data['admin_notice'];
	}

	public static function get_canary_deployment_info( $force = false ) {
		$data = self::get_info_data( $force );

		if ( empty( $data['canary_deployment'] ) ) {
			return false;
		}

		return $data['canary_deployment'];
	}

	public static function get_promotion_widgets() {
		$data = self::get_info_data();

		if ( ! isset( $data['pro_widgets'] ) ) {
			$data['pro_widgets'] = [];
		}

		return $data['pro_widgets'];
	}

	/**
	 * Get templates data.
	 *
	 * Retrieve the templates data from a remote server.
	 *
	 * @since 2.0.0
	 * @access public
	 * @static
	 *
	 * @param bool $force_update Optional. Whether to force the data update or
	 *                                     not. Default is false.
	 *
	 * @return array The templates data.
	 */
	public static function get_library_data( $force_update = false ) {
		self::get_info_data( $force_update );

		$library_data = get_option( self::LIBRARY_OPTION_KEY );

		if ( empty( $library_data ) ) {
			return [];
		}

		return $library_data;
	}

	/**
	 * Get feed data.
	 *
	 * Retrieve the feed info data from remote elementor server.
	 *
	 * @since 1.9.0
	 * @access public
	 * @static
	 *
	 * @param bool $force_update Optional. Whether to force the data update or
	 *                                     not. Default is false.
	 *
	 * @return array Feed data.
	 */
	public static function get_feed_data( $force_update = false ) {
		self::get_info_data( $force_update );

		$feed = get_option( self::FEED_OPTION_KEY );

		if ( empty( $feed ) ) {
			return [];
		}

		return $feed;
	}

	/**
	 * Get template content.
	 *
	 * Retrieve the templates content received from a remote server.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @param int $template_id The template ID.
	 *
	 * @return object|\WP_Error The template content.
	 */
	public static function get_template_content( $template_id ) {
		/** @var Library $library */
		$library = Plugin::$instance->common->get_component( 'connect' )->get_app( 'library' );

		return $library->get_template_content( $template_id );
	}

	/**
	 * Send Feedback.
	 *
	 * Fires a request to Elementor server with the feedback data.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @param string $feedback_key  Feedback key.
	 * @param string $feedback_text Feedback text.
	 *
	 * @return array The response of the request.
	 */
	public static function send_feedback( $feedback_key, $feedback_text ) {
		return wp_remote_post( self::$api_feedback_url, [
			'timeout' => 30,
			'body' => [
				'api_version' => ELEMENTOR_VERSION,
				'site_lang' => get_bloginfo( 'language' ),
				'feedback_key' => $feedback_key,
				'feedback' => $feedback_text,
			],
		] );
	}

	/**
	 * Ajax reset API data.
	 *
	 * Reset Elementor library API data using an ajax call.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 */
	public static function ajax_reset_api_data() {
		check_ajax_referer( 'elementor_reset_library', '_nonce' );

		self::get_info_data( true );

		wp_send_json_success();
	}

	/**
	 * Init.
	 *
	 * Initialize Elementor API.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 */
	public static function init() {
		add_action( 'wp_ajax_elementor_reset_library', [ __CLASS__, 'ajax_reset_api_data' ] );
	}
}
includes/controls/button.php000064400000003266151327220420012246 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor button control.
 *
 * A base control for creating a button control. Displays a button that can
 * trigger an event.
 *
 * @since 1.9.0
 */
class Control_Button extends Base_UI_Control {

	/**
	 * Get button control type.
	 *
	 * Retrieve the control type, in this case `button`.
	 *
	 * @since 1.9.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return 'button';
	}

	/**
	 * Get button control default settings.
	 *
	 * Retrieve the default settings of the button control. Used to
	 * return the default settings while initializing the button
	 * control.
	 *
	 * @since 1.9.0
	 * @access protected
	 *
	 * @return array Control default settings.
	 */
	protected function get_default_settings() {
		return [
			'text' => '',
			'event' => '',
			'button_type' => 'default',
		];
	}

	/**
	 * Render button control output in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 1.9.0
	 * @access public
	 */
	public function content_template() {
		?>
		<div class="elementor-control-field">
			<label class="elementor-control-title">{{{ data.label }}}</label>
			<div class="elementor-control-input-wrapper">
				<button type="button" class="elementor-button elementor-button-{{{ data.button_type }}}" data-event="{{{ data.event }}}">{{{ data.text }}}</button>
			</div>
		</div>
		<# if ( data.description ) { #>
			<div class="elementor-control-field-description">{{{ data.description }}}</div>
		<# } #>
		<?php
	}
}
includes/controls/url.php000064400000011634151327220420011533 0ustar00<?php
namespace Elementor;

use Elementor\Modules\DynamicTags\Module as TagsModule;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor URL control.
 *
 * A base control for creating url control. Displays a URL input with the
 * ability to set the target of the link to `_blank` to open in a new tab.
 *
 * @since 1.0.0
 */
class Control_URL extends Control_Base_Multiple {

	/**
	 * Get url control type.
	 *
	 * Retrieve the control type, in this case `url`.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return 'url';
	}

	/**
	 * Get url control default values.
	 *
	 * Retrieve the default value of the url control. Used to return the default
	 * values while initializing the url control.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array Control default value.
	 */
	public function get_default_value() {
		return [
			'url' => '',
			'is_external' => '',
			'nofollow' => '',
			'custom_attributes' => '',
		];
	}

	/**
	 * Get url control default settings.
	 *
	 * Retrieve the default settings of the url control. Used to return the default
	 * settings while initializing the url control.
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @return array Control default settings.
	 */
	protected function get_default_settings() {
		return [
			'label_block' => true,
			'placeholder' => esc_html__( 'Paste URL or type', 'elementor' ),
			'autocomplete' => true,
			'options' => [ 'is_external', 'nofollow', 'custom_attributes' ],
			'dynamic' => [
				'categories' => [ TagsModule::URL_CATEGORY ],
				'property' => 'url',
			],
			'custom_attributes_description' => esc_html__( 'Set custom attributes for the link element. Separate attribute keys from values using the | (pipe) character. Separate key-value pairs with a comma.', 'elementor' )
			. ' <a href="https://go.elementor.com/panel-link-custom-attributes/" target="_blank">' . esc_html__( 'Learn More', 'elementor' ) . '</a>',
		];
	}

	/**
	 * Render url control output in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function content_template() {
		?>
		<div class="elementor-control-field elementor-control-url-external-{{{ ( data.options.length || data.show_external ) ? 'show' : 'hide' }}}">
			<label for="<?php $this->print_control_uid(); ?>" class="elementor-control-title">{{{ data.label }}}</label>
			<div class="elementor-control-input-wrapper elementor-control-dynamic-switcher-wrapper">
				<i class="elementor-control-url-autocomplete-spinner eicon-loading eicon-animation-spin" aria-hidden="true"></i>
				<input id="<?php $this->print_control_uid(); ?>" class="elementor-control-tag-area elementor-input" data-setting="url" placeholder="{{ view.getControlPlaceholder() }}" />
				<?php // PHPCS - Nonces don't require escaping. ?>
				<input id="_ajax_linking_nonce" type="hidden" value="<?php echo wp_create_nonce( 'internal-linking' ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>" />
				<div class="elementor-control-url-more tooltip-target elementor-control-unit-1" data-tooltip="<?php echo esc_html__( 'Link Options', 'elementor' ); ?>">
					<i class="eicon-cog" aria-hidden="true"></i>
				</div>
			</div>
			<div class="elementor-control-url-more-options">
				<div class="elementor-control-url-option">
					<input id="<?php $this->print_control_uid( 'is_external' ); ?>" type="checkbox" class="elementor-control-url-option-input" data-setting="is_external">
					<label for="<?php $this->print_control_uid( 'is_external' ); ?>"><?php echo esc_html__( 'Open in new window', 'elementor' ); ?></label>
				</div>
				<div class="elementor-control-url-option">
					<input id="<?php $this->print_control_uid( 'nofollow' ); ?>" type="checkbox" class="elementor-control-url-option-input" data-setting="nofollow">
					<label for="<?php $this->print_control_uid( 'nofollow' ); ?>"><?php echo esc_html__( 'Add nofollow', 'elementor' ); ?></label>
				</div>
				<div class="elementor-control-url__custom-attributes">
					<label for="<?php $this->print_control_uid( 'custom_attributes' ); ?>" class="elementor-control-url__custom-attributes-label"><?php echo esc_html__( 'Custom Attributes', 'elementor' ); ?></label>
					<input type="text" id="<?php $this->print_control_uid( 'custom_attributes' ); ?>" class="elementor-control-unit-5" placeholder="key|value" data-setting="custom_attributes">
				</div>
				<# if ( ( data.options && -1 !== data.options.indexOf( 'custom_attributes' ) ) && data.custom_attributes_description ) { #>
				<div class="elementor-control-field-description">{{{ data.custom_attributes_description }}}</div>
				<# } #>
			</div>
		</div>
		<# if ( data.description ) { #>
		<div class="elementor-control-field-description">{{{ data.description }}}</div>
		<# } #>
		<?php
	}
}
includes/controls/structure.php000064400000004763151327220420012776 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor structure control.
 *
 * A base control for creating structure control. A private control for section
 * columns structure.
 *
 * @since 1.0.0
 */
class Control_Structure extends Base_Data_Control {

	/**
	 * Get structure control type.
	 *
	 * Retrieve the control type, in this case `structure`.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return 'structure';
	}

	/**
	 * Render structure control output in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function content_template() {
		?>
		<div class="elementor-control-field">
			<div class="elementor-control-input-wrapper">
				<#
				var morePresets = getMorePresets();

				if ( morePresets.length ) { #>
					<div class="elementor-control-structure-presets">
						<# _.each( morePresets, function( preset ) { #>
							<div class="elementor-control-structure-preset-wrapper">
								<input id="<?php $this->print_control_uid( '{{ preset.key }}' ); ?>" type="radio" name="elementor-control-structure-preset-{{ data._cid }}" data-setting="structure" value="{{ preset.key }}">
								<label for="<?php $this->print_control_uid( '{{ preset.key }}' ); ?>" class="elementor-control-structure-preset">
									{{{ elementor.presetsFactory.getPresetSVG( preset.preset, 102, 42 ).outerHTML }}}
								</label>
								<div class="elementor-control-structure-preset-title">{{{ preset.preset.join( ', ' ) }}}</div>
							</div>
						<# } ); #>
					</div>
				<# } #>
			</div>
			<div class="elementor-control-structure-reset">
				<i class="eicon-undo" aria-hidden="true"></i>
				<?php echo esc_html__( 'Reset', 'elementor' ); ?>
			</div>
		</div>
		<# if ( data.description ) { #>
			<div class="elementor-control-field-description">{{{ data.description }}}</div>
		<# } #>
		<?php
	}

	/**
	 * Get structure control default settings.
	 *
	 * Retrieve the default settings of the structure control. Used to return the
	 * default settings while initializing the structure control.
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @return array Control default settings.
	 */
	protected function get_default_settings() {
		return [
			'separator' => 'none',
			'label_block' => true,
			'show_label' => false,
		];
	}
}
includes/controls/groups/css-filter.php000064400000006720151327220420014323 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor CSS Filter control.
 *
 * A base control for applying css filters. Displays sliders to define the
 * values of different CSS filters including blur, brightens, contrast,
 * saturation and hue.
 *
 * @since 2.1.0
 */
class Group_Control_Css_Filter extends Group_Control_Base {

	/**
	 * Prepare fields.
	 *
	 * Process css_filter control fields before adding them to `add_control()`.
	 *
	 * @since 2.1.0
	 * @access protected
	 *
	 * @param array $fields CSS filter control fields.
	 *
	 * @return array Processed fields.
	 */
	protected static $fields;

	/**
	 * Get CSS filter control type.
	 *
	 * Retrieve the control type, in this case `css-filter`.
	 *
	 * @since 2.1.0
	 * @access public
	 * @static
	 *
	 * @return string Control type.
	 */
	public static function get_type() {
		return 'css-filter';
	}

	/**
	 * Init fields.
	 *
	 * Initialize CSS filter control fields.
	 *
	 * @since 2.1.0
	 * @access protected
	 *
	 * @return array Control fields.
	 */
	protected function init_fields() {
		$controls = [];

		$controls['blur'] = [
			'label' => _x( 'Blur', 'Filter Control', 'elementor' ),
			'type' => Controls_Manager::SLIDER,
			'required' => 'true',
			'range' => [
				'px' => [
					'min' => 0,
					'max' => 10,
					'step' => 0.1,
				],
			],
			'default' => [
				'size' => 0,
			],
			'selectors' => [
				'{{SELECTOR}}' => 'filter: brightness( {{brightness.SIZE}}% ) contrast( {{contrast.SIZE}}% ) saturate( {{saturate.SIZE}}% ) blur( {{blur.SIZE}}px ) hue-rotate( {{hue.SIZE}}deg )',
			],
		];

		$controls['brightness'] = [
			'label' => _x( 'Brightness', 'Filter Control', 'elementor' ),
			'type' => Controls_Manager::SLIDER,
			'render_type' => 'ui',
			'required' => 'true',
			'default' => [
				'size' => 100,
			],
			'range' => [
				'px' => [
					'min' => 0,
					'max' => 200,
				],
			],
			'separator' => 'none',
		];

		$controls['contrast'] = [
			'label' => _x( 'Contrast', 'Filter Control', 'elementor' ),
			'type' => Controls_Manager::SLIDER,
			'render_type' => 'ui',
			'required' => 'true',
			'default' => [
				'size' => 100,
			],
			'range' => [
				'px' => [
					'min' => 0,
					'max' => 200,
				],
			],
			'separator' => 'none',
		];

		$controls['saturate'] = [
			'label' => _x( 'Saturation', 'Filter Control', 'elementor' ),
			'type' => Controls_Manager::SLIDER,
			'render_type' => 'ui',
			'required' => 'true',
			'default' => [
				'size' => 100,
			],
			'range' => [
				'px' => [
					'min' => 0,
					'max' => 200,
				],
			],
			'separator' => 'none',
		];

		$controls['hue'] = [
			'label' => _x( 'Hue', 'Filter Control', 'elementor' ),
			'type' => Controls_Manager::SLIDER,
			'render_type' => 'ui',
			'required' => 'true',
			'default' => [
				'size' => 0,
			],
			'range' => [
				'px' => [
					'min' => 0,
					'max' => 360,
				],
			],
			'separator' => 'none',
		];

		return $controls;
	}

	/**
	 * Get default options.
	 *
	 * Retrieve the default options of the CSS filter control. Used to return the
	 * default options while initializing the CSS filter control.
	 *
	 * @since 2.1.0
	 * @access protected
	 *
	 * @return array Default CSS filter control options.
	 */
	protected function get_default_options() {
		return [
			'popover' => [
				'starter_name' => 'css_filter',
				'starter_title' => _x( 'CSS Filters', 'Filter Control', 'elementor' ),
				'settings' => [
					'render_type' => 'ui',
				],
			],
		];
	}
}
includes/controls/groups/base.php000064400000033655151327220420013171 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor group control base.
 *
 * An abstract class for creating new group controls in the panel.
 *
 * @since 1.0.0
 * @abstract
 */
abstract class Group_Control_Base implements Group_Control_Interface {

	/**
	 * Arguments.
	 *
	 * Holds all the group control arguments.
	 *
	 * @access private
	 *
	 * @var array Group control arguments.
	 */
	private $args = [];

	/**
	 * Options.
	 *
	 * Holds all the group control options.
	 *
	 * Currently supports only the popover options.
	 *
	 * @access private
	 *
	 * @var array Group control options.
	 */
	private $options;

	/**
	 * Get options.
	 *
	 * Retrieve group control options. If options are not set, it will initialize default options.
	 *
	 * @since 1.9.0
	 * @access public
	 *
	 * @param array $option Optional. Single option.
	 *
	 * @return mixed Group control options. If option parameter was not specified, it will
	 *               return an array of all the options. If single option specified, it will
	 *               return the option value or `null` if option does not exists.
	 */
	final public function get_options( $option = null ) {
		if ( null === $this->options ) {
			$this->init_options();
		}

		if ( $option ) {
			if ( isset( $this->options[ $option ] ) ) {
				return $this->options[ $option ];
			}

			return null;
		}

		return $this->options;
	}

	/**
	 * Add new controls to stack.
	 *
	 * Register multiple controls to allow the user to set/update data.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param Controls_Stack $element   The element stack.
	 * @param array          $user_args The control arguments defined by the user.
	 * @param array          $options   Optional. The element options. Default is
	 *                                  an empty array.
	 */
	final public function add_controls( Controls_Stack $element, array $user_args, array $options = [] ) {
		$this->init_args( $user_args );

		// Filter which controls to display
		$filtered_fields = $this->filter_fields();
		$filtered_fields = $this->prepare_fields( $filtered_fields );

		// For php < 7
		reset( $filtered_fields );

		if ( isset( $this->args['separator'] ) ) {
			$filtered_fields[ key( $filtered_fields ) ]['separator'] = $this->args['separator'];
		}

		$has_injection = false;

		if ( ! empty( $options['position'] ) ) {
			$has_injection = true;

			$element->start_injection( $options['position'] );

			unset( $options['position'] );
		}

		if ( $this->get_options( 'popover' ) ) {
			$this->start_popover( $element );
		}

		foreach ( $filtered_fields as $field_id => $field_args ) {
			// Add the global group args to the control
			$field_args = $this->add_group_args_to_field( $field_id, $field_args );

			// Register the control
			$id = $this->get_controls_prefix() . $field_id;

			if ( ! empty( $field_args['responsive'] ) ) {
				unset( $field_args['responsive'] );

				$element->add_responsive_control( $id, $field_args, $options );
			} else {
				$element->add_control( $id, $field_args, $options );
			}
		}

		if ( $this->get_options( 'popover' ) ) {
			$element->end_popover();
		}

		if ( $has_injection ) {
			$element->end_injection();
		}
	}

	/**
	 * Get arguments.
	 *
	 * Retrieve group control arguments.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array Group control arguments.
	 */
	final public function get_args() {
		return $this->args;
	}

	/**
	 * Get fields.
	 *
	 * Retrieve group control fields.
	 *
	 * @since 1.2.2
	 * @access public
	 *
	 * @return array Control fields.
	 */
	final public function get_fields() {
		if ( null === static::$fields ) {
			static::$fields = $this->init_fields();
		}

		return static::$fields;
	}

	/**
	 * Get controls prefix.
	 *
	 * Retrieve the prefix of the group control, which is `{{ControlName}}_`.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Control prefix.
	 */
	public function get_controls_prefix() {
		return $this->args['name'] . '_';
	}

	/**
	 * Get group control classes.
	 *
	 * Retrieve the classes of the group control.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Group control classes.
	 */
	public function get_base_group_classes() {
		return 'elementor-group-control-' . static::get_type() . ' elementor-group-control';
	}

	/**
	 * Init fields.
	 *
	 * Initialize group control fields.
	 *
	 * @abstract
	 * @since 1.2.2
	 * @access protected
	 */
	abstract protected function init_fields();

	/**
	 * Get default options.
	 *
	 * Retrieve the default options of the group control. Used to return the
	 * default options while initializing the group control.
	 *
	 * @since 1.9.0
	 * @access protected
	 *
	 * @return array Default group control options.
	 */
	protected function get_default_options() {
		return [];
	}

	/**
	 * Get child default arguments.
	 *
	 * Retrieve the default arguments for all the child controls for a specific group
	 * control.
	 *
	 * @since 1.2.2
	 * @access protected
	 *
	 * @return array Default arguments for all the child controls.
	 */
	protected function get_child_default_args() {
		return [];
	}

	/**
	 * Filter fields.
	 *
	 * Filter which controls to display, using `include`, `exclude` and the
	 * `condition` arguments.
	 *
	 * @since 1.2.2
	 * @access protected
	 *
	 * @return array Control fields.
	 */
	protected function filter_fields() {
		$args = $this->get_args();

		$fields = $this->get_fields();

		if ( ! empty( $args['include'] ) ) {
			$fields = array_intersect_key( $fields, array_flip( $args['include'] ) );
		}

		if ( ! empty( $args['exclude'] ) ) {
			$fields = array_diff_key( $fields, array_flip( $args['exclude'] ) );
		}

		return $fields;
	}

	/**
	 * Add group arguments to field.
	 *
	 * Register field arguments to group control.
	 *
	 * @since 1.2.2
	 * @access protected
	 *
	 * @param string $control_id Group control id.
	 * @param array  $field_args Group control field arguments.
	 *
	 * @return array
	 */
	protected function add_group_args_to_field( $control_id, $field_args ) {
		$args = $this->get_args();

		if ( ! empty( $args['tab'] ) ) {
			$field_args['tab'] = $args['tab'];
		}

		if ( ! empty( $args['section'] ) ) {
			$field_args['section'] = $args['section'];
		}

		$field_args['classes'] = $this->get_base_group_classes() . ' elementor-group-control-' . $control_id;

		foreach ( [ 'condition', 'conditions' ] as $condition_type ) {
			if ( ! empty( $args[ $condition_type ] ) ) {
				if ( empty( $field_args[ $condition_type ] ) ) {
					$field_args[ $condition_type ] = [];
				}

				$field_args[ $condition_type ] += $args[ $condition_type ];
			}
		}

		return $field_args;
	}

	/**
	 * Prepare fields.
	 *
	 * Process group control fields before adding them to `add_control()`.
	 *
	 * @since 1.2.2
	 * @access protected
	 *
	 * @param array $fields Group control fields.
	 *
	 * @return array Processed fields.
	 */
	protected function prepare_fields( $fields ) {
		$popover_options = $this->get_options( 'popover' );

		$popover_name = ! $popover_options ? null : $popover_options['starter_name'];

		foreach ( $fields as $field_key => &$field ) {
			if ( $popover_name ) {
				$field['condition'][ $popover_name . '!' ] = '';
			}

			if ( isset( $this->args['fields_options']['__all'] ) ) {
				$field = array_merge( $field, $this->args['fields_options']['__all'] );
			}

			if ( isset( $this->args['fields_options'][ $field_key ] ) ) {
				$field = array_merge( $field, $this->args['fields_options'][ $field_key ] );
			}

			if ( ! empty( $field['condition'] ) ) {
				$field = $this->add_condition_prefix( $field );
			}

			if ( ! empty( $field['conditions'] ) ) {
				$field['conditions'] = $this->add_conditions_prefix( $field['conditions'] );
			}

			if ( ! empty( $field['selectors'] ) ) {
				$field['selectors'] = $this->handle_selectors( $field['selectors'] );
			}

			if ( ! empty( $field['device_args'] ) ) {
				foreach ( $field['device_args'] as $device => $device_arg ) {
					if ( ! empty( $field['device_args'][ $device ]['condition'] ) ) {
						$field['device_args'][ $device ] = $this->add_condition_prefix( $field['device_args'][ $device ] );
					}

					if ( ! empty( $field['device_args'][ $device ]['conditions'] ) ) {
						$field['device_args'][ $device ]['conditions'] = $this->add_conditions_prefix( $field['device_args'][ $device ]['conditions'] );
					}

					if ( ! empty( $device_arg['selectors'] ) ) {
						$field['device_args'][ $device ]['selectors'] = $this->handle_selectors( $device_arg['selectors'] );
					}
				}
			}
		}

		return $fields;
	}

	/**
	 * Init options.
	 *
	 * Initializing group control options.
	 *
	 * @since 1.9.0
	 * @access private
	 */
	private function init_options() {
		$default_options = [
			'popover' => [
				'starter_name' => 'popover_toggle',
				'starter_value' => 'custom',
				'starter_title' => '',
			],
		];

		$this->options = array_replace_recursive( $default_options, $this->get_default_options() );
	}

	/**
	 * Init arguments.
	 *
	 * Initializing group control base class.
	 *
	 * @since 1.2.2
	 * @access protected
	 *
	 * @param array $args Group control settings value.
	 */
	protected function init_args( $args ) {
		$this->args = array_merge( $this->get_default_args(), $this->get_child_default_args(), $args );

		if ( isset( $this->args['scheme'] ) ) {
			$this->args['global']['default'] = Plugin::$instance->kits_manager->convert_scheme_to_global( $this->args['scheme'] );
		}
	}

	/**
	 * Get default arguments.
	 *
	 * Retrieve the default arguments of the group control. Used to return the
	 * default arguments while initializing the group control.
	 *
	 * @since 1.2.2
	 * @access private
	 *
	 * @return array Control default arguments.
	 */
	private function get_default_args() {
		return [
			'default' => '',
			'selector' => '{{WRAPPER}}',
			'fields_options' => [],
		];
	}

	/**
	 * Add condition prefix.
	 *
	 * Used to add the group prefix to controls with conditions, to
	 * distinguish them from other controls with the same name.
	 *
	 * This way Elementor can apply condition logic to a specific control in a
	 * group control.
	 *
	 * @since 1.2.0
	 * @access private
	 *
	 * @param array $field Group control field.
	 *
	 * @return array Group control field.
	 */
	private function add_condition_prefix( $field ) {
		$controls_prefix = $this->get_controls_prefix();

		$prefixed_condition_keys = array_map(
			function( $key ) use ( $controls_prefix ) {
				return $controls_prefix . $key;
			},
			array_keys( $field['condition'] )
		);

		$field['condition'] = array_combine(
			$prefixed_condition_keys,
			$field['condition']
		);

		return $field;
	}

	private function add_conditions_prefix( $conditions ) {
		$controls_prefix = $this->get_controls_prefix();

		foreach ( $conditions['terms'] as & $condition ) {
			if ( isset( $condition['terms'] ) ) {
				$condition = $this->add_conditions_prefix( $condition );

				continue;
			}

			$condition['name'] = $controls_prefix . $condition['name'];
		}

		return $conditions;
	}

	/**
	 * Handle selectors.
	 *
	 * Used to process the CSS selector of group control fields. When using
	 * group control, Elementor needs to apply the selector to different fields.
	 * This method handles the process.
	 *
	 * In addition, it handles selector values from other fields and process the
	 * css.
	 *
	 * @since 1.2.2
	 * @access private
	 *
	 * @param array $selectors An array of selectors to process.
	 *
	 * @return array Processed selectors.
	 */
	private function handle_selectors( $selectors ) {
		$args = $this->get_args();

		$selectors = array_combine(
			array_map(
				function( $key ) use ( $args ) {
					return str_replace( '{{SELECTOR}}', $args['selector'], $key );
				}, array_keys( $selectors )
			),
			$selectors
		);

		if ( ! $selectors ) {
			return $selectors;
		}

		$controls_prefix = $this->get_controls_prefix();

		foreach ( $selectors as &$selector ) {
			$selector = preg_replace_callback( '/{{\K(.*?)(?=}})/', function( $matches ) use ( $controls_prefix ) {
				$is_external_reference = false;

				return preg_replace_callback( '/[^ ]+?(?=\.)\./', function( $sub_matches ) use ( $controls_prefix, &$is_external_reference ) {
					$placeholder = $sub_matches[0];

					if ( 'external.' === $placeholder ) {
						$is_external_reference = true;

						return '';
					}

					if ( $is_external_reference ) {
						$is_external_reference = false;

						return $placeholder;
					}

					return $controls_prefix . $placeholder;
				}, $matches[1] );
			}, $selector );
		}

		return $selectors;
	}

	/**
	 * Start popover.
	 *
	 * Starts a group controls popover.
	 *
	 * @since 1.9.1
	 * @access private
	 * @param Controls_Stack $element Element.
	 */
	private function start_popover( Controls_Stack $element ) {
		$popover_options = $this->get_options( 'popover' );

		$settings = $this->get_args();

		if ( isset( $settings['global'] ) ) {
			if ( ! isset( $popover_options['settings']['global'] ) ) {
				$popover_options['settings']['global'] = [];
			}

			$popover_options['settings']['global'] = array_replace_recursive( $popover_options['settings']['global'], $settings['global'] );
		}

		if ( isset( $settings['label'] ) ) {
			$label = $settings['label'];
		} else {
			$label = $popover_options['starter_title'];
		}

		$control_params = [
			'type' => Controls_Manager::POPOVER_TOGGLE,
			'label' => $label,
			'return_value' => $popover_options['starter_value'],
		];

		if ( ! empty( $popover_options['settings'] ) ) {
			$control_params = array_replace_recursive( $control_params, $popover_options['settings'] );
		}

		foreach ( [ 'condition', 'conditions' ] as $key ) {
			if ( ! empty( $settings[ $key ] ) ) {
				$control_params[ $key ] = $settings[ $key ];
			}
		}

		$starter_name = $popover_options['starter_name'];

		if ( isset( $this->args['fields_options'][ $starter_name ] ) ) {
			$control_params = array_merge( $control_params, $this->args['fields_options'][ $starter_name ] );
		}

		$control_params['groupPrefix'] = $this->get_controls_prefix();

		$element->add_control( $this->get_controls_prefix() . $starter_name, $control_params );

		$element->start_popover();
	}
}
includes/controls/groups/text-shadow.php000064400000003650151327220420014516 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor text shadow control.
 *
 * A base control for creating text shadow control. Displays input fields to define
 * the text shadow including the horizontal shadow, vertical shadow, shadow blur and
 * shadow color.
 *
 * @since 1.6.0
 */
class Group_Control_Text_Shadow extends Group_Control_Base {

	/**
	 * Fields.
	 *
	 * Holds all the text shadow control fields.
	 *
	 * @since 1.6.0
	 * @access protected
	 * @static
	 *
	 * @var array Text shadow control fields.
	 */
	protected static $fields;

	/**
	 * Get text shadow control type.
	 *
	 * Retrieve the control type, in this case `text-shadow`.
	 *
	 * @since 1.6.0
	 * @access public
	 * @static
	 *
	 * @return string Control type.
	 */
	public static function get_type() {
		return 'text-shadow';
	}

	/**
	 * Init fields.
	 *
	 * Initialize text shadow control fields.
	 *
	 * @since 1.6.0
	 * @access protected
	 *
	 * @return array Control fields.
	 */
	protected function init_fields() {
		$controls = [];

		$controls['text_shadow'] = [
			'label' => _x( 'Text Shadow', 'Text Shadow Control', 'elementor' ),
			'type' => Controls_Manager::TEXT_SHADOW,
			'selectors' => [
				'{{SELECTOR}}' => 'text-shadow: {{HORIZONTAL}}px {{VERTICAL}}px {{BLUR}}px {{COLOR}};',
			],
		];

		return $controls;
	}

	/**
	 * Get default options.
	 *
	 * Retrieve the default options of the text shadow control. Used to return the
	 * default options while initializing the text shadow control.
	 *
	 * @since 1.9.0
	 * @access protected
	 *
	 * @return array Default text shadow control options.
	 */
	protected function get_default_options() {
		return [
			'popover' => [
				'starter_title' => _x( 'Text Shadow', 'Text Shadow Control', 'elementor' ),
				'starter_name' => 'text_shadow_type',
				'starter_value' => 'yes',
				'settings' => [
					'render_type' => 'ui',
				],
			],
		];
	}
}
includes/controls/groups/box-shadow.php000064400000004471151327220420014324 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor box shadow control.
 *
 * A base control for creating box shadow control. Displays input fields to define
 * the box shadow including the horizontal shadow, vertical shadow, shadow blur,
 * shadow spread, shadow color and the position.
 *
 * @since 1.2.2
 */
class Group_Control_Box_Shadow extends Group_Control_Base {

	/**
	 * Fields.
	 *
	 * Holds all the box shadow control fields.
	 *
	 * @since 1.2.2
	 * @access protected
	 * @static
	 *
	 * @var array Box shadow control fields.
	 */
	protected static $fields;

	/**
	 * Get box shadow control type.
	 *
	 * Retrieve the control type, in this case `box-shadow`.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @return string Control type.
	 */
	public static function get_type() {
		return 'box-shadow';
	}

	/**
	 * Init fields.
	 *
	 * Initialize box shadow control fields.
	 *
	 * @since 1.2.2
	 * @access protected
	 *
	 * @return array Control fields.
	 */
	protected function init_fields() {
		$controls = [];

		$controls['box_shadow'] = [
			'label' => _x( 'Box Shadow', 'Box Shadow Control', 'elementor' ),
			'type' => Controls_Manager::BOX_SHADOW,
			'selectors' => [
				'{{SELECTOR}}' => 'box-shadow: {{HORIZONTAL}}px {{VERTICAL}}px {{BLUR}}px {{SPREAD}}px {{COLOR}} {{box_shadow_position.VALUE}};',
			],
		];

		$controls['box_shadow_position'] = [
			'label' => _x( 'Position', 'Box Shadow Control', 'elementor' ),
			'type' => Controls_Manager::SELECT,
			'options' => [
				' ' => _x( 'Outline', 'Box Shadow Control', 'elementor' ),
				'inset' => _x( 'Inset', 'Box Shadow Control', 'elementor' ),
			],
			'default' => ' ',
			'render_type' => 'ui',
		];

		return $controls;
	}

	/**
	 * Get default options.
	 *
	 * Retrieve the default options of the box shadow control. Used to return the
	 * default options while initializing the box shadow control.
	 *
	 * @since 1.9.0
	 * @access protected
	 *
	 * @return array Default box shadow control options.
	 */
	protected function get_default_options() {
		return [
			'popover' => [
				'starter_title' => _x( 'Box Shadow', 'Box Shadow Control', 'elementor' ),
				'starter_name' => 'box_shadow_type',
				'starter_value' => 'yes',
				'settings' => [
					'render_type' => 'ui',
				],
			],
		];
	}
}
includes/controls/groups/typography.php000064400000017316151327220420014461 0ustar00<?php
namespace Elementor;

use Elementor\Core\Settings\Page\Manager as PageManager;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor typography control.
 *
 * A base control for creating typography control. Displays input fields to define
 * the content typography including font size, font family, font weight, text
 * transform, font style, line height and letter spacing.
 *
 * @since 1.0.0
 */
class Group_Control_Typography extends Group_Control_Base {

	/**
	 * Fields.
	 *
	 * Holds all the typography control fields.
	 *
	 * @since 1.0.0
	 * @access protected
	 * @static
	 *
	 * @var array Typography control fields.
	 */
	protected static $fields;

	/**
	 * Scheme fields keys.
	 *
	 * Holds all the typography control scheme fields keys.
	 * Default is an array containing `font_family` and `font_weight`.
	 *
	 * @since 1.0.0
	 * @access private
	 * @static
	 *
	 * @var array Typography control scheme fields keys.
	 */
	private static $_scheme_fields_keys = [ 'font_family', 'font_weight' ];

	/**
	 * Get scheme fields keys.
	 *
	 * Retrieve all the available typography control scheme fields keys.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @return array Scheme fields keys.
	 */
	public static function get_scheme_fields_keys() {
		return self::$_scheme_fields_keys;
	}

	/**
	 * Get typography control type.
	 *
	 * Retrieve the control type, in this case `typography`.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @return string Control type.
	 */
	public static function get_type() {
		return 'typography';
	}

	/**
	 * Init fields.
	 *
	 * Initialize typography control fields.
	 *
	 * @since 1.2.2
	 * @access protected
	 *
	 * @return array Control fields.
	 */
	protected function init_fields() {
		$fields = [];

		$kit = Plugin::$instance->kits_manager->get_active_kit_for_frontend();

		/**
		 * Retrieve the settings directly from DB, because of an open issue when a controls group is being initialized
		 * from within another group
		 */
		$kit_settings = $kit->get_meta( PageManager::META_KEY );

		$default_fonts = isset( $kit_settings['default_generic_fonts'] ) ? $kit_settings['default_generic_fonts'] : 'Sans-serif';

		if ( $default_fonts ) {
			$default_fonts = ', ' . $default_fonts;
		}

		$fields['font_family'] = [
			'label' => _x( 'Family', 'Typography Control', 'elementor' ),
			'type' => Controls_Manager::FONT,
			'default' => '',
			'selector_value' => 'font-family: "{{VALUE}}"' . $default_fonts . ';',
		];

		$fields['font_size'] = [
			'label' => _x( 'Size', 'Typography Control', 'elementor' ),
			'type' => Controls_Manager::SLIDER,
			'size_units' => [ 'px', 'em', 'rem', 'vw' ],
			'range' => [
				'px' => [
					'min' => 1,
					'max' => 200,
				],
				'vw' => [
					'min' => 0.1,
					'max' => 10,
					'step' => 0.1,
				],
			],
			'responsive' => true,
			'selector_value' => 'font-size: {{SIZE}}{{UNIT}}',
		];

		$typo_weight_options = [
			'' => esc_html__( 'Default', 'elementor' ),
		];

		foreach ( array_merge( [ 'normal', 'bold' ], range( 100, 900, 100 ) ) as $weight ) {
			$typo_weight_options[ $weight ] = ucfirst( $weight );
		}

		$fields['font_weight'] = [
			'label' => _x( 'Weight', 'Typography Control', 'elementor' ),
			'type' => Controls_Manager::SELECT,
			'default' => '',
			'options' => $typo_weight_options,
		];

		$fields['text_transform'] = [
			'label' => _x( 'Transform', 'Typography Control', 'elementor' ),
			'type' => Controls_Manager::SELECT,
			'default' => '',
			'options' => [
				'' => esc_html__( 'Default', 'elementor' ),
				'uppercase' => _x( 'Uppercase', 'Typography Control', 'elementor' ),
				'lowercase' => _x( 'Lowercase', 'Typography Control', 'elementor' ),
				'capitalize' => _x( 'Capitalize', 'Typography Control', 'elementor' ),
				'none' => _x( 'Normal', 'Typography Control', 'elementor' ),
			],
		];

		$fields['font_style'] = [
			'label' => _x( 'Style', 'Typography Control', 'elementor' ),
			'type' => Controls_Manager::SELECT,
			'default' => '',
			'options' => [
				'' => esc_html__( 'Default', 'elementor' ),
				'normal' => _x( 'Normal', 'Typography Control', 'elementor' ),
				'italic' => _x( 'Italic', 'Typography Control', 'elementor' ),
				'oblique' => _x( 'Oblique', 'Typography Control', 'elementor' ),
			],
		];

		$fields['text_decoration'] = [
			'label' => _x( 'Decoration', 'Typography Control', 'elementor' ),
			'type' => Controls_Manager::SELECT,
			'default' => '',
			'options' => [
				'' => esc_html__( 'Default', 'elementor' ),
				'underline' => _x( 'Underline', 'Typography Control', 'elementor' ),
				'overline' => _x( 'Overline', 'Typography Control', 'elementor' ),
				'line-through' => _x( 'Line Through', 'Typography Control', 'elementor' ),
				'none' => _x( 'None', 'Typography Control', 'elementor' ),
			],
		];

		$fields['line_height'] = [
			'label' => _x( 'Line-Height', 'Typography Control', 'elementor' ),
			'type' => Controls_Manager::SLIDER,
			'desktop_default' => [
				'unit' => 'em',
			],
			'tablet_default' => [
				'unit' => 'em',
			],
			'mobile_default' => [
				'unit' => 'em',
			],
			'range' => [
				'px' => [
					'min' => 1,
				],
			],
			'responsive' => true,
			'size_units' => [ 'px', 'em' ],
			'selector_value' => 'line-height: {{SIZE}}{{UNIT}}',
		];

		$fields['letter_spacing'] = [
			'label' => _x( 'Letter Spacing', 'Typography Control', 'elementor' ),
			'type' => Controls_Manager::SLIDER,
			'range' => [
				'px' => [
					'min' => -5,
					'max' => 10,
					'step' => 0.1,
				],
			],
			'responsive' => true,
			'selector_value' => 'letter-spacing: {{SIZE}}{{UNIT}}',
		];

		return $fields;
	}

	/**
	 * Prepare fields.
	 *
	 * Process typography control fields before adding them to `add_control()`.
	 *
	 * @since 1.2.3
	 * @access protected
	 *
	 * @param array $fields Typography control fields.
	 *
	 * @return array Processed fields.
	 */
	protected function prepare_fields( $fields ) {
		array_walk(
			$fields, function( &$field, $field_name ) {

				if ( in_array( $field_name, [ 'typography', 'popover_toggle' ] ) ) {
					return;
				}

				$selector_value = ! empty( $field['selector_value'] ) ? $field['selector_value'] : str_replace( '_', '-', $field_name ) . ': {{VALUE}};';

				$field['selectors'] = [
					'{{SELECTOR}}' => $selector_value,
				];
			}
		);

		return parent::prepare_fields( $fields );
	}

	/**
	 * Add group arguments to field.
	 *
	 * Register field arguments to typography control.
	 *
	 * @since 1.2.2
	 * @access protected
	 *
	 * @param string $control_id Typography control id.
	 * @param array  $field_args Typography control field arguments.
	 *
	 * @return array Field arguments.
	 */
	protected function add_group_args_to_field( $control_id, $field_args ) {
		$field_args = parent::add_group_args_to_field( $control_id, $field_args );

		$field_args['groupPrefix'] = $this->get_controls_prefix();
		$field_args['groupType'] = 'typography';

		$args = $this->get_args();

		if ( in_array( $control_id, self::get_scheme_fields_keys() ) && ! empty( $args['scheme'] ) ) {
			$field_args['scheme'] = [
				'type' => self::get_type(),
				'value' => $args['scheme'],
				'key' => $control_id,
			];
		}

		return $field_args;
	}

	/**
	 * Get default options.
	 *
	 * Retrieve the default options of the typography control. Used to return the
	 * default options while initializing the typography control.
	 *
	 * @since 1.9.0
	 * @access protected
	 *
	 * @return array Default typography control options.
	 */
	protected function get_default_options() {
		return [
			'popover' => [
				'starter_name' => 'typography',
				'starter_title' => _x( 'Typography', 'Typography Control', 'elementor' ),
				'settings' => [
					'render_type' => 'ui',
					'groupType' => 'typography',
					'global' => [
						'active' => true,
					],
				],
			],
		];
	}
}
includes/controls/groups/background.php000064400000057073151327220420014376 0ustar00<?php
namespace Elementor;

use Elementor\Core\Breakpoints\Manager as Breakpoints_Manager;
use Elementor\Modules\DynamicTags\Module as TagsModule;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor background control.
 *
 * A base control for creating background control. Displays input fields to define
 * the background color, background image, background gradient or background video.
 *
 * @since 1.2.2
 */
class Group_Control_Background extends Group_Control_Base {

	/**
	 * Fields.
	 *
	 * Holds all the background control fields.
	 *
	 * @since 1.2.2
	 * @access protected
	 * @static
	 *
	 * @var array Background control fields.
	 */
	protected static $fields;

	/**
	 * Background Types.
	 *
	 * Holds all the available background types.
	 *
	 * @since 1.2.2
	 * @access private
	 * @static
	 *
	 * @var array
	 */
	private static $background_types;

	/**
	 * Get background control type.
	 *
	 * Retrieve the control type, in this case `background`.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @return string Control type.
	 */
	public static function get_type() {
		return 'background';
	}

	/**
	 * Get background control types.
	 *
	 * Retrieve available background types.
	 *
	 * @since 1.2.2
	 * @access public
	 * @static
	 *
	 * @return array Available background types.
	 */
	public static function get_background_types() {
		if ( null === self::$background_types ) {
			self::$background_types = self::get_default_background_types();
		}

		return self::$background_types;
	}

	/**
	 * Get Default background types.
	 *
	 * Retrieve background control initial types.
	 *
	 * @since 2.0.0
	 * @access private
	 * @static
	 *
	 * @return array Default background types.
	 */
	private static function get_default_background_types() {
		return [
			'classic' => [
				'title' => _x( 'Classic', 'Background Control', 'elementor' ),
				'icon' => 'eicon-paint-brush',
			],
			'gradient' => [
				'title' => _x( 'Gradient', 'Background Control', 'elementor' ),
				'icon' => 'eicon-barcode',
			],
			'video' => [
				'title' => _x( 'Video', 'Background Control', 'elementor' ),
				'icon' => 'eicon-video-camera',
			],
			'slideshow' => [
				'title' => _x( 'Slideshow', 'Background Control', 'elementor' ),
				'icon' => 'eicon-slideshow',
			],
		];
	}

	/**
	 * Init fields.
	 *
	 * Initialize background control fields.
	 *
	 * @since 1.2.2
	 * @access public
	 *
	 * @return array Control fields.
	 */
	public function init_fields() {
		$fields = [];

		$fields['background'] = [
			'label' => _x( 'Background Type', 'Background Control', 'elementor' ),
			'type' => Controls_Manager::CHOOSE,
			'render_type' => 'ui',
		];

		$fields['color'] = [
			'label' => _x( 'Color', 'Background Control', 'elementor' ),
			'type' => Controls_Manager::COLOR,
			'default' => '',
			'title' => _x( 'Background Color', 'Background Control', 'elementor' ),
			'selectors' => [
				'{{SELECTOR}}' => 'background-color: {{VALUE}};',
			],
			'condition' => [
				'background' => [ 'classic', 'gradient' ],
			],
		];

		$fields['color_stop'] = [
			'label' => _x( 'Location', 'Background Control', 'elementor' ),
			'type' => Controls_Manager::SLIDER,
			'size_units' => [ '%' ],
			'default' => [
				'unit' => '%',
				'size' => 0,
			],
			'render_type' => 'ui',
			'condition' => [
				'background' => [ 'gradient' ],
			],
			'of_type' => 'gradient',
		];

		$fields['color_b'] = [
			'label' => _x( 'Second Color', 'Background Control', 'elementor' ),
			'type' => Controls_Manager::COLOR,
			'default' => '#f2295b',
			'render_type' => 'ui',
			'condition' => [
				'background' => [ 'gradient' ],
			],
			'of_type' => 'gradient',
		];

		$fields['color_b_stop'] = [
			'label' => _x( 'Location', 'Background Control', 'elementor' ),
			'type' => Controls_Manager::SLIDER,
			'size_units' => [ '%' ],
			'default' => [
				'unit' => '%',
				'size' => 100,
			],
			'render_type' => 'ui',
			'condition' => [
				'background' => [ 'gradient' ],
			],
			'of_type' => 'gradient',
		];

		$fields['gradient_type'] = [
			'label' => _x( 'Type', 'Background Control', 'elementor' ),
			'type' => Controls_Manager::SELECT,
			'options' => [
				'linear' => _x( 'Linear', 'Background Control', 'elementor' ),
				'radial' => _x( 'Radial', 'Background Control', 'elementor' ),
			],
			'default' => 'linear',
			'render_type' => 'ui',
			'condition' => [
				'background' => [ 'gradient' ],
			],
			'of_type' => 'gradient',
		];

		$fields['gradient_angle'] = [
			'label' => _x( 'Angle', 'Background Control', 'elementor' ),
			'type' => Controls_Manager::SLIDER,
			'size_units' => [ 'deg' ],
			'default' => [
				'unit' => 'deg',
				'size' => 180,
			],
			'range' => [
				'deg' => [
					'step' => 10,
				],
			],
			'selectors' => [
				'{{SELECTOR}}' => 'background-color: transparent; background-image: linear-gradient({{SIZE}}{{UNIT}}, {{color.VALUE}} {{color_stop.SIZE}}{{color_stop.UNIT}}, {{color_b.VALUE}} {{color_b_stop.SIZE}}{{color_b_stop.UNIT}})',
			],
			'condition' => [
				'background' => [ 'gradient' ],
				'gradient_type' => 'linear',
			],
			'of_type' => 'gradient',
		];

		$fields['gradient_position'] = [
			'label' => _x( 'Position', 'Background Control', 'elementor' ),
			'type' => Controls_Manager::SELECT,
			'options' => [
				'center center' => _x( 'Center Center', 'Background Control', 'elementor' ),
				'center left' => _x( 'Center Left', 'Background Control', 'elementor' ),
				'center right' => _x( 'Center Right', 'Background Control', 'elementor' ),
				'top center' => _x( 'Top Center', 'Background Control', 'elementor' ),
				'top left' => _x( 'Top Left', 'Background Control', 'elementor' ),
				'top right' => _x( 'Top Right', 'Background Control', 'elementor' ),
				'bottom center' => _x( 'Bottom Center', 'Background Control', 'elementor' ),
				'bottom left' => _x( 'Bottom Left', 'Background Control', 'elementor' ),
				'bottom right' => _x( 'Bottom Right', 'Background Control', 'elementor' ),
			],
			'default' => 'center center',
			'selectors' => [
				'{{SELECTOR}}' => 'background-color: transparent; background-image: radial-gradient(at {{VALUE}}, {{color.VALUE}} {{color_stop.SIZE}}{{color_stop.UNIT}}, {{color_b.VALUE}} {{color_b_stop.SIZE}}{{color_b_stop.UNIT}})',
			],
			'condition' => [
				'background' => [ 'gradient' ],
				'gradient_type' => 'radial',
			],
			'of_type' => 'gradient',
		];

		$fields['image'] = [
			'label' => _x( 'Image', 'Background Control', 'elementor' ),
			'type' => Controls_Manager::MEDIA,
			'dynamic' => [
				'active' => true,
			],
			'responsive' => true,
			'title' => _x( 'Background Image', 'Background Control', 'elementor' ),
			'selectors' => [
				'{{SELECTOR}}' => 'background-image: url("{{URL}}");',
			],
			'render_type' => 'template',
			'condition' => [
				'background' => [ 'classic' ],
			],
		];

		$fields['position'] = [
			'label' => _x( 'Position', 'Background Control', 'elementor' ),
			'type' => Controls_Manager::SELECT,
			'default' => '',
			'responsive' => true,
			'options' => [
				'' => _x( 'Default', 'Background Control', 'elementor' ),
				'center center' => _x( 'Center Center', 'Background Control', 'elementor' ),
				'center left' => _x( 'Center Left', 'Background Control', 'elementor' ),
				'center right' => _x( 'Center Right', 'Background Control', 'elementor' ),
				'top center' => _x( 'Top Center', 'Background Control', 'elementor' ),
				'top left' => _x( 'Top Left', 'Background Control', 'elementor' ),
				'top right' => _x( 'Top Right', 'Background Control', 'elementor' ),
				'bottom center' => _x( 'Bottom Center', 'Background Control', 'elementor' ),
				'bottom left' => _x( 'Bottom Left', 'Background Control', 'elementor' ),
				'bottom right' => _x( 'Bottom Right', 'Background Control', 'elementor' ),
				'initial' => _x( 'Custom', 'Background Control', 'elementor' ),

			],
			'selectors' => [
				'{{SELECTOR}}' => 'background-position: {{VALUE}};',
			],
			'condition' => [
				'background' => [ 'classic' ],
				'image[url]!' => '',
			],
		];

		$fields['xpos'] = [
			'label' => _x( 'X Position', 'Background Control', 'elementor' ),
			'type' => Controls_Manager::SLIDER,
			'responsive' => true,
			'size_units' => [ 'px', 'em', '%', 'vw' ],
			'default' => [
				'unit' => 'px',
				'size' => 0,
			],
			'tablet_default' => [
				'unit' => 'px',
				'size' => 0,
			],
			'mobile_default' => [
				'unit' => 'px',
				'size' => 0,
			],
			'range' => [
				'px' => [
					'min' => -800,
					'max' => 800,
				],
				'em' => [
					'min' => -100,
					'max' => 100,
				],
				'%' => [
					'min' => -100,
					'max' => 100,
				],
				'vw' => [
					'min' => -100,
					'max' => 100,
				],
			],
			'selectors' => [
				'{{SELECTOR}}' => 'background-position: {{SIZE}}{{UNIT}} {{ypos.SIZE}}{{ypos.UNIT}}',
			],
			'condition' => [
				'background' => [ 'classic' ],
				'position' => [ 'initial' ],
				'image[url]!' => '',
			],
			'required' => true,
			'device_args' => [
				Breakpoints_Manager::BREAKPOINT_KEY_TABLET => [
					'selectors' => [
						'{{SELECTOR}}' => 'background-position: {{SIZE}}{{UNIT}} {{ypos_tablet.SIZE}}{{ypos_tablet.UNIT}}',
					],
					'condition' => [
						'background' => [ 'classic' ],
						'position_tablet' => [ 'initial' ],
					],
				],
				Breakpoints_Manager::BREAKPOINT_KEY_MOBILE => [
					'selectors' => [
						'{{SELECTOR}}' => 'background-position: {{SIZE}}{{UNIT}} {{ypos_mobile.SIZE}}{{ypos_mobile.UNIT}}',
					],
					'condition' => [
						'background' => [ 'classic' ],
						'position_mobile' => [ 'initial' ],
					],
				],
			],
		];

		$fields['ypos'] = [
			'label' => _x( 'Y Position', 'Background Control', 'elementor' ),
			'type' => Controls_Manager::SLIDER,
			'responsive' => true,
			'size_units' => [ 'px', 'em', '%', 'vh' ],
			'default' => [
				'unit' => 'px',
				'size' => 0,
			],
			'tablet_default' => [
				'unit' => 'px',
				'size' => 0,
			],
			'mobile_default' => [
				'unit' => 'px',
				'size' => 0,
			],
			'range' => [
				'px' => [
					'min' => -800,
					'max' => 800,
				],
				'em' => [
					'min' => -100,
					'max' => 100,
				],
				'%' => [
					'min' => -100,
					'max' => 100,
				],
				'vh' => [
					'min' => -100,
					'max' => 100,
				],
			],
			'selectors' => [
				'{{SELECTOR}}' => 'background-position: {{xpos.SIZE}}{{xpos.UNIT}} {{SIZE}}{{UNIT}}',
			],
			'condition' => [
				'background' => [ 'classic' ],
				'position' => [ 'initial' ],
				'image[url]!' => '',
			],
			'required' => true,
			'device_args' => [
				Breakpoints_Manager::BREAKPOINT_KEY_TABLET => [
					'selectors' => [
						'{{SELECTOR}}' => 'background-position: {{xpos_tablet.SIZE}}{{xpos_tablet.UNIT}} {{SIZE}}{{UNIT}}',
					],
					'condition' => [
						'background' => [ 'classic' ],
						'position_tablet' => [ 'initial' ],
					],
				],
				Breakpoints_Manager::BREAKPOINT_KEY_MOBILE => [
					'selectors' => [
						'{{SELECTOR}}' => 'background-position: {{xpos_mobile.SIZE}}{{xpos_mobile.UNIT}} {{SIZE}}{{UNIT}}',
					],
					'condition' => [
						'background' => [ 'classic' ],
						'position_mobile' => [ 'initial' ],
					],
				],
			],
		];

		$fields['attachment'] = [
			'label' => _x( 'Attachment', 'Background Control', 'elementor' ),
			'type' => Controls_Manager::SELECT,
			'default' => '',
			'options' => [
				'' => _x( 'Default', 'Background Control', 'elementor' ),
				'scroll' => _x( 'Scroll', 'Background Control', 'elementor' ),
				'fixed' => _x( 'Fixed', 'Background Control', 'elementor' ),
			],
			'selectors' => [
				'(desktop+){{SELECTOR}}' => 'background-attachment: {{VALUE}};',
			],
			'condition' => [
				'background' => [ 'classic' ],
				'image[url]!' => '',
			],
		];

		$fields['attachment_alert'] = [
			'type' => Controls_Manager::RAW_HTML,
			'content_classes' => 'elementor-control-field-description',
			'raw' => esc_html__( 'Note: Attachment Fixed works only on desktop.', 'elementor' ),
			'separator' => 'none',
			'condition' => [
				'background' => [ 'classic' ],
				'image[url]!' => '',
				'attachment' => 'fixed',
			],
		];

		$fields['repeat'] = [
			'label' => _x( 'Repeat', 'Background Control', 'elementor' ),
			'type' => Controls_Manager::SELECT,
			'default' => '',
			'responsive' => true,
			'options' => [
				'' => _x( 'Default', 'Background Control', 'elementor' ),
				'no-repeat' => _x( 'No-repeat', 'Background Control', 'elementor' ),
				'repeat' => _x( 'Repeat', 'Background Control', 'elementor' ),
				'repeat-x' => _x( 'Repeat-x', 'Background Control', 'elementor' ),
				'repeat-y' => _x( 'Repeat-y', 'Background Control', 'elementor' ),
			],
			'selectors' => [
				'{{SELECTOR}}' => 'background-repeat: {{VALUE}};',
			],
			'condition' => [
				'background' => [ 'classic' ],
				'image[url]!' => '',
			],
		];

		$fields['size'] = [
			'label' => _x( 'Size', 'Background Control', 'elementor' ),
			'type' => Controls_Manager::SELECT,
			'responsive' => true,
			'default' => '',
			'options' => [
				'' => _x( 'Default', 'Background Control', 'elementor' ),
				'auto' => _x( 'Auto', 'Background Control', 'elementor' ),
				'cover' => _x( 'Cover', 'Background Control', 'elementor' ),
				'contain' => _x( 'Contain', 'Background Control', 'elementor' ),
				'initial' => _x( 'Custom', 'Background Control', 'elementor' ),
			],
			'selectors' => [
				'{{SELECTOR}}' => 'background-size: {{VALUE}};',
			],
			'condition' => [
				'background' => [ 'classic' ],
				'image[url]!' => '',
			],
		];

		$fields['bg_width'] = [
			'label' => _x( 'Width', 'Background Control', 'elementor' ),
			'type' => Controls_Manager::SLIDER,
			'responsive' => true,
			'size_units' => [ 'px', 'em', '%', 'vw' ],
			'range' => [
				'px' => [
					'min' => 0,
					'max' => 1000,
				],
				'%' => [
					'min' => 0,
					'max' => 100,
				],
				'vw' => [
					'min' => 0,
					'max' => 100,
				],
			],
			'default' => [
				'size' => 100,
				'unit' => '%',
			],
			'required' => true,
			'selectors' => [
				'{{SELECTOR}}' => 'background-size: {{SIZE}}{{UNIT}} auto',

			],
			'condition' => [
				'background' => [ 'classic' ],
				'size' => [ 'initial' ],
				'image[url]!' => '',
			],
			'device_args' => [
				Breakpoints_Manager::BREAKPOINT_KEY_TABLET => [
					'selectors' => [
						'{{SELECTOR}}' => 'background-size: {{SIZE}}{{UNIT}} auto',
					],
					'condition' => [
						'background' => [ 'classic' ],
						'size_tablet' => [ 'initial' ],
					],
				],
				Breakpoints_Manager::BREAKPOINT_KEY_MOBILE => [
					'selectors' => [
						'{{SELECTOR}}' => 'background-size: {{SIZE}}{{UNIT}} auto',
					],
					'condition' => [
						'background' => [ 'classic' ],
						'size_mobile' => [ 'initial' ],
					],
				],
			],
		];

		$fields['video_link'] = [
			'label' => _x( 'Video Link', 'Background Control', 'elementor' ),
			'type' => Controls_Manager::TEXT,
			'placeholder' => 'https://www.youtube.com/watch?v=XHOmBV4js_E',
			'description' => esc_html__( 'YouTube/Vimeo link, or link to video file (mp4 is recommended).', 'elementor' ),
			'label_block' => true,
			'default' => '',
			'dynamic' => [
				'active' => true,
				'categories' => [
					TagsModule::POST_META_CATEGORY,
					TagsModule::URL_CATEGORY,
				],
			],
			'condition' => [
				'background' => [ 'video' ],
			],
			'of_type' => 'video',
			'frontend_available' => true,
		];

		$fields['video_start'] = [
			'label' => esc_html__( 'Start Time', 'elementor' ),
			'type' => Controls_Manager::NUMBER,
			'description' => esc_html__( 'Specify a start time (in seconds)', 'elementor' ),
			'placeholder' => 10,
			'condition' => [
				'background' => [ 'video' ],
			],
			'of_type' => 'video',
			'frontend_available' => true,
		];

		$fields['video_end'] = [
			'label' => esc_html__( 'End Time', 'elementor' ),
			'type' => Controls_Manager::NUMBER,
			'description' => esc_html__( 'Specify an end time (in seconds)', 'elementor' ),
			'placeholder' => 70,
			'condition' => [
				'background' => [ 'video' ],
			],
			'of_type' => 'video',
			'frontend_available' => true,
		];

		$fields['play_once'] = [
			'label' => esc_html__( 'Play Once', 'elementor' ),
			'type' => Controls_Manager::SWITCHER,
			'condition' => [
				'background' => [ 'video' ],
			],
			'of_type' => 'video',
			'frontend_available' => true,
		];

		$fields['play_on_mobile'] = [
			'label' => esc_html__( 'Play On Mobile', 'elementor' ),
			'type' => Controls_Manager::SWITCHER,
			'condition' => [
				'background' => [ 'video' ],
			],
			'of_type' => 'video',
			'frontend_available' => true,
		];

		// This control was added to handle a bug with the Youtube Embed API. The bug: If there is a video with Privacy
		// Mode on, and at the same time the page contains another video WITHOUT privacy mode on, one of the videos
		// will not run properly. This added control allows users to align all their videos to one host (either
		// youtube.com or youtube-nocookie.com, depending on whether the user wants privacy mode on or not).
		$fields['privacy_mode'] = [
			'label' => esc_html__( 'Privacy mode', 'elementor' ),
			'type' => Controls_Manager::SWITCHER,
			'description' => esc_html__( 'Only works for YouTube videos.', 'elementor' ),
			'condition' => [
				'background' => [ 'video' ],
			],
			'of_type' => 'video',
			'frontend_available' => true,
		];

		$fields['video_fallback'] = [
			'label' => _x( 'Background Fallback', 'Background Control', 'elementor' ),
			'description' => esc_html__( 'This cover image will replace the background video in case that the video could not be loaded.', 'elementor' ),
			'type' => Controls_Manager::MEDIA,
			'dynamic' => [
				'active' => true,
			],
			'condition' => [
				'background' => [ 'video' ],
			],
			'selectors' => [
				'{{SELECTOR}}' => 'background: url("{{URL}}") 50% 50%; background-size: cover;',
			],
			'of_type' => 'video',
		];

		$fields['slideshow_gallery'] = [
			'label' => _x( 'Images', 'Background Control', 'elementor' ),
			'type' => Controls_Manager::GALLERY,
			'condition' => [
				'background' => [ 'slideshow' ],
			],
			'show_label' => false,
			'of_type' => 'slideshow',
			'frontend_available' => true,
		];

		$fields['slideshow_loop'] = [
			'label' => esc_html__( 'Infinite Loop', 'elementor' ),
			'type' => Controls_Manager::SWITCHER,
			'default' => 'yes',
			'condition' => [
				'background' => [ 'slideshow' ],
			],
			'of_type' => 'slideshow',
			'frontend_available' => true,
		];

		$fields['slideshow_slide_duration'] = [
			'label' => esc_html__( 'Duration', 'elementor' ) . ' (ms)',
			'type' => Controls_Manager::NUMBER,
			'default' => 5000,
			'condition' => [
				'background' => [ 'slideshow' ],
			],
			'frontend_available' => true,
		];

		$fields['slideshow_slide_transition'] = [
			'label' => esc_html__( 'Transition', 'elementor' ),
			'type' => Controls_Manager::SELECT,
			'default' => 'fade',
			'options' => [
				'fade' => 'Fade',
				'slide_right' => 'Slide Right',
				'slide_left' => 'Slide Left',
				'slide_up' => 'Slide Up',
				'slide_down' => 'Slide Down',
			],
			'condition' => [
				'background' => [ 'slideshow' ],
			],
			'of_type' => 'slideshow',
			'frontend_available' => true,
		];

		$fields['slideshow_transition_duration'] = [
			'label' => esc_html__( 'Transition Duration', 'elementor' ) . ' (ms)',
			'type' => Controls_Manager::NUMBER,
			'default' => 500,
			'condition' => [
				'background' => [ 'slideshow' ],
			],
			'frontend_available' => true,
		];

		$fields['slideshow_background_size'] = [
			'label' => esc_html__( 'Background Size', 'elementor' ),
			'type' => Controls_Manager::SELECT,
			'responsive' => true,
			'default' => '',
			'options' => [
				'' => esc_html__( 'Default', 'elementor' ),
				'auto' => esc_html__( 'Auto', 'elementor' ),
				'cover' => esc_html__( 'Cover', 'elementor' ),
				'contain' => esc_html__( 'Contain', 'elementor' ),
			],
			'selectors' => [
				'{{WRAPPER}} .elementor-background-slideshow__slide__image' => 'background-size: {{VALUE}};',
			],
			'condition' => [
				'background' => [ 'slideshow' ],
			],
		];

		$fields['slideshow_background_position'] = [
			'label' => esc_html__( 'Background Position', 'elementor' ),
			'type' => Controls_Manager::SELECT,
			'default' => '',
			'responsive' => true,
			'options' => [
				'' => esc_html__( 'Default', 'elementor' ),
				'center center' => _x( 'Center Center', 'Background Control', 'elementor' ),
				'center left' => _x( 'Center Left', 'Background Control', 'elementor' ),
				'center right' => _x( 'Center Right', 'Background Control', 'elementor' ),
				'top center' => _x( 'Top Center', 'Background Control', 'elementor' ),
				'top left' => _x( 'Top Left', 'Background Control', 'elementor' ),
				'top right' => _x( 'Top Right', 'Background Control', 'elementor' ),
				'bottom center' => _x( 'Bottom Center', 'Background Control', 'elementor' ),
				'bottom left' => _x( 'Bottom Left', 'Background Control', 'elementor' ),
				'bottom right' => _x( 'Bottom Right', 'Background Control', 'elementor' ),
			],
			'selectors' => [
				'{{WRAPPER}} .elementor-background-slideshow__slide__image' => 'background-position: {{VALUE}};',
			],
			'condition' => [
				'background' => [ 'slideshow' ],
			],
		];

		$fields['slideshow_ken_burns'] = [
			'label' => esc_html__( 'Ken Burns Effect', 'elementor' ),
			'type' => Controls_Manager::SWITCHER,
			'separator' => 'before',
			'condition' => [
				'background' => [ 'slideshow' ],
			],
			'of_type' => 'slideshow',
			'frontend_available' => true,
		];

		$fields['slideshow_ken_burns_zoom_direction'] = [
			'label' => esc_html__( 'Direction', 'elementor' ),
			'type' => Controls_Manager::SELECT,
			'default' => 'in',
			'options' => [
				'in' => esc_html__( 'In', 'elementor' ),
				'out' => esc_html__( 'Out', 'elementor' ),
			],
			'condition' => [
				'background' => [ 'slideshow' ],
				'slideshow_ken_burns!' => '',
			],
			'of_type' => 'slideshow',
			'frontend_available' => true,
		];

		return $fields;
	}

	/**
	 * Get child default args.
	 *
	 * Retrieve the default arguments for all the child controls for a specific group
	 * control.
	 *
	 * @since 1.2.2
	 * @access protected
	 *
	 * @return array Default arguments for all the child controls.
	 */
	protected function get_child_default_args() {
		return [
			'types' => [ 'classic', 'gradient' ],
			'selector' => '{{WRAPPER}}:not(.elementor-motion-effects-element-type-background), {{WRAPPER}} > .elementor-motion-effects-container > .elementor-motion-effects-layer',
		];
	}

	/**
	 * Filter fields.
	 *
	 * Filter which controls to display, using `include`, `exclude`, `condition`
	 * and `of_type` arguments.
	 *
	 * @since 1.2.2
	 * @access protected
	 *
	 * @return array Control fields.
	 */
	protected function filter_fields() {
		$fields = parent::filter_fields();

		$args = $this->get_args();

		foreach ( $fields as &$field ) {
			if ( isset( $field['of_type'] ) && ! in_array( $field['of_type'], $args['types'] ) ) {
				unset( $field );
			}
		}

		return $fields;
	}

	/**
	 * Prepare fields.
	 *
	 * Process background control fields before adding them to `add_control()`.
	 *
	 * @since 1.2.2
	 * @access protected
	 *
	 * @param array $fields Background control fields.
	 *
	 * @return array Processed fields.
	 */
	protected function prepare_fields( $fields ) {
		$args = $this->get_args();

		$background_types = self::get_background_types();

		$choose_types = [];

		foreach ( $args['types'] as $type ) {
			if ( isset( $background_types[ $type ] ) ) {
				$choose_types[ $type ] = $background_types[ $type ];
			}
		}

		$fields['background']['options'] = $choose_types;

		return parent::prepare_fields( $fields );
	}

	/**
	 * Get default options.
	 *
	 * Retrieve the default options of the background control. Used to return the
	 * default options while initializing the background control.
	 *
	 * @since 1.9.0
	 * @access protected
	 *
	 * @return array Default background control options.
	 */
	protected function get_default_options() {
		return [
			'popover' => false,
		];
	}
}
includes/controls/groups/image-size.php000064400000025764151327220420014313 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor image size control.
 *
 * A base control for creating image size control. Displays input fields to define
 * one of the default image sizes (thumbnail, medium, medium_large, large) or custom
 * image dimensions.
 *
 * @since 1.0.0
 */
class Group_Control_Image_Size extends Group_Control_Base {

	/**
	 * Fields.
	 *
	 * Holds all the image size control fields.
	 *
	 * @since 1.2.2
	 * @access protected
	 * @static
	 *
	 * @var array Image size control fields.
	 */
	protected static $fields;

	/**
	 * Get image size control type.
	 *
	 * Retrieve the control type, in this case `image-size`.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @return string Control type.
	 */
	public static function get_type() {
		return 'image-size';
	}

	/**
	 * Get attachment image HTML.
	 *
	 * Retrieve the attachment image HTML code.
	 *
	 * Note that some widgets use the same key for the media control that allows
	 * the image selection and for the image size control that allows the user
	 * to select the image size, in this case the third parameter should be null
	 * or the same as the second parameter. But when the widget uses different
	 * keys for the media control and the image size control, when calling this
	 * method you should pass the keys.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @param array  $settings       Control settings.
	 * @param string $image_size_key Optional. Settings key for image size.
	 *                               Default is `image`.
	 * @param string $image_key      Optional. Settings key for image. Default
	 *                               is null. If not defined uses image size key
	 *                               as the image key.
	 *
	 * @return string Image HTML.
	 */
	public static function get_attachment_image_html( $settings, $image_size_key = 'image', $image_key = null ) {
		if ( ! $image_key ) {
			$image_key = $image_size_key;
		}

		$image = $settings[ $image_key ];

		// Old version of image settings.
		if ( ! isset( $settings[ $image_size_key . '_size' ] ) ) {
			$settings[ $image_size_key . '_size' ] = '';
		}

		$size = $settings[ $image_size_key . '_size' ];

		$image_class = ! empty( $settings['hover_animation'] ) ? 'elementor-animation-' . $settings['hover_animation'] : '';

		$html = '';

		// If is the new version - with image size.
		$image_sizes = get_intermediate_image_sizes();

		$image_sizes[] = 'full';

		if ( ! empty( $image['id'] ) && ! wp_attachment_is_image( $image['id'] ) ) {
			$image['id'] = '';
		}

		$is_static_render_mode = Plugin::$instance->frontend->is_static_render_mode();

		// On static mode don't use WP responsive images.
		if ( ! empty( $image['id'] ) && in_array( $size, $image_sizes ) && ! $is_static_render_mode ) {
			$image_class .= " attachment-$size size-$size";
			$image_attr = [
				'class' => trim( $image_class ),
			];

			$html .= wp_get_attachment_image( $image['id'], $size, false, $image_attr );
		} else {
			$image_src = self::get_attachment_image_src( $image['id'], $image_size_key, $settings );

			if ( ! $image_src && isset( $image['url'] ) ) {
				$image_src = $image['url'];
			}

			if ( ! empty( $image_src ) ) {
				$image_class_html = ! empty( $image_class ) ? ' class="' . $image_class . '"' : '';

				$html .= sprintf( '<img src="%s" title="%s" alt="%s"%s />', esc_attr( $image_src ), Control_Media::get_image_title( $image ), Control_Media::get_image_alt( $image ), $image_class_html );
			}
		}

		/**
		 * Get Attachment Image HTML
		 *
		 * Filters the Attachment Image HTML
		 *
		 * @since 2.4.0
		 * @param string $html the attachment image HTML string
		 * @param array  $settings       Control settings.
		 * @param string $image_size_key Optional. Settings key for image size.
		 *                               Default is `image`.
		 * @param string $image_key      Optional. Settings key for image. Default
		 *                               is null. If not defined uses image size key
		 *                               as the image key.
		 */
		return apply_filters( 'elementor/image_size/get_attachment_image_html', $html, $settings, $image_size_key, $image_key );
	}

	/**
	 * Safe print attachment image HTML.
	 *
	 * @uses get_attachment_image_html.
	 *
	 * @access public
	 * @static
	 *
	 * @param array  $settings       Control settings.
	 * @param string $image_size_key Optional. Settings key for image size.
	 *                               Default is `image`.
	 * @param string $image_key      Optional. Settings key for image. Default
	 *                               is null. If not defined uses image size key
	 *                               as the image key.
	 */
	public static function print_attachment_image_html( array $settings, $image_size_key = 'image', $image_key = null ) {
		Utils::print_wp_kses_extended( self::get_attachment_image_html( $settings, $image_size_key, $image_key ), [ 'image' ] );
	}

	/**
	 * Get all image sizes.
	 *
	 * Retrieve available image sizes with data like `width`, `height` and `crop`.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @return array An array of available image sizes.
	 */
	public static function get_all_image_sizes() {
		global $_wp_additional_image_sizes;

		$default_image_sizes = [ 'thumbnail', 'medium', 'medium_large', 'large' ];

		$image_sizes = [];

		foreach ( $default_image_sizes as $size ) {
			$image_sizes[ $size ] = [
				'width' => (int) get_option( $size . '_size_w' ),
				'height' => (int) get_option( $size . '_size_h' ),
				'crop' => (bool) get_option( $size . '_crop' ),
			];
		}

		if ( $_wp_additional_image_sizes ) {
			$image_sizes = array_merge( $image_sizes, $_wp_additional_image_sizes );
		}

		/** This filter is documented in wp-admin/includes/media.php */
		return apply_filters( 'image_size_names_choose', $image_sizes );
	}

	/**
	 * Get attachment image src.
	 *
	 * Retrieve the attachment image source URL.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @param string $attachment_id  The attachment ID.
	 * @param string $image_size_key Settings key for image size.
	 * @param array  $settings       Control settings.
	 *
	 * @return string Attachment image source URL.
	 */
	public static function get_attachment_image_src( $attachment_id, $image_size_key, array $settings ) {
		if ( empty( $attachment_id ) ) {
			return false;
		}

		$size = $settings[ $image_size_key . '_size' ];

		if ( 'custom' !== $size ) {
			$attachment_size = $size;
		} else {
			// Use BFI_Thumb script
			// TODO: Please rewrite this code.
			require_once ELEMENTOR_PATH . 'includes/libraries/bfi-thumb/bfi-thumb.php';

			$custom_dimension = $settings[ $image_size_key . '_custom_dimension' ];

			$attachment_size = [
				// Defaults sizes
				0 => null, // Width.
				1 => null, // Height.

				'bfi_thumb' => true,
				'crop' => true,
			];

			$has_custom_size = false;
			if ( ! empty( $custom_dimension['width'] ) ) {
				$has_custom_size = true;
				$attachment_size[0] = $custom_dimension['width'];
			}

			if ( ! empty( $custom_dimension['height'] ) ) {
				$has_custom_size = true;
				$attachment_size[1] = $custom_dimension['height'];
			}

			if ( ! $has_custom_size ) {
				$attachment_size = 'full';
			}
		}

		$image_src = wp_get_attachment_image_src( $attachment_id, $attachment_size );

		if ( empty( $image_src[0] ) && 'thumbnail' !== $attachment_size ) {
			$image_src = wp_get_attachment_image_src( $attachment_id );
		}

		return ! empty( $image_src[0] ) ? $image_src[0] : '';
	}

	/**
	 * Get child default arguments.
	 *
	 * Retrieve the default arguments for all the child controls for a specific group
	 * control.
	 *
	 * @since 1.2.2
	 * @access protected
	 *
	 * @return array Default arguments for all the child controls.
	 */
	protected function get_child_default_args() {
		return [
			'include' => [],
			'exclude' => [],
		];
	}

	/**
	 * Init fields.
	 *
	 * Initialize image size control fields.
	 *
	 * @since 1.2.2
	 * @access protected
	 *
	 * @return array Control fields.
	 */
	protected function init_fields() {
		$fields = [];

		$fields['size'] = [
			'label' => _x( 'Image Size', 'Image Size Control', 'elementor' ),
			'type' => Controls_Manager::SELECT,
		];

		$fields['custom_dimension'] = [
			'label' => _x( 'Image Dimension', 'Image Size Control', 'elementor' ),
			'type' => Controls_Manager::IMAGE_DIMENSIONS,
			'description' => esc_html__( 'You can crop the original image size to any custom size. You can also set a single value for height or width in order to keep the original size ratio.', 'elementor' ),
			'condition' => [
				'size' => 'custom',
			],
			'separator' => 'none',
		];

		return $fields;
	}

	/**
	 * Prepare fields.
	 *
	 * Process image size control fields before adding them to `add_control()`.
	 *
	 * @since 1.2.2
	 * @access protected
	 *
	 * @param array $fields Image size control fields.
	 *
	 * @return array Processed fields.
	 */
	protected function prepare_fields( $fields ) {
		$image_sizes = $this->get_image_sizes();

		$args = $this->get_args();

		if ( ! empty( $args['default'] ) && isset( $image_sizes[ $args['default'] ] ) ) {
			$default_value = $args['default'];
		} else {
			// Get the first item for default value.
			$default_value = array_keys( $image_sizes );
			$default_value = array_shift( $default_value );
		}

		$fields['size']['options'] = $image_sizes;

		$fields['size']['default'] = $default_value;

		if ( ! isset( $image_sizes['custom'] ) ) {
			unset( $fields['custom_dimension'] );
		}

		return parent::prepare_fields( $fields );
	}

	/**
	 * Get image sizes.
	 *
	 * Retrieve available image sizes after filtering `include` and `exclude` arguments.
	 *
	 * @since 2.0.0
	 * @access private
	 *
	 * @return array Filtered image sizes.
	 */
	private function get_image_sizes() {
		$wp_image_sizes = self::get_all_image_sizes();

		$args = $this->get_args();

		if ( $args['include'] ) {
			$wp_image_sizes = array_intersect_key( $wp_image_sizes, array_flip( $args['include'] ) );
		} elseif ( $args['exclude'] ) {
			$wp_image_sizes = array_diff_key( $wp_image_sizes, array_flip( $args['exclude'] ) );
		}

		$image_sizes = [];

		foreach ( $wp_image_sizes as $size_key => $size_attributes ) {
			$control_title = ucwords( str_replace( '_', ' ', $size_key ) );
			if ( is_array( $size_attributes ) ) {
				$control_title .= sprintf( ' - %d x %d', $size_attributes['width'], $size_attributes['height'] );
			}

			$image_sizes[ $size_key ] = $control_title;
		}

		$image_sizes['full'] = _x( 'Full', 'Image Size Control', 'elementor' );

		if ( ! empty( $args['include']['custom'] ) || ! in_array( 'custom', $args['exclude'] ) ) {
			$image_sizes['custom'] = _x( 'Custom', 'Image Size Control', 'elementor' );
		}

		return $image_sizes;
	}

	/**
	 * Get default options.
	 *
	 * Retrieve the default options of the image size control. Used to return the
	 * default options while initializing the image size control.
	 *
	 * @since 1.9.0
	 * @access protected
	 *
	 * @return array Default image size control options.
	 */
	protected function get_default_options() {
		return [
			'popover' => false,
		];
	}
}
includes/controls/groups/border.php000064400000005006151327220420013521 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor border control.
 *
 * A base control for creating border control. Displays input fields to define
 * border type, border width and border color.
 *
 * @since 1.0.0
 */
class Group_Control_Border extends Group_Control_Base {

	/**
	 * Fields.
	 *
	 * Holds all the border control fields.
	 *
	 * @since 1.0.0
	 * @access protected
	 * @static
	 *
	 * @var array Border control fields.
	 */
	protected static $fields;

	/**
	 * Get border control type.
	 *
	 * Retrieve the control type, in this case `border`.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @return string Control type.
	 */
	public static function get_type() {
		return 'border';
	}

	/**
	 * Init fields.
	 *
	 * Initialize border control fields.
	 *
	 * @since 1.2.2
	 * @access protected
	 *
	 * @return array Control fields.
	 */
	protected function init_fields() {
		$fields = [];

		$fields['border'] = [
			'label' => _x( 'Border Type', 'Border Control', 'elementor' ),
			'type' => Controls_Manager::SELECT,
			'options' => [
				'' => esc_html__( 'None', 'elementor' ),
				'solid' => _x( 'Solid', 'Border Control', 'elementor' ),
				'double' => _x( 'Double', 'Border Control', 'elementor' ),
				'dotted' => _x( 'Dotted', 'Border Control', 'elementor' ),
				'dashed' => _x( 'Dashed', 'Border Control', 'elementor' ),
				'groove' => _x( 'Groove', 'Border Control', 'elementor' ),
			],
			'selectors' => [
				'{{SELECTOR}}' => 'border-style: {{VALUE}};',
			],
		];

		$fields['width'] = [
			'label' => _x( 'Width', 'Border Control', 'elementor' ),
			'type' => Controls_Manager::DIMENSIONS,
			'selectors' => [
				'{{SELECTOR}}' => 'border-width: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
			],
			'condition' => [
				'border!' => '',
			],
			'responsive' => true,
		];

		$fields['color'] = [
			'label' => _x( 'Color', 'Border Control', 'elementor' ),
			'type' => Controls_Manager::COLOR,
			'default' => '',
			'selectors' => [
				'{{SELECTOR}}' => 'border-color: {{VALUE}};',
			],
			'condition' => [
				'border!' => '',
			],
		];

		return $fields;
	}

	/**
	 * Get default options.
	 *
	 * Retrieve the default options of the border control. Used to return the
	 * default options while initializing the border control.
	 *
	 * @since 1.9.0
	 * @access protected
	 *
	 * @return array Default border control options.
	 */
	protected function get_default_options() {
		return [
			'popover' => false,
		];
	}
}
includes/controls/date-time.php000064400000003515151327220420012601 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor date/time control.
 *
 * A base control for creating date time control. Displays a date/time picker
 * based on the Flatpickr library @see https://chmln.github.io/flatpickr/ .
 *
 * @since 1.0.0
 */
class Control_Date_Time extends Base_Data_Control {

	/**
	 * Get date time control type.
	 *
	 * Retrieve the control type, in this case `date_time`.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return 'date_time';
	}

	/**
	 * Get date time control default settings.
	 *
	 * Retrieve the default settings of the date time control. Used to return the
	 * default settings while initializing the date time control.
	 *
	 * @since 1.8.0
	 * @access protected
	 *
	 * @return array Control default settings.
	 */
	protected function get_default_settings() {
		return [
			'label_block' => true,
			'picker_options' => [],
		];
	}

	/**
	 * Render date time control output in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function content_template() {
		?>
		<div class="elementor-control-field">
			<label for="<?php $this->print_control_uid(); ?>" class="elementor-control-title">{{{ data.label }}}</label>
			<div class="elementor-control-input-wrapper">
				<input id="<?php $this->print_control_uid(); ?>" placeholder="{{ view.getControlPlaceholder() }}" class="elementor-date-time-picker flatpickr" type="text" data-setting="{{ data.name }}">
			</div>
		</div>
		<# if ( data.description ) { #>
			<div class="elementor-control-field-description">{{{ data.description }}}</div>
		<# } #>
		<?php
	}
}
includes/controls/icon.php000064400000076061151327220420011666 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor icon control.
 *
 * A base control for creating an icon control. Displays a font icon select box
 * field. The control accepts `include` or `exclude` arguments to set a partial
 * list of icons.
 *
 * @since 1.0.0
 */
class Control_Icon extends Base_Data_Control {

	/**
	 * Get icon control type.
	 *
	 * Retrieve the control type, in this case `icon`.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return 'icon';
	}

	/**
	 * Get icons.
	 *
	 * Retrieve all the available icons.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @return array Available icons.
	 */
	public static function get_icons() {
		return [
			'fa fa-500px' => '500px',
			'fa fa-address-book' => 'address-book',
			'fa fa-address-book-o' => 'address-book-o',
			'fa fa-address-card' => 'address-card',
			'fa fa-address-card-o' => 'address-card-o',
			'fa fa-adjust' => 'adjust',
			'fa fa-adn' => 'adn',
			'fa fa-align-center' => 'align-center',
			'fa fa-align-justify' => 'align-justify',
			'fa fa-align-left' => 'align-left',
			'fa fa-align-right' => 'align-right',
			'fa fa-amazon' => 'amazon',
			'fa fa-ambulance' => 'ambulance',
			'fa fa-american-sign-language-interpreting' => 'american-sign-language-interpreting',
			'fa fa-anchor' => 'anchor',
			'fa fa-android' => 'android',
			'fa fa-angellist' => 'angellist',
			'fa fa-angle-double-down' => 'angle-double-down',
			'fa fa-angle-double-left' => 'angle-double-left',
			'fa fa-angle-double-right' => 'angle-double-right',
			'fa fa-angle-double-up' => 'angle-double-up',
			'fa fa-angle-down' => 'angle-down',
			'fa fa-angle-left' => 'angle-left',
			'fa fa-angle-right' => 'angle-right',
			'fa fa-angle-up' => 'angle-up',
			'fa fa-apple' => 'apple',
			'fa fa-archive' => 'archive',
			'fa fa-area-chart' => 'area-chart',
			'fa fa-arrow-circle-down' => 'arrow-circle-down',
			'fa fa-arrow-circle-left' => 'arrow-circle-left',
			'fa fa-arrow-circle-o-down' => 'arrow-circle-o-down',
			'fa fa-arrow-circle-o-left' => 'arrow-circle-o-left',
			'fa fa-arrow-circle-o-right' => 'arrow-circle-o-right',
			'fa fa-arrow-circle-o-up' => 'arrow-circle-o-up',
			'fa fa-arrow-circle-right' => 'arrow-circle-right',
			'fa fa-arrow-circle-up' => 'arrow-circle-up',
			'fa fa-arrow-down' => 'arrow-down',
			'fa fa-arrow-left' => 'arrow-left',
			'fa fa-arrow-right' => 'arrow-right',
			'fa fa-arrow-up' => 'arrow-up',
			'fa fa-arrows' => 'arrows',
			'fa fa-arrows-alt' => 'arrows-alt',
			'fa fa-arrows-h' => 'arrows-h',
			'fa fa-arrows-v' => 'arrows-v',
			'fa fa-asl-interpreting' => 'asl-interpreting',
			'fa fa-assistive-listening-systems' => 'assistive-listening-systems',
			'fa fa-asterisk' => 'asterisk',
			'fa fa-at' => 'at',
			'fa fa-audio-description' => 'audio-description',
			'fa fa-automobile' => 'automobile',
			'fa fa-backward' => 'backward',
			'fa fa-balance-scale' => 'balance-scale',
			'fa fa-ban' => 'ban',
			'fa fa-bandcamp' => 'bandcamp',
			'fa fa-bank' => 'bank',
			'fa fa-bar-chart' => 'bar-chart',
			'fa fa-bar-chart-o' => 'bar-chart-o',
			'fa fa-barcode' => 'barcode',
			'fa fa-bars' => 'bars',
			'fa fa-bath' => 'bath',
			'fa fa-bathtub' => 'bathtub',
			'fa fa-battery' => 'battery',
			'fa fa-battery-0' => 'battery-0',
			'fa fa-battery-1' => 'battery-1',
			'fa fa-battery-2' => 'battery-2',
			'fa fa-battery-3' => 'battery-3',
			'fa fa-battery-4' => 'battery-4',
			'fa fa-battery-empty' => 'battery-empty',
			'fa fa-battery-full' => 'battery-full',
			'fa fa-battery-half' => 'battery-half',
			'fa fa-battery-quarter' => 'battery-quarter',
			'fa fa-battery-three-quarters' => 'battery-three-quarters',
			'fa fa-bed' => 'bed',
			'fa fa-beer' => 'beer',
			'fa fa-behance' => 'behance',
			'fa fa-behance-square' => 'behance-square',
			'fa fa-bell' => 'bell',
			'fa fa-bell-o' => 'bell-o',
			'fa fa-bell-slash' => 'bell-slash',
			'fa fa-bell-slash-o' => 'bell-slash-o',
			'fa fa-bicycle' => 'bicycle',
			'fa fa-binoculars' => 'binoculars',
			'fa fa-birthday-cake' => 'birthday-cake',
			'fa fa-bitbucket' => 'bitbucket',
			'fa fa-bitbucket-square' => 'bitbucket-square',
			'fa fa-bitcoin' => 'bitcoin',
			'fa fa-black-tie' => 'black-tie',
			'fa fa-blind' => 'blind',
			'fa fa-bluetooth' => 'bluetooth',
			'fa fa-bluetooth-b' => 'bluetooth-b',
			'fa fa-bold' => 'bold',
			'fa fa-bolt' => 'bolt',
			'fa fa-bomb' => 'bomb',
			'fa fa-book' => 'book',
			'fa fa-bookmark' => 'bookmark',
			'fa fa-bookmark-o' => 'bookmark-o',
			'fa fa-braille' => 'braille',
			'fa fa-briefcase' => 'briefcase',
			'fa fa-btc' => 'btc',
			'fa fa-bug' => 'bug',
			'fa fa-building' => 'building',
			'fa fa-building-o' => 'building-o',
			'fa fa-bullhorn' => 'bullhorn',
			'fa fa-bullseye' => 'bullseye',
			'fa fa-bus' => 'bus',
			'fa fa-buysellads' => 'buysellads',
			'fa fa-cab' => 'cab',
			'fa fa-calculator' => 'calculator',
			'fa fa-calendar' => 'calendar',
			'fa fa-calendar-check-o' => 'calendar-check-o',
			'fa fa-calendar-minus-o' => 'calendar-minus-o',
			'fa fa-calendar-o' => 'calendar-o',
			'fa fa-calendar-plus-o' => 'calendar-plus-o',
			'fa fa-calendar-times-o' => 'calendar-times-o',
			'fa fa-camera' => 'camera',
			'fa fa-camera-retro' => 'camera-retro',
			'fa fa-car' => 'car',
			'fa fa-caret-down' => 'caret-down',
			'fa fa-caret-left' => 'caret-left',
			'fa fa-caret-right' => 'caret-right',
			'fa fa-caret-square-o-down' => 'caret-square-o-down',
			'fa fa-caret-square-o-left' => 'caret-square-o-left',
			'fa fa-caret-square-o-right' => 'caret-square-o-right',
			'fa fa-caret-square-o-up' => 'caret-square-o-up',
			'fa fa-caret-up' => 'caret-up',
			'fa fa-cart-arrow-down' => 'cart-arrow-down',
			'fa fa-cart-plus' => 'cart-plus',
			'fa fa-cc' => 'cc',
			'fa fa-cc-amex' => 'cc-amex',
			'fa fa-cc-diners-club' => 'cc-diners-club',
			'fa fa-cc-discover' => 'cc-discover',
			'fa fa-cc-jcb' => 'cc-jcb',
			'fa fa-cc-mastercard' => 'cc-mastercard',
			'fa fa-cc-paypal' => 'cc-paypal',
			'fa fa-cc-stripe' => 'cc-stripe',
			'fa fa-cc-visa' => 'cc-visa',
			'fa fa-certificate' => 'certificate',
			'fa fa-chain' => 'chain',
			'fa fa-chain-broken' => 'chain-broken',
			'fa fa-check' => 'check',
			'fa fa-check-circle' => 'check-circle',
			'fa fa-check-circle-o' => 'check-circle-o',
			'fa fa-check-square' => 'check-square',
			'fa fa-check-square-o' => 'check-square-o',
			'fa fa-chevron-circle-down' => 'chevron-circle-down',
			'fa fa-chevron-circle-left' => 'chevron-circle-left',
			'fa fa-chevron-circle-right' => 'chevron-circle-right',
			'fa fa-chevron-circle-up' => 'chevron-circle-up',
			'fa fa-chevron-down' => 'chevron-down',
			'fa fa-chevron-left' => 'chevron-left',
			'fa fa-chevron-right' => 'chevron-right',
			'fa fa-chevron-up' => 'chevron-up',
			'fa fa-child' => 'child',
			'fa fa-chrome' => 'chrome',
			'fa fa-circle' => 'circle',
			'fa fa-circle-o' => 'circle-o',
			'fa fa-circle-o-notch' => 'circle-o-notch',
			'fa fa-circle-thin' => 'circle-thin',
			'fa fa-clipboard' => 'clipboard',
			'fa fa-clock-o' => 'clock-o',
			'fa fa-clone' => 'clone',
			'fa fa-close' => 'close',
			'fa fa-cloud' => 'cloud',
			'fa fa-cloud-download' => 'cloud-download',
			'fa fa-cloud-upload' => 'cloud-upload',
			'fa fa-cny' => 'cny',
			'fa fa-code' => 'code',
			'fa fa-code-fork' => 'code-fork',
			'fa fa-codepen' => 'codepen',
			'fa fa-codiepie' => 'codiepie',
			'fa fa-coffee' => 'coffee',
			'fa fa-cog' => 'cog',
			'fa fa-cogs' => 'cogs',
			'fa fa-columns' => 'columns',
			'fa fa-comment' => 'comment',
			'fa fa-comment-o' => 'comment-o',
			'fa fa-commenting' => 'commenting',
			'fa fa-commenting-o' => 'commenting-o',
			'fa fa-comments' => 'comments',
			'fa fa-comments-o' => 'comments-o',
			'fa fa-compass' => 'compass',
			'fa fa-compress' => 'compress',
			'fa fa-connectdevelop' => 'connectdevelop',
			'fa fa-contao' => 'contao',
			'fa fa-copy' => 'copy',
			'fa fa-copyright' => 'copyright',
			'fa fa-creative-commons' => 'creative-commons',
			'fa fa-credit-card' => 'credit-card',
			'fa fa-credit-card-alt' => 'credit-card-alt',
			'fa fa-crop' => 'crop',
			'fa fa-crosshairs' => 'crosshairs',
			'fa fa-css3' => 'css3',
			'fa fa-cube' => 'cube',
			'fa fa-cubes' => 'cubes',
			'fa fa-cut' => 'cut',
			'fa fa-cutlery' => 'cutlery',
			'fa fa-dashboard' => 'dashboard',
			'fa fa-dashcube' => 'dashcube',
			'fa fa-database' => 'database',
			'fa fa-deaf' => 'deaf',
			'fa fa-deafness' => 'deafness',
			'fa fa-dedent' => 'dedent',
			'fa fa-delicious' => 'delicious',
			'fa fa-desktop' => 'desktop',
			'fa fa-deviantart' => 'deviantart',
			'fa fa-diamond' => 'diamond',
			'fa fa-digg' => 'digg',
			'fa fa-dollar' => 'dollar',
			'fa fa-dot-circle-o' => 'dot-circle-o',
			'fa fa-download' => 'download',
			'fa fa-dribbble' => 'dribbble',
			'fa fa-drivers-license' => 'drivers-license',
			'fa fa-drivers-license-o' => 'drivers-license-o',
			'fa fa-dropbox' => 'dropbox',
			'fa fa-drupal' => 'drupal',
			'fa fa-edge' => 'edge',
			'fa fa-edit' => 'edit',
			'fa fa-eercast' => 'eercast',
			'fa fa-eject' => 'eject',
			'fa fa-ellipsis-h' => 'ellipsis-h',
			'fa fa-ellipsis-v' => 'ellipsis-v',
			'fa fa-empire' => 'empire',
			'fa fa-envelope' => 'envelope',
			'fa fa-envelope-o' => 'envelope-o',
			'fa fa-envelope-open' => 'envelope-open',
			'fa fa-envelope-open-o' => 'envelope-open-o',
			'fa fa-envelope-square' => 'envelope-square',
			'fa fa-envira' => 'envira',
			'fa fa-eraser' => 'eraser',
			'fa fa-etsy' => 'etsy',
			'fa fa-eur' => 'eur',
			'fa fa-euro' => 'euro',
			'fa fa-exchange' => 'exchange',
			'fa fa-exclamation' => 'exclamation',
			'fa fa-exclamation-circle' => 'exclamation-circle',
			'fa fa-exclamation-triangle' => 'exclamation-triangle',
			'fa fa-expand' => 'expand',
			'fa fa-expeditedssl' => 'expeditedssl',
			'fa fa-external-link' => 'external-link',
			'fa fa-external-link-square' => 'external-link-square',
			'fa fa-eye' => 'eye',
			'fa fa-eye-slash' => 'eye-slash',
			'fa fa-eyedropper' => 'eyedropper',
			'fa fa-fa' => 'fa',
			'fa fa-facebook' => 'facebook',
			'fa fa-facebook-f' => 'facebook-f',
			'fa fa-facebook-official' => 'facebook-official',
			'fa fa-facebook-square' => 'facebook-square',
			'fa fa-fast-backward' => 'fast-backward',
			'fa fa-fast-forward' => 'fast-forward',
			'fa fa-fax' => 'fax',
			'fa fa-feed' => 'feed',
			'fa fa-female' => 'female',
			'fa fa-fighter-jet' => 'fighter-jet',
			'fa fa-file' => 'file',
			'fa fa-file-archive-o' => 'file-archive-o',
			'fa fa-file-audio-o' => 'file-audio-o',
			'fa fa-file-code-o' => 'file-code-o',
			'fa fa-file-excel-o' => 'file-excel-o',
			'fa fa-file-image-o' => 'file-image-o',
			'fa fa-file-movie-o' => 'file-movie-o',
			'fa fa-file-o' => 'file-o',
			'fa fa-file-pdf-o' => 'file-pdf-o',
			'fa fa-file-photo-o' => 'file-photo-o',
			'fa fa-file-picture-o' => 'file-picture-o',
			'fa fa-file-powerpoint-o' => 'file-powerpoint-o',
			'fa fa-file-sound-o' => 'file-sound-o',
			'fa fa-file-text' => 'file-text',
			'fa fa-file-text-o' => 'file-text-o',
			'fa fa-file-video-o' => 'file-video-o',
			'fa fa-file-word-o' => 'file-word-o',
			'fa fa-file-zip-o' => 'file-zip-o',
			'fa fa-files-o' => 'files-o',
			'fa fa-film' => 'film',
			'fa fa-filter' => 'filter',
			'fa fa-fire' => 'fire',
			'fa fa-fire-extinguisher' => 'fire-extinguisher',
			'fa fa-firefox' => 'firefox',
			'fa fa-first-order' => 'first-order',
			'fa fa-flag' => 'flag',
			'fa fa-flag-checkered' => 'flag-checkered',
			'fa fa-flag-o' => 'flag-o',
			'fa fa-flash' => 'flash',
			'fa fa-flask' => 'flask',
			'fa fa-flickr' => 'flickr',
			'fa fa-floppy-o' => 'floppy-o',
			'fa fa-folder' => 'folder',
			'fa fa-folder-o' => 'folder-o',
			'fa fa-folder-open' => 'folder-open',
			'fa fa-folder-open-o' => 'folder-open-o',
			'fa fa-font' => 'font',
			'fa fa-font-awesome' => 'font-awesome',
			'fa fa-fonticons' => 'fonticons',
			'fa fa-fort-awesome' => 'fort-awesome',
			'fa fa-forumbee' => 'forumbee',
			'fa fa-forward' => 'forward',
			'fa fa-foursquare' => 'foursquare',
			'fa fa-free-code-camp' => 'free-code-camp',
			'fa fa-frown-o' => 'frown-o',
			'fa fa-futbol-o' => 'futbol-o',
			'fa fa-gamepad' => 'gamepad',
			'fa fa-gavel' => 'gavel',
			'fa fa-gbp' => 'gbp',
			'fa fa-ge' => 'ge',
			'fa fa-gear' => 'gear',
			'fa fa-gears' => 'gears',
			'fa fa-genderless' => 'genderless',
			'fa fa-get-pocket' => 'get-pocket',
			'fa fa-gg' => 'gg',
			'fa fa-gg-circle' => 'gg-circle',
			'fa fa-gift' => 'gift',
			'fa fa-git' => 'git',
			'fa fa-git-square' => 'git-square',
			'fa fa-github' => 'github',
			'fa fa-github-alt' => 'github-alt',
			'fa fa-github-square' => 'github-square',
			'fa fa-gitlab' => 'gitlab',
			'fa fa-gittip' => 'gittip',
			'fa fa-glass' => 'glass',
			'fa fa-glide' => 'glide',
			'fa fa-glide-g' => 'glide-g',
			'fa fa-globe' => 'globe',
			'fa fa-google' => 'google',
			'fa fa-google-plus' => 'google-plus',
			'fa fa-google-plus-circle' => 'google-plus-circle',
			'fa fa-google-plus-official' => 'google-plus-official',
			'fa fa-google-plus-square' => 'google-plus-square',
			'fa fa-google-wallet' => 'google-wallet',
			'fa fa-graduation-cap' => 'graduation-cap',
			'fa fa-gratipay' => 'gratipay',
			'fa fa-grav' => 'grav',
			'fa fa-group' => 'group',
			'fa fa-h-square' => 'h-square',
			'fa fa-hacker-news' => 'hacker-news',
			'fa fa-hand-grab-o' => 'hand-grab-o',
			'fa fa-hand-lizard-o' => 'hand-lizard-o',
			'fa fa-hand-o-down' => 'hand-o-down',
			'fa fa-hand-o-left' => 'hand-o-left',
			'fa fa-hand-o-right' => 'hand-o-right',
			'fa fa-hand-o-up' => 'hand-o-up',
			'fa fa-hand-paper-o' => 'hand-paper-o',
			'fa fa-hand-peace-o' => 'hand-peace-o',
			'fa fa-hand-pointer-o' => 'hand-pointer-o',
			'fa fa-hand-rock-o' => 'hand-rock-o',
			'fa fa-hand-scissors-o' => 'hand-scissors-o',
			'fa fa-hand-spock-o' => 'hand-spock-o',
			'fa fa-hand-stop-o' => 'hand-stop-o',
			'fa fa-handshake-o' => 'handshake-o',
			'fa fa-hard-of-hearing' => 'hard-of-hearing',
			'fa fa-hashtag' => 'hashtag',
			'fa fa-hdd-o' => 'hdd-o',
			'fa fa-header' => 'header',
			'fa fa-headphones' => 'headphones',
			'fa fa-heart' => 'heart',
			'fa fa-heart-o' => 'heart-o',
			'fa fa-heartbeat' => 'heartbeat',
			'fa fa-history' => 'history',
			'fa fa-home' => 'home',
			'fa fa-hospital-o' => 'hospital-o',
			'fa fa-hotel' => 'hotel',
			'fa fa-hourglass' => 'hourglass',
			'fa fa-hourglass-1' => 'hourglass-1',
			'fa fa-hourglass-2' => 'hourglass-2',
			'fa fa-hourglass-3' => 'hourglass-3',
			'fa fa-hourglass-end' => 'hourglass-end',
			'fa fa-hourglass-half' => 'hourglass-half',
			'fa fa-hourglass-o' => 'hourglass-o',
			'fa fa-hourglass-start' => 'hourglass-start',
			'fa fa-houzz' => 'houzz',
			'fa fa-html5' => 'html5',
			'fa fa-i-cursor' => 'i-cursor',
			'fa fa-id-badge' => 'id-badge',
			'fa fa-id-card' => 'id-card',
			'fa fa-id-card-o' => 'id-card-o',
			'fa fa-ils' => 'ils',
			'fa fa-image' => 'image',
			'fa fa-imdb' => 'imdb',
			'fa fa-inbox' => 'inbox',
			'fa fa-indent' => 'indent',
			'fa fa-industry' => 'industry',
			'fa fa-info' => 'info',
			'fa fa-info-circle' => 'info-circle',
			'fa fa-inr' => 'inr',
			'fa fa-instagram' => 'instagram',
			'fa fa-institution' => 'institution',
			'fa fa-internet-explorer' => 'internet-explorer',
			'fa fa-intersex' => 'intersex',
			'fa fa-ioxhost' => 'ioxhost',
			'fa fa-italic' => 'italic',
			'fa fa-joomla' => 'joomla',
			'fa fa-jpy' => 'jpy',
			'fa fa-jsfiddle' => 'jsfiddle',
			'fa fa-key' => 'key',
			'fa fa-keyboard-o' => 'keyboard-o',
			'fa fa-krw' => 'krw',
			'fa fa-language' => 'language',
			'fa fa-laptop' => 'laptop',
			'fa fa-lastfm' => 'lastfm',
			'fa fa-lastfm-square' => 'lastfm-square',
			'fa fa-leaf' => 'leaf',
			'fa fa-leanpub' => 'leanpub',
			'fa fa-legal' => 'legal',
			'fa fa-lemon-o' => 'lemon-o',
			'fa fa-level-down' => 'level-down',
			'fa fa-level-up' => 'level-up',
			'fa fa-life-bouy' => 'life-bouy',
			'fa fa-life-buoy' => 'life-buoy',
			'fa fa-life-ring' => 'life-ring',
			'fa fa-life-saver' => 'life-saver',
			'fa fa-lightbulb-o' => 'lightbulb-o',
			'fa fa-line-chart' => 'line-chart',
			'fa fa-link' => 'link',
			'fa fa-linkedin' => 'linkedin',
			'fa fa-linkedin-square' => 'linkedin-square',
			'fa fa-linode' => 'linode',
			'fa fa-linux' => 'linux',
			'fa fa-list' => 'list',
			'fa fa-list-alt' => 'list-alt',
			'fa fa-list-ol' => 'list-ol',
			'fa fa-list-ul' => 'list-ul',
			'fa fa-location-arrow' => 'location-arrow',
			'fa fa-lock' => 'lock',
			'fa fa-long-arrow-down' => 'long-arrow-down',
			'fa fa-long-arrow-left' => 'long-arrow-left',
			'fa fa-long-arrow-right' => 'long-arrow-right',
			'fa fa-long-arrow-up' => 'long-arrow-up',
			'fa fa-low-vision' => 'low-vision',
			'fa fa-magic' => 'magic',
			'fa fa-magnet' => 'magnet',
			'fa fa-mail-forward' => 'mail-forward',
			'fa fa-mail-reply' => 'mail-reply',
			'fa fa-mail-reply-all' => 'mail-reply-all',
			'fa fa-male' => 'male',
			'fa fa-map' => 'map',
			'fa fa-map-marker' => 'map-marker',
			'fa fa-map-o' => 'map-o',
			'fa fa-map-pin' => 'map-pin',
			'fa fa-map-signs' => 'map-signs',
			'fa fa-mars' => 'mars',
			'fa fa-mars-double' => 'mars-double',
			'fa fa-mars-stroke' => 'mars-stroke',
			'fa fa-mars-stroke-h' => 'mars-stroke-h',
			'fa fa-mars-stroke-v' => 'mars-stroke-v',
			'fa fa-maxcdn' => 'maxcdn',
			'fa fa-meanpath' => 'meanpath',
			'fa fa-medium' => 'medium',
			'fa fa-medkit' => 'medkit',
			'fa fa-meetup' => 'meetup',
			'fa fa-meh-o' => 'meh-o',
			'fa fa-mercury' => 'mercury',
			'fa fa-microchip' => 'microchip',
			'fa fa-microphone' => 'microphone',
			'fa fa-microphone-slash' => 'microphone-slash',
			'fa fa-minus' => 'minus',
			'fa fa-minus-circle' => 'minus-circle',
			'fa fa-minus-square' => 'minus-square',
			'fa fa-minus-square-o' => 'minus-square-o',
			'fa fa-mixcloud' => 'mixcloud',
			'fa fa-mobile' => 'mobile',
			'fa fa-mobile-phone' => 'mobile-phone',
			'fa fa-modx' => 'modx',
			'fa fa-money' => 'money',
			'fa fa-moon-o' => 'moon-o',
			'fa fa-mortar-board' => 'mortar-board',
			'fa fa-motorcycle' => 'motorcycle',
			'fa fa-mouse-pointer' => 'mouse-pointer',
			'fa fa-music' => 'music',
			'fa fa-navicon' => 'navicon',
			'fa fa-neuter' => 'neuter',
			'fa fa-newspaper-o' => 'newspaper-o',
			'fa fa-object-group' => 'object-group',
			'fa fa-object-ungroup' => 'object-ungroup',
			'fa fa-odnoklassniki' => 'odnoklassniki',
			'fa fa-odnoklassniki-square' => 'odnoklassniki-square',
			'fa fa-opencart' => 'opencart',
			'fa fa-openid' => 'openid',
			'fa fa-opera' => 'opera',
			'fa fa-optin-monster' => 'optin-monster',
			'fa fa-outdent' => 'outdent',
			'fa fa-pagelines' => 'pagelines',
			'fa fa-paint-brush' => 'paint-brush',
			'fa fa-paper-plane' => 'paper-plane',
			'fa fa-paper-plane-o' => 'paper-plane-o',
			'fa fa-paperclip' => 'paperclip',
			'fa fa-paragraph' => 'paragraph',
			'fa fa-paste' => 'paste',
			'fa fa-pause' => 'pause',
			'fa fa-pause-circle' => 'pause-circle',
			'fa fa-pause-circle-o' => 'pause-circle-o',
			'fa fa-paw' => 'paw',
			'fa fa-paypal' => 'paypal',
			'fa fa-pencil' => 'pencil',
			'fa fa-pencil-square' => 'pencil-square',
			'fa fa-pencil-square-o' => 'pencil-square-o',
			'fa fa-percent' => 'percent',
			'fa fa-phone' => 'phone',
			'fa fa-phone-square' => 'phone-square',
			'fa fa-photo' => 'photo',
			'fa fa-picture-o' => 'picture-o',
			'fa fa-pie-chart' => 'pie-chart',
			'fa fa-pied-piper' => 'pied-piper',
			'fa fa-pied-piper-alt' => 'pied-piper-alt',
			'fa fa-pied-piper-pp' => 'pied-piper-pp',
			'fa fa-pinterest' => 'pinterest',
			'fa fa-pinterest-p' => 'pinterest-p',
			'fa fa-pinterest-square' => 'pinterest-square',
			'fa fa-plane' => 'plane',
			'fa fa-play' => 'play',
			'fa fa-play-circle' => 'play-circle',
			'fa fa-play-circle-o' => 'play-circle-o',
			'fa fa-plug' => 'plug',
			'fa fa-plus' => 'plus',
			'fa fa-plus-circle' => 'plus-circle',
			'fa fa-plus-square' => 'plus-square',
			'fa fa-plus-square-o' => 'plus-square-o',
			'fa fa-podcast' => 'podcast',
			'fa fa-power-off' => 'power-off',
			'fa fa-print' => 'print',
			'fa fa-product-hunt' => 'product-hunt',
			'fa fa-pull-left' => 'pull-left',
			'fa fa-pull-right' => 'pull-right',
			'fa fa-puzzle-piece' => 'puzzle-piece',
			'fa fa-qq' => 'qq',
			'fa fa-qrcode' => 'qrcode',
			'fa fa-question' => 'question',
			'fa fa-question-circle' => 'question-circle',
			'fa fa-question-circle-o' => 'question-circle-o',
			'fa fa-quora' => 'quora',
			'fa fa-quote-left' => 'quote-left',
			'fa fa-quote-right' => 'quote-right',
			'fa fa-ra' => 'ra',
			'fa fa-random' => 'random',
			'fa fa-ravelry' => 'ravelry',
			'fa fa-rebel' => 'rebel',
			'fa fa-recycle' => 'recycle',
			'fa fa-reddit' => 'reddit',
			'fa fa-reddit-alien' => 'reddit-alien',
			'fa fa-reddit-square' => 'reddit-square',
			'fa fa-refresh' => 'refresh',
			'fa fa-registered' => 'registered',
			'fa fa-remove' => 'remove',
			'fa fa-renren' => 'renren',
			'fa fa-reorder' => 'reorder',
			'fa fa-repeat' => 'repeat',
			'fa fa-reply' => 'reply',
			'fa fa-reply-all' => 'reply-all',
			'fa fa-resistance' => 'resistance',
			'fa fa-retweet' => 'retweet',
			'fa fa-rmb' => 'rmb',
			'fa fa-road' => 'road',
			'fa fa-rocket' => 'rocket',
			'fa fa-rotate-left' => 'rotate-left',
			'fa fa-rotate-right' => 'rotate-right',
			'fa fa-rouble' => 'rouble',
			'fa fa-rss' => 'rss',
			'fa fa-rss-square' => 'rss-square',
			'fa fa-rub' => 'rub',
			'fa fa-ruble' => 'ruble',
			'fa fa-rupee' => 'rupee',
			'fa fa-s15' => 's15',
			'fa fa-safari' => 'safari',
			'fa fa-save' => 'save',
			'fa fa-scissors' => 'scissors',
			'fa fa-scribd' => 'scribd',
			'fa fa-search' => 'search',
			'fa fa-search-minus' => 'search-minus',
			'fa fa-search-plus' => 'search-plus',
			'fa fa-sellsy' => 'sellsy',
			'fa fa-send' => 'send',
			'fa fa-send-o' => 'send-o',
			'fa fa-server' => 'server',
			'fa fa-share' => 'share',
			'fa fa-share-alt' => 'share-alt',
			'fa fa-share-alt-square' => 'share-alt-square',
			'fa fa-share-square' => 'share-square',
			'fa fa-share-square-o' => 'share-square-o',
			'fa fa-shekel' => 'shekel',
			'fa fa-sheqel' => 'sheqel',
			'fa fa-shield' => 'shield',
			'fa fa-ship' => 'ship',
			'fa fa-shirtsinbulk' => 'shirtsinbulk',
			'fa fa-shopping-bag' => 'shopping-bag',
			'fa fa-shopping-basket' => 'shopping-basket',
			'fa fa-shopping-cart' => 'shopping-cart',
			'fa fa-shower' => 'shower',
			'fa fa-sign-in' => 'sign-in',
			'fa fa-sign-language' => 'sign-language',
			'fa fa-sign-out' => 'sign-out',
			'fa fa-signal' => 'signal',
			'fa fa-signing' => 'signing',
			'fa fa-simplybuilt' => 'simplybuilt',
			'fa fa-sitemap' => 'sitemap',
			'fa fa-skyatlas' => 'skyatlas',
			'fa fa-skype' => 'skype',
			'fa fa-slack' => 'slack',
			'fa fa-sliders' => 'sliders',
			'fa fa-slideshare' => 'slideshare',
			'fa fa-smile-o' => 'smile-o',
			'fa fa-snapchat' => 'snapchat',
			'fa fa-snapchat-ghost' => 'snapchat-ghost',
			'fa fa-snapchat-square' => 'snapchat-square',
			'fa fa-snowflake-o' => 'snowflake-o',
			'fa fa-soccer-ball-o' => 'soccer-ball-o',
			'fa fa-sort' => 'sort',
			'fa fa-sort-alpha-asc' => 'sort-alpha-asc',
			'fa fa-sort-alpha-desc' => 'sort-alpha-desc',
			'fa fa-sort-amount-asc' => 'sort-amount-asc',
			'fa fa-sort-amount-desc' => 'sort-amount-desc',
			'fa fa-sort-asc' => 'sort-asc',
			'fa fa-sort-desc' => 'sort-desc',
			'fa fa-sort-down' => 'sort-down',
			'fa fa-sort-numeric-asc' => 'sort-numeric-asc',
			'fa fa-sort-numeric-desc' => 'sort-numeric-desc',
			'fa fa-sort-up' => 'sort-up',
			'fa fa-soundcloud' => 'soundcloud',
			'fa fa-space-shuttle' => 'space-shuttle',
			'fa fa-spinner' => 'spinner',
			'fa fa-spoon' => 'spoon',
			'fa fa-spotify' => 'spotify',
			'fa fa-square' => 'square',
			'fa fa-square-o' => 'square-o',
			'fa fa-stack-exchange' => 'stack-exchange',
			'fa fa-stack-overflow' => 'stack-overflow',
			'fa fa-star' => 'star',
			'fa fa-star-half' => 'star-half',
			'fa fa-star-half-empty' => 'star-half-empty',
			'fa fa-star-half-full' => 'star-half-full',
			'fa fa-star-half-o' => 'star-half-o',
			'fa fa-star-o' => 'star-o',
			'fa fa-steam' => 'steam',
			'fa fa-steam-square' => 'steam-square',
			'fa fa-step-backward' => 'step-backward',
			'fa fa-step-forward' => 'step-forward',
			'fa fa-stethoscope' => 'stethoscope',
			'fa fa-sticky-note' => 'sticky-note',
			'fa fa-sticky-note-o' => 'sticky-note-o',
			'fa fa-stop' => 'stop',
			'fa fa-stop-circle' => 'stop-circle',
			'fa fa-stop-circle-o' => 'stop-circle-o',
			'fa fa-street-view' => 'street-view',
			'fa fa-strikethrough' => 'strikethrough',
			'fa fa-stumbleupon' => 'stumbleupon',
			'fa fa-stumbleupon-circle' => 'stumbleupon-circle',
			'fa fa-subscript' => 'subscript',
			'fa fa-subway' => 'subway',
			'fa fa-suitcase' => 'suitcase',
			'fa fa-sun-o' => 'sun-o',
			'fa fa-superpowers' => 'superpowers',
			'fa fa-superscript' => 'superscript',
			'fa fa-support' => 'support',
			'fa fa-table' => 'table',
			'fa fa-tablet' => 'tablet',
			'fa fa-tachometer' => 'tachometer',
			'fa fa-tag' => 'tag',
			'fa fa-tags' => 'tags',
			'fa fa-tasks' => 'tasks',
			'fa fa-taxi' => 'taxi',
			'fa fa-telegram' => 'telegram',
			'fa fa-television' => 'television',
			'fa fa-tencent-weibo' => 'tencent-weibo',
			'fa fa-terminal' => 'terminal',
			'fa fa-text-height' => 'text-height',
			'fa fa-text-width' => 'text-width',
			'fa fa-th' => 'th',
			'fa fa-th-large' => 'th-large',
			'fa fa-th-list' => 'th-list',
			'fa fa-themeisle' => 'themeisle',
			'fa fa-thermometer' => 'thermometer',
			'fa fa-thermometer-0' => 'thermometer-0',
			'fa fa-thermometer-1' => 'thermometer-1',
			'fa fa-thermometer-2' => 'thermometer-2',
			'fa fa-thermometer-3' => 'thermometer-3',
			'fa fa-thermometer-4' => 'thermometer-4',
			'fa fa-thermometer-empty' => 'thermometer-empty',
			'fa fa-thermometer-full' => 'thermometer-full',
			'fa fa-thermometer-half' => 'thermometer-half',
			'fa fa-thermometer-quarter' => 'thermometer-quarter',
			'fa fa-thermometer-three-quarters' => 'thermometer-three-quarters',
			'fa fa-thumb-tack' => 'thumb-tack',
			'fa fa-thumbs-down' => 'thumbs-down',
			'fa fa-thumbs-o-down' => 'thumbs-o-down',
			'fa fa-thumbs-o-up' => 'thumbs-o-up',
			'fa fa-thumbs-up' => 'thumbs-up',
			'fa fa-ticket' => 'ticket',
			'fa fa-times' => 'times',
			'fa fa-times-circle' => 'times-circle',
			'fa fa-times-circle-o' => 'times-circle-o',
			'fa fa-times-rectangle' => 'times-rectangle',
			'fa fa-times-rectangle-o' => 'times-rectangle-o',
			'fa fa-tint' => 'tint',
			'fa fa-toggle-down' => 'toggle-down',
			'fa fa-toggle-left' => 'toggle-left',
			'fa fa-toggle-off' => 'toggle-off',
			'fa fa-toggle-on' => 'toggle-on',
			'fa fa-toggle-right' => 'toggle-right',
			'fa fa-toggle-up' => 'toggle-up',
			'fa fa-trademark' => 'trademark',
			'fa fa-train' => 'train',
			'fa fa-transgender' => 'transgender',
			'fa fa-transgender-alt' => 'transgender-alt',
			'fa fa-trash' => 'trash',
			'fa fa-trash-o' => 'trash-o',
			'fa fa-tree' => 'tree',
			'fa fa-trello' => 'trello',
			'fa fa-tripadvisor' => 'tripadvisor',
			'fa fa-trophy' => 'trophy',
			'fa fa-truck' => 'truck',
			'fa fa-try' => 'try',
			'fa fa-tty' => 'tty',
			'fa fa-tumblr' => 'tumblr',
			'fa fa-tumblr-square' => 'tumblr-square',
			'fa fa-turkish-lira' => 'turkish-lira',
			'fa fa-tv' => 'tv',
			'fa fa-twitch' => 'twitch',
			'fa fa-twitter' => 'twitter',
			'fa fa-twitter-square' => 'twitter-square',
			'fa fa-umbrella' => 'umbrella',
			'fa fa-underline' => 'underline',
			'fa fa-undo' => 'undo',
			'fa fa-universal-access' => 'universal-access',
			'fa fa-university' => 'university',
			'fa fa-unlink' => 'unlink',
			'fa fa-unlock' => 'unlock',
			'fa fa-unlock-alt' => 'unlock-alt',
			'fa fa-unsorted' => 'unsorted',
			'fa fa-upload' => 'upload',
			'fa fa-usb' => 'usb',
			'fa fa-usd' => 'usd',
			'fa fa-user' => 'user',
			'fa fa-user-circle' => 'user-circle',
			'fa fa-user-circle-o' => 'user-circle-o',
			'fa fa-user-md' => 'user-md',
			'fa fa-user-o' => 'user-o',
			'fa fa-user-plus' => 'user-plus',
			'fa fa-user-secret' => 'user-secret',
			'fa fa-user-times' => 'user-times',
			'fa fa-users' => 'users',
			'fa fa-vcard' => 'vcard',
			'fa fa-vcard-o' => 'vcard-o',
			'fa fa-venus' => 'venus',
			'fa fa-venus-double' => 'venus-double',
			'fa fa-venus-mars' => 'venus-mars',
			'fa fa-viacoin' => 'viacoin',
			'fa fa-viadeo' => 'viadeo',
			'fa fa-viadeo-square' => 'viadeo-square',
			'fa fa-video-camera' => 'video-camera',
			'fa fa-vimeo' => 'vimeo',
			'fa fa-vimeo-square' => 'vimeo-square',
			'fa fa-vine' => 'vine',
			'fa fa-vk' => 'vk',
			'fa fa-volume-control-phone' => 'volume-control-phone',
			'fa fa-volume-down' => 'volume-down',
			'fa fa-volume-off' => 'volume-off',
			'fa fa-volume-up' => 'volume-up',
			'fa fa-warning' => 'warning',
			'fa fa-wechat' => 'wechat',
			'fa fa-weibo' => 'weibo',
			'fa fa-weixin' => 'weixin',
			'fa fa-whatsapp' => 'whatsapp',
			'fa fa-wheelchair' => 'wheelchair',
			'fa fa-wheelchair-alt' => 'wheelchair-alt',
			'fa fa-wifi' => 'wifi',
			'fa fa-wikipedia-w' => 'wikipedia-w',
			'fa fa-window-close' => 'window-close',
			'fa fa-window-close-o' => 'window-close-o',
			'fa fa-window-maximize' => 'window-maximize',
			'fa fa-window-minimize' => 'window-minimize',
			'fa fa-window-restore' => 'window-restore',
			'fa fa-windows' => 'windows',
			'fa fa-won' => 'won',
			'fa fa-wordpress' => 'wordpress',
			'fa fa-wpbeginner' => 'wpbeginner',
			'fa fa-wpexplorer' => 'wpexplorer',
			'fa fa-wpforms' => 'wpforms',
			'fa fa-wrench' => 'wrench',
			'fa fa-xing' => 'xing',
			'fa fa-xing-square' => 'xing-square',
			'fa fa-y-combinator' => 'y-combinator',
			'fa fa-y-combinator-square' => 'y-combinator-square',
			'fa fa-yahoo' => 'yahoo',
			'fa fa-yc' => 'yc',
			'fa fa-yc-square' => 'yc-square',
			'fa fa-yelp' => 'yelp',
			'fa fa-yen' => 'yen',
			'fa fa-yoast' => 'yoast',
			'fa fa-youtube' => 'youtube',
			'fa fa-youtube-play' => 'youtube-play',
			'fa fa-youtube-square' => 'youtube-square',
		];
	}

	/**
	 * Get icons control default settings.
	 *
	 * Retrieve the default settings of the icons control. Used to return the default
	 * settings while initializing the icons control.
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @return array Control default settings.
	 */
	protected function get_default_settings() {
		return [
			'options' => self::get_icons(),
			'include' => '',
			'exclude' => '',
		];
	}

	/**
	 * Render icons control output in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function content_template() {
		?>
		<div class="elementor-control-field">
			<label for="<?php $this->print_control_uid(); ?>" class="elementor-control-title">{{{ data.label }}}</label>
			<div class="elementor-control-input-wrapper">
				<select id="<?php $this->print_control_uid(); ?>" class="elementor-control-icon" data-setting="{{ data.name }}" data-placeholder="<?php echo esc_html__( 'Select Icon', 'elementor' ); ?>">
					<option value=""><?php echo esc_html__( 'Select Icon', 'elementor' ); ?></option>
					<# _.each( data.options, function( option_title, option_value ) { #>
					<option value="{{ option_value }}">{{{ option_title }}}</option>
					<# } ); #>
				</select>
			</div>
		</div>
		<# if ( data.description ) { #>
		<div class="elementor-control-field-description">{{ data.description }}</div>
		<# } #>
		<?php
	}
}
includes/controls/font.php000064400000004335151327220420011677 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor font control.
 *
 * A base control for creating font control. Displays font select box. The
 * control allows you to set a list of fonts.
 *
 * @since 1.0.0
 */
class Control_Font extends Base_Data_Control {

	/**
	 * Get font control type.
	 *
	 * Retrieve the control type, in this case `font`.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return 'font';
	}

	/**
	 * Get font control default settings.
	 *
	 * Retrieve the default settings of the font control. Used to return the default
	 * settings while initializing the font control.
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @return array Control default settings.
	 */
	protected function get_default_settings() {
		return [
			'groups' => Fonts::get_font_groups(),
			'options' => Fonts::get_fonts(),
		];
	}

	/**
	 * Render font control output in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function content_template() {
		?>
		<div class="elementor-control-field">
			<label for="<?php $this->print_control_uid(); ?>" class="elementor-control-title">{{{ data.label }}}</label>
			<div class="elementor-control-input-wrapper elementor-control-unit-5">
				<select id="<?php $this->print_control_uid(); ?>" class="elementor-control-font-family" data-setting="{{ data.name }}">
					<option value=""><?php echo esc_html__( 'Default', 'elementor' ); ?></option>
					<# _.each( data.groups, function( group_label, group_name ) {
						var groupFonts = getFontsByGroups( group_name );
						if ( ! _.isEmpty( groupFonts ) ) { #>
						<optgroup label="{{ group_label }}">
							<# _.each( groupFonts, function( fontType, fontName ) { #>
								<option value="{{ fontName }}">{{{ fontName }}}</option>
							<# } ); #>
						</optgroup>
						<# }
					}); #>
				</select>
			</div>
		</div>
		<# if ( data.description ) { #>
			<div class="elementor-control-field-description">{{{ data.description }}}</div>
		<# } #>
		<?php
	}
}
includes/controls/select2.php000064400000005305151327220420012270 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor select2 control.
 *
 * A base control for creating select2 control. Displays a select box control
 * based on select2 jQuery plugin @see https://select2.github.io/ .
 * It accepts an array in which the `key` is the value and the `value` is the
 * option name. Set `multiple` to `true` to allow multiple value selection.
 *
 * @since 1.0.0
 */
class Control_Select2 extends Base_Data_Control {

	/**
	 * Get select2 control type.
	 *
	 * Retrieve the control type, in this case `select2`.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return 'select2';
	}

	/**
	 * Get select2 control default settings.
	 *
	 * Retrieve the default settings of the select2 control. Used to return the
	 * default settings while initializing the select2 control.
	 *
	 * @since 1.8.0
	 * @access protected
	 *
	 * @return array Control default settings.
	 */
	protected function get_default_settings() {
		return [
			'options' => [],
			'multiple' => false,
			// Select2 library options
			'select2options' => [],
			// the lockedOptions array can be passed option keys. The passed option keys will be non-deletable.
			'lockedOptions' => [],
		];
	}

	/**
	 * Render select2 control output in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function content_template() {
		?>
		<div class="elementor-control-field">
			<# if ( data.label ) {#>
				<label for="<?php $this->print_control_uid(); ?>" class="elementor-control-title">{{{ data.label }}}</label>
			<# } #>
			<div class="elementor-control-input-wrapper elementor-control-unit-5">
				<# var multiple = ( data.multiple ) ? 'multiple' : ''; #>
				<select id="<?php $this->print_control_uid(); ?>" class="elementor-select2" type="select2" {{ multiple }} data-setting="{{ data.name }}">
					<# _.each( data.options, function( option_title, option_value ) {
						var value = data.controlValue;
						if ( typeof value == 'string' ) {
							var selected = ( option_value === value ) ? 'selected' : '';
						} else if ( null !== value ) {
							var value = _.values( value );
							var selected = ( -1 !== value.indexOf( option_value ) ) ? 'selected' : '';
						}
						#>
					<option {{ selected }} value="{{ option_value }}">{{{ option_title }}}</option>
					<# } ); #>
				</select>
			</div>
		</div>
		<# if ( data.description ) { #>
			<div class="elementor-control-field-description">{{{ data.description }}}</div>
		<# } #>
		<?php
	}
}
includes/controls/deprecated-notice.php000064400000004430151327220420014304 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor Deprecated Notice control.
 *
 * A base control specific for creating Deprecation Notices control.
 * Displays a warning notice in the panel.
 *
 * @since 2.6.0
 */
class Control_Deprecated_Notice extends Base_UI_Control {

	/**
	 * Get deprecated-notice control type.
	 *
	 * Retrieve the control type, in this case `deprecated_notice`.
	 *
	 * @since 2.6.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return 'deprecated_notice';
	}

	/**
	 * Render deprecated notice control output in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 2.6.0
	 * @access public
	 */
	public function content_template() {
		?>
		<# if ( data.label ) { #>
		<span class="elementor-control-title">{{{ data.label }}}</span>
		<#
		}
		let notice = wp.i18n.sprintf( wp.i18n.__( 'The <strong>%1$s</strong> widget has been deprecated since %2$s %3$s.', 'elementor' ), data.widget, data.plugin, data.since );
		if ( data.replacement ) {
			notice += '<br>' + wp.i18n.sprintf( wp.i18n.__( 'It has been replaced by <strong>%1$s</strong>.', 'elementor' ), data.replacement );
		}
		if ( data.last ) {
			notice += '<br>' + wp.i18n.sprintf( wp.i18n.__( 'Note that %1$s will be completely removed once %2$s %3$s is released.', 'elementor' ), data.widget, data.plugin, data.last );
		}
		#>
		<div class="elementor-control-deprecated-notice elementor-panel-alert elementor-panel-alert-warning">{{{ notice }}}</div>
		<?php
	}

	/**
	 * Get deprecated-notice control default settings.
	 *
	 * Retrieve the default settings of the deprecated notice control. Used to return the
	 * default settings while initializing the deprecated notice control.
	 *
	 * @since 2.6.0
	 * @access protected
	 *
	 * @return array Control default settings.
	 */
	protected function get_default_settings() {
		return [
			'widget' => '', // Widgets name
			'since' => '', // Plugin version widget was deprecated
			'last' => '', // Plugin version in which the widget will be removed
			'plugin' => '', // Plugin's title
			'replacement' => '', // Widget replacement
		];
	}
}
includes/controls/base-ui.php000064400000001004151327220420012244 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor base UI control.
 *
 * An abstract class for creating new UI controls in the panel.
 *
 * @abstract
 */
abstract class Base_UI_Control extends Base_Control {

	/**
	 * Get features.
	 *
	 * Retrieve the list of all the available features.
	 *
	 * @since 1.5.0
	 * @access public
	 * @static
	 *
	 * @return array Features array.
	 */
	public static function get_features() {
		return [ 'ui' ];
	}
}
includes/controls/choose.php000064400000004333151327220420012207 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor choose control.
 *
 * A base control for creating choose control. Displays radio buttons styled as
 * groups of buttons with icons for each option.
 *
 * @since 1.0.0
 */
class Control_Choose extends Base_Data_Control {

	/**
	 * Get choose control type.
	 *
	 * Retrieve the control type, in this case `choose`.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return 'choose';
	}

	/**
	 * Render choose control output in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function content_template() {
		$control_uid_input_type = '{{value}}';
		?>
		<div class="elementor-control-field">
			<label class="elementor-control-title">{{{ data.label }}}</label>
			<div class="elementor-control-input-wrapper">
				<div class="elementor-choices">
					<# _.each( data.options, function( options, value ) { #>
					<input id="<?php $this->print_control_uid( $control_uid_input_type ); ?>" type="radio" name="elementor-choose-{{ data.name }}-{{ data._cid }}" value="{{ value }}">
					<label class="elementor-choices-label elementor-control-unit-1 tooltip-target" for="<?php $this->print_control_uid( $control_uid_input_type ); ?>" data-tooltip="{{ options.title }}" title="{{ options.title }}">
						<i class="{{ options.icon }}" aria-hidden="true"></i>
						<span class="elementor-screen-only">{{{ options.title }}}</span>
					</label>
					<# } ); #>
				</div>
			</div>
		</div>

		<# if ( data.description ) { #>
		<div class="elementor-control-field-description">{{{ data.description }}}</div>
		<# } #>
		<?php
	}

	/**
	 * Get choose control default settings.
	 *
	 * Retrieve the default settings of the choose control. Used to return the
	 * default settings while initializing the choose control.
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @return array Control default settings.
	 */
	protected function get_default_settings() {
		return [
			'options' => [],
			'toggle' => true,
		];
	}
}
includes/controls/heading.php000064400000002504151327220420012324 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor heading control.
 *
 * A base control for creating heading control. Displays a text heading between
 * controls in the panel.
 *
 * @since 1.0.0
 */
class Control_Heading extends Base_UI_Control {

	/**
	 * Get heading control type.
	 *
	 * Retrieve the control type, in this case `heading`.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return 'heading';
	}

	/**
	 * Get heading control default settings.
	 *
	 * Retrieve the default settings of the heading control. Used to return the
	 * default settings while initializing the heading control.
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @return array Control default settings.
	 */
	protected function get_default_settings() {
		return [
			'label_block' => true,
		];
	}

	/**
	 * Render heading control output in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function content_template() {
		?>
		<div class="elementor-control-field">
			<h3 class="elementor-control-title">{{{ data.label }}}</h3>
		</div>
		<?php
	}
}
includes/controls/popover-toggle.php000064400000005051151327220420013676 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor popover toggle control.
 *
 * A base control for creating a popover toggle control. By default displays a toggle
 * button to open and close a popover.
 *
 * @since 1.9.0
 */
class Control_Popover_Toggle extends Base_Data_Control {

	/**
	 * Get popover toggle control type.
	 *
	 * Retrieve the control type, in this case `popover_toggle`.
	 *
	 * @since 1.9.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return 'popover_toggle';
	}

	/**
	 * Get popover toggle control default settings.
	 *
	 * Retrieve the default settings of the popover toggle control. Used to
	 * return the default settings while initializing the popover toggle
	 * control.
	 *
	 * @since 1.9.0
	 * @access protected
	 *
	 * @return array Control default settings.
	 */
	protected function get_default_settings() {
		return [
			'return_value' => 'yes',
		];
	}

	/**
	 * Render popover toggle control output in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 1.9.0
	 * @access public
	 */
	public function content_template() {
		?>
		<div class="elementor-control-field">
			<label class="elementor-control-title">{{{ data.label }}}</label>
			<div class="elementor-control-input-wrapper">
				<input id="<?php $this->print_control_uid(); ?>-custom" class="elementor-control-popover-toggle-toggle" type="radio" name="elementor-choose-{{ data.name }}-{{ data._cid }}" value="{{ data.return_value }}">
				<label class="elementor-control-popover-toggle-toggle-label elementor-control-unit-1" for="<?php $this->print_control_uid(); ?>-custom">
					<i class="eicon-edit" aria-hidden="true"></i>
					<span class="elementor-screen-only"><?php echo esc_html__( 'Edit', 'elementor' ); ?></span>
				</label>
				<input id="<?php $this->print_control_uid(); ?>-default" class="elementor-control-popover-toggle-reset" type="radio" name="elementor-choose-{{ data.name }}-{{ data._cid }}" value="">
				<label class="elementor-control-popover-toggle-reset-label tooltip-target" for="<?php $this->print_control_uid(); ?>-default" data-tooltip="<?php echo esc_html__( 'Back to default', 'elementor' ); ?>" data-tooltip-pos="s">
					<i class="eicon-undo" aria-hidden="true"></i>
					<span class="elementor-screen-only"><?php echo esc_html__( 'Back to default', 'elementor' ); ?></span>
				</label>
			</div>
		</div>
		<?php
	}
}
includes/controls/hidden.php000064400000001664151327220420012166 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor hidden control.
 *
 * A base control for creating hidden control. Used to save additional data in
 * the database without a visual presentation in the panel.
 *
 * @since 1.0.0
 */
class Control_Hidden extends Base_Data_Control {

	/**
	 * Get hidden control type.
	 *
	 * Retrieve the control type, in this case `hidden`.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return 'hidden';
	}

	/**
	 * Render hidden control output in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function content_template() {
		?>
		<input type="hidden" data-setting="{{{ data.name }}}" />
		<?php
	}
}
includes/controls/repeater.php000064400000010534151327220420012536 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor repeater control.
 *
 * A base control for creating repeater control. Repeater control allows you to
 * build repeatable blocks of fields. You can create, for example, a set of
 * fields that will contain a title and a WYSIWYG text - the user will then be
 * able to add "rows", and each row will contain a title and a text. The data
 * can be wrapper in custom HTML tags, designed using CSS, and interact using JS
 * or external libraries.
 *
 * @since 1.0.0
 */
class Control_Repeater extends Base_Data_Control {

	/**
	 * Get repeater control type.
	 *
	 * Retrieve the control type, in this case `repeater`.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return 'repeater';
	}

	/**
	 * Get repeater control default value.
	 *
	 * Retrieve the default value of the data control. Used to return the default
	 * values while initializing the repeater control.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @return array Control default value.
	 */
	public function get_default_value() {
		return [];
	}

	/**
	 * Get repeater control default settings.
	 *
	 * Retrieve the default settings of the repeater control. Used to return the
	 * default settings while initializing the repeater control.
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @return array Control default settings.
	 */
	protected function get_default_settings() {
		return [
			'fields' => [],
			'title_field' => '',
			'prevent_empty' => true,
			'is_repeater' => true,
			'item_actions' => [
				'add' => true,
				'duplicate' => true,
				'remove' => true,
				'sort' => true,
			],
		];
	}

	/**
	 * Get repeater control value.
	 *
	 * Retrieve the value of the repeater control from a specific Controls_Stack.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param array $control  Control
	 * @param array $settings Controls_Stack settings
	 *
	 * @return mixed Control values.
	 */
	public function get_value( $control, $settings ) {
		$value = parent::get_value( $control, $settings );

		if ( ! empty( $value ) ) {
			foreach ( $value as &$item ) {
				foreach ( $control['fields'] as $field ) {
					$control_obj = Plugin::$instance->controls_manager->get_control( $field['type'] );

					// Prior to 1.5.0 the fields may contains non-data controls.
					if ( ! $control_obj instanceof Base_Data_Control ) {
						continue;
					}

					$item[ $field['name'] ] = $control_obj->get_value( $field, $item );
				}
			}
		}

		return $value;
	}

	/**
	 * Import repeater.
	 *
	 * Used as a wrapper method for inner controls while importing Elementor
	 * template JSON file, and replacing the old data.
	 *
	 * @since 1.8.0
	 * @access public
	 *
	 * @param array $settings     Control settings.
	 * @param array $control_data Optional. Control data. Default is an empty array.
	 *
	 * @return array Control settings.
	 */
	public function on_import( $settings, $control_data = [] ) {
		if ( empty( $settings ) || empty( $control_data['fields'] ) ) {
			return $settings;
		}

		$method = 'on_import';

		foreach ( $settings as &$item ) {
			foreach ( $control_data['fields'] as $field ) {
				if ( empty( $field['name'] ) || empty( $item[ $field['name'] ] ) ) {
					continue;
				}

				$control_obj = Plugin::$instance->controls_manager->get_control( $field['type'] );

				if ( ! $control_obj ) {
					continue;
				}

				if ( method_exists( $control_obj, $method ) ) {
					$item[ $field['name'] ] = $control_obj->{$method}( $item[ $field['name'] ], $field );
				}
			}
		}

		return $settings;
	}

	/**
	 * Render repeater control output in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function content_template() {
		?>
		<label>
			<span class="elementor-control-title">{{{ data.label }}}</span>
		</label>
		<div class="elementor-repeater-fields-wrapper"></div>
		<# if ( itemActions.add ) { #>
			<div class="elementor-button-wrapper">
				<button class="elementor-button elementor-button-default elementor-repeater-add" type="button">
					<i class="eicon-plus" aria-hidden="true"></i><?php echo esc_html__( 'Add Item', 'elementor' ); ?>
				</button>
			</div>
		<# } #>
		<?php
	}
}
includes/controls/box-shadow.php000064400000006622151327220420013005 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor box shadow control.
 *
 * A base control for creating box shadows control. Displays input fields for
 * horizontal shadow, vertical shadow, shadow blur, shadow spread and shadow
 * color.
 *
 * @since 1.0.0
 */
class Control_Box_Shadow extends Control_Base_Multiple {

	/**
	 * Get box shadow control type.
	 *
	 * Retrieve the control type, in this case `box_shadow`.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return 'box_shadow';
	}

	/**
	 * Get box shadow control default value.
	 *
	 * Retrieve the default value of the box shadow control. Used to return the
	 * default values while initializing the box shadow control.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array Control default value.
	 */
	public function get_default_value() {
		return [
			'horizontal' => 0,
			'vertical' => 0,
			'blur' => 10,
			'spread' => 0,
			'color' => 'rgba(0,0,0,0.5)',
		];
	}

	/**
	 * Get box shadow control sliders.
	 *
	 * Retrieve the sliders of the box shadow control. Sliders are used while
	 * rendering the control output in the editor.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array Control sliders.
	 */
	public function get_sliders() {
		return [
			'horizontal' => [
				'label' => esc_html__( 'Horizontal', 'elementor' ),
				'min' => -100,
				'max' => 100,
			],
			'vertical' => [
				'label' => esc_html__( 'Vertical', 'elementor' ),
				'min' => -100,
				'max' => 100,
			],
			'blur' => [
				'label' => esc_html__( 'Blur', 'elementor' ),
				'min' => 0,
				'max' => 100,
			],
			'spread' => [
				'label' => esc_html__( 'Spread', 'elementor' ),
				'min' => -100,
				'max' => 100,
			],
		];
	}

	/**
	 * Render box shadow control output in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function content_template() {
		?>
		<div class="elementor-shadow-box">
			<div class="elementor-control-field elementor-color-picker-wrapper">
				<label class="elementor-control-title"><?php echo esc_html__( 'Color', 'elementor' ); ?></label>
				<div class="elementor-control-input-wrapper elementor-control-unit-1">
					<div class="elementor-color-picker-placeholder"></div>
				</div>
			</div>
			<?php
			foreach ( $this->get_sliders() as $slider_name => $slider ) :
				?>
				<div class="elementor-shadow-slider elementor-control-type-slider">
					<label for="<?php $this->print_control_uid( $slider_name ); ?>" class="elementor-control-title"><?php
						// PHPCS - the value of $slider['label'] is already escaped.
						echo $slider['label']; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
					?></label>
					<div class="elementor-control-input-wrapper">
						<div class="elementor-slider" data-input="<?php echo esc_attr( $slider_name ); ?>"></div>
						<div class="elementor-slider-input elementor-control-unit-2">
							<input id="<?php $this->print_control_uid( $slider_name ); ?>" type="number" min="<?php echo esc_attr( $slider['min'] ); ?>" max="<?php echo esc_attr( $slider['max'] ); ?>" data-setting="<?php echo esc_attr( $slider_name ); ?>"/>
						</div>
					</div>
				</div>
			<?php endforeach; ?>
		</div>
		<?php
	}
}
includes/controls/exit-animation.php000064400000004725151327220420013662 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor exit animation control.
 *
 * A control for creating exit animation. Displays a select box
 * with the available exit animation effects @see Control_Exit_Animation::get_animations() .
 *
 * @since 2.5.0
 */
class Control_Exit_Animation extends Control_Animation {

	/**
	 * Get control type.
	 *
	 * Retrieve the animation control type.
	 *
	 * @since 2.5.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return 'exit_animation';
	}

	/**
	 * Get animations list.
	 *
	 * Retrieve the list of all the available animations.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @return array Control type.
	 */
	public static function get_animations() {
		$animations = [
			'Fading' => [
				'fadeIn' => 'Fade Out',
				'fadeInDown' => 'Fade Out Up',
				'fadeInLeft' => 'Fade Out Left',
				'fadeInRight' => 'Fade Out Right',
				'fadeInUp' => 'Fade Out Down',
			],
			'Zooming' => [
				'zoomIn' => 'Zoom Out',
				'zoomInDown' => 'Zoom Out Up',
				'zoomInLeft' => 'Zoom Out Left',
				'zoomInRight' => 'Zoom Out Right',
				'zoomInUp' => 'Zoom Out Down',
			],
			'Sliding' => [
				'slideInDown' => 'Slide Out Up',
				'slideInLeft' => 'Slide Out Left',
				'slideInRight' => 'Slide Out Right',
				'slideInUp' => 'Slide Out Down',
			],
			'Rotating' => [
				'rotateIn' => 'Rotate Out',
				'rotateInDownLeft' => 'Rotate Out Up Left',
				'rotateInDownRight' => 'Rotate Out Up Right',
				'rotateInUpRight' => 'Rotate Out Down Left',
				'rotateInUpLeft' => 'Rotate Out Down Right',
			],
			'Light Speed' => [
				'lightSpeedIn' => 'Light Speed Out',
			],
			'Specials' => [
				'rollIn' => 'Roll Out',
			],
		];

		$additional_animations = [];

		/**
		 * Exit animations.
		 *
		 * Filters the animations list displayed in the exit animations control.
		 *
		 * This hook can be used to register new animations in addition to the
		 * basic Elementor exit animations.
		 *
		 * @since 2.5.0
		 *
		 * @param array $additional_animations Additional animations array.
		 */
		$additional_animations = apply_filters( 'elementor/controls/exit-animations/additional_animations', $additional_animations );

		return array_merge( $animations, $additional_animations );
	}

	public static function get_assets( $setting ) {
		if ( ! $setting || 'none' === $setting ) {
			return [];
		}

		return [
			'styles' => [ 'e-animations' ],
		];
	}
}
includes/controls/textarea.php000064400000003703151327220420012544 0ustar00<?php
namespace Elementor;

use Elementor\Modules\DynamicTags\Module as TagsModule;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor textarea control.
 *
 * A base control for creating textarea control. Displays a classic textarea.
 *
 * @since 1.0.0
 */
class Control_Textarea extends Base_Data_Control {

	/**
	 * Get textarea control type.
	 *
	 * Retrieve the control type, in this case `textarea`.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return 'textarea';
	}

	/**
	 * Get textarea control default settings.
	 *
	 * Retrieve the default settings of the textarea control. Used to return the
	 * default settings while initializing the textarea control.
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @return array Control default settings.
	 */
	protected function get_default_settings() {
		return [
			'label_block' => true,
			'rows' => 5,
			'placeholder' => '',
			'dynamic' => [
				'categories' => [ TagsModule::TEXT_CATEGORY ],
			],
		];
	}

	/**
	 * Render textarea control output in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function content_template() {
		?>
		<div class="elementor-control-field">
			<label for="<?php $this->print_control_uid(); ?>" class="elementor-control-title">{{{ data.label }}}</label>
			<div class="elementor-control-input-wrapper elementor-control-dynamic-switcher-wrapper">
				<textarea id="<?php $this->print_control_uid(); ?>" class="elementor-control-tag-area" rows="{{ data.rows }}" data-setting="{{ data.name }}" placeholder="{{ view.getControlPlaceholder() }}"></textarea>
			</div>
		</div>
		<# if ( data.description ) { #>
			<div class="elementor-control-field-description">{{{ data.description }}}</div>
		<# } #>
		<?php
	}
}
includes/controls/image-dimensions.php000064400000007352151327220420014163 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor image dimensions control.
 *
 * A base control for creating image dimension control. Displays image width
 * input, image height input and an apply button.
 *
 * @since 1.0.0
 */
class Control_Image_Dimensions extends Control_Base_Multiple {

	/**
	 * Get image dimensions control type.
	 *
	 * Retrieve the control type, in this case `image_dimensions`.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return 'image_dimensions';
	}

	/**
	 * Get image dimensions control default values.
	 *
	 * Retrieve the default value of the image dimensions control. Used to return the
	 * default values while initializing the image dimensions control.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array Control default value.
	 */
	public function get_default_value() {
		return [
			'width' => '',
			'height' => '',
		];
	}

	/**
	 * Get image dimensions control default settings.
	 *
	 * Retrieve the default settings of the image dimensions control. Used to return
	 * the default settings while initializing the image dimensions control.
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @return array Control default settings.
	 */
	protected function get_default_settings() {
		return [
			'show_label' => false,
			'label_block' => true,
		];
	}

	/**
	 * Render image dimensions control output in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function content_template() {
		if ( ! $this->is_image_editor_supports() ) : ?>
			<div class="elementor-panel-alert elementor-panel-alert-danger">
				<?php echo esc_html__( 'The server does not have ImageMagick or GD installed and/or enabled! Any of these libraries are required for WordPress to be able to resize images. Please contact your server administrator to enable this before continuing.', 'elementor' ); ?>
			</div>
			<?php
			return;
		endif;
		?>
		<# if ( data.description ) { #>
			<div class="elementor-control-field-description">{{{ data.description }}}</div>
		<# } #>
		<div class="elementor-control-field">
			<label class="elementor-control-title">{{{ data.label }}}</label>
			<div class="elementor-control-input-wrapper">
				<div class="elementor-image-dimensions-field elementor-control-unit-2">
					<input id="<?php $this->print_control_uid( 'width' ); ?>" type="text" data-setting="width" />
					<label for="<?php $this->print_control_uid( 'width' ); ?>" class="elementor-image-dimensions-field-description"><?php echo esc_html__( 'Width', 'elementor' ); ?></label>
				</div>
				<div class="elementor-image-dimensions-separator">x</div>
				<div class="elementor-image-dimensions-field elementor-control-unit-2">
					<input id="<?php $this->print_control_uid( 'height' ); ?>" type="text" data-setting="height" />
					<label for="<?php $this->print_control_uid( 'height' ); ?>" class="elementor-image-dimensions-field-description"><?php echo esc_html__( 'Height', 'elementor' ); ?></label>
				</div>
				<button class="elementor-button elementor-button-success elementor-image-dimensions-apply-button"><?php echo esc_html__( 'Apply', 'elementor' ); ?></button>
			</div>
		</div>
		<?php
	}

	/**
	 * Image editor support.
	 *
	 * Used to determine whether the editor supports a given image mime-type.
	 *
	 * @since 2.0.0
	 * @access private
	 *
	 * @return bool Whether the editor supports the given mime-type.
	 */
	private function is_image_editor_supports() {
		$arg = [
			'mime_type' => 'image/jpeg',
		];
		return ( wp_image_editor_supports( $arg ) );
	}
}
includes/controls/raw-html.php000064400000002757151327220420012472 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor raw HTML control.
 *
 * A base control for creating raw HTML control. Displays HTML markup between
 * controls in the panel.
 *
 * @since 1.0.0
 */
class Control_Raw_Html extends Base_UI_Control {

	/**
	 * Get raw html control type.
	 *
	 * Retrieve the control type, in this case `raw_html`.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return 'raw_html';
	}

	/**
	 * Render raw html control output in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function content_template() {
		?>
		<# data.raw = elementor.compileTemplate( data.raw, { view } );
		if ( data.label ) { #>
		<span class="elementor-control-title">{{{ data.label }}}</span>
		<# } #>
		<div class="elementor-control-raw-html {{ data.content_classes }}">{{{ data.raw }}}</div>
		<?php
	}

	/**
	 * Get raw html control default settings.
	 *
	 * Retrieve the default settings of the raw html control. Used to return the
	 * default settings while initializing the raw html control.
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @return array Control default settings.
	 */
	protected function get_default_settings() {
		return [
			'raw' => '',
			'content_classes' => '',
		];
	}
}
includes/controls/base-multiple.php000064400000004037151327220420013473 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor control base multiple.
 *
 * An abstract class for creating new controls in the panel that return
 * more than a single value. Each value of the multi-value control will
 * be returned as an item in a `key => value` array.
 *
 * @since 1.0.0
 * @abstract
 */
abstract class Control_Base_Multiple extends Base_Data_Control {

	/**
	 * Get multiple control default value.
	 *
	 * Retrieve the default value of the multiple control. Used to return the default
	 * values while initializing the multiple control.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array Control default value.
	 */
	public function get_default_value() {
		return [];
	}

	/**
	 * Get multiple control value.
	 *
	 * Retrieve the value of the multiple control from a specific Controls_Stack settings.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param array $control  Control
	 * @param array $settings Settings
	 *
	 * @return mixed Control values.
	 */
	public function get_value( $control, $settings ) {
		$value = parent::get_value( $control, $settings );

		if ( empty( $control['default'] ) ) {
			$control['default'] = [];
		}

		if ( ! is_array( $value ) ) {
			$value = [];
		}

		$control['default'] = array_merge(
			$this->get_default_value(),
			$control['default']
		);

		return array_merge(
			$control['default'],
			$value
		);
	}

	/**
	 * Get multiple control style value.
	 *
	 * Retrieve the style of the control. Used when adding CSS rules to the control
	 * while extracting CSS from the `selectors` data argument.
	 *
	 * @since 1.0.5
	 * @since 2.3.3 New `$control_data` parameter added.
	 * @access public
	 *
	 * @param string $css_property  CSS property.
	 * @param array $control_value Control value.
	 * @param array  $control_data Control Data.
	 *
	 * @return array Control style value.
	 */
	public function get_style_value( $css_property, $control_value, array $control_data ) {
		return $control_value[ strtolower( $css_property ) ];
	}
}
includes/controls/section.php000064400000003273151327220420012375 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor section control.
 *
 * A base control for creating section control. Displays a header that
 * functions as a toggle to show or hide a set of controls.
 *
 * Note: Do not use it directly, instead use `$widget->start_controls_section()`
 * and `$widget->end_controls_section()` to wrap a set of controls.
 *
 * @since 1.0.0
 */
class Control_Section extends Base_UI_Control {

	/**
	 * Get section control type.
	 *
	 * Retrieve the control type, in this case `section`.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return 'section';
	}

	/**
	 * Render section control output in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function content_template() {
		?>
		<div class="elementor-panel-heading">
			<div class="elementor-panel-heading-toggle elementor-section-toggle" data-collapse_id="{{ data.name }}">
				<i class="eicon" aria-hidden="true"></i>
			</div>
			<div class="elementor-panel-heading-title elementor-section-title">{{{ data.label }}}</div>
		</div>
		<?php
	}

	/**
	 * Get repeater control default settings.
	 *
	 * Retrieve the default settings of the repeater control. Used to return the
	 * default settings while initializing the repeater control.
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @return array Control default settings.
	 */
	protected function get_default_settings() {
		return [
			'separator' => 'none',
		];
	}
}
includes/controls/dimensions.php000064400000011344151327220420013077 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor dimension control.
 *
 * A base control for creating dimension control. Displays input fields for top,
 * right, bottom, left and the option to link them together.
 *
 * @since 1.0.0
 */
class Control_Dimensions extends Control_Base_Units {

	/**
	 * Get dimensions control type.
	 *
	 * Retrieve the control type, in this case `dimensions`.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return 'dimensions';
	}

	/**
	 * Get dimensions control default values.
	 *
	 * Retrieve the default value of the dimensions control. Used to return the
	 * default values while initializing the dimensions control.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array Control default value.
	 */
	public function get_default_value() {
		return array_merge(
			parent::get_default_value(), [
				'top' => '',
				'right' => '',
				'bottom' => '',
				'left' => '',
				'isLinked' => true,
			]
		);
	}

	/**
	 * Get dimensions control default settings.
	 *
	 * Retrieve the default settings of the dimensions control. Used to return the
	 * default settings while initializing the dimensions control.
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @return array Control default settings.
	 */
	protected function get_default_settings() {
		return array_merge(
			parent::get_default_settings(), [
				'label_block' => true,
				'allowed_dimensions' => 'all',
				'placeholder' => '',
			]
		);
	}

	/**
	 * Render dimensions control output in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function content_template() {
		$dimensions = [
			'top' => esc_html__( 'Top', 'elementor' ),
			'right' => esc_html__( 'Right', 'elementor' ),
			'bottom' => esc_html__( 'Bottom', 'elementor' ),
			'left' => esc_html__( 'Left', 'elementor' ),
		];
		?>
		<div class="elementor-control-field">
			<label class="elementor-control-title">{{{ data.label }}}</label>
			<?php $this->print_units_template(); ?>
			<div class="elementor-control-input-wrapper">
				<ul class="elementor-control-dimensions">
					<?php
					foreach ( $dimensions as $dimension_key => $dimension_title ) :
						?>
						<li class="elementor-control-dimension">
							<input id="<?php $this->print_control_uid( $dimension_key ); ?>" type="number" data-setting="<?php
								// PHPCS - the variable $dimension_key is a plain text.
								echo $dimension_key; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
							?>" placeholder="<#
								placeholder = view.getControlPlaceholder();
								if ( _.isObject( placeholder ) ) {
									if ( ! _.isUndefined( placeholder.<?php
										// PHPCS - the variable $dimension_key is a plain text.
										echo $dimension_key; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
									?> ) ) {
										print( placeholder.<?php
											// PHPCS - the variable $dimension_key is a plain text.
											echo $dimension_key; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
										?> );
									}
								} else {
								print( placeholder );
								} #>"
							<# if ( -1 === _.indexOf( allowed_dimensions, '<?php
								// PHPCS - the variable $dimension_key is a plain text.
								echo $dimension_key; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
							?>' ) ) { #>
								disabled
								<# } #>
									/>
							<label for="<?php $this->print_control_uid( $dimension_key ); ?>" class="elementor-control-dimension-label"><?php
								// PHPCS - the variable $dimension_title holds an escaped translated value.
								echo $dimension_title; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
							?></label>
						</li>
					<?php endforeach; ?>
					<li>
						<button class="elementor-link-dimensions tooltip-target" data-tooltip="<?php echo esc_attr__( 'Link values together', 'elementor' ); ?>">
							<span class="elementor-linked">
								<i class="eicon-link" aria-hidden="true"></i>
								<span class="elementor-screen-only"><?php echo esc_html__( 'Link values together', 'elementor' ); ?></span>
							</span>
							<span class="elementor-unlinked">
								<i class="eicon-chain-broken" aria-hidden="true"></i>
								<span class="elementor-screen-only"><?php echo esc_html__( 'Unlinked values', 'elementor' ); ?></span>
							</span>
						</button>
					</li>
				</ul>
			</div>
		</div>
		<# if ( data.description ) { #>
		<div class="elementor-control-field-description">{{{ data.description }}}</div>
		<# } #>
		<?php
	}
}
includes/controls/media.php000064400000022301151327220420012001 0ustar00<?php
namespace Elementor;

use Elementor\Modules\DynamicTags\Module as TagsModule;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor media control.
 *
 * A base control for creating a media chooser control. Based on the WordPress
 * media library. Used to select an image from the WordPress media library.
 *
 * @since 1.0.0
 */
class Control_Media extends Control_Base_Multiple {

	/**
	 * Get media control type.
	 *
	 * Retrieve the control type, in this case `media`.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return 'media';
	}

	/**
	 * Get media control default values.
	 *
	 * Retrieve the default value of the media control. Used to return the default
	 * values while initializing the media control.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array Control default value.
	 */
	public function get_default_value() {
		return [
			'url' => '',
			'id' => '',
		];
	}

	/**
	 * Import media images.
	 *
	 * Used to import media control files from external sites while importing
	 * Elementor template JSON file, and replacing the old data.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param array $settings Control settings
	 *
	 * @return array Control settings.
	 */
	public function on_import( $settings ) {
		if ( empty( $settings['url'] ) ) {
			return $settings;
		}

		add_filter( 'upload_mimes', [ $this, 'support_svg_and_json_import' ], 100 );

		$settings = Plugin::$instance->templates_manager->get_import_images_instance()->import( $settings );

		remove_filter( 'upload_mimes', [ $this, 'support_svg_and_json_import' ], 100 );

		if ( ! $settings ) {
			$settings = [
				'id' => '',
				'url' => Utils::get_placeholder_image_src(),
			];
		}

		return $settings;
	}

	/**
	 * Support SVG and JSON Import
	 *
	 * Called by the 'upload_mimes' filter. Adds SVG and JSON mime types to the list of WordPress' allowed mime types.
	 *
	 * @since 3.4.0
	 *
	 * @param $mimes
	 * @return mixed
	 */
	public function support_svg_and_json_import( $mimes ) {
		$mimes['svg'] = 'image/svg+xml';
		$mimes['json'] = 'application/json';

		return $mimes;
	}

	/**
	 * Enqueue media control scripts and styles.
	 *
	 * Used to register and enqueue custom scripts and styles used by the media
	 * control.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function enqueue() {
		global $wp_version;

		$suffix = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min';
		wp_enqueue_media();

		wp_enqueue_style(
			'media',
			admin_url( '/css/media' . $suffix . '.css' ),
			[],
			$wp_version
		);

		wp_register_script(
			'image-edit',
			'/wp-admin/js/image-edit' . $suffix . '.js',
			[
				'jquery',
				'json2',
				'imgareaselect',
			],
			$wp_version,
			true
		);

		wp_enqueue_script( 'image-edit' );
	}

	/**
	 * Render media control output in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function content_template() {
		?>
		<#
			// For BC.
			if ( data.media_type ) {
				data.media_types = [ data.media_type ];
			}

			if ( data.should_include_svg_inline_option ) {
				data.media_types.push( 'svg' );
			}

			// Determine if the current media type is viewable.
			const isViewable = () => {
				const viewable = [
					'image',
					'video',
					'svg',
				];

				// Make sure that all media types are viewable.
				return data.media_types.every( ( type ) => viewable.includes( type ) );
			};

			// Get the preview type for the current media type.
			const getPreviewType = () => {
				if ( data.media_types.includes( 'video' ) ) {
					return 'video';
				}

				if ( data.media_types.includes( 'image' ) || data.media_types.includes( 'svg' ) ) {
					return 'image';
				}

				return 'none';
			}

			// Retrieve a button label by media type.
			const getButtonLabel = ( mediaType ) => {
				switch( mediaType ) {
					case 'image':
						return '<?php esc_html_e( 'Choose Image', 'elementor' ); ?>';

					case 'video':
						return '<?php esc_html_e( 'Choose Video', 'elementor' ); ?>';

					case 'svg':
						return '<?php esc_html_e( 'Choose SVG', 'elementor' ); ?>';

					default:
						return '<?php esc_html_e( 'Choose File', 'elementor' ); ?>';
				}
			}
		#>
		<div class="elementor-control-field elementor-control-media">
			<label class="elementor-control-title">{{{ data.label }}}</label>
			<#
			if ( isViewable() ) {
				let inputWrapperClasses = 'elementor-control-input-wrapper elementor-aspect-ratio-219';

				if ( ! data.label_block ) {
					inputWrapperClasses += ' elementor-control-unit-5';
				}
			#>
				<div class="{{{ inputWrapperClasses }}}">
					<div class="elementor-control-media__content elementor-control-tag-area elementor-control-preview-area elementor-fit-aspect-ratio">
						<div class="elementor-control-media-area elementor-fit-aspect-ratio">
							<div class="elementor-control-media__remove elementor-control-media__content__remove" title="<?php echo esc_html__( 'Remove', 'elementor' ); ?>">
								<i class="eicon-trash-o"></i>
							</div>
							<#
								switch( getPreviewType() ) {
									case 'image':
										#>
										<div class="elementor-control-media__preview elementor-fit-aspect-ratio"></div>
										<#
										break;

									case 'video':
										#>
										<video class="elementor-control-media-video" preload="metadata"></video>
										<i class="eicon-video-camera"></i>
										<#
										break;
								}
							#>
						</div>
						<div class="elementor-control-media-upload-button elementor-control-media__content__upload-button">
							<i class="eicon-plus-circle" aria-hidden="true"></i>
						</div>
						<div class="elementor-control-media__tools elementor-control-dynamic-switcher-wrapper">
							<#
								data.media_types.forEach( ( type ) => {
									#>
									<div class="elementor-control-media__tool elementor-control-media__replace" data-media-type="{{{ type }}}">{{{ getButtonLabel( type ) }}}</div>
									<#
								} );
							#>
						</div>
					</div>
				</div>
			<# } /* endif isViewable() */ else { #>
				<div class="elementor-control-media__file elementor-control-preview-area">
					<div class="elementor-control-media__file__content">
						<div class="elementor-control-media__file__content__label"><?php echo esc_html__( 'Click the media icon to upload file', 'elementor' ); ?></div>
						<div class="elementor-control-media__file__content__info">
							<div class="elementor-control-media__file__content__info__icon">
								<i class="eicon-document-file"></i>
							</div>
							<div class="elementor-control-media__file__content__info__name"></div>
						</div>
					</div>
					<div class="elementor-control-media__file__controls">
						<div class="elementor-control-media__remove elementor-control-media__file__controls__remove" title="<?php echo esc_html__( 'Remove', 'elementor' ); ?>">
							<i class="eicon-trash-o"></i>
						</div>
						<div class="elementor-control-media__file__controls__upload-button elementor-control-media-upload-button" title="<?php echo esc_html__( 'Upload', 'elementor' ); ?>">
							<i class="eicon-upload"></i>
						</div>
					</div>
				</div>
			<# } #>
			<# if ( data.description ) { #>
				<div class="elementor-control-field-description">{{{ data.description }}}</div>
			<# } #>
			<input type="hidden" data-setting="{{ data.name }}"/>
		</div>
		<?php
	}

	/**
	 * Get media control default settings.
	 *
	 * Retrieve the default settings of the media control. Used to return the default
	 * settings while initializing the media control.
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @return array Control default settings.
	 */
	protected function get_default_settings() {
		return [
			'label_block' => true,
			'media_types' => [
				'image',
			],
			'dynamic' => [
				'categories' => [ TagsModule::IMAGE_CATEGORY ],
				'returnType' => 'object',
			],
		];
	}

	/**
	 * Get media control image title.
	 *
	 * Retrieve the `title` of the image selected by the media control.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @param array $attachment Media attachment.
	 *
	 * @return string Image title.
	 */
	public static function get_image_title( $attachment ) {
		if ( empty( $attachment['id'] ) ) {
			return '';
		}

		return get_the_title( $attachment['id'] );
	}

	/**
	 * Get media control image alt.
	 *
	 * Retrieve the `alt` value of the image selected by the media control.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @param array $instance Media attachment.
	 *
	 * @return string Image alt.
	 */
	public static function get_image_alt( $instance ) {
		if ( empty( $instance['id'] ) ) {
			// For `Insert From URL` images.
			return isset( $instance['alt'] ) ? trim( strip_tags( $instance['alt'] ) ) : '';
		}

		$attachment_id = $instance['id'];
		if ( ! $attachment_id ) {
			return '';
		}

		$attachment = get_post( $attachment_id );
		if ( ! $attachment ) {
			return '';
		}

		$alt = get_post_meta( $attachment_id, '_wp_attachment_image_alt', true );
		if ( ! $alt ) {
			$alt = $attachment->post_excerpt;
			if ( ! $alt ) {
				$alt = $attachment->post_title;
			}
		}
		return trim( strip_tags( $alt ) );
	}
}
includes/controls/base-data.php000064400000007244151327220420012554 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor base data control.
 *
 * An abstract class for creating new data controls in the panel.
 *
 * @since 1.5.0
 * @abstract
 */
abstract class Base_Data_Control extends Base_Control {

	public function __construct() {
		parent::__construct();

		$default_value = $this->get_default_value();

		if ( '' !== $default_value ) {
			$this->set_settings( 'default_value', $default_value );
		}
	}

	/**
	 * Get data control default value.
	 *
	 * Retrieve the default value of the data control. Used to return the default
	 * values while initializing the data control.
	 *
	 * @since 1.5.0
	 * @access public
	 *
	 * @return string Control default value.
	 */
	public function get_default_value() {
		return '';
	}

	/**
	 * Get data control value.
	 *
	 * Retrieve the value of the data control from a specific Controls_Stack settings.
	 *
	 * @since 1.5.0
	 * @access public
	 *
	 * @param array $control  Control
	 * @param array $settings Element settings
	 *
	 * @return mixed Control values.
	 */
	public function get_value( $control, $settings ) {
		if ( ! isset( $control['default'] ) ) {
			$control['default'] = $this->get_default_value();
		}

		if ( isset( $settings[ $control['name'] ] ) ) {
			$value = $settings[ $control['name'] ];
		} else {
			$value = $control['default'];
		}

		return $value;
	}

	/**
	 * Parse dynamic tags.
	 *
	 * Iterates through all the controls and renders all the dynamic tags.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @param string $dynamic_value    The dynamic tag text.
	 * @param array  $dynamic_settings The dynamic tag settings.
	 *
	 * @return string|string[]|mixed A string or an array of strings with the
	 *                               return value from each tag callback function.
	 */
	public function parse_tags( $dynamic_value, $dynamic_settings ) {
		$current_dynamic_settings = $this->get_settings( 'dynamic' );

		if ( is_array( $current_dynamic_settings ) ) {
			$dynamic_settings = array_merge( $current_dynamic_settings, $dynamic_settings );
		}

		return Plugin::$instance->dynamic_tags->parse_tags_text( $dynamic_value, $dynamic_settings, [ Plugin::$instance->dynamic_tags, 'get_tag_data_content' ] );
	}

	/**
	 * Get data control style value.
	 *
	 * Retrieve the style of the control. Used when adding CSS rules to the control
	 * while extracting CSS from the `selectors` data argument.
	 *
	 * @since 1.5.0
	 * @since 2.3.3 New `$control_data` parameter added.
	 * @access public
	 *
	 * @param string $css_property  CSS property.
	 * @param string $control_value Control value.
	 * @param array  $control_data Control Data.
	 *
	 * @return string Control style value.
	 */
	public function get_style_value( $css_property, $control_value, array $control_data ) {
		if ( 'DEFAULT' === $css_property ) {
			return $control_data['default'];
		}

		return $control_value;
	}

	/**
	 * Get data control unique ID.
	 *
	 * Retrieve the unique ID of the control. Used to set a uniq CSS ID for the
	 * element.
	 *
	 * @since 1.5.0
	 * @access protected
	 *
	 * @param string $input_type Input type. Default is 'default'.
	 *
	 * @return string Unique ID.
	 */
	protected function get_control_uid( $input_type = 'default' ) {
		return 'elementor-control-' . $input_type . '-{{{ data._cid }}}';
	}

	/**
	 * Safe Print data control unique ID.
	 *
	 * Retrieve the unique ID of the control. Used to set a unique CSS ID for the
	 * element.
	 *
	 * @access protected
	 *
	 * @param string $input_type Input type. Default is 'default'.
	 */
	protected function print_control_uid( $input_type = 'default' ) {
		echo esc_attr( $this->get_control_uid( $input_type ) );
	}
}
includes/controls/hover-animation.php000064400000010357151327220420014032 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor hover animation control.
 *
 * A base control for creating hover animation control. Displays a select box
 * with the available hover animation effects @see Control_Hover_Animation::get_animations()
 *
 * @since 1.0.0
 */
class Control_Hover_Animation extends Base_Data_Control {

	/**
	 * Animations.
	 *
	 * Holds all the available hover animation effects of the control.
	 *
	 * @access private
	 * @static
	 *
	 * @var array
	 */
	private static $_animations;

	/**
	 * Get hover animation control type.
	 *
	 * Retrieve the control type, in this case `hover_animation`.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return 'hover_animation';
	}

	/**
	 * Get animations.
	 *
	 * Retrieve the available hover animation effects.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @return array Available hover animation.
	 */
	public static function get_animations() {
		if ( is_null( self::$_animations ) ) {
			self::$_animations = [
				'grow' => 'Grow',
				'shrink' => 'Shrink',
				'pulse' => 'Pulse',
				'pulse-grow' => 'Pulse Grow',
				'pulse-shrink' => 'Pulse Shrink',
				'push' => 'Push',
				'pop' => 'Pop',
				'bounce-in' => 'Bounce In',
				'bounce-out' => 'Bounce Out',
				'rotate' => 'Rotate',
				'grow-rotate' => 'Grow Rotate',
				'float' => 'Float',
				'sink' => 'Sink',
				'bob' => 'Bob',
				'hang' => 'Hang',
				'skew' => 'Skew',
				'skew-forward' => 'Skew Forward',
				'skew-backward' => 'Skew Backward',
				'wobble-vertical' => 'Wobble Vertical',
				'wobble-horizontal' => 'Wobble Horizontal',
				'wobble-to-bottom-right' => 'Wobble To Bottom Right',
				'wobble-to-top-right' => 'Wobble To Top Right',
				'wobble-top' => 'Wobble Top',
				'wobble-bottom' => 'Wobble Bottom',
				'wobble-skew' => 'Wobble Skew',
				'buzz' => 'Buzz',
				'buzz-out' => 'Buzz Out',
			];

			$additional_animations = [];

			/**
			 * Hover animations.
			 *
			 * Filters the animations list displayed in the hover animations control.
			 *
			 * This hook can be used to register new animations in addition to the
			 * basic Elementor hover animations.
			 *
			 * @since 2.4.0
			 *
			 * @param array $additional_animations Additional animations array.
			 */
			$additional_animations = apply_filters( 'elementor/controls/hover_animations/additional_animations', $additional_animations );

			self::$_animations = array_merge( self::$_animations, $additional_animations );
		}

		return self::$_animations;
	}

	/**
	 * Render hover animation control output in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function content_template() {
		?>
		<div class="elementor-control-field">
			<label for="<?php $this->print_control_uid(); ?>" class="elementor-control-title">{{{ data.label }}}</label>
			<div class="elementor-control-input-wrapper">
				<select id="<?php $this->print_control_uid(); ?>" data-setting="{{ data.name }}">
					<option value=""><?php echo esc_html__( 'None', 'elementor' ); ?></option>
					<?php foreach ( self::get_animations() as $animation_name => $animation_title ) : ?>
						<option value="<?php Utils::print_unescaped_internal_string( $animation_name ); ?>"><?php Utils::print_unescaped_internal_string( $animation_title ); ?></option>
					<?php endforeach; ?>
				</select>
			</div>
		</div>
		<# if ( data.description ) { #>
		<div class="elementor-control-field-description">{{{ data.description }}}</div>
		<# } #>
		<?php
	}

	/**
	 * Get hover animation control default settings.
	 *
	 * Retrieve the default settings of the hover animation control. Used to return
	 * the default settings while initializing the hover animation control.
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @return array Control default settings.
	 */
	protected function get_default_settings() {
		return [
			'label_block' => true,
		];
	}

	public static function get_assets( $setting ) {
		if ( ! $setting || 'none' === $setting ) {
			return [];
		}

		return [
			'styles' => [ 'e-animations' ],
		];
	}
}
includes/controls/animation.php000064400000011267151327220420012712 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor animation control.
 *
 * A base control for creating entrance animation control. Displays a select box
 * with the available entrance animation effects @see Control_Animation::get_animations() .
 *
 * @since 1.0.0
 */
class Control_Animation extends Base_Data_Control {

	/**
	 * Get control type.
	 *
	 * Retrieve the animation control type.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return 'animation';
	}

	/**
	 * Retrieve default control settings.
	 *
	 * Get the default settings of the control. Used to return the default
	 * settings while initializing the control.
	 *
	 * @since 2.5.0
	 * @access protected
	 *
	 * @return array Control default settings.
	 */
	protected function get_default_settings() {
		$default_settings['label_block'] = true;
		$default_settings['render_type'] = 'none';

		return $default_settings;
	}

	/**
	 * Get animations list.
	 *
	 * Retrieve the list of all the available animations.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @return array Control type.
	 */
	public static function get_animations() {
		$animations = [
			'Fading' => [
				'fadeIn' => 'Fade In',
				'fadeInDown' => 'Fade In Down',
				'fadeInLeft' => 'Fade In Left',
				'fadeInRight' => 'Fade In Right',
				'fadeInUp' => 'Fade In Up',
			],
			'Zooming' => [
				'zoomIn' => 'Zoom In',
				'zoomInDown' => 'Zoom In Down',
				'zoomInLeft' => 'Zoom In Left',
				'zoomInRight' => 'Zoom In Right',
				'zoomInUp' => 'Zoom In Up',
			],
			'Bouncing' => [
				'bounceIn' => 'Bounce In',
				'bounceInDown' => 'Bounce In Down',
				'bounceInLeft' => 'Bounce In Left',
				'bounceInRight' => 'Bounce In Right',
				'bounceInUp' => 'Bounce In Up',
			],
			'Sliding' => [
				'slideInDown' => 'Slide In Down',
				'slideInLeft' => 'Slide In Left',
				'slideInRight' => 'Slide In Right',
				'slideInUp' => 'Slide In Up',
			],
			'Rotating' => [
				'rotateIn' => 'Rotate In',
				'rotateInDownLeft' => 'Rotate In Down Left',
				'rotateInDownRight' => 'Rotate In Down Right',
				'rotateInUpLeft' => 'Rotate In Up Left',
				'rotateInUpRight' => 'Rotate In Up Right',
			],
			'Attention Seekers' => [
				'bounce' => 'Bounce',
				'flash' => 'Flash',
				'pulse' => 'Pulse',
				'rubberBand' => 'Rubber Band',
				'shake' => 'Shake',
				'headShake' => 'Head Shake',
				'swing' => 'Swing',
				'tada' => 'Tada',
				'wobble' => 'Wobble',
				'jello' => 'Jello',
			],
			'Light Speed' => [
				'lightSpeedIn' => 'Light Speed In',
			],
			'Specials' => [
				'rollIn' => 'Roll In',
			],
		];

		$additional_animations = [];

		/**
		 * Entrance animations.
		 *
		 * Filters the animations list displayed in the animations control.
		 *
		 * This hook can be used to register animations in addition to the
		 * basic Elementor animations.
		 *
		 * @since 2.4.0
		 *
		 * @param array $additional_animations Additional animations array.
		 */
		$additional_animations = apply_filters( 'elementor/controls/animations/additional_animations', $additional_animations );

		return array_merge( $animations, $additional_animations );
	}

	/**
	 * Render animations control template.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function content_template() {
		?>
		<div class="elementor-control-field">
			<label for="<?php $this->print_control_uid(); ?>" class="elementor-control-title">{{{ data.label }}}</label>
			<div class="elementor-control-input-wrapper">
				<select id="<?php $this->print_control_uid(); ?>" data-setting="{{ data.name }}">
					<option value=""><?php echo esc_html__( 'Default', 'elementor' ); ?></option>
					<option value="none"><?php echo esc_html__( 'None', 'elementor' ); ?></option>
					<?php foreach ( static::get_animations() as $animations_group_name => $animations_group ) : ?>
						<optgroup label="<?php echo esc_attr( $animations_group_name ); ?>">
							<?php foreach ( $animations_group as $animation_name => $animation_title ) : ?>
								<option value="<?php echo esc_attr( $animation_name ); ?>"><?php echo esc_html( $animation_title ); ?></option>
							<?php endforeach; ?>
						</optgroup>
					<?php endforeach; ?>
				</select>
			</div>
		</div>
		<# if ( data.description ) { #>
		<div class="elementor-control-field-description">{{{ data.description }}}</div>
		<# } #>
		<?php
	}

	public static function get_assets( $setting ) {
		if ( ! $setting || 'none' === $setting ) {
			return [];
		}

		return [
			'styles' => [ 'e-animations' ],
		];
	}
}
includes/controls/slider.php000064400000006766151327220420012225 0ustar00<?php
namespace Elementor;

use Elementor\Modules\DynamicTags\Module as TagsModule;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor slider control.
 *
 * A base control for creating slider control. Displays a draggable range slider.
 * The slider control can optionally have a number of unit types (`size_units`)
 * for the user to choose from. The control also accepts a range argument that
 * allows you to set the `min`, `max` and `step` values per unit type.
 *
 * @since 1.0.0
 */
class Control_Slider extends Control_Base_Units {

	/**
	 * Get slider control type.
	 *
	 * Retrieve the control type, in this case `slider`.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return 'slider';
	}

	/**
	 * Get slider control default values.
	 *
	 * Retrieve the default value of the slider control. Used to return the default
	 * values while initializing the slider control.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array Control default value.
	 */
	public function get_default_value() {
		return array_merge(
			parent::get_default_value(), [
				'size' => '',
				'sizes' => [],
			]
		);
	}

	/**
	 * Get slider control default settings.
	 *
	 * Retrieve the default settings of the slider control. Used to return the
	 * default settings while initializing the slider control.
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @return array Control default settings.
	 */
	protected function get_default_settings() {
		return array_merge(
			parent::get_default_settings(), [
				'label_block' => true,
				'labels' => [],
				'scales' => 0,
				'handles' => 'default',
				'dynamic' => [
					'categories' => [ TagsModule::NUMBER_CATEGORY ],
					'property' => 'size',
				],
			]
		);
	}

	/**
	 * Render slider control output in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function content_template() {
		?>
		<div class="elementor-control-field">
			<label for="<?php $this->print_control_uid(); ?>" class="elementor-control-title">{{{ data.label }}}</label>
			<?php $this->print_units_template(); ?>
			<div class="elementor-control-input-wrapper elementor-control-dynamic-switcher-wrapper elementor-clearfix elementor-control-tag-area">
				<# if ( isMultiple && ( data.labels.length || data.scales ) ) { #>
					<div class="elementor-slider__extra">
						<# if ( data.labels.length ) { #>
						<div class="elementor-slider__labels">
							<# jQuery.each( data.labels, ( index, label ) => { #>
								<div class="elementor-slider__label">{{{ label }}}</div>
							<# } ); #>
						</div>
						<# } if ( data.scales ) { #>
						<div class="elementor-slider__scales">
							<# for ( var i = 0; i < data.scales; i++ ) { #>
								<div class="elementor-slider__scale"></div>
							<# } #>
						</div>
						<# } #>
					</div>
				<# } #>
				<div class="elementor-slider"></div>
				<# if ( ! isMultiple ) { #>
					<div class="elementor-slider-input">
						<input id="<?php $this->print_control_uid(); ?>" type="number" min="{{ data.min }}" max="{{ data.max }}" step="{{ data.step }}" placeholder="{{ view.getControlPlaceholder()?.size }}" data-setting="size" />
					</div>
				<# } #>
			</div>
		</div>
		<# if ( data.description ) { #>
		<div class="elementor-control-field-description">{{{ data.description }}}</div>
		<# } #>
		<?php
	}
}
includes/controls/icons.php000064400000015055151327220420012045 0ustar00<?php
namespace Elementor;

use Elementor\Modules\DynamicTags\Module as TagsModule;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor Icons control.
 *
 * A base control for creating a Icons chooser control.
 * Used to select an Icon.
 *
 * Usage: @see https://developers.elementor.com/elementor-controls/icons-control
 *
 * @since 2.6.0
 */
class Control_Icons extends Control_Base_Multiple {

	/**
	 * Get media control type.
	 *
	 * Retrieve the control type, in this case `media`.
	 *
	 * @access public
	 * @since 2.6.0
	 * @return string Control type.
	 */
	public function get_type() {
		return 'icons';
	}

	/**
	 * Get Icons control default values.
	 *
	 * Retrieve the default value of the Icons control. Used to return the default
	 * values while initializing the Icons control.
	 *
	 * @access public
	 * @since 2.6.0
	 * @return array Control default value.
	 */
	public function get_default_value() {
		return [
			'value'   => '',
			'library' => '',
		];
	}

	/**
	 * Render Icons control output in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 2.6.0
	 * @access public
	 */
	public function content_template() {
		?>
		<# if ( 'inline' === data.skin ) { #>
			<?php $this->render_inline_skin(); ?>
		<# } else { #>
			<?php $this->render_media_skin(); ?>
		<# } #>
		<?php
	}

	public function render_media_skin() {
		?>
		<div class="elementor-control-field elementor-control-media">
			<label class="elementor-control-title">{{{ data.label }}}</label>
			<div class="elementor-control-input-wrapper elementor-aspect-ratio-219">
				<div class="elementor-control-media__content elementor-control-tag-area elementor-control-preview-area elementor-fit-aspect-ratio">
					<div class="elementor-control-media-upload-button elementor-control-media__content__upload-button elementor-fit-aspect-ratio">
						<i class="eicon-plus-circle" aria-hidden="true"></i>
					</div>
					<div class="elementor-control-media-area elementor-fit-aspect-ratio">
						<div class="elementor-control-media__remove elementor-control-media__content__remove" title="<?php echo esc_html__( 'Remove', 'elementor' ); ?>">
							<i class="eicon-trash-o"></i>
						</div>
						<div class="elementor-control-media__preview elementor-fit-aspect-ratio"></div>
					</div>
					<div class="elementor-control-media__tools elementor-control-dynamic-switcher-wrapper">
						<div class="elementor-control-icon-picker elementor-control-media__tool"><?php echo esc_html__( 'Icon Library', 'elementor' ); ?></div>
						<div class="elementor-control-svg-uploader elementor-control-media__tool"><?php echo esc_html__( 'Upload SVG', 'elementor' ); ?></div>
					</div>
				</div>
			</div>
			<# if ( data.description ) { #>
			<div class="elementor-control-field-description">{{{ data.description }}}</div>
			<# } #>
			<input type="hidden" data-setting="{{ data.name }}"/>
		</div>
		<?php
	}

	public function render_inline_skin() {
		?>
		<div class="elementor-control-field elementor-control-inline-icon">
			<label class="elementor-control-title">{{{ data.label }}}</label>
			<div class="elementor-control-input-wrapper">
				<div class="elementor-choices">
					<input id="<?php $this->print_control_uid(); ?>-none" type="radio" value="none">
					<label class="elementor-choices-label elementor-control-unit-1 tooltip-target elementor-control-icons--inline__none" for="<?php $this->print_control_uid(); ?>-none" data-tooltip="<?php echo esc_html__( 'None', 'elementor' ); ?>" title="<?php echo esc_html__( 'None', 'elementor' ); ?>">
						<i class="eicon-ban" aria-hidden="true"></i>
						<span class="elementor-screen-only"><?php echo esc_html__( 'None', 'elementor' ); ?></span>
					</label>
					<# if ( ! data.exclude_inline_options.includes( 'svg' ) ) { #>
						<input id="<?php $this->print_control_uid(); ?>-svg" type="radio" value="svg">
						<label class="elementor-choices-label elementor-control-unit-1 tooltip-target elementor-control-icons--inline__svg" for="<?php $this->print_control_uid(); ?>-svg" data-tooltip="<?php echo esc_html__( 'Upload SVG', 'elementor' ); ?>" title="<?php echo esc_html__( 'Upload SVG', 'elementor' ); ?>">
							<i class="eicon-upload" aria-hidden="true"></i>
							<span class="elementor-screen-only"><?php echo esc_html__( 'Upload SVG', 'elementor' ); ?></span>
						</label>
					<# }
					if ( ! data.exclude_inline_options.includes( 'icon' ) ) { #>
						<input id="<?php $this->print_control_uid(); ?>-icon" type="radio" value="icon">
						<label class="elementor-choices-label elementor-control-unit-1 tooltip-target elementor-control-icons--inline__icon" for="<?php $this->print_control_uid(); ?>-icon" data-tooltip="<?php echo esc_html__( 'Icon Library', 'elementor' ); ?>" title="<?php echo esc_html__( 'Icon Library', 'elementor' ); ?>">
							<span class="elementor-control-icons--inline__displayed-icon">
								<i class="eicon-circle" aria-hidden="true"></i>
							</span>
							<span class="elementor-screen-only"><?php echo esc_html__( 'Icon Library', 'elementor' ); ?></span>
						</label>
					<# } #>
				</div>
			</div>
		</div>

		<# if ( data.description ) { #>
		<div class="elementor-control-field-description">{{{ data.description }}}</div>
		<# } #>
		<?php
	}

	/**
	 * Get Icons control default settings.
	 *
	 * Retrieve the default settings of the Icons control. Used to return the default
	 * settings while initializing the Icons control.
	 *
	 * @since 2.6.0
	 * @access protected
	 *
	 * @return array Control default settings.
	 */
	protected function get_default_settings() {
		return [
			'label_block' => true,
			'dynamic' => [
				'categories' => [ TagsModule::IMAGE_CATEGORY ],
				'returnType' => 'object',
			],
			'search_bar' => true,
			'recommended' => false,
			'skin' => 'media',
			'exclude_inline_options' => [],
		];
	}

	public function support_svg_import( $mimes ) {
		$mimes['svg'] = 'image/svg+xml';
		return $mimes;
	}

	public function on_import( $settings ) {
		if ( empty( $settings['library'] ) || 'svg' !== $settings['library'] || empty( $settings['value']['url'] ) ) {
			return $settings;
		}

		add_filter( 'upload_mimes', [ $this, 'support_svg_import' ], 100 );

		$imported = Plugin::$instance->templates_manager->get_import_images_instance()->import( $settings['value'] );

		remove_filter( 'upload_mimes', [ $this, 'support_svg_import' ], 100 );

		if ( ! $imported ) {
			$settings['value'] = '';
			$settings['library'] = '';
		} else {
			$settings['value'] = $imported;
		}
		return $settings;
	}
}
includes/controls/code.php000064400000003677151327220420011653 0ustar00<?php
namespace Elementor;

use Elementor\Modules\DynamicTags\Module as TagsModule;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor code control.
 *
 * A base control for creating code control. Displays a code editor textarea.
 * Based on Ace editor (@see https://ace.c9.io/).
 *
 * @since 1.0.0
 */
class Control_Code extends Base_Data_Control {

	/**
	 * Get code control type.
	 *
	 * Retrieve the control type, in this case `code`.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return 'code';
	}

	/**
	 * Get code control default settings.
	 *
	 * Retrieve the default settings of the code control. Used to return the default
	 * settings while initializing the code control.
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @return array Control default settings.
	 */
	protected function get_default_settings() {
		return [
			'label_block' => true,
			'language' => 'html', // html/css
			'rows' => 10,
			'dynamic' => [
				'categories' => [ TagsModule::TEXT_CATEGORY ],
			],
		];
	}

	/**
	 * Render code control output in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function content_template() {
		?>
		<div class="elementor-control-field">
			<label for="<?php $this->print_control_uid(); ?>" class="elementor-control-title">{{{ data.label }}}</label>
			<div class="elementor-control-input-wrapper elementor-control-dynamic-switcher-wrapper">
				<textarea id="<?php $this->print_control_uid(); ?>" rows="{{ data.rows }}" class="elementor-input-style elementor-code-editor" data-setting="{{ data.name }}"></textarea>
			</div>
		</div>
		<# if ( data.description ) { #>
			<div class="elementor-control-field-description">{{{ data.description }}}</div>
		<# } #>
		<?php
	}
}
includes/controls/base-icon-font.php000064400000001164151327220420013532 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

abstract class Base_Icon_Font {

	/**
	 * Get Icon type.
	 *
	 * Retrieve the icon type.
	 *
	 * @access public
	 * @abstract
	 */
	abstract public function get_type();

	/**
	 * Enqueue Icon scripts and styles.
	 *
	 * Used to register and enqueue custom scripts and styles used by the Icon.
	 *
	 * @access public
	 */
	abstract public function enqueue();

	/**
	 * get_css_prefix
	 * @return string
	 */
	abstract public function get_css_prefix();

	abstract public function get_icons();

	public function __construct() {}
}
includes/controls/base-units.php000064400000004354151327220420013004 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor control base units.
 *
 * An abstract class for creating new unit controls in the panel.
 *
 * @since 1.0.0
 * @abstract
 */
abstract class Control_Base_Units extends Control_Base_Multiple {

	/**
	 * Get units control default value.
	 *
	 * Retrieve the default value of the units control. Used to return the default
	 * values while initializing the units control.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array Control default value.
	 */
	public function get_default_value() {
		return [
			'unit' => 'px',
		];
	}

	/**
	 * Get units control default settings.
	 *
	 * Retrieve the default settings of the units control. Used to return the default
	 * settings while initializing the units control.
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @return array Control default settings.
	 */
	protected function get_default_settings() {
		return [
			'size_units' => [ 'px' ],
			'range' => [
				'px' => [
					'min' => 0,
					'max' => 100,
					'step' => 1,
				],
				'em' => [
					'min' => 0.1,
					'max' => 10,
					'step' => 0.1,
				],
				'rem' => [
					'min' => 0.1,
					'max' => 10,
					'step' => 0.1,
				],
				'%' => [
					'min' => 0,
					'max' => 100,
					'step' => 1,
				],
				'deg' => [
					'min' => 0,
					'max' => 360,
					'step' => 1,
				],
				'vh' => [
					'min' => 0,
					'max' => 100,
					'step' => 1,
				],
				'vw' => [
					'min' => 0,
					'max' => 100,
					'step' => 1,
				],
			],
		];
	}

	/**
	 * Print units control settings.
	 *
	 * Used to generate the units control template in the editor.
	 *
	 * @since 1.0.0
	 * @access protected
	 */
	protected function print_units_template() {
		?>
		<# if ( data.size_units && data.size_units.length > 1 ) { #>
		<div class="elementor-units-choices">
			<# _.each( data.size_units, function( unit ) { #>
			<input id="elementor-choose-{{ data._cid + data.name + unit }}" type="radio" name="elementor-choose-{{ data.name + data._cid }}" data-setting="unit" value="{{ unit }}">
			<label class="elementor-units-choices-label" for="elementor-choose-{{ data._cid + data.name + unit }}">{{{ unit }}}</label>
			<# } ); #>
		</div>
		<# } #>
		<?php
	}
}
includes/controls/number.php000064400000004133151327220420012215 0ustar00<?php
namespace Elementor;

use Elementor\Modules\DynamicTags\Module as TagsModule;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor number control.
 *
 * A base control for creating a number control. Displays a simple number input.
 *
 * @since 1.0.0
 */
class Control_Number extends Base_Data_Control {

	/**
	 * Get number control type.
	 *
	 * Retrieve the control type, in this case `number`.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return 'number';
	}

	/**
	 * Get number control default settings.
	 *
	 * Retrieve the default settings of the number control. Used to return the
	 * default settings while initializing the number control.
	 *
	 * @since 1.5.0
	 * @access protected
	 *
	 * @return array Control default settings.
	 */
	protected function get_default_settings() {
		return [
			'min' => '',
			'max' => '',
			'step' => '',
			'placeholder' => '',
			'title' => '',
			'dynamic' => [
				'categories' => [ TagsModule::NUMBER_CATEGORY ],
			],
		];
	}

	/**
	 * Render number control output in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function content_template() {
		?>
		<div class="elementor-control-field">
			<label for="<?php $this->print_control_uid(); ?>" class="elementor-control-title">{{{ data.label }}}</label>
			<div class="elementor-control-input-wrapper elementor-control-dynamic-switcher-wrapper">
				<input id="<?php $this->print_control_uid(); ?>" type="number" min="{{ data.min }}" max="{{ data.max }}" step="{{ data.step }}" class="tooltip-target elementor-control-tag-area elementor-control-unit-2" data-tooltip="{{ data.title }}" title="{{ data.title }}" data-setting="{{ data.name }}" placeholder="{{ view.getControlPlaceholder() }}" />
			</div>
		</div>
		<# if ( data.description ) { #>
		<div class="elementor-control-field-description">{{{ data.description }}}</div>
		<# } #>
		<?php
	}
}
includes/controls/base.php000064400000005453151327220420011645 0ustar00<?php
namespace Elementor;

use Elementor\Core\Base\Base_Object;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor base control.
 *
 * An abstract class for creating new controls in the panel.
 *
 * @since 1.0.0
 * @abstract
 */
abstract class Base_Control extends Base_Object {

	/**
	 * Base settings.
	 *
	 * Holds all the base settings of the control.
	 *
	 * @access private
	 *
	 * @var array
	 */
	private $_base_settings = [
		'label' => '',
		'description' => '',
		'show_label' => true,
		'label_block' => false,
		'separator' => 'default',
	];

	/**
	 * Get features.
	 *
	 * Retrieve the list of all the available features. Currently Elementor uses only
	 * the `UI` feature.
	 *
	 * @since 1.5.0
	 * @access public
	 * @static
	 *
	 * @return array Features array.
	 */
	public static function get_features() {
		return [];
	}

	/**
	 * Get control type.
	 *
	 * Retrieve the control type.
	 *
	 * @since 1.5.0
	 * @access public
	 * @abstract
	 */
	abstract public function get_type();

	/**
	 * Control base constructor.
	 *
	 * Initializing the control base class.
	 *
	 * @since 1.5.0
	 * @access public
	 */
	public function __construct() {
		$this->set_settings( array_merge( $this->_base_settings, $this->get_default_settings() ) );

		$this->set_settings( 'features', static::get_features() );
	}

	/**
	 * Enqueue control scripts and styles.
	 *
	 * Used to register and enqueue custom scripts and styles used by the control.
	 *
	 * @since 1.5.0
	 * @access public
	 */
	public function enqueue() {}

	/**
	 * Control content template.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * Note that the content template is wrapped by Base_Control::print_template().
	 *
	 * @since 1.5.0
	 * @access public
	 * @abstract
	 */
	abstract public function content_template();

	/**
	 * Print control template.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 1.5.0
	 * @access public
	 */
	final public function print_template() {
		?>
		<script type="text/html" id="tmpl-elementor-control-<?php echo esc_attr( $this->get_type() ); ?>-content">
			<div class="elementor-control-content">
				<?php
				$this->content_template();
				?>
			</div>
		</script>
		<?php
	}

	/**
	 * Get default control settings.
	 *
	 * Retrieve the default settings of the control. Used to return the default
	 * settings while initializing the control.
	 *
	 * @since 1.5.0
	 * @access protected
	 *
	 * @return array Control default settings.
	 */
	protected function get_default_settings() {
		return [];
	}

	public static function get_assets( $setting ) {
		return [];
	}
}
includes/controls/gallery.php000064400000007063151327220420012371 0ustar00<?php
namespace Elementor;

use Elementor\Modules\DynamicTags\Module as TagsModule;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor gallery control.
 *
 * A base control for creating gallery chooser control. Based on the WordPress
 * media library galleries. Used to select images from the WordPress media library.
 *
 * @since 1.0.0
 */
class Control_Gallery extends Base_Data_Control {

	/**
	 * Get gallery control type.
	 *
	 * Retrieve the control type, in this case `gallery`.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return 'gallery';
	}

	/**
	 * Import gallery images.
	 *
	 * Used to import gallery control files from external sites while importing
	 * Elementor template JSON file, and replacing the old data.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param array $settings Control settings
	 *
	 * @return array Control settings.
	 */
	public function on_import( $settings ) {
		foreach ( $settings as &$attachment ) {
			if ( empty( $attachment['url'] ) ) {
				continue;
			}

			$attachment = Plugin::$instance->templates_manager->get_import_images_instance()->import( $attachment );
		}

		// Filter out attachments that don't exist
		$settings = array_filter( $settings );

		return $settings;
	}

	/**
	 * Render gallery control output in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function content_template() {
		?>
		<div class="elementor-control-field">
			<div class="elementor-control-title">{{{ data.label }}}</div>
			<div class="elementor-control-input-wrapper">
				<# if ( data.description ) { #>
				<div class="elementor-control-field-description">{{{ data.description }}}</div>
				<# } #>
				<div class="elementor-control-media__content elementor-control-tag-area">
					<div class="elementor-control-gallery-status elementor-control-dynamic-switcher-wrapper">
						<span class="elementor-control-gallery-status-title"></span>
						<span class="elementor-control-gallery-clear elementor-control-unit-1"><i class="eicon-trash-o" aria-hidden="true"></i></span>
					</div>
					<div class="elementor-control-gallery-content">
						<div class="elementor-control-gallery-thumbnails"></div>
						<div class="elementor-control-gallery-edit"><span><i class="eicon-pencil" aria-hidden="true"></i></span></div>
						<button class="elementor-button elementor-control-gallery-add" aria-label="<?php echo esc_html__( 'Add Images', 'elementor' ); ?>"><i class="eicon-plus-circle" aria-hidden="true"></i></button>
					</div>
				</div>
			</div>
		</div>
		<?php
	}

	/**
	 * Get gallery control default settings.
	 *
	 * Retrieve the default settings of the gallery control. Used to return the
	 * default settings while initializing the gallery control.
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @return array Control default settings.
	 */
	protected function get_default_settings() {
		return [
			'label_block' => true,
			'separator' => 'none',
			'dynamic' => [
				'categories' => [ TagsModule::GALLERY_CATEGORY ],
				'returnType' => 'object',
			],
		];
	}

	/**
	 * Get gallery control default values.
	 *
	 * Retrieve the default value of the gallery control. Used to return the default
	 * values while initializing the gallery control.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array Control default value.
	 */
	public function get_default_value() {
		return [];
	}
}
includes/controls/tabs.php000064400000002437151327220420011663 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor tabs control.
 *
 * A base control for creating tabs control. Displays a tabs header for `tab`
 * controls.
 *
 * Note: Do not use it directly, instead use: `$widget->start_controls_tabs()`
 * and in the end `$widget->end_controls_tabs()`.
 *
 * @since 1.0.0
 */
class Control_Tabs extends Base_UI_Control {

	/**
	 * Get tabs control type.
	 *
	 * Retrieve the control type, in this case `tabs`.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return 'tabs';
	}

	/**
	 * Render tabs control output in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function content_template() {}

	/**
	 * Get tabs control default settings.
	 *
	 * Retrieve the default settings of the tabs control. Used to return the
	 * default settings while initializing the tabs control.
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @return array Control default settings.
	 */
	protected function get_default_settings() {
		return [
			'separator' => 'none',
		];
	}
}
includes/controls/tab.php000064400000002562151327220420011477 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor tab control.
 *
 * A base control for creating tab control. Displays a tab header for a set of
 * controls.
 *
 * Note: Do not use it directly, instead use: `$widget->start_controls_tab()`
 * and in the end `$widget->end_controls_tab()`.
 *
 * @since 1.0.0
 */
class Control_Tab extends Base_UI_Control {

	/**
	 * Get tab control type.
	 *
	 * Retrieve the control type, in this case `tab`.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return 'tab';
	}

	/**
	 * Render tab control output in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function content_template() {
		?>
			<div class="elementor-panel-tab-heading">
				{{{ data.label }}}
			</div>
		<?php
	}

	/**
	 * Get tab control default settings.
	 *
	 * Retrieve the default settings of the tab control. Used to return the
	 * default settings while initializing the tab control.
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @return array Control default settings.
	 */
	protected function get_default_settings() {
		return [
			'separator' => 'none',
		];
	}
}
includes/controls/divider.php000064400000002271151327220420012354 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor divider control.
 *
 * A base control for creating divider control. Displays horizontal line in
 * the panel.
 *
 * @since 2.0.0
 */
class Control_Divider extends Base_UI_Control {

	/**
	 * Get divider control type.
	 *
	 * Retrieve the control type, in this case `divider`.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return 'divider';
	}

	/**
	 * Get divider control default settings.
	 *
	 * Retrieve the default settings of the divider control. Used to
	 * return the default settings while initializing the divider
	 * control.
	 *
	 * @since 2.0.0
	 * @access protected
	 *
	 * @return array Control default settings.
	 */
	protected function get_default_settings() {
		return [
			'separator' => 'none',
		];
	}

	/**
	 * Render divider control output in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 2.0.0
	 * @access public
	 */
	public function content_template() {}
}
includes/controls/wysiwyg.php000064400000003255151327220420012453 0ustar00<?php
namespace Elementor;

use Elementor\Modules\DynamicTags\Module as TagsModule;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor WYSIWYG control.
 *
 * A base control for creating WYSIWYG control. Displays a WordPress WYSIWYG
 * (TinyMCE) editor.
 *
 * @since 1.0.0
 */
class Control_Wysiwyg extends Base_Data_Control {

	/**
	 * Get wysiwyg control type.
	 *
	 * Retrieve the control type, in this case `wysiwyg`.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return 'wysiwyg';
	}

	/**
	 * Render wysiwyg control output in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function content_template() {
		?>
		<div class="elementor-control-field">
			<div class="elementor-control-title">{{{ data.label }}}</div>
			<div class="elementor-control-input-wrapper elementor-control-tag-area"></div>
		</div>
		<# if ( data.description ) { #>
		<div class="elementor-control-field-description">{{{ data.description }}}</div>
		<# } #>
		<?php
	}

	/**
	 * Retrieve textarea control default settings.
	 *
	 * Get the default settings of the textarea control. Used to return the
	 * default settings while initializing the textarea control.
	 *
	 * @since 2.0.0
	 * @access protected
	 *
	 * @return array Control default settings.
	 */
	protected function get_default_settings() {
		return [
			'label_block' => true,
			'dynamic' => [
				'active' => true,
				'categories' => [ TagsModule::TEXT_CATEGORY ],
			],
		];
	}
}
includes/controls/wp-widget.php000064400000002542151327220420012636 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor WordPress widget control.
 *
 * A base control for creating WordPress widget control. Displays native
 * WordPress widgets. This a private control for internal use.
 *
 * @since 1.0.0
 */
class Control_WP_Widget extends Base_Data_Control {

	/**
	 * Get WordPress widget control type.
	 *
	 * Retrieve the control type, in this case `wp_widget`.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return 'wp_widget';
	}

	/**
	 * Get WordPress widget control default values.
	 *
	 * Retrieve the default value of the WordPress widget control. Used to return the
	 * default values while initializing the WordPress widget control.
	 *
	 * @since 1.4.3
	 * @access public
	 *
	 * @return array Control default value.
	 */
	public function get_default_value() {
		return [];
	}

	/**
	 * Render WordPress widget control output in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function content_template() {
		?>
		<form action="" method="post">
			<div class="wp-widget-form-loading">Loading..</div>
		</form>
		<?php
	}
}
includes/controls/color.php000064400000004044151327220420012044 0ustar00<?php
namespace Elementor;

use Elementor\Modules\DynamicTags\Module as TagsModule;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor color control.
 *
 * A base control for creating color control. Displays a color picker field with
 * an alpha slider. Includes a customizable color palette that can be preset by
 * the user. Accepts a `scheme` argument that allows you to set a value from the
 * active color scheme as the default value returned by the control.
 *
 * @since 1.0.0
 */
class Control_Color extends Base_Data_Control {

	/**
	 * Get color control type.
	 *
	 * Retrieve the control type, in this case `color`.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return 'color';
	}

	/**
	 * Render color control output in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function content_template() {
		?>
		<div class="elementor-control-field">
			<label class="elementor-control-title">{{{ data.label || '' }}}</label>
			<div class="elementor-control-input-wrapper elementor-control-dynamic-switcher-wrapper elementor-control-unit-5">
				<div class="elementor-color-picker-placeholder"></div>
			</div>
		</div>
		<# if ( data.description ) { #>
		<div class="elementor-control-field-description">{{{ data.description }}}</div>
		<# } #>
		<?php
	}

	/**
	 * Get color control default settings.
	 *
	 * Retrieve the default settings of the color control. Used to return the default
	 * settings while initializing the color control.
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @return array Control default settings.
	 */
	protected function get_default_settings() {
		return [
			'alpha' => true,
			'scheme' => '',
			'dynamic' => [
				'categories' => [
					TagsModule::COLOR_CATEGORY,
				],
				'active' => true,
			],
			'global' => [
				'active' => true,
			],
		];
	}
}
includes/controls/switcher.php000064400000004116151327220420012556 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor switcher control.
 *
 * A base control for creating switcher control. Displays an on/off switcher,
 * basically a fancy UI representation of a checkbox.
 *
 * @since 1.0.0
 */
class Control_Switcher extends Base_Data_Control {

	/**
	 * Get switcher control type.
	 *
	 * Retrieve the control type, in this case `switcher`.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return 'switcher';
	}

	/**
	 * Render switcher control output in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function content_template() {
		?>
		<div class="elementor-control-field">
			<label for="<?php $this->print_control_uid(); ?>" class="elementor-control-title">{{{ data.label }}}</label>
			<div class="elementor-control-input-wrapper">
				<label class="elementor-switch elementor-control-unit-2">
					<input id="<?php $this->print_control_uid(); ?>" type="checkbox" data-setting="{{ data.name }}" class="elementor-switch-input" value="{{ data.return_value }}">
					<span class="elementor-switch-label" data-on="{{ data.label_on }}" data-off="{{ data.label_off }}"></span>
					<span class="elementor-switch-handle"></span>
				</label>
			</div>
		</div>
		<# if ( data.description ) { #>
		<div class="elementor-control-field-description">{{{ data.description }}}</div>
		<# } #>
		<?php
	}

	/**
	 * Get switcher control default settings.
	 *
	 * Retrieve the default settings of the switcher control. Used to return the
	 * default settings while initializing the switcher control.
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @return array Control default settings.
	 */
	protected function get_default_settings() {
		return [
			'label_off' => esc_html__( 'No', 'elementor' ),
			'label_on' => esc_html__( 'Yes', 'elementor' ),
			'return_value' => 'yes',
		];
	}
}
includes/controls/text.php000064400000004054151327220420011713 0ustar00<?php
namespace Elementor;

use Elementor\Modules\DynamicTags\Module as TagsModule;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor text control.
 *
 * A base control for creating text control. Displays a simple text input.
 *
 * @since 1.0.0
 */
class Control_Text extends Base_Data_Control {

	/**
	 * Get text control type.
	 *
	 * Retrieve the control type, in this case `text`.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return 'text';
	}

	/**
	 * Render text control output in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function content_template() {
		?>
		<div class="elementor-control-field">
			<# if ( data.label ) {#>
				<label for="<?php $this->print_control_uid(); ?>" class="elementor-control-title">{{{ data.label }}}</label>
			<# } #>
			<div class="elementor-control-input-wrapper elementor-control-unit-5 elementor-control-dynamic-switcher-wrapper">
				<input id="<?php $this->print_control_uid(); ?>" type="{{ data.input_type }}" class="tooltip-target elementor-control-tag-area" data-tooltip="{{ data.title }}" title="{{ data.title }}" data-setting="{{ data.name }}" placeholder="{{ view.getControlPlaceholder() }}" />
			</div>
		</div>
		<# if ( data.description ) { #>
			<div class="elementor-control-field-description">{{{ data.description }}}</div>
		<# } #>
		<?php
	}

	/**
	 * Get text control default settings.
	 *
	 * Retrieve the default settings of the text control. Used to return the
	 * default settings while initializing the text control.
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @return array Control default settings.
	 */
	protected function get_default_settings() {
		return [
			'input_type' => 'text',
			'placeholder' => '',
			'title' => '',
			'dynamic' => [
				'categories' => [
					TagsModule::TEXT_CATEGORY,
				],
			],
		];
	}
}
includes/controls/text-shadow.php000064400000006210151327220420013172 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor text shadow control.
 *
 * A base control for creating text shadows control. Displays input fields for
 * horizontal shadow, vertical shadow, shadow blur and shadow color.
 *
 * @since 1.6.0
 */
class Control_Text_Shadow extends Control_Base_Multiple {

	/**
	 * Get text shadow control type.
	 *
	 * Retrieve the control type, in this case `text_shadow`.
	 *
	 * @since 1.6.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return 'text_shadow';
	}

	/**
	 * Get text shadow control default values.
	 *
	 * Retrieve the default value of the text shadow control. Used to return the
	 * default values while initializing the text shadow control.
	 *
	 * @since 1.6.0
	 * @access public
	 *
	 * @return array Control default value.
	 */
	public function get_default_value() {
		return [
			'horizontal' => 0,
			'vertical' => 0,
			'blur' => 10,
			'color' => 'rgba(0,0,0,0.3)',
		];
	}

	/**
	 * Get text shadow control sliders.
	 *
	 * Retrieve the sliders of the text shadow control. Sliders are used while
	 * rendering the control output in the editor.
	 *
	 * @since 1.6.0
	 * @access public
	 *
	 * @return array Control sliders.
	 */
	public function get_sliders() {
		return [
			'blur' => [
				'label' => esc_html__( 'Blur', 'elementor' ),
				'min' => 0,
				'max' => 100,
			],
			'horizontal' => [
				'label' => esc_html__( 'Horizontal', 'elementor' ),
				'min' => -100,
				'max' => 100,
			],
			'vertical' => [
				'label' => esc_html__( 'Vertical', 'elementor' ),
				'min' => -100,
				'max' => 100,
			],
		];
	}

	/**
	 * Render text shadow control output in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 1.6.0
	 * @access public
	 */
	public function content_template() {
		?>
		<div class="elementor-shadow-box">
			<div class="elementor-control-field elementor-color-picker-wrapper">
				<label class="elementor-control-title"><?php echo esc_html__( 'Color', 'elementor' ); ?></label>
				<div class="elementor-control-input-wrapper elementor-control-unit-1">
					<div class="elementor-color-picker-placeholder"></div>
				</div>
			</div>
			<?php
			foreach ( $this->get_sliders() as $slider_name => $slider ) :
				?>
				<div class="elementor-shadow-slider elementor-control-type-slider">
					<label for="<?php $this->print_control_uid( $slider_name ); ?>" class="elementor-control-title"><?php echo esc_html( $slider['label'] ); ?></label>
					<div class="elementor-control-input-wrapper">
						<div class="elementor-slider" data-input="<?php echo esc_attr( $slider_name ); ?>"></div>
						<div class="elementor-slider-input elementor-control-unit-2">
							<input id="<?php $this->print_control_uid( $slider_name ); ?>" type="number" min="<?php echo esc_attr( $slider['min'] ); ?>" max="<?php echo esc_attr( $slider['max'] ); ?>" data-setting="<?php echo esc_attr( $slider_name ); ?>"/>
						</div>
					</div>
				</div>
			<?php endforeach; ?>
		</div>
		<?php
	}
}
includes/controls/select.php000064400000004720151327220420012206 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor select control.
 *
 * A base control for creating select control. Displays a simple select box.
 * It accepts an array in which the `key` is the option value and the `value` is
 * the option name.
 *
 * @since 1.0.0
 */
class Control_Select extends Base_Data_Control {

	/**
	 * Get select control type.
	 *
	 * Retrieve the control type, in this case `select`.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return 'select';
	}

	/**
	 * Get select control default settings.
	 *
	 * Retrieve the default settings of the select control. Used to return the
	 * default settings while initializing the select control.
	 *
	 * @since 2.0.0
	 * @access protected
	 *
	 * @return array Control default settings.
	 */
	protected function get_default_settings() {
		return [
			'options' => [],
		];
	}

	/**
	 * Render select control output in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function content_template() {
		?>
		<div class="elementor-control-field">
			<# if ( data.label ) {#>
				<label for="<?php $this->print_control_uid(); ?>" class="elementor-control-title">{{{ data.label }}}</label>
			<# } #>
			<div class="elementor-control-input-wrapper elementor-control-unit-5">
				<select id="<?php $this->print_control_uid(); ?>" data-setting="{{ data.name }}">
				<#
					var printOptions = function( options ) {
						_.each( options, function( option_title, option_value ) { #>
								<option value="{{ option_value }}">{{{ option_title }}}</option>
						<# } );
					};

					if ( data.groups ) {
						for ( var groupIndex in data.groups ) {
							var groupArgs = data.groups[ groupIndex ];
								if ( groupArgs.options ) { #>
									<optgroup label="{{ groupArgs.label }}">
										<# printOptions( groupArgs.options ) #>
									</optgroup>
								<# } else if ( _.isString( groupArgs ) ) { #>
									<option value="{{ groupIndex }}">{{{ groupArgs }}}</option>
								<# }
						}
					} else {
						printOptions( data.options );
					}
				#>
				</select>
			</div>
		</div>
		<# if ( data.description ) { #>
			<div class="elementor-control-field-description">{{{ data.description }}}</div>
		<# } #>
		<?php
	}
}
includes/admin-templates/new-template.php000064400000007716151327220420014562 0ustar00<?php
namespace Elementor;

use Elementor\Core\Base\Document;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

$document_types = Plugin::$instance->documents->get_document_types();

$types = [];

$selected = get_query_var( 'elementor_library_type' );

foreach ( $document_types as $document_type ) {
	if ( $document_type::get_property( 'show_in_library' ) ) {
		/**
		 * @var Document $instance
		 */
		$instance = new $document_type();

		$types[ $instance->get_name() ] = $document_type::get_title();
	}
}

/**
 * Create new template library dialog types.
 *
 * Filters the dialog types when printing new template dialog.
 *
 * @since 2.0.0
 *
 * @param array    $types          Types data.
 * @param Document $document_types Document types.
 */
$types = apply_filters( 'elementor/template-library/create_new_dialog_types', $types, $document_types );
?>
<script type="text/template" id="tmpl-elementor-new-template">
	<div id="elementor-new-template__description">
		<div id="elementor-new-template__description__title"><?php
			printf(
				/* translators: %1$s Span open tag, %2$s: Span close tag. */
				esc_html__( 'Templates Help You %1$sWork Efficiently%2$s', 'elementor' ),
				'<span>',
				'</span>'
			);
			?></div>
		<div id="elementor-new-template__description__content"><?php echo esc_html__( 'Use templates to create the different pieces of your site, and reuse them with one click whenever needed.', 'elementor' ); ?></div>
		<?php
		/*
		<div id="elementor-new-template__take_a_tour">
			<i class="eicon-play-o"></i>
			<a href="#"><?php echo esc_html__( 'Take The Video Tour', 'elementor\' ); ?></a>
		</div>
		*/
		?>
	</div>
	<form id="elementor-new-template__form" action="<?php esc_url( admin_url( '/edit.php' ) ); ?>">
		<input type="hidden" name="post_type" value="elementor_library">
		<input type="hidden" name="action" value="elementor_new_post">
		<?php // PHPCS - a nonce doesn't have to be escaped. ?>
		<input type="hidden" name="_wpnonce" value="<?php echo wp_create_nonce( 'elementor_action_new_post' ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>">
		<div id="elementor-new-template__form__title"><?php echo esc_html__( 'Choose Template Type', 'elementor' ); ?></div>
		<div id="elementor-new-template__form__template-type__wrapper" class="elementor-form-field">
			<label for="elementor-new-template__form__template-type" class="elementor-form-field__label"><?php echo esc_html__( 'Select the type of template you want to work on', 'elementor' ); ?></label>
			<div class="elementor-form-field__select__wrapper">
				<select id="elementor-new-template__form__template-type" class="elementor-form-field__select" name="template_type" required>
					<option value=""><?php echo esc_html__( 'Select', 'elementor' ); ?>...</option>
					<?php
					foreach ( $types as $value => $type_title ) {
						printf( '<option value="%1$s" %2$s>%3$s</option>', esc_attr( $value ), selected( $selected, $value, false ), esc_html( $type_title ) );
					}
					?>
				</select>
			</div>
		</div>
		<?php
		/**
		 * Template library dialog fields.
		 *
		 * Fires after Elementor template library dialog fields are displayed.
		 *
		 * @since 2.0.0
		 */
		do_action( 'elementor/template-library/create_new_dialog_fields' );
		?>

		<div id="elementor-new-template__form__post-title__wrapper" class="elementor-form-field">
			<label for="elementor-new-template__form__post-title" class="elementor-form-field__label">
				<?php echo esc_html__( 'Name your template', 'elementor' ); ?>
			</label>
			<div class="elementor-form-field__text__wrapper">
				<input type="text" placeholder="<?php echo esc_attr__( 'Enter template name (optional)', 'elementor' ); ?>" id="elementor-new-template__form__post-title" class="elementor-form-field__text" name="post_data[post_title]">
			</div>
		</div>
		<button id="elementor-new-template__form__submit" class="elementor-button elementor-button-success"><?php echo esc_html__( 'Create Template', 'elementor' ); ?></button>
	</form>
</script>
includes/admin-templates/beta-tester.php000064400000004272151327220420014371 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}
$user = wp_get_current_user();

$ajax = Plugin::$instance->common->get_component( 'ajax' );

$beta_tester_email = $user->user_email;

/**
 * Print beta tester dialog.
 *
 * Display a dialog box to suggest the user to opt-in to the beta testers newsletter.
 *
 * Fired by `admin_footer` filter.
 *
 * @since  2.6.0
 * @access public
 */
?>
<script type="text/template" id="tmpl-elementor-beta-tester">
	<form id="elementor-beta-tester-form" method="post">
		<?php // PHPCS - This is a nonce, doesn't need to be escaped. ?>
		<input type="hidden" name="_nonce" value="<?php echo $ajax->create_nonce(); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>">
		<input type="hidden" name="action" value="elementor_beta_tester_signup" />
		<div id="elementor-beta-tester-form__caption"><?php echo esc_html__( 'Get Beta Updates', 'elementor' ); ?></div>
		<div id="elementor-beta-tester-form__description"><?php echo esc_html__( 'As a beta tester, you’ll receive an update that includes a testing version of Elementor and its content directly to your Email', 'elementor' ); ?></div>
		<div id="elementor-beta-tester-form__input-wrapper">
			<input id="elementor-beta-tester-form__email" name="beta_tester_email" type="email" placeholder="<?php echo esc_html__( 'Your Email', 'elementor' ); ?>" required value="<?php echo esc_html( $beta_tester_email ); ?>" />
			<button id="elementor-beta-tester-form__submit" class="elementor-button elementor-button-success">
				<span class="elementor-state-icon">
					<i class="eicon-loading eicon-animation-spin" aria-hidden="true"></i>
				</span>
				<?php echo esc_html__( 'Sign Up', 'elementor' ); ?>
			</button>
		</div>
		<div id="elementor-beta-tester-form__terms">
			<?php // PHPCS - The content is escaped inside the sprintf. ?>
			<?php echo sprintf( esc_html__( 'By clicking Sign Up, you agree to Elementor\'s <a href="%1$s">Terms of Service</a> and <a href="%2$s">Privacy Policy</a>', 'elementor' ), Beta_Testers::NEWSLETTER_TERMS_URL, Beta_Testers::NEWSLETTER_PRIVACY_URL ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>
		</div>
	</form>
</script>
includes/utils.php000064400000046032151327220420010226 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor utils.
 *
 * Elementor utils handler class is responsible for different utility methods
 * used by Elementor.
 *
 * @since 1.0.0
 */
class Utils {

	const DEPRECATION_RANGE = 0.4;

	const EDITOR_BREAK_LINES_OPTION_KEY = 'elementor_editor_break_lines';

	/**
	 * A list of safe tage for `validate_html_tag` method.
	 */
	const ALLOWED_HTML_WRAPPER_TAGS = [
		'a',
		'article',
		'aside',
		'button',
		'div',
		'footer',
		'h1',
		'h2',
		'h3',
		'h4',
		'h5',
		'h6',
		'header',
		'main',
		'nav',
		'p',
		'section',
		'span',
	];

	const EXTENDED_ALLOWED_HTML_TAGS = [
		'iframe' => [
			'iframe' => [
				'allow' => true,
				'allowfullscreen' => true,
				'frameborder' => true,
				'height' => true,
				'loading' => true,
				'name' => true,
				'referrerpolicy' => true,
				'sandbox' => true,
				'src' => true,
				'width' => true,
			],
		],
		'svg' => [
			'svg' => [
				'aria-hidden' => true,
				'aria-labelledby' => true,
				'class' => true,
				'height' => true,
				'role' => true,
				'viewbox' => true,
				'width' => true,
				'xmlns' => true,
			],
			'g' => [
				'fill' => true,
			],
			'title' => [
				'title' => true,
			],
			'path' => [
				'd' => true,
				'fill' => true,
			],
		],
		'image' => [
			'img' => [
				'srcset' => true,
				'sizes' => true,
			],
		],
	];

	/**
	 * Is ajax.
	 *
	 * Whether the current request is a WordPress ajax request.
	 *
	 * @since 1.0.0
	 * @deprecated 2.6.0 Use `wp_doing_ajax()` instead.
	 * @access public
	 * @static
	 *
	 * @return bool True if it's a WordPress ajax request, false otherwise.
	 */
	public static function is_ajax() {
		 _deprecated_function( __METHOD__, '2.6.0', 'wp_doing_ajax()' );

		return wp_doing_ajax();
	}

	/**
	 * Is WP CLI.
	 *
	 * @return bool
	 */
	public static function is_wp_cli() {
		return defined( 'WP_CLI' ) && WP_CLI;
	}

	/**
	 * Is script debug.
	 *
	 * Whether script debug is enabled or not.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @return bool True if it's a script debug is active, false otherwise.
	 */
	public static function is_script_debug() {
		return defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG;
	}

	/**
	 * Get pro link.
	 *
	 * Retrieve the link to Elementor Pro.
	 *
	 * @since 1.7.0
	 * @access public
	 * @static
	 *
	 * @param string $link URL to Elementor pro.
	 *
	 * @return string Elementor pro link.
	 */
	public static function get_pro_link( $link ) {
		static $theme_name = false;

		if ( ! $theme_name ) {
			$theme_obj = wp_get_theme();
			if ( $theme_obj->parent() ) {
				$theme_name = $theme_obj->parent()->get( 'Name' );
			} else {
				$theme_name = $theme_obj->get( 'Name' );
			}

			$theme_name = sanitize_key( $theme_name );
		}

		$link = add_query_arg( 'utm_term', $theme_name, $link );

		return $link;
	}

	/**
	 * Replace URLs.
	 *
	 * Replace old URLs to new URLs. This method also updates all the Elementor data.
	 *
	 * @since 2.1.0
	 * @static
	 * @access public
	 *
	 * @param $from
	 * @param $to
	 *
	 * @return string
	 * @throws \Exception
	 */
	public static function replace_urls( $from, $to ) {
		$from = trim( $from );
		$to = trim( $to );

		if ( $from === $to ) {
			throw new \Exception( esc_html__( 'The `from` and `to` URL\'s must be different', 'elementor' ) );
		}

		$is_valid_urls = ( filter_var( $from, FILTER_VALIDATE_URL ) && filter_var( $to, FILTER_VALIDATE_URL ) );
		if ( ! $is_valid_urls ) {
			throw new \Exception( esc_html__( 'The `from` and `to` URL\'s must be valid URL\'s', 'elementor' ) );
		}

		global $wpdb;

		// @codingStandardsIgnoreStart cannot use `$wpdb->prepare` because it remove's the backslashes
		$rows_affected = $wpdb->query(
			"UPDATE {$wpdb->postmeta} " .
			"SET `meta_value` = REPLACE(`meta_value`, '" . str_replace( '/', '\\\/', $from ) . "', '" . str_replace( '/', '\\\/', $to ) . "') " .
			"WHERE `meta_key` = '_elementor_data' AND `meta_value` LIKE '[%' ;" ); // meta_value LIKE '[%' are json formatted
		// @codingStandardsIgnoreEnd

		if ( false === $rows_affected ) {
			throw new \Exception( esc_html__( 'An error occurred', 'elementor' ) );
		}

		// Allow externals to replace-urls, when they have to.
		$rows_affected += (int) apply_filters( 'elementor/tools/replace-urls', 0, $from, $to );

		Plugin::$instance->files_manager->clear_cache();

		return sprintf(
			/* translators: %d: Number of rows. */
			_n( '%d row affected.', '%d rows affected.', $rows_affected, 'elementor' ),
			$rows_affected
		);
	}

	/**
	 * Is post supports Elementor.
	 *
	 * Whether the post supports editing with Elementor.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @param int $post_id Optional. Post ID. Default is `0`.
	 *
	 * @return string True if post supports editing with Elementor, false otherwise.
	 */
	public static function is_post_support( $post_id = 0 ) {
		$post_type = get_post_type( $post_id );

		$is_supported = self::is_post_type_support( $post_type );

		/**
		 * Is post type support.
		 *
		 * Filters whether the post type supports editing with Elementor.
		 *
		 * @since 1.0.0
		 * @deprecated 2.2.0 Use `elementor/utils/is_post_support` Instead
		 *
		 * @param bool $is_supported Whether the post type supports editing with Elementor.
		 * @param int $post_id Post ID.
		 * @param string $post_type Post type.
		 */
		$is_supported = apply_filters( 'elementor/utils/is_post_type_support', $is_supported, $post_id, $post_type );

		/**
		 * Is post support.
		 *
		 * Filters whether the post supports editing with Elementor.
		 *
		 * @since 2.2.0
		 *
		 * @param bool $is_supported Whether the post type supports editing with Elementor.
		 * @param int $post_id Post ID.
		 * @param string $post_type Post type.
		 */
		$is_supported = apply_filters( 'elementor/utils/is_post_support', $is_supported, $post_id, $post_type );

		return $is_supported;
	}


	/**
	 * Is post type supports Elementor.
	 *
	 * Whether the post type supports editing with Elementor.
	 *
	 * @since 2.2.0
	 * @access public
	 * @static
	 *
	 * @param string $post_type Post Type.
	 *
	 * @return string True if post type supports editing with Elementor, false otherwise.
	 */
	public static function is_post_type_support( $post_type ) {
		if ( ! post_type_exists( $post_type ) ) {
			return false;
		}

		if ( ! post_type_supports( $post_type, 'elementor' ) ) {
			return false;
		}

		return true;
	}

	/**
	 * Get placeholder image source.
	 *
	 * Retrieve the source of the placeholder image.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @return string The source of the default placeholder image used by Elementor.
	 */
	public static function get_placeholder_image_src() {
		$placeholder_image = ELEMENTOR_ASSETS_URL . 'images/placeholder.png';

		/**
		 * Get placeholder image source.
		 *
		 * Filters the source of the default placeholder image used by Elementor.
		 *
		 * @since 1.0.0
		 *
		 * @param string $placeholder_image The source of the default placeholder image.
		 */
		$placeholder_image = apply_filters( 'elementor/utils/get_placeholder_image_src', $placeholder_image );

		return $placeholder_image;
	}

	/**
	 * Generate random string.
	 *
	 * Returns a string containing a hexadecimal representation of random number.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @return string Random string.
	 */
	public static function generate_random_string() {
		return dechex( rand() );
	}

	/**
	 * Do not cache.
	 *
	 * Tell WordPress cache plugins not to cache this request.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 */
	public static function do_not_cache() {
		if ( ! defined( 'DONOTCACHEPAGE' ) ) {
			define( 'DONOTCACHEPAGE', true );
		}

		if ( ! defined( 'DONOTCACHEDB' ) ) {
			define( 'DONOTCACHEDB', true );
		}

		if ( ! defined( 'DONOTMINIFY' ) ) {
			define( 'DONOTMINIFY', true );
		}

		if ( ! defined( 'DONOTCDN' ) ) {
			define( 'DONOTCDN', true );
		}

		if ( ! defined( 'DONOTCACHCEOBJECT' ) ) {
			define( 'DONOTCACHCEOBJECT', true );
		}

		// Set the headers to prevent caching for the different browsers.
		nocache_headers();
	}

	/**
	 * Get timezone string.
	 *
	 * Retrieve timezone string from the WordPress database.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @return string Timezone string.
	 */
	public static function get_timezone_string() {
		$current_offset = (float) get_option( 'gmt_offset' );
		$timezone_string = get_option( 'timezone_string' );

		// Create a UTC+- zone if no timezone string exists.
		if ( empty( $timezone_string ) ) {
			if ( $current_offset < 0 ) {
				$timezone_string = 'UTC' . $current_offset;
			} else {
				$timezone_string = 'UTC+' . $current_offset;
			}
		}

		return $timezone_string;
	}

	/**
	 * Get create new post URL.
	 *
	 * Retrieve a custom URL for creating a new post/page using Elementor.
	 *
	 * @since 1.9.0
	 * @access public
	 * @static
	 *
	 * @param string $post_type Optional. Post type slug. Default is 'page'.
	 * @param string|null $template_type Optional. Query arg 'template_type'. Default is null.
	 *
	 * @return string A URL for creating new post using Elementor.
	 */
	public static function get_create_new_post_url( $post_type = 'page', $template_type = null ) {
		Plugin::$instance->modules_manager->get_modules( 'dev-tools' )->deprecation->deprecated_function( __FUNCTION__, '3.3.0', 'Plugin::$instance->documents->get_create_new_post_url()' );

		return Plugin::$instance->documents->get_create_new_post_url( $post_type, $template_type );
	}

	/**
	 * Get post autosave.
	 *
	 * Retrieve an autosave for any given post.
	 *
	 * @since 1.9.2
	 * @access public
	 * @static
	 *
	 * @param int $post_id Post ID.
	 * @param int $user_id Optional. User ID. Default is `0`.
	 *
	 * @return \WP_Post|false Post autosave or false.
	 */
	public static function get_post_autosave( $post_id, $user_id = 0 ) {
		global $wpdb;

		$post = get_post( $post_id );

		$where = $wpdb->prepare( 'post_parent = %d AND post_name LIKE %s AND post_modified_gmt > %s', [ $post_id, "{$post_id}-autosave%", $post->post_modified_gmt ] );

		if ( $user_id ) {
			$where .= $wpdb->prepare( ' AND post_author = %d', $user_id );
		}

		$revision = $wpdb->get_row( "SELECT * FROM $wpdb->posts WHERE $where AND post_type = 'revision'" ); // phpcs:ignore WordPress.DB.PreparedSQL.InterpolatedNotPrepared

		if ( $revision ) {
			$revision = new \WP_Post( $revision );
		} else {
			$revision = false;
		}

		return $revision;
	}

	/**
	 * Is CPT supports custom templates.
	 *
	 * Whether the Custom Post Type supports templates.
	 *
	 * @since 2.0.0
	 * @access public
	 * @static
	 *
	 * @return bool True is templates are supported, False otherwise.
	 */
	public static function is_cpt_custom_templates_supported() {
		require_once ABSPATH . '/wp-admin/includes/theme.php';

		return method_exists( wp_get_theme(), 'get_post_templates' );
	}

	/**
	 * @since 2.1.2
	 * @access public
	 * @static
	 */
	public static function array_inject( $array, $key, $insert ) {
		$length = array_search( $key, array_keys( $array ), true ) + 1;

		return array_slice( $array, 0, $length, true ) +
			$insert +
			array_slice( $array, $length, null, true );
	}

	/**
	 * Render html attributes
	 *
	 * @access public
	 * @static
	 * @param array $attributes
	 *
	 * @return string
	 */
	public static function render_html_attributes( array $attributes ) {
		$rendered_attributes = [];

		foreach ( $attributes as $attribute_key => $attribute_values ) {
			if ( is_array( $attribute_values ) ) {
				$attribute_values = implode( ' ', $attribute_values );
			}

			$rendered_attributes[] = sprintf( '%1$s="%2$s"', $attribute_key, esc_attr( $attribute_values ) );
		}

		return implode( ' ', $rendered_attributes );
	}

	/**
	 * Safe print html attributes
	 *
	 * @access public
	 * @static
	 * @param array $attributes
	 */
	public static function print_html_attributes( array $attributes ) {
		// PHPCS - the method render_html_attributes is safe.
		echo self::render_html_attributes( $attributes ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
	}

	public static function get_meta_viewport( $context = '' ) {
		$meta_tag = '<meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover" />';

		/**
		 * Viewport meta tag.
		 *
		 * Filters the meta tag containing the viewport information.
		 *
		 * This hook can be used to change the intial viewport meta tag set by Elementor
		 * and replace it with a different viewport tag.
		 *
		 * @since 2.5.0
		 *
		 * @param string $meta_tag Viewport meta tag.
		 * @param string $context  Page context.
		 */
		$meta_tag = apply_filters( 'elementor/template/viewport_tag', $meta_tag, $context );

		return $meta_tag;
	}

	/**
	 * Add Elementor Config js vars to the relevant script handle,
	 * WP will wrap it with <script> tag.
	 * To make sure this script runs thru the `script_loader_tag` hook, use a known handle value.
	 * @param string $handle
	 * @param string $js_var
	 * @param mixed $config
	 */
	public static function print_js_config( $handle, $js_var, $config ) {
		$config = wp_json_encode( $config );

		if ( get_option( self::EDITOR_BREAK_LINES_OPTION_KEY ) ) {
			// Add new lines to avoid memory limits in some hosting servers that handles the buffer output according to new line characters
			$config = str_replace( '}},"', '}},' . PHP_EOL . '"', $config );
		}

		$script_data = 'var ' . $js_var . ' = ' . $config . ';';

		wp_add_inline_script( $handle, $script_data, 'before' );
	}

	public static function handle_deprecation( $item, $version, $replacement = null ) {
		preg_match( '/^[0-9]+\.[0-9]+/', ELEMENTOR_VERSION, $current_version );

		$current_version_as_float = (float) $current_version[0];

		preg_match( '/^[0-9]+\.[0-9]+/', $version, $alias_version );

		$alias_version_as_float = (float) $alias_version[0];

		if ( round( $current_version_as_float - $alias_version_as_float, 1 ) >= self::DEPRECATION_RANGE ) {
			_deprecated_file( $item, $version, $replacement ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
		}
	}

	/**
	 * Checks a control value for being empty, including a string of '0' not covered by PHP's empty().
	 *
	 * @param mixed $source
	 * @param bool|string $key
	 *
	 * @return bool
	 */
	public static function is_empty( $source, $key = false ) {
		if ( is_array( $source ) ) {
			if ( ! isset( $source[ $key ] ) ) {
				return true;
			}

			$source = $source[ $key ];
		}

		return '0' !== $source && empty( $source );
	}

	public static function has_pro() {
		return defined( 'ELEMENTOR_PRO_VERSION' );
	}

	/**
	 * Convert HTMLEntities to UTF-8 characters
	 *
	 * @param $string
	 * @return string
	 */
	public static function urlencode_html_entities( $string ) {
		$entities_dictionary = [
			'&#145;' => "'", // Opening single quote
			'&#146;' => "'", // Closing single quote
			'&#147;' => '"', // Closing double quote
			'&#148;' => '"', // Opening double quote
			'&#8216;' => "'", // Closing single quote
			'&#8217;' => "'", // Opening single quote
			'&#8218;' => "'", // Single low quote
			'&#8220;' => '"', // Closing double quote
			'&#8221;' => '"', // Opening double quote
			'&#8222;' => '"', // Double low quote
		];

		// Decode decimal entities
		$string = str_replace( array_keys( $entities_dictionary ), array_values( $entities_dictionary ), $string );

		return rawurlencode( html_entity_decode( $string, ENT_QUOTES | ENT_HTML5, 'UTF-8' ) );
	}

	/**
	 * Parse attributes that come as a string of comma-delimited key|value pairs.
	 * Removes Javascript events and unescaped `href` attributes.
	 *
	 * @param string $attributes_string
	 *
	 * @param string $delimiter Default comma `,`.
	 *
	 * @return array
	 */
	public static function parse_custom_attributes( $attributes_string, $delimiter = ',' ) {
		$attributes = explode( $delimiter, $attributes_string );
		$result = [];

		foreach ( $attributes as $attribute ) {
			$attr_key_value = explode( '|', $attribute );

			$attr_key = mb_strtolower( $attr_key_value[0] );

			// Remove any not allowed characters.
			preg_match( '/[-_a-z0-9]+/', $attr_key, $attr_key_matches );

			if ( empty( $attr_key_matches[0] ) ) {
				continue;
			}

			$attr_key = $attr_key_matches[0];

			// Avoid Javascript events and unescaped href.
			if ( 'href' === $attr_key || 'on' === substr( $attr_key, 0, 2 ) ) {
				continue;
			}

			if ( isset( $attr_key_value[1] ) ) {
				$attr_value = trim( $attr_key_value[1] );
			} else {
				$attr_value = '';
			}

			$result[ $attr_key ] = $attr_value;
		}

		return $result;
	}

	public static function find_element_recursive( $elements, $id ) {
		foreach ( $elements as $element ) {
			if ( $id === $element['id'] ) {
				return $element;
			}

			if ( ! empty( $element['elements'] ) ) {
				$element = self::find_element_recursive( $element['elements'], $id );

				if ( $element ) {
					return $element;
				}
			}
		}

		return false;
	}

	/**
	 * Change Submenu First Item Label
	 *
	 * Overwrite the label of the first submenu item of an admin menu item.
	 *
	 * Fired by `admin_menu` action.
	 *
	 * @since 3.1.0
	 *
	 * @param $menu_slug
	 * @param $new_label
	 * @access public
	 */
	public static function change_submenu_first_item_label( $menu_slug, $new_label ) {
		global $submenu;

		if ( isset( $submenu[ $menu_slug ] ) ) {
			// @codingStandardsIgnoreStart
			$submenu[ $menu_slug ][0][0] = $new_label;
			// @codingStandardsIgnoreEnd
		}
	}

	/**
	 * Validate an HTML tag against a safe allowed list.
	 *
	 * @param string $tag
	 *
	 * @return string
	 */
	public static function validate_html_tag( $tag ) {
		return in_array( strtolower( $tag ), self::ALLOWED_HTML_WRAPPER_TAGS ) ? $tag : 'div';
	}

	/**
	 * Safe print a validated HTML tag.
	 *
	 * @param string $tag
	 */
	public static function print_validated_html_tag( $tag ) {
		// PHPCS - the method validate_html_tag is safe.
		echo self::validate_html_tag( $tag ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
	}

	/**
	 * Print internal content (not user input) without escaping.
	 */
	public static function print_unescaped_internal_string( $string ) {
		echo $string; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
	}

	/**
	 * Get recently edited posts query.
	 *
	 * Returns `WP_Query` of the recent edited posts.
	 * By default max posts ( $args['posts_per_page'] ) is 3.
	 *
	 * @param array $args
	 *
	 * @return \WP_Query
	 */
	public static function get_recently_edited_posts_query( $args = [] ) {
		$args = wp_parse_args( $args, [
			'post_type' => 'any',
			'post_status' => [ 'publish', 'draft' ],
			'posts_per_page' => '3',
			'meta_key' => '_elementor_edit_mode',
			'meta_value' => 'builder',
			'orderby' => 'modified',
		] );

		return new \WP_Query( $args );
	}

	public static function print_wp_kses_extended( $string, array $tags ) {
		$allowed_html = wp_kses_allowed_html( 'post' );
		// Since PHP 5.6 cannot use isset() on the result of an expression.
		$extended_allowed_html_tags = self::EXTENDED_ALLOWED_HTML_TAGS;

		foreach ( $tags as $tag ) {
			if ( isset( $extended_allowed_html_tags[ $tag ] ) ) {
				$extended_tags = apply_filters( "elementor/extended_allowed_html_tags/{$tag}", self::EXTENDED_ALLOWED_HTML_TAGS[ $tag ] );
				$allowed_html = array_replace_recursive( $allowed_html, $extended_tags );
			}
		}

		echo wp_kses( $string, $allowed_html );
	}
}
includes/elements/section.php000064400000114056151327220420012350 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor section element.
 *
 * Elementor section handler class is responsible for initializing the section
 * element.
 *
 * @since 1.0.0
 */
class Element_Section extends Element_Base {

	/**
	 * Section predefined columns presets.
	 *
	 * Holds the predefined columns width for each columns count available by
	 * default by Elementor. Default is an empty array.
	 *
	 * Note that when the user creates a section he can define custom sizes for
	 * the columns. But Elementor sets default values for predefined columns.
	 *
	 * For example two columns 50% width each one, or three columns 33.33% each
	 * one. This property hold the data for those preset values.
	 *
	 * @since 1.0.0
	 * @access private
	 * @static
	 *
	 * @var array Section presets.
	 */
	private static $presets = [];

	/**
	 * Get element type.
	 *
	 * Retrieve the element type, in this case `section`.
	 *
	 * @since 2.1.0
	 * @access public
	 * @static
	 *
	 * @return string The type.
	 */
	public static function get_type() {
		return 'section';
	}

	/**
	 * Get section name.
	 *
	 * Retrieve the section name.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Section name.
	 */
	public function get_name() {
		return 'section';
	}

	/**
	 * Get section title.
	 *
	 * Retrieve the section title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Section title.
	 */
	public function get_title() {
		return esc_html__( 'Section', 'elementor' );
	}

	/**
	 * Get section icon.
	 *
	 * Retrieve the section icon.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Section icon.
	 */
	public function get_icon() {
		return 'eicon-columns';
	}

	/**
	 * Get presets.
	 *
	 * Retrieve a specific preset columns for a given columns count, or a list
	 * of all the preset if no parameters passed.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @param int $columns_count Optional. Columns count. Default is null.
	 * @param int $preset_index  Optional. Preset index. Default is null.
	 *
	 * @return array Section presets.
	 */
	public static function get_presets( $columns_count = null, $preset_index = null ) {
		if ( ! self::$presets ) {
			self::init_presets();
		}

		$presets = self::$presets;

		if ( null !== $columns_count ) {
			$presets = $presets[ $columns_count ];
		}

		if ( null !== $preset_index ) {
			$presets = $presets[ $preset_index ];
		}

		return $presets;
	}

	/**
	 * Initialize presets.
	 *
	 * Initializing the section presets and set the number of columns the
	 * section can have by default. For example a column can have two columns
	 * 50% width each one, or three columns 33.33% each one.
	 *
	 * Note that Elementor sections have default section presets but the user
	 * can set custom number of columns and define custom sizes for each column.

	 * @since 1.0.0
	 * @access public
	 * @static
	 */
	public static function init_presets() {
		$additional_presets = [
			2 => [
				[
					'preset' => [ 33, 66 ],
				],
				[
					'preset' => [ 66, 33 ],
				],
			],
			3 => [
				[
					'preset' => [ 25, 25, 50 ],
				],
				[
					'preset' => [ 50, 25, 25 ],
				],
				[
					'preset' => [ 25, 50, 25 ],
				],
				[
					'preset' => [ 16, 66, 16 ],
				],
			],
		];

		foreach ( range( 1, 10 ) as $columns_count ) {
			self::$presets[ $columns_count ] = [
				[
					'preset' => [],
				],
			];

			$preset_unit = floor( 1 / $columns_count * 100 );

			for ( $i = 0; $i < $columns_count; $i++ ) {
				self::$presets[ $columns_count ][0]['preset'][] = $preset_unit;
			}

			if ( ! empty( $additional_presets[ $columns_count ] ) ) {
				self::$presets[ $columns_count ] = array_merge( self::$presets[ $columns_count ], $additional_presets[ $columns_count ] );
			}

			foreach ( self::$presets[ $columns_count ] as $preset_index => & $preset ) {
				$preset['key'] = $columns_count . $preset_index;
			}
		}
	}

	/**
	 * Get initial config.
	 *
	 * Retrieve the current section initial configuration.
	 *
	 * Adds more configuration on top of the controls list, the tabs assigned to
	 * the control, element name, type, icon and more. This method also adds
	 * section presets.
	 *
	 * @since 2.9.0
	 * @access protected
	 *
	 * @return array The initial config.
	 */
	protected function get_initial_config() {
		$config = parent::get_initial_config();

		$config['presets'] = self::get_presets();
		$config['controls'] = $this->get_controls();
		$config['tabs_controls'] = $this->get_tabs_controls();

		return $config;
	}

	/**
	 * Register section controls.
	 *
	 * Used to add new controls to the section element.
	 *
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		$this->start_controls_section(
			'section_layout',
			[
				'label' => esc_html__( 'Layout', 'elementor' ),
				'tab' => Controls_Manager::TAB_LAYOUT,
			]
		);

		// Element Name for the Navigator
		$this->add_control(
			'_title',
			[
				'label' => esc_html__( 'Title', 'elementor' ),
				'type' => Controls_Manager::HIDDEN,
				'render_type' => 'none',
			]
		);

		$this->add_control(
			'layout',
			[
				'label' => esc_html__( 'Content Width', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => 'boxed',
				'options' => [
					'boxed' => esc_html__( 'Boxed', 'elementor' ),
					'full_width' => esc_html__( 'Full Width', 'elementor' ),
				],
				'prefix_class' => 'elementor-section-',
			]
		);

		$this->add_responsive_control(
			'content_width',
			[
				'label' => esc_html__( 'Width', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'min' => 500,
						'max' => 1600,
					],
				],
				'selectors' => [
					'{{WRAPPER}} > .elementor-container' => 'max-width: {{SIZE}}{{UNIT}};',
				],
				'condition' => [
					'layout' => [ 'boxed' ],
				],
				'separator' => 'none',
			]
		);

		$this->add_control(
			'gap',
			[
				'label' => esc_html__( 'Columns Gap', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => 'default',
				'options' => [
					'default' => esc_html__( 'Default', 'elementor' ),
					'no' => esc_html__( 'No Gap', 'elementor' ),
					'narrow' => esc_html__( 'Narrow', 'elementor' ),
					'extended' => esc_html__( 'Extended', 'elementor' ),
					'wide' => esc_html__( 'Wide', 'elementor' ),
					'wider' => esc_html__( 'Wider', 'elementor' ),
					'custom' => esc_html__( 'Custom', 'elementor' ),
				],
			]
		);

		$this->add_responsive_control(
			'gap_columns_custom',
			[
				'label' => esc_html__( 'Custom Columns Gap', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'min' => 0,
						'max' => 500,
					],
					'%' => [
						'min' => 0,
						'max' => 100,
					],
					'vh' => [
						'min' => 0,
						'max' => 100,
					],
					'vw' => [
						'min' => 0,
						'max' => 100,
					],
				],
				'size_units' => [ 'px', '%', 'vh', 'vw' ],
				'selectors' => [
					'{{WRAPPER}} .elementor-column-gap-custom .elementor-column > .elementor-element-populated' => 'padding: {{SIZE}}{{UNIT}};',
				],
				'condition' => [
					'gap' => 'custom',
				],
			]
		);

		$this->add_control(
			'height',
			[
				'label' => esc_html__( 'Height', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => 'default',
				'options' => [
					'default' => esc_html__( 'Default', 'elementor' ),
					'full' => esc_html__( 'Fit To Screen', 'elementor' ),
					'min-height' => esc_html__( 'Min Height', 'elementor' ),
				],
				'prefix_class' => 'elementor-section-height-',
				'hide_in_inner' => true,
			]
		);

		$this->add_responsive_control(
			'custom_height',
			[
				'label' => esc_html__( 'Minimum Height', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'default' => [
					'size' => 400,
				],
				'range' => [
					'px' => [
						'min' => 0,
						'max' => 1440,
					],
					'vh' => [
						'min' => 0,
						'max' => 100,
					],
					'vw' => [
						'min' => 0,
						'max' => 100,
					],
				],
				'size_units' => [ 'px', 'vh', 'vw' ],
				'selectors' => [
					'{{WRAPPER}} > .elementor-container' => 'min-height: {{SIZE}}{{UNIT}};',
				],
				'condition' => [
					'height' => [ 'min-height' ],
				],
				'hide_in_inner' => true,
			]
		);

		$this->add_control(
			'height_inner',
			[
				'label' => esc_html__( 'Height', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => 'default',
				'options' => [
					'default' => esc_html__( 'Default', 'elementor' ),
					'full' => esc_html__( 'Fit To Screen', 'elementor' ),
					'min-height' => esc_html__( 'Min Height', 'elementor' ),
				],
				'prefix_class' => 'elementor-section-height-',
				'hide_in_top' => true,
			]
		);

		$this->add_responsive_control(
			'custom_height_inner',
			[
				'label' => esc_html__( 'Minimum Height', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'default' => [
					'size' => 400,
				],
				'range' => [
					'px' => [
						'min' => 0,
						'max' => 1440,
					],
				],
				'selectors' => [
					'{{WRAPPER}} > .elementor-container' => 'min-height: {{SIZE}}{{UNIT}};',
				],
				'condition' => [
					'height_inner' => [ 'min-height' ],
				],
				'size_units' => [ 'px', 'vh', 'vw' ],
				'hide_in_top' => true,
			]
		);

		$this->add_control(
			'column_position',
			[
				'label' => esc_html__( 'Column Position', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => 'middle',
				'options' => [
					'stretch' => esc_html__( 'Stretch', 'elementor' ),
					'top' => esc_html__( 'Top', 'elementor' ),
					'middle' => esc_html__( 'Middle', 'elementor' ),
					'bottom' => esc_html__( 'Bottom', 'elementor' ),
				],
				'prefix_class' => 'elementor-section-items-',
				'condition' => [
					'height' => [ 'full', 'min-height' ],
				],
			]
		);

		$content_position_selector = Plugin::$instance->experiments->is_feature_active( 'e_dom_optimization' ) ?
				'{{WRAPPER}} > .elementor-container > .elementor-column > .elementor-widget-wrap' :
				'{{WRAPPER}} > .elementor-container > .elementor-row > .elementor-column > .elementor-column-wrap > .elementor-widget-wrap';

		$this->add_control(
			'content_position',
			[
				'label' => esc_html__( 'Vertical Align', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => '',
				'options' => [
					'' => esc_html__( 'Default', 'elementor' ),
					'top' => esc_html__( 'Top', 'elementor' ),
					'middle' => esc_html__( 'Middle', 'elementor' ),
					'bottom' => esc_html__( 'Bottom', 'elementor' ),
					'space-between' => esc_html__( 'Space Between', 'elementor' ),
					'space-around' => esc_html__( 'Space Around', 'elementor' ),
					'space-evenly' => esc_html__( 'Space Evenly', 'elementor' ),
				],
				'selectors_dictionary' => [
					'top' => 'flex-start',
					'middle' => 'center',
					'bottom' => 'flex-end',
				],
				'selectors' => [
					$content_position_selector => 'align-content: {{VALUE}}; align-items: {{VALUE}};',
				],
				// TODO: The following line is for BC since 2.7.0
				'prefix_class' => 'elementor-section-content-',
			]
		);

		$this->add_control(
			'overflow',
			[
				'label' => esc_html__( 'Overflow', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => '',
				'options' => [
					'' => esc_html__( 'Default', 'elementor' ),
					'hidden' => esc_html__( 'Hidden', 'elementor' ),
				],
				'selectors' => [
					'{{WRAPPER}}' => 'overflow: {{VALUE}}',
				],
			]
		);

		$this->add_control(
			'stretch_section',
			[
				'label' => esc_html__( 'Stretch Section', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'default' => '',
				'return_value' => 'section-stretched',
				'prefix_class' => 'elementor-',
				'hide_in_inner' => true,
				'description' => esc_html__( 'Stretch the section to the full width of the page using JS.', 'elementor' ) . sprintf( ' <a href="%1$s" target="_blank">%2$s</a>', 'https://go.elementor.com/stretch-section/', esc_html__( 'Learn more.', 'elementor' ) ),
				'render_type' => 'none',
				'frontend_available' => true,
			]
		);

		$possible_tags = [
			'div',
			'header',
			'footer',
			'main',
			'article',
			'section',
			'aside',
			'nav',
		];

		$options = [
			'' => esc_html__( 'Default', 'elementor' ),
		] + array_combine( $possible_tags, $possible_tags );

		$this->add_control(
			'html_tag',
			[
				'label' => esc_html__( 'HTML Tag', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'options' => $options,
				'separator' => 'before',
			]
		);

		$this->end_controls_section();

		// Section Structure
		$this->start_controls_section(
			'section_structure',
			[
				'label' => esc_html__( 'Structure', 'elementor' ),
				'tab' => Controls_Manager::TAB_LAYOUT,
			]
		);

		$this->add_control(
			'structure',
			[
				'label' => esc_html__( 'Structure', 'elementor' ),
				'type' => Controls_Manager::STRUCTURE,
				'default' => '10',
				'render_type' => 'none',
				'style_transfer' => false,
			]
		);

		$this->end_controls_section();

		// Section background
		$this->start_controls_section(
			'section_background',
			[
				'label' => esc_html__( 'Background', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->start_controls_tabs( 'tabs_background' );

		$this->start_controls_tab(
			'tab_background_normal',
			[
				'label' => esc_html__( 'Normal', 'elementor' ),
			]
		);

		$this->add_group_control(
			Group_Control_Background::get_type(),
			[
				'name' => 'background',
				'types' => [ 'classic', 'gradient', 'video', 'slideshow' ],
				'fields_options' => [
					'background' => [
						'frontend_available' => true,
					],
				],
			]
		);

		$this->end_controls_tab();

		$this->start_controls_tab(
			'tab_background_hover',
			[
				'label' => esc_html__( 'Hover', 'elementor' ),
			]
		);

		$this->add_group_control(
			Group_Control_Background::get_type(),
			[
				'name' => 'background_hover',
				'selector' => '{{WRAPPER}}:hover',
			]
		);

		$this->add_control(
			'background_hover_transition',
			[
				'label' => esc_html__( 'Transition Duration', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'default' => [
					'size' => 0.3,
				],
				'range' => [
					'px' => [
						'max' => 3,
						'step' => 0.1,
					],
				],
				'render_type' => 'ui',
				'separator' => 'before',
			]
		);

		$this->end_controls_tab();

		$this->end_controls_tabs();

		$this->end_controls_section();

		// Background Overlay
		$this->start_controls_section(
			'section_background_overlay',
			[
				'label' => esc_html__( 'Background Overlay', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->start_controls_tabs( 'tabs_background_overlay' );

		$this->start_controls_tab(
			'tab_background_overlay_normal',
			[
				'label' => esc_html__( 'Normal', 'elementor' ),
			]
		);

		$this->add_group_control(
			Group_Control_Background::get_type(),
			[
				'name' => 'background_overlay',
				'selector' => '{{WRAPPER}} > .elementor-background-overlay',
			]
		);

		$this->add_control(
			'background_overlay_opacity',
			[
				'label' => esc_html__( 'Opacity', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'default' => [
					'size' => .5,
				],
				'range' => [
					'px' => [
						'max' => 1,
						'step' => 0.01,
					],
				],
				'selectors' => [
					'{{WRAPPER}} > .elementor-background-overlay' => 'opacity: {{SIZE}};',
				],
				'condition' => [
					'background_overlay_background' => [ 'classic', 'gradient' ],
				],
			]
		);

		$this->add_group_control(
			Group_Control_Css_Filter::get_type(),
			[
				'name' => 'css_filters',
				'selector' => '{{WRAPPER}} .elementor-background-overlay',
				'conditions' => [
					'relation' => 'or',
					'terms' => [
						[
							'name' => 'background_overlay_image[url]',
							'operator' => '!==',
							'value' => '',
						],
						[
							'name' => 'background_overlay_color',
							'operator' => '!==',
							'value' => '',
						],
					],
				],
			]
		);

		$this->add_control(
			'overlay_blend_mode',
			[
				'label' => esc_html__( 'Blend Mode', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'options' => [
					'' => esc_html__( 'Normal', 'elementor' ),
					'multiply' => esc_html__( 'Multiply', 'elementor' ),
					'screen' => esc_html__( 'Screen', 'elementor' ),
					'overlay' => esc_html__( 'Overlay', 'elementor' ),
					'darken' => esc_html__( 'Darken', 'elementor' ),
					'lighten' => esc_html__( 'Lighten', 'elementor' ),
					'color-dodge' => esc_html__( 'Color Dodge', 'elementor' ),
					'saturation' => esc_html__( 'Saturation', 'elementor' ),
					'color' => esc_html__( 'Color', 'elementor' ),
					'luminosity' => esc_html__( 'Luminosity', 'elementor' ),
				],
				'selectors' => [
					'{{WRAPPER}} > .elementor-background-overlay' => 'mix-blend-mode: {{VALUE}}',
				],
				'conditions' => [
					'relation' => 'or',
					'terms' => [
						[
							'name' => 'background_overlay_image[url]',
							'operator' => '!==',
							'value' => '',
						],
						[
							'name' => 'background_overlay_color',
							'operator' => '!==',
							'value' => '',
						],
					],
				],
			]
		);

		$this->end_controls_tab();

		$this->start_controls_tab(
			'tab_background_overlay_hover',
			[
				'label' => esc_html__( 'Hover', 'elementor' ),
			]
		);

		$this->add_group_control(
			Group_Control_Background::get_type(),
			[
				'name' => 'background_overlay_hover',
				'selector' => '{{WRAPPER}}:hover > .elementor-background-overlay',
			]
		);

		$this->add_control(
			'background_overlay_hover_opacity',
			[
				'label' => esc_html__( 'Opacity', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'default' => [
					'size' => .5,
				],
				'range' => [
					'px' => [
						'max' => 1,
						'step' => 0.01,
					],
				],
				'selectors' => [
					'{{WRAPPER}}:hover > .elementor-background-overlay' => 'opacity: {{SIZE}};',
				],
				'condition' => [
					'background_overlay_hover_background' => [ 'classic', 'gradient' ],
				],
			]
		);

		$this->add_group_control(
			Group_Control_Css_Filter::get_type(),
			[
				'name' => 'css_filters_hover',
				'selector' => '{{WRAPPER}}:hover > .elementor-background-overlay',
			]
		);

		$this->add_control(
			'background_overlay_hover_transition',
			[
				'label' => esc_html__( 'Transition Duration', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'default' => [
					'size' => 0.3,
				],
				'range' => [
					'px' => [
						'max' => 3,
						'step' => 0.1,
					],
				],
				'render_type' => 'ui',
				'separator' => 'before',
			]
		);

		$this->end_controls_tab();

		$this->end_controls_tabs();

		$this->end_controls_section();

		// Section border
		$this->start_controls_section(
			'section_border',
			[
				'label' => esc_html__( 'Border', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->start_controls_tabs( 'tabs_border' );

		$this->start_controls_tab(
			'tab_border_normal',
			[
				'label' => esc_html__( 'Normal', 'elementor' ),
			]
		);

		$this->add_group_control(
			Group_Control_Border::get_type(),
			[
				'name' => 'border',
			]
		);

		$this->add_responsive_control(
			'border_radius',
			[
				'label' => esc_html__( 'Border Radius', 'elementor' ),
				'type' => Controls_Manager::DIMENSIONS,
				'size_units' => [ 'px', '%' ],
				'selectors' => [
					'{{WRAPPER}}, {{WRAPPER}} > .elementor-background-overlay' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Box_Shadow::get_type(),
			[
				'name' => 'box_shadow',
			]
		);

		$this->end_controls_tab();

		$this->start_controls_tab(
			'tab_border_hover',
			[
				'label' => esc_html__( 'Hover', 'elementor' ),
			]
		);

		$this->add_group_control(
			Group_Control_Border::get_type(),
			[
				'name' => 'border_hover',
				'selector' => '{{WRAPPER}}:hover',
			]
		);

		$this->add_responsive_control(
			'border_radius_hover',
			[
				'label' => esc_html__( 'Border Radius', 'elementor' ),
				'type' => Controls_Manager::DIMENSIONS,
				'size_units' => [ 'px', '%' ],
				'selectors' => [
					'{{WRAPPER}}:hover, {{WRAPPER}}:hover > .elementor-background-overlay' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Box_Shadow::get_type(),
			[
				'name' => 'box_shadow_hover',
				'selector' => '{{WRAPPER}}:hover',
			]
		);

		$this->add_control(
			'border_hover_transition',
			[
				'label' => esc_html__( 'Transition Duration', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'separator' => 'before',
				'default' => [
					'size' => 0.3,
				],
				'range' => [
					'px' => [
						'max' => 3,
						'step' => 0.1,
					],
				],
				'conditions' => [
					'relation' => 'or',
					'terms' => [
						[
							'name' => 'background_background',
							'operator' => '!==',
							'value' => '',
						],
						[
							'name' => 'border_border',
							'operator' => '!==',
							'value' => '',
						],
					],
				],
				'selectors' => [
					'{{WRAPPER}}' => 'transition: background {{background_hover_transition.SIZE}}s, border {{SIZE}}s, border-radius {{SIZE}}s, box-shadow {{SIZE}}s',
					'{{WRAPPER}} > .elementor-background-overlay' => 'transition: background {{background_overlay_hover_transition.SIZE}}s, border-radius {{SIZE}}s, opacity {{background_overlay_hover_transition.SIZE}}s',
				],
			]
		);

		$this->end_controls_tab();

		$this->end_controls_tabs();

		$this->end_controls_section();

		// Section Shape Divider
		$this->start_controls_section(
			'section_shape_divider',
			[
				'label' => esc_html__( 'Shape Divider', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->start_controls_tabs( 'tabs_shape_dividers' );

		$shapes_options = [
			'' => esc_html__( 'None', 'elementor' ),
		];

		foreach ( Shapes::get_shapes() as $shape_name => $shape_props ) {
			$shapes_options[ $shape_name ] = $shape_props['title'];
		}

		foreach ( [
			'top' => esc_html__( 'Top', 'elementor' ),
			'bottom' => esc_html__( 'Bottom', 'elementor' ),
		] as $side => $side_label ) {
			$base_control_key = "shape_divider_$side";

			$this->start_controls_tab(
				"tab_$base_control_key",
				[
					'label' => $side_label,
				]
			);

			$this->add_control(
				$base_control_key,
				[
					'label' => esc_html__( 'Type', 'elementor' ),
					'type' => Controls_Manager::SELECT,
					'options' => $shapes_options,
					'render_type' => 'none',
					'frontend_available' => true,
				]
			);

			$this->add_control(
				$base_control_key . '_color',
				[
					'label' => esc_html__( 'Color', 'elementor' ),
					'type' => Controls_Manager::COLOR,
					'condition' => [
						"shape_divider_$side!" => '',
					],
					'selectors' => [
						"{{WRAPPER}} > .elementor-shape-$side .elementor-shape-fill" => 'fill: {{UNIT}};',
					],
				]
			);

			$this->add_responsive_control(
				$base_control_key . '_width',
				[
					'label' => esc_html__( 'Width', 'elementor' ),
					'type' => Controls_Manager::SLIDER,
					'default' => [
						'unit' => '%',
					],
					'tablet_default' => [
						'unit' => '%',
					],
					'mobile_default' => [
						'unit' => '%',
					],
					'range' => [
						'%' => [
							'min' => 100,
							'max' => 300,
						],
					],
					'condition' => [
						"shape_divider_$side" => array_keys( Shapes::filter_shapes( 'height_only', Shapes::FILTER_EXCLUDE ) ),
					],
					'selectors' => [
						"{{WRAPPER}} > .elementor-shape-$side svg" => 'width: calc({{SIZE}}{{UNIT}} + 1.3px)',
					],
				]
			);

			$this->add_responsive_control(
				$base_control_key . '_height',
				[
					'label' => esc_html__( 'Height', 'elementor' ),
					'type' => Controls_Manager::SLIDER,
					'range' => [
						'px' => [
							'max' => 500,
						],
					],
					'condition' => [
						"shape_divider_$side!" => '',
					],
					'selectors' => [
						"{{WRAPPER}} > .elementor-shape-$side svg" => 'height: {{SIZE}}{{UNIT}};',
					],
				]
			);

			$this->add_control(
				$base_control_key . '_flip',
				[
					'label' => esc_html__( 'Flip', 'elementor' ),
					'type' => Controls_Manager::SWITCHER,
					'condition' => [
						"shape_divider_$side" => array_keys( Shapes::filter_shapes( 'has_flip' ) ),
					],
					'selectors' => [
						"{{WRAPPER}} > .elementor-shape-$side svg" => 'transform: translateX(-50%) rotateY(180deg)',
					],
				]
			);

			$this->add_control(
				$base_control_key . '_negative',
				[
					'label' => esc_html__( 'Invert', 'elementor' ),
					'type' => Controls_Manager::SWITCHER,
					'frontend_available' => true,
					'condition' => [
						"shape_divider_$side" => array_keys( Shapes::filter_shapes( 'has_negative' ) ),
					],
					'render_type' => 'none',
				]
			);

			$this->add_control(
				$base_control_key . '_above_content',
				[
					'label' => esc_html__( 'Bring to Front', 'elementor' ),
					'type' => Controls_Manager::SWITCHER,
					'selectors' => [
						"{{WRAPPER}} > .elementor-shape-$side" => 'z-index: 2; pointer-events: none',
					],
					'condition' => [
						"shape_divider_$side!" => '',
					],
				]
			);

			$this->end_controls_tab();
		}

		$this->end_controls_tabs();

		$this->end_controls_section();

		// Section Typography
		$this->start_controls_section(
			'section_typo',
			[
				'label' => esc_html__( 'Typography', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->add_control(
			'heading_color',
			[
				'label' => esc_html__( 'Heading Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'selectors' => [
					'{{WRAPPER}} .elementor-heading-title' => 'color: {{VALUE}};',
				],
				'separator' => 'none',
			]
		);

		$this->add_control(
			'color_text',
			[
				'label' => esc_html__( 'Text Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'selectors' => [
					'{{WRAPPER}}' => 'color: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'color_link',
			[
				'label' => esc_html__( 'Link Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'selectors' => [
					'{{WRAPPER}} a' => 'color: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'color_link_hover',
			[
				'label' => esc_html__( 'Link Hover Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'selectors' => [
					'{{WRAPPER}} a:hover' => 'color: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'text_align',
			[
				'label' => esc_html__( 'Text Align', 'elementor' ),
				'type' => Controls_Manager::CHOOSE,
				'options' => [
					'left' => [
						'title' => esc_html__( 'Left', 'elementor' ),
						'icon' => 'eicon-text-align-left',
					],
					'center' => [
						'title' => esc_html__( 'Center', 'elementor' ),
						'icon' => 'eicon-text-align-center',
					],
					'right' => [
						'title' => esc_html__( 'Right', 'elementor' ),
						'icon' => 'eicon-text-align-right',
					],
					'justify' => [
						'title' => __( 'Justified', 'elementor' ),
						'icon' => 'eicon-text-align-justify',
					],
				],
				'selectors' => [
					'{{WRAPPER}} > .elementor-container' => 'text-align: {{VALUE}};',
				],
			]
		);

		$this->end_controls_section();

		// Section Advanced
		$this->start_controls_section(
			'section_advanced',
			[
				'label' => esc_html__( 'Advanced', 'elementor' ),
				'tab' => Controls_Manager::TAB_ADVANCED,
			]
		);

		$this->add_responsive_control(
			'margin',
			[
				'label' => esc_html__( 'Margin', 'elementor' ),
				'type' => Controls_Manager::DIMENSIONS,
				'size_units' => [ 'px', 'em', '%', 'rem' ],
				'allowed_dimensions' => 'vertical',
				'placeholder' => [
					'top' => '',
					'right' => 'auto',
					'bottom' => '',
					'left' => 'auto',
				],
				'selectors' => [
					'{{WRAPPER}}' => 'margin-top: {{TOP}}{{UNIT}}; margin-bottom: {{BOTTOM}}{{UNIT}};',
				],
			]
		);

		$this->add_responsive_control(
			'padding',
			[
				'label' => esc_html__( 'Padding', 'elementor' ),
				'type' => Controls_Manager::DIMENSIONS,
				'size_units' => [ 'px', 'em', '%', 'rem' ],
				'selectors' => [
					'{{WRAPPER}}' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
				],
			]
		);

		$this->add_responsive_control(
			'z_index',
			[
				'label' => esc_html__( 'Z-Index', 'elementor' ),
				'type' => Controls_Manager::NUMBER,
				'min' => 0,
				'selectors' => [
					'{{WRAPPER}}' => 'z-index: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'_element_id',
			[
				'label' => esc_html__( 'CSS ID', 'elementor' ),
				'type' => Controls_Manager::TEXT,
				'default' => '',
				'dynamic' => [
					'active' => true,
				],
				'title' => esc_html__( 'Add your custom id WITHOUT the Pound key. e.g: my-id', 'elementor' ),
				'style_transfer' => false,
				'classes' => 'elementor-control-direction-ltr',
			]
		);

		$this->add_control(
			'css_classes',
			[
				'label' => esc_html__( 'CSS Classes', 'elementor' ),
				'type' => Controls_Manager::TEXT,
				'default' => '',
				'dynamic' => [
					'active' => true,
				],
				'prefix_class' => '',
				'title' => esc_html__( 'Add your custom class WITHOUT the dot. e.g: my-class', 'elementor' ),
				'classes' => 'elementor-control-direction-ltr',
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_effects',
			[
				'label' => esc_html__( 'Motion Effects', 'elementor' ),
				'tab' => Controls_Manager::TAB_ADVANCED,
			]
		);

		$this->add_responsive_control(
			'animation',
			[
				'label' => esc_html__( 'Entrance Animation', 'elementor' ),
				'type' => Controls_Manager::ANIMATION,
				'frontend_available' => true,
			]
		);

		$this->add_control(
			'animation_duration',
			[
				'label' => esc_html__( 'Animation Duration', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => '',
				'options' => [
					'slow' => esc_html__( 'Slow', 'elementor' ),
					'' => esc_html__( 'Normal', 'elementor' ),
					'fast' => esc_html__( 'Fast', 'elementor' ),
				],
				'prefix_class' => 'animated-',
				'condition' => [
					'animation!' => '',
				],
			]
		);

		$this->add_control(
			'animation_delay',
			[
				'label' => esc_html__( 'Animation Delay', 'elementor' ) . ' (ms)',
				'type' => Controls_Manager::NUMBER,
				'default' => '',
				'min' => 0,
				'step' => 100,
				'condition' => [
					'animation!' => '',
				],
				'render_type' => 'none',
				'frontend_available' => true,
			]
		);

		$this->end_controls_section();

		// Section Responsive
		$this->start_controls_section(
			'_section_responsive',
			[
				'label' => esc_html__( 'Responsive', 'elementor' ),
				'tab' => Controls_Manager::TAB_ADVANCED,
			]
		);

		$this->add_control(
			'reverse_order_tablet',
			[
				'label' => esc_html__( 'Reverse Columns', 'elementor' ) . ' (' . esc_html__( 'Tablet', 'elementor' ) . ')',
				'type' => Controls_Manager::SWITCHER,
				'default' => '',
				'prefix_class' => 'elementor-',
				'return_value' => 'reverse-tablet',
			]
		);

		$this->add_control(
			'reverse_order_mobile',
			[
				'label' => esc_html__( 'Reverse Columns', 'elementor' ) . ' (' . esc_html__( 'Mobile', 'elementor' ) . ')',
				'type' => Controls_Manager::SWITCHER,
				'default' => '',
				'prefix_class' => 'elementor-',
				'return_value' => 'reverse-mobile',
			]
		);

		$this->add_control(
			'heading_visibility',
			[
				'label' => esc_html__( 'Visibility', 'elementor' ),
				'type' => Controls_Manager::HEADING,
				'separator' => 'before',
			]
		);

		$this->add_control(
			'responsive_description',
			[
				'raw' => esc_html__( 'Responsive visibility will take effect only on preview or live page, and not while editing in Elementor.', 'elementor' ),
				'type' => Controls_Manager::RAW_HTML,
				'content_classes' => 'elementor-descriptor',
			]
		);

		$this->add_hidden_device_controls();

		$this->end_controls_section();

		Plugin::$instance->controls_manager->add_custom_attributes_controls( $this );

		Plugin::$instance->controls_manager->add_custom_css_controls( $this );
	}

	/**
	 * Render section output in the editor.
	 *
	 * Used to generate the live preview, using a Backbone JavaScript template.
	 *
	 * @since 2.9.0
	 * @access protected
	 */
	protected function content_template() {
		?>
		<#
		if ( settings.background_video_link ) {
			let videoAttributes = 'autoplay muted playsinline';

			if ( ! settings.background_play_once ) {
				videoAttributes += ' loop';
			}

			view.addRenderAttribute( 'background-video-container', 'class', 'elementor-background-video-container' );

			if ( ! settings.background_play_on_mobile ) {
				view.addRenderAttribute( 'background-video-container', 'class', 'elementor-hidden-mobile' );
			}
		#>
			<div {{{ view.getRenderAttributeString( 'background-video-container' ) }}}>
				<div class="elementor-background-video-embed"></div>
				<video class="elementor-background-video-hosted elementor-html5-video" {{ videoAttributes }}></video>
			</div>
		<# } #>
		<div class="elementor-background-overlay"></div>
		<div class="elementor-shape elementor-shape-top"></div>
		<div class="elementor-shape elementor-shape-bottom"></div>
		<div class="elementor-container elementor-column-gap-{{ settings.gap }}">
			<?php if ( ! Plugin::$instance->experiments->is_feature_active( 'e_dom_optimization' ) ) { ?>
				<div class="elementor-row"></div>
			<?php } ?>
		</div>
		<?php
	}

	/**
	 * Before section rendering.
	 *
	 * Used to add stuff before the section element.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function before_render() {
		$settings = $this->get_settings_for_display();
		?>
		<<?php
			// PHPCS - the method get_html_tag is safe.
			echo $this->get_html_tag(); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
		?> <?php $this->print_render_attribute_string( '_wrapper' ); ?>>
			<?php
			if ( 'video' === $settings['background_background'] ) :
				if ( $settings['background_video_link'] ) :
					$video_properties = Embed::get_video_properties( $settings['background_video_link'] );

					$this->add_render_attribute( 'background-video-container', 'class', 'elementor-background-video-container' );

					if ( ! $settings['background_play_on_mobile'] ) {
						$this->add_render_attribute( 'background-video-container', 'class', 'elementor-hidden-phone' );
					}
					?>
					<div <?php $this->print_render_attribute_string( 'background-video-container' ); ?>>
						<?php if ( $video_properties ) : ?>
							<div class="elementor-background-video-embed"></div>
							<?php
						else :
							$video_tag_attributes = 'autoplay muted playsinline';
							if ( 'yes' !== $settings['background_play_once'] ) :
								$video_tag_attributes .= ' loop';
							endif;
							?>
							<video class="elementor-background-video-hosted elementor-html5-video" <?php
								// PHPCS - the variable $video_tag_attributes is a plain string.
								echo $video_tag_attributes; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
							?>></video>
						<?php endif; ?>
					</div>
					<?php
				endif;
			endif;

			$has_background_overlay = in_array( $settings['background_overlay_background'], [ 'classic', 'gradient' ], true ) ||
									in_array( $settings['background_overlay_hover_background'], [ 'classic', 'gradient' ], true );

			if ( $has_background_overlay ) :
				?>
				<div class="elementor-background-overlay"></div>
				<?php
			endif;

			if ( $settings['shape_divider_top'] ) {
				$this->print_shape_divider( 'top' );
			}

			if ( $settings['shape_divider_bottom'] ) {
				$this->print_shape_divider( 'bottom' );
			}
			?>
			<div class="elementor-container elementor-column-gap-<?php echo esc_attr( $settings['gap'] ); ?>">
			<?php if ( ! Plugin::$instance->experiments->is_feature_active( 'e_dom_optimization' ) ) { ?>
				<div class="elementor-row">
			<?php }
	}

	/**
	 * After section rendering.
	 *
	 * Used to add stuff after the section element.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function after_render() {
		?>
		<?php if ( ! Plugin::$instance->experiments->is_feature_active( 'e_dom_optimization' ) ) { ?>
				</div>
		<?php } ?>
			</div>
		</<?php
			// PHPCS - the method get_html_tag is safe.
			echo $this->get_html_tag(); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
		?>>
		<?php
	}

	/**
	 * Add section render attributes.
	 *
	 * Used to add attributes to the current section wrapper HTML tag.
	 *
	 * @since 1.3.0
	 * @access protected
	 */
	protected function add_render_attributes() {

		$section_type = $this->get_data( 'isInner' ) ? 'inner' : 'top';

		$this->add_render_attribute(
			'_wrapper', 'class', [
				'elementor-section',
				'elementor-' . $section_type . '-section',
			]
		);

		parent::add_render_attributes();
	}

	/**
	 * Get default child type.
	 *
	 * Retrieve the section child type based on element data.
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @param array $element_data Element ID.
	 *
	 * @return Element_Base Section default child type.
	 */
	protected function _get_default_child_type( array $element_data ) {
		return Plugin::$instance->elements_manager->get_element_types( 'column' );
	}

	/**
	 * Get HTML tag.
	 *
	 * Retrieve the section element HTML tag.
	 *
	 * @since 1.5.3
	 * @access private
	 *
	 * @return string Section HTML tag.
	 */
	protected function get_html_tag() {
		$html_tag = $this->get_settings( 'html_tag' );

		if ( empty( $html_tag ) ) {
			$html_tag = 'section';
		}

		return Utils::validate_html_tag( $html_tag );
	}

	/**
	 * Print section shape divider.
	 *
	 * Used to generate the shape dividers HTML.
	 *
	 * @since 1.3.0
	 * @access private
	 *
	 * @param string $side Shape divider side, used to set the shape key.
	 */
	protected function print_shape_divider( $side ) {
		$settings = $this->get_active_settings();
		$base_setting_key = "shape_divider_$side";
		$negative = ! empty( $settings[ $base_setting_key . '_negative' ] );
		$shape_path = Shapes::get_shape_path( $settings[ $base_setting_key ], $negative );
		if ( ! is_file( $shape_path ) || ! is_readable( $shape_path ) ) {
			return;
		}
		?>
		<div class="elementor-shape elementor-shape-<?php echo esc_attr( $side ); ?>" data-negative="<?php
			// PHPCS - the variable $negative is getting a setting value with a strict structure.
			echo var_export( $negative ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
		?>">
			<?php
				// PHPCS - The file content is being read from a strict file path structure.
				echo file_get_contents( $shape_path ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
			?>
		</div>
		<?php
	}
}
includes/elements/repeater.php000064400000006146151327220420012513 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor repeater element.
 *
 * Elementor repeater handler class is responsible for initializing the repeater.
 *
 * @since 1.0.0
 */
class Repeater extends Element_Base {

	/**
	 * Repeater counter.
	 *
	 * Holds the Repeater counter data. Default is `0`.
	 *
	 * @since 1.0.0
	 * @access private
	 * @static
	 *
	 * @var int Repeater counter.
	 */
	private static $counter = 0;

	/**
	 * Repeater constructor.
	 *
	 * Initializing Elementor repeater element.
	 *
	 * @since 1.0.7
	 * @access public
	 *
	 * @param array      $data Optional. Element data. Default is an empty array.
	 * @param array|null $args Optional. Element default arguments. Default is null.
	 *
	 */
	public function __construct( array $data = [], array $args = null ) {
		self::$counter++;

		parent::__construct( $data, $args );

		$this->add_control(
			'_id',
			[
				'type' => Controls_Manager::HIDDEN,
			]
		);
	}

	/**
	 * Get repeater name.
	 *
	 * Retrieve the repeater name.
	 *
	 * @since 1.0.7
	 * @access public
	 *
	 * @return string Repeater name.
	 */
	public function get_name() {
		return 'repeater-' . self::$counter;
	}

	/**
	 * Get repeater type.
	 *
	 * Retrieve the repeater type.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @return string Repeater type.
	 */
	public static function get_type() {
		return 'repeater';
	}

	/**
	 * Add new repeater control to stack.
	 *
	 * Register a repeater control to allow the user to set/update data.
	 *
	 * This method should be used inside `register_controls()`.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param string $id      Repeater control ID.
	 * @param array  $args    Repeater control arguments.
	 * @param array  $options Optional. Repeater control options. Default is an
	 *                        empty array.
	 *
	 * @return bool True if repeater control added, False otherwise.
	 */
	public function add_control( $id, array $args, $options = [] ) {
		$current_tab = $this->get_current_tab();

		if ( null !== $current_tab ) {
			$args = array_merge( $args, $current_tab );
		}

		return parent::add_control( $id, $args, $options );
	}

	/**
	 * Get repeater fields.
	 *
	 * Retrieve the fields from the current repeater control.
	 *
	 * @since 1.5.0
	 * @deprecated 2.1.0 Use `Repeater::get_controls()` instead.
	 * @access public
	 *
	 * @return array Repeater fields.
	 */
	public function get_fields() {
		_deprecated_function( __METHOD__, '2.1.0', __CLASS__ . '::get_controls()' );

		return array_values( $this->get_controls() );
	}

	/**
	 * Get default child type.
	 *
	 * Retrieve the repeater child type based on element data.
	 *
	 * Note that repeater does not support children, therefore it returns false.
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @param array $element_data Element ID.
	 *
	 * @return false Repeater default child type or False if type not found.
	 */
	protected function _get_default_child_type( array $element_data ) {
		return false;
	}

	protected function handle_control_position( array $args, $control_id, $overwrite ) {
		return $args;
	}
}
includes/elements/column.php000064400000066063151327220420012205 0ustar00<?php
namespace Elementor;

use Elementor\Core\Breakpoints\Manager as Breakpoints_Manager;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor column element.
 *
 * Elementor column handler class is responsible for initializing the column
 * element.
 *
 * @since 1.0.0
 */
class Element_Column extends Element_Base {

	/**
	 * Get column name.
	 *
	 * Retrieve the column name.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Column name.
	 */
	public function get_name() {
		return 'column';
	}

	/**
	 * Get element type.
	 *
	 * Retrieve the element type, in this case `column`.
	 *
	 * @since 2.1.0
	 * @access public
	 * @static
	 *
	 * @return string The type.
	 */
	public static function get_type() {
		return 'column';
	}

	/**
	 * Get column title.
	 *
	 * Retrieve the column title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Column title.
	 */
	public function get_title() {
		return esc_html__( 'Column', 'elementor' );
	}

	/**
	 * Get column icon.
	 *
	 * Retrieve the column icon.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Column icon.
	 */
	public function get_icon() {
		return 'eicon-column';
	}

	/**
	 * Get initial config.
	 *
	 * Retrieve the current section initial configuration.
	 *
	 * Adds more configuration on top of the controls list, the tabs assigned to
	 * the control, element name, type, icon and more. This method also adds
	 * section presets.
	 *
	 * @since 2.9.0
	 * @access protected
	 *
	 * @return array The initial config.
	 */
	protected function get_initial_config() {
		$config = parent::get_initial_config();

		$config['controls'] = $this->get_controls();
		$config['tabs_controls'] = $this->get_tabs_controls();

		return $config;
	}

	/**
	 * Register column controls.
	 *
	 * Used to add new controls to the column element.
	 *
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		// Section Layout.
		$this->start_controls_section(
			'layout',
			[
				'label' => esc_html__( 'Layout', 'elementor' ),
				'tab' => Controls_Manager::TAB_LAYOUT,
			]
		);

		// Element Name for the Navigator
		$this->add_control(
			'_title',
			[
				'label' => esc_html__( 'Title', 'elementor' ),
				'type' => Controls_Manager::HIDDEN,
				'render_type' => 'none',
			]
		);

		$active_breakpoint_keys = array_reverse( array_keys( Plugin::$instance->breakpoints->get_active_breakpoints() ) );
		$inline_size_device_args = [
			Breakpoints_Manager::BREAKPOINT_KEY_MOBILE => [ 'placeholder' => 100 ],
		];

		foreach ( $active_breakpoint_keys as $breakpoint_key ) {
			if ( ! isset( $inline_size_device_args[ $breakpoint_key ] ) ) {
				$inline_size_device_args[ $breakpoint_key ] = [];
			}

			$inline_size_device_args[ $breakpoint_key ] = array_merge_recursive(
				$inline_size_device_args[ $breakpoint_key ],
				[
					'max' => 100,
					'required' => false,
				]
			);
		}

		if ( in_array( Breakpoints_Manager::BREAKPOINT_KEY_MOBILE_EXTRA, $active_breakpoint_keys, true ) ) {
			$min_affected_device_value = Breakpoints_Manager::BREAKPOINT_KEY_MOBILE_EXTRA;
		} else {
			$min_affected_device_value = Breakpoints_Manager::BREAKPOINT_KEY_TABLET;
		}

		$this->add_responsive_control(
			'_inline_size',
			[
				'label' => esc_html__( 'Column Width', 'elementor' ) . ' (%)',
				'type' => Controls_Manager::NUMBER,
				'min' => 2,
				'max' => 98,
				'required' => true,
				'device_args' => $inline_size_device_args,
				'min_affected_device' => [
					Breakpoints_Manager::BREAKPOINT_KEY_DESKTOP => $min_affected_device_value,
					Breakpoints_Manager::BREAKPOINT_KEY_LAPTOP => $min_affected_device_value,
					Breakpoints_Manager::BREAKPOINT_KEY_TABLET_EXTRA => $min_affected_device_value,
					Breakpoints_Manager::BREAKPOINT_KEY_TABLET => $min_affected_device_value,
					Breakpoints_Manager::BREAKPOINT_KEY_MOBILE_EXTRA => $min_affected_device_value,
				],
				'selectors' => [
					'{{WRAPPER}}' => 'width: {{VALUE}}%',
				],
			]
		);

		$is_dome_optimization_active = Plugin::$instance->experiments->is_feature_active( 'e_dom_optimization' );
		$main_selector_element = $is_dome_optimization_active ? 'widget' : 'column';
		$widget_wrap_child = $is_dome_optimization_active ? '' : ' > .elementor-widget-wrap';
		$column_wrap_child = $is_dome_optimization_active ? '' : ' > .elementor-column-wrap';

		$this->add_responsive_control(
			'content_position',
			[
				'label' => esc_html__( 'Vertical Align', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => '',
				'options' => [
					'' => esc_html__( 'Default', 'elementor' ),
					'top' => esc_html__( 'Top', 'elementor' ),
					'center' => esc_html__( 'Middle', 'elementor' ),
					'bottom' => esc_html__( 'Bottom', 'elementor' ),
					'space-between' => esc_html__( 'Space Between', 'elementor' ),
					'space-around' => esc_html__( 'Space Around', 'elementor' ),
					'space-evenly' => esc_html__( 'Space Evenly', 'elementor' ),
				],
				'selectors_dictionary' => [
					'top' => 'flex-start',
					'bottom' => 'flex-end',
				],
				'selectors' => [
					// TODO: The following line is for BC since 2.7.0
					'.elementor-bc-flex-widget {{WRAPPER}}.elementor-column .elementor-' . $main_selector_element . '-wrap' => 'align-items: {{VALUE}}',
					// This specificity is intended to make sure column css overwrites section css on vertical alignment (content_position)
					'{{WRAPPER}}.elementor-column.elementor-element[data-element_type="column"] > .elementor-' . $main_selector_element . '-wrap.elementor-element-populated' . $widget_wrap_child => 'align-content: {{VALUE}}; align-items: {{VALUE}};',
				],
			]
		);

		$this->add_responsive_control(
			'align',
			[
				'label' => esc_html__( 'Horizontal Align', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => '',
				'options' => [
					'' => esc_html__( 'Default', 'elementor' ),
					'flex-start' => esc_html__( 'Start', 'elementor' ),
					'center' => esc_html__( 'Center', 'elementor' ),
					'flex-end' => esc_html__( 'End', 'elementor' ),
					'space-between' => esc_html__( 'Space Between', 'elementor' ),
					'space-around' => esc_html__( 'Space Around', 'elementor' ),
					'space-evenly' => esc_html__( 'Space Evenly', 'elementor' ),
				],
				'selectors' => [
					'{{WRAPPER}}.elementor-column' . $column_wrap_child . ' > .elementor-widget-wrap' => 'justify-content: {{VALUE}}',
				],
			]
		);

		$space_between_widgets_selector = $is_dome_optimization_active ? '' : '> .elementor-column-wrap ';

		$this->add_responsive_control(
			'space_between_widgets',
			[
				'label' => esc_html__( 'Widgets Space', 'elementor' ) . ' (px)',
				'type' => Controls_Manager::NUMBER,
				'placeholder' => 20,
				'selectors' => [
					'{{WRAPPER}} ' . $space_between_widgets_selector . '> .elementor-widget-wrap > .elementor-widget:not(.elementor-widget__width-auto):not(.elementor-widget__width-initial):not(:last-child):not(.elementor-absolute)' => 'margin-bottom: {{VALUE}}px', //Need the full path for exclude the inner section
				],
			]
		);

		$possible_tags = [
			'div',
			'header',
			'footer',
			'main',
			'article',
			'section',
			'aside',
			'nav',
		];

		$options = [
			'' => esc_html__( 'Default', 'elementor' ),
		] + array_combine( $possible_tags, $possible_tags );

		$this->add_control(
			'html_tag',
			[
				'label' => esc_html__( 'HTML Tag', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'options' => $options,
				'render_type' => 'none',
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_style',
			[
				'label' => esc_html__( 'Background', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->start_controls_tabs( 'tabs_background' );

		$this->start_controls_tab(
			'tab_background_normal',
			[
				'label' => esc_html__( 'Normal', 'elementor' ),
			]
		);

		$this->add_group_control(
			Group_Control_Background::get_type(),
			[
				'name' => 'background',
				'types' => [ 'classic', 'gradient', 'slideshow' ],
				'selector' => '{{WRAPPER}}:not(.elementor-motion-effects-element-type-background) > .elementor-' . $main_selector_element . '-wrap, {{WRAPPER}} > .elementor-' . $main_selector_element . '-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer',
				'fields_options' => [
					'background' => [
						'frontend_available' => true,
					],
				],
			]
		);

		$this->end_controls_tab();

		$this->start_controls_tab(
			'tab_background_hover',
			[
				'label' => esc_html__( 'Hover', 'elementor' ),
			]
		);

		$this->add_group_control(
			Group_Control_Background::get_type(),
			[
				'name' => 'background_hover',
				'selector' => '{{WRAPPER}}:hover > .elementor-element-populated',
			]
		);

		$this->add_control(
			'background_hover_transition',
			[
				'label' => esc_html__( 'Transition Duration', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'default' => [
					'size' => 0.3,
				],
				'range' => [
					'px' => [
						'max' => 3,
						'step' => 0.1,
					],
				],
				'render_type' => 'ui',
				'separator' => 'before',
			]
		);

		$this->end_controls_tab();

		$this->end_controls_tabs();

		$this->end_controls_section();

		// Section Column Background Overlay.
		$this->start_controls_section(
			'section_background_overlay',
			[
				'label' => esc_html__( 'Background Overlay', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
				'condition' => [
					'background_background' => [ 'classic', 'gradient' ],
				],
			]
		);

		$this->start_controls_tabs( 'tabs_background_overlay' );

		$this->start_controls_tab(
			'tab_background_overlay_normal',
			[
				'label' => esc_html__( 'Normal', 'elementor' ),
			]
		);

		$this->add_group_control(
			Group_Control_Background::get_type(),
			[
				'name' => 'background_overlay',
				'selector' => '{{WRAPPER}} > .elementor-element-populated >  .elementor-background-overlay',
			]
		);

		$this->add_control(
			'background_overlay_opacity',
			[
				'label' => esc_html__( 'Opacity', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'default' => [
					'size' => .5,
				],
				'range' => [
					'px' => [
						'max' => 1,
						'step' => 0.01,
					],
				],
				'selectors' => [
					'{{WRAPPER}} > .elementor-element-populated >  .elementor-background-overlay' => 'opacity: {{SIZE}};',
				],
				'condition' => [
					'background_overlay_background' => [ 'classic', 'gradient' ],
				],
			]
		);

		$this->add_group_control(
			Group_Control_Css_Filter::get_type(),
			[
				'name' => 'css_filters',
				'selector' => '{{WRAPPER}} > .elementor-element-populated >  .elementor-background-overlay',
			]
		);

		$this->add_control(
			'overlay_blend_mode',
			[
				'label' => esc_html__( 'Blend Mode', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'options' => [
					'' => esc_html__( 'Normal', 'elementor' ),
					'multiply' => esc_html__( 'Multiply', 'elementor' ),
					'screen' => esc_html__( 'Screen', 'elementor' ),
					'overlay' => esc_html__( 'Overlay', 'elementor' ),
					'darken' => esc_html__( 'Darken', 'elementor' ),
					'lighten' => esc_html__( 'Lighten', 'elementor' ),
					'color-dodge' => esc_html__( 'Color Dodge', 'elementor' ),
					'saturation' => esc_html__( 'Saturation', 'elementor' ),
					'color' => esc_html__( 'Color', 'elementor' ),
					'luminosity' => esc_html__( 'Luminosity', 'elementor' ),
				],
				'selectors' => [
					'{{WRAPPER}} > .elementor-element-populated > .elementor-background-overlay' => 'mix-blend-mode: {{VALUE}}',
				],
			]
		);

		$this->end_controls_tab();

		$this->start_controls_tab(
			'tab_background_overlay_hover',
			[
				'label' => esc_html__( 'Hover', 'elementor' ),
			]
		);

		$this->add_group_control(
			Group_Control_Background::get_type(),
			[
				'name' => 'background_overlay_hover',
				'selector' => '{{WRAPPER}}:hover > .elementor-element-populated >  .elementor-background-overlay',
			]
		);

		$this->add_control(
			'background_overlay_hover_opacity',
			[
				'label' => esc_html__( 'Opacity', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'default' => [
					'size' => .5,
				],
				'range' => [
					'px' => [
						'max' => 1,
						'step' => 0.01,
					],
				],
				'selectors' => [
					'{{WRAPPER}}:hover > .elementor-element-populated >  .elementor-background-overlay' => 'opacity: {{SIZE}};',
				],
				'condition' => [
					'background_overlay_hover_background' => [ 'classic', 'gradient' ],
				],
			]
		);

		$this->add_group_control(
			Group_Control_Css_Filter::get_type(),
			[
				'name' => 'css_filters_hover',
				'selector' => '{{WRAPPER}}:hover > .elementor-element-populated >  .elementor-background-overlay',
			]
		);

		$this->add_control(
			'background_overlay_hover_transition',
			[
				'label' => esc_html__( 'Transition Duration', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'default' => [
					'size' => 0.3,
				],
				'range' => [
					'px' => [
						'max' => 3,
						'step' => 0.1,
					],
				],
				'render_type' => 'ui',
				'separator' => 'before',
			]
		);

		$this->end_controls_tab();

		$this->end_controls_tabs();

		$this->end_controls_section();

		$this->start_controls_section(
			'section_border',
			[
				'label' => esc_html__( 'Border', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->start_controls_tabs( 'tabs_border' );

		$this->start_controls_tab(
			'tab_border_normal',
			[
				'label' => esc_html__( 'Normal', 'elementor' ),
			]
		);

		$this->add_group_control(
			Group_Control_Border::get_type(),
			[
				'name' => 'border',
				'selector' => '{{WRAPPER}} > .elementor-element-populated',
			]
		);

		$this->add_responsive_control(
			'border_radius',
			[
				'label' => esc_html__( 'Border Radius', 'elementor' ),
				'type' => Controls_Manager::DIMENSIONS,
				'size_units' => [ 'px', '%' ],
				'selectors' => [
					'{{WRAPPER}} > .elementor-element-populated, {{WRAPPER}} > .elementor-element-populated > .elementor-background-overlay, {{WRAPPER}} > .elementor-background-slideshow' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Box_Shadow::get_type(),
			[
				'name' => 'box_shadow',
				'selector' => '{{WRAPPER}} > .elementor-element-populated',
			]
		);

		$this->end_controls_tab();

		$this->start_controls_tab(
			'tab_border_hover',
			[
				'label' => esc_html__( 'Hover', 'elementor' ),
			]
		);

		$this->add_group_control(
			Group_Control_Border::get_type(),
			[
				'name' => 'border_hover',
				'selector' => '{{WRAPPER}}:hover > .elementor-element-populated',
			]
		);

		$this->add_responsive_control(
			'border_radius_hover',
			[
				'label' => esc_html__( 'Border Radius', 'elementor' ),
				'type' => Controls_Manager::DIMENSIONS,
				'size_units' => [ 'px', '%' ],
				'selectors' => [
					'{{WRAPPER}}:hover > .elementor-element-populated, {{WRAPPER}}:hover > .elementor-element-populated > .elementor-background-overlay' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Box_Shadow::get_type(),
			[
				'name' => 'box_shadow_hover',
				'selector' => '{{WRAPPER}}:hover > .elementor-element-populated',
			]
		);

		$this->add_control(
			'border_hover_transition',
			[
				'label' => esc_html__( 'Transition Duration', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'separator' => 'before',
				'default' => [
					'size' => 0.3,
				],
				'range' => [
					'px' => [
						'max' => 3,
						'step' => 0.1,
					],
				],
				'conditions' => [
					'relation' => 'or',
					'terms' => [
						[
							'name' => 'background_background',
							'operator' => '!==',
							'value' => '',
						],
						[
							'name' => 'border_border',
							'operator' => '!==',
							'value' => '',
						],
					],
				],
				'selectors' => [
					'{{WRAPPER}} > .elementor-element-populated' => 'transition: background {{background_hover_transition.SIZE}}s, border {{SIZE}}s, border-radius {{SIZE}}s, box-shadow {{SIZE}}s',
					'{{WRAPPER}} > .elementor-element-populated > .elementor-background-overlay' => 'transition: background {{background_overlay_hover_transition.SIZE}}s, border-radius {{SIZE}}s, opacity {{background_overlay_hover_transition.SIZE}}s',
				],
			]
		);

		$this->end_controls_tab();

		$this->end_controls_tabs();

		$this->end_controls_section();

		// Section Typography.
		$this->start_controls_section(
			'section_typo',
			[
				'label' => esc_html__( 'Typography', 'elementor' ),
				'type' => Controls_Manager::SECTION,
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->add_control(
			'heading_color',
			[
				'label' => esc_html__( 'Heading Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'selectors' => [
					'{{WRAPPER}} .elementor-element-populated .elementor-heading-title' => 'color: {{VALUE}};',
				],
				'separator' => 'none',
			]
		);

		$this->add_control(
			'color_text',
			[
				'label' => esc_html__( 'Text Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'selectors' => [
					'{{WRAPPER}} > .elementor-element-populated' => 'color: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'color_link',
			[
				'label' => esc_html__( 'Link Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'selectors' => [
					'{{WRAPPER}} .elementor-element-populated a' => 'color: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'color_link_hover',
			[
				'label' => esc_html__( 'Link Hover Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'selectors' => [
					'{{WRAPPER}} .elementor-element-populated a:hover' => 'color: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'text_align',
			[
				'label' => esc_html__( 'Text Align', 'elementor' ),
				'type' => Controls_Manager::CHOOSE,
				'options' => [
					'left' => [
						'title' => esc_html__( 'Left', 'elementor' ),
						'icon' => 'eicon-text-align-left',
					],
					'center' => [
						'title' => esc_html__( 'Center', 'elementor' ),
						'icon' => 'eicon-text-align-center',
					],
					'right' => [
						'title' => esc_html__( 'Right', 'elementor' ),
						'icon' => 'eicon-text-align-right',
					],
					'justify' => [
						'title' => __( 'Justified', 'elementor' ),
						'icon' => 'eicon-text-align-justify',
					],
				],
				'selectors' => [
					'{{WRAPPER}} > .elementor-element-populated' => 'text-align: {{VALUE}};',
				],
			]
		);

		$this->end_controls_section();

		// Section Advanced.
		$this->start_controls_section(
			'section_advanced',
			[
				'label' => esc_html__( 'Advanced', 'elementor' ),
				'type' => Controls_Manager::SECTION,
				'tab' => Controls_Manager::TAB_ADVANCED,
			]
		);

		$this->add_responsive_control(
			'margin',
			[
				'label' => esc_html__( 'Margin', 'elementor' ),
				'type' => Controls_Manager::DIMENSIONS,
				'size_units' => [ 'px', 'em', '%', 'rem' ],
				'selectors' => [
					'{{WRAPPER}} > .elementor-element-populated' => 'margin: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
				],
			]
		);

		$this->add_responsive_control(
			'padding',
			[
				'label' => esc_html__( 'Padding', 'elementor' ),
				'type' => Controls_Manager::DIMENSIONS,
				'size_units' => [ 'px', 'em', '%', 'rem' ],
				'selectors' => [
					'{{WRAPPER}} > .elementor-element-populated' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
				],
			]
		);

		$this->add_responsive_control(
			'z_index',
			[
				'label' => esc_html__( 'Z-Index', 'elementor' ),
				'type' => Controls_Manager::NUMBER,
				'min' => 0,
				'selectors' => [
					'{{WRAPPER}}' => 'z-index: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'_element_id',
			[
				'label' => esc_html__( 'CSS ID', 'elementor' ),
				'type' => Controls_Manager::TEXT,
				'default' => '',
				'dynamic' => [
					'active' => true,
				],
				'title' => esc_html__( 'Add your custom id WITHOUT the Pound key. e.g: my-id', 'elementor' ),
				'style_transfer' => false,
				'classes' => 'elementor-control-direction-ltr',
			]
		);

		$this->add_control(
			'css_classes',
			[
				'label' => esc_html__( 'CSS Classes', 'elementor' ),
				'type' => Controls_Manager::TEXT,
				'default' => '',
				'dynamic' => [
					'active' => true,
				],
				'prefix_class' => '',
				'title' => esc_html__( 'Add your custom class WITHOUT the dot. e.g: my-class', 'elementor' ),
				'classes' => 'elementor-control-direction-ltr',
			]
		);

		// TODO: Backward comparability for deprecated controls
		$this->add_control(
			'screen_sm',
			[
				'type' => Controls_Manager::HIDDEN,
			]
		);

		$this->add_control(
			'screen_sm_width',
			[
				'type' => Controls_Manager::HIDDEN,
				'condition' => [
					'screen_sm' => [ 'custom' ],
				],
				'prefix_class' => 'elementor-sm-',
			]
		);
		// END Backward comparability

		$this->end_controls_section();

		$this->start_controls_section(
			'section_effects',
			[
				'label' => esc_html__( 'Motion Effects', 'elementor' ),
				'tab' => Controls_Manager::TAB_ADVANCED,
			]
		);

		$this->add_responsive_control(
			'animation',
			[
				'label' => esc_html__( 'Entrance Animation', 'elementor' ),
				'type' => Controls_Manager::ANIMATION,
				'frontend_available' => true,
			]
		);

		$this->add_control(
			'animation_duration',
			[
				'label' => esc_html__( 'Animation Duration', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => '',
				'options' => [
					'slow' => esc_html__( 'Slow', 'elementor' ),
					'' => esc_html__( 'Normal', 'elementor' ),
					'fast' => esc_html__( 'Fast', 'elementor' ),
				],
				'prefix_class' => 'animated-',
				'condition' => [
					'animation!' => '',
				],
			]
		);

		$this->add_control(
			'animation_delay',
			[
				'label' => esc_html__( 'Animation Delay', 'elementor' ) . ' (ms)',
				'type' => Controls_Manager::NUMBER,
				'default' => '',
				'min' => 0,
				'step' => 100,
				'condition' => [
					'animation!' => '',
				],
				'render_type' => 'none',
				'frontend_available' => true,
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'_section_responsive',
			[
				'label' => esc_html__( 'Responsive', 'elementor' ),
				'tab' => Controls_Manager::TAB_ADVANCED,
			]
		);

		$this->add_control(
			'responsive_description',
			[
				'raw' => esc_html__( 'Responsive visibility will take effect only on preview or live page, and not while editing in Elementor.', 'elementor' ),
				'type' => Controls_Manager::RAW_HTML,
				'content_classes' => 'elementor-descriptor',
			]
		);

		$this->add_hidden_device_controls();

		$this->end_controls_section();

		Plugin::$instance->controls_manager->add_custom_attributes_controls( $this );

		Plugin::$instance->controls_manager->add_custom_css_controls( $this );
	}

	/**
	 * Render column output in the editor.
	 *
	 * Used to generate the live preview, using a Backbone JavaScript template.
	 *
	 * @since 2.9.0
	 * @access protected
	 */
	protected function content_template() {
		$is_dom_optimization_active = Plugin::$instance->experiments->is_feature_active( 'e_dom_optimization' );
		$wrapper_element = $is_dom_optimization_active ? 'widget' : 'column';

		?>
		<div class="elementor-<?php echo esc_attr( $wrapper_element ); ?>-wrap">
			<div class="elementor-background-overlay"></div>
			<?php if ( ! $is_dom_optimization_active ) { ?>
				<div class="elementor-widget-wrap"></div>
			<?php } ?>
		</div>
		<?php
	}

	/**
	 * Before column rendering.
	 *
	 * Used to add stuff before the column element.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function before_render() {
		$settings = $this->get_settings_for_display();

		$has_background_overlay = in_array( $settings['background_overlay_background'], [ 'classic', 'gradient' ], true ) ||
								  in_array( $settings['background_overlay_hover_background'], [ 'classic', 'gradient' ], true );

		$is_dom_optimization_active = Plugin::$instance->experiments->is_feature_active( 'e_dom_optimization' );
		$wrapper_attribute_string = $is_dom_optimization_active ? '_widget_wrapper' : '_inner_wrapper';

		$column_wrap_classes = $is_dom_optimization_active ? [ 'elementor-widget-wrap' ] : [ 'elementor-column-wrap' ];

		if ( $this->get_children() ) {
			$column_wrap_classes[] = 'elementor-element-populated';
		}

		$this->add_render_attribute( [
			'_inner_wrapper' => [
				'class' => $column_wrap_classes,
			],
			'_widget_wrapper' => [
				'class' => $is_dom_optimization_active ? $column_wrap_classes : 'elementor-widget-wrap',
			],
			'_background_overlay' => [
				'class' => [ 'elementor-background-overlay' ],
			],
		] );
		?>
		<<?php
		// PHPCS - the method get_html_tag is safe.
		echo $this->get_html_tag(); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
		?> <?php $this->print_render_attribute_string( '_wrapper' ); ?>>
			<div <?php $this->print_render_attribute_string( $wrapper_attribute_string ); ?>>
		<?php if ( $has_background_overlay ) : ?>
			<div <?php $this->print_render_attribute_string( '_background_overlay' ); ?>></div>
		<?php endif; ?>
		<?php if ( ! $is_dom_optimization_active ) : ?>
			<div <?php $this->print_render_attribute_string( '_widget_wrapper' ); ?>>
		<?php endif; ?>
		<?php
	}

	/**
	 * After column rendering.
	 *
	 * Used to add stuff after the column element.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function after_render() {
		if ( ! Plugin::$instance->experiments->is_feature_active( 'e_dom_optimization' ) ) { ?>
				</div>
		<?php } ?>
			</div>
		</<?php
		// PHPCS - the method get_html_tag is safe.
		echo $this->get_html_tag(); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>>
		<?php
	}

	/**
	 * Add column render attributes.
	 *
	 * Used to add attributes to the current column wrapper HTML tag.
	 *
	 * @since 1.3.0
	 * @access protected
	 */
	protected function add_render_attributes() {

		$is_inner = $this->get_data( 'isInner' );

		$column_type = ! empty( $is_inner ) ? 'inner' : 'top';

		$settings = $this->get_settings();

		$this->add_render_attribute(
			'_wrapper', 'class', [
				'elementor-column',
				'elementor-col-' . $settings['_column_size'],
				'elementor-' . $column_type . '-column',
			]
		);

		parent::add_render_attributes();
	}

	/**
	 * Get default child type.
	 *
	 * Retrieve the column child type based on element data.
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @param array $element_data Element ID.
	 *
	 * @return Element_Base|false Column default child type.
	 */
	protected function _get_default_child_type( array $element_data ) {
		if ( 'section' === $element_data['elType'] ) {
			return Plugin::$instance->elements_manager->get_element_types( 'section' );
		}

		// If the element doesn't exists (disabled element, experiment, etc.), return false to prevent errors.
		if ( empty( $element_data['widgetType'] ) ) {
			return false;
		}

		return Plugin::$instance->widgets_manager->get_widget_types( $element_data['widgetType'] );
	}

	/**
	 * Get HTML tag.
	 *
	 * Retrieve the column element HTML tag.
	 *
	 * @since 1.5.3
	 * @access private
	 *
	 * @return string Column HTML tag.
	 */
	private function get_html_tag() {
		$html_tag = $this->get_settings( 'html_tag' );

		if ( empty( $html_tag ) ) {
			$html_tag = 'div';
		}

		return Utils::validate_html_tag( $html_tag );
	}
}
includes/base/widget-base.php000064400000067675151327220420012213 0ustar00<?php
namespace Elementor;

use Elementor\Core\Page_Assets\Data_Managers\Widgets_Css as Widgets_Css_Data_Manager;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor widget base.
 *
 * An abstract class to register new Elementor widgets. It extended the
 * `Element_Base` class to inherit its properties.
 *
 * This abstract class must be extended in order to register new widgets.
 *
 * @since 1.0.0
 * @abstract
 */
abstract class Widget_Base extends Element_Base {
	/**
	 * Whether the widget has content.
	 *
	 * Used in cases where the widget has no content. When widgets uses only
	 * skins to display dynamic content generated on the server. For example the
	 * posts widget in Elementor Pro. Default is true, the widget has content
	 * template.
	 *
	 * @access protected
	 *
	 * @var bool
	 */
	protected $_has_template_content = true;

	/**
	 * Registered Runtime Widgets.
	 *
	 * Registering in runtime all widgets that are being used on the page.
	 *
	 * @since 3.3.0
	 * @access public
	 * @static
	 *
	 * @var array
	 */
	public static $registered_runtime_widgets = [];

	public static $registered_inline_css_widgets = [];

	private static $widgets_css_data_manager;

	/**
	 * Get element type.
	 *
	 * Retrieve the element type, in this case `widget`.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @return string The type.
	 */
	public static function get_type() {
		return 'widget';
	}

	/**
	 * Get widget icon.
	 *
	 * Retrieve the widget icon.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget icon.
	 */
	public function get_icon() {
		return 'eicon-apps';
	}

	/**
	 * Get widget keywords.
	 *
	 * Retrieve the widget keywords.
	 *
	 * @since 1.0.10
	 * @access public
	 *
	 * @return array Widget keywords.
	 */
	public function get_keywords() {
		return [];
	}

	/**
	 * Get widget categories.
	 *
	 * Retrieve the widget categories.
	 *
	 * @since 1.0.10
	 * @access public
	 *
	 * @return array Widget categories.
	 */
	public function get_categories() {
		return [ 'general' ];
	}

	/**
	 * Widget base constructor.
	 *
	 * Initializing the widget base class.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @throws \Exception If arguments are missing when initializing a full widget
	 *                   instance.
	 *
	 * @param array      $data Widget data. Default is an empty array.
	 * @param array|null $args Optional. Widget default arguments. Default is null.
	 */
	public function __construct( $data = [], $args = null ) {
		parent::__construct( $data, $args );

		$is_type_instance = $this->is_type_instance();

		if ( ! $is_type_instance && null === $args ) {
			throw new \Exception( '`$args` argument is required when initializing a full widget instance.' );
		}

		if ( $is_type_instance ) {
			if ( $this->has_own_method( '_register_skins', self::class ) ) {
				Plugin::$instance->modules_manager->get_modules( 'dev-tools' )->deprecation->deprecated_function( '_register_skins', '3.1.0', __CLASS__ . '::register_skins()' );

				$this->_register_skins();
			} else {
				$this->register_skins();
			}

			$widget_name = $this->get_name();

			/**
			 * Widget skin init.
			 *
			 * Fires when Elementor widget is being initialized.
			 *
			 * The dynamic portion of the hook name, `$widget_name`, refers to the widget name.
			 *
			 * @since 1.0.0
			 *
			 * @param Widget_Base $this The current widget.
			 */
			do_action( "elementor/widget/{$widget_name}/skins_init", $this );
		}
	}

	/**
	 * Get stack.
	 *
	 * Retrieve the widget stack of controls.
	 *
	 * @since 1.9.2
	 * @access public
	 *
	 * @param bool $with_common_controls Optional. Whether to include the common controls. Default is true.
	 *
	 * @return array Widget stack of controls.
	 */
	public function get_stack( $with_common_controls = true ) {
		$stack = parent::get_stack();

		if ( $with_common_controls && 'common' !== $this->get_unique_name() ) {
			/** @var Widget_Common $common_widget */
			$common_widget = Plugin::$instance->widgets_manager->get_widget_types( 'common' );

			$stack['controls'] = array_merge( $stack['controls'], $common_widget->get_controls() );

			$stack['tabs'] = array_merge( $stack['tabs'], $common_widget->get_tabs_controls() );
		}

		return $stack;
	}

	/**
	 * Get widget controls pointer index.
	 *
	 * Retrieve widget pointer index where the next control should be added.
	 *
	 * While using injection point, it will return the injection point index. Otherwise index of the last control of the
	 * current widget itself without the common controls, plus one.
	 *
	 * @since 1.9.2
	 * @access public
	 *
	 * @return int Widget controls pointer index.
	 */
	public function get_pointer_index() {
		$injection_point = $this->get_injection_point();

		if ( null !== $injection_point ) {
			return $injection_point['index'];
		}

		return count( $this->get_stack( false )['controls'] );
	}

	/**
	 * Show in panel.
	 *
	 * Whether to show the widget in the panel or not. By default returns true.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return bool Whether to show the widget in the panel or not.
	 */
	public function show_in_panel() {
		return true;
	}

	/**
	 * Start widget controls section.
	 *
	 * Used to add a new section of controls to the widget. Regular controls and
	 * skin controls.
	 *
	 * Note that when you add new controls to widgets they must be wrapped by
	 * `start_controls_section()` and `end_controls_section()`.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param string $section_id Section ID.
	 * @param array  $args       Section arguments Optional.
	 */
	public function start_controls_section( $section_id, array $args = [] ) {
		parent::start_controls_section( $section_id, $args );

		static $is_first_section = true;

		if ( $is_first_section ) {
			$this->register_skin_control();

			$is_first_section = false;
		}
	}

	/**
	 * Register the Skin Control if the widget has skins.
	 *
	 * An internal method that is used to add a skin control to the widget.
	 * Added at the top of the controls section.
	 *
	 * @since 2.0.0
	 * @access private
	 */
	private function register_skin_control() {
		$skins = $this->get_skins();
		if ( ! empty( $skins ) ) {
			$skin_options = [];

			if ( $this->_has_template_content ) {
				$skin_options[''] = esc_html__( 'Default', 'elementor' );
			}

			foreach ( $skins as $skin_id => $skin ) {
				$skin_options[ $skin_id ] = $skin->get_title();
			}

			// Get the first item for default value
			$default_value = array_keys( $skin_options );
			$default_value = array_shift( $default_value );

			if ( 1 >= count( $skin_options ) ) {
				$this->add_control(
					'_skin',
					[
						'label' => esc_html__( 'Skin', 'elementor' ),
						'type' => Controls_Manager::HIDDEN,
						'default' => $default_value,
					]
				);
			} else {
				$this->add_control(
					'_skin',
					[
						'label' => esc_html__( 'Skin', 'elementor' ),
						'type' => Controls_Manager::SELECT,
						'default' => $default_value,
						'options' => $skin_options,
					]
				);
			}
		}
	}

	/**
	 * Register widget skins - deprecated prefixed method
	 *
	 * @since 1.7.12
	 * @access protected
	 * @deprecated 3.1.0
	 */
	protected function _register_skins() {
		Plugin::$instance->modules_manager->get_modules( 'dev-tools' )->deprecation->deprecated_function( __METHOD__, '3.1.0', __CLASS__ . '::register_skins()' );

		$this->register_skins();
	}

	/**
	 * Register widget skins.
	 *
	 * This method is activated while initializing the widget base class. It is
	 * used to assign skins to widgets with `add_skin()` method.
	 *
	 * Usage:
	 *
	 *    protected function register_skins() {
	 *        $this->add_skin( new Skin_Classic( $this ) );
	 *    }
	 *
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_skins() {}

	/**
	 * Get initial config.
	 *
	 * Retrieve the current widget initial configuration.
	 *
	 * Adds more configuration on top of the controls list, the tabs assigned to
	 * the control, element name, type, icon and more. This method also adds
	 * widget type, keywords and categories.
	 *
	 * @since 2.9.0
	 * @access protected
	 *
	 * @return array The initial widget config.
	 */
	protected function get_initial_config() {
		$config = [
			'widget_type' => $this->get_name(),
			'keywords' => $this->get_keywords(),
			'categories' => $this->get_categories(),
			'html_wrapper_class' => $this->get_html_wrapper_class(),
			'show_in_panel' => $this->show_in_panel(),
		];

		$stack = Plugin::$instance->controls_manager->get_element_stack( $this );

		if ( $stack ) {
			$config['controls'] = $this->get_stack( false )['controls'];
			$config['tabs_controls'] = $this->get_tabs_controls();
		}

		return array_merge( parent::get_initial_config(), $config );
	}

	/**
	 * @since 2.3.1
	 * @access protected
	 */
	protected function should_print_empty() {
		return false;
	}

	/**
	 * Print widget content template.
	 *
	 * Used to generate the widget content template on the editor, using a
	 * Backbone JavaScript template.
	 *
	 * @since 2.0.0
	 * @access protected
	 *
	 * @param string $template_content Template content.
	 */
	protected function print_template_content( $template_content ) {
		?>
		<div class="elementor-widget-container">
			<?php
			echo $template_content; // XSS ok.
			?>
		</div>
		<?php
	}

	/**
	 * Parse text editor.
	 *
	 * Parses the content from rich text editor with shortcodes, oEmbed and
	 * filtered data.
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @param string $content Text editor content.
	 *
	 * @return string Parsed content.
	 */
	protected function parse_text_editor( $content ) {
		/** This filter is documented in wp-includes/widgets/class-wp-widget-text.php */
		$content = apply_filters( 'widget_text', $content, $this->get_settings() );

		$content = shortcode_unautop( $content );
		$content = do_shortcode( $content );
		$content = wptexturize( $content );

		if ( $GLOBALS['wp_embed'] instanceof \WP_Embed ) {
			$content = $GLOBALS['wp_embed']->autoembed( $content );
		}

		return $content;
	}

	/**
	 * Safe print parsed text editor.
	 *
	 * @uses static::parse_text_editor.
	 *
	 * @access protected
	 *
	 * @param string $content Text editor content.
	 */
	final protected function print_text_editor( $content ) {
		// PHPCS - the method `parse_text_editor` is safe.
		echo static::parse_text_editor( $content ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
	}

	/**
	 * Get HTML wrapper class.
	 *
	 * Retrieve the widget container class. Can be used to override the
	 * container class for specific widgets.
	 *
	 * @since 2.0.9
	 * @access protected
	 */
	protected function get_html_wrapper_class() {
		return 'elementor-widget-' . $this->get_name();
	}

	/**
	 * Add widget render attributes.
	 *
	 * Used to add attributes to the current widget wrapper HTML tag.
	 *
	 * @since 1.0.0
	 * @access protected
	 */
	protected function add_render_attributes() {
		parent::add_render_attributes();

		$this->add_render_attribute(
			'_wrapper', 'class', [
				'elementor-widget',
				$this->get_html_wrapper_class(),
			]
		);

		$settings = $this->get_settings();

		$this->add_render_attribute( '_wrapper', 'data-widget_type', $this->get_name() . '.' . ( ! empty( $settings['_skin'] ) ? $settings['_skin'] : 'default' ) );
	}

	/**
	 * Add lightbox data to image link.
	 *
	 * Used to add lightbox data attributes to image link HTML.
	 *
	 * @since 2.9.1
	 * @access public
	 *
	 * @param string $link_html Image link HTML.
	 * @param string $id Attachment id.
	 *
	 * @return string Image link HTML with lightbox data attributes.
	 */
	public function add_lightbox_data_to_image_link( $link_html, $id ) {
		$settings = $this->get_settings_for_display();
		$open_lightbox = isset( $settings['open_lightbox'] ) ? $settings['open_lightbox'] : null;

		if ( Plugin::$instance->editor->is_edit_mode() ) {
			$this->add_render_attribute( 'link', 'class', 'elementor-clickable', true );
		}

		$this->add_lightbox_data_attributes( 'link', $id, $open_lightbox, $this->get_id(), true );
		return preg_replace( '/^<a/', '<a ' . $this->get_render_attribute_string( 'link' ), $link_html );
	}

	/**
	 * Add Light-Box attributes.
	 *
	 * Used to add Light-Box-related data attributes to links that open media files.
	 *
	 * @param array|string $element         The link HTML element.
	 * @param int $id                       The ID of the image
	 * @param string $lightbox_setting_key  The setting key that dictates weather to open the image in a lightbox
	 * @param string $group_id              Unique ID for a group of lightbox images
	 * @param bool $overwrite               Optional. Whether to overwrite existing
	 *                                      attribute. Default is false, not to overwrite.
	 *
	 * @return Widget_Base Current instance of the widget.
	 * @since 2.9.0
	 * @access public
	 *
	 */
	public function add_lightbox_data_attributes( $element, $id = null, $lightbox_setting_key = null, $group_id = null, $overwrite = false ) {
		$kit = Plugin::$instance->kits_manager->get_active_kit();

		$is_global_image_lightbox_enabled = 'yes' === $kit->get_settings( 'global_image_lightbox' );

		if ( 'no' === $lightbox_setting_key ) {
			if ( $is_global_image_lightbox_enabled ) {
				$this->add_render_attribute( $element, 'data-elementor-open-lightbox', 'no', $overwrite );
			}

			return $this;
		}

		if ( 'yes' !== $lightbox_setting_key && ! $is_global_image_lightbox_enabled ) {
			return $this;
		}

		$attributes['data-elementor-open-lightbox'] = 'yes';

		if ( $group_id ) {
			$attributes['data-elementor-lightbox-slideshow'] = $group_id;
		}

		if ( $id ) {
			$lightbox_image_attributes = Plugin::$instance->images_manager->get_lightbox_image_attributes( $id );

			if ( isset( $lightbox_image_attributes['title'] ) ) {
				$attributes['data-elementor-lightbox-title'] = $lightbox_image_attributes['title'];
			}

			if ( isset( $lightbox_image_attributes['description'] ) ) {
				$attributes['data-elementor-lightbox-description'] = $lightbox_image_attributes['description'];
			}
		}

		$this->add_render_attribute( $element, $attributes, null, $overwrite );

		return $this;
	}

	/**
	 * Render widget output on the frontend.
	 *
	 * Used to generate the final HTML displayed on the frontend.
	 *
	 * Note that if skin is selected, it will be rendered by the skin itself,
	 * not the widget.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function render_content() {
		/**
		 * Before widget render content.
		 *
		 * Fires before Elementor widget is being rendered.
		 *
		 * @since 1.0.0
		 *
		 * @param Widget_Base $this The current widget.
		 */
		do_action( 'elementor/widget/before_render_content', $this );

		ob_start();

		$skin = $this->get_current_skin();
		if ( $skin ) {
			$skin->set_parent( $this );
			$skin->render_by_mode();
		} else {
			$this->render_by_mode();
		}

		$widget_content = ob_get_clean();

		if ( empty( $widget_content ) ) {
			return;
		}
		?>
		<div class="elementor-widget-container">
			<?php
			if ( $this->is_widget_first_render( $this->get_group_name() ) ) {
				$this->register_runtime_widget( $this->get_group_name() );
			}

			$this->print_widget_css();

			// get_name

			/**
			 * Render widget content.
			 *
			 * Filters the widget content before it's rendered.
			 *
			 * @since 1.0.0
			 *
			 * @param string      $widget_content The content of the widget.
			 * @param Widget_Base $this           The widget.
			 */
			$widget_content = apply_filters( 'elementor/widget/render_content', $widget_content, $this );

			echo $widget_content; // XSS ok.
			?>
		</div>
		<?php
	}

	protected function is_widget_first_render( $widget_name ) {
		return ! in_array( $widget_name, self::$registered_runtime_widgets, true );
	}

	/**
	 * Render widget plain content.
	 *
	 * Elementor saves the page content in a unique way, but it's not the way
	 * WordPress saves data. This method is used to save generated HTML to the
	 * database as plain content the WordPress way.
	 *
	 * When rendering plain content, it allows other WordPress plugins to
	 * interact with the content - to search, check SEO and other purposes. It
	 * also allows the site to keep working even if Elementor is deactivated.
	 *
	 * Note that if the widget uses shortcodes to display the data, the best
	 * practice is to return the shortcode itself.
	 *
	 * Also note that if the widget don't display any content it should return
	 * an empty string. For example Elementor Pro Form Widget uses this method
	 * to return an empty string because there is no content to return. This way
	 * if Elementor Pro will be deactivated there won't be any form to display.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function render_plain_content() {
		$this->render_content();
	}

	/**
	 * Before widget rendering.
	 *
	 * Used to add stuff before the widget `_wrapper` element.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function before_render() {
		?>
		<div <?php $this->print_render_attribute_string( '_wrapper' ); ?>>
		<?php
	}

	/**
	 * After widget rendering.
	 *
	 * Used to add stuff after the widget `_wrapper` element.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function after_render() {
		?>
		</div>
		<?php
	}

	/**
	 * Get the element raw data.
	 *
	 * Retrieve the raw element data, including the id, type, settings, child
	 * elements and whether it is an inner element.
	 *
	 * The data with the HTML used always to display the data, but the Elementor
	 * editor uses the raw data without the HTML in order not to render the data
	 * again.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param bool $with_html_content Optional. Whether to return the data with
	 *                                HTML content or without. Used for caching.
	 *                                Default is false, without HTML.
	 *
	 * @return array Element raw data.
	 */
	public function get_raw_data( $with_html_content = false ) {
		$data = parent::get_raw_data( $with_html_content );

		unset( $data['isInner'] );

		$data['widgetType'] = $this->get_data( 'widgetType' );

		if ( $with_html_content ) {
			ob_start();

			$this->render_content();

			$data['htmlCache'] = ob_get_clean();
		}

		return $data;
	}

	/**
	 * Print widget content.
	 *
	 * Output the widget final HTML on the frontend.
	 *
	 * @since 1.0.0
	 * @access protected
	 */
	protected function print_content() {
		$this->render_content();
	}

	/**
	 * Print a setting content without escaping.
	 *
	 * Script tags are allowed on frontend according to the WP theme securing policy.
	 *
	 * @param string $setting
	 * @param null $repeater_name
	 * @param null $index
	 */
	final public function print_unescaped_setting( $setting, $repeater_name = null, $index = null ) {
		if ( $repeater_name ) {
			$repeater = $this->get_settings_for_display( $repeater_name );
			$output = $repeater[ $index ][ $setting ];
		} else {
			$output = $this->get_settings_for_display( $setting );
		}

		echo $output; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
	}

	/**
	 * Get default data.
	 *
	 * Retrieve the default widget data. Used to reset the data on initialization.
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @return array Default data.
	 */
	protected function get_default_data() {
		$data = parent::get_default_data();

		$data['widgetType'] = '';

		return $data;
	}

	/**
	 * Get default child type.
	 *
	 * Retrieve the widget child type based on element data.
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @param array $element_data Widget ID.
	 *
	 * @return array|false Child type or false if it's not a valid widget.
	 */
	protected function _get_default_child_type( array $element_data ) {
		return Plugin::$instance->elements_manager->get_element_types( 'section' );
	}

	/**
	 * Get repeater setting key.
	 *
	 * Retrieve the unique setting key for the current repeater item. Used to connect the current element in the
	 * repeater to it's settings model and it's control in the panel.
	 *
	 * PHP usage (inside `Widget_Base::render()` method):
	 *
	 *    $tabs = $this->get_settings( 'tabs' );
	 *    foreach ( $tabs as $index => $item ) {
	 *        $tab_title_setting_key = $this->get_repeater_setting_key( 'tab_title', 'tabs', $index );
	 *        $this->add_inline_editing_attributes( $tab_title_setting_key, 'none' );
	 *        echo '<div ' . $this->get_render_attribute_string( $tab_title_setting_key ) . '>' . $item['tab_title'] . '</div>';
	 *    }
	 *
	 * @since 1.8.0
	 * @access protected
	 *
	 * @param string $setting_key      The current setting key inside the repeater item (e.g. `tab_title`).
	 * @param string $repeater_key     The repeater key containing the array of all the items in the repeater (e.g. `tabs`).
	 * @param int $repeater_item_index The current item index in the repeater array (e.g. `3`).
	 *
	 * @return string The repeater setting key (e.g. `tabs.3.tab_title`).
	 */
	protected function get_repeater_setting_key( $setting_key, $repeater_key, $repeater_item_index ) {
		return implode( '.', [ $repeater_key, $repeater_item_index, $setting_key ] );
	}

	/**
	 * Add inline editing attributes.
	 *
	 * Define specific area in the element to be editable inline. The element can have several areas, with this method
	 * you can set the area inside the element that can be edited inline. You can also define the type of toolbar the
	 * user will see, whether it will be a basic toolbar or an advanced one.
	 *
	 * Note: When you use wysiwyg control use the advanced toolbar, with textarea control use the basic toolbar. Text
	 * control should not have toolbar.
	 *
	 * PHP usage (inside `Widget_Base::render()` method):
	 *
	 *    $this->add_inline_editing_attributes( 'text', 'advanced' );
	 *    echo '<div ' . $this->get_render_attribute_string( 'text' ) . '>' . $this->get_settings( 'text' ) . '</div>';
	 *
	 * @since 1.8.0
	 * @access protected
	 *
	 * @param string $key     Element key.
	 * @param string $toolbar Optional. Toolbar type. Accepted values are `advanced`, `basic` or `none`. Default is
	 *                        `basic`.
	 */
	protected function add_inline_editing_attributes( $key, $toolbar = 'basic' ) {
		if ( ! Plugin::$instance->editor->is_edit_mode() ) {
			return;
		}

		$this->add_render_attribute( $key, [
			'class' => 'elementor-inline-editing',
			'data-elementor-setting-key' => $key,
		] );

		if ( 'basic' !== $toolbar ) {
			$this->add_render_attribute( $key, [
				'data-elementor-inline-editing-toolbar' => $toolbar,
			] );
		}
	}

	/**
	 * Add new skin.
	 *
	 * Register new widget skin to allow the user to set custom designs. Must be
	 * called inside the `register_skins()` method.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param Skin_Base $skin Skin instance.
	 */
	public function add_skin( Skin_Base $skin ) {
		Plugin::$instance->skins_manager->add_skin( $this, $skin );
	}

	/**
	 * Get single skin.
	 *
	 * Retrieve a single skin based on skin ID, from all the skin assigned to
	 * the widget. If the skin does not exist or not assigned to the widget,
	 * return false.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param string $skin_id Skin ID.
	 *
	 * @return string|false Single skin, or false.
	 */
	public function get_skin( $skin_id ) {
		$skins = $this->get_skins();
		if ( isset( $skins[ $skin_id ] ) ) {
			return $skins[ $skin_id ];
		}

		return false;
	}

	/**
	 * Get current skin ID.
	 *
	 * Retrieve the ID of the current skin.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Current skin.
	 */
	public function get_current_skin_id() {
		return $this->get_settings( '_skin' );
	}

	/**
	 * Get current skin.
	 *
	 * Retrieve the current skin, or if non exist return false.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return Skin_Base|false Current skin or false.
	 */
	public function get_current_skin() {
		return $this->get_skin( $this->get_current_skin_id() );
	}

	/**
	 * Remove widget skin.
	 *
	 * Unregister an existing skin and remove it from the widget.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param string $skin_id Skin ID.
	 *
	 * @return \WP_Error|true Whether the skin was removed successfully from the widget.
	 */
	public function remove_skin( $skin_id ) {
		return Plugin::$instance->skins_manager->remove_skin( $this, $skin_id );
	}

	/**
	 * Get widget skins.
	 *
	 * Retrieve all the skin assigned to the widget.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return Skin_Base[]
	 */
	public function get_skins() {
		return Plugin::$instance->skins_manager->get_skins( $this );
	}

	/**
	 * Get group name.
	 *
	 * Some widgets need to use group names, this method allows you to create them.
	 * By default it retrieves the regular name.
	 *
	 * @since 3.3.0
	 * @access public
	 *
	 * @return string Unique name.
	 */
	public function get_group_name() {
		return $this->get_name();
	}

	/**
	 * Get Inline CSS dependencies.
	 *
	 * Retrieve a list of inline CSS dependencies that the element requires.
	 *
	 * @since 3.3.0
	 * @access public
	 *
	 * @return array.
	 */
	public function get_inline_css_depends() {
		return [];
	}

	/**
	 * @param string $plugin_title  Plugin's title
	 * @param string $since         Plugin version widget was deprecated
	 * @param string $last          Plugin version in which the widget will be removed
	 * @param string $replacement   Widget replacement
	 */
	protected function deprecated_notice( $plugin_title, $since, $last = '', $replacement = '' ) {
		$this->start_controls_section(
			'Deprecated',
			[
				'label' => esc_html__( 'Deprecated', 'elementor' ),
			]
		);

		$this->add_control(
			'deprecated_notice',
			[
				'type' => Controls_Manager::DEPRECATED_NOTICE,
				'widget' => $this->get_title(),
				'since' => $since,
				'last' => $last,
				'plugin' => $plugin_title,
				'replacement' => $replacement,
			]
		);

		$this->end_controls_section();

	}

	public function register_runtime_widget( $widget_name ) {
		self::$registered_runtime_widgets[] = $widget_name;
	}

	public function get_widget_css_config( $widget_name ) {
		$direction = is_rtl() ? '-rtl' : '';

		$css_file_path = 'css/widget-' . $widget_name . $direction . '.min.css';

		return [
			'key' => $widget_name,
			'version' => ELEMENTOR_VERSION,
			'file_path' => ELEMENTOR_ASSETS_PATH . $css_file_path,
			'data' => [
				'file_url' => ELEMENTOR_ASSETS_URL . $css_file_path,
			],
		];
	}

	public function get_css_config() {
		return $this->get_widget_css_config( $this->get_group_name() );
	}

	private function get_widget_css() {
		$widgets_css_data_manager = $this->get_widgets_css_data_manager();

		$widgets_list = $this->get_inline_css_depends();

		$widgets_list[] = $this->get_group_name();

		$widget_css = '';

		foreach ( $widgets_list as $widget_data ) {
			$widget_name = isset( $widget_data['name'] ) ? $widget_data['name'] : $widget_data;

			if ( ! in_array( $widget_name, self::$registered_inline_css_widgets, true ) ) {
				if ( $this->get_group_name() === $widget_name ) {
					$config = $this->get_css_config();
				} else {
					/**
					 * The core-dependency allowing to create a dependency specifically with the core widgets.
					 * Otherwise, the config will be taken from the class that inherits from Widget_Base.
					 */
					$is_core_dependency = isset( $widget_data['is_core_dependency'] ) ? true : false;

					$config = $is_core_dependency ? self::get_widget_css_config( $widget_name ) : $this->get_widget_css_config( $widget_name );
				}

				$widget_css .= $widgets_css_data_manager->get_asset_data( $config );

				self::$registered_inline_css_widgets[] = $widget_name;
			}
		}

		return $widget_css;

	}

	private function is_inline_css_mode() {
		static $is_active;

		if ( null === $is_active ) {
			$is_edit_mode = Plugin::$instance->editor->is_edit_mode();
			$is_preview_mode = Plugin::$instance->preview->is_preview_mode();
			$is_optimized_mode = Plugin::$instance->experiments->is_feature_active( 'e_optimized_css_loading' );

			$is_active = ( Utils::is_script_debug() || $is_edit_mode || $is_preview_mode || ! $is_optimized_mode ) ? false : true;
		}

		return $is_active;
	}

	private function print_widget_css() {
		if ( ! $this->is_inline_css_mode() ) {
			return;
		}

		Utils::print_unescaped_internal_string( $this->get_widget_css() );
	}

	private function get_widgets_css_data_manager() {
		if ( ! self::$widgets_css_data_manager ) {
			self::$widgets_css_data_manager = new Widgets_Css_Data_Manager();
		}

		return self::$widgets_css_data_manager;
	}
}
includes/base/sub-controls-stack.php000064400000012435151327220420013535 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

/**
 * Elementor sub controls stack.
 *
 * An abstract class that can be used to divide a large ControlsStack into small parts.
 *
 * @abstract
 */
abstract class Sub_Controls_Stack {
	/**
	 * @var Controls_Stack
	 */
	protected $parent;

	/**
	 * Get self ID.
	 *
	 * Retrieve the self ID.
	 *
	 * @access public
	 * @abstract
	 */
	abstract public function get_id();

	/**
	 * Get self title.
	 *
	 * Retrieve the self title.
	 *
	 * @access public
	 * @abstract
	 */
	abstract public function get_title();

	/**
	 * Constructor.
	 *
	 * Initializing the base class by setting parent stack.
	 *
	 * @access public
	 * @param Controls_Stack $parent
	 */
	public function __construct( $parent ) {
		$this->parent = $parent;
	}

	/**
	 * Get control ID.
	 *
	 * Retrieve the control ID. Note that the sub controls stack may have a special prefix
	 * to distinguish them from regular controls, and from controls in other
	 * sub stack.
	 *
	 * By default do nothing, and return the original id.
	 *
	 * @access protected
	 *
	 * @param string $control_base_id Control base ID.
	 *
	 * @return string Control ID.
	 */
	protected function get_control_id( $control_base_id ) {
		return $control_base_id;
	}

	/**
	 * Add new control.
	 *
	 * Register a single control to allow the user to set/update data.
	 *
	 * @access public
	 *
	 * @param string $id   Control ID.
	 * @param array  $args Control arguments.
	 * @param array  $options
	 *
	 * @return bool True if added, False otherwise.
	 */
	public function add_control( $id, $args, $options = [] ) {
		return $this->parent->add_control( $this->get_control_id( $id ), $args, $options );
	}

	/**
	 * Update control.
	 *
	 * Change the value of an existing control.
	 *
	 * @access public
	 *
	 * @param string $id      Control ID.
	 * @param array  $args    Control arguments. Only the new fields you want to update.
	 * @param array  $options Optional. Some additional options.
	 */
	public function update_control( $id, $args, array $options = [] ) {
		$this->parent->update_control( $this->get_control_id( $id ), $args, $options );
	}

	/**
	 * Remove control.
	 *
	 * Unregister an existing control.
	 *
	 * @access public
	 *
	 * @param string $id Control ID.
	 */
	public function remove_control( $id ) {
		$this->parent->remove_control( $this->get_control_id( $id ) );
	}

	/**
	 * Add new group control.
	 *
	 * Register a set of related controls grouped together as a single unified
	 * control.
	 *
	 * @access public
	 *
	 * @param string $group_name Group control name.
	 * @param array  $args       Group control arguments. Default is an empty array.
	 * @param array  $options
	 *
	 */
	public function add_group_control( $group_name, $args, $options = [] ) {
		$args['name'] = $this->get_control_id( $args['name'] );
		$this->parent->add_group_control( $group_name, $args, $options );
	}

	/**
	 * Add new responsive control.
	 *
	 * Register a set of controls to allow editing based on user screen size.
	 *
	 * @access public
	 *
	 * @param string $id   Responsive control ID.
	 * @param array  $args Responsive control arguments.
	 * @param array  $options
	 */
	public function add_responsive_control( $id, $args, $options = [] ) {
		$this->parent->add_responsive_control( $this->get_control_id( $id ), $args, $options );
	}

	/**
	 * Update responsive control.
	 *
	 * Change the value of an existing responsive control.
	 *
	 * @access public
	 *
	 * @param string $id   Responsive control ID.
	 * @param array  $args Responsive control arguments.
	 */
	public function update_responsive_control( $id, $args ) {
		$this->parent->update_responsive_control( $this->get_control_id( $id ), $args );
	}

	/**
	 * Remove responsive control.
	 *
	 * Unregister an existing responsive control.
	 *
	 * @access public
	 *
	 * @param string $id Responsive control ID.
	 */
	public function remove_responsive_control( $id ) {
		$this->parent->remove_responsive_control( $this->get_control_id( $id ) );
	}

	/**
	 * Start controls section.
	 *
	 * Used to add a new section of controls to the stack.
	 *
	 * @access public
	 *
	 * @param string $id   Section ID.
	 * @param array  $args Section arguments.
	 */

	public function start_controls_section( $id, $args = [] ) {
		$this->parent->start_controls_section( $this->get_control_id( $id ), $args );
	}

	/**
	 * End controls section.
	 *
	 * Used to close an existing open controls section.
	 *
	 * @access public
	 */
	public function end_controls_section() {
		$this->parent->end_controls_section();
	}

	/**
	 * Start controls tabs.
	 *
	 * Used to add a new set of tabs inside a section.
	 *
	 * @access public
	 *
	 * @param string $id Control ID.
	 */
	public function start_controls_tabs( $id ) {
		$this->parent->start_controls_tabs( $this->get_control_id( $id ) );
	}

	public function start_controls_tab( $id, $args ) {
		$this->parent->start_controls_tab( $this->get_control_id( $id ), $args );
	}


	/**
	 * End controls tabs.
	 *
	 * Used to close an existing open controls tabs.
	 *
	 * @access public
	 */
	public function end_controls_tab() {
		$this->parent->end_controls_tab();
	}

	/**
	 * End controls tabs.
	 *
	 * Used to close an existing open controls tabs.
	 *
	 * @access public
	 */
	public function end_controls_tabs() {
		$this->parent->end_controls_tabs();
	}
}
includes/base/element-base.php000064400000050400151327220420012333 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor element base.
 *
 * An abstract class to register new Elementor elements. It extended the
 * `Controls_Stack` class to inherit its properties.
 *
 * This abstract class must be extended in order to register new elements.
 *
 * @since 1.0.0
 * @abstract
 */
abstract class Element_Base extends Controls_Stack {

	/**
	 * Child elements.
	 *
	 * Holds all the child elements of the element.
	 *
	 * @access private
	 *
	 * @var Element_Base[]
	 */
	private $children;

	/**
	 * Element default arguments.
	 *
	 * Holds all the default arguments of the element. Used to store additional
	 * data. For example WordPress widgets use this to store widget names.
	 *
	 * @access private
	 *
	 * @var array
	 */
	private $default_args = [];

	/**
	 * Is type instance.
	 *
	 * Whether the element is an instance of that type or not.
	 *
	 * @access private
	 *
	 * @var bool
	 */
	private $is_type_instance = true;

	/**
	 * Depended scripts.
	 *
	 * Holds all the element depended scripts to enqueue.
	 *
	 * @since 1.9.0
	 * @access private
	 *
	 * @var array
	 */
	private $depended_scripts = [];

	/**
	 * Depended styles.
	 *
	 * Holds all the element depended styles to enqueue.
	 *
	 * @since 1.9.0
	 * @access private
	 *
	 * @var array
	 */
	private $depended_styles = [];

	/**
	 * Add script depends.
	 *
	 * Register new script to enqueue by the handler.
	 *
	 * @since 1.9.0
	 * @access public
	 *
	 * @param string $handler Depend script handler.
	 */
	public function add_script_depends( $handler ) {
		$this->depended_scripts[] = $handler;
	}

	/**
	 * Add style depends.
	 *
	 * Register new style to enqueue by the handler.
	 *
	 * @since 1.9.0
	 * @access public
	 *
	 * @param string $handler Depend style handler.
	 */
	public function add_style_depends( $handler ) {
		$this->depended_styles[] = $handler;
	}

	/**
	 * Get script dependencies.
	 *
	 * Retrieve the list of script dependencies the element requires.
	 *
	 * @since 1.3.0
	 * @access public
	 *
	 * @return array Element scripts dependencies.
	 */
	public function get_script_depends() {
		return $this->depended_scripts;
	}

	/**
	 * Enqueue scripts.
	 *
	 * Registers all the scripts defined as element dependencies and enqueues
	 * them. Use `get_script_depends()` method to add custom script dependencies.
	 *
	 * @since 1.3.0
	 * @access public
	 */
	final public function enqueue_scripts() {
		$deprecated_scripts = [
			'jquery-slick' => [
				'version' => '2.7.0',
				'replacement' => 'Swiper',
			],
		];

		foreach ( $this->get_script_depends() as $script ) {
			if ( isset( $deprecated_scripts[ $script ] ) ) {
				Utils::handle_deprecation( $script, $deprecated_scripts[ $script ]['version'], $deprecated_scripts[ $script ]['replacement'] );
			}

			wp_enqueue_script( $script );
		}
	}

	/**
	 * Get style dependencies.
	 *
	 * Retrieve the list of style dependencies the element requires.
	 *
	 * @since 1.9.0
	 * @access public
	 *
	 * @return array Element styles dependencies.
	 */
	public function get_style_depends() {
		return $this->depended_styles;
	}

	/**
	 * Enqueue styles.
	 *
	 * Registers all the styles defined as element dependencies and enqueues
	 * them. Use `get_style_depends()` method to add custom style dependencies.
	 *
	 * @since 1.9.0
	 * @access public
	 */
	final public function enqueue_styles() {
		foreach ( $this->get_style_depends() as $style ) {
			wp_enqueue_style( $style );
		}
	}

	/**
	 * @since 1.0.0
	 * @deprecated 2.6.0
	 * @access public
	 * @static
	 */
	final public static function add_edit_tool() {}

	/**
	 * @since 2.2.0
	 * @deprecated 2.6.0
	 * @access public
	 * @static
	 */
	final public static function is_edit_buttons_enabled() {
		return get_option( 'elementor_edit_buttons' );
	}

	/**
	 * Get default child type.
	 *
	 * Retrieve the default child type based on element data.
	 *
	 * Note that not all elements support children.
	 *
	 * @since 1.0.0
	 * @access protected
	 * @abstract
	 *
	 * @param array $element_data Element data.
	 *
	 * @return Element_Base
	 */
	abstract protected function _get_default_child_type( array $element_data );

	/**
	 * Before element rendering.
	 *
	 * Used to add stuff before the element.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function before_render() {}

	/**
	 * After element rendering.
	 *
	 * Used to add stuff after the element.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function after_render() {}

	/**
	 * Get element title.
	 *
	 * Retrieve the element title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Element title.
	 */
	public function get_title() {
		return '';
	}

	/**
	 * Get element icon.
	 *
	 * Retrieve the element icon.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Element icon.
	 */
	public function get_icon() {
		return 'eicon-columns';
	}

	public function get_help_url() {
		return 'https://go.elementor.com/widget-' . $this->get_name();
	}

	public function get_custom_help_url() {
		return '';
	}

	/**
	 * Whether the reload preview is required.
	 *
	 * Used to determine whether the reload preview is required or not.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return bool Whether the reload preview is required.
	 */
	public function is_reload_preview_required() {
		return false;
	}

	/**
	 * @since 2.3.1
	 * @access protected
	 */
	protected function should_print_empty() {
		return true;
	}

	/**
	 * Get child elements.
	 *
	 * Retrieve all the child elements of this element.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return Element_Base[] Child elements.
	 */
	public function get_children() {
		if ( null === $this->children ) {
			$this->init_children();
		}

		return $this->children;
	}

	/**
	 * Get default arguments.
	 *
	 * Retrieve the element default arguments. Used to return all the default
	 * arguments or a specific default argument, if one is set.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param array $item Optional. Default is null.
	 *
	 * @return array Default argument(s).
	 */
	public function get_default_args( $item = null ) {
		return self::get_items( $this->default_args, $item );
	}

	/**
	 * Add new child element.
	 *
	 * Register new child element to allow hierarchy.
	 *
	 * @since 1.0.0
	 * @access public
	 * @param array $child_data Child element data.
	 * @param array $child_args Child element arguments.
	 *
	 * @return Element_Base|false Child element instance, or false if failed.
	 */
	public function add_child( array $child_data, array $child_args = [] ) {
		if ( null === $this->children ) {
			$this->init_children();
		}

		$child_type = $this->get_child_type( $child_data );

		if ( ! $child_type ) {
			return false;
		}

		$child = Plugin::$instance->elements_manager->create_element_instance( $child_data, $child_args, $child_type );

		if ( $child ) {
			$this->children[] = $child;
		}

		return $child;
	}

	/**
	 * Add link render attributes.
	 *
	 * Used to add link tag attributes to a specific HTML element.
	 *
	 * The HTML link tag is represented by the element parameter. The `url_control` parameter
	 * needs to be an array of link settings in the same format they are set by Elementor's URL control.
	 *
	 * Example usage:
	 *
	 * `$this->add_link_attributes( 'button', $settings['link'] );`
	 *
	 * @since 2.8.0
	 * @access public
	 *
	 * @param array|string $element   The HTML element.
	 * @param array $url_control      Array of link settings.
	 * @param bool $overwrite         Optional. Whether to overwrite existing
	 *                                attribute. Default is false, not to overwrite.
	 *
	 * @return Element_Base Current instance of the element.
	 */

	public function add_link_attributes( $element, array $url_control, $overwrite = false ) {
		$attributes = [];

		if ( ! empty( $url_control['url'] ) ) {
			$allowed_protocols = array_merge( wp_allowed_protocols(), [ 'skype', 'viber' ] );

			$attributes['href'] = esc_url( $url_control['url'], $allowed_protocols );
		}

		if ( ! empty( $url_control['is_external'] ) ) {
			$attributes['target'] = '_blank';
		}

		if ( ! empty( $url_control['nofollow'] ) ) {
			$attributes['rel'] = 'nofollow';
		}

		if ( ! empty( $url_control['custom_attributes'] ) ) {
			// Custom URL attributes should come as a string of comma-delimited key|value pairs
			$attributes = array_merge( $attributes, Utils::parse_custom_attributes( $url_control['custom_attributes'] ) );
		}

		if ( $attributes ) {
			$this->add_render_attribute( $element, $attributes, $overwrite );
		}

		return $this;
	}

	/**
	 * Print element.
	 *
	 * Used to generate the element final HTML on the frontend and the editor.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function print_element() {
		$element_type = $this->get_type();

		/**
		 * Before frontend element render.
		 *
		 * Fires before Elementor element is rendered in the frontend.
		 *
		 * @since 2.2.0
		 *
		 * @param Element_Base $this The element.
		 */
		do_action( 'elementor/frontend/before_render', $this );

		/**
		 * Before frontend element render.
		 *
		 * Fires before Elementor element is rendered in the frontend.
		 *
		 * The dynamic portion of the hook name, `$element_type`, refers to the element type.
		 *
		 * @since 1.0.0
		 *
		 * @param Element_Base $this The element.
		 */
		do_action( "elementor/frontend/{$element_type}/before_render", $this );

		ob_start();

		if ( $this->has_own_method( '_print_content', self::class ) ) {
			Plugin::$instance->modules_manager->get_modules( 'dev-tools' )->deprecation->deprecated_function( '_print_content', '3.1.0', __CLASS__ . '::print_content()' );

			$this->_print_content();
		} else {
			$this->print_content();
		}

		$content = ob_get_clean();

		$should_render = ( ! empty( $content ) || $this->should_print_empty() );

		/**
		 * Should the element be rendered for frontend
		 *
		 * Filters if the element should be rendered on frontend.
		 *
		 * @since 2.3.3
		 *
		 * @param bool true The element.
		 * @param Element_Base $this The element.
		 */
		$should_render = apply_filters( "elementor/frontend/{$element_type}/should_render", $should_render, $this );

		if ( $should_render ) {
			if ( $this->has_own_method( '_add_render_attributes', self::class ) ) {
				Plugin::$instance->modules_manager->get_modules( 'dev-tools' )->deprecation->deprecated_function( '_add_render_attributes', '3.1.0', __CLASS__ . '::add_render_attributes()' );

				$this->_add_render_attributes();
			} else {
				$this->add_render_attributes();
			}

			$this->before_render();
			// PHPCS - The content has already been escaped by the `render` method.
			echo $content; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
			$this->after_render();

			$this->enqueue_scripts();
			$this->enqueue_styles();
		}

		/**
		 * After frontend element render.
		 *
		 * Fires after Elementor element is rendered in the frontend.
		 *
		 * The dynamic portion of the hook name, `$element_type`, refers to the element type.
		 *
		 * @since 1.0.0
		 *
		 * @param Element_Base $this The element.
		 */
		do_action( "elementor/frontend/{$element_type}/after_render", $this );

		/**
		 * After frontend element render.
		 *
		 * Fires after Elementor element is rendered in the frontend.
		 *
		 * @since 2.3.0
		 *
		 * @param Element_Base $this The element.
		 */
		do_action( 'elementor/frontend/after_render', $this );
	}

	/**
	 * Get the element raw data.
	 *
	 * Retrieve the raw element data, including the id, type, settings, child
	 * elements and whether it is an inner element.
	 *
	 * The data with the HTML used always to display the data, but the Elementor
	 * editor uses the raw data without the HTML in order not to render the data
	 * again.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param bool $with_html_content Optional. Whether to return the data with
	 *                                HTML content or without. Used for caching.
	 *                                Default is false, without HTML.
	 *
	 * @return array Element raw data.
	 */
	public function get_raw_data( $with_html_content = false ) {
		$data = $this->get_data();

		$elements = [];

		foreach ( $this->get_children() as $child ) {
			$elements[] = $child->get_raw_data( $with_html_content );
		}

		return [
			'id' => $this->get_id(),
			'elType' => $data['elType'],
			'settings' => $data['settings'],
			'elements' => $elements,
			'isInner' => $data['isInner'],
		];
	}

	/**
	 * Get unique selector.
	 *
	 * Retrieve the unique selector of the element. Used to set a unique HTML
	 * class for each HTML element. This way Elementor can set custom styles for
	 * each element.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Unique selector.
	 */
	public function get_unique_selector() {
		return '.elementor-element-' . $this->get_id();
	}

	/**
	 * Is type instance.
	 *
	 * Used to determine whether the element is an instance of that type or not.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return bool Whether the element is an instance of that type.
	 */
	public function is_type_instance() {
		return $this->is_type_instance;
	}

	/**
	 * Add render attributes.
	 *
	 * Used to add attributes to the current element wrapper HTML tag.
	 *
	 * @since 1.3.0
	 * @access protected
	 * @deprecated 3.1.0
	 */
	protected function _add_render_attributes() {
		Plugin::$instance->modules_manager->get_modules( 'dev-tools' )->deprecation->deprecated_function( __METHOD__, '3.1.0', __CLASS__ . '::add_render_attributes()' );

		return $this->add_render_attributes();
	}

	/**
	 * Add render attributes.
	 *
	 * Used to add attributes to the current element wrapper HTML tag.
	 *
	 * @since 3.1.0
	 * @access protected
	 */
	protected function add_render_attributes() {
		$id = $this->get_id();

		$settings = $this->get_settings_for_display();
		$frontend_settings = $this->get_frontend_settings();
		$controls = $this->get_controls();

		$this->add_render_attribute( '_wrapper', [
			'class' => [
				'elementor-element',
				'elementor-element-' . $id,
			],
			'data-id' => $id,
			'data-element_type' => $this->get_type(),
		] );

		$class_settings = [];

		foreach ( $settings as $setting_key => $setting ) {
			if ( isset( $controls[ $setting_key ]['prefix_class'] ) ) {
				$class_settings[ $setting_key ] = $setting;
			}
		}

		foreach ( $class_settings as $setting_key => $setting ) {
			if ( empty( $setting ) && '0' !== $setting ) {
				continue;
			}

			$this->add_render_attribute( '_wrapper', 'class', $controls[ $setting_key ]['prefix_class'] . $setting );
		}

		$_animation = ! empty( $settings['_animation'] );
		$animation = ! empty( $settings['animation'] );
		$has_animation = $_animation && 'none' !== $settings['_animation'] || $animation && 'none' !== $settings['animation'];

		if ( $has_animation ) {
			$is_static_render_mode = Plugin::$instance->frontend->is_static_render_mode();

			if ( ! $is_static_render_mode ) {
				// Hide the element until the animation begins
				$this->add_render_attribute( '_wrapper', 'class', 'elementor-invisible' );
			}
		}

		if ( ! empty( $settings['_element_id'] ) ) {
			$this->add_render_attribute( '_wrapper', 'id', trim( $settings['_element_id'] ) );
		}

		if ( $frontend_settings ) {
			$this->add_render_attribute( '_wrapper', 'data-settings', wp_json_encode( $frontend_settings ) );
		}

		/**
		 * After element attribute rendered.
		 *
		 * Fires after the attributes of the element HTML tag are rendered.
		 *
		 * @since 2.3.0
		 *
		 * @param Element_Base $this The element.
		 */
		do_action( 'elementor/element/after_add_attributes', $this );
	}

	/**
	 * Add Hidden Device Controls
	 *
	 * Adds controls for hiding elements within certain devices' viewport widths. Adds a control for each active device.
	 *
	 * @since 3.4.0
	 * @access protected
	 */
	protected function add_hidden_device_controls() {
		// The 'Hide On X' controls are displayed from largest to smallest, while the method returns smallest to largest.
		$active_devices = Plugin::$instance->breakpoints->get_active_devices_list( [ 'reverse' => true ] );
		$active_breakpoints = Plugin::$instance->breakpoints->get_active_breakpoints();

		foreach ( $active_devices as $breakpoint_key ) {
			$label = 'desktop' === $breakpoint_key ? __( 'Desktop', 'elementor' ) : $active_breakpoints[ $breakpoint_key ]->get_label();

			$this->add_control(
				'hide_' . $breakpoint_key,
				[
					/* translators: %s: Device name. */
					'label' => sprintf( __( 'Hide On %s', 'elementor' ), $label ),
					'type' => Controls_Manager::SWITCHER,
					'default' => '',
					'prefix_class' => 'elementor-',
					'label_on' => 'Hide',
					'label_off' => 'Show',
					'return_value' => 'hidden-' . $breakpoint_key,
				]
			);
		}
	}

	/**
	 * Get default data.
	 *
	 * Retrieve the default element data. Used to reset the data on initialization.
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @return array Default data.
	 */
	protected function get_default_data() {
		$data = parent::get_default_data();

		return array_merge(
			$data, [
				'elements' => [],
				'isInner' => false,
			]
		);
	}

	/**
	 * Print element content.
	 *
	 * Output the element final HTML on the frontend.
	 *
	 * @since 1.0.0
	 * @access protected
	 */
	protected function _print_content() {
		Plugin::$instance->modules_manager->get_modules( 'dev-tools' )->deprecation->deprecated_function( __METHOD__, '3.1.0', __CLASS__ . '::print_content()' );

		$this->print_content();
	}

	/**
	 * Print element content.
	 *
	 * Output the element final HTML on the frontend.
	 *
	 * @since 3.1.0
	 * @access protected
	 */
	protected function print_content() {
		foreach ( $this->get_children() as $child ) {
			$child->print_element();
		}
	}

	/**
	 * Get initial config.
	 *
	 * Retrieve the current element initial configuration.
	 *
	 * Adds more configuration on top of the controls list and the tabs assigned
	 * to the control. This method also adds element name, type, icon and more.
	 *
	 * @since 2.9.0
	 * @access protected
	 *
	 * @return array The initial config.
	 */
	protected function get_initial_config() {
		$config = [
			'name' => $this->get_name(),
			'elType' => $this->get_type(),
			'title' => $this->get_title(),
			'icon' => $this->get_icon(),
			'reload_preview' => $this->is_reload_preview_required(),
		];

		if ( preg_match( '/^' . __NAMESPACE__ . '(Pro)?\\\\/', get_called_class() ) ) {
			$config['help_url'] = $this->get_help_url();
		} else {
			$config['help_url'] = $this->get_custom_help_url();
		}

		if ( ! $this->is_editable() ) {
			$config['editable'] = false;
		}

		return $config;
	}

	/**
	 * Get child type.
	 *
	 * Retrieve the element child type based on element data.
	 *
	 * @since 2.0.0
	 * @access private
	 *
	 * @param array $element_data Element ID.
	 *
	 * @return Element_Base|false Child type or false if type not found.
	 */
	private function get_child_type( $element_data ) {
		$child_type = $this->_get_default_child_type( $element_data );

		// If it's not a valid widget ( like a deactivated plugin )
		if ( ! $child_type ) {
			return false;
		}

		/**
		 * Element child type.
		 *
		 * Filters the child type of the element.
		 *
		 * @since 1.0.0
		 *
		 * @param Element_Base $child_type   The child element.
		 * @param array        $element_data The original element ID.
		 * @param Element_Base $this         The original element.
		 */
		$child_type = apply_filters( 'elementor/element/get_child_type', $child_type, $element_data, $this );

		return $child_type;
	}

	/**
	 * Initialize children.
	 *
	 * Initializing the element child elements.
	 *
	 * @since 2.0.0
	 * @access private
	 */
	private function init_children() {
		$this->children = [];

		$children_data = $this->get_data( 'elements' );

		if ( ! $children_data ) {
			return;
		}

		foreach ( $children_data as $child_data ) {
			if ( ! $child_data ) {
				continue;
			}

			$this->add_child( $child_data );
		}
	}

	/**
	 * Element base constructor.
	 *
	 * Initializing the element base class using `$data` and `$args`.
	 *
	 * The `$data` parameter is required for a normal instance because of the
	 * way Elementor renders data when initializing elements.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param array      $data Optional. Element data. Default is an empty array.
	 * @param array|null $args Optional. Element default arguments. Default is null.
	 **/
	public function __construct( array $data = [], array $args = null ) {
		if ( $data ) {
			$this->is_type_instance = false;
		} elseif ( $args ) {
			$this->default_args = $args;
		}

		parent::__construct( $data );
	}
}
includes/base/controls-stack.php000064400000176640151327220420012757 0ustar00<?php
namespace Elementor;

use Elementor\Core\Base\Base_Object;
use Elementor\Core\DynamicTags\Manager;
use Elementor\Core\Schemes\Manager as Schemes_Manager;
use Elementor\Core\Breakpoints\Manager as Breakpoints_Manager;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor controls stack.
 *
 * An abstract class that provides the needed properties and methods to
 * manage and handle controls in the editor panel to inheriting classes.
 *
 * @since 1.4.0
 * @abstract
 */
abstract class Controls_Stack extends Base_Object {

	/**
	 * Responsive 'desktop' device name.
	 *
	 * @deprecated 3.4.0
	 */
	const RESPONSIVE_DESKTOP = 'desktop';

	/**
	 * Responsive 'tablet' device name.
	 *
	 * @deprecated 3.4.0
	 */
	const RESPONSIVE_TABLET = 'tablet';

	/**
	 * Responsive 'mobile' device name.
	 *
	 * @deprecated 3.4.0
	 */
	const RESPONSIVE_MOBILE = 'mobile';

	/**
	 * Generic ID.
	 *
	 * Holds the unique ID.
	 *
	 * @access private
	 *
	 * @var string
	 */
	private $id;

	private $active_settings;

	private $parsed_active_settings;

	/**
	 * Parsed Dynamic Settings.
	 *
	 * @access private
	 *
	 * @var null|array
	 */
	private $parsed_dynamic_settings;

	/**
	 * Raw Data.
	 *
	 * Holds all the raw data including the element type, the child elements,
	 * the user data.
	 *
	 * @access private
	 *
	 * @var null|array
	 */
	private $data;

	/**
	 * The configuration.
	 *
	 * Holds the configuration used to generate the Elementor editor. It includes
	 * the element name, icon, categories, etc.
	 *
	 * @access private
	 *
	 * @var null|array
	 */
	private $config;

	/**
	 * Current section.
	 *
	 * Holds the current section while inserting a set of controls sections.
	 *
	 * @access private
	 *
	 * @var null|array
	 */
	private $current_section;

	/**
	 * Current tab.
	 *
	 * Holds the current tab while inserting a set of controls tabs.
	 *
	 * @access private
	 *
	 * @var null|array
	 */
	private $current_tab;

	/**
	 * Current popover.
	 *
	 * Holds the current popover while inserting a set of controls.
	 *
	 * @access private
	 *
	 * @var null|array
	 */
	private $current_popover;

	/**
	 * Injection point.
	 *
	 * Holds the injection point in the stack where the control will be inserted.
	 *
	 * @access private
	 *
	 * @var null|array
	 */
	private $injection_point;


	/**
	 * Data sanitized.
	 *
	 * @access private
	 *
	 * @var bool
	 */
	private $settings_sanitized = false;

	/**
	 * Element render attributes.
	 *
	 * Holds all the render attributes of the element. Used to store data like
	 * the HTML class name and the class value, or HTML element ID name and value.
	 *
	 * @access private
	 *
	 * @var array
	 */
	private $render_attributes = [];

	/**
	 * Get element name.
	 *
	 * Retrieve the element name.
	 *
	 * @since 1.4.0
	 * @access public
	 * @abstract
	 *
	 * @return string The name.
	 */
	abstract public function get_name();

	/**
	 * Get unique name.
	 *
	 * Some classes need to use unique names, this method allows you to create
	 * them. By default it retrieves the regular name.
	 *
	 * @since 1.6.0
	 * @access public
	 *
	 * @return string Unique name.
	 */
	public function get_unique_name() {
		return $this->get_name();
	}

	/**
	 * Get element ID.
	 *
	 * Retrieve the element generic ID.
	 *
	 * @since 1.4.0
	 * @access public
	 *
	 * @return string The ID.
	 */
	public function get_id() {
		return $this->id;
	}

	/**
	 * Get element ID.
	 *
	 * Retrieve the element generic ID as integer.
	 *
	 * @since 1.8.0
	 * @access public
	 *
	 * @return string The converted ID.
	 */
	public function get_id_int() {
		/** We ignore possible notices, in order to support elements created prior to v1.8.0 and might include
		 *  non-base 16 characters as part of their ID.
		 */
		return @hexdec( $this->id );
	}

	/**
	 * Get the type.
	 *
	 * Retrieve the type, e.g. 'stack', 'section', 'widget' etc.
	 *
	 * @since 1.4.0
	 * @access public
	 * @static
	 *
	 * @return string The type.
	 */
	public static function get_type() {
		return 'stack';
	}

	/**
	 * @since 2.9.0
	 * @access public
	 *
	 * @return bool
	 */
	public function is_editable() {
		return true;
	}

	/**
	 * Get current section.
	 *
	 * When inserting new controls, this method will retrieve the current section.
	 *
	 * @since 1.7.1
	 * @access public
	 *
	 * @return null|array Current section.
	 */
	public function get_current_section() {
		return $this->current_section;
	}

	/**
	 * Get current tab.
	 *
	 * When inserting new controls, this method will retrieve the current tab.
	 *
	 * @since 1.7.1
	 * @access public
	 *
	 * @return null|array Current tab.
	 */
	public function get_current_tab() {
		return $this->current_tab;
	}

	/**
	 * Get controls.
	 *
	 * Retrieve all the controls or, when requested, a specific control.
	 *
	 * @since 1.4.0
	 * @access public
	 *
	 * @param string $control_id The ID of the requested control. Optional field,
	 *                           when set it will return a specific control.
	 *                           Default is null.
	 *
	 * @return mixed Controls list.
	 */
	public function get_controls( $control_id = null ) {
		return self::get_items( $this->get_stack()['controls'], $control_id );
	}

	/**
	 * Get active controls.
	 *
	 * Retrieve an array of active controls that meet the condition field.
	 *
	 * If specific controls was given as a parameter, retrieve active controls
	 * from that list, otherwise check for all the controls available.
	 *
	 * @since 1.4.0
	 * @since 2.0.9 Added the `controls` and the `settings` parameters.
	 * @access public
	 * @deprecated 3.0.0
	 *
	 * @param array $controls Optional. An array of controls. Default is null.
	 * @param array $settings Optional. Controls settings. Default is null.
	 *
	 * @return array Active controls.
	 */
	public function get_active_controls( array $controls = null, array $settings = null ) {
		// _deprecated_function( __METHOD__, '3.0.0' );

		if ( ! $controls ) {
			$controls = $this->get_controls();
		}

		if ( ! $settings ) {
			$settings = $this->get_controls_settings();
		}

		$active_controls = array_reduce(
			array_keys( $controls ), function( $active_controls, $control_key ) use ( $controls, $settings ) {
				$control = $controls[ $control_key ];

				if ( $this->is_control_visible( $control, $settings ) ) {
					$active_controls[ $control_key ] = $control;
				}

				return $active_controls;
			}, []
		);

		return $active_controls;
	}

	/**
	 * Get controls settings.
	 *
	 * Retrieve the settings for all the controls that represent them.
	 *
	 * @since 1.5.0
	 * @access public
	 *
	 * @return array Controls settings.
	 */
	public function get_controls_settings() {
		return array_intersect_key( $this->get_settings(), $this->get_controls() );
	}

	/**
	 * Add new control to stack.
	 *
	 * Register a single control to allow the user to set/update data.
	 *
	 * This method should be used inside `register_controls()`.
	 *
	 * @since 1.4.0
	 * @access public
	 *
	 * @param string $id      Control ID.
	 * @param array  $args    Control arguments.
	 * @param array  $options Optional. Control options. Default is an empty array.
	 *
	 * @return bool True if control added, False otherwise.
	 */
	public function add_control( $id, array $args, $options = [] ) {
		$default_options = [
			'overwrite' => false,
			'position' => null,
		];

		if ( isset( $args['scheme'] ) ) {
			$args['global'] = [
				'default' => Plugin::$instance->kits_manager->convert_scheme_to_global( $args['scheme'] ),
			];

			unset( $args['scheme'] );
		}

		$options = array_merge( $default_options, $options );

		if ( $options['position'] ) {
			$this->start_injection( $options['position'] );
		}

		if ( $this->injection_point ) {
			$options['index'] = $this->injection_point['index']++;
		}

		if ( empty( $args['type'] ) || ! in_array( $args['type'], [ Controls_Manager::SECTION, Controls_Manager::WP_WIDGET ], true ) ) {
			$args = $this->handle_control_position( $args, $id, $options['overwrite'] );
		}

		if ( $options['position'] ) {
			$this->end_injection();
		}

		unset( $options['position'] );

		if ( $this->current_popover && ! $this->current_popover['initialized'] ) {
			$args['popover'] = [
				'start' => true,
			];

			$this->current_popover['initialized'] = true;
		}

		return Plugin::$instance->controls_manager->add_control_to_stack( $this, $id, $args, $options );
	}

	/**
	 * Remove control from stack.
	 *
	 * Unregister an existing control and remove it from the stack.
	 *
	 * @since 1.4.0
	 * @access public
	 *
	 * @param string $control_id Control ID.
	 *
	 * @return bool|\WP_Error
	 */
	public function remove_control( $control_id ) {
		return Plugin::$instance->controls_manager->remove_control_from_stack( $this->get_unique_name(), $control_id );
	}

	/**
	 * Update control in stack.
	 *
	 * Change the value of an existing control in the stack. When you add new
	 * control you set the `$args` parameter, this method allows you to update
	 * the arguments by passing new data.
	 *
	 * @since 1.4.0
	 * @since 1.8.1 New `$options` parameter added.
	 *
	 * @access public
	 *
	 * @param string $control_id Control ID.
	 * @param array  $args       Control arguments. Only the new fields you want
	 *                           to update.
	 * @param array  $options    Optional. Some additional options. Default is
	 *                           an empty array.
	 *
	 * @return bool
	 */
	public function update_control( $control_id, array $args, array $options = [] ) {
		$is_updated = Plugin::$instance->controls_manager->update_control_in_stack( $this, $control_id, $args, $options );

		if ( ! $is_updated ) {
			return false;
		}

		$control = $this->get_controls( $control_id );

		if ( Controls_Manager::SECTION === $control['type'] ) {
			$section_args = $this->get_section_args( $control_id );

			$section_controls = $this->get_section_controls( $control_id );

			foreach ( $section_controls as $section_control_id => $section_control ) {
				$this->update_control( $section_control_id, $section_args, $options );
			}
		}

		return true;
	}

	/**
	 * Get stack.
	 *
	 * Retrieve the stack of controls.
	 *
	 * @since 1.9.2
	 * @access public
	 *
	 * @return array Stack of controls.
	 */
	public function get_stack() {
		$stack = Plugin::$instance->controls_manager->get_element_stack( $this );

		if ( null === $stack ) {
			$this->init_controls();

			return Plugin::$instance->controls_manager->get_element_stack( $this );
		}

		return $stack;
	}

	/**
	 * Get position information.
	 *
	 * Retrieve the position while injecting data, based on the element type.
	 *
	 * @since 1.7.0
	 * @access public
	 *
	 * @param array $position {
	 *     The injection position.
	 *
	 *     @type string $type     Injection type, either `control` or `section`.
	 *                            Default is `control`.
	 *     @type string $at       Where to inject. If `$type` is `control` accepts
	 *                            `before` and `after`. If `$type` is `section`
	 *                            accepts `start` and `end`. Default values based on
	 *                            the `type`.
	 *     @type string $of       Control/Section ID.
	 *     @type array  $fallback Fallback injection position. When the position is
	 *                            not found it will try to fetch the fallback
	 *                            position.
	 * }
	 *
	 * @return bool|array Position info.
	 */
	final public function get_position_info( array $position ) {
		$default_position = [
			'type' => 'control',
			'at' => 'after',
		];

		if ( ! empty( $position['type'] ) && 'section' === $position['type'] ) {
			$default_position['at'] = 'end';
		}

		$position = array_merge( $default_position, $position );

		if (
			'control' === $position['type'] && in_array( $position['at'], [ 'start', 'end' ], true ) ||
			'section' === $position['type'] && in_array( $position['at'], [ 'before', 'after' ], true )
		) {
			_doing_it_wrong( sprintf( '%s::%s', get_called_class(), __FUNCTION__ ), 'Invalid position arguments. Use `before` / `after` for control or `start` / `end` for section.', '1.7.0' ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped

			return false;
		}

		$target_control_index = $this->get_control_index( $position['of'] );

		if ( false === $target_control_index ) {
			if ( ! empty( $position['fallback'] ) ) {
				return $this->get_position_info( $position['fallback'] );
			}

			return false;
		}

		$target_section_index = $target_control_index;

		$registered_controls = $this->get_controls();

		$controls_keys = array_keys( $registered_controls );

		while ( Controls_Manager::SECTION !== $registered_controls[ $controls_keys[ $target_section_index ] ]['type'] ) {
			$target_section_index--;
		}

		if ( 'section' === $position['type'] ) {
			$target_control_index++;

			if ( 'end' === $position['at'] ) {
				while ( Controls_Manager::SECTION !== $registered_controls[ $controls_keys[ $target_control_index ] ]['type'] ) {
					if ( ++$target_control_index >= count( $registered_controls ) ) {
						break;
					}
				}
			}
		}

		$target_control = $registered_controls[ $controls_keys[ $target_control_index ] ];

		if ( 'after' === $position['at'] ) {
			$target_control_index++;
		}

		$section_id = $registered_controls[ $controls_keys[ $target_section_index ] ]['name'];

		$position_info = [
			'index' => $target_control_index,
			'section' => $this->get_section_args( $section_id ),
		];

		if ( ! empty( $target_control['tabs_wrapper'] ) ) {
			$position_info['tab'] = [
				'tabs_wrapper' => $target_control['tabs_wrapper'],
				'inner_tab' => $target_control['inner_tab'],
			];
		}

		return $position_info;
	}

	/**
	 * Get control key.
	 *
	 * Retrieve the key of the control based on a given index of the control.
	 *
	 * @since 1.9.2
	 * @access public
	 *
	 * @param string $control_index Control index.
	 *
	 * @return int Control key.
	 */
	final public function get_control_key( $control_index ) {
		$registered_controls = $this->get_controls();

		$controls_keys = array_keys( $registered_controls );

		return $controls_keys[ $control_index ];
	}

	/**
	 * Get control index.
	 *
	 * Retrieve the index of the control based on a given key of the control.
	 *
	 * @since 1.7.6
	 * @access public
	 *
	 * @param string $control_key Control key.
	 *
	 * @return false|int Control index.
	 */
	final public function get_control_index( $control_key ) {
		$controls = $this->get_controls();

		$controls_keys = array_keys( $controls );

		return array_search( $control_key, $controls_keys );
	}

	/**
	 * Get section controls.
	 *
	 * Retrieve all controls under a specific section.
	 *
	 * @since 1.7.6
	 * @access public
	 *
	 * @param string $section_id Section ID.
	 *
	 * @return array Section controls
	 */
	final public function get_section_controls( $section_id ) {
		$section_index = $this->get_control_index( $section_id );

		$section_controls = [];

		$registered_controls = $this->get_controls();

		$controls_keys = array_keys( $registered_controls );

		while ( true ) {
			$section_index++;

			if ( ! isset( $controls_keys[ $section_index ] ) ) {
				break;
			}

			$control_key = $controls_keys[ $section_index ];

			if ( Controls_Manager::SECTION === $registered_controls[ $control_key ]['type'] ) {
				break;
			}

			$section_controls[ $control_key ] = $registered_controls[ $control_key ];
		};

		return $section_controls;
	}

	/**
	 * Add new group control to stack.
	 *
	 * Register a set of related controls grouped together as a single unified
	 * control. For example grouping together like typography controls into a
	 * single, easy-to-use control.
	 *
	 * @since 1.4.0
	 * @access public
	 *
	 * @param string $group_name Group control name.
	 * @param array  $args       Group control arguments. Default is an empty array.
	 * @param array  $options    Optional. Group control options. Default is an
	 *                           empty array.
	 */
	final public function add_group_control( $group_name, array $args = [], array $options = [] ) {
		$group = Plugin::$instance->controls_manager->get_control_groups( $group_name );

		if ( ! $group ) {
			wp_die( sprintf( '%s::%s: Group "%s" not found.', get_called_class(), __FUNCTION__, $group_name ) ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
		}

		$group->add_controls( $this, $args, $options );
	}

	/**
	 * Get scheme controls.
	 *
	 * Retrieve all the controls that use schemes.
	 *
	 * @since 1.4.0
	 * @access public
	 * @deprecated 3.0.0
	 *
	 * @return array Scheme controls.
	 */
	final public function get_scheme_controls() {
		// _deprecated_function( __METHOD__, '3.0.0' );
		$enabled_schemes = Schemes_Manager::get_enabled_schemes();

		return array_filter(
			$this->get_controls(), function( $control ) use ( $enabled_schemes ) {
				return ( ! empty( $control['scheme'] ) && in_array( $control['scheme']['type'], $enabled_schemes ) );
			}
		);
	}

	/**
	 * Get style controls.
	 *
	 * Retrieve style controls for all active controls or, when requested, from
	 * a specific set of controls.
	 *
	 * @since 1.4.0
	 * @since 2.0.9 Added the `settings` parameter.
	 * @access public
	 * @deprecated 3.0.0
	 *
	 * @param array $controls Optional. Controls list. Default is null.
	 * @param array $settings Optional. Controls settings. Default is null.
	 *
	 * @return array Style controls.
	 */
	final public function get_style_controls( array $controls = null, array $settings = null ) {
		// _deprecated_function( __METHOD__, '3.0.0' );

		$controls = $this->get_active_controls( $controls, $settings );

		$style_controls = [];

		foreach ( $controls as $control_name => $control ) {
			$control_obj = Plugin::$instance->controls_manager->get_control( $control['type'] );

			if ( ! $control_obj instanceof Base_Data_Control ) {
				continue;
			}

			$control = array_merge( $control_obj->get_settings(), $control );

			if ( $control_obj instanceof Control_Repeater ) {
				$style_fields = [];

				foreach ( $this->get_settings( $control_name ) as $item ) {
					$style_fields[] = $this->get_style_controls( $control['fields'], $item );
				}

				$control['style_fields'] = $style_fields;
			}

			if ( ! empty( $control['selectors'] ) || ! empty( $control['dynamic'] ) || ! empty( $control['style_fields'] ) ) {
				$style_controls[ $control_name ] = $control;
			}
		}

		return $style_controls;
	}

	/**
	 * Get tabs controls.
	 *
	 * Retrieve all the tabs assigned to the control.
	 *
	 * @since 1.4.0
	 * @access public
	 *
	 * @return array Tabs controls.
	 */
	final public function get_tabs_controls() {
		return $this->get_stack()['tabs'];
	}

	/**
	 * Add new responsive control to stack.
	 *
	 * Register a set of controls to allow editing based on user screen size.
	 * This method registers one or more controls per screen size/device, depending on the current Responsive Control
	 * Duplication Mode. There are 3 control duplication modes:
	 * * 'off' - Only a single control is generated. In the Editor, this control is duplicated in JS.
	 * * 'on' - Multiple controls are generated, one control per enabled device/breakpoint + a default/desktop control.
	 * * 'dynamic' - If the control includes the `'dynamic' => 'active' => true` property - the control is duplicated,
	 *               once for each device/breakpoint + default/desktop.
	 *               If the control doesn't include the `'dynamic' => 'active' => true` property - the control is not duplicated.
	 *
	 * @since 1.4.0
	 * @access public
	 *
	 * @param string $id      Responsive control ID.
	 * @param array  $args    Responsive control arguments.
	 * @param array  $options Optional. Responsive control options. Default is
	 *                        an empty array.
	 */
	final public function add_responsive_control( $id, array $args, $options = [] ) {
		$args['responsive'] = [];

		$active_breakpoints = Plugin::$instance->breakpoints->get_active_breakpoints();

		$devices = Plugin::$instance->breakpoints->get_active_devices_list( [ 'reverse' => true ] );

		if ( isset( $args['devices'] ) ) {
			$devices = array_intersect( $devices, $args['devices'] );

			$args['responsive']['devices'] = $devices;

			unset( $args['devices'] );
		}

		$control_to_check = $args;

		if ( ! empty( $options['overwrite'] ) ) {
			$existing_control = Plugin::$instance->controls_manager->get_control_from_stack( $this->get_unique_name(), $id );

			if ( ! is_wp_error( $existing_control ) ) {
				$control_to_check = $existing_control;
			}
		}

		$responsive_duplication_mode = Plugin::$instance->breakpoints->get_responsive_control_duplication_mode();
		$additional_breakpoints_active = Plugin::$instance->experiments->is_feature_active( 'additional_custom_breakpoints' );
		$control_is_dynamic = ! empty( $control_to_check['dynamic']['active'] );
		$is_frontend_available = ! empty( $control_to_check['frontend_available'] );
		$has_prefix_class = ! empty( $control_to_check['prefix_class'] );

		// If the new responsive controls experiment is active, create only one control - duplicates per device will
		// be created in JS in the Editor.
		if (
			$additional_breakpoints_active
			&& ( 'off' === $responsive_duplication_mode || ( 'dynamic' === $responsive_duplication_mode && ! $control_is_dynamic ) )
			// Some responsive controls need responsive settings to be available to the widget handler, even when empty.
			&& ! $is_frontend_available
			&& ! $has_prefix_class
		) {
			$args['is_responsive'] = true;

			if ( ! empty( $options['overwrite'] ) ) {
				$this->update_control( $id, $args, [
					'recursive' => ! empty( $options['recursive'] ),
				] );
			} else {
				$this->add_control( $id, $args, $options );
			}

			return;
		}

		if ( isset( $args['default'] ) ) {
			$args['desktop_default'] = $args['default'];

			unset( $args['default'] );
		}

		foreach ( $devices as $device_name ) {
			$control_args = $args;

			// Set parent using the name from previous iteration.
			$control_args['parent'] = isset( $control_name ) ? $control_name : null;

			if ( isset( $control_args['device_args'] ) ) {
				if ( ! empty( $control_args['device_args'][ $device_name ] ) ) {
					$control_args = array_merge( $control_args, $control_args['device_args'][ $device_name ] );
				}

				unset( $control_args['device_args'] );
			}

			if ( ! empty( $args['prefix_class'] ) ) {
				$device_to_replace = Breakpoints_Manager::BREAKPOINT_KEY_DESKTOP === $device_name ? '' : '-' . $device_name;

				$control_args['prefix_class'] = sprintf( $args['prefix_class'], $device_to_replace );
			}

			$direction = 'max';

			if ( Breakpoints_Manager::BREAKPOINT_KEY_DESKTOP !== $device_name ) {
				$direction = $active_breakpoints[ $device_name ]->get_direction();
			}

			$control_args['responsive'][ $direction ] = $device_name;

			if ( isset( $control_args['min_affected_device'] ) ) {
				if ( ! empty( $control_args['min_affected_device'][ $device_name ] ) ) {
					$control_args['responsive']['min'] = $control_args['min_affected_device'][ $device_name ];
				}

				unset( $control_args['min_affected_device'] );
			}

			if ( isset( $control_args[ $device_name . '_default' ] ) ) {
				$control_args['default'] = $control_args[ $device_name . '_default' ];
			}

			foreach ( $devices as $device ) {
				unset( $control_args[ $device . '_default' ] );
			}

			$id_suffix = Breakpoints_Manager::BREAKPOINT_KEY_DESKTOP === $device_name ? '' : '_' . $device_name;
			$control_name = $id . $id_suffix;

			// Set this control as child of previous iteration control.
			$this->update_control( $control_args['parent'], [ 'inheritors' => [ $control_name ] ] );

			if ( ! empty( $options['overwrite'] ) ) {
				$this->update_control( $control_name, $control_args, [
					'recursive' => ! empty( $options['recursive'] ),
				] );
			} else {
				$this->add_control( $control_name, $control_args, $options );
			}
		}
	}

	/**
	 * Update responsive control in stack.
	 *
	 * Change the value of an existing responsive control in the stack. When you
	 * add new control you set the `$args` parameter, this method allows you to
	 * update the arguments by passing new data.
	 *
	 * @since 1.4.0
	 * @access public
	 *
	 * @param string $id      Responsive control ID.
	 * @param array  $args    Responsive control arguments.
	 * @param array  $options Optional. Additional options.
	 */
	final public function update_responsive_control( $id, array $args, array $options = [] ) {
		$this->add_responsive_control( $id, $args, [
			'overwrite' => true,
			'recursive' => ! empty( $options['recursive'] ),
		] );
	}

	/**
	 * Remove responsive control from stack.
	 *
	 * Unregister an existing responsive control and remove it from the stack.
	 *
	 * @since 1.4.0
	 * @access public
	 *
	 * @param string $id Responsive control ID.
	 */
	final public function remove_responsive_control( $id ) {
		$devices = [
			Breakpoints_Manager::BREAKPOINT_KEY_DESKTOP,
			Breakpoints_Manager::BREAKPOINT_KEY_TABLET,
			Breakpoints_Manager::BREAKPOINT_KEY_MOBILE,
		];

		foreach ( $devices as $device_name ) {
			$id_suffix = Breakpoints_Manager::BREAKPOINT_KEY_DESKTOP === $device_name ? '' : '_' . $device_name;

			$this->remove_control( $id . $id_suffix );
		}
	}

	/**
	 * Get class name.
	 *
	 * Retrieve the name of the current class.
	 *
	 * @since 1.4.0
	 * @access public
	 *
	 * @return string Class name.
	 */
	final public function get_class_name() {
		return get_called_class();
	}

	/**
	 * Get the config.
	 *
	 * Retrieve the config or, if non set, use the initial config.
	 *
	 * @since 1.4.0
	 * @access public
	 *
	 * @return array|null The config.
	 */
	final public function get_config() {
		if ( null === $this->config ) {
			// TODO: This is for backwards compatibility starting from 2.9.0
			// This if statement should be removed when the method is hard-deprecated
			if ( $this->has_own_method( '_get_initial_config', self::class ) ) {
				Plugin::$instance->modules_manager->get_modules( 'dev-tools' )->deprecation->deprecated_function( '_get_initial_config', '2.9.0', __CLASS__ . '::get_initial_config()' );

				$this->config = $this->_get_initial_config();
			} else {
				$this->config = $this->get_initial_config();
			}
		}

		return $this->config;
	}

	/**
	 * Get frontend settings keys.
	 *
	 * Retrieve settings keys for all frontend controls.
	 *
	 * @since 1.6.0
	 * @access public
	 *
	 * @return array Settings keys for each control.
	 */
	final public function get_frontend_settings_keys() {
		$controls = [];

		foreach ( $this->get_controls() as $control ) {
			if ( ! empty( $control['frontend_available'] ) ) {
				$controls[] = $control['name'];
			}
		}

		return $controls;
	}

	/**
	 * Get controls pointer index.
	 *
	 * Retrieve pointer index where the next control should be added.
	 *
	 * While using injection point, it will return the injection point index.
	 * Otherwise index of the last control plus one.
	 *
	 * @since 1.9.2
	 * @access public
	 *
	 * @return int Controls pointer index.
	 */
	public function get_pointer_index() {
		if ( null !== $this->injection_point ) {
			return $this->injection_point['index'];
		}

		return count( $this->get_controls() );
	}

	/**
	 * Get the raw data.
	 *
	 * Retrieve all the items or, when requested, a specific item.
	 *
	 * @since 1.4.0
	 * @access public
	 *
	 * @param string $item Optional. The requested item. Default is null.
	 *
	 * @return mixed The raw data.
	 */
	public function get_data( $item = null ) {
		if ( ! $this->settings_sanitized && ( ! $item || 'settings' === $item ) ) {
			$this->data['settings'] = $this->sanitize_settings( $this->data['settings'] );

			$this->settings_sanitized = true;
		}

		return self::get_items( $this->data, $item );
	}

	/**
	 * @since 2.0.14
	 * @access public
	 */
	public function get_parsed_dynamic_settings( $setting = null, $settings = null ) {
		if ( null === $settings ) {
			$settings = $this->get_settings();
		}

		if ( null === $this->parsed_dynamic_settings ) {
			$this->parsed_dynamic_settings = $this->parse_dynamic_settings( $settings );
		}

		return self::get_items( $this->parsed_dynamic_settings, $setting );
	}

	/**
	 * Get active settings.
	 *
	 * Retrieve the settings from all the active controls.
	 *
	 * @since 1.4.0
	 * @since 2.1.0 Added the `controls` and the `settings` parameters.
	 * @access public
	 *
	 * @param array $controls Optional. An array of controls. Default is null.
	 * @param array $settings Optional. Controls settings. Default is null.
	 *
	 * @return array Active settings.
	 */
	public function get_active_settings( $settings = null, $controls = null ) {
		$is_first_request = ! $settings && ! $this->active_settings;

		if ( ! $settings ) {
			if ( $this->active_settings ) {
				return $this->active_settings;
			}

			$settings = $this->get_controls_settings();

			$controls = $this->get_controls();
		}

		$active_settings = [];

		foreach ( $settings as $setting_key => $setting ) {
			if ( ! isset( $controls[ $setting_key ] ) ) {
				$active_settings[ $setting_key ] = $setting;

				continue;
			}

			$control = $controls[ $setting_key ];

			if ( $this->is_control_visible( $control, $settings ) ) {
				$control_obj = Plugin::$instance->controls_manager->get_control( $control['type'] );

				if ( $control_obj instanceof Control_Repeater ) {
					foreach ( $setting as & $item ) {
						$item = $this->get_active_settings( $item, $control['fields'] );
					}
				}

				$active_settings[ $setting_key ] = $setting;
			} else {
				$active_settings[ $setting_key ] = null;
			}
		}

		if ( $is_first_request ) {
			$this->active_settings = $active_settings;
		}

		return $active_settings;
	}

	/**
	 * Get settings for display.
	 *
	 * Retrieve all the settings or, when requested, a specific setting for display.
	 *
	 * Unlike `get_settings()` method, this method retrieves only active settings
	 * that passed all the conditions, rendered all the shortcodes and all the dynamic
	 * tags.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @param string $setting_key Optional. The key of the requested setting.
	 *                            Default is null.
	 *
	 * @return mixed The settings.
	 */
	public function get_settings_for_display( $setting_key = null ) {
		if ( ! $this->parsed_active_settings ) {
			$this->parsed_active_settings = $this->get_active_settings( $this->get_parsed_dynamic_settings(), $this->get_controls() );
		}

		return self::get_items( $this->parsed_active_settings, $setting_key );
	}

	/**
	 * Parse dynamic settings.
	 *
	 * Retrieve the settings with rendered dynamic tags.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @param array $settings     Optional. The requested setting. Default is null.
	 * @param array $controls     Optional. The controls array. Default is null.
	 * @param array $all_settings Optional. All the settings. Default is null.
	 *
	 * @return array The settings with rendered dynamic tags.
	 */
	public function parse_dynamic_settings( $settings, $controls = null, $all_settings = null ) {
		if ( null === $all_settings ) {
			$all_settings = $this->get_settings();
		}

		if ( null === $controls ) {
			$controls = $this->get_controls();
		}

		foreach ( $controls as $control ) {
			$control_name = $control['name'];
			$control_obj = Plugin::$instance->controls_manager->get_control( $control['type'] );

			if ( ! $control_obj instanceof Base_Data_Control ) {
				continue;
			}

			if ( $control_obj instanceof Control_Repeater ) {
				if ( ! isset( $settings[ $control_name ] ) ) {
					continue;
				}

				foreach ( $settings[ $control_name ] as & $field ) {
					$field = $this->parse_dynamic_settings( $field, $control['fields'], $field );
				}

				continue;
			}

			$dynamic_settings = $control_obj->get_settings( 'dynamic' );

			if ( ! $dynamic_settings ) {
				$dynamic_settings = [];
			}

			if ( ! empty( $control['dynamic'] ) ) {
				$dynamic_settings = array_merge( $dynamic_settings, $control['dynamic'] );
			}

			if ( empty( $dynamic_settings ) || ! isset( $all_settings[ Manager::DYNAMIC_SETTING_KEY ][ $control_name ] ) ) {
				continue;
			}

			if ( ! empty( $dynamic_settings['active'] ) && ! empty( $all_settings[ Manager::DYNAMIC_SETTING_KEY ][ $control_name ] ) ) {
				$parsed_value = $control_obj->parse_tags( $all_settings[ Manager::DYNAMIC_SETTING_KEY ][ $control_name ], $dynamic_settings );

				$dynamic_property = ! empty( $dynamic_settings['property'] ) ? $dynamic_settings['property'] : null;

				if ( $dynamic_property ) {
					$settings[ $control_name ][ $dynamic_property ] = $parsed_value;
				} else {
					$settings[ $control_name ] = $parsed_value;
				}
			}
		}

		return $settings;
	}

	/**
	 * Get frontend settings.
	 *
	 * Retrieve the settings for all frontend controls.
	 *
	 * @since 1.6.0
	 * @access public
	 *
	 * @return array Frontend settings.
	 */
	public function get_frontend_settings() {
		$frontend_settings = array_intersect_key( $this->get_settings_for_display(), array_flip( $this->get_frontend_settings_keys() ) );

		foreach ( $frontend_settings as $key => $setting ) {
			if ( in_array( $setting, [ null, '' ], true ) ) {
				unset( $frontend_settings[ $key ] );
			}
		}

		return $frontend_settings;
	}

	/**
	 * Filter controls settings.
	 *
	 * Receives controls, settings and a callback function to filter the settings by
	 * and returns filtered settings.
	 *
	 * @since 1.5.0
	 * @access public
	 *
	 * @param callable $callback The callback function.
	 * @param array    $settings Optional. Control settings. Default is an empty
	 *                           array.
	 * @param array    $controls Optional. Controls list. Default is an empty
	 *                           array.
	 *
	 * @return array Filtered settings.
	 */
	public function filter_controls_settings( callable $callback, array $settings = [], array $controls = [] ) {
		if ( ! $settings ) {
			$settings = $this->get_settings();
		}

		if ( ! $controls ) {
			$controls = $this->get_controls();
		}

		return array_reduce(
			array_keys( $settings ), function( $filtered_settings, $setting_key ) use ( $controls, $settings, $callback ) {
				if ( isset( $controls[ $setting_key ] ) ) {
					$result = $callback( $settings[ $setting_key ], $controls[ $setting_key ] );

					if ( null !== $result ) {
						$filtered_settings[ $setting_key ] = $result;
					}
				}

				return $filtered_settings;
			}, []
		);
	}

	/**
	 * Whether the control is visible or not.
	 *
	 * Used to determine whether the control is visible or not.
	 *
	 * @since 1.4.0
	 * @access public
	 *
	 * @param array $control The control.
	 * @param array $values  Optional. Condition values. Default is null.
	 *
	 * @return bool Whether the control is visible.
	 */
	public function is_control_visible( $control, $values = null ) {
		if ( null === $values ) {
			$values = $this->get_settings();
		}

		if ( ! empty( $control['conditions'] ) && ! Conditions::check( $control['conditions'], $values ) ) {
			return false;
		}

		if ( empty( $control['condition'] ) ) {
			return true;
		}

		foreach ( $control['condition'] as $condition_key => $condition_value ) {
			preg_match( '/([a-z_\-0-9]+)(?:\[([a-z_]+)])?(!?)$/i', $condition_key, $condition_key_parts );

			$pure_condition_key = $condition_key_parts[1];
			$condition_sub_key = $condition_key_parts[2];
			$is_negative_condition = ! ! $condition_key_parts[3];

			if ( ! isset( $values[ $pure_condition_key ] ) || null === $values[ $pure_condition_key ] ) {
				return false;
			}

			$instance_value = $values[ $pure_condition_key ];

			if ( $condition_sub_key && is_array( $instance_value ) ) {
				if ( ! isset( $instance_value[ $condition_sub_key ] ) ) {
					return false;
				}

				$instance_value = $instance_value[ $condition_sub_key ];
			}

			/**
			 * If the $condition_value is a non empty array - check if the $condition_value contains the $instance_value,
			 * If the $instance_value is a non empty array - check if the $instance_value contains the $condition_value
			 * otherwise check if they are equal. ( and give the ability to check if the value is an empty array )
			 */
			if ( is_array( $condition_value ) && ! empty( $condition_value ) ) {
				$is_contains = in_array( $instance_value, $condition_value, true );
			} elseif ( is_array( $instance_value ) && ! empty( $instance_value ) ) {
				$is_contains = in_array( $condition_value, $instance_value, true );
			} else {
				$is_contains = $instance_value === $condition_value;
			}

			if ( $is_negative_condition && $is_contains || ! $is_negative_condition && ! $is_contains ) {
				return false;
			}
		}

		return true;
	}

	/**
	 * Start controls section.
	 *
	 * Used to add a new section of controls. When you use this method, all the
	 * registered controls from this point will be assigned to this section,
	 * until you close the section using `end_controls_section()` method.
	 *
	 * This method should be used inside `register_controls()`.
	 *
	 * @since 1.4.0
	 * @access public
	 *
	 * @param string $section_id Section ID.
	 * @param array  $args       Section arguments Optional.
	 */
	public function start_controls_section( $section_id, array $args = [] ) {
		$section_name = $this->get_name();

		/**
		 * Before section start.
		 *
		 * Fires before Elementor section starts in the editor panel.
		 *
		 * @since 1.4.0
		 *
		 * @param Controls_Stack $this       The control.
		 * @param string         $section_id Section ID.
		 * @param array          $args       Section arguments.
		 */
		do_action( 'elementor/element/before_section_start', $this, $section_id, $args );

		/**
		 * Before section start.
		 *
		 * Fires before Elementor section starts in the editor panel.
		 *
		 * The dynamic portions of the hook name, `$section_name` and `$section_id`, refers to the section name and section ID, respectively.
		 *
		 * @since 1.4.0
		 *
		 * @param Controls_Stack $this The control.
		 * @param array          $args Section arguments.
		 */
		do_action( "elementor/element/{$section_name}/{$section_id}/before_section_start", $this, $args );

		$args['type'] = Controls_Manager::SECTION;

		$this->add_control( $section_id, $args );

		if ( null !== $this->current_section ) {
			wp_die( sprintf( 'Elementor: You can\'t start a section before the end of the previous section "%s".', $this->current_section['section'] ) ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
		}

		$this->current_section = $this->get_section_args( $section_id );

		if ( $this->injection_point ) {
			$this->injection_point['section'] = $this->current_section;
		}

		/**
		 * After section start.
		 *
		 * Fires after Elementor section starts in the editor panel.
		 *
		 * @since 1.4.0
		 *
		 * @param Controls_Stack $this       The control.
		 * @param string         $section_id Section ID.
		 * @param array          $args       Section arguments.
		 */
		do_action( 'elementor/element/after_section_start', $this, $section_id, $args );

		/**
		 * After section start.
		 *
		 * Fires after Elementor section starts in the editor panel.
		 *
		 * The dynamic portions of the hook name, `$section_name` and `$section_id`, refers to the section name and section ID, respectively.
		 *
		 * @since 1.4.0
		 *
		 * @param Controls_Stack $this The control.
		 * @param array          $args Section arguments.
		 */
		do_action( "elementor/element/{$section_name}/{$section_id}/after_section_start", $this, $args );
	}

	/**
	 * End controls section.
	 *
	 * Used to close an existing open controls section. When you use this method
	 * it stops adding new controls to this section.
	 *
	 * This method should be used inside `register_controls()`.
	 *
	 * @since 1.4.0
	 * @access public
	 */
	public function end_controls_section() {
		$stack_name = $this->get_name();

		// Save the current section for the action.
		$current_section = $this->current_section;
		$section_id = $current_section['section'];
		$args = [
			'tab' => $current_section['tab'],
		];

		/**
		 * Before section end.
		 *
		 * Fires before Elementor section ends in the editor panel.
		 *
		 * @since 1.4.0
		 *
		 * @param Controls_Stack $this       The control.
		 * @param string         $section_id Section ID.
		 * @param array          $args       Section arguments.
		 */
		do_action( 'elementor/element/before_section_end', $this, $section_id, $args );

		/**
		 * Before section end.
		 *
		 * Fires before Elementor section ends in the editor panel.
		 *
		 * The dynamic portions of the hook name, `$stack_name` and `$section_id`, refers to the stack name and section ID, respectively.
		 *
		 * @since 1.4.0
		 *
		 * @param Controls_Stack $this The control.
		 * @param array          $args Section arguments.
		 */
		do_action( "elementor/element/{$stack_name}/{$section_id}/before_section_end", $this, $args );

		$this->current_section = null;

		/**
		 * After section end.
		 *
		 * Fires after Elementor section ends in the editor panel.
		 *
		 * @since 1.4.0
		 *
		 * @param Controls_Stack $this       The control.
		 * @param string         $section_id Section ID.
		 * @param array          $args       Section arguments.
		 */
		do_action( 'elementor/element/after_section_end', $this, $section_id, $args );

		/**
		 * After section end.
		 *
		 * Fires after Elementor section ends in the editor panel.
		 *
		 * The dynamic portions of the hook name, `$stack_name` and `$section_id`, refers to the section name and section ID, respectively.
		 *
		 * @since 1.4.0
		 *
		 * @param Controls_Stack $this The control.
		 * @param array          $args Section arguments.
		 */
		do_action( "elementor/element/{$stack_name}/{$section_id}/after_section_end", $this, $args );
	}

	/**
	 * Start controls tabs.
	 *
	 * Used to add a new set of tabs inside a section. You should use this
	 * method before adding new individual tabs using `start_controls_tab()`.
	 * Each tab added after this point will be assigned to this group of tabs,
	 * until you close it using `end_controls_tabs()` method.
	 *
	 * This method should be used inside `register_controls()`.
	 *
	 * @since 1.4.0
	 * @access public
	 *
	 * @param string $tabs_id Tabs ID.
	 * @param array  $args    Tabs arguments.
	 */
	public function start_controls_tabs( $tabs_id, array $args = [] ) {
		if ( null !== $this->current_tab ) {
			wp_die( sprintf( 'Elementor: You can\'t start tabs before the end of the previous tabs "%s".', $this->current_tab['tabs_wrapper'] ) ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
		}

		$args['type'] = Controls_Manager::TABS;

		$this->add_control( $tabs_id, $args );

		$this->current_tab = [
			'tabs_wrapper' => $tabs_id,
		];

		foreach ( [ 'condition', 'conditions' ] as $key ) {
			if ( ! empty( $args[ $key ] ) ) {
				$this->current_tab[ $key ] = $args[ $key ];
			}
		}

		if ( $this->injection_point ) {
			$this->injection_point['tab'] = $this->current_tab;
		}
	}

	/**
	 * End controls tabs.
	 *
	 * Used to close an existing open controls tabs. When you use this method it
	 * stops adding new controls to this tabs.
	 *
	 * This method should be used inside `register_controls()`.
	 *
	 * @since 1.4.0
	 * @access public
	 */
	public function end_controls_tabs() {
		$this->current_tab = null;
	}

	/**
	 * Start controls tab.
	 *
	 * Used to add a new tab inside a group of tabs. Use this method before
	 * adding new individual tabs using `start_controls_tab()`.
	 * Each tab added after this point will be assigned to this group of tabs,
	 * until you close it using `end_controls_tab()` method.
	 *
	 * This method should be used inside `register_controls()`.
	 *
	 * @since 1.4.0
	 * @access public
	 *
	 * @param string $tab_id Tab ID.
	 * @param array  $args   Tab arguments.
	 */
	public function start_controls_tab( $tab_id, $args ) {
		if ( ! empty( $this->current_tab['inner_tab'] ) ) {
			wp_die( sprintf( 'Elementor: You can\'t start a tab before the end of the previous tab "%s".', $this->current_tab['inner_tab'] ) ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
		}

		$args['type'] = Controls_Manager::TAB;
		$args['tabs_wrapper'] = $this->current_tab['tabs_wrapper'];

		$this->add_control( $tab_id, $args );

		$this->current_tab['inner_tab'] = $tab_id;

		if ( $this->injection_point ) {
			$this->injection_point['tab']['inner_tab'] = $this->current_tab['inner_tab'];
		}
	}

	/**
	 * End controls tab.
	 *
	 * Used to close an existing open controls tab. When you use this method it
	 * stops adding new controls to this tab.
	 *
	 * This method should be used inside `register_controls()`.
	 *
	 * @since 1.4.0
	 * @access public
	 */
	public function end_controls_tab() {
		unset( $this->current_tab['inner_tab'] );
	}

	/**
	 * Start popover.
	 *
	 * Used to add a new set of controls in a popover. When you use this method,
	 * all the registered controls from this point will be assigned to this
	 * popover, until you close the popover using `end_popover()` method.
	 *
	 * This method should be used inside `register_controls()`.
	 *
	 * @since 1.9.0
	 * @access public
	 */
	final public function start_popover() {
		$this->current_popover = [
			'initialized' => false,
		];
	}

	/**
	 * End popover.
	 *
	 * Used to close an existing open popover. When you use this method it stops
	 * adding new controls to this popover.
	 *
	 * This method should be used inside `register_controls()`.
	 *
	 * @since 1.9.0
	 * @access public
	 */
	final public function end_popover() {
		$this->current_popover = null;

		$last_control_key = $this->get_control_key( $this->get_pointer_index() - 1 );

		$args = [
			'popover' => [
				'end' => true,
			],
		];

		$options = [
			'recursive' => true,
		];

		$this->update_control( $last_control_key, $args, $options );
	}

	/**
	 * Add render attribute.
	 *
	 * Used to add attributes to a specific HTML element.
	 *
	 * The HTML tag is represented by the element parameter, then you need to
	 * define the attribute key and the attribute key. The final result will be:
	 * `<element attribute_key="attribute_value">`.
	 *
	 * Example usage:
	 *
	 * `$this->add_render_attribute( 'wrapper', 'class', 'custom-widget-wrapper-class' );`
	 * `$this->add_render_attribute( 'widget', 'id', 'custom-widget-id' );`
	 * `$this->add_render_attribute( 'button', [ 'class' => 'custom-button-class', 'id' => 'custom-button-id' ] );`
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param array|string $element   The HTML element.
	 * @param array|string $key       Optional. Attribute key. Default is null.
	 * @param array|string $value     Optional. Attribute value. Default is null.
	 * @param bool         $overwrite Optional. Whether to overwrite existing
	 *                                attribute. Default is false, not to overwrite.
	 *
	 * @return self Current instance of the element.
	 */
	public function add_render_attribute( $element, $key = null, $value = null, $overwrite = false ) {
		if ( is_array( $element ) ) {
			foreach ( $element as $element_key => $attributes ) {
				$this->add_render_attribute( $element_key, $attributes, null, $overwrite );
			}

			return $this;
		}

		if ( is_array( $key ) ) {
			foreach ( $key as $attribute_key => $attributes ) {
				$this->add_render_attribute( $element, $attribute_key, $attributes, $overwrite );
			}

			return $this;
		}

		if ( empty( $this->render_attributes[ $element ][ $key ] ) ) {
			$this->render_attributes[ $element ][ $key ] = [];
		}

		settype( $value, 'array' );

		if ( $overwrite ) {
			$this->render_attributes[ $element ][ $key ] = $value;
		} else {
			$this->render_attributes[ $element ][ $key ] = array_merge( $this->render_attributes[ $element ][ $key ], $value );
		}

		return $this;
	}

	/**
	 * Get Render Attributes
	 *
	 * Used to retrieve render attribute.
	 *
	 * The returned array is either all elements and their attributes if no `$element` is specified, an array of all
	 * attributes of a specific element or a specific attribute properties if `$key` is specified.
	 *
	 * Returns null if one of the requested parameters isn't set.
	 *
	 * @since 2.2.6
	 * @access public
	 * @param string $element
	 * @param string $key
	 *
	 * @return array
	 */
	public function get_render_attributes( $element = '', $key = '' ) {
		$attributes = $this->render_attributes;

		if ( $element ) {
			if ( ! isset( $attributes[ $element ] ) ) {
				return null;
			}

			$attributes = $attributes[ $element ];

			if ( $key ) {
				if ( ! isset( $attributes[ $key ] ) ) {
					return null;
				}

				$attributes = $attributes[ $key ];
			}
		}

		return $attributes;
	}

	/**
	 * Set render attribute.
	 *
	 * Used to set the value of the HTML element render attribute or to update
	 * an existing render attribute.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param array|string $element The HTML element.
	 * @param array|string $key     Optional. Attribute key. Default is null.
	 * @param array|string $value   Optional. Attribute value. Default is null.
	 *
	 * @return self Current instance of the element.
	 */
	public function set_render_attribute( $element, $key = null, $value = null ) {
		return $this->add_render_attribute( $element, $key, $value, true );
	}

	/**
	 * Remove render attribute.
	 *
	 * Used to remove an element (with its keys and their values), key (with its values),
	 * or value/s from an HTML element's render attribute.
	 *
	 * @since 2.7.0
	 * @access public
	 *
	 * @param string $element       The HTML element.
	 * @param string $key           Optional. Attribute key. Default is null.
	 * @param array|string $values   Optional. Attribute value/s. Default is null.
	 */
	public function remove_render_attribute( $element, $key = null, $values = null ) {
		if ( $key && ! isset( $this->render_attributes[ $element ][ $key ] ) ) {
			return;
		}

		if ( $values ) {
			$values = (array) $values;

			$this->render_attributes[ $element ][ $key ] = array_diff( $this->render_attributes[ $element ][ $key ], $values );

			return;
		}

		if ( $key ) {
			unset( $this->render_attributes[ $element ][ $key ] );

			return;
		}

		if ( isset( $this->render_attributes[ $element ] ) ) {
			unset( $this->render_attributes[ $element ] );
		}
	}

	/**
	 * Get render attribute string.
	 *
	 * Used to retrieve the value of the render attribute.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param string $element The element.
	 *
	 * @return string Render attribute string, or an empty string if the attribute
	 *                is empty or not exist.
	 */
	public function get_render_attribute_string( $element ) {
		if ( empty( $this->render_attributes[ $element ] ) ) {
			return '';
		}

		return Utils::render_html_attributes( $this->render_attributes[ $element ] );
	}

	/**
	 * Print render attribute string.
	 *
	 * Used to output the rendered attribute.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @param array|string $element The element.
	 */
	public function print_render_attribute_string( $element ) {
		echo $this->get_render_attribute_string( $element ); // XSS ok.
	}

	/**
	 * Print element template.
	 *
	 * Used to generate the element template on the editor.
	 *
	 * @since 2.0.0
	 * @access public
	 */
	public function print_template() {
		ob_start();

		// TODO: This is for backwards compatibility starting from 2.9.0
		// This `if` statement should be removed when the method is removed
		if ( $this->has_own_method( '_content_template', self::class ) ) {
			Plugin::$instance->modules_manager->get_modules( 'dev-tools' )->deprecation->deprecated_function( '_content_template', '2.9.0', __CLASS__ . '::content_template()' );

			$this->_content_template();
		} else {
			$this->content_template();
		}

		$template_content = ob_get_clean();

		$element_type = $this->get_type();

		/**
		 * Template content.
		 *
		 * Filters the controls stack template content before it's printed in the editor.
		 *
		 * The dynamic portion of the hook name, `$element_type`, refers to the element type.
		 *
		 * @since 1.0.0
		 *
		 * @param string         $content_template The controls stack template in the editor.
		 * @param Controls_Stack $this             The controls stack.
		 */
		$template_content = apply_filters( "elementor/{$element_type}/print_template", $template_content, $this );

		if ( empty( $template_content ) ) {
			return;
		}
		?>
		<script type="text/html" id="tmpl-elementor-<?php echo esc_attr( $this->get_name() ); ?>-content">
			<?php $this->print_template_content( $template_content ); ?>
		</script>
		<?php
	}

	/**
	 * Start injection.
	 *
	 * Used to inject controls and sections to a specific position in the stack.
	 *
	 * When you use this method, all the registered controls and sections will
	 * be injected to a specific position in the stack, until you stop the
	 * injection using `end_injection()` method.
	 *
	 * @since 1.7.1
	 * @access public
	 *
	 * @param array $position {
	 *     The position where to start the injection.
	 *
	 *     @type string $type Injection type, either `control` or `section`.
	 *                        Default is `control`.
	 *     @type string $at   Where to inject. If `$type` is `control` accepts
	 *                        `before` and `after`. If `$type` is `section`
	 *                        accepts `start` and `end`. Default values based on
	 *                        the `type`.
	 *     @type string $of   Control/Section ID.
	 * }
	 */
	final public function start_injection( array $position ) {
		if ( $this->injection_point ) {
			wp_die( 'A controls injection is already opened. Please close current injection before starting a new one (use `end_injection`).' );
		}

		$this->injection_point = $this->get_position_info( $position );
	}

	/**
	 * End injection.
	 *
	 * Used to close an existing opened injection point.
	 *
	 * When you use this method it stops adding new controls and sections to
	 * this point and continue to add controls to the regular position in the
	 * stack.
	 *
	 * @since 1.7.1
	 * @access public
	 */
	final public function end_injection() {
		$this->injection_point = null;
	}

	/**
	 * Get injection point.
	 *
	 * Retrieve the injection point in the stack where new controls and sections
	 * will be inserted.
	 *
	 * @since 1.9.2
	 * @access public
	 *
	 * @return array|null An array when an injection point is defined, null
	 *                    otherwise.
	 */
	final public function get_injection_point() {
		return $this->injection_point;
	}

	/**
	 * Register controls.
	 *
	 * Used to add new controls to any element type. For example, external
	 * developers use this method to register controls in a widget.
	 *
	 * Should be inherited and register new controls using `add_control()`,
	 * `add_responsive_control()` and `add_group_control()`, inside control
	 * wrappers like `start_controls_section()`, `start_controls_tabs()` and
	 * `start_controls_tab()`.
	 *
	 * @since 1.4.0
	 * @access protected
	 * @deprecated 3.1.0 Use `Controls_Stack::register_controls()` instead
	 */
	protected function _register_controls() {
		Plugin::$instance->modules_manager->get_modules( 'dev-tools' )->deprecation->deprecated_function( __METHOD__, '3.1.0', __CLASS__ . '::register_controls()' );

		$this->register_controls();
	}

	/**
	 * Register controls.
	 *
	 * Used to add new controls to any element type. For example, external
	 * developers use this method to register controls in a widget.
	 *
	 * Should be inherited and register new controls using `add_control()`,
	 * `add_responsive_control()` and `add_group_control()`, inside control
	 * wrappers like `start_controls_section()`, `start_controls_tabs()` and
	 * `start_controls_tab()`.
	 *
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {}

	/**
	 * Get default data.
	 *
	 * Retrieve the default data. Used to reset the data on initialization.
	 *
	 * @since 1.4.0
	 * @access protected
	 *
	 * @return array Default data.
	 */
	protected function get_default_data() {
		return [
			'id' => 0,
			'settings' => [],
		];
	}

	/**
	 * @since 2.3.0
	 * @access protected
	 */
	protected function get_init_settings() {
		$settings = $this->get_data( 'settings' );

		foreach ( $this->get_controls() as $control ) {
			$control_obj = Plugin::$instance->controls_manager->get_control( $control['type'] );

			if ( ! $control_obj instanceof Base_Data_Control ) {
				continue;
			}

			$control = array_merge_recursive( $control_obj->get_settings(), $control );

			$settings[ $control['name'] ] = $control_obj->get_value( $control, $settings );
		}

		return $settings;
	}

	/**
	 * Get initial config.
	 *
	 * Retrieve the current element initial configuration - controls list and
	 * the tabs assigned to the control.
	 *
	 * @since 2.9.0
	 * @access protected
	 *
	 * @return array The initial config.
	 */
	protected function get_initial_config() {
		return [
			'controls' => $this->get_controls(),
		];
	}

	/**
	 * Get initial config.
	 *
	 * Retrieve the current element initial configuration - controls list and
	 * the tabs assigned to the control.
	 *
	 * @since 1.4.0
	 * @deprecated 2.9.0 use `get_initial_config()` instead
	 * @access protected
	 *
	 * @return array The initial config.
	 */
	protected function _get_initial_config() {
		Plugin::$instance->modules_manager->get_modules( 'dev-tools' )->deprecation->deprecated_function( __METHOD__, '2.9.0', __CLASS__ . '::get_initial_config()' );

		return $this->get_initial_config();
	}

	/**
	 * Get section arguments.
	 *
	 * Retrieve the section arguments based on section ID.
	 *
	 * @since 1.4.0
	 * @access protected
	 *
	 * @param string $section_id Section ID.
	 *
	 * @return array Section arguments.
	 */
	protected function get_section_args( $section_id ) {
		$section_control = $this->get_controls( $section_id );

		$section_args_keys = [ 'tab', 'condition' ];

		$args = array_intersect_key( $section_control, array_flip( $section_args_keys ) );

		$args['section'] = $section_id;

		return $args;
	}

	/**
	 * Render element.
	 *
	 * Generates the final HTML on the frontend.
	 *
	 * @since 2.0.0
	 * @access protected
	 */
	protected function render() {}

	/**
	 * Render element in static mode.
	 *
	 * If not inherent will call the base render.
	 */
	protected function render_static() {
		$this->render();
	}

	/**
	 * Determine the render logic.
	 */
	protected function render_by_mode() {
		if ( Plugin::$instance->frontend->is_static_render_mode() ) {
			$this->render_static();

			return;
		}

		$this->render();
	}

	/**
	 * Print content template.
	 *
	 * Used to generate the content template on the editor, using a
	 * Backbone JavaScript template.
	 *
	 * @access protected
	 * @since 2.0.0
	 *
	 * @param string $template_content Template content.
	 */
	protected function print_template_content( $template_content ) {
		echo $template_content; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
	}

	/**
	 * Render element output in the editor.
	 *
	 * Used to generate the live preview, using a Backbone JavaScript template.
	 *
	 * @since 2.9.0
	 * @access protected
	 */
	protected function content_template() {}

	/**
	 * Render element output in the editor.
	 *
	 * Used to generate the live preview, using a Backbone JavaScript template.
	 *
	 * @since 2.0.0
	 * @deprecated 2.9.0 use `content_template()` instead
	 * @access protected
	 */
	protected function _content_template() {
		Plugin::$instance->modules_manager->get_modules( 'dev-tools' )->deprecation->deprecated_function( __METHOD__, '2.9.0', __CLASS__ . '::content_template()' );

		$this->content_template();
	}

	/**
	 * Initialize controls.
	 *
	 * Register the all controls added by `register_controls()`.
	 *
	 * @since 2.0.0
	 * @access protected
	 */
	protected function init_controls() {
		Plugin::$instance->controls_manager->open_stack( $this );

		// TODO: This is for backwards compatibility starting from 2.9.0
		// This `if` statement should be removed when the method is removed
		if ( $this->has_own_method( '_register_controls', self::class ) ) {
			Plugin::$instance->modules_manager->get_modules( 'dev-tools' )->deprecation->deprecated_function( '_register_controls', '3.1.0', __CLASS__ . '::register_controls()' );

			$this->_register_controls();
		} else {
			$this->register_controls();
		}
	}

	protected function handle_control_position( array $args, $control_id, $overwrite ) {
		if ( isset( $args['type'] ) && in_array( $args['type'], [ Controls_Manager::SECTION, Controls_Manager::WP_WIDGET ], true ) ) {
			return $args;
		}

		$target_section_args = $this->current_section;

		$target_tab = $this->current_tab;

		if ( $this->injection_point ) {
			$target_section_args = $this->injection_point['section'];

			if ( ! empty( $this->injection_point['tab'] ) ) {
				$target_tab = $this->injection_point['tab'];
			}
		}

		if ( null !== $target_section_args ) {
			if ( ! empty( $args['section'] ) || ! empty( $args['tab'] ) ) {
				_doing_it_wrong( sprintf( '%s::%s', get_called_class(), __FUNCTION__ ), sprintf( 'Cannot redeclare control with `tab` or `section` args inside section "%s".', $control_id ), '1.0.0' ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
			}

			$args = array_replace_recursive( $target_section_args, $args );

			if ( null !== $target_tab ) {
				$args = array_replace_recursive( $target_tab, $args );
			}
		} elseif ( empty( $args['section'] ) && ( ! $overwrite || is_wp_error( Plugin::$instance->controls_manager->get_control_from_stack( $this->get_unique_name(), $control_id ) ) ) ) {
			wp_die( sprintf( '%s::%s: Cannot add a control outside of a section (use `start_controls_section`).', get_called_class(), __FUNCTION__ ) ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
		}

		return $args;
	}

	/**
	 * Initialize the class.
	 *
	 * Set the raw data, the ID and the parsed settings.
	 *
	 * @since 2.9.0
	 * @access protected
	 *
	 * @param array $data Initial data.
	 */
	protected function init( $data ) {
		$this->data = array_merge( $this->get_default_data(), $data );

		$this->id = $data['id'];
	}

	/**
	 * Initialize the class.
	 *
	 * Set the raw data, the ID and the parsed settings.
	 *
	 * @since 1.4.0
	 * @deprecated 2.9.0 use `init()` instead
	 * @access protected
	 *
	 * @param array $data Initial data.
	 */
	protected function _init( $data ) {
		Plugin::$instance->modules_manager->get_modules( 'dev-tools' )->deprecation->deprecated_function( __METHOD__, '2.9.0', __CLASS__ . '::init()' );

		$this->init( $data );
	}

	/**
	 * Sanitize initial data.
	 *
	 * Performs settings cleaning and sanitization.
	 *
	 * @since 2.1.5
	 * @access private
	 *
	 * @param array $settings Settings to sanitize.
	 * @param array $controls Optional. An array of controls. Default is an
	 *                        empty array.
	 *
	 * @return array Sanitized settings.
	 */
	private function sanitize_settings( array $settings, array $controls = [] ) {
		if ( ! $controls ) {
			$controls = $this->get_controls();
		}

		foreach ( $controls as $control ) {
			$control_obj = Plugin::$instance->controls_manager->get_control( $control['type'] );

			if ( $control_obj instanceof Control_Repeater ) {
				if ( empty( $settings[ $control['name'] ] ) ) {
					continue;
				}

				foreach ( $settings[ $control['name'] ] as $index => $repeater_row_data ) {
					$sanitized_row_data = $this->sanitize_settings( $repeater_row_data, $control['fields'] );

					$settings[ $control['name'] ][ $index ] = $sanitized_row_data;
				}

				continue;
			}

			$is_dynamic = isset( $settings[ Manager::DYNAMIC_SETTING_KEY ][ $control['name'] ] );

			if ( ! $is_dynamic ) {
				continue;
			}

			$value_to_check = $settings[ Manager::DYNAMIC_SETTING_KEY ][ $control['name'] ];

			$tag_text_data = Plugin::$instance->dynamic_tags->tag_text_to_tag_data( $value_to_check );

			if ( ! Plugin::$instance->dynamic_tags->get_tag_info( $tag_text_data['name'] ) ) {
				unset( $settings[ Manager::DYNAMIC_SETTING_KEY ][ $control['name'] ] );
			}
		}

		return $settings;
	}

	/**
	 * Controls stack constructor.
	 *
	 * Initializing the control stack class using `$data`. The `$data` is required
	 * for a normal instance. It is optional only for internal `type instance`.
	 *
	 * @since 1.4.0
	 * @access public
	 *
	 * @param array $data Optional. Control stack data. Default is an empty array.
	 */
	public function __construct( array $data = [] ) {
		if ( $data ) {
			// TODO: This is for backwards compatibility starting from 2.9.0
			// This if statement should be removed when the method is hard-deprecated
			if ( $this->has_own_method( '_init', self::class ) ) {
				Plugin::$instance->modules_manager->get_modules( 'dev-tools' )->deprecation->deprecated_function( '_init', '2.9.0', __CLASS__ . '::init()' );

				$this->_init( $data );
			} else {
				$this->init( $data );
			}
		}
	}
}
includes/base/skin-base.php000064400000014413151327220420011652 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor skin base.
 *
 * An abstract class to register new skins for Elementor widgets. Skins allows
 * you to add new templates, set custom controls and more.
 *
 * To register new skins for your widget use the `add_skin()` method inside the
 * widget's `register_skins()` method.
 *
 * @since 1.0.0
 * @abstract
 */
abstract class Skin_Base extends Sub_Controls_Stack {

	/**
	 * Parent widget.
	 *
	 * Holds the parent widget of the skin. Default value is null, no parent widget.
	 *
	 * @access protected
	 *
	 * @var Widget_Base|null
	 */
	protected $parent = null;

	/**
	 * Skin base constructor.
	 *
	 * Initializing the skin base class by setting parent widget and registering
	 * controls actions.
	 *
	 * @since 1.0.0
	 * @access public
	 * @param Widget_Base $parent
	 */
	public function __construct( Widget_Base $parent ) {
		parent::__construct( $parent );

		$this->_register_controls_actions();
	}

	/**
	 * Render skin.
	 *
	 * Generates the final HTML on the frontend.
	 *
	 * @since 1.0.0
	 * @access public
	 * @abstract
	 */
	abstract public function render();

	/**
	 * Render element in static mode.
	 *
	 * If not inherent will call the base render.
	 */
	public function render_static() {
		$this->render();
	}

	/**
	 * Determine the render logic.
	 */
	public function render_by_mode() {
		if ( Plugin::$instance->frontend->is_static_render_mode() ) {
			$this->render_static();

			return;
		}

		$this->render();
	}

	/**
	 * Register skin controls actions.
	 *
	 * Run on init and used to register new skins to be injected to the widget.
	 * This method is used to register new actions that specify the location of
	 * the skin in the widget.
	 *
	 * Example usage:
	 * `add_action( 'elementor/element/{widget_id}/{section_id}/before_section_end', [ $this, 'register_controls' ] );`
	 *
	 * @since 1.0.0
	 * @access protected
	 */
	protected function _register_controls_actions() {}

	/**
	 * Get skin control ID.
	 *
	 * Retrieve the skin control ID. Note that skin controls have special prefix
	 * to distinguish them from regular controls, and from controls in other
	 * skins.
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @param string $control_base_id Control base ID.
	 *
	 * @return string Control ID.
	 */
	protected function get_control_id( $control_base_id ) {
		$skin_id = str_replace( '-', '_', $this->get_id() );
		return $skin_id . '_' . $control_base_id;
	}

	/**
	 * Get skin settings.
	 *
	 * Retrieve all the skin settings or, when requested, a specific setting.
	 *
	 * @since 1.0.0
	 * @TODO: rename to get_setting() and create backward compatibility.
	 *
	 * @access public
	 *
	 * @param string $control_base_id Control base ID.
	 *
	 * @return Widget_Base Widget instance.
	 */
	public function get_instance_value( $control_base_id ) {
		$control_id = $this->get_control_id( $control_base_id );
		return $this->parent->get_settings( $control_id );
	}

	/**
	 * Start skin controls section.
	 *
	 * Used to add a new section of controls to the skin.
	 *
	 * @since 1.3.0
	 * @access public
	 *
	 * @param string $id   Section ID.
	 * @param array  $args Section arguments.
	 */
	public function start_controls_section( $id, $args = [] ) {
		$args['condition']['_skin'] = $this->get_id();
		parent::start_controls_section( $id, $args );
	}

	/**
	 * Add new skin control.
	 *
	 * Register a single control to the allow the user to set/update skin data.
	 *
	 * @param string $id   Control ID.
	 * @param array  $args Control arguments.
	 * @param array  $options
	 *
	 * @return bool True if skin added, False otherwise.

	 * @since 3.0.0 New `$options` parameter added.
	 * @access public
	 *
	 */
	public function add_control( $id, $args = [], $options = [] ) {
		$args['condition']['_skin'] = $this->get_id();
		return parent::add_control( $id, $args, $options );
	}

	/**
	 * Update skin control.
	 *
	 * Change the value of an existing skin control.
	 *
	 * @since 1.3.0
	 * @since 1.8.1 New `$options` parameter added.
	 *
	 * @access public
	 *
	 * @param string $id      Control ID.
	 * @param array  $args    Control arguments. Only the new fields you want to update.
	 * @param array  $options Optional. Some additional options.
	 */
	public function update_control( $id, $args, array $options = [] ) {
		$args['condition']['_skin'] = $this->get_id();
		parent::update_control( $id, $args, $options );
	}

	/**
	 * Add new responsive skin control.
	 *
	 * Register a set of controls to allow editing based on user screen size.
	 *
	 * @param string $id   Responsive control ID.
	 * @param array  $args Responsive control arguments.
	 * @param array  $options
	 *
	 * @since  1.0.5
	 * @access public
	 *
	 */
	public function add_responsive_control( $id, $args, $options = [] ) {
		$args['condition']['_skin'] = $this->get_id();
		parent::add_responsive_control( $id, $args );
	}

	/**
	 * Start skin controls tab.
	 *
	 * Used to add a new tab inside a group of tabs.
	 *
	 * @since 1.5.0
	 * @access public
	 *
	 * @param string $id   Control ID.
	 * @param array  $args Control arguments.
	 */
	public function start_controls_tab( $id, $args ) {
		$args['condition']['_skin'] = $this->get_id();
		parent::start_controls_tab( $id, $args );
	}

	/**
	 * Start skin controls tabs.
	 *
	 * Used to add a new set of tabs inside a section.
	 *
	 * @since 1.5.0
	 * @access public
	 *
	 * @param string $id Control ID.
	 */
	public function start_controls_tabs( $id ) {
		$args['condition']['_skin'] = $this->get_id();
		parent::start_controls_tabs( $id );
	}

	/**
	 * Add new group control.
	 *
	 * Register a set of related controls grouped together as a single unified
	 * control.
	 *
	 * @param string $group_name Group control name.
	 * @param array  $args       Group control arguments. Default is an empty array.
	 * @param array  $options
	 *
	 * @since  1.0.0
	 * @access public
	 *
	 */
	final public function add_group_control( $group_name, $args = [], $options = [] ) {
		$args['condition']['_skin'] = $this->get_id();
		parent::add_group_control( $group_name, $args );
	}

	/**
	 * Set parent widget.
	 *
	 * Used to define the parent widget of the skin.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param Widget_Base $parent Parent widget.
	 */
	public function set_parent( $parent ) {
		$this->parent = $parent;
	}
}
includes/widgets/spacer.php000064400000006104151327220420012005 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor spacer widget.
 *
 * Elementor widget that inserts a space that divides various elements.
 *
 * @since 1.0.0
 */
class Widget_Spacer extends Widget_Base {

	/**
	 * Get widget name.
	 *
	 * Retrieve spacer widget name.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget name.
	 */
	public function get_name() {
		return 'spacer';
	}

	/**
	 * Get widget title.
	 *
	 * Retrieve spacer widget title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget title.
	 */
	public function get_title() {
		return esc_html__( 'Spacer', 'elementor' );
	}

	/**
	 * Get widget icon.
	 *
	 * Retrieve spacer widget icon.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget icon.
	 */
	public function get_icon() {
		return 'eicon-spacer';
	}

	/**
	 * Get widget categories.
	 *
	 * Retrieve the list of categories the spacer widget belongs to.
	 *
	 * Used to determine where to display the widget in the editor.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array Widget categories.
	 */
	public function get_categories() {
		return [ 'basic' ];
	}

	/**
	 * Get widget keywords.
	 *
	 * Retrieve the list of keywords the widget belongs to.
	 *
	 * @since 2.1.0
	 * @access public
	 *
	 * @return array Widget keywords.
	 */
	public function get_keywords() {
		return [ 'space' ];
	}

	/**
	 * Register spacer widget controls.
	 *
	 * Adds different input fields to allow the user to change and customize the widget settings.
	 *
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		$this->start_controls_section(
			'section_spacer',
			[
				'label' => esc_html__( 'Spacer', 'elementor' ),
			]
		);

		$this->add_responsive_control(
			'space',
			[
				'label' => esc_html__( 'Space', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'default' => [
					'size' => 50,
				],
				'size_units' => [ 'px', 'vh', 'em' ],
				'range' => [
					'px' => [
						'min' => 10,
						'max' => 600,
					],
					'em' => [
						'min' => 0.1,
						'max' => 20,
					],
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-spacer-inner' => 'height: {{SIZE}}{{UNIT}};',
				],
			]
		);

		$this->add_control(
			'view',
			[
				'label' => esc_html__( 'View', 'elementor' ),
				'type' => Controls_Manager::HIDDEN,
				'default' => 'traditional',
			]
		);

		$this->end_controls_section();
	}

	/**
	 * Render spacer widget output on the frontend.
	 *
	 * Written in PHP and used to generate the final HTML.
	 *
	 * @since 1.0.0
	 * @access protected
	 */
	protected function render() {
		?>
		<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
		<?php
	}

	/**
	 * Render spacer widget output in the editor.
	 *
	 * Written as a Backbone JavaScript template and used to generate the live preview.
	 *
	 * @since 2.9.0
	 * @access protected
	 */
	protected function content_template() {
		?>
		<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
		<?php
	}
}
includes/widgets/icon-list.php000064400000045213151327220420012435 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

use Elementor\Core\Kits\Documents\Tabs\Global_Colors;
use Elementor\Core\Kits\Documents\Tabs\Global_Typography;

/**
 * Elementor icon list widget.
 *
 * Elementor widget that displays a bullet list with any chosen icons and texts.
 *
 * @since 1.0.0
 */
class Widget_Icon_List extends Widget_Base {

	/**
	 * Get widget name.
	 *
	 * Retrieve icon list widget name.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget name.
	 */
	public function get_name() {
		return 'icon-list';
	}

	/**
	 * Get widget title.
	 *
	 * Retrieve icon list widget title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget title.
	 */
	public function get_title() {
		return esc_html__( 'Icon List', 'elementor' );
	}

	/**
	 * Get widget icon.
	 *
	 * Retrieve icon list widget icon.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget icon.
	 */
	public function get_icon() {
		return 'eicon-bullet-list';
	}

	/**
	 * Get widget keywords.
	 *
	 * Retrieve the list of keywords the widget belongs to.
	 *
	 * @since 2.1.0
	 * @access public
	 *
	 * @return array Widget keywords.
	 */
	public function get_keywords() {
		return [ 'icon list', 'icon', 'list' ];
	}

	/**
	 * Register icon list widget controls.
	 *
	 * Adds different input fields to allow the user to change and customize the widget settings.
	 *
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		$this->start_controls_section(
			'section_icon',
			[
				'label' => esc_html__( 'Icon List', 'elementor' ),
			]
		);

		$this->add_control(
			'view',
			[
				'label' => esc_html__( 'Layout', 'elementor' ),
				'type' => Controls_Manager::CHOOSE,
				'default' => 'traditional',
				'options' => [
					'traditional' => [
						'title' => esc_html__( 'Default', 'elementor' ),
						'icon' => 'eicon-editor-list-ul',
					],
					'inline' => [
						'title' => esc_html__( 'Inline', 'elementor' ),
						'icon' => 'eicon-ellipsis-h',
					],
				],
				'render_type' => 'template',
				'classes' => 'elementor-control-start-end',
				'style_transfer' => true,
				'prefix_class' => 'elementor-icon-list--layout-',
			]
		);

		$repeater = new Repeater();

		$repeater->add_control(
			'text',
			[
				'label' => esc_html__( 'Text', 'elementor' ),
				'type' => Controls_Manager::TEXT,
				'label_block' => true,
				'placeholder' => esc_html__( 'List Item', 'elementor' ),
				'default' => esc_html__( 'List Item', 'elementor' ),
				'dynamic' => [
					'active' => true,
				],
			]
		);

		$repeater->add_control(
			'selected_icon',
			[
				'label' => esc_html__( 'Icon', 'elementor' ),
				'type' => Controls_Manager::ICONS,
				'default' => [
					'value' => 'fas fa-check',
					'library' => 'fa-solid',
				],
				'fa4compatibility' => 'icon',
			]
		);

		$repeater->add_control(
			'link',
			[
				'label' => esc_html__( 'Link', 'elementor' ),
				'type' => Controls_Manager::URL,
				'dynamic' => [
					'active' => true,
				],
				'placeholder' => esc_html__( 'https://your-link.com', 'elementor' ),
			]
		);

		$this->add_control(
			'icon_list',
			[
				'label' => esc_html__( 'Items', 'elementor' ),
				'type' => Controls_Manager::REPEATER,
				'fields' => $repeater->get_controls(),
				'default' => [
					[
						'text' => esc_html__( 'List Item #1', 'elementor' ),
						'selected_icon' => [
							'value' => 'fas fa-check',
							'library' => 'fa-solid',
						],
					],
					[
						'text' => esc_html__( 'List Item #2', 'elementor' ),
						'selected_icon' => [
							'value' => 'fas fa-times',
							'library' => 'fa-solid',
						],
					],
					[
						'text' => esc_html__( 'List Item #3', 'elementor' ),
						'selected_icon' => [
							'value' => 'fas fa-dot-circle',
							'library' => 'fa-solid',
						],
					],
				],
				'title_field' => '{{{ elementor.helpers.renderIcon( this, selected_icon, {}, "i", "panel" ) || \'<i class="{{ icon }}" aria-hidden="true"></i>\' }}} {{{ text }}}',
			]
		);

		$this->add_control(
			'link_click',
			[
				'label' => esc_html__( 'Apply Link On', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'options' => [
					'full_width' => esc_html__( 'Full Width', 'elementor' ),
					'inline' => esc_html__( 'Inline', 'elementor' ),
				],
				'default' => 'full_width',
				'separator' => 'before',
				'prefix_class' => 'elementor-list-item-link-',
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_icon_list',
			[
				'label' => esc_html__( 'List', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->add_responsive_control(
			'space_between',
			[
				'label' => esc_html__( 'Space Between', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'max' => 50,
					],
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child)' => 'padding-bottom: calc({{SIZE}}{{UNIT}}/2)',
					'{{WRAPPER}} .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child)' => 'margin-top: calc({{SIZE}}{{UNIT}}/2)',
					'{{WRAPPER}} .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item' => 'margin-right: calc({{SIZE}}{{UNIT}}/2); margin-left: calc({{SIZE}}{{UNIT}}/2)',
					'{{WRAPPER}} .elementor-icon-list-items.elementor-inline-items' => 'margin-right: calc(-{{SIZE}}{{UNIT}}/2); margin-left: calc(-{{SIZE}}{{UNIT}}/2)',
					'body.rtl {{WRAPPER}} .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after' => 'left: calc(-{{SIZE}}{{UNIT}}/2)',
					'body:not(.rtl) {{WRAPPER}} .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after' => 'right: calc(-{{SIZE}}{{UNIT}}/2)',
				],
			]
		);

		$this->add_responsive_control(
			'icon_align',
			[
				'label' => esc_html__( 'Alignment', 'elementor' ),
				'type' => Controls_Manager::CHOOSE,
				'options' => [
					'left' => [
						'title' => esc_html__( 'Left', 'elementor' ),
						'icon' => 'eicon-h-align-left',
					],
					'center' => [
						'title' => esc_html__( 'Center', 'elementor' ),
						'icon' => 'eicon-h-align-center',
					],
					'right' => [
						'title' => esc_html__( 'Right', 'elementor' ),
						'icon' => 'eicon-h-align-right',
					],
				],
				'prefix_class' => 'elementor%s-align-',
			]
		);

		$this->add_control(
			'divider',
			[
				'label' => esc_html__( 'Divider', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'label_off' => esc_html__( 'Off', 'elementor' ),
				'label_on' => esc_html__( 'On', 'elementor' ),
				'selectors' => [
					'{{WRAPPER}} .elementor-icon-list-item:not(:last-child):after' => 'content: ""',
				],
				'separator' => 'before',
			]
		);

		$this->add_control(
			'divider_style',
			[
				'label' => esc_html__( 'Style', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'options' => [
					'solid' => esc_html__( 'Solid', 'elementor' ),
					'double' => esc_html__( 'Double', 'elementor' ),
					'dotted' => esc_html__( 'Dotted', 'elementor' ),
					'dashed' => esc_html__( 'Dashed', 'elementor' ),
				],
				'default' => 'solid',
				'condition' => [
					'divider' => 'yes',
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child):after' => 'border-top-style: {{VALUE}}',
					'{{WRAPPER}} .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:not(:last-child):after' => 'border-left-style: {{VALUE}}',
				],
			]
		);

		$this->add_control(
			'divider_weight',
			[
				'label' => esc_html__( 'Weight', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'default' => [
					'size' => 1,
				],
				'range' => [
					'px' => [
						'min' => 1,
						'max' => 20,
					],
				],
				'condition' => [
					'divider' => 'yes',
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child):after' => 'border-top-width: {{SIZE}}{{UNIT}}',
					'{{WRAPPER}} .elementor-inline-items .elementor-icon-list-item:not(:last-child):after' => 'border-left-width: {{SIZE}}{{UNIT}}',
				],
			]
		);

		$this->add_control(
			'divider_width',
			[
				'label' => esc_html__( 'Width', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'default' => [
					'unit' => '%',
				],
				'condition' => [
					'divider' => 'yes',
					'view!' => 'inline',
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-icon-list-item:not(:last-child):after' => 'width: {{SIZE}}{{UNIT}}',
				],
			]
		);

		$this->add_control(
			'divider_height',
			[
				'label' => esc_html__( 'Height', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'size_units' => [ '%', 'px' ],
				'default' => [
					'unit' => '%',
				],
				'range' => [
					'px' => [
						'min' => 1,
						'max' => 100,
					],
					'%' => [
						'min' => 1,
						'max' => 100,
					],
				],
				'condition' => [
					'divider' => 'yes',
					'view' => 'inline',
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-icon-list-item:not(:last-child):after' => 'height: {{SIZE}}{{UNIT}}',
				],
			]
		);

		$this->add_control(
			'divider_color',
			[
				'label' => esc_html__( 'Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '#ddd',
				'global' => [
					'default' => Global_Colors::COLOR_TEXT,
				],
				'condition' => [
					'divider' => 'yes',
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-icon-list-item:not(:last-child):after' => 'border-color: {{VALUE}}',
				],
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_icon_style',
			[
				'label' => esc_html__( 'Icon', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->add_control(
			'icon_color',
			[
				'label' => esc_html__( 'Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'selectors' => [
					'{{WRAPPER}} .elementor-icon-list-icon i' => 'color: {{VALUE}};',
					'{{WRAPPER}} .elementor-icon-list-icon svg' => 'fill: {{VALUE}};',
				],
				'global' => [
					'default' => Global_Colors::COLOR_PRIMARY,
				],
			]
		);

		$this->add_control(
			'icon_color_hover',
			[
				'label' => esc_html__( 'Hover', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'selectors' => [
					'{{WRAPPER}} .elementor-icon-list-item:hover .elementor-icon-list-icon i' => 'color: {{VALUE}};',
					'{{WRAPPER}} .elementor-icon-list-item:hover .elementor-icon-list-icon svg' => 'fill: {{VALUE}};',
				],
			]
		);

		$this->add_responsive_control(
			'icon_size',
			[
				'label' => esc_html__( 'Size', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'default' => [
					'size' => 14,
				],
				'range' => [
					'px' => [
						'min' => 6,
					],
				],
				'selectors' => [
					'{{WRAPPER}}' => '--e-icon-list-icon-size: {{SIZE}}{{UNIT}};',
				],
			]
		);

		$e_icon_list_icon_css_var = 'var(--e-icon-list-icon-size, 1em)';
		$e_icon_list_icon_align_left = sprintf( '0 calc(%s * 0.25) 0 0', $e_icon_list_icon_css_var );
		$e_icon_list_icon_align_center = sprintf( '0 calc(%s * 0.125)', $e_icon_list_icon_css_var );
		$e_icon_list_icon_align_right = sprintf( '0 0 0 calc(%s * 0.25)', $e_icon_list_icon_css_var );

		$this->add_responsive_control(
			'icon_self_align',
			[
				'label' => esc_html__( 'Alignment', 'elementor' ),
				'type' => Controls_Manager::CHOOSE,
				'options' => [
					'left' => [
						'title' => esc_html__( 'Left', 'elementor' ),
						'icon' => 'eicon-h-align-left',
					],
					'center' => [
						'title' => esc_html__( 'Center', 'elementor' ),
						'icon' => 'eicon-h-align-center',
					],
					'right' => [
						'title' => esc_html__( 'Right', 'elementor' ),
						'icon' => 'eicon-h-align-right',
					],
				],
				'default' => '',
				'selectors_dictionary' => [
					'left' => sprintf( '--e-icon-list-icon-align: left; --e-icon-list-icon-margin: %s;', $e_icon_list_icon_align_left ),
					'center' => sprintf( '--e-icon-list-icon-align: center; --e-icon-list-icon-margin: %s;', $e_icon_list_icon_align_center ),
					'right' => sprintf( '--e-icon-list-icon-align: right; --e-icon-list-icon-margin: %s;', $e_icon_list_icon_align_right ),
				],
				'selectors' => [
					'{{WRAPPER}}' => '{{VALUE}}',
				],
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_text_style',
			[
				'label' => esc_html__( 'Text', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->add_control(
			'text_color',
			[
				'label' => esc_html__( 'Text Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'selectors' => [
					'{{WRAPPER}} .elementor-icon-list-text' => 'color: {{VALUE}};',
				],
				'global' => [
					'default' => Global_Colors::COLOR_SECONDARY,
				],
			]
		);

		$this->add_control(
			'text_color_hover',
			[
				'label' => esc_html__( 'Hover', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'selectors' => [
					'{{WRAPPER}} .elementor-icon-list-item:hover .elementor-icon-list-text' => 'color: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'text_indent',
			[
				'label' => esc_html__( 'Text Indent', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'max' => 50,
					],
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-icon-list-text' => is_rtl() ? 'padding-right: {{SIZE}}{{UNIT}};' : 'padding-left: {{SIZE}}{{UNIT}};',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			[
				'name' => 'icon_typography',
				'selector' => '{{WRAPPER}} .elementor-icon-list-item > .elementor-icon-list-text, {{WRAPPER}} .elementor-icon-list-item > a',
				'global' => [
					'default' => Global_Typography::TYPOGRAPHY_TEXT,
				],
			]
		);

		$this->add_group_control(
			Group_Control_Text_Shadow::get_type(),
			[
				'name' => 'text_shadow',
				'selector' => '{{WRAPPER}} .elementor-icon-list-text',
			]
		);

		$this->end_controls_section();
	}

	/**
	 * Render icon list widget output on the frontend.
	 *
	 * Written in PHP and used to generate the final HTML.
	 *
	 * @since 1.0.0
	 * @access protected
	 */
	protected function render() {
		$settings = $this->get_settings_for_display();
		$fallback_defaults = [
			'fa fa-check',
			'fa fa-times',
			'fa fa-dot-circle-o',
		];

		$this->add_render_attribute( 'icon_list', 'class', 'elementor-icon-list-items' );
		$this->add_render_attribute( 'list_item', 'class', 'elementor-icon-list-item' );

		if ( 'inline' === $settings['view'] ) {
			$this->add_render_attribute( 'icon_list', 'class', 'elementor-inline-items' );
			$this->add_render_attribute( 'list_item', 'class', 'elementor-inline-item' );
		}
		?>
		<ul <?php $this->print_render_attribute_string( 'icon_list' ); ?>>
			<?php
			foreach ( $settings['icon_list'] as $index => $item ) :
				$repeater_setting_key = $this->get_repeater_setting_key( 'text', 'icon_list', $index );

				$this->add_render_attribute( $repeater_setting_key, 'class', 'elementor-icon-list-text' );

				$this->add_inline_editing_attributes( $repeater_setting_key );
				$migration_allowed = Icons_Manager::is_migration_allowed();
				?>
				<li <?php $this->print_render_attribute_string( 'list_item' ); ?>>
					<?php
					if ( ! empty( $item['link']['url'] ) ) {
						$link_key = 'link_' . $index;

						$this->add_link_attributes( $link_key, $item['link'] );
						?>
						<a <?php $this->print_render_attribute_string( $link_key ); ?>>

						<?php
					}

					// add old default
					if ( ! isset( $item['icon'] ) && ! $migration_allowed ) {
						$item['icon'] = isset( $fallback_defaults[ $index ] ) ? $fallback_defaults[ $index ] : 'fa fa-check';
					}

					$migrated = isset( $item['__fa4_migrated']['selected_icon'] );
					$is_new = ! isset( $item['icon'] ) && $migration_allowed;
					if ( ! empty( $item['icon'] ) || ( ! empty( $item['selected_icon']['value'] ) && $is_new ) ) :
						?>
						<span class="elementor-icon-list-icon">
							<?php
							if ( $is_new || $migrated ) {
								Icons_Manager::render_icon( $item['selected_icon'], [ 'aria-hidden' => 'true' ] );
							} else { ?>
									<i class="<?php echo esc_attr( $item['icon'] ); ?>" aria-hidden="true"></i>
							<?php } ?>
						</span>
					<?php endif; ?>
					<span <?php $this->print_render_attribute_string( $repeater_setting_key ); ?>><?php $this->print_unescaped_setting( 'text', 'icon_list', $index ); ?></span>
					<?php if ( ! empty( $item['link']['url'] ) ) : ?>
						</a>
					<?php endif; ?>
				</li>
				<?php
			endforeach;
			?>
		</ul>
		<?php
	}

	/**
	 * Render icon list widget output in the editor.
	 *
	 * Written as a Backbone JavaScript template and used to generate the live preview.
	 *
	 * @since 2.9.0
	 * @access protected
	 */
	protected function content_template() {
		?>
		<#
			view.addRenderAttribute( 'icon_list', 'class', 'elementor-icon-list-items' );
			view.addRenderAttribute( 'list_item', 'class', 'elementor-icon-list-item' );

			if ( 'inline' == settings.view ) {
				view.addRenderAttribute( 'icon_list', 'class', 'elementor-inline-items' );
				view.addRenderAttribute( 'list_item', 'class', 'elementor-inline-item' );
			}
			var iconsHTML = {},
				migrated = {};
		#>
		<# if ( settings.icon_list ) { #>
			<ul {{{ view.getRenderAttributeString( 'icon_list' ) }}}>
			<# _.each( settings.icon_list, function( item, index ) {

					var iconTextKey = view.getRepeaterSettingKey( 'text', 'icon_list', index );

					view.addRenderAttribute( iconTextKey, 'class', 'elementor-icon-list-text' );

					view.addInlineEditingAttributes( iconTextKey ); #>

					<li {{{ view.getRenderAttributeString( 'list_item' ) }}}>
						<# if ( item.link && item.link.url ) { #>
							<a href="{{ item.link.url }}">
						<# } #>
						<# if ( item.icon || item.selected_icon.value ) { #>
						<span class="elementor-icon-list-icon">
							<#
								iconsHTML[ index ] = elementor.helpers.renderIcon( view, item.selected_icon, { 'aria-hidden': true }, 'i', 'object' );
								migrated[ index ] = elementor.helpers.isIconMigrated( item, 'selected_icon' );
								if ( iconsHTML[ index ] && iconsHTML[ index ].rendered && ( ! item.icon || migrated[ index ] ) ) { #>
									{{{ iconsHTML[ index ].value }}}
								<# } else { #>
									<i class="{{ item.icon }}" aria-hidden="true"></i>
								<# }
							#>
						</span>
						<# } #>
						<span {{{ view.getRenderAttributeString( iconTextKey ) }}}>{{{ item.text }}}</span>
						<# if ( item.link && item.link.url ) { #>
							</a>
						<# } #>
					</li>
				<#
				} ); #>
			</ul>
		<#	} #>

		<?php
	}

	public function on_import( $element ) {
		return Icons_Manager::on_import_migration( $element, 'icon', 'selected_icon', true );
	}
}
includes/widgets/heading.php000064400000017426151327220420012140 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

use Elementor\Core\Kits\Documents\Tabs\Global_Colors;
use Elementor\Core\Kits\Documents\Tabs\Global_Typography;

/**
 * Elementor heading widget.
 *
 * Elementor widget that displays an eye-catching headlines.
 *
 * @since 1.0.0
 */
class Widget_Heading extends Widget_Base {

	/**
	 * Get widget name.
	 *
	 * Retrieve heading widget name.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget name.
	 */
	public function get_name() {
		return 'heading';
	}

	/**
	 * Get widget title.
	 *
	 * Retrieve heading widget title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget title.
	 */
	public function get_title() {
		return esc_html__( 'Heading', 'elementor' );
	}

	/**
	 * Get widget icon.
	 *
	 * Retrieve heading widget icon.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget icon.
	 */
	public function get_icon() {
		return 'eicon-t-letter';
	}

	/**
	 * Get widget categories.
	 *
	 * Retrieve the list of categories the heading widget belongs to.
	 *
	 * Used to determine where to display the widget in the editor.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @return array Widget categories.
	 */
	public function get_categories() {
		return [ 'basic' ];
	}

	/**
	 * Get widget keywords.
	 *
	 * Retrieve the list of keywords the widget belongs to.
	 *
	 * @since 2.1.0
	 * @access public
	 *
	 * @return array Widget keywords.
	 */
	public function get_keywords() {
		return [ 'heading', 'title', 'text' ];
	}

	/**
	 * Register heading widget controls.
	 *
	 * Adds different input fields to allow the user to change and customize the widget settings.
	 *
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		$this->start_controls_section(
			'section_title',
			[
				'label' => esc_html__( 'Title', 'elementor' ),
			]
		);

		$this->add_control(
			'title',
			[
				'label' => esc_html__( 'Title', 'elementor' ),
				'type' => Controls_Manager::TEXTAREA,
				'dynamic' => [
					'active' => true,
				],
				'placeholder' => esc_html__( 'Enter your title', 'elementor' ),
				'default' => esc_html__( 'Add Your Heading Text Here', 'elementor' ),
			]
		);

		$this->add_control(
			'link',
			[
				'label' => esc_html__( 'Link', 'elementor' ),
				'type' => Controls_Manager::URL,
				'dynamic' => [
					'active' => true,
				],
				'default' => [
					'url' => '',
				],
				'separator' => 'before',
			]
		);

		$this->add_control(
			'size',
			[
				'label' => esc_html__( 'Size', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => 'default',
				'options' => [
					'default' => esc_html__( 'Default', 'elementor' ),
					'small' => esc_html__( 'Small', 'elementor' ),
					'medium' => esc_html__( 'Medium', 'elementor' ),
					'large' => esc_html__( 'Large', 'elementor' ),
					'xl' => esc_html__( 'XL', 'elementor' ),
					'xxl' => esc_html__( 'XXL', 'elementor' ),
				],
			]
		);

		$this->add_control(
			'header_size',
			[
				'label' => esc_html__( 'HTML Tag', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'options' => [
					'h1' => 'H1',
					'h2' => 'H2',
					'h3' => 'H3',
					'h4' => 'H4',
					'h5' => 'H5',
					'h6' => 'H6',
					'div' => 'div',
					'span' => 'span',
					'p' => 'p',
				],
				'default' => 'h2',
			]
		);

		$this->add_responsive_control(
			'align',
			[
				'label' => esc_html__( 'Alignment', 'elementor' ),
				'type' => Controls_Manager::CHOOSE,
				'options' => [
					'left' => [
						'title' => esc_html__( 'Left', 'elementor' ),
						'icon' => 'eicon-text-align-left',
					],
					'center' => [
						'title' => esc_html__( 'Center', 'elementor' ),
						'icon' => 'eicon-text-align-center',
					],
					'right' => [
						'title' => esc_html__( 'Right', 'elementor' ),
						'icon' => 'eicon-text-align-right',
					],
					'justify' => [
						'title' => esc_html__( 'Justified', 'elementor' ),
						'icon' => 'eicon-text-align-justify',
					],
				],
				'default' => '',
				'selectors' => [
					'{{WRAPPER}}' => 'text-align: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'view',
			[
				'label' => esc_html__( 'View', 'elementor' ),
				'type' => Controls_Manager::HIDDEN,
				'default' => 'traditional',
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_title_style',
			[
				'label' => esc_html__( 'Title', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->add_control(
			'title_color',
			[
				'label' => esc_html__( 'Text Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'global' => [
					'default' => Global_Colors::COLOR_PRIMARY,
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-heading-title' => 'color: {{VALUE}};',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			[
				'name' => 'typography',
				'global' => [
					'default' => Global_Typography::TYPOGRAPHY_PRIMARY,
				],
				'selector' => '{{WRAPPER}} .elementor-heading-title',
			]
		);

		$this->add_group_control(
			Group_Control_Text_Shadow::get_type(),
			[
				'name' => 'text_shadow',
				'selector' => '{{WRAPPER}} .elementor-heading-title',
			]
		);

		$this->add_control(
			'blend_mode',
			[
				'label' => esc_html__( 'Blend Mode', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'options' => [
					'' => esc_html__( 'Normal', 'elementor' ),
					'multiply' => 'Multiply',
					'screen' => 'Screen',
					'overlay' => 'Overlay',
					'darken' => 'Darken',
					'lighten' => 'Lighten',
					'color-dodge' => 'Color Dodge',
					'saturation' => 'Saturation',
					'color' => 'Color',
					'difference' => 'Difference',
					'exclusion' => 'Exclusion',
					'hue' => 'Hue',
					'luminosity' => 'Luminosity',
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-heading-title' => 'mix-blend-mode: {{VALUE}}',
				],
				'separator' => 'none',
			]
		);

		$this->end_controls_section();
	}

	/**
	 * Render heading widget output on the frontend.
	 *
	 * Written in PHP and used to generate the final HTML.
	 *
	 * @since 1.0.0
	 * @access protected
	 */
	protected function render() {
		$settings = $this->get_settings_for_display();

		if ( '' === $settings['title'] ) {
			return;
		}

		$this->add_render_attribute( 'title', 'class', 'elementor-heading-title' );

		if ( ! empty( $settings['size'] ) ) {
			$this->add_render_attribute( 'title', 'class', 'elementor-size-' . $settings['size'] );
		}

		$this->add_inline_editing_attributes( 'title' );

		$title = $settings['title'];

		if ( ! empty( $settings['link']['url'] ) ) {
			$this->add_link_attributes( 'url', $settings['link'] );

			$title = sprintf( '<a %1$s>%2$s</a>', $this->get_render_attribute_string( 'url' ), $title );
		}

		$title_html = sprintf( '<%1$s %2$s>%3$s</%1$s>', Utils::validate_html_tag( $settings['header_size'] ), $this->get_render_attribute_string( 'title' ), $title );

		// PHPCS - the variable $title_html holds safe data.
		echo $title_html; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
	}

	/**
	 * Render heading widget output in the editor.
	 *
	 * Written as a Backbone JavaScript template and used to generate the live preview.
	 *
	 * @since 2.9.0
	 * @access protected
	 */
	protected function content_template() {
		?>
		<#
		var title = settings.title;

		if ( '' !== settings.link.url ) {
			title = '<a href="' + settings.link.url + '">' + title + '</a>';
		}

		view.addRenderAttribute( 'title', 'class', [ 'elementor-heading-title', 'elementor-size-' + settings.size ] );

		view.addInlineEditingAttributes( 'title' );

		var headerSizeTag = elementor.helpers.validateHTMLTag( settings.header_size ),
			title_html = '<' + headerSizeTag  + ' ' + view.getRenderAttributeString( 'title' ) + '>' + title + '</' + headerSizeTag + '>';

		print( title_html );
		#>
		<?php
	}
}
includes/widgets/read-more.php000064400000006151151327220420012405 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor HTML widget.
 *
 * Elementor widget that insert a custom HTML code into the page.
 *
 */
class Widget_Read_More extends Widget_Base {

	/**
	 * Get widget name.
	 *
	 * Retrieve Read More widget name.
	 *
	 * @since 2.4.0
	 * @access public
	 *
	 * @return string Widget name.
	 */
	public function get_name() {
		return 'read-more';
	}

	/**
	 * Get widget title.
	 *
	 * Retrieve Read More widget title.
	 *
	 * @since 2.4.0
	 * @access public
	 *
	 * @return string Widget title.
	 */
	public function get_title() {
		return esc_html__( 'Read More', 'elementor' );
	}

	/**
	 * Get widget icon.
	 *
	 * Retrieve Read More widget icon.
	 *
	 * @since 2.4.0
	 * @access public
	 *
	 * @return string Widget icon.
	 */
	public function get_icon() {
		return 'eicon-post-excerpt';
	}

	/**
	 * Get widget keywords.
	 *
	 * Retrieve the list of keywords the widget belongs to.
	 *
	 * @since 2.4.0
	 * @access public
	 *
	 * @return array Widget keywords.
	 */
	public function get_keywords() {
		return [ 'read', 'more', 'tag', 'excerpt' ];
	}

	/**
	 * Register HTML widget controls.
	 *
	 * Adds different input fields to allow the user to change and customize the widget settings.
	 *
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		$this->start_controls_section(
			'section_title',
			[
				'label' => esc_html__( 'Read More', 'elementor' ),
			]
		);

		$default_link_text = esc_html__( 'Continue reading', 'elementor' );

		/**
		 * Read More widgets link text.
		 *
		 * Filters the link text in the "Read More" widget.
		 *
		 * This hook can be used to set different default text in the widget.
		 *
		 * @param string $default_link_text The link text in the "Read More" widget. Default is "Continue reading".
		 */
		$default_link_text = apply_filters( 'elementor/widgets/read_more/default_link_text', $default_link_text );

		$this->add_control(
			'theme_support',
			[
				'type' => Controls_Manager::RAW_HTML,
				'raw' => sprintf(
					/* translators: %s: The `the_content` function. */
					esc_html__( 'Note: This widget only affects themes that use `%s` in archive pages.', 'elementor' ),
					'the_content'
				),
				'content_classes' => 'elementor-panel-alert elementor-panel-alert-warning',
			]
		);

		$this->add_control(
			'link_text',
			[
				'label' => esc_html__( 'Read More Text', 'elementor' ),
				'placeholder' => $default_link_text,
				'default' => $default_link_text,
			]
		);

		$this->end_controls_section();
	}

	/**
	 * Render Read More widget output on the frontend.
	 *
	 * Written in PHP and used to generate the final HTML.
	 *
	 * @access protected
	 */
	protected function render() {
		printf( '<!--more %s-->', wp_kses_post( $this->get_settings_for_display( 'link_text' ) ) );
	}

	/**
	 * Render Read More widget output in the editor.
	 *
	 * Written as a Backbone JavaScript template and used to generate the live preview.
	 *
	 * @since 2.9.0
	 * @access protected
	 */
	protected function content_template() {
		?>
		<!--more {{ settings.link_text }}-->
		<?php
	}
}
includes/widgets/image.php000064400000044362151327220420011622 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

use Elementor\Core\Kits\Documents\Tabs\Global_Colors;
use Elementor\Core\Kits\Documents\Tabs\Global_Typography;

/**
 * Elementor image widget.
 *
 * Elementor widget that displays an image into the page.
 *
 * @since 1.0.0
 */
class Widget_Image extends Widget_Base {

	/**
	 * Get widget name.
	 *
	 * Retrieve image widget name.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget name.
	 */
	public function get_name() {
		return 'image';
	}

	/**
	 * Get widget title.
	 *
	 * Retrieve image widget title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget title.
	 */
	public function get_title() {
		return esc_html__( 'Image', 'elementor' );
	}

	/**
	 * Get widget icon.
	 *
	 * Retrieve image widget icon.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget icon.
	 */
	public function get_icon() {
		return 'eicon-image';
	}

	/**
	 * Get widget categories.
	 *
	 * Retrieve the list of categories the image widget belongs to.
	 *
	 * Used to determine where to display the widget in the editor.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @return array Widget categories.
	 */
	public function get_categories() {
		return [ 'basic' ];
	}

	/**
	 * Get widget keywords.
	 *
	 * Retrieve the list of keywords the widget belongs to.
	 *
	 * @since 2.1.0
	 * @access public
	 *
	 * @return array Widget keywords.
	 */
	public function get_keywords() {
		return [ 'image', 'photo', 'visual' ];
	}

	/**
	 * Register image widget controls.
	 *
	 * Adds different input fields to allow the user to change and customize the widget settings.
	 *
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		$this->start_controls_section(
			'section_image',
			[
				'label' => esc_html__( 'Image', 'elementor' ),
			]
		);

		$this->add_control(
			'image',
			[
				'label' => esc_html__( 'Choose Image', 'elementor' ),
				'type' => Controls_Manager::MEDIA,
				'dynamic' => [
					'active' => true,
				],
				'default' => [
					'url' => Utils::get_placeholder_image_src(),
				],
			]
		);

		$this->add_group_control(
			Group_Control_Image_Size::get_type(),
			[
				'name' => 'image', // Usage: `{name}_size` and `{name}_custom_dimension`, in this case `image_size` and `image_custom_dimension`.
				'default' => 'large',
				'separator' => 'none',
			]
		);

		$this->add_responsive_control(
			'align',
			[
				'label' => esc_html__( 'Alignment', 'elementor' ),
				'type' => Controls_Manager::CHOOSE,
				'options' => [
					'left' => [
						'title' => esc_html__( 'Left', 'elementor' ),
						'icon' => 'eicon-text-align-left',
					],
					'center' => [
						'title' => esc_html__( 'Center', 'elementor' ),
						'icon' => 'eicon-text-align-center',
					],
					'right' => [
						'title' => esc_html__( 'Right', 'elementor' ),
						'icon' => 'eicon-text-align-right',
					],
				],
				'selectors' => [
					'{{WRAPPER}}' => 'text-align: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'caption_source',
			[
				'label' => esc_html__( 'Caption', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'options' => [
					'none' => esc_html__( 'None', 'elementor' ),
					'attachment' => esc_html__( 'Attachment Caption', 'elementor' ),
					'custom' => esc_html__( 'Custom Caption', 'elementor' ),
				],
				'default' => 'none',
			]
		);

		$this->add_control(
			'caption',
			[
				'label' => esc_html__( 'Custom Caption', 'elementor' ),
				'type' => Controls_Manager::TEXT,
				'default' => '',
				'placeholder' => esc_html__( 'Enter your image caption', 'elementor' ),
				'condition' => [
					'caption_source' => 'custom',
				],
				'dynamic' => [
					'active' => true,
				],
			]
		);

		$this->add_control(
			'link_to',
			[
				'label' => esc_html__( 'Link', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => 'none',
				'options' => [
					'none' => esc_html__( 'None', 'elementor' ),
					'file' => esc_html__( 'Media File', 'elementor' ),
					'custom' => esc_html__( 'Custom URL', 'elementor' ),
				],
			]
		);

		$this->add_control(
			'link',
			[
				'label' => esc_html__( 'Link', 'elementor' ),
				'type' => Controls_Manager::URL,
				'dynamic' => [
					'active' => true,
				],
				'placeholder' => esc_html__( 'https://your-link.com', 'elementor' ),
				'condition' => [
					'link_to' => 'custom',
				],
				'show_label' => false,
			]
		);

		$this->add_control(
			'open_lightbox',
			[
				'label' => esc_html__( 'Lightbox', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => 'default',
				'options' => [
					'default' => esc_html__( 'Default', 'elementor' ),
					'yes' => esc_html__( 'Yes', 'elementor' ),
					'no' => esc_html__( 'No', 'elementor' ),
				],
				'condition' => [
					'link_to' => 'file',
				],
			]
		);

		$this->add_control(
			'view',
			[
				'label' => esc_html__( 'View', 'elementor' ),
				'type' => Controls_Manager::HIDDEN,
				'default' => 'traditional',
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_style_image',
			[
				'label' => esc_html__( 'Image', 'elementor' ),
				'tab'   => Controls_Manager::TAB_STYLE,
			]
		);

		$this->add_responsive_control(
			'width',
			[
				'label' => esc_html__( 'Width', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'default' => [
					'unit' => '%',
				],
				'tablet_default' => [
					'unit' => '%',
				],
				'mobile_default' => [
					'unit' => '%',
				],
				'size_units' => [ '%', 'px', 'vw' ],
				'range' => [
					'%' => [
						'min' => 1,
						'max' => 100,
					],
					'px' => [
						'min' => 1,
						'max' => 1000,
					],
					'vw' => [
						'min' => 1,
						'max' => 100,
					],
				],
				'selectors' => [
					'{{WRAPPER}} img' => 'width: {{SIZE}}{{UNIT}};',
				],
			]
		);

		$this->add_responsive_control(
			'space',
			[
				'label' => esc_html__( 'Max Width', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'default' => [
					'unit' => '%',
				],
				'tablet_default' => [
					'unit' => '%',
				],
				'mobile_default' => [
					'unit' => '%',
				],
				'size_units' => [ '%', 'px', 'vw' ],
				'range' => [
					'%' => [
						'min' => 1,
						'max' => 100,
					],
					'px' => [
						'min' => 1,
						'max' => 1000,
					],
					'vw' => [
						'min' => 1,
						'max' => 100,
					],
				],
				'selectors' => [
					'{{WRAPPER}} img' => 'max-width: {{SIZE}}{{UNIT}};',
				],
			]
		);

		$this->add_responsive_control(
			'height',
			[
				'label' => esc_html__( 'Height', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'default' => [
					'unit' => 'px',
				],
				'tablet_default' => [
					'unit' => 'px',
				],
				'mobile_default' => [
					'unit' => 'px',
				],
				'size_units' => [ 'px', 'vh' ],
				'range' => [
					'px' => [
						'min' => 1,
						'max' => 500,
					],
					'vh' => [
						'min' => 1,
						'max' => 100,
					],
				],
				'selectors' => [
					'{{WRAPPER}} img' => 'height: {{SIZE}}{{UNIT}};',
				],
			]
		);

		$this->add_responsive_control(
			'object-fit',
			[
				'label' => esc_html__( 'Object Fit', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'condition' => [
					'height[size]!' => '',
				],
				'options' => [
					'' => esc_html__( 'Default', 'elementor' ),
					'fill' => esc_html__( 'Fill', 'elementor' ),
					'cover' => esc_html__( 'Cover', 'elementor' ),
					'contain' => esc_html__( 'Contain', 'elementor' ),
				],
				'default' => '',
				'selectors' => [
					'{{WRAPPER}} img' => 'object-fit: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'separator_panel_style',
			[
				'type' => Controls_Manager::DIVIDER,
				'style' => 'thick',
			]
		);

		$this->start_controls_tabs( 'image_effects' );

		$this->start_controls_tab( 'normal',
			[
				'label' => esc_html__( 'Normal', 'elementor' ),
			]
		);

		$this->add_control(
			'opacity',
			[
				'label' => esc_html__( 'Opacity', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'max' => 1,
						'min' => 0.10,
						'step' => 0.01,
					],
				],
				'selectors' => [
					'{{WRAPPER}} img' => 'opacity: {{SIZE}};',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Css_Filter::get_type(),
			[
				'name' => 'css_filters',
				'selector' => '{{WRAPPER}} img',
			]
		);

		$this->end_controls_tab();

		$this->start_controls_tab( 'hover',
			[
				'label' => esc_html__( 'Hover', 'elementor' ),
			]
		);

		$this->add_control(
			'opacity_hover',
			[
				'label' => esc_html__( 'Opacity', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'max' => 1,
						'min' => 0.10,
						'step' => 0.01,
					],
				],
				'selectors' => [
					'{{WRAPPER}}:hover img' => 'opacity: {{SIZE}};',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Css_Filter::get_type(),
			[
				'name' => 'css_filters_hover',
				'selector' => '{{WRAPPER}}:hover img',
			]
		);

		$this->add_control(
			'background_hover_transition',
			[
				'label' => esc_html__( 'Transition Duration', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'max' => 3,
						'step' => 0.1,
					],
				],
				'selectors' => [
					'{{WRAPPER}} img' => 'transition-duration: {{SIZE}}s',
				],
			]
		);

		$this->add_control(
			'hover_animation',
			[
				'label' => esc_html__( 'Hover Animation', 'elementor' ),
				'type' => Controls_Manager::HOVER_ANIMATION,
			]
		);

		$this->end_controls_tab();

		$this->end_controls_tabs();

		$this->add_group_control(
			Group_Control_Border::get_type(),
			[
				'name' => 'image_border',
				'selector' => '{{WRAPPER}} img',
				'separator' => 'before',
			]
		);

		$this->add_responsive_control(
			'image_border_radius',
			[
				'label' => esc_html__( 'Border Radius', 'elementor' ),
				'type' => Controls_Manager::DIMENSIONS,
				'size_units' => [ 'px', '%' ],
				'selectors' => [
					'{{WRAPPER}} img' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Box_Shadow::get_type(),
			[
				'name' => 'image_box_shadow',
				'exclude' => [
					'box_shadow_position',
				],
				'selector' => '{{WRAPPER}} img',
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_style_caption',
			[
				'label' => esc_html__( 'Caption', 'elementor' ),
				'tab'   => Controls_Manager::TAB_STYLE,
				'condition' => [
					'caption_source!' => 'none',
				],
			]
		);

		$this->add_control(
			'caption_align',
			[
				'label' => esc_html__( 'Alignment', 'elementor' ),
				'type' => Controls_Manager::CHOOSE,
				'options' => [
					'left' => [
						'title' => esc_html__( 'Left', 'elementor' ),
						'icon' => 'eicon-text-align-left',
					],
					'center' => [
						'title' => esc_html__( 'Center', 'elementor' ),
						'icon' => 'eicon-text-align-center',
					],
					'right' => [
						'title' => esc_html__( 'Right', 'elementor' ),
						'icon' => 'eicon-text-align-right',
					],
					'justify' => [
						'title' => esc_html__( 'Justified', 'elementor' ),
						'icon' => 'eicon-text-align-justify',
					],
				],
				'default' => '',
				'selectors' => [
					'{{WRAPPER}} .widget-image-caption' => 'text-align: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'text_color',
			[
				'label' => esc_html__( 'Text Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'selectors' => [
					'{{WRAPPER}} .widget-image-caption' => 'color: {{VALUE}};',
				],
				'global' => [
					'default' => Global_Colors::COLOR_TEXT,
				],
			]
		);

		$this->add_control(
			'caption_background_color',
			[
				'label' => esc_html__( 'Background Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'{{WRAPPER}} .widget-image-caption' => 'background-color: {{VALUE}};',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			[
				'name' => 'caption_typography',
				'selector' => '{{WRAPPER}} .widget-image-caption',
				'global' => [
					'default' => Global_Typography::TYPOGRAPHY_TEXT,
				],
			]
		);

		$this->add_group_control(
			Group_Control_Text_Shadow::get_type(),
			[
				'name' => 'caption_text_shadow',
				'selector' => '{{WRAPPER}} .widget-image-caption',
			]
		);

		$this->add_responsive_control(
			'caption_space',
			[
				'label' => esc_html__( 'Spacing', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'min' => 0,
						'max' => 100,
					],
				],
				'selectors' => [
					'{{WRAPPER}} .widget-image-caption' => 'margin-top: {{SIZE}}{{UNIT}};',
				],
			]
		);

		$this->end_controls_section();
	}

	/**
	 * Check if the current widget has caption
	 *
	 * @access private
	 * @since 2.3.0
	 *
	 * @param array $settings
	 *
	 * @return boolean
	 */
	private function has_caption( $settings ) {
		return ( ! empty( $settings['caption_source'] ) && 'none' !== $settings['caption_source'] );
	}

	/**
	 * Get the caption for current widget.
	 *
	 * @access private
	 * @since 2.3.0
	 * @param $settings
	 *
	 * @return string
	 */
	private function get_caption( $settings ) {
		$caption = '';
		if ( ! empty( $settings['caption_source'] ) ) {
			switch ( $settings['caption_source'] ) {
				case 'attachment':
					$caption = wp_get_attachment_caption( $settings['image']['id'] );
					break;
				case 'custom':
					$caption = ! Utils::is_empty( $settings['caption'] ) ? $settings['caption'] : '';
			}
		}
		return $caption;
	}

	/**
	 * Render image widget output on the frontend.
	 *
	 * Written in PHP and used to generate the final HTML.
	 *
	 * @since 1.0.0
	 * @access protected
	 */
	protected function render() {
		$settings = $this->get_settings_for_display();

		if ( empty( $settings['image']['url'] ) ) {
			return;
		}

		if ( ! Plugin::$instance->experiments->is_feature_active( 'e_dom_optimization' ) ) {
			$this->add_render_attribute( 'wrapper', 'class', 'elementor-image' );
		}

		$has_caption = $this->has_caption( $settings );

		$link = $this->get_link_url( $settings );

		if ( $link ) {
			$this->add_link_attributes( 'link', $link );

			if ( Plugin::$instance->editor->is_edit_mode() ) {
				$this->add_render_attribute( 'link', [
					'class' => 'elementor-clickable',
				] );
			}

			if ( 'custom' !== $settings['link_to'] ) {
				$this->add_lightbox_data_attributes( 'link', $settings['image']['id'], $settings['open_lightbox'] );
			}
		} ?>
		<?php if ( ! Plugin::$instance->experiments->is_feature_active( 'e_dom_optimization' ) ) { ?>
			<div <?php $this->print_render_attribute_string( 'wrapper' ); ?>>
		<?php } ?>
			<?php if ( $has_caption ) : ?>
				<figure class="wp-caption">
			<?php endif; ?>
			<?php if ( $link ) : ?>
					<a <?php $this->print_render_attribute_string( 'link' ); ?>>
			<?php endif; ?>
				<?php Group_Control_Image_Size::print_attachment_image_html( $settings ); ?>
			<?php if ( $link ) : ?>
					</a>
			<?php endif; ?>
			<?php if ( $has_caption ) : ?>
					<figcaption class="widget-image-caption wp-caption-text"><?php
						echo wp_kses_post( $this->get_caption( $settings ) );
					?></figcaption>
			<?php endif; ?>
			<?php if ( $has_caption ) : ?>
				</figure>
			<?php endif; ?>
		<?php if ( ! Plugin::$instance->experiments->is_feature_active( 'e_dom_optimization' ) ) { ?>
			</div>
		<?php } ?>
		<?php
	}

	/**
	 * Render image widget output in the editor.
	 *
	 * Written as a Backbone JavaScript template and used to generate the live preview.
	 *
	 * @since 2.9.0
	 * @access protected
	 */
	protected function content_template() {
		?>
		<# if ( settings.image.url ) {
			var image = {
				id: settings.image.id,
				url: settings.image.url,
				size: settings.image_size,
				dimension: settings.image_custom_dimension,
				model: view.getEditModel()
			};

			var image_url = elementor.imagesManager.getImageUrl( image );

			if ( ! image_url ) {
				return;
			}

			var hasCaption = function() {
				if( ! settings.caption_source || 'none' === settings.caption_source ) {
					return false;
				}
				return true;
			}

			var ensureAttachmentData = function( id ) {
				if ( 'undefined' === typeof wp.media.attachment( id ).get( 'caption' ) ) {
					wp.media.attachment( id ).fetch().then( function( data ) {
						view.render();
					} );
				}
			}

			var getAttachmentCaption = function( id ) {
				if ( ! id ) {
					return '';
				}
				ensureAttachmentData( id );
				return wp.media.attachment( id ).get( 'caption' );
			}

			var getCaption = function() {
				if ( ! hasCaption() ) {
					return '';
				}
				return 'custom' === settings.caption_source ? settings.caption : getAttachmentCaption( settings.image.id );
			}

			var link_url;

			if ( 'custom' === settings.link_to ) {
				link_url = settings.link.url;
			}

			if ( 'file' === settings.link_to ) {
				link_url = settings.image.url;
			}

			<?php if ( ! Plugin::$instance->experiments->is_feature_active( 'e_dom_optimization' ) ) { ?>
				#><div class="elementor-image{{ settings.shape ? ' elementor-image-shape-' + settings.shape : '' }}"><#
			<?php } ?>

			var imgClass = '';

			if ( '' !== settings.hover_animation ) {
				imgClass = 'elementor-animation-' + settings.hover_animation;
			}

			if ( hasCaption() ) {
				#><figure class="wp-caption"><#
			}

			if ( link_url ) {
					#><a class="elementor-clickable" data-elementor-open-lightbox="{{ settings.open_lightbox }}" href="{{ link_url }}"><#
			}
						#><img src="{{ image_url }}" class="{{ imgClass }}" /><#

			if ( link_url ) {
					#></a><#
			}

			if ( hasCaption() ) {
					#><figcaption class="widget-image-caption wp-caption-text">{{{ getCaption() }}}</figcaption><#
			}

			if ( hasCaption() ) {
				#></figure><#
			}

			<?php if ( ! Plugin::$instance->experiments->is_feature_active( 'e_dom_optimization' ) ) { ?>
				#></div><#
			<?php } ?>

		} #>
		<?php
	}

	/**
	 * Retrieve image widget link URL.
	 *
	 * @since 1.0.0
	 * @access private
	 *
	 * @param array $settings
	 *
	 * @return array|string|false An array/string containing the link URL, or false if no link.
	 */
	private function get_link_url( $settings ) {
		if ( 'none' === $settings['link_to'] ) {
			return false;
		}

		if ( 'custom' === $settings['link_to'] ) {
			if ( empty( $settings['link']['url'] ) ) {
				return false;
			}

			return $settings['link'];
		}

		return [
			'url' => $settings['image']['url'],
		];
	}
}
includes/widgets/icon-box.php000064400000045311151327220420012251 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

use Elementor\Core\Kits\Documents\Tabs\Global_Colors;
use Elementor\Core\Kits\Documents\Tabs\Global_Typography;

/**
 * Elementor icon box widget.
 *
 * Elementor widget that displays an icon, a headline and a text.
 *
 * @since 1.0.0
 */
class Widget_Icon_Box extends Widget_Base {

	/**
	 * Get widget name.
	 *
	 * Retrieve icon box widget name.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget name.
	 */
	public function get_name() {
		return 'icon-box';
	}

	/**
	 * Get widget title.
	 *
	 * Retrieve icon box widget title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget title.
	 */
	public function get_title() {
		return esc_html__( 'Icon Box', 'elementor' );
	}

	/**
	 * Get widget icon.
	 *
	 * Retrieve icon box widget icon.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget icon.
	 */
	public function get_icon() {
		return 'eicon-icon-box';
	}

	/**
	 * Get widget keywords.
	 *
	 * Retrieve the list of keywords the widget belongs to.
	 *
	 * @since 2.1.0
	 * @access public
	 *
	 * @return array Widget keywords.
	 */
	public function get_keywords() {
		return [ 'icon box', 'icon' ];
	}

	/**
	 * Register icon box widget controls.
	 *
	 * Adds different input fields to allow the user to change and customize the widget settings.
	 *
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		$this->start_controls_section(
			'section_icon',
			[
				'label' => esc_html__( 'Icon Box', 'elementor' ),
			]
		);

		$this->add_control(
			'selected_icon',
			[
				'label' => esc_html__( 'Icon', 'elementor' ),
				'type' => Controls_Manager::ICONS,
				'fa4compatibility' => 'icon',
				'default' => [
					'value' => 'fas fa-star',
					'library' => 'fa-solid',
				],
			]
		);

		$this->add_control(
			'view',
			[
				'label' => esc_html__( 'View', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'options' => [
					'default' => esc_html__( 'Default', 'elementor' ),
					'stacked' => esc_html__( 'Stacked', 'elementor' ),
					'framed' => esc_html__( 'Framed', 'elementor' ),
				],
				'default' => 'default',
				'prefix_class' => 'elementor-view-',
			]
		);

		$this->add_control(
			'shape',
			[
				'label' => esc_html__( 'Shape', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'options' => [
					'circle' => esc_html__( 'Circle', 'elementor' ),
					'square' => esc_html__( 'Square', 'elementor' ),
				],
				'default' => 'circle',
				'condition' => [
					'view!' => 'default',
					'selected_icon[value]!' => '',
				],
				'prefix_class' => 'elementor-shape-',
			]
		);

		$this->add_control(
			'title_text',
			[
				'label' => esc_html__( 'Title & Description', 'elementor' ),
				'type' => Controls_Manager::TEXT,
				'dynamic' => [
					'active' => true,
				],
				'default' => esc_html__( 'This is the heading', 'elementor' ),
				'placeholder' => esc_html__( 'Enter your title', 'elementor' ),
				'label_block' => true,
			]
		);

		$this->add_control(
			'description_text',
			[
				'label' => '',
				'type' => Controls_Manager::TEXTAREA,
				'dynamic' => [
					'active' => true,
				],
				'default' => esc_html__( 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut elit tellus, luctus nec ullamcorper mattis, pulvinar dapibus leo.', 'elementor' ),
				'placeholder' => esc_html__( 'Enter your description', 'elementor' ),
				'rows' => 10,
				'separator' => 'none',
				'show_label' => false,
			]
		);

		$this->add_control(
			'link',
			[
				'label' => esc_html__( 'Link', 'elementor' ),
				'type' => Controls_Manager::URL,
				'dynamic' => [
					'active' => true,
				],
				'placeholder' => esc_html__( 'https://your-link.com', 'elementor' ),
				'separator' => 'before',
			]
		);

		$this->add_control(
			'position',
			[
				'label' => esc_html__( 'Icon Position', 'elementor' ),
				'type' => Controls_Manager::CHOOSE,
				'default' => 'top',
				'options' => [
					'left' => [
						'title' => esc_html__( 'Left', 'elementor' ),
						'icon' => 'eicon-h-align-left',
					],
					'top' => [
						'title' => esc_html__( 'Top', 'elementor' ),
						'icon' => 'eicon-v-align-top',
					],
					'right' => [
						'title' => esc_html__( 'Right', 'elementor' ),
						'icon' => 'eicon-h-align-right',
					],
				],
				'prefix_class' => 'elementor-position-',
				'toggle' => false,
				'conditions' => [
					'relation' => 'or',
					'terms' => [
						[
							'name' => 'selected_icon[value]',
							'operator' => '!=',
							'value' => '',
						],
					],
				],
			]
		);

		$this->add_control(
			'title_size',
			[
				'label' => esc_html__( 'Title HTML Tag', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'options' => [
					'h1' => 'H1',
					'h2' => 'H2',
					'h3' => 'H3',
					'h4' => 'H4',
					'h5' => 'H5',
					'h6' => 'H6',
					'div' => 'div',
					'span' => 'span',
					'p' => 'p',
				],
				'default' => 'h3',
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_style_icon',
			[
				'label' => esc_html__( 'Icon', 'elementor' ),
				'tab'   => Controls_Manager::TAB_STYLE,
				'conditions' => [
					'relation' => 'or',
					'terms' => [
						[
							'name' => 'selected_icon[value]',
							'operator' => '!=',
							'value' => '',
						],
					],
				],
			]
		);

		$this->start_controls_tabs( 'icon_colors' );

		$this->start_controls_tab(
			'icon_colors_normal',
			[
				'label' => esc_html__( 'Normal', 'elementor' ),
			]
		);

		$this->add_control(
			'primary_color',
			[
				'label' => esc_html__( 'Primary Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'global' => [
					'default' => Global_Colors::COLOR_PRIMARY,
				],
				'default' => '',
				'selectors' => [
					'{{WRAPPER}}.elementor-view-stacked .elementor-icon' => 'background-color: {{VALUE}};',
					'{{WRAPPER}}.elementor-view-framed .elementor-icon, {{WRAPPER}}.elementor-view-default .elementor-icon' => 'fill: {{VALUE}}; color: {{VALUE}}; border-color: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'secondary_color',
			[
				'label' => esc_html__( 'Secondary Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'condition' => [
					'view!' => 'default',
				],
				'selectors' => [
					'{{WRAPPER}}.elementor-view-framed .elementor-icon' => 'background-color: {{VALUE}};',
					'{{WRAPPER}}.elementor-view-stacked .elementor-icon' => 'fill: {{VALUE}}; color: {{VALUE}};',
				],
			]
		);

		$this->end_controls_tab();

		$this->start_controls_tab(
			'icon_colors_hover',
			[
				'label' => esc_html__( 'Hover', 'elementor' ),
			]
		);

		$this->add_control(
			'hover_primary_color',
			[
				'label' => esc_html__( 'Primary Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'selectors' => [
					'{{WRAPPER}}.elementor-view-stacked .elementor-icon:hover' => 'background-color: {{VALUE}};',
					'{{WRAPPER}}.elementor-view-framed .elementor-icon:hover, {{WRAPPER}}.elementor-view-default .elementor-icon:hover' => 'fill: {{VALUE}}; color: {{VALUE}}; border-color: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'hover_secondary_color',
			[
				'label' => esc_html__( 'Secondary Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'condition' => [
					'view!' => 'default',
				],
				'selectors' => [
					'{{WRAPPER}}.elementor-view-framed .elementor-icon:hover' => 'background-color: {{VALUE}};',
					'{{WRAPPER}}.elementor-view-stacked .elementor-icon:hover' => 'fill: {{VALUE}}; color: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'hover_animation',
			[
				'label' => esc_html__( 'Hover Animation', 'elementor' ),
				'type' => Controls_Manager::HOVER_ANIMATION,
			]
		);

		$this->end_controls_tab();

		$this->end_controls_tabs();

		$this->add_responsive_control(
			'icon_space',
			[
				'label' => esc_html__( 'Spacing', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'default' => [
					'size' => 15,
				],
				'range' => [
					'px' => [
						'min' => 0,
						'max' => 100,
					],
				],
				'selectors' => [
					'{{WRAPPER}}.elementor-position-right .elementor-icon-box-icon' => 'margin-left: {{SIZE}}{{UNIT}};',
					'{{WRAPPER}}.elementor-position-left .elementor-icon-box-icon' => 'margin-right: {{SIZE}}{{UNIT}};',
					'{{WRAPPER}}.elementor-position-top .elementor-icon-box-icon' => 'margin-bottom: {{SIZE}}{{UNIT}};',
					'(mobile){{WRAPPER}} .elementor-icon-box-icon' => 'margin-bottom: {{SIZE}}{{UNIT}};',
				],
			]
		);

		$this->add_responsive_control(
			'icon_size',
			[
				'label' => esc_html__( 'Size', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'min' => 6,
						'max' => 300,
					],
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-icon' => 'font-size: {{SIZE}}{{UNIT}};',
				],
			]
		);

		$this->add_control(
			'icon_padding',
			[
				'label' => esc_html__( 'Padding', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'selectors' => [
					'{{WRAPPER}} .elementor-icon' => 'padding: {{SIZE}}{{UNIT}};',
				],
				'range' => [
					'em' => [
						'min' => 0,
						'max' => 5,
					],
				],
				'condition' => [
					'view!' => 'default',
				],
			]
		);

		$this->add_control(
			'rotate',
			[
				'label' => esc_html__( 'Rotate', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'default' => [
					'size' => 0,
					'unit' => 'deg',
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-icon i' => 'transform: rotate({{SIZE}}{{UNIT}});',
				],
			]
		);

		$this->add_control(
			'border_width',
			[
				'label' => esc_html__( 'Border Width', 'elementor' ),
				'type' => Controls_Manager::DIMENSIONS,
				'selectors' => [
					'{{WRAPPER}} .elementor-icon' => 'border-width: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
				],
				'condition' => [
					'view' => 'framed',
				],
			]
		);

		$this->add_control(
			'border_radius',
			[
				'label' => esc_html__( 'Border Radius', 'elementor' ),
				'type' => Controls_Manager::DIMENSIONS,
				'size_units' => [ 'px', '%' ],
				'selectors' => [
					'{{WRAPPER}} .elementor-icon' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
				],
				'condition' => [
					'view!' => 'default',
				],
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_style_content',
			[
				'label' => esc_html__( 'Content', 'elementor' ),
				'tab'   => Controls_Manager::TAB_STYLE,
			]
		);

		$this->add_responsive_control(
			'text_align',
			[
				'label' => esc_html__( 'Alignment', 'elementor' ),
				'type' => Controls_Manager::CHOOSE,
				'options' => [
					'left' => [
						'title' => esc_html__( 'Left', 'elementor' ),
						'icon' => 'eicon-text-align-left',
					],
					'center' => [
						'title' => esc_html__( 'Center', 'elementor' ),
						'icon' => 'eicon-text-align-center',
					],
					'right' => [
						'title' => esc_html__( 'Right', 'elementor' ),
						'icon' => 'eicon-text-align-right',
					],
					'justify' => [
						'title' => esc_html__( 'Justified', 'elementor' ),
						'icon' => 'eicon-text-align-justify',
					],
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-icon-box-wrapper' => 'text-align: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'content_vertical_alignment',
			[
				'label' => esc_html__( 'Vertical Alignment', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'options' => [
					'top' => esc_html__( 'Top', 'elementor' ),
					'middle' => esc_html__( 'Middle', 'elementor' ),
					'bottom' => esc_html__( 'Bottom', 'elementor' ),
				],
				'default' => 'top',
				'prefix_class' => 'elementor-vertical-align-',
			]
		);

		$this->add_control(
			'heading_title',
			[
				'label' => esc_html__( 'Title', 'elementor' ),
				'type' => Controls_Manager::HEADING,
				'separator' => 'before',
			]
		);

		$this->add_responsive_control(
			'title_bottom_space',
			[
				'label' => esc_html__( 'Spacing', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'min' => 0,
						'max' => 100,
					],
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-icon-box-title' => 'margin-bottom: {{SIZE}}{{UNIT}};',
				],
			]
		);

		$this->add_control(
			'title_color',
			[
				'label' => esc_html__( 'Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'selectors' => [
					'{{WRAPPER}} .elementor-icon-box-title' => 'color: {{VALUE}};',
				],
				'global' => [
					'default' => Global_Colors::COLOR_PRIMARY,
				],
			]
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			[
				'name' => 'title_typography',
				'selector' => '{{WRAPPER}} .elementor-icon-box-title, {{WRAPPER}} .elementor-icon-box-title a',
				'global' => [
					'default' => Global_Typography::TYPOGRAPHY_PRIMARY,
				],
			]
		);

		$this->add_group_control(
			Group_Control_Text_Shadow::get_type(),
			[
				'name' => 'title_shadow',
				'selector' => '{{WRAPPER}} .elementor-icon-box-title',
			]
		);

		$this->add_control(
			'heading_description',
			[
				'label' => esc_html__( 'Description', 'elementor' ),
				'type' => Controls_Manager::HEADING,
				'separator' => 'before',
			]
		);

		$this->add_control(
			'description_color',
			[
				'label' => esc_html__( 'Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'selectors' => [
					'{{WRAPPER}} .elementor-icon-box-description' => 'color: {{VALUE}};',
				],
				'global' => [
					'default' => Global_Colors::COLOR_TEXT,
				],
			]
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			[
				'name' => 'description_typography',
				'selector' => '{{WRAPPER}} .elementor-icon-box-description',
				'global' => [
					'default' => Global_Typography::TYPOGRAPHY_TEXT,
				],
			]
		);

		$this->add_group_control(
			Group_Control_Text_Shadow::get_type(),
			[
				'name' => 'description_shadow',
				'selector' => '{{WRAPPER}} .elementor-icon-box-description',
			]
		);

		$this->end_controls_section();
	}

	/**
	 * Render icon box widget output on the frontend.
	 *
	 * Written in PHP and used to generate the final HTML.
	 *
	 * @since 1.0.0
	 * @access protected
	 */
	protected function render() {
		$settings = $this->get_settings_for_display();

		$this->add_render_attribute( 'icon', 'class', [ 'elementor-icon', 'elementor-animation-' . $settings['hover_animation'] ] );

		$icon_tag = 'span';

		if ( ! isset( $settings['icon'] ) && ! Icons_Manager::is_migration_allowed() ) {
			// add old default
			$settings['icon'] = 'fa fa-star';
		}

		$has_icon = ! empty( $settings['icon'] );

		if ( ! empty( $settings['link']['url'] ) ) {
			$icon_tag = 'a';

			$this->add_link_attributes( 'link', $settings['link'] );
		}

		if ( $has_icon ) {
			$this->add_render_attribute( 'i', 'class', $settings['icon'] );
			$this->add_render_attribute( 'i', 'aria-hidden', 'true' );
		}

		$this->add_render_attribute( 'description_text', 'class', 'elementor-icon-box-description' );

		$this->add_inline_editing_attributes( 'title_text', 'none' );
		$this->add_inline_editing_attributes( 'description_text' );
		if ( ! $has_icon && ! empty( $settings['selected_icon']['value'] ) ) {
			$has_icon = true;
		}
		$migrated = isset( $settings['__fa4_migrated']['selected_icon'] );
		$is_new = ! isset( $settings['icon'] ) && Icons_Manager::is_migration_allowed();

		?>
		<div class="elementor-icon-box-wrapper">
			<?php if ( $has_icon ) : ?>
			<div class="elementor-icon-box-icon">
				<<?php Utils::print_validated_html_tag( $icon_tag ); ?> <?php $this->print_render_attribute_string( 'icon' ); ?> <?php $this->print_render_attribute_string( 'link' ); ?>>
				<?php
				if ( $is_new || $migrated ) {
					Icons_Manager::render_icon( $settings['selected_icon'], [ 'aria-hidden' => 'true' ] );
				} elseif ( ! empty( $settings['icon'] ) ) {
					?><i <?php $this->print_render_attribute_string( 'i' ); ?>></i><?php
				}
				?>
				</<?php Utils::print_validated_html_tag( $icon_tag ); ?>>
			</div>
			<?php endif; ?>
			<div class="elementor-icon-box-content">
				<<?php Utils::print_validated_html_tag( $settings['title_size'] ); ?> class="elementor-icon-box-title">
					<<?php Utils::print_validated_html_tag( $icon_tag ); ?> <?php $this->print_render_attribute_string( 'link' ); ?> <?php $this->print_render_attribute_string( 'title_text' ); ?>>
						<?php $this->print_unescaped_setting( 'title_text' ); ?>
					</<?php Utils::print_validated_html_tag( $icon_tag ); ?>>
				</<?php Utils::print_validated_html_tag( $settings['title_size'] ); ?>>
				<?php if ( ! Utils::is_empty( $settings['description_text'] ) ) : ?>
					<p <?php $this->print_render_attribute_string( 'description_text' ); ?>>
						<?php $this->print_unescaped_setting( 'description_text' ); ?>
					</p>
				<?php endif; ?>
			</div>
		</div>
		<?php
	}

	/**
	 * Render icon box widget output in the editor.
	 *
	 * Written as a Backbone JavaScript template and used to generate the live preview.
	 *
	 * @since 2.9.0
	 * @access protected
	 */
	protected function content_template() {
		?>
		<#
		var link = settings.link.url ? 'href="' + settings.link.url + '"' : '',
			iconTag = link ? 'a' : 'span',
			iconHTML = elementor.helpers.renderIcon( view, settings.selected_icon, { 'aria-hidden': true }, 'i' , 'object' ),
			migrated = elementor.helpers.isIconMigrated( settings, 'selected_icon' );

		view.addRenderAttribute( 'description_text', 'class', 'elementor-icon-box-description' );

		view.addInlineEditingAttributes( 'title_text', 'none' );
		view.addInlineEditingAttributes( 'description_text' );
		#>
		<div class="elementor-icon-box-wrapper">
			<?php // settings.icon is needed for older version ?>
			<# if ( settings.icon || settings.selected_icon.value ) { #>
			<div class="elementor-icon-box-icon">
				<{{{ iconTag + ' ' + link }}} class="elementor-icon elementor-animation-{{ settings.hover_animation }}">
					<# if ( iconHTML && iconHTML.rendered && ( ! settings.icon || migrated ) ) { #>
						{{{ iconHTML.value }}}
						<# } else { #>
							<i class="{{ settings.icon }}" aria-hidden="true"></i>
						<# } #>
				</{{{ iconTag }}}>
			</div>
			<# } #>
			<div class="elementor-icon-box-content">
				<# var titleSizeTag = elementor.helpers.validateHTMLTag( settings.title_size ); #>
				<{{{ titleSizeTag }}} class="elementor-icon-box-title">
					<{{{ iconTag + ' ' + link }}} {{{ view.getRenderAttributeString( 'title_text' ) }}}>{{{ settings.title_text }}}</{{{ iconTag }}}>
				</{{{ titleSizeTag }}}>
				<# if ( settings.description_text ) { #>
				<p {{{ view.getRenderAttributeString( 'description_text' ) }}}>{{{ settings.description_text }}}</p>
				<# } #>
			</div>
		</div>
		<?php
	}

	public function on_import( $element ) {
		return Icons_Manager::on_import_migration( $element, 'icon', 'selected_icon', true );
	}
}
includes/widgets/image-gallery.php000064400000022017151327220420013250 0ustar00<?php
namespace Elementor;

use Elementor\Core\Kits\Documents\Tabs\Global_Typography;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor image gallery widget.
 *
 * Elementor widget that displays a set of images in an aligned grid.
 *
 * @since 1.0.0
 */
class Widget_Image_Gallery extends Widget_Base {

	/**
	 * Get widget name.
	 *
	 * Retrieve image gallery widget name.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget name.
	 */
	public function get_name() {
		return 'image-gallery';
	}

	/**
	 * Get widget title.
	 *
	 * Retrieve image gallery widget title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget title.
	 */
	public function get_title() {
		return esc_html__( 'Basic Gallery', 'elementor' );
	}

	/**
	 * Get widget icon.
	 *
	 * Retrieve image gallery widget icon.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget icon.
	 */
	public function get_icon() {
		return 'eicon-gallery-grid';
	}

	/**
	 * Get widget keywords.
	 *
	 * Retrieve the list of keywords the widget belongs to.
	 *
	 * @since 2.1.0
	 * @access public
	 *
	 * @return array Widget keywords.
	 */
	public function get_keywords() {
		return [ 'image', 'photo', 'visual', 'gallery' ];
	}

	/**
	 * Register image gallery widget controls.
	 *
	 * Adds different input fields to allow the user to change and customize the widget settings.
	 *
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		$this->start_controls_section(
			'section_gallery',
			[
				'label' => esc_html__( 'Image Gallery', 'elementor' ),
			]
		);

		$this->add_control(
			'wp_gallery',
			[
				'label' => esc_html__( 'Add Images', 'elementor' ),
				'type' => Controls_Manager::GALLERY,
				'show_label' => false,
				'dynamic' => [
					'active' => true,
				],
			]
		);

		$this->add_group_control(
			Group_Control_Image_Size::get_type(),
			[
				'name' => 'thumbnail', // Usage: `{name}_size` and `{name}_custom_dimension`, in this case `thumbnail_size` and `thumbnail_custom_dimension`.
				'exclude' => [ 'custom' ],
				'separator' => 'none',
			]
		);

		$gallery_columns = range( 1, 10 );
		$gallery_columns = array_combine( $gallery_columns, $gallery_columns );

		$this->add_control(
			'gallery_columns',
			[
				'label' => esc_html__( 'Columns', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => 4,
				'options' => $gallery_columns,
			]
		);

		$this->add_control(
			'gallery_link',
			[
				'label' => esc_html__( 'Link', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => 'file',
				'options' => [
					'file' => esc_html__( 'Media File', 'elementor' ),
					'attachment' => esc_html__( 'Attachment Page', 'elementor' ),
					'none' => esc_html__( 'None', 'elementor' ),
				],
			]
		);

		$this->add_control(
			'open_lightbox',
			[
				'label' => esc_html__( 'Lightbox', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => 'default',
				'options' => [
					'default' => esc_html__( 'Default', 'elementor' ),
					'yes' => esc_html__( 'Yes', 'elementor' ),
					'no' => esc_html__( 'No', 'elementor' ),
				],
				'condition' => [
					'gallery_link' => 'file',
				],
			]
		);

		$this->add_control(
			'gallery_rand',
			[
				'label' => esc_html__( 'Order By', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'options' => [
					'' => esc_html__( 'Default', 'elementor' ),
					'rand' => esc_html__( 'Random', 'elementor' ),
				],
				'default' => '',
			]
		);

		$this->add_control(
			'view',
			[
				'label' => esc_html__( 'View', 'elementor' ),
				'type' => Controls_Manager::HIDDEN,
				'default' => 'traditional',
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_gallery_images',
			[
				'label' => esc_html__( 'Images', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->add_control(
			'image_spacing',
			[
				'label' => esc_html__( 'Spacing', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'options' => [
					'' => esc_html__( 'Default', 'elementor' ),
					'custom' => esc_html__( 'Custom', 'elementor' ),
				],
				'prefix_class' => 'gallery-spacing-',
				'default' => '',
			]
		);

		$columns_margin = is_rtl() ? '0 0 -{{SIZE}}{{UNIT}} -{{SIZE}}{{UNIT}};' : '0 -{{SIZE}}{{UNIT}} -{{SIZE}}{{UNIT}} 0;';
		$columns_padding = is_rtl() ? '0 0 {{SIZE}}{{UNIT}} {{SIZE}}{{UNIT}};' : '0 {{SIZE}}{{UNIT}} {{SIZE}}{{UNIT}} 0;';

		$this->add_control(
			'image_spacing_custom',
			[
				'label' => esc_html__( 'Image Spacing', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'show_label' => false,
				'range' => [
					'px' => [
						'max' => 100,
					],
				],
				'default' => [
					'size' => 15,
				],
				'selectors' => [
					'{{WRAPPER}} .gallery-item' => 'padding:' . $columns_padding,
					'{{WRAPPER}} .gallery' => 'margin: ' . $columns_margin,
				],
				'condition' => [
					'image_spacing' => 'custom',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Border::get_type(),
			[
				'name' => 'image_border',
				'selector' => '{{WRAPPER}} .gallery-item img',
				'separator' => 'before',
			]
		);

		$this->add_control(
			'image_border_radius',
			[
				'label' => esc_html__( 'Border Radius', 'elementor' ),
				'type' => Controls_Manager::DIMENSIONS,
				'size_units' => [ 'px', '%' ],
				'selectors' => [
					'{{WRAPPER}} .gallery-item img' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
				],
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_caption',
			[
				'label' => esc_html__( 'Caption', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->add_control(
			'gallery_display_caption',
			[
				'label' => esc_html__( 'Display', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => '',
				'options' => [
					'' => esc_html__( 'Show', 'elementor' ),
					'none' => esc_html__( 'Hide', 'elementor' ),
				],
				'selectors' => [
					'{{WRAPPER}} .gallery-item .gallery-caption' => 'display: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'align',
			[
				'label' => esc_html__( 'Alignment', 'elementor' ),
				'type' => Controls_Manager::CHOOSE,
				'options' => [
					'left' => [
						'title' => esc_html__( 'Left', 'elementor' ),
						'icon' => 'eicon-text-align-left',
					],
					'center' => [
						'title' => esc_html__( 'Center', 'elementor' ),
						'icon' => 'eicon-text-align-center',
					],
					'right' => [
						'title' => esc_html__( 'Right', 'elementor' ),
						'icon' => 'eicon-text-align-right',
					],
					'justify' => [
						'title' => esc_html__( 'Justified', 'elementor' ),
						'icon' => 'eicon-text-align-justify',
					],
				],
				'default' => 'center',
				'selectors' => [
					'{{WRAPPER}} .gallery-item .gallery-caption' => 'text-align: {{VALUE}};',
				],
				'condition' => [
					'gallery_display_caption' => '',
				],
			]
		);

		$this->add_control(
			'text_color',
			[
				'label' => esc_html__( 'Text Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'selectors' => [
					'{{WRAPPER}} .gallery-item .gallery-caption' => 'color: {{VALUE}};',
				],
				'condition' => [
					'gallery_display_caption' => '',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			[
				'name' => 'typography',
				'global' => [
					'default' => Global_Typography::TYPOGRAPHY_ACCENT,
				],
				'selector' => '{{WRAPPER}} .gallery-item .gallery-caption',
				'condition' => [
					'gallery_display_caption' => '',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Text_Shadow::get_type(),
			[
				'name' => 'caption_shadow',
				'selector' => '{{WRAPPER}} .gallery-item .gallery-caption',
			]
		);

		$this->end_controls_section();
	}

	/**
	 * Render image gallery widget output on the frontend.
	 *
	 * Written in PHP and used to generate the final HTML.
	 *
	 * @since 1.0.0
	 * @access protected
	 */
	protected function render() {
		$settings = $this->get_settings_for_display();

		if ( ! $settings['wp_gallery'] ) {
			return;
		}

		$ids = wp_list_pluck( $settings['wp_gallery'], 'id' );

		$this->add_render_attribute( 'shortcode', 'ids', implode( ',', $ids ) );
		$this->add_render_attribute( 'shortcode', 'size', $settings['thumbnail_size'] );

		if ( $settings['gallery_columns'] ) {
			$this->add_render_attribute( 'shortcode', 'columns', $settings['gallery_columns'] );
		}

		if ( $settings['gallery_link'] ) {
			$this->add_render_attribute( 'shortcode', 'link', $settings['gallery_link'] );
		}

		if ( ! empty( $settings['gallery_rand'] ) ) {
			$this->add_render_attribute( 'shortcode', 'orderby', $settings['gallery_rand'] );
		}
		?>
		<div class="elementor-image-gallery">
			<?php
			add_filter( 'wp_get_attachment_link', [ $this, 'add_lightbox_data_to_image_link' ], 10, 2 );

			echo do_shortcode( '[gallery ' . $this->get_render_attribute_string( 'shortcode' ) . ']' );

			remove_filter( 'wp_get_attachment_link', [ $this, 'add_lightbox_data_to_image_link' ] );
			?>
		</div>
		<?php
	}
}
includes/widgets/shortcode.php000064400000006153151327220420012526 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor shortcode widget.
 *
 * Elementor widget that insert any shortcodes into the page.
 *
 * @since 1.0.0
 */
class Widget_Shortcode extends Widget_Base {

	/**
	 * Get widget name.
	 *
	 * Retrieve shortcode widget name.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget name.
	 */
	public function get_name() {
		return 'shortcode';
	}

	/**
	 * Get widget title.
	 *
	 * Retrieve shortcode widget title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget title.
	 */
	public function get_title() {
		return esc_html__( 'Shortcode', 'elementor' );
	}

	/**
	 * Get widget icon.
	 *
	 * Retrieve shortcode widget icon.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget icon.
	 */
	public function get_icon() {
		return 'eicon-shortcode';
	}

	/**
	 * Get widget keywords.
	 *
	 * Retrieve the list of keywords the widget belongs to.
	 *
	 * @since 2.1.0
	 * @access public
	 *
	 * @return array Widget keywords.
	 */
	public function get_keywords() {
		return [ 'shortcode', 'code' ];
	}

	/**
	 * Whether the reload preview is required or not.
	 *
	 * Used to determine whether the reload preview is required.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return bool Whether the reload preview is required.
	 */
	public function is_reload_preview_required() {
		return true;
	}

	/**
	 * Register shortcode widget controls.
	 *
	 * Adds different input fields to allow the user to change and customize the widget settings.
	 *
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		$this->start_controls_section(
			'section_shortcode',
			[
				'label' => esc_html__( 'Shortcode', 'elementor' ),
			]
		);

		$this->add_control(
			'shortcode',
			[
				'label' => esc_html__( 'Enter your shortcode', 'elementor' ),
				'type' => Controls_Manager::TEXTAREA,
				'dynamic' => [
					'active' => true,
				],
				'placeholder' => '[gallery id="123" size="medium"]',
				'default' => '',
			]
		);

		$this->end_controls_section();
	}

	/**
	 * Render shortcode widget output on the frontend.
	 *
	 * Written in PHP and used to generate the final HTML.
	 *
	 * @since 1.0.0
	 * @access protected
	 */
	protected function render() {
		$shortcode = $this->get_settings_for_display( 'shortcode' );

		$shortcode = do_shortcode( shortcode_unautop( $shortcode ) );
		?>
		<div class="elementor-shortcode"><?php echo $shortcode; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?></div>
		<?php
	}

	/**
	 * Render shortcode widget as plain content.
	 *
	 * Override the default behavior by printing the shortcode instead of rendering it.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function render_plain_content() {
		// In plain mode, render without shortcode
		$this->print_unescaped_setting( 'shortcode' );
	}

	/**
	 * Render shortcode widget output in the editor.
	 *
	 * Written as a Backbone JavaScript template and used to generate the live preview.
	 *
	 * @since 2.9.0
	 * @access protected
	 */
	protected function content_template() {}
}
includes/widgets/video.php000064400000066442151327220420011651 0ustar00<?php
namespace Elementor;

use Elementor\Modules\DynamicTags\Module as TagsModule;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor video widget.
 *
 * Elementor widget that displays a video player.
 *
 * @since 1.0.0
 */
class Widget_Video extends Widget_Base {

	/**
	 * Get widget name.
	 *
	 * Retrieve video widget name.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget name.
	 */
	public function get_name() {
		return 'video';
	}

	/**
	 * Get widget title.
	 *
	 * Retrieve video widget title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget title.
	 */
	public function get_title() {
		return esc_html__( 'Video', 'elementor' );
	}

	/**
	 * Get widget icon.
	 *
	 * Retrieve video widget icon.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget icon.
	 */
	public function get_icon() {
		return 'eicon-youtube';
	}

	/**
	 * Get widget categories.
	 *
	 * Retrieve the list of categories the video widget belongs to.
	 *
	 * Used to determine where to display the widget in the editor.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @return array Widget categories.
	 */
	public function get_categories() {
		return [ 'basic' ];
	}

	/**
	 * Get widget keywords.
	 *
	 * Retrieve the list of keywords the widget belongs to.
	 *
	 * @since 2.1.0
	 * @access public
	 *
	 * @return array Widget keywords.
	 */
	public function get_keywords() {
		return [ 'video', 'player', 'embed', 'youtube', 'vimeo', 'dailymotion' ];
	}

	/**
	 * Register video widget controls.
	 *
	 * Adds different input fields to allow the user to change and customize the widget settings.
	 *
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		$this->start_controls_section(
			'section_video',
			[
				'label' => esc_html__( 'Video', 'elementor' ),
			]
		);

		$this->add_control(
			'video_type',
			[
				'label' => esc_html__( 'Source', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => 'youtube',
				'options' => [
					'youtube' => esc_html__( 'YouTube', 'elementor' ),
					'vimeo' => esc_html__( 'Vimeo', 'elementor' ),
					'dailymotion' => esc_html__( 'Dailymotion', 'elementor' ),
					'hosted' => esc_html__( 'Self Hosted', 'elementor' ),
				],
				'frontend_available' => true,
			]
		);

		$this->add_control(
			'youtube_url',
			[
				'label' => esc_html__( 'Link', 'elementor' ),
				'type' => Controls_Manager::TEXT,
				'dynamic' => [
					'active' => true,
					'categories' => [
						TagsModule::POST_META_CATEGORY,
						TagsModule::URL_CATEGORY,
					],
				],
				'placeholder' => esc_html__( 'Enter your URL', 'elementor' ) . ' (YouTube)',
				'default' => 'https://www.youtube.com/watch?v=XHOmBV4js_E',
				'label_block' => true,
				'condition' => [
					'video_type' => 'youtube',
				],
				'frontend_available' => true,
			]
		);

		$this->add_control(
			'vimeo_url',
			[
				'label' => esc_html__( 'Link', 'elementor' ),
				'type' => Controls_Manager::TEXT,
				'dynamic' => [
					'active' => true,
					'categories' => [
						TagsModule::POST_META_CATEGORY,
						TagsModule::URL_CATEGORY,
					],
				],
				'placeholder' => esc_html__( 'Enter your URL', 'elementor' ) . ' (Vimeo)',
				'default' => 'https://vimeo.com/235215203',
				'label_block' => true,
				'condition' => [
					'video_type' => 'vimeo',
				],
			]
		);

		$this->add_control(
			'dailymotion_url',
			[
				'label' => esc_html__( 'Link', 'elementor' ),
				'type' => Controls_Manager::TEXT,
				'dynamic' => [
					'active' => true,
					'categories' => [
						TagsModule::POST_META_CATEGORY,
						TagsModule::URL_CATEGORY,
					],
				],
				'placeholder' => esc_html__( 'Enter your URL', 'elementor' ) . ' (Dailymotion)',
				'default' => 'https://www.dailymotion.com/video/x6tqhqb',
				'label_block' => true,
				'condition' => [
					'video_type' => 'dailymotion',
				],
			]
		);

		$this->add_control(
			'insert_url',
			[
				'label' => esc_html__( 'External URL', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'condition' => [
					'video_type' => 'hosted',
				],
			]
		);

		$this->add_control(
			'hosted_url',
			[
				'label' => esc_html__( 'Choose File', 'elementor' ),
				'type' => Controls_Manager::MEDIA,
				'dynamic' => [
					'active' => true,
					'categories' => [
						TagsModule::MEDIA_CATEGORY,
					],
				],
				'media_type' => 'video',
				'condition' => [
					'video_type' => 'hosted',
					'insert_url' => '',
				],
			]
		);

		$this->add_control(
			'external_url',
			[
				'label' => esc_html__( 'URL', 'elementor' ),
				'type' => Controls_Manager::URL,
				'autocomplete' => false,
				'options' => false,
				'label_block' => true,
				'show_label' => false,
				'dynamic' => [
					'active' => true,
					'categories' => [
						TagsModule::POST_META_CATEGORY,
						TagsModule::URL_CATEGORY,
					],
				],
				'media_type' => 'video',
				'placeholder' => esc_html__( 'Enter your URL', 'elementor' ),
				'condition' => [
					'video_type' => 'hosted',
					'insert_url' => 'yes',
				],
			]
		);

		$this->add_control(
			'start',
			[
				'label' => esc_html__( 'Start Time', 'elementor' ),
				'type' => Controls_Manager::NUMBER,
				'description' => esc_html__( 'Specify a start time (in seconds)', 'elementor' ),
				'frontend_available' => true,
			]
		);

		$this->add_control(
			'end',
			[
				'label' => esc_html__( 'End Time', 'elementor' ),
				'type' => Controls_Manager::NUMBER,
				'description' => esc_html__( 'Specify an end time (in seconds)', 'elementor' ),
				'condition' => [
					'video_type' => [ 'youtube', 'hosted' ],
				],
				'frontend_available' => true,
			]
		);

		$this->add_control(
			'video_options',
			[
				'label' => esc_html__( 'Video Options', 'elementor' ),
				'type' => Controls_Manager::HEADING,
				'separator' => 'before',
			]
		);

		$this->add_control(
			'autoplay',
			[
				'label' => esc_html__( 'Autoplay', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'frontend_available' => true,
				'conditions' => [
					'relation' => 'or',
					'terms' => [
						[
							'name' => 'show_image_overlay',
							'value' => '',
						],
						[
							'name' => 'image_overlay[url]',
							'value' => '',
						],
					],
				],
			]
		);

		$this->add_control(
			'play_on_mobile',
			[
				'label' => esc_html__( 'Play On Mobile', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'condition' => [
					'autoplay' => 'yes',
				],
				'frontend_available' => true,
			]
		);

		$this->add_control(
			'mute',
			[
				'label' => esc_html__( 'Mute', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'frontend_available' => true,
			]
		);

		$this->add_control(
			'loop',
			[
				'label' => esc_html__( 'Loop', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'condition' => [
					'video_type!' => 'dailymotion',
				],
				'frontend_available' => true,
			]
		);

		$this->add_control(
			'controls',
			[
				'label' => esc_html__( 'Player Controls', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'label_off' => esc_html__( 'Hide', 'elementor' ),
				'label_on' => esc_html__( 'Show', 'elementor' ),
				'default' => 'yes',
				'condition' => [
					'video_type!' => 'vimeo',
				],
				'frontend_available' => true,
			]
		);

		$this->add_control(
			'showinfo',
			[
				'label' => esc_html__( 'Video Info', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'label_off' => esc_html__( 'Hide', 'elementor' ),
				'label_on' => esc_html__( 'Show', 'elementor' ),
				'default' => 'yes',
				'condition' => [
					'video_type' => [ 'dailymotion' ],
				],
			]
		);

		$this->add_control(
			'modestbranding',
			[
				'label' => esc_html__( 'Modest Branding', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'condition' => [
					'video_type' => [ 'youtube' ],
					'controls' => 'yes',
				],
				'frontend_available' => true,
			]
		);

		$this->add_control(
			'logo',
			[
				'label' => esc_html__( 'Logo', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'label_off' => esc_html__( 'Hide', 'elementor' ),
				'label_on' => esc_html__( 'Show', 'elementor' ),
				'default' => 'yes',
				'condition' => [
					'video_type' => [ 'dailymotion' ],
				],
			]
		);

		// YouTube.
		$this->add_control(
			'yt_privacy',
			[
				'label' => esc_html__( 'Privacy Mode', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'description' => esc_html__( 'When you turn on privacy mode, YouTube won\'t store information about visitors on your website unless they play the video.', 'elementor' ),
				'condition' => [
					'video_type' => 'youtube',
				],
				'frontend_available' => true,
			]
		);

		$this->add_control(
			'lazy_load',
			[
				'label' => esc_html__( 'Lazy Load', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'conditions' => [
					'relation' => 'or',
					'terms' => [
						[
							'name' => 'video_type',
							'operator' => '===',
							'value' => 'youtube',
						],
						[
							'relation' => 'and',
							'terms' => [
								[
									'name' => 'show_image_overlay',
									'operator' => '===',
									'value' => 'yes',
								],
								[
									'name' => 'video_type',
									'operator' => '!==',
									'value' => 'hosted',
								],
							],
						],
					],
				],
				'frontend_available' => true,
			]
		);

		$this->add_control(
			'rel',
			[
				'label' => esc_html__( 'Suggested Videos', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'options' => [
					'' => esc_html__( 'Current Video Channel', 'elementor' ),
					'yes' => esc_html__( 'Any Video', 'elementor' ),
				],
				'condition' => [
					'video_type' => 'youtube',
				],
			]
		);

		// Vimeo.
		$this->add_control(
			'vimeo_title',
			[
				'label' => esc_html__( 'Intro Title', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'label_off' => esc_html__( 'Hide', 'elementor' ),
				'label_on' => esc_html__( 'Show', 'elementor' ),
				'default' => 'yes',
				'condition' => [
					'video_type' => 'vimeo',
				],
			]
		);

		$this->add_control(
			'vimeo_portrait',
			[
				'label' => esc_html__( 'Intro Portrait', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'label_off' => esc_html__( 'Hide', 'elementor' ),
				'label_on' => esc_html__( 'Show', 'elementor' ),
				'default' => 'yes',
				'condition' => [
					'video_type' => 'vimeo',
				],
			]
		);

		$this->add_control(
			'vimeo_byline',
			[
				'label' => esc_html__( 'Intro Byline', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'label_off' => esc_html__( 'Hide', 'elementor' ),
				'label_on' => esc_html__( 'Show', 'elementor' ),
				'default' => 'yes',
				'condition' => [
					'video_type' => 'vimeo',
				],
			]
		);

		$this->add_control(
			'color',
			[
				'label' => esc_html__( 'Controls Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'condition' => [
					'video_type' => [ 'vimeo', 'dailymotion' ],
				],
			]
		);

		$this->add_control(
			'download_button',
			[
				'label' => esc_html__( 'Download Button', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'label_off' => esc_html__( 'Hide', 'elementor' ),
				'label_on' => esc_html__( 'Show', 'elementor' ),
				'condition' => [
					'video_type' => 'hosted',
				],
			]
		);

		$this->add_control(
			'poster',
			[
				'label' => esc_html__( 'Poster', 'elementor' ),
				'type' => Controls_Manager::MEDIA,
				'dynamic' => [
					'active' => true,
				],
				'condition' => [
					'video_type' => 'hosted',
				],
			]
		);

		$this->add_control(
			'view',
			[
				'label' => esc_html__( 'View', 'elementor' ),
				'type' => Controls_Manager::HIDDEN,
				'default' => 'youtube',
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_image_overlay',
			[
				'label' => esc_html__( 'Image Overlay', 'elementor' ),
			]
		);

		$this->add_control(
			'show_image_overlay',
			[
				'label' => esc_html__( 'Image Overlay', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'label_off' => esc_html__( 'Hide', 'elementor' ),
				'label_on' => esc_html__( 'Show', 'elementor' ),
				'frontend_available' => true,
			]
		);

		$this->add_control(
			'image_overlay',
			[
				'label' => esc_html__( 'Choose Image', 'elementor' ),
				'type' => Controls_Manager::MEDIA,
				'default' => [
					'url' => Utils::get_placeholder_image_src(),
				],
				'dynamic' => [
					'active' => true,
				],
				'condition' => [
					'show_image_overlay' => 'yes',
				],
				'frontend_available' => true,
			]
		);

		$this->add_group_control(
			Group_Control_Image_Size::get_type(),
			[
				'name' => 'image_overlay', // Usage: `{name}_size` and `{name}_custom_dimension`, in this case `image_overlay_size` and `image_overlay_custom_dimension`.
				'default' => 'full',
				'separator' => 'none',
				'condition' => [
					'show_image_overlay' => 'yes',
				],
			]
		);

		$this->add_control(
			'show_play_icon',
			[
				'label' => esc_html__( 'Play Icon', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'default' => 'yes',
				'condition' => [
					'show_image_overlay' => 'yes',
					'image_overlay[url]!' => '',
				],
			]
		);

		$this->add_control(
			'lightbox',
			[
				'label' => esc_html__( 'Lightbox', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'frontend_available' => true,
				'label_off' => esc_html__( 'Off', 'elementor' ),
				'label_on' => esc_html__( 'On', 'elementor' ),
				'condition' => [
					'show_image_overlay' => 'yes',
					'image_overlay[url]!' => '',
				],
				'separator' => 'before',
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_video_style',
			[
				'label' => esc_html__( 'Video', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->add_control(
			'aspect_ratio',
			[
				'label' => esc_html__( 'Aspect Ratio', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'options' => [
					'169' => '16:9',
					'219' => '21:9',
					'43' => '4:3',
					'32' => '3:2',
					'11' => '1:1',
					'916' => '9:16',
				],
				'default' => '169',
				'prefix_class' => 'elementor-aspect-ratio-',
				'frontend_available' => true,
			]
		);

		$this->add_group_control(
			Group_Control_Css_Filter::get_type(),
			[
				'name' => 'css_filters',
				'selector' => '{{WRAPPER}} .elementor-wrapper',
			]
		);

		$this->add_control(
			'play_icon_title',
			[
				'label' => esc_html__( 'Play Icon', 'elementor' ),
				'type' => Controls_Manager::HEADING,
				'condition' => [
					'show_image_overlay' => 'yes',
					'show_play_icon' => 'yes',
				],
				'separator' => 'before',
			]
		);

		$this->add_control(
			'play_icon_color',
			[
				'label' => esc_html__( 'Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'{{WRAPPER}} .elementor-custom-embed-play i' => 'color: {{VALUE}}',
				],
				'condition' => [
					'show_image_overlay' => 'yes',
					'show_play_icon' => 'yes',
				],
			]
		);

		$this->add_responsive_control(
			'play_icon_size',
			[
				'label' => esc_html__( 'Size', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'min' => 10,
						'max' => 300,
					],
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-custom-embed-play i' => 'font-size: {{SIZE}}{{UNIT}}',
				],
				'condition' => [
					'show_image_overlay' => 'yes',
					'show_play_icon' => 'yes',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Text_Shadow::get_type(),
			[
				'name' => 'play_icon_text_shadow',
				'selector' => '{{WRAPPER}} .elementor-custom-embed-play i',
				'fields_options' => [
					'text_shadow_type' => [
						'label' => _x( 'Shadow', 'Text Shadow Control', 'elementor' ),
					],
				],
				'condition' => [
					'show_image_overlay' => 'yes',
					'show_play_icon' => 'yes',
				],
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_lightbox_style',
			[
				'label' => esc_html__( 'Lightbox', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
				'condition' => [
					'show_image_overlay' => 'yes',
					'image_overlay[url]!' => '',
					'lightbox' => 'yes',
				],
			]
		);

		$this->add_control(
			'lightbox_color',
			[
				'label' => esc_html__( 'Background Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'#elementor-lightbox-{{ID}}' => 'background-color: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'lightbox_ui_color',
			[
				'label' => esc_html__( 'UI Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'#elementor-lightbox-{{ID}} .dialog-lightbox-close-button' => 'color: {{VALUE}}',
				],
			]
		);

		$this->add_control(
			'lightbox_ui_color_hover',
			[
				'label' => esc_html__( 'UI Hover Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'#elementor-lightbox-{{ID}} .dialog-lightbox-close-button:hover' => 'color: {{VALUE}}',
				],
				'separator' => 'after',
			]
		);

		$this->add_control(
			'lightbox_video_width',
			[
				'label' => esc_html__( 'Content Width', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'default' => [
					'unit' => '%',
				],
				'range' => [
					'%' => [
						'min' => 30,
					],
				],
				'selectors' => [
					'(desktop+)#elementor-lightbox-{{ID}} .elementor-video-container' => 'width: {{SIZE}}{{UNIT}};',
				],
			]
		);

		$this->add_control(
			'lightbox_content_position',
			[
				'label' => esc_html__( 'Content Position', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'frontend_available' => true,
				'options' => [
					'' => esc_html__( 'Center', 'elementor' ),
					'top' => esc_html__( 'Top', 'elementor' ),
				],
				'selectors' => [
					'#elementor-lightbox-{{ID}} .elementor-video-container' => '{{VALUE}}; transform: translateX(-50%);',
				],
				'selectors_dictionary' => [
					'top' => 'top: 60px',
				],
			]
		);

		$this->add_responsive_control(
			'lightbox_content_animation',
			[
				'label' => esc_html__( 'Entrance Animation', 'elementor' ),
				'type' => Controls_Manager::ANIMATION,
				'frontend_available' => true,
			]
		);

		$this->end_controls_section();
	}

	/**
	 * Render video widget output on the frontend.
	 *
	 * Written in PHP and used to generate the final HTML.
	 *
	 * @since 1.0.0
	 * @access protected
	 */
	protected function render() {
		$settings = $this->get_settings_for_display();

		$video_url = $settings[ $settings['video_type'] . '_url' ];

		if ( 'hosted' === $settings['video_type'] ) {
			$video_url = $this->get_hosted_video_url();
		} else {
			$embed_params = $this->get_embed_params();
			$embed_options = $this->get_embed_options();
		}

		if ( empty( $video_url ) ) {
			return;
		}

		if ( 'youtube' === $settings['video_type'] ) {
			$video_html = '<div class="elementor-video"></div>';
		}

		if ( 'hosted' === $settings['video_type'] ) {
			$this->add_render_attribute( 'video-wrapper', 'class', 'e-hosted-video' );

			ob_start();

			$this->render_hosted_video();

			$video_html = ob_get_clean();
		} else {
			$is_static_render_mode = Plugin::$instance->frontend->is_static_render_mode();
			$post_id = get_queried_object_id();

			if ( $is_static_render_mode ) {
				$video_html = Embed::get_embed_thumbnail_html( $video_url, $post_id );
				// YouTube API requires a different markup which was set above.
			} else if ( 'youtube' !== $settings['video_type'] ) {
				$video_html = Embed::get_embed_html( $video_url, $embed_params, $embed_options );
			}
		}

		if ( empty( $video_html ) ) {
			echo esc_url( $video_url );

			return;
		}

		$this->add_render_attribute( 'video-wrapper', 'class', 'elementor-wrapper' );

		if ( ! $settings['lightbox'] ) {
			$this->add_render_attribute( 'video-wrapper', 'class', 'elementor-fit-aspect-ratio' );
		}

		$this->add_render_attribute( 'video-wrapper', 'class', 'elementor-open-' . ( $settings['lightbox'] ? 'lightbox' : 'inline' ) );
		?>
		<div <?php $this->print_render_attribute_string( 'video-wrapper' ); ?>>
			<?php
			if ( ! $settings['lightbox'] ) {
				Utils::print_unescaped_internal_string( $video_html ); // XSS ok.
			}

			if ( $this->has_image_overlay() ) {
				$this->add_render_attribute( 'image-overlay', 'class', 'elementor-custom-embed-image-overlay' );

				if ( $settings['lightbox'] ) {
					if ( 'hosted' === $settings['video_type'] ) {
						$lightbox_url = $video_url;
					} else {
						$lightbox_url = Embed::get_embed_url( $video_url, $embed_params, $embed_options );
					}

					$lightbox_options = [
						'type' => 'video',
						'videoType' => $settings['video_type'],
						'url' => $lightbox_url,
						'modalOptions' => [
							'id' => 'elementor-lightbox-' . $this->get_id(),
							'entranceAnimation' => $settings['lightbox_content_animation'],
							'entranceAnimation_tablet' => $settings['lightbox_content_animation_tablet'],
							'entranceAnimation_mobile' => $settings['lightbox_content_animation_mobile'],
							'videoAspectRatio' => $settings['aspect_ratio'],
						],
					];

					if ( 'hosted' === $settings['video_type'] ) {
						$lightbox_options['videoParams'] = $this->get_hosted_params();
					}

					$this->add_render_attribute( 'image-overlay', [
						'data-elementor-open-lightbox' => 'yes',
						'data-elementor-lightbox' => wp_json_encode( $lightbox_options ),
					] );

					if ( Plugin::$instance->editor->is_edit_mode() ) {
						$this->add_render_attribute( 'image-overlay', [
							'class' => 'elementor-clickable',
						] );
					}
				} else {
					// When there is an image URL but no ID, it means the overlay image is the placeholder. In this case, get the placeholder URL.
					if ( empty( $settings['image_overlay']['id'] && ! empty( $settings['image_overlay']['url'] ) ) ) {
						$image_url = $settings['image_overlay']['url'];
					} else {
						$image_url = Group_Control_Image_Size::get_attachment_image_src( $settings['image_overlay']['id'], 'image_overlay', $settings );
					}

					$this->add_render_attribute( 'image-overlay', 'style', 'background-image: url(' . $image_url . ');' );
				}
				?>
				<div <?php $this->print_render_attribute_string( 'image-overlay' ); ?>>
					<?php if ( $settings['lightbox'] ) : ?>
						<?php Group_Control_Image_Size::print_attachment_image_html( $settings, 'image_overlay' ); ?>
					<?php endif; ?>
					<?php if ( 'yes' === $settings['show_play_icon'] ) : ?>
						<div class="elementor-custom-embed-play" role="button">
							<i class="eicon-play" aria-hidden="true"></i>
							<span class="elementor-screen-only"><?php echo esc_html__( 'Play Video', 'elementor' ); ?></span>
						</div>
					<?php endif; ?>
				</div>
			<?php } ?>
		</div>
		<?php
	}

	/**
	 * Render video widget as plain content.
	 *
	 * Override the default behavior, by printing the video URL insted of rendering it.
	 *
	 * @since 1.4.5
	 * @access public
	 */
	public function render_plain_content() {
		$settings = $this->get_settings_for_display();

		if ( 'hosted' !== $settings['video_type'] ) {
			$url = $settings[ $settings['video_type'] . '_url' ];
		} else {
			$url = $this->get_hosted_video_url();
		}

		echo esc_url( $url );
	}

	/**
	 * Get embed params.
	 *
	 * Retrieve video widget embed parameters.
	 *
	 * @since 1.5.0
	 * @access public
	 *
	 * @return array Video embed parameters.
	 */
	public function get_embed_params() {
		$settings = $this->get_settings_for_display();

		$params = [];

		if ( $settings['autoplay'] && ! $this->has_image_overlay() ) {
			$params['autoplay'] = '1';

			if ( $settings['play_on_mobile'] ) {
				$params['playsinline'] = '1';
			}
		}

		$params_dictionary = [];

		if ( 'youtube' === $settings['video_type'] ) {
			$params_dictionary = [
				'loop',
				'controls',
				'mute',
				'rel',
				'modestbranding',
			];

			if ( $settings['loop'] ) {
				$video_properties = Embed::get_video_properties( $settings['youtube_url'] );

				$params['playlist'] = $video_properties['video_id'];
			}

			$params['start'] = $settings['start'];

			$params['end'] = $settings['end'];

			$params['wmode'] = 'opaque';
		} elseif ( 'vimeo' === $settings['video_type'] ) {
			$params_dictionary = [
				'loop',
				'mute' => 'muted',
				'vimeo_title' => 'title',
				'vimeo_portrait' => 'portrait',
				'vimeo_byline' => 'byline',
			];

			$params['color'] = str_replace( '#', '', $settings['color'] );

			$params['autopause'] = '0';
		} elseif ( 'dailymotion' === $settings['video_type'] ) {
			$params_dictionary = [
				'controls',
				'mute',
				'showinfo' => 'ui-start-screen-info',
				'logo' => 'ui-logo',
			];

			$params['ui-highlight'] = str_replace( '#', '', $settings['color'] );

			$params['start'] = $settings['start'];

			$params['endscreen-enable'] = '0';
		}

		foreach ( $params_dictionary as $key => $param_name ) {
			$setting_name = $param_name;

			if ( is_string( $key ) ) {
				$setting_name = $key;
			}

			$setting_value = $settings[ $setting_name ] ? '1' : '0';

			$params[ $param_name ] = $setting_value;
		}

		return $params;
	}

	/**
	 * Whether the video widget has an overlay image or not.
	 *
	 * Used to determine whether an overlay image was set for the video.
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @return bool Whether an image overlay was set for the video.
	 */
	protected function has_image_overlay() {
		$settings = $this->get_settings_for_display();

		return ! empty( $settings['image_overlay']['url'] ) && 'yes' === $settings['show_image_overlay'];
	}

	/**
	 * @since 2.1.0
	 * @access private
	 */
	private function get_embed_options() {
		$settings = $this->get_settings_for_display();

		$embed_options = [];

		if ( 'youtube' === $settings['video_type'] ) {
			$embed_options['privacy'] = $settings['yt_privacy'];
		} elseif ( 'vimeo' === $settings['video_type'] ) {
			$embed_options['start'] = $settings['start'];
		}

		$embed_options['lazy_load'] = ! empty( $settings['lazy_load'] );

		return $embed_options;
	}

	/**
	 * @since 2.1.0
	 * @access private
	 */
	private function get_hosted_params() {
		$settings = $this->get_settings_for_display();

		$video_params = [];

		foreach ( [ 'autoplay', 'loop', 'controls' ] as $option_name ) {
			if ( $settings[ $option_name ] ) {
				$video_params[ $option_name ] = '';
			}
		}

		if ( $settings['mute'] ) {
			$video_params['muted'] = 'muted';
		}

		if ( $settings['play_on_mobile'] ) {
			$video_params['playsinline'] = '';
		}

		if ( ! $settings['download_button'] ) {
			$video_params['controlsList'] = 'nodownload';
		}

		if ( $settings['poster']['url'] ) {
			$video_params['poster'] = $settings['poster']['url'];
		}

		return $video_params;
	}

	/**
	 * @param bool $from_media
	 *
	 * @return string
	 * @since 2.1.0
	 * @access private
	 */
	private function get_hosted_video_url() {
		$settings = $this->get_settings_for_display();

		if ( ! empty( $settings['insert_url'] ) ) {
			$video_url = $settings['external_url']['url'];
		} else {
			$video_url = $settings['hosted_url']['url'];
		}

		if ( empty( $video_url ) ) {
			return '';
		}

		if ( $settings['start'] || $settings['end'] ) {
			$video_url .= '#t=';
		}

		if ( $settings['start'] ) {
			$video_url .= $settings['start'];
		}

		if ( $settings['end'] ) {
			$video_url .= ',' . $settings['end'];
		}

		return $video_url;
	}

	/**
	 *
	 * @since 2.1.0
	 * @access private
	 */
	private function render_hosted_video() {
		$video_url = $this->get_hosted_video_url();
		if ( empty( $video_url ) ) {
			return;
		}

		$video_params = $this->get_hosted_params();
		?>
		<video class="elementor-video" src="<?php echo esc_url( $video_url ); ?>" <?php Utils::print_html_attributes( $video_params ); ?>></video>
		<?php
	}
}
includes/widgets/social-icons.php000064400000036601151327220420013120 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor social icons widget.
 *
 * Elementor widget that displays icons to social pages like Facebook and Twitter.
 *
 * @since 1.0.0
 */
class Widget_Social_Icons extends Widget_Base {

	/**
	 * Get widget name.
	 *
	 * Retrieve social icons widget name.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget name.
	 */
	public function get_name() {
		return 'social-icons';
	}

	/**
	 * Get widget title.
	 *
	 * Retrieve social icons widget title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget title.
	 */
	public function get_title() {
		return esc_html__( 'Social Icons', 'elementor' );
	}

	/**
	 * Get widget icon.
	 *
	 * Retrieve social icons widget icon.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget icon.
	 */
	public function get_icon() {
		return 'eicon-social-icons';
	}

	/**
	 * Get widget keywords.
	 *
	 * Retrieve the list of keywords the widget belongs to.
	 *
	 * @since 2.1.0
	 * @access public
	 *
	 * @return array Widget keywords.
	 */
	public function get_keywords() {
		return [ 'social', 'icon', 'link' ];
	}

	/**
	 * Register social icons widget controls.
	 *
	 * Adds different input fields to allow the user to change and customize the widget settings.
	 *
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		$this->start_controls_section(
			'section_social_icon',
			[
				'label' => esc_html__( 'Social Icons', 'elementor' ),
			]
		);

		$repeater = new Repeater();

		$repeater->add_control(
			'social_icon',
			[
				'label' => esc_html__( 'Icon', 'elementor' ),
				'type' => Controls_Manager::ICONS,
				'fa4compatibility' => 'social',
				'default' => [
					'value' => 'fab fa-wordpress',
					'library' => 'fa-brands',
				],
				'recommended' => [
					'fa-brands' => [
						'android',
						'apple',
						'behance',
						'bitbucket',
						'codepen',
						'delicious',
						'deviantart',
						'digg',
						'dribbble',
						'elementor',
						'facebook',
						'flickr',
						'foursquare',
						'free-code-camp',
						'github',
						'gitlab',
						'globe',
						'houzz',
						'instagram',
						'jsfiddle',
						'linkedin',
						'medium',
						'meetup',
						'mix',
						'mixcloud',
						'odnoklassniki',
						'pinterest',
						'product-hunt',
						'reddit',
						'shopping-cart',
						'skype',
						'slideshare',
						'snapchat',
						'soundcloud',
						'spotify',
						'stack-overflow',
						'steam',
						'telegram',
						'thumb-tack',
						'tripadvisor',
						'tumblr',
						'twitch',
						'twitter',
						'viber',
						'vimeo',
						'vk',
						'weibo',
						'weixin',
						'whatsapp',
						'wordpress',
						'xing',
						'yelp',
						'youtube',
						'500px',
					],
					'fa-solid' => [
						'envelope',
						'link',
						'rss',
					],
				],
			]
		);

		$repeater->add_control(
			'link',
			[
				'label' => esc_html__( 'Link', 'elementor' ),
				'type' => Controls_Manager::URL,
				'default' => [
					'is_external' => 'true',
				],
				'dynamic' => [
					'active' => true,
				],
				'placeholder' => esc_html__( 'https://your-link.com', 'elementor' ),
			]
		);

		$repeater->add_control(
			'item_icon_color',
			[
				'label' => esc_html__( 'Color', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => 'default',
				'options' => [
					'default' => esc_html__( 'Official Color', 'elementor' ),
					'custom' => esc_html__( 'Custom', 'elementor' ),
				],
			]
		);

		$repeater->add_control(
			'item_icon_primary_color',
			[
				'label' => esc_html__( 'Primary Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'condition' => [
					'item_icon_color' => 'custom',
				],
				'selectors' => [
					'{{WRAPPER}} {{CURRENT_ITEM}}.elementor-social-icon' => 'background-color: {{VALUE}};',
				],
			]
		);

		$repeater->add_control(
			'item_icon_secondary_color',
			[
				'label' => esc_html__( 'Secondary Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'condition' => [
					'item_icon_color' => 'custom',
				],
				'selectors' => [
					'{{WRAPPER}} {{CURRENT_ITEM}}.elementor-social-icon i' => 'color: {{VALUE}};',
					'{{WRAPPER}} {{CURRENT_ITEM}}.elementor-social-icon svg' => 'fill: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'social_icon_list',
			[
				'label' => esc_html__( 'Social Icons', 'elementor' ),
				'type' => Controls_Manager::REPEATER,
				'fields' => $repeater->get_controls(),
				'default' => [
					[
						'social_icon' => [
							'value' => 'fab fa-facebook',
							'library' => 'fa-brands',
						],
					],
					[
						'social_icon' => [
							'value' => 'fab fa-twitter',
							'library' => 'fa-brands',
						],
					],
					[
						'social_icon' => [
							'value' => 'fab fa-youtube',
							'library' => 'fa-brands',
						],
					],
				],
				'title_field' => '<# var migrated = "undefined" !== typeof __fa4_migrated, social = ( "undefined" === typeof social ) ? false : social; #>{{{ elementor.helpers.getSocialNetworkNameFromIcon( social_icon, social, true, migrated, true ) }}}',
			]
		);

		$this->add_control(
			'shape',
			[
				'label' => esc_html__( 'Shape', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => 'rounded',
				'options' => [
					'rounded' => esc_html__( 'Rounded', 'elementor' ),
					'square' => esc_html__( 'Square', 'elementor' ),
					'circle' => esc_html__( 'Circle', 'elementor' ),
				],
				'prefix_class' => 'elementor-shape-',
			]
		);

		$this->add_responsive_control(
			'columns',
			[
				'label' => esc_html__( 'Columns', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => '0',
				'options' => [
					'0' => esc_html__( 'Auto', 'elementor' ),
					'1' => '1',
					'2' => '2',
					'3' => '3',
					'4' => '4',
					'5' => '5',
					'6' => '6',
				],
				'prefix_class' => 'elementor-grid%s-',
				'selectors' => [
					'{{WRAPPER}}' => '--grid-template-columns: repeat({{VALUE}}, auto);',
				],
			]
		);

		$start = is_rtl() ? 'end' : 'start';
		$end = is_rtl() ? 'start' : 'end';

		$this->add_responsive_control(
			'align',
			[
				'label' => esc_html__( 'Alignment', 'elementor' ),
				'type' => Controls_Manager::CHOOSE,
				'options' => [
					'left'    => [
						'title' => esc_html__( 'Left', 'elementor' ),
						'icon' => 'eicon-text-align-left',
					],
					'center' => [
						'title' => esc_html__( 'Center', 'elementor' ),
						'icon' => 'eicon-text-align-center',
					],
					'right' => [
						'title' => esc_html__( 'Right', 'elementor' ),
						'icon' => 'eicon-text-align-right',
					],
				],
				'prefix_class' => 'e-grid-align%s-',
				'default' => 'center',
				'selectors' => [
					'{{WRAPPER}} .elementor-widget-container' => 'text-align: {{VALUE}}',
				],
			]
		);

		$this->add_control(
			'view',
			[
				'label' => esc_html__( 'View', 'elementor' ),
				'type' => Controls_Manager::HIDDEN,
				'default' => 'traditional',
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_social_style',
			[
				'label' => esc_html__( 'Icon', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->add_control(
			'icon_color',
			[
				'label' => esc_html__( 'Color', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => 'default',
				'options' => [
					'default' => esc_html__( 'Official Color', 'elementor' ),
					'custom' => esc_html__( 'Custom', 'elementor' ),
				],
			]
		);

		$this->add_control(
			'icon_primary_color',
			[
				'label' => esc_html__( 'Primary Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'condition' => [
					'icon_color' => 'custom',
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-social-icon' => 'background-color: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'icon_secondary_color',
			[
				'label' => esc_html__( 'Secondary Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'condition' => [
					'icon_color' => 'custom',
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-social-icon i' => 'color: {{VALUE}};',
					'{{WRAPPER}} .elementor-social-icon svg' => 'fill: {{VALUE}};',
				],
			]
		);

		$this->add_responsive_control(
			'icon_size',
			[
				'label' => esc_html__( 'Size', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'min' => 6,
						'max' => 300,
					],
				],
				'selectors' => [
					'{{WRAPPER}}' => '--icon-size: {{SIZE}}{{UNIT}}',
				],
			]
		);

		$this->add_responsive_control(
			'icon_padding',
			[
				'label' => esc_html__( 'Padding', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'selectors' => [
					'{{WRAPPER}} .elementor-social-icon' => '--icon-padding: {{SIZE}}{{UNIT}}',
				],
				'default' => [
					'unit' => 'em',
				],
				'tablet_default' => [
					'unit' => 'em',
				],
				'mobile_default' => [
					'unit' => 'em',
				],
				'range' => [
					'em' => [
						'min' => 0,
						'max' => 5,
					],
				],
			]
		);

		$this->add_responsive_control(
			'icon_spacing',
			[
				'label' => esc_html__( 'Spacing', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'min' => 0,
						'max' => 100,
					],
				],
				'default' => [
					'size' => 5,
				],
				'selectors' => [
					'{{WRAPPER}}' => '--grid-column-gap: {{SIZE}}{{UNIT}}',
				],
			]
		);

		$this->add_responsive_control(
			'row_gap',
			[
				'label' => esc_html__( 'Rows Gap', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'default' => [
					'size' => 0,
				],
				'selectors' => [
					'{{WRAPPER}}' => '--grid-row-gap: {{SIZE}}{{UNIT}}',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Border::get_type(),
			[
				'name' => 'image_border', // We know this mistake - TODO: 'icon_border' (for hover control condition also)
				'selector' => '{{WRAPPER}} .elementor-social-icon',
				'separator' => 'before',
			]
		);

		$this->add_control(
			'border_radius',
			[
				'label' => esc_html__( 'Border Radius', 'elementor' ),
				'type' => Controls_Manager::DIMENSIONS,
				'size_units' => [ 'px', '%' ],
				'selectors' => [
					'{{WRAPPER}} .elementor-icon' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
				],
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_social_hover',
			[
				'label' => esc_html__( 'Icon Hover', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->add_control(
			'hover_primary_color',
			[
				'label' => esc_html__( 'Primary Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'condition' => [
					'icon_color' => 'custom',
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-social-icon:hover' => 'background-color: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'hover_secondary_color',
			[
				'label' => esc_html__( 'Secondary Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'condition' => [
					'icon_color' => 'custom',
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-social-icon:hover i' => 'color: {{VALUE}};',
					'{{WRAPPER}} .elementor-social-icon:hover svg' => 'fill: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'hover_border_color',
			[
				'label' => esc_html__( 'Border Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'condition' => [
					'image_border_border!' => '',
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-social-icon:hover' => 'border-color: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'hover_animation',
			[
				'label' => esc_html__( 'Hover Animation', 'elementor' ),
				'type' => Controls_Manager::HOVER_ANIMATION,
			]
		);

		$this->end_controls_section();

	}

	/**
	 * Render social icons widget output on the frontend.
	 *
	 * Written in PHP and used to generate the final HTML.
	 *
	 * @since 1.0.0
	 * @access protected
	 */
	protected function render() {
		$settings = $this->get_settings_for_display();
		$fallback_defaults = [
			'fa fa-facebook',
			'fa fa-twitter',
			'fa fa-google-plus',
		];

		$class_animation = '';

		if ( ! empty( $settings['hover_animation'] ) ) {
			$class_animation = ' elementor-animation-' . $settings['hover_animation'];
		}

		$migration_allowed = Icons_Manager::is_migration_allowed();

		?>
		<div class="elementor-social-icons-wrapper elementor-grid">
			<?php
			foreach ( $settings['social_icon_list'] as $index => $item ) {
				$migrated = isset( $item['__fa4_migrated']['social_icon'] );
				$is_new = empty( $item['social'] ) && $migration_allowed;
				$social = '';

				// add old default
				if ( empty( $item['social'] ) && ! $migration_allowed ) {
					$item['social'] = isset( $fallback_defaults[ $index ] ) ? $fallback_defaults[ $index ] : 'fa fa-wordpress';
				}

				if ( ! empty( $item['social'] ) ) {
					$social = str_replace( 'fa fa-', '', $item['social'] );
				}

				if ( ( $is_new || $migrated ) && 'svg' !== $item['social_icon']['library'] ) {
					$social = explode( ' ', $item['social_icon']['value'], 2 );
					if ( empty( $social[1] ) ) {
						$social = '';
					} else {
						$social = str_replace( 'fa-', '', $social[1] );
					}
				}
				if ( 'svg' === $item['social_icon']['library'] ) {
					$social = get_post_meta( $item['social_icon']['value']['id'], '_wp_attachment_image_alt', true );
				}

				$link_key = 'link_' . $index;

				$this->add_render_attribute( $link_key, 'class', [
					'elementor-icon',
					'elementor-social-icon',
					'elementor-social-icon-' . $social . $class_animation,
					'elementor-repeater-item-' . $item['_id'],
				] );

				$this->add_link_attributes( $link_key, $item['link'] );

				?>
				<span class="elementor-grid-item">
					<a <?php $this->print_render_attribute_string( $link_key ); ?>>
						<span class="elementor-screen-only"><?php echo esc_html( ucwords( $social ) ); ?></span>
						<?php
						if ( $is_new || $migrated ) {
							Icons_Manager::render_icon( $item['social_icon'] );
						} else { ?>
							<i class="<?php echo esc_attr( $item['social'] ); ?>"></i>
						<?php } ?>
					</a>
				</span>
			<?php } ?>
		</div>
		<?php
	}

	/**
	 * Render social icons widget output in the editor.
	 *
	 * Written as a Backbone JavaScript template and used to generate the live preview.
	 *
	 * @since 2.9.0
	 * @access protected
	 */
	protected function content_template() {
		?>
		<# var iconsHTML = {}; #>
		<div class="elementor-social-icons-wrapper elementor-grid">
			<# _.each( settings.social_icon_list, function( item, index ) {
				var link = item.link ? item.link.url : '',
					migrated = elementor.helpers.isIconMigrated( item, 'social_icon' );
					social = elementor.helpers.getSocialNetworkNameFromIcon( item.social_icon, item.social, false, migrated );
				#>
				<span class="elementor-grid-item">
					<a class="elementor-icon elementor-social-icon elementor-social-icon-{{ social }} elementor-animation-{{ settings.hover_animation }} elementor-repeater-item-{{item._id}}" href="{{ link }}">
						<span class="elementor-screen-only">{{{ social }}}</span>
						<#
							iconsHTML[ index ] = elementor.helpers.renderIcon( view, item.social_icon, {}, 'i', 'object' );
							if ( ( ! item.social || migrated ) && iconsHTML[ index ] && iconsHTML[ index ].rendered ) { #>
								{{{ iconsHTML[ index ].value }}}
							<# } else { #>
								<i class="{{ item.social }}"></i>
							<# }
						#>
					</a>
				</span>
			<# } ); #>
		</div>
		<?php
	}
}
includes/widgets/star-rating.php000064400000027561151327220420012775 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

use Elementor\Core\Kits\Documents\Tabs\Global_Colors;
use Elementor\Core\Kits\Documents\Tabs\Global_Typography;

/**
 * Elementor star rating widget.
 *
 * Elementor widget that displays star rating.
 *
 * @since 2.3.0
 */
class Widget_Star_Rating extends Widget_Base {

	/**
	 * Get widget name.
	 *
	 * Retrieve star rating widget name.
	 *
	 * @since 2.3.0
	 * @access public
	 *
	 * @return string Widget name.
	 */
	public function get_name() {
		return 'star-rating';
	}

	/**
	 * Get widget title.
	 *
	 * Retrieve star rating widget title.
	 *
	 * @since 2.3.0
	 * @access public
	 *
	 * @return string Widget title.
	 */
	public function get_title() {
		return esc_html__( 'Star Rating', 'elementor' );
	}

	/**
	 * Get widget icon.
	 *
	 * Retrieve star rating widget icon.
	 *
	 * @since 2.3.0
	 * @access public
	 *
	 * @return string Widget icon.
	 */
	public function get_icon() {
		return 'eicon-rating';
	}

	/**
	 * Get widget keywords.
	 *
	 * Retrieve the list of keywords the widget belongs to.
	 *
	 * @since 2.3.0
	 * @access public
	 *
	 * @return array Widget keywords.
	 */
	public function get_keywords() {
		return [ 'star', 'rating', 'rate', 'review' ];
	}

	/**
	 * Register star rating widget controls.
	 *
	 * Adds different input fields to allow the user to change and customize the widget settings.
	 *
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		$this->start_controls_section(
			'section_rating',
			[
				'label' => esc_html__( 'Rating', 'elementor' ),
			]
		);

		$this->add_control(
			'rating_scale',
			[
				'label' => esc_html__( 'Rating Scale', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'options' => [
					'5' => '0-5',
					'10' => '0-10',
				],
				'default' => '5',
			]
		);

		$this->add_control(
			'rating',
			[
				'label' => esc_html__( 'Rating', 'elementor' ),
				'type' => Controls_Manager::NUMBER,
				'min' => 0,
				'max' => 10,
				'step' => 0.1,
				'default' => 5,
				'dynamic' => [
					'active' => true,
				],
			]
		);

		$this->add_control(
			'star_style',
			[
				'label' => esc_html__( 'Icon', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'options' => [
					'star_fontawesome' => 'Font Awesome',
					'star_unicode' => 'Unicode',
				],
				'default' => 'star_fontawesome',
				'render_type' => 'template',
				'prefix_class' => 'elementor--star-style-',
				'separator' => 'before',
			]
		);

		$this->add_control(
			'unmarked_star_style',
			[
				'label' => esc_html__( 'Unmarked Style', 'elementor' ),
				'type' => Controls_Manager::CHOOSE,
				'options' => [
					'solid' => [
						'title' => esc_html__( 'Solid', 'elementor' ),
						'icon' => 'eicon-star',
					],
					'outline' => [
						'title' => esc_html__( 'Outline', 'elementor' ),
						'icon' => 'eicon-star-o',
					],
				],
				'default' => 'solid',
			]
		);

		$this->add_control(
			'title',
			[
				'label' => esc_html__( 'Title', 'elementor' ),
				'type' => Controls_Manager::TEXT,
				'separator' => 'before',
				'dynamic' => [
					'active' => true,
				],
			]
		);

		$this->add_responsive_control(
			'align',
			[
				'label' => esc_html__( 'Alignment', 'elementor' ),
				'type' => Controls_Manager::CHOOSE,
				'options' => [
					'left' => [
						'title' => esc_html__( 'Left', 'elementor' ),
						'icon' => 'eicon-text-align-left',
					],
					'center' => [
						'title' => esc_html__( 'Center', 'elementor' ),
						'icon' => 'eicon-text-align-center',
					],
					'right' => [
						'title' => esc_html__( 'Right', 'elementor' ),
						'icon' => 'eicon-text-align-right',
					],
					'justify' => [
						'title' => esc_html__( 'Justified', 'elementor' ),
						'icon' => 'eicon-text-align-justify',
					],
				],
				'prefix_class' => 'elementor-star-rating%s--align-',
				'selectors' => [
					'{{WRAPPER}}' => 'text-align: {{VALUE}}',
				],
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_title_style',
			[
				'label' => esc_html__( 'Title', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
				'condition' => [
					'title!' => '',
				],
			]
		);

		$this->add_control(
			'title_color',
			[
				'label' => esc_html__( 'Text Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'global' => [
					'default' => Global_Colors::COLOR_TEXT,
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-star-rating__title' => 'color: {{VALUE}}',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			[
				'name' => 'title_typography',
				'selector' => '{{WRAPPER}} .elementor-star-rating__title',
				'global' => [
					'default' => Global_Typography::TYPOGRAPHY_TEXT,
				],
			]
		);

		$this->add_group_control(
			Group_Control_Text_Shadow::get_type(),
			[
				'name' => 'title_shadow',
				'selector' => '{{WRAPPER}} .elementor-star-rating__title',
			]
		);

		$this->add_responsive_control(
			'title_gap',
			[
				'label' => esc_html__( 'Gap', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'min' => 0,
						'max' => 50,
					],
				],
				'selectors' => [
					'body:not(.rtl) {{WRAPPER}}:not(.elementor-star-rating--align-justify) .elementor-star-rating__title' => 'margin-right: {{SIZE}}{{UNIT}}',
					'body.rtl {{WRAPPER}}:not(.elementor-star-rating--align-justify) .elementor-star-rating__title' => 'margin-left: {{SIZE}}{{UNIT}}',
				],
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_stars_style',
			[
				'label' => esc_html__( 'Stars', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->add_responsive_control(
			'icon_size',
			[
				'label' => esc_html__( 'Size', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'min' => 0,
						'max' => 100,
					],
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-star-rating' => 'font-size: {{SIZE}}{{UNIT}}',
				],
			]
		);

		$this->add_responsive_control(
			'icon_space',
			[
				'label' => esc_html__( 'Spacing', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'min' => 0,
						'max' => 50,
					],
				],
				'selectors' => [
					'body:not(.rtl) {{WRAPPER}} .elementor-star-rating i:not(:last-of-type)' => 'margin-right: {{SIZE}}{{UNIT}}',
					'body.rtl {{WRAPPER}} .elementor-star-rating i:not(:last-of-type)' => 'margin-left: {{SIZE}}{{UNIT}}',
				],
			]
		);

		$this->add_control(
			'stars_color',
			[
				'label' => esc_html__( 'Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'{{WRAPPER}} .elementor-star-rating i:before' => 'color: {{VALUE}}',
				],
				'separator' => 'before',
			]
		);

		$this->add_control(
			'stars_unmarked_color',
			[
				'label' => esc_html__( 'Unmarked Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'{{WRAPPER}} .elementor-star-rating i' => 'color: {{VALUE}}',
				],
			]
		);

		$this->end_controls_section();
	}

	/**
	 * @since 2.3.0
	 * @access protected
	 */
	protected function get_rating() {
		$settings = $this->get_settings_for_display();
		$rating_scale = (int) $settings['rating_scale'];
		$rating = (float) $settings['rating'] > $rating_scale ? $rating_scale : $settings['rating'];

		return [ $rating, $rating_scale ];
	}

	/**
	 * Print the actual stars and calculate their filling.
	 *
	 * Rating type is float to allow stars-count to be a fraction.
	 * Floored-rating type is int, to represent the rounded-down stars count.
	 * In the `for` loop, the index type is float to allow comparing with the rating value.
	 *
	 * @since 2.3.0
	 * @access protected
	 */
	protected function render_stars( $icon ) {
		$rating_data = $this->get_rating();
		$rating = (float) $rating_data[0];
		$floored_rating = floor( $rating );
		$stars_html = '';

		for ( $stars = 1.0; $stars <= $rating_data[1]; $stars++ ) {
			if ( $stars <= $floored_rating ) {
				$stars_html .= '<i class="elementor-star-full">' . $icon . '</i>';
			} elseif ( $floored_rating + 1 === $stars && $rating !== $floored_rating ) {
				$stars_html .= '<i class="elementor-star-' . ( $rating - $floored_rating ) * 10 . '">' . $icon . '</i>';
			} else {
				$stars_html .= '<i class="elementor-star-empty">' . $icon . '</i>';
			}
		}

		return $stars_html;
	}

	/**
	 * @since 2.3.0
	 * @access protected
	 */
	protected function render() {
		$settings = $this->get_settings_for_display();
		$rating_data = $this->get_rating();
		$textual_rating = $rating_data[0] . '/' . $rating_data[1];
		$icon = '&#xE934;';

		if ( 'star_fontawesome' === $settings['star_style'] ) {
			if ( 'outline' === $settings['unmarked_star_style'] ) {
				$icon = '&#xE933;';
			}
		} elseif ( 'star_unicode' === $settings['star_style'] ) {
			$icon = '&#9733;';

			if ( 'outline' === $settings['unmarked_star_style'] ) {
				$icon = '&#9734;';
			}
		}

		$this->add_render_attribute( 'icon_wrapper', [
			'class' => 'elementor-star-rating',
			'title' => $textual_rating,
			'itemtype' => 'http://schema.org/Rating',
			'itemscope' => '',
			'itemprop' => 'reviewRating',
		] );

		$schema_rating = '<span itemprop="ratingValue" class="elementor-screen-only">' . $textual_rating . '</span>';
		$stars_element = '<div ' . $this->get_render_attribute_string( 'icon_wrapper' ) . '>' . $this->render_stars( $icon ) . ' ' . $schema_rating . '</div>';
		?>

		<div class="elementor-star-rating__wrapper">
			<?php if ( ! Utils::is_empty( $settings['title'] ) ) : ?>
				<div class="elementor-star-rating__title"><?php echo esc_html( $settings['title'] ); ?></div>
			<?php endif;
			// PHPCS - $stars_element contains an HTML string that cannot be escaped. ?>
			<?php echo $stars_element; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>
		</div>
		<?php
	}

	/**
	 * @since 2.9.0
	 * @access protected
	 */
	protected function content_template() {
		?>
		<#
			var getRating = function() {
				var ratingScale = parseInt( settings.rating_scale, 10 ),
					rating = settings.rating > ratingScale ? ratingScale : settings.rating;

				return [ rating, ratingScale ];
			},
			ratingData = getRating(),
			rating = ratingData[0],
			textualRating = ratingData[0] + '/' + ratingData[1],
			renderStars = function( icon ) {
				var starsHtml = '',
					flooredRating = Math.floor( rating );

				for ( var stars = 1; stars <= ratingData[1]; stars++ ) {
					if ( stars <= flooredRating  ) {
						starsHtml += '<i class="elementor-star-full">' + icon + '</i>';
					} else if ( flooredRating + 1 === stars && rating !== flooredRating ) {
						starsHtml += '<i class="elementor-star-' + ( rating - flooredRating ).toFixed( 1 ) * 10 + '">' + icon + '</i>';
					} else {
						starsHtml += '<i class="elementor-star-empty">' + icon + '</i>';
					}
				}

				return starsHtml;
			},
			icon = '&#xE934;';

			if ( 'star_fontawesome' === settings.star_style ) {
				if ( 'outline' === settings.unmarked_star_style ) {
					icon = '&#xE933;';
				}
			} else if ( 'star_unicode' === settings.star_style ) {
				icon = '&#9733;';

				if ( 'outline' === settings.unmarked_star_style ) {
					icon = '&#9734;';
				}
			}

			view.addRenderAttribute( 'iconWrapper', 'class', 'elementor-star-rating' );
			view.addRenderAttribute( 'iconWrapper', 'itemtype', 'http://schema.org/Rating' );
			view.addRenderAttribute( 'iconWrapper', 'title', textualRating );
			view.addRenderAttribute( 'iconWrapper', 'itemscope', '' );
			view.addRenderAttribute( 'iconWrapper', 'itemprop', 'reviewRating' );

			var stars = renderStars( icon );
		#>

		<div class="elementor-star-rating__wrapper">
			<# if ( ! _.isEmpty( settings.title ) ) { #>
				<div class="elementor-star-rating__title">{{ settings.title }}</div>
			<# } #>
			<div {{{ view.getRenderAttributeString( 'iconWrapper' ) }}} >
				{{{ stars }}}
				<span itemprop="ratingValue" class="elementor-screen-only">{{ textualRating }}</span>
			</div>
		</div>

		<?php
	}
}
includes/widgets/html.php000064400000004301151327220420011471 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor HTML widget.
 *
 * Elementor widget that insert a custom HTML code into the page.
 *
 * @since 1.0.0
 */
class Widget_Html extends Widget_Base {

	/**
	 * Get widget name.
	 *
	 * Retrieve HTML widget name.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget name.
	 */
	public function get_name() {
		return 'html';
	}

	/**
	 * Get widget title.
	 *
	 * Retrieve HTML widget title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget title.
	 */
	public function get_title() {
		return esc_html__( 'HTML', 'elementor' );
	}

	/**
	 * Get widget icon.
	 *
	 * Retrieve HTML widget icon.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget icon.
	 */
	public function get_icon() {
		return 'eicon-code';
	}

	/**
	 * Get widget keywords.
	 *
	 * Retrieve the list of keywords the widget belongs to.
	 *
	 * @since 2.1.0
	 * @access public
	 *
	 * @return array Widget keywords.
	 */
	public function get_keywords() {
		return [ 'html', 'code' ];
	}

	/**
	 * Register HTML widget controls.
	 *
	 * Adds different input fields to allow the user to change and customize the widget settings.
	 *
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		$this->start_controls_section(
			'section_title',
			[
				'label' => esc_html__( 'HTML Code', 'elementor' ),
			]
		);

		$this->add_control(
			'html',
			[
				'label' => '',
				'type' => Controls_Manager::CODE,
				'default' => '',
				'placeholder' => esc_html__( 'Enter your code', 'elementor' ),
				'show_label' => false,
			]
		);

		$this->end_controls_section();
	}

	/**
	 * Render HTML widget output on the frontend.
	 *
	 * Written in PHP and used to generate the final HTML.
	 *
	 * @since 1.0.0
	 * @access protected
	 */
	protected function render() {
		$this->print_unescaped_setting( 'html' );
	}

	/**
	 * Render HTML widget output in the editor.
	 *
	 * Written as a Backbone JavaScript template and used to generate the live preview.
	 *
	 * @since 2.9.0
	 * @access protected
	 */
	protected function content_template() {
		?>
		{{{ settings.html }}}
		<?php
	}
}
includes/widgets/counter.php000064400000021202151327220420012203 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

use Elementor\Core\Kits\Documents\Tabs\Global_Colors;
use Elementor\Core\Kits\Documents\Tabs\Global_Typography;

/**
 * Elementor counter widget.
 *
 * Elementor widget that displays stats and numbers in an escalating manner.
 *
 * @since 1.0.0
 */
class Widget_Counter extends Widget_Base {

	/**
	 * Get widget name.
	 *
	 * Retrieve counter widget name.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget name.
	 */
	public function get_name() {
		return 'counter';
	}

	/**
	 * Get widget title.
	 *
	 * Retrieve counter widget title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget title.
	 */
	public function get_title() {
		return esc_html__( 'Counter', 'elementor' );
	}

	/**
	 * Get widget icon.
	 *
	 * Retrieve counter widget icon.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget icon.
	 */
	public function get_icon() {
		return 'eicon-counter';
	}

	/**
	 * Retrieve the list of scripts the counter widget depended on.
	 *
	 * Used to set scripts dependencies required to run the widget.
	 *
	 * @since 1.3.0
	 * @access public
	 *
	 * @return array Widget scripts dependencies.
	 */
	public function get_script_depends() {
		return [ 'jquery-numerator' ];
	}

	/**
	 * Get widget keywords.
	 *
	 * Retrieve the list of keywords the widget belongs to.
	 *
	 * @since 2.1.0
	 * @access public
	 *
	 * @return array Widget keywords.
	 */
	public function get_keywords() {
		return [ 'counter' ];
	}

	/**
	 * Register counter widget controls.
	 *
	 * Adds different input fields to allow the user to change and customize the widget settings.
	 *
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		$this->start_controls_section(
			'section_counter',
			[
				'label' => esc_html__( 'Counter', 'elementor' ),
			]
		);

		$this->add_control(
			'starting_number',
			[
				'label' => esc_html__( 'Starting Number', 'elementor' ),
				'type' => Controls_Manager::NUMBER,
				'default' => 0,
				'dynamic' => [
					'active' => true,
				],
			]
		);

		$this->add_control(
			'ending_number',
			[
				'label' => esc_html__( 'Ending Number', 'elementor' ),
				'type' => Controls_Manager::NUMBER,
				'default' => 100,
				'dynamic' => [
					'active' => true,
				],
			]
		);

		$this->add_control(
			'prefix',
			[
				'label' => esc_html__( 'Number Prefix', 'elementor' ),
				'type' => Controls_Manager::TEXT,
				'dynamic' => [
					'active' => true,
				],
				'default' => '',
				'placeholder' => 1,
			]
		);

		$this->add_control(
			'suffix',
			[
				'label' => esc_html__( 'Number Suffix', 'elementor' ),
				'type' => Controls_Manager::TEXT,
				'dynamic' => [
					'active' => true,
				],
				'default' => '',
				'placeholder' => esc_html__( 'Plus', 'elementor' ),
			]
		);

		$this->add_control(
			'duration',
			[
				'label' => esc_html__( 'Animation Duration', 'elementor' ),
				'type' => Controls_Manager::NUMBER,
				'default' => 2000,
				'min' => 100,
				'step' => 100,
			]
		);

		$this->add_control(
			'thousand_separator',
			[
				'label' => esc_html__( 'Thousand Separator', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'default' => 'yes',
				'label_on' => esc_html__( 'Show', 'elementor' ),
				'label_off' => esc_html__( 'Hide', 'elementor' ),
			]
		);

		$this->add_control(
			'thousand_separator_char',
			[
				'label' => esc_html__( 'Separator', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'condition' => [
					'thousand_separator' => 'yes',
				],
				'options' => [
					'' => 'Default',
					'.' => 'Dot',
					' ' => 'Space',
				],
			]
		);

		$this->add_control(
			'title',
			[
				'label' => esc_html__( 'Title', 'elementor' ),
				'type' => Controls_Manager::TEXT,
				'label_block' => true,
				'dynamic' => [
					'active' => true,
				],
				'default' => esc_html__( 'Cool Number', 'elementor' ),
				'placeholder' => esc_html__( 'Cool Number', 'elementor' ),
			]
		);

		$this->add_control(
			'view',
			[
				'label' => esc_html__( 'View', 'elementor' ),
				'type' => Controls_Manager::HIDDEN,
				'default' => 'traditional',
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_number',
			[
				'label' => esc_html__( 'Number', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->add_control(
			'number_color',
			[
				'label' => esc_html__( 'Text Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'global' => [
					'default' => Global_Colors::COLOR_PRIMARY,
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-counter-number-wrapper' => 'color: {{VALUE}};',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			[
				'name' => 'typography_number',
				'global' => [
					'default' => Global_Typography::TYPOGRAPHY_PRIMARY,
				],
				'selector' => '{{WRAPPER}} .elementor-counter-number-wrapper',
			]
		);

		$this->add_group_control(
			Group_Control_Text_Shadow::get_type(),
			[
				'name' => 'number_shadow',
				'selector' => '{{WRAPPER}} .elementor-counter-number-wrapper',
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_title',
			[
				'label' => esc_html__( 'Title', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->add_control(
			'title_color',
			[
				'label' => esc_html__( 'Text Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'global' => [
					'default' => Global_Colors::COLOR_SECONDARY,
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-counter-title' => 'color: {{VALUE}};',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			[
				'name' => 'typography_title',
				'global' => [
					'default' => Global_Typography::TYPOGRAPHY_SECONDARY,
				],
				'selector' => '{{WRAPPER}} .elementor-counter-title',
			]
		);

		$this->add_group_control(
			Group_Control_Text_Shadow::get_type(),
			[
				'name' => 'title_shadow',
				'selector' => '{{WRAPPER}} .elementor-counter-title',
			]
		);

		$this->end_controls_section();
	}

	/**
	 * Render counter widget output in the editor.
	 *
	 * Written as a Backbone JavaScript template and used to generate the live preview.
	 *
	 * @since 2.9.0
	 * @access protected
	 */
	protected function content_template() {
		?>
		<# view.addRenderAttribute( 'counter-title', {
			'class': 'elementor-counter-title'
		} );

		view.addInlineEditingAttributes( 'counter-title' );
		#>
		<div class="elementor-counter">
			<div class="elementor-counter-number-wrapper">
				<span class="elementor-counter-number-prefix">{{{ settings.prefix }}}</span>
				<span class="elementor-counter-number" data-duration="{{ settings.duration }}" data-to-value="{{ settings.ending_number }}" data-delimiter="{{ settings.thousand_separator ? settings.thousand_separator_char || ',' : '' }}">{{{ settings.starting_number }}}</span>
				<span class="elementor-counter-number-suffix">{{{ settings.suffix }}}</span>
			</div>
			<# if ( settings.title ) {
				#><div {{{ view.getRenderAttributeString( 'counter-title' ) }}}>{{{ settings.title }}}</div><#
			} #>
		</div>
		<?php
	}

	/**
	 * Render counter widget output on the frontend.
	 *
	 * Written in PHP and used to generate the final HTML.
	 *
	 * @since 1.0.0
	 * @access protected
	 */
	protected function render() {
		$settings = $this->get_settings_for_display();

		$this->add_render_attribute( 'counter', [
			'class' => 'elementor-counter-number',
			'data-duration' => $settings['duration'],
			'data-to-value' => $settings['ending_number'],
			'data-from-value' => $settings['starting_number'],
		] );

		if ( ! empty( $settings['thousand_separator'] ) ) {
			$delimiter = empty( $settings['thousand_separator_char'] ) ? ',' : $settings['thousand_separator_char'];
			$this->add_render_attribute( 'counter', 'data-delimiter', $delimiter );
		}

		$this->add_render_attribute( 'counter-title', 'class', 'elementor-counter-title' );

		$this->add_inline_editing_attributes( 'counter-title' );
		?>
		<div class="elementor-counter">
			<div class="elementor-counter-number-wrapper">
				<span class="elementor-counter-number-prefix"><?php $this->print_unescaped_setting( 'prefix' ); ?></span>
				<span <?php $this->print_render_attribute_string( 'counter' ); ?>><?php $this->print_unescaped_setting( 'starting_number' ); ?></span>
				<span class="elementor-counter-number-suffix"><?php $this->print_unescaped_setting( 'suffix' ); ?></span>
			</div>
			<?php if ( $settings['title'] ) : ?>
				<div <?php $this->print_render_attribute_string( 'counter-title' ); ?>><?php $this->print_unescaped_setting( 'title' ); ?></div>
			<?php endif; ?>
		</div>
		<?php
	}
}
includes/widgets/wordpress.php000064400000016467151327220420012575 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor WordPress widget.
 *
 * Elementor widget that displays all the WordPress widgets.
 *
 * @since 1.0.0
 */
class Widget_WordPress extends Widget_Base {

	/**
	 * WordPress widget name.
	 *
	 * @access private
	 *
	 * @var string
	 */
	private $_widget_name = null;

	/**
	 * WordPress widget instance.
	 *
	 * @access private
	 *
	 * @var \WP_Widget
	 */
	private $_widget_instance = null;

	/**
	 * Whether the widget is a Pojo widget or not.
	 *
	 * @since 2.0.0
	 * @access private
	 *
	 * @return bool
	 */
	private function is_pojo_widget() {
		return $this->get_widget_instance() instanceof \Pojo_Widget_Base;
	}

	/**
	 * Get widget name.
	 *
	 * Retrieve WordPress/Pojo widget name.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget name.
	 */
	public function get_name() {
		return 'wp-widget-' . $this->get_widget_instance()->id_base;
	}

	/**
	 * Get widget title.
	 *
	 * Retrieve WordPress/Pojo widget title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget title.
	 */
	public function get_title() {
		return $this->get_widget_instance()->name;
	}

	/**
	 * Get widget categories.
	 *
	 * Retrieve the list of categories the WordPress/Pojo widget belongs to.
	 *
	 * Used to determine where to display the widget in the editor.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array Widget categories. Returns either a WordPress category or Pojo category.
	 */
	public function get_categories() {
		if ( $this->is_pojo_widget() ) {
			$category = 'pojo';
		} else {
			$category = 'wordpress';
		}
		return [ $category ];
	}

	/**
	 * Get widget icon.
	 *
	 * Retrieve WordPress/Pojo widget icon.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget icon. Returns either a WordPress icon or Pojo icon.
	 */
	public function get_icon() {
		if ( $this->is_pojo_widget() ) {
			return 'eicon-pojome';
		}
		return 'eicon-wordpress';
	}

	/**
	 * Get widget keywords.
	 *
	 * Retrieve the list of keywords the widget belongs to.
	 *
	 * @since 2.1.0
	 * @access public
	 *
	 * @return array Widget keywords.
	 */
	public function get_keywords() {
		return [ 'wordpress', 'widget' ];
	}

	public function get_help_url() {
		return '';
	}

	/**
	 * Whether the reload preview is required or not.
	 *
	 * Used to determine whether the reload preview is required.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return bool Whether the reload preview is required.
	 */
	public function is_reload_preview_required() {
		return true;
	}

	/**
	 * Retrieve WordPress/Pojo widget form.
	 *
	 * Returns the WordPress widget form, to be used in Elementor.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget form.
	 */
	public function get_form() {
		$instance = $this->get_widget_instance();

		ob_start();
		echo '<div class="widget-inside media-widget-control"><div class="form wp-core-ui">';
		echo '<input type="hidden" class="id_base" value="' . esc_attr( $instance->id_base ) . '" />';
		echo '<input type="hidden" class="widget-id" value="widget-' . esc_attr( $this->get_id() ) . '" />';
		echo '<div class="widget-content">';
		$widget_data = $this->get_settings( 'wp' );
		$instance->form( $widget_data );
		do_action( 'in_widget_form', $instance, null, $widget_data );
		echo '</div></div></div>';
		return ob_get_clean();
	}

	/**
	 * Retrieve WordPress/Pojo widget instance.
	 *
	 * Returns an instance of WordPress widget, to be used in Elementor.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return \WP_Widget
	 */
	public function get_widget_instance() {
		if ( is_null( $this->_widget_instance ) ) {
			global $wp_widget_factory;

			if ( isset( $wp_widget_factory->widgets[ $this->_widget_name ] ) ) {
				$this->_widget_instance = $wp_widget_factory->widgets[ $this->_widget_name ];
				$this->_widget_instance->_set( 'REPLACE_TO_ID' );
			} elseif ( class_exists( $this->_widget_name ) ) {
				$this->_widget_instance = new $this->_widget_name();
				$this->_widget_instance->_set( 'REPLACE_TO_ID' );
			}
		}
		return $this->_widget_instance;
	}

	/**
	 * Retrieve WordPress/Pojo widget parsed settings.
	 *
	 * Returns the WordPress widget settings, to be used in Elementor.
	 *
	 * @access protected
	 * @since 2.3.0
	 *
	 * @return array Parsed settings.
	 */
	protected function get_init_settings() {
		$settings = parent::get_init_settings();

		if ( ! empty( $settings['wp'] ) ) {
			$widget = $this->get_widget_instance();
			$instance = $widget->update( $settings['wp'], [] );
			/** This filter is documented in wp-includes/class-wp-widget.php */
			$settings['wp'] = apply_filters( 'widget_update_callback', $instance, $settings['wp'], [], $widget );
		}

		return $settings;
	}

	/**
	 * Register WordPress/Pojo widget controls.
	 *
	 * Adds different input fields to allow the user to change and customize the widget settings.
	 *
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		$this->add_control(
			'wp',
			[
				'label' => esc_html__( 'Form', 'elementor' ),
				'type' => Controls_Manager::WP_WIDGET,
				'widget' => $this->get_name(),
				'id_base' => $this->get_widget_instance()->id_base,
			]
		);
	}

	/**
	 * Render WordPress/Pojo widget output on the frontend.
	 *
	 * Written in PHP and used to generate the final HTML.
	 *
	 * @since 1.0.0
	 * @access protected
	 */
	protected function render() {
		$default_widget_args = [
			'widget_id' => $this->get_name(),
			'before_widget' => '',
			'after_widget' => '',
			'before_title' => '<h5>',
			'after_title' => '</h5>',
		];

		/**
		 * WordPress widget args.
		 *
		 * Filters the WordPress widget arguments when they are rendered in Elementor panel.
		 *
		 * @since 1.0.0
		 *
		 * @param array            $default_widget_args Default widget arguments.
		 * @param Widget_WordPress $this                The WordPress widget.
		 */
		$default_widget_args = apply_filters( 'elementor/widgets/wordpress/widget_args', $default_widget_args, $this );
		$is_gallery_widget = 'wp-widget-media_gallery' === $this->get_name();

		if ( $is_gallery_widget ) {
			add_filter( 'wp_get_attachment_link', [ $this, 'add_lightbox_data_to_image_link' ], 10, 2 );
		}

		$this->get_widget_instance()->widget( $default_widget_args, $this->get_settings( 'wp' ) );

		if ( $is_gallery_widget ) {
			remove_filter( 'wp_get_attachment_link', [ $this, 'add_lightbox_data_to_image_link' ] );
		}
	}

	/**
	 * Render WordPress/Pojo widget output in the editor.
	 *
	 * Written as a Backbone JavaScript template and used to generate the live preview.
	 *
	 * @since 2.9.0
	 * @access protected
	 */
	protected function content_template() {}

	/**
	 * WordPress/Pojo widget constructor.
	 *
	 * Used to run WordPress widget constructor.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param array $data Widget data. Default is an empty array.
	 * @param array $args Widget arguments. Default is null.
	 */
	public function __construct( $data = [], $args = null ) {
		$this->_widget_name = $args['widget_name'];

		parent::__construct( $data, $args );
	}

	/**
	 * Render WordPress/Pojo widget as plain content.
	 *
	 * Override the default render behavior, don't render widget content.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param array $instance Widget instance. Default is empty array.
	 */
	public function render_plain_content( $instance = [] ) {}
}
includes/widgets/image-carousel.php000064400000050610151327220420013426 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

use Elementor\Core\Kits\Documents\Tabs\Global_Colors;

/**
 * Elementor image carousel widget.
 *
 * Elementor widget that displays a set of images in a rotating carousel or
 * slider.
 *
 * @since 1.0.0
 */
class Widget_Image_Carousel extends Widget_Base {

	/**
	 * Get widget name.
	 *
	 * Retrieve image carousel widget name.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget name.
	 */
	public function get_name() {
		return 'image-carousel';
	}

	/**
	 * Get widget title.
	 *
	 * Retrieve image carousel widget title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget title.
	 */
	public function get_title() {
		return esc_html__( 'Image Carousel', 'elementor' );
	}

	/**
	 * Get widget icon.
	 *
	 * Retrieve image carousel widget icon.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget icon.
	 */
	public function get_icon() {
		return 'eicon-slider-push';
	}

	/**
	 * Get widget keywords.
	 *
	 * Retrieve the list of keywords the widget belongs to.
	 *
	 * @since 2.1.0
	 * @access public
	 *
	 * @return array Widget keywords.
	 */
	public function get_keywords() {
		return [ 'image', 'photo', 'visual', 'carousel', 'slider' ];
	}

	/**
	 * Register image carousel widget controls.
	 *
	 * Adds different input fields to allow the user to change and customize the widget settings.
	 *
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		$this->start_controls_section(
			'section_image_carousel',
			[
				'label' => esc_html__( 'Image Carousel', 'elementor' ),
			]
		);

		$this->add_control(
			'carousel',
			[
				'label' => esc_html__( 'Add Images', 'elementor' ),
				'type' => Controls_Manager::GALLERY,
				'default' => [],
				'show_label' => false,
				'dynamic' => [
					'active' => true,
				],
			]
		);

		$this->add_group_control(
			Group_Control_Image_Size::get_type(),
			[
				'name' => 'thumbnail', // Usage: `{name}_size` and `{name}_custom_dimension`, in this case `thumbnail_size` and `thumbnail_custom_dimension`.
				'separator' => 'none',
			]
		);

		$slides_to_show = range( 1, 10 );
		$slides_to_show = array_combine( $slides_to_show, $slides_to_show );

		$this->add_responsive_control(
			'slides_to_show',
			[
				'label' => esc_html__( 'Slides to Show', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'options' => [
					'' => esc_html__( 'Default', 'elementor' ),
				] + $slides_to_show,
				'frontend_available' => true,
				'render_type' => 'template',
				'selectors' => [
					'{{WRAPPER}}' => '--e-image-carousel-slides-to-show: {{VALUE}}',
				],
			]
		);

		$this->add_responsive_control(
			'slides_to_scroll',
			[
				'label' => esc_html__( 'Slides to Scroll', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'description' => esc_html__( 'Set how many slides are scrolled per swipe.', 'elementor' ),
				'options' => [
					'' => esc_html__( 'Default', 'elementor' ),
				] + $slides_to_show,
				'condition' => [
					'slides_to_show!' => '1',
				],
				'frontend_available' => true,
			]
		);

		$this->add_control(
			'image_stretch',
			[
				'label' => esc_html__( 'Image Stretch', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => 'no',
				'options' => [
					'no' => esc_html__( 'No', 'elementor' ),
					'yes' => esc_html__( 'Yes', 'elementor' ),
				],
			]
		);

		$this->add_control(
			'navigation',
			[
				'label' => esc_html__( 'Navigation', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => 'both',
				'options' => [
					'both' => esc_html__( 'Arrows and Dots', 'elementor' ),
					'arrows' => esc_html__( 'Arrows', 'elementor' ),
					'dots' => esc_html__( 'Dots', 'elementor' ),
					'none' => esc_html__( 'None', 'elementor' ),
				],
				'frontend_available' => true,
			]
		);

		$this->add_control(
			'link_to',
			[
				'label' => esc_html__( 'Link', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => 'none',
				'options' => [
					'none' => esc_html__( 'None', 'elementor' ),
					'file' => esc_html__( 'Media File', 'elementor' ),
					'custom' => esc_html__( 'Custom URL', 'elementor' ),
				],
			]
		);

		$this->add_control(
			'link',
			[
				'label' => esc_html__( 'Link', 'elementor' ),
				'type' => Controls_Manager::URL,
				'placeholder' => esc_html__( 'https://your-link.com', 'elementor' ),
				'condition' => [
					'link_to' => 'custom',
				],
				'show_label' => false,
			]
		);

		$this->add_control(
			'open_lightbox',
			[
				'label' => esc_html__( 'Lightbox', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => 'default',
				'options' => [
					'default' => esc_html__( 'Default', 'elementor' ),
					'yes' => esc_html__( 'Yes', 'elementor' ),
					'no' => esc_html__( 'No', 'elementor' ),
				],
				'condition' => [
					'link_to' => 'file',
				],
			]
		);

		$this->add_control(
			'caption_type',
			[
				'label' => esc_html__( 'Caption', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => '',
				'options' => [
					'' => esc_html__( 'None', 'elementor' ),
					'title' => esc_html__( 'Title', 'elementor' ),
					'caption' => esc_html__( 'Caption', 'elementor' ),
					'description' => esc_html__( 'Description', 'elementor' ),
				],
			]
		);

		$this->add_control(
			'view',
			[
				'label' => esc_html__( 'View', 'elementor' ),
				'type' => Controls_Manager::HIDDEN,
				'default' => 'traditional',
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_additional_options',
			[
				'label' => esc_html__( 'Additional Options', 'elementor' ),
			]
		);

		$this->add_control(
			'autoplay',
			[
				'label' => esc_html__( 'Autoplay', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => 'yes',
				'options' => [
					'yes' => esc_html__( 'Yes', 'elementor' ),
					'no' => esc_html__( 'No', 'elementor' ),
				],
				'frontend_available' => true,
			]
		);

		$this->add_control(
			'pause_on_hover',
			[
				'label' => esc_html__( 'Pause on Hover', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => 'yes',
				'options' => [
					'yes' => esc_html__( 'Yes', 'elementor' ),
					'no' => esc_html__( 'No', 'elementor' ),
				],
				'condition' => [
					'autoplay' => 'yes',
				],
				'render_type' => 'none',
				'frontend_available' => true,
			]
		);

		$this->add_control(
			'pause_on_interaction',
			[
				'label' => esc_html__( 'Pause on Interaction', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => 'yes',
				'options' => [
					'yes' => esc_html__( 'Yes', 'elementor' ),
					'no' => esc_html__( 'No', 'elementor' ),
				],
				'condition' => [
					'autoplay' => 'yes',
				],
				'frontend_available' => true,
			]
		);

		$this->add_control(
			'autoplay_speed',
			[
				'label' => esc_html__( 'Autoplay Speed', 'elementor' ),
				'type' => Controls_Manager::NUMBER,
				'default' => 5000,
				'condition' => [
					'autoplay' => 'yes',
				],
				'render_type' => 'none',
				'frontend_available' => true,
			]
		);

		// Loop requires a re-render so no 'render_type = none'
		$this->add_control(
			'infinite',
			[
				'label' => esc_html__( 'Infinite Loop', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => 'yes',
				'options' => [
					'yes' => esc_html__( 'Yes', 'elementor' ),
					'no' => esc_html__( 'No', 'elementor' ),
				],
				'frontend_available' => true,
			]
		);

		$this->add_control(
			'effect',
			[
				'label' => esc_html__( 'Effect', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => 'slide',
				'options' => [
					'slide' => esc_html__( 'Slide', 'elementor' ),
					'fade' => esc_html__( 'Fade', 'elementor' ),
				],
				'condition' => [
					'slides_to_show' => '1',
				],
				'frontend_available' => true,
			]
		);

		$this->add_control(
			'speed',
			[
				'label' => esc_html__( 'Animation Speed', 'elementor' ),
				'type' => Controls_Manager::NUMBER,
				'default' => 500,
				'render_type' => 'none',
				'frontend_available' => true,
			]
		);

		$this->add_control(
			'direction',
			[
				'label' => esc_html__( 'Direction', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => 'ltr',
				'options' => [
					'ltr' => esc_html__( 'Left', 'elementor' ),
					'rtl' => esc_html__( 'Right', 'elementor' ),
				],
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_style_navigation',
			[
				'label' => esc_html__( 'Navigation', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
				'condition' => [
					'navigation' => [ 'arrows', 'dots', 'both' ],
				],
			]
		);

		$this->add_control(
			'heading_style_arrows',
			[
				'label' => esc_html__( 'Arrows', 'elementor' ),
				'type' => Controls_Manager::HEADING,
				'separator' => 'before',
				'condition' => [
					'navigation' => [ 'arrows', 'both' ],
				],
			]
		);

		$this->add_control(
			'arrows_position',
			[
				'label' => esc_html__( 'Position', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => 'inside',
				'options' => [
					'inside' => esc_html__( 'Inside', 'elementor' ),
					'outside' => esc_html__( 'Outside', 'elementor' ),
				],
				'prefix_class' => 'elementor-arrows-position-',
				'condition' => [
					'navigation' => [ 'arrows', 'both' ],
				],
			]
		);

		$this->add_control(
			'arrows_size',
			[
				'label' => esc_html__( 'Size', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'min' => 20,
						'max' => 60,
					],
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-swiper-button.elementor-swiper-button-prev, {{WRAPPER}} .elementor-swiper-button.elementor-swiper-button-next' => 'font-size: {{SIZE}}{{UNIT}};',
				],
				'condition' => [
					'navigation' => [ 'arrows', 'both' ],
				],
			]
		);

		$this->add_control(
			'arrows_color',
			[
				'label' => esc_html__( 'Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'{{WRAPPER}} .elementor-swiper-button.elementor-swiper-button-prev, {{WRAPPER}} .elementor-swiper-button.elementor-swiper-button-next' => 'color: {{VALUE}};',
				],
				'condition' => [
					'navigation' => [ 'arrows', 'both' ],
				],
			]
		);

		$this->add_control(
			'heading_style_dots',
			[
				'label' => esc_html__( 'Dots', 'elementor' ),
				'type' => Controls_Manager::HEADING,
				'separator' => 'before',
				'condition' => [
					'navigation' => [ 'dots', 'both' ],
				],
			]
		);

		$this->add_control(
			'dots_position',
			[
				'label' => esc_html__( 'Position', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => 'outside',
				'options' => [
					'outside' => esc_html__( 'Outside', 'elementor' ),
					'inside' => esc_html__( 'Inside', 'elementor' ),
				],
				'prefix_class' => 'elementor-pagination-position-',
				'condition' => [
					'navigation' => [ 'dots', 'both' ],
				],
			]
		);

		$this->add_control(
			'dots_size',
			[
				'label' => esc_html__( 'Size', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'min' => 5,
						'max' => 10,
					],
				],
				'selectors' => [
					'{{WRAPPER}} .swiper-pagination-bullet' => 'width: {{SIZE}}{{UNIT}}; height: {{SIZE}}{{UNIT}};',
				],
				'condition' => [
					'navigation' => [ 'dots', 'both' ],
				],
			]
		);

		$this->add_control(
			'dots_color',
			[
				'label' => esc_html__( 'Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'{{WRAPPER}} .swiper-pagination-bullet' => 'background: {{VALUE}};',
				],
				'condition' => [
					'navigation' => [ 'dots', 'both' ],
				],
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_style_image',
			[
				'label' => esc_html__( 'Image', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->add_responsive_control(
			'gallery_vertical_align',
			[
				'label' => esc_html__( 'Vertical Align', 'elementor' ),
				'type' => Controls_Manager::CHOOSE,
				'options' => [
					'flex-start' => [
						'title' => esc_html__( 'Start', 'elementor' ),
						'icon' => 'eicon-v-align-top',
					],
					'center' => [
						'title' => esc_html__( 'Center', 'elementor' ),
						'icon' => 'eicon-v-align-middle',
					],
					'flex-end' => [
						'title' => esc_html__( 'End', 'elementor' ),
						'icon' => 'eicon-v-align-bottom',
					],
				],
				'condition' => [
					'slides_to_show!' => '1',
				],
				'selectors' => [
					'{{WRAPPER}} .swiper-wrapper' => 'display: flex; align-items: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'image_spacing',
			[
				'label' => esc_html__( 'Spacing', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'options' => [
					'' => esc_html__( 'Default', 'elementor' ),
					'custom' => esc_html__( 'Custom', 'elementor' ),
				],
				'default' => '',
				'condition' => [
					'slides_to_show!' => '1',
				],
			]
		);

		$this->add_control(
			'image_spacing_custom',
			[
				'label' => esc_html__( 'Image Spacing', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'max' => 100,
					],
				],
				'default' => [
					'size' => 20,
				],
				'show_label' => false,
				'condition' => [
					'image_spacing' => 'custom',
					'slides_to_show!' => '1',
				],
				'frontend_available' => true,
				'render_type' => 'none',
				'separator' => 'after',
			]
		);

		$this->add_group_control(
			Group_Control_Border::get_type(),
			[
				'name' => 'image_border',
				'selector' => '{{WRAPPER}} .elementor-image-carousel-wrapper .elementor-image-carousel .swiper-slide-image',
			]
		);

		$this->add_control(
			'image_border_radius',
			[
				'label' => esc_html__( 'Border Radius', 'elementor' ),
				'type' => Controls_Manager::DIMENSIONS,
				'size_units' => [ 'px', '%' ],
				'selectors' => [
					'{{WRAPPER}} .elementor-image-carousel-wrapper .elementor-image-carousel .swiper-slide-image' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
				],
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_caption',
			[
				'label' => esc_html__( 'Caption', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
				'condition' => [
					'caption_type!' => '',
				],
			]
		);

		$this->add_control(
			'caption_align',
			[
				'label' => esc_html__( 'Alignment', 'elementor' ),
				'type' => Controls_Manager::CHOOSE,
				'options' => [
					'left' => [
						'title' => esc_html__( 'Left', 'elementor' ),
						'icon' => 'eicon-text-align-left',
					],
					'center' => [
						'title' => esc_html__( 'Center', 'elementor' ),
						'icon' => 'eicon-text-align-center',
					],
					'right' => [
						'title' => esc_html__( 'Right', 'elementor' ),
						'icon' => 'eicon-text-align-right',
					],
					'justify' => [
						'title' => esc_html__( 'Justified', 'elementor' ),
						'icon' => 'eicon-text-align-justify',
					],
				],
				'default' => 'center',
				'selectors' => [
					'{{WRAPPER}} .elementor-image-carousel-caption' => 'text-align: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'caption_text_color',
			[
				'label' => esc_html__( 'Text Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'selectors' => [
					'{{WRAPPER}} .elementor-image-carousel-caption' => 'color: {{VALUE}};',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			[
				'name' => 'caption_typography',
				'global' => [
					'default' => Global_Colors::COLOR_ACCENT,
				],
				'selector' => '{{WRAPPER}} .elementor-image-carousel-caption',
			]
		);

		$this->add_group_control(
			Group_Control_Text_Shadow::get_type(),
			[
				'name' => 'caption_shadow',
				'selector' => '{{WRAPPER}} .elementor-image-carousel-caption',
			]
		);

		$this->end_controls_section();

	}

	/**
	 * Render image carousel widget output on the frontend.
	 *
	 * Written in PHP and used to generate the final HTML.
	 *
	 * @since 1.0.0
	 * @access protected
	 */
	protected function render() {
		$settings = $this->get_settings_for_display();

		if ( empty( $settings['carousel'] ) ) {
			return;
		}

		$slides = [];

		foreach ( $settings['carousel'] as $index => $attachment ) {
			$image_url = Group_Control_Image_Size::get_attachment_image_src( $attachment['id'], 'thumbnail', $settings );

			if ( ! $image_url && isset( $attachment['url'] ) ) {
				$image_url = $attachment['url'];
			}

			$image_html = '<img class="swiper-slide-image" src="' . esc_attr( $image_url ) . '" alt="' . esc_attr( Control_Media::get_image_alt( $attachment ) ) . '" />';

			$link_tag = '';

			$link = $this->get_link_url( $attachment, $settings );

			if ( $link ) {
				$link_key = 'link_' . $index;

				$this->add_lightbox_data_attributes( $link_key, $attachment['id'], $settings['open_lightbox'], $this->get_id() );

				if ( Plugin::$instance->editor->is_edit_mode() ) {
					$this->add_render_attribute( $link_key, [
						'class' => 'elementor-clickable',
					] );
				}

				$this->add_link_attributes( $link_key, $link );

				$link_tag = '<a ' . $this->get_render_attribute_string( $link_key ) . '>';
			}

			$image_caption = $this->get_image_caption( $attachment );

			$slide_html = '<div class="swiper-slide">' . $link_tag . '<figure class="swiper-slide-inner">' . $image_html;

			if ( ! empty( $image_caption ) ) {
				$slide_html .= '<figcaption class="elementor-image-carousel-caption">' . wp_kses_post( $image_caption ) . '</figcaption>';
			}

			$slide_html .= '</figure>';

			if ( $link ) {
				$slide_html .= '</a>';
			}

			$slide_html .= '</div>';

			$slides[] = $slide_html;

		}

		if ( empty( $slides ) ) {
			return;
		}

		$this->add_render_attribute( [
			'carousel' => [
				'class' => 'elementor-image-carousel swiper-wrapper',
			],
			'carousel-wrapper' => [
				'class' => 'elementor-image-carousel-wrapper swiper-container',
				'dir' => $settings['direction'],
			],
		] );

		$show_dots = ( in_array( $settings['navigation'], [ 'dots', 'both' ] ) );
		$show_arrows = ( in_array( $settings['navigation'], [ 'arrows', 'both' ] ) );

		if ( 'yes' === $settings['image_stretch'] ) {
			$this->add_render_attribute( 'carousel', 'class', 'swiper-image-stretch' );
		}

		$slides_count = count( $settings['carousel'] );

		?>
		<div <?php $this->print_render_attribute_string( 'carousel-wrapper' ); ?>>
			<div <?php $this->print_render_attribute_string( 'carousel' ); ?>>
				<?php // PHPCS - $slides contains the slides content, all the relevent content is escaped above. ?>
				<?php echo implode( '', $slides ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>
			</div>
			<?php if ( 1 < $slides_count ) : ?>
				<?php if ( $show_dots ) : ?>
					<div class="swiper-pagination"></div>
				<?php endif; ?>
				<?php if ( $show_arrows ) : ?>
					<div class="elementor-swiper-button elementor-swiper-button-prev">
						<i class="eicon-chevron-left" aria-hidden="true"></i>
						<span class="elementor-screen-only"><?php echo esc_html__( 'Previous', 'elementor' ); ?></span>
					</div>
					<div class="elementor-swiper-button elementor-swiper-button-next">
						<i class="eicon-chevron-right" aria-hidden="true"></i>
						<span class="elementor-screen-only"><?php echo esc_html__( 'Next', 'elementor' ); ?></span>
					</div>
				<?php endif; ?>
			<?php endif; ?>
		</div>
		<?php
	}

	/**
	 * Retrieve image carousel link URL.
	 *
	 * @since 1.0.0
	 * @access private
	 *
	 * @param array $attachment
	 * @param object $instance
	 *
	 * @return array|string|false An array/string containing the attachment URL, or false if no link.
	 */
	private function get_link_url( $attachment, $instance ) {
		if ( 'none' === $instance['link_to'] ) {
			return false;
		}

		if ( 'custom' === $instance['link_to'] ) {
			if ( empty( $instance['link']['url'] ) ) {
				return false;
			}

			return $instance['link'];
		}

		return [
			'url' => wp_get_attachment_url( $attachment['id'] ),
		];
	}

	/**
	 * Retrieve image carousel caption.
	 *
	 * @since 1.2.0
	 * @access private
	 *
	 * @param array $attachment
	 *
	 * @return string The caption of the image.
	 */
	private function get_image_caption( $attachment ) {
		$caption_type = $this->get_settings_for_display( 'caption_type' );

		if ( empty( $caption_type ) ) {
			return '';
		}

		$attachment_post = get_post( $attachment['id'] );

		if ( 'caption' === $caption_type ) {
			return $attachment_post->post_excerpt;
		}

		if ( 'title' === $caption_type ) {
			return $attachment_post->post_title;
		}

		return $attachment_post->post_content;
	}
}
includes/widgets/tabs.php000064400000036571151327220420011474 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

use Elementor\Core\Kits\Documents\Tabs\Global_Colors;
use Elementor\Core\Kits\Documents\Tabs\Global_Typography;

/**
 * Elementor tabs widget.
 *
 * Elementor widget that displays vertical or horizontal tabs with different
 * pieces of content.
 *
 * @since 1.0.0
 */
class Widget_Tabs extends Widget_Base {

	/**
	 * Get widget name.
	 *
	 * Retrieve tabs widget name.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget name.
	 */
	public function get_name() {
		return 'tabs';
	}

	/**
	 * Get widget title.
	 *
	 * Retrieve tabs widget title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget title.
	 */
	public function get_title() {
		return esc_html__( 'Tabs', 'elementor' );
	}

	/**
	 * Get widget icon.
	 *
	 * Retrieve tabs widget icon.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget icon.
	 */
	public function get_icon() {
		return 'eicon-tabs';
	}

	/**
	 * Get widget keywords.
	 *
	 * Retrieve the list of keywords the widget belongs to.
	 *
	 * @since 2.1.0
	 * @access public
	 *
	 * @return array Widget keywords.
	 */
	public function get_keywords() {
		return [ 'tabs', 'accordion', 'toggle' ];
	}

	/**
	 * Register tabs widget controls.
	 *
	 * Adds different input fields to allow the user to change and customize the widget settings.
	 *
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		$this->start_controls_section(
			'section_tabs',
			[
				'label' => esc_html__( 'Tabs', 'elementor' ),
			]
		);

		$repeater = new Repeater();

		$repeater->add_control(
			'tab_title',
			[
				'label' => esc_html__( 'Title & Description', 'elementor' ),
				'type' => Controls_Manager::TEXT,
				'default' => esc_html__( 'Tab Title', 'elementor' ),
				'placeholder' => esc_html__( 'Tab Title', 'elementor' ),
				'label_block' => true,
				'dynamic' => [
					'active' => true,
				],
			]
		);

		$repeater->add_control(
			'tab_content',
			[
				'label' => esc_html__( 'Content', 'elementor' ),
				'default' => esc_html__( 'Tab Content', 'elementor' ),
				'placeholder' => esc_html__( 'Tab Content', 'elementor' ),
				'type' => Controls_Manager::WYSIWYG,
				'show_label' => false,
			]
		);

		$this->add_control(
			'tabs',
			[
				'label' => esc_html__( 'Tabs Items', 'elementor' ),
				'type' => Controls_Manager::REPEATER,
				'fields' => $repeater->get_controls(),
				'default' => [
					[
						'tab_title' => esc_html__( 'Tab #1', 'elementor' ),
						'tab_content' => esc_html__( 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut elit tellus, luctus nec ullamcorper mattis, pulvinar dapibus leo.', 'elementor' ),
					],
					[
						'tab_title' => esc_html__( 'Tab #2', 'elementor' ),
						'tab_content' => esc_html__( 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut elit tellus, luctus nec ullamcorper mattis, pulvinar dapibus leo.', 'elementor' ),
					],
				],
				'title_field' => '{{{ tab_title }}}',
			]
		);

		$this->add_control(
			'view',
			[
				'label' => esc_html__( 'View', 'elementor' ),
				'type' => Controls_Manager::HIDDEN,
				'default' => 'traditional',
			]
		);

		$this->add_control(
			'type',
			[
				'label' => esc_html__( 'Position', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => 'horizontal',
				'options' => [
					'horizontal' => esc_html__( 'Horizontal', 'elementor' ),
					'vertical' => esc_html__( 'Vertical', 'elementor' ),
				],
				'prefix_class' => 'elementor-tabs-view-',
				'separator' => 'before',
			]
		);

		$this->add_control(
			'tabs_align_horizontal',
			[
				'label' => esc_html__( 'Alignment', 'elementor' ),
				'type' => Controls_Manager::CHOOSE,
				'options' => [
					'' => [
						'title' => esc_html__( 'Start', 'elementor' ),
						'icon' => 'eicon-h-align-left',
					],
					'center' => [
						'title' => esc_html__( 'Center', 'elementor' ),
						'icon' => 'eicon-h-align-center',
					],
					'end' => [
						'title' => esc_html__( 'End', 'elementor' ),
						'icon' => 'eicon-h-align-right',
					],
					'stretch' => [
						'title' => esc_html__( 'Justified', 'elementor' ),
						'icon' => 'eicon-h-align-stretch',
					],
				],
				'prefix_class' => 'elementor-tabs-alignment-',
				'condition' => [
					'type' => 'horizontal',
				],
			]
		);

		$this->add_control(
			'tabs_align_vertical',
			[
				'label' => esc_html__( 'Alignment', 'elementor' ),
				'type' => Controls_Manager::CHOOSE,
				'options' => [
					'' => [
						'title' => esc_html__( 'Start', 'elementor' ),
						'icon' => 'eicon-v-align-top',
					],
					'center' => [
						'title' => esc_html__( 'Center', 'elementor' ),
						'icon' => 'eicon-v-align-middle',
					],
					'end' => [
						'title' => esc_html__( 'End', 'elementor' ),
						'icon' => 'eicon-v-align-bottom',
					],
					'stretch' => [
						'title' => esc_html__( 'Justified', 'elementor' ),
						'icon' => 'eicon-v-align-stretch',
					],
				],
				'prefix_class' => 'elementor-tabs-alignment-',
				'condition' => [
					'type' => 'vertical',
				],
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_tabs_style',
			[
				'label' => esc_html__( 'Tabs', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->add_control(
			'navigation_width',
			[
				'label' => esc_html__( 'Navigation Width', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'default' => [
					'unit' => '%',
				],
				'range' => [
					'%' => [
						'min' => 10,
						'max' => 50,
					],
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-tabs-wrapper' => 'width: {{SIZE}}{{UNIT}}',
				],
				'condition' => [
					'type' => 'vertical',
				],
			]
		);

		$this->add_control(
			'border_width',
			[
				'label' => esc_html__( 'Border Width', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'default' => [
					'size' => 1,
				],
				'range' => [
					'px' => [
						'min' => 0,
						'max' => 10,
					],
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-tab-title, {{WRAPPER}} .elementor-tab-title:before, {{WRAPPER}} .elementor-tab-title:after, {{WRAPPER}} .elementor-tab-content, {{WRAPPER}} .elementor-tabs-content-wrapper' => 'border-width: {{SIZE}}{{UNIT}};',
				],
			]
		);

		$this->add_control(
			'border_color',
			[
				'label' => esc_html__( 'Border Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'{{WRAPPER}} .elementor-tab-mobile-title, {{WRAPPER}} .elementor-tab-desktop-title.elementor-active, {{WRAPPER}} .elementor-tab-title:before, {{WRAPPER}} .elementor-tab-title:after, {{WRAPPER}} .elementor-tab-content, {{WRAPPER}} .elementor-tabs-content-wrapper' => 'border-color: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'background_color',
			[
				'label' => esc_html__( 'Background Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'{{WRAPPER}} .elementor-tab-desktop-title.elementor-active' => 'background-color: {{VALUE}};',
					'{{WRAPPER}} .elementor-tabs-content-wrapper' => 'background-color: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'heading_title',
			[
				'label' => esc_html__( 'Title', 'elementor' ),
				'type' => Controls_Manager::HEADING,
				'separator' => 'before',
			]
		);

		$this->add_control(
			'tab_color',
			[
				'label' => esc_html__( 'Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'{{WRAPPER}} .elementor-tab-title, {{WRAPPER}} .elementor-tab-title a' => 'color: {{VALUE}}',
				],
				'global' => [
					'default' => Global_Colors::COLOR_PRIMARY,
				],
			]
		);

		$this->add_control(
			'tab_active_color',
			[
				'label' => esc_html__( 'Active Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'{{WRAPPER}} .elementor-tab-title.elementor-active,
					 {{WRAPPER}} .elementor-tab-title.elementor-active a' => 'color: {{VALUE}}',
				],
				'global' => [
					'default' => Global_Colors::COLOR_ACCENT,
				],
			]
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			[
				'name' => 'tab_typography',
				'selector' => '{{WRAPPER}} .elementor-tab-title',
				'global' => [
					'default' => Global_Typography::TYPOGRAPHY_PRIMARY,
				],
			]
		);

		$this->add_group_control(
			Group_Control_Text_Shadow::get_type(),
			[
				'name' => 'title_shadow',
				'selector' => '{{WRAPPER}} .elementor-tab-title',
			]
		);

		$this->add_control(
			'title_align',
			[
				'label' => esc_html__( 'Alignment', 'elementor' ),
				'type' => Controls_Manager::CHOOSE,
				'options' => [
					'left' => [
						'title' => esc_html__( 'Left', 'elementor' ),
						'icon' => 'eicon-text-align-left',
					],
					'center' => [
						'title' => esc_html__( 'Center', 'elementor' ),
						'icon' => 'eicon-text-align-center',
					],
					'right' => [
						'title' => esc_html__( 'Right', 'elementor' ),
						'icon' => 'eicon-text-align-right',
					],
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-tab-title' => 'text-align: {{VALUE}};',
				],
				'condition' => [
					'tabs_align' => 'stretch',
				],
			]
		);

		$this->add_control(
			'heading_content',
			[
				'label' => esc_html__( 'Content', 'elementor' ),
				'type' => Controls_Manager::HEADING,
				'separator' => 'before',
			]
		);

		$this->add_control(
			'content_color',
			[
				'label' => esc_html__( 'Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'{{WRAPPER}} .elementor-tab-content' => 'color: {{VALUE}};',
				],
				'global' => [
					'default' => Global_Colors::COLOR_TEXT,
				],
			]
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			[
				'name' => 'content_typography',
				'selector' => '{{WRAPPER}} .elementor-tab-content',
				'global' => [
					'default' => Global_Typography::TYPOGRAPHY_TEXT,
				],
			]
		);

		$this->add_group_control(
			Group_Control_Text_Shadow::get_type(),
			[
				'name' => 'content_shadow',
				'selector' => '{{WRAPPER}} .elementor-tab-content',
			]
		);

		$this->end_controls_section();
	}

	/**
	 * Render tabs widget output on the frontend.
	 *
	 * Written in PHP and used to generate the final HTML.
	 *
	 * @since 1.0.0
	 * @access protected
	 */
	protected function render() {
		$tabs = $this->get_settings_for_display( 'tabs' );

		$id_int = substr( $this->get_id_int(), 0, 3 );

		$a11y_improvements_experiment = Plugin::$instance->experiments->is_feature_active( 'a11y_improvements' );

		$this->add_render_attribute( 'elementor-tabs', 'class', 'elementor-tabs' );

		?>
		<div <?php $this->print_render_attribute_string( 'elementor-tabs' ); ?>>
			<div class="elementor-tabs-wrapper" role="tablist" >
				<?php
				foreach ( $tabs as $index => $item ) :
					$tab_count = $index + 1;
					$tab_title_setting_key = $this->get_repeater_setting_key( 'tab_title', 'tabs', $index );
					$tab_title = $a11y_improvements_experiment ? $item['tab_title'] : '<a href="">' . $item['tab_title'] . '</a>';

					$this->add_render_attribute( $tab_title_setting_key, [
						'id' => 'elementor-tab-title-' . $id_int . $tab_count,
						'class' => [ 'elementor-tab-title', 'elementor-tab-desktop-title' ],
						'aria-selected' => 1 === $tab_count ? 'true' : 'false',
						'data-tab' => $tab_count,
						'role' => 'tab',
						'tabindex' => 1 === $tab_count ? '0' : '-1',
						'aria-controls' => 'elementor-tab-content-' . $id_int . $tab_count,
						'aria-expanded' => 'false',
					] );
					?>
					<div <?php $this->print_render_attribute_string( $tab_title_setting_key ); ?>><?php
						// PHPCS - the main text of a widget should not be escaped.
						echo $tab_title; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
					?></div>
				<?php endforeach; ?>
			</div>
			<div class="elementor-tabs-content-wrapper" role="tablist" aria-orientation="vertical">
				<?php
				foreach ( $tabs as $index => $item ) :
					$tab_count = $index + 1;
					$hidden = 1 === $tab_count ? 'false' : 'hidden';
					$tab_content_setting_key = $this->get_repeater_setting_key( 'tab_content', 'tabs', $index );

					$tab_title_mobile_setting_key = $this->get_repeater_setting_key( 'tab_title_mobile', 'tabs', $tab_count );

					$this->add_render_attribute( $tab_content_setting_key, [
						'id' => 'elementor-tab-content-' . $id_int . $tab_count,
						'class' => [ 'elementor-tab-content', 'elementor-clearfix' ],
						'data-tab' => $tab_count,
						'role' => 'tabpanel',
						'aria-labelledby' => 'elementor-tab-title-' . $id_int . $tab_count,
						'tabindex' => '0',
						'hidden' => $hidden,
					] );

					$this->add_render_attribute( $tab_title_mobile_setting_key, [
						'class' => [ 'elementor-tab-title', 'elementor-tab-mobile-title' ],
						'aria-selected' => 1 === $tab_count ? 'true' : 'false',
						'data-tab' => $tab_count,
						'role' => 'tab',
						'tabindex' => 1 === $tab_count ? '0' : '-1',
						'aria-controls' => 'elementor-tab-content-' . $id_int . $tab_count,
						'aria-expanded' => 'false',
					] );

					$this->add_inline_editing_attributes( $tab_content_setting_key, 'advanced' );
					?>
					<div <?php $this->print_render_attribute_string( $tab_title_mobile_setting_key ); ?>><?php
						$this->print_unescaped_setting( 'tab_title', 'tabs', $index );
					?></div>
					<div <?php $this->print_render_attribute_string( $tab_content_setting_key ); ?>><?php
						$this->print_text_editor( $item['tab_content'] );
					?></div>
				<?php endforeach; ?>
			</div>
		</div>
		<?php
	}

	/**
	 * Render tabs widget output in the editor.
	 *
	 * Written as a Backbone JavaScript template and used to generate the live preview.
	 *
	 * @since 2.9.0
	 * @access protected
	 */
	protected function content_template() {
		?>
		<div class="elementor-tabs" role="tablist" aria-orientation="vertical">
			<# if ( settings.tabs ) {
				var elementUid = view.getIDInt().toString().substr( 0, 3 ); #>
				<div class="elementor-tabs-wrapper" role="tablist">
					<# _.each( settings.tabs, function( item, index ) {
						var tabCount = index + 1,
							tabUid = elementUid + tabCount,
							tabTitleKey = 'tab-title-' + tabUid;

					view.addRenderAttribute( tabTitleKey, {
						'id': 'elementor-tab-title-' + tabUid,
						'class': [ 'elementor-tab-title','elementor-tab-desktop-title' ],
						'data-tab': tabCount,
						'role': 'tab',
						'tabindex': 1 === tabCount ? '0' : '-1',
						'aria-controls': 'elementor-tab-content-' + tabUid,
						'aria-expanded': 'false',
						} );
					#>
						<div {{{ view.getRenderAttributeString( tabTitleKey ) }}}>{{{ item.tab_title }}}</div>
					<# } ); #>
				</div>
				<div class="elementor-tabs-content-wrapper">
					<# _.each( settings.tabs, function( item, index ) {
						var tabCount = index + 1,
							tabContentKey = view.getRepeaterSettingKey( 'tab_content', 'tabs',index );

						view.addRenderAttribute( tabContentKey, {
							'id': 'elementor-tab-content-' + elementUid + tabCount,
							'class': [ 'elementor-tab-content', 'elementor-clearfix', 'elementor-repeater-item-' + item._id ],
							'data-tab': tabCount,
							'role' : 'tabpanel',
							'aria-labelledby' : 'elementor-tab-title-' + elementUid + tabCount
						} );

						view.addInlineEditingAttributes( tabContentKey, 'advanced' ); #>
						<div class="elementor-tab-title elementor-tab-mobile-title" data-tab="{{ tabCount }}" role="tab">{{{ item.tab_title }}}</div>
						<div {{{ view.getRenderAttributeString( tabContentKey ) }}}>{{{ item.tab_content }}}</div>
					<# } ); #>
				</div>
			<# } #>
		</div>
		<?php
	}
}
includes/widgets/icon.php000064400000026625151327220420011472 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

use Elementor\Core\Kits\Documents\Tabs\Global_Colors;

/**
 * Elementor icon widget.
 *
 * Elementor widget that displays an icon from over 600+ icons.
 *
 * @since 1.0.0
 */
class Widget_Icon extends Widget_Base {

	/**
	 * Get widget name.
	 *
	 * Retrieve icon widget name.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget name.
	 */
	public function get_name() {
		return 'icon';
	}

	/**
	 * Get widget title.
	 *
	 * Retrieve icon widget title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget title.
	 */
	public function get_title() {
		return esc_html__( 'Icon', 'elementor' );
	}

	/**
	 * Get widget icon.
	 *
	 * Retrieve icon widget icon.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget icon.
	 */
	public function get_icon() {
		return 'eicon-favorite';
	}

	/**
	 * Get widget categories.
	 *
	 * Retrieve the list of categories the icon widget belongs to.
	 *
	 * Used to determine where to display the widget in the editor.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @return array Widget categories.
	 */
	public function get_categories() {
		return [ 'basic' ];
	}

	/**
	 * Get widget keywords.
	 *
	 * Retrieve the list of keywords the widget belongs to.
	 *
	 * @since 2.1.0
	 * @access public
	 *
	 * @return array Widget keywords.
	 */
	public function get_keywords() {
		return [ 'icon' ];
	}

	/**
	 * Register icon widget controls.
	 *
	 * Adds different input fields to allow the user to change and customize the widget settings.
	 *
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		$this->start_controls_section(
			'section_icon',
			[
				'label' => esc_html__( 'Icon', 'elementor' ),
			]
		);

		$this->add_control(
			'selected_icon',
			[
				'label' => esc_html__( 'Icon', 'elementor' ),
				'type' => Controls_Manager::ICONS,
				'fa4compatibility' => 'icon',
				'default' => [
					'value' => 'fas fa-star',
					'library' => 'fa-solid',
				],
			]
		);

		$this->add_control(
			'view',
			[
				'label' => esc_html__( 'View', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'options' => [
					'default' => esc_html__( 'Default', 'elementor' ),
					'stacked' => esc_html__( 'Stacked', 'elementor' ),
					'framed' => esc_html__( 'Framed', 'elementor' ),
				],
				'default' => 'default',
				'prefix_class' => 'elementor-view-',
			]
		);

		$this->add_control(
			'shape',
			[
				'label' => esc_html__( 'Shape', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'options' => [
					'circle' => esc_html__( 'Circle', 'elementor' ),
					'square' => esc_html__( 'Square', 'elementor' ),
				],
				'default' => 'circle',
				'condition' => [
					'view!' => 'default',
				],
				'prefix_class' => 'elementor-shape-',
			]
		);

		$this->add_control(
			'link',
			[
				'label' => esc_html__( 'Link', 'elementor' ),
				'type' => Controls_Manager::URL,
				'dynamic' => [
					'active' => true,
				],
				'placeholder' => esc_html__( 'https://your-link.com', 'elementor' ),
			]
		);

		$this->add_responsive_control(
			'align',
			[
				'label' => esc_html__( 'Alignment', 'elementor' ),
				'type' => Controls_Manager::CHOOSE,
				'options' => [
					'left' => [
						'title' => esc_html__( 'Left', 'elementor' ),
						'icon' => 'eicon-text-align-left',
					],
					'center' => [
						'title' => esc_html__( 'Center', 'elementor' ),
						'icon' => 'eicon-text-align-center',
					],
					'right' => [
						'title' => esc_html__( 'Right', 'elementor' ),
						'icon' => 'eicon-text-align-right',
					],
				],
				'default' => 'center',
				'selectors' => [
					'{{WRAPPER}} .elementor-icon-wrapper' => 'text-align: {{VALUE}};',
				],
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_style_icon',
			[
				'label' => esc_html__( 'Icon', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->start_controls_tabs( 'icon_colors' );

		$this->start_controls_tab(
			'icon_colors_normal',
			[
				'label' => esc_html__( 'Normal', 'elementor' ),
			]
		);

		$this->add_control(
			'primary_color',
			[
				'label' => esc_html__( 'Primary Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'selectors' => [
					'{{WRAPPER}}.elementor-view-stacked .elementor-icon' => 'background-color: {{VALUE}};',
					'{{WRAPPER}}.elementor-view-framed .elementor-icon, {{WRAPPER}}.elementor-view-default .elementor-icon' => 'color: {{VALUE}}; border-color: {{VALUE}};',
					'{{WRAPPER}}.elementor-view-framed .elementor-icon, {{WRAPPER}}.elementor-view-default .elementor-icon svg' => 'fill: {{VALUE}};',
				],
				'global' => [
					'default' => Global_Colors::COLOR_PRIMARY,
				],
			]
		);

		$this->add_control(
			'secondary_color',
			[
				'label' => esc_html__( 'Secondary Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'condition' => [
					'view!' => 'default',
				],
				'selectors' => [
					'{{WRAPPER}}.elementor-view-framed .elementor-icon' => 'background-color: {{VALUE}};',
					'{{WRAPPER}}.elementor-view-stacked .elementor-icon' => 'color: {{VALUE}};',
					'{{WRAPPER}}.elementor-view-stacked .elementor-icon svg' => 'fill: {{VALUE}};',
				],
			]
		);

		$this->end_controls_tab();

		$this->start_controls_tab(
			'icon_colors_hover',
			[
				'label' => esc_html__( 'Hover', 'elementor' ),
			]
		);

		$this->add_control(
			'hover_primary_color',
			[
				'label' => esc_html__( 'Primary Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'selectors' => [
					'{{WRAPPER}}.elementor-view-stacked .elementor-icon:hover' => 'background-color: {{VALUE}};',
					'{{WRAPPER}}.elementor-view-framed .elementor-icon:hover, {{WRAPPER}}.elementor-view-default .elementor-icon:hover' => 'color: {{VALUE}}; border-color: {{VALUE}};',
					'{{WRAPPER}}.elementor-view-framed .elementor-icon:hover, {{WRAPPER}}.elementor-view-default .elementor-icon:hover svg' => 'fill: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'hover_secondary_color',
			[
				'label' => esc_html__( 'Secondary Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'condition' => [
					'view!' => 'default',
				],
				'selectors' => [
					'{{WRAPPER}}.elementor-view-framed .elementor-icon:hover' => 'background-color: {{VALUE}};',
					'{{WRAPPER}}.elementor-view-stacked .elementor-icon:hover' => 'color: {{VALUE}};',
					'{{WRAPPER}}.elementor-view-stacked .elementor-icon:hover svg' => 'fill: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'hover_animation',
			[
				'label' => esc_html__( 'Hover Animation', 'elementor' ),
				'type' => Controls_Manager::HOVER_ANIMATION,
			]
		);

		$this->end_controls_tab();

		$this->end_controls_tabs();

		$this->add_responsive_control(
			'size',
			[
				'label' => esc_html__( 'Size', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'min' => 6,
						'max' => 300,
					],
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-icon' => 'font-size: {{SIZE}}{{UNIT}};',
				],
				'separator' => 'before',
			]
		);

		$this->add_control(
			'icon_padding',
			[
				'label' => esc_html__( 'Padding', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'selectors' => [
					'{{WRAPPER}} .elementor-icon' => 'padding: {{SIZE}}{{UNIT}};',
				],
				'range' => [
					'em' => [
						'min' => 0,
						'max' => 5,
					],
				],
				'condition' => [
					'view!' => 'default',
				],
			]
		);

		$this->add_responsive_control(
			'rotate',
			[
				'label' => esc_html__( 'Rotate', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'size_units' => [ 'deg' ],
				'default' => [
					'size' => 0,
					'unit' => 'deg',
				],
				'tablet_default' => [
					'unit' => 'deg',
				],
				'mobile_default' => [
					'unit' => 'deg',
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-icon i, {{WRAPPER}} .elementor-icon svg' => 'transform: rotate({{SIZE}}{{UNIT}});',
				],
			]
		);

		$this->add_control(
			'border_width',
			[
				'label' => esc_html__( 'Border Width', 'elementor' ),
				'type' => Controls_Manager::DIMENSIONS,
				'selectors' => [
					'{{WRAPPER}} .elementor-icon' => 'border-width: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
				],
				'condition' => [
					'view' => 'framed',
				],
			]
		);

		$this->add_control(
			'border_radius',
			[
				'label' => esc_html__( 'Border Radius', 'elementor' ),
				'type' => Controls_Manager::DIMENSIONS,
				'size_units' => [ 'px', '%' ],
				'selectors' => [
					'{{WRAPPER}} .elementor-icon' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
				],
				'condition' => [
					'view!' => 'default',
				],
			]
		);

		$this->end_controls_section();
	}

	/**
	 * Render icon widget output on the frontend.
	 *
	 * Written in PHP and used to generate the final HTML.
	 *
	 * @since 1.0.0
	 * @access protected
	 */
	protected function render() {
		$settings = $this->get_settings_for_display();

		$this->add_render_attribute( 'wrapper', 'class', 'elementor-icon-wrapper' );

		$this->add_render_attribute( 'icon-wrapper', 'class', 'elementor-icon' );

		if ( ! empty( $settings['hover_animation'] ) ) {
			$this->add_render_attribute( 'icon-wrapper', 'class', 'elementor-animation-' . $settings['hover_animation'] );
		}

		$icon_tag = 'div';

		if ( ! empty( $settings['link']['url'] ) ) {
			$this->add_link_attributes( 'icon-wrapper', $settings['link'] );

			$icon_tag = 'a';
		}

		if ( empty( $settings['icon'] ) && ! Icons_Manager::is_migration_allowed() ) {
			// add old default
			$settings['icon'] = 'fa fa-star';
		}

		if ( ! empty( $settings['icon'] ) ) {
			$this->add_render_attribute( 'icon', 'class', $settings['icon'] );
			$this->add_render_attribute( 'icon', 'aria-hidden', 'true' );
		}

		$migrated = isset( $settings['__fa4_migrated']['selected_icon'] );
		$is_new = empty( $settings['icon'] ) && Icons_Manager::is_migration_allowed();

		?>
		<div <?php $this->print_render_attribute_string( 'wrapper' ); ?>>
			<<?php Utils::print_unescaped_internal_string( $icon_tag . ' ' . $this->get_render_attribute_string( 'icon-wrapper' ) ); ?>>
			<?php if ( $is_new || $migrated ) :
				Icons_Manager::render_icon( $settings['selected_icon'], [ 'aria-hidden' => 'true' ] );
			else : ?>
				<i <?php $this->print_render_attribute_string( 'icon' ); ?>></i>
			<?php endif; ?>
			</<?php Utils::print_unescaped_internal_string( $icon_tag ); ?>>
		</div>
		<?php
	}

	/**
	 * Render icon widget output in the editor.
	 *
	 * Written as a Backbone JavaScript template and used to generate the live preview.
	 *
	 * @since 2.9.0
	 * @access protected
	 */
	protected function content_template() {
		?>
		<# var link = settings.link.url ? 'href="' + settings.link.url + '"' : '',
				iconHTML = elementor.helpers.renderIcon( view, settings.selected_icon, { 'aria-hidden': true }, 'i' , 'object' ),
				migrated = elementor.helpers.isIconMigrated( settings, 'selected_icon' ),
				iconTag = link ? 'a' : 'div';
		#>
		<div class="elementor-icon-wrapper">
			<{{{ iconTag }}} class="elementor-icon elementor-animation-{{ settings.hover_animation }}" {{{ link }}}>
				<# if ( iconHTML && iconHTML.rendered && ( ! settings.icon || migrated ) ) { #>
					{{{ iconHTML.value }}}
				<# } else { #>
					<i class="{{ settings.icon }}" aria-hidden="true"></i>
				<# } #>
			</{{{ iconTag }}}>
		</div>
		<?php
	}
}
includes/widgets/testimonial.php000064400000037142151327220420013066 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

use Elementor\Core\Kits\Documents\Tabs\Global_Colors;
use Elementor\Core\Kits\Documents\Tabs\Global_Typography;

/**
 * Elementor testimonial widget.
 *
 * Elementor widget that displays customer testimonials that show social proof.
 *
 * @since 1.0.0
 */
class Widget_Testimonial extends Widget_Base {

	/**
	 * Get widget name.
	 *
	 * Retrieve testimonial widget name.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget name.
	 */
	public function get_name() {
		return 'testimonial';
	}

	/**
	 * Get widget title.
	 *
	 * Retrieve testimonial widget title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget title.
	 */
	public function get_title() {
		return esc_html__( 'Testimonial', 'elementor' );
	}

	/**
	 * Get widget icon.
	 *
	 * Retrieve testimonial widget icon.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget icon.
	 */
	public function get_icon() {
		return 'eicon-testimonial';
	}

	/**
	 * Get widget keywords.
	 *
	 * Retrieve the list of keywords the widget belongs to.
	 *
	 * @since 2.1.0
	 * @access public
	 *
	 * @return array Widget keywords.
	 */
	public function get_keywords() {
		return [ 'testimonial', 'blockquote' ];
	}

	/**
	 * Register testimonial widget controls.
	 *
	 * Adds different input fields to allow the user to change and customize the widget settings.
	 *
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		$this->start_controls_section(
			'section_testimonial',
			[
				'label' => esc_html__( 'Testimonial', 'elementor' ),
			]
		);

		$this->add_control(
			'testimonial_content',
			[
				'label' => esc_html__( 'Content', 'elementor' ),
				'type' => Controls_Manager::TEXTAREA,
				'dynamic' => [
					'active' => true,
				],
				'rows' => '10',
				'default' => esc_html__( 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut elit tellus, luctus nec ullamcorper mattis, pulvinar dapibus leo.', 'elementor' ),
			]
		);

		$this->add_control(
			'testimonial_image',
			[
				'label' => esc_html__( 'Choose Image', 'elementor' ),
				'type' => Controls_Manager::MEDIA,
				'dynamic' => [
					'active' => true,
				],
				'default' => [
					'url' => Utils::get_placeholder_image_src(),
				],
			]
		);

		$this->add_group_control(
			Group_Control_Image_Size::get_type(),
			[
				'name' => 'testimonial_image', // Usage: `{name}_size` and `{name}_custom_dimension`, in this case `testimonial_image_size` and `testimonial_image_custom_dimension`.
				'default' => 'full',
				'separator' => 'none',
			]
		);

		$this->add_control(
			'testimonial_name',
			[
				'label' => esc_html__( 'Name', 'elementor' ),
				'type' => Controls_Manager::TEXT,
				'dynamic' => [
					'active' => true,
				],
				'default' => 'John Doe',
			]
		);

		$this->add_control(
			'testimonial_job',
			[
				'label' => esc_html__( 'Title', 'elementor' ),
				'type' => Controls_Manager::TEXT,
				'dynamic' => [
					'active' => true,
				],
				'default' => 'Designer',
			]
		);

		$this->add_control(
			'link',
			[
				'label' => esc_html__( 'Link', 'elementor' ),
				'type' => Controls_Manager::URL,
				'dynamic' => [
					'active' => true,
				],
				'placeholder' => esc_html__( 'https://your-link.com', 'elementor' ),
			]
		);

		$this->add_control(
			'testimonial_image_position',
			[
				'label' => esc_html__( 'Image Position', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => 'aside',
				'options' => [
					'aside' => esc_html__( 'Aside', 'elementor' ),
					'top' => esc_html__( 'Top', 'elementor' ),
				],
				'condition' => [
					'testimonial_image[url]!' => '',
				],
				'separator' => 'before',
				'style_transfer' => true,
			]
		);

		$this->add_responsive_control(
			'testimonial_alignment',
			[
				'label' => esc_html__( 'Alignment', 'elementor' ),
				'type' => Controls_Manager::CHOOSE,
				'default' => 'center',
				'options' => [
					'left'    => [
						'title' => esc_html__( 'Left', 'elementor' ),
						'icon' => 'eicon-text-align-left',
					],
					'center' => [
						'title' => esc_html__( 'Center', 'elementor' ),
						'icon' => 'eicon-text-align-center',
					],
					'right' => [
						'title' => esc_html__( 'Right', 'elementor' ),
						'icon' => 'eicon-text-align-right',
					],
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-testimonial-wrapper' => 'text-align: {{VALUE}}',
				],
				'style_transfer' => true,
			]
		);

		$this->add_control(
			'view',
			[
				'label' => esc_html__( 'View', 'elementor' ),
				'type' => Controls_Manager::HIDDEN,
				'default' => 'traditional',
			]
		);

		$this->end_controls_section();

		// Content.
		$this->start_controls_section(
			'section_style_testimonial_content',
			[
				'label' => esc_html__( 'Content', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->add_control(
			'content_content_color',
			[
				'label' => esc_html__( 'Text Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'global' => [
					'default' => Global_Colors::COLOR_TEXT,
				],
				'default' => '',
				'selectors' => [
					'{{WRAPPER}} .elementor-testimonial-content' => 'color: {{VALUE}};',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			[
				'name' => 'content_typography',
				'global' => [
					'default' => Global_Typography::TYPOGRAPHY_TEXT,
				],
				'selector' => '{{WRAPPER}} .elementor-testimonial-content',
			]
		);

		$this->add_group_control(
			Group_Control_Text_Shadow::get_type(),
			[
				'name' => 'content_shadow',
				'selector' => '{{WRAPPER}} .elementor-testimonial-content',
			]
		);

		$this->end_controls_section();

		// Image.
		$this->start_controls_section(
			'section_style_testimonial_image',
			[
				'label' => esc_html__( 'Image', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
				'condition' => [
					'testimonial_image[url]!' => '',
				],
			]
		);

		$this->add_control(
			'image_size',
			[
				'label' => esc_html__( 'Image Size', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'size_units' => [ 'px' ],
				'range' => [
					'px' => [
						'min' => 20,
						'max' => 200,
					],
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-testimonial-wrapper .elementor-testimonial-image img' => 'width: {{SIZE}}{{UNIT}};height: {{SIZE}}{{UNIT}};',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Border::get_type(),
			[
				'name' => 'image_border',
				'selector' => '{{WRAPPER}} .elementor-testimonial-wrapper .elementor-testimonial-image img',
				'separator' => 'before',
			]
		);

		$this->add_control(
			'image_border_radius',
			[
				'label' => esc_html__( 'Border Radius', 'elementor' ),
				'type' => Controls_Manager::DIMENSIONS,
				'size_units' => [ 'px', '%' ],
				'selectors' => [
					'{{WRAPPER}} .elementor-testimonial-wrapper .elementor-testimonial-image img' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
				],
			]
		);

		$this->end_controls_section();

		// Name.
		$this->start_controls_section(
			'section_style_testimonial_name',
			[
				'label' => esc_html__( 'Name', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->add_control(
			'name_text_color',
			[
				'label' => esc_html__( 'Text Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'global' => [
					'default' => Global_Colors::COLOR_PRIMARY,
				],
				'default' => '',
				'selectors' => [
					'{{WRAPPER}} .elementor-testimonial-name' => 'color: {{VALUE}};',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			[
				'name' => 'name_typography',
				'global' => [
					'default' => Global_Typography::TYPOGRAPHY_PRIMARY,
				],
				'selector' => '{{WRAPPER}} .elementor-testimonial-name',
			]
		);

		$this->add_group_control(
			Group_Control_Text_Shadow::get_type(),
			[
				'name' => 'name_shadow',
				'selector' => '{{WRAPPER}} .elementor-testimonial-name',
			]
		);

		$this->end_controls_section();

		// Job.
		$this->start_controls_section(
			'section_style_testimonial_job',
			[
				'label' => esc_html__( 'Title', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->add_control(
			'job_text_color',
			[
				'label' => esc_html__( 'Text Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'global' => [
					'default' => Global_Colors::COLOR_SECONDARY,
				],
				'default' => '',
				'selectors' => [
					'{{WRAPPER}} .elementor-testimonial-job' => 'color: {{VALUE}};',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			[
				'name' => 'job_typography',
				'global' => [
					'default' => Global_Typography::TYPOGRAPHY_SECONDARY,
				],
				'selector' => '{{WRAPPER}} .elementor-testimonial-job',
			]
		);

		$this->add_group_control(
			Group_Control_Text_Shadow::get_type(),
			[
				'name' => 'job_shadow',
				'selector' => '{{WRAPPER}} .elementor-testimonial-job',
			]
		);

		$this->end_controls_section();
	}

	/**
	 * Render testimonial widget output on the frontend.
	 *
	 * Written in PHP and used to generate the final HTML.
	 *
	 * @since 1.0.0
	 * @access protected
	 */
	protected function render() {
		$settings = $this->get_settings_for_display();

		$this->add_render_attribute( 'wrapper', 'class', 'elementor-testimonial-wrapper' );

		$this->add_render_attribute( 'meta', 'class', 'elementor-testimonial-meta' );

		if ( $settings['testimonial_image']['url'] ) {
			$this->add_render_attribute( 'meta', 'class', 'elementor-has-image' );
		}

		if ( $settings['testimonial_image_position'] ) {
			$this->add_render_attribute( 'meta', 'class', 'elementor-testimonial-image-position-' . $settings['testimonial_image_position'] );
		}

		$has_content = ! ! $settings['testimonial_content'];
		$has_image = ! ! $settings['testimonial_image']['url'];
		$has_name = ! ! $settings['testimonial_name'];
		$has_job = ! ! $settings['testimonial_job'];

		if ( ! $has_content && ! $has_image && ! $has_name && ! $has_job ) {
			return;
		}

		if ( ! empty( $settings['link']['url'] ) ) {
			$this->add_link_attributes( 'link', $settings['link'] );
		}
		?>
		<div <?php $this->print_render_attribute_string( 'wrapper' ); ?>>
			<?php
			if ( $has_content ) :
				$this->add_render_attribute( 'testimonial_content', 'class', 'elementor-testimonial-content' );
				$this->add_inline_editing_attributes( 'testimonial_content' );
				?>
				<div <?php $this->print_render_attribute_string( 'testimonial_content' ); ?>><?php $this->print_unescaped_setting( 'testimonial_content' ); ?></div>
			<?php endif; ?>

			<?php if ( $has_image || $has_name || $has_job ) : ?>
			<div <?php $this->print_render_attribute_string( 'meta' ); ?>>
				<div class="elementor-testimonial-meta-inner">
					<?php if ( $has_image ) : ?>
						<div class="elementor-testimonial-image">
							<?php
							$image_html = Group_Control_Image_Size::get_attachment_image_html( $settings, 'testimonial_image' );
							if ( ! empty( $settings['link']['url'] ) ) :
								$image_html = '<a ' . $this->get_render_attribute_string( 'link' ) . '>' . $image_html . '</a>';
							endif;
							echo wp_kses_post( $image_html );
							?>
						</div>
					<?php endif; ?>

					<?php if ( $has_name || $has_job ) : ?>
					<div class="elementor-testimonial-details">
						<?php
						if ( $has_name ) :
							$this->add_render_attribute( 'testimonial_name', 'class', 'elementor-testimonial-name' );
							$this->add_inline_editing_attributes( 'testimonial_name', 'none' );

							if ( ! empty( $settings['link']['url'] ) ) :
								?>
								<a <?php $this->print_render_attribute_string( 'testimonial_name' ); ?> <?php $this->print_render_attribute_string( 'link' ); ?>><?php $this->print_unescaped_setting( 'testimonial_name' ); ?></a>
								<?php
							else :
								?>
								<div <?php $this->print_render_attribute_string( 'testimonial_name' ); ?>><?php $this->print_unescaped_setting( 'testimonial_name' ); ?></div>
								<?php
							endif;
						endif; ?>
						<?php
						if ( $has_job ) :
							$this->add_render_attribute( 'testimonial_job', 'class', 'elementor-testimonial-job' );

							$this->add_inline_editing_attributes( 'testimonial_job', 'none' );

							if ( ! empty( $settings['link']['url'] ) ) :
								?>
								<a <?php $this->print_render_attribute_string( 'testimonial_job' ); ?> <?php $this->print_render_attribute_string( 'link' ); ?>><?php $this->print_unescaped_setting( 'testimonial_job' ); ?></a>
								<?php
							else :
								?>
								<div <?php $this->print_render_attribute_string( 'testimonial_job' ); ?>><?php $this->print_unescaped_setting( 'testimonial_job' ); ?></div>
								<?php
							endif;
						endif; ?>
					</div>
					<?php endif; ?>
				</div>
			</div>
			<?php endif; ?>
		</div>
		<?php
	}

	/**
	 * Render testimonial widget output in the editor.
	 *
	 * Written as a Backbone JavaScript template and used to generate the live preview.
	 *
	 * @since 2.9.0
	 * @access protected
	 */
	protected function content_template() {
		?>
		<#
		var image = {
				id: settings.testimonial_image.id,
				url: settings.testimonial_image.url,
				size: settings.testimonial_image_size,
				dimension: settings.testimonial_image_custom_dimension,
				model: view.getEditModel()
			};
		var imageUrl = false, hasImage = '';

		if ( '' !== settings.testimonial_image.url ) {
			imageUrl = elementor.imagesManager.getImageUrl( image );
			hasImage = ' elementor-has-image';

			var imageHtml = '<img src="' + imageUrl + '" alt="testimonial" />';
			if ( settings.link.url ) {
				imageHtml = '<a href="' + settings.link.url + '">' + imageHtml + '</a>';
			}
		}

		var testimonial_image_position = settings.testimonial_image_position ? ' elementor-testimonial-image-position-' + settings.testimonial_image_position : '';
		#>
		<div class="elementor-testimonial-wrapper">
			<# if ( '' !== settings.testimonial_content ) {
				view.addRenderAttribute( 'testimonial_content', 'class', 'elementor-testimonial-content' );

				view.addInlineEditingAttributes( 'testimonial_content' );
				#>
				<div {{{ view.getRenderAttributeString( 'testimonial_content' ) }}}>{{{ settings.testimonial_content }}}</div>
			<# } #>
			<div class="elementor-testimonial-meta{{ hasImage }}{{ testimonial_image_position }}">
				<div class="elementor-testimonial-meta-inner">
					<# if ( imageUrl ) { #>
						<div class="elementor-testimonial-image">{{{ imageHtml }}}</div>
					<# } #>
					<div class="elementor-testimonial-details">
						<?php $this->render_testimonial_description(); ?>
					</div>
				</div>
			</div>
		</div>
		<?php
	}

	protected function render_testimonial_description() {
		?>
		<#
		if ( '' !== settings.testimonial_name ) {
			view.addRenderAttribute( 'testimonial_name', 'class', 'elementor-testimonial-name' );

			view.addInlineEditingAttributes( 'testimonial_name', 'none' );

			if ( settings.link.url ) {
				#>
				<a href="{{{ settings.link.url }}}" {{{ view.getRenderAttributeString( 'testimonial_name' ) }}}>{{{ settings.testimonial_name }}}</a>
				<#
			} else {
				#>
				<div {{{ view.getRenderAttributeString( 'testimonial_name' ) }}}>{{{ settings.testimonial_name }}}</div>
				<#
			}
		}

		if ( '' !== settings.testimonial_job ) {
			view.addRenderAttribute( 'testimonial_job', 'class', 'elementor-testimonial-job' );

			view.addInlineEditingAttributes( 'testimonial_job', 'none' );

			if ( settings.link.url ) {
				#>
				<a href="{{{ settings.link.url }}}" {{{ view.getRenderAttributeString( 'testimonial_job' ) }}}>{{{ settings.testimonial_job }}}</a>
				<#
			} else {
				#>
				<div {{{ view.getRenderAttributeString( 'testimonial_job' ) }}}>{{{ settings.testimonial_job }}}</div>
				<#
			}
		}
		#>
		<?php
	}
}
includes/widgets/toggle.php000064400000045263151327220420012022 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

use Elementor\Core\Kits\Documents\Tabs\Global_Colors;
use Elementor\Core\Kits\Documents\Tabs\Global_Typography;

/**
 * Elementor toggle widget.
 *
 * Elementor widget that displays a collapsible display of content in an toggle
 * style, allowing the user to open multiple items.
 *
 * @since 1.0.0
 */
class Widget_Toggle extends Widget_Base {

	/**
	 * Get widget name.
	 *
	 * Retrieve toggle widget name.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget name.
	 */
	public function get_name() {
		return 'toggle';
	}

	/**
	 * Get widget title.
	 *
	 * Retrieve toggle widget title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget title.
	 */
	public function get_title() {
		return esc_html__( 'Toggle', 'elementor' );
	}

	/**
	 * Get widget icon.
	 *
	 * Retrieve toggle widget icon.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget icon.
	 */
	public function get_icon() {
		return 'eicon-toggle';
	}

	/**
	 * Get widget keywords.
	 *
	 * Retrieve the list of keywords the widget belongs to.
	 *
	 * @since 2.1.0
	 * @access public
	 *
	 * @return array Widget keywords.
	 */
	public function get_keywords() {
		return [ 'tabs', 'accordion', 'toggle' ];
	}

	/**
	 * Register toggle widget controls.
	 *
	 * Adds different input fields to allow the user to change and customize the widget settings.
	 *
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		$this->start_controls_section(
			'section_toggle',
			[
				'label' => esc_html__( 'Toggle', 'elementor' ),
			]
		);

		$repeater = new Repeater();

		$repeater->add_control(
			'tab_title',
			[
				'label' => esc_html__( 'Title & Description', 'elementor' ),
				'type' => Controls_Manager::TEXT,
				'default' => esc_html__( 'Toggle Title', 'elementor' ),
				'label_block' => true,
				'dynamic' => [
					'active' => true,
				],
			]
		);

		$repeater->add_control(
			'tab_content',
			[
				'label' => esc_html__( 'Content', 'elementor' ),
				'type' => Controls_Manager::WYSIWYG,
				'default' => esc_html__( 'Toggle Content', 'elementor' ),
				'show_label' => false,
				'dynamic' => [
					'active' => true,
				],
			]
		);

		$this->add_control(
			'tabs',
			[
				'label' => esc_html__( 'Toggle Items', 'elementor' ),
				'type' => Controls_Manager::REPEATER,
				'fields' => $repeater->get_controls(),
				'default' => [
					[
						'tab_title' => esc_html__( 'Toggle #1', 'elementor' ),
						'tab_content' => esc_html__( 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut elit tellus, luctus nec ullamcorper mattis, pulvinar dapibus leo.', 'elementor' ),
					],
					[
						'tab_title' => esc_html__( 'Toggle #2', 'elementor' ),
						'tab_content' => esc_html__( 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut elit tellus, luctus nec ullamcorper mattis, pulvinar dapibus leo.', 'elementor' ),
					],
				],
				'title_field' => '{{{ tab_title }}}',
			]
		);

		$this->add_control(
			'view',
			[
				'label' => esc_html__( 'View', 'elementor' ),
				'type' => Controls_Manager::HIDDEN,
				'default' => 'traditional',
			]
		);

		$this->add_control(
			'selected_icon',
			[
				'label' => esc_html__( 'Icon', 'elementor' ),
				'type' => Controls_Manager::ICONS,
				'separator' => 'before',
				'fa4compatibility' => 'icon',
				'default' => [
					'value' => 'fas fa-caret' . ( is_rtl() ? '-left' : '-right' ),
					'library' => 'fa-solid',
				],
				'recommended' => [
					'fa-solid' => [
						'chevron-down',
						'angle-down',
						'angle-double-down',
						'caret-down',
						'caret-square-down',
					],
					'fa-regular' => [
						'caret-square-down',
					],
				],
				'label_block' => false,
				'skin' => 'inline',
			]
		);

		$this->add_control(
			'selected_active_icon',
			[
				'label' => esc_html__( 'Active Icon', 'elementor' ),
				'type' => Controls_Manager::ICONS,
				'fa4compatibility' => 'icon_active',
				'default' => [
					'value' => 'fas fa-caret-up',
					'library' => 'fa-solid',
				],
				'recommended' => [
					'fa-solid' => [
						'chevron-up',
						'angle-up',
						'angle-double-up',
						'caret-up',
						'caret-square-up',
					],
					'fa-regular' => [
						'caret-square-up',
					],
				],
				'skin' => 'inline',
				'label_block' => false,
				'condition' => [
					'selected_icon[value]!' => '',
				],
			]
		);

		$this->add_control(
			'title_html_tag',
			[
				'label' => esc_html__( 'Title HTML Tag', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'options' => [
					'h1' => 'H1',
					'h2' => 'H2',
					'h3' => 'H3',
					'h4' => 'H4',
					'h5' => 'H5',
					'h6' => 'H6',
					'div' => 'div',
				],
				'default' => 'div',
				'separator' => 'before',
			]
		);

		$this->add_control(
			'faq_schema',
			[
				'label' => esc_html__( 'FAQ Schema', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'separator' => 'before',
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_toggle_style',
			[
				'label' => esc_html__( 'Toggle', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->add_control(
			'border_width',
			[
				'label' => esc_html__( 'Border Width', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'min' => 0,
						'max' => 10,
					],
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-tab-title' => 'border-width: {{SIZE}}{{UNIT}};',
					'{{WRAPPER}} .elementor-tab-content' => 'border-width: {{SIZE}}{{UNIT}};',
				],
			]
		);

		$this->add_control(
			'border_color',
			[
				'label' => esc_html__( 'Border Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'{{WRAPPER}} .elementor-tab-content' => 'border-bottom-color: {{VALUE}};',
					'{{WRAPPER}} .elementor-tab-title' => 'border-color: {{VALUE}};',
				],
			]
		);

		$this->add_responsive_control(
			'space_between',
			[
				'label' => esc_html__( 'Space Between', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'min' => 0,
						'max' => 100,
					],
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-toggle-item:not(:last-child)' => 'margin-bottom: {{SIZE}}{{UNIT}}',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Box_Shadow::get_type(),
			[
				'name' => 'box_shadow',
				'selector' => '{{WRAPPER}} .elementor-toggle-item',
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_toggle_style_title',
			[
				'label' => esc_html__( 'Title', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->add_control(
			'title_background',
			[
				'label' => esc_html__( 'Background', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'{{WRAPPER}} .elementor-tab-title' => 'background-color: {{VALUE}};',
				],
			]
		);

		// The title selector specificity is to override Theme Style
		$this->add_control(
			'title_color',
			[
				'label' => esc_html__( 'Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'{{WRAPPER}} .elementor-toggle-title, {{WRAPPER}} .elementor-toggle-icon' => 'color: {{VALUE}};',
					'{{WRAPPER}} .elementor-toggle-icon svg' => 'fill: {{VALUE}};',
				],
				'global' => [
					'default' => Global_Colors::COLOR_PRIMARY,
				],
			]
		);

		$this->add_control(
			'tab_active_color',
			[
				'label' => esc_html__( 'Active Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'{{WRAPPER}} .elementor-tab-title.elementor-active a, {{WRAPPER}} .elementor-tab-title.elementor-active .elementor-toggle-icon' => 'color: {{VALUE}};',
				],
				'global' => [
					'default' => Global_Colors::COLOR_ACCENT,
				],
			]
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			[
				'name' => 'title_typography',
				'selector' => '{{WRAPPER}} .elementor-toggle-title',
				'global' => [
					'default' => Global_Typography::TYPOGRAPHY_PRIMARY,
				],
			]
		);

		$this->add_group_control(
			Group_Control_Text_Shadow::get_type(),
			[
				'name' => 'title_shadow',
				'selector' => '{{WRAPPER}} .elementor-toggle-title',
			]
		);

		$this->add_responsive_control(
			'title_padding',
			[
				'label' => esc_html__( 'Padding', 'elementor' ),
				'type' => Controls_Manager::DIMENSIONS,
				'size_units' => [ 'px', 'em', '%' ],
				'selectors' => [
					'{{WRAPPER}} .elementor-tab-title' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
				],
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_toggle_style_icon',
			[
				'label' => esc_html__( 'Icon', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
				'condition' => [
					'selected_icon[value]!' => '',
				],
			]
		);

		$this->add_control(
			'icon_align',
			[
				'label' => esc_html__( 'Alignment', 'elementor' ),
				'type' => Controls_Manager::CHOOSE,
				'options' => [
					'left' => [
						'title' => esc_html__( 'Start', 'elementor' ),
						'icon' => 'eicon-h-align-left',
					],
					'right' => [
						'title' => esc_html__( 'End', 'elementor' ),
						'icon' => 'eicon-h-align-right',
					],
				],
				'default' => is_rtl() ? 'right' : 'left',
				'toggle' => false,
			]
		);

		$this->add_control(
			'icon_color',
			[
				'label' => esc_html__( 'Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'{{WRAPPER}} .elementor-tab-title .elementor-toggle-icon i:before' => 'color: {{VALUE}};',
					'{{WRAPPER}} .elementor-tab-title .elementor-toggle-icon svg' => 'fill: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'icon_active_color',
			[
				'label' => esc_html__( 'Active Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'{{WRAPPER}} .elementor-tab-title.elementor-active .elementor-toggle-icon i:before' => 'color: {{VALUE}};',
					'{{WRAPPER}} .elementor-tab-title.elementor-active .elementor-toggle-icon svg' => 'fill: {{VALUE}};',
				],
			]
		);

		$this->add_responsive_control(
			'icon_space',
			[
				'label' => esc_html__( 'Spacing', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'min' => 0,
						'max' => 100,
					],
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-toggle-icon.elementor-toggle-icon-left' => 'margin-right: {{SIZE}}{{UNIT}};',
					'{{WRAPPER}} .elementor-toggle-icon.elementor-toggle-icon-right' => 'margin-left: {{SIZE}}{{UNIT}};',
				],
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_toggle_style_content',
			[
				'label' => esc_html__( 'Content', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->add_control(
			'content_background_color',
			[
				'label' => esc_html__( 'Background', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'{{WRAPPER}} .elementor-tab-content' => 'background-color: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'content_color',
			[
				'label' => esc_html__( 'Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'{{WRAPPER}} .elementor-tab-content' => 'color: {{VALUE}};',
				],
				'global' => [
					'default' => Global_Colors::COLOR_TEXT,
				],
			]
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			[
				'name' => 'content_typography',
				'selector' => '{{WRAPPER}} .elementor-tab-content',
				'global' => [
					'default' => Global_Typography::TYPOGRAPHY_TEXT,
				],
			]
		);

		$this->add_group_control(
			Group_Control_Text_Shadow::get_type(),
			[
				'name' => 'content_shadow',
				'selector' => '{{WRAPPER}} .elementor-tab-content',
			]
		);

		$this->add_responsive_control(
			'content_padding',
			[
				'label' => esc_html__( 'Padding', 'elementor' ),
				'type' => Controls_Manager::DIMENSIONS,
				'size_units' => [ 'px', 'em', '%' ],
				'selectors' => [
					'{{WRAPPER}} .elementor-tab-content' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
				],
			]
		);

		$this->end_controls_section();
	}

	/**
	 * Render toggle widget output on the frontend.
	 *
	 * Written in PHP and used to generate the final HTML.
	 *
	 * @since 1.0.0
	 * @access protected
	 */
	protected function render() {
		$settings = $this->get_settings_for_display();

		$id_int = substr( $this->get_id_int(), 0, 3 );
		$migrated = isset( $settings['__fa4_migrated']['selected_icon'] );

		if ( ! isset( $settings['icon'] ) && ! Icons_Manager::is_migration_allowed() ) {
			// @todo: remove when deprecated
			// added as bc in 2.6
			// add old default
			$settings['icon'] = 'fa fa-caret' . ( is_rtl() ? '-left' : '-right' );
			$settings['icon_active'] = 'fa fa-caret-up';
			$settings['icon_align'] = $this->get_settings( 'icon_align' );
		}

		$is_new = empty( $settings['icon'] ) && Icons_Manager::is_migration_allowed();
		$has_icon = ( ! $is_new || ! empty( $settings['selected_icon']['value'] ) );

		?>
		<div class="elementor-toggle" role="tablist">
			<?php
			foreach ( $settings['tabs'] as $index => $item ) :
				$tab_count = $index + 1;

				$tab_title_setting_key = $this->get_repeater_setting_key( 'tab_title', 'tabs', $index );

				$tab_content_setting_key = $this->get_repeater_setting_key( 'tab_content', 'tabs', $index );

				$this->add_render_attribute( $tab_title_setting_key, [
					'id' => 'elementor-tab-title-' . $id_int . $tab_count,
					'class' => [ 'elementor-tab-title' ],
					'data-tab' => $tab_count,
					'role' => 'tab',
					'aria-controls' => 'elementor-tab-content-' . $id_int . $tab_count,
					'aria-expanded' => 'false',
				] );

				$this->add_render_attribute( $tab_content_setting_key, [
					'id' => 'elementor-tab-content-' . $id_int . $tab_count,
					'class' => [ 'elementor-tab-content', 'elementor-clearfix' ],
					'data-tab' => $tab_count,
					'role' => 'tabpanel',
					'aria-labelledby' => 'elementor-tab-title-' . $id_int . $tab_count,
				] );

				$this->add_inline_editing_attributes( $tab_content_setting_key, 'advanced' );
				?>
				<div class="elementor-toggle-item">
					<<?php Utils::print_validated_html_tag( $settings['title_html_tag'] ); ?> <?php $this->print_render_attribute_string( $tab_title_setting_key ); ?>>
						<?php if ( $has_icon ) : ?>
						<span class="elementor-toggle-icon elementor-toggle-icon-<?php echo esc_attr( $settings['icon_align'] ); ?>" aria-hidden="true">
							<?php
							if ( $is_new || $migrated ) { ?>
								<span class="elementor-toggle-icon-closed"><?php Icons_Manager::render_icon( $settings['selected_icon'] ); ?></span>
								<span class="elementor-toggle-icon-opened"><?php Icons_Manager::render_icon( $settings['selected_active_icon'], [ 'class' => 'elementor-toggle-icon-opened' ] ); ?></span>
							<?php } else { ?>
								<i class="elementor-toggle-icon-closed <?php echo esc_attr( $settings['icon'] ); ?>"></i>
								<i class="elementor-toggle-icon-opened <?php echo esc_attr( $settings['icon_active'] ); ?>"></i>
							<?php } ?>
						</span>
						<?php endif; ?>
						<a href="" class="elementor-toggle-title"><?php $this->print_unescaped_setting( 'tab_title', 'tabs', $index ); ?></a>
					</<?php Utils::print_validated_html_tag( $settings['title_html_tag'] ); ?>>

					<div <?php $this->print_render_attribute_string( $tab_content_setting_key ); ?>><?php Utils::print_unescaped_internal_string( $this->parse_text_editor( $item['tab_content'] ) ); ?></div>
				</div>
			<?php endforeach; ?>
			<?php
			if ( isset( $settings['faq_schema'] ) && 'yes' === $settings['faq_schema'] ) {
				$json = [
					'@context' => 'https://schema.org',
					'@type' => 'FAQPage',
					'mainEntity' => [],
				];

				foreach ( $settings['tabs'] as $index => $item ) {
					$json['mainEntity'][] = [
						'@type' => 'Question',
						'name' => wp_strip_all_tags( $item['tab_title'] ),
						'acceptedAnswer' => [
							'@type' => 'Answer',
							'text' => $this->parse_text_editor( $item['tab_content'] ),
						],
					];
				}
				?>
				<script type="application/ld+json"><?php echo wp_json_encode( $json ); ?></script>
			<?php } ?>
		</div>
		<?php
	}

	/**
	 * Render toggle widget output in the editor.
	 *
	 * Written as a Backbone JavaScript template and used to generate the live preview.
	 *
	 * @since 2.9.0
	 * @access protected
	 */
	protected function content_template() {
		?>
		<div class="elementor-toggle" role="tablist">
			<#
			if ( settings.tabs ) {
				var tabindex = view.getIDInt().toString().substr( 0, 3 ),
					iconHTML = elementor.helpers.renderIcon( view, settings.selected_icon, {}, 'i' , 'object' ),
					iconActiveHTML = elementor.helpers.renderIcon( view, settings.selected_active_icon, {}, 'i' , 'object' ),
					migrated = elementor.helpers.isIconMigrated( settings, 'selected_icon' ),
					titleHTMLTag = elementor.helpers.validateHTMLTag( settings.title_html_tag );

				_.each( settings.tabs, function( item, index ) {
					var tabCount = index + 1,
						tabTitleKey = view.getRepeaterSettingKey( 'tab_title', 'tabs', index ),
						tabContentKey = view.getRepeaterSettingKey( 'tab_content', 'tabs', index );

					view.addRenderAttribute( tabTitleKey, {
						'id': 'elementor-tab-title-' + tabindex + tabCount,
						'class': [ 'elementor-tab-title' ],
						'data-tab': tabCount,
						'role': 'tab',
						'aria-controls': 'elementor-tab-content-' + tabindex + tabCount,
						'aria-expanded': 'false',
					} );

					view.addRenderAttribute( tabContentKey, {
						'id': 'elementor-tab-content-' + tabindex + tabCount,
						'class': [ 'elementor-tab-content', 'elementor-clearfix' ],
						'data-tab': tabCount,
						'role': 'tabpanel',
						'aria-labelledby': 'elementor-tab-title-' + tabindex + tabCount
					} );

					view.addInlineEditingAttributes( tabContentKey, 'advanced' );
					#>
					<div class="elementor-toggle-item">
						<{{{ titleHTMLTag }}} {{{ view.getRenderAttributeString( tabTitleKey ) }}}>
							<# if ( settings.icon || settings.selected_icon ) { #>
							<span class="elementor-toggle-icon elementor-toggle-icon-{{ settings.icon_align }}" aria-hidden="true">
								<# if ( iconHTML && iconHTML.rendered && ( ! settings.icon || migrated ) ) { #>
									<span class="elementor-toggle-icon-closed">{{{ iconHTML.value }}}</span>
									<span class="elementor-toggle-icon-opened">{{{ iconActiveHTML.value }}}</span>
								<# } else { #>
									<i class="elementor-toggle-icon-closed {{ settings.icon }}"></i>
									<i class="elementor-toggle-icon-opened {{ settings.icon_active }}"></i>
								<# } #>
							</span>
							<# } #>
							<a href="" class="elementor-toggle-title">{{{ item.tab_title }}}</a>
						</{{{ titleHTMLTag }}}>
						<div {{{ view.getRenderAttributeString( tabContentKey ) }}}>{{{ item.tab_content }}}</div>
					</div>
					<#
				} );
			} #>
		</div>
		<?php
	}
}
includes/widgets/divider.php000064400000077070151327220420012170 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

use Elementor\Core\Kits\Documents\Tabs\Global_Colors;
use Elementor\Core\Kits\Documents\Tabs\Global_Typography;

/**
 * Elementor divider widget.
 *
 * Elementor widget that displays a line that divides different elements in the
 * page.
 *
 * @since 1.0.0
 */
class Widget_Divider extends Widget_Base {

	/**
	 * Get widget name.
	 *
	 * Retrieve divider widget name.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget name.
	 */
	public function get_name() {
		return 'divider';
	}

	/**
	 * Get widget title.
	 *
	 * Retrieve divider widget title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget title.
	 */
	public function get_title() {
		return esc_html__( 'Divider', 'elementor' );
	}

	/**
	 * Get widget icon.
	 *
	 * Retrieve divider widget icon.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget icon.
	 */
	public function get_icon() {
		return 'eicon-divider';
	}

	/**
	 * Get widget categories.
	 *
	 * Retrieve the list of categories the divider widget belongs to.
	 *
	 * Used to determine where to display the widget in the editor.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @return array Widget categories.
	 */
	public function get_categories() {
		return [ 'basic' ];
	}

	/**
	 * Get widget keywords.
	 *
	 * Retrieve the list of keywords the widget belongs to.
	 *
	 * @since 2.1.0
	 * @access public
	 *
	 * @return array Widget keywords.
	 */
	public function get_keywords() {
		return [ 'divider', 'hr', 'line', 'border' ];
	}

	private static function get_additional_styles() {
		static $additional_styles = null;

		if ( null !== $additional_styles ) {
			return $additional_styles;
		}
		$additional_styles = [];
		/**
		 * Additional Styles.
		 *
		 * Filters the styles used by Elementor to add additional divider styles.
		 *
		 * @since 2.7.0
		 *
		 * @param array $additional_styles Additional Elementor divider styles.
		 */
		$additional_styles = apply_filters( 'elementor/divider/styles/additional_styles', $additional_styles );
		return $additional_styles;
	}

	private function get_separator_styles() {
		return array_merge(
			self::get_additional_styles(),
			[
				'curly'   => [
					'label' => _x( 'Curly', 'shapes', 'elementor' ),
					'shape' => '<path d="M0,21c3.3,0,8.3-0.9,15.7-7.1c6.6-5.4,4.4-9.3,2.4-10.3c-3.4-1.8-7.7,1.3-7.3,8.8C11.2,20,17.1,21,24,21"/>',
					'preserve_aspect_ratio' => false,
					'supports_amount' => true,
					'round' => false,
					'group' => 'line',
				],
				'curved'   => [
					'label' => _x( 'Curved', 'shapes', 'elementor' ),
					'shape' => '<path d="M0,6c6,0,6,13,12,13S18,6,24,6"/>',
					'preserve_aspect_ratio' => false,
					'supports_amount' => true,
					'round' => false,
					'group' => 'line',
				],
				'multiple'   => [
					'label' => _x( 'Multiple', 'shapes', 'elementor' ),
					'shape' => '<path d="M24,8v12H0V8H24z M24,4v1H0V4H24z"/>',
					'preserve_aspect_ratio' => false,
					'supports_amount' => false,
					'round' => false,
					'group' => 'pattern',
				],
				'slashes' => [
					'label' => _x( 'Slashes', 'shapes', 'elementor' ),
					'shape' => '<g transform="translate(-12.000000, 0)"><path d="M28,0L10,18"/><path d="M18,0L0,18"/><path d="M48,0L30,18"/><path d="M38,0L20,18"/></g>',
					'preserve_aspect_ratio' => false,
					'supports_amount' => true,
					'round' => false,
					'view_box' => '0 0 20 16',
					'group' => 'line',
				],
				'squared' => [
					'label' => _x( 'Squared', 'shapes', 'elementor' ),
					'shape' => '<polyline points="0,6 6,6 6,18 18,18 18,6 24,6 	"/>',
					'preserve_aspect_ratio' => false,
					'supports_amount' => true,
					'round' => false,
					'group' => 'line',
				],
				'wavy'   => [
					'label' => _x( 'Wavy', 'shapes', 'elementor' ),
					'shape' => '<path d="M0,6c6,0,0.9,11.1,6.9,11.1S18,6,24,6"/>',
					'preserve_aspect_ratio' => false,
					'supports_amount' => true,
					'round' => false,
					'group' => 'line',
				],
				'zigzag'  => [
					'label' => _x( 'Zigzag', 'shapes', 'elementor' ),
					'shape' => '<polyline points="0,18 12,6 24,18 "/>',
					'preserve_aspect_ratio' => false,
					'supports_amount' => true,
					'round' => false,
					'group' => 'line',
				],
				'arrows'   => [
					'label' => _x( 'Arrows', 'shapes', 'elementor' ),
					'shape' => '<path d="M14.2,4c0.3,0,0.5,0.1,0.7,0.3l7.9,7.2c0.2,0.2,0.3,0.4,0.3,0.7s-0.1,0.5-0.3,0.7l-7.9,7.2c-0.2,0.2-0.4,0.3-0.7,0.3s-0.5-0.1-0.7-0.3s-0.3-0.4-0.3-0.7l0-2.9l-11.5,0c-0.4,0-0.7-0.3-0.7-0.7V9.4C1,9,1.3,8.7,1.7,8.7l11.5,0l0-3.6c0-0.3,0.1-0.5,0.3-0.7S13.9,4,14.2,4z"/>',
					'preserve_aspect_ratio' => true,
					'supports_amount' => true,
					'round' => true,
					'group' => 'pattern',
				],
				'pluses'   => [
					'label' => _x( 'Pluses', 'shapes', 'elementor' ),
					'shape' => '<path d="M21.4,9.6h-7.1V2.6c0-0.9-0.7-1.6-1.6-1.6h-1.6c-0.9,0-1.6,0.7-1.6,1.6v7.1H2.6C1.7,9.6,1,10.3,1,11.2v1.6c0,0.9,0.7,1.6,1.6,1.6h7.1v7.1c0,0.9,0.7,1.6,1.6,1.6h1.6c0.9,0,1.6-0.7,1.6-1.6v-7.1h7.1c0.9,0,1.6-0.7,1.6-1.6v-1.6C23,10.3,22.3,9.6,21.4,9.6z"/>',
					'preserve_aspect_ratio' => true,
					'supports_amount' => true,
					'round' => false,
					'group' => 'pattern',
				],
				'rhombus'   => [
					'label' => _x( 'Rhombus', 'shapes', 'elementor' ),
					'shape' => '<path d="M12.7,2.3c-0.4-0.4-1.1-0.4-1.5,0l-8,9.1c-0.3,0.4-0.3,0.9,0,1.2l8,9.1c0.4,0.4,1.1,0.4,1.5,0l8-9.1c0.3-0.4,0.3-0.9,0-1.2L12.7,2.3z"/>',
					'preserve_aspect_ratio' => false,
					'supports_amount' => true,
					'round' => false,
					'group' => 'pattern',
				],
				'parallelogram'   => [
					'label' => _x( 'Parallelogram', 'shapes', 'elementor' ),
					'shape' => '<polygon points="9.4,2 24,2 14.6,21.6 0,21.6"/>',
					'preserve_aspect_ratio' => false,
					'supports_amount' => true,
					'round' => false,
					'group' => 'pattern',
				],
				'rectangles'   => [
					'label' => _x( 'Rectangles', 'shapes', 'elementor' ),
					'shape' => '<rect x="15" y="0" width="30" height="30"/>',
					'preserve_aspect_ratio' => false,
					'supports_amount' => true,
					'round' => true,
					'group' => 'pattern',
					'view_box' => '0 0 60 30',
				],
				'dots_tribal'   => [
					'label' => _x( 'Dots', 'shapes', 'elementor' ),
					'shape' => '<path d="M3,10.2c2.6,0,2.6,2,2.6,3.2S4.4,16.5,3,16.5s-3-1.4-3-3.2S0.4,10.2,3,10.2z M18.8,10.2c1.7,0,3.2,1.4,3.2,3.2s-1.4,3.2-3.2,3.2c-1.7,0-3.2-1.4-3.2-3.2S17,10.2,18.8,10.2z M34.6,10.2c1.5,0,2.6,1.4,2.6,3.2s-0.5,3.2-1.9,3.2c-1.5,0-3.4-1.4-3.4-3.2S33.1,10.2,34.6,10.2z M50.5,10.2c1.7,0,3.2,1.4,3.2,3.2s-1.4,3.2-3.2,3.2c-1.7,0-3.3-0.9-3.3-2.6S48.7,10.2,50.5,10.2z M66.2,10.2c1.5,0,3.4,1.4,3.4,3.2s-1.9,3.2-3.4,3.2c-1.5,0-2.6-0.4-2.6-2.1S64.8,10.2,66.2,10.2z M82.2,10.2c1.7,0.8,2.6,1.4,2.6,3.2s-0.1,3.2-1.6,3.2c-1.5,0-3.7-1.4-3.7-3.2S80.5,9.4,82.2,10.2zM98.6,10.2c1.5,0,2.6,0.4,2.6,2.1s-1.2,4.2-2.6,4.2c-1.5,0-3.7-0.4-3.7-2.1S97.1,10.2,98.6,10.2z M113.4,10.2c1.2,0,2.2,0.9,2.2,3.2s-0.1,3.2-1.3,3.2s-3.1-1.4-3.1-3.2S112.2,10.2,113.4,10.2z"/>',
					'preserve_aspect_ratio' => true,
					'supports_amount' => false,
					'round' => false,
					'group' => 'tribal',
					'view_box' => '0 0 126 26',
				],
				'trees_2_tribal'   => [
					'label' => _x( 'Fir Tree', 'shapes', 'elementor' ),
					'shape' => '<path d="M111.9,18.3v3.4H109v-3.4H111.9z M90.8,18.3v3.4H88v-3.4H90.8z M69.8,18.3v3.4h-2.9v-3.4H69.8z M48.8,18.3v3.4h-2.9v-3.4H48.8z M27.7,18.3v3.4h-2.9v-3.4H27.7z M6.7,18.3v3.4H3.8v-3.4H6.7z M46.4,4l4.3,4.8l-1.8,0l3.5,4.4l-2.2-0.1l3,3.3l-11,0.4l3.6-3.8l-2.9-0.1l3.1-4.2l-1.9,0L46.4,4z M111.4,4l2.4,4.8l-1.8,0l3.5,4.4l-2.5-0.1l3.3,3.3h-11l3.1-3.4l-2.5-0.1l3.1-4.2l-1.9,0L111.4,4z M89.9,4l2.9,4.8l-1.9,0l3.2,4.2l-2.5,0l3.5,3.5l-11-0.4l3-3.1l-2.4,0L88,8.8l-1.9,0L89.9,4z M68.6,4l3,4.4l-1.9,0.1l3.4,4.1l-2.7,0.1l3.8,3.7H63.8l2.9-3.6l-2.9,0.1L67,8.7l-2,0.1L68.6,4z M26.5,4l3,4.4l-1.9,0.1l3.7,4.7l-2.5-0.1l3.3,3.3H21l3.1-3.4l-2.5-0.1l3.2-4.3l-2,0.1L26.5,4z M4.9,4l3.7,4.8l-1.5,0l3.1,4.2L7.6,13l3.4,3.4H0l3-3.3l-2.3,0.1l3.5-4.4l-2.3,0L4.9,4z"/>',
					'preserve_aspect_ratio' => true,
					'supports_amount' => false,
					'round' => false,
					'group' => 'tribal',
					'view_box' => '0 0 126 26',
				],
				'rounds_tribal'   => [
					'label' => _x( 'Half Rounds', 'shapes', 'elementor' ),
					'shape' => '<path d="M11.9,15.9L11.9,15.9L0,16c-0.2-3.7,1.5-5.7,4.9-6C10,9.6,12.4,14.2,11.9,15.9zM26.9,15.9L26.9,15.9L15,16c0.5-3.7,2.5-5.7,5.9-6C26,9.6,27.4,14.2,26.9,15.9z M37.1,10c3.4,0.3,5.1,2.3,4.9,6H30.1C29.5,14.4,31.9,9.6,37.1,10z M57,15.9L57,15.9L45,16c0-3.4,1.6-5.4,4.9-5.9C54.8,9.3,57.4,14.2,57,15.9z M71.9,15.9L71.9,15.9L60,16c-0.2-3.7,1.5-5.7,4.9-6C70,9.6,72.4,14.2,71.9,15.9z M82.2,10c3.4,0.3,5,2.3,4.8,6H75.3C74,13,77.1,9.6,82.2,10zM101.9,15.9L101.9,15.9L90,16c-0.2-3.7,1.5-5.7,4.9-6C100,9.6,102.4,14.2,101.9,15.9z M112.1,10.1c2.7,0.5,4.3,2.5,4.9,5.9h-11.9l0,0C104.5,14.4,108,9.3,112.1,10.1z"/>',
					'preserve_aspect_ratio' => true,
					'supports_amount' => false,
					'round' => false,
					'group' => 'tribal',
					'view_box' => '0 0 120 26',
				],
				'leaves_tribal'   => [
					'label' => _x( 'Leaves', 'shapes', 'elementor' ),
					'shape' => '<path d="M3,1.5C5,4.9,6,8.8,6,13s-1.7,8.1-5,11.5C0.3,21.1,0,17.2,0,13S1,4.9,3,1.5z M16,1.5c2,3.4,3,7.3,3,11.5s-1,8.1-3,11.5c-2-4.1-3-8.3-3-12.5S14,4.3,16,1.5z M29,1.5c2,4.8,3,9.3,3,13.5s-1,7.4-3,9.5c-2-3.4-3-7.3-3-11.5S27,4.9,29,1.5z M41.1,1.5C43.7,4.9,45,8.8,45,13s-1,8.1-3,11.5c-2-3.4-3-7.3-3-11.5S39.7,4.9,41.1,1.5zM55,1.5c2,2.8,3,6.3,3,10.5s-1.3,8.4-4,12.5c-1.3-3.4-2-7.3-2-11.5S53,4.9,55,1.5z M68,1.5c2,3.4,3,7.3,3,11.5s-0.7,8.1-2,11.5c-2.7-4.8-4-9.3-4-13.5S66,3.6,68,1.5z M82,1.5c1.3,4.8,2,9.3,2,13.5s-1,7.4-3,9.5c-2-3.4-3-7.3-3-11.5S79.3,4.9,82,1.5z M94,1.5c2,3.4,3,7.3,3,11.5s-1.3,8.1-4,11.5c-1.3-1.4-2-4.3-2-8.5S92,6.9,94,1.5z M107,1.5c2,2.1,3,5.3,3,9.5s-0.7,8.7-2,13.5c-2.7-3.4-4-7.3-4-11.5S105,4.9,107,1.5z"/>',
					'preserve_aspect_ratio' => true,
					'supports_amount' => false,
					'round' => false,
					'group' => 'tribal',
					'view_box' => '0 0 117 26',
				],
				'stripes_tribal'   => [
					'label' => _x( 'Stripes', 'shapes', 'elementor' ),
					'shape' => '<path d="M54,1.6V26h-9V2.5L54,1.6z M69,1.6v23.3L60,26V1.6H69z M24,1.6v23.5l-9-0.6V1.6H24z M30,0l9,0.7v24.5h-9V0z M9,2.5v22H0V3.7L9,2.5z M75,1.6l9,0.9v22h-9V1.6z M99,2.7v21.7h-9V3.8L99,2.7z M114,3.8v20.7l-9-0.5V3.8L114,3.8z"/>',
					'preserve_aspect_ratio' => true,
					'supports_amount' => false,
					'round' => false,
					'group' => 'tribal',
					'view_box' => '0 0 120 26',
				],
				'squares_tribal'   => [
					'label' => _x( 'Squares', 'shapes', 'elementor' ),
					'shape' => '<path d="M46.8,7.8v11.5L36,18.6V7.8H46.8z M82.4,7.8L84,18.6l-12,0.7L70.4,7.8H82.4z M0,7.8l12,0.9v9.9H1.3L0,7.8z M30,7.8v10.8H19L18,7.8H30z M63.7,7.8L66,18.6H54V9.5L63.7,7.8z M89.8,7L102,7.8v10.8H91.2L89.8,7zM108,7.8l12,0.9v8.9l-12,1V7.8z"/>',
					'preserve_aspect_ratio' => true,
					'supports_amount' => false,
					'round' => false,
					'group' => 'tribal',
					'view_box' => '0 0 126 26',
				],
				'trees_tribal'   => [
					'label' => _x( 'Trees', 'shapes', 'elementor' ),
					'shape' => '<path d="M6.4,2l4.2,5.7H7.7v2.7l3.8,5.2l-3.8,0v7.8H4.8v-7.8H0l4.8-5.2V7.7H1.1L6.4,2z M25.6,2L31,7.7h-3.7v2.7l4.8,5.2h-4.8v7.8h-2.8v-7.8l-3.8,0l3.8-5.2V7.7h-2.9L25.6,2z M47.5,2l4.2,5.7h-3.3v2.7l3.8,5.2l-3.8,0l0.4,7.8h-2.8v-7.8H41l4.8-5.2V7.7h-3.7L47.5,2z M66.2,2l5.4,5.7h-3.7v2.7l4.8,5.2h-4.8v7.8H65v-7.8l-3.8,0l3.8-5.2V7.7h-2.9L66.2,2zM87.4,2l4.8,5.7h-2.9v3.1l3.8,4.8l-3.8,0v7.8h-2.8v-7.8h-4.8l4.8-4.8V7.7h-3.7L87.4,2z M107.3,2l5.4,5.7h-3.7v2.7l4.8,5.2h-4.8v7.8H106v-7.8l-3.8,0l3.8-5.2V7.7h-2.9L107.3,2z"/>',
					'preserve_aspect_ratio' => true,
					'supports_amount' => false,
					'round' => false,
					'group' => 'tribal',
					'view_box' => '0 0 123 26',
				],
				'planes_tribal'   => [
					'label' => _x( 'Tribal', 'shapes', 'elementor' ),
					'shape' => '<path d="M29.6,10.3l2.1,2.2l-3.6,3.3h7v2.9h-7l3.6,3.5l-2.1,1.7l-5.2-5.2h-5.8v-2.9h5.8L29.6,10.3z M70.9,9.6l2.1,1.7l-3.6,3.5h7v2.9h-7l3.6,3.3l-2.1,2.2l-5.2-5.5h-5.8v-2.9h5.8L70.9,9.6z M111.5,9.6l2.1,1.7l-3.6,3.5h7v2.9h-7l3.6,3.3l-2.1,2.2l-5.2-5.5h-5.8v-2.9h5.8L111.5,9.6z M50.2,2.7l2.1,1.7l-3.6,3.5h7v2.9h-7l3.6,3.3l-2.1,2.2L45,10.7h-5.8V7.9H45L50.2,2.7z M11,2l2.1,1.7L9.6,7.2h7V10h-7l3.6,3.3L11,15.5L5.8,10H0V7.2h5.8L11,2z M91.5,2l2.1,2.2l-3.6,3.3h7v2.9h-7l3.6,3.5l-2.1,1.7l-5.2-5.2h-5.8V7.5h5.8L91.5,2z"/>',
					'preserve_aspect_ratio' => true,
					'supports_amount' => false,
					'round' => false,
					'group' => 'tribal',
					'view_box' => '0 0 121 26',
				],
				'x_tribal'   => [
					'label' => _x( 'X', 'shapes', 'elementor' ),
					'shape' => '<path d="M10.7,6l2.5,2.6l-4,4.3l4,5.4l-2.5,1.9l-4.5-5.2l-3.9,4.2L0.7,17L4,13.1L0,8.6l2.3-1.3l3.9,3.9L10.7,6z M23.9,6.6l4.2,4.5L32,7.2l2.3,1.3l-4,4.5l3.2,3.9L32,19.1l-3.9-3.3l-4.5,4.3l-2.5-1.9l4.4-5.1l-4.2-3.9L23.9,6.6zM73.5,6L76,8.6l-4,4.3l4,5.4l-2.5,1.9l-4.5-5.2l-3.9,4.2L63.5,17l4.1-4.7L63.5,8l2.3-1.3l4.1,3.6L73.5,6z M94,6l2.5,2.6l-4,4.3l4,5.4L94,20.1l-3.9-5l-3.9,4.2L84,17l3.2-3.9L84,8.6l2.3-1.3l3.2,3.9L94,6z M106.9,6l4.5,5.1l3.9-3.9l2.3,1.3l-4,4.5l3.2,3.9l-1.6,2.1l-3.9-4.2l-4.5,5.2l-2.5-1.9l4-5.4l-4-4.3L106.9,6z M53.1,6l2.5,2.6l-4,4.3l4,4.6l-2.5,1.9l-4.5-4.5l-3.5,4.5L43.1,17l3.2-3.9l-4-4.5l2.3-1.3l3.9,3.9L53.1,6z"/>',
					'preserve_aspect_ratio' => true,
					'supports_amount' => false,
					'round' => false,
					'group' => 'tribal',
					'view_box' => '0 0 126 26',
				],
				'zigzag_tribal'   => [
					'label' => _x( 'Zigzag', 'shapes', 'elementor' ),
					'shape' => '<polygon points="0,14.4 0,21 11.5,12.4 21.3,20 30.4,11.1 40.3,20 51,12.4 60.6,20 69.6,11.1 79.3,20 90.1,12.4 99.6,20 109.7,11.1 120,21 120,14.4 109.7,5 99.6,13 90.1,5 79.3,14.5 71,5.7 60.6,12.4 51,5 40.3,14.5 31.1,5 21.3,13 11.5,5 	"/>',
					'preserve_aspect_ratio' => true,
					'supports_amount' => false,
					'round' => false,
					'group' => 'tribal',
					'view_box' => '0 0 120 26',
				],
			]
		);
	}

	private function filter_styles_by( $array, $key, $value ) {
		return array_filter( $array, function( $style ) use ( $key, $value ) {
			return $value === $style[ $key ];
		} );
	}

	private function get_options_by_groups( $styles, $group = false ) {
		$groups = [
			'line' => [
				'label' => esc_html__( 'Line', 'elementor' ),
				'options' => [
					'solid' => esc_html__( 'Solid', 'elementor' ),
					'double' => esc_html__( 'Double', 'elementor' ),
					'dotted' => esc_html__( 'Dotted', 'elementor' ),
					'dashed' => esc_html__( 'Dashed', 'elementor' ),
				],
			],
		];
		foreach ( $styles as $key => $style ) {
			if ( ! isset( $groups[ $style['group'] ] ) ) {
				$groups[ $style['group'] ] = [
					'label' => ucwords( str_replace( '_', '', $style['group'] ) ),
					'options' => [],
				];
			}
			$groups[ $style['group'] ]['options'][ $key ] = $style['label'];
		}

		if ( $group && isset( $groups[ $group ] ) ) {
			return $groups[ $group ];
		}
		return $groups;
	}

	/**
	 * Register divider widget controls.
	 *
	 * Adds different input fields to allow the user to change and customize the widget settings.
	 *
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		$styles = $this->get_separator_styles();
		$this->start_controls_section(
			'section_divider',
			[
				'label' => esc_html__( 'Divider', 'elementor' ),
			]
		);

		$this->add_control(
			'style',
			[
				'label' => esc_html__( 'Style', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'groups' => array_values( $this->get_options_by_groups( $styles ) ),
				'render_type' => 'template',
				'default' => 'solid',
				'selectors' => [
					'{{WRAPPER}}' => '--divider-border-style: {{VALUE}}',
				],
			]
		);

		$this->add_control(
			'separator_type',
			[
				'type' => Controls_Manager::HIDDEN,
				'default' => 'pattern',
				'prefix_class' => 'elementor-widget-divider--separator-type-',
				'condition' => [
					'style!' => [
						'',
						'solid',
						'double',
						'dotted',
						'dashed',
					],
				],
				'render_type' => 'template',
			]
		);

		$this->add_control(
			'pattern_spacing_flag',
			[
				'type' => Controls_Manager::HIDDEN,
				'default' => 'no-spacing',
				'prefix_class' => 'elementor-widget-divider--',
				'condition' => [
					'style' => array_keys( $this->filter_styles_by( $styles, 'supports_amount', false ) ),
				],
				'render_type' => 'template',
			]
		);

		$this->add_control(
			'pattern_round_flag',
			[
				'type' => Controls_Manager::HIDDEN,
				'default' => 'bg-round',
				'prefix_class' => 'elementor-widget-divider--',
				'condition' => [
					'style' => array_keys( $this->filter_styles_by( $styles, 'round', true ) ),
				],
			]
		);

		$this->add_responsive_control(
			'width',
			[
				'label' => esc_html__( 'Width', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'size_units' => [ '%', 'px' ],
				'range' => [
					'px' => [
						'max' => 1000,
					],
				],
				'default' => [
					'size' => 100,
					'unit' => '%',
				],
				'tablet_default' => [
					'unit' => '%',
				],
				'mobile_default' => [
					'unit' => '%',
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-divider-separator' => 'width: {{SIZE}}{{UNIT}};',
				],
			]
		);

		$this->add_responsive_control(
			'align',
			[
				'label' => esc_html__( 'Alignment', 'elementor' ),
				'type' => Controls_Manager::CHOOSE,
				'options' => [
					'left' => [
						'title' => esc_html__( 'Left', 'elementor' ),
						'icon' => 'eicon-text-align-left',
					],
					'center' => [
						'title' => esc_html__( 'Center', 'elementor' ),
						'icon' => 'eicon-text-align-center',
					],
					'right' => [
						'title' => esc_html__( 'Right', 'elementor' ),
						'icon' => 'eicon-text-align-right',
					],
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-divider' => 'text-align: {{VALUE}}',
					'{{WRAPPER}} .elementor-divider-separator' => 'margin: 0 auto; margin-{{VALUE}}: 0',
				],
			]
		);

		$this->add_control(
			'look',
			[
				'label' => esc_html__( 'Add Element', 'elementor' ),
				'type' => Controls_Manager::CHOOSE,
				'default' => 'line',
				'options' => [
					'line' => [
						'title' => esc_html__( 'None', 'elementor' ),
						'icon' => 'eicon-ban',
					],
					'line_text' => [
						'title' => esc_html__( 'Text', 'elementor' ),
						'icon' => 'eicon-t-letter-bold',
					],
					'line_icon' => [
						'title' => esc_html__( 'Icon', 'elementor' ),
						'icon' => 'eicon-star',
					],
				],
				'separator' => 'before',
				'prefix_class' => 'elementor-widget-divider--view-',
				'toggle' => false,
				'render_type' => 'template',
			]
		);

		$this->add_control(
			'view',
			[
				'label' => esc_html__( 'View', 'elementor' ),
				'type' => Controls_Manager::HIDDEN,
				'default' => 'traditional',
			]
		);

		$this->add_control(
			'text',
			[
				'label' => esc_html__( 'Text', 'elementor' ),
				'type' => Controls_Manager::TEXT,
				'condition' => [
					'look' => 'line_text',
				],
				'default' => esc_html__( 'Divider', 'elementor' ),
				'dynamic' => [
					'active' => true,
				],
			]
		);

		$this->add_control(
			'html_tag',
			[
				'label' => esc_html__( 'HTML Tag', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'condition' => [
					'look' => 'line_text',
				],
				'options' => [
					'h1' => 'H1',
					'h2' => 'H2',
					'h3' => 'H3',
					'h4' => 'H4',
					'h5' => 'H5',
					'h6' => 'H6',
					'div' => 'div',
					'span' => 'span',
					'p' => 'p',
				],
				'default' => 'span',
			]
		);

		$this->add_control(
			'icon',
			[
				'label' => esc_html__( 'Icon', 'elementor' ),
				'type' => Controls_Manager::ICONS,
				'default' => [
					'value' => 'fas fa-star',
					'library' => 'fa-solid',
				],
				'condition' => [
					'look' => 'line_icon',
				],
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_divider_style',
			[
				'label' => esc_html__( 'Divider', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
				'condition' => [
					'style!' => 'none',
				],
			]
		);

		$this->add_control(
			'color',
			[
				'label' => esc_html__( 'Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'global' => [
					'default' => Global_Colors::COLOR_SECONDARY,
				],
				'default' => '#000',
				'render_type' => 'template',
				'selectors' => [
					'{{WRAPPER}}' => '--divider-color: {{VALUE}}',
				],
			]
		);

		$this->add_control(
			'weight',
			[
				'label' => esc_html__( 'Weight', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'default' => [
					'size' => 1,
				],
				'range' => [
					'px' => [
						'min' => 1,
						'max' => 10,
						'step' => 0.1,
					],
				],
				'render_type' => 'template',
				'condition' => [
					'style' => array_keys( $this->get_options_by_groups( $styles, 'line' )['options'] ),
				],
				'selectors' => [
					'{{WRAPPER}}' => '--divider-border-width: {{SIZE}}{{UNIT}}',
				],
			]
		);

		$this->add_control(
			'pattern_height',
			[
				'label' => esc_html__( 'Size', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'selectors' => [
					'{{WRAPPER}}' => '--divider-pattern-height: {{SIZE}}{{UNIT}}',
				],
				'default' => [
					'size' => 20,
				],
				'range' => [
					'px' => [
						'step' => 0.1,
					],
				],
				'condition' => [
					'style!' => [
						'',
						'solid',
						'double',
						'dotted',
						'dashed',
					],
				],
			]
		);

		$this->add_control(
			'pattern_size',
			[
				'label' => esc_html__( 'Amount', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'size_units' => [ '%', 'px' ],
				'selectors' => [
					'{{WRAPPER}}' => '--divider-pattern-size: {{SIZE}}{{UNIT}}',
				],
				'default' => [
					'size' => 20,
				],
				'range' => [
					'px' => [
						'step' => 0.1,
					],
					'%' => [
						'step' => 0.01,
					],
				],
				'condition' => [
					'style!' => array_merge( array_keys( $this->filter_styles_by( $styles, 'supports_amount', false ) ), [
						'',
						'solid',
						'double',
						'dotted',
						'dashed',
					] ),
				],
			]
		);

		$this->add_responsive_control(
			'gap',
			[
				'label' => esc_html__( 'Gap', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'default' => [
					'size' => 15,
				],
				'range' => [
					'px' => [
						'min' => 2,
						'max' => 50,
					],
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-divider' => 'padding-top: {{SIZE}}{{UNIT}}; padding-bottom: {{SIZE}}{{UNIT}};',
				],
				'separator' => 'before',
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_text_style',
			[
				'label' => esc_html__( 'Text', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
				'condition' => [
					'look' => 'line_text',
				],
			]
		);

		$this->add_control(
			'text_color',
			[
				'label' => esc_html__( 'Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'global' => [
					'default' => Global_Colors::COLOR_SECONDARY,
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-divider__text' => 'color: {{VALUE}}',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			[
				'name' => 'typography',
				'global' => [
					'default' => Global_Typography::TYPOGRAPHY_SECONDARY,
				],
				'selector' => '{{WRAPPER}} .elementor-divider__text',
			]
		);

		$this->add_control(
			'text_align',
			[
				'label' => esc_html__( 'Position', 'elementor' ),
				'type' => Controls_Manager::CHOOSE,
				'options' => [
					'left' => [
						'title' => esc_html__( 'Left', 'elementor' ),
						'icon' => 'eicon-h-align-left',
					],
					'center' => [
						'title' => esc_html__( 'Center', 'elementor' ),
						'icon' => 'eicon-h-align-center',
					],
					'right' => [
						'title' => esc_html__( 'Right', 'elementor' ),
						'icon' => 'eicon-h-align-right',
					],
				],
				'default' => 'center',
				'prefix_class' => 'elementor-widget-divider--element-align-',
			]
		);

		$this->add_responsive_control(
			'text_spacing',
			[
				'label' => esc_html__( 'Spacing', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'min' => 0,
						'max' => 50,
					],
				],
				'selectors' => [
					'{{WRAPPER}}' => '--divider-element-spacing: {{SIZE}}{{UNIT}};',
				],
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_icon_style',
			[
				'label' => esc_html__( 'Icon', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
				'condition' => [
					'look' => 'line_icon',
				],
			]
		);

		$this->add_control(
			'icon_view',
			[
				'label' => esc_html__( 'View', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'options' => [
					'default' => esc_html__( 'Default', 'elementor' ),
					'stacked' => esc_html__( 'Stacked', 'elementor' ),
					'framed' => esc_html__( 'Framed', 'elementor' ),
				],
				'default' => 'default',
				'prefix_class' => 'elementor-view-',
			]
		);

		$this->add_responsive_control(
			'icon_size',
			[
				'label' => esc_html__( 'Size', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'min' => 6,
						'max' => 300,
					],
				],
				'selectors' => [
					'{{WRAPPER}}' => '--divider-icon-size: {{SIZE}}{{UNIT}};',
				],
			]
		);

		$this->add_control(
			'icon_padding',
			[
				'label' => esc_html__( 'Padding', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'selectors' => [
					'{{WRAPPER}} .elementor-icon' => 'padding: {{SIZE}}{{UNIT}};',
				],
				'range' => [
					'em' => [
						'min' => 0,
						'max' => 5,
					],
				],
				'condition' => [
					'icon_view!' => 'default',
				],
			]
		);

		$this->add_control(
			'primary_color',
			[
				'label' => esc_html__( 'Primary Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'selectors' => [
					'{{WRAPPER}}.elementor-view-stacked .elementor-icon' => 'background-color: {{VALUE}};',
					'{{WRAPPER}}.elementor-view-framed .elementor-icon, {{WRAPPER}}.elementor-view-default .elementor-icon' => 'color: {{VALUE}}; border-color: {{VALUE}};',
					'{{WRAPPER}}.elementor-view-framed .elementor-icon, {{WRAPPER}}.elementor-view-default .elementor-icon svg' => 'fill: {{VALUE}};',
				],
				'global' => [
					'default' => Global_Colors::COLOR_SECONDARY,
				],
			]
		);

		$this->add_control(
			'secondary_color',
			[
				'label' => esc_html__( 'Secondary Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'condition' => [
					'icon_view!' => 'default',
				],
				'selectors' => [
					'{{WRAPPER}}.elementor-view-framed .elementor-icon' => 'background-color: {{VALUE}};',
					'{{WRAPPER}}.elementor-view-stacked .elementor-icon' => 'color: {{VALUE}};',
					'{{WRAPPER}}.elementor-view-stacked .elementor-icon svg' => 'fill: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'icon_align',
			[
				'label' => esc_html__( 'Position', 'elementor' ),
				'type' => Controls_Manager::CHOOSE,
				'options' => [
					'left' => [
						'title' => esc_html__( 'Left', 'elementor' ),
						'icon' => 'eicon-h-align-left',
					],
					'center' => [
						'title' => esc_html__( 'Center', 'elementor' ),
						'icon' => 'eicon-h-align-center',
					],
					'right' => [
						'title' => esc_html__( 'Right', 'elementor' ),
						'icon' => 'eicon-h-align-right',
					],
				],
				'default' => 'center',
				'prefix_class' => 'elementor-widget-divider--element-align-',
			]
		);

		$this->add_responsive_control(
			'icon_spacing',
			[
				'label' => esc_html__( 'Spacing', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'min' => 0,
						'max' => 50,
					],
				],
				'selectors' => [
					'{{WRAPPER}}' => '--divider-element-spacing: {{SIZE}}{{UNIT}}',
				],
			]
		);

		$this->add_responsive_control(
			'rotate',
			[
				'label' => esc_html__( 'Rotate', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'size_units' => [ 'deg' ],
				'default' => [
					'size' => 0,
					'unit' => 'deg',
				],
				'tablet_default' => [
					'unit' => 'deg',
				],
				'mobile_default' => [
					'unit' => 'deg',
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-icon i, {{WRAPPER}} .elementor-icon svg' => 'transform: rotate({{SIZE}}{{UNIT}})',
				],
			]
		);

		$this->add_control(
			'icon_border_width',
			[
				'label' => esc_html__( 'Border Width', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'selectors' => [
					'{{WRAPPER}} .elementor-icon' => 'border-width: {{SIZE}}{{UNIT}}',
				],
				'condition' => [
					'icon_view' => 'framed',
				],
			]
		);

		$this->add_control(
			'border_radius',
			[
				'label' => esc_html__( 'Border Radius', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'size_units' => [ 'px', '%' ],
				'selectors' => [
					'{{WRAPPER}} .elementor-icon' => 'border-radius: {{SIZE}}{{UNIT}}',
				],
				'condition' => [
					'icon_view!' => 'default',
				],
			]
		);

		$this->end_controls_section();
	}

	/**
	 * Build SVG
	 *
	 * Build SVG element markup based on the widgets settings.
	 *
	 * @return string - An SVG element.
	 *
	 * @since  2.7.0
	 * @access private
	 */
	private function build_svg() {
		$settings = $this->get_settings_for_display();

		if ( 'pattern' !== $settings['separator_type'] || empty( $settings['style'] ) ) {
			return '';
		}

		$svg_shapes = $this->get_separator_styles();

		$selected_pattern = $svg_shapes[ $settings['style'] ];
		$preserve_aspect_ratio = $selected_pattern['preserve_aspect_ratio'] ? 'xMidYMid meet' : 'none';
		$view_box = isset( $selected_pattern['view_box'] ) ? $selected_pattern['view_box'] : '0 0 24 24';

		$attr = [
			'preserveAspectRatio' => $preserve_aspect_ratio,
			'overflow' => 'visible',
			'height' => '100%',
			'viewBox' => $view_box,
		];

		if ( 'line' !== $selected_pattern['group'] ) {
			$attr['fill'] = 'black';
			$attr['stroke'] = 'none';
		} else {
			$attr['fill'] = 'none';
			$attr['stroke'] = 'black';
			$attr['stroke-width'] = $settings['weight']['size'];
			$attr['stroke-linecap'] = 'square';
			$attr['stroke-miterlimit'] = '10';
		}

		$this->add_render_attribute( 'svg', $attr );

		$pattern_attribute_string = $this->get_render_attribute_string( 'svg' );
		$shape = $selected_pattern['shape'];

		return '<svg xmlns="http://www.w3.org/2000/svg" ' . $pattern_attribute_string . '>' . $shape . '</svg>';
	}

	public function svg_to_data_uri( $svg ) {
		return str_replace(
			[ '<', '>', '"', '#' ],
			[ '%3C', '%3E', "'", '%23' ],
			$svg
		);
	}

	/**
	 * Render divider widget output on the frontend.
	 *
	 * Written in PHP and used to generate the final HTML.
	 *
	 * @since 1.0.0
	 * @access protected
	 */
	protected function render() {
		$settings = $this->get_settings_for_display();
		$svg_code = $this->build_svg();
		$has_icon = 'line_icon' === ( $settings['look'] ) && ! empty( $settings['icon'] );
		$has_text = 'line_text' === ( $settings['look'] ) && ! empty( $settings['text'] );

		$this->add_render_attribute( 'wrapper', 'class', 'elementor-divider' );

		if ( ! empty( $svg_code ) ) {
			$this->add_render_attribute( 'wrapper', 'style', '--divider-pattern-url: url("data:image/svg+xml,' . $this->svg_to_data_uri( $svg_code ) . '");' );
		}

		?>
		<div <?php $this->print_render_attribute_string( 'wrapper' ); ?>>
			<span class="elementor-divider-separator">
			<?php if ( $has_icon ) : ?>
				<div class="elementor-icon elementor-divider__element">
					<?php
					Icons_Manager::render_icon( $settings['icon'], [
						'aria-hidden' => 'true',
					] );
					?></div>
			<?php elseif ( $has_text ) :
				$this->add_inline_editing_attributes( 'text' );
				$this->add_render_attribute( 'text', [ 'class' => [ 'elementor-divider__text', 'elementor-divider__element' ] ] );
				?>
				<<?php Utils::print_validated_html_tag( $settings['html_tag'] ); ?> <?php $this->print_render_attribute_string( 'text' ); ?>>
				<?php
				// PHPCS - the main text of a widget should not be escaped.
				echo $settings['text']; // phpcs:ignore WordPress.Security.EscapeOutput ?>
				</<?php Utils::print_validated_html_tag( $settings['html_tag'] ); ?>>
			<?php endif; ?>
			</span>
		</div>
		<?php
	}
}
includes/widgets/menu-anchor.php000064400000006250151327220420012746 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor menu anchor widget.
 *
 * Elementor widget that allows to link and menu to a specific position on the
 * page.
 *
 * @since 1.0.0
 */
class Widget_Menu_Anchor extends Widget_Base {

	/**
	 * Get widget name.
	 *
	 * Retrieve menu anchor widget name.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget name.
	 */
	public function get_name() {
		return 'menu-anchor';
	}

	/**
	 * Get widget title.
	 *
	 * Retrieve menu anchor widget title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget title.
	 */
	public function get_title() {
		return esc_html__( 'Menu Anchor', 'elementor' );
	}

	/**
	 * Get widget icon.
	 *
	 * Retrieve menu anchor widget icon.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget icon.
	 */
	public function get_icon() {
		return 'eicon-anchor';
	}

	/**
	 * Get widget keywords.
	 *
	 * Retrieve the list of keywords the widget belongs to.
	 *
	 * @since 2.1.0
	 * @access public
	 *
	 * @return array Widget keywords.
	 */
	public function get_keywords() {
		return [ 'menu', 'anchor', 'link' ];
	}

	/**
	 * Register menu anchor widget controls.
	 *
	 * Adds different input fields to allow the user to change and customize the widget settings.
	 *
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		$this->start_controls_section(
			'section_anchor',
			[
				'label' => esc_html__( 'Anchor', 'elementor' ),
			]
		);

		$this->add_control(
			'anchor',
			[
				'label' => esc_html__( 'The ID of Menu Anchor.', 'elementor' ),
				'type' => Controls_Manager::TEXT,
				'placeholder' => esc_html__( 'For Example: About', 'elementor' ),
				'description' => esc_html__( 'This ID will be the CSS ID you will have to use in your own page, Without #.', 'elementor' ),
				'label_block' => true,
			]
		);

		$this->add_control(
			'anchor_note',
			[
				'type' => Controls_Manager::RAW_HTML,
				'raw' => sprintf(
					/* translators: %s: Accepted chars. */
					esc_html__( 'Note: The ID link ONLY accepts these chars: %s', 'elementor' ),
					'`A-Z, a-z, 0-9, _ , -`'
				),
				'content_classes' => 'elementor-panel-alert elementor-panel-alert-warning',
			]
		);

		$this->end_controls_section();
	}

	/**
	 * Render menu anchor widget output on the frontend.
	 *
	 * Written in PHP and used to generate the final HTML.
	 *
	 * @since 1.0.0
	 * @access protected
	 */
	protected function render() {
		$anchor = $this->get_settings_for_display( 'anchor' );

		if ( ! empty( $anchor ) ) {
			$this->add_render_attribute( 'inner', 'id', sanitize_html_class( $anchor ) );
		}

		$this->add_render_attribute( 'inner', 'class', 'elementor-menu-anchor' );
		?>
		<div <?php $this->print_render_attribute_string( 'inner' ); ?>></div>
		<?php
	}

	/**
	 * Render menu anchor widget output in the editor.
	 *
	 * Written as a Backbone JavaScript template and used to generate the live preview.
	 *
	 * @since 2.9.0
	 * @access protected
	 */
	protected function content_template() {
		?>
		<div class="elementor-menu-anchor"{{{ settings.anchor ? ' id="' + settings.anchor + '"' : '' }}}></div>
		<?php
	}
}
includes/widgets/common.php000064400000063734151327220420012034 0ustar00<?php
namespace Elementor;

use Elementor\Core\Breakpoints\Manager as Breakpoints_Manager;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor common widget.
 *
 * Elementor base widget that gives you all the advanced options of the basic
 * widget.
 *
 * @since 1.0.0
 */
class Widget_Common extends Widget_Base {

	/**
	 * Get widget name.
	 *
	 * Retrieve common widget name.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget name.
	 */
	public function get_name() {
		return 'common';
	}

	/**
	 * Show in panel.
	 *
	 * Whether to show the common widget in the panel or not.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return bool Whether to show the widget in the panel.
	 */
	public function show_in_panel() {
		return false;
	}

	/**
	 * Get Responsive Device Args
	 *
	 * Receives an array of device args, and duplicates it for each active breakpoint.
	 * Returns an array of device args.
	 *
	 * @since 3.4.7
	 * @access protected
	 *
	 * @param array $args arguments to duplicate per breakpoint
	 * @param array $devices_to_exclude
	 *
	 * @return array responsive device args
	 */
	protected function get_responsive_device_args( array $args, array $devices_to_exclude = [] ) {
		$device_args = [];
		$breakpoints = Breakpoints_Manager::get_default_config();

		foreach ( $breakpoints as $breakpoint_key => $breakpoint ) {
			// If the device is not excluded, add it to the device args array.
			if ( ! in_array( $breakpoint_key, $devices_to_exclude, true ) ) {
				$parsed_device_args = $this->parse_device_args_placeholders( $args, $breakpoint_key );

				$device_args[ $breakpoint_key ] = $parsed_device_args;
			}
		}

		return $device_args;
	}

	/**
	 * Parse Device Args Placeholders
	 *
	 * Receives an array of args. Iterates over the args, and replaces the {{DEVICE}} placeholder, if exists, with the
	 * passed breakpoint key.
	 *
	 * @since 3.4.7
	 * @access private
	 *
	 * @param array $args
	 * @param string $breakpoint_key
	 * @return array parsed device args
	 */
	private function parse_device_args_placeholders( array $args, $breakpoint_key ) {
		$parsed_args = [];

		foreach ( $args as $arg_key => $arg_value ) {
			$arg_key = str_replace( '{{DEVICE}}', $breakpoint_key, $arg_key );

			if ( is_array( $arg_value ) ) {
				$arg_value = $this->parse_device_args_placeholders( $arg_value, $breakpoint_key );
			}

			$parsed_args[ $arg_key ] = $arg_value;
		}

		return $parsed_args;
	}

	/**
	 * @param $shape String Shape name.
	 *
	 * @return string The shape path in the assets folder.
	 */
	private function get_shape_url( $shape ) {
		return ELEMENTOR_ASSETS_URL . 'mask-shapes/' . $shape . '.svg';
	}

	/**
	 * Return a translated user-friendly list of the available masking shapes.
	 *
	 * @param bool $add_custom Determine if the output should contain `Custom` options.
	 *
	 * @return array Array of shapes with their URL as key.
	 */
	private function get_shapes( $add_custom = true ) {
		$shapes = [
			'circle' => esc_html__( 'Circle', 'elementor' ),
			'flower' => esc_html__( 'Flower', 'elementor' ),
			'sketch' => esc_html__( 'Sketch', 'elementor' ),
			'triangle' => esc_html__( 'Triangle', 'elementor' ),
			'blob' => esc_html__( 'Blob', 'elementor' ),
			'hexagon' => esc_html__( 'Hexagon', 'elementor' ),
		];

		if ( $add_custom ) {
			$shapes['custom'] = esc_html__( 'Custom', 'elementor' );
		}

		return $shapes;
	}

	/**
	 * Gets a string of CSS rules to apply, and returns an array of selectors with those rules.
	 * This function has been created in order to deal with masking for image widget.
	 * For most of the widgets the mask is being applied to the wrapper itself, but in the case of an image widget,
	 * the `img` tag should be masked directly. So instead of writing a lot of selectors every time,
	 * this function builds both of those selectors easily.
	 *
	 * @param $rules string The CSS rules to apply.
	 *
	 * @return array Selectors with the rules applied.
	 */
	private function get_mask_selectors( $rules ) {
		$mask_selectors = [
			'default' => '{{WRAPPER}}:not( .elementor-widget-image ) .elementor-widget-container',
			'image' => '{{WRAPPER}}.elementor-widget-image .elementor-widget-container img',
		];

		return [
			$mask_selectors['default'] => $rules,
			$mask_selectors['image'] => $rules,
		];
	}

	/**
	 * Register common widget controls.
	 *
	 * Adds different input fields to allow the user to change and customize the widget settings.
	 *
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		$this->start_controls_section(
			'_section_style',
			[
				'label' => esc_html__( 'Advanced', 'elementor' ),
				'tab' => Controls_Manager::TAB_ADVANCED,
			]
		);

		// Element Name for the Navigator
		$this->add_control(
			'_title',
			[
				'label' => esc_html__( 'Title', 'elementor' ),
				'type' => Controls_Manager::HIDDEN,
				'render_type' => 'none',
			]
		);

		$this->add_responsive_control(
			'_margin',
			[
				'label' => esc_html__( 'Margin', 'elementor' ),
				'type' => Controls_Manager::DIMENSIONS,
				'size_units' => [ 'px', 'em', '%', 'rem' ],
				'selectors' => [
					'{{WRAPPER}} > .elementor-widget-container' => 'margin: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
				],
			]
		);

		$this->add_responsive_control(
			'_padding',
			[
				'label' => esc_html__( 'Padding', 'elementor' ),
				'type' => Controls_Manager::DIMENSIONS,
				'size_units' => [ 'px', 'em', '%', 'rem' ],
				'selectors' => [
					'{{WRAPPER}} > .elementor-widget-container' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
				],
			]
		);

		$this->add_responsive_control(
			'_z_index',
			[
				'label' => esc_html__( 'Z-Index', 'elementor' ),
				'type' => Controls_Manager::NUMBER,
				'min' => 0,
				'selectors' => [
					'{{WRAPPER}}' => 'z-index: {{VALUE}};',
				],
				'separator' => 'before',
			]
		);

		$this->add_control(
			'_element_id',
			[
				'label' => esc_html__( 'CSS ID', 'elementor' ),
				'type' => Controls_Manager::TEXT,
				'dynamic' => [
					'active' => true,
				],
				'default' => '',
				'title' => esc_html__( 'Add your custom id WITHOUT the Pound key. e.g: my-id', 'elementor' ),
				'style_transfer' => false,
				'classes' => 'elementor-control-direction-ltr',
			]
		);

		$this->add_control(
			'_css_classes',
			[
				'label' => esc_html__( 'CSS Classes', 'elementor' ),
				'type' => Controls_Manager::TEXT,
				'dynamic' => [
					'active' => true,
				],
				'prefix_class' => '',
				'title' => esc_html__( 'Add your custom class WITHOUT the dot. e.g: my-class', 'elementor' ),
				'classes' => 'elementor-control-direction-ltr',
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_effects',
			[
				'label' => esc_html__( 'Motion Effects', 'elementor' ),
				'tab' => Controls_Manager::TAB_ADVANCED,
			]
		);

		$this->add_responsive_control(
			'_animation',
			[
				'label' => esc_html__( 'Entrance Animation', 'elementor' ),
				'type' => Controls_Manager::ANIMATION,
				'frontend_available' => true,
			]
		);

		$this->add_control(
			'animation_duration',
			[
				'label' => esc_html__( 'Animation Duration', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => '',
				'options' => [
					'slow' => esc_html__( 'Slow', 'elementor' ),
					'' => esc_html__( 'Normal', 'elementor' ),
					'fast' => esc_html__( 'Fast', 'elementor' ),
				],
				'prefix_class' => 'animated-',
				'condition' => [
					'_animation!' => '',
				],
			]
		);

		$this->add_control(
			'_animation_delay',
			[
				'label' => esc_html__( 'Animation Delay', 'elementor' ) . ' (ms)',
				'type' => Controls_Manager::NUMBER,
				'default' => '',
				'min' => 0,
				'step' => 100,
				'condition' => [
					'_animation!' => '',
				],
				'render_type' => 'none',
				'frontend_available' => true,
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'_section_background',
			[
				'label' => esc_html__( 'Background', 'elementor' ),
				'tab' => Controls_Manager::TAB_ADVANCED,
			]
		);

		$this->start_controls_tabs( '_tabs_background' );

		$this->start_controls_tab(
			'_tab_background_normal',
			[
				'label' => esc_html__( 'Normal', 'elementor' ),
			]
		);

		$this->add_group_control(
			Group_Control_Background::get_type(),
			[
				'name' => '_background',
				'selector' => '{{WRAPPER}} > .elementor-widget-container',
			]
		);

		$this->end_controls_tab();

		$this->start_controls_tab(
			'_tab_background_hover',
			[
				'label' => esc_html__( 'Hover', 'elementor' ),
			]
		);

		$this->add_group_control(
			Group_Control_Background::get_type(),
			[
				'name' => '_background_hover',
				'selector' => '{{WRAPPER}}:hover .elementor-widget-container',
			]
		);

		$this->add_control(
			'_background_hover_transition',
			[
				'label' => esc_html__( 'Transition Duration', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'max' => 3,
						'step' => 0.1,
					],
				],
				'render_type' => 'ui',
				'separator' => 'before',
				'selectors' => [
					'{{WRAPPER}} > .elementor-widget-container' => 'transition: background {{SIZE}}s',
				],
			]
		);

		$this->end_controls_tab();

		$this->end_controls_tabs();

		$this->end_controls_section();

		$this->start_controls_section(
			'_section_border',
			[
				'label' => esc_html__( 'Border', 'elementor' ),
				'tab' => Controls_Manager::TAB_ADVANCED,
			]
		);

		$this->start_controls_tabs( '_tabs_border' );

		$this->start_controls_tab(
			'_tab_border_normal',
			[
				'label' => esc_html__( 'Normal', 'elementor' ),
			]
		);

		$this->add_group_control(
			Group_Control_Border::get_type(),
			[
				'name' => '_border',
				'selector' => '{{WRAPPER}} > .elementor-widget-container',
			]
		);

		$this->add_responsive_control(
			'_border_radius',
			[
				'label' => esc_html__( 'Border Radius', 'elementor' ),
				'type' => Controls_Manager::DIMENSIONS,
				'size_units' => [ 'px', '%' ],
				'selectors' => [
					'{{WRAPPER}} > .elementor-widget-container' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Box_Shadow::get_type(),
			[
				'name' => '_box_shadow',
				'selector' => '{{WRAPPER}} > .elementor-widget-container',
			]
		);

		$this->end_controls_tab();

		$this->start_controls_tab(
			'_tab_border_hover',
			[
				'label' => esc_html__( 'Hover', 'elementor' ),
			]
		);

		$this->add_group_control(
			Group_Control_Border::get_type(),
			[
				'name' => '_border_hover',
				'selector' => '{{WRAPPER}}:hover .elementor-widget-container',
			]
		);

		$this->add_responsive_control(
			'_border_radius_hover',
			[
				'label' => esc_html__( 'Border Radius', 'elementor' ),
				'type' => Controls_Manager::DIMENSIONS,
				'size_units' => [ 'px', '%' ],
				'selectors' => [
					'{{WRAPPER}}:hover > .elementor-widget-container' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Box_Shadow::get_type(),
			[
				'name' => '_box_shadow_hover',
				'selector' => '{{WRAPPER}}:hover .elementor-widget-container',
			]
		);

		$this->add_control(
			'_border_hover_transition',
			[
				'label' => esc_html__( 'Transition Duration', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'separator' => 'before',
				'range' => [
					'px' => [
						'max' => 3,
						'step' => 0.1,
					],
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-widget-container' => 'transition: background {{_background_hover_transition.SIZE}}s, border {{SIZE}}s, border-radius {{SIZE}}s, box-shadow {{SIZE}}s',
				],
			]
		);

		$this->end_controls_tab();

		$this->end_controls_tabs();

		$this->end_controls_section();

		$this->start_controls_section(
			'_section_masking',
			[
				'label' => esc_html__( 'Mask', 'elementor' ),
				'tab' => Controls_Manager::TAB_ADVANCED,
			]
		);

		$this->add_control(
			'_mask_switch',
			[
				'label' => esc_html__( 'Mask', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'label_on' => esc_html__( 'On', 'elementor' ),
				'label_off' => esc_html__( 'Off', 'elementor' ),
				'default' => '',
			]
		);

		$this->add_control(
			'_mask_shape',
			[
				'label' => esc_html__( 'Shape', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'options' => $this->get_shapes(),
				'default' => 'circle',
				'selectors' => $this->get_mask_selectors( '-webkit-mask-image: url( ' . ELEMENTOR_ASSETS_URL . '/mask-shapes/{{VALUE}}.svg );' ),
				'condition' => [
					'_mask_switch!' => '',
				],
			]
		);

		$this->add_control(
			'_mask_image',
			[
				'label' => esc_html__( 'Image', 'elementor' ),
				'type' => Controls_Manager::MEDIA,
				'media_type' => 'image',
				'should_include_svg_inline_option' => true,
				'library_type' => 'image/svg+xml',
				'dynamic' => [
					'active' => true,
				],
				'selectors' => $this->get_mask_selectors( '-webkit-mask-image: url( {{URL}} );' ),
				'condition' => [
					'_mask_switch!' => '',
					'_mask_shape' => 'custom',
				],
			]
		);

		$this->add_control(
			'_mask_notice',
			[
				'type' => Controls_Manager::HIDDEN,
				'raw' => esc_html__( 'Need More Shapes?', 'elementor' ) .
						'<br>' .
						sprintf(
							/* translators: 1: Link open tag, 2: Link close tag. */
							esc_html__( 'Explore additional Premium Shape packs and use them in your site. %1$sLearn More%2$s', 'elementor' ),
							'<a target="_blank" href="https://go.elementor.com/mask-control">',
							'</a>'
						),
				'content_classes' => 'elementor-panel-alert elementor-panel-alert-info',
				'condition' => [
					'_mask_switch!' => '',
				],
			]
		);

		$this->add_responsive_control(
			'_mask_size',
			[
				'label' => esc_html__( 'Size', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'options' => [
					'contain' => esc_html__( 'Fit', 'elementor' ),
					'cover' => esc_html__( 'Fill', 'elementor' ),
					'custom' => esc_html__( 'Custom', 'elementor' ),
				],
				'default' => 'contain',
				'selectors' => $this->get_mask_selectors( '-webkit-mask-size: {{VALUE}};' ),
				'condition' => [
					'_mask_switch!' => '',
				],
			]
		);

		$this->add_responsive_control(
			'_mask_size_scale',
			[
				'label' => esc_html__( 'Scale', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'size_units' => [ 'px', 'em', '%', 'vw' ],
				'range' => [
					'px' => [
						'min' => 0,
						'max' => 500,
					],
					'em' => [
						'min' => 0,
						'max' => 100,
					],
					'%' => [
						'min' => 0,
						'max' => 200,
					],
					'vw' => [
						'min' => 0,
						'max' => 100,
					],
				],
				'default' => [
					'unit' => '%',
					'size' => 100,
				],
				'selectors' => $this->get_mask_selectors( '-webkit-mask-size: {{SIZE}}{{UNIT}};' ),
				'condition' => [
					'_mask_switch!' => '',
					'_mask_size' => 'custom',
				],
			]
		);

		$this->add_responsive_control(
			'_mask_position',
			[
				'label' => esc_html__( 'Position', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'options' => [
					'center center' => esc_html__( 'Center Center', 'elementor' ),
					'center left' => esc_html__( 'Center Left', 'elementor' ),
					'center right' => esc_html__( 'Center Right', 'elementor' ),
					'top center' => esc_html__( 'Top Center', 'elementor' ),
					'top left' => esc_html__( 'Top Left', 'elementor' ),
					'top right' => esc_html__( 'Top Right', 'elementor' ),
					'bottom center' => esc_html__( 'Bottom Center', 'elementor' ),
					'bottom left' => esc_html__( 'Bottom Left', 'elementor' ),
					'bottom right' => esc_html__( 'Bottom Right', 'elementor' ),
					'custom' => esc_html__( 'Custom', 'elementor' ),
				],
				'default' => 'center center',
				'selectors' => $this->get_mask_selectors( '-webkit-mask-position: {{VALUE}};' ),
				'condition' => [
					'_mask_switch!' => '',
				],
			]
		);

		$this->add_responsive_control(
			'_mask_position_x',
			[
				'label' => esc_html__( 'X Position', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'size_units' => [ 'px', 'em', '%', 'vw' ],
				'range' => [
					'px' => [
						'min' => -500,
						'max' => 500,
					],
					'em' => [
						'min' => -100,
						'max' => 100,
					],
					'%' => [
						'min' => -100,
						'max' => 100,
					],
					'vw' => [
						'min' => -100,
						'max' => 100,
					],
				],
				'default' => [
					'unit' => '%',
					'size' => 0,
				],
				'selectors' => $this->get_mask_selectors( '-webkit-mask-position-x: {{SIZE}}{{UNIT}};' ),
				'condition' => [
					'_mask_switch!' => '',
					'_mask_position' => 'custom',
				],
			]
		);

		$this->add_responsive_control(
			'_mask_position_y',
			[
				'label' => esc_html__( 'Y Position', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'size_units' => [ 'px', 'em', '%', 'vw' ],
				'range' => [
					'px' => [
						'min' => -500,
						'max' => 500,
					],
					'em' => [
						'min' => -100,
						'max' => 100,
					],
					'%' => [
						'min' => -100,
						'max' => 100,
					],
					'vw' => [
						'min' => -100,
						'max' => 100,
					],
				],
				'default' => [
					'unit' => '%',
					'size' => 0,
				],
				'selectors' => $this->get_mask_selectors( '-webkit-mask-position-y: {{SIZE}}{{UNIT}};' ),
				'condition' => [
					'_mask_switch!' => '',
					'_mask_position' => 'custom',
				],
			]
		);

		$this->add_responsive_control(
			'_mask_repeat',
			[
				'label' => esc_html__( 'Repeat', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'options' => [
					'no-repeat' => esc_html__( 'No-Repeat', 'elementor' ),
					'repeat' => esc_html__( 'Repeat', 'elementor' ),
					'repeat-x' => esc_html__( 'Repeat-X', 'elementor' ),
					'repeat-Y' => esc_html__( 'Repeat-Y', 'elementor' ),
					'round' => esc_html__( 'Round', 'elementor' ),
					'space' => esc_html__( 'Space', 'elementor' ),
				],
				'default' => 'no-repeat',
				'selectors' => $this->get_mask_selectors( '-webkit-mask-repeat: {{VALUE}};' ),
				'condition' => [
					'_mask_switch!' => '',
					'_mask_size!' => 'cover',
				],
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'_section_position',
			[
				'label' => esc_html__( 'Positioning', 'elementor' ),
				'tab' => Controls_Manager::TAB_ADVANCED,
			]
		);

		$this->add_responsive_control(
			'_element_width',
			[
				'label' => esc_html__( 'Width', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => '',
				'options' => [
					'' => esc_html__( 'Default', 'elementor' ),
					'inherit' => esc_html__( 'Full Width', 'elementor' ) . ' (100%)',
					'auto' => esc_html__( 'Inline', 'elementor' ) . ' (auto)',
					'initial' => esc_html__( 'Custom', 'elementor' ),
				],
				'selectors_dictionary' => [
					'inherit' => '100%',
				],
				'prefix_class' => 'elementor-widget%s__width-',
				'selectors' => [
					'{{WRAPPER}}' => 'width: {{VALUE}}; max-width: {{VALUE}}',
				],
			]
		);

		$this->add_responsive_control(
			'_element_custom_width',
			[
				'label' => esc_html__( 'Custom Width', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'max' => 1000,
						'step' => 1,
					],
					'%' => [
						'max' => 100,
						'step' => 1,
					],
				],
				'condition' => [
					'_element_width' => 'initial',
				],
				'device_args' => $this->get_responsive_device_args( [
					'condition' => [
						'_element_width_{{DEVICE}}' => [ 'initial' ],
					],
				] ),
				'size_units' => [ 'px', '%', 'vw' ],
				'selectors' => [
					'{{WRAPPER}}' => 'width: {{SIZE}}{{UNIT}}; max-width: {{SIZE}}{{UNIT}}',
				],
			]
		);

		$this->add_responsive_control(
			'_element_vertical_align',
			[
				'label' => esc_html__( 'Vertical Align', 'elementor' ),
				'type' => Controls_Manager::CHOOSE,
				'options' => [
					'flex-start' => [
						'title' => esc_html__( 'Start', 'elementor' ),
						'icon' => 'eicon-v-align-top',
					],
					'center' => [
						'title' => esc_html__( 'Center', 'elementor' ),
						'icon' => 'eicon-v-align-middle',
					],
					'flex-end' => [
						'title' => esc_html__( 'End', 'elementor' ),
						'icon' => 'eicon-v-align-bottom',
					],
				],
				'condition' => [
					'_element_width!' => '',
					'_position' => '',
				],
				'selectors' => [
					'{{WRAPPER}}' => 'align-self: {{VALUE}}',
				],
			]
		);

		$this->add_control(
			'_position_description',
			[
				'raw' => '<strong>' . esc_html__( 'Please note!', 'elementor' ) . '</strong> ' . esc_html__( 'Custom positioning is not considered best practice for responsive web design and should not be used too frequently.', 'elementor' ),
				'type' => Controls_Manager::RAW_HTML,
				'content_classes' => 'elementor-panel-alert elementor-panel-alert-warning',
				'render_type' => 'ui',
				'condition' => [
					'_position!' => '',
				],
			]
		);

		$this->add_control(
			'_position',
			[
				'label' => esc_html__( 'Position', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => '',
				'options' => [
					'' => esc_html__( 'Default', 'elementor' ),
					'absolute' => esc_html__( 'Absolute', 'elementor' ),
					'fixed' => esc_html__( 'Fixed', 'elementor' ),
				],
				'prefix_class' => 'elementor-',
				'frontend_available' => true,
			]
		);

		$start = is_rtl() ? esc_html__( 'Right', 'elementor' ) : esc_html__( 'Left', 'elementor' );
		$end = ! is_rtl() ? esc_html__( 'Right', 'elementor' ) : esc_html__( 'Left', 'elementor' );

		$this->add_control(
			'_offset_orientation_h',
			[
				'label' => esc_html__( 'Horizontal Orientation', 'elementor' ),
				'type' => Controls_Manager::CHOOSE,
				'toggle' => false,
				'default' => 'start',
				'options' => [
					'start' => [
						'title' => $start,
						'icon' => 'eicon-h-align-left',
					],
					'end' => [
						'title' => $end,
						'icon' => 'eicon-h-align-right',
					],
				],
				'classes' => 'elementor-control-start-end',
				'render_type' => 'ui',
				'condition' => [
					'_position!' => '',
				],
			]
		);

		$this->add_responsive_control(
			'_offset_x',
			[
				'label' => esc_html__( 'Offset', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'min' => -1000,
						'max' => 1000,
						'step' => 1,
					],
					'%' => [
						'min' => -200,
						'max' => 200,
					],
					'vw' => [
						'min' => -200,
						'max' => 200,
					],
					'vh' => [
						'min' => -200,
						'max' => 200,
					],
				],
				'default' => [
					'size' => '0',
				],
				'size_units' => [ 'px', '%', 'vw', 'vh' ],
				'selectors' => [
					'body:not(.rtl) {{WRAPPER}}' => 'left: {{SIZE}}{{UNIT}}',
					'body.rtl {{WRAPPER}}' => 'right: {{SIZE}}{{UNIT}}',
				],
				'condition' => [
					'_offset_orientation_h!' => 'end',
					'_position!' => '',
				],
			]
		);

		$this->add_responsive_control(
			'_offset_x_end',
			[
				'label' => esc_html__( 'Offset', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'min' => -1000,
						'max' => 1000,
						'step' => 0.1,
					],
					'%' => [
						'min' => -200,
						'max' => 200,
					],
					'vw' => [
						'min' => -200,
						'max' => 200,
					],
					'vh' => [
						'min' => -200,
						'max' => 200,
					],
				],
				'default' => [
					'size' => '0',
				],
				'size_units' => [ 'px', '%', 'vw', 'vh' ],
				'selectors' => [
					'body:not(.rtl) {{WRAPPER}}' => 'right: {{SIZE}}{{UNIT}}',
					'body.rtl {{WRAPPER}}' => 'left: {{SIZE}}{{UNIT}}',
				],
				'condition' => [
					'_offset_orientation_h' => 'end',
					'_position!' => '',
				],
			]
		);

		$this->add_control(
			'_offset_orientation_v',
			[
				'label' => esc_html__( 'Vertical Orientation', 'elementor' ),
				'type' => Controls_Manager::CHOOSE,
				'toggle' => false,
				'default' => 'start',
				'options' => [
					'start' => [
						'title' => esc_html__( 'Top', 'elementor' ),
						'icon' => 'eicon-v-align-top',
					],
					'end' => [
						'title' => esc_html__( 'Bottom', 'elementor' ),
						'icon' => 'eicon-v-align-bottom',
					],
				],
				'render_type' => 'ui',
				'condition' => [
					'_position!' => '',
				],
			]
		);

		$this->add_responsive_control(
			'_offset_y',
			[
				'label' => esc_html__( 'Offset', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'min' => -1000,
						'max' => 1000,
						'step' => 1,
					],
					'%' => [
						'min' => -200,
						'max' => 200,
					],
					'vh' => [
						'min' => -200,
						'max' => 200,
					],
					'vw' => [
						'min' => -200,
						'max' => 200,
					],
				],
				'size_units' => [ 'px', '%', 'vh', 'vw' ],
				'default' => [
					'size' => '0',
				],
				'selectors' => [
					'{{WRAPPER}}' => 'top: {{SIZE}}{{UNIT}}',
				],
				'condition' => [
					'_offset_orientation_v!' => 'end',
					'_position!' => '',
				],
			]
		);

		$this->add_responsive_control(
			'_offset_y_end',
			[
				'label' => esc_html__( 'Offset', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'min' => -1000,
						'max' => 1000,
						'step' => 1,
					],
					'%' => [
						'min' => -200,
						'max' => 200,
					],
					'vh' => [
						'min' => -200,
						'max' => 200,
					],
					'vw' => [
						'min' => -200,
						'max' => 200,
					],
				],
				'size_units' => [ 'px', '%', 'vh', 'vw' ],
				'default' => [
					'size' => '0',
				],
				'selectors' => [
					'{{WRAPPER}}' => 'bottom: {{SIZE}}{{UNIT}}',
				],
				'condition' => [
					'_offset_orientation_v' => 'end',
					'_position!' => '',
				],
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'_section_responsive',
			[
				'label' => esc_html__( 'Responsive', 'elementor' ),
				'tab' => Controls_Manager::TAB_ADVANCED,
			]
		);

		$this->add_control(
			'responsive_description',
			[
				'raw' => esc_html__( 'Responsive visibility will take effect only on preview or live page, and not while editing in Elementor.', 'elementor' ),
				'type' => Controls_Manager::RAW_HTML,
				'content_classes' => 'elementor-descriptor',
			]
		);

		$this->add_hidden_device_controls();

		$this->end_controls_section();

		Plugin::$instance->controls_manager->add_custom_attributes_controls( $this );

		Plugin::$instance->controls_manager->add_custom_css_controls( $this );
	}
}
includes/widgets/audio.php000064400000016647151327220420011646 0ustar00<?php
namespace Elementor;

use Elementor\Modules\DynamicTags\Module as TagsModule;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor audio widget.
 *
 * Elementor widget that displays an audio player.
 *
 * @since 1.0.0
 */
class Widget_Audio extends Widget_Base {

	/**
	 * Current instance.
	 *
	 * @access protected
	 *
	 * @var array
	 */
	protected $_current_instance = [];

	/**
	 * Get widget name.
	 *
	 * Retrieve audio widget name.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget name.
	 */
	public function get_name() {
		return 'audio';
	}

	/**
	 * Get widget title.
	 *
	 * Retrieve audio widget title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget title.
	 */
	public function get_title() {
		return esc_html__( 'SoundCloud', 'elementor' );
	}

	/**
	 * Get widget icon.
	 *
	 * Retrieve audio widget icon.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget icon.
	 */
	public function get_icon() {
		return 'eicon-headphones';
	}

	/**
	 * Get widget keywords.
	 *
	 * Retrieve the list of keywords the widget belongs to.
	 *
	 * @since 2.1.0
	 * @access public
	 *
	 * @return array Widget keywords.
	 */
	public function get_keywords() {
		return [ 'audio', 'player', 'soundcloud', 'embed' ];
	}

	/**
	 * Register audio widget controls.
	 *
	 * Adds different input fields to allow the user to change and customize the widget settings.
	 *
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		$this->start_controls_section(
			'section_audio',
			[
				'label' => esc_html__( 'SoundCloud', 'elementor' ),
			]
		);

		$this->add_control(
			'link',
			[
				'label' => esc_html__( 'Link', 'elementor' ),
				'type' => Controls_Manager::URL,
				'dynamic' => [
					'active' => true,
					'categories' => [
						TagsModule::POST_META_CATEGORY,
						TagsModule::URL_CATEGORY,
					],
				],
				'default' => [
					'url' => 'https://soundcloud.com/shchxango/john-coltrane-1963-my-favorite',
				],
				'options' => false,
			]
		);

		$this->add_control(
			'visual',
			[
				'label' => esc_html__( 'Visual Player', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => 'no',
				'options' => [
					'yes' => esc_html__( 'Yes', 'elementor' ),
					'no' => esc_html__( 'No', 'elementor' ),
				],
			]
		);

		$this->add_control(
			'sc_options',
			[
				'label' => esc_html__( 'Additional Options', 'elementor' ),
				'type' => Controls_Manager::HEADING,
				'separator' => 'before',
			]
		);

		$this->add_control(
			'sc_auto_play',
			[
				'label' => esc_html__( 'Autoplay', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
			]
		);

		$this->add_control(
			'sc_buying',
			[
				'label' => esc_html__( 'Buy Button', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'label_off' => esc_html__( 'Hide', 'elementor' ),
				'label_on' => esc_html__( 'Show', 'elementor' ),
				'default' => 'yes',
			]
		);

		$this->add_control(
			'sc_liking',
			[
				'label' => esc_html__( 'Like Button', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'label_off' => esc_html__( 'Hide', 'elementor' ),
				'label_on' => esc_html__( 'Show', 'elementor' ),
				'default' => 'yes',
			]
		);

		$this->add_control(
			'sc_download',
			[
				'label' => esc_html__( 'Download Button', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'label_off' => esc_html__( 'Hide', 'elementor' ),
				'label_on' => esc_html__( 'Show', 'elementor' ),
				'default' => 'yes',
			]
		);

		$this->add_control(
			'sc_show_artwork',
			[
				'label' => esc_html__( 'Artwork', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'label_off' => esc_html__( 'Hide', 'elementor' ),
				'label_on' => esc_html__( 'Show', 'elementor' ),
				'default' => 'yes',
				'condition' => [
					'visual' => 'no',
				],
			]
		);

		$this->add_control(
			'sc_sharing',
			[
				'label' => esc_html__( 'Share Button', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'label_off' => esc_html__( 'Hide', 'elementor' ),
				'label_on' => esc_html__( 'Show', 'elementor' ),
				'default' => 'yes',
			]
		);

		$this->add_control(
			'sc_show_comments',
			[
				'label' => esc_html__( 'Comments', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'label_off' => esc_html__( 'Hide', 'elementor' ),
				'label_on' => esc_html__( 'Show', 'elementor' ),
				'default' => 'yes',
			]
		);

		$this->add_control(
			'sc_show_playcount',
			[
				'label' => esc_html__( 'Play Counts', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'label_off' => esc_html__( 'Hide', 'elementor' ),
				'label_on' => esc_html__( 'Show', 'elementor' ),
				'default' => 'yes',
			]
		);

		$this->add_control(
			'sc_show_user',
			[
				'label' => esc_html__( 'Username', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'label_off' => esc_html__( 'Hide', 'elementor' ),
				'label_on' => esc_html__( 'Show', 'elementor' ),
				'default' => 'yes',
			]
		);

		$this->add_control(
			'sc_color',
			[
				'label' => esc_html__( 'Controls Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
			]
		);

		$this->add_control(
			'view',
			[
				'label' => esc_html__( 'View', 'elementor' ),
				'type' => Controls_Manager::HIDDEN,
				'default' => 'soundcloud',
			]
		);

		$this->end_controls_section();

	}

	/**
	 * Render audio widget output on the frontend.
	 *
	 * Written in PHP and used to generate the final HTML.
	 *
	 * @since 1.0.0
	 * @access protected
	 */
	protected function render() {
		$settings = $this->get_settings_for_display();

		if ( empty( $settings['link'] ) ) {
			return;
		}

		$this->_current_instance = $settings;

		add_filter( 'oembed_result', [ $this, 'filter_oembed_result' ], 50, 3 );
		$video_html = wp_oembed_get( $settings['link']['url'], wp_embed_defaults() );
		remove_filter( 'oembed_result', [ $this, 'filter_oembed_result' ], 50 );

		if ( $video_html ) : ?>
			<div class="elementor-soundcloud-wrapper">
				<?php Utils::print_wp_kses_extended( $video_html, [ 'iframe' ] ); ?>
			</div>
			<?php
		endif;
	}

	/**
	 * Filter audio widget oEmbed results.
	 *
	 * Written in PHP and used to generate the final HTML.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param string $html The HTML returned by the oEmbed provider.
	 *
	 * @return string Filtered audio widget oEmbed HTML.
	 */
	public function filter_oembed_result( $html ) {
		$param_keys = [
			'auto_play',
			'buying',
			'liking',
			'download',
			'sharing',
			'show_comments',
			'show_playcount',
			'show_user',
			'show_artwork',
		];

		$params = [];

		foreach ( $param_keys as $param_key ) {
			$params[ $param_key ] = 'yes' === $this->_current_instance[ 'sc_' . $param_key ] ? 'true' : 'false';
		}

		$params['color'] = str_replace( '#', '', $this->_current_instance['sc_color'] );

		preg_match( '/<iframe.*src=\"(.*)\".*><\/iframe>/isU', $html, $matches );

		$url = esc_url( add_query_arg( $params, $matches[1] ) );

		$visual = 'yes' === $this->_current_instance['visual'] ? 'true' : 'false';

		$html = str_replace( [ $matches[1], 'visual=true' ], [ $url, 'visual=' . $visual ], $html );

		if ( 'false' === $visual ) {
			$html = str_replace( 'height="400"', 'height="200"', $html );
		}

		return $html;
	}

	/**
	 * Render audio widget output in the editor.
	 *
	 * Written as a Backbone JavaScript template and used to generate the live preview.
	 *
	 * @since 2.9.0
	 * @access protected
	 */
	protected function content_template() {}
}
includes/widgets/alert.php000064400000021510151327220420011635 0ustar00<?php
namespace Elementor;

use Elementor\Core\Kits\Documents\Tabs\Global_Typography;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor alert widget.
 *
 * Elementor widget that displays a collapsible display of content in an toggle
 * style, allowing the user to open multiple items.
 *
 * @since 1.0.0
 */
class Widget_Alert extends Widget_Base {

	/**
	 * Get widget name.
	 *
	 * Retrieve alert widget name.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget name.
	 */
	public function get_name() {
		return 'alert';
	}

	/**
	 * Get widget title.
	 *
	 * Retrieve alert widget title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget title.
	 */
	public function get_title() {
		return esc_html__( 'Alert', 'elementor' );
	}

	/**
	 * Get widget icon.
	 *
	 * Retrieve alert widget icon.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget icon.
	 */
	public function get_icon() {
		return 'eicon-alert';
	}

	/**
	 * Get widget keywords.
	 *
	 * Retrieve the list of keywords the widget belongs to.
	 *
	 * @since 2.1.0
	 * @access public
	 *
	 * @return array Widget keywords.
	 */
	public function get_keywords() {
		return [ 'alert', 'notice', 'message' ];
	}

	/**
	 * Register alert widget controls.
	 *
	 * Adds different input fields to allow the user to change and customize the widget settings.
	 *
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		$this->start_controls_section(
			'section_alert',
			[
				'label' => esc_html__( 'Alert', 'elementor' ),
			]
		);

		$this->add_control(
			'alert_type',
			[
				'label' => esc_html__( 'Type', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => 'info',
				'options' => [
					'info' => esc_html__( 'Info', 'elementor' ),
					'success' => esc_html__( 'Success', 'elementor' ),
					'warning' => esc_html__( 'Warning', 'elementor' ),
					'danger' => esc_html__( 'Danger', 'elementor' ),
				],
				'style_transfer' => true,
			]
		);

		$this->add_control(
			'alert_title',
			[
				'label' => esc_html__( 'Title & Description', 'elementor' ),
				'type' => Controls_Manager::TEXT,
				'placeholder' => esc_html__( 'Enter your title', 'elementor' ),
				'default' => esc_html__( 'This is an Alert', 'elementor' ),
				'label_block' => true,
				'dynamic' => [
					'active' => true,
				],
			]
		);

		$this->add_control(
			'alert_description',
			[
				'label' => esc_html__( 'Content', 'elementor' ),
				'type' => Controls_Manager::TEXTAREA,
				'placeholder' => esc_html__( 'Enter your description', 'elementor' ),
				'default' => esc_html__( 'I am a description. Click the edit button to change this text.', 'elementor' ),
				'separator' => 'none',
				'show_label' => false,
				'dynamic' => [
					'active' => true,
				],
			]
		);

		$this->add_control(
			'show_dismiss',
			[
				'label' => esc_html__( 'Dismiss Button', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => 'show',
				'options' => [
					'show' => esc_html__( 'Show', 'elementor' ),
					'hide' => esc_html__( 'Hide', 'elementor' ),
				],
			]
		);

		$this->add_control(
			'view',
			[
				'label' => esc_html__( 'View', 'elementor' ),
				'type' => Controls_Manager::HIDDEN,
				'default' => 'traditional',
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_type',
			[
				'label' => esc_html__( 'Alert', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->add_control(
			'background',
			[
				'label' => esc_html__( 'Background Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'{{WRAPPER}} .elementor-alert' => 'background-color: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'border_color',
			[
				'label' => esc_html__( 'Border Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'{{WRAPPER}} .elementor-alert' => 'border-color: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'border_left-width',
			[
				'label' => esc_html__( 'Left Border Width', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'min' => 0,
						'max' => 100,
					],
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-alert' => 'border-left-width: {{SIZE}}{{UNIT}};',
				],
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_title',
			[
				'label' => esc_html__( 'Title', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->add_control(
			'title_color',
			[
				'label' => esc_html__( 'Text Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'{{WRAPPER}} .elementor-alert-title' => 'color: {{VALUE}};',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			[
				'name' => 'alert_title',
				'selector' => '{{WRAPPER}} .elementor-alert-title',
				'global' => [
					'default' => Global_Typography::TYPOGRAPHY_PRIMARY,
				],
			]
		);

		$this->add_group_control(
			Group_Control_Text_Shadow::get_type(),
			[
				'name' => 'title_shadow',
				'selector' => '{{WRAPPER}} .elementor-alert-title',
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_description',
			[
				'label' => esc_html__( 'Description', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->add_control(
			'description_color',
			[
				'label' => esc_html__( 'Text Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'{{WRAPPER}} .elementor-alert-description' => 'color: {{VALUE}};',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			[
				'name' => 'alert_description',
				'selector' => '{{WRAPPER}} .elementor-alert-description',
				'global' => [
					'default' => Global_Typography::TYPOGRAPHY_TEXT,
				],
			]
		);

		$this->add_group_control(
			Group_Control_Text_Shadow::get_type(),
			[
				'name' => 'description_shadow',
				'selector' => '{{WRAPPER}} .elementor-alert-description',
			]
		);

		$this->end_controls_section();

	}

	/**
	 * Render alert widget output on the frontend.
	 *
	 * Written in PHP and used to generate the final HTML.
	 *
	 * @since 1.0.0
	 * @access protected
	 */
	protected function render() {
		$settings = $this->get_settings_for_display();

		if ( Utils::is_empty( $settings['alert_title'] ) ) {
			return;
		}

		if ( ! empty( $settings['alert_type'] ) ) {
			$this->add_render_attribute( 'wrapper', 'class', 'elementor-alert elementor-alert-' . $settings['alert_type'] );
		}

		$this->add_render_attribute( 'wrapper', 'role', 'alert' );

		$this->add_render_attribute( 'alert_title', 'class', 'elementor-alert-title' );

		$this->add_inline_editing_attributes( 'alert_title', 'none' );
		?>
		<div <?php $this->print_render_attribute_string( 'wrapper' ); ?>>
			<span <?php $this->print_render_attribute_string( 'alert_title' ); ?>><?php $this->print_unescaped_setting( 'alert_title' ); ?></span>
			<?php
			if ( ! Utils::is_empty( $settings['alert_description'] ) ) :
				$this->add_render_attribute( 'alert_description', 'class', 'elementor-alert-description' );

				$this->add_inline_editing_attributes( 'alert_description' );
				?>
				<span <?php $this->print_render_attribute_string( 'alert_description' ); ?>><?php $this->print_unescaped_setting( 'alert_description' ); ?></span>
			<?php endif; ?>
			<?php if ( 'show' === $settings['show_dismiss'] ) : ?>
				<button type="button" class="elementor-alert-dismiss">
					<span aria-hidden="true">&times;</span>
					<span class="elementor-screen-only"><?php echo esc_html__( 'Dismiss alert', 'elementor' ); ?></span>
				</button>
			<?php endif; ?>
		</div>
		<?php
	}

	/**
	 * Render alert widget output in the editor.
	 *
	 * Written as a Backbone JavaScript template and used to generate the live preview.
	 *
	 * @since 2.9.0
	 * @access protected
	 */
	protected function content_template() {
		?>
		<# if ( settings.alert_title ) {
			view.addRenderAttribute( {
				alert_title: { class: 'elementor-alert-title' },
				alert_description: { class: 'elementor-alert-description' }
			} );

			view.addInlineEditingAttributes( 'alert_title', 'none' );
			view.addInlineEditingAttributes( 'alert_description' );
			#>
			<div class="elementor-alert elementor-alert-{{ settings.alert_type }}" role="alert">
				<span {{{ view.getRenderAttributeString( 'alert_title' ) }}}>{{{ settings.alert_title }}}</span>
				<span {{{ view.getRenderAttributeString( 'alert_description' ) }}}>{{{ settings.alert_description }}}</span>
				<# if ( 'show' === settings.show_dismiss ) { #>
					<button type="button" class="elementor-alert-dismiss">
						<span aria-hidden="true">&times;</span>
						<span class="elementor-screen-only"><?php echo esc_html__( 'Dismiss alert', 'elementor' ); ?></span>
					</button>
				<# } #>
			</div>
		<# } #>
		<?php
	}
}
includes/widgets/image-box.php000064400000040572151327220420012407 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

use Elementor\Core\Kits\Documents\Tabs\Global_Colors;
use Elementor\Core\Kits\Documents\Tabs\Global_Typography;

/**
 * Elementor image box widget.
 *
 * Elementor widget that displays an image, a headline and a text.
 *
 * @since 1.0.0
 */
class Widget_Image_Box extends Widget_Base {

	/**
	 * Get widget name.
	 *
	 * Retrieve image box widget name.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget name.
	 */
	public function get_name() {
		return 'image-box';
	}

	/**
	 * Get widget title.
	 *
	 * Retrieve image box widget title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget title.
	 */
	public function get_title() {
		return esc_html__( 'Image Box', 'elementor' );
	}

	/**
	 * Get widget icon.
	 *
	 * Retrieve image box widget icon.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget icon.
	 */
	public function get_icon() {
		return 'eicon-image-box';
	}

	/**
	 * Get widget keywords.
	 *
	 * Retrieve the list of keywords the widget belongs to.
	 *
	 * @since 2.1.0
	 * @access public
	 *
	 * @return array Widget keywords.
	 */
	public function get_keywords() {
		return [ 'image', 'photo', 'visual', 'box' ];
	}

	/**
	 * Register image box widget controls.
	 *
	 * Adds different input fields to allow the user to change and customize the widget settings.
	 *
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		$this->start_controls_section(
			'section_image',
			[
				'label' => esc_html__( 'Image Box', 'elementor' ),
			]
		);

		$this->add_control(
			'image',
			[
				'label' => esc_html__( 'Choose Image', 'elementor' ),
				'type' => Controls_Manager::MEDIA,
				'dynamic' => [
					'active' => true,
				],
				'default' => [
					'url' => Utils::get_placeholder_image_src(),
				],
			]
		);

		$this->add_group_control(
			Group_Control_Image_Size::get_type(),
			[
				'name' => 'thumbnail', // Usage: `{name}_size` and `{name}_custom_dimension`, in this case `thumbnail_size` and `thumbnail_custom_dimension`.
				'default' => 'full',
				'separator' => 'none',
			]
		);

		$this->add_control(
			'title_text',
			[
				'label' => esc_html__( 'Title & Description', 'elementor' ),
				'type' => Controls_Manager::TEXT,
				'dynamic' => [
					'active' => true,
				],
				'default' => esc_html__( 'This is the heading', 'elementor' ),
				'placeholder' => esc_html__( 'Enter your title', 'elementor' ),
				'label_block' => true,
			]
		);

		$this->add_control(
			'description_text',
			[
				'label' => esc_html__( 'Content', 'elementor' ),
				'type' => Controls_Manager::TEXTAREA,
				'dynamic' => [
					'active' => true,
				],
				'default' => esc_html__( 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut elit tellus, luctus nec ullamcorper mattis, pulvinar dapibus leo.', 'elementor' ),
				'placeholder' => esc_html__( 'Enter your description', 'elementor' ),
				'separator' => 'none',
				'rows' => 10,
				'show_label' => false,
			]
		);

		$this->add_control(
			'link',
			[
				'label' => esc_html__( 'Link', 'elementor' ),
				'type' => Controls_Manager::URL,
				'dynamic' => [
					'active' => true,
				],
				'placeholder' => esc_html__( 'https://your-link.com', 'elementor' ),
				'separator' => 'before',
			]
		);

		$this->add_control(
			'position',
			[
				'label' => esc_html__( 'Image Position', 'elementor' ),
				'type' => Controls_Manager::CHOOSE,
				'default' => 'top',
				'options' => [
					'left' => [
						'title' => esc_html__( 'Left', 'elementor' ),
						'icon' => 'eicon-h-align-left',
					],
					'top' => [
						'title' => esc_html__( 'Top', 'elementor' ),
						'icon' => 'eicon-v-align-top',
					],
					'right' => [
						'title' => esc_html__( 'Right', 'elementor' ),
						'icon' => 'eicon-h-align-right',
					],
				],
				'prefix_class' => 'elementor-position-',
				'toggle' => false,
			]
		);

		$this->add_control(
			'title_size',
			[
				'label' => esc_html__( 'Title HTML Tag', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'options' => [
					'h1' => 'H1',
					'h2' => 'H2',
					'h3' => 'H3',
					'h4' => 'H4',
					'h5' => 'H5',
					'h6' => 'H6',
					'div' => 'div',
					'span' => 'span',
					'p' => 'p',
				],
				'default' => 'h3',
			]
		);

		$this->add_control(
			'view',
			[
				'label' => esc_html__( 'View', 'elementor' ),
				'type' => Controls_Manager::HIDDEN,
				'default' => 'traditional',
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_style_image',
			[
				'label' => esc_html__( 'Image', 'elementor' ),
				'tab'   => Controls_Manager::TAB_STYLE,
			]
		);

		$this->add_responsive_control(
			'image_space',
			[
				'label' => esc_html__( 'Spacing', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'default' => [
					'size' => 15,
				],
				'range' => [
					'px' => [
						'min' => 0,
						'max' => 100,
					],
				],
				'selectors' => [
					'{{WRAPPER}}.elementor-position-right .elementor-image-box-img' => 'margin-left: {{SIZE}}{{UNIT}};',
					'{{WRAPPER}}.elementor-position-left .elementor-image-box-img' => 'margin-right: {{SIZE}}{{UNIT}};',
					'{{WRAPPER}}.elementor-position-top .elementor-image-box-img' => 'margin-bottom: {{SIZE}}{{UNIT}};',
					'(mobile){{WRAPPER}} .elementor-image-box-img' => 'margin-bottom: {{SIZE}}{{UNIT}};',
				],
			]
		);

		$this->add_responsive_control(
			'image_size',
			[
				'label' => esc_html__( 'Width', 'elementor' ) . ' (%)',
				'type' => Controls_Manager::SLIDER,
				'default' => [
					'size' => 30,
					'unit' => '%',
				],
				'tablet_default' => [
					'unit' => '%',
				],
				'mobile_default' => [
					'unit' => '%',
				],
				'size_units' => [ '%' ],
				'range' => [
					'%' => [
						'min' => 5,
						'max' => 100,
					],
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-image-box-wrapper .elementor-image-box-img' => 'width: {{SIZE}}{{UNIT}};',
				],
			]
		);

		$this->add_responsive_control(
			'image_border_radius',
			[
				'label' => esc_html__( 'Border Radius', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'size_units' => [ 'px', '%' ],
				'selectors' => [
					'{{WRAPPER}} .elementor-image-box-wrapper img' => 'border-radius: {{SIZE}}{{UNIT}};',
				],
			]
		);

		$this->add_control(
			'hover_animation',
			[
				'label' => esc_html__( 'Hover Animation', 'elementor' ),
				'type' => Controls_Manager::HOVER_ANIMATION,
			]
		);

		$this->start_controls_tabs( 'image_effects' );

		$this->start_controls_tab( 'normal',
			[
				'label' => esc_html__( 'Normal', 'elementor' ),
			]
		);

		$this->add_group_control(
			Group_Control_Css_Filter::get_type(),
			[
				'name' => 'css_filters',
				'selector' => '{{WRAPPER}} .elementor-image-box-img img',
			]
		);

		$this->add_control(
			'image_opacity',
			[
				'label' => esc_html__( 'Opacity', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'max' => 1,
						'min' => 0.10,
						'step' => 0.01,
					],
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-image-box-img img' => 'opacity: {{SIZE}};',
				],
			]
		);

		$this->add_control(
			'background_hover_transition',
			[
				'label' => esc_html__( 'Transition Duration', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'default' => [
					'size' => 0.3,
				],
				'range' => [
					'px' => [
						'max' => 3,
						'step' => 0.1,
					],
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-image-box-img img' => 'transition-duration: {{SIZE}}s',
				],
			]
		);

		$this->end_controls_tab();

		$this->start_controls_tab( 'hover',
			[
				'label' => esc_html__( 'Hover', 'elementor' ),
			]
		);

		$this->add_group_control(
			Group_Control_Css_Filter::get_type(),
			[
				'name' => 'css_filters_hover',
				'selector' => '{{WRAPPER}}:hover .elementor-image-box-img img',
			]
		);

		$this->add_control(
			'image_opacity_hover',
			[
				'label' => esc_html__( 'Opacity', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'max' => 1,
						'min' => 0.10,
						'step' => 0.01,
					],
				],
				'selectors' => [
					'{{WRAPPER}}:hover .elementor-image-box-img img' => 'opacity: {{SIZE}};',
				],
			]
		);

		$this->end_controls_tab();

		$this->end_controls_tabs();

		$this->end_controls_section();

		$this->start_controls_section(
			'section_style_content',
			[
				'label' => esc_html__( 'Content', 'elementor' ),
				'tab'   => Controls_Manager::TAB_STYLE,
			]
		);

		$this->add_responsive_control(
			'text_align',
			[
				'label' => esc_html__( 'Alignment', 'elementor' ),
				'type' => Controls_Manager::CHOOSE,
				'options' => [
					'left' => [
						'title' => esc_html__( 'Left', 'elementor' ),
						'icon' => 'eicon-text-align-left',
					],
					'center' => [
						'title' => esc_html__( 'Center', 'elementor' ),
						'icon' => 'eicon-text-align-center',
					],
					'right' => [
						'title' => esc_html__( 'Right', 'elementor' ),
						'icon' => 'eicon-text-align-right',
					],
					'justify' => [
						'title' => esc_html__( 'Justified', 'elementor' ),
						'icon' => 'eicon-text-align-justify',
					],
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-image-box-wrapper' => 'text-align: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'content_vertical_alignment',
			[
				'label' => esc_html__( 'Vertical Alignment', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'options' => [
					'top' => esc_html__( 'Top', 'elementor' ),
					'middle' => esc_html__( 'Middle', 'elementor' ),
					'bottom' => esc_html__( 'Bottom', 'elementor' ),
				],
				'default' => 'top',
				'prefix_class' => 'elementor-vertical-align-',
			]
		);

		$this->add_control(
			'heading_title',
			[
				'label' => esc_html__( 'Title', 'elementor' ),
				'type' => Controls_Manager::HEADING,
				'separator' => 'before',
			]
		);

		$this->add_responsive_control(
			'title_bottom_space',
			[
				'label' => esc_html__( 'Spacing', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'min' => 0,
						'max' => 100,
					],
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-image-box-title' => 'margin-bottom: {{SIZE}}{{UNIT}};',
				],
			]
		);

		$this->add_control(
			'title_color',
			[
				'label' => esc_html__( 'Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'selectors' => [
					'{{WRAPPER}} .elementor-image-box-title' => 'color: {{VALUE}};',
				],
				'global' => [
					'default' => Global_Colors::COLOR_PRIMARY,
				],
			]
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			[
				'name' => 'title_typography',
				'selector' => '{{WRAPPER}} .elementor-image-box-title',
				'global' => [
					'default' => Global_Typography::TYPOGRAPHY_PRIMARY,
				],
			]
		);

		$this->add_group_control(
			Group_Control_Text_Shadow::get_type(),
			[
				'name' => 'title_shadow',
				'selector' => '{{WRAPPER}} .elementor-image-box-title',
			]
		);

		$this->add_control(
			'heading_description',
			[
				'label' => esc_html__( 'Description', 'elementor' ),
				'type' => Controls_Manager::HEADING,
				'separator' => 'before',
			]
		);

		$this->add_control(
			'description_color',
			[
				'label' => esc_html__( 'Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'selectors' => [
					'{{WRAPPER}} .elementor-image-box-description' => 'color: {{VALUE}};',
				],
				'global' => [
					'default' => Global_Colors::COLOR_TEXT,
				],
			]
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			[
				'name' => 'description_typography',
				'selector' => '{{WRAPPER}} .elementor-image-box-description',
				'global' => [
					'default' => Global_Typography::TYPOGRAPHY_TEXT,
				],
			]
		);

		$this->add_group_control(
			Group_Control_Text_Shadow::get_type(),
			[
				'name' => 'description_shadow',
				'selector' => '{{WRAPPER}} .elementor-image-box-description',
			]
		);

		$this->end_controls_section();
	}

	/**
	 * Render image box widget output on the frontend.
	 *
	 * Written in PHP and used to generate the final HTML.
	 *
	 * @since 1.0.0
	 * @access protected
	 */
	protected function render() {
		$settings = $this->get_settings_for_display();

		$has_content = ! Utils::is_empty( $settings['title_text'] ) || ! Utils::is_empty( $settings['description_text'] );

		$html = '<div class="elementor-image-box-wrapper">';

		if ( ! empty( $settings['link']['url'] ) ) {
			$this->add_link_attributes( 'link', $settings['link'] );
		}

		if ( ! empty( $settings['image']['url'] ) ) {
			$this->add_render_attribute( 'image', 'src', $settings['image']['url'] );
			$this->add_render_attribute( 'image', 'alt', Control_Media::get_image_alt( $settings['image'] ) );
			$this->add_render_attribute( 'image', 'title', Control_Media::get_image_title( $settings['image'] ) );

			if ( $settings['hover_animation'] ) {
				$this->add_render_attribute( 'image', 'class', 'elementor-animation-' . $settings['hover_animation'] );
			}

			$image_html = wp_kses_post( Group_Control_Image_Size::get_attachment_image_html( $settings, 'thumbnail', 'image' ) );

			if ( ! empty( $settings['link']['url'] ) ) {
				$image_html = '<a ' . $this->get_render_attribute_string( 'link' ) . '>' . $image_html . '</a>';
			}

			$html .= '<figure class="elementor-image-box-img">' . $image_html . '</figure>';
		}

		if ( $has_content ) {
			$html .= '<div class="elementor-image-box-content">';

			if ( ! Utils::is_empty( $settings['title_text'] ) ) {
				$this->add_render_attribute( 'title_text', 'class', 'elementor-image-box-title' );

				$this->add_inline_editing_attributes( 'title_text', 'none' );

				$title_html = $settings['title_text'];

				if ( ! empty( $settings['link']['url'] ) ) {
					$title_html = '<a ' . $this->get_render_attribute_string( 'link' ) . '>' . $title_html . '</a>';
				}

				$html .= sprintf( '<%1$s %2$s>%3$s</%1$s>', Utils::validate_html_tag( $settings['title_size'] ), $this->get_render_attribute_string( 'title_text' ), $title_html );
			}

			if ( ! Utils::is_empty( $settings['description_text'] ) ) {
				$this->add_render_attribute( 'description_text', 'class', 'elementor-image-box-description' );

				$this->add_inline_editing_attributes( 'description_text' );

				$html .= sprintf( '<p %1$s>%2$s</p>', $this->get_render_attribute_string( 'description_text' ), $settings['description_text'] );
			}

			$html .= '</div>';
		}

		$html .= '</div>';

		Utils::print_unescaped_internal_string( $html );
	}

	/**
	 * Render image box widget output in the editor.
	 *
	 * Written as a Backbone JavaScript template and used to generate the live preview.
	 *
	 * @since 2.9.0
	 * @access protected
	 */
	protected function content_template() {
		?>
		<#
		var html = '<div class="elementor-image-box-wrapper">';

		if ( settings.image.url ) {
			var image = {
				id: settings.image.id,
				url: settings.image.url,
				size: settings.thumbnail_size,
				dimension: settings.thumbnail_custom_dimension,
				model: view.getEditModel()
			};

			var image_url = elementor.imagesManager.getImageUrl( image );

			var imageHtml = '<img src="' + image_url + '" class="elementor-animation-' + settings.hover_animation + '" />';

			if ( settings.link.url ) {
				imageHtml = '<a href="' + settings.link.url + '">' + imageHtml + '</a>';
			}

			html += '<figure class="elementor-image-box-img">' + imageHtml + '</figure>';
		}

		var hasContent = !! ( settings.title_text || settings.description_text );

		if ( hasContent ) {
			html += '<div class="elementor-image-box-content">';

			if ( settings.title_text ) {
				var title_html = settings.title_text,
					titleSizeTag = elementor.helpers.validateHTMLTag( settings.title_size );

				if ( settings.link.url ) {
					title_html = '<a href="' + settings.link.url + '">' + title_html + '</a>';
				}

				view.addRenderAttribute( 'title_text', 'class', 'elementor-image-box-title' );

				view.addInlineEditingAttributes( 'title_text', 'none' );

				html += '<' + titleSizeTag  + ' ' + view.getRenderAttributeString( 'title_text' ) + '>' + title_html + '</' + titleSizeTag  + '>';
			}

			if ( settings.description_text ) {
				view.addRenderAttribute( 'description_text', 'class', 'elementor-image-box-description' );

				view.addInlineEditingAttributes( 'description_text' );

				html += '<p ' + view.getRenderAttributeString( 'description_text' ) + '>' + settings.description_text + '</p>';
			}

			html += '</div>';
		}

		html += '</div>';

		print( html );
		#>
		<?php
	}
}
includes/widgets/accordion.php000064400000044677151327220420012512 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

use Elementor\Core\Kits\Documents\Tabs\Global_Colors;
use Elementor\Core\Kits\Documents\Tabs\Global_Typography;
/**
 * Elementor accordion widget.
 *
 * Elementor widget that displays a collapsible display of content in an
 * accordion style, showing only one item at a time.
 *
 * @since 1.0.0
 */
class Widget_Accordion extends Widget_Base {

	/**
	 * Get widget name.
	 *
	 * Retrieve accordion widget name.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget name.
	 */
	public function get_name() {
		return 'accordion';
	}

	/**
	 * Get widget title.
	 *
	 * Retrieve accordion widget title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget title.
	 */
	public function get_title() {
		return esc_html__( 'Accordion', 'elementor' );
	}

	/**
	 * Get widget icon.
	 *
	 * Retrieve accordion widget icon.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget icon.
	 */
	public function get_icon() {
		return 'eicon-accordion';
	}

	/**
	 * Get widget keywords.
	 *
	 * Retrieve the list of keywords the widget belongs to.
	 *
	 * @since 2.1.0
	 * @access public
	 *
	 * @return array Widget keywords.
	 */
	public function get_keywords() {
		return [ 'accordion', 'tabs', 'toggle' ];
	}

	/**
	 * Register accordion widget controls.
	 *
	 * Adds different input fields to allow the user to change and customize the widget settings.
	 *
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		$this->start_controls_section(
			'section_title',
			[
				'label' => esc_html__( 'Accordion', 'elementor' ),
			]
		);

		$repeater = new Repeater();

		$repeater->add_control(
			'tab_title',
			[
				'label' => esc_html__( 'Title & Description', 'elementor' ),
				'type' => Controls_Manager::TEXT,
				'default' => esc_html__( 'Accordion Title', 'elementor' ),
				'dynamic' => [
					'active' => true,
				],
				'label_block' => true,
			]
		);

		$repeater->add_control(
			'tab_content',
			[
				'label' => esc_html__( 'Content', 'elementor' ),
				'type' => Controls_Manager::WYSIWYG,
				'default' => esc_html__( 'Accordion Content', 'elementor' ),
				'show_label' => false,
			]
		);

		$this->add_control(
			'tabs',
			[
				'label' => esc_html__( 'Accordion Items', 'elementor' ),
				'type' => Controls_Manager::REPEATER,
				'fields' => $repeater->get_controls(),
				'default' => [
					[
						'tab_title' => esc_html__( 'Accordion #1', 'elementor' ),
						'tab_content' => esc_html__( 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut elit tellus, luctus nec ullamcorper mattis, pulvinar dapibus leo.', 'elementor' ),
					],
					[
						'tab_title' => esc_html__( 'Accordion #2', 'elementor' ),
						'tab_content' => esc_html__( 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut elit tellus, luctus nec ullamcorper mattis, pulvinar dapibus leo.', 'elementor' ),
					],
				],
				'title_field' => '{{{ tab_title }}}',
			]
		);

		$this->add_control(
			'view',
			[
				'label' => esc_html__( 'View', 'elementor' ),
				'type' => Controls_Manager::HIDDEN,
				'default' => 'traditional',
			]
		);

		$this->add_control(
			'selected_icon',
			[
				'label' => esc_html__( 'Icon', 'elementor' ),
				'type' => Controls_Manager::ICONS,
				'separator' => 'before',
				'fa4compatibility' => 'icon',
				'default' => [
					'value' => 'fas fa-plus',
					'library' => 'fa-solid',
				],
				'recommended' => [
					'fa-solid' => [
						'chevron-down',
						'angle-down',
						'angle-double-down',
						'caret-down',
						'caret-square-down',
					],
					'fa-regular' => [
						'caret-square-down',
					],
				],
				'skin' => 'inline',
				'label_block' => false,
			]
		);

		$this->add_control(
			'selected_active_icon',
			[
				'label' => esc_html__( 'Active Icon', 'elementor' ),
				'type' => Controls_Manager::ICONS,
				'fa4compatibility' => 'icon_active',
				'default' => [
					'value' => 'fas fa-minus',
					'library' => 'fa-solid',
				],
				'recommended' => [
					'fa-solid' => [
						'chevron-up',
						'angle-up',
						'angle-double-up',
						'caret-up',
						'caret-square-up',
					],
					'fa-regular' => [
						'caret-square-up',
					],
				],
				'skin' => 'inline',
				'label_block' => false,
				'condition' => [
					'selected_icon[value]!' => '',
				],
			]
		);

		$this->add_control(
			'title_html_tag',
			[
				'label' => esc_html__( 'Title HTML Tag', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'options' => [
					'h1' => 'H1',
					'h2' => 'H2',
					'h3' => 'H3',
					'h4' => 'H4',
					'h5' => 'H5',
					'h6' => 'H6',
					'div' => 'div',
				],
				'default' => 'div',
				'separator' => 'before',
			]
		);

		$this->add_control(
			'faq_schema',
			[
				'label' => esc_html__( 'FAQ Schema', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'separator' => 'before',
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_title_style',
			[
				'label' => esc_html__( 'Accordion', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->add_control(
			'border_width',
			[
				'label' => esc_html__( 'Border Width', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'min' => 0,
						'max' => 10,
					],
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-accordion-item' => 'border-width: {{SIZE}}{{UNIT}};',
					'{{WRAPPER}} .elementor-accordion-item .elementor-tab-content' => 'border-width: {{SIZE}}{{UNIT}};',
					'{{WRAPPER}} .elementor-accordion-item .elementor-tab-title.elementor-active' => 'border-width: {{SIZE}}{{UNIT}};',
				],
			]
		);

		$this->add_control(
			'border_color',
			[
				'label' => esc_html__( 'Border Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'{{WRAPPER}} .elementor-accordion-item' => 'border-color: {{VALUE}};',
					'{{WRAPPER}} .elementor-accordion-item .elementor-tab-content' => 'border-top-color: {{VALUE}};',
					'{{WRAPPER}} .elementor-accordion-item .elementor-tab-title.elementor-active' => 'border-bottom-color: {{VALUE}};',
				],
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_toggle_style_title',
			[
				'label' => esc_html__( 'Title', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->add_control(
			'title_background',
			[
				'label' => esc_html__( 'Background', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'{{WRAPPER}} .elementor-tab-title' => 'background-color: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'title_color',
			[
				'label' => esc_html__( 'Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'{{WRAPPER}} .elementor-accordion-icon, {{WRAPPER}} .elementor-accordion-title' => 'color: {{VALUE}};',
					'{{WRAPPER}} .elementor-accordion-icon svg' => 'fill: {{VALUE}};',
				],
				'global' => [
					'default' => Global_Colors::COLOR_PRIMARY,
				],
			]
		);

		$this->add_control(
			'tab_active_color',
			[
				'label' => esc_html__( 'Active Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'{{WRAPPER}} .elementor-active .elementor-accordion-icon, {{WRAPPER}} .elementor-active .elementor-accordion-title' => 'color: {{VALUE}};',
					'{{WRAPPER}} .elementor-active .elementor-accordion-icon svg' => 'fill: {{VALUE}};',
				],
				'global' => [
					'default' => Global_Colors::COLOR_ACCENT,
				],
			]
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			[
				'name' => 'title_typography',
				'selector' => '{{WRAPPER}} .elementor-accordion-title',
				'global' => [
					'default' => Global_Typography::TYPOGRAPHY_PRIMARY,
				],
			]
		);

		$this->add_group_control(
			Group_Control_Text_Shadow::get_type(),
			[
				'name' => 'title_shadow',
				'selector' => '{{WRAPPER}} .elementor-accordion-title',
			]
		);

		$this->add_responsive_control(
			'title_padding',
			[
				'label' => esc_html__( 'Padding', 'elementor' ),
				'type' => Controls_Manager::DIMENSIONS,
				'size_units' => [ 'px', 'em', '%' ],
				'selectors' => [
					'{{WRAPPER}} .elementor-tab-title' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
				],
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_toggle_style_icon',
			[
				'label' => esc_html__( 'Icon', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
				'condition' => [
					'selected_icon[value]!' => '',
				],
			]
		);

		$this->add_control(
			'icon_align',
			[
				'label' => esc_html__( 'Alignment', 'elementor' ),
				'type' => Controls_Manager::CHOOSE,
				'options' => [
					'left' => [
						'title' => esc_html__( 'Start', 'elementor' ),
						'icon' => 'eicon-h-align-left',
					],
					'right' => [
						'title' => esc_html__( 'End', 'elementor' ),
						'icon' => 'eicon-h-align-right',
					],
				],
				'default' => is_rtl() ? 'right' : 'left',
				'toggle' => false,
			]
		);

		$this->add_control(
			'icon_color',
			[
				'label' => esc_html__( 'Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'{{WRAPPER}} .elementor-tab-title .elementor-accordion-icon i:before' => 'color: {{VALUE}};',
					'{{WRAPPER}} .elementor-tab-title .elementor-accordion-icon svg' => 'fill: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'icon_active_color',
			[
				'label' => esc_html__( 'Active Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'{{WRAPPER}} .elementor-tab-title.elementor-active .elementor-accordion-icon i:before' => 'color: {{VALUE}};',
					'{{WRAPPER}} .elementor-tab-title.elementor-active .elementor-accordion-icon svg' => 'fill: {{VALUE}};',
				],
			]
		);

		$this->add_responsive_control(
			'icon_space',
			[
				'label' => esc_html__( 'Spacing', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'min' => 0,
						'max' => 100,
					],
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-accordion-icon.elementor-accordion-icon-left' => 'margin-right: {{SIZE}}{{UNIT}};',
					'{{WRAPPER}} .elementor-accordion-icon.elementor-accordion-icon-right' => 'margin-left: {{SIZE}}{{UNIT}};',
				],
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_toggle_style_content',
			[
				'label' => esc_html__( 'Content', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->add_control(
			'content_background_color',
			[
				'label' => esc_html__( 'Background', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'{{WRAPPER}} .elementor-tab-content' => 'background-color: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'content_color',
			[
				'label' => esc_html__( 'Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'{{WRAPPER}} .elementor-tab-content' => 'color: {{VALUE}};',
				],
				'global' => [
					'default' => Global_Colors::COLOR_TEXT,
				],
			]
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			[
				'name' => 'content_typography',
				'selector' => '{{WRAPPER}} .elementor-tab-content',
				'global' => [
					'default' => Global_Typography::TYPOGRAPHY_TEXT,
				],
			]
		);

		$this->add_group_control(
			Group_Control_Text_Shadow::get_type(),
			[
				'name' => 'content_shadow',
				'selector' => '{{WRAPPER}} .elementor-tab-content',
			]
		);

		$this->add_responsive_control(
			'content_padding',
			[
				'label' => esc_html__( 'Padding', 'elementor' ),
				'type' => Controls_Manager::DIMENSIONS,
				'size_units' => [ 'px', 'em', '%' ],
				'selectors' => [
					'{{WRAPPER}} .elementor-tab-content' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
				],
			]
		);

		$this->end_controls_section();
	}

	/**
	 * Render accordion widget output on the frontend.
	 *
	 * Written in PHP and used to generate the final HTML.
	 *
	 * @since 1.0.0
	 * @access protected
	 */
	protected function render() {
		$settings = $this->get_settings_for_display();
		$migrated = isset( $settings['__fa4_migrated']['selected_icon'] );

		if ( ! isset( $settings['icon'] ) && ! Icons_Manager::is_migration_allowed() ) {
			// @todo: remove when deprecated
			// added as bc in 2.6
			// add old default
			$settings['icon'] = 'fa fa-plus';
			$settings['icon_active'] = 'fa fa-minus';
			$settings['icon_align'] = $this->get_settings( 'icon_align' );
		}

		$is_new = empty( $settings['icon'] ) && Icons_Manager::is_migration_allowed();
		$has_icon = ( ! $is_new || ! empty( $settings['selected_icon']['value'] ) );
		$id_int = substr( $this->get_id_int(), 0, 3 );
		?>
		<div class="elementor-accordion" role="tablist">
			<?php
			foreach ( $settings['tabs'] as $index => $item ) :
				$tab_count = $index + 1;

				$tab_title_setting_key = $this->get_repeater_setting_key( 'tab_title', 'tabs', $index );

				$tab_content_setting_key = $this->get_repeater_setting_key( 'tab_content', 'tabs', $index );

				$this->add_render_attribute( $tab_title_setting_key, [
					'id' => 'elementor-tab-title-' . $id_int . $tab_count,
					'class' => [ 'elementor-tab-title' ],
					'data-tab' => $tab_count,
					'role' => 'tab',
					'aria-controls' => 'elementor-tab-content-' . $id_int . $tab_count,
					'aria-expanded' => 'false',
				] );

				$this->add_render_attribute( $tab_content_setting_key, [
					'id' => 'elementor-tab-content-' . $id_int . $tab_count,
					'class' => [ 'elementor-tab-content', 'elementor-clearfix' ],
					'data-tab' => $tab_count,
					'role' => 'tabpanel',
					'aria-labelledby' => 'elementor-tab-title-' . $id_int . $tab_count,
				] );

				$this->add_inline_editing_attributes( $tab_content_setting_key, 'advanced' );
				?>
				<div class="elementor-accordion-item">
					<<?php Utils::print_validated_html_tag( $settings['title_html_tag'] ); ?> <?php $this->print_render_attribute_string( $tab_title_setting_key ); ?>>
						<?php if ( $has_icon ) : ?>
							<span class="elementor-accordion-icon elementor-accordion-icon-<?php echo esc_attr( $settings['icon_align'] ); ?>" aria-hidden="true">
							<?php
							if ( $is_new || $migrated ) { ?>
								<span class="elementor-accordion-icon-closed"><?php Icons_Manager::render_icon( $settings['selected_icon'] ); ?></span>
								<span class="elementor-accordion-icon-opened"><?php Icons_Manager::render_icon( $settings['selected_active_icon'] ); ?></span>
							<?php } else { ?>
								<i class="elementor-accordion-icon-closed <?php echo esc_attr( $settings['icon'] ); ?>"></i>
								<i class="elementor-accordion-icon-opened <?php echo esc_attr( $settings['icon_active'] ); ?>"></i>
							<?php } ?>
							</span>
						<?php endif; ?>
						<a class="elementor-accordion-title" href=""><?php
							$this->print_unescaped_setting( 'tab_title', 'tabs', $index );
						?></a>
					</<?php Utils::print_validated_html_tag( $settings['title_html_tag'] ); ?>>
					<div <?php $this->print_render_attribute_string( $tab_content_setting_key ); ?>><?php
						$this->print_text_editor( $item['tab_content'] );
					?></div>
				</div>
			<?php endforeach; ?>
			<?php
			if ( isset( $settings['faq_schema'] ) && 'yes' === $settings['faq_schema'] ) {
				$json = [
					'@context' => 'https://schema.org',
					'@type' => 'FAQPage',
					'mainEntity' => [],
				];

				foreach ( $settings['tabs'] as $index => $item ) {
					$json['mainEntity'][] = [
						'@type' => 'Question',
						'name' => wp_strip_all_tags( $item['tab_title'] ),
						'acceptedAnswer' => [
							'@type' => 'Answer',
							'text' => $this->parse_text_editor( $item['tab_content'] ),
						],
					];
				}
				?>
				<script type="application/ld+json"><?php echo wp_json_encode( $json ); ?></script>
			<?php } ?>
		</div>
		<?php
	}

	/**
	 * Render accordion widget output in the editor.
	 *
	 * Written as a Backbone JavaScript template and used to generate the live preview.
	 *
	 * @since 2.9.0
	 * @access protected
	 */
	protected function content_template() {
		?>
		<div class="elementor-accordion" role="tablist">
			<#
			if ( settings.tabs ) {
				var tabindex = view.getIDInt().toString().substr( 0, 3 ),
					iconHTML = elementor.helpers.renderIcon( view, settings.selected_icon, {}, 'i' , 'object' ),
					iconActiveHTML = elementor.helpers.renderIcon( view, settings.selected_active_icon, {}, 'i' , 'object' ),
					migrated = elementor.helpers.isIconMigrated( settings, 'selected_icon' );

				_.each( settings.tabs, function( item, index ) {
					var tabCount = index + 1,
						tabTitleKey = view.getRepeaterSettingKey( 'tab_title', 'tabs', index ),
						tabContentKey = view.getRepeaterSettingKey( 'tab_content', 'tabs', index );

					view.addRenderAttribute( tabTitleKey, {
						'id': 'elementor-tab-title-' + tabindex + tabCount,
						'class': [ 'elementor-tab-title' ],
						'tabindex': tabindex + tabCount,
						'data-tab': tabCount,
						'role': 'tab',
						'aria-controls': 'elementor-tab-content-' + tabindex + tabCount,
						'aria-expanded': 'false',
					} );

					view.addRenderAttribute( tabContentKey, {
						'id': 'elementor-tab-content-' + tabindex + tabCount,
						'class': [ 'elementor-tab-content', 'elementor-clearfix' ],
						'data-tab': tabCount,
						'role': 'tabpanel',
						'aria-labelledby': 'elementor-tab-title-' + tabindex + tabCount
					} );

					view.addInlineEditingAttributes( tabContentKey, 'advanced' );

					var titleHTMLTag = elementor.helpers.validateHTMLTag( settings.title_html_tag );
					#>
					<div class="elementor-accordion-item">
						<{{{ titleHTMLTag }}} {{{ view.getRenderAttributeString( tabTitleKey ) }}}>
							<# if ( settings.icon || settings.selected_icon ) { #>
							<span class="elementor-accordion-icon elementor-accordion-icon-{{ settings.icon_align }}" aria-hidden="true">
								<# if ( iconHTML && iconHTML.rendered && ( ! settings.icon || migrated ) ) { #>
									<span class="elementor-accordion-icon-closed">{{{ iconHTML.value }}}</span>
									<span class="elementor-accordion-icon-opened">{{{ iconActiveHTML.value }}}</span>
								<# } else { #>
									<i class="elementor-accordion-icon-closed {{ settings.icon }}"></i>
									<i class="elementor-accordion-icon-opened {{ settings.icon_active }}"></i>
								<# } #>
							</span>
							<# } #>
							<a class="elementor-accordion-title" href="">{{{ item.tab_title }}}</a>
						</{{{ titleHTMLTag }}}>
						<div {{{ view.getRenderAttributeString( tabContentKey ) }}}>{{{ item.tab_content }}}</div>
					</div>
					<#
				} );
			} #>
		</div>
		<?php
	}
}
includes/widgets/progress.php000064400000024170151327220420012377 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

use Elementor\Core\Kits\Documents\Tabs\Global_Colors;
use Elementor\Core\Kits\Documents\Tabs\Global_Typography;

/**
 * Elementor progress widget.
 *
 * Elementor widget that displays an escalating progress bar.
 *
 * @since 1.0.0
 */
class Widget_Progress extends Widget_Base {

	/**
	 * Get widget name.
	 *
	 * Retrieve progress widget name.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget name.
	 */
	public function get_name() {
		return 'progress';
	}

	/**
	 * Get widget title.
	 *
	 * Retrieve progress widget title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget title.
	 */
	public function get_title() {
		return esc_html__( 'Progress Bar', 'elementor' );
	}

	/**
	 * Get widget icon.
	 *
	 * Retrieve progress widget icon.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget icon.
	 */
	public function get_icon() {
		return 'eicon-skill-bar';
	}

	/**
	 * Get widget keywords.
	 *
	 * Retrieve the list of keywords the widget belongs to.
	 *
	 * @since 2.1.0
	 * @access public
	 *
	 * @return array Widget keywords.
	 */
	public function get_keywords() {
		return [ 'progress', 'bar' ];
	}

	/**
	 * Register progress widget controls.
	 *
	 * Adds different input fields to allow the user to change and customize the widget settings.
	 *
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		$this->start_controls_section(
			'section_progress',
			[
				'label' => esc_html__( 'Progress Bar', 'elementor' ),
			]
		);

		$this->add_control(
			'title',
			[
				'label' => esc_html__( 'Title', 'elementor' ),
				'type' => Controls_Manager::TEXT,
				'dynamic' => [
					'active' => true,
				],
				'placeholder' => esc_html__( 'Enter your title', 'elementor' ),
				'default' => esc_html__( 'My Skill', 'elementor' ),
				'label_block' => true,
			]
		);

		$this->add_control(
			'progress_type',
			[
				'label' => esc_html__( 'Type', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => '',
				'options' => [
					'' => esc_html__( 'Default', 'elementor' ),
					'info' => esc_html__( 'Info', 'elementor' ),
					'success' => esc_html__( 'Success', 'elementor' ),
					'warning' => esc_html__( 'Warning', 'elementor' ),
					'danger' => esc_html__( 'Danger', 'elementor' ),
				],
			]
		);

		$this->add_control(
			'percent',
			[
				'label' => esc_html__( 'Percentage', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'default' => [
					'size' => 50,
					'unit' => '%',
				],
				'dynamic' => [
					'active' => true,
				],
			]
		);

		$this->add_control(
			'display_percentage',
			[
				'label' => esc_html__( 'Display Percentage', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => 'show',
				'options' => [
					'show' => esc_html__( 'Show', 'elementor' ),
					'hide' => esc_html__( 'Hide', 'elementor' ),
				],
			]
		);

		$this->add_control(
			'inner_text',
			[
				'label' => esc_html__( 'Inner Text', 'elementor' ),
				'type' => Controls_Manager::TEXT,
				'dynamic' => [
					'active' => true,
				],
				'placeholder' => esc_html__( 'e.g. Web Designer', 'elementor' ),
				'default' => esc_html__( 'Web Designer', 'elementor' ),
				'label_block' => true,
			]
		);

		$this->add_control(
			'view',
			[
				'label' => esc_html__( 'View', 'elementor' ),
				'type' => Controls_Manager::HIDDEN,
				'default' => 'traditional',
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_progress_style',
			[
				'label' => esc_html__( 'Progress Bar', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->add_control(
			'bar_color',
			[
				'label' => esc_html__( 'Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'global' => [
					'default' => Global_Colors::COLOR_PRIMARY,
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-progress-wrapper .elementor-progress-bar' => 'background-color: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'bar_bg_color',
			[
				'label' => esc_html__( 'Background Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'{{WRAPPER}} .elementor-progress-wrapper' => 'background-color: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'bar_height',
			[
				'label' => esc_html__( 'Height', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'selectors' => [
					'{{WRAPPER}} .elementor-progress-bar' => 'height: {{SIZE}}{{UNIT}}; line-height: {{SIZE}}{{UNIT}};',
				],
			]
		);

		$this->add_control(
			'bar_border_radius',
			[
				'label' => esc_html__( 'Border Radius', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'size_units' => [ 'px', '%' ],
				'selectors' => [
					'{{WRAPPER}} .elementor-progress-wrapper' => 'border-radius: {{SIZE}}{{UNIT}}; overflow: hidden;',
				],
			]
		);

		$this->add_control(
			'inner_text_heading',
			[
				'label' => esc_html__( 'Inner Text', 'elementor' ),
				'type' => Controls_Manager::HEADING,
				'separator' => 'before',
			]
		);

		$this->add_control(
			'bar_inline_color',
			[
				'label' => esc_html__( 'Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'{{WRAPPER}} .elementor-progress-bar' => 'color: {{VALUE}};',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			[
				'name' => 'bar_inner_typography',
				'selector' => '{{WRAPPER}} .elementor-progress-bar',
				'exclude' => [
					'line_height',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Text_Shadow::get_type(),
			[
				'name' => 'bar_inner_shadow',
				'selector' => '{{WRAPPER}} .elementor-progress-bar',
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_title',
			[
				'label' => esc_html__( 'Title Style', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->add_control(
			'title_color',
			[
				'label' => esc_html__( 'Text Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'{{WRAPPER}} .elementor-title' => 'color: {{VALUE}};',
				],
				'global' => [
					'default' => Global_Colors::COLOR_PRIMARY,
				],
			]
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			[
				'name' => 'typography',
				'selector' => '{{WRAPPER}} .elementor-title',
				'global' => [
					'default' => Global_Typography::TYPOGRAPHY_TEXT,
				],
			]
		);

		$this->add_group_control(
			Group_Control_Text_Shadow::get_type(),
			[
				'name' => 'title_shadow',
				'selector' => '{{WRAPPER}} .elementor-title',
			]
		);

		$this->end_controls_section();
	}

	/**
	 * Render progress widget output on the frontend.
	 * Make sure value does no exceed 100%.
	 *
	 * Written in PHP and used to generate the final HTML.
	 *
	 * @since 1.0.0
	 * @access protected
	 */
	protected function render() {
		$settings = $this->get_settings_for_display();

		$progress_percentage = is_numeric( $settings['percent']['size'] ) ? $settings['percent']['size'] : '0';
		if ( 100 < $progress_percentage ) {
			$progress_percentage = 100;
		}

		$this->add_render_attribute( 'title', [
			'class' => 'elementor-title',
		]);

		$this->add_inline_editing_attributes( 'title' );

		$this->add_render_attribute( 'wrapper', [
			'class' => 'elementor-progress-wrapper',
			'role' => 'progressbar',
			'aria-valuemin' => '0',
			'aria-valuemax' => '100',
			'aria-valuenow' => $progress_percentage,
			'aria-valuetext' => $settings['inner_text'],
		] );

		if ( ! empty( $settings['progress_type'] ) ) {
			$this->add_render_attribute( 'wrapper', 'class', 'progress-' . $settings['progress_type'] );
		}

		$this->add_render_attribute( 'progress-bar', [
			'class' => 'elementor-progress-bar',
			'data-max' => $progress_percentage,
		] );

		$this->add_render_attribute( 'inner_text', [
			'class' => 'elementor-progress-text',
		] );

		$this->add_inline_editing_attributes( 'inner_text' );

		if ( ! Utils::is_empty( $settings['title'] ) ) { ?>
			<span <?php $this->print_render_attribute_string( 'title' ); ?>><?php $this->print_unescaped_setting( 'title' ); ?></span>
		<?php } ?>

		<div <?php $this->print_render_attribute_string( 'wrapper' ); ?>>
			<div <?php $this->print_render_attribute_string( 'progress-bar' ); ?>>
				<span <?php $this->print_render_attribute_string( 'inner_text' ); ?>><?php $this->print_unescaped_setting( 'inner_text' ); ?></span>
				<?php if ( 'hide' !== $settings['display_percentage'] ) { ?>
					<span class="elementor-progress-percentage"><?php echo $progress_percentage; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>%</span>
				<?php } ?>
			</div>
		</div>
		<?php
	}

	/**
	 * Render progress widget output in the editor.
	 *
	 * Written as a Backbone JavaScript template and used to generate the live preview.
	 *
	 * @since 2.9.0
	 * @access protected
	 */
	protected function content_template() {
		?>
		<#
		let progress_percentage = 0;
		if ( ! isNaN( settings.percent.size ) ) {
			progress_percentage = 100 < settings.percent.size ? 100 : settings.percent.size;
		}

		view.addRenderAttribute( 'title', {
			'class': 'elementor-title'
		} );

		view.addInlineEditingAttributes( 'title' );

		view.addRenderAttribute( 'progressWrapper', {
			'class': [ 'elementor-progress-wrapper', 'progress-' + settings.progress_type ],
			'role': 'progressbar',
			'aria-valuemin': '0',
			'aria-valuemax': '100',
			'aria-valuenow': progress_percentage,
			'aria-valuetext': settings.inner_text
		} );

		view.addRenderAttribute( 'inner_text', {
			'class': 'elementor-progress-text'
		} );

		view.addInlineEditingAttributes( 'inner_text' );
		#>
		<# if ( settings.title ) { #>
			<span {{{ view.getRenderAttributeString( 'title' ) }}}>{{{ settings.title }}}</span><#
		} #>
		<div {{{ view.getRenderAttributeString( 'progressWrapper' ) }}}>
			<div class="elementor-progress-bar" data-max="{{ progress_percentage }}">
				<span {{{ view.getRenderAttributeString( 'inner_text' ) }}}>{{{ settings.inner_text }}}</span>
				<# if ( 'hide' !== settings.display_percentage ) { #>
					<span class="elementor-progress-percentage">{{{ progress_percentage }}}%</span>
				<# } #>
			</div>
		</div>
		<?php
	}
}
includes/widgets/button.php000064400000035046151327220420012052 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

use Elementor\Core\Kits\Documents\Tabs\Global_Colors;
use Elementor\Core\Kits\Documents\Tabs\Global_Typography;

/**
 * Elementor button widget.
 *
 * Elementor widget that displays a button with the ability to control every
 * aspect of the button design.
 *
 * @since 1.0.0
 */
class Widget_Button extends Widget_Base {

	/**
	 * Get widget name.
	 *
	 * Retrieve button widget name.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget name.
	 */
	public function get_name() {
		return 'button';
	}

	/**
	 * Get widget title.
	 *
	 * Retrieve button widget title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget title.
	 */
	public function get_title() {
		return esc_html__( 'Button', 'elementor' );
	}

	/**
	 * Get widget icon.
	 *
	 * Retrieve button widget icon.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget icon.
	 */
	public function get_icon() {
		return 'eicon-button';
	}

	/**
	 * Get widget categories.
	 *
	 * Retrieve the list of categories the button widget belongs to.
	 *
	 * Used to determine where to display the widget in the editor.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @return array Widget categories.
	 */
	public function get_categories() {
		return [ 'basic' ];
	}

	/**
	 * Get button sizes.
	 *
	 * Retrieve an array of button sizes for the button widget.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @return array An array containing button sizes.
	 */
	public static function get_button_sizes() {
		return [
			'xs' => esc_html__( 'Extra Small', 'elementor' ),
			'sm' => esc_html__( 'Small', 'elementor' ),
			'md' => esc_html__( 'Medium', 'elementor' ),
			'lg' => esc_html__( 'Large', 'elementor' ),
			'xl' => esc_html__( 'Extra Large', 'elementor' ),
		];
	}

	/**
	 * Register button widget controls.
	 *
	 * Adds different input fields to allow the user to change and customize the widget settings.
	 *
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		$this->start_controls_section(
			'section_button',
			[
				'label' => esc_html__( 'Button', 'elementor' ),
			]
		);

		$this->add_control(
			'button_type',
			[
				'label' => esc_html__( 'Type', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => '',
				'options' => [
					'' => esc_html__( 'Default', 'elementor' ),
					'info' => esc_html__( 'Info', 'elementor' ),
					'success' => esc_html__( 'Success', 'elementor' ),
					'warning' => esc_html__( 'Warning', 'elementor' ),
					'danger' => esc_html__( 'Danger', 'elementor' ),
				],
				'prefix_class' => 'elementor-button-',
			]
		);

		$this->add_control(
			'text',
			[
				'label' => esc_html__( 'Text', 'elementor' ),
				'type' => Controls_Manager::TEXT,
				'dynamic' => [
					'active' => true,
				],
				'default' => esc_html__( 'Click here', 'elementor' ),
				'placeholder' => esc_html__( 'Click here', 'elementor' ),
			]
		);

		$this->add_control(
			'link',
			[
				'label' => esc_html__( 'Link', 'elementor' ),
				'type' => Controls_Manager::URL,
				'dynamic' => [
					'active' => true,
				],
				'placeholder' => esc_html__( 'https://your-link.com', 'elementor' ),
				'default' => [
					'url' => '#',
				],
			]
		);

		$this->add_responsive_control(
			'align',
			[
				'label' => esc_html__( 'Alignment', 'elementor' ),
				'type' => Controls_Manager::CHOOSE,
				'options' => [
					'left'    => [
						'title' => esc_html__( 'Left', 'elementor' ),
						'icon' => 'eicon-text-align-left',
					],
					'center' => [
						'title' => esc_html__( 'Center', 'elementor' ),
						'icon' => 'eicon-text-align-center',
					],
					'right' => [
						'title' => esc_html__( 'Right', 'elementor' ),
						'icon' => 'eicon-text-align-right',
					],
					'justify' => [
						'title' => esc_html__( 'Justified', 'elementor' ),
						'icon' => 'eicon-text-align-justify',
					],
				],
				'prefix_class' => 'elementor%s-align-',
				'default' => '',
			]
		);

		$this->add_control(
			'size',
			[
				'label' => esc_html__( 'Size', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => 'sm',
				'options' => self::get_button_sizes(),
				'style_transfer' => true,
			]
		);

		$this->add_control(
			'selected_icon',
			[
				'label' => esc_html__( 'Icon', 'elementor' ),
				'type' => Controls_Manager::ICONS,
				'fa4compatibility' => 'icon',
				'skin' => 'inline',
				'label_block' => false,
			]
		);

		$this->add_control(
			'icon_align',
			[
				'label' => esc_html__( 'Icon Position', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => 'left',
				'options' => [
					'left' => esc_html__( 'Before', 'elementor' ),
					'right' => esc_html__( 'After', 'elementor' ),
				],
				'condition' => [
					'selected_icon[value]!' => '',
				],
			]
		);

		$this->add_control(
			'icon_indent',
			[
				'label' => esc_html__( 'Icon Spacing', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'max' => 50,
					],
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-button .elementor-align-icon-right' => 'margin-left: {{SIZE}}{{UNIT}};',
					'{{WRAPPER}} .elementor-button .elementor-align-icon-left' => 'margin-right: {{SIZE}}{{UNIT}};',
				],
			]
		);

		$this->add_control(
			'view',
			[
				'label' => esc_html__( 'View', 'elementor' ),
				'type' => Controls_Manager::HIDDEN,
				'default' => 'traditional',
			]
		);

		$this->add_control(
			'button_css_id',
			[
				'label' => esc_html__( 'Button ID', 'elementor' ),
				'type' => Controls_Manager::TEXT,
				'dynamic' => [
					'active' => true,
				],
				'default' => '',
				'title' => esc_html__( 'Add your custom id WITHOUT the Pound key. e.g: my-id', 'elementor' ),
				'description' => sprintf(
					/* translators: 1: Code open tag, 2: Code close tag. */
					esc_html__( 'Please make sure the ID is unique and not used elsewhere on the page this form is displayed. This field allows %1$sA-z 0-9%2$s & underscore chars without spaces.', 'elementor' ),
					'<code>',
					'</code>'
				),
				'separator' => 'before',

			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_style',
			[
				'label' => esc_html__( 'Button', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			[
				'name' => 'typography',
				'global' => [
					'default' => Global_Typography::TYPOGRAPHY_ACCENT,
				],
				'selector' => '{{WRAPPER}} .elementor-button',
			]
		);

		$this->add_group_control(
			Group_Control_Text_Shadow::get_type(),
			[
				'name' => 'text_shadow',
				'selector' => '{{WRAPPER}} .elementor-button',
			]
		);

		$this->start_controls_tabs( 'tabs_button_style' );

		$this->start_controls_tab(
			'tab_button_normal',
			[
				'label' => esc_html__( 'Normal', 'elementor' ),
			]
		);

		$this->add_control(
			'button_text_color',
			[
				'label' => esc_html__( 'Text Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'selectors' => [
					'{{WRAPPER}} .elementor-button' => 'fill: {{VALUE}}; color: {{VALUE}};',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Background::get_type(),
			[
				'name' => 'background',
				'label' => esc_html__( 'Background', 'elementor' ),
				'types' => [ 'classic', 'gradient' ],
				'exclude' => [ 'image' ],
				'selector' => '{{WRAPPER}} .elementor-button',
				'fields_options' => [
					'background' => [
						'default' => 'classic',
					],
					'color' => [
						'global' => [
							'default' => Global_Colors::COLOR_ACCENT,
						],
					],
				],
			]
		);

		$this->end_controls_tab();

		$this->start_controls_tab(
			'tab_button_hover',
			[
				'label' => esc_html__( 'Hover', 'elementor' ),
			]
		);

		$this->add_control(
			'hover_color',
			[
				'label' => esc_html__( 'Text Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'{{WRAPPER}} .elementor-button:hover, {{WRAPPER}} .elementor-button:focus' => 'color: {{VALUE}};',
					'{{WRAPPER}} .elementor-button:hover svg, {{WRAPPER}} .elementor-button:focus svg' => 'fill: {{VALUE}};',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Background::get_type(),
			[
				'name' => 'button_background_hover',
				'label' => esc_html__( 'Background', 'elementor' ),
				'types' => [ 'classic', 'gradient' ],
				'exclude' => [ 'image' ],
				'selector' => '{{WRAPPER}} .elementor-button:hover, {{WRAPPER}} .elementor-button:focus',
				'fields_options' => [
					'background' => [
						'default' => 'classic',
					],
				],
			]
		);

		$this->add_control(
			'button_hover_border_color',
			[
				'label' => esc_html__( 'Border Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'condition' => [
					'border_border!' => '',
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-button:hover, {{WRAPPER}} .elementor-button:focus' => 'border-color: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'hover_animation',
			[
				'label' => esc_html__( 'Hover Animation', 'elementor' ),
				'type' => Controls_Manager::HOVER_ANIMATION,
			]
		);

		$this->end_controls_tab();

		$this->end_controls_tabs();

		$this->add_group_control(
			Group_Control_Border::get_type(),
			[
				'name' => 'border',
				'selector' => '{{WRAPPER}} .elementor-button',
				'separator' => 'before',
			]
		);

		$this->add_control(
			'border_radius',
			[
				'label' => esc_html__( 'Border Radius', 'elementor' ),
				'type' => Controls_Manager::DIMENSIONS,
				'size_units' => [ 'px', '%', 'em' ],
				'selectors' => [
					'{{WRAPPER}} .elementor-button' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Box_Shadow::get_type(),
			[
				'name' => 'button_box_shadow',
				'selector' => '{{WRAPPER}} .elementor-button',
			]
		);

		$this->add_responsive_control(
			'text_padding',
			[
				'label' => esc_html__( 'Padding', 'elementor' ),
				'type' => Controls_Manager::DIMENSIONS,
				'size_units' => [ 'px', 'em', '%' ],
				'selectors' => [
					'{{WRAPPER}} .elementor-button' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
				],
				'separator' => 'before',
			]
		);

		$this->end_controls_section();
	}

	/**
	 * Render button widget output on the frontend.
	 *
	 * Written in PHP and used to generate the final HTML.
	 *
	 * @since 1.0.0
	 * @access protected
	 */
	protected function render() {
		$settings = $this->get_settings_for_display();

		$this->add_render_attribute( 'wrapper', 'class', 'elementor-button-wrapper' );

		if ( ! empty( $settings['link']['url'] ) ) {
			$this->add_link_attributes( 'button', $settings['link'] );
			$this->add_render_attribute( 'button', 'class', 'elementor-button-link' );
		}

		$this->add_render_attribute( 'button', 'class', 'elementor-button' );
		$this->add_render_attribute( 'button', 'role', 'button' );

		if ( ! empty( $settings['button_css_id'] ) ) {
			$this->add_render_attribute( 'button', 'id', $settings['button_css_id'] );
		}

		if ( ! empty( $settings['size'] ) ) {
			$this->add_render_attribute( 'button', 'class', 'elementor-size-' . $settings['size'] );
		}

		if ( $settings['hover_animation'] ) {
			$this->add_render_attribute( 'button', 'class', 'elementor-animation-' . $settings['hover_animation'] );
		}
		?>
		<div <?php $this->print_render_attribute_string( 'wrapper' ); ?>>
			<a <?php $this->print_render_attribute_string( 'button' ); ?>>
				<?php $this->render_text(); ?>
			</a>
		</div>
		<?php
	}

	/**
	 * Render button widget output in the editor.
	 *
	 * Written as a Backbone JavaScript template and used to generate the live preview.
	 *
	 * @since 2.9.0
	 * @access protected
	 */
	protected function content_template() {
		?>
		<#
		view.addRenderAttribute( 'text', 'class', 'elementor-button-text' );
		view.addInlineEditingAttributes( 'text', 'none' );
		var iconHTML = elementor.helpers.renderIcon( view, settings.selected_icon, { 'aria-hidden': true }, 'i' , 'object' ),
			migrated = elementor.helpers.isIconMigrated( settings, 'selected_icon' );
		#>
		<div class="elementor-button-wrapper">
			<a id="{{ settings.button_css_id }}" class="elementor-button elementor-size-{{ settings.size }} elementor-animation-{{ settings.hover_animation }}" href="{{ settings.link.url }}" role="button">
				<span class="elementor-button-content-wrapper">
					<# if ( settings.icon || settings.selected_icon ) { #>
					<span class="elementor-button-icon elementor-align-icon-{{ settings.icon_align }}">
						<# if ( ( migrated || ! settings.icon ) && iconHTML.rendered ) { #>
							{{{ iconHTML.value }}}
						<# } else { #>
							<i class="{{ settings.icon }}" aria-hidden="true"></i>
						<# } #>
					</span>
					<# } #>
					<span {{{ view.getRenderAttributeString( 'text' ) }}}>{{{ settings.text }}}</span>
				</span>
			</a>
		</div>
		<?php
	}

	/**
	 * Render button text.
	 *
	 * Render button widget text.
	 *
	 * @since 1.5.0
	 * @access protected
	 */
	protected function render_text() {
		$settings = $this->get_settings_for_display();

		$migrated = isset( $settings['__fa4_migrated']['selected_icon'] );
		$is_new = empty( $settings['icon'] ) && Icons_Manager::is_migration_allowed();

		if ( ! $is_new && empty( $settings['icon_align'] ) ) {
			// @todo: remove when deprecated
			// added as bc in 2.6
			//old default
			$settings['icon_align'] = $this->get_settings( 'icon_align' );
		}

		$this->add_render_attribute( [
			'content-wrapper' => [
				'class' => 'elementor-button-content-wrapper',
			],
			'icon-align' => [
				'class' => [
					'elementor-button-icon',
					'elementor-align-icon-' . $settings['icon_align'],
				],
			],
			'text' => [
				'class' => 'elementor-button-text',
			],
		] );

		$this->add_inline_editing_attributes( 'text', 'none' );
		?>
		<span <?php $this->print_render_attribute_string( 'content-wrapper' ); ?>>
			<?php if ( ! empty( $settings['icon'] ) || ! empty( $settings['selected_icon']['value'] ) ) : ?>
			<span <?php $this->print_render_attribute_string( 'icon-align' ); ?>>
				<?php if ( $is_new || $migrated ) :
					Icons_Manager::render_icon( $settings['selected_icon'], [ 'aria-hidden' => 'true' ] );
				else : ?>
					<i class="<?php echo esc_attr( $settings['icon'] ); ?>" aria-hidden="true"></i>
				<?php endif; ?>
			</span>
			<?php endif; ?>
			<span <?php $this->print_render_attribute_string( 'text' ); ?>><?php $this->print_unescaped_setting( 'text' ); ?></span>
		</span>
		<?php
	}

	public function on_import( $element ) {
		return Icons_Manager::on_import_migration( $element, 'icon', 'selected_icon' );
	}
}
includes/widgets/google-maps.php000064400000015111151327220420012740 0ustar00<?php
namespace Elementor;

use Elementor\Modules\DynamicTags\Module as TagsModule;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor google maps widget.
 *
 * Elementor widget that displays an embedded google map.
 *
 * @since 1.0.0
 */
class Widget_Google_Maps extends Widget_Base {

	/**
	 * Get widget name.
	 *
	 * Retrieve google maps widget name.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget name.
	 */
	public function get_name() {
		return 'google_maps';
	}

	/**
	 * Get widget title.
	 *
	 * Retrieve google maps widget title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget title.
	 */
	public function get_title() {
		return esc_html__( 'Google Maps', 'elementor' );
	}

	/**
	 * Get widget icon.
	 *
	 * Retrieve google maps widget icon.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget icon.
	 */
	public function get_icon() {
		return 'eicon-google-maps';
	}

	/**
	 * Get widget categories.
	 *
	 * Retrieve the list of categories the google maps widget belongs to.
	 *
	 * Used to determine where to display the widget in the editor.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @return array Widget categories.
	 */
	public function get_categories() {
		return [ 'basic' ];
	}

	/**
	 * Get widget keywords.
	 *
	 * Retrieve the list of keywords the widget belongs to.
	 *
	 * @since 2.1.0
	 * @access public
	 *
	 * @return array Widget keywords.
	 */
	public function get_keywords() {
		return [ 'google', 'map', 'embed', 'location' ];
	}

	/**
	 * Register google maps widget controls.
	 *
	 * Adds different input fields to allow the user to change and customize the widget settings.
	 *
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		$this->start_controls_section(
			'section_map',
			[
				'label' => esc_html__( 'Map', 'elementor' ),
			]
		);

		if ( Plugin::$instance->editor->is_edit_mode() ) {
			$api_key = get_option( 'elementor_google_maps_api_key' );

			if ( ! $api_key ) {
				$this->add_control(
					'api_key_notification',
					[
						'type' => Controls_Manager::RAW_HTML,
						'raw' => sprintf(
							/* translators: 1: Link to integrations settings tab, 2: Link to google maps api key documentation. */
							esc_html__( 'Set your Google Maps API Key in Elementor\'s <a href="%1$s" target="_blank">Integrations Settings</a> page. Create your key <a href="%2$s" target="_blank">here.', 'elementor' ),
							Settings::get_url() . '#tab-integrations',
							'https://developers.google.com/maps/documentation/embed/get-api-key'
						),
						'content_classes' => 'elementor-panel-alert elementor-panel-alert-info',
					]
				);
			}
		}

		$default_address = esc_html__( 'London Eye, London, United Kingdom', 'elementor' );
		$this->add_control(
			'address',
			[
				'label' => esc_html__( 'Location', 'elementor' ),
				'type' => Controls_Manager::TEXT,
				'dynamic' => [
					'active' => true,
					'categories' => [
						TagsModule::POST_META_CATEGORY,
					],
				],
				'placeholder' => $default_address,
				'default' => $default_address,
				'label_block' => true,
			]
		);

		$this->add_control(
			'zoom',
			[
				'label' => esc_html__( 'Zoom', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'default' => [
					'size' => 10,
				],
				'range' => [
					'px' => [
						'min' => 1,
						'max' => 20,
					],
				],
				'separator' => 'before',
			]
		);

		$this->add_responsive_control(
			'height',
			[
				'label' => esc_html__( 'Height', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'min' => 40,
						'max' => 1440,
					],
					'vh' => [
						'min' => 0,
						'max' => 100,
					],
				],
				'size_units' => [ 'px', 'vh' ],
				'selectors' => [
					'{{WRAPPER}} iframe' => 'height: {{SIZE}}{{UNIT}};',
				],
			]
		);

		$this->add_control(
			'view',
			[
				'label' => esc_html__( 'View', 'elementor' ),
				'type' => Controls_Manager::HIDDEN,
				'default' => 'traditional',
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_map_style',
			[
				'label' => esc_html__( 'Map', 'elementor' ),
				'tab'   => Controls_Manager::TAB_STYLE,
			]
		);

		$this->start_controls_tabs( 'map_filter' );

		$this->start_controls_tab( 'normal',
			[
				'label' => esc_html__( 'Normal', 'elementor' ),
			]
		);

		$this->add_group_control(
			Group_Control_Css_Filter::get_type(),
			[
				'name' => 'css_filters',
				'selector' => '{{WRAPPER}} iframe',
			]
		);

		$this->end_controls_tab();

		$this->start_controls_tab( 'hover',
			[
				'label' => esc_html__( 'Hover', 'elementor' ),
			]
		);

		$this->add_group_control(
			Group_Control_Css_Filter::get_type(),
			[
				'name' => 'css_filters_hover',
				'selector' => '{{WRAPPER}}:hover iframe',
			]
		);

		$this->add_control(
			'hover_transition',
			[
				'label' => esc_html__( 'Transition Duration', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'max' => 3,
						'step' => 0.1,
					],
				],
				'selectors' => [
					'{{WRAPPER}} iframe' => 'transition-duration: {{SIZE}}s',
				],
			]
		);

		$this->end_controls_tab();

		$this->end_controls_tabs();

		$this->end_controls_section();
	}

	/**
	 * Render google maps widget output on the frontend.
	 *
	 * Written in PHP and used to generate the final HTML.
	 *
	 * @since 1.0.0
	 * @access protected
	 */
	protected function render() {
		$settings = $this->get_settings_for_display();

		if ( empty( $settings['address'] ) ) {
			return;
		}

		if ( 0 === absint( $settings['zoom']['size'] ) ) {
			$settings['zoom']['size'] = 10;
		}

		$api_key = esc_html( get_option( 'elementor_google_maps_api_key' ) );

		$params = [
			rawurlencode( $settings['address'] ),
			absint( $settings['zoom']['size'] ),
		];

		if ( $api_key ) {
			$params[] = $api_key;

			$url = 'https://www.google.com/maps/embed/v1/place?key=%3$s&q=%1$s&amp;zoom=%2$d';
		} else {
			$url = 'https://maps.google.com/maps?q=%1$s&amp;t=m&amp;z=%2$d&amp;output=embed&amp;iwloc=near';
		}

		?>
		<div class="elementor-custom-embed">
			<iframe frameborder="0" scrolling="no" marginheight="0" marginwidth="0"
					src="<?php echo esc_url( vsprintf( $url, $params ) ); ?>"
					title="<?php echo esc_attr( $settings['address'] ); ?>"
					aria-label="<?php echo esc_attr( $settings['address'] ); ?>"
			></iframe>
		</div>
		<?php
	}

	/**
	 * Render google maps widget output in the editor.
	 *
	 * Written as a Backbone JavaScript template and used to generate the live preview.
	 *
	 * @since 2.9.0
	 * @access protected
	 */
	protected function content_template() {}
}
includes/widgets/sidebar.php000064400000005642151327220420012147 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor sidebar widget.
 *
 * Elementor widget that insert any sidebar into the page.
 *
 * @since 1.0.0
 */
class Widget_Sidebar extends Widget_Base {

	/**
	 * Get widget name.
	 *
	 * Retrieve sidebar widget name.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget name.
	 */
	public function get_name() {
		return 'sidebar';
	}

	/**
	 * Get widget title.
	 *
	 * Retrieve sidebar widget title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget title.
	 */
	public function get_title() {
		return esc_html__( 'Sidebar', 'elementor' );
	}

	/**
	 * Get widget icon.
	 *
	 * Retrieve sidebar widget icon.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget icon.
	 */
	public function get_icon() {
		return 'eicon-sidebar';
	}

	/**
	 * Get widget keywords.
	 *
	 * Retrieve the list of keywords the widget belongs to.
	 *
	 * @since 2.1.0
	 * @access public
	 *
	 * @return array Widget keywords.
	 */
	public function get_keywords() {
		return [ 'sidebar', 'widget' ];
	}

	/**
	 * Register sidebar widget controls.
	 *
	 * Adds different input fields to allow the user to change and customize the widget settings.
	 *
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		global $wp_registered_sidebars;

		$options = [];

		if ( ! $wp_registered_sidebars ) {
			$options[''] = esc_html__( 'No sidebars were found', 'elementor' );
		} else {
			$options[''] = esc_html__( 'Choose Sidebar', 'elementor' );

			foreach ( $wp_registered_sidebars as $sidebar_id => $sidebar ) {
				$options[ $sidebar_id ] = $sidebar['name'];
			}
		}

		$default_key = array_keys( $options );
		$default_key = array_shift( $default_key );

		$this->start_controls_section(
			'section_sidebar',
			[
				'label' => esc_html__( 'Sidebar', 'elementor' ),
			]
		);

		$this->add_control(
			'sidebar',
			[
				'label' => esc_html__( 'Choose Sidebar', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => $default_key,
				'options' => $options,
			]
		);

		$this->end_controls_section();
	}

	/**
	 * Render sidebar widget output on the frontend.
	 *
	 * Written in PHP and used to generate the final HTML.
	 *
	 * @since 1.0.0
	 * @access protected
	 */
	protected function render() {
		$sidebar = $this->get_settings_for_display( 'sidebar' );

		if ( empty( $sidebar ) ) {
			return;
		}

		dynamic_sidebar( $sidebar );
	}

	/**
	 * Render sidebar widget output in the editor.
	 *
	 * Written as a Backbone JavaScript template and used to generate the live preview.
	 *
	 * @since 2.9.0
	 * @access protected
	 */
	protected function content_template() {}

	/**
	 * Render sidebar widget as plain content.
	 *
	 * Override the default render behavior, don't render sidebar content.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function render_plain_content() {}
}
includes/widgets/text-editor.php000064400000026200151327220420012777 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

use Elementor\Core\Kits\Documents\Tabs\Global_Colors;
use Elementor\Core\Kits\Documents\Tabs\Global_Typography;

/**
 * Elementor text editor widget.
 *
 * Elementor widget that displays a WYSIWYG text editor, just like the WordPress
 * editor.
 *
 * @since 1.0.0
 */
class Widget_Text_Editor extends Widget_Base {

	/**
	 * Get widget name.
	 *
	 * Retrieve text editor widget name.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget name.
	 */
	public function get_name() {
		return 'text-editor';
	}

	/**
	 * Get widget title.
	 *
	 * Retrieve text editor widget title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget title.
	 */
	public function get_title() {
		return esc_html__( 'Text Editor', 'elementor' );
	}

	/**
	 * Get widget icon.
	 *
	 * Retrieve text editor widget icon.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Widget icon.
	 */
	public function get_icon() {
		return 'eicon-text';
	}

	/**
	 * Get widget categories.
	 *
	 * Retrieve the list of categories the text editor widget belongs to.
	 *
	 * Used to determine where to display the widget in the editor.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @return array Widget categories.
	 */
	public function get_categories() {
		return [ 'basic' ];
	}

	/**
	 * Get widget keywords.
	 *
	 * Retrieve the list of keywords the widget belongs to.
	 *
	 * @since 2.1.0
	 * @access public
	 *
	 * @return array Widget keywords.
	 */
	public function get_keywords() {
		return [ 'text', 'editor' ];
	}

	/**
	 * Register text editor widget controls.
	 *
	 * Adds different input fields to allow the user to change and customize the widget settings.
	 *
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		$this->start_controls_section(
			'section_editor',
			[
				'label' => esc_html__( 'Text Editor', 'elementor' ),
			]
		);

		$this->add_control(
			'editor',
			[
				'label' => '',
				'type' => Controls_Manager::WYSIWYG,
				'default' => '<p>' . esc_html__( 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut elit tellus, luctus nec ullamcorper mattis, pulvinar dapibus leo.', 'elementor' ) . '</p>',
			]
		);

		$this->add_control(
			'drop_cap', [
				'label' => esc_html__( 'Drop Cap', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'label_off' => esc_html__( 'Off', 'elementor' ),
				'label_on' => esc_html__( 'On', 'elementor' ),
				'prefix_class' => 'elementor-drop-cap-',
				'frontend_available' => true,
			]
		);

		$text_columns = range( 1, 10 );
		$text_columns = array_combine( $text_columns, $text_columns );
		$text_columns[''] = esc_html__( 'Default', 'elementor' );

		$this->add_responsive_control(
			'text_columns',
			[
				'label' => esc_html__( 'Columns', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'separator' => 'before',
				'options' => $text_columns,
				'selectors' => [
					'{{WRAPPER}}' => 'columns: {{VALUE}};',
				],
			]
		);

		$this->add_responsive_control(
			'column_gap',
			[
				'label' => esc_html__( 'Columns Gap', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'size_units' => [ 'px', '%', 'em', 'vw' ],
				'range' => [
					'px' => [
						'max' => 100,
					],
					'%' => [
						'max' => 10,
						'step' => 0.1,
					],
					'vw' => [
						'max' => 10,
						'step' => 0.1,
					],
					'em' => [
						'max' => 10,
						'step' => 0.1,
					],
				],
				'selectors' => [
					'{{WRAPPER}}' => 'column-gap: {{SIZE}}{{UNIT}};',
				],
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_style',
			[
				'label' => esc_html__( 'Text Editor', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$this->add_responsive_control(
			'align',
			[
				'label' => esc_html__( 'Alignment', 'elementor' ),
				'type' => Controls_Manager::CHOOSE,
				'options' => [
					'left' => [
						'title' => esc_html__( 'Left', 'elementor' ),
						'icon' => 'eicon-text-align-left',
					],
					'center' => [
						'title' => esc_html__( 'Center', 'elementor' ),
						'icon' => 'eicon-text-align-center',
					],
					'right' => [
						'title' => esc_html__( 'Right', 'elementor' ),
						'icon' => 'eicon-text-align-right',
					],
					'justify' => [
						'title' => esc_html__( 'Justified', 'elementor' ),
						'icon' => 'eicon-text-align-justify',
					],
				],
				'selectors' => [
					'{{WRAPPER}}' => 'text-align: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			'text_color',
			[
				'label' => esc_html__( 'Text Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'default' => '',
				'selectors' => [
					'{{WRAPPER}}' => 'color: {{VALUE}};',
				],
				'global' => [
					'default' => Global_Colors::COLOR_TEXT,
				],
			]
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			[
				'name' => 'typography',
				'global' => [
					'default' => Global_Typography::TYPOGRAPHY_TEXT,
				],
			]
		);

		$this->add_group_control(
			Group_Control_Text_Shadow::get_type(),
			[
				'name' => 'text_shadow',
				'selector' => '{{WRAPPER}}',
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'section_drop_cap',
			[
				'label' => esc_html__( 'Drop Cap', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
				'condition' => [
					'drop_cap' => 'yes',
				],
			]
		);

		$this->add_control(
			'drop_cap_view',
			[
				'label' => esc_html__( 'View', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'options' => [
					'default' => esc_html__( 'Default', 'elementor' ),
					'stacked' => esc_html__( 'Stacked', 'elementor' ),
					'framed' => esc_html__( 'Framed', 'elementor' ),
				],
				'default' => 'default',
				'prefix_class' => 'elementor-drop-cap-view-',
			]
		);

		$this->add_control(
			'drop_cap_primary_color',
			[
				'label' => esc_html__( 'Primary Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'{{WRAPPER}}.elementor-drop-cap-view-stacked .elementor-drop-cap' => 'background-color: {{VALUE}};',
					'{{WRAPPER}}.elementor-drop-cap-view-framed .elementor-drop-cap, {{WRAPPER}}.elementor-drop-cap-view-default .elementor-drop-cap' => 'color: {{VALUE}}; border-color: {{VALUE}};',
				],
				'global' => [
					'default' => Global_Colors::COLOR_PRIMARY,
				],
			]
		);

		$this->add_control(
			'drop_cap_secondary_color',
			[
				'label' => esc_html__( 'Secondary Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'{{WRAPPER}}.elementor-drop-cap-view-framed .elementor-drop-cap' => 'background-color: {{VALUE}};',
					'{{WRAPPER}}.elementor-drop-cap-view-stacked .elementor-drop-cap' => 'color: {{VALUE}};',
				],
				'condition' => [
					'drop_cap_view!' => 'default',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Text_Shadow::get_type(),
			[
				'name' => 'drop_cap_shadow',
				'selector' => '{{WRAPPER}} .elementor-drop-cap',
			]
		);

		$this->add_control(
			'drop_cap_size',
			[
				'label' => esc_html__( 'Size', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'default' => [
					'size' => 5,
				],
				'range' => [
					'px' => [
						'max' => 30,
					],
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-drop-cap' => 'padding: {{SIZE}}{{UNIT}};',
				],
				'condition' => [
					'drop_cap_view!' => 'default',
				],
			]
		);

		$this->add_control(
			'drop_cap_space',
			[
				'label' => esc_html__( 'Space', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'default' => [
					'size' => 10,
				],
				'range' => [
					'px' => [
						'max' => 50,
					],
				],
				'selectors' => [
					'body:not(.rtl) {{WRAPPER}} .elementor-drop-cap' => 'margin-right: {{SIZE}}{{UNIT}};',
					'body.rtl {{WRAPPER}} .elementor-drop-cap' => 'margin-left: {{SIZE}}{{UNIT}};',
				],
			]
		);

		$this->add_control(
			'drop_cap_border_radius',
			[
				'label' => esc_html__( 'Border Radius', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'size_units' => [ '%', 'px' ],
				'default' => [
					'unit' => '%',
				],
				'range' => [
					'%' => [
						'max' => 50,
					],
				],
				'selectors' => [
					'{{WRAPPER}} .elementor-drop-cap' => 'border-radius: {{SIZE}}{{UNIT}};',
				],
			]
		);

		$this->add_control(
			'drop_cap_border_width', [
				'label' => esc_html__( 'Border Width', 'elementor' ),
				'type' => Controls_Manager::DIMENSIONS,
				'selectors' => [
					'{{WRAPPER}} .elementor-drop-cap' => 'border-width: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
				],
				'condition' => [
					'drop_cap_view' => 'framed',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			[
				'name' => 'drop_cap_typography',
				'selector' => '{{WRAPPER}} .elementor-drop-cap-letter',
				'exclude' => [
					'letter_spacing',
				],
			]
		);

		$this->end_controls_section();
	}

	/**
	 * Render text editor widget output on the frontend.
	 *
	 * Written in PHP and used to generate the final HTML.
	 *
	 * @since 1.0.0
	 * @access protected
	 */
	protected function render() {
		$is_dom_optimized = Plugin::$instance->experiments->is_feature_active( 'e_dom_optimization' );
		$is_edit_mode = Plugin::$instance->editor->is_edit_mode();
		$should_render_inline_editing = ( ! $is_dom_optimized || $is_edit_mode );

		$editor_content = $this->get_settings_for_display( 'editor' );
		$editor_content = $this->parse_text_editor( $editor_content );

		if ( $should_render_inline_editing ) {
			$this->add_render_attribute( 'editor', 'class', [ 'elementor-text-editor', 'elementor-clearfix' ] );
		}

		$this->add_inline_editing_attributes( 'editor', 'advanced' );
		?>
		<?php if ( $should_render_inline_editing ) { ?>
			<div <?php $this->print_render_attribute_string( 'editor' ); ?>>
		<?php } ?>
		<?php // PHPCS - the main text of a widget should not be escaped.
				echo $editor_content; // phpcs:ignore WordPress.Security.EscapeOutput ?>
		<?php if ( $should_render_inline_editing ) { ?>
			</div>
		<?php } ?>
		<?php
	}

	/**
	 * Render text editor widget as plain content.
	 *
	 * Override the default behavior by printing the content without rendering it.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function render_plain_content() {
		// In plain mode, render without shortcode
		$this->print_unescaped_setting( 'editor' );
	}

	/**
	 * Render text editor widget output in the editor.
	 *
	 * Written as a Backbone JavaScript template and used to generate the live preview.
	 *
	 * @since 2.9.0
	 * @access protected
	 */
	protected function content_template() {
		?>
		<#
		const isDomOptimized = ! ! elementorFrontend.config.experimentalFeatures.e_dom_optimization,
			isEditMode = elementorFrontend.isEditMode(),
			shouldRenderInlineEditing = ( ! isDomOptimized || isEditMode );

		if ( shouldRenderInlineEditing ) {
			view.addRenderAttribute( 'editor', 'class', [ 'elementor-text-editor', 'elementor-clearfix' ] );
		}

		view.addInlineEditingAttributes( 'editor', 'advanced' );

		if ( shouldRenderInlineEditing ) { #>
			<div {{{ view.getRenderAttributeString( 'editor' ) }}}>
		<# } #>

			{{{ settings.editor }}}

		<# if ( shouldRenderInlineEditing ) { #>
			</div>
		<# } #>
		<?php
	}
}
includes/autoloader.php000064400000022267151327220420011231 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor autoloader.
 *
 * Elementor autoloader handler class is responsible for loading the different
 * classes needed to run the plugin.
 *
 * @since 1.6.0
 */
class Autoloader {

	/**
	 * Classes map.
	 *
	 * Maps Elementor classes to file names.
	 *
	 * @since 1.6.0
	 * @access private
	 * @static
	 *
	 * @var array Classes used by elementor.
	 */
	private static $classes_map;

	/**
	 * Classes aliases.
	 *
	 * Maps Elementor classes to aliases.
	 *
	 * @since 1.6.0
	 * @access private
	 * @static
	 *
	 * @var array Classes aliases.
	 */
	private static $classes_aliases;

	/**
	 * Default path for autoloader.
	 *
	 * @var string
	 */
	private static $default_path;

	/**
	 * Default namespace for autoloader.
	 *
	 * @var string
	 */
	private static $default_namespace;

	/**
	 * Run autoloader.
	 *
	 * Register a function as `__autoload()` implementation.
	 *
	 * @param string $default_path
	 * @param string $default_namespace
	 *
	 * @since 1.6.0
	 * @access public
	 * @static
	 */
	public static function run( $default_path = '', $default_namespace = '' ) {
		if ( '' === $default_path ) {
			$default_path = ELEMENTOR_PATH;
		}

		if ( '' === $default_namespace ) {
			$default_namespace = __NAMESPACE__;
		}

		self::$default_path = $default_path;
		self::$default_namespace = $default_namespace;

		spl_autoload_register( [ __CLASS__, 'autoload' ] );
	}

	/**
	 * Get classes aliases.
	 *
	 * Retrieve the classes aliases names.
	 *
	 * @since 1.6.0
	 * @access public
	 * @static
	 *
	 * @return array Classes aliases.
	 */
	public static function get_classes_aliases() {
		if ( ! self::$classes_aliases ) {
			self::init_classes_aliases();
		}

		return self::$classes_aliases;
	}

	public static function get_classes_map() {
		if ( ! self::$classes_map ) {
			self::init_classes_map();
		}

		return self::$classes_map;
	}

	private static function init_classes_map() {
		self::$classes_map = [
			'Api' => 'includes/api.php',
			'Base_Control' => 'includes/controls/base.php',
			'Base_Data_Control' => 'includes/controls/base-data.php',
			'Base_UI_Control' => 'includes/controls/base-ui.php',
			'Beta_Testers' => 'includes/beta-testers.php',
			'Compatibility' => 'includes/compatibility.php',
			'Conditions' => 'includes/conditions.php',
			'Controls_Manager' => 'includes/managers/controls.php',
			'Controls_Stack' => 'includes/base/controls-stack.php',
			'Sub_Controls_Stack' => 'includes/base/sub-controls-stack.php',
			'DB' => 'includes/db.php',
			'Elements_Manager' => 'includes/managers/elements.php',
			'Embed' => 'includes/embed.php',
			'Fonts' => 'includes/fonts.php',
			'Frontend' => 'includes/frontend.php',
			'Group_Control_Base' => 'includes/controls/groups/base.php',
			'Group_Control_Interface' => 'includes/interfaces/group-control.php',
			'Heartbeat' => 'includes/heartbeat.php',
			'Images_Manager' => 'includes/managers/image.php',
			'Maintenance' => 'includes/maintenance.php',
			'Maintenance_Mode' => 'includes/maintenance-mode.php',
			'Preview' => 'includes/preview.php',
			'Rollback' => 'includes/rollback.php',
			'Settings' => 'includes/settings/settings.php',
			'Settings_Controls' => 'includes/settings/controls.php',
			'Settings_Validations' => 'includes/settings/validations.php',
			'Settings_Page' => 'includes/settings/settings-page.php',
			'Shapes' => 'includes/shapes.php',
			'Skins_Manager' => 'includes/managers/skins.php',
			'Icons_Manager' => 'includes/managers/icons.php',
			'Stylesheet' => 'includes/stylesheet.php',
			'System_Info\Main' => 'includes/settings/system-info/main.php',
			'TemplateLibrary\Classes\Import_Images' => 'includes/template-library/classes/class-import-images.php',
			'TemplateLibrary\Manager' => 'includes/template-library/manager.php',
			'TemplateLibrary\Source_Base' => 'includes/template-library/sources/base.php',
			'TemplateLibrary\Source_Local' => 'includes/template-library/sources/local.php',
			'TemplateLibrary\Source_Remote' => 'includes/template-library/sources/remote.php',
			'Tools' => 'includes/settings/tools.php',
			'Tracker' => 'includes/tracker.php',
			'User' => 'includes/user.php',
			'Utils' => 'includes/utils.php',
			'Widget_WordPress' => 'includes/widgets/wordpress.php',
			'Widgets_Manager' => 'includes/managers/widgets.php',
			'WordPress_Widgets_Manager' => 'includes/managers/wordpress-widgets.php',
		];

		$controls_names = Controls_Manager::get_controls_names();

		$controls_names = array_merge( $controls_names, [
			'base_multiple',
			'base_units',
		] );

		foreach ( $controls_names as $control_name ) {
			$class_name = 'Control_' . self::normalize_class_name( $control_name, '_' );

			self::$classes_map[ $class_name ] = 'includes/controls/' . str_replace( '_', '-', $control_name ) . '.php';
		}

		$controls_groups_names = Controls_Manager::get_groups_names();

		foreach ( $controls_groups_names as $group_name ) {
			$class_name = 'Group_Control_' . self::normalize_class_name( $group_name, '_' );

			self::$classes_map[ $class_name ] = 'includes/controls/groups/' . $group_name . '.php';
		}
	}

	/**
	 * Normalize Class Name
	 *
	 * Used to convert control names to class names.
	 *
	 * @param $string
	 * @param string $delimiter
	 *
	 * @return mixed
	 */
	private static function normalize_class_name( $string, $delimiter = ' ' ) {
		return ucwords( str_replace( '-', '_', $string ), $delimiter );
	}

	private static function init_classes_aliases() {
		self::$classes_aliases = [
			'Core\Ajax' => [
				'replacement' => 'Core\Common\Modules\Ajax\Module',
				'version' => '2.3.0',
			],
			'Editor' => [
				'replacement' => 'Core\Editor\Editor',
				'version' => '2.6.0',
			],
			'Scheme_Base' => [
				'replacement' => 'Core\Schemes\Base',
				'version' => '2.8.0',
			],
			'Scheme_Color' => [
				'replacement' => 'Core\Schemes\Color',
				'version' => '2.8.0',
			],
			'Scheme_Color_Picker' => [
				'replacement' => 'Core\Schemes\Color_Picker',
				'version' => '2.8.0',
			],
			'Schemes_Manager' => [
				'replacement' => 'Core\Schemes\Manager',
				'version' => '2.8.0',
			],
			'Scheme_Typography' => [
				'replacement' => 'Core\Schemes\Typography',
				'version' => '2.8.0',
			],
			'System_Info\Main' => [
				'replacement' => 'Modules\System_Info\Module',
				'version' => '2.9.0',
			],
			'System_Info\Classes\Abstracts\Base_Reporter' => [
				'replacement' => 'Modules\System_Info\Reporters\Base',
				'version' => '2.9.0',
			],
			'System_Info\Classes\Server_Reporter' => [
				'replacement' => 'Modules\System_Info\Reporters\Server',
				'version' => '2.9.0',
			],
			'System_Info\Classes\MU_Plugins_Reporter' => [
				'replacement' => 'Modules\System_Info\Reporters\MU_Plugins',
				'version' => '2.9.0',
			],
			'System_Info\Classes\Network_Plugins_Reporter' => [
				'replacement' => 'Modules\System_Info\Reporters\Network_Plugins',
				'version' => '2.9.0',
			],
			'System_Info\Classes\Plugins_Reporter' => [
				'replacement' => 'Modules\System_Info\Reporters\Plugins',
				'version' => '2.9.0',
			],
			'System_Info\Classes\Theme_Reporter' => [
				'replacement' => 'Modules\System_Info\Reporters\Theme',
				'version' => '2.9.0',
			],
			'System_Info\Classes\User_Reporter' => [
				'replacement' => 'Modules\System_Info\Reporters\User',
				'version' => '2.9.0',
			],
			'System_Info\Helpers\Model_Helper' => [
				'replacement' => 'Modules\System_Info\Helpers\Model_Helper',
				'version' => '2.9.0',
			],
		];
	}

	/**
	 * Load class.
	 *
	 * For a given class name, require the class file.
	 *
	 * @since 1.6.0
	 * @access private
	 * @static
	 *
	 * @param string $relative_class_name Class name.
	 */
	private static function load_class( $relative_class_name ) {
		$classes_map = self::get_classes_map();

		if ( isset( $classes_map[ $relative_class_name ] ) ) {
			$filename = self::$default_path . '/' . $classes_map[ $relative_class_name ];
		} else {
			$filename = strtolower(
				preg_replace(
					[ '/([a-z])([A-Z])/', '/_/', '/\\\/' ],
					[ '$1-$2', '-', DIRECTORY_SEPARATOR ],
					$relative_class_name
				)
			);

			$filename = self::$default_path . $filename . '.php';
		}

		if ( is_readable( $filename ) ) {
			require $filename;
		}
	}

	/**
	 * Autoload.
	 *
	 * For a given class, check if it exist and load it.
	 *
	 * @since 1.6.0
	 * @access private
	 * @static
	 *
	 * @param string $class Class name.
	 */
	private static function autoload( $class ) {
		if ( 0 !== strpos( $class, self::$default_namespace . '\\' ) ) {
			return;
		}

		$relative_class_name = preg_replace( '/^' . self::$default_namespace . '\\\/', '', $class );

		$classes_aliases = self::get_classes_aliases();

		$has_class_alias = isset( $classes_aliases[ $relative_class_name ] );

		// Backward Compatibility: Save old class name for set an alias after the new class is loaded
		if ( $has_class_alias ) {
			$alias_data = $classes_aliases[ $relative_class_name ];

			$relative_class_name = $alias_data['replacement'];
		}

		$final_class_name = self::$default_namespace . '\\' . $relative_class_name;

		if ( ! class_exists( $final_class_name ) ) {
			self::load_class( $relative_class_name );
		}

		if ( $has_class_alias ) {
			class_alias( $final_class_name, $class );

			Utils::handle_deprecation( $class, $alias_data['version'], $final_class_name );
		}
	}
}
includes/user.php000064400000015033151327220420010041 0ustar00<?php
namespace Elementor;

use Elementor\Core\Common\Modules\Ajax\Module as Ajax;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor user.
 *
 * Elementor user handler class is responsible for checking if the user can edit
 * with Elementor and displaying different admin notices.
 *
 * @since 1.0.0
 */
class User {

	/**
	 * The admin notices key.
	 */
	const ADMIN_NOTICES_KEY = 'elementor_admin_notices';

	const INTRODUCTION_KEY = 'elementor_introduction';

	const BETA_TESTER_META_KEY = 'elementor_beta_tester';

	/**
	 * API URL.
	 *
	 * Holds the URL of the Beta Tester Opt-in API.
	 *
	 * @since 1.0.0
	 * @access private
	 *
	 * @var string API URL.
	 */
	const BETA_TESTER_API_URL = 'https://my.elementor.com/api/v1/beta_tester/';

	/**
	 * Init.
	 *
	 * Initialize Elementor user.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 */
	public static function init() {
		add_action( 'wp_ajax_elementor_set_admin_notice_viewed', [ __CLASS__, 'ajax_set_admin_notice_viewed' ] );
		add_action( 'admin_post_elementor_set_admin_notice_viewed', [ __CLASS__, 'ajax_set_admin_notice_viewed' ] );

		add_action( 'elementor/ajax/register_actions', [ __CLASS__, 'register_ajax_actions' ] );
	}

	/**
	 * @since 2.1.0
	 * @access public
	 * @static
	 */
	public static function register_ajax_actions( Ajax $ajax ) {
		$ajax->register_ajax_action( 'introduction_viewed', [ __CLASS__, 'set_introduction_viewed' ] );
		$ajax->register_ajax_action( 'beta_tester_signup', [ __CLASS__, 'register_as_beta_tester' ] );
	}

	/**
	 * Is current user can edit.
	 *
	 * Whether the current user can edit the post.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @param int $post_id Optional. The post ID. Default is `0`.
	 *
	 * @return bool Whether the current user can edit the post.
	 */
	public static function is_current_user_can_edit( $post_id = 0 ) {
		$post = get_post( $post_id );

		if ( ! $post ) {
			return false;
		}

		if ( 'trash' === get_post_status( $post_id ) ) {
			return false;
		}

		if ( ! self::is_current_user_can_edit_post_type( $post->post_type ) ) {
			return false;
		}

		$post_type_object = get_post_type_object( $post->post_type );

		if ( ! isset( $post_type_object->cap->edit_post ) ) {
			return false;
		}

		$edit_cap = $post_type_object->cap->edit_post;
		if ( ! current_user_can( $edit_cap, $post_id ) ) {
			return false;
		}

		if ( intval( get_option( 'page_for_posts' ) ) === $post_id ) {
			return false;
		}

		return true;
	}

	/**
	 * Is current user can access elementor.
	 *
	 * Whether the current user role is not excluded by Elementor Settings.
	 *
	 * @since 2.1.7
	 * @access public
	 * @static
	 *
	 * @return bool True if can access, False otherwise.
	 */
	public static function is_current_user_in_editing_black_list() {
		$user = wp_get_current_user();
		$exclude_roles = get_option( 'elementor_exclude_user_roles', [] );

		$compare_roles = array_intersect( $user->roles, $exclude_roles );
		if ( ! empty( $compare_roles ) ) {
			return false;
		}

		return true;
	}

	/**
	 * Is current user can edit post type.
	 *
	 * Whether the current user can edit the given post type.
	 *
	 * @since 1.9.0
	 * @access public
	 * @static
	 *
	 * @param string $post_type the post type slug to check.
	 *
	 * @return bool True if can edit, False otherwise.
	 */
	public static function is_current_user_can_edit_post_type( $post_type ) {
		if ( ! self::is_current_user_in_editing_black_list() ) {
			return false;
		}

		if ( ! Utils::is_post_type_support( $post_type ) ) {
			return false;
		}

		$post_type_object = get_post_type_object( $post_type );

		if ( ! current_user_can( $post_type_object->cap->edit_posts ) ) {
			return false;
		}

		return true;
	}

	/**
	 * Get user notices.
	 *
	 * Retrieve the list of notices for the current user.
	 *
	 * @since 2.0.0
	 * @access private
	 * @static
	 *
	 * @return array A list of user notices.
	 */
	private static function get_user_notices() {
		return get_user_meta( get_current_user_id(), self::ADMIN_NOTICES_KEY, true );
	}

	/**
	 * Is user notice viewed.
	 *
	 * Whether the notice was viewed by the user.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @param int $notice_id The notice ID.
	 *
	 * @return bool Whether the notice was viewed by the user.
	 */
	public static function is_user_notice_viewed( $notice_id ) {
		$notices = self::get_user_notices();

		if ( empty( $notices ) || empty( $notices[ $notice_id ] ) ) {
			return false;
		}

		return true;
	}

	/**
	 * Set admin notice as viewed.
	 *
	 * Flag the user admin notice as viewed using an authenticated ajax request.
	 *
	 * Fired by `wp_ajax_elementor_set_admin_notice_viewed` action.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 */
	public static function ajax_set_admin_notice_viewed() {
		if ( empty( $_REQUEST['notice_id'] ) ) {
			wp_die();
		}

		$notices = self::get_user_notices();
		if ( empty( $notices ) ) {
			$notices = [];
		}

		$notices[ $_REQUEST['notice_id'] ] = 'true';
		update_user_meta( get_current_user_id(), self::ADMIN_NOTICES_KEY, $notices );

		if ( ! wp_doing_ajax() ) {
			wp_safe_redirect( admin_url() );
			die;
		}

		wp_die();
	}

	/**
	 * @since 2.1.0
	 * @access public
	 * @static
	 */
	public static function set_introduction_viewed( array $data ) {
		$user_introduction_meta = self::get_introduction_meta();

		$user_introduction_meta[ $data['introductionKey'] ] = true;

		update_user_meta( get_current_user_id(), self::INTRODUCTION_KEY, $user_introduction_meta );
	}

	public static function register_as_beta_tester( array $data ) {
		update_user_meta( get_current_user_id(), self::BETA_TESTER_META_KEY, true );
		$response = wp_safe_remote_post(
			self::BETA_TESTER_API_URL,
			[
				'timeout' => 25,
				'body' => [
					'api_version' => ELEMENTOR_VERSION,
					'site_lang' => get_bloginfo( 'language' ),
					'beta_tester_email' => $data['betaTesterEmail'],
				],
			]
		);

		$response_code = (int) wp_remote_retrieve_response_code( $response );

		if ( 200 === $response_code ) {
			self::set_introduction_viewed( [
				'introductionKey' => Beta_Testers::BETA_TESTER_SIGNUP,
			] );
		}
	}

	/**
	 * @param string $key
	 *
	 * @return array|mixed|string
	 * @since  2.1.0
	 * @access public
	 * @static
	 */
	public static function get_introduction_meta( $key = '' ) {
		$user_introduction_meta = get_user_meta( get_current_user_id(), self::INTRODUCTION_KEY, true );

		if ( ! $user_introduction_meta ) {
			$user_introduction_meta = [];
		}

		if ( $key ) {
			return empty( $user_introduction_meta[ $key ] ) ? '' : $user_introduction_meta[ $key ];
		}

		return $user_introduction_meta;
	}
}
includes/interfaces/group-control.php000064400000000631151327220420014016 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Group control interface.
 *
 * An interface for Elementor group control.
 *
 * @since 1.0.0
 */
interface Group_Control_Interface {

	/**
	 * Get group control type.
	 *
	 * Retrieve the group control type.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 */
	public static function get_type();
}
includes/rollback.php000064400000007212151327220420010654 0ustar00<?php
namespace Elementor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor rollback.
 *
 * Elementor rollback handler class is responsible for rolling back Elementor to
 * previous version.
 *
 * @since 1.5.0
 */
class Rollback {

	/**
	 * Package URL.
	 *
	 * Holds the package URL.
	 *
	 * @since 1.5.0
	 * @access protected
	 *
	 * @var string Package URL.
	 */
	protected $package_url;

	/**
	 * Version.
	 *
	 * Holds the version.
	 *
	 * @since 1.5.0
	 * @access protected
	 *
	 * @var string Package URL.
	 */
	protected $version;

	/**
	 * Plugin name.
	 *
	 * Holds the plugin name.
	 *
	 * @since 1.5.0
	 * @access protected
	 *
	 * @var string Plugin name.
	 */
	protected $plugin_name;

	/**
	 * Plugin slug.
	 *
	 * Holds the plugin slug.
	 *
	 * @since 1.5.0
	 * @access protected
	 *
	 * @var string Plugin slug.
	 */
	protected $plugin_slug;

	/**
	 * Rollback constructor.
	 *
	 * Initializing Elementor rollback.
	 *
	 * @since 1.5.0
	 * @access public
	 *
	 * @param array $args Optional. Rollback arguments. Default is an empty array.
	 */
	public function __construct( $args = [] ) {
		foreach ( $args as $key => $value ) {
			$this->{$key} = $value;
		}
	}

	/**
	 * Print inline style.
	 *
	 * Add an inline CSS to the rollback page.
	 *
	 * @since 1.5.0
	 * @access private
	 */
	private function print_inline_style() {
		?>
		<style>
			.wrap {
				overflow: hidden;
				max-width: 850px;
				margin: auto;
				font-family: Courier, monospace;
			}

			h1 {
				background: #D30C5C;
				text-align: center;
				color: #fff !important;
				padding: 70px !important;
				text-transform: uppercase;
				letter-spacing: 1px;
			}

			h1 img {
				max-width: 300px;
				display: block;
				margin: auto auto 50px;
			}
		</style>
		<?php
	}

	/**
	 * Apply package.
	 *
	 * Change the plugin data when WordPress checks for updates. This method
	 * modifies package data to update the plugin from a specific URL containing
	 * the version package.
	 *
	 * @since 1.5.0
	 * @access protected
	 */
	protected function apply_package() {
		$update_plugins = get_site_transient( 'update_plugins' );
		if ( ! is_object( $update_plugins ) ) {
			$update_plugins = new \stdClass();
		}

		$plugin_info = new \stdClass();
		$plugin_info->new_version = $this->version;
		$plugin_info->slug = $this->plugin_slug;
		$plugin_info->package = $this->package_url;
		$plugin_info->url = 'https://elementor.com/';

		$update_plugins->response[ $this->plugin_name ] = $plugin_info;

		// Remove handle beta testers.
		remove_filter( 'pre_set_site_transient_update_plugins', [ Plugin::instance()->beta_testers, 'check_version' ] );

		set_site_transient( 'update_plugins', $update_plugins );
	}

	/**
	 * Upgrade.
	 *
	 * Run WordPress upgrade to rollback Elementor to previous version.
	 *
	 * @since 1.5.0
	 * @access protected
	 */
	protected function upgrade() {
		require_once( ABSPATH . 'wp-admin/includes/class-wp-upgrader.php' );

		$logo_url = ELEMENTOR_ASSETS_URL . 'images/logo-panel.svg';

		$upgrader_args = [
			'url' => 'update.php?action=upgrade-plugin&plugin=' . rawurlencode( $this->plugin_name ),
			'plugin' => $this->plugin_name,
			'nonce' => 'upgrade-plugin_' . $this->plugin_name,
			'title' => '<img src="' . $logo_url . '" alt="Elementor">' . esc_html__( 'Rollback to Previous Version', 'elementor' ),
		];

		$this->print_inline_style();

		$upgrader = new \Plugin_Upgrader( new \Plugin_Upgrader_Skin( $upgrader_args ) );
		$upgrader->upgrade( $this->plugin_name );
	}

	/**
	 * Run.
	 *
	 * Rollback Elementor to previous versions.
	 *
	 * @since 1.5.0
	 * @access public
	 */
	public function run() {
		$this->apply_package();
		$this->upgrade();
	}
}
core/base/db-upgrades-manager.php000064400000013620151327220420012724 0ustar00<?php

namespace Elementor\Core\Base;

use Elementor\Core\Admin\Admin_Notices;
use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

abstract class DB_Upgrades_Manager extends Background_Task_Manager {
	protected $current_version = null;
	protected $query_limit = 100;

	abstract public function get_new_version();
	abstract public function get_version_option_name();
	abstract public function get_upgrades_class();
	abstract public function get_updater_label();

	public function get_task_runner_class() {
		return 'Elementor\Core\Upgrade\Updater';
	}

	public function get_query_limit() {
		return $this->query_limit;
	}

	public function set_query_limit( $limit ) {
		$this->query_limit = $limit;
	}

	public function get_current_version() {
		if ( null === $this->current_version ) {
			$this->current_version = get_option( $this->get_version_option_name() );
		}

		return $this->current_version;
	}

	public function should_upgrade() {
		$current_version = $this->get_current_version();

		// It's a new install.
		if ( ! $current_version ) {
			$this->update_db_version();
			return false;
		}

		return version_compare( $this->get_new_version(), $current_version, '>' );
	}

	public function on_runner_start() {
		parent::on_runner_start();

		if ( ! defined( 'IS_ELEMENTOR_UPGRADE' ) ) {
			define( 'IS_ELEMENTOR_UPGRADE', true );
		}
	}

	public function on_runner_complete( $did_tasks = false ) {
		$logger = Plugin::$instance->logger->get_logger();

		$logger->info( 'Elementor data updater process has been completed.', [
			'meta' => [
				'plugin' => $this->get_plugin_label(),
				'from' => $this->current_version,
				'to' => $this->get_new_version(),
			],
		] );

		Plugin::$instance->files_manager->clear_cache();

		$this->update_db_version();

		if ( $did_tasks ) {
			$this->add_flag( 'completed' );
		}
	}

	public function admin_notice_start_upgrade() {
		/**
		 * @var Admin_Notices $admin_notices
		 */
		$admin_notices = Plugin::$instance->admin->get_component( 'admin-notices' );

		$options = [
			'title' => $this->get_updater_label(),
			'description' => esc_html__( 'Your site database needs to be updated to the latest version.', 'elementor' ),
			'type' => 'error',
			'icon' => false,
			'button' => [
				'text' => esc_html__( 'Update Now', 'elementor' ),
				'url' => $this->get_start_action_url(),
				'class' => 'e-button e-button--cta',
			],
		];

		$admin_notices->print_admin_notice( $options );
	}

	public function admin_notice_upgrade_is_running() {
		/**
		 * @var Admin_Notices $admin_notices
		 */
		$admin_notices = Plugin::$instance->admin->get_component( 'admin-notices' );

		$options = [
			'title' => $this->get_updater_label(),
			'description' => esc_html__( 'Database update process is running in the background. Taking a while?', 'elementor' ),
			'type' => 'warning',
			'icon' => false,
			'button' => [
				'text' => esc_html__( 'Click here to run it now', 'elementor' ),
				'url' => $this->get_continue_action_url(),
				'class' => 'e-button e-button--primary',
			],
		];

		$admin_notices->print_admin_notice( $options );
	}

	public function admin_notice_upgrade_is_completed() {
		$this->delete_flag( 'completed' );

		$message = esc_html__( 'The database update process is now complete. Thank you for updating to the latest version!', 'elementor' );

		/**
		 * @var Admin_Notices $admin_notices
		 */
		$admin_notices = Plugin::$instance->admin->get_component( 'admin-notices' );

		$options = [
			'description' => '<b>' . $this->get_updater_label() . '</b> - ' . $message,
			'type' => 'success',
			'icon' => false,
		];

		$admin_notices->print_admin_notice( $options );
	}

	/**
	 * @access protected
	 */
	protected function start_run() {
		$updater = $this->get_task_runner();

		if ( $updater->is_running() ) {
			return;
		}

		$upgrade_callbacks = $this->get_upgrade_callbacks();

		if ( empty( $upgrade_callbacks ) ) {
			$this->on_runner_complete();
			return;
		}

		foreach ( $upgrade_callbacks as $callback ) {
			$updater->push_to_queue( [
				'callback' => $callback,
			] );
		}

		$updater->save()->dispatch();

		Plugin::$instance->logger->get_logger()->info( 'Elementor data updater process has been queued.', [
			'meta' => [
				'plugin' => $this->get_plugin_label(),
				'from' => $this->current_version,
				'to' => $this->get_new_version(),
			],
		] );
	}

	protected function update_db_version() {
		update_option( $this->get_version_option_name(), $this->get_new_version() );
	}

	public function get_upgrade_callbacks() {
		$prefix = '_v_';
		$upgrades_class = $this->get_upgrades_class();
		$upgrades_reflection = new \ReflectionClass( $upgrades_class );

		$callbacks = [];

		foreach ( $upgrades_reflection->getMethods() as $method ) {
			$method_name = $method->getName();

			if ( '_on_each_version' === $method_name ) {
				$callbacks[] = [ $upgrades_class, $method_name ];
				continue;
			}

			if ( false === strpos( $method_name, $prefix ) ) {
				continue;
			}

			if ( ! preg_match_all( "/$prefix(\d+_\d+_\d+)/", $method_name, $matches ) ) {
				continue;
			}

			$method_version = str_replace( '_', '.', $matches[1][0] );

			if ( ! version_compare( $method_version, $this->current_version, '>' ) ) {
				continue;
			}

			$callbacks[] = [ $upgrades_class, $method_name ];
		}

		return $callbacks;
	}

	public function __construct() {
		// If upgrade is completed - show the notice only for admins.
		// Note: in this case `should_upgrade` returns false, because it's already upgraded.
		if ( is_admin() && current_user_can( 'update_plugins' ) && $this->get_flag( 'completed' ) ) {
			add_action( 'admin_notices', [ $this, 'admin_notice_upgrade_is_completed' ] );
		}

		if ( ! $this->should_upgrade() ) {
			return;
		}

		$updater = $this->get_task_runner();

		$this->start_run();

		if ( $updater->is_running() && current_user_can( 'update_plugins' ) ) {
			add_action( 'admin_notices', [ $this, 'admin_notice_upgrade_is_running' ] );
		}

		parent::__construct();
	}
}
core/base/background-task.php000064400000021556151327220420012205 0ustar00<?php
namespace Elementor\Core\Base;

use Elementor\Plugin;
use Elementor\Core\Base\BackgroundProcess\WP_Background_Process;

/**
 * Based on https://github.com/woocommerce/woocommerce/blob/master/includes/abstracts/class-wc-background-process.php
 * & https://github.com/woocommerce/woocommerce/blob/master/includes/class-wc-background-updater.php
 */

defined( 'ABSPATH' ) || exit;

/**
 * WC_Background_Process class.
 */
abstract class Background_Task extends WP_Background_Process {
	protected $current_item;

	/**
	 * Dispatch updater.
	 *
	 * Updater will still run via cron job if this fails for any reason.
	 */
	public function dispatch() {
		$dispatched = parent::dispatch();

		if ( is_wp_error( $dispatched ) ) {
			wp_die( esc_html( $dispatched ) );
		}
	}

	public function query_col( $sql ) {
		global $wpdb;

		// Add Calc.
		$item = $this->get_current_item();
		if ( empty( $item['total'] ) ) {
			$sql = preg_replace( '/^SELECT/', 'SELECT SQL_CALC_FOUND_ROWS', $sql );
		}

		// Add offset & limit.
		$sql = preg_replace( '/;$/', '', $sql );
		$sql .= ' LIMIT %d, %d;';

		$results = $wpdb->get_col( $wpdb->prepare( $sql, $this->get_current_offset(), $this->get_limit() ) ); // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared

		if ( ! empty( $results ) ) {
			$this->set_total();
		}

		return $results;
	}

	public function should_run_again( $updated_rows ) {
		return count( $updated_rows ) === $this->get_limit();
	}

	public function get_current_offset() {
		$limit = $this->get_limit();
		return ( $this->current_item['iterate_num'] - 1 ) * $limit;
	}

	public function get_limit() {
		return $this->manager->get_query_limit();
	}

	public function set_total() {
		global $wpdb;

		if ( empty( $this->current_item['total'] ) ) {
			$total_rows = $wpdb->get_var( 'SELECT FOUND_ROWS();' );
			$total_iterates = ceil( $total_rows / $this->get_limit() );
			$this->current_item['total'] = $total_iterates;
		}
	}

	/**
	 * Complete
	 *
	 * Override if applicable, but ensure that the below actions are
	 * performed, or, call parent::complete().
	 */
	protected function complete() {
		$this->manager->on_runner_complete( true );

		parent::complete();
	}

	public function continue_run() {
		// Used to fire an action added in WP_Background_Process::_construct() that calls WP_Background_Process::handle_cron_healthcheck().
		// This method will make sure the database updates are executed even if cron is disabled. Nothing will happen if the updates are already running.
		do_action( $this->cron_hook_identifier );
	}

	/**
	 * @return mixed
	 */
	public function get_current_item() {
		return $this->current_item;
	}

	/**
	 * Get batch.
	 *
	 * @return \stdClass Return the first batch from the queue.
	 */
	protected function get_batch() {
		$batch = parent::get_batch();
		$batch->data = array_filter( (array) $batch->data );

		return $batch;
	}

	/**
	 * Handle cron healthcheck
	 *
	 * Restart the background process if not already running
	 * and data exists in the queue.
	 */
	public function handle_cron_healthcheck() {
		if ( $this->is_process_running() ) {
			// Background process already running.
			return;
		}

		if ( $this->is_queue_empty() ) {
			// No data to process.
			$this->clear_scheduled_event();
			return;
		}

		$this->handle();
	}

	/**
	 * Schedule fallback event.
	 */
	protected function schedule_event() {
		if ( ! wp_next_scheduled( $this->cron_hook_identifier ) ) {
			wp_schedule_event( time() + 10, $this->cron_interval_identifier, $this->cron_hook_identifier );
		}
	}

	/**
	 * Is the updater running?
	 *
	 * @return boolean
	 */
	public function is_running() {
		return false === $this->is_queue_empty();
	}

	/**
	 * See if the batch limit has been exceeded.
	 *
	 * @return bool
	 */
	protected function batch_limit_exceeded() {
		return $this->time_exceeded() || $this->memory_exceeded();
	}

	/**
	 * Handle.
	 *
	 * Pass each queue item to the task handler, while remaining
	 * within server memory and time limit constraints.
	 */
	protected function handle() {
		$this->manager->on_runner_start();

		$this->lock_process();

		do {
			$batch = $this->get_batch();

			foreach ( $batch->data as $key => $value ) {
				$task = $this->task( $value );

				if ( false !== $task ) {
					$batch->data[ $key ] = $task;
				} else {
					unset( $batch->data[ $key ] );
				}

				if ( $this->batch_limit_exceeded() ) {
					// Batch limits reached.
					break;
				}
			}

			// Update or delete current batch.
			if ( ! empty( $batch->data ) ) {
				$this->update( $batch->key, $batch->data );
			} else {
				$this->delete( $batch->key );
			}
		} while ( ! $this->batch_limit_exceeded() && ! $this->is_queue_empty() );

		$this->unlock_process();

		// Start next batch or complete process.
		if ( ! $this->is_queue_empty() ) {
			$this->dispatch();
		} else {
			$this->complete();
		}
	}

	/**
	 * Use the protected `is_process_running` method as a public method.
	 * @return bool
	 */
	public function is_process_locked() {
		return $this->is_process_running();
	}

	public function handle_immediately( $callbacks ) {
		$this->manager->on_runner_start();

		$this->lock_process();

		foreach ( $callbacks as $callback ) {
			$item = [
				'callback' => $callback,
			];

			do {
				$item = $this->task( $item );
			} while ( $item );
		}

		$this->unlock_process();
	}

	/**
	 * Task
	 *
	 * Override this method to perform any actions required on each
	 * queue item. Return the modified item for further processing
	 * in the next pass through. Or, return false to remove the
	 * item from the queue.
	 *
	 * @param array $item
	 *
	 * @return array|bool
	 */
	protected function task( $item ) {
		$result = false;

		if ( ! isset( $item['iterate_num'] ) ) {
			$item['iterate_num'] = 1;
		}

		$logger = Plugin::$instance->logger->get_logger();
		$callback = $this->format_callback_log( $item );

		if ( is_callable( $item['callback'] ) ) {
			$progress = '';

			if ( 1 < $item['iterate_num'] ) {
				if ( empty( $item['total'] ) ) {
					$progress = sprintf( '(x%s)', $item['iterate_num'] );
				} else {
					$percent = ceil( $item['iterate_num'] / ( $item['total'] / 100 ) );
					$progress = sprintf( '(%s of %s, %s%%)', $item['iterate_num'], $item['total'], $percent );
				}
			}

			$logger->info( sprintf( '%s Start %s', $callback, $progress ) );

			$this->current_item = $item;

			$result = (bool) call_user_func( $item['callback'], $this );

			// get back the updated item.
			$item = $this->current_item;
			$this->current_item = null;

			if ( $result ) {
				if ( empty( $item['total'] ) ) {
					$logger->info( sprintf( '%s callback needs to run again', $callback ) );
				} elseif ( 1 === $item['iterate_num'] ) {
					$logger->info( sprintf( '%s callback needs to run more %d times', $callback, $item['total'] - $item['iterate_num'] ) );
				}

				$item['iterate_num']++;
			} else {
				$logger->info( sprintf( '%s Finished', $callback ) );
			}
		} else {
			$logger->notice( sprintf( 'Could not find %s callback', $callback ) );
		}

		return $result ? $item : false;
	}

	/**
	 * Schedule cron healthcheck.
	 *
	 * @param array $schedules Schedules.
	 * @return array
	 */
	public function schedule_cron_healthcheck( $schedules ) {
		$interval = apply_filters( $this->identifier . '_cron_interval', 5 );

		// Adds every 5 minutes to the existing schedules.
		$schedules[ $this->identifier . '_cron_interval' ] = array(
			'interval' => MINUTE_IN_SECONDS * $interval,
			/* translators: %d: Interval in minutes. */
			'display' => sprintf( esc_html__( 'Every %d minutes', 'elementor' ), $interval ),
		);

		return $schedules;
	}

	/**
	 * See if the batch limit has been exceeded.
	 *
	 * @return bool
	 */
	public function is_memory_exceeded() {
		return $this->memory_exceeded();
	}

	/**
	 * Delete all batches.
	 *
	 * @return self
	 */
	public function delete_all_batches() {
		global $wpdb;

		$table = $wpdb->options;
		$column = 'option_name';

		if ( is_multisite() ) {
			$table = $wpdb->sitemeta;
			$column = 'meta_key';
		}

		$key = $wpdb->esc_like( $this->identifier . '_batch_' ) . '%';

		$wpdb->query( $wpdb->prepare( "DELETE FROM {$table} WHERE {$column} LIKE %s", $key ) ); // @codingStandardsIgnoreLine.

		return $this;
	}

	/**
	 * Kill process.
	 *
	 * Stop processing queue items, clear cronjob and delete all batches.
	 */
	public function kill_process() {
		if ( ! $this->is_queue_empty() ) {
			$this->delete_all_batches();
			wp_clear_scheduled_hook( $this->cron_hook_identifier );
		}
	}

	public function set_current_item( $item ) {
		$this->current_item = $item;
	}

	protected function format_callback_log( $item ) {
		return implode( '::', (array) $item['callback'] );
	}

	/**
	 * @var \Elementor\Core\Base\Background_Task_Manager
	 */
	protected $manager;

	public function __construct( $manager ) {
		$this->manager = $manager;
		// Uses unique prefix per blog so each blog has separate queue.
		$this->prefix = 'elementor_' . get_current_blog_id();
		$this->action = $this->manager->get_action();

		parent::__construct();
	}
}
core/base/base-object.php000064400000013064151327220420011277 0ustar00<?php

namespace Elementor\Core\Base;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

/**
 * Base Object
 *
 * Base class that provides basic settings handling functionality.
 *
 * @since 2.3.0
 */
class Base_Object {

	/**
	 * Settings.
	 *
	 * Holds the object settings.
	 *
	 * @access private
	 *
	 * @var array
	 */
	private $settings;

	/**
	 * Get Settings.
	 *
	 * @since 2.3.0
	 * @access public
	 *
	 * @param string $setting Optional. The key of the requested setting. Default is null.
	 *
	 * @return mixed An array of all settings, or a single value if `$setting` was specified.
	 */
	final public function get_settings( $setting = null ) {
		$this->ensure_settings();

		return self::get_items( $this->settings, $setting );
	}

	/**
	 * Set settings.
	 *
	 * @since 2.3.0
	 * @access public
	 *
	 * @param array|string $key   If key is an array, the settings are overwritten by that array. Otherwise, the
	 *                            settings of the key will be set to the given `$value` param.
	 *
	 * @param mixed        $value Optional. Default is null.
	 */
	final public function set_settings( $key, $value = null ) {
		$this->ensure_settings();

		if ( is_array( $key ) ) {
			$this->settings = $key;
		} else {
			$this->settings[ $key ] = $value;
		}
	}

	/**
	 * Delete setting.
	 *
	 * Deletes the settings array or a specific key of the settings array if `$key` is specified.
	 * @since 2.3.0
	 * @access public
	 *
	 * @param string $key Optional. Default is null.
	 */
	public function delete_setting( $key = null ) {
		if ( $key ) {
			unset( $this->settings[ $key ] );
		} else {
			$this->settings = [];
		}
	}

	final public function merge_properties( array $default_props, array $custom_props, array $allowed_props_keys = [] ) {
		$props = array_replace_recursive( $default_props, $custom_props );

		if ( $allowed_props_keys ) {
			$props = array_intersect_key( $props, array_flip( $allowed_props_keys ) );
		}

		return $props;
	}

	/**
	 * Get items.
	 *
	 * Utility method that receives an array with a needle and returns all the
	 * items that match the needle. If needle is not defined the entire haystack
	 * will be returned.
	 *
	 * @since 2.3.0
	 * @access protected
	 * @static
	 *
	 * @param array  $haystack An array of items.
	 * @param string $needle   Optional. Needle. Default is null.
	 *
	 * @return mixed The whole haystack or the needle from the haystack when requested.
	 */
	final protected static function get_items( array $haystack, $needle = null ) {
		if ( $needle ) {
			return isset( $haystack[ $needle ] ) ? $haystack[ $needle ] : null;
		}

		return $haystack;
	}

	/**
	 * Get init settings.
	 *
	 * Used to define the default/initial settings of the object. Inheriting classes may implement this method to define
	 * their own default/initial settings.
	 *
	 * @since 2.3.0
	 * @access protected
	 *
	 * @return array
	 */
	protected function get_init_settings() {
		return [];
	}

	/**
	 * Ensure settings.
	 *
	 * Ensures that the `$settings` member is initialized
	 *
	 * @since 2.3.0
	 * @access private
	 */
	private function ensure_settings() {
		if ( null === $this->settings ) {
			$this->settings = $this->get_init_settings();
		}
	}

	/**
	 * Has Own Method
	 *
	 * Used for check whether the method passed as a parameter was declared in the current instance or inherited.
	 * If a base_class_name is passed, it checks whether the method was declared in that class. If the method's
	 * declaring class is the class passed as $base_class_name, it returns false. Otherwise (method was NOT declared
	 * in $base_class_name), it returns true.
	 *
	 * Example #1 - only $method_name is passed:
	 * The initial declaration of `register_controls()` happens in the `Controls_Stack` class. However, all
	 * widgets which have their own controls declare this function as well, overriding the original
	 * declaration. If `has_own_method()` would be called by a Widget's class which implements `register_controls()`,
	 * with 'register_controls' passed as the first parameter - `has_own_method()` will return true. If the Widget
	 * does not declare `register_controls()`, `has_own_method()` will return false.
	 *
	 * Example #2 - both $method_name and $base_class_name are passed
	 * In this example, the widget class inherits from a base class `Widget_Base`, and the base implements
	 * `register_controls()` to add certain controls to all widgets inheriting from it. `has_own_method()` is called by
	 * the widget, with the string 'register_controls' passed as the first parameter, and 'Elementor\Widget_Base' (its full name
	 * including the namespace) passed as the second parameter. If the widget class implements `register_controls()`,
	 * `has_own_method` will return true. If the widget class DOESN'T implement `register_controls()`, it will return
	 * false (because `Widget_Base` is the declaring class for `register_controls()`, and not the class that called
	 * `has_own_method()`).
	 *
	 * @since 3.1.0
	 *
	 * @param string $method_name
	 * @param string $base_class_name
	 *
	 * @return bool True if the method was declared by the current instance, False if it was inherited.
	 */
	public function has_own_method( $method_name, $base_class_name = null ) {
		try {
			$reflection_method = new \ReflectionMethod( $this, $method_name );

			// If a ReflectionMethod is successfully created, get its declaring class.
			$declaring_class = $reflection_method->getDeclaringClass();
		} catch ( \Exception $e ) {
			return false;
		}

		if ( $base_class_name ) {
			return $base_class_name !== $declaring_class->name;
		}

		return get_called_class() === $declaring_class->name;
	}
}
core/base/background-task-manager.php000064400000004744151327220420013615 0ustar00<?php

namespace Elementor\Core\Base;

use Elementor\Core\Base\Module as BaseModule;
use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

abstract class Background_Task_Manager extends BaseModule {
	/**
	 * @var Background_Task
	 */
	protected $task_runner;

	abstract public function get_action();
	abstract public function get_plugin_name();
	abstract public function get_plugin_label();
	abstract public function get_task_runner_class();
	abstract public function get_query_limit();

	abstract protected function start_run();

	public function on_runner_start() {
		$logger = Plugin::$instance->logger->get_logger();
		$logger->info( $this->get_plugin_name() . '::' . $this->get_action() . ' Started' );
	}

	public function on_runner_complete( $did_tasks = false ) {
		$logger = Plugin::$instance->logger->get_logger();
		$logger->info( $this->get_plugin_name() . '::' . $this->get_action() . ' Completed' );
	}

	public function get_task_runner() {
		if ( empty( $this->task_runner ) ) {
			$class_name = $this->get_task_runner_class();
			$this->task_runner = new $class_name( $this );
		}

		return $this->task_runner;
	}

	// TODO: Replace with a db settings system.
	protected function add_flag( $flag ) {
		add_option( $this->get_plugin_name() . '_' . $this->get_action() . '_' . $flag, 1 );
	}

	protected function get_flag( $flag ) {
		return get_option( $this->get_plugin_name() . '_' . $this->get_action() . '_' . $flag );
	}

	protected function delete_flag( $flag ) {
		delete_option( $this->get_plugin_name() . '_' . $this->get_action() . '_' . $flag );
	}

	protected function get_start_action_url() {
		return wp_nonce_url( add_query_arg( $this->get_action(), 'run' ), $this->get_action() . 'run' );
	}

	protected function get_continue_action_url() {
		return wp_nonce_url( add_query_arg( $this->get_action(), 'continue' ), $this->get_action() . 'continue' );
	}

	private function continue_run() {
		$runner = $this->get_task_runner();
		$runner->continue_run();
	}

	public function __construct() {
		if ( empty( $_GET[ $this->get_action() ] ) ) {
			return;
		}

		Plugin::$instance->init_common();

		if ( 'run' === $_GET[ $this->get_action() ] && check_admin_referer( $this->get_action() . 'run' ) ) {
			$this->start_run();
		}

		if ( 'continue' === $_GET[ $this->get_action() ] && check_admin_referer( $this->get_action() . 'continue' ) ) {
			$this->continue_run();
		}

		wp_safe_redirect( remove_query_arg( [ $this->get_action(), '_wpnonce' ] ) );
		die;
	}
}
core/base/app.php000064400000002344151327220420007700 0ustar00<?php

namespace Elementor\Core\Base;

use Elementor\Utils;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

/**
 * Base App
 *
 * Base app utility class that provides shared functionality of apps.
 *
 * @since 2.3.0
 */
abstract class App extends Module {

	/**
	 * Print config.
	 *
	 * Used to print the app and its components settings as a JavaScript object.
	 *
	 * @param string $handle Optional
	 *
	 * @since 2.3.0
	 * @since 2.6.0 added the `$handle` parameter
	 * @access protected
	 */
	final protected function print_config( $handle = null ) {
		$name = $this->get_name();

		$js_var = 'elementor' . str_replace( ' ', '', ucwords( str_replace( '-', ' ', $name ) ) ) . 'Config';

		$config = $this->get_settings() + $this->get_components_config();

		if ( ! $handle ) {
			$handle = 'elementor-' . $name;
		}

		Utils::print_js_config( $handle, $js_var, $config );
	}

	/**
	 * Get components config.
	 *
	 * Retrieves the app components settings.
	 *
	 * @since 2.3.0
	 * @access private
	 *
	 * @return array
	 */
	private function get_components_config() {
		$settings = [];

		foreach ( $this->get_components() as $id => $instance ) {
			$settings[ $id ] = $instance->get_settings();
		}

		return $settings;
	}
}
core/base/document.php000064400000117316151327220420010744 0ustar00<?php
namespace Elementor\Core\Base;

use Elementor\Core\Base\Elements_Iteration_Actions\Assets as Assets_Iteration_Action;
use Elementor\Core\Base\Elements_Iteration_Actions\Base as Elements_Iteration_Action;
use Elementor\Core\Files\CSS\Post as Post_CSS;
use Elementor\Core\Settings\Page\Model as Page_Model;
use Elementor\Core\Utils\Exceptions;
use Elementor\Plugin;
use Elementor\Controls_Manager;
use Elementor\Controls_Stack;
use Elementor\TemplateLibrary\Source_Local;
use Elementor\User;
use Elementor\Core\Settings\Manager as SettingsManager;
use Elementor\Utils;
use Elementor\Widget_Base;
use Elementor\Core\Settings\Page\Manager as PageManager;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

/**
 * Elementor document.
 *
 * An abstract class that provides the needed properties and methods to
 * manage and handle documents in inheriting classes.
 *
 * @since 2.0.0
 * @abstract
 */
abstract class Document extends Controls_Stack {

	/**
	 * Document type meta key.
	 */
	const TYPE_META_KEY = '_elementor_template_type';
	const PAGE_META_KEY = '_elementor_page_settings';

	const BUILT_WITH_ELEMENTOR_META_KEY = '_elementor_edit_mode';

	/**
	 * Document publish status.
	 */
	const STATUS_PUBLISH = 'publish';

	/**
	 * Document draft status.
	 */
	const STATUS_DRAFT = 'draft';

	/**
	 * Document private status.
	 */
	const STATUS_PRIVATE = 'private';

	/**
	 * Document autosave status.
	 */
	const STATUS_AUTOSAVE = 'autosave';

	/**
	 * Document pending status.
	 */
	const STATUS_PENDING = 'pending';


	private $main_id;

	/**
	 * @var bool
	 */
	private $is_saving = false;

	private static $properties = [];

	/**
	 * @var Elements_Iteration_Action[]
	 */
	private $elements_iteration_actions = [];

	/**
	 * Document post data.
	 *
	 * Holds the document post data.
	 *
	 * @since 2.0.0
	 * @access protected
	 *
	 * @var \WP_Post WordPress post data.
	 */
	protected $post;

	/**
	 * @since 2.1.0
	 * @access protected
	 * @static
	 */
	protected static function get_editor_panel_categories() {
		return Plugin::$instance->elements_manager->get_categories();
	}

	/**
	 * Get properties.
	 *
	 * Retrieve the document properties.
	 *
	 * @since 2.0.0
	 * @access public
	 * @static
	 *
	 * @return array Document properties.
	 */
	public static function get_properties() {
		return [
			'has_elements' => true,
			'is_editable' => true,
			'edit_capability' => '',
			'show_in_finder' => true,
			'show_on_admin_bar' => true,
			'support_kit' => false,
		];
	}

	/**
	 * @since 2.1.0
	 * @access public
	 * @static
	 */
	public static function get_editor_panel_config() {
		$default_route = 'panel/elements/categories';

		if ( ! Plugin::instance()->role_manager->user_can( 'design' ) ) {
			$default_route = 'panel/page-settings/settings';
		}

		return [
			'title' => static::get_title(), // JS Container title.
			'widgets_settings' => [],
			'elements_categories' => static::get_editor_panel_categories(),
			'default_route' => $default_route,
			'has_elements' => static::get_property( 'has_elements' ),
			'support_kit' => static::get_property( 'support_kit' ),
			'messages' => [
				/* translators: %s: Document title. */
				'publish_notification' => sprintf( esc_html__( 'Hurray! Your %s is live.', 'elementor' ), static::get_title() ),
			],
		];
	}

	/**
	 * Get element title.
	 *
	 * Retrieve the element title.
	 *
	 * @since 2.0.0
	 * @access public
	 * @static
	 *
	 * @return string Element title.
	 */
	public static function get_title() {
		return esc_html__( 'Document', 'elementor' );
	}

	public static function get_plural_title() {
		return static::get_title();
	}

	/**
	 * Get property.
	 *
	 * Retrieve the document property.
	 *
	 * @since 2.0.0
	 * @access public
	 * @static
	 *
	 * @param string $key The property key.
	 *
	 * @return mixed The property value.
	 */
	public static function get_property( $key ) {
		$id = static::get_class_full_name();

		if ( ! isset( self::$properties[ $id ] ) ) {
			self::$properties[ $id ] = static::get_properties();
		}

		return self::get_items( self::$properties[ $id ], $key );
	}

	/**
	 * @since 2.0.0
	 * @access public
	 * @static
	 */
	public static function get_class_full_name() {
		return get_called_class();
	}

	public static function get_create_url() {
		$base_create_url = Plugin::$instance->documents->get_create_new_post_url( Source_Local::CPT );

		return add_query_arg( [ 'template_type' => static::get_type() ], $base_create_url );
	}

	public function get_name() {
		return static::get_type();
	}

	/**
	 * @since 2.0.0
	 * @access public
	 */
	public function get_unique_name() {
		return static::get_type() . '-' . $this->post->ID;
	}

	/**
	 * @since 2.3.0
	 * @access public
	 */
	public function get_post_type_title() {
		$post_type_object = get_post_type_object( $this->post->post_type );

		return $post_type_object->labels->singular_name;
	}

	/**
	 * @since 2.0.0
	 * @access public
	 */
	public function get_main_id() {
		if ( ! $this->main_id ) {
			$post_id = $this->post->ID;

			$parent_post_id = wp_is_post_revision( $post_id );

			if ( $parent_post_id ) {
				$post_id = $parent_post_id;
			}

			$this->main_id = $post_id;
		}

		return $this->main_id;
	}

	/**
	 * @since 2.0.0
	 * @access public
	 *
	 * @param $data
	 *
	 * @throws \Exception If the widget was not found.
	 *
	 * @return string
	 */
	public function render_element( $data ) {
		// Start buffering
		ob_start();

		/** @var Widget_Base $widget */
		$widget = Plugin::$instance->elements_manager->create_element_instance( $data );

		if ( ! $widget ) {
			throw new \Exception( 'Widget not found.' );
		}

		$widget->render_content();

		$render_html = ob_get_clean();

		return $render_html;
	}

	/**
	 * @since 2.0.0
	 * @access public
	 */
	public function get_main_post() {
		return get_post( $this->get_main_id() );
	}

	public function get_container_attributes() {
		$id = $this->get_main_id();

		$attributes = [
			'data-elementor-type' => $this->get_name(),
			'data-elementor-id' => $id,
			'class' => 'elementor elementor-' . $id,
		];

		$version_meta = $this->get_main_meta( '_elementor_version' );

		if ( version_compare( $version_meta, '2.5.0', '<' ) ) {
			$attributes['class'] .= ' elementor-bc-flex-widget';
		}

		if ( Plugin::$instance->preview->is_preview() ) {
			$attributes['data-elementor-title'] = static::get_title();
		} else {
			$attributes['data-elementor-settings'] = wp_json_encode( $this->get_frontend_settings() );
		}

		return $attributes;
	}

	/**
	 * @since 2.0.0
	 * @access public
	 */
	public function get_wp_preview_url() {
		$main_post_id = $this->get_main_id();
		$document = $this;

		// Ajax request from editor.
		// PHPCS - only reading the value from $_POST['initial_document_id'].
		if ( ! empty( $_POST['initial_document_id'] ) ) { // phpcs:ignore WordPress.Security.NonceVerification.Missing
			// PHPCS - only reading the value from $_POST['initial_document_id'].
			$document = Plugin::$instance->documents->get( $_POST['initial_document_id'] ); // phpcs:ignore WordPress.Security.NonceVerification.Missing
		}

		$url = get_preview_post_link(
			$document->get_main_id(),
			[
				'preview_id' => $main_post_id,
				'preview_nonce' => wp_create_nonce( 'post_preview_' . $main_post_id ),
			]
		);

		/**
		 * Document "WordPress preview" URL.
		 *
		 * Filters the WordPress preview URL.
		 *
		 * @since 2.0.0
		 *
		 * @param string   $url  WordPress preview URL.
		 * @param Document $this The document instance.
		 */
		$url = apply_filters( 'elementor/document/urls/wp_preview', $url, $this );

		return $url;
	}

	/**
	 * @since 2.0.0
	 * @access public
	 */
	public function get_exit_to_dashboard_url() {
		$url = get_edit_post_link( $this->get_main_id(), 'raw' );

		/**
		 * Document "exit to dashboard" URL.
		 *
		 * Filters the "Exit To Dashboard" URL.
		 *
		 * @since 2.0.0
		 *
		 * @param string   $url  The exit URL
		 * @param Document $this The document instance.
		 */
		$url = apply_filters( 'elementor/document/urls/exit_to_dashboard', $url, $this );

		return $url;
	}

	/**
	 * Get auto-saved post revision.
	 *
	 * Retrieve the auto-saved post revision that is newer than current post.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 *
	 * @return bool|Document
	 */

	public function get_newer_autosave() {
		$autosave = $this->get_autosave();

		// Detect if there exists an autosave newer than the post.
		if ( $autosave && mysql2date( 'U', $autosave->get_post()->post_modified_gmt, false ) > mysql2date( 'U', $this->post->post_modified_gmt, false ) ) {
			return $autosave;
		}

		return false;
	}

	/**
	 * @since 2.0.0
	 * @access public
	 */
	public function is_autosave() {
		return wp_is_post_autosave( $this->post->ID );
	}

	/**
	 * Check if the current document is a 'revision'
	 *
	 * @return bool
	 */
	public function is_revision() {
		return 'revision' === $this->post->post_type;
	}

	/**
	 * Checks if the current document status is 'trash'.
	 *
	 * @return bool
	 */
	public function is_trash() {
		return 'trash' === $this->post->post_status;
	}

	/**
	 * @since 2.0.0
	 * @access public
	 *
	 * @param int  $user_id
	 * @param bool $create
	 *
	 * @return bool|Document
	 */
	public function get_autosave( $user_id = 0, $create = false ) {
		if ( ! $user_id ) {
			$user_id = get_current_user_id();
		}

		$autosave_id = $this->get_autosave_id( $user_id );

		if ( $autosave_id ) {
			$document = Plugin::$instance->documents->get( $autosave_id );
		} elseif ( $create ) {
			$autosave_id = wp_create_post_autosave( [
				'post_ID' => $this->post->ID,
				'post_type' => $this->post->post_type,
				'post_title' => $this->post->post_title,
				'post_excerpt' => $this->post->post_excerpt,
				// Hack to cause $autosave_is_different=true in `wp_create_post_autosave`.
				'post_content' => '<!-- Created With Elementor -->',
				'post_modified' => current_time( 'mysql' ),
			] );

			Plugin::$instance->db->copy_elementor_meta( $this->post->ID, $autosave_id );

			$document = Plugin::$instance->documents->get( $autosave_id );
			$document->save_template_type();
		} else {
			$document = false;
		}

		return $document;
	}

	/**
	 * Add/Remove edit link in dashboard.
	 *
	 * Add or remove an edit link to the post/page action links on the post/pages list table.
	 *
	 * Fired by `post_row_actions` and `page_row_actions` filters.
	 *
	 * @access public
	 *
	 * @param array    $actions An array of row action links.
	 *
	 * @return array An updated array of row action links.
	 */
	public function filter_admin_row_actions( $actions ) {
		if ( $this->is_built_with_elementor() && $this->is_editable_by_current_user() ) {
			$actions['edit_with_elementor'] = sprintf(
				'<a href="%1$s">%2$s</a>',
				$this->get_edit_url(),
				__( 'Edit with Elementor', 'elementor' )
			);
		}

		return $actions;
	}

	/**
	 * @since 2.0.0
	 * @access public
	 */
	public function is_editable_by_current_user() {
		$edit_capability = static::get_property( 'edit_capability' );
		if ( $edit_capability && ! current_user_can( $edit_capability ) ) {
			return false;
		}

		return self::get_property( 'is_editable' ) && User::is_current_user_can_edit( $this->get_main_id() );
	}

	/**
	 * @since 2.9.0
	 * @access protected
	 */
	protected function get_initial_config() {
		// Get document data *after* the scripts hook - so plugins can run compatibility before get data, but *before* enqueue the editor script - so elements can enqueue their own scripts that depended in editor script.

		$locked_user = Plugin::$instance->editor->get_locked_user( $this->get_main_id() );

		if ( $locked_user ) {
			$locked_user = $locked_user->display_name;
		}

		$post_type_object = get_post_type_object( $this->get_main_post()->post_type );

		$settings = SettingsManager::get_settings_managers_config();

		$config = [
			'id' => $this->get_main_id(),
			'type' => $this->get_name(),
			'version' => $this->get_main_meta( '_elementor_version' ),
			'settings' => $settings['page'],
			'remoteLibrary' => $this->get_remote_library_config(),
			'last_edited' => $this->get_last_edited(),
			'panel' => static::get_editor_panel_config(),
			'container' => 'body',
			'post_type_title' => $this->get_post_type_title(),
			'user' => [
				'can_publish' => current_user_can( $post_type_object->cap->publish_posts ),

				// Deprecated config since 2.9.0.
				'locked' => $locked_user,
			],
			'urls' => [
				'exit_to_dashboard' => $this->get_exit_to_dashboard_url(),
				'preview' => $this->get_preview_url(),
				'wp_preview' => $this->get_wp_preview_url(),
				'permalink' => $this->get_permalink(),
				'have_a_look' => $this->get_have_a_look_url(),
			],
		];

		if ( static::get_property( 'has_elements' ) ) {
			$config['elements'] = $this->get_elements_raw_data( null, true );
			$config['widgets'] = Plugin::$instance->widgets_manager->get_widget_types_config();
		}

		$additional_config = [];

		/**
		 * Additional document configuration.
		 *
		 * Filters the document configuration by adding additional configuration.
		 * External developers can use this hook to add custom configuration in
		 * addition to Elementor's initial configuration.
		 *
		 * Use the $post_id to add custom configuration for different pages.
		 *
		 * @param array $additional_config The additional document configuration.
		 * @param int   $post_id           The post ID of the document.
		 */
		$additional_config = apply_filters( 'elementor/document/config', $additional_config, $this->get_main_id() );

		if ( ! empty( $additional_config ) ) {
			$config = array_replace_recursive( $config, $additional_config );
		}

		return $config;
	}

	/**
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		$this->register_document_controls();

		/**
		 * Register document controls.
		 *
		 * Fires after Elementor registers the document controls.
		 *
		 * External developers can use this hook to add new controls to the document.
		 *
		 * @since 2.0.0
		 *
		 * @param Document $this The document instance.
		 */
		do_action( 'elementor/documents/register_controls', $this );
	}

	/**
	 * @since 2.0.0
	 * @access public
	 *
	 * @param $data
	 *
	 * @return bool
	 */
	public function save( $data ) {
		/**
		 * Document save data.
		 *
		 * Filter the document data before saving process starts.
		 *
		 * External developers can use this hook to change the data before
		 * saving it to the database.
		 *
		 * @since 3.3.0
		 *
		 * @param array                         $data The document data.
		 * @param \Elementor\Core\Base\Document $this The document instance.
		 */
		$data = apply_filters( 'elementor/document/save/data', $data, $this );

		$this->add_handle_revisions_changed_filter();

		if ( ! $this->is_editable_by_current_user() ) {
			return false;
		}

		$this->set_is_saving( true );

		/**
		 * Before document save.
		 *
		 * Fires when document save starts on Elementor.
		 *
		 * @since 2.5.12
		 *
		 * @param \Elementor\Core\Base\Document $this The current document.
		 * @param $data.
		 */
		do_action( 'elementor/document/before_save', $this, $data );

		if ( ! current_user_can( 'unfiltered_html' ) ) {
			$data = wp_kses_post_deep( $data );
		}

		if ( ! empty( $data['settings'] ) ) {
			if ( isset( $data['settings']['post_status'] ) && self::STATUS_AUTOSAVE === $data['settings']['post_status'] ) {
				if ( ! defined( 'DOING_AUTOSAVE' ) ) {
					define( 'DOING_AUTOSAVE', true );
				}
			}

			$this->save_settings( $data['settings'] );

			$this->refresh_post();
		}

		// Don't check is_empty, because an empty array should be saved.
		if ( isset( $data['elements'] ) && is_array( $data['elements'] ) ) {
			$this->save_elements( $data['elements'] );
		}

		$this->save_template_type();

		$this->save_version();

		// Remove Post CSS
		$post_css = Post_CSS::create( $this->post->ID );

		$post_css->delete();

		/**
		 * After document save.
		 *
		 * Fires when document save is complete.
		 *
		 * @since 2.5.12
		 *
		 * @param \Elementor\Core\Base\Document $this The current document.
		 * @param $data.
		 */
		do_action( 'elementor/document/after_save', $this, $data );

		$this->set_is_saving( false );

		$this->remove_handle_revisions_changed_filter();

		return true;
	}

	public function refresh_post() {
		$this->post = get_post( $this->post->ID );
	}

	/**
	 * @param array $new_settings
	 *
	 * @return static
	 */
	public function update_settings( array $new_settings ) {
		$document_settings = $this->get_meta( PageManager::META_KEY );

		if ( ! $document_settings ) {
			$document_settings = [];
		}

		$this->save_settings(
			array_replace_recursive( $document_settings, $new_settings )
		);

		return $this;
	}

	/**
	 * Is built with Elementor.
	 *
	 * Check whether the post was built with Elementor.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @return bool Whether the post was built with Elementor.
	 */
	public function is_built_with_elementor() {
		return ! ! $this->get_meta( self::BUILT_WITH_ELEMENTOR_META_KEY );
	}

	/**
	 * Mark the post as "built with elementor" or not.
	 *
	 * @param bool $is_built_with_elementor
	 *
	 * @return $this
	 */
	public function set_is_built_with_elementor( $is_built_with_elementor ) {
		if ( $is_built_with_elementor ) {
			// Use the string `builder` and not a boolean for rollback compatibility
			$this->update_meta( self::BUILT_WITH_ELEMENTOR_META_KEY, 'builder' );
		} else {
			$this->delete_meta( self::BUILT_WITH_ELEMENTOR_META_KEY );
		}

		return $this;
	}

	/**
	 * @since 2.0.0
	 * @access public
	 * @static
	 *
	 * @return mixed
	 */
	public function get_edit_url() {
		$url = add_query_arg(
			[
				'post' => $this->get_main_id(),
				'action' => 'elementor',
			],
			admin_url( 'post.php' )
		);

		/**
		 * Document edit url.
		 *
		 * Filters the document edit url.
		 *
		 * @since 2.0.0
		 *
		 * @param string   $url  The edit url.
		 * @param Document $this The document instance.
		 */
		$url = apply_filters( 'elementor/document/urls/edit', $url, $this );

		return $url;
	}

	/**
	 * @since 2.0.0
	 * @access public
	 */
	public function get_preview_url() {
		/**
		 * Use a static var - to avoid change the `ver` parameter on every call.
		 */
		static $url;

		if ( empty( $url ) ) {

			add_filter( 'pre_option_permalink_structure', '__return_empty_string' );

			$url = set_url_scheme( add_query_arg( [
				'elementor-preview' => $this->get_main_id(),
				'ver' => time(),
			], $this->get_permalink() ) );

			remove_filter( 'pre_option_permalink_structure', '__return_empty_string' );

			/**
			 * Document preview URL.
			 *
			 * Filters the document preview URL.
			 *
			 * @since 2.0.0
			 *
			 * @param string   $url  The preview URL.
			 * @param Document $this The document instance.
			 */
			$url = apply_filters( 'elementor/document/urls/preview', $url, $this );
		}

		return $url;
	}

	/**
	 * @since 2.0.0
	 * @access public
	 *
	 * @param string $key
	 *
	 * @return array
	 */
	public function get_json_meta( $key ) {
		$meta = get_post_meta( $this->post->ID, $key, true );

		if ( is_string( $meta ) && ! empty( $meta ) ) {
			$meta = json_decode( $meta, true );
		}

		if ( empty( $meta ) ) {
			$meta = [];
		}

		return $meta;
	}

	/**
	 * @since 2.0.0
	 * @access public
	 *
	 * @param null $data
	 * @param bool $with_html_content
	 *
	 * @return array
	 */
	public function get_elements_raw_data( $data = null, $with_html_content = false ) {
		if ( ! static::get_property( 'has_elements' ) ) {
			return [];
		}

		if ( is_null( $data ) ) {
			$data = $this->get_elements_data();
		}

		// Change the current documents, so widgets can use `documents->get_current` and other post data
		Plugin::$instance->documents->switch_to_document( $this );

		$editor_data = [];

		foreach ( $data as $element_data ) {
			if ( ! is_array( $element_data ) ) {
				throw new \Exception( 'Invalid data: ' . wp_json_encode( [
					'data' => $data,
					'element' => $element_data,
				] ) );
			}

			$element = Plugin::$instance->elements_manager->create_element_instance( $element_data );

			if ( ! $element ) {
				continue;
			}

			$editor_data[] = $element->get_raw_data( $with_html_content );
		} // End foreach().

		Plugin::$instance->documents->restore_document();

		return $editor_data;
	}

	/**
	 * @since 2.0.0
	 * @access public
	 *
	 * @param string $status
	 *
	 * @return array
	 */
	public function get_elements_data( $status = self::STATUS_PUBLISH ) {
		$elements = $this->get_json_meta( '_elementor_data' );

		if ( self::STATUS_DRAFT === $status ) {
			$autosave = $this->get_newer_autosave();

			if ( is_object( $autosave ) ) {
				$autosave_elements = Plugin::$instance->documents
					->get( $autosave->get_post()->ID )
					->get_json_meta( '_elementor_data' );
			}
		}

		if ( Plugin::$instance->editor->is_edit_mode() ) {
			if ( empty( $elements ) && empty( $autosave_elements ) ) {
				// Convert to Elementor.
				$elements = $this->convert_to_elementor();
				if ( $this->is_autosave() ) {
					Plugin::$instance->db->copy_elementor_meta( $this->post->post_parent, $this->post->ID );
				}
			}
		}

		if ( ! empty( $autosave_elements ) ) {
			$elements = $autosave_elements;
		}

		return $elements;
	}

	/**
	 * Get document setting from DB.
	 *
	 * @return array
	 */
	public function get_db_document_settings() {
		return $this->get_meta( static::PAGE_META_KEY );
	}

	/**
	 * @since 2.3.0
	 * @access public
	 */
	public function convert_to_elementor() {
		$this->save( [] );

		if ( empty( $this->post->post_content ) ) {
			return [];
		}

		// Check if it's only a shortcode.
		preg_match_all( '/' . get_shortcode_regex() . '/', $this->post->post_content, $matches, PREG_SET_ORDER );
		if ( ! empty( $matches ) ) {
			foreach ( $matches as $shortcode ) {
				if ( trim( $this->post->post_content ) === $shortcode[0] ) {
					$widget_type = Plugin::$instance->widgets_manager->get_widget_types( 'shortcode' );
					$settings = [
						'shortcode' => $this->post->post_content,
					];
					break;
				}
			}
		}

		if ( empty( $widget_type ) ) {
			$widget_type = Plugin::$instance->widgets_manager->get_widget_types( 'text-editor' );
			$settings = [
				'editor' => $this->post->post_content,
			];
		}

		// TODO: Better coding to start template for editor
		return [
			[
				'id' => Utils::generate_random_string(),
				'elType' => 'section',
				'elements' => [
					[
						'id' => Utils::generate_random_string(),
						'elType' => 'column',
						'elements' => [
							[
								'id' => Utils::generate_random_string(),
								'elType' => $widget_type::get_type(),
								'widgetType' => $widget_type->get_name(),
								'settings' => $settings,
							],
						],
					],
				],
			],
		];
	}

	/**
	 * @since 2.1.3
	 * @access public
	 */
	public function print_elements_with_wrapper( $elements_data = null ) {
		if ( ! $elements_data ) {
			$elements_data = $this->get_elements_data();
		}

		$is_dom_optimization_active = Plugin::$instance->experiments->is_feature_active( 'e_dom_optimization' );
		?>
		<div <?php Utils::print_html_attributes( $this->get_container_attributes() ); ?>>
			<?php if ( ! $is_dom_optimization_active ) { ?>
			<div class="elementor-inner">
			<?php } ?>
				<div class="elementor-section-wrap">
					<?php $this->print_elements( $elements_data ); ?>
				</div>
			<?php if ( ! $is_dom_optimization_active ) { ?>
			</div>
			<?php } ?>
		</div>
		<?php
	}

	/**
	 * @since 2.0.0
	 * @access public
	 */
	public function get_css_wrapper_selector() {
		return '';
	}

	/**
	 * @since 2.0.0
	 * @access public
	 */
	public function get_panel_page_settings() {
		return [
			/* translators: %s: Document title. */
			'title' => sprintf( esc_html__( '%s Settings', 'elementor' ), static::get_title() ),
		];
	}

	/**
	 * @since 2.0.0
	 * @access public
	 */
	public function get_post() {
		return $this->post;
	}

	/**
	 * @since 2.0.0
	 * @access public
	 */
	public function get_permalink() {
		return get_permalink( $this->get_main_id() );
	}

	/**
	 * @since 2.0.8
	 * @access public
	 */
	public function get_content( $with_css = false ) {
		return Plugin::$instance->frontend->get_builder_content( $this->post->ID, $with_css );
	}

	/**
	 * @since 2.0.0
	 * @access public
	 */
	public function delete() {
		if ( 'revision' === $this->post->post_type ) {
			$deleted = wp_delete_post_revision( $this->post );
		} else {
			$deleted = wp_delete_post( $this->post->ID );
		}

		return $deleted && ! is_wp_error( $deleted );
	}

	/**
	 * Save editor elements.
	 *
	 * Save data from the editor to the database.
	 *
	 * @since 2.0.0
	 * @access protected
	 *
	 * @param array $elements
	 */
	protected function save_elements( $elements ) {
		$editor_data = $this->get_elements_raw_data( $elements );

		// We need the `wp_slash` in order to avoid the unslashing during the `update_post_meta`
		$json_value = wp_slash( wp_json_encode( $editor_data ) );

		// Don't use `update_post_meta` that can't handle `revision` post type
		$is_meta_updated = update_metadata( 'post', $this->post->ID, '_elementor_data', $json_value );

		/**
		 * Before saving data.
		 *
		 * Fires before Elementor saves data to the database.
		 *
		 * @since 1.0.0
		 *
		 * @param string   $status          Post status.
		 * @param int|bool $is_meta_updated Meta ID if the key didn't exist, true on successful update, false on failure.
		 */
		do_action( 'elementor/db/before_save', $this->post->post_status, $is_meta_updated );

		Plugin::$instance->db->save_plain_text( $this->post->ID );

		$elements_iteration_actions = $this->get_elements_iteration_actions();

		if ( $elements_iteration_actions ) {
			$this->iterate_elements( $elements, $elements_iteration_actions, 'save' );
		}

		/**
		 * After saving data.
		 *
		 * Fires after Elementor saves data to the database.
		 *
		 * @since 1.0.0
		 *
		 * @param int   $post_id     The ID of the post.
		 * @param array $editor_data Sanitize posted data.
		 */
		do_action( 'elementor/editor/after_save', $this->post->ID, $editor_data );
	}

	/**
	 * @since 2.0.0
	 * @access public
	 *
	 * @param int $user_id Optional. User ID. Default value is `0`.
	 *
	 * @return bool|int
	 */
	public function get_autosave_id( $user_id = 0 ) {
		if ( ! $user_id ) {
			$user_id = get_current_user_id();
		}

		$autosave = Utils::get_post_autosave( $this->post->ID, $user_id );
		if ( $autosave ) {
			return $autosave->ID;
		}

		return false;
	}

	public function save_version() {
		if ( ! defined( 'IS_ELEMENTOR_UPGRADE' ) ) {
			// Save per revision.
			$this->update_meta( '_elementor_version', ELEMENTOR_VERSION );

			/**
			 * Document version save.
			 *
			 * Fires when document version is saved on Elementor.
			 * Will not fire during Elementor Upgrade.
			 *
			 * @since 2.5.12
			 *
			 * @param \Elementor\Core\Base\Document $this The current document.
			 *
			 */
			do_action( 'elementor/document/save_version', $this );
		}
	}

	/**
	 * @since 2.3.0
	 * @access public
	 */
	public function save_template_type() {
		return $this->update_main_meta( self::TYPE_META_KEY, $this->get_name() );
	}

	/**
	 * @since 2.3.0
	 * @access public
	 */
	public function get_template_type() {
		return $this->get_main_meta( self::TYPE_META_KEY );
	}

	/**
	 * @since 2.0.0
	 * @access public
	 *
	 * @param string $key Meta data key.
	 *
	 * @return mixed
	 */
	public function get_main_meta( $key ) {
		return get_post_meta( $this->get_main_id(), $key, true );
	}

	/**
	 * @since 2.0.4
	 * @access public
	 *
	 * @param string $key   Meta data key.
	 * @param string $value Meta data value.
	 *
	 * @return bool|int
	 */
	public function update_main_meta( $key, $value ) {
		return update_post_meta( $this->get_main_id(), $key, $value );
	}

	/**
	 * @since 2.0.4
	 * @access public
	 *
	 * @param string $key   Meta data key.
	 * @param string $value Optional. Meta data value. Default is an empty string.
	 *
	 * @return bool
	 */
	public function delete_main_meta( $key, $value = '' ) {
		return delete_post_meta( $this->get_main_id(), $key, $value );
	}

	/**
	 * @since 2.0.0
	 * @access public
	 *
	 * @param string $key Meta data key.
	 *
	 * @return mixed
	 */
	public function get_meta( $key ) {
		return get_post_meta( $this->post->ID, $key, true );
	}

	/**
	 * @since 2.0.0
	 * @access public
	 *
	 * @param string $key   Meta data key.
	 * @param mixed  $value Meta data value.
	 *
	 * @return bool|int
	 */
	public function update_meta( $key, $value ) {
		// Use `update_metadata` in order to work also with revisions.
		return update_metadata( 'post', $this->post->ID, $key, $value );
	}

	/**
	 * @since 2.0.3
	 * @access public
	 *
	 * @param string $key   Meta data key.
	 * @param string $value Meta data value.
	 *
	 * @return bool
	 */
	public function delete_meta( $key, $value = '' ) {
		// Use `delete_metadata` in order to work also with revisions.
		return delete_metadata( 'post', $this->post->ID, $key, $value );
	}

	/**
	 * @since 2.0.0
	 * @access public
	 */
	public function get_last_edited() {
		$post = $this->post;
		$autosave_post = $this->get_autosave();

		if ( $autosave_post ) {
			$post = $autosave_post->get_post();
		}

		$date = date_i18n( _x( 'M j, H:i', 'revision date format', 'elementor' ), strtotime( $post->post_modified ) );
		$display_name = get_the_author_meta( 'display_name', $post->post_author );

		if ( $autosave_post || 'revision' === $post->post_type ) {
			/* translators: 1: Saving date, 2: Author display name. */
			$last_edited = sprintf( esc_html__( 'Draft saved on %1$s by %2$s', 'elementor' ), '<time>' . $date . '</time>', $display_name );
		} else {
			/* translators: 1: Editing date, 2: Author display name. */
			$last_edited = sprintf( esc_html__( 'Last edited on %1$s by %2$s', 'elementor' ), '<time>' . $date . '</time>', $display_name );
		}

		return $last_edited;
	}


	/**
	 * @return bool
	 */
	public function is_saving() {
		return $this->is_saving;
	}

	/**
	 * @param $is_saving
	 *
	 * @return $this
	 */
	public function set_is_saving( $is_saving ) {
		$this->is_saving = $is_saving;

		return $this;
	}

	/**
	 * @since 2.0.0
	 * @access public
	 *
	 * @param array $data
	 *
	 * @throws \Exception If the post does not exist.
	 */
	public function __construct( array $data = [] ) {
		if ( $data ) {
			if ( empty( $data['post_id'] ) ) {
				$this->post = new \WP_Post( (object) [] );
			} else {
				$this->post = get_post( $data['post_id'] );

				if ( ! $this->post ) {
					throw new \Exception( sprintf( 'Post ID #%s does not exist.', $data['post_id'] ), Exceptions::NOT_FOUND );
				}
			}

			// Each Control_Stack is based on a unique ID.
			$data['id'] = $data['post_id'];

			if ( ! isset( $data['settings'] ) ) {
				$data['settings'] = [];
			}

			$saved_settings = get_post_meta( $this->post->ID, '_elementor_page_settings', true );
			if ( ! empty( $saved_settings ) && is_array( $saved_settings ) ) {
				$data['settings'] += $saved_settings;
			}
		}

		parent::__construct( $data );
	}

	/*
	 * Get Export Data
	 *
	 * Filters a document's data on export
	 *
	 * @since 3.2.0
	 * @access public
	 *
	 * @return array The data to export
	 */
	public function get_export_data() {
		$content = Plugin::$instance->db->iterate_data( $this->get_elements_data(), function( $element_data ) {
			$element_data['id'] = Utils::generate_random_string();

			$element = Plugin::$instance->elements_manager->create_element_instance( $element_data );

			// If the widget/element isn't exist, like a plugin that creates a widget but deactivated
			if ( ! $element ) {
				return null;
			}

			return $this->process_element_import_export( $element, 'on_export' );
		} );

		return [
			'content' => $content,
			'settings' => $this->get_data( 'settings' ),
			'metadata' => $this->get_export_metadata(),
		];
	}

	public function get_export_summary() {
		return [
			'title' => $this->post->post_title,
			'doc_type' => $this->get_name(),
			'thumbnail' => get_the_post_thumbnail_url( $this->post ),
		];
	}

	/*
	 * Get Import Data
	 *
	 * Filters a document's data on import
	 *
	 * @since 3.2.0
	 * @access public
	 *
	 * @return array The data to import
	 */
	public function get_import_data( array $data ) {
		$data['content'] = Plugin::$instance->db->iterate_data( $data['content'], function( $element_data ) {
			$element = Plugin::$instance->elements_manager->create_element_instance( $element_data );

			// If the widget/element isn't exist, like a plugin that creates a widget but deactivated
			if ( ! $element ) {
				return null;
			}

			return $this->process_element_import_export( $element, 'on_import' );
		} );

		if ( ! empty( $data['settings'] ) ) {
			$template_model = new Page_Model( [
				'id' => 0,
				'settings' => $data['settings'],
			] );

			$page_data = $this->process_element_import_export( $template_model, 'on_import' );

			$data['settings'] = $page_data['settings'];
		}

		return $data;
	}

	/**
	 * Import
	 *
	 * Allows to import an external data to a document
	 *
	 * @since 3.2.0
	 * @access public
	 *
	 * @param array $data
	 */
	public function import( array $data ) {
		$data = $this->get_import_data( $data );

		$this->save( [
			'elements' => $data['content'],
			'settings' => $data['settings'],
		] );

		if ( $data['import_settings']['thumbnail'] ) {
			$attachment = Plugin::$instance->templates_manager->get_import_images_instance()->import( [ 'url' => $data['import_settings']['thumbnail'] ] );

			set_post_thumbnail( $this->get_main_post(), $attachment['id'] );
		}

		if ( ! empty( $data['metadata'] ) ) {
			foreach ( $data['metadata'] as $key => $value ) {
				$this->update_meta( $key, $value );
			}
		}
	}

	private function process_element_import_export( Controls_Stack $element, $method ) {
		$element_data = $element->get_data();

		if ( method_exists( $element, $method ) ) {
			// TODO: Use the internal element data without parameters.
			$element_data = $element->{$method}( $element_data );
		}

		foreach ( $element->get_controls() as $control ) {
			$control_class = Plugin::$instance->controls_manager->get_control( $control['type'] );

			// If the control isn't exist, like a plugin that creates the control but deactivated.
			if ( ! $control_class ) {
				return $element_data;
			}

			if ( method_exists( $control_class, $method ) ) {
				$element_data['settings'][ $control['name'] ] = $control_class->{$method}( $element->get_settings( $control['name'] ), $control );
			}

			// On Export, check if the control has an argument 'export' => false.
			if ( 'on_export' === $method && isset( $control['export'] ) && false === $control['export'] ) {
				unset( $element_data['settings'][ $control['name'] ] );
			}
		}

		return $element_data;
	}

	protected function get_export_metadata() {
		$metadata = get_post_meta( $this->get_main_id() );

		foreach ( $metadata as $meta_key => $meta_value ) {
			if ( is_protected_meta( $meta_key, 'post' ) ) {
				unset( $metadata[ $meta_key ] );

				continue;
			}

			$metadata[ $meta_key ] = $meta_value[0];
		}

		return $metadata;
	}

	protected function get_remote_library_config() {
		$config = [
			'type' => 'block',
			'default_route' => 'templates/blocks',
			'category' => $this->get_name(),
			'autoImportSettings' => false,
		];

		return $config;
	}

	/**
	 * @since 2.0.4
	 * @access protected
	 *
	 * @param $settings
	 */
	protected function save_settings( $settings ) {
		$page_settings_manager = SettingsManager::get_settings_managers( 'page' );
		$page_settings_manager->ajax_before_save_settings( $settings, $this->post->ID );
		$page_settings_manager->save_settings( $settings, $this->post->ID );
	}

	/**
	 * @since 2.1.3
	 * @access protected
	 */
	protected function print_elements( $elements_data ) {
		// Collect all data updaters that should be updated on runtime.
		$runtime_elements_iteration_actions = $this->get_runtime_elements_iteration_actions();

		if ( $runtime_elements_iteration_actions ) {
			$this->iterate_elements( $elements_data, $runtime_elements_iteration_actions, 'render' );
		}

		foreach ( $elements_data as $element_data ) {
			$element = Plugin::$instance->elements_manager->create_element_instance( $element_data );

			if ( ! $element ) {
				continue;
			}

			$element->print_element();
		}
	}

	protected function register_document_controls() {
		$this->start_controls_section(
			'document_settings',
			[
				'label' => esc_html__( 'General Settings', 'elementor' ),
				'tab' => Controls_Manager::TAB_SETTINGS,
			]
		);

		$this->add_control(
			'post_title',
			[
				'label' => esc_html__( 'Title', 'elementor' ),
				'type' => Controls_Manager::TEXT,
				'default' => $this->post->post_title,
				'label_block' => true,
				'separator' => 'none',
			]
		);

		$post_type_object = get_post_type_object( $this->post->post_type );

		$can_publish = $post_type_object && current_user_can( $post_type_object->cap->publish_posts );
		$is_published = self::STATUS_PUBLISH === $this->post->post_status || self::STATUS_PRIVATE === $this->post->post_status;

		if ( $is_published || $can_publish || ! Plugin::$instance->editor->is_edit_mode() ) {

			$statuses = $this->get_post_statuses();
			if ( 'future' === $this->get_main_post()->post_status ) {
				$statuses['future'] = esc_html__( 'Future', 'elementor' );
			}

			$this->add_control(
				'post_status',
				[
					'label' => esc_html__( 'Status', 'elementor' ),
					'type' => Controls_Manager::SELECT,
					'default' => $this->get_main_post()->post_status,
					'options' => $statuses,
				]
			);
		}

		$this->end_controls_section();
	}

	protected function get_post_statuses() {
		return get_post_statuses();
	}

	protected function get_have_a_look_url() {
		return $this->get_permalink();
	}

	public function handle_revisions_changed( $post_has_changed, $last_revision, $post ) {
		// In case default, didn't determine the changes.
		if ( ! $post_has_changed ) {
			$last_revision_id = $last_revision->ID;
			$last_revision_document = Plugin::instance()->documents->get( $last_revision_id );
			$post_document = Plugin::instance()->documents->get( $post->ID );

			$last_revision_settings = $last_revision_document->get_settings();
			$post_settings = $post_document->get_settings();

			// TODO: Its better to add crc32 signature for each revision and then only compare one part of the checksum.
			$post_has_changed = $last_revision_settings !== $post_settings;
		}

		return $post_has_changed;
	}

	private function add_handle_revisions_changed_filter() {
		add_filter( 'wp_save_post_revision_post_has_changed', [ $this, 'handle_revisions_changed' ], 10, 3 );
	}

	private function remove_handle_revisions_changed_filter() {
		remove_filter( 'wp_save_post_revision_post_has_changed', [ $this, 'handle_revisions_changed' ] );
	}

	private function get_runtime_elements_iteration_actions() {
		$runtime_elements_iteration_actions = [];

		$elements_iteration_actions = $this->get_elements_iteration_actions();

		foreach ( $elements_iteration_actions as $elements_iteration_action ) {
			if ( $elements_iteration_action->is_action_needed() ) {
				$runtime_elements_iteration_actions[] = $elements_iteration_action;
			}
		}

		return $runtime_elements_iteration_actions;
	}

	private function iterate_elements( $elements, $elements_iteration_actions, $mode ) {
		$unique_page_elements = [];

		foreach ( $elements_iteration_actions as $elements_iteration_action ) {
			$elements_iteration_action->set_mode( $mode );
		}

		Plugin::$instance->db->iterate_data( $elements, function( array $element_data ) use ( &$unique_page_elements, $elements_iteration_actions ) {
			$element_type = 'widget' === $element_data['elType'] ? $element_data['widgetType'] : $element_data['elType'];

			$element = Plugin::$instance->elements_manager->create_element_instance( $element_data );

			if ( $element ) {
				if ( ! in_array( $element_type, $unique_page_elements, true ) ) {
					$unique_page_elements[] = $element_type;

					foreach ( $elements_iteration_actions as $elements_iteration_action ) {
						$elements_iteration_action->unique_element_action( $element );
					}
				}

				foreach ( $elements_iteration_actions as $elements_iteration_action ) {
					$elements_iteration_action->element_action( $element );
				}
			}

			return $element_data;
		} );

		foreach ( $elements_iteration_actions as $elements_iteration_action ) {
			$elements_iteration_action->after_elements_iteration();
		}
	}

	private function get_elements_iteration_actions() {
		if ( ! $this->elements_iteration_actions ) {
			$this->elements_iteration_actions[] = new Assets_Iteration_Action( $this );
		}

		return $this->elements_iteration_actions;
	}
}
core/base/module.php000064400000015252151327220420010407 0ustar00<?php
namespace Elementor\Core\Base;

use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor module.
 *
 * An abstract class that provides the needed properties and methods to
 * manage and handle modules in inheriting classes.
 *
 * @since 1.7.0
 * @abstract
 */
abstract class Module extends Base_Object {

	/**
	 * Module class reflection.
	 *
	 * Holds the information about a class.
	 *
	 * @since 1.7.0
	 * @access private
	 *
	 * @var \ReflectionClass
	 */
	private $reflection;

	/**
	 * Module components.
	 *
	 * Holds the module components.
	 *
	 * @since 1.7.0
	 * @access private
	 *
	 * @var array
	 */
	private $components = [];

	/**
	 * Module instance.
	 *
	 * Holds the module instance.
	 *
	 * @since 1.7.0
	 * @access protected
	 *
	 * @var Module
	 */
	protected static $_instances = [];

	/**
	 * Get module name.
	 *
	 * Retrieve the module name.
	 *
	 * @since 1.7.0
	 * @access public
	 * @abstract
	 *
	 * @return string Module name.
	 */
	abstract public function get_name();

	/**
	 * Instance.
	 *
	 * Ensures only one instance of the module class is loaded or can be loaded.
	 *
	 * @since 1.7.0
	 * @access public
	 * @static
	 *
	 * @return Module An instance of the class.
	 */
	public static function instance() {
		$class_name = static::class_name();

		if ( empty( static::$_instances[ $class_name ] ) ) {
			static::$_instances[ $class_name ] = new static();
		}

		return static::$_instances[ $class_name ];
	}

	/**
	 * @since 2.0.0
	 * @access public
	 * @static
	 */
	public static function is_active() {
		return true;
	}

	/**
	 * Class name.
	 *
	 * Retrieve the name of the class.
	 *
	 * @since 1.7.0
	 * @access public
	 * @static
	 */
	public static function class_name() {
		return get_called_class();
	}

	public static function get_experimental_data() {
		return [];
	}

	/**
	 * Clone.
	 *
	 * Disable class cloning and throw an error on object clone.
	 *
	 * The whole idea of the singleton design pattern is that there is a single
	 * object. Therefore, we don't want the object to be cloned.
	 *
	 * @since 1.7.0
	 * @access public
	 */
	public function __clone() {
		// Cloning instances of the class is forbidden
		_doing_it_wrong( __FUNCTION__, esc_html__( 'Something went wrong.', 'elementor' ), '1.0.0' );
	}

	/**
	 * Wakeup.
	 *
	 * Disable unserializing of the class.
	 *
	 * @since 1.7.0
	 * @access public
	 */
	public function __wakeup() {
		// Unserializing instances of the class is forbidden
		_doing_it_wrong( __FUNCTION__, esc_html__( 'Something went wrong.', 'elementor' ), '1.0.0' );
	}

	/**
	 * @since 2.0.0
	 * @access public
	 */
	public function get_reflection() {
		if ( null === $this->reflection ) {
			$this->reflection = new \ReflectionClass( $this );
		}

		return $this->reflection;
	}

	/**
	 * Add module component.
	 *
	 * Add new component to the current module.
	 *
	 * @since 1.7.0
	 * @access public
	 *
	 * @param string $id       Component ID.
	 * @param mixed  $instance An instance of the component.
	 */
	public function add_component( $id, $instance ) {
		$this->components[ $id ] = $instance;
	}

	/**
	 * @since 2.3.0
	 * @access public
	 * @return Module[]
	 */
	public function get_components() {
		return $this->components;
	}

	/**
	 * Get module component.
	 *
	 * Retrieve the module component.
	 *
	 * @since 1.7.0
	 * @access public
	 *
	 * @param string $id Component ID.
	 *
	 * @return mixed An instance of the component, or `false` if the component
	 *               doesn't exist.
	 */
	public function get_component( $id ) {
		if ( isset( $this->components[ $id ] ) ) {
			return $this->components[ $id ];
		}

		return false;
	}

	/**
	 * Get assets url.
	 *
	 * @since 2.3.0
	 * @access protected
	 *
	 * @param string $file_name
	 * @param string $file_extension
	 * @param string $relative_url Optional. Default is null.
	 * @param string $add_min_suffix Optional. Default is 'default'.
	 *
	 * @return string
	 */
	final protected function get_assets_url( $file_name, $file_extension, $relative_url = null, $add_min_suffix = 'default' ) {
		static $is_test_mode = null;

		if ( null === $is_test_mode ) {
			$is_test_mode = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG || defined( 'ELEMENTOR_TESTS' ) && ELEMENTOR_TESTS;
		}

		if ( ! $relative_url ) {
			$relative_url = $this->get_assets_relative_url() . $file_extension . '/';
		}

		$url = $this->get_assets_base_url() . $relative_url . $file_name;

		if ( 'default' === $add_min_suffix ) {
			$add_min_suffix = ! $is_test_mode;
		}

		if ( $add_min_suffix ) {
			$url .= '.min';
		}

		return $url . '.' . $file_extension;
	}

	/**
	 * Get js assets url
	 *
	 * @since 2.3.0
	 * @access protected
	 *
	 * @param string $file_name
	 * @param string $relative_url Optional. Default is null.
	 * @param string $add_min_suffix Optional. Default is 'default'.
	 *
	 * @return string
	 */
	final protected function get_js_assets_url( $file_name, $relative_url = null, $add_min_suffix = 'default' ) {
		return $this->get_assets_url( $file_name, 'js', $relative_url, $add_min_suffix );
	}

	/**
	 * Get css assets url
	 *
	 * @since 2.3.0
	 * @access protected
	 *
	 * @param string $file_name
	 * @param string $relative_url         Optional. Default is null.
	 * @param string $add_min_suffix       Optional. Default is 'default'.
	 * @param bool   $add_direction_suffix Optional. Default is `false`
	 *
	 * @return string
	 */
	final protected function get_css_assets_url( $file_name, $relative_url = null, $add_min_suffix = 'default', $add_direction_suffix = false ) {
		static $direction_suffix = null;

		if ( ! $direction_suffix ) {
			$direction_suffix = is_rtl() ? '-rtl' : '';
		}

		if ( $add_direction_suffix ) {
			$file_name .= $direction_suffix;
		}

		return $this->get_assets_url( $file_name, 'css', $relative_url, $add_min_suffix );
	}

	/**
	 * Get assets base url
	 *
	 * @since 2.6.0
	 * @access protected
	 *
	 * @return string
	 */
	protected function get_assets_base_url() {
		return ELEMENTOR_URL;
	}

	/**
	 * Get assets relative url
	 *
	 * @since 2.3.0
	 * @access protected
	 *
	 * @return string
	 */
	protected function get_assets_relative_url() {
		return 'assets/';
	}

	/**
	 * Get the module's associated widgets.
	 *
	 * @return string[]
	 */
	protected function get_widgets() {
		return [];
	}

	/**
	 * Initialize the module related widgets.
	 */
	public function init_widgets() {
		$widget_manager = Plugin::instance()->widgets_manager;

		foreach ( $this->get_widgets() as $widget ) {
			$class_name = $this->get_reflection()->getNamespaceName() . '\Widgets\\' . $widget;

			$widget_manager->register_widget_type( new $class_name() );
		}
	}

	public function __construct() {
		add_action( 'elementor/widgets/widgets_registered', [ $this, 'init_widgets' ] );
	}
}
core/base/elements-iteration-actions/assets.php000064400000012056151327220420015671 0ustar00<?php
namespace Elementor\Core\Base\Elements_Iteration_Actions;

use Elementor\Conditions;
use Elementor\Element_Base;
use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Assets extends Base {
	const ASSETS_META_KEY = '_elementor_page_assets';

	// Default value must be empty.
	private $page_assets;

	// Default value must be empty.
	private $saved_page_assets;

	public function element_action( Element_Base $element_data ) {
		$settings = $element_data->get_active_settings();
		$controls = $element_data->get_controls();

		$element_assets = $this->get_assets( $settings, $controls );

		if ( $element_assets ) {
			$this->update_page_assets( $element_assets );
		}
	}

	public function is_action_needed() {
		// No need to evaluate in preview mode, will be made in the saving process.
		if ( ! $this->is_active_page_assets_mode() ) {
			return false;
		}

		$page_assets = $this->get_saved_page_assets();

		// When $page_assets is array it means that the assets registration has already been made at least once.
		if ( is_array( $page_assets ) ) {
			return false;
		}

		return true;
	}

	public function after_elements_iteration() {
		// In case that the page assets value is empty, it should still be saved as an empty array as an indication that at lease one iteration has occurred.
		if ( ! is_array( $this->page_assets ) ) {
			$this->page_assets = [];
		}

		$this->get_document_assets();

		// Saving the page assets data.
		$this->document->update_meta( self::ASSETS_META_KEY, $this->page_assets );

		if ( 'render' === $this->mode && $this->page_assets ) {
			Plugin::$instance->assets_loader->enable_assets( $this->page_assets );
		}
	}

	private function get_saved_page_assets( $force_meta_fetch = false ) {
		if ( ! is_array( $this->saved_page_assets ) || $force_meta_fetch ) {
			$this->saved_page_assets = $this->document->get_meta( self::ASSETS_META_KEY );
		}

		return $this->saved_page_assets;
	}

	private function update_page_assets( $new_assets ) {
		if ( ! is_array( $this->page_assets ) ) {
			$this->page_assets = [];
		}

		foreach ( $new_assets as $assets_type => $assets_type_data ) {
			if ( ! isset( $this->page_assets[ $assets_type ] ) ) {
				$this->page_assets[ $assets_type ] = [];
			}

			foreach ( $new_assets[ $assets_type ] as $asset_name ) {
				if ( ! isset( $this->page_assets[ $assets_type ][ $asset_name ] ) ) {
					$this->page_assets[ $assets_type ][] = $asset_name;
				}
			}
		}
	}

	private function get_assets( $settings, $controls ) {
		$assets = [];

		foreach ( $settings as $setting_key => $setting ) {
			if ( ! isset( $controls[ $setting_key ] ) ) {
				continue;
			}

			$control = $controls[ $setting_key ];

			// Enabling assets loading from the registered control fields.
			if ( ! empty( $control['assets'] ) ) {
				foreach ( $control['assets'] as $assets_type => $dependencies ) {
					foreach ( $dependencies as $dependency ) {
						if ( ! empty( $dependency['conditions'] ) ) {
							$is_condition_fulfilled = Conditions::check( $dependency['conditions'], $settings );

							if ( ! $is_condition_fulfilled ) {
								continue;
							}
						}

						if ( ! isset( $assets[ $assets_type ] ) ) {
							$assets[ $assets_type ] = [];
						}

						$assets[ $assets_type ][] = $dependency['name'];
					}
				}
			}

			// Enabling assets loading from the control object.
			$control_obj = Plugin::$instance->controls_manager->get_control( $control['type'] );

			$control_conditional_assets = $control_obj::get_assets( $setting );

			if ( $control_conditional_assets ) {
				foreach ( $control_conditional_assets as $assets_type => $dependencies ) {
					foreach ( $dependencies as $dependency ) {
						if ( ! isset( $assets[ $assets_type ] ) ) {
							$assets[ $assets_type ] = [];
						}

						$assets[ $assets_type ][] = $dependency;
					}
				}
			}
		}

		return $assets;
	}

	private function is_active_page_assets_mode() {
		$is_optimized_mode = Plugin::$instance->experiments->is_feature_active( 'e_optimized_assets_loading' );

		return ! Plugin::$instance->preview->is_preview_mode() && $is_optimized_mode;
	}

	private function get_document_assets() {
		$document_id = $this->document->get_post()->ID;

		// Getting the document instance in order to get the most updated settings.
		$updated_document = Plugin::$instance->documents->get( $document_id, false );

		$document_settings = $updated_document->get_settings();

		$document_controls = $this->document->get_controls();

		$document_assets = $this->get_assets( $document_settings, $document_controls );

		if ( $document_assets ) {
			$this->update_page_assets( $document_assets );
		}
	}

	public function __construct( $document ) {
		parent::__construct( $document );

		// No need to enable assets in preview mode, all assets will be loaded by default by the assets loader.
		if ( ! $this->is_active_page_assets_mode() ) {
			return;
		}

		$page_assets = $this->get_saved_page_assets();

		// If $page_assets is not empty then enabling the assets for loading.
		if ( $page_assets ) {
			Plugin::$instance->assets_loader->enable_assets( $page_assets );
		}
	}
}
core/base/elements-iteration-actions/base.php000064400000003307151327220420015300 0ustar00<?php
namespace Elementor\Core\Base\Elements_Iteration_Actions;

use Elementor\Element_Base;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

abstract class Base {
	/**
	 * The current document that the Base class instance was created from.
	 */
	protected $document;

	/**
	 * Indicates if the methods are being triggered on page save or at render time (value will be either 'save' or 'render').
	 *
	 * @var string
	 */
	protected $mode = '';

	/**
	 * Is Action Needed.
	 *
	 * Runs only at runtime and used as a flag to determine if all methods should run on page render.
	 * If returns false, all methods will run only on page save.
	 * If returns true, all methods will run on both page render and on save.
	 *
	 * @since 3.3.0
	 * @access public
	 *
	 * @return bool
	 */
	abstract public function is_action_needed();

	/**
	 * Unique Element Action.
	 *
	 * Will be triggered for each unique page element - section / column / widget unique type (heading, icon etc.).
	 *
	 * @since 3.3.0
	 * @access public
	 *
	 * @return void
	 */
	public function unique_element_action( Element_Base $element_data ) {}

	/**
	 * Element Action.
	 *
	 * Will be triggered for each page element - section / column / widget.
	 *
	 * @since 3.3.0
	 * @access public
	 *
	 * @return void
	 */
	public function element_action( Element_Base $element_data ) {}

	/**
	 * After Elements Iteration.
	 *
	 * Will be triggered after all page elements iteration has ended.
	 *
	 * @since 3.3.0
	 * @access public
	 *
	 * @return void
	 */
	public function after_elements_iteration() {}

	public function set_mode( $mode ) {
		$this->mode = $mode;
	}

	public function __construct( $document ) {
		$this->document = $document;
	}
}
core/base/background-process/wp-background-process.php000064400000025474151327220420017143 0ustar00<?php
namespace Elementor\Core\Base\BackgroundProcess;

if ( ! defined( 'ABSPATH' ) ) {
	exit;
}

/**
 * https://github.com/A5hleyRich/wp-background-processing GPL v2.0
 *
 * WP Background Process
 *
 * @package WP-Background-Processing
 */

/**
 * Abstract WP_Background_Process class.
 *
 * @abstract
 * @extends WP_Async_Request
 */
abstract class WP_Background_Process extends WP_Async_Request {

	/**
	 * Action
	 *
	 * (default value: 'background_process')
	 *
	 * @var string
	 * @access protected
	 */
	protected $action = 'background_process';

	/**
	 * Start time of current process.
	 *
	 * (default value: 0)
	 *
	 * @var int
	 * @access protected
	 */
	protected $start_time = 0;

	/**
	 * Cron_hook_identifier
	 *
	 * @var mixed
	 * @access protected
	 */
	protected $cron_hook_identifier;

	/**
	 * Cron_interval_identifier
	 *
	 * @var mixed
	 * @access protected
	 */
	protected $cron_interval_identifier;

	/**
	 * Initiate new background process
	 */
	public function __construct() {
		parent::__construct();

		$this->cron_hook_identifier     = $this->identifier . '_cron';
		$this->cron_interval_identifier = $this->identifier . '_cron_interval';

		add_action( $this->cron_hook_identifier, array( $this, 'handle_cron_healthcheck' ) );
		add_filter( 'cron_schedules', array( $this, 'schedule_cron_healthcheck' ) );
	}

	/**
	 * Dispatch
	 *
	 * @access public
	 * @return array|\WP_Error
	 */
	public function dispatch() {
		// Schedule the cron healthcheck.
		$this->schedule_event();

		// Perform remote post.
		return parent::dispatch();
	}

	/**
	 * Push to queue
	 *
	 * @param mixed $data Data.
	 *
	 * @return $this
	 */
	public function push_to_queue( $data ) {
		$this->data[] = $data;

		return $this;
	}

	/**
	 * Save queue
	 *
	 * @return $this
	 */
	public function save() {
		$key = $this->generate_key();

		if ( ! empty( $this->data ) ) {
			update_site_option( $key, $this->data );
		}

		return $this;
	}

	/**
	 * Update queue
	 *
	 * @param string $key Key.
	 * @param array  $data Data.
	 *
	 * @return $this
	 */
	public function update( $key, $data ) {
		if ( ! empty( $data ) ) {
			update_site_option( $key, $data );
		}

		return $this;
	}

	/**
	 * Delete queue
	 *
	 * @param string $key Key.
	 *
	 * @return $this
	 */
	public function delete( $key ) {
		delete_site_option( $key );

		return $this;
	}

	/**
	 * Generate key
	 *
	 * Generates a unique key based on microtime. Queue items are
	 * given a unique key so that they can be merged upon save.
	 *
	 * @param int $length Length.
	 *
	 * @return string
	 */
	protected function generate_key( $length = 64 ) {
		$unique  = md5( microtime() . rand() );
		$prepend = $this->identifier . '_batch_';

		return substr( $prepend . $unique, 0, $length );
	}

	/**
	 * Maybe process queue
	 *
	 * Checks whether data exists within the queue and that
	 * the process is not already running.
	 */
	public function maybe_handle() {
		// Don't lock up other requests while processing
		session_write_close();

		if ( $this->is_process_running() ) {
			// Background process already running.
			wp_die();
		}

		if ( $this->is_queue_empty() ) {
			// No data to process.
			wp_die();
		}

		check_ajax_referer( $this->identifier, 'nonce' );

		$this->handle();

		wp_die();
	}

	/**
	 * Is queue empty
	 *
	 * @return bool
	 */
	protected function is_queue_empty() {
		global $wpdb;

		$table  = $wpdb->options;
		$column = 'option_name';

		if ( is_multisite() ) {
			$table  = $wpdb->sitemeta;
			$column = 'meta_key';
		}

		$key = $wpdb->esc_like( $this->identifier . '_batch_' ) . '%';

		// phpcs:disable WordPress.DB.PreparedSQL.InterpolatedNotPrepared
		// Can't use placeholders for table/column names, it will be wrapped by a single quote (') instead of a backquote (`).
		$count = $wpdb->get_var( $wpdb->prepare( "
			SELECT COUNT(*)
			FROM {$table}
			WHERE {$column} LIKE %s
		", $key ) );
		// phpcs:enable

		return ( $count > 0 ) ? false : true;
	}

	/**
	 * Is process running
	 *
	 * Check whether the current process is already running
	 * in a background process.
	 */
	protected function is_process_running() {
		if ( get_site_transient( $this->identifier . '_process_lock' ) ) {
			// Process already running.
			return true;
		}

		return false;
	}

	/**
	 * Lock process
	 *
	 * Lock the process so that multiple instances can't run simultaneously.
	 * Override if applicable, but the duration should be greater than that
	 * defined in the time_exceeded() method.
	 */
	protected function lock_process() {
		$this->start_time = time(); // Set start time of current process.

		$lock_duration = ( property_exists( $this, 'queue_lock_time' ) ) ? $this->queue_lock_time : 60; // 1 minute
		$lock_duration = apply_filters( $this->identifier . '_queue_lock_time', $lock_duration );

		set_site_transient( $this->identifier . '_process_lock', microtime(), $lock_duration );
	}

	/**
	 * Unlock process
	 *
	 * Unlock the process so that other instances can spawn.
	 *
	 * @return $this
	 */
	protected function unlock_process() {
		delete_site_transient( $this->identifier . '_process_lock' );

		return $this;
	}

	/**
	 * Get batch
	 *
	 * @return \stdClass Return the first batch from the queue
	 */
	protected function get_batch() {
		global $wpdb;

		$table        = $wpdb->options;
		$column       = 'option_name';
		$key_column   = 'option_id';
		$value_column = 'option_value';

		if ( is_multisite() ) {
			$table        = $wpdb->sitemeta;
			$column       = 'meta_key';
			$key_column   = 'meta_id';
			$value_column = 'meta_value';
		}

		$key = $wpdb->esc_like( $this->identifier . '_batch_' ) . '%';

		// phpcs:disable WordPress.DB.PreparedSQL.InterpolatedNotPrepared
		// Can't use placeholders for table/column names, it will be wrapped by a single quote (') instead of a backquote (`).
		$query = $wpdb->get_row( $wpdb->prepare( "
			SELECT *
			FROM {$table}
			WHERE {$column} LIKE %s
			ORDER BY {$key_column} ASC
			LIMIT 1
		", $key ) );
		// phpcs:enable

		$batch       = new \stdClass();
		$batch->key  = $query->$column;
		$batch->data = maybe_unserialize( $query->$value_column );

		return $batch;
	}

	/**
	 * Handle
	 *
	 * Pass each queue item to the task handler, while remaining
	 * within server memory and time limit constraints.
	 */
	protected function handle() {
		$this->lock_process();

		do {
			$batch = $this->get_batch();

			foreach ( $batch->data as $key => $value ) {
				$task = $this->task( $value );

				if ( false !== $task ) {
					$batch->data[ $key ] = $task;
				} else {
					unset( $batch->data[ $key ] );
				}

				if ( $this->time_exceeded() || $this->memory_exceeded() ) {
					// Batch limits reached.
					break;
				}
			}

			// Update or delete current batch.
			if ( ! empty( $batch->data ) ) {
				$this->update( $batch->key, $batch->data );
			} else {
				$this->delete( $batch->key );
			}
		} while ( ! $this->time_exceeded() && ! $this->memory_exceeded() && ! $this->is_queue_empty() );

		$this->unlock_process();

		// Start next batch or complete process.
		if ( ! $this->is_queue_empty() ) {
			$this->dispatch();
		} else {
			$this->complete();
		}

		wp_die();
	}

	/**
	 * Memory exceeded
	 *
	 * Ensures the batch process never exceeds 90%
	 * of the maximum WordPress memory.
	 *
	 * @return bool
	 */
	protected function memory_exceeded() {
		$memory_limit   = $this->get_memory_limit() * 0.9; // 90% of max memory
		$current_memory = memory_get_usage( true );
		$return         = false;

		if ( $current_memory >= $memory_limit ) {
			$return = true;
		}

		return apply_filters( $this->identifier . '_memory_exceeded', $return );
	}

	/**
	 * Get memory limit
	 *
	 * @return int
	 */
	protected function get_memory_limit() {
		if ( function_exists( 'ini_get' ) ) {
			$memory_limit = ini_get( 'memory_limit' );
		} else {
			// Sensible default.
			$memory_limit = '128M';
		}

		if ( ! $memory_limit || -1 === intval( $memory_limit ) ) {
			// Unlimited, set to 32GB.
			$memory_limit = '32000M';
		}

		return intval( $memory_limit ) * 1024 * 1024;
	}

	/**
	 * Time exceeded.
	 *
	 * Ensures the batch never exceeds a sensible time limit.
	 * A timeout limit of 30s is common on shared hosting.
	 *
	 * @return bool
	 */
	protected function time_exceeded() {
		$finish = $this->start_time + apply_filters( $this->identifier . '_default_time_limit', 20 ); // 20 seconds
		$return = false;

		if ( time() >= $finish ) {
			$return = true;
		}

		return apply_filters( $this->identifier . '_time_exceeded', $return );
	}

	/**
	 * Complete.
	 *
	 * Override if applicable, but ensure that the below actions are
	 * performed, or, call parent::complete().
	 */
	protected function complete() {
		// Unschedule the cron healthcheck.
		$this->clear_scheduled_event();
	}

	/**
	 * Schedule cron healthcheck
	 *
	 * @access public
	 * @param mixed $schedules Schedules.
	 * @return mixed
	 */
	public function schedule_cron_healthcheck( $schedules ) {
		$interval = apply_filters( $this->identifier . '_cron_interval', 5 );

		if ( property_exists( $this, 'cron_interval' ) ) {
			$interval = apply_filters( $this->identifier . '_cron_interval', $this->cron_interval );
		}

		// Adds every 5 minutes to the existing schedules.
		$schedules[ $this->identifier . '_cron_interval' ] = array(
			'interval' => MINUTE_IN_SECONDS * $interval,
			/* translators: %d: Interval in minutes. */
			'display'  => sprintf( esc_html__( 'Every %d Minutes', 'elementor' ), $interval ),
		);

		return $schedules;
	}

	/**
	 * Handle cron healthcheck
	 *
	 * Restart the background process if not already running
	 * and data exists in the queue.
	 */
	public function handle_cron_healthcheck() {
		if ( $this->is_process_running() ) {
			// Background process already running.
			exit;
		}

		if ( $this->is_queue_empty() ) {
			// No data to process.
			$this->clear_scheduled_event();
			exit;
		}

		$this->handle();

		exit;
	}

	/**
	 * Schedule event
	 */
	protected function schedule_event() {
		if ( ! wp_next_scheduled( $this->cron_hook_identifier ) ) {
			wp_schedule_event( time(), $this->cron_interval_identifier, $this->cron_hook_identifier );
		}
	}

	/**
	 * Clear scheduled event
	 */
	protected function clear_scheduled_event() {
		$timestamp = wp_next_scheduled( $this->cron_hook_identifier );

		if ( $timestamp ) {
			wp_unschedule_event( $timestamp, $this->cron_hook_identifier );
		}
	}

	/**
	 * Cancel Process
	 *
	 * Stop processing queue items, clear cronjob and delete batch.
	 *
	 */
	public function cancel_process() {
		if ( ! $this->is_queue_empty() ) {
			$batch = $this->get_batch();

			$this->delete( $batch->key );

			wp_clear_scheduled_hook( $this->cron_hook_identifier );
		}

	}

	/**
	 * Task
	 *
	 * Override this method to perform any actions required on each
	 * queue item. Return the modified item for further processing
	 * in the next pass through. Or, return false to remove the
	 * item from the queue.
	 *
	 * @param mixed $item Queue item to iterate over.
	 *
	 * @return mixed
	 */
	abstract protected function task( $item );

}
core/base/background-process/wp-async-request.php000064400000005605151327220420016145 0ustar00<?php
namespace Elementor\Core\Base\BackgroundProcess;

if ( ! defined( 'ABSPATH' ) ) {
	exit;
}

/**
 * https://github.com/A5hleyRich/wp-background-processing GPL v2.0
 *
 * WP Async Request
 *
 * @package WP-Background-Processing
 */

/**
 * Abstract WP_Async_Request class.
 *
 * @abstract
 */
abstract class WP_Async_Request {

	/**
	 * Prefix
	 *
	 * (default value: 'wp')
	 *
	 * @var string
	 * @access protected
	 */
	protected $prefix = 'wp';

	/**
	 * Action
	 *
	 * (default value: 'async_request')
	 *
	 * @var string
	 * @access protected
	 */
	protected $action = 'async_request';

	/**
	 * Identifier
	 *
	 * @var mixed
	 * @access protected
	 */
	protected $identifier;

	/**
	 * Data
	 *
	 * (default value: array())
	 *
	 * @var array
	 * @access protected
	 */
	protected $data = array();

	/**
	 * Initiate new async request
	 */
	public function __construct() {
		$this->identifier = $this->prefix . '_' . $this->action;

		add_action( 'wp_ajax_' . $this->identifier, array( $this, 'maybe_handle' ) );
		add_action( 'wp_ajax_nopriv_' . $this->identifier, array( $this, 'maybe_handle' ) );
	}

	/**
	 * Set data used during the request
	 *
	 * @param array $data Data.
	 *
	 * @return $this
	 */
	public function data( $data ) {
		$this->data = $data;

		return $this;
	}

	/**
	 * Dispatch the async request
	 *
	 * @return array|\WP_Error
	 */
	public function dispatch() {
		$url  = add_query_arg( $this->get_query_args(), $this->get_query_url() );
		$args = $this->get_post_args();

		return wp_remote_post( esc_url_raw( $url ), $args );
	}

	/**
	 * Get query args
	 *
	 * @return array
	 */
	protected function get_query_args() {
		if ( property_exists( $this, 'query_args' ) ) {
			return $this->query_args;
		}

		return array(
			'action' => $this->identifier,
			'nonce'  => wp_create_nonce( $this->identifier ),
		);
	}

	/**
	 * Get query URL
	 *
	 * @return string
	 */
	protected function get_query_url() {
		if ( property_exists( $this, 'query_url' ) ) {
			return $this->query_url;
		}

		return admin_url( 'admin-ajax.php' );
	}

	/**
	 * Get post args
	 *
	 * @return array
	 */
	protected function get_post_args() {
		if ( property_exists( $this, 'post_args' ) ) {
			return $this->post_args;
		}

		return array(
			'timeout'   => 0.01,
			'blocking'  => false,
			'body'      => $this->data,
			'cookies'   => $_COOKIE,
			/** This filter is documented in wp-includes/class-wp-http-streams.php */
			'sslverify' => apply_filters( 'https_local_ssl_verify', false ),
		);
	}

	/**
	 * Maybe handle
	 *
	 * Check for correct nonce and pass to handler.
	 */
	public function maybe_handle() {
		// Don't lock up other requests while processing
		session_write_close();

		check_ajax_referer( $this->identifier, 'nonce' );

		$this->handle();

		wp_die();
	}

	/**
	 * Handle
	 *
	 * Override this method to perform any actions required
	 * during the async request.
	 */
	abstract protected function handle();

}
core/modules-manager.php000064400000005202151327220420011262 0ustar00<?php
namespace Elementor\Core;

use Elementor\Core\Base\Module;
use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor modules manager.
 *
 * Elementor modules manager handler class is responsible for registering and
 * managing Elementor modules.
 *
 * @since 1.6.0
 */
class Modules_Manager {

	/**
	 * Registered modules.
	 *
	 * Holds the list of all the registered modules.
	 *
	 * @since 1.6.0
	 * @access public
	 *
	 * @var array
	 */
	private $modules = [];

	/**
	 * Modules manager constructor.
	 *
	 * Initializing the Elementor modules manager.
	 *
	 * @since 1.6.0
	 * @access public
	 */
	public function __construct() {
		$modules_namespace_prefix = $this->get_modules_namespace_prefix();

		foreach ( $this->get_modules_names() as $module_name ) {
			$class_name = str_replace( '-', ' ', $module_name );

			$class_name = str_replace( ' ', '', ucwords( $class_name ) );

			$class_name = $modules_namespace_prefix . '\\Modules\\' . $class_name . '\Module';

			/** @var Module $class_name */

			$experimental_data = $class_name::get_experimental_data();

			if ( $experimental_data ) {
				Plugin::$instance->experiments->add_feature( $experimental_data );

				if ( ! Plugin::$instance->experiments->is_feature_active( $experimental_data['name'] ) ) {
					continue;
				}
			}

			if ( $class_name::is_active() ) {
				$this->modules[ $module_name ] = $class_name::instance();
			}
		}
	}

	/**
	 * Get modules names.
	 *
	 * Retrieve the modules names.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @return string[] Modules names.
	 */
	public function get_modules_names() {
		return [
			'admin-bar',
			'history',
			'library',
			'dynamic-tags',
			'page-templates',
			'gutenberg',
			'wp-cli',
			'safe-mode',
			'usage',
			'dev-tools',
			'landing-pages',
			'compatibility-tag',
			'elements-color-picker',
			'shapes',
			'admin-top-bar',
		];
	}

	/**
	 * Get modules.
	 *
	 * Retrieve all the registered modules or a specific module.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @param string $module_name Module name.
	 *
	 * @return null|Module|Module[] All the registered modules or a specific module.
	 */
	public function get_modules( $module_name ) {
		if ( $module_name ) {
			if ( isset( $this->modules[ $module_name ] ) ) {
				return $this->modules[ $module_name ];
			}

			return null;
		}

		return $this->modules;
	}

	/**
	 * Get modules namespace prefix.
	 *
	 * Retrieve the modules namespace prefix.
	 *
	 * @since 2.0.0
	 * @access protected
	 *
	 * @return string Modules namespace prefix.
	 */
	protected function get_modules_namespace_prefix() {
		return 'Elementor';
	}
}
core/responsive/responsive.php000064400000007302151327220420012577 0ustar00<?php
namespace Elementor\Core\Responsive;

use Elementor\Core\Breakpoints\Manager as Breakpoints_Manager;
use Elementor\Modules\DevTools\Deprecation;
use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor responsive.
 *
 * Elementor responsive handler class is responsible for setting up Elementor
 * responsive breakpoints.
 *
 * @since 1.0.0
 * @deprecated 3.2.0
 */
class Responsive {

	/**
	 * The Elementor breakpoint prefix.
	 */
	const BREAKPOINT_OPTION_PREFIX = 'viewport_';

	/**
	 * Default breakpoints.
	 *
	 * Holds the default responsive breakpoints.
	 *
	 * @since 1.0.0
	 * @access private
	 * @static
	 *
	 * @var array Default breakpoints.
	 */
	private static $default_breakpoints = [
		'xs' => 0,
		'sm' => 480,
		'md' => 768,
		'lg' => 1025,
		'xl' => 1440,
		'xxl' => 1600,
	];

	/**
	 * Editable breakpoint keys.
	 *
	 * Holds the editable breakpoint keys.
	 *
	 * @since 1.0.0
	 * @access private
	 * @static
	 *
	 * @var array Editable breakpoint keys.
	 */
	private static $editable_breakpoints_keys = [
		'md',
		'lg',
	];

	/**
	 * Get default breakpoints.
	 *
	 * Retrieve the default responsive breakpoints.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @return array Default breakpoints.
	 */
	public static function get_default_breakpoints() {
		return self::$default_breakpoints;
	}

	/**
	 * Get editable breakpoints.
	 *
	 * Retrieve the editable breakpoints.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @return array Editable breakpoints.
	 */
	public static function get_editable_breakpoints() {
		Plugin::$instance->modules_manager->get_modules( 'dev-tools' )->deprecation->deprecated_function( __METHOD__, '3.2.0' );

		return array_intersect_key( self::get_breakpoints(), array_flip( self::$editable_breakpoints_keys ) );
	}

	/**
	 * Get breakpoints.
	 *
	 * Retrieve the responsive breakpoints.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @return array Responsive breakpoints.
	 */
	public static function get_breakpoints() {
		return array_reduce(
			array_keys( self::$default_breakpoints ), function( $new_array, $breakpoint_key ) {
				if ( ! in_array( $breakpoint_key, self::$editable_breakpoints_keys ) ) {
					$new_array[ $breakpoint_key ] = self::$default_breakpoints[ $breakpoint_key ];
				} else {
					$saved_option = Plugin::$instance->kits_manager->get_current_settings( self::BREAKPOINT_OPTION_PREFIX . $breakpoint_key );

					$new_array[ $breakpoint_key ] = $saved_option ? (int) $saved_option : self::$default_breakpoints[ $breakpoint_key ];
				}

				return $new_array;
			}, []
		);
	}

	/**
	 * @since 2.1.0
	 * @access public
	 * @static
	 */
	public static function has_custom_breakpoints() {
		Plugin::$instance->modules_manager->get_modules( 'dev-tools' )->deprecation->deprecated_function( __METHOD__, '3.2.0', 'Plugin::$instance->breakpoints->has_custom_breakpoints()' );

		return ! ! array_diff( self::$default_breakpoints, self::get_breakpoints() );
	}

	/**
	 * @since 2.1.0
	 * @access public
	 * @static
	 */
	public static function get_stylesheet_templates_path() {
		Plugin::$instance->modules_manager->get_modules( 'dev-tools' )->deprecation->deprecated_function( __METHOD__, '3.2.0', 'Elementor\Core\Breakpoints\Manager::get_stylesheet_templates_path()' );

		return Breakpoints_Manager::get_stylesheet_templates_path();
	}

	/**
	 * @since 2.1.0
	 * @access public
	 * @static
	 */
	public static function compile_stylesheet_templates() {
		Plugin::$instance->modules_manager->get_modules( 'dev-tools' )->deprecation->deprecated_function( __METHOD__, '3.2.0', 'Elementor\Core\Breakpoints\Manager::compile_stylesheet_templates()' );

		Breakpoints_Manager::compile_stylesheet_templates();
	}
}
core/responsive/files/frontend.php000064400000011516151327220420013325 0ustar00<?php

namespace Elementor\Core\Responsive\Files;

use Elementor\Core\Breakpoints\Breakpoint;
use Elementor\Core\Files\Base;
use Elementor\Core\Responsive\Responsive;
use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Frontend extends Base {

	const META_KEY = 'elementor-custom-breakpoints-files';

	private $template_file;

	/**
	 * @since 2.1.0
	 * @access public
	 */
	public function __construct( $file_name, $template_file = null ) {
		$this->template_file = $template_file;

		parent::__construct( $file_name );
	}

	/**
	 * @since 2.1.0
	 * @access public
	 */
	public function parse_content() {
		$breakpoints = Plugin::$instance->breakpoints->get_active_breakpoints();

		$breakpoints_keys = array_keys( $breakpoints );

		$file_content = file_get_contents( $this->template_file );

		// The regex pattern parses placeholders located in the frontend _templates.scss file.
		$file_content = preg_replace_callback( '/ELEMENTOR_SCREEN_([A-Z_]+)(?:_(MIN|MAX|NEXT))/', function ( $placeholder_data ) use ( $breakpoints_keys, $breakpoints ) {
			// Handle BC for legacy template files and Elementor Pro builds.
			$placeholder_data = $this->maybe_convert_placeholder_data( $placeholder_data );

			$breakpoint_index = array_search( strtolower( $placeholder_data[1] ), $breakpoints_keys, true );

			if ( 'DESKTOP' === $placeholder_data[1] ) {
				if ( 'MIN' === $placeholder_data[2] ) {
					$value = Plugin::$instance->breakpoints->get_desktop_min_point();
				} elseif ( isset( $breakpoints['widescreen'] ) ) {
					// If the 'widescreen' breakpoint is active, the Desktop's max value is the Widescreen breakpoint - 1px.
					$value = $breakpoints['widescreen']->get_value() - 1;
				} else {
					// If the 'widescreen' breakpoint is not active, the Desktop device should not have a max value.
					$value = 99999;
				}
			} elseif ( false === $breakpoint_index ) {
				// If the breakpoint in the placeholder is not active - use a -1 value for the media query, to make
				// sure the setting is printed (to avoid a PHP error) but doesn't apply.
				$value = -1;
			} elseif ( 'WIDESCREEN' === $placeholder_data[1] ) {
				$value = $breakpoints['widescreen']->get_value();
			} else {
				$breakpoint_index = array_search( strtolower( $placeholder_data[1] ), $breakpoints_keys, true );

				$is_max_point = 'MAX' === $placeholder_data[2];

				// If the placeholder capture is `MOBILE_NEXT` or `TABLET_NEXT`, the original breakpoint value is used.
				if ( ! $is_max_point && 'NEXT' !== $placeholder_data[2] ) {
					$breakpoint_index--;
				}

				$value = $breakpoints[ $breakpoints_keys[ $breakpoint_index ] ]->get_value();

				if ( ! $is_max_point ) {
					$value++;
				}
			}

			return $value . 'px';
		}, $file_content );

		return $file_content;
	}

	/**
	 * Load meta.
	 *
	 * Retrieve the file meta data.
	 *
	 * @since 2.1.0
	 * @access protected
	 */
	protected function load_meta() {
		$option = $this->load_meta_option();

		$file_meta_key = $this->get_file_meta_key();

		if ( empty( $option[ $file_meta_key ] ) ) {
			return [];
		}

		return $option[ $file_meta_key ];
	}

	/**
	 * Update meta.
	 *
	 * Update the file meta data.
	 *
	 * @since 2.1.0
	 * @access protected
	 *
	 * @param array $meta New meta data.
	 */
	protected function update_meta( $meta ) {
		$option = $this->load_meta_option();

		$option[ $this->get_file_meta_key() ] = $meta;

		update_option( static::META_KEY, $option );
	}

	/**
	 * Delete meta.
	 *
	 * Delete the file meta data.
	 *
	 * @since 2.1.0
	 * @access protected
	 */
	protected function delete_meta() {
		$option = $this->load_meta_option();

		$file_meta_key = $this->get_file_meta_key();

		if ( isset( $option[ $file_meta_key ] ) ) {
			unset( $option[ $file_meta_key ] );
		}

		if ( $option ) {
			update_option( static::META_KEY, $option );
		} else {
			delete_option( static::META_KEY );
		}
	}

	/**
	 * @since 2.1.0
	 * @access private
	 */
	private function get_file_meta_key() {
		return pathinfo( $this->get_file_name(), PATHINFO_FILENAME );
	}

	/**
	 * @since 2.1.0
	 * @access private
	 */
	private function load_meta_option() {
		$option = get_option( static::META_KEY );

		if ( ! $option ) {
			$option = [];
		}

		return $option;
	}

	/**
	 * Maybe Convert Placeholder Data
	 *
	 * Converts responsive placeholders in Elementor CSS template files from the legacy format into the new format.
	 * Used for backwards compatibility for old Pro versions that were built with an Elementor Core version <3.2.0.
	 *
	 * @since 3.2.3
	 *
	 * @param $placeholder_data
	 * @return mixed
	 */
	private function maybe_convert_placeholder_data( $placeholder_data ) {
		switch ( $placeholder_data[1] ) {
			case 'SM':
				$placeholder_data[1] = 'MOBILE';
				break;
			case 'MD':
				$placeholder_data[1] = 'TABLET';
				break;
			case 'LG':
				$placeholder_data[1] = 'DESKTOP';
		}

		return $placeholder_data;
	}
}
core/kits/manager.php000064400000026673151327220420010605 0ustar00<?php
namespace Elementor\Core\Kits;

use Elementor\Core\Base\Document;
use Elementor\Core\Kits\Controls\Repeater;
use Elementor\Core\Kits\Documents\Tabs\Global_Colors;
use Elementor\Core\Kits\Documents\Tabs\Global_Typography;
use Elementor\Plugin;
use Elementor\Core\Files\CSS\Post as Post_CSS;
use Elementor\Core\Files\CSS\Post_Preview as Post_Preview;
use Elementor\Core\Documents_Manager;
use Elementor\Core\Kits\Documents\Kit;
use Elementor\TemplateLibrary\Source_Local;
use Elementor\Utils;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

class Manager {

	const OPTION_ACTIVE = 'elementor_active_kit';

	const E_HASH_COMMAND_OPEN_SITE_SETTINGS = 'e:run:panel/global/open';

	public function get_active_id() {
		return get_option( self::OPTION_ACTIVE );
	}

	public function get_active_kit() {
		$kit = Plugin::$instance->documents->get( $this->get_active_id() );

		if ( ! $this->is_valid_kit( $kit ) ) {
			return $this->get_empty_kit_instance();
		}

		return $kit;
	}

	public function get_active_kit_for_frontend() {
		$kit = Plugin::$instance->documents->get_doc_for_frontend( $this->get_active_id() );

		if ( ! $this->is_valid_kit( $kit ) ) {
			return $this->get_empty_kit_instance();
		}

		return $kit;
	}

	/**
	 * @param $kit
	 *
	 * @return bool
	 */
	private function is_valid_kit( $kit ) {
		return $kit && $kit instanceof Kit && 'trash' !== $kit->get_main_post()->post_status;
	}

	/**
	 * Returns an empty kit for situation when there is no kit in the site.
	 *
	 * @return Kit
	 * @throws \Exception
	 */
	private function get_empty_kit_instance() {
		return new Kit( [
			'settings' => [],
			'post_id' => 0,
		] );
	}

	/**
	 * Checks if specific post is a kit.
	 *
	 * @param $post_id
	 *
	 * @return bool
	 */
	public function is_kit( $post_id ) {
		$document = Plugin::$instance->documents->get( $post_id );

		return $document && $document instanceof Kit && ! $document->is_revision();
	}


	/**
	 * Init kit controls.
	 *
	 * A temp solution in order to avoid init kit group control from within another group control.
	 *
	 * After moving the `default_font` to the kit, the Typography group control cause initialize the kit controls at: https://github.com/elementor/elementor/blob/e6e1db9eddef7e3c1a5b2ba0c2338e2af2a3bfe3/includes/controls/groups/typography.php#L91
	 * and because the group control is a singleton, its args are changed to the last kit group control.
	 */
	public function init_kit_controls() {
		$this->get_active_kit_for_frontend()->get_settings();
	}

	public function get_current_settings( $setting = null ) {
		$kit = $this->get_active_kit_for_frontend();

		if ( ! $kit ) {
			return '';
		}

		return $kit->get_settings( $setting );
	}

	public function create( array $kit_data = [], array $kit_meta_data = [] ) {
		$default_kit_data = [
			'post_status' => 'publish',
		];

		$kit_data = array_merge( $default_kit_data, $kit_data );

		$kit_data['post_type'] = Source_Local::CPT;

		$kit = Plugin::$instance->documents->create( 'kit', $kit_data, $kit_meta_data );

		return $kit->get_id();
	}

	public function create_default() {
		return $this->create( [
			'post_title' => esc_html__( 'Default Kit', 'elementor' ),
		] );
	}

	/**
	 * Create a default kit if needed.
	 *
	 * This action runs on activation hook, all the Plugin components do not exists and
	 * the Document manager and Kits manager instances cannot be used.
	 *
	 * @return int|void|\WP_Error
	 */
	public static function create_default_kit() {
		if ( get_option( self::OPTION_ACTIVE ) ) {
			return;
		}

		$id = wp_insert_post( [
			'post_title' => __( 'Default Kit', 'elementor' ),
			'post_type' => Source_Local::CPT,
			'post_status' => 'publish',
			'meta_input' => [
				'_elementor_edit_mode' => 'builder',
				Document::TYPE_META_KEY => 'kit',
			],
		] );

		update_option( self::OPTION_ACTIVE, $id );

		return $id;
	}

	/**
	 * @param Documents_Manager $documents_manager
	 */
	public function register_document( $documents_manager ) {
		$documents_manager->register_document_type( 'kit', Kit::get_class_full_name() );
	}

	public function localize_settings( $settings ) {
		$kit = $this->get_active_kit();
		$kit_controls = $kit->get_controls();
		$design_system_controls = [
			'colors' => $kit_controls['system_colors']['fields'],
			'typography' => $kit_controls['system_typography']['fields'],
		];

		$settings = array_replace_recursive( $settings, [
			'kit_id' => $kit->get_main_id(),
			'kit_config' => [
				'typography_prefix' => Global_Typography::TYPOGRAPHY_GROUP_PREFIX,
				'design_system_controls' => $design_system_controls,
			],
			'user' => [
				'can_edit_kit' => $kit->is_editable_by_current_user(),
			],
		] );

		return $settings;
	}

	public function preview_enqueue_styles() {
		$kit = $this->get_kit_for_frontend();

		if ( $kit ) {
			// On preview, the global style is not enqueued.
			$this->frontend_before_enqueue_styles();

			Plugin::$instance->frontend->print_fonts_links();
		}
	}

	public function frontend_before_enqueue_styles() {
		$kit = $this->get_kit_for_frontend();

		if ( $kit ) {
			if ( $kit->is_autosave() ) {
				$css_file = Post_Preview::create( $kit->get_id() );
			} else {
				$css_file = Post_CSS::create( $kit->get_id() );
			}

			$css_file->enqueue();
		}
	}

	public function render_panel_html() {
		require __DIR__ . '/views/panel.php';
	}

	public function get_kit_for_frontend() {
		$kit = false;
		$active_kit = $this->get_active_kit();
		$is_kit_preview = is_preview() && isset( $_GET['preview_id'] ) && $active_kit->get_main_id() === (int) $_GET['preview_id'];

		if ( $is_kit_preview ) {
			$kit = Plugin::$instance->documents->get_doc_or_auto_save( $active_kit->get_main_id(), get_current_user_id() );
		} elseif ( 'publish' === $active_kit->get_main_post()->post_status ) {
			$kit = $active_kit;
		}

		return $kit;
	}

	public function update_kit_settings_based_on_option( $key, $value ) {
		/** @var Kit $active_kit */
		$active_kit = $this->get_active_kit();

		if ( $active_kit->is_saving() ) {
			return;
		}

		$active_kit->update_settings( [ $key => $value ] );
	}

	/**
	 * Map Scheme To Global
	 *
	 * Convert a given scheme value to its corresponding default global value
	 *
	 * @param string $type 'color'/'typography'
	 * @param $value
	 * @return mixed
	 */
	private function map_scheme_to_global( $type, $value ) {
		$schemes_to_globals_map = [
			'color' => [
				'1' => Global_Colors::COLOR_PRIMARY,
				'2' => Global_Colors::COLOR_SECONDARY,
				'3' => Global_Colors::COLOR_TEXT,
				'4' => Global_Colors::COLOR_ACCENT,
			],
			'typography' => [
				'1' => Global_Typography::TYPOGRAPHY_PRIMARY,
				'2' => Global_Typography::TYPOGRAPHY_SECONDARY,
				'3' => Global_Typography::TYPOGRAPHY_TEXT,
				'4' => Global_Typography::TYPOGRAPHY_ACCENT,
			],
		];

		return $schemes_to_globals_map[ $type ][ $value ];
	}

	/**
	 * Convert Scheme to Default Global
	 *
	 * If a control has a scheme property, convert it to a default Global.
	 *
	 * @param $scheme - Control scheme property
	 * @return array - Control/group control args
	 * @since 3.0.0
	 * @access public
	 */
	public function convert_scheme_to_global( $scheme ) {
		if ( isset( $scheme['type'] ) && isset( $scheme['value'] ) ) {
			//_deprecated_argument( $args['scheme'], '3.0.0', 'Schemes are now deprecated - use $args[\'global\'] instead.' );
			return $this->map_scheme_to_global( $scheme['type'], $scheme['value'] );
		}

		// Typography control 'scheme' properties usually only include the string with the typography value ('1'-'4').
		return $this->map_scheme_to_global( 'typography', $scheme );
	}

	public function register_controls() {
		$controls_manager = Plugin::$instance->controls_manager;

		$controls_manager->register_control( Repeater::CONTROL_TYPE, new Repeater() );
	}

	public function is_custom_colors_enabled() {
		return ! get_option( 'elementor_disable_color_schemes' );
	}

	public function is_custom_typography_enabled() {
		return ! get_option( 'elementor_disable_typography_schemes' );
	}

	/**
	 * Add kit wrapper body class.
	 *
	 * It should be added even for non Elementor pages,
	 * in order to support embedded templates.
	 */
	private function add_body_class() {
		$kit = $this->get_kit_for_frontend();

		if ( $kit ) {
			Plugin::$instance->frontend->add_body_class( 'elementor-kit-' . $kit->get_main_id() );
		}
	}

	/**
	 * Send a confirm message before move a kit to trash, or if delete permanently not for trash.
	 *
	 * @param       $post_id
	 * @param false $is_permanently_delete
	 */
	private function before_delete_kit( $post_id, $is_permanently_delete = false ) {
		$document = Plugin::$instance->documents->get( $post_id );

		if (
			! $document ||
			! $this->is_kit( $post_id ) ||
			isset( $_GET['force_delete_kit'] ) ||  // phpcs:ignore -- nonce validation is not require here.
			( $is_permanently_delete && $document->is_trash() )
		) {
			return;
		}

		ob_start();
		require __DIR__ . '/views/trash-kit-confirmation.php';

		$confirmation_content = ob_get_clean();

		// PHPCS - the content does not contain user input value.
		wp_die( new \WP_Error( 'cant_delete_kit', $confirmation_content ) ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
	}

	/**
	 * Add 'Edit with elementor -> Site Settings' in admin bar.
	 *
	 * @param [] $admin_bar_config
	 *
	 * @return array $admin_bar_config
	 */
	private function add_menu_in_admin_bar( $admin_bar_config ) {
		$document = Plugin::$instance->documents->get( get_the_ID() );

		if ( ! $document || ! $document->is_built_with_elementor() ) {
			$recent_edited_post = Utils::get_recently_edited_posts_query( [
				'posts_per_page' => 1,
			] );

			if ( $recent_edited_post->post_count ) {
				$posts = $recent_edited_post->get_posts();
				$document = Plugin::$instance->documents->get( reset( $posts )->ID );
			}
		}

		if ( $document ) {
			$admin_bar_config['elementor_edit_page']['children'][] = [
				'id' => 'elementor_site_settings',
				'title' => esc_html__( 'Site Settings', 'elementor' ),
				'sub_title' => esc_html__( 'Site', 'elementor' ),
				'href' => $document->get_edit_url() . '#' . self::E_HASH_COMMAND_OPEN_SITE_SETTINGS,
				'class' => 'elementor-site-settings',
				'parent_class' => 'elementor-second-section',
			];
		}

		return $admin_bar_config;
	}

	public function __construct() {
		add_action( 'elementor/documents/register', [ $this, 'register_document' ] );
		add_filter( 'elementor/editor/localize_settings', [ $this, 'localize_settings' ] );
		add_filter( 'elementor/editor/footer', [ $this, 'render_panel_html' ] );
		add_action( 'elementor/frontend/after_enqueue_styles', [ $this, 'frontend_before_enqueue_styles' ], 0 );
		add_action( 'elementor/preview/enqueue_styles', [ $this, 'preview_enqueue_styles' ], 0 );
		add_action( 'elementor/controls/controls_registered', [ $this, 'register_controls' ] );

		add_action( 'wp_trash_post', function ( $post_id ) {
			$this->before_delete_kit( $post_id );
		} );

		add_action( 'before_delete_post', function ( $post_id ) {
			$this->before_delete_kit( $post_id, true );
		} );

		add_action( 'update_option_blogname', function ( $old_value, $value ) {
			$this->update_kit_settings_based_on_option( 'site_name', $value );
		}, 10, 2 );

		add_action( 'update_option_blogdescription', function ( $old_value, $value ) {
			$this->update_kit_settings_based_on_option( 'site_description', $value );
		}, 10, 2 );

		add_action( 'wp_head', function() {
			$this->add_body_class();
		} );

		add_filter( 'elementor/frontend/admin_bar/settings', function ( $admin_bar_config ) {
			return $this->add_menu_in_admin_bar( $admin_bar_config );
		}, 9 /* Before site-editor (theme-builder) */ );
	}
}
core/kits/documents/kit.php000064400000013776151327220420011763 0ustar00<?php
namespace Elementor\Core\Kits\Documents;

use Elementor\Core\DocumentTypes\PageBase;
use Elementor\Core\Files\CSS\Post as Post_CSS;
use Elementor\Core\Kits\Documents\Tabs;
use Elementor\Core\Settings\Manager as SettingsManager;
use Elementor\Core\Settings\Page\Manager as PageManager;
use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Kit extends PageBase {
	/**
	 * @var Tabs\Tab_Base[]
	 */
	private $tabs;

	public function __construct( array $data = [] ) {
		parent::__construct( $data );

		$this->register_tabs();
	}

	public static function get_properties() {
		$properties = parent::get_properties();

		$properties['has_elements'] = false;
		$properties['show_in_finder'] = false;
		$properties['show_on_admin_bar'] = false;
		$properties['edit_capability'] = 'edit_theme_options';
		$properties['support_kit'] = true;

		return $properties;
	}

	public static function get_type() {
		return 'kit';
	}

	public static function get_title() {
		return esc_html__( 'Kit', 'elementor' );
	}

	/**
	 * @return Tabs\Tab_Base[]
	 */
	public function get_tabs() {
		return $this->tabs;
	}

	/**
	 * Retrieve a tab by ID.
	 *
	 * @param $id
	 *
	 * @return Tabs\Tab_Base
	 */
	public function get_tab( $id ) {
		return self::get_items( $this->get_tabs(), $id );
	}

	protected function get_have_a_look_url() {
		return '';
	}

	public static function get_editor_panel_config() {
		$config = parent::get_editor_panel_config();
		$config['default_route'] = 'panel/global/menu';

		$config['needHelpUrl'] = 'https://go.elementor.com/global-settings';

		return $config;
	}

	public function get_css_wrapper_selector() {
		return '.elementor-kit-' . $this->get_main_id();
	}

	public function save( $data ) {
		foreach ( $this->tabs as $tab ) {
			$data = $tab->before_save( $data );
		}

		$saved = parent::save( $data );

		if ( ! $saved ) {
			return false;
		}

		// Should set is_saving to true, to avoid infinite loop when updating
		// settings like: 'site_name" or "site_description".
		$this->set_is_saving( true );

		foreach ( $this->tabs as $tab ) {
			$tab->on_save( $data );
		}

		$this->set_is_saving( false );

		// When deleting a global color or typo, the css variable still exists in the frontend
		// but without any value and it makes the element to be un styled even if there is a default style for the base element,
		// for that reason this method removes css files of the entire site.
		Plugin::instance()->files_manager->clear_cache();

		return $saved;
	}

	/**
	 * Register a kit settings menu.
	 *
	 * @param $id
	 * @param $class
	 */
	public function register_tab( $id, $class ) {
		$this->tabs[ $id ] = new $class( $this );
	}

	/**
	 * @inheritDoc
	 */
	protected function get_initial_config() {
		$config = parent::get_initial_config();

		foreach ( $this->tabs as $id => $tab ) {
			$config['tabs'][ $id ] = [
				'title' => $tab->get_title(),
				'icon' => $tab->get_icon(),
				'group' => $tab->get_group(),
				'helpUrl' => $tab->get_help_url(),
				'additionalContent' => $tab->get_additional_tab_content(),
			];
		}

		return $config;
	}

	/**
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		$is_edit_mode = Plugin::$instance->editor->is_edit_mode();

		if ( ! $is_edit_mode ) {
			// In the Front End, the Kit is initialized before CSS is generated, so we always duplicate controls in
			// the kit.
			$initial_responsive_controls_duplication_mode = Plugin::$instance->breakpoints->get_responsive_control_duplication_mode();

			Plugin::$instance->breakpoints->set_responsive_control_duplication_mode( 'on' );
		}

		$this->register_document_controls();

		foreach ( $this->tabs as $tab ) {
			$tab->register_controls();
		}

		if ( ! $is_edit_mode ) {
			Plugin::$instance->breakpoints->set_responsive_control_duplication_mode( $initial_responsive_controls_duplication_mode );
		}
	}

	protected function get_post_statuses() {
		return [
			'draft' => sprintf( '%s (%s)', esc_html__( 'Disabled', 'elementor' ), esc_html__( 'Draft', 'elementor' ) ),
			'publish' => esc_html__( 'Published', 'elementor' ),
		];
	}

	public function add_repeater_row( $control_id, $item ) {
		$meta_key = PageManager::META_KEY;
		$document_settings = $this->get_meta( $meta_key );

		if ( ! $document_settings ) {
			$document_settings = [];
		}

		if ( ! isset( $document_settings[ $control_id ] ) ) {
			$document_settings[ $control_id ] = [];
		}

		$document_settings[ $control_id ][] = $item;

		$page_settings_manager = SettingsManager::get_settings_managers( 'page' );
		$page_settings_manager->save_settings( $document_settings, $this->get_id() );

		/** @var Kit $autosave **/
		$autosave = $this->get_autosave();

		if ( $autosave ) {
			$autosave->add_repeater_row( $control_id, $item );
		}

		// Remove Post CSS.
		$post_css = Post_CSS::create( $this->post->ID );

		$post_css->delete();

		// Refresh Cache.
		Plugin::$instance->documents->get( $this->post->ID, false );

		$post_css = Post_CSS::create( $this->post->ID );

		$post_css->enqueue();
	}

	/**
	 * Register default tabs (menu pages) for site settings.
	 */
	private function register_tabs() {
		$tabs = [
			'global-colors' => Tabs\Global_Colors::class,
			'global-typography' => Tabs\Global_Typography::class,
			'theme-style-typography' => Tabs\Theme_Style_Typography::class,
			'theme-style-buttons' => Tabs\Theme_Style_Buttons::class,
			'theme-style-images' => Tabs\Theme_Style_Images::class,
			'theme-style-form-fields' => Tabs\Theme_Style_Form_Fields::class,
			'settings-site-identity' => Tabs\Settings_Site_Identity::class,
			'settings-background' => Tabs\Settings_Background::class,
			'settings-layout' => Tabs\Settings_Layout::class,
			'settings-lightbox' => Tabs\Settings_Lightbox::class,
			// TODO: Revert when Page Transitions will be released.
			//'settings-page-transitions' => Tabs\Settings_Page_Transitions::class,
			'settings-custom-css' => Tabs\Settings_Custom_CSS::class,
		];

		foreach ( $tabs as $id => $class ) {
			$this->register_tab( $id, $class );
		}

		do_action( 'elementor/kit/register_tabs', $this );
	}
}
core/kits/documents/tabs/theme-style-typography.php000064400000011575151327220420016564 0ustar00<?php

namespace Elementor\Core\Kits\Documents\Tabs;

use Elementor\Controls_Manager;
use Elementor\Group_Control_Typography;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Theme_Style_Typography extends Tab_Base {

	public function get_id() {
		return 'theme-style-typography';
	}

	public function get_title() {
		return esc_html__( 'Typography', 'elementor' );
	}

	public function get_group() {
		return 'theme-style';
	}

	public function get_icon() {
		return 'eicon-typography-1';
	}

	public function get_help_url() {
		return 'https://go.elementor.com/global-theme-style-typography';
	}

	public function register_tab_controls() {
		$this->start_controls_section(
			'section_typography',
			[
				'label' => esc_html__( 'Typography', 'elementor' ),
				'tab' => $this->get_id(),
			]
		);

		$this->add_default_globals_notice();

		$this->add_control(
			'body_heading',
			[
				'type' => Controls_Manager::HEADING,
				'label' => esc_html__( 'Body', 'elementor' ),
			]
		);

		$this->add_control(
			'body_color',
			[
				'label' => esc_html__( 'Text Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'dynamic' => [],
				'selectors' => [
					'{{WRAPPER}}' => 'color: {{VALUE}};',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			[
				'label' => esc_html__( 'Typography', 'elementor' ),
				'name' => 'body_typography',
				'selector' => '{{WRAPPER}}',
			]
		);

		$this->add_responsive_control(
			'paragraph_spacing',
			[
				'label' => esc_html__( 'Paragraph Spacing', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'selectors' => [
					'{{WRAPPER}} p' => 'margin-bottom: {{SIZE}}{{UNIT}}',
				],
				'range' => [
					'px' => [
						'min' => 0,
						'max' => 100,
					],
					'em' => [
						'min' => 0.1,
						'max' => 20,
					],
					'vh' => [
						'min' => 0,
						'max' => 100,
					],
				],
				'size_units' => [ 'px', 'em', 'vh' ],
			]
		);

		//Link Selectors
		$link_selectors = [
			'{{WRAPPER}} a',
		];

		$link_hover_selectors = [
			'{{WRAPPER}} a:hover',
		];

		$link_selectors = implode( ',', $link_selectors );
		$link_hover_selectors = implode( ',', $link_hover_selectors );

		$this->add_control(
			'link_heading',
			[
				'type' => Controls_Manager::HEADING,
				'label' => esc_html__( 'Link', 'elementor' ),
				'separator' => 'before',
			]
		);

		$this->start_controls_tabs( 'tabs_link_style' );

		$this->start_controls_tab(
			'tab_link_normal',
			[
				'label' => esc_html__( 'Normal', 'elementor' ),
			]
		);

		$this->add_control(
			'link_normal_color',
			[
				'label' => esc_html__( 'Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'dynamic' => [],
				'selectors' => [
					$link_selectors => 'color: {{VALUE}};',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			[
				'label' => esc_html__( 'Typography', 'elementor' ),
				'name' => 'link_normal_typography',
				'selector' => $link_selectors,
			]
		);

		$this->end_controls_tab();

		$this->start_controls_tab(
			'tab_link_hover',
			[
				'label' => esc_html__( 'Hover', 'elementor' ),
			]
		);

		$this->add_control(
			'link_hover_color',
			[
				'label' => esc_html__( 'Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'dynamic' => [],
				'selectors' => [
					$link_hover_selectors => 'color: {{VALUE}};',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			[
				'label' => esc_html__( 'Typography', 'elementor' ),
				'name' => 'link_hover_typography',
				'selector' => $link_hover_selectors,
			]
		);

		$this->end_controls_tab();

		$this->end_controls_tabs();

		// Headings.
		$this->add_element_controls( esc_html__( 'H1', 'elementor' ), 'h1', '{{WRAPPER}} h1' );
		$this->add_element_controls( esc_html__( 'H2', 'elementor' ), 'h2', '{{WRAPPER}} h2' );
		$this->add_element_controls( esc_html__( 'H3', 'elementor' ), 'h3', '{{WRAPPER}} h3' );
		$this->add_element_controls( esc_html__( 'H4', 'elementor' ), 'h4', '{{WRAPPER}} h4' );
		$this->add_element_controls( esc_html__( 'H5', 'elementor' ), 'h5', '{{WRAPPER}} h5' );
		$this->add_element_controls( esc_html__( 'H6', 'elementor' ), 'h6', '{{WRAPPER}} h6' );

		$this->end_controls_section();
	}

	private function add_element_controls( $label, $prefix, $selector ) {
		$this->add_control(
			$prefix . '_heading',
			[
				'type' => Controls_Manager::HEADING,
				'label' => $label,
				'separator' => 'before',
			]
		);

		$this->add_control(
			$prefix . '_color',
			[
				'label' => esc_html__( 'Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'dynamic' => [],
				'selectors' => [
					$selector => 'color: {{VALUE}};',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			[
				'label' => esc_html__( 'Typography', 'elementor' ),
				'name' => $prefix . '_typography',
				'selector' => $selector,
			]
		);
	}
}
core/kits/documents/tabs/global-colors.php000064400000004645151327220420014657 0ustar00<?php
namespace Elementor\Core\Kits\Documents\Tabs;

use Elementor\Controls_Manager;
use Elementor\Core\Kits\Controls\Repeater as Global_Style_Repeater;
use Elementor\Repeater;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Global_Colors extends Tab_Base {

	const COLOR_PRIMARY = 'globals/colors?id=primary';
	const COLOR_SECONDARY = 'globals/colors?id=secondary';
	const COLOR_TEXT = 'globals/colors?id=text';
	const COLOR_ACCENT = 'globals/colors?id=accent';

	public function get_id() {
		return 'global-colors';
	}

	public function get_title() {
		return esc_html__( 'Global Colors', 'elementor' );
	}

	public function get_group() {
		return 'global';
	}

	public function get_icon() {
		return 'eicon-global-colors';
	}

	public function get_help_url() {
		return 'https://go.elementor.com/global-colors';
	}

	protected function register_tab_controls() {
		$this->start_controls_section(
			'section_global_colors',
			[
				'label' => esc_html__( 'Global Colors', 'elementor' ),
				'tab' => $this->get_id(),
			]
		);

		$repeater = new Repeater();

		$repeater->add_control(
			'title',
			[
				'type' => Controls_Manager::TEXT,
				'label_block' => true,
				'required' => true,
			]
		);

		// Color Value
		$repeater->add_control(
			'color',
			[
				'type' => Controls_Manager::COLOR,
				'label_block' => true,
				'dynamic' => [],
				'selectors' => [
					'{{WRAPPER}}' => '--e-global-color-{{_id.VALUE}}: {{VALUE}}',
				],
				'global' => [
					'active' => false,
				],
			]
		);

		$default_colors = [
			[
				'_id' => 'primary',
				'title' => esc_html__( 'Primary', 'elementor' ),
				'color' => '#6EC1E4',
			],
			[
				'_id' => 'secondary',
				'title' => esc_html__( 'Secondary', 'elementor' ),
				'color' => '#54595F',
			],
			[
				'_id' => 'text',
				'title' => esc_html__( 'Text', 'elementor' ),
				'color' => '#7A7A7A',
			],
			[
				'_id' => 'accent',
				'title' => esc_html__( 'Accent', 'elementor' ),
				'color' => '#61CE70',
			],
		];

		$this->add_control(
			'system_colors',
			[
				'type' => Global_Style_Repeater::CONTROL_TYPE,
				'fields' => $repeater->get_controls(),
				'default' => $default_colors,
				'item_actions' => [
					'add' => false,
					'remove' => false,
				],
			]
		);

		$this->add_control(
			'custom_colors',
			[
				'type' => Global_Style_Repeater::CONTROL_TYPE,
				'fields' => $repeater->get_controls(),
			]
		);

		$this->end_controls_section();
	}
}
core/kits/documents/tabs/global-typography.php000064400000011236151327220420015556 0ustar00<?php
namespace Elementor\Core\Kits\Documents\Tabs;

use Elementor\Controls_Manager;
use Elementor\Core\Kits\Controls\Repeater as Global_Style_Repeater;
use Elementor\Group_Control_Typography;
use Elementor\Repeater;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Global_Typography extends Tab_Base {

	const TYPOGRAPHY_PRIMARY = 'globals/typography?id=primary';
	const TYPOGRAPHY_SECONDARY = 'globals/typography?id=secondary';
	const TYPOGRAPHY_TEXT = 'globals/typography?id=text';
	const TYPOGRAPHY_ACCENT = 'globals/typography?id=accent';

	const TYPOGRAPHY_NAME = 'typography';
	const TYPOGRAPHY_GROUP_PREFIX = self::TYPOGRAPHY_NAME . '_';

	public function get_id() {
		return 'global-typography';
	}

	public function get_title() {
		return esc_html__( 'Global Fonts', 'elementor' );
	}

	public function get_group() {
		return 'global';
	}

	public function get_icon() {
		return 'eicon-t-letter';
	}

	public function get_help_url() {
		return 'https://go.elementor.com/global-fonts';
	}

	protected function register_tab_controls() {
		$this->start_controls_section(
			'section_text_style',
			[
				'label' => esc_html__( 'Global Fonts', 'elementor' ),
				'tab' => $this->get_id(),
			]
		);

		$repeater = new Repeater();

		$repeater->add_control(
			'title',
			[
				'type' => Controls_Manager::TEXT,
				'label_block' => true,
				'required' => true,
			]
		);

		$repeater->add_group_control(
			Group_Control_Typography::get_type(),
			[
				'name' => self::TYPOGRAPHY_NAME,
				'label' => '',
				'global' => [
					'active' => false,
				],
				'fields_options' => [
					'font_family' => [
						'selectors' => [
							'{{SELECTOR}}' => '--e-global-typography-{{external._id.VALUE}}-font-family: "{{VALUE}}"',
						],
					],
					'font_size' => [
						'selectors' => [
							'{{SELECTOR}}' => '--e-global-typography-{{external._id.VALUE}}-font-size: {{SIZE}}{{UNIT}}',
						],
					],
					'font_weight' => [
						'selectors' => [
							'{{SELECTOR}}' => '--e-global-typography-{{external._id.VALUE}}-font-weight: {{VALUE}}',
						],
					],
					'text_transform' => [
						'selectors' => [
							'{{SELECTOR}}' => '--e-global-typography-{{external._id.VALUE}}-text-transform: {{VALUE}}',
						],
					],
					'font_style' => [
						'selectors' => [
							'{{SELECTOR}}' => '--e-global-typography-{{external._id.VALUE}}-font-style: {{VALUE}}',
						],
					],
					'text_decoration' => [
						'selectors' => [
							'{{SELECTOR}}' => '--e-global-typography-{{external._id.VALUE}}-text-decoration: {{VALUE}}',
						],
					],
					'line_height' => [
						'selectors' => [
							'{{SELECTOR}}' => '--e-global-typography-{{external._id.VALUE}}-line-height: {{SIZE}}{{UNIT}}',
						],
					],
					'letter_spacing' => [
						'selectors' => [
							'{{SELECTOR}}' => '--e-global-typography-{{external._id.VALUE}}-letter-spacing: {{SIZE}}{{UNIT}}',
						],
					],
				],
			]
		);

		$typography_key = self::TYPOGRAPHY_GROUP_PREFIX . 'typography';
		$font_family_key = self::TYPOGRAPHY_GROUP_PREFIX . 'font_family';
		$font_weight_key = self::TYPOGRAPHY_GROUP_PREFIX . 'font_weight';

		$default_typography = [
			[
				'_id' => 'primary',
				'title' => esc_html__( 'Primary', 'elementor' ),
				$typography_key => 'custom',
				$font_family_key => 'Roboto',
				$font_weight_key => '600',
			],
			[
				'_id' => 'secondary',
				'title' => esc_html__( 'Secondary', 'elementor' ),
				$typography_key => 'custom',
				$font_family_key => 'Roboto Slab',
				$font_weight_key => '400',
			],
			[
				'_id' => 'text',
				'title' => esc_html__( 'Text', 'elementor' ),
				$typography_key => 'custom',
				$font_family_key => 'Roboto',
				$font_weight_key => '400',
			],
			[
				'_id' => 'accent',
				'title' => esc_html__( 'Accent', 'elementor' ),
				$typography_key => 'custom',
				$font_family_key => 'Roboto',
				$font_weight_key => '500',
			],
		];

		$this->add_control(
			'system_typography',
			[
				'type' => Global_Style_Repeater::CONTROL_TYPE,
				'fields' => $repeater->get_controls(),
				'default' => $default_typography,
				'item_actions' => [
					'add' => false,
					'remove' => false,
				],
			]
		);

		$this->add_control(
			'custom_typography',
			[
				'type' => Global_Style_Repeater::CONTROL_TYPE,
				'fields' => $repeater->get_controls(),
			]
		);

		$this->add_control(
			'default_generic_fonts',
			[
				'label' => esc_html__( 'Fallback Font Family', 'elementor' ),
				'type' => Controls_Manager::TEXT,
				'default' => 'Sans-serif',
				'description' => esc_html__( 'The list of fonts used if the chosen font is not available.', 'elementor' ),
				'label_block' => true,
				'separator' => 'before',
			]
		);

		$this->end_controls_section();
	}
}
core/kits/documents/tabs/settings-layout.php000064400000024576151327220420015300 0ustar00<?php
namespace Elementor\Core\Kits\Documents\Tabs;

use Elementor\Core\Breakpoints\Breakpoint;
use Elementor\Core\Breakpoints\Manager as Breakpoints_Manager;
use Elementor\Plugin;
use Elementor\Controls_Manager;
use Elementor\Core\Base\Document;
use Elementor\Modules\PageTemplates\Module as PageTemplatesModule;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Settings_Layout extends Tab_Base {

	const ACTIVE_BREAKPOINTS_CONTROL_ID = 'active_breakpoints';

	public function get_id() {
		return 'settings-layout';
	}

	public function get_title() {
		return esc_html__( 'Layout', 'elementor' );
	}

	public function get_group() {
		return 'settings';
	}

	public function get_icon() {
		return 'eicon-layout-settings';
	}

	public function get_help_url() {
		return 'https://go.elementor.com/global-layout';
	}

	protected function register_tab_controls() {
		$breakpoints_default_config = Breakpoints_Manager::get_default_config();
		$breakpoint_key_mobile = Breakpoints_Manager::BREAKPOINT_KEY_MOBILE;
		$breakpoint_key_tablet = Breakpoints_Manager::BREAKPOINT_KEY_TABLET;

		$this->start_controls_section(
			'section_' . $this->get_id(),
			[
				'label' => esc_html__( 'Layout Settings', 'elementor' ),
				'tab' => $this->get_id(),
			]
		);

		$this->add_responsive_control(
			'container_width',
			[
				'label' => esc_html__( 'Content Width', 'elementor' ) . ' (px)',
				'type' => Controls_Manager::SLIDER,
				'default' => [
					'size' => '1140',
				],
				'tablet_default' => [
					'size' => $breakpoints_default_config[ $breakpoint_key_tablet ]['default_value'],
				],
				'mobile_default' => [
					'size' => $breakpoints_default_config[ $breakpoint_key_mobile ]['default_value'],
				],
				'range' => [
					'px' => [
						'min' => 300,
						'max' => 1500,
						'step' => 10,
					],
				],
				'description' => esc_html__( 'Sets the default width of the content area (Default: 1140)', 'elementor' ),
				'selectors' => [
					'.elementor-section.elementor-section-boxed > .elementor-container' => 'max-width: {{SIZE}}{{UNIT}}',
				],
			]
		);

		$this->add_control(
			'space_between_widgets',
			[
				'label' => esc_html__( 'Widgets Space', 'elementor' ) . ' (px)',
				'type' => Controls_Manager::SLIDER,
				'default' => [
					'size' => 20,
				],
				'range' => [
					'px' => [
						'min' => 0,
						'max' => 40,
					],
				],
				'placeholder' => '20',
				'description' => esc_html__( 'Sets the default space between widgets (Default: 20)', 'elementor' ),
				'selectors' => [
					'.elementor-widget:not(:last-child)' => 'margin-bottom: {{SIZE}}{{UNIT}}',
				],
			]
		);

		$this->add_control(
			'page_title_selector',
			[
				'label' => esc_html__( 'Page Title Selector', 'elementor' ),
				'type' => Controls_Manager::TEXT,
				'default' => 'h1.entry-title',
				'placeholder' => 'h1.entry-title',
				'description' => esc_html__( 'Elementor lets you hide the page title. This works for themes that have "h1.entry-title" selector. If your theme\'s selector is different, please enter it above.', 'elementor' ),
				'label_block' => true,
				'selectors' => [
					// Hack to convert the value into a CSS selector.
					'' => '}{{VALUE}}{display: var(--page-title-display)',
				],
			]
		);

		$this->add_control(
			'stretched_section_container',
			[
				'label' => esc_html__( 'Stretched Section Fit To', 'elementor' ),
				'type' => Controls_Manager::TEXT,
				'placeholder' => 'body',
				'description' => esc_html__( 'Enter parent element selector to which stretched sections will fit to (e.g. #primary / .wrapper / main etc). Leave blank to fit to page width.', 'elementor' ),
				'label_block' => true,
				'frontend_available' => true,
			]
		);

		/**
		 * @var PageTemplatesModule $page_templates_module
		 */
		$page_templates_module = Plugin::$instance->modules_manager->get_modules( 'page-templates' );
		$page_templates = $page_templates_module->add_page_templates( [], null, null );

		// Removes the Theme option from the templates because 'default' is already handled.
		unset( $page_templates[ PageTemplatesModule::TEMPLATE_THEME ] );

		$page_template_control_options = [
			'label' => esc_html__( 'Default Page Layout', 'elementor' ),
			'options' => [
				// This is here because the "Theme" string is different than the default option's string.
				'default' => esc_html__( 'Theme', 'elementor' ),
			] + $page_templates,
		];

		$page_templates_module->add_template_controls( $this->parent, 'default_page_template', $page_template_control_options );

		$this->end_controls_section();

		$this->start_controls_section(
			'section_breakpoints',
			[
				'label' => esc_html__( 'Breakpoints', 'elementor' ),
				'tab' => $this->get_id(),
			]
		);

		$prefix = Breakpoints_Manager::BREAKPOINT_SETTING_PREFIX;
		$options = [];

		foreach ( $breakpoints_default_config as $breakpoint_key => $breakpoint ) {
			$options[ $prefix . $breakpoint_key ] = $breakpoint['label'];
		}

		if ( Plugin::$instance->experiments->is_feature_active( 'additional_custom_breakpoints' ) ) {
			$active_breakpoints_control_type = Controls_Manager::SELECT2;
		} else {
			$active_breakpoints_control_type = Controls_Manager::HIDDEN;
		}

		$this->add_control(
			self::ACTIVE_BREAKPOINTS_CONTROL_ID,
			[
				'label' => esc_html__( 'Active Breakpoints', 'elementor' ),
				'type' => $active_breakpoints_control_type,
				'description' => esc_html__( 'Mobile and Tablet options cannot be deleted.', 'elementor' ),
				'options' => $options,
				'default' => [
					$prefix . $breakpoint_key_mobile,
					$prefix . $breakpoint_key_tablet,
				],
				'select2options' => [
					'allowClear' => false,
				],
				'lockedOptions' => [
					$prefix . $breakpoint_key_mobile,
					$prefix . $breakpoint_key_tablet,
				],
				'label_block' => true,
				'render_type' => 'none',
				'frontend_available' => true,
				'multiple' => true,
			]
		);

		$this->add_breakpoints_controls();

		// Include the old mobile and tablet breakpoint controls as hidden for backwards compatibility.
		$this->add_control( 'viewport_md', [ 'type' => Controls_Manager::HIDDEN ] );
		$this->add_control( 'viewport_lg', [ 'type' => Controls_Manager::HIDDEN ] );

		$this->end_controls_section();
	}

	/**
	 * Before Save
	 *
	 * Runs Before the Kit document is saved.
	 *
	 * For backwards compatibility, when the mobile and tablet breakpoints are updated, we also update the
	 * old breakpoint settings ('viewport_md', 'viewport_lg' ) with the saved values + 1px. The reason 1px
	 * is added is because the old breakpoints system was min-width based, and the new system introduced in
	 * Elementor v3.2.0 is max-width based.
	 *
	 * @since 3.2.0
	 *
	 * @param array $data
	 * @return array $data
	 */
	public function before_save( array $data ) {
		// When creating a default kit, $data['settings'] is empty and should remain empty, so settings.
		if ( empty( $data['settings'] ) ) {
			return $data;
		}

		$prefix = Breakpoints_Manager::BREAKPOINT_SETTING_PREFIX;
		$mobile_breakpoint_key = $prefix . Breakpoints_Manager::BREAKPOINT_KEY_MOBILE;
		$tablet_breakpoint_key = $prefix . Breakpoints_Manager::BREAKPOINT_KEY_TABLET;

		$default_breakpoint_config = Breakpoints_Manager::get_default_config();

		// Update the old mobile breakpoint. If the setting is empty, use the default value.
		$data['settings'][ $prefix . 'md' ] = empty( $data['settings'][ $mobile_breakpoint_key ] )
			? $default_breakpoint_config[ Breakpoints_Manager::BREAKPOINT_KEY_MOBILE ]['default_value'] + 1
			: $data['settings'][ $mobile_breakpoint_key ] + 1;

		// Update the old tablet breakpoint. If the setting is empty, use the default value.
		$data['settings'][ $prefix . 'lg' ] = empty( $data['settings'][ $tablet_breakpoint_key ] )
			? $default_breakpoint_config[ Breakpoints_Manager::BREAKPOINT_KEY_TABLET ]['default_value'] + 1
			: $data['settings'][ $tablet_breakpoint_key ] + 1;

		return $data;
	}

	public function on_save( $data ) {
		if ( ! isset( $data['settings'] ) || ( isset( $data['settings']['post_status'] ) && Document::STATUS_PUBLISH !== $data['settings']['post_status'] ) ) {
			return;
		}

		$should_compile_css = false;

		$breakpoints_default_config = Breakpoints_Manager::get_default_config();

		foreach ( $breakpoints_default_config as $breakpoint_key => $default_config ) {
			$breakpoint_setting_key = Breakpoints_Manager::BREAKPOINT_SETTING_PREFIX . $breakpoint_key;

			if ( isset( $data['settings'][ $breakpoint_setting_key ] ) ) {
				$should_compile_css = true;
			}
		}

		if ( $should_compile_css ) {
			Breakpoints_Manager::compile_stylesheet_templates();
		}
	}

	private function add_breakpoints_controls() {
		$default_breakpoints_config = Breakpoints_Manager::get_default_config();
		$prefix = Breakpoints_Manager::BREAKPOINT_SETTING_PREFIX;

		// If the ACB experiment is inactive, only add the mobile and tablet controls.
		if ( ! Plugin::$instance->experiments->is_feature_active( 'additional_custom_breakpoints' ) ) {
			$default_breakpoints_config = array_intersect_key( $default_breakpoints_config, array_flip( [ Breakpoints_Manager::BREAKPOINT_KEY_MOBILE, Breakpoints_Manager::BREAKPOINT_KEY_TABLET ] ) );
		}

		// Add a control for each of the **default** breakpoints.
		foreach ( $default_breakpoints_config as $breakpoint_key => $default_breakpoint_config ) {
			$this->add_control(
				'breakpoint_' . $breakpoint_key . '_heading',
				[
					'label' => $default_breakpoint_config['label'],
					'type' => Controls_Manager::HEADING,
					'conditions' => [
						'terms' => [
							[
								'name' => 'active_breakpoints',
								'operator' => 'contains',
								'value' => $prefix . $breakpoint_key,
							],
						],
					],
				]
			);

			$control_config = [
				'label' => esc_html__( 'Breakpoint', 'elementor' ) . ' (px)',
				'type' => Controls_Manager::NUMBER,
				'placeholder' => $default_breakpoint_config['default_value'],
				'frontend_available' => true,
				'validators' => [
					'Breakpoint' => [
						'breakpointName' => $breakpoint_key,
					],
				],
				'conditions' => [
					'terms' => [
						[
							'name' => 'active_breakpoints',
							'operator' => 'contains',
							'value' => $prefix . $breakpoint_key,
						],
					],
				],
			];

			if ( Breakpoints_Manager::BREAKPOINT_KEY_WIDESCREEN === $breakpoint_key ) {
				$control_config['description'] = esc_html__(
					'Widescreen breakpoint settings will apply from the selected value and up.',
					'elementor'
				);
			}

			// Add the breakpoint Control itself.
			$this->add_control( $prefix . $breakpoint_key, $control_config );
		}
	}
}
core/kits/documents/tabs/settings-page-transitions.php000064400000001362151327220420017236 0ustar00<?php
namespace Elementor\Core\Kits\Documents\Tabs;

use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Settings_Page_Transitions extends Tab_Base {

	const TAB_ID = 'settings-page-transitions';

	public function get_id() {
		return self::TAB_ID;
	}

	public function get_title() {
		return __( 'Page Transitions', 'elementor' );
	}

	public function get_group() {
		return 'settings';
	}

	public function get_icon() {
		return 'eicon-layout-settings';
	}

	public function get_help_url() {
		return 'https://go.elementor.com/page-transitions';
	}

	protected function register_tab_controls() {
		Plugin::$instance->controls_manager->add_page_transitions_controls( $this->parent, $this->get_id() );
	}
}
core/kits/documents/tabs/settings-lightbox.php000064400000011211151327220420015561 0ustar00<?php

namespace Elementor\Core\Kits\Documents\Tabs;

use Elementor\Controls_Manager;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Settings_Lightbox extends Tab_Base {

	public function get_id() {
		return 'settings-lightbox';
	}

	public function get_title() {
		return esc_html__( 'Lightbox', 'elementor' );
	}

	public function get_group() {
		return 'settings';
	}

	public function get_icon() {
		return 'eicon-lightbox-expand';
	}

	public function get_help_url() {
		return 'https://go.elementor.com/global-lightbox';
	}

	protected function register_tab_controls() {
		$this->start_controls_section(
			'section_' . $this->get_id(),
			[
				'label' => $this->get_title(),
				'tab' => $this->get_id(),
			]
		);

		$this->add_control(
			'global_image_lightbox',
			[
				'label' => esc_html__( 'Image Lightbox', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'default' => 'yes',
				'description' => esc_html__( 'Open all image links in a lightbox popup window. The lightbox will automatically work on any link that leads to an image file.', 'elementor' ),
				'frontend_available' => true,
			]
		);

		$this->add_control(
			'lightbox_enable_counter',
			[
				'label' => esc_html__( 'Counter', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'default' => 'yes',
				'frontend_available' => true,
			]
		);

		$this->add_control(
			'lightbox_enable_fullscreen',
			[
				'label' => esc_html__( 'Fullscreen', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'default' => 'yes',
				'frontend_available' => true,
			]
		);

		$this->add_control(
			'lightbox_enable_zoom',
			[
				'label' => esc_html__( 'Zoom', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'default' => 'yes',
				'frontend_available' => true,
			]
		);

		$this->add_control(
			'lightbox_enable_share',
			[
				'label' => esc_html__( 'Share', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'default' => 'yes',
				'frontend_available' => true,
			]
		);

		$this->add_control(
			'lightbox_title_src',
			[
				'label' => esc_html__( 'Title', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'options' => [
					'' => esc_html__( 'None', 'elementor' ),
					'title' => esc_html__( 'Title', 'elementor' ),
					'caption' => esc_html__( 'Caption', 'elementor' ),
					'alt' => esc_html__( 'Alt', 'elementor' ),
					'description' => esc_html__( 'Description', 'elementor' ),
				],
				'default' => 'title',
				'frontend_available' => true,
			]
		);

		$this->add_control(
			'lightbox_description_src',
			[
				'label' => esc_html__( 'Description', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'options' => [
					'' => esc_html__( 'None', 'elementor' ),
					'title' => esc_html__( 'Title', 'elementor' ),
					'caption' => esc_html__( 'Caption', 'elementor' ),
					'alt' => esc_html__( 'Alt', 'elementor' ),
					'description' => esc_html__( 'Description', 'elementor' ),
				],
				'default' => 'description',
				'frontend_available' => true,
			]
		);

		$this->add_control(
			'lightbox_color',
			[
				'label' => esc_html__( 'Background Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'.elementor-lightbox' => 'background-color: {{VALUE}}',
				],
			]
		);

		$this->add_control(
			'lightbox_ui_color',
			[
				'label' => esc_html__( 'UI Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'.elementor-lightbox' => '--lightbox-ui-color: {{VALUE}}',
				],
			]
		);

		$this->add_control(
			'lightbox_ui_color_hover',
			[
				'label' => esc_html__( 'UI Hover Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'.elementor-lightbox' => '--lightbox-ui-color-hover: {{VALUE}}',
				],
			]
		);

		$this->add_control(
			'lightbox_text_color',
			[
				'label' => esc_html__( 'Text Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'selectors' => [
					'.elementor-lightbox' => '--lightbox-text-color: {{VALUE}}',
				],
			]
		);

		$this->add_control(
			'lightbox_icons_size',
			[
				'label' => esc_html__( 'Toolbar Icons Size', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'selectors' => [
					'.elementor-lightbox' => '--lightbox-header-icons-size: {{SIZE}}{{UNIT}}',
				],
				'separator' => 'before',
			]
		);

		$this->add_control(
			'lightbox_slider_icons_size',
			[
				'label' => esc_html__( 'Navigation Icons Size', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'selectors' => [
					'.elementor-lightbox' => '--lightbox-navigation-icons-size: {{SIZE}}{{UNIT}}',
				],
				'separator' => 'before',
			]
		);

		$this->end_controls_section();
	}
}
core/kits/documents/tabs/settings-custom-css.php000064400000001277151327220420016054 0ustar00<?php
namespace Elementor\Core\Kits\Documents\Tabs;

use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Settings_Custom_CSS extends Tab_Base {

	public function get_id() {
		return 'settings-custom-css';
	}

	public function get_title() {
		return esc_html__( 'Custom CSS', 'elementor' );
	}

	public function get_group() {
		return 'settings';
	}

	public function get_icon() {
		return 'eicon-custom-css';
	}

	public function get_help_url() {
		return 'https://go.elementor.com/global-custom-css';
	}

	protected function register_tab_controls() {
		Plugin::$instance->controls_manager->add_custom_css_controls( $this->parent, $this->get_id() );
	}
}
core/kits/documents/tabs/theme-style-buttons.php000064400000013103151327220420016041 0ustar00<?php

namespace Elementor\Core\Kits\Documents\Tabs;

use Elementor\Controls_Manager;
use Elementor\Group_Control_Background;
use Elementor\Group_Control_Border;
use Elementor\Group_Control_Box_Shadow;
use Elementor\Group_Control_Text_Shadow;
use Elementor\Group_Control_Typography;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Theme_Style_Buttons extends Tab_Base {

	public function get_id() {
		return 'theme-style-buttons';
	}

	public function get_title() {
		return esc_html__( 'Buttons', 'elementor' );
	}

	public function get_group() {
		return 'theme-style';
	}

	public function get_icon() {
		return 'eicon-button';
	}

	public function get_help_url() {
		return 'https://go.elementor.com/global-theme-style-buttons';
	}

	protected function register_tab_controls() {
		$button_selectors = [
			'{{WRAPPER}} button',
			'{{WRAPPER}} input[type="button"]',
			'{{WRAPPER}} input[type="submit"]',
			'{{WRAPPER}} .elementor-button',
		];

		$button_hover_selectors = [
			'{{WRAPPER}} button:hover',
			'{{WRAPPER}} button:focus',
			'{{WRAPPER}} input[type="button"]:hover',
			'{{WRAPPER}} input[type="button"]:focus',
			'{{WRAPPER}} input[type="submit"]:hover',
			'{{WRAPPER}} input[type="submit"]:focus',
			'{{WRAPPER}} .elementor-button:hover',
			'{{WRAPPER}} .elementor-button:focus',
		];

		$button_selector = implode( ',', $button_selectors );
		$button_hover_selector = implode( ',', $button_hover_selectors );

		$this->start_controls_section(
			'section_buttons',
			[
				'label' => esc_html__( 'Buttons', 'elementor' ),
				'tab' => $this->get_id(),
			]
		);

		$this->add_default_globals_notice();

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			[
				'label' => esc_html__( 'Typography', 'elementor' ),
				'name' => 'button_typography',
				'selector' => $button_selector,
			]
		);

		$this->add_group_control(
			Group_Control_Text_Shadow::get_type(),
			[
				'name' => 'button_text_shadow',
				'selector' => $button_selector,
			]
		);

		$this->start_controls_tabs( 'tabs_button_style' );

		$this->start_controls_tab(
			'tab_button_normal',
			[
				'label' => esc_html__( 'Normal', 'elementor' ),
			]
		);

		$this->add_control(
			'button_text_color',
			[
				'label' => esc_html__( 'Text Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'dynamic' => [],
				'selectors' => [
					$button_selector => 'color: {{VALUE}};',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Background::get_type(),
			[
				'name' => 'button_background',
				'types' => [ 'classic', 'gradient' ],
				'exclude' => [ 'image' ],
				'selector' => $button_selector,
				'fields_options' => [
					'background' => [
						'default' => 'classic',
					],
					'color' => [
						'dynamic' => [],
					],
					'color_b' => [
						'dynamic' => [],
					],
				],
			]
		);

		$this->add_group_control(
			Group_Control_Box_Shadow::get_type(),
			[
				'name' => 'button_box_shadow',
				'selector' => $button_selector,
			]
		);

		$this->add_group_control(
			Group_Control_Border::get_type(),
			[
				'name' => 'button_border',
				'selector' => $button_selector,
				'fields_options' => [
					'color' => [
						'dynamic' => [],
					],
				],
			]
		);

		$this->add_control(
			'button_border_radius',
			[
				'label' => esc_html__( 'Border Radius', 'elementor' ),
				'type' => Controls_Manager::DIMENSIONS,
				'size_units' => [ 'px', '%' ],
				'selectors' => [
					$button_selector => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
				],
			]
		);

		$this->end_controls_tab();

		$this->start_controls_tab(
			'tab_button_hover',
			[
				'label' => esc_html__( 'Hover', 'elementor' ),
			]
		);

		$this->add_control(
			'button_hover_text_color',
			[
				'label' => esc_html__( 'Text Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'dynamic' => [],
				'selectors' => [
					$button_hover_selector => 'color: {{VALUE}};',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Background::get_type(),
			[
				'name' => 'button_hover_background',
				'types' => [ 'classic', 'gradient' ],
				'exclude' => [ 'image' ],
				'selector' => $button_hover_selector,
				'fields_options' => [
					'background' => [
						'default' => 'classic',
					],
					'color' => [
						'dynamic' => [],
					],
					'color_b' => [
						'dynamic' => [],
					],
				],
			]
		);

		$this->add_group_control(
			Group_Control_Box_Shadow::get_type(),
			[
				'name' => 'button_hover_box_shadow',
				'selector' => $button_hover_selector,
			]
		);

		$this->add_group_control(
			Group_Control_Border::get_type(),
			[
				'name' => 'button_hover_border',
				'selector' => $button_hover_selector,
				'fields_options' => [
					'color' => [
						'dynamic' => [],
					],
				],
			]
		);

		$this->add_control(
			'button_hover_border_radius',
			[
				'label' => esc_html__( 'Border Radius', 'elementor' ),
				'type' => Controls_Manager::DIMENSIONS,
				'size_units' => [ 'px', '%' ],
				'selectors' => [
					$button_hover_selector => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
				],
			]
		);

		$this->end_controls_tab();

		$this->end_controls_tabs();

		$this->add_responsive_control(
			'button_padding',
			[
				'label' => esc_html__( 'Padding', 'elementor' ),
				'type' => Controls_Manager::DIMENSIONS,
				'size_units' => [ 'px', 'em', '%' ],
				'selectors' => [
					$button_selector => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
				],
				'separator' => 'before',
			]
		);

		$this->end_controls_section();
	}
}
core/kits/documents/tabs/settings-background.php000064400000003035151327220420016065 0ustar00<?php
namespace Elementor\Core\Kits\Documents\Tabs;

use Elementor\Controls_Manager;
use Elementor\Group_Control_Background;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Settings_Background extends Tab_Base {

	public function get_id() {
		return 'settings-background';
	}

	public function get_title() {
		return esc_html__( 'Background', 'elementor' );
	}

	public function get_group() {
		return 'settings';
	}

	public function get_icon() {
		return 'eicon-background';
	}

	public function get_help_url() {
		return 'https://go.elementor.com/global-background';
	}

	protected function register_tab_controls() {
		$this->start_controls_section(
			'section_background',
			[
				'label' => $this->get_title(),
				'tab' => $this->get_id(),
			]
		);

		$this->add_group_control(
			Group_Control_Background::get_type(),
			[
				'name' => 'body_background',
				'types' => [ 'classic', 'gradient' ],
				'selector' => '{{WRAPPER}}',
				'fields_options' => [
					'background' => [
						'frontend_available' => true,
					],
					'color' => [
						'dynamic' => [],
					],
					'color_b' => [
						'dynamic' => [],
					],
				],
			]
		);

		$this->add_control(
			'mobile_browser_background',
			[
				'label' => esc_html__( 'Mobile Browser Background', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'description' => esc_html__( 'The `theme-color` meta tag will only be available in supported browsers and devices.', 'elementor' ),
				'separator' => 'before',
			]
		);

		$this->end_controls_section();
	}
}
core/kits/documents/tabs/theme-style-form-fields.php000064400000012140151327220420016552 0ustar00<?php

namespace Elementor\Core\Kits\Documents\Tabs;

use Elementor\Controls_Manager;
use Elementor\Group_Control_Border;
use Elementor\Group_Control_Box_Shadow;
use Elementor\Group_Control_Typography;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Theme_Style_Form_Fields extends Tab_Base {

	public function get_id() {
		return 'theme-style-form-fields';
	}

	public function get_title() {
		return esc_html__( 'Form Fields', 'elementor' );
	}

	public function get_group() {
		return 'theme-style';
	}

	public function get_icon() {
		return 'eicon-form-horizontal';
	}

	public function get_help_url() {
		return 'https://go.elementor.com/global-theme-style-form-fields';
	}

	protected function register_tab_controls() {
		$label_selectors = [
			'{{WRAPPER}} label',
		];

		$input_selectors = [
			'{{WRAPPER}} input:not([type="button"]):not([type="submit"])',
			'{{WRAPPER}} textarea',
			'{{WRAPPER}} .elementor-field-textual',
		];

		$input_focus_selectors = [
			'{{WRAPPER}} input:focus:not([type="button"]):not([type="submit"])',
			'{{WRAPPER}} textarea:focus',
			'{{WRAPPER}} .elementor-field-textual:focus',
		];

		$label_selector = implode( ',', $label_selectors );
		$input_selector = implode( ',', $input_selectors );
		$input_focus_selector = implode( ',', $input_focus_selectors );

		$this->start_controls_section(
			'section_form_fields',
			[
				'label' => esc_html__( 'Form Fields', 'elementor' ),
				'tab' => $this->get_id(),
			]
		);

		$this->add_default_globals_notice();

		$this->add_control(
			'form_label_heading',
			[
				'type' => Controls_Manager::HEADING,
				'label' => esc_html__( 'Label', 'elementor' ),
			]
		);

		$this->add_control(
			'form_label_color',
			[
				'label' => esc_html__( 'Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'dynamic' => [],
				'selectors' => [
					$label_selector => 'color: {{VALUE}};',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			[
				'label' => esc_html__( 'Typography', 'elementor' ),
				'name' => 'form_label_typography',
				'selector' => $label_selector,
			]
		);

		$this->add_control(
			'form_field_heading',
			[
				'type' => Controls_Manager::HEADING,
				'label' => esc_html__( 'Field', 'elementor' ),
				'separator' => 'before',
			]
		);

		$this->add_group_control(
			Group_Control_Typography::get_type(),
			[
				'label' => esc_html__( 'Typography', 'elementor' ),
				'name' => 'form_field_typography',
				'selector' => $input_selector,
			]
		);

		$this->start_controls_tabs( 'tabs_form_field_style' );

		$this->start_controls_tab(
			'tab_form_field_normal',
			[
				'label' => esc_html__( 'Normal', 'elementor' ),
			]
		);

		$this->add_form_field_state_tab_controls( 'form_field', $input_selector );

		$this->end_controls_tab();

		$this->start_controls_tab(
			'tab_form_field_focus',
			[
				'label' => esc_html__( 'Focus', 'elementor' ),
			]
		);

		$this->add_form_field_state_tab_controls( 'form_field_focus', $input_focus_selector );

		$this->add_control(
			'form_field_focus_transition_duration',
			[
				'label' => esc_html__( 'Transition Duration', 'elementor' ) . ' (ms)',
				'type' => Controls_Manager::SLIDER,
				'selectors' => [
					$input_selector => 'transition: {{SIZE}}ms',
				],
				'range' => [
					'px' => [
						'min' => 0,
						'max' => 3000,
					],
				],
			]
		);

		$this->end_controls_tab();

		$this->end_controls_tabs();

		$this->add_responsive_control(
			'form_field_padding',
			[
				'label' => esc_html__( 'Padding', 'elementor' ),
				'type' => Controls_Manager::DIMENSIONS,
				'size_units' => [ 'px', 'em', '%' ],
				'selectors' => [
					$input_selector => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
				],
				'separator' => 'before',
			]
		);

		$this->end_controls_section();
	}

	private function add_form_field_state_tab_controls( $prefix, $selector ) {
		$this->add_control(
			$prefix . '_text_color',
			[
				'label' => esc_html__( 'Text Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'dynamic' => [],
				'selectors' => [
					$selector => 'color: {{VALUE}};',
				],
			]
		);

		$this->add_control(
			$prefix . '_background_color',
			[
				'label' => esc_html__( 'Background Color', 'elementor' ),
				'type' => Controls_Manager::COLOR,
				'dynamic' => [],
				'selectors' => [
					$selector => 'background-color: {{VALUE}};',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Box_Shadow::get_type(),
			[
				'name' => $prefix . '_box_shadow',
				'selector' => $selector,
			]
		);

		$this->add_group_control(
			Group_Control_Border::get_type(),
			[
				'name' => $prefix . '_border',
				'selector' => $selector,
				'fields_options' => [
					'color' => [
						'dynamic' => [],
					],
				],
			]
		);

		$this->add_control(
			$prefix . '_border_radius',
			[
				'label' => esc_html__( 'Border Radius', 'elementor' ),
				'type' => Controls_Manager::DIMENSIONS,
				'size_units' => [ 'px', '%' ],
				'selectors' => [
					$selector => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
				],
			]
		);
	}
}
core/kits/documents/tabs/settings-site-identity.php000064400000007710151327220420016545 0ustar00<?php

namespace Elementor\Core\Kits\Documents\Tabs;

use Elementor\Controls_Manager;
use Elementor\Core\Files\Assets\Files_Upload_Handler;
use Elementor\Core\Base\Document;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Settings_Site_Identity extends Tab_Base {

	public function get_id() {
		return 'settings-site-identity';
	}

	public function get_title() {
		return esc_html__( 'Site Identity', 'elementor' );
	}

	public function get_group() {
		return 'settings';
	}

	public function get_icon() {
		return 'eicon-site-identity';
	}

	public function get_help_url() {
		return 'https://go.elementor.com/global-site-identity';
	}

	protected function register_tab_controls() {
		$custom_logo_id = get_theme_mod( 'custom_logo' );
		$custom_logo_src = wp_get_attachment_image_src( $custom_logo_id, 'full' );

		$site_icon_id = get_option( 'site_icon' );
		$site_icon_src = wp_get_attachment_image_src( $site_icon_id, 'full' );

		// If CANNOT upload svg normally, it will add a custom inline option to force svg upload if requested. (in logo and favicon)
		$should_include_svg_inline_option = ! Files_Upload_Handler::is_enabled();

		$this->start_controls_section(
			'section_' . $this->get_id(),
			[
				'label' => $this->get_title(),
				'tab' => $this->get_id(),
			]
		);

		$this->add_control(
			$this->get_id() . '_refresh_notice',
			[
				'type' => Controls_Manager::RAW_HTML,
				'raw' => esc_html__( 'Changes will be reflected in the preview only after the page reloads.', 'elementor' ),
				'content_classes' => 'elementor-panel-alert elementor-panel-alert-info',
			]
		);

		$this->add_control(
			'site_name',
			[
				'label' => esc_html__( 'Site Name', 'elementor' ),
				'default' => get_option( 'blogname' ),
				'placeholder' => esc_html__( 'Choose name', 'elementor' ),
				'label_block' => true,
				'export' => false,
			]
		);

		$this->add_control(
			'site_description',
			[
				'label' => esc_html__( 'Site Description', 'elementor' ),
				'default' => get_option( 'blogdescription' ),
				'placeholder' => esc_html__( 'Choose description', 'elementor' ),
				'label_block' => true,
				'export' => false,
			]
		);

		$this->add_control(
			'site_logo',
			[
				'label' => esc_html__( 'Site Logo', 'elementor' ),
				'type' => Controls_Manager::MEDIA,
				'should_include_svg_inline_option' => $should_include_svg_inline_option,
				'default' => [
					'id' => $custom_logo_id,
					'url' => $custom_logo_src ? $custom_logo_src[0] : '',
				],
				'description' => esc_html__( 'Suggested image dimensions: 350 × 100 pixels.', 'elementor' ),
				'export' => false,
			]
		);

		$this->add_control(
			'site_favicon',
			[
				'label' => esc_html__( 'Site Favicon', 'elementor' ),
				'type' => Controls_Manager::MEDIA,
				'should_include_svg_inline_option' => $should_include_svg_inline_option,
				'default' => [
					'id' => $site_icon_id,
					'url' => $site_icon_src ? $site_icon_src[0] : '',
				],
				'description' => esc_html__( 'Suggested favicon dimensions: 512 × 512 pixels.', 'elementor' ),
				'export' => false,
			]
		);

		$this->end_controls_section();
	}

	public function on_save( $data ) {
		if (
			! isset( $data['settings']['post_status'] ) ||
			Document::STATUS_PUBLISH !== $data['settings']['post_status'] ||
			// Should check for the current action to avoid infinite loop
			// when updating options like: "blogname" and "blogdescription".
			strpos( current_action(), 'update_option_' ) === 0
		) {
			return;
		}

		if ( isset( $data['settings']['site_name'] ) ) {
			update_option( 'blogname', $data['settings']['site_name'] );
		}

		if ( isset( $data['settings']['site_description'] ) ) {
			update_option( 'blogdescription', $data['settings']['site_description'] );
		}

		if ( isset( $data['settings']['site_logo'] ) ) {
			set_theme_mod( 'custom_logo', $data['settings']['site_logo']['id'] );
		}

		if ( isset( $data['settings']['site_favicon'] ) ) {
			update_option( 'site_icon', $data['settings']['site_favicon']['id'] );
		}
	}
}
core/kits/documents/tabs/tab-base.php000064400000004267151327220420013576 0ustar00<?php

namespace Elementor\Core\Kits\Documents\Tabs;

use Elementor\Controls_Manager;
use Elementor\Core\Kits\Documents\Kit;
use Elementor\Core\Kits\Manager;
use Elementor\Plugin;
use Elementor\Settings;
use Elementor\Sub_Controls_Stack;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

abstract class Tab_Base extends Sub_Controls_Stack {
	/**
	 * @var Kit
	 */
	protected $parent;

	abstract protected function register_tab_controls();

	public function get_group() {
		return 'settings';
	}

	public function get_icon() {
		return '';
	}

	public function get_help_url() {
		return '';
	}

	public function get_additional_tab_content() {
		return '';
	}

	public function register_controls() {
		$this->register_tab();

		$this->register_tab_controls();
	}

	public function on_save( $data ) {}

	/**
	 * Before Save
	 *
	 * Allows for modifying the kit data before it is saved to the database.
	 *
	 * @param array $data
	 * @return array
	 */
	public function before_save( array $data ) {
		return $data;
	}

	protected function register_tab() {
		Controls_Manager::add_tab( $this->get_id(), $this->get_title() );
	}

	protected function add_default_globals_notice() {
		// Get the current section config (array - section id and tab) to use for creating a unique control ID and name
		$current_section = $this->parent->get_current_section();

		/** @var Manager $module */
		$kits_manager = Plugin::$instance->kits_manager;

		if ( $kits_manager->is_custom_colors_enabled() || $kits_manager->is_custom_typography_enabled() ) {
			$this->add_control(
				$current_section['section'] . '_schemes_notice',
				[
					'name' => $current_section['section'] . '_schemes_notice',
					'type' => Controls_Manager::RAW_HTML,
					'raw' => sprintf(
						/* translators: 1: Link open tag, 2: Link close tag. */
						esc_html__( 'In order for Theme Style to affect all relevant Elementor elements, please disable Default Colors and Fonts from the %1$sSettings Page%2$s.', 'elementor' ),
						'<a href="' . esc_url( Settings::get_url() ) . '" target="_blank">',
						'</a>'
					),
					'content_classes' => 'elementor-panel-alert elementor-panel-alert-warning',
					'render_type' => 'ui',
				]
			);
		}
	}
}
core/kits/documents/tabs/theme-style-images.php000064400000010716151327220420015617 0ustar00<?php

namespace Elementor\Core\Kits\Documents\Tabs;

use Elementor\Controls_Manager;
use Elementor\Group_Control_Border;
use Elementor\Group_Control_Box_Shadow;
use Elementor\Group_Control_Css_Filter;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Theme_Style_Images extends Tab_Base {

	public function get_id() {
		return 'theme-style-images';
	}

	public function get_title() {
		return esc_html__( 'Images', 'elementor' );
	}

	public function get_group() {
		return 'theme-style';
	}

	public function get_icon() {
		return 'eicon-image';
	}

	public function get_help_url() {
		return 'https://go.elementor.com/global-theme-style-images';
	}

	protected function register_tab_controls() {
		$image_selectors = [
			'{{WRAPPER}} img',
		];

		$image_hover_selectors = [
			'{{WRAPPER}} img:hover',
		];

		$image_selectors = implode( ',', $image_selectors );
		$image_hover_selectors = implode( ',', $image_hover_selectors );

		$this->start_controls_section(
			'section_images',
			[
				'label' => esc_html__( 'Images', 'elementor' ),
				'tab' => $this->get_id(),
			]
		);

		$this->add_default_globals_notice();

		$this->start_controls_tabs( 'tabs_image_style' );

		$this->start_controls_tab(
			'tab_image_normal',
			[
				'label' => esc_html__( 'Normal', 'elementor' ),
			]
		);

		$this->add_group_control(
			Group_Control_Border::get_type(),
			[
				'name' => 'image_border',
				'selector' => $image_selectors,
				'fields_options' => [
					'color' => [
						'dynamic' => [],
					],
				],
			]
		);

		$this->add_responsive_control(
			'image_border_radius',
			[
				'label' => esc_html__( 'Border Radius', 'elementor' ),
				'type' => Controls_Manager::DIMENSIONS,
				'size_units' => [ 'px', '%' ],
				'selectors' => [
					$image_selectors => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
				],
			]
		);

		$this->add_control(
			'image_opacity',
			[
				'label' => esc_html__( 'Opacity', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'max' => 1,
						'min' => 0.10,
						'step' => 0.01,
					],
				],
				'selectors' => [
					$image_selectors => 'opacity: {{SIZE}};',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Box_Shadow::get_type(),
			[
				'name' => 'image_box_shadow',
				'exclude' => [
					'box_shadow_position',
				],
				'selector' => $image_selectors,
			]
		);

		$this->add_group_control(
			Group_Control_Css_Filter::get_type(),
			[
				'name' => 'image_css_filters',
				'selector' => '{{WRAPPER}} img',
			]
		);

		$this->end_controls_tab();

		$this->start_controls_tab(
			'tab_image_hover',
			[
				'label' => esc_html__( 'Hover', 'elementor' ),
			]
		);

		$this->add_group_control(
			Group_Control_Border::get_type(),
			[
				'name' => 'image_hover_border',
				'selector' => '{{WRAPPER}} img:hover',
				'fields_options' => [
					'color' => [
						'dynamic' => [],
					],
				],
			]
		);

		$this->add_responsive_control(
			'image_hover_border_radius',
			[
				'label' => esc_html__( 'Border Radius', 'elementor' ),
				'type' => Controls_Manager::DIMENSIONS,
				'size_units' => [ 'px', '%' ],
				'selectors' => [
					$image_hover_selectors => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
				],
			]
		);

		$this->add_control(
			'image_hover_opacity',
			[
				'label' => esc_html__( 'Opacity', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'max' => 1,
						'min' => 0.10,
						'step' => 0.01,
					],
				],
				'selectors' => [
					$image_hover_selectors => 'opacity: {{SIZE}};',
				],
			]
		);

		$this->add_group_control(
			Group_Control_Box_Shadow::get_type(),
			[
				'name' => 'image_hover_box_shadow',
				'exclude' => [
					'box_shadow_position',
				],
				'selector' => $image_hover_selectors,
			]
		);

		$this->add_group_control(
			Group_Control_Css_Filter::get_type(),
			[
				'name' => 'image_hover_css_filters',
				'selector' => $image_hover_selectors,
			]
		);

		$this->add_control(
			'image_hover_transition',
			[
				'label' => esc_html__( 'Transition Duration', 'elementor' ) . ' (s)',
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'max' => 3,
						'step' => 0.1,
					],
				],
				'selectors' => [
					$image_selectors => 'transition-duration: {{SIZE}}s',
				],
			]
		);

		$this->end_controls_tab();

		$this->end_controls_tabs();

		$this->end_controls_section();
	}
}
core/kits/controls/repeater.php000064400000003243151327220420012631 0ustar00<?php

namespace Elementor\Core\Kits\Controls;

use Elementor\Control_Repeater;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Repeater extends Control_Repeater {

	const CONTROL_TYPE = 'global-style-repeater';

	/**
	 * Get control type.
	 *
	 * Retrieve the control type, in this case `global-style-repeater`.
	 *
	 * @since 3.0.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return self::CONTROL_TYPE;
	}

	/**
	 * Get repeater control default settings.
	 *
	 * Retrieve the default settings of the repeater control. Used to return the
	 * default settings while initializing the repeater control.
	 *
	 * @since 3.0.0
	 * @access protected
	 *
	 * @return array Control default settings.
	 */
	protected function get_default_settings() {
		$settings = parent::get_default_settings();

		$settings['item_actions']['duplicate'] = false;
		$settings['item_actions']['sort'] = false;

		return $settings;
	}

	/**
	 * Render repeater control output in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 3.0.0
	 * @access public
	 */
	public function content_template() {
		?>
		<div class="elementor-repeater-fields-wrapper"></div>
		<# if ( itemActions.add ) { #>
			<div class="elementor-button-wrapper">
				<button class="elementor-button elementor-button-default elementor-repeater-add" type="button">
					<i class="eicon-plus" aria-hidden="true"></i><span class="elementor-repeater__add-button__text">{{{ addButtonText }}}</span>
				</button>
			</div>
		<# } #>
		<?php
	}
}
core/kits/views/trash-kit-confirmation.php000064400000003157151327220420014714 0ustar00<?php
if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * @var int $post_id
 * @var boolean $is_permanently_delete
 */

$config_url = add_query_arg(
	[ 'force_delete_kit' => '1' ],
	get_delete_post_link( $post_id, '', $is_permanently_delete )
);
?>
<h4>
	<?php echo esc_html__( 'Are you sure you want to delete your Site Settings?', 'elementor' ); ?>
</h4>

<p>
	<?php echo esc_html__( 'By removing this template you will delete your entire Site Settings. If this template is deleted, all associated settings: Global Colors & Fonts, Theme Style, Layout, Background, and Lightbox settings will be removed from your existing site. This action can not be undone.', 'elementor' ); ?>
</p>

<br/>

<a class="btn btn-danger" href="<?php
	// PHPCS - the link is generated by WordPress.
	echo $config_url; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
?>">
	<?php echo esc_html__( 'Delete', 'elementor' ); ?>
</a>
<a class="btn btn-primary" href="javascript:history.back()">
	<?php echo esc_html__( 'Keep my settings', 'elementor' ); ?>
</a>

<style>
	/* In WordPress "die" screen there is very basic style, so the current css is required for basic button styles. */
	.btn {
		text-decoration: none;
		padding: 9px 20px;
		font-weight: 500;
		border-radius: 3px;
	}

	.btn-danger {
		display: inline-block;
		color: #a00;
	}

	.btn-danger:hover, .btn-danger:focus, .btn-danger:active {
		color: #dc3232;
	}

	.btn-primary {
		color: #fff;
		background-color: #007cba;
		margin: 0 10px;
	}

	.btn-primary:hover, .btn-primary:focus, .btn-primary:active {
		background-color: #0071a1;
		color: #fff;
	}
</style>
core/kits/views/panel.php000064400000002520151327220420011410 0ustar00<script type="text/template" id="tmpl-elementor-kit-panel">
	<main id="elementor-kit__panel-content__wrapper" class="elementor-panel-content-wrapper"></main>
</script>

<script type="text/template" id="tmpl-elementor-kit-panel-content">
	<div id="elementor-kit-panel-content-controls"></div>
	<#
	const tabConfig = $e.components.get( 'panel/global' ).getActiveTabConfig();
	if ( tabConfig.helpUrl ) { #>
	<div id="elementor-panel__editor__help">
		<a id="elementor-panel__editor__help__link" href="{{ tabConfig.helpUrl }}" target="_blank">
			<?php echo esc_html__( 'Need Help', 'elementor' ); ?>
			<i class="eicon-help-o"></i>
		</a>
	</div>
	<#
	}

	if ( tabConfig.additionalContent ) {
		#> {{{ tabConfig.additionalContent }}} <#
	}
	#>
</script>

<script type="text/template" id="tmpl-elementor-global-style-repeater-row">
	<# let removeClass = 'remove',
			removeIcon = 'eicon-trash-o';

	if ( ! itemActions.remove ) {
		removeClass += '--disabled';

		removeIcon = 'eicon-disable-trash-o'
	}
	#>
	<div class="elementor-repeater-row-tool elementor-repeater-tool-{{{ removeClass }}}">
		<i class="{{{ removeIcon }}}" aria-hidden="true"></i>
		<# if ( itemActions.remove ) { #>
			<span class="elementor-screen-only"><?php echo esc_html__( 'Remove', 'elementor' ); ?></span>
		<# } #>
	</div>
	<div class="elementor-repeater-row-controls"></div>
</script>
core/page-assets/managers/font-icon-svg/base.php000064400000001533151327220420015621 0ustar00<?php
namespace Elementor\Core\Page_Assets\Managers\Font_Icon_Svg;

use Elementor\Core\Base\Base_Object;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor Font Icon Svg.
 *
 * @since 3.4.0
 */
abstract class Base extends Base_Object {
	protected static $icon;

	abstract protected static function get_font_name();

	abstract protected static function get_config_key();

	abstract protected static function get_config_version();

	abstract protected static function get_config_file_path();

	protected static function get_config_data() {
		return [];
	}

	public static function get_config( $icon ) {
		self::$icon = $icon;

		return [
			'key' => static::get_config_key(),
			'version' => static::get_config_version(),
			'file_path' => static::get_config_file_path(),
			'data' => static::get_config_data(),
		];
	}
}
core/page-assets/managers/font-icon-svg/font-awesome.php000064400000002112151327220420017305 0ustar00<?php
namespace Elementor\Core\Page_Assets\Managers\Font_Icon_Svg;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor Font Icon Svg.
 *
 * @since 3.4.0
 */
class Font_Awesome extends Base {
	const FONT_AWESOME_CURRENT_VERSION = 5;

	protected static function get_font_name() {
		return 'font-awesome';
	}

	protected static function get_config_file_path() {
		$icon_file_name = str_replace( 'fa-', '', self::$icon['library'] );

		return ELEMENTOR_ASSETS_PATH . 'lib/font-awesome/json/' . $icon_file_name . '.json';
	}

	protected static function get_config_key() {
		// i.e. 'fab-apple' | 'far-cart'.
		return str_replace( ' fa-', '-', self::$icon['value'] );
	}

	protected static function get_config_version() {
		return self::FONT_AWESOME_CURRENT_VERSION;
	}

	protected static function get_config_data() {
		preg_match( '/fa(.*) fa-/', self::$icon['value'], $matches );
		$icon_name = str_replace( $matches[0], '', self::$icon['value'] );

		return [
			'icon_data' => [
				'name' => $icon_name,
				'library' => self::$icon['library'],
			],
		];
	}
}
core/page-assets/managers/font-icon-svg/manager.php000064400000001755151327220420016327 0ustar00<?php
namespace Elementor\Core\Page_Assets\Managers\Font_Icon_Svg;

use Elementor\Core\Base\Base_Object;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor Font Icon Svg Manager.
 *
 * @since 3.4.0
 */
class Manager extends Base_Object {
	private static $font_icon_svg_data = [];

	private static function get_font_icon_svg_data() {
		if ( ! self::$font_icon_svg_data ) {
			self::$font_icon_svg_data = [
				'font-awesome' => [
					'regex' => '/^fa-/',
					'manager' => Font_Awesome::class,
				],
			];
		}

		return self::$font_icon_svg_data;
	}

	public static function get_font_family_manager( $font_family ) {
		$font_icon_svg_data = self::get_font_icon_svg_data();

		return $font_icon_svg_data[ $font_family ]['manager'];
	}

	public static function get_font_family( $icon_library ) {
		foreach ( self::get_font_icon_svg_data() as $family => $data ) {
			if ( preg_match( $data['regex'], $icon_library ) ) {
				return $family;
			}
		}

		return '';
	}
}
core/page-assets/loader.php000064400000005546151327220420011677 0ustar00<?php
namespace Elementor\Core\Page_Assets;

use Elementor\Core\Base\Module;
use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

/**
 * Elementor assets loader.
 *
 * A class that is responsible for conditionally enqueuing styles and script assets that were pre-enabled.
 *
 * @since 3.3.0
 */
class Loader extends Module {
	private $assets;

	public function get_name() {
		return 'assets-loader';
	}

	private function init_assets() {
		$this->assets = [
			'styles' => [
				'e-animations' => [
					'src' => $this->get_css_assets_url( 'animations', 'assets/lib/animations/', true ),
					'version' => ELEMENTOR_VERSION,
					'dependencies' => [],
				],
			],
			'scripts' => [],
		];
	}

	public function get_assets() {
		if ( ! $this->assets ) {
			$this->init_assets();
		}

		return $this->assets;
	}

	/**
	 * @param array $assets {
	 *     @type array 'styles'
	 *     @type array 'scripts'
	 * }
	 */
	public function enable_assets( array $assets_data ) {
		if ( ! $this->assets ) {
			$this->init_assets();
		}

		foreach ( $assets_data as $assets_type => $assets_list ) {
			foreach ( $assets_list as $asset_name ) {
				$this->assets[ $assets_type ][ $asset_name ]['enabled'] = true;
			}
		}
	}

	/**
	 * @param array $assets {
	 *     @type array 'styles'
	 *     @type array 'scripts'
	 * }
	 */
	public function add_assets( array $assets ) {
		if ( ! $this->assets ) {
			$this->init_assets();
		}

		$this->assets = array_replace_recursive( $this->assets, $assets );
	}

	public function enqueue_assets() {
		$assets = $this->get_assets();
		$is_preview_mode = Plugin::$instance->preview->is_preview_mode();
		$is_optimized_assets_loading = Plugin::$instance->experiments->is_feature_active( 'e_optimized_assets_loading' );

		foreach ( $assets as $assets_type => $assets_type_data ) {
			foreach ( $assets_type_data as $asset_name => $asset_data ) {
				if ( ! empty( $asset_data['enabled'] ) || $is_preview_mode || ! $is_optimized_assets_loading ) {
					if ( 'scripts' === $assets_type ) {
						wp_enqueue_script( $asset_name, $asset_data['src'], $asset_data['dependencies'], $asset_data['version'], true );
					} else {
						wp_enqueue_style( $asset_name, $asset_data['src'], $asset_data['dependencies'], $asset_data['version'] );
					}
				}
			}
		}
	}

	private function register_assets() {
		$assets = $this->get_assets();

		foreach ( $assets as $assets_type => $assets_type_data ) {
			foreach ( $assets_type_data as $asset_name => $asset_data ) {
				if ( 'scripts' === $assets_type ) {
					wp_register_script( $asset_name, $asset_data['src'], $asset_data['dependencies'], $asset_data['version'], true );
				} else {
					wp_register_style( $asset_name, $asset_data['src'], $asset_data['dependencies'], $asset_data['version'] );
				}
			}
		}
	}

	public function __construct() {
		parent::__construct();

		$this->register_assets();
	}
}
core/page-assets/data-managers/font-icon-svg.php000064400000001311151327220420015610 0ustar00<?php
namespace Elementor\Core\Page_Assets\Data_Managers;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor Font Icon Svg.
 *
 * @since 3.4.0
 */
class Font_Icon_Svg extends Base {
	protected $content_type = 'svg';

	protected $assets_category = 'font-icon';

	protected function get_asset_content() {
		$icon_data = $this->get_config_data( 'icon_data' );

		$file_data = json_decode( $this->get_file_data( 'content', $icon_data['library'] ), true );

		$icon_name = $icon_data['name'];

		$svg_data = $file_data['icons'][ $icon_name ];

		return [
			'width' => $svg_data[0],
			'height' => $svg_data[1],
			'path' => $svg_data[4],
			'key' => $this->get_key(),
		];
	}
}
core/page-assets/data-managers/widgets-css.php000064400000001600151327220420015354 0ustar00<?php
namespace Elementor\Core\Page_Assets\Data_Managers;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor Assets Data.
 *
 * @since 3.3.0
 */
class Widgets_Css extends Base {
	protected $content_type = 'css';

	protected $assets_category = 'widgets';

	protected function get_asset_content() {
		$asset_css_file_size = $this->get_file_data( 'size' );

		$widget_css = '';

		if ( $asset_css_file_size ) {
			// If the file size is larger than 8KB then calling the external CSS file, otherwise, printing inline CSS.
			if ( $asset_css_file_size > 8000 ) {
				$asset_url = $this->get_config_data( 'file_url' );

				$widget_css = sprintf( '<link rel="stylesheet" href="%s">', $asset_url );
			} else {
				$widget_css = $this->get_file_data( 'content' );
				$widget_css = sprintf( '<style>%s</style>', $widget_css );
			}
		}

		return $widget_css;
	}
}
core/page-assets/data-managers/base.php000064400000014623151327220420014043 0ustar00<?php
namespace Elementor\Core\Page_Assets\Data_Managers;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor Assets Data.
 *
 * @since 3.3.0
 */
abstract class Base {
	const ASSETS_DATA_KEY = '_elementor_assets_data';

	/**
	 * @var array
	 */
	protected $assets_data;

	/**
	 * @var string
	 */
	protected $content_type;

	/**
	 * @var string
	 */
	protected $assets_category;

	/**
	 * @var array
	 */
	private $assets_config;

	/**
	 * @var array
	 */
	private $files_data;

	/**
	 * Get Asset Content.
	 *
	 * Responsible for extracting the asset data from a certain file.
	 * Will be triggered automatically when the asset data does not exist, or when the asset version was changed.
	 *
	 * @since 3.3.0
	 * @access public
	 *
	 * @return string
	 */
	abstract protected function get_asset_content();

	/**
	 * Get Asset Key.
	 *
	 * The asset data will be saved in the DB under this key.
	 *
	 * @since 3.3.0
	 * @access protected
	 *
	 * @return string
	 */
	protected function get_key() {
		return $this->assets_config['key'];
	}

	/**
	 * Get Relative Version.
	 *
	 * The asset data will be re-evaluated according the version number.
	 *
	 * @since 3.3.0
	 * @access protected
	 *
	 * @return string
	 */
	protected function get_version() {
		return $this->assets_config['version'];
	}

	/**
	 * Get Asset Path.
	 *
	 * The asset data will be extracted from the file path.
	 *
	 * @since 3.3.0
	 * @access protected
	 *
	 * @return string
	 */
	protected function get_file_path() {
		return $this->assets_config['file_path'];
	}

	/**
	 * Get Config Data.
	 *
	 * Holds a unique data relevant for the specific assets category type.
	 *
	 * @since 3.3.0
	 * @access protected
	 *
	 * @return string|array
	 */
	protected function get_config_data( $key = '' ) {
		if ( isset( $this->assets_config['data'] ) ) {
			if ( $key ) {
				if ( isset( $this->assets_config['data'][ $key ] ) ) {
					return $this->assets_config['data'][ $key ];
				}

				return '';
			}

			return $this->assets_config['data'];
		}

		return [];
	}

	/**
	 * Set Asset Data.
	 *
	 * Responsible for setting the current asset data.
	 *
	 * @since 3.3.0
	 * @access protected
	 *
	 * @return void
	 */
	protected function set_asset_data( $asset_key ) {
		if ( ! isset( $this->assets_data[ $asset_key ] ) ) {
			$this->assets_data[ $asset_key ] = [];
		}

		$this->assets_data[ $asset_key ]['content'] = $this->get_asset_content();
		$this->assets_data[ $asset_key ]['version'] = $this->get_version();

		$this->save_asset_data( $asset_key );
	}

	/**
	 * Save Asset Data.
	 *
	 * Responsible for saving the asset data in the DB.
	 *
	 * @since 3.3.0
	 * @access protected
	 *
	 * @param string $asset_key
	 *
	 * @return void
	 */
	protected function save_asset_data( $asset_key ) {
		$assets_data = $this->get_saved_assets_data();

		$content_type = $this->content_type;
		$assets_category = $this->assets_category;

		$assets_data[ $content_type ][ $assets_category ][ $asset_key ] = $this->assets_data[ $asset_key ];

		update_option( self::ASSETS_DATA_KEY, $assets_data );
	}

	/**
	 * Is Asset Version Changed.
	 *
	 * Responsible for comparing the saved asset data version to the current relative version.
	 *
	 * @since 3.3.0
	 * @access protected
	 *
	 * @param string $asset_key
	 *
	 * @return boolean
	 */
	protected function is_asset_version_changed( $version ) {
		return $this->get_version() !== $version;
	}

	/**
	 * Get File Data.
	 *
	 * Getting a file content or size.
	 *
	 * @since 3.3.0
	 * @access protected
	 *
	 * @param string $data_type (content|size)
	 * @param string $file_key - In case that the same file data is needed for multiple assets (like a JSON file), the file data key should be the same for all shared assets to make sure that the file is being read only once.
	 *
	 * @return string|number
	 */
	protected function get_file_data( $data_type, $file_key = '' ) {
		$asset_key = $file_key ? $file_key : $this->get_key();

		if ( isset( $this->files_data[ $asset_key ][ $data_type ] ) ) {
			return $this->files_data[ $asset_key ][ $data_type ];
		}

		if ( ! isset( $this->files_data[ $asset_key ] ) ) {
			$this->files_data[ $asset_key ] = [];
		}

		$asset_path = $this->get_file_path();

		if ( 'content' === $data_type ) {
			$data = file_get_contents( $asset_path );

			if ( ! $data ) {
				$data = '';
			}
		} elseif ( 'size' === $data_type ) {
			$data = file_exists( $asset_path ) ? filesize( $asset_path ) : 0;
		}

		$this->files_data[ $asset_key ][ $data_type ] = $data;

		return $data;
	}

	/**
	 * Get Saved Assets Data.
	 *
	 * Getting the assets data from the DB.
	 *
	 * @since 3.3.0
	 * @access protected
	 *
	 * @return array
	 */
	protected function get_saved_assets_data() {
		$assets_data = get_option( self::ASSETS_DATA_KEY, [] );

		$content_type = $this->content_type;
		$assets_category = $this->assets_category;

		if ( ! isset( $assets_data[ $content_type ] ) ) {
			$assets_data[ $content_type ] = [];
		}

		if ( ! isset( $assets_data[ $content_type ][ $assets_category ] ) ) {
			$assets_data[ $content_type ][ $assets_category ] = [];
		}
		return $assets_data;
	}

	/**
	 * Init Asset Data.
	 *
	 * Initialize the asset data and handles the asset content updates when needed.
	 *
	 * @since 3.3.0
	 * @access public
	 *
	 * @param array $config {
	 *     @type string 'key'
	 *     @type string 'version'
	 *     @type string 'file_path'
	 *     @type array 'data'
	 * }
	 *
	 * @return void
	 */
	public function init_asset_data( $config ) {
		$this->assets_config = $config;

		$asset_key = $config['key'];

		$asset_data = isset( $this->assets_data[ $asset_key ] ) ? $this->assets_data[ $asset_key ] : [];

		if ( ! $asset_data || $this->is_asset_version_changed( $asset_data['version'] ) ) {
			$this->set_asset_data( $asset_key );
		}
	}

	/**
	 * Get Asset Data.
	 *
	 * Getting the asset data content.
	 *
	 * @since 3.3.0
	 * @access public
	 *
	 * @param array $config {
	 *     @type string 'key'
	 *     @type string 'version'
	 *     @type string 'file_path'
	 *     @type array 'data'
	 * }
	 *
	 * @return mixed
	 */
	public function get_asset_data( $config ) {
		$this->init_asset_data( $config );

		$asset_key = $config['key'];

		return $this->assets_data[ $asset_key ]['content'];
	}

	public function __construct() {
		$assets_data = $this->get_saved_assets_data();

		$content_type = $this->content_type;
		$assets_category = $this->assets_category;

		$this->assets_data = $assets_data[ $content_type ][ $assets_category ];
	}
}
core/settings/manager.php000064400000011752151327220420011463 0ustar00<?php
namespace Elementor\Core\Settings;

use Elementor\Core\Settings\Base\CSS_Model;
use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor settings manager.
 *
 * Elementor settings manager handler class is responsible for registering and
 * managing Elementor settings managers.
 *
 * @since 1.6.0
 */
class Manager {

	/**
	 * Settings managers.
	 *
	 * Holds all the registered settings managers.
	 *
	 * @since 1.6.0
	 * @access private
	 *
	 * @var Base\Manager[]
	 */
	private static $settings_managers = [];

	/**
	 * Builtin settings managers names.
	 *
	 * Holds the names for builtin Elementor settings managers.
	 *
	 * @since 1.6.0
	 * @access private
	 *
	 * @var array
	 */
	private static $builtin_settings_managers_names = [ 'page', 'editorPreferences' ];

	/**
	 * Add settings manager.
	 *
	 * Register a single settings manager to the registered settings managers.
	 *
	 * @since 1.6.0
	 * @access public
	 * @static
	 *
	 * @param Base\Manager $manager Settings manager.
	 */
	public static function add_settings_manager( Base\Manager $manager ) {
		self::$settings_managers[ $manager->get_name() ] = $manager;
	}

	/**
	 * Get settings managers.
	 *
	 * Retrieve registered settings manager(s).
	 *
	 * If no parameter passed, it will retrieve all the settings managers. For
	 * any given parameter it will retrieve a single settings manager if one
	 * exist, or `null` otherwise.
	 *
	 * @since 1.6.0
	 * @access public
	 * @static
	 *
	 * @param string $manager_name Optional. Settings manager name. Default is
	 *                             null.
	 *
	 * @return Base\Manager|Base\Manager[] Single settings manager, if it exists,
	 *                                     null if it doesn't exists, or the all
	 *                                     the settings managers if no parameter
	 *                                     defined.
	 */
	public static function get_settings_managers( $manager_name = null ) {
		if ( $manager_name ) {
			// Backwards compatibility for `general` manager, since 3.0.0.
			// Register the class only if needed.
			if ( 'general' === $manager_name ) {
				// TODO: _deprecated_argument( $manager_name, '3.0.0', 'Plugin::$instance->kits_manager->get_active_kit_for_frontend();' );
				$manager_class = self::get_manager_class( $manager_name );

				self::add_settings_manager( new $manager_class() );
			}

			if ( isset( self::$settings_managers[ $manager_name ] ) ) {
				return self::$settings_managers[ $manager_name ];
			}

			return null;
		}

		return self::$settings_managers;
	}

	/**
	 * Register default settings managers.
	 *
	 * Register builtin Elementor settings managers.
	 *
	 * @since 1.6.0
	 * @access private
	 * @static
	 */
	private static function register_default_settings_managers() {
		foreach ( self::$builtin_settings_managers_names as $manager_name ) {
			$manager_class = self::get_manager_class( $manager_name );

			self::add_settings_manager( new $manager_class() );
		}
	}

	/**
	 * Get class path for default settings managers.
	 *
	 * @param $manager_name
	 *
	 * @return string
	 * @since  3.0.0
	 * @access private
	 * @static
	 */

	private static function get_manager_class( $manager_name ) {
		return __NAMESPACE__ . '\\' . ucfirst( $manager_name ) . '\Manager';
	}

	/**
	 * Get settings managers config.
	 *
	 * Retrieve the settings managers configuration.
	 *
	 * @since 1.6.0
	 * @access public
	 * @static
	 *
	 * @return array The settings managers configuration.
	 */
	public static function get_settings_managers_config() {
		$config = [];

		$user_can = Plugin::instance()->role_manager->user_can( 'design' );

		foreach ( self::$settings_managers as $name => $manager ) {
			$settings_model = $manager->get_model_for_config();
			$tabs = $settings_model->get_tabs_controls();

			if ( ! $user_can ) {
				unset( $tabs['style'] );
			}

			$config[ $name ] = [
				'name' => $manager->get_name(),
				'panelPage' => $settings_model->get_panel_page_settings(),
				'controls' => $settings_model->get_controls(),
				'tabs' => $tabs,
				'settings' => $settings_model->get_settings(),
			];

			if ( $settings_model instanceof CSS_Model ) {
				$config[ $name ]['cssWrapperSelector'] = $settings_model->get_css_wrapper_selector();
			}
		}

		return $config;
	}

	/**
	 * Get settings frontend config.
	 *
	 * Retrieve the settings managers frontend configuration.
	 *
	 * @since 1.6.0
	 * @access public
	 * @static
	 *
	 * @return array The settings managers frontend configuration.
	 */
	public static function get_settings_frontend_config() {
		$config = [];

		foreach ( self::$settings_managers as $name => $manager ) {
			$settings_model = $manager->get_model_for_config();

			if ( $settings_model ) {
				$config[ $name ] = $settings_model->get_frontend_settings();
			}
		}

		return $config;
	}

	/**
	 * Run settings managers.
	 *
	 * Register builtin Elementor settings managers.
	 *
	 * @since 1.6.0
	 * @access public
	 * @static
	 */
	public static function run() {
		self::register_default_settings_managers();
	}
}
core/settings/page/manager.php000064400000020041151327220420012366 0ustar00<?php
namespace Elementor\Core\Settings\Page;

use Elementor\Core\Base\Document;
use Elementor\Core\Files\CSS\Base;
use Elementor\Core\Files\CSS\Post;
use Elementor\Core\Files\CSS\Post_Preview;
use Elementor\Core\Settings\Base\CSS_Manager;
use Elementor\Core\Utils\Exceptions;
use Elementor\Core\Settings\Base\Model as BaseModel;
use Elementor\Plugin;
use Elementor\Utils;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor page settings manager.
 *
 * Elementor page settings manager handler class is responsible for registering
 * and managing Elementor page settings managers.
 *
 * @since 1.6.0
 */
class Manager extends CSS_Manager {

	/**
	 * Meta key for the page settings.
	 */
	const META_KEY = '_elementor_page_settings';

	/**
	 * Get manager name.
	 *
	 * Retrieve page settings manager name.
	 *
	 * @since 1.6.0
	 * @access public
	 *
	 * @return string Manager name.
	 */
	public function get_name() {
		return 'page';
	}

	/**
	 * Get model for config.
	 *
	 * Retrieve the model for settings configuration.
	 *
	 * @since 1.6.0
	 * @access public
	 *
	 * @return BaseModel The model object.
	 */
	public function get_model_for_config() {
		if ( ! is_singular() && ! Plugin::$instance->editor->is_edit_mode() ) {
			return null;
		}

		if ( Plugin::$instance->editor->is_edit_mode() ) {
			$post_id = Plugin::$instance->editor->get_post_id();
			$document = Plugin::$instance->documents->get_doc_or_auto_save( $post_id );
		} else {
			$post_id = get_the_ID();
			$document = Plugin::$instance->documents->get_doc_for_frontend( $post_id );
		}

		if ( ! $document ) {
			return null;
		}

		$model = $this->get_model( $document->get_post()->ID );

		if ( $document->is_autosave() ) {
			$model->set_settings( 'post_status', $document->get_main_post()->post_status );
		}

		return $model;
	}

	/**
	 * Ajax before saving settings.
	 *
	 * Validate the data before saving it and updating the data in the database.
	 *
	 * @since 1.6.0
	 * @access public
	 *
	 * @param array $data Post data.
	 * @param int   $id   Post ID.
	 *
	 * @throws \Exception If invalid post returned using the `$id`.
	 * @throws \Exception If current user don't have permissions to edit the post.
	 */
	public function ajax_before_save_settings( array $data, $id ) {
		$post = get_post( $id );

		if ( empty( $post ) ) {
			throw new \Exception( 'Invalid post.', Exceptions::NOT_FOUND );
		}

		if ( ! Utils::is_wp_cli() && ! current_user_can( 'edit_post', $id ) ) {
			throw new \Exception( 'Access denied.', Exceptions::FORBIDDEN );
		}

		// Avoid save empty post title.
		if ( ! empty( $data['post_title'] ) ) {
			$post->post_title = $data['post_title'];
		}

		if ( isset( $data['post_excerpt'] ) && post_type_supports( $post->post_type, 'excerpt' ) ) {
			$post->post_excerpt = $data['post_excerpt'];
		}

		if ( isset( $data['post_status'] ) ) {
			$this->save_post_status( $id, $data['post_status'] );
			unset( $post->post_status );
		}

		wp_update_post( $post );

		// Check updated status
		if ( Document::STATUS_PUBLISH === get_post_status( $id ) ) {
			$autosave = wp_get_post_autosave( $post->ID );
			if ( $autosave ) {
				wp_delete_post_revision( $autosave->ID );
			}
		}

		if ( isset( $data['post_featured_image'] ) && post_type_supports( $post->post_type, 'thumbnail' ) ) {
			if ( empty( $data['post_featured_image']['id'] ) ) {
				delete_post_thumbnail( $post->ID );
			} else {
				set_post_thumbnail( $post->ID, $data['post_featured_image']['id'] );
			}
		}

		if ( Utils::is_cpt_custom_templates_supported() ) {
			$template = get_metadata( 'post', $post->ID, '_wp_page_template', true );

			if ( isset( $data['template'] ) ) {
				$template = $data['template'];
			}

			if ( empty( $template ) ) {
				$template = 'default';
			}

			// Use `update_metadata` in order to save also for revisions.
			update_metadata( 'post', $post->ID, '_wp_page_template', $template );
		}
	}

	/**
	 * @inheritDoc
	 *
	 * Override parent because the page setting moved to document.settings.
	 */
	protected function print_editor_template_content( $name ) {
		?>
		<#
		const tabs = elementor.config.document.settings.tabs;

		if ( Object.values( tabs ).length > 1 ) { #>
		<div class="elementor-panel-navigation">
			<# _.each( tabs, function( tabTitle, tabSlug ) {
			$e.bc.ensureTab( 'panel/page-settings', tabSlug ); #>
			<div class="elementor-component-tab elementor-panel-navigation-tab elementor-tab-control-{{ tabSlug }}" data-tab="{{ tabSlug }}">
				<a href="#">{{{ tabTitle }}}</a>
			</div>
			<# } ); #>
		</div>
		<# } #>
		<div id="elementor-panel-<?php echo esc_attr( $name ); ?>-settings-controls"></div>
		<?php
	}

	/**
	 * Save settings to DB.
	 *
	 * Save page settings to the database, as post meta data.
	 *
	 * @since 1.6.0
	 * @access protected
	 *
	 * @param array $settings Settings.
	 * @param int   $id       Post ID.
	 */
	protected function save_settings_to_db( array $settings, $id ) {
		// Use update/delete_metadata in order to handle also revisions.
		if ( ! empty( $settings ) ) {
			// Use `wp_slash` in order to avoid the unslashing during the `update_post_meta`.
			update_metadata( 'post', $id, self::META_KEY, wp_slash( $settings ) );
		} else {
			delete_metadata( 'post', $id, self::META_KEY );
		}
	}

	/**
	 * Get CSS file for update.
	 *
	 * Retrieve the CSS file before updating it.
	 *
	 * This method overrides the parent method to disallow updating CSS files for pages.
	 *
	 * @since 1.6.0
	 * @access protected
	 *
	 * @param int $id Post ID.
	 *
	 * @return false Disallow The updating CSS files for pages.
	 */
	protected function get_css_file_for_update( $id ) {
		return false;
	}

	/**
	 * Get saved settings.
	 *
	 * Retrieve the saved settings from the post meta.
	 *
	 * @since 1.6.0
	 * @access protected
	 *
	 * @param int $id Post ID.
	 *
	 * @return array Saved settings.
	 */
	protected function get_saved_settings( $id ) {
		$settings = get_post_meta( $id, self::META_KEY, true );

		if ( ! $settings ) {
			$settings = [];
		}

		if ( Utils::is_cpt_custom_templates_supported() ) {
			$saved_template = get_post_meta( $id, '_wp_page_template', true );

			if ( $saved_template ) {
				$settings['template'] = $saved_template;
			}
		}

		return $settings;
	}

	/**
	 * Get CSS file name.
	 *
	 * Retrieve CSS file name for the page settings manager.
	 *
	 * @since 1.6.0
	 * @access protected
	 *
	 * @return string CSS file name.
	 */
	protected function get_css_file_name() {
		return 'post';
	}

	/**
	 * Get model for CSS file.
	 *
	 * Retrieve the model for the CSS file.
	 *
	 * @since 1.6.0
	 * @access protected
	 *
	 * @param Base $css_file The requested CSS file.
	 *
	 * @return BaseModel The model object.
	 */
	protected function get_model_for_css_file( Base $css_file ) {
		if ( ! $css_file instanceof Post ) {
			return null;
		}

		$post_id = $css_file->get_post_id();

		if ( $css_file instanceof Post_Preview ) {
			$autosave = Utils::get_post_autosave( $post_id );
			if ( $autosave ) {
				$post_id = $autosave->ID;
			}
		}

		return $this->get_model( $post_id );
	}

	/**
	 * Get special settings names.
	 *
	 * Retrieve the names of the special settings that are not saved as regular
	 * settings. Those settings have a separate saving process.
	 *
	 * @since 1.6.0
	 * @access protected
	 *
	 * @return array Special settings names.
	 */
	protected function get_special_settings_names() {
		return [
			'id',
			'post_title',
			'post_status',
			'template',
			'post_excerpt',
			'post_featured_image',
		];
	}

	/**
	 * @since 2.0.0
	 * @access public
	 *
	 * @param $post_id
	 * @param $status
	 */
	public function save_post_status( $post_id, $status ) {
		$parent_id = wp_is_post_revision( $post_id );

		if ( $parent_id ) {
			// Don't update revisions post-status
			return;
		}

		$parent_id = $post_id;

		$post = get_post( $parent_id );

		$allowed_post_statuses = get_post_statuses();

		if ( isset( $allowed_post_statuses[ $status ] ) ) {
			$post_type_object = get_post_type_object( $post->post_type );
			if ( 'publish' !== $status || current_user_can( $post_type_object->cap->publish_posts ) ) {
				$post->post_status = $status;
			}
		}

		wp_update_post( $post );
	}
}
core/settings/page/model.php000064400000007562151327220420012071 0ustar00<?php
namespace Elementor\Core\Settings\Page;

use Elementor\Core\Settings\Base\CSS_Model;
use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor page settings model.
 *
 * Elementor page settings model handler class is responsible for registering
 * and managing Elementor page settings models.
 *
 * @since 1.6.0
 */
class Model extends CSS_Model {

	/**
	 * WordPress post object.
	 *
	 * Holds an instance of `WP_Post` containing the post object.
	 *
	 * @since 1.6.0
	 * @access public
	 *
	 * @var \WP_Post
	 */
	private $post;

	/**
	 * @var \WP_Post
	 */
	private $post_parent;

	/**
	 * Model constructor.
	 *
	 * Initializing Elementor page settings model.
	 *
	 * @since 1.6.0
	 * @access public
	 *
	 * @param array $data Optional. Model data. Default is an empty array.
	 */
	public function __construct( array $data = [] ) {
		$this->post = get_post( $data['id'] );

		if ( ! $this->post ) {
			$this->post = new \WP_Post( (object) [] );
		}

		if ( wp_is_post_revision( $this->post->ID ) ) {
			$this->post_parent = get_post( $this->post->post_parent );
		} else {
			$this->post_parent = $this->post;
		}

		parent::__construct( $data );
	}

	/**
	 * Get model name.
	 *
	 * Retrieve page settings model name.
	 *
	 * @since 1.6.0
	 * @access public
	 *
	 * @return string Model name.
	 */
	public function get_name() {
		return 'page-settings';
	}

	/**
	 * Get model unique name.
	 *
	 * Retrieve page settings model unique name.
	 *
	 * @since 1.6.0
	 * @access public
	 *
	 * @return string Model unique name.
	 */
	public function get_unique_name() {
		return $this->get_name() . '-' . $this->post->ID;
	}

	/**
	 * Get CSS wrapper selector.
	 *
	 * Retrieve the wrapper selector for the page settings model.
	 *
	 * @since 1.6.0
	 * @access public
	 *
	 * @return string CSS wrapper selector.
	 */
	public function get_css_wrapper_selector() {
		$document = Plugin::$instance->documents->get( $this->post_parent->ID );
		return $document->get_css_wrapper_selector();
	}

	/**
	 * Get panel page settings.
	 *
	 * Retrieve the panel setting for the page settings model.
	 *
	 * @since 1.6.0
	 * @access public
	 *
	 * @return array {
	 *    Panel settings.
	 *
	 *    @type string $title The panel title.
	 * }
	 */
	public function get_panel_page_settings() {
		$document = Plugin::$instance->documents->get( $this->post->ID );

		return [
			/* translators: %s: Document title. */
			'title' => sprintf( esc_html__( '%s Settings', 'elementor' ), $document::get_title() ),
		];
	}

	/**
	 * On export post meta.
	 *
	 * When exporting data, check if the post is not using page template and
	 * exclude it from the exported Elementor data.
	 *
	 * @since 1.6.0
	 * @access public
	 *
	 * @param array $element_data Element data.
	 *
	 * @return array Element data to be exported.
	 */
	public function on_export( $element_data ) {
		if ( ! empty( $element_data['settings']['template'] ) ) {
			/**
			 * @var \Elementor\Modules\PageTemplates\Module $page_templates_module
			 */
			$page_templates_module = Plugin::$instance->modules_manager->get_modules( 'page-templates' );
			$is_elementor_template = ! ! $page_templates_module->get_template_path( $element_data['settings']['template'] );

			if ( ! $is_elementor_template ) {
				unset( $element_data['settings']['template'] );
			}
		}

		return $element_data;
	}

	/**
	 * Register model controls.
	 *
	 * Used to add new controls to the page settings model.
	 *
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		// Check if it's a real model, or abstract (for example - on import )
		if ( $this->post->ID ) {
			$document = Plugin::$instance->documents->get_doc_or_auto_save( $this->post->ID );

			if ( $document ) {
				$controls = $document->get_controls();

				foreach ( $controls as $control_id => $args ) {
					$this->add_control( $control_id, $args );
				}
			}
		}
	}
}
core/settings/general/manager.php000064400000004523151327220420013076 0ustar00<?php
namespace Elementor\Core\Settings\General;

use Elementor\Core\Files\CSS\Base;
use Elementor\Core\Settings\Base\CSS_Manager;
use Elementor\Core\Settings\Base\Model as BaseModel;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * This class is deprecated, use Plugin::$instance->kits_manager->get_active_kit_for_frontend() instead.
 * it changed to support call like this: Manager::get_settings_managers( 'general' )->get_model()->get_settings( 'elementor_default_generic_fonts' )
 * @deprecated since 3.0.0
 */

class Manager extends CSS_Manager {

	/**
	 * Meta key for the general settings.
	 */
	const META_KEY = '_elementor_general_settings';

	/**
	 * General settings manager constructor.
	 *
	 * Initializing Elementor general settings manager.
	 *
	 * @since 1.6.0
	 * @access public
	 */
	public function __construct() {
		parent::__construct();

		// TODO: _deprecated_file( __FILE__, '3.0.0', 'Plugin::$instance->kits_manager->get_active_kit_for_frontend()' );

		$name = $this->get_css_file_name();

		remove_action( "elementor/css-file/{$name}/parse", [ $this, 'add_settings_css_rules' ] );
	}

	/**
	 * Get manager name.
	 *
	 * Retrieve general settings manager name.
	 *
	 * @since 1.6.0
	 * @access public
	 *
	 * @return string Manager name.
	 */
	public function get_name() {
		return 'general';
	}

	/**
	 * Get model for config.
	 *
	 * Retrieve the model for settings configuration.
	 *
	 * @since 1.6.0
	 * @access public
	 *
	 * @return BaseModel The model object.
	 */
	public function get_model_for_config() {
		return $this->get_model();
	}

	/**
	 * @deprecated
	 */
	protected function get_saved_settings( $id ) {
		return [];
	}

	/**
	 * Get CSS file name.
	 *
	 * Retrieve CSS file name for the general settings manager.
	 *
	 * @since 1.6.0
	 * @access protected
	 * @return string
	 *
	 * @return string CSS file name.
	 */
	protected function get_css_file_name() {
		return 'global';
	}

	/**
	 * @deprecated
	 */
	protected function save_settings_to_db( array $settings, $id ) {
		throw new \Exception( __CLASS__ . ' is deprecated. Use Plugin::$instance->kits_manager->get_active_kit_for_frontend()' );
	}

	/**
	 * @deprecated
	 */
	protected function get_model_for_css_file( Base $css_file ) {
		return false;
	}

	/**
	 * @deprecated
	 */
	protected function get_css_file_for_update( $id ) {
		return false;
	}
}
core/settings/general/model.php000064400000001677151327220420012573 0ustar00<?php

namespace Elementor\Core\Settings\General;

use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * This file is deprecated, use Plugin::$instance->kits_manager->get_active_kit_for_frontend() instead.
 * it changed to support call like this: Manager::get_settings_managers( 'general' )->get_model()->get_settings( 'elementor_default_generic_fonts' )
 * @deprecated since 3.0.0
 */

class Model {

	public function get_name() {
		return 'general-deprecated';
	}

	public function get_panel_page_settings() {
		return [];
	}

	public function get_tabs_controls() {
		return [];
	}

	public function get_frontend_settings() {
		return [];
	}

	public function get_controls() {
		return [];
	}

	public function get_settings( $setting = null ) {

		if ( $setting ) {
			$setting = str_replace( 'elementor_', '', $setting );
		}

		return Plugin::$instance->kits_manager->get_current_settings( $setting );
	}
}
core/settings/base/model.php000064400000001135151327220420012055 0ustar00<?php
namespace Elementor\Core\Settings\Base;

use Elementor\Controls_Stack;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor settings base model.
 *
 * Elementor settings base model handler class is responsible for registering
 * and managing Elementor settings base models.
 *
 * @since 1.6.0
 * @abstract
 */
abstract class Model extends Controls_Stack {

	/**
	 * Get panel page settings.
	 *
	 * Retrieve the page setting for the current panel.
	 *
	 * @since 1.6.0
	 * @access public
	 * @abstract
	 */
	abstract public function get_panel_page_settings();
}
core/settings/base/css-model.php000064400000000564151327220420012650 0ustar00<?php

namespace Elementor\Core\Settings\Base;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

abstract class CSS_Model extends Model {

	/**
	 * Get CSS wrapper selector.
	 *
	 * Retrieve the wrapper selector for the current panel.
	 *
	 * @since 1.6.0
	 * @access public
	 * @abstract
	 */
	abstract public function get_css_wrapper_selector();
}
core/settings/base/css-manager.php000064400000004561151327220420013163 0ustar00<?php

namespace Elementor\Core\Settings\Base;

use Elementor\Core\Files\CSS\Base as CSS_File;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

abstract class CSS_Manager extends Manager {

	/**
	 * Get CSS file name.
	 *
	 * Retrieve CSS file name for the settings base css manager.
	 *
	 * @since 2.8.0
	 * @access protected
	 * @abstract
	 *
	 * @return string CSS file name
	 */
	abstract protected function get_css_file_name();

	/**
	 * Get model for CSS file.
	 *
	 * Retrieve the model for the CSS file.
	 *
	 * @since 2.8.0
	 * @access protected
	 * @abstract
	 *
	 * @param CSS_File $css_file The requested CSS file.
	 *
	 * @return CSS_Model
	 *
	 */
	abstract protected function get_model_for_css_file( CSS_File $css_file );

	/**
	 * Get CSS file for update.
	 *
	 * Retrieve the CSS file before updating it.
	 *
	 * @since 2.8.0
	 * @access protected
	 * @abstract
	 *
	 * @param int $id Post ID.
	 *
	 * @return CSS_File
	 *
	 */
	abstract protected function get_css_file_for_update( $id );

	/**
	 * Settings base manager constructor.
	 *
	 * Initializing Elementor settings base css manager.
	 *
	 * @since 2.8.0
	 * @access public
	 */
	public function __construct() {
		parent::__construct();

		$name = $this->get_css_file_name();

		add_action( "elementor/css-file/{$name}/parse", [ $this, 'add_settings_css_rules' ] );
	}

	/**
	 * Save settings.
	 *
	 * Save settings to the database and update the CSS file.
	 *
	 * @since 2.8.0
	 * @access public
	 *
	 * @param array $settings Settings.
	 * @param int   $id       Optional. Post ID. Default is `0`.
	 */
	public function save_settings( array $settings, $id = 0 ) {
		parent::save_settings( $settings, $id );

		$css_file = $this->get_css_file_for_update( $id );

		if ( $css_file ) {
			$css_file->update();
		}
	}

	/**
	 * Add settings CSS rules.
	 *
	 * Add new CSS rules to the settings manager.
	 *
	 * Fired by `elementor/css-file/{$name}/parse` action.
	 *
	 * @since 2.8.0
	 * @access public
	 *
	 * @param CSS_File $css_file The requested CSS file.
	 *
	 */
	public function add_settings_css_rules( CSS_File $css_file ) {
		$model = $this->get_model_for_css_file( $css_file );

		$css_file->add_controls_stack_style_rules(
			$model,
			$css_file->get_style_controls( $model, null, $model->get_settings() ),
			$model->get_settings(),
			[ '{{WRAPPER}}' ],
			[ $model->get_css_wrapper_selector() ]
		);
	}
}
core/settings/base/manager.php000064400000017153151327220420012376 0ustar00<?php
namespace Elementor\Core\Settings\Base;

use Elementor\Core\Common\Modules\Ajax\Module as Ajax;
use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor settings base manager.
 *
 * Elementor settings base manager handler class is responsible for registering
 * and managing Elementor settings base managers.
 *
 * @since 1.6.0
 * @abstract
 */
abstract class Manager {

	/**
	 * Models cache.
	 *
	 * Holds all the models.
	 *
	 * @since 1.6.0
	 * @access private
	 *
	 * @var Model[]
	 */
	private $models_cache = [];

	/**
	 * Settings base manager constructor.
	 *
	 * Initializing Elementor settings base manager.
	 *
	 * @since 1.6.0
	 * @access public
	 */
	public function __construct() {
		add_action( 'elementor/editor/init', [ $this, 'on_elementor_editor_init' ] );

		add_action( 'elementor/ajax/register_actions', [ $this, 'register_ajax_actions' ] );
	}

	/**
	 * Register ajax actions.
	 *
	 * Add new actions to handle data after an ajax requests returned.
	 *
	 * Fired by `elementor/ajax/register_actions` action.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @param Ajax $ajax_manager
	 */
	public function register_ajax_actions( $ajax_manager ) {
		$name = $this->get_name();

		$ajax_manager->register_ajax_action( "save_{$name}_settings", [ $this, 'ajax_save_settings' ] );
	}

	/**
	 * Get model for config.
	 *
	 * Retrieve the model for settings configuration.
	 *
	 * @since 1.6.0
	 * @access public
	 * @abstract
	 *
	 * @return Model The model object.
	 */
	abstract public function get_model_for_config();

	/**
	 * Get manager name.
	 *
	 * Retrieve settings manager name.
	 *
	 * @since 1.6.0
	 * @access public
	 * @abstract
	 */
	abstract public function get_name();

	/**
	 * Get model.
	 *
	 * Retrieve the model for any given model ID.
	 *
	 * @since 1.6.0
	 * @access public
	 *
	 * @param int $id Optional. Model ID. Default is `0`.
	 *
	 * @return Model The model.
	 */
	final public function get_model( $id = 0 ) {
		if ( ! isset( $this->models_cache[ $id ] ) ) {
			$this->create_model( $id );
		}

		return $this->models_cache[ $id ];
	}

	/**
	 * Ajax request to save settings.
	 *
	 * Save settings using an ajax request.
	 *
	 * @since 1.6.0
	 * @access public
	 *
	 * @param array $request Ajax request.
	 *
	 * @return array Ajax response data.
	 */
	final public function ajax_save_settings( $request ) {
		$data = $request['data'];

		$id = 0;

		if ( ! empty( $request['id'] ) ) {
			$id = $request['id'];
		}

		$this->ajax_before_save_settings( $data, $id );

		$this->save_settings( $data, $id );

		$settings_name = $this->get_name();

		$success_response_data = [];

		/**
		 * Settings success response data.
		 *
		 * Filters the success response data when saving settings using ajax.
		 *
		 * The dynamic portion of the hook name, `$settings_name`, refers to the settings name.
		 *
		 * @since 2.0.0
		 *
		 * @param array $success_response_data Success response data.
		 * @param int   $id                    Settings ID.
		 * @param array $data                  Settings data.
		 */
		$success_response_data = apply_filters( "elementor/settings/{$settings_name}/success_response_data", $success_response_data, $id, $data );

		return $success_response_data;
	}

	/**
	 * Save settings.
	 *
	 * Save settings to the database.
	 *
	 * @since 1.6.0
	 * @access public
	 *
	 * @param array $settings Settings.
	 * @param int   $id       Optional. Post ID. Default is `0`.
	 */
	public function save_settings( array $settings, $id = 0 ) {
		$special_settings = $this->get_special_settings_names();

		$settings_to_save = $settings;

		foreach ( $special_settings as $special_setting ) {
			if ( isset( $settings_to_save[ $special_setting ] ) ) {
				unset( $settings_to_save[ $special_setting ] );
			}
		}

		$this->save_settings_to_db( $settings_to_save, $id );

		// Clear cache after save.
		if ( isset( $this->models_cache[ $id ] ) ) {
			unset( $this->models_cache[ $id ] );
		}
	}

	/**
	 * On Elementor init.
	 *
	 * Add editor template for the settings
	 *
	 * Fired by `elementor/init` action.
	 *
	 * @since 2.3.0
	 * @access public
	 */
	public function on_elementor_editor_init() {
		Plugin::$instance->common->add_template( $this->get_editor_template(), 'text' );
	}

	/**
	 * Get saved settings.
	 *
	 * Retrieve the saved settings from the database.
	 *
	 * @since 1.6.0
	 * @access protected
	 * @abstract
	 *
	 * @param int $id Post ID.
	 */
	abstract protected function get_saved_settings( $id );

	/**
	 * Save settings to DB.
	 *
	 * Save settings to the database.
	 *
	 * @since 1.6.0
	 * @access protected
	 * @abstract
	 *
	 * @param array $settings Settings.
	 * @param int   $id       Post ID.
	 */
	abstract protected function save_settings_to_db( array $settings, $id );

	/**
	 * Get special settings names.
	 *
	 * Retrieve the names of the special settings that are not saved as regular
	 * settings. Those settings have a separate saving process.
	 *
	 * @since 1.6.0
	 * @access protected
	 *
	 * @return array Special settings names.
	 */
	protected function get_special_settings_names() {
		return [];
	}

	/**
	 * Ajax before saving settings.
	 *
	 * Validate the data before saving it and updating the data in the database.
	 *
	 * @since 1.6.0
	 * @access public
	 *
	 * @param array $data Post data.
	 * @param int   $id   Post ID.
	 */
	public function ajax_before_save_settings( array $data, $id ) {}

	/**
	 * Print the setting template content in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 1.6.0
	 * @access protected
	 *
	 * @param string $name Settings panel name.
	 */
	protected function print_editor_template_content( $name ) {
		?>
		<#
		const tabs = elementor.config.settings.<?php
			// PHPCS - the variable $name does not contain a user input value.
			echo $name; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
		?>.tabs;

		if ( Object.values( tabs ).length > 1 ) { #>
			<div class="elementor-panel-navigation">
				<# _.each( tabs, function( tabTitle, tabSlug ) {
					$e.bc.ensureTab( 'panel/<?php
						// PHPCS - the variable $name does not contain a user input value.
						echo $name; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
					?>-settings', tabSlug ); #>
					<div class="elementor-component-tab elementor-panel-navigation-tab elementor-tab-control-{{ tabSlug }}" data-tab="{{ tabSlug }}">
						<a href="#">{{{ tabTitle }}}</a>
					</div>
				<# } ); #>
			</div>
		<# } #>
		<div id="elementor-panel-<?php echo esc_attr( $name ); ?>-settings-controls"></div>
		<?php
	}

	/**
	 * Create model.
	 *
	 * Create a new model object for any given model ID and store the object in
	 * models cache property for later use.
	 *
	 * @since 1.6.0
	 * @access private
	 *
	 * @param int $id Model ID.
	 */
	private function create_model( $id ) {
		$class_parts = explode( '\\', get_called_class() );

		array_splice( $class_parts, count( $class_parts ) - 1, 1, 'Model' );

		$class_name = implode( '\\', $class_parts );

		$this->models_cache[ $id ] = new $class_name( [
			'id' => $id,
			'settings' => $this->get_saved_settings( $id ),
		] );
	}

	/**
	 * Get editor template.
	 *
	 * Retrieve the final HTML for the editor.
	 *
	 * @since 1.6.0
	 * @access private
	 *
	 * @return string Settings editor template.
	 */
	private function get_editor_template() {
		$name = $this->get_name();

		ob_start();
		?>
		<script type="text/template" id="tmpl-elementor-panel-<?php echo esc_attr( $name ); ?>-settings">
			<?php $this->print_editor_template_content( $name ); ?>
		</script>
		<?php

		return ob_get_clean();
	}
}
core/settings/editor-preferences/model.php000064400000006074151327220420014737 0ustar00<?php

namespace Elementor\Core\Settings\EditorPreferences;

use Elementor\Controls_Manager;
use Elementor\Core\Settings\Base\Model as BaseModel;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Model extends BaseModel {

	/**
	 * Get element name.
	 *
	 * Retrieve the element name.
	 *
	 * @return string The name.
	 * @since 2.8.0
	 * @access public
	 *
	 */
	public function get_name() {
		return 'editor-preferences';
	}

	/**
	 * Get panel page settings.
	 *
	 * Retrieve the page setting for the current panel.
	 *
	 * @since 2.8.0
	 * @access public
	 */
	public function get_panel_page_settings() {
		return [
			'title' => esc_html__( 'User Preferences', 'elementor' ),
		];
	}

	/**
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		$this->start_controls_section(
			'preferences',
			[
				'tab' => Controls_Manager::TAB_SETTINGS,
				'label' => esc_html__( 'Preferences', 'elementor' ),
			]
		);

		$this->add_control(
			'ui_theme',
			[
				'label' => esc_html__( 'UI Theme', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'description' => esc_html__( 'Set light or dark mode, or use Auto Detect to sync it with your OS setting.', 'elementor' ),
				'default' => 'auto',
				'options' => [
					'auto' => esc_html__( 'Auto Detect', 'elementor' ),
					'light' => esc_html__( 'Light', 'elementor' ),
					'dark' => esc_html__( 'Dark', 'elementor' ),
				],
			]
		);

		$this->add_control(
			'panel_width',
			[
				'label' => esc_html__( 'Panel Width', 'elementor' ),
				'type' => Controls_Manager::SLIDER,
				'range' => [
					'px' => [
						'min' => 200,
						'max' => 680,
					],
				],
				'default' => [
					'size' => 300,
				],
			]
		);

		$this->add_control(
			'edit_buttons',
			[
				'label' => esc_html__( 'Editing Handles', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'description' => esc_html__( 'Show editing handles when hovering over the element edit button.', 'elementor' ),
			]
		);

		$this->add_control(
			'lightbox_in_editor',
			[
				'label' => esc_html__( 'Enable Lightbox In Editor', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'default' => 'yes',
			]
		);

		$this->add_control(
			'responsive_heading',
			[
				'label' => __( 'Responsive Preview', 'elementor' ),
				'type' => Controls_Manager::HEADING,
				'separator' => 'before',
			]
		);

		$this->add_control(
			'show_hidden_elements',
			[
				'label' => __( 'Hidden Elements', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'label_on' => 'Show',
				'label_off' => 'Hide',
				'default' => 'yes',
			]
		);

		$this->add_control(
			'default_device_view',
			[
				'label' => esc_html__( 'Default Device View ', 'elementor' ),
				'type' => Controls_Manager::SELECT,
				'default' => 'default',
				'options' => [
					'default' => esc_html__( 'Default', 'elementor' ),
					'mobile' => esc_html__( 'Mobile', 'elementor' ),
					'tablet' => esc_html__( 'Tablet', 'elementor' ),
					'desktop' => esc_html__( 'Desktop', 'elementor' ),
				],
			]
		);

		$this->end_controls_section();
	}
}
core/settings/editor-preferences/manager.php000064400000002662151327220420015250 0ustar00<?php

namespace Elementor\Core\Settings\EditorPreferences;

use Elementor\Core\Settings\Base\Manager as BaseManager;
use Elementor\Core\Settings\Base\Model as BaseModel;


if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Manager extends BaseManager {

	const META_KEY = 'elementor_preferences';

	/**
	 * Get model for config.
	 *
	 * Retrieve the model for settings configuration.
	 *
	 * @since 2.8.0
	 * @access public
	 *
	 * @return BaseModel The model object.
	 *
	 */
	public function get_model_for_config() {
		return $this->get_model();
	}

	/**
	 * Get manager name.
	 *
	 * Retrieve settings manager name.
	 *
	 * @since 2.8.0
	 * @access public
	 */
	public function get_name() {
		return 'editorPreferences';
	}

	/**
	 * Get saved settings.
	 *
	 * Retrieve the saved settings from the database.
	 *
	 * @since 2.8.0
	 * @access protected
	 *
	 * @param int $id.
	 * @return array
	 *
	 */
	protected function get_saved_settings( $id ) {
		$settings = get_user_meta( get_current_user_id(), self::META_KEY, true );

		if ( ! $settings ) {
			$settings = [];
		}

		return $settings;
	}

	/**
	 * Save settings to DB.
	 *
	 * Save settings to the database.
	 *
	 * @param array $settings Settings.
	 * @param int $id Post ID.
	 * @since 2.8.0
	 * @access protected
	 *
	 */
	protected function save_settings_to_db( array $settings, $id ) {
		update_user_meta( get_current_user_id(), self::META_KEY, $settings );
	}
}
core/files/assets/files-upload-handler.php000064400000007176151327220420014621 0ustar00<?php

namespace Elementor\Core\Files\Assets;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

abstract class Files_Upload_Handler {
	const OPTION_KEY = 'elementor_unfiltered_files_upload';

	public function __construct() {
		add_filter( 'upload_mimes', [ $this, 'support_unfiltered_files_upload' ] );
		add_filter( 'wp_handle_upload_prefilter', [ $this, 'handle_upload_prefilter' ] );
		add_filter( 'wp_check_filetype_and_ext', [ $this, 'check_filetype_and_ext' ], 10, 4 );
	}

	abstract public function get_mime_type();

	abstract public function get_file_type();

	/**
	 * is_elementor_media_upload
	 * @return bool
	 */
	private function is_elementor_media_upload() {
		return isset( $_POST['uploadTypeCaller'] ) && 'elementor-wp-media-upload' === $_POST['uploadTypeCaller']; // phpcs:ignore
	}

	/**
	 * @return bool
	 */
	final public static function is_enabled() {
		$enabled = ! ! get_option( self::OPTION_KEY ) && self::file_sanitizer_can_run();

		/**
		 * @deprecated 3.0.0 Use `elementor/document/urls/edit` filter instead.
		 */
		$enabled = apply_filters( 'elementor/files/svg/enabled', $enabled );

		/**
		 * Allow Unfiltered Files Upload.
		 *
		 * Determines whether to enable unfiltered file uploads.
		 *
		 * @since 3.0.0
		 *
		 * @param bool $enabled Whether upload is enabled or not.
		 */
		$enabled = apply_filters( 'elementor/files/allow_unfiltered_upload', $enabled );

		return $enabled;
	}

	final public function support_unfiltered_files_upload( $existing_mimes ) {
		if ( $this->is_elementor_media_upload() && $this->is_enabled() ) {
			$existing_mimes[ $this->get_file_type() ] = $this->get_mime_type();
		}

		return $existing_mimes;
	}

	/**
	 * handle_upload_prefilter
	 * @param $file
	 *
	 * @return mixed
	 */
	public function handle_upload_prefilter( $file ) {
		if ( ! $this->is_file_should_handled( $file ) ) {
			return $file;
		}

		$ext = pathinfo( $file['name'], PATHINFO_EXTENSION );
		$file_type = $this->get_file_type();
		$display_type = strtoupper( $file_type );

		if ( $file_type !== $ext ) {
			/* translators: 1: File extension, 2: File type. */
			$file['error'] = sprintf( esc_html__( 'The uploaded %1$s file is not supported. Please upload a valid %2$s file', 'elementor' ), $ext, $display_type );
			return $file;
		}

		if ( ! self::is_enabled() ) {
			/* translators: %s: File type. */
			$file['error'] = sprintf( esc_html__( '%1$s file is not allowed for security reasons', 'elementor' ), $display_type );
			return $file;
		}

		return $file;
	}

	protected function is_file_should_handled( $file ) {
		$ext = pathinfo( $file['name'], PATHINFO_EXTENSION );

		return $this->is_elementor_media_upload() && $this->get_file_type() === $ext;
	}

	/**
	 * file_sanitizer_can_run
	 * @return bool
	 */
	public static function file_sanitizer_can_run() {
		return class_exists( 'DOMDocument' ) && class_exists( 'SimpleXMLElement' );
	}

	/**
	 * Check filetype and ext
	 *
	 * A workaround for upload validation which relies on a PHP extension (fileinfo)
	 * with inconsistent reporting behaviour.
	 * ref: https://core.trac.wordpress.org/ticket/39550
	 * ref: https://core.trac.wordpress.org/ticket/40175
	 *
	 * @param $data
	 * @param $file
	 * @param $filename
	 * @param $mimes
	 *
	 * @return mixed
	 */
	public function check_filetype_and_ext( $data, $file, $filename, $mimes ) {
		if ( ! empty( $data['ext'] ) && ! empty( $data['type'] ) ) {
			return $data;
		}

		$wp_file_type = wp_check_filetype( $filename, $mimes );
		$file_type = strtolower( $this->get_file_type() );

		if ( $file_type === $wp_file_type['ext'] ) {
			$data['ext'] = $file_type;
			$data['type'] = $this->get_mime_type();
		}

		return $data;
	}
}
core/files/assets/manager.php000064400000002325151327220420012223 0ustar00<?php
namespace Elementor\Core\Files\Assets;

use Elementor\Core\Files\Assets\Svg\Svg_Handler;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor files manager.
 *
 * Elementor files manager handler class is responsible for creating files.
 *
 * @since 2.6.0
 */
class Manager {

	/**
	 * Holds registered asset types
	 * @var array
	 */
	protected $asset_types = [];

	/**
	 * Assets manager constructor.
	 *
	 * Initializing the Elementor assets manager.
	 *
	 * @access public
	 */
	public function __construct() {
		$this->register_asset_types();
		/**
		 * Elementor files assets registered.
		 *
		 * Fires after Elementor registers assets types
		 *
		 * @since 2.6.0
		 */
		do_action( 'elementor/core/files/assets/assets_registered', $this );
	}

	public function get_asset( $name ) {
		return isset( $this->asset_types[ $name ] ) ? $this->asset_types[ $name ] : false;
	}

	/**
	 * Add Asset
	 * @param $instance
	 */
	public function add_asset( $instance ) {
		$this->asset_types[ $instance::get_name() ] = $instance;
	}


	/**
	 * Register Asset Types
	 *
	 * Registers Elementor Asset Types
	 */
	private function register_asset_types() {
		$this->add_asset( new Svg_Handler() );
	}
}
core/files/assets/json/json-handler.php000064400000000643151327220420014147 0ustar00<?php
namespace Elementor\Core\Files\Assets\Json;

use Elementor\Core\Files\Assets\Files_Upload_Handler;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

class Json_Handler extends Files_Upload_Handler {
	public static function get_name() {
		return 'json-handler';
	}

	public function get_mime_type() {
		return 'application/json';
	}

	public function get_file_type() {
		return 'json';
	}
}
core/files/assets/svg/svg-handler.php000064400000043701151327220420013625 0ustar00<?php
namespace Elementor\Core\Files\Assets\Svg;

use Elementor\Core\Files\Assets\Files_Upload_Handler;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

class Svg_Handler extends Files_Upload_Handler {
	/**
	 * Inline svg attachment meta key
	 */
	const META_KEY = '_elementor_inline_svg';

	const SCRIPT_REGEX = '/(?:\w+script|data):/xi';

	/**
	 * @var \DOMDocument
	 */
	private $svg_dom = null;

	/**
	 * Attachment ID.
	 *
	 * Holds the current attachment ID.
	 *
	 * @var int
	 */
	private $attachment_id;

	public static function get_name() {
		return 'svg-handler';
	}

	/**
	 * get_meta
	 * @return mixed
	 */
	protected function get_meta() {
		return get_post_meta( $this->attachment_id, self::META_KEY, true );
	}

	/**
	 * update_meta
	 * @param $meta
	 */
	protected function update_meta( $meta ) {
		update_post_meta( $this->attachment_id, self::META_KEY, $meta );
	}

	/**
	 * delete_meta
	 */
	protected function delete_meta() {
		delete_post_meta( $this->attachment_id, self::META_KEY );
	}

	public function get_mime_type() {
		return 'image/svg+xml';
	}

	public function get_file_type() {
		return 'svg';
	}

	/**
	 * delete_meta_cache
	 */
	public function delete_meta_cache() {
		delete_post_meta_by_key( self::META_KEY );
	}

	/**
	 * read_from_file
	 * @return bool|string
	 */
	public function read_from_file() {
		return file_get_contents( get_attached_file( $this->attachment_id ) );
	}

	/**
	 * get_inline_svg
	 * @param $attachment_id
	 *
	 * @return bool|mixed|string
	 */
	public static function get_inline_svg( $attachment_id ) {
		$svg = get_post_meta( $attachment_id, self::META_KEY, true );

		if ( ! empty( $svg ) ) {
			return $svg;
		}

		$attachment_file = get_attached_file( $attachment_id );

		if ( ! $attachment_file ) {
			return '';
		}

		$svg = file_get_contents( $attachment_file );

		if ( ! empty( $svg ) ) {
			update_post_meta( $attachment_id, self::META_KEY, $svg );
		}

		return $svg;
	}

	/**
	 * decode_svg
	 * @param $content
	 *
	 * @return string
	 */
	private function decode_svg( $content ) {
		return gzdecode( $content );
	}

	/**
	 * encode_svg
	 * @param $content
	 *
	 * @return string
	 */
	private function encode_svg( $content ) {
		return gzencode( $content );
	}

	/**
	 * sanitize_svg
	 * @param $filename
	 *
	 * @return bool
	 */
	public function sanitize_svg( $filename ) {
		$original_content = file_get_contents( $filename );
		$is_encoded = $this->is_encoded( $original_content );

		if ( $is_encoded ) {
			$decoded = $this->decode_svg( $original_content );
			if ( false === $decoded ) {
				return false;
			}
			$original_content = $decoded;
		}

		$valid_svg = $this->sanitizer( $original_content );

		if ( false === $valid_svg ) {
			return false;
		}

		// If we were gzipped, we need to re-zip
		if ( $is_encoded ) {
			$valid_svg = $this->encode_svg( $valid_svg );
		}
		file_put_contents( $filename, $valid_svg );

		return true;
	}

	/**
	 * Check if the contents are gzipped
	 * @see http://www.gzip.org/zlib/rfc-gzip.html#member-format
	 *
	 * @param $contents
	 * @return bool
	 */
	private function is_encoded( $contents ) {
		$needle = "\x1f\x8b\x08";
		if ( function_exists( 'mb_strpos' ) ) {
			return 0 === mb_strpos( $contents, $needle );
		} else {
			return 0 === strpos( $contents, $needle );
		}
	}

	/**
	 * is_allowed_tag
	 * @param $element
	 *
	 * @return bool
	 */
	private function is_allowed_tag( $element ) {
		static $allowed_tags = false;
		if ( false === $allowed_tags ) {
			$allowed_tags = $this->get_allowed_elements();
		}

		$tag_name = $element->tagName; // phpcs:ignore -- php DomDocument

		if ( ! in_array( strtolower( $tag_name ), $allowed_tags ) ) {
			$this->remove_element( $element );
			return false;
		}

		return true;
	}

	private function remove_element( $element ) {
		$element->parentNode->removeChild( $element ); // phpcs:ignore -- php DomDocument
	}

	/**
	 * is_a_attribute
	 * @param $name
	 * @param $check
	 *
	 * @return bool
	 */
	private function is_a_attribute( $name, $check ) {
		return 0 === strpos( $name, $check . '-' );
	}

	/**
	 * is_remote_value
	 * @param $value
	 *
	 * @return string
	 */
	private function is_remote_value( $value ) {
		$value = trim( preg_replace( '/[^ -~]/xu', '', $value ) );
		$wrapped_in_url = preg_match( '~^url\(\s*[\'"]\s*(.*)\s*[\'"]\s*\)$~xi', $value, $match );
		if ( ! $wrapped_in_url ) {
			return false;
		}

		$value = trim( $match[1], '\'"' );
		return preg_match( '~^((https?|ftp|file):)?//~xi', $value );
	}

	/**
	 * has_js_value
	 * @param $value
	 *
	 * @return false|int
	 */
	private function has_js_value( $value ) {
		return preg_match( '/base64|data|(?:java)?script|alert\(|window\.|document/i', $value );
	}

	/**
	 * get_allowed_attributes
	 * @return array
	 */
	private function get_allowed_attributes() {
		$allowed_attributes = [
			'class',
			'clip-path',
			'clip-rule',
			'fill',
			'fill-opacity',
			'fill-rule',
			'filter',
			'id',
			'mask',
			'opacity',
			'stroke',
			'stroke-dasharray',
			'stroke-dashoffset',
			'stroke-linecap',
			'stroke-linejoin',
			'stroke-miterlimit',
			'stroke-opacity',
			'stroke-width',
			'style',
			'systemlanguage',
			'transform',
			'href',
			'xlink:href',
			'xlink:title',
			'cx',
			'cy',
			'r',
			'requiredfeatures',
			'clippathunits',
			'type',
			'rx',
			'ry',
			'color-interpolation-filters',
			'stddeviation',
			'filterres',
			'filterunits',
			'height',
			'primitiveunits',
			'width',
			'x',
			'y',
			'font-size',
			'display',
			'font-family',
			'font-style',
			'font-weight',
			'text-anchor',
			'marker-end',
			'marker-mid',
			'marker-start',
			'x1',
			'x2',
			'y1',
			'y2',
			'gradienttransform',
			'gradientunits',
			'spreadmethod',
			'markerheight',
			'markerunits',
			'markerwidth',
			'orient',
			'preserveaspectratio',
			'refx',
			'refy',
			'viewbox',
			'maskcontentunits',
			'maskunits',
			'd',
			'patterncontentunits',
			'patterntransform',
			'patternunits',
			'points',
			'fx',
			'fy',
			'offset',
			'stop-color',
			'stop-opacity',
			'xmlns',
			'xmlns:se',
			'xmlns:xlink',
			'xml:space',
			'method',
			'spacing',
			'startoffset',
			'dx',
			'dy',
			'rotate',
			'textlength',
		];

		/**
		 * Allowed attributes in SVG file.
		 *
		 * Filters the list of allowed attributes in SVG files.
		 *
		 * Since SVG files can run JS code that may inject malicious code, all attributes
		 * are removed except the allowed attributes.
		 *
		 * This hook can be used to manage allowed SVG attributes. To either add new
		 * attributes or delete existing attributes. To strengthen or weaken site security.
		 *
		 * @param array $allowed_attributes A list of allowed attributes.
		 */
		$allowed_attributes = apply_filters( 'elementor/files/svg/allowed_attributes', $allowed_attributes );

		return $allowed_attributes;
	}

	/**
	 * get_allowed_elements
	 * @return array
	 */
	private function get_allowed_elements() {
		$allowed_elements = [
			'a',
			'circle',
			'clippath',
			'defs',
			'style',
			'desc',
			'ellipse',
			'fegaussianblur',
			'filter',
			'foreignobject',
			'g',
			'image',
			'line',
			'lineargradient',
			'marker',
			'mask',
			'metadata',
			'path',
			'pattern',
			'polygon',
			'polyline',
			'radialgradient',
			'rect',
			'stop',
			'svg',
			'switch',
			'symbol',
			'text',
			'textpath',
			'title',
			'tspan',
			'use',
		];

		/**
		 * Allowed elements in SVG file.
		 *
		 * Filters the list of allowed elements in SVG files.
		 *
		 * Since SVG files can run JS code that may inject malicious code, all elements
		 * are removed except the allowed elements.
		 *
		 * This hook can be used to manage SVG elements. To either add new elements or
		 * delete existing elements. To strengthen or weaken site security.
		 *
		 * @param array $allowed_elements A list of allowed elements.
		 */
		$allowed_elements = apply_filters( 'elementor/files/svg/allowed_elements', $allowed_elements );

		return $allowed_elements;
	}

	/**
	 * validate_allowed_attributes
	 * @param \DOMElement $element
	 */
	private function validate_allowed_attributes( $element ) {
		static $allowed_attributes = false;
		if ( false === $allowed_attributes ) {
			$allowed_attributes = $this->get_allowed_attributes();
		}

		for ( $index = $element->attributes->length - 1; $index >= 0; $index-- ) {
			// get attribute name
			$attr_name = $element->attributes->item( $index )->name;
			$attr_name_lowercase = strtolower( $attr_name );
			// Remove attribute if not in whitelist
			if ( ! in_array( $attr_name_lowercase, $allowed_attributes ) && ! $this->is_a_attribute( $attr_name_lowercase, 'aria' ) && ! $this->is_a_attribute( $attr_name_lowercase, 'data' ) ) {
				$element->removeAttribute( $attr_name );
				continue;
			}

			$attr_value = $element->attributes->item( $index )->value;

			// Remove attribute if it has a remote reference or js or data-URI/base64
			if ( ! empty( $attr_value ) && ( $this->is_remote_value( $attr_value ) || $this->has_js_value( $attr_value ) ) ) {
				$element->removeAttribute( $attr_name );
				continue;
			}
		}
	}

	/**
	 * strip_xlinks
	 * @param \DOMElement $element
	 */
	private function strip_xlinks( $element ) {
		$xlinks = $element->getAttributeNS( 'http://www.w3.org/1999/xlink', 'href' );

		if ( ! $xlinks ) {
			return;
		}

		$allowed_links = [
			'data:image/png', // PNG
			'data:image/gif', // GIF
			'data:image/jpg', // JPG
			'data:image/jpe', // JPEG
			'data:image/pjp', // PJPEG
		];
		if ( 1 === preg_match( self::SCRIPT_REGEX, $xlinks ) ) {
			if ( ! in_array( substr( $xlinks, 0, 14 ), $allowed_links ) ) {
				$element->removeAttributeNS( 'http://www.w3.org/1999/xlink', 'href' );
			}
		}
	}

	/**
	 * validate_use_tag
	 * @param $element
	 */
	private function validate_use_tag( $element ) {
		$xlinks = $element->getAttributeNS( 'http://www.w3.org/1999/xlink', 'href' );
		if ( $xlinks && '#' !== substr( $xlinks, 0, 1 ) ) {
			$element->parentNode->removeChild( $element ); // phpcs:ignore -- php DomNode
		}
	}

	/**
	 * strip_docktype
	 */
	private function strip_doctype() {
		foreach ( $this->svg_dom->childNodes as $child ) {
			if ( XML_DOCUMENT_TYPE_NODE === $child->nodeType ) { // phpcs:ignore -- php DomDocument
				$child->parentNode->removeChild( $child ); // phpcs:ignore -- php DomDocument
			}
		}
	}

	/**
	 * sanitize_elements
	 */
	private function sanitize_elements() {
		$elements = $this->svg_dom->getElementsByTagName( '*' );
		// loop through all elements
		// we do this backwards so we don't skip anything if we delete a node
		// see comments at: http://php.net/manual/en/class.domnamednodemap.php
		for ( $index = $elements->length - 1; $index >= 0; $index-- ) {
			/**
			 * @var \DOMElement $current_element
			 */
			$current_element = $elements->item( $index );
			// If the tag isn't in the whitelist, remove it and continue with next iteration
			if ( ! $this->is_allowed_tag( $current_element ) ) {
				continue;
			}

			//validate element attributes
			$this->validate_allowed_attributes( $current_element );

			$this->strip_xlinks( $current_element );

			if ( 'use' === strtolower( $current_element->tagName ) ) { // phpcs:ignore -- php DomDocument
				$this->validate_use_tag( $current_element );
			}
		}
	}

	/**
	 * sanitizer
	 * @param $content
	 *
	 * @return bool|string
	 */
	public function sanitizer( $content ) {
		// Strip php tags
		$content = $this->strip_comments( $content );
		$content = $this->strip_php_tags( $content );

		// Find the start and end tags so we can cut out miscellaneous garbage.
		$start = strpos( $content, '<svg' );
		$end = strrpos( $content, '</svg>' );
		if ( false === $start || false === $end ) {
			return false;
		}

		$content = substr( $content, $start, ( $end - $start + 6 ) );

		// If the server's PHP version is 8 or up, make sure to Disable the ability to load external entities
		$php_version_under_eight = version_compare( PHP_VERSION, '8.0.0', '<' );
		if ( $php_version_under_eight ) {
			$libxml_disable_entity_loader = libxml_disable_entity_loader( true ); // phpcs:ignore Generic.PHP.DeprecatedFunctions.Deprecated
		}
		// Suppress the errors
		$libxml_use_internal_errors = libxml_use_internal_errors( true );

		// Create DomDocument instance
		$this->svg_dom = new \DOMDocument();
		$this->svg_dom->formatOutput = false;
		$this->svg_dom->preserveWhiteSpace = false;
		$this->svg_dom->strictErrorChecking = false;

		$open_svg = $this->svg_dom->loadXML( $content );
		if ( ! $open_svg ) {
			return false;
		}

		$this->strip_doctype();
		$this->sanitize_elements();

		// Export sanitized svg to string
		// Using documentElement to strip out <?xml version="1.0" encoding="UTF-8"...
		$sanitized = $this->svg_dom->saveXML( $this->svg_dom->documentElement, LIBXML_NOEMPTYTAG );

		// Restore defaults
		if ( $php_version_under_eight ) {
			libxml_disable_entity_loader( $libxml_disable_entity_loader ); // phpcs:ignore Generic.PHP.DeprecatedFunctions.Deprecated
		}
		libxml_use_internal_errors( $libxml_use_internal_errors );

		return $sanitized;
	}

	/**
	 * strip_php_tags
	 * @param $string
	 *
	 * @return string
	 */
	private function strip_php_tags( $string ) {
		$string = preg_replace( '/<\?(=|php)(.+?)\?>/i', '', $string );
		// Remove XML, ASP, etc.
		$string = preg_replace( '/<\?(.*)\?>/Us', '', $string );
		$string = preg_replace( '/<\%(.*)\%>/Us', '', $string );

		if ( ( false !== strpos( $string, '<?' ) ) || ( false !== strpos( $string, '<%' ) ) ) {
			return '';
		}
		return $string;
	}

	/**
	 * strip_comments
	 * @param $string
	 *
	 * @return string
	 */
	private function strip_comments( $string ) {
		// Remove comments.
		$string = preg_replace( '/<!--(.*)-->/Us', '', $string );
		$string = preg_replace( '/\/\*(.*)\*\//Us', '', $string );
		if ( ( false !== strpos( $string, '<!--' ) ) || ( false !== strpos( $string, '/*' ) ) ) {
			return '';
		}
		return $string;
	}

	/**
	 * wp_prepare_attachment_for_js
	 * @param $attachment_data
	 * @param $attachment
	 * @param $meta
	 *
	 * @return mixed
	 */
	public function wp_prepare_attachment_for_js( $attachment_data, $attachment, $meta ) {
		if ( 'image' !== $attachment_data['type'] || 'svg+xml' !== $attachment_data['subtype'] || ! class_exists( 'SimpleXMLElement' ) ) {
			return $attachment_data;
		}

		$svg = self::get_inline_svg( $attachment->ID );

		if ( ! $svg ) {
			return $attachment_data;
		}

		try {
			$svg = new \SimpleXMLElement( $svg );
		} catch ( \Exception $e ) {
			return $attachment_data;
		}

		$src = $attachment_data['url'];
		$width = (int) $svg['width'];
		$height = (int) $svg['height'];

		// Media Gallery
		$attachment_data['image'] = compact( 'src', 'width', 'height' );
		$attachment_data['thumb'] = compact( 'src', 'width', 'height' );

		// Single Details of Image
		$attachment_data['sizes']['full'] = [
			'height' => $height,
			'width' => $width,
			'url' => $src,
			'orientation' => $height > $width ? 'portrait' : 'landscape',
		];
		return $attachment_data;
	}

	/**
	 * set_attachment_id
	 * @param $attachment_id
	 *
	 * @return int
	 */
	public function set_attachment_id( $attachment_id ) {
		$this->attachment_id = $attachment_id;
		return $this->attachment_id;
	}

	/**
	 * get_attachment_id
	 * @return int
	 */
	public function get_attachment_id() {
		return $this->attachment_id;
	}

	/**
	 * set_svg_meta_data
	 * @return mixed
	 */
	public function set_svg_meta_data( $data, $id ) {
		$attachment = get_post( $id ); // Filter makes sure that the post is an attachment.
		$mime_type = $attachment->post_mime_type;

		// If the attachment is an svg
		if ( 'image/svg+xml' === $mime_type ) {
			// If the svg metadata are empty or the width is empty or the height is empty.
			// then get the attributes from xml.
			if ( empty( $data ) || empty( $data['width'] ) || empty( $data['height'] ) ) {
				$xml = simplexml_load_file( get_attached_file( $id ) );
				$attr = $xml->attributes();
				$view_box = explode( ' ', $attr->viewBox );// phpcs:ignore WordPress.NamingConventions.ValidVariableName.UsedPropertyNotSnakeCase
				$data['width'] = isset( $attr->width ) && preg_match( '/\d+/', $attr->width, $value ) ? (int) $value[0] : ( 4 === count( $view_box ) ? (int) $view_box[2] : null );
				$data['height'] = isset( $attr->height ) && preg_match( '/\d+/', $attr->height, $value ) ? (int) $value[0] : ( 4 === count( $view_box ) ? (int) $view_box[3] : null );
			}
		}

		return $data;
	}

	/**
	 * handle_upload_prefilter
	 * @param $file
	 *
	 * @return mixed
	 */
	public function handle_upload_prefilter( $file ) {
		if ( ! $this->is_file_should_handled( $file ) ) {
			return $file;
		}

		$file = parent::handle_upload_prefilter( $file );

		if ( ! $file['error'] && self::file_sanitizer_can_run() && ! $this->sanitize_svg( $file['tmp_name'] ) ) {
			$display_type = strtoupper( $this->get_file_type() );

			/* translators: %s: File type. */
			$file['error'] = sprintf( esc_html__( 'Invalid %1$s Format, file not uploaded for security reasons', 'elementor' ), $display_type );
		}

		return $file;
	}

	/**
	 * @since 3.0.0
	 * @deprecated 3.0.0 Use Files_Upload_Handler::file_sanitizer_can_run() instead.
	 */
	public function svg_sanitizer_can_run() {
		_deprecated_function( __METHOD__, '3.0.0', 'Files_Upload_Handler::file_sanitizer_can_run()' );

		return Files_Upload_Handler::file_sanitizer_can_run();
	}

	/**
	 * @since 3.0.0
	 * @deprecated 3.0.0
	 */
	public function upload_mimes() {
		_deprecated_function( __METHOD__, '3.0.0' );
	}

	/**
	 * @since 3.0.0
	 * @deprecated 3.0.0
	 */
	public function wp_handle_upload_prefilter() {
		_deprecated_function( __METHOD__, '3.0.0' );
	}

	/**
	 * @since 3.0.0
	 * @deprecated 3.0.0 Use Files_Upload_Handler::is_enabled() instead.
	 * @see is_enabled()
	 */
	public function is_svg_uploads_enabled() {
		_deprecated_function( __METHOD__, '3.0.0', 'Files_Upload_Handler::is_enabled()' );

		return Files_Upload_Handler::is_enabled();
	}

	/**
	 * Svg_Handler constructor.
	 */
	public function __construct() {
		parent::__construct();

		add_filter( 'wp_update_attachment_metadata', [ $this, 'set_svg_meta_data' ], 10, 2 );
		add_filter( 'wp_prepare_attachment_for_js', [ $this, 'wp_prepare_attachment_for_js' ], 10, 3 );
		add_action( 'elementor/core/files/clear_cache', [ $this, 'delete_meta_cache' ] );
	}
}
core/files/uploads-manager.php000064400000025154151327220420012373 0ustar00<?php
namespace Elementor\Core\Files;

use Elementor\Core\Base\Base_Object;
use Elementor\Core\Files\File_Types\Base as File_Type_Base;
use Elementor\Core\Files\File_Types\Json;
use Elementor\Core\Files\File_Types\Zip;
use Elementor\Core\Utils\Exceptions;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor uploads manager.
 *
 * Elementor uploads manager handler class is responsible for handling file uploads that are not done with WP Media.
 *
 * @since 3.3.0
 */
class Uploads_Manager extends Base_Object {

	const UNFILTERED_FILE_UPLOADS_KEY = 'elementor_unfiltered_files_upload';
	const INVALID_FILE_CONTENT = 'Invalid Content In File';

	/**
	 * @var File_Type_Base[]
	 */
	private $file_type_handlers = [];

	private $allowed_file_extensions;

	private $are_unfiltered_files_enabled;

	/**
	 * @var string
	 */
	private $temp_dir;

	/**
	 * Register File Types
	 *
	 * To Add a new file type to Elementor, with its own handling logic, you need to add it to the $file_types array here.
	 *
	 * @since 3.3.0
	 */
	public function register_file_types() {
		// All file types that have handlers should be included here.
		$file_types = [
			'json' => new Json(),
			'zip' => new Zip(),
		];

		foreach ( $file_types as $file_type => $file_handler ) {
			$this->file_type_handlers[ $file_type ] = $file_handler;
		}
	}

	/**
	 * Extract and Validate Zip
	 *
	 * This method accepts a $file array (which minimally should include a 'tmp_name')
	 *
	 * @param string $file_path
	 * @param array $allowed_file_types
	 * @return array|\WP_Error
	 */
	public function extract_and_validate_zip( $file_path, $allowed_file_types = null ) {
		$result = [];

		/** @var Zip $zip_handler - File Type */
		$zip_handler = $this->file_type_handlers['zip'];

		// Returns an array of file paths.
		$extracted = $zip_handler->extract( $file_path, $allowed_file_types );

		// If there are no extracted file names, no files passed the extraction validation.
		if ( empty( $extracted['files'] ) ) {
			// TODO: Decide what to do if no files passed the extraction validation
			return new \WP_Error( 'file_error', self::INVALID_FILE_CONTENT );
		}

		$result['extraction_directory'] = $extracted['extraction_directory'];

		foreach ( $extracted['files'] as $extracted_file_path ) {
			// Each file is an array with a 'name' (file path) property.
			if ( ! is_wp_error( $this->validate_file( $extracted_file_path ) ) ) {
				$result['files'][] = $extracted_file_path;
			}
		}

		return $result;
	}

	/**
	 * Handle Elementor Upload
	 *
	 * This method receives a $file array. If the received file is a Base64 string, the $file array should include a
	 * 'fileData' property containing the string, which is decoded and has its contents stored in a temporary file.
	 * If the $file parameter passed is a standard $file array, the 'name' and 'tmp_name' properties are used for
	 * validation.
	 *
	 * The file goes through validation; if it passes validation, the file is returned. Otherwise, an error is returned.
	 *
	 * @param array $file
	 * @param array $allowed_file_extensions Optional. an array of file types that are allowed to pass validation for each
	 * upload.
	 * @return array|\WP_Error
	 */
	public function handle_elementor_upload( array $file, $allowed_file_extensions = null ) {
		// If $file['fileData'] is set, it signals that the passed file is a Base64 string that needs to be decoded and
		// saved to a temporary file.
		if ( isset( $file['fileData'] ) ) {
			$file = $this->save_base64_to_tmp_file( $file );
		}

		$validation_result = $this->validate_file( $file['tmp_name'], $allowed_file_extensions );

		if ( is_wp_error( $validation_result ) ) {
			return $validation_result;
		}

		return $file;
	}

	/**
	 * Runs on the 'wp_handle_upload_prefilter' filter.
	 *
	 * @param $file
	 * @return mixed
	 */
	public function handle_elementor_wp_media_upload( $file ) {
		// If it isn't a file uploaded by Elementor, we do not intervene.
		if ( ! $this->is_elementor_wp_media_upload() ) {
			return $file;
		}

		$result = $this->validate_file( $file['tmp_name'] );

		if ( is_wp_error( $result ) ) {
			$file['error'] = $result->get_error_message();
		}

		return $file;
	}

	/**
	 * Get File Type Handler
	 *
	 * Initialize the proper file type handler according to the file extension
	 * and assign it to the file type handlers array.
	 *
	 * @since 3.3.0
	 *
	 * @param string|null $file_extension - file extension
	 * @return File_Type_Base[]|File_Type_Base
	 */
	public function get_file_type_handlers( $file_extension = null ) {
		return self::get_items( $this->file_type_handlers, $file_extension );
	}

	/**
	 * Create Temp File
	 *
	 * Create a random temporary file.
	 *
	 * @since 3.3.0
	 *
	 * @param string $file_content
	 * @param string $file_name
	 * @return string|\WP_Error
	 */
	public function create_temp_file( $file_content, $file_name ) {
		$temp_filename = $this->create_unique_dir() . $file_name;

		file_put_contents( $temp_filename, $file_content ); // phpcs:ignore

		return $temp_filename;
	}

	/**
	 * Get Temp Directory
	 *
	 * Get the temporary files directory path. If the directory does not exist, this method creates it.
	 *
	 * @since 3.3.0
	 *
	 * @return string $temp_dir
	 */
	public function get_temp_dir() {
		if ( ! $this->temp_dir ) {
			$wp_upload_dir = wp_upload_dir();

			$this->temp_dir = implode( DIRECTORY_SEPARATOR, [ $wp_upload_dir['basedir'], 'elementor', 'tmp' ] ) . DIRECTORY_SEPARATOR;

			if ( ! is_dir( $this->temp_dir ) ) {
				wp_mkdir_p( $this->temp_dir );
			}
		}

		return $this->temp_dir;
	}

	/**
	 * Create Unique Temp Dir
	 *
	 * Create a unique temporary directory
	 *
	 * @since 3.3.0
	 *
	 * @return string the new directory path
	 */
	public function create_unique_dir() {
		$unique_dir_path = $this->get_temp_dir() . uniqid() . DIRECTORY_SEPARATOR;

		wp_mkdir_p( $unique_dir_path );

		return $unique_dir_path;
	}

	/**
	 * Are Unfiltered Uploads Enabled
	 *
	 * Checks if the user allowed uploading unfiltered files.
	 *
	 * @since 3.3.0
	 *
	 * @return bool
	 */
	private function are_unfiltered_uploads_enabled() {
		if ( ! $this->are_unfiltered_files_enabled ) {
			$this->are_unfiltered_files_enabled = ! ! get_option( self::UNFILTERED_FILE_UPLOADS_KEY );
		}

		return $this->are_unfiltered_files_enabled;
	}

	/**
	 * Add File Extension To Allowed Extensions List
	 *
	 * @since 3.3.0
	 *
	 * @param string $file_type
	 */
	private function add_file_extension_to_allowed_extensions_list( $file_type ) {
		$file_handler = $this->file_type_handlers[ $file_type ];

		$file_extension = $file_handler->get_file_extension();

		// Only add the file extension to the list if it doesn't already exist in it.
		if ( ! in_array( $file_extension, $this->allowed_file_extensions, true ) ) {
			$this->allowed_file_extensions[] = $file_extension;
		}
	}

	/**
	 * Save Base64 as File
	 *
	 * Saves a Base64 string as a .tmp file in Elementor's temporary files directory.
	 *
	 * @since 3.3.0
	 *
	 * @param $file
	 * @return array|\WP_Error
	 */
	private function save_base64_to_tmp_file( $file ) {
		$file_content = base64_decode( $file['fileData'] ); // phpcs:ignore

		// If the decode fails
		if ( ! $file_content ) {
			return new \WP_Error( 'file_error', self::INVALID_FILE_CONTENT );
		}

		$temp_filename = $this->create_temp_file( $file_content, $file['fileName'] );

		if ( is_wp_error( $temp_filename ) ) {
			return $temp_filename;
		}

		$new_file_array = [
			// the original uploaded file name
			'name' => $file['fileName'],
			// The path to the temporary file
			'tmp_name' => $temp_filename,
		];

		return $new_file_array;
	}

	/**
	 * is_elementor_wp_media_upload
	 *
	 * @since 3.3.0
	 *
	 * @return bool
	 */
	private function is_elementor_wp_media_upload() {
		return isset( $_POST['elementor_wp_media_upload'] ); // phpcs:ignore
	}

	/**
	 * Validate File
	 *
	 * @since 3.3.0
	 *
	 * @param string $file_path
	 * @param array $file_extensions Optional
	 * @return bool|\WP_Error
	 *
	 */
	private function validate_file( $file_path, $file_extensions = [] ) {
		$file_extension = pathinfo( $file_path, PATHINFO_EXTENSION );

		$allowed_file_extensions = $this->get_allowed_file_extensions();

		if ( $file_extensions ) {
			$allowed_file_extensions = array_intersect( $allowed_file_extensions, $file_extensions );
		}

		// Check if the file type (extension) is in the allowed extensions list. If it is a non-standard file type (not
		// enabled by default in WordPress) and unfiltered file uploads are not enabled, it will not be in the allowed
		// file extensions list.
		if ( ! in_array( $file_extension, $allowed_file_extensions, true ) ) {
			return new \WP_Error( Exceptions::FORBIDDEN, 'Uploading this file type is not allowed.' );
		}

		$file_type_handler = $this->get_file_type_handlers( $file_extension );

		// If Elementor does not have a handler for this file type, don't block it.
		if ( ! $file_type_handler ) {
			return true;
		}

		// Here is each file type handler's chance to run its own specific validations
		return $file_type_handler->validate_file( $file_path );
	}

	/**
	 * Remove File Or Directory
	 *
	 * Directory is deleted recursively with all of its contents (subdirectories and files).
	 *
	 * @since 3.3.0
	 *
	 * @param string $path
	 */
	public function remove_file_or_dir( $path ) {
		if ( is_dir( $path ) ) {
			$this->remove_directory_with_files( $path );
		} else {
			unlink( $path );
		}
	}

	/**
	 * Remove Directory with Files
	 *
	 * @since 3.3.0
	 *
	 * @param string $dir
	 * @return bool
	 */
	private function remove_directory_with_files( $dir ) {
		$dir_iterator = new \RecursiveDirectoryIterator( $dir, \RecursiveDirectoryIterator::SKIP_DOTS );

		foreach ( new \RecursiveIteratorIterator( $dir_iterator, \RecursiveIteratorIterator::CHILD_FIRST ) as $name => $item ) {
			if ( is_dir( $name ) ) {
				rmdir( $name );
			} else {
				unlink( $name );
			}
		}

		return rmdir( $dir );
	}

	/**
	 * Get Allowed File Extensions
	 *
	 * Retrieve an array containing the list of file extensions allowed for upload.
	 *
	 * @since 3.3.0
	 *
	 * @return array file extension/s
	 */
	private function get_allowed_file_extensions() {
		if ( ! $this->allowed_file_extensions ) {
			$this->allowed_file_extensions = array_keys( get_allowed_mime_types() );

			foreach ( $this->get_file_type_handlers() as $file_type => $handler ) {
				if ( $handler->is_upload_allowed() ) {
					// Add the file extension to the allowed extensions list only if unfiltered files upload is enabled.
					$this->add_file_extension_to_allowed_extensions_list( $file_type );
				}
			}
		}

		return $this->allowed_file_extensions;
	}

	public function __construct() {
		$this->register_file_types();

		add_filter( 'wp_handle_upload_prefilter', [ $this, 'handle_elementor_wp_media_upload' ] );
	}
}
core/files/css/post-preview.php000064400000003037151327220420012544 0ustar00<?php
namespace Elementor\Core\Files\CSS;

use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor post preview CSS file.
 *
 * Elementor CSS file handler class is responsible for generating the post
 * preview CSS file.
 *
 * @since 1.9.0
 */
class Post_Preview extends Post_Local_Cache {

	/**
	 * Preview ID.
	 *
	 * Holds the ID of the current post being previewed.
	 *
	 * @var int
	 */
	private $post_id_for_data;

	/**
	 * Post preview CSS file constructor.
	 *
	 * Initializing the CSS file of the post preview. Set the post ID and the
	 * parent ID and initiate the stylesheet.
	 *
	 * @since 1.9.0
	 * @access public
	 *
	 * @param int $post_id Post ID.
	 */
	public function __construct( $post_id ) {
		$this->post_id_for_data = $post_id;

		$parent_id = wp_get_post_parent_id( $post_id );

		parent::__construct( $parent_id );
	}

	protected function get_post_id_for_data() {
		return $this->post_id_for_data;
	}

	/**
	 * @since 2.1.0
	 * @access public
	 * @deprecated 3.0.0 Use `Post_Preview::get_post_id_for_data()` instead
	 */
	protected function get_preview_id() {
		_deprecated_function( __METHOD__, '3.0.0', __CLASS__ . '::get_post_id_for_data()' );

		return $this->get_post_id_for_data();
	}

	/**
	 * Get file handle ID.
	 *
	 * Retrieve the handle ID for the previewed post CSS file.
	 *
	 * @since 1.9.0
	 * @access protected
	 *
	 * @return string CSS file handle ID.
	 */
	protected function get_file_handle_id() {
		return 'elementor-preview-' . $this->get_post_id_for_data();
	}
}
core/files/css/post.php000064400000015341151327220420011066 0ustar00<?php
namespace Elementor\Core\Files\CSS;

use Elementor\Base_Data_Control;
use Elementor\Control_Repeater;
use Elementor\Controls_Stack;
use Elementor\Element_Base;
use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor post CSS file.
 *
 * Elementor CSS file handler class is responsible for generating the single
 * post CSS file.
 *
 * @since 1.2.0
 */
class Post extends Base {

	/**
	 * Elementor post CSS file prefix.
	 */
	const FILE_PREFIX = 'post-';

	const META_KEY = '_elementor_css';

	/**
	 * Post ID.
	 *
	 * Holds the current post ID.
	 *
	 * @var int
	 */
	private $post_id;

	protected function is_global_parsing_supported() {
		return true;
	}

	/**
	 * Post CSS file constructor.
	 *
	 * Initializing the CSS file of the post. Set the post ID and initiate the stylesheet.
	 *
	 * @since 1.2.0
	 * @access public
	 *
	 * @param int $post_id Post ID.
	 */
	public function __construct( $post_id ) {
		$this->post_id = $post_id;

		parent::__construct( static::FILE_PREFIX . $post_id . '.css' );
	}

	/**
	 * Get CSS file name.
	 *
	 * Retrieve the CSS file name.
	 *
	 * @since 1.6.0
	 * @access public
	 *
	 * @return string CSS file name.
	 */
	public function get_name() {
		return 'post';
	}

	/**
	 * Get post ID.
	 *
	 * Retrieve the ID of current post.
	 *
	 * @since 1.2.0
	 * @access public
	 *
	 * @return int Post ID.
	 */
	public function get_post_id() {
		return $this->post_id;
	}

	/**
	 * Get unique element selector.
	 *
	 * Retrieve the unique selector for any given element.
	 *
	 * @since 1.2.0
	 * @access public
	 *
	 * @param Element_Base $element The element.
	 *
	 * @return string Unique element selector.
	 */
	public function get_element_unique_selector( Element_Base $element ) {
		return '.elementor-' . $this->post_id . ' .elementor-element' . $element->get_unique_selector();
	}

	/**
	 * Load meta data.
	 *
	 * Retrieve the post CSS file meta data.
	 *
	 * @since 1.2.0
	 * @access protected
	 *
	 * @return array Post CSS file meta data.
	 */
	protected function load_meta() {
		return get_post_meta( $this->post_id, static::META_KEY, true );
	}

	/**
	 * Update meta data.
	 *
	 * Update the global CSS file meta data.
	 *
	 * @since 1.2.0
	 * @access protected
	 *
	 * @param array $meta New meta data.
	 */
	protected function update_meta( $meta ) {
		update_post_meta( $this->post_id, static::META_KEY, $meta );
	}

	/**
	 * Delete meta.
	 *
	 * Delete the file meta data.
	 *
	 * @since  2.1.0
	 * @access protected
	 */
	protected function delete_meta() {
		delete_post_meta( $this->post_id, static::META_KEY );
	}

	/**
	 * Get post data.
	 *
	 * Retrieve raw post data from the database.
	 *
	 * @since 1.9.0
	 * @access protected
	 *
	 * @return array Post data.
	 */
	protected function get_data() {
		$document = Plugin::$instance->documents->get( $this->post_id );
		return $document ? $document->get_elements_data() : [];
	}

	/**
	 * Render CSS.
	 *
	 * Parse the CSS for all the elements.
	 *
	 * @since 1.2.0
	 * @access protected
	 */
	protected function render_css() {
		$data = $this->get_data();

		if ( ! empty( $data ) ) {
			foreach ( $data as $element_data ) {
				$element = Plugin::$instance->elements_manager->create_element_instance( $element_data );

				if ( ! $element ) {
					continue;
				}

				$this->render_styles( $element );
			}
		}
	}

	/**
	 * Enqueue CSS.
	 *
	 * Enqueue the post CSS file in Elementor.
	 *
	 * This method ensures that the post was actually built with elementor before
	 * enqueueing the post CSS file.
	 *
	 * @since 1.2.2
	 * @access public
	 */
	public function enqueue() {
		$document = Plugin::$instance->documents->get( $this->post_id );

		if ( ! $document || ! $document->is_built_with_elementor() ) {
			return;
		}

		parent::enqueue();
	}

	/**
	 * Add controls-stack style rules.
	 *
	 * Parse the CSS for all the elements inside any given controls stack.
	 *
	 * This method recursively renders the CSS for all the child elements in the stack.
	 *
	 * @since 1.6.0
	 * @access public
	 *
	 * @param Controls_Stack $controls_stack The controls stack.
	 * @param array          $controls       Controls array.
	 * @param array          $values         Values array.
	 * @param array          $placeholders   Placeholders.
	 * @param array          $replacements   Replacements.
	 * @param array          $all_controls   All controls.
	 */
	public function add_controls_stack_style_rules( Controls_Stack $controls_stack, array $controls, array $values, array $placeholders, array $replacements, array $all_controls = null ) {
		parent::add_controls_stack_style_rules( $controls_stack, $controls, $values, $placeholders, $replacements, $all_controls );

		if ( $controls_stack instanceof Element_Base ) {
			foreach ( $controls_stack->get_children() as $child_element ) {
				$this->render_styles( $child_element );
			}
		}
	}

	/**
	 * Get enqueue dependencies.
	 *
	 * Retrieve the name of the stylesheet used by `wp_enqueue_style()`.
	 *
	 * @since 1.2.0
	 * @access protected
	 *
	 * @return array Name of the stylesheet.
	 */
	protected function get_enqueue_dependencies() {
		return [ 'elementor-frontend' ];
	}

	/**
	 * Get inline dependency.
	 *
	 * Retrieve the name of the stylesheet used by `wp_add_inline_style()`.
	 *
	 * @since 1.2.0
	 * @access protected
	 *
	 * @return string Name of the stylesheet.
	 */
	protected function get_inline_dependency() {
		return 'elementor-frontend';
	}

	/**
	 * Get file handle ID.
	 *
	 * Retrieve the handle ID for the post CSS file.
	 *
	 * @since 1.2.0
	 * @access protected
	 *
	 * @return string CSS file handle ID.
	 */
	protected function get_file_handle_id() {
		return 'elementor-post-' . $this->post_id;
	}

	/**
	 * Render styles.
	 *
	 * Parse the CSS for any given element.
	 *
	 * @since 1.2.0
	 * @access protected
	 *
	 * @param Element_Base $element The element.
	 */
	protected function render_styles( Element_Base $element ) {
		/**
		 * Before element parse CSS.
		 *
		 * Fires before the CSS of the element is parsed.
		 *
		 * @since 1.2.0
		 *
		 * @param Post         $this    The post CSS file.
		 * @param Element_Base $element The element.
		 */
		do_action( 'elementor/element/before_parse_css', $this, $element );

		$element_settings = $element->get_settings();

		$this->add_controls_stack_style_rules( $element, $this->get_style_controls( $element, null, $element->get_parsed_dynamic_settings() ), $element_settings, [ '{{ID}}', '{{WRAPPER}}' ], [ $element->get_id(), $this->get_element_unique_selector( $element ) ] );

		/**
		 * After element parse CSS.
		 *
		 * Fires after the CSS of the element is parsed.
		 *
		 * @since 1.2.0
		 *
		 * @param Post         $this    The post CSS file.
		 * @param Element_Base $element The element.
		 */
		do_action( 'elementor/element/parse_css', $this, $element );
	}
}
core/files/css/global-css.php000064400000007670151327220420012135 0ustar00<?php
namespace Elementor\Core\Files\CSS;

use Elementor\Core\Kits\Manager;
use Elementor\Plugin;
use Elementor\Settings;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor global CSS file.
 *
 * Elementor CSS file handler class is responsible for generating the global CSS
 * file.
 *
 * @since 1.2.0
 */
class Global_CSS extends Base {

	/**
	 * Elementor global CSS file handler ID.
	 */
	const FILE_HANDLER_ID = 'elementor-global';

	const META_KEY = '_elementor_global_css';

	/**
	 * Get CSS file name.
	 *
	 * Retrieve the CSS file name.
	 *
	 * @since 1.6.0
	 * @access public
	 *
	 * @return string CSS file name.
	 */
	public function get_name() {
		return 'global';
	}

	/**
	 * Get file handle ID.
	 *
	 * Retrieve the handle ID for the global post CSS file.
	 *
	 * @since 1.2.0
	 * @access protected
	 *
	 * @return string CSS file handle ID.
	 */
	protected function get_file_handle_id() {
		return self::FILE_HANDLER_ID;
	}

	/**
	 * Render CSS.
	 *
	 * Parse the CSS for all the widgets and all the scheme controls.
	 *
	 * @since 1.2.0
	 * @access protected
	 */
	protected function render_css() {
		$this->render_schemes_and_globals_css();
	}

	/**
	 * Get inline dependency.
	 *
	 * Retrieve the name of the stylesheet used by `wp_add_inline_style()`.
	 *
	 * @since 1.2.0
	 * @access protected
	 *
	 * @return string Name of the stylesheet.
	 */
	protected function get_inline_dependency() {
		return 'elementor-frontend';
	}

	/**
	 * Is update required.
	 *
	 * Whether the CSS requires an update. When there are new schemes or settings
	 * updates.
	 *
	 * @since 1.2.0
	 * @access protected
	 *
	 * @return bool True if the CSS requires an update, False otherwise.
	 */
	protected function is_update_required() {
		return $this->get_meta( 'time' ) < get_option( Settings::UPDATE_TIME_FIELD );
	}

	/**
	 * Render schemes CSS.
	 *
	 * Parse the CSS for all the widgets and all the scheme controls.
	 *
	 * @since 1.2.0
	 * @access private
	 */
	private function render_schemes_and_globals_css() {
		$elementor = Plugin::$instance;

		/** @var Manager $module */
		$kits_manager = Plugin::$instance->kits_manager;
		$custom_colors_enabled = $kits_manager->is_custom_colors_enabled();
		$custom_typography_enabled = $kits_manager->is_custom_typography_enabled();

		// If both default colors and typography are disabled, there is no need to render schemes and default global css.
		if ( ! $custom_colors_enabled && ! $custom_typography_enabled ) {
			return;
		}

		foreach ( $elementor->widgets_manager->get_widget_types() as $widget ) {
			$controls = $widget->get_controls();

			$global_controls = [];

			$global_values['__globals__'] = [];

			foreach ( $controls as $control ) {
				$is_color_control = 'color' === $control['type'];
				$is_typography_control = isset( $control['groupType'] ) && 'typography' === $control['groupType'];

				// If it is a color/typography control and default colors/typography are disabled,
				// don't add the default CSS.
				if ( ( $is_color_control && ! $custom_colors_enabled ) || ( $is_typography_control && ! $custom_typography_enabled ) ) {
					continue;
				}

				$global_control = $control;

				// Handle group controls that don't have a default global property.
				if ( ! empty( $control['groupType'] ) ) {
					$global_control = $controls[ $control['groupPrefix'] . $control['groupType'] ];
				}

				// If the control has a default global defined, add it to the globals array
				// that is used in add_control_rules.
				if ( ! empty( $control['global']['default'] ) ) {
					$global_values['__globals__'][ $control['name'] ] = $global_control['global']['default'];
				}

				if ( ! empty( $global_control['global']['default'] ) ) {
					$global_controls[] = $control;
				}
			}

			foreach ( $global_controls as $control ) {
				$this->add_control_rules( $control, $controls, function( $control ) {}, [ '{{WRAPPER}}' ], [ '.elementor-widget-' . $widget->get_name() ], $global_values );
			}
		}
	}
}
core/files/css/base.php000064400000060361151327220420011015 0ustar00<?php
namespace Elementor\Core\Files\CSS;

use Elementor\Base_Data_Control;
use Elementor\Control_Repeater;
use Elementor\Controls_Manager;
use Elementor\Controls_Stack;
use Elementor\Core\Breakpoints\Manager as Breakpoints_Manager;
use Elementor\Core\Files\Base as Base_File;
use Elementor\Core\DynamicTags\Manager;
use Elementor\Core\DynamicTags\Tag;
use Elementor\Core\Kits\Documents\Tabs\Global_Typography;
use Elementor\Element_Base;
use Elementor\Plugin;
use Elementor\Stylesheet;
use Elementor\Icons_Manager;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor CSS file.
 *
 * Elementor CSS file handler class is responsible for generating CSS files.
 *
 * @since 1.2.0
 * @abstract
 */
abstract class Base extends Base_File {

	/**
	 * Elementor CSS file generated status.
	 *
	 * The parsing result after generating CSS file.
	 */
	const CSS_STATUS_FILE = 'file';

	/**
	 * Elementor inline CSS status.
	 *
	 * The parsing result after generating inline CSS.
	 */
	const CSS_STATUS_INLINE = 'inline';

	/**
	 * Elementor CSS empty status.
	 *
	 * The parsing result when an empty CSS returned.
	 */
	const CSS_STATUS_EMPTY = 'empty';

	/**
	 * Fonts.
	 *
	 * Holds the list of fonts.
	 *
	 * @access private
	 *
	 * @var array
	 */
	private $fonts = [];

	private $icons_fonts = [];

	private $dynamic_elements_ids = [];

	/**
	 * Stylesheet object.
	 *
	 * Holds the CSS file stylesheet instance.
	 *
	 * @access protected
	 *
	 * @var Stylesheet
	 */
	protected $stylesheet_obj;

	/**
	 * Printed.
	 *
	 * Holds the list of printed files.
	 *
	 * @access protected
	 *
	 * @var array
	 */
	private static $printed = [];

	/**
	 * Get CSS file name.
	 *
	 * Retrieve the CSS file name.
	 *
	 * @since 1.6.0
	 * @access public
	 * @abstract
	 */
	abstract public function get_name();

	protected function is_global_parsing_supported() {
		return false;
	}

	/**
	 * Use external file.
	 *
	 * Whether to use external CSS file of not. When there are new schemes or settings
	 * updates.
	 *
	 * @since 1.9.0
	 * @access protected
	 *
	 * @return bool True if the CSS requires an update, False otherwise.
	 */
	protected function use_external_file() {
		return 'internal' !== get_option( 'elementor_css_print_method' );
	}

	/**
	 * Update the CSS file.
	 *
	 * Delete old CSS, parse the CSS, save the new file and update the database.
	 *
	 * This method also sets the CSS status to be used later on in the render posses.
	 *
	 * @since 1.2.0
	 * @access public
	 */
	public function update() {
		$this->update_file();

		$meta = $this->get_meta();

		$meta['time'] = time();

		$content = $this->get_content();

		if ( empty( $content ) ) {
			$meta['status'] = self::CSS_STATUS_EMPTY;
			$meta['css'] = '';
		} else {
			$use_external_file = $this->use_external_file();

			if ( $use_external_file ) {
				$meta['status'] = self::CSS_STATUS_FILE;
			} else {
				$meta['status'] = self::CSS_STATUS_INLINE;
				$meta['css'] = $content;
			}
		}

		$meta['dynamic_elements_ids'] = $this->dynamic_elements_ids;

		$this->update_meta( $meta );
	}

	/**
	 * @since 2.1.0
	 * @access public
	 */
	public function write() {
		if ( $this->use_external_file() ) {
			parent::write();
		}
	}

	/**
	 * @since 3.0.0
	 * @access public
	 */
	public function delete() {
		if ( $this->use_external_file() ) {
			parent::delete();
		} else {
			$this->delete_meta();
		}
	}

	/**
	 * Get Responsive Control Duplication Mode
	 *
	 * @since 3.4.0
	 *
	 * @return string
	 */
	protected function get_responsive_control_duplication_mode() {
		return 'on';
	}

	/**
	 * Enqueue CSS.
	 *
	 * Either enqueue the CSS file in Elementor or add inline style.
	 *
	 * This method is also responsible for loading the fonts.
	 *
	 * @since 1.2.0
	 * @access public
	 */
	public function enqueue() {
		$handle_id = $this->get_file_handle_id();

		if ( isset( self::$printed[ $handle_id ] ) ) {
			return;
		}

		self::$printed[ $handle_id ] = true;

		$meta = $this->get_meta();

		if ( self::CSS_STATUS_EMPTY === $meta['status'] ) {
			return;
		}

		// First time after clear cache and etc.
		if ( '' === $meta['status'] || $this->is_update_required() ) {
			$this->update();

			$meta = $this->get_meta();
		}

		if ( self::CSS_STATUS_INLINE === $meta['status'] ) {
			$dep = $this->get_inline_dependency();
			// If the dependency has already been printed ( like a template in footer )
			if ( wp_styles()->query( $dep, 'done' ) ) {
				printf( '<style id="%1$s">%2$s</style>', $this->get_file_handle_id(), $meta['css'] ); // XSS ok.
			} else {
				wp_add_inline_style( $dep, $meta['css'] );
			}
		} elseif ( self::CSS_STATUS_FILE === $meta['status'] ) { // Re-check if it's not empty after CSS update.
			wp_enqueue_style( $this->get_file_handle_id(), $this->get_url(), $this->get_enqueue_dependencies(), null ); // phpcs:ignore WordPress.WP.EnqueuedResourceParameters.MissingVersion
		}

		// Handle fonts.
		if ( ! empty( $meta['fonts'] ) ) {
			foreach ( $meta['fonts'] as $font ) {
				Plugin::$instance->frontend->enqueue_font( $font );
			}
		}

		if ( ! empty( $meta['icons'] ) ) {
			$icons_types = Icons_Manager::get_icon_manager_tabs();
			foreach ( $meta['icons'] as $icon_font ) {
				if ( ! isset( $icons_types[ $icon_font ] ) ) {
					continue;
				}
				Plugin::$instance->frontend->enqueue_font( $icon_font );
			}
		}

		$name = $this->get_name();

		/**
		 * Enqueue CSS file.
		 *
		 * Fires when CSS file is enqueued on Elementor.
		 *
		 * The dynamic portion of the hook name, `$name`, refers to the CSS file name.
		 *
		 * @since 2.0.0
		 *
		 * @param Base $this The current CSS file.
		 */
		do_action( "elementor/css-file/{$name}/enqueue", $this );
	}

	/**
	 * Print CSS.
	 *
	 * Output the final CSS inside the `<style>` tags and all the frontend fonts in
	 * use.
	 *
	 * @since 1.9.4
	 * @access public
	 */
	public function print_css() {
		echo '<style>' . $this->get_content() . '</style>'; // XSS ok.
		Plugin::$instance->frontend->print_fonts_links();
	}

	/**
	 * Add control rules.
	 *
	 * Parse the CSS for all the elements inside any given control.
	 *
	 * This method recursively renders the CSS for all the selectors in the control.
	 *
	 * @since 1.2.0
	 * @access public
	 *
	 * @param array    $control        The controls.
	 * @param array    $controls_stack The controls stack.
	 * @param callable $value_callback Callback function for the value.
	 * @param array    $placeholders   Placeholders.
	 * @param array    $replacements   Replacements.
	 * @param array    $values         Global Values.
	 */
	public function add_control_rules( array $control, array $controls_stack, callable $value_callback, array $placeholders, array $replacements, array $values = [] ) {
		if ( empty( $control['selectors'] ) ) {
			return;
		}

		$control_global_key = $control['name'];

		if ( ! empty( $control['groupType'] ) ) {
			$control_global_key = $control['groupPrefix'] . $control['groupType'];
		}

		$global_values = [];
		$global_key = '';

		if ( ! empty( $values['__globals__'] ) ) {
			$global_values = $values['__globals__'];
		}

		if ( ! empty( $global_values[ $control_global_key ] ) ) {
			$global_key = $global_values[ $control_global_key ];
		}

		if ( ! $global_key ) {
			$value = call_user_func( $value_callback, $control );

			if ( null === $value ) {
				return;
			}
		}

		$stylesheet = $this->get_stylesheet();

		foreach ( $control['selectors'] as $selector => $css_property ) {
			$output_css_property = '';

			if ( $global_key ) {
				$selector_global_value = $this->get_selector_global_value( $control, $global_key );

				if ( $selector_global_value ) {
					$output_css_property = preg_replace( '/(:)[^;]+(;?)/', '$1' . $selector_global_value . '$2', $css_property );
				}
			} else {
				try {
					$output_css_property = preg_replace_callback( '/{{(?:([^.}]+)\.)?([^}| ]*)(?: *\|\| *(?:([^.}]+)\.)?([^}| ]*) *)*}}/', function( $matches ) use ( $control, $value_callback, $controls_stack, $value, $css_property ) {
						$external_control_missing = $matches[1] && ! isset( $controls_stack[ $matches[1] ] );

						$parsed_value = '';

						if ( ! $external_control_missing ) {
							$parsed_value = $this->parse_property_placeholder( $control, $value, $controls_stack, $value_callback, $matches[2], $matches[1] );
						}

						if ( '' === $parsed_value ) {
							if ( isset( $matches[4] ) ) {
								$parsed_value = $matches[4];

								$is_string_value = preg_match( '/^([\'"])(.*)\1$/', $parsed_value, $string_matches );

								if ( $is_string_value ) {
									$parsed_value = $string_matches[2];
								} elseif ( ! is_numeric( $parsed_value ) ) {
									if ( $matches[3] && ! isset( $controls_stack[ $matches[3] ] ) ) {
										return '';
									}

									$parsed_value = $this->parse_property_placeholder( $control, $value, $controls_stack, $value_callback, $matches[4], $matches[3] );
								}
							}

							if ( '' === $parsed_value ) {
								if ( $external_control_missing ) {
									return '';
								}

								throw new \Exception();
							}
						}

						return $parsed_value;
					}, $css_property );
				} catch ( \Exception $e ) {
					return;
				}
			}

			if ( ! $output_css_property ) {
				continue;
			}

			$device_pattern = '/^(?:\([^\)]+\)){1,2}/';

			preg_match( $device_pattern, $selector, $device_rules );

			$query = [];

			if ( $device_rules ) {
				$selector = preg_replace( $device_pattern, '', $selector );

				preg_match_all( '/\(([^)]+)\)/', $device_rules[0], $pure_device_rules );

				$pure_device_rules = $pure_device_rules[1];

				foreach ( $pure_device_rules as $device_rule ) {
					if ( Breakpoints_Manager::BREAKPOINT_KEY_DESKTOP === $device_rule ) {
						continue;
					}

					$device = preg_replace( '/\+$/', '', $device_rule );

					$endpoint = $device === $device_rule ? 'max' : 'min';

					$query[ $endpoint ] = $device;
				}
			}

			$parsed_selector = str_replace( $placeholders, $replacements, $selector );

			if ( ! $query && ! empty( $control['responsive'] ) ) {
				$query = array_intersect_key( $control['responsive'], array_flip( [ 'min', 'max' ] ) );

				if ( ! empty( $query['max'] ) && Breakpoints_Manager::BREAKPOINT_KEY_DESKTOP === $query['max'] ) {
					unset( $query['max'] );
				}
			}

			$stylesheet->add_rules( $parsed_selector, $output_css_property, $query );
		}
	}

	/**
	 * @param array    $control
	 * @param mixed    $value
	 * @param array    $controls_stack
	 * @param callable $value_callback
	 * @param string   $placeholder
	 * @param string   $parser_control_name
	 *
	 * @return string
	 */
	public function parse_property_placeholder( array $control, $value, array $controls_stack, $value_callback, $placeholder, $parser_control_name = null ) {
		if ( $parser_control_name ) {
			$control = $controls_stack[ $parser_control_name ];

			$value = call_user_func( $value_callback, $control );
		}

		if ( Controls_Manager::FONT === $control['type'] ) {
			$this->fonts[] = $value;
		}

		/** @var Base_Data_Control $control_obj */
		$control_obj = Plugin::$instance->controls_manager->get_control( $control['type'] );

		return (string) $control_obj->get_style_value( $placeholder, $value, $control );
	}

	/**
	 * Get the fonts.
	 *
	 * Retrieve the list of fonts.
	 *
	 * @since 1.9.0
	 * @access public
	 *
	 * @return array Fonts.
	 */
	public function get_fonts() {
		return $this->fonts;
	}

	/**
	 * Get stylesheet.
	 *
	 * Retrieve the CSS file stylesheet instance.
	 *
	 * @since 1.2.0
	 * @access public
	 *
	 * @return Stylesheet The stylesheet object.
	 */
	public function get_stylesheet() {
		if ( ! $this->stylesheet_obj ) {
			$this->init_stylesheet();
		}

		return $this->stylesheet_obj;
	}

	/**
	 * Add controls stack style rules.
	 *
	 * Parse the CSS for all the elements inside any given controls stack.
	 *
	 * This method recursively renders the CSS for all the child elements in the stack.
	 *
	 * @since 1.6.0
	 * @access public
	 *
	 * @param Controls_Stack $controls_stack The controls stack.
	 * @param array          $controls       Controls array.
	 * @param array          $values         Values array.
	 * @param array          $placeholders   Placeholders.
	 * @param array          $replacements   Replacements.
	 * @param array          $all_controls   All controls.
	 */
	public function add_controls_stack_style_rules( Controls_Stack $controls_stack, array $controls, array $values, array $placeholders, array $replacements, array $all_controls = null ) {
		if ( ! $all_controls ) {
			$all_controls = $controls_stack->get_controls();
		}

		$parsed_dynamic_settings = $controls_stack->parse_dynamic_settings( $values, $controls );

		foreach ( $controls as $control ) {
			if ( ! empty( $control['style_fields'] ) ) {
				$this->add_repeater_control_style_rules( $controls_stack, $control, $values[ $control['name'] ], $placeholders, $replacements );
			}

			if ( ! empty( $control[ Manager::DYNAMIC_SETTING_KEY ][ $control['name'] ] ) ) {
				$this->add_dynamic_control_style_rules( $control, $control[ Manager::DYNAMIC_SETTING_KEY ][ $control['name'] ] );
			}

			if ( Controls_Manager::ICONS === $control['type'] ) {
				$this->icons_fonts[] = $values[ $control['name'] ]['library'];
			}

			if ( ! empty( $parsed_dynamic_settings[ Manager::DYNAMIC_SETTING_KEY ][ $control['name'] ] ) ) {
				// Dynamic CSS should not be added to the CSS files.
				// Instead it's handled by \Elementor\Core\DynamicTags\Dynamic_CSS
				// and printed in a style tag.
				unset( $parsed_dynamic_settings[ $control['name'] ] );

				$this->dynamic_elements_ids[] = $controls_stack->get_id();

				continue;
			}

			if ( empty( $control['selectors'] ) ) {
				continue;
			}

			$this->add_control_style_rules( $control, $parsed_dynamic_settings, $all_controls, $placeholders, $replacements );
		}
	}

	/**
	 * Get file handle ID.
	 *
	 * Retrieve the file handle ID.
	 *
	 * @since 1.2.0
	 * @access protected
	 * @abstract
	 *
	 * @return string CSS file handle ID.
	 */
	abstract protected function get_file_handle_id();

	/**
	 * Render CSS.
	 *
	 * Parse the CSS.
	 *
	 * @since 1.2.0
	 * @access protected
	 * @abstract
	 */
	abstract protected function render_css();

	protected function get_default_meta() {
		return array_merge( parent::get_default_meta(), [
			'fonts' => array_unique( $this->fonts ),
			'icons' => array_unique( $this->icons_fonts ),
			'dynamic_elements_ids' => [],
			'status' => '',
		] );
	}

	/**
	 * Get enqueue dependencies.
	 *
	 * Retrieve the name of the stylesheet used by `wp_enqueue_style()`.
	 *
	 * @since 1.2.0
	 * @access protected
	 *
	 * @return array Name of the stylesheet.
	 */
	protected function get_enqueue_dependencies() {
		return [];
	}

	/**
	 * Get inline dependency.
	 *
	 * Retrieve the name of the stylesheet used by `wp_add_inline_style()`.
	 *
	 * @since 1.2.0
	 * @access protected
	 *
	 * @return string Name of the stylesheet.
	 */
	protected function get_inline_dependency() {
		return '';
	}

	/**
	 * Is update required.
	 *
	 * Whether the CSS requires an update. When there are new schemes or settings
	 * updates.
	 *
	 * @since 1.2.0
	 * @access protected
	 *
	 * @return bool True if the CSS requires an update, False otherwise.
	 */
	protected function is_update_required() {
		return false;
	}

	/**
	 * Parse CSS.
	 *
	 * Parsing the CSS file.
	 *
	 * @since 1.2.0
	 * @access protected
	 */
	protected function parse_content() {
		$initial_responsive_controls_duplication_mode = Plugin::$instance->breakpoints->get_responsive_control_duplication_mode();

		Plugin::$instance->breakpoints->set_responsive_control_duplication_mode( $this->get_responsive_control_duplication_mode() );

		$this->render_css();

		$name = $this->get_name();

		/**
		 * Parse CSS file.
		 *
		 * Fires when CSS file is parsed on Elementor.
		 *
		 * The dynamic portion of the hook name, `$name`, refers to the CSS file name.
		 *
		 * @since 2.0.0
		 *
		 * @param Base $this The current CSS file.
		 */
		do_action( "elementor/css-file/{$name}/parse", $this );

		Plugin::$instance->breakpoints->set_responsive_control_duplication_mode( $initial_responsive_controls_duplication_mode );

		return $this->get_stylesheet()->__toString();
	}

	/**
	 * Add control style rules.
	 *
	 * Register new style rules for the control.
	 *
	 * @since 1.6.0
	 * @access private
	 *
	 * @param array $control      The control.
	 * @param array $values       Values array.
	 * @param array $controls     The controls stack.
	 * @param array $placeholders Placeholders.
	 * @param array $replacements Replacements.
	 */
	protected function add_control_style_rules( array $control, array $values, array $controls, array $placeholders, array $replacements ) {
		$this->add_control_rules(
			$control, $controls, function( $control ) use ( $values ) {
				return $this->get_style_control_value( $control, $values );
			}, $placeholders, $replacements, $values
		);
	}

	/**
	 * Get style control value.
	 *
	 * Retrieve the value of the style control for any give control and values.
	 *
	 * It will retrieve the control name and return the style value.
	 *
	 * @since 1.6.0
	 * @access private
	 *
	 * @param array $control The control.
	 * @param array $values  Values array.
	 *
	 * @return mixed Style control value.
	 */
	private function get_style_control_value( array $control, array $values ) {
		if ( ! empty( $values['__globals__'][ $control['name'] ] ) ) {
			// When the control itself has no global value, but it refers to another control global value
			return $this->get_selector_global_value( $control, $values['__globals__'][ $control['name'] ] );
		}

		$value = $values[ $control['name'] ];

		if ( isset( $control['selectors_dictionary'][ $value ] ) ) {
			$value = $control['selectors_dictionary'][ $value ];
		}

		if ( ! is_numeric( $value ) && ! is_float( $value ) && empty( $value ) ) {
			return null;
		}

		return $value;
	}

	/**
	 * Init stylesheet.
	 *
	 * Initialize CSS file stylesheet by creating a new `Stylesheet` object and register new
	 * breakpoints for the stylesheet.
	 *
	 * @since 1.2.0
	 * @access private
	 */
	private function init_stylesheet() {
		$this->stylesheet_obj = new Stylesheet();

		$active_breakpoints = Plugin::$instance->breakpoints->get_active_breakpoints();

		foreach ( $active_breakpoints as $breakpoint_name => $breakpoint ) {
			$this->stylesheet_obj->add_device( $breakpoint_name, $breakpoint->get_value() );
		}
	}

	/**
	 * Add repeater control style rules.
	 *
	 * Register new style rules for the repeater control.
	 *
	 * @since 2.0.0
	 * @access private
	 *
	 * @param Controls_Stack $controls_stack   The control stack.
	 * @param array          $repeater_control The repeater control.
	 * @param array          $repeater_values  Repeater values array.
	 * @param array          $placeholders     Placeholders.
	 * @param array          $replacements     Replacements.
	 */
	protected function add_repeater_control_style_rules( Controls_Stack $controls_stack, array $repeater_control, array $repeater_values, array $placeholders, array $replacements ) {
		$placeholders = array_merge( $placeholders, [ '{{CURRENT_ITEM}}' ] );

		foreach ( $repeater_control['style_fields'] as $index => $item ) {
			$this->add_controls_stack_style_rules(
				$controls_stack,
				$item,
				$repeater_values[ $index ],
				$placeholders,
				array_merge( $replacements, [ '.elementor-repeater-item-' . $repeater_values[ $index ]['_id'] ] ),
				$repeater_control['fields']
			);
		}
	}

	/**
	 * Add dynamic control style rules.
	 *
	 * Register new style rules for the dynamic control.
	 *
	 * @since 2.0.0
	 * @access private
	 *
	 * @param array  $control The control.
	 * @param string $value   The value.
	 */
	protected function add_dynamic_control_style_rules( array $control, $value ) {
		Plugin::$instance->dynamic_tags->parse_tags_text( $value, $control, function( $id, $name, $settings ) {
			$tag = Plugin::$instance->dynamic_tags->create_tag( $id, $name, $settings );

			if ( ! $tag instanceof Tag ) {
				return;
			}

			$this->add_controls_stack_style_rules( $tag, $this->get_style_controls( $tag ), $tag->get_active_settings(), [ '{{WRAPPER}}' ], [ '#elementor-tag-' . $id ] );
		} );
	}

	private function get_selector_global_value( $control, $global_key ) {
		$data = Plugin::$instance->data_manager->run( $global_key );

		if ( empty( $data['value'] ) ) {
			return null;
		}

		$global_args = explode( '?id=', $global_key );

		$id = $global_args[1];

		if ( ! empty( $control['groupType'] ) ) {
			$strings_to_replace = [ $control['groupPrefix'] ];

			$active_breakpoint_keys = array_keys( Plugin::$instance->breakpoints->get_active_breakpoints() );

			foreach ( $active_breakpoint_keys as $breakpoint ) {
				$strings_to_replace[] = '_' . $breakpoint;
			}

			$property_name = str_replace( $strings_to_replace, '', $control['name'] );

			// TODO: This check won't retrieve the proper answer for array values (multiple controls).
			if ( empty( $data['value'][ Global_Typography::TYPOGRAPHY_GROUP_PREFIX . $property_name ] ) ) {
				return null;
			}

			$property_name = str_replace( '_', '-', $property_name );

			$value = "var( --e-global-$control[groupType]-$id-$property_name )";

			if ( $control['groupPrefix'] . 'font_family' === $control['name'] ) {
				$default_generic_fonts = Plugin::$instance->kits_manager->get_current_settings( 'default_generic_fonts' );

				if ( $default_generic_fonts ) {
					$value  .= ", $default_generic_fonts";
				}
			}
		} else {
			$value = "var( --e-global-$control[type]-$id )";
		}

		return $value;
	}

	final protected function get_active_controls( Controls_Stack $controls_stack, array $controls = null, array $settings = null ) {
		if ( ! $controls ) {
			$controls = $controls_stack->get_controls();
		}

		if ( ! $settings ) {
			$settings = $controls_stack->get_controls_settings();
		}

		if ( $this->is_global_parsing_supported() ) {
			$settings = $this->parse_global_settings( $settings, $controls );
		}

		$active_controls = array_reduce(
			array_keys( $controls ), function( $active_controls, $control_key ) use ( $controls_stack, $controls, $settings ) {
				$control = $controls[ $control_key ];

				if ( $controls_stack->is_control_visible( $control, $settings ) ) {
					$active_controls[ $control_key ] = $control;
				}

				return $active_controls;
			}, []
		);

		return $active_controls;
	}

	final public function get_style_controls( Controls_Stack $controls_stack, array $controls = null, array $settings = null ) {
		$controls = $this->get_active_controls( $controls_stack, $controls, $settings );

		$style_controls = [];

		foreach ( $controls as $control_name => $control ) {
			$control_obj = Plugin::$instance->controls_manager->get_control( $control['type'] );

			if ( ! $control_obj instanceof Base_Data_Control ) {
				continue;
			}

			$control = array_merge( $control_obj->get_settings(), $control );

			if ( $control_obj instanceof Control_Repeater ) {
				$style_fields = [];

				foreach ( $controls_stack->get_settings( $control_name ) as $item ) {
					$style_fields[] = $this->get_style_controls( $controls_stack, $control['fields'], $item );
				}

				$control['style_fields'] = $style_fields;
			}

			if ( ! empty( $control['selectors'] ) || ! empty( $control['dynamic'] ) || $this->is_global_control( $controls_stack, $control_name, $controls ) || ! empty( $control['style_fields'] ) ) {
				$style_controls[ $control_name ] = $control;
			}
		}

		return $style_controls;
	}

	private function parse_global_settings( array $settings, array $controls ) {
		foreach ( $controls as $control ) {
			$control_name = $control['name'];
			$control_obj = Plugin::$instance->controls_manager->get_control( $control['type'] );

			if ( ! $control_obj instanceof Base_Data_Control ) {
				continue;
			}

			if ( $control_obj instanceof Control_Repeater ) {
				foreach ( $settings[ $control_name ] as & $field ) {
					$field = $this->parse_global_settings( $field, $control['fields'] );
				}

				continue;
			}

			if ( empty( $control['global']['active'] ) ) {
				continue;
			}

			if ( empty( $settings['__globals__'][ $control_name ] ) ) {
				continue;
			}

			$settings[ $control_name ] = 'global';
		}

		return $settings;
	}

	private function is_global_control( Controls_Stack $controls_stack, $control_name, $controls ) {
		$control = $controls[ $control_name ];

		$control_global_key = $control_name;

		if ( ! empty( $control['groupType'] ) ) {
			$control_global_key = $control['groupPrefix'] . $control['groupType'];
		}

		if ( empty( $controls[ $control_global_key ]['global']['active'] ) ) {
			return false;
		}

		$globals = $controls_stack->get_settings( '__globals__' );

		return ! empty( $globals[ $control_global_key ] );
	}
}
core/files/css/post-local-cache.php000064400000001366151327220420013221 0ustar00<?php

namespace Elementor\Core\Files\CSS;

use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

abstract class Post_Local_Cache extends Post {

	/**
	 * Meta cache
	 *
	 * @var array
	 */
	private $meta_cache = [];

	abstract protected function get_post_id_for_data();

	public function is_update_required() {
		return true;
	}

	protected function load_meta() {
		return $this->meta_cache;
	}

	protected function delete_meta() {
		$this->meta_cache = [];
	}

	protected function update_meta( $meta ) {
		$this->meta_cache = $meta;
	}

	protected function get_data() {
		$document = Plugin::$instance->documents->get( $this->get_post_id_for_data() );

		return $document ? $document->get_elements_data() : [];
	}
}
core/files/file-types/base.php000064400000002224151327220420012300 0ustar00<?php
namespace Elementor\Core\Files\File_Types;

use Elementor\Core\Base\Base_Object;
use Elementor\Core\Utils\Exceptions;
use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor File Types Base.
 *
 * The File Types Base class provides base methods used by all file type handler classes.
 * These methods are used in file upl
 *
 * @since 3.3.0
 */
abstract class Base extends Base_Object {

	/**
	 * Get File Extension
	 *
	 * Returns the file type's file extension
	 *
	 * @since 3.3.0
	 *
	 * @return string - file extension
	 */
	abstract public function get_file_extension();

	/**
	 * Validate File
	 *
	 * This method give file types the chance to run file-type-specific validations before returning the file for upload.
	 *
	 * @since 3.3.0
	 *
	 * @param $file
	 * @return bool|\WP_Error
	 */
	public function validate_file( $file ) {
		return true;
	}

	/**
	 * Is Upload Allowed
	 *
	 * This method returns whether the file type is allowed to be uploaded, even if unfiltered uploads are disabled.
	 *
	 * @since 3.3.0
	 *
	 * @return bool
	 */
	public function is_upload_allowed() {
		return true;
	}
}
core/files/file-types/json.php000064400000000540151327220420012336 0ustar00<?php
namespace Elementor\Core\Files\File_Types;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

class Json extends Base {

	/**
	 * Get File Extension
	 *
	 * Returns the file type's file extension
	 *
	 * @since 3.3.0
	 *
	 * @return string - file extension
	 */
	public function get_file_extension() {
		return 'json';
	}
}
core/files/file-types/zip.php000064400000007673151327220420012205 0ustar00<?php
namespace Elementor\Core\Files\File_Types;

use Elementor\Core\Base\Document;
use Elementor\Core\Utils\Exceptions;
use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor File Types Base.
 *
 * The File Types Base class provides base methods used by all file type handler classes.
 * These methods are used in file upl
 *
 * @since 3.3.0
 */
class Zip extends Base {

	/**
	 * Get File Extension
	 *
	 * Returns the file type's file extension
	 *
	 * @since 3.3.0
	 *
	 * @return string - file extension
	 */
	public function get_file_extension() {
		return 'zip';
	}

	/**
	 * Get File Property Name
	 *
	 * Get the property name to look for in the $_FILES superglobal
	 *
	 * @since 3.3.0
	 *
	 * @return string
	 */
	public function get_file_property_name() {
		return 'zip_upload';
	}

	/**
	 * Extract
	 *
	 * Performs the extraction of the zip files to a temporary directory.
	 * Returns an error if for some reason the ZipArchive utility isn't available.
	 * Otherwise, Returns an array containing the temporary extraction directory, and the list of extracted files.
	 *
	 * @since 3.3.0
	 *
	 * @param string $file_path
	 * @param array|null $allowed_file_types
	 * @return array|\WP_Error
	 */
	public function extract( $file_path, $allowed_file_types ) {
		if ( ! class_exists( '\ZipArchive' ) ) {
			return new \WP_Error( 'zip_error', 'PHP Zip extension not loaded' );
		}

		$zip = new \ZipArchive();

		$extraction_directory = Plugin::$instance->uploads_manager->create_unique_dir();

		$zip->open( $file_path );

		// if an array of allowed file types is provided, get the filtered file list to extract.
		$allowed_files = $allowed_file_types ? $this->get_allowed_files( $zip, $allowed_file_types ) : null;

		$zip->extractTo( $extraction_directory, $allowed_files );

		$zip->close();

		return [
			'extraction_directory' => $extraction_directory,
			'files' => $this->find_temp_files( $extraction_directory ),
		];
	}

	/**
	 * Get Allowed Files
	 *
	 * Accepts a zipArchive instance and an array of allowed file types. Iterates over the zip archive's files and
	 * checks if their extensions are in the list of allowed file types. Returns an array containing all valid files.
	 *
	 * @since 3.3.0
	 *
	 * @param \ZipArchive $zip
	 * @param array $allowed_file_types
	 * @return array
	 */
	private function get_allowed_files( $zip, $allowed_file_types ) {
		$allowed_files = [];

		// phpcs:ignore WordPress.NamingConventions.ValidVariableName.UsedPropertyNotSnakeCase
		for ( $i = 0; $i < $zip->numFiles; $i++ ) {
			$filename = $zip->getNameIndex( $i );
			$extension = pathinfo( $filename, PATHINFO_EXTENSION );

			if ( in_array( $extension, $allowed_file_types, true ) ) {
				$allowed_files[] = $filename;
			}
		}

		return $allowed_files;
	}

	/**
	 * Find temporary files.
	 *
	 * Recursively finds a list of temporary files from the extracted zip file.
	 *
	 * Example return data:
	 *
	 * [
	 *  0 => '/www/wp-content/uploads/elementor/tmp/5eb3a7a411d44/templates/block-2-col-marble-title.json',
	 *  1 => '/www/wp-content/uploads/elementor/tmp/5eb3a7a411d44/templates/block-2-col-text-and-photo.json',
	 * ]
	 *
	 * @since 2.9.8
	 * @access private
	 *
	 * @param string $temp_path - The temporary file path to scan for template files
	 *
	 * @return array An array of temporary files on the filesystem
	 */
	private function find_temp_files( $temp_path ) {
		$file_names = [];

		$possible_file_names = array_diff( scandir( $temp_path ), [ '.', '..' ] );

		// Find nested files in the unzipped path. This happens for example when the user imports a Template Kit.
		foreach ( $possible_file_names as $possible_file_name ) {
			$full_possible_file_name = $temp_path . $possible_file_name;
			if ( is_dir( $full_possible_file_name ) ) {
				$file_names = array_merge( $file_names, $this->find_temp_files( $full_possible_file_name . '/' ) );
			} else {
				$file_names[] = $full_possible_file_name;
			}
		}

		return $file_names;
	}
}
core/files/manager.php000064400000007641151327220420010727 0ustar00<?php
namespace Elementor\Core\Files;

use Elementor\Core\Common\Modules\Ajax\Module as Ajax;
use Elementor\Core\Files\Assets\Files_Upload_Handler;
use Elementor\Core\Files\Assets\Json\Json_Handler;
use Elementor\Core\Files\Assets\Svg\Svg_Handler;
use Elementor\Core\Files\CSS\Global_CSS;
use Elementor\Core\Files\CSS\Post as Post_CSS;
use Elementor\Core\Page_Assets\Data_Managers\Base as Page_Assets_Data_Manager;
use Elementor\Core\Responsive\Files\Frontend;
use Elementor\Utils;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor files manager.
 *
 * Elementor files manager handler class is responsible for creating files.
 *
 * @since 1.2.0
 */
class Manager {

	private $files = [];

	/**
	 * Files manager constructor.
	 *
	 * Initializing the Elementor files manager.
	 *
	 * @since 1.2.0
	 * @access public
	 */
	public function __construct() {
		$this->register_actions();

		new Svg_Handler();
		new Json_Handler();
	}

	public function get( $class, $args ) {
		$id = $class . '-' . wp_json_encode( $args );

		if ( ! isset( $this->files[ $id ] ) ) {
			// Create an instance from dynamic args length.
			$reflection_class = new \ReflectionClass( $class );
			$this->files[ $id ] = $reflection_class->newInstanceArgs( $args );
		}

		return $this->files[ $id ];
	}

	/**
	 * On post delete.
	 *
	 * Delete post CSS immediately after a post is deleted from the database.
	 *
	 * Fired by `deleted_post` action.
	 *
	 * @since 1.2.0
	 * @access public
	 *
	 * @param string $post_id Post ID.
	 */
	public function on_delete_post( $post_id ) {
		if ( ! Utils::is_post_support( $post_id ) ) {
			return;
		}

		$css_file = Post_CSS::create( $post_id );

		$css_file->delete();
	}

	/**
	 * On export post meta.
	 *
	 * When exporting data using WXR, skip post CSS file meta key. This way the
	 * export won't contain the post CSS file data used by Elementor.
	 *
	 * Fired by `wxr_export_skip_postmeta` filter.
	 *
	 * @since 1.2.0
	 * @access public
	 *
	 * @param bool   $skip     Whether to skip the current post meta.
	 * @param string $meta_key Current meta key.
	 *
	 * @return bool Whether to skip the post CSS meta.
	 */
	public function on_export_post_meta( $skip, $meta_key ) {
		if ( Post_CSS::META_KEY === $meta_key ) {
			$skip = true;
		}

		return $skip;
	}

	/**
	 * Clear cache.
	 *
	 * Delete all meta containing files data. And delete the actual
	 * files from the upload directory.
	 *
	 * @since 1.2.0
	 * @access public
	 */
	public function clear_cache() {
		// Delete files.
		$path = Base::get_base_uploads_dir() . Base::DEFAULT_FILES_DIR . '*';

		foreach ( glob( $path ) as $file_path ) {
			unlink( $file_path );
		}

		delete_post_meta_by_key( Post_CSS::META_KEY );

		delete_option( Global_CSS::META_KEY );
		delete_option( Frontend::META_KEY );

		$this->reset_assets_data();

		/**
		 * Elementor clear files.
		 *
		 * Fires after Elementor clears files
		 *
		 * @since 2.1.0
		 */
		do_action( 'elementor/core/files/clear_cache' );
	}

	public function register_ajax_actions( Ajax $ajax ) {
		$ajax->register_ajax_action( 'enable_unfiltered_files_upload', [ $this, 'ajax_unfiltered_files_upload' ] );
	}

	public function ajax_unfiltered_files_upload() {
		if ( ! current_user_can( 'manage_options' ) ) {
			return;
		}

		update_option( Files_Upload_Handler::OPTION_KEY, 1 );
	}

	/**
	 * Register actions.
	 *
	 * Register filters and actions for the files manager.
	 *
	 * @since 1.2.0
	 * @access private
	 */
	private function register_actions() {
		add_action( 'deleted_post', [ $this, 'on_delete_post' ] );

		// Ajax.
		add_action( 'elementor/ajax/register_actions', [ $this, 'register_ajax_actions' ] );

		add_filter( 'wxr_export_skip_postmeta', [ $this, 'on_export_post_meta' ], 10, 2 );
	}

	/**
	 * Reset Assets Data.
	 *
	 * Reset the page assets data.
	 *
	 * @since 3.3.0
	 * @access private
	 */
	private function reset_assets_data() {
		delete_option( Page_Assets_Data_Manager::ASSETS_DATA_KEY );
	}
}
core/files/base.php000064400000012520151327220420010217 0ustar00<?php
namespace Elementor\Core\Files;

use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

abstract class Base {

	const UPLOADS_DIR = 'elementor/';

	const DEFAULT_FILES_DIR = 'css/';

	const META_KEY = '';

	private static $wp_uploads_dir = [];

	private $files_dir;

	private $file_name;

	/**
	 * File path.
	 *
	 * Holds the file path.
	 *
	 * @access private
	 *
	 * @var string
	 */
	private $path;

	/**
	 * Content.
	 *
	 * Holds the file content.
	 *
	 * @access private
	 *
	 * @var string
	 */
	private $content;

	/**
	 * @since 2.1.0
	 * @access public
	 * @static
	 */
	public static function get_base_uploads_dir() {
		$wp_upload_dir = self::get_wp_uploads_dir();

		return $wp_upload_dir['basedir'] . '/' . self::UPLOADS_DIR;
	}

	/**
	 * @since 2.1.0
	 * @access public
	 * @static
	 */
	public static function get_base_uploads_url() {
		$wp_upload_dir = self::get_wp_uploads_dir();

		return $wp_upload_dir['baseurl'] . '/' . self::UPLOADS_DIR;
	}

	/**
	 * Use a create function for PhpDoc (@return static).
	 *
	 * @return static
	 */
	public static function create() {
		return Plugin::$instance->files_manager->get( get_called_class(), func_get_args() );
	}

	/**
	 * @since 2.1.0
	 * @access public
	 */
	public function __construct( $file_name ) {
		/**
		 * Elementor File Name
		 *
		 * Filters the File name
		 *
		 * @since 2.3.0
		 *
		 * @param string   $file_name
		 * @param object $this The file instance, which inherits Elementor\Core\Files
		 */
		$file_name = apply_filters( 'elementor/files/file_name', $file_name, $this );

		$this->set_file_name( $file_name );

		$this->set_files_dir( static::DEFAULT_FILES_DIR );

		$this->set_path();
	}

	/**
	 * @since 2.1.0
	 * @access public
	 */
	public function set_files_dir( $files_dir ) {
		$this->files_dir = $files_dir;
	}

	/**
	 * @since 2.1.0
	 * @access public
	 */
	public function set_file_name( $file_name ) {
		$this->file_name = $file_name;
	}

	/**
	 * @since 2.1.0
	 * @access public
	 */
	public function get_file_name() {
		return $this->file_name;
	}

	/**
	 * @since 2.1.0
	 * @access public
	 */
	public function get_url() {
		$url = set_url_scheme( self::get_base_uploads_url() . $this->files_dir . $this->file_name );

		return add_query_arg( [ 'ver' => $this->get_meta( 'time' ) ], $url );
	}

	/**
	 * @since 2.1.0
	 * @access public
	 */
	public function get_content() {
		if ( ! $this->content ) {
			$this->content = $this->parse_content();
		}

		return $this->content;
	}

	/**
	 * @since 2.1.0
	 * @access public
	 */
	public function update() {
		$this->update_file();

		$meta = $this->get_meta();

		$meta['time'] = time();

		$this->update_meta( $meta );
	}

	/**
	 * @since 2.1.0
	 * @access public
	 */
	public function update_file() {
		$this->content = $this->parse_content();

		if ( $this->content ) {
			$this->write();
		} else {
			$this->delete();
		}
	}

	/**
	 * @since 2.1.0
	 * @access public
	 */
	public function write() {
		return file_put_contents( $this->path, $this->content );
	}

	/**
	 * @since 2.1.0
	 * @access public
	 */
	public function delete() {
		if ( file_exists( $this->path ) ) {
			unlink( $this->path );
		}

		$this->delete_meta();
	}

	/**
	 * Get meta data.
	 *
	 * Retrieve the CSS file meta data. Returns an array of all the data, or if
	 * custom property is given it will return the property value, or `null` if
	 * the property does not exist.
	 *
	 * @since 2.1.0
	 * @access public
	 *
	 * @param string $property Optional. Custom meta data property. Default is
	 *                         null.
	 *
	 * @return array|null An array of all the data, or if custom property is
	 *                    given it will return the property value, or `null` if
	 *                    the property does not exist.
	 */
	public function get_meta( $property = null ) {
		$meta = array_merge( $this->get_default_meta(), (array) $this->load_meta() );

		if ( $property ) {
			return isset( $meta[ $property ] ) ? $meta[ $property ] : null;
		}

		return $meta;
	}

	/**
	 * @since 2.1.0
	 * @access protected
	 * @abstract
	 */
	abstract protected function parse_content();

	/**
	 * Load meta.
	 *
	 * Retrieve the file meta data.
	 *
	 * @since 2.1.0
	 * @access protected
	 */
	protected function load_meta() {
		return get_option( static::META_KEY );
	}

	/**
	 * Update meta.
	 *
	 * Update the file meta data.
	 *
	 * @since 2.1.0
	 * @access protected
	 *
	 * @param array $meta New meta data.
	 */
	protected function update_meta( $meta ) {
		update_option( static::META_KEY, $meta );
	}

	/**
	 * Delete meta.
	 *
	 * Delete the file meta data.
	 *
	 * @since 2.1.0
	 * @access protected
	 */
	protected function delete_meta() {
		delete_option( static::META_KEY );
	}

	/**
	 * @since 2.1.0
	 * @access protected
	 */
	protected function get_default_meta() {
		return [
			'time' => 0,
		];
	}

	/**
	 * @since 2.1.0
	 * @access private
	 * @static
	 */
	private static function get_wp_uploads_dir() {
		global $blog_id;
		if ( empty( self::$wp_uploads_dir[ $blog_id ] ) ) {
			self::$wp_uploads_dir[ $blog_id ] = wp_upload_dir( null, false );
		}

		return self::$wp_uploads_dir[ $blog_id ];
	}

	/**
	 * @since 2.1.0
	 * @access private
	 */
	private function set_path() {
		$dir_path = self::get_base_uploads_dir() . $this->files_dir;

		if ( ! is_dir( $dir_path ) ) {
			wp_mkdir_p( $dir_path );
		}

		$this->path = $dir_path . $this->file_name;
	}
}
core/utils/collection.php000064400000017015151327220420011502 0ustar00<?php
/**
 * Inspired by Laravel Collection.
 * @link https://github.com/illuminate/collections
 */
namespace Elementor\Core\Utils;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

class Collection implements \ArrayAccess, \Countable, \IteratorAggregate {
	/**
	 * The items contained in the collection.
	 *
	 * @var array
	 */
	protected $items;

	/**
	 * Collection constructor.
	 *
	 * @param array $items
	 */
	public function __construct( array $items ) {
		$this->items = $items;
	}

	/**
	 * @param callable|null $callback
	 *
	 * @return $this
	 */
	public function filter( callable $callback = null ) {
		if ( ! $callback ) {
			return new static( array_filter( $this->items ) );
		}

		return new static( array_filter( $this->items, $callback, ARRAY_FILTER_USE_BOTH ) );
	}

	/**
	 * @param $items
	 *
	 * @return $this
	 */
	public function merge( $items ) {
		if ( $items instanceof Collection ) {
			$items = $items->all();
		}

		return new static( array_merge( $this->items, $items ) );
	}

	/**
	 * Union the collection with the given items.
	 *
	 * @param array $items
	 *
	 * @return $this
	 */
	public function union( array $items ) {
		return new static( $this->all() + $items );
	}

	/**
	 * Merge array recursively
	 *
	 * @param $items
	 *
	 * @return $this
	 */
	public function merge_recursive( $items ) {
		if ( $items instanceof Collection ) {
			$items = $items->all();
		}

		return new static( array_merge_recursive( $this->items, $items ) );
	}

	/**
	 * Replace array recursively
	 *
	 * @param $items
	 *
	 * @return $this
	 */
	public function replace_recursive( $items ) {
		if ( $items instanceof Collection ) {
			$items = $items->all();
		}

		return new static( array_replace_recursive( $this->items, $items ) );
	}

	/**
	 * Implode the items
	 *
	 * @param $glue
	 *
	 * @return string
	 */
	public function implode( $glue ) {
		return implode( $glue, $this->items );
	}

	/**
	 * Run a map over each of the items.
	 *
	 * @param  callable  $callback
	 * @return $this
	 */
	public function map( callable $callback ) {
		$keys = array_keys( $this->items );

		$items = array_map( $callback, $this->items, $keys );

		return new static( array_combine( $keys, $items ) );
	}

	/**
	 * @param callable $callback
	 * @param null     $initial
	 *
	 * @return mixed|null
	 */
	public function reduce( callable $callback, $initial = null ) {
		$result = $initial;

		foreach ( $this->all() as $key => $value ) {
			$result = $callback( $result, $value, $key );
		}

		return $result;
	}

	/**
	 * @param callable $callback
	 *
	 * @return $this
	 */
	public function map_with_keys( callable $callback ) {
		$result = [];

		foreach ( $this->items as $key => $value ) {
			$assoc = $callback( $value, $key );

			foreach ( $assoc as $map_key => $map_value ) {
				$result[ $map_key ] = $map_value;
			}
		}

		return new static( $result );
	}

	/**
	 * Get all items except for those with the specified keys.
	 *
	 * @param array $keys
	 *
	 * @return $this
	 */
	public function except( array $keys ) {
		return $this->filter( function ( $value, $key ) use ( $keys ) {
			return ! in_array( $key, $keys, true );
		} );
	}

	/**
	 * Get the items with the specified keys.
	 *
	 * @param array $keys
	 *
	 * @return $this
	 */
	public function only( array $keys ) {
		return $this->filter( function ( $value, $key ) use ( $keys ) {
			return in_array( $key, $keys, true );
		} );
	}

	/**
	 * Run over the collection to get specific prop from the collection item.
	 *
	 * @param $key
	 *
	 * @return $this
	 */
	public function pluck( $key ) {
		$result = [];

		foreach ( $this->items as $item ) {
			$result[] = $this->get_item_value( $item, $key );
		}

		return new static( $result );
	}

	/**
	 * Group the collection items by specific key in each collection item.
	 *
	 * @param $group_by
	 *
	 * @return $this
	 */
	public function group_by( $group_by ) {
		$result = [];

		foreach ( $this->items as $item ) {
			$group_key = $this->get_item_value( $item, $group_by, 0 );

			$result[ $group_key ][] = $item;
		}

		return new static( $result );
	}

	/**
	 * Sort keys
	 *
	 * @param false $descending
	 *
	 * @return $this
	 */
	public function sort_keys( $descending = false ) {
		$items = $this->items;

		if ( $descending ) {
			krsort( $items );
		} else {
			ksort( $items );
		}

		return new static( $items );
	}

	/**
	 * Get specific item from the collection.
	 *
	 * @param      $key
	 * @param null $default
	 *
	 * @return mixed|null
	 */
	public function get( $key, $default = null ) {
		if ( ! array_key_exists( $key, $this->items ) ) {
			return $default;
		}

		return $this->items[ $key ];
	}

	/**
	 * Get the first item.
	 *
	 * @param null $default
	 *
	 * @return mixed|null
	 */
	public function first( $default = null ) {
		if ( $this->is_empty() ) {
			return $default;
		}

		foreach ( $this->items as $item ) {
			return $item;
		}
	}

	/**
	 * Find an element from the items.
	 *
	 * @param callable $callback
	 * @param null     $default
	 *
	 * @return mixed|null
	 */
	public function find( callable $callback, $default = null ) {
		foreach ( $this->all() as $key => $item ) {
			if ( $callback( $item, $key ) ) {
				return $item;
			}
		}

		return $default;
	}

	/**
	 * Make sure all the values inside the array are uniques.
	 *
	 * @param null|string|string[] $keys
	 *
	 * @return $this
	 */
	public function unique( $keys = null ) {
		if ( ! $keys ) {
			return new static(
				array_unique( $this->items )
			);
		}

		if ( ! is_array( $keys ) ) {
			$keys = [ $keys ];
		}

		$exists = [];

		return $this->filter( function ( $item ) use ( $keys, &$exists ) {
			$value = null;

			foreach ( $keys as $key ) {
				$current_value = $this->get_item_value( $item, $key );

				$value .= "{$key}:{$current_value};";
			}

			// If no value for the specific key return the item.
			if ( null === $value ) {
				return true;
			}

			// If value is not exists, add to the exists array and return the item.
			if ( ! in_array( $value, $exists, true ) ) {
				$exists[] = $value;

				return true;
			}

			return false;
		} );
	}

	/**
	 * @return array
	 */
	public function keys() {
		return array_keys( $this->items );
	}

	/**
	 * @return bool
	 */
	public function is_empty() {
		return empty( $this->items );
	}

	/**
	 * @return array
	 */
	public function all() {
		return $this->items;
	}

	/**
	 * @return array
	 */
	public function values() {
		return array_values( $this->all() );
	}

	/**
	 * @param mixed $key
	 *
	 * @return bool
	 */
	public function offsetExists( $key ) {
		return isset( $this->items[ $key ] );
	}

	/**
	 * @param mixed $key
	 *
	 * @return mixed
	 */
	public function offsetGet( $key ) {
		return $this->items[ $key ];
	}

	/**
	 * @param mixed $key
	 * @param mixed $value
	 */
	public function offsetSet( $key, $value ) {
		if ( is_null( $key ) ) {
			$this->items[] = $value;
		} else {
			$this->items[ $key ] = $value;
		}
	}

	/**
	 * @param mixed $key
	 */
	public function offsetUnset( $key ) {
		unset( $this->items[ $key ] );
	}

	/**
	 * @return \ArrayIterator|\Traversable
	 */
	public function getIterator() {
		return new \ArrayIterator( $this->items );
	}

	/**
	 * @return int|void
	 */
	public function count() {
		return count( $this->items );
	}

	/**
	 * @param      $item
	 * @param      $key
	 * @param null $default
	 *
	 * @return mixed|null
	 */
	private function get_item_value( $item, $key, $default = null ) {
		$value = $default;

		if ( is_object( $item ) && isset( $item->{$key} ) ) {
			$value = $item->{$key};
		} elseif ( is_array( $item ) && isset( $item[ $key ] ) ) {
			$value = $item[ $key ];
		}

		return $value;
	}
}
core/utils/import-export/parsers/wxr-parser.php000064400000002557151327220420015776 0ustar00<?php
namespace Elementor\Core\Utils\ImportExport\Parsers;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * WordPress eXtended RSS file parser implementations,
 * Originally made by WordPress part of WordPress/Importer.
 * https://plugins.trac.wordpress.org/browser/wordpress-importer/trunk/parsers/class-wxr-parser.php
 *
 * What was done:
 * Reformat of the code.
 * Changed text domain.
 */

/**
 * WordPress Importer class for managing parsing of WXR files.
 */
class WXR_Parser {

	public function parse( $file ) {
		// Attempt to use proper XML parsers first.
		if ( extension_loaded( 'simplexml' ) ) {
			$parser = new WXR_Parser_SimpleXML();
			$result = $parser->parse( $file );

			// If SimpleXML succeeds or this is an invalid WXR file then return the results.
			if ( ! is_wp_error( $result ) || 'SimpleXML_parse_error' != $result->get_error_code() ) {
				return $result;
			}
		} elseif ( extension_loaded( 'xml' ) ) {
			$parser = new WXR_Parser_XML();
			$result = $parser->parse( $file );

			// If XMLParser succeeds or this is an invalid WXR file then return the results.
			if ( ! is_wp_error( $result ) || 'XML_parse_error' != $result->get_error_code() ) {
				return $result;
			}
		}

		// Use regular expressions if nothing else available or this is bad XML.
		$parser = new WXR_Parser_Regex();

		return $parser->parse( $file );
	}
}
core/utils/import-export/parsers/wxr-parser-simple-xml.php000064400000020443151327220420020055 0ustar00<?php
namespace Elementor\Core\Utils\ImportExport\Parsers;

use WP_Error;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * WordPress eXtended RSS file parser implementations,
 * Originally made by WordPress part of WordPress/Importer.
 * https://plugins.trac.wordpress.org/browser/wordpress-importer/trunk/parsers/class-wxr-parser-simplexml.php
 *
 * What was done:
 * Reformat of the code.
 * Removed variable '$internal_errors'.
 * Changed text domain.
 */

/**
 * WXR Parser that makes use of the SimpleXML PHP extension.
 */
class WXR_Parser_SimpleXML {

	/**
	 * @param string $file
	 *
	 * @return array|\WP_Error
	 */
	public function parse( $file ) {
		$authors = [];
		$posts = [];
		$categories = [];
		$tags = [];
		$terms = [];

		libxml_use_internal_errors( true );

		$dom = new \DOMDocument();
		$old_value = null;

		$libxml_disable_entity_loader_exists = function_exists( 'libxml_disable_entity_loader' );

		if ( $libxml_disable_entity_loader_exists ) {
			$old_value = libxml_disable_entity_loader( true ); // phpcs:ignore Generic.PHP.DeprecatedFunctions.Deprecated
		}

		$success = $dom->loadXML( file_get_contents( $file ) );

		if ( $libxml_disable_entity_loader_exists && ! is_null( $old_value ) ) {
			libxml_disable_entity_loader( $old_value ); // phpcs:ignore Generic.PHP.DeprecatedFunctions.Deprecated
		}

		if ( ! $success || isset( $dom->doctype ) ) {
			return new WP_Error( 'SimpleXML_parse_error', esc_html__( 'There was an error when reading this WXR file', 'elementor' ), libxml_get_errors() );
		}

		$xml = simplexml_import_dom( $dom );
		unset( $dom );

		// Halt if loading produces an error.
		if ( ! $xml ) {
			return new WP_Error( 'SimpleXML_parse_error', esc_html__( 'There was an error when reading this WXR file', 'elementor' ), libxml_get_errors() );
		}

		$wxr_version = $xml->xpath( '/rss/channel/wp:wxr_version' );
		if ( ! $wxr_version ) {
			return new WP_Error( 'WXR_parse_error', esc_html__( 'This does not appear to be a WXR file, missing/invalid WXR version number', 'elementor' ) );
		}

		$wxr_version = (string) trim( $wxr_version[0] );
		// Confirm that we are dealing with the correct file format.
		if ( ! preg_match( '/^\d+\.\d+$/', $wxr_version ) ) {
			return new WP_Error( 'WXR_parse_error', esc_html__( 'This does not appear to be a WXR file, missing/invalid WXR version number', 'elementor' ) );
		}

		$base_url = $xml->xpath( '/rss/channel/wp:base_site_url' );
		$base_url = (string) trim( isset( $base_url[0] ) ? $base_url[0] : '' );

		$base_blog_url = $xml->xpath( '/rss/channel/wp:base_blog_url' );
		if ( $base_blog_url ) {
			$base_blog_url = (string) trim( $base_blog_url[0] );
		} else {
			$base_blog_url = $base_url;
		}

		$page_on_front = $xml->xpath( '/rss/channel/wp:page_on_front' );

		if ( $page_on_front ) {
			$page_on_front = (int) $page_on_front[0];
		}

		$namespaces = $xml->getDocNamespaces();
		if ( ! isset( $namespaces['wp'] ) ) {
			$namespaces['wp'] = 'http://wordpress.org/export/1.1/';
		}
		if ( ! isset( $namespaces['excerpt'] ) ) {
			$namespaces['excerpt'] = 'http://wordpress.org/export/1.1/excerpt/';
		}

		// Grab authors.
		foreach ( $xml->xpath( '/rss/channel/wp:author' ) as $author_arr ) {
			$a = $author_arr->children( $namespaces['wp'] );
			$login = (string) $a->author_login;
			$authors[ $login ] = [
				'author_id' => (int) $a->author_id,
				'author_login' => $login,
				'author_email' => (string) $a->author_email,
				'author_display_name' => (string) $a->author_display_name,
				'author_first_name' => (string) $a->author_first_name,
				'author_last_name' => (string) $a->author_last_name,
			];
		}

		// Grab cats, tags and terms.
		foreach ( $xml->xpath( '/rss/channel/wp:category' ) as $term_arr ) {
			$t = $term_arr->children( $namespaces['wp'] );
			$category = [
				'term_id' => (int) $t->term_id,
				'category_nicename' => (string) $t->category_nicename,
				'category_parent' => (string) $t->category_parent,
				'cat_name' => (string) $t->cat_name,
				'category_description' => (string) $t->category_description,
			];

			foreach ( $t->termmeta as $meta ) {
				$category['termmeta'][] = [
					'key' => (string) $meta->meta_key,
					'value' => (string) $meta->meta_value,
				];
			}

			$categories[] = $category;
		}

		foreach ( $xml->xpath( '/rss/channel/wp:tag' ) as $term_arr ) {
			$t = $term_arr->children( $namespaces['wp'] );
			$tag = [
				'term_id' => (int) $t->term_id,
				'tag_slug' => (string) $t->tag_slug,
				'tag_name' => (string) $t->tag_name,
				'tag_description' => (string) $t->tag_description,
			];

			foreach ( $t->termmeta as $meta ) {
				$tag['termmeta'][] = [
					'key' => (string) $meta->meta_key,
					'value' => (string) $meta->meta_value,
				];
			}

			$tags[] = $tag;
		}

		foreach ( $xml->xpath( '/rss/channel/wp:term' ) as $term_arr ) {
			$t = $term_arr->children( $namespaces['wp'] );
			$term = [
				'term_id' => (int) $t->term_id,
				'term_taxonomy' => (string) $t->term_taxonomy,
				'slug' => (string) $t->term_slug,
				'term_parent' => (string) $t->term_parent,
				'term_name' => (string) $t->term_name,
				'term_description' => (string) $t->term_description,
			];

			foreach ( $t->termmeta as $meta ) {
				$term['termmeta'][] = [
					'key' => (string) $meta->meta_key,
					'value' => (string) $meta->meta_value,
				];
			}

			$terms[] = $term;
		}

		// Grab posts.
		foreach ( $xml->channel->item as $item ) {
			$post = [
				'post_title' => (string) $item->title,
				'guid' => (string) $item->guid,
			];

			$dc = $item->children( 'http://purl.org/dc/elements/1.1/' );
			$post['post_author'] = (string) $dc->creator;

			$content = $item->children( 'http://purl.org/rss/1.0/modules/content/' );
			$excerpt = $item->children( $namespaces['excerpt'] );
			$post['post_content'] = (string) $content->encoded;
			$post['post_excerpt'] = (string) $excerpt->encoded;

			$wp = $item->children( $namespaces['wp'] );
			$post['post_id'] = (int) $wp->post_id;
			$post['post_date'] = (string) $wp->post_date;
			$post['post_date_gmt'] = (string) $wp->post_date_gmt;
			$post['comment_status'] = (string) $wp->comment_status;
			$post['ping_status'] = (string) $wp->ping_status;
			$post['post_name'] = (string) $wp->post_name;
			$post['status'] = (string) $wp->status;
			$post['post_parent'] = (int) $wp->post_parent;
			$post['menu_order'] = (int) $wp->menu_order;
			$post['post_type'] = (string) $wp->post_type;
			$post['post_password'] = (string) $wp->post_password;
			$post['is_sticky'] = (int) $wp->is_sticky;

			if ( isset( $wp->attachment_url ) ) {
				$post['attachment_url'] = (string) $wp->attachment_url;
			}

			foreach ( $item->category as $c ) {
				$att = $c->attributes();
				if ( isset( $att['nicename'] ) ) {
					$post['terms'][] = [
						'name' => (string) $c,
						'slug' => (string) $att['nicename'],
						'domain' => (string) $att['domain'],
					];
				}
			}

			foreach ( $wp->postmeta as $meta ) {
				$post['postmeta'][] = [
					'key' => (string) $meta->meta_key,
					'value' => (string) $meta->meta_value,
				];
			}

			foreach ( $wp->comment as $comment ) {
				$meta = [];
				if ( isset( $comment->commentmeta ) ) {
					foreach ( $comment->commentmeta as $m ) {
						$meta[] = [
							'key' => (string) $m->meta_key,
							'value' => (string) $m->meta_value,
						];
					}
				}

				$post['comments'][] = [
					'comment_id' => (int) $comment->comment_id,
					'comment_author' => (string) $comment->comment_author,
					'comment_author_email' => (string) $comment->comment_author_email,
					'comment_author_IP' => (string) $comment->comment_author_IP,
					'comment_author_url' => (string) $comment->comment_author_url,
					'comment_date' => (string) $comment->comment_date,
					'comment_date_gmt' => (string) $comment->comment_date_gmt,
					'comment_content' => (string) $comment->comment_content,
					'comment_approved' => (string) $comment->comment_approved,
					'comment_type' => (string) $comment->comment_type,
					'comment_parent' => (string) $comment->comment_parent,
					'comment_user_id' => (int) $comment->comment_user_id,
					'commentmeta' => $meta,
				];
			}

			$posts[] = $post;
		}

		return [
			'authors' => $authors,
			'posts' => $posts,
			'categories' => $categories,
			'tags' => $tags,
			'terms' => $terms,
			'base_url' => $base_url,
			'base_blog_url' => $base_blog_url,
			'page_on_front' => $page_on_front,
			'version' => $wxr_version,
		];
	}
}
core/utils/import-export/parsers/wxr-parser-xml.php000064400000016656151327220420016601 0ustar00<?php
namespace Elementor\Core\Utils\ImportExport\Parsers;

use WP_Error;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * WordPress eXtended RSS file parser implementations,
 * Originally made by WordPress part of WordPress/Importer.
 * https://plugins.trac.wordpress.org/browser/wordpress-importer/trunk/parsers/class-wxr-parser-xml.php
 *
 * What was done:
 * Reformat of the code.
 * Added PHPDOC.
 * Changed text domain.
 * Added clear() method.
 * Added undeclared class properties.
 * Changed methods visibility.
 */

/**
 * WXR Parser that makes use of the XML Parser PHP extension.
 */
class WXR_Parser_XML {
	private static $wp_tags = [
		'wp:post_id',
		'wp:post_date',
		'wp:post_date_gmt',
		'wp:comment_status',
		'wp:ping_status',
		'wp:attachment_url',
		'wp:status',
		'wp:post_name',
		'wp:post_parent',
		'wp:menu_order',
		'wp:post_type',
		'wp:post_password',
		'wp:is_sticky',
		'wp:term_id',
		'wp:category_nicename',
		'wp:category_parent',
		'wp:cat_name',
		'wp:category_description',
		'wp:tag_slug',
		'wp:tag_name',
		'wp:tag_description',
		'wp:term_taxonomy',
		'wp:term_parent',
		'wp:term_name',
		'wp:term_description',
		'wp:author_id',
		'wp:author_login',
		'wp:author_email',
		'wp:author_display_name',
		'wp:author_first_name',
		'wp:author_last_name',
	];

	private static $wp_sub_tags = [
		'wp:comment_id',
		'wp:comment_author',
		'wp:comment_author_email',
		'wp:comment_author_url',
		'wp:comment_author_IP',
		'wp:comment_date',
		'wp:comment_date_gmt',
		'wp:comment_content',
		'wp:comment_approved',
		'wp:comment_type',
		'wp:comment_parent',
		'wp:comment_user_id',
	];

	/**
	 * @var string
	 */
	private $wxr_version;

	/**
	 * @var string
	 */
	private $cdata;

	/**
	 * @var array
	 */
	private $data;

	/**
	 * @var array
	 */
	private $sub_data;

	/**
	 * @var boolean
	 */
	private $in_post;

	/**
	 * @var boolean
	 */
	private $in_tag;

	/**
	 * @var boolean
	 */
	private $in_sub_tag;

	/**
	 * @var array
	 */
	private $authors;

	/**
	 * @var array
	 */
	private $posts;

	/**
	 * @var array
	 */
	private $term;

	/**
	 * @var array
	 */
	private $category;

	/**
	 * @var array
	 */
	private $tag;

	/**
	 * @var string
	 */
	private $base_url;

	/**
	 * @var string
	 */
	private $base_blog_url;

	/**
	 * @param string $file
	 *
	 * @return array|WP_Error
	 */
	public function parse( $file ) {
		$this->clear();

		$xml = xml_parser_create( 'UTF-8' );
		xml_parser_set_option( $xml, XML_OPTION_SKIP_WHITE, 1 );
		xml_parser_set_option( $xml, XML_OPTION_CASE_FOLDING, 0 );
		xml_set_object( $xml, $this );

		xml_set_character_data_handler( $xml, function ( $parser, $cdata ) {
			$this->cdata( $cdata );
		} );

		$tag_open_callback = function ( $parse, $tag, $attr ) {
			$this->tag_open( $tag, $attr );
		};

		$tag_close_callback = function ( $parser, $tag ) {
			$this->tag_close( $tag );
		};

		xml_set_element_handler( $xml, $tag_open_callback, $tag_close_callback );

		if ( ! xml_parse( $xml, file_get_contents( $file ), true ) ) {
			$current_line = xml_get_current_line_number( $xml );
			$current_column = xml_get_current_column_number( $xml );
			$error_code = xml_get_error_code( $xml );
			$error_string = xml_error_string( $error_code );

			return new WP_Error( 'XML_parse_error', 'There was an error when reading this WXR file', [
				$current_line,
				$current_column,
				$error_string,
			] );
		}
		xml_parser_free( $xml );

		if ( ! preg_match( '/^\d+\.\d+$/', $this->wxr_version ) ) {
			return new WP_Error( 'WXR_parse_error', esc_html__( 'This does not appear to be a WXR file, missing/invalid WXR version number', 'elementor' ) );
		}

		return array(
			'authors' => $this->authors,
			'posts' => $this->posts,
			'categories' => $this->category,
			'tags' => $this->tag,
			'terms' => $this->term,
			'base_url' => $this->base_url,
			'base_blog_url' => $this->base_blog_url,
			'version' => $this->wxr_version,
		);
	}

	private function tag_open( $tag, $attr ) {
		if ( in_array( $tag, self::$wp_tags ) ) {
			$this->in_tag = substr( $tag, 3 );

			return;
		}

		if ( in_array( $tag, self::$wp_sub_tags ) ) {
			$this->in_sub_tag = substr( $tag, 3 );

			return;
		}

		switch ( $tag ) {
			case 'category':
				if ( isset( $attr['domain'], $attr['nicename'] ) ) {
					$this->sub_data['domain'] = $attr['domain'];
					$this->sub_data['slug'] = $attr['nicename'];
				}
				break;
			case 'item':
				$this->in_post = true;
				// No break !!!.
			case 'title':
				if ( $this->in_post ) {
					$this->in_tag = 'post_title';
				}
				break;
			case 'guid':
				$this->in_tag = 'guid';
				break;
			case 'dc:creator':
				$this->in_tag = 'post_author';
				break;
			case 'content:encoded':
				$this->in_tag = 'post_content';
				break;
			case 'excerpt:encoded':
				$this->in_tag = 'post_excerpt';
				break;

			case 'wp:term_slug':
				$this->in_tag = 'slug';
				break;
			case 'wp:meta_key':
				$this->in_sub_tag = 'key';
				break;
			case 'wp:meta_value':
				$this->in_sub_tag = 'value';
				break;
		}
	}

	private function cdata( $cdata ) {
		if ( ! trim( $cdata ) ) {
			return;
		}

		if ( false !== $this->in_tag || false !== $this->in_sub_tag ) {
			$this->cdata .= $cdata;
		} else {
			$this->cdata .= trim( $cdata );
		}
	}

	private function tag_close( $tag ) {
		switch ( $tag ) {
			case 'wp:comment':
				unset( $this->sub_data['key'], $this->sub_data['value'] ); // Remove meta sub_data.
				if ( ! empty( $this->sub_data ) ) {
					$this->data['comments'][] = $this->sub_data;
				}
				$this->sub_data = [];
				break;
			case 'wp:commentmeta':
				$this->sub_data['commentmeta'][] = [
					'key' => $this->sub_data['key'],
					'value' => $this->sub_data['value'],
				];
				break;
			case 'category':
				if ( ! empty( $this->sub_data ) ) {
					$this->sub_data['name'] = $this->cdata;
					$this->data['terms'][] = $this->sub_data;
				}
				$this->sub_data = [];
				break;
			case 'wp:postmeta':
				if ( ! empty( $this->sub_data ) ) {
					$this->data['postmeta'][] = $this->sub_data;
				}
				$this->sub_data = [];
				break;
			case 'item':
				$this->posts[] = $this->data;
				$this->data = [];
				break;
			case 'wp:category':
			case 'wp:tag':
			case 'wp:term':
				$n = substr( $tag, 3 );
				array_push( $this->$n, $this->data );
				$this->data = [];
				break;
			case 'wp:termmeta':
				if ( ! empty( $this->sub_data ) ) {
					$this->data['termmeta'][] = $this->sub_data;
				}
				$this->sub_data = [];
				break;
			case 'wp:author':
				if ( ! empty( $this->data['author_login'] ) ) {
					$this->authors[ $this->data['author_login'] ] = $this->data;
				}
				$this->data = [];
				break;
			case 'wp:base_site_url':
				$this->base_url = $this->cdata;
				if ( ! isset( $this->base_blog_url ) ) {
					$this->base_blog_url = $this->cdata;
				}
				break;
			case 'wp:base_blog_url':
				$this->base_blog_url = $this->cdata;
				break;
			case 'wp:wxr_version':
				$this->wxr_version = $this->cdata;
				break;

			default:
				if ( $this->in_sub_tag ) {
					$this->sub_data[ $this->in_sub_tag ] = $this->cdata;
					$this->in_sub_tag = false;
				} else if ( $this->in_tag ) {
					$this->data[ $this->in_tag ] = $this->cdata;
					$this->in_tag = false;
				}
		}

		$this->cdata = '';
	}

	private function clear() {
		$this->wxr_version = '';

		$this->cdata = '';
		$this->data = [];
		$this->sub_data = [];

		$this->in_post = false;
		$this->in_tag = false;
		$this->in_sub_tag = false;

		$this->authors = [];
		$this->posts = [];
		$this->term = [];
		$this->category = [];
		$this->tag = [];
	}
}
core/utils/import-export/parsers/wxr-parser-regex.php000064400000026572151327220420017111 0ustar00<?php
namespace Elementor\Core\Utils\ImportExport\Parsers;

use WP_Error;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * WordPress eXtended RSS file parser implementations
 * Originally made by WordPress part of WordPress/Importer.
 * https://plugins.trac.wordpress.org/browser/wordpress-importer/trunk/parsers/class-wxr-parser-regex.php
 *
 * What was done:
 * Reformat of the code.
 * Changed text domain.
 * Changed methods visibility.
 */

/**
 * WXR Parser that uses regular expressions. Fallback for installs without an XML parser.
 */
class WXR_Parser_Regex {
	/**
	 * @var bool
	 */
	private $has_gzip;

	private $authors = [];
	private $posts = [];
	private $categories = [];
	private $tags = [];
	private $terms = [];
	private $base_url = '';
	private $base_blog_url = '';

	/**
	 * @param string $file
	 *
	 * @return array|\WP_Error
	 */
	public function parse( $file ) {
		$wxr_version = '';
		$in_multiline = false;

		$multiline_content = '';

		$multiline_tags = [
			'item' => [
				'posts',
				function ( $post ) {
					return $this->process_post( $post );
				},
			],
			'wp:category' => [
				'categories',
				function ( $category ) {
					return $this->process_category( $category );
				},
			],
			'wp:tag' => [
				'tags',
				function ( $tag ) {
					return $this->process_tag( $tag );
				},
			],
			'wp:term' => [
				'terms',
				function ( $term ) {
					return $this->process_term( $term );
				},
			],
		];

		$fp = $this->fopen( $file, 'r' );
		if ( $fp ) {
			while ( ! $this->feof( $fp ) ) {
				$importline = rtrim( $this->fgets( $fp ) );

				if ( ! $wxr_version && preg_match( '|<wp:wxr_version>(\d+\.\d+)</wp:wxr_version>|', $importline, $version ) ) {
					$wxr_version = $version[1];
				}

				if ( false !== strpos( $importline, '<wp:base_site_url>' ) ) {
					preg_match( '|<wp:base_site_url>(.*?)</wp:base_site_url>|is', $importline, $url );
					$this->base_url = $url[1];
					continue;
				}

				if ( false !== strpos( $importline, '<wp:base_blog_url>' ) ) {
					preg_match( '|<wp:base_blog_url>(.*?)</wp:base_blog_url>|is', $importline, $blog_url );
					$this->base_blog_url = $blog_url[1];
					continue;
				} else {
					$this->base_blog_url = $this->base_url;
				}

				if ( false !== strpos( $importline, '<wp:author>' ) ) {
					preg_match( '|<wp:author>(.*?)</wp:author>|is', $importline, $author );
					$a = $this->process_author( $author[1] );
					$this->authors[ $a['author_login'] ] = $a;
					continue;
				}

				foreach ( $multiline_tags as $tag => $handler ) {
					// Handle multi-line tags on a singular line.
					if ( preg_match( '|<' . $tag . '>(.*?)</' . $tag . '>|is', $importline, $matches ) ) {
						$this->{$handler[0]}[] = call_user_func( $handler[1], $matches[1] );

						continue;
					}

					$pos = strpos( $importline, "<$tag>" );

					if ( false !== $pos ) {
						// Take note of any content after the opening tag.
						$multiline_content = trim( substr( $importline, $pos + strlen( $tag ) + 2 ) );

						// We don't want to have this line added to `$is_multiline` below.
						$importline = '';
						$in_multiline = $tag;

						continue;
					}

					$pos = strpos( $importline, "</$tag>" );

					if ( false !== $pos ) {
						$in_multiline = false;
						$multiline_content .= trim( substr( $importline, 0, $pos ) );

						$this->{$handler[0]}[] = call_user_func( $handler[1], $multiline_content );
					}
				}

				if ( $in_multiline && $importline ) {
					$multiline_content .= $importline . "\n";
				}
			}

			$this->fclose( $fp );
		}

		if ( ! $wxr_version ) {
			return new WP_Error( 'WXR_parse_error', esc_html__( 'This does not appear to be a WXR file, missing/invalid WXR version number', 'elementor' ) );
		}

		return [
			'authors' => $this->authors,
			'posts' => $this->posts,
			'categories' => $this->categories,
			'tags' => $this->tags,
			'terms' => $this->terms,
			'base_url' => $this->base_url,
			'base_blog_url' => $this->base_blog_url,
			'version' => $wxr_version,
		];
	}

	private function process_category( $category ) {
		$term = [
			'term_id' => $this->get_tag( $category, 'wp:term_id' ),
			'cat_name' => $this->get_tag( $category, 'wp:cat_name' ),
			'category_nicename' => $this->get_tag( $category, 'wp:category_nicename' ),
			'category_parent' => $this->get_tag( $category, 'wp:category_parent' ),
			'category_description' => $this->get_tag( $category, 'wp:category_description' ),
		];

		$term_meta = $this->process_meta( $category, 'wp:termmeta' );
		if ( ! empty( $term_meta ) ) {
			$term['termmeta'] = $term_meta;
		}

		return $term;
	}

	private function process_tag( $tag ) {
		$term = [
			'term_id' => $this->get_tag( $tag, 'wp:term_id' ),
			'tag_name' => $this->get_tag( $tag, 'wp:tag_name' ),
			'tag_slug' => $this->get_tag( $tag, 'wp:tag_slug' ),
			'tag_description' => $this->get_tag( $tag, 'wp:tag_description' ),
		];

		$term_meta = $this->process_meta( $tag, 'wp:termmeta' );
		if ( ! empty( $term_meta ) ) {
			$term['termmeta'] = $term_meta;
		}

		return $term;
	}

	private function process_term( $term ) {
		$term_data = [
			'term_id' => $this->get_tag( $term, 'wp:term_id' ),
			'term_taxonomy' => $this->get_tag( $term, 'wp:term_taxonomy' ),
			'slug' => $this->get_tag( $term, 'wp:term_slug' ),
			'term_parent' => $this->get_tag( $term, 'wp:term_parent' ),
			'term_name' => $this->get_tag( $term, 'wp:term_name' ),
			'term_description' => $this->get_tag( $term, 'wp:term_description' ),
		];

		$term_meta = $this->process_meta( $term, 'wp:termmeta' );
		if ( ! empty( $term_meta ) ) {
			$term_data['termmeta'] = $term_meta;
		}

		return $term_data;
	}

	private function process_meta( $string, $tag ) {
		$parsed_meta = [];

		preg_match_all( "|<$tag>(.+?)</$tag>|is", $string, $meta );

		if ( ! isset( $meta[1] ) ) {
			return $parsed_meta;
		}

		foreach ( $meta[1] as $m ) {
			$parsed_meta[] = [
				'key' => $this->get_tag( $m, 'wp:meta_key' ),
				'value' => $this->get_tag( $m, 'wp:meta_value' ),
			];
		}

		return $parsed_meta;
	}

	private function process_author( $a ) {
		return [
			'author_id' => $this->get_tag( $a, 'wp:author_id' ),
			'author_login' => $this->get_tag( $a, 'wp:author_login' ),
			'author_email' => $this->get_tag( $a, 'wp:author_email' ),
			'author_display_name' => $this->get_tag( $a, 'wp:author_display_name' ),
			'author_first_name' => $this->get_tag( $a, 'wp:author_first_name' ),
			'author_last_name' => $this->get_tag( $a, 'wp:author_last_name' ),
		];
	}

	private function process_post( $post ) {
		$normalize_tag_callback = function ( $matches ) {
			return $this->normalize_tag( $matches );
		};

		$post_id = $this->get_tag( $post, 'wp:post_id' );
		$post_title = $this->get_tag( $post, 'title' );
		$post_date = $this->get_tag( $post, 'wp:post_date' );
		$post_date_gmt = $this->get_tag( $post, 'wp:post_date_gmt' );
		$comment_status = $this->get_tag( $post, 'wp:comment_status' );
		$ping_status = $this->get_tag( $post, 'wp:ping_status' );
		$status = $this->get_tag( $post, 'wp:status' );
		$post_name = $this->get_tag( $post, 'wp:post_name' );
		$post_parent = $this->get_tag( $post, 'wp:post_parent' );
		$menu_order = $this->get_tag( $post, 'wp:menu_order' );
		$post_type = $this->get_tag( $post, 'wp:post_type' );
		$post_password = $this->get_tag( $post, 'wp:post_password' );
		$is_sticky = $this->get_tag( $post, 'wp:is_sticky' );
		$guid = $this->get_tag( $post, 'guid' );
		$post_author = $this->get_tag( $post, 'dc:creator' );

		$post_excerpt = $this->get_tag( $post, 'excerpt:encoded' );
		$post_excerpt = preg_replace_callback( '|<(/?[A-Z]+)|', $normalize_tag_callback, $post_excerpt );
		$post_excerpt = str_replace( '<br>', '<br />', $post_excerpt );
		$post_excerpt = str_replace( '<hr>', '<hr />', $post_excerpt );

		$post_content = $this->get_tag( $post, 'content:encoded' );
		$post_content = preg_replace_callback( '|<(/?[A-Z]+)|', $normalize_tag_callback, $post_content );
		$post_content = str_replace( '<br>', '<br />', $post_content );
		$post_content = str_replace( '<hr>', '<hr />', $post_content );

		$postdata = compact( 'post_id', 'post_author', 'post_date', 'post_date_gmt', 'post_content', 'post_excerpt', 'post_title', 'status', 'post_name', 'comment_status', 'ping_status', 'guid', 'post_parent', 'menu_order', 'post_type', 'post_password', 'is_sticky' );

		$attachment_url = $this->get_tag( $post, 'wp:attachment_url' );
		if ( $attachment_url ) {
			$postdata['attachment_url'] = $attachment_url;
		}

		preg_match_all( '|<category domain="([^"]+?)" nicename="([^"]+?)">(.+?)</category>|is', $post, $terms, PREG_SET_ORDER );
		foreach ( $terms as $t ) {
			$post_terms[] = [
				'slug' => $t[2],
				'domain' => $t[1],
				'name' => str_replace( [ '<![CDATA[', ']]>' ], '', $t[3] ),
			];
		}
		if ( ! empty( $post_terms ) ) {
			$postdata['terms'] = $post_terms;
		}

		preg_match_all( '|<wp:comment>(.+?)</wp:comment>|is', $post, $comments );
		$comments = $comments[1];
		if ( $comments ) {
			foreach ( $comments as $comment ) {
				$post_comments[] = [
					'comment_id' => $this->get_tag( $comment, 'wp:comment_id' ),
					'comment_author' => $this->get_tag( $comment, 'wp:comment_author' ),
					'comment_author_email' => $this->get_tag( $comment, 'wp:comment_author_email' ),
					'comment_author_IP' => $this->get_tag( $comment, 'wp:comment_author_IP' ),
					'comment_author_url' => $this->get_tag( $comment, 'wp:comment_author_url' ),
					'comment_date' => $this->get_tag( $comment, 'wp:comment_date' ),
					'comment_date_gmt' => $this->get_tag( $comment, 'wp:comment_date_gmt' ),
					'comment_content' => $this->get_tag( $comment, 'wp:comment_content' ),
					'comment_approved' => $this->get_tag( $comment, 'wp:comment_approved' ),
					'comment_type' => $this->get_tag( $comment, 'wp:comment_type' ),
					'comment_parent' => $this->get_tag( $comment, 'wp:comment_parent' ),
					'comment_user_id' => $this->get_tag( $comment, 'wp:comment_user_id' ),
					'commentmeta' => $this->process_meta( $comment, 'wp:commentmeta' ),
				];
			}
		}
		if ( ! empty( $post_comments ) ) {
			$postdata['comments'] = $post_comments;
		}

		$post_meta = $this->process_meta( $post, 'wp:postmeta' );
		if ( ! empty( $post_meta ) ) {
			$postdata['postmeta'] = $post_meta;
		}

		return $postdata;
	}

	private function get_tag( $string, $tag ) {
		preg_match( "|<$tag.*?>(.*?)</$tag>|is", $string, $return );
		if ( isset( $return[1] ) ) {
			if ( substr( $return[1], 0, 9 ) == '<![CDATA[' ) {
				if ( strpos( $return[1], ']]]]><![CDATA[>' ) !== false ) {
					preg_match_all( '|<!\[CDATA\[(.*?)\]\]>|s', $return[1], $matches );
					$return = '';
					foreach ( $matches[1] as $match ) {
						$return .= $match;
					}
				} else {
					$return = preg_replace( '|^<!\[CDATA\[(.*)\]\]>$|s', '$1', $return[1] );
				}
			} else {
				$return = $return[1];
			}
		} else {
			$return = '';
		}

		return $return;
	}

	private function normalize_tag( $matches ) {
		return '<' . strtolower( $matches[1] );
	}

	private function fopen( $filename, $mode = 'r' ) {
		if ( $this->has_gzip ) {
			return gzopen( $filename, $mode );
		}

		return fopen( $filename, $mode );
	}

	private function feof( $fp ) {
		if ( $this->has_gzip ) {
			return gzeof( $fp );
		}

		return feof( $fp );
	}

	private function fgets( $fp, $len = 8192 ) {
		if ( $this->has_gzip ) {
			return gzgets( $fp, $len );
		}

		return fgets( $fp, $len );
	}

	private function fclose( $fp ) {
		if ( $this->has_gzip ) {
			return gzclose( $fp );
		}

		return fclose( $fp );
	}

	public function __construct() {
		$this->has_gzip = is_callable( 'gzopen' );
	}
}
core/utils/import-export/wp-exporter.php000064400000064776151327220420014514 0ustar00<?php
namespace Elementor\Core\Utils\ImportExport;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/*
 * Originally made by WordPress.
 *
 * What changed:
 *  Remove echos.
 *  Fix indents.
 *  Add methods
 *      indent.
 *      wxr_categories_list.
 *      wxr_tags_list.
 *      wxr_terms_list.
 *      wxr_posts_list.
 */
class WP_Exporter {
	const WXR_VERSION = '1.2';

	private static $default_args = [
		'content' => 'all',
		'author' => false,
		'category' => false,
		'start_date' => false,
		'end_date' => false,
		'status' => false,
		'offset' => 0,
		'limit' => -1,
		'meta_query' => [], // If specified `meta_key` then will include all post(s) that have this meta_key.
	];

	/**
	 * @var array
	 */
	private $args;

	/**
	 * @var \wpdb
	 */
	private $wpdb;

	/**
	 * Run export, by requested args.
	 * Returns XML with exported data.
	 *
	 * @return array
	 */
	public function run() {
		if ( 'all' !== $this->args['content'] && post_type_exists( $this->args['content'] ) ) {
			$ptype = get_post_type_object( $this->args['content'] );
			if ( ! $ptype->can_export ) {
				$this->args['content'] = 'post';
			}

			$where = $this->wpdb->prepare( "{$this->wpdb->posts}.post_type = %s", $this->args['content'] );// phpcs:ignore
		} else {
			$post_types = get_post_types( [ 'can_export' => true ] );
			$esses = array_fill( 0, count( $post_types ), '%s' );

			$where = $this->wpdb->prepare( "{$this->wpdb->posts}.post_type IN (" . implode( ',', $esses ) . ')', $post_types );// phpcs:ignore
		}

		if ( $this->args['status'] && ( 'post' === $this->args['content'] || 'page' === $this->args['content'] ) ) {
			$where .= $this->wpdb->prepare( " AND {$this->wpdb->posts}.post_status = %s", $this->args['status'] );// phpcs:ignore
		} else {
			$where .= " AND {$this->wpdb->posts}.post_status != 'auto-draft'";
		}

		$join = '';
		if ( $this->args['category'] && 'post' === $this->args['content'] ) {
			$term = term_exists( $this->args['category'], 'category' );
			if ( $term ) {
				$join = "INNER JOIN {$this->wpdb->term_relationships} ON ({$this->wpdb->posts}.ID = {$this->wpdb->term_relationships}.object_id)";
				$where .= $this->wpdb->prepare( " AND {$this->wpdb->term_relationships}.term_taxonomy_id = %d", $term['term_taxonomy_id'] );// phpcs:ignore
			}
		}

		if ( in_array( $this->args['content'], [ 'post', 'page', 'attachment' ], true ) ) {
			if ( $this->args['author'] ) {
				$where .= $this->wpdb->prepare( " AND {$this->wpdb->posts}.post_author = %d", $this->args['author'] );// phpcs:ignore
			}

			if ( $this->args['start_date'] ) {
				$where .= $this->wpdb->prepare( " AND {$this->wpdb->posts}.post_date >= %s", gmdate( 'Y-m-d', strtotime( $this->args['start_date'] ) ) );// phpcs:ignore
			}

			if ( $this->args['end_date'] ) {
				$where .= $this->wpdb->prepare( " AND {$this->wpdb->posts}.post_date < %s", gmdate( 'Y-m-d', strtotime( '+1 month', strtotime( $this->args['end_date'] ) ) ) );// phpcs:ignore
			}
		}

		$limit = '';
		if ( -1 !== (int) $this->args['limit'] ) {
			$limit = 'LIMIT ' . (int) $this->args['limit'] . ' OFFSET ' . (int) $this->args['offset'];
		}

		if ( ! empty( $this->args['meta_query'] ) ) {
			if ( $join ) {
				$join .= ' ';
			}

			if ( $where ) {
				$where .= ' ';
			}

			$meta_query = new \WP_Meta_Query( $this->args['meta_query'] );

			global $wpdb;

			$query_clauses = $meta_query->get_sql( 'post', $wpdb->posts, 'ID' );

			$join .= $query_clauses['join'];
			$where .= $query_clauses['where'];
		}

		// Grab a snapshot of post IDs, just in case it changes during the export.
		$post_ids = $this->wpdb->get_col( "SELECT ID FROM {$this->wpdb->posts} $join WHERE $where $limit" );// phpcs:ignore

		if ( ! empty( $this->args['include_post_featured_image_as_attachment'] ) ) {
			foreach ( $post_ids as $post_id ) {
				$thumbnail_id = get_post_meta( $post_id, '_thumbnail_id', true );

				if ( $thumbnail_id && false === array_search( $thumbnail_id, $post_ids, true ) ) {
					$post_ids [] = $thumbnail_id;
				}
			}
		}

		/*
		 * Get the requested terms ready, empty unless posts filtered by category
		 * or all content.
		 */
		$cats = [];
		$tags = [];
		$terms = [];
		if ( isset( $term ) && $term ) {
			$cat = get_term( $term['term_id'], 'category' );
			$cats = [ $cat->term_id => $cat ];
			unset( $term, $cat );
		} elseif ( 'all' === $this->args['content'] ) {
			$categories = (array) get_categories( [ 'get' => 'all' ] );
			$tags = (array) get_tags( array( 'get' => 'all' ) );

			$custom_taxonomies = get_taxonomies( [ '_builtin' => false ] );
			$custom_terms = (array) get_terms( [
				'taxonomy' => $custom_taxonomies,
				'get' => 'all',
			] );

			// Put categories in order with no child going before its parent.
			while ( $cat = array_shift( $categories ) ) {
				if ( 0 == $cat->parent || isset( $cats[ $cat->parent ] ) ) {
					$cats[ $cat->term_id ] = $cat;
				} else {
					$categories[] = $cat;
				}
			}

			// Put terms in order with no child going before its parent.
			while ( $t = array_shift( $custom_terms ) ) {
				if ( 0 == $t->parent || isset( $terms[ $t->parent ] ) ) {
					$terms[ $t->term_id ] = $t;
				} else {
					$custom_terms[] = $t;
				}
			}

			unset( $categories, $custom_taxonomies, $custom_terms );
		}

		return [
			'ids' => $post_ids,
			'xml' => $this->get_xml_export( $post_ids, $cats, $tags, $terms ),
		];
	}

	/**
	 * Return tabulation characters, by `$columns`.
	 *
	 * @param int $columns
	 *
	 * @return string
	 */
	private function indent( $columns = 1 ) {
		$output = '';

		for ( $i = 0; $i < $columns; $i++ ) {
			$output .= "\t";
		}

		return (string) $output;
	}

	/**
	 * Return wrapped given string in XML CDATA tag.
	 *
	 * @param string $str String to wrap in XML CDATA tag.
	 *
	 * @return string
	 */
	private function wxr_cdata( $str ) {
		$str = (string) $str;

		if ( ! seems_utf8( $str ) ) {
			$str = utf8_encode( $str );
		}

		$str = '<![CDATA[' . str_replace( ']]>', ']]]]><![CDATA[>', $str ) . ']]>';

		return $str;
	}

	/**
	 * Return the URL of the site.
	 *
	 * @return string Site URL.
	 */
	private function wxr_site_url() {
		if ( is_multisite() ) {
			// Multisite: the base URL.
			return network_home_url();
		} else {
			// WordPress (single site): the blog URL.
			return get_bloginfo_rss( 'url' );
		}
	}

	/**
	 * Return a cat_name XML tag from a given category object.
	 *
	 * @param \WP_Term $category Category Object
	 *
	 * @return string
	 */
	private function wxr_cat_name( $category ) {
		if ( empty( $category->name ) ) {
			return '';
		}

		return $this->indent( 3 ) . '<wp:cat_name>' . $this->wxr_cdata( $category->name ) . '</wp:cat_name>' . PHP_EOL;
	}

	/**
	 * Return a category_description XML tag from a given category object.
	 *
	 * @param \WP_Term $category Category Object
	 *
	 * @return string
	 */
	private function wxr_category_description( $category ) {
		if ( empty( $category->description ) ) {
			return '';
		}

		return $this->indent( 3 ) . '<wp:category_description>' . $this->wxr_cdata( $category->description ) . "</wp:category_description>\n";
	}

	/**
	 * Return a tag_name XML tag from a given tag object.
	 *
	 * @param \WP_Term $tag Tag Object
	 *
	 * @return string
	 */
	private function wxr_tag_name( $tag ) {
		if ( empty( $tag->name ) ) {
			return '';
		}

		return $this->indent( 3 ) . '<wp:tag_name>' . $this->wxr_cdata( $tag->name ) . '</wp:tag_name>' . PHP_EOL;
	}

	/**
	 * Return a tag_description XML tag from a given tag object.
	 *
	 * @param \WP_Term $tag Tag Object
	 *
	 * @return string
	 */
	private function wxr_tag_description( $tag ) {
		if ( empty( $tag->description ) ) {
			return '';
		}

		return $this->indent( 3 ) . '<wp:tag_description>' . $this->wxr_cdata( $tag->description ) . '</wp:tag_description>' . PHP_EOL;
	}

	/**
	 * Return a term_name XML tag from a given term object.
	 *
	 * @param \WP_Term $term Term Object
	 *
	 * @return string
	 */
	private function wxr_term_name( $term ) {
		if ( empty( $term->name ) ) {
			return '';
		}

		return $this->indent( 3 ) . '<wp:term_name>' . $this->wxr_cdata( $term->name ) . '</wp:term_name>' . PHP_EOL;
	}

	/**
	 * Return a term_description XML tag from a given term object.
	 *
	 * @param \WP_Term $term Term Object
	 *
	 * @return string
	 */
	private function wxr_term_description( $term ) {
		if ( empty( $term->description ) ) {
			return '';
		}

		return $this->indent( 3 ) . '<wp:term_description>' . $this->wxr_cdata( $term->description ) . '</wp:term_description>' . PHP_EOL;
	}

	/**
	 * Return term meta XML tags for a given term object.
	 *
	 * @param \WP_Term $term Term object.
	 *
	 * @return string
	 */
	private function wxr_term_meta( $term ) {
		$result = '';
		$termmeta = $this->wpdb->get_results( $this->wpdb->prepare( "SELECT * FROM {$this->wpdb->termmeta} WHERE term_id = %d", $term->term_id ) );// phpcs:ignore

		foreach ( $termmeta as $meta ) {
			/**
			 * Filters whether to selectively skip term meta used for WXR exports.
			 *
			 * Returning a truthy value from the filter will skip the current meta
			 * object from being exported.
			 *
			 * @since 4.6.0
			 *
			 * @param bool   $skip     Whether to skip the current piece of term meta. Default false.
			 * @param string $meta_key Current meta key.
			 * @param object $meta     Current meta object.
			 */
			if ( ! apply_filters( 'wxr_export_skip_termmeta', false, $meta->meta_key, $meta ) ) {
				$result .= sprintf( $this->indent( 3 ) . "<wp:termmeta>\n\t\t\t<wp:meta_key>%s</wp:meta_key>\n\t\t\t<wp:meta_value>%s</wp:meta_value>\n\t\t</wp:termmeta>\n", wxr_cdata( $meta->meta_key ), wxr_cdata( $meta->meta_value ) );
			}
		}

		return $result;
	}

	/**
	 * Return list of authors with posts.
	 *
	 * @param int[] $post_ids Optional. Array of post IDs to filter the query by.
	 *
	 * @return string
	 */
	private function wxr_authors_list( array $post_ids = null ) {
		$result = '';

		if ( ! empty( $post_ids ) ) {
			$post_ids = array_map( 'absint', $post_ids );
			$and = 'AND ID IN ( ' . implode( ', ', $post_ids ) . ')';
		} else {
			$and = '';
		}

		$authors = [];
		$results = $this->wpdb->get_results( "SELECT DISTINCT post_author FROM {$this->wpdb->posts} WHERE post_status != 'auto-draft' $and" );// phpcs:ignore
		foreach ( (array) $results as $r ) {
			$authors[] = get_userdata( $r->post_author );
		}

		$authors = array_filter( $authors );

		foreach ( $authors as $author ) {
			$result .= $this->indent( 2 ) . '<wp:author>' . PHP_EOL;

			$result .= $this->indent( 3 ) . '<wp:author_id>' . (int) $author->ID . '</wp:author_id>' . PHP_EOL;
			$result .= $this->indent( 3 ) . '<wp:author_login>' . $this->wxr_cdata( $author->user_login ) . '</wp:author_login>' . PHP_EOL;
			$result .= $this->indent( 3 ) . '<wp:author_email>' . $this->wxr_cdata( $author->user_email ) . '</wp:author_email>' . PHP_EOL;
			$result .= $this->indent( 3 ) . '<wp:author_display_name>' . $this->wxr_cdata( $author->display_name ) . '</wp:author_display_name>' . PHP_EOL;
			$result .= $this->indent( 3 ) . '<wp:author_first_name>' . $this->wxr_cdata( $author->first_name ) . '</wp:author_first_name>' . PHP_EOL;
			$result .= $this->indent( 3 ) . '<wp:author_last_name>' . $this->wxr_cdata( $author->last_name ) . '</wp:author_last_name>' . PHP_EOL;

			$result .= $this->indent( 2 ) . '</wp:author>' . PHP_EOL;
		}

		return $result;
	}

	/**
	 * Return list of categories.
	 *
	 * @param array $cats
	 *
	 * @return string
	 */
	private function wxr_categories_list( array $cats ) {
		$result = '';

		foreach ( $cats as $c ) {
			$result .= $this->indent( 2 ) . '<wp:category>' . PHP_EOL;

			$result .= $this->indent( 3 ) . '<wp:term_id>' . (int) $c->term_id . '</wp:term_id>' . PHP_EOL;
			$result .= $this->indent( 3 ) . '<wp:category_nicename>' . $this->wxr_cdata( $c->slug ) . '</wp:category_nicename>' . PHP_EOL;
			$result .= $this->indent( 3 ) . '<wp:category_parent>' . $this->wxr_cdata( $c->parent ? $cats[ $c->parent ]->slug : '' ) . '</wp:category_parent>' . PHP_EOL;
			$result .= $this->wxr_cat_name( $c ) .
						$this->wxr_category_description( $c ) .
						$this->wxr_term_meta( $c );

			$result .= $this->indent( 2 ) . '</wp:category>' . PHP_EOL;
		}

		return $result;
	}

	/**
	 * Return list of tags.
	 *
	 * @param array $tags
	 *
	 * @return string
	 */
	private function wxr_tags_list( array $tags ) {
		$result = '';

		foreach ( $tags as $t ) {
			$result .= $this->indent( 2 ) . '<wp:tag>' . PHP_EOL;

			$result .= $this->indent( 3 ) . '<wp:term_id>' . (int) $t->term_id . '</wp:term_id>' . PHP_EOL;
			$result .= $this->indent( 3 ) . '<wp:tag_slug>' . $this->wxr_cdata( $t->slug ) . '</wp:tag_slug>' . PHP_EOL;
			$result .= $this->wxr_tag_name( $t ) .
						$this->wxr_tag_description( $t ) .
						$this->wxr_term_meta( $t );

			$result .= $this->indent( 2 ) . '</wp:tag>' . PHP_EOL;
		}

		return $result;
	}

	/**
	 * Return list of terms.
	 *
	 * @param array $terms
	 *
	 * @return string
	 */
	private function wxr_terms_list( array $terms ) {
		$result = '';

		foreach ( $terms as $t ) {
			$result .= $this->indent( 2 ) . '<wp:term>' . PHP_EOL;

			$result .= $this->indent( 3 ) . '<wp:term_taxonomy>' . $this->wxr_cdata( $t->taxonomy ) . '</wp:term_taxonomy>' . PHP_EOL;
			$result .= $this->indent( 3 ) . '<wp:term_slug>' . $this->wxr_cdata( $t->slug ) . '</wp:term_slug>' . PHP_EOL;
			$result .= $this->indent( 3 ) . '<wp:term_parent>' . $this->wxr_cdata( $t->parent ? $terms[ $t->parent ]->slug : '' ) . '</wp:term_parent>' . PHP_EOL;
			$result .= $this->wxr_term_name( $t ) .
						$this->wxr_term_description( $t ) .
						$this->wxr_term_meta( $t );

			$result .= $this->indent( 2 ) . '</wp:term>' . PHP_EOL;
		}

		return $result;
	}

	/**
	 * Return list of posts, by requested `$post_ids`.
	 *
	 * @param array $post_ids
	 *
	 * @return string
	 */
	private function wxr_posts_list( array $post_ids ) {
		$result = '';

		if ( $post_ids ) {
			global $wp_query;

			// Fake being in the loop.
			$wp_query->in_the_loop = true;

			// Fetch 20 posts at a time rather than loading the entire table into memory.
			while ( $next_posts = array_splice( $post_ids, 0, 20 ) ) {
				$where = 'WHERE ID IN (' . implode( ',', $next_posts ) . ')';
				$posts = $this->wpdb->get_results( "SELECT * FROM {$this->wpdb->posts} $where" );// phpcs:ignore

				// Begin Loop.
				foreach ( $posts as $post ) {
					setup_postdata( $post );

					$title = apply_filters( 'the_title_rss', $post->post_title );

					/**
					 * Filters the post content used for WXR exports.
					 *
					 * @since 2.5.0
					 *
					 * @param string $post_content Content of the current post.
					 */
					$content = $this->wxr_cdata( apply_filters( 'the_content_export', $post->post_content ) );

					/**
					 * Filters the post excerpt used for WXR exports.
					 *
					 * @since 2.6.0
					 *
					 * @param string $post_excerpt Excerpt for the current post.
					 */
					$excerpt = $this->wxr_cdata( apply_filters( 'the_excerpt_export', $post->post_excerpt ) );

					$result .= $this->indent( 2 ) . '<item>' . PHP_EOL;

					$result .= $this->indent( 3 ) . '<title>' . $title . '</title>' . PHP_EOL;
					$result .= $this->indent( 3 ) . '<link>' . esc_url( get_permalink() ) . '</link>' . PHP_EOL;
					$result .= $this->indent( 3 ) . '<pubDate>' . mysql2date( 'D, d M Y H:i:s +0000', get_post_time( 'Y-m-d H:i:s', true ), false ) . '</pubDate>' . PHP_EOL;
					$result .= $this->indent( 3 ) . '<dc:creator>' . $this->wxr_cdata( get_the_author_meta( 'login' ) ) . '</dc:creator>' . PHP_EOL;
					$result .= $this->indent( 3 ) . '<guid isPermaLink="false">' . $this->wxr_cdata( get_the_author_meta( 'login' ) ) . '</guid>' . PHP_EOL;
					$result .= $this->indent( 3 ) . '<description></description>' . PHP_EOL;
					$result .= $this->indent( 3 ) . '<content:encoded>' . $content . '</content:encoded>' . PHP_EOL;
					$result .= $this->indent( 3 ) . '<excerpt:encoded>' . $excerpt . '</excerpt:encoded>' . PHP_EOL;
					$result .= $this->indent( 3 ) . '<wp:post_id>' . (int) $post->ID . '</wp:post_id>' . PHP_EOL;
					$result .= $this->indent( 3 ) . '<wp:post_date>' . $this->wxr_cdata( $post->post_date ) . '</wp:post_date>' . PHP_EOL;
					$result .= $this->indent( 3 ) . '<wp:post_date_gmt>' . $this->wxr_cdata( $post->post_date_gmt ) . '</wp:post_date_gmt>' . PHP_EOL;
					$result .= $this->indent( 3 ) . '<wp:comment_status>' . $this->wxr_cdata( $post->comment_status ) . '</wp:comment_status>' . PHP_EOL;
					$result .= $this->indent( 3 ) . '<wp:ping_status>' . $this->wxr_cdata( $post->ping_status ) . '</wp:ping_status>' . PHP_EOL;
					$result .= $this->indent( 3 ) . '<wp:post_name>' . $this->wxr_cdata( $post->post_name ) . '</wp:post_name>' . PHP_EOL;
					$result .= $this->indent( 3 ) . '<wp:status>' . $this->wxr_cdata( $post->post_status ) . '</wp:status>' . PHP_EOL;
					$result .= $this->indent( 3 ) . '<wp:post_parent>' . $this->wxr_cdata( $post->post_parent ) . '</wp:post_parent>' . PHP_EOL;
					$result .= $this->indent( 3 ) . '<wp:menu_order>' . (int) $post->menu_order . '</wp:menu_order>' . PHP_EOL;
					$result .= $this->indent( 3 ) . '<wp:post_type>' . $this->wxr_cdata( $post->post_type ) . '</wp:post_type>' . PHP_EOL;
					$result .= $this->indent( 3 ) . '<wp:post_password>' . $this->wxr_cdata( $post->post_password ) . '</wp:post_password>' . PHP_EOL;
					$result .= $this->indent( 3 ) . '<wp:is_sticky>' . ( is_sticky( $post->ID ) ? 1 : 0 ) . '</wp:is_sticky>' . PHP_EOL;

					if ( 'attachment' === $post->post_type ) {
						$result .= $this->indent( 3 ) . '<wp:attachment_url>' . $this->wxr_cdata( wp_get_attachment_url( $post->ID ) ) . '</wp:attachment_url>' . PHP_EOL;
					}

					$result .= $this->wxr_post_taxonomy( $post );

					$postmeta = $this->wpdb->get_results( $this->wpdb->prepare( "SELECT * FROM {$this->wpdb->postmeta} WHERE post_id = %d", $post->ID ) );// phpcs:ignore
					foreach ( $postmeta as $meta ) {
						/**
						 * Filters whether to selectively skip post meta used for WXR exports.
						 *
						 * Returning a truthy value from the filter will skip the current meta
						 * object from being exported.
						 *
						 * @since 3.3.0
						 *
						 * @param bool   $skip     Whether to skip the current post meta. Default false.
						 * @param string $meta_key Current meta key.
						 * @param object $meta     Current meta object.
						 */
						if ( apply_filters( 'wxr_export_skip_postmeta', false, $meta->meta_key, $meta ) ) {
							continue;
						}

						$result .= $this->indent( 3 ) . '<wp:postmeta>' . PHP_EOL;

						$result .= $this->indent( 4 ) . '<wp:meta_key>' . $this->wxr_cdata( $meta->meta_key ) . '</wp:meta_key>' . PHP_EOL;
						$result .= $this->indent( 4 ) . '<wp:meta_value>' . $this->wxr_cdata( $meta->meta_value ) . '</wp:meta_value>' . PHP_EOL;

						$result .= $this->indent( 3 ) . '</wp:postmeta>' . PHP_EOL;
					}

					$_comments = $this->wpdb->get_results( $this->wpdb->prepare( "SELECT * FROM {$this->wpdb->comments} WHERE comment_post_ID = %d AND comment_approved <> 'spam'", $post->ID ) );// phpcs:ignore
					$comments  = array_map( 'get_comment', $_comments );
					foreach ( $comments as $c ) {

						$result .= $this->indent( 3 ) . '<wp:comment>' . PHP_EOL;

						$result .= $this->indent( 4 ) . '<wp:comment_id>' . (int) $c->comment_ID . '</wp:comment_id>' . PHP_EOL;
						$result .= $this->indent( 4 ) . '<wp:comment_author>' . $this->wxr_cdata( $c->comment_author ) . '</wp:comment_author>' . PHP_EOL;
						$result .= $this->indent( 4 ) . '<wp:comment_author_email>' . $this->wxr_cdata( $c->comment_author_email ) . '</wp:comment_author_email>' . PHP_EOL;
						$result .= $this->indent( 4 ) . '<wp:comment_author_url>' . $this->wxr_cdata( $c->comment_author_url ) . '</wp:comment_author_url>' . PHP_EOL;
						$result .= $this->indent( 4 ) . '<wp:comment_author_IP>' . $this->wxr_cdata( $c->comment_author_IP ) . '</wp:comment_author_IP>' . PHP_EOL;
						$result .= $this->indent( 4 ) . '<wp:comment_date>' . $this->wxr_cdata( $c->comment_date ) . '</wp:comment_date>' . PHP_EOL;
						$result .= $this->indent( 4 ) . '<wp:comment_date_gmt>' . $this->wxr_cdata( $c->comment_date_gmt ) . '</wp:comment_date_gmt>' . PHP_EOL;
						$result .= $this->indent( 4 ) . '<wp:comment_content>' . $this->wxr_cdata( $c->comment_content ) . '</wp:comment_content>' . PHP_EOL;
						$result .= $this->indent( 4 ) . '<wp:comment_approved>' . $this->wxr_cdata( $c->comment_approved ) . '</wp:comment_approved>' . PHP_EOL;
						$result .= $this->indent( 4 ) . '<wp:comment_type>' . $this->wxr_cdata( $c->comment_type ) . '</wp:comment_type>' . PHP_EOL;
						$result .= $this->indent( 4 ) . '<wp:comment_parent>' . $this->wxr_cdata( $c->comment_parent ) . '</wp:comment_parent>' . PHP_EOL;
						$result .= $this->indent( 4 ) . '<wp:comment_user_id>' . (int) $c->user_id . '</wp:comment_user_id>' . PHP_EOL;

						$c_meta = $this->wpdb->get_results( $this->wpdb->prepare( "SELECT * FROM {$this->wpdb->commentmeta} WHERE comment_id = %d", $c->comment_ID ) );// phpcs:ignore
						foreach ( $c_meta as $meta ) {
							/**
							 * Filters whether to selectively skip comment meta used for WXR exports.
							 *
							 * Returning a truthy value from the filter will skip the current meta
							 * object from being exported.
							 *
							 * @since 4.0.0
							 *
							 * @param bool   $skip     Whether to skip the current comment meta. Default false.
							 * @param string $meta_key Current meta key.
							 * @param object $meta     Current meta object.
							 */
							if ( apply_filters( 'wxr_export_skip_commentmeta', false, $meta->meta_key, $meta ) ) {
								continue;
							}

							$result .= $this->indent( 4 ) . '<wp:commentmeta>' . PHP_EOL;

							$result .= $this->indent( 5 ) . '<wp:meta_key>' . $this->wxr_cdata( $meta->meta_key ) . '</wp:meta_key>' . PHP_EOL;
							$result .= $this->indent( 5 ) . '<wp:meta_value>' . $this->wxr_cdata( $meta->meta_key ) . '</wp:meta_value>' . PHP_EOL;

							$result .= $this->indent( 4 ) . '</wp:commentmeta>' . PHP_EOL;
						}

						$result .= $this->indent( 3 ) . '</wp:comment>' . PHP_EOL;
					}

					$result .= $this->indent( 2 ) . '</item>' . PHP_EOL;
				}
			}
		}

		return $result;
	}

	/**
	 * Return all navigation menu terms
	 *
	 * @return string
	 */
	private function wxr_nav_menu_terms() {
		$nav_menus = wp_get_nav_menus();
		if ( empty( $nav_menus ) || ! is_array( $nav_menus ) ) {
			return '';
		}

		$result = '';

		foreach ( $nav_menus as $menu ) {
			$result .= $this->indent( 2 ) . '<wp:term>' . PHP_EOL;

			$result .= $this->indent( 3 ) . '<wp:term_id>' . (int) $menu->term_id . '</wp:term_id>' . PHP_EOL;
			$result .= $this->indent( 3 ) . '<wp:term_taxonomy>nav_menu</wp:term_taxonomy>' . PHP_EOL;
			$result .= $this->indent( 3 ) . '<wp:term_slug>' . $this->wxr_cdata( $menu->slug ) . '</wp:term_slug>' . PHP_EOL;
			$result .= wxr_term_name( $menu );

			$result .= $this->indent( 2 ) . '</wp:term>' . PHP_EOL;
		}

		return $result;
	}

	/**
	 * Return list of taxonomy terms, in XML tag format, associated with a post
	 *
	 * @param \WP_Post $post
	 *
	 * @return string
	 */
	private function wxr_post_taxonomy( $post ) {
		$result = '';

		$taxonomies = get_object_taxonomies( $post->post_type );

		if ( empty( $taxonomies ) ) {
			return $result;
		}

		$terms = wp_get_object_terms( $post->ID, $taxonomies );

		foreach ( (array) $terms as $term ) {
			$result .= $this->indent( 3 ) . "<category domain=\"{$term->taxonomy}\" nicename=\"{$term->slug}\">" . $this->wxr_cdata( $term->name ) . '</category>' . PHP_EOL;
		}

		return $result;
	}

	/**
	 * Get's the XML export.
	 *
	 * @param $post_ids
	 * @param $cats
	 * @param $tags
	 * @param $terms
	 *
	 * @return string
	 */
	private function get_xml_export( array $post_ids, array $cats, array $tags, array $terms ) {
		$charset = get_bloginfo( 'charset' );
		$generator = get_the_generator( 'export' );
		$wxr_version = self::WXR_VERSION;
		$wxr_site_url = $this->wxr_site_url();
		$rss_info_name = get_bloginfo_rss( 'name' );
		$rss_info_url = get_bloginfo_rss( 'url' );
		$rss_info_description = get_bloginfo_rss( 'description' );
		$rss_info_language = get_bloginfo_rss( 'language' );
		$pub_date = gmdate( 'D, d M Y H:i:s +0000' );

		$show_page_on_front = 'page' === get_option( 'show_on_front' );

		$page_on_front_xml = '';

		if ( $show_page_on_front ) {
			$page_on_front_id = (int) get_option( 'page_on_front' );

			if ( in_array( $page_on_front_id, $post_ids ) ) {
				$page_on_front_xml = "<wp:page_on_front>$page_on_front_id</wp:page_on_front>";
			}
		}

		$dynamic = $this->wxr_authors_list( $post_ids ) .
					$this->wxr_categories_list( $cats ) .
					$this->wxr_tags_list( $tags ) .
					$this->wxr_terms_list( $terms );

		ob_start();
		/** This action is documented in wp-includes/feed-rss2.php */
		do_action( 'rss2_head' );
		$rss2_head = ob_get_clean();

		$dynamic .= $rss2_head;

		if ( 'all' === $this->args['content'] ) {
			$dynamic .= $this->wxr_nav_menu_terms();
		}

		$dynamic .= $this->wxr_posts_list( $post_ids );

		$result = <<<EOT
<?xml version="1.0" encoding="$charset" ?>
<!-- This is a WordPress eXtended RSS file generated by WordPress as an export of your site. -->
<!-- It contains information about your site's posts, pages, comments, categories, and other content. -->
<!-- You may use this file to transfer that content from one site to another. -->
<!-- This file is not intended to serve as a complete backup of your site. -->

<!-- To import this information into a WordPress site follow these steps: -->
<!-- 1. Log in to that site as an administrator. -->
<!-- 2. Go to Tools: Import in the WordPress admin panel. -->
<!-- 3. Install the "WordPress" importer from the list. -->
<!-- 4. Activate & Run Importer. -->
<!-- 5. Upload this file using the form provided on that page. -->
<!-- 6. You will first be asked to map the authors in this export file to users -->
<!--    on the site. For each author, you may choose to map to an -->
<!--    existing user on the site or to create a new user. -->
<!-- 7. WordPress will then import each of the posts, pages, comments, categories, etc. -->
<!--    contained in this file into your site. -->
$generator
<rss version="2.0"
	xmlns:excerpt="http://wordpress.org/export/$wxr_version/excerpt/"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:wp="http://wordpress.org/export/$wxr_version/"
>
	<channel>
		<title>$rss_info_name</title>
		<link>$rss_info_url</link>
		<description>$rss_info_description</description>
		<pubDate>$pub_date</pubDate>
		<language>$rss_info_language</language>
		<wp:wxr_version>$wxr_version</wp:wxr_version>
		<wp:base_site_url>$wxr_site_url</wp:base_site_url>
		<wp:base_blog_url>$rss_info_url</wp:base_blog_url>
		$page_on_front_xml
$dynamic
	</channel>
</rss>
EOT;
		return $result;
	}

	public function __construct( array $args = [] ) {
		global $wpdb;

		$this->args = wp_parse_args( $args, self::$default_args );

		$this->wpdb = $wpdb;
	}
}
core/utils/import-export/wp-import.php000064400000125610151327220420014137 0ustar00<?php
namespace Elementor\Core\Utils\ImportExport;

use Elementor\Core\Utils\ImportExport\Parsers\WXR_Parser;
use WP_Error;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Originally made by WordPress part of WordPress/Importer.
 * https://plugins.trac.wordpress.org/browser/wordpress-importer/trunk/class-wp-import.php
 *
 * What was done:
 * Reformat of the code.
 * Changed text domain.
 * Changed methods visibility.
 * Changed method from `get_authors_from_import` to `set_authors_from_import`.
 * Changed method from `get_author_mapping` to `set_author_mapping`.
 * Removed use of '$_POST' the input 'options' will be passed via constructor args.
 * Removed echos, UI and print methods, all echos replaced with `$this->output` append.
 * Removed `die` ( exit(s) ).
 */

if ( ! class_exists( 'WP_Importer' ) ) {
	$class_wp_importer = ABSPATH . 'wp-admin/includes/class-wp-importer.php';

	if ( file_exists( $class_wp_importer ) ) {
		require $class_wp_importer;
	}
}

class WP_Import extends \WP_Importer {
	const DEFAULT_BUMP_REQUEST_TIMEOUT = 60;
	const DEFAULT_ALLOW_CREATE_USERS = true;
	const DEFAULT_IMPORT_ATTACHMENT_SIZE_LIMIT = 0; // 0 = unlimited.

	/**
	 * @var string
	 */
	private $requested_file_path;

	/**
	 * @var array
	 */
	private $args;

	/**
	 * @var array
	 */
	private $output = [
		'status' => 'failed',
		'errors' => [],
	];

	/*
	 * WXR attachment ID
	 */
	private $id;

	// Information to import from WXR file.
	private $version;
	private $authors = [];
	private $posts = [];
	private $terms = [];
	private $categories = [];
	private $tags = [];
	private $base_url = '';
	private $page_on_front;

	// Mappings from old information to new.
	private $processed_authors = [];
	private $author_mapping = [];
	private $processed_terms = [];
	private $processed_posts = [];
	private $post_orphans = [];
	private $processed_menu_items = [];
	private $menu_item_orphans = [];
	private $missing_menu_items = [];

	private $fetch_attachments = false;
	private $url_remap = [];
	private $featured_images = [];

	/**
	 * Parses filename from a Content-Disposition header value.
	 *
	 * As per RFC6266:
	 *
	 *     content-disposition = "Content-Disposition" ":"
	 *                            disposition-type *( ";" disposition-parm )
	 *
	 *     disposition-type    = "inline" | "attachment" | disp-ext-type
	 *                         ; case-insensitive
	 *     disp-ext-type       = token
	 *
	 *     disposition-parm    = filename-parm | disp-ext-parm
	 *
	 *     filename-parm       = "filename" "=" value
	 *                         | "filename*" "=" ext-value
	 *
	 *     disp-ext-parm       = token "=" value
	 *                         | ext-token "=" ext-value
	 *     ext-token           = <the characters in token, followed by "*">
	 *
	 * @param string[] $disposition_header List of Content-Disposition header values.
	 *
	 * @return string|null Filename if available, or null if not found.
	 * @link  http://tools.ietf.org/html/rfc2388
	 * @link  http://tools.ietf.org/html/rfc6266
	 *
	 * @see WP_REST_Attachments_Controller::get_filename_from_disposition()
	 *
	 */
	protected static function get_filename_from_disposition( $disposition_header ) {
		// Get the filename.
		$filename = null;

		foreach ( $disposition_header as $value ) {
			$value = trim( $value );

			if ( strpos( $value, ';' ) === false ) {
				continue;
			}

			list( $type, $attr_parts ) = explode( ';', $value, 2 );

			$attr_parts = explode( ';', $attr_parts );
			$attributes = [];

			foreach ( $attr_parts as $part ) {
				if ( strpos( $part, '=' ) === false ) {
					continue;
				}

				list( $key, $value ) = explode( '=', $part, 2 );

				$attributes[ trim( $key ) ] = trim( $value );
			}

			if ( empty( $attributes['filename'] ) ) {
				continue;
			}

			$filename = trim( $attributes['filename'] );

			// Unquote quoted filename, but after trimming.
			if ( substr( $filename, 0, 1 ) === '"' && substr( $filename, -1, 1 ) === '"' ) {
				$filename = substr( $filename, 1, -1 );
			}
		}

		return $filename;
	}

	/**
	 * Retrieves file extension by mime type.
	 *
	 * @param string $mime_type Mime type to search extension for.
	 *
	 * @return string|null File extension if available, or null if not found.
	 */
	protected static function get_file_extension_by_mime_type( $mime_type ) {
		static $map = null;

		if ( is_array( $map ) ) {
			return isset( $map[ $mime_type ] ) ? $map[ $mime_type ] : null;
		}

		$mime_types = wp_get_mime_types();
		$map = array_flip( $mime_types );

		// Some types have multiple extensions, use only the first one.
		foreach ( $map as $type => $extensions ) {
			$map[ $type ] = strtok( $extensions, '|' );
		}

		return isset( $map[ $mime_type ] ) ? $map[ $mime_type ] : null;
	}

	/**
	 * The main controller for the actual import stage.
	 *
	 * @param string $file Path to the WXR file for importing
	 */
	private function import( $file ) {
		add_filter( 'import_post_meta_key', function ( $key ) {
			return $this->is_valid_meta_key( $key );
		} );
		add_filter( 'http_request_timeout', function () {
			return self::DEFAULT_BUMP_REQUEST_TIMEOUT;
		} );

		if ( ! $this->import_start( $file ) ) {
			return;
		}

		$this->set_author_mapping();

		wp_suspend_cache_invalidation( true );
		$imported_summary = [
			'categories' => $this->process_categories(),
			'tags' => $this->process_tags(),
			'terms' => $this->process_terms(),
			'posts' => $this->process_posts(),
		];
		wp_suspend_cache_invalidation( false );

		// Update incorrect/missing information in the DB.
		$this->backfill_parents();
		$this->backfill_attachment_urls();
		$this->remap_featured_images();

		$this->import_end();

		$is_some_succeed = false;
		foreach ( $imported_summary as $item ) {
			if ( $item > 0 ) {
				$is_some_succeed = true;
				break;
			}
		}

		if ( $is_some_succeed ) {
			$this->output['status'] = 'success';
			$this->output['summary'] = $imported_summary;
		}
	}

	/**
	 * Parses the WXR file and prepares us for the task of processing parsed data.
	 *
	 * @param string $file Path to the WXR file for importing
	 */
	private function import_start( $file ) {
		if ( ! is_file( $file ) ) {
			$this->output['errors'] = [ esc_html__( 'The file does not exist, please try again.', 'elementor' ) ];

			return false;
		}

		$import_data = $this->parse( $file );

		if ( is_wp_error( $import_data ) ) {
			$this->output['errors'] = [ $import_data->get_error_message() ];

			return false;
		}

		$this->version = $import_data['version'];
		$this->set_authors_from_import( $import_data );
		$this->posts = $import_data['posts'];
		$this->terms = $import_data['terms'];
		$this->categories = $import_data['categories'];
		$this->tags = $import_data['tags'];
		$this->base_url = esc_url( $import_data['base_url'] );
		$this->page_on_front = $import_data['page_on_front'];

		wp_defer_term_counting( true );
		wp_defer_comment_counting( true );

		do_action( 'import_start' );

		return true;
	}

	/**
	 * Performs post-import cleanup of files and the cache
	 */
	private function import_end() {
		wp_import_cleanup( $this->id );

		wp_cache_flush();

		foreach ( get_taxonomies() as $tax ) {
			delete_option( "{$tax}_children" );
			_get_term_hierarchy( $tax );
		}

		wp_defer_term_counting( false );
		wp_defer_comment_counting( false );

		do_action( 'import_end' );
	}

	/**
	 * Retrieve authors from parsed WXR data and set it to `$this->>authors`.
	 *
	 * Uses the provided author information from WXR 1.1 files
	 * or extracts info from each post for WXR 1.0 files
	 *
	 * @param array $import_data Data returned by a WXR parser
	 */
	private function set_authors_from_import( $import_data ) {
		if ( ! empty( $import_data['authors'] ) ) {
			$this->authors = $import_data['authors'];
			// No author information, grab it from the posts.
		} else {
			foreach ( $import_data['posts'] as $post ) {
				$login = sanitize_user( $post['post_author'], true );

				if ( empty( $login ) ) {
					/* translators: %s: Post author. */
					$this->output['errors'][] = sprintf( esc_html__( 'Failed to import author %s. Their posts will be attributed to the current user.', 'elementor' ), $post['post_author'] );
					continue;
				}

				if ( ! isset( $this->authors[ $login ] ) ) {
					$this->authors[ $login ] = [
						'author_login' => $login,
						'author_display_name' => $post['post_author'],
					];
				}
			}
		}
	}

	/**
	 * Map old author logins to local user IDs based on decisions made
	 * in import options form. Can map to an existing user, create a new user
	 * or falls back to the current user in case of error with either of the previous
	 */
	private function set_author_mapping() {
		if ( ! isset( $this->args['imported_authors'] ) ) {
			return;
		}

		$create_users = apply_filters( 'import_allow_create_users', self::DEFAULT_ALLOW_CREATE_USERS );

		foreach ( (array) $this->args['imported_authors'] as $i => $old_login ) {
			// Multisite adds strtolower to sanitize_user. Need to sanitize here to stop breakage in process_posts.
			$santized_old_login = sanitize_user( $old_login, true );
			$old_id = isset( $this->authors[ $old_login ]['author_id'] ) ? intval( $this->authors[ $old_login ]['author_id'] ) : false;

			if ( ! empty( $this->args['user_map'][ $i ] ) ) {
				$user = get_userdata( intval( $this->args['user_map'][ $i ] ) );
				if ( isset( $user->ID ) ) {
					if ( $old_id ) {
						$this->processed_authors[ $old_id ] = $user->ID;
					}
					$this->author_mapping[ $santized_old_login ] = $user->ID;
				}
			} elseif ( $create_users ) {
				$user_id = 0;
				if ( ! empty( $this->args['user_new'][ $i ] ) ) {
					$user_id = wp_create_user( $this->args['user_new'][ $i ], wp_generate_password() );
				} elseif ( '1.0' !== $this->version ) {
					$user_data = [
						'user_login' => $old_login,
						'user_pass' => wp_generate_password(),
						'user_email' => isset( $this->authors[ $old_login ]['author_email'] ) ? $this->authors[ $old_login ]['author_email'] : '',
						'display_name' => $this->authors[ $old_login ]['author_display_name'],
						'first_name' => isset( $this->authors[ $old_login ]['author_first_name'] ) ? $this->authors[ $old_login ]['author_first_name'] : '',
						'last_name' => isset( $this->authors[ $old_login ]['author_last_name'] ) ? $this->authors[ $old_login ]['author_last_name'] : '',
					];
					$user_id = wp_insert_user( $user_data );
				}

				if ( ! is_wp_error( $user_id ) ) {
					if ( $old_id ) {
						$this->processed_authors[ $old_id ] = $user_id;
					}
					$this->author_mapping[ $santized_old_login ] = $user_id;
				} else {
					/* translators: %s: Author display name. */
					$error = sprintf( esc_html__( 'Failed to create new user for %s. Their posts will be attributed to the current user.', 'elementor' ), $this->authors[ $old_login ]['author_display_name'] );

					if ( defined( 'IMPORT_DEBUG' ) && IMPORT_DEBUG ) {
						$error .= PHP_EOL . $user_id->get_error_message();
					}

					$this->output['errors'][] = $error;
				}
			}

			// Failsafe: if the user_id was invalid, default to the current user.
			if ( ! isset( $this->author_mapping[ $santized_old_login ] ) ) {
				if ( $old_id ) {
					$this->processed_authors[ $old_id ] = (int) get_current_user_id();
				}
				$this->author_mapping[ $santized_old_login ] = (int) get_current_user_id();
			}
		}
	}

	/**
	 * Create new categories based on import information
	 *
	 * Doesn't create a new category if its slug already exists
	 *
	 * @return int number of imported categories.
	 */
	private function process_categories() {
		$result = 0;

		$this->categories = apply_filters( 'wp_import_categories', $this->categories );

		if ( empty( $this->categories ) ) {
			return $result;
		}

		foreach ( $this->categories as $cat ) {
			// if the category already exists leave it alone
			$term_id = term_exists( $cat['category_nicename'], 'category' );
			if ( $term_id ) {
				if ( is_array( $term_id ) ) {
					$term_id = $term_id['term_id'];
				}
				if ( isset( $cat['term_id'] ) ) {
					$this->processed_terms[ intval( $cat['term_id'] ) ] = (int) $term_id;
				}
				continue;
			}

			$parent = empty( $cat['category_parent'] ) ? 0 : category_exists( $cat['category_parent'] );
			$description = isset( $cat['category_description'] ) ? $cat['category_description'] : '';

			$data = [
				'category_nicename' => $cat['category_nicename'],
				'category_parent' => $parent,
				'cat_name' => wp_slash( $cat['cat_name'] ),
				'category_description' => wp_slash( $description ),
			];

			$id = wp_insert_category( $data );
			if ( ! is_wp_error( $id ) && $id > 0 ) {
				if ( isset( $cat['term_id'] ) ) {
					$this->processed_terms[ intval( $cat['term_id'] ) ] = $id;
				}
				$result++;
			} else {
				/* translators: %s: Category name. */
				$error = sprintf( esc_html__( 'Failed to import category %s', 'elementor' ), $cat['category_nicename'] );

				if ( defined( 'IMPORT_DEBUG' ) && IMPORT_DEBUG ) {
					$error .= PHP_EOL . $id->get_error_message();
				}

				$this->output['errors'][] = $error;
				continue;
			}

			$this->process_termmeta( $cat, $id );
		}

		unset( $this->categories );

		return $result;
	}

	/**
	 * Create new post tags based on import information
	 *
	 * Doesn't create a tag if its slug already exists
	 *
	 * @return int number of imported tags.
	 */
	private function process_tags() {
		$result = 0;

		$this->tags = apply_filters( 'wp_import_tags', $this->tags );

		if ( empty( $this->tags ) ) {
			return $result;
		}

		foreach ( $this->tags as $tag ) {
			// if the tag already exists leave it alone
			$term_id = term_exists( $tag['tag_slug'], 'post_tag' );
			if ( $term_id ) {
				if ( is_array( $term_id ) ) {
					$term_id = $term_id['term_id'];
				}
				if ( isset( $tag['term_id'] ) ) {
					$this->processed_terms[ intval( $tag['term_id'] ) ] = (int) $term_id;
				}
				continue;
			}

			$description = isset( $tag['tag_description'] ) ? $tag['tag_description'] : '';
			$args = [
				'slug' => $tag['tag_slug'],
				'description' => wp_slash( $description ),
			];

			$id = wp_insert_term( wp_slash( $tag['tag_name'] ), 'post_tag', $args );
			if ( ! is_wp_error( $id ) ) {
				if ( isset( $tag['term_id'] ) ) {
					$this->processed_terms[ intval( $tag['term_id'] ) ] = $id['term_id'];
				}
				$result++;
			} else {
				/* translators: %s: Tag name. */
				$error = sprintf( esc_html__( 'Failed to import post tag %s', 'elementor' ), $tag['tag_name'] );

				if ( defined( 'IMPORT_DEBUG' ) && IMPORT_DEBUG ) {
					$error .= PHP_EOL . $id->get_error_message();
				}

				$this->output['errors'][] = $error;
				continue;
			}

			$this->process_termmeta( $tag, $id['term_id'] );
		}

		unset( $this->tags );

		return $result;
	}

	/**
	 * Create new terms based on import information
	 *
	 * Doesn't create a term its slug already exists
	 *
	 * @return int number of imported terms.
	 */
	private function process_terms() {
		$result = 0;

		$this->terms = apply_filters( 'wp_import_terms', $this->terms );

		if ( empty( $this->terms ) ) {
			return $result;
		}

		foreach ( $this->terms as $term ) {
			// if the term already exists in the correct taxonomy leave it alone
			$term_id = term_exists( $term['slug'], $term['term_taxonomy'] );
			if ( $term_id ) {
				if ( is_array( $term_id ) ) {
					$term_id = $term_id['term_id'];
				}
				if ( isset( $term['term_id'] ) ) {
					$this->processed_terms[ intval( $term['term_id'] ) ] = (int) $term_id;
				}
				continue;
			}

			if ( empty( $term['term_parent'] ) ) {
				$parent = 0;
			} else {
				$parent = term_exists( $term['term_parent'], $term['term_taxonomy'] );
				if ( is_array( $parent ) ) {
					$parent = $parent['term_id'];
				}
			}

			$description = isset( $term['term_description'] ) ? $term['term_description'] : '';
			$args = [
				'slug' => $term['slug'],
				'description' => wp_slash( $description ),
				'parent' => (int) $parent,
			];

			$id = wp_insert_term( wp_slash( $term['term_name'] ), $term['term_taxonomy'], $args );
			if ( ! is_wp_error( $id ) ) {
				if ( isset( $term['term_id'] ) ) {
					$this->processed_terms[ intval( $term['term_id'] ) ] = $id['term_id'];
				}
				$result++;
			} else {
				/* translators: 1: Term taxonomy, 2: Term name. */
				$error = sprintf( esc_html__( 'Failed to import %1$s %2$s', 'elementor' ), $term['term_taxonomy'], $term['term_name'] );

				if ( defined( 'IMPORT_DEBUG' ) && IMPORT_DEBUG ) {
					$error .= PHP_EOL . $id->get_error_message();
				}

				$this->output['errors'][] = $error;
				continue;
			}

			$this->process_termmeta( $term, $id['term_id'] );
		}

		unset( $this->terms );

		return $result;
	}

	/**
	 * Add metadata to imported term.
	 *
	 * @param array $term    Term data from WXR import.
	 * @param int   $term_id ID of the newly created term.
	 */
	private function process_termmeta( $term, $term_id ) {
		if ( ! function_exists( 'add_term_meta' ) ) {
			return;
		}

		if ( ! isset( $term['termmeta'] ) ) {
			$term['termmeta'] = [];
		}

		/**
		 * Filters the metadata attached to an imported term.
		 *
		 * @param array $termmeta Array of term meta.
		 * @param int   $term_id  ID of the newly created term.
		 * @param array $term     Term data from the WXR import.
		 */
		$term['termmeta'] = apply_filters( 'wp_import_term_meta', $term['termmeta'], $term_id, $term );

		if ( empty( $term['termmeta'] ) ) {
			return;
		}

		foreach ( $term['termmeta'] as $meta ) {
			/**
			 * Filters the meta key for an imported piece of term meta.
			 *
			 * @param string $meta_key Meta key.
			 * @param int    $term_id  ID of the newly created term.
			 * @param array  $term     Term data from the WXR import.
			 */
			$key = apply_filters( 'import_term_meta_key', $meta['key'], $term_id, $term );
			if ( ! $key ) {
				continue;
			}

			// Export gets meta straight from the DB so could have a serialized string
			$value = maybe_unserialize( $meta['value'] );

			add_term_meta( $term_id, wp_slash( $key ), wp_slash_strings_only( $value ) );

			/**
			 * Fires after term meta is imported.
			 *
			 * @param int    $term_id ID of the newly created term.
			 * @param string $key     Meta key.
			 * @param mixed  $value   Meta value.
			 */
			do_action( 'import_term_meta', $term_id, $key, $value );
		}
	}

	/**
	 * Create new posts based on import information
	 *
	 * Posts marked as having a parent which doesn't exist will become top level items.
	 * Doesn't create a new post if: the post type doesn't exist, the given post ID
	 * is already noted as imported or a post with the same title and date already exists.
	 * Note that new/updated terms, comments and meta are imported for the last of the above.
	 *
	 * @return array the ids of succeed/failed imported posts.
	 */
	private function process_posts() {
		$result = [
			'succeed' => [],
			'failed' => [],
		];

		$this->posts = apply_filters( 'wp_import_posts', $this->posts );

		foreach ( $this->posts as $post ) {
			$post = apply_filters( 'wp_import_post_data_raw', $post );

			if ( ! post_type_exists( $post['post_type'] ) ) {
				/* translators: 1: Post title, 2: Post type. */
				$this->output['errors'][] = sprintf( esc_html__( 'Failed to import %1$s: Invalid post type %2$s', 'elementor' ), $post['post_title'], $post['post_type'] );
				do_action( 'wp_import_post_exists', $post );
				continue;
			}

			if ( isset( $this->processed_posts[ $post['post_id'] ] ) && ! empty( $post['post_id'] ) ) {
				continue;
			}

			if ( 'auto-draft' === $post['status'] ) {
				continue;
			}

			if ( 'nav_menu_item' === $post['post_type'] ) {
				$this->process_menu_item( $post );
				continue;
			}

			$post_type_object = get_post_type_object( $post['post_type'] );

			$post_parent = (int) $post['post_parent'];
			if ( $post_parent ) {
				// if we already know the parent, map it to the new local ID.
				if ( isset( $this->processed_posts[ $post_parent ] ) ) {
					$post_parent = $this->processed_posts[ $post_parent ];
					// otherwise record the parent for later.
				} else {
					$this->post_orphans[ intval( $post['post_id'] ) ] = $post_parent;
					$post_parent = 0;
				}
			}

			// Map the post author.
			$author = sanitize_user( $post['post_author'], true );
			if ( isset( $this->author_mapping[ $author ] ) ) {
				$author = $this->author_mapping[ $author ];
			} else {
				$author = (int) get_current_user_id();
			}

			$postdata = [
				'import_id' => $post['post_id'],
				'post_author' => $author,
				'post_content' => $post['post_content'],
				'post_excerpt' => $post['post_excerpt'],
				'post_title' => $post['post_title'],
				'post_status' => $post['status'],
				'post_name' => $post['post_name'],
				'comment_status' => $post['comment_status'],
				'ping_status' => $post['ping_status'],
				'guid' => $post['guid'],
				'post_parent' => $post_parent,
				'menu_order' => $post['menu_order'],
				'post_type' => $post['post_type'],
				'post_password' => $post['post_password'],
			];

			$original_post_id = $post['post_id'];
			$postdata = apply_filters( 'wp_import_post_data_processed', $postdata, $post );

			$postdata = wp_slash( $postdata );

			if ( 'attachment' === $postdata['post_type'] ) {
				$remote_url = ! empty( $post['attachment_url'] ) ? $post['attachment_url'] : $post['guid'];

				// try to use _wp_attached file for upload folder placement to ensure the same location as the export site
				// e.g. location is 2003/05/image.jpg but the attachment post_date is 2010/09, see media_handle_upload()
				$postdata['upload_date'] = $post['post_date'];
				if ( isset( $post['postmeta'] ) ) {
					foreach ( $post['postmeta'] as $meta ) {
						if ( '_wp_attached_file' === $meta['key'] ) {
							if ( preg_match( '%^[0-9]{4}/[0-9]{2}%', $meta['value'], $matches ) ) {
								$postdata['upload_date'] = $matches[0];
							}
							break;
						}
					}
				}

				$post_id = $this->process_attachment( $postdata, $remote_url );
				$comment_post_id = $post_id;
			} else {
				$post_id = wp_insert_post( $postdata, true );
				$comment_post_id = $post_id;
				do_action( 'wp_import_insert_post', $post_id, $original_post_id, $postdata, $post );
			}

			if ( is_wp_error( $post_id ) ) {
				/* translators: 1: Post type singular label, 2: Post title. */
				$error = sprintf( __( 'Failed to import %1$s %2$s', 'elementor' ), $post_type_object->labels->singular_name, $post['post_title'] );

				if ( defined( 'IMPORT_DEBUG' ) && IMPORT_DEBUG ) {
					$error .= PHP_EOL . $post_id->get_error_message();
				}

				$result['failed'][] = $original_post_id;

				$this->output['errors'][] = $error;

				continue;
			}

			$result['succeed'][ $original_post_id ] = $post_id;

			if ( 1 === $post['is_sticky'] ) {
				stick_post( $post_id );
			}

			if ( $this->page_on_front === $original_post_id ) {
				update_option( 'page_on_front', $post_id );
			}

			// Map pre-import ID to local ID.
			$this->processed_posts[ intval( $post['post_id'] ) ] = (int) $post_id;

			if ( ! isset( $post['terms'] ) ) {
				$post['terms'] = [];
			}

			$post['terms'] = apply_filters( 'wp_import_post_terms', $post['terms'], $post_id, $post );

			// add categories, tags and other terms
			if ( ! empty( $post['terms'] ) ) {
				$terms_to_set = [];
				foreach ( $post['terms'] as $term ) {
					// back compat with WXR 1.0 map 'tag' to 'post_tag'
					$taxonomy = ( 'tag' === $term['domain'] ) ? 'post_tag' : $term['domain'];
					$term_exists = term_exists( $term['slug'], $taxonomy );
					$term_id = is_array( $term_exists ) ? $term_exists['term_id'] : $term_exists;
					if ( ! $term_id ) {
						$t = wp_insert_term( $term['name'], $taxonomy, [ 'slug' => $term['slug'] ] );
						if ( ! is_wp_error( $t ) ) {
							$term_id = $t['term_id'];
							do_action( 'wp_import_insert_term', $t, $term, $post_id, $post );
						} else {
							/* translators: 1: Taxonomy name, 2: Term name. */
							$error = sprintf( esc_html__( 'Failed to import %1$s %2$s', 'elementor' ), $taxonomy, $term['name'] );

							if ( defined( 'IMPORT_DEBUG' ) && IMPORT_DEBUG ) {
								$error .= PHP_EOL . $t->get_error_message();
							}

							$this->output['errors'][] = $error;

							do_action( 'wp_import_insert_term_failed', $t, $term, $post_id, $post );
							continue;
						}
					}
					$terms_to_set[ $taxonomy ][] = intval( $term_id );
				}

				foreach ( $terms_to_set as $tax => $ids ) {
					$tt_ids = wp_set_post_terms( $post_id, $ids, $tax );
					do_action( 'wp_import_set_post_terms', $tt_ids, $ids, $tax, $post_id, $post );
				}
				unset( $post['terms'], $terms_to_set );
			}

			if ( ! isset( $post['comments'] ) ) {
				$post['comments'] = [];
			}

			$post['comments'] = apply_filters( 'wp_import_post_comments', $post['comments'], $post_id, $post );

			// Add/update comments.
			if ( ! empty( $post['comments'] ) ) {
				$num_comments = 0;
				$inserted_comments = [];
				foreach ( $post['comments'] as $comment ) {
					$comment_id = $comment['comment_id'];
					$newcomments[ $comment_id ]['comment_post_ID'] = $comment_post_id;
					$newcomments[ $comment_id ]['comment_author'] = $comment['comment_author'];
					$newcomments[ $comment_id ]['comment_author_email'] = $comment['comment_author_email'];
					$newcomments[ $comment_id ]['comment_author_IP'] = $comment['comment_author_IP'];
					$newcomments[ $comment_id ]['comment_author_url'] = $comment['comment_author_url'];
					$newcomments[ $comment_id ]['comment_date'] = $comment['comment_date'];
					$newcomments[ $comment_id ]['comment_date_gmt'] = $comment['comment_date_gmt'];
					$newcomments[ $comment_id ]['comment_content'] = $comment['comment_content'];
					$newcomments[ $comment_id ]['comment_approved'] = $comment['comment_approved'];
					$newcomments[ $comment_id ]['comment_type'] = $comment['comment_type'];
					$newcomments[ $comment_id ]['comment_parent'] = $comment['comment_parent'];
					$newcomments[ $comment_id ]['commentmeta'] = isset( $comment['commentmeta'] ) ? $comment['commentmeta'] : [];
					if ( isset( $this->processed_authors[ $comment['comment_user_id'] ] ) ) {
						$newcomments[ $comment_id ]['user_id'] = $this->processed_authors[ $comment['comment_user_id'] ];
					}
				}

				ksort( $newcomments );

				foreach ( $newcomments as $key => $comment ) {
					if ( isset( $inserted_comments[ $comment['comment_parent'] ] ) ) {
						$comment['comment_parent'] = $inserted_comments[ $comment['comment_parent'] ];
					}

					$comment_data = wp_slash( $comment );
					unset( $comment_data['commentmeta'] ); // Handled separately, wp_insert_comment() also expects `comment_meta`.
					$comment_data = wp_filter_comment( $comment_data );

					$inserted_comments[ $key ] = wp_insert_comment( $comment_data );

					do_action( 'wp_import_insert_comment', $inserted_comments[ $key ], $comment, $comment_post_id, $post );

					foreach ( $comment['commentmeta'] as $meta ) {
						$value = maybe_unserialize( $meta['value'] );

						add_comment_meta( $inserted_comments[ $key ], wp_slash( $meta['key'] ), wp_slash_strings_only( $value ) );
					}

					$num_comments++;
				}
				unset( $newcomments, $inserted_comments, $post['comments'] );
			}

			if ( ! isset( $post['postmeta'] ) ) {
				$post['postmeta'] = [];
			}

			$post['postmeta'] = apply_filters( 'wp_import_post_meta', $post['postmeta'], $post_id, $post );

			// Add/update post meta.
			if ( ! empty( $post['postmeta'] ) ) {
				foreach ( $post['postmeta'] as $meta ) {
					$key = apply_filters( 'import_post_meta_key', $meta['key'], $post_id, $post );
					$value = false;

					if ( '_edit_last' === $key ) {
						if ( isset( $this->processed_authors[ intval( $meta['value'] ) ] ) ) {
							$value = $this->processed_authors[ intval( $meta['value'] ) ];
						} else {
							$key = false;
						}
					}

					if ( $key ) {
						// Export gets meta straight from the DB so could have a serialized string.
						if ( ! $value ) {
							$value = maybe_unserialize( $meta['value'] );
						}

						add_post_meta( $post_id, wp_slash( $key ), wp_slash_strings_only( $value ) );

						do_action( 'import_post_meta', $post_id, $key, $value );

						// If the post has a featured image, take note of this in case of remap.
						if ( '_thumbnail_id' === $key ) {
							$this->featured_images[ $post_id ] = (int) $value;
						}
					}
				}
			}
		}

		unset( $this->posts );

		return $result;
	}

	/**
	 * Attempt to create a new menu item from import data
	 *
	 * Fails for draft, orphaned menu items and those without an associated nav_menu
	 * or an invalid nav_menu term. If the post type or term object which the menu item
	 * represents doesn't exist then the menu item will not be imported (waits until the
	 * end of the import to retry again before discarding).
	 *
	 * @param array $item Menu item details from WXR file
	 */
	private function process_menu_item( $item ) {
		// Skip draft, orphaned menu items.
		if ( 'draft' === $item['status'] ) {
			return;
		}

		$menu_slug = false;
		if ( isset( $item['terms'] ) ) {
			// Loop through terms, assume first nav_menu term is correct menu.
			foreach ( $item['terms'] as $term ) {
				if ( 'nav_menu' === $term['domain'] ) {
					$menu_slug = $term['slug'];
					break;
				}
			}
		}

		// No nav_menu term associated with this menu item.
		if ( ! $menu_slug ) {
			$this->output['errors'][] = esc_html__( 'Menu item skipped due to missing menu slug', 'elementor' );

			return;
		}

		$menu_id = term_exists( $menu_slug, 'nav_menu' );
		if ( ! $menu_id ) {
			/* translators: %s: Menu slug. */
			$this->output['errors'][] = sprintf( esc_html__( 'Menu item skipped due to invalid menu slug: %s', 'elementor' ), $menu_slug );

			return;
		} else {
			$menu_id = is_array( $menu_id ) ? $menu_id['term_id'] : $menu_id;
		}

		$post_meta_key_value = [];
		foreach ( $item['postmeta'] as $meta ) {
			$post_meta_key_value[ $meta['key'] ] = $meta['value'];
		}

		$_menu_item_object_id = $post_meta_key_value['menu_item_object_id'];
		if ( 'taxonomy' === $post_meta_key_value['_menu_item_type'] && isset( $this->processed_terms[ intval( $_menu_item_object_id ) ] ) ) {
			$_menu_item_object_id = $this->processed_terms[ intval( $_menu_item_object_id ) ];
		} elseif ( 'post_type' === $post_meta_key_value['_menu_item_type'] && isset( $this->processed_posts[ intval( $_menu_item_object_id ) ] ) ) {
			$_menu_item_object_id = $this->processed_posts[ intval( $_menu_item_object_id ) ];
		} elseif ( 'custom' !== $post_meta_key_value['_menu_item_type'] ) {
			// Associated object is missing or not imported yet, we'll retry later.
			$this->missing_menu_items[] = $item;

			return;
		}

		$_menu_item_menu_item_parent = $post_meta_key_value['menu_item_menu_item_parent'];
		if ( isset( $this->processed_menu_items[ intval( $_menu_item_menu_item_parent ) ] ) ) {
			$_menu_item_menu_item_parent = $this->processed_menu_items[ intval( $_menu_item_menu_item_parent ) ];
		} elseif ( $_menu_item_menu_item_parent ) {
			$this->menu_item_orphans[ intval( $item['post_id'] ) ] = (int) $_menu_item_menu_item_parent;
			$_menu_item_menu_item_parent = 0;
		}

		// wp_update_nav_menu_item expects CSS classes as a space separated string
		$_menu_item_classes = maybe_unserialize( $post_meta_key_value['_menu_item_classes'] );
		if ( is_array( $_menu_item_classes ) ) {
			$_menu_item_classes = implode( ' ', $_menu_item_classes );
		}

		$args = [
			'menu-item-object-id' => $_menu_item_object_id,
			'menu-item-object' => $post_meta_key_value['_menu_item_object'],
			'menu-item-parent-id' => $_menu_item_menu_item_parent,
			'menu-item-position' => intval( $item['menu_order'] ),
			'menu-item-type' => $post_meta_key_value['_menu_item_type'],
			'menu-item-title' => $item['post_title'],
			'menu-item-url' => $post_meta_key_value['_menu_item_url'],
			'menu-item-description' => $item['post_content'],
			'menu-item-attr-title' => $item['post_excerpt'],
			'menu-item-target' => $post_meta_key_value['_menu_item_target'],
			'menu-item-classes' => $_menu_item_classes,
			'menu-item-xfn' => $post_meta_key_value['_menu_item_xfn'],
			'menu-item-status' => $item['status'],
		];

		$id = wp_update_nav_menu_item( $menu_id, 0, $args );
		if ( $id && ! is_wp_error( $id ) ) {
			$this->processed_menu_items[ intval( $item['post_id'] ) ] = (int) $id;
		}
	}

	/**
	 * If fetching attachments is enabled then attempt to create a new attachment
	 *
	 * @param array  $post Attachment post details from WXR
	 * @param string $url  URL to fetch attachment from
	 *
	 * @return int|WP_Error Post ID on success, WP_Error otherwise
	 */
	private function process_attachment( $post, $url ) {
		if ( ! $this->fetch_attachments ) {
			return new WP_Error( 'attachment_processing_error', esc_html__( 'Fetching attachments is not enabled', 'elementor' ) );
		}

		// if the URL is absolute, but does not contain address, then upload it assuming base_site_url.
		if ( preg_match( '|^/[\w\W]+$|', $url ) ) {
			$url = rtrim( $this->base_url, '/' ) . $url;
		}

		$upload = $this->fetch_remote_file( $url, $post );
		if ( is_wp_error( $upload ) ) {
			return $upload;
		}

		$info = wp_check_filetype( $upload['file'] );
		if ( $info ) {
			$post['post_mime_type'] = $info['type'];
		} else {
			return new WP_Error( 'attachment_processing_error', esc_html__( 'Invalid file type', 'elementor' ) );
		}

		$post['guid'] = $upload['url'];

		// As per wp-admin/includes/upload.php.
		$post_id = wp_insert_attachment( $post, $upload['file'] );
		wp_update_attachment_metadata( $post_id, wp_generate_attachment_metadata( $post_id, $upload['file'] ) );

		// Remap resized image URLs, works by stripping the extension and remapping the URL stub.
		if ( preg_match( '!^image/!', $info['type'] ) ) {
			$parts = pathinfo( $url );
			$name = basename( $parts['basename'], ".{$parts['extension']}" ); // PATHINFO_FILENAME in PHP 5.2

			$parts_new = pathinfo( $upload['url'] );
			$name_new = basename( $parts_new['basename'], ".{$parts_new['extension']}" );

			$this->url_remap[ $parts['dirname'] . '/' . $name ] = $parts_new['dirname'] . '/' . $name_new;
		}

		return $post_id;
	}

	/**
	 * Attempt to download a remote file attachment
	 *
	 * @param string $url  URL of item to fetch
	 * @param array  $post Attachment details
	 *
	 * @return array|WP_Error Local file location details on success, WP_Error otherwise
	 */
	private function fetch_remote_file( $url, $post ) {
		// Extract the file name from the URL.
		$file_name = basename( parse_url( $url, PHP_URL_PATH ) );

		if ( ! $file_name ) {
			$file_name = md5( $url );
		}

		$tmp_file_name = wp_tempnam( $file_name );
		if ( ! $tmp_file_name ) {
			return new WP_Error( 'import_no_file', esc_html__( 'Could not create temporary file.', 'elementor' ) );
		}

		// Fetch the remote URL and write it to the placeholder file.
		$remote_response = wp_safe_remote_get( $url, [
			'timeout' => 300,
			'stream' => true,
			'filename' => $tmp_file_name,
			'headers' => [
				'Accept-Encoding' => 'identity',
			],
		] );

		if ( is_wp_error( $remote_response ) ) {
			@unlink( $tmp_file_name );

			return new WP_Error( 'import_file_error', sprintf( /* translators: 1: WordPress error message, 2: WordPress error code. */ esc_html__( 'Request failed due to an error: %1$s (%2$s)', 'elementor' ), esc_html( $remote_response->get_error_message() ), esc_html( $remote_response->get_error_code() ) ) );
		}

		$remote_response_code = (int) wp_remote_retrieve_response_code( $remote_response );

		// Make sure the fetch was successful.
		if ( 200 !== $remote_response_code ) {
			@unlink( $tmp_file_name );

			return new WP_Error( 'import_file_error', sprintf( /* translators: 1: HTTP error message, 2: HTTP error code. */ esc_html__( 'Remote server returned the following unexpected result: %1$s (%2$s)', 'elementor' ), get_status_header_desc( $remote_response_code ), esc_html( $remote_response_code ) ) );
		}

		$headers = wp_remote_retrieve_headers( $remote_response );

		// Request failed.
		if ( ! $headers ) {
			@unlink( $tmp_file_name );

			return new WP_Error( 'import_file_error', esc_html__( 'Remote server did not respond', 'elementor' ) );
		}

		$filesize = (int) filesize( $tmp_file_name );

		if ( 0 === $filesize ) {
			@unlink( $tmp_file_name );

			return new WP_Error( 'import_file_error', esc_html__( 'Zero size file downloaded', 'elementor' ) );
		}

		if ( ! isset( $headers['content-encoding'] ) && isset( $headers['content-length'] ) && $filesize !== (int) $headers['content-length'] ) {
			@unlink( $tmp_file_name );

			return new WP_Error( 'import_file_error', esc_html__( 'Downloaded file has incorrect size', 'elementor' ) );
		}

		$max_size = (int) apply_filters( 'import_attachment_size_limit', self::DEFAULT_IMPORT_ATTACHMENT_SIZE_LIMIT );
		if ( ! empty( $max_size ) && $filesize > $max_size ) {
			@unlink( $tmp_file_name );

			/* translators: %s: Max file size. */
			return new WP_Error( 'import_file_error', sprintf( esc_html__( 'Remote file is too large, limit is %s', 'elementor' ), size_format( $max_size ) ) );
		}

		// Override file name with Content-Disposition header value.
		if ( ! empty( $headers['content-disposition'] ) ) {
			$file_name_from_disposition = self::get_filename_from_disposition( (array) $headers['content-disposition'] );
			if ( $file_name_from_disposition ) {
				$file_name = $file_name_from_disposition;
			}
		}

		// Set file extension if missing.
		$file_ext = pathinfo( $file_name, PATHINFO_EXTENSION );
		if ( ! $file_ext && ! empty( $headers['content-type'] ) ) {
			$extension = self::get_file_extension_by_mime_type( $headers['content-type'] );
			if ( $extension ) {
				$file_name = "{$file_name}.{$extension}";
			}
		}

		// Handle the upload like _wp_handle_upload() does.
		$wp_filetype = wp_check_filetype_and_ext( $tmp_file_name, $file_name );
		$ext = empty( $wp_filetype['ext'] ) ? '' : $wp_filetype['ext'];
		$type = empty( $wp_filetype['type'] ) ? '' : $wp_filetype['type'];
		$proper_filename = empty( $wp_filetype['proper_filename'] ) ? '' : $wp_filetype['proper_filename'];

		// Check to see if wp_check_filetype_and_ext() determined the filename was incorrect.
		if ( $proper_filename ) {
			$file_name = $proper_filename;
		}

		if ( ( ! $type || ! $ext ) && ! current_user_can( 'unfiltered_upload' ) ) {
			return new WP_Error( 'import_file_error', esc_html__( 'Sorry, this file type is not permitted for security reasons.', 'elementor' ) );
		}

		$uploads = wp_upload_dir( $post['upload_date'] );
		if ( ! ( $uploads && false === $uploads['error'] ) ) {
			return new WP_Error( 'upload_dir_error', $uploads['error'] );
		}

		// Move the file to the uploads dir.
		$file_name = wp_unique_filename( $uploads['path'], $file_name );
		$new_file = $uploads['path'] . "/$file_name";
		$move_new_file = copy( $tmp_file_name, $new_file );

		if ( ! $move_new_file ) {
			@unlink( $tmp_file_name );

			return new WP_Error( 'import_file_error', esc_html__( 'The uploaded file could not be moved', 'elementor' ) );
		}

		// Set correct file permissions.
		$stat = stat( dirname( $new_file ) );
		$perms = $stat['mode'] & 0000666;
		chmod( $new_file, $perms );

		$upload = [
			'file' => $new_file,
			'url' => $uploads['url'] . "/$file_name",
			'type' => $wp_filetype['type'],
			'error' => false,
		];

		// Keep track of the old and new urls so we can substitute them later.
		$this->url_remap[ $url ] = $upload['url'];
		$this->url_remap[ $post['guid'] ] = $upload['url']; // r13735, really needed?
		// Keep track of the destination if the remote url is redirected somewhere else.
		if ( isset( $headers['x-final-location'] ) && $headers['x-final-location'] !== $url ) {
			$this->url_remap[ $headers['x-final-location'] ] = $upload['url'];
		}

		return $upload;
	}

	/**
	 * Attempt to associate posts and menu items with previously missing parents
	 *
	 * An imported post's parent may not have been imported when it was first created
	 * so try again. Similarly for child menu items and menu items which were missing
	 * the object (e.g. post) they represent in the menu
	 */
	private function backfill_parents() {
		global $wpdb;

		// Find parents for post orphans.
		foreach ( $this->post_orphans as $child_id => $parent_id ) {
			$local_child_id = false;
			$local_parent_id = false;

			if ( isset( $this->processed_posts[ $child_id ] ) ) {
				$local_child_id = $this->processed_posts[ $child_id ];
			}
			if ( isset( $this->processed_posts[ $parent_id ] ) ) {
				$local_parent_id = $this->processed_posts[ $parent_id ];
			}

			if ( $local_child_id && $local_parent_id ) {
				$wpdb->update( $wpdb->posts, [ 'post_parent' => $local_parent_id ], [ 'ID' => $local_child_id ], '%d', '%d' );
				clean_post_cache( $local_child_id );
			}
		}

		// All other posts/terms are imported, retry menu items with missing associated object.
		$missing_menu_items = $this->missing_menu_items;
		foreach ( $missing_menu_items as $item ) {
			$this->process_menu_item( $item );
		}

		// Find parents for menu item orphans.
		foreach ( $this->menu_item_orphans as $child_id => $parent_id ) {
			$local_child_id = 0;
			$local_parent_id = 0;
			if ( isset( $this->processed_menu_items[ $child_id ] ) ) {
				$local_child_id = $this->processed_menu_items[ $child_id ];
			}
			if ( isset( $this->processed_menu_items[ $parent_id ] ) ) {
				$local_parent_id = $this->processed_menu_items[ $parent_id ];
			}

			if ( $local_child_id && $local_parent_id ) {
				update_post_meta( $local_child_id, '_menu_item_menu_item_parent', (int) $local_parent_id );
			}
		}
	}

	/**
	 * Use stored mapping information to update old attachment URLs
	 */
	private function backfill_attachment_urls() {
		global $wpdb;
		// Make sure we do the longest urls first, in case one is a substring of another.
		uksort( $this->url_remap, function ( $a, $b ) {
			// Return the difference in length between two strings.
			return strlen( $b ) - strlen( $a );
		} );

		foreach ( $this->url_remap as $from_url => $to_url ) {
			// Remap urls in post_content.
			$wpdb->query( $wpdb->prepare( "UPDATE {$wpdb->posts} SET post_content = REPLACE(post_content, %s, %s)", $from_url, $to_url ) );
			// Remap enclosure urls.
			$wpdb->query( $wpdb->prepare( "UPDATE {$wpdb->postmeta} SET meta_value = REPLACE(meta_value, %s, %s) WHERE meta_key='enclosure'", $from_url, $to_url ) );
		}
	}

	/**
	 * Update _thumbnail_id meta to new, imported attachment IDs
	 */
	private function remap_featured_images() {
		// Cycle through posts that have a featured image.
		foreach ( $this->featured_images as $post_id => $value ) {
			if ( isset( $this->processed_posts[ $value ] ) ) {
				$new_id = $this->processed_posts[ $value ];
				// Only update if there's a difference.
				if ( $new_id !== $value ) {
					update_post_meta( $post_id, '_thumbnail_id', $new_id );
				}
			}
		}
	}

	/**
	 * Parse a WXR file
	 *
	 * @param string $file Path to WXR file for parsing
	 *
	 * @return array Information gathered from the WXR file
	 */
	private function parse( $file ) {
		$parser = new WXR_Parser();

		return $parser->parse( $file );
	}

	/**
	 * Decide if the given meta key maps to information we will want to import
	 *
	 * @param string $key The meta key to check
	 *
	 * @return string|bool The key if we do want to import, false if not
	 */
	private function is_valid_meta_key( $key ) {
		// Skip attachment metadata since we'll regenerate it from scratch.
		// Skip _edit_lock as not relevant for import
		if ( in_array( $key, [ '_wp_attached_file', '_wp_attachment_metadata', '_edit_lock' ] ) ) {
			return false;
		}

		return $key;
	}

	public function run() {
		$this->import( $this->requested_file_path );

		return $this->output;
	}

	public function __construct( $file, $args = [] ) {
		$this->requested_file_path = $file;
		$this->args = $args;

		if ( ! empty( $this->args['fetch_attachments'] ) ) {
			$this->fetch_attachments = true;
		}
	}
}
core/utils/str.php000064400000001103151327220420010146 0ustar00<?php
namespace Elementor\Core\Utils;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Str {

	/**
	 * Convert a non-latin URL to an IDN one.
	 * Note: Max length is 64 chars.
	 *
	 * @param string $url - A URL to encode.
	 *
	 * @return string - IDN encoded URL ( e.g. `http://é.com` will be encoded to `http://xn--9ca.com` ).
	 */
	public static function encode_idn_url( $url ) {
		return preg_replace_callback( '/(https?:\/\/)(.+)/', function ( $matches ) {
			return $matches[1] . \Requests_IDNAEncoder::encode( $matches[2] );
		}, $url );
	}
}
core/utils/exceptions.php000064400000001304151327220420011522 0ustar00<?php
namespace Elementor\Core\Utils;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

/**
 * Elementor exceptions.
 *
 * Elementor exceptions handler class is responsible for handling exceptions.
 *
 * @since 2.0.0
 */
class Exceptions {

	/**
	 * HTTP status code for bad request error.
	 */
	const BAD_REQUEST = 400;

	/**
	 * HTTP status code for unauthorized access error.
	 */
	const UNAUTHORIZED = 401;

	/**
	 * HTTP status code for forbidden access error.
	 */
	const FORBIDDEN = 403;

	/**
	 * HTTP status code for resource that could not be found.
	 */
	const NOT_FOUND = 404;

	/**
	 * HTTP status code for internal server error.
	 */
	const INTERNAL_SERVER_ERROR = 500;
}
core/utils/version.php000064400000007211151327220420011031 0ustar00<?php
namespace Elementor\Core\Utils;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

class Version {
	const PART_MAJOR_1 = 'major1';
	const PART_MAJOR_2 = 'major2';
	const PART_PATCH = 'patch';
	const PART_STAGE = 'stage';

	/**
	 * First number of a version 0.x.x
	 *
	 * @var string
	 */
	public $major1;

	/**
	 * Second number of a version x.0.x
	 *
	 * @var string
	 */
	public $major2;

	/**
	 * Third number of a version x.x.0
	 *
	 * @var string
	 */
	public $patch;

	/**
	 * The stage of a version x.x.x-stage.
	 * e.g: x.x.x-dev1, x.x.x-beta3, x.x.x-rc
	 *
	 * @var string|null
	 */
	public $stage;

	/**
	 * Version constructor.
	 *
	 * @param $major1
	 * @param $major2
	 * @param $patch
	 * @param $stage
	 */
	public function __construct( $major1, $major2, $patch, $stage = null ) {
		$this->major1 = $major1;
		$this->major2 = $major2;
		$this->patch  = $patch;
		$this->stage  = $stage;
	}

	/**
	 * Create Version instance.
	 *
	 * @param string $major1
	 * @param string $major2
	 * @param string $patch
	 * @param null   $stage
	 *
	 * @return static
	 */
	public static function create( $major1 = '0', $major2 = '0', $patch = '0', $stage = null ) {
		return new static( $major1, $major2, $patch, $stage );
	}

	/**
	 * Checks if the current version string is valid.
	 *
	 * @param $version
	 *
	 * @return bool
	 */
	public static function is_valid_version( $version ) {
		return ! ! preg_match( '/^(\d+\.)?(\d+\.)?(\*|\d+)(-.+)?$/', $version );
	}

	/**
	 * Creates a Version instance from a string.
	 *
	 * @param      $version
	 * @param bool $should_validate
	 *
	 * @return static
	 * @throws \Exception
	 */
	public static function create_from_string( $version, $should_validate = true ) {
		if ( $should_validate && ! static::is_valid_version( $version ) ) {
			throw new \Exception( "{$version} is an invalid version." );
		}

		$parts = explode( '.', $version );
		$patch_parts = [];

		$major1 = '0';
		$major2 = '0';
		$patch = '0';
		$stage = null;

		if ( isset( $parts[0] ) ) {
			$major1 = $parts[0];
		}

		if ( isset( $parts[1] ) ) {
			$major2 = $parts[1];
		}

		if ( isset( $parts[2] ) ) {
			$patch_parts = explode( '-', $parts[2] );

			$patch = $patch_parts[0];
		}

		if ( isset( $patch_parts[1] ) ) {
			$stage = $patch_parts[1];
		}

		return static::create( $major1, $major2, $patch, $stage );
	}

	/**
	 * Compare the current version instance with another version.
	 *
	 * @param        $operator
	 * @param        $version
	 * @param string $part
	 *
	 * @return bool
	 * @throws \Exception
	 */
	public function compare( $operator, $version, $part = self::PART_STAGE ) {
		if ( ! ( $version instanceof Version ) ) {
			if ( ! static::is_valid_version( $version ) ) {
				$version = '0.0.0';
			}

			$version = static::create_from_string( $version, false );
		}

		$current_version = clone $this;
		$compare_version = clone $version;

		if ( in_array( $part, [ self::PART_PATCH, self::PART_MAJOR_2, self::PART_MAJOR_1 ], true ) ) {
			$current_version->stage = null;
			$compare_version->stage = null;
		}

		if ( in_array( $part, [ self::PART_MAJOR_2, self::PART_MAJOR_1 ], true ) ) {
			$current_version->patch = '0';
			$compare_version->patch = '0';
		}

		if ( self::PART_MAJOR_1 === $part ) {
			$current_version->major2 = '0';
			$compare_version->major2 = '0';
		}

		return version_compare(
			$current_version,
			$compare_version,
			$operator
		);
	}

	/**
	 * Implode the version and return it as string.
	 *
	 * @return string
	 */
	public function __toString() {
		$version = implode( '.', [ $this->major1, $this->major2, $this->patch ] );

		if ( $this->stage ) {
			$version .= '-' . $this->stage;
		}

		return $version;
	}
}
core/utils/http.php000064400000001725151327220420010327 0ustar00<?php
namespace Elementor\Core\Utils;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

class Http extends \WP_Http {
	/**
	 * Pass multiple urls to implements a fallback machine when one of the urls
	 * is sending an error or not exists anymore.
	 *
	 * @param array $urls
	 * @param array $args
	 *
	 * @return array|\WP_Error|null
	 */
	public function request_with_fallback( array $urls, $args = [] ) {
		$response = null;

		foreach ( $urls as $url ) {
			$response = $this->request( $url, $args );

			if ( $this->is_successful_response( $response ) ) {
				return $response;
			}
		}

		return $response;
	}

	/**
	 * @param $response
	 *
	 * @return bool
	 */
	private function is_successful_response( $response ) {
		if ( is_wp_error( $response ) ) {
			return false;
		}

		$response_code = (int) wp_remote_retrieve_response_code( $response );

		if ( in_array( $response_code, [ 0, 404, 500 ], true ) ) {
			return false;
		}

		return true;
	}
}
core/breakpoints/manager.php000064400000035340151327220420012143 0ustar00<?php
namespace Elementor\Core\Breakpoints;

use Elementor\Core\Base\Module;
use Elementor\Core\Kits\Documents\Tabs\Settings_Layout;
use Elementor\Core\Responsive\Files\Frontend;
use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

class Manager extends Module {

	const BREAKPOINT_SETTING_PREFIX = 'viewport_';
	const BREAKPOINT_KEY_MOBILE = 'mobile';
	const BREAKPOINT_KEY_MOBILE_EXTRA = 'mobile_extra';
	const BREAKPOINT_KEY_TABLET = 'tablet';
	const BREAKPOINT_KEY_TABLET_EXTRA = 'tablet_extra';
	const BREAKPOINT_KEY_LAPTOP = 'laptop';
	const BREAKPOINT_KEY_DESKTOP = 'desktop';
	const BREAKPOINT_KEY_WIDESCREEN = 'widescreen';

	/**
	 * Breakpoints
	 *
	 * An array containing instances of the all of the system's available breakpoints.
	 *
	 * @since 3.2.0
	 * @access private
	 *
	 * @var Breakpoint[]
	 */
	private $breakpoints;

	/**
	 * Active Breakpoints
	 *
	 * An array containing instances of the enabled breakpoints.
	 *
	 * @since 3.2.0
	 * @access private
	 *
	 * @var Breakpoint[]
	 */
	private $active_breakpoints;

	/**
	 * Responsive Control Duplication Mode.
	 *
	 * Determines the current responsive control generation mode.
	 * Options are:
	 * -- 'on': Responsive controls are duplicated in `add_responsive_control()`.
	 * -- 'off': Responsive controls are NOT duplicated in `add_responsive_control()`.
	 * -- 'dynamic': Responsive controls are only duplicated if their config contains `'dynamic' => 'active' => true`.
	 *
	 * When generating Post CSS, the mode is set to 'on'. When generating Dynamic CSS, the mode is set to 'dynamic'.
	 *
	 * default value is 'off'.
	 *
	 * @since 3.4.0
	 * @access private
	 *
	 * @var string
	 */
	private $responsive_control_duplication_mode = 'off';

	private $icons_map;

	public function get_name() {
		return 'breakpoints';
	}

	/**
	 * Get Breakpoints
	 *
	 * Retrieve the array containing instances of all breakpoints existing in the system, or a single breakpoint if a
	 * name is passed.
	 *
	 * @since 3.2.0
	 *
	 * @param $breakpoint_name
	 * @return Breakpoint[]|Breakpoint
	 */
	public function get_breakpoints( $breakpoint_name = null ) {
		if ( ! $this->breakpoints ) {
			$this->init_breakpoints();
		}
		return self::get_items( $this->breakpoints, $breakpoint_name );
	}

	/**
	 * Get Active Breakpoints
	 *
	 * Retrieve the array of --enabled-- breakpoints, or a single breakpoint if a name is passed.
	 *
	 * @since 3.2.0
	 *
	 * @param string|null $breakpoint_name
	 * @return Breakpoint[]|Breakpoint
	 */
	public function get_active_breakpoints( $breakpoint_name = null ) {
		if ( ! $this->active_breakpoints ) {
			$this->init_active_breakpoints();
		}

		return self::get_items( $this->active_breakpoints, $breakpoint_name );
	}

	/**
	 * Get Active Devices List
	 *
	 * Retrieve an array containing the keys of all active devices, including 'desktop'.
	 *
	 * @since 3.2.0
	 *
	 * @param array $args
	 * @return array
	 */
	public function get_active_devices_list( $args = [] ) {
		$default_args = [
			'add_desktop' => true,
			'reverse' => false,
		];

		$args = array_merge( $default_args, $args );

		$active_devices = array_keys( Plugin::$instance->breakpoints->get_active_breakpoints() );

		if ( $args['add_desktop'] ) {
			// Insert the 'desktop' device in the correct position.
			if ( in_array( 'widescreen', $active_devices, true ) ) {
				$widescreen_index = array_search( 'widescreen', $active_devices, true );

				array_splice( $active_devices, $widescreen_index, 0, [ 'desktop' ] );
			} else {
				$active_devices[] = 'desktop';
			}
		}

		if ( $args['reverse'] ) {
			$active_devices = array_reverse( $active_devices );
		}

		return $active_devices;
	}

	/** Has Custom Breakpoints
	 *
	 * Checks whether there are currently custom breakpoints saved in the database.
	 * Returns true if there are breakpoint values saved in the active kit.
	 * If the user has activated any additional custom breakpoints (mobile extra, tablet extra, laptop, widescreen) -
	 * that is considered as having custom breakpoints.
	 *
	 * @since 3.2.0
	 *
	 * @return boolean
	 */
	public function has_custom_breakpoints() {
		$breakpoints = $this->get_active_breakpoints();

		$additional_breakpoints = [
			self::BREAKPOINT_KEY_MOBILE_EXTRA,
			self::BREAKPOINT_KEY_TABLET_EXTRA,
			self::BREAKPOINT_KEY_LAPTOP,
			self::BREAKPOINT_KEY_WIDESCREEN,
		];

		foreach ( $breakpoints as $breakpoint_name => $breakpoint ) {
			if ( in_array( $breakpoint_name, $additional_breakpoints, true ) ) {
				return true;
			}

			/** @var Breakpoint $breakpoint */
			if ( $breakpoint->is_custom() ) {
				return true;
			}
		}

		return false;
	}

	/**
	 * Get Device Min Breakpoint
	 *
	 * For a given device, return the minimum possible breakpoint. Except for the cases of mobile and widescreen
	 * devices, A device's min breakpoint is determined by the previous device's max breakpoint + 1px.
	 *
	 * @since 3.2.0
	 *
	 * @param string $device_name
	 * @return int the min breakpoint of the passed device
	 */
	public function get_device_min_breakpoint( $device_name ) {
		if ( 'desktop' === $device_name ) {
			return $this->get_desktop_min_point();
		}

		$active_breakpoints = $this->get_active_breakpoints();
		$current_device_breakpoint = $active_breakpoints[ $device_name ];

		// Since this method is called multiple times, usage of class variables is to memory and processing time.
		// Get only the keys for active breakpoints.
		$breakpoint_keys = array_keys( $active_breakpoints );

		if ( $breakpoint_keys[0] === $device_name ) {
			// For the lowest breakpoint, the min point is always 320.
			$min_breakpoint = 320;
		} elseif ( 'min' === $current_device_breakpoint->get_direction() ) {
			// 'min-width' breakpoints only have a minimum point. The breakpoint value itself the device min point.
			$min_breakpoint = $current_device_breakpoint->get_value();
		} else {
			// This block handles all other devices.
			$device_name_index = array_search( $device_name, $breakpoint_keys, true );

			$previous_index = $device_name_index - 1;
			$previous_breakpoint_key = $breakpoint_keys[ $previous_index ];
			/** @var Breakpoint $previous_breakpoint */
			$previous_breakpoint = $active_breakpoints[ $previous_breakpoint_key ];

			$min_breakpoint = $previous_breakpoint->get_value() + 1;
		}

		return $min_breakpoint;
	}

	/**
	 * Get Desktop Min Breakpoint
	 *
	 * Returns the minimum possible breakpoint for the default (desktop) device.
	 *
	 * @since 3.2.0
	 *
	 * @return int the min breakpoint of the passed device
	 */
	public function get_desktop_min_point() {
		$active_breakpoints = $this->get_active_breakpoints();
		$desktop_previous_device = $this->get_desktop_previous_device_key();

		return $active_breakpoints[ $desktop_previous_device ]->get_value() + 1;
	}

	public function refresh() {
		$this->init_breakpoints();
		$this->init_active_breakpoints();
	}

	/**
	 * Get Responsive Icons Classes Map
	 *
	 * If a $device parameter is passed, this method retrieves the device's icon class list (the ones attached to the `<i>`
	 * element). If no parameter is passed, it returns an array of devices containing each device's icon class list.
	 *
	 * This method was created because 'mobile_extra' and 'tablet_extra' breakpoint icons need to be tilted by 90
	 * degrees, and this tilt is achieved in CSS via the class `eicon-tilted`.
	 *
	 * @since 3.4.0
	 *
	 * @return array|string
	 */
	public function get_responsive_icons_classes_map( $device = null ) {
		if ( ! $this->icons_map ) {
			$this->icons_map = [
				'mobile' => 'eicon-device-mobile',
				'mobile_extra' => 'eicon-device-mobile eicon-tilted',
				'tablet' => 'eicon-device-tablet',
				'tablet_extra' => 'eicon-device-tablet eicon-tilted',
				'laptop' => 'eicon-device-laptop',
				'desktop' => 'eicon-device-desktop',
				'widescreen' => 'eicon-device-wide',
			];
		}

		return self::get_items( $this->icons_map, $device );
	}

	/**
	 * Get Default Config
	 *
	 * Retrieve the default breakpoints config array. The 'selector' property is used for CSS generation (the
	 * Stylesheet::add_device() method).
	 *
	 * @return array
	 */
	public static function get_default_config() {
		return [
			self::BREAKPOINT_KEY_MOBILE => [
				'label' => esc_html__( 'Mobile', 'elementor' ),
				'default_value' => 767,
				'direction' => 'max',
			],
			self::BREAKPOINT_KEY_MOBILE_EXTRA => [
				'label' => esc_html__( 'Mobile Extra', 'elementor' ),
				'default_value' => 880,
				'direction' => 'max',
			],
			self::BREAKPOINT_KEY_TABLET => [
				'label' => esc_html__( 'Tablet', 'elementor' ),
				'default_value' => 1024,
				'direction' => 'max',
			],
			self::BREAKPOINT_KEY_TABLET_EXTRA => [
				'label' => esc_html__( 'Tablet Extra', 'elementor' ),
				'default_value' => 1200,
				'direction' => 'max',
			],
			self::BREAKPOINT_KEY_LAPTOP => [
				'label' => esc_html__( 'Laptop', 'elementor' ),
				'default_value' => 1366,
				'direction' => 'max',
			],
			self::BREAKPOINT_KEY_WIDESCREEN => [
				'label' => esc_html__( 'Widescreen', 'elementor' ),
				'default_value' => 2400,
				'direction' => 'min',
			],
		];
	}

	/**
	 * Get Breakpoints Config
	 *
	 * Iterates over an array of all of the system's breakpoints (both active and inactive), queries each breakpoint's
	 * class instance, and generates an array containing data on each breakpoint: its label, current value, direction
	 * ('min'/'max') and whether it is enabled or not.
	 *
	 * @return array
	 */
	public function get_breakpoints_config() {
		$breakpoints = $this->get_breakpoints();

		$config = [];

		foreach ( $breakpoints as $breakpoint_name => $breakpoint ) {
			$config[ $breakpoint_name ] = [
				'label' => $breakpoint->get_label(),
				'value' => $breakpoint->get_value(),
				'default_value' => $breakpoint->get_default_value(),
				'direction' => $breakpoint->get_direction(),
				'is_enabled' => $breakpoint->is_enabled(),
			];
		}

		return $config;
	}

	/**
	 * Get Responsive Control Duplication Mode
	 *
	 * Retrieve the value of the $responsive_control_duplication_mode private class variable.
	 * See the variable's PHPDoc for details.
	 *
	 * @since 3.4.0
	 * @access public
	 */
	public function get_responsive_control_duplication_mode() {
		return $this->responsive_control_duplication_mode;
	}

	/**
	 * Set Responsive Control Duplication Mode
	 *
	 * Sets  the value of the $responsive_control_duplication_mode private class variable.
	 * See the variable's PHPDoc for details.
	 *
	 * @since 3.4.0
	 *
	 * @access public
	 * @param string $mode
	 */
	public function set_responsive_control_duplication_mode( $mode ) {
		$this->responsive_control_duplication_mode = $mode;
	}

	/**
	 * Get Stylesheet Templates Path
	 *
	 * @since 3.2.0
	 * @access public
	 * @static
	 */
	public static function get_stylesheet_templates_path() {
		return ELEMENTOR_ASSETS_PATH . 'css/templates/';
	}

	/**
	 * Compile Stylesheet Templates
	 *
	 * @since 3.2.0
	 * @access public
	 * @static
	 */
	public static function compile_stylesheet_templates() {
		foreach ( self::get_stylesheet_templates() as $file_name => $template_path ) {
			$file = new Frontend( $file_name, $template_path );

			$file->update();
		}
	}

	/**
	 * Init Breakpoints
	 *
	 * Creates the breakpoints array, containing instances of each breakpoint. Returns an array of ALL breakpoints,
	 * both enabled and disabled.
	 *
	 * @since 3.2.0
	 */
	private function init_breakpoints() {
		$breakpoints = [];

		$setting_prefix = self::BREAKPOINT_SETTING_PREFIX;

		$active_breakpoint_keys = [
			$setting_prefix . self::BREAKPOINT_KEY_MOBILE,
			$setting_prefix . self::BREAKPOINT_KEY_TABLET,
		];

		if ( Plugin::$instance->experiments->is_feature_active( 'additional_custom_breakpoints' ) ) {
			$kit_active_id = Plugin::$instance->kits_manager->get_active_id();
			// Get the breakpoint settings saved in the kit directly from the DB to avoid initializing the kit too early.
			$raw_kit_settings = get_post_meta( $kit_active_id, '_elementor_page_settings', true );

			// If there is an existing kit with an active breakpoints value saved, use it.
			if ( isset( $raw_kit_settings[ Settings_Layout::ACTIVE_BREAKPOINTS_CONTROL_ID ] ) ) {
				$active_breakpoint_keys = $raw_kit_settings[ Settings_Layout::ACTIVE_BREAKPOINTS_CONTROL_ID ];
			}
		}

		$default_config = self::get_default_config();

		foreach ( $default_config as $breakpoint_name => $breakpoint_config ) {
			$args = [ 'name' => $breakpoint_name ] + $breakpoint_config;

			// Make sure the two default breakpoints (mobile, tablet) are always enabled.
			if ( self::BREAKPOINT_KEY_MOBILE === $breakpoint_name || self::BREAKPOINT_KEY_TABLET === $breakpoint_name ) {
				// Make sure the default Mobile and Tablet breakpoints are always enabled.
				$args['is_enabled'] = true;
			} else {
				// If the breakpoint is in the active breakpoints array, make sure it's instantiated as enabled.
				$args['is_enabled'] = in_array( $setting_prefix . $breakpoint_name, $active_breakpoint_keys, true );
			}

			$breakpoints[ $breakpoint_name ] = new Breakpoint( $args );
		}

		$this->breakpoints = $breakpoints;
	}

	/**
	 * Init Active Breakpoints
	 *
	 * Create/Refresh the array of --enabled-- breakpoints.
	 *
	 * @since 3.2.0
	 */
	private function init_active_breakpoints() {
		$this->active_breakpoints = array_filter( $this->get_breakpoints(), function( $breakpoint ) {
			/** @var Breakpoint $breakpoint */
			return $breakpoint->is_enabled();
		} );
	}

	private function get_desktop_previous_device_key() {
		$config_array_keys = array_keys( $this->get_active_breakpoints() );
		$num_of_devices = count( $config_array_keys );

		// If the widescreen breakpoint is active, the device that's previous to desktop is the last one before
		// widescreen.
		if ( self::BREAKPOINT_KEY_WIDESCREEN === $config_array_keys[ $num_of_devices - 1 ] ) {
			$desktop_previous_device = $config_array_keys[ $num_of_devices - 2 ];
		} else {
			// If the widescreen breakpoint isn't active, we just take the last device returned by the config.
			$desktop_previous_device = $config_array_keys[ $num_of_devices - 1 ];
		}

		return $desktop_previous_device;
	}

	/**
	 * Get Stylesheet Templates
	 *
	 * @since 3.2.0
	 * @access private
	 * @static
	 */
	private static function get_stylesheet_templates() {
		$templates_paths = glob( self::get_stylesheet_templates_path() . '*.css' );

		$templates = [];

		foreach ( $templates_paths as $template_path ) {
			$file_name = 'custom-' . basename( $template_path );

			$templates[ $file_name ] = $template_path;
		}

		$deprecated_hook = 'elementor/core/responsive/get_stylesheet_templates';
		$replacement_hook = 'elementor/core/breakpoints/get_stylesheet_template';

		Plugin::$instance->modules_manager->get_modules( 'dev-tools' )->deprecation->deprecated_hook( $deprecated_hook, '3.2.0', $replacement_hook );

		// TODO: REMOVE THIS DEPRECATED HOOK IN ELEMENTOR v3.10.0/v4.0.0
		$templates = apply_filters( $deprecated_hook, $templates );

		return apply_filters( $replacement_hook, $templates );
	}
}
core/breakpoints/breakpoint.php000064400000005525151327220420012671 0ustar00<?php
namespace Elementor\Core\Breakpoints;

use Elementor\Core\Base\Base_Object;
use Elementor\Plugin;
use Elementor\Core\Breakpoints\Manager as Breakpoints_Manager;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

class Breakpoint extends Base_Object {

	private $name;
	private $label;
	private $default_value;
	private $db_key;
	private $value;
	private $is_custom;
	private $direction = 'max';
	private $is_enabled = false;
	private $config;

	/**
	 * Get Name
	 *
	 * @since 3.2.0
	 *
	 * @return string
	 */
	public function get_name() {
		return $this->name;
	}

	/**
	 * Is Enabled
	 *
	 * Check if the breakpoint is enabled or not. The breakpoint instance receives this data from
	 * the Breakpoints Manager.
	 *
	 * @return bool $is_enabled class variable
	 */
	public function is_enabled() {
		return $this->is_enabled;
	}

	/**
	 * Get Label
	 *
	 * Retrieve the breakpoint label.
	 *
	 * @since 3.2.0
	 *
	 * @return string $label class variable
	 */
	public function get_label() {
		return $this->label;
	}

	/**
	 * Get Value
	 *
	 * Retrieve the saved breakpoint value.
	 *
	 * @since 3.2.0
	 *
	 * @return int $value class variable
	 */
	public function get_value() {
		if ( ! $this->value ) {
			$this->init_value();
		}

		return $this->value;
	}

	/**
	 * Is Custom
	 *
	 * Check if the breakpoint's value is a custom or default value.
	 *
	 * @since 3.2.0
	 *
	 * @return bool $is_custom class variable
	 */
	public function is_custom() {
		if ( ! $this->is_custom ) {
			$this->get_value();
		}

		return $this->is_custom;
	}

	/**
	 * Get Default Value
	 *
	 * Returns the Breakpoint's default value.
	 *
	 * @since 3.2.0
	 *
	 * @return int $default_value class variable
	 */
	public function get_default_value() {
		return $this->default_value;
	}

	/**
	 * Get Direction
	 *
	 * Returns the Breakpoint's direction ('min'/'max').
	 *
	 * @since 3.2.0
	 *
	 * @return string $direction class variable
	 */
	public function get_direction() {
		return $this->direction;
	}

	/**
	 * Set Value
	 *
	 * Set the `$value` class variable and the `$is_custom` class variable.
	 *
	 * @since 3.2.0
	 *
	 * @return int $value class variable
	 */
	private function init_value() {
		$cached_value = Plugin::$instance->kits_manager->get_current_settings( $this->db_key );

		if ( $cached_value ) {
			$this->value = (int) $cached_value;

			$this->is_custom = $this->value !== $this->default_value;
		} else {
			$this->value = $this->default_value;

			$this->is_custom = false;
		}

		return $this->value;
	}

	public function __construct( $args ) {
		$this->name = $args['name'];
		$this->label = $args['label'];
		// Used for CSS generation
		$this->db_key = Breakpoints_Manager::BREAKPOINT_SETTING_PREFIX . $args['name'];
		$this->direction = $args['direction'];
		$this->is_enabled = $args['is_enabled'];
		$this->default_value = $args['default_value'];
	}
}
core/frontend/render-modes/render-mode-base.php000064400000004147151327220420015525 0ustar00<?php
namespace Elementor\Core\Frontend\RenderModes;

use Elementor\Plugin;
use Elementor\Core\Base\Document;
use Elementor\Core\Frontend\Render_Mode_Manager;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

abstract class Render_Mode_Base {
	const ENQUEUE_SCRIPTS_PRIORITY = 10;
	const ENQUEUE_STYLES_PRIORITY = 10;

	/**
	 * @var int
	 */
	protected $post_id;

	/**
	 * @var Document
	 */
	protected $document;

	/**
	 * Render_Mode_Base constructor.
	 *
	 * @param $post_id
	 */
	public function __construct( $post_id ) {
		$this->post_id = intval( $post_id );
	}

	/**
	 * Returns the key name of the class.
	 *
	 * @return string
	 * @throws \Exception
	 */
	public static function get_name() {
		throw new \Exception( 'You must implements `get_name` static method in ' . static::class );
	}

	/**
	 * @param $post_id
	 *
	 * @return string
	 * @throws \Exception
	 */
	public static function get_url( $post_id ) {
		return Render_Mode_Manager::get_base_url( $post_id, static::get_name() );
	}

	/**
	 * Runs before the render, by default load scripts and styles.
	 */
	public function prepare_render() {
		add_action( 'wp_enqueue_scripts', function () {
			$this->enqueue_scripts();
		}, static::ENQUEUE_SCRIPTS_PRIORITY );

		add_action( 'wp_enqueue_scripts', function () {
			$this->enqueue_styles();
		}, static::ENQUEUE_STYLES_PRIORITY );
	}

	/**
	 * By default do not do anything.
	 */
	protected function enqueue_scripts() {
		//
	}

	/**
	 * By default do not do anything.
	 */
	protected function enqueue_styles() {
		//
	}

	/**
	 * Check if the current user has permissions for the current render mode.
	 *
	 * @return bool
	 */
	public function get_permissions_callback() {
		return $this->get_document()->is_editable_by_current_user();
	}

	/**
	 * Checks if the current render mode is static render, By default returns false.
	 *
	 * @return bool
	 */
	public function is_static() {
		return false;
	}

	/**
	 * @return Document
	 */
	public function get_document() {
		if ( ! $this->document ) {
			$this->document = Plugin::$instance->documents->get( $this->post_id );
		}

		return $this->document;
	}
}
core/frontend/render-modes/render-mode-normal.php000064400000000632151327220420016076 0ustar00<?php
namespace Elementor\Core\Frontend\RenderModes;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

class Render_Mode_Normal extends Render_Mode_Base {
	/**
	 * @return string
	 */
	public static function get_name() {
		return 'normal';
	}

	/**
	 * Anyone can access the normal render mode.
	 *
	 * @return bool
	 */
	public function get_permissions_callback() {
		return true;
	}
}
core/frontend/render-mode-manager.php000064400000007117151327220420013641 0ustar00<?php
namespace Elementor\Core\Frontend;

use Elementor\Core\Frontend\RenderModes\Render_Mode_Base;
use Elementor\Core\Frontend\RenderModes\Render_Mode_Normal;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

class Render_Mode_Manager {
	const QUERY_STRING_PARAM_NAME = 'render_mode';
	const QUERY_STRING_POST_ID = 'post_id';
	const QUERY_STRING_NONCE_PARAM_NAME = 'render_mode_nonce';
	const NONCE_ACTION_PATTERN = 'render_mode_{post_id}';

	/**
	 * @var Render_Mode_Base
	 */
	private $current;

	/**
	 * @var Render_Mode_Base[]
	 */
	private $render_modes = [];

	/**
	 * @param $post_id
	 * @param $render_mode_name
	 *
	 * @return string
	 */
	public static function get_base_url( $post_id, $render_mode_name ) {
		return add_query_arg( [
			self::QUERY_STRING_POST_ID => $post_id,
			self::QUERY_STRING_PARAM_NAME => $render_mode_name,
			self::QUERY_STRING_NONCE_PARAM_NAME => wp_create_nonce( self::get_nonce_action( $post_id ) ),
			'ver' => time(),
		], get_permalink( $post_id ) );
	}

	/**
	 * @param $post_id
	 *
	 * @return string
	 */
	public static function get_nonce_action( $post_id ) {
		return str_replace( '{post_id}', $post_id, self::NONCE_ACTION_PATTERN );
	}

	/**
	 * Register a new render mode into the render mode manager.
	 *
	 * @param $class_name
	 *
	 * @return $this
	 * @throws \Exception
	 */
	public function register_render_mode( $class_name ) {
		if ( ! is_subclass_of( $class_name, Render_Mode_Base::class ) ) {
			throw new \Exception( "'{$class_name}' must extends 'Render_Mode_Base'" );
		}

		$this->render_modes[ $class_name::get_name() ] = $class_name;

		return $this;
	}

	/**
	 * Get the current render mode.
	 *
	 * @return Render_Mode_Base
	 */
	public function get_current() {
		return $this->current;
	}

	/**
	 * @param Render_Mode_Base $render_mode
	 *
	 * @return $this
	 */
	private function set_current( Render_Mode_Base $render_mode ) {
		$this->current = $render_mode;

		return $this;
	}

	/**
	 * Set render mode.
	 *
	 * @return $this
	 */
	private function choose_render_mode() {
		$post_id = null;
		$key = null;
		$nonce = null;

		if ( isset( $_GET[ self::QUERY_STRING_POST_ID ] ) ) {
			$post_id = $_GET[ self::QUERY_STRING_POST_ID ]; // phpcs:ignore -- Nonce will be checked next line.
		}

		if ( isset( $_GET[ self::QUERY_STRING_NONCE_PARAM_NAME ] ) ) {
			$nonce = $_GET[ self::QUERY_STRING_NONCE_PARAM_NAME ]; // phpcs:ignore -- Nonce will be checked next line.
		}

		if ( isset( $_GET[ self::QUERY_STRING_PARAM_NAME ] ) ) {
			$key = $_GET[ self::QUERY_STRING_PARAM_NAME ]; // phpcs:ignore -- Nonce will be checked next line.
		}

		if (
			$post_id &&
			$nonce &&
			wp_verify_nonce( $nonce, self::get_nonce_action( $post_id ) ) &&
			$key &&
			array_key_exists( $key, $this->render_modes )
		) {
			$this->set_current( new $this->render_modes[ $key ]( $post_id ) );
		} else {
			$this->set_current( new Render_Mode_Normal( $post_id ) );
		}

		return $this;
	}

	/**
	 * Add actions base on the current render.
	 *
	 * @throws \Requests_Exception_HTTP_403
	 */
	private function add_current_actions() {
		if ( ! $this->current->get_permissions_callback() ) {
			throw new \Requests_Exception_HTTP_403();
		}

		// Run when 'template-redirect' actually because the the class is instantiate when 'template-redirect' run.
		$this->current->prepare_render();
	}

	/**
	 * Render_Mode_Manager constructor.
	 *
	 * @throws \Exception
	 */
	public function __construct() {
		$this->register_render_mode( Render_Mode_Normal::class );

		do_action( 'elementor/frontend/render_mode/register', $this );

		$this->choose_render_mode();
		$this->add_current_actions();
	}
}
core/admin/notices/base-notice.php000064400000001003151327220420013122 0ustar00<?php
namespace Elementor\Core\Admin\Notices;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

abstract class Base_Notice {
	/**
	 * Determine if the notice should be printed or not.
	 *
	 * @return boolean
	 */
	abstract public function should_print();

	/**
	 * Returns the config of the notice itself.
	 * based on that config the notice will be printed.
	 *
	 * @see \Elementor\Core\Admin\Admin_Notices::admin_notices
	 *
	 * @return array
	 */
	abstract public function get_config();
}
core/admin/notices/elementor-dev-notice.php000064400000007610151327220420014770 0ustar00<?php
namespace Elementor\Core\Admin\Notices;

use Elementor\User;
use Elementor\Plugin;
use Elementor\Core\Experiments\Manager as Experiments_Manager;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

class Elementor_Dev_Notice extends Base_Notice {
	/**
	 * Notice ID.
	 */
	const ID = 'elementor_dev_promote';

	/**
	 * Plugin slug to install.
	 */
	const PLUGIN_SLUG = 'elementor-beta';

	/**
	 * Plugin name.
	 */
	const PLUGIN_NAME = 'elementor-beta/elementor-beta.php';

	/**
	 * Holds the plugins names.
	 *
	 * @var array
	 */
	private $plugins = [];

	/**
	 * If one of those plugin is installed it will show the notice.
	 *
	 * @var string[]
	 */
	private $promotion_plugins = [
		'woocommerce-beta-tester/woocommerce-beta-tester.php',
		'wp-jquery-update-test/wp-jquery-update-test.php',
		'wordpress-beta-tester/wp-beta-tester.php',
		'gutenberg/gutenberg.php',
	];

	/**
	 * If one of those options is enabled it will show the notice.
	 *
	 * @var string[]
	 */
	private $promotion_options = [
		'elementor_beta',
	];

	/**
	 * @inheritDoc
	 */
	public function should_print() {
		return current_user_can( 'install_plugins' ) &&
			! User::is_user_notice_viewed( static::ID ) &&
			! $this->is_elementor_dev_installed() &&
			! $this->is_install_screen() &&
			(
				$this->has_at_least_one_active_experiment() ||
				$this->is_promotion_plugins_installed() ||
				$this->is_promotion_options_enabled()
			);
	}

	/**
	 * @inheritDoc
	 */
	public function get_config() {
		return [
			'id' => static::ID,
			'title' => esc_html__( 'Elementor Developer Edition', 'elementor' ),
			'description' => __(
				'Get a sneak peek at our in progress development versions, and help us improve Elementor to perfection. Developer Edition releases contain experimental functionality for testing purposes.',
				'elementor'
			),
			'button' => [
				'text' => esc_html__( 'Install & Activate', 'elementor' ),
				'url' => wp_nonce_url(
					self_admin_url( 'update.php?action=install-plugin&plugin=' . static::PLUGIN_SLUG ),
					'install-plugin_' . static::PLUGIN_SLUG
				),
				'type' => 'cta',
			],
		];
	}

	/**
	 * Return all the plugins names.
	 *
	 * This method is protected so it can be mocked in tests.
	 *
	 * @return array
	 */
	protected function get_plugins() {
		if ( ! $this->plugins ) {
			$this->plugins = array_keys( get_plugins() );
		}

		return $this->plugins;
	}

	/**
	 * Checks if elementor dev is installed
	 *
	 * @return bool
	 */
	private function is_elementor_dev_installed() {
		return in_array( static::PLUGIN_NAME, $this->get_plugins(), true );
	}

	/**
	 * Checks if the admin screen is install screen.
	 *
	 * @return bool
	 */
	private function is_install_screen() {
		$screen = get_current_screen();

		if ( ! $screen ) {
			return false;
		}

		return 'update' === $screen->id;
	}

	/**
	 * Checks if is one of the promotion plugins is installed
	 *
	 * @return bool
	 */
	private function is_promotion_plugins_installed() {
		return array_reduce( $this->promotion_plugins, function ( $should_show_notice, $plugin_name ) {
			if ( $should_show_notice ) {
				return true;
			}

			return in_array( $plugin_name, $this->get_plugins(), true );
		}, false );
	}

	/**
	 * Checks if is one of the promotion options is enable.
	 *
	 * @return bool
	 */
	private function is_promotion_options_enabled() {
		return array_reduce( $this->promotion_options, function ( $should_show_notice, $option ) {
			if ( $should_show_notice ) {
				return true;
			}

			return 'yes' === get_option( $option, 'no' );
		}, false );
	}

	/**
	 * Checks if as at least one active experiment (The state must be "active" and not default-active).
	 *
	 * @return bool
	 */
	private function has_at_least_one_active_experiment() {
		foreach ( Plugin::$instance->experiments->get_features() as $feature_name => $feature ) {
			if ( Experiments_Manager::STATE_ACTIVE === $feature['state'] ) {
				return true;
			}
		}

		return false;
	}
}
core/admin/admin.php000064400000055442151327220420010375 0ustar00<?php
namespace Elementor\Core\Admin;

use Elementor\Api;
use Elementor\Beta_Testers;
use Elementor\Core\Base\App;
use Elementor\Plugin;
use Elementor\Settings;
use Elementor\User;
use Elementor\Utils;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

class Admin extends App {

	/**
	 * Get module name.
	 *
	 * Retrieve the module name.
	 *
	 * @since 2.3.0
	 * @access public
	 *
	 * @return string Module name.
	 */
	public function get_name() {
		return 'admin';
	}

	/**
	 * @since 2.2.0
	 * @access public
	 */
	public function maybe_redirect_to_getting_started() {
		if ( ! get_transient( 'elementor_activation_redirect' ) ) {
			return;
		}

		if ( wp_doing_ajax() ) {
			return;
		}

		delete_transient( 'elementor_activation_redirect' );

		if ( is_network_admin() || isset( $_GET['activate-multi'] ) ) {
			return;
		}

		global $wpdb;

		$has_elementor_page = ! ! $wpdb->get_var( "SELECT `post_id` FROM `{$wpdb->postmeta}` WHERE `meta_key` = '_elementor_edit_mode' LIMIT 1;" );

		if ( $has_elementor_page ) {
			return;
		}

		wp_safe_redirect( admin_url( 'admin.php?page=elementor-getting-started' ) );

		exit;
	}

	/**
	 * Enqueue admin scripts.
	 *
	 * Registers all the admin scripts and enqueues them.
	 *
	 * Fired by `admin_enqueue_scripts` action.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function enqueue_scripts() {
		wp_register_script(
			'elementor-admin',
			$this->get_js_assets_url( 'admin' ),
			[
				'elementor-common',
			],
			ELEMENTOR_VERSION,
			true
		);

		wp_enqueue_script( 'elementor-admin' );

		$this->print_config();
	}

	/**
	 * Enqueue admin styles.
	 *
	 * Registers all the admin styles and enqueues them.
	 *
	 * Fired by `admin_enqueue_scripts` action.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function enqueue_styles() {
		$direction_suffix = is_rtl() ? '-rtl' : '';

		wp_register_style(
			'elementor-admin',
			$this->get_css_assets_url( 'admin' . $direction_suffix ),
			[
				'elementor-common',
			],
			ELEMENTOR_VERSION
		);

		wp_enqueue_style( 'elementor-admin' );

		// It's for upgrade notice.
		// TODO: enqueue this just if needed.
		add_thickbox();
	}

	/**
	 * Print switch mode button.
	 *
	 * Adds a switch button in post edit screen (which has cpt support). To allow
	 * the user to switch from the native WordPress editor to Elementor builder.
	 *
	 * Fired by `edit_form_after_title` action.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param \WP_Post $post The current post object.
	 */
	public function print_switch_mode_button( $post ) {
		// Exit if Gutenberg are active.
		if ( did_action( 'enqueue_block_editor_assets' ) ) {
			return;
		}

		$document = Plugin::$instance->documents->get( $post->ID );

		if ( ! $document || ! $document->is_editable_by_current_user() ) {
			return;
		}

		wp_nonce_field( basename( __FILE__ ), '_elementor_edit_mode_nonce' );
		?>
		<div id="elementor-switch-mode">
			<input id="elementor-switch-mode-input" type="hidden" name="_elementor_post_mode" value="<?php echo esc_attr( $document->is_built_with_elementor() ); ?>" />
			<button id="elementor-switch-mode-button" type="button" class="button button-primary button-hero">
				<span class="elementor-switch-mode-on">
					<i class="eicon-arrow-<?php echo ( is_rtl() ) ? 'right' : 'left'; ?>" aria-hidden="true"></i>
					<?php echo esc_html__( 'Back to WordPress Editor', 'elementor' ); ?>
				</span>
				<span class="elementor-switch-mode-off">
					<i class="eicon-elementor-square" aria-hidden="true"></i>
					<?php echo esc_html__( 'Edit with Elementor', 'elementor' ); ?>
				</span>
			</button>
		</div>
		<div id="elementor-editor">
			<a id="elementor-go-to-edit-page-link" href="<?php echo esc_url( $document->get_edit_url() ); ?>">
				<div id="elementor-editor-button" class="button button-primary button-hero">
					<i class="eicon-elementor-square" aria-hidden="true"></i>
					<?php echo esc_html__( 'Edit with Elementor', 'elementor' ); ?>
				</div>
				<div class="elementor-loader-wrapper">
					<div class="elementor-loader">
						<div class="elementor-loader-boxes">
							<div class="elementor-loader-box"></div>
							<div class="elementor-loader-box"></div>
							<div class="elementor-loader-box"></div>
							<div class="elementor-loader-box"></div>
						</div>
					</div>
					<div class="elementor-loading-title"><?php echo esc_html__( 'Loading', 'elementor' ); ?></div>
				</div>
			</a>
		</div>
		<?php
	}

	/**
	 * Save post.
	 *
	 * Flag the post mode when the post is saved.
	 *
	 * Fired by `save_post` action.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param int $post_id Post ID.
	 */
	public function save_post( $post_id ) {
		if ( ! isset( $_POST['_elementor_edit_mode_nonce'] ) || ! wp_verify_nonce( $_POST['_elementor_edit_mode_nonce'], basename( __FILE__ ) ) ) {
			return;
		}

		if ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) {
			return;
		}

		Plugin::$instance->documents->get( $post_id )->set_is_built_with_elementor( ! empty( $_POST['_elementor_post_mode'] ) );
	}

	/**
	 * Add Elementor post state.
	 *
	 * Adds a new "Elementor" post state to the post table.
	 *
	 * Fired by `display_post_states` filter.
	 *
	 * @since 1.8.0
	 * @access public
	 *
	 * @param array    $post_states An array of post display states.
	 * @param \WP_Post $post        The current post object.
	 *
	 * @return array A filtered array of post display states.
	 */
	public function add_elementor_post_state( $post_states, $post ) {
		$document = Plugin::$instance->documents->get( $post->ID );

		if ( $document && $document->is_built_with_elementor() && $document->is_editable_by_current_user() ) {
			$post_states['elementor'] = esc_html__( 'Elementor', 'elementor' );
		}

		return $post_states;
	}

	/**
	 * Body status classes.
	 *
	 * Adds CSS classes to the admin body tag.
	 *
	 * Fired by `admin_body_class` filter.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param string $classes Space-separated list of CSS classes.
	 *
	 * @return string Space-separated list of CSS classes.
	 */
	public function body_status_classes( $classes ) {
		global $pagenow;

		if ( in_array( $pagenow, [ 'post.php', 'post-new.php' ], true ) && Utils::is_post_support() ) {
			$post = get_post();

			$document = Plugin::$instance->documents->get( $post->ID );

			$mode_class = $document && $document->is_built_with_elementor() ? 'elementor-editor-active' : 'elementor-editor-inactive';

			$classes .= ' ' . $mode_class;
		}

		return $classes;
	}

	/**
	 * Plugin action links.
	 *
	 * Adds action links to the plugin list table
	 *
	 * Fired by `plugin_action_links` filter.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param array $links An array of plugin action links.
	 *
	 * @return array An array of plugin action links.
	 */
	public function plugin_action_links( $links ) {
		$settings_link = sprintf( '<a href="%1$s">%2$s</a>', admin_url( 'admin.php?page=' . Settings::PAGE_ID ), esc_html__( 'Settings', 'elementor' ) );

		array_unshift( $links, $settings_link );

		$links['go_pro'] = sprintf( '<a href="%1$s" target="_blank" class="elementor-plugins-gopro">%2$s</a>', Utils::get_pro_link( 'https://elementor.com/pro/?utm_source=wp-plugins&utm_campaign=gopro&utm_medium=wp-dash' ), esc_html__( 'Go Pro', 'elementor' ) );

		return $links;
	}

	/**
	 * Plugin row meta.
	 *
	 * Adds row meta links to the plugin list table
	 *
	 * Fired by `plugin_row_meta` filter.
	 *
	 * @since 1.1.4
	 * @access public
	 *
	 * @param array  $plugin_meta An array of the plugin's metadata, including
	 *                            the version, author, author URI, and plugin URI.
	 * @param string $plugin_file Path to the plugin file, relative to the plugins
	 *                            directory.
	 *
	 * @return array An array of plugin row meta links.
	 */
	public function plugin_row_meta( $plugin_meta, $plugin_file ) {
		if ( ELEMENTOR_PLUGIN_BASE === $plugin_file ) {
			$row_meta = [
				'docs' => '<a href="https://go.elementor.com/docs-admin-plugins/" aria-label="' . esc_attr( esc_html__( 'View Elementor Documentation', 'elementor' ) ) . '" target="_blank">' . esc_html__( 'Docs & FAQs', 'elementor' ) . '</a>',
				'ideo' => '<a href="https://go.elementor.com/yt-admin-plugins/" aria-label="' . esc_attr( esc_html__( 'View Elementor Video Tutorials', 'elementor' ) ) . '" target="_blank">' . esc_html__( 'Video Tutorials', 'elementor' ) . '</a>',
			];

			$plugin_meta = array_merge( $plugin_meta, $row_meta );
		}

		return $plugin_meta;
	}

	/**
	 * Admin footer text.
	 *
	 * Modifies the "Thank you" text displayed in the admin footer.
	 *
	 * Fired by `admin_footer_text` filter.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param string $footer_text The content that will be printed.
	 *
	 * @return string The content that will be printed.
	 */
	public function admin_footer_text( $footer_text ) {
		$current_screen = get_current_screen();
		$is_elementor_screen = ( $current_screen && false !== strpos( $current_screen->id, 'elementor' ) );

		if ( $is_elementor_screen ) {
			$footer_text = sprintf(
				/* translators: 1: Elementor, 2: Link to plugin review */
				__( 'Enjoyed %1$s? Please leave us a %2$s rating. We really appreciate your support!', 'elementor' ),
				'<strong>' . esc_html__( 'Elementor', 'elementor' ) . '</strong>',
				'<a href="https://go.elementor.com/admin-review/" target="_blank">&#9733;&#9733;&#9733;&#9733;&#9733;</a>'
			);
		}

		return $footer_text;
	}

	/**
	 * Register dashboard widgets.
	 *
	 * Adds a new Elementor widgets to WordPress dashboard.
	 *
	 * Fired by `wp_dashboard_setup` action.
	 *
	 * @since 1.9.0
	 * @access public
	 */
	public function register_dashboard_widgets() {
		wp_add_dashboard_widget( 'e-dashboard-overview', esc_html__( 'Elementor Overview', 'elementor' ), [ $this, 'elementor_dashboard_overview_widget' ] );

		// Move our widget to top.
		global $wp_meta_boxes;

		$dashboard = $wp_meta_boxes['dashboard']['normal']['core'];
		$ours = [
			'e-dashboard-overview' => $dashboard['e-dashboard-overview'],
		];

		$wp_meta_boxes['dashboard']['normal']['core'] = array_merge( $ours, $dashboard ); // phpcs:ignore WordPress.WP.GlobalVariablesOverride.Prohibited
	}

	/**
	 * Elementor dashboard widget.
	 *
	 * Displays the Elementor dashboard widget.
	 *
	 * Fired by `wp_add_dashboard_widget` function.
	 *
	 * @since 1.9.0
	 * @access public
	 */
	public function elementor_dashboard_overview_widget() {
		$elementor_feed = Api::get_feed_data();
		$recently_edited_query = Utils::get_recently_edited_posts_query();

		if ( User::is_current_user_can_edit_post_type( 'page' ) ) {
			$create_new_label = esc_html__( 'Create New Page', 'elementor' );
			$create_new_post_type = 'page';
		} elseif ( User::is_current_user_can_edit_post_type( 'post' ) ) {
			$create_new_label = esc_html__( 'Create New Post', 'elementor' );
			$create_new_post_type = 'post';
		}
		?>
		<div class="e-dashboard-widget">
			<div class="e-overview__header">
				<div class="e-overview__logo"><div class="e-logo-wrapper"><i class="eicon-elementor"></i></div></div>
				<div class="e-overview__versions">
					<span class="e-overview__version"><?php echo esc_html__( 'Elementor', 'elementor' ); ?> v<?php echo ELEMENTOR_VERSION; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?></span>
					<?php
					/**
					 * Elementor dashboard widget after the version.
					 *
					 * Fires after Elementor version display in the dashboard widget.
					 *
					 * @since 1.9.0
					 */
					do_action( 'elementor/admin/dashboard_overview_widget/after_version' );
					?>
				</div>
				<?php if ( ! empty( $create_new_post_type ) ) : ?>
					<div class="e-overview__create">
						<a href="<?php echo esc_url( Plugin::$instance->documents->get_create_new_post_url( $create_new_post_type ) ); ?>" class="button"><span aria-hidden="true" class="dashicons dashicons-plus"></span> <?php echo esc_html( $create_new_label ); ?></a>
					</div>
				<?php endif; ?>
			</div>
			<?php if ( $recently_edited_query->have_posts() ) : ?>
				<div class="e-overview__recently-edited">
					<h3 class="e-heading e-divider_bottom"><?php echo esc_html__( 'Recently Edited', 'elementor' ); ?></h3>
					<ul class="e-overview__posts">
						<?php
						while ( $recently_edited_query->have_posts() ) :
							$recently_edited_query->the_post();
							$document = Plugin::$instance->documents->get( get_the_ID() );

							$date = date_i18n( _x( 'M jS', 'Dashboard Overview Widget Recently Date', 'elementor' ), get_the_modified_time( 'U' ) );
							?>
							<li class="e-overview__post">
								<a href="<?php echo esc_attr( $document->get_edit_url() ); ?>" class="e-overview__post-link"><?php echo esc_html( get_the_title() ); ?> <span class="dashicons dashicons-edit"></span></a> <span><?php echo $date; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>, <?php the_time(); ?></span>
							</li>
						<?php endwhile; ?>
					</ul>
				</div>
			<?php endif; ?>
			<?php if ( ! empty( $elementor_feed ) ) : ?>
				<div class="e-overview__feed">
					<h3 class="e-heading e-divider_bottom"><?php echo esc_html__( 'News & Updates', 'elementor' ); ?></h3>
					<ul class="e-overview__posts">
						<?php foreach ( $elementor_feed as $feed_item ) : ?>
							<li class="e-overview__post">
								<a href="<?php echo esc_url( $feed_item['url'] ); ?>" class="e-overview__post-link" target="_blank">
									<?php if ( ! empty( $feed_item['badge'] ) ) : ?>
										<span class="e-overview__badge"><?php echo esc_html( $feed_item['badge'] ); ?></span>
									<?php endif; ?>
									<?php echo esc_html( $feed_item['title'] ); ?>
								</a>
								<p class="e-overview__post-description"><?php echo esc_html( $feed_item['excerpt'] ); ?></p>
							</li>
						<?php endforeach; ?>
					</ul>
				</div>
			<?php endif; ?>
			<div class="e-overview__footer e-divider_top">
				<ul>
					<?php foreach ( $this->get_dashboard_overview_widget_footer_actions() as $action_id => $action ) : ?>
						<li class="e-overview__<?php echo esc_attr( $action_id ); ?>"><a href="<?php echo esc_attr( $action['link'] ); ?>" target="_blank"><?php echo esc_html( $action['title'] ); ?> <span class="screen-reader-text"><?php echo esc_html__( '(opens in a new window)', 'elementor' ); ?></span><span aria-hidden="true" class="dashicons dashicons-external"></span></a></li>
					<?php endforeach; ?>
				</ul>
			</div>
		</div>
		<?php
	}

	/**
	 * Get elementor dashboard overview widget footer actions.
	 *
	 * Retrieves the footer action links displayed in elementor dashboard widget.
	 *
	 * @since 1.9.0
	 * @access private
	 */
	private function get_dashboard_overview_widget_footer_actions() {
		$base_actions = [
			'blog' => [
				'title' => esc_html__( 'Blog', 'elementor' ),
				'link' => 'https://go.elementor.com/overview-widget-blog/',
			],
			'help' => [
				'title' => esc_html__( 'Help', 'elementor' ),
				'link' => 'https://go.elementor.com/overview-widget-docs/',
			],
		];

		$additions_actions = [
			'go-pro' => [
				'title' => esc_html__( 'Go Pro', 'elementor' ),
				'link' => Utils::get_pro_link( 'https://elementor.com/pro/?utm_source=wp-overview-widget&utm_campaign=gopro&utm_medium=wp-dash' ),
			],
		];

		// Visible to all core users when Elementor Pro is not installed.
		$additions_actions['find_an_expert'] = [
			'title' => esc_html__( 'Find an Expert', 'elementor' ),
			'link' => 'https://go.elementor.com/go-pro-find-an-expert',
		];

		/**
		 * Dashboard widget footer actions.
		 *
		 * Filters the additions actions displayed in Elementor dashboard widget.
		 *
		 * Developers can add new action links to Elementor dashboard widget
		 * footer using this filter.
		 *
		 * @since 1.9.0
		 *
		 * @param array $additions_actions Elementor dashboard widget footer actions.
		 */
		$additions_actions = apply_filters( 'elementor/admin/dashboard_overview_widget/footer_actions', $additions_actions );

		$actions = $base_actions + $additions_actions;

		return $actions;
	}

	/**
	 * Admin action new post.
	 *
	 * When a new post action is fired the title is set to 'Elementor' and the post ID.
	 *
	 * Fired by `admin_action_elementor_new_post` action.
	 *
	 * @since 1.9.0
	 * @access public
	 */
	public function admin_action_new_post() {
		check_admin_referer( 'elementor_action_new_post' );

		if ( empty( $_GET['post_type'] ) ) {
			$post_type = 'post';
		} else {
			$post_type = $_GET['post_type'];
		}

		if ( ! User::is_current_user_can_edit_post_type( $post_type ) ) {
			return;
		}

		if ( empty( $_GET['template_type'] ) ) {
			$type = 'post';
		} else {
			$type = sanitize_text_field( $_GET['template_type'] );
		}

		$post_data = isset( $_GET['post_data'] ) ? $_GET['post_data'] : [];

		$meta = [];

		/**
		 * Create new post meta data.
		 *
		 * Filters the meta data of any new post created.
		 *
		 * @since 2.0.0
		 *
		 * @param array $meta Post meta data.
		 */
		$meta = apply_filters( 'elementor/admin/create_new_post/meta', $meta );

		$post_data['post_type'] = $post_type;

		$document = Plugin::$instance->documents->create( $type, $post_data, $meta );

		if ( is_wp_error( $document ) ) {
			wp_die( $document ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
		}

		wp_redirect( $document->get_edit_url() );

		die;
	}

	/**
	 * @since 2.3.0
	 * @access public
	 */
	public function add_new_template_template() {
		Plugin::$instance->common->add_template( ELEMENTOR_PATH . 'includes/admin-templates/new-template.php' );
	}

	/**
	 * @access public
	 */
	public function enqueue_new_template_scripts() {
		$suffix = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min';

		wp_enqueue_script(
			'elementor-new-template',
			ELEMENTOR_ASSETS_URL . 'js/new-template' . $suffix . '.js',
			[],
			ELEMENTOR_VERSION,
			true
		);
	}

	/**
	 * @since 2.6.0
	 * @access public
	 */
	public function add_beta_tester_template() {
		Plugin::$instance->common->add_template( ELEMENTOR_PATH . 'includes/admin-templates/beta-tester.php' );
	}

	/**
	 * @access public
	 */
	public function enqueue_beta_tester_scripts() {
		$suffix = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min';

		wp_enqueue_script(
			'elementor-beta-tester',
			ELEMENTOR_ASSETS_URL . 'js/beta-tester' . $suffix . '.js',
			[],
			ELEMENTOR_VERSION,
			true
		);
	}

	/**
	 * @access public
	 */
	public function init_new_template() {
		if ( 'edit-elementor_library' !== get_current_screen()->id ) {
			return;
		}

		// Allow plugins to add their templates on admin_head.
		add_action( 'admin_head', [ $this, 'add_new_template_template' ] );
		add_action( 'admin_enqueue_scripts', [ $this, 'enqueue_new_template_scripts' ] );
	}

	public function version_update_warning( $current_version, $new_version ) {
		$current_version_minor_part = explode( '.', $current_version )[1];
		$new_version_minor_part = explode( '.', $new_version )[1];

		if ( $current_version_minor_part === $new_version_minor_part ) {
			return;
		}
		?>
		<hr class="e-major-update-warning__separator" />
		<div class="e-major-update-warning">
			<div class="e-major-update-warning__icon">
				<i class="eicon-info-circle"></i>
			</div>
			<div>
				<div class="e-major-update-warning__title">
					<?php echo esc_html__( 'Heads up, Please backup before upgrade!', 'elementor' ); ?>
				</div>
				<div class="e-major-update-warning__message">
					<?php
						printf(
							/* translators: %1$s Link open tag, %2$s: Link close tag. */
							esc_html__( 'The latest update includes some substantial changes across different areas of the plugin. We highly recommend you %1$sbackup your site before upgrading%2$s, and make sure you first update in a staging environment', 'elementor' ),
							'<a href="https://go.elementor.com/wp-dash-update-backup/">',
							'</a>'
						);
					?>
				</div>
			</div>
		</div>
		<?php
	}

	/**
	 * @access public
	 */
	public function init_beta_tester( $current_screen ) {
		if ( ( 'toplevel_page_elementor' === $current_screen->base ) || 'elementor_page_elementor-tools' === $current_screen->id ) {
			add_action( 'admin_head', [ $this, 'add_beta_tester_template' ] );
			add_action( 'admin_enqueue_scripts', [ $this, 'enqueue_beta_tester_scripts' ] );
		}
	}

	/**
	 * Admin constructor.
	 *
	 * Initializing Elementor in WordPress admin.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function __construct() {
		Plugin::$instance->init_common();

		$this->add_component( 'feedback', new Feedback() );
		$this->add_component( 'canary-deployment', new Canary_Deployment() );
		$this->add_component( 'admin-notices', new Admin_Notices() );

		add_action( 'admin_init', [ $this, 'maybe_redirect_to_getting_started' ] );

		add_action( 'admin_enqueue_scripts', [ $this, 'enqueue_scripts' ] );
		add_action( 'admin_enqueue_scripts', [ $this, 'enqueue_styles' ] );

		add_action( 'edit_form_after_title', [ $this, 'print_switch_mode_button' ] );
		add_action( 'save_post', [ $this, 'save_post' ] );

		add_filter( 'display_post_states', [ $this, 'add_elementor_post_state' ], 10, 2 );

		add_filter( 'plugin_action_links_' . ELEMENTOR_PLUGIN_BASE, [ $this, 'plugin_action_links' ] );
		add_filter( 'plugin_row_meta', [ $this, 'plugin_row_meta' ], 10, 2 );

		add_filter( 'admin_body_class', [ $this, 'body_status_classes' ] );
		add_filter( 'admin_footer_text', [ $this, 'admin_footer_text' ] );

		// Register Dashboard Widgets.
		add_action( 'wp_dashboard_setup', [ $this, 'register_dashboard_widgets' ] );

		// Admin Actions
		add_action( 'admin_action_elementor_new_post', [ $this, 'admin_action_new_post' ] );

		add_action( 'current_screen', [ $this, 'init_new_template' ] );
		add_action( 'current_screen', [ $this, 'init_beta_tester' ] );

		add_action( 'in_plugin_update_message-' . ELEMENTOR_PLUGIN_BASE, function( $plugin_data ) {
			$this->version_update_warning( ELEMENTOR_VERSION, $plugin_data['new_version'] );
		} );
	}

	/**
	 * @since 2.3.0
	 * @access protected
	 */
	protected function get_init_settings() {
		$beta_tester_email = get_user_meta( get_current_user_id(), User::BETA_TESTER_META_KEY, true );
		$elementor_beta = get_option( 'elementor_beta', 'no' );
		$all_introductions = User::get_introduction_meta();
		$beta_tester_signup_dismissed = array_key_exists( Beta_Testers::BETA_TESTER_SIGNUP, $all_introductions );

		$settings = [
			'home_url' => home_url(),
			'settings_url' => Settings::get_url(),
			'user' => [
				'introduction' => User::get_introduction_meta(),
			],
			'beta_tester' => [
				'beta_tester_signup' => Beta_Testers::BETA_TESTER_SIGNUP,
				'has_email' => $beta_tester_email,
				'option_enabled' => 'no' !== $elementor_beta,
				'signup_dismissed' => $beta_tester_signup_dismissed,
			],
		];

		/**
		 * Localize settings.
		 *
		 * Filters the initial localize settings in the admin.
		 *
		 * WordPress has it's own way to pass localized data from PHP (backend) to
		 * JS (frontend). Elementor uses this method to pass localize data in the
		 * admin. This hook can be used to add more localized settings in addition
		 * to the initial Elementor settings.
		 *
		 * @since 2.3.0
		 *
		 * @param array $settings Initial localize settings.
		 */
		$settings = apply_filters( 'elementor/admin/localize_settings', $settings );

		return $settings;
	}
}
core/admin/canary-deployment.php000064400000011655151327220420012736 0ustar00<?php
namespace Elementor\Core\Admin;

use Elementor\Api;
use Elementor\Core\Base\Module;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

class Canary_Deployment extends Module {

	const CURRENT_VERSION = ELEMENTOR_VERSION;
	const PLUGIN_BASE = ELEMENTOR_PLUGIN_BASE;

	private $canary_deployment_info = null;

	/**
	 * Get module name.
	 *
	 * Retrieve the module name.
	 *
	 * @since  2.6.0
	 * @access public
	 *
	 * @return string Module name.
	 */
	public function get_name() {
		return 'canary-deployment';
	}

	/**
	 * Check version.
	 *
	 * @since 2.6.0
	 * @access public
	 *
	 * @param object $transient Plugin updates data.
	 *
	 * @return object Plugin updates data.
	 */
	public function check_version( $transient ) {
		// First transient before the real check.
		if ( ! isset( $transient->response ) ) {
			return $transient;
		}

		// Placeholder
		$stable_version = '0.0.0';

		if ( ! empty( $transient->response[ static::PLUGIN_BASE ]->new_version ) ) {
			$stable_version = $transient->response[ static::PLUGIN_BASE ]->new_version;
		}

		if ( null === $this->canary_deployment_info ) {
			$this->canary_deployment_info = $this->get_canary_deployment_info();
		}

		// Can be false - if canary version is not available.
		if ( empty( $this->canary_deployment_info ) ) {
			return $transient;
		}

		if ( ! version_compare( $this->canary_deployment_info['new_version'], $stable_version, '>' ) ) {
			return $transient;
		}

		$canary_deployment_info = $this->canary_deployment_info;

		// Most of plugin info comes from the $transient but on first check - the response is empty.
		if ( ! empty( $transient->response[ static::PLUGIN_BASE ] ) ) {
			$canary_deployment_info = array_merge( (array) $transient->response[ static::PLUGIN_BASE ], $canary_deployment_info );
		}

		$transient->response[ static::PLUGIN_BASE ] = (object) $canary_deployment_info;

		return $transient;
	}

	protected function get_canary_deployment_remote_info( $force ) {
		return Api::get_canary_deployment_info( $force );
	}

	private function get_canary_deployment_info() {
		global $pagenow;

		$force = 'update-core.php' === $pagenow && isset( $_GET['force-check'] );

		$canary_deployment = $this->get_canary_deployment_remote_info( $force );

		if ( empty( $canary_deployment['plugin_info']['new_version'] ) ) {
			return false;
		}

		$canary_version = $canary_deployment['plugin_info']['new_version'];

		if ( version_compare( $canary_version, static::CURRENT_VERSION, '<=' ) ) {
			return false;
		}

		if ( ! empty( $canary_deployment['conditions'] ) && ! $this->check_conditions( $canary_deployment['conditions'] ) ) {
			return false;
		}

		return $canary_deployment['plugin_info'];
	}

	private function check_conditions( $groups ) {
		foreach ( $groups as $group ) {
			if ( $this->check_group( $group ) ) {
				return true;
			}
		}

		return false;
	}

	private function check_group( $group ) {
		$is_or_relation = ! empty( $group['relation'] ) && 'OR' === $group['relation'];
		unset( $group['relation'] );
		$result = false;

		foreach ( $group as $condition ) {
			// Reset results for each condition.
			$result = false;
			switch ( $condition['type'] ) {
				case 'wordpress': // phpcs:ignore WordPress.WP.CapitalPDangit.Misspelled
					// include an unmodified $wp_version
					include ABSPATH . WPINC . '/version.php';
					$result = version_compare( $wp_version, $condition['version'], $condition['operator'] );
					break;
				case 'multisite':
					$result = is_multisite() === $condition['multisite'];
					break;
				case 'language':
					$in_array = in_array( get_locale(), $condition['languages'], true );
					$result = 'in' === $condition['operator'] ? $in_array : ! $in_array;
					break;
				case 'plugin':
					if ( ! empty( $condition['plugin_file'] ) ) {
						$plugin_file = $condition['plugin_file']; // For PHP Unit tests.
					} else {
						$plugin_file = WP_PLUGIN_DIR . '/' . $condition['plugin']; // Default.
					}

					$version = '';

					if ( is_plugin_active( $condition['plugin'] ) && file_exists( $plugin_file ) ) {
						$plugin_data = get_plugin_data( $plugin_file );
						if ( isset( $plugin_data['Version'] ) ) {
							$version = $plugin_data['Version'];
						}
					}

					$result = version_compare( $version, $condition['version'], $condition['operator'] );
					break;
				case 'theme':
					$theme = wp_get_theme();
					if ( wp_get_theme()->parent() ) {
						$theme = wp_get_theme()->parent();
					}

					if ( $theme->get_template() === $condition['theme'] ) {
						$version = $theme->version;
					} else {
						$version = '';
					}

					$result = version_compare( $version, $condition['version'], $condition['operator'] );
					break;

			}

			if ( ( $is_or_relation && $result ) || ( ! $is_or_relation && ! $result ) ) {
				return $result;
			}
		}

		return $result;
	}

	/**
	 * @since 2.6.0
	 * @access public
	 */
	public function __construct() {
		add_filter( 'pre_set_site_transient_update_plugins', [ $this, 'check_version' ] );
	}
}
core/admin/ui/components/button.php000064400000004565151327220420013422 0ustar00<?php
namespace Elementor\Core\Admin\UI\Components;

use Elementor\Core\Base\Base_Object;
use Elementor\Utils;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

class Button extends Base_Object {

	private $options;
	/**
	 * @inheritDoc
	 */
	public function get_name() {
		return 'admin-button';
	}

	public function print_button() {
		$options = $this->get_options();

		if ( empty( $options['text'] ) ) {
			return;
		}

		$html_tag = ! empty( $options['url'] ) ? 'a' : 'button';
		$before = '';
		$icon = '';
		$attributes = [];

		if ( ! empty( $options['icon'] ) ) {
			$icon = '<i class="' . esc_attr( $options['icon'] ) . '"></i>';
		}

		$classes = $options['classes'];

		$default_classes = $this->get_default_options( 'classes' );

		$classes = array_merge( $classes, $default_classes );

		if ( ! empty( $options['type'] ) ) {
			$classes[] = 'e-button--' . $options['type'];
		}

		if ( ! empty( $options['variant'] ) ) {
			$classes[] = 'e-button--' . $options['variant'];
		}

		if ( ! empty( $options['before'] ) ) {
			$before = '<span>' . wp_kses_post( $options['before'] ) . '</span>';
		}

		if ( ! empty( $options['url'] ) ) {
			$attributes['href'] = $options['url'];
			if ( $options['new_tab'] ) {
				$attributes['target'] = '_blank';
			}
		}

		$attributes['class'] = $classes;

		$html = $before . '<' . $html_tag . ' ' . Utils::render_html_attributes( $attributes ) . '>';
		$html .= $icon;
		$html .= '<span>' . sanitize_text_field( $options['text'] ) . '</span>';
		$html .= '</' . $html_tag . '>';

		echo $html; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
	}

	/**
	 * @param string $option Optional default is null
	 * @return array|mixed
	 */
	private function get_options( $option = null ) {
		return $this->get_items( $this->options, $option );
	}

	/**
	 * @param null $option
	 * @return array
	 */
	private function get_default_options( $option = null ) {
		$default_options = [
			'classes' => [ 'e-button' ],
			'icon' => '',
			'new_tab' => false,
			'text' => '',
			'type' => '',
			'url' => '',
			'variant' => '',
			'before' => '',
		];

		if ( null !== $option && -1 !== in_array( $option, $default_options ) ) {
			return $default_options[ $option ];
		}

		return $default_options;
	}

	public function __construct( array $options ) {
		$this->options = $this->merge_properties( $this->get_default_options(), $options );
	}
}
core/admin/admin-notices.php000064400000042305151327220420012031 0ustar00<?php
namespace Elementor\Core\Admin;

use Elementor\Api;
use Elementor\Core\Admin\UI\Components\Button;
use Elementor\Core\Base\Module;
use Elementor\Plugin;
use Elementor\Tracker;
use Elementor\User;
use Elementor\Utils;
use Elementor\Core\Admin\Notices\Base_Notice;
use Elementor\Core\Admin\Notices\Elementor_Dev_Notice;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

class Admin_Notices extends Module {

	private $plain_notices = [
		'api_notice',
		'api_upgrade_plugin',
		'tracker',
		'rate_us_feedback',
		'woocommerce_promote',
		'cf7_promote',
		'mc4wp_promote',
		'popup_maker_promote',
		'role_manager_promote',
	];

	private $elementor_pages_count = null;

	private $install_time = null;

	private $current_screen_id = null;

	private function get_notices() {
		$notices = [
			new Elementor_Dev_Notice(),
		];

		/**
		 * Admin notices.
		 *
		 * Filters Elementor admin notices.
		 *
		 * This hook can be used by external developers to manage existing
		 * admin notice or to add new notices for Elementor addons.
		 *
		 * @param array $notices A list of notice classes.
		 */
		$notices = apply_filters( 'elementor/core/admin/notices', $notices );

		return $notices;
	}

	private function get_install_time() {
		if ( null === $this->install_time ) {
			$this->install_time = Plugin::$instance->get_install_time();
		}

		return $this->install_time;
	}

	private function get_elementor_pages_count() {
		if ( null === $this->elementor_pages_count ) {
			$elementor_pages = new \WP_Query( [
				'post_type' => 'any',
				'post_status' => 'publish',
				'fields' => 'ids',
				'update_post_meta_cache' => false,
				'update_post_term_cache' => false,
				'meta_key' => '_elementor_edit_mode',
				'meta_value' => 'builder',
			] );

			$this->elementor_pages_count = $elementor_pages->post_count;
		}

		return $this->elementor_pages_count;
	}

	private function notice_api_upgrade_plugin() {
		$upgrade_notice = Api::get_upgrade_notice();
		if ( empty( $upgrade_notice ) ) {
			return false;
		}

		if ( ! current_user_can( 'update_plugins' ) ) {
			return false;
		}

		if ( ! in_array( $this->current_screen_id, [ 'toplevel_page_elementor', 'edit-elementor_library', 'elementor_page_elementor-system-info', 'dashboard' ], true ) ) {
			return false;
		}

		// Check if have any upgrades.
		$update_plugins = get_site_transient( 'update_plugins' );

		$has_remote_update_package = ! ( empty( $update_plugins ) || empty( $update_plugins->response[ ELEMENTOR_PLUGIN_BASE ] ) || empty( $update_plugins->response[ ELEMENTOR_PLUGIN_BASE ]->package ) );

		if ( ! $has_remote_update_package && empty( $upgrade_notice['update_link'] ) ) {
			return false;
		}

		if ( $has_remote_update_package ) {
			$product = $update_plugins->response[ ELEMENTOR_PLUGIN_BASE ];

			$details_url = self_admin_url( 'plugin-install.php?tab=plugin-information&plugin=' . $product->slug . '&section=changelog&TB_iframe=true&width=600&height=800' );
			$upgrade_url = wp_nonce_url( self_admin_url( 'update.php?action=upgrade-plugin&plugin=' . ELEMENTOR_PLUGIN_BASE ), 'upgrade-plugin_' . ELEMENTOR_PLUGIN_BASE );
			$new_version = $product->new_version;
		} else {
			$upgrade_url = $upgrade_notice['update_link'];
			$details_url = $upgrade_url;

			$new_version = $upgrade_notice['version'];
		}

		// Check if have upgrade notices to show.
		if ( version_compare( ELEMENTOR_VERSION, $upgrade_notice['version'], '>=' ) ) {
			return false;
		}

		$notice_id = 'upgrade_notice_' . $upgrade_notice['version'];
		if ( User::is_user_notice_viewed( $notice_id ) ) {
			return false;
		}

		$message = sprintf(
			/* translators: 1: Details URL, 2: Accessibility text, 3: Version number, 4: Update URL, 5: Accessibility text. */
			__( 'There is a new version of Elementor Page Builder available. <a href="%1$s" class="thickbox open-plugin-details-modal" aria-label="%2$s">View version %3$s details</a> or <a href="%4$s" class="update-link" aria-label="%5$s">update now</a>.', 'elementor' ),
			esc_url( $details_url ),
			esc_attr( sprintf(
				/* translators: %s: Elementor version. */
				__( 'View Elementor version %s details', 'elementor' ),
				$new_version
			) ),
			$new_version,
			esc_url( $upgrade_url ),
			esc_attr( esc_html__( 'Update Elementor Now', 'elementor' ) )
		);

		$options = [
			'title' => esc_html__( 'Update Notification', 'elementor' ),
			'description' => $message,
			'button' => [
				'icon_classes' => 'dashicons dashicons-update',
				'text' => esc_html__( 'Update Now', 'elementor' ),
				'url' => $upgrade_url,
			],
			'id' => $notice_id,
		];

		$this->print_admin_notice( $options );

		return true;
	}

	private function notice_api_notice() {
		$admin_notice = Api::get_admin_notice();
		if ( empty( $admin_notice ) ) {
			return false;
		}

		if ( ! current_user_can( 'manage_options' ) ) {
			return false;
		}

		if ( ! in_array( $this->current_screen_id, [ 'toplevel_page_elementor', 'edit-elementor_library', 'elementor_page_elementor-system-info', 'dashboard' ], true ) ) {
			return false;
		}

		$notice_id = 'admin_notice_api_' . $admin_notice['notice_id'];
		if ( User::is_user_notice_viewed( $notice_id ) ) {
			return false;
		}

		$options = [
			'title' => esc_html__( 'Update Notification', 'elementor' ),
			'description' => $admin_notice['notice_text'],
			'id' => $notice_id,
		];

		$this->print_admin_notice( $options );

		return true;
	}

	private function notice_tracker() {
		if ( ! current_user_can( 'manage_options' ) ) {
			return false;
		}

		// Show tracker notice after 24 hours from installed time.
		if ( strtotime( '+24 hours', $this->get_install_time() ) > time() ) {
			return false;
		}

		if ( '1' === get_option( 'elementor_tracker_notice' ) ) {
			return false;
		}

		if ( Tracker::is_allow_track() ) {
			return false;
		}

		if ( 2 > $this->get_elementor_pages_count() ) {
			return false;
		}

		// TODO: Skip for development env.
		$optin_url = wp_nonce_url( add_query_arg( 'elementor_tracker', 'opt_into' ), 'opt_into' );
		$optout_url = wp_nonce_url( add_query_arg( 'elementor_tracker', 'opt_out' ), 'opt_out' );

		$tracker_description_text = esc_html__( 'Become a super contributor by opting in to share non-sensitive plugin data and to receive periodic email updates from us.', 'elementor' );

		/**
		 * Tracker admin description text.
		 *
		 * Filters the admin notice text for non-sensitive data collection.
		 *
		 * @since 1.0.0
		 *
		 * @param string $tracker_description_text Description text displayed in admin notice.
		 */
		$tracker_description_text = apply_filters( 'elementor/tracker/admin_description_text', $tracker_description_text );

		$message = esc_html( $tracker_description_text ) . ' <a href="https://go.elementor.com/usage-data-tracking/" target="_blank">' . esc_html__( 'Learn more.', 'elementor' ) . '</a>';

		$options = [
			'title' => esc_html__( 'Love using Elementor?', 'elementor' ),
			'description' => $message,
			'button' => [
				'text' => esc_html__( 'Sure! I\'d love to help', 'elementor' ),
				'url' => $optin_url,
				'type' => 'cta',
			],
			'button_secondary' => [
				'text' => esc_html__( 'No thanks', 'elementor' ),
				'url' => $optout_url,
				'variant' => 'outline',
				'type' => 'cta',
			],
		];

		$this->print_admin_notice( $options );

		return true;
	}

	private function notice_rate_us_feedback() {
		$notice_id = 'rate_us_feedback';

		if ( ! current_user_can( 'manage_options' ) ) {
			return false;
		}

		if ( 'dashboard' !== $this->current_screen_id || User::is_user_notice_viewed( $notice_id ) ) {
			return false;
		}

		if ( 10 >= $this->get_elementor_pages_count() ) {
			return false;
		}

		$dismiss_url = add_query_arg( [
			'action' => 'elementor_set_admin_notice_viewed',
			'notice_id' => esc_attr( $notice_id ),
		], admin_url( 'admin-post.php' ) );

		$options = [
			'title' => esc_html__( 'Congrats!', 'elementor' ),
			'description' => esc_html__( 'You created over 10 pages with Elementor. Great job! If you can spare a minute,
				please help us by leaving a five star review on WordPress.org.', 'elementor' ),
			'id' => $notice_id,
			'button' => [
				'text' => esc_html__( 'Happy To Help', 'elementor' ),
				'url' => 'https://go.elementor.com/admin-review/',
				'new_tab' => true,
				'type' => 'cta',
			],
			'button_secondary' => [
				'text' => esc_html__( 'Hide Notification', 'elementor' ),
				'classes' => [ 'e-notice-dismiss' ],
				'url' => esc_url_raw( $dismiss_url ),
				'new_tab' => true,
				'type' => 'cta',
			],
		];

		$this->print_admin_notice( $options );

		return true;
	}

	private function notice_woocommerce_promote() {
		$notice_id = 'woocommerce_promote';

		if ( Utils::has_pro() || ! function_exists( 'WC' ) ) {
			return false;
		}

		if ( ! current_user_can( 'install_plugins' ) ) {
			return false;
		}

		if ( ! in_array( $this->current_screen_id, [ 'edit-product', 'woocommerce_page_wc-settings' ], true ) || User::is_user_notice_viewed( $notice_id ) ) {
			return false;
		}

		if ( strtotime( '2019-08-01' ) > $this->get_install_time() ) {
			return false;
		}

		if ( strtotime( '+24 hours', $this->get_install_time() ) > time() ) {
			return false;
		}

		$options = [
			'title' => esc_html__( 'Using WooCommerce?', 'elementor' ),
			'description' => esc_html__( 'With Elementor Pro’s WooCommerce Builder, you’ll be able to design your store without coding!', 'elementor' ),
			'id' => $notice_id,

			'button' => [
				'text' => esc_html__( 'Learn More', 'elementor' ),
				'url' => 'https://go.elementor.com/plugin-promotion-woocommerce/',
				'new_tab' => true,
				'type' => 'cta',
			],
		];

		$this->print_admin_notice( $options );

		return true;
	}

	private function notice_cf7_promote() {
		$notice_id = 'cf7_promote';

		if ( Utils::has_pro() || ! defined( 'WPCF7_VERSION' ) ) {
			return false;
		}

		if ( ! current_user_can( 'install_plugins' ) ) {
			return false;
		}

		if ( ! in_array( $this->current_screen_id, [ 'toplevel_page_wpcf7', 'contact_page_wpcf7-integration' ], true ) || User::is_user_notice_viewed( $notice_id ) ) {
			return false;
		}

		if ( strtotime( '2019-08-01' ) > $this->get_install_time() ) {
			return false;
		}

		if ( strtotime( '+24 hours', $this->get_install_time() ) > time() ) {
			return false;
		}

		$options = [
			'title' => esc_html__( 'Using Elementor & Contact Form 7?', 'elementor' ),
			'description' => esc_html__( 'Try out Elementor Pro and design your forms visually with one powerful tool.', 'elementor' ),

			'id' => $notice_id,
			'button' => [
				'text' => esc_html__( 'Learn More', 'elementor' ),
				'url' => 'https://go.elementor.com/plugin-promotion-contactform7/',
				'new_tab' => true,
				'type' => 'cta',
			],
		];

		$this->print_admin_notice( $options );

		return true;
	}

	private function notice_mc4wp_promote() {
		$notice_id = 'mc4wp_promote';

		if ( Utils::has_pro() || ! defined( 'MC4WP_VERSION' ) ) {
			return false;
		}

		if ( ! current_user_can( 'install_plugins' ) ) {
			return false;
		}

		if ( ! in_array( $this->current_screen_id, [ 'toplevel_page_mailchimp-for-wp', 'mc4wp_page_mailchimp-for-wp-forms', 'mc4wp_page_mailchimp-for-wp-integrations', 'mc4wp_page_mailchimp-for-wp-other', 'mc4wp_page_mailchimp-for-wp-extensions' ], true ) || User::is_user_notice_viewed( $notice_id ) ) {
			return false;
		}

		if ( strtotime( '2019-08-01' ) > $this->get_install_time() ) {
			return false;
		}

		if ( strtotime( '+24 hours', $this->get_install_time() ) > time() ) {
			return false;
		}

		$options = [
			'title' => esc_html__( 'Want to design better MailChimp forms?', 'elementor' ),
			'description' => esc_html__( 'Use Elementor Pro and enjoy unlimited integrations, visual design, templates and more.', 'elementor' ),
			'dismissible' => true,
			'id' => $notice_id,

			'button' => [
				'text' => esc_html__( 'Learn More', 'elementor' ),
				'url' => 'https://go.elementor.com/plugin-promotion-mc4wp/',
				'new_tab' => true,
				'type' => 'cta',
			],
		];

		$this->print_admin_notice( $options );

		return true;
	}

	private function notice_popup_maker_promote() {
		$notice_id = 'popup_maker_promote';

		if ( Utils::has_pro() || ! class_exists( 'Popup_Maker' ) ) {
			return false;
		}

		if ( ! current_user_can( 'install_plugins' ) ) {
			return false;
		}

		if ( ! in_array( $this->current_screen_id, [ 'edit-popup', 'popup_page_pum-settings' ], true ) || User::is_user_notice_viewed( $notice_id ) ) {
			return false;
		}

		if ( strtotime( '2019-08-01' ) > $this->get_install_time() ) {
			return false;
		}

		if ( strtotime( '+24 hours', $this->get_install_time() ) > time() ) {
			return false;
		}

		$options = [
			'title' => esc_html__( 'Using popups on your site?', 'elementor' ),
			'description' => esc_html__( 'Build outstanding popups using Elementor Pro and get more leads, sales and subscribers.', 'elementor' ),
			'dismissible' => true,
			'id' => $notice_id,

			'button' => [
				'text' => esc_html__( 'Learn More', 'elementor' ),
				'url' => 'https://go.elementor.com/plugin-promotion-popupmaker/',
				'new_tab' => true,
				'type' => 'cta',
			],
		];

		$this->print_admin_notice( $options );

		return true;
	}

	private function notice_role_manager_promote() {
		$notice_id = 'role_manager_promote';

		if ( Utils::has_pro() ) {
			return false;
		}

		if ( ! current_user_can( 'manage_options' ) ) {
			return false;
		}

		if ( 'elementor_page_elementor-role-manager' !== $this->current_screen_id || User::is_user_notice_viewed( $notice_id ) ) {
			return false;
		}

		$users = new \WP_User_Query( [
			'fields' => 'ID',
			'number' => 10,
		] );

		if ( 5 > $users->get_total() ) {
			return false;
		}

		$options = [
			'title' => esc_html__( 'Managing a multi-user site?', 'elementor' ),
			'description' => esc_html__( 'With Elementor Pro, you can control user access and make sure no one messes up your design.', 'elementor' ),
			'id' => $notice_id,

			'button' => [
				'text' => esc_html__( 'Learn More', 'elementor' ),
				'url' => 'https://go.elementor.com/plugin-promotion-role-manager/',
				'new_tab' => true,
				'type' => 'cta',
			],
		];

		$this->print_admin_notice( $options );

		return true;
	}

	public function print_admin_notice( array $options ) {
		$default_options = [
			'id' => null,
			'title' => '',
			'description' => '',
			'classes' => [ 'notice', 'e-notice' ], // We include WP's default notice class so it will be properly handled by WP's js handler
			'type' => '',
			'dismissible' => true,
			'icon' => 'eicon-elementor',
			'button' => [],
			'button_secondary' => [],
		];

		$options = array_replace_recursive( $default_options, $options );

		$notice_classes = $options['classes'];
		$dismiss_button = '';
		$icon = '';

		if ( $options['type'] ) {
			$notice_classes[] = 'e-notice--' . $options['type'];
		}

		if ( $options['dismissible'] ) {
			$label = esc_html__( 'Dismiss', 'elementor' );
			$notice_classes[] = 'e-notice--dismissible';
			$dismiss_button = '<i class="e-notice__dismiss" role="button" aria-label="' . $label . '" tabindex="0"></i>';
		}

		if ( $options['icon'] ) {
			$notice_classes[] = 'e-notice--extended';
			$icon = '<div class="e-notice__icon-wrapper"><i class="' . esc_attr( $options['icon'] ) . '" aria-hidden="true"></i></div>';
		}

		$wrapper_attributes = [
			'class' => $notice_classes,
		];

		if ( $options['id'] ) {
			$wrapper_attributes['data-notice_id'] = $options['id'];
		}
		?>
		<div <?php Utils::print_html_attributes( $wrapper_attributes ); ?>>
			<?php echo $dismiss_button; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>
			<div class="e-notice__aside">
				<?php echo $icon; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>
			</div>
			<div class="e-notice__content">
			<?php if ( $options['title'] ) { ?>
				<h3><?php echo wp_kses_post( $options['title'] ); ?></h3>
			<?php } ?>

			<?php if ( $options['description'] ) { ?>
				<p><?php echo wp_kses_post( $options['description'] ); ?></p>
			<?php } ?>

			<?php if ( ! empty( $options['button']['text'] ) || ! empty( $options['button_secondary']['text'] ) ) { ?>
				<div class="e-notice__actions">
					<?php
					foreach ( [ $options['button'], $options['button_secondary'] ] as $index => $button_settings ) {
						if ( empty( $button_settings['variant'] ) && $index ) {
							$button_settings['variant'] = 'outline';
						}

						if ( empty( $button_settings['text'] ) ) {
							continue;
						}

						$button = new Button( $button_settings );
						$button->print_button();
					} ?>
				</div>
			<?php } ?>
			</div>
		</div>
		<?php }

	public function admin_notices() {
		$this->install_time = Plugin::$instance->get_install_time();
		$this->current_screen_id = get_current_screen()->id;

		foreach ( $this->plain_notices as $notice ) {
			$method_callback = "notice_{$notice}";
			if ( $this->$method_callback() ) {
				return;
			}
		}

		/** @var Base_Notice $notice_instance */
		foreach ( $this->get_notices() as $notice_instance ) {
			if ( ! $notice_instance->should_print() ) {
				continue;
			}

			$this->print_admin_notice( $notice_instance->get_config() );

			// It exits the method to make sure it prints only one notice.
			return;
		}
	}

	/**
	 * @since 2.9.0
	 * @access public
	 */
	public function __construct() {
		add_action( 'admin_notices', [ $this, 'admin_notices' ], 20 );
	}

	/**
	 * Get module name.
	 *
	 * Retrieve the module name.
	 *
	 * @since  2.9.0
	 * @access public
	 *
	 * @return string Module name.
	 */
	public function get_name() {
		return 'admin-notices';
	}
}
core/admin/feedback.php000064400000013677151327220420011035 0ustar00<?php
namespace Elementor\Core\Admin;

use Elementor\Api;
use Elementor\Core\Base\Module;
use Elementor\Plugin;
use Elementor\Tracker;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

class Feedback extends Module {

	/**
	 * @since 2.2.0
	 * @access public
	 */
	public function __construct() {
		add_action( 'current_screen', function () {
			if ( ! $this->is_plugins_screen() ) {
				return;
			}

			add_action( 'admin_enqueue_scripts', [ $this, 'enqueue_feedback_dialog_scripts' ] );
		} );

		// Ajax.
		add_action( 'wp_ajax_elementor_deactivate_feedback', [ $this, 'ajax_elementor_deactivate_feedback' ] );
	}

	/**
	 * Get module name.
	 *
	 * Retrieve the module name.
	 *
	 * @since  1.7.0
	 * @access public
	 *
	 * @return string Module name.
	 */
	public function get_name() {
		return 'feedback';
	}

	/**
	 * Enqueue feedback dialog scripts.
	 *
	 * Registers the feedback dialog scripts and enqueues them.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function enqueue_feedback_dialog_scripts() {
		add_action( 'admin_footer', [ $this, 'print_deactivate_feedback_dialog' ] );

		$suffix = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min';

		wp_register_script(
			'elementor-admin-feedback',
			ELEMENTOR_ASSETS_URL . 'js/admin-feedback' . $suffix . '.js',
			[
				'elementor-common',
			],
			ELEMENTOR_VERSION,
			true
		);

		wp_enqueue_script( 'elementor-admin-feedback' );
	}

	/**
	 * @since 2.3.0
	 * @deprecated 3.1.0
	 */
	public function localize_feedback_dialog_settings() {
		Plugin::$instance->modules_manager->get_modules( 'dev-tools' )->deprecation->deprecated_function( __METHOD__, '3.1.0' );

		return [];
	}


	/**
	 * Print deactivate feedback dialog.
	 *
	 * Display a dialog box to ask the user why he deactivated Elementor.
	 *
	 * Fired by `admin_footer` filter.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function print_deactivate_feedback_dialog() {
		$deactivate_reasons = [
			'no_longer_needed' => [
				'title' => esc_html__( 'I no longer need the plugin', 'elementor' ),
				'input_placeholder' => '',
			],
			'found_a_better_plugin' => [
				'title' => esc_html__( 'I found a better plugin', 'elementor' ),
				'input_placeholder' => esc_html__( 'Please share which plugin', 'elementor' ),
			],
			'couldnt_get_the_plugin_to_work' => [
				'title' => esc_html__( 'I couldn\'t get the plugin to work', 'elementor' ),
				'input_placeholder' => '',
			],
			'temporary_deactivation' => [
				'title' => esc_html__( 'It\'s a temporary deactivation', 'elementor' ),
				'input_placeholder' => '',
			],
			'elementor_pro' => [
				'title' => esc_html__( 'I have Elementor Pro', 'elementor' ),
				'input_placeholder' => '',
				'alert' => esc_html__( 'Wait! Don\'t deactivate Elementor. You have to activate both Elementor and Elementor Pro in order for the plugin to work.', 'elementor' ),
			],
			'other' => [
				'title' => esc_html__( 'Other', 'elementor' ),
				'input_placeholder' => esc_html__( 'Please share the reason', 'elementor' ),
			],
		];

		?>
		<div id="elementor-deactivate-feedback-dialog-wrapper">
			<div id="elementor-deactivate-feedback-dialog-header">
				<i class="eicon-elementor-square" aria-hidden="true"></i>
				<span id="elementor-deactivate-feedback-dialog-header-title"><?php echo esc_html__( 'Quick Feedback', 'elementor' ); ?></span>
			</div>
			<form id="elementor-deactivate-feedback-dialog-form" method="post">
				<?php
				wp_nonce_field( '_elementor_deactivate_feedback_nonce' );
				?>
				<input type="hidden" name="action" value="elementor_deactivate_feedback" />

				<div id="elementor-deactivate-feedback-dialog-form-caption"><?php echo esc_html__( 'If you have a moment, please share why you are deactivating Elementor:', 'elementor' ); ?></div>
				<div id="elementor-deactivate-feedback-dialog-form-body">
					<?php foreach ( $deactivate_reasons as $reason_key => $reason ) : ?>
						<div class="elementor-deactivate-feedback-dialog-input-wrapper">
							<input id="elementor-deactivate-feedback-<?php echo esc_attr( $reason_key ); ?>" class="elementor-deactivate-feedback-dialog-input" type="radio" name="reason_key" value="<?php echo esc_attr( $reason_key ); ?>" />
							<label for="elementor-deactivate-feedback-<?php echo esc_attr( $reason_key ); ?>" class="elementor-deactivate-feedback-dialog-label"><?php echo esc_html( $reason['title'] ); ?></label>
							<?php if ( ! empty( $reason['input_placeholder'] ) ) : ?>
								<input class="elementor-feedback-text" type="text" name="reason_<?php echo esc_attr( $reason_key ); ?>" placeholder="<?php echo esc_attr( $reason['input_placeholder'] ); ?>" />
							<?php endif; ?>
							<?php if ( ! empty( $reason['alert'] ) ) : ?>
								<div class="elementor-feedback-text"><?php echo esc_html( $reason['alert'] ); ?></div>
							<?php endif; ?>
						</div>
					<?php endforeach; ?>
				</div>
			</form>
		</div>
		<?php
	}

	/**
	 * Ajax elementor deactivate feedback.
	 *
	 * Send the user feedback when Elementor is deactivated.
	 *
	 * Fired by `wp_ajax_elementor_deactivate_feedback` action.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function ajax_elementor_deactivate_feedback() {
		if ( ! isset( $_POST['_wpnonce'] ) || ! wp_verify_nonce( $_POST['_wpnonce'], '_elementor_deactivate_feedback_nonce' ) ) {
			wp_send_json_error();
		}

		$reason_text = '';
		$reason_key = '';

		if ( ! empty( $_POST['reason_key'] ) ) {
			$reason_key = $_POST['reason_key'];
		}

		if ( ! empty( $_POST[ "reason_{$reason_key}" ] ) ) {
			$reason_text = $_POST[ "reason_{$reason_key}" ];
		}

		Api::send_feedback( $reason_key, $reason_text );

		wp_send_json_success();
	}

	/**
	 * @since 2.3.0
	 * @access protected
	 */
	protected function get_init_settings() {
		if ( ! $this->is_plugins_screen() ) {
			return [];
		}

		return [ 'is_tracker_opted_in' => Tracker::is_allow_track() ];
	}

	/**
	 * @since 2.3.0
	 * @access private
	 */
	private function is_plugins_screen() {
		return in_array( get_current_screen()->id, [ 'plugins', 'plugins-network' ] );
	}
}
core/wp-api.php000064400000001401151327220420007374 0ustar00<?php
namespace Elementor\Core;

use Elementor\Core\Utils\Collection;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * This class is responsible for the interaction with WordPress Core API.
 * The main benefit is making it easy to mock in testing
 * and it can help to create unit tests without the hustle of mocking WordPress itself.
 */
class Wp_Api {
	/**
	 * @var Collection
	 */
	private $plugins;

	/**
	 * @return Collection
	 */
	public function get_plugins() {
		if ( ! $this->plugins ) {
			$this->plugins = new Collection( get_plugins() );
		}

		return $this->plugins;
	}

	/**
	 * @return Collection
	 */
	public function get_active_plugins() {
		return $this->get_plugins()
			->only( get_option( 'active_plugins' ) );
	}
}
core/logger/log-reporter.php000064400000005600151327220420012104 0ustar00<?php
namespace Elementor\Core\Logger;

use Elementor\Modules\System_Info\Reporters\Base;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

/**
 * Elementor Log reporter.
 *
 * Elementor log reporter handler class is responsible for generating the
 * debug reports.
 *
 * @since 2.4.0
 */
class Log_Reporter extends Base {

	const MAX_ENTRIES = 20;
	const CLEAR_LOG_ACTION = 'elementor-clear-log';

	public function get_title() {
		$title = 'Log';

		if ( 'html' === $this->_properties['format'] && empty( $_GET[ self::CLEAR_LOG_ACTION ] ) ) { // phpcs:ignore -- nonce validation is not require here.
			$nonce = wp_create_nonce( self::CLEAR_LOG_ACTION );
			$url = add_query_arg( [
				self::CLEAR_LOG_ACTION => 1,
				'_wpnonce' => $nonce,
			] );

			$title .= '<a href="' . esc_url( $url ) . '#elementor-clear-log" class="box-title-tool">' . esc_html__( 'Clear Log', 'elementor' ) . '</a>';
			$title .= '<span id="elementor-clear-log"></span>';
		}

		return $title;
	}

	public function get_fields() {
		return [
			'log_entries' => '',
		];
	}

	public function get_log_entries() {
		/** @var \Elementor\Core\Logger\Manager $manager */
		$manager = Manager::instance();

		/** @var \Elementor\Core\Logger\Loggers\Db $logger */
		$logger = $manager->get_logger( 'db' );

		if ( ! empty( $_GET[ self::CLEAR_LOG_ACTION ] ) ) {
			if ( empty( $_GET['_wpnonce'] ) || ! wp_verify_nonce( $_GET['_wpnonce'], self::CLEAR_LOG_ACTION ) ) {
				wp_die( 'Invalid Nonce', 'Invalid Nonce', [
					'back_link' => true,
				] );
			}

			$logger->clear();
		}

		$log_string = 'No entries to display';
		$log_entries = $logger->get_formatted_log_entries( self::MAX_ENTRIES, false );

		if ( ! empty( $log_entries ) ) {
			$entries_string = '';
			foreach ( $log_entries as $key => $log_entry ) {
				if ( $log_entry['count'] ) {
					$entries_string .= '<h3>' . sprintf( '%s: showing %s of %s', $key, $log_entry['count'], $log_entry['total_count'] ) . '</h3>';
					$entries_string .= '<div class="elementor-log-entries">' . $log_entry['entries'] . '</div>';
				}
			}

			if ( ! empty( $entries_string ) ) {
				$log_string = $entries_string;
			}
		}

		return [
			'value' => $log_string,
		];
	}

	public function get_raw_log_entries() {
		$log_string = 'No entries to display';

		/** @var \Elementor\Core\Logger\Manager $manager */
		$manager = Manager::instance();
		$logger = $manager->get_logger();
		$log_entries = $logger->get_formatted_log_entries( self::MAX_ENTRIES, false );

		if ( ! empty( $log_entries ) ) {
			$entries_string = PHP_EOL;
			foreach ( $log_entries as $key => $log_entry ) {
				if ( $log_entry['count'] ) {
					$entries_string .= sprintf( '%s: showing %s of %s', $key, $log_entry['count'], $log_entry['total_count'] ) . $log_entry['entries'] . PHP_EOL;
				}
			}

			if ( ! empty( $entries_string ) ) {
				$log_string = $entries_string;
			}
		}

		return [
			'value' => $log_string,
		];
	}
}
core/logger/items/base.php000064400000012243151327220420011517 0ustar00<?php
namespace Elementor\Core\Logger\Items;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Base implements Log_Item_Interface {

	const FORMAT = 'date [type] message [meta]';
	const TRACE_FORMAT = '#key: file(line): class type function()';
	const TRACE_LIMIT = 5;

	protected $date;
	protected $type;
	protected $message;
	protected $meta = [];

	protected $times = 0;
	protected $times_dates = [];
	protected $args = [];

	public function __construct( $args ) {
		$this->date = current_time( 'mysql' );
		$this->message = ! empty( $args['message'] ) ? esc_html( $args['message'] ) : '';
		$this->type = ! empty( $args['type'] ) ? $args['type'] : 'info';
		$this->meta = ! empty( $args['meta'] ) ? $args['meta'] : [];
		$this->args = $args;

		$this->set_trace();
	}

	public function __get( $name ) {
		if ( property_exists( $this, $name ) ) {
			return $this->{$name};
		}

		return '';
	}

	public function __toString() {
		$vars = get_object_vars( $this );
		return strtr( static::FORMAT, $vars );
	}

	public function jsonSerialize() {
		return [
			'class' => get_class( $this ),
			'item' => [
				'date' => $this->date,
				'message' => $this->message,
				'type' => $this->type,
				'meta' => $this->meta,
				'times' => $this->times,
				'times_dates' => $this->times_dates,
				'args' => $this->args,
			],
		];
	}

	public function deserialize( $properties ) {
		$this->date = ! empty( $properties['date'] ) && is_string( $properties['date'] ) ? $properties['date'] : '';
		$this->message = ! empty( $properties['message'] ) && is_string( $properties['message'] ) ? $properties['message'] : '';
		$this->type = ! empty( $properties['type'] ) && is_string( $properties['type'] ) ? $properties['type'] : '';
		$this->meta = ! empty( $properties['meta'] ) && is_array( $properties['meta'] ) ? $properties['meta'] : [];
		$this->times = ! empty( $properties['times'] ) && is_string( $properties['times'] ) ? $properties['times'] : '';
		$this->times_dates = ! empty( $properties['times_dates'] ) && is_array( $properties['times_dates'] ) ? $properties['times_dates'] : [];
		$this->args = ! empty( $properties['args'] ) && is_array( $properties['args'] ) ? $properties['args'] : [];
	}

	/**
	 * @return Log_Item_Interface | null
	 */
	public static function from_json( $str ) {
		$obj = json_decode( $str, true );
		if ( ! array_key_exists( 'class', $obj ) ) {
			return null;
		}
		$class = $obj['class'];
		if ( class_exists( $class ) ) {
			/** @var Base $item */
			$item = new $class( $obj['item']['message'] );
			$item->deserialize( $obj['item'] );
			return $item;
		}

		return null;
	}

	public function to_formatted_string( $output_format = 'html' ) {
		$vars = get_object_vars( $this );
		$format = static::FORMAT;
		if ( 'html' === $output_format ) {
			$format = str_replace( 'message', '<strong>message</strong>', static::FORMAT );
		}
		if ( empty( $vars['meta'] ) ) {
			$format = str_replace( '[meta]', '', $format );
		} else {
			$vars['meta'] = stripslashes( var_export( $vars['meta'], true ) ); // @codingStandardsIgnoreLine
		}
		return strtr( $format, $vars );
	}

	public function get_fingerprint() {
		$unique_key = $this->type . $this->message . var_export( $this->meta, true ); // @codingStandardsIgnoreLine
		//info messages are not be aggregated:
		if ( 'info' === $this->type ) {
			$unique_key .= $this->date;
		}
		return md5( $unique_key );
	}

	public function increase_times( $item, $truncate = true ) {
		$this->times++;
		$this->times_dates[] = $item->date;

		if ( $truncate && ( self::MAX_LOG_ENTRIES < count( $this->times_dates ) ) ) {
			$this->times_dates = array_slice( $this->times_dates, -self::MAX_LOG_ENTRIES );
		}
	}

	public function format( $format = 'html' ) {
		$trace = $this->format_trace();
		if ( empty( $trace ) ) {
			return $this->to_formatted_string( $format );
		}
		$copy = clone $this;
		$copy->meta['trace'] = $trace;
		return $copy->to_formatted_string( $format );
	}

	public function get_name() {
		return 'Log';
	}

	private function format_trace() {
		$trace = empty( $this->meta['trace'] ) ? '' : $this->meta['trace'];

		if ( is_string( $trace ) ) {
			return $trace;
		}

		$trace_str = '';
		foreach ( $trace as $key => $trace_line ) {
			$format = static::TRACE_FORMAT;
			$trace_line['key'] = $key;
			if ( empty( $trace_line['file'] ) ) {
				$format = str_replace( 'file(line): ', '', $format );
			}

			$trace_str .= PHP_EOL . strtr( $format, $trace_line );
			$trace_str .= empty( $trace_line['args'] ) ? '' : var_export( $trace_line['args'], true ); // @codingStandardsIgnoreLine
		}

		return $trace_str . PHP_EOL;
	}

	private function set_trace() {
		if ( ! empty( $this->args['trace'] ) && true === $this->args['trace'] ) {
			$limit = empty( $this->args['trace_limit'] ) ? static::TRACE_LIMIT : $this->args['trace_limit'];

			$stack = debug_backtrace( DEBUG_BACKTRACE_IGNORE_ARGS ); // @codingStandardsIgnoreLine

			while ( ! empty( $stack ) && ! empty( $stack[0]['file'] ) && ( false !== strpos( $stack[0]['file'], 'core' . DIRECTORY_SEPARATOR . 'logger' ) ) ) {
				array_shift( $stack );
			}

			$this->meta['trace'] = array_slice( $stack, 0, $limit );

			return;
		}

		if ( is_array( $this->args ) ) {
			unset( $this->args['trace'] );
		}
	}
}
core/logger/items/file.php000064400000001720151327220420011522 0ustar00<?php
namespace Elementor\Core\Logger\Items;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class File extends Base {

	const FORMAT = 'date [type X times][file:line] message [meta]';

	protected $file;
	protected $line;

	public function __construct( $args ) {
		parent::__construct( $args );

		$this->file = empty( $args['file'] ) ? '' : $args['file'];
		$this->line = empty( $args['line'] ) ? '' : $args['line'];
	}

	public function jsonSerialize() {
		$json_arr = parent::jsonSerialize();
		$json_arr['file'] = $this->file;
		$json_arr['line'] = $this->line;
		return $json_arr;
	}

	public function deserialize( $properties ) {
		parent::deserialize( $properties );
		$this->file = ! empty( $properties['file'] ) && is_string( $properties['file'] ) ? $properties['file'] : '';
		$this->line = ! empty( $properties['line'] ) && is_string( $properties['line'] ) ? $properties['line'] : '';
	}

	public function get_name() {
		return 'File';
	}
}
core/logger/items/log-item-interface.php000064400000002307151327220420014260 0ustar00<?php
namespace Elementor\Core\Logger\Items;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

/**
 * Interface Log_Item_Interface
 *
 * @package Elementor\Core\Logger
 *
 * @property string $date
 * @property string $type
 * @property string $message
 * @property int $times
 * @property array $meta
 * @property array $times_dates
 * @property array $args
 *
 */

interface Log_Item_Interface extends \JsonSerializable {

	const MAX_LOG_ENTRIES = 42;

	/**
	 * Log_Item_Interface constructor.
	 *
	 * @param array $args
	 */
	public function __construct( $args );

	/**
	 * @param string $name
	 *
	 * @return string
	 */
	public function __get( $name );

	/**
	 * @return string
	 */
	public function __toString();

	/**
	 * @param $str
	 * @return Log_Item_Interface | null
	 */
	public static function from_json( $str );

	/**
	 * @param string $format
	 * @return string
	 */
	public function format( $format = 'html' );

	/**
	 * @return string
	 */
	public function get_fingerprint();

	/**
	 * @param Log_Item_Interface $item
	 * @param bool               $truncate
	 */
	public function increase_times( $item, $truncate = true );

	/**
	 * @return string
	 */
	public function get_name();
}
core/logger/items/php.php000064400000000412151327220420011367 0ustar00<?php
namespace Elementor\Core\Logger\Items;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class PHP extends File {

	const FORMAT = 'PHP: date [type X times][file::line] message [meta]';

	public function get_name() {
		return 'PHP';
	}
}
core/logger/items/js.php000064400000001504151327220420011217 0ustar00<?php
namespace Elementor\Core\Logger\Items;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class JS extends File {

	const FORMAT = 'JS: date [type X times][file:line:column] message [meta]';

	protected $column;

	public function __construct( $args ) {
		parent::__construct( $args );
		$this->column = $args['column'];
		$this->file = $args['url'];
		$this->date = gmdate( 'Y-m-d H:i:s', $args['timestamp'] );
	}

	public function jsonSerialize() {
		$json_arr = parent::jsonSerialize();
		$json_arr['column'] = $this->column;
		return $json_arr;
	}

	public function deserialize( $properties ) {
		parent::deserialize( $properties );
		$this->column = ! empty( $properties['column'] ) && is_string( $properties['column'] ) ? $properties['column'] : '';
	}

	public function get_name() {
		return 'JS';
	}
}
core/logger/manager.php000064400000014431151327220420011077 0ustar00<?php
namespace Elementor\Core\Logger;

use Elementor\Core\Base\Module as BaseModule;
use Elementor\Core\Common\Modules\Ajax\Module;
use Elementor\Core\Logger\Loggers\Logger_Interface;
use Elementor\Core\Logger\Items\PHP;
use Elementor\Core\Logger\Items\JS;
use Elementor\Plugin;
use Elementor\Modules\System_Info\Module as System_Info;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Manager extends BaseModule {

	protected $loggers = [];

	protected $default_logger = '';

	public function get_name() {
		return 'log';
	}

	public function shutdown( $last_error = null ) {
		if ( ! $last_error ) {
			$last_error = error_get_last();
		}

		if ( ! $last_error ) {
			return;
		}

		if ( empty( $last_error['file'] ) ) {
			return;
		}

		$error_path = ( wp_normalize_path( $last_error['file'] ) );
		// `untrailingslashit` in order to include other plugins prefixed with elementor.
		$elementor_path = untrailingslashit( wp_normalize_path( ELEMENTOR_PATH ) );

		if ( false === strpos( $error_path, $elementor_path ) ) {
			return;
		}

		$last_error['type'] = $this->get_log_type_from_php_error( $last_error['type'] );
		$last_error['trace'] = true;

		$item = new PHP( $last_error );

		$this->get_logger()->log( $item );
	}

	public function rest_error_handler( $error_number, $error_message, $error_file, $error_line ) {
		$error = new \WP_Error( $error_number, $error_message, [
			'type' => $error_number,
			'message' => $error_message,
			'file' => $error_file,
			'line' => $error_line,
		] );

		// Notify $e.data.
		if ( ! headers_sent() ) {
			header( 'Content-Type: application/json; charset=UTF-8' );

			http_response_code( 500 );

			if ( defined( 'WP_DEBUG' ) && WP_DEBUG ) {
				echo wp_json_encode( $error->get_error_data() );
			} else {
				echo wp_json_encode( [
					'message' => 'Server error, see Elementor => System Info',
				] );
			}
		}

		$this->shutdown( $error->get_error_data() );

		exit;
	}

	public function add_system_info_report() {
		System_Info::add_report(
			'log', [
				'file_name' => __DIR__ . '/log-reporter.php',
				'class_name' => __NAMESPACE__ . '\Log_Reporter',
			]
		);
	}

	/**
	 * Javascript log.
	 *
	 * Log Elementor errors and save them in the database.
	 *
	 * Fired by `wp_ajax_elementor_js_log` action.
	 *
	 */
	public function js_log() {
		/** @var Module $ajax */
		$ajax = Plugin::$instance->common->get_component( 'ajax' );

		// PHPCS ignore is added throughout this method because nonce verification happens in the $ajax->verify_request_nonce() method.
		if ( ! $ajax->verify_request_nonce() || empty( $_POST['data'] ) ) { // phpcs:ignore WordPress.Security.NonceVerification.Missing
			wp_send_json_error();
		}

		// PHPCS - See comment above.
		array_walk_recursive( $_POST['data'], function( &$value ) { // phpcs:ignore WordPress.Security.NonceVerification.Missing
			$value = sanitize_text_field( $value );
		} );

		// PHPCS - See comment above.
		foreach ( $_POST['data'] as $error ) { // phpcs:ignore WordPress.Security.NonceVerification.Missing
			$error['type'] = Logger_Interface::LEVEL_ERROR;

			if ( ! empty( $error['customFields'] ) ) {
				$error['meta'] = $error['customFields'];
			}

			$item = new JS( $error );
			$this->get_logger()->log( $item );
		}

		wp_send_json_success();
	}

	public function register_logger( $name, $class ) {
		$this->loggers[ $name ] = $class;
	}

	public function set_default_logger( $name ) {
		if ( ! empty( $this->loggers[ $name ] ) ) {
			$this->default_logger = $name;
		}
	}

	public function register_default_loggers() {
		$this->register_logger( 'db', 'Elementor\Core\Logger\Loggers\Db' );
		$this->set_default_logger( 'db' );
	}

	/**
	 * @param string $name
	 *
	 * @return Logger_Interface
	 */
	public function get_logger( $name = '' ) {
		$this->register_loggers();

		if ( empty( $name ) || ! isset( $this->loggers[ $name ] ) ) {
			$name = $this->default_logger;
		}

		if ( ! $this->get_component( $name ) ) {
			$this->add_component( $name, new $this->loggers[ $name ]() );
		}

		return $this->get_component( $name );
	}

	/**
	 * @param string $message
	 * @param array  $args
	 *
	 * @return void
	 */
	public function log( $message, $args = [] ) {
		$this->get_logger()->log( $message, $args );
	}

	/**
	 * @param string $message
	 * @param array $args
	 *
	 * @return void
	 */
	public function info( $message, $args = [] ) {
		$this->get_logger()->info( $message, $args );
	}

	/**
	 * @param string $message
	 * @param array $args
	 *
	 * @return void
	 */
	public function notice( $message, $args = [] ) {
		$this->get_logger()->notice( $message, $args );
	}

	/**
	 * @param string $message
	 * @param array $args
	 *
	 * @return void
	 */
	public function warning( $message, $args = [] ) {
		$this->get_logger()->warning( $message, $args );
	}

	/**
	 * @param string $message
	 * @param array $args
	 *
	 * @return void
	 */
	public function error( $message, $args = [] ) {
		$this->get_logger()->error( $message, $args );
	}

	private function get_log_type_from_php_error( $type ) {
		$error_map = [
			E_CORE_ERROR => Logger_Interface::LEVEL_ERROR,
			E_ERROR => Logger_Interface::LEVEL_ERROR,
			E_USER_ERROR => Logger_Interface::LEVEL_ERROR,
			E_COMPILE_ERROR => Logger_Interface::LEVEL_ERROR,
			E_RECOVERABLE_ERROR => Logger_Interface::LEVEL_ERROR,
			E_PARSE => Logger_Interface::LEVEL_ERROR,
			E_STRICT => Logger_Interface::LEVEL_ERROR,

			E_WARNING => Logger_Interface::LEVEL_WARNING,
			E_USER_WARNING => Logger_Interface::LEVEL_WARNING,
			E_CORE_WARNING => Logger_Interface::LEVEL_WARNING,
			E_COMPILE_WARNING => Logger_Interface::LEVEL_WARNING,

			E_NOTICE => Logger_Interface::LEVEL_NOTICE,
			E_USER_NOTICE => Logger_Interface::LEVEL_NOTICE,
			E_DEPRECATED => Logger_Interface::LEVEL_NOTICE,
			E_USER_DEPRECATED => Logger_Interface::LEVEL_NOTICE,
		];

		return isset( $error_map[ $type ] ) ? $error_map[ $type ] : Logger_Interface::LEVEL_ERROR;
	}

	private function register_loggers() {
		if ( ! did_action( 'elementor/loggers/register' ) ) {
			do_action( 'elementor/loggers/register', $this );
		}
	}

	public function __construct() {
		register_shutdown_function( [ $this, 'shutdown' ] );

		add_action( 'admin_init', [ $this, 'add_system_info_report' ], 80 );

		add_action( 'wp_ajax_elementor_js_log', [ $this, 'js_log' ] );

		add_action( 'elementor/loggers/register', [ $this, 'register_default_loggers' ] );
	}
}
core/logger/loggers/logger-interface.php000064400000002364151327220420014346 0ustar00<?php
namespace Elementor\Core\Logger\Loggers;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

interface Logger_Interface {
	const LEVEL_INFO = 'info';
	const LEVEL_NOTICE = 'notice';
	const LEVEL_WARNING = 'warning';
	const LEVEL_ERROR = 'error';
	const LOG_NAME = 'elementor_log';

	/**
	 * @param string $message
	 * @param string $type
	 * @param array  $meta
	 *
	 * @return void
	 */
	public function log( $message, $type = self::LEVEL_INFO, $meta = [] );

	/**
	 * @param string $message
	 * @param array $meta
	 *
	 * @return void
	 */
	public function info( $message, $meta = [] );

	/**
	 * @param string $message
	 * @param array $meta
	 *
	 * @return void
	 */
	public function notice( $message, $meta = [] );

	/**
	 * @param string $message
	 * @param array $meta
	 *
	 * @return void
	 */
	public function warning( $message, $meta = [] );

	/**
	 * @param string $message
	 * @param array $meta
	 *
	 * @return void
	 */
	public function error( $message, $meta = [] );

	/**
	 * @param int $max_entries
	 * @param bool $table use <td> in format
	 *
	 * @return array [ 'key' => [ 'total_count' => int, 'count' => int, 'entries' => Log_Item[] ] ]
	 */
	public function get_formatted_log_entries( $max_entries, $table = true );

}
core/logger/loggers/db.php000064400000002006151327220420011507 0ustar00<?php
namespace Elementor\Core\Logger\Loggers;

use Elementor\Core\Logger\Items\Log_Item_Interface as Log_Item;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Db extends Base {

	public function save_log( Log_Item $item ) {
		$log = $this->maybe_truncate_log();

		$id = $item->get_fingerprint();

		if ( empty( $log[ $id ] ) ) {
			$log[ $id ] = $item;
		}

		$log[ $id ]->increase_times( $item );

		update_option( self::LOG_NAME, $log, 'no' );
	}

	public function clear() {
		delete_option( self::LOG_NAME );
	}

	private function maybe_truncate_log() {
		/** @var Log_Item[] $log */
		$log = $this->get_log();

		if ( Log_Item::MAX_LOG_ENTRIES < count( $log ) ) {
			$log = array_slice( $log, -Log_Item::MAX_LOG_ENTRIES );
		}

		return $log;
	}

	public function get_log() {
		// Clear cache.
		wp_cache_delete( self::LOG_NAME, 'options' );

		$log = get_option( self::LOG_NAME, [] );

		// In case the DB log is corrupted.
		if ( ! is_array( $log ) ) {
			$log = [];
		}

		return $log;
	}
}
core/logger/loggers/base.php000064400000004520151327220420012037 0ustar00<?php
namespace Elementor\Core\Logger\Loggers;

use Elementor\Core\Logger\Items\Base as Log_Item;
use Elementor\Core\Logger\Items\Log_Item_Interface as Log_Item_Interface;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

abstract class Base implements Logger_Interface {

	abstract protected function save_log( Log_Item_Interface $item );

	/**
	 * @return Log_Item_Interface[]
	 */
	abstract public function get_log();

	public function log( $item, $type = self::LEVEL_INFO, $args = [] ) {
		if ( ! $item instanceof Log_Item ) {
			$item = $this->create_item( $item, $type, $args );
		}
		$this->save_log( $item );
	}

	public function info( $message, $args = [] ) {
		$this->log( $message, self::LEVEL_INFO, $args );
	}

	public function notice( $message, $args = [] ) {
		$this->log( $message, self::LEVEL_NOTICE, $args );
	}

	public function warning( $message, $args = [] ) {
		$this->log( $message, self::LEVEL_WARNING, $args );
	}

	public function error( $message, $args = [] ) {
		$this->log( $message, self::LEVEL_ERROR, $args );
	}

	/**
	 * @param string $message
	 * @param string $type
	 * @param array  $args
	 *
	 * @return Log_Item_Interface
	 */
	private function create_item( $message, $type, $args = [] ) {
		$args['message'] = $message;
		$args['type'] = $type;

		$item = new Log_Item( $args );

		return $item;
	}

	public function get_formatted_log_entries( $max_entries, $table = true ) {
		$entries = $this->get_log();

		if ( empty( $entries ) ) {
			return [
				'All' => [
					'total_count' => 0,
					'count' => 0,
					'entries' => '',
				],
			];
		}

		$sorted_entries = [];
		$open_tag = $table ? '<tr><td>' : '';
		$close_tab = $table ? '</td></tr>' : PHP_EOL;

		$format = $table ? 'html' : 'raw';

		foreach ( $entries as $entry ) {
			/** @var Log_Item $entry */
			$sorted_entries[ $entry->get_name() ][] = $open_tag . $entry->format( $format ) . $close_tab;
		}

		$formatted_entries = [];
		foreach ( $sorted_entries as $key => $sorted_entry ) {
			$formatted_entries[ $key ]['total_count'] = count( $sorted_entry );
			$formatted_entries[ $key ]['count'] = count( $sorted_entry );
			$sorted_entry = array_slice( $sorted_entry, -$max_entries );
			$formatted_entries[ $key ]['count'] = count( $sorted_entry );
			$formatted_entries[ $key ]['entries'] = implode( $sorted_entry );
		}
		return $formatted_entries;
	}
}
core/common/modules/ajax/module.php000064400000015707151327220420013365 0ustar00<?php
namespace Elementor\Core\Common\Modules\Ajax;

use Elementor\Core\Base\Module as BaseModule;
use Elementor\Core\Utils\Exceptions;
use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor ajax manager.
 *
 * Elementor ajax manager handler class is responsible for handling Elementor
 * ajax requests, ajax responses and registering actions applied on them.
 *
 * @since 2.0.0
 */
class Module extends BaseModule {

	const NONCE_KEY = 'elementor_ajax';

	/**
	 * Ajax actions.
	 *
	 * Holds all the register ajax action.
	 *
	 * @since 2.0.0
	 * @access private
	 *
	 * @var array
	 */
	private $ajax_actions = [];

	/**
	 * Ajax requests.
	 *
	 * Holds all the register ajax requests.
	 *
	 * @since 2.0.0
	 * @access private
	 *
	 * @var array
	 */
	private $requests = [];

	/**
	 * Ajax response data.
	 *
	 * Holds all the response data for all the ajax requests.
	 *
	 * @since 2.0.0
	 * @access private
	 *
	 * @var array
	 */
	private $response_data = [];

	/**
	 * Current ajax action ID.
	 *
	 * Holds all the ID for the current ajax action.
	 *
	 * @since 2.0.0
	 * @access private
	 *
	 * @var string|null
	 */
	private $current_action_id = null;

	/**
	 * Ajax manager constructor.
	 *
	 * Initializing Elementor ajax manager.
	 *
	 * @since 2.0.0
	 * @access public
	 */
	public function __construct() {
		add_action( 'wp_ajax_elementor_ajax', [ $this, 'handle_ajax_request' ] );
	}

	/**
	 * Get module name.
	 *
	 * Retrieve the module name.
	 *
	 * @since  1.7.0
	 * @access public
	 *
	 * @return string Module name.
	 */
	public function get_name() {
		return 'ajax';
	}

	/**
	 * Register ajax action.
	 *
	 * Add new actions for a specific ajax request and the callback function to
	 * be handle the response.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @param string   $tag      Ajax request name/tag.
	 * @param callable $callback The callback function.
	 */
	public function register_ajax_action( $tag, $callback ) {
		if ( ! did_action( 'elementor/ajax/register_actions' ) ) {
			_doing_it_wrong( __METHOD__, esc_html( sprintf( 'Use `%s` hook to register ajax action.', 'elementor/ajax/register_actions' ) ), '2.0.0' );
		}

		$this->ajax_actions[ $tag ] = compact( 'tag', 'callback' );
	}

	/**
	 * Handle ajax request.
	 *
	 * Verify ajax nonce, and run all the registered actions for this request.
	 *
	 * Fired by `wp_ajax_elementor_ajax` action.
	 *
	 * @since 2.0.0
	 * @access public
	 */
	public function handle_ajax_request() {
		if ( ! $this->verify_request_nonce() ) {
			$this->add_response_data( false, esc_html__( 'Token Expired.', 'elementor' ) )
				->send_error( Exceptions::UNAUTHORIZED );
		}

		$editor_post_id = 0;

		if ( ! empty( $_REQUEST['editor_post_id'] ) ) {
			$editor_post_id = absint( $_REQUEST['editor_post_id'] );

			Plugin::$instance->db->switch_to_post( $editor_post_id );
		}

		/**
		 * Register ajax actions.
		 *
		 * Fires when an ajax request is received and verified.
		 *
		 * Used to register new ajax action handles.
		 *
		 * @since 2.0.0
		 *
		 * @param self $this An instance of ajax manager.
		 */
		do_action( 'elementor/ajax/register_actions', $this );

		$this->requests = json_decode( stripslashes( $_REQUEST['actions'] ), true );

		foreach ( $this->requests as $id => $action_data ) {
			$this->current_action_id = $id;

			if ( ! isset( $this->ajax_actions[ $action_data['action'] ] ) ) {
				$this->add_response_data( false, esc_html__( 'Action not found.', 'elementor' ), Exceptions::BAD_REQUEST );

				continue;
			}

			if ( $editor_post_id ) {
				$action_data['data']['editor_post_id'] = $editor_post_id;
			}

			try {
				$results = call_user_func( $this->ajax_actions[ $action_data['action'] ]['callback'], $action_data['data'], $this );

				if ( false === $results ) {
					$this->add_response_data( false );
				} else {
					$this->add_response_data( true, $results );
				}
			} catch ( \Exception $e ) {
				$this->add_response_data( false, $e->getMessage(), $e->getCode() );
			}
		}

		$this->current_action_id = null;

		$this->send_success();
	}

	/**
	 * Get current action data.
	 *
	 * Retrieve the data for the current ajax request.
	 *
	 * @since 2.0.1
	 * @access public
	 *
	 * @return bool|mixed Ajax request data if action exist, False otherwise.
	 */
	public function get_current_action_data() {
		if ( ! $this->current_action_id ) {
			return false;
		}

		return $this->requests[ $this->current_action_id ];
	}

	/**
	 * Create nonce.
	 *
	 * Creates a cryptographic token to
	 * give the user an access to Elementor ajax actions.
	 *
	 * @since 2.3.0
	 * @access public
	 *
	 * @return string The nonce token.
	 */
	public function create_nonce() {
		return wp_create_nonce( self::NONCE_KEY );
	}

	/**
	 * Verify request nonce.
	 *
	 * Whether the request nonce verified or not.
	 *
	 * @since 2.3.0
	 * @access public
	 *
	 * @return bool True if request nonce verified, False otherwise.
	 */
	public function verify_request_nonce() {
		return ! empty( $_REQUEST['_nonce'] ) && wp_verify_nonce( $_REQUEST['_nonce'], self::NONCE_KEY );
	}

	protected function get_init_settings() {
		return [
			'url' => admin_url( 'admin-ajax.php' ),
			'nonce' => $this->create_nonce(),
		];
	}

	/**
	 * Ajax success response.
	 *
	 * Send a JSON response data back to the ajax request, indicating success.
	 *
	 * @since 2.0.0
	 * @access protected
	 */
	private function send_success() {
		$response = [
			'success' => true,
			'data' => [
				'responses' => $this->response_data,
			],
		];

		$json = wp_json_encode( $response );

		while ( ob_get_status() ) {
			ob_end_clean();
		}

		if ( function_exists( 'gzencode' ) ) {
			$response = gzencode( $json );

			header( 'Content-Type: application/json; charset=utf-8' );
			header( 'Content-Encoding: gzip' );
			header( 'Content-Length: ' . strlen( $response ) );

			echo $response; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
		} else {
			echo $json; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
		}

		wp_die( '', '', [ 'response' => null ] );
	}

	/**
	 * Ajax failure response.
	 *
	 * Send a JSON response data back to the ajax request, indicating failure.
	 *
	 * @since 2.0.0
	 * @access protected
	 *
	 * @param null $code
	 */
	private function send_error( $code = null ) {
		wp_send_json_error( [
			'responses' => $this->response_data,
		], $code );
	}

	/**
	 * Add response data.
	 *
	 * Add new response data to the array of all the ajax requests.
	 *
	 * @since 2.0.0
	 * @access protected
	 *
	 * @param bool  $success True if the requests returned successfully, False
	 *                       otherwise.
	 * @param mixed $data    Optional. Response data. Default is null.
	 *
	 * @param int   $code    Optional. Response code. Default is 200.
	 *
	 * @return Module An instance of ajax manager.
	 */
	private function add_response_data( $success, $data = null, $code = 200 ) {
		$this->response_data[ $this->current_action_id ] = [
			'success' => $success,
			'code' => $code,
			'data' => $data,
		];

		return $this;
	}
}
core/common/modules/finder/categories/general.php000064400000003744151327220420016164 0ustar00<?php
namespace Elementor\Core\Common\Modules\Finder\Categories;

use Elementor\Core\Common\Modules\Finder\Base_Category;
use Elementor\Core\RoleManager\Role_Manager;
use Elementor\Plugin;
use Elementor\TemplateLibrary\Source_Local;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

/**
 * General Category
 *
 * Provides general items related to Elementor Admin.
 */
class General extends Base_Category {

	/**
	 * Get title.
	 *
	 * @since 2.3.0
	 * @access public
	 *
	 * @return string
	 */
	public function get_title() {
		return esc_html__( 'General', 'elementor' );
	}

	/**
	 * Get category items.
	 *
	 * @since 2.3.0
	 * @access public
	 *
	 * @param array $options
	 *
	 * @return array
	 */
	public function get_category_items( array $options = [] ) {
		return [
			'saved-templates' => [
				'title' => _x( 'Saved Templates', 'Template Library', 'elementor' ),
				'icon' => 'library-save',
				'url' => Source_Local::get_admin_url(),
				'keywords' => [ 'template', 'section', 'page', 'library' ],
			],
			'system-info' => [
				'title' => esc_html__( 'System Info', 'elementor' ),
				'icon' => 'info-circle-o',
				'url' => admin_url( 'admin.php?page=elementor-system-info' ),
				'keywords' => [ 'system', 'info', 'environment', 'elementor' ],
			],
			'role-manager' => [
				'title' => esc_html__( 'Role Manager', 'elementor' ),
				'icon' => 'person',
				'url' => Role_Manager::get_url(),
				'keywords' => [ 'role', 'manager', 'user', 'elementor' ],
			],
			'knowledge-base' => [
				'title' => esc_html__( 'Knowledge Base', 'elementor' ),
				'url' => admin_url( 'admin.php?page=go_knowledge_base_site' ),
				'keywords' => [ 'help', 'knowledge', 'docs', 'elementor' ],
			],
			'theme-builder' => [
				'title' => esc_html__( 'Theme Builder', 'elementor' ),
				'icon' => 'library-save',
				'url' => Plugin::$instance->app->get_settings( 'menu_url' ),
				'keywords' => [ 'template', 'header', 'footer', 'single', 'archive', 'search', '404', 'library' ],
			],
		];
	}
}
core/common/modules/finder/categories/edit.php000064400000005153151327220420015470 0ustar00<?php

namespace Elementor\Core\Common\Modules\Finder\Categories;

use Elementor\Core\Base\Document;
use Elementor\Core\Common\Modules\Finder\Base_Category;
use Elementor\Plugin;
use Elementor\TemplateLibrary\Source_Local;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

/**
 * Edit Category
 *
 * Provides items related to editing of posts/pages/templates etc.
 */
class Edit extends Base_Category {

	/**
	 * Get title.
	 *
	 * @since 2.3.0
	 * @access public
	 *
	 * @return string
	 */
	public function get_title() {
		return esc_html__( 'Edit', 'elementor' );
	}

	/**
	 * Is dynamic.
	 *
	 * Determine if the category is dynamic.
	 *
	 * @since 2.3.0
	 * @access public
	 *
	 * @return bool
	 */
	public function is_dynamic() {
		return true;
	}

	/**
	 * Get category items.
	 *
	 * @since 2.3.0
	 * @access public
	 *
	 * @param array $options
	 *
	 * @return array
	 */
	public function get_category_items( array $options = [] ) {
		$post_types = get_post_types( [
			'exclude_from_search' => false,
		] );

		$post_types[] = Source_Local::CPT;

		$document_types = Plugin::$instance->documents->get_document_types( [
			'is_editable' => true,
			'show_in_finder' => true,
		] );

		$recently_edited_query_args = [
			'post_type' => $post_types,
			'post_status' => [ 'publish', 'draft', 'private', 'pending', 'future' ],
			'posts_per_page' => '10',
			'meta_query' => [
				[
					'key' => '_elementor_edit_mode',
					'value' => 'builder',
				],
				[
					'relation' => 'or',
					[
						'key' => Document::TYPE_META_KEY,
						'compare' => 'NOT EXISTS',
					],
					[
						'key' => Document::TYPE_META_KEY,
						'value' => array_keys( $document_types ),
					],
				],
			],
			'orderby' => 'modified',
			's' => $options['filter'],
		];

		$recently_edited_query = new \WP_Query( $recently_edited_query_args );

		$items = [];

		/** @var \WP_Post $post */
		foreach ( $recently_edited_query->posts as $post ) {
			$document = Plugin::$instance->documents->get( $post->ID );

			if ( ! $document ) {
				continue;
			}

			$is_template = Source_Local::CPT === $post->post_type;

			$description = $document->get_title();

			$icon = 'document-file';

			if ( $is_template ) {
				$description = esc_html__( 'Template', 'elementor' ) . ' / ' . $description;

				$icon = 'post-title';
			}

			$items[] = [
				'icon' => $icon,
				'title' => esc_html( $post->post_title ),
				'description' => $description,
				'url' => $document->get_edit_url(),
				'actions' => [
					[
						'name' => 'view',
						'url' => $document->get_permalink(),
						'icon' => 'preview-medium',
					],
				],
			];
		}

		return $items;
	}
}
core/common/modules/finder/categories/site.php000064400000003765151327220420015516 0ustar00<?php
namespace Elementor\Core\Common\Modules\Finder\Categories;

use Elementor\Core\Common\Modules\Finder\Base_Category;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

/**
 * Site Category
 *
 * Provides general site items.
 */
class Site extends Base_Category {

	/**
	 * Get title.
	 *
	 * @since 2.3.0
	 * @access public
	 *
	 * @return string
	 */
	public function get_title() {
		return esc_html__( 'Site', 'elementor' );
	}

	/**
	 * Get category items.
	 *
	 * @since 2.3.0
	 * @access public
	 *
	 * @param array $options
	 *
	 * @return array
	 */
	public function get_category_items( array $options = [] ) {
		return [
			'homepage' => [
				'title' => esc_html__( 'Homepage', 'elementor' ),
				'url' => home_url(),
				'icon' => 'home-heart',
				'keywords' => [ 'home', 'page' ],
			],
			'wordpress-dashboard' => [
				'title' => esc_html__( 'Dashboard', 'elementor' ),
				'icon' => 'dashboard',
				'url' => admin_url(),
				'keywords' => [ 'dashboard', 'wordpress' ],
			],
			'wordpress-menus' => [
				'title' => esc_html__( 'Menus', 'elementor' ),
				'icon' => 'wordpress',
				'url' => admin_url( 'nav-menus.php' ),
				'keywords' => [ 'menu', 'wordpress' ],
			],
			'wordpress-themes' => [
				'title' => esc_html__( 'Themes', 'elementor' ),
				'icon' => 'wordpress',
				'url' => admin_url( 'themes.php' ),
				'keywords' => [ 'themes', 'wordpress' ],
			],
			'wordpress-customizer' => [
				'title' => esc_html__( 'Customizer', 'elementor' ),
				'icon' => 'wordpress',
				'url' => admin_url( 'customize.php' ),
				'keywords' => [ 'customizer', 'wordpress' ],
			],
			'wordpress-plugins' => [
				'title' => esc_html__( 'Plugins', 'elementor' ),
				'icon' => 'wordpress',
				'url' => admin_url( 'plugins.php' ),
				'keywords' => [ 'plugins', 'wordpress' ],
			],
			'wordpress-users' => [
				'title' => esc_html__( 'Users', 'elementor' ),
				'icon' => 'wordpress',
				'url' => admin_url( 'users.php' ),
				'keywords' => [ 'users', 'profile', 'wordpress' ],
			],
		];
	}
}
core/common/modules/finder/categories/create.php000064400000003141151327220420016001 0ustar00<?php
namespace Elementor\Core\Common\Modules\Finder\Categories;

use Elementor\Core\Common\Modules\Finder\Base_Category;
use Elementor\Plugin;
use Elementor\TemplateLibrary\Source_Local;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

/**
 * Create Category
 *
 * Provides items related to creation of new posts/pages/templates etc.
 */
class Create extends Base_Category {

	/**
	 * Get title.
	 *
	 * @since 2.3.0
	 * @access public
	 *
	 * @return string
	 */
	public function get_title() {
		return esc_html__( 'Create', 'elementor' );
	}

	/**
	 * Get category items.
	 *
	 * @since 2.3.0
	 * @access public
	 *
	 * @param array $options
	 *
	 * @return array
	 */
	public function get_category_items( array $options = [] ) {
		$elementor_supported_post_types = get_post_types_by_support( 'elementor' );

		$items = [];

		foreach ( $elementor_supported_post_types as $post_type ) {
			$post_type_object = get_post_type_object( $post_type );

			// If there is an old post type from inactive plugins
			if ( ! $post_type_object ) {
				continue;
			}

			if ( Source_Local::CPT === $post_type ) {
				$url = admin_url( Source_Local::ADMIN_MENU_SLUG . '#add_new' );
			} else {
				$url = Plugin::$instance->documents->get_create_new_post_url( $post_type );
			}

			$items[ $post_type ] = [
				/* translators: %s: Post type singular label. */
				'title' => sprintf( esc_html__( 'Add New %s', 'elementor' ), $post_type_object->labels->singular_name ),
				'icon' => 'plus-circle-o',
				'url' => $url,
				'keywords' => [ 'post', 'page', 'template', 'new', 'create' ],
			];
		}

		return $items;
	}
}
core/common/modules/finder/categories/tools.php000064400000003403151327220420015677 0ustar00<?php

namespace Elementor\Core\Common\Modules\Finder\Categories;

use Elementor\Core\Common\Modules\Finder\Base_Category;
use Elementor\Tools as ElementorTools;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

/**
 * Tools Category
 *
 * Provides items related to Elementor's tools.
 */
class Tools extends Base_Category {

	/**
	 * Get title.
	 *
	 * @since 2.3.0
	 * @access public
	 *
	 * @return string
	 */
	public function get_title() {
		return esc_html__( 'Tools', 'elementor' );
	}

	/**
	 * Get category items.
	 *
	 * @since 2.3.0
	 * @access public
	 *
	 * @param array $options
	 *
	 * @return array
	 */
	public function get_category_items( array $options = [] ) {
		$tools_url = ElementorTools::get_url();

		$items = [
			'tools' => [
				'title' => esc_html__( 'Tools', 'elementor' ),
				'icon' => 'tools',
				'url' => $tools_url,
				'keywords' => [ 'tools', 'regenerate css', 'safe mode', 'debug bar', 'sync library', 'elementor' ],
			],
			'replace-url' => [
				'title' => esc_html__( 'Replace URL', 'elementor' ),
				'icon' => 'tools',
				'url' => $tools_url . '#tab-replace_url',
				'keywords' => [ 'tools', 'replace url', 'domain', 'elementor' ],
			],
			'maintenance-mode' => [
				'title' => esc_html__( 'Maintenance Mode', 'elementor' ),
				'icon' => 'tools',
				'url' => $tools_url . '#tab-maintenance_mode',
				'keywords' => [ 'tools', 'maintenance', 'coming soon', 'elementor' ],
			],
		];

		if ( ElementorTools::can_user_rollback_versions() ) {
			$items['version-control'] = [
				'title' => esc_html__( 'Version Control', 'elementor' ),
				'icon' => 'time-line',
				'url' => $tools_url . '#tab-versions',
				'keywords' => [ 'tools', 'version', 'control', 'rollback', 'beta', 'elementor' ],
			];
		}

		return $items;
	}
}
core/common/modules/finder/categories/settings.php000064400000002510151327220420016375 0ustar00<?php

namespace Elementor\Core\Common\Modules\Finder\Categories;

use Elementor\Core\Common\Modules\Finder\Base_Category;
use Elementor\Settings as ElementorSettings;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

/**
 * Settings Category
 *
 * Provides items related to Elementor's settings.
 */
class Settings extends Base_Category {

	/**
	 * Get title.
	 *
	 * @since 2.3.0
	 * @access public
	 *
	 * @return string
	 */
	public function get_title() {
		return esc_html__( 'Settings', 'elementor' );
	}

	/**
	 * Get category items.
	 *
	 * @since 2.3.0
	 * @access public
	 *
	 * @param array $options
	 *
	 * @return array
	 */
	public function get_category_items( array $options = [] ) {
		$settings_url = ElementorSettings::get_url();

		return [
			'general-settings' => [
				'title' => esc_html__( 'General Settings', 'elementor' ),
				'url' => $settings_url,
				'keywords' => [ 'general', 'settings', 'elementor' ],
			],
			'advanced' => [
				'title' => esc_html__( 'Advanced', 'elementor' ),
				'url' => $settings_url . '#tab-advanced',
				'keywords' => [ 'advanced', 'settings', 'elementor' ],
			],
			'experiments' => [
				'title' => esc_html__( 'Experiments', 'elementor' ),
				'url' => $settings_url . '#tab-experiments',
				'keywords' => [ 'settings', 'elementor', 'experiments' ],
			],
		];
	}
}
core/common/modules/finder/module.php000064400000004717151327220420013710 0ustar00<?php

namespace Elementor\Core\Common\Modules\Finder;

use Elementor\Core\Base\Module as BaseModule;
use Elementor\Core\Common\Modules\Ajax\Module as Ajax;
use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

/**
 * Finder Module
 *
 * Responsible for initializing Elementor Finder functionality
 */
class Module extends BaseModule {

	/**
	 * Categories manager.
	 *
	 * @access private
	 *
	 * @var Categories_Manager
	 */
	private $categories_manager;

	/**
	 * Module constructor.
	 *
	 * @since 2.3.0
	 * @access public
	 */
	public function __construct() {
		$this->categories_manager = new Categories_Manager();

		$this->add_template();

		add_action( 'elementor/ajax/register_actions', [ $this, 'register_ajax_actions' ] );
	}

	/**
	 * Get name.
	 *
	 * @since 2.3.0
	 * @access public
	 *
	 * @return string
	 */
	public function get_name() {
		return 'finder';
	}

	/**
	 * Add template.
	 *
	 * @since 2.3.0
	 * @access public
	 */
	public function add_template() {
		Plugin::$instance->common->add_template( __DIR__ . '/template.php' );
	}

	/**
	 * Register ajax actions.
	 *
	 * @since 2.3.0
	 * @access public
	 *
	 * @param Ajax $ajax
	 */
	public function register_ajax_actions( Ajax $ajax ) {
		$ajax->register_ajax_action( 'finder_get_category_items', [ $this, 'ajax_get_category_items' ] );
	}

	/**
	 * Ajax get category items.
	 *
	 * @since 2.3.0
	 * @access public
	 *
	 * @param array $data
	 *
	 * @return array
	 */
	public function ajax_get_category_items( array $data ) {
		$category = $this->categories_manager->get_categories( $data['category'] );

		return $category->get_category_items( $data );
	}

	/**
	 * Get init settings.
	 *
	 * @since 2.3.0
	 * @access protected
	 *
	 * @return array
	 */
	protected function get_init_settings() {
		$categories = $this->categories_manager->get_categories();

		$categories_data = [];

		foreach ( $categories as $category_name => $category ) {
			$categories_data[ $category_name ] = array_merge( $category->get_settings(), [ 'name' => $category_name ] );
		}

		/**
		 * Finder categories.
		 *
		 * Filters the list of finder categories. This hook is used to manage Finder
		 * categories - to add new categories, remove and edit existing categories.
		 *
		 * @since 2.3.0
		 *
		 * @param array $categories_data A list of finder categories.
		 */
		$categories_data = apply_filters( 'elementor/finder/categories', $categories_data );

		return [
			'data' => $categories_data,
		];
	}
}
core/common/modules/finder/categories-manager.php000064400000003334151327220420016152 0ustar00<?php

namespace Elementor\Core\Common\Modules\Finder;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Categories_Manager {

	/**
	 * @access private
	 *
	 * @var Base_Category[]
	 */
	private $categories;

	/**
	 * @var array
	 */
	private $categories_list = [
		'edit',
		'general',
		'create',
		'site',
		'settings',
		'tools',
	];

	/**
	 * Add category.
	 *
	 * @since 2.3.0
	 * @access public
	 * @param string        $category_name
	 * @param Base_Category $category
	 */
	public function add_category( $category_name, Base_Category $category ) {
		$this->categories[ $category_name ] = $category;
	}

	/**
	 * Get categories.
	 *
	 * @since 2.3.0
	 * @access public
	 * @param string $category
	 *
	 * @return Base_Category|Base_Category[]|null
	 */
	public function get_categories( $category = '' ) {
		if ( ! $this->categories ) {
			$this->init_categories();
		}

		if ( $category ) {
			if ( isset( $this->categories[ $category ] ) ) {
				return $this->categories[ $category ];
			}

			return null;
		}

		return $this->categories;
	}

	/**
	 * Init categories.
	 *
	 * Used to initialize finder default categories.
	 * @since 2.3.0
	 * @access private
	 */
	private function init_categories() {
		foreach ( $this->categories_list as $category_name ) {
			$class_name = __NAMESPACE__ . '\Categories\\' . $category_name;

			$this->add_category( $category_name, new $class_name() );
		}

		/**
		 * Elementor Finder categories init.
		 *
		 * Fires after Elementor Finder initialize it's native categories.
		 *
		 * This hook should be used to add your own Finder categories.
		 *
		 * @since 2.3.0
		 *
		 * @param Categories_Manager $this.
		 */
		do_action( 'elementor/finder/categories/init', $this );
	}
}
core/common/modules/finder/base-category.php000064400000002233151327220420015137 0ustar00<?php

namespace Elementor\Core\Common\Modules\Finder;

use Elementor\Core\Base\Base_Object;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

/**
 * Base Category
 *
 * Base class for Elementor Finder categories.
 */
abstract class Base_Category extends Base_Object {

	/**
	 * Get title.
	 *
	 * @since 2.3.0
	 * @abstract
	 * @access public
	 *
	 * @return string
	 */
	abstract public function get_title();

	/**
	 * Get category items.
	 *
	 * @since 2.3.0
	 * @abstract
	 * @access public
	 *
	 * @param array $options
	 *
	 * @return array
	 */
	abstract public function get_category_items( array $options = [] );

	/**
	 * Is dynamic.
	 *
	 * Determine if the category is dynamic.
	 *
	 * @since 2.3.0
	 * @access public
	 *
	 * @return bool
	 */
	public function is_dynamic() {
		return false;
	}

	/**
	 * Get init settings.
	 *
	 * @since 2.3.0
	 * @access protected
	 *
	 * @return array
	 */
	protected function get_init_settings() {
		$settings = [
			'title' => $this->get_title(),
			'dynamic' => $this->is_dynamic(),
		];

		if ( ! $settings['dynamic'] ) {
			$settings['items'] = $this->get_category_items();
		}

		return $settings;
	}
}
core/common/modules/finder/template.php000064400000003331151327220420014225 0ustar00<?php

namespace Elementor\Modules\Finder;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

?>
<script type="text/template" id="tmpl-elementor-finder">
	<div id="elementor-finder__search">
		<i class="eicon-search"></i>
		<input id="elementor-finder__search__input" placeholder="<?php echo esc_html__( 'Type to find anything in Elementor', 'elementor' ); ?>" autocomplete="off">
	</div>
	<div id="elementor-finder__content"></div>
</script>

<script type="text/template" id="tmpl-elementor-finder-results-container">
	<div id="elementor-finder__no-results"><?php echo esc_html__( 'No Results Found', 'elementor' ); ?></div>
	<div id="elementor-finder__results"></div>
</script>

<script type="text/template" id="tmpl-elementor-finder__results__category">
	<div class="elementor-finder__results__category__title">{{{ title }}}</div>
	<div class="elementor-finder__results__category__items"></div>
</script>

<script type="text/template" id="tmpl-elementor-finder__results__item">
	<a href="{{ url }}" class="elementor-finder__results__item__link">
		<div class="elementor-finder__results__item__icon">
			<i class="eicon-{{{ icon }}}"></i>
		</div>
		<div class="elementor-finder__results__item__title">{{{ title }}}</div>
		<# if ( description ) { #>
			<div class="elementor-finder__results__item__description">- {{{ description }}}</div>
		<# } #>
	</a>
	<# if ( actions.length ) { #>
		<div class="elementor-finder__results__item__actions">
		<# jQuery.each( actions, function() { #>
			<a class="elementor-finder__results__item__action elementor-finder__results__item__action--{{ this.name }}" href="{{ this.url }}" target="_blank">
				<i class="eicon-{{{ this.icon }}}"></i>
			</a>
		<# } ); #>
		</div>
	<# } #>
</script>
core/common/modules/connect/admin.php000064400000004406151327220420013670 0ustar00<?php
namespace Elementor\Core\Common\Modules\Connect;

use Elementor\Plugin;
use Elementor\Settings;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

class Admin {

	const PAGE_ID = 'elementor-connect';

	public static $url = '';

	/**
	 * @since 2.3.0
	 * @access public
	 */
	public function register_admin_menu() {
		$submenu_page = add_submenu_page(
			Settings::PAGE_ID,
			__( 'Connect', 'elementor' ),
			__( 'Connect', 'elementor' ),
			'edit_posts',
			self::PAGE_ID,
			[ $this, 'render_page' ]
		);

		add_action( 'load-' . $submenu_page, [ $this, 'on_load_page' ] );
	}

	/**
	 * @since 2.3.0
	 * @access public
	 */
	public function hide_menu_item() {
		remove_submenu_page( Settings::PAGE_ID, self::PAGE_ID );
	}

	/**
	 * @since 2.3.0
	 * @access public
	 */
	public function on_load_page() {
		if ( isset( $_GET['action'], $_GET['app'] ) ) {
			$manager = Plugin::$instance->common->get_component( 'connect' );
			$app_slug = $_GET['app'];
			$app = $manager->get_app( $app_slug );
			$nonce_action = $_GET['app'] . $_GET['action'];

			if ( ! $app ) {
				wp_die( 'Unknown app: ' . esc_attr( $app_slug ) );
			}

			if ( empty( $_GET['nonce'] ) || ! wp_verify_nonce( $_GET['nonce'], $nonce_action ) ) {
				wp_die( 'Invalid Nonce', 'Invalid Nonce', [
					'back_link' => true,
				] );
			}

			$method = 'action_' . $_GET['action'];

			if ( method_exists( $app, $method ) ) {
				call_user_func( [ $app, $method ] );
			}
		}
	}

	/**
	 * @since 2.3.0
	 * @access public
	 */
	public function render_page() {
		$apps = Plugin::$instance->common->get_component( 'connect' )->get_apps();
		?>
		<style>
			.elementor-connect-app-wrapper{
				margin-bottom: 50px;
				overflow: hidden;
			}
		</style>
		<div class="wrap">
			<?php

			/** @var \Elementor\Core\Common\Modules\Connect\Apps\Base_App $app */
			foreach ( $apps as $app ) {
				echo '<div class="elementor-connect-app-wrapper">';
				$app->render_admin_widget();
				echo '</div>';
			}

			?>
		</div><!-- /.wrap -->
		<?php
	}

	/**
	 * @since 2.3.0
	 * @access public
	 */
	public function __construct() {
		self::$url = admin_url( 'admin.php?page=' . self::PAGE_ID );

		add_action( 'admin_menu', [ $this, 'register_admin_menu' ], 206 );
		add_action( 'admin_head', [ $this, 'hide_menu_item' ] );
	}
}
core/common/modules/connect/apps/base-user-app.php000064400000001060151327220420016200 0ustar00<?php
namespace Elementor\Core\Common\Modules\Connect\Apps;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

abstract class Base_User_App extends Base_App {

	/**
	 * @since 2.3.0
	 * @access protected
	 */
	protected function update_settings() {
		update_user_option( get_current_user_id(), $this->get_option_name(), $this->data );
	}

	/**
	 * @since 2.3.0
	 * @access protected
	 */
	protected function init_data() {
		$this->data = get_user_option( $this->get_option_name() );

		if ( ! $this->data ) {
			$this->data = [];
		}
	}
}
core/common/modules/connect/apps/common-app.php000064400000001242151327220420015604 0ustar00<?php
namespace Elementor\Core\Common\Modules\Connect\Apps;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

abstract class Common_App extends Base_User_App {

	protected static $common_data = null;

	/**
	 * @since 2.3.0
	 * @access public
	 */
	public function get_option_name() {
		return static::OPTION_NAME_PREFIX . 'common_data';
	}

	/**
	 * @since 2.3.0
	 * @access protected
	 */
	protected function init_data() {
		if ( is_null( self::$common_data ) ) {
			self::$common_data = get_user_option( static::get_option_name() );

			if ( ! self::$common_data ) {
				self::$common_data = [];
			};
		}

		$this->data = & self::$common_data;
	}
}
core/common/modules/connect/apps/library.php000064400000006300151327220420015202 0ustar00<?php
namespace Elementor\Core\Common\Modules\Connect\Apps;

use Elementor\User;
use Elementor\Plugin;
use Elementor\Core\Common\Modules\Connect\Module as ConnectModule;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Library extends Common_App {
	public function get_title() {
		return esc_html__( 'Library', 'elementor' );
	}

	/**
	 * @since 2.3.0
	 * @access protected
	 */
	protected function get_slug() {
		return 'library';
	}

	public function get_template_content( $id ) {
		if ( ! $this->is_connected() ) {
			return new \WP_Error( '401', esc_html__( 'Connecting to the Library failed. Please try reloading the page and try again', 'elementor' ) );
		}

		$body_args = [
			'id' => $id,

			// Which API version is used.
			'api_version' => ELEMENTOR_VERSION,
			// Which language to return.
			'site_lang' => get_bloginfo( 'language' ),
		];

		/**
		 * API: Template body args.
		 *
		 * Filters the body arguments send with the GET request when fetching the content.
		 *
		 * @since 1.0.0
		 *
		 * @param array $body_args Body arguments.
		 */
		$body_args = apply_filters( 'elementor/api/get_templates/body_args', $body_args );

		$template_content = $this->request( 'get_template_content', $body_args, true );

		if ( is_wp_error( $template_content ) && 401 === $template_content->get_error_code() ) {
			// Normalize 401 message
			return new \WP_Error( 401, __( 'Connecting to the Library failed. Please try reloading the page and try again', 'elementor' ) );
		}

		return $template_content;
	}

	public function localize_settings( $settings ) {
		$is_connected = $this->is_connected();

		/** @var ConnectModule $connect */
		$connect = Plugin::$instance->common->get_component( 'connect' );

		return array_replace_recursive( $settings, [
			'library_connect' => [
				'is_connected' => $is_connected,
				'subscription_plans' => $connect->get_subscription_plans( 'panel-library' ),
				'base_access_level' => ConnectModule::ACCESS_LEVEL_CORE,
				'current_access_level' => ConnectModule::ACCESS_LEVEL_CORE,
			],
		] );
	}

	public function library_connect_popup_seen() {
		User::set_introduction_viewed( [
			'introductionKey' => 'library_connect',
		] );
	}

	/**
	 * @param \Elementor\Core\Common\Modules\Ajax\Module $ajax_manager
	 */
	public function register_ajax_actions( $ajax_manager ) {
		$ajax_manager->register_ajax_action( 'library_connect_popup_seen', [ $this, 'library_connect_popup_seen' ] );
	}

	protected function get_app_info() {
		return [
			'user_common_data' => [
				'label' => 'User Common Data',
				'value' => get_user_option( $this->get_option_name(), get_current_user_id() ),
			],
			'connect_site_key' => [
				'label' => 'Site Key',
				'value' => get_option( 'elementor_connect_site_key' ),
			],
			'remote_info_library' => [
				'label' => 'Remote Library Info',
				'value' => get_option( 'elementor_remote_info_library' ),
			],
		];
	}

	protected function get_popup_success_event_data() {
		return [
			'access_level' => ConnectModule::ACCESS_LEVEL_CORE,
		];
	}

	protected function init() {
		add_filter( 'elementor/editor/localize_settings', [ $this, 'localize_settings' ] );
		add_action( 'elementor/ajax/register_actions', [ $this, 'register_ajax_actions' ] );
	}
}
core/common/modules/connect/apps/connect.php000064400000000673151327220420015176 0ustar00<?php
namespace Elementor\Core\Common\Modules\Connect\Apps;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Connect extends Common_App {

	public function get_title() {
		return esc_html__( 'Connect', 'elementor' );
	}

	/**
	 * @since 2.3.0
	 * @access public
	 */
	protected function get_slug() {
		return 'connect';
	}

	/**
	 * @since 2.3.0
	 * @access public
	 */
	public function render_admin_widget() {}
}
core/common/modules/connect/apps/base-app.php000064400000044326151327220420015240 0ustar00<?php
namespace Elementor\Core\Common\Modules\Connect\Apps;

use Elementor\Core\Utils\Http;
use Elementor\Core\Utils\Collection;
use Elementor\Core\Admin\Admin_Notices;
use Elementor\Core\Common\Modules\Connect\Admin;
use Elementor\Core\Utils\Str;
use Elementor\Plugin;
use Elementor\Tracker;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

abstract class Base_App {

	const OPTION_NAME_PREFIX = 'elementor_connect_';

	const SITE_URL = 'https://my.elementor.com/connect/v1';

	const API_URL = 'https://my.elementor.com/api/connect/v1';

	const HTTP_RETURN_TYPE_OBJECT = 'object';
	const HTTP_RETURN_TYPE_ARRAY = 'array';

	protected $data = [];

	protected $auth_mode = '';

	/**
	 * @var Http
	 */
	protected $http;

	/**
	 * @since 2.3.0
	 * @access protected
	 * @abstract
	 * TODO: make it public.
	 */
	abstract protected function get_slug();

	/**
	 * @since 2.8.0
	 * @access public
	 * TODO: make it abstract.
	 */
	public function get_title() {
		return $this->get_slug();
	}

	/**
	 * @since 2.3.0
	 * @access protected
	 * @abstract
	 */
	abstract protected function update_settings();

	/**
	 * @since 2.3.0
	 * @access public
	 * @static
	 */
	public static function get_class_name() {
		return get_called_class();
	}

	/**
	 * @access public
	 * @abstract
	 */
	public function render_admin_widget() {
		// PHPCS - the method get_title return a plain string.
		echo '<h2>' . $this->get_title() . '</h2>'; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped

		if ( $this->is_connected() ) {
			$remote_user = $this->get( 'user' );
			/* translators: %s: Remote user. */
			$title = sprintf( esc_html__( 'Connected as %s', 'elementor' ), '<strong>' . esc_html( $remote_user->email ) . '</strong>' );
			$label = esc_html__( 'Disconnect', 'elementor' );
			$url = $this->get_admin_url( 'disconnect' );
			$attr = '';

			echo sprintf(
				'%s <a %s href="%s">%s</a>',
				// PHPCS - the variable $title is already escaped above.
				$title, // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
				// PHPCS - the variable $attr is a plain string.
				$attr, // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
				esc_attr( $url ),
				esc_html( $label )
			);
		} else {
			echo 'Not Connected';
		}

		echo '<hr>';

		$this->print_app_info();

		if ( current_user_can( 'manage_options' ) ) {
			printf( '<div><a href="%s">%s</a></div>', esc_url( $this->get_admin_url( 'reset' ) ), esc_html__( 'Reset Data', 'elementor' ) );
		}

		echo '<hr>';
	}


	/**
	 * @since 2.3.0
	 * @access protected
	 */
	protected function get_option_name() {
		return static::OPTION_NAME_PREFIX . $this->get_slug();
	}

	/**
	 * @since 2.3.0
	 * @access public
	 */
	public function admin_notice() {
		$notices = $this->get( 'notices' );

		if ( ! $notices ) {
			return;
		}

		$this->print_notices( $notices );

		$this->delete( 'notices' );
	}


	public function get_app_token_from_cli_token( $cli_token ) {
		$response = $this->request( 'get_app_token_from_cli_token', [
			'cli_token' => $cli_token,
		] );

		if ( is_wp_error( $response ) ) {
			// PHPCS - the variable $response does not contain a user input value.
			wp_die( $response, $response->get_error_message() ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
		}

		// Use state as usual.
		$_REQUEST['state'] = $this->get( 'state' );
		$_REQUEST['code'] = $response->code;
	}
	/**
	 * @since 2.3.0
	 * @access public
	 */
	public function action_authorize() {
		if ( $this->is_connected() ) {
			$this->add_notice( esc_html__( 'Already connected.', 'elementor' ), 'info' );
			$this->redirect_to_admin_page();
			return;
		}

		$this->set_client_id();
		$this->set_request_state();

		$this->redirect_to_remote_authorize_url();
	}

	public function action_reset() {
		delete_user_option( get_current_user_id(), 'elementor_connect_common_data' );

		if ( current_user_can( 'manage_options' ) ) {
			delete_option( 'elementor_connect_site_key' );
			delete_option( 'elementor_remote_info_library' );
		}

		$this->redirect_to_admin_page();
	}

	/**
	 * @since 2.3.0
	 * @access public
	 */
	public function action_get_token() {
		if ( $this->is_connected() ) {
			$this->redirect_to_admin_page();
		}

		if ( empty( $_REQUEST['state'] ) || $_REQUEST['state'] !== $this->get( 'state' ) ) {
			$this->add_notice( 'Get Token: Invalid Request.', 'error' );
			$this->redirect_to_admin_page();
		}

		$response = $this->request( 'get_token', [
			'grant_type' => 'authorization_code',
			'code' => $_REQUEST['code'],
			'redirect_uri' => rawurlencode( $this->get_admin_url( 'get_token' ) ),
			'client_id' => $this->get( 'client_id' ),
		] );

		if ( is_wp_error( $response ) ) {
			$notice = 'Cannot Get Token:' . $response->get_error_message();
			$this->add_notice( $notice, 'error' );
			$this->redirect_to_admin_page();
		}

		if ( ! empty( $response->data_share_opted_in ) && current_user_can( 'manage_options' ) ) {
			Tracker::set_opt_in( true );
		}

		$this->delete( 'state' );
		$this->set( (array) $response );

		$this->after_connect();

		// Add the notice *after* the method `after_connect`, so an app can redirect without the notice.
		$this->add_notice( esc_html__( 'Connected Successfully.', 'elementor' ) );

		$this->redirect_to_admin_page();
	}

	/**
	 * @since 2.3.0
	 * @access public
	 */
	public function action_disconnect() {
		if ( $this->is_connected() ) {
			$this->disconnect();
			$this->add_notice( esc_html__( 'Disconnected Successfully.', 'elementor' ) );
		}

		$this->redirect_to_admin_page();
	}

	/**
	 * @since 2.8.0
	 * @access public
	 */
	public function action_reconnect() {
		$this->disconnect();

		$this->action_authorize();
	}

	/**
	 * @since 2.3.0
	 * @access public
	 */
	public function get_admin_url( $action, $params = [] ) {
		$params = [
			'app' => $this->get_slug(),
			'action' => $action,
			'nonce' => wp_create_nonce( $this->get_slug() . $action ),
		] + $params;

		$admin_url = Str::encode_idn_url( get_admin_url() );
		$admin_url .= 'admin.php?page=' . Admin::PAGE_ID;

		return add_query_arg( $params, $admin_url );
	}

	/**
	 * @since 2.3.0
	 * @access public
	 */
	public function is_connected() {
		return (bool) $this->get( 'access_token' );
	}

	/**
	 * @since 2.3.0
	 * @access protected
	 */
	protected function init() {}

	/**
	 * @since 2.3.0
	 * @access protected
	 */
	protected function init_data() {}

	/**
	 * @since 2.3.0
	 * @access protected
	 */
	protected function after_connect() {}

	/**
	 * @since 2.3.0
	 * @access public
	 */
	public function get( $key, $default = null ) {
		$this->init_data();

		return isset( $this->data[ $key ] ) ? $this->data[ $key ] : $default;
	}

	/**
	 * @since 2.3.0
	 * @access protected
	 */
	protected function set( $key, $value = null ) {
		$this->init_data();

		if ( is_array( $key ) ) {
			$this->data = array_replace_recursive( $this->data, $key );
		} else {
			$this->data[ $key ] = $value;
		}

		$this->update_settings();
	}

	/**
	 * @since 2.3.0
	 * @access protected
	 */
	protected function delete( $key = null ) {
		$this->init_data();

		if ( $key ) {
			unset( $this->data[ $key ] );
		} else {
			$this->data = [];
		}

		$this->update_settings();
	}

	/**
	 * @since 2.3.0
	 * @access protected
	 */
	protected function add( $key, $value, $default = '' ) {
		$new_value = $this->get( $key, $default );

		if ( is_array( $new_value ) ) {
			$new_value[] = $value;
		} elseif ( is_string( $new_value ) ) {
			$new_value .= $value;
		} elseif ( is_numeric( $new_value ) ) {
			$new_value += $value;
		}

		$this->set( $key, $new_value );
	}

	/**
	 * @since 2.3.0
	 * @access protected
	 */
	protected function add_notice( $content, $type = 'success' ) {
		$this->add( 'notices', compact( 'content', 'type' ), [] );
	}

	/**
	 * @param       $action
	 * @param array $request_body
	 * @param false $as_array
	 *
	 * @return mixed|\WP_Error
	 */
	protected function request( $action, $request_body = [], $as_array = false ) {
		$request_body = $this->get_connect_info() + $request_body;

		return $this->http_request(
			'POST',
			$action,
			[
				'timeout' => 25,
				'body' => $request_body,
				'headers' => $this->is_connected() ?
					[ 'X-Elementor-Signature' => $this->generate_signature( $request_body ) ] :
					[],
			],
			[
				'return_type' => $as_array ? static::HTTP_RETURN_TYPE_ARRAY : static::HTTP_RETURN_TYPE_OBJECT,
			]
		);
	}

	/**
	 * Get all the connect information
	 *
	 * @return array
	 */
	protected function get_connect_info() {
		$connect_info = [
			'app' => $this->get_slug(),
			'access_token' => $this->get( 'access_token' ),
			'client_id' => $this->get( 'client_id' ),
			'local_id' => get_current_user_id(),
			'site_key' => $this->get_site_key(),
			'home_url' => trailingslashit( home_url() ),
		];

		$additional_info = [];

		/**
		 * Additional connect info.
		 *
		 * Filters the connection information when connecting to Elementor servers.
		 * This hook can be used to add more information or add more data.
		 *
		 * @param array    $additional_info Additional connecting information array.
		 * @param Base_App $this            The base app instance.
		 */
		$additional_info = apply_filters( 'elementor/connect/additional-connect-info', $additional_info, $this );

		return array_merge( $connect_info, $additional_info );
	}

	/**
	 * @param $endpoint
	 *
	 * @return array
	 */
	protected function generate_authentication_headers( $endpoint ) {
		$connect_info = ( new Collection( $this->get_connect_info() ) )
			->map_with_keys( function ( $value, $key ) {
				// For bc `get_connect_info` returns the connect info with underscore,
				// headers with underscore are not valid, so all the keys with underscore will be replaced to hyphen.
				return [ str_replace( '_', '-', $key ) => $value ];
			} )
			->replace_recursive( [ 'endpoint' => $endpoint ] )
			->sort_keys();

		return $connect_info
			->merge( [ 'X-Elementor-Signature' => $this->generate_signature( $connect_info->all() ) ] )
			->all();
	}

	/**
	 * Send an http request
	 *
	 * @param       $method
	 * @param       $endpoint
	 * @param array $args
	 * @param array $options
	 *
	 * @return mixed|\WP_Error
	 */
	protected function http_request( $method, $endpoint, $args = [], $options = [] ) {
		$options = wp_parse_args( $options, [
			'return_type' => static::HTTP_RETURN_TYPE_OBJECT,
		] );

		$args = array_replace_recursive( [
			'headers' => $this->is_connected() ? $this->generate_authentication_headers( $endpoint ) : [],
			'method' => $method,
			'timeout' => 10,
		], $args );

		$response = $this->http->request_with_fallback(
			$this->get_generated_urls( $endpoint ),
			$args
		);

		if ( is_wp_error( $response ) ) {
			// PHPCS - the variable $response does not contain a user input value.
			wp_die( $response, [ 'back_link' => true ] ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
		}

		$body = wp_remote_retrieve_body( $response );
		$response_code = (int) wp_remote_retrieve_response_code( $response );

		if ( ! $response_code ) {
			return new \WP_Error( 500, 'No Response' );
		}

		// Server sent a success message without content.
		if ( 'null' === $body ) {
			$body = true;
		}

		$body = json_decode( $body, static::HTTP_RETURN_TYPE_ARRAY === $options['return_type'] );

		if ( false === $body ) {
			return new \WP_Error( 422, 'Wrong Server Response' );
		}

		if ( 200 !== $response_code ) {
			// In case $as_array = true.
			$body = (object) $body;

			$message = isset( $body->message ) ? $body->message : wp_remote_retrieve_response_message( $response );
			$code = (int) ( isset( $body->code ) ? $body->code : $response_code );

			if ( 401 === $code ) {
				$this->delete();

				if ( 'xhr' !== $this->auth_mode ) {
					$this->action_authorize();
				}
			}

			return new \WP_Error( $code, $message );
		}

		return $body;
	}

	/**
	 * Create a signature for the http request
	 *
	 * @param array $payload
	 *
	 * @return false|string
	 */
	private function generate_signature( $payload = [] ) {
		return hash_hmac(
			'sha256',
			wp_json_encode( $payload, JSON_NUMERIC_CHECK ),
			$this->get( 'access_token_secret' )
		);
	}

	/**
	 * @since 2.3.0
	 * @access protected
	 */
	protected function get_api_url() {
		return static::API_URL . '/' . $this->get_slug();
	}
	/**
	 * @since 2.3.0
	 * @access protected
	 */
	protected function get_remote_site_url() {
		return static::SITE_URL . '/' . $this->get_slug();
	}

	/**
	 * @since 2.3.0
	 * @access protected
	 */
	protected function get_remote_authorize_url() {
		$redirect_uri = $this->get_auth_redirect_uri();

		$url = add_query_arg( [
			'action' => 'authorize',
			'response_type' => 'code',
			'client_id' => $this->get( 'client_id' ),
			'auth_secret' => $this->get( 'auth_secret' ),
			'state' => $this->get( 'state' ),
			'redirect_uri' => rawurlencode( $redirect_uri ),
			'may_share_data' => current_user_can( 'manage_options' ) && ! Tracker::is_allow_track(),
			'reconnect_nonce' => wp_create_nonce( $this->get_slug() . 'reconnect' ),
		], $this->get_remote_site_url() );

		return $url;
	}

	/**
	 * @since 2.3.0
	 * @access protected
	 */
	protected function redirect_to_admin_page( $url = '' ) {
		if ( ! $url ) {
			$url = Admin::$url;
		}

		switch ( $this->auth_mode ) {
			case 'popup':
				$this->print_popup_close_script( $url );
				break;

			case 'cli':
				$this->admin_notice();
				die;

			default:
				wp_safe_redirect( $url );
				die;
		}
	}

	/**
	 * @since 2.3.0
	 * @access protected
	 */
	protected function set_client_id() {
		if ( $this->get( 'client_id' ) ) {
			return;
		}

		$response = $this->request(
			'get_client_id',
			[
				// phpcs:ignore WordPress.Security.NonceVerification
				'source' => isset( $_REQUEST['source'] ) ? esc_attr( $_REQUEST['source'] ) : '',
			]
		);

		if ( is_wp_error( $response ) ) {
			// PHPCS - the variable $response does not contain a user input value.
			wp_die( $response, $response->get_error_message() ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
		}

		$this->set( 'client_id', $response->client_id );
		$this->set( 'auth_secret', $response->auth_secret );
	}

	/**
	 * @since 2.3.0
	 * @access protected
	 */
	protected function set_request_state() {
		$this->set( 'state', wp_generate_password( 12, false ) );
	}

	protected function get_popup_success_event_data() {
		return [];
	}

	/**
	 * @since 2.3.0
	 * @access protected
	 */
	protected function print_popup_close_script( $url ) {
		$data = $this->get_popup_success_event_data();

		?>
		<script>
			if ( opener && opener !== window ) {
				opener.jQuery( 'body' ).trigger(
					'elementor/connect/success/<?php echo esc_attr( $_REQUEST['callback_id'] ); ?>',
					<?php echo wp_json_encode( $data ); ?>
				);

				window.close();
				opener.focus();
			} else {
				location = '<?php echo esc_url( $url ); ?>';
			}
		</script>
		<?php
		die;
	}

	/**
	 * @since 2.3.0
	 * @access protected
	 */
	protected function disconnect() {
		if ( $this->is_connected() ) {
			// Try update the server, but not needed to handle errors.
			$this->request( 'disconnect' );
		}

		$this->delete();
	}

	/**
	 * @since 2.3.0
	 * @access protected
	 */
	public function get_site_key() {
		$site_key = get_option( 'elementor_connect_site_key' );

		if ( ! $site_key ) {
			$site_key = md5( uniqid( wp_generate_password() ) );
			update_option( 'elementor_connect_site_key', $site_key );
		}

		return $site_key;
	}

	protected function redirect_to_remote_authorize_url() {
		switch ( $this->auth_mode ) {
			case 'cli':
				$this->get_app_token_from_cli_token( $_REQUEST['token'] );
				return;
			default:
				wp_redirect( $this->get_remote_authorize_url() );
				die;
		}
	}

	protected function get_auth_redirect_uri() {
		$redirect_uri = $this->get_admin_url( 'get_token' );

		switch ( $this->auth_mode ) {
			case 'popup':
				$redirect_uri = add_query_arg( [
					'mode' => 'popup',
					'callback_id' => esc_attr( $_REQUEST['callback_id'] ),
				], $redirect_uri );
				break;
		}

		return $redirect_uri;
	}


	protected function print_notices( $notices ) {
		switch ( $this->auth_mode ) {
			case 'cli':
				foreach ( $notices as $notice ) {
					printf( '[%s] %s', wp_kses_post( $notice['type'] ), wp_kses_post( $notice['content'] ) );
				}
				break;
			default:
				/**
				 * @var Admin_Notices $admin_notices
				 */
				$admin_notices = Plugin::$instance->admin->get_component( 'admin-notices' );

				foreach ( $notices as $notice ) {
					$options = [
						'description' => wp_kses_post( wpautop( $notice['content'] ) ),
						'type' => $notice['type'],
						'icon' => false,
					];

					$admin_notices->print_admin_notice( $options );
				}
		}
	}

	protected function get_app_info() {
		return [];
	}

	protected function print_app_info() {
		$app_info = $this->get_app_info();

		foreach ( $app_info as $key => $item ) {
			if ( $item['value'] ) {
				$status = 'Exist';
				$color = 'green';
			} else {
				$status = 'Empty';
				$color = 'red';
			}

			// PHPCS - the values of $item['label'], $color, $status are plain strings.
			printf( '%s: <strong style="color:%s">%s</strong><br>', $item['label'], $color, $status ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
		}

	}

	private function get_generated_urls( $endpoint ) {
		$base_urls = $this->get_api_url();

		if ( ! is_array( $base_urls ) ) {
			$base_urls = [ $base_urls ];
		}

		return array_map( function ( $base_url ) use ( $endpoint ) {
			return trailingslashit( $base_url ) . $endpoint;
		}, $base_urls );
	}

	private function init_auth_mode() {
		$is_rest = defined( 'REST_REQUEST' ) && REST_REQUEST;
		$is_ajax = wp_doing_ajax();

		if ( $is_rest || $is_ajax ) {
			// Set default to 'xhr' if rest or ajax request.
			$this->set_auth_mode( 'xhr' );
		}

		if ( isset( $_REQUEST['mode'] ) ) { // phpcs:ignore -- nonce validation is not require here.
			$allowed_auth_modes = [
				'popup',
			];

			if ( defined( 'WP_CLI' ) && WP_CLI ) {
				$allowed_auth_modes[] = 'cli';
			}

			$mode = $_REQUEST['mode']; // phpcs:ignore -- nonce validation is not require here.

			if ( in_array( $mode, $allowed_auth_modes, true ) ) {
				$this->set_auth_mode( $mode );
			}
		}
	}

	public function set_auth_mode( $mode ) {
		$this->auth_mode = $mode;
	}

	/**
	 * @since 2.3.0
	 * @access public
	 */
	public function __construct() {
		add_action( 'admin_notices', [ $this, 'admin_notice' ] );

		$this->init_auth_mode();

		$this->http = new Http();

		/**
		 * Allow extended apps to customize the __construct without call parent::__construct.
		 */
		$this->init();
	}
}
core/common/modules/connect/module.php000064400000010063151327220420014061 0ustar00<?php
namespace Elementor\Core\Common\Modules\Connect;

use Elementor\Utils;
use Elementor\Core\Base\Module as BaseModule;
use Elementor\Core\Common\Modules\Connect\Apps\Base_App;
use Elementor\Core\Common\Modules\Connect\Apps\Connect;
use Elementor\Core\Common\Modules\Connect\Apps\Library;
use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Module extends BaseModule {
	const ACCESS_LEVEL_CORE = 0;
	const ACCESS_LEVEL_PRO = 1;
	const ACCESS_LEVEL_EXPERT = 20;

	/**
	 * @since 2.3.0
	 * @access public
	 */
	public function get_name() {
		return 'connect';
	}

	/**
	 * @var array
	 */
	protected $registered_apps = [];

	/**
	 * Apps Instances.
	 *
	 * Holds the list of all the apps instances.
	 *
	 * @since 2.3.0
	 * @access protected
	 *
	 * @var Base_App[]
	 */
	protected $apps = [];

	/**
	 * Registered apps categories.
	 *
	 * Holds the list of all the registered apps categories.
	 *
	 * @since 2.3.0
	 * @access protected
	 *
	 * @var array
	 */
	protected $categories = [];

	protected $admin_page;

	/**
	 * @since 2.3.0
	 * @access public
	 */
	public function __construct() {
		$this->registered_apps = [
			'connect' => Connect::get_class_name(),
			'library' => Library::get_class_name(),
		];

		// When using REST API the parent module is construct after the action 'elementor/init'
		// so this part of code make sure to register the module "apps".
		if ( did_action( 'elementor/init' ) ) {
			$this->init();
		} else {
			// Note: The priority 11 is for allowing plugins to add their register callback on elementor init.
			add_action( 'elementor/init', [ $this, 'init' ], 11 );
		}
	}

	/**
	 * Register default apps.
	 *
	 * Registers the default apps.
	 *
	 * @since 2.3.0
	 * @access public
	 */
	public function init() {
		if ( is_admin() ) {
			$this->admin_page = new Admin();
		}

		/**
		 * Register Elementor apps.
		 *
		 * Fires after Elementor registers the default apps.
		 *
		 * @since 2.3.0
		 *
		 * @param self $this The apps manager instance.
		 */
		do_action( 'elementor/connect/apps/register', $this );

		foreach ( $this->registered_apps as $slug => $class ) {
			$this->apps[ $slug ] = new $class();
		}
	}

	/**
	 * @deprecated 3.1.0
	 */
	public function localize_settings() {
		Plugin::$instance->modules_manager->get_modules( 'dev-tools' )->deprecation->deprecated_function( __METHOD__, '3.1.0' );

		return [];
	}

	/**
	 * Register app.
	 *
	 * Registers an app.
	 *
	 * @since 2.3.0
	 * @access public
	 *
	 * @param string $slug App slug.
	 * @param string $class App full class name.
	 *
	 * @return self The updated apps manager instance.
	 */
	public function register_app( $slug, $class ) {
		$this->registered_apps[ $slug ] = $class;

		return $this;
	}

	/**
	 * Get app instance.
	 *
	 * Retrieve the app instance.
	 *
	 * @since 2.3.0
	 * @access public
	 *
	 * @param $slug
	 *
	 * @return Base_App|null
	 */
	public function get_app( $slug ) {
		if ( isset( $this->apps[ $slug ] ) ) {
			return $this->apps[ $slug ];
		}

		return null;
	}

	/**
	 * @since 2.3.0
	 * @access public
	 * @return Base_App[]
	 */
	public function get_apps() {
		return $this->apps;
	}

	/**
	 * @since 2.3.0
	 * @access public
	 */
	public function register_category( $slug, $args ) {
		$this->categories[ $slug ] = $args;
		return $this;
	}

	/**
	 * @since 2.3.0
	 * @access public
	 */
	public function get_categories() {
		return $this->categories;
	}

	/**
	 * @param $context
	 *
	 * @return array
	 */
	public function get_subscription_plans( $context ) {
		return [
			static::ACCESS_LEVEL_CORE => [
				'label' => null,
				'promotion_url' => null,
				'color' => null,
			],
			static::ACCESS_LEVEL_PRO => [
				'label' => 'Pro',
				'promotion_url' => Utils::get_pro_link( "https://elementor.com/pro/?utm_source={$context}&utm_medium=wp-dash&utm_campaign=gopro" ),
				'color' => '#92003B',
			],
			static::ACCESS_LEVEL_EXPERT => [
				'label' => 'Expert',
				'promotion_url' => Utils::get_pro_link( "https://elementor.com/pro/?utm_source={$context}&utm_medium=wp-dash&utm_campaign=goexpert" ),
				'color' => '#010051',
			],
		];
	}
}
core/common/app.php000064400000013044151327220420010255 0ustar00<?php
namespace Elementor\Core\Common;

use Elementor\Core\Base\App as BaseApp;
use Elementor\Core\Common\Modules\Ajax\Module as Ajax;
use Elementor\Core\Common\Modules\Finder\Module as Finder;
use Elementor\Core\Common\Modules\Connect\Module as Connect;
use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * App
 *
 * Elementor's common app that groups shared functionality, components and configuration
 *
 * @since 2.3.0
 */
class App extends BaseApp {

	private $templates = [];

	/**
	 * App constructor.
	 *
	 * @since 2.3.0
	 * @access public
	 */
	public function __construct() {
		$this->add_default_templates();

		add_action( 'elementor/editor/before_enqueue_scripts', [ $this, 'register_scripts' ] );
		add_action( 'admin_enqueue_scripts', [ $this, 'register_scripts' ] );
		add_action( 'wp_enqueue_scripts', [ $this, 'register_scripts' ] );

		add_action( 'elementor/editor/before_enqueue_styles', [ $this, 'register_styles' ] );
		add_action( 'admin_enqueue_scripts', [ $this, 'register_styles' ] );
		add_action( 'wp_enqueue_scripts', [ $this, 'register_styles' ], 9 );

		add_action( 'elementor/editor/footer', [ $this, 'print_templates' ] );
		add_action( 'admin_footer', [ $this, 'print_templates' ] );
		add_action( 'wp_footer', [ $this, 'print_templates' ] );
	}

	/**
	 * Init components
	 *
	 * Initializing common components.
	 *
	 * @since 2.3.0
	 * @access public
	 */
	public function init_components() {
		$this->add_component( 'ajax', new Ajax() );

		if ( current_user_can( 'manage_options' ) ) {
			if ( ! is_customize_preview() ) {
				$this->add_component( 'finder', new Finder() );
			}
		}

		$this->add_component( 'connect', new Connect() );
	}

	/**
	 * Get name.
	 *
	 * Retrieve the app name.
	 *
	 * @since 2.3.0
	 * @access public
	 *
	 * @return string Common app name.
	 */
	public function get_name() {
		return 'common';
	}

	/**
	 * Register scripts.
	 *
	 * Register common scripts.
	 *
	 * @since 2.3.0
	 * @access public
	 */
	public function register_scripts() {
		wp_register_script(
			'elementor-common-modules',
			$this->get_js_assets_url( 'common-modules' ),
			[],
			ELEMENTOR_VERSION,
			true
		);

		wp_register_script(
			'backbone-marionette',
			$this->get_js_assets_url( 'backbone.marionette', 'assets/lib/backbone/' ),
			[
				'backbone',
			],
			'2.4.5.e1',
			true
		);

		wp_register_script(
			'backbone-radio',
			$this->get_js_assets_url( 'backbone.radio', 'assets/lib/backbone/' ),
			[
				'backbone',
			],
			'1.0.4',
			true
		);

		wp_register_script(
			'elementor-dialog',
			$this->get_js_assets_url( 'dialog', 'assets/lib/dialog/' ),
			[
				'jquery-ui-position',
			],
			'4.8.1',
			true
		);

		wp_enqueue_script(
			'elementor-common',
			$this->get_js_assets_url( 'common' ),
			[
				'jquery',
				'jquery-ui-draggable',
				'backbone-marionette',
				'backbone-radio',
				'elementor-common-modules',
				'elementor-dialog',
				'wp-api-request',
			],
			ELEMENTOR_VERSION,
			true
		);

		wp_set_script_translations( 'elementor-common', 'elementor' );

		$this->print_config();

		// Used for external plugins.
		do_action( 'elementor/common/after_register_scripts', $this );
	}

	/**
	 * Register styles.
	 *
	 * Register common styles.
	 *
	 * @since 2.3.0
	 * @access public
	 */
	public function register_styles() {
		wp_register_style(
			'elementor-icons',
			$this->get_css_assets_url( 'elementor-icons', 'assets/lib/eicons/css/' ),
			[],
			'5.13.0'
		);

		wp_enqueue_style(
			'elementor-common',
			$this->get_css_assets_url( 'common', null, 'default', true ),
			[
				'elementor-icons',
			],
			ELEMENTOR_VERSION
		);
	}

	/**
	 * Add template.
	 *
	 * @since 2.3.0
	 * @access public
	 *
	 * @param string $template Can be either a link to template file or template
	 *                         HTML content.
	 * @param string $type     Optional. Whether to handle the template as path
	 *                         or text. Default is `path`.
	 */
	public function add_template( $template, $type = 'path' ) {
		if ( 'path' === $type ) {
			ob_start();

			include $template;

			$template = ob_get_clean();
		}

		$this->templates[] = $template;
	}

	/**
	 * Print Templates
	 *
	 * Prints all registered templates.
	 *
	 * @since 2.3.0
	 * @access public
	 */
	public function print_templates() {
		foreach ( $this->templates as $template ) {
			echo $template; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
		}
	}

	/**
	 * Get init settings.
	 *
	 * Define the default/initial settings of the common app.
	 *
	 * @since 2.3.0
	 * @access protected
	 *
	 * @return array
	 */
	protected function get_init_settings() {
		$active_experimental_features = Plugin::$instance->experiments->get_active_features();

		$active_experimental_features = array_fill_keys( array_keys( $active_experimental_features ), true );

		return [
			'version' => ELEMENTOR_VERSION,
			'isRTL' => is_rtl(),
			'isDebug' => ( defined( 'WP_DEBUG' ) && WP_DEBUG ),
			'isElementorDebug' => ( defined( 'ELEMENTOR_DEBUG' ) && ELEMENTOR_DEBUG ),
			'activeModules' => array_keys( $this->get_components() ),
			'experimentalFeatures' => $active_experimental_features,
			'urls' => [
				'assets' => ELEMENTOR_ASSETS_URL,
				'rest' => get_rest_url(),
			],
		];
	}

	/**
	 * Add default templates.
	 *
	 * Register common app default templates.
	 * @since 2.3.0
	 * @access private
	 */
	private function add_default_templates() {
		$default_templates = [
			'includes/editor-templates/library-layout.php',
		];

		foreach ( $default_templates as $template ) {
			$this->add_template( ELEMENTOR_PATH . $template );
		}
	}
}
core/document-types/page-base.php000064400000011163151327220420013011 0ustar00<?php
namespace Elementor\Core\DocumentTypes;

use Elementor\Controls_Manager;
use Elementor\Core\Base\Document;
use Elementor\Group_Control_Background;
use Elementor\Plugin;
use Elementor\Utils;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

abstract class PageBase extends Document {

	/**
	 * @since 2.0.8
	 * @access public
	 * @static
	 */
	public static function get_properties() {
		$properties = parent::get_properties();

		$properties['admin_tab_group'] = '';
		$properties['support_wp_page_templates'] = true;

		return $properties;
	}

	/**
	 * @since 2.1.2
	 * @access protected
	 * @static
	 */
	protected static function get_editor_panel_categories() {
		return Utils::array_inject(
			parent::get_editor_panel_categories(),
			'theme-elements',
			[
				'theme-elements-single' => [
					'title' => esc_html__( 'Single', 'elementor' ),
					'active' => false,
				],
			]
		);
	}

	/**
	 * @since 2.0.0
	 * @access public
	 */
	public function get_css_wrapper_selector() {
		return 'body.elementor-page-' . $this->get_main_id();
	}

	/**
	 * @since 3.1.0
	 * @access protected
	 */
	protected function register_controls() {
		parent::register_controls();

		self::register_hide_title_control( $this );

		self::register_post_fields_control( $this );

		self::register_style_controls( $this );
	}

	/**
	 * @since 2.0.0
	 * @access public
	 * @static
	 * @param Document $document
	 */
	public static function register_hide_title_control( $document ) {
		$document->start_injection( [
			'of' => 'post_status',
			'fallback' => [
				'of' => 'post_title',
			],
		] );

		$document->add_control(
			'hide_title',
			[
				'label' => esc_html__( 'Hide Title', 'elementor' ),
				'type' => Controls_Manager::SWITCHER,
				'description' => esc_html__( 'Not working? You can set a different selector for the title in Site Settings > Layout', 'elementor' ),
				'selectors' => [
					':root' => '--page-title-display: none',
				],
			]
		);

		$document->end_injection();
	}

	/**
	 * @since 2.0.0
	 * @access public
	 * @static
	 * @param Document $document
	 */
	public static function register_style_controls( $document ) {
		$document->start_controls_section(
			'section_page_style',
			[
				'label' => esc_html__( 'Body Style', 'elementor' ),
				'tab' => Controls_Manager::TAB_STYLE,
			]
		);

		$document->add_group_control(
			Group_Control_Background::get_type(),
			[
				'name'  => 'background',
				'fields_options' => [
					'image' => [
						// Currently isn't supported.
						'dynamic' => [
							'active' => false,
						],
					],
				],
			]
		);

		$document->add_responsive_control(
			'padding',
			[
				'label' => esc_html__( 'Padding', 'elementor' ),
				'type' => Controls_Manager::DIMENSIONS,
				'size_units' => [ 'px', 'em', '%' ],
				'selectors' => [
					'{{WRAPPER}}' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}',
				],
			]
		);

		$document->end_controls_section();

		Plugin::$instance->controls_manager->add_custom_css_controls( $document );
	}

	/**
	 * @since 2.0.0
	 * @access public
	 * @static
	 * @param Document $document
	 */
	public static function register_post_fields_control( $document ) {
		$document->start_injection( [
			'of' => 'post_status',
			'fallback' => [
				'of' => 'post_title',
			],
		] );

		if ( post_type_supports( $document->post->post_type, 'excerpt' ) ) {
			$document->add_control(
				'post_excerpt',
				[
					'label' => esc_html__( 'Excerpt', 'elementor' ),
					'type' => Controls_Manager::TEXTAREA,
					'default' => $document->post->post_excerpt,
				]
			);
		}

		if ( current_theme_supports( 'post-thumbnails' ) && post_type_supports( $document->post->post_type, 'thumbnail' ) ) {
			$document->add_control(
				'post_featured_image',
				[
					'label' => esc_html__( 'Featured Image', 'elementor' ),
					'type' => Controls_Manager::MEDIA,
					'default' => [
						'id' => get_post_thumbnail_id(),
						'url' => (string) get_the_post_thumbnail_url( $document->post->ID ),
					],
				]
			);
		}

		$document->end_injection();
	}

	/**
	 * @since 2.0.0
	 * @access public
	 *
	 * @param array $data
	 *
	 * @throws \Exception
	 */
	public function __construct( array $data = [] ) {
		if ( $data ) {
			$template = get_post_meta( $data['post_id'], '_wp_page_template', true );

			if ( empty( $template ) ) {
				$template = 'default';
			}

			$data['settings']['template'] = $template;
		}

		parent::__construct( $data );
	}

	protected function get_remote_library_config() {
		$config = parent::get_remote_library_config();

		$config['category'] = '';
		$config['type'] = 'page';
		$config['default_route'] = 'templates/pages';

		return $config;
	}
}
core/document-types/page.php000064400000001344151327220420012101 0ustar00<?php
namespace Elementor\Core\DocumentTypes;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Page extends PageBase {

	/**
	 * Get Properties
	 *
	 * Return Document Configuration Properties.
	 *
	 * @return array $properties
	 */
	public static function get_properties() {
		$properties = parent::get_properties();

		$properties['cpt'] = [ 'page' ];
		$properties['support_kit'] = true;

		return $properties;
	}

	public static function get_type() {
		return 'wp-page';
	}

	/**
	 * Get Title
	 *
	 * @access public
	 * @static
	 */
	public static function get_title() {
		return esc_html__( 'Page', 'elementor' );
	}

	public static function get_plural_title() {
		return __( 'Pages', 'elementor' );
	}
}
core/document-types/post.php000064400000001076151327220420012154 0ustar00<?php
namespace Elementor\Core\DocumentTypes;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Post extends PageBase {

	public static function get_properties() {
		$properties = parent::get_properties();

		$properties['support_kit'] = true;

		return $properties;
	}

	public static function get_type() {
		return 'wp-post';
	}

	/**
	 * @access public
	 * @static
	 */
	public static function get_title() {
		return esc_html__( 'Post', 'elementor' );
	}

	public static function get_plural_title() {
		return __( 'Posts', 'elementor' );
	}
}
core/documents-manager.php000064400000042523151327220420011622 0ustar00<?php
namespace Elementor\Core;

use Elementor\Core\Base\Document;
use Elementor\Core\Common\Modules\Ajax\Module as Ajax;
use Elementor\Core\DocumentTypes\Page;
use Elementor\Core\DocumentTypes\Post;
use Elementor\Plugin;
use Elementor\TemplateLibrary\Source_Local;
use Elementor\Utils;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

/**
 * Elementor documents manager.
 *
 * Elementor documents manager handler class is responsible for registering and
 * managing Elementor documents.
 *
 * @since 2.0.0
 */
class Documents_Manager {

	/**
	 * Registered types.
	 *
	 * Holds the list of all the registered types.
	 *
	 * @since 2.0.0
	 * @access protected
	 *
	 * @var Document[]
	 */
	protected $types = [];

	/**
	 * Registered documents.
	 *
	 * Holds the list of all the registered documents.
	 *
	 * @since 2.0.0
	 * @access protected
	 *
	 * @var Document[]
	 */
	protected $documents = [];

	/**
	 * Current document.
	 *
	 * Holds the current document.
	 *
	 * @since 2.0.0
	 * @access protected
	 *
	 * @var Document
	 */
	protected $current_doc;

	/**
	 * Switched data.
	 *
	 * Holds the current document when changing to the requested post.
	 *
	 * @since 2.0.0
	 * @access protected
	 *
	 * @var array
	 */
	protected $switched_data = [];

	protected $cpt = [];

	/**
	 * Documents manager constructor.
	 *
	 * Initializing the Elementor documents manager.
	 *
	 * @since 2.0.0
	 * @access public
	 */
	public function __construct() {
		add_action( 'elementor/documents/register', [ $this, 'register_default_types' ], 0 );
		add_action( 'elementor/ajax/register_actions', [ $this, 'register_ajax_actions' ] );
		add_filter( 'post_row_actions', [ $this, 'filter_post_row_actions' ], 11, 2 );
		add_filter( 'page_row_actions', [ $this, 'filter_post_row_actions' ], 11, 2 );
		add_filter( 'user_has_cap', [ $this, 'remove_user_edit_cap' ], 10, 3 );
		add_filter( 'elementor/editor/localize_settings', [ $this, 'localize_settings' ] );
	}

	/**
	 * Register ajax actions.
	 *
	 * Process ajax action handles when saving data and discarding changes.
	 *
	 * Fired by `elementor/ajax/register_actions` action.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @param Ajax $ajax_manager An instance of the ajax manager.
	 */
	public function register_ajax_actions( $ajax_manager ) {
		$ajax_manager->register_ajax_action( 'save_builder', [ $this, 'ajax_save' ] );
		$ajax_manager->register_ajax_action( 'discard_changes', [ $this, 'ajax_discard_changes' ] );
		$ajax_manager->register_ajax_action( 'get_document_config', [ $this, 'ajax_get_document_config' ] );
	}

	/**
	 * Register default types.
	 *
	 * Registers the default document types.
	 *
	 * @since 2.0.0
	 * @access public
	 */
	public function register_default_types() {
		$default_types = [
			'post' => Post::get_class_full_name(), // BC.
			'wp-post' => Post::get_class_full_name(),
			'wp-page' => Page::get_class_full_name(),
		];

		foreach ( $default_types as $type => $class ) {
			$this->register_document_type( $type, $class );
		}
	}

	/**
	 * Register document type.
	 *
	 * Registers a single document.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @param string $type  Document type name.
	 * @param string $class The name of the class that registers the document type.
	 *                      Full name with the namespace.
	 *
	 * @return Documents_Manager The updated document manager instance.
	 */
	public function register_document_type( $type, $class ) {
		$this->types[ $type ] = $class;

		$cpt = $class::get_property( 'cpt' );

		if ( $cpt ) {
			foreach ( $cpt as $post_type ) {
				$this->cpt[ $post_type ] = $type;
			}
		}

		if ( $class::get_property( 'register_type' ) ) {
			Source_Local::add_template_type( $type );
		}

		return $this;
	}

	/**
	 * Get document.
	 *
	 * Retrieve the document data based on a post ID.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @param int  $post_id    Post ID.
	 * @param bool $from_cache Optional. Whether to retrieve cached data. Default is true.
	 *
	 * @return false|Document Document data or false if post ID was not entered.
	 */
	public function get( $post_id, $from_cache = true ) {
		$this->register_types();

		$post_id = absint( $post_id );

		if ( ! $post_id || ! get_post( $post_id ) ) {
			return false;
		}

		/**
		 * Retrieve document post ID.
		 *
		 * Filters the document post ID.
		 *
		 * @since 2.0.7
		 *
		 * @param int $post_id The post ID of the document.
		 */
		$post_id = apply_filters( 'elementor/documents/get/post_id', $post_id );

		if ( ! $from_cache || ! isset( $this->documents[ $post_id ] ) ) {

			if ( wp_is_post_autosave( $post_id ) ) {
				$post_type = get_post_type( wp_get_post_parent_id( $post_id ) );
			} else {
				$post_type = get_post_type( $post_id );
			}

			$doc_type = 'post';

			if ( isset( $this->cpt[ $post_type ] ) ) {
				$doc_type = $this->cpt[ $post_type ];
			}

			$meta_type = get_post_meta( $post_id, Document::TYPE_META_KEY, true );

			if ( $meta_type && isset( $this->types[ $meta_type ] ) ) {
				$doc_type = $meta_type;
			}

			$doc_type_class = $this->get_document_type( $doc_type );
			$this->documents[ $post_id ] = new $doc_type_class( [
				'post_id' => $post_id,
			] );
		}

		return $this->documents[ $post_id ];
	}

	/**
	 * Get document or autosave.
	 *
	 * Retrieve either the document or the autosave.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @param int $id      Optional. Post ID. Default is `0`.
	 * @param int $user_id Optional. User ID. Default is `0`.
	 *
	 * @return false|Document The document if it exist, False otherwise.
	 */
	public function get_doc_or_auto_save( $id, $user_id = 0 ) {
		$document = $this->get( $id );
		if ( $document && $document->get_autosave_id( $user_id ) ) {
			$document = $document->get_autosave( $user_id );
		}

		return $document;
	}

	/**
	 * Get document for frontend.
	 *
	 * Retrieve the document for frontend use.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @param int $post_id Optional. Post ID. Default is `0`.
	 *
	 * @return false|Document The document if it exist, False otherwise.
	 */
	public function get_doc_for_frontend( $post_id ) {
		if ( is_preview() || Plugin::$instance->preview->is_preview_mode() ) {
			$document = $this->get_doc_or_auto_save( $post_id, get_current_user_id() );
		} else {
			$document = $this->get( $post_id );
		}

		return $document;
	}

	/**
	 * Get document type.
	 *
	 * Retrieve the type of any given document.
	 *
	 * @since  2.0.0
	 * @access public
	 *
	 * @param string $type
	 *
	 * @param string $fallback
	 *
	 * @return Document|bool The type of the document.
	 */
	public function get_document_type( $type, $fallback = 'post' ) {
		$types = $this->get_document_types();

		if ( isset( $types[ $type ] ) ) {
			return $types[ $type ];
		}

		if ( isset( $types[ $fallback ] ) ) {
			return $types[ $fallback ];
		}

		return false;
	}

	/**
	 * Get document types.
	 *
	 * Retrieve the all the registered document types.
	 *
	 * @since  2.0.0
	 * @access public
	 *
	 * @param array $args      Optional. An array of key => value arguments to match against
	 *                               the properties. Default is empty array.
	 * @param string $operator Optional. The logical operation to perform. 'or' means only one
	 *                               element from the array needs to match; 'and' means all elements
	 *                               must match; 'not' means no elements may match. Default 'and'.
	 *
	 * @return Document[] All the registered document types.
	 */
	public function get_document_types( $args = [], $operator = 'and' ) {
		$this->register_types();

		if ( ! empty( $args ) ) {
			$types_properties = $this->get_types_properties();

			$filtered = wp_filter_object_list( $types_properties, $args, $operator );

			return array_intersect_key( $this->types, $filtered );
		}

		return $this->types;
	}

	/**
	 * Get document types with their properties.
	 *
	 * @return array A list of properties arrays indexed by the type.
	 */
	public function get_types_properties() {
		$types_properties = [];

		foreach ( $this->get_document_types() as $type => $class ) {
			$types_properties[ $type ] = $class::get_properties();
		}
		return $types_properties;
	}

	/**
	 * Create a document.
	 *
	 * Create a new document using any given parameters.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @param string $type      Document type.
	 * @param array  $post_data An array containing the post data.
	 * @param array  $meta_data An array containing the post meta data.
	 *
	 * @return Document The type of the document.
	 */
	public function create( $type, $post_data = [], $meta_data = [] ) {
		$class = $this->get_document_type( $type, false );

		if ( ! $class ) {
			return new \WP_Error( 500, sprintf( 'Type %s does not exist.', $type ) );
		}

		if ( empty( $post_data['post_title'] ) ) {
			$post_data['post_title'] = esc_html__( 'Elementor', 'elementor' );
			if ( 'post' !== $type ) {
				$post_data['post_title'] = sprintf(
					/* translators: %s: Document title. */
					__( 'Elementor %s', 'elementor' ),
					call_user_func( [ $class, 'get_title' ] )
				);
			}
			$update_title = true;
		}

		$meta_data['_elementor_edit_mode'] = 'builder';

		// Save the type as-is for plugins that hooked at `wp_insert_post`.
		$meta_data[ Document::TYPE_META_KEY ] = $type;

		$post_data['meta_input'] = $meta_data;

		$post_id = wp_insert_post( $post_data );

		if ( ! empty( $update_title ) ) {
			$post_data['ID'] = $post_id;
			$post_data['post_title'] .= ' #' . $post_id;

			// The meta doesn't need update.
			unset( $post_data['meta_input'] );

			wp_update_post( $post_data );
		}

		/** @var Document $document */
		$document = new $class( [
			'post_id' => $post_id,
		] );

		// Let the $document to re-save the template type by his way + version.
		$document->save( [] );

		return $document;
	}

	/**
	 * Remove user edit capabilities if document is not editable.
	 *
	 * Filters the user capabilities to disable editing in admin.
	 *
	 * @param array $allcaps An array of all the user's capabilities.
	 * @param array $caps    Actual capabilities for meta capability.
	 * @param array $args    Optional parameters passed to has_cap(), typically object ID.
	 *
	 * @return array
	 */
	public function remove_user_edit_cap( $allcaps, $caps, $args ) {
		global $pagenow;

		if ( ! in_array( $pagenow, [ 'post.php', 'edit.php' ], true ) ) {
			return $allcaps;
		}

		// Don't touch not existing or not allowed caps.
		if ( empty( $caps[0] ) || empty( $allcaps[ $caps[0] ] ) ) {
			return $allcaps;
		}

		$capability = $args[0];

		if ( 'edit_post' !== $capability ) {
			return $allcaps;
		}

		if ( empty( $args[2] ) ) {
			return $allcaps;
		}

		$post_id = $args[2];

		$document = Plugin::$instance->documents->get( $post_id );

		if ( ! $document ) {
			return $allcaps;
		}

		$allcaps[ $caps[0] ] = $document::get_property( 'is_editable' );

		return $allcaps;
	}

	/**
	 * Filter Post Row Actions.
	 *
	 * Let the Document to filter the array of row action links on the Posts list table.
	 *
	 * @param array $actions
	 * @param \WP_Post $post
	 *
	 * @return array
	 */
	public function filter_post_row_actions( $actions, $post ) {
		$document = $this->get( $post->ID );

		if ( $document ) {
			$actions = $document->filter_admin_row_actions( $actions );
		}

		return $actions;
	}

	/**
	 * Save document data using ajax.
	 *
	 * Save the document on the builder using ajax, when saving the changes, and refresh the editor.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @param $request Post ID.
	 *
	 * @throws \Exception If current user don't have permissions to edit the post or the post is not using Elementor.
	 *
	 * @return array The document data after saving.
	 */
	public function ajax_save( $request ) {
		$document = $this->get( $request['editor_post_id'] );

		if ( ! $document->is_built_with_elementor() || ! $document->is_editable_by_current_user() ) {
			throw new \Exception( 'Access denied.' );
		}

		$this->switch_to_document( $document );

		// Set the post as global post.
		Plugin::$instance->db->switch_to_post( $document->get_post()->ID );

		$status = Document::STATUS_DRAFT;

		if ( isset( $request['status'] ) && in_array( $request['status'], [ Document::STATUS_PUBLISH, Document::STATUS_PRIVATE, Document::STATUS_PENDING, Document::STATUS_AUTOSAVE ], true ) ) {
			$status = $request['status'];
		}

		if ( Document::STATUS_AUTOSAVE === $status ) {
			// If the post is a draft - save the `autosave` to the original draft.
			// Allow a revision only if the original post is already published.
			if ( in_array( $document->get_post()->post_status, [ Document::STATUS_PUBLISH, Document::STATUS_PRIVATE ], true ) ) {
				$document = $document->get_autosave( 0, true );
			}
		}

		// Set default page template because the footer-saver doesn't send default values,
		// But if the template was changed from canvas to default - it needed to save.
		if ( Utils::is_cpt_custom_templates_supported() && ! isset( $request['settings']['template'] ) ) {
			$request['settings']['template'] = 'default';
		}

		$data = [
			'elements' => $request['elements'],
			'settings' => $request['settings'],
		];

		$document->save( $data );

		// Refresh after save.
		$document = $this->get( $document->get_post()->ID, false );

		$return_data = [
			'status' => $document->get_post()->post_status,
			'config' => [
				'document' => [
					'last_edited' => $document->get_last_edited(),
					'urls' => [
						'wp_preview' => $document->get_wp_preview_url(),
					],
				],
			],
		];

		/**
		 * Returned documents ajax saved data.
		 *
		 * Filters the ajax data returned when saving the post on the builder.
		 *
		 * @since 2.0.0
		 *
		 * @param array    $return_data The returned data.
		 * @param Document $document    The document instance.
		 */
		$return_data = apply_filters( 'elementor/documents/ajax_save/return_data', $return_data, $document );

		return $return_data;
	}

	/**
	 * Ajax discard changes.
	 *
	 * Load the document data from an autosave, deleting unsaved changes.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @param $request
	 *
	 * @return bool True if changes discarded, False otherwise.
	 */
	public function ajax_discard_changes( $request ) {
		$document = $this->get( $request['editor_post_id'] );

		$autosave = $document->get_autosave();

		if ( $autosave ) {
			$success = $autosave->delete();
		} else {
			$success = true;
		}

		return $success;
	}

	public function ajax_get_document_config( $request ) {
		$post_id = absint( $request['id'] );

		Plugin::$instance->editor->set_post_id( $post_id );

		$document = $this->get_doc_or_auto_save( $post_id );

		if ( ! $document ) {
			throw new \Exception( 'Not Found.' );
		}

		if ( ! $document->is_editable_by_current_user() ) {
			throw new \Exception( 'Access denied.' );
		}

		// Set the global data like $post, $authordata and etc
		Plugin::$instance->db->switch_to_post( $post_id );

		$this->switch_to_document( $document );

		// Change mode to Builder
		$document->set_is_built_with_elementor( true );

		$doc_config = $document->get_config();

		return $doc_config;
	}

	/**
	 * Switch to document.
	 *
	 * Change the document to any new given document type.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @param Document $document The document to switch to.
	 */
	public function switch_to_document( $document ) {
		// If is already switched, or is the same post, return.
		if ( $this->current_doc === $document ) {
			$this->switched_data[] = false;
			return;
		}

		$this->switched_data[] = [
			'switched_doc' => $document,
			'original_doc' => $this->current_doc, // Note, it can be null if the global isn't set
		];

		$this->current_doc = $document;
	}

	/**
	 * Restore document.
	 *
	 * Rollback to the original document.
	 *
	 * @since 2.0.0
	 * @access public
	 */
	public function restore_document() {
		$data = array_pop( $this->switched_data );

		// If not switched, return.
		if ( ! $data ) {
			return;
		}

		$this->current_doc = $data['original_doc'];
	}

	/**
	 * Get current document.
	 *
	 * Retrieve the current document.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @return Document The current document.
	 */
	public function get_current() {
		return $this->current_doc;
	}

	public function localize_settings( $settings ) {
		$translations = [];

		foreach ( $this->get_document_types() as $type => $class ) {
			$translations[ $type ] = $class::get_title();
		}

		return array_replace_recursive( $settings, [
			'i18n' => $translations,
		] );
	}

	private function register_types() {
		if ( ! did_action( 'elementor/documents/register' ) ) {
			/**
			 * Register Elementor documents.
			 *
			 * @since 2.0.0
			 *
			 * @param Documents_Manager $this The document manager instance.
			 */
			do_action( 'elementor/documents/register', $this );
		}
	}

	/**
	 * Get create new post URL.
	 *
	 * Retrieve a custom URL for creating a new post/page using Elementor.
	 *
	 * @param string $post_type Optional. Post type slug. Default is 'page'.
	 * @param string|null $template_type Optional. Query arg 'template_type'. Default is null.
	 *
	 * @return string A URL for creating new post using Elementor.
	 */
	public static function get_create_new_post_url( $post_type = 'page', $template_type = null ) {
		$query_args = [
			'action' => 'elementor_new_post',
			'post_type' => $post_type,
		];

		if ( $template_type ) {
			$query_args['template_type'] = $template_type;
		}

		$new_post_url = add_query_arg( $query_args, admin_url( 'edit.php' ) );

		$new_post_url = add_query_arg( '_wpnonce', wp_create_nonce( 'elementor_action_new_post' ), $new_post_url );

		return $new_post_url;
	}
}
core/schemes/typography.php000064400000006057151327220420012050 0ustar00<?php
namespace Elementor\Core\Schemes;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor typography scheme.
 *
 * Elementor typography scheme class is responsible for initializing a scheme
 * for typography.
 *
 * @since 1.0.0
 */
class Typography extends Base_UI {

	/**
	 * 1st typography scheme.
	 */
	const TYPOGRAPHY_1 = '1';

	/**
	 * 2nd typography scheme.
	 */
	const TYPOGRAPHY_2 = '2';

	/**
	 * 3rd typography scheme.
	 */
	const TYPOGRAPHY_3 = '3';

	/**
	 * 4th typography scheme.
	 */
	const TYPOGRAPHY_4 = '4';

	/**
	 * Get typography scheme type.
	 *
	 * Retrieve the typography scheme type.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @return string Typography scheme type.
	 */
	public static function get_type() {
		return 'typography';
	}

	/**
	 * Get typography scheme title.
	 *
	 * Retrieve the typography scheme title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Typography scheme title.
	 */
	public function get_title() {
		return esc_html__( 'Typography', 'elementor' );
	}

	/**
	 * Get typography scheme disabled title.
	 *
	 * Retrieve the typography scheme disabled title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Typography scheme disabled title.
	 */
	public function get_disabled_title() {
		return esc_html__( 'Default Fonts', 'elementor' );
	}

	/**
	 * Get typography scheme titles.
	 *
	 * Retrieve the typography scheme titles.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array Typography scheme titles.
	 */
	public function get_scheme_titles() {
		return [
			self::TYPOGRAPHY_1 => esc_html__( 'Primary Headline', 'elementor' ),
			self::TYPOGRAPHY_2 => esc_html__( 'Secondary Headline', 'elementor' ),
			self::TYPOGRAPHY_3 => esc_html__( 'Body Text', 'elementor' ),
			self::TYPOGRAPHY_4 => esc_html__( 'Accent Text', 'elementor' ),
		];
	}

	/**
	 * Get default typography scheme.
	 *
	 * Retrieve the default typography scheme.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array Default typography scheme.
	 */
	public function get_default_scheme() {
		return [
			self::TYPOGRAPHY_1 => [
				'font_family' => 'Roboto',
				'font_weight' => '600',
			],
			self::TYPOGRAPHY_2 => [
				'font_family' => 'Roboto Slab',
				'font_weight' => '400',
			],
			self::TYPOGRAPHY_3 => [
				'font_family' => 'Roboto',
				'font_weight' => '400',
			],
			self::TYPOGRAPHY_4 => [
				'font_family' => 'Roboto',
				'font_weight' => '500',
			],
		];
	}

	/**
	 * Init system typography schemes.
	 *
	 * Initialize the system typography schemes.
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @return array System typography schemes.
	 */
	protected function _init_system_schemes() {
		return [];
	}

	/**
	 * Print typography scheme content template.
	 *
	 * Used to generate the HTML in the editor using Underscore JS template. The
	 * variables for the class are available using `data` JS object.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function print_template_content() {
		?>
		<div class="elementor-panel-scheme-items"></div>
		<?php
	}
}
core/schemes/color-picker.php000064400000001707151327220420012230 0ustar00<?php
namespace Elementor\Core\Schemes;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor color picker scheme.
 *
 * Elementor color picker scheme class is responsible for initializing a scheme
 * for color pickers.
 *
 * @since 1.0.0
 */
class Color_Picker extends Base {

	/**
	 * Get color picker scheme type.
	 *
	 * Retrieve the color picker scheme type.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @return string Color picker scheme type.
	 */
	public static function get_type() {
		return 'color-picker';
	}

	/**
	 * Get default color picker scheme.
	 *
	 * Retrieve the default color picker scheme.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array Default color picker scheme.
	 */
	public function get_default_scheme() {
		return [
			1 => '#6ec1e4',
			2 => '#54595f',
			3 => '#7a7a7a',
			4 => '#61ce70',
			5 => '#4054b2',
			6 => '#23a455',
			7 => '#000',
			8 => '#fff',
		];
	}
}
core/schemes/base.php000064400000004150151327220420010544 0ustar00<?php
namespace Elementor\Core\Schemes;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor scheme base.
 *
 * An abstract class implementing the scheme interface, responsible for
 * creating new schemes.
 *
 * @since 1.0.0
 * @abstract
 */
abstract class Base {

	/**
	 * DB option name for the time when the scheme was last updated.
	 */
	const LAST_UPDATED_META = '_elementor_scheme_last_updated';

	/**
	 * Get scheme type.
	 *
	 * Retrieve the scheme type.
	 *
	 * @since 2.8.0
	 * @access public
	 * @static
	 */
	public static function get_type() {
		return '';
	}

	/**
	 * Get default scheme.
	 *
	 * Retrieve the default scheme.
	 *
	 * @since 2.8.0
	 * @access public
	 */
	abstract public function get_default_scheme();

	/**
	 * Get description.
	 *
	 * Retrieve the scheme description.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @return string Scheme description.
	 */
	public static function get_description() {
		return '';
	}

	/**
	 * Get scheme value.
	 *
	 * Retrieve the scheme value.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array Scheme value.
	 */
	public function get_scheme_value() {
		$scheme_value = get_option( 'elementor_scheme_' . static::get_type() );

		if ( ! $scheme_value ) {
			$scheme_value = $this->get_default_scheme();

			update_option( 'elementor_scheme_' . static::get_type(), $scheme_value );
		}

		return $scheme_value;
	}

	/**
	 * Save scheme.
	 *
	 * Update Elementor scheme in the database, and update the last updated
	 * scheme time.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param array $posted
	 */
	public function save_scheme( array $posted ) {
		update_option( 'elementor_scheme_' . static::get_type(), $posted );

		update_option( self::LAST_UPDATED_META, time() );
	}

	/**
	 * Get scheme.
	 *
	 * Retrieve the scheme.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array The scheme.
	 */
	public function get_scheme() {
		$scheme = [];

		foreach ( $this->get_scheme_value() as $scheme_key => $scheme_value ) {
			$scheme[ $scheme_key ] = [
				'value' => $scheme_value,
			];
		}

		return $scheme;
	}
}
core/schemes/base-ui.php000064400000006334151327220420011165 0ustar00<?php

namespace Elementor\Core\Schemes;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

abstract class Base_UI extends Base {

	/**
	 * System schemes.
	 *
	 * Holds the list of all the system schemes.
	 *
	 * @since 2.8.0
	 * @access private
	 *
	 * @var array System schemes.
	 */
	private $_system_schemes;

	/**
	 * Get scheme title.
	 *
	 * Retrieve the scheme title.
	 *
	 * @since 2.8.0
	 * @access public
	 */
	abstract public function get_title();

	/**
	 * Get scheme disabled title.
	 *
	 * Retrieve the scheme disabled title.
	 *
	 * @since 2.8.0
	 * @access public
	 */
	abstract public function get_disabled_title();

	/**
	 * Get scheme titles.
	 *
	 * Retrieve the scheme titles.
	 *
	 * @since 2.8.0
	 * @access public
	 */
	abstract public function get_scheme_titles();

	/**
	 * Print scheme content template.
	 *
	 * Used to generate the HTML in the editor using Underscore JS template. The
	 * variables for the class are available using `data` JS object.
	 *
	 * @since 2.8.0
	 * @access public
	 */
	abstract public function print_template_content();

	/**
	 * Init system schemes.
	 *
	 * Initialize the system schemes.
	 *
	 * @since 2.8.0
	 * @access protected
	 * @abstract
	 */
	abstract protected function _init_system_schemes();

	/**
	 * Get system schemes.
	 *
	 * Retrieve the system schemes.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array System schemes.
	 */
	final public function get_system_schemes() {
		if ( null === $this->_system_schemes ) {
			$this->_system_schemes = $this->_init_system_schemes();
		}

		return $this->_system_schemes;
	}

	/**
	 * Print scheme template.
	 *
	 * Used to generate the scheme template on the editor using Underscore JS
	 * template.
	 *
	 * @since 2.8.0
	 * @access public
	 */
	final public function print_template() {
		?>
		<script type="text/template" id="tmpl-elementor-panel-schemes-<?php echo esc_attr( static::get_type() ); ?>">
			<div class="elementor-panel-scheme-buttons">
				<div class="elementor-panel-scheme-button-wrapper elementor-panel-scheme-reset">
					<button class="elementor-button">
						<i class="fa fa-undo" aria-hidden="true"></i>
						<?php echo esc_html__( 'Reset', 'elementor' ); ?>
					</button>
				</div>
				<div class="elementor-panel-scheme-button-wrapper elementor-panel-scheme-discard">
					<button class="elementor-button">
						<i class="eicon-close" aria-hidden="true"></i>
						<?php echo esc_html__( 'Discard', 'elementor' ); ?>
					</button>
				</div>
				<div class="elementor-panel-scheme-button-wrapper elementor-panel-scheme-save">
					<button class="elementor-button elementor-button-success" disabled><?php echo esc_html__( 'Apply', 'elementor' ); ?></button>
				</div>
			</div>
			<?php $this->print_template_content(); ?>
		</script>
		<?php
	}

	/**
	 * Get scheme.
	 *
	 * Retrieve the scheme.
	 *
	 * @since 2.8.0
	 * @access public
	 *
	 * @return array The scheme.
	 */
	public function get_scheme() {
		$scheme = [];

		$titles = $this->get_scheme_titles();

		foreach ( $this->get_scheme_value() as $scheme_key => $scheme_value ) {
			$scheme[ $scheme_key ] = [
				'title' => isset( $titles[ $scheme_key ] ) ? $titles[ $scheme_key ] : '',
				'value' => $scheme_value,
			];
		}

		return $scheme;
	}
}
core/schemes/manager.php000064400000017426151327220420011256 0ustar00<?php
namespace Elementor\Core\Schemes;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

use Elementor\Core\Common\Modules\Ajax\Module as Ajax;
use Elementor\TemplateLibrary\Source_Local;
use Elementor\User;

/**
 * Elementor scheme manager.
 *
 * Elementor scheme manager handler class is responsible for registering and
 * initializing all the supported schemes.
 *
 * @since 1.0.0
 */
class Manager {

	/**
	 * Registered schemes.
	 *
	 * Holds the list of all the registered schemes.
	 *
	 * @access protected
	 *
	 * @var Base[]
	 */
	protected $_registered_schemes = [];

	/**
	 * Enabled schemes.
	 *
	 * Holds the list of all the enabled schemes.
	 *
	 * @access private
	 * @static
	 *
	 * @var array
	 */
	private static $_enabled_schemes;

	/**
	 * Schemes types.
	 *
	 * Holds the list of the schemes types. Default types are `color`,
	 * `typography` and `color-picker`.
	 *
	 * @access private
	 * @static
	 *
	 * @var array
	 */
	private static $_schemes_types = [
		'color',
		'typography',
		'color-picker',
	];

	/**
	 * Register new scheme.
	 *
	 * Add a new scheme to the schemes list. The method creates a new scheme
	 * instance for any given scheme class and adds the scheme to the registered
	 * schemes list.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param string $scheme_class Scheme class name.
	 */
	public function register_scheme( $scheme_class ) {
		/** @var Base $scheme_instance */
		$scheme_instance = new $scheme_class();

		$this->_registered_schemes[ $scheme_instance::get_type() ] = $scheme_instance;
	}

	/**
	 * Unregister scheme.
	 *
	 * Removes a scheme from the list of registered schemes.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param string $id Scheme ID.
	 *
	 * @return bool True if the scheme was removed, False otherwise.
	 */
	public function unregister_scheme( $id ) {
		if ( ! isset( $this->_registered_schemes[ $id ] ) ) {
			return false;
		}
		unset( $this->_registered_schemes[ $id ] );
		return true;
	}

	/**
	 * Get registered schemes.
	 *
	 * Retrieve the registered schemes list from the current instance.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return Base[] Registered schemes.
	 */
	public function get_registered_schemes() {
		return $this->_registered_schemes;
	}

	/**
	 * Get schemes data.
	 *
	 * Retrieve all the registered schemes with data for each scheme.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array Registered schemes with each scheme data.
	 */
	public function get_registered_schemes_data() {
		$data = [];

		foreach ( $this->get_registered_schemes() as $scheme ) {
			$type = $scheme::get_type();

			$data[ $type ] = [
				'items' => $scheme->get_scheme(),
			];

			if ( $scheme instanceof Base_UI ) {
				$data[ $type ]['title'] = $scheme->get_title();
				$data[ $type ]['disabled_title'] = $scheme->get_disabled_title();
			}
		}

		return $data;
	}

	/**
	 * Get default schemes.
	 *
	 * Retrieve all the registered schemes with default scheme for each scheme.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array Registered schemes with with default scheme for each scheme.
	 */
	public function get_schemes_defaults() {
		$data = [];

		foreach ( $this->get_registered_schemes() as $scheme ) {
			$type = $scheme::get_type();

			$data[ $type ] = [
				'items' => $scheme->get_default_scheme(),
			];

			if ( $scheme instanceof Base_UI ) {
				$data[ $type ]['title'] = $scheme->get_title();
			}
		}

		return $data;
	}

	/**
	 * Get system schemes.
	 *
	 * Retrieve all the registered ui schemes with system schemes for each scheme.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array Registered ui schemes with with system scheme for each scheme.
	 */
	public function get_system_schemes() {
		$data = [];

		foreach ( $this->get_registered_schemes() as $scheme ) {
			if ( $scheme instanceof Base_UI ) {
				$data[ $scheme::get_type() ] = $scheme->get_system_schemes();
			}
		}

		return $data;
	}

	/**
	 * Get scheme.
	 *
	 * Retrieve a single scheme from the list of all the registered schemes in
	 * the current instance.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param string $id Scheme ID.
	 *
	 * @return false|Base Scheme instance if scheme exist, False otherwise.
	 */
	public function get_scheme( $id ) {
		$schemes = $this->get_registered_schemes();

		if ( ! isset( $schemes[ $id ] ) ) {
			return false;
		}

		return $schemes[ $id ];
	}

	/**
	 * Get scheme value.
	 *
	 * Retrieve the scheme value from the list of all the registered schemes in
	 * the current instance.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param string $scheme_type  Scheme type.
	 * @param string $scheme_value Scheme value.
	 *
	 * @return false|string Scheme value if scheme exist, False otherwise.
	 */
	public function get_scheme_value( $scheme_type, $scheme_value ) {
		$scheme = $this->get_scheme( $scheme_type );

		if ( ! $scheme ) {
			return false;
		}

		return $scheme->get_scheme_value()[ $scheme_value ];
	}

	/**
	 * Ajax apply scheme.
	 *
	 * Ajax handler for Elementor apply_scheme.
	 *
	 * Fired by `wp_ajax_elementor_apply_scheme` action.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param array $data
	 *
	 * @return bool
	 */
	public function ajax_apply_scheme( array $data ) {
		if ( ! User::is_current_user_can_edit_post_type( Source_Local::CPT ) ) {
			return false;
		}

		if ( ! isset( $data['scheme_name'] ) ) {
			return false;
		}

		$scheme_obj = $this->get_scheme( $data['scheme_name'] );

		if ( ! $scheme_obj ) {
			return false;
		}

		$posted = json_decode( $data['data'], true );

		$scheme_obj->save_scheme( $posted );

		return true;
	}

	/**
	 * Print ui schemes templates.
	 *
	 * Used to generate the scheme templates on the editor using Underscore JS
	 * template, for all the registered ui schemes.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function print_schemes_templates() {
		foreach ( $this->get_registered_schemes() as $scheme ) {
			if ( $scheme instanceof Base_UI ) {
				$scheme->print_template();
			}
		}
	}

	/**
	 * @param Ajax $ajax
	 *
	 * @since 2.3.0
	 * @access public
	 */
	public function register_ajax_actions( Ajax $ajax ) {
		$ajax->register_ajax_action( 'apply_scheme', [ $this, 'ajax_apply_scheme' ] );
	}
	/**
	 * Get enabled schemes.
	 *
	 * Retrieve all enabled schemes from the list of the registered schemes in
	 * the current instance.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @return array Enabled schemes.
	 */
	public static function get_enabled_schemes() {
		if ( null === self::$_enabled_schemes ) {
			$enabled_schemes = [];

			foreach ( self::$_schemes_types as $schemes_type ) {
				if ( 'yes' === get_option( 'elementor_disable_' . $schemes_type . '_schemes' ) ) {
					continue;
				}
				$enabled_schemes[] = $schemes_type;
			}

			/**
			 * Enabled schemes.
			 *
			 * Filters the list of enabled schemes.
			 *
			 * @since 1.0.0
			 *
			 * @param array $enabled_schemes The list of enabled schemes.
			 */
			$enabled_schemes = apply_filters( 'elementor/schemes/enabled_schemes', $enabled_schemes );

			self::$_enabled_schemes = $enabled_schemes;
		}
		return self::$_enabled_schemes;
	}

	/**
	 * Register default schemes.
	 *
	 * Add a default schemes to the register schemes list.
	 *
	 * This method is used to set initial schemes when initializing the class.
	 *
	 * @since 1.7.12
	 * @access private
	 */
	private function register_default_schemes() {
		foreach ( self::$_schemes_types as $scheme_type ) {
			$this->register_scheme( __NAMESPACE__ . '\\' . str_replace( '-', '_', ucwords( $scheme_type, '-' ) ) );
		}
	}

	/**
	 * Schemes manager constructor.
	 *
	 * Initializing Elementor schemes manager and register default schemes.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function __construct() {
		$this->register_default_schemes();

		add_action( 'elementor/ajax/register_actions', [ $this, 'register_ajax_actions' ] );
	}
}
core/schemes/color.php000064400000015011151327220420010746 0ustar00<?php
namespace Elementor\Core\Schemes;

use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor color scheme.
 *
 * Elementor color scheme class is responsible for initializing a scheme for
 * colors.
 *
 * @since 1.0.0
 */
class Color extends Base_UI {

	/**
	 * 1st color scheme.
	 */
	const COLOR_1 = '1';

	/**
	 * 2nd color scheme.
	 */
	const COLOR_2 = '2';

	/**
	 * 3rd color scheme.
	 */
	const COLOR_3 = '3';

	/**
	 * 4th color scheme.
	 */
	const COLOR_4 = '4';

	/**
	 * Get color scheme type.
	 *
	 * Retrieve the color scheme type.
	 *
	 * @since 1.0.0
	 * @access public
	 * @static
	 *
	 * @return string Color scheme type.
	 */
	public static function get_type() {
		return 'color';
	}

	/**
	 * Get color scheme title.
	 *
	 * Retrieve the color scheme title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Color scheme title.
	 */
	public function get_title() {
		return esc_html__( 'Colors', 'elementor' );
	}

	/**
	 * Get color scheme disabled title.
	 *
	 * Retrieve the color scheme disabled title.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Color scheme disabled title.
	 */
	public function get_disabled_title() {
		return esc_html__( 'Color Palettes', 'elementor' );
	}

	/**
	 * Get color scheme titles.
	 *
	 * Retrieve the color scheme titles.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array Color scheme titles.
	 */
	public function get_scheme_titles() {
		return [
			self::COLOR_1 => esc_html__( 'Primary', 'elementor' ),
			self::COLOR_2 => esc_html__( 'Secondary', 'elementor' ),
			self::COLOR_3 => esc_html__( 'Text', 'elementor' ),
			self::COLOR_4 => esc_html__( 'Accent', 'elementor' ),
		];
	}

	/**
	 * Get default color scheme.
	 *
	 * Retrieve the default color scheme.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array Default color scheme.
	 */
	public function get_default_scheme() {
		return [
			self::COLOR_1 => '#6ec1e4',
			self::COLOR_2 => '#54595f',
			self::COLOR_3 => '#7a7a7a',
			self::COLOR_4 => '#61ce70',
		];
	}

	/**
	 * Print color scheme content template.
	 *
	 * Used to generate the HTML in the editor using Underscore JS template. The
	 * variables for the class are available using `data` JS object.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function print_template_content() {
		?>
		<div class="elementor-panel-scheme-content elementor-panel-box">
			<div class="elementor-panel-heading">
				<div class="elementor-panel-heading-title"><?php echo esc_html__( 'Color Palette', 'elementor' ); ?></div>
			</div>
			<?php
			$description = static::get_description();

			if ( $description ) :
				?>
				<div class="elementor-panel-scheme-description elementor-descriptor"><?php echo esc_html( $description ); ?></div>
			<?php endif; ?>
			<div class="elementor-panel-scheme-items elementor-panel-box-content"></div>
		</div>
		<div class="elementor-panel-scheme-colors-more-palettes elementor-panel-box">
			<div class="elementor-panel-heading">
				<div class="elementor-panel-heading-title"><?php echo esc_html__( 'More Palettes', 'elementor' ); ?></div>
			</div>
			<div class="elementor-panel-box-content">
				<?php foreach ( $this->_get_system_schemes_to_print() as $scheme_name => $scheme ) : ?>
					<div class="elementor-panel-scheme-color-system-scheme" data-scheme-name="<?php echo esc_attr( $scheme_name ); ?>">
						<div class="elementor-panel-scheme-color-system-items">
							<?php foreach ( $scheme['items'] as $color_value ) : ?>
								<div class="elementor-panel-scheme-color-system-item" style="background-color: <?php echo esc_attr( $color_value ); ?>;"></div>
							<?php endforeach; ?>
						</div>
						<div class="elementor-title"><?php echo esc_html( $scheme['title'] ); ?></div>
					</div>
				<?php endforeach; ?>
			</div>
		</div>
		<?php
	}

	/**
	 * Init system color schemes.
	 *
	 * Initialize the system color schemes.
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @return array System color schemes.
	 */
	protected function _init_system_schemes() {
		return [
			'joker' => [
				'title' => 'Joker',
				'items' => [
					self::COLOR_1 => '#202020',
					self::COLOR_2 => '#b7b4b4',
					self::COLOR_3 => '#707070',
					self::COLOR_4 => '#f6121c',
				],
			],
			'ocean' => [
				'title' => 'Ocean',
				'items' => [
					self::COLOR_1 => '#1569ae',
					self::COLOR_2 => '#b6c9db',
					self::COLOR_3 => '#545454',
					self::COLOR_4 => '#fdd247',
				],
			],
			'royal' => [
				'title' => 'Royal',
				'items' => [
					self::COLOR_1 => '#d5ba7f',
					self::COLOR_2 => '#902729',
					self::COLOR_3 => '#ae4848',
					self::COLOR_4 => '#302a8c',
				],
			],
			'violet' => [
				'title' => 'Violet',
				'items' => [
					self::COLOR_1 => '#747476',
					self::COLOR_2 => '#ebca41',
					self::COLOR_3 => '#6f1683',
					self::COLOR_4 => '#a43cbd',
				],
			],
			'sweet' => [
				'title' => 'Sweet',
				'items' => [
					self::COLOR_1 => '#6ccdd9',
					self::COLOR_2 => '#763572',
					self::COLOR_3 => '#919ca7',
					self::COLOR_4 => '#f12184',
				],
			],
			'urban' => [
				'title' => 'Urban',
				'items' => [
					self::COLOR_1 => '#db6159',
					self::COLOR_2 => '#3b3b3b',
					self::COLOR_3 => '#7a7979',
					self::COLOR_4 => '#2abf64',
				],
			],
			'earth' => [
				'title' => 'Earth',
				'items' => [
					self::COLOR_1 => '#882021',
					self::COLOR_2 => '#c48e4c',
					self::COLOR_3 => '#825e24',
					self::COLOR_4 => '#e8c12f',
				],
			],
			'river' => [
				'title' => 'River',
				'items' => [
					self::COLOR_1 => '#8dcfc8',
					self::COLOR_2 => '#565656',
					self::COLOR_3 => '#50656e',
					self::COLOR_4 => '#dc5049',
				],
			],
			'pastel' => [
				'title' => 'Pastel',
				'items' => [
					self::COLOR_1 => '#f27f6f',
					self::COLOR_2 => '#f4cd78',
					self::COLOR_3 => '#a5b3c1',
					self::COLOR_4 => '#aac9c3',
				],
			],
		];
	}

	/**
	 * Get system color schemes to print.
	 *
	 * Retrieve the system color schemes
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @return array The system color schemes.
	 */
	protected function _get_system_schemes_to_print() {
		return $this->get_system_schemes();
	}

	/**
	 * Get current color scheme title.
	 *
	 * Retrieve the current color scheme title.
	 *
	 * @since 1.0.0
	 * @access protected
	 * @deprecated 3.3.0
	 *
	 * @return string The current color scheme title.
	 */
	protected function _get_current_scheme_title() {
		Plugin::$instance->modules_manager->get_modules( 'dev-tools' )->deprecation->deprecated_funtion( __METHOD__, '3.3.0' );

		return esc_html__( 'Color Palette', 'elementor' );
	}
}
core/debug/loading-inspection-manager.php000064400000002727151327220420014477 0ustar00<?php
namespace Elementor\Core\Debug;

use Elementor\Core\Debug\Classes\Inspection_Base;
use Elementor\Core\Debug\Classes\Theme_Missing;
use Elementor\Core\Debug\Classes\Htaccess;

class Loading_Inspection_Manager {

	public static $_instance = null;

	public static function instance() {
		if ( null === self::$_instance ) {
			self::$_instance = new Loading_Inspection_Manager();
		}
		return self::$_instance;
	}

	/** @var Inspection_Base[] */
	private $inspections = [];

	public function register_inspections() {
		$this->inspections['theme-missing'] = new Theme_Missing();
		$this->inspections['htaccess'] = new Htaccess();
	}

	/**
	 * @param Inspection_Base $inspection
	 */
	public function register_inspection( $inspection ) {
		$this->inspections[ $inspection->get_name() ] = $inspection;
	}

	public function run_inspections() {
		$debug_data = [
			'message' => esc_html__( 'We\'re sorry, but something went wrong. Click on \'Learn more\' and follow each of the steps to quickly solve it.', 'elementor' ),
			'header' => esc_html__( 'The preview could not be loaded', 'elementor' ),
			'doc_url' => 'https://go.elementor.com/preview-not-loaded/',
		];
		foreach ( $this->inspections as $inspection ) {
			if ( ! $inspection->run() ) {
				$debug_data = [
					'message' => $inspection->get_message(),
					'header' => $inspection->get_header_message(),
					'doc_url' => $inspection->get_help_doc_url(),
					'error' => true,
				];
				break;
			}
		}

		return $debug_data;
	}
}
core/debug/inspector.php000064400000006467151327220420011314 0ustar00<?php
namespace Elementor\Core\Debug;

use Elementor\Settings;
use Elementor\Tools;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Inspector {

	protected $is_enabled = false;

	protected $log = [];

	/**
	 * @since 2.1.2
	 * @access public
	 */
	public function __construct() {
		$is_debug = ( defined( 'WP_DEBUG' ) && WP_DEBUG );
		$option = get_option( 'elementor_enable_inspector', null );

		$this->is_enabled = is_null( $option ) ? $is_debug : 'enable' === $option;

		if ( $this->is_enabled ) {
			add_action( 'admin_bar_menu', [ $this, 'add_menu_in_admin_bar' ], 201 );
		}

		add_action( 'elementor/admin/after_create_settings/' . Tools::PAGE_ID, [ $this, 'register_admin_tools_fields' ], 50 );
	}

	/**
	 * @since 2.1.3
	 * @access public
	 */
	public function is_enabled() {
		return $this->is_enabled;
	}

	/**
	 * @since 2.1.3
	 * @access public
	 */
	public function register_admin_tools_fields( Tools $tools ) {
		$tools->add_fields( Settings::TAB_GENERAL, 'tools', [
			'enable_inspector' => [
				'label' => esc_html__( 'Debug Bar', 'elementor' ),
				'field_args' => [
					'type' => 'select',
					'std' => $this->is_enabled ? 'enable' : '',
					'options' => [
						'' => esc_html__( 'Disable', 'elementor' ),
						'enable' => esc_html__( 'Enable', 'elementor' ),
					],
					'desc' => esc_html__( 'Debug Bar adds an admin bar menu that lists all the templates that are used on a page that is being displayed.', 'elementor' ),
				],
			],
		] );
	}

	/**
	 * @since 2.1.2
	 * @access public
	 */
	public function parse_template_path( $template ) {
		// `untrailingslashit` for windows path style.
		if ( 0 === strpos( $template, untrailingslashit( ELEMENTOR_PATH ) ) ) {
			return 'Elementor - ' . basename( $template );
		}

		if ( 0 === strpos( $template, get_stylesheet_directory() ) ) {
			return wp_get_theme()->get( 'Name' ) . ' - ' . basename( $template );
		}

		$plugins_dir = dirname( ELEMENTOR_PATH );
		if ( 0 === strpos( $template, $plugins_dir ) ) {
			return ltrim( str_replace( $plugins_dir, '', $template ), '/\\' );
		}

		return str_replace( WP_CONTENT_DIR, '', $template );
	}

	/**
	 * @since 2.1.2
	 * @access public
	 */
	public function add_log( $module, $title, $url = '' ) {
		if ( ! $this->is_enabled ) {
			return;
		}

		if ( ! isset( $this->log[ $module ] ) ) {
			$this->log[ $module ] = [];
		}

		$this->log[ $module ][] = [
			'title' => $title,
			'url' => $url,
		];
	}

	/**
	 * @since 2.1.2
	 * @access public
	 */
	public function add_menu_in_admin_bar( \WP_Admin_Bar $wp_admin_bar ) {
		if ( empty( $this->log ) ) {
			return;
		}

		$wp_admin_bar->add_node( [
			'id' => 'elementor_inspector',
			'title' => esc_html__( 'Elementor Debugger', 'elementor' ),
		] );

		foreach ( $this->log as $module => $log ) {
			$module_id = sanitize_key( $module );

			$wp_admin_bar->add_menu( [
				'id' => 'elementor_inspector_' . $module_id,
				'parent' => 'elementor_inspector',
				'title' => $module,
			] );

			foreach ( $log as $index => $row ) {
				$url = $row['url'];

				unset( $row['url'] );

				$wp_admin_bar->add_menu( [
					'id' => 'elementor_inspector_log_' . $module_id . '_' . $index,
					'parent' => 'elementor_inspector_' . $module_id,
					'href' => $url,
					'title' => implode( ' > ', $row ),
					'meta' => [
						'target' => '_blank',
					],
				] );
			}
		}
	}
}
core/debug/classes/theme-missing.php000064400000001205151327220420013475 0ustar00<?php
namespace Elementor\Core\Debug\Classes;

use Elementor\Modules\SafeMode\Module as Safe_Mode;

class Theme_Missing extends Inspection_Base {

	public function run() {
		$safe_mode_enabled = get_option( Safe_Mode::OPTION_ENABLED, '' );
		if ( ! empty( $safe_mode_enabled ) ) {
			return true;
		}
		$theme = wp_get_theme();
		return $theme->exists();
	}

	public function get_name() {
		return 'theme-missing';
	}

	public function get_message() {
		return esc_html__( 'Some of your theme files are missing.', 'elementor' );
	}

	public function get_help_doc_url() {
		return 'https://go.elementor.com/preview-not-loaded/#theme-files';
	}
}
core/debug/classes/inspection-base.php000064400000000766151327220420014022 0ustar00<?php
namespace Elementor\Core\Debug\Classes;

abstract class Inspection_Base {

	/**
	 * @return bool
	 */
	abstract public function run();

	/**
	 * @return string
	 */
	abstract public function get_name();

	/**
	 * @return string
	 */
	abstract public function get_message();

	/**
	 * @return string
	 */
	public function get_header_message() {
		return esc_html__( 'The preview could not be loaded', 'elementor' );
	}

	/**
	 * @return string
	 */
	abstract public function get_help_doc_url();
}
core/debug/classes/htaccess.php000064400000002324151327220420012524 0ustar00<?php
namespace Elementor\Core\Debug\Classes;

use Elementor\Modules\SafeMode\Module as Safe_Mode;

class Htaccess extends Inspection_Base {

	private $message = '';

	public function __construct() {
		$this->message = esc_html__( 'Your site\'s .htaccess file appears to be missing.', 'elementor' );
	}

	public function run() {
		$safe_mode_enabled = get_option( Safe_Mode::OPTION_ENABLED, '' );
		if ( empty( $safe_mode_enabled ) || is_multisite() ) {
			return true;
		}

		$permalink_structure = get_option( 'permalink_structure' );
		if ( empty( $permalink_structure ) || empty( $_SERVER['SERVER_SOFTWARE'] ) ) {
			return true;
		}

		$server = strtoupper( $_SERVER['SERVER_SOFTWARE'] );

		if ( strstr( $server, 'APACHE' ) ) {
			$htaccess_file = get_home_path() . '.htaccess';
			/* translators: %s: Path to .htaccess file. */
			$this->message .= ' ' . sprintf( esc_html__( 'File Path: %s', 'elementor' ), $htaccess_file ) . ' ';
			return file_exists( $htaccess_file );
		}
		return true;
	}

	public function get_name() {
		return 'apache-htaccess';
	}

	public function get_message() {
		return $this->message;
	}

	public function get_help_doc_url() {
		return 'https://go.elementor.com/preview-not-loaded/#htaccess';
	}
}
core/dynamic-tags/data-tag.php000064400000001363151327220420012250 0ustar00<?php
namespace Elementor\Core\DynamicTags;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor base data tag.
 *
 * An abstract class to register new Elementor data tags.
 *
 * @since 2.0.0
 * @abstract
 */
abstract class Data_Tag extends Base_Tag {

	/**
	 * @since 2.0.0
	 * @access protected
	 * @abstract
	 *
	 * @param array $options
	 */
	abstract protected function get_value( array $options = [] );

	/**
	 * @since 2.0.0
	 * @access public
	 */
	final public function get_content_type() {
		return 'plain';
	}

	/**
	 * @since 2.0.0
	 * @access public
	 *
	 * @param array $options
	 *
	 * @return mixed
	 */
	public function get_content( array $options = [] ) {
		return $this->get_value( $options );
	}
}
core/dynamic-tags/manager.php000064400000023242151327220420012200 0ustar00<?php
namespace Elementor\Core\DynamicTags;

use Elementor\Core\Common\Modules\Ajax\Module as Ajax;
use Elementor\Core\Files\CSS\Post;
use Elementor\Core\Files\CSS\Post_Preview;
use Elementor\Plugin;
use Elementor\User;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

class Manager {

	const TAG_LABEL = 'elementor-tag';

	const MODE_RENDER = 'render';

	const MODE_REMOVE = 'remove';

	const DYNAMIC_SETTING_KEY = '__dynamic__';

	private $tags_groups = [];

	private $tags_info = [];

	private $parsing_mode = self::MODE_RENDER;

	/**
	 * Dynamic tags manager constructor.
	 *
	 * Initializing Elementor dynamic tags manager.
	 *
	 * @since 2.0.0
	 * @access public
	 */
	public function __construct() {
		$this->add_actions();
	}

	/**
	 * @deprecated 3.1.0
	 */
	public function localize_settings() {
		Plugin::$instance->modules_manager->get_modules( 'dev-tools' )->deprecation->deprecated_function( __METHOD__, '3.1.0' );

		return [];
	}

	/**
	 * Parse dynamic tags text.
	 *
	 * Receives the dynamic tag text, and returns a single value or multiple values
	 * from the tag callback function.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @param string   $text           Dynamic tag text.
	 * @param array    $settings       The dynamic tag settings.
	 * @param callable $parse_callback The functions that renders the dynamic tag.
	 *
	 * @return string|string[]|mixed A single string or an array of strings with
	 *                               the return values from each tag callback
	 *                               function.
	 */
	public function parse_tags_text( $text, array $settings, callable $parse_callback ) {
		if ( ! empty( $settings['returnType'] ) && 'object' === $settings['returnType'] ) {
			$value = $this->parse_tag_text( $text, $settings, $parse_callback );
		} else {

			$value = preg_replace_callback( '/\[' . self::TAG_LABEL . '.+?(?=\])\]/', function( $tag_text_match ) use ( $settings, $parse_callback ) {
				return $this->parse_tag_text( $tag_text_match[0], $settings, $parse_callback );
			}, $text );
		}

		return $value;
	}

	/**
	 * Parse dynamic tag text.
	 *
	 * Receives the dynamic tag text, and returns the value from the callback
	 * function.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @param string   $tag_text       Dynamic tag text.
	 * @param array    $settings       The dynamic tag settings.
	 * @param callable $parse_callback The functions that renders the dynamic tag.
	 *
	 * @return string|array|mixed If the tag was not found an empty string or an
	 *                            empty array will be returned, otherwise the
	 *                            return value from the tag callback function.
	 */
	public function parse_tag_text( $tag_text, array $settings, callable $parse_callback ) {
		$tag_data = $this->tag_text_to_tag_data( $tag_text );

		if ( ! $tag_data ) {
			if ( ! empty( $settings['returnType'] ) && 'object' === $settings['returnType'] ) {
				return [];
			}

			return '';
		}

		return call_user_func_array( $parse_callback, array_values( $tag_data ) );
	}

	/**
	 * @since 2.0.0
	 * @access public
	 *
	 * @param string $tag_text
	 *
	 * @return array|null
	 */
	public function tag_text_to_tag_data( $tag_text ) {
		preg_match( '/id="(.*?(?="))"/', $tag_text, $tag_id_match );
		preg_match( '/name="(.*?(?="))"/', $tag_text, $tag_name_match );
		preg_match( '/settings="(.*?(?="]))/', $tag_text, $tag_settings_match );

		if ( ! $tag_id_match || ! $tag_name_match || ! $tag_settings_match ) {
			return null;
		}

		return [
			'id' => $tag_id_match[1],
			'name' => $tag_name_match[1],
			'settings' => json_decode( urldecode( $tag_settings_match[1] ), true ),
		];
	}

	/**
	 * Dynamic tag to text.
	 *
	 * Retrieve the shortcode that represents the dynamic tag.
	 *
	 * @since 2.0.0
	 * @access public
	 *
	 * @param Base_Tag $tag An instance of the dynamic tag.
	 *
	 * @return string The shortcode that represents the dynamic tag.
	 */
	public function tag_to_text( Base_Tag $tag ) {
		return sprintf( '[%1$s id="%2$s" name="%3$s" settings="%4$s"]', self::TAG_LABEL, $tag->get_id(), $tag->get_name(), urlencode( wp_json_encode( $tag->get_settings(), JSON_FORCE_OBJECT ) ) );
	}

	/**
	 * @since 2.0.0
	 * @access public
	 * @param string $tag_id
	 * @param string $tag_name
	 * @param array  $settings
	 *
	 * @return string
	 */
	public function tag_data_to_tag_text( $tag_id, $tag_name, array $settings = [] ) {
		$tag = $this->create_tag( $tag_id, $tag_name, $settings );

		if ( ! $tag ) {
			return '';
		}

		return $this->tag_to_text( $tag );
	}

	/**
	 * @since 2.0.0
	 * @access public
	 * @param string $tag_id
	 * @param string $tag_name
	 * @param array  $settings
	 *
	 * @return Tag|null
	 */
	public function create_tag( $tag_id, $tag_name, array $settings = [] ) {
		$tag_info = $this->get_tag_info( $tag_name );

		if ( ! $tag_info ) {
			return null;
		}

		$tag_class = $tag_info['class'];

		return new $tag_class( [
			'settings' => $settings,
			'id' => $tag_id,
		] );
	}

	/**
	 * @since 2.0.0
	 * @access public
	 *
	 * @param       $tag_id
	 * @param       $tag_name
	 * @param array $settings
	 *
	 * @return null|string
	 */
	public function get_tag_data_content( $tag_id, $tag_name, array $settings = [] ) {
		if ( self::MODE_REMOVE === $this->parsing_mode ) {
			return null;
		}

		$tag = $this->create_tag( $tag_id, $tag_name, $settings );

		if ( ! $tag ) {
			return null;
		}

		return $tag->get_content();
	}

	/**
	 * @since 2.0.0
	 * @access public
	 *
	 * @param $tag_name
	 *
	 * @return mixed|null
	 */
	public function get_tag_info( $tag_name ) {
		$tags = $this->get_tags();

		if ( empty( $tags[ $tag_name ] ) ) {
			return null;
		}

		return $tags[ $tag_name ];
	}

	/**
	 * @since 2.0.9
	 * @access public
	 */
	public function get_tags() {
		if ( ! did_action( 'elementor/dynamic_tags/register_tags' ) ) {
			/**
			 * Register dynamic tags.
			 *
			 * Fires when Elementor registers dynamic tags.
			 *
			 * @since 2.0.9
			 *
			 * @param Manager $this Dynamic tags manager.
			 */
			do_action( 'elementor/dynamic_tags/register_tags', $this );
		}

		return $this->tags_info;
	}

	/**
	 * @since 2.0.0
	 * @access public
	 *
	 * @param string $class
	 */
	public function register_tag( $class ) {
		/** @var Tag $tag */
		$tag = new $class();

		$this->tags_info[ $tag->get_name() ] = [
			'class' => $class,
			'instance' => $tag,
		];
	}

	/**
	 * @since 2.0.9
	 * @access public
	 *
	 * @param string $tag_name
	 */
	public function unregister_tag( $tag_name ) {
		unset( $this->tags_info[ $tag_name ] );
	}

	/**
	 * @since 2.0.0
	 * @access public
	 *
	 * @param       $group_name
	 * @param array $group_settings
	 */
	public function register_group( $group_name, array $group_settings ) {
		$default_group_settings = [
			'title' => '',
		];

		$group_settings = array_merge( $default_group_settings, $group_settings );

		$this->tags_groups[ $group_name ] = $group_settings;
	}

	/**
	 * @since 2.0.0
	 * @access public
	 */
	public function print_templates() {
		foreach ( $this->get_tags() as $tag_name => $tag_info ) {
			$tag = $tag_info['instance'];

			if ( ! $tag instanceof Tag ) {
				continue;
			}

			$tag->print_template();
		}
	}

	/**
	 * @since 2.0.0
	 * @access public
	 */
	public function get_tags_config() {
		$config = [];

		foreach ( $this->get_tags() as $tag_name => $tag_info ) {
			/** @var Tag $tag */
			$tag = $tag_info['instance'];

			$config[ $tag_name ] = $tag->get_editor_config();
		}

		return $config;
	}

	/**
	 * @since 2.0.0
	 * @access public
	 */
	public function get_config() {
		return [
			'tags' => $this->get_tags_config(),
			'groups' => $this->tags_groups,
		];
	}

	/**
	 * @since 2.0.0
	 * @access public
	 *
	 * @throws \Exception If post ID is missing.
	 * @throws \Exception If current user don't have permissions to edit the post.
	 */
	public function ajax_render_tags( $data ) {
		if ( empty( $data['post_id'] ) ) {
			throw new \Exception( 'Missing post id.' );
		}

		if ( ! User::is_current_user_can_edit( $data['post_id'] ) ) {
			throw new \Exception( 'Access denied.' );
		}

		Plugin::$instance->db->switch_to_post( $data['post_id'] );

		/**
		 * Before dynamic tags rendered.
		 *
		 * Fires before Elementor renders the dynamic tags.
		 *
		 * @since 2.0.0
		 */
		do_action( 'elementor/dynamic_tags/before_render' );

		$tags_data = [];

		foreach ( $data['tags'] as $tag_key ) {
			$tag_key_parts = explode( '-', $tag_key );

			$tag_name = base64_decode( $tag_key_parts[0] );

			$tag_settings = json_decode( urldecode( base64_decode( $tag_key_parts[1] ) ), true );

			$tag = $this->create_tag( null, $tag_name, $tag_settings );

			$tags_data[ $tag_key ] = $tag->get_content();
		}

		/**
		 * After dynamic tags rendered.
		 *
		 * Fires after Elementor renders the dynamic tags.
		 *
		 * @since 2.0.0
		 */
		do_action( 'elementor/dynamic_tags/after_render' );

		return $tags_data;
	}

	/**
	 * @since 2.0.0
	 * @access public
	 *
	 * @param $mode
	 */
	public function set_parsing_mode( $mode ) {
		$this->parsing_mode = $mode;
	}

	/**
	 * @since 2.0.0
	 * @access public
	 */
	public function get_parsing_mode() {
		return $this->parsing_mode;
	}

	/**
	 * @since 2.1.0
	 * @access public
	 * @param Post $css_file
	 */
	public function after_enqueue_post_css( $css_file ) {
		$css_file = Dynamic_CSS::create( $css_file->get_post_id(), $css_file );

		$css_file->enqueue();
	}

	/**
	 * @since 2.3.0
	 * @access public
	 */
	public function register_ajax_actions( Ajax $ajax ) {
		$ajax->register_ajax_action( 'render_tags', [ $this, 'ajax_render_tags' ] );
	}

	/**
	 * @since 2.0.0
	 * @access private
	 */
	private function add_actions() {
		add_action( 'elementor/ajax/register_actions', [ $this, 'register_ajax_actions' ] );
		add_action( 'elementor/css-file/post/enqueue', [ $this, 'after_enqueue_post_css' ] );
	}
}
core/dynamic-tags/tag.php000064400000004103151327220420011334 0ustar00<?php
namespace Elementor\Core\DynamicTags;

use Elementor\Utils;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

/**
 * Elementor tag.
 *
 * An abstract class to register new Elementor tag.
 *
 * @since 2.0.0
 * @abstract
 */
abstract class Tag extends Base_Tag {

	const WRAPPED_TAG = false;

	/**
	 * @since 2.0.0
	 * @access public
	 *
	 * @param array $options
	 *
	 * @return string
	 */
	public function get_content( array $options = [] ) {
		$settings = $this->get_settings();

		ob_start();

		$this->render();

		$value = ob_get_clean();

		if ( ! Utils::is_empty( $value ) ) {
			// TODO: fix spaces in `before`/`after` if WRAPPED_TAG ( conflicted with .elementor-tag { display: inline-flex; } );
			if ( ! Utils::is_empty( $settings, 'before' ) ) {
				$value = wp_kses_post( $settings['before'] ) . $value;
			}

			if ( ! Utils::is_empty( $settings, 'after' ) ) {
				$value .= wp_kses_post( $settings['after'] );
			}

			if ( static::WRAPPED_TAG ) :
				$value = '<span id="elementor-tag-' . esc_attr( $this->get_id() ) . '" class="elementor-tag">' . $value . '</span>';
			endif;

		} elseif ( ! Utils::is_empty( $settings, 'fallback' ) ) {
			$value = $settings['fallback'];
		}

		return $value;
	}

	/**
	 * @since 2.0.0
	 * @access public
	 */
	final public function get_content_type() {
		return 'ui';
	}

	/**
	 * @since 2.0.9
	 * @access public
	 */
	public function get_editor_config() {
		$config = parent::get_editor_config();

		$config['wrapped_tag'] = $this::WRAPPED_TAG;

		return $config;
	}

	/**
	 * @since 2.0.0
	 * @access protected
	 */
	protected function register_advanced_section() {
		$this->start_controls_section(
			'advanced',
			[
				'label' => esc_html__( 'Advanced', 'elementor' ),
			]
		);

		$this->add_control(
			'before',
			[
				'label' => esc_html__( 'Before', 'elementor' ),
			]
		);

		$this->add_control(
			'after',
			[
				'label' => esc_html__( 'After', 'elementor' ),
			]
		);

		$this->add_control(
			'fallback',
			[
				'label' => esc_html__( 'Fallback', 'elementor' ),
			]
		);

		$this->end_controls_section();
	}
}
core/dynamic-tags/dynamic-css.php000064400000005617151327220420013006 0ustar00<?php
namespace Elementor\Core\DynamicTags;

use Elementor\Controls_Stack;
use Elementor\Core\Files\CSS\Post as Post_CSS;
use Elementor\Core\Files\CSS\Post_Local_Cache;
use Elementor\Core\Files\CSS\Post_Preview;
use Elementor\Element_Base;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

class Dynamic_CSS extends Post_Local_Cache {

	private $post_dynamic_elements_ids;

	private $post_id_for_data;

	protected function get_post_id_for_data() {
		return $this->post_id_for_data;
	}

	protected function is_global_parsing_supported() {
		return false;
	}

	protected function render_styles( Element_Base $element ) {
		$id = $element->get_id();

		if ( in_array( $id, $this->post_dynamic_elements_ids ) ) {
			parent::render_styles( $element );
		}

		foreach ( $element->get_children() as $child_element ) {
			$this->render_styles( $child_element );
		}
	}

	/**
	 * Dynamic_CSS constructor.
	 *
	 * @since 2.0.13
	 * @access public
	 *
	 * @param int $post_id Post ID
	 * @param Post_CSS $post_css_file
	 */
	public function __construct( $post_id, Post_CSS $post_css_file ) {
		if ( $post_css_file instanceof Post_Preview ) {
			$this->post_id_for_data = $post_css_file->get_post_id_for_data();
		} else {
			$this->post_id_for_data = $post_id;
		}

		$this->post_dynamic_elements_ids = $post_css_file->get_meta( 'dynamic_elements_ids' );

		parent::__construct( $post_id );
	}

	/**
	 * @since 2.0.13
	 * @access public
	 */
	public function get_name() {
		return 'dynamic';
	}

	/**
	 * Get Responsive Control Duplication Mode
	 *
	 * @since 3.4.0
	 *
	 * @return string
	 */
	protected function get_responsive_control_duplication_mode() {
		return 'dynamic';
	}

	/**
	 * @since 2.0.13
	 * @access protected
	 */
	protected function use_external_file() {
		return false;
	}

	/**
	 * @since 2.0.13
	 * @access protected
	 */
	protected function get_file_handle_id() {
		return 'elementor-post-dynamic-' . $this->get_post_id_for_data();
	}

	/**
	 * @since 2.0.13
	 * @access public
	 */
	public function add_controls_stack_style_rules( Controls_Stack $controls_stack, array $controls, array $values, array $placeholders, array $replacements, array $all_controls = null ) {
		$dynamic_settings = $controls_stack->get_settings( '__dynamic__' );

		if ( ! empty( $dynamic_settings ) ) {
			$controls = array_intersect_key( $controls, $dynamic_settings );

			$all_controls = $controls_stack->get_controls();

			$parsed_dynamic_settings = $controls_stack->parse_dynamic_settings( $values, $controls );

			foreach ( $controls as $control ) {
				if ( ! empty( $control['style_fields'] ) ) {
					$this->add_repeater_control_style_rules( $controls_stack, $control, $values[ $control['name'] ], $placeholders, $replacements );
				}

				if ( empty( $control['selectors'] ) ) {
					continue;
				}

				$this->add_control_style_rules( $control, $parsed_dynamic_settings, $all_controls, $placeholders, $replacements );
			}
		}
	}
}
core/dynamic-tags/base-tag.php000064400000007643151327220420012260 0ustar00<?php
namespace Elementor\Core\DynamicTags;

use Elementor\Controls_Stack;
use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor base tag.
 *
 * An abstract class to register new Elementor tags.
 *
 * @since 2.0.0
 * @abstract
 */
abstract class Base_Tag extends Controls_Stack {

	/**
	 * @since 2.0.0
	 * @access public
	 * @static
	 */
	final public static function get_type() {
		return 'tag';
	}

	/**
	 * @since 2.0.0
	 * @access public
	 * @abstract
	 */
	abstract public function get_categories();

	/**
	 * @since 2.0.0
	 * @access public
	 * @abstract
	 */
	abstract public function get_group();

	/**
	 * @since 2.0.0
	 * @access public
	 * @abstract
	 */
	abstract public function get_title();

	/**
	 * @since 2.0.0
	 * @access public
	 * @abstract
	 *
	 * @param array $options
	 */
	abstract public function get_content( array $options = [] );

	/**
	 * @since 2.0.0
	 * @access public
	 * @abstract
	 */
	abstract public function get_content_type();

	/**
	 * @since 2.0.0
	 * @access public
	 */
	public function get_panel_template_setting_key() {
		return '';
	}

	/**
	 * @since 2.0.0
	 * @access public
	 */
	public function is_settings_required() {
		return false;
	}

	/**
	 * @since 2.0.9
	 * @access public
	 */
	public function get_editor_config() {
		 ob_start();

		$this->print_panel_template();

		$panel_template = ob_get_clean();

		return [
			'name' => $this->get_name(),
			'title' => $this->get_title(),
			'panel_template' => $panel_template,
			'categories' => $this->get_categories(),
			'group' => $this->get_group(),
			'controls' => $this->get_controls(),
			'content_type' => $this->get_content_type(),
			'settings_required' => $this->is_settings_required(),
			'editable' => $this->is_editable(),
		];
	}

	/**
	 * @since 2.0.0
	 * @access public
	 */
	public function print_panel_template() {
		$panel_template_setting_key = $this->get_panel_template_setting_key();

		if ( ! $panel_template_setting_key ) {
			return;
		}
		?><#
		var key = <?php echo esc_html( $panel_template_setting_key ); ?>;

		if ( key ) {
			var settingsKey = "<?php echo esc_html( $panel_template_setting_key ); ?>";

			/*
			 * If the tag has controls,
			 * and key is an existing control (and not an old one),
			 * and the control has options (select/select2),
			 * and the key is an existing option (and not in a group or an old one).
			 */
			if ( controls && controls[settingsKey] ) {
				var controlSettings = controls[settingsKey];

				if ( controlSettings.options && controlSettings.options[ key ] ) {
					key = controlSettings.options[ key ];
				} else if ( controlSettings.groups ) {
					var label = _.filter( _.pluck( _.pluck( controls.key.groups, 'options' ), key ) );

					if ( label[0] ) {
						key = label[0];
					}
				}
			}

			print( '(' + key + ')' );
		}
		#>
		<?php
	}

	/**
	 * @since 2.0.0
	 * @access public
	 */
	final public function get_unique_name() {
		return 'tag-' . $this->get_name();
	}

	/**
	 * @since 2.0.0
	 * @access protected
	 */
	protected function register_advanced_section() {}

	/**
	 * @since 2.0.0
	 * @access protected
	 */
	final protected function init_controls() {
		Plugin::$instance->controls_manager->open_stack( $this );

		$this->start_controls_section( 'settings', [
			'label' => esc_html__( 'Settings', 'elementor' ),
		] );

		if ( $this->has_own_method( '_register_controls' ) ) {
			Plugin::$instance->modules_manager->get_modules( 'dev-tools' )->deprecation->deprecated_function( '_register_controls', '3.1.0', __CLASS__ . '::register_controls()' );

			$this->_register_controls();
		} else {
			$this->register_controls();
		}

		$this->end_controls_section();

		// If in fact no controls were registered, empty the stack
		if ( 1 === count( Plugin::$instance->controls_manager->get_stacks( $this->get_unique_name() )['controls'] ) ) {
			Plugin::$instance->controls_manager->open_stack( $this );
		}

		$this->register_advanced_section();
	}
}
core/app/modules/kit-library/module.php000064400000004571151327220420014160 0ustar00<?php
namespace Elementor\Core\App\Modules\KitLibrary;

use Elementor\Plugin;
use Elementor\TemplateLibrary\Source_Local;
use Elementor\Core\Base\Module as BaseModule;
use Elementor\Core\App\Modules\KitLibrary\Connect\Kit_Library;
use Elementor\Core\Common\Modules\Connect\Module as ConnectModule;
use Elementor\Core\App\Modules\KitLibrary\Data\Kits\Controller as Kits_Controller;
use Elementor\Core\App\Modules\KitLibrary\Data\Taxonomies\Controller as Taxonomies_Controller;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Module extends BaseModule {
	/**
	 * Get name.
	 *
	 * @access public
	 *
	 * @return string
	 */
	public function get_name() {
		return 'kit-library';
	}

	/**
	 * Register the admin menu.
	 */
	private function register_admin_menu() {
		add_submenu_page(
			Source_Local::ADMIN_MENU_SLUG,
			__( 'Kit Library', 'elementor' ),
			__( 'Kit Library', 'elementor' ),
			'manage_options',
			Plugin::$instance->app->get_base_url() . '#/kit-library'
		);
	}

	private function set_kit_library_settings() {
		if ( ! Plugin::$instance->common ) {
			return;
		}

		/** @var ConnectModule $connect */
		$connect = Plugin::$instance->common->get_component( 'connect' );

		/** @var Kit_Library $kit_library */
		$kit_library = $connect->get_app( 'kit-library' );

		Plugin::$instance->app->set_settings( 'kit-library', [
			'has_access_to_module' => current_user_can( 'administrator' ),
			'subscription_plans' => $connect->get_subscription_plans( 'wp-kit-library' ),
			'is_pro' => false,
			'is_library_connected' => $kit_library->is_connected(),
			'library_connect_url'  => $kit_library->get_admin_url( 'authorize' ),
			'access_level' => ConnectModule::ACCESS_LEVEL_CORE,
		] );
	}

	/**
	 * Module constructor.
	 */
	public function __construct() {
		Plugin::$instance->data_manager->register_controller( Kits_Controller::class );
		Plugin::$instance->data_manager->register_controller( Taxonomies_Controller::class );

		add_action( 'admin_menu', function () {
			$this->register_admin_menu();
		}, 50 /* after Elementor page */ );

		add_action( 'elementor/connect/apps/register', function ( ConnectModule $connect_module ) {
			$connect_module->register_app( 'kit-library', Kit_Library::get_class_name() );
		} );

		add_action( 'elementor/init', function () {
			$this->set_kit_library_settings();
		}, 12 /** after the initiation of the connect kit library */ );
	}
}
core/app/modules/kit-library/data/repository.php000064400000016426151327220420016025 0ustar00<?php
namespace Elementor\Core\App\Modules\KitLibrary\Data;

use Elementor\Core\Utils\Collection;
use Elementor\Modules\Library\User_Favorites;
use Elementor\Core\App\Modules\KitLibrary\Connect\Kit_Library;
use Elementor\Core\App\Modules\KitLibrary\Data\Exceptions\Wp_Error_Exception;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

class Repository {
	const TAXONOMIES_KEYS = [ 'tags', 'categories', 'features', 'types' ];

	const KITS_CACHE_KEY = 'elementor_remote_kits';
	const KITS_TAXONOMIES_CACHE_KEY = 'elementor_remote_kits_taxonomies';

	const KITS_CACHE_TTL_HOURS = 12;
	const KITS_TAXONOMIES_CACHE_TTL_HOURS = 12;

	/**
	 * @var Kit_Library
	 */
	protected $api;

	/**
	 * @var User_Favorites
	 */
	protected $user_favorites;

	/**
	 * Get all kits.
	 *
	 * @param false $force_api_request
	 *
	 * @return Collection
	 * @throws Wp_Error_Exception
	 */
	public function get_all( $force_api_request = false ) {
		return $this->get_kits_data( $force_api_request )
			->map( function ( $kit ) {
				return $this->transform_kit_api_response( $kit );
			} );
	}

	/**
	 * Get specific kit.
	 *
	 * @param       $id
	 * @param array $options
	 *
	 * @return array|null
	 * @throws Wp_Error_Exception
	 */
	public function find( $id, $options = [] ) {
		$options = wp_parse_args( $options, [
			'manifest_included' => true,
		] );

		$item = $this->get_kits_data()
			->find( function ( $kit ) use ( $id ) {
				return $kit->_id === $id;
			} );

		if ( ! $item ) {
			return null;
		}

		$manifest = null;

		if ( $options['manifest_included'] ) {
			$manifest = $this->api->get_manifest( $id );

			if ( is_wp_error( $manifest ) ) {
				throw new Wp_Error_Exception( $manifest );
			}
		}

		return $this->transform_kit_api_response( $item, $manifest );
	}

	/**
	 * @param false $force_api_request
	 *
	 * @return Collection
	 * @throws Wp_Error_Exception
	 */
	public function get_taxonomies( $force_api_request = false ) {
		return $this->get_taxonomies_data( $force_api_request )
			->only( static::TAXONOMIES_KEYS )
			->reduce( function ( Collection $carry, $taxonomies, $type ) {
				return $carry->merge( array_map( function ( $taxonomy ) use ( $type ) {
					return [
						'text' => $taxonomy->name,
						'type' => $type,
					];
				}, $taxonomies ) );
			}, new Collection( [] ) )
			->unique( [ 'text', 'type' ] );
	}

	/**
	 * @param $id
	 *
	 * @return array
	 * @throws Wp_Error_Exception
	 */
	public function get_download_link( $id ) {
		$response = $this->api->download_link( $id );

		if ( is_wp_error( $response ) ) {
			throw new Wp_Error_Exception( $response );
		}

		return [ 'download_link' => $response->download_link ];
	}

	/**
	 * @param $id
	 *
	 * @return array
	 * @throws Wp_Error_Exception
	 * @throws \Exception
	 */
	public function add_to_favorites( $id ) {
		$kit = $this->find( $id, [ 'manifest_included' => false ] );

		if ( ! $kit ) {
			throw new Wp_Error_Exception(
				new \WP_Error( 404, __( 'Kit not found', 'elementor' ) )
			);
		}

		$this->user_favorites->add( 'elementor', 'kits', $kit['id'] );

		$kit['is_favorite'] = true;

		return $kit;
	}

	/**
	 * @param $id
	 *
	 * @return array
	 * @throws Wp_Error_Exception
	 * @throws \Exception
	 */
	public function remove_from_favorites( $id ) {
		$kit = $this->find( $id, [ 'manifest_included' => false ] );

		if ( ! $kit ) {
			throw new Wp_Error_Exception(
				new \WP_Error( 404, __( 'Kit not found', 'elementor' ) )
			);
		}

		$this->user_favorites->remove( 'elementor', 'kits', $kit['id'] );

		$kit['is_favorite'] = false;

		return $kit;
	}

	/**
	 * @param bool $force_api_request
	 *
	 * @return Collection
	 * @throws Wp_Error_Exception
	 */
	private function get_kits_data( $force_api_request = false ) {
		$data = get_transient( static::KITS_CACHE_KEY );

		if ( ! $data || $force_api_request ) {
			$data = $this->api->get_all();

			if ( is_wp_error( $data ) ) {
				throw new Wp_Error_Exception( $data );
			}

			set_transient( static::KITS_CACHE_KEY, $data, static::KITS_CACHE_TTL_HOURS * HOUR_IN_SECONDS );
		}

		return new Collection( $data );
	}

	/**
	 * @param bool $force_api_request
	 *
	 * @return Collection
	 * @throws Wp_Error_Exception
	 */
	private function get_taxonomies_data( $force_api_request = false ) {
		$data = get_transient( static::KITS_TAXONOMIES_CACHE_KEY );

		if ( ! $data || $force_api_request ) {
			$data = $this->api->get_taxonomies();

			if ( is_wp_error( $data ) ) {
				throw new Wp_Error_Exception( $data );
			}

			set_transient( static::KITS_TAXONOMIES_CACHE_KEY, $data, static::KITS_TAXONOMIES_CACHE_TTL_HOURS * HOUR_IN_SECONDS );
		}

		return new Collection( (array) $data );
	}

	/**
	 * @param      $kit
	 * @param null $manifest
	 *
	 * @return array
	 */
	private function transform_kit_api_response( $kit, $manifest = null ) {
		$taxonomies = array_reduce( static::TAXONOMIES_KEYS, function ( $current, $key ) use ( $kit ) {
			return array_merge( $current, array_map( function ( $taxonomy ) {
				return $taxonomy->name;
			}, $kit->{$key} ) );
		}, [] );

		return array_merge(
			[
				'id' => $kit->_id,
				'title' => $kit->title,
				'thumbnail_url' => $kit->thumbnail,
				'access_level' => $kit->access_level,
				'keywords' => $kit->keywords,
				'taxonomies' => $taxonomies,
				'is_favorite' => $this->user_favorites->exists( 'elementor', 'kits', $kit->_id ),
				// TODO: Remove all the isset when the API stable.
				'trend_index' => isset( $kit->trend_index ) ? $kit->trend_index : 0,
				'featured_index' => isset( $kit->featured_index ) ? $kit->featured_index : 0,
				'popularity_index' => isset( $kit->popularity_index ) ? $kit->popularity_index : 0,
				'created_at' => isset( $kit->created_at ) ? $kit->created_at : null,
				'updated_at' => isset( $kit->updated_at ) ? $kit->updated_at : null,
				//
			],
			$manifest ? $this->transform_manifest_api_response( $manifest ) : []
		);
	}

	/**
	 * @param $manifest
	 *
	 * @return array
	 */
	private function transform_manifest_api_response( $manifest ) {
		$manifest_content = ( new Collection( (array) $manifest->content ) )
			->reduce( function ( $carry, $content, $type ) {
				$mapped_documents = array_map( function ( $document ) use ( $type ) {
					// TODO: Fix it!
					// Hack to override a bug when a document with type of 'wp-page' is declared as 'wp-post'.
					if ( 'page' === $type ) {
						$document->doc_type = 'wp-page';
					}

					return $document;
				}, (array) $content );

				return $carry + $mapped_documents;
			}, [] );

		$content = ( new Collection( (array) $manifest->templates ) )
			->union( $manifest_content )
			->map( function ( $manifest_item, $key ) {
				return [
					'id' => isset( $manifest_item->id ) ? $manifest_item->id : $key,
					'title' => $manifest_item->title,
					'doc_type' => $manifest_item->doc_type,
					'thumbnail_url' => $manifest_item->thumbnail,
					'preview_url' => isset( $manifest_item->url ) ? $manifest_item->url : null,
				];
			} );

		return [
			'description' => $manifest->description,
			'preview_url' => isset( $manifest->site ) ? $manifest->site : '',
			'documents' => $content->values(),
		];
	}

	/**
	 * Repository constructor.
	 *
	 * @param Kit_Library    $kit_library
	 * @param User_Favorites $user_favorites
	 */
	public function __construct( Kit_Library $kit_library, User_Favorites $user_favorites ) {
		$this->api = $kit_library;
		$this->user_favorites = $user_favorites;
	}
}
core/app/modules/kit-library/data/exceptions/wp-error-exception.php000064400000001102151327220420021521 0ustar00<?php
namespace Elementor\Core\App\Modules\KitLibrary\Data\Exceptions;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

// TODO: Maybe transfer into base/data
class Wp_Error_Exception extends \Exception {
	/**
	 * @var \WP_Error
	 */
	protected $error;

	public function __construct( \WP_Error $error ) {
		// If the code is not an http code it transfer it into 500 (Server Error).
		$code = (int) $error->get_error_code();
		$code = 0 === $code ? 500 : $code;

		parent::__construct( $error->get_error_message(), $code );

		$this->error = $error;
	}
}
core/app/modules/kit-library/data/base-controller.php000064400000001223151327220420016666 0ustar00<?php
namespace Elementor\Core\App\Modules\KitLibrary\Data;

use Elementor\Plugin;
use Elementor\Data\Base\Controller;
use Elementor\Modules\Library\User_Favorites;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

abstract class Base_Controller extends Controller {
	/**
	 * @var Repository
	 */
	private $repository;

	/**
	 * @return Repository
	 */
	public function get_repository() {
		if ( ! $this->repository ) {
			$this->repository = new Repository(
				Plugin::$instance->common->get_component( 'connect' )->get_app( 'kit-library' ),
				new User_Favorites( get_current_user_id() )
			);
		}

		return $this->repository;
	}
}
core/app/modules/kit-library/data/kits/controller.php000064400000004054151327220420016735 0ustar00<?php
namespace Elementor\Core\App\Modules\KitLibrary\Data\Kits;

use Elementor\Core\App\Modules\KitLibrary\Data\Base_Controller;
use Elementor\Core\App\Modules\KitLibrary\Data\Exceptions\Wp_Error_Exception;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

class Controller extends Base_Controller {

	/**
	 * @param \WP_REST_Request $request
	 *
	 * @return \WP_Error|array
	 */
	public function get_items( $request ) {
		try {
			$data = $this->get_repository()->get_all( $request->get_param( 'force' ) );
		} catch ( Wp_Error_Exception $exception ) {
			return new \WP_Error( $exception->getCode(), $exception->getMessage(), [ 'status' => $exception->getCode() ] );
		} catch ( \Exception $exception ) {
			return new \WP_Error( 'server_error', __( 'Something went wrong.', 'elementor' ), [ 'status' => 500 ] );
		}

		return [
			'data' => $data->values(),
		];
	}

	/**
	 * @param \WP_REST_Request $request
	 *
	 * @return \WP_Error|array
	 */
	public function get_item( $request ) {
		try {
			$data = $this->get_repository()->find( $request->get_param( 'id' ) );
		} catch ( Wp_Error_Exception $exception ) {
			return new \WP_Error( $exception->getCode(), $exception->getMessage(), [ 'status' => $exception->getCode() ] );
		} catch ( \Exception $exception ) {
			return new \WP_Error( 'server_error', __( 'Something went wrong.', 'elementor' ), [ 'status' => 500 ] );
		}

		if ( ! $data ) {
			return new \WP_Error( 'kit_not_exists', __( 'Kit not exists.', 'elementor' ), [ 'status' => 404 ] );
		}

		return [
			'data' => $data,
		];
	}

	/**
	 * @return string
	 */
	public function get_name() {
		return 'kits';
	}

	/**
	 * Must implement.
	 */
	public function register_endpoints() {
		$this->register_endpoint( Endpoints\Download_Link::class );
		$this->register_endpoint( Endpoints\Favorites::class );
	}

	/**
	 * Register internal endpoint.
	 */
	protected function register_internal_endpoints() {
		// Register as internal to remove the default endpoint generated by the base controller.
		$this->register_endpoint( Endpoints\Index::class );
	}
}
core/app/modules/kit-library/data/kits/endpoints/download-link.php000064400000002623151327220420021317 0ustar00<?php
namespace Elementor\Core\App\Modules\KitLibrary\Data\Kits\Endpoints;

use Elementor\Data\Base\Endpoint;
use Elementor\Core\App\Modules\KitLibrary\Data\Kits\Controller;
use Elementor\Core\App\Modules\KitLibrary\Data\Exceptions\Wp_Error_Exception;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * @property Controller $controller
 */
class Download_Link extends Endpoint {
	public function get_name() {
		return 'download-link';
	}

	protected function register() {
		$this->register_route(
			'/(?P<id>[\w-]+)/',
			\WP_REST_Server::READABLE,
			function ( $request ) {
				return $this->base_callback( \WP_REST_Server::READABLE, $request, false );
			},
			[
				'id' => [
					'description' => 'Unique identifier for the object.',
					'type' => 'string',
					'required' => true,
				],
			]
		);
	}

	public function get_item( $id, $request ) {
		$repository = $this->controller->get_repository();

		try {
			$data = $repository->get_download_link( $id );
		} catch ( Wp_Error_Exception $exception ) {
			return new \WP_Error( $exception->getCode(), $exception->getMessage(), [ 'status' => $exception->getCode() ] );
		} catch ( \Exception $exception ) {
			return new \WP_Error( 'server_error', __( 'Something went wrong.', 'elementor' ), [ 'status' => 500 ] );
		}

		return [
			'data' => $data,
			'meta' => [
				'nonce' => wp_create_nonce( 'kit-library-import' ),
			],
		];
	}
}
core/app/modules/kit-library/data/kits/endpoints/favorites.php000064400000004674151327220420020567 0ustar00<?php
namespace Elementor\Core\App\Modules\KitLibrary\Data\Kits\Endpoints;

use Elementor\Core\App\Modules\KitLibrary\Data\Kits\Controller;
use Elementor\Core\App\Modules\KitLibrary\Data\Exceptions\Wp_Error_Exception;
use Elementor\Data\Base\Endpoint;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * @property Controller $controller
 */
class Favorites extends Endpoint {
	public function get_name() {
		return 'favorites';
	}

	protected function register() {
		$this->register_route(
			'/(?P<id>[\w-]+)/',
			\WP_REST_Server::CREATABLE,
			function ( $request ) {
				return $this->base_callback( \WP_REST_Server::CREATABLE, $request, false );
			},
			[
				'id' => [
					'description' => 'Unique identifier for the object.',
					'type' => 'string',
					'required' => true,
				],
			]
		);

		$this->register_route(
			'/(?P<id>[\w-]+)/',
			\WP_REST_Server::DELETABLE,
			function ( $request ) {
				return $this->base_callback( \WP_REST_Server::DELETABLE, $request, false );
			},
			[
				'id' => [
					'description' => 'Unique identifier for the object.',
					'type' => 'string',
					'required' => true,
				],
			]
		);
	}

	/**
	 * @param string           $id
	 * @param \WP_REST_Request $request
	 *
	 * @return \WP_Error|\WP_REST_Response
	 */
	public function create_item( $id, $request ) {
		$repository = $this->controller->get_repository();

		try {
			$kit = $repository->add_to_favorites( $id );
		} catch ( Wp_Error_Exception $exception ) {
			return new \WP_Error( $exception->getCode(), $exception->getMessage(), [ 'status' => $exception->getCode() ] );
		} catch ( \Exception $exception ) {
			return new \WP_Error( 'server_error', __( 'Something went wrong.', 'elementor' ), [ 'status' => 500 ] );
		}

		return new \WP_REST_Response( [
			'data' => $kit,
		] );
	}

	/**
	 * @param string           $id
	 * @param \WP_REST_Request $request
	 *
	 * @return \WP_Error|\WP_REST_Response
	 */
	public function delete_item( $id, $request ) {
		$repository = $this->controller->get_repository();

		try {
			$kit = $repository->remove_from_favorites( $id );
		} catch ( Wp_Error_Exception $exception ) {
			return new \WP_Error( $exception->getCode(), $exception->getMessage(), [ 'status' => $exception->getCode() ] );
		} catch ( \Exception $exception ) {
			return new \WP_Error( 'server_error', __( 'Something went wrong.', 'elementor' ), [ 'status' => 500 ] );
		}

		return new \WP_REST_Response( [
			'data' => $kit,
		] );
	}
}
core/app/modules/kit-library/data/kits/endpoints/index.php000064400000001742151327220420017665 0ustar00<?php
namespace Elementor\Core\App\Modules\KitLibrary\Data\Kits\Endpoints;

use Elementor\Data\Base\Endpoint;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

class Index extends Endpoint {
	public function get_name() {
		return 'index';
	}

	protected function register() {
		$this->register_route(
			'',
			\WP_REST_Server::READABLE,
			function ( $request ) {
				return $this->base_callback( \WP_REST_Server::READABLE, $request, true );
			},
			[
				'force' => [
					'description' => 'Force an API request and skip the cache.',
					'required' => false,
					'default' => false,
					'type' => 'boolean',
				],
			]
		);

		$this->register_route(
			'(?P<id>[\w-]+)/',
			\WP_REST_Server::READABLE,
			function ( $request ) {
				return $this->base_callback( \WP_REST_Server::READABLE, $request, false );
			},
			[
				'id' => [
					'description' => 'Unique identifier for the object.',
					'type' => 'string',
					'required' => true,
				],
			]
		);
	}
}
core/app/modules/kit-library/data/taxonomies/controller.php000064400000002354151327220420020152 0ustar00<?php
namespace Elementor\Core\App\Modules\KitLibrary\Data\Taxonomies;

use Elementor\Core\App\Modules\KitLibrary\Data\Base_Controller;
use Elementor\Core\App\Modules\KitLibrary\Data\Exceptions\Wp_Error_Exception;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

class Controller extends Base_Controller {
	public function get_name() {
		return 'kit-taxonomies';
	}

	public function register_endpoints() {
		//
	}

	/**
	 * Register internal endpoint.
	 */
	protected function register_internal_endpoints() {
		// Register as internal to remove the default endpoint generated by the base controller.
		$this->register_endpoint( Endpoints\Index::class );
	}

	/**
	 * @param \WP_REST_Request $request
	 *
	 * @return \WP_Error|array
	 */
	public function get_items( $request ) {
		try {
			$data = $this->get_repository()->get_taxonomies( $request->get_param( 'force' ) );
		} catch ( Wp_Error_Exception $exception ) {
			return new \WP_Error( $exception->getCode(), $exception->getMessage(), [ 'status' => $exception->getCode() ] );
		} catch ( \Exception $exception ) {
			return new \WP_Error( 'server_error', __( 'Something went wrong.', 'elementor' ), [ 'status' => 500 ] );
		}

		return [
			'data' => $data->values(),
		];
	}
}
core/app/modules/kit-library/data/taxonomies/endpoints/index.php000064400000001231151327220420021072 0ustar00<?php
namespace Elementor\Core\App\Modules\KitLibrary\Data\Taxonomies\Endpoints;

use Elementor\Data\Base\Endpoint;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

class Index extends Endpoint {
	public function get_name() {
		return 'index';
	}

	protected function register() {
		$this->register_route(
			'',
			\WP_REST_Server::READABLE,
			function ( $request ) {
				return $this->base_callback( \WP_REST_Server::READABLE, $request, true );
			},
			[
				'force' => [
					'description' => 'Force an API request and skip the cache.',
					'required' => false,
					'default' => false,
					'type' => 'boolean',
				],
			]
		);
	}
}
core/app/modules/kit-library/connect/kit-library.php000064400000002034151327220420016545 0ustar00<?php
namespace Elementor\Core\App\Modules\KitLibrary\Connect;

use Elementor\Core\Common\Modules\Connect\Apps\Library;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Kit_Library extends Library {
	const DEFAULT_BASE_ENDPOINT = 'https://my.elementor.com/api/v1/kits-library';
	const FALLBACK_BASE_ENDPOINT = 'https://ms-8874.elementor.com/api/v1/kits-library';

	public function get_title() {
		return __( 'Kit Library', 'elementor' );
	}

	public function get_all() {
		return $this->http_request( 'GET', 'kits' );
	}

	public function get_taxonomies() {
		return $this->http_request( 'GET', 'taxonomies' );
	}

	public function get_manifest( $id ) {
		return $this->http_request( 'GET', "kits/{$id}/manifest" );
	}

	public function download_link( $id ) {
		return $this->http_request( 'GET', "kits/{$id}/download-link" );
	}

	protected function get_api_url() {
		return [
			static::DEFAULT_BASE_ENDPOINT,
			static::FALLBACK_BASE_ENDPOINT,
		];
	}

	protected function init() {
		// Remove parent init actions.
	}
}
core/app/modules/site-editor/module.php000064400000002061151327220420014147 0ustar00<?php
namespace Elementor\Core\App\Modules\SiteEditor;

use Elementor\Core\Base\Module as BaseModule;
use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

/**
 * Site Editor Module
 *
 * Responsible for initializing Elementor App functionality
 */
class Module extends BaseModule {
	/**
	 * Get name.
	 *
	 * @access public
	 *
	 * @return string
	 */
	public function get_name() {
		return 'site-editor';
	}

	public function add_menu_in_admin_bar( $admin_bar_config ) {
		$admin_bar_config['elementor_edit_page']['children'][] = [
			'id' => 'elementor_app_site_editor',
			'title' => esc_html__( 'Theme Builder', 'elementor' ),
			'sub_title' => esc_html__( 'Site', 'elementor' ),
			'href' => Plugin::$instance->app->get_settings( 'menu_url' ),
			'class' => 'elementor-app-link',
			'parent_class' => 'elementor-second-section',
		];

		return $admin_bar_config;
	}

	public function __construct() {
		add_filter( 'elementor/frontend/admin_bar/settings', [ $this, 'add_menu_in_admin_bar' ] ); // After kit (Site settings)
	}
}
core/app/modules/import-export/wp-cli.php000064400000013113151327220420014456 0ustar00<?php

namespace Elementor\Core\App\Modules\ImportExport;

use Elementor\Plugin;
use Elementor\Core\App\Modules\KitLibrary\Connect\Kit_Library;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Wp_Cli extends \WP_CLI_Command {

	/**
	 * Export a Kit
	 *
	 * [--include]
	 *      Which type of content to include. Possible values are 'content', 'templates', 'site-settings'.
	 *      if this parameter won't be specified, All data types will be included.
	 *
	 * ## EXAMPLES
	 *
	 * 1. wp elementor kit export path/to/export-file-name.zip
	 *      - This will export all site data to the specified file name.
	 *
	 * 2. wp elementor kit export path/to/export-file-name.zip --include=kit-settings,content
	 *      - This will export only site settings and content.
	 *
	 * @param array $args
	 * @param array $assoc_args
	 */
	public function export( $args, $assoc_args ) {
		if ( empty( $args[0] ) ) {
			\WP_CLI::error( 'Please specify a file name' );
		}

		\WP_CLI::line( 'Kit export started.' );

		$export_settings = [
			'include' => [ 'content', 'templates', 'settings' ],
		];

		foreach ( $assoc_args as $key => $value ) {
			$import_settings[ $key ] = explode( ',', $value );
		}

		$export_settings = array_merge( $export_settings, $assoc_args );

		try {
			$exporter = new Export( $export_settings );

			$result = $exporter->run();

			rename( $result['file_name'], $args[0] );
		} catch ( \Error $error ) {
			\WP_CLI::error( $error->getMessage() );
		}

		\WP_CLI::success( 'Kit exported successfully.' );
	}

	/**
	 * Import a Kit
	 *
	 * [--include]
	 *      Which type of content to include. Possible values are 'content', 'templates', 'site-settings'.
	 *      if this parameter won't be specified, All data types will be included.
	 *
	 * [--overrideConditions]
	 *      Templates ids to override conditions for.
	 *
	 * [--sourceType]
	 *      Which source type is used in the current session. Available values are 'local', 'remote', 'library'.
	 *      The default value is 'local'
	 *
	 * ## EXAMPLES
	 *
	 * 1. wp elementor kit import path/to/elementor-kit.zip
	 *      - This will import the whole kit file content.
	 *
	 * 2. wp elementor kit import path/to/elementor-kit.zip --include=site-settings,content
	 *      - This will import only site settings and content.
	 *
	 * 3. wp elementor kit import path/to/elementor-kit.zip --overrideConditions=3478,4520
	 *      - This will import all content and will override conditions for the given template ids.
	 *
	 * @param array $args
	 * @param array $assoc_args
	 */
	public function import( array $args, array $assoc_args ) {
		if ( ! current_user_can( 'administrator' ) ) {
			\WP_CLI::error( 'You must run this command as an admin user' );
		}

		if ( empty( $args[0] ) ) {
			\WP_CLI::error( 'Please specify a file to import' );
		}

		\WP_CLI::line( 'Kit export started' );

		\WP_CLI::line( 'Extracting zip archive...' );

		$assoc_args = wp_parse_args( $assoc_args, [
			'sourceType' => 'local',
		] );

		$url = null;
		$file_path = $args[0];

		if ( 'library' === $assoc_args['sourceType'] ) {
			$url = $this->get_url_from_library( $args[0] );
		} elseif ( 'remote' === $assoc_args['sourceType'] ) {
			$url = $args[0];
		}

		if ( $url ) {
			$file_path = $this->create_temp_file_from_url( $url );
		}

		$extraction_result = Plugin::$instance->uploads_manager->extract_and_validate_zip( $file_path, [ 'json', 'xml' ] );

		if ( is_wp_error( $extraction_result ) ) {
			\WP_CLI::error( $extraction_result->get_error_message() );
		}

		$import_settings = [
			'include' => [ 'templates', 'content', 'site-settings' ],
			'directory' => $extraction_result['extraction_directory'],
		];

		foreach ( $assoc_args as $key => $value ) {
			$import_settings[ $key ] = explode( ',', $value );
		}

		try {
			\WP_CLI::line( 'Importing data...' );

			$import = new Import( $import_settings );

			Plugin::$instance->app->get_component( 'import-export' )->import = $import;

			$import->run();

			\WP_CLI::line( 'Removing temp files...' );

			Plugin::$instance->uploads_manager->remove_file_or_dir( $import_settings['directory'] );

			// The file was created from remote or library request and it should be removed.
			if ( $url ) {
				Plugin::$instance->uploads_manager->remove_file_or_dir( dirname( $file_path ) );
			}

			\WP_CLI::success( 'Kit imported successfully' );
		} catch ( \Error $error ) {
			Plugin::$instance->uploads_manager->remove_file_or_dir( $import_settings['directory'] );

			\WP_CLI::error( $error->getMessage() );
		}
	}

	/**
	 * Helper to get kit url by the kit id
	 * TODO: Maybe extract it.
	 *
	 * @param $kit_id
	 *
	 * @return string
	 */
	private function get_url_from_library( $kit_id ) {
		/** @var Kit_Library $app */
		$app = Plugin::$instance->common->get_component( 'connect' )->get_app( 'kit-library' );

		if ( ! $app ) {
			\WP_CLI::error( 'Kit library app not found' );
		}

		$response = $app->download_link( $kit_id );

		if ( is_wp_error( $response ) ) {
			\WP_CLI::error( "Library Response: {$response->get_error_message()}" );
		}

		return $response->download_link;
	}

	/**
	 * Helper to get kit zip file path by the kit url
	 * TODO: Maybe extract it.
	 *
	 * @param $url
	 *
	 * @return string
	 */
	private function create_temp_file_from_url( $url ) {
		$response = wp_remote_get( $url );

		if ( is_wp_error( $response ) ) {
			\WP_CLI::error( "Download file url: {$response->get_error_message()}" );
		}

		if ( 200 !== $response['response']['code'] ) {
			\WP_CLI::error( "Download file url: {$response['response']['message']}" );
		}

		return Plugin::$instance->uploads_manager->create_temp_file( $response['body'], 'kit.zip' );
	}
}
core/app/modules/import-export/import.php000064400000003233151327220420014577 0ustar00<?php
namespace Elementor\Core\App\Modules\ImportExport;

use Elementor\Core\App\Modules\ImportExport\Compatibility\Base_Adapter;
use Elementor\Core\App\Modules\ImportExport\Compatibility\Envato;
use Elementor\Core\App\Modules\ImportExport\Compatibility\Kit_Library;
use Elementor\Core\App\Modules\ImportExport\Directories\Root;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Import extends Iterator {

	/**
	 * @var Base_Adapter[]
	 */
	private $adapters = [];

	final public function run() {
		$this->temp_dir = $this->get_settings( 'directory' );

		$manifest_data = $this->read_json_file( 'manifest' );

		$manifest_data = $this->adapt_manifest_structure( $manifest_data );

		$root_directory = new Root( $this );

		return $root_directory->run_import( $manifest_data );
	}

	final public function read_json_file( $name ) {
		$name = $this->get_archive_file_full_path( $name . '.json' );

		return json_decode( file_get_contents( $name, true ), true );
	}

	final public function get_adapters() {
		return $this->adapters;
	}

	final public function adapt_manifest_structure( array $manifest_data ) {
		$this->init_adapters( $manifest_data );

		foreach ( $this->adapters as $adapter ) {
			$manifest_data = $adapter->get_manifest_data( $manifest_data );
		}

		return $manifest_data;
	}

	private function init_adapters( array $manifest_data ) {
		/** @var Base_Adapter[] $adapter_types */
		$adapter_types = [ Envato::class, Kit_Library::class ];

		foreach ( $adapter_types as $adapter_type ) {
			if ( $adapter_type::is_compatibility_needed( $manifest_data, $this->get_settings() ) ) {
				$this->adapters[] = new $adapter_type( $this );
			}
		}
	}
}
core/app/modules/import-export/module.php000064400000022534151327220420014557 0ustar00<?php
namespace Elementor\Core\App\Modules\ImportExport;

use Elementor\Core\Base\Document;
use Elementor\Core\Base\Module as BaseModule;
use Elementor\Core\Common\Modules\Ajax\Module as Ajax;
use Elementor\Plugin;
use Elementor\TemplateLibrary\Source_Local;
use Elementor\Tools;
use Elementor\Utils;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

/**
 * Import Export Module
 *
 * Responsible for initializing Elementor App functionality
 */
class Module extends BaseModule {
	const FORMAT_VERSION = '1.0';

	const EXPORT_TRIGGER_KEY = 'elementor_export_kit';

	const IMPORT_TRIGGER_KEY = 'elementor_import_kit';

	/**
	 * @var Export
	 */
	public $export;

	/**
	 * @var Import
	 */
	public $import;

	/**
	 * Get name.
	 *
	 * @access public
	 *
	 * @return string
	 */
	public function get_name() {
		return 'import-export';
	}

	public function get_init_settings() {
		if ( ! Plugin::$instance->app->is_current() ) {
			return [];
		}

		$export_nonce = wp_create_nonce( 'elementor_export' );

		$export_url = add_query_arg( [ 'nonce' => $export_nonce ], Plugin::$instance->app->get_base_url() );

		return [
			'exportURL' => $export_url,
			'summaryTitles' => $this->get_summary_titles(),
		];
	}

	public function get_summary_titles() {
		$summary_titles = [];

		$document_types = Plugin::$instance->documents->get_document_types();

		foreach ( $document_types as $name => $document_type ) {
			$summary_titles['templates'][ $name ] = [
				'single' => $document_type::get_title(),
				'plural' => $document_type::get_plural_title(),
			];
		}

		$post_types = get_post_types_by_support( 'elementor' );

		foreach ( $post_types as $post_type ) {
			if ( Source_Local::CPT === $post_type ) {
				continue;
			}

			$post_type_object = get_post_type_object( $post_type );

			$summary_titles['content'][ $post_type ] = [
				'single' => $post_type_object->labels->singular_name,
				'plural' => $post_type_object->label,
			];
		}

		$active_kit = Plugin::$instance->kits_manager->get_active_kit();

		foreach ( $active_kit->get_tabs() as $key => $tab ) {
			$summary_titles['site-settings'][ $key ] = $tab->get_title();
		}

		return $summary_titles;
	}

	private function import_stage_1() {
		// PHPCS - Already validated in caller function.
		if ( ! empty( $_POST['e_import_file'] ) ) { // phpcs:ignore WordPress.Security.NonceVerification.Missing
			$file_url = $_POST['e_import_file']; // phpcs:ignore WordPress.Security.NonceVerification.Missing
			if ( ! filter_var( $file_url, FILTER_VALIDATE_URL, FILTER_FLAG_SCHEME_REQUIRED ) || 0 !== strpos( $file_url, 'http' ) ) {
				throw new \Error( __( 'Invalid URL', 'elementor' ) );
			}

			$remote_zip_request = wp_remote_get( $file_url );

			if ( is_wp_error( $remote_zip_request ) ) {
				throw new \Error( $remote_zip_request->get_error_message() );
			}

			if ( 200 !== $remote_zip_request['response']['code'] ) {
				throw new \Error( $remote_zip_request['response']['message'] );
			}

			$file_name = Plugin::$instance->uploads_manager->create_temp_file( $remote_zip_request['body'], 'kit.zip' );
		} else {
			// PHPCS - Already validated in caller function.
			$file_name = $_FILES['e_import_file']['tmp_name']; // phpcs:ignore WordPress.Security.NonceVerification.Missing
		}

		$extraction_result = Plugin::$instance->uploads_manager->extract_and_validate_zip( $file_name, [ 'json', 'xml' ] );

		if ( ! empty( $file_url ) ) {
			Plugin::$instance->uploads_manager->remove_file_or_dir( dirname( $file_name ) );
		}

		$session_dir = $extraction_result['extraction_directory'];

		$manifest_data = json_decode( file_get_contents( $session_dir . 'manifest.json', true ), true );

		$manifest_data = $this->import->adapt_manifest_structure( $manifest_data );

		$result = [
			'session' => basename( $session_dir ),
			'manifest' => $manifest_data,
		];

		$result = apply_filters( 'elementor/import/stage_1/result', $result );

		return $result;
	}

	private function import_stage_2( $settings_directory ) {
		set_time_limit( 0 );

		$result = $this->import->run();

		Plugin::$instance->uploads_manager->remove_file_or_dir( $settings_directory );

		return $result;
	}

	private function on_admin_init() {
		if ( ! isset( $_POST['action'] ) || self::IMPORT_TRIGGER_KEY !== $_POST['action'] || ! wp_verify_nonce( $_POST['nonce'], Ajax::NONCE_KEY ) ) {
			return;
		}

		$import_settings = json_decode( stripslashes( $_POST['data'] ), true );

		$import_settings['directory'] = Plugin::$instance->uploads_manager->get_temp_dir() . $import_settings['session'] . '/';

		$this->import = new Import( $import_settings );

		try {
			if ( 1 === $import_settings['stage'] ) {
				$result = $this->import_stage_1();
			} elseif ( 2 === $import_settings['stage'] ) {
				$result = $this->import_stage_2( $import_settings['directory'] );
			}

			wp_send_json_success( $result );
		} catch ( \Error $error ) {
			wp_send_json_error( $error->getMessage() );
		}
	}

	private function on_init() {
		if ( ! isset( $_GET[ self::EXPORT_TRIGGER_KEY ] ) || ! wp_verify_nonce( $_GET['nonce'], 'elementor_export' ) ) {
			return;
		}

		$export_settings = $_GET[ self::EXPORT_TRIGGER_KEY ];

		try {
			$this->export = new Export( self::merge_properties( [], $export_settings, [ 'include', 'kitInfo' ] ) );

			$export_result = $this->export->run();

			$file_name = $export_result['file_name'];

			$file = file_get_contents( $file_name, true );

			Plugin::$instance->uploads_manager->remove_file_or_dir( dirname( $file_name ) );

			wp_send_json_success( [
				'manifest' => $export_result['manifest'],
				'file' => base64_encode( $file ),
			] );
		} catch ( \Error $error ) {
			wp_die( esc_html( $error->getMessage() ) );
		}
	}

	private function render_import_export_tab_content() {
		$intro_text_link = sprintf( '<a href="https://go.elementor.com/wp-dash-import-export-general" target="_blank">%s</a>', esc_html__( 'Learn more', 'elementor' ) );

		$intro_text = sprintf(
			/* translators: 1: New line break, 2: Learn More link. */
			__( 'Design sites faster with a template kit that contains some or all components of a complete site, like templates, content & site settings.%1$sYou can import a kit and apply it to your site, or export the elements from this site to be used anywhere else. %2$s', 'elementor' ),
			'<br>',
			$intro_text_link
		);

		$content_data = [
			'export' => [
				'title' => esc_html__( 'Export a Template Kit', 'elementor' ),
				'button' => [
					'url' => Plugin::$instance->app->get_base_url() . '#/export',
					'text' => esc_html__( 'Start Export', 'elementor' ),
				],
				'description' => esc_html__( 'Bundle your whole site - or just some of its elements - to be used for another website.', 'elementor' ),
				'link' => [
					'url' => 'https://go.elementor.com/wp-dash-import-export-export-flow',
					'text' => esc_html__( 'Learn More', 'elementor' ),
				],
			],
			'import' => [
				'title' => esc_html__( 'Import a Template Kit', 'elementor' ),
				'button' => [
					'url' => Plugin::$instance->app->get_base_url() . '#/import',
					'text' => esc_html__( 'Start Import', 'elementor' ),
				],
				'description' => esc_html__( 'Apply the design and settings of another site to this one.', 'elementor' ),
				'link' => [
					'url' => 'https://go.elementor.com/wp-dash-import-export-import-flow',
					'text' => esc_html__( 'Learn More', 'elementor' ),
				],
			],
		];

		$info_text = esc_html__( 'Even after you import and apply a Template Kit, you can undo it by restoring a previous version of your site.', 'elementor' ) . '<br>' . esc_html__( 'Open Site Settings > History > Revisions.', 'elementor' );
		?>

		<div class="tab-import-export-kit__content">
			<p class="tab-import-export-kit__info"><?php Utils::print_unescaped_internal_string( $intro_text ); ?></p>

			<div class="tab-import-export-kit__wrapper">
			<?php foreach ( $content_data as $data ) { ?>
				<div class="tab-import-export-kit__container">
					<div class="tab-import-export-kit__box">
						<h2><?php Utils::print_unescaped_internal_string( $data['title'] ); ?></h2>
						<a href="<?php Utils::print_unescaped_internal_string( $data['button']['url'] ); ?>" class="elementor-button elementor-button-success">
							<?php Utils::print_unescaped_internal_string( $data['button']['text'] ); ?>
						</a>
					</div>
					<p><?php Utils::print_unescaped_internal_string( $data['description'] ); ?></p>
					<a href="<?php Utils::print_unescaped_internal_string( $data['link']['url'] ); ?>" target="_blank"><?php Utils::print_unescaped_internal_string( $data['link']['text'] ); ?></a>
				</div>
			<?php } ?>
			</div>

			<p class="tab-import-export-kit__info"><?php Utils::print_unescaped_internal_string( $info_text ); ?></p>
		</div>
		<?php
	}

	public function register_settings_tab( Tools $tools ) {
		$tools->add_tab( 'import-export-kit', [
			'label' => esc_html__( 'Import / Export Kit', 'elementor' ),
			'sections' => [
				'intro' => [
					'label' => esc_html__( 'Template Kits', 'elementor' ),
					'callback' => function() {
						$this->render_import_export_tab_content();
					},
					'fields' => [],
				],
			],
		] );
	}

	public function __construct() {
		add_action( 'init', function() {
			$this->on_init();
		} );

		add_action( 'admin_init', function() {
			$this->on_admin_init();
		} );

		$page_id = Tools::PAGE_ID;

		add_action( "elementor/admin/after_create_settings/{$page_id}", [ $this, 'register_settings_tab' ] );

		if ( Utils::is_wp_cli() ) {
			\WP_CLI::add_command( 'elementor kit', WP_CLI::class );
		}
	}
}
core/app/modules/import-export/directories/root.php000064400000006170151327220420016567 0ustar00<?php

namespace Elementor\Core\App\Modules\ImportExport\Directories;

use Elementor\Core\App\Modules\ImportExport\Module;
use Elementor\Core\Settings\Page\Manager as PageManager;
use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Root extends Base {

	protected function get_name() {
		return '';
	}

	protected function export() {
		$kit = Plugin::$instance->kits_manager->get_active_kit();

		$exporter_settings = $this->exporter->get_settings();

		$include = $exporter_settings['include'];

		$include_site_settings = in_array( 'settings', $include, true );

		if ( $include_site_settings ) {
			$kit_data = $kit->get_export_data();

			$excluded_kit_settings_keys = [
				'site_name',
				'site_description',
				'site_logo',
				'site_favicon',
			];

			foreach ( $excluded_kit_settings_keys as $setting_key ) {
				unset( $kit_data['settings'][ $setting_key ] );
			}

			$this->exporter->add_json_file( 'site-settings', $kit_data );
		}

		$kit_post = $kit->get_post();

		$manifest_data = [
			'name' => sanitize_title( $exporter_settings['kitInfo']['title'] ),
			'title' => $exporter_settings['kitInfo']['title'],
			'description' => $exporter_settings['kitInfo']['description'],
			'author' => get_the_author_meta( 'display_name', $kit_post->post_author ),
			'version' => Module::FORMAT_VERSION,
			'elementor_version' => ELEMENTOR_VERSION,
			'created' => gmdate( 'Y-m-d H:i:s' ),
			'thumbnail' => get_the_post_thumbnail_url( $kit_post ),
			'site' => get_site_url(),
		];

		if ( $include_site_settings ) {
			$kit_tabs = $kit->get_tabs();

			unset( $kit_tabs['settings-site-identity'] );

			$manifest_data['site-settings'] = array_keys( $kit_tabs );
		}

		return $manifest_data;
	}

	protected function import( array $import_settings ) {
		$include = $this->importer->get_settings( 'include' );

		if ( ! in_array( 'settings', $include, true ) ) {
			return;
		}

		$kit = Plugin::$instance->kits_manager->get_active_kit();

		$old_settings = $kit->get_meta( PageManager::META_KEY );

		if ( ! $old_settings ) {
			$old_settings = [];
		}

		$new_settings = $this->importer->read_json_file( 'site-settings' );

		$new_settings = $new_settings['settings'];

		if ( ! empty( $old_settings['custom_colors'] ) ) {
			$new_settings['custom_colors'] = array_merge( $old_settings['custom_colors'], $new_settings['custom_colors'] );
		}

		if ( ! empty( $old_settings['custom_typography'] ) ) {
			$new_settings['custom_typography'] = array_merge( $old_settings['custom_typography'], $new_settings['custom_typography'] );
		}

		$new_settings = array_replace_recursive( $old_settings, $new_settings );

		$kit->save( [ 'settings' => $new_settings ] );
	}

	protected function get_default_sub_directories() {
		$sub_directories = [];

		$include = $this->iterator->get_settings( 'include' );

		if ( in_array( 'templates', $include, true ) ) {
			$sub_directories[] = new Templates( $this->iterator, $this );
		}

		if ( in_array( 'content', $include, true ) ) {
			$sub_directories[] = new Content( $this->iterator, $this );

			$sub_directories[] = new WP_Content( $this->iterator, $this );
		}

		return $sub_directories;
	}
}
core/app/modules/import-export/directories/content.php000064400000001170151327220420017251 0ustar00<?php

namespace Elementor\Core\App\Modules\ImportExport\Directories;

use Elementor\TemplateLibrary\Source_Local;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Content extends Base {

	protected function get_name() {
		return 'content';
	}

	protected function get_default_sub_directories() {
		$post_types = get_post_types_by_support( 'elementor' );

		$sub_directories = [];

		foreach ( $post_types as $post_type ) {
			if ( Source_Local::CPT === $post_type ) {
				continue;
			}

			$sub_directories[] = new Post_Type( $this->iterator, $this, $post_type );
		}

		return $sub_directories;
	}
}
core/app/modules/import-export/directories/base.php000064400000005513151327220420016516 0ustar00<?php
namespace Elementor\Core\App\Modules\ImportExport\Directories;

use Elementor\Core\App\Modules\ImportExport\Export;
use Elementor\Core\App\Modules\ImportExport\Import;
use Elementor\Core\App\Modules\ImportExport\Iterator;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

abstract class Base {

	/**
	 * @var Base[]
	 */
	private $sub_directories = [];

	/**
	 * @var Base
	 */
	private $parent;

	/**
	 * @var Iterator
	 */
	protected $iterator;

	/**
	 * @var Export
	 */
	protected $exporter;

	/**
	 * @var Import
	 */
	protected $importer;

	abstract protected function get_name();

	public function __construct( Iterator $iterator, Base $parent = null ) {
		$this->iterator = $iterator;

		if ( $iterator instanceof Export ) {
			$this->exporter = $iterator;
		} else {
			$this->importer = $iterator;
		}

		$this->parent = $parent;

		$this->register_directories();
	}

	final public function get_path() {
		$path = $this->get_name();

		if ( $this->parent ) {
			$parent_name = $this->parent->get_name();

			if ( $parent_name ) {
				$parent_name .= '/';
			}

			$path = $parent_name . $path;
		}

		return $path;
	}

	final public function run_export() {
		$this->exporter->set_current_archive_path( $this->get_path() );

		$manifest_data = $this->export();

		foreach ( $this->sub_directories as $sub_directory ) {
			$manifest_data[ $sub_directory->get_name() ] = $sub_directory->run_export();
		}

		return $manifest_data;
	}

	final public function run_import( array $settings ) {
		$this->importer->set_current_archive_path( $this->get_path() );

		$meta_data = $this->import( $settings );

		foreach ( $this->sub_directories as $sub_directory ) {
			$sub_directory_name = $sub_directory->get_name();

			if ( ! isset( $settings[ $sub_directory_name ] ) ) {
				continue;
			}

			$meta_data[ $sub_directory_name ] = $sub_directory->run_import( $settings[ $sub_directory_name ] );
		}

		return $meta_data;
	}

	/**
	 * @return array
	 */
	protected function export() {
		return [];
	}

	/**
	 * @param array $import_settings
	 *
	 * @return array
	 */
	protected function import( array $import_settings ) {
		return [];
	}

	protected function get_default_sub_directories() {
		return [];
	}

	private function register_directories() {
		$sub_directories = $this->get_default_sub_directories();
		$path = $this->get_path();

		/**
		 * Kit sub directories.
		 *
		 * Filters sub directories when importing/exporting kits.
		 *
		 * The dynamic portion of the hook name, `$path`, refers to the directory path.
		 *
		 * @param array $sub_directories A list of sub directories.
		 * @param Elementor\Core\App\Modules\ImportExport\Directories\Base $this The base class instance.
		 */
		$sub_directories = apply_filters( "elementor/kit/import-export/directory/{$path}", $sub_directories, $this );

		$this->sub_directories = $sub_directories;
	}
}
core/app/modules/import-export/directories/wp-post-type.php000064400000002545151327220420020176 0ustar00<?php
namespace Elementor\Core\App\Modules\ImportExport\Directories;

use Elementor\Core\App\Modules\ImportExport\Iterator;
use Elementor\Core\Utils\ImportExport\WP_Exporter;
use Elementor\Core\Utils\ImportExport\WP_Import;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class WP_Post_Type extends Base {

	private $post_type;

	protected function get_name() {
		return $this->post_type;
	}

	public function __construct( Iterator $iterator, Base $parent, $post_type ) {
		parent::__construct( $iterator, $parent );

		$this->post_type = $post_type;
	}

	public function export() {
		$wp_exporter = new WP_Exporter( [
			'content' => $this->post_type,
			'status' => 'publish',
			'limit' => 20,
			'meta_query' => [
				[
					'key' => '_elementor_edit_mode',
					'compare' => 'NOT EXISTS',
				],
			],
			'include_post_featured_image_as_attachment' => true, // Will export 'featured_image' as attachment.
		] );

		$export_result = $wp_exporter->run();

		$this->exporter->add_file( $this->post_type . '.xml', $export_result['xml'] );

		return $export_result['ids'];
	}

	protected function import( array $import_settings ) {
		$wp_importer = new WP_Import( $this->importer->get_archive_file_full_path( $this->post_type . '.xml' ), [
			'fetch_attachments' => true,
		] );

		$result = $wp_importer->run();

		return $result['summary']['posts'];
	}
}
core/app/modules/import-export/directories/wp-content.php000064400000001436151327220420017702 0ustar00<?php

namespace Elementor\Core\App\Modules\ImportExport\Directories;

use Elementor\Modules\LandingPages\Module as Landing_Pages_Module;
use Elementor\TemplateLibrary\Source_Local;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class WP_Content extends Base {

	protected function get_name() {
		return 'wp-content';
	}

	protected function get_default_sub_directories() {
		$post_types = get_post_types( [
			'public' => true,
			'can_export' => true,
		] );

		unset(
			$post_types['attachment'],
			$post_types[ Landing_Pages_Module::CPT ],
			$post_types[ Source_Local::CPT ]
		);

		$sub_directories = [];

		foreach ( $post_types as $post_type ) {
			$sub_directories[] = new WP_Post_Type( $this->iterator, $this, $post_type );
		}

		return $sub_directories;
	}
}
core/app/modules/import-export/directories/templates.php000064400000004661151327220420017605 0ustar00<?php

namespace Elementor\Core\App\Modules\ImportExport\Directories;

use Elementor\Core\Base\Document;
use Elementor\Plugin;
use Elementor\TemplateLibrary\Source_Local;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Templates extends Base {

	protected function get_name() {
		return 'templates';
	}

	protected function export() {
		$template_types = array_values( Source_Local::get_template_types() );

		$query_args = [
			'post_type' => Source_Local::CPT,
			'post_status' => 'publish',
			'posts_per_page' => -1,
			'meta_query' => [
				[
					'key' => Document::TYPE_META_KEY,
					'value' => $template_types,
				],
			],
		];

		$templates_query = new \WP_Query( $query_args );

		$manifest_data = [];

		foreach ( $templates_query->posts as $template_post ) {
			$template_id = $template_post->ID;

			$template_document = Plugin::$instance->documents->get( $template_id );

			$template_export_data = $template_document->get_export_data();

			$this->exporter->add_json_file( $template_id, $template_export_data );

			$manifest_data[ $template_id ] = $template_document->get_export_summary();
		}

		return $manifest_data;
	}

	protected function import( array $import_settings ) {
		$result = [
			'succeed' => [],
			'failed' => [],
		];

		foreach ( $import_settings as $id => $template_settings ) {
			try {
				$import = $this->import_template( $id, $template_settings );

				if ( is_wp_error( $import ) ) {
					$result['failed'][ $id ] = $import->get_error_message();

					continue;
				}

				$result['succeed'][ $id ] = $import;
			} catch ( \Error $error ) {
				$result['failed'][ $id ] = $error->getMessage();
			}
		}

		return $result;
	}

	private function import_template( $id, array $template_settings ) {
		$template_data = $this->importer->read_json_file( $id );

		$doc_type = $template_settings['doc_type'];

		$new_document = Plugin::$instance->documents->create(
			$doc_type,
			[
				'post_title' => $template_settings['title'],
				'post_type' => Source_Local::CPT,
				'post_status' => 'publish',
			]
		);

		if ( is_wp_error( $new_document ) ) {
			return $new_document;
		}

		$template_data['import_settings'] = $template_settings;
		$template_data['id'] = $id;

		foreach ( $this->importer->get_adapters() as $adapter ) {
			$template_data = $adapter->get_template_data( $template_data, $template_settings );
		}

		$new_document->import( $template_data );

		return $new_document->get_main_id();
	}
}
core/app/modules/import-export/directories/post-type.php000064400000006402151327220420017546 0ustar00<?php
namespace Elementor\Core\App\Modules\ImportExport\Directories;

use Elementor\Core\App\Modules\ImportExport\Iterator;
use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Post_Type extends Base {

	private $post_type;

	private $show_page_on_front;

	private $page_on_front_id;

	public function __construct( Iterator $iterator, Base $parent, $post_type ) {
		parent::__construct( $iterator, $parent );

		$this->post_type = $post_type;

		if ( 'page' === $post_type ) {
			$this->init_page_on_front_data();
		}
	}

	public function export() {
		$query_args = [
			'post_type' => $this->post_type,
			'post_status' => 'publish',
			'posts_per_page' => -1,
			'meta_query' => [
				[
					'key' => '_elementor_data',
					'compare' => 'EXISTS',
				],
				[
					'key' => '_elementor_data',
					'compare' => '!=',
					'value' => '[]',
				],
			],
		];

		$query = new \WP_Query( $query_args );

		$manifest_data = [];

		foreach ( $query->posts as $post ) {
			$document = Plugin::$instance->documents->get( $post->ID );

			$post_manifest_data = [
				'title' => $post->post_title,
				'excerpt' => $post->post_excerpt,
				'doc_type' => $document->get_name(),
				'thumbnail' => get_the_post_thumbnail_url( $post ),
				'url' => get_permalink( $post ),
			];

			if ( $post->ID === $this->page_on_front_id ) {
				$post_manifest_data['show_on_front'] = true;
			}

			$manifest_data[ $post->ID ] = $post_manifest_data;

			$this->exporter->add_json_file( $post->ID, $document->get_export_data() );
		}

		return $manifest_data;
	}

	public function import_post( $id, array $post_settings ) {
		$post_data = $this->importer->read_json_file( $id );

		$post_attributes = [
			'post_title' => $post_settings['title'],
			'post_type' => $this->post_type,
			'post_status' => 'publish',
		];

		if ( ! empty( $post_settings['excerpt'] ) ) {
			$post_attributes['post_excerpt'] = $post_settings['excerpt'];
		}

		$new_document = Plugin::$instance->documents->create(
			$post_settings['doc_type'],
			$post_attributes
		);

		if ( is_wp_error( $new_document ) ) {
			return $new_document;
		}

		$post_data['import_settings'] = $post_settings;

		$new_document->import( $post_data );

		$new_id = $new_document->get_main_id();

		if ( ! empty( $post_settings['show_on_front'] ) ) {
			update_option( 'page_on_front', $new_id );

			if ( ! $this->show_page_on_front ) {
				update_option( 'show_on_front', 'page' );
			}
		}

		return $new_id;
	}

	protected function get_name() {
		return $this->post_type;
	}

	protected function import( array $import_settings ) {
		$result = [
			'succeed' => [],
			'failed' => [],
		];

		foreach ( $import_settings as $id => $post_settings ) {
			try {
				$import = $this->import_post( $id, $post_settings );

				if ( is_wp_error( $import ) ) {
					$result['failed'][ $id ] = $import->get_error_message();

					continue;
				}

				$result['succeed'][ $id ] = $import;
			} catch ( \Error $error ) {
				$result['failed'][ $id ] = $error->getMessage();
			}
		}

		return $result;
	}

	private function init_page_on_front_data() {
		$this->show_page_on_front = 'page' === get_option( 'show_on_front' );

		if ( $this->show_page_on_front && $this->exporter ) {
			$this->page_on_front_id = (int) get_option( 'page_on_front' );
		}
	}
}
core/app/modules/import-export/iterator.php000064400000002036151327220420015116 0ustar00<?php
namespace Elementor\Core\App\Modules\ImportExport;

use Elementor\Core\Base\Base_Object;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

abstract class Iterator extends Base_Object {

	protected $temp_dir;

	private $current_archive_path = '';

	abstract public function run();

	protected function get_archive_file_path( $file_name ) {
		return $this->get_current_archive_path() . $file_name;
	}

	public function get_archive_file_full_path( $file_name ) {
		return $this->temp_dir . $this->get_archive_file_path( $file_name );
	}

	public function get_current_archive_path() {
		return $this->current_archive_path;
	}

	public function set_current_archive_path( $path ) {
		if ( $path ) {
			$path .= '/';
		}

		$this->current_archive_path = $path;
	}

	public function __construct( array $settings ) {
		if ( ! class_exists( '\ZipArchive' ) ) {
			throw new \Error( 'ZipArchive module is not installed on the server. You must install this module to perform the process.' );
		}

		$this->set_settings( $settings );
	}
}
core/app/modules/import-export/compatibility/base-adapter.php000064400000001317151327220420020467 0ustar00<?php

namespace Elementor\Core\App\Modules\ImportExport\Compatibility;

use Elementor\Core\App\Modules\ImportExport\Import;
use Elementor\Core\Base\Base_Object;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

abstract class Base_Adapter extends Base_Object {

	protected $importer;

	public static function is_compatibility_needed( array $manifest_data, array $import_settings ) {
		return false;
	}

	public function get_manifest_data( array $manifest_data ) {
		return $manifest_data;
	}

	public function get_template_data( array $template_data, array $template_settings ) {
		return $template_data;
	}

	public function __construct( Import $importer ) {
		$this->importer = $importer;
	}
}
core/app/modules/import-export/compatibility/kit-library.php000064400000001432151327220420020366 0ustar00<?php

namespace Elementor\Core\App\Modules\ImportExport\Compatibility;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Kit_Library extends Base_Adapter {
	public static function is_compatibility_needed( array $manifest_data, array $import_settings ) {
		return ! empty( $import_settings['referrer'] ) && 'kit-library' === $import_settings['referrer'];
	}

	public function get_manifest_data( array $manifest_data ) {
		if ( ! empty( $manifest_data['content']['page'] ) ) {
			foreach ( $manifest_data['content']['page'] as & $page ) {
				$page['thumbnail'] = false;
			}
		}

		if ( ! empty( $manifest_data['templates'] ) ) {
			foreach ( $manifest_data['templates'] as & $template ) {
				$template['thumbnail'] = false;
			}
		}

		return $manifest_data;
	}
}
core/app/modules/import-export/compatibility/envato.php000064400000005076151327220420017441 0ustar00<?php

namespace Elementor\Core\App\Modules\ImportExport\Compatibility;

use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Envato extends Base_Adapter {
	public static function is_compatibility_needed( array $manifest_data, array $import_settings ) {
		return ! empty( $manifest_data['manifest_version'] );
	}

	public function get_manifest_data( array $manifest_data ) {
		$templates = $manifest_data['templates'];

		$manifest_data['templates'] = [];

		foreach ( $templates as $template ) {
			// Envato store their global kit styles as a 'global.json' template file, this needs to be converted to 'site-settings.json' file
			if ( ! empty( $template['metadata']['template_type'] ) && 'global-styles' === $template['metadata']['template_type'] ) {
				$global_file_data = $this->importer->read_json_file( str_replace( '.json', '', $template['source'] ) );

				$site_settings = [ 'settings' => $global_file_data['page_settings'] ];

				$site_settings_file_destination = $this->importer->get_archive_file_full_path( 'site-settings.json' );

				file_put_contents( $site_settings_file_destination, wp_json_encode( $site_settings ) );

				// Getting the site-settings because Envato stores them in one of the posts.
				$kit = Plugin::$instance->kits_manager->get_active_kit();

				$kit_tabs = $kit->get_tabs();

				unset( $kit_tabs['settings-site-identity'] );

				$manifest_data['site-settings'] = array_keys( $kit_tabs );

				continue;
			}

			// Evanto uses "type" instead of "doc_type"
			$template['doc_type'] = $template['type'];

			// Evanto uses for "name" instead of "title"
			$template['title'] = $template['name'];
			// Envato specifying an exact path to the template rather than using its "ID" as an index.
			// This extracts the "file name" part out of our exact source list and we treat that as an ID.
			$file_name_without_extension = str_replace( '.json', '', basename( $template['source'] ) );

			// Append the template to the global list:
			$manifest_data['templates'][ $file_name_without_extension ] = $template;
		}

		return $manifest_data;
	}

	public function get_template_data( array $template_data, array $template_settings ) {
		if ( ! empty( $template_data['metadata']['elementor_pro_conditions'] ) ) {
			foreach ( $template_data['metadata']['elementor_pro_conditions'] as $condition ) {
				list ( $type, $name, $sub_name, $sub_id ) = array_pad( explode( '/', $condition ), 4, '' );

				$template_data['import_settings']['conditions'][] = compact( 'type', 'name', 'sub_name', 'sub_id' );
			}
		}

		return $template_data;
	}
}
core/app/modules/import-export/export.php000064400000003237151327220420014612 0ustar00<?php
namespace Elementor\Core\App\Modules\ImportExport;

use Elementor\Core\App\Modules\ImportExport\Directories\Root;
use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Export extends Iterator {

	/**
	 * @var \ZipArchive
	 */
	private $zip_archive;

	private $archive_file_name;

	final public function run() {
		ob_start();

		$this->init_zip_archive();

		$root_directory = new Root( $this );

		$manifest_data = $root_directory->run_export();

		/**
		 * Manifest data from exported kit.
		 *
		 * Filters the manifest data of any exported kit.
		 *
		 * @param array  $manifest_data Manifest data.
		 * @param Export $this          The export instance.
		 */
		$manifest_data = apply_filters( 'elementor/kit/export/manifest-data', $manifest_data, $this );

		$this->set_current_archive_path( '' );

		$this->add_json_file( 'manifest', $manifest_data );

		$this->zip_archive->close();

		return [
			'manifest' => $manifest_data,
			'file_name' => $this->archive_file_name,
		];
	}

	public function add_json_file( $name, $content, $json_flags = null ) {
		$this->add_file( $name . '.json', wp_json_encode( $content, $json_flags ) );
	}

	public function add_file( $file_name, $content ) {
		$this->zip_archive->addFromString( $this->get_archive_file_path( $file_name ), $content );
	}

	private function init_zip_archive() {
		$zip_archive = new \ZipArchive();

		$this->temp_dir = Plugin::$instance->uploads_manager->create_unique_dir();

		$this->archive_file_name = $this->temp_dir . 'kit.zip';

		$zip_archive->open( $this->archive_file_name, \ZipArchive::CREATE | \ZipArchive::OVERWRITE );

		$this->zip_archive = $zip_archive;
	}
}
core/app/view.php000064400000001331151327220420007733 0ustar00<?php
namespace Elementor\Core\App;

use Elementor\Utils;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * @var App $this
 */


$theme_class = 'dark' === $this->get_elementor_ui_theme_preference() ? 'eps-theme-dark' : '';

?>
<!DOCTYPE html>
<html <?php language_attributes(); ?>>
	<head>
		<meta charset="utf-8" />
		<meta name="viewport" content="width=device-width, initial-scale=1.0" />
		<title><?php echo esc_html__( 'Elementor', 'elementor' ) . ' ... '; ?></title>
		<base target="_parent">
		<?php wp_print_styles(); ?>
	</head>
	<body class="<?php Utils::print_unescaped_internal_string( $theme_class ); ?>">
		<div id="e-app"></div>
		<?php wp_print_footer_scripts(); ?>
	</body>
</html>
core/app/app.php000064400000014031151327220420007542 0ustar00<?php
namespace Elementor\Core\App;

use Elementor\Core\Base\App as BaseApp;
use Elementor\Core\Settings\Manager as SettingsManager;
use Elementor\Plugin;
use Elementor\TemplateLibrary\Source_Local;
use Elementor\Utils;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

class App extends BaseApp {

	const PAGE_ID = 'elementor-app';

	/**
	 * Get module name.
	 *
	 * Retrieve the module name.
	 *
	 * @since 3.0.0
	 * @access public
	 *
	 * @return string Module name.
	 */
	public function get_name() {
		return 'app';
	}

	public function get_base_url() {
		return admin_url( 'admin.php?page=' . self::PAGE_ID . '&ver=' . ELEMENTOR_VERSION );
	}

	public function register_admin_menu() {
		add_submenu_page(
			Source_Local::ADMIN_MENU_SLUG,
			esc_html__( 'Theme Builder', 'elementor' ),
			esc_html__( 'Theme Builder', 'elementor' ),
			'manage_options',
			self::PAGE_ID
		);
	}

	public function fix_submenu( $menu ) {
		global $submenu;

		if ( is_multisite() && is_network_admin() ) {
			return $menu;
		}

		// Non admin role / custom wp menu.
		if ( empty( $submenu[ Source_Local::ADMIN_MENU_SLUG ] ) ) {
			return $menu;
		}

		// Hack to add a link to sub menu.
		foreach ( $submenu[ Source_Local::ADMIN_MENU_SLUG ] as &$item ) {
			if ( self::PAGE_ID === $item[2] ) {
				$item[2] = $this->get_settings( 'menu_url' ); // phpcs:ignore WordPress.WP.GlobalVariablesOverride.Prohibited
				$item[4] = 'elementor-app-link'; // phpcs:ignore WordPress.WP.GlobalVariablesOverride.Prohibited
			}
		}

		return $menu;
	}

	public function is_current() {
		return ( ! empty( $_GET['page'] ) && self::PAGE_ID === $_GET['page'] );
	}

	public function admin_init() {
		do_action( 'elementor/app/init', $this );

		$this->enqueue_assets();

		// Setup default heartbeat options
		// TODO: Enable heartbeat.
		add_filter( 'heartbeat_settings', function( $settings ) {
			$settings['interval'] = 15;
			return $settings;
		} );

		$this->render();
		die;
	}

	protected function get_init_settings() {
		return [
			'menu_url' => $this->get_base_url() . '#site-editor/promotion',
			'assets_url' => ELEMENTOR_ASSETS_URL,
			'return_url' => isset( $_SERVER['HTTP_REFERER'] ) ? $_SERVER['HTTP_REFERER'] : admin_url(),
			'hasPro' => Utils::has_pro(),
			'admin_url' => admin_url(),
			'login_url' => wp_login_url(),
		];
	}

	private function render() {
		require __DIR__ . '/view.php';
	}

	/**
	 * Get Elementor UI theme preference.
	 *
	 * Retrieve the user UI theme preference as defined by editor preferences manager.
	 *
	 * @since 3.0.0
	 * @access private
	 *
	 * @return string Preferred UI theme.
	 */
	private function get_elementor_ui_theme_preference() {
		$editor_preferences = SettingsManager::get_settings_managers( 'editorPreferences' );

		return $editor_preferences->get_model()->get_settings( 'ui_theme' );
	}

	/**
	 * Enqueue dark theme detection script.
	 *
	 * Enqueues an inline script that detects user-agent settings for dark mode and adds a complimentary class to the body tag.
	 *
	 * @since 3.0.0
	 * @access private
	 */
	private function enqueue_dark_theme_detection_script() {
		if ( 'auto' === $this->get_elementor_ui_theme_preference() ) {
			wp_add_inline_script( 'elementor-app',
				'if ( window.matchMedia && window.matchMedia( `(prefers-color-scheme: dark)` ).matches )
							{ document.body.classList.add( `eps-theme-dark` ); }' );
		}
	}

	private function enqueue_assets() {
		Plugin::$instance->init_common();
		Plugin::$instance->common->register_scripts();

		wp_register_style(
			'select2',
			$this->get_css_assets_url( 'e-select2', 'assets/lib/e-select2/css/' ),
			[],
			'4.0.6-rc.1'
		);

		wp_register_style(
			'elementor-icons',
			$this->get_css_assets_url( 'elementor-icons', 'assets/lib/eicons/css/' ),
			[],
			'5.13.0'
		);

		wp_register_style(
			'elementor-common',
			$this->get_css_assets_url( 'common', null, 'default', true ),
			[],
			ELEMENTOR_VERSION
		);

		wp_register_style(
			'select2',
			ELEMENTOR_ASSETS_URL . 'lib/e-select2/css/e-select2.css',
			[],
			'4.0.6-rc.1'
		);

		wp_enqueue_style(
			'elementor-app',
			$this->get_css_assets_url( 'app', null, 'default', true ),
			[
				'select2',
				'elementor-icons',
				'elementor-common',
				'select2',
			],
			ELEMENTOR_VERSION
		);

		wp_enqueue_script(
			'elementor-app-packages',
			$this->get_js_assets_url( 'app-packages' ),
			[
				'wp-i18n',
				'react',
			],
			ELEMENTOR_VERSION,
			true
		);

		wp_register_script(
			'select2',
			$this->get_js_assets_url( 'e-select2.full', 'assets/lib/e-select2/js/' ),
			[
				'jquery',
			],
			'4.0.6-rc.1',
			true
		);

		wp_enqueue_script(
			'elementor-app',
			$this->get_js_assets_url( 'app' ),
			[
				'wp-url',
				'wp-i18n',
				'react',
				'react-dom',
				'select2',
			],
			ELEMENTOR_VERSION,
			true
		);

		$this->enqueue_dark_theme_detection_script();

		wp_set_script_translations( 'elementor-app-packages', 'elementor' );
		wp_set_script_translations( 'elementor-app', 'elementor' );

		$this->print_config();
	}

	public function enqueue_app_loader() {
		wp_enqueue_script(
			'elementor-app-loader',
			$this->get_js_assets_url( 'app-loader' ),
			[
				'elementor-common',
			],
			ELEMENTOR_VERSION,
			true
		);

		$this->print_config( 'elementor-app-loader' );
	}

	public function __construct() {
		$this->add_component( 'site-editor', new Modules\SiteEditor\Module() );

		if ( current_user_can( 'manage_options' ) && Plugin::$instance->experiments->is_feature_active( 'e_import_export' ) || Utils::is_wp_cli() ) {
			$this->add_component( 'import-export', new Modules\ImportExport\Module() );

			// Kit library is depended on import-export
			$this->add_component( 'kit-library', new Modules\KitLibrary\Module() );
		}

		add_action( 'admin_menu', [ $this, 'register_admin_menu' ], 21 /* after Elementor page */ );

		// Happens after WP plugin page validation.
		add_filter( 'add_menu_classes', [ $this, 'fix_submenu' ] );

		if ( $this->is_current() ) {
			add_action( 'admin_init', [ $this, 'admin_init' ], 0 );
		} else {
			add_action( 'elementor/common/after_register_scripts', [ $this, 'enqueue_app_loader' ] );
		}
	}
}
core/role-manager/role-manager.php000064400000014447151327220420013137 0ustar00<?php
namespace Elementor\Core\RoleManager;

use Elementor\Settings_Page;
use Elementor\Settings;
use Elementor\Utils;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

class Role_Manager extends Settings_Page {

	const PAGE_ID = 'elementor-role-manager';

	const ROLE_MANAGER_OPTION_NAME = 'exclude_user_roles';

	/**
	 * @since 2.0.0
	 * @access public
	 */
	public function get_role_manager_options() {
		return get_option( 'elementor_' . self::ROLE_MANAGER_OPTION_NAME, [] );
	}

	/**
	 * @since 2.0.0
	 * @access protected
	 */
	protected function get_page_title() {
		return __( 'Role Manager', 'elementor' );
	}

	/**
	 * @since 2.0.0
	 * @access public
	 */
	public function register_admin_menu() {
		$sanitized_page_title = esc_html( $this->get_page_title() );

		add_submenu_page(
			Settings::PAGE_ID,
			$sanitized_page_title,
			$sanitized_page_title,
			'manage_options',
			self::PAGE_ID,
			[ $this, 'display_settings_page' ]
		);
	}

	/**
	 * @since 2.0.0
	 * @access protected
	 */
	protected function create_tabs() {
		$validation_class = 'Elementor\Settings_Validations';
		return [
			'general' => [
				'label' => esc_html__( 'General', 'elementor' ),
				'sections' => [
					'tools' => [
						'fields' => [
							'exclude_user_roles' => [
								'label' => esc_html__( 'Exclude Roles', 'elementor' ),
								'field_args' => [
									'type' => 'checkbox_list_roles',
									'exclude' => [ 'super_admin', 'administrator' ],
								],
								'setting_args' => [
									'sanitize_callback' => [ $validation_class, 'checkbox_list' ],
								],
							],
						],
					],
				],
			],
		];
	}

	/**
	 * @since 2.0.0
	 * @access public
	 */
	public function display_settings_page() {
		$this->get_tabs();
		?>
		<div class="wrap">
			<h1 class="wp-heading-inline"><?php echo esc_html( $this->get_page_title() ); ?></h1>

			<div id="elementor-role-manager">
				<h3><?php echo esc_html__( 'Manage What Your Users Can Edit In Elementor', 'elementor' ); ?></h3>
				<form id="elementor-settings-form" method="post" action="options.php">
					<?php
					settings_fields( static::PAGE_ID );
					echo '<div class="elementor-settings-form-page elementor-active">';
					foreach ( get_editable_roles() as $role_slug => $role_data ) {
						if ( 'administrator' === $role_slug ) {
							continue;
						}
						$this->display_role_controls( $role_slug, $role_data );
					}
					submit_button();
					?>
				</form>
			</div>
		</div><!-- /.wrap -->
		<?php
	}

	/**
	 * @since 2.0.0
	 * @access private
	 *
	 * @param string $role_slug The role slug.
	 * @param array  $role_data An array with role data.
	 */
	private function display_role_controls( $role_slug, $role_data ) {
		static $excluded_options = false;
		if ( false === $excluded_options ) {
			$excluded_options = $this->get_role_manager_options();
		}

		?>
		<div class="elementor-role-row <?php echo esc_attr( $role_slug ); ?>">
			<div class="elementor-role-label">
				<span class="elementor-role-name"><?php echo esc_html( $role_data['name'] ); ?></span>
				<span data-excluded-label="<?php esc_attr_e( 'Role Excluded', 'elementor' ); ?>" class="elementor-role-excluded-indicator"></span>
				<span class="elementor-role-toggle"><span class="dashicons dashicons-arrow-down"></span></span>
			</div>
			<div class="elementor-role-controls hidden">
				<div class="elementor-role-control">
					<label>
						<input type="checkbox" name="elementor_exclude_user_roles[]" value="<?php echo esc_attr( $role_slug ); ?>"<?php checked( in_array( $role_slug, $excluded_options, true ), true ); ?>>
						<?php echo esc_html__( 'No access to editor', 'elementor' ); ?>
					</label>
				</div>
				<div>
					<?php
					/**
					 * Role restrictions controls.
					 *
					 * Fires after the role manager checkbox that allows the user to
					 * exclude the role.
					 *
					 * This filter allows developers to add custom controls to the role
					 * manager.
					 *
					 * @since 2.0.0
					 *
					 * @param string $role_slug The role slug.
					 * @param array  $role_data An array with role data.
					 */
					do_action( 'elementor/role/restrictions/controls', $role_slug, $role_data );
					?>
				</div>
			</div>
		</div>
		<?php
	}

	/**
	 * @since 2.0.0
	 * @access public
	 */
	public function get_go_pro_link_html() {
		$pro_link = Utils::get_pro_link( 'https://elementor.com/pro/?utm_source=wp-role-manager&utm_campaign=gopro&utm_medium=wp-dash' );
		?>
		<div class="elementor-role-go-pro">
			<div class="elementor-role-go-pro__desc"><?php echo esc_html__( 'Want to give access only to content?', 'elementor' ); ?></div>
			<div class="elementor-role-go-pro__link"><a class="elementor-button elementor-button-default elementor-button-go-pro" target="_blank" href="<?php echo esc_url( $pro_link ); ?>"><?php echo esc_html__( 'Go Pro', 'elementor' ); ?></a></div>
		</div>
		<?php
	}

	/**
	 * @since 2.0.0
	 * @access public
	 */
	public function get_user_restrictions_array() {
		$user  = wp_get_current_user();
		$user_roles = $user->roles;
		$options = $this->get_user_restrictions();
		$restrictions = [];
		if ( empty( $options ) ) {
			return $restrictions;
		}

		foreach ( $user_roles as $role ) {
			if ( ! isset( $options[ $role ] ) ) {
				continue;
			}
			$restrictions = array_merge( $restrictions, $options[ $role ] );
		}
		return array_unique( $restrictions );
	}

	/**
	 * @since 2.0.0
	 * @access private
	 */
	private function get_user_restrictions() {
		static $restrictions = false;
		if ( ! $restrictions ) {
			$restrictions = [];

			/**
			 * Editor user restrictions.
			 *
			 * Filters the user restrictions in the editor.
			 *
			 * @since 2.0.0
			 *
			 * @param array $restrictions User restrictions.
			 */
			$restrictions = apply_filters( 'elementor/editor/user/restrictions', $restrictions );
		}
		return $restrictions;
	}

	/**
	 * @since 2.0.0
	 * @access public
	 *
	 * @param $capability
	 *
	 * @return bool
	 */
	public function user_can( $capability ) {
		$options = $this->get_user_restrictions_array();

		if ( in_array( $capability, $options, true ) ) {
			return false;
		}

		return true;
	}

	/**
	 * @since 2.0.0
	 * @access public
	 */
	public function __construct() {
		parent::__construct();

		add_action( 'admin_menu', [ $this, 'register_admin_menu' ], 100 );
		add_action( 'elementor/role/restrictions/controls', [ $this, 'get_go_pro_link_html' ] );
	}
}
core/upgrade/manager.php000064400000004055151327220420011250 0ustar00<?php
namespace Elementor\Core\Upgrade;

use Elementor\Core\Base\DB_Upgrades_Manager;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Manager extends DB_Upgrades_Manager {

	const INSTALLS_HISTORY_META = 'elementor_install_history';

	// todo: remove in future releases
	public function should_upgrade() {
		if ( ( 'elementor' === $this->get_plugin_name() ) && version_compare( get_option( $this->get_version_option_name() ), '2.4.2', '<' ) ) {
			delete_option( 'elementor_log' );
		}

		return parent::should_upgrade();
	}

	public function get_name() {
		return 'upgrade';
	}

	public function get_action() {
		return 'elementor_updater';
	}

	public function get_plugin_name() {
		return 'elementor';
	}

	public function get_plugin_label() {
		return esc_html__( 'Elementor', 'elementor' );
	}

	public function get_updater_label() {
		return esc_html__( 'Elementor Data Updater', 'elementor' );
	}

	public function get_new_version() {
		return ELEMENTOR_VERSION;
	}

	public function get_version_option_name() {
		return 'elementor_version';
	}

	public function get_upgrades_class() {
		return 'Elementor\Core\Upgrade\Upgrades';
	}

	public static function get_installs_history() {
		return get_option( self::INSTALLS_HISTORY_META, [] );
	}

	public static function install_compare( $version, $operator ) {
		$installs_history = self::get_installs_history();

		return version_compare( key( $installs_history ), $version, $operator );
	}

	protected function update_db_version() {
		parent::update_db_version();

		$installs_history = self::get_installs_history();

		$time = time();

		$installs_history[ ELEMENTOR_VERSION ] = $time;

		$old_version = $this->get_current_version();

		// If there was an old version of Elementor, and there's no record for that install yet
		if ( $old_version && empty( $installs_history[ $old_version ] ) ) {
			$installs_history[ $old_version ] = $installs_history[ ELEMENTOR_VERSION ] - 1;
		}

		uksort( $installs_history, 'version_compare' );

		update_option( self::INSTALLS_HISTORY_META, $installs_history );
	}
}
core/upgrade/elementor-3-re-migrate-globals.php000064400000011001151327220420015430 0ustar00<?php
namespace Elementor\Core\Upgrade;

use Elementor\Core\Common\Modules\Ajax\Module as Ajax;
use Elementor\Core\Settings\Manager as SettingsManager;
use Elementor\Core\Settings\Page\Manager as SettingsPageManager;
use Elementor\Plugin;
use Elementor\Tools;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Elementor_3_Re_Migrate_Globals {

	public function register_ajax_actions( Ajax $ajax ) {
		$ajax->register_ajax_action( 're_migrate_globals', [ $this, 'ajax_re_migrate_globals' ] );
	}

	public function ajax_re_migrate_globals() {
		$this->run();

		return true;
	}

	/**
	 * @deprecated 3.1.0
	 */
	public function admin_localize_settings() {
		Plugin::$instance->modules_manager->get_modules( 'dev-tools' )->deprecation->deprecated_function( __METHOD__, '3.1.0' );

		return [];
	}

	public function register_admin_tools_fields( Tools $tools ) {
		// Add the re-migrate button only if needed.
		if ( ! $this->has_typography() && ! $this->has_colors() && ! $this->has_saved_colors() ) {
			return;
		}

		// Add the button to the rollback screen.
		$tools->add_fields( 'versions', 'rollback', [
			're_migrate_globals_separator' => [
				'field_args' => [
					'type' => 'raw_html',
					'html' => '<hr>',
				],
			],
			're_migrate_globals' => [
				'label' => esc_html__( 'Rerun Update Script', 'elementor' ),
				'field_args' => [
					'type' => 'raw_html',
					'html' => sprintf(
						'<a href="#" data-nonce="%s" class="button elementor-button-spinner elementor-re-migrate-globals-button">%s</a>',
						wp_create_nonce( 'elementor_re_migrate_globals' ),
						__( 'Migrate to v3.0', 'elementor' )
					),
					'desc' => '<span style="color: red;">' . esc_html__( 'Warning: This will reset your current Global Fonts and Colors, and will migrate your previous settings from v2.x versions.', 'elementor' ) . '</span>',
				],
			],
		] );
	}

	private function run() {
		$this->notice( 'Re-migrate 3.0.0 globals: Start' );

		$callbacks = [];

		$kit = Plugin::$instance->kits_manager->get_active_kit();
		// Already exist. use raw settings that doesn't have default values.
		$meta_key = SettingsPageManager::META_KEY;
		$kit_raw_settings = $kit->get_meta( $meta_key );

		// Apply a default value for $kit_raw_settings in case it's not defined.
		if ( empty( $kit_raw_settings ) ) {
			$kit_raw_settings = [];
		}

		if ( $this->has_typography() ) {
			$callbacks[] = [ Upgrades::class, '_v_3_0_0_move_default_typography_to_kit' ];
			unset( $kit_raw_settings['system_typography'] );
		} else {
			$this->notice( 'Typography not found' );
		}

		if ( $this->has_colors() ) {
			$callbacks[] = [ Upgrades::class, '_v_3_0_0_move_default_colors_to_kit' ];
			unset( $kit_raw_settings['system_colors'] );
		} else {
			$this->notice( 'Colors not found' );
		}

		if ( $this->has_saved_colors() ) {
			$callbacks[] = [ Upgrades::class, '_v_3_0_0_move_saved_colors_to_kit' ];
			unset( $kit_raw_settings['custom_colors'] );
		} else {
			$this->notice( 'Saved Colors not found' );
		}

		if ( ! empty( $callbacks ) ) {
			$page_settings_manager = SettingsManager::get_settings_managers( 'page' );
			$page_settings_manager->save_settings( $kit_raw_settings, $active_kit_id );

			$this->run_callbacks( $callbacks );
		}

		Plugin::$instance->files_manager->clear_cache();

		$this->notice( 'Re-migrate 3.0.0 globals: End' );
	}

	private function run_callbacks( $callbacks ) {
		foreach ( $callbacks as $callback ) {
			$updater = $this->create_updater();

			$this->notice( 'Re-migrate 3.0.0 globals: ' . $callback[1] );

			// Run upgrade.
			call_user_func( $callback, $updater, false );
		}
	}

	/**
	 * @return Updater
	 */
	private function create_updater() {
		$upgrades_manager = new Manager();

		/** @var Updater $updater */
		$updater = $upgrades_manager->get_task_runner();

		$updater->set_current_item( [
			'iterate_num' => 1,
		] );

		return $updater;
	}

	private function has_typography() {
		return ! ! get_option( 'elementor_scheme_typography' );
	}

	private function has_colors() {
		return ! ! get_option( 'elementor_scheme_color' );
	}

	private function has_saved_colors() {
		return ! ! get_option( 'elementor_scheme_color-picker' );
	}

	private function notice( $message ) {
		$logger = Plugin::$instance->logger->get_logger();
		$logger->notice( $message );
	}

	public function __construct() {
		add_action( 'elementor/admin/after_create_settings/' . Tools::PAGE_ID, [ $this, 'register_admin_tools_fields' ], 60 /* After plugins rollback */ );
		add_action( 'elementor/ajax/register_actions', [ $this, 'register_ajax_actions' ] );

	}
}
core/upgrade/updater.php000064400000000753151327220420011303 0ustar00<?php

namespace Elementor\Core\Upgrade;

use Elementor\Core\Base\Background_Task;
use Elementor\Core\Base\DB_Upgrades_Manager;

defined( 'ABSPATH' ) || exit;

class Updater extends Background_Task {

	/**
	 * @var DB_Upgrades_Manager
	 */
	protected $manager;

	protected function format_callback_log( $item ) {
		return $this->manager->get_plugin_label() . '/Upgrades - ' . $item['callback'][1];
	}

	public function set_limit( $limit ) {
		$this->manager->set_query_limit( $limit );
	}
}
core/upgrade/upgrades.php000064400000064306151327220420011455 0ustar00<?php
namespace Elementor\Core\Upgrade;

use Elementor\Core\Breakpoints\Manager as Breakpoints_Manager;
use Elementor\Core\Experiments\Manager as Experiments_Manager;
use Elementor\Core\Settings\Manager as SettingsManager;
use Elementor\Core\Settings\Page\Manager as SettingsPageManager;
use Elementor\Icons_Manager;
use Elementor\Modules\Usage\Module;
use Elementor\Plugin;
use Elementor\Utils;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor upgrades.
 *
 * Elementor upgrades handler class is responsible for updating different
 * Elementor versions.
 *
 * @since 1.0.0
 */
class Upgrades {

	public static function _on_each_version( $updater ) {
		self::recalc_usage_data( $updater );

		$uploads_manager = Plugin::$instance->uploads_manager;

		$temp_dir = $uploads_manager->get_temp_dir();

		if ( file_exists( $temp_dir ) ) {
			$uploads_manager->remove_file_or_dir( $temp_dir );
		}
	}

	/**
	 * Upgrade Elementor 0.3.2
	 *
	 * Change the image widget link URL, setting is to `custom` link.
	 *
	 * @since 2.0.0
	 * @static
	 * @access public
	 */
	public static function _v_0_3_2() {
		global $wpdb;

		$post_ids = $wpdb->get_col(
			'SELECT `post_id` FROM `' . $wpdb->postmeta . '`
					WHERE `meta_key` = \'_elementor_version\'
						AND `meta_value` = \'0.1\';'
		);

		if ( empty( $post_ids ) ) {
			return;
		}

		foreach ( $post_ids as $post_id ) {
			$document = Plugin::$instance->documents->get( $post_id );

			if ( $document ) {
				$data = $document->get_elements_data();
			}

			if ( empty( $data ) ) {
				continue;
			}

			$data = Plugin::$instance->db->iterate_data( $data, function( $element ) {
				if ( empty( $element['widgetType'] ) || 'image' !== $element['widgetType'] ) {
					return $element;
				}

				if ( ! empty( $element['settings']['link']['url'] ) && ! isset( $element['settings']['link_to'] ) ) {
					$element['settings']['link_to'] = 'custom';
				}

				return $element;
			} );

			$document = Plugin::$instance->documents->get( $post_id );

			$document->save( [
				'elements' => $data,
			] );
		}
	}

	/**
	 * Upgrade Elementor 0.9.2
	 *
	 * Change the icon widget, icon-box widget and the social-icons widget,
	 * setting their icon padding size to an empty string.
	 *
	 * Change the image widget, setting the image size to full image size.
	 *
	 * @since 2.0.0
	 * @static
	 * @access public
	 */
	public static function _v_0_9_2() {
		global $wpdb;

		// Fix Icon/Icon Box Widgets padding.
		$post_ids = $wpdb->get_col(
			'SELECT `post_id` FROM `' . $wpdb->postmeta . '`
					WHERE `meta_key` = \'_elementor_version\'
						AND `meta_value` = \'0.2\';'
		);

		if ( empty( $post_ids ) ) {
			return;
		}

		foreach ( $post_ids as $post_id ) {
			$document = Plugin::$instance->documents->get( $post_id );

			if ( $document ) {
				$data = $document->get_elements_data();
			}

			if ( empty( $data ) ) {
				continue;
			}

			$data = Plugin::$instance->db->iterate_data( $data, function( $element ) {
				if ( empty( $element['widgetType'] ) ) {
					return $element;
				}

				if ( in_array( $element['widgetType'], [ 'icon', 'icon-box', 'social-icons' ] ) ) {
					if ( ! empty( $element['settings']['icon_padding']['size'] ) ) {
						$element['settings']['icon_padding']['size'] = '';
					}
				}

				if ( 'image' === $element['widgetType'] ) {
					if ( empty( $element['settings']['image_size'] ) ) {
						$element['settings']['image_size'] = 'full';
					}
				}

				return $element;
			} );

			$document = Plugin::$instance->documents->get( $post_id );

			$document->save( [
				'elements' => $data,
			] );
		}
	}

	/**
	 * Upgrade Elementor 0.11.0
	 *
	 * Change the button widget sizes, setting up new button sizes.
	 *
	 * @since 2.0.0
	 * @static
	 * @access public
	 */
	public static function _v_0_11_0() {
		global $wpdb;

		// Fix Button widget to new sizes options.
		$post_ids = $wpdb->get_col(
			'SELECT `post_id` FROM `' . $wpdb->postmeta . '`
					WHERE `meta_key` = \'_elementor_version\'
						AND `meta_value` = \'0.3\';'
		);

		if ( empty( $post_ids ) ) {
			return;
		}

		foreach ( $post_ids as $post_id ) {
			$document = Plugin::$instance->documents->get( $post_id );

			if ( $document ) {
				$data = $document->get_elements_data();
			}

			if ( empty( $data ) ) {
				continue;
			}

			$data = Plugin::$instance->db->iterate_data( $data, function( $element ) {
				if ( empty( $element['widgetType'] ) ) {
					return $element;
				}

				if ( 'button' === $element['widgetType'] ) {
					$size_to_replace = [
						'small' => 'xs',
						'medium' => 'sm',
						'large' => 'md',
						'xl' => 'lg',
						'xxl' => 'xl',
					];

					if ( ! empty( $element['settings']['size'] ) ) {
						$old_size = $element['settings']['size'];

						if ( isset( $size_to_replace[ $old_size ] ) ) {
							$element['settings']['size'] = $size_to_replace[ $old_size ];
						}
					}
				}

				return $element;
			} );

			$document = Plugin::$instance->documents->get( $post_id );

			$document->save( [
				'elements' => $data,
			] );
		}
	}

	/**
	 * Upgrade Elementor 2.0.0
	 *
	 * Fix post titles for old autosave drafts that saved with the format 'Auto Save 2018-03-18 17:24'.
	 *
	 * @static
	 * @since 2.0.0
	 * @access public
	 */
	public static function _v_2_0_0() {
		global $wpdb;

		$posts = $wpdb->get_results(
			'SELECT `ID`, `post_title`, `post_parent`
					FROM `' . $wpdb->posts . '` p
					LEFT JOIN `' . $wpdb->postmeta . '` m ON p.ID = m.post_id
					WHERE `post_status` = \'inherit\'
					AND `post_title` = CONCAT(\'Auto Save \', DATE_FORMAT(post_date, "%Y-%m-%d %H:%i"))
					AND  m.`meta_key` = \'_elementor_data\';'
		);

		if ( empty( $posts ) ) {
			return;
		}

		foreach ( $posts as $post ) {
			wp_update_post( [
				'ID' => $post->ID,
				'post_title' => get_the_title( $post->post_parent ),
			] );
		}
	}

	/**
	 * Upgrade Elementor 2.0.1
	 *
	 * Fix post titles for old autosave drafts that saved with the format 'Auto Save...'.
	 *
	 * @since 2.0.2
	 * @static
	 * @access public
	 */
	public static function _v_2_0_1() {
		global $wpdb;

		$posts = $wpdb->get_results(
			'SELECT `ID`, `post_title`, `post_parent`
					FROM `' . $wpdb->posts . '` p
					LEFT JOIN `' . $wpdb->postmeta . '` m ON p.ID = m.post_id
					WHERE `post_status` = \'inherit\'
					AND `post_title` REGEXP \'^Auto Save [0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}$\'
					AND  m.`meta_key` = \'_elementor_data\';'
		);

		if ( empty( $posts ) ) {
			return;
		}

		foreach ( $posts as $post ) {
			$parent = get_post( $post->post_parent );
			$title = isset( $parent->post_title ) ? $parent->post_title : '';

			wp_update_post( [
				'ID' => $post->ID,
				'post_title' => $title,
			] );
		}
	}

	/**
	 * Upgrade Elementor 2.0.10
	 *
	 * Fix post titles for old autosave drafts that saved with the format 'Auto Save...'.
	 * Fix also Translated titles.
	 *
	 * @since 2.0.10
	 * @static
	 * @access public
	 */
	public static function _v_2_0_10() {
		global $wpdb;

		$posts = $wpdb->get_results(
			'SELECT `ID`, `post_title`, `post_parent`
					FROM `' . $wpdb->posts . '` p
					LEFT JOIN `' . $wpdb->postmeta . '` m ON p.ID = m.post_id
					WHERE `post_status` = \'inherit\'
					AND `post_title` REGEXP \'[[:alnum:]]+ [[:alnum:]]+ [0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}$\'
					AND  m.`meta_key` = \'_elementor_data\';'
		);

		if ( empty( $posts ) ) {
			return;
		}

		foreach ( $posts as $post ) {
			$parent = get_post( $post->post_parent );
			$title = isset( $parent->post_title ) ? $parent->post_title : '';

			wp_update_post( [
				'ID' => $post->ID,
				'post_title' => $title,
			] );
		}
	}

	public static function _v_2_1_0() {
		global $wpdb;

		// upgrade `video` widget settings (merge providers).
		$post_ids = $wpdb->get_col(
			'SELECT `post_id` FROM `' . $wpdb->postmeta . '` WHERE `meta_key` = "_elementor_data" AND `meta_value` LIKE \'%"widgetType":"video"%\';'
		);

		if ( empty( $post_ids ) ) {
			return;
		}

		foreach ( $post_ids as $post_id ) {
			$do_update = false;
			$document = Plugin::$instance->documents->get( $post_id );

			if ( $document ) {
				$data = $document->get_elements_data();
			}

			if ( empty( $data ) ) {
				continue;
			}

			$data = Plugin::$instance->db->iterate_data( $data, function( $element ) use ( &$do_update ) {
				if ( empty( $element['widgetType'] ) || 'video' !== $element['widgetType'] ) {
					return $element;
				}

				$replacements = [];

				if ( empty( $element['settings']['video_type'] ) || 'youtube' === $element['settings']['video_type'] ) {
					$replacements = [
						'yt_autoplay' => 'autoplay',
						'yt_controls' => 'controls',
						'yt_mute' => 'mute',
						'yt_rel' => 'rel',
						'link' => 'youtube_url',
					];
				} elseif ( 'vimeo' === $element['settings']['video_type'] ) {
					$replacements = [
						'vimeo_autoplay' => 'autoplay',
						'vimeo_loop' => 'loop',
						'vimeo_color' => 'color',
						'vimeo_link' => 'vimeo_url',
					];
				}

				// cleanup old unused settings.
				unset( $element['settings']['yt_rel_videos'] );

				foreach ( $replacements as $old => $new ) {
					if ( ! empty( $element['settings'][ $old ] ) ) {
						$element['settings'][ $new ] = $element['settings'][ $old ];
						$do_update = true;
					}
				}

				return $element;
			} );

			// Only update if needed.
			if ( ! $do_update ) {
				continue;
			}

			// We need the `wp_slash` in order to avoid the unslashing during the `update_post_meta`
			$json_value = wp_slash( wp_json_encode( $data ) );

			update_metadata( 'post', $post_id, '_elementor_data', $json_value );

			// Clear WP cache for next step.
			wp_cache_flush();
		} // End foreach().
	}

	/**
	 * @param Updater $updater
	 *
	 * @return bool
	 */
	public static function _v_2_3_0_widget_image( $updater ) {
		global $wpdb;

		// upgrade `video` widget settings (merge providers).
		$post_ids = $updater->query_col(
			'SELECT `post_id` FROM `' . $wpdb->postmeta . '` WHERE `meta_key` = "_elementor_data" AND (
			`meta_value` LIKE \'%"widgetType":"image"%\'
			OR `meta_value` LIKE \'%"widgetType":"theme-post-featured-image"%\'
			OR `meta_value` LIKE \'%"widgetType":"theme-site-logo"%\'
			OR `meta_value` LIKE \'%"widgetType":"woocommerce-category-image"%\'
			);'
		);

		if ( empty( $post_ids ) ) {
			return false;
		}

		$widgets = [
			'image',
			'theme-post-featured-image',
			'theme-site-logo',
			'woocommerce-category-image',
		];

		foreach ( $post_ids as $post_id ) {
			// Clear WP cache for next step.
			wp_cache_flush();

			$do_update = false;

			$document = Plugin::$instance->documents->get( $post_id );

			if ( ! $document ) {
				continue;
			}

			$data = $document->get_elements_data();

			if ( empty( $data ) ) {
				continue;
			}

			$data = Plugin::$instance->db->iterate_data( $data, function( $element ) use ( &$do_update, $widgets ) {
				if ( empty( $element['widgetType'] ) || ! in_array( $element['widgetType'], $widgets ) ) {
					return $element;
				}

				if ( ! empty( $element['settings']['caption'] ) ) {
					if ( ! isset( $element['settings']['caption_source'] ) ) {
						$element['settings']['caption_source'] = 'custom';

						$do_update = true;
					}
				}

				return $element;
			} );

			// Only update if needed.
			if ( ! $do_update ) {
				continue;
			}

			// We need the `wp_slash` in order to avoid the unslashing during the `update_post_meta`
			$json_value = wp_slash( wp_json_encode( $data ) );

			update_metadata( 'post', $post_id, '_elementor_data', $json_value );
		} // End foreach().

		return $updater->should_run_again( $post_ids );
	}

	/**
	 * @param Updater $updater
	 *
	 * @return bool
	 */
	public static function _v_2_3_0_template_type( $updater ) {
		global $wpdb;

		$post_ids = $updater->query_col(
			'SELECT p.ID
					FROM `' . $wpdb->posts . '` AS p
					LEFT JOIN `' . $wpdb->postmeta . '` AS pm1 ON (p.ID = pm1.post_id)
					LEFT JOIN `' . $wpdb->postmeta . '` AS pm2 ON (pm1.post_id = pm2.post_id AND pm2.meta_key = "_elementor_template_type")
					WHERE p.post_status != "inherit" AND pm1.`meta_key` = "_elementor_data" AND pm2.post_id IS NULL;'
		);

		if ( empty( $post_ids ) ) {
			return false;
		}

		foreach ( $post_ids as $post_id ) {
			// Clear WP cache for next step.
			wp_cache_flush();

			$document = Plugin::$instance->documents->get( $post_id );

			if ( ! $document ) {
				continue;
			}

			$document->save_template_type();
		} // End foreach().

		return $updater->should_run_again( $post_ids );
	}

	/**
	 * Set FontAwesome Migration needed flag
	 */
	public static function _v_2_6_0_fa4_migration_flag() {
		add_option( 'elementor_icon_manager_needs_update', 'yes' );
		add_option( 'elementor_load_fa4_shim', 'yes' );
	}

	/**
	 * migrate Icon control string value to Icons control array value
	 *
	 * @param array $element
	 * @param array $args
	 *
	 * @return mixed
	 */
	public static function _migrate_icon_fa4_value( $element, $args ) {
		$widget_id = $args['widget_id'];

		if ( empty( $element['widgetType'] ) || $widget_id !== $element['widgetType'] ) {
			return $element;
		}
		foreach ( $args['control_ids'] as $old_name => $new_name ) {
			// exit if new value exists
			if ( isset( $element['settings'][ $new_name ] ) ) {
				continue;
			}

			// exit if no value to migrate
			if ( ! isset( $element['settings'][ $old_name ] ) ) {
				continue;
			}

			$element['settings'][ $new_name ] = Icons_Manager::fa4_to_fa5_value_migration( $element['settings'][ $old_name ] );
			$args['do_update'] = true;
		}
		return $element;
	}

	/**
	 * Set FontAwesome 5 value Migration on for button widget
	 *
	 * @param Updater $updater
	 */
	public static function _v_2_6_6_fa4_migration_button( $updater ) {
		$changes = [
			[
				'callback' => [ 'Elementor\Core\Upgrade\Upgrades', '_migrate_icon_fa4_value' ],
				'control_ids' => [
					'icon' => 'selected_icon',
				],
			],
		];
		Upgrade_Utils::_update_widget_settings( 'button', $updater, $changes );
		Upgrade_Utils::_update_widget_settings( 'icon-box', $updater, $changes );
	}

	/**
	 *  Update database to separate page from post.
	 *
	 * @param Updater $updater
	 *
	 * @param string $type
	 *
	 * @return bool
	 */
	public static function rename_document_base_to_wp( $updater, $type ) {
		global $wpdb;

		$post_ids = $updater->query_col( $wpdb->prepare(
			"SELECT p1.ID FROM {$wpdb->posts} AS p
					LEFT JOIN {$wpdb->posts} AS p1 ON (p.ID = p1.post_parent || p.ID = p1.ID)
					WHERE p.post_type = %s;", $type ) );

		if ( empty( $post_ids ) ) {
			return false;
		}

		$sql_post_ids = implode( ',', $post_ids );

		$wpdb->query( $wpdb->prepare(
			"UPDATE $wpdb->postmeta SET meta_value = %s
			WHERE meta_key = '_elementor_template_type' && post_id in ( %s );
		 ", 'wp-' . $type, $sql_post_ids ) );

		return $updater->should_run_again( $post_ids );
	}

	/**
	 *  Update database to separate page from post.
	 *
	 * @param Updater $updater
	 *
	 * @return bool
	 */
	// Because the query is slow on large sites, temporary don't upgrade.
	/*	public static function _v_2_7_0_rename_document_types_to_wp( $updater ) {
		return self::rename_document_base_to_wp( $updater, 'post' ) || self::rename_document_base_to_wp( $updater, 'page' );
	}*/

	// Upgrade code was fixed & moved to _v_2_7_1_remove_old_usage_data.
	/* public static function _v_2_7_0_remove_old_usage_data() {} */

	// Upgrade code moved to _v_2_7_1_recalc_usage_data.
	/* public static function _v_2_7_0_recalc_usage_data( $updater ) {} */

	/**
	 * Don't use the old data anymore.
	 * Since 2.7.1 the key was changed from `elementor_elements_usage` to `elementor_controls_usage`.
	 */
	public static function _v_2_7_1_remove_old_usage_data() {
		delete_option( 'elementor_elements_usage' );
		delete_post_meta_by_key( '_elementor_elements_usage' );
	}

	/**
	 * Recalc usage.
	 *
	 * @param Updater $updater
	 *
	 * @return bool
	 */
	public static function recalc_usage_data( $updater ) {
		/** @var Module $module */
		$module = Plugin::$instance->modules_manager->get_modules( 'usage' );

		$post_count = $module->recalc_usage( $updater->get_limit(), $updater->get_current_offset() );

		return ( $post_count === $updater->get_limit() );
	}

	public static function _v_2_7_1_recalc_usage_data( $updater ) {
		return self::recalc_usage_data( $updater );
	}

	public static function _v_2_8_3_recalc_usage_data( $updater ) {
		// Re-calc since older version(s) had invalid values.
		return self::recalc_usage_data( $updater );
	}

	/**
	 * Move general & lightbox settings to active kit and all it's revisions.
	 *
	 * @param Updater $updater
	 *
	 * @return bool
	 */
	public static function _v_3_0_0_move_general_settings_to_kit( $updater ) {
		$callback = function( $kit_id ) {
			$kit = Plugin::$instance->documents->get( $kit_id );

			if ( ! $kit ) {
				self::notice( 'Kit not found. nothing to do.' );
				return;
			}

			$meta_key = SettingsPageManager::META_KEY;
			$current_settings = get_option( '_elementor_general_settings', [] );
			// Take the `space_between_widgets` from the option due to a bug on E < 3.0.0 that the value `0` is stored separated.
			$current_settings['space_between_widgets'] = get_option( 'elementor_space_between_widgets', '' );
			$current_settings[ Breakpoints_Manager::BREAKPOINT_SETTING_PREFIX . 'md' ] = get_option( 'elementor_viewport_md', '' );
			$current_settings[ Breakpoints_Manager::BREAKPOINT_SETTING_PREFIX . 'lg' ] = get_option( 'elementor_viewport_lg', '' );

			$kit_settings = $kit->get_meta( $meta_key );

			// Already exist.
			if ( isset( $kit_settings['default_generic_fonts'] ) ) {
				self::notice( 'General Settings already exist. nothing to do.' );
				return;
			}

			if ( empty( $current_settings ) ) {
				self::notice( 'Current settings are empty. nothing to do.' );
				return;
			}

			if ( ! $kit_settings ) {
				$kit_settings = [];
			}

			// Convert some setting to Elementor slider format.
			$settings_to_slider = [
				'container_width',
				'space_between_widgets',
			];

			foreach ( $settings_to_slider as $setting ) {
				if ( isset( $current_settings[ $setting ] ) ) {
					$current_settings[ $setting ] = [
						'unit' => 'px',
						'size' => $current_settings[ $setting ],
					];
				}
			}

			$kit_settings = array_merge( $kit_settings, $current_settings );

			$page_settings_manager = SettingsManager::get_settings_managers( 'page' );
			$page_settings_manager->save_settings( $kit_settings, $kit_id );
		};

		return self::move_settings_to_kit( $callback, $updater );
	}

	/**
	 * Move default colors settings to active kit and all it's revisions.
	 *
	 * @param Updater $updater
	 *
	 * @return bool
	 */
	public static function _v_3_0_0_move_default_colors_to_kit( $updater, $include_revisions = true ) {
		$callback = function( $kit_id ) {
			if ( ! Plugin::$instance->kits_manager->is_custom_colors_enabled() ) {
				self::notice( 'System colors are disabled. nothing to do.' );
				return;
			}

			$kit = Plugin::$instance->documents->get( $kit_id );

			// Already exist. use raw settings that doesn't have default values.
			$meta_key = SettingsPageManager::META_KEY;
			$kit_raw_settings = $kit->get_meta( $meta_key );
			if ( isset( $kit_raw_settings['system_colors'] ) ) {
				self::notice( 'System colors already exist. nothing to do.' );
				return;
			}

			$scheme_obj = Plugin::$instance->schemes_manager->get_scheme( 'color' );

			$default_colors = $scheme_obj->get_scheme();

			$new_ids = [
				'primary',
				'secondary',
				'text',
				'accent',
			];

			foreach ( $default_colors as $index => $color ) {
				$kit->add_repeater_row( 'system_colors', [
					'_id' => $new_ids[ $index - 1 ], // $default_colors starts from 1.
					'title' => $color['title'],
					'color' => strtoupper( $color['value'] ),
				] );
			}
		};

		return self::move_settings_to_kit( $callback, $updater, $include_revisions );
	}

	/**
	 * Move saved colors settings to active kit and all it's revisions.
	 *
	 * @param Updater $updater
	 *
	 * @return bool
	 */
	public static function _v_3_0_0_move_saved_colors_to_kit( $updater, $include_revisions = true ) {
		$callback = function( $kit_id ) {
			$kit = Plugin::$instance->documents->get( $kit_id );

			// Already exist. use raw settings that doesn't have default values.
			$meta_key = SettingsPageManager::META_KEY;
			$kit_raw_settings = $kit->get_meta( $meta_key );
			if ( isset( $kit_raw_settings['custom_colors'] ) ) {
				self::notice( 'Custom colors already exist. nothing to do.' );
				return;
			}

			$system_colors_rows = $kit->get_settings( 'system_colors' );

			if ( ! $system_colors_rows ) {
				$system_colors_rows = [];
			}

			$system_colors = [];

			foreach ( $system_colors_rows as $color_row ) {
				$system_colors[] = strtoupper( $color_row['color'] );
			}

			$saved_scheme_obj = Plugin::$instance->schemes_manager->get_scheme( 'color-picker' );

			$current_saved_colors_rows = $saved_scheme_obj->get_scheme();

			$current_saved_colors = [];

			foreach ( $current_saved_colors_rows as $color_row ) {
				$current_saved_colors[] = strtoupper( $color_row['value'] );
			}

			$colors_to_save = array_diff( $current_saved_colors, $system_colors );

			if ( empty( $colors_to_save ) ) {
				self::notice( 'Saved colors not found. nothing to do.' );
				return;
			}

			foreach ( $colors_to_save as $index => $color ) {
				$kit->add_repeater_row( 'custom_colors', [
					'_id' => Utils::generate_random_string(),
					'title' => esc_html__( 'Saved Color', 'elementor' ) . ' #' . ( $index + 1 ),
					'color' => $color,
				] );
			}
		};

		return self::move_settings_to_kit( $callback, $updater, $include_revisions );
	}

	/**
	 * Move default typography settings to active kit and all it's revisions.
	 *
	 * @param Updater $updater
	 *
	 * @return bool
	 */
	public static function _v_3_0_0_move_default_typography_to_kit( $updater, $include_revisions = true ) {
		$callback = function( $kit_id ) {
			if ( ! Plugin::$instance->kits_manager->is_custom_typography_enabled() ) {
				self::notice( 'System typography is disabled. nothing to do.' );
				return;
			}

			$kit = Plugin::$instance->documents->get( $kit_id );

			// Already exist. use raw settings that doesn't have default values.
			$meta_key = SettingsPageManager::META_KEY;
			$kit_raw_settings = $kit->get_meta( $meta_key );
			if ( isset( $kit_raw_settings['system_typography'] ) ) {
				self::notice( 'System typography already exist. nothing to do.' );
				return;
			}

			$scheme_obj = Plugin::$instance->schemes_manager->get_scheme( 'typography' );

			$default_typography = $scheme_obj->get_scheme();

			$new_ids = [
				'primary',
				'secondary',
				'text',
				'accent',
			];

			foreach ( $default_typography as $index => $typography ) {
				$kit->add_repeater_row( 'system_typography', [
					'_id' => $new_ids[ $index - 1 ], // $default_typography starts from 1.
					'title' => $typography['title'],
					'typography_typography' => 'custom',
					'typography_font_family' => $typography['value']['font_family'],
					'typography_font_weight' => $typography['value']['font_weight'],
				] );
			}
		};

		return self::move_settings_to_kit( $callback, $updater, $include_revisions );
	}

	public static function v_3_1_0_move_optimized_dom_output_to_experiments() {
		$saved_option = get_option( 'elementor_optimized_dom_output' );

		if ( $saved_option ) {
			$new_option = 'enabled' === $saved_option ? Experiments_Manager::STATE_ACTIVE : Experiments_Manager::STATE_INACTIVE;

			add_option( 'elementor_experiment-e_dom_optimization', $new_option );
		}
	}

	public static function _v_3_2_0_migrate_breakpoints_to_new_system( $updater, $include_revisions = true ) {
		$callback = function( $kit_id ) {
			$kit = Plugin::$instance->documents->get( $kit_id );

			$kit_settings = $kit->get_meta( SettingsPageManager::META_KEY );

			if ( ! $kit_settings ) {
				// Nothing to upgrade.
				return;
			}

			$prefix = Breakpoints_Manager::BREAKPOINT_SETTING_PREFIX;
			$old_mobile_option_key = $prefix . 'md';
			$old_tablet_option_key = $prefix . 'lg';

			$breakpoint_values = [
				$old_mobile_option_key => Plugin::$instance->kits_manager->get_current_settings( $old_mobile_option_key ),
				$old_tablet_option_key => Plugin::$instance->kits_manager->get_current_settings( $old_tablet_option_key ),
			];

			// Breakpoint values are either a number, or an empty string (empty setting).
			array_walk( $breakpoint_values, function( &$breakpoint_value, $breakpoint_key ) {
				if ( $breakpoint_value ) {
					// If the saved breakpoint value is a number, 1px is reduced because the new breakpoints system is
					// based on max-width, as opposed to the old breakpoints system that worked based on min-width.
					$breakpoint_value--;
				}

				return $breakpoint_value;
			} );

			$kit_settings[ $prefix . Breakpoints_Manager::BREAKPOINT_KEY_MOBILE ] = $breakpoint_values[ $old_mobile_option_key ];
			$kit_settings[ $prefix . Breakpoints_Manager::BREAKPOINT_KEY_TABLET ] = $breakpoint_values[ $old_tablet_option_key ];

			$page_settings_manager = SettingsManager::get_settings_managers( 'page' );
			$page_settings_manager->save_settings( $kit_settings, $kit_id );
		};

		return self::move_settings_to_kit( $callback, $updater, $include_revisions );
	}

	public static function _v_3_4_8_fix_font_awesome_default_value_from_1_to_yes() {
		// if `Icons_Manager::LOAD_FA4_SHIM_OPTION_KEY` value is '1', then set it to `yes`.
		$load_fa4_shim_option = get_option( Icons_Manager::LOAD_FA4_SHIM_OPTION_KEY );

		if ( '1' === $load_fa4_shim_option ) {
			update_option( Icons_Manager::LOAD_FA4_SHIM_OPTION_KEY, 'yes' );
		}
	}

	/**
	 * @param callback $callback
	 * @param Updater  $updater
	 *
	 * @param bool     $include_revisions
	 *
	 * @return mixed
	 */
	private static function move_settings_to_kit( $callback, $updater, $include_revisions = true ) {
		$active_kit_id = Plugin::$instance->kits_manager->get_active_id();
		if ( ! $active_kit_id ) {
			self::notice( 'Active kit not found. nothing to do.' );
			return false;
		}

		$offset = $updater->get_current_offset();

		// On first iteration apply on active kit itself.
		// (don't include it with revisions in order to avoid offset/iteration count wrong numbers)
		if ( 0 === $offset ) {
			$callback( $active_kit_id );
		}

		if ( ! $include_revisions ) {
			return false;
		}

		$revisions_ids = wp_get_post_revisions( $active_kit_id, [
			'fields' => 'ids',
			'posts_per_page' => $updater->get_limit(),
			'offset' => $offset,
		] );

		foreach ( $revisions_ids as $revision_id ) {
			$callback( $revision_id );
		}

		return $updater->should_run_again( $revisions_ids );
	}

	private static function notice( $message ) {
		$logger = Plugin::$instance->logger->get_logger();
		$logger->notice( $message );
	}
}
core/upgrade/upgrade-utils.php000064400000003446151327220420012426 0ustar00<?php
namespace Elementor\Core\Upgrade;

use Elementor\Plugin;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Upgrade_Utils {

	/**
	 *  _update_widget_settings
	 *
	 * @param string $widget_id  widget type id
	 * @param Updater $updater   updater instance
	 * @param array $changes     array containing updating control_ids, callback and other data needed by the callback
	 *
	 * @return bool
	 */
	public static function _update_widget_settings( $widget_id, $updater, $changes ) {
		global $wpdb;

		$post_ids = $updater->query_col(
			'SELECT `post_id` 
					FROM `' . $wpdb->postmeta . '` 
					WHERE `meta_key` = "_elementor_data" 
					AND `meta_value` LIKE \'%"widgetType":"' . $widget_id . '"%\';'
		);

		if ( empty( $post_ids ) ) {
			return false;
		}

		foreach ( $post_ids as $post_id ) {
			$do_update = false;

			$document = Plugin::instance()->documents->get( $post_id );

			if ( ! $document ) {
				continue;
			}

			$data = $document->get_elements_data();

			if ( empty( $data ) ) {
				continue;
			}

			// loop thru callbacks & array
			foreach ( $changes as $change ) {
				$args = [
					'do_update' => &$do_update,
					'widget_id' => $widget_id,
					'control_ids' => $change['control_ids'],
				];

				if ( isset( $change['prefix'] ) ) {
					$args['prefix'] = $change['prefix'];
					$args['new_id'] = $change['new_id'];
				}

				$data = Plugin::instance()->db->iterate_data( $data, $change['callback'], $args );
				if ( ! $do_update ) {
					continue;
				}

				// We need the `wp_slash` in order to avoid the unslashing during the `update_metadata`
				$json_value = wp_slash( wp_json_encode( $data ) );

				update_metadata( 'post', $post_id, '_elementor_data', $json_value );
			}
		} // End foreach().

		return $updater->should_run_again( $post_ids );
	}
}
core/experiments/manager.php000064400000042401151327220420012161 0ustar00<?php

namespace Elementor\Core\Experiments;

use Elementor\Core\Base\Base_Object;
use Elementor\Core\Upgrade\Manager as Upgrade_Manager;
use Elementor\Plugin;
use Elementor\Settings;
use Elementor\Tracker;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Manager extends Base_Object {

	const RELEASE_STATUS_DEV = 'dev';

	const RELEASE_STATUS_ALPHA = 'alpha';

	const RELEASE_STATUS_BETA = 'beta';

	const RELEASE_STATUS_RC = 'rc';

	const RELEASE_STATUS_STABLE = 'stable';

	const STATE_DEFAULT = 'default';

	const STATE_ACTIVE = 'active';

	const STATE_INACTIVE = 'inactive';

	private $states;

	private $release_statuses;

	private $features;

	/**
	 * Add Feature
	 *
	 * @since 3.1.0
	 * @access public
	 *
	 * @param array $options {
	 *     @type string $name
	 *     @type string $title
	 *     @type string $description
	 *     @type string $release_status
	 *     @type string $default
	 *     @type callable $on_state_change
	 * }
	 *
	 * @return array|null
	 */
	public function add_feature( array $options ) {
		if ( isset( $this->features[ $options['name'] ] ) ) {
			return null;
		}

		$default_experimental_data = [
			'description' => '',
			'release_status' => self::RELEASE_STATUS_ALPHA,
			'default' => self::STATE_INACTIVE,
			'new_site' => [
				'default_active' => false,
				'always_active' => false,
				'minimum_installation_version' => null,
			],
			'on_state_change' => null,
		];

		$allowed_options = [ 'name', 'title', 'description', 'release_status', 'default', 'new_site', 'on_state_change' ];

		$experimental_data = $this->merge_properties( $default_experimental_data, $options, $allowed_options );

		$new_site = $experimental_data['new_site'];

		$feature_is_mutable = true;

		if ( $new_site['default_active'] || $new_site['always_active'] ) {
			$is_new_installation = Upgrade_Manager::install_compare( $new_site['minimum_installation_version'], '>=' );

			if ( $is_new_installation ) {
				if ( $new_site['always_active'] ) {
					$experimental_data['state'] = self::STATE_ACTIVE;

					$feature_is_mutable = false;
				} elseif ( $new_site['default_active'] ) {
					$experimental_data['default'] = self::STATE_ACTIVE;
				}
			}
		}

		$experimental_data['mutable'] = $feature_is_mutable;

		if ( $feature_is_mutable ) {
			$state = $this->get_saved_feature_state( $options['name'] );

			if ( ! $state ) {
				$state = self::STATE_DEFAULT;
			}

			$experimental_data['state'] = $state;
		}

		$this->features[ $options['name'] ] = $experimental_data;

		if ( $feature_is_mutable && is_admin() ) {
			$feature_option_key = $this->get_feature_option_key( $options['name'] );

			$on_state_change_callback = function( $old_state, $new_state ) use ( $experimental_data ) {
				$this->on_feature_state_change( $experimental_data, $new_state );
			};

			add_action( 'add_option_' . $feature_option_key, $on_state_change_callback, 10, 2 );
			add_action( 'update_option_' . $feature_option_key, $on_state_change_callback, 10, 2 );
		}

		do_action( 'elementor/experiments/feature-registered', $this, $experimental_data );

		return $experimental_data;
	}

	/**
	 * Remove Feature
	 *
	 * @since 3.1.0
	 * @access public
	 *
	 * @param string $feature_name
	 */
	public function remove_feature( $feature_name ) {
		unset( $this->features[ $feature_name ] );
	}

	/**
	 * Get Features
	 *
	 * @since 3.1.0
	 * @access public
	 *
	 * @param string $feature_name Optional. Default is null
	 *
	 * @return array|null
	 */
	public function get_features( $feature_name = null ) {
		return self::get_items( $this->features, $feature_name );
	}

	/**
	 * Get Active Features
	 *
	 * @since 3.1.0
	 * @access public
	 *
	 * @return array
	 */
	public function get_active_features() {
		return array_filter( $this->features, [ $this, 'is_feature_active' ], ARRAY_FILTER_USE_KEY );
	}

	/**
	 * Is Feature Active
	 *
	 * @since 3.1.0
	 * @access public
	 *
	 * @param string $feature_name
	 *
	 * @return bool
	 */
	public function is_feature_active( $feature_name ) {
		$feature = $this->get_features( $feature_name );

		if ( ! $feature ) {
			return false;
		}

		return self::STATE_ACTIVE === $this->get_feature_actual_state( $feature );
	}

	/**
	 * Set Feature Default State
	 *
	 * @since 3.1.0
	 * @access public
	 *
	 * @param string $feature_name
	 * @param int $default_state
	 */
	public function set_feature_default_state( $feature_name, $default_state ) {
		$feature = $this->get_features( $feature_name );

		if ( ! $feature ) {
			return;
		}

		$this->features[ $feature_name ]['default'] = $default_state;
	}

	/**
	 * Get Feature Option Key
	 *
	 * @since 3.1.0
	 * @access private
	 *
	 * @param string $feature_name
	 *
	 * @return string
	 */
	private function get_feature_option_key( $feature_name ) {
		return 'elementor_experiment-' . $feature_name;
	}

	private function add_default_features() {
		$this->add_feature( [
			'name' => 'e_dom_optimization',
			'title' => esc_html__( 'Optimized DOM Output', 'elementor' ),
			'description' => esc_html__( 'Developers, Please Note! This experiment includes some markup changes. If you\'ve used custom code in Elementor, you might have experienced a snippet of code not running. Turning this experiment off allows you to keep prior Elementor markup output settings, and have that lovely code running again.', 'elementor' )
				. ' <a href="https://go.elementor.com/wp-dash-legacy-optimized-dom" target="_blank">'
				. esc_html__( 'Learn More', 'elementor' ) . '</a>',
			'release_status' => self::RELEASE_STATUS_BETA,
			'new_site' => [
				'default_active' => true,
				'minimum_installation_version' => '3.1.0-beta',
			],
		] );

		$this->add_feature( [
			'name' => 'e_optimized_assets_loading',
			'title' => esc_html__( 'Improved Asset Loading', 'elementor' ),
			'description' => esc_html__( 'Please Note! The "Improved Asset Loading" mode reduces the amount of code that is loaded on the page by default. When activated, parts of the infrastructure code will be loaded dynamically, only when needed. Keep in mind that activating this experiment may cause conflicts with incompatible plugins.', 'elementor' )
				. ' <a href="https://go.elementor.com/wp-dash-improved-asset-loading/" target="_blank">'
				. esc_html__( 'Learn More', 'elementor' ) . '</a>',
			'release_status' => self::RELEASE_STATUS_ALPHA,
		] );

		$this->add_feature( [
			'name' => 'e_optimized_css_loading',
			'title' => esc_html__( 'Improved CSS Loading', 'elementor' ),
			'description' => esc_html__( 'Please Note! The “Improved CSS Loading” mode reduces the amount of CSS code that is loaded on the page by default. When activated, the CSS code will be loaded, rather inline or in a dedicated file, only when needed. Activating this experiment may cause conflicts with incompatible plugins.', 'elementor' )
				. ' <a href="https://go.elementor.com/wp-dash-improved-css-loading/" target="_blank">'
				. esc_html__( 'Learn More', 'elementor' ) . '</a>',
			'release_status' => self::RELEASE_STATUS_ALPHA,
		] );

		$this->add_feature( [
			'name' => 'e_font_icon_svg',
			'title' => esc_html__( 'Font-Awesome Inline', 'elementor' ),
			'description' => esc_html__( 'The "Font-Awesome Inline" will render the Font-Awesome icons as inline SVG without loading the Font-Awesome library and its related CSS files and fonts.', 'elementor' )
				. ' <a href="https://go.elementor.com/wp-dash-inline-font-awesome/" target="_blank">'
				. esc_html__( 'Learn More', 'elementor' ) . '</a>',
			'release_status' => self::RELEASE_STATUS_ALPHA,
		] );

		$this->add_feature( [
			'name' => 'a11y_improvements',
			'title' => esc_html__( 'Accessibility Improvements', 'elementor' ),
			'description' => esc_html__( 'An array of accessibility enhancements in Elementor pages.', 'elementor' )
				. '<br><strong>' . esc_html__( 'Please note!', 'elementor' ) . '</strong> ' . esc_html__( 'These enhancements may include some markup changes to existing elementor widgets', 'elementor' )
				. ' <a href="https://go.elementor.com/wp-dash-a11y-improvements" target="_blank">'
				. esc_html__( 'Learn More', 'elementor' ) . '</a>',
			'release_status' => self::RELEASE_STATUS_BETA,
			'new_site' => [
				'default_active' => true,
				'minimum_installation_version' => '3.1.0-beta',
			],
		] );

		$this->add_feature( [
			'name' => 'e_import_export',
			'title' => esc_html__( 'Import Export Template Kit', 'elementor' ),
			'description' => esc_html__( 'Design sites faster with a template kit that contains some or all components of a complete site, like templates, content & site settings.', 'elementor' )
				. '<br>'
				. esc_html__( 'You can import a kit and apply it to your site, or export the elements from this site to be used anywhere else.', 'elementor' ),
			'release_status' => self::RELEASE_STATUS_BETA,
			'default' => self::STATE_ACTIVE,
		] );

		$this->add_feature( [
			'name' => 'additional_custom_breakpoints',
			'title' => esc_html__( 'Additional Custom Breakpoints', 'elementor' ),
			'description' => esc_html__( 'Get pixel-perfect design for every screen size. You can now add up to 6 customizable breakpoints beyond the default desktop setting: mobile, mobile extra, tablet, tablet extra, laptop, and widescreen.', 'elementor' )
							. '<br /><strong>' . esc_html__( 'Please note! Conditioning controls on values of responsive controls is not supported when this mode is active.', 'elementor' ) . '</strong>'
				. ' <a href="https://go.elementor.com/wp-dash-additional-custom-breakpoints/" target="_blank">'
				. esc_html__( 'Learn More', 'elementor' ) . '</a>',
			'release_status' => self::RELEASE_STATUS_BETA,
			'new_site' => [
				'default_active' => true,
				'minimum_installation_version' => '3.4.0-beta',
			],
		] );
	}

	/**
	 * Init States
	 *
	 * @since 3.1.0
	 * @access private
	 */
	private function init_states() {
		$this->states = [
			self::STATE_DEFAULT => esc_html__( 'Default', 'elementor' ),
			self::STATE_ACTIVE => esc_html__( 'Active', 'elementor' ),
			self::STATE_INACTIVE => esc_html__( 'Inactive', 'elementor' ),
		];
	}

	/**
	 * Init Statuses
	 *
	 * @since 3.1.0
	 * @access private
	 */
	private function init_release_statuses() {
		$this->release_statuses = [
			self::RELEASE_STATUS_DEV => esc_html__( 'Development', 'elementor' ),
			self::RELEASE_STATUS_ALPHA => esc_html__( 'Alpha', 'elementor' ),
			self::RELEASE_STATUS_BETA => esc_html__( 'Beta', 'elementor' ),
			self::RELEASE_STATUS_RC => esc_html__( 'Release Candidate', 'elementor' ),
			self::RELEASE_STATUS_STABLE => esc_html__( 'Stable', 'elementor' ),
		];
	}

	/**
	 * Init Features
	 *
	 * @since 3.1.0
	 * @access private
	 */
	private function init_features() {
		$this->features = [];

		$this->add_default_features();

		do_action( 'elementor/experiments/default-features-registered', $this );
	}

	/**
	 * Register Settings Fields
	 *
	 * @param Settings $settings
	 *
	 * @since 3.1.0
	 * @access private
	 *
	 */
	private function register_settings_fields( Settings $settings ) {
		$features = $this->get_features();

		$fields = [];

		foreach ( $features as $feature_name => $feature ) {
			if ( ! $feature['mutable'] ) {
				unset( $features[ $feature_name ] );

				continue;
			}

			$feature_key = 'experiment-' . $feature_name;

			$fields[ $feature_key ]['label'] = $this->get_feature_settings_label_html( $feature );

			$fields[ $feature_key ]['field_args'] = $feature;

			$fields[ $feature_key ]['render'] = function( $feature ) {
				$this->render_feature_settings_field( $feature );
			};
		}

		if ( ! $features ) {
			$fields['no_features'] = [
				'label' => esc_html__( 'No available experiments', 'elementor' ),
				'field_args' => [
					'type' => 'raw_html',
					'html' => esc_html__( 'The current version of Elementor doesn\'t have any experimental features . if you\'re feeling curious make sure to come back in future versions.', 'elementor' ),
				],
			];
		}

		if ( ! Tracker::is_allow_track() ) {
			$fields += $settings->get_usage_fields();
		}

		$settings->add_tab(
			'experiments', [
				'label' => esc_html__( 'Experiments', 'elementor' ),
				'sections' => [
					'experiments' => [
						'callback' => function() {
							$this->render_settings_intro();
						},
						'fields' => $fields,
					],
				],
			]
		);
	}

	/**
	 * Render Settings Intro
	 *
	 * @since 3.1.0
	 * @access private
	 */
	private function render_settings_intro() {
		?>
		<h2><?php echo esc_html__( 'Experiments', 'elementor' ); ?></h2>
		<p>
			<?php
				printf(
					/* translators: %1$s Link open tag, %2$s: Link close tag. */
					esc_html__( 'Access new and experimental features from Elementor before they\'re officially released. As these features are still in development, they are likely to change, evolve or even be removed altogether. %1$sLearn More.%2$s', 'elementor' ),
					'<a href="https://go.elementor.com/wp-dash-experiments/" target="_blank">',
					'</a>'
				);
			?>
		</p>
		<p><?php echo esc_html__( 'To use an experiment on your site, simply click on the dropdown next to it and switch to Active. You can always deactivate them at any time.', 'elementor' ); ?></p>
		<p>
			<?php
				printf(
					/* translators: %1$s Link open tag, %2$s: Link close tag. */
					esc_html__( 'Your feedback is important - %1$shelp us%2$s improve these features by sharing your thoughts and inputs.', 'elementor' ),
					'<a href="https://go.elementor.com/wp-dash-experiments-report-an-issue/" target="_blank">',
					'</a>'
				);
			?>
		</p>
		<?php
	}

	/**
	 * Render Feature Settings Field
	 *
	 * @since 3.1.0
	 * @access private
	 *
	 * @param array $feature
	 */
	private function render_feature_settings_field( array $feature ) {
		?>
		<div class="e-experiment__content">
			<select id="e-experiment-<?php echo $feature['name']; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>" class="e-experiment__select" name="<?php echo $this->get_feature_option_key( $feature['name'] ); ?>">
				<?php foreach ( $this->states as $state_key => $state_title ) { ?>
					<option value="<?php echo $state_key; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>" <?php selected( $state_key, $feature['state'] ); ?>><?php echo $state_title; ?></option>
				<?php } ?>
			</select>
			<p class="description"><?php echo $feature['description']; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?></p>
			<div class="e-experiment__status"><?php echo sprintf( esc_html__( 'Status: %s', 'elementor' ), $this->release_statuses[ $feature['release_status'] ] );  // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?></div>
		</div>
		<?php
	}

	/**
	 * Get Feature Settings Label HTML
	 *
	 * @since 3.1.0
	 * @access private
	 *
	 * @param array $feature
	 *
	 * @return string
	 */
	private function get_feature_settings_label_html( array $feature ) {
		ob_start();

		$is_feature_active = $this->is_feature_active( $feature['name'] );

		$indicator_classes = 'e-experiment__title__indicator';

		if ( $is_feature_active ) {
			$indicator_classes .= ' e-experiment__title__indicator--active';
		}

		if ( self::STATE_DEFAULT === $feature['state'] ) {
			$indicator_tooltip = $is_feature_active ? esc_html__( 'Active by default', 'elementor' ) : esc_html__( 'Inactive by default', 'elementor' );
		} else {
			$indicator_tooltip = self::STATE_ACTIVE === $feature['state'] ? esc_html__( 'Active', 'elementor' ) : esc_html__( 'Inactive', 'elementor' );
		}
		?>
		<div class="e-experiment__title">
			<div class="<?php echo $indicator_classes; ?>" data-tooltip="<?php echo $indicator_tooltip; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>"></div>
			<label class="e-experiment__title__label" for="e-experiment-<?php echo $feature['name']; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>"><?php echo $feature['title']; ?></label>
		</div>
		<?php

		return ob_get_clean();
	}

	/**
	 * Get Feature Settings Label HTML
	 *
	 * @since 3.1.0
	 * @access private
	 *
	 * @param string $feature_name
	 *
	 * @return int
	 */
	private function get_saved_feature_state( $feature_name ) {
		return get_option( $this->get_feature_option_key( $feature_name ) );
	}

	/**
	 * Get Feature Actual State
	 *
	 * @since 3.1.0
	 * @access private
	 *
	 * @param array $feature
	 *
	 * @return string
	 */
	private function get_feature_actual_state( array $feature ) {
		if ( self::STATE_DEFAULT !== $feature['state'] ) {
			return $feature['state'];
		}

		return $feature['default'];
	}

	/**
	 * On Feature State Change
	 *
	 * @since 3.1.0
	 * @access private
	 *
	 * @param array $old_feature_data
	 * @param string $new_state
	 */
	private function on_feature_state_change( array $old_feature_data, $new_state ) {
		$this->features[ $old_feature_data['name'] ]['state'] = $new_state;

		$new_feature_data = $this->get_features( $old_feature_data['name'] );

		$actual_old_state = $this->get_feature_actual_state( $old_feature_data );

		$actual_new_state = $this->get_feature_actual_state( $new_feature_data );

		if ( $actual_old_state === $actual_new_state ) {
			return;
		}

		Plugin::$instance->files_manager->clear_cache();

		if ( $new_feature_data['on_state_change'] ) {
			$new_feature_data['on_state_change']( $actual_old_state, $actual_new_state );
		}
	}

	public function __construct() {
		$this->init_states();

		$this->init_release_statuses();

		$this->init_features();

		if ( is_admin() ) {
			$page_id = Settings::PAGE_ID;

			add_action( "elementor/admin/after_create_settings/{$page_id}", function( Settings $settings ) {
				$this->register_settings_fields( $settings );
			}, 11 );
		}
	}
}
core/editor/editor.php000064400000060540151327220420010764 0ustar00<?php
namespace Elementor\Core\Editor;

use Elementor\Api;
use Elementor\Core\Breakpoints\Breakpoint;
use Elementor\Core\Breakpoints\Manager as Breakpoints_Manager;
use Elementor\Core\Common\Modules\Ajax\Module;
use Elementor\Core\Common\Modules\Ajax\Module as Ajax;
use Elementor\Core\Debug\Loading_Inspection_Manager;
use Elementor\Core\Files\Assets\Files_Upload_Handler;
use Elementor\Core\Schemes\Manager as Schemes_Manager;
use Elementor\Core\Settings\Manager as SettingsManager;
use Elementor\Icons_Manager;
use Elementor\Plugin;
use Elementor\Settings;
use Elementor\Shapes;
use Elementor\TemplateLibrary\Source_Local;
use Elementor\Tools;
use Elementor\User;
use Elementor\Utils;
use Elementor\Core\Editor\Data;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor editor.
 *
 * Elementor editor handler class is responsible for initializing Elementor
 * editor and register all the actions needed to display the editor.
 *
 * @since 1.0.0
 */
class Editor {

	/**
	 * The nonce key for Elementor editor.
	 * @deprecated 2.3.0
	 */
	const EDITING_NONCE_KEY = 'elementor-editing';

	/**
	 * User capability required to access Elementor editor.
	 */
	const EDITING_CAPABILITY = 'edit_posts';

	/**
	 * Post ID.
	 *
	 * Holds the ID of the current post being edited.
	 *
	 * @since 1.0.0
	 * @access private
	 *
	 * @var int Post ID.
	 */
	private $post_id;

	/**
	 * Whether the edit mode is active.
	 *
	 * Used to determine whether we are in edit mode.
	 *
	 * @since 1.0.0
	 * @access private
	 *
	 * @var bool Whether the edit mode is active.
	 */
	private $is_edit_mode;

	/**
	 * @var Notice_Bar
	 */
	public $notice_bar;

	/**
	 * Init.
	 *
	 * Initialize Elementor editor. Registers all needed actions to run Elementor,
	 * removes conflicting actions etc.
	 *
	 * Fired by `admin_action_elementor` action.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param bool $die Optional. Whether to die at the end. Default is `true`.
	 */
	public function init( $die = true ) {
		if ( empty( $_REQUEST['post'] ) ) {
			return;
		}

		$this->set_post_id( absint( $_REQUEST['post'] ) );

		if ( ! $this->is_edit_mode( $this->post_id ) ) {
			return;
		}

		// BC: From 2.9.0, the editor shouldn't handle the global post / current document.
		// Use requested id and not the global in order to avoid conflicts with plugins that changes the global post.
		query_posts( [
			'p' => $this->post_id,
			'post_type' => get_post_type( $this->post_id ),
		] );

		Plugin::$instance->db->switch_to_post( $this->post_id );

		$document = Plugin::$instance->documents->get( $this->post_id );

		Plugin::$instance->documents->switch_to_document( $document );

		// Change mode to Builder
		$document->set_is_built_with_elementor( true );

		// End BC.

		Loading_Inspection_Manager::instance()->register_inspections();

		// Send MIME Type header like WP admin-header.
		@header( 'Content-Type: ' . get_option( 'html_type' ) . '; charset=' . get_option( 'blog_charset' ) );

		add_filter( 'show_admin_bar', '__return_false' );

		// Remove all WordPress actions
		remove_all_actions( 'wp_head' );
		remove_all_actions( 'wp_print_styles' );
		remove_all_actions( 'wp_print_head_scripts' );
		remove_all_actions( 'wp_footer' );

		// Handle `wp_head`
		add_action( 'wp_head', 'wp_enqueue_scripts', 1 );
		add_action( 'wp_head', 'wp_print_styles', 8 );
		add_action( 'wp_head', 'wp_print_head_scripts', 9 );
		add_action( 'wp_head', 'wp_site_icon' );
		add_action( 'wp_head', [ $this, 'editor_head_trigger' ], 30 );

		// Handle `wp_footer`
		add_action( 'wp_footer', 'wp_print_footer_scripts', 20 );
		add_action( 'wp_footer', 'wp_auth_check_html', 30 );
		add_action( 'wp_footer', [ $this, 'wp_footer' ] );

		// Handle `wp_enqueue_scripts`
		remove_all_actions( 'wp_enqueue_scripts' );

		// Also remove all scripts hooked into after_wp_tiny_mce.
		remove_all_actions( 'after_wp_tiny_mce' );

		add_action( 'wp_enqueue_scripts', [ $this, 'enqueue_scripts' ], 999999 );
		add_action( 'wp_enqueue_scripts', [ $this, 'enqueue_styles' ], 999999 );

		// Setup default heartbeat options
		add_filter( 'heartbeat_settings', function( $settings ) {
			$settings['interval'] = 15;
			return $settings;
		} );

		// Tell to WP Cache plugins do not cache this request.
		Utils::do_not_cache();

		do_action( 'elementor/editor/init' );

		$this->print_editor_template();

		// From the action it's an empty string, from tests its `false`
		if ( false !== $die ) {
			die;
		}
	}

	/**
	 * Retrieve post ID.
	 *
	 * Get the ID of the current post.
	 *
	 * @since 1.8.0
	 * @access public
	 *
	 * @return int Post ID.
	 */
	public function get_post_id() {
		return $this->post_id;
	}

	/**
	 * Redirect to new URL.
	 *
	 * Used as a fallback function for the old URL structure of Elementor page
	 * edit URL.
	 *
	 * Fired by `template_redirect` action.
	 *
	 * @since 1.6.0
	 * @access public
	 */
	public function redirect_to_new_url() {
		if ( ! isset( $_GET['elementor'] ) ) {
			return;
		}

		$document = Plugin::$instance->documents->get( get_the_ID() );

		if ( ! $document ) {
			wp_die( esc_html__( 'Document not found.', 'elementor' ) );
		}

		if ( ! $document->is_editable_by_current_user() || ! $document->is_built_with_elementor() ) {
			return;
		}

		wp_safe_redirect( $document->get_edit_url() );
		die;
	}

	/**
	 * Whether the edit mode is active.
	 *
	 * Used to determine whether we are in the edit mode.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param int $post_id Optional. Post ID. Default is `null`, the current
	 *                     post ID.
	 *
	 * @return bool Whether the edit mode is active.
	 */
	public function is_edit_mode( $post_id = null ) {
		if ( null !== $this->is_edit_mode ) {
			return $this->is_edit_mode;
		}

		if ( empty( $post_id ) ) {
			$post_id = $this->post_id;
		}

		$document = Plugin::$instance->documents->get( $post_id );

		if ( ! $document || ! $document->is_editable_by_current_user() ) {
			return false;
		}

		/** @var Module ajax */
		$ajax_data = Plugin::$instance->common->get_component( 'ajax' )->get_current_action_data();

		if ( ! empty( $ajax_data ) && 'get_document_config' === $ajax_data['action'] ) {
			return true;
		}

		// Ajax request as Editor mode
		$actions = [
			'elementor',

			// Templates
			'elementor_get_templates',
			'elementor_save_template',
			'elementor_get_template',
			'elementor_delete_template',
			'elementor_import_template',
			'elementor_library_direct_actions',
		];

		if ( isset( $_REQUEST['action'] ) && in_array( $_REQUEST['action'], $actions ) ) {
			return true;
		}

		return false;
	}

	/**
	 * Lock post.
	 *
	 * Mark the post as currently being edited by the current user.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param int $post_id The ID of the post being edited.
	 */
	public function lock_post( $post_id ) {
		if ( ! function_exists( 'wp_set_post_lock' ) ) {
			require_once ABSPATH . 'wp-admin/includes/post.php';
		}

		wp_set_post_lock( $post_id );
	}

	/**
	 * Get locked user.
	 *
	 * Check what user is currently editing the post.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param int $post_id The ID of the post being edited.
	 *
	 * @return \WP_User|false User information or false if the post is not locked.
	 */
	public function get_locked_user( $post_id ) {
		if ( ! function_exists( 'wp_check_post_lock' ) ) {
			require_once ABSPATH . 'wp-admin/includes/post.php';
		}

		$locked_user = wp_check_post_lock( $post_id );
		if ( ! $locked_user ) {
			return false;
		}

		return get_user_by( 'id', $locked_user );
	}

	/**
	 * Print Editor Template.
	 *
	 * Include the wrapper template of the editor.
	 *
	 * @since 2.2.0
	 * @access public
	 */
	public function print_editor_template() {
		include ELEMENTOR_PATH . 'includes/editor-templates/editor-wrapper.php';
	}

	/**
	 * Enqueue scripts.
	 *
	 * Registers all the editor scripts and enqueues them.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function enqueue_scripts() {
		remove_action( 'wp_enqueue_scripts', [ $this, __FUNCTION__ ], 999999 );

		global $wp_styles, $wp_scripts;

		$plugin = Plugin::$instance;

		// Reset global variable
		$wp_styles = new \WP_Styles(); // phpcs:ignore WordPress.WP.GlobalVariablesOverride.Prohibited
		$wp_scripts = new \WP_Scripts(); // phpcs:ignore WordPress.WP.GlobalVariablesOverride.Prohibited

		$suffix = ( defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG || defined( 'ELEMENTOR_TESTS' ) && ELEMENTOR_TESTS ) ? '' : '.min';

		wp_register_script(
			'elementor-editor-modules',
			ELEMENTOR_ASSETS_URL . 'js/editor-modules' . $suffix . '.js',
			[
				'elementor-common-modules',
			],
			ELEMENTOR_VERSION,
			true
		);

		wp_register_script(
			'elementor-editor-document',
			ELEMENTOR_ASSETS_URL . 'js/editor-document' . $suffix . '.js',
			[
				'elementor-common-modules',
			],
			ELEMENTOR_VERSION,
			true
		);
		// Hack for waypoint with editor mode.
		wp_register_script(
			'elementor-waypoints',
			ELEMENTOR_ASSETS_URL . 'lib/waypoints/waypoints-for-editor.js',
			[
				'jquery',
			],
			'4.0.2',
			true
		);

		wp_register_script(
			'perfect-scrollbar',
			ELEMENTOR_ASSETS_URL . 'lib/perfect-scrollbar/js/perfect-scrollbar' . $suffix . '.js',
			[],
			'1.4.0',
			true
		);

		wp_register_script(
			'jquery-easing',
			ELEMENTOR_ASSETS_URL . 'lib/jquery-easing/jquery-easing' . $suffix . '.js',
			[
				'jquery',
			],
			'1.3.2',
			true
		);

		wp_register_script(
			'nprogress',
			ELEMENTOR_ASSETS_URL . 'lib/nprogress/nprogress' . $suffix . '.js',
			[],
			'0.2.0',
			true
		);

		wp_register_script(
			'tipsy',
			ELEMENTOR_ASSETS_URL . 'lib/tipsy/tipsy' . $suffix . '.js',
			[
				'jquery',
			],
			'1.0.0',
			true
		);

		wp_register_script(
			'jquery-elementor-select2',
			ELEMENTOR_ASSETS_URL . 'lib/e-select2/js/e-select2.full' . $suffix . '.js',
			[
				'jquery',
			],
			'4.0.6-rc.1',
			true
		);

		wp_register_script(
			'flatpickr',
			ELEMENTOR_ASSETS_URL . 'lib/flatpickr/flatpickr' . $suffix . '.js',
			[
				'jquery',
			],
			'1.12.0',
			true
		);

		wp_register_script(
			'ace',
			'https://cdnjs.cloudflare.com/ajax/libs/ace/1.2.5/ace.js',
			[],
			'1.2.5',
			true
		);

		wp_register_script(
			'ace-language-tools',
			'https://cdnjs.cloudflare.com/ajax/libs/ace/1.2.5/ext-language_tools.js',
			[
				'ace',
			],
			'1.2.5',
			true
		);

		wp_register_script(
			'jquery-hover-intent',
			ELEMENTOR_ASSETS_URL . 'lib/jquery-hover-intent/jquery-hover-intent' . $suffix . '.js',
			[],
			'1.0.0',
			true
		);

		wp_register_script(
			'nouislider',
			ELEMENTOR_ASSETS_URL . 'lib/nouislider/nouislider' . $suffix . '.js',
			[],
			'13.0.0',
			true
		);

		wp_register_script(
			'pickr',
			ELEMENTOR_ASSETS_URL . 'lib/pickr/pickr.min.js',
			[],
			'1.5.0',
			true
		);

		wp_register_script(
			'elementor-editor',
			ELEMENTOR_ASSETS_URL . 'js/editor' . $suffix . '.js',
			[
				'elementor-common',
				'elementor-editor-modules',
				'elementor-editor-document',
				'wp-auth-check',
				'jquery-ui-sortable',
				'jquery-ui-resizable',
				'perfect-scrollbar',
				'nprogress',
				'tipsy',
				'imagesloaded',
				'heartbeat',
				'jquery-elementor-select2',
				'flatpickr',
				'ace',
				'ace-language-tools',
				'jquery-hover-intent',
				'nouislider',
				'pickr',
				'react',
				'react-dom',
			],
			ELEMENTOR_VERSION,
			true
		);

		/**
		 * Before editor enqueue scripts.
		 *
		 * Fires before Elementor editor scripts are enqueued.
		 *
		 * @since 1.0.0
		 */
		do_action( 'elementor/editor/before_enqueue_scripts' );

		// Tweak for WP Admin menu icons
		wp_print_styles( 'editor-buttons' );

		$settings = SettingsManager::get_settings_managers_config();
		// Moved to document since 2.9.0.
		unset( $settings['page'] );

		$document = Plugin::$instance->documents->get_doc_or_auto_save( $this->post_id );
		$kits_manager = Plugin::$instance->kits_manager;

		$page_title_selector = $kits_manager->get_current_settings( 'page_title_selector' );

		$page_title_selector .= ', .elementor-page-title .elementor-heading-title';

		$config = [
			'initial_document' => $document->get_config(),
			'version' => ELEMENTOR_VERSION,
			'home_url' => home_url(),
			'admin_settings_url' => admin_url( 'admin.php?page=' . Settings::PAGE_ID ),
			'admin_tools_url' => admin_url( 'admin.php?page=' . Tools::PAGE_ID ),
			'autosave_interval' => AUTOSAVE_INTERVAL,
			'tabs' => $plugin->controls_manager->get_tabs(),
			'controls' => $plugin->controls_manager->get_controls_data(),
			'elements' => $plugin->elements_manager->get_element_types_config(),
			'schemes' => [
				'items' => $plugin->schemes_manager->get_registered_schemes_data(),
				'enabled_schemes' => Schemes_Manager::get_enabled_schemes(),
			],
			'globals' => [
				'defaults_enabled' => [
					'colors' => $kits_manager->is_custom_colors_enabled(),
					'typography' => $kits_manager->is_custom_typography_enabled(),
				],
			],
			'icons' => [
				'libraries' => Icons_Manager::get_icon_manager_tabs_config(),
				'goProURL' => Utils::get_pro_link( 'https://elementor.com/pro/?utm_source=icon-library&utm_campaign=gopro&utm_medium=wp-dash' ),
			],
			'filesUpload' => [
				'unfilteredFiles' => Files_Upload_Handler::is_enabled(),
			],
			'fa4_to_fa5_mapping_url' => ELEMENTOR_ASSETS_URL . 'lib/font-awesome/migration/mapping.js',
			'default_schemes' => $plugin->schemes_manager->get_schemes_defaults(),
			'settings' => $settings,
			'system_schemes' => $plugin->schemes_manager->get_system_schemes(),
			'wp_editor' => $this->get_wp_editor_config(),
			'settings_page_link' => Settings::get_url(),
			'tools_page_link' => Tools::get_url(),
			'elementor_site' => 'https://go.elementor.com/about-elementor/',
			'docs_elementor_site' => 'https://go.elementor.com/docs/',
			'help_the_content_url' => 'https://go.elementor.com/the-content-missing/',
			'help_flexbox_bc_url' => 'https://go.elementor.com/flexbox-layout-bc/',
			'elementPromotionURL' => 'https://go.elementor.com/go-pro-%s',
			'dynamicPromotionURL' => 'https://go.elementor.com/go-pro-dynamic-tag',
			'additional_shapes' => Shapes::get_additional_shapes_for_config(),
			'user' => [
				'restrictions' => $plugin->role_manager->get_user_restrictions_array(),
				'is_administrator' => current_user_can( 'manage_options' ),
				'introduction' => User::get_introduction_meta(),
			],
			'preview' => [
				'help_preview_error_url' => 'https://go.elementor.com/preview-not-loaded/',
				'help_preview_http_error_url' => 'https://go.elementor.com/preview-not-loaded/#permissions',
				'help_preview_http_error_500_url' => 'https://go.elementor.com/500-error/',
				'debug_data' => Loading_Inspection_Manager::instance()->run_inspections(),
			],
			'locale' => get_locale(),
			'rich_editing_enabled' => filter_var( get_user_meta( get_current_user_id(), 'rich_editing', true ), FILTER_VALIDATE_BOOLEAN ),
			'page_title_selector' => $page_title_selector,
			'tinymceHasCustomConfig' => class_exists( 'Tinymce_Advanced' ) || class_exists( 'Advanced_Editor_Tools' ),
			'inlineEditing' => Plugin::$instance->widgets_manager->get_inline_editing_config(),
			'dynamicTags' => Plugin::$instance->dynamic_tags->get_config(),
			'ui' => [
				'darkModeStylesheetURL' => ELEMENTOR_ASSETS_URL . 'css/editor-dark-mode' . $suffix . '.css',
				'defaultGenericFonts' => $kits_manager->get_current_settings( 'default_generic_fonts' ),
			],
			// Empty array for BC to avoid errors.
			'i18n' => [],
			// 'responsive' contains the custom breakpoints config introduced in Elementor v3.2.0
			'responsive' => [
				'breakpoints' => Plugin::$instance->breakpoints->get_breakpoints_config(),
				'icons_map' => Plugin::$instance->breakpoints->get_responsive_icons_classes_map(),
			],
		];

		if ( ! Utils::has_pro() && current_user_can( 'manage_options' ) ) {
			$config['promotionWidgets'] = Api::get_promotion_widgets();
		}

		$this->bc_move_document_filters();

		/**
		 * Localize editor settings.
		 *
		 * Filters the editor localized settings.
		 *
		 * @since 1.0.0
		 *
		 * @param array $config  Editor configuration.
		 * @param int   $post_id The ID of the current post being edited.
		 */
		$config = apply_filters( 'elementor/editor/localize_settings', $config );

		Utils::print_js_config( 'elementor-editor', 'ElementorConfig', $config );

		wp_enqueue_script( 'elementor-editor' );

		wp_set_script_translations( 'elementor-editor', 'elementor' );

		$plugin->controls_manager->enqueue_control_scripts();

		/**
		 * After editor enqueue scripts.
		 *
		 * Fires after Elementor editor scripts are enqueued.
		 *
		 * @since 1.0.0
		 */
		do_action( 'elementor/editor/after_enqueue_scripts' );
	}

	/**
	 * Enqueue styles.
	 *
	 * Registers all the editor styles and enqueues them.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function enqueue_styles() {
		/**
		 * Before editor enqueue styles.
		 *
		 * Fires before Elementor editor styles are enqueued.
		 *
		 * @since 1.0.0
		 */
		do_action( 'elementor/editor/before_enqueue_styles' );

		$suffix = Utils::is_script_debug() ? '' : '.min';

		$direction_suffix = is_rtl() ? '-rtl' : '';

		wp_register_style(
			'font-awesome',
			ELEMENTOR_ASSETS_URL . 'lib/font-awesome/css/font-awesome' . $suffix . '.css',
			[],
			'4.7.0'
		);

		wp_register_style(
			'elementor-select2',
			ELEMENTOR_ASSETS_URL . 'lib/e-select2/css/e-select2' . $suffix . '.css',
			[],
			'4.0.6-rc.1'
		);

		wp_register_style(
			'google-font-roboto',
			'https://fonts.googleapis.com/css?family=Roboto:300,400,500,700',
			[],
			ELEMENTOR_VERSION
		);

		wp_register_style(
			'flatpickr',
			ELEMENTOR_ASSETS_URL . 'lib/flatpickr/flatpickr' . $suffix . '.css',
			[],
			'1.12.0'
		);

		wp_register_style(
			'pickr',
			ELEMENTOR_ASSETS_URL . 'lib/pickr/themes/monolith.min.css',
			[],
			'1.5.0'
		);

		wp_register_style(
			'elementor-editor',
			ELEMENTOR_ASSETS_URL . 'css/editor' . $direction_suffix . $suffix . '.css',
			[
				'elementor-common',
				'elementor-select2',
				'elementor-icons',
				'wp-auth-check',
				'google-font-roboto',
				'flatpickr',
				'pickr',
			],
			ELEMENTOR_VERSION
		);

		wp_enqueue_style( 'elementor-editor' );

		$ui_theme = SettingsManager::get_settings_managers( 'editorPreferences' )->get_model()->get_settings( 'ui_theme' );

		if ( 'light' !== $ui_theme ) {
			$ui_theme_media_queries = 'all';

			if ( 'auto' === $ui_theme ) {
				$ui_theme_media_queries = '(prefers-color-scheme: dark)';
			}

			wp_enqueue_style(
				'elementor-editor-dark-mode',
				ELEMENTOR_ASSETS_URL . 'css/editor-dark-mode' . $suffix . '.css',
				[
					'elementor-editor',
				],
				ELEMENTOR_VERSION,
				$ui_theme_media_queries
			);
		}

		$breakpoints = Plugin::$instance->breakpoints->get_breakpoints();

		// The two breakpoints under 'tablet' need to be checked for values.
		if ( $breakpoints[ Breakpoints_Manager::BREAKPOINT_KEY_MOBILE ]->is_custom() || $breakpoints[ Breakpoints_Manager::BREAKPOINT_KEY_MOBILE_EXTRA ]->is_enabled() ) {
			wp_add_inline_style(
				'elementor-editor',
				'.elementor-device-tablet #elementor-preview-responsive-wrapper { width: ' . Plugin::$instance->breakpoints->get_device_min_breakpoint( Breakpoints_Manager::BREAKPOINT_KEY_TABLET ) . 'px; }'
			);
		}

		/**
		 * After editor enqueue styles.
		 *
		 * Fires after Elementor editor styles are enqueued.
		 *
		 * @since 1.0.0
		 */
		do_action( 'elementor/editor/after_enqueue_styles' );
	}

	/**
	 * Get WordPress editor config.
	 *
	 * Config the default WordPress editor with custom settings for Elementor use.
	 *
	 * @since 1.9.0
	 * @access private
	 */
	private function get_wp_editor_config() {
		// Remove all TinyMCE plugins.
		remove_all_filters( 'mce_buttons', 10 );
		remove_all_filters( 'mce_external_plugins', 10 );

		if ( ! class_exists( '\_WP_Editors', false ) ) {
			require ABSPATH . WPINC . '/class-wp-editor.php';
		}

		// WordPress 4.8 and higher
		if ( method_exists( '\_WP_Editors', 'print_tinymce_scripts' ) ) {
			\_WP_Editors::print_default_editor_scripts();
			\_WP_Editors::print_tinymce_scripts();
		}
		ob_start();

		wp_editor(
			'%%EDITORCONTENT%%',
			'elementorwpeditor',
			[
				'editor_class' => 'elementor-wp-editor',
				'editor_height' => 250,
				'drag_drop_upload' => true,
			]
		);

		$config = ob_get_clean();

		// Don't call \_WP_Editors methods again
		remove_action( 'admin_print_footer_scripts', [ '_WP_Editors', 'editor_js' ], 50 );
		remove_action( 'admin_print_footer_scripts', [ '_WP_Editors', 'print_default_editor_scripts' ], 45 );

		\_WP_Editors::editor_js();

		return $config;
	}

	/**
	 * Editor head trigger.
	 *
	 * Fires the 'elementor/editor/wp_head' action in the head tag in Elementor
	 * editor.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function editor_head_trigger() {
		/**
		 * Elementor editor head.
		 *
		 * Fires on Elementor editor head tag.
		 *
		 * Used to prints scripts or any other data in the head tag.
		 *
		 * @since 1.0.0
		 */
		do_action( 'elementor/editor/wp_head' );
	}

	/**
	 * WP footer.
	 *
	 * Prints Elementor editor with all the editor templates, and render controls,
	 * widgets and content elements.
	 *
	 * Fired by `wp_footer` action.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function wp_footer() {
		$plugin = Plugin::$instance;

		$plugin->controls_manager->render_controls();
		$plugin->widgets_manager->render_widgets_content();
		$plugin->elements_manager->render_elements_content();

		$plugin->schemes_manager->print_schemes_templates();

		$plugin->dynamic_tags->print_templates();

		$this->init_editor_templates();

		/**
		 * Elementor editor footer.
		 *
		 * Fires on Elementor editor before closing the body tag.
		 *
		 * Used to prints scripts or any other HTML before closing the body tag.
		 *
		 * @since 1.0.0
		 */
		do_action( 'elementor/editor/footer' );
	}

	/**
	 * Set edit mode.
	 *
	 * Used to update the edit mode.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param bool $edit_mode Whether the edit mode is active.
	 */
	public function set_edit_mode( $edit_mode ) {
		$this->is_edit_mode = $edit_mode;
	}

	/**
	 * Editor constructor.
	 *
	 * Initializing Elementor editor and redirect from old URL structure of
	 * Elementor editor.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function __construct() {
		Plugin::$instance->data_manager->register_controller( Data\Globals\Controller::class );

		$this->notice_bar = new Notice_Bar();

		add_action( 'admin_action_elementor', [ $this, 'init' ] );
		add_action( 'template_redirect', [ $this, 'redirect_to_new_url' ] );

		// Handle autocomplete feature for URL control.
		add_filter( 'wp_link_query_args', [ $this, 'filter_wp_link_query_args' ] );
		add_filter( 'wp_link_query', [ $this, 'filter_wp_link_query' ] );
	}

	/**
	 * @since 2.2.0
	 * @access public
	 */
	public function filter_wp_link_query_args( $query ) {
		$library_cpt_key = array_search( Source_Local::CPT, $query['post_type'], true );
		if ( false !== $library_cpt_key ) {
			unset( $query['post_type'][ $library_cpt_key ] );
		}

		return $query;
	}

	/**
	 * @since 2.2.0
	 * @access public
	 */
	public function filter_wp_link_query( $results ) {

		// PHPCS - The user data is not used.
		if ( isset( $_POST['editor'] ) && 'elementor' === $_POST['editor'] ) {  // phpcs:ignore WordPress.Security.NonceVerification.Missing
			$post_type_object = get_post_type_object( 'post' );
			$post_label = $post_type_object->labels->singular_name;

			foreach ( $results as & $result ) {
				if ( 'post' === get_post_type( $result['ID'] ) ) {
					$result['info'] = $post_label;
				}
			}
		}

		return $results;
	}

	/**
	 * Init editor templates.
	 *
	 * Initialize default elementor templates used in the editor panel.
	 *
	 * @since 1.7.0
	 * @access private
	 */
	private function init_editor_templates() {
		$template_names = [
			'global',
			'panel',
			'panel-elements',
			'repeater',
			'templates',
			'navigator',
			'hotkeys',
			'responsive-bar',
		];

		foreach ( $template_names as $template_name ) {
			Plugin::$instance->common->add_template( ELEMENTOR_PATH . "includes/editor-templates/$template_name.php" );
		}
	}

	private function bc_move_document_filters() {
		global $wp_filter;

		$old_tag = 'elementor/editor/localize_settings';
		$new_tag = 'elementor/document/config';

		if ( ! has_filter( $old_tag ) ) {
			return;
		}

		foreach ( $wp_filter[ $old_tag ] as $priority => $filters ) {
			foreach ( $filters as $filter_id => $filter_args ) {
				if ( 2 === $filter_args['accepted_args'] ) {
					remove_filter( $old_tag, $filter_id, $priority );

					add_filter( $new_tag, $filter_args['function'], $priority, 2 );

					// TODO: Hard deprecation
					// _deprecated_hook( '`' . $old_tag . ` is no longer using post_id', '2.9.0', $new_tag' );
				}
			}
		}
	}

	public function set_post_id( $post_id ) {
		$this->post_id = $post_id;
	}
}
core/editor/notice-bar.php000064400000003444151327220420011521 0ustar00<?php
namespace Elementor\Core\Editor;

use Elementor\Core\Base\Base_Object;
use Elementor\Core\Common\Modules\Ajax\Module as Ajax;
use Elementor\Plugin;
use Elementor\Utils;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Notice_Bar extends Base_Object {

	protected function get_init_settings() {
		if ( Plugin::$instance->get_install_time() > strtotime( '-30 days' ) ) {
			return [];
		}

		return [
			'muted_period' => 90,
			'option_key' => '_elementor_editor_upgrade_notice_dismissed',
			'message' => sprintf(
				/* translators: 1: Link open tag, 2: Link close tag. */
				esc_html__( 'Love using Elementor? %1$sLearn how you can build better sites with Elementor Pro.%2$s', 'elementor' ),
				'<a href="%s">',
				'</a>'
			),
			'action_title' => esc_html__( 'Go Pro', 'elementor' ),
			'action_url' => Utils::get_pro_link( 'https://elementor.com/pro/?utm_source=editor-notice-bar&utm_campaign=gopro&utm_medium=wp-dash' ),
		];
	}

	final public function get_notice() {
		if ( ! current_user_can( 'manage_options' ) ) {
			return null;
		}

		$settings = $this->get_settings();

		if ( empty( $settings['option_key'] ) ) {
			return null;
		}

		$dismissed_time = get_option( $settings['option_key'] );

		if ( $dismissed_time ) {
			if ( $dismissed_time > strtotime( '-' . $settings['muted_period'] . ' days' ) ) {
				return null;
			}

			$this->set_notice_dismissed();
		}

		return $settings;
	}

	public function __construct() {
		add_action( 'elementor/ajax/register_actions', [ $this, 'register_ajax_actions' ] );
	}

	public function set_notice_dismissed() {
		update_option( $this->get_settings( 'option_key' ), time() );
	}

	public function register_ajax_actions( Ajax $ajax ) {
		$ajax->register_ajax_action( 'notice_bar_dismiss', [ $this, 'set_notice_dismissed' ] );
	}
}
core/editor/data/globals/endpoints/index.php000064400000000700151327220420015134 0ustar00<?php
namespace Elementor\Core\Editor\Data\Globals\Endpoints;

use Elementor\Data\Base\Endpoint;

// TODO: Create base class for index endpoints, and move this function to there.
class Index extends Endpoint {
	public function get_name() {
		return 'index'; // TODO: Replace with BaseIndex class.
	}

	public function get_items( $request ) {
		return $this->controller->get_items_recursive( [ $this ] ); // TODO: Replace with BaseIndex class.
	}
}
core/editor/data/globals/endpoints/base.php000064400000002707151327220420014750 0ustar00<?php
namespace Elementor\Core\Editor\Data\Globals\Endpoints;

use Elementor\Data\Base\Endpoint;
use Elementor\Plugin;
use Elementor\Core\Utils\Exceptions;

abstract class Base extends Endpoint {
	public static function get_format() {
		return '{id}';
	}

	protected function register() {
		parent::register();

		$this->register_item_route();
		$this->register_item_route( \WP_REST_Server::CREATABLE );
		$this->register_item_route( \WP_REST_Server::DELETABLE );
	}

	public function get_items( $request ) {
		return $this->get_kit_items();
	}

	public function get_item( $id, $request ) {
		$items = $this->get_kit_items();

		if ( ! isset( $items[ $id ] ) ) {
			return new \WP_Error(
				'global_not_found',
				__( 'The Global value you are trying to use is not available.', 'elementor' ),
				[ 'status' => Exceptions::NOT_FOUND ]
			);
		}

		return $items[ $id ];
	}

	public function create_item( $id, $request ) {
		$item = $request->get_body_params();

		if ( ! isset( $item['title'] ) ) {
			return new \WP_Error( 'invalid_title', 'Invalid title' );
		}

		$kit = Plugin::$instance->kits_manager->get_active_kit();

		$item['id'] = $id;

		$db_item = $this->convert_db_format( $item );

		$kit->add_repeater_row( 'custom_' . $this->get_name(), $db_item );

		return $item;
	}

	abstract protected function get_kit_items();

	/**
	 * @param array $item frontend format.
	 * @return array backend format.
	 */
	abstract protected function convert_db_format( $item );
}
core/editor/data/globals/endpoints/colors.php000064400000001673151327220420015340 0ustar00<?php
namespace Elementor\Core\Editor\Data\Globals\Endpoints;

use Elementor\Plugin;

class Colors extends Base {
	public function get_name() {
		return 'colors';
	}

	protected function get_kit_items() {
		$result = [];
		$kit = Plugin::$instance->kits_manager->get_active_kit_for_frontend();

		$system_items = $kit->get_settings_for_display( 'system_colors' );
		$custom_items = $kit->get_settings_for_display( 'custom_colors' );

		if ( ! $system_items ) {
			$system_items = [];
		}

		if ( ! $custom_items ) {
			$custom_items = [];
		}

		$items = array_merge( $system_items, $custom_items );

		foreach ( $items as $index => $item ) {
			$id = $item['_id'];
			$result[ $id ] = [
				'id' => $id,
				'title' => $item['title'],
				'value' => $item['color'],
			];
		}

		return $result;
	}

	protected function convert_db_format( $item ) {
		return [
			'_id' => $item['id'],
			'title' => $item['title'],
			'color' => $item['value'],
		];
	}
}
core/editor/data/globals/endpoints/typography.php000064400000003013151327220420016233 0ustar00<?php
namespace Elementor\Core\Editor\Data\Globals\Endpoints;

use Elementor\Plugin;

class Typography extends Base {
	public function get_name() {
		return 'typography';
	}

	protected function get_kit_items() {
		$result = [];

		$kit = Plugin::$instance->kits_manager->get_active_kit_for_frontend();

		// Use raw settings that doesn't have default values.
		$kit_raw_settings = $kit->get_data( 'settings' );

		if ( isset( $kit_raw_settings['system_typography'] ) ) {
			$system_items = $kit_raw_settings['system_typography'];
		} else {
			// Get default items, but without empty defaults.
			$control = $kit->get_controls( 'system_typography' );
			$system_items = $control['default'];
		}

		$custom_items = $kit->get_settings( 'custom_typography' );

		if ( ! $custom_items ) {
			$custom_items = [];
		}

		$items = array_merge( $system_items, $custom_items );

		foreach ( $items as $index => &$item ) {
			foreach ( $item as $setting => $value ) {
				$new_setting = str_replace( 'styles_', '', $setting, $count );
				if ( $count ) {
					$item[ $new_setting ] = $value;
					unset( $item[ $setting ] );
				}
			}

			$id = $item['_id'];

			$result[ $id ] = [
				'title' => $item['title'],
				'id' => $id,
			];

			unset( $item['_id'], $item['title'] );

			$result[ $id ]['value'] = $item;
		}

		return $result;
	}

	protected function convert_db_format( $item ) {
		$db_format = [
			'_id' => $item['id'],
			'title' => $item['title'],
		];

		$db_format = array_merge( $item['value'], $db_format );

		return $db_format;
	}
}
core/editor/data/globals/controller.php000064400000001427151327220420014214 0ustar00<?php
namespace Elementor\Core\Editor\Data\Globals;

use Elementor\Data\Base\Controller as Controller_Base;
use Elementor\Plugin;

class Controller extends Controller_Base {
	public function get_name() {
		return 'globals';
	}

	public function register_endpoints() {
		$this->register_endpoint( Endpoints\Colors::class );
		$this->register_endpoint( Endpoints\Typography::class );
	}

	protected function register_internal_endpoints() {
		$this->register_endpoint( Endpoints\Index::class );
	}

	public function get_permission_callback( $request ) {
		// Allow internal get global values. (e.g render global.css for a visitor)
		if ( 'GET' === $request->get_method() && Plugin::$instance->data_manager->is_internal() ) {
			return true;
		}

		return current_user_can( 'edit_posts' );
	}
}
license.txt000064400000104513151327220420006731 0ustar00                    GNU GENERAL PUBLIC LICENSE
                       Version 3, 29 June 2007

 Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
 Everyone is permitted to copy and distribute verbatim copies
 of this license document, but changing it is not allowed.

                            Preamble

  The GNU General Public License is a free, copyleft license for
software and other kinds of works.

  The licenses for most software and other practical works are designed
to take away your freedom to share and change the works.  By contrast,
the GNU General Public License is intended to guarantee your freedom to
share and change all versions of a program--to make sure it remains free
software for all its users.  We, the Free Software Foundation, use the
GNU General Public License for most of our software; it applies also to
any other work released this way by its authors.  You can apply it to
your programs, too.

  When we speak of free software, we are referring to freedom, not
price.  Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
them if you wish), that you receive source code or can get it if you
want it, that you can change the software or use pieces of it in new
free programs, and that you know you can do these things.

  To protect your rights, we need to prevent others from denying you
these rights or asking you to surrender the rights.  Therefore, you have
certain responsibilities if you distribute copies of the software, or if
you modify it: responsibilities to respect the freedom of others.

  For example, if you distribute copies of such a program, whether
gratis or for a fee, you must pass on to the recipients the same
freedoms that you received.  You must make sure that they, too, receive
or can get the source code.  And you must show them these terms so they
know their rights.

  Developers that use the GNU GPL protect your rights with two steps:
(1) assert copyright on the software, and (2) offer you this License
giving you legal permission to copy, distribute and/or modify it.

  For the developers' and authors' protection, the GPL clearly explains
that there is no warranty for this free software.  For both users' and
authors' sake, the GPL requires that modified versions be marked as
changed, so that their problems will not be attributed erroneously to
authors of previous versions.

  Some devices are designed to deny users access to install or run
modified versions of the software inside them, although the manufacturer
can do so.  This is fundamentally incompatible with the aim of
protecting users' freedom to change the software.  The systematic
pattern of such abuse occurs in the area of products for individuals to
use, which is precisely where it is most unacceptable.  Therefore, we
have designed this version of the GPL to prohibit the practice for those
products.  If such problems arise substantially in other domains, we
stand ready to extend this provision to those domains in future versions
of the GPL, as needed to protect the freedom of users.

  Finally, every program is threatened constantly by software patents.
States should not allow patents to restrict development and use of
software on general-purpose computers, but in those that do, we wish to
avoid the special danger that patents applied to a free program could
make it effectively proprietary.  To prevent this, the GPL assures that
patents cannot be used to render the program non-free.

  The precise terms and conditions for copying, distribution and
modification follow.

                       TERMS AND CONDITIONS

  0. Definitions.

  "This License" refers to version 3 of the GNU General Public License.

  "Copyright" also means copyright-like laws that apply to other kinds of
works, such as semiconductor masks.

  "The Program" refers to any copyrightable work licensed under this
License.  Each licensee is addressed as "you".  "Licensees" and
"recipients" may be individuals or organizations.

  To "modify" a work means to copy from or adapt all or part of the work
in a fashion requiring copyright permission, other than the making of an
exact copy.  The resulting work is called a "modified version" of the
earlier work or a work "based on" the earlier work.

  A "covered work" means either the unmodified Program or a work based
on the Program.

  To "propagate" a work means to do anything with it that, without
permission, would make you directly or secondarily liable for
infringement under applicable copyright law, except executing it on a
computer or modifying a private copy.  Propagation includes copying,
distribution (with or without modification), making available to the
public, and in some countries other activities as well.

  To "convey" a work means any kind of propagation that enables other
parties to make or receive copies.  Mere interaction with a user through
a computer network, with no transfer of a copy, is not conveying.

  An interactive user interface displays "Appropriate Legal Notices"
to the extent that it includes a convenient and prominently visible
feature that (1) displays an appropriate copyright notice, and (2)
tells the user that there is no warranty for the work (except to the
extent that warranties are provided), that licensees may convey the
work under this License, and how to view a copy of this License.  If
the interface presents a list of user commands or options, such as a
menu, a prominent item in the list meets this criterion.

  1. Source Code.

  The "source code" for a work means the preferred form of the work
for making modifications to it.  "Object code" means any non-source
form of a work.

  A "Standard Interface" means an interface that either is an official
standard defined by a recognized standards body, or, in the case of
interfaces specified for a particular programming language, one that
is widely used among developers working in that language.

  The "System Libraries" of an executable work include anything, other
than the work as a whole, that (a) is included in the normal form of
packaging a Major Component, but which is not part of that Major
Component, and (b) serves only to enable use of the work with that
Major Component, or to implement a Standard Interface for which an
implementation is available to the public in source code form.  A
"Major Component", in this context, means a major essential component
(kernel, window system, and so on) of the specific operating system
(if any) on which the executable work runs, or a compiler used to
produce the work, or an object code interpreter used to run it.

  The "Corresponding Source" for a work in object code form means all
the source code needed to generate, install, and (for an executable
work) run the object code and to modify the work, including scripts to
control those activities.  However, it does not include the work's
System Libraries, or general-purpose tools or generally available free
programs which are used unmodified in performing those activities but
which are not part of the work.  For example, Corresponding Source
includes interface definition files associated with source files for
the work, and the source code for shared libraries and dynamically
linked subprograms that the work is specifically designed to require,
such as by intimate data communication or control flow between those
subprograms and other parts of the work.

  The Corresponding Source need not include anything that users
can regenerate automatically from other parts of the Corresponding
Source.

  The Corresponding Source for a work in source code form is that
same work.

  2. Basic Permissions.

  All rights granted under this License are granted for the term of
copyright on the Program, and are irrevocable provided the stated
conditions are met.  This License explicitly affirms your unlimited
permission to run the unmodified Program.  The output from running a
covered work is covered by this License only if the output, given its
content, constitutes a covered work.  This License acknowledges your
rights of fair use or other equivalent, as provided by copyright law.

  You may make, run and propagate covered works that you do not
convey, without conditions so long as your license otherwise remains
in force.  You may convey covered works to others for the sole purpose
of having them make modifications exclusively for you, or provide you
with facilities for running those works, provided that you comply with
the terms of this License in conveying all material for which you do
not control copyright.  Those thus making or running the covered works
for you must do so exclusively on your behalf, under your direction
and control, on terms that prohibit them from making any copies of
your copyrighted material outside their relationship with you.

  Conveying under any other circumstances is permitted solely under
the conditions stated below.  Sublicensing is not allowed; section 10
makes it unnecessary.

  3. Protecting Users' Legal Rights From Anti-Circumvention Law.

  No covered work shall be deemed part of an effective technological
measure under any applicable law fulfilling obligations under article
11 of the WIPO copyright treaty adopted on 20 December 1996, or
similar laws prohibiting or restricting circumvention of such
measures.

  When you convey a covered work, you waive any legal power to forbid
circumvention of technological measures to the extent such circumvention
is effected by exercising rights under this License with respect to
the covered work, and you disclaim any intention to limit operation or
modification of the work as a means of enforcing, against the work's
users, your or third parties' legal rights to forbid circumvention of
technological measures.

  4. Conveying Verbatim Copies.

  You may convey verbatim copies of the Program's source code as you
receive it, in any medium, provided that you conspicuously and
appropriately publish on each copy an appropriate copyright notice;
keep intact all notices stating that this License and any
non-permissive terms added in accord with section 7 apply to the code;
keep intact all notices of the absence of any warranty; and give all
recipients a copy of this License along with the Program.

  You may charge any price or no price for each copy that you convey,
and you may offer support or warranty protection for a fee.

  5. Conveying Modified Source Versions.

  You may convey a work based on the Program, or the modifications to
produce it from the Program, in the form of source code under the
terms of section 4, provided that you also meet all of these conditions:

    a) The work must carry prominent notices stating that you modified
    it, and giving a relevant date.

    b) The work must carry prominent notices stating that it is
    released under this License and any conditions added under section
    7.  This requirement modifies the requirement in section 4 to
    "keep intact all notices".

    c) You must license the entire work, as a whole, under this
    License to anyone who comes into possession of a copy.  This
    License will therefore apply, along with any applicable section 7
    additional terms, to the whole of the work, and all its parts,
    regardless of how they are packaged.  This License gives no
    permission to license the work in any other way, but it does not
    invalidate such permission if you have separately received it.

    d) If the work has interactive user interfaces, each must display
    Appropriate Legal Notices; however, if the Program has interactive
    interfaces that do not display Appropriate Legal Notices, your
    work need not make them do so.

  A compilation of a covered work with other separate and independent
works, which are not by their nature extensions of the covered work,
and which are not combined with it such as to form a larger program,
in or on a volume of a storage or distribution medium, is called an
"aggregate" if the compilation and its resulting copyright are not
used to limit the access or legal rights of the compilation's users
beyond what the individual works permit.  Inclusion of a covered work
in an aggregate does not cause this License to apply to the other
parts of the aggregate.

  6. Conveying Non-Source Forms.

  You may convey a covered work in object code form under the terms
of sections 4 and 5, provided that you also convey the
machine-readable Corresponding Source under the terms of this License,
in one of these ways:

    a) Convey the object code in, or embodied in, a physical product
    (including a physical distribution medium), accompanied by the
    Corresponding Source fixed on a durable physical medium
    customarily used for software interchange.

    b) Convey the object code in, or embodied in, a physical product
    (including a physical distribution medium), accompanied by a
    written offer, valid for at least three years and valid for as
    long as you offer spare parts or customer support for that product
    model, to give anyone who possesses the object code either (1) a
    copy of the Corresponding Source for all the software in the
    product that is covered by this License, on a durable physical
    medium customarily used for software interchange, for a price no
    more than your reasonable cost of physically performing this
    conveying of source, or (2) access to copy the
    Corresponding Source from a network server at no charge.

    c) Convey individual copies of the object code with a copy of the
    written offer to provide the Corresponding Source.  This
    alternative is allowed only occasionally and noncommercially, and
    only if you received the object code with such an offer, in accord
    with subsection 6b.

    d) Convey the object code by offering access from a designated
    place (gratis or for a charge), and offer equivalent access to the
    Corresponding Source in the same way through the same place at no
    further charge.  You need not require recipients to copy the
    Corresponding Source along with the object code.  If the place to
    copy the object code is a network server, the Corresponding Source
    may be on a different server (operated by you or a third party)
    that supports equivalent copying facilities, provided you maintain
    clear directions next to the object code saying where to find the
    Corresponding Source.  Regardless of what server hosts the
    Corresponding Source, you remain obligated to ensure that it is
    available for as long as needed to satisfy these requirements.

    e) Convey the object code using peer-to-peer transmission, provided
    you inform other peers where the object code and Corresponding
    Source of the work are being offered to the general public at no
    charge under subsection 6d.

  A separable portion of the object code, whose source code is excluded
from the Corresponding Source as a System Library, need not be
included in conveying the object code work.

  A "User Product" is either (1) a "consumer product", which means any
tangible personal property which is normally used for personal, family,
or household purposes, or (2) anything designed or sold for incorporation
into a dwelling.  In determining whether a product is a consumer product,
doubtful cases shall be resolved in favor of coverage.  For a particular
product received by a particular user, "normally used" refers to a
typical or common use of that class of product, regardless of the status
of the particular user or of the way in which the particular user
actually uses, or expects or is expected to use, the product.  A product
is a consumer product regardless of whether the product has substantial
commercial, industrial or non-consumer uses, unless such uses represent
the only significant mode of use of the product.

  "Installation Information" for a User Product means any methods,
procedures, authorization keys, or other information required to install
and execute modified versions of a covered work in that User Product from
a modified version of its Corresponding Source.  The information must
suffice to ensure that the continued functioning of the modified object
code is in no case prevented or interfered with solely because
modification has been made.

  If you convey an object code work under this section in, or with, or
specifically for use in, a User Product, and the conveying occurs as
part of a transaction in which the right of possession and use of the
User Product is transferred to the recipient in perpetuity or for a
fixed term (regardless of how the transaction is characterized), the
Corresponding Source conveyed under this section must be accompanied
by the Installation Information.  But this requirement does not apply
if neither you nor any third party retains the ability to install
modified object code on the User Product (for example, the work has
been installed in ROM).

  The requirement to provide Installation Information does not include a
requirement to continue to provide support service, warranty, or updates
for a work that has been modified or installed by the recipient, or for
the User Product in which it has been modified or installed.  Access to a
network may be denied when the modification itself materially and
adversely affects the operation of the network or violates the rules and
protocols for communication across the network.

  Corresponding Source conveyed, and Installation Information provided,
in accord with this section must be in a format that is publicly
documented (and with an implementation available to the public in
source code form), and must require no special password or key for
unpacking, reading or copying.

  7. Additional Terms.

  "Additional permissions" are terms that supplement the terms of this
License by making exceptions from one or more of its conditions.
Additional permissions that are applicable to the entire Program shall
be treated as though they were included in this License, to the extent
that they are valid under applicable law.  If additional permissions
apply only to part of the Program, that part may be used separately
under those permissions, but the entire Program remains governed by
this License without regard to the additional permissions.

  When you convey a copy of a covered work, you may at your option
remove any additional permissions from that copy, or from any part of
it.  (Additional permissions may be written to require their own
removal in certain cases when you modify the work.)  You may place
additional permissions on material, added by you to a covered work,
for which you have or can give appropriate copyright permission.

  Notwithstanding any other provision of this License, for material you
add to a covered work, you may (if authorized by the copyright holders of
that material) supplement the terms of this License with terms:

    a) Disclaiming warranty or limiting liability differently from the
    terms of sections 15 and 16 of this License; or

    b) Requiring preservation of specified reasonable legal notices or
    author attributions in that material or in the Appropriate Legal
    Notices displayed by works containing it; or

    c) Prohibiting misrepresentation of the origin of that material, or
    requiring that modified versions of such material be marked in
    reasonable ways as different from the original version; or

    d) Limiting the use for publicity purposes of names of licensors or
    authors of the material; or

    e) Declining to grant rights under trademark law for use of some
    trade names, trademarks, or service marks; or

    f) Requiring indemnification of licensors and authors of that
    material by anyone who conveys the material (or modified versions of
    it) with contractual assumptions of liability to the recipient, for
    any liability that these contractual assumptions directly impose on
    those licensors and authors.

  All other non-permissive additional terms are considered "further
restrictions" within the meaning of section 10.  If the Program as you
received it, or any part of it, contains a notice stating that it is
governed by this License along with a term that is a further
restriction, you may remove that term.  If a license document contains
a further restriction but permits relicensing or conveying under this
License, you may add to a covered work material governed by the terms
of that license document, provided that the further restriction does
not survive such relicensing or conveying.

  If you add terms to a covered work in accord with this section, you
must place, in the relevant source files, a statement of the
additional terms that apply to those files, or a notice indicating
where to find the applicable terms.

  Additional terms, permissive or non-permissive, may be stated in the
form of a separately written license, or stated as exceptions;
the above requirements apply either way.

  8. Termination.

  You may not propagate or modify a covered work except as expressly
provided under this License.  Any attempt otherwise to propagate or
modify it is void, and will automatically terminate your rights under
this License (including any patent licenses granted under the third
paragraph of section 11).

  However, if you cease all violation of this License, then your
license from a particular copyright holder is reinstated (a)
provisionally, unless and until the copyright holder explicitly and
finally terminates your license, and (b) permanently, if the copyright
holder fails to notify you of the violation by some reasonable means
prior to 60 days after the cessation.

  Moreover, your license from a particular copyright holder is
reinstated permanently if the copyright holder notifies you of the
violation by some reasonable means, this is the first time you have
received notice of violation of this License (for any work) from that
copyright holder, and you cure the violation prior to 30 days after
your receipt of the notice.

  Termination of your rights under this section does not terminate the
licenses of parties who have received copies or rights from you under
this License.  If your rights have been terminated and not permanently
reinstated, you do not qualify to receive new licenses for the same
material under section 10.

  9. Acceptance Not Required for Having Copies.

  You are not required to accept this License in order to receive or
run a copy of the Program.  Ancillary propagation of a covered work
occurring solely as a consequence of using peer-to-peer transmission
to receive a copy likewise does not require acceptance.  However,
nothing other than this License grants you permission to propagate or
modify any covered work.  These actions infringe copyright if you do
not accept this License.  Therefore, by modifying or propagating a
covered work, you indicate your acceptance of this License to do so.

  10. Automatic Licensing of Downstream Recipients.

  Each time you convey a covered work, the recipient automatically
receives a license from the original licensors, to run, modify and
propagate that work, subject to this License.  You are not responsible
for enforcing compliance by third parties with this License.

  An "entity transaction" is a transaction transferring control of an
organization, or substantially all assets of one, or subdividing an
organization, or merging organizations.  If propagation of a covered
work results from an entity transaction, each party to that
transaction who receives a copy of the work also receives whatever
licenses to the work the party's predecessor in interest had or could
give under the previous paragraph, plus a right to possession of the
Corresponding Source of the work from the predecessor in interest, if
the predecessor has it or can get it with reasonable efforts.

  You may not impose any further restrictions on the exercise of the
rights granted or affirmed under this License.  For example, you may
not impose a license fee, royalty, or other charge for exercise of
rights granted under this License, and you may not initiate litigation
(including a cross-claim or counterclaim in a lawsuit) alleging that
any patent claim is infringed by making, using, selling, offering for
sale, or importing the Program or any portion of it.

  11. Patents.

  A "contributor" is a copyright holder who authorizes use under this
License of the Program or a work on which the Program is based.  The
work thus licensed is called the contributor's "contributor version".

  A contributor's "essential patent claims" are all patent claims
owned or controlled by the contributor, whether already acquired or
hereafter acquired, that would be infringed by some manner, permitted
by this License, of making, using, or selling its contributor version,
but do not include claims that would be infringed only as a
consequence of further modification of the contributor version.  For
purposes of this definition, "control" includes the right to grant
patent sublicenses in a manner consistent with the requirements of
this License.

  Each contributor grants you a non-exclusive, worldwide, royalty-free
patent license under the contributor's essential patent claims, to
make, use, sell, offer for sale, import and otherwise run, modify and
propagate the contents of its contributor version.

  In the following three paragraphs, a "patent license" is any express
agreement or commitment, however denominated, not to enforce a patent
(such as an express permission to practice a patent or covenant not to
sue for patent infringement).  To "grant" such a patent license to a
party means to make such an agreement or commitment not to enforce a
patent against the party.

  If you convey a covered work, knowingly relying on a patent license,
and the Corresponding Source of the work is not available for anyone
to copy, free of charge and under the terms of this License, through a
publicly available network server or other readily accessible means,
then you must either (1) cause the Corresponding Source to be so
available, or (2) arrange to deprive yourself of the benefit of the
patent license for this particular work, or (3) arrange, in a manner
consistent with the requirements of this License, to extend the patent
license to downstream recipients.  "Knowingly relying" means you have
actual knowledge that, but for the patent license, your conveying the
covered work in a country, or your recipient's use of the covered work
in a country, would infringe one or more identifiable patents in that
country that you have reason to believe are valid.

  If, pursuant to or in connection with a single transaction or
arrangement, you convey, or propagate by procuring conveyance of, a
covered work, and grant a patent license to some of the parties
receiving the covered work authorizing them to use, propagate, modify
or convey a specific copy of the covered work, then the patent license
you grant is automatically extended to all recipients of the covered
work and works based on it.

  A patent license is "discriminatory" if it does not include within
the scope of its coverage, prohibits the exercise of, or is
conditioned on the non-exercise of one or more of the rights that are
specifically granted under this License.  You may not convey a covered
work if you are a party to an arrangement with a third party that is
in the business of distributing software, under which you make payment
to the third party based on the extent of your activity of conveying
the work, and under which the third party grants, to any of the
parties who would receive the covered work from you, a discriminatory
patent license (a) in connection with copies of the covered work
conveyed by you (or copies made from those copies), or (b) primarily
for and in connection with specific products or compilations that
contain the covered work, unless you entered into that arrangement,
or that patent license was granted, prior to 28 March 2007.

  Nothing in this License shall be construed as excluding or limiting
any implied license or other defenses to infringement that may
otherwise be available to you under applicable patent law.

  12. No Surrender of Others' Freedom.

  If conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License.  If you cannot convey a
covered work so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you may
not convey it at all.  For example, if you agree to terms that obligate you
to collect a royalty for further conveying from those to whom you convey
the Program, the only way you could satisfy both those terms and this
License would be to refrain entirely from conveying the Program.

  13. Use with the GNU Affero General Public License.

  Notwithstanding any other provision of this License, you have
permission to link or combine any covered work with a work licensed
under version 3 of the GNU Affero General Public License into a single
combined work, and to convey the resulting work.  The terms of this
License will continue to apply to the part which is the covered work,
but the special requirements of the GNU Affero General Public License,
section 13, concerning interaction through a network will apply to the
combination as such.

  14. Revised Versions of this License.

  The Free Software Foundation may publish revised and/or new versions of
the GNU General Public License from time to time.  Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.

  Each version is given a distinguishing version number.  If the
Program specifies that a certain numbered version of the GNU General
Public License "or any later version" applies to it, you have the
option of following the terms and conditions either of that numbered
version or of any later version published by the Free Software
Foundation.  If the Program does not specify a version number of the
GNU General Public License, you may choose any version ever published
by the Free Software Foundation.

  If the Program specifies that a proxy can decide which future
versions of the GNU General Public License can be used, that proxy's
public statement of acceptance of a version permanently authorizes you
to choose that version for the Program.

  Later license versions may give you additional or different
permissions.  However, no additional obligations are imposed on any
author or copyright holder as a result of your choosing to follow a
later version.

  15. Disclaimer of Warranty.

  THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
APPLICABLE LAW.  EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
IS WITH YOU.  SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
ALL NECESSARY SERVICING, REPAIR OR CORRECTION.

  16. Limitation of Liability.

  IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
SUCH DAMAGES.

  17. Interpretation of Sections 15 and 16.

  If the disclaimer of warranty and limitation of liability provided
above cannot be given local legal effect according to their terms,
reviewing courts shall apply local law that most closely approximates
an absolute waiver of all civil liability in connection with the
Program, unless a warranty or assumption of liability accompanies a
copy of the Program in return for a fee.

                     END OF TERMS AND CONDITIONS

            How to Apply These Terms to Your New Programs

  If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.

  To do so, attach the following notices to the program.  It is safest
to attach them to the start of each source file to most effectively
state the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.

    <one line to give the program's name and a brief idea of what it does.>
    Copyright (C) <year>  <name of author>

    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.

Also add information on how to contact you by electronic and paper mail.

  If the program does terminal interaction, make it output a short
notice like this when it starts in an interactive mode:

    <program>  Copyright (C) <year>  <name of author>
    This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
    This is free software, and you are welcome to redistribute it
    under certain conditions; type `show c' for details.

The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License.  Of course, your program's commands
might be different; for a GUI interface, you would use an "about box".

  You should also get your employer (if you work as a programmer) or school,
if any, to sign a "copyright disclaimer" for the program, if necessary.
For more information on this, and how to apply and follow the GNU GPL, see
<http://www.gnu.org/licenses/>.

  The GNU General Public License does not permit incorporating your program
into proprietary programs.  If your program is a subroutine library, you
may consider it more useful to permit linking proprietary applications with
the library.  If this is what you want to do, use the GNU Lesser General
Public License instead of this License.  But first, please read
<http://www.gnu.org/philosophy/why-not-lgpl.html>.
readme.txt000064400000656077151327220420006565 0ustar00=== Elementor Website Builder ===
Contributors: elemntor, KingYes, ariel.k, jzaltzberg, mati1000, pojosh, bainternet
Tags: page builder, editor, landing page, drag-and-drop, elementor, visual editor, wysiwyg, design, maintenance mode, coming soon, under construction, website builder, landing page builder, front-end builder
Requires at least: 5.0
Tested up to: 5.8
Requires PHP: 5.6
Stable tag: 3.4.8
License: GPLv3
License URI: https://www.gnu.org/licenses/gpl-3.0.html

The Elementor Website Builder has it all: drag and drop page builder, pixel perfect design, mobile responsive editing, and more. Get started now!

== Description ==

https://www.youtube.com/watch?v=lBu9TKg7dFM

Introducing a WordPress website builder, with no limits of design. A website builder that delivers high-end page designs and advanced capabilities, never before seen on WordPress.

It's time for **[Elementor Website Builder](https://elementor.com/?utm_source=wp-repo&utm_medium=link&utm_campaign=readme)**.

= The Leading Website & Page Builder =
Whether you’re a web designer looking for a way to achieve pixel-perfect websites, a marketer looking to get online fast or a developer who wants to expand their capabilities, Elementor’s website builder has what you need - intuitive drag-and-drop Editor, advanced design features and a full open-source approach.

= Faster. Much Faster. =
Instant reaction was a key feature we wanted to achieve. And we did. Instant drag & drop website builder, instant live edit, instant page load. This makes the interface fun and easy to work with, as well as reduces the time it takes to design.

= Live design. Truly Live. =
Never again work on the backend and guess what the frontend will look like. With Elementor, you’re editing the site live, and simultaneously see exactly how it looks like. Elementor features live design & inline editing, so the whole process of writing and designing is done directly on the page, with no need to press update or go to preview mode. It also works perfectly with or without Gutenberg.

= Professional Features Right Out of the Box =
With Elementor’s unique features, you can create websites that have that certain ‘designer touch’. Among our design features are: Box Shadows, Background Overlays, Hover Effects, Headline Effects, Animations, Shape Dividers, Gradient Backgrounds and much more.

= 100s of Pre-Designed Templates & Blocks =
Choose from 100+ of beautiful full page [WordPress templates](https://library.elementor.com/?utm_source=wp-repo&utm_medium=link&utm_campaign=readme) and customize them to make them your own. You can also build your website by choosing and combining from over 300+ Blocks.

Blocks are pre-designed section templates that can be easily combined into any page. Blocks include a variety of categories: services, testimonials, call to action and more. Save and reuse Elementor templates on different pages, or export them to a different website with a click.

= Responsive Live Editing =
Elementor Website  Builder comes with an exclusive toolset, that lets you create a truly responsive website in a whole new and visual way. From different font size, padding and margin per device, to reverse column ordering, this is the most powerful mobile site builder for creating perfect responsive websites.

= 40+ free widgets and counting =
No other page builder or website builder can compare to Elementor. We packed 40+ of the most useful widgets into our website builder. True, that’s way more than we had to offer, but we wanted to spare no widget from you, so you can reach the top of your design capabilities.

- **Heading**. Add eye-catching headlines.
- **Image**. Control the size, opacity and other settings of images.
- **Text Editor**. A WYSIWYG text editor, just like the WordPress editor.
- **Video**. Add YouTube \ Vimeo to your page.
- **Button**. Controlling every aspect of the button design.
- **Image Box**. A box that includes image, headline and text.
- **Testimonials**. Customer testimonials that show social proof.
- **Icon**. Place one or more of 600+ icons available.
- **Icon Box**. Works the same as the image box, only with icons.
- **Social Icons**. Icons to your social pages like Facebook / Twitter.
- **Image Gallery**. Displays your images in an aligned grid.
- **Image Carousel**. A rotating carousel or slider of chosen images.
- **Icon List**. A bullet list with any chosen icon and text.
- **Counter**. Show stats and numbers in an escalating manner.
- **Progress Bar**. Include an escalating progress bar.
- **Tabs**. Vertical or horizontal tabs that display different pieces of content.
- **Accordion**. A collapsable display of content.
- **Toggle**. Like Accordion, for FAQ pages.
- **Star Rating**. Add some social proof with a styled star rating.
- **Alert**. A colored alert box to draw the attention of the visitor.
- **HTML**. Insert code into the page.
- **Shortcode**. Easily insert shortcodes from any plugin into the page.
- **Menu Anchor**. Link any menu to this anchor.
- **Read More**. Set the `Read More` cut-off for the excerpt in archive pages.
- **Sidebar**. Add any sidebar into the page.
- **Google Maps**. Embed maps into the page.
- **SoundCloud**. Add audio bits from SoundCloud.
- **Divider**. A line that divides different elements in the page.
- **Spacer**. A space that divides the various elements.
- **Columns**. Create inner columns within the column.
- **And counting...**

= Take it a step further with Elementor Pro =
The most professional WordPress Website Builder out there. [Elementor Pro](https://elementor.com/pro/?utm_source=wp-repo&utm_medium=link&utm_campaign=readme) vastly improves your design workflow and lets you design faster and better than ever. Get access to more professional widgets, options and tools to really push your design to the next level.

Elementor is much more than a page builder! Making changes to your theme shouldn't be so hard. Endless coding, dealing with developers, switching themes. The [Theme Builder](https://go.elementor.com/theme-builder/) in Elementor Pro turns the entire process of creating WordPress websites 100% visual including your site's header, footer, single post and archive page design.

There are many other [features](https://elementor.com/features/?utm_source=wp-repo&utm_medium=link&utm_campaign=readme) to help you build better websites:

* [Motion Effects](https://go.elementor.com/motion-effects/)
* [Industry leading Theme Builder](https://go.elementor.com/theme-builder/)
* [WooCommerce Builder](https://go.elementor.com/woocomemrce-builder/)
* [Advanced Popup Builder](https://go.elementor.com/popup-builder/)
* [Visual and intuitive form builder](https://go.elementor.com/form-builder/)
* Marketing automation and CRM integrations
* Custom fonts & icons
* Role manager
* Blog post layout widget
* Image & video sliders
* Global widgets
* Custom CSS
* And many more.

Join the elite web professionals who enjoy [Elementor Pro](https://elementor.com/pro/?utm_source=wp-repo&utm_medium=link&utm_campaign=readme)!

= Translated to 59+ Languages & RTL supported. =
We’ve integrated RTL and multi language support within the framework of Elementor, so you get a [translated panel (59+ languages)](https://translate.wordpress.org/projects/wp-plugins/elementor/) out of the box, as well as RTL typography support, and developer options to add even more languages.

= Developer API. =
Elementor website builder is free and open source. It’s the perfect plugin to be extended and integrated further. It was created and developed with the developer in mind, and we have already seen some truly remarkable addons being developed.

To help you get started and learn just how to integrate with Elementor, we have created the [Official Elementor Developer Resources](https://developers.elementor.com/?utm_source=wp-repo&utm_medium=link&utm_campaign=readme) and the [Code Reference](https://code.elementor.com/?utm_source=wp-repo&utm_medium=link&utm_campaign=readme).

= Be a contributor =
If you want to contribute, go to our [Elementor GitHub Repository](https://github.com/elementor/elementor) and see where you can help.

You can also add a new language via [translate.wordpress.org](https://translate.wordpress.org/projects/wp-plugins/elementor). We've built a short guide explaining [how to translate and localize the plugin](https://go.elementor.com/translate/).

= Security Report =
We run a [managed security Bug Bounty program](https://bugcrowd.com/elementor), utilizing the community power by enabling 24/7/365 crowdsourced vulnerability detection. 

= Documentation and Support =
- For documentation and tutorials go to our [Documentation](https://docs.elementor.com/?utm_source=wp-repo&utm_medium=link&utm_campaign=readme).
- If you have any more questions, visit our support on the [Plugin's Forum](https://wordpress.org/support/plugin/elementor).
- For more information about features, FAQs and documentation, check out our website at [Elementor website Builder](https://elementor.com/?utm_source=wp-repo&utm_medium=link&utm_campaign=readme).

= Liked Elementor? =
- Join our [Facebook Group](https://www.facebook.com/groups/Elementors/).
- Learn from our tutorials on [YouTube Channel](https://www.youtube.com/c/elementor).
- Or rate us on [WordPress](https://wordpress.org/support/plugin/elementor/reviews/?filter=5/#new-post) :)

== Installation ==

= Minimum Requirements =

* WordPress 5.0 or greater
* PHP version 5.6 or greater
* MySQL version 5.0 or greater

= We recommend your host supports: =

* PHP version 7.0 or greater
* MySQL version 5.6 or greater
* WordPress Memory limit of 64 MB or greater (128 MB or higher is preferred)

https://www.youtube.com/watch?v=Ypn6fltn_7s

= Installation =

1. Install using the WordPress built-in Plugin installer, or Extract the zip file and drop the contents in the `wp-content/plugins/` directory of your WordPress installation.
2. Activate the plugin through the 'Plugins' menu in WordPress.
3. Go to Pages > Add New
4. Press the 'Edit with Elementor' button.
5. Now you can drag and drop widgets from the left panel onto the content area, as well as add new sections and columns that make up the page structure.

For documentation and tutorials visit our [Knowledge Base](https://docs.elementor.com/?utm_source=wp-repo&utm_medium=link&utm_campaign=readme).

== Frequently Asked Questions ==

**With Elementor, do I still need a theme?**

Yes. Think of it like this: a theme is like the frame of the picture, and Elementor is the tool to paint the picture inside the frame.

**Is Elementor compatible with Posts and Custom Post Types?**

It sure is! You can set which post types will enable Elementor in the settings page.

**Can I use other plugin widgets inside Elementor?**

Sure can! Plugin widgets that appear in the WordPress widgets menu will also appear inside Elementor automatically. Just drag and drop them onto the page.

**Do I need to know how to code to use Elementor?**

Absolutely not! Elementor is a live frontend website builder, that lets you reach a high end design with no need to write even a line of code or CSS.

**Will Elementor work with RTL or other languages?**

Yeah! Elementor enables to seamlessly build RTL pages as well as other translated pages in any language. You can read more about [translation and localization](https://go.elementor.com/translate/).

**My site is working with WordPress 2.6, will Elementor work for me?**

No. Elementor supports WordPress 5.0 or greater, and is compatible with PHP 5.6 or greater. We recommend your host supports PHP version 7.0 or greater and MySQL version 5.6 or greater.

== Screenshots ==

1. **Drag & Drop.** Our instant drag & drop lets you easily place every element anywhere on the page.
2. **Visual Resize Control.** Customize the various elements of the page. Resizing images, changing column sizes and much more.
3. **Truly Live Edit.** Changes on the page are displayed in realtime. No need to press update or preview.
4. **Template Library.** Save your pages or sections as templates, so you can easily reuse them again, or choose one of our beautiful pre-designed templates.
5. **Responsive Design.** Create custom settings for desktop, tablet & mobile by switching between devices.
6. **Revision History.** Switch between earlier versions of your page design, so your design process is backed up, every step of the way.
7. **Shape Divider.** Choose from a wide array of shape dividers and separate your sections in endless ways, that until now were simply not possible.

== Changelog ==

See Elementor Developer Edition versions changelog [here](https://go.elementor.com/dev-changelog/)

= 3.4.8 - 2021-11-16 =
* Fix: Font Awesome 4 support option is set to Yes in new websites
* Fix: CSS Printing method option is set to Internal Embedding in new websites
* Fix: Hardened Lightbox capabilities to enforce better security policies
* Fix: After downgrading from a version with Container experiment active a PHP error is thrown

= 3.4.7 - 2021-10-31 =
* Tweak: Added role restriction to Version control feature
* Fix: Private Vimeo videos are not loading in Video widget ([#16741](https://github.com/elementor/elementor/issues/16741))
* Fix: Custom width responsive control disappeared until section init in the common Positioning section 
* Fix: PayPal button widget is not functioning in future Pro versions
* Fix: Unwanted HTML escaping in Pro features promotion

= 3.4.6 - 2021-10-19 =
* Tweak: Updated `eicons` library to 5.13.0
* Fix: Custom SVG is not supported in some servers environments in Text Path widget
* Fix: Lottie animations are not imported in Template import process
* Fix: Can't connect to Library via CLI
* Fix: Scroll event listener is not optimized in Counter widget

= 3.4.5 - 2021-10-12 =
* Tweak: Updated featured video in the WordPress repository plugin page
* Tweak: Added support for future features compatibility
* Fix: Additional breakpoints responsive CSS classes clash when Optimized DOM Output experiment is inactive [#16322](https://github.com/elementor/elementor/issues/16322)
* Fix: Escaped several translation strings for better security (props [@rodolphebertozzo](https://github.com/rodolphebertozzo))
* Fix: Slides per view and slides to scroll controls disappeared when using multiple breakpoints in Testimonial Carousel widget
* Fix: Padding not applied properly with absolute positioned widgets when the Optimized DOM Output experiment is active
* Fix: Missing padding in the widgets panel layout

= 3.4.4 - 2021-09-13 =
* Fix: Custom popover responsive controls breaks when used in responsive breakpoints view when Additional Breakpoints experiment is active ([#16312](https://github.com/elementor/elementor/issues/16312))
* Fix: Data Updater causes fatal error due to DB corruption ([#16100](https://github.com/elementor/elementor/issues/16100))
* Fix: Page settings layout description strings were inaccurate
* Fix: Specific image sizes causes the first image to load in large dimensions on load in Image Carousel widget

= 3.4.3 - 2021-08-29 =
* Tweak: Added "Justified" option in Typography text alignment in Column & Section elements ([#11480](https://github.com/elementor/elementor/issues/11480))
* Tweak: Enlarged cards view in the Kit Library for better visibility
* Tweak: Changed Kit Library tab title
* Fix: Landing pages experiment causes 404 errors with attachment pages ([#15943](https://github.com/elementor/elementor/issues/15943))
* Fix: Can't upload SVG files using Elementor ([#16084](https://github.com/elementor/elementor/issues/16084), [#16119](https://github.com/elementor/elementor/issues/16119), [#16088](https://github.com/elementor/elementor/issues/16088))
* Fix: `wp_kses_post` strips `srcset` attribute from images ([#16111](https://github.com/elementor/elementor/issues/16111))
* Fix: Inline CSS is parsed to an invalid characters ([#16140](https://github.com/elementor/elementor/issues/16140))
* Fix: Animated elements disappear before entering the viewport ([#2806](https://github.com/elementor/elementor/issues/2806))
* Fix: Autoplay not working for Vimeo videos in Lightbox ([#16068](https://github.com/elementor/elementor/issues/16068))
* Fix: HTML captions are stripped in Image carousel widget ([#16073](https://github.com/elementor/elementor/issues/16073))
* Fix: Carousels are not working properly in the Editor when Additional Custom Breakpoints experiment is active
* Fix: Responsive values are not being reflected in Slider controls
* Fix: Elementor Top Admin Bar loads in WordPress dashboard when the experiment is active
* Fix: Prevent Admin Top Bar to conflict with WordPress customizer
* Fix: Can't change alignment of icons when Font Awesome Inline experiment is active in Icon List widget
* Fix: Import deeplink redirect loses target screen parameters when user needs to log in
* Deprecated: Removed all usages of `Elementor\Utils::get_create_new_post_url()`

= 3.4.2 - 2021-08-19 =
* Fix: Responsive Site settings are not being applied on frontend when Additional Custom Breakpoints is active ([#16055](https://github.com/elementor/elementor/issues/16055), [#16033](https://github.com/elementor/elementor/issues/16033))
* Fix: Global colors are applied even when they are disabled on Frontend ([#16037](https://github.com/elementor/elementor/issues/16037))
* Fix: Conditional controls missing when using Dynamic tags ([#16050](https://github.com/elementor/elementor/issues/16050))
* Fix: Motion Effects popover is not visible ([#16044](https://github.com/elementor/elementor/issues/16044))
* Fix: Control conditions are not being executed when has capital letter in the control slug ([#16003](https://github.com/elementor/elementor/issues/16003))

= 3.4.1 - 2021-08-18 =
* Tweak: Missing post types in Site Parts overview screen in Kit Library ([#15249](https://github.com/elementor/elementor/issues/15249))
* Tweak: Added source=generic parameter when connecting through the top bar
* Tweak: Added Inline SVG support to the generic video Play icon
* Fix: Control conditions are not being executed when has dash in the control slug ([#16003](https://github.com/elementor/elementor/issues/16003))
* Fix: Gradient control doesn't work on frontend when using Global Colors ([#13288](https://github.com/elementor/elementor/issues/13288))
* Fix: Placeholder values of Column width control shouldn't cascade to Mobile device
* Fix: Alignment control doesn't work in responsive view in Testimonial widget
* Fix: Certain responsive controls pass the desktop default to other devices accidentally
* Fix: Alignment control doesn't work with Additional Custom Breakpoints in Button widget
* Fix: SVG Icon is not being displayed in the Basic Gallery widget
* Fix: Activation bug for IDN domains

= 3.4.0 - 2021-08-17 =
* New: Introducing Additional Custom Breakpoints - Pixel Perfect Design for up to 7 Devices ([#2043](https://github.com/elementor/elementor/issues/2043), [#15488](https://github.com/elementor/elementor/issues/15488), [#15782](https://github.com/elementor/elementor/issues/15782))
* Experiment: Font Awesome Inline SVG for Optimized performance ([#11772](https://github.com/elementor/elementor/issues/11772))
* Tweak: Responsive values visibility in Elementor controls ([#3356](https://github.com/elementor/elementor/issues/3356))
* Tweak: Improved asset loading performance by serving lighter JS files ([#8572](https://github.com/elementor/elementor/issues/8572))
* Tweak: Scale controls were added to responsive mode UI ([#15485](https://github.com/elementor/elementor/issues/15485))
* Tweak: Responsive devices order was changed ([#14662](https://github.com/elementor/elementor/issues/14662), [#2043](https://github.com/elementor/elementor/issues/2043))
* Tweak: Excluded Elementor Templates from WordPress default sitemap ([#14578](https://github.com/elementor/elementor/issues/14578), [Topic](https://wordpress.org/support/topic/how-to-stop-elementor-templates-appearing-in-wp-sitemap/))
* Tweak: Responsive capability was added to Alignment control in Testimonial widget ([#11542](https://github.com/elementor/elementor/issues/11542))
* Tweak: Added translation function to several locations (props [@rodolphebertozzo](https://github.com/rodolphebertozzo))
* Tweak: Allow extending Section elements using Elementor API (props [@Oxibug](https://github.com/oxibug))
* Tweak: Converted responsive controls generation in the Editor to JS ([Developers Blog Post](https://developers.elementor.com/additional-custom-breakpoints-technical-details-and-gotchas/))
* Tweak: Updated Webpack library to v5.40.0
* Tweak: Added an option to deep-link into Revisions panel screen
* Tweak: Changed the Kit Library back button text to "Back to Library"
* Tweak: Added additional information to usage data
* Tweak: Added compatibility for future feature in Site Settings
* Tweak: Added CLI support for Import Kit by ID
* Tweak: Added informative tooltip for Finder element in Elementor admin top bar
* Tweak: Use template literals in Elementor filter names
* Tweak: Updated "Getting Started" video playlist
* Tweak: Enforced better security policies
* Fix: Dynamic content disappeared if chosen in Code Highlight widget ([#14766](https://github.com/elementor/elementor/issues/14766))
* Fix: Text size increased on Icon list widget with size set to `em` and a link ([#14829](https://github.com/elementor/elementor/issues/14829))
* Fix: Undefined `"pro_widgets"` array key message in edge cases (props [@jahir07](https://github.com/jahir07), [@codersaiful](https://github.com/codersaiful), [#15542](https://github.com/elementor/elementor/issues/15542))
* Fix: UI glitch in Select2 control in Dark mode ([#15473](https://github.com/elementor/elementor/issues/15473))
* Fix: Re-migrate globals are not working properly in edge cases ([#15477](https://github.com/elementor/elementor/issues/15477), props [@jvernooy](https://github.com/jvernooy))
* Fix: Gallery widget with Dynamic gallery applied can't be edited or deleted ([#15529](https://github.com/elementor/elementor/issues/15529))
* Fix: Improved Responsive bar compatibility to RTL sites
* Fix: Dynamic tags UI glitch in Code Highlight widget
* Fix: Default Mobile width changed to 360px in Responsive mode
* Fix: Viewport meta tag was escaped in Canvas page layout
* Fix: Setting zero offset to Sticky elements is not working properly
* Fix: Icons are not vertically aligned in Icon List widget
* Fix: WordPress Audio widget only shows correct styling in live preview but not in the actual site
* Fix: New tabs do not appear instantly if alignment is not set to Default or Start in Tabs widget
* Fix: Edit popover was trimmed by the template card in Theme Builder
* Fix: Duplicate `<style>` tags were printed in several cases
* Fix: Theme Builder is not working if Import/Export experiment is inactive
* Fix: UI glitch in Responsive bar in RTL sites
* Fix: "Edit with Elementor" isn’t working on static Homepages
* Fix: UI glitches in Kit Library 
* Fix: Library connect issues after URL change in Kit and template Library
* Fix: Kit Library not showing all categories
* Fix: Pro widget promotions flickers after clicking on "See it in action" button
* Fix: Incorrect hover default color in Text Path widget
* Fix: Text decoration is not working in Text Path widget
* Fix: Browser's autocomplete is taking over the results in the Finder
* Deprecated: See all deprecations to this version in our [Developers Deprecations Post](https://developers.elementor.com/v3-4-planned-deprecations/)

= 3.3.1 - 2021-07-20 =
* Tweak: Added a back to Kit Library button to the Import Kit screen
* Tweak: Updated `eicons` library to 5.12.0
* Tweak: Declared compatibility for WordPress 5.8
* Fix: Some widget style breaks when Improved CSS Loading Experiment is active in certain cases ([#15632](https://github.com/elementor/elementor/issues/15632), [#15683](https://github.com/elementor/elementor/issues/15683), [#15660](https://github.com/elementor/elementor/issues/15660))
* Fix: Improved CSS Loading experiment learn more link leads to the wrong doc ([#15622](https://github.com/elementor/elementor/issues/15622))
* Fix: JS error is thrown when using Global widget since Elementor v3.3.0 ([#15648](https://github.com/elementor/elementor/issues/15648), [#15672](https://github.com/elementor/elementor/issues/15672))
* Fix: Removed deprecated classes calls in System Info screen

= 3.3.0 - 2021-07-13 =
* New: Introducing Kits Library - Create Entire Websites Faster Than Ever ([#4417](https://github.com/elementor/elementor/issues/4417), [#11341](https://github.com/elementor/elementor/issues/11341))
* New: Meet the Color Color Sampler - fetch colors from every image and populated color control ([#14868](https://github.com/elementor/elementor/issues/14868))
* Experiment: Improved CSS Loading - Load widgets CSS only when needed ([#13533](https://github.com/elementor/elementor/issues/13533), [#8572](https://github.com/elementor/elementor/issues/8572))
* Tweak: Added Animations CSS library to be loaded conditionally when needed when Improved Asset Load experiment is active ([#13533](https://github.com/elementor/elementor/issues/13533), [#8572](https://github.com/elementor/elementor/issues/8572))
* Tweak: Added the ability to fetch Image from external URL ([#413](https://github.com/elementor/elementor/issues/413))
* Tweak: Added responsive capabilities to Content width in Section and Inner Section elements ([#12963](https://github.com/elementor/elementor/issues/12963))
* Tweak: Added “Hidden Elements” User Preference control to choose whether to show or hide hidden elements in responsive mode ([#12316](https://github.com/elementor/elementor/issues/12316))
* Tweak: Added User Preference control to set the default responsive device when the responsive view is triggered ([#14662](https://github.com/elementor/elementor/issues/14662))
* Tweak: Added an Elementor top bar to all Elementor screens in the WordPress admin pages for better discoverability ([#15276](https://github.com/elementor/elementor/issues/15276), [#15250](https://github.com/elementor/elementor/issues/15250))
* Tweak: Added gradient button capabilities to Button instances in Theme Style ([#14731](https://github.com/elementor/elementor/issues/14731))
* Tweak: Changed Landing Pages experiment to be active by default on all websites
* Tweak: Improved Kit Import and Export tool to include Posts, Pages, Custom Post Types and WooCommerce Products
* Tweak: Allow unlimited export of Elementor-created content in Import/Export tool
* Tweak: Included Homepage setting in Import/Export tool
* Tweak: Throw an error when running Import process via CLI if user is not Administrator role
* Tweak: Added Informative modal links in Import/Export tool
* Tweak: Modified Kit information area to be collapsible in Import/Export tool
* Tweak: Added custom fields support to Import/Export Experiment
* Tweak: Added future support for Additional Breakpoints
* Tweak: Changing the `content-filters` to be accessed publicly
* Tweak: Regenerate Files admin button resets all page-assets data
* Tweak: Improved Kit Import and Export tool to include conditions conflicts resolver
* Tweak: Added Kit information to Import and Export tool
* Tweak: Added summary screens to Import and Export tool
* Tweak: Converted Improved Asset Loading Experiment registration to the post save process instead of loading process
* Tweak: Widgets search can accept non-english strings for better UX
* Tweak: Polished Responsive top bar UI
* Tweak: Created an Uploads manager util to better handle files being uploaded
* Tweak: Added default height to Tablet and Mobile devices
* Tweak: Polished Select2 control UI
* Tweak: Added Pro promotion in Submission feature page
* Tweak: Updated Font Awesome icons library to v5.15.3
* Tweak: Added a new filter `elementor/document/save/data` to allow manipulation when document save starts
* Tweak: Added usage schema in `schemas/usage`
* Tweak: Recalculate elements usage each upgrade
* Tweak: Added "Recreate Kit" button in Elementor settings only when the Default Kit does not exist
* Tweak: Made `elementorFrontend.getDeviceSetting()` method dynamic
* Fix: Inline editing not working when the Optimized DOM experiment is on ([#14703](https://github.com/elementor/elementor/issues/14703))
* Fix: Exit animation flickers in several cases ([#14459](https://github.com/elementor/elementor/issues/14459), [#13180](https://github.com/elementor/elementor/issues/14703))
* Fix: Lightbox is not working in the frontend ([#15080](https://github.com/elementor/elementor/issues/15080), [#15085](https://github.com/elementor/elementor/issues/15085))
* Fix: Prevent Default Kit from being recreated when kit not exists ([#13299](https://github.com/elementor/elementor/issues/13299))
* Fix: Social icons alignment shift right in Safari browsers ([#13122](https://github.com/elementor/elementor/issues/13122))
* Fix: Gradient control doesn't work when using Global Colors ([#13288](https://github.com/elementor/elementor/issues/13288))
* Fix: Social Icons and Share button space disappeared when optimizing the HTML ([#13279](https://github.com/elementor/elementor/issues/13279))
* Fix: UI glitch in the empty state of Global widgets tab
* Fix: Breakpoints values in the Panel are not enforced
* Fix: Error thrown in Template library if Expert template been imported
* Fix: Panel search bar appears above the overlay on load
* Fix: Slides widget is not displaying properly in the Editor
* Fix: Activation account connection error on IDN domains
* Fix: Video item didn’t started playing without adding an image overlay in Media Carousel widget
* Fix: Inline editing not working when the Optimized DOM experiment is active
* Fix: Site Identity data been transferred when importing a Kit
* Fix: WordPress content Featured images are not being imported when applying a Kit
* Fix: Post Excerpt is not imported when applying a Kit via Import Kit tool
* Fix: Default Kit file not being created in Multisite WordPress instances
* Fix: Dark mode UI glitches in Import/Export tool
* Fix: Close and back to dashboard buttons are not being redirected to the correct page in Import/Export experiment
* Fix: Collapse button disappeared on mobile if the user not logged in Video Playlist widget
* Fix: Import process fail message is shown when importing a Kit from ThemeForest
* Fix: Large images optimized by WordPress can't be displayed properly via dynamic Toolset fields
* Fix: Dynamic control is not working in Text Path widget
* Fix: Column removed from a section in the Navigator resulted in an empty section
* Fix: Unable to drag and drop columns from one above other
* Deprecated: See all deprecations to this version in our [Developers Deprecations Post](https://developers.elementor.com/v3-3-planned-deprecations/)

= 3.2.5 - 2021-06-16 =
* Fix: Reverted Replace URL fix that caused the Default Kit to get regenerated in certain cases ([#14892](https://github.com/elementor/elementor/issues/14892))

= 3.2.4 - 2021-05-26 =
* Tweak: Changed Google Maps widget to use API v3 instead of deprecated v2 ([#15090](https://github.com/elementor/elementor/issues/15090))
* Tweak: Updated Google Fonts list to 05/2021 ([#14732](https://github.com/elementor/elementor/issues/14732), [#14536](https://github.com/elementor/elementor/issues/14536), [#13595](https://github.com/elementor/elementor/issues/13595))
* Tweak: Changed "Missing Header" text for Compatibility tags in System info screen
* Fix: Google Maps widget is not loading due to API deprecation ([#15090](https://github.com/elementor/elementor/issues/15090))
* Fix: Disable Lightbox user preference does not affect the Basic Gallery widget ([#12913](https://github.com/elementor/elementor/issues/12913))
* Fix: Hardened Lightbox capabilities to enforce better security policies

= 3.2.3 - 2021-05-05 =
* Fix: `eicons` file couldn't be found when using Custom Breakpoints ([#14718](https://github.com/elementor/elementor/issues/14718), [#14712](https://github.com/elementor/elementor/issues/14712))
* Fix: Deregister `eicons` fonts action is not working ([#14712](https://github.com/elementor/elementor/issues/14712))
* Fix: Responsive custom CSS is not properly generated when using custom breakpoints ([#14711](https://github.com/elementor/elementor/issues/14711))
* Fix: Minimize the Editor window caused to preview to collapse behind the Panel

= 3.2.2 - 2021-04-26 =
* Fix: Multiple carousels in the same page stoped functioning when Improved Asset Load experiment is active ([#14663](https://github.com/elementor/elementor/issues/14663), [#14675](https://github.com/elementor/elementor/issues/14675))
* Fix: Section Style tab panel is grayed in several site languages ([#14642](https://github.com/elementor/elementor/issues/14642))
* Fix: Responsive mode UI glitch in WordPress versions under 5.6

= 3.2.1 - 2021-04-21 =
* Tweak: Changed the minimum width of Mobile breakpoint to 320px
* Fix: Global Typography settings were printed as undefined variables
* Fix: Close button in responsive bar didn't worked in the Desktop breakpoint
* Fix: UI glitch in the dashboard admin notices
* Fix: Right click contextual menu appears underneath the Navigator
* Fix: Panel resize caused UI glitches in RTL websites
* Fix: Responsive device icons adjustments in RTL websites

= 3.2.0 - 2021-04-19 =
* New: Meet Text Path widget - Add more text design options to your headings
* New: Meet the new Responsive Mode * Easily edit your responsive design
* New: Introducing Mask option - Add a mask to every element on your page ([#13736](https://github.com/elementor/elementor/issues/13736))
* Experiment: Template Kit Import & Export feature - Move all of your Elementor content from one site to another
* Experiment: Added `elementor-image` & `elementor-text-editor` classes to DOM Optimization Experiment
* Tweak: Split `eicons` library CSS file to Editor & Frontend usages as part of the Improved Asset Loading Experiment ([#8572](https://github.com/elementor/elementor/issues/8572))
* Tweak: Load the Lightbox assets only if Lightbox is used on the page as part of the Improved Asset Loading Experiment ([#8572](https://github.com/elementor/elementor/issues/8572))
* Tweak: Added Google Fonts loading method option in Elementor settings screen to control over `font-display` option ([#14236](https://github.com/elementor/elementor/issues/14236))
* Tweak: Added Gradient background option to Button widget ([#3142](https://github.com/elementor/elementor/issues/3142))
* Tweak: Added FAQ Schema support to Accordion and Toggle Widgets (Props [@pacotole](https://github.com/pacotole), [#13425](https://github.com/elementor/elementor/issues/13425), [#9053](https://github.com/elementor/elementor/issues/9053))
* Tweak: Improved the widgets panel responsiveness ([#14026](https://github.com/elementor/elementor/issues/14026))
* Tweak: Added dynamic option to video link inside Sections ([#6116](https://github.com/elementor/elementor/issues/6116))
* Tweak: Added Text shadow control to Text widget ([#10033](https://github.com/elementor/elementor/issues/10033), [#2263](https://github.com/elementor/elementor/issues/2263), [#5579](https://github.com/elementor/elementor/issues/5579))
* Tweak: Added Text shadow control to Icon Box widget ([#10033](https://github.com/elementor/elementor/issues/10033), [#2263](https://github.com/elementor/elementor/issues/2263), [#5579](https://github.com/elementor/elementor/issues/5579))
* Tweak: Added Text shadow control to Start Rating widget([#10033](https://github.com/elementor/elementor/issues/10033), [#2263](https://github.com/elementor/elementor/issues/2263), [#5579](https://github.com/elementor/elementor/issues/5579))
* Tweak: Added Text shadow control to Icon List widget ([#10033](https://github.com/elementor/elementor/issues/10033), [#2263](https://github.com/elementor/elementor/issues/2263), [#5579](https://github.com/elementor/elementor/issues/5579))
* Tweak: Added Text shadow control to Icon widget ([#10033](https://github.com/elementor/elementor/issues/10033), [#2263](https://github.com/elementor/elementor/issues/2263), [#5579](https://github.com/elementor/elementor/issues/5579))
* Tweak: Added Text shadow control to Image Gallery widget ([#10033](https://github.com/elementor/elementor/issues/10033), [#2263](https://github.com/elementor/elementor/issues/2263), [#5579](https://github.com/elementor/elementor/issues/5579))
* Tweak: Added Text shadow control to Image Carousel widget ([#10033](https://github.com/elementor/elementor/issues/10033), [#2263](https://github.com/elementor/elementor/issues/2263), [#5579](https://github.com/elementor/elementor/issues/5579))
* Tweak: Added Text shadow control to Counter widget ([#10033](https://github.com/elementor/elementor/issues/10033), [#2263](https://github.com/elementor/elementor/issues/2263), [#5579](https://github.com/elementor/elementor/issues/5579))
* Tweak: Added Text shadow control to Progress Bar widget ([#10033](https://github.com/elementor/elementor/issues/10033), [#2263](https://github.com/elementor/elementor/issues/2263), [#5579](https://github.com/elementor/elementor/issues/5579))
* Tweak: Added Text shadow control to Testimonials widget ([#10033](https://github.com/elementor/elementor/issues/10033), [#2263](https://github.com/elementor/elementor/issues/2263), [#5579](https://github.com/elementor/elementor/issues/5579))
* Tweak: Added Text shadow control to Tabs widget ([#10033](https://github.com/elementor/elementor/issues/10033), [#2263](https://github.com/elementor/elementor/issues/2263), [#5579](https://github.com/elementor/elementor/issues/5579))
* Tweak: Added Text shadow control to Toggle widget ([#10033](https://github.com/elementor/elementor/issues/10033), [#2263](https://github.com/elementor/elementor/issues/2263), [#5579](https://github.com/elementor/elementor/issues/5579))
* Tweak: Added Text shadow control to Accordion widget ([#10033](https://github.com/elementor/elementor/issues/10033), [#2263](https://github.com/elementor/elementor/issues/2263), [#5579](https://github.com/elementor/elementor/issues/5579))
* Tweak: Added Text shadow control to Alert widget ([#10033](https://github.com/elementor/elementor/issues/10033), [#2263](https://github.com/elementor/elementor/issues/2263), [#5579](https://github.com/elementor/elementor/issues/5579))
* Tweak: Added support for Expert tier templates in Templates Library
* Tweak: Adjusted Media control to better handle SVG uploads
* Tweak: Converted script loading method to use an independent Util instead of JS `import` function for better performance
* Tweak: Changed the widgets search field to be sticky
* Tweak: Added "Fit to Screen" height option in Inner Section widget
* Tweak: Added `vh` and `vw` units to Min-height control in Inner Section widget
* Tweak: Added `vh` unit to Height control in Google Maps widget
* Tweak: Changed breakpoints mechanism to use dynamic breakpoint references to allow future addition of breakpoints
* Tweak: Added Dynamic capabilities support in Code Highlight widget
* Tweak: Added ability to access Site Settings using `Cmd + K` / `CTRL + K`
* Tweak: Added ability to access Site Settings via Admin top bar
* Tweak: Updated Elementor admin notices UI
* Tweak: Added userAgent/browser classes to the admin area body class
* Tweak: Manage all the subscription plans from Connect module in Template Library
* Tweak: Removed "Meet right click" introduction
* Fix: Edit section labels in Navigator didn't triggered the Update button ([#10772](https://github.com/elementor/elementor/issues/10772))
* Fix: Custom fonts file URLs are static and are not changed using the Replace URL tool ([#10382](https://github.com/elementor/elementor/issues/10382))
* Fix: "Undefined" error message is thrown when server fails to save or insert a template ([#12377](https://github.com/elementor/elementor/issues/12377))
* Fix: Popup Dynamic Link options modal is misplaced ([#13257](https://github.com/elementor/elementor/issues/13257))
* Fix: Navigator indicators are missing since WordPress v5.7 ([#14094](https://github.com/elementor/elementor/issues/14094))
* Fix: PHP error was thrown when using PHP 8 in the System Info screen
* Fix: Hardened SVG uploads capabilities to enforce better security policies
* Fix: Redundant space when deleting an icon from Icon Box widget
* Fix: Library Connect completion redirects to wrong page
* Deprecated: See all deprecations to this version in our [Developers Deprecations Post](https://developers.elementor.com/v3-2-planned-deprecations/)

= 3.1.4 - 2021-03-08 =
* Fix: Self hosted video didn't work with Image Overlay ([#14038](https://github.com/elementor/elementor/issues/14038))
* Fix: Clicking on Video widget Image Overlay doesn't plat video for Vimeo ([#14095](https://github.com/elementor/elementor/issues/14095))
* Fix: Carousels navigation arrows `z-index` issue in Safari ([#13791](https://github.com/elementor/elementor/issues/13791))
* Fix: Landing Pages can cause a fatal error for Author roles in the WordPress dashboard
* Fix: `<a>` tags placed in an SVG file trigger the Lightbox
* Fix: Hardened allowed options in the editor to enforce better security policies
* Fix: Removed `html` option in Lightbox module to prevent security issues

= 3.1.3 - 2021-03-03 =
* Tweak: Added `aria-expanded` property to Tabs, Accordion and Toggle widgets ([#11246](https://github.com/elementor/elementor/issues/11246), [#3576](https://github.com/elementor/elementor/issues/3576))
* Fix: Values are being cleared after save action in Query control ([#14098](https://github.com/elementor/elementor/issues/14098))

= 3.1.2 - 2021-03-02 =
* Tweak: Added Lazy load option for YouTube in Video widget to prevent conflicts ([#13898](https://github.com/elementor/elementor/issues/13898))
* Tweak: Allow overwriting the assets URL when using a mirror domain ([#13701](https://github.com/elementor/elementor/issues/13701))
* Tweak: Removed deprecated `jQuery` functions for WP 5.7 compatibility
* Tweak: Added a `mixin` for `webkit-scrollbar` design in Table of Content widget CSS
* Tweak: Added `--force` CLI replace command to always return the number of replaces
* Tweak: Added a Lazy Load control for YouTube source in Background Video
* Tweak: Updated `eicons` library to v5.11.0
* Fix: Youtube videos didn't work properly when Privacy mode is enabled and "Improved Asset Loading" experiment is disabled ([#13711](https://github.com/elementor/elementor/issues/13711))
* Fix: Error event will not always have an `originalEvent` ([Props @enisdenjo](https://github.com/enisdenjo))
* Fix: Background Video protocol wasn't using `https` for `youtube-nocookie` option in Video widget
* Fix: Youtube API script was loaded when Image overlay is used
* Fix: Navigator overlapped preview area if attached to the right
* Fix: Column layout glitch when changing the section structure
* Fix: Landing page created via the Admin bar wasn't created with Canvas layout
* Fix: Sanitized options in the editor to enforce better security policies

= 3.1.1 - 2021-01-31 =
* Tweak: Minor UI improvements in Compatibility tag
* Fix: Async JS loading conflicted with `wp.i18n` ([#13708](https://github.com/elementor/elementor/issues/13708), [#13746](https://github.com/elementor/elementor/issues/13746), [Topic](https://wordpress.org/support/topic/console-error-43/))
* Fix: Elementor loads unnecessary `wp-polyfills.min.js` script in Frontend ([#13720](https://github.com/elementor/elementor/issues/13720))
* Fix: Landing Pages experiment removes content in static blog pages ([#13706](https://github.com/elementor/elementor/issues/13706), [#13728](https://github.com/elementor/elementor/issues/13728), [#13725](https://github.com/elementor/elementor/issues/13725), [Topic](https://wordpress.org/support/topic/blog-page-not-showing-after-update-3/))
* Fix: Background Slideshow shifted if Section is stretched and has Full Width layout ([#13750](https://github.com/elementor/elementor/issues/13750), [Topic](https://wordpress.org/support/topic/slide-show-background-2/), [Topic](https://wordpress.org/support/topic/slider-background-section-layout-issue/), [Topic](https://wordpress.org/support/topic/elementor-v-3-0-16-breaks-full-width-header/))
* Fix: Entrance animation set to `none` caused a delay in the widget load
* Fix: Navigator rearrangement glitches when Optimized DOM experiment is active
* Fix: Keyboard navigation isn't working in Tabs widget when Accessibility Improvements experiment is active
* Fix: Minor UI glitches in Experiments screen
* Fix: Wrong check of a deprecated method caused a notice when `ELEMENTOR_DEBUG` is enabled
* Fix: Arrow keys navigation is not working in Finder
* Fix: Theme Style overrides icon size when set in `em` in Social Icon widget

= 3.1.0 - 2021-01-24 =
* New: Elementor Experiments - Experience new features before they're officially released ([Developer Documentation](https://developers.elementor.com/elementor-experiments/))
* New: Compatibility Tag - Make sure your website plugins are compatible with Elementor ([Developer Documentation](https://developers.elementor.com/compatibility-tag/))
* Experiment: Landing Pages - Create beautiful landing pages in a streamlined workflow
* Experiment: Accessibility Improvements - Make Elementor widgets more accessible (may include markup changes) ([#13191](https://github.com/elementor/elementor/issues/13191))
* Experiment: Improved performance by loading JS and Swiper assets conditionally in frontend ([#8572](https://github.com/elementor/elementor/issues/8572), [Developer Documentation](https://developers.elementor.com/experiment-optimized-asset-loading))
* Tweak: Improved Tabs widget accessibility ([#11779](https://github.com/elementor/elementor/issues/11779), [#11561](https://github.com/elementor/elementor/issues/11561))
* Tweak: Added alignment options for Tabs widget ([#11997](https://github.com/elementor/elementor/issues/11997))
* Tweak: Updated Font Awesome icons library to v5.15.1 ([#12057](https://github.com/elementor/elementor/issues/12057))
* Tweak: Added "Custom" Columns Gap option in Section element ([#11978](https://github.com/elementor/elementor/issues/11978))
* Tweak: Added Border Radius support in Google Maps widget ([#11359](https://github.com/elementor/elementor/issues/11359))
* Tweak: Added dynamic capabilities to Tab Title control in Tabs widget ([#9710](https://github.com/elementor/elementor/issues/9710))
* Tweak: Added dynamic capabilities to Toggle Content control in Toggle widget ([#12405](https://github.com/elementor/elementor/issues/12405))
* Tweak: Added `em` unit to Border Radius control in Button widget ([#11561](https://github.com/elementor/elementor/issues/11561))
* Tweak: Introduced a new method for attaching a JS handler to an element ([Developer Documentation](https://developers.elementor.com/a-new-method-for-attaching-a-js-handler-to-an-element/))
* Tweak: Added the option to add custom menu items in Site Settings ([Developer Documentation](https://github.com/elementor/elementor/pull/13243))
* Tweak: Added an option to choose Text element HTML tag in Divider widget ([#11499](https://github.com/elementor/elementor/issues/11499))
* Tweak: Updated `eicons` library to v5.10.0
* Tweak: Refactored YouTube source to use YouTube API in Video widget
* Tweak: Added dynamic capabilities to Poster control in Video widget
* Tweak: Global dropdown controls are now displayed for all user roles
* Tweak: Improved browsers detection utility functionality
* Tweak: Added "Find an Expert" link to the Admin Dashboard Overview widget
* Tweak: Added the new Theme Builder as a Finder item
* Tweak: Added `+` icon in multi-select control for better UX
* Tweak: Improved Select2 controls load
* Tweak: Added Elementor Beta (Developer Edition) promotion in WordPress dashboard
* Tweak: Migrated DOM Improvements to Elementor Experiments
* Tweak: Removed redundant extra padding in responsive controls
* Tweak: Modified the Theme Builder app link UI in the Admin Bar menu
* Fix: Some keyboards layout cannot open the keyboard shortcuts dialog ([#6145](https://github.com/elementor/elementor/issues/6145))
* Fix: Change Page Layout doesn't update the preview on the first attempt ([#13245](https://github.com/elementor/elementor/issues/13245))
* Fix: Update Post Title via Site Settings removes style from Post Title widget ([#12605](https://github.com/elementor/elementor/issues/12605))
* Fix: Can't rearrange items between sections in Navigator since WordPress 5.6 update ([#12256](https://github.com/elementor/elementor/issues/12256))
* Fix: Double click needed to play YouTube video when Poster image exists in Video widget
* Fix: Autoplay option doesn't work in mobile devices when YouTube source is muted in Video widget
* Fix: YouTube End Time option doesn't work when Loop option is active in Video widget
* Fix: Incompatible variable names in Base Swiper class and Elementor Pro carousels
* Fix: Landing Pages menu item directs to the wrong page
* Fix: Redundant spacing is added to WYSIWYG control if rich editing is disabled
* Fix: Editor Autoplay is not working consistently in Image Carousel widget
* Fix: Console errors are thrown when entering the Revisions menu in edge cases
* Fix: Column height is not correct when Optimized DOM experiment is inactive
* Fix: Wrong translation function caused errors in the Revisions panel
* Fix: Widgets empty state is not visible in WordPress 5.6
* Deprecated: See all deprecations to this version in our [Developers Deprecations Post](https://developers.elementor.com/v3-1-planned-deprecations/)

= 3.0.16 - 2021-01-06 =
* Tweak: String changes in Delete Site Settings screen
* Fix: Clicking "Recalculate" button in System info throws a PHP error ([#13100](https://github.com/elementor/elementor/issues/13100 ))
* Fix: Regenerate CSS is not working properly in large scale servers
* Fix: Template Library title sanitization to avoid security issues
* Fix: `libxml_disable_entity_loader` warning is thrown in PHP 8.0 instances

= 3.0.15 - 2020-12-21 =
* Tweak: Added "Theme" option to Page Layout options in Page Settings to allow customization of Site Setting value
* Tweak: Added a confirmation message before deleing Default Kit to trash to avoid unintentional Site Settings deletion
* Fix: Named parameters used in Dynamic Tags causes PHP errors in PHP 8.0 ([#13269](https://github.com/elementor/elementor/issues/13269))
* Fix: "Edit with Elementor" menu does not expands in the top admin-bar menu in WordPress 5.6 ([#13256](https://github.com/elementor/elementor/issues/13256))
* Fix: Stretch Section causes horizontal scroll when the vertical scrollbar is visible in WordPress 5.6 ([#13260](https://github.com/elementor/elementor/issues/13260))
* Fix: Unable to save Templates in WordPress 5.6 ([#12273](https://github.com/elementor/elementor/issues/12273), [Topic](https://wordpress.org/support/topic/save-the-template-and-page-builder-loding/))
* Fix: Ninja Forms plugin conflict in WordPress 5.6 ([#13281](https://github.com/elementor/elementor/issues/13281), [Topic](https://wordpress.org/support/topic/elementor-ninja-forms-bug/), [Topic](https://wordpress.org/support/topic/elementor-bug-ninja-forms/))
* Fix: Pinterest social sharing is not working when displaying a large image in Lightbox
* Fix: Manage Global Colors and Fonts buttons is not leading to the correct screen
* Fix: Permission error when trying to update site description with WP-CLI

= 3.0.14 - 2020-11-25 =
* Tweak: Added 3rd party plugins compatibility to versions rollback mechanism
* Fix: Updated Popup Builder promotional image
* Fix: Upload SVG files only when the user allowed to prevent security issues
* Fix: String updates in Style Settings tab

= 3.0.13 - 2020-11-04 =
* Tweak: Added compatibility with WordPress v5.6 to the Editor panel ([#12958](https://github.com/elementor/elementor/issues/12958))
* Tweak: Updated translation strings in Theme Builder promotional screen
* Fix: Tab content is animated when active in Tabs widget ([#12724](https://github.com/elementor/elementor/issues/12724))
* Fix: "Edit with Elementor" button in admin top-bar is missing in some cases ([#12951](https://github.com/elementor/elementor/issues/12951), [#12995](https://github.com/elementor/elementor/issues/12995))
* Fix: "Edit with Elementor" button in a post removes draft
* Fix: "Edit with Elementor" doesn't work for empty Elementor posts
* Fix: Some settings are not being updated in the Preview in Image Carousel widget
* Fix: Console error message when Global value is not found
* Fix: Revisions are not being saved in Site Settings
* Fix: Apply or Restore revision actions triggers console errors
* Fix: Paste action without any data throws a console error
* Fix: Pasting style with Global values is not reflected in the Panel
* Fix: Can't submit forms from templates when the parent post is empty

= 3.0.12 - 2020-10-20 =
* Tweak: Added "Read More" link to major version upgrade notice
* Tweak: Added System Info CLI command
* Fix: Redundant padding in Social Icons widget ([#12833](https://github.com/elementor/elementor/issues/12833))
* Fix: Editor role can't see "Edit with Elementor" button in top admin-bar ([#12175](https://github.com/elementor/elementor/issues/12175))
* Fix: Dynamic content promotion is shown when self hosted option is selected in Video widget ([#11468](https://github.com/elementor/elementor/issues/11468))
* Fix: 'description' is not supported in the color control ([#12747](https://github.com/elementor/elementor/issues/12747))
* Fix: Some Shape Dividers overlap other elements since Chrome 85 ([#12393](https://github.com/elementor/elementor/issues/12393))
* Fix: Image preview area disappears when 'label_block' is `false` in Media Control ([#11756](https://github.com/elementor/elementor/issues/11756))
* Fix: Missing compatibility for Advanced Editor Tools (previously TinyMCE Advanced) ([#12768](https://github.com/elementor/elementor/issues/12768))
* Fix: Different panel tab is shown when panel tab includes only sections with display conditions that are unmet ([#12658](https://github.com/elementor/elementor/issues/12658))
* Fix: Default Generic Fonts are not printed along with a global value ([#12410](https://github.com/elementor/elementor/issues/12410))
* Fix: Remove source map comment to prevent 404 console warning ([Topic](https://wordpress.org/support/topic/issue-with-picker-js-map))
* Fix: Buttons are cropped when applying some hover animations to Social Icons widget
* Fix: Custom Panel tab not working when added to Page Settings
* Fix: Globals Dropdown popover is not aligned to the picker when panel is wide
* Fix: Popups are missing from "Edit With Elementor" top admin-bar list
* Fix: Global Color panel UI glitch on upgrade to v3.0.x when user has RGBA values
* Fix: Can't upload SVG files to Favicon control in Site Settings

= 3.0.11 - 2020-09-30 =
* Tweak: Added "Loading" state for Global controls to reflect data loading state
* Fix: Inaccurate height in Divider widget ([#12569](https://github.com/elementor/elementor/issues/12569), [#12630](https://github.com/elementor/elementor/issues/12630))
* Fix: Global Colors and Fonts are not being generated on non Elementor pages ([#12637](https://github.com/elementor/elementor/issues/12637))
* Fix: Inactive "Delicious" social network from Social Icons widget
* Fix: Can't restore the Site Settings document revisions
* Fix: Creating a new Global Color or Font won't reflect in other dropdowns until the controls section init
* Fix: Selecting a new Global Color or Font won't be indicated in the dropdown until the controls section init

= 3.0.10 - 2020-09-23 =
* Fix: `space_between_widgets` is missing on upgrade in some cases ([#12298](https://github.com/elementor/elementor/issues/12298))
* Fix: Global Color does not apply to some patterns in Divider widget ([#12501](https://github.com/elementor/elementor/issues/12501))
* Fix: Users with "Access to edit content only" aren't able to access the Editor ([#12521](https://github.com/elementor/elementor/issues/12521))
* Fix: If the default page layout is set to "Canvas" Headers and Footers cannot be edited ([#12509](https://github.com/elementor/elementor/issues/12509))
* Fix: Global Color and Fonts that were deleted might cause style removal from the same element
* Fix: Opacity indication is missing in the Global Color control dropdown and in the creation prompt
* Fix: Wrong placement of "Add New" section in a Popup when using Optimized DOM mode
* Fix: "Edit with Elementor" button is not in the correct location
* Fix: Global Dropdown scrollbar has redundant border in Chromium based browsers
* Fix: Entrance animation isn't working on edge cases in Tabs widget

= 3.0.9 - 2020-09-17 =
* Fix: Kit settings get deleted when modifying the Site Title or Tagline in WordPress Settings and Customizer screens ([#12540](https://github.com/elementor/elementor/issues/12540), [#12538](https://github.com/elementor/elementor/issues/12538), [#12562](https://github.com/elementor/elementor/issues/12562))

= 3.0.8.1 - 2020-09-14 =
* Fix: Reverted Shape Dividers are in front other elements in Chrome 85 fix due to display glitches ([#12393](https://github.com/elementor/elementor/issues/12393))
* Fix: Auto Columns control setting causes layout to be displayed in one row in a Social icons ([Topic](https://wordpress.org/support/topic/sloppy-updates/), [#12519](https://github.com/elementor/elementor/issues/12519))

= 3.0.8 - 2020-09-14 =
* Fix: Additional cases of Global Style inconsistencies in Editor and Frontend ([#12363](https://github.com/elementor/elementor/issues/12363))
* Fix: Edit with Elementor button is missing from the admin top bar in some cases since WordPress 5.4 ([#11728](https://github.com/elementor/elementor/issues/11728), [#12175](https://github.com/elementor/elementor/issues/12175))
* Fix: Unexpected columns view when Inner Section is muted ([#12376](https://github.com/elementor/elementor/issues/12376))
* Fix: Some Shape Dividers are in front other elements in Chrome 85 ([#12393](https://github.com/elementor/elementor/issues/12393))
* Fix: JS error `elementorCommon` is undefined ([#12323](https://github.com/elementor/elementor/issues/12323), Props [@shimondoodkin](https://github.com/shimondoodkin))
* Fix: Site description doesn't get updated from the 'Customizer' screen
* Fix: When Global values aren't available don't return an empty object
* Fix: Message After Submit RTL icon spacing glitch
* Fix: Select2 control dimensions adjustments

= 3.0.7 - 2020-09-09 =
* Fix: Additional cases of Global Style inconsistencies in Editor and Frontend ([#12363](https://github.com/elementor/elementor/issues/12363))
* Fix: Plugins conflict on non-admin login to the dashboard ([#12383](https://github.com/elementor/elementor/issues/12383), [#12388](https://github.com/elementor/elementor/issues/12388))
* Fix: PHP error undefined method `add_repeater_row` caused data updater issues and server overload ([#12305](https://github.com/elementor/elementor/issues/12305))
* Fix: Global Colors and Fonts not being saved when created in Site Settings ([#12272](https://github.com/elementor/elementor/issues/12272))
* Fix: Shared link is attached to post text in Twitter Share Button widget (Props [@LensDigitalUK](https://github.com/LensDigitalUK))
* Fix: "No route was found matching the URL and request method" error when using plain permalinks
* Fix: Site favicon that was set from WordPress customizer is missing in Site Identity screen

= 3.0.6 - 2020-09-06 =
* Tweak: Added dismiss button for data updater notices
* Fix: Global Colors and Fonts are missing on front-end ([#12363](https://github.com/elementor/elementor/issues/12363))
* Fix: Database update script causes unexpected errors ([#12305](https://github.com/elementor/elementor/issues/12305))
* Fix: Custom Breakpoints stopped working since v3.0 ([#12320](https://github.com/elementor/elementor/issues/12320))
* Fix: Shortcuts for Navigator is not correct ([#12365](https://github.com/elementor/elementor/issues/12365))
* Fix: Can't close a Navigator since v3.0 ([#11836](https://github.com/elementor/elementor/issues/11836))
* Fix: Select field dropdown caret visibility issue in edge cases in Form widget ([#12053](https://github.com/elementor/elementor/issues/12053))
* Fix: Missing iFrame `title` attribute in Google Maps widget ([#9955](https://github.com/elementor/elementor/issues/9955))
* Fix: Missing default size unit selection in default Global Font properties `font-size` and `line-height` controls
* Fix: Toggle widget title style missing in Editor
* Fix: Exiting Site Settings menu after accessing it from "Manage Global Fonts/Colors" Global dropdown menu throws a JS error

= 3.0.5 - 2020-08-31 =
* Fix: Motion Effects not working when assigned to a column and throws JS error when DOM optimization is disabled ([#12299](https://github.com/elementor/elementor/issues/12299), [#12275](https://github.com/elementor/elementor/issues/12275))
* Fix: Elements behave unexpectedly in the Editor when a custom repeater control is added to Column and Section elements ([#12275](https://github.com/elementor/elementor/issues/12275),  [#12242](https://github.com/elementor/elementor/issues/12242))
* Fix: Glitches in migration script for Gap Between Widgets global setting ([#12298](https://github.com/elementor/elementor/issues/12298))
* Fix: Console error `elementorCommon is undefined` (Props [@shimondoodkin](https://github.com/shimondoodkin))
* Fix: Missing translation string for 'color_picker' in the Color Picker title
* Fix: Revisions won't get updated to the correct one

= 3.0.4 - 2020-08-30 =
* Tweak: Added Skype and Viber to the allowed URI protocols ([#11619](https://github.com/elementor/elementor/issues/11619))
* Tweak: Replaced WordPress "Learn More" links with dynamic links for better control over time ([#12312](https://github.com/elementor/elementor/issues/12312))
* Fix: Global Colors and Fonts inconsistencies between Editor and Frontend ([#12245](https://github.com/elementor/elementor/issues/12245), [#12235](https://github.com/elementor/elementor/issues/12235), [#12303](https://github.com/elementor/elementor/issues/12303), [#12249](https://github.com/elementor/elementor/issues/12249))
* Fix: Global dropdown is not available for all users
* Fix: Removed unused strings

= 3.0.3 - 2020-08-27 =
* Tweak: Added option to re-migrate Global Colors and Fonts from earlier versions
* Fix: Repeater controls doesn't work in some edge cases
* Fix: Load Theme Builder with relevant UI theme
* Fix: Dialog texts are not center aligned in Theme Builder
* Fix: Changes are not reflecting on frontend when CSS Print Method is set to Internal Embedding
* Fix: Icon List widget does not use render attribute (Props [@ibndawood](https://github.com/ibndawood))

= 3.0.2 - 2020-08-26 =
* Tweak: Added Select2 And File Import Components to Theme Builder application
* Tweak: Added default values as placeholders to the number inputs in the Breakpoints settings section
* Tweak: Minor UI tweaks to Globals dropdown
* Tweak: Updated video tutorials in Theme Builder
* Fix: Column & Section Elements fires `elementor/element/after_add_attributes` early ([#12185](https://github.com/elementor/elementor/issues/12185), Props [@ibndawood](https://github.com/ibndawood))
* Fix: `hexdec()` returns a deprecation notice ([#12161](https://github.com/elementor/elementor/issues/12161))
* Fix: Repeater controls issue after the moving to `container.repeaters` ([#12239](https://github.com/elementor/elementor/issues/12239), [#12221](https://github.com/elementor/elementor/issues/12221))
* Fix: Column Widget Space is not working when DOM Improvement is disabled ([#12256](https://github.com/elementor/elementor/issues/12256), [Topic](https://wordpress.org/support/topic/widgets-space-doesnt-work-after-updating-to-3-0/))
* Fix: Resetting a style throws JS errors
* Fix: Repeater controls backwards compatibility
* Fix: Global Color dropdown shows Primary as marked when a custom value is added
* Fix: Adding new Global Fonts won't be added to the dropdown list until page reloads
* Fix: Clicking on the Theme Builder Logo reopens it
* Fix: Finder gets loaded in preview iframes

= 3.0.1 - 2020-08-25 =
* Tweak: Changed "Exit to Dashboard" and "View Page" panel menu links to use `<a>` tag
* Fix: `set-error-handler` conflict with 3rd party addons that uses REST-API ([#12219](https://github.com/elementor/elementor/issues/12219))
* Fix: Conflict between responsive options and the Navigator "Hide" option ([#12123](https://github.com/elementor/elementor/issues/12123))
* Fix: Radio inputs layout breaks when using Multi-Step Form
* Fix: Global typography popover glitch in RTL websites

= 3.0.0 - 2020-08-23 =
* New: Introducing Site Settings - manage your entire site within the Editor
* New: Meet Global Fonts - the smartest way to manage your text styles ([#1553](https://github.com/elementor/elementor/issues/1553), [#1863](https://github.com/elementor/elementor/issues/1863))
* New: Meet Global Colors - manage your site colors more consistently ([#1553](https://github.com/elementor/elementor/issues/1553), [#1324](https://github.com/elementor/elementor/issues/1324))
* Tweak: Improved Elementor's frontend dynamic CSS rendering performance significantly ([#8053](https://github.com/elementor/elementor/issues/8053))
* Tweak: Removed `.elementor-inner`, `.elementor-row` and `.elementor-column-wrap` from DOM output to improve performance (#7351, #7817, Developers Blog Post - https://developers.elementor.com/dom-improvements-ahead-html-wrappers-removal-from-v3-0/)
* Tweak: Added an option to set columns in Social Icons widget ([#11295](https://github.com/elementor/elementor/issues/11295))
* Tweak: Added Default Page Layout to Global Layout Settings ([#4925](https://github.com/elementor/elementor/issues/4925))
* Tweak: Made 'z-index' control responsive in widgets Advanced tab ([#10918](https://github.com/elementor/elementor/issues/10918))
* Tweak: Added `rem` unit support for Padding and Margins controls ([#2810](https://github.com/elementor/elementor/issues/2810))
* Tweak: Added control for setting link width in Icon List widget ([#11945](https://github.com/elementor/elementor/issues/11945))
* Tweak: Added image Border Radius control to Image Box widget ([#9301](https://github.com/elementor/elementor/issues/9301))
* Tweak: Added more Google Fonts subsets ([#1630](https://github.com/elementor/elementor/issues/1630), [#1915](https://github.com/elementor/elementor/issues/1915), [#8186](https://github.com/elementor/elementor/issues/8186), Props [@andrejm](https://github.com/andrejm))
* Tweak: Improved Lightbox accessibility (Props [@ramiy](https://github.com/ramiy))
* Tweak: Added "Height" & "Object Fit" controls to Image Widget ([#10962](https://github.com/elementor/elementor/issues/10962), Props [@ramiy](https://github.com/ramiy))
* Tweak: Added a filter for allowing adding Google Fonts subsets (Props [@andrejm](https://github.com/andrejm))
* Tweak: Changed Elementor grid to work with CSS Variables ([Developers Blog Post](https://developers.elementor.com/elementor-dropping-support-ie/))
* Tweak: Updated `eicons` library to `v5.9.1`
* Tweak: Updated `e-gallery` library to `v1.2.0`
* Tweak: Updated Dialog library to `v4.8.1`
* Tweak: Updated Google Fonts list to 07/2020
* Tweak: Added lazyload to Lightbox slideshow images
* Tweak: Removed unused `elementor-edit-area-preview` class
* Tweak: Adding support to Vimeo external links structure
* Tweak: Improved Masonry layout mechanism in Gallery widget
* Tweak: Allow using Repeater control in page settings
* Tweak: Save all Global settings to the Kit entity
* Tweak: Converted schemes to Global variables
* Tweak: Updated WeChat and Weibo social networks colors in Social Icons widget
* Tweak: Added font-family property to text-area control for better readability
* Tweak: Migrated Elementor Style settings from WP dashboard to the Global Settings menu
* Tweak: Added real-time JS handling to prevent redundant renders in Image Carousel widget and Background Slideshow
* Tweak: Moved "Stretch Section" control to the end of layout settings in Section element
* Tweak: Color tweaks to editor panel elements
* Tweak: Minor UI improvements in the editor panel
* Tweak: Added backup warning before major version plugin upgrade
* Tweak: Improved dialog a11y to support more accessible lightbox close button
* Tweak: Added infrastructure support for the new Theme Builder
* Tweak: Added an option to set the mobile browser header color in supported devices
* Tweak: Changed panel behavior when switching document to prevent laggy behavior
* Tweak: Added Improved DOM Output option in Elementor settings to allow legacy mode of HTML DOM prior to v3.0
* Tweak: Removed v2.9 reference from the Dynamic promotions
* Fix: Image block alignment broken by Elementor general figure styling ([#11906](https://github.com/elementor/elementor/issues/11906), [#9259](https://github.com/elementor/elementor/issues/9259), [#7331](https://github.com/elementor/elementor/issues/7331))
* Fix: Elementor posts aren't properly imported with WordPress Importer v0.7 ([#11466](https://github.com/elementor/elementor/issues/11466), [#10744](https://github.com/elementor/elementor/issues/10744), [#11927](https://github.com/elementor/elementor/issues/11927))
* Fix: Divider can't use `EM` font-size unit in Divider widget ([#11352](https://github.com/elementor/elementor/issues/11352))
* Fix: Theme Style overrides Icon List items typography values when list items are links in Icon List widget ([#12021](https://github.com/elementor/elementor/issues/12021))
* Fix: Responsive glitch in Range control ([#11233](https://github.com/elementor/elementor/issues/11233))
* Fix: Multiple repeater controls in the same panel causes JS errors ([#11523](https://github.com/elementor/elementor/issues/11523))
* Fix: Multiple repeater control types in same panel glitches
* Fix: Dark mode UI glitches in Display Conditions modal
* Fix: The wrong video being opened in Media Carousel widget
* Fix: Dark mode UI glitch in Display conditions modal
* Fix: Connect issues when using non-latin character domains
* Deprecated: See all deprecations to this version in our [Developers Deprecations Post](https://developers.elementor.com/v3-0-planned-deprecations/)

= 2.9.14 - 2020-07-21 =
* Tweak: Added compatibility with WordPress v5.5 ([#11820](https://github.com/elementor/elementor/issues/11820), [#11830](https://github.com/elementor/elementor/issues/11830))
* Fix: Elementor posts aren't properly imported with WordPress Importer v0.7 ([#11466](https://github.com/elementor/elementor/issues/11466), [#10744](https://github.com/elementor/elementor/issues/10744))
* Fix: Added sanitization to post titles in WordPress dashboard for better security

= 2.9.13 - 2020-06-23 =
* Fix: Duplicated Hidden type form fields inherited required attribute in Form widget ([#11578](https://github.com/elementor/elementor/issues/11578))
* Fix: Select2 control width glitch

= 2.9.12 - 2020-06-14 =
* Fix: Dynamic default value not working in Form widget ([#11578](https://github.com/elementor/elementor/issues/11578), [#11609](https://github.com/elementor/elementor/issues/11609))
* Fix: Dark mode glitches in Form Step items ([#11579](https://github.com/elementor/elementor/issues/11579))
* Fix: Unfiltered files upload not working when enabled from WordPress dashboard (Props [@jrutheiser](https://github.com/jrutheiser))
* Fix: File upload control has text cursor instead of pointer cursor
* Fix: Dark mode glitches in File upload control
* Fix: Clear icon dark mode glitch in the widgets search box

= 2.9.11 - 2020-06-02 =
* Fix: Several URI protocols removed from links ([#11518](https://github.com/elementor/elementor/issues/11518))

= 2.9.10 - 2020-06-01 =
* Tweak: Updated `eicons` library to v5.7.0
* Tweak: Added infrastructure improvements to Repeater control to support upcoming versions
* Fix: Popup action links triggers 404 error ([#11104](https://github.com/elementor/elementor/issues/11104))
* Fix: Removed source map comment so browsers don't look for source map in Swiper library ([#10764](https://github.com/elementor/elementor/issues/10764))
* Fix: Elementor posts aren't properly imported with WordPress Importer v0.7 ([#11466](https://github.com/elementor/elementor/issues/11466), [#10744](https://github.com/elementor/elementor/issues/10744))
* Fix: Theme Style overrides link settings in some cases ([#11462](https://github.com/elementor/elementor/issues/11462))
* Fix: UI glitch in Media controls
* Fix: Hardened sanitization in Custom Link Attributes and in URL control to avoid security issues

= 2.9.9 - 2020-05-24 =
* Tweak: Added 'Learn More' link to URL Custom Attributes Description
* Tweak: Added real-time JS preview handling in Image Carousel widget
* Tweak: Added File upload control UI
* Tweak: Added support for processing Envato Template Kit ZIP files
* Tweak: Allow disabling a repeater item sorting option by adding a class
* Tweak: Adjusted CSS selectors to be more generic in Forms
* Tweak: Updated content in Getting Started screen
* Tweak: Added JSON files support to files upload handler
* Tweak: Changed SVG Uploads prompt message to Unfiltered Files
* Tweak: Added an option for repeater item to disable itself
* Tweak: Removed temporary code from Page Settings
* Tweak: Added infrastructure improvements to Repeater control to support upcoming versions
* Fix: Default line-height value in Heading widget is overriding line-height setting in Theme Style ([#10501](https://github.com/elementor/elementor/issues/10501), [#10649](https://github.com/elementor/elementor/issues/10649))
* Fix: Dynamic settings are not available in frontend JS in edge cases
* Fix: Connectivity issues in Connect module
* Fix: Removed source map comment so browsers don't look for source map in Swiper library ([#10764](https://github.com/elementor/elementor/issues/10764))
* Fix: Render style on repeater item change in Page Settings
* Fix: Added sanitization to Custom Link Attributes control to avoid security issue
* Fix: Added sanitization to URL control to avoid security issue

= 2.9.8 - 2020-04-21 =
* Tweak: Added `.webp` file extension support to Elementor Lightbox
* Fix: Added missing font-family for `elementor-button` class to avoid system font ([#11166](https://github.com/elementor/elementor/issues/11166))
* Fix: Site Part without any content has no height and not accessible in some cases
* Fix: PHP notice in Connect module
* Fix: Navigator resize action is not available in edge cases
* Fix: SVG sanitizer `href` attribute for better security
* Fix: Hardened user role that is allowed to upload unfiltered files for better security

= 2.9.7 - 2020-03-25 =
* Tweak: Added compatibility with WordPress v5.4 ([#10745](https://github.com/elementor/elementor/issues/10745))
* Tweak: Show Typography section to everyone in Section, Column and Inner Section elements ([#10592](https://github.com/elementor/elementor/issues/10592))
* Fix: Custom Attributes section missing in Advanced tab ([#10881](https://github.com/elementor/elementor/issues/10881))
* Fix: Title color & Typography settings are being overridden by Theme Style in Accordion and Toggle widget ([#10900](https://github.com/elementor/elementor/issues/10900))
* Fix: Merged "Play On Mobile" string for better i18n in Video widget (Props [@pedro-mendonca](https://github.com/pedro-mendonca), [#10315](https://github.com/elementor/elementor/issues/10315))
* Fix: Whatsapp share link does not escape HTML entities ([#10746](https://github.com/elementor/elementor/issues/10746))
* Fix: Invalid request error conflict with Yoast plugin and Share Buttons widget ([#10746](https://github.com/elementor/elementor/issues/10746))
* Fix: FontAwesome Pro icons not loading in edge cases
* Fix: Missing Dynamic indication in Range control ([#10835](https://github.com/elementor/elementor/issues/10835))
* Fix: Carousel spins multiple times when loading in Image Carousel widget
* Fix: Theme style overrides Lightbox Share links color
* Fix: Loading spinner placement glitch in URL control
* Fix: Missing separator control in Icon widget
* Fix: Dynamic Tags with the character “0” are not visible on frontend
* Fix: Dashboard menu UI glitch for non-Administrator role users

= 2.9.6 - 2020-03-12 =
* Fix: Removed redundant dynamic capabilities from all of color controls inside Group controls in Theme Style
* Fix: Global widget is clickable when editing Theme Style
* Fix: Dropcap not working immediately in Text Editor widget
* Security Fix: Enable Safe Mode only for `activate_plugins` capability

= 2.9.5 - 2020-03-09 =
* Tweak: Added new parameter to Swiper wrapper to limit breakpoint intervention ([#10525](https://github.com/elementor/elementor/issues/10525))
* Tweak: Updated E-Gallery library to v1.1.2
* Tweak: Show descriptive Pro Promotions only for Administrator role
* Fix: Inconsistent responsive display issue in the Editor when using Custom Breakpoints ([#10540](https://github.com/elementor/elementor/issues/10540))
* Fix: Editor not loading when the Library launches on load ([Topic](https://wordpress.org/support/topic/editor-broken-in-2-9-4/))
* Fix: Gallery Columns does not update immediately in the preview when in Masonry layout
* Fix: Navigator does not update according to the current site part being edited
* Fix: Hidden responsive indicator missing in editor
* Fix: Tabs widget title color not working on mobile

= 2.9.4 - 2020-03-04 =
* Tweak: Added support for Elementor Pro v2.9.0
* Tweak: Updated Swiper.js library to v5.3.6
* Tweak: Added version expected release date for Theme Style Custom CSS and Dynamic Color promotions
* Fix: Warning in `/base/controls-stack.php` when a 3rd party controls doesn’t have a default dynamic value ([#10578](https://github.com/elementor/elementor/issues/10578))
* Fix: Alignment issue on drag when not set to Infinite Loop in Image Carousel widget
* Fix: Title Color change both title and link color in Accordion widget

= 2.9.3 - 2020-02-26 =
* Tweak: Don't show the "Have a look" link after successful Theme Style publish
* Tweak: Show Database update notice only for users with `update_plugins` capability
* Tweak: Added Custom CSS promotion section in Theme Style
* Tweak: Added compatibility for Pro v2.9 features
* Fix: Warning in `/base/controls-stack.php` when a control doesn't have a dynamic capability ([#10578](https://github.com/elementor/elementor/issues/10578))
* Fix: Beta Tester sign up modal pops up multiple times after signing up
* Fix: `<a>` Links appear with `underline` text-decoration
* Fix: Shortcode doesn't render when exiting inline edit
* Fix: Whatsapp not sharing the link of the page in Share buttons widget
* Fix: Whatsapp share doesn't include line breaks between the page title and the URL in Share buttons widget
* Fix: Box Shadow doesn't display properly in Toggle widget
* Fix: Custom Link Attributes are not being applied in Icon Box widget
* Fix: Added sanitization to Custom Link Attributes control to avoid security issue (Props [@yzy9951](https://github.com/yzy9951))

= 2.9.2 - 2020-02-16 =
* Fix: Responsive issue when using Slides to Show control in carousel widgets ([#10540](https://github.com/elementor/elementor/issues/10540))
* Fix: Title and Description causes JS error in Lightbox in edge cases

= 2.9.1 - 2020-02-13 =
* Tweak: Added Native WordPress Gallery support for lightbox pagination
* Tweak: Updated eicons library to v5.6.2
* Fix: Popup builder not accessible when Pro plugin is active ([#10502](https://github.com/elementor/elementor/issues/10502))
* Fix: Pagination not working when one item is visible in carousel widgets ([#10508](https://github.com/elementor/elementor/issues/10508), [Topic](https://wordpress.org/support/topic/carrousel-is-blocked-with-version-2-9/))
* Fix: Empty panel after dragging a widget in edge cases
* Fix: Theme Style button being added in Theme Builder documents
* Fix: Google fonts enqueuing issue
* Fix: Preview mode not changing when dismissing the exit prompt
* Fix: Kit showing up in Finder results
* Fix: Missing preview icon in Finder
* Fix: Missing preview icon in Theme Builder footer

= 2.9.0 - 2020-02-10 =
* New: Introducing Theme Style - set your default HTML tags styling using Elementor ([#534](https://github.com/elementor/elementor/issues/534))
* New: Added Custom Link Attributes to Link Options to allow adding custom attributes to `<a>` tags ([#5716](https://github.com/elementor/elementor/issues/5716), [#3642](https://github.com/elementor/elementor/issues/3642), [#9225](https://github.com/elementor/elementor/issues/9225), [#9079](https://github.com/elementor/elementor/issues/9079))
* Tweak: Added Title & Description to Lightbox ([#9826](https://github.com/elementor/elementor/issues/9826), [#2502](https://github.com/elementor/elementor/issues/2502))
* Tweak: Added Full Screen option in Lightbox ([#5260](https://github.com/elementor/elementor/issues/5260))
* Tweak: Added direct sharing options in Lightbox ([#2502](https://github.com/elementor/elementor/issues/2502))
* Tweak: Added Zoom option in Lightbox ([#9399](https://github.com/elementor/elementor/issues/9399))
* Tweak: Moved `social-share.js` to Core instead of Pro ([Developers Blog Post](https://developers.elementor.com/migration-of-modules-to-core-in-2-9/))
* Tweak: Moved `link-actions.js` to Core instead of Pro and changed its name to `url-actions.js` ([Developers Blog Post](https://developers.elementor.com/migration-of-modules-to-core-in-2-9/))
* Tweak: Added dynamic capabilities to Title control in Toggle widget ([#10070](https://github.com/elementor/elementor/issues/10070))
* Tweak: Disabled autocomplete feature from the Color Picker ([#10030](https://github.com/elementor/elementor/issues/10030))
* Tweak: Added Mix social network to recommended tab in Social Icons widget ([#10099](https://github.com/elementor/elementor/issues/10099))
* Tweak: Removed StumbleUpon social network from recommended tab in Social Icons widget ([#10099](https://github.com/elementor/elementor/issues/10099))
* Tweak: Added `i18n` function to translation string in DB upgrades manager (Props [@ramiy](https://github.com/ramiy))
* Tweak: Added `vh` and `em` size units to Max Width control in Image widget ([#5376](https://github.com/elementor/elementor/issues/5376))
* Tweak: Added `vh` and `em` size units to Spacer widget
* Tweak: Exposed external API for Swiper instances ([Developers Blog Post](https://developers.elementor.com/expose-swiper-in-elementor/))
* Tweak: Updated Pickr library to v1.5.0
* Tweak: Updated Dialogs Manager library to v4.7.5
* Tweak: Added URL hash routing capability to Lightbox
* Tweak: Refactored panel controls UI
* Tweak: Updated Font Awesome library to v5.12.0
* Tweak: Converted `add_render_attributes` for custom links to `add_link_attributes()`
* Tweak: Added a mixin for `absolute-center` positioning
* Tweak: Updated `eicons` library to v5.6.1
* Tweak: Changed `eicon-zoom-in` icon to `eicon-zoom-in-bold` in Template Library
* Tweak: Allow background image and color being displayed in empty column
* Tweak: Converted `editor-base.js` to ES6
* Tweak: Added `featured_image` URL to frontend config
* Tweak: Made minor UI tweaks to "Recalc" button in System Info
* Tweak: Added inline editing capability to Progress Bar widget Title
* Tweak: Removed redundant display conditions from Drop Cap section in Text Editor widget
* Tweak: Remove redundant `label_block` parameters from control instances
* Tweak: Added 'alt' property when using SVG icons in Social Icons widget
* Tweak: Added translators comment explaining the `%s` placeholder in Video Provider control
* Tweak: Added Pro features descriptive promotions to Editor panel
* Tweak: Added Dynamic capabilities to be active by default in WYSIWYG Control
* Tweak: Changed the position of all panel tooltips to appear above the controls
* Tweak: Replaced nerd icons with new Elementor emojis
* Tweak: Added descriptive message suggesting backing up the Database before upgrading to Font Awesome 5
* Tweak: Changed panel arrow icon to chevron
* Tweak: Deprecated Typography section in Section & Column elements for users who didn't place values
* Fix: `playsinline` attribute missing when setting self-hosted video to Play on Mobile in Video widget ([#9892](https://github.com/elementor/elementor/issues/9892))
* Fix: Beta sign-up modal closes unexpectedly ([#10355](https://github.com/elementor/elementor/issues/10355))
* Fix: "Slides to Show" option doesn't work on Tablet view in Image Carousel widget ([#10227](https://github.com/elementor/elementor/issues/10227))
* Fix: Previous and Next buttons are not displaying on Safari in Media Carousel's Cube mode ([#9725](https://github.com/elementor/elementor/issues/9725))
* Fix: Form style being reset adding MailChimp/Getresponse action in Form widget ([#9313](https://github.com/elementor/elementor/issues/9313))
* Fix: Post Title and Archive Excerpt wrong values in edge cases
* Fix: Wrong `<select>` field width in "Add New" dialog
* Fix: Gap created by the "Add Media" button in Text Editor widget
* Fix: "Insert Template" library button glitch
* Fix: WordPress Media 'Image Details' fields are 100% width instead of contained
* Fix: Pause on hover can't be disabled in Image Carousel widget
* Fix: Aligned Dark UI Theme gradients in panel and library tabs
* Fix: Category Select2 dropdown stays above the view on scroll in Template Library modal
* Deprecated: See all deprecations to this version in our ([Developers Deprecations Post](https://developers.elementor.com/v2-9-0-planned-deprecations/))

= 2.8.5 - 2020-01-27 =
* Fix: Handle corrupted DB log
* Fix: Template inserted upside down in edge cases
* Fix: Added data sanitization on System Info
* Fix: Error when trying to edit widgets with `inline` Icons control before Font Awesome 5 migration

= 2.8.4 - 2020-01-19 =
* Tweak: Changed default color in Color Picker
* Fix: Curved edge with background color in Toggle widget ([#5156](https://github.com/elementor/elementor/issues/5156))
* Fix: Added sanitize data on create new template
* Fix: Inconsistent panel view when deleting all content
* Fix: Empty Typography control after Reset Style
* Fix: Inline sizing delay when position is set to Absolute/Fixed in Image widget
* Fix: Wrong sizing on undo/redo to Section element columns

= 2.8.3 - 2020-01-01 =
* Tweak: Improved accessibility to "Go Pro" menu item ([#9021](https://github.com/elementor/elementor/issues/9021))
* Tweak: Added new CLI command - User Connect
* Tweak: Updated Recommended Icons tab in Toggle and Accordion widgets
* Fix: Placement glitch when dragging a widget to a new section ([#9954](https://github.com/elementor/elementor/issues/9954))
* Fix: Controls popover closes when picking a color in it
* Fix: Dark mode style glitches in edge cases
* Fix: Correct calculation of usage data
* Fix: Pasting style of one Section to other changes the structure
* Fix: Long text overflow issue in Divider widget
* Fix: Scroll bars visible when not needed in Icon Library

= 2.8.2 - 2019-12-16 =
* Tweak: Improved hidden responsive elements visibility
* Fix: Autoplay not working in Image Carousel widget ([#9872](https://github.com/elementor/elementor/issues/9872))
* Fix: Logger fatal error on upgrade ([#9872](https://github.com/elementor/elementor/issues/9872))
* Fix: Negative custom shapes in Editor ([#9850](https://github.com/elementor/elementor/issues/9850))
* Fix: Render correct widget data in Global widgets
* Fix: `0` value in Dynamic Tags causes Undefined Index error

= 2.8.1 - 2019-12-11 =
* Fix: Style pasting issue on Columns ([#9811](https://github.com/elementor/elementor/issues/9811))
* Fix: Column duplication not working for Inner Section widget ([#9824](https://github.com/elementor/elementor/issues/9824))
* Fix: Redundant renders when changing colors in Color control
* Fix: Dark Mode glitches in WordPress widgets ([#9829](https://github.com/elementor/elementor/issues/9829))
* Fix: Repeater rows doesn't have `_id` in edge cases
* Fix: Connect issue for Multisite users
* Fix: Dynamic tag fallback does not handle '0' character

= 2.8.0 - 2019-12-09 =
* New: Introducing new Color Picker control with Saved Colors built-in ([#6968](https://github.com/elementor/elementor/issues/6968), [#8982](https://github.com/elementor/elementor/issues/8982), [Developers Blog Post](https://developers.elementor.com/elementor-2-8-new-color-picker/]))
* New: Introducing Dark Mode UI theme ([#9263](https://github.com/elementor/elementor/issues/9263), [#8249](https://github.com/elementor/elementor/issues/8249), [#9125](https://github.com/elementor/elementor/issues/9125))
* New: User Preferences section in Editor Panel menu
* Tweak: Better responsive visibility indication ([#8020](https://github.com/elementor/elementor/issues/8020), [#4775](https://github.com/elementor/elementor/issues/4775))
* Tweak: Added `background-size` and `background-position` controls to Background Slideshow ([#9199](https://github.com/elementor/elementor/issues/9199))
* Tweak: Removed Google+ network from "Recommended" tab in Social Icons widget ([#9393](https://github.com/elementor/elementor/issues/9393))
* Tweak: Replaced default Google+ network icon with YouTube icon in Social Icons widget
* Tweak: Added dynamic capabilities to alert widget ([#9436](https://github.com/elementor/elementor/issues/9436))
* Tweak: Added "Play on Mobile" option to allow iOS autoplay to Video widget ([#3442](https://github.com/elementor/elementor/issues/3442))
* Tweak: Added inline skin for Icon control
* Tweak: Added `elementor/settings/controls/checkbox_list_cpt/post_type_objects` filter to control over displayed CPT in WordPress Dashboard UI (Props [@sc0ttkclark](https://github.com/sc0ttkclark))
* Tweak: Moved "Editing Handles" and "Lightbox in editor" options to the new "Preferences" section
* Tweak: Added `playsinline` attribute to Vimeo and YouTube sources to allow autoplay on iOS devices in Background Video
* Tweak: Added Documents count to System Info
* Tweak: Added global utility function for adding link attributes in Button widget
* Tweak: Re-designed responsive mode switcher control
* Tweak: Re-designed alerts and notices in the Editor Panel
* Tweak: Improved styling of checkboxes and radio inputs
* Tweak: Changed "Custom Positioning" section label to "Positioning"
* Tweak: Allow access to Templates Library for connected users only
* Tweak: Changed icon control skin to "Inline" in Toggle and Accordion widgets
* Tweak: Added Icon Manager "Recommended" tab in Toggle and Accordion widgets
* Tweak: Changed all occurrences of `text-overflow: ellipsis` to a single `mixin`
* Tweak: Added "Pause On Interaction" option to Image Carousel widget
* Tweak: Updated `e-icons` library to v5.5.0
* Tweak: Updated `e-gallery` library to v1.1.0
* Tweak: Dropped Support for WP v4.9, now supporting WP v5.0+
* Tweak: Dropped delete revision option in Revisions Panel since WordPress v5.3 ([Topic](http://core.trac.wordpress.org/ticket/43709))
* Tweak: Added compatibility with WordPress v5.3
* Fix: Use CSS Flex to align and order button icon ([#561](https://github.com/elementor/elementor/issues/561))
* Fix: Remove Ninja Forms compatibility script which causes server issues ([#8267](https://github.com/elementor/elementor/issues/8267))
* Fix: Added `title` attribute to embedded iframes ([#9374](https://github.com/elementor/elementor/issues/9374), Props [@shipley-dcc](https://github.com/shipley-dcc))
* Fix: Reset style in a button doesn't work on colors ([#8454](https://github.com/elementor/elementor/issues/8454))
* Fix: No fallback when SVG file doesn't exist ([#9481](https://github.com/elementor/elementor/issues/9481))
* Fix: Custom shapes "negative" support fix ([#9761](https://github.com/elementor/elementor/issues/9761))
* Fix : Shapes SVG include PHP Parse Error If the uploaded SVG file contain `<?xml version="1.0" encoding="UTF-8"?>` ([#9693](https://github.com/elementor/elementor/issues/9693), Props [@MarieComet](https://github.com/MarieComet))
* Fix: Added better output escaping in the attributes for checkbox lists in Admin forms (Props [@MarieComet](https://github.com/MarieComet))
* Fix: Adding a link overrides the Title and Description colors in Testimonial widget
* Fix: Removed redundant Editor Panel Spacer in Image Carousel widget
* Fix: "Delete All Content" doesn't close current widget editing options
* Fix: Pause on hover option doesn't work in Image Carousel widget
* Fix: Limit transition duration in Ken Burns CSS only to `transform` property
* Fix: Recommended tab icons don't change when there's more than one `Icons` control per widget
* Fix: Hidden sticky section generates redundant scroll offset when using Anchors
* Fix: Inserting a saved section as a template uses the same `ID`
* Fix: Double rendering of elements in Editor
* Deprecated: See all deprecations to this version in our [Developers Deprecations Post](https://developers.elementor.com/v2-8-0-planned-deprecations/)

= 2.7.6 - 2019-12-08 =
* Fix: Transition Duration option not applying to elements background
* Fix: Hide Beta Testers signup form if the user already subscribed
* Fix: Added HTML escaping to `Admin` class and to System Info

= 2.7.5 - 2019-10-28 =
* Tweak: Changed the "Finder" icon in the Editor panel
* Fix: Added official color support for `linkedin-in` icon in Social Icons widget ([#9298](https://github.com/elementor/elementor/issues/9298))
* Fix: `Ctrl/CMD + Shift + L` not opening Library modal
* Fix: Clear Log button HTML shows in System Info Copy & Paste section
* Fix: Ken burns effect not working on the 1st slide if Infinite Loop option is turned off in Background Slideshow

= 2.7.4 - 2019-10-06 =
* Tweak: Improved filtering animation behavior in Gallery widget
* Fix: Icon custom colors being overridden by styling custom colors in Social Icons widget
* Fix: Added `SVG` custom color support for Social Icons widget
* Fix: Elements not being displayed when it has the value `0`
* Fix: Pagination glitch in image carousel widget
* Fix: Select2 throws JS console error when trying to unset a dropdown value in Templates modal
* Fix: Background Slideshow overrides the Columns' border-radius
* Fix: Tabs not working after previewing a template in Templates modal

= 2.7.3 - 2019-09-24 =
* Tweak: Updated E-gallery library to v1.0.1
* Fix: Images overlap issue in Image Carousel widget ([Topic](https://wordpress.org/support/topic/elementor-image-carousel-2/#post-11943476))
* Fix: Removed extra character in Divider widget ([#9102](https://github.com/elementor/elementor/issues/9102))
* Fix: Console error after resetting "Background Slideshow" gallery
* Fix: Popup templates not visible in My Templates tab on import action
* Fix: Panel spinner issue caused by 3rd party addons when activating Safe Mode
* Fix: Lightbox won't close on background click in Image widget
* Fix: "Need Help" hover UI glitch in RTL
* Fix: SVG icon missing in Icon List widget

= 2.7.2 - 2019-09-16 =
* Fix: Data updater stuck in site with large database ([Topic](https://wordpress.org/support/topic/the-elementor-data-updater-problems-continue/), [Topic](https://wordpress.org/support/topic/v2-7-not-stable/))
* Fix: Added backward compatibility for deprecated hooks in page settings ([#9060](https://github.com/elementor/elementor/issues/9060), [#9080](https://github.com/elementor/elementor/issues/9080))
* Fix: Added support for custom document in `autosave` ([#9070](https://github.com/elementor/elementor/issues/9070))
* Fix: Changed the default `slidesPerGroup` from 2 to 1 in Image Carousel widget

= 2.7.1 - 2019-09-10 =
* Fix: Self Hosted video lightbox closing when clicking on the video ([#8931](https://github.com/elementor/elementor/issues/8931))
* Fix: Downgrade from v2.7.0 causes 500 errors
* Fix: Vertical alignment issue in Safari browser ([#9034](https://github.com/elementor/elementor/issues/9034))
* Fix: `contains` and `!contains` control conditions ([#9043](https://github.com/elementor/elementor/issues/9043))
* Fix: Use background updater for v2.7 script task ([Topic](https://wordpress.org/support/topic/v2-7-not-stable/))
* Fix: Backwards compatibility for previous versions using Divider widget

= 2.7.0 - 2019-09-08 =
* New: Added background slideshow to Section, Column and Inner Section elements ([#2898](https://github.com/elementor/elementor/issues/2898), [#4022](https://github.com/elementor/elementor/issues/4022))
* New: Editor JS API to improve capabilities and stability ([Developers Blog Post](https://developers.elementor.com/elementor-2-7-new-editor-js-api-e/))
* New: Added additional divider styles to Divider widget ([#7418](https://github.com/elementor/elementor/issues/7418))
* Tweak: Background videos now support Vimeo as a source ([#1903](https://github.com/elementor/elementor/issues/1903))
* Tweak: Added the option to add Icon and Text to Divider widget ([#7418](https://github.com/elementor/elementor/issues/7418))
* Tweak: Converted all widgets JS handlers to ES6 classes ([Developers Blog Post](https://developers.elementor.com/building-a-simple-custom-widget-with-javascript/), [Developers Documentation](https://developers.elementor.com/creating-a-new-widget/adding-javascript-to-elementor-widgets/))
* Tweak: Added option to select the version you rollback to in "Version Control" tool
* Tweak: Use `swiper.js` instead of `slick.js` in Image Carousel widget ([Developers Blog Post](https://developers.elementor.com/elementor-2-7-moving-sliders-from-slick-to-swiper/))
* Tweak: Implemented virtual list render in Icons Library to improve performance and stability
* Tweak: Added support of `wp_body_open` in Canvas template
* Tweak: Editor Panel UI tweaks
* Tweak: Updated Gallery control UI
* Tweak: Moved structure control into section panel in Section element
* Tweak: Added option to allow background video to play on mobile devices if device support it
* Tweak: Added more post statuses to show in the Finder ([#8175](https://github.com/elementor/elementor/issues/8175))
* Tweak: Added `Space-around`, `Space-between` and `Space-evenly` to Vertical Align options in Section element
* Tweak: Added filter for additional styles by 3rd party plugins `elementor/divider/styles/additional_styles` to Divider widget
* Tweak: Removed "Need Help?" button from WP widgets
* Tweak: Updated `Eicons` library to v5.4.0
* Fix: Background video plays on mobile devices in some cases (#8782, [Developers Blog Post](https://developers.elementor.com/background-video-in-mobile-mode/))
* Fix: Icon List alignment issue ([#8539](https://github.com/elementor/elementor/issues/8539))
* Fix: Two clicks needed to start Vimeo videos with image overlay
* Fix: Init navigator only once when changing page template
* Fix: Added backwards compatibility for `Controls_Manager::add_tab()` and `\Elementor\Core\Settings\Manager::add_settings_manager()`
* Fix: Carousels navigation arrows causes horizontal scroll when setting to `Outside`
* Fix: Heading widget with the character "0" is not visible on frontend
* Deprecated: Removed old deprecated aliases ([Developers Blog Post](https://developers.elementor.com/v2-7-0-planned-deprecations/))

= 2.6.8 - 2019-08-07 =
* Tweak: Added SVG import/export support to Icons control
* Fix: Empty `caps` while checking user `caps` ([#8732](https://github.com/elementor/elementor/issues/8732))
* Fix: Rotate control not working in Icon widget responsive modes ([#8753](https://github.com/elementor/elementor/issues/8753))
* Fix: Counter widget start number greater than 999
* Fix: Avoid migrating old Icon value if new one exists on import
* Fix: Editor not being loaded when using an Icon from removed Icon Set

= 2.6.7 - 2019-07-30 =
* Tweak: Run `.htaccess` inspection only when needed
* Tweak: UI glitches in `select2` control
* Tweak: `get_style_depends` styles are now loaded in editor preview
* Fix: Avoid false-positive editor loading error ([#8706](https://github.com/elementor/elementor/issues/8706))
* Fix: Disable browser suggestions on panel elements search input ([#6581](https://github.com/elementor/elementor/issues/6581))
* Fix: Contributor role can view other contributors draft and pending posts when Elementor is installed ([#8689](https://github.com/elementor/elementor/issues/8689))
* Fix: Save changed before previewing a revision

= 2.6.6 - 2019-07-23 =
* Fix: WordPress editor is open by default ([#8628](https://github.com/elementor/elementor/issues/8628), [#8647](https://github.com/elementor/elementor/issues/8647))
* Fix: Icon spacing disappeared after upgrading to Font Awesome 5 ([#8609](https://github.com/elementor/elementor/issues/8609))
* Fix: Star icon appears instead of an unset icon in Icon Box widget after upgrading to Font Awesome 5 ([#8596](https://github.com/elementor/elementor/issues/8596))
* Fix: Empty icon library by Using JS files instead of JSON for icon lists
* Fix: `Preview Could Not be Loaded` message displayed if `$_SERVER['SERVER_SOFTWARE']` is empty
* Fix: Navigator Indicators RTL UI glitches

= 2.6.5 - 2019-07-18 =
* Fix: Reverted the changes in Section and Column Vertical Alignment control

= 2.6.4 - 2019-07-17 =
* Tweak: Added CSS variable for admin font family
* Tweak: Updated dialog library
* Tweak: Improved `.htaccess` error message in `Preview Could Not Be Loaded` message
* Fix: `Condition` and `Conditions` not working together ([#8233](https://github.com/elementor/elementor/issues/8233))
* Fix: Pages are always displayed in `draft` status ([#8510](https://github.com/elementor/elementor/issues/8510))
* Fix: Incorrect Absolute position dragging values in RTL ([#7719](https://github.com/elementor/elementor/issues/7719))
* Fix: SVG icon hover color in Button widget

= 2.6.3 - 2019-07-15 =
* Tweak: Improve Icon control preview color for better visibility ([#8530](https://github.com/elementor/elementor/issues/8530))
* Tweak: Cleaning all output buffering in order to enable Gzip

= 2.6.2 - 2019-07-14 =
* Tweak: Make sure activeTab exists in Icon library
* Fix: Star rating widget alignment is not responsive ([#8444](https://github.com/elementor/elementor/issues/8444))
* Fix: Temporarily reverted `application/json` content type to support various server configurations
* Fix: Progress Bar typography backward compatibility
* Fix: Missing `fas` icons in Social Icons widget
* Fix: Navigator Indicators tooltip location
* Fix: Added Icon List backward compatibility on template import

= 2.6.1 - 2019-07-10 =
* Tweak: Added responsive controls to Icon size and Icon rotation in Icon widget
* Fix: Preview Could Not Be Loaded `.htaccess` error if permalink structure not set
* Fix: Added backward compatibility for Icon control
* Fix: UI glitches in the global lightbox modal

= 2.6.0 - 2019-07-09 =
* New: Introducing Icon Manager - the new way to add icons into your page ([#110](https://github.com/elementor/elementor/issues/110))
* New: Introducing SVG file library ([#5570](https://github.com/elementor/elementor/issues/5570))
* New: Replaced Font Awesome 4 with Font Awesome 5 ([#4430](https://github.com/elementor/elementor/issues/4430))
* New: Added Help links to elements for better support flow
* New: Added Navigator indicators for Custom Position ([#2180](https://github.com/elementor/elementor/issues/2180))
* New: Introducing Deprecated Notice control for developers ([Development Doc](https://developers.elementor.com/elementor-controls/deprecated-notice-control/))
* Tweak: Added 9:16 Aspect ratio (vertical video) support for Video widget ([#7051](https://github.com/elementor/elementor/issues/7051))
* Tweak: Set pre-selected attachment when opening the media modal ([#7937](https://github.com/elementor/elementor/issues/7937))
* Tweak: Added more style options for Progress Bar widget ([#3413](https://github.com/elementor/elementor/issues/3413))
* Tweak: Added icon alignment option to icon list ([#8219](https://github.com/elementor/elementor/issues/8219))
* Tweak: Added option to hide columns in Navigator ([#7863](https://github.com/elementor/elementor/issues/7863))
* Tweak: Added vertical alignment option to Image Carousel ([#6963](https://github.com/elementor/elementor/issues/6963))
* Tweak: Added Responsive option for the Content Align in Column ([#2554](https://github.com/elementor/elementor/issues/2554))
* Tweak: Removed `Prevent Scroll` option from Google Maps widget which now defaults in the map origin ([#8244](https://github.com/elementor/elementor/issues/8244))
* Tweak: Reduce-motion accessibility support for CSS animation library ([#7968](https://github.com/elementor/elementor/issues/7968))
* Tweak: Added start & end time for self-hosted background video ([#7941](https://github.com/elementor/elementor/issues/7941))
* Tweak: Added Play once option for background video ([#5129](https://github.com/elementor/elementor/issues/5129))
* Tweak: Added the `playsinline` attribute to autoplay background video on iOS ([#8198](https://github.com/elementor/elementor/issues/8198))
* Tweak: Added `text-shadow` option to Button widget ([#7317](https://github.com/elementor/elementor/issues/7317))
* Tweak: Set `$fonts_to_enqueue` as public to allow manual enqueue of fonts ([#7622](https://github.com/elementor/elementor/issues/7622))
* Tweak: Show dashboard notices for admin role only ([#7304](https://github.com/elementor/elementor/issues/7304))
* Tweak: Added Viber icon for Social Icons widget ([#4430](https://github.com/elementor/elementor/issues/4430))
* Tweak: Added dynamic capabilities to link control in Social Icons widget ([#8097](https://github.com/elementor/elementor/issues/8097))
* Tweak: Added option to pick custom colors per icon in Social Icons widget ([#4430](https://github.com/elementor/elementor/issues/4430))
* Tweak: Added default background color to Social Icons widget
* Tweak: Added opt-in form to Elementor updates for beta testers
* Tweak: Updated E-icons library to v5.3.2
* Tweak: Removed all Font Awesome 4 dependencies
* Tweak: Clear 3rd party cache plugins on every change in Maintenance Mode
* Tweak: Using `application/json` content type in order to avoid double zipping by the server to reduce load panel errors
* Tweak: Added control to support Exit Animations
* Tweak: Added editor notices bar for admin role only
* Tweak: Moved elements PHP handles to JS - resolves double Editing Handles in the Post Content widget
* Tweak: Added custom messages for "Preview could not be loaded" state
* Tweak: Added focus state emphasis to Dimensions control
* Tweak: Redesigned Media control
* Tweak: Use `wp_register_style` to allow widgets to enqueue icon styles
* Fix: Open the correct video when you have multiple images with the same video link in the same Media Carousel ([#8047](https://github.com/elementor/elementor/issues/8047))
* Fix: Added escaping in the template type ([#8435](https://github.com/elementor/elementor/issues/8435))
* Fix: Compression encoding for `gzip` to `brotli` conversions (Props [@pingram3541](https://github.com/pingram3541))
* Fix: Vimeo video lightbox is not playing automatically
* Fix: Backslash was removed from Custom CSS in page settings
* Fix: Set LTR direction only to `input` and `textarea` in RTL view
* Fix: Color Picker UI glitches in RTL view
* Fix: Avoid adding CSS for the first post in archive pages

= 2.5.16 - 2019-05-28 =
* Tweak: Added `reduce-motion` accessibility support for CSS animation library ([#7968](https://github.com/elementor/elementor/issues/7968), Props [@drawcard](https://github.com/drawcard))
* Fix: Tabs Widget compatibility for IE ([#8123](https://github.com/elementor/elementor/issues/8123))
* Fix: Admin dashboard dialog button UI glitch

= 2.5.15 - 2019-05-07 =
* Fix: Param type in doc block is partial ([#7988](https://github.com/elementor/elementor/issues/7988))
* Fix: Paste Style changes widget title in Navigator ([#7931](https://github.com/elementor/elementor/issues/7931))

= 2.5.14 - 2019-04-16 =
* Tweak: Remove default values on update to avoid 413 error ([#7842](https://github.com/elementor/elementor/issues/7842))
* Fix: Load minified `common-modules.js` & `editor-modules.js` instead of full version

= 2.5.13 - 2019-04-10 =
* Fix: Resize viewport not working properly ([#7795](https://github.com/elementor/elementor/issues/7795), [Topic](https://wordpress.org/support/topic/width-is-not-responding-automatically/), [Topic](https://wordpress.org/support/topic/stretch-section-problem/))
* Fix: Remove Shape Divider in the editor if set to `None`

= 2.5.12 - 2019-04-08 =
* Fix: DB updates process not running in edge cases ([#7725](https://github.com/elementor/elementor/issues/7725))
* Fix: Column width issue after Column Gap value changed ([#7718](https://github.com/elementor/elementor/issues/7718))
* Fix: Load minified `frontend-modules.js` instead of full version ([#7082](https://github.com/elementor/elementor/issues/7082))
* Fix: Removed source map reference from minified versions of JS files ([#7082](https://github.com/elementor/elementor/issues/7082))
* Fix: Missing section handles while using `overflow: hidden` option
* Fix: Removed condition from content style in Accordion widget
* Fix: Dialogs close button in RTL layout
* Fix: Self-hosted background video resize issue
* Fix: Dynamic Tag dropdown in RTL
* Fix: Color picker UI glitch

= 2.5.11 - 2019-03-31 =
* Tweak: Removed duplicated grid style from frontend.css
* Fix: Document settings not saving ([#7629](https://github.com/elementor/elementor/issues/7629))
* Fix: Date-Time control triggering unnecessary `edit` event

= 2.5.10 - 2019-03-26 =
* Fix: Preview for static homepage ([#7440](https://github.com/elementor/elementor/issues/7440))
* Fix: Added compatibility for Gutenberg plugin v5.3.0+ ([#7557](https://github.com/elementor/elementor/issues/7557))
* Fix: Slider control not setting correct position on Undo/Redo shortcuts
* Fix: Duplicated shape divider issue in editor view

= 2.5.9 - 2019-03-18 =
* Tweak: Modal style improvements
* Tweak: Added preview debug link to "Preview could not be loaded" message
* Fix: First section delete action not saving ([#7477](https://github.com/elementor/elementor/issues/7477))
* Fix: Compatibility issue with 3rd party plugins ([#7467](https://github.com/elementor/elementor/issues/7467))

= 2.5.8 - 2019-03-15 =
* Fix: Restore `wp_localize_script` for Gutenberg editor

= 2.5.7 - 2019-03-14 =
* Fix: changed `ElementorGutenbergSettings` print order ([#7457](https://github.com/elementor/elementor/issues/7457))

= 2.5.6 - 2019-03-14 =
* Tweak: Minor UI improvement in Slider Control
* Tweak: Added support for range handles in Slider Control
* Fix: Stretch Inner Section in the editor ([#7430](https://github.com/elementor/elementor/issues/7430))
* Fix: Ensure print order of Elementor config JS variables ([#7443](https://github.com/elementor/elementor/issues/7443))
* Fix: Inline elements not working on new pages ([#7433](https://github.com/elementor/elementor/issues/7433))
* Fix: Removed media `id` when attachment is missing

= 2.5.5 - 2019-03-11 =
* Tweak: Support gzipped Elementor Ajax data when GZIP is enabled
* Tweak: Added labels and scales to Slider control
* Fix: Device mode detection in IE and Edge browser ([#7356](https://github.com/elementor/elementor/issues/7356))
* Fix: Positioning issue while dragging inline text widgets
* Fix: Empty widget calculation according to the new column flexbox model

= 2.5.4 - 2019-03-10 =
* Tweak: Added flexbox notice dialog
* Fix: Backward compatibility for flexbox property ([#7366](https://github.com/elementor/elementor/issues/7366))
* Fix: Allow `None` value for Entrance Animation control ([#7355](https://github.com/elementor/elementor/issues/7355))
* Fix: Device mode detection in IE and Edge browser ([#7356](https://github.com/elementor/elementor/issues/7356))
* Fix: Revert self hosted video background fix ([#7374](https://github.com/elementor/elementor/issues/7374))
* Fix: Removed Delimiter parameter form `ucwords` for older PHP compatibility
* Fix: Slider control returns wrong value
* Fix: Slider control for RTL

= 2.5.3 - 2019-03-06 =
* Tweak: Reduced Editor memory usage by moving common controls injection to the frontend ([#7308](https://github.com/elementor/elementor/issues/7308))
* Tweak: Moved sync library from POST to GET method
* Fix: `ucwords` support for older php versions ([#7327](https://github.com/elementor/elementor/issues/7327), [#7310](https://github.com/elementor/elementor/issues/7310))
* Fix: Background self hosted videos responsive
* Fix: Group controls `conditions` support

= 2.5.2 - 2019-03-05 =
* Fix: Custom space between widgets override ([#7309](https://github.com/elementor/elementor/issues/7309))
* Fix: Changed the default width of Absolute & Fixed position widget ([#7311](https://github.com/elementor/elementor/issues/7311))
* **Note: This fix might affect previous custom positioning settings, if you have previously used position absolute or position fixed, please review your site.**

= 2.5.1 - 2019-03-04 =
* Fix: Inline Width (auto) not working ([#7293](https://github.com/elementor/elementor/issues/7293))

= 2.5.0 - 2019-03-04 =
* New: Added Position Absolute & Position Fixed for widgets ([#5568](https://github.com/elementor/elementor/issues/5568))
* New: Added inline & custom width options to place widgets side by side without columns ([#4960](https://github.com/elementor/elementor/issues/4960))
* New: Added responsive options for Column ([#2965](https://github.com/elementor/elementor/issues/2965), [#6898](https://github.com/elementor/elementor/issues/7104), Props [@wayheming](https://github.com/wayheming))
* New: Added Columns for Text Editor widget ([#7104](https://github.com/elementor/elementor/issues/7104))
* New: Added `space-between`, `space-around` & `space-evenly` for Vertical Alignment in Column ([#5083](https://github.com/elementor/elementor/issues/5083))
* New: Added Horizontal Alignment in Column for inline widget
* New: Added responsive capabilities for Entrance Animation ([#1639](https://github.com/elementor/elementor/issues/1639))
* New: Added `elementor/template/viewport_tag` filter hook to Meta Viewport tag ([#7043](https://github.com/elementor/elementor/issues/7043))
* Tweak: Improved editor loading time and performance by ~50%
* Tweak: Remember last editing tab per element in the editor panel for better workflow ([#7087](https://github.com/elementor/elementor/issues/7087))
* Tweak: Added text shadow & background color controls for caption in Image widget (Props [@ramiy](https://github.com/ramiy))
* Tweak: Added access to super admin role in Maintenance Mode (Props [@GermanKrutov](https://github.com/GermanKrutov))
* Tweak: Added vw unit support for Typography size control
* Tweak: Added vw unit support for Custom Min. Height control in section
* Tweak: Added overflow option for section
* Tweak: Renamed `Content Position` control to `Vertical Align` in column layout
* Tweak: Renamed `Scrolling Effects` section to `Motion Effects`
* Tweak: Added Dynamic capabilities to Inner Section CSS class and CSS ID ([#6779](https://github.com/elementor/elementor/issues/6779))
* Tweak: Added Dynamic capabilities to Section CSS class and CSS ID ([#6779](https://github.com/elementor/elementor/issues/6779))
* Tweak: Added Dynamic capabilities all widgets CSS class and CSS ID ([#6779](https://github.com/elementor/elementor/issues/6779))
* Tweak: Added Dynamic capabilities to Button CSS ID ([#6779](https://github.com/elementor/elementor/issues/6779))
* Fix: Separator inside Repeater control ([#6851](https://github.com/elementor/elementor/issues/6851))
* Fix: Selectors not working in dynamic tags in edge cases (Props [@crazypsycho](https://github.com/crazypsycho))
* Fix: Entrance animations glitches ([#6945](https://github.com/elementor/elementor/issues/6945))
* Fix: Library "Blocks" tab empty
* Fix: Custom shape dividers not loading in editor ([#6550](https://github.com/elementor/elementor/issues/6550))
* Fix: WP-CLI Flush CSS command glitch in multisite ([#7190](https://github.com/elementor/elementor/issues/7190))
* Fix: PHP 7.3 Compatibility when saving settings ([#6890](https://github.com/elementor/elementor/issues/6890))

= 2.4.7 - 2019-02-18 =
* Fix: Incorrect device mode detection in Safari ([#7036](https://github.com/elementor/elementor/issues/7036))
* Fix: Elementor dashboard templates URL corrupted links in edge cases
* Fix: Sticky offset handling for menu anchor
* Fix: Avoid WP admin bar handling errors

= 2.4.6 - 2019-02-11 =
* Tweak: Use `<a>` for editor panel links ([#6767](https://github.com/elementor/elementor/issues/6767), [#7025](https://github.com/elementor/elementor/issues/7025))
* Fix: FireFox glitch in the color picker ([#6968](https://github.com/elementor/elementor/issues/6968))
* Fix: Horizontal scroll in Icon List widget ([#6558](https://github.com/elementor/elementor/issues/6558))
* Fix: PHP notice when user has no capabilities ([#6936](https://github.com/elementor/elementor/issues/6936))
* Fix: "Prevent Scroll" in popup options didn't work in edge cases

= 2.4.5 - 2019-01-30 =
* Tweak: Updated Eicons v4.2.0
* Fix: Control conditions not working for toggle popover ([#6780](https://github.com/elementor/elementor/issues/6780))
* Fix: URLs with hash in admin cause JS error ([#6902](https://github.com/elementor/elementor/issues/6902))
* Fix: Wrong section structure in the panel

= 2.4.4 - 2019-01-24 =
* Tweak: Added 1:1 aspect ratio to Video widget
* Tweak: Added ability to add condition/s for tabs control wrapper ([#6830](https://github.com/elementor/elementor/issues/6830))
* Fix: Template search with no categories ([#6810](https://github.com/elementor/elementor/issues/6810))
* Fix: Make sure browser has access to `localStorage`
* Fix: Removed Finder from the Customizer
* Fix: Editor UI glitch in Firefox browser

= 2.4.3 - 2019-01-21 =
* Tweak: Update `width` control label in Image Box widget ([#6808](https://github.com/elementor/elementor/issues/6808))
* Fix: PHP warning in self hosted video `render_pain_content()`
* Fix: Responsive `background-attachment` issue

= 2.4.2 - 2019-01-20 =
* Tweak: Better duplicate Error log entries handling
* Tweak: Split and merge similar translation strings
* Fix: Missing manual caption style in Image widget ([#6791](https://github.com/elementor/elementor/issues/6791))
* Fix: JS handlers not working in editor for other templates
* Fix: Log only Elementor related errors
* Fix: Background updates total iterations

= 2.4.1 - 2019-01-15 =
* Tweak: Avoid widget rendering on `box-shadow` and `text-shadow` changes ([#6737](https://github.com/elementor/elementor/issues/6737))
* Fix: Capital letters not working in anchors
* Fix: Admin menu position incorrect format
* Fix: Avoid duplicate run of element handlers on nested documents

= 2.4.0 - 2019-01-14 =
* New: Added Safe Mode for scenarios that the editor didn't load properly
* New: Added `<!--more-->` tag support ([#462](https://github.com/elementor/elementor/issues/462))
* New: Added Read More widget aka `<!--more-->` tag
* New: Added Categories taxonomy for Template Library ([#886](https://github.com/elementor/elementor/issues/886))
* New: Added responsive capabilities for Background control ([#2355](https://github.com/elementor/elementor/issues/2355))
* New: Added custom option for `background-size` & `background-position` ([#2571](https://github.com/elementor/elementor/issues/2571))
* New: Added responsive capabilities for Border control ([#3243](https://github.com/elementor/elementor/issues/3243), [#5284](https://github.com/elementor/elementor/issues/5284))
* New: Added External URL source for Video widget
* Tweak: Added a notice when clicking on Back to WordPress editor button ([#5597](https://github.com/elementor/elementor/issues/5597))
* Tweak: Added Link & Globe for Social Icons widget ([#6405](https://github.com/elementor/elementor/issues/6405))
* Tweak: Added `elementor/controls/animations/additional_animations` hook for adding custom Entrance Animations ([#6545](https://github.com/elementor/elementor/issues/6545))
* Tweak: Added `elementor/controls/hover_animations/additional_animations` hook for adding custom Hover Animations ([#6545](https://github.com/elementor/elementor/issues/6545))
* Tweak: Reorganized admin menu for Elementor settings & Template Library
* Tweak: Exclude library CPT from Yoast SEO sitemap
* Tweak: Added attributes for column wrappers (Props [@thenovacreator](https://github.com/thenovacreator))
* Tweak: Added `autocomplete` parameter for URL control (default: true)
* Tweak: Added sanitize data on Menu Anchor ID
* Tweak: Added dynamic options for Testimonial widget
* Tweak: Added PHP error log to System Info
* Tweak: Added Quick Edit option for Template Library
* Tweak: Renamed "Content" tab in Templates Library to "Page"
* Fix: Inline editing issue for Repeater control ([#6445](https://github.com/elementor/elementor/issues/6445))
* Fix: Panel footer menu not closing on background click ([#6547](https://github.com/elementor/elementor/issues/6547))
* Fix: Typography control doesn't generate default CSS ([#6500](https://github.com/elementor/elementor/issues/6500))
* Fix: Alignment issue in Icon List widget ([#6507](https://github.com/elementor/elementor/issues/6507))

= 2.3.8 - 2018-12-20 =
* Fix: Editor not working caused by last version

= 2.3.7 - 2018-12-20 =
* Fix: Invalid type in Import templates ([#6483](https://github.com/elementor/elementor/issues/6483))
* Fix: Save global templates
* Fix: WP widgets compatibility
* Fix: Responsive device buttons always shown

= 2.3.6 - 2018-12-17 =
* Fix: `Back to WordPress Editor` not working when meta-boxes are present ([#6437](https://github.com/elementor/elementor/issues/6437))
* Fix: Register documents only if needed
* Fix: Style glitch in the responsive control ([#6227](https://github.com/elementor/elementor/issues/6227))

= 2.3.5 - 2018-12-11 =
* Tweak: Load `elementor_debug_log` option only on System Info page
* Fix: Maintenance Mode admin console issue
* Fix: Elementor stuck on loader instead of `The Content Area Was Not Found`
* Fix: Temporary compatibility workaround for Chrome v70+ dragging above nested iframe issue
* Fix: `border-radius` for Video not displayed in Safari browser
* Fix: Avoid `z-index` changes by `nanocss` in build process

= 2.3.4 - 2018-11-29 =
* Tweak: Make sure "Edit with Elementor" action link is the last link in My Templates
* Fix: CSS parsing for non-existing controls ([#6296](https://github.com/elementor/elementor/issues/6296))
* Fix: Shows only editable documents in Finder

= 2.3.3 - 2018-11-28 =
* New: Added `elementor/frontend/{$element_type}/should_render` filter
* Tweak: Added a new `render_html_attributes` method
* Tweak: Added placeholder support for `date-time` control
* Tweak: Added ability to set a default value in a control `selectors` settings ([#6241](https://github.com/elementor/elementor/issues/6241))
* Tweak: Open links in new tab on `Ctrl + Enter` ([#6258](https://github.com/elementor/elementor/issues/6258))
* Tweak: Set the correct Dynamic tag categories for Self Hosted video
* Fix: Video lightbox won't open in some configurations
* Fix: Self-hosted video lightbox width
* Fix: Removed invalid `href` attribute in Tabs widget ([#6261](https://github.com/elementor/elementor/issues/6261))
* Fix: Restored element / widget hooks priority ([#6189](https://github.com/elementor/elementor/issues/6189))
* Fix: Drag the direct inner element only
* Fix: Show unsupported templates on My Templates list
* Fix: Make sure the document type exists in documents manager
* Fix: Set default for `slides to scroll` in Image Carousel widget

= 2.3.2 - 2018-11-17 =
* Tweak: Added `vw` unit to base control
* Tweak: Added WP Plugins and Users links to Finder
* Tweak: Updated Swiper progress style to new version
* Fix: Missing "View Page" and "Exit to Dashboard" in editor menu
* Fix: Background video position in edge cases
* Fix: Incorrect keyboard shortcut in Hotkeys cheatsheet
* Fix: Fatal error for 3rd party plugins ([#6192](https://github.com/elementor/elementor/issues/6192))

= 2.3.1 - 2018-11-12 =
* Fix: Print empty elements but not empty widgets ([#6134](https://github.com/elementor/elementor/issues/6134))
* Fix: Removed `figcaption` tag when no caption is set ([#6134](https://github.com/elementor/elementor/issues/6134))

= 2.3.0 - 2018-11-12 =
* New: Introducing Finder - The Easiest Way to Switch Between Pages ([#292](https://github.com/elementor/elementor/issues/292))
* New: Added Keyboard Shortcuts modal
* New: Introducing Star Rating widget
* Tweak: Added Deviantart, freeCodeCamp and GitLab to Social Icons widget ([#5820](https://github.com/elementor/elementor/issues/5820), [#5816](https://github.com/elementor/elementor/issues/5816))
* Tweak: Show preview fonts select on scroll ([#5207](https://github.com/elementor/elementor/issues/5207), [#3499](https://github.com/elementor/elementor/issues/3499))
* Tweak: Added compatibility for WordPress v5.0 Beta ([#6019](https://github.com/elementor/elementor/issues/6019))
* Tweak: Added filter to rename external CSS files ([#5968](https://github.com/elementor/elementor/issues/5968))
* Tweak: Added dynamic option for caption in the Image widget ([#5770](https://github.com/elementor/elementor/issues/5770))
* Tweak: Updated YouTube related videos control due to YouTube's API changes ([#5984](https://github.com/elementor/elementor/issues/5984), [#5939](https://github.com/elementor/elementor/issues/5939))
* Tweak: Added a general `hook elementor/frontend/after_render` to element-base
* Tweak: Added `elementor/element/before_attribute_render` hook before attributes are rendered
* Tweak: Added `elementor/element/after_attribute_render` hook after attributes are rendered
* Tweak: New `elementor/editor/init` action
* Tweak: A new `get_post_type_title` method for document
* Tweak: Added `Ctrl/Cmd + E` shortcut to open Finder modal
* Tweak: Added `Ctrl/Cmd + ?` shortcut to open all keyboard shortcuts modal
* Tweak: Added `Esc` shortcut for opening the settings menu
* Tweak: Update Eicons v3.9.2
* Fix: Added default width for SVG image to support edge cases ([#5987](https://github.com/elementor/elementor/issues/5987))
* Fix: Better WP Widget hooks support ([#5844](https://github.com/elementor/elementor/issues/5844))
* Fix: Exclude image link from lightbox when the link has `download` attribute ([#5996](https://github.com/elementor/elementor/issues/5996))
* Fix: Background Gradient not working inside Repeater control ([#5914](https://github.com/elementor/elementor/issues/5914))
* Fix: Added support for future post status ([#5681](https://github.com/elementor/elementor/issues/5681), [#6000](https://github.com/elementor/elementor/issues/6000))
* Fix: Missing string translations ([#5989](https://github.com/elementor/elementor/issues/5989))
* Fix: Lightbox images links detection ([#6103](https://github.com/elementor/elementor/issues/6103))
* Fix: Animation class removed from Lightbox closing ([#5911](https://github.com/elementor/elementor/issues/5911))
* Fix: Allow plugins to set current page as Login Page for Maintenance Mode
* Fix: Added navigation between tabs via tab keyboard for better accessibility
* Fix: Use Thumbnail if selected size is missing
* Fix: A new method to handle with multiple image custom sizes
* Fix: Import template by WP CLI
* Fix: Height of bar without content in Progress Bar widget
* Fix: Added compatibility with a new embed API of YouTube
* Fix: Don't render wrapper of element if the content is empty
* Deprecated: `Source_Local::TYPE_META_KEY` is no longer supported
* Deprecated: `Document::save_type()` is replaced by `Document::save_template_type()`

= 2.2.7 - 2018-10-24 =
* Tweak: Update Google Fonts list with more than 20 new fonts ([Topic](https://wordpress.org/support/topic/please-update-google-fonts-library-with-the-latest-font-for-free-version/))
* Fix: Admin Notice not dismissing in some server configurations ([#5927](https://github.com/elementor/elementor/issues/5927))
* Fix: Image link not respecting the image size in the Image widget ([#5897](https://github.com/elementor/elementor/issues/5897))

= 2.2.6 - 2018-10-22 =
* Tweak: Added `get_render_attributes` method to `Element_Base` ([#5878](https://github.com/elementor/elementor/issues/5878))
* Tweak: Sets the minimum width of the content area as `300px`
* Tweak: Darken Elementor Loader icon color
* Fix: Field labels with multiple rows style glitch ([#4295](https://github.com/elementor/elementor/issues/4295))

= 2.2.5 - 2018-10-07 =
* Tweak: System Info now recognizes MariaDB versions
* Tweak: Allow document to override widgets panel settings
* Fix: Admin Notice not dismissing when JS disabled ([#5832](https://github.com/elementor/elementor/issues/5832))
* Fix: System Info Uncaught Error on edge cases

= 2.2.4 - 2018-09-20 =
* Tweak: Added Poster option for Self Hosted in Video widget
* Fix: Revert Gutenberg Image Block compatibility until stable version ([#5763](https://github.com/elementor/elementor/issues/5763))

= 2.2.3 - 2018-09-17 =
* Tweak: Improved browser compatibility with Elementor grid
* Fix: Toggle Widget first toggle always open on load
* Fix: Changed Dailymotion placeholder in Video widget

= 2.2.2 - 2018-09-16 =
* Tweak: Improved IE compatibility mechanism
* Tweak: Added `remove_all_actions( 'after_wp_tiny_mce' )` hook for better compatibility with 3rd party plugins ([#5686](https://github.com/elementor/elementor/issues/5686))
* Fix: Content styling missing when no icon for Toggle widget ([#5735](https://github.com/elementor/elementor/issues/5735))
* Fix: Redirect issue on activation via Ajax
* Fix: Excluded `Actions` label from ordering in Template library modal
* Fix: Avoid setting empty title for elements in Navigator
* Fix: Compatibility for Gutenberg Image Block

= 2.2.1 - 2018-09-03 =
* Fix: Auto scrolling when clicking on long element ([#5591](https://github.com/elementor/elementor/issues/5591))
* Fix: Increased number input width besides slider control ([#5521](https://github.com/elementor/elementor/issues/5521))
* Fix: Typography line-height default unit for all devices ([#5527](https://github.com/elementor/elementor/issues/5527))
* Fix: Added Navigator compatibility for Role Manager ([#5599](https://github.com/elementor/elementor/issues/5599))
* Fix: Clear cache via native WordPress methods to support object cache plugins ([#4179](https://github.com/elementor/elementor/issues/4179))
* Fix: E loader RTL style glitch
* Fix: History undo after adding a section
* Fix: Styling issue with Testimonial widget image
* Fix: Panel elements search error when the user is in `content only` mode
* Fix: Better Navigator support for safari versions

= 2.2.0 - 2018-08-28 =
* New: Introducing Navigator Panel ([#1165](https://github.com/elementor/elementor/issues/1165))
* New: Added Autocomplete URL functionality for Internal Linking ([#255](https://github.com/elementor/elementor/issues/255))
* New: Added `Cmd/Ctrl + I` hotkey for the Navigator
* New: Added `Cmd/Ctrl + Shift + V` hotkey for paste style
* New: Added "Getting Started" page after new installation
* New: Added reverse columns for tablet screen resolution ([#2070](https://github.com/elementor/elementor/issues/2070))
* Tweak: Changed the name of Columns widget to Inner Section to reduce confusion
* Tweak: Added option to restore Editing Handles ([#4981](https://github.com/elementor/elementor/issues/4981))
* Tweak: Remember Editor panel width in localStorage ([#2414](https://github.com/elementor/elementor/issues/2414))
* Tweak: Added official color option on hover state in Social Icons Widget ([#2032](https://github.com/elementor/elementor/issues/2032))
* Tweak: New user interface for CSS Filters control
* Tweak: Added `Hue` filter to CSS Filters control
* Tweak: Added a Lazy Load option for the Video widget ([#5189](https://github.com/elementor/elementor/issues/5189))
* Tweak: Added Mixcloud icon to Social Icons widget ([#5417](https://github.com/elementor/elementor/issues/5417))
* Tweak: Added an additional aspect ratio (21:9) in Video widget
* Tweak: Added edit capabilities in the responsive mode
* Tweak: Removed default transparency on hover button ([#4406](https://github.com/elementor/elementor/issues/4406))
* Tweak: Redesign `E` loader
* Tweak: Added `elementor/frontend/before_render` hook to `element-base`
* Fix: Reverse column bug in responsive columns ([#5421](https://github.com/elementor/elementor/issues/5421))
* Fix: Compatibility for IE11 by adding IE CSS via JS ([#5510](https://github.com/elementor/elementor/issues/5510), [#5530](https://github.com/elementor/elementor/issues/5530))
* Fix: IE11 bug in case of `min-height` mixed with `align-items: center`
* Fix: Resize the columns via the `Column Width` after moving the section ([#5393](https://github.com/elementor/elementor/issues/5393))
* Fix: Different videos with the same image showing the same video
* Fix: Inline editing in Progress Bar widget

= 2.1.8 - 2018-08-19 =
* Fix: Prevent columns from overflowing the grid area in Firefox browser ([#5442](https://github.com/elementor/elementor/issues/5442))
* Fix: Style glitch in the panel separator

= 2.1.7 - 2018-08-15 =
* Fix: Avoid copying custom CSS ID when pasting style ([#5416](https://github.com/elementor/elementor/issues/5416))
* Fix: Responsive CSS for minimal grid utility ([#5375](https://github.com/elementor/elementor/issues/5375))
* Fix: Make Elementor Canvas compatible with iPhone X landscape orientation

= 2.1.6 - 2018-07-31 =
* Fix: Removed reference to source map file in Swiper minified file
* Fix: Element handle style glitch in mobile view
* Fix: Delete element with hotkey after text editing
* Fix: Avoid auto focus on the widget panel search field after deleting an element

= 2.1.5 - 2018-07-26 =
* Tweak: Added `Ctrl/Cmd + Y` for redo action ([#5090](https://github.com/elementor/elementor/issues/5090))
* Tweak: Clear WP cache in upgrade steps
* Fix: Corrected conditions for start/end times with loop in Video widget
* Fix: Padding for first active control in section
* Fix: Loader styling for some languages
* Fix: RTL style for Choose control
* Fix: Possible memory leak by parsing and sanitizing data and settings only when it's necessary
* Fix: Fixed text selection detection in FireFox
* Fix: `on-paste` check for Choose control
* Fix: `fixed` positions for Color Picker
* Fix: Removed empty space from `elementor/document/urls/edit` hook name ([#5216](https://github.com/elementor/elementor/issues/5216))
* Fix: Dynamic tags support in Shortcode widget ([#5214](https://github.com/elementor/elementor/issues/5214))

= 2.1.4 - 2018-07-18 =
* Tweak: Show modified date instead of publish date on Dashboard widget ([#4169](https://github.com/elementor/elementor/issues/4169))
* Fix: Selector for CSS Filters control in column
* Fix: CSS Filters for self hosted video
* Fix: Avoid creating unnecessary CSS for widgets
* Fix: Added backward compatibility for deprecated controls
* Fix: Color Picker control value change detection
* Fix: Avoid multiple ready trigger in preview
* Fix: Save default page template

= 2.1.3 - 2018-07-16 =
* Tweak: Added CSS filter control for Map, Video, Section and Column
* Tweak: Added Inspector option in Tools page
* Tweak: Added Inspector log for Canvas & Full Width templates
* Tweak: The preview is now loading via plain URL to avoid errors in some server configurations
* Tweak: Added `print_elements_with_wrapper` method to allow a document to overwrite it's wrapper
* Tweak: Added action hook `elementor/template-library/after_get_source_data`
* Fix: Page template missing after import ([#4498](https://github.com/elementor/elementor/issues/4498))
* Fix: Maintenance Mode override theme template
* Fix: Removed focus and active states from Hover Animations
* Fix: Prevent submit forms in the preview
* Fix: Disable history tracking when restoring a revision
* Fix: Empty history changes after restoring a revision
* Fix: Paste style on control with groups
* Fix: Avoid overwrite `_wp_page_template` in edge cases

= 2.1.2 - 2018-07-08 =
* Tweak: Set active/inactive category by `'active' => false` (default is `true`)
* Tweak: Added forms input style compatibility for some themes
* Fix: XML Demo Import compatibility for admin based imports ([#4947](https://github.com/elementor/elementor/issues/4947))
* Fix: Set correct `post_id` when call `enqueue_scripts` from preview mode
* Fix: Conditions not working on dynamic backgrounds
* Fix: Paste of multiple content in Add Section Area
* Fix: Set lower priority to `template_include` hook to override 3rd party plugins, e.g. WooCommerce
* Fix: Hide Save Widget as Global button for old versions
* Fix: Added RTL style for section with handles inside
* Deprecated: Restore `get_page` method as hard deprecated ([#4870](https://github.com/elementor/elementor/issues/4870))

= 2.1.1 - 2018-07-03 =
* Tweak: Compatibility Gutenberg classic editor
* Fix: Compatibility for PHP < 5.6

= 2.1.0 - 2018-07-03 =
* New: Introducing Elementor Context Menu
* New: Copy/Paste elements ([#4151](https://github.com/elementor/elementor/issues/4151))
* New: Copy/Paste element style ([#1479](https://github.com/elementor/elementor/issues/1479))
* New: Copy/Paste between pages
* New: Reset element style
* New: Added `copy_all_content` option
* New: Change mobile & tablet breakpoints ([#78](https://github.com/elementor/elementor/issues/78))
* New: Introducing Elementor WP-CLI integration ([#2161](https://github.com/elementor/elementor/issues/2161))
* New: Added collapsable panel categories ([#3805](https://github.com/elementor/elementor/issues/3805))
* New: Added Self hosted videos with HTML5 for Video widget ([#3313](https://github.com/elementor/elementor/issues/3313))
* New: Added Dailymotion provider for Video widget ([#2285](https://github.com/elementor/elementor/issues/2285))
* New: Added start/end controls for Video widget ([#3565](https://github.com/elementor/elementor/issues/3565))
* New: Added new icons to Social Icons widget: Android & Thumbtack ([#4235](https://github.com/elementor/elementor/issues/4235), [#4486](https://github.com/elementor/elementor/issues/4486))
* New: Hotkey: Ctrl / Cmd + C = Copy
* New: Hotkey: Ctrl / Cmd + V = Paste
* Tweak: Added CSS Filter group control ([#3260](https://github.com/elementor/elementor/issues/3260))
* Tweak: Added CSS Filters to Image & Image Box widgets
* Tweak: Added compatibility with Gutenberg 3.0.+ ([#2631](https://github.com/elementor/elementor/issues/2631))
* Tweak: Added CSS ID for Button widget ([#4535](https://github.com/elementor/elementor/issues/4535))
* Tweak: Added keywords to all widgets for more accurate filtering
* Tweak: Replace hover section with tabs Icon & Icon Box widgets
* Tweak: Moved `delete all content` to the page level right click
* Tweak: When converting content with only a shortcode to Elementor, a shortcode widget used instead of Text Editor widget (#4616)
* Tweak: Updated Swiper library to v4.3.3 ([#4170](https://github.com/elementor/elementor/issues/4170))
* Tweak: Added `elementor/shapes/additional_shapes` filter hook to allow custom shape dividers (#4759)
* Tweak: Added video support to media control ([#4066](https://github.com/elementor/elementor/issues/4066))
* Tweak: Dropped Support for WP v4.6, now supporting WP v4.7+
* Fix: The `wpColorPicker` will not be updated after emptying the value
* Fix: Added fallback for injection position when the injection control does not exist
* Fix: Focus state behavior in the Repeater control ([#4596](https://github.com/elementor/elementor/issues/4596))
* Deprecated: `Repeater::get_fields()` is replaced by `Repeater::get_controls()`
* Deprecated: `Element_Base::get_parent()` is replaced by `Element_Base::get_data( 'parent' )`
* Deprecated: `get_class_controls` is no longer supported
* Deprecated: `\Elementor\settings\page\manager::get_page()` is now removed ([#4870](https://github.com/elementor/elementor/issues/4870))

= 2.0.16 - 2018-06-12 =
* Fix: Dynamic Tag CSS not working on columns & widgets ([#4662](https://github.com/elementor/elementor/issues/4662))
* Fix: Hide title now also hides Post Title widget
* Fix: Trigger Elementor ready only once

= 2.0.15 - 2018-06-05 =
* Fix: Background video in Chrome v67+
* Fix: CSS glitch in local library modal
* Fix: CSS glitch with dynamic buttons in a repeater
* Fix: Divider control on top of controls popover
* Fix: Conditions check for `in` & `!in`
* Fix: Prefix class when the value is numeric

= 2.0.14 - 2018-05-29 =
* Fix: Missing Dynamic Image Background properties on front-end ([#4577](https://github.com/elementor/elementor/issues/4577))
* Fix: Avoid page settings global `$post` being overwritten by 3rd party plugins ([#4563](https://github.com/elementor/elementor/issues/4563))
* Fix: Editor won’t load for users without publishing capabilities
* Fix: Only show Caption style section for Image widget if needed

= 2.0.13 - 2018-05-28 =
* New: Dynamic Image Backgrounds ([#3971](https://github.com/elementor/elementor/issues/3971))
* Tweak: Updated Dialog Manager v4.3.2
* Tweak: Better accessibility for Back to Editor button
* Tweak: Confusing error message ([#4546](https://github.com/elementor/elementor/issues/4546))
* Fix: Panel buttons style glitch in edge cases
* Fix: PHP notice in Polylang compatibility
* Fix: Editor won't load for users without publishing capabilities
* Fix: Media queries ordering in CSS file for mixed min and max break points
* Fix: Improved video background loading method

= 2.0.12 - 2018-05-15 =
* Tweak: Added new method `add_body_class`
* Tweak: Set library filter by the document
* Tweak: Allow 3rd party developers to register documents on init
* Fix: Set attach uploaded images to the current post
* Fix: Scroll not working in the library modal ([#4394](https://github.com/elementor/elementor/issues/4394))
* Fix: Blocks dropdown menu escapes container on scroll ([#3947](https://github.com/elementor/elementor/issues/3947))

= 2.0.11 - 2018-05-09 =
* Fix: Stronger selector for heading widget color, to avoid section style override ([#4266](https://github.com/elementor/elementor/issues/4266))
* Fix: style missing when role manager in content only mode

= 2.0.10 - 2018-05-08 =
* Fix: Added icon for Dynamic Tag without settings
* Fix: Added offset for anchor scroll section is sticky ([#4323](https://github.com/elementor/elementor/issues/4323))
* Fix: Title changing on auto-save for various languages
* Fix: Cannot scroll in the library modal ([#4325](https://github.com/elementor/elementor/issues/4325))

= 2.0.9 - 2018-05-01 =
* Tweak: Added ability to add Dynamic Tags from 3rd party applications
* Tweak: Added ability to add custom classes to the wrapper for extending widgets
* Tweak: Using full version of Select2.js in the admin
* Tweak: Update Eicons v3.3
* Fix: My Template tabs are not translatable ([#4221](https://github.com/elementor/elementor/issues/4221))
* Fix: Added compatibility for domain mapping with filter tag ([#4307](https://github.com/elementor/elementor/issues/4307))
* Fix: Popover closes after clicking on select2 search container ([#4310](https://github.com/elementor/elementor/issues/4310))
* Fix: Wrapping Dynamic Tag in the editor
* Fix: Removed unnecessary condition from Transition Duration control
* Fix: Removed listening to parent model on Repeater control
* Fix: Controls styling in repeater
* Fix: Ensure the frontend scripts are enqueued once in the editor preview

= 2.0.8 - 2018-04-23 =
* Tweak: Added action hook for caching plugins when clearing CSS files `do_action( 'elementor/css-file/clear_cache' );` ([#4179](https://github.com/elementor/elementor/issues/4179))
* Tweak: Added Page Templates support only for layout pages
* Fix: Smooth scrolling not working ([#4168](https://github.com/elementor/elementor/issues/4168), [#4125](https://github.com/elementor/elementor/issues/4125))
* Fix: Stretch section for archive pages
* Fix: Icon vertical alignment in icon list widget

= 2.0.7 - 2018-04-18 =
* Tweak: Rename filter `elementor/get_document/post_id` to `elementor/documents/get/post_id`
* Tweak: Added Divider control for Icon List widget on inline skin
* Tweak: Added CSS classes per document in Preview
* Tweak: Added option to avoid export data by adding `export=false` to control args
* Fix: Support for editing images in WP Media Modal ([#3062](https://github.com/elementor/elementor/issues/3062))
* Fix: Responsive inline alignment for Icon List widget
* Fix: Added higher priority to support Google Fonts in locations
* Fix: Import templates with Dynamic data
* Fix: Editing buttons missing when preview set as archive
* Fix: Export document settings for all template types

= 2.0.6 - 2018-04-15 =
* New: Image widget - added new control for Image width
* Tweak: Added support for dynamic video via ACF
* Tweak: Reorder admin columns in My Templates
* Tweak: Update Eicons v3.2.2
* Tweak: Added `elementor/get_document/post_id` filter for `get document` - compatibility for translation plugins
* Tweak: Print container classes per document
* Tweak: Added `elementor-edit-area-preview` and `elementor-edit-area-active` classes
* Tweak: Removed wrapper for dynamic data
* Fix: Per device Visibility for editor with multiple Elementor areas
* Fix: CSS glitch for URL input with dynamic
* Fix: Dynamic Show Before/After only when value is not empty

= 2.0.5 - 2018-04-11 =
* Fix: Avoid merge for incorrect page settings data
* Fix: Style tab on document settings not saving on autosave
* Fix: Duplicate icons by updated Eicons library

= 2.0.4 - 2018-04-09 =
* Tweak: Update Google Fonts list with more than 30 new fonts
* Tweak: Updated Eicons to v3.2.0
* Fix: Page template doesn't work in draft status ([#3706](https://github.com/elementor/elementor/issues/3706))
* Fix: Make sure that document settings works only on existing posts ([#3993](https://github.com/elementor/elementor/issues/3993), [Topic](https://wordpress.org/support/topic/php-fatal-error-after-last-update/))
* Fix: Removed some duplicate strings
* Fix: Undefined index when save editor using old method
* Fix: Use `&nbsp;` to add spaces before/after for tags with HTML ([#3826](https://github.com/elementor/elementor/issues/3826))

= 2.0.3 - 2018-03-29 =
* Tweak: Added Knowledge Base link to WordPress admin menu
* Tweak: Improved performance in the editor using internal caching
* Fix: Avoid WordPress override page template in auto-save status ([Topic](https://wordpress.org/support/topic/save-draft-will-revert-page-layout-into-default-instead-of-elementor-canvas/))
* Fix: Set element ID before sanitizing data

= 2.0.2 - 2018-03-28 =
* Fix: Title changing on auto-save
* Fix: Page templates reverts to default on preview ([#3933](https://github.com/elementor/elementor/issues/3933))
* Fix: Editor won't load when a custom image size is used ([#3926](https://github.com/elementor/elementor/issues/3926))
* Fix: WordPress Widgets not loading saved settings ([#3930](https://github.com/elementor/elementor/issues/3930))

= 2.0.1 - 2018-03-27 =
* Fix: Removed promotion in the Role Manager area ([#3903](https://github.com/elementor/elementor/issues/3903))
* Fix: Improved responsive style for My Template modal ([#3914](https://github.com/elementor/elementor/issues/3914))
* Fix: Issue with conditional repeater field ([#3886](https://github.com/elementor/elementor/issues/3886), [#3865](https://github.com/elementor/elementor/issues/3865))
* Fix: The notifications toast goes down when you change the page layout
* Fix: Custom delimiter char for frontend template in the Counter widget
* Fix: Import template from WP Admin

= 2.0.0 - 2018-03-26 =
* New: Added new library tab for pre-design "Blocks"
* New: Added new page template "Elementor Full Width"
* New: Document Type method to register new template types ([#3409](https://github.com/elementor/elementor/issues/3409))
* New: Added new social icons for 500px, Steam and StumbleUpon ([#3106](https://github.com/elementor/elementor/issues/3106), [#3636](https://github.com/elementor/elementor/issues/3636))
* Tweak: Dropped Support WP 4.5, now supporting WP 4.6 and higher
* Tweak: New settings interface for Role Manager
* Tweak: Reintroduce divider control for UI panel ([Developer API](https://developers.elementor.com/elementor-controls/divider-control/))
* Tweak: Added inline view for icon-list widget ([#1624](https://github.com/elementor/elementor/issues/1624))
* Tweak: Added "Featured Image" control to document settings ([#3429](https://github.com/elementor/elementor/issues/3429))
* Tweak: Added custom thousand separator in Counter widget ([#3459](https://github.com/elementor/elementor/issues/3459))
* Tweak: Added "Image Size" control to the "Video" widget overlay image ([#3488](https://github.com/elementor/elementor/issues/3488))
* Tweak: Added "Image Size" control to the "Image Box" widget ([#3251](https://github.com/elementor/elementor/issues/3251))
* Tweak: Added "Image Size" control to the "Testimonial" widget ([#3472](https://github.com/elementor/elementor/issues/3472))
* Tweak: Added "Link" control to the "Testimonial" widget ([#3480](https://github.com/elementor/elementor/issues/3480))
* Tweak: Added "Caption Spacing" control to the "Image" widget ([#3452](https://github.com/elementor/elementor/issues/3452))
* Tweak: Added responsive control to the text padding in the "Button" widget
* Tweak: Added compatibility for the future release of Elementor
* Tweak: Added `Groove` style to the "Border" control
* Tweak: Decreasing column minimum width to 2%
* Tweak: Decreasing section minimum height in edit mode
* Tweak: Match HTML tags for the section and the column ([#3471](https://github.com/elementor/elementor/issues/3471))
* Tweak: Renamed the `clear_page` section in the document settings
* Tweak: Renamed the `general-elements` widgets category to `general` ([#3729](https://github.com/elementor/elementor/issues/3729))
* Tweak: Remember the last library tab and search/filters that was open
* Tweak: Replace the select control with a switcher control in the Video widget "Play Icon" control ([#3262](https://github.com/elementor/elementor/issues/3262))
* Tweak: Video widget accessibility - added `role="button"` attribute to the Play button ([#3270](https://github.com/elementor/elementor/issues/3270))
* Tweak: Button widget accessibility - added `role="button"` attribute ([#3271](https://github.com/elementor/elementor/issues/3271))
* Tweak: Icon widget accessibility - added `aria-hidden` attribute to the `i` tag ([#3272](https://github.com/elementor/elementor/issues/3272))
* Tweak: Icon Box widget accessibility - added `aria-hidden` attribute to the `i` tag ([#3273](https://github.com/elementor/elementor/issues/3273))
* Tweak: Google Maps widget accessibility - added `aria-label` attribute to the `iframe` tag ([#3274](https://github.com/elementor/elementor/issues/3274))
* Tweak: Moved `placeholder` and `title` settings from base control settings into individual controls that use them ([#3795](https://github.com/elementor/elementor/issues/3795))
* Tweak: Updated the "Icon Box" widget to handle cases where no icon is set
* Tweak: Updated the way widget categories are registered in Elementor ([#3729](https://github.com/elementor/elementor/issues/3729))
* Tweak: Slick.js library Updated to v1.8.1 ([#3538](https://github.com/elementor/elementor/issues/3538))
* Tweak: Updated Eicons to v3.0.0
* Tweak: Updated Select2 to v4.0.5
* Fix: Document settings now saved as revisions on auto save ([#3510](https://github.com/elementor/elementor/issues/3510))
* Fix: Show preset section in the right side for RTL

= 1.9.8 - 2018-03-12 =
* Fix: Activate publish button if there is an auto-save version
* Fix: Server error message missing in edge cases
* Fix: Updated dialog library ([#3668](https://github.com/elementor/elementor/issues/3668))
* Fix: Text Decoration option in Button Widget ([#3701](https://github.com/elementor/elementor/issues/3701))
* Fix: Added `autopause=0` in order to allow multiple autoplay in Vimeo video
* Fix: Added missing translation string to control in the Image Carousel widget

= 1.9.7 - 2018-02-27 =
* Tweak: `Element_Base::get_style_depends()` method is now overwritable ([#3494](https://github.com/elementor/elementor/issues/3494))
* Fix: "Enter" key triggers Elementor mode instead of default submit action ([#3556](https://github.com/elementor/elementor/issues/3556))
* Fix: Stop showing Connection Lost notification when editing widgets
* Fix: Counter widget - Allow spacing between prefix and suffix

= 1.9.6 - 2018-02-21 =
* Fix: When selecting a color with alpha, the value is not fully visible ([#3320](https://github.com/elementor/elementor/issues/3320))
* Fix: "Create new Page" button in dashboard widget ([#3491](https://github.com/elementor/elementor/issues/3491))
* Fix: `safe_copy_elementor_meta` for editor revisions
* Fix: Clear filters when syncing library
* Fix: Background attachment fixed only on desktop

= 1.9.5 - 2018-02-14 =
* Fix: Added reset for background video when the parent has set `text-align: center;`
* Fix: Print global and post CSS files after all 3rd party plugins styles
* Fix: Avoid setting editor changed-flag on auto-saving
* Fix: Stretch section fallback to body when selector not found or the container doesn't exist

= 1.9.4 - 2018-02-07 =
* Tweak: Added draft posts to Elementor dashboard widget ([#3379](https://github.com/elementor/elementor/issues/3379))
* Tweak: Removed CodeMirror script for WP Custom HTML widget to improve performance
* Fix: Fonts not loaded in edit mode for widget template ([#3352](https://github.com/elementor/elementor/issues/3352))
* Fix: Prevent template library modal close on actions in edge cases
* Fix: Set save button as disabled if there is nothing to save
* Fix: Added publish to editor translations
* Fix: Added a flex-basis patch for better support in Firefox browser
* Fix: Image Box heading link now works without an image ([#2854](https://github.com/elementor/elementor/issues/2854))

= 1.9.3 - 2018-01-21 =
* Fix: Enqueue style/script if when not needed ([#3094](https://github.com/elementor/elementor/issues/3094))
* Fix: Added compatibility for Safari browser accessibility
* Fix: Error message in saver
* Fix: Elementor missing WP editor content ([#3139](https://github.com/elementor/elementor/issues/3139))
* Fix: Changes lost on revisions panel tab destroy ([#3242](https://github.com/elementor/elementor/issues/3242))

= 1.9.2 - 2018-01-16 =
* Tweak: Improved querying for revisions to reduce load time on posts with lots of revisions
* Tweak: Added new notifications when connection with the server is lost and on server errors
* Fix: Autosave now show only Elementor data ([#3144](https://github.com/elementor/elementor/issues/3144))
* Fix: Show correct post content in autosave
* Fix: Preview Changes button now uses `wp_preview_url()`
* Fix: Typography settings not showing correctly in some cases ([#3145](https://github.com/elementor/elementor/issues/3145))
* Fix: Group control with conditions ([#3182](https://github.com/elementor/elementor/issues/3182))
* Fix: Import template in some configurations by checking if `ZipArchive` class is exists
* Fix: Tooltip flickering in the responsive mode button ([#3151](https://github.com/elementor/elementor/issues/3151))

= 1.9.1 - 2018-01-10 =
* Fix: Conflict between responsive control and group control popup ([#3130](https://github.com/elementor/elementor/issues/3130))
* Fix: Color picker handle lag
* Fix: Native WordPress widgets stopped working

= 1.9.0 - 2018-01-09 =
* New: Added Autosave capability for editor
* New: Added save as draft option ([#2824](https://github.com/elementor/elementor/issues/2824))
* New: Brand new Template Library
* New: Added filter & sorting (new, trend & popular) to Template Library ([#1711](https://github.com/elementor/elementor/issues/1711))
* New: Added import & sync tools to Template Library ([#2402](https://github.com/elementor/elementor/issues/2402))
* New: Added search form to Template Library ([#2499](https://github.com/elementor/elementor/issues/2499))
* New: Added my favorites option to the Template Library
* New: Added sorting (name, type, author & date) to My Templates Library
* New: Added new social icons for Meetup, RSS & Skype ([#2703](https://github.com/elementor/elementor/issues/2703), [#2701](https://github.com/elementor/elementor/issues/2701), [#3090](https://github.com/elementor/elementor/issues/3090))
* New: Added Overview dashboard widget
* Tweak: Added privacy control to video widget ([#2741](https://github.com/elementor/elementor/issues/2741))
* Tweak: Added new controls for Icons, Spacing & Padding to Toggle widget ([#2836](https://github.com/elementor/elementor/issues/2836))
* Tweak: Added new controls for Icons & Padding to Accordion widget ([#2836](https://github.com/elementor/elementor/issues/2836))
* Tweak: Added responsive space between control to Icon List widget
* Tweak: Rename "Page Settings" panel to "Document Settings"
* Tweak: Moved My Library to top of admin menu ([#2843](https://github.com/elementor/elementor/issues/2843))
* Tweak: Re-design menu of editor panel
* Tweak: Replaced `jquery-simple-dtpicker` with `flatpickr` JS library ([#2095](https://github.com/elementor/elementor/issues/2095))
* Tweak: Reduced panel clutter by allowing group control to be displayed as a popup
* Tweak: Added Gutenberg compatibility - "Add New Elementor" and "Back to Classic" edit screen
* Tweak: Added excerpt control to the Document Settings if the post type supports excerpts ([#2837](https://github.com/elementor/elementor/issues/2837))
* Tweak: Added `text-decoration` to Typography control
* Tweak: All functions, action hooks and filter hooks have been documented
* Tweak: Implementing inline editing functionality in various Elementor widgets
* Tweak: Accessible widget search - add label for screen readers in the search box ([#2835](https://github.com/elementor/elementor/issues/2835))
* Tweak: Improved Editor accessibility - replace `title` attributes with `aria-label` ([#2861](https://github.com/elementor/elementor/issues/2861))
* Tweak: Progress Bar widget accessibility - set correct `role` and added new `aria` attributes ([#2861](https://github.com/elementor/elementor/issues/2861))
* Tweak: Alert widget accessibility - make the "Dismiss" button accessible ([#3108](https://github.com/elementor/elementor/issues/3108))
* Tweak: Tabs widget accessibility - added `id`, `role` and `aria` attributes ([#2913](https://github.com/elementor/elementor/issues/2913))
* Tweak: Toggle widget accessibility - added `id`, `role` and `aria` attributes ([#2836](https://github.com/elementor/elementor/issues/2836))
* Tweak: Accordion widget accessibility - added `id`, `role` and `aria` attributes ([#2836](https://github.com/elementor/elementor/issues/2836))
* Tweak: Social Icons widget accessibility - added labels for screen readers
* Tweak: Added Browser support notification for unsupported browsers
* Tweak: Depended styles, various elements can set stylesheet dependencies ([#1636](https://github.com/elementor/elementor/issues/1636))
* Tweak: Added option to set control as required by `required => true`
* Fix: Added `wptexturize` filter to match WordPress native text formatting
* Fix: Alignment issue with Icon widget

= 1.8.12 - 2018-01-03 =
* Tweak: Added style compatibility for multiple select field
* Tweak: Added trim extra spaces in WP editor
* Fix: WC session not defined in editor

= 1.8.11 - 2017-12-19 =
* Tweak: Support W3C validation when using multiple Google Fonts ([Topic](https://wordpress.org/support/topic/bad-character-while-embedding-google-fonts/))
* Tweak: Eicons v2.9.0 Updated
* Fix: TinyMCE inside repeater missing content after sort canceled ([#2952](https://github.com/elementor/elementor/issues/2952))
* Fix: Alpha color picker added `#` to default value ([#2978](https://github.com/elementor/elementor/issues/2978))
* Fix: Wrong parameter for multiple conditions with nested relations
* Fix: Init heartbeat only after preview has been loaded successfully to prevent unexpected behavior in edge cases

= 1.8.10 - 2017-12-13 =
* Tweak: Allow support for multiple conditions with relations
* Fix: Waypoint in order to support default options and trigger once
* Fix: Entrance animation near the bottom of the page ([#2114](https://github.com/elementor/elementor/issues/2114), [#2060](https://github.com/elementor/elementor/issues/2060))
* Fix: Avoid delete current revision preview, check it's a valid revision
* Fix: Change post-status in page settings

= 1.8.9 - 2017-12-06 =
* Security Fix! - Prevent potential privilege escalation in page settings & history
* Fix: Allow Contributors to preview library templates
* Fix: Font Awesome icons are italicized ([#2873](https://github.com/elementor/elementor/issues/2873))
* Fix: CSS autoprefixer for minified files (now supports last 10 versions of browsers)
* Fix: Import template in Safari browser
* Fix: Post config for none singular pages
* Fix: Re-Render WYSIWYG control inside repeater on sort changed ([#2897](https://github.com/elementor/elementor/issues/2897), [#2450](https://github.com/elementor/elementor/issues/2450), [#2324](https://github.com/elementor/elementor/issues/2324))
* Fix: Eicons CSS re-compiled ([#2878](https://github.com/elementor/elementor/issues/2878))

= 1.8.8 - 2017-11-30 =
* Tweak: Eicons v2.8.0 Updated
* Security Fix! - Prevent potential privilege escalation in template library

= 1.8.7 - 2017-11-29 =
* Tweak: Eicons v2.7.0 updated
* Fix: Added per post type "edit_post" capability mapping in the editor ([#2846](https://github.com/elementor/elementor/issues/2846))
* Fix: Bump color picker script version to v2.0 to force a browser cached version refresh ([#2550](https://github.com/elementor/elementor/issues/2550))

= 1.8.6 - 2017-11-26 =
* Fix: Changed minimum editing capability to `edit_posts` ([#2791](https://github.com/elementor/elementor/issues/2791))
* Fix: Disable `white-space: pre-wrap` in advanced editing mode ([#2776](https://github.com/elementor/elementor/issues/2776))
* Fix: Check publish capabilities in the page settings
* Fix: Fixed line break in webkit in cases when there are no active nodes.
* Fix: Import/export template in some server configurations.

= 1.8.5 - 2017-11-19 =
* Fix: Compatibility with the WordPress 4.9 native widgets ([#2763](https://github.com/elementor/elementor/issues/2763))
* Fix: Removed related videos from background video in some cases ([#2372](https://github.com/elementor/elementor/issues/2372))
* Fix: Element inside similar element conflict ([#2760](https://github.com/elementor/elementor/issues/2760))
* Fix: Responsive alignment in Icon List widget

= 1.8.4 - 2017-11-14 =
* Fix: Accordion open/close icon ([#2740](https://github.com/elementor/elementor/issues/2740))
* Fix: Color control does not allow more than 7 characters ([#2737](https://github.com/elementor/elementor/issues/2737))
* Fix: Button wrap on Safari browser
* Fix: Print duplicate styles when Print Method set to Internal Embedding

= 1.8.3 - 2017-11-11 =
* Fix: Added nonce to export template action ([Topic](https://wordpress.org/support/topic/importation-error-in-library-elementor-8-2/))
* Fix: Native WordPress widgets stopped working ([#2732](https://github.com/elementor/elementor/issues/2732))

= 1.8.2 - 2017-11-09 =
* Fix: Added nonce to export template action ([#2722](https://github.com/elementor/elementor/issues/2722))
* Fix: Changes nonce key for third party plugins

= 1.8.1 - 2017-11-09 =
* Fix: Bug loading Editor templates in some server configurations ([#2712](https://github.com/elementor/elementor/issues/2712))
* Fix: Added parameter to overwrite control recursively ([#2702](https://github.com/elementor/elementor/issues/2702))
* Fix: Patched nonce validation for all library actions
* Fix: Glitch with Tabs widget on touch screen
* Fix: Glitch with Button wrap on small screens

= 1.8.0 - 2017-11-07 =
* New: Inline Editing added to all text, textarea & TinyMCE controls ([#437](https://github.com/elementor/elementor/issues/437))
* New: Added auto complete for code editor (Custom CSS & HTML widget) ([#2416](https://github.com/elementor/elementor/issues/2416))
* New: Added more icons to Social Icons widget: Telegram & OK ([#2670](https://github.com/elementor/elementor/issues/2670))
* New: Set focus to search bar when you click on widget button in the panel ([#2333](https://github.com/elementor/elementor/issues/2333))
* Tweak: Added `soft wrap` for code editor
* Tweak: Better accessibility for Tabs, Toggle & Accordion widgets
* Tweak: Added option to disable the widget on-change rendering
* Tweak: Improved error dialogs for better handling cases when the editor fails to load.
* Tweak: Rename Global Colors & Fonts to Default Colors and Default Fonts for better clarify
* Tweak: Update Google Fonts list with more than 10 new fonts
* Tweak: Eicons v2.5.0 updated
* Tweak: Added an "Elementor" post state for post table
* Tweak: Added responsive control for Icon Box (Space & Size)
* Tweak: Added compatibility and support for WP Color in WordPress 4.9 ([#2550](https://github.com/elementor/elementor/issues/2550))
* Tweak: Better nonce handling/renewing to avoid timeouts
* Tweak: Added compatibility for the future release of Elementor
* Fix: Icon List widget alignment with RTL
* Fix: Render element on unknown control changed
* Fix: Conflict `elementor-clickable` element with editor lightbox
* Fix: Handle download media/gallery inside repeater control for export/import

= 1.7.12 - 2017-10-24 =
* Fix: Stay in the same tab settings after saving
* Fix: Refresh heartbeat token when nonce is expired
* Fix: Space for mobile in Image Box widget ([#2586](https://github.com/elementor/elementor/issues/2586))
* Fix: Added visual indication for disabled swiper nav arrow button
* Fix: Color picker alignment for extended panel ([#2548](https://github.com/elementor/elementor/issues/2548))

= 1.7.11 - 2017-10-04 =
* Fix: `options is undefined` error when using select2

= 1.7.10 - 2017-10-03 =
* Fix: Extend of Icon control for Social Icons widget

= 1.7.9 - 2017-10-03 =
* Fix: Bug loading editor in Windows server

= 1.7.8 - 2017-10-03 =
* Fix: Font and Icon controls that got effected by previous update

= 1.7.7 - 2017-10-03 =
* Tweak: If current value is not in the options show it as `Unknown value` for Select2 control
* Fix: Import all template types by WordPress Importer
* Fix: Pagination color default for carousels
* Fix: Bug loading editor in some server configurations

= 1.7.6 - 2017-09-26 =
* Tweak: Changed video lightbox width for tablet to 100%
* Tweak: Changed Vimeo placeholder for the Video widget
* Tweak: Added `vh` unit support for control base
* Fix: Prevent showing of placeholder image in video lightbox
* Fix: Show Swiper arrows navigation in the center
* Fix: Set a centered image preview for media control in the panel
* Fix: Removed `sourceMappingURL` reference to prevent an error with the Safari browser

= 1.7.5 - 2017-09-24 =
* Tweak: Clear CSS Meta after change print method
* Tweak: Set default style for UI controls in all sliders and carousels
* Fix: Added compatibility for WordPress 4.8.2 & 4.7.6
* Fix: Sync Library tool for manual updating

= 1.7.4 - 2017-09-18 =
* Tweak: Added compatibility for the future release of Elementor
* Fix: Space widgets applied on the last element ([#2331](https://github.com/elementor/elementor/issues/2331))
* Fix: Internal CSS for Template Library embed ([#2394](https://github.com/elementor/elementor/issues/2394))

= 1.7.3 - 2017-09-11 =
* Tweak: Added responsive size for icon list widget ([#2302](https://github.com/elementor/elementor/issues/2302))
* Tweak: Added keyboard control for lightbox slideshow ([#2270](https://github.com/elementor/elementor/issues/2270))
* Tweak: Updated E-Icons font v2.4.2
* Fix: Changed image carousel breakpoints ([#2341](https://github.com/elementor/elementor/issues/2341))
* Fix: Handles editor view for Divi theme ([#2342](https://github.com/elementor/elementor/issues/2342))
* Fix: Live editing to the page settings custom CSS ([#2363](https://github.com/elementor/elementor/issues/2363))

= 1.7.2 - 2017-09-05 =
* Tweak: Added compatibility for the future release of Elementor
* Tweak: Added API option for developers to insert controls between preexisting controls
* Tweak: Added compatibility with Yoast SEO plugin
* Fix: Added compatibility for Multisite installation with Domain Mapping ([#2280](https://github.com/elementor/elementor/issues/2280))
* Fix: Disappearing widgets when you undo remove section ([#2301](https://github.com/elementor/elementor/issues/2301))

= 1.7.1 - 2017-08-29 =
* Tweak: Removed some filters for better performance
* Fix: Allow import `.zip` mime type to the library for some browsers / servers
* Fix: Save checking for the history log
* Fix: Change default template in page settings

= 1.7.0 - 2017-08-28 =
* New: History actions in the editor ([#266](https://github.com/elementor/elementor/issues/266))
* New: Hotkey: Ctrl / Cmd + Z = Undo
* New: Hotkey: Ctrl / Cmd + Shift + Z = Redo
* New: Hotkey: Ctrl / Cmd + D = Duplicate
* New: Hotkey: Delete = Delete element
* New: Added more icons to Social Icons widget: Weibo & WeChat
* Tweak: Added color control for UI elements in the lightbox
* Tweak: Allow to exclude devices in responsive control
* Tweak: Added compatibility for Table of Contents Plus plugin ([#2248](https://github.com/elementor/elementor/issues/2248))
* Fix: Added compatibility for Multisite installation with Domain Mapping
* Fix: CSS Animations names no longer minified, in order to prevent unexpected conflicts
* Fix: Sometimes content in Repeater control disappears
* Fix: Conflict rollback to the last version when beta testing mode enabled
* Fix: Conflict with Polylang plugin ([#2124](https://github.com/elementor/elementor/issues/2124))
* Fix: Allow fullscreen in the editor preview for video player

= 1.6.5 - 2017-08-20 =
* Tweak: Added compatibility for the future release of Elementor Pro
* Fix: Set font size inherit for Heading widget ([#2098](https://github.com/elementor/elementor/issues/2098))
* Fix: Anchor links smooth scrolling not working when admin bar is disabled ([#2210](https://github.com/elementor/elementor/issues/2210))

= 1.6.4 - 2017-08-06 =
* Tweak: Allow to close lightbox when clicking outside of the element
* Fix: Added font family inherit for input placeholder
* Fix: Reload none-saved changes on editor reload
* Fix: Added compatibility for WPMU DEV's Domain Mapping plugin ([#2120](https://github.com/elementor/elementor/issues/2120))

= 1.6.3 - 2017-08-09 =
* Fix: Lightbox for Image Carousel ([#2135](https://github.com/elementor/elementor/issues/2135))
* Fix: Allow to dismiss message asking to share non-sensitive usage data ([#2136](https://github.com/elementor/elementor/issues/2136))
* Fix: Conflict with Advanced TinyMCE plugin ([Topic](https://wordpress.org/support/topic/tinymce-unbreakable-space-not-display/))

= 1.6.2 - 2017-08-03 =
* Fix: More compatibility for some server configuration ([#2119](https://github.com/elementor/elementor/issues/2119))
* Fix: Added lightbox control for image gallery widget ([#2121](https://github.com/elementor/elementor/issues/2121))
* Fix: Conflict with TablePress and other plugins that add buttons to TinyMCE ([Topic](https://wordpress.org/support/topic/cant-view-editor-in-1-6-after-update/))

= 1.6.1 - 2017-08-02 =
* Fix: Conflict with Contact Form module by Jetpack ([#2125](https://github.com/elementor/elementor/issues/2125))
* Fix: Conflict with Popup Maker plugin
* Fix: Updated previous stable version for rollback
* Fix: Checking if the content area not found before anything else
* Fix: Condition hidden for section control didn't work well
* Fix: Reset border for iFrame in video lightbox ([#2121](https://github.com/elementor/elementor/issues/2121))

= 1.6.0 - 2017-08-02 =
* [Read more in the release post](https://elementor.com/v160-image-lightbox/)
* New: Added native Lightbox for images and galleries ([#218](https://github.com/elementor/elementor/issues/218))
* New: Added Text Shadow control ([#1696](https://github.com/elementor/elementor/issues/1696)) ([Developer API](https://github.com/elementor/elementor/blob/master/docs/content/controls/_text-shadow.md))
* New: Added Text Shadow option for Heading widget ([#1940](https://github.com/elementor/elementor/issues/1940))
* New: Added bulk import / export for template library ([#1241](https://github.com/elementor/elementor/issues/1241))
* New: Added `elementor/widgets/wordpress/widget_args` filter to customize WP widget markup ([#2052](https://github.com/elementor/elementor/issues/2052))
* Tweak: The editor loading now in the wp-admin area instead of the front-end
* Tweak: Replaced editor icons from FontAwesome to Eicons for beautiful sharpness
* Tweak: Added library access to all users with `edit_pages` capability
* Tweak: Loading scripts from the preview for more accurate front-end simulation and fix some issues
* Tweak: Replaced textarea input with WYSIWYG control for Testimonial widget ([#1321](https://github.com/elementor/elementor/issues/1321))
* Tweak: Changed default play icon for Video widget
* Tweak: First step to move Autoloader classes method
* Tweak: Switcher control `label_on` and `label_off` is not required anymore ([Developer API](https://github.com/elementor/elementor/blob/master/docs/content/controls/_switcher.md))
* Tweak: Style settings now also in the editor (under > menu > general settings)
* Tweak: Changed the colors of editor loading screen to positive design
* Tweak: Added Mute option for YouTube in Video widget ([#1897](https://github.com/elementor/elementor/issues/1897))
* Twaek! - Added compatibility for Polylang plugin ([#1959](https://github.com/elementor/elementor/issues/1959))
* Fix: Unknown text input in Group Controls ([#1926](https://github.com/elementor/elementor/issues/1926))
* Fix: Show edit with Elementor button on admin bar in regular posts
* Fix: Inherit style for select field from field
* Fix: Conflict with ManageWP on Multisite ([#1600](https://github.com/elementor/elementor/issues/1600), [#1456](https://github.com/elementor/elementor/issues/1456))
* Deprecated: `elementor/controls/get_available_tabs_controls` filter, please use `\Elementor\Controls_Manager::add_tab( $tab_name, $tab_title )` instead of

= 1.5.5 - 2017-07-18 =
* Fix: Page Settings data gets corrupted on revision save ([#2031](https://github.com/elementor/elementor/issues/2031))

= 1.5.4 - 2017-07-17 =
* Tweak: Re-organized SCSS files for the editor panel
* Tweak: Added example how to remove some styles from front-end ([#1992](https://github.com/elementor/elementor/issues/1992))
* Tweak: Added `do_action( 'elementor/preview/enqueue_scripts' );` for loading scripts in the preview only
* Tweak: Added `panel/widgets/{WIDGET_TYPE}/controls/wp_widget/loaded` JS action to handle WP widget controls ([#1886](https://github.com/elementor/elementor/issues/1886))
* Tweak: Changed Image placeholder
* Tweak: Return `checkbox` control as deprecated in v1.5 ([#2003](https://github.com/elementor/elementor/issues/2003))
* Fix: Changed carousel breakpoints for better responsiveness (Based on [#1785](https://github.com/elementor/elementor/issues/2003))
* Fix: After v1.5 some default unit in mobile editing set as pixel instead of the original default
* Fix: Removed `wptexturize` from Elementor content to avoid some plugins wrong texturize

= 1.5.3 - 2017-07-09 =
* Tweak: Google Fonts list updated with 17 new fonts
* Tweak: Added responsive control for min-height in Column widget
* Tweak: Added default value for HTML Tags
* Tweak: Added editor compatibility for some themes
* Fix: Added `latin-ext` subset in Font control for Polish language
* Fix: Updated control condition on Skin
* Fix: Glitch CSS in video iFrame
* Fix: Hover effect opacity transition
* Fix: Column background overlay condition in front-end
* Fix: Shape divider width units for tablet and mobile ([#1817](https://github.com/elementor/elementor/issues/1817))
* Fix: Video Background position center of section ([#1925](https://github.com/elementor/elementor/issues/1925))
* Fix: Toggle & Accordion glitch in the editor
* Fix: Hide errors for control without selector ([#1923](https://github.com/elementor/elementor/issues/1923))

= 1.5.2 - 2017-07-02 =
* Fix: Library dialog not loading in different languages
* Fix: Removed duplicate data from editor loading
* Fix: Navigation condition in Image Carousel widget ([#1920](https://github.com/elementor/elementor/issues/1920))
* Fix: Added `latin-ext` subset in Font control for Romanian language ([#1915](https://github.com/elementor/elementor/issues/1915))

= 1.5.1 - 2017-06-29 =
* Tweak: Show the fallback image until video playback starts ([#1901](https://github.com/elementor/elementor/issues/1901))
* Tweak: Set Animation delay value in milliseconds
* Fix: Buttons size for different languages ([Topic](https://wordpress.org/support/topic/cosmetic-for-french-interface/))
* Fix: Destroy the Waypoint after one running ([#1906](https://github.com/elementor/elementor/issues/1906))
* Fix: Image stretch condition in Image Carousel widget
* Fix: Restore value builder for rollback compatibility ([#1911](https://github.com/elementor/elementor/issues/1911))

= 1.5.0 - 2017-06-28 =
* New: A big UI makeover to the editor for the 1st birthday of Elementor ([#493](https://github.com/elementor/elementor/issues/493), [#335](https://github.com/elementor/elementor/issues/335), [#692](https://github.com/elementor/elementor/issues/692))
* New: Added responsive mode for Column Width control, including Tablet! ([#418](https://github.com/elementor/elementor/issues/418))
* New: Added option to set the column width trough the panel ([#847](https://github.com/elementor/elementor/issues/847))
* New: Added Element Hover for Background, BG Overlay, Border & Box Shadow
* New: Added `nofollow` option for all link controls ([Topic](https://wordpress.org/support/topic/elementor-nofollow-links-is-there-a-way-to-specify-links-nofollow-attribute/), [#953](https://github.com/elementor/elementor/issues/953), [#1695](https://github.com/elementor/elementor/issues/1695))
* New: Added HTML Tag for Section & Column ([#1619](https://github.com/elementor/elementor/issues/1619))
* New: Added Inset option for Box shadow control ([#1623](https://github.com/elementor/elementor/issues/1623))
* New: Added option to rollback to a previous version of Elementor & Pro
* New: Added option to get update notifications for beta versions of Elementor & Pro
* New: Added Space Between Widgets option under global settings and per column ([#1221](https://github.com/elementor/elementor/issues/1221))
* New: Added Z-Index option for all elements and removed original default `z-index` from `widgets-wrap` ([#1743](https://github.com/elementor/elementor/issues/1743))
* New: Import template get the page settings also if available
* Tweak: Added Tabs UI for admin setting pages
* Tweak: Added Layout tab for column for better workflow
* Tweak: Elementor not active when WP version doesn't meet minimum requirements
* Tweak: Added Animation Delay to Entrance Animation for all elements ([#558](https://github.com/elementor/elementor/issues/558))
* Tweak: Improved panel accessibility by adding `for` to the labels
* Tweak: Added responsive control for min-height in Section ([#630](https://github.com/elementor/elementor/issues/630))
* Tweak: Added responsive control for image size in Image / Image Box widgets
* Tweak: Added PX unit & responsive control for border width in Divider widget
* Tweak: Added responsive control for gap in Divider widget
* Tweak: Added responsive control for spacing in Image Box widget
* Tweak: Added responsive control for slides to show control in Image Carousel
* Tweak: Added responsive control for border radius in Image widget
* Tweak: Changed video embed method for better performance and fix loading bug
* Tweak: Changed `the_content` priority for better integration with 3rd party plugins (e.g WooCommerce Membership)
* Tweak: Added WP filter to get available image sizes
* Tweak: Updated Swiper library to 3.4.2
* Tweak: Limit up to 100 revisions to display in the panel for better performance
* Fix: YouTube link detection regex for some situations
* Fix: Content flashes before entrance animation ([#1672](https://github.com/elementor/elementor/issues/1672))
* Fix: Added `latin-ext` subset in Font control for Czech language ([#1630](https://github.com/elementor/elementor/issues/1630))
* Fix: Restore to post version without Elementor in Revision History
* Fix: Removed `margin: 0` setting from figure inside text editor widget
* Fix: Content flashes before entrance animation ([#1672](https://github.com/elementor/elementor/issues/1672))
* Fix: Bug Image Carousel widget in RTL direction
* Fix: `show_label` affected inner label in the repeater control ([#1707](https://github.com/elementor/elementor/issues/1707))

= 1.4.10 - 2017-06-25 =
* Fix: CSS `autoprefixer` for minified files (last 5 versions of browsers support)

= 1.4.9 - 2017-06-19 =
* Tweak: Compatibility with the new WordPress 4.8 widgets (Rich Text, Image, Video and Audio)
* Tweak: Disable Elementor editor in the default Blog page
* Fix: Bug post archive when first post set as Canvas template

= 1.4.8 - 2017-05-28 =
* New: Added new option: Set the CSS Print Method as Internal Embedding or External Files
* Tweak: CSS `autoprefixer` now supports last 5 versions of browsers
* Tweak: Nested all Swiper style under `elementor` class
* Fix: Open the first section when switching tabs not working
* Fix: Video widget cover image not displayed properly when lightbox on ([#1763](https://github.com/elementor/elementor/issues/1763))

= 1.4.7 - 2017-05-18 =
* Tweak: Added WP favicon support on Editor mode
* Fix: Do not return empty `<img>` tag when not found image source on Image Size group control

= 1.4.6 - 2017-05-09 =
* New: Added new Google font `Arsenal` for typography control
* Fix: An issue with custom size in Image Widget ([#1688](https://github.com/elementor/elementor/issues/1688))
* Fix: Tilt shape glitch in wide screens
* Fix: Increasing `z-index` for overlay settings in the editor ([#1209](https://github.com/elementor/elementor/issues/1209))
* Fix: The layout is reset when you drag the section
* Fix: Register events on different skins to register multiple handles in one widget
* Fix: Parse controls default settings by PHP
* Fix: Advanced style apply in the element inside element

= 1.4.5 - 2017-04-30 =
* Tweak: Use `update_metadata` instead of `update_post_meta` for revision history
* Fix: If Image Carousel caption is set to none, don't print the markup for the `figcaption`
* Fix: Don’t run buttons arrangement when TinyMCE has custom configuration
* Fix: Apply default value to desktop only for mobile editing
* Fix: Double rendering in the editor
* Fix: Prevent Elementor video autoplay in WordPress backend editor

= 1.4.4 - 2017-04-20 =
* Fix: Customizer is not loading in some cases ([Topic](https://wordpress.org/support/topic/cant-load-wp-customizer-because-of-get_css-error/))

= 1.4.3 - 2017-04-19 =
* Tweak: Avoid enqueue `post.css` for `the_excerpt`
* Tweak: Updated E-Icons font v2.1.0
* Fix: Conflict between different skins sharing a control with same prefix-class
* Fix: Added compatibility for more WP widgets ([Topic](https://wordpress.org/support/topic/cant-change-event-calendar-widget/))

= 1.4.2 - 2017-04-04 =
* Fix: Page Settings not reload on the page template ([#1586](https://github.com/elementor/elementor/issues/1586))
* Fix: Full width default value in preview mode
* Fix: Responsive switcher in repeater control

= 1.4.1 - 2017-04-03 =
* New: `Added action elementor/frontend/after_register_scripts` - runs after register scripts in the frontend
* New: `Added action elementor/editor/after_enqueue_styles` - runs after enqueue styles in the Editor
* New: `Added action elementor/editor/before_enqueue_styles` - runs before enqueue styles in the Editor
* New: `Added action elementor/editor/after_enqueue_scripts` - runs after enqueue scripts in Editor
* New: `Added action elementor/post-css-file/parse` to change Post CSS output
* Tweak: Added new tool for editor loader method
* Fix: Autosave settings on each change after 3 seconds ([#1546](https://github.com/elementor/elementor/issues/1546))
* Fix: Reset column resize after section sorting
* Fix: Incorrect wrapper height in some cases in Video lightbox
* Fix: ACE editor lines gutter overflows over panel footer menu ([#1575](https://github.com/elementor/elementor/issues/1575))

= 1.4.0 - 2017-03-28 =
* New: Canvas: Native Blank Page Template. No header, no footer, just Elementor
* New: Maintenance Mode for Under Contraction and Coming Soon page
* New: Page Settings: Choose Page Template, Change Status, Edit / Hide Page Title ([#632](https://github.com/elementor/elementor/issues/632), [#447](https://github.com/elementor/elementor/issues/447))
* New: Page Style: Padding and Background Color, Image or Gradient
* New: Drop Cap option for Text Editor widget
* New: Added Debug box in the System Info screen, to keep a record of recent error messages in the editor
* New: Added more icons to Social Icons widget: Yelp, Xing, Email, Shopping Cart and Whatsapp ([#1462](https://github.com/elementor/elementor/issues/1462), [#1463](https://github.com/elementor/elementor/issues/1463), [#1471](https://github.com/elementor/elementor/issues/1471), [#1481](https://github.com/elementor/elementor/issues/1481))
* Tweak: Added hover style and animation for Social Icons widget ([#426](https://github.com/elementor/elementor/issues/426), [#1472](https://github.com/elementor/elementor/issues/1472))
* Tweak: Removed unnecessary data settings from frontend output
* Fix: Duplicate repeater field with switcher control ([#1442](https://github.com/elementor/elementor/issues/1442), [#1472](https://github.com/elementor/elementor/issues/1472))
* Fix: Google Font family with spacing
* Fix: Custom image size in some situations ([Topic](https://wordpress.org/support/topic/insider-elementor-editor-error-500-admin-ajax/))
* Fix: Smooth scrolling for anchor links, now limited only to links with `.elementor-element` or `.elementor-menu-anchor` classes ([#1478](https://github.com/elementor/elementor/issues/1478))

= 1.3.5 - 2017-03-20 =
* Tweak: Minimum WordPress version is now v4.5
* Fix: Shape divider glitch on some screen widths
* Fix: Shape divider flip bug in safari browser
* Fix: Conflict with jQuery FitVids plugin ([Topic](https://wordpress.org/support/topic/video-lightbox-4/))
* Fix: Generated CSS-file breakpoint for tablet - changed from `1023px` to `1024px` ([#1454](https://github.com/elementor/elementor/issues/1454))
* Fix: Close HTML `div` for Alert widget

= 1.3.4 - 2017-03-14 =
* Tweak: Added more hooks for handling styles & scripts ([Topic](https://wordpress.org/support/topic/is-there-way-to-remove-google-font-link/))
* Tweak: Added Swiper library for future widgets
* Fix: Added Revision History for all Elementor-enabled CPTs
* Fix: Shapes for RTL direction
* Fix: Issue with images not loading in some situations
* Fix: Click on arrow icon in select field

= 1.3.3 - 2017-03-08 =
* Fix: Negative shape rotation in front-end ([#1438](https://github.com/elementor/elementor/issues/1438))
* Fix: Error with anchor links with an invalid target ([Topic](https://wordpress.org/support/topic/popup-maker-not-working-on-elementor-1-3-2-pages/))
* Fix: Alignment issue in Icon List widget

= 1.3.2 - 2017-03-07 =
* Tweak: Added Bring to Front option for shape divider
* Fix: Normalize template data in some situations ([#1432](https://github.com/elementor/elementor/issues/1432))
* Fix: Removed shapes handler JS from front-end
* Fix: Added support for shapes on Edge browser ([#1427](https://github.com/elementor/elementor/issues/1427))
* Fix: Shapes glitch on some screen width

= 1.3.1 - 2017-03-07 =
* Fix: Insert or embed template in the editor ([#1426](https://github.com/elementor/elementor/issues/1426), [#1425](https://github.com/elementor/elementor/issues/1425))
* Fix: Imported templates were not saved correctly ([Topic](https://wordpress.org/support/topic/new-version-not-loading-2/))
* Fix: Comparing default values for array or multiple controls

= 1.3.0 - 2017-03-06 =
* New: Added Shape Divider to sections
* New: Added Lightbox for video widget ([#741](https://github.com/elementor/elementor/issues/741))
* New: Added new social icons for Slideshare, Vkontakte & Tripadvisor
* New: Print JS file just when is needed, by new method `Widget::get_script_depends()` ([Code Reference](https://github.com/elementor/elementor-hello-world/blob/5d37a45a9419ecb825e1706eb83689dfa0b252f8/widgets/hello-world.php#L34-L42))
* Tweak: Improved Icon List widget by adding: line-up, divider and space between options ([#822](https://github.com/elementor/elementor/issues/822))
* Tweak: Added box shadow control for Button widget ([#1357](https://github.com/elementor/elementor/issues/1357))
* Tweak: Don't use `html_entity_decode` on json posted data (Improving JSON format for saving Data by deprecated `html_entity_decode`)
* Tweak: Element-ID as anchor has no smooth scroll - Added ability to pass element id to selectors ([#1333](https://github.com/elementor/elementor/issues/1333))
* Fix: Added margin top property in `.elementor-inner` class for better handling with fixed headers

= 1.2.4 - 2017-02-28 =
* Tweak: Improved embed google fonts in the front-end
* Tweak: Added selector in Button widget to override custom style in some themes ([#1285](https://github.com/elementor/elementor/issues/1285))
* Tweak: Load unminified color-picker.js file when `SCRIPT_DEBUG` is `true` ([#1364](https://github.com/elementor/elementor/issues/1364))
* Fix: Bug when dragging a column from a single-column section to another section ([#1346](https://github.com/elementor/elementor/issues/1346))
* Fix: Reduced padding for Progress Bar widget in mobile ([#1358](https://github.com/elementor/elementor/issues/1358))
* Fix: Descriptor field style in the repeater field
* Fix: Alt key for some keyboard input sources ([#1328](https://github.com/elementor/elementor/issues/1328))

= 1.2.3 - 2017-02-14 =
* Fix: Typography group data render ([Topic](https://wordpress.org/support/topic/erro-after-upgrading-to-version-1-2-2/))

= 1.2.2 - 2017-02-14 =
* Tweak: Added filter to change the menu anchor distance
* Tweak: Regenerate CSS run after editor saved for quicker saving
* Tweak: Major performance improvement by optimizing backend method calls
* Fix: Selector `elementor:after` added spacing after the Elementor content
* Fix: Removed inline CSS from default section in frontend

= 1.2.1 - 2017-02-08 =
* Fix: Change on Repeater control is not effect in the preview
* Fix: When you add a widget base on remote only is render twice

= 1.2.0 - 2017-02-01 =
* New: Added Gradient Background for Section and Column ([#71](https://github.com/elementor/elementor/issues/71))
* New: Added full caption functionality to Image Carousel widget ([#1212](https://github.com/elementor/elementor/issues/1212), [#1124](https://github.com/elementor/elementor/issues/1124), [#1197](https://github.com/elementor/elementor/issues/1197))
* New: Added Custom Element ID control for all elements ([#939](https://github.com/elementor/elementor/issues/939))
* New: Added Vertical layout option for Tabs widget ([#449](https://github.com/elementor/elementor/issues/449))
* Tweak: Elementor now generates an external CSS file instead of inline CSS for global fonts, colors and settings (Part 2 of [#325](https://github.com/elementor/elementor/issues/325))
* Tweak: Added Content Position option for each column
* Tweak: Regenerate CSS after running Replace URL
* Fix: Tabs on mobile now work like an Accordion widget to improve responsive design ([#443](https://github.com/elementor/elementor/issues/443))
* Fix: Improve query in Replace URL for some configurations ([#1191](https://github.com/elementor/elementor/issues/1191))
* Fix: Added `none` option for Text Transform typography control
* Fix: Bug when some controls left empty in Testimonial widget

= 1.1.7 - 2017-01-25 =
* Tweak: Change `box-shadow` type control from select to switcher
* Fix: On-loading glitch for Image Carousel widget
* Fix: Background attachment for Section on mobile devices ([#890](https://github.com/elementor/elementor/issues/890))
* Fix: Default WordPress widget checkboxes not holding values ([#1210](https://github.com/elementor/elementor/issues/1210))
* Fix: Heading with link custom color gone
* Fix: Jumping of panel when the `wp-color-picker` is active
* Deprecated: `Plugin::get_version()` method removed

= 1.1.6 - 2017-01-18 =
* Fix: Improving enqueue assets if Elementor exists on the page
* Fix: Inner Tabs in the section panel is broken

= 1.1.5 - 2017-01-17 =
* Fix: Cannot open editor panel on WP widgets

= 1.1.4 - 2017-01-17 =
* Tweak: Added compatibility for edit description tab with Elementor in WC product page
* Tweak: Performance improvement in the editor. Faster response time when interacting with elements.
* Fix: Broken responsive in Editor mode ([#1169](https://github.com/elementor/elementor/issues/1169))
* Fix: Animation happens twice above the fold ([#281](https://github.com/elementor/elementor/issues/281))

= 1.1.3 - 2017-01-15 =
* Tweak: Embed YouTube API just when is needed
* Tweak: Added post revisions support as default to any CPT Elementor is active on
* Fix: E-Icons font library correct files
* Fix: Prevent click event on parent elements when clicking inner element handle buttons
* Fix: Error message for import template

= 1.1.2 - 2017-01-12 =
* Fix: Clear browser caching from last new JS files

= 1.1.1 - 2017-01-11 =
* Fix: Revision history panel title
* Fix: Renamed content tab in Column to style
* Fix: Regenerate new Waypoints JS lib

= 1.1.0 - 2017-01-11 =
* New: Revision History (Based on WP Revisions)
* New: Added Tool for Replace Site URL in Elementor data
* New: Hotkey: Ctrl / Cmd + S = Save
* New: Hotkey: Ctrl / Cmd + P = Preview Mode
* New: Hotkey: Ctrl / Cmd + Shift + L = Open Library Modal
* New: Hotkey: Ctrl / Cmd + Shift + H = Go to Revision History
* New: Hotkey: Ctrl / Cmd + Shift + M = Mobile Editing Preview
* New: Added Background Overlay Settings for Column ([#810](https://github.com/elementor/elementor/issues/810))
* Tweak: Enqueue assets only if Elementor exists on the page
* Tweak: Move all element ID's in editor mode to classes (Start working on [#939](https://github.com/elementor/elementor/issues/939))
* Fix: Added missing translation strings for media modal ([#1126](https://github.com/elementor/elementor/issues/1126))

= 1.0.12 - 2017-01-05 =
* Fix: Library modal 'Insert' button

= 1.0.11 - 2017-01-04 =
* Fix: Some breaks from previous release

= 1.0.10 - 2017-01-04 =
* New: Added API docs for developers
* Tweak: Changed 'Prevent Scroll' control type to switcher in Map widget
* Tweak: Updated Dialog Manager v3.0.2
* Fix: Library modal 'Go Pro' button in FireFox
* Fix: Bug load Elementor in front page in some server configuration
* Fix: Ninja Forms widget conflict
* Deprecated: `elementor/frontend/enqueue_scripts/after` is no longer available
* Deprecated: `elementor/elements/print_template` is replaced by `elementor/element/print_template`
* Deprecated: `elementor/element_css/parse_css` is replaced by `elementor/element/parse_css`

= 1.0.9 - 2016-12-27 =
* Fix: Elementor library import remote template

= 1.0.8 - 2016-12-27 =
* Tweak: Added raw css support for stylesheet class ([#1086](https://github.com/elementor/elementor/issues/1086))
* Tweak: Improve memory used in the editor mode ([Topic](https://wordpress.org/support/topic/need-update-folks/))
* Fix: Issue with post-css-file in HTTPS ([#1077](https://github.com/elementor/elementor/issues/1077))

= 1.0.7 - 2016-12-25 =
* Fix: Validate export import for Elementor template
* Fix: Excluded `elementor_library` custom post type from the sitemap by Yoast SEO
* Fix: Prevent Scroll BUG in Google Map widget
* Fix: Added unique name for repeater control

= 1.0.6 - 2016-12-20 =
* New: Added social icons for Apple & Spotify
* New: Added Thousand Separator control for counter widget
* Tweak: Added Filter template types in library backend
* Tweak: Updated jQuery Numerator Plugin v0.2.1
* Fix: Added support for floating numbers in counter widget
* Fix: Removed limit from counter widget
* Deprecated: Removed `#elementor-section-wrap` ID from frontend output
* Deprecated: Removed `#elementor-inner` ID from frontend output

= 1.0.5 - 2016-12-18 =
* Tweak: Added VH unit in min-height control for section ([#764](https://github.com/elementor/elementor/issues/764))
* Fix: Bug with section-content-position in Columns widget
* Fix: Bug with stretched section
* Fix: Avoid fatal error for invalid widgets
* Deprecated: Removed `#elementor` ID from frontend output

= 1.0.4 - 2016-12-12 =
* Tweak: Added mobile editing options for social icons widget
* Fix: Icon alignment CSS issue (Icon and Icon-Box widget)
* Fix: Conflict panel with Safari browser
* Fix: Responsive grid bug with tablet screen

= 1.0.3 - 2016-12-11 =
* New: Ready for Elementor Pro
* Tweak: Added template type validation
* Fix: Select2 control fix empty state

= 1.0.2 - 2016-12-08 =
* Fix: Adjusting Text Editor widget when visual editor is disabled ([Topic](https://wordpress.org/support/topic/text-editing-menu-is-blank/))
* Fix: Conflict with Advanced TinyMCE plugin ([Topic](https://wordpress.org/support/topic/1-0-1-disabled-the-text-edit-widget/))

= 1.0.1 - 2016-12-08 =
* Fix: Waypoint script for multiple versions ([#933](https://github.com/elementor/elementor/issues/933), [#1001](https://github.com/elementor/elementor/issues/1001))
* Fix: Text Editor widget compatible for WordPress 4.7
* Fix: Label form compatible for TwentySeventy theme

= 1.0.0 - 2016-12-06 =
* New: Added code editor for HTML widget
* New: Added social icon for Houzz
* New: Added Code control base on ACE
* New: Added Tabs control for editor panel
* New: Forms style for future widgets
* Tweak: Update Waypoints library to v4.0.1
* Tweak: Added support for multiple icon fonts in Choose control
* Fix: Progress Bar "glitch" on page refresh ([#909](https://github.com/elementor/elementor/issues/909))
* Fix: post-css-file don't enqueue if isn't Elementor post ([#902](https://github.com/elementor/elementor/issues/902))
* Fix: Columns widget not render on search ([#862](https://github.com/elementor/elementor/issues/862))
* Fix: Conflict with Bootstrap 3 Shortcodes plugin ([#924](https://github.com/elementor/elementor/issues/924))
* Fix: Don't generate or enqueue CSS file if post not built with elementor
* Fix: Icon button RTL bug in tools page
* Fix: Color Picker control bug on FireFox
* Fix: Video background for section works again
* Fix: Draggable line for columns widget

= 0.11.2 - 2016-11-21 =
* Fix: Don't Generate CSS if it's not built with Elementor
* Fix: Global font goes wrong after changing weight ([#888](https://github.com/elementor/elementor/issues/888))

= 0.11.1 - 2016-11-17 =
* Fix: Columns widget bug with edit options
* Tweak: Changed breakpoint for tablet from 1023px to 1024px ([#860](https://github.com/elementor/elementor/issues/860))

= 0.11.0 - 2016-11-16 =
* New: Elementor now generates an external CSS file for each page instead of inline CSS ([#325](https://github.com/elementor/elementor/issues/325))
* New: Added a tool to regenerate Elementor pages CSS files
* New: Added TinyMCE editor for Repeater control, such as Tabs, Accordion and Toggle widgets ([#176](https://github.com/elementor/elementor/issues/176))
* New: Added Time Picker control for future widgets
* Tweak: 'Edit with Elementor' button color now uses the Admin Color Scheme
* Tweak: Improved style for Multiple Select2 control
* Tweak: Removed development mode flag
* Tweak: Elementor Icon library updated with new icons
* Tweak: Align button sizes as a new forms style
* Tweak: Panel width expanded for better comfortable editing
* Tweak: TinyMCE editor toolbar reduced to basic toolbar, for comfortable editing

= 0.10.7 - 2016-11-07 =
* Fix: Image widget template for link and caption ([Topic](https://wordpress.org/support/topic/image-not-aligning-when-linked/))
* Fix: Exclude Library from search ([Topic](https://wordpress.org/support/topic/custom-templates-accidentally-show-up-in-search-results/))
* Fix: HTML of text widget not being parsed in the preview ([Topic](https://wordpress.org/support/topic/html-of-text-widget-not-being-parsed-in-the-preview/))
* Fix: Add new section button in RTL
* Fix: Stretched section in RTL
* Fix: TinyMCE editor buttons in RTL
* Fix: Error messages for template library

= 0.10.6 - 2016-11-02 =
* Fix: Some breaks layouts from previous release

= 0.10.5 - 2016-11-02 =
* Tweak: Added Compatibility for Autoptimize Plugin ([Topic](https://wordpress.org/support/topic/open-link-in-new-tab-doesnt-work/))
* Tweak: Now `elementor_library` custom post type excluded from the sitemap by Yoast SEO ([Topic](https://wordpress.org/support/topic/disable-elementor_library-sitemap-xml/))
* Tweak: Added Compatibility for Zerif Pro theme
* Tweak: Added Compatibility for themes by Bluchic
* Tweak: Added Compatibility for jQuery Masonry Image Gallery plugin ([#762](https://github.com/elementor/elementor/issues/762))
* Tweak: Added support for "multiple value" condition in Repeater control
* Fix: Bug corrupting JSON post meta on import Elementor pages ([Topic](https://wordpress.org/support/topic/pages-importexport-not-working-properly/))
* Fix: `.elementor-slick-slider` class now apply on all Elementor custom slick theme ([#424](https://github.com/elementor/elementor/issues/424))
* Fix: Added subset support for Google Fonts to fix issues with some browsers

= 0.10.4 - 2016-10-26 =
* Tweak: Updated Font Awesome v4.7.0 (41+ icons)
* Tweak: Added type attribute for text input control
* Tweak: Improved import template from library
* Tweak: Removed admin email from system info copied
* Fix: Columns overlay layer for negative top margin scenario
* Fix: Added i18n strings to Delete All Content dialog
* Fix: Target blank link in heading widget - ([Topic](https://wordpress.org/support/topic/open-link-in-new-tab-doesnt-work/))

= 0.10.3 - 2016-10-13 =
* Fix: Hover animation classes for Image widget ([Topic](https://wordpress.org/support/topic/update-issue-animation/), [Topic](https://wordpress.org/support/topic/hover-animation-2/))
* Fix: Columns gap for all devices
* Fix: Added trigger for changes on Apply button
* Fix: Inner section class on front-end

= 0.10.2 - 2016-10-10 =
* Tweak: Added Apply button for Shortcode widget to trigger loading of external scripts
* Tweak: Restore action `elementor/widgets/widgets_registered`
* Fix: Conflict with old versions of Bfi_Thumb plugin
* Fix: Conflict with other plugins ([Topic](https://wordpress.org/support/topic/0-10-1-fatal-error-with-html-editor-syntax-highlighter/))

= 0.10.1 - 2016-10-09 =
* Fix: Image size default

= 0.10.0 - 2016-10-09 =
* New: Choose which colors appear in the editor's color picker. This makes accessing the colors you choose for the site much easier
* New: Clear the entire page content in one click ([#607](https://github.com/elementor/elementor/issues/607))
* New: Added image size control for Image widget ([#537](https://github.com/elementor/elementor/issues/537))
* New: Added social icon for Twitch.tv ([#694](https://github.com/elementor/elementor/issues/694))
* Tweak: Data stored in a JSON format instead of serialize, for smoother migration ([#403](https://github.com/elementor/elementor/issues/403))
* Tweak: Added Apply button for all WP widgets to trigger loading of external scripts
* Tweak: Adding a preview icon for repeater control ([#609](https://github.com/elementor/elementor/issues/609))
* Tweak: All widgets code rewritten to allow for better API flexibility
* Fix: Icon under 20px size now looks good
* Fix: Improve CSS for Icon list alignment ([#620](https://github.com/elementor/elementor/issues/620))
* Fix: Ninja Forms widget conflict ([#546](https://github.com/elementor/elementor/issues/546))
* Fix: Global Fonts Don't Show Up on Live Preview Screen ([#606](https://github.com/elementor/elementor/issues/606))

= 0.9.3 - 2016-09-26 =
* Tweak: New method for import template library
* Tweak: Changed priority for 3rd party plugins
* Fix: Conflict with WooCommerce Memberships
* Fix: Conflict with Lifter LMS ([#612](https://github.com/elementor/elementor/issues/612))
* Fix: Icon list correct alignment ([#620](https://github.com/elementor/elementor/issues/620))
* Fix: Reload the iframe causes the panel to stop working

= 0.9.2 - 2016-09-21 =
* Fix: Added color default for Progress Bar when schemes color is disabled
* Fix: Stretched section in RTL bug

= 0.9.1 - 2016-09-20 =
* Fix: Changed again "fit to screen" to height for "content position" support

= 0.9.0 - 2016-09-20 =
* New: Added stretch section control for all parent sections
* New: Added content width option to set the default width of the content area
* Tweak: Changed Fit to Screen to `min-height` for better behavior on mobile and content overflow scenarios.
* Tweak: Added Switcher control for editor panel ([#143](https://github.com/elementor/elementor/issues/143))
* Tweak: Improved Integration with 3rd party plugins and themes
* Fix: Hidden templates library items from nav menu
* Fix: Added color default for Button and Icon when schemes color is disabled
* Fix: Added default size for the Heading widget - ([#533](https://github.com/elementor/elementor/issues/533))
* Fix: Button border color hover control - only shown when border is set

= 0.8.1 - 2016-09-11 =
* Tweak: Changed prevent scroll default to `Yes` for Maps widget
* Tweak: Removed `asp_tags` requirements
* Tweak: Added alignment responsive support for Image Box and Icon Box widgets
* Tweak: Added mobile editing for Spacer widget
* Tweak: Added title spacing for Image Box and Icon Box
* Tweak: Removed quick link to Edit with Elementor for non-Elementor pages ([#539](https://github.com/elementor/elementor/issues/539))
* Fix: Correcting title link color in Image Box widget ([#531](https://github.com/elementor/elementor/issues/531))
* Fix: Resolved responsive bug in Image Gallery widget
* Fix: Resolved bug in editor for Safari ([#530](https://github.com/elementor/elementor/issues/530), [#540](https://github.com/elementor/elementor/issues/540))

= 0.8.0 - 2016-09-07 =
* New: Added columns ordering on mobile normal / reverse
* New: Now you can edit section and column in tablet or mobile mode
* New: Set font-size per device in Typography control
* New: Set line-height per device in Typography control
* New: Set letter-spacing per device in Typography control
* New: Set padding per device in Advanced tab
* New: Set margin per device in Advanced tab
* New: Heading widget - Set alignment per device
* New: Button widget - Set alignment per device
* New: Image widget - Set alignment per device
* New: Icon widget - Set alignment per device
* New: Divider widget - Set alignment per device
* New: Icon List Widget - Set alignment per device
* Tweak: Elementor Library connection status indicator added in System Info
* Tweak: Default content-width is now set by css and not by the panel
* Tweak: Added shortcode and oEmbed support for Tabs / Accordion / Toggle / Text Editor widgets
* Tweak: Removed Default font size in custom option
* Tweak: Hide update notice from outside Elementor
* Tweak: Removed mobile-landscape and laptop sizes from preview mode
* Tweak: Rearrange TinyMCE buttons ([#444](https://github.com/elementor/elementor/issues/444))
* Tweak: Changed range for font size control
* Tweak: Compatibility with `asp_tags`
* Tweak: Improved compatibility for old webkit browsers ([#484](https://github.com/elementor/elementor/issues/484), [#403](https://github.com/elementor/elementor/issues/403), [#370](https://github.com/elementor/elementor/issues/370))
* Fix: Removed style from gallery caption
* Fix: Wrong index in section sorting
* Fix: Column indication on inner section dragging
* Fix: Gap for Columns Widget (nested section)
* Fix: Preview mode with real sizes for mobile and tablet
* Fix: Sortable inner section not showing placeholder
* Fix: Network plugins included in System Info
* Deprecated: Column width option for mobile portrait is deprecated. Use Mobile Width option instead

= 0.7.4 - 2016-08-24 =
* New: Added Shortcode widget
* Tweak: Now compatible with password protected pages
* Fix: Library RTL bug in template preview
* Fix: Bug with `p` tag in Icon Box widget
* Fix: Style in Icon widget
* Fix: HTML widget now is working

= 0.7.3 - 2016-08-19 =
* Fix: Allow columns gap on mobile
* Fix: Content position for section

= 0.7.2 - 2016-08-18 =
* Tweak: Hide add section area for mobile device
* Tweak: Optimization assets files
* Fix: Intrusive Slick Carousel CSS ([#424](https://github.com/elementor/elementor/issues/424))
* Fix: Display content position for custom height section option

= 0.7.1 - 2016-08-17 =
* Tweak: Added column/content position for inner section
* Tweak: Block template library in the frontend
* Fix: Export template ([topic](https://wordpress.org/support/topic/template-export-not-working-in-070))
* Fix: Fatal Error during update plugin ([#412](https://github.com/elementor/elementor/issues/412))
* Fix: Separating link attributes from classes attributes in Icon Box widget ([#414](https://github.com/elementor/elementor/issues/414))
* Fix: Allow column and content position for mobile
* Fix: Removed `overflow: hidden` from `#elementor-inner` ([#415](https://github.com/elementor/elementor/issues/415))
* Fix: Aspect ratio issue for Video widget ([topic](https://wordpress.org/support/topic/video-embeds-have-black-bars-top-and-bottom))
* Fix: Image Carousel "slides to show" on tablet ([#372](https://github.com/elementor/elementor/issues/372))
* Fix: RTL style for library
* Fix: Handle errors on wrong export action

= 0.7.0 - 2016-08-16 =
* New: Template Library ([Release Post](https://elementor.com/introducing-template-library/?utm_source=wp-repo&utm_medium=link&utm_campaign=readme))
* New: Save your pages and sections to template library
* New: 20+ beautifully pre-designed templates
* New: Export / Import templates
* Fix: Changed code structure in Icon/Icon-Box/Social-Icons widget templates
* Fix: Screen size for hidden tablet class
* Fix: Blank page detection in empty pages for editing

= 0.6.6 - 2016-08-11 =
* Tweak: Improved Drag & Drop area to new section
* Tweak: Make changes in new section
* Fix: Resize columns with Widgets using iframe (YouTube, Google Maps, etc)
* Fix: Adding columns widget in 'Add new Section' area
* Fix: Allow blank target link for social-icons widget

= 0.6.5 - 2016-08-08 =
* Tweak: Added border and box shadow controls for Image widget ([#224](https://github.com/elementor/elementor/issues/244))
* Tweak: In new page don't create empty section
* Tweak: Embed Roboto font from Google Fonts in editor mode
* Fix: Reset structure or remove column after resize

= 0.6.4 - 2016-08-04 =
* Tweak: Google Fonts list updated ([#371](https://github.com/elementor/elementor/pull/371))
* Fix: Content overflow in "fit to screen" sections for mobile ([#369](https://github.com/elementor/elementor/issues/369))
* Fix: Icon Box Widget: Better support for Safari browser
* Fix: Text Editor Widget: Added listening to undo & redo events ([#340](https://github.com/elementor/elementor/issues/340))

= 0.6.3 - 2016-08-01 =
* Tweak: Show element title in delete dialog ([#337](https://github.com/elementor/elementor/pull/337))
* Tweak: Added responsive support for Image Gallery widget ([topic](https://wordpress.org/support/topic/galery-not-responsive))
* Tweak: CSS files for entrance animation and hover animations combine to `animations.min.css` file
* Fix: Columns resize cannot be repeated ([#349](https://github.com/elementor/elementor/issues/349))
* Fix: Anchor Menu widget in Safari browser
* Fix: Bug when global font set as a default ([topic](https://wordpress.org/support/topic/font-family-bug))

= 0.6.2 - 2016-07-27 =
* Tweak: Improve the way using attachment details
* Tweak: Verifies the AJAX request to prevent processing requests external of the editor
* Fix: Hover animation classes in Image widget
* Fix: Icon spacing on mobile in Icon Box widget
* Fix: Image spacing on mobile in Image Box widget

= 0.6.1 - 2016-07-26 =
* Tweak: Improved editor UI for blank pages
* Fix: Hide empty widgets in preview mode
* Fix: Bug with Section background overlay and background video ([#323](https://github.com/elementor/elementor/issues/323))
* Fix: Minor security issue

= 0.6.0 - 2016-07-25 =
* New: Added 27 Hover Animations for Image / Icon / Button widgets
* New: Editor panel now is resizable
* New: Added smooth scrolling for anchors in Anchor Menu widget
* Tweak: Improved performance
* Tweak: Improved speed in live editing
* Tweak: Optimization for memory usage (30% less!)
* Tweak: Improved UI for preview editor
* Tweak: Add `contain` background image CSS option ([#297](https://github.com/elementor/elementor/pull/297))
* Tweak: Added compatibility for NextGen Gallery plugin ([#296](https://github.com/elementor/elementor/issues/296))
* Tweak: Print JS scripts in the footer
* Tweak: Set color picker control `alpha` for all widgets
* Fix: Remove `maxlength` attribute from color picker input ([#298](https://github.com/elementor/elementor/issues/298))
* Fix: Background video: Set object-fit only HTML5 player (solved Safari YouTube issue)
* Fix: Bug with target blank link in Icon List widget
* Fix: Bug with alignment in Icon List widget ([#283](https://github.com/elementor/elementor/issues/283))
* Fix: Improved responsive in Tabs widget ([#279](https://github.com/elementor/elementor/issues/279))
* Fix: RTL bug in Alert widget ([#287](https://github.com/elementor/elementor/issues/287))

= 0.5.2 - 2016-07-17 =
* New: Added Animation Duration control for all elements
* New: Added Prevent Scroll control for Google Maps widget

= 0.5.1 - 2016-07-14 =
* Tweak: Added details image sizes in Image Sizes control
* Fix: Chrome bug with flex mode in Image Box widget
* Fix: Textarea control: set `label_block` to `true` by default
* Fix: Textarea control style for Icon Box Widget
* Fix: Removed translations from system-info for better understanding support
* Fix: Design fixes for Icon List widget

= 0.5.0 - 2016-07-13 =
* New: Added more than 35 Entrance Animations to all elements
* New: Added Box Shadow control to all elements
* Tweak: Added option to disable colors palettes in the settings
* Tweak: Added option to disable fonts default in the settings
* Tweak: Added hidden title to alert & image box widgets
* Tweak: Added group posts widget from Pojo themes
* Tweak: Remove extra margin bottom on Textarea ([#182](https://github.com/elementor/elementor/issues/182))
* Tweak: Applying border-radius on background overlay ([#249](https://github.com/elementor/elementor/issues/249))
* Tweak: Fixed toggle widget RTL style
* Tweak: Updated Font Awesome v4.6.3
* Tweak: Changed Textarea control markup according to the general concept
* Tweak: Fixed modal RTL style
* Fix: Fade effect in Image Carousel widget ([#245](https://github.com/elementor/elementor/issues/245), [#253](https://github.com/elementor/elementor/issues/253))
* Fix: Don't print anything when no have link in Video widget

= 0.4.1 - 2016-07-05 =
* Tweak: Default structure presets changed for new section
* Tweak: Added more strings to translate
* Fix: Fixed alignment for Image widget
* Fix: Some compatible to underscore 1.6.0 (Bundle from WordPress v4.4)

= 0.4.0 - 2016-07-04 =
* New: Section: Background Overlay for image and video background
* New: Added Social Icons widget
* New: Added Testimonial widget
* New: Added SoundCloud (Audio) widget
* Tweak: Fixed Bug with background in Image widget ([#180](https://github.com/elementor/elementor/issues/180))
* Tweak: Assign a field to be used as the item title for Repeater control
* Tweak: Rearrange column settings panel
* Tweak: Add link to carousel widget
* Fix: Bug carousel widget with `dir="rtl"`

= 0.3.2 - 2016-06-27 =
* Tweak: Added fully compatible for Cache plugins
* Tweak: Image widget: `<img>` alt and title fetch from Media library
* Tweak: Image widget: Added link to file media
* Tweak: Image-Box widget: `<img>` alt and title fetch from Media library
* Tweak: Carousel widget: `<img>` alt fetch from Media library
* Tweak: Add more columns options for responsive mode
* Tweak: Add `<title>` in Elementor editor
* Tweak: Rearranged section settings
* Tweak: Add more gap size (Wider)
* Tweak: Add more color schemes
* Tweak: Add negative value for letter spacing

= 0.3.1 - 2016-06-22 =
* Tweak: Added a quick tour video for Elementor
* Tweak: Enqueue YouTube API from JS (Better compatible for more themes)
* Tweak: Added compatible to WooCommerce widgets
* Tweak: Fixes re-render elements performance
* Fix: Border & Radius options for Image Carousel widget

= 0.3.0 - 2016-06-21 =
* New: Added Image Gallery widget
* New: Added Image Carousel widget
* Tweak: Fixed schemes area
* Tweak: Added spacing icon in Button widget
* Fix: Themes without `the_content()` stop the Editor
* Fix: Height option in Columns widget

= 0.2.5 - 2016-06-16 =
* Tweak: Added Vimeo support for widget Video
* Tweak: Improved UI in admin area and panel
* Tweak: Added body class `elementor-page` in frontend ([#58](https://github.com/elementor/elementor/issues/58))
* Fix: Elementor seems to get stuck while loading ([#77](https://github.com/elementor/elementor/issues/77))
* Fix: WP Widgets with multiple checkboxes ([#90](https://github.com/elementor/elementor/issues/90))

= 0.2.4 - 2016-06-13 =
* Tweak: Added some compatible to Cache plugins
* Tweak: Added shortcode support in Text Editor widget
* Tweak: Added title attribute for Image and Image Box widgets
* Fix: Replace icon for Icon Box widget with the right icon
* Fix: Scroll issue in Safari browser ([topic](https://wordpress.org/support/topic/scroll-issue-in-safri))
* Fix: Text alignment justify ([topic](https://wordpress.org/support/topic/on-text-aligning))

= 0.2.3 - 2016-06-08 =
* Tweak: Added HTML tag control for icon box title

= 0.2.2 - 2016-06-08 =
* Tweak: Minor change from the last release

= 0.2.1 - 2016-06-08 =
* New: Icon Box widget

= 0.2.0 - 2016-06-07 =
* New: Image Box widget
* Tweak: Added reset preset section structure
* Tweak: Fixed visibility mobile for small-screen

= 0.1.7 - 2016-06-06 =
* Tweak: Changed default image size control
* Fix: Custom CSS Classes in frontend

= 0.1.6 - 2016-06-05 =
* Tweak: Improved speed live edit
* Tweak: Background Control: Removed default image
* Tweak: Add responsive tab on section element
* Tweak: Responsive mode: fixed included visibility style
* Fix: Tabs & Accordion Widgets: indexes detection fixed

= 0.1.5 - 2016-06-03 =
* Tweak: Add check for `asp_tags` php config

= 0.1.4 - 2016-06-02 =
* New: Added new widget: Spacer
* Tweak: Added default category for widgets
* Tweak: Added size and opacity controls for Image widget
* Tweak: Added fallback font for custom fonts
* Tweak: Added development mode flag (filter `elementor/utils/is_development_mode`)
* Fix: Issue with duplicate after element sort

= 0.1.3 - 2016-06-01 =
* New: Added background video for all formats
* Tweak: Pojo Framework & Themes supported
* Tweak: Updated Elementor Icons v1.1
* Tweak: Added elements categories in the panel
* Fix: UI bug with WordPress widgets (panel)
* Fix: Remove fallback image placeholder in background video

= 0.1.2 - 2016-05-31 =
* Tweak: Added structure control for section element
* Tweak: Elementor Icons moved to lib (standalone)
* Fix: Better check if YouTube API is loaded
* Fix: Fixed applying value in dimensions
* Fix: Bug in resize columns

= 0.1.1 - 2016-05-30 =
* Tweak: Added alpha for background color (Button Widget)
* Tweak: Added string context and moved to WP translate repo
* Tweak: Icon Box: removed alt text control
* Fix: content position in full height section

= 0.1.0 - 2016-05-30 =
* Initial Public Beta Release
data/manager.php000064400000022417151327220420007604 0ustar00<?php

namespace Elementor\Data;

use Elementor\Core\Base\Module as BaseModule;
use Elementor\Data\Base\Processor;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

class Manager extends BaseModule {

	const ROOT_NAMESPACE = 'elementor';

	const REST_BASE = '';

	const VERSION = '1';

	/**
	 * @var \WP_REST_Server
	 */
	private $server;

	/**
	 * @var boolean
	 */
	private $is_internal = false;

	/**
	 * @var array
	 */
	private $cache = [];

	/**
	 * Loaded controllers.
	 *
	 * @var \Elementor\Data\Base\Controller[]
	 */
	public $controllers = [];

	/**
	 * Loaded command(s) format.
	 *
	 * @var string[]
	 */
	public $command_formats = [];

	/**
	 * Fix issue with 'Potentially polymorphic call. The code may be inoperable depending on the actual class instance passed as the argument.'.
	 *
	 * @return \Elementor\Core\Base\Module|\Elementor\Data\Manager
	 */
	public static function instance() {
		return ( parent::instance() );
	}

	public function __construct() {
		add_action( 'rest_api_init', [ $this, 'register_rest_error_handler' ] );
	}

	public function get_name() {
		return 'data-manager';
	}

	/**
	 * @return \Elementor\Data\Base\Controller[]
	 */
	public function get_controllers() {
		return $this->controllers;
	}

	private function get_cache( $key ) {
		return self::get_items( $this->cache, $key );
	}

	private function set_cache( $key, $value ) {
		$this->cache[ $key ] = $value;
	}

	/**
	 * Register controller.
	 *
	 * @param string $controller_class_name
	 *
	 * @return \Elementor\Data\Base\Controller
	 */
	public function register_controller( $controller_class_name ) {
		$controller_instance = new $controller_class_name();

		return $this->register_controller_instance( $controller_instance );
	}

	/**
	 * Register controller instance.
	 *
	 * @param \Elementor\Data\Base\Controller $controller_instance
	 *
	 * @return \Elementor\Data\Base\Controller
	 */
	public function register_controller_instance( $controller_instance ) {
		// TODO: Validate instance.

		$this->controllers[ $controller_instance->get_name() ] = $controller_instance;

		return $controller_instance;
	}

	/**
	 * Register endpoint format.
	 *
	 * @param string $command
	 * @param string $format
	 *
	 */
	public function register_endpoint_format( $command, $format ) {
		$this->command_formats[ $command ] = rtrim( $format, '/' );
	}

	public function register_rest_error_handler() {
		// TODO: Remove - Find better solution.
		return;

		if ( ! $this->is_internal() ) {
			$logger_manager = \Elementor\Core\Logger\Manager::instance();

			set_error_handler( [ $logger_manager, 'rest_error_handler' ], E_ALL );
		}
	}

	/**
	 * Find controller instance.
	 *
	 * By given command name.
	 *
	 * @param string $command
	 *
	 * @return false|\Elementor\Data\Base\Controller
	 */
	public function find_controller_instance( $command ) {
		$command_parts = explode( '/', $command );
		$assumed_command_parts = [];

		foreach ( $command_parts as $command_part ) {
			$assumed_command_parts [] = $command_part;

			foreach ( $this->controllers as $controller_name => $controller ) {
				$assumed_command = implode( '/', $assumed_command_parts );

				if ( $assumed_command === $controller_name ) {
					return $controller;
				}
			}
		}

		return false;
	}

	/**
	 * Command extract args.
	 *
	 * @param string $command
	 * @param array $args
	 *
	 * @return \stdClass
	 */
	public function command_extract_args( $command, $args = [] ) {
		$result = new \stdClass();
		$result->command = $command;
		$result->args = $args;

		if ( false !== strpos( $command, '?' ) ) {
			$command_parts = explode( '?', $command );
			$pure_command = $command_parts[0];
			$query_string = $command_parts[1];

			parse_str( $query_string, $temp );

			$result->command = rtrim( $pure_command, '/' );
			$result->args = array_merge( $args, $temp );
		}

		return $result;
	}

	/**
	 * Command to endpoint.
	 *
	 * Format is required otherwise $command will returned.
	 *
	 * @param string $command
	 * @param string $format
	 * @param array  $args
	 *
	 * @return string endpoint
	 */
	public function command_to_endpoint( $command, $format, $args ) {
		$endpoint = $command;

		if ( $format ) {
			$formatted = $format;

			array_walk( $args, function ( $val, $key ) use ( &$formatted ) {
				$formatted = str_replace( '{' . $key . '}', $val, $formatted );
			} );

			// Remove remaining format if not requested via `$args`.
			if ( strstr( $formatted, '/{' ) ) {
				/**
				 * Example:
				 * $command = 'example/documents';
				 * $format = 'example/documents/{document_id}/elements/{element_id}';
				 * $formatted = 'example/documents/1618/elements/{element_id}';
				 * Result:
				 * $formatted = 'example/documents/1618/elements';
				 */
				$formatted = substr( $formatted, 0, strpos( $formatted, '/{' ) );
			}

			$endpoint = $formatted;
		}

		return $endpoint;
	}

	/**
	 * Run server.
	 *
	 * Init WordPress reset api.
	 *
	 * @return \WP_REST_Server
	 */
	public function run_server() {
		/**
		 * If run_server() called means, that rest api is simulated from the backend.
		 */
		$this->is_internal = true;

		if ( ! $this->server ) {
			// Remove all 'rest_api_init' actions.
			remove_all_actions( 'rest_api_init' );

			// Call custom reset api loader.
			do_action( 'elementor_rest_api_before_init' );

			$this->server = rest_get_server(); // Init API.
		}

		return $this->server;
	}

	/**
	 * Kill server.
	 *
	 * Free server and controllers.
	 */
	public function kill_server() {
		global $wp_rest_server;

		$this->controllers = [];
		$this->command_formats = [];
		$this->server = false;
		$this->is_internal = false;
		$this->cache = [];
		$wp_rest_server = false;
	}

	/**
	 * Run processor.
	 *
	 * @param \Elementor\Data\Base\Processor $processor
	 * @param array                          $data
	 *
	 * @return mixed
	 */
	public function run_processor( $processor, $data ) {
		if ( call_user_func_array( [ $processor, 'get_conditions' ], $data ) ) {
			return call_user_func_array( [ $processor, 'apply' ], $data );
		}

		return null;
	}

	/**
	 * Run processors.
	 *
	 * Filter them by class.
	 *
	 * @param \Elementor\Data\Base\Processor[] $processors
	 * @param string $filter_by_class
	 * @param array $data
	 *
	 * @return false|array
	 */
	public function run_processors( $processors, $filter_by_class, $data ) {
		foreach ( $processors as $processor ) {
			if ( $processor instanceof $filter_by_class ) {
				if ( Processor\Before::class === $filter_by_class ) {
					$this->run_processor( $processor, $data );
				} elseif ( Processor\After::class === $filter_by_class ) {
					$result = $this->run_processor( $processor, $data );
					if ( $result ) {
						$data[1] = $result;
					}
				} else {
					// TODO: error
					break;
				}
			}
		}

		return isset( $data[1] ) ? $data[1] : false;
	}

	/**
	 * Run request.
	 *
	 * Simulate rest API from within the backend.
	 * Use args as query.
	 *
	 * @param string $endpoint
	 * @param array $args
	 * @param string $method
	 *
	 * @return \WP_REST_Response
	 */
	private function run_request( $endpoint, $args, $method ) {
		$this->run_server();

		$endpoint = '/' . self::ROOT_NAMESPACE . '/v' . self::VERSION . '/' . $endpoint;

		// Run reset api.
		$request = new \WP_REST_Request( $method, $endpoint );

		if ( 'GET' === $method ) {
			$request->set_query_params( $args );
		} else {
			$request->set_body_params( $args );
		}

		return rest_do_request( $request );
	}

	/**
	 * Run endpoint.
	 *
	 * Wrapper for `$this->run_request` return `$response->getData()` instead of `$response`.
	 *
	 * @param string $endpoint
	 * @param array $args
	 * @param string $method
	 *
	 * @return array
	 */
	public function run_endpoint( $endpoint, $args = [], $method = 'GET' ) {
		$response = $this->run_request( $endpoint, $args, $method );

		return $response->get_data();
	}

	/**
	 * Run ( simulated reset api ).
	 *
	 * Do:
	 * Init reset server.
	 * Run before processors.
	 * Run command as reset api endpoint from internal.
	 * Run after processors.
	 *
	 * @param string $command
	 * @param array  $args
	 * @param string $method
	 *
	 * @return array|false processed result
	 */
	public function run( $command, $args = [], $method = 'GET' ) {
		$key = crc32( $command . '-' . wp_json_encode( $args ) . '-' . $method );
		$cache = $this->get_cache( $key );

		if ( $cache ) {
			return $cache;
		}

		$this->run_server();

		$controller_instance = $this->find_controller_instance( $command );

		if ( ! $controller_instance ) {
			$this->set_cache( $key, [] );
			return [];
		}

		$extracted_command = $this->command_extract_args( $command, $args );
		$command = $extracted_command->command;
		$args = $extracted_command->args;

		$format = isset( $this->command_formats[ $command ] ) ? $this->command_formats[ $command ] : false;

		$command_processors = $controller_instance->get_processors( $command );

		$endpoint = $this->command_to_endpoint( $command, $format, $args );

		$this->run_processors( $command_processors, Processor\Before::class, [ $args ] );

		$response = $this->run_request( $endpoint, $args, $method );
		$result = $response->get_data();

		if ( $response->is_error() ) {
			$this->set_cache( $key, [] );
			return [];
		}

		$result = $this->run_processors( $command_processors, Processor\After::class, [ $args, $result ] );

		$this->set_cache( $key, $result );

		return $result;
	}

	public function is_internal() {
		return $this->is_internal;
	}
}
data/base/sub-endpoint.php000064400000001361151327220420011506 0ustar00<?php
namespace Elementor\Data\Base;

// TODO: Add test.

abstract class SubEndpoint extends Endpoint {

	/**
	 * @var Endpoint
	 */
	protected $parent_endpoint;

	/**
	 * @var string
	 */
	protected $parent_route = '';

	public function __construct( $parent_route, $parent_endpoint ) {
		$this->parent_endpoint = $parent_endpoint;
		$this->parent_route = $parent_route;

		parent::__construct( $this->parent_endpoint->controller );
	}

	/**
	 * Get parent route.
	 *
	 * @return \Elementor\Data\Base\Endpoint
	 */
	public function get_parent() {
		return $this->parent_endpoint;
	}

	public function get_base_route() {
		$controller_name = $this->controller->get_name();

		return $controller_name . '/' . $this->parent_route . $this->get_name();
	}
}
data/base/processor.php000064400000000674151327220420011124 0ustar00<?php
namespace Elementor\Data\Base;

abstract class Processor {

	/**
	 * Controller.
	 *
	 * @var \Elementor\Data\Base\Controller
	 */
	private $controller;

	/**
	 * Processor constructor.
	 *
	 * @param \Elementor\Data\Base\Controller $controller
	 */
	public function __construct( $controller ) {
		$this->controller = $controller;
	}

	/**
	 * Get processor command.
	 *
	 * @return string
	 */
	abstract public function get_command();
}
data/base/controller.php000064400000017152151327220420011267 0ustar00<?php
namespace Elementor\Data\Base;

use Elementor\Data\Manager;
use WP_REST_Controller;
use WP_REST_Server;

abstract class Controller extends WP_REST_Controller {
	/**
	 * Loaded endpoint(s).
	 *
	 * @var \Elementor\Data\Base\Endpoint[]
	 */
	public $endpoints = [];

	/**
	 * Loaded processor(s).
	 *
	 * @var \Elementor\Data\Base\Processor[][]
	 */
	public $processors = [];

	/**
	 * Controller constructor.
	 *
	 * Register endpoints on 'rest_api_init'.
	 *
	 */
	public function __construct() {
		// TODO: Controllers and endpoints can have common interface.

		$this->namespace = Manager::ROOT_NAMESPACE . '/v' . Manager::VERSION;
		$this->rest_base = Manager::REST_BASE . $this->get_name();

		add_action( 'rest_api_init', function () {
			$this->register(); // Because 'register' is protected.
		} );

		/**
		 * Since all actions were removed for custom internal REST server.
		 * Re-add the actions.
		 */
		add_action( 'elementor_rest_api_before_init', function () {
			add_action( 'rest_api_init', function() {
				$this->register();
			} );
		} );
	}

	/**
	 * Get controller name.
	 *
	 * @return string
	 */
	abstract public function get_name();

	/**
	 * Get controller namespace.
	 *
	 * @return string
	 */
	public function get_namespace() {
		return $this->namespace;
	}

	/**
	 * Get controller reset base.
	 *
	 * @return string
	 */
	public function get_rest_base() {
		return $this->rest_base;
	}

	/**
	 * Get controller route.
	 *
	 * @return string
	 */
	public function get_controller_route() {
		return $this->get_namespace() . '/' . $this->get_rest_base();
	}

	/**
	 * Retrieves the index for a controller.
	 *
	 * @return \WP_REST_Response|\WP_Error
	 */
	public function get_controller_index() {
		$server = rest_get_server();
		$routes = $server->get_routes();

		$endpoints = array_intersect_key( $server->get_routes(), $routes );

		$controller_route = $this->get_controller_route();

		array_walk( $endpoints, function ( &$item, $endpoint ) use ( &$endpoints, $controller_route ) {
			if ( ! strstr( $endpoint, $controller_route ) ) {
				unset( $endpoints[ $endpoint ] );
			}
		} );

		$data = [
			'namespace' => $this->get_namespace(),
			'controller' => $controller_route,
			'routes' => $server->get_data_for_routes( $endpoints ),
		];

		$response = rest_ensure_response( $data );

		// Link to the root index.
		$response->add_link( 'up', rest_url( '/' ) );

		return $response;
	}

	/**
	 * Get processors.
	 *
	 * @param string $command
	 *
	 * @return \Elementor\Data\Base\Processor[]
	 */
	public function get_processors( $command ) {
		$result = [];

		if ( isset( $this->processors[ $command ] ) ) {
			$result = $this->processors[ $command ];
		}

		return $result;
	}

	public function get_items( $request ) {
		return $this->get_controller_index();
	}

	/**
	 * Creates multiple items.
	 *
	 * @param \WP_REST_Request $request Full data about the request.
	 *
	 * @return \WP_Error|\WP_REST_Response Response object on success, or WP_Error object on failure.
	 */
	public function create_items( $request ) {
		return new \WP_Error( 'invalid-method', sprintf( "Method '%s' not implemented. Must be overridden in subclass.", __METHOD__ ), [ 'status' => 405 ] );
	}

	/**
	 * Updates multiple items.
	 *
	 * @param \WP_REST_Request $request Full data about the request.
	 *
	 * @return \WP_Error|\WP_REST_Response Response object on success, or WP_Error object on failure.
	 */
	public function update_items( $request ) {
		return new \WP_Error( 'invalid-method', sprintf( "Method '%s' not implemented. Must be overridden in subclass.", __METHOD__ ), [ 'status' => 405 ] );
	}

	/**
	 * Delete multiple items.
	 *
	 * @param \WP_REST_Request $request Full data about the request.
	 *
	 * @return \WP_Error|\WP_REST_Response Response object on success, or WP_Error object on failure.
	 */
	public function delete_items( $request ) {
		return new \WP_Error( 'invalid-method', sprintf( "Method '%s' not implemented. Must be overridden in subclass.", __METHOD__ ), [ 'status' => 405 ] );
	}

	/**
	 * Register endpoints.
	 */
	abstract public function register_endpoints();

	/**
	 * Register processors.
	 */
	public function register_processors() {
	}

	/**
	 * Register internal endpoints.
	 */
	protected function register_internal_endpoints() {
		register_rest_route( $this->get_namespace(), '/' . $this->get_rest_base(), [
			[
				'methods' => WP_REST_Server::READABLE,
				'callback' => array( $this, 'get_items' ),
				'args' => [],
				'permission_callback' => function ( $request ) {
					return $this->get_permission_callback( $request );
				},
			],
		] );
	}

	/**
	 * Register endpoint.
	 *
	 * @param string $endpoint_class
	 *
	 * @return \Elementor\Data\Base\Endpoint
	 */
	protected function register_endpoint( $endpoint_class ) {
		$endpoint_instance = new $endpoint_class( $this );

		// TODO: Validate instance like in register_sub_endpoint().

		$endpoint_route = $this->get_name() . '/' . $endpoint_instance->get_name();

		$this->endpoints[ $endpoint_route ] = $endpoint_instance;

		$command = $endpoint_route;
		$format = $endpoint_instance::get_format();

		if ( $command ) {
			$format = $command . '/' . $format;
		} else {
			$format = $format . $command;
		}

		// `$e.data.registerFormat()`.
		Manager::instance()->register_endpoint_format( $command, $format );

		return $endpoint_instance;
	}

	/**
	 * Register a processor.
	 *
	 * That will be later attached to the endpoint class.
	 *
	 * @param string $processor_class
	 *
	 * @return \Elementor\Data\Base\Processor $processor_instance
	 */
	protected function register_processor( $processor_class ) {
		$processor_instance = new $processor_class( $this );

		// TODO: Validate processor instance.

		$command = $processor_instance->get_command();

		if ( ! isset( $this->processors[ $command ] ) ) {
			$this->processors[ $command ] = [];
		}

		$this->processors[ $command ] [] = $processor_instance;

		return $processor_instance;
	}

	/**
	 * Register.
	 *
	 * Endpoints & processors.
	 */
	protected function register() {
		$this->register_internal_endpoints();
		$this->register_endpoints();

		// Aka hooks.
		$this->register_processors();
	}

	/**
	 * Retrieves a recursive collection of all endpoint(s), items.
	 *
	 * Get items recursive, will run overall endpoints of the current controller.
	 * For each endpoint it will run `$endpoint->getItems( $request ) // the $request passed in get_items_recursive`.
	 * Will skip $skip_endpoints endpoint(s).
	 *
	 * Example, scenario:
	 * Controller 'test-controller'.
	 * Controller endpoints: 'endpoint1', 'endpoint2'.
	 * Endpoint2 get_items method: `get_items() { return 'test' }`.
	 * Call `Controller.get_items_recursive( ['endpoint1'] )`, result: [ 'endpoint2' => 'test' ];
	 *
	 * @param array $skip_endpoints
	 *
	 * @return array
	 */
	public function get_items_recursive( $skip_endpoints = [] ) {
		$response = [];

		foreach ( $this->endpoints as $endpoint ) {
			// Skip self.
			if ( in_array( $endpoint, $skip_endpoints, true ) ) {
				continue;
			}

			$response[ $endpoint->get_name() ] = $endpoint->get_items( null );
		}

		return $response;
	}

	/**
	 * Get permission callback.
	 *
	 * Default controller permission callback.
	 * By default endpoint will inherit the permission callback from the controller.
	 * By default permission is `current_user_can( 'administrator' );`.
	 *
	 * @param \WP_REST_Request $request
	 *
	 * @return bool
	 */
	public function get_permission_callback( $request ) {
		// The function is public since endpoint need to access it.
		switch ( $request->get_method() ) {
			case 'GET':
			case 'POST':
			case 'UPDATE':
			case 'PUT':
			case 'DELETE':
			case 'PATCH':
				return current_user_can( 'administrator' );
		}

		return false;
	}
}
data/base/endpoint.php000064400000021632151327220420010722 0ustar00<?php

namespace Elementor\Data\Base;

use Elementor\Data\Manager;
use WP_REST_Server;

abstract class Endpoint {

	const AVAILABLE_METHODS = [
		WP_REST_Server::READABLE,
		WP_REST_Server::CREATABLE,
		WP_REST_Server::EDITABLE,
		WP_REST_Server::DELETABLE,
		WP_REST_Server::ALLMETHODS,
	];

	/**
	 * Controller of current endpoint.
	 *
	 * @var \Elementor\Data\Base\Controller
	 */
	protected $controller;

	/**
	 * Loaded sub endpoint(s).
	 *
	 * @var \Elementor\Data\Base\SubEndpoint[]
	 */
	private $sub_endpoints = [];

	/**
	 * Get format suffix.
	 *
	 * Examples:
	 * '{one_parameter_name}'.
	 * '{one_parameter_name}/{two_parameter_name}/'.
	 * '{one_parameter_name}/whatever/anything/{two_parameter_name}/' and so on for each endpoint or sub-endpoint.
	 *
	 * @return string current location will later be added automatically.
	 */
	public static function get_format() {
		return '';
	}

	/**
	 * Endpoint constructor.
	 *
	 * run `$this->>register()`.
	 *
	 * @param \Elementor\Data\Base\Controller $controller
	 *
	 * @throws \Exception
	 */
	public function __construct( $controller ) {
		if ( ! ( $controller instanceof Controller ) ) {
			throw new \Exception( 'Invalid controller' );
		}

		$this->controller = $controller;
		$this->register();
	}

	/**
	 * Get endpoint name.
	 *
	 * @return string
	 */
	abstract public function get_name();

	/**
	 * Get base route.
	 *
	 * Removing 'index' from endpoint.
	 *
	 * @return string
	 */
	public function get_base_route() {
		$endpoint_name = $this->get_name();

		// TODO: Allow this only for internal routes.
		// TODO: Make difference between internal and external endpoints.
		if ( 'index' === $endpoint_name ) {
			$endpoint_name = '';
		}

		return '/' . $this->controller->get_rest_base() . '/' . $endpoint_name;
	}

	/**
	 * Register the endpoint.
	 *
	 * By default: register get items route.
	 *
	 * @throws \Exception
	 */
	protected function register() {
		$this->register_items_route();
	}

	/**
	 * Register sub endpoint.
	 *
	 * @param string $route
	 * @param string $endpoint_class
	 *
	 * @return \Elementor\Data\Base\SubEndpoint
	 * @throws \Exception
	 */
	protected function register_sub_endpoint( $route, $endpoint_class ) {
		$endpoint_instance = new $endpoint_class( $route, $this );

		if ( ! ( $endpoint_instance instanceof SubEndpoint ) ) {
			throw new \Exception( 'Invalid endpoint instance.' );
		}

		$endpoint_route = $route . '/' . $endpoint_instance->get_name();

		$this->sub_endpoints[ $endpoint_route ] = $endpoint_instance;

		$component_name = $endpoint_instance->controller->get_rest_base();
		$parent_instance = $endpoint_instance->get_parent();
		$parent_name = $endpoint_instance->get_name();
		$parent_format_suffix = $parent_instance::get_format();
		$current_format_suffix = $endpoint_instance::get_format();

		$command = $component_name . '/' . $parent_name;
		$format = $component_name . '/' . $parent_format_suffix . '/' . $parent_name . '/' . $current_format_suffix;

		Manager::instance()->register_endpoint_format( $command, $format );

		return $endpoint_instance;
	}

	/**
	 * Base callback.
	 *
	 * All reset requests from the client should pass this function.
	 *
	 * @param string $methods
	 * @param \WP_REST_Request $request
	 * @param bool $is_multi
	 *
	 * @return mixed|\WP_Error|\WP_HTTP_Response|\WP_REST_Response
	 * @throws \Exception
	 */
	public function base_callback( $methods, $request, $is_multi = false ) {
		// TODO: Find better solution.
		$json_params = $request->get_json_params();

		if ( $json_params ) {
			$request->set_body_params( $json_params );
		}

		// TODO: Handle permission callback.
		switch ( $methods ) {
			case WP_REST_Server::READABLE:
				$result = $is_multi ? $this->get_items( $request ) : $this->get_item( $request->get_param( 'id' ), $request );
				break;

			case WP_REST_Server::CREATABLE:
				$result = $is_multi ? $this->create_items( $request ) : $this->create_item( $request->get_param( 'id' ), $request );
				break;

			case WP_REST_Server::EDITABLE:
				$result = $is_multi ? $this->update_items( $request ) : $this->update_item( $request->get_param( 'id' ), $request );
				break;

			case WP_REST_Server::DELETABLE:
				$result = $is_multi ? $this->delete_items( $request ) : $this->delete_item( $request->get_param( 'id' ), $request );
				break;

			default:
				throw new \Exception( 'Invalid method.' );
		}

		return rest_ensure_response( $result );
	}

	/**
	 * Retrieves a collection of items.
	 *
	 * @param \WP_REST_Request $request Full data about the request.
	 *
	 * @return \WP_Error|\WP_REST_Response Response object on success, or WP_Error object on failure.
	 */
	public function get_items( $request ) {
		return $this->controller->get_items( $request );
	}

	/**
	 * Retrieves one item from the collection.
	 *
	 * @param string $id
	 * @param \WP_REST_Request $request Full data about the request.
	 *
	 * @return \WP_Error|\WP_REST_Response Response object on success, or WP_Error object on failure.
	 */
	public function get_item( $id, $request ) {
		return $this->controller->get_item( $request );
	}

	/**
	 * Get permission callback.
	 *
	 * By default get permission callback from the controller.
	 *
	 * @param \WP_REST_Request $request Full data about the request.
	 *
	 * @return boolean
	 */
	public function get_permission_callback( $request ) {
		return $this->controller->get_permission_callback( $request );
	}

	/**
	 * Creates one item.
	 *
	 * @param string $id id of request item.
	 * @param \WP_REST_Request $request Full data about the request.
	 *
	 * @return \WP_Error|\WP_REST_Response Response object on success, or WP_Error object on failure.
	 */
	public function create_item( $id, $request ) {
		return $this->controller->create_item( $request );
	}

	/**
	 * Creates multiple items.
	 *
	 * @param \WP_REST_Request $request Full data about the request.
	 *
	 * @return \WP_Error|\WP_REST_Response Response object on success, or WP_Error object on failure.
	 */
	public function create_items( $request ) {
		return $this->controller->create_items( $request );
	}

	/**
	 * Updates one item.
	 *
	 * @param string $id id of request item.
	 * @param \WP_REST_Request $request Full data about the request.
	 *
	 * @return \WP_Error|\WP_REST_Response Response object on success, or WP_Error object on failure.
	 */
	public function update_item( $id, $request ) {
		return $this->controller->update_item( $request );
	}

	/**
	 * Updates multiple items.
	 *
	 * @param \WP_REST_Request $request Full data about the request.
	 *
	 * @return \WP_Error|\WP_REST_Response Response object on success, or WP_Error object on failure.
	 */
	public function update_items( $request ) {
		return $this->controller->update_items( $request );
	}

	/**
	 * Delete one item.
	 *
	 * @param string $id id of request item.
	 * @param \WP_REST_Request $request Full data about the request.
	 *
	 * @return \WP_Error|\WP_REST_Response Response object on success, or WP_Error object on failure.
	 */
	public function delete_item( $id, $request ) {
		return $this->controller->delete_item( $request );
	}

	/**
	 * Delete multiple items.
	 *
	 * @param \WP_REST_Request $request Full data about the request.
	 *
	 * @return \WP_Error|\WP_REST_Response Response object on success, or WP_Error object on failure.
	 */
	public function delete_items( $request ) {
		return $this->controller->delete_items( $request );
	}

	/**
	 * Register item route.
	 *
	 * @param array $args
	 * @param string $route
	 * @param string $methods
	 *
	 * @throws \Exception
	 */
	public function register_item_route( $methods = WP_REST_Server::READABLE, $args = [], $route = '/' ) {
		$args = array_merge( [
			'id' => [
				'description' => 'Unique identifier for the object.',
				'type' => 'string',
			],
		], $args );

		if ( isset( $args['id'] ) && $args['id'] ) {
			$route .= '(?P<id>[\w]+)/';
		}

		$this->register_route( $route, $methods, function ( $request ) use ( $methods ) {
			return $this->base_callback( $methods, $request );
		}, $args );
	}

	/**
	 * Register items route.
	 *
	 * @param string $methods
	 *
	 * @throws \Exception
	 */
	public function register_items_route( $methods = WP_REST_Server::READABLE ) {
		$this->register_route( '', $methods, function ( $request ) use ( $methods ) {
			return $this->base_callback( $methods, $request, true );
		} );
	}

	/**
	 * Register route.
	 *
	 * @param string $route
	 * @param string $methods
	 * @param null $callback
	 * @param array $args
	 *
	 * @return bool
	 * @throws \Exception
	 */
	public function register_route( $route = '', $methods = WP_REST_Server::READABLE, $callback = null, $args = [] ) {
		if ( ! in_array( $methods, self::AVAILABLE_METHODS, true ) ) {
			throw new \Exception( 'Invalid method.' );
		}

		$route = $this->get_base_route() . $route;

		return register_rest_route( $this->controller->get_namespace(), $route, [
			[
				'args' => $args,
				'methods' => $methods,
				'callback' => $callback,
				'permission_callback' => function ( $request ) {
					return $this->get_permission_callback( $request );
				},
			],
		] );
	}
}
data/base/processor/after.php000064400000000724151327220420012221 0ustar00<?php
namespace Elementor\Data\Base\Processor;

use Elementor\Data\Base\Processor;

abstract class After extends Processor {

	/**
	 * Get conditions for running processor.
	 *
	 * @param array $args
	 * @param mixed $result
	 *
	 * @return bool
	 */
	public function get_conditions( $args, $result ) {
		return true;
	}

	/**
	 * Apply processor.
	 *
	 * @param $args
	 * @param $result
	 *
	 * @return mixed
	 */
	abstract public function apply( $args, $result );
}
data/base/processor/before.php000064400000000631151327220420012357 0ustar00<?php
namespace Elementor\Data\Base\Processor;

use Elementor\Data\Base\Processor;

abstract class Before extends Processor {

	/**
	 * Get conditions for running processor.
	 * @param array $args
	 *
	 * @return bool
	 */
	public function get_conditions( $args ) {
		return true;
	}

	/**
	 * Apply processor.
	 *
	 * @param array $args
	 *
	 * @return mixed
	 */
	abstract public function apply( $args );
}

Youez - 2016 - github.com/yon3zu
LinuXploit